You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
4197 lines
1.5 MiB
4197 lines
1.5 MiB
(self.webpackChunk=self.webpackChunk||[]).push([[2524],{18299:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return v}});var w=B(87462),H=B(67294),M={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 00-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z"}}]},name:"check",theme:"outlined"},g=M,D=B(74643),y=function(E,h){return H.createElement(D.Z,(0,w.Z)({},E,{ref:h,icon:g}))},v=H.forwardRef(y)},42922:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return v}});var w=B(87462),H=B(67294),M={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"}}]},name:"down",theme:"outlined"},g=M,D=B(74643),y=function(E,h){return H.createElement(D.Z,(0,w.Z)({},E,{ref:h,icon:g}))},v=H.forwardRef(y)},25877:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return v}});var w=B(87462),H=B(67294),M={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M176 511a56 56 0 10112 0 56 56 0 10-112 0zm280 0a56 56 0 10112 0 56 56 0 10-112 0zm280 0a56 56 0 10112 0 56 56 0 10-112 0z"}}]},name:"ellipsis",theme:"outlined"},g=M,D=B(74643),y=function(E,h){return H.createElement(D.Z,(0,w.Z)({},E,{ref:h,icon:g}))},v=H.forwardRef(y)},63237:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return v}});var w=B(87462),H=B(67294),M={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M942.2 486.2Q889.47 375.11 816.7 305l-50.88 50.88C807.31 395.53 843.45 447.4 874.7 512 791.5 684.2 673.4 766 512 766q-72.67 0-133.87-22.38L323 798.75Q408 838 512 838q288.3 0 430.2-300.3a60.29 60.29 0 000-51.5zm-63.57-320.64L836 122.88a8 8 0 00-11.32 0L715.31 232.2Q624.86 186 512 186q-288.3 0-430.2 300.3a60.3 60.3 0 000 51.5q56.69 119.4 136.5 191.41L112.48 835a8 8 0 000 11.31L155.17 889a8 8 0 0011.31 0l712.15-712.12a8 8 0 000-11.32zM149.3 512C232.6 339.8 350.7 258 512 258c54.54 0 104.13 9.36 149.12 28.39l-70.3 70.3a176 176 0 00-238.13 238.13l-83.42 83.42C223.1 637.49 183.3 582.28 149.3 512zm246.7 0a112.11 112.11 0 01146.2-106.69L401.31 546.2A112 112 0 01396 512z"}},{tag:"path",attrs:{d:"M508 624c-3.46 0-6.87-.16-10.25-.47l-52.82 52.82a176.09 176.09 0 00227.42-227.42l-52.82 52.82c.31 3.38.47 6.79.47 10.25a111.94 111.94 0 01-112 112z"}}]},name:"eye-invisible",theme:"outlined"},g=M,D=B(74643),y=function(E,h){return H.createElement(D.Z,(0,w.Z)({},E,{ref:h,icon:g}))},v=H.forwardRef(y)},99569:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return v}});var w=B(87462),H=B(67294),M={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.3a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.5 684.2 673.4 766 512 766zm-4-430c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm0 288c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z"}}]},name:"eye",theme:"outlined"},g=M,D=B(74643),y=function(E,h){return H.createElement(D.Z,(0,w.Z)({},E,{ref:h,icon:g}))},v=H.forwardRef(y)},22751:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return v}});var w=B(87462),H=B(67294),M={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"},g=M,D=B(74643),y=function(E,h){return H.createElement(D.Z,(0,w.Z)({},E,{ref:h,icon:g}))},v=H.forwardRef(y)},91034:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return v}});var w=B(87462),H=B(67294),M={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"},g=M,D=B(74643),y=function(E,h){return H.createElement(D.Z,(0,w.Z)({},E,{ref:h,icon:g}))},v=H.forwardRef(y)},72395:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return v}});var w=B(87462),H=B(67294),M={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M909.6 854.5L649.9 594.8C690.2 542.7 712 479 712 412c0-80.2-31.3-155.4-87.9-212.1-56.6-56.7-132-87.9-212.1-87.9s-155.5 31.3-212.1 87.9C143.2 256.5 112 331.8 112 412c0 80.1 31.3 155.5 87.9 212.1C256.5 680.8 331.8 712 412 712c67 0 130.6-21.8 182.7-62l259.7 259.6a8.2 8.2 0 0011.6 0l43.6-43.5a8.2 8.2 0 000-11.6zM570.4 570.4C528 612.7 471.8 636 412 636s-116-23.3-158.4-65.6C211.3 528 188 471.8 188 412s23.3-116.1 65.6-158.4C296 211.3 352.2 188 412 188s116.1 23.2 158.4 65.6S636 352.2 636 412s-23.3 116.1-65.6 158.4z"}}]},name:"search",theme:"outlined"},g=M,D=B(74643),y=function(E,h){return H.createElement(D.Z,(0,w.Z)({},E,{ref:h,icon:g}))},v=H.forwardRef(y)},6104:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return l}});var w=B(67294),H=B(2453),M=B(85418),g=B(24577),D=B(67631),y=B.n(D),v=B(52262),m=B(74855),E=B(51959),h={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"},a=(o,s,u)=>new Promise((f,e)=>{var t=p=>{try{c(u.next(p))}catch(A){e(A)}},i=p=>{try{c(u.throw(p))}catch(A){e(A)}},c=p=>p.done?f(p.value):Promise.resolve(p.value).then(t,i);c((u=u.apply(o,s)).next())});function d(o){if(isNaN(o))return{minutes:"00",seconds:"00"};const s=new Date(o*1e3).toISOString().substr(11,8);return{hour:s.substr(0,2),minutes:s.substr(3,2),seconds:s.substr(6,2)}}Object.defineProperty(HTMLMediaElement.prototype,"playing",{get:function(){return this.currentTime>0&&!this.paused&&!this.ended&&this.readyState>2}});function _(o,s){return o-s}function r(o){o.sort(_);let s=0;for(let u=0;u<o.length-1;u++){let f=Math.abs(o[u+1]-o[u]);f<21&&(s+=f)}return s}const n=/(android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini)/i;var l=(0,w.forwardRef)(({allow_skip:o,src:s,toLog:u,videoId:f,logWatchHistory:e,courseId:t=null,startTime:i,handlePause:c=()=>{},handlePlay:p=()=>{},handlePlayEnded:A=()=>{},autoPlay:x=!1,onPlayEnded:C=()=>{},isShowWaterMark:S=!0},P)=>{var b;const R=((b=s==null?void 0:s.split("."))==null?void 0:b.pop())==="flv",T=(0,w.useRef)(),N=(0,w.useRef)(),I=(0,w.useRef)(),F=(0,w.useRef)(),U=(0,w.useRef)(),K=(0,w.useRef)(),G=(0,w.useRef)(),V=(0,w.useRef)(),X=(0,w.useRef)(),ee=(0,w.useRef)(),oe=(0,w.useRef)(),ue=(0,w.useRef)(),Ae=(0,w.useRef)(),fe=(0,w.useRef)(),he=navigator.userAgent.toLowerCase().match(n),ve=he?he[0]:"pc",me=(0,w.useRef)(!1),Te=(0,v.eY)();let Ce=0,ye=0,q=0,Q=null,$=!1,j=20,re=1,k=!1,te=!1,ie=[];(0,w.useImperativeHandle)(P,()=>({getLastUpdatedTime:()=>T.current.currentTime,getDuration:()=>T.current.duration})),H.ZP.config({maxCount:1,getContainer:()=>I.current});const J=(0,w.useCallback)((je,pe=!1)=>{let Oe={point:T.current.currentTime};Q?(Oe.log_id=Q,Oe.watch_duration=r(ie),Oe.total_duration=ye):(t?(Oe.video_id=parseInt(f,10),Oe.course_id=t):Oe.video_id=f,Oe.duration=Ce,Oe.device=ve),pe&&(Oe.ed="1");function Ie(){return a(this,null,function*(){k=!0,Q=yield e==null?void 0:e(Oe),k=!1,je&&je()})}Ie()},[f,t]);(0,w.useEffect)(()=>{T.current&&(F.current.style.display="none",U.current.style.display="block"),H.ZP.destroy();let je=null;return g.Z.isSupported&&R&&s&&(s==null?void 0:s.indexOf(".m3u8"))<0?(je=g.Z.createPlayer({type:"flv",volume:.8,cors:!0,url:s,muted:!1}),T.current&&(je.attachMediaElement(T.current),je.load())):T.current.setAttribute("src",s),Se(),()=>{je&&(je.unload(),je.pause(),je.destroy(),je=null)}},[T,R,s]);function ce(){T.current.paused?(F.current.style.display="none",U.current.style.display="block"):(F.current.style.display="block",U.current.style.display="none")}function Se(){oe.current.style.display="none",Ae.current.style.display="none",ue.current.style.display="none",T.current.muted||T.current.volume===0?oe.current.style.display="block":T.current.volume>0&&T.current.volume<=.5?Ae.current.style.display="block":ue.current.style.display="block"}(0,w.useEffect)(()=>{const je=document.getElementById("play"),pe=document.querySelectorAll(".playback-icons use");function Oe(){p(),i&&!me.current&&(T.current.currentTime=i),me.current=!0,ie.push(T.current.currentTime),$||($=!0,u&&J())}function Ie(){return a(this,null,function*(){ce(),ie.push(T.current.currentTime),u&&J(()=>{Q=null,q=0,$=!1,k=!1,te=!1,ie=[],ye=0,re=1},!0),C()})}function Pe(){K.current.value=Math.round(T.current.currentTime),G.current.value=Math.round(T.current.currentTime)}function ot(){const _t=d(Math.round(T.current.currentTime));X.current.innerText=`${_t.hour>0?_t.hour+":":""}${_t.minutes}:${_t.seconds}`,X.current.setAttribute("datetime",`${_t.hour>0?" "+_t.hour+" ":""}${_t.minutes}m ${_t.seconds}s`)}function ht(){var _t,ge,we,Ue,De,nt,qe;const rt=Math.round((_t=T.current)==null?void 0:_t.duration);(we=(ge=K.current)==null?void 0:ge.setAttribute)==null||we.call(ge,"max",rt),(De=(Ue=G.current)==null?void 0:Ue.setAttribute)==null||De.call(Ue,"max",rt);const ft=d(rt);V.current&&(V.current.innerText=`${ft.hour>0?ft.hour+":":""}${ft.minutes}:${ft.seconds}`,(qe=(nt=V.current).setAttribute)==null||qe.call(nt,"datetime",`${ft.hour>0?" "+ft.hour+" ":""}${ft.minutes}m ${ft.seconds}s`))}function dt(){try{const _t=Math.round(T.current.duration);K.current.setAttribute("max",_t),G.current.setAttribute("max",_t);const ge=d(_t);V.current.innerText=`${ge.hour>0?ge.hour+":":""}${ge.minutes}:${ge.seconds}`,V.current.setAttribute("datetime",`${ge.hour>0?" "+ge.hour+" ":""}${ge.minutes}m ${ge.seconds}s`),Pe(),ot();const{width:we,height:Ue,x:De,y:nt}=N.current.getBoundingClientRect();if(De<0||nt<0||!we)return;if(!te){let qe=T.current.currentTime,rt=qe-q;Math.abs(rt)<10?(ye+=Math.abs(rt),q=qe,k||ye-re*j>=0&&(re++,ie.push(q),u&&J())):(q=qe,u&&J())}}catch(_t){console.log(_t)}}function At(){te=!0}function Ot(){T.current.playing&&ie.push(T.current.currentTime,q),q=T.current.currentTime,te=!1}function Ke(){Ce=T.current.duration,Ce<=20&&(j=Ce/3),T.current.addEventListener("play",Oe)}function Xe(_t){_t.preventDefault(),(0,E.vp)()?(T.current.style.width="100%",T.current.style.height="100%"):T.current.style.cssText=""}function Je(){c()}function Nt(_t){if(!o){H.ZP.warning("\u8BE5\u89C6\u9891\u7981\u6B62\u5FEB\u8FDB/\u540E\u9000\u64AD\u653E");return}const ge=_t.target.dataset.seek?_t.target.dataset.seek:_t.target.value;T.current.currentTime=ge,G.current.value=ge,K.current.value=ge}function ut(_t){const ge=Math.round(_t.offsetX/_t.target.clientWidth*parseInt(_t.target.getAttribute("max"),10));K.current.setAttribute("data-seek",ge);const we=d(ge);ee.current.textContent=`${we.hour>0?we.hour+":":""}${we.minutes}:${we.seconds}`;const Ue=T.current.getBoundingClientRect();ee.current.style.left=`${_t.pageX-Ue.left}px`}function Kt(_t){switch(_t.code){case"Space":_t.preventDefault(),We();break;case"ArrowRight":if(_t.preventDefault(),!o){H.ZP.warning("\u8BE5\u89C6\u9891\u7981\u6B62\u5FEB\u8FDB/\u540E\u9000\u64AD\u653E");break}if(T.current.currentTime>=T.current.duration)break;T.current.currentTime=parseInt(T.current.currentTime)+5,Pe();break;case"ArrowLeft":if(_t.preventDefault(),!o){H.ZP.warning("\u8BE5\u89C6\u9891\u7981\u6B62\u5FEB\u8FDB/\u540E\u9000\u64AD\u653E");break}if(T.current.currentTime===0)break;T.current.currentTime=parseInt(T.current.currentTime)-5,Pe();break;case"ArrowUp":_t.preventDefault(),T.current.volume<1&&(T.current.volume=(parseInt(T.current.volume*10)+1)/10);break;case"ArrowDown":_t.preventDefault(),T.current.volume>0&&(T.current.volume=(parseInt(T.current.volume*10)-1)/10);break}}return I.current.addEventListener((0,E.gH)(),Xe),T.current.addEventListener("canplay",Ke),T.current.addEventListener("ended",Ie),T.current.addEventListener("seeking",At),T.current.addEventListener("seeked",Ot),T.current.addEventListener("loadedmetadata",ht),K.current.addEventListener("mousemove",ut),K.current.addEventListener("input",Nt),T.current.addEventListener("timeupdate",dt),T.current.addEventListener("pause",Je),T.current.addEventListener("volumechange",Se),document.addEventListener("keydown",Kt),()=>{var _t,ge,we,Ue,De,nt,qe,rt,ft,Tt,Ze,O;(_t=T.current)==null||_t.removeEventListener("canplay",Ke),(ge=T.current)==null||ge.removeEventListener("play",Oe),(we=T.current)==null||we.removeEventListener("ended",Ie),(Ue=T.current)==null||Ue.removeEventListener("seeking",At),(De=T.current)==null||De.removeEventListener("seeked",Ot),(nt=K.current)==null||nt.removeEventListener("mousemove",ut),(qe=K.current)==null||qe.removeEventListener("input",Nt),(rt=T.current)==null||rt.removeEventListener("timeupdate",dt),(ft=T.current)==null||ft.removeEventListener("pause",Je),(Tt=T.current)==null||Tt.removeEventListener("loadedmetadata",ht),(Ze=T.current)==null||Ze.removeEventListener("volumechange",Se),document.removeEventListener("keydown",Kt),(O=T.current)!=null&&O.playing&&(ie.push(q,T.current.currentTime),u&&J())}},[T,s]),(0,w.useEffect)(()=>{if(T.current.onended=()=>{A(T)},T.current.oncontextmenu=()=>!1,(s==null?void 0:s.indexOf(".m3u8"))>-1){if(T.current.canPlayType("application/vnd.apple.mpegurl"))T.current.src=s;else if(y().isSupported()){var je=new(y());je.loadSource(s),je.attachMedia(T.current)}}},[s]);const[Le,ze]=(0,w.useState)(1),We=()=>{T.current.paused||T.current.ended?T.current.play():T.current.pause(),ce()};function tt(){T.current.muted=!T.current.muted,T.current.muted?(fe.current.setAttribute("data-volume",volume.value),fe.current.value=0):fe.current.value=fe.current.dataset.volume}return w.createElement("div",{style:{position:"relative"},ref:I},w.createElement("div",{ref:N,className:`${h.watermark} animated_alternate animate__animated_10s animate__infinite animate__stepstart ${h.animate__loop}`},S&&Te?Te.login:" "),w.createElement("div",{className:h.container},w.createElement("div",{className:h["video-container"],id:"video-container"},w.createElement("div",{className:h["playback-animation"],id:"playback-animation"},w.createElement("svg",{className:h["playback-icons"]},w.createElement("use",{className:"hidden",href:"#play-icon"}),w.createElement("use",{href:"#pause"}))),w.createElement("video",{className:h.video,id:"video",preload:"auto",disablePictureInPicture:!0,ref:T,autoPlay:x}),w.createElement("div",{className:`${h["video-controls"]} `,id:"video-controls"},w.createElement("div",{className:h["bottom-controls"]},w.createElement("div",{className:h["left-controls"]},w.createElement("button",{"data-title":"\u64AD\u653E/\u6682\u505C",id:"play",onClick:We},w.createElement("svg",{className:h["playback-icons"]},w.createElement("use",{ref:U,href:"#play-icon"}),w.createElement("use",{ref:F,style:{display:"none"},href:"#pause"}))),w.createElement("div",{className:h.time},w.createElement("time",{id:"time-elapsed",ref:X},"00:00"),w.createElement("span",null," / "),w.createElement("time",{id:"duration",ref:V},"00:00"))),w.createElement("div",{className:h["right-controls"]},o&&w.createElement(M.Z,{placement:"top",overlayClassName:h.rateOverlay,getPopupContainer:je=>je.parentNode,menu:{items:[{key:"1",label:w.createElement("span",{onClick:()=>{ze(1),T.current.playbackRate=1}},"1.0x")},{key:"2",label:w.createElement("span",{onClick:()=>{ze(1.5),T.current.playbackRate=1.5}},"1.5x")},{key:"3",label:w.createElement("span",{onClick:()=>{ze(2),T.current.playbackRate=2}},"2.0x")}]}},w.createElement("div",{className:`${h.controlText} mr5`},"\u500D\u901F")),w.createElement(m.CopyToClipboard,{text:s,onCopy:()=>H.ZP.success("\u590D\u5236\u6210\u529F")},w.createElement("button",{"data-title":"\u590D\u5236\u94FE\u63A5"},w.createElement("i",{className:"icon-lianjie2 iconfont",style:{fontSize:"12px",color:"white"}}))),w.createElement("div",{className:h["volume-controls"]},w.createElement("button",{"data-title":"\u5F00\u542F/\u5173\u95ED\u58F0\u97F3",className:h["volume-button"],id:"volume-button",onClick:tt},w.createElement("i",{ref:oe,className:"icon-a-bianzu8 iconfont",style:{fontSize:"14px",color:"white"}}),w.createElement("i",{ref:Ae,className:"icon-shengyinkaibeifen iconfont",style:{fontSize:"14px",color:"white"}}),w.createElement("i",{ref:ue,className:"icon-shengyinkai iconfont",style:{fontSize:"14px",color:"white"}})),w.createElement("input",{className:h.volume,id:"volume",value:"1","data-mute":"0.5",type:"range",max:"1",min:"0",step:"0.01",ref:fe,style:{display:"none"},onClick:Se})),w.createElement("button",{"data-title":"\u5168\u5C4F/\u9000\u51FA\u5168\u5C4F",className:h["fullscreen-button"],onClick:()=>{(0,E.vp)()?(0,E.BU)():(0,E.Dj)(I.current)}},w.createElement("i",{className:"icon-fangda1 iconfont",style:{fontSize:"12px",color:"white"}})))),w.createElement("div",{className:h["video-progress"]},w.createElement("progress",{ref:G,value:"0",min:"0"}),w.createElement("input",{className:h.seek,ref:K,value:"0",min:"0",type:"range",step:"1"}),w.createElement("div",{className:h["seek-tooltip"],ref:ee,id:"seek-tooltip"},"00:00"))))),w.createElement("svg",{style:{display:"none"}},w.createElement("defs",null,w.createElement("symbol",{id:"pause",viewBox:"0 0 24 24"},w.createElement("path",{d:"M14.016 5.016h3.984v13.969h-3.984v-13.969zM6 18.984v-13.969h3.984v13.969h-3.984z"})),w.createElement("symbol",{id:"play-icon",viewBox:"0 0 24 24"},w.createElement("path",{d:"M8.016 5.016l10.969 6.984-10.969 6.984v-13.969z"})),w.createElement("symbol",{id:"volume-high",viewBox:"0 0 24 24"},w.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"})),w.createElement("symbol",{id:"volume-low",viewBox:"0 0 24 24"},w.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"})),w.createElement("symbol",{id:"volume-mute",viewBox:"0 0 24 24"},w.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"})),w.createElement("symbol",{id:"fullscreen",viewBox:"0 0 24 24"},w.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"})),w.createElement("symbol",{id:"fullscreen-exit",viewBox:"0 0 24 24"},w.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"})),w.createElement("symbol",{id:"pip",viewBox:"0 0 24 24"},w.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"})))))})},5476:function(ke,_e,B){"use strict";B.d(_e,{i:function(){return i},Z:function(){return p}});var w={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"},H=B(57953),M=B(83062),g=B(38703),D=B(94184),y=B.n(D),v=B(28706),m=B(26194),E=B(52262),h=B(79005),a=B(20345),d=B(77882),_=B(31081),r=B(75309),n=B(71979),l=B(47558),o=B(60345),s=B(66832),u=B(96593),f=B(19664),e=B(91833),t=B(67294);const i=[{name:"\u63A8\u8350\u81EA\u5B66",ptimg:h,swimg:a},{name:"101\u8BA1\u5212",ptimg:d,swimg:_},{name:"\u56FD\u5BB6\u4E00\u6D41",ptimg:r,swimg:n},{name:"\u7701\u7EA7\u4E00\u6D41",ptimg:l,swimg:o},{name:"\u7CBE\u54C1\u8BFE\u7A0B",ptimg:s,swimg:u},{name:"\u519B\u961F\u4E00\u6D41",ptimg:f,swimg:e}];var p=({className:A,dataSource:x=[],col:C=4,right:S,bottom:P=23,precision:b=0,wrapWidth:L=1200,trackEventItems:R,loading:T,onRemove:N=()=>{},isCurrent:I=!0,showAlias:F=!1,showProgress:U=!1})=>{const K=Math.floor((L-(C-1)*S)/C),G=[{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(V=>(window.ENV==="build"&&(V.ptimg=`/react/build${V.ptimg}`,V.swimg=`/react/build${V.swimg}`),V));return t.createElement(H.Z,{spinning:T},t.createElement("div",{className:y()(w.list,A)},!!(x!=null&&x.length)&&(x==null?void 0:x.map((V,X)=>{var ee,oe,ue,Ae,fe,he;const{name:ve,id:me,identifier:Te,featured:Ce,school_name:ye,image_url:q,excellent:Q,is_plan:$}=V;return t.createElement("div",{key:me,className:I&&U?w.wrapisCurrent:w.wrap,style:{width:K,marginRight:(1+X)%C===0?0:S+b,marginBottom:P}},t.createElement("a",{className:w.li,onClick:j=>{j.preventDefault(),j.stopPropagation(),R&&(0,v.L9)([R]),(0,v.xg)(`/paths/${Te}`)}},t.createElement("div",{className:w.img},t.createElement("img",{className:w.cover,src:`${q}`}),I&&(0,E.bg)()&&(V==null?void 0:V.studying)&&t.createElement("div",{className:`${w.movebq} user-path-items`,onClick:j=>{j.stopPropagation(),N(V)}},t.createElement("i",{className:"iconfont icon-yichu1 mr5 c-red"}),t.createElement("span",{className:"c-red"},"\u79FB\u9664")),(ee=V==null?void 0:V.subject_tags)==null?void 0:ee.map((j,re)=>{var k,te;if(re===0){const J=(k=G.find(ce=>ce.name==j))==null?void 0:k.swimg;return t.createElement("img",{className:w.sign,src:J,style:{left:"-4px"}})}const ie=(te=G.find(J=>J.name==j))==null?void 0:te.ptimg;return t.createElement("img",{className:w.sign,src:ie,style:{left:`${48+52*(re-1)+2*re}px`}})}),t.createElement("div",{style:{position:"absolute",top:"150px",left:"4px"}},(V==null?void 0:V.excellent)&&t.createElement("div",{className:w.bq},"\u5F00\u653E\u8BFE\u7A0B"))),t.createElement("div",{className:w.name},t.createElement(M.Z,{title:F&&(V!=null&&V.excellent_alias_name)?t.createElement("span",null,`\u8BFE\u7A0B\u539F\u540D\uFF1A${ve}`,t.createElement("br",null),t.createElement("span",null,`\u8BFE\u7A0B\u522B\u540D\uFF1A${V==null?void 0:V.excellent_alias_name}`)):ve},t.createElement("span",{className:w.e},F&&(V==null?void 0:V.excellent_alias_name)||ve))),I&&U&&((oe=V==null?void 0:V.progress)==null?void 0:oe.all_score)!=0&&t.createElement("div",{style:{padding:"0px 10px",color:"#333",marginTop:10}},t.createElement(g.Z,{strokeColor:"#44d7b6",gap:"small",percent:(((ue=V==null?void 0:V.progress)==null?void 0:ue.my_score)/((Ae=V==null?void 0:V.progress)==null?void 0:Ae.all_score)*100).toFixed(),showInfo:!1}),"\u5DF2\u5B8C\u6210 ",(fe=V==null?void 0:V.progress)==null?void 0:fe.my_score,"/",(he=V==null?void 0:V.progress)==null?void 0:he.all_score),(!I||!U)&&t.createElement("div",{className:w.tags},t.createElement("div",null,t.createElement(M.Z,{placement:"bottom",title:"\u7AE0\u8282\u6570"},t.createElement("span",null,t.createElement("i",{className:"iconfont icon-zhangjie1 font14 mr3"}),t.createElement("span",null,V.stages_count))),t.createElement(M.Z,{placement:"bottom",title:"\u5B66\u4E60\u4EBA\u6570"},t.createElement("span",null,t.createElement("i",{className:"iconfont icon-chengyuan font14 mr3"}),t.createElement("span",null,V.members_count)))))))})),!x.length&&t.createElement(m.Z,null)))}},80150:function(ke,_e,B){"use strict";B.d(_e,{jL:function(){return D},w9:function(){return qe},vv:function(){return Z},dN:function(){return Ze},QD:function(){return ci},cQ:function(){return re.Z},vg:function(){return ge},Oz:function(){return Xe},op:function(){return Gr},O5:function(){return St},_b:function(){return Zn},t7:function(){return P},tT:function(){return R},Gi:function(){return gt},YG:function(){return lt},Ed:function(){return bt},kT:function(){return kt},qp:function(){return o},Um:function(){return i},K3:function(){return f},vr:function(){return jn},qE:function(){return wn},Je:function(){return I},wb:function(){return he},rC:function(){return j},lB:function(){return Te},cq:function(){return Pr},kO:function(){return wr},tp:function(){return A},Si:function(){return ar},k8:function(){return Mt},Du:function(){return Hr}});var w=B(67294),H={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"},M="data:image/png;base64,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",D=({dataSource:Ee=[],img:le,imgWidth:de=346,title:be,sunTitle:Qe,bannerExtraContent:Ge})=>w.createElement("div",{className:H.banner},w.createElement("div",{className:H.content},w.createElement("aside",null,w.createElement("p",null,w.createElement("b",null,be),w.createElement("span",null,Qe)),Ee.length>0&&w.createElement("div",{className:H.btns},Ee.map((Ne,mt)=>w.createElement("div",{key:mt,onClick:Ne.click},Ne.name,Ne.sign?w.createElement("img",{src:M,width:39}):null))),Ge),le&&w.createElement("img",{style:{marginTop:33,marginRight:38},src:le,width:de}))),y={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"},v=B(94184),m=B.n(v),E=B(96486),h=Object.defineProperty,a=Object.getOwnPropertySymbols,d=Object.prototype.hasOwnProperty,_=Object.prototype.propertyIsEnumerable,r=(Ee,le,de)=>le in Ee?h(Ee,le,{enumerable:!0,configurable:!0,writable:!0,value:de}):Ee[le]=de,n=(Ee,le)=>{for(var de in le||(le={}))d.call(le,de)&&r(Ee,de,le[de]);if(a)for(var de of a(le))_.call(le,de)&&r(Ee,de,le[de]);return Ee},o=({dataSource:Ee=[],value:le,onChange:de,onTitleChange:be,className:Qe,title:Ge,titleWidth:Ne=41,style:mt={},fontColor:Ct="#6A7283",showCount:Pt,classNameActive:pt,styleItem:$e={}})=>{const[Lt,Ht]=(0,w.useState)(0),[It,yt]=(0,w.useState)(!1),Dt=(0,w.useRef)(null),jt=(0,w.useRef)(null);return(0,w.useEffect)(()=>{var Ft;Ee.length!==0&&(((Ft=Dt==null?void 0:Dt.current)==null?void 0:Ft.clientHeight)>97?Ht(1):Ht(0)),Ee.length===0&&Ht(0),yt(!1)},[Ee]),w.createElement("div",{className:m()(y.row,Qe),style:mt},w.createElement("div",{onClick:(0,E.throttle)(()=>be==null?void 0:be(),2e3),style:{width:Ne,marginTop:It?12:4},className:`${y.title} ${be?"current":""}`},Ge),w.createElement("div",{className:It?`${y.tagsWrap} ${y.tagsBorderWrap}`:y.tagsWrap},w.createElement("div",{className:y.bar,ref:jt,style:Lt>0?{height:Lt===1?97:"auto",overflow:Lt===1?"hidden":"auto",paddingRight:55}:{paddingRight:0}},w.createElement("div",{className:y.tag,ref:Dt},Ee==null?void 0:Ee.map(Ft=>w.createElement("span",{onClick:()=>de(Ft.id),key:Ft.id,style:n(n({color:Ct},$e),(Ft==null?void 0:Ft.style)||{}),className:le===Ft.id?m()(pt||y.active,Ft.classNameActive):""},w.createElement("span",{title:Ft.name,className:y.name},Ft.name),!!Pt&&w.createElement("span",{className:y.num},Ft.count))))),!!Lt&&w.createElement(w.Fragment,null,Lt===1?w.createElement("div",{onClick:()=>{var Ft;Ht(2),((Ft=Dt==null?void 0:Dt.current)==null?void 0:Ft.clientHeight)>245?yt(!0):yt(!1)},className:y.action},"\u5C55\u5F00",w.createElement("i",{style:{transform:"translateY(1px) scale(0.6)"},className:"iconfont icon-zhankai4"})):w.createElement("div",{onClick:()=>{jt.current.scrollTop=0,Ht(1),yt(!1)},className:y.action},"\u6536\u8D77",w.createElement("i",{style:{transform:"translateY(0px) scale(0.6)"},className:"iconfont icon-shouqi3"})))))},s={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"},f=({dataSource:Ee=[],value:le,onChange:de,onTitleChange:be,className:Qe,title:Ge,titleWidth:Ne=41,style:mt={},fontColor:Ct="#6A7283",showCount:Pt,expand:pt=!0})=>{const[$e,Lt]=(0,w.useState)(0),[Ht,It]=(0,w.useState)(!1),yt=(0,w.useRef)(null),Dt=(0,w.useRef)(null),[jt,Ft]=(0,w.useState)(pt);return w.createElement("div",{className:m()(s.row,Qe),style:mt},w.createElement("div",{className:"flex item-center justify-between"},w.createElement("div",{onClick:(0,E.throttle)(()=>be==null?void 0:be(),2e3),style:{width:Ne,marginTop:Ht?12:4},className:`${s.title} ${be?"current":""}`},Ge),w.createElement("i",{className:`iconfont ${jt?"icon-yizhankai":"icon-weizhankai"} current`,style:{color:"#727C95",fontSize:jt?8:10},onClick:()=>Ft(!jt)})),jt&&w.createElement("div",{className:Ht?`${s.tagsWrap} ${s.tagsBorderWrap}`:s.tagsWrap},w.createElement("div",{className:s.fenge}),w.createElement("div",{className:s.bar,ref:Dt},w.createElement("div",{className:s.tag,ref:yt},Ee==null?void 0:Ee.map(Zt=>w.createElement("span",{onClick:()=>de(Zt.id),key:Zt.id,style:{color:Ct},className:le===Zt.id?s.active:""},w.createElement("span",{title:Zt.name,className:s.name},Zt.name),!!Pt&&w.createElement("span",{className:s.num},Zt.count)))))))},e={flex_box_center:"flex_box_center___kXy2O",flex_space_between:"flex_space_between___EKVqf",flex_box_vertical_center:"flex_box_vertical_center___KJzcw",flex_box_center_end:"flex_box_center_end___V4Nm9",flex_box_column:"flex_box_column___g6Cee",row:"row___pqtGl",title:"title___eewYd",tagsWrap:"tagsWrap___AWV66",action:"action___Toj3O",bar:"bar___NZVtB",tag:"tag___z872k",name:"name___m2dAl",num:"num___EhDNX",active:"active___GSjsu",tagsBorderWrap:"tagsBorderWrap___VoQL3"},i=({dataSource:Ee=[],value:le,onChange:de,onTitleChange:be,className:Qe,title:Ge,titleWidth:Ne=41,style:mt={},fontColor:Ct="#fff",showCount:Pt,expand:pt=!0})=>{const[$e,Lt]=(0,w.useState)(0),[Ht,It]=(0,w.useState)(!1),yt=(0,w.useRef)(null),Dt=(0,w.useRef)(null),[jt,Ft]=(0,w.useState)(pt);return w.createElement("div",{className:m()(e.row,Qe),style:mt},w.createElement("div",{className:"flex item-center justify-between"},w.createElement("div",{onClick:(0,E.throttle)(()=>be==null?void 0:be(),2e3),style:{width:Ne},className:`${e.title} ${be?"current":""}`},Ge),w.createElement("i",{className:`iconfont ${jt?"icon-yizhankai":"icon-weizhankai"} current`,style:{color:jt?"#00DDC7":"#037F74",fontSize:jt?10:12},onClick:()=>Ft(!jt)})),jt&&w.createElement("div",{className:Ht?`${e.tagsWrap} ${e.tagsBorderWrap}`:e.tagsWrap},w.createElement("div",{className:e.bar,ref:Dt},w.createElement("div",{className:e.tag,ref:yt},Ee==null?void 0:Ee.map(Zt=>w.createElement("span",{onClick:()=>de(Zt.id),key:Zt.id,style:{color:Ct},className:le===Zt.id?e.active:""},w.createElement("span",{title:Zt.name,className:e.name},Zt.name),!!Pt&&w.createElement("span",{className:e.num},Zt.count)))))))},c={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"},A=({dataSource:Ee=[],value:le,onChange:de,className:be,style:Qe={}})=>w.createElement("div",{style:Qe,className:m()(c.tabs,be)},Ee.map(Ge=>w.createElement("span",{onClick:()=>de(Ge.id),className:le===Ge.id?c.active:"",key:Ge.id},Ge.name))),x={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"},C=B(69677),P=({dataSource:Ee=[],value:le="",onChange:de,onInputChange:be=()=>{},className:Qe,style:Ge={},placeholder:Ne,allowClear:mt=!1})=>{var Ct;const[Pt,pt]=(0,w.useState)(""),[$e,Lt]=(0,w.useState)("");(0,w.useEffect)(()=>{var yt;let Dt=le;(yt=JSON.stringify(le))!=null&&yt.includes("{")&&(pt(le.id),Dt=le.value||"");try{Lt(decodeURIComponent(Dt||""))}catch(jt){Lt(decodeURIComponent(Dt||""))}},[le]);const Ht=()=>{de(encodeURIComponent($e),Pt||null)},It=yt=>{yt!==Pt&&(pt(yt),de(encodeURIComponent($e),yt))};return w.createElement("div",{className:m()(x.input,Qe),style:Ge},!!Ee.length&&w.createElement("div",{className:x.dropdown},w.createElement("div",{className:x.text},(Ct=Ee.find(yt=>yt.id===Pt))==null?void 0:Ct.name,w.createElement("i",{className:"iconfont icon-zhankai4"}),w.createElement("b",{className:x.b1}),w.createElement("b",{className:x.b2})),w.createElement("div",{className:x.menu},Ee.map((yt,Dt)=>w.createElement("div",{key:Dt,onClick:()=>It(yt.id)},yt.name)))),w.createElement(C.default,{onPressEnter:Ht,value:$e,onChange:yt=>{Lt(yt.target.value),be(encodeURIComponent(yt.target.value),Pt||null)},bordered:!1,placeholder:Ne}),w.createElement("i",{onClick:Ht,className:"iconfont icon-sousuo9 font14 pl10 current"}))},b={flex_box_center:"flex_box_center___pVsOk",flex_space_between:"flex_space_between___bQwBe",flex_box_vertical_center:"flex_box_vertical_center___gdKht",flex_box_center_end:"flex_box_center_end___wJuEm",flex_box_column:"flex_box_column___F50s0",input:"input___f7GZE",dropdown:"dropdown___oJkxW",menu:"menu___RplGU",text:"text___EgRKl"},R=({dataSource:Ee=[],value:le="",onChange:de,onInputChange:be=()=>{},className:Qe,style:Ge={},placeholder:Ne,allowClear:mt=!1})=>{var Ct;const[Pt,pt]=(0,w.useState)(""),[$e,Lt]=(0,w.useState)("");(0,w.useEffect)(()=>{var yt;let Dt=le;(yt=JSON.stringify(le))!=null&&yt.includes("{")&&(pt(le.id),Dt=le.value||"");try{Lt(decodeURIComponent(Dt||""))}catch(jt){Lt(decodeURIComponent(Dt||""))}},[le]);const Ht=()=>{de(encodeURIComponent($e),Pt||null)},It=yt=>{yt!==Pt&&(pt(yt),de(encodeURIComponent($e),yt))};return w.createElement("div",{className:m()(b.input,Qe),style:Ge},!!Ee.length&&w.createElement("div",{className:b.dropdown},w.createElement("div",{className:b.text},(Ct=Ee.find(yt=>yt.id===Pt))==null?void 0:Ct.name,w.createElement("i",{className:"iconfont icon-zhankai4 ml5"})),w.createElement("div",{className:b.menu},Ee.map((yt,Dt)=>w.createElement("div",{key:Dt,onClick:()=>It(yt.id)},yt.name)))),w.createElement(C.default,{onPressEnter:Ht,value:$e,onChange:yt=>{Lt(yt.target.value),be(encodeURIComponent(yt.target.value),Pt||null)},bordered:!1,placeholder:Ne}),w.createElement("i",{onClick:Ht,className:"iconfont icon-sousuo9 font14 pl10 current"}))},T={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"},I=({value:Ee,onChange:le,className:de,total:be,pageSize:Qe,style:Ge={}})=>{const Ne=Ee<2,mt=Ee>=Math.ceil(be/Qe);return be<=Qe?w.createElement(w.Fragment,null):w.createElement("div",{className:m()(T.quickPager,de),style:Ge},w.createElement("div",{onClick:()=>{Ne||le(Ee-1,"prev")},className:Ne?T.disabled:""},"\u4E0A\u4E00\u9875"),w.createElement("div",{onClick:()=>{mt||le(Ee+1,"next")},className:mt?T.disabled:""},"\u4E0B\u4E00\u9875"))},F={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"},U=B(57953),K=B(83062),G=B(12604),V=B(11320),X=B(28706),ee=B(96908),oe=B(57177),ue=B(81378),Ae=B(26194),he=({className:Ee,dataSource:le=[],col:de=4,right:be,bottom:Qe=23,precision:Ge=0,wrapWidth:Ne=1200,trackEventItems:mt,loading:Ct})=>{const Pt=Math.floor((Ne-(de-1)*be)/de);return w.createElement(U.Z,{spinning:Ct},w.createElement("div",{className:m()(F.list,Ee)},!!le.length&&le.map((pt,$e)=>{const{name:Lt,id:Ht,identifier:It,power:yt,cover_image_id:Dt,pic:jt}=pt;return w.createElement("div",{className:F.wrap,key:Ht,style:{width:Pt,marginRight:(1+$e)%de===0?0:be+Ge,marginBottom:Qe}},w.createElement("a",{target:"_blank",href:`/shixuns/${It}/challenges`,className:F.li,onClick:Ft=>{Ft.preventDefault(),mt&&(0,X.L9)([mt]),yt&&(0,X.xg)(`/shixuns/${It}/challenges`)}},w.createElement("div",{className:F.img},w.createElement("img",{className:F.cover,src:`${jt}`}),pt.is_jupyter&&w.createElement("img",{className:F.sign,src:ee}),pt.is_jupyter_lab&&w.createElement("img",{className:F.sign,src:oe}),pt.is_unity_3d&&w.createElement("img",{className:F.sign,src:ue})),w.createElement("div",{className:F.name},w.createElement(K.Z,{title:Lt||"\u5B9E\u8DF5\u9879\u76EE\u540D\u79F0-\u672A\u586B\u5199"},w.createElement("span",{className:F.e},Lt||"\u5B9E\u8DF5\u9879\u76EE\u540D\u79F0-\u672A\u586B\u5199"))),w.createElement("div",{className:F.tags},w.createElement(K.Z,{placement:"bottom",title:"\u5173\u5361\u6570"},w.createElement("span",null,w.createElement("i",{className:"iconfont icon-shixunguanqia font14 mr2"}),w.createElement("span",null,pt.challenges_count))),!!pt.myshixuns_count&&w.createElement(K.Z,{placement:"bottom",title:"\u5B66\u4E60\u4EBA\u6570"},w.createElement("span",null,w.createElement("i",{className:"iconfont icon-chengyuan font14 mr2"}),w.createElement("span",null,pt.myshixuns_count))),w.createElement(K.Z,{placement:"bottom",title:"\u96BE\u5EA6\u7B49\u7EA7"},w.createElement("span",null,w.createElement("span",null,pt.level))),w.createElement("div",{className:F.rate},w.createElement(G.Z,{allowHalf:!0,disabled:!0,defaultValue:pt.score_info}),w.createElement("span",null,"\xA0",pt.score_info?`${pt.score_info}\u5206`:"5\u5206")))),!yt&&w.createElement("div",{className:F.lockWrap},w.createElement("img",{src:`${V.Z.IMG_SERVER}/images/educoder/icon/lockclose.svg`}),w.createElement("span",{className:"mt15 font16 c-white"},"\u5B9A\u5411\u5F00\u653E\u5185\u5BB9\uFF0C\u9700\u8981\u6388\u6743")))}),!le.length&&w.createElement(Ae.Z,null)))},ve={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"},Te=({className:Ee,dataSource:le=[],col:de=4,right:be,bottom:Qe=23,precision:Ge=0,wrapWidth:Ne=1200,wrapClassName:mt,trackEventItems:Ct,loading:Pt})=>{const pt=Math.floor((Ne-(de-1)*be)/de);return w.createElement(U.Z,{spinning:Pt},w.createElement("div",{className:m()(ve.list,Ee)},!!le.length&&le.map(($e,Lt)=>{const{name:Ht,id:It,identifier:yt,power:Dt,cover_image_id:jt,pic:Ft}=$e;return w.createElement("div",{className:m()(ve.wrap,mt),key:It,style:{width:pt,marginRight:(1+Lt)%de===0?0:be+Ge,marginBottom:Qe}},w.createElement("a",{target:"_blank",href:`/shixuns/${yt}/challenges`,className:ve.li,onClick:Zt=>{Zt.preventDefault(),Ct&&(0,X.L9)([Ct]),Dt&&(0,X.xg)(`/shixuns/${yt}/challenges`)}},w.createElement("img",{src:B(79633),className:ve.titleBg}),w.createElement("div",{className:ve.name},w.createElement(K.Z,{title:Ht||"\u5B9E\u8DF5\u9879\u76EE\u540D\u79F0-\u672A\u586B\u5199"},w.createElement("span",{className:ve.e},Ht||"\u5B9E\u8DF5\u9879\u76EE\u540D\u79F0-\u672A\u586B\u5199"))),w.createElement("div",{style:{padding:"14px",paddingBottom:0}},w.createElement("div",{className:ve.img},w.createElement("img",{className:ve.cover,src:jt?`${V.Z.API_SERVER}/api/attachments/${jt}`:`${V.Z.IMG_SERVER+Ft}`}),$e.is_jupyter&&w.createElement("div",{className:ve.bq},"Jupyter"),$e.is_jupyter_lab&&w.createElement("div",{className:ve.bq},"JupyterLab"),$e.is_unity_3d&&w.createElement("div",{className:ve.bq,style:{background:"linear-gradient(rgba(90, 167, 237, 0.8) 0%, rgba(79, 29, 189, 0.8) 100%)"}},"\u865A\u62DF\u4EFF\u771F")),w.createElement("div",{className:"mt20 flex item-center justify-between"},w.createElement("div",null,w.createElement("span",{className:ve.text},"\u5B66\u4E60\u4EBA\u6570"),w.createElement("span",{className:ve.value},$e.myshixuns_count)),w.createElement("div",null,w.createElement("span",{className:ve.text},"\u56F0\u96BE\u7B49\u7EA7"),w.createElement("span",{className:ve.value},$e.level))),w.createElement("div",{className:"mt10 mb10 flex item-center justify-between"},w.createElement("div",null,w.createElement("span",{className:ve.text},"\u5173\u5361\u6570"),w.createElement("span",{className:ve.value},$e.challenges_count)),w.createElement("div",{className:ve.rate},w.createElement(G.Z,{allowHalf:!0,disabled:!0,defaultValue:$e.score_info}),w.createElement("span",{className:ve.value,style:{color:"#FF9C00"}},"\xA0",$e.score_info?`${$e.score_info}\u5206`:"5\u5206"))))),!Dt&&w.createElement("div",{className:ve.lockWrap},w.createElement("img",{src:`${V.Z.IMG_SERVER}/images/educoder/icon/lockclose.svg`}),w.createElement("span",{className:"mt15 font16 c-white"},"\u5B9A\u5411\u5F00\u653E\u5185\u5BB9\uFF0C\u9700\u8981\u6388\u6743")))}),!le.length&&w.createElement(Ae.Z,null)))},Ce={flex_box_center:"flex_box_center___MoMqv",flex_space_between:"flex_space_between___G_1Pa",flex_box_vertical_center:"flex_box_vertical_center___vHNpc",flex_box_center_end:"flex_box_center_end___dt_Dx",flex_box_column:"flex_box_column___gK3h_",list:"list___GYKT6",wrap:"wrap___uLNQf",lockWrap:"lockWrap___lZQo7",li:"li___X7Rkc",img:"img___bih4x",cover:"cover___UiMEf",sign:"sign___WPSew",name:"name___ZLjiX",e:"e___tB29O",tags:"tags___a3FKn",rate:"rate___dh30H"},ye="data:image/png;base64,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",q="data:image/png;base64,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",Q="data:image/png;base64,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",j=({className:Ee,dataSource:le=[],col:de=4,right:be,bottom:Qe=23,precision:Ge=0,wrapWidth:Ne=1200,trackEventItems:mt,loading:Ct,wrapClassName:Pt,imgClassName:pt})=>{const $e=Math.floor((Ne-(de-1)*be)/de);return w.createElement(U.Z,{spinning:Ct},w.createElement("div",{className:m()(Ce.list,Ee)},!!le.length&&le.map((Lt,Ht)=>{const{name:It,id:yt,identifier:Dt,power:jt,cover_image_id:Ft,pic:Zt}=Lt;return w.createElement("div",{className:m()(Ce.wrap,Pt),key:yt,style:{width:$e,marginRight:(1+Ht)%de===0?0:be+Ge,marginBottom:Qe}},w.createElement("a",{target:"_blank",href:`/shixuns/${Dt}/challenges`,className:Ce.li,onClick:cr=>{cr.preventDefault(),mt&&(0,X.L9)([mt]),jt&&(0,X.xg)(`/shixuns/${Dt}/challenges`)}},w.createElement("div",{className:m()(Ce.img,pt)},w.createElement("img",{className:Ce.cover,src:Ft?`${V.Z.API_SERVER}/api/attachments/${Ft}`:`${V.Z.IMG_SERVER+Zt}`}),Lt.is_jupyter&&w.createElement("img",{className:Ce.sign,src:ye}),Lt.is_jupyter_lab&&w.createElement("img",{className:Ce.sign,src:q}),Lt.is_unity_3d&&w.createElement("img",{className:Ce.sign,src:Q})),w.createElement("div",{className:Ce.name},w.createElement(K.Z,{title:It||"\u5B9E\u8DF5\u9879\u76EE\u540D\u79F0-\u672A\u586B\u5199"},w.createElement("span",{className:Ce.e},It||"\u5B9E\u8DF5\u9879\u76EE\u540D\u79F0-\u672A\u586B\u5199"))),w.createElement("div",{className:Ce.tags},w.createElement(K.Z,{placement:"bottom",title:"\u5173\u5361\u6570"},w.createElement("span",null,w.createElement("i",{className:"iconfont icon-shixunguanqia font14 mr2"}),w.createElement("span",null,Lt.challenges_count))),!!Lt.myshixuns_count&&w.createElement(K.Z,{placement:"bottom",title:"\u5B66\u4E60\u4EBA\u6570"},w.createElement("span",null,w.createElement("i",{className:"iconfont icon-chengyuan font14 mr2"}),w.createElement("span",null,Lt.myshixuns_count))),w.createElement(K.Z,{placement:"bottom",title:"\u96BE\u5EA6\u7B49\u7EA7"},w.createElement("span",null,w.createElement("span",null,Lt.level))),w.createElement("div",{className:Ce.rate},w.createElement(G.Z,{allowHalf:!0,disabled:!0,defaultValue:Lt.score_info}),w.createElement("span",null,"\xA0",Lt.score_info?`${Lt.score_info}\u5206`:"5\u5206")))),!jt&&w.createElement("div",{className:Ce.lockWrap},w.createElement("img",{src:`${V.Z.IMG_SERVER}/images/educoder/icon/lockclose.svg`}),w.createElement("span",{className:"mt15 font16 c-white"},"\u5B9A\u5411\u5F00\u653E\u5185\u5BB9\uFF0C\u9700\u8981\u6388\u6743")))}),!le.length&&w.createElement(Ae.Z,null)))},re=B(5476),k={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"},te=B(79005),ie=B(20345),J=B(77882),ce=B(31081),Se=B(75309),Le=B(71979),ze=B(47558),We=B(60345),tt=B(66832),je=B(96593),pe=B(19664),Oe=B(91833),Ie=Object.defineProperty,Pe=Object.getOwnPropertySymbols,ot=Object.prototype.hasOwnProperty,ht=Object.prototype.propertyIsEnumerable,dt=(Ee,le,de)=>le in Ee?Ie(Ee,le,{enumerable:!0,configurable:!0,writable:!0,value:de}):Ee[le]=de,At=(Ee,le)=>{for(var de in le||(le={}))ot.call(le,de)&&dt(Ee,de,le[de]);if(Pe)for(var de of Pe(le))ht.call(le,de)&&dt(Ee,de,le[de]);return Ee};const Ot=[{name:"\u63A8\u8350\u81EA\u5B66",ptimg:te,swimg:ie},{name:"101\u8BA1\u5212",ptimg:J,swimg:ce},{name:"\u56FD\u5BB6\u4E00\u6D41",ptimg:Se,swimg:Le},{name:"\u7701\u7EA7\u4E00\u6D41",ptimg:ze,swimg:We},{name:"\u7CBE\u54C1\u8BFE\u7A0B",ptimg:tt,swimg:je},{name:"\u519B\u961F\u4E00\u6D41",ptimg:pe,swimg:Oe}];var Xe=({className:Ee,dataSource:le=[],col:de=4,right:be,bottom:Qe=23,precision:Ge=0,wrapWidth:Ne=1200,trackEventItems:mt,loading:Ct,wrapClassName:Pt,imgClassName:pt,isArrow:$e=!1,imgStyle:Lt={}})=>{const Ht=Math.floor((Ne-(de-1)*be)/de),[It,yt]=(0,w.useState)(),[Dt,jt]=(0,w.useState)(),Ft=cr=>yt(cr),Zt=()=>yt(-1);return w.createElement(U.Z,{spinning:Ct},w.createElement("div",{className:m()(k.list,Ee)},!!(le!=null&&le.length)&&(le==null?void 0:le.map((cr,dr)=>{var xr;const{name:pr,id:Jt,identifier:or,featured:sr,school_name:ur,image_url:nn,excellent:an,is_plan:qr}=cr;return w.createElement("div",{key:Jt,className:m()(k.wrap,Pt),style:{width:Ht,marginRight:(1+dr)%de===0?0:be+Ge,marginBottom:Qe}},w.createElement("a",{target:"_blank",href:`/paths/${or}`,className:k.li,onClick:Br=>{Br.preventDefault(),mt&&(0,X.L9)([mt]),(0,X.xg)(`/paths/${or}`)}},w.createElement("img",{src:B(39057),className:k.titleBg}),w.createElement("div",{className:k.name},w.createElement(K.Z,{title:pr},w.createElement("span",{className:k.e,style:{color:$e&&It===dr?"#145DFF":"#000000"},onMouseEnter:()=>{Ft(dr)},onMouseLeave:Zt},pr))),w.createElement("div",{style:{padding:"14px",paddingBottom:0}},w.createElement("div",{className:m()(k.img,pt)},w.createElement("img",{className:k.cover,style:At({},Lt),src:`${V.Z.IMG_SERVER+nn}`}),(xr=cr==null?void 0:cr.subject_tags)==null?void 0:xr.map((Br,vr)=>{var $r,en;if(vr===0){const Yt=($r=Ot.find(ir=>ir.name==Br))==null?void 0:$r.swimg;return w.createElement("img",{className:k.sign,src:Yt,style:{left:"-4px"}})}const lr=(en=Ot.find(Yt=>Yt.name==Br))==null?void 0:en.ptimg;return w.createElement("img",{className:k.sign,src:lr,style:{left:`${48+52*(vr-1)+2*vr}px`}})}),w.createElement("div",{style:{position:"absolute",right:"4px",bottom:"4px"}},(cr==null?void 0:cr.excellent)&&w.createElement("div",{className:k.bq},"\u5F00\u653E\u8BFE\u7A0B"))),w.createElement("div",{className:"mt10 mb10 flex item-center justify-between"},w.createElement("div",null,w.createElement("span",{className:k.text},"\u7AE0\u8282\u6570"),w.createElement("span",{className:k.value},cr.stages_count)),w.createElement("div",null,w.createElement("span",{className:k.text},"\u5B66\u4E60\u4EBA\u6570"),w.createElement("span",{className:k.value},cr.members_count))))))})),!le.length&&w.createElement(Ae.Z,null)))},Je={flex_box_center:"flex_box_center___o6B0Z",flex_space_between:"flex_space_between___Uz22Q",flex_box_vertical_center:"flex_box_vertical_center___nWLOj",flex_box_center_end:"flex_box_center_end___eqMdD",flex_box_column:"flex_box_column___ypdJv",list:"list___qA19p",wrap:"wrap___YaRtD",lockWrap:"lockWrap___Cle7R",li:"li___Hpfsl",img:"img___li1Ky",cover:"cover___iuyl5",bq:"bq___BpHtR",sign:"sign___ajRAC",titleBg:"titleBg___h8Qq7",name:"name___mAV5m",e:"e___YPSD7",text:"text___nDpTk",value:"value___guywy",unit:"unit___aTzYz",tags:"tags___X1lul",tag1:"tag1___AHRAc",tag2:"tag2___Pska6"},Nt=B(52262),ut=B(67294);const Kt=[{name:"\u63A8\u8350\u81EA\u5B66",ptimg:te,swimg:ie},{name:"101\u8BA1\u5212",ptimg:J,swimg:ce},{name:"\u56FD\u5BB6\u4E00\u6D41",ptimg:Se,swimg:Le},{name:"\u7701\u7EA7\u4E00\u6D41",ptimg:ze,swimg:We},{name:"\u7CBE\u54C1\u8BFE\u7A0B",ptimg:tt,swimg:je},{name:"\u519B\u961F\u4E00\u6D41",ptimg:pe,swimg:Oe}];var ge=({className:Ee,dataSource:le=[],col:de=4,right:be,bottom:Qe=23,precision:Ge=0,wrapWidth:Ne=1200,trackEventItems:mt,loading:Ct,onRemove:Pt=()=>{},isCurrent:pt=!0,showAlias:$e=!1,wrapClassName:Lt,imgClassName:Ht})=>{const It=Math.floor((Ne-(de-1)*be)/de),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(Dt=>(window.ENV==="build"&&(Dt.ptimg=`/react/build${Dt.ptimg}`,Dt.swimg=`/react/build${Dt.swimg}`),Dt));return ut.createElement(U.Z,{spinning:Ct},ut.createElement("div",{className:m()(Je.list,Ee)},!!(le!=null&&le.length)&&(le==null?void 0:le.map((Dt,jt)=>{var Ft;const{name:Zt,id:cr,identifier:dr,featured:xr,school_name:pr,image_url:Jt,excellent:or,is_plan:sr}=Dt;return ut.createElement("div",{key:cr,className:m()(Je.wrap,Lt),style:{width:It,marginRight:(1+jt)%de===0?0:be+Ge,marginBottom:Qe}},ut.createElement("a",{className:Je.li,onClick:ur=>{ur.preventDefault(),ur.stopPropagation(),mt&&(0,X.L9)([mt]),(0,X.xg)(`/paths/${dr}`)}},ut.createElement("div",{className:m()(Je.img,Ht)},ut.createElement("img",{className:Je.cover,src:`${V.Z.IMG_SERVER+Jt}`}),pt&&(0,Nt.bg)()&&(Dt==null?void 0:Dt.studying)&&ut.createElement("div",{className:`${Je.movebq} user-path-items`,onClick:ur=>{ur.stopPropagation(),Pt(Dt)}},ut.createElement("i",{className:"iconfont icon-yichu1 mr5 c-red"}),ut.createElement("span",{className:"c-red"},"\u79FB\u9664")),(Ft=Dt==null?void 0:Dt.subject_tags)==null?void 0:Ft.map((ur,nn)=>{var an,qr;if(nn===0){const vr=(an=yt.find($r=>$r.name==ur))==null?void 0:an.swimg;return ut.createElement("img",{className:Je.sign,src:vr,style:{left:"-4px"}})}const Br=(qr=yt.find(vr=>vr.name==ur))==null?void 0:qr.ptimg;return ut.createElement("img",{className:Je.sign,src:Br,style:{left:`${48+52*(nn-1)+2*nn}px`}})}),ut.createElement("div",{style:{position:"absolute",bottom:"10px",right:"10px"}},(Dt==null?void 0:Dt.excellent)&&ut.createElement("div",{className:Je.bq},"\u5F00\u653E\u8BFE\u7A0B"))),ut.createElement("div",{className:Je.name},ut.createElement(K.Z,{title:$e&&(Dt!=null&&Dt.excellent_alias_name)?ut.createElement("span",null,`\u8BFE\u7A0B\u539F\u540D\uFF1A${Zt}`,ut.createElement("br",null),ut.createElement("span",null,`\u8BFE\u7A0B\u522B\u540D\uFF1A${Dt==null?void 0:Dt.excellent_alias_name}`)):Zt},ut.createElement("span",{className:Je.e},$e&&(Dt==null?void 0:Dt.excellent_alias_name)||Zt))),ut.createElement("div",{className:Je.tags},ut.createElement("div",null,ut.createElement(K.Z,{placement:"bottom",title:"\u7AE0\u8282\u6570"},ut.createElement("span",null,ut.createElement("i",{className:"iconfont icon-zhangjie1 font14 mr3"}),ut.createElement("span",null,Dt.stages_count))),ut.createElement(K.Z,{placement:"bottom",title:"\u5B66\u4E60\u4EBA\u6570"},ut.createElement("span",null,ut.createElement("i",{className:"iconfont icon-chengyuan font14 mr3"}),ut.createElement("span",null,Dt.members_count)))))))})),!le.length&&ut.createElement(Ae.Z,null)))},we={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"},Ue="data:image/png;base64,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",De=B(67294),qe=({className:Ee,dataSource:le=[],col:de=4,right:be,bottom:Qe=23,precision:Ge=0,wrapWidth:Ne=1200,trackEventItems:mt,loading:Ct})=>{const Pt=Math.floor((Ne-(de-1)*be)/de);return De.createElement(U.Z,{spinning:Ct},De.createElement("div",{className:m()(we.list,Ee)},!!le.length&&le.map((pt,$e)=>{const{subject_identifier:Lt,id:Ht,identifier:It,power:yt}=pt,Dt=pt.is_public!=0&&pt.is_public;return De.createElement("div",{className:we.wrap,key:Ht,style:{width:Pt,marginRight:(1+$e)%de===0?0:be+Ge,marginBottom:Qe}},De.createElement("a",{className:we.li,onClick:jt=>{jt.preventDefault(),mt&&(0,X.L9)([mt]),(0,X.xg)(pt.first_category_url)}},De.createElement("div",{className:we.top},De.createElement(K.Z,{title:pt.name},De.createElement("div",{className:we.name},pt.name)),De.createElement("img",{className:we.img,src:V.Z.IMG_SERVER+"/images/"+pt.avatar_url}),De.createElement("div",{className:we.text,title:pt.creator},pt.creator),Lt&&De.createElement("div",{className:we.btns},De.createElement("div",null,"\u5F00\u653E\u8BFE\u7A0B"),De.createElement("aside",null,"\u5F00\u653E\u8BFE\u5802")),Dt&&De.createElement("div",{className:we.sign},"\u516C\u5F00")),De.createElement("div",{className:we.bottom},pt.visits>0&&De.createElement(K.Z,{title:"\u8BBF\u95EE\u91CF",placement:"bottom"},De.createElement("span",null,De.createElement("i",{className:"iconfont icon-liulanyan"}),De.createElement("span",null,pt.visits))),pt.course_members_count>0&&De.createElement(K.Z,{title:"\u6210\u5458",placement:"bottom"},De.createElement("span",null,De.createElement("i",{className:"iconfont icon-chengyuan"}),pt.course_members_count)),pt.tasks_count>0&&De.createElement(K.Z,{title:"\u4F5C\u4E1A",placement:"bottom"},De.createElement("span",null,De.createElement("i",{className:"iconfont icon-zuoye"}),pt.tasks_count)),pt.is_end?De.createElement("div",{style:{color:"#6B758B"}},"\u5DF2\u7ED3\u675F"):De.createElement("div",{style:{color:"#00B187"}},"\u8FDB\u884C\u4E2D"))),!pt.is_accessible&&De.createElement("div",{className:we.lockWrap},De.createElement("img",{src:`${V.Z.IMG_SERVER}/images/educoder/icon/lockclose.svg`}),De.createElement("span",{className:"mt15 font16 c-white"},"\u975E\u8BFE\u5802\u6210\u5458\u4E0D\u53EF\u8FDB\u5165")))}),!le.length&&De.createElement(Ae.Z,null)))},rt={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"},ft="data:image/png;base64,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",Ze=({className:Ee,dataSource:le=[],col:de=4,right:be,bottom:Qe=23,precision:Ge=0,wrapWidth:Ne=1200,wrapClassName:mt,trackEventItems:Ct,loading:Pt})=>{const pt=Math.floor((Ne-(de-1)*be)/de);return w.createElement(U.Z,{spinning:Pt},w.createElement("div",{className:m()(rt.list,Ee)},!!le.length&&le.map(($e,Lt)=>{const{subject_identifier:Ht,id:It,identifier:yt,power:Dt}=$e,jt=$e.is_public!=0&&$e.is_public;return w.createElement("div",{className:m()(`${rt.wrap} ${$e.is_accessible?"":rt.warpStyle}`,mt),key:It,style:{width:pt,marginRight:(1+Lt)%de===0?0:be+Ge,marginBottom:Qe}},w.createElement("a",{className:rt.li,onClick:Ft=>{Ft.preventDefault(),Ct&&(0,X.L9)([Ct]),(0,X.xg)($e.first_category_url)}},w.createElement("div",{className:rt.creator},w.createElement("img",{className:rt.img,src:V.Z.IMG_SERVER+"/images/"+$e.avatar_url}),w.createElement("div",{className:rt.text,title:$e.creator},$e.creator)),w.createElement("div",{className:rt.top},w.createElement(K.Z,{title:$e.name},w.createElement("div",{className:rt.name},$e.name)),jt&&w.createElement("div",{className:rt.sign},"\u516C\u5F00")),w.createElement("div",{className:rt.middle},w.createElement("div",{className:rt.row,style:{marginBottom:6}},w.createElement("div",null,w.createElement("span",{className:rt.text},"\u8BBF\u95EE\u91CF"),w.createElement("span",{className:rt.value},($e==null?void 0:$e.visits)||0)),w.createElement("div",null,w.createElement("span",{className:rt.text},"\u6210\u5458"),w.createElement("span",{className:rt.value},($e==null?void 0:$e.course_members_count)||0))),w.createElement("div",{className:rt.row},w.createElement("div",null,w.createElement("span",{className:rt.text,style:{width:42}},"\u4F5C",w.createElement("span",{style:{marginLeft:14}},"\u4E1A")),w.createElement("span",{className:rt.value},($e==null?void 0:$e.tasks_count)||0)),w.createElement("div",null,w.createElement("span",{className:rt.text},"\u72B6\u6001"),$e.is_end?w.createElement("span",{className:rt.value,style:{color:"#6E8BAA"}},"\u5DF2\u7ED3\u675F"):w.createElement("span",{className:rt.value,style:{color:"#1AAE64"}},"\u8FDB\u884C\u4E2D")))),Ht&&w.createElement("div",{className:rt.btns},w.createElement("div",null,"\u5F00\u653E\u8BFE\u7A0B"),w.createElement("aside",null,"\u5F00\u653E\u8BFE\u5802"))),!$e.is_accessible&&w.createElement("div",{className:rt.lockWrap},w.createElement("img",{src:`${V.Z.IMG_SERVER}/images/educoder/icon/lockclose.svg`}),w.createElement("span",{className:"mt15 font16 c-white"},"\u975E\u8BFE\u5802\u6210\u5458\u4E0D\u53EF\u8FDB\u5165")))}),!le.length&&w.createElement(Ae.Z,null)))},O={flex_box_center:"flex_box_center___eJQtn",flex_space_between:"flex_space_between___lzV1x",flex_box_vertical_center:"flex_box_vertical_center___IYfoZ",flex_box_center_end:"flex_box_center_end___lcJOu",flex_box_column:"flex_box_column____ShCG",list:"list___YXSRr",wrap:"wrap___ZGdF6",lockWrap:"lockWrap___VKZgR",creator:"creator___tLnuI",img:"img___P8alm",text:"text___ijpmj",top:"top___md6mc",sign:"sign___ydolt",name:"name___OEush",middle:"middle___WFQ2R",row:"row___MFUrm",value:"value___rEYMy",btns:"btns___Y5S2B",bottom:"bottom___RsfJC",warpStyle:"warpStyle___R8xtx"},W="data:image/png;base64,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",Z=({className:Ee,dataSource:le=[],col:de=4,right:be,bottom:Qe=23,precision:Ge=0,wrapWidth:Ne=1200,wrapClassName:mt,trackEventItems:Ct,loading:Pt})=>{const pt=Math.floor((Ne-(de-1)*be)/de);return w.createElement(U.Z,{spinning:Pt},w.createElement("div",{className:m()(O.list,Ee)},!!le.length&&le.map(($e,Lt)=>{const{subject_identifier:Ht,id:It,identifier:yt,power:Dt}=$e,jt=$e.is_public!=0&&$e.is_public;return w.createElement("div",{className:m()(`${O.wrap} ${$e.is_accessible?"":O.warpStyle}`,mt),key:It,style:{width:pt,marginRight:(1+Lt)%de===0?0:be+Ge,marginBottom:Qe}},w.createElement("a",{className:O.li,onClick:Ft=>{Ft.preventDefault(),Ct&&(0,X.L9)([Ct]),(0,X.xg)($e.first_category_url)}},w.createElement("div",{className:O.creator},w.createElement("img",{className:O.img,src:V.Z.IMG_SERVER+"/images/"+$e.avatar_url}),w.createElement("div",{className:O.text,title:$e.creator},$e.creator)),w.createElement("div",{className:O.top},w.createElement(K.Z,{title:$e.name},w.createElement("div",{className:O.name},$e.name)),jt&&w.createElement("div",{className:O.sign})),w.createElement("div",{className:O.middle},w.createElement("div",{className:O.row,style:{marginBottom:6}},w.createElement("div",null,w.createElement("span",{className:O.text},"\u8BBF\u95EE\u91CF"),w.createElement("span",{className:O.value},($e==null?void 0:$e.visits)||0)),w.createElement("div",null,w.createElement("span",{className:O.text},"\u6210\u5458"),w.createElement("span",{className:O.value},($e==null?void 0:$e.course_members_count)||0))),w.createElement("div",{className:O.row},w.createElement("div",null,w.createElement("span",{className:O.text,style:{width:42}},"\u4F5C",w.createElement("span",{style:{marginLeft:14}},"\u4E1A")),w.createElement("span",{className:O.value},($e==null?void 0:$e.tasks_count)||0)),w.createElement("div",null,w.createElement("span",{className:O.text},"\u72B6\u6001"),$e.is_end?w.createElement("span",{className:O.value,style:{color:"#6E8BAA"}},"\u5DF2\u7ED3\u675F"):w.createElement("span",{className:O.value,style:{color:"#00DDC7"}},"\u8FDB\u884C\u4E2D")))),Ht&&w.createElement("div",{className:O.btns},w.createElement("div",null,"\u5F00\u653E\u8BFE\u7A0B"),w.createElement("aside",null,"\u5F00\u653E\u8BFE\u5802"))),!$e.is_accessible&&w.createElement("div",{className:O.lockWrap},w.createElement("img",{src:`${V.Z.IMG_SERVER}/images/educoder/icon/lockclose.svg`}),w.createElement("span",{className:"mt15 font16 c-white"},"\u975E\u8BFE\u5802\u6210\u5458\u4E0D\u53EF\u8FDB\u5165")))}),!le.length&&w.createElement(Ae.Z,null)))},Y={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"},se=B(35973),lt=({dataSource:Ee=[],value:le,onChange:de,className:be,style:Qe={},tabBarExtraContent:Ge})=>w.createElement("div",{className:m()(Y.tabs,be),style:Qe},w.createElement("div",{className:Y.tabsWrap},Ee.map((Ne,mt)=>w.createElement("aside",{className:Y.tab,onClick:()=>{de(Ne.id),Ne.link&&se.history.push(Ne.link)},key:mt},w.createElement("div",{className:le===Ne.id?Y.active:""},Ne.name),(Ne==null?void 0:Ne.resetCount)==null&&(Ne==null?void 0:Ne.total)!==void 0&&w.createElement("span",null,"\uFF08",Ne==null?void 0:Ne.total,"\uFF09"),(Ne==null?void 0:Ne.resetCount)!==void 0&&(Ne==null?void 0:Ne.total)!==void 0&&w.createElement(K.Z,{title:(Ne==null?void 0:Ne.tip)!=null?Ne==null?void 0:Ne.tip:""},w.createElement("span",{style:{color:"#9096A3"}},"\uFF08",w.createElement("span",{style:{color:"#000"}},Ne==null?void 0:Ne.resetCount),"/",w.createElement("span",null,Ne==null?void 0:Ne.total),"\uFF09"))))),w.createElement("div",{className:Y.tabBar},Ge)),Ve={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"},kt=({dataSource:Ee=[],value:le,onChange:de,className:be,style:Qe={},tabBarExtraContent:Ge})=>w.createElement("div",{className:m()(Ve.tabs,be),style:Qe},w.createElement("div",{className:Ve.tabsWrap},Ee.map((Ne,mt)=>w.createElement("aside",{className:Ve.tab,onClick:()=>{de(Ne.id),Ne.link&&se.history.push(Ne.link)},key:mt},w.createElement("div",{className:le===Ne.id?Ve.active:""},Ne.name),(Ne==null?void 0:Ne.resetCount)==null&&(Ne==null?void 0:Ne.total)!==void 0&&w.createElement("span",null,"\uFF08",Ne==null?void 0:Ne.total,"\uFF09"),(Ne==null?void 0:Ne.resetCount)!==void 0&&(Ne==null?void 0:Ne.total)!==void 0&&w.createElement(K.Z,{title:(Ne==null?void 0:Ne.tip)!=null?Ne==null?void 0:Ne.tip:""},w.createElement("span",{style:{color:"#9096A3"}},"\uFF08",w.createElement("span",{style:{color:"#000"}},Ne==null?void 0:Ne.resetCount),"/",w.createElement("span",null,Ne==null?void 0:Ne.total),"\uFF09"))))),w.createElement("div",{className:Ve.tabBar},Ge)),Ut={flex_box_center:"flex_box_center___uWCU1",flex_space_between:"flex_space_between___pKZJo",flex_box_vertical_center:"flex_box_vertical_center___NKr7Z",flex_box_center_end:"flex_box_center_end___ycaEu",flex_box_column:"flex_box_column___dDKjA",tabs:"tabs___cNVh5",tabsWrap:"tabsWrap___IJpOg",tab:"tab___fitSZ",active:"active___LBYdH"},bt=({dataSource:Ee=[],value:le,onChange:de,className:be,style:Qe={},tabBarExtraContent:Ge})=>w.createElement("div",{className:m()(Ut.tabs,be),style:Qe},w.createElement("div",{className:Ut.tabsWrap},Ee.map((Ne,mt)=>w.createElement("aside",{className:`${Ut.tab} ${le===Ne.id?Ut.active:""}`,onClick:()=>{de(Ne.id),Ne.link&&se.history.push(Ne.link)},key:mt},w.createElement("div",null,Ne.name),(Ne==null?void 0:Ne.resetCount)==null&&(Ne==null?void 0:Ne.total)!==void 0&&w.createElement("span",null,"\uFF08",Ne==null?void 0:Ne.total,"\uFF09"),(Ne==null?void 0:Ne.resetCount)!==void 0&&(Ne==null?void 0:Ne.total)!==void 0&&w.createElement(K.Z,{title:(Ne==null?void 0:Ne.tip)!=null?Ne==null?void 0:Ne.tip:""},w.createElement("span",{style:{color:"#9096A3"}},"\uFF08",w.createElement("span",{style:{color:"#000"}},Ne==null?void 0:Ne.resetCount),"/",w.createElement("span",null,Ne==null?void 0:Ne.total),"\uFF09"))))),w.createElement("div",{className:Ut.tabBar},Ge)),gt=({className:Ee,style:le={},children:de})=>w.createElement("div",{className:m()(Ee),style:le},de),xt={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"},Gt=B(85418),Vt=B(68508);const Xt=[{id:"updated_at",name:"\u6700\u65B0\u52A8\u6001"},{id:"created_at",name:"\u6700\u65B0\u521B\u5EFA"},{id:"name",name:"\u540D\u79F0\u6392\u5E8F"}];var Pr=({sortValue:Ee,dropValue:le,className:de,onSort:be,onDrop:Qe,dataSource:Ge=Xt})=>{var Ne;return w.createElement("div",{className:m()(xt.orderWrap,de)},w.createElement(Gt.Z,{dropdownRender:()=>w.createElement(Vt.default,null,Ge.map((mt,Ct)=>w.createElement(Vt.default.Item,{key:Ct,onClick:()=>Qe(mt.id)},mt.name)))},w.createElement("span",{className:xt.orderTextWrap},(Ne=Ge.find(mt=>le===mt.id))==null?void 0:Ne.name)),w.createElement("span",{className:xt.orderIconWrap},w.createElement("span",{className:xt.orderAsc},w.createElement("i",{className:Ee==="asc"?`iconfont icon-sanjiaoxing-up font12 ${xt.cursorPointer} ${xt.active}`:`iconfont icon-sanjiaoxing-up font12 ${xt.cursorPointer}`,onClick:()=>be(Ee==="asc"?"desc":"asc")})),w.createElement("span",{className:xt.orderDesc},w.createElement("i",{className:Ee==="desc"?`iconfont icon-sanjiaoxing-down font12 ${xt.cursorPointer} ${xt.active}`:`iconfont icon-sanjiaoxing-down font12 ${xt.cursorPointer}`,onClick:()=>be(Ee==="asc"?"desc":"asc")}))))},Wt={flex_box_center:"flex_box_center___JJ9sS",flex_space_between:"flex_space_between___t8Vfh",flex_box_vertical_center:"flex_box_vertical_center___NXwpW",flex_box_center_end:"flex_box_center_end___d7nF9",flex_box_column:"flex_box_column___RWkXa",orderWrap:"orderWrap___Z6UhI",orderIconWrap:"orderIconWrap___vT5et",orderAsc:"orderAsc___Xrpfj",orderDesc:"orderDesc___FgOA0",active:"active___ryj8i",cursorPointer:"cursorPointer___Gg3bB",orderTextWrap:"orderTextWrap___BAYWJ"};const mr=[{id:"updated_at",name:"\u6700\u65B0\u52A8\u6001"},{id:"created_at",name:"\u6700\u65B0\u521B\u5EFA"},{id:"name",name:"\u540D\u79F0\u6392\u5E8F"}];var wr=({sortValue:Ee,dropValue:le,className:de,onSort:be,onDrop:Qe,dataSource:Ge=mr})=>{var Ne;return w.createElement("div",{className:m()(Wt.orderWrap,de)},w.createElement(Gt.Z,{dropdownRender:()=>w.createElement(Vt.default,null,Ge.map((mt,Ct)=>w.createElement(Vt.default.Item,{key:Ct,onClick:()=>Qe(mt.id)},mt.name)))},w.createElement("span",{className:Wt.orderTextWrap},(Ne=Ge.find(mt=>le===mt.id))==null?void 0:Ne.name)),w.createElement("span",{className:Wt.orderIconWrap},w.createElement("span",{className:Wt.orderAsc},w.createElement("i",{className:Ee==="asc"?`iconfont icon-sanjiaoxing-up font12 ${Wt.cursorPointer} ${Wt.active}`:`iconfont icon-sanjiaoxing-up font12 ${Wt.cursorPointer}`,onClick:()=>be(Ee==="asc"?"desc":"asc")})),w.createElement("span",{className:Wt.orderDesc},w.createElement("i",{className:Ee==="desc"?`iconfont icon-sanjiaoxing-down font12 ${Wt.cursorPointer} ${Wt.active}`:`iconfont icon-sanjiaoxing-down font12 ${Wt.cursorPointer}`,onClick:()=>be(Ee==="asc"?"desc":"asc")}))))},Rr={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"},un=B(71577),zt=B(52810),Zr=Object.defineProperty,_n=Object.getOwnPropertySymbols,Mr=Object.prototype.hasOwnProperty,En=Object.prototype.propertyIsEnumerable,xn=(Ee,le,de)=>le in Ee?Zr(Ee,le,{enumerable:!0,configurable:!0,writable:!0,value:de}):Ee[le]=de,rn=(Ee,le)=>{for(var de in le||(le={}))Mr.call(le,de)&&xn(Ee,de,le[de]);if(_n)for(var de of _n(le))En.call(le,de)&&xn(Ee,de,le[de]);return Ee},Kr=(Ee,le)=>{var de={};for(var be in Ee)Mr.call(Ee,be)&&le.indexOf(be)<0&&(de[be]=Ee[be]);if(Ee!=null&&_n)for(var be of _n(Ee))le.indexOf(be)<0&&En.call(Ee,be)&&(de[be]=Ee[be]);return de},He=(Ee,le,de)=>new Promise((be,Qe)=>{var Ge=Ct=>{try{mt(de.next(Ct))}catch(Pt){Qe(Pt)}},Ne=Ct=>{try{mt(de.throw(Ct))}catch(Pt){Qe(Pt)}},mt=Ct=>Ct.done?be(Ct.value):Promise.resolve(Ct.value).then(Ge,Ne);mt((de=de.apply(Ee,le)).next())}),Gr=Ee=>{var le=Ee,{className:de,style:be,children:Qe,loading:Ge=!1,openLoading:Ne,onClick:mt=()=>{},size:Ct="middle",shape:Pt="round",theme:pt}=le,$e=Kr(le,["className","style","children","loading","openLoading","onClick","size","shape","theme"]);const[Lt,Ht]=(0,w.useState)(!1),It=(0,w.useMemo)(()=>{switch(pt){case zt.Fy.THEMEONE:return Rr.ThemeOne;case zt.Fy.DEFAULT:default:return Rr.btn}},[pt]);return w.createElement(un.ZP,rn({onClick:(0,E.throttle)(yt=>He(void 0,null,function*(){Ne&&Ht(!0);try{yield mt(yt)}catch(Dt){console.log("error",Dt)}Ne&&Ht(!1)}),2e3,{leading:!0,trailing:!1}),className:m()(It,Rr[`${Ct}-${Pt}`],de),style:be,size:Ct,shape:Pt,loading:Lt||Ge},$e),Qe)},cn={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"},wn=({className:Ee,style:le,children:de=null,onClick:be,title:Qe})=>w.createElement("div",{className:m()(cn.head,Ee),style:le},w.createElement("span",{className:"primary-hover",onClick:be},w.createElement("i",{className:"iconfont icon-fanhui2 font12"}),"\u8FD4\u56DE"),w.createElement("b",{title:Qe},Qe),w.createElement("div",{className:cn.node},de)),Un={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"},ci=({confirmShow:Ee=!0,confirmTitle:le,confirmClick:de,cancelShow:be=!0,cancelTitle:Qe,cancelClick:Ge,className:Ne,style:mt,confirmLoading:Ct=!1})=>w.createElement("div",{className:m()(Un.btns,Ne),style:mt},Ee&&w.createElement(un.ZP,{loading:Ct,onClick:de,type:"primary",className:Un.confirm},le),be&&w.createElement(un.ZP,{onClick:Ge,className:Un.cancel},Qe)),On={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"},jn=({className:Ee,style:le={},LeftContent:de,children:be,RightContent:Qe})=>w.createElement("div",{className:m()(On.fixedBottom,Ee),style:le},w.createElement("div",{className:On.wrap},w.createElement("div",{className:On.left},de),w.createElement("div",{className:On.center},be),w.createElement("div",{className:On.right},Qe))),Rn={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"},Zn=({className:Ee,style:le={},dataSource:de=[]})=>w.createElement("div",{className:m()(Rn.crumbs,Ee),style:le},de.map((be,Qe)=>Qe<de.length-1?w.createElement(w.Fragment,{key:Qe},be.path||be.onClick?w.createElement("span",{className:Rn.hover,onClick:be!=null&&be.onClick?be.onClick:()=>se.history.push(be.path)},be.name):w.createElement("span",null,be.name),w.createElement("span",null,"\xA0",">","\xA0")):w.createElement("span",{key:Qe,style:{color:"#5F6368"}},be.name))),Nn=B(55054),Mn=Object.defineProperty,Yn=Object.defineProperties,Kn=Object.getOwnPropertyDescriptors,ii=Object.getOwnPropertySymbols,Qn=Object.prototype.hasOwnProperty,Dn=Object.prototype.propertyIsEnumerable,gi=(Ee,le,de)=>le in Ee?Mn(Ee,le,{enumerable:!0,configurable:!0,writable:!0,value:de}):Ee[le]=de,Re=(Ee,le)=>{for(var de in le||(le={}))Qn.call(le,de)&&gi(Ee,de,le[de]);if(ii)for(var de of ii(le))Dn.call(le,de)&&gi(Ee,de,le[de]);return Ee},Fe=(Ee,le)=>Yn(Ee,Kn(le)),it=(Ee,le)=>{var de={};for(var be in Ee)Qn.call(Ee,be)&&le.indexOf(be)<0&&(de[be]=Ee[be]);if(Ee!=null&&ii)for(var be of ii(Ee))le.indexOf(be)<0&&Dn.call(Ee,be)&&(de[be]=Ee[be]);return de};const{Countdown:ct}=Nn.default;var St=Ee=>{var le=Ee,{onChange:de}=le,be=it(le,["onChange"]);const[Qe,Ge]=(0,w.useState)(null);(0,w.useEffect)(()=>{typeof Qe=="number"&&Qe>=0&&de(Qe)},[Qe]);const Ne=mt=>{const Ct=Math.floor(mt/1e3);Ge(Ct)};return w.createElement(ct,Fe(Re({},be),{onChange:Ne}))},Et={ClassRoomItem:"ClassRoomItem___F4pL0",TitleDom:"TitleDom___DB76T"},ar=({DataProps:Ee,className:le,style:de={}})=>{var be;return w.createElement("div",{className:m()("rounded-40px bg-white py-10px pb-30px px-30px flex gap-22px current h-full",Et.ClassRoomItem,le),style:de,onClick:()=>{(0,X.xg)(Ee==null?void 0:Ee.first_category_url)}},w.createElement("div",{className:"flex flex-col item-center"},w.createElement("img",{src:`${(be=V.Z)==null?void 0:be.IMG_SERVER}/images/${Ee==null?void 0:Ee.avatar_url}`,className:"rounded-full",style:{height:76,width:76,marginTop:"-24px"}}),(Ee==null?void 0:Ee.subject_identifier)&&w.createElement("div",{className:"mt-40px"},w.createElement("div",{className:"rounded-full",style:{background:"rgba(33,202,159,0.1)",border:"1px solid #6BFF98",color:"#0EA17B"}},"\u5F00\u653E\u8BFE\u7A0B"),w.createElement("div",{className:"rounded-full",style:{background:"rgba(255,160,0,0.1)",border:"1px solid #FFC055",color:"#C97319"}},"\u5F00\u653E\u8BFE\u5802"))),w.createElement("div",{className:"flex-1 flex flex-col justify-between gap-10px"},w.createElement("div",{className:"multi_ellipsis2",style:{height:48}},!!(Ee!=null&&Ee.is_public)&&w.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"),w.createElement("span",{className:m()("text-16px font-medium",Et.TitleDom)},Ee==null?void 0:Ee.name)),w.createElement("div",{className:"c-grey-333 font-medium"},Ee==null?void 0:Ee.creator),w.createElement("div",{className:"c-grey-333"},"\u6210\u5458\uFF1A",Ee==null?void 0:Ee.course_members_count),w.createElement("div",{className:"c-grey-333 flex item-center justify-between"},w.createElement("div",null,"\u4F5C\u4E1A\uFF1A",Ee==null?void 0:Ee.tasks_count),Ee!=null&&Ee.is_end?w.createElement("div",{style:{color:"#5F6A95"}},"\u5DF2\u7ED3\u675F"):w.createElement("div",{style:{color:"#37AD83"}},"\u8FDB\u884C\u4E2D"))))},tr=Object.defineProperty,br=Object.getOwnPropertySymbols,yr=Object.prototype.hasOwnProperty,Ur=Object.prototype.propertyIsEnumerable,Fr=(Ee,le,de)=>le in Ee?tr(Ee,le,{enumerable:!0,configurable:!0,writable:!0,value:de}):Ee[le]=de,gr=(Ee,le)=>{for(var de in le||(le={}))yr.call(le,de)&&Fr(Ee,de,le[de]);if(br)for(var de of br(le))Ur.call(le,de)&&Fr(Ee,de,le[de]);return Ee},Hr=({DataProps:Ee=[],selectValue:le,onChange:de,className:be,style:Qe={},extra:Ge,classNameItem:Ne,styleItem:mt={},barHidden:Ct})=>{const[Pt,pt]=(0,w.useState)();return(0,w.useEffect)(()=>{pt(Array.isArray(le)?le:[le])},[le]),w.createElement("div",{className:m()("flex px-20px py-10px gap-40px",be),style:gr({borderBottom:"1px solid #D3F0FF"},Qe)},Ee==null?void 0:Ee.map($e=>w.createElement("div",{key:$e==null?void 0:$e.id,className:m()("flex item-center justify-center current c-grey-333 text-16 relative",Ne,$e==null?void 0:$e.className),style:gr(gr({color:Pt!=null&&Pt.includes($e==null?void 0:$e.id)?"#1890FF":"",minWidth:88},mt),($e==null?void 0:$e.style)||{}),onClick:Lt=>{de==null||de({domEvent:Lt,item:$e}),$e!=null&&$e.link&&se.history.push($e==null?void 0:$e.link)}},$e==null?void 0:$e.name,!Ct&&(Pt==null?void 0:Pt.includes($e==null?void 0:$e.id))&&w.createElement("div",{className:"absolute w-full h-2px",style:{background:"#1890FF",bottom:"-10px",left:0}}))),w.createElement("div",{className:"ml-auto"},Ge))},Lr=Object.defineProperty,Sr=Object.defineProperties,Dr=Object.getOwnPropertyDescriptors,ne=Object.getOwnPropertySymbols,ae=Object.prototype.hasOwnProperty,Be=Object.prototype.propertyIsEnumerable,Me=(Ee,le,de)=>le in Ee?Lr(Ee,le,{enumerable:!0,configurable:!0,writable:!0,value:de}):Ee[le]=de,Ye=(Ee,le)=>{for(var de in le||(le={}))ae.call(le,de)&&Me(Ee,de,le[de]);if(ne)for(var de of ne(le))Be.call(le,de)&&Me(Ee,de,le[de]);return Ee},at=(Ee,le)=>Sr(Ee,Dr(le)),Mt=({value:Ee,onChange:le,onInputChange:de,className:be,style:Qe={},InputProps:Ge})=>{const[Ne,mt]=(0,w.useState)(Ee);return w.createElement("div",{className:m()("flex item-center rounded-full px-10px py-2px",be),style:Ye({background:"linear-gradient( #E4F6FF 0%, #EAF3FF 100%)",border:"1px solid #fff",boxShadow:"inset 0px 1px 3px 0px rgba(133,188,255,0.5)"},Qe)},w.createElement(C.default,at(Ye({bordered:!1},Ge),{onChange:Ct=>{mt(Ct.target.value),de==null||de(encodeURIComponent(Ct.target.value))},onPressEnter:Ct=>{le==null||le({domEvent:Ct,item:{value:Ne}})}})),w.createElement("img",{className:"h-22px current",src:B(25365),height:22,onClick:Ct=>{le==null||le({domEvent:Ct,item:{value:Ne}})}}))}},97769:function(ke,_e,B){"use strict";B.r(_e),B.d(_e,{default:function(){return Ot}});var w=B(28706),H=B(83062),M=B(66309),g=B(38703),D=B(96074),y=B(57953),v=B(85673),m=B(11713),E=B(36569),h=B(14446),a=B(67294),d=B(35973),_=B(62309),r=B(9343),n=B(93671),l=B(62850),o=Object.defineProperty,s=Object.defineProperties,u=Object.getOwnPropertyDescriptors,f=Object.getOwnPropertySymbols,e=Object.prototype.hasOwnProperty,t=Object.prototype.propertyIsEnumerable,i=(Ke,Xe,Je)=>Xe in Ke?o(Ke,Xe,{enumerable:!0,configurable:!0,writable:!0,value:Je}):Ke[Xe]=Je,c=(Ke,Xe)=>{for(var Je in Xe||(Xe={}))e.call(Xe,Je)&&i(Ke,Je,Xe[Je]);if(f)for(var Je of f(Xe))t.call(Xe,Je)&&i(Ke,Je,Xe[Je]);return Ke},p=(Ke,Xe)=>s(Ke,u(Xe)),A=(Ke,Xe,Je)=>new Promise((Nt,ut)=>{var Kt=we=>{try{ge(Je.next(we))}catch(Ue){ut(Ue)}},_t=we=>{try{ge(Je.throw(we))}catch(Ue){ut(Ue)}},ge=we=>we.done?Nt(we.value):Promise.resolve(we.value).then(Kt,_t);ge((Je=Je.apply(Ke,Xe)).next())});const x=[{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"}],C=(Ke,Xe)=>{const Je={};let Nt=null;return Ke.forEach(ut=>{Je[ut.properties.uuid]=p(c({},ut),{id:ut.properties.uuid,children:[]})}),Xe.forEach(ut=>{const Kt=Je[ut.startNodeUuid],_t=Je[ut.endNodeUuid];Kt&&(Kt.id=Kt.properties.uuid),Kt&&_t&&Kt.children.push(_t)}),Ke.forEach(ut=>{!Xe.some(_t=>_t.endNodeUuid===ut.properties.uuid)&&(Nt=Je[ut.properties.uuid])}),Nt},S=(Ke,Xe)=>{const Je=Ke.getParentData(Xe.id,"tree");return Je?Xe.style.x>Je.style.x?"right":"left":"center"};var b=({loading:Ke,nodes:Xe=[],relationships:Je=[]})=>{const Nt=(0,a.useRef)(null),ut=(0,a.useRef)(),Kt=(0,a.useRef)(0);(0,a.useEffect)(()=>{(Xe==null?void 0:Xe.length)>0&&_t()},[]);const _t=()=>A(void 0,null,function*(){var we,Ue,De;const nt=C(Xe==null?void 0:Xe.map((Tt,Ze)=>{var O,W,z,Z,Y;return p(c({},Tt),{key:Ze,title:(O=Tt==null?void 0:Tt.properties)==null?void 0:O.name,newcolor:parseInt((W=Tt==null?void 0:Tt.properties)==null?void 0:W.color)===1?"#CC7CF5":((z=x==null?void 0:x.find(se=>{var xe;return(se==null?void 0:se.name)===((xe=Tt==null?void 0:Tt.properties)==null?void 0:xe.nodeType)}))==null?void 0:z.color)||"#2D947C",colornodeType:parseInt((Z=Tt==null?void 0:Tt.properties)==null?void 0:Z.color)===1?"\u6839\u8282\u70B9":((Y=x==null?void 0:x.find(se=>{var xe;return(se==null?void 0:se.name)===((xe=Tt==null?void 0:Tt.properties)==null?void 0:xe.nodeType)}))==null?void 0:Y.name)||"\u5176\u4ED6"})}),Je==null?void 0:Je.filter(Tt=>Tt.type==="\u5305\u542B"));ut!=null&&ut.current&&((we=ut==null?void 0:ut.current)==null||we.destroy());const qe=(0,l.RN)(nt),rt=(Ue=qe.nodes)==null?void 0:Ue.filter((Tt,Ze,O)=>Ze===O.findIndex(W=>W.id===Tt.id)),ft=(De=qe.edges)==null?void 0:De.filter((Tt,Ze,O)=>Ze===O.findIndex(W=>W.source===Tt.source&&W.target===Tt.target));ge({nodes:rt,edges:ft})}),ge=we=>{var Ue,De;ut.current=null,ut.current=new l.kJ({container:Nt.current,autoResize:!0,autoFit:{type:((Ue=we==null?void 0:we.nodes)==null?void 0:Ue.length)>20?"view":"center",options:{direction:"both",when:"always"}},animation:!(((De=we==null?void 0:we.nodes)==null?void 0:De.length)>300),data:we,node:{style:{labelText:nt=>nt.title,labelFill:"#333333",fill:nt=>nt.newcolor,labelBackground:!1,labelPlacement:function(nt){const qe=S(this,nt);return qe==="center"?"right":qe},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:()=>80,getSide:nt=>(Kt.current++,Kt.current%2==0?"left":"right")},behaviors:["zoom-canvas","collapse-expand","drag-canvas"]}),ut.current.render()};return a.createElement("div",{style:{height:"100%"}},a.createElement(y.Z,{spinning:Ke,className:"mt60 w100",tip:"\u52A0\u8F7D\u4E2D..."}),a.createElement("div",{style:{height:"100%"},ref:Nt}))},L=B(50976),R=B(52262),N=({abilityGoalItem:Ke=[]})=>{var Xe,Je;const Nt=(Xe=(0,R.eY)())==null?void 0:Xe.username,ut=typeof((Je=Ke==null?void 0:Ke[0])==null?void 0:Je.user_grasp_rate)=="number",Kt=Ke.map(Ue=>Ue.grasp_rate),_t=Ke.map(Ue=>Ue.user_grasp_rate),ge=()=>{const Ue=Ke.map(qe=>qe.name),De=[{type:"bar",name:"\u7CFB\u7EDF\u5E73\u5747",data:Kt,barMaxWidth:"20%",barGap:"50%",itemStyle:{color:"#028DFD"},label:{show:!0,position:"top",formatter:"{c}%",color:"#666"}}];ut&&De.unshift({type:"bar",name:Nt,data:_t,barMaxWidth:"20%",itemStyle:{color:"#CDCB56"},label:{show:!0,position:"top",formatter:"{c}%",color:"#666"}});const nt={tooltip:{appendToBody:!0,trigger:"item",formatter:qe=>{const{value:rt,name:ft,seriesName:Tt}=qe;return`<div>
|
|
${ft}<br/>
|
|
${Tt}\uFF1A${rt}%
|
|
</div>`}},grid:{left:"0%",right:"10%",bottom:"3%",containLabel:!0},xAxis:{data:Ue,axisLabel:{color:"#666",formatter:function(qe){return qe.length>4?qe.substring(0,4)+"...":qe}},axisTick:{show:!1},axisLine:{show:!1}},yAxis:{show:!1,type:"value",axisLine:{show:!1},axisTick:{show:!1},axisLabel:{color:"#666",formatter:"{value}%"},splitLine:{lineStyle:{color:"rgba(164,200,252,0.1)"}}},series:De};return a.createElement(L.Z,{option:nt,className:"w-full"})},we=()=>{const Ue=Math.max(...Kt,...ut?_t:[])*1.2||10,De=[{value:Kt,name:"\u7CFB\u7EDF\u5E73\u5747",lineStyle:{color:"rgba(2, 141, 253, 1)",window:3},areaStyle:{color:"rgba(2, 141, 253, 0.35)"},itemStyle:{color:"rgba(2, 141, 253, 1)",borderWidth:2}}];ut&&De.unshift({value:_t,name:Nt,lineStyle:{color:"rgba(205, 203, 86, 1)",window:3},areaStyle:{color:"rgba(205, 203, 86, 0.35)"},itemStyle:{color:"rgba(205, 203, 86, 1)",borderWidth:2}});const nt={tooltip:{appendToBody:!0,trigger:"item",position:"right"},radar:{indicator:Ke.map(qe=>({name:qe.name,max:Ue,min:0})),splitArea:{areaStyle:{color:["#fff","#f3f4f9"]}},name:{color:"#333",fontSize:12,formatter:function(qe){return qe.length>3?qe.slice(0,3)+"...":qe}},nameGap:5,axisLine:{lineStyle:{color:"#D9D9D9"}},splitLine:{lineStyle:{color:"#D9D9D9"}},center:["50%","50%"],radius:"50%"},series:[{type:"radar",symbolSize:2,tooltip:{trigger:"item",formatter:function(qe){console.log(qe);let rt=qe.name+"<br/>";return qe.value.forEach((ft,Tt)=>{rt+=Ke[Tt].name+"\uFF1A"+ft+"%<br/>"}),rt}},data:De}]};return a.createElement(L.Z,{option:nt,className:"w-full"})};return a.createElement("div",{className:"flex flex-col item-center mt-20px-rem"},a.createElement("b",{className:"text-16px-rem"}," ",ut?"\u80FD\u529B\u56FE\u8C31\u4E2A\u4EBA\u638C\u63E1\u60C5\u51B5":"\u80FD\u529B\u56FE\u8C31\u638C\u63E1\u7387\u60C5\u51B5"),ut&&a.createElement("div",{className:"flex item-center gap-20px-rem text-14px-rem mt-10px-rem"},a.createElement("div",{className:"flex item-center"},a.createElement("b",{className:"mr-10px-rem flex",style:{width:"16rem",height:"8rem",background:"#CDCB56"}}),a.createElement(H.Z,{title:Nt},a.createElement("span",null,(0,w.Pq)(Nt,4)))),a.createElement("div",{className:"flex item-center"},a.createElement("b",{className:"mr-10px-rem flex",style:{width:"16rem",height:"8rem",background:"#028DFD"}}),"\u7CFB\u7EDF\u5E73\u5747")),Ke.length<3&&ge(),Ke.length>=3&&we())},I=B(80150),F=B(33170),U=B(11320),K=B(91613),G={NextAbility:"NextAbility___wLOPq",AnchorDomStyle:"AnchorDomStyle___CG1xj",AnchorDom:"AnchorDom___jjRxi"},V="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",X="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=",ee="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=",oe="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=",ue="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAYCAYAAADpnJ2CAAAAAXNSR0IArs4c6QAAAu5JREFUSEvlll1IU2EYx//PcW6JSuRFBRVB1I2Qtk3dh1JSXiVRF1bQXaFUBJ5tFFGCLLywTbTtUAwREoIKvIgI+iAqL3Jf0jYUpKsIiogkAsv8aOs8dWyT09zcZnrVe/m+/+f/4/2/7/ucQyhg1I+4ymeLdK0AtQHYQkT3E0LCPVbnmMjXhvIR1o72bvuZ0LSDuA2g9Wk1TIwHMsuuWL09mMtvWeAev6dWEMgBoAWAJpcZGC8Bdkct4kMQcSb9UiA7BUOo4gjAdgANOSEZBMQ0IUN2C9qSu5Ga03G1ZBFYNdZTWjSjPUUMGwg7VgJaWkPvwehLlM4PjFdf+K6sU+OwU/NVV2EH8SUAG1YHtMTlM5jcpNV5yBjwnmDC7TUCpds6qXL4RlmJLjHItHAx1nDw47m54mOLZ2gMS80sczeA3atIjYPxFIRmInRGzGLX37eUmYxBbwsTdQCo/gfwPAM3hQRflYuFMmKeyAxUEWpC3oMyQ7lIhTyNWQYPyCy7x6yOD4qdPiRV5gVMsfcEvFaBcB7AYQBCll3PMMinJbknbLZ9UmvyBur917fHrOfepTqGIdC3E6QRAT4JoDRpOkuALy5rXeP1ZyfBTPqwdJyYy6MW24CiMYQkM5iDOSM1Br0+APuZIJUk5m75Gy5+UwwahwfXTWmn6gTCJi3k50Gr48tCdEGpiQAXwAYmdMfM4uUqv2+jRvgxAmAXAW/lOJmy9lIFyMCZ5E6mwbhDJPdHLPaoOjJj8JqBIbgANKXmU0BjyNPATC8AFP9ulVMyUW2+QDXjNUAjAE8riQHYl36uKaAybwx6WxnoFwiHXpnFRysB5nwtauAfqMcUsdjCC700W3VapDkhakE6UL32PwMDUicTXykoy6SYQGLE0i5lqs0a6dGhoaI3Wz/2giAWAGUm7oqZRGf+vxhp7vqA9wAJ6ARj73JgBkYB6ohZ2p8tp8vrr00xSPZU5ZtpAmMzEbQMmgQQAfO9qFV8kk8SvwBkMTigdig/4QAAAABJRU5ErkJggg==",Ae="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAAAXNSR0IArs4c6QAABBRJREFUSEu1ln1MVXUYx7/fc87FQbRaL7PwZZZRDQTOhRxj1mLZqFz9Q8tVWyb34tVirbmsVpvOWfOPXNqGJl7kMvSfbNnLHyWbWfSuw+s95zIYTd0QFGvZ1gvG4J7ze+pc4h0uBLff38/z/Tx7fs8bMctnbuzI1RJOuRCLoSQHhAOyi1Rd4vraYo35HWOlSkLnr3PdvvUUVAJSBGAQwheZilcS6s1S7pUXIGqdCPJS2RJoJbV6QcanwOAmgWyGSPZYH4I90wLNoP0sRXaKIGeWSZjKrEWjvp8Gom7CPQfy50nAkpD4XCe+DyIb5gECyFO3XpN1/7Ha3IHiQNtaJe4RAC3jgB5MOfHPROTBecH+dSb4xS3ZWWsuX716AoJV0FgzDmgGrAMQhNIBG9EgvkvCyD8zaSwbAfqD1jOicCitsDFipPZGLFK4LQks29yT2f/br2cBLPp/gBTd51sUDeddTgKLA/bLSuStNMMugTQgsjCpq3G91VDUlAT6q+y4QArSBSTh6DTKHbhlULLL0yV4MtZYVMaVgfjtCVHn0wVLihNbYhHz7ZJQ+1I3kbgwrG2Qd9MftAKi0JA2IPGRFTErt28X7eNu+xgEFcPaGvVK+gPWVhHsSAuQ/FE3skuj4eW/+6vsnQJ5bdxoI16iP2DvF5FN8waSF3XDWBUN53cXV1uVysXRiZoE9tIMWHshqJkPkMQVzdDui4YLO0tCdrHroAUi104CknU0g/aW4UqaE5Tsg64/YNWvaL0nYN/lQr4Rwc1TaZHY5qX0cRH5YK4wQ9MeO32woMWrSJVwvhXIkum0qCFILypHpPO/Ar00AvojsUjB6dLqtoUDSn0NkTtT6fioLU82vhmwT0KkdLZQb5FqPlYM/Vn7Utdxjs8EI9gWaywqHAIG7WooqZ8NkGCnkalVtL5b0JP8M8HxVGkc7UG+ciZStCsJLK22Fw+40jMTkOCHGdlZVadqc//wqlE50jxdgUzQupR5/Y25P+xZ0j80SwPxHSJq67Sf7R1MwKuxiLnbs0n2mWLTxJslRbGsizWYh5NjryzYfkO/OF1e35A8ISKrJ0YHQ19r1Rd8742rTy7E35w4QVJmhghbEXPjsI3Xh89DyT6SX93xcOHqc83xwyLy1IgB8QuA3QsyFrw3MDBYJ5CHZkr9qC8/14zCNdEwE6PAKuvLf46bck3Hk2cOmkeeeF/0s81xb1LcO1vhKe3Iet0orBkLS6bUDNg/eUuS8OWTaoUS9zkvgLnCSPQK+bq3bKecNv4qu3tSWZN9BPcAGXWUwUcFEhJISaogSHSA2iFNv6k2Gs75a9oCMoPxpynqHQAZAG0Ijmq+7CZvxYx1WrmhPd91Vb5QboPIMggMaOyl4KLyGS3WgTzvJprx/Q3wmMIl7X6GaAAAAABJRU5ErkJggg==",fe="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAAAXNSR0IArs4c6QAAAstJREFUSEu9lk1oE1EQx2de06xNxaNSxS+wYltMNi0iBXsSBE/tQawnIZugXtpKUS9VCGgvFgKxF9EkRfHQFA/tSRC9qKAFm2SDKdoKSgVrPUqamK8deSFbt+km2bTb7imZN/v/vbdvvhA0j9MlTzKGk3NB+7TWrv3dfe3Lgb/Z9EsiIMRd56KhEz8r+erZUTU63fJZUugVIH5raba1vRhvzei9IEqxMBBc5GsIGI5OOC7VDSzBAgBwpCiE+JxZGgfnHrUva8U6PXKPUqA3WlsDQs9cSHxnFIr8MxJQ/4YXEJOMkScSEMN8zeslNr0U/whETq0vAkZ6D9tPeb2oGIFilzveVyDyAdHRMqEZQbBe//Cw7Tu3i27ZAwo91r0XRE805AgaAnKn8wOLwq/V1DMiusD/M2zoj4ROTqkCpwcW92SSqUUA2qsrirgiNNuOz463/qkFXQuarivzLYV8bgEJXkcnHH3r7s4ljylAN6qKIY7FQo5bhoHcsdMT67dahFn1MxZt7sQxRcknAMhaXQyzjFk6IsGOr9X81k6o58RhRPmnRNRda+el6H6PaLlcDaoLLN7Zauo2EAzVPln5VjALCH6h2XZP707XAXnozyzFXQQwCkT7jJyqog/iCgKM9B6yT2hT5n/QSLEzCqGfgDq3BCp7mecpQxpSiwM6pc/7gTI+3eQ3kczLIKAwjKIr9gkAOkzUriaVQKcUSxBB+44BebtJZ9M+tQNsGxhhqsnaNLwWNMVOoIC/vDhveQOIUcZgKBJwvC3mqlaw2BF+xCVQYLRi3TS8A/wNDEb6DtpDummh1eGJn0um7igAg5tJfAbwoHG37W7NxC/fvHh1vhVzuSfbXtrWdYqdLN4qWJTk+0B00/T2VEmwVMwXKtbXzTTgWsHnlGQ3EfFBa8OD9Y4YtWB83bQhyghM9TFlTKwHyH1NGYTrgW511P8HVz1GsEaaZFwAAAAASUVORK5CYII=",he="data:image/png;base64,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",ve="data:image/png;base64,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",me="data:image/png;base64,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",Te=Object.defineProperty,Ce=Object.defineProperties,ye=Object.getOwnPropertyDescriptors,q=Object.getOwnPropertySymbols,Q=Object.prototype.hasOwnProperty,$=Object.prototype.propertyIsEnumerable,j=(Ke,Xe,Je)=>Xe in Ke?Te(Ke,Xe,{enumerable:!0,configurable:!0,writable:!0,value:Je}):Ke[Xe]=Je,re=(Ke,Xe)=>{for(var Je in Xe||(Xe={}))Q.call(Xe,Je)&&j(Ke,Je,Xe[Je]);if(q)for(var Je of q(Xe))$.call(Xe,Je)&&j(Ke,Je,Xe[Je]);return Ke},k=(Ke,Xe)=>Ce(Ke,ye(Xe));const te={\u5B9E\u8BAD:V,\u8BD5\u5377:X,\u8BFE\u4EF6:ee,\u89C6\u9891:oe,\u4E3B\u80FD\u529B:Ae,\u5B50\u80FD\u529B:fe,\u77E5\u8BC6\u70B9:he,\u8D44\u6E90:ve,\u603B\u6570:ue,\u6559\u6750:me};var J=({type:Ke,ImgProps:Xe})=>a.createElement("img",k(re({src:(te==null?void 0:te[Ke])||(te==null?void 0:te.\u8BFE\u4EF6)},Xe),{width:"16rem",style:re({width:"16rem"},(Xe==null?void 0:Xe.style)||{})})),ce=B(6104),Se=B(15835),Le=Object.defineProperty,ze=Object.defineProperties,We=Object.getOwnPropertyDescriptors,tt=Object.getOwnPropertySymbols,je=Object.prototype.hasOwnProperty,pe=Object.prototype.propertyIsEnumerable,Oe=(Ke,Xe,Je)=>Xe in Ke?Le(Ke,Xe,{enumerable:!0,configurable:!0,writable:!0,value:Je}):Ke[Xe]=Je,Ie=(Ke,Xe)=>{for(var Je in Xe||(Xe={}))je.call(Xe,Je)&&Oe(Ke,Je,Xe[Je]);if(tt)for(var Je of tt(Xe))pe.call(Xe,Je)&&Oe(Ke,Je,Xe[Je]);return Ke},Pe=(Ke,Xe)=>ze(Ke,We(Xe)),ot=(Ke,Xe,Je)=>new Promise((Nt,ut)=>{var Kt=we=>{try{ge(Je.next(we))}catch(Ue){ut(Ue)}},_t=we=>{try{ge(Je.throw(we))}catch(Ue){ut(Ue)}},ge=we=>we.done?Nt(we.value):Promise.resolve(we.value).then(Kt,_t);ge((Je=Je.apply(Ke,Xe)).next())});const ht=({children:Ke,cout:Xe=1})=>{const Je=(0,a.useRef)(null),[Nt,ut]=(0,a.useState)(0),[Kt,_t]=(0,a.useState)(!1);return(0,a.useEffect)(()=>{Je.current&&setTimeout(()=>{const ge=(0,w.ZR)(Je.current,"rem",1);ut(ge)},500)},[Je.current]),a.createElement("div",{className:"relative flex item-end "},a.createElement("div",{style:{height:Kt?"auto":`${Xe*23.25}rem`,overflow:"hidden"}},a.createElement("div",{ref:Je,style:{fontSize:"14rem"}},Ke)),Nt>=Xe*23.25&&a.createElement("div",{className:"current c-blue",style:{whiteSpace:"nowrap"},onClick:()=>{_t(!Kt)}},Kt?"\u6536\u8D77":"\u5C55\u793A"))},dt=({DataProps:Ke,pathsDetail:Xe,getUrl:Je})=>{var Nt,ut,Kt,_t;const{detail:ge}=Xe,[we,Ue]=(0,a.useState)(!1);return a.createElement("div",{id:`${Ke==null?void 0:Ke.id}`,className:"bg-white",style:{borderRadius:"4rem",padding:"15rem 30rem 30rem"}},a.createElement("div",{style:{color:"#3061D0"}},a.createElement(J,{type:"\u5B50\u80FD\u529B",ImgProps:{style:{marginRight:"5rem"}}}),"\u5B50\u80FD\u529B"),a.createElement("div",{className:"c-grey-333 flex item-center",style:{fontSize:"14rem",margin:"20rem 0 10rem 0",gap:"10rem"}},a.createElement(H.Z,{title:Ke==null?void 0:Ke.name},a.createElement("div",{className:"multi_ellipsis1 minW-0"},Ke==null?void 0:Ke.name)),a.createElement("div",{className:"flex item-center",style:{gap:"5rem"}},(Nt=Ke==null?void 0:Ke.ability_tags)==null?void 0:Nt.map(De=>a.createElement(M.default,{color:"orange",style:{fontSize:"12rem"}},De)))),(Ke==null?void 0:Ke.description)&&a.createElement("div",{style:{padding:"12rem",background:"#F6F7F9"}},a.createElement(ht,null,Ke==null?void 0:Ke.description)),a.createElement("div",{className:"flex item-center justify-center w-full",style:{margin:"20rem 0",padding:"12rem",background:"linear-gradient( 180deg, #ECF3FF 0%, rgba(255,255,255,0) 100%)"}},"\u8986\u76D6 ",a.createElement(J,{type:"\u77E5\u8BC6\u70B9",ImgProps:{style:{margin:"0 5rem"}}})," ",Ke==null?void 0:Ke.knowledge_count,"\u4E2A\u77E5\u8BC6\u70B9",a.createElement("span",{style:{marginLeft:"40rem"}},a.createElement(J,{type:"\u8D44\u6E90",ImgProps:{style:{marginRight:"5rem"}}}),Ke==null?void 0:Ke.resource_count,"\u4E2A\u8D44\u6E90\u6570")),a.createElement("div",{style:{marginBottom:"10rem"}},a.createElement(J,{type:"\u77E5\u8BC6\u70B9",ImgProps:{style:{marginRight:"5rem"}}}),"\u8986\u76D6\u77E5\u8BC6\u70B9",Ke==null?void 0:Ke.knowledge_count,"\u4E2A"),a.createElement("div",{style:{height:"320rem",background:"#F6F7F9"}},a.createElement(b,{loading:!1,nodes:Ke==null?void 0:Ke.nodes,relationships:Ke==null?void 0:Ke.relationships})),a.createElement("div",{style:{margin:"30rem 0 10rem"}},a.createElement(J,{type:"\u8D44\u6E90",ImgProps:{style:{marginRight:"5rem"}}}),"\u8986\u76D6\u8D44\u6E90\u6570",Ke==null?void 0:Ke.resource_count,"\u4E2A"),a.createElement("div",{className:"flex-wrap",style:{gap:"10rem",display:"grid",gridTemplateColumns:"1fr 1fr"}},(_t=((ut=Ke==null?void 0:Ke.resource_knowledge_graphs)==null?void 0:ut.length)>4&&!we?(Kt=Ke==null?void 0:Ke.resource_knowledge_graphs)==null?void 0:Kt.slice(0,4):Ke==null?void 0:Ke.resource_knowledge_graphs)==null?void 0:_t.map(De=>a.createElement("div",{key:De==null?void 0:De.id,className:"flex relative current",style:{gap:"10rem",padding:"25rem",background:"#f6f6f6",borderRadius:"10rem"},onClick:()=>ot(void 0,null,function*(){yield Je==null?void 0:Je(De)})},!(ge!=null&&ge.can_managed)&&a.createElement("div",{className:"absolute c-white",style:{top:0,right:0,padding:"2rem 10rem",borderRadius:"0 10rem 0 10rem",color:(De==null?void 0:De.complete_rate)!=100&&"#7C3100",background:(De==null?void 0:De.complete_rate)!=100?"#FFC86B":"#37AD83"}},(De==null?void 0:De.complete_rate)==100?"\u5DF2\u5B8C\u6210":"\u672A\u5B8C\u6210"),a.createElement(g.Z,{type:"circle",percent:De==null?void 0:De.complete_rate,size:60,status:"success",format:nt=>`${nt}%`,strokeWidth:10}),a.createElement(J,{type:De==null?void 0:De.node_type,ImgProps:{style:{width:"16rem",height:"16rem",marginTop:"3rem"}}}),a.createElement("div",{className:"flex-1 minW-0"},a.createElement(H.Z,{title:De==null?void 0:De.name,placement:"topLeft"},a.createElement("div",{className:"multi_ellipsis1 c-grey-333 blod",style:{fontSize:"16rem"}},De==null?void 0:De.name)),a.createElement("div",{className:"c-grey-333",style:{marginTop:"10rem",fontSize:"14rem"}},"\u77E5\u8BC6\u70B9\uFF1A",(De==null?void 0:De.knowledge_text)||"--"),(ge==null?void 0:ge.can_managed)&&a.createElement("div",{className:"flex flex-wrap item-center v-grey-666",style:{marginTop:"20rem",fontSize:"12rem",gap:"10rem"}},a.createElement("div",null,"\u5B66\u4E60\u4EBA\u6570\uFF1A",De==null?void 0:De.study_count,"\u4EBA"),a.createElement("div",null,"\u638C\u63E1\u4EBA\u6570\uFF1A",De==null?void 0:De.complete_count,"\u4EBA"),a.createElement("div",null,"\u638C\u63E1\u7387\uFF1A",De==null?void 0:De.complete_rate,"%")))))),(Ke==null?void 0:Ke.resource_knowledge_graphs.length)>4&&a.createElement("div",{className:"flex item-center justify-center",style:{padding:"0 220rem"},onClick:()=>{Ue(!we)}},a.createElement(D.Z,{style:{borderColor:"#3061D0",marginBottom:"0rem",cursor:"pointer"},dashed:!0},a.createElement("span",{style:{color:"#3061D0"}},we?"\u70B9\u51FB\u6536\u8D77":"\u70B9\u51FB\u5C55\u5F00\u66F4\u591A"))))},At=({pathsDetail:Ke,dispatch:Xe,user:Je})=>{var Nt,ut,Kt,_t,ge,we,Ue,De,nt,qe,rt,ft,Tt,Ze,O,W,z,Z,Y,se,xe,lt,Ve,Rt,kt,Ut,st,bt,wt,gt,xt,Gt,Vt;const{detail:Xt}=Ke,hr=(0,d.useParams)(),[Pr]=(0,d.useSearchParams)(),[Wt,mr]=(0,a.useState)({}),[_r,wr]=(0,a.useState)({id:null,open:!1,resourceUrl:""}),[,Rr,un,zt]=(0,r.U)(n.Ju,{subject_id:hr.pathId,id:hr==null?void 0:hr.abilityId}),[Zr,_n]=(0,a.useState)([{name:"\u638C\u63E1\u738759%\u4EE5\u4E0B",value:0,itemStyle:{color:"rgb(6,110,247)"}},{name:"\u638C\u63E1\u738760%\uFF5E79%",value:0,itemStyle:{color:"rgb(6,234,230)"}},{name:"\u638C\u63E1\u738780%\uFF5E100%",value:0,itemStyle:{color:"rgb(223,209,38)"}}]),Mr=new URLSearchParams(window.location.search),En=()=>ot(void 0,null,function*(){const He=yield un({subject_id:hr==null?void 0:hr.pathId,id:hr==null?void 0:hr.abilityId})}),xn=He=>Xe({type:"userDetail/logWatchHistory",payload:Ie({},He)});function rn(He){return ot(this,null,function*(){var Ir,Gr,cn;let Xr=yield(0,F.ZP)("/api/knowledge/v2/get_container_type.json",{method:"get",params:{url:He==null?void 0:He.resourceUrl}});if(localStorage.setItem("container_type_tupu",Xr==null?void 0:Xr.container_type),(Xr==null?void 0:Xr.status)===0){if((He==null?void 0:He.node_type)=="\u8BD5\u5377"){const wn=yield(0,Se.Mb)({categoryId:Xr==null?void 0:Xr.examination_bank_id});wn!=null&&wn.exercise_id&&(0,w.xg)(`/classrooms/coursesId/exercise/${wn.exercise_id}/${(Ir=Je.userInfo)==null?void 0:Ir.login}/initate_answer`);return}(Xr==null?void 0:Xr.container_type)==="video"?wr({id:Xr==null?void 0:Xr.id,open:!0,resourceUrl:He==null?void 0:He.resourceUrl}):(Xr==null?void 0:Xr.container_type)==="att"?mr({url:U.Z.API_SERVER+((Gr=Xr==null?void 0:Xr.attachment)==null?void 0:Gr.url),file_type:(cn=Xr==null?void 0:Xr.attachment)==null?void 0:cn.file_type}):window.open(He==null?void 0:He.resourceUrl)}})}const Kr=He=>ot(void 0,null,function*(){(He==null?void 0:He.resourceOrigin)===3?(0,w.xg)(He==null?void 0:He.resourceUrl):rn(He),!(Xt!=null&&Xt.can_managed)&&(yield(0,F.ZP)("/api/subject_knowledge/create_study.json",{method:"post",body:{subject_id:hr==null?void 0:hr.pathId,uuid:(He==null?void 0:He.last_knowledge_uuid)||(He==null?void 0:He.knowledge_uuid)}}))});return(0,a.useEffect)(()=>{var He,Ir;if((zt==null?void 0:zt.status)==0&&(Xt!=null&&Xt.can_managed)){const Gr=(Ir=Object==null?void 0:Object.entries(((He=zt==null?void 0:zt.data)==null?void 0:He.study_grasp_hash)||{}))==null?void 0:Ir.map(([cn,Xr],wn)=>({name:cn,value:Xr,itemStyle:Zr[wn].itemStyle}));_n(Gr)}},[Xt==null?void 0:Xt.can_managed,zt]),(0,a.useEffect)(()=>{En()},[hr==null?void 0:hr.abilityId]),(0,a.useEffect)(()=>{Xe({type:"pathsDetail/getKnowledgeGraphs",payload:{graphable_type:Pr.get("type")=="classrooms"?"course":"subject",graphable_id:hr==null?void 0:hr.pathId}}),Mr.set("tabs","5")},[]),(0,a.useEffect)(()=>(Xe({type:"globalSetting/footerToggle",payload:!1}),()=>{Xe({type:"globalSetting/footerToggle",payload:!0})}),[]),a.createElement(y.Z,{spinning:Rr},a.createElement("div",{className:"ml-auto mr-auto",style:{width:"1200rem",paddingTop:"15rem"}},a.createElement(v.Z,{style:{fontSize:"14rem",marginBottom:"20rem"},items:[{title:a.createElement("a",{className:"flex item-center",style:{fontSize:"14rem"},onClick:()=>{d.history.push(`/knowledgegraph/${hr.pathId}?${Mr}`)}},a.createElement(H.Z,{title:"\u8FD4\u56DE"},a.createElement("i",{className:"iconfont icon-fanhui1",style:{fontSize:"14rem",marginRight:"20rem"}})),"\u80FD\u529B\u56FE\u8C31")},{title:"\u80FD\u529B\u8BE6\u60C5"}]}),a.createElement("div",{className:"w-full flex"},a.createElement("div",{className:"sticky flex flex-col",style:{width:"250rem",borderRadius:"4rem 0 0 4rem",maxHeight:"100vh",overflowY:"auto",overflowX:"hidden",top:0,background:"#F6F7F9"}},a.createElement(N,{abilityGoalItem:(Nt=zt==null?void 0:zt.data)==null?void 0:Nt.ability_goals}),a.createElement("div",{style:{padding:"10rem 20rem 20rem"}},a.createElement("div",{className:"c-grey-333",style:{fontSize:"16rem"}},"\u76EE\u5F55\u5BFC\u822A"),a.createElement(m.default,{className:"w-full",value:Number(hr==null?void 0:hr.abilityId),style:{marginTop:"10rem"},onChange:He=>{d.history.push(`/knowledgegraph/${hr.pathId}/abilityMap/detail/${He}?${Mr}`)},options:((Kt=(ut=zt==null?void 0:zt.data)==null?void 0:ut.ability_goals)==null?void 0:Kt.map(He=>({label:He==null?void 0:He.name,value:He==null?void 0:He.id})))||[],size:"large"})),a.createElement(E.default,{className:G.AnchorDomStyle,items:(ge=(_t=zt==null?void 0:zt.data)==null?void 0:_t.children_ability_goals)==null?void 0:ge.map(He=>{var Ir;return{key:He==null?void 0:He.id,href:`#${He==null?void 0:He.id}`,title:a.createElement("div",{className:`current relative ${G.AnchorDom}`},a.createElement("div",{className:"flex item-center",style:{gap:"10rem"}},a.createElement("div",{className:"flex-1 minW-0 multi_ellipsis1 c-grey-333",style:{fontSize:"14rem"}},He==null?void 0:He.name),a.createElement("span",{style:{color:"#464F66",fontSize:"12rem"}},Xt!=null&&Xt.can_managed?a.createElement(a.Fragment,null,a.createElement("span",{className:"iconfont icon-a-60-kejian",style:{marginRight:"5rem",fontSize:"12rem"}}),He==null?void 0:He.knowledge_count):a.createElement("span",{style:{color:"#00C088"}},a.createElement("span",{className:"iconfont icon-xuesheng2",style:{marginRight:"5rem",fontSize:"12rem"}}),(He==null?void 0:He.grasp_rate)||0,"%"))),a.createElement("div",{className:"flex flex-wrap",style:{gap:"5rem",marginTop:"10rem"}},(Ir=He==null?void 0:He.ability_tags)==null?void 0:Ir.map(Gr=>a.createElement(M.default,{color:"orange",style:{fontSize:"12rem"},key:Gr},Gr))),a.createElement("div",{className:"multi_ellipsis2",style:{marginTop:"20rem",color:"#464F66",fontSize:"12rem"}},He==null?void 0:He.description))}})})),a.createElement("div",{className:"flex-1 minW-0 flex flex-col",style:{gap:"20rem"}},a.createElement("div",{className:"bg-white relative",style:{borderRadius:"4rem",padding:"15rem 30rem 30rem"}},((Ue=(we=zt==null?void 0:zt.data)==null?void 0:we.next_ability_goal)==null?void 0:Ue.id)&&a.createElement("div",{className:"absolute current",style:{right:0,top:0},onClick:()=>{var He,Ir;d.history.push(`/knowledgegraph/${hr.pathId}/abilityMap/detail/${(Ir=(He=zt==null?void 0:zt.data)==null?void 0:He.next_ability_goal)==null?void 0:Ir.id}?${Mr}`)}},a.createElement("div",{className:G.NextAbility},a.createElement("div",{className:"multi_ellipsis1"},(nt=(De=zt==null?void 0:zt.data)==null?void 0:De.next_ability_goal)==null?void 0:nt.name),a.createElement("div",null,a.createElement("span",{className:"iconfont icon-you2",style:{fontSize:"14rem"}})))),a.createElement("div",{style:{color:"#3061D0"}},a.createElement(J,{type:"\u4E3B\u80FD\u529B",ImgProps:{style:{marginRight:"5rem"}}}),"\u4E3B\u80FD\u529B"),a.createElement("div",{className:"c-grey-333 blod",style:{fontSize:"14rem",margin:"20rem 0 10rem 0"}},(qe=zt==null?void 0:zt.data)==null?void 0:qe.name),((rt=zt==null?void 0:zt.data)==null?void 0:rt.description)&&a.createElement("div",{style:{padding:"12rem",background:"#F6F7F9"}},a.createElement(ht,null,(ft=zt==null?void 0:zt.data)==null?void 0:ft.description)),(Xt==null?void 0:Xt.can_managed)&&a.createElement(a.Fragment,null,a.createElement("div",{className:"flex",style:{marginTop:"20rem",gap:"20rem"}},[{title:"\u5E73\u5747\u4E3B\u80FD\u529B\u638C\u63E1\u7387",value:(Tt=zt==null?void 0:zt.data)==null?void 0:Tt.children_ability_goal_grasp_rate,unit:"%",img:B(46016),bg:"#E3F1FF"},{title:"\u8986\u76D6\u77E5\u8BC6\u70B9",value:(Ze=zt==null?void 0:zt.data)==null?void 0:Ze.total_knowledge_count,unit:"\u4E2A",img:B(99755),bg:"#F1FDEF",ProgressTitle:"\u5360\u603B\u77E5\u8BC6\u70B9",percent:(O=zt==null?void 0:zt.data)==null?void 0:O.knowledge_rate,trailColor:"rgba(50, 199, 145, .1)",strokeColor:"#32C791"},{title:"\u8986\u76D6\u8D44\u6E90\u6570",value:(W=zt==null?void 0:zt.data)==null?void 0:W.total_resource_count,unit:"\u4E2A",img:B(92691),bg:"#FFF9F4",ProgressTitle:"\u5360\u603B\u8D44\u6E90\u6570",percent:(z=zt==null?void 0:zt.data)==null?void 0:z.resource_rate,trailColor:"rgba(236, 159, 48, 0.10)",strokeColor:"#EC9F30"}].map((He,Ir)=>a.createElement("div",{key:Ir,className:"flex-1 minW-0 relative",style:{borderRadius:"6rem",background:He==null?void 0:He.bg,padding:"20rem 30rem"}},a.createElement("img",{src:He==null?void 0:He.img,width:"43rem",height:"43rem",className:"absolute",style:{right:"30rem",top:"20rem"}}),a.createElement("div",{className:"c-grey-666",style:{fontSize:"14rem"}},He==null?void 0:He.title),a.createElement("div",{className:"c-grey-333 blod",style:{marginTop:"10rem",fontSize:"26rem",lineHeight:"26rem"}},He==null?void 0:He.value,a.createElement("span",{style:{fontSize:"14rem"}},He==null?void 0:He.unit)),(He==null?void 0:He.ProgressTitle)&&a.createElement("div",{className:"c-grey-666",style:{fontSize:"12rem",marginTop:"20rem"}},a.createElement("div",null,He==null?void 0:He.ProgressTitle,He==null?void 0:He.percent,"%"),a.createElement(g.Z,{percent:He==null?void 0:He.percent,showInfo:!1,trailColor:He==null?void 0:He.trailColor,strokeColor:He==null?void 0:He.strokeColor,style:{marginBottom:"0",marginLeft:"0"}}))))),a.createElement("div",{className:"c-grey-333",style:{margin:"40rem 0 30rem 0",fontSize:"14rem"}},"\u5B66\u4E60\u7EDF\u8BA1"),a.createElement("div",{className:"flex"},a.createElement("div",{className:"minW-0 flex flex-col",style:{gap:"13rem",width:"200rem"}},[{title:"\u5B66\u4E60\u4EBA\u6570",value:(Z=zt==null?void 0:zt.data)==null?void 0:Z.study_count,unit:"",img:B(37426),bg:"rgba(68, 95, 232, 0.1)"},{title:"\u5B66\u4E60\u5B8C\u6210\u7387",value:(Y=zt==null?void 0:zt.data)==null?void 0:Y.complete_rate,unit:"%",img:B(19150),bg:"rgba(182, 129, 0, .1)"},{title:"\u5B66\u4E60\u638C\u63E1\u7387",value:(se=zt==null?void 0:zt.data)==null?void 0:se.grasp_rate,unit:"%",img:B(55303),bg:"rgba(6, 145, 127, .1)"}].map((He,Ir)=>a.createElement("div",{key:Ir,className:"relative",style:{borderRadius:"6rem",padding:"20rem",background:He==null?void 0:He.bg}},a.createElement("div",{style:{fontSize:"14rem"}},He==null?void 0:He.title),a.createElement("div",{className:"blod",style:{fontSize:"26rem"}},He==null?void 0:He.value,a.createElement("span",{style:{fontSize:"14rem"}},He==null?void 0:He.unit)),a.createElement("img",{className:"absolute",style:{right:"6rem",bottom:"6rem"},height:"35rem",src:He==null?void 0:He.img})))),a.createElement("div",{className:"flex-1 minW-0"},a.createElement(_.Z,{dataSource:Zr,legend:{top:null,icon:"roundRect",bottom:10,itemWidth:14,itemGap:50,left:"center",formatter:He=>He}})))),!(Xt!=null&&Xt.can_managed)&&a.createElement(a.Fragment,null,a.createElement("div",{className:"flex item-center",style:{gap:"20rem",marginTop:"20rem"}},[{title:"\u8986\u76D6\u77E5\u8BC6\u70B9",value:(xe=zt==null?void 0:zt.data)==null?void 0:xe.total_knowledge_count,unit:"\u4E2A",percent:(lt=zt==null?void 0:zt.data)==null?void 0:lt.knowledge_rate,percenttitle:"\u5360\u603B\u77E5\u8BC6\u70B9",trailColor:"rgba(50, 199, 145, .1)",strokeColor:"#32C791"},{title:"\u8986\u76D6\u8D44\u6E90\u6570",value:(Ve=zt==null?void 0:zt.data)==null?void 0:Ve.total_resource_count,unit:"\u4E2A",percent:(Rt=zt==null?void 0:zt.data)==null?void 0:Rt.resource_rate,percenttitle:"\u5360\u603B\u8D44\u6E90\u6570",trailColor:"rgba(236, 159, 48, 0.10)",strokeColor:"#EC9F30"}].map((He,Ir)=>a.createElement("div",{key:Ir,className:"flex-1 minW-0 flex justify-between c-grey-333",style:{gap:"20rem",background:"#F6F7F9",borderRadius:"6rem",padding:"30rem 60rem"}},a.createElement("div",{className:"flex flex-col justify-between"},a.createElement("div",{style:{fontSize:"14rem",whiteSpace:"nowrap"}},He==null?void 0:He.title),a.createElement("div",{className:"blod",style:{fontSize:"26rem"}},He==null?void 0:He.value,a.createElement("span",{style:{fontSize:"14rem"}},He==null?void 0:He.unit))),a.createElement("div",{className:"relative",style:{width:"133rem",height:"75rem"}},a.createElement(g.Z,{type:"dashboard",percent:He==null?void 0:He.percent,gapDegree:178,strokeWidth:10,className:"absolute",style:{right:0,top:0},trailColor:He==null?void 0:He.trailColor,strokeColor:He==null?void 0:He.strokeColor,strokeLinecap:"round",format:Gr=>a.createElement("div",{className:"c-grey-333",style:{fontSize:"12rem",textAlign:"center",marginTop:"-35rem"}},Gr,"%",a.createElement("br",null),a.createElement("br",null),He==null?void 0:He.percenttitle)}))))),a.createElement("div",{className:"c-grey-333 blod",style:{margin:"40rem 0 30rem 0",fontSize:"14rem"}},"\u5B66\u4E60\u7EDF\u8BA1"),a.createElement("div",{className:"flex",style:{marginTop:"20rem",gap:"20rem"}},[{title:"\u4E3B\u80FD\u529B\u638C\u63E1\u7387",value:(kt=zt==null?void 0:zt.data)==null?void 0:kt.children_ability_goal_grasp_rate,unit:"%",img:B(46016),bg:"#E3F1FF"},{title:"\u5DF2\u638C\u63E1\u77E5\u8BC6\u70B9",value:((Ut=zt==null?void 0:zt.data)==null?void 0:Ut.knowledge_grasp_count)||0,unit:"\u4E2A",img:B(99755),bg:"#F1FDEF",ProgressTitle:"\u77E5\u8BC6\u70B9\u638C\u63E1\u7387",percent:((st=zt==null?void 0:zt.data)==null?void 0:st.knowledge_grasp_rate)||0,trailColor:"rgba(50, 199, 145, .1)",strokeColor:"#32C791"},{title:"\u5DF2\u5B8C\u6210\u8D44\u6E90\u6570",value:((bt=zt==null?void 0:zt.data)==null?void 0:bt.resource_complete_count)||0,unit:"\u4E2A",img:B(92691),bg:"#FFF9F4",ProgressTitle:"\u5B8C\u6210\u8D44\u6E90\u7387",percent:((wt=zt==null?void 0:zt.data)==null?void 0:wt.resource_complete_rate)||0,trailColor:"rgba(236, 159, 48, 0.10)",strokeColor:"#EC9F30"}].map((He,Ir)=>a.createElement("div",{key:Ir,className:"flex-1 minW-0 relative",style:{borderRadius:"6rem",background:He==null?void 0:He.bg,padding:"20rem 30rem"}},a.createElement("img",{src:He==null?void 0:He.img,width:"43rem",height:"43rem",className:"absolute",style:{right:"30rem",top:"20rem"}}),a.createElement("div",{className:"c-grey-666",style:{fontSize:"14rem"}},He==null?void 0:He.title),a.createElement("div",{className:"c-grey-333 blod",style:{marginTop:"10rem",fontSize:"26rem",lineHeight:"26rem"}},He==null?void 0:He.value,a.createElement("span",{style:{fontSize:"14rem"}},He==null?void 0:He.unit)),(He==null?void 0:He.ProgressTitle)&&a.createElement("div",{className:"c-grey-666",style:{fontSize:"12rem",marginTop:"20rem"}},a.createElement("div",null,He==null?void 0:He.ProgressTitle,He==null?void 0:He.percent,"%"),a.createElement(g.Z,{percent:He==null?void 0:He.percent,showInfo:!1,trailColor:He==null?void 0:He.trailColor,strokeColor:He==null?void 0:He.strokeColor,style:{marginBottom:"0",marginLeft:"0"}}))))),a.createElement("div",{className:"c-grey-333 blod",style:{margin:"30rem 0 10rem 0",fontSize:"14rem"}},"\u5F00\u59CB\u5B66\u4E60"),a.createElement("div",{className:"flex flex-col",style:{gap:"10rem"}},(xt=(gt=zt==null?void 0:zt.data)==null?void 0:gt.children_ability_goals)==null?void 0:xt.map(He=>a.createElement("div",{key:He==null?void 0:He.id,className:"flex item-center",style:{gap:"20rem",padding:"20rem",background:"#F6F7F9",borderRadius:"6rem"}},a.createElement("div",{className:"flex-1 minW-0 flex flex-col"},a.createElement("div",{className:"flex",style:{gap:"10rem"}},a.createElement("div",{style:{color:"#3061D0"}},a.createElement(J,{type:"\u5B50\u80FD\u529B",ImgProps:{style:{marginRight:"5rem"}}}),"\u5B50\u80FD\u529B"),a.createElement(H.Z,{title:He==null?void 0:He.name,placement:"topLeft"},a.createElement("div",{className:"multi_ellipsis1"},He==null?void 0:He.name))),a.createElement("div",{className:"flex item-center",style:{gap:"10rem",marginTop:"15rem",fontSize:"14rem"}},a.createElement(M.default,{color:"orange",style:{fontSize:"12rem",lineHeight:"1.5"}},"\u8282\u70B9"),a.createElement("span",{className:"c-grey-333"},He==null?void 0:He.last_knowledge_name),He!=null&&He.is_complete?a.createElement("span",{className:"c-green"},"\uFF08\u5DF2\u638C\u63E1\uFF09"):a.createElement("span",{className:"c-grey-666"},"\uFF08\u672A\u638C\u63E1\uFF09"))),a.createElement(I.op,{onClick:()=>ot(void 0,null,function*(){yield Kr(He)})},(He==null?void 0:He.complete_rate)==0?"\u5F00\u59CB\u5B66\u4E60":"\u7EE7\u7EED\u5B66\u4E60")))))),(Vt=(Gt=zt==null?void 0:zt.data)==null?void 0:Gt.children_ability_goals)==null?void 0:Vt.map(He=>a.createElement(dt,{key:He==null?void 0:He.id,DataProps:He,pathsDetail:Ke,getUrl:Kr}))))),a.createElement(h.default,{open:_r==null?void 0:_r.open,title:"\u89C6\u9891",width:800,centered:!0,onCancel:()=>{wr(Pe(Ie({},_r),{open:!1}))},onOk:()=>{wr(Pe(Ie({},_r),{open:!1}))}},a.createElement(ce.Z,{allow_skip:!0,videoId:_r.id,toLog:!0,src:_r==null?void 0:_r.resourceUrl,logWatchHistory:He=>xn(Pe(Ie({},He),{container_type:localStorage.getItem("container_type_tupu")}))})),a.createElement(K.Z,{close:!0,style:{zIndex:1300,background:"rgba(1, 10, 35, 0.5)"},data:Wt==null?void 0:Wt.url,type:Wt==null?void 0:Wt.file_type,disabledDownload:!0,onClose:()=>mr({})}))};var Ot=(0,d.connect)(({pathsDetail:Ke,user:Xe})=>({pathsDetail:Ke,user:Xe}))(At)},51959:function(ke,_e,B){"use strict";B.d(_e,{BU:function(){return H},Dj:function(){return w},gH:function(){return M},vp:function(){return g}});function w(D){try{D.mozRequestFullScreen?D.mozRequestFullScreen():D.webkitRequestFullScreen&&D.webkitRequestFullScreen()}catch(y){console.log(y,":e")}}function H(){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 M=()=>{if(document.webkitExitFullscreen)return"webkitfullscreenchange";if(document.exitFullscreen)return"fullscreenchange";if(document.msExitFullscreen)return"msfullscreenchange";if(document.mozCancelFullScreen)return"mozfullscreenchange"};function g(){var D=window.top.document.fullscreenElement||window.top.document.mozFullscreenElement||window.top.document.webkitFullscreenElement,y=document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled;return console.log("fullscreenElement",D),window.isFullScreen?window.isFullScreen:D!=null}},9343:function(ke,_e,B){"use strict";B.d(_e,{U:function(){return E}});var w=B(67294),H=Object.defineProperty,M=Object.getOwnPropertySymbols,g=Object.prototype.hasOwnProperty,D=Object.prototype.propertyIsEnumerable,y=(h,a,d)=>a in h?H(h,a,{enumerable:!0,configurable:!0,writable:!0,value:d}):h[a]=d,v=(h,a)=>{for(var d in a||(a={}))g.call(a,d)&&y(h,d,a[d]);if(M)for(var d of M(a))D.call(a,d)&&y(h,d,a[d]);return h},m=(h,a,d)=>new Promise((_,r)=>{var n=s=>{try{o(d.next(s))}catch(u){r(u)}},l=s=>{try{o(d.throw(s))}catch(u){r(u)}},o=s=>s.done?_(s.value):Promise.resolve(s.value).then(n,l);o((d=d.apply(h,a)).next())});function E(h,a){const[d,_]=(0,w.useState)(a),[r,n]=(0,w.useState)(!1),[l,o]=(0,w.useState)();return[d,r,(u,f=!1)=>m(this,null,function*(){const e=f?a:v(v({},d),u);n(!0),_(e);const t=yield h(e);return n(!1),o(t),t}),l]}},24577:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return Tt}});class w{static install(){Object.setPrototypeOf=Object.setPrototypeOf||function(O,W){return O.__proto__=W,O},Object.assign=Object.assign||function(O){if(O==null)throw new TypeError("Cannot convert undefined or null to object");let W=Object(O);for(let z=1;z<arguments.length;z++){let Z=arguments[z];if(Z!=null)for(let Y in Z)Z.hasOwnProperty(Y)&&(W[Y]=Z[Y])}return W},typeof self.Promise!="function"&&B(82702).polyfill()}}w.install();var H=w,M=B(17187),g=B.n(M);class D{static e(O,W){(!O||D.FORCE_GLOBAL_TAG)&&(O=D.GLOBAL_TAG);let z=`[${O}] > ${W}`;D.ENABLE_CALLBACK&&D.emitter.emit("log","error",z),D.ENABLE_ERROR&&(console.error?console.error(z):console.warn?console.warn(z):console.log(z))}static i(O,W){(!O||D.FORCE_GLOBAL_TAG)&&(O=D.GLOBAL_TAG);let z=`[${O}] > ${W}`;D.ENABLE_CALLBACK&&D.emitter.emit("log","info",z),D.ENABLE_INFO&&(console.info?console.info(z):console.log(z))}static w(O,W){(!O||D.FORCE_GLOBAL_TAG)&&(O=D.GLOBAL_TAG);let z=`[${O}] > ${W}`;D.ENABLE_CALLBACK&&D.emitter.emit("log","warn",z),D.ENABLE_WARN&&(console.warn?console.warn(z):console.log(z))}static d(O,W){(!O||D.FORCE_GLOBAL_TAG)&&(O=D.GLOBAL_TAG);let z=`[${O}] > ${W}`;D.ENABLE_CALLBACK&&D.emitter.emit("log","debug",z),D.ENABLE_DEBUG&&(console.debug?console.debug(z):console.log(z))}static v(O,W){(!O||D.FORCE_GLOBAL_TAG)&&(O=D.GLOBAL_TAG);let z=`[${O}] > ${W}`;D.ENABLE_CALLBACK&&D.emitter.emit("log","verbose",z),D.ENABLE_VERBOSE&&console.log(z)}}D.GLOBAL_TAG="flv.js",D.FORCE_GLOBAL_TAG=!1,D.ENABLE_ERROR=!0,D.ENABLE_INFO=!0,D.ENABLE_WARN=!0,D.ENABLE_DEBUG=!0,D.ENABLE_VERBOSE=!0,D.ENABLE_CALLBACK=!1,D.emitter=new(g());var y=D;class v{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(O){this._firstCheckpoint===0?(this._firstCheckpoint=this._now(),this._lastCheckpoint=this._firstCheckpoint,this._intervalBytes+=O,this._totalBytes+=O):this._now()-this._lastCheckpoint<1e3?(this._intervalBytes+=O,this._totalBytes+=O):(this._lastSecondBytes=this._intervalBytes,this._intervalBytes=O,this._totalBytes+=O,this._lastCheckpoint=this._now())}get currentKBps(){this.addBytes(0);let O=(this._now()-this._lastCheckpoint)/1e3;return O==0&&(O=1),this._intervalBytes/O/1024}get lastSecondKBps(){return this.addBytes(0),this._lastSecondBytes!==0?this._lastSecondBytes/1024:this._now()-this._lastCheckpoint>=500?this.currentKBps:0}get averageKBps(){let O=(this._now()-this._firstCheckpoint)/1e3;return this._totalBytes/O/1024}}var m=v;class E{constructor(O){this._message=O}get name(){return"RuntimeException"}get message(){return this._message}toString(){return this.name+": "+this.message}}class h extends E{constructor(O){super(O)}get name(){return"IllegalStateException"}}class a extends E{constructor(O){super(O)}get name(){return"InvalidArgumentException"}}class d extends E{constructor(O){super(O)}get name(){return"NotImplementedException"}}const _={kIdle:0,kConnecting:1,kBuffering:2,kError:3,kComplete:4},r={OK:"OK",EXCEPTION:"Exception",HTTP_STATUS_CODE_INVALID:"HttpStatusCodeInvalid",CONNECTING_TIMEOUT:"ConnectingTimeout",EARLY_EOF:"EarlyEof",UNRECOVERABLE_EARLY_EOF:"UnrecoverableEarlyEof"};class n{constructor(O){this._type=O||"undefined",this._status=_.kIdle,this._needStash=!1,this._onContentLengthKnown=null,this._onURLRedirect=null,this._onDataArrival=null,this._onError=null,this._onComplete=null}destroy(){this._status=_.kIdle,this._onContentLengthKnown=null,this._onURLRedirect=null,this._onDataArrival=null,this._onError=null,this._onComplete=null}isWorking(){return this._status===_.kConnecting||this._status===_.kBuffering}get type(){return this._type}get status(){return this._status}get needStashBuffer(){return this._needStash}get onContentLengthKnown(){return this._onContentLengthKnown}set onContentLengthKnown(O){this._onContentLengthKnown=O}get onURLRedirect(){return this._onURLRedirect}set onURLRedirect(O){this._onURLRedirect=O}get onDataArrival(){return this._onDataArrival}set onDataArrival(O){this._onDataArrival=O}get onError(){return this._onError}set onError(O){this._onError=O}get onComplete(){return this._onComplete}set onComplete(O){this._onComplete=O}open(O,W){throw new d("Unimplemented abstract function!")}abort(){throw new d("Unimplemented abstract function!")}}let l={};function o(){let Ze=self.navigator.userAgent.toLowerCase(),O=/(edge)\/([\w.]+)/.exec(Ze)||/(opr)[\/]([\w.]+)/.exec(Ze)||/(chrome)[ \/]([\w.]+)/.exec(Ze)||/(iemobile)[\/]([\w.]+)/.exec(Ze)||/(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(Ze)||/(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(Ze)||/(webkit)[ \/]([\w.]+)/.exec(Ze)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(Ze)||/(msie) ([\w.]+)/.exec(Ze)||Ze.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(Ze)||Ze.indexOf("compatible")<0&&/(firefox)[ \/]([\w.]+)/.exec(Ze)||[],W=/(ipad)/.exec(Ze)||/(ipod)/.exec(Ze)||/(windows phone)/.exec(Ze)||/(iphone)/.exec(Ze)||/(kindle)/.exec(Ze)||/(android)/.exec(Ze)||/(windows)/.exec(Ze)||/(mac)/.exec(Ze)||/(linux)/.exec(Ze)||/(cros)/.exec(Ze)||[],z={browser:O[5]||O[3]||O[1]||"",version:O[2]||O[4]||"0",majorVersion:O[4]||O[2]||"0",platform:W[0]||""},Z={};if(z.browser){Z[z.browser]=!0;let Y=z.majorVersion.split(".");Z.version={major:parseInt(z.majorVersion,10),string:z.version},Y.length>1&&(Z.version.minor=parseInt(Y[1],10)),Y.length>2&&(Z.version.build=parseInt(Y[2],10))}if(z.platform&&(Z[z.platform]=!0),(Z.chrome||Z.opr||Z.safari)&&(Z.webkit=!0),Z.rv||Z.iemobile){Z.rv&&delete Z.rv;let Y="msie";z.browser=Y,Z[Y]=!0}if(Z.edge){delete Z.edge;let Y="msedge";z.browser=Y,Z[Y]=!0}if(Z.opr){let Y="opera";z.browser=Y,Z[Y]=!0}if(Z.safari&&Z.android){let Y="android";z.browser=Y,Z[Y]=!0}Z.name=z.browser,Z.platform=z.platform;for(let Y in l)l.hasOwnProperty(Y)&&delete l[Y];Object.assign(l,Z)}o();var s=l;class u extends n{static isSupported(){try{let O=s.msedge&&s.version.minor>=15048,W=s.msedge?O:!0;return self.fetch&&self.ReadableStream&&W}catch(O){return!1}}constructor(O,W){super("fetch-stream-loader"),this.TAG="FetchStreamLoader",this._seekHandler=O,this._config=W,this._needStash=!0,this._requestAbort=!1,this._contentLength=null,this._receivedLength=0}destroy(){this.isWorking()&&this.abort(),super.destroy()}open(O,W){this._dataSource=O,this._range=W;let z=O.url;this._config.reuseRedirectedURL&&O.redirectedURL!=null&&(z=O.redirectedURL);let Z=this._seekHandler.getConfig(z,W),Y=new self.Headers;if(typeof Z.headers=="object"){let xe=Z.headers;for(let lt in xe)xe.hasOwnProperty(lt)&&Y.append(lt,xe[lt])}let se={method:"GET",headers:Y,mode:"cors",cache:"default",referrerPolicy:"no-referrer-when-downgrade"};if(typeof this._config.headers=="object")for(let xe in this._config.headers)Y.append(xe,this._config.headers[xe]);O.cors===!1&&(se.mode="same-origin"),O.withCredentials&&(se.credentials="include"),O.referrerPolicy&&(se.referrerPolicy=O.referrerPolicy),this._status=_.kConnecting,self.fetch(Z.url,se).then(xe=>{if(this._requestAbort){this._requestAbort=!1,this._status=_.kIdle;return}if(xe.ok&&xe.status>=200&&xe.status<=299){if(xe.url!==Z.url&&this._onURLRedirect){let Ve=this._seekHandler.removeURLParameters(xe.url);this._onURLRedirect(Ve)}let lt=xe.headers.get("Content-Length");return lt!=null&&(this._contentLength=parseInt(lt),this._contentLength!==0&&this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)),this._pump.call(this,xe.body.getReader())}else if(this._status=_.kError,this._onError)this._onError(r.HTTP_STATUS_CODE_INVALID,{code:xe.status,msg:xe.statusText});else throw new E("FetchStreamLoader: Http code invalid, "+xe.status+" "+xe.statusText)}).catch(xe=>{if(this._status=_.kError,this._onError)this._onError(r.EXCEPTION,{code:-1,msg:xe.message});else throw xe})}abort(){this._requestAbort=!0}_pump(O){return O.read().then(W=>{if(W.done)if(this._contentLength!==null&&this._receivedLength<this._contentLength){this._status=_.kError;let z=r.EARLY_EOF,Z={code:-1,msg:"Fetch stream meet Early-EOF"};if(this._onError)this._onError(z,Z);else throw new E(Z.msg)}else this._status=_.kComplete,this._onComplete&&this._onComplete(this._range.from,this._range.from+this._receivedLength-1);else{if(this._requestAbort===!0)return this._requestAbort=!1,this._status=_.kComplete,O.cancel();this._status=_.kBuffering;let z=W.value.buffer,Z=this._range.from+this._receivedLength;this._receivedLength+=z.byteLength,this._onDataArrival&&this._onDataArrival(z,Z,this._receivedLength),this._pump(O)}}).catch(W=>{if(W.code===11&&s.msedge)return;this._status=_.kError;let z=0,Z=null;if((W.code===19||W.message==="network error")&&(this._contentLength===null||this._contentLength!==null&&this._receivedLength<this._contentLength)?(z=r.EARLY_EOF,Z={code:W.code,msg:"Fetch stream meet Early-EOF"}):(z=r.EXCEPTION,Z={code:W.code,msg:W.message}),this._onError)this._onError(z,Z);else throw new E(Z.msg)})}}var f=u;class e extends n{static isSupported(){try{let O=new XMLHttpRequest;return O.open("GET","https://example.com",!0),O.responseType="moz-chunked-arraybuffer",O.responseType==="moz-chunked-arraybuffer"}catch(O){return y.w("MozChunkedLoader",O.message),!1}}constructor(O,W){super("xhr-moz-chunked-loader"),this.TAG="MozChunkedLoader",this._seekHandler=O,this._config=W,this._needStash=!0,this._xhr=null,this._requestAbort=!1,this._contentLength=null,this._receivedLength=0}destroy(){this.isWorking()&&this.abort(),this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onloadend=null,this._xhr.onerror=null,this._xhr=null),super.destroy()}open(O,W){this._dataSource=O,this._range=W;let z=O.url;this._config.reuseRedirectedURL&&O.redirectedURL!=null&&(z=O.redirectedURL);let Z=this._seekHandler.getConfig(z,W);this._requestURL=Z.url;let Y=this._xhr=new XMLHttpRequest;if(Y.open("GET",Z.url,!0),Y.responseType="moz-chunked-arraybuffer",Y.onreadystatechange=this._onReadyStateChange.bind(this),Y.onprogress=this._onProgress.bind(this),Y.onloadend=this._onLoadEnd.bind(this),Y.onerror=this._onXhrError.bind(this),O.withCredentials&&(Y.withCredentials=!0),typeof Z.headers=="object"){let se=Z.headers;for(let xe in se)se.hasOwnProperty(xe)&&Y.setRequestHeader(xe,se[xe])}if(typeof this._config.headers=="object"){let se=this._config.headers;for(let xe in se)se.hasOwnProperty(xe)&&Y.setRequestHeader(xe,se[xe])}this._status=_.kConnecting,Y.send()}abort(){this._requestAbort=!0,this._xhr&&this._xhr.abort(),this._status=_.kComplete}_onReadyStateChange(O){let W=O.target;if(W.readyState===2){if(W.responseURL!=null&&W.responseURL!==this._requestURL&&this._onURLRedirect){let z=this._seekHandler.removeURLParameters(W.responseURL);this._onURLRedirect(z)}if(W.status!==0&&(W.status<200||W.status>299))if(this._status=_.kError,this._onError)this._onError(r.HTTP_STATUS_CODE_INVALID,{code:W.status,msg:W.statusText});else throw new E("MozChunkedLoader: Http code invalid, "+W.status+" "+W.statusText);else this._status=_.kBuffering}}_onProgress(O){if(this._status===_.kError)return;this._contentLength===null&&O.total!==null&&O.total!==0&&(this._contentLength=O.total,this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength));let W=O.target.response,z=this._range.from+this._receivedLength;this._receivedLength+=W.byteLength,this._onDataArrival&&this._onDataArrival(W,z,this._receivedLength)}_onLoadEnd(O){if(this._requestAbort===!0){this._requestAbort=!1;return}else if(this._status===_.kError)return;this._status=_.kComplete,this._onComplete&&this._onComplete(this._range.from,this._range.from+this._receivedLength-1)}_onXhrError(O){this._status=_.kError;let W=0,z=null;if(this._contentLength&&O.loaded<this._contentLength?(W=r.EARLY_EOF,z={code:-1,msg:"Moz-Chunked stream meet Early-Eof"}):(W=r.EXCEPTION,z={code:-1,msg:O.constructor.name+" "+O.type}),this._onError)this._onError(W,z);else throw new E(z.msg)}}var t=e;class i extends null{static isSupported(){try{if(typeof self.MSStream=="undefined"||typeof self.MSStreamReader=="undefined")return!1;let O=new XMLHttpRequest;return O.open("GET","https://example.com",!0),O.responseType="ms-stream",O.responseType==="ms-stream"}catch(O){return Log.w("MSStreamLoader",O.message),!1}}constructor(O,W){super("xhr-msstream-loader"),this.TAG="MSStreamLoader",this._seekHandler=O,this._config=W,this._needStash=!0,this._xhr=null,this._reader=null,this._totalRange=null,this._currentRange=null,this._currentRequestURL=null,this._currentRedirectedURL=null,this._contentLength=null,this._receivedLength=0,this._bufferLimit=16*1024*1024,this._lastTimeBufferSize=0,this._isReconnecting=!1}destroy(){this.isWorking()&&this.abort(),this._reader&&(this._reader.onprogress=null,this._reader.onload=null,this._reader.onerror=null,this._reader=null),this._xhr&&(this._xhr.onreadystatechange=null,this._xhr=null),super.destroy()}open(O,W){this._internalOpen(O,W,!1)}_internalOpen(O,W,z){this._dataSource=O,z?this._currentRange=W:this._totalRange=W;let Z=O.url;this._config.reuseRedirectedURL&&(this._currentRedirectedURL!=null?Z=this._currentRedirectedURL:O.redirectedURL!=null&&(Z=O.redirectedURL));let Y=this._seekHandler.getConfig(Z,W);this._currentRequestURL=Y.url;let se=this._reader=new self.MSStreamReader;se.onprogress=this._msrOnProgress.bind(this),se.onload=this._msrOnLoad.bind(this),se.onerror=this._msrOnError.bind(this);let xe=this._xhr=new XMLHttpRequest;if(xe.open("GET",Y.url,!0),xe.responseType="ms-stream",xe.onreadystatechange=this._xhrOnReadyStateChange.bind(this),xe.onerror=this._xhrOnError.bind(this),O.withCredentials&&(xe.withCredentials=!0),typeof Y.headers=="object"){let lt=Y.headers;for(let Ve in lt)lt.hasOwnProperty(Ve)&&xe.setRequestHeader(Ve,lt[Ve])}if(typeof this._config.headers=="object"){let lt=this._config.headers;for(let Ve in lt)lt.hasOwnProperty(Ve)&&xe.setRequestHeader(Ve,lt[Ve])}this._isReconnecting?this._isReconnecting=!1:this._status=LoaderStatus.kConnecting,xe.send()}abort(){this._internalAbort(),this._status=LoaderStatus.kComplete}_internalAbort(){this._reader&&(this._reader.readyState===1&&this._reader.abort(),this._reader.onprogress=null,this._reader.onload=null,this._reader.onerror=null,this._reader=null),this._xhr&&(this._xhr.abort(),this._xhr.onreadystatechange=null,this._xhr=null)}_xhrOnReadyStateChange(O){let W=O.target;if(W.readyState===2)if(W.status>=200&&W.status<=299){if(this._status=LoaderStatus.kBuffering,W.responseURL!=null){let Z=this._seekHandler.removeURLParameters(W.responseURL);W.responseURL!==this._currentRequestURL&&Z!==this._currentRedirectedURL&&(this._currentRedirectedURL=Z,this._onURLRedirect&&this._onURLRedirect(Z))}let z=W.getResponseHeader("Content-Length");if(z!=null&&this._contentLength==null){let Z=parseInt(z);Z>0&&(this._contentLength=Z,this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength))}}else if(this._status=LoaderStatus.kError,this._onError)this._onError(LoaderErrors.HTTP_STATUS_CODE_INVALID,{code:W.status,msg:W.statusText});else throw new RuntimeException("MSStreamLoader: Http code invalid, "+W.status+" "+W.statusText);else if(W.readyState===3&&W.status>=200&&W.status<=299){this._status=LoaderStatus.kBuffering;let z=W.response;this._reader.readAsArrayBuffer(z)}}_xhrOnError(O){this._status=LoaderStatus.kError;let W=LoaderErrors.EXCEPTION,z={code:-1,msg:O.constructor.name+" "+O.type};if(this._onError)this._onError(W,z);else throw new RuntimeException(z.msg)}_msrOnProgress(O){let z=O.target.result;if(z==null){this._doReconnectIfNeeded();return}let Z=z.slice(this._lastTimeBufferSize);this._lastTimeBufferSize=z.byteLength;let Y=this._totalRange.from+this._receivedLength;this._receivedLength+=Z.byteLength,this._onDataArrival&&this._onDataArrival(Z,Y,this._receivedLength),z.byteLength>=this._bufferLimit&&(Log.v(this.TAG,`MSStream buffer exceeded max size near ${Y+Z.byteLength}, reconnecting...`),this._doReconnectIfNeeded())}_doReconnectIfNeeded(){if(this._contentLength==null||this._receivedLength<this._contentLength){this._isReconnecting=!0,this._lastTimeBufferSize=0,this._internalAbort();let O={from:this._totalRange.from+this._receivedLength,to:-1};this._internalOpen(this._dataSource,O,!0)}}_msrOnLoad(O){this._status=LoaderStatus.kComplete,this._onComplete&&this._onComplete(this._totalRange.from,this._totalRange.from+this._receivedLength-1)}_msrOnError(O){this._status=LoaderStatus.kError;let W=0,z=null;if(this._contentLength&&this._receivedLength<this._contentLength?(W=LoaderErrors.EARLY_EOF,z={code:-1,msg:"MSStream meet Early-Eof"}):(W=LoaderErrors.EARLY_EOF,z={code:-1,msg:O.constructor.name+" "+O.type}),this._onError)this._onError(W,z);else throw new RuntimeException(z.msg)}}var c=null;class p extends n{static isSupported(){try{let O=new XMLHttpRequest;return O.open("GET","https://example.com",!0),O.responseType="arraybuffer",O.responseType==="arraybuffer"}catch(O){return y.w("RangeLoader",O.message),!1}}constructor(O,W){super("xhr-range-loader"),this.TAG="RangeLoader",this._seekHandler=O,this._config=W,this._needStash=!1,this._chunkSizeKBList=[128,256,384,512,768,1024,1536,2048,3072,4096,5120,6144,7168,8192],this._currentChunkSizeKB=384,this._currentSpeedNormalized=0,this._zeroSpeedChunkCount=0,this._xhr=null,this._speedSampler=new m,this._requestAbort=!1,this._waitForTotalLength=!1,this._totalLengthReceived=!1,this._currentRequestURL=null,this._currentRedirectedURL=null,this._currentRequestRange=null,this._totalLength=null,this._contentLength=null,this._receivedLength=0,this._lastTimeLoaded=0}destroy(){this.isWorking()&&this.abort(),this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onload=null,this._xhr.onerror=null,this._xhr=null),super.destroy()}get currentSpeed(){return this._speedSampler.lastSecondKBps}open(O,W){this._dataSource=O,this._range=W,this._status=_.kConnecting;let z=!1;this._dataSource.filesize!=null&&this._dataSource.filesize!==0&&(z=!0,this._totalLength=this._dataSource.filesize),!this._totalLengthReceived&&!z?(this._waitForTotalLength=!0,this._internalOpen(this._dataSource,{from:0,to:-1})):this._openSubRange()}_openSubRange(){let O=this._currentChunkSizeKB*1024,W=this._range.from+this._receivedLength,z=W+O;this._contentLength!=null&&z-this._range.from>=this._contentLength&&(z=this._range.from+this._contentLength-1),this._currentRequestRange={from:W,to:z},this._internalOpen(this._dataSource,this._currentRequestRange)}_internalOpen(O,W){this._lastTimeLoaded=0;let z=O.url;this._config.reuseRedirectedURL&&(this._currentRedirectedURL!=null?z=this._currentRedirectedURL:O.redirectedURL!=null&&(z=O.redirectedURL));let Z=this._seekHandler.getConfig(z,W);this._currentRequestURL=Z.url;let Y=this._xhr=new XMLHttpRequest;if(Y.open("GET",Z.url,!0),Y.responseType="arraybuffer",Y.onreadystatechange=this._onReadyStateChange.bind(this),Y.onprogress=this._onProgress.bind(this),Y.onload=this._onLoad.bind(this),Y.onerror=this._onXhrError.bind(this),O.withCredentials&&(Y.withCredentials=!0),typeof Z.headers=="object"){let se=Z.headers;for(let xe in se)se.hasOwnProperty(xe)&&Y.setRequestHeader(xe,se[xe])}if(typeof this._config.headers=="object"){let se=this._config.headers;for(let xe in se)se.hasOwnProperty(xe)&&Y.setRequestHeader(xe,se[xe])}Y.send()}abort(){this._requestAbort=!0,this._internalAbort(),this._status=_.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(O){let W=O.target;if(W.readyState===2){if(W.responseURL!=null){let z=this._seekHandler.removeURLParameters(W.responseURL);W.responseURL!==this._currentRequestURL&&z!==this._currentRedirectedURL&&(this._currentRedirectedURL=z,this._onURLRedirect&&this._onURLRedirect(z))}if(W.status>=200&&W.status<=299){if(this._waitForTotalLength)return;this._status=_.kBuffering}else if(this._status=_.kError,this._onError)this._onError(r.HTTP_STATUS_CODE_INVALID,{code:W.status,msg:W.statusText});else throw new E("RangeLoader: Http code invalid, "+W.status+" "+W.statusText)}}_onProgress(O){if(this._status===_.kError)return;if(this._contentLength===null){let z=!1;if(this._waitForTotalLength){this._waitForTotalLength=!1,this._totalLengthReceived=!0,z=!0;let Z=O.total;this._internalAbort(),Z!=null&Z!==0&&(this._totalLength=Z)}if(this._range.to===-1?this._contentLength=this._totalLength-this._range.from:this._contentLength=this._range.to-this._range.from+1,z){this._openSubRange();return}this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)}let W=O.loaded-this._lastTimeLoaded;this._lastTimeLoaded=O.loaded,this._speedSampler.addBytes(W)}_normalizeSpeed(O){let W=this._chunkSizeKBList,z=W.length-1,Z=0,Y=0,se=z;if(O<W[0])return W[0];for(;Y<=se;){if(Z=Y+Math.floor((se-Y)/2),Z===z||O>=W[Z]&&O<W[Z+1])return W[Z];W[Z]<O?Y=Z+1:se=Z-1}}_onLoad(O){if(this._status===_.kError)return;if(this._waitForTotalLength){this._waitForTotalLength=!1;return}this._lastTimeLoaded=0;let W=this._speedSampler.lastSecondKBps;if(W===0&&(this._zeroSpeedChunkCount++,this._zeroSpeedChunkCount>=3&&(W=this._speedSampler.currentKBps)),W!==0){let se=this._normalizeSpeed(W);this._currentSpeedNormalized!==se&&(this._currentSpeedNormalized=se,this._currentChunkSizeKB=se)}let z=O.target.response,Z=this._range.from+this._receivedLength;this._receivedLength+=z.byteLength;let Y=!1;this._contentLength!=null&&this._receivedLength<this._contentLength?this._openSubRange():Y=!0,this._onDataArrival&&this._onDataArrival(z,Z,this._receivedLength),Y&&(this._status=_.kComplete,this._onComplete&&this._onComplete(this._range.from,this._range.from+this._receivedLength-1))}_onXhrError(O){this._status=_.kError;let W=0,z=null;if(this._contentLength&&this._receivedLength>0&&this._receivedLength<this._contentLength?(W=r.EARLY_EOF,z={code:-1,msg:"RangeLoader meet Early-Eof"}):(W=r.EXCEPTION,z={code:-1,msg:O.constructor.name+" "+O.type}),this._onError)this._onError(W,z);else throw new E(z.msg)}}var A=p;class x extends n{static isSupported(){try{return typeof self.WebSocket!="undefined"}catch(O){return!1}}constructor(){super("websocket-loader"),this.TAG="WebSocketLoader",this._needStash=!0,this._ws=null,this._requestAbort=!1,this._receivedLength=0}destroy(){this._ws&&this.abort(),super.destroy()}open(O){try{let W=this._ws=new self.WebSocket(O.url);W.binaryType="arraybuffer",W.onopen=this._onWebSocketOpen.bind(this),W.onclose=this._onWebSocketClose.bind(this),W.onmessage=this._onWebSocketMessage.bind(this),W.onerror=this._onWebSocketError.bind(this),this._status=_.kConnecting}catch(W){this._status=_.kError;let z={code:W.code,msg:W.message};if(this._onError)this._onError(r.EXCEPTION,z);else throw new E(z.msg)}}abort(){let O=this._ws;O&&(O.readyState===0||O.readyState===1)&&(this._requestAbort=!0,O.close()),this._ws=null,this._status=_.kComplete}_onWebSocketOpen(O){this._status=_.kBuffering}_onWebSocketClose(O){if(this._requestAbort===!0){this._requestAbort=!1;return}this._status=_.kComplete,this._onComplete&&this._onComplete(0,this._receivedLength-1)}_onWebSocketMessage(O){if(O.data instanceof ArrayBuffer)this._dispatchArrayBuffer(O.data);else if(O.data instanceof Blob){let W=new FileReader;W.onload=()=>{this._dispatchArrayBuffer(W.result)},W.readAsArrayBuffer(O.data)}else{this._status=_.kError;let W={code:-1,msg:"Unsupported WebSocket message type: "+O.data.constructor.name};if(this._onError)this._onError(r.EXCEPTION,W);else throw new E(W.msg)}}_dispatchArrayBuffer(O){let W=O,z=this._receivedLength;this._receivedLength+=W.byteLength,this._onDataArrival&&this._onDataArrival(W,z,this._receivedLength)}_onWebSocketError(O){this._status=_.kError;let W={code:O.code,msg:O.message};if(this._onError)this._onError(r.EXCEPTION,W);else throw new E(W.msg)}}var C=x;class S{constructor(O){this._zeroStart=O||!1}getConfig(O,W){let z={};if(W.from!==0||W.to!==-1){let Z;W.to!==-1?Z=`bytes=${W.from.toString()}-${W.to.toString()}`:Z=`bytes=${W.from.toString()}-`,z.Range=Z}else this._zeroStart&&(z.Range="bytes=0-");return{url:O,headers:z}}removeURLParameters(O){return O}}var P=S;class b{constructor(O,W){this._startName=O,this._endName=W}getConfig(O,W){let z=O;if(W.from!==0||W.to!==-1){let Z=!0;z.indexOf("?")===-1&&(z+="?",Z=!1),Z&&(z+="&"),z+=`${this._startName}=${W.from.toString()}`,W.to!==-1&&(z+=`&${this._endName}=${W.to.toString()}`)}return{url:z,headers:{}}}removeURLParameters(O){let W=O.split("?")[0],z,Z=O.indexOf("?");Z!==-1&&(z=O.substring(Z+1));let Y="";if(z!=null&&z.length>0){let se=z.split("&");for(let xe=0;xe<se.length;xe++){let lt=se[xe].split("="),Ve=xe>0;lt[0]!==this._startName&<[0]!==this._endName&&(Ve&&(Y+="&"),Y+=se[xe])}}return Y.length===0?W:W+"?"+Y}}var L=b;class R{constructor(O,W,z){this.TAG="IOController",this._config=W,this._extraData=z,this._stashInitialSize=1024*384,W.stashInitialSize!=null&&W.stashInitialSize>0&&(this._stashInitialSize=W.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,W.enableStashBuffer===!1&&(this._enableStash=!1),this._loader=null,this._loaderClass=null,this._seekHandler=null,this._dataSource=O,this._isWebSocketURL=/wss?:\/\/(.+?)/.test(O.url),this._refTotalLength=O.filesize?O.filesize:null,this._totalLength=this._refTotalLength,this._fullRequestFlag=!1,this._currentRange=null,this._redirectedURL=null,this._speedNormalized=0,this._speedSampler=new m,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(O){this._extraData=O}get onDataArrival(){return this._onDataArrival}set onDataArrival(O){this._onDataArrival=O}get onSeeked(){return this._onSeeked}set onSeeked(O){this._onSeeked=O}get onError(){return this._onError}set onError(O){this._onError=O}get onComplete(){return this._onComplete}set onComplete(O){this._onComplete=O}get onRedirect(){return this._onRedirect}set onRedirect(O){this._onRedirect=O}get onRecoveredEarlyEof(){return this._onRecoveredEarlyEof}set onRecoveredEarlyEof(O){this._onRecoveredEarlyEof=O}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===A?this._loader.currentSpeed:this._speedSampler.lastSecondKBps}get loaderType(){return this._loader.type}_selectSeekHandler(){let O=this._config;if(O.seekType==="range")this._seekHandler=new P(this._config.rangeLoadZeroStart);else if(O.seekType==="param"){let W=O.seekParamStart||"bstart",z=O.seekParamEnd||"bend";this._seekHandler=new L(W,z)}else if(O.seekType==="custom"){if(typeof O.customSeekHandler!="function")throw new a("Custom seekType specified in config but invalid customSeekHandler!");this._seekHandler=new O.customSeekHandler}else throw new a(`Invalid seekType in config: ${O.seekType}`)}_selectLoader(){if(this._config.customLoader!=null)this._loaderClass=this._config.customLoader;else if(this._isWebSocketURL)this._loaderClass=C;else if(f.isSupported())this._loaderClass=f;else if(t.isSupported())this._loaderClass=t;else if(A.isSupported())this._loaderClass=A;else throw new E("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(O){this._currentRange={from:0,to:-1},O&&(this._currentRange.from=O),this._speedSampler.reset(),O||(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 O=this._resumeFrom;this._resumeFrom=0,this._internalSeek(O,!0)}}seek(O){this._paused=!1,this._stashUsed=0,this._stashByteStart=0,this._internalSeek(O,!0)}_internalSeek(O,W){this._loader.isWorking()&&this._loader.abort(),this._flushStashBuffer(W),this._loader.destroy(),this._loader=null;let z={from:O,to:-1};this._currentRange={from:z.from,to:-1},this._speedSampler.reset(),this._stashSize=this._stashInitialSize,this._createLoader(),this._loader.open(this._dataSource,z),this._onSeeked&&this._onSeeked()}updateUrl(O){if(!O||typeof O!="string"||O.length===0)throw new a("Url must be a non-empty string!");this._dataSource.url=O}_expandBuffer(O){let W=this._stashSize;for(;W+1024*1024*1<O;)W*=2;if(W+=1024*1024*1,W===this._bufferSize)return;let z=new ArrayBuffer(W);if(this._stashUsed>0){let Z=new Uint8Array(this._stashBuffer,0,this._stashUsed);new Uint8Array(z,0,W).set(Z,0)}this._stashBuffer=z,this._bufferSize=W}_normalizeSpeed(O){let W=this._speedNormalizeList,z=W.length-1,Z=0,Y=0,se=z;if(O<W[0])return W[0];for(;Y<=se;){if(Z=Y+Math.floor((se-Y)/2),Z===z||O>=W[Z]&&O<W[Z+1])return W[Z];W[Z]<O?Y=Z+1:se=Z-1}}_adjustStashSize(O){let W=0;this._config.isLive||O<512?W=O:O>=512&&O<=1024?W=Math.floor(O*1.5):W=O*2,W>8192&&(W=8192);let z=W*1024+1024*1024*1;this._bufferSize<z&&this._expandBuffer(z),this._stashSize=W*1024}_dispatchChunks(O,W){return this._currentRange.to=W+O.byteLength-1,this._onDataArrival(O,W)}_onURLRedirect(O){this._redirectedURL=O,this._onRedirect&&this._onRedirect(O)}_onContentLengthKnown(O){O&&this._fullRequestFlag&&(this._totalLength=O,this._fullRequestFlag=!1)}_onLoaderChunkArrival(O,W,z){if(!this._onDataArrival)throw new h("IOController: No existing consumer (onDataArrival) callback!");if(this._paused)return;this._isEarlyEofReconnecting&&(this._isEarlyEofReconnecting=!1,this._onRecoveredEarlyEof&&this._onRecoveredEarlyEof()),this._speedSampler.addBytes(O.byteLength);let Z=this._speedSampler.lastSecondKBps;if(Z!==0){let Y=this._normalizeSpeed(Z);this._speedNormalized!==Y&&(this._speedNormalized=Y,this._adjustStashSize(Y))}if(this._enableStash)if(this._stashUsed===0&&this._stashByteStart===0&&(this._stashByteStart=W),this._stashUsed+O.byteLength<=this._stashSize)new Uint8Array(this._stashBuffer,0,this._stashSize).set(new Uint8Array(O),this._stashUsed),this._stashUsed+=O.byteLength;else{let Y=new Uint8Array(this._stashBuffer,0,this._bufferSize);if(this._stashUsed>0){let se=this._stashBuffer.slice(0,this._stashUsed),xe=this._dispatchChunks(se,this._stashByteStart);if(xe<se.byteLength){if(xe>0){let lt=new Uint8Array(se,xe);Y.set(lt,0),this._stashUsed=lt.byteLength,this._stashByteStart+=xe}}else this._stashUsed=0,this._stashByteStart+=xe;this._stashUsed+O.byteLength>this._bufferSize&&(this._expandBuffer(this._stashUsed+O.byteLength),Y=new Uint8Array(this._stashBuffer,0,this._bufferSize)),Y.set(new Uint8Array(O),this._stashUsed),this._stashUsed+=O.byteLength}else{let se=this._dispatchChunks(O,W);if(se<O.byteLength){let xe=O.byteLength-se;xe>this._bufferSize&&(this._expandBuffer(xe),Y=new Uint8Array(this._stashBuffer,0,this._bufferSize)),Y.set(new Uint8Array(O,se),0),this._stashUsed+=xe,this._stashByteStart=W+se}}}else if(this._stashUsed===0){let Y=this._dispatchChunks(O,W);if(Y<O.byteLength){let se=O.byteLength-Y;se>this._bufferSize&&this._expandBuffer(se),new Uint8Array(this._stashBuffer,0,this._bufferSize).set(new Uint8Array(O,Y),0),this._stashUsed+=se,this._stashByteStart=W+Y}}else{this._stashUsed+O.byteLength>this._bufferSize&&this._expandBuffer(this._stashUsed+O.byteLength);let Y=new Uint8Array(this._stashBuffer,0,this._bufferSize);Y.set(new Uint8Array(O),this._stashUsed),this._stashUsed+=O.byteLength;let se=this._dispatchChunks(this._stashBuffer.slice(0,this._stashUsed),this._stashByteStart);if(se<this._stashUsed&&se>0){let xe=new Uint8Array(this._stashBuffer,se);Y.set(xe,0)}this._stashUsed-=se,this._stashByteStart+=se}}_flushStashBuffer(O){if(this._stashUsed>0){let W=this._stashBuffer.slice(0,this._stashUsed),z=this._dispatchChunks(W,this._stashByteStart),Z=W.byteLength-z;if(z<W.byteLength)if(O)y.w(this.TAG,`${Z} bytes unconsumed data remain when flush buffer, dropped`);else{if(z>0){let Y=new Uint8Array(this._stashBuffer,0,this._bufferSize),se=new Uint8Array(W,z);Y.set(se,0),this._stashUsed=se.byteLength,this._stashByteStart+=z}return 0}return this._stashUsed=0,this._stashByteStart=0,Z}return 0}_onLoaderComplete(O,W){this._flushStashBuffer(!0),this._onComplete&&this._onComplete(this._extraData)}_onLoaderError(O,W){switch(y.e(this.TAG,`Loader error, code = ${W.code}, msg = ${W.msg}`),this._flushStashBuffer(!1),this._isEarlyEofReconnecting&&(this._isEarlyEofReconnecting=!1,O=r.UNRECOVERABLE_EARLY_EOF),O){case r.EARLY_EOF:{if(!this._config.isLive&&this._totalLength){let z=this._currentRange.to+1;z<this._totalLength&&(y.w(this.TAG,"Connection lost, trying reconnect..."),this._isEarlyEofReconnecting=!0,this._internalSeek(z,!1));return}O=r.UNRECOVERABLE_EARLY_EOF;break}case r.UNRECOVERABLE_EARLY_EOF:case r.CONNECTING_TIMEOUT:case r.HTTP_STATUS_CODE_INVALID:case r.EXCEPTION:break}if(this._onError)this._onError(O,W);else throw new E("IOException: "+W.msg)}}var T=R;const N={enableWorker:!1,enableStashBuffer:!0,stashInitialSize:void 0,isLive:!1,lazyLoad:!0,lazyLoadMaxDuration:3*60,lazyLoadRecoverDuration:30,deferLoadAfterSourceOpen:!0,autoCleanupMaxBackwardDuration:3*60,autoCleanupMinBackwardDuration:2*60,statisticsInfoReportInterval:600,fixAudioTimestampGap:!0,accurateSeek:!1,seekType:"range",seekParamStart:"bstart",seekParamEnd:"bend",rangeLoadZeroStart:!1,customSeekHandler:void 0,reuseRedirectedURL:!1,headers:void 0,customLoader:void 0};function I(){return Object.assign({},N)}class F{static supportMSEH264Playback(){return window.MediaSource&&window.MediaSource.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"')}static supportNetworkStreamIO(){let O=new T({},I()),W=O.loaderType;return O.destroy(),W=="fetch-stream-loader"||W=="xhr-moz-chunked-loader"}static getNetworkLoaderTypeName(){let O=new T({},I()),W=O.loaderType;return O.destroy(),W}static supportNativeMediaPlayback(O){F.videoElement==null&&(F.videoElement=window.document.createElement("video"));let W=F.videoElement.canPlayType(O);return W==="probably"||W=="maybe"}static getFeatureList(){let O={mseFlvPlayback:!1,mseLiveFlvPlayback:!1,networkStreamIO:!1,networkLoaderName:"",nativeMP4H264Playback:!1,nativeWebmVP8Playback:!1,nativeWebmVP9Playback:!1};return O.mseFlvPlayback=F.supportMSEH264Playback(),O.networkStreamIO=F.supportNetworkStreamIO(),O.networkLoaderName=F.getNetworkLoaderTypeName(),O.mseLiveFlvPlayback=O.mseFlvPlayback&&O.networkStreamIO,O.nativeMP4H264Playback=F.supportNativeMediaPlayback('video/mp4; codecs="avc1.42001E, mp4a.40.2"'),O.nativeWebmVP8Playback=F.supportNativeMediaPlayback('video/webm; codecs="vp8.0, vorbis"'),O.nativeWebmVP9Playback=F.supportNativeMediaPlayback('video/webm; codecs="vp9"'),O}}var U=F,G={ERROR:"error",LOADING_COMPLETE:"loading_complete",RECOVERED_EARLY_EOF:"recovered_early_eof",MEDIA_INFO:"media_info",METADATA_ARRIVED:"metadata_arrived",SCRIPTDATA_ARRIVED:"scriptdata_arrived",STATISTICS_INFO:"statistics_info"};class V{static get forceGlobalTag(){return y.FORCE_GLOBAL_TAG}static set forceGlobalTag(O){y.FORCE_GLOBAL_TAG=O,V._notifyChange()}static get globalTag(){return y.GLOBAL_TAG}static set globalTag(O){y.GLOBAL_TAG=O,V._notifyChange()}static get enableAll(){return y.ENABLE_VERBOSE&&y.ENABLE_DEBUG&&y.ENABLE_INFO&&y.ENABLE_WARN&&y.ENABLE_ERROR}static set enableAll(O){y.ENABLE_VERBOSE=O,y.ENABLE_DEBUG=O,y.ENABLE_INFO=O,y.ENABLE_WARN=O,y.ENABLE_ERROR=O,V._notifyChange()}static get enableDebug(){return y.ENABLE_DEBUG}static set enableDebug(O){y.ENABLE_DEBUG=O,V._notifyChange()}static get enableVerbose(){return y.ENABLE_VERBOSE}static set enableVerbose(O){y.ENABLE_VERBOSE=O,V._notifyChange()}static get enableInfo(){return y.ENABLE_INFO}static set enableInfo(O){y.ENABLE_INFO=O,V._notifyChange()}static get enableWarn(){return y.ENABLE_WARN}static set enableWarn(O){y.ENABLE_WARN=O,V._notifyChange()}static get enableError(){return y.ENABLE_ERROR}static set enableError(O){y.ENABLE_ERROR=O,V._notifyChange()}static getConfig(){return{globalTag:y.GLOBAL_TAG,forceGlobalTag:y.FORCE_GLOBAL_TAG,enableVerbose:y.ENABLE_VERBOSE,enableDebug:y.ENABLE_DEBUG,enableInfo:y.ENABLE_INFO,enableWarn:y.ENABLE_WARN,enableError:y.ENABLE_ERROR,enableCallback:y.ENABLE_CALLBACK}}static applyConfig(O){y.GLOBAL_TAG=O.globalTag,y.FORCE_GLOBAL_TAG=O.forceGlobalTag,y.ENABLE_VERBOSE=O.enableVerbose,y.ENABLE_DEBUG=O.enableDebug,y.ENABLE_INFO=O.enableInfo,y.ENABLE_WARN=O.enableWarn,y.ENABLE_ERROR=O.enableError,y.ENABLE_CALLBACK=O.enableCallback}static _notifyChange(){let O=V.emitter;if(O.listenerCount("change")>0){let W=V.getConfig();O.emit("change",W)}}static registerListener(O){V.emitter.addListener("change",O)}static removeListener(O){V.emitter.removeListener("change",O)}static addLogListener(O){y.emitter.addListener("log",O),y.emitter.listenerCount("log")>0&&(y.ENABLE_CALLBACK=!0,V._notifyChange())}static removeLogListener(O){y.emitter.removeListener("log",O),y.emitter.listenerCount("log")===0&&(y.ENABLE_CALLBACK=!1,V._notifyChange())}}V.emitter=new(g());var X=V;class ee{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 O=this.hasAudio===!1||this.hasAudio===!0&&this.audioCodec!=null&&this.audioSampleRate!=null&&this.audioChannelCount!=null,W=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&&O&&W}isSeekable(){return this.hasKeyframesIndex===!0}getNearestKeyframe(O){if(this.keyframesIndex==null)return null;let W=this.keyframesIndex,z=this._search(W.times,O);return{index:z,milliseconds:W.times[z],fileposition:W.filepositions[z]}}_search(O,W){let z=0,Z=O.length-1,Y=0,se=0,xe=Z;for(W<O[0]&&(z=0,se=xe+1);se<=xe;)if(Y=se+Math.floor((xe-se)/2),Y===Z||W>=O[Y]&&W<O[Y+1]){z=Y;break}else O[Y]<W?se=Y+1:xe=Y-1;return z}}var oe=ee;function ue(Ze,O,W){let z=Ze;if(O+W<z.length){for(;W--;)if((z[++O]&192)!==128)return!1;return!0}else return!1}function Ae(Ze){let O=[],W=Ze,z=0,Z=Ze.length;for(;z<Z;){if(W[z]<128){O.push(String.fromCharCode(W[z])),++z;continue}else if(!(W[z]<192)){if(W[z]<224){if(ue(W,z,1)){let Y=(W[z]&31)<<6|W[z+1]&63;if(Y>=128){O.push(String.fromCharCode(Y&65535)),z+=2;continue}}}else if(W[z]<240){if(ue(W,z,2)){let Y=(W[z]&15)<<12|(W[z+1]&63)<<6|W[z+2]&63;if(Y>=2048&&(Y&63488)!==55296){O.push(String.fromCharCode(Y&65535)),z+=3;continue}}}else if(W[z]<248&&ue(W,z,3)){let Y=(W[z]&7)<<18|(W[z+1]&63)<<12|(W[z+2]&63)<<6|W[z+3]&63;if(Y>65536&&Y<1114112){Y-=65536,O.push(String.fromCharCode(Y>>>10|55296)),O.push(String.fromCharCode(Y&1023|56320)),z+=4;continue}}}O.push("\uFFFD"),++z}return O.join("")}var fe=Ae;let he=function(){let Ze=new ArrayBuffer(2);return new DataView(Ze).setInt16(0,256,!0),new Int16Array(Ze)[0]===256}();class ve{static parseScriptData(O,W,z){let Z={};try{let Y=ve.parseValue(O,W,z),se=ve.parseValue(O,W+Y.size,z-Y.size);Z[Y.data]=se.data}catch(Y){y.e("AMF",Y.toString())}return Z}static parseObject(O,W,z){if(z<3)throw new h("Data not enough when parse ScriptDataObject");let Z=ve.parseString(O,W,z),Y=ve.parseValue(O,W+Z.size,z-Z.size),se=Y.objectEnd;return{data:{name:Z.data,value:Y.data},size:Z.size+Y.size,objectEnd:se}}static parseVariable(O,W,z){return ve.parseObject(O,W,z)}static parseString(O,W,z){if(z<2)throw new h("Data not enough when parse String");let Y=new DataView(O,W,z).getUint16(0,!he),se;return Y>0?se=fe(new Uint8Array(O,W+2,Y)):se="",{data:se,size:2+Y}}static parseLongString(O,W,z){if(z<4)throw new h("Data not enough when parse LongString");let Y=new DataView(O,W,z).getUint32(0,!he),se;return Y>0?se=fe(new Uint8Array(O,W+4,Y)):se="",{data:se,size:4+Y}}static parseDate(O,W,z){if(z<10)throw new h("Data size invalid when parse Date");let Z=new DataView(O,W,z),Y=Z.getFloat64(0,!he),se=Z.getInt16(8,!he);return Y+=se*60*1e3,{data:new Date(Y),size:10}}static parseValue(O,W,z){if(z<1)throw new h("Data not enough when parse Value");let Z=new DataView(O,W,z),Y=1,se=Z.getUint8(0),xe,lt=!1;try{switch(se){case 0:xe=Z.getFloat64(1,!he),Y+=8;break;case 1:{xe=!!Z.getUint8(1),Y+=1;break}case 2:{let Ve=ve.parseString(O,W+1,z-1);xe=Ve.data,Y+=Ve.size;break}case 3:{xe={};let Ve=0;for((Z.getUint32(z-4,!he)&16777215)===9&&(Ve=3);Y<z-4;){let Rt=ve.parseObject(O,W+Y,z-Y-Ve);if(Rt.objectEnd)break;xe[Rt.data.name]=Rt.data.value,Y+=Rt.size}Y<=z-3&&(Z.getUint32(Y-1,!he)&16777215)===9&&(Y+=3);break}case 8:{xe={},Y+=4;let Ve=0;for((Z.getUint32(z-4,!he)&16777215)===9&&(Ve=3);Y<z-8;){let Rt=ve.parseVariable(O,W+Y,z-Y-Ve);if(Rt.objectEnd)break;xe[Rt.data.name]=Rt.data.value,Y+=Rt.size}Y<=z-3&&(Z.getUint32(Y-1,!he)&16777215)===9&&(Y+=3);break}case 9:xe=void 0,Y=1,lt=!0;break;case 10:{xe=[];let Ve=Z.getUint32(1,!he);Y+=4;for(let Rt=0;Rt<Ve;Rt++){let kt=ve.parseValue(O,W+Y,z-Y);xe.push(kt.data),Y+=kt.size}break}case 11:{let Ve=ve.parseDate(O,W+1,z-1);xe=Ve.data,Y+=Ve.size;break}case 12:{let Ve=ve.parseString(O,W+1,z-1);xe=Ve.data,Y+=Ve.size;break}default:Y=z,y.w("AMF","Unsupported AMF value type "+se)}}catch(Ve){y.e("AMF",Ve.toString())}return{data:xe,size:Y,objectEnd:lt}}}var me=ve;class Te{constructor(O){this.TAG="ExpGolomb",this._buffer=O,this._buffer_index=0,this._total_bytes=O.byteLength,this._total_bits=O.byteLength*8,this._current_word=0,this._current_word_bits_left=0}destroy(){this._buffer=null}_fillCurrentWord(){let O=this._total_bytes-this._buffer_index;if(O<=0)throw new h("ExpGolomb: _fillCurrentWord() but no bytes available");let W=Math.min(4,O),z=new Uint8Array(4);z.set(this._buffer.subarray(this._buffer_index,this._buffer_index+W)),this._current_word=new DataView(z.buffer).getUint32(0,!1),this._buffer_index+=W,this._current_word_bits_left=W*8}readBits(O){if(O>32)throw new a("ExpGolomb: readBits() bits exceeded max 32bits!");if(O<=this._current_word_bits_left){let se=this._current_word>>>32-O;return this._current_word<<=O,this._current_word_bits_left-=O,se}let W=this._current_word_bits_left?this._current_word:0;W=W>>>32-this._current_word_bits_left;let z=O-this._current_word_bits_left;this._fillCurrentWord();let Z=Math.min(z,this._current_word_bits_left),Y=this._current_word>>>32-Z;return this._current_word<<=Z,this._current_word_bits_left-=Z,W=W<<Z|Y,W}readBool(){return this.readBits(1)===1}readByte(){return this.readBits(8)}_skipLeadingZero(){let O;for(O=0;O<this._current_word_bits_left;O++)if(this._current_word&2147483648>>>O)return this._current_word<<=O,this._current_word_bits_left-=O,O;return this._fillCurrentWord(),O+this._skipLeadingZero()}readUEG(){let O=this._skipLeadingZero();return this.readBits(O+1)-1}readSEG(){let O=this.readUEG();return O&1?O+1>>>1:-1*(O>>>1)}}var Ce=Te;class ye{static _ebsp2rbsp(O){let W=O,z=W.byteLength,Z=new Uint8Array(z),Y=0;for(let se=0;se<z;se++)se>=2&&W[se]===3&&W[se-1]===0&&W[se-2]===0||(Z[Y]=W[se],Y++);return new Uint8Array(Z.buffer,0,Y)}static parseSPS(O){let W=ye._ebsp2rbsp(O),z=new Ce(W);z.readByte();let Z=z.readByte();z.readByte();let Y=z.readByte();z.readUEG();let se=ye.getProfileString(Z),xe=ye.getLevelString(Y),lt=1,Ve=420,Rt=[0,420,422,444],kt=8;if((Z===100||Z===110||Z===122||Z===244||Z===44||Z===83||Z===86||Z===118||Z===128||Z===138||Z===144)&&(lt=z.readUEG(),lt===3&&z.readBits(1),lt<=3&&(Ve=Rt[lt]),kt=z.readUEG()+8,z.readUEG(),z.readBits(1),z.readBool())){let rn=lt!==3?8:12;for(let Kr=0;Kr<rn;Kr++)z.readBool()&&(Kr<6?ye._skipScalingList(z,16):ye._skipScalingList(z,64))}z.readUEG();let Ut=z.readUEG();if(Ut===0)z.readUEG();else if(Ut===1){z.readBits(1),z.readSEG(),z.readSEG();let rn=z.readUEG();for(let Kr=0;Kr<rn;Kr++)z.readSEG()}let st=z.readUEG();z.readBits(1);let bt=z.readUEG(),wt=z.readUEG(),gt=z.readBits(1);gt===0&&z.readBits(1),z.readBits(1);let xt=0,Gt=0,Vt=0,Xt=0;z.readBool()&&(xt=z.readUEG(),Gt=z.readUEG(),Vt=z.readUEG(),Xt=z.readUEG());let Pr=1,Wt=1,mr=0,_r=!0,wr=0,Rr=0;if(z.readBool()){if(z.readBool()){let rn=z.readByte(),Kr=[1,12,10,16,40,24,20,32,80,18,15,64,160,4,3,2],He=[1,11,11,11,33,11,11,11,33,11,11,33,99,3,2,1];rn>0&&rn<16?(Pr=Kr[rn-1],Wt=He[rn-1]):rn===255&&(Pr=z.readByte()<<8|z.readByte(),Wt=z.readByte()<<8|z.readByte())}if(z.readBool()&&z.readBool(),z.readBool()&&(z.readBits(4),z.readBool()&&z.readBits(24)),z.readBool()&&(z.readUEG(),z.readUEG()),z.readBool()){let rn=z.readBits(32),Kr=z.readBits(32);_r=z.readBool(),wr=Kr,Rr=rn*2,mr=wr/Rr}}let zt=1;(Pr!==1||Wt!==1)&&(zt=Pr/Wt);let Zr=0,_n=0;if(lt===0)Zr=1,_n=2-gt;else{let rn=lt===3?1:2,Kr=lt===1?2:1;Zr=rn,_n=Kr*(2-gt)}let Mr=(bt+1)*16,En=(2-gt)*((wt+1)*16);Mr-=(xt+Gt)*Zr,En-=(Vt+Xt)*_n;let xn=Math.ceil(Mr*zt);return z.destroy(),z=null,{profile_string:se,level_string:xe,bit_depth:kt,ref_frames:st,chroma_format:Ve,chroma_format_string:ye.getChromaFormatString(Ve),frame_rate:{fixed:_r,fps:mr,fps_den:Rr,fps_num:wr},sar_ratio:{width:Pr,height:Wt},codec_size:{width:Mr,height:En},present_size:{width:xn,height:En}}}static _skipScalingList(O,W){let z=8,Z=8,Y=0;for(let se=0;se<W;se++)Z!==0&&(Y=O.readSEG(),Z=(z+Y+256)%256),z=Z===0?z:Z}static getProfileString(O){switch(O){case 66:return"Baseline";case 77:return"Main";case 88:return"Extended";case 100:return"High";case 110:return"High10";case 122:return"High422";case 244:return"High444";default:return"Unknown"}}static getLevelString(O){return(O/10).toFixed(1)}static getChromaFormatString(O){switch(O){case 420:return"4:2:0";case 422:return"4:2:2";case 444:return"4:4:4";default:return"Unknown"}}}var q=ye,$={OK:"OK",FORMAT_ERROR:"FormatError",FORMAT_UNSUPPORTED:"FormatUnsupported",CODEC_UNSUPPORTED:"CodecUnsupported"};function j(Ze){return Ze>>>8&255|(Ze&255)<<8}function re(Ze){return(Ze&4278190080)>>>24|(Ze&16711680)>>>8|(Ze&65280)<<8|(Ze&255)<<24}function k(Ze,O){return Ze[O]<<24|Ze[O+1]<<16|Ze[O+2]<<8|Ze[O+3]}class te{constructor(O,W){this.TAG="FLVDemuxer",this._config=W,this._onError=null,this._onMediaInfo=null,this._onMetaDataArrived=null,this._onScriptDataArrived=null,this._onTrackMetadata=null,this._onDataAvailable=null,this._dataOffset=O.dataOffset,this._firstParse=!0,this._dispatch=!1,this._hasAudio=O.hasAudioTrack,this._hasVideo=O.hasVideoTrack,this._hasAudioFlagOverrided=!1,this._hasVideoFlagOverrided=!1,this._audioInitialMetadataDispatched=!1,this._videoInitialMetadataDispatched=!1,this._mediaInfo=new oe,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 z=new ArrayBuffer(2);return new DataView(z).setInt16(0,256,!0),new Int16Array(z)[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(O){let W=new Uint8Array(O),z={match:!1};if(W[0]!==70||W[1]!==76||W[2]!==86||W[3]!==1)return z;let Z=(W[4]&4)>>>2!==0,Y=(W[4]&1)!==0,se=k(W,5);return se<9?z:{match:!0,consumed:se,dataOffset:se,hasAudioTrack:Z,hasVideoTrack:Y}}bindDataSource(O){return O.onDataArrival=this.parseChunks.bind(this),this}get onTrackMetadata(){return this._onTrackMetadata}set onTrackMetadata(O){this._onTrackMetadata=O}get onMediaInfo(){return this._onMediaInfo}set onMediaInfo(O){this._onMediaInfo=O}get onMetaDataArrived(){return this._onMetaDataArrived}set onMetaDataArrived(O){this._onMetaDataArrived=O}get onScriptDataArrived(){return this._onScriptDataArrived}set onScriptDataArrived(O){this._onScriptDataArrived=O}get onError(){return this._onError}set onError(O){this._onError=O}get onDataAvailable(){return this._onDataAvailable}set onDataAvailable(O){this._onDataAvailable=O}get timestampBase(){return this._timestampBase}set timestampBase(O){this._timestampBase=O}get overridedDuration(){return this._duration}set overridedDuration(O){this._durationOverrided=!0,this._duration=O,this._mediaInfo.duration=O}set overridedHasAudio(O){this._hasAudioFlagOverrided=!0,this._hasAudio=O,this._mediaInfo.hasAudio=O}set overridedHasVideo(O){this._hasVideoFlagOverrided=!0,this._hasVideo=O,this._mediaInfo.hasVideo=O}resetMediaInfo(){this._mediaInfo=new oe}_isInitialMetadataDispatched(){return this._hasAudio&&this._hasVideo?this._audioInitialMetadataDispatched&&this._videoInitialMetadataDispatched:this._hasAudio&&!this._hasVideo?this._audioInitialMetadataDispatched:!this._hasAudio&&this._hasVideo?this._videoInitialMetadataDispatched:!1}parseChunks(O,W){if(!this._onError||!this._onMediaInfo||!this._onTrackMetadata||!this._onDataAvailable)throw new h("Flv: onError & onMediaInfo & onTrackMetadata & onDataAvailable callback must be specified");let z=0,Z=this._littleEndian;if(W===0)if(O.byteLength>13)z=te.probe(O).dataOffset;else return 0;for(this._firstParse&&(this._firstParse=!1,W+z!==this._dataOffset&&y.w(this.TAG,"First time parsing but chunk byteStart invalid!"),new DataView(O,z).getUint32(0,!Z)!==0&&y.w(this.TAG,"PrevTagSize0 !== 0 !!!"),z+=4);z<O.byteLength;){this._dispatch=!0;let Y=new DataView(O,z);if(z+11+4>O.byteLength)break;let se=Y.getUint8(0),xe=Y.getUint32(0,!Z)&16777215;if(z+11+xe+4>O.byteLength)break;if(se!==8&&se!==9&&se!==18){y.w(this.TAG,`Unsupported tag type ${se}, skipped`),z+=11+xe+4;continue}let lt=Y.getUint8(4),Ve=Y.getUint8(5),Rt=Y.getUint8(6),kt=Y.getUint8(7),Ut=Rt|Ve<<8|lt<<16|kt<<24;(Y.getUint32(7,!Z)&16777215)!==0&&y.w(this.TAG,"Meet tag which has StreamID != 0!");let bt=z+11;switch(se){case 8:this._parseAudioData(O,bt,xe,Ut);break;case 9:this._parseVideoData(O,bt,xe,Ut,W+z);break;case 18:this._parseScriptData(O,bt,xe);break}let wt=Y.getUint32(11+xe,!Z);wt!==11+xe&&y.w(this.TAG,`Invalid PrevTagSize ${wt}`),z+=11+xe+4}return this._isInitialMetadataDispatched()&&this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack),z}_parseScriptData(O,W,z){let Z=me.parseScriptData(O,W,z);if(Z.hasOwnProperty("onMetaData")){if(Z.onMetaData==null||typeof Z.onMetaData!="object"){y.w(this.TAG,"Invalid onMetaData structure!");return}this._metadata&&y.w(this.TAG,"Found another onMetaData tag!"),this._metadata=Z;let Y=this._metadata.onMetaData;if(this._onMetaDataArrived&&this._onMetaDataArrived(Object.assign({},Y)),typeof Y.hasAudio=="boolean"&&this._hasAudioFlagOverrided===!1&&(this._hasAudio=Y.hasAudio,this._mediaInfo.hasAudio=this._hasAudio),typeof Y.hasVideo=="boolean"&&this._hasVideoFlagOverrided===!1&&(this._hasVideo=Y.hasVideo,this._mediaInfo.hasVideo=this._hasVideo),typeof Y.audiodatarate=="number"&&(this._mediaInfo.audioDataRate=Y.audiodatarate),typeof Y.videodatarate=="number"&&(this._mediaInfo.videoDataRate=Y.videodatarate),typeof Y.width=="number"&&(this._mediaInfo.width=Y.width),typeof Y.height=="number"&&(this._mediaInfo.height=Y.height),typeof Y.duration=="number"){if(!this._durationOverrided){let se=Math.floor(Y.duration*this._timescale);this._duration=se,this._mediaInfo.duration=se}}else this._mediaInfo.duration=0;if(typeof Y.framerate=="number"){let se=Math.floor(Y.framerate*1e3);if(se>0){let xe=se/1e3;this._referenceFrameRate.fixed=!0,this._referenceFrameRate.fps=xe,this._referenceFrameRate.fps_num=se,this._referenceFrameRate.fps_den=1e3,this._mediaInfo.fps=xe}}if(typeof Y.keyframes=="object"){this._mediaInfo.hasKeyframesIndex=!0;let se=Y.keyframes;this._mediaInfo.keyframesIndex=this._parseKeyframesIndex(se),Y.keyframes=null}else this._mediaInfo.hasKeyframesIndex=!1;this._dispatch=!1,this._mediaInfo.metadata=Y,y.v(this.TAG,"Parsed onMetaData"),this._mediaInfo.isComplete()&&this._onMediaInfo(this._mediaInfo)}Object.keys(Z).length>0&&this._onScriptDataArrived&&this._onScriptDataArrived(Object.assign({},Z))}_parseKeyframesIndex(O){let W=[],z=[];for(let Z=1;Z<O.times.length;Z++){let Y=this._timestampBase+Math.floor(O.times[Z]*1e3);W.push(Y),z.push(O.filepositions[Z])}return{times:W,filepositions:z}}_parseAudioData(O,W,z,Z){if(z<=1){y.w(this.TAG,"Flv: Invalid audio packet, missing SoundData payload!");return}if(this._hasAudioFlagOverrided===!0&&this._hasAudio===!1)return;let Y=this._littleEndian,xe=new DataView(O,W,z).getUint8(0),lt=xe>>>4;if(lt!==2&<!==10){this._onError($.CODEC_UNSUPPORTED,"Flv: Unsupported audio codec idx: "+lt);return}let Ve=0,Rt=(xe&12)>>>2;if(Rt>=0&&Rt<=4)Ve=this._flvSoundRateTable[Rt];else{this._onError($.FORMAT_ERROR,"Flv: Invalid audio sample rate idx: "+Rt);return}let kt=(xe&2)>>>1,Ut=xe&1,st=this._audioMetadata,bt=this._audioTrack;if(st||(this._hasAudio===!1&&this._hasAudioFlagOverrided===!1&&(this._hasAudio=!0,this._mediaInfo.hasAudio=!0),st=this._audioMetadata={},st.type="audio",st.id=bt.id,st.timescale=this._timescale,st.duration=this._duration,st.audioSampleRate=Ve,st.channelCount=Ut===0?1:2),lt===10){let wt=this._parseAACAudioData(O,W+1,z-1);if(wt==null)return;if(wt.packetType===0){st.config&&y.w(this.TAG,"Found another AudioSpecificConfig!");let gt=wt.data;st.audioSampleRate=gt.samplingRate,st.channelCount=gt.channelCount,st.codec=gt.codec,st.originalCodec=gt.originalCodec,st.config=gt.config,st.refSampleDuration=1024/st.audioSampleRate*st.timescale,y.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",st);let xt=this._mediaInfo;xt.audioCodec=st.originalCodec,xt.audioSampleRate=st.audioSampleRate,xt.audioChannelCount=st.channelCount,xt.hasVideo?xt.videoCodec!=null&&(xt.mimeType='video/x-flv; codecs="'+xt.videoCodec+","+xt.audioCodec+'"'):xt.mimeType='video/x-flv; codecs="'+xt.audioCodec+'"',xt.isComplete()&&this._onMediaInfo(xt)}else if(wt.packetType===1){let gt=this._timestampBase+Z,xt={unit:wt.data,length:wt.data.byteLength,dts:gt,pts:gt};bt.samples.push(xt),bt.length+=wt.data.length}else y.e(this.TAG,`Flv: Unsupported AAC data type ${wt.packetType}`)}else if(lt===2){if(!st.codec){let Gt=this._parseMP3AudioData(O,W+1,z-1,!0);if(Gt==null)return;st.audioSampleRate=Gt.samplingRate,st.channelCount=Gt.channelCount,st.codec=Gt.codec,st.originalCodec=Gt.originalCodec,st.refSampleDuration=1152/st.audioSampleRate*st.timescale,y.v(this.TAG,"Parsed MPEG Audio Frame Header"),this._audioInitialMetadataDispatched=!0,this._onTrackMetadata("audio",st);let Vt=this._mediaInfo;Vt.audioCodec=st.codec,Vt.audioSampleRate=st.audioSampleRate,Vt.audioChannelCount=st.channelCount,Vt.audioDataRate=Gt.bitRate,Vt.hasVideo?Vt.videoCodec!=null&&(Vt.mimeType='video/x-flv; codecs="'+Vt.videoCodec+","+Vt.audioCodec+'"'):Vt.mimeType='video/x-flv; codecs="'+Vt.audioCodec+'"',Vt.isComplete()&&this._onMediaInfo(Vt)}let wt=this._parseMP3AudioData(O,W+1,z-1,!1);if(wt==null)return;let gt=this._timestampBase+Z,xt={unit:wt,length:wt.byteLength,dts:gt,pts:gt};bt.samples.push(xt),bt.length+=wt.length}}_parseAACAudioData(O,W,z){if(z<=1){y.w(this.TAG,"Flv: Invalid AAC packet, missing AACPacketType or/and Data!");return}let Z={},Y=new Uint8Array(O,W,z);return Z.packetType=Y[0],Y[0]===0?Z.data=this._parseAACAudioSpecificConfig(O,W+1,z-1):Z.data=Y.subarray(1),Z}_parseAACAudioSpecificConfig(O,W,z){let Z=new Uint8Array(O,W,z),Y=null,se=0,xe=0,lt=null,Ve=0,Rt=null;if(se=xe=Z[0]>>>3,Ve=(Z[0]&7)<<1|Z[1]>>>7,Ve<0||Ve>=this._mpegSamplingRates.length){this._onError($.FORMAT_ERROR,"Flv: AAC invalid sampling frequency index!");return}let kt=this._mpegSamplingRates[Ve],Ut=(Z[1]&120)>>>3;if(Ut<0||Ut>=8){this._onError($.FORMAT_ERROR,"Flv: AAC invalid channel configuration");return}se===5&&(Rt=(Z[1]&7)<<1|Z[2]>>>7,lt=(Z[2]&124)>>>2);let st=self.navigator.userAgent.toLowerCase();return st.indexOf("firefox")!==-1?Ve>=6?(se=5,Y=new Array(4),Rt=Ve-3):(se=2,Y=new Array(2),Rt=Ve):st.indexOf("android")!==-1?(se=2,Y=new Array(2),Rt=Ve):(se=5,Rt=Ve,Y=new Array(4),Ve>=6?Rt=Ve-3:Ut===1&&(se=2,Y=new Array(2),Rt=Ve)),Y[0]=se<<3,Y[0]|=(Ve&15)>>>1,Y[1]=(Ve&15)<<7,Y[1]|=(Ut&15)<<3,se===5&&(Y[1]|=(Rt&15)>>>1,Y[2]=(Rt&1)<<7,Y[2]|=8,Y[3]=0),{config:Y,samplingRate:kt,channelCount:Ut,codec:"mp4a.40."+se,originalCodec:"mp4a.40."+xe}}_parseMP3AudioData(O,W,z,Z){if(z<4){y.w(this.TAG,"Flv: Invalid MP3 packet, header missing!");return}let Y=this._littleEndian,se=new Uint8Array(O,W,z),xe=null;if(Z){if(se[0]!==255)return;let lt=se[1]>>>3&3,Ve=(se[1]&6)>>1,Rt=(se[2]&240)>>>4,kt=(se[2]&12)>>>2,st=(se[3]>>>6&3)!==3?2:1,bt=0,wt=0,gt=34,xt="mp3";switch(lt){case 0:bt=this._mpegAudioV25SampleRateTable[kt];break;case 2:bt=this._mpegAudioV20SampleRateTable[kt];break;case 3:bt=this._mpegAudioV10SampleRateTable[kt];break}switch(Ve){case 1:gt=34,Rt<this._mpegAudioL3BitRateTable.length&&(wt=this._mpegAudioL3BitRateTable[Rt]);break;case 2:gt=33,Rt<this._mpegAudioL2BitRateTable.length&&(wt=this._mpegAudioL2BitRateTable[Rt]);break;case 3:gt=32,Rt<this._mpegAudioL1BitRateTable.length&&(wt=this._mpegAudioL1BitRateTable[Rt]);break}xe={bitRate:wt,samplingRate:bt,channelCount:st,codec:xt,originalCodec:xt}}else xe=se;return xe}_parseVideoData(O,W,z,Z,Y){if(z<=1){y.w(this.TAG,"Flv: Invalid video packet, missing VideoData payload!");return}if(this._hasVideoFlagOverrided===!0&&this._hasVideo===!1)return;let se=new Uint8Array(O,W,z)[0],xe=(se&240)>>>4,lt=se&15;if(lt!==7){this._onError($.CODEC_UNSUPPORTED,`Flv: Unsupported codec in video frame: ${lt}`);return}this._parseAVCVideoPacket(O,W+1,z-1,Z,Y,xe)}_parseAVCVideoPacket(O,W,z,Z,Y,se){if(z<4){y.w(this.TAG,"Flv: Invalid AVC packet, missing AVCPacketType or/and CompositionTime");return}let xe=this._littleEndian,lt=new DataView(O,W,z),Ve=lt.getUint8(0),kt=(lt.getUint32(0,!xe)&16777215)<<8>>8;if(Ve===0)this._parseAVCDecoderConfigurationRecord(O,W+4,z-4);else if(Ve===1)this._parseAVCVideoData(O,W+4,z-4,Z,Y,se,kt);else if(Ve!==2){this._onError($.FORMAT_ERROR,`Flv: Invalid video packet type ${Ve}`);return}}_parseAVCDecoderConfigurationRecord(O,W,z){if(z<7){y.w(this.TAG,"Flv: Invalid AVCDecoderConfigurationRecord, lack of data!");return}let Z=this._videoMetadata,Y=this._videoTrack,se=this._littleEndian,xe=new DataView(O,W,z);Z?typeof Z.avcc!="undefined"&&y.w(this.TAG,"Found another AVCDecoderConfigurationRecord!"):(this._hasVideo===!1&&this._hasVideoFlagOverrided===!1&&(this._hasVideo=!0,this._mediaInfo.hasVideo=!0),Z=this._videoMetadata={},Z.type="video",Z.id=Y.id,Z.timescale=this._timescale,Z.duration=this._duration);let lt=xe.getUint8(0),Ve=xe.getUint8(1),Rt=xe.getUint8(2),kt=xe.getUint8(3);if(lt!==1||Ve===0){this._onError($.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord");return}if(this._naluLengthSize=(xe.getUint8(4)&3)+1,this._naluLengthSize!==3&&this._naluLengthSize!==4){this._onError($.FORMAT_ERROR,`Flv: Strange NaluLengthSizeMinusOne: ${this._naluLengthSize-1}`);return}let Ut=xe.getUint8(5)&31;if(Ut===0){this._onError($.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord: No SPS");return}else Ut>1&&y.w(this.TAG,`Flv: Strange AVCDecoderConfigurationRecord: SPS Count = ${Ut}`);let st=6;for(let wt=0;wt<Ut;wt++){let gt=xe.getUint16(st,!se);if(st+=2,gt===0)continue;let xt=new Uint8Array(O,W+st,gt);st+=gt;let Gt=q.parseSPS(xt);if(wt!==0)continue;Z.codecWidth=Gt.codec_size.width,Z.codecHeight=Gt.codec_size.height,Z.presentWidth=Gt.present_size.width,Z.presentHeight=Gt.present_size.height,Z.profile=Gt.profile_string,Z.level=Gt.level_string,Z.bitDepth=Gt.bit_depth,Z.chromaFormat=Gt.chroma_format,Z.sarRatio=Gt.sar_ratio,Z.frameRate=Gt.frame_rate,(Gt.frame_rate.fixed===!1||Gt.frame_rate.fps_num===0||Gt.frame_rate.fps_den===0)&&(Z.frameRate=this._referenceFrameRate);let Vt=Z.frameRate.fps_den,Xt=Z.frameRate.fps_num;Z.refSampleDuration=Z.timescale*(Vt/Xt);let hr=xt.subarray(1,4),Pr="avc1.";for(let mr=0;mr<3;mr++){let _r=hr[mr].toString(16);_r.length<2&&(_r="0"+_r),Pr+=_r}Z.codec=Pr;let Wt=this._mediaInfo;Wt.width=Z.codecWidth,Wt.height=Z.codecHeight,Wt.fps=Z.frameRate.fps,Wt.profile=Z.profile,Wt.level=Z.level,Wt.refFrames=Gt.ref_frames,Wt.chromaFormat=Gt.chroma_format_string,Wt.sarNum=Z.sarRatio.width,Wt.sarDen=Z.sarRatio.height,Wt.videoCodec=Pr,Wt.hasAudio?Wt.audioCodec!=null&&(Wt.mimeType='video/x-flv; codecs="'+Wt.videoCodec+","+Wt.audioCodec+'"'):Wt.mimeType='video/x-flv; codecs="'+Wt.videoCodec+'"',Wt.isComplete()&&this._onMediaInfo(Wt)}let bt=xe.getUint8(st);if(bt===0){this._onError($.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord: No PPS");return}else bt>1&&y.w(this.TAG,`Flv: Strange AVCDecoderConfigurationRecord: PPS Count = ${bt}`);st++;for(let wt=0;wt<bt;wt++){let gt=xe.getUint16(st,!se);st+=2,gt!==0&&(st+=gt)}Z.avcc=new Uint8Array(z),Z.avcc.set(new Uint8Array(O,W,z),0),y.v(this.TAG,"Parsed AVCDecoderConfigurationRecord"),this._isInitialMetadataDispatched()?this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack):this._videoInitialMetadataDispatched=!0,this._dispatch=!1,this._onTrackMetadata("video",Z)}_parseAVCVideoData(O,W,z,Z,Y,se,xe){let lt=this._littleEndian,Ve=new DataView(O,W,z),Rt=[],kt=0,Ut=0;const st=this._naluLengthSize;let bt=this._timestampBase+Z,wt=se===1;for(;Ut<z;){if(Ut+4>=z){y.w(this.TAG,`Malformed Nalu near timestamp ${bt}, offset = ${Ut}, dataSize = ${z}`);break}let gt=Ve.getUint32(Ut,!lt);if(st===3&&(gt>>>=8),gt>z-st){y.w(this.TAG,`Malformed Nalus near timestamp ${bt}, NaluSize > DataSize!`);return}let xt=Ve.getUint8(Ut+st)&31;xt===5&&(wt=!0);let Gt=new Uint8Array(O,W+Ut,st+gt),Vt={type:xt,data:Gt};Rt.push(Vt),kt+=Gt.byteLength,Ut+=st+gt}if(Rt.length){let gt=this._videoTrack,xt={units:Rt,length:kt,isKeyframe:wt,dts:bt,cts:xe,pts:bt+xe};wt&&(xt.fileposition=Y),gt.samples.push(xt),gt.length+=kt}}}var ie=te;class J{static init(){J.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 W in J.types)J.types.hasOwnProperty(W)&&(J.types[W]=[W.charCodeAt(0),W.charCodeAt(1),W.charCodeAt(2),W.charCodeAt(3)]);let O=J.constants={};O.FTYP=new Uint8Array([105,115,111,109,0,0,0,1,105,115,111,109,97,118,99,49]),O.STSD_PREFIX=new Uint8Array([0,0,0,0,0,0,0,1]),O.STTS=new Uint8Array([0,0,0,0,0,0,0,0]),O.STSC=O.STCO=O.STTS,O.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),O.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]),O.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]),O.DREF=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),O.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),O.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0])}static box(O){let W=8,z=null,Z=Array.prototype.slice.call(arguments,1),Y=Z.length;for(let xe=0;xe<Y;xe++)W+=Z[xe].byteLength;z=new Uint8Array(W),z[0]=W>>>24&255,z[1]=W>>>16&255,z[2]=W>>>8&255,z[3]=W&255,z.set(O,4);let se=8;for(let xe=0;xe<Y;xe++)z.set(Z[xe],se),se+=Z[xe].byteLength;return z}static generateInitSegment(O){let W=J.box(J.types.ftyp,J.constants.FTYP),z=J.moov(O),Z=new Uint8Array(W.byteLength+z.byteLength);return Z.set(W,0),Z.set(z,W.byteLength),Z}static moov(O){let W=J.mvhd(O.timescale,O.duration),z=J.trak(O),Z=J.mvex(O);return J.box(J.types.moov,W,z,Z)}static mvhd(O,W){return J.box(J.types.mvhd,new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,O>>>24&255,O>>>16&255,O>>>8&255,O&255,W>>>24&255,W>>>16&255,W>>>8&255,W&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(O){return J.box(J.types.trak,J.tkhd(O),J.mdia(O))}static tkhd(O){let W=O.id,z=O.duration,Z=O.presentWidth,Y=O.presentHeight;return J.box(J.types.tkhd,new Uint8Array([0,0,0,7,0,0,0,0,0,0,0,0,W>>>24&255,W>>>16&255,W>>>8&255,W&255,0,0,0,0,z>>>24&255,z>>>16&255,z>>>8&255,z&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,Z>>>8&255,Z&255,0,0,Y>>>8&255,Y&255,0,0]))}static mdia(O){return J.box(J.types.mdia,J.mdhd(O),J.hdlr(O),J.minf(O))}static mdhd(O){let W=O.timescale,z=O.duration;return J.box(J.types.mdhd,new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,W>>>24&255,W>>>16&255,W>>>8&255,W&255,z>>>24&255,z>>>16&255,z>>>8&255,z&255,85,196,0,0]))}static hdlr(O){let W=null;return O.type==="audio"?W=J.constants.HDLR_AUDIO:W=J.constants.HDLR_VIDEO,J.box(J.types.hdlr,W)}static minf(O){let W=null;return O.type==="audio"?W=J.box(J.types.smhd,J.constants.SMHD):W=J.box(J.types.vmhd,J.constants.VMHD),J.box(J.types.minf,W,J.dinf(),J.stbl(O))}static dinf(){return J.box(J.types.dinf,J.box(J.types.dref,J.constants.DREF))}static stbl(O){return J.box(J.types.stbl,J.stsd(O),J.box(J.types.stts,J.constants.STTS),J.box(J.types.stsc,J.constants.STSC),J.box(J.types.stsz,J.constants.STSZ),J.box(J.types.stco,J.constants.STCO))}static stsd(O){return O.type==="audio"?O.codec==="mp3"?J.box(J.types.stsd,J.constants.STSD_PREFIX,J.mp3(O)):J.box(J.types.stsd,J.constants.STSD_PREFIX,J.mp4a(O)):J.box(J.types.stsd,J.constants.STSD_PREFIX,J.avc1(O))}static mp3(O){let W=O.channelCount,z=O.audioSampleRate,Z=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,W,0,16,0,0,0,0,z>>>8&255,z&255,0,0]);return J.box(J.types[".mp3"],Z)}static mp4a(O){let W=O.channelCount,z=O.audioSampleRate,Z=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,W,0,16,0,0,0,0,z>>>8&255,z&255,0,0]);return J.box(J.types.mp4a,Z,J.esds(O))}static esds(O){let W=O.config||[],z=W.length,Z=new Uint8Array([0,0,0,0,3,23+z,0,1,0,4,15+z,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([z]).concat(W).concat([6,1,2]));return J.box(J.types.esds,Z)}static avc1(O){let W=O.avcc,z=O.codecWidth,Z=O.codecHeight,Y=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,z>>>8&255,z&255,Z>>>8&255,Z&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 J.box(J.types.avc1,Y,J.box(J.types.avcC,W))}static mvex(O){return J.box(J.types.mvex,J.trex(O))}static trex(O){let W=O.id,z=new Uint8Array([0,0,0,0,W>>>24&255,W>>>16&255,W>>>8&255,W&255,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return J.box(J.types.trex,z)}static moof(O,W){return J.box(J.types.moof,J.mfhd(O.sequenceNumber),J.traf(O,W))}static mfhd(O){let W=new Uint8Array([0,0,0,0,O>>>24&255,O>>>16&255,O>>>8&255,O&255]);return J.box(J.types.mfhd,W)}static traf(O,W){let z=O.id,Z=J.box(J.types.tfhd,new Uint8Array([0,0,0,0,z>>>24&255,z>>>16&255,z>>>8&255,z&255])),Y=J.box(J.types.tfdt,new Uint8Array([0,0,0,0,W>>>24&255,W>>>16&255,W>>>8&255,W&255])),se=J.sdtp(O),xe=J.trun(O,se.byteLength+16+16+8+16+8+8);return J.box(J.types.traf,Z,Y,xe,se)}static sdtp(O){let W=O.samples||[],z=W.length,Z=new Uint8Array(4+z);for(let Y=0;Y<z;Y++){let se=W[Y].flags;Z[Y+4]=se.isLeading<<6|se.dependsOn<<4|se.isDependedOn<<2|se.hasRedundancy}return J.box(J.types.sdtp,Z)}static trun(O,W){let z=O.samples||[],Z=z.length,Y=12+16*Z,se=new Uint8Array(Y);W+=8+Y,se.set([0,0,15,1,Z>>>24&255,Z>>>16&255,Z>>>8&255,Z&255,W>>>24&255,W>>>16&255,W>>>8&255,W&255],0);for(let xe=0;xe<Z;xe++){let lt=z[xe].duration,Ve=z[xe].size,Rt=z[xe].flags,kt=z[xe].cts;se.set([lt>>>24&255,lt>>>16&255,lt>>>8&255,lt&255,Ve>>>24&255,Ve>>>16&255,Ve>>>8&255,Ve&255,Rt.isLeading<<2|Rt.dependsOn,Rt.isDependedOn<<6|Rt.hasRedundancy<<4|Rt.isNonSync,0,0,kt>>>24&255,kt>>>16&255,kt>>>8&255,kt&255],12+16*xe)}return J.box(J.types.trun,se)}static mdat(O){return J.box(J.types.mdat,O)}}J.init();var ce=J;class Se{static getSilentFrame(O,W){if(O==="mp4a.40.2"){if(W===1)return new Uint8Array([0,200,0,128,35,128]);if(W===2)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(W===3)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(W===4)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(W===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(W===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(W===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(W===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(W===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 Le=Se;class ze{constructor(O,W,z,Z,Y){this.dts=O,this.pts=W,this.duration=z,this.originalDts=Z,this.isSyncPoint=Y,this.fileposition=null}}class We{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(O){O.isSyncPoint=!0,this.syncPoints.push(O)}}class tt{constructor(){this._list=[]}clear(){this._list=[]}appendArray(O){let W=this._list;O.length!==0&&(W.length>0&&O[0].originalDts<W[W.length-1].originalDts&&this.clear(),Array.prototype.push.apply(W,O))}getLastSyncPointBeforeDts(O){if(this._list.length==0)return null;let W=this._list,z=0,Z=W.length-1,Y=0,se=0,xe=Z;for(O<W[0].dts&&(z=0,se=xe+1);se<=xe;)if(Y=se+Math.floor((xe-se)/2),Y===Z||O>=W[Y].dts&&O<W[Y+1].dts){z=Y;break}else W[Y].dts<O?se=Y+1:xe=Y-1;return this._list[z]}}class je{constructor(O){this._type=O,this._list=[],this._lastAppendLocation=-1}get type(){return this._type}get length(){return this._list.length}isEmpty(){return this._list.length===0}clear(){this._list=[],this._lastAppendLocation=-1}_searchNearestSegmentBefore(O){let W=this._list;if(W.length===0)return-2;let z=W.length-1,Z=0,Y=0,se=z,xe=0;if(O<W[0].originalBeginDts)return xe=-1,xe;for(;Y<=se;)if(Z=Y+Math.floor((se-Y)/2),Z===z||O>W[Z].lastSample.originalDts&&O<W[Z+1].originalBeginDts){xe=Z;break}else W[Z].originalBeginDts<O?Y=Z+1:se=Z-1;return xe}_searchNearestSegmentAfter(O){return this._searchNearestSegmentBefore(O)+1}append(O){let W=this._list,z=O,Z=this._lastAppendLocation,Y=0;Z!==-1&&Z<W.length&&z.originalBeginDts>=W[Z].lastSample.originalDts&&(Z===W.length-1||Z<W.length-1&&z.originalBeginDts<W[Z+1].originalBeginDts)?Y=Z+1:W.length>0&&(Y=this._searchNearestSegmentBefore(z.originalBeginDts)+1),this._lastAppendLocation=Y,this._list.splice(Y,0,z)}getLastSegmentBefore(O){let W=this._searchNearestSegmentBefore(O);return W>=0?this._list[W]:null}getLastSampleBefore(O){let W=this.getLastSegmentBefore(O);return W!=null?W.lastSample:null}getLastSyncPointBefore(O){let W=this._searchNearestSegmentBefore(O),z=this._list[W].syncPoints;for(;z.length===0&&W>0;)W--,z=this._list[W].syncPoints;return z.length>0?z[z.length-1]:null}}class pe{constructor(O){this.TAG="MP4Remuxer",this._config=O,this._isLive=O.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 je("audio"),this._videoSegmentInfoList=new je("video"),this._onInitSegment=null,this._onMediaSegment=null,this._forceFirstIDR=!!(s.chrome&&(s.version.major<50||s.version.major===50&&s.version.build<2661)),this._fillSilentAfterSeek=s.msedge||s.msie,this._mp3UseMpegAudio=!s.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(O){return O.onDataAvailable=this.remux.bind(this),O.onTrackMetadata=this._onTrackMetadataReceived.bind(this),this}get onInitSegment(){return this._onInitSegment}set onInitSegment(O){this._onInitSegment=O}get onMediaSegment(){return this._onMediaSegment}set onMediaSegment(O){this._onMediaSegment=O}insertDiscontinuity(){this._audioNextDts=this._videoNextDts=void 0}seek(O){this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._videoSegmentInfoList.clear(),this._audioSegmentInfoList.clear()}remux(O,W){if(!this._onMediaSegment)throw new h("MP4Remuxer: onMediaSegment callback must be specificed!");this._dtsBaseInited||this._calculateDtsBase(O,W),this._remuxVideo(W),this._remuxAudio(O)}_onTrackMetadataReceived(O,W){let z=null,Z="mp4",Y=W.codec;if(O==="audio")this._audioMeta=W,W.codec==="mp3"&&this._mp3UseMpegAudio?(Z="mpeg",Y="",z=new Uint8Array):z=ce.generateInitSegment(W);else if(O==="video")this._videoMeta=W,z=ce.generateInitSegment(W);else return;if(!this._onInitSegment)throw new h("MP4Remuxer: onInitSegment callback must be specified!");this._onInitSegment(O,{type:O,data:z.buffer,codec:Y,container:`${O}/${Z}`,mediaDuration:W.duration})}_calculateDtsBase(O,W){this._dtsBaseInited||(O.samples&&O.samples.length&&(this._audioDtsBase=O.samples[0].dts),W.samples&&W.samples.length&&(this._videoDtsBase=W.samples[0].dts),this._dtsBase=Math.min(this._audioDtsBase,this._videoDtsBase),this._dtsBaseInited=!0)}flushStashedSamples(){let O=this._videoStashedLastSample,W=this._audioStashedLastSample,z={type:"video",id:1,sequenceNumber:0,samples:[],length:0};O!=null&&(z.samples.push(O),z.length=O.length);let Z={type:"audio",id:2,sequenceNumber:0,samples:[],length:0};W!=null&&(Z.samples.push(W),Z.length=W.length),this._videoStashedLastSample=null,this._audioStashedLastSample=null,this._remuxVideo(z,!0),this._remuxAudio(Z,!0)}_remuxAudio(O,W){if(this._audioMeta==null)return;let z=O,Z=z.samples,Y,se=-1,xe=-1,lt=-1,Ve=this._audioMeta.refSampleDuration,Rt=this._audioMeta.codec==="mp3"&&this._mp3UseMpegAudio,kt=this._dtsBaseInited&&this._audioNextDts===void 0,Ut=!1;if(!Z||Z.length===0||Z.length===1&&!W)return;let st=0,bt=null,wt=0;Rt?(st=0,wt=z.length):(st=8,wt=8+z.length);let gt=null;if(Z.length>1&&(gt=Z.pop(),wt-=gt.length),this._audioStashedLastSample!=null){let Wt=this._audioStashedLastSample;this._audioStashedLastSample=null,Z.unshift(Wt),wt+=Wt.length}gt!=null&&(this._audioStashedLastSample=gt);let xt=Z[0].dts-this._dtsBase;if(this._audioNextDts)Y=xt-this._audioNextDts;else if(this._audioSegmentInfoList.isEmpty())Y=0,this._fillSilentAfterSeek&&!this._videoSegmentInfoList.isEmpty()&&this._audioMeta.originalCodec!=="mp3"&&(Ut=!0);else{let Wt=this._audioSegmentInfoList.getLastSampleBefore(xt);if(Wt!=null){let mr=xt-(Wt.originalDts+Wt.duration);mr<=3&&(mr=0);let _r=Wt.dts+Wt.duration+mr;Y=xt-_r}else Y=0}if(Ut){let Wt=xt-Y,mr=this._videoSegmentInfoList.getLastSegmentBefore(xt);if(mr!=null&&mr.beginDts<Wt){let _r=Le.getSilentFrame(this._audioMeta.originalCodec,this._audioMeta.channelCount);if(_r){let wr=mr.beginDts,Rr=Wt-mr.beginDts;y.v(this.TAG,`InsertPrefixSilentAudio: dts: ${wr}, duration: ${Rr}`),Z.unshift({unit:_r,dts:wr,pts:wr}),wt+=_r.byteLength}}else Ut=!1}let Gt=[];for(let Wt=0;Wt<Z.length;Wt++){let mr=Z[Wt],_r=mr.unit,wr=mr.dts-this._dtsBase,Rr=wr-Y;se===-1&&(se=Rr);let un=0;Wt!==Z.length-1?un=Z[Wt+1].dts-this._dtsBase-Y-Rr:gt!=null?un=gt.dts-this._dtsBase-Y-Rr:Gt.length>=1?un=Gt[Gt.length-1].duration:un=Math.floor(Ve);let zt=!1,Zr=null;if(un>Ve*1.5&&this._audioMeta.codec!=="mp3"&&this._fillAudioTimestampGap&&!s.safari){zt=!0;let _n=Math.abs(un-Ve),Mr=Math.ceil(_n/Ve),En=Rr+Ve;y.w(this.TAG,`Large audio timestamp gap detected, may cause AV sync to drift. Silent frames will be generated to avoid unsync.
|
|
dts: ${Rr+un} ms, expected: ${Rr+Math.round(Ve)} ms, delta: ${Math.round(_n)} ms, generate: ${Mr} frames`);let xn=Le.getSilentFrame(this._audioMeta.originalCodec,this._audioMeta.channelCount);xn==null&&(y.w(this.TAG,`Unable to generate silent frame for ${this._audioMeta.originalCodec} with ${this._audioMeta.channelCount} channels, repeat last frame`),xn=_r),Zr=[];for(let Kr=0;Kr<Mr;Kr++){let He=Math.round(En);if(Zr.length>0){let Gr=Zr[Zr.length-1];Gr.duration=He-Gr.dts}let Ir={dts:He,pts:He,cts:0,unit:xn,size:xn.byteLength,duration:0,originalDts:wr,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}};Zr.push(Ir),wt+=Ir.size,En+=Ve}let rn=Zr[Zr.length-1];rn.duration=Rr+un-rn.dts,un=Math.round(Ve)}Gt.push({dts:Rr,pts:Rr,cts:0,unit:mr.unit,size:mr.unit.byteLength,duration:un,originalDts:wr,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}}),zt&&Gt.push.apply(Gt,Zr)}Rt?bt=new Uint8Array(wt):(bt=new Uint8Array(wt),bt[0]=wt>>>24&255,bt[1]=wt>>>16&255,bt[2]=wt>>>8&255,bt[3]=wt&255,bt.set(ce.types.mdat,4));for(let Wt=0;Wt<Gt.length;Wt++){let mr=Gt[Wt].unit;bt.set(mr,st),st+=mr.byteLength}let Vt=Gt[Gt.length-1];xe=Vt.dts+Vt.duration,this._audioNextDts=xe;let Xt=new We;Xt.beginDts=se,Xt.endDts=xe,Xt.beginPts=se,Xt.endPts=xe,Xt.originalBeginDts=Gt[0].originalDts,Xt.originalEndDts=Vt.originalDts+Vt.duration,Xt.firstSample=new ze(Gt[0].dts,Gt[0].pts,Gt[0].duration,Gt[0].originalDts,!1),Xt.lastSample=new ze(Vt.dts,Vt.pts,Vt.duration,Vt.originalDts,!1),this._isLive||this._audioSegmentInfoList.append(Xt),z.samples=Gt,z.sequenceNumber++;let hr=null;Rt?hr=new Uint8Array:hr=ce.moof(z,se),z.samples=[],z.length=0;let Pr={type:"audio",data:this._mergeBoxes(hr,bt).buffer,sampleCount:Gt.length,info:Xt};Rt&&kt&&(Pr.timestampOffset=se),this._onMediaSegment("audio",Pr)}_remuxVideo(O,W){if(this._videoMeta==null)return;let z=O,Z=z.samples,Y,se=-1,xe=-1,lt=-1,Ve=-1;if(!Z||Z.length===0||Z.length===1&&!W)return;let Rt=8,kt=null,Ut=8+O.length,st=null;if(Z.length>1&&(st=Z.pop(),Ut-=st.length),this._videoStashedLastSample!=null){let Vt=this._videoStashedLastSample;this._videoStashedLastSample=null,Z.unshift(Vt),Ut+=Vt.length}st!=null&&(this._videoStashedLastSample=st);let bt=Z[0].dts-this._dtsBase;if(this._videoNextDts)Y=bt-this._videoNextDts;else if(this._videoSegmentInfoList.isEmpty())Y=0;else{let Vt=this._videoSegmentInfoList.getLastSampleBefore(bt);if(Vt!=null){let Xt=bt-(Vt.originalDts+Vt.duration);Xt<=3&&(Xt=0);let hr=Vt.dts+Vt.duration+Xt;Y=bt-hr}else Y=0}let wt=new We,gt=[];for(let Vt=0;Vt<Z.length;Vt++){let Xt=Z[Vt],hr=Xt.dts-this._dtsBase,Pr=Xt.isKeyframe,Wt=hr-Y,mr=Xt.cts,_r=Wt+mr;se===-1&&(se=Wt,lt=_r);let wr=0;if(Vt!==Z.length-1?wr=Z[Vt+1].dts-this._dtsBase-Y-Wt:st!=null?wr=st.dts-this._dtsBase-Y-Wt:gt.length>=1?wr=gt[gt.length-1].duration:wr=Math.floor(this._videoMeta.refSampleDuration),Pr){let Rr=new ze(Wt,_r,wr,Xt.dts,!0);Rr.fileposition=Xt.fileposition,wt.appendSyncPoint(Rr)}gt.push({dts:Wt,pts:_r,cts:mr,units:Xt.units,size:Xt.length,isKeyframe:Pr,duration:wr,originalDts:hr,flags:{isLeading:0,dependsOn:Pr?2:1,isDependedOn:Pr?1:0,hasRedundancy:0,isNonSync:Pr?0:1}})}kt=new Uint8Array(Ut),kt[0]=Ut>>>24&255,kt[1]=Ut>>>16&255,kt[2]=Ut>>>8&255,kt[3]=Ut&255,kt.set(ce.types.mdat,4);for(let Vt=0;Vt<gt.length;Vt++){let Xt=gt[Vt].units;for(;Xt.length;){let Pr=Xt.shift().data;kt.set(Pr,Rt),Rt+=Pr.byteLength}}let xt=gt[gt.length-1];if(xe=xt.dts+xt.duration,Ve=xt.pts+xt.duration,this._videoNextDts=xe,wt.beginDts=se,wt.endDts=xe,wt.beginPts=lt,wt.endPts=Ve,wt.originalBeginDts=gt[0].originalDts,wt.originalEndDts=xt.originalDts+xt.duration,wt.firstSample=new ze(gt[0].dts,gt[0].pts,gt[0].duration,gt[0].originalDts,gt[0].isKeyframe),wt.lastSample=new ze(xt.dts,xt.pts,xt.duration,xt.originalDts,xt.isKeyframe),this._isLive||this._videoSegmentInfoList.append(wt),z.samples=gt,z.sequenceNumber++,this._forceFirstIDR){let Vt=gt[0].flags;Vt.dependsOn=2,Vt.isNonSync=0}let Gt=ce.moof(z,se);z.samples=[],z.length=0,this._onMediaSegment("video",{type:"video",data:this._mergeBoxes(Gt,kt).buffer,sampleCount:gt.length,info:wt})}_mergeBoxes(O,W){let z=new Uint8Array(O.byteLength+W.byteLength);return z.set(O,0),z.set(W,O.byteLength),z}}var Oe=pe,Pe={IO_ERROR:"io_error",DEMUX_ERROR:"demux_error",INIT_SEGMENT:"init_segment",MEDIA_SEGMENT:"media_segment",LOADING_COMPLETE:"loading_complete",RECOVERED_EARLY_EOF:"recovered_early_eof",MEDIA_INFO:"media_info",METADATA_ARRIVED:"metadata_arrived",SCRIPTDATA_ARRIVED:"scriptdata_arrived",STATISTICS_INFO:"statistics_info",RECOMMEND_SEEKPOINT:"recommend_seekpoint"};class ot{constructor(O,W){this.TAG="TransmuxingController",this._emitter=new(g()),this._config=W,O.segments||(O.segments=[{duration:O.duration,filesize:O.filesize,url:O.url}]),typeof O.cors!="boolean"&&(O.cors=!0),typeof O.withCredentials!="boolean"&&(O.withCredentials=!1),this._mediaDataSource=O,this._currentSegmentIndex=0;let z=0;this._mediaDataSource.segments.forEach(Z=>{Z.timestampBase=z,z+=Z.duration,Z.cors=O.cors,Z.withCredentials=O.withCredentials,W.referrerPolicy&&(Z.referrerPolicy=W.referrerPolicy)}),!isNaN(z)&&this._mediaDataSource.duration!==z&&(this._mediaDataSource.duration=z),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(O,W){this._emitter.addListener(O,W)}off(O,W){this._emitter.removeListener(O,W)}start(){this._loadSegment(0),this._enableStatisticsReporter()}_loadSegment(O,W){this._currentSegmentIndex=O;let z=this._mediaDataSource.segments[O],Z=this._ioctl=new T(z,this._config,O);Z.onError=this._onIOException.bind(this),Z.onSeeked=this._onIOSeeked.bind(this),Z.onComplete=this._onIOComplete.bind(this),Z.onRedirect=this._onIORedirect.bind(this),Z.onRecoveredEarlyEof=this._onIORecoveredEarlyEof.bind(this),W?this._demuxer.bindDataSource(this._ioctl):Z.onDataArrival=this._onInitChunkArrival.bind(this),Z.open(W)}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(O){if(this._mediaInfo==null||!this._mediaInfo.isSeekable())return;let W=this._searchSegmentIndexContains(O);if(W===this._currentSegmentIndex){let z=this._mediaInfo.segments[W];if(z==null)this._pendingSeekTime=O;else{let Z=z.getNearestKeyframe(O);this._remuxer.seek(Z.milliseconds),this._ioctl.seek(Z.fileposition),this._pendingResolveSeekPoint=Z.milliseconds}}else{let z=this._mediaInfo.segments[W];if(z==null)this._pendingSeekTime=O,this._internalAbort(),this._remuxer.seek(),this._remuxer.insertDiscontinuity(),this._loadSegment(W);else{let Z=z.getNearestKeyframe(O);this._internalAbort(),this._remuxer.seek(O),this._remuxer.insertDiscontinuity(),this._demuxer.resetMediaInfo(),this._demuxer.timestampBase=this._mediaDataSource.segments[W].timestampBase,this._loadSegment(W,Z.fileposition),this._pendingResolveSeekPoint=Z.milliseconds,this._reportSegmentMediaInfo(W)}}this._enableStatisticsReporter()}_searchSegmentIndexContains(O){let W=this._mediaDataSource.segments,z=W.length-1;for(let Z=0;Z<W.length;Z++)if(O<W[Z].timestampBase){z=Z-1;break}return z}_onInitChunkArrival(O,W){let z=null,Z=0;if(W>0)this._demuxer.bindDataSource(this._ioctl),this._demuxer.timestampBase=this._mediaDataSource.segments[this._currentSegmentIndex].timestampBase,Z=this._demuxer.parseChunks(O,W);else if((z=ie.probe(O)).match){this._demuxer=new ie(z,this._config),this._remuxer||(this._remuxer=new Oe(this._config));let Y=this._mediaDataSource;Y.duration!=null&&!isNaN(Y.duration)&&(this._demuxer.overridedDuration=Y.duration),typeof Y.hasAudio=="boolean"&&(this._demuxer.overridedHasAudio=Y.hasAudio),typeof Y.hasVideo=="boolean"&&(this._demuxer.overridedHasVideo=Y.hasVideo),this._demuxer.timestampBase=Y.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),Z=this._demuxer.parseChunks(O,W)}else z=null,y.e(this.TAG,"Non-FLV, Unsupported media type!"),Promise.resolve().then(()=>{this._internalAbort()}),this._emitter.emit(Pe.DEMUX_ERROR,$.FORMAT_UNSUPPORTED,"Non-FLV, Unsupported media type"),Z=0;return Z}_onMediaInfo(O){this._mediaInfo==null&&(this._mediaInfo=Object.assign({},O),this._mediaInfo.keyframesIndex=null,this._mediaInfo.segments=[],this._mediaInfo.segmentCount=this._mediaDataSource.segments.length,Object.setPrototypeOf(this._mediaInfo,oe.prototype));let W=Object.assign({},O);Object.setPrototypeOf(W,oe.prototype),this._mediaInfo.segments[this._currentSegmentIndex]=W,this._reportSegmentMediaInfo(this._currentSegmentIndex),this._pendingSeekTime!=null&&Promise.resolve().then(()=>{let z=this._pendingSeekTime;this._pendingSeekTime=null,this.seek(z)})}_onMetaDataArrived(O){this._emitter.emit(Pe.METADATA_ARRIVED,O)}_onScriptDataArrived(O){this._emitter.emit(Pe.SCRIPTDATA_ARRIVED,O)}_onIOSeeked(){this._remuxer.insertDiscontinuity()}_onIOComplete(O){let z=O+1;z<this._mediaDataSource.segments.length?(this._internalAbort(),this._remuxer.flushStashedSamples(),this._loadSegment(z)):(this._remuxer.flushStashedSamples(),this._emitter.emit(Pe.LOADING_COMPLETE),this._disableStatisticsReporter())}_onIORedirect(O){let W=this._ioctl.extraData;this._mediaDataSource.segments[W].redirectedURL=O}_onIORecoveredEarlyEof(){this._emitter.emit(Pe.RECOVERED_EARLY_EOF)}_onIOException(O,W){y.e(this.TAG,`IOException: type = ${O}, code = ${W.code}, msg = ${W.msg}`),this._emitter.emit(Pe.IO_ERROR,O,W),this._disableStatisticsReporter()}_onDemuxException(O,W){y.e(this.TAG,`DemuxException: type = ${O}, info = ${W}`),this._emitter.emit(Pe.DEMUX_ERROR,O,W)}_onRemuxerInitSegmentArrival(O,W){this._emitter.emit(Pe.INIT_SEGMENT,O,W)}_onRemuxerMediaSegmentArrival(O,W){if(this._pendingSeekTime==null&&(this._emitter.emit(Pe.MEDIA_SEGMENT,O,W),this._pendingResolveSeekPoint!=null&&O==="video")){let z=W.info.syncPoints,Z=this._pendingResolveSeekPoint;this._pendingResolveSeekPoint=null,s.safari&&z.length>0&&z[0].originalDts===Z&&(Z=z[0].pts),this._emitter.emit(Pe.RECOMMEND_SEEKPOINT,Z)}}_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(O){let W=this._mediaInfo.segments[O],z=Object.assign({},W);z.duration=this._mediaInfo.duration,z.segmentCount=this._mediaInfo.segmentCount,delete z.segments,delete z.keyframesIndex,this._emitter.emit(Pe.MEDIA_INFO,z)}_reportStatisticsInfo(){let O={};O.url=this._ioctl.currentURL,O.hasRedirect=this._ioctl.hasRedirect,O.hasRedirect&&(O.redirectedURL=this._ioctl.currentRedirectedURL),O.speed=this._ioctl.currentSpeed,O.loaderType=this._ioctl.loaderType,O.currentSegmentIndex=this._currentSegmentIndex,O.totalSegmentCount=this._mediaDataSource.segments.length,this._emitter.emit(Pe.STATISTICS_INFO,O)}}var ht=ot,At=function(Ze){let O="TransmuxingWorker",W=null,z=wt.bind(this);H.install(),Ze.addEventListener("message",function(gt){switch(gt.data.cmd){case"init":W=new ht(gt.data.param[0],gt.data.param[1]),W.on(Pe.IO_ERROR,Ut.bind(this)),W.on(Pe.DEMUX_ERROR,st.bind(this)),W.on(Pe.INIT_SEGMENT,Z.bind(this)),W.on(Pe.MEDIA_SEGMENT,Y.bind(this)),W.on(Pe.LOADING_COMPLETE,se.bind(this)),W.on(Pe.RECOVERED_EARLY_EOF,xe.bind(this)),W.on(Pe.MEDIA_INFO,lt.bind(this)),W.on(Pe.METADATA_ARRIVED,Ve.bind(this)),W.on(Pe.SCRIPTDATA_ARRIVED,Rt.bind(this)),W.on(Pe.STATISTICS_INFO,kt.bind(this)),W.on(Pe.RECOMMEND_SEEKPOINT,bt.bind(this));break;case"destroy":W&&(W.destroy(),W=null),Ze.postMessage({msg:"destroyed"});break;case"start":W.start();break;case"stop":W.stop();break;case"seek":W.seek(gt.data.param);break;case"pause":W.pause();break;case"resume":W.resume();break;case"logging_config":{let xt=gt.data.param;X.applyConfig(xt),xt.enableCallback===!0?X.addLogListener(z):X.removeLogListener(z);break}}});function Z(gt,xt){let Gt={msg:Pe.INIT_SEGMENT,data:{type:gt,data:xt}};Ze.postMessage(Gt,[xt.data])}function Y(gt,xt){let Gt={msg:Pe.MEDIA_SEGMENT,data:{type:gt,data:xt}};Ze.postMessage(Gt,[xt.data])}function se(){let gt={msg:Pe.LOADING_COMPLETE};Ze.postMessage(gt)}function xe(){let gt={msg:Pe.RECOVERED_EARLY_EOF};Ze.postMessage(gt)}function lt(gt){let xt={msg:Pe.MEDIA_INFO,data:gt};Ze.postMessage(xt)}function Ve(gt){let xt={msg:Pe.METADATA_ARRIVED,data:gt};Ze.postMessage(xt)}function Rt(gt){let xt={msg:Pe.SCRIPTDATA_ARRIVED,data:gt};Ze.postMessage(xt)}function kt(gt){let xt={msg:Pe.STATISTICS_INFO,data:gt};Ze.postMessage(xt)}function Ut(gt,xt){Ze.postMessage({msg:Pe.IO_ERROR,data:{type:gt,info:xt}})}function st(gt,xt){Ze.postMessage({msg:Pe.DEMUX_ERROR,data:{type:gt,info:xt}})}function bt(gt){Ze.postMessage({msg:Pe.RECOMMEND_SEEKPOINT,data:gt})}function wt(gt,xt){Ze.postMessage({msg:"logcat_callback",data:{type:gt,logcat:xt}})}};class Ot{constructor(O,W){if(this.TAG="Transmuxer",this._emitter=new(g()),W.enableWorker&&typeof Worker!="undefined")try{let z=B(18034);this._worker=z(At),this._workerDestroying=!1,this._worker.addEventListener("message",this._onWorkerMessage.bind(this)),this._worker.postMessage({cmd:"init",param:[O,W]}),this.e={onLoggingConfigChanged:this._onLoggingConfigChanged.bind(this)},X.registerListener(this.e.onLoggingConfigChanged),this._worker.postMessage({cmd:"logging_config",param:X.getConfig()})}catch(z){y.e(this.TAG,"Error while initialize transmuxing worker, fallback to inline transmuxing"),this._worker=null,this._controller=new ht(O,W)}else this._controller=new ht(O,W);if(this._controller){let z=this._controller;z.on(Pe.IO_ERROR,this._onIOError.bind(this)),z.on(Pe.DEMUX_ERROR,this._onDemuxError.bind(this)),z.on(Pe.INIT_SEGMENT,this._onInitSegment.bind(this)),z.on(Pe.MEDIA_SEGMENT,this._onMediaSegment.bind(this)),z.on(Pe.LOADING_COMPLETE,this._onLoadingComplete.bind(this)),z.on(Pe.RECOVERED_EARLY_EOF,this._onRecoveredEarlyEof.bind(this)),z.on(Pe.MEDIA_INFO,this._onMediaInfo.bind(this)),z.on(Pe.METADATA_ARRIVED,this._onMetaDataArrived.bind(this)),z.on(Pe.SCRIPTDATA_ARRIVED,this._onScriptDataArrived.bind(this)),z.on(Pe.STATISTICS_INFO,this._onStatisticsInfo.bind(this)),z.on(Pe.RECOMMEND_SEEKPOINT,this._onRecommendSeekpoint.bind(this))}}destroy(){this._worker?this._workerDestroying||(this._workerDestroying=!0,this._worker.postMessage({cmd:"destroy"}),X.removeListener(this.e.onLoggingConfigChanged),this.e=null):(this._controller.destroy(),this._controller=null),this._emitter.removeAllListeners(),this._emitter=null}on(O,W){this._emitter.addListener(O,W)}off(O,W){this._emitter.removeListener(O,W)}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(O){this._worker?this._worker.postMessage({cmd:"seek",param:O}):this._controller.seek(O)}pause(){this._worker?this._worker.postMessage({cmd:"pause"}):this._controller.pause()}resume(){this._worker?this._worker.postMessage({cmd:"resume"}):this._controller.resume()}_onInitSegment(O,W){Promise.resolve().then(()=>{this._emitter.emit(Pe.INIT_SEGMENT,O,W)})}_onMediaSegment(O,W){Promise.resolve().then(()=>{this._emitter.emit(Pe.MEDIA_SEGMENT,O,W)})}_onLoadingComplete(){Promise.resolve().then(()=>{this._emitter.emit(Pe.LOADING_COMPLETE)})}_onRecoveredEarlyEof(){Promise.resolve().then(()=>{this._emitter.emit(Pe.RECOVERED_EARLY_EOF)})}_onMediaInfo(O){Promise.resolve().then(()=>{this._emitter.emit(Pe.MEDIA_INFO,O)})}_onMetaDataArrived(O){Promise.resolve().then(()=>{this._emitter.emit(Pe.METADATA_ARRIVED,O)})}_onScriptDataArrived(O){Promise.resolve().then(()=>{this._emitter.emit(Pe.SCRIPTDATA_ARRIVED,O)})}_onStatisticsInfo(O){Promise.resolve().then(()=>{this._emitter.emit(Pe.STATISTICS_INFO,O)})}_onIOError(O,W){Promise.resolve().then(()=>{this._emitter.emit(Pe.IO_ERROR,O,W)})}_onDemuxError(O,W){Promise.resolve().then(()=>{this._emitter.emit(Pe.DEMUX_ERROR,O,W)})}_onRecommendSeekpoint(O){Promise.resolve().then(()=>{this._emitter.emit(Pe.RECOMMEND_SEEKPOINT,O)})}_onLoggingConfigChanged(O){this._worker&&this._worker.postMessage({cmd:"logging_config",param:O})}_onWorkerMessage(O){let W=O.data,z=W.data;if(W.msg==="destroyed"||this._workerDestroying){this._workerDestroying=!1,this._worker.terminate(),this._worker=null;return}switch(W.msg){case Pe.INIT_SEGMENT:case Pe.MEDIA_SEGMENT:this._emitter.emit(W.msg,z.type,z.data);break;case Pe.LOADING_COMPLETE:case Pe.RECOVERED_EARLY_EOF:this._emitter.emit(W.msg);break;case Pe.MEDIA_INFO:Object.setPrototypeOf(z,oe.prototype),this._emitter.emit(W.msg,z);break;case Pe.METADATA_ARRIVED:case Pe.SCRIPTDATA_ARRIVED:case Pe.STATISTICS_INFO:this._emitter.emit(W.msg,z);break;case Pe.IO_ERROR:case Pe.DEMUX_ERROR:this._emitter.emit(W.msg,z.type,z.info);break;case Pe.RECOMMEND_SEEKPOINT:this._emitter.emit(W.msg,z);break;case"logcat_callback":y.emitter.emit("log",z.type,z.logcat);break;default:break}}}var Ke=Ot,Je={ERROR:"error",SOURCE_OPEN:"source_open",UPDATE_END:"update_end",BUFFER_FULL:"buffer_full"};class Nt{constructor(O){this.TAG="MSEController",this._config=O,this._emitter=new(g()),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 tt}destroy(){(this._mediaElement||this._mediaSource)&&this.detachMediaElement(),this.e=null,this._emitter.removeAllListeners(),this._emitter=null}on(O,W){this._emitter.addListener(O,W)}off(O,W){this._emitter.removeListener(O,W)}attachMediaElement(O){if(this._mediaSource)throw new h("MediaSource has been attached to an HTMLMediaElement!");let W=this._mediaSource=new window.MediaSource;W.addEventListener("sourceopen",this.e.onSourceOpen),W.addEventListener("sourceended",this.e.onSourceEnded),W.addEventListener("sourceclose",this.e.onSourceClose),this._mediaElement=O,this._mediaSourceObjectURL=window.URL.createObjectURL(this._mediaSource),O.src=this._mediaSourceObjectURL}detachMediaElement(){if(this._mediaSource){let O=this._mediaSource;for(let W in this._sourceBuffers){let z=this._pendingSegments[W];z.splice(0,z.length),this._pendingSegments[W]=null,this._pendingRemoveRanges[W]=null,this._lastInitSegments[W]=null;let Z=this._sourceBuffers[W];if(Z){if(O.readyState!=="closed"){try{O.removeSourceBuffer(Z)}catch(Y){y.e(this.TAG,Y.message)}Z.removeEventListener("error",this.e.onSourceBufferError),Z.removeEventListener("updateend",this.e.onSourceBufferUpdateEnd)}this._mimeTypes[W]=null,this._sourceBuffers[W]=null}}if(O.readyState==="open")try{O.endOfStream()}catch(W){y.e(this.TAG,W.message)}O.removeEventListener("sourceopen",this.e.onSourceOpen),O.removeEventListener("sourceended",this.e.onSourceEnded),O.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(O,W){if(!this._mediaSource||this._mediaSource.readyState!=="open"){this._pendingSourceBufferInit.push(O),this._pendingSegments[O.type].push(O);return}let z=O,Z=`${z.container}`;z.codec&&z.codec.length>0&&(Z+=`;codecs=${z.codec}`);let Y=!1;if(y.v(this.TAG,"Received Initialization Segment, mimeType: "+Z),this._lastInitSegments[z.type]=z,Z!==this._mimeTypes[z.type]){if(this._mimeTypes[z.type])y.v(this.TAG,`Notice: ${z.type} mimeType changed, origin: ${this._mimeTypes[z.type]}, target: ${Z}`);else{Y=!0;try{let se=this._sourceBuffers[z.type]=this._mediaSource.addSourceBuffer(Z);se.addEventListener("error",this.e.onSourceBufferError),se.addEventListener("updateend",this.e.onSourceBufferUpdateEnd)}catch(se){y.e(this.TAG,se.message),this._emitter.emit(Je.ERROR,{code:se.code,msg:se.message});return}}this._mimeTypes[z.type]=Z}W||this._pendingSegments[z.type].push(z),Y||this._sourceBuffers[z.type]&&!this._sourceBuffers[z.type].updating&&this._doAppendSegments(),s.safari&&z.container==="audio/mpeg"&&z.mediaDuration>0&&(this._requireSetMediaDuration=!0,this._pendingMediaDuration=z.mediaDuration/1e3,this._updateMediaSourceDuration())}appendMediaSegment(O){let W=O;this._pendingSegments[W.type].push(W),this._config.autoCleanupSourceBuffer&&this._needCleanupSourceBuffer()&&this._doCleanupSourceBuffer();let z=this._sourceBuffers[W.type];z&&!z.updating&&!this._hasPendingRemoveRanges()&&this._doAppendSegments()}seek(O){for(let W in this._sourceBuffers){if(!this._sourceBuffers[W])continue;let z=this._sourceBuffers[W];if(this._mediaSource.readyState==="open")try{z.abort()}catch(Y){y.e(this.TAG,Y.message)}this._idrList.clear();let Z=this._pendingSegments[W];if(Z.splice(0,Z.length),this._mediaSource.readyState!=="closed"){for(let Y=0;Y<z.buffered.length;Y++){let se=z.buffered.start(Y),xe=z.buffered.end(Y);this._pendingRemoveRanges[W].push({start:se,end:xe})}if(z.updating||this._doRemoveRanges(),s.safari){let Y=this._lastInitSegments[W];Y&&(this._pendingSegments[W].push(Y),z.updating||this._doAppendSegments())}}}}endOfStream(){let O=this._mediaSource,W=this._sourceBuffers;if(!O||O.readyState!=="open"){O&&O.readyState==="closed"&&this._hasPendingSegments()&&(this._hasPendingEos=!0);return}W.video&&W.video.updating||W.audio&&W.audio.updating?this._hasPendingEos=!0:(this._hasPendingEos=!1,O.endOfStream())}getNearestKeyframe(O){return this._idrList.getLastSyncPointBeforeDts(O)}_needCleanupSourceBuffer(){if(!this._config.autoCleanupSourceBuffer)return!1;let O=this._mediaElement.currentTime;for(let W in this._sourceBuffers){let z=this._sourceBuffers[W];if(z){let Z=z.buffered;if(Z.length>=1&&O-Z.start(0)>=this._config.autoCleanupMaxBackwardDuration)return!0}}return!1}_doCleanupSourceBuffer(){let O=this._mediaElement.currentTime;for(let W in this._sourceBuffers){let z=this._sourceBuffers[W];if(z){let Z=z.buffered,Y=!1;for(let se=0;se<Z.length;se++){let xe=Z.start(se),lt=Z.end(se);if(xe<=O&&O<lt+3){if(O-xe>=this._config.autoCleanupMaxBackwardDuration){Y=!0;let Ve=O-this._config.autoCleanupMinBackwardDuration;this._pendingRemoveRanges[W].push({start:xe,end:Ve})}}else lt<O&&(Y=!0,this._pendingRemoveRanges[W].push({start:xe,end:lt}))}Y&&!z.updating&&this._doRemoveRanges()}}}_updateMediaSourceDuration(){let O=this._sourceBuffers;if(this._mediaElement.readyState===0||this._mediaSource.readyState!=="open"||O.video&&O.video.updating||O.audio&&O.audio.updating)return;let W=this._mediaSource.duration,z=this._pendingMediaDuration;z>0&&(isNaN(W)||z>W)&&(y.v(this.TAG,`Update MediaSource duration from ${W} to ${z}`),this._mediaSource.duration=z),this._requireSetMediaDuration=!1,this._pendingMediaDuration=0}_doRemoveRanges(){for(let O in this._pendingRemoveRanges){if(!this._sourceBuffers[O]||this._sourceBuffers[O].updating)continue;let W=this._sourceBuffers[O],z=this._pendingRemoveRanges[O];for(;z.length&&!W.updating;){let Z=z.shift();W.remove(Z.start,Z.end)}}}_doAppendSegments(){let O=this._pendingSegments;for(let W in O)if(!(!this._sourceBuffers[W]||this._sourceBuffers[W].updating)&&O[W].length>0){let z=O[W].shift();if(z.timestampOffset){let Z=this._sourceBuffers[W].timestampOffset,Y=z.timestampOffset/1e3;Math.abs(Z-Y)>.1&&(y.v(this.TAG,`Update MPEG audio timestampOffset from ${Z} to ${Y}`),this._sourceBuffers[W].timestampOffset=Y),delete z.timestampOffset}if(!z.data||z.data.byteLength===0)continue;try{this._sourceBuffers[W].appendBuffer(z.data),this._isBufferFull=!1,W==="video"&&z.hasOwnProperty("info")&&this._idrList.appendArray(z.info.syncPoints)}catch(Z){this._pendingSegments[W].unshift(z),Z.code===22?(this._isBufferFull||this._emitter.emit(Je.BUFFER_FULL),this._isBufferFull=!0):(y.e(this.TAG,Z.message),this._emitter.emit(Je.ERROR,{code:Z.code,msg:Z.message}))}}}_onSourceOpen(){if(y.v(this.TAG,"MediaSource onSourceOpen"),this._mediaSource.removeEventListener("sourceopen",this.e.onSourceOpen),this._pendingSourceBufferInit.length>0){let O=this._pendingSourceBufferInit;for(;O.length;){let W=O.shift();this.appendInitSegment(W,!0)}}this._hasPendingSegments()&&this._doAppendSegments(),this._emitter.emit(Je.SOURCE_OPEN)}_onSourceEnded(){y.v(this.TAG,"MediaSource onSourceEnded")}_onSourceClose(){y.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 O=this._pendingSegments;return O.video.length>0||O.audio.length>0}_hasPendingRemoveRanges(){let O=this._pendingRemoveRanges;return O.video.length>0||O.audio.length>0}_onSourceBufferUpdateEnd(){this._requireSetMediaDuration?this._updateMediaSourceDuration():this._hasPendingRemoveRanges()?this._doRemoveRanges():this._hasPendingSegments()?this._doAppendSegments():this._hasPendingEos&&this.endOfStream(),this._emitter.emit(Je.UPDATE_END)}_onSourceBufferError(O){y.e(this.TAG,`SourceBuffer Error: ${O}`)}}var ut=Nt;const Kt={NETWORK_ERROR:"NetworkError",MEDIA_ERROR:"MediaError",OTHER_ERROR:"OtherError"},_t={NETWORK_EXCEPTION:r.EXCEPTION,NETWORK_STATUS_CODE_INVALID:r.HTTP_STATUS_CODE_INVALID,NETWORK_TIMEOUT:r.CONNECTING_TIMEOUT,NETWORK_UNRECOVERABLE_EARLY_EOF:r.UNRECOVERABLE_EARLY_EOF,MEDIA_MSE_ERROR:"MediaMSEError",MEDIA_FORMAT_ERROR:$.FORMAT_ERROR,MEDIA_FORMAT_UNSUPPORTED:$.FORMAT_UNSUPPORTED,MEDIA_CODEC_UNSUPPORTED:$.CODEC_UNSUPPORTED};class ge{constructor(O,W){if(this.TAG="FlvPlayer",this._type="FlvPlayer",this._emitter=new(g()),this._config=I(),typeof W=="object"&&Object.assign(this._config,W),O.type.toLowerCase()!=="flv")throw new a("FlvPlayer requires an flv MediaDataSource input!");O.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=O,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 z=s.chrome&&(s.version.major<50||s.version.major===50&&s.version.build<2661);this._alwaysSeekKeyframe=!!(z||s.msedge||s.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(O,W){O===G.MEDIA_INFO?this._mediaInfo!=null&&Promise.resolve().then(()=>{this._emitter.emit(G.MEDIA_INFO,this.mediaInfo)}):O===G.STATISTICS_INFO&&this._statisticsInfo!=null&&Promise.resolve().then(()=>{this._emitter.emit(G.STATISTICS_INFO,this.statisticsInfo)}),this._emitter.addListener(O,W)}off(O,W){this._emitter.removeListener(O,W)}attachMediaElement(O){if(this._mediaElement=O,O.addEventListener("loadedmetadata",this.e.onvLoadedMetadata),O.addEventListener("seeking",this.e.onvSeeking),O.addEventListener("canplay",this.e.onvCanPlay),O.addEventListener("stalled",this.e.onvStalled),O.addEventListener("progress",this.e.onvProgress),this._msectl=new ut(this._config),this._msectl.on(Je.UPDATE_END,this._onmseUpdateEnd.bind(this)),this._msectl.on(Je.BUFFER_FULL,this._onmseBufferFull.bind(this)),this._msectl.on(Je.SOURCE_OPEN,()=>{this._mseSourceOpened=!0,this._hasPendingLoad&&(this._hasPendingLoad=!1,this.load())}),this._msectl.on(Je.ERROR,W=>{this._emitter.emit(G.ERROR,Kt.MEDIA_ERROR,_t.MEDIA_MSE_ERROR,W)}),this._msectl.attachMediaElement(O),this._pendingSeekTime!=null)try{O.currentTime=this._pendingSeekTime,this._pendingSeekTime=null}catch(W){}}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 h("HTMLMediaElement must be attached before load()!");if(this._transmuxer)throw new h("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 Ke(this._mediaDataSource,this._config),this._transmuxer.on(Pe.INIT_SEGMENT,(O,W)=>{this._msectl.appendInitSegment(W)}),this._transmuxer.on(Pe.MEDIA_SEGMENT,(O,W)=>{if(this._msectl.appendMediaSegment(W),this._config.lazyLoad&&!this._config.isLive){let z=this._mediaElement.currentTime;W.info.endDts>=(z+this._config.lazyLoadMaxDuration)*1e3&&this._progressChecker==null&&(y.v(this.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),this._suspendTransmuxer())}}),this._transmuxer.on(Pe.LOADING_COMPLETE,()=>{this._msectl.endOfStream(),this._emitter.emit(G.LOADING_COMPLETE)}),this._transmuxer.on(Pe.RECOVERED_EARLY_EOF,()=>{this._emitter.emit(G.RECOVERED_EARLY_EOF)}),this._transmuxer.on(Pe.IO_ERROR,(O,W)=>{this._emitter.emit(G.ERROR,Kt.NETWORK_ERROR,O,W)}),this._transmuxer.on(Pe.DEMUX_ERROR,(O,W)=>{this._emitter.emit(G.ERROR,Kt.MEDIA_ERROR,O,{code:-1,msg:W})}),this._transmuxer.on(Pe.MEDIA_INFO,O=>{this._mediaInfo=O,this._emitter.emit(G.MEDIA_INFO,Object.assign({},O))}),this._transmuxer.on(Pe.METADATA_ARRIVED,O=>{this._emitter.emit(G.METADATA_ARRIVED,O)}),this._transmuxer.on(Pe.SCRIPTDATA_ARRIVED,O=>{this._emitter.emit(G.SCRIPTDATA_ARRIVED,O)}),this._transmuxer.on(Pe.STATISTICS_INFO,O=>{this._statisticsInfo=this._fillStatisticsInfo(O),this._emitter.emit(G.STATISTICS_INFO,Object.assign({},this._statisticsInfo))}),this._transmuxer.on(Pe.RECOMMEND_SEEKPOINT,O=>{this._mediaElement&&!this._config.accurateSeek&&(this._requestSetTime=!0,this._mediaElement.currentTime=O/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(O){this._mediaElement.volume=O}get muted(){return this._mediaElement.muted}set muted(O){this._mediaElement.muted=O}get currentTime(){return this._mediaElement?this._mediaElement.currentTime:0}set currentTime(O){this._mediaElement?this._internalSeek(O):this._pendingSeekTime=O}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(O){if(O.playerType=this._type,!(this._mediaElement instanceof HTMLVideoElement))return O;let W=!0,z=0,Z=0;if(this._mediaElement.getVideoPlaybackQuality){let Y=this._mediaElement.getVideoPlaybackQuality();z=Y.totalVideoFrames,Z=Y.droppedVideoFrames}else this._mediaElement.webkitDecodedFrameCount!=null?(z=this._mediaElement.webkitDecodedFrameCount,Z=this._mediaElement.webkitDroppedFrameCount):W=!1;return W&&(O.decodedFrames=z,O.droppedFrames=Z),O}_onmseUpdateEnd(){if(!this._config.lazyLoad||this._config.isLive)return;let O=this._mediaElement.buffered,W=this._mediaElement.currentTime,z=0,Z=0;for(let Y=0;Y<O.length;Y++){let se=O.start(Y),xe=O.end(Y);if(se<=W&&W<xe){z=se,Z=xe;break}}Z>=W+this._config.lazyLoadMaxDuration&&this._progressChecker==null&&(y.v(this.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),this._suspendTransmuxer())}_onmseBufferFull(){y.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 O=this._mediaElement.currentTime,W=this._mediaElement.buffered,z=!1;for(let Z=0;Z<W.length;Z++){let Y=W.start(Z),se=W.end(Z);if(O>=Y&&O<se){O>=se-this._config.lazyLoadRecoverDuration&&(z=!0);break}}z&&(window.clearInterval(this._progressChecker),this._progressChecker=null,z&&(y.v(this.TAG,"Continue loading from paused position"),this._transmuxer.resume()))}_isTimepointBuffered(O){let W=this._mediaElement.buffered;for(let z=0;z<W.length;z++){let Z=W.start(z),Y=W.end(z);if(O>=Z&&O<Y)return!0}return!1}_internalSeek(O){let W=this._isTimepointBuffered(O),z=!1,Z=0;if(O<1&&this._mediaElement.buffered.length>0){let Y=this._mediaElement.buffered.start(0);(Y<1&&O<Y||s.safari)&&(z=!0,Z=s.safari?.1:Y)}if(z)this._requestSetTime=!0,this._mediaElement.currentTime=Z;else if(W){if(!this._alwaysSeekKeyframe)this._requestSetTime=!0,this._mediaElement.currentTime=O;else{let Y=this._msectl.getNearestKeyframe(Math.floor(O*1e3));this._requestSetTime=!0,Y!=null?this._mediaElement.currentTime=Y.dts/1e3:this._mediaElement.currentTime=O}this._progressChecker!=null&&this._checkProgressAndResume()}else this._progressChecker!=null&&(window.clearInterval(this._progressChecker),this._progressChecker=null),this._msectl.seek(O),this._transmuxer.seek(Math.floor(O*1e3)),this._config.accurateSeek&&(this._requestSetTime=!0,this._mediaElement.currentTime=O)}_checkAndApplyUnbufferedSeekpoint(){if(this._seekpointRecord)if(this._seekpointRecord.recordTime<=this._now()-100){let O=this._mediaElement.currentTime;this._seekpointRecord=null,this._isTimepointBuffered(O)||(this._progressChecker!=null&&(window.clearTimeout(this._progressChecker),this._progressChecker=null),this._msectl.seek(O),this._transmuxer.seek(Math.floor(O*1e3)),this._config.accurateSeek&&(this._requestSetTime=!0,this._mediaElement.currentTime=O))}else window.setTimeout(this._checkAndApplyUnbufferedSeekpoint.bind(this),50)}_checkAndResumeStuckPlayback(O){let W=this._mediaElement;if(O||!this._receivedCanPlay||W.readyState<2){let z=W.buffered;z.length>0&&W.currentTime<z.start(0)&&(y.w(this.TAG,`Playback seems stuck at ${W.currentTime}, seek to ${z.start(0)}`),this._requestSetTime=!0,this._mediaElement.currentTime=z.start(0),this._mediaElement.removeEventListener("progress",this.e.onvProgress))}else this._mediaElement.removeEventListener("progress",this.e.onvProgress)}_onvLoadedMetadata(O){this._pendingSeekTime!=null&&(this._mediaElement.currentTime=this._pendingSeekTime,this._pendingSeekTime=null)}_onvSeeking(O){let W=this._mediaElement.currentTime,z=this._mediaElement.buffered;if(this._requestSetTime){this._requestSetTime=!1;return}if(W<1&&z.length>0){let Z=z.start(0);if(Z<1&&W<Z||s.safari){this._requestSetTime=!0,this._mediaElement.currentTime=s.safari?.1:Z;return}}if(this._isTimepointBuffered(W)){if(this._alwaysSeekKeyframe){let Z=this._msectl.getNearestKeyframe(Math.floor(W*1e3));Z!=null&&(this._requestSetTime=!0,this._mediaElement.currentTime=Z.dts/1e3)}this._progressChecker!=null&&this._checkProgressAndResume();return}this._seekpointRecord={seekPoint:W,recordTime:this._now()},window.setTimeout(this._checkAndApplyUnbufferedSeekpoint.bind(this),50)}_onvCanPlay(O){this._receivedCanPlay=!0,this._mediaElement.removeEventListener("canplay",this.e.onvCanPlay)}_onvStalled(O){this._checkAndResumeStuckPlayback(!0)}_onvProgress(O){this._checkAndResumeStuckPlayback()}}var we=ge;class Ue{constructor(O,W){if(this.TAG="NativePlayer",this._type="NativePlayer",this._emitter=new(g()),this._config=I(),typeof W=="object"&&Object.assign(this._config,W),O.type.toLowerCase()==="flv")throw new a("NativePlayer does't support flv MediaDataSource input!");if(O.hasOwnProperty("segments"))throw new a(`NativePlayer(${O.type}) doesn't support multipart playback!`);this.e={onvLoadedMetadata:this._onvLoadedMetadata.bind(this)},this._pendingSeekTime=null,this._statisticsReporter=null,this._mediaDataSource=O,this._mediaElement=null}destroy(){this._mediaElement&&(this.unload(),this.detachMediaElement()),this.e=null,this._mediaDataSource=null,this._emitter.removeAllListeners(),this._emitter=null}on(O,W){O===G.MEDIA_INFO?this._mediaElement!=null&&this._mediaElement.readyState!==0&&Promise.resolve().then(()=>{this._emitter.emit(G.MEDIA_INFO,this.mediaInfo)}):O===G.STATISTICS_INFO&&this._mediaElement!=null&&this._mediaElement.readyState!==0&&Promise.resolve().then(()=>{this._emitter.emit(G.STATISTICS_INFO,this.statisticsInfo)}),this._emitter.addListener(O,W)}off(O,W){this._emitter.removeListener(O,W)}attachMediaElement(O){if(this._mediaElement=O,O.addEventListener("loadedmetadata",this.e.onvLoadedMetadata),this._pendingSeekTime!=null)try{O.currentTime=this._pendingSeekTime,this._pendingSeekTime=null}catch(W){}}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 h("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(O){this._mediaElement.volume=O}get muted(){return this._mediaElement.muted}set muted(O){this._mediaElement.muted=O}get currentTime(){return this._mediaElement?this._mediaElement.currentTime:0}set currentTime(O){this._mediaElement?this._mediaElement.currentTime=O:this._pendingSeekTime=O}get mediaInfo(){let W={mimeType:(this._mediaElement instanceof HTMLAudioElement?"audio/":"video/")+this._mediaDataSource.type};return this._mediaElement&&(W.duration=Math.floor(this._mediaElement.duration*1e3),this._mediaElement instanceof HTMLVideoElement&&(W.width=this._mediaElement.videoWidth,W.height=this._mediaElement.videoHeight)),W}get statisticsInfo(){let O={playerType:this._type,url:this._mediaDataSource.url};if(!(this._mediaElement instanceof HTMLVideoElement))return O;let W=!0,z=0,Z=0;if(this._mediaElement.getVideoPlaybackQuality){let Y=this._mediaElement.getVideoPlaybackQuality();z=Y.totalVideoFrames,Z=Y.droppedVideoFrames}else this._mediaElement.webkitDecodedFrameCount!=null?(z=this._mediaElement.webkitDecodedFrameCount,Z=this._mediaElement.webkitDroppedFrameCount):W=!1;return W&&(O.decodedFrames=z,O.droppedFrames=Z),O}_onvLoadedMetadata(O){this._pendingSeekTime!=null&&(this._mediaElement.currentTime=this._pendingSeekTime,this._pendingSeekTime=null),this._emitter.emit(G.MEDIA_INFO,this.mediaInfo)}_reportStatisticsInfo(){this._emitter.emit(G.STATISTICS_INFO,this.statisticsInfo)}}var De=Ue;H.install();function nt(Ze,O){let W=Ze;if(W==null||typeof W!="object")throw new a("MediaDataSource must be an javascript object!");if(!W.hasOwnProperty("type"))throw new a("MediaDataSource must has type field to indicate video file type!");switch(W.type){case"flv":return new we(W,O);default:return new De(W,O)}}function qe(){return U.supportMSEH264Playback()}function rt(){return U.getFeatureList()}let ft={};ft.createPlayer=nt,ft.isSupported=qe,ft.getFeatureList=rt,ft.BaseLoader=n,ft.LoaderStatus=_,ft.LoaderErrors=r,ft.Events=G,ft.ErrorTypes=Kt,ft.ErrorDetails=_t,ft.FlvPlayer=we,ft.NativePlayer=De,ft.LoggingControl=X,Object.defineProperty(ft,"version",{enumerable:!0,get:function(){return"__VERSION__"}});var Tt=ft},66367:function(ke,_e,B){"use strict";B.d(_e,{F:function(){return w},Z:function(){return H}});function w(M){return M!=null&&M===M.window}function H(M,g){var D,y;if(typeof window=="undefined")return 0;const v=g?"scrollTop":"scrollLeft";let m=0;return w(M)?m=M[g?"pageYOffset":"pageXOffset"]:M instanceof Document?m=M.documentElement[v]:(M instanceof HTMLElement||M)&&(m=M[v]),M&&!w(M)&&typeof m!="number"&&(m=(y=((D=M.ownerDocument)!==null&&D!==void 0?D:M).documentElement)===null||y===void 0?void 0:y[v]),m}},57838:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return H}});var w=B(67294);function H(){const[,M]=w.useReducer(g=>g+1,0);return M}},58375:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return g}});var w=B(96523);function H(D,y,v,m){const E=v-y;return D/=m/2,D<1?E/2*D*D*D+y:E/2*((D-=2)*D*D+2)+y}var M=B(66367);function g(D){let y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const{getContainer:v=()=>window,callback:m,duration:E=450}=y,h=v(),a=(0,M.Z)(h,!0),d=Date.now(),_=()=>{const n=Date.now()-d,l=H(n>E?E:n,a,D,E);(0,M.F)(h)?h.scrollTo(window.pageXOffset,l):h instanceof Document||h.constructor.name==="HTMLDocument"?h.documentElement.scrollTop=l:h.scrollTop=l,n<E?(0,w.Z)(_):typeof m=="function"&&m()};(0,w.Z)(_)}},9708:function(ke,_e,B){"use strict";B.d(_e,{F:function(){return D},Z:function(){return g}});var w=B(94184),H=B.n(w);const M=null;function g(y,v,m){return H()({[`${y}-status-success`]:v==="success",[`${y}-status-warning`]:v==="warning",[`${y}-status-error`]:v==="error",[`${y}-status-validating`]:v==="validating",[`${y}-has-feedback`]:m})}const D=(y,v)=>v||y},48783:function(ke,_e,B){"use strict";var w=B(74902),H=B(96523);function M(g){let D;const y=m=>()=>{D=null,g.apply(void 0,(0,w.Z)(m))},v=function(){if(D==null){for(var m=arguments.length,E=new Array(m),h=0;h<m;h++)E[h]=arguments[h];D=(0,H.Z)(y(E))}};return v.cancel=()=>{H.Z.cancel(D),D=null},v}_e.Z=M},30291:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return c}});var w=B(15671),H=B(43144),M=B(60136),g=B(51630),D=B(67294),y=B(94184),v=B.n(y),m=B(48555),E=B(10366),h=B(48783),a=B(53124),d=B(67968),_=B(45503);const r=p=>{const{componentCls:A}=p;return{[A]:{position:"fixed",zIndex:p.zIndexPopup}}};var n=(0,d.Z)("Affix",p=>{const A=(0,_.TS)(p,{zIndexPopup:p.zIndexBase+10});return[r(A)]});function l(p){return p!==window?p.getBoundingClientRect():{top:0,bottom:window.innerHeight}}function o(p,A,x){if(x!==void 0&&A.top>p.top-x)return x+A.top}function s(p,A,x){if(x!==void 0&&A.bottom<p.bottom+x){const C=window.innerHeight-A.bottom;return x+C}}const u=["resize","scroll","touchstart","touchmove","touchend","pageshow","load"];function f(){return typeof window!="undefined"?window:null}var e;(function(p){p[p.None=0]="None",p[p.Prepare=1]="Prepare"})(e||(e={}));let t=function(p){(0,M.Z)(x,p);var A=(0,g.Z)(x);function x(){var C;return(0,w.Z)(this,x),C=A.apply(this,arguments),C.state={status:e.None,lastAffix:!1,prevTarget:null},C.placeholderNodeRef=(0,D.createRef)(),C.fixedNodeRef=(0,D.createRef)(),C.addListeners=()=>{const S=C.getTargetFunc(),P=S==null?void 0:S(),{prevTarget:b}=C.state;b!==P&&(u.forEach(L=>{b==null||b.removeEventListener(L,C.lazyUpdatePosition),P==null||P.addEventListener(L,C.lazyUpdatePosition)}),C.updatePosition(),C.setState({prevTarget:P}))},C.removeListeners=()=>{C.timer&&(clearTimeout(C.timer),C.timer=null);const{prevTarget:S}=C.state,P=C.getTargetFunc(),b=P==null?void 0:P();u.forEach(L=>{b==null||b.removeEventListener(L,C.lazyUpdatePosition),S==null||S.removeEventListener(L,C.lazyUpdatePosition)}),C.updatePosition.cancel(),C.lazyUpdatePosition.cancel()},C.getOffsetTop=()=>{const{offsetBottom:S,offsetTop:P}=C.props;return S===void 0&&P===void 0?0:P},C.getOffsetBottom=()=>C.props.offsetBottom,C.measure=()=>{const{status:S,lastAffix:P}=C.state,{onChange:b}=C.props,L=C.getTargetFunc();if(S!==e.Prepare||!C.fixedNodeRef.current||!C.placeholderNodeRef.current||!L)return;const R=C.getOffsetTop(),T=C.getOffsetBottom(),N=L();if(N){const I={status:e.None},F=l(C.placeholderNodeRef.current);if(F.top===0&&F.left===0&&F.width===0&&F.height===0)return;const U=l(N),K=o(F,U,R),G=s(F,U,T);K!==void 0?(I.affixStyle={position:"fixed",top:K,width:F.width,height:F.height},I.placeholderStyle={width:F.width,height:F.height}):G!==void 0&&(I.affixStyle={position:"fixed",bottom:G,width:F.width,height:F.height},I.placeholderStyle={width:F.width,height:F.height}),I.lastAffix=!!I.affixStyle,b&&P!==I.lastAffix&&b(I.lastAffix),C.setState(I)}},C.prepareMeasure=()=>{C.setState({status:e.Prepare,affixStyle:void 0,placeholderStyle:void 0})},C.updatePosition=(0,h.Z)(()=>{C.prepareMeasure()}),C.lazyUpdatePosition=(0,h.Z)(()=>{const S=C.getTargetFunc(),{affixStyle:P}=C.state;if(S&&P){const b=C.getOffsetTop(),L=C.getOffsetBottom(),R=S();if(R&&C.placeholderNodeRef.current){const T=l(R),N=l(C.placeholderNodeRef.current),I=o(N,T,b),F=s(N,T,L);if(I!==void 0&&P.top===I||F!==void 0&&P.bottom===F)return}}C.prepareMeasure()}),C}return(0,H.Z)(x,[{key:"getTargetFunc",value:function(){const{getTargetContainer:S}=this.context,{target:P}=this.props;return P!==void 0?P:S!=null?S:f}},{key:"componentDidMount",value:function(){this.timer=setTimeout(this.addListeners)}},{key:"componentDidUpdate",value:function(S){this.addListeners(),(S.offsetTop!==this.props.offsetTop||S.offsetBottom!==this.props.offsetBottom)&&this.updatePosition(),this.measure()}},{key:"componentWillUnmount",value:function(){this.removeListeners()}},{key:"render",value:function(){const{affixStyle:S,placeholderStyle:P}=this.state,{affixPrefixCls:b,rootClassName:L,children:R}=this.props,T=v()(S&&L,{[b]:!!S});let N=(0,E.Z)(this.props,["prefixCls","offsetTop","offsetBottom","target","onChange","affixPrefixCls","rootClassName"]);return D.createElement(m.Z,{onResize:this.updatePosition},D.createElement("div",Object.assign({},N,{ref:this.placeholderNodeRef}),S&&D.createElement("div",{style:P,"aria-hidden":"true"}),D.createElement("div",{className:T,ref:this.fixedNodeRef,style:S},D.createElement(m.Z,{onResize:this.updatePosition},R))))}}]),x}(D.Component);t.contextType=a.E_;var c=(0,D.forwardRef)((p,A)=>{const{prefixCls:x,rootClassName:C}=p,{getPrefixCls:S}=(0,D.useContext)(a.E_),P=S("affix",x),[b,L]=n(P),R=Object.assign(Object.assign({},p),{affixPrefixCls:P,rootClassName:v()(C,L)});return b(D.createElement(t,Object.assign({},R,{ref:A})))})},36569:function(ke,_e,B){"use strict";B.d(_e,{default:function(){return C}});var w=B(74902),H=B(94184),M=B.n(H),g=B(60276),D=B(67294),y=B(17423),v=B(66367),m=B(58375),E=B(30291),h=B(53124),d=D.createContext(void 0),r=S=>{const{href:P,title:b,prefixCls:L,children:R,className:T,target:N,replace:I}=S,F=D.useContext(d),{registerLink:U,unregisterLink:K,scrollTo:G,onClick:V,activeLink:X,direction:ee}=F||{};D.useEffect(()=>(U==null||U(P),()=>{K==null||K(P)}),[P]);const oe=me=>{I&&(me.preventDefault(),window.location.replace(P)),V==null||V(me,{title:b,href:P}),G==null||G(P)},{getPrefixCls:ue}=D.useContext(h.E_),Ae=ue("anchor",L),fe=X===P,he=M()(`${Ae}-link`,T,{[`${Ae}-link-active`]:fe}),ve=M()(`${Ae}-link-title`,{[`${Ae}-link-title-active`]:fe});return D.createElement("div",{className:he},D.createElement("a",{className:ve,href:P,title:typeof b=="string"?b:"",target:N,onClick:oe},b),ee!=="horizontal"?R:null)},n=B(14747),l=B(67968),o=B(45503);const s=S=>{const{componentCls:P,holderOffsetBlock:b,motionDurationSlow:L,lineWidthBold:R,colorPrimary:T,lineType:N,colorSplit:I}=S;return{[`${P}-wrapper`]:{marginBlockStart:-b,paddingBlockStart:b,[P]:Object.assign(Object.assign({},(0,n.Wf)(S)),{position:"relative",paddingInlineStart:R,[`${P}-link`]:{paddingBlock:S.linkPaddingBlock,paddingInline:`${S.linkPaddingInlineStart}px 0`,"&-title":Object.assign(Object.assign({},n.vS),{position:"relative",display:"block",marginBlockEnd:S.anchorTitleBlock,color:S.colorText,transition:`all ${S.motionDurationSlow}`,"&:only-child":{marginBlockEnd:0}}),[`&-active > ${P}-link-title`]:{color:S.colorPrimary},[`${P}-link`]:{paddingBlock:S.anchorPaddingBlockSecondary}}}),[`&:not(${P}-wrapper-horizontal)`]:{[P]:{"&::before":{position:"absolute",insetInlineStart:0,top:0,height:"100%",borderInlineStart:`${R}px ${N} ${I}`,content:'" "'},[`${P}-ink`]:{position:"absolute",insetInlineStart:0,display:"none",transform:"translateY(-50%)",transition:`top ${L} ease-in-out`,width:R,backgroundColor:T,[`&${P}-ink-visible`]:{display:"inline-block"}}}},[`${P}-fixed ${P}-ink ${P}-ink`]:{display:"none"}}}},u=S=>{const{componentCls:P,motionDurationSlow:b,lineWidthBold:L,colorPrimary:R}=S;return{[`${P}-wrapper-horizontal`]:{position:"relative","&::before":{position:"absolute",left:{_skip_check_:!0,value:0},right:{_skip_check_:!0,value:0},bottom:0,borderBottom:`1px ${S.lineType} ${S.colorSplit}`,content:'" "'},[P]:{overflowX:"scroll",position:"relative",display:"flex",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"},[`${P}-link:first-of-type`]:{paddingInline:0},[`${P}-ink`]:{position:"absolute",bottom:0,transition:`left ${b} ease-in-out, width ${b} ease-in-out`,height:L,backgroundColor:R}}}}};var f=(0,l.Z)("Anchor",S=>{const{fontSize:P,fontSizeLG:b,paddingXXS:L}=S,R=(0,o.TS)(S,{holderOffsetBlock:L,anchorPaddingBlockSecondary:L/2,anchorTitleBlock:P/14*3,anchorBallSize:b/2});return[s(R),u(R)]},S=>({linkPaddingBlock:S.paddingXXS,linkPaddingInlineStart:S.padding}));function e(){return window}function t(S,P){if(!S.getClientRects().length)return 0;const b=S.getBoundingClientRect();return b.width||b.height?P===window?(P=S.ownerDocument.documentElement,b.top-P.clientTop):b.top-P.getBoundingClientRect().top:b.top}const i=/#([\S ]+)$/,c=S=>{var P;const{rootClassName:b,anchorPrefixCls:L,className:R,style:T,offsetTop:N,affix:I=!0,showInkInFixed:F=!1,children:U,items:K,direction:G="vertical",bounds:V,targetOffset:X,onClick:ee,onChange:oe,getContainer:ue,getCurrentAnchor:Ae,replace:fe}=S,[he,ve]=D.useState([]),[me,Te]=D.useState(null),Ce=D.useRef(me),ye=D.useRef(null),q=D.useRef(null),Q=D.useRef(!1),{direction:$,getTargetContainer:j,anchor:re}=D.useContext(h.E_),k=(P=ue!=null?ue:j)!==null&&P!==void 0?P:e,te=JSON.stringify(he),ie=(0,g.useEvent)(ht=>{he.includes(ht)||ve(dt=>[].concat((0,w.Z)(dt),[ht]))}),J=(0,g.useEvent)(ht=>{he.includes(ht)&&ve(dt=>dt.filter(At=>At!==ht))}),ce=()=>{var ht;const dt=(ht=ye.current)===null||ht===void 0?void 0:ht.querySelector(`.${L}-link-title-active`);if(dt&&q.current){const{style:At}=q.current,Ot=G==="horizontal";At.top=Ot?"":`${dt.offsetTop+dt.clientHeight/2}px`,At.height=Ot?"":`${dt.clientHeight}px`,At.left=Ot?`${dt.offsetLeft}px`:"",At.width=Ot?`${dt.clientWidth}px`:"",Ot&&(0,y.Z)(dt,{scrollMode:"if-needed",block:"nearest"})}},Se=function(ht){let dt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,At=arguments.length>2&&arguments[2]!==void 0?arguments[2]:5;const Ot=[],Ke=k();return ht.forEach(Xe=>{const Je=i.exec(Xe==null?void 0:Xe.toString());if(!Je)return;const Nt=document.getElementById(Je[1]);if(Nt){const ut=t(Nt,Ke);ut<dt+At&&Ot.push({link:Xe,top:ut})}}),Ot.length?Ot.reduce((Je,Nt)=>Nt.top>Je.top?Nt:Je).link:""},Le=(0,g.useEvent)(ht=>{if(Ce.current===ht)return;const dt=typeof Ae=="function"?Ae(ht):ht;Te(dt),Ce.current=dt,oe==null||oe(ht)}),ze=D.useCallback(()=>{if(Q.current)return;const ht=Se(he,X!==void 0?X:N||0,V);Le(ht)},[te,X,N]),We=D.useCallback(ht=>{Le(ht);const dt=i.exec(ht);if(!dt)return;const At=document.getElementById(dt[1]);if(!At)return;const Ot=k(),Ke=(0,v.Z)(Ot,!0),Xe=t(At,Ot);let Je=Ke+Xe;Je-=X!==void 0?X:N||0,Q.current=!0,(0,m.Z)(Je,{getContainer:k,callback(){Q.current=!1}})},[X,N]),tt=M()(b,`${L}-wrapper`,{[`${L}-wrapper-horizontal`]:G==="horizontal",[`${L}-rtl`]:$==="rtl"},R,re==null?void 0:re.className),je=M()(L,{[`${L}-fixed`]:!I&&!F}),pe=M()(`${L}-ink`,{[`${L}-ink-visible`]:me}),Oe=Object.assign(Object.assign({maxHeight:N?`calc(100vh - ${N}px)`:"100vh"},re==null?void 0:re.style),T),Ie=ht=>Array.isArray(ht)?ht.map(dt=>D.createElement(r,Object.assign({replace:fe},dt,{key:dt.key}),G==="vertical"&&Ie(dt.children))):null,Pe=D.createElement("div",{ref:ye,className:tt,style:Oe},D.createElement("div",{className:je},D.createElement("span",{className:pe,ref:q}),"items"in S?Ie(K):U));D.useEffect(()=>{const ht=k();return ze(),ht==null||ht.addEventListener("scroll",ze),()=>{ht==null||ht.removeEventListener("scroll",ze)}},[te]),D.useEffect(()=>{typeof Ae=="function"&&Le(Ae(Ce.current||""))},[Ae]),D.useEffect(()=>{ce()},[G,Ae,te,me]);const ot=D.useMemo(()=>({registerLink:ie,unregisterLink:J,scrollTo:We,activeLink:me,onClick:ee,direction:G}),[me,ee,We,G]);return D.createElement(d.Provider,{value:ot},I?D.createElement(E.Z,{offsetTop:N,target:k},Pe):Pe)};var A=S=>{const{prefixCls:P,rootClassName:b}=S,{getPrefixCls:L}=D.useContext(h.E_),R=L("anchor",P),[T,N]=f(R);return T(D.createElement(c,Object.assign({},S,{rootClassName:M()(N,b),anchorPrefixCls:R})))};const x=A;x.Link=r;var C=x},85673:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return L}});var w=B(94184),H=B.n(w),M=B(37419),g=B(1337),D=B(67294),y=B(96159),v=B(53124),m=B(42922),E=B(35874);const h=R=>{let{children:T}=R;const{getPrefixCls:N}=D.useContext(v.E_),I=N("breadcrumb");return D.createElement("li",{className:`${I}-separator`,"aria-hidden":"true"},T===""?T:T||"/")};h.__ANT_BREADCRUMB_SEPARATOR=!0;var a=h,d=function(R,T){var N={};for(var I in R)Object.prototype.hasOwnProperty.call(R,I)&&T.indexOf(I)<0&&(N[I]=R[I]);if(R!=null&&typeof Object.getOwnPropertySymbols=="function")for(var F=0,I=Object.getOwnPropertySymbols(R);F<I.length;F++)T.indexOf(I[F])<0&&Object.prototype.propertyIsEnumerable.call(R,I[F])&&(N[I[F]]=R[I[F]]);return N};function _(R,T){if(R.title===void 0||R.title===null)return null;const N=Object.keys(T).join("|");return typeof R.title=="object"?R.title:String(R.title).replace(new RegExp(`:(${N})`,"g"),(I,F)=>T[F]||I)}function r(R,T,N,I){if(N==null)return null;const{className:F,onClick:U}=T,K=d(T,["className","onClick"]),G=Object.assign(Object.assign({},(0,g.Z)(K,{data:!0,aria:!0})),{onClick:U});return I!==void 0?D.createElement("a",Object.assign({},G,{className:H()(`${R}-link`,F),href:I}),N):D.createElement("span",Object.assign({},G,{className:H()(`${R}-link`,F)}),N)}function n(R,T){return(I,F,U,K,G)=>{if(T)return T(I,F,U,K);const V=_(I,F);return r(R,I,V,G)}}var l=function(R,T){var N={};for(var I in R)Object.prototype.hasOwnProperty.call(R,I)&&T.indexOf(I)<0&&(N[I]=R[I]);if(R!=null&&typeof Object.getOwnPropertySymbols=="function")for(var F=0,I=Object.getOwnPropertySymbols(R);F<I.length;F++)T.indexOf(I[F])<0&&Object.prototype.propertyIsEnumerable.call(R,I[F])&&(N[I[F]]=R[I[F]]);return N};const o=R=>{const{prefixCls:T,separator:N="/",children:I,menu:F,overlay:U,dropdownProps:K,href:G}=R,X=(ee=>{if(F||U){const oe=Object.assign({},K);if(F){const ue=F||{},{items:Ae}=ue,fe=l(ue,["items"]);oe.menu=Object.assign(Object.assign({},fe),{items:Ae==null?void 0:Ae.map((he,ve)=>{var{key:me,title:Te,label:Ce,path:ye}=he,q=l(he,["key","title","label","path"]);let Q=Ce!=null?Ce:Te;return ye&&(Q=D.createElement("a",{href:`${G}${ye}`},Q)),Object.assign(Object.assign({},q),{key:me!=null?me:ve,label:Q})})})}else U&&(oe.overlay=U);return D.createElement(E.Z,Object.assign({placement:"bottom"},oe),D.createElement("span",{className:`${T}-overlay-link`},ee,D.createElement(m.Z,null)))}return ee})(I);return X!=null?D.createElement(D.Fragment,null,D.createElement("li",null,X),N&&D.createElement(a,null,N)):null},s=R=>{const{prefixCls:T,children:N,href:I}=R,F=l(R,["prefixCls","children","href"]),{getPrefixCls:U}=D.useContext(v.E_),K=U("breadcrumb",T);return D.createElement(o,Object.assign({},F,{prefixCls:K}),r(K,F,N,I))};s.__ANT_BREADCRUMB_ITEM=!0;var u=s,f=B(14747),e=B(67968),t=B(45503);const i=R=>{const{componentCls:T,iconCls:N}=R;return{[T]:Object.assign(Object.assign({},(0,f.Wf)(R)),{color:R.itemColor,fontSize:R.fontSize,[N]:{fontSize:R.iconFontSize},ol:{display:"flex",flexWrap:"wrap",margin:0,padding:0,listStyle:"none"},a:Object.assign({color:R.linkColor,transition:`color ${R.motionDurationMid}`,padding:`0 ${R.paddingXXS}px`,borderRadius:R.borderRadiusSM,height:R.lineHeight*R.fontSize,display:"inline-block",marginInline:-R.marginXXS,"&:hover":{color:R.linkHoverColor,backgroundColor:R.colorBgTextHover}},(0,f.Qy)(R)),"li:last-child":{color:R.lastItemColor},[`${T}-separator`]:{marginInline:R.separatorMargin,color:R.separatorColor},[`${T}-link`]:{[`
|
|
> ${N} + span,
|
|
> ${N} + a
|
|
`]:{marginInlineStart:R.marginXXS}},[`${T}-overlay-link`]:{borderRadius:R.borderRadiusSM,height:R.lineHeight*R.fontSize,display:"inline-block",padding:`0 ${R.paddingXXS}px`,marginInline:-R.marginXXS,[`> ${N}`]:{marginInlineStart:R.marginXXS,fontSize:R.fontSizeIcon},"&:hover":{color:R.linkHoverColor,backgroundColor:R.colorBgTextHover,a:{color:R.linkHoverColor}},a:{"&:hover":{backgroundColor:"transparent"}}},[`&${R.componentCls}-rtl`]:{direction:"rtl"}})}};var c=(0,e.Z)("Breadcrumb",R=>{const T=(0,t.TS)(R,{});return[i(T)]},R=>({itemColor:R.colorTextDescription,lastItemColor:R.colorText,iconFontSize:R.fontSize,linkColor:R.colorTextDescription,linkHoverColor:R.colorText,separatorColor:R.colorTextDescription,separatorMargin:R.marginXS})),p=function(R,T){var N={};for(var I in R)Object.prototype.hasOwnProperty.call(R,I)&&T.indexOf(I)<0&&(N[I]=R[I]);if(R!=null&&typeof Object.getOwnPropertySymbols=="function")for(var F=0,I=Object.getOwnPropertySymbols(R);F<I.length;F++)T.indexOf(I[F])<0&&Object.prototype.propertyIsEnumerable.call(R,I[F])&&(N[I[F]]=R[I[F]]);return N};function A(R){const{breadcrumbName:T,children:N}=R,I=p(R,["breadcrumbName","children"]),F=Object.assign({title:T},I);return N&&(F.menu={items:N.map(U=>{var{breadcrumbName:K}=U,G=p(U,["breadcrumbName"]);return Object.assign(Object.assign({},G),{title:K})})}),F}function x(R,T){return(0,D.useMemo)(()=>R||(T?T.map(A):null),[R,T])}var C=function(R,T){var N={};for(var I in R)Object.prototype.hasOwnProperty.call(R,I)&&T.indexOf(I)<0&&(N[I]=R[I]);if(R!=null&&typeof Object.getOwnPropertySymbols=="function")for(var F=0,I=Object.getOwnPropertySymbols(R);F<I.length;F++)T.indexOf(I[F])<0&&Object.prototype.propertyIsEnumerable.call(R,I[F])&&(N[I[F]]=R[I[F]]);return N};const S=(R,T)=>{if(T===void 0)return T;let N=(T||"").replace(/^\//,"");return Object.keys(R).forEach(I=>{N=N.replace(`:${I}`,R[I])}),N},P=R=>{const{prefixCls:T,separator:N="/",style:I,className:F,rootClassName:U,routes:K,items:G,children:V,itemRender:X,params:ee={}}=R,oe=C(R,["prefixCls","separator","style","className","rootClassName","routes","items","children","itemRender","params"]),{getPrefixCls:ue,direction:Ae,breadcrumb:fe}=D.useContext(v.E_);let he;const ve=ue("breadcrumb",T),[me,Te]=c(ve),Ce=x(G,K),ye=n(ve,X);if(Ce&&Ce.length>0){const $=[],j=G||K;he=Ce.map((re,k)=>{const{path:te,key:ie,type:J,menu:ce,overlay:Se,onClick:Le,className:ze,separator:We,dropdownProps:tt}=re,je=S(ee,te);je!==void 0&&$.push(je);const pe=ie!=null?ie:k;if(J==="separator")return D.createElement(a,{key:pe},We);const Oe={},Ie=k===Ce.length-1;ce?Oe.menu=ce:Se&&(Oe.overlay=Se);let{href:Pe}=re;return $.length&&je!==void 0&&(Pe=`#/${$.join("/")}`),D.createElement(o,Object.assign({key:pe},Oe,(0,g.Z)(re,{data:!0,aria:!0}),{className:ze,dropdownProps:tt,href:Pe,separator:Ie?"":N,onClick:Le,prefixCls:ve}),ye(re,ee,j,$,Pe))})}else if(V){const $=(0,M.Z)(V).length;he=(0,M.Z)(V).map((j,re)=>{if(!j)return j;const k=re===$-1;return(0,y.Tm)(j,{separator:k?"":N,key:re})})}const q=H()(ve,fe==null?void 0:fe.className,{[`${ve}-rtl`]:Ae==="rtl"},F,U,Te),Q=Object.assign(Object.assign({},fe==null?void 0:fe.style),I);return me(D.createElement("nav",Object.assign({className:q,style:Q},oe),D.createElement("ol",null,he)))};P.Item=u,P.Separator=a;var b=P,L=b},88258:function(ke,_e,B){"use strict";var w=B(67294),H=B(53124),M=B(32983);const g=D=>{const{componentName:y}=D,{getPrefixCls:v}=(0,w.useContext)(H.E_),m=v("empty");switch(y){case"Table":case"List":return w.createElement(M.Z,{image:M.Z.PRESENTED_IMAGE_SIMPLE});case"Select":case"TreeSelect":case"Cascader":case"Transfer":case"Mentions":return w.createElement(M.Z,{image:M.Z.PRESENTED_IMAGE_SIMPLE,className:`${m}-small`});default:return w.createElement(M.Z,null)}};_e.Z=g},96074:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return d}});var w=B(94184),H=B.n(w),M=B(67294),g=B(53124),D=B(14747),y=B(67968),v=B(45503);const m=_=>{const{componentCls:r,sizePaddingEdgeHorizontal:n,colorSplit:l,lineWidth:o,textPaddingInline:s,orientationMargin:u,verticalMarginInline:f}=_;return{[r]:Object.assign(Object.assign({},(0,D.Wf)(_)),{borderBlockStart:`${o}px solid ${l}`,"&-vertical":{position:"relative",top:"-0.06em",display:"inline-block",height:"0.9em",marginInline:f,marginBlock:0,verticalAlign:"middle",borderTop:0,borderInlineStart:`${o}px solid ${l}`},"&-horizontal":{display:"flex",clear:"both",width:"100%",minWidth:"100%",margin:`${_.dividerHorizontalGutterMargin}px 0`},[`&-horizontal${r}-with-text`]:{display:"flex",alignItems:"center",margin:`${_.dividerHorizontalWithTextGutterMargin}px 0`,color:_.colorTextHeading,fontWeight:500,fontSize:_.fontSizeLG,whiteSpace:"nowrap",textAlign:"center",borderBlockStart:`0 ${l}`,"&::before, &::after":{position:"relative",width:"50%",borderBlockStart:`${o}px solid transparent`,borderBlockStartColor:"inherit",borderBlockEnd:0,transform:"translateY(50%)",content:"''"}},[`&-horizontal${r}-with-text-left`]:{"&::before":{width:`${u*100}%`},"&::after":{width:`${100-u*100}%`}},[`&-horizontal${r}-with-text-right`]:{"&::before":{width:`${100-u*100}%`},"&::after":{width:`${u*100}%`}},[`${r}-inner-text`]:{display:"inline-block",paddingBlock:0,paddingInline:s},"&-dashed":{background:"none",borderColor:l,borderStyle:"dashed",borderWidth:`${o}px 0 0`},[`&-horizontal${r}-with-text${r}-dashed`]:{"&::before, &::after":{borderStyle:"dashed none none"}},[`&-vertical${r}-dashed`]:{borderInlineStartWidth:o,borderInlineEnd:0,borderBlockStart:0,borderBlockEnd:0},[`&-plain${r}-with-text`]:{color:_.colorText,fontWeight:"normal",fontSize:_.fontSize},[`&-horizontal${r}-with-text-left${r}-no-default-orientation-margin-left`]:{"&::before":{width:0},"&::after":{width:"100%"},[`${r}-inner-text`]:{paddingInlineStart:n}},[`&-horizontal${r}-with-text-right${r}-no-default-orientation-margin-right`]:{"&::before":{width:"100%"},"&::after":{width:0},[`${r}-inner-text`]:{paddingInlineEnd:n}}})}};var E=(0,y.Z)("Divider",_=>{const r=(0,v.TS)(_,{dividerHorizontalWithTextGutterMargin:_.margin,dividerHorizontalGutterMargin:_.marginLG,sizePaddingEdgeHorizontal:0});return[m(r)]},_=>({textPaddingInline:"1em",orientationMargin:.05,verticalMarginInline:_.marginXS})),h=function(_,r){var n={};for(var l in _)Object.prototype.hasOwnProperty.call(_,l)&&r.indexOf(l)<0&&(n[l]=_[l]);if(_!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,l=Object.getOwnPropertySymbols(_);o<l.length;o++)r.indexOf(l[o])<0&&Object.prototype.propertyIsEnumerable.call(_,l[o])&&(n[l[o]]=_[l[o]]);return n},d=_=>{const{getPrefixCls:r,direction:n,divider:l}=M.useContext(g.E_),{prefixCls:o,type:s="horizontal",orientation:u="center",orientationMargin:f,className:e,rootClassName:t,children:i,dashed:c,plain:p,style:A}=_,x=h(_,["prefixCls","type","orientation","orientationMargin","className","rootClassName","children","dashed","plain","style"]),C=r("divider",o),[S,P]=E(C),b=u.length>0?`-${u}`:u,L=!!i,R=u==="left"&&f!=null,T=u==="right"&&f!=null,N=H()(C,l==null?void 0:l.className,P,`${C}-${s}`,{[`${C}-with-text`]:L,[`${C}-with-text${b}`]:L,[`${C}-dashed`]:!!c,[`${C}-plain`]:!!p,[`${C}-rtl`]:n==="rtl",[`${C}-no-default-orientation-margin-left`]:R,[`${C}-no-default-orientation-margin-right`]:T},e,t),I=M.useMemo(()=>typeof f=="number"?f:/^\d+$/.test(f)?Number(f):f,[f]),F=Object.assign(Object.assign({},R&&{marginLeft:I}),T&&{marginRight:I});return S(M.createElement("div",Object.assign({className:N,style:Object.assign(Object.assign({},l==null?void 0:l.style),A)},x,{role:"separator"}),i&&s!=="vertical"&&M.createElement("span",{className:`${C}-inner-text`,style:F},i)))}},35874:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return Q}});var w=B(67294),H=B(91034),M=B(94184),g=B.n(M),D=B(87462),y=B(4942),v=B(97685),m=B(45987),E=B(62709),h=B(71002),a=B(12060);function d($,j,re){var k=React.useRef({});return(!("value"in k.current)||re(k.current.condition,j))&&(k.current.value=$(),k.current.condition=j),k.current.value}function _($,j){typeof $=="function"?$(j):(0,h.Z)($)==="object"&&$&&"current"in $&&($.current=j)}function r(){for(var $=arguments.length,j=new Array($),re=0;re<$;re++)j[re]=arguments[re];var k=j.filter(function(te){return te});return k.length<=1?k[0]:function(te){j.forEach(function(ie){_(ie,te)})}}function n(){for(var $=arguments.length,j=new Array($),re=0;re<$;re++)j[re]=arguments[re];return useMemo(function(){return r.apply(void 0,j)},j,function(k,te){return k.length===te.length&&k.every(function(ie,J){return ie===te[J]})})}function l($){var j,re,k=(0,a.isMemo)($)?$.type.type:$.type;return!(typeof k=="function"&&!((j=k.prototype)!==null&&j!==void 0&&j.render)||typeof $=="function"&&!((re=$.prototype)!==null&&re!==void 0&&re.render))}var o={MAC_ENTER:3,BACKSPACE:8,TAB:9,NUM_CENTER:12,ENTER:13,SHIFT:16,CTRL:17,ALT:18,PAUSE:19,CAPS_LOCK:20,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,PRINT_SCREEN:44,INSERT:45,DELETE:46,ZERO:48,ONE:49,TWO:50,THREE:51,FOUR:52,FIVE:53,SIX:54,SEVEN:55,EIGHT:56,NINE:57,QUESTION_MARK:63,A:65,B:66,C:67,D:68,E:69,F:70,G:71,H:72,I:73,J:74,K:75,L:76,M:77,N:78,O:79,P:80,Q:81,R:82,S:83,T:84,U:85,V:86,W:87,X:88,Y:89,Z:90,META:91,WIN_KEY_RIGHT:92,CONTEXT_MENU:93,NUM_ZERO:96,NUM_ONE:97,NUM_TWO:98,NUM_THREE:99,NUM_FOUR:100,NUM_FIVE:101,NUM_SIX:102,NUM_SEVEN:103,NUM_EIGHT:104,NUM_NINE:105,NUM_MULTIPLY:106,NUM_PLUS:107,NUM_MINUS:109,NUM_PERIOD:110,NUM_DIVISION:111,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,NUMLOCK:144,SEMICOLON:186,DASH:189,EQUALS:187,COMMA:188,PERIOD:190,SLASH:191,APOSTROPHE:192,SINGLE_QUOTE:222,OPEN_SQUARE_BRACKET:219,BACKSLASH:220,CLOSE_SQUARE_BRACKET:221,WIN_KEY:224,MAC_FF_META:224,WIN_IME:229,isTextModifyingKeyEvent:function(j){var re=j.keyCode;if(j.altKey&&!j.ctrlKey||j.metaKey||re>=o.F1&&re<=o.F12)return!1;switch(re){case o.ALT:case o.CAPS_LOCK:case o.CONTEXT_MENU:case o.CTRL:case o.DOWN:case o.END:case o.ESC:case o.HOME:case o.INSERT:case o.LEFT:case o.MAC_FF_META:case o.META:case o.NUMLOCK:case o.NUM_CENTER:case o.PAGE_DOWN:case o.PAGE_UP:case o.PAUSE:case o.PRINT_SCREEN:case o.RIGHT:case o.SHIFT:case o.UP:case o.WIN_KEY:case o.WIN_KEY_RIGHT:return!1;default:return!0}},isCharacterKey:function(j){if(j>=o.ZERO&&j<=o.NINE||j>=o.NUM_ZERO&&j<=o.NUM_MULTIPLY||j>=o.A&&j<=o.Z||window.navigator.userAgent.indexOf("WebKit")!==-1&&j===0)return!0;switch(j){case o.SPACE:case o.QUESTION_MARK:case o.NUM_PLUS:case o.NUM_MINUS:case o.NUM_PERIOD:case o.NUM_DIVISION:case o.SEMICOLON:case o.DASH:case o.EQUALS:case o.COMMA:case o.PERIOD:case o.SLASH:case o.APOSTROPHE:case o.SINGLE_QUOTE:case o.OPEN_SQUARE_BRACKET:case o.BACKSLASH:case o.CLOSE_SQUARE_BRACKET:return!0;default:return!1}}},s=o,u=function(j){return+setTimeout(j,16)},f=function(j){return clearTimeout(j)};typeof window!="undefined"&&"requestAnimationFrame"in window&&(u=function(j){return window.requestAnimationFrame(j)},f=function(j){return window.cancelAnimationFrame(j)});var e=0,t=new Map;function i($){t.delete($)}var c=function(j){var re=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1;e+=1;var k=e;function te(ie){if(ie===0)i(k),j();else{var J=u(function(){te(ie-1)});t.set(k,J)}}return te(re),k};c.cancel=function($){var j=t.get($);return i(j),f(j)};var p=c,A=s.ESC,x=s.TAB;function C($){var j=$.visible,re=$.triggerRef,k=$.onVisibleChange,te=$.autoFocus,ie=$.overlayRef,J=w.useRef(!1),ce=function(){if(j){var We,tt;(We=re.current)===null||We===void 0||(tt=We.focus)===null||tt===void 0||tt.call(We),k==null||k(!1)}},Se=function(){var We;return(We=ie.current)!==null&&We!==void 0&&We.focus?(ie.current.focus(),J.current=!0,!0):!1},Le=function(We){switch(We.keyCode){case A:ce();break;case x:{var tt=!1;J.current||(tt=Se()),tt?We.preventDefault():ce();break}}};w.useEffect(function(){return j?(window.addEventListener("keydown",Le),te&&p(Se,3),function(){window.removeEventListener("keydown",Le),J.current=!1}):function(){J.current=!1}},[j])}var S=(0,w.forwardRef)(function($,j){var re=$.overlay,k=$.arrow,te=$.prefixCls,ie=(0,w.useMemo)(function(){var ce;return typeof re=="function"?ce=re():ce=re,ce},[re]),J=r(j,ie==null?void 0:ie.ref);return w.createElement(w.Fragment,null,k&&w.createElement("div",{className:"".concat(te,"-arrow")}),w.cloneElement(ie,{ref:l(ie)?J:void 0}))}),P=S,b={adjustX:1,adjustY:1},L=[0,0],R={topLeft:{points:["bl","tl"],overflow:b,offset:[0,-4],targetOffset:L},top:{points:["bc","tc"],overflow:b,offset:[0,-4],targetOffset:L},topRight:{points:["br","tr"],overflow:b,offset:[0,-4],targetOffset:L},bottomLeft:{points:["tl","bl"],overflow:b,offset:[0,4],targetOffset:L},bottom:{points:["tc","bc"],overflow:b,offset:[0,4],targetOffset:L},bottomRight:{points:["tr","br"],overflow:b,offset:[0,4],targetOffset:L}},T=R,N=["arrow","prefixCls","transitionName","animation","align","placement","placements","getPopupContainer","showAction","hideAction","overlayClassName","overlayStyle","visible","trigger","autoFocus","overlay","children","onVisibleChange"];function I($,j){var re,k=$.arrow,te=k===void 0?!1:k,ie=$.prefixCls,J=ie===void 0?"rc-dropdown":ie,ce=$.transitionName,Se=$.animation,Le=$.align,ze=$.placement,We=ze===void 0?"bottomLeft":ze,tt=$.placements,je=tt===void 0?T:tt,pe=$.getPopupContainer,Oe=$.showAction,Ie=$.hideAction,Pe=$.overlayClassName,ot=$.overlayStyle,ht=$.visible,dt=$.trigger,At=dt===void 0?["hover"]:dt,Ot=$.autoFocus,Ke=$.overlay,Xe=$.children,Je=$.onVisibleChange,Nt=(0,m.Z)($,N),ut=w.useState(),Kt=(0,v.Z)(ut,2),_t=Kt[0],ge=Kt[1],we="visible"in $?ht:_t,Ue=w.useRef(null),De=w.useRef(null),nt=w.useRef(null);w.useImperativeHandle(j,function(){return Ue.current});var qe=function(Y){ge(Y),Je==null||Je(Y)};C({visible:we,triggerRef:nt,onVisibleChange:qe,autoFocus:Ot,overlayRef:De});var rt=function(Y){var se=$.onOverlayClick;ge(!1),se&&se(Y)},ft=function(){return w.createElement(P,{ref:De,overlay:Ke,prefixCls:J,arrow:te})},Tt=function(){return typeof Ke=="function"?ft:ft()},Ze=function(){var Y=$.minOverlayWidthMatchTrigger,se=$.alignPoint;return"minOverlayWidthMatchTrigger"in $?Y:!se},O=function(){var Y=$.openClassName;return Y!==void 0?Y:"".concat(J,"-open")},W=w.cloneElement(Xe,{className:g()((re=Xe.props)===null||re===void 0?void 0:re.className,we&&O()),ref:l(Xe)?r(nt,Xe.ref):void 0}),z=Ie;return!z&&At.indexOf("contextMenu")!==-1&&(z=["click"]),w.createElement(E.Z,(0,D.Z)({builtinPlacements:je},Nt,{prefixCls:J,ref:Ue,popupClassName:g()(Pe,(0,y.Z)({},"".concat(J,"-show-arrow"),te)),popupStyle:ot,action:At,showAction:Oe,hideAction:z,popupPlacement:We,popupAlign:Le,popupTransitionName:ce,popupAnimation:Se,popupVisible:we,stretch:Ze()?"minWidth":"",popup:Tt(),onPopupVisibleChange:qe,onPopupClick:rt,getPopupContainer:pe}),W)}var F=w.forwardRef(I),U=F,K=B(60276),G=B(5663),V=B(10366),X=B(80636),ee=B(8745),oe=B(96159),ue=B(53124),Ae=B(68508),fe=B(76529),he=B(46605),ve=B(66748);const me=null,Te=$=>{const{menu:j,arrow:re,prefixCls:k,children:te,trigger:ie,disabled:J,dropdownRender:ce,getPopupContainer:Se,overlayClassName:Le,rootClassName:ze,open:We,onOpenChange:tt,visible:je,onVisibleChange:pe,mouseEnterDelay:Oe=.15,mouseLeaveDelay:Ie=.1,autoAdjustOverflow:Pe=!0,placement:ot="",overlay:ht,transitionName:dt}=$,{getPopupContainer:At,getPrefixCls:Ot,direction:Ke}=w.useContext(ue.E_),Xe=w.useMemo(()=>{const W=Ot();return dt!==void 0?dt:ot.includes("top")?`${W}-slide-down`:`${W}-slide-up`},[Ot,ot,dt]),Je=w.useMemo(()=>ot?ot.includes("Center")?ot.slice(0,ot.indexOf("Center")):ot:Ke==="rtl"?"bottomRight":"bottomLeft",[ot,Ke]),Nt=Ot("dropdown",k),[ut,Kt]=(0,ve.Z)(Nt),[,_t]=(0,he.Z)(),ge=w.Children.only(te),we=(0,oe.Tm)(ge,{className:g()(`${Nt}-trigger`,{[`${Nt}-rtl`]:Ke==="rtl"},ge.props.className),disabled:J}),Ue=J?[]:ie;let De;Ue&&Ue.includes("contextMenu")&&(De=!0);const[nt,qe]=(0,G.Z)(!1,{value:We!=null?We:je}),rt=(0,K.useEvent)(W=>{tt==null||tt(W),pe==null||pe(W),qe(W)}),ft=g()(Le,ze,Kt,{[`${Nt}-rtl`]:Ke==="rtl"}),Tt=(0,X.Z)({arrowPointAtCenter:typeof re=="object"&&re.pointAtCenter,autoAdjustOverflow:Pe,offset:_t.marginXXS,arrowWidth:re?_t.sizePopupArrow:0,borderRadius:_t.borderRadius}),Ze=w.useCallback(()=>{qe(!1)},[]),O=()=>{let W;return j!=null&&j.items?W=w.createElement(Ae.default,Object.assign({},j)):typeof ht=="function"?W=ht():W=ht,ce&&(W=ce(W)),W=w.Children.only(typeof W=="string"?w.createElement("span",null,W):W),w.createElement(fe.J,{prefixCls:`${Nt}-menu`,expandIcon:w.createElement("span",{className:`${Nt}-menu-submenu-arrow`},w.createElement(H.Z,{className:`${Nt}-menu-submenu-arrow-icon`})),mode:"vertical",selectable:!1,onClick:Ze,validator:z=>{let{mode:Z}=z}},W)};return ut(w.createElement(U,Object.assign({alignPoint:De},(0,V.Z)($,["rootClassName"]),{mouseEnterDelay:Oe,mouseLeaveDelay:Ie,visible:nt,builtinPlacements:Tt,arrow:!!re,overlayClassName:ft,prefixCls:Nt,getPopupContainer:Se||At,transitionName:Xe,trigger:Ue,overlay:O,placement:Je,onVisibleChange:rt}),we))};function Ce($){return Object.assign(Object.assign({},$),{align:{overflow:{adjustX:!1,adjustY:!1}}})}const ye=(0,ee.Z)(Te,"dropdown",$=>$,Ce),q=$=>w.createElement(ye,Object.assign({},$),w.createElement("span",null));Te._InternalPanelDoNotUseOrYouWillBeFired=q;var Q=Te},85418:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return n}});var w=B(35874),H=B(94184),M=B.n(H),g=B(67294),D=B(25877),y=B(71577),v=B(53124),m=B(93421),E=B(4173),h=B(66748),a=function(l,o){var s={};for(var u in l)Object.prototype.hasOwnProperty.call(l,u)&&o.indexOf(u)<0&&(s[u]=l[u]);if(l!=null&&typeof Object.getOwnPropertySymbols=="function")for(var f=0,u=Object.getOwnPropertySymbols(l);f<u.length;f++)o.indexOf(u[f])<0&&Object.prototype.propertyIsEnumerable.call(l,u[f])&&(s[u[f]]=l[u[f]]);return s};const d=l=>{const{getPopupContainer:o,getPrefixCls:s,direction:u}=g.useContext(v.E_),{prefixCls:f,type:e="default",danger:t,disabled:i,loading:c,onClick:p,htmlType:A,children:x,className:C,menu:S,arrow:P,autoFocus:b,overlay:L,trigger:R,align:T,open:N,onOpenChange:I,placement:F,getPopupContainer:U,href:K,icon:G=g.createElement(D.Z,null),title:V,buttonsRender:X=J=>J,mouseEnterDelay:ee,mouseLeaveDelay:oe,overlayClassName:ue,overlayStyle:Ae,destroyPopupOnHide:fe,dropdownRender:he}=l,ve=a(l,["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"]),me=s("dropdown",f),Te=`${me}-button`,[Ce,ye]=(0,h.Z)(me),q={menu:S,arrow:P,autoFocus:b,align:T,disabled:i,trigger:i?[]:R,onOpenChange:I,getPopupContainer:U||o,mouseEnterDelay:ee,mouseLeaveDelay:oe,overlayClassName:ue,overlayStyle:Ae,destroyPopupOnHide:fe,dropdownRender:he},{compactSize:Q,compactItemClassnames:$}=(0,E.ri)(me,u),j=M()(Te,$,C,ye);"overlay"in l&&(q.overlay=L),"open"in l&&(q.open=N),"placement"in l?q.placement=F:q.placement=u==="rtl"?"bottomLeft":"bottomRight";const re=g.createElement(y.ZP,{type:e,danger:t,disabled:i,loading:c,onClick:p,htmlType:A,href:K,title:V},x),k=g.createElement(y.ZP,{type:e,danger:t,icon:G}),[te,ie]=X([re,k]);return Ce(g.createElement(m.Z.Compact,Object.assign({className:j,size:Q,block:!0},ve),te,g.createElement(w.Z,Object.assign({},q),ie)))};d.__ANT_BUTTON=!0;var _=d;const r=w.Z;r.Button=_;var n=r},66748:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return a}});var w=B(14747),H=B(67771),M=B(33297),g=B(50438),D=B(97414),y=B(67968),v=B(45503),E=d=>{const{componentCls:_,menuCls:r,colorError:n,colorTextLightSolid:l}=d,o=`${r}-item`;return{[`${_}, ${_}-menu-submenu`]:{[`${r} ${o}`]:{[`&${o}-danger:not(${o}-disabled)`]:{color:n,"&:hover":{color:l,backgroundColor:n}}}}}};const h=d=>{const{componentCls:_,menuCls:r,zIndexPopup:n,dropdownArrowDistance:l,sizePopupArrow:o,antCls:s,iconCls:u,motionDurationMid:f,dropdownPaddingVertical:e,fontSize:t,dropdownEdgeChildPadding:i,colorTextDisabled:c,fontSizeIcon:p,controlPaddingHorizontal:A,colorBgElevated:x}=d;return[{[_]:Object.assign(Object.assign({},(0,w.Wf)(d)),{position:"absolute",top:-9999,left:{_skip_check_:!0,value:-9999},zIndex:n,display:"block","&::before":{position:"absolute",insetBlock:-l+o/2,zIndex:-9999,opacity:1e-4,content:'""'},[`&-trigger${s}-btn`]:{[`& > ${u}-down, & > ${s}-btn-icon > ${u}-down`]:{fontSize:p}},[`${_}-wrap`]:{position:"relative",[`${s}-btn > ${u}-down`]:{fontSize:p},[`${u}-down::before`]:{transition:`transform ${f}`}},[`${_}-wrap-open`]:{[`${u}-down::before`]:{transform:"rotate(180deg)"}},"\n &-hidden,\n &-menu-hidden,\n &-menu-submenu-hidden\n ":{display:"none"},[`&${s}-slide-down-enter${s}-slide-down-enter-active${_}-placement-bottomLeft,
|
|
&${s}-slide-down-appear${s}-slide-down-appear-active${_}-placement-bottomLeft,
|
|
&${s}-slide-down-enter${s}-slide-down-enter-active${_}-placement-bottom,
|
|
&${s}-slide-down-appear${s}-slide-down-appear-active${_}-placement-bottom,
|
|
&${s}-slide-down-enter${s}-slide-down-enter-active${_}-placement-bottomRight,
|
|
&${s}-slide-down-appear${s}-slide-down-appear-active${_}-placement-bottomRight`]:{animationName:H.fJ},[`&${s}-slide-up-enter${s}-slide-up-enter-active${_}-placement-topLeft,
|
|
&${s}-slide-up-appear${s}-slide-up-appear-active${_}-placement-topLeft,
|
|
&${s}-slide-up-enter${s}-slide-up-enter-active${_}-placement-top,
|
|
&${s}-slide-up-appear${s}-slide-up-appear-active${_}-placement-top,
|
|
&${s}-slide-up-enter${s}-slide-up-enter-active${_}-placement-topRight,
|
|
&${s}-slide-up-appear${s}-slide-up-appear-active${_}-placement-topRight`]:{animationName:H.Qt},[`&${s}-slide-down-leave${s}-slide-down-leave-active${_}-placement-bottomLeft,
|
|
&${s}-slide-down-leave${s}-slide-down-leave-active${_}-placement-bottom,
|
|
&${s}-slide-down-leave${s}-slide-down-leave-active${_}-placement-bottomRight`]:{animationName:H.Uw},[`&${s}-slide-up-leave${s}-slide-up-leave-active${_}-placement-topLeft,
|
|
&${s}-slide-up-leave${s}-slide-up-leave-active${_}-placement-top,
|
|
&${s}-slide-up-leave${s}-slide-up-leave-active${_}-placement-topRight`]:{animationName:H.ly}})},(0,D.ZP)(d,{colorBg:x,limitVerticalRadius:!0,arrowPlacement:{top:!0,bottom:!0}}),{[`${_} ${r}`]:{position:"relative",margin:0},[`${r}-submenu-popup`]:{position:"absolute",zIndex:n,background:"transparent",boxShadow:"none",transformOrigin:"0 0","ul, li":{listStyle:"none",margin:0}},[`${_}, ${_}-menu-submenu`]:{[r]:Object.assign(Object.assign({padding:i,listStyleType:"none",backgroundColor:x,backgroundClip:"padding-box",borderRadius:d.borderRadiusLG,outline:"none",boxShadow:d.boxShadowSecondary},(0,w.Qy)(d)),{[`${r}-item-group-title`]:{padding:`${e}px ${A}px`,color:d.colorTextDescription,transition:`all ${f}`},[`${r}-item`]:{position:"relative",display:"flex",alignItems:"center"},[`${r}-item-icon`]:{minWidth:t,marginInlineEnd:d.marginXS,fontSize:d.fontSizeSM},[`${r}-title-content`]:{flex:"auto","> a":{color:"inherit",transition:`all ${f}`,"&:hover":{color:"inherit"},"&::after":{position:"absolute",inset:0,content:'""'}}},[`${r}-item, ${r}-submenu-title`]:Object.assign(Object.assign({clear:"both",margin:0,padding:`${e}px ${A}px`,color:d.colorText,fontWeight:"normal",fontSize:t,lineHeight:d.lineHeight,cursor:"pointer",transition:`all ${f}`,borderRadius:d.borderRadiusSM,"&:hover, &-active":{backgroundColor:d.controlItemBgHover}},(0,w.Qy)(d)),{"&-selected":{color:d.colorPrimary,backgroundColor:d.controlItemBgActive,"&:hover, &-active":{backgroundColor:d.controlItemBgActiveHover}},"&-disabled":{color:c,cursor:"not-allowed","&:hover":{color:c,backgroundColor:x,cursor:"not-allowed"},a:{pointerEvents:"none"}},"&-divider":{height:1,margin:`${d.marginXXS}px 0`,overflow:"hidden",lineHeight:0,backgroundColor:d.colorSplit},[`${_}-menu-submenu-expand-icon`]:{position:"absolute",insetInlineEnd:d.paddingXS,[`${_}-menu-submenu-arrow-icon`]:{marginInlineEnd:"0 !important",color:d.colorTextDescription,fontSize:p,fontStyle:"normal"}}}),[`${r}-item-group-list`]:{margin:`0 ${d.marginXS}px`,padding:0,listStyle:"none"},[`${r}-submenu-title`]:{paddingInlineEnd:A+d.fontSizeSM},[`${r}-submenu-vertical`]:{position:"relative"},[`${r}-submenu${r}-submenu-disabled ${_}-menu-submenu-title`]:{[`&, ${_}-menu-submenu-arrow-icon`]:{color:c,backgroundColor:x,cursor:"not-allowed"}},[`${r}-submenu-selected ${_}-menu-submenu-title`]:{color:d.colorPrimary}})}},[(0,H.oN)(d,"slide-up"),(0,H.oN)(d,"slide-down"),(0,M.Fm)(d,"move-up"),(0,M.Fm)(d,"move-down"),(0,g._y)(d,"zoom-big")]]};var a=(0,y.Z)("Dropdown",(d,_)=>{let{rootPrefixCls:r}=_;const{marginXXS:n,sizePopupArrow:l,controlHeight:o,fontSize:s,lineHeight:u,paddingXXS:f,componentCls:e,borderRadiusLG:t}=d,i=(o-s*u)/2,{dropdownArrowOffset:c}=(0,D.fS)({contentRadius:t}),p=(0,v.TS)(d,{menuCls:`${e}-menu`,rootPrefixCls:r,dropdownArrowDistance:l/2+n,dropdownArrowOffset:c,dropdownPaddingVertical:i,dropdownEdgeChildPadding:f});return[h(p),E(p)]},d=>({zIndexPopup:d.zIndexPopupBase+50}))},32983:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return f}});var w=B(94184),H=B.n(w),M=B(67294),g=B(53124),D=B(10110),y=B(84780),v=B(46605),E=()=>{const[,e]=(0,v.Z)(),i=new y.C(e.colorBgBase).toHsl().l<.5?{opacity:.65}:{};return M.createElement("svg",{style:i,width:"184",height:"152",viewBox:"0 0 184 152",xmlns:"http://www.w3.org/2000/svg"},M.createElement("g",{fill:"none",fillRule:"evenodd"},M.createElement("g",{transform:"translate(24 31.67)"},M.createElement("ellipse",{fillOpacity:".8",fill:"#F5F5F7",cx:"67.797",cy:"106.89",rx:"67.797",ry:"12.668"}),M.createElement("path",{d:"M122.034 69.674L98.109 40.229c-1.148-1.386-2.826-2.225-4.593-2.225h-51.44c-1.766 0-3.444.839-4.592 2.225L13.56 69.674v15.383h108.475V69.674z",fill:"#AEB8C2"}),M.createElement("path",{d:"M101.537 86.214L80.63 61.102c-1.001-1.207-2.507-1.867-4.048-1.867H31.724c-1.54 0-3.047.66-4.048 1.867L6.769 86.214v13.792h94.768V86.214z",fill:"url(#linearGradient-1)",transform:"translate(13.56)"}),M.createElement("path",{d:"M33.83 0h67.933a4 4 0 0 1 4 4v93.344a4 4 0 0 1-4 4H33.83a4 4 0 0 1-4-4V4a4 4 0 0 1 4-4z",fill:"#F5F5F7"}),M.createElement("path",{d:"M42.678 9.953h50.237a2 2 0 0 1 2 2V36.91a2 2 0 0 1-2 2H42.678a2 2 0 0 1-2-2V11.953a2 2 0 0 1 2-2zM42.94 49.767h49.713a2.262 2.262 0 1 1 0 4.524H42.94a2.262 2.262 0 0 1 0-4.524zM42.94 61.53h49.713a2.262 2.262 0 1 1 0 4.525H42.94a2.262 2.262 0 0 1 0-4.525zM121.813 105.032c-.775 3.071-3.497 5.36-6.735 5.36H20.515c-3.238 0-5.96-2.29-6.734-5.36a7.309 7.309 0 0 1-.222-1.79V69.675h26.318c2.907 0 5.25 2.448 5.25 5.42v.04c0 2.971 2.37 5.37 5.277 5.37h34.785c2.907 0 5.277-2.421 5.277-5.393V75.1c0-2.972 2.343-5.426 5.25-5.426h26.318v33.569c0 .617-.077 1.216-.221 1.789z",fill:"#DCE0E6"})),M.createElement("path",{d:"M149.121 33.292l-6.83 2.65a1 1 0 0 1-1.317-1.23l1.937-6.207c-2.589-2.944-4.109-6.534-4.109-10.408C138.802 8.102 148.92 0 161.402 0 173.881 0 184 8.102 184 18.097c0 9.995-10.118 18.097-22.599 18.097-4.528 0-8.744-1.066-12.28-2.902z",fill:"#DCE0E6"}),M.createElement("g",{transform:"translate(149.65 15.383)",fill:"#FFF"},M.createElement("ellipse",{cx:"20.654",cy:"3.167",rx:"2.849",ry:"2.815"}),M.createElement("path",{d:"M5.698 5.63H0L2.898.704zM9.259.704h4.985V5.63H9.259z"}))))},a=()=>{const[,e]=(0,v.Z)(),{colorFill:t,colorFillTertiary:i,colorFillQuaternary:c,colorBgContainer:p}=e,{borderColor:A,shadowColor:x,contentColor:C}=(0,M.useMemo)(()=>({borderColor:new y.C(t).onBackground(p).toHexShortString(),shadowColor:new y.C(i).onBackground(p).toHexShortString(),contentColor:new y.C(c).onBackground(p).toHexShortString()}),[t,i,c,p]);return M.createElement("svg",{width:"64",height:"41",viewBox:"0 0 64 41",xmlns:"http://www.w3.org/2000/svg"},M.createElement("g",{transform:"translate(0 1)",fill:"none",fillRule:"evenodd"},M.createElement("ellipse",{fill:x,cx:"32",cy:"33",rx:"32",ry:"7"}),M.createElement("g",{fillRule:"nonzero",stroke:A},M.createElement("path",{d:"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z"}),M.createElement("path",{d:"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35h-40.1C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z",fill:C}))))},d=B(67968),_=B(45503);const r=e=>{const{componentCls:t,margin:i,marginXS:c,marginXL:p,fontSize:A,lineHeight:x}=e;return{[t]:{marginInline:c,fontSize:A,lineHeight:x,textAlign:"center",[`${t}-image`]:{height:e.emptyImgHeight,marginBottom:c,opacity:e.opacityImage,img:{height:"100%"},svg:{maxWidth:"100%",height:"100%",margin:"auto"}},[`${t}-description`]:{color:e.colorText},[`${t}-footer`]:{marginTop:i},"&-normal":{marginBlock:p,color:e.colorTextDisabled,[`${t}-description`]:{color:e.colorTextDisabled},[`${t}-image`]:{height:e.emptyImgHeightMD}},"&-small":{marginBlock:c,color:e.colorTextDisabled,[`${t}-image`]:{height:e.emptyImgHeightSM}}}}};var n=(0,d.Z)("Empty",e=>{const{componentCls:t,controlHeightLG:i}=e,c=(0,_.TS)(e,{emptyImgCls:`${t}-img`,emptyImgHeight:i*2.5,emptyImgHeightMD:i,emptyImgHeightSM:i*.875});return[r(c)]}),l=function(e,t){var i={};for(var c in e)Object.prototype.hasOwnProperty.call(e,c)&&t.indexOf(c)<0&&(i[c]=e[c]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var p=0,c=Object.getOwnPropertySymbols(e);p<c.length;p++)t.indexOf(c[p])<0&&Object.prototype.propertyIsEnumerable.call(e,c[p])&&(i[c[p]]=e[c[p]]);return i};const o=M.createElement(E,null),s=M.createElement(a,null),u=e=>{var{className:t,rootClassName:i,prefixCls:c,image:p=o,description:A,children:x,imageStyle:C,style:S}=e,P=l(e,["className","rootClassName","prefixCls","image","description","children","imageStyle","style"]);const{getPrefixCls:b,direction:L,empty:R}=M.useContext(g.E_),T=b("empty",c),[N,I]=n(T),[F]=(0,D.Z)("Empty"),U=typeof A!="undefined"?A:F==null?void 0:F.description,K=typeof U=="string"?U:"empty";let G=null;return typeof p=="string"?G=M.createElement("img",{alt:K,src:p}):G=p,N(M.createElement("div",Object.assign({className:H()(I,T,R==null?void 0:R.className,{[`${T}-normal`]:p===s,[`${T}-rtl`]:L==="rtl"},t,i),style:Object.assign(Object.assign({},R==null?void 0:R.style),S)},P),M.createElement("div",{className:`${T}-image`,style:C},G),U&&M.createElement("div",{className:`${T}-description`},U),x&&M.createElement("div",{className:`${T}-footer`},x)))};u.PRESENTED_IMAGE_DEFAULT=o,u.PRESENTED_IMAGE_SIMPLE=s;var f=u},82586:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return u},n:function(){return o}});var w=B(16646),H=B(94184),M=B.n(H),g=B(67656),D=B(17799),y=B(67294),v=B(9708),m=B(53124),E=B(98866),h=B(98675),a=B(65223),d=B(4173),_=B(72922),r=B(47673);function n(f){return!!(f.prefix||f.suffix||f.allowClear)}var l=function(f,e){var t={};for(var i in f)Object.prototype.hasOwnProperty.call(f,i)&&e.indexOf(i)<0&&(t[i]=f[i]);if(f!=null&&typeof Object.getOwnPropertySymbols=="function")for(var c=0,i=Object.getOwnPropertySymbols(f);c<i.length;c++)e.indexOf(i[c])<0&&Object.prototype.propertyIsEnumerable.call(f,i[c])&&(t[i[c]]=f[i[c]]);return t};function o(f,e){if(!f)return;f.focus(e);const{cursor:t}=e||{};if(t){const i=f.value.length;switch(t){case"start":f.setSelectionRange(0,0);break;case"end":f.setSelectionRange(i,i);break;default:f.setSelectionRange(0,i);break}}}var u=(0,y.forwardRef)((f,e)=>{var t;const{prefixCls:i,bordered:c=!0,status:p,size:A,disabled:x,onBlur:C,onFocus:S,suffix:P,allowClear:b,addonAfter:L,addonBefore:R,className:T,style:N,styles:I,rootClassName:F,onChange:U,classNames:K}=f,G=l(f,["prefixCls","bordered","status","size","disabled","onBlur","onFocus","suffix","allowClear","addonAfter","addonBefore","className","style","styles","rootClassName","onChange","classNames"]),{getPrefixCls:V,direction:X,input:ee}=y.useContext(m.E_),oe=V("input",i),ue=(0,y.useRef)(null),[Ae,fe]=(0,r.ZP)(oe),{compactSize:he,compactItemClassnames:ve}=(0,d.ri)(oe,X),me=(0,h.Z)(Le=>{var ze;return(ze=A!=null?A:he)!==null&&ze!==void 0?ze:Le}),Te=y.useContext(E.Z),Ce=x!=null?x:Te,{status:ye,hasFeedback:q,feedbackIcon:Q}=(0,y.useContext)(a.aM),$=(0,v.F)(ye,p),j=n(f)||!!q,re=(0,y.useRef)(j);(0,y.useEffect)(()=>{var Le;j&&re.current,re.current=j},[j]);const k=(0,_.Z)(ue,!0),te=Le=>{k(),C==null||C(Le)},ie=Le=>{k(),S==null||S(Le)},J=Le=>{k(),U==null||U(Le)},ce=(q||P)&&y.createElement(y.Fragment,null,P,q&&Q);let Se;return typeof b=="object"&&(b!=null&&b.clearIcon)?Se=b:b&&(Se={clearIcon:y.createElement(w.Z,null)}),Ae(y.createElement(g.default,Object.assign({ref:(0,D.sQ)(e,ue),prefixCls:oe,autoComplete:ee==null?void 0:ee.autoComplete},G,{disabled:Ce,onBlur:te,onFocus:ie,style:Object.assign(Object.assign({},ee==null?void 0:ee.style),N),styles:Object.assign(Object.assign({},ee==null?void 0:ee.styles),I),suffix:ce,allowClear:Se,className:M()(T,F,ve,ee==null?void 0:ee.className),onChange:J,addonAfter:L&&y.createElement(d.BR,null,y.createElement(a.Ux,{override:!0,status:!0},L)),addonBefore:R&&y.createElement(d.BR,null,y.createElement(a.Ux,{override:!0,status:!0},R)),classNames:Object.assign(Object.assign(Object.assign({},K),ee==null?void 0:ee.classNames),{input:M()({[`${oe}-sm`]:me==="small",[`${oe}-lg`]:me==="large",[`${oe}-rtl`]:X==="rtl",[`${oe}-borderless`]:!c},!j&&(0,v.Z)(oe,$),K==null?void 0:K.input,(t=ee==null?void 0:ee.classNames)===null||t===void 0?void 0:t.input,fe)}),classes:{affixWrapper:M()({[`${oe}-affix-wrapper-sm`]:me==="small",[`${oe}-affix-wrapper-lg`]:me==="large",[`${oe}-affix-wrapper-rtl`]:X==="rtl",[`${oe}-affix-wrapper-borderless`]:!c},(0,v.Z)(`${oe}-affix-wrapper`,$,q),fe),wrapper:M()({[`${oe}-group-rtl`]:X==="rtl"},fe),group:M()({[`${oe}-group-wrapper-sm`]:me==="small",[`${oe}-group-wrapper-lg`]:me==="large",[`${oe}-group-wrapper-rtl`]:X==="rtl",[`${oe}-group-wrapper-disabled`]:Ce},(0,v.Z)(`${oe}-group-wrapper`,$,q),fe)}})))})},96330:function(ke,_e,B){"use strict";var w=B(16646),H=B(94184),M=B.n(H),g=B(64701),D=B(67294),y=B(9708),v=B(53124),m=B(98866),E=B(98675),h=B(65223),a=B(82586),d=B(47673),_=function(n,l){var o={};for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&l.indexOf(s)<0&&(o[s]=n[s]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var u=0,s=Object.getOwnPropertySymbols(n);u<s.length;u++)l.indexOf(s[u])<0&&Object.prototype.propertyIsEnumerable.call(n,s[u])&&(o[s[u]]=n[s[u]]);return o};const r=(0,D.forwardRef)((n,l)=>{const{prefixCls:o,bordered:s=!0,size:u,disabled:f,status:e,allowClear:t,showCount:i,classNames:c,rootClassName:p,className:A}=n,x=_(n,["prefixCls","bordered","size","disabled","status","allowClear","showCount","classNames","rootClassName","className"]),{getPrefixCls:C,direction:S}=D.useContext(v.E_),P=(0,E.Z)(u),b=D.useContext(m.Z),L=f!=null?f:b,{status:R,hasFeedback:T,feedbackIcon:N}=D.useContext(h.aM),I=(0,y.F)(R,e),F=D.useRef(null);D.useImperativeHandle(l,()=>{var X;return{resizableTextArea:(X=F.current)===null||X===void 0?void 0:X.resizableTextArea,focus:ee=>{var oe,ue;(0,a.n)((ue=(oe=F.current)===null||oe===void 0?void 0:oe.resizableTextArea)===null||ue===void 0?void 0:ue.textArea,ee)},blur:()=>{var ee;return(ee=F.current)===null||ee===void 0?void 0:ee.blur()}}});const U=C("input",o);let K;typeof t=="object"&&(t!=null&&t.clearIcon)?K=t:t&&(K={clearIcon:D.createElement(w.Z,null)});const[G,V]=(0,d.ZP)(U);return G(D.createElement(g.default,Object.assign({},x,{disabled:L,allowClear:K,className:M()(A,p),classes:{affixWrapper:M()(`${U}-textarea-affix-wrapper`,{[`${U}-affix-wrapper-rtl`]:S==="rtl",[`${U}-affix-wrapper-borderless`]:!s,[`${U}-affix-wrapper-sm`]:P==="small",[`${U}-affix-wrapper-lg`]:P==="large",[`${U}-textarea-show-count`]:i},(0,y.Z)(`${U}-affix-wrapper`,I),V)},classNames:Object.assign(Object.assign({},c),{textarea:M()({[`${U}-borderless`]:!s,[`${U}-sm`]:P==="small",[`${U}-lg`]:P==="large"},(0,y.Z)(U,I),V,c==null?void 0:c.textarea)}),prefixCls:U,suffix:T&&D.createElement("span",{className:`${U}-textarea-suffix`},N),showCount:i,ref:F})))});_e.Z=r},72922:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return H}});var w=B(67294);function H(M,g){const D=(0,w.useRef)([]),y=()=>{D.current.push(setTimeout(()=>{var v,m,E,h;!((v=M.current)===null||v===void 0)&&v.input&&((m=M.current)===null||m===void 0?void 0:m.input.getAttribute("type"))==="password"&&(!((E=M.current)===null||E===void 0)&&E.input.hasAttribute("value"))&&((h=M.current)===null||h===void 0||h.input.removeAttribute("value"))}))};return(0,w.useEffect)(()=>(g&&y(),()=>D.current.forEach(v=>{v&&clearTimeout(v)})),[]),y}},69677:function(ke,_e,B){"use strict";B.d(_e,{default:function(){return P}});var w=B(94184),H=B.n(w),M=B(67294),g=B(53124),D=B(65223),y=B(47673),m=b=>{const{getPrefixCls:L,direction:R}=(0,M.useContext)(g.E_),{prefixCls:T,className:N}=b,I=L("input-group",T),F=L("input"),[U,K]=(0,y.ZP)(F),G=H()(I,{[`${I}-lg`]:b.size==="large",[`${I}-sm`]:b.size==="small",[`${I}-compact`]:b.compact,[`${I}-rtl`]:R==="rtl"},K,N),V=(0,M.useContext)(D.aM),X=(0,M.useMemo)(()=>Object.assign(Object.assign({},V),{isFormItemInput:!1}),[V]);return U(M.createElement("span",{className:G,style:b.style,onMouseEnter:b.onMouseEnter,onMouseLeave:b.onMouseLeave,onFocus:b.onFocus,onBlur:b.onBlur},M.createElement(D.aM.Provider,{value:X},b.children)))},E=B(82586),h=B(63237),a=B(99569),d=B(10366),_=B(17799),r=B(72922),n=function(b,L){var R={};for(var T in b)Object.prototype.hasOwnProperty.call(b,T)&&L.indexOf(T)<0&&(R[T]=b[T]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var N=0,T=Object.getOwnPropertySymbols(b);N<T.length;N++)L.indexOf(T[N])<0&&Object.prototype.propertyIsEnumerable.call(b,T[N])&&(R[T[N]]=b[T[N]]);return R};const l=b=>b?M.createElement(a.Z,null):M.createElement(h.Z,null),o={click:"onClick",hover:"onMouseOver"};var u=M.forwardRef((b,L)=>{const{visibilityToggle:R=!0}=b,T=typeof R=="object"&&R.visible!==void 0,[N,I]=(0,M.useState)(()=>T?R.visible:!1),F=(0,M.useRef)(null);M.useEffect(()=>{T&&I(R.visible)},[T,R]);const U=(0,r.Z)(F),K=()=>{const{disabled:Ce}=b;Ce||(N&&U(),I(ye=>{var q;const Q=!ye;return typeof R=="object"&&((q=R.onVisibleChange)===null||q===void 0||q.call(R,Q)),Q}))},G=Ce=>{const{action:ye="click",iconRender:q=l}=b,Q=o[ye]||"",$=q(N),j={[Q]:K,className:`${Ce}-icon`,key:"passwordIcon",onMouseDown:re=>{re.preventDefault()},onMouseUp:re=>{re.preventDefault()}};return M.cloneElement(M.isValidElement($)?$:M.createElement("span",null,$),j)},{className:V,prefixCls:X,inputPrefixCls:ee,size:oe}=b,ue=n(b,["className","prefixCls","inputPrefixCls","size"]),{getPrefixCls:Ae}=M.useContext(g.E_),fe=Ae("input",ee),he=Ae("input-password",X),ve=R&&G(he),me=H()(he,V,{[`${he}-${oe}`]:!!oe}),Te=Object.assign(Object.assign({},(0,d.Z)(ue,["suffix","iconRender","visibilityToggle"])),{type:N?"text":"password",className:me,prefixCls:fe,suffix:ve});return oe&&(Te.size=oe),M.createElement(E.Z,Object.assign({ref:(0,_.sQ)(L,F)},Te))}),f=B(72395),e=B(96159),t=B(71577),i=B(98675),c=B(4173),p=function(b,L){var R={};for(var T in b)Object.prototype.hasOwnProperty.call(b,T)&&L.indexOf(T)<0&&(R[T]=b[T]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var N=0,T=Object.getOwnPropertySymbols(b);N<T.length;N++)L.indexOf(T[N])<0&&Object.prototype.propertyIsEnumerable.call(b,T[N])&&(R[T[N]]=b[T[N]]);return R},x=M.forwardRef((b,L)=>{const{prefixCls:R,inputPrefixCls:T,className:N,size:I,suffix:F,enterButton:U=!1,addonAfter:K,loading:G,disabled:V,onSearch:X,onChange:ee,onCompositionStart:oe,onCompositionEnd:ue}=b,Ae=p(b,["prefixCls","inputPrefixCls","className","size","suffix","enterButton","addonAfter","loading","disabled","onSearch","onChange","onCompositionStart","onCompositionEnd"]),{getPrefixCls:fe,direction:he}=M.useContext(g.E_),ve=M.useRef(!1),me=fe("input-search",R),Te=fe("input",T),{compactSize:Ce}=(0,c.ri)(me,he),ye=(0,i.Z)(We=>{var tt;return(tt=I!=null?I:Ce)!==null&&tt!==void 0?tt:We}),q=M.useRef(null),Q=We=>{We&&We.target&&We.type==="click"&&X&&X(We.target.value,We,{source:"clear"}),ee&&ee(We)},$=We=>{var tt;document.activeElement===((tt=q.current)===null||tt===void 0?void 0:tt.input)&&We.preventDefault()},j=We=>{var tt,je;X&&X((je=(tt=q.current)===null||tt===void 0?void 0:tt.input)===null||je===void 0?void 0:je.value,We,{source:"input"})},re=We=>{ve.current||G||j(We)},k=typeof U=="boolean"?M.createElement(f.Z,null):null,te=`${me}-button`;let ie;const J=U||{},ce=J.type&&J.type.__ANT_BUTTON===!0;ce||J.type==="button"?ie=(0,e.Tm)(J,Object.assign({onMouseDown:$,onClick:We=>{var tt,je;(je=(tt=J==null?void 0:J.props)===null||tt===void 0?void 0:tt.onClick)===null||je===void 0||je.call(tt,We),j(We)},key:"enterButton"},ce?{className:te,size:ye}:{})):ie=M.createElement(t.ZP,{className:te,type:U?"primary":void 0,size:ye,disabled:V,key:"enterButton",onMouseDown:$,onClick:j,loading:G,icon:k},U),K&&(ie=[ie,(0,e.Tm)(K,{key:"addonAfter"})]);const Se=H()(me,{[`${me}-rtl`]:he==="rtl",[`${me}-${ye}`]:!!ye,[`${me}-with-button`]:!!U},N),Le=We=>{ve.current=!0,oe==null||oe(We)},ze=We=>{ve.current=!1,ue==null||ue(We)};return M.createElement(E.Z,Object.assign({ref:(0,_.sQ)(q,L),onPressEnter:re},Ae,{size:ye,onCompositionStart:Le,onCompositionEnd:ze,prefixCls:Te,addonAfter:ie,suffix:F,onChange:Q,className:Se,disabled:V}))}),C=B(96330);const S=E.Z;S.Group=m,S.Search=x,S.TextArea=C.Z,S.Password=u;var P=S},47673:function(ke,_e,B){"use strict";B.d(_e,{M1:function(){return v},TM:function(){return e},Xy:function(){return m},bi:function(){return a},e5:function(){return f},ik:function(){return d},nz:function(){return D},pU:function(){return y},s7:function(){return _},x0:function(){return h}});var w=B(14747),H=B(80110),M=B(45503),g=B(67968);const D=t=>({"&::-moz-placeholder":{opacity:1},"&::placeholder":{color:t,userSelect:"none"},"&:placeholder-shown":{textOverflow:"ellipsis"}}),y=t=>({borderColor:t.hoverBorderColor}),v=t=>({borderColor:t.activeBorderColor,boxShadow:t.activeShadow,outline:0}),m=t=>({color:t.colorTextDisabled,backgroundColor:t.colorBgContainerDisabled,borderColor:t.colorBorder,boxShadow:"none",cursor:"not-allowed",opacity:1,"&:hover":Object.assign({},y((0,M.TS)(t,{hoverBorderColor:t.colorBorder})))}),E=t=>{const{paddingBlockLG:i,fontSizeLG:c,lineHeightLG:p,borderRadiusLG:A,paddingInlineLG:x}=t;return{padding:`${i}px ${x}px`,fontSize:c,lineHeight:p,borderRadius:A}},h=t=>({padding:`${t.paddingBlockSM}px ${t.paddingInlineSM}px`,borderRadius:t.borderRadiusSM}),a=(t,i)=>{const{componentCls:c,colorError:p,colorWarning:A,errorActiveShadow:x,warningActiveShadow:C,colorErrorBorderHover:S,colorWarningBorderHover:P}=t;return{[`&-status-error:not(${i}-disabled):not(${i}-borderless)${i}`]:{borderColor:p,"&:hover":{borderColor:S},"&:focus, &-focused":Object.assign({},v((0,M.TS)(t,{activeBorderColor:p,activeShadow:x}))),[`${c}-prefix, ${c}-suffix`]:{color:p}},[`&-status-warning:not(${i}-disabled):not(${i}-borderless)${i}`]:{borderColor:A,"&:hover":{borderColor:P},"&:focus, &-focused":Object.assign({},v((0,M.TS)(t,{activeBorderColor:A,activeShadow:C}))),[`${c}-prefix, ${c}-suffix`]:{color:A}}}},d=t=>Object.assign(Object.assign({position:"relative",display:"inline-block",width:"100%",minWidth:0,padding:`${t.paddingBlock}px ${t.paddingInline}px`,color:t.colorText,fontSize:t.fontSize,lineHeight:t.lineHeight,backgroundColor:t.colorBgContainer,backgroundImage:"none",borderWidth:t.lineWidth,borderStyle:t.lineType,borderColor:t.colorBorder,borderRadius:t.borderRadius,transition:`all ${t.motionDurationMid}`},D(t.colorTextPlaceholder)),{"&:hover":Object.assign({},y(t)),"&:focus, &-focused":Object.assign({},v(t)),"&-disabled, &[disabled]":Object.assign({},m(t)),"&-borderless":{"&, &:hover, &:focus, &-focused, &-disabled, &[disabled]":{backgroundColor:"transparent",border:"none",boxShadow:"none"}},"textarea&":{maxWidth:"100%",height:"auto",minHeight:t.controlHeight,lineHeight:t.lineHeight,verticalAlign:"bottom",transition:`all ${t.motionDurationSlow}, height 0s`,resize:"vertical"},"&-lg":Object.assign({},E(t)),"&-sm":Object.assign({},h(t)),"&-rtl":{direction:"rtl"},"&-textarea-rtl":{direction:"rtl"}}),_=t=>{const{componentCls:i,antCls:c}=t;return{position:"relative",display:"table",width:"100%",borderCollapse:"separate",borderSpacing:0,"&[class*='col-']":{paddingInlineEnd:t.paddingXS,"&:last-child":{paddingInlineEnd:0}},[`&-lg ${i}, &-lg > ${i}-group-addon`]:Object.assign({},E(t)),[`&-sm ${i}, &-sm > ${i}-group-addon`]:Object.assign({},h(t)),[`&-lg ${c}-select-single ${c}-select-selector`]:{height:t.controlHeightLG},[`&-sm ${c}-select-single ${c}-select-selector`]:{height:t.controlHeightSM},[`> ${i}`]:{display:"table-cell","&:not(:first-child):not(:last-child)":{borderRadius:0}},[`${i}-group`]:{"&-addon, &-wrap":{display:"table-cell",width:1,whiteSpace:"nowrap",verticalAlign:"middle","&:not(:first-child):not(:last-child)":{borderRadius:0}},"&-wrap > *":{display:"block !important"},"&-addon":{position:"relative",padding:`0 ${t.paddingInline}px`,color:t.colorText,fontWeight:"normal",fontSize:t.fontSize,textAlign:"center",backgroundColor:t.colorFillAlter,border:`${t.lineWidth}px ${t.lineType} ${t.colorBorder}`,borderRadius:t.borderRadius,transition:`all ${t.motionDurationSlow}`,lineHeight:1,[`${c}-select`]:{margin:`-${t.paddingBlock+1}px -${t.paddingInline}px`,[`&${c}-select-single:not(${c}-select-customize-input)`]:{[`${c}-select-selector`]:{backgroundColor:"inherit",border:`${t.lineWidth}px ${t.lineType} transparent`,boxShadow:"none"}},"&-open, &-focused":{[`${c}-select-selector`]:{color:t.colorPrimary}}},[`${c}-cascader-picker`]:{margin:`-9px -${t.paddingInline}px`,backgroundColor:"transparent",[`${c}-cascader-input`]:{textAlign:"start",border:0,boxShadow:"none"}}},"&-addon:first-child":{borderInlineEnd:0},"&-addon:last-child":{borderInlineStart:0}},[`${i}`]:{width:"100%",marginBottom:0,textAlign:"inherit","&:focus":{zIndex:1,borderInlineEndWidth:1},"&:hover":{zIndex:1,borderInlineEndWidth:1,[`${i}-search-with-button &`]:{zIndex:0}}},[`> ${i}:first-child, ${i}-group-addon:first-child`]:{borderStartEndRadius:0,borderEndEndRadius:0,[`${c}-select ${c}-select-selector`]:{borderStartEndRadius:0,borderEndEndRadius:0}},[`> ${i}-affix-wrapper`]:{[`&:not(:first-child) ${i}`]:{borderStartStartRadius:0,borderEndStartRadius:0},[`&:not(:last-child) ${i}`]:{borderStartEndRadius:0,borderEndEndRadius:0}},[`> ${i}:last-child, ${i}-group-addon:last-child`]:{borderStartStartRadius:0,borderEndStartRadius:0,[`${c}-select ${c}-select-selector`]:{borderStartStartRadius:0,borderEndStartRadius:0}},[`${i}-affix-wrapper`]:{"&:not(:last-child)":{borderStartEndRadius:0,borderEndEndRadius:0,[`${i}-search &`]:{borderStartStartRadius:t.borderRadius,borderEndStartRadius:t.borderRadius}},[`&:not(:first-child), ${i}-search &:not(:first-child)`]:{borderStartStartRadius:0,borderEndStartRadius:0}},[`&${i}-group-compact`]:Object.assign(Object.assign({display:"block"},(0,w.dF)()),{[`${i}-group-addon, ${i}-group-wrap, > ${i}`]:{"&:not(:first-child):not(:last-child)":{borderInlineEndWidth:t.lineWidth,"&:hover":{zIndex:1},"&:focus":{zIndex:1}}},"& > *":{display:"inline-block",float:"none",verticalAlign:"top",borderRadius:0},[`
|
|
& > ${i}-affix-wrapper,
|
|
& > ${i}-number-affix-wrapper,
|
|
& > ${c}-picker-range
|
|
`]:{display:"inline-flex"},"& > *:not(:last-child)":{marginInlineEnd:-t.lineWidth,borderInlineEndWidth:t.lineWidth},[`${i}`]:{float:"none"},[`& > ${c}-select > ${c}-select-selector,
|
|
& > ${c}-select-auto-complete ${i},
|
|
& > ${c}-cascader-picker ${i},
|
|
& > ${i}-group-wrapper ${i}`]:{borderInlineEndWidth:t.lineWidth,borderRadius:0,"&:hover":{zIndex:1},"&:focus":{zIndex:1}},[`& > ${c}-select-focused`]:{zIndex:1},[`& > ${c}-select > ${c}-select-arrow`]:{zIndex:1},[`& > *:first-child,
|
|
& > ${c}-select:first-child > ${c}-select-selector,
|
|
& > ${c}-select-auto-complete:first-child ${i},
|
|
& > ${c}-cascader-picker:first-child ${i}`]:{borderStartStartRadius:t.borderRadius,borderEndStartRadius:t.borderRadius},[`& > *:last-child,
|
|
& > ${c}-select:last-child > ${c}-select-selector,
|
|
& > ${c}-cascader-picker:last-child ${i},
|
|
& > ${c}-cascader-picker-focused:last-child ${i}`]:{borderInlineEndWidth:t.lineWidth,borderStartEndRadius:t.borderRadius,borderEndEndRadius:t.borderRadius},[`& > ${c}-select-auto-complete ${i}`]:{verticalAlign:"top"},[`${i}-group-wrapper + ${i}-group-wrapper`]:{marginInlineStart:-t.lineWidth,[`${i}-affix-wrapper`]:{borderRadius:0}},[`${i}-group-wrapper:not(:last-child)`]:{[`&${i}-search > ${i}-group`]:{[`& > ${i}-group-addon > ${i}-search-button`]:{borderRadius:0},[`& > ${i}`]:{borderStartStartRadius:t.borderRadius,borderStartEndRadius:0,borderEndEndRadius:0,borderEndStartRadius:t.borderRadius}}}})}},r=t=>{const{componentCls:i,controlHeightSM:c,lineWidth:p}=t,x=(c-p*2-16)/2;return{[i]:Object.assign(Object.assign(Object.assign(Object.assign({},(0,w.Wf)(t)),d(t)),a(t,i)),{'&[type="color"]':{height:t.controlHeight,[`&${i}-lg`]:{height:t.controlHeightLG},[`&${i}-sm`]:{height:c,paddingTop:x,paddingBottom:x}},'&[type="search"]::-webkit-search-cancel-button, &[type="search"]::-webkit-search-decoration':{"-webkit-appearance":"none"}})}},n=t=>{const{componentCls:i}=t;return{[`${i}-clear-icon`]:{margin:0,color:t.colorTextQuaternary,fontSize:t.fontSizeIcon,verticalAlign:-1,cursor:"pointer",transition:`color ${t.motionDurationSlow}`,"&:hover":{color:t.colorTextTertiary},"&:active":{color:t.colorText},"&-hidden":{visibility:"hidden"},"&-has-suffix":{margin:`0 ${t.inputAffixPadding}px`}}}},l=t=>{const{componentCls:i,inputAffixPadding:c,colorTextDescription:p,motionDurationSlow:A,colorIcon:x,colorIconHover:C,iconCls:S}=t;return{[`${i}-affix-wrapper`]:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},d(t)),{display:"inline-flex",[`&:not(${i}-affix-wrapper-disabled):hover`]:Object.assign(Object.assign({},y(t)),{zIndex:1,[`${i}-search-with-button &`]:{zIndex:0}}),"&-focused, &:focus":{zIndex:1},"&-disabled":{[`${i}[disabled]`]:{background:"transparent"}},[`> input${i}`]:{padding:0,fontSize:"inherit",border:"none",borderRadius:0,outline:"none","&::-ms-reveal":{display:"none"},"&:focus":{boxShadow:"none !important"}},"&::before":{display:"inline-block",width:0,visibility:"hidden",content:'"\\a0"'},[`${i}`]:{"&-prefix, &-suffix":{display:"flex",flex:"none",alignItems:"center","> *:not(:last-child)":{marginInlineEnd:t.paddingXS}},"&-show-count-suffix":{color:p},"&-show-count-has-suffix":{marginInlineEnd:t.paddingXXS},"&-prefix":{marginInlineEnd:c},"&-suffix":{marginInlineStart:c}}}),n(t)),{[`${S}${i}-password-icon`]:{color:x,cursor:"pointer",transition:`all ${A}`,"&:hover":{color:C}}}),a(t,`${i}-affix-wrapper`))}},o=t=>{const{componentCls:i,colorError:c,colorWarning:p,borderRadiusLG:A,borderRadiusSM:x}=t;return{[`${i}-group`]:Object.assign(Object.assign(Object.assign({},(0,w.Wf)(t)),_(t)),{"&-rtl":{direction:"rtl"},"&-wrapper":{display:"inline-block",width:"100%",textAlign:"start",verticalAlign:"top","&-rtl":{direction:"rtl"},"&-lg":{[`${i}-group-addon`]:{borderRadius:A,fontSize:t.fontSizeLG}},"&-sm":{[`${i}-group-addon`]:{borderRadius:x}},"&-status-error":{[`${i}-group-addon`]:{color:c,borderColor:c}},"&-status-warning":{[`${i}-group-addon`]:{color:p,borderColor:p}},"&-disabled":{[`${i}-group-addon`]:Object.assign({},m(t))},[`&:not(${i}-compact-first-item):not(${i}-compact-last-item)${i}-compact-item`]:{[`${i}, ${i}-group-addon`]:{borderRadius:0}},[`&:not(${i}-compact-last-item)${i}-compact-first-item`]:{[`${i}, ${i}-group-addon`]:{borderStartEndRadius:0,borderEndEndRadius:0}},[`&:not(${i}-compact-first-item)${i}-compact-last-item`]:{[`${i}, ${i}-group-addon`]:{borderStartStartRadius:0,borderEndStartRadius:0}}}})}},s=t=>{const{componentCls:i,antCls:c}=t,p=`${i}-search`;return{[p]:{[`${i}`]:{"&:hover, &:focus":{borderColor:t.colorPrimaryHover,[`+ ${i}-group-addon ${p}-button:not(${c}-btn-primary)`]:{borderInlineStartColor:t.colorPrimaryHover}}},[`${i}-affix-wrapper`]:{borderRadius:0},[`${i}-lg`]:{lineHeight:t.lineHeightLG-2e-4},[`> ${i}-group`]:{[`> ${i}-group-addon:last-child`]:{insetInlineStart:-1,padding:0,border:0,[`${p}-button`]:{paddingTop:0,paddingBottom:0,borderStartStartRadius:0,borderStartEndRadius:t.borderRadius,borderEndEndRadius:t.borderRadius,borderEndStartRadius:0,boxShadow:"none"},[`${p}-button:not(${c}-btn-primary)`]:{color:t.colorTextDescription,"&:hover":{color:t.colorPrimaryHover},"&:active":{color:t.colorPrimaryActive},[`&${c}-btn-loading::before`]:{insetInlineStart:0,insetInlineEnd:0,insetBlockStart:0,insetBlockEnd:0}}}},[`${p}-button`]:{height:t.controlHeight,"&:hover, &:focus":{zIndex:1}},[`&-large ${p}-button`]:{height:t.controlHeightLG},[`&-small ${p}-button`]:{height:t.controlHeightSM},"&-rtl":{direction:"rtl"},[`&${i}-compact-item`]:{[`&:not(${i}-compact-last-item)`]:{[`${i}-group-addon`]:{[`${i}-search-button`]:{marginInlineEnd:-t.lineWidth,borderRadius:0}}},[`&:not(${i}-compact-first-item)`]:{[`${i},${i}-affix-wrapper`]:{borderRadius:0}},[`> ${i}-group-addon ${i}-search-button,
|
|
> ${i},
|
|
${i}-affix-wrapper`]:{"&:hover,&:focus,&:active":{zIndex:2}},[`> ${i}-affix-wrapper-focused`]:{zIndex:2}}}}},u=t=>{const{componentCls:i,paddingLG:c}=t,p=`${i}-textarea`;return{[p]:{position:"relative","&-show-count":{[`> ${i}`]:{height:"100%"},[`${i}-data-count`]:{position:"absolute",bottom:-t.fontSize*t.lineHeight,insetInlineEnd:0,color:t.colorTextDescription,whiteSpace:"nowrap",pointerEvents:"none"}},"&-allow-clear":{[`> ${i}`]:{paddingInlineEnd:c}},[`&-affix-wrapper${p}-has-feedback`]:{[`${i}`]:{paddingInlineEnd:c}},[`&-affix-wrapper${i}-affix-wrapper`]:{padding:0,[`> textarea${i}`]:{fontSize:"inherit",border:"none",outline:"none","&:focus":{boxShadow:"none !important"}},[`${i}-suffix`]:{margin:0,"> *:not(:last-child)":{marginInline:0},[`${i}-clear-icon`]:{position:"absolute",insetInlineEnd:t.paddingXS,insetBlockStart:t.paddingXS},[`${p}-suffix`]:{position:"absolute",top:0,insetInlineEnd:t.paddingInline,bottom:0,zIndex:1,display:"inline-flex",alignItems:"center",margin:"auto",pointerEvents:"none"}}}}}};function f(t){return(0,M.TS)(t,{inputAffixPadding:t.paddingXXS})}const e=t=>{const{controlHeight:i,fontSize:c,lineHeight:p,lineWidth:A,controlHeightSM:x,controlHeightLG:C,fontSizeLG:S,lineHeightLG:P,paddingSM:b,controlPaddingHorizontalSM:L,controlPaddingHorizontal:R,colorFillAlter:T,colorPrimaryHover:N,controlOutlineWidth:I,controlOutline:F,colorErrorOutline:U,colorWarningOutline:K}=t;return{paddingBlock:Math.max(Math.round((i-c*p)/2*10)/10-A,3),paddingBlockSM:Math.max(Math.round((x-c*p)/2*10)/10-A,0),paddingBlockLG:Math.ceil((C-S*P)/2*10)/10-A,paddingInline:b-A,paddingInlineSM:L-A,paddingInlineLG:R-A,addonBg:T,activeBorderColor:N,hoverBorderColor:N,activeShadow:`0 0 0 ${I}px ${F}`,errorActiveShadow:`0 0 0 ${I}px ${U}`,warningActiveShadow:`0 0 0 ${I}px ${K}`}};_e.ZP=(0,g.Z)("Input",t=>{const i=(0,M.TS)(t,f(t));return[r(i),u(i),l(i),o(i),s(i),(0,H.c)(i)]},e)},71322:function(ke,_e,B){"use strict";B.d(_e,{D:function(){return u},Z:function(){return t}});var w=B(87462),H=B(67294),M={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"},g=M,D=B(74643),y=function(c,p){return H.createElement(D.Z,(0,w.Z)({},c,{ref:p,icon:g}))},v=H.forwardRef(y),m=B(22751),E=B(91034),h=B(94184),a=B.n(h),d=B(10366),r=i=>!isNaN(parseFloat(i))&&isFinite(i),n=B(53124),l=B(84321),o=function(i,c){var p={};for(var A in i)Object.prototype.hasOwnProperty.call(i,A)&&c.indexOf(A)<0&&(p[A]=i[A]);if(i!=null&&typeof Object.getOwnPropertySymbols=="function")for(var x=0,A=Object.getOwnPropertySymbols(i);x<A.length;x++)c.indexOf(A[x])<0&&Object.prototype.propertyIsEnumerable.call(i,A[x])&&(p[A[x]]=i[A[x]]);return p};const s={xs:"479.98px",sm:"575.98px",md:"767.98px",lg:"991.98px",xl:"1199.98px",xxl:"1599.98px"},u=H.createContext({}),f=(()=>{let i=0;return function(){let c=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";return i+=1,`${c}${i}`}})();var t=H.forwardRef((i,c)=>{const{prefixCls:p,className:A,trigger:x,children:C,defaultCollapsed:S=!1,theme:P="dark",style:b={},collapsible:L=!1,reverseArrow:R=!1,width:T=200,collapsedWidth:N=80,zeroWidthTriggerStyle:I,breakpoint:F,onCollapse:U,onBreakpoint:K}=i,G=o(i,["prefixCls","className","trigger","children","defaultCollapsed","theme","style","collapsible","reverseArrow","width","collapsedWidth","zeroWidthTriggerStyle","breakpoint","onCollapse","onBreakpoint"]),{siderHook:V}=(0,H.useContext)(l.Gs),[X,ee]=(0,H.useState)("collapsed"in i?i.collapsed:S),[oe,ue]=(0,H.useState)(!1);(0,H.useEffect)(()=>{"collapsed"in i&&ee(i.collapsed)},[i.collapsed]);const Ae=(Ce,ye)=>{"collapsed"in i||ee(Ce),U==null||U(Ce,ye)},fe=(0,H.useRef)();fe.current=Ce=>{ue(Ce.matches),K==null||K(Ce.matches),X!==Ce.matches&&Ae(Ce.matches,"responsive")},(0,H.useEffect)(()=>{function Ce(q){return fe.current(q)}let ye;if(typeof window!="undefined"){const{matchMedia:q}=window;if(q&&F&&F in s){ye=q(`(max-width: ${s[F]})`);try{ye.addEventListener("change",Ce)}catch(Q){ye.addListener(Ce)}Ce(ye)}}return()=>{try{ye==null||ye.removeEventListener("change",Ce)}catch(q){ye==null||ye.removeListener(Ce)}}},[F]),(0,H.useEffect)(()=>{const Ce=f("ant-sider-");return V.addSider(Ce),()=>V.removeSider(Ce)},[]);const he=()=>{Ae(!X,"clickTrigger")},{getPrefixCls:ve}=(0,H.useContext)(n.E_),me=()=>{const Ce=ve("layout-sider",p),ye=(0,d.Z)(G,["collapsed"]),q=X?N:T,Q=r(q)?`${q}px`:String(q),$=parseFloat(String(N||0))===0?H.createElement("span",{onClick:he,className:a()(`${Ce}-zero-width-trigger`,`${Ce}-zero-width-trigger-${R?"right":"left"}`),style:I},x||H.createElement(v,null)):null,k={expanded:R?H.createElement(E.Z,null):H.createElement(m.Z,null),collapsed:R?H.createElement(m.Z,null):H.createElement(E.Z,null)}[X?"collapsed":"expanded"],te=x!==null?$||H.createElement("div",{className:`${Ce}-trigger`,onClick:he,style:{width:Q}},x||k):null,ie=Object.assign(Object.assign({},b),{flex:`0 0 ${Q}`,maxWidth:Q,minWidth:Q,width:Q}),J=a()(Ce,`${Ce}-${P}`,{[`${Ce}-collapsed`]:!!X,[`${Ce}-has-trigger`]:L&&x!==null&&!$,[`${Ce}-below`]:!!oe,[`${Ce}-zero-width`]:parseFloat(Q)===0},A);return H.createElement("aside",Object.assign({className:J},ye,{style:ie,ref:c}),H.createElement("div",{className:`${Ce}-children`},C),L||oe&&$?te:null)},Te=H.useMemo(()=>({siderCollapsed:X}),[X]);return H.createElement(u.Provider,{value:Te},me())})},84321:function(ke,_e,B){"use strict";B.d(_e,{VY:function(){return f},$_:function(){return u},h4:function(){return s},Gs:function(){return _},ZP:function(){return e}});var w=B(74902),H=B(94184),M=B.n(H),g=B(10366),D=B(67294),y=B(53124),v=B(67968),E=t=>{const{componentCls:i,bodyBg:c,lightSiderBg:p,lightTriggerBg:A,lightTriggerColor:x}=t;return{[`${i}-sider-light`]:{background:p,[`${i}-sider-trigger`]:{color:x,background:A},[`${i}-sider-zero-width-trigger`]:{color:x,background:A,border:`1px solid ${c}`,borderInlineStart:0}}}};const h=t=>{const{antCls:i,componentCls:c,colorText:p,triggerColor:A,footerBg:x,triggerBg:C,headerHeight:S,headerPadding:P,headerColor:b,footerPadding:L,triggerHeight:R,zeroTriggerHeight:T,zeroTriggerWidth:N,motionDurationMid:I,motionDurationSlow:F,fontSize:U,borderRadius:K,bodyBg:G,headerBg:V,siderBg:X}=t;return{[c]:Object.assign(Object.assign({display:"flex",flex:"auto",flexDirection:"column",minHeight:0,background:G,"&, *":{boxSizing:"border-box"},[`&${c}-has-sider`]:{flexDirection:"row",[`> ${c}, > ${c}-content`]:{width:0}},[`${c}-header, &${c}-footer`]:{flex:"0 0 auto"},[`${c}-sider`]:{position:"relative",minWidth:0,background:X,transition:`all ${I}, background 0s`,"&-children":{height:"100%",marginTop:-.1,paddingTop:.1,[`${i}-menu${i}-menu-inline-collapsed`]:{width:"auto"}},"&-has-trigger":{paddingBottom:R},"&-right":{order:1},"&-trigger":{position:"fixed",bottom:0,zIndex:1,height:R,color:A,lineHeight:`${R}px`,textAlign:"center",background:C,cursor:"pointer",transition:`all ${I}`},"&-zero-width":{"> *":{overflow:"hidden"},"&-trigger":{position:"absolute",top:S,insetInlineEnd:-N,zIndex:1,width:N,height:T,color:A,fontSize:t.fontSizeXL,display:"flex",alignItems:"center",justifyContent:"center",background:X,borderStartStartRadius:0,borderStartEndRadius:K,borderEndEndRadius:K,borderEndStartRadius:0,cursor:"pointer",transition:`background ${F} ease`,"&::after":{position:"absolute",inset:0,background:"transparent",transition:`all ${F}`,content:'""'},"&:hover::after":{background:"rgba(255, 255, 255, 0.2)"},"&-right":{insetInlineStart:-N,borderStartStartRadius:K,borderStartEndRadius:0,borderEndEndRadius:0,borderEndStartRadius:K}}}}},E(t)),{"&-rtl":{direction:"rtl"}}),[`${c}-header`]:{height:S,padding:P,color:b,lineHeight:`${S}px`,background:V,[`${i}-menu`]:{lineHeight:"inherit"}},[`${c}-footer`]:{padding:L,color:p,fontSize:U,background:x},[`${c}-content`]:{flex:"auto",minHeight:0}}};var a=(0,v.Z)("Layout",t=>[h(t)],t=>{const{colorBgLayout:i,controlHeight:c,controlHeightLG:p,colorText:A,controlHeightSM:x,marginXXS:C,colorTextLightSolid:S,colorBgContainer:P}=t,b=p*1.25;return{colorBgHeader:"#001529",colorBgBody:i,colorBgTrigger:"#002140",bodyBg:i,headerBg:"#001529",headerHeight:c*2,headerPadding:`0 ${b}px`,headerColor:A,footerPadding:`${x}px ${b}px`,footerBg:i,siderBg:"#001529",triggerHeight:p+C*2,triggerBg:"#002140",triggerColor:S,zeroTriggerWidth:p,zeroTriggerHeight:p,lightSiderBg:P,lightTriggerBg:P,lightTriggerColor:A}},{deprecatedTokens:[["colorBgBody","bodyBg"],["colorBgHeader","headerBg"],["colorBgTrigger","triggerBg"]]}),d=function(t,i){var c={};for(var p in t)Object.prototype.hasOwnProperty.call(t,p)&&i.indexOf(p)<0&&(c[p]=t[p]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var A=0,p=Object.getOwnPropertySymbols(t);A<p.length;A++)i.indexOf(p[A])<0&&Object.prototype.propertyIsEnumerable.call(t,p[A])&&(c[p[A]]=t[p[A]]);return c};const _=D.createContext({siderHook:{addSider:()=>null,removeSider:()=>null}});function r(t){let{suffixCls:i,tagName:c,displayName:p}=t;return A=>D.forwardRef((C,S)=>D.createElement(A,Object.assign({ref:S,suffixCls:i,tagName:c},C)))}const n=D.forwardRef((t,i)=>{const{prefixCls:c,suffixCls:p,className:A,tagName:x}=t,C=d(t,["prefixCls","suffixCls","className","tagName"]),{getPrefixCls:S}=D.useContext(y.E_),P=S("layout",c),[b,L]=a(P),R=p?`${P}-${p}`:P;return b(D.createElement(x,Object.assign({className:M()(c||R,A,L),ref:i},C)))}),l=D.forwardRef((t,i)=>{const{direction:c}=D.useContext(y.E_),[p,A]=D.useState([]),{prefixCls:x,className:C,rootClassName:S,children:P,hasSider:b,tagName:L,style:R}=t,T=d(t,["prefixCls","className","rootClassName","children","hasSider","tagName","style"]),N=(0,g.Z)(T,["suffixCls"]),{getPrefixCls:I,layout:F}=D.useContext(y.E_),U=I("layout",x),[K,G]=a(U),V=M()(U,{[`${U}-has-sider`]:typeof b=="boolean"?b:p.length>0,[`${U}-rtl`]:c==="rtl"},F==null?void 0:F.className,C,S,G),X=D.useMemo(()=>({siderHook:{addSider:ee=>{A(oe=>[].concat((0,w.Z)(oe),[ee]))},removeSider:ee=>{A(oe=>oe.filter(ue=>ue!==ee))}}}),[]);return K(D.createElement(_.Provider,{value:X},D.createElement(L,Object.assign({ref:i,className:V,style:Object.assign(Object.assign({},F==null?void 0:F.style),R)},N),P)))}),o=r({tagName:"div",displayName:"Layout"})(l),s=r({suffixCls:"header",tagName:"header",displayName:"Header"})(n),u=r({suffixCls:"footer",tagName:"footer",displayName:"Footer"})(n),f=r({suffixCls:"content",tagName:"main",displayName:"Content"})(n);var e=o},76529:function(ke,_e,B){"use strict";B.d(_e,{J:function(){return y}});var w=B(67294),H=B(4173),M=B(60276),g=function(v,m){var E={};for(var h in v)Object.prototype.hasOwnProperty.call(v,h)&&m.indexOf(h)<0&&(E[h]=v[h]);if(v!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,h=Object.getOwnPropertySymbols(v);a<h.length;a++)m.indexOf(h[a])<0&&Object.prototype.propertyIsEnumerable.call(v,h[a])&&(E[h[a]]=v[h[a]]);return E};const D=w.createContext(null),y=w.forwardRef((v,m)=>{const{children:E}=v,h=g(v,["children"]),a=w.useContext(D),d=w.useMemo(()=>Object.assign(Object.assign({},a),h),[a,h.prefixCls,h.mode,h.selectable]);return w.createElement(D.Provider,{value:d},w.createElement(H.BR,null,(0,M.supportNodeRef)(E)?w.cloneElement(E,{ref:m}):E))});_e.Z=D},68508:function(ke,_e,B){"use strict";B.d(_e,{default:function(){return Ce}});var w=B(78595),H=B(67294),M=B(71322),g=B(94184),D=B.n(g),y=B(53124),v=function(ye,q){var Q={};for(var $ in ye)Object.prototype.hasOwnProperty.call(ye,$)&&q.indexOf($)<0&&(Q[$]=ye[$]);if(ye!=null&&typeof Object.getOwnPropertySymbols=="function")for(var j=0,$=Object.getOwnPropertySymbols(ye);j<$.length;j++)q.indexOf($[j])<0&&Object.prototype.propertyIsEnumerable.call(ye,$[j])&&(Q[$[j]]=ye[$[j]]);return Q},E=ye=>{const{prefixCls:q,className:Q,dashed:$}=ye,j=v(ye,["prefixCls","className","dashed"]),{getPrefixCls:re}=H.useContext(y.E_),k=re("menu",q),te=D()({[`${k}-item-divider-dashed`]:!!$},Q);return H.createElement(w.iz,Object.assign({className:te},j))},h=B(37419),a=B(10366),d=B(83062),_=B(96159),n=(0,H.createContext)({prefixCls:"",firstLevel:!0,inlineCollapsed:!1}),o=ye=>{var q;const{className:Q,children:$,icon:j,title:re,danger:k}=ye,{prefixCls:te,firstLevel:ie,direction:J,disableMenuItemTitleTooltip:ce,inlineCollapsed:Se}=H.useContext(n),Le=Oe=>{const Ie=H.createElement("span",{className:`${te}-title-content`},$);return(!j||(0,_.l$)($)&&$.type==="span")&&$&&Oe&&ie&&typeof $=="string"?H.createElement("div",{className:`${te}-inline-collapsed-noicon`},$.charAt(0)):Ie},{siderCollapsed:ze}=H.useContext(M.D);let We=re;typeof re=="undefined"?We=ie?$:"":re===!1&&(We="");const tt={title:We};!ze&&!Se&&(tt.title=null,tt.open=!1);const je=(0,h.Z)($).length;let pe=H.createElement(w.ck,Object.assign({},(0,a.Z)(ye,["title","icon","danger"]),{className:D()({[`${te}-item-danger`]:k,[`${te}-item-only-child`]:(j?je+1:je)===1},Q),title:typeof re=="string"?re:void 0}),(0,_.Tm)(j,{className:D()((0,_.l$)(j)?(q=j.props)===null||q===void 0?void 0:q.className:"",`${te}-item-icon`)}),Le(Se));return ce||(pe=H.createElement(d.Z,Object.assign({},tt,{placement:J==="rtl"?"left":"right",overlayClassName:`${te}-inline-collapsed-tooltip`}),pe)),pe},u=ye=>{var q;const{popupClassName:Q,icon:$,title:j,theme:re}=ye,k=H.useContext(n),{prefixCls:te,inlineCollapsed:ie,theme:J}=k,ce=(0,w.Xl)();let Se;if(!$)Se=ie&&!ce.length&&j&&typeof j=="string"?H.createElement("div",{className:`${te}-inline-collapsed-noicon`},j.charAt(0)):H.createElement("span",{className:`${te}-title-content`},j);else{const ze=(0,_.l$)(j)&&j.type==="span";Se=H.createElement(H.Fragment,null,(0,_.Tm)($,{className:D()((0,_.l$)($)?(q=$.props)===null||q===void 0?void 0:q.className:"",`${te}-item-icon`)}),ze?j:H.createElement("span",{className:`${te}-title-content`},j))}const Le=H.useMemo(()=>Object.assign(Object.assign({},k),{firstLevel:!1}),[k]);return H.createElement(n.Provider,{value:Le},H.createElement(w.Wd,Object.assign({},(0,a.Z)(ye,["icon"]),{title:Se,popupClassName:D()(te,Q,`${te}-${re||J}`)})))},f=B(25877),e=B(60276),t=B(33603),i=B(76529),c=function(ye,q){var Q={};for(var $ in ye)Object.prototype.hasOwnProperty.call(ye,$)&&q.indexOf($)<0&&(Q[$]=ye[$]);if(ye!=null&&typeof Object.getOwnPropertySymbols=="function")for(var j=0,$=Object.getOwnPropertySymbols(ye);j<$.length;j++)q.indexOf($[j])<0&&Object.prototype.propertyIsEnumerable.call(ye,$[j])&&(Q[$[j]]=ye[$[j]]);return Q};function p(ye){return(ye||[]).map((q,Q)=>{if(q&&typeof q=="object"){const $=q,{label:j,children:re,key:k,type:te}=$,ie=c($,["label","children","key","type"]),J=k!=null?k:`tmp-${Q}`;return re||te==="group"?te==="group"?H.createElement(w.BW,Object.assign({key:J},ie,{title:j}),p(re)):H.createElement(u,Object.assign({key:J},ie,{title:j}),p(re)):te==="divider"?H.createElement(E,Object.assign({key:J},ie)):H.createElement(o,Object.assign({key:J},ie),j)}return null}).filter(q=>q)}function A(ye){return H.useMemo(()=>ye&&p(ye),[ye])}var x=B(84780),C=B(14747),S=B(33507),P=B(67771),b=B(50438),L=B(67968),R=B(45503),N=ye=>{const{componentCls:q,motionDurationSlow:Q,horizontalLineHeight:$,colorSplit:j,lineWidth:re,lineType:k,itemPaddingInline:te}=ye;return{[`${q}-horizontal`]:{lineHeight:$,border:0,borderBottom:`${re}px ${k} ${j}`,boxShadow:"none","&::after":{display:"block",clear:"both",height:0,content:'"\\20"'},[`${q}-item, ${q}-submenu`]:{position:"relative",display:"inline-block",verticalAlign:"bottom",paddingInline:te},[`> ${q}-item:hover,
|
|
> ${q}-item-active,
|
|
> ${q}-submenu ${q}-submenu-title:hover`]:{backgroundColor:"transparent"},[`${q}-item, ${q}-submenu-title`]:{transition:[`border-color ${Q}`,`background ${Q}`].join(",")},[`${q}-submenu-arrow`]:{display:"none"}}}},F=ye=>{let{componentCls:q,menuArrowOffset:Q}=ye;return{[`${q}-rtl`]:{direction:"rtl"},[`${q}-submenu-rtl`]:{transformOrigin:"100% 0"},[`${q}-rtl${q}-vertical,
|
|
${q}-submenu-rtl ${q}-vertical`]:{[`${q}-submenu-arrow`]:{"&::before":{transform:`rotate(-45deg) translateY(-${Q})`},"&::after":{transform:`rotate(45deg) translateY(${Q})`}}}}};const U=ye=>Object.assign({},(0,C.oN)(ye));var G=(ye,q)=>{const{componentCls:Q,itemColor:$,itemSelectedColor:j,groupTitleColor:re,itemBg:k,subMenuItemBg:te,itemSelectedBg:ie,activeBarHeight:J,activeBarWidth:ce,activeBarBorderWidth:Se,motionDurationSlow:Le,motionEaseInOut:ze,motionEaseOut:We,itemPaddingInline:tt,motionDurationMid:je,itemHoverColor:pe,lineType:Oe,colorSplit:Ie,itemDisabledColor:Pe,dangerItemColor:ot,dangerItemHoverColor:ht,dangerItemSelectedColor:dt,dangerItemActiveBg:At,dangerItemSelectedBg:Ot,itemHoverBg:Ke,itemActiveBg:Xe,menuSubMenuBg:Je,horizontalItemSelectedColor:Nt,horizontalItemSelectedBg:ut,horizontalItemBorderRadius:Kt,horizontalItemHoverBg:_t,popupBg:ge}=ye;return{[`${Q}-${q}, ${Q}-${q} > ${Q}`]:{color:$,background:k,[`&${Q}-root:focus-visible`]:Object.assign({},U(ye)),[`${Q}-item-group-title`]:{color:re},[`${Q}-submenu-selected`]:{[`> ${Q}-submenu-title`]:{color:j}},[`${Q}-item-disabled, ${Q}-submenu-disabled`]:{color:`${Pe} !important`},[`${Q}-item:not(${Q}-item-selected):not(${Q}-submenu-selected)`]:{[`&:hover, > ${Q}-submenu-title:hover`]:{color:pe}},[`&:not(${Q}-horizontal)`]:{[`${Q}-item:not(${Q}-item-selected)`]:{"&:hover":{backgroundColor:Ke},"&:active":{backgroundColor:Xe}},[`${Q}-submenu-title`]:{"&:hover":{backgroundColor:Ke},"&:active":{backgroundColor:Xe}}},[`${Q}-item-danger`]:{color:ot,[`&${Q}-item:hover`]:{[`&:not(${Q}-item-selected):not(${Q}-submenu-selected)`]:{color:ht}},[`&${Q}-item:active`]:{background:At}},[`${Q}-item a`]:{"&, &:hover":{color:"inherit"}},[`${Q}-item-selected`]:{color:j,[`&${Q}-item-danger`]:{color:dt},"a, a:hover":{color:"inherit"}},[`& ${Q}-item-selected`]:{backgroundColor:ie,[`&${Q}-item-danger`]:{backgroundColor:Ot}},[`${Q}-item, ${Q}-submenu-title`]:{[`&:not(${Q}-item-disabled):focus-visible`]:Object.assign({},U(ye))},[`&${Q}-submenu > ${Q}`]:{backgroundColor:Je},[`&${Q}-popup > ${Q}`]:{backgroundColor:ge},[`&${Q}-horizontal`]:Object.assign(Object.assign({},q==="dark"?{borderBottom:0}:{}),{[`> ${Q}-item, > ${Q}-submenu`]:{top:Se,marginTop:-Se,marginBottom:0,borderRadius:Kt,"&::after":{position:"absolute",insetInline:tt,bottom:0,borderBottom:`${J}px solid transparent`,transition:`border-color ${Le} ${ze}`,content:'""'},"&:hover, &-active, &-open":{background:_t,"&::after":{borderBottomWidth:J,borderBottomColor:Nt}},"&-selected":{color:Nt,backgroundColor:ut,"&:hover":{backgroundColor:ut},"&::after":{borderBottomWidth:J,borderBottomColor:Nt}}}}),[`&${Q}-root`]:{[`&${Q}-inline, &${Q}-vertical`]:{borderInlineEnd:`${Se}px ${Oe} ${Ie}`}},[`&${Q}-inline`]:{[`${Q}-sub${Q}-inline`]:{background:te},[`${Q}-item, ${Q}-submenu-title`]:Se&&ce?{width:`calc(100% + ${Se}px)`}:{},[`${Q}-item`]:{position:"relative","&::after":{position:"absolute",insetBlock:0,insetInlineEnd:0,borderInlineEnd:`${ce}px solid ${j}`,transform:"scaleY(0.0001)",opacity:0,transition:[`transform ${je} ${We}`,`opacity ${je} ${We}`].join(","),content:'""'},[`&${Q}-item-danger`]:{"&::after":{borderInlineEndColor:dt}}},[`${Q}-selected, ${Q}-item-selected`]:{"&::after":{transform:"scaleY(1)",opacity:1,transition:[`transform ${je} ${ze}`,`opacity ${je} ${ze}`].join(",")}}}}}};const V=ye=>{const{componentCls:q,itemHeight:Q,itemMarginInline:$,padding:j,menuArrowSize:re,marginXS:k,itemMarginBlock:te}=ye,ie=j+re+k;return{[`${q}-item`]:{position:"relative",overflow:"hidden"},[`${q}-item, ${q}-submenu-title`]:{height:Q,lineHeight:`${Q}px`,paddingInline:j,overflow:"hidden",textOverflow:"ellipsis",marginInline:$,marginBlock:te,width:`calc(100% - ${$*2}px)`},[`> ${q}-item,
|
|
> ${q}-submenu > ${q}-submenu-title`]:{height:Q,lineHeight:`${Q}px`},[`${q}-item-group-list ${q}-submenu-title,
|
|
${q}-submenu-title`]:{paddingInlineEnd:ie}}};var ee=ye=>{const{componentCls:q,iconCls:Q,itemHeight:$,colorTextLightSolid:j,dropdownWidth:re,controlHeightLG:k,motionDurationMid:te,motionEaseOut:ie,paddingXL:J,itemMarginInline:ce,fontSizeLG:Se,motionDurationSlow:Le,paddingXS:ze,boxShadowSecondary:We,collapsedWidth:tt,collapsedIconSize:je}=ye,pe={height:$,lineHeight:`${$}px`,listStylePosition:"inside",listStyleType:"disc"};return[{[q]:{"&-inline, &-vertical":Object.assign({[`&${q}-root`]:{boxShadow:"none"}},V(ye))},[`${q}-submenu-popup`]:{[`${q}-vertical`]:Object.assign(Object.assign({},V(ye)),{boxShadow:We})}},{[`${q}-submenu-popup ${q}-vertical${q}-sub`]:{minWidth:re,maxHeight:`calc(100vh - ${k*2.5}px)`,padding:"0",overflow:"hidden",borderInlineEnd:0,"&:not([class*='-active'])":{overflowX:"hidden",overflowY:"auto"}}},{[`${q}-inline`]:{width:"100%",[`&${q}-root`]:{[`${q}-item, ${q}-submenu-title`]:{display:"flex",alignItems:"center",transition:[`border-color ${Le}`,`background ${Le}`,`padding ${te} ${ie}`].join(","),[`> ${q}-title-content`]:{flex:"auto",minWidth:0,overflow:"hidden",textOverflow:"ellipsis"},"> *":{flex:"none"}}},[`${q}-sub${q}-inline`]:{padding:0,border:0,borderRadius:0,boxShadow:"none",[`& > ${q}-submenu > ${q}-submenu-title`]:pe,[`& ${q}-item-group-title`]:{paddingInlineStart:J}},[`${q}-item`]:pe}},{[`${q}-inline-collapsed`]:{width:tt,[`&${q}-root`]:{[`${q}-item, ${q}-submenu ${q}-submenu-title`]:{[`> ${q}-inline-collapsed-noicon`]:{fontSize:Se,textAlign:"center"}}},[`> ${q}-item,
|
|
> ${q}-item-group > ${q}-item-group-list > ${q}-item,
|
|
> ${q}-item-group > ${q}-item-group-list > ${q}-submenu > ${q}-submenu-title,
|
|
> ${q}-submenu > ${q}-submenu-title`]:{insetInlineStart:0,paddingInline:`calc(50% - ${Se/2}px - ${ce}px)`,textOverflow:"clip",[`
|
|
${q}-submenu-arrow,
|
|
${q}-submenu-expand-icon
|
|
`]:{opacity:0},[`${q}-item-icon, ${Q}`]:{margin:0,fontSize:je,lineHeight:`${$}px`,"+ span":{display:"inline-block",opacity:0}}},[`${q}-item-icon, ${Q}`]:{display:"inline-block"},"&-tooltip":{pointerEvents:"none",[`${q}-item-icon, ${Q}`]:{display:"none"},"a, a:hover":{color:j}},[`${q}-item-group-title`]:Object.assign(Object.assign({},C.vS),{paddingInline:ze})}}]};const oe=ye=>{const{componentCls:q,motionDurationSlow:Q,motionDurationMid:$,motionEaseInOut:j,motionEaseOut:re,iconCls:k,iconSize:te,iconMarginInlineEnd:ie}=ye;return{[`${q}-item, ${q}-submenu-title`]:{position:"relative",display:"block",margin:0,whiteSpace:"nowrap",cursor:"pointer",transition:[`border-color ${Q}`,`background ${Q}`,`padding ${Q} ${j}`].join(","),[`${q}-item-icon, ${k}`]:{minWidth:te,fontSize:te,transition:[`font-size ${$} ${re}`,`margin ${Q} ${j}`,`color ${Q}`].join(","),"+ span":{marginInlineStart:ie,opacity:1,transition:[`opacity ${Q} ${j}`,`margin ${Q}`,`color ${Q}`].join(",")}},[`${q}-item-icon`]:Object.assign({},(0,C.Ro)()),[`&${q}-item-only-child`]:{[`> ${k}, > ${q}-item-icon`]:{marginInlineEnd:0}}},[`${q}-item-disabled, ${q}-submenu-disabled`]:{background:"none !important",cursor:"not-allowed","&::after":{borderColor:"transparent !important"},a:{color:"inherit !important"},[`> ${q}-submenu-title`]:{color:"inherit !important",cursor:"not-allowed"}}}},ue=ye=>{const{componentCls:q,motionDurationSlow:Q,motionEaseInOut:$,borderRadius:j,menuArrowSize:re,menuArrowOffset:k}=ye;return{[`${q}-submenu`]:{"&-expand-icon, &-arrow":{position:"absolute",top:"50%",insetInlineEnd:ye.margin,width:re,color:"currentcolor",transform:"translateY(-50%)",transition:`transform ${Q} ${$}, opacity ${Q}`},"&-arrow":{"&::before, &::after":{position:"absolute",width:re*.6,height:re*.15,backgroundColor:"currentcolor",borderRadius:j,transition:[`background ${Q} ${$}`,`transform ${Q} ${$}`,`top ${Q} ${$}`,`color ${Q} ${$}`].join(","),content:'""'},"&::before":{transform:`rotate(45deg) translateY(-${k})`},"&::after":{transform:`rotate(-45deg) translateY(${k})`}}}}},Ae=ye=>{const{antCls:q,componentCls:Q,fontSize:$,motionDurationSlow:j,motionDurationMid:re,motionEaseInOut:k,paddingXS:te,padding:ie,colorSplit:J,lineWidth:ce,zIndexPopup:Se,borderRadiusLG:Le,subMenuItemBorderRadius:ze,menuArrowSize:We,menuArrowOffset:tt,lineType:je,menuPanelMaskInset:pe,groupTitleLineHeight:Oe,groupTitleFontSize:Ie}=ye;return[{"":{[`${Q}`]:Object.assign(Object.assign({},(0,C.dF)()),{"&-hidden":{display:"none"}})},[`${Q}-submenu-hidden`]:{display:"none"}},{[Q]:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},(0,C.Wf)(ye)),(0,C.dF)()),{marginBottom:0,paddingInlineStart:0,fontSize:$,lineHeight:0,listStyle:"none",outline:"none",transition:`width ${j} cubic-bezier(0.2, 0, 0, 1) 0s`,"ul, ol":{margin:0,padding:0,listStyle:"none"},"&-overflow":{display:"flex",[`${Q}-item`]:{flex:"none"}},[`${Q}-item, ${Q}-submenu, ${Q}-submenu-title`]:{borderRadius:ye.itemBorderRadius},[`${Q}-item-group-title`]:{padding:`${te}px ${ie}px`,fontSize:Ie,lineHeight:Oe,transition:`all ${j}`},[`&-horizontal ${Q}-submenu`]:{transition:[`border-color ${j} ${k}`,`background ${j} ${k}`].join(",")},[`${Q}-submenu, ${Q}-submenu-inline`]:{transition:[`border-color ${j} ${k}`,`background ${j} ${k}`,`padding ${re} ${k}`].join(",")},[`${Q}-submenu ${Q}-sub`]:{cursor:"initial",transition:[`background ${j} ${k}`,`padding ${j} ${k}`].join(",")},[`${Q}-title-content`]:{transition:`color ${j}`},[`${Q}-item a`]:{"&::before":{position:"absolute",inset:0,backgroundColor:"transparent",content:'""'}},[`${Q}-item-divider`]:{overflow:"hidden",lineHeight:0,borderColor:J,borderStyle:je,borderWidth:0,borderTopWidth:ce,marginBlock:ce,padding:0,"&-dashed":{borderStyle:"dashed"}}}),oe(ye)),{[`${Q}-item-group`]:{[`${Q}-item-group-list`]:{margin:0,padding:0,[`${Q}-item, ${Q}-submenu-title`]:{paddingInline:`${$*2}px ${ie}px`}}},"&-submenu":{"&-popup":{position:"absolute",zIndex:Se,borderRadius:Le,boxShadow:"none",transformOrigin:"0 0",[`&${Q}-submenu`]:{background:"transparent"},"&::before":{position:"absolute",inset:`${pe}px 0 0`,zIndex:-1,width:"100%",height:"100%",opacity:0,content:'""'}},"&-placement-rightTop::before":{top:0,insetInlineStart:pe},"\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:ye.paddingXS},"\n &-placement-rightTop,\n &-placement-rightBottom\n ":{paddingInlineStart:ye.paddingXS},"\n &-placement-topRight,\n &-placement-topLeft\n ":{paddingBottom:ye.paddingXS},"\n &-placement-bottomRight,\n &-placement-bottomLeft\n ":{paddingTop:ye.paddingXS},[`> ${Q}`]:Object.assign(Object.assign(Object.assign({borderRadius:Le},oe(ye)),ue(ye)),{[`${Q}-item, ${Q}-submenu > ${Q}-submenu-title`]:{borderRadius:ze},[`${Q}-submenu-title::after`]:{transition:`transform ${j} ${k}`}})}}),ue(ye)),{[`&-inline-collapsed ${Q}-submenu-arrow,
|
|
&-inline ${Q}-submenu-arrow`]:{"&::before":{transform:`rotate(-45deg) translateX(${tt})`},"&::after":{transform:`rotate(45deg) translateX(-${tt})`}},[`${Q}-submenu-open${Q}-submenu-inline > ${Q}-submenu-title > ${Q}-submenu-arrow`]:{transform:`translateY(-${We*.2}px)`,"&::after":{transform:`rotate(-45deg) translateX(-${tt})`},"&::before":{transform:`rotate(45deg) translateX(${tt})`}}})},{[`${q}-layout-header`]:{[Q]:{lineHeight:"inherit"}}}]};var fe=(ye,q)=>(0,L.Z)("Menu",$=>{if(q===!1)return[];const{colorBgElevated:j,colorPrimary:re,colorTextLightSolid:k,controlHeightLG:te,fontSize:ie,darkItemColor:J,darkDangerItemColor:ce,darkItemBg:Se,darkSubMenuItemBg:Le,darkItemSelectedColor:ze,darkItemSelectedBg:We,darkDangerItemSelectedBg:tt,darkItemHoverBg:je,darkGroupTitleColor:pe,darkItemHoverColor:Oe,darkItemDisabledColor:Ie,darkDangerItemHoverColor:Pe,darkDangerItemSelectedColor:ot,darkDangerItemActiveBg:ht}=$,dt=ie/7*5,At=(0,R.TS)($,{menuArrowSize:dt,menuHorizontalHeight:te*1.15,menuArrowOffset:`${dt*.25}px`,menuPanelMaskInset:-7,menuSubMenuBg:j}),Ot=(0,R.TS)(At,{itemColor:J,itemHoverColor:Oe,groupTitleColor:pe,itemSelectedColor:ze,itemBg:Se,popupBg:Se,subMenuItemBg:Le,itemActiveBg:"transparent",itemSelectedBg:We,activeBarHeight:0,activeBarBorderWidth:0,itemHoverBg:je,itemDisabledColor:Ie,dangerItemColor:ce,dangerItemHoverColor:Pe,dangerItemSelectedColor:ot,dangerItemActiveBg:ht,dangerItemSelectedBg:tt,menuSubMenuBg:Le,horizontalItemSelectedColor:k,horizontalItemSelectedBg:re});return[Ae(At),N(At),ee(At),G(At,"light"),G(Ot,"dark"),F(At),(0,S.Z)(At),(0,P.oN)(At,"slide-up"),(0,P.oN)(At,"slide-down"),(0,b._y)(At,"zoom-big")]},$=>{const{colorPrimary:j,colorError:re,colorTextDisabled:k,colorErrorBg:te,colorText:ie,colorTextDescription:J,colorBgContainer:ce,colorFillAlter:Se,colorFillContent:Le,lineWidth:ze,lineWidthBold:We,controlItemBgActive:tt,colorBgTextHover:je,controlHeightLG:pe,lineHeight:Oe,colorBgElevated:Ie,marginXXS:Pe,padding:ot,fontSize:ht,controlHeightSM:dt,fontSizeLG:At,colorTextLightSolid:Ot,colorErrorHover:Ke}=$,Xe=new x.C(Ot).setAlpha(.65).toRgbString();return{dropdownWidth:160,zIndexPopup:$.zIndexPopupBase+50,radiusItem:$.borderRadiusLG,itemBorderRadius:$.borderRadiusLG,radiusSubMenuItem:$.borderRadiusSM,subMenuItemBorderRadius:$.borderRadiusSM,colorItemText:ie,itemColor:ie,colorItemTextHover:ie,itemHoverColor:ie,colorItemTextHoverHorizontal:j,horizontalItemHoverColor:j,colorGroupTitle:J,groupTitleColor:J,colorItemTextSelected:j,itemSelectedColor:j,colorItemTextSelectedHorizontal:j,horizontalItemSelectedColor:j,colorItemBg:ce,itemBg:ce,colorItemBgHover:je,itemHoverBg:je,colorItemBgActive:Le,itemActiveBg:tt,colorSubItemBg:Se,subMenuItemBg:Se,colorItemBgSelected:tt,itemSelectedBg:tt,colorItemBgSelectedHorizontal:"transparent",horizontalItemSelectedBg:"transparent",colorActiveBarWidth:0,activeBarWidth:0,colorActiveBarHeight:We,activeBarHeight:We,colorActiveBarBorderSize:ze,activeBarBorderWidth:ze,colorItemTextDisabled:k,itemDisabledColor:k,colorDangerItemText:re,dangerItemColor:re,colorDangerItemTextHover:re,dangerItemHoverColor:re,colorDangerItemTextSelected:re,dangerItemSelectedColor:re,colorDangerItemBgActive:te,dangerItemActiveBg:te,colorDangerItemBgSelected:te,dangerItemSelectedBg:te,itemMarginInline:$.marginXXS,horizontalItemBorderRadius:0,horizontalItemHoverBg:"transparent",itemHeight:pe,groupTitleLineHeight:Oe,collapsedWidth:pe*2,popupBg:Ie,itemMarginBlock:Pe,itemPaddingInline:ot,horizontalLineHeight:`${pe*1.15}px`,iconSize:ht,iconMarginInlineEnd:dt-ht,collapsedIconSize:At,groupTitleFontSize:ht,darkItemDisabledColor:new x.C(Ot).setAlpha(.25).toRgbString(),darkItemColor:Xe,darkDangerItemColor:re,darkItemBg:"#001529",darkSubMenuItemBg:"#000c17",darkItemSelectedColor:Ot,darkItemSelectedBg:j,darkDangerItemSelectedBg:re,darkItemHoverBg:"transparent",darkGroupTitleColor:Xe,darkItemHoverColor:Ot,darkDangerItemHoverColor:Ke,darkDangerItemSelectedColor:Ot,darkDangerItemActiveBg:re}},{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"]]})(ye),he=function(ye,q){var Q={};for(var $ in ye)Object.prototype.hasOwnProperty.call(ye,$)&&q.indexOf($)<0&&(Q[$]=ye[$]);if(ye!=null&&typeof Object.getOwnPropertySymbols=="function")for(var j=0,$=Object.getOwnPropertySymbols(ye);j<$.length;j++)q.indexOf($[j])<0&&Object.prototype.propertyIsEnumerable.call(ye,$[j])&&(Q[$[j]]=ye[$[j]]);return Q},me=(0,H.forwardRef)((ye,q)=>{var Q,$;const j=H.useContext(i.Z),re=j||{},{getPrefixCls:k,getPopupContainer:te,direction:ie,menu:J}=H.useContext(y.E_),ce=k(),{prefixCls:Se,className:Le,style:ze,theme:We="light",expandIcon:tt,_internalDisableMenuItemTitleTooltip:je,inlineCollapsed:pe,siderCollapsed:Oe,items:Ie,children:Pe,rootClassName:ot,mode:ht,selectable:dt,onClick:At,overflowedIndicatorPopupClassName:Ot}=ye,Ke=he(ye,["prefixCls","className","style","theme","expandIcon","_internalDisableMenuItemTitleTooltip","inlineCollapsed","siderCollapsed","items","children","rootClassName","mode","selectable","onClick","overflowedIndicatorPopupClassName"]),Xe=(0,a.Z)(Ke,["collapsedWidth"]),Je=A(Ie)||Pe;(Q=re.validator)===null||Q===void 0||Q.call(re,{mode:ht});const Nt=(0,e.useEvent)(function(){var ft;At==null||At.apply(void 0,arguments),(ft=re.onClick)===null||ft===void 0||ft.call(re)}),ut=re.mode||ht,Kt=dt!=null?dt:re.selectable,_t=H.useMemo(()=>Oe!==void 0?Oe:pe,[pe,Oe]),ge={horizontal:{motionName:`${ce}-slide-up`},inline:(0,t.Z)(ce),other:{motionName:`${ce}-zoom-big`}},we=k("menu",Se||re.prefixCls),[Ue,De]=fe(we,!j),nt=D()(`${we}-${We}`,J==null?void 0:J.className,Le);let qe;if(typeof tt=="function")qe=tt;else if(tt===null||tt===!1)qe=null;else if(re.expandIcon===null||re.expandIcon===!1)qe=null;else{const ft=tt!=null?tt:re.expandIcon;qe=(0,_.Tm)(ft,{className:D()(`${we}-submenu-expand-icon`,(0,_.l$)(ft)?($=ft.props)===null||$===void 0?void 0:$.className:"")})}const rt=H.useMemo(()=>({prefixCls:we,inlineCollapsed:_t||!1,direction:ie,firstLevel:!0,theme:We,mode:ut,disableMenuItemTitleTooltip:je}),[we,_t,ie,je,We]);return Ue(H.createElement(i.Z.Provider,{value:null},H.createElement(n.Provider,{value:rt},H.createElement(w.ZP,Object.assign({getPopupContainer:te,overflowedIndicator:H.createElement(f.Z,null),overflowedIndicatorPopupClassName:D()(we,`${we}-${We}`,Ot),mode:ut,selectable:Kt,onClick:Nt},Xe,{inlineCollapsed:_t,style:Object.assign(Object.assign({},J==null?void 0:J.style),ze),className:nt,prefixCls:we,direction:ie,defaultMotions:ge,expandIcon:qe,ref:q,rootClassName:D()(ot,De)}),Je))))});const Te=(0,H.forwardRef)((ye,q)=>{const Q=(0,H.useRef)(null),$=H.useContext(M.D);return(0,H.useImperativeHandle)(q,()=>({menu:Q.current,focus:j=>{var re;(re=Q.current)===null||re===void 0||re.focus(j)}})),H.createElement(me,Object.assign({ref:Q},ye,$))});Te.Item=o,Te.SubMenu=u,Te.Divider=E,Te.ItemGroup=w.BW;var Ce=Te},38703:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return je}});var w=B(67294),H=B(87725),M=B(18299),g=B(16646),D=B(73475),y=B(94184),v=B.n(y),m=B(10366),E=B(53124),h=B(87462),a=B(1413),d=B(45987),_={percent:0,prefixCls:"rc-progress",strokeColor:"#2db7f5",strokeLinecap:"round",strokeWidth:1,trailColor:"#D9D9D9",trailWidth:1,gapPosition:"bottom"},r=function(){var Oe=(0,w.useRef)([]),Ie=(0,w.useRef)(null);return(0,w.useEffect)(function(){var Pe=Date.now(),ot=!1;Oe.current.forEach(function(ht){if(ht){ot=!0;var dt=ht.style;dt.transitionDuration=".3s, .3s, .3s, .06s",Ie.current&&Pe-Ie.current<100&&(dt.transitionDuration="0s, 0s")}}),ot&&(Ie.current=Date.now())}),Oe.current},n=["className","percent","prefixCls","strokeColor","strokeLinecap","strokeWidth","style","trailColor","trailWidth","transition"],l=function(Oe){var Ie=(0,a.Z)((0,a.Z)({},_),Oe),Pe=Ie.className,ot=Ie.percent,ht=Ie.prefixCls,dt=Ie.strokeColor,At=Ie.strokeLinecap,Ot=Ie.strokeWidth,Ke=Ie.style,Xe=Ie.trailColor,Je=Ie.trailWidth,Nt=Ie.transition,ut=(0,d.Z)(Ie,n);delete ut.gapPosition;var Kt=Array.isArray(ot)?ot:[ot],_t=Array.isArray(dt)?dt:[dt],ge=r(),we=Ot/2,Ue=100-Ot/2,De="M ".concat(At==="round"?we:0,",").concat(we,`
|
|
L `).concat(At==="round"?Ue:100,",").concat(we),nt="0 0 100 ".concat(Ot),qe=0;return w.createElement("svg",(0,h.Z)({className:v()("".concat(ht,"-line"),Pe),viewBox:nt,preserveAspectRatio:"none",style:Ke},ut),w.createElement("path",{className:"".concat(ht,"-line-trail"),d:De,strokeLinecap:At,stroke:Xe,strokeWidth:Je||Ot,fillOpacity:"0"}),Kt.map(function(rt,ft){var Tt=1;switch(At){case"round":Tt=1-Ot/100;break;case"square":Tt=1-Ot/2/100;break;default:Tt=1;break}var Ze={strokeDasharray:"".concat(rt*Tt,"px, 100px"),strokeDashoffset:"-".concat(qe,"px"),transition:Nt||"stroke-dashoffset 0.3s ease 0s, stroke-dasharray .3s ease 0s, stroke 0.3s linear"},O=_t[ft]||_t[_t.length-1];return qe+=rt,w.createElement("path",{key:ft,className:"".concat(ht,"-line-path"),d:De,strokeLinecap:At,stroke:O,strokeWidth:Ot,fillOpacity:"0",ref:function(z){ge[ft]=z},style:Ze})}))},o=l,s=B(71002),u=B(97685),f=B(98924),e=0,t=(0,f.Z)();function i(){var pe;return t?(pe=e,e+=1):pe="TEST_OR_SSR",pe}var c=function(pe){var Oe=w.useState(),Ie=(0,u.Z)(Oe,2),Pe=Ie[0],ot=Ie[1];return w.useEffect(function(){ot("rc_progress_".concat(i()))},[]),pe||Pe},p=function(Oe){var Ie=Oe.bg,Pe=Oe.children;return w.createElement("div",{style:{width:"100%",height:"100%",background:Ie}},Pe)};function A(pe,Oe){return Object.keys(pe).map(function(Ie){var Pe=parseFloat(Ie),ot="".concat(Math.floor(Pe*Oe),"%");return"".concat(pe[Ie]," ").concat(ot)})}var x=w.forwardRef(function(pe,Oe){var Ie=pe.prefixCls,Pe=pe.color,ot=pe.gradientId,ht=pe.radius,dt=pe.style,At=pe.ptg,Ot=pe.strokeLinecap,Ke=pe.strokeWidth,Xe=pe.size,Je=pe.gapDegree,Nt=Pe&&(0,s.Z)(Pe)==="object",ut=Nt?"#FFF":void 0,Kt=Xe/2,_t=w.createElement("circle",{className:"".concat(Ie,"-circle-path"),r:ht,cx:Kt,cy:Kt,stroke:ut,strokeLinecap:Ot,strokeWidth:Ke,opacity:At===0?0:1,style:dt,ref:Oe});if(!Nt)return _t;var ge="".concat(ot,"-conic"),we=Je?"".concat(180+Je/2,"deg"):"0deg",Ue=A(Pe,(360-Je)/360),De=A(Pe,1),nt="conic-gradient(from ".concat(we,", ").concat(Ue.join(", "),")"),qe="linear-gradient(to ".concat(Je?"bottom":"top",", ").concat(De.join(", "),")");return w.createElement(w.Fragment,null,w.createElement("mask",{id:ge},_t),w.createElement("foreignObject",{x:0,y:0,width:Xe,height:Xe,mask:"url(#".concat(ge,")")},w.createElement(p,{bg:qe},w.createElement(p,{bg:nt}))))}),C=x,S=100,P=function(Oe,Ie,Pe,ot,ht,dt,At,Ot,Ke,Xe){var Je=arguments.length>10&&arguments[10]!==void 0?arguments[10]:0,Nt=Pe/100*360*((360-dt)/360),ut=dt===0?0:{bottom:0,top:180,left:90,right:-90}[At],Kt=(100-ot)/100*Ie;Ke==="round"&&ot!==100&&(Kt+=Xe/2,Kt>=Ie&&(Kt=Ie-.01));var _t=S/2;return{stroke:typeof Ot=="string"?Ot:void 0,strokeDasharray:"".concat(Ie,"px ").concat(Oe),strokeDashoffset:Kt+Je,transform:"rotate(".concat(ht+Nt+ut,"deg)"),transformOrigin:"".concat(_t,"px ").concat(_t,"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}},b=["id","prefixCls","steps","strokeWidth","trailWidth","gapDegree","gapPosition","trailColor","strokeLinecap","style","className","strokeColor","percent"];function L(pe){var Oe=pe!=null?pe:[];return Array.isArray(Oe)?Oe:[Oe]}var R=function(Oe){var Ie=(0,a.Z)((0,a.Z)({},_),Oe),Pe=Ie.id,ot=Ie.prefixCls,ht=Ie.steps,dt=Ie.strokeWidth,At=Ie.trailWidth,Ot=Ie.gapDegree,Ke=Ot===void 0?0:Ot,Xe=Ie.gapPosition,Je=Ie.trailColor,Nt=Ie.strokeLinecap,ut=Ie.style,Kt=Ie.className,_t=Ie.strokeColor,ge=Ie.percent,we=(0,d.Z)(Ie,b),Ue=S/2,De=c(Pe),nt="".concat(De,"-gradient"),qe=Ue-dt/2,rt=Math.PI*2*qe,ft=Ke>0?90+Ke/2:-90,Tt=rt*((360-Ke)/360),Ze=(0,s.Z)(ht)==="object"?ht:{count:ht,space:2},O=Ze.count,W=Ze.space,z=L(ge),Z=L(_t),Y=Z.find(function(Ut){return Ut&&(0,s.Z)(Ut)==="object"}),se=Y&&(0,s.Z)(Y)==="object",xe=se?"butt":Nt,lt=P(rt,Tt,0,100,ft,Ke,Xe,Je,xe,dt),Ve=r(),Rt=function(){var st=0;return z.map(function(bt,wt){var gt=Z[wt]||Z[Z.length-1],xt=P(rt,Tt,st,bt,ft,Ke,Xe,gt,xe,dt);return st+=bt,w.createElement(C,{key:wt,color:gt,ptg:bt,radius:qe,prefixCls:ot,gradientId:nt,style:xt,strokeLinecap:xe,strokeWidth:dt,gapDegree:Ke,ref:function(Vt){Ve[wt]=Vt},size:S})}).reverse()},kt=function(){var st=Math.round(O*(z[0]/100)),bt=100/O,wt=0;return new Array(O).fill(null).map(function(gt,xt){var Gt=xt<=st-1?Z[0]:Je,Vt=Gt&&(0,s.Z)(Gt)==="object"?"url(#".concat(nt,")"):void 0,Xt=P(rt,Tt,wt,bt,ft,Ke,Xe,Gt,"butt",dt,W);return wt+=(Tt-Xt.strokeDashoffset+W)*100/Tt,w.createElement("circle",{key:xt,className:"".concat(ot,"-circle-path"),r:qe,cx:Ue,cy:Ue,stroke:Vt,strokeWidth:dt,opacity:1,style:Xt,ref:function(Pr){Ve[xt]=Pr}})})};return w.createElement("svg",(0,h.Z)({className:v()("".concat(ot,"-circle"),Kt),viewBox:"0 0 ".concat(S," ").concat(S),style:ut,id:Pe,role:"presentation"},we),!O&&w.createElement("circle",{className:"".concat(ot,"-circle-trail"),r:qe,cx:Ue,cy:Ue,stroke:Je,strokeLinecap:xe,strokeWidth:At||dt,style:lt}),O?kt():Rt())},T=R,N={Line:o,Circle:T},I=B(83062),F=B(47448);function U(pe){return!pe||pe<0?0:pe>100?100:pe}function K(pe){let{success:Oe,successPercent:Ie}=pe,Pe=Ie;return Oe&&"progress"in Oe&&(Pe=Oe.progress),Oe&&"percent"in Oe&&(Pe=Oe.percent),Pe}const G=pe=>{let{percent:Oe,success:Ie,successPercent:Pe}=pe;const ot=U(K({success:Ie,successPercent:Pe}));return[ot,U(U(Oe)-ot)]},V=pe=>{let{success:Oe={},strokeColor:Ie}=pe;const{strokeColor:Pe}=Oe;return[Pe||F.presetPrimaryColors.green,Ie||null]},X=(pe,Oe,Ie)=>{var Pe,ot,ht,dt;let At=-1,Ot=-1;if(Oe==="step"){const Ke=Ie.steps,Xe=Ie.strokeWidth;typeof pe=="string"||typeof pe=="undefined"?(At=pe==="small"?2:14,Ot=Xe!=null?Xe:8):typeof pe=="number"?[At,Ot]=[pe,pe]:[At=14,Ot=8]=pe,At*=Ke}else if(Oe==="line"){const Ke=Ie==null?void 0:Ie.strokeWidth;typeof pe=="string"||typeof pe=="undefined"?Ot=Ke||(pe==="small"?6:8):typeof pe=="number"?[At,Ot]=[pe,pe]:[At=-1,Ot=8]=pe}else(Oe==="circle"||Oe==="dashboard")&&(typeof pe=="string"||typeof pe=="undefined"?[At,Ot]=pe==="small"?[60,60]:[120,120]:typeof pe=="number"?[At,Ot]=[pe,pe]:(At=(ot=(Pe=pe[0])!==null&&Pe!==void 0?Pe:pe[1])!==null&&ot!==void 0?ot:120,Ot=(dt=(ht=pe[0])!==null&&ht!==void 0?ht:pe[1])!==null&&dt!==void 0?dt:120));return[At,Ot]},ee=3,oe=pe=>ee/pe*100;var Ae=pe=>{const{prefixCls:Oe,trailColor:Ie=null,strokeLinecap:Pe="round",gapPosition:ot,gapDegree:ht,width:dt=120,type:At,children:Ot,success:Ke,size:Xe=dt}=pe,[Je,Nt]=X(Xe,"circle");let{strokeWidth:ut}=pe;ut===void 0&&(ut=Math.max(oe(Je),6));const Kt={width:Je,height:Nt,fontSize:Je*.15+6},_t=w.useMemo(()=>{if(ht||ht===0)return ht;if(At==="dashboard")return 75},[ht,At]),ge=ot||At==="dashboard"&&"bottom"||void 0,we=Object.prototype.toString.call(pe.strokeColor)==="[object Object]",Ue=V({success:Ke,strokeColor:pe.strokeColor}),De=v()(`${Oe}-inner`,{[`${Oe}-circle-gradient`]:we}),nt=w.createElement(T,{percent:G(pe),strokeWidth:ut,trailWidth:ut,strokeColor:Ue,strokeLinecap:Pe,trailColor:Ie,prefixCls:Oe,gapDegree:_t,gapPosition:ge});return w.createElement("div",{className:De,style:Kt},Je<=20?w.createElement(I.Z,{title:Ot},w.createElement("span",null,nt)):w.createElement(w.Fragment,null,nt,Ot))},fe=function(pe,Oe){var Ie={};for(var Pe in pe)Object.prototype.hasOwnProperty.call(pe,Pe)&&Oe.indexOf(Pe)<0&&(Ie[Pe]=pe[Pe]);if(pe!=null&&typeof Object.getOwnPropertySymbols=="function")for(var ot=0,Pe=Object.getOwnPropertySymbols(pe);ot<Pe.length;ot++)Oe.indexOf(Pe[ot])<0&&Object.prototype.propertyIsEnumerable.call(pe,Pe[ot])&&(Ie[Pe[ot]]=pe[Pe[ot]]);return Ie};const he=pe=>{let Oe=[];return Object.keys(pe).forEach(Ie=>{const Pe=parseFloat(Ie.replace(/%/g,""));isNaN(Pe)||Oe.push({key:Pe,value:pe[Ie]})}),Oe=Oe.sort((Ie,Pe)=>Ie.key-Pe.key),Oe.map(Ie=>{let{key:Pe,value:ot}=Ie;return`${ot} ${Pe}%`}).join(", ")},ve=(pe,Oe)=>{const{from:Ie=F.presetPrimaryColors.blue,to:Pe=F.presetPrimaryColors.blue,direction:ot=Oe==="rtl"?"to left":"to right"}=pe,ht=fe(pe,["from","to","direction"]);if(Object.keys(ht).length!==0){const dt=he(ht);return{backgroundImage:`linear-gradient(${ot}, ${dt})`}}return{backgroundImage:`linear-gradient(${ot}, ${Ie}, ${Pe})`}};var Te=pe=>{const{prefixCls:Oe,direction:Ie,percent:Pe,size:ot,strokeWidth:ht,strokeColor:dt,strokeLinecap:At="round",children:Ot,trailColor:Ke=null,success:Xe}=pe,Je=dt&&typeof dt!="string"?ve(dt,Ie):{backgroundColor:dt},Nt=At==="square"||At==="butt"?0:void 0,ut={backgroundColor:Ke||void 0,borderRadius:Nt},Kt=ot!=null?ot:[-1,ht||(ot==="small"?6:8)],[_t,ge]=X(Kt,"line",{strokeWidth:ht}),we=Object.assign({width:`${U(Pe)}%`,height:ge,borderRadius:Nt},Je),Ue=K(pe),De={width:`${U(Ue)}%`,height:ge,borderRadius:Nt,backgroundColor:Xe==null?void 0:Xe.strokeColor},nt={width:_t<0?"100%":_t,height:ge};return w.createElement(w.Fragment,null,w.createElement("div",{className:`${Oe}-outer`,style:nt},w.createElement("div",{className:`${Oe}-inner`,style:ut},w.createElement("div",{className:`${Oe}-bg`,style:we}),Ue!==void 0?w.createElement("div",{className:`${Oe}-success-bg`,style:De}):null)),Ot)},ye=pe=>{const{size:Oe,steps:Ie,percent:Pe=0,strokeWidth:ot=8,strokeColor:ht,trailColor:dt=null,prefixCls:At,children:Ot}=pe,Ke=Math.round(Ie*(Pe/100)),Xe=Oe==="small"?2:14,Je=Oe!=null?Oe:[Xe,ot],[Nt,ut]=X(Je,"step",{steps:Ie,strokeWidth:ot}),Kt=Nt/Ie,_t=new Array(Ie);for(let ge=0;ge<Ie;ge++){const we=Array.isArray(ht)?ht[ge]:ht;_t[ge]=w.createElement("div",{key:ge,className:v()(`${At}-steps-item`,{[`${At}-steps-item-active`]:ge<=Ke-1}),style:{backgroundColor:ge<=Ke-1?we:dt,width:Kt,height:ut}})}return w.createElement("div",{className:`${At}-steps-outer`},_t,Ot)},q=B(45930),Q=B(14747),$=B(67968),j=B(45503);const re=pe=>{const Oe=pe?"100%":"-100%";return new q.Keyframes(`antProgress${pe?"RTL":"LTR"}Active`,{"0%":{transform:`translateX(${Oe}) scaleX(0)`,opacity:.1},"20%":{transform:`translateX(${Oe}) scaleX(0)`,opacity:.5},to:{transform:"translateX(0) scaleX(1)",opacity:0}})},k=pe=>{const{componentCls:Oe,iconCls:Ie}=pe;return{[Oe]:Object.assign(Object.assign({},(0,Q.Wf)(pe)),{display:"inline-block","&-rtl":{direction:"rtl"},"&-line":{position:"relative",width:"100%",fontSize:pe.fontSize,marginInlineEnd:pe.marginXS,marginBottom:pe.marginXS},[`${Oe}-outer`]:{display:"inline-block",width:"100%"},[`&${Oe}-show-info`]:{[`${Oe}-outer`]:{marginInlineEnd:`calc(-2em - ${pe.marginXS}px)`,paddingInlineEnd:`calc(2em + ${pe.paddingXS}px)`}},[`${Oe}-inner`]:{position:"relative",display:"inline-block",width:"100%",overflow:"hidden",verticalAlign:"middle",backgroundColor:pe.remainingColor,borderRadius:pe.lineBorderRadius},[`${Oe}-inner:not(${Oe}-circle-gradient)`]:{[`${Oe}-circle-path`]:{stroke:pe.defaultColor}},[`${Oe}-success-bg, ${Oe}-bg`]:{position:"relative",backgroundColor:pe.defaultColor,borderRadius:pe.lineBorderRadius,transition:`all ${pe.motionDurationSlow} ${pe.motionEaseInOutCirc}`},[`${Oe}-success-bg`]:{position:"absolute",insetBlockStart:0,insetInlineStart:0,backgroundColor:pe.colorSuccess},[`${Oe}-text`]:{display:"inline-block",width:"2em",marginInlineStart:pe.marginXS,color:pe.colorText,lineHeight:1,whiteSpace:"nowrap",textAlign:"start",verticalAlign:"middle",wordBreak:"normal",[Ie]:{fontSize:pe.fontSize}},[`&${Oe}-status-active`]:{[`${Oe}-bg::before`]:{position:"absolute",inset:0,backgroundColor:pe.colorBgContainer,borderRadius:pe.lineBorderRadius,opacity:0,animationName:re(),animationDuration:pe.progressActiveMotionDuration,animationTimingFunction:pe.motionEaseOutQuint,animationIterationCount:"infinite",content:'""'}},[`&${Oe}-rtl${Oe}-status-active`]:{[`${Oe}-bg::before`]:{animationName:re(!0)}},[`&${Oe}-status-exception`]:{[`${Oe}-bg`]:{backgroundColor:pe.colorError},[`${Oe}-text`]:{color:pe.colorError}},[`&${Oe}-status-exception ${Oe}-inner:not(${Oe}-circle-gradient)`]:{[`${Oe}-circle-path`]:{stroke:pe.colorError}},[`&${Oe}-status-success`]:{[`${Oe}-bg`]:{backgroundColor:pe.colorSuccess},[`${Oe}-text`]:{color:pe.colorSuccess}},[`&${Oe}-status-success ${Oe}-inner:not(${Oe}-circle-gradient)`]:{[`${Oe}-circle-path`]:{stroke:pe.colorSuccess}}})}},te=pe=>{const{componentCls:Oe,iconCls:Ie}=pe;return{[Oe]:{[`${Oe}-circle-trail`]:{stroke:pe.remainingColor},[`&${Oe}-circle ${Oe}-inner`]:{position:"relative",lineHeight:1,backgroundColor:"transparent"},[`&${Oe}-circle ${Oe}-text`]:{position:"absolute",insetBlockStart:"50%",insetInlineStart:0,width:"100%",margin:0,padding:0,color:pe.circleTextColor,fontSize:pe.circleTextFontSize,lineHeight:1,whiteSpace:"normal",textAlign:"center",transform:"translateY(-50%)",[Ie]:{fontSize:`${pe.fontSize/pe.fontSizeSM}em`}},[`${Oe}-circle&-status-exception`]:{[`${Oe}-text`]:{color:pe.colorError}},[`${Oe}-circle&-status-success`]:{[`${Oe}-text`]:{color:pe.colorSuccess}}},[`${Oe}-inline-circle`]:{lineHeight:1,[`${Oe}-inner`]:{verticalAlign:"bottom"}}}},ie=pe=>{const{componentCls:Oe}=pe;return{[Oe]:{[`${Oe}-steps`]:{display:"inline-block","&-outer":{display:"flex",flexDirection:"row",alignItems:"center"},"&-item":{flexShrink:0,minWidth:pe.progressStepMinWidth,marginInlineEnd:pe.progressStepMarginInlineEnd,backgroundColor:pe.remainingColor,transition:`all ${pe.motionDurationSlow}`,"&-active":{backgroundColor:pe.defaultColor}}}}}},J=pe=>{const{componentCls:Oe,iconCls:Ie}=pe;return{[Oe]:{[`${Oe}-small&-line, ${Oe}-small&-line ${Oe}-text ${Ie}`]:{fontSize:pe.fontSizeSM}}}};var ce=(0,$.Z)("Progress",pe=>{const Oe=pe.marginXXS/2,Ie=(0,j.TS)(pe,{progressStepMarginInlineEnd:Oe,progressStepMinWidth:Oe,progressActiveMotionDuration:"2.4s"});return[k(Ie),te(Ie),ie(Ie),J(Ie)]},pe=>({circleTextColor:pe.colorText,defaultColor:pe.colorInfo,remainingColor:pe.colorFillSecondary,lineBorderRadius:100,circleTextFontSize:"1em"})),Se=function(pe,Oe){var Ie={};for(var Pe in pe)Object.prototype.hasOwnProperty.call(pe,Pe)&&Oe.indexOf(Pe)<0&&(Ie[Pe]=pe[Pe]);if(pe!=null&&typeof Object.getOwnPropertySymbols=="function")for(var ot=0,Pe=Object.getOwnPropertySymbols(pe);ot<Pe.length;ot++)Oe.indexOf(Pe[ot])<0&&Object.prototype.propertyIsEnumerable.call(pe,Pe[ot])&&(Ie[Pe[ot]]=pe[Pe[ot]]);return Ie};const Le=null,ze=["normal","exception","active","success"];var tt=w.forwardRef((pe,Oe)=>{const{prefixCls:Ie,className:Pe,rootClassName:ot,steps:ht,strokeColor:dt,percent:At=0,size:Ot="default",showInfo:Ke=!0,type:Xe="line",status:Je,format:Nt,style:ut}=pe,Kt=Se(pe,["prefixCls","className","rootClassName","steps","strokeColor","percent","size","showInfo","type","status","format","style"]),_t=w.useMemo(()=>{var z,Z;const Y=K(pe);return parseInt(Y!==void 0?(z=Y!=null?Y:0)===null||z===void 0?void 0:z.toString():(Z=At!=null?At:0)===null||Z===void 0?void 0:Z.toString(),10)},[At,pe.success,pe.successPercent]),ge=w.useMemo(()=>!ze.includes(Je)&&_t>=100?"success":Je||"normal",[Je,_t]),{getPrefixCls:we,direction:Ue,progress:De}=w.useContext(E.E_),nt=we("progress",Ie),[qe,rt]=ce(nt),ft=w.useMemo(()=>{if(!Ke)return null;const z=K(pe);let Z;const Y=Nt||(xe=>`${xe}%`),se=Xe==="line";return Nt||ge!=="exception"&&ge!=="success"?Z=Y(U(At),U(z)):ge==="exception"?Z=se?w.createElement(g.Z,null):w.createElement(D.Z,null):ge==="success"&&(Z=se?w.createElement(H.Z,null):w.createElement(M.Z,null)),w.createElement("span",{className:`${nt}-text`,title:typeof Z=="string"?Z:void 0},Z)},[Ke,At,_t,ge,Xe,nt,Nt]),Tt=Array.isArray(dt)?dt[0]:dt,Ze=typeof dt=="string"||Array.isArray(dt)?dt:void 0;let O;Xe==="line"?O=ht?w.createElement(ye,Object.assign({},pe,{strokeColor:Ze,prefixCls:nt,steps:ht}),ft):w.createElement(Te,Object.assign({},pe,{strokeColor:Tt,prefixCls:nt,direction:Ue}),ft):(Xe==="circle"||Xe==="dashboard")&&(O=w.createElement(Ae,Object.assign({},pe,{strokeColor:Tt,prefixCls:nt,progressStatus:ge}),ft));const W=v()(nt,`${nt}-status-${ge}`,`${nt}-${Xe==="dashboard"&&"circle"||ht&&"steps"||Xe}`,{[`${nt}-inline-circle`]:Xe==="circle"&&X(Ot,"circle")[0]<=20,[`${nt}-show-info`]:Ke,[`${nt}-${Ot}`]:typeof Ot=="string",[`${nt}-rtl`]:Ue==="rtl"},De==null?void 0:De.className,Pe,ot,rt);return qe(w.createElement("div",Object.assign({ref:Oe,style:Object.assign(Object.assign({},De==null?void 0:De.style),ut),className:W,role:"progressbar","aria-valuenow":_t},(0,m.Z)(Kt,["trailColor","strokeWidth","width","gapDegree","gapPosition","strokeLinecap","success","successPercent"])),O))}),je=tt},12604:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return F}});var w=B(87462),H=B(67294),M={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"},g=M,D=B(74643),y=function(K,G){return H.createElement(D.Z,(0,w.Z)({},K,{ref:G,icon:g}))},v=H.forwardRef(y),m=B(94184),E=B.n(m),h=B(4942),a=B(97685),d=B(45987),_=B(21770),r=B(15105),n=B(64217);function l(U,K){var G=U.disabled,V=U.prefixCls,X=U.character,ee=U.characterRender,oe=U.index,ue=U.count,Ae=U.value,fe=U.allowHalf,he=U.focused,ve=U.onHover,me=U.onClick,Te=function(k){ve(k,oe)},Ce=function(k){me(k,oe)},ye=function(k){k.keyCode===r.Z.ENTER&&me(k,oe)},q=oe+1,Q=new Set([V]);Ae===0&&oe===0&&he?Q.add("".concat(V,"-focused")):fe&&Ae+.5>=q&&Ae<q?(Q.add("".concat(V,"-half")),Q.add("".concat(V,"-active")),he&&Q.add("".concat(V,"-focused"))):(q<=Ae?Q.add("".concat(V,"-full")):Q.add("".concat(V,"-zero")),q===Ae&&he&&Q.add("".concat(V,"-focused")));var $=typeof X=="function"?X(U):X,j=H.createElement("li",{className:E()(Array.from(Q)),ref:K},H.createElement("div",{onClick:G?null:Ce,onKeyDown:G?null:ye,onMouseMove:G?null:Te,role:"radio","aria-checked":Ae>oe?"true":"false","aria-posinset":oe+1,"aria-setsize":ue,tabIndex:G?-1:0},H.createElement("div",{className:"".concat(V,"-first")},$),H.createElement("div",{className:"".concat(V,"-second")},$)));return ee&&(j=ee(j,U)),j}var o=H.forwardRef(l);function s(){var U=H.useRef({});function K(V){return U.current[V]}function G(V){return function(X){U.current[V]=X}}return[K,G]}function u(U){var K=U.pageXOffset,G="scrollLeft";if(typeof K!="number"){var V=U.document;K=V.documentElement[G],typeof K!="number"&&(K=V.body[G])}return K}function f(U){var K,G,V=U.ownerDocument,X=V.body,ee=V&&V.documentElement,oe=U.getBoundingClientRect();return K=oe.left,G=oe.top,K-=ee.clientLeft||X.clientLeft||0,G-=ee.clientTop||X.clientTop||0,{left:K,top:G}}function e(U){var K=f(U),G=U.ownerDocument,V=G.defaultView||G.parentWindow;return K.left+=u(V),K.left}var t=["prefixCls","className","defaultValue","value","count","allowHalf","allowClear","character","characterRender","disabled","direction","tabIndex","autoFocus","onHoverChange","onChange","onFocus","onBlur","onKeyDown","onMouseLeave"];function i(U,K){var G,V=U.prefixCls,X=V===void 0?"rc-rate":V,ee=U.className,oe=U.defaultValue,ue=U.value,Ae=U.count,fe=Ae===void 0?5:Ae,he=U.allowHalf,ve=he===void 0?!1:he,me=U.allowClear,Te=me===void 0?!0:me,Ce=U.character,ye=Ce===void 0?"\u2605":Ce,q=U.characterRender,Q=U.disabled,$=U.direction,j=$===void 0?"ltr":$,re=U.tabIndex,k=re===void 0?0:re,te=U.autoFocus,ie=U.onHoverChange,J=U.onChange,ce=U.onFocus,Se=U.onBlur,Le=U.onKeyDown,ze=U.onMouseLeave,We=(0,d.Z)(U,t),tt=s(),je=(0,a.Z)(tt,2),pe=je[0],Oe=je[1],Ie=H.useRef(null),Pe=function(){if(!Q){var se;(se=Ie.current)===null||se===void 0||se.focus()}};H.useImperativeHandle(K,function(){return{focus:Pe,blur:function(){if(!Q){var se;(se=Ie.current)===null||se===void 0||se.blur()}}}});var ot=(0,_.Z)(oe||0,{value:ue}),ht=(0,a.Z)(ot,2),dt=ht[0],At=ht[1],Ot=(0,_.Z)(null),Ke=(0,a.Z)(Ot,2),Xe=Ke[0],Je=Ke[1],Nt=function(se,xe){var lt=j==="rtl",Ve=se+1;if(ve){var Rt=pe(se),kt=e(Rt),Ut=Rt.clientWidth;(lt&&xe-kt>Ut/2||!lt&&xe-kt<Ut/2)&&(Ve-=.5)}return Ve},ut=function(se){At(se),J==null||J(se)},Kt=H.useState(!1),_t=(0,a.Z)(Kt,2),ge=_t[0],we=_t[1],Ue=function(){we(!0),ce==null||ce()},De=function(){we(!1),Se==null||Se()},nt=H.useState(null),qe=(0,a.Z)(nt,2),rt=qe[0],ft=qe[1],Tt=function(se,xe){var lt=Nt(xe,se.pageX);lt!==Xe&&(ft(lt),Je(null)),ie==null||ie(lt)},Ze=function(se){Q||(ft(null),Je(null),ie==null||ie(void 0)),se&&(ze==null||ze(se))},O=function(se,xe){var lt=Nt(xe,se.pageX),Ve=!1;Te&&(Ve=lt===dt),Ze(),ut(Ve?0:lt),Je(Ve?lt:null)},W=function(se){var xe=se.keyCode,lt=j==="rtl",Ve=dt;xe===r.Z.RIGHT&&Ve<fe&&!lt?(ve?Ve+=.5:Ve+=1,ut(Ve),se.preventDefault()):xe===r.Z.LEFT&&Ve>0&&!lt||xe===r.Z.RIGHT&&Ve>0&<?(ve?Ve-=.5:Ve-=1,ut(Ve),se.preventDefault()):xe===r.Z.LEFT&&Ve<fe&<&&(ve?Ve+=.5:Ve+=1,ut(Ve),se.preventDefault()),Le==null||Le(se)};H.useEffect(function(){te&&!Q&&Pe()},[]);var z=new Array(fe).fill(0).map(function(Y,se){return H.createElement(o,{ref:Oe(se),index:se,count:fe,disabled:Q,prefixCls:"".concat(X,"-star"),allowHalf:ve,value:rt===null?dt:rt,onClick:O,onHover:Tt,key:Y||se,character:ye,characterRender:q,focused:ge})}),Z=E()(X,ee,(G={},(0,h.Z)(G,"".concat(X,"-disabled"),Q),(0,h.Z)(G,"".concat(X,"-rtl"),j==="rtl"),G));return H.createElement("ul",(0,w.Z)({className:Z,onMouseLeave:Ze,tabIndex:Q?-1:k,onFocus:Q?null:Ue,onBlur:Q?null:De,onKeyDown:Q?null:W,ref:Ie,role:"radiogroup"},(0,n.Z)(We,{aria:!0,data:!0,attr:!0})),z)}var c=H.forwardRef(i),p=c,A=B(53124),x=B(83062),C=B(14747),S=B(67968),P=B(45503);const b=U=>{const{componentCls:K}=U;return{[`${K}-star`]:{position:"relative",display:"inline-block",color:"inherit",cursor:"pointer","&:not(:last-child)":{marginInlineEnd:U.marginXS},"> div":{transition:`all ${U.motionDurationMid}, outline 0s`,"&:hover":{transform:U.starHoverScale},"&:focus":{outline:0},"&:focus-visible":{outline:`${U.lineWidth}px dashed ${U.starColor}`,transform:U.starHoverScale}},"&-first, &-second":{color:U.starBg,transition:`all ${U.motionDurationMid}`,userSelect:"none",[U.iconCls]:{verticalAlign:"middle"}},"&-first":{position:"absolute",top:0,insetInlineStart:0,width:"50%",height:"100%",overflow:"hidden",opacity:0},[`&-half ${K}-star-first, &-half ${K}-star-second`]:{opacity:1},[`&-half ${K}-star-first, &-full ${K}-star-second`]:{color:"inherit"}}}},L=U=>({[`&-rtl${U.componentCls}`]:{direction:"rtl"}}),R=U=>{const{componentCls:K}=U;return{[K]:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},(0,C.Wf)(U)),{display:"inline-block",margin:0,padding:0,color:U.starColor,fontSize:U.starSize,lineHeight:"unset",listStyle:"none",outline:"none",[`&-disabled${K} ${K}-star`]:{cursor:"default","> div:hover":{transform:"scale(1)"}}}),b(U)),{[`+ ${K}-text`]:{display:"inline-block",marginInlineStart:U.marginXS,fontSize:U.fontSize}}),L(U))}};var T=(0,S.Z)("Rate",U=>{const K=(0,P.TS)(U,{});return[R(K)]},U=>({starColor:U.yellow6,starSize:U.controlHeightLG*.5,starHoverScale:"scale(1.1)",starBg:U.colorFillContent})),N=function(U,K){var G={};for(var V in U)Object.prototype.hasOwnProperty.call(U,V)&&K.indexOf(V)<0&&(G[V]=U[V]);if(U!=null&&typeof Object.getOwnPropertySymbols=="function")for(var X=0,V=Object.getOwnPropertySymbols(U);X<V.length;X++)K.indexOf(V[X])<0&&Object.prototype.propertyIsEnumerable.call(U,V[X])&&(G[V[X]]=U[V[X]]);return G},F=H.forwardRef((U,K)=>{const{prefixCls:G,className:V,rootClassName:X,style:ee,tooltips:oe,character:ue=H.createElement(v,null)}=U,Ae=N(U,["prefixCls","className","rootClassName","style","tooltips","character"]),fe=(Q,$)=>{let{index:j}=$;return oe?H.createElement(x.Z,{title:oe[j]},Q):Q},{getPrefixCls:he,direction:ve,rate:me}=H.useContext(A.E_),Te=he("rate",G),[Ce,ye]=T(Te),q=Object.assign(Object.assign({},me==null?void 0:me.style),ee);return Ce(H.createElement(p,Object.assign({ref:K,character:ue,characterRender:fe},Ae,{className:E()(V,X,ye,me==null?void 0:me.className),style:q,prefixCls:Te,direction:ve})))})},11713:function(ke,_e,B){"use strict";B.d(_e,{default:function(){return Dr}});var w=B(94184),H=B.n(w),M=B(87462),g=B(74902),D=B(4942),y=B(1413),v=B(97685),m=B(45987),E=B(71002),h=B(67294);function a(ne){var ae=h.useRef();ae.current=ne;var Be=h.useCallback(function(){for(var Me,Ye=arguments.length,at=new Array(Ye),vt=0;vt<Ye;vt++)at[vt]=arguments[vt];return(Me=ae.current)===null||Me===void 0?void 0:Me.call.apply(Me,[ae].concat(at))},[]);return Be}function d(){return!!(typeof window!="undefined"&&window.document&&window.document.createElement)}var _=d()?h.useLayoutEffect:h.useEffect,r=_,n=function(ae,Be){var Me=h.useRef(!0);_(function(){if(!Me.current)return ae()},Be),_(function(){return Me.current=!1,function(){Me.current=!0}},[])};function l(ne){var ae=h.useRef(!1),Be=h.useState(ne),Me=(0,v.Z)(Be,2),Ye=Me[0],at=Me[1];h.useEffect(function(){return ae.current=!1,function(){ae.current=!0}},[]);function vt(Mt,Ee){Ee&&ae.current||at(Mt)}return[Ye,vt]}function o(ne){return ne!==void 0}function s(ne,ae){var Be=ae||{},Me=Be.defaultValue,Ye=Be.value,at=Be.onChange,vt=Be.postState,Mt=l(function(){return o(Ye)?Ye:o(Me)?typeof Me=="function"?Me():Me:typeof ne=="function"?ne():ne}),Ee=(0,v.Z)(Mt,2),le=Ee[0],de=Ee[1],be=Ye!==void 0?Ye:le,Qe=vt?vt(be):be,Ge=a(at),Ne=l([be]),mt=(0,v.Z)(Ne,2),Ct=mt[0],Pt=mt[1];n(function(){var $e=Ct[0];le!==$e&&Ge(le,$e)},[Ct]),n(function(){o(Ye)||de(Ye)},[Ye]);var pt=a(function($e,Lt){de($e,Lt),Pt([be],Lt)});return[Qe,pt]}var u={};function f(ne,ae){}function e(ne,ae){}function t(){u={}}function i(ne,ae,Be){!ae&&!u[Be]&&(ne(!1,Be),u[Be]=!0)}function c(ne,ae){i(f,ne,ae)}function p(ne,ae){i(e,ne,ae)}var A=c,x=function(){if(typeof navigator=="undefined"||typeof window=="undefined")return!1;var ne=navigator.userAgent||navigator.vendor||window.opera;return/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(ne)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(ne==null?void 0:ne.substr(0,4))},C={MAC_ENTER:3,BACKSPACE:8,TAB:9,NUM_CENTER:12,ENTER:13,SHIFT:16,CTRL:17,ALT:18,PAUSE:19,CAPS_LOCK:20,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,PRINT_SCREEN:44,INSERT:45,DELETE:46,ZERO:48,ONE:49,TWO:50,THREE:51,FOUR:52,FIVE:53,SIX:54,SEVEN:55,EIGHT:56,NINE:57,QUESTION_MARK:63,A:65,B:66,C:67,D:68,E:69,F:70,G:71,H:72,I:73,J:74,K:75,L:76,M:77,N:78,O:79,P:80,Q:81,R:82,S:83,T:84,U:85,V:86,W:87,X:88,Y:89,Z:90,META:91,WIN_KEY_RIGHT:92,CONTEXT_MENU:93,NUM_ZERO:96,NUM_ONE:97,NUM_TWO:98,NUM_THREE:99,NUM_FOUR:100,NUM_FIVE:101,NUM_SIX:102,NUM_SEVEN:103,NUM_EIGHT:104,NUM_NINE:105,NUM_MULTIPLY:106,NUM_PLUS:107,NUM_MINUS:109,NUM_PERIOD:110,NUM_DIVISION:111,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,NUMLOCK:144,SEMICOLON:186,DASH:189,EQUALS:187,COMMA:188,PERIOD:190,SLASH:191,APOSTROPHE:192,SINGLE_QUOTE:222,OPEN_SQUARE_BRACKET:219,BACKSLASH:220,CLOSE_SQUARE_BRACKET:221,WIN_KEY:224,MAC_FF_META:224,WIN_IME:229,isTextModifyingKeyEvent:function(ae){var Be=ae.keyCode;if(ae.altKey&&!ae.ctrlKey||ae.metaKey||Be>=C.F1&&Be<=C.F12)return!1;switch(Be){case C.ALT:case C.CAPS_LOCK:case C.CONTEXT_MENU:case C.CTRL:case C.DOWN:case C.END:case C.ESC:case C.HOME:case C.INSERT:case C.LEFT:case C.MAC_FF_META:case C.META:case C.NUMLOCK:case C.NUM_CENTER:case C.PAGE_DOWN:case C.PAGE_UP:case C.PAUSE:case C.PRINT_SCREEN:case C.RIGHT:case C.SHIFT:case C.UP:case C.WIN_KEY:case C.WIN_KEY_RIGHT:return!1;default:return!0}},isCharacterKey:function(ae){if(ae>=C.ZERO&&ae<=C.NINE||ae>=C.NUM_ZERO&&ae<=C.NUM_MULTIPLY||ae>=C.A&&ae<=C.Z||window.navigator.userAgent.indexOf("WebKit")!==-1&&ae===0)return!0;switch(ae){case C.SPACE:case C.QUESTION_MARK:case C.NUM_PLUS:case C.NUM_MINUS:case C.NUM_PERIOD:case C.NUM_DIVISION:case C.SEMICOLON:case C.DASH:case C.EQUALS:case C.COMMA:case C.PERIOD:case C.SLASH:case C.APOSTROPHE:case C.SINGLE_QUOTE:case C.OPEN_SQUARE_BRACKET:case C.BACKSLASH:case C.CLOSE_SQUARE_BRACKET:return!0;default:return!1}}},S=C,P=B(47655);function b(ne,ae,Be){var Me=h.useRef({});return(!("value"in Me.current)||Be(Me.current.condition,ae))&&(Me.current.value=ne(),Me.current.condition=ae),Me.current.value}function L(ne,ae){typeof ne=="function"?ne(ae):(0,E.Z)(ne)==="object"&&ne&&"current"in ne&&(ne.current=ae)}function R(){for(var ne=arguments.length,ae=new Array(ne),Be=0;Be<ne;Be++)ae[Be]=arguments[Be];var Me=ae.filter(function(Ye){return Ye});return Me.length<=1?Me[0]:function(Ye){ae.forEach(function(at){L(at,Ye)})}}function T(){for(var ne=arguments.length,ae=new Array(ne),Be=0;Be<ne;Be++)ae[Be]=arguments[Be];return b(function(){return R.apply(void 0,ae)},ae,function(Me,Ye){return Me.length===Ye.length&&Me.every(function(at,vt){return at===Ye[vt]})})}function N(ne){var ae,Be,Me=isMemo(ne)?ne.type.type:ne.type;return!(typeof Me=="function"&&!((ae=Me.prototype)!==null&&ae!==void 0&&ae.render)||typeof ne=="function"&&!((Be=ne.prototype)!==null&&Be!==void 0&&Be.render))}var I=function(ae){var Be=ae.className,Me=ae.customizeIcon,Ye=ae.customizeIconProps,at=ae.onMouseDown,vt=ae.onClick,Mt=ae.children,Ee;return typeof Me=="function"?Ee=Me(Ye):Ee=Me,h.createElement("span",{className:Be,onMouseDown:function(de){de.preventDefault(),at&&at(de)},style:{userSelect:"none",WebkitUserSelect:"none"},unselectable:"on",onClick:vt,"aria-hidden":!0},Ee!==void 0?Ee:h.createElement("span",{className:H()(Be.split(/\s+/).map(function(le){return"".concat(le,"-icon")}))},Mt))},F=I;function U(ne,ae,Be,Me,Ye){var at=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!1,vt=arguments.length>6?arguments[6]:void 0,Mt=arguments.length>7?arguments[7]:void 0,Ee=h.useMemo(function(){if((0,E.Z)(Me)==="object")return Me.clearIcon;if(Ye)return Ye},[Me,Ye]),le=h.useMemo(function(){return!!(!at&&Me&&(Be.length||vt)&&!(Mt==="combobox"&&vt===""))},[Me,at,Be.length,vt,Mt]);return{allowClear:le,clearIcon:h.createElement(F,{className:"".concat(ne,"-clear"),onMouseDown:ae,customizeIcon:Ee},"\xD7")}}var K=h.createContext(null);function G(){return h.useContext(K)}function V(){var ne=arguments.length>0&&arguments[0]!==void 0?arguments[0]:10,ae=h.useState(!1),Be=(0,v.Z)(ae,2),Me=Be[0],Ye=Be[1],at=h.useRef(null),vt=function(){window.clearTimeout(at.current)};h.useEffect(function(){return vt},[]);var Mt=function(le,de){vt(),at.current=window.setTimeout(function(){Ye(le),de&&de()},ne)};return[Me,Mt,vt]}function X(){var ne=arguments.length>0&&arguments[0]!==void 0?arguments[0]:250,ae=h.useRef(null),Be=h.useRef(null);h.useEffect(function(){return function(){window.clearTimeout(Be.current)}},[]);function Me(Ye){(Ye||ae.current===null)&&(ae.current=Ye),window.clearTimeout(Be.current),Be.current=window.setTimeout(function(){ae.current=null},ne)}return[function(){return ae.current},Me]}function ee(ne,ae,Be,Me){var Ye=h.useRef(null);Ye.current={open:ae,triggerOpen:Be,customizedTrigger:Me},h.useEffect(function(){function at(vt){var Mt;if(!((Mt=Ye.current)!==null&&Mt!==void 0&&Mt.customizedTrigger)){var Ee=vt.target;Ee.shadowRoot&&vt.composed&&(Ee=vt.composedPath()[0]||Ee),Ye.current.open&&ne().filter(function(le){return le}).every(function(le){return!le.contains(Ee)&&le!==Ee})&&Ye.current.triggerOpen(!1)}}return window.addEventListener("mousedown",at),function(){return window.removeEventListener("mousedown",at)}},[])}var oe=`accept acceptCharset accessKey action allowFullScreen allowTransparency
|
|
alt async autoComplete autoFocus autoPlay capture cellPadding cellSpacing challenge
|
|
charSet checked classID className colSpan cols content contentEditable contextMenu
|
|
controls coords crossOrigin data dateTime default defer dir disabled download draggable
|
|
encType form formAction formEncType formMethod formNoValidate formTarget frameBorder
|
|
headers height hidden high href hrefLang htmlFor httpEquiv icon id inputMode integrity
|
|
is keyParams keyType kind label lang list loop low manifest marginHeight marginWidth max maxLength media
|
|
mediaGroup method min minLength multiple muted name noValidate nonce open
|
|
optimum pattern placeholder poster preload radioGroup readOnly rel required
|
|
reversed role rowSpan rows sandbox scope scoped scrolling seamless selected
|
|
shape size sizes span spellCheck src srcDoc srcLang srcSet start step style
|
|
summary tabIndex target title type useMap value width wmode wrap`,ue=`onCopy onCut onPaste onCompositionEnd onCompositionStart onCompositionUpdate onKeyDown
|
|
onKeyPress onKeyUp onFocus onBlur onChange onInput onSubmit onClick onContextMenu onDoubleClick
|
|
onDrag onDragEnd onDragEnter onDragExit onDragLeave onDragOver onDragStart onDrop onMouseDown
|
|
onMouseEnter onMouseLeave onMouseMove onMouseOut onMouseOver onMouseUp onSelect onTouchCancel
|
|
onTouchEnd onTouchMove onTouchStart onScroll onWheel onAbort onCanPlay onCanPlayThrough
|
|
onDurationChange onEmptied onEncrypted onEnded onError onLoadedData onLoadedMetadata
|
|
onLoadStart onPause onPlay onPlaying onProgress onRateChange onSeeked onSeeking onStalled onSuspend onTimeUpdate onVolumeChange onWaiting onLoad onError`,Ae="".concat(oe," ").concat(ue).split(/[\s\n]+/),fe="aria-",he="data-";function ve(ne,ae){return ne.indexOf(ae)===0}function me(ne){var ae=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,Be;ae===!1?Be={aria:!0,data:!0,attr:!0}:ae===!0?Be={aria:!0}:Be=(0,y.Z)({},ae);var Me={};return Object.keys(ne).forEach(function(Ye){(Be.aria&&(Ye==="role"||ve(Ye,fe))||Be.data&&ve(Ye,he)||Be.attr&&Ae.includes(Ye))&&(Me[Ye]=ne[Ye])}),Me}var Te=B(48555),Ce=B(14075),ye=["prefixCls","invalidate","item","renderItem","responsive","responsiveDisabled","registerSize","itemKey","className","style","children","display","order","component"],q=void 0;function Q(ne,ae){var Be=ne.prefixCls,Me=ne.invalidate,Ye=ne.item,at=ne.renderItem,vt=ne.responsive,Mt=ne.responsiveDisabled,Ee=ne.registerSize,le=ne.itemKey,de=ne.className,be=ne.style,Qe=ne.children,Ge=ne.display,Ne=ne.order,mt=ne.component,Ct=mt===void 0?"div":mt,Pt=(0,m.Z)(ne,ye),pt=vt&&!Ge;function $e(Dt){Ee(le,Dt)}h.useEffect(function(){return function(){$e(null)}},[]);var Lt=at&&Ye!==q?at(Ye):Qe,Ht;Me||(Ht={opacity:pt?0:1,height:pt?0:q,overflowY:pt?"hidden":q,order:vt?Ne:q,pointerEvents:pt?"none":q,position:pt?"absolute":q});var It={};pt&&(It["aria-hidden"]=!0);var yt=h.createElement(Ct,(0,M.Z)({className:H()(!Me&&Be,de),style:(0,y.Z)((0,y.Z)({},Ht),be)},It,Pt,{ref:ae}),Lt);return vt&&(yt=h.createElement(Te.Z,{onResize:function(jt){var Ft=jt.offsetWidth;$e(Ft)},disabled:Mt},yt)),yt}var $=h.forwardRef(Q);$.displayName="Item";var j=$,re=B(77527),k=B(73935),te=B(96523);function ie(ne){if(typeof MessageChannel=="undefined")(0,te.Z)(ne);else{var ae=new MessageChannel;ae.port1.onmessage=function(){return ne()},ae.port2.postMessage(void 0)}}function J(){var ne=h.useRef(null),ae=function(Me){ne.current||(ne.current=[],ie(function(){(0,k.unstable_batchedUpdates)(function(){ne.current.forEach(function(Ye){Ye()}),ne.current=null})})),ne.current.push(Me)};return ae}function ce(ne,ae){var Be=h.useState(ae),Me=(0,v.Z)(Be,2),Ye=Me[0],at=Me[1],vt=(0,re.Z)(function(Mt){ne(function(){at(Mt)})});return[Ye,vt]}var Se=h.createContext(null),Le=["component"],ze=["className"],We=["className"],tt=function(ae,Be){var Me=h.useContext(Se);if(!Me){var Ye=ae.component,at=Ye===void 0?"div":Ye,vt=(0,m.Z)(ae,Le);return h.createElement(at,(0,M.Z)({},vt,{ref:Be}))}var Mt=Me.className,Ee=(0,m.Z)(Me,ze),le=ae.className,de=(0,m.Z)(ae,We);return h.createElement(Se.Provider,{value:null},h.createElement(j,(0,M.Z)({ref:Be,className:H()(Mt,le)},Ee,de)))},je=h.forwardRef(tt);je.displayName="RawItem";var pe=je,Oe=["prefixCls","data","renderItem","renderRawItem","itemKey","itemWidth","ssr","style","className","maxCount","renderRest","renderRawRest","suffix","component","itemComponent","onVisibleChange"],Ie="responsive",Pe="invalidate";function ot(ne){return"+ ".concat(ne.length," ...")}function ht(ne,ae){var Be=ne.prefixCls,Me=Be===void 0?"rc-overflow":Be,Ye=ne.data,at=Ye===void 0?[]:Ye,vt=ne.renderItem,Mt=ne.renderRawItem,Ee=ne.itemKey,le=ne.itemWidth,de=le===void 0?10:le,be=ne.ssr,Qe=ne.style,Ge=ne.className,Ne=ne.maxCount,mt=ne.renderRest,Ct=ne.renderRawRest,Pt=ne.suffix,pt=ne.component,$e=pt===void 0?"div":pt,Lt=ne.itemComponent,Ht=ne.onVisibleChange,It=(0,m.Z)(ne,Oe),yt=be==="full",Dt=J(),jt=ce(Dt,null),Ft=(0,v.Z)(jt,2),Zt=Ft[0],cr=Ft[1],dr=Zt||0,xr=ce(Dt,new Map),pr=(0,v.Z)(xr,2),Jt=pr[0],or=pr[1],sr=ce(Dt,0),ur=(0,v.Z)(sr,2),nn=ur[0],an=ur[1],qr=ce(Dt,0),Br=(0,v.Z)(qr,2),vr=Br[0],$r=Br[1],en=ce(Dt,0),lr=(0,v.Z)(en,2),Yt=lr[0],ir=lr[1],Tr=(0,h.useState)(null),Ar=(0,v.Z)(Tr,2),Cr=Ar[0],rr=Ar[1],zr=(0,h.useState)(null),kr=(0,v.Z)(zr,2),Vr=kr[0],Yr=kr[1],on=h.useMemo(function(){return Vr===null&&yt?Number.MAX_SAFE_INTEGER:Vr||0},[Vr,Zt]),mn=(0,h.useState)(!1),fn=(0,v.Z)(mn,2),Qr=fn[0],bn=fn[1],An="".concat(Me,"-item"),Cn=Math.max(nn,vr),hn=Ne===Ie,Jr=at.length&&hn,er=Ne===Pe,fr=Jr||typeof Ne=="number"&&at.length>Ne,Nr=(0,h.useMemo)(function(){var Er=at;return Jr?Zt===null&&yt?Er=at:Er=at.slice(0,Math.min(at.length,dr/de)):typeof Ne=="number"&&(Er=at.slice(0,Ne)),Er},[at,de,Zt,Ne,Jr]),tn=(0,h.useMemo)(function(){return Jr?at.slice(on+1):at.slice(Nr.length)},[at,Nr,Jr,on]),gn=(0,h.useCallback)(function(Er,Bt){var Qt;return typeof Ee=="function"?Ee(Er):(Qt=Ee&&(Er==null?void 0:Er[Ee]))!==null&&Qt!==void 0?Qt:Bt},[Ee]),Jn=(0,h.useCallback)(vt||function(Er){return Er},[vt]);function Gn(Er,Bt,Qt){Vr===Er&&(Bt===void 0||Bt===Cr)||(Yr(Er),Qt||(bn(Er<at.length-1),Ht==null||Ht(Er)),Bt!==void 0&&rr(Bt))}function fi(Er,Bt){cr(Bt.clientWidth)}function kn(Er,Bt){or(function(Qt){var qt=new Map(Qt);return Bt===null?qt.delete(Er):qt.set(Er,Bt),qt})}function Pn(Er,Bt){$r(Bt),an(vr)}function di(Er,Bt){ir(Bt)}function Tn(Er){return Jt.get(gn(Nr[Er],Er))}(0,Ce.Z)(function(){if(dr&&typeof Cn=="number"&&Nr){var Er=Yt,Bt=Nr.length,Qt=Bt-1;if(!Bt){Gn(0,null);return}for(var qt=0;qt<Bt;qt+=1){var nr=Tn(qt);if(yt&&(nr=nr||0),nr===void 0){Gn(qt-1,void 0,!0);break}if(Er+=nr,Qt===0&&Er<=dr||qt===Qt-1&&Er+Tn(Qt)<=dr){Gn(Qt,null);break}else if(Er+Cn>dr){Gn(qt-1,Er-nr-Yt+vr);break}}Pt&&Tn(0)+Yt>dr&&rr(null)}},[dr,Jt,vr,Yt,gn,Nr]);var Fn=Qr&&!!tn.length,ai={};Cr!==null&&Jr&&(ai={position:"absolute",left:Cr,top:0});var Wn={prefixCls:An,responsive:Jr,component:Lt,invalidate:er},oi=Mt?function(Er,Bt){var Qt=gn(Er,Bt);return h.createElement(Se.Provider,{key:Qt,value:(0,y.Z)((0,y.Z)({},Wn),{},{order:Bt,item:Er,itemKey:Qt,registerSize:kn,display:Bt<=on})},Mt(Er,Bt))}:function(Er,Bt){var Qt=gn(Er,Bt);return h.createElement(j,(0,M.Z)({},Wn,{order:Bt,key:Qt,item:Er,renderItem:Jn,itemKey:Qt,registerSize:kn,display:Bt<=on}))},qn,pi={order:Fn?on:Number.MAX_SAFE_INTEGER,className:"".concat(An,"-rest"),registerSize:Pn,display:Fn};if(Ct)Ct&&(qn=h.createElement(Se.Provider,{value:(0,y.Z)((0,y.Z)({},Wn),pi)},Ct(tn)));else{var si=mt||ot;qn=h.createElement(j,(0,M.Z)({},Wn,pi),typeof si=="function"?si(tn):si)}var li=h.createElement($e,(0,M.Z)({className:H()(!er&&Me,Ge),style:Qe,ref:ae},It),Nr.map(oi),fr?qn:null,Pt&&h.createElement(j,(0,M.Z)({},Wn,{responsive:hn,responsiveDisabled:!Jr,order:on,className:"".concat(An,"-suffix"),registerSize:di,display:!0,style:ai}),Pt));return hn&&(li=h.createElement(Te.Z,{onResize:fi,disabled:!Jr},li)),li}var dt=h.forwardRef(ht);dt.displayName="Overflow",dt.Item=pe,dt.RESPONSIVE=Ie,dt.INVALIDATE=Pe;var At=dt,Ot=At,Ke=function(ae,Be){var Me,Ye,at=ae.prefixCls,vt=ae.id,Mt=ae.inputElement,Ee=ae.disabled,le=ae.tabIndex,de=ae.autoFocus,be=ae.autoComplete,Qe=ae.editable,Ge=ae.activeDescendantId,Ne=ae.value,mt=ae.maxLength,Ct=ae.onKeyDown,Pt=ae.onMouseDown,pt=ae.onChange,$e=ae.onPaste,Lt=ae.onCompositionStart,Ht=ae.onCompositionEnd,It=ae.open,yt=ae.attrs,Dt=Mt||h.createElement("input",null),jt=Dt,Ft=jt.ref,Zt=jt.props,cr=Zt.onKeyDown,dr=Zt.onChange,xr=Zt.onMouseDown,pr=Zt.onCompositionStart,Jt=Zt.onCompositionEnd,or=Zt.style;return"maxLength"in Dt.props,Dt=h.cloneElement(Dt,(0,y.Z)((0,y.Z)((0,y.Z)({type:"search"},Zt),{},{id:vt,ref:R(Be,Ft),disabled:Ee,tabIndex:le,autoComplete:be||"off",autoFocus:de,className:H()("".concat(at,"-selection-search-input"),(Me=Dt)===null||Me===void 0||(Ye=Me.props)===null||Ye===void 0?void 0:Ye.className),role:"combobox","aria-label":"Search","aria-expanded":It||!1,"aria-haspopup":"listbox","aria-owns":"".concat(vt,"_list"),"aria-autocomplete":"list","aria-controls":"".concat(vt,"_list"),"aria-activedescendant":It?Ge:void 0},yt),{},{value:Qe?Ne:"",maxLength:mt,readOnly:!Qe,unselectable:Qe?null:"on",style:(0,y.Z)((0,y.Z)({},or),{},{opacity:Qe?null:0}),onKeyDown:function(ur){Ct(ur),cr&&cr(ur)},onMouseDown:function(ur){Pt(ur),xr&&xr(ur)},onChange:function(ur){pt(ur),dr&&dr(ur)},onCompositionStart:function(ur){Lt(ur),pr&&pr(ur)},onCompositionEnd:function(ur){Ht(ur),Jt&&Jt(ur)},onPaste:$e})),Dt},Xe=h.forwardRef(Ke);Xe.displayName="Input";var Je=Xe;function Nt(ne){return Array.isArray(ne)?ne:ne!==void 0?[ne]:[]}var ut=typeof window!="undefined"&&window.document&&window.document.documentElement,Kt=ut;function _t(ne){return ne!=null}function ge(ne){return!ne&&ne!==0}function we(ne){return["string","number"].includes((0,E.Z)(ne))}function Ue(ne){var ae=void 0;return ne&&(we(ne.title)?ae=ne.title.toString():we(ne.label)&&(ae=ne.label.toString())),ae}function De(ne,ae){Kt?h.useLayoutEffect(ne,ae):h.useEffect(ne,ae)}function nt(ne){var ae;return(ae=ne.key)!==null&&ae!==void 0?ae:ne.value}var qe=function(ae){ae.preventDefault(),ae.stopPropagation()},rt=function(ae){var Be=ae.id,Me=ae.prefixCls,Ye=ae.values,at=ae.open,vt=ae.searchValue,Mt=ae.autoClearSearchValue,Ee=ae.inputRef,le=ae.placeholder,de=ae.disabled,be=ae.mode,Qe=ae.showSearch,Ge=ae.autoFocus,Ne=ae.autoComplete,mt=ae.activeDescendantId,Ct=ae.tabIndex,Pt=ae.removeIcon,pt=ae.maxTagCount,$e=ae.maxTagTextLength,Lt=ae.maxTagPlaceholder,Ht=Lt===void 0?function(rr){return"+ ".concat(rr.length," ...")}:Lt,It=ae.tagRender,yt=ae.onToggleOpen,Dt=ae.onRemove,jt=ae.onInputChange,Ft=ae.onInputPaste,Zt=ae.onInputKeyDown,cr=ae.onInputMouseDown,dr=ae.onInputCompositionStart,xr=ae.onInputCompositionEnd,pr=h.useRef(null),Jt=(0,h.useState)(0),or=(0,v.Z)(Jt,2),sr=or[0],ur=or[1],nn=(0,h.useState)(!1),an=(0,v.Z)(nn,2),qr=an[0],Br=an[1],vr="".concat(Me,"-selection"),$r=at||be==="multiple"&&Mt===!1||be==="tags"?vt:"",en=be==="tags"||be==="multiple"&&Mt===!1||Qe&&(at||qr);De(function(){ur(pr.current.scrollWidth)},[$r]);function lr(rr,zr,kr,Vr,Yr){return h.createElement("span",{className:H()("".concat(vr,"-item"),(0,D.Z)({},"".concat(vr,"-item-disabled"),kr)),title:Ue(rr)},h.createElement("span",{className:"".concat(vr,"-item-content")},zr),Vr&&h.createElement(F,{className:"".concat(vr,"-item-remove"),onMouseDown:qe,onClick:Yr,customizeIcon:Pt},"\xD7"))}function Yt(rr,zr,kr,Vr,Yr){var on=function(fn){qe(fn),yt(!at)};return h.createElement("span",{onMouseDown:on},It({label:zr,value:rr,disabled:kr,closable:Vr,onClose:Yr}))}function ir(rr){var zr=rr.disabled,kr=rr.label,Vr=rr.value,Yr=!de&&!zr,on=kr;if(typeof $e=="number"&&(typeof kr=="string"||typeof kr=="number")){var mn=String(on);mn.length>$e&&(on="".concat(mn.slice(0,$e),"..."))}var fn=function(bn){bn&&bn.stopPropagation(),Dt(rr)};return typeof It=="function"?Yt(Vr,on,zr,Yr,fn):lr(rr,on,zr,Yr,fn)}function Tr(rr){var zr=typeof Ht=="function"?Ht(rr):Ht;return lr({title:zr},zr,!1)}var Ar=h.createElement("div",{className:"".concat(vr,"-search"),style:{width:sr},onFocus:function(){Br(!0)},onBlur:function(){Br(!1)}},h.createElement(Je,{ref:Ee,open:at,prefixCls:Me,id:Be,inputElement:null,disabled:de,autoFocus:Ge,autoComplete:Ne,editable:en,activeDescendantId:mt,value:$r,onKeyDown:Zt,onMouseDown:cr,onChange:jt,onPaste:Ft,onCompositionStart:dr,onCompositionEnd:xr,tabIndex:Ct,attrs:me(ae,!0)}),h.createElement("span",{ref:pr,className:"".concat(vr,"-search-mirror"),"aria-hidden":!0},$r,"\xA0")),Cr=h.createElement(Ot,{prefixCls:"".concat(vr,"-overflow"),data:Ye,renderItem:ir,renderRest:Tr,suffix:Ar,itemKey:nt,maxCount:pt});return h.createElement(h.Fragment,null,Cr,!Ye.length&&!$r&&h.createElement("span",{className:"".concat(vr,"-placeholder")},le))},ft=rt,Tt=function(ae){var Be=ae.inputElement,Me=ae.prefixCls,Ye=ae.id,at=ae.inputRef,vt=ae.disabled,Mt=ae.autoFocus,Ee=ae.autoComplete,le=ae.activeDescendantId,de=ae.mode,be=ae.open,Qe=ae.values,Ge=ae.placeholder,Ne=ae.tabIndex,mt=ae.showSearch,Ct=ae.searchValue,Pt=ae.activeValue,pt=ae.maxLength,$e=ae.onInputKeyDown,Lt=ae.onInputMouseDown,Ht=ae.onInputChange,It=ae.onInputPaste,yt=ae.onInputCompositionStart,Dt=ae.onInputCompositionEnd,jt=ae.title,Ft=h.useState(!1),Zt=(0,v.Z)(Ft,2),cr=Zt[0],dr=Zt[1],xr=de==="combobox",pr=xr||mt,Jt=Qe[0],or=Ct||"";xr&&Pt&&!cr&&(or=Pt),h.useEffect(function(){xr&&dr(!1)},[xr,Pt]);var sr=de!=="combobox"&&!be&&!mt?!1:!!or,ur=jt===void 0?Ue(Jt):jt,nn=function(){if(Jt)return null;var qr=sr?{visibility:"hidden"}:void 0;return h.createElement("span",{className:"".concat(Me,"-selection-placeholder"),style:qr},Ge)};return h.createElement(h.Fragment,null,h.createElement("span",{className:"".concat(Me,"-selection-search")},h.createElement(Je,{ref:at,prefixCls:Me,id:Ye,open:be,inputElement:Be,disabled:vt,autoFocus:Mt,autoComplete:Ee,editable:pr,activeDescendantId:le,value:or,onKeyDown:$e,onMouseDown:Lt,onChange:function(qr){dr(!0),Ht(qr)},onPaste:It,onCompositionStart:yt,onCompositionEnd:Dt,tabIndex:Ne,attrs:me(ae,!0),maxLength:xr?pt:void 0})),!xr&&Jt?h.createElement("span",{className:"".concat(Me,"-selection-item"),title:ur,style:sr?{visibility:"hidden"}:void 0},Jt.label):null,nn())},Ze=Tt;function O(ne){return![S.ESC,S.SHIFT,S.BACKSPACE,S.TAB,S.WIN_KEY,S.ALT,S.META,S.WIN_KEY_RIGHT,S.CTRL,S.SEMICOLON,S.EQUALS,S.CAPS_LOCK,S.CONTEXT_MENU,S.F1,S.F2,S.F3,S.F4,S.F5,S.F6,S.F7,S.F8,S.F9,S.F10,S.F11,S.F12].includes(ne)}var W=function(ae,Be){var Me=(0,h.useRef)(null),Ye=(0,h.useRef)(!1),at=ae.prefixCls,vt=ae.open,Mt=ae.mode,Ee=ae.showSearch,le=ae.tokenWithEnter,de=ae.autoClearSearchValue,be=ae.onSearch,Qe=ae.onSearchSubmit,Ge=ae.onToggleOpen,Ne=ae.onInputKeyDown,mt=ae.domRef;h.useImperativeHandle(Be,function(){return{focus:function(){Me.current.focus()},blur:function(){Me.current.blur()}}});var Ct=X(0),Pt=(0,v.Z)(Ct,2),pt=Pt[0],$e=Pt[1],Lt=function(or){var sr=or.which;(sr===S.UP||sr===S.DOWN)&&or.preventDefault(),Ne&&Ne(or),sr===S.ENTER&&Mt==="tags"&&!Ye.current&&!vt&&(Qe==null||Qe(or.target.value)),O(sr)&&Ge(!0)},Ht=function(){$e(!0)},It=(0,h.useRef)(null),yt=function(or){be(or,!0,Ye.current)!==!1&&Ge(!0)},Dt=function(){Ye.current=!0},jt=function(or){Ye.current=!1,Mt!=="combobox"&&yt(or.target.value)},Ft=function(or){var sr=or.target.value;if(le&&It.current&&/[\r\n]/.test(It.current)){var ur=It.current.replace(/[\r\n]+$/,"").replace(/\r\n/g," ").replace(/[\r\n]/g," ");sr=sr.replace(ur,It.current)}It.current=null,yt(sr)},Zt=function(or){var sr=or.clipboardData,ur=sr.getData("text");It.current=ur},cr=function(or){var sr=or.target;if(sr!==Me.current){var ur=document.body.style.msTouchAction!==void 0;ur?setTimeout(function(){Me.current.focus()}):Me.current.focus()}},dr=function(or){var sr=pt();or.target!==Me.current&&!sr&&Mt!=="combobox"&&or.preventDefault(),(Mt!=="combobox"&&(!Ee||!sr)||!vt)&&(vt&&de!==!1&&be("",!0,!1),Ge())},xr={inputRef:Me,onInputKeyDown:Lt,onInputMouseDown:Ht,onInputChange:Ft,onInputPaste:Zt,onInputCompositionStart:Dt,onInputCompositionEnd:jt},pr=Mt==="multiple"||Mt==="tags"?h.createElement(ft,(0,M.Z)({},ae,xr)):h.createElement(Ze,(0,M.Z)({},ae,xr));return h.createElement("div",{ref:mt,className:"".concat(at,"-selector"),onClick:cr,onMouseDown:dr},pr)},z=h.forwardRef(W);z.displayName="Selector";var Z=z,Y=B(62709),se=["prefixCls","disabled","visible","children","popupElement","animation","transitionName","dropdownStyle","dropdownClassName","direction","placement","builtinPlacements","dropdownMatchSelectWidth","dropdownRender","dropdownAlign","getPopupContainer","empty","getTriggerDOMNode","onPopupVisibleChange","onPopupMouseEnter"],xe=function(ae){var Be=ae===!0?0:1;return{bottomLeft:{points:["tl","bl"],offset:[0,4],overflow:{adjustX:Be,adjustY:1},htmlRegion:"scroll"},bottomRight:{points:["tr","br"],offset:[0,4],overflow:{adjustX:Be,adjustY:1},htmlRegion:"scroll"},topLeft:{points:["bl","tl"],offset:[0,-4],overflow:{adjustX:Be,adjustY:1},htmlRegion:"scroll"},topRight:{points:["br","tr"],offset:[0,-4],overflow:{adjustX:Be,adjustY:1},htmlRegion:"scroll"}}},lt=function(ae,Be){var Me=ae.prefixCls,Ye=ae.disabled,at=ae.visible,vt=ae.children,Mt=ae.popupElement,Ee=ae.animation,le=ae.transitionName,de=ae.dropdownStyle,be=ae.dropdownClassName,Qe=ae.direction,Ge=Qe===void 0?"ltr":Qe,Ne=ae.placement,mt=ae.builtinPlacements,Ct=ae.dropdownMatchSelectWidth,Pt=ae.dropdownRender,pt=ae.dropdownAlign,$e=ae.getPopupContainer,Lt=ae.empty,Ht=ae.getTriggerDOMNode,It=ae.onPopupVisibleChange,yt=ae.onPopupMouseEnter,Dt=(0,m.Z)(ae,se),jt="".concat(Me,"-dropdown"),Ft=Mt;Pt&&(Ft=Pt(Mt));var Zt=h.useMemo(function(){return mt||xe(Ct)},[mt,Ct]),cr=Ee?"".concat(jt,"-").concat(Ee):le,dr=typeof Ct=="number",xr=h.useMemo(function(){return dr?null:Ct===!1?"minWidth":"width"},[Ct,dr]),pr=de;dr&&(pr=(0,y.Z)((0,y.Z)({},pr),{},{width:Ct}));var Jt=h.useRef(null);return h.useImperativeHandle(Be,function(){return{getPopupElement:function(){return Jt.current}}}),h.createElement(Y.Z,(0,M.Z)({},Dt,{showAction:It?["click"]:[],hideAction:It?["click"]:[],popupPlacement:Ne||(Ge==="rtl"?"bottomRight":"bottomLeft"),builtinPlacements:Zt,prefixCls:jt,popupTransitionName:cr,popup:h.createElement("div",{ref:Jt,onMouseEnter:yt},Ft),stretch:xr,popupAlign:pt,popupVisible:at,getPopupContainer:$e,popupClassName:H()(be,(0,D.Z)({},"".concat(jt,"-empty"),Lt)),popupStyle:pr,getTriggerDOMNode:Ht,onPopupVisibleChange:It}),vt)},Ve=h.forwardRef(lt);Ve.displayName="SelectTrigger";var Rt=Ve,kt=B(84506);function Ut(ne,ae){var Be=ne.key,Me;return"value"in ne&&(Me=ne.value),Be!=null?Be:Me!==void 0?Me:"rc-index-key-".concat(ae)}function st(ne,ae){var Be=ne||{},Me=Be.label,Ye=Be.value,at=Be.options,vt=Be.groupLabel,Mt=Me||(ae?"children":"label");return{label:Mt,value:Ye||"value",options:at||"options",groupLabel:vt||Mt}}function bt(ne){var ae=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Be=ae.fieldNames,Me=ae.childrenAsData,Ye=[],at=st(Be,!1),vt=at.label,Mt=at.value,Ee=at.options,le=at.groupLabel;function de(be,Qe){be.forEach(function(Ge){if(Qe||!(Ee in Ge)){var Ne=Ge[Mt];Ye.push({key:Ut(Ge,Ye.length),groupOption:Qe,data:Ge,label:Ge[vt],value:Ne})}else{var mt=Ge[le];mt===void 0&&Me&&(mt=Ge.label),Ye.push({key:Ut(Ge,Ye.length),group:!0,data:Ge,label:mt}),de(Ge[Ee],!0)}})}return de(ne,!1),Ye}function wt(ne){var ae=(0,y.Z)({},ne);return"props"in ae||Object.defineProperty(ae,"props",{get:function(){return A(!1,"Return type is option instead of Option instance. Please read value directly instead of reading from `props`."),ae}}),ae}function gt(ne,ae){if(!ae||!ae.length)return null;var Be=!1;function Me(at,vt){var Mt=(0,kt.Z)(vt),Ee=Mt[0],le=Mt.slice(1);if(!Ee)return[at];var de=at.split(Ee);return Be=Be||de.length>1,de.reduce(function(be,Qe){return[].concat((0,g.Z)(be),(0,g.Z)(Me(Qe,le)))},[]).filter(function(be){return be})}var Ye=Me(ne,ae);return Be?Ye:null}var xt=["id","prefixCls","className","showSearch","tagRender","direction","omitDomProps","displayValues","onDisplayValuesChange","emptyOptions","notFoundContent","onClear","mode","disabled","loading","getInputElement","getRawInputElement","open","defaultOpen","onDropdownVisibleChange","activeValue","onActiveValueChange","activeDescendantId","searchValue","autoClearSearchValue","onSearch","onSearchSplit","tokenSeparators","allowClear","suffixIcon","clearIcon","OptionList","animation","transitionName","dropdownStyle","dropdownClassName","dropdownMatchSelectWidth","dropdownRender","dropdownAlign","placement","builtinPlacements","getPopupContainer","showAction","onFocus","onBlur","onKeyUp","onKeyDown","onMouseDown"],Gt=["value","onChange","removeIcon","placeholder","autoFocus","maxTagCount","maxTagTextLength","maxTagPlaceholder","choiceTransitionName","onInputKeyDown","onPopupScroll","tabIndex"];function Vt(ne){return ne==="tags"||ne==="multiple"}var Xt=h.forwardRef(function(ne,ae){var Be,Me,Ye=ne.id,at=ne.prefixCls,vt=ne.className,Mt=ne.showSearch,Ee=ne.tagRender,le=ne.direction,de=ne.omitDomProps,be=ne.displayValues,Qe=ne.onDisplayValuesChange,Ge=ne.emptyOptions,Ne=ne.notFoundContent,mt=Ne===void 0?"Not Found":Ne,Ct=ne.onClear,Pt=ne.mode,pt=ne.disabled,$e=ne.loading,Lt=ne.getInputElement,Ht=ne.getRawInputElement,It=ne.open,yt=ne.defaultOpen,Dt=ne.onDropdownVisibleChange,jt=ne.activeValue,Ft=ne.onActiveValueChange,Zt=ne.activeDescendantId,cr=ne.searchValue,dr=ne.autoClearSearchValue,xr=ne.onSearch,pr=ne.onSearchSplit,Jt=ne.tokenSeparators,or=ne.allowClear,sr=ne.suffixIcon,ur=ne.clearIcon,nn=ne.OptionList,an=ne.animation,qr=ne.transitionName,Br=ne.dropdownStyle,vr=ne.dropdownClassName,$r=ne.dropdownMatchSelectWidth,en=ne.dropdownRender,lr=ne.dropdownAlign,Yt=ne.placement,ir=ne.builtinPlacements,Tr=ne.getPopupContainer,Ar=ne.showAction,Cr=Ar===void 0?[]:Ar,rr=ne.onFocus,zr=ne.onBlur,kr=ne.onKeyUp,Vr=ne.onKeyDown,Yr=ne.onMouseDown,on=(0,m.Z)(ne,xt),mn=Vt(Pt),fn=(Mt!==void 0?Mt:mn)||Pt==="combobox",Qr=(0,y.Z)({},on);Gt.forEach(function(jr){delete Qr[jr]}),de==null||de.forEach(function(jr){delete Qr[jr]});var bn=h.useState(!1),An=(0,v.Z)(bn,2),Cn=An[0],hn=An[1];h.useEffect(function(){hn(x())},[]);var Jr=h.useRef(null),er=h.useRef(null),fr=h.useRef(null),Nr=h.useRef(null),tn=h.useRef(null),gn=V(),Jn=(0,v.Z)(gn,3),Gn=Jn[0],fi=Jn[1],kn=Jn[2];h.useImperativeHandle(ae,function(){var jr,Or;return{focus:(jr=Nr.current)===null||jr===void 0?void 0:jr.focus,blur:(Or=Nr.current)===null||Or===void 0?void 0:Or.blur,scrollTo:function(Hn){var Sn;return(Sn=tn.current)===null||Sn===void 0?void 0:Sn.scrollTo(Hn)}}});var Pn=h.useMemo(function(){var jr;if(Pt!=="combobox")return cr;var Or=(jr=be[0])===null||jr===void 0?void 0:jr.value;return typeof Or=="string"||typeof Or=="number"?String(Or):""},[cr,Pt,be]),di=Pt==="combobox"&&typeof Lt=="function"&&Lt()||null,Tn=typeof Ht=="function"&&Ht(),Fn=T(er,Tn==null||(Be=Tn.props)===null||Be===void 0?void 0:Be.ref),ai=h.useState(!1),Wn=(0,v.Z)(ai,2),oi=Wn[0],qn=Wn[1];r(function(){qn(!0)},[]);var pi=s(!1,{defaultValue:yt,value:It}),si=(0,v.Z)(pi,2),li=si[0],Er=si[1],Bt=oi?li:!1,Qt=!mt&&Ge;(pt||Qt&&Bt&&Pt==="combobox")&&(Bt=!1);var qt=Qt?!1:Bt,nr=h.useCallback(function(jr){var Or=jr!==void 0?jr:!Bt;pt||(Er(Or),Bt!==Or&&(Dt==null||Dt(Or)))},[pt,Bt,Er,Dt]),sn=h.useMemo(function(){return(Jt||[]).some(function(jr){return[`
|
|
`,`\r
|
|
`].includes(jr)})},[Jt]),dn=function(Or,Bn,Hn){var Sn=!0,Vn=Or;Ft==null||Ft(null);var ri=Hn?null:gt(Or,Jt);return Pt!=="combobox"&&ri&&(Vn="",pr==null||pr(ri),nr(!1),Sn=!1),xr&&Pn!==Vn&&xr(Vn,{source:Bn?"typing":"effect"}),Sn},$n=function(Or){!Or||!Or.trim()||xr(Or,{source:"submit"})};h.useEffect(function(){!Bt&&!mn&&Pt!=="combobox"&&dn("",!1,!1)},[Bt]),h.useEffect(function(){li&&pt&&Er(!1),pt&&fi(!1)},[pt]);var Xn=X(),ei=(0,v.Z)(Xn,2),yn=ei[0],ui=ei[1],Ai=function(Or){var Bn=yn(),Hn=Or.which;if(Hn===S.ENTER&&(Pt!=="combobox"&&Or.preventDefault(),Bt||nr(!0)),ui(!!Pn),Hn===S.BACKSPACE&&!Bn&&mn&&!Pn&&be.length){for(var Sn=(0,g.Z)(be),Vn=null,ri=Sn.length-1;ri>=0;ri-=1){var bi=Sn[ri];if(!bi.disabled){Sn.splice(ri,1),Vn=bi;break}}Vn&&Qe(Sn,{type:"remove",values:[Vn]})}for(var yi=arguments.length,Ci=new Array(yi>1?yi-1:0),xi=1;xi<yi;xi++)Ci[xi-1]=arguments[xi];if(Bt&&tn.current){var Ii;(Ii=tn.current).onKeyDown.apply(Ii,[Or].concat(Ci))}Vr==null||Vr.apply(void 0,[Or].concat(Ci))},Si=function(Or){for(var Bn=arguments.length,Hn=new Array(Bn>1?Bn-1:0),Sn=1;Sn<Bn;Sn++)Hn[Sn-1]=arguments[Sn];if(Bt&&tn.current){var Vn;(Vn=tn.current).onKeyUp.apply(Vn,[Or].concat(Hn))}kr==null||kr.apply(void 0,[Or].concat(Hn))},Di=function(Or){var Bn=be.filter(function(Hn){return Hn!==Or});Qe(Bn,{type:"remove",values:[Or]})},hi=h.useRef(!1),ti=function(){fi(!0),pt||(rr&&!hi.current&&rr.apply(void 0,arguments),Cr.includes("focus")&&nr(!0)),hi.current=!0},Oi=function(){fi(!1,function(){hi.current=!1,nr(!1)}),!pt&&(Pn&&(Pt==="tags"?xr(Pn,{source:"submit"}):Pt==="multiple"&&xr("",{source:"blur"})),zr&&zr.apply(void 0,arguments))},_i=[];h.useEffect(function(){return function(){_i.forEach(function(jr){return clearTimeout(jr)}),_i.splice(0,_i.length)}},[]);var Mi=function(Or){var Bn,Hn=Or.target,Sn=(Bn=fr.current)===null||Bn===void 0?void 0:Bn.getPopupElement();if(Sn&&Sn.contains(Hn)){var Vn=setTimeout(function(){var Ci=_i.indexOf(Vn);if(Ci!==-1&&_i.splice(Ci,1),kn(),!Cn&&!Sn.contains(document.activeElement)){var xi;(xi=Nr.current)===null||xi===void 0||xi.focus()}});_i.push(Vn)}for(var ri=arguments.length,bi=new Array(ri>1?ri-1:0),yi=1;yi<ri;yi++)bi[yi-1]=arguments[yi];Yr==null||Yr.apply(void 0,[Or].concat(bi))},pn=h.useState({}),ln=(0,v.Z)(pn,2),vn=ln[1];function In(){vn({})}var Ln;Tn&&(Ln=function(Or){nr(Or)}),ee(function(){var jr;return[Jr.current,(jr=fr.current)===null||jr===void 0?void 0:jr.getPopupElement()]},qt,nr,!!Tn);var vi=h.useMemo(function(){return(0,y.Z)((0,y.Z)({},ne),{},{notFoundContent:mt,open:Bt,triggerOpen:qt,id:Ye,showSearch:fn,multiple:mn,toggleOpen:nr})},[ne,mt,qt,Bt,Ye,fn,mn,nr]),Ei=!!sr||$e,Ti;Ei&&(Ti=h.createElement(F,{className:H()("".concat(at,"-arrow"),(0,D.Z)({},"".concat(at,"-arrow-loading"),$e)),customizeIcon:sr,customizeIconProps:{loading:$e,searchValue:Pn,open:Bt,focused:Gn,showSearch:fn}}));var Li=function(){var Or;Ct==null||Ct(),(Or=Nr.current)===null||Or===void 0||Or.focus(),Qe([],{type:"clear",values:be}),dn("",!1,!1)},wi=U(at,Li,be,or,ur,pt,Pn,Pt),Bi=wi.allowClear,Ni=wi.clearIcon,Ui=h.createElement(nn,{ref:tn}),Fi=H()(at,vt,(Me={},(0,D.Z)(Me,"".concat(at,"-focused"),Gn),(0,D.Z)(Me,"".concat(at,"-multiple"),mn),(0,D.Z)(Me,"".concat(at,"-single"),!mn),(0,D.Z)(Me,"".concat(at,"-allow-clear"),or),(0,D.Z)(Me,"".concat(at,"-show-arrow"),Ei),(0,D.Z)(Me,"".concat(at,"-disabled"),pt),(0,D.Z)(Me,"".concat(at,"-loading"),$e),(0,D.Z)(Me,"".concat(at,"-open"),Bt),(0,D.Z)(Me,"".concat(at,"-customize-input"),di),(0,D.Z)(Me,"".concat(at,"-show-search"),fn),Me)),Ri=h.createElement(Rt,{ref:fr,disabled:pt,prefixCls:at,visible:qt,popupElement:Ui,animation:an,transitionName:qr,dropdownStyle:Br,dropdownClassName:vr,direction:le,dropdownMatchSelectWidth:$r,dropdownRender:en,dropdownAlign:lr,placement:Yt,builtinPlacements:ir,getPopupContainer:Tr,empty:Ge,getTriggerDOMNode:function(){return er.current},onPopupVisibleChange:Ln,onPopupMouseEnter:In},Tn?h.cloneElement(Tn,{ref:Fn}):h.createElement(Z,(0,M.Z)({},ne,{domRef:er,prefixCls:at,inputElement:di,ref:Nr,id:Ye,showSearch:fn,autoClearSearchValue:dr,mode:Pt,activeDescendantId:Zt,tagRender:Ee,values:be,open:Bt,onToggleOpen:nr,activeValue:jt,searchValue:Pn,onSearch:dn,onSearchSubmit:$n,onRemove:Di,tokenWithEnter:sn}))),Pi;return Tn?Pi=Ri:Pi=h.createElement("div",(0,M.Z)({className:Fi},Qr,{ref:Jr,onMouseDown:Mi,onKeyDown:Ai,onKeyUp:Si,onFocus:ti,onBlur:Oi}),Gn&&!Bt&&h.createElement("span",{style:{width:0,height:0,position:"absolute",overflow:"hidden",opacity:0},"aria-live":"polite"},"".concat(be.map(function(jr){var Or=jr.label,Bn=jr.value;return["number","string"].includes((0,E.Z)(Or))?Or:Bn}).join(", "))),Ri,Ti,Bi&&Ni),h.createElement(K.Provider,{value:vi},Pi)}),hr=Xt,Pr=function(ne,ae){var Be=h.useRef({values:new Map,options:new Map}),Me=h.useMemo(function(){var at=Be.current,vt=at.values,Mt=at.options,Ee=ne.map(function(be){if(be.label===void 0){var Qe;return(0,y.Z)((0,y.Z)({},be),{},{label:(Qe=vt.get(be.value))===null||Qe===void 0?void 0:Qe.label})}return be}),le=new Map,de=new Map;return Ee.forEach(function(be){le.set(be.value,be),de.set(be.value,ae.get(be.value)||Mt.get(be.value))}),Be.current.values=le,Be.current.options=de,Ee},[ne,ae]),Ye=h.useCallback(function(at){return ae.get(at)||Be.current.options.get(at)},[ae]);return[Me,Ye]};function Wt(ne,ae){return Nt(ne).join("").toUpperCase().includes(ae)}var mr=function(ne,ae,Be,Me,Ye){return h.useMemo(function(){if(!Be||Me===!1)return ne;var at=ae.options,vt=ae.label,Mt=ae.value,Ee=[],le=typeof Me=="function",de=Be.toUpperCase(),be=le?Me:function(Ge,Ne){return Ye?Wt(Ne[Ye],de):Ne[at]?Wt(Ne[vt!=="children"?vt:"label"],de):Wt(Ne[Mt],de)},Qe=le?function(Ge){return wt(Ge)}:function(Ge){return Ge};return ne.forEach(function(Ge){if(Ge[at]){var Ne=be(Be,Qe(Ge));if(Ne)Ee.push(Ge);else{var mt=Ge[at].filter(function(Ct){return be(Be,Qe(Ct))});mt.length&&Ee.push((0,y.Z)((0,y.Z)({},Ge),{},(0,D.Z)({},at,mt)))}return}be(Be,Qe(Ge))&&Ee.push(Ge)}),Ee},[ne,Me,Ye,Be,ae])},_r=0,wr=d();function Rr(){var ne;return wr?(ne=_r,_r+=1):ne="TEST_OR_SSR",ne}function un(ne){var ae=h.useState(),Be=(0,v.Z)(ae,2),Me=Be[0],Ye=Be[1];return h.useEffect(function(){Ye("rc_select_".concat(Rr()))},[]),ne||Me}function zt(ne){var ae=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Be=[];return h.Children.forEach(ne,function(Me){Me==null&&!ae.keepEmpty||(Array.isArray(Me)?Be=Be.concat(zt(Me)):(0,P.isFragment)(Me)&&Me.props?Be=Be.concat(zt(Me.props.children,ae)):Be.push(Me))}),Be}var Zr=["children","value"],_n=["children"];function Mr(ne){var ae=ne,Be=ae.key,Me=ae.props,Ye=Me.children,at=Me.value,vt=(0,m.Z)(Me,Zr);return(0,y.Z)({key:Be,value:at!==void 0?at:Be,children:Ye},vt)}function En(ne){var ae=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return zt(ne).map(function(Be,Me){if(!h.isValidElement(Be)||!Be.type)return null;var Ye=Be,at=Ye.type.isSelectOptGroup,vt=Ye.key,Mt=Ye.props,Ee=Mt.children,le=(0,m.Z)(Mt,_n);return ae||!at?Mr(Be):(0,y.Z)((0,y.Z)({key:"__RC_SELECT_GRP__".concat(vt===null?Me:vt,"__"),label:vt},le),{},{options:En(Ee)})}).filter(function(Be){return Be})}function xn(ne,ae,Be,Me,Ye){return h.useMemo(function(){var at=ne,vt=!ne;vt&&(at=En(ae));var Mt=new Map,Ee=new Map,le=function(Qe,Ge,Ne){Ne&&typeof Ne=="string"&&Qe.set(Ge[Ne],Ge)};function de(be){for(var Qe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,Ge=0;Ge<be.length;Ge+=1){var Ne=be[Ge];!Ne[Be.options]||Qe?(Mt.set(Ne[Be.value],Ne),le(Ee,Ne,Be.label),le(Ee,Ne,Me),le(Ee,Ne,Ye)):de(Ne[Be.options],!0)}}return de(at),{options:at,valueOptions:Mt,labelOptions:Ee}},[ne,ae,Be,Me,Ye])}function rn(ne){var ae=h.useRef();ae.current=ne;var Be=h.useCallback(function(){return ae.current.apply(ae,arguments)},[]);return Be}var Kr=function(){return null};Kr.isSelectOptGroup=!0;var He=Kr,Ir=function(){return null};Ir.isSelectOption=!0;var Gr=Ir;function cn(ne,ae){var Be=(0,y.Z)({},ne);return Array.isArray(ae)&&ae.forEach(function(Me){delete Be[Me]}),Be}var Xr=B(73299),wn=h.createContext(null),Un=wn;function zn(){return/(mac\sos|macintosh)/i.test(navigator.appVersion)}var ci=["disabled","title","children","style","className"];function On(ne){return typeof ne=="string"||typeof ne=="number"}var mi=function(ae,Be){var Me=G(),Ye=Me.prefixCls,at=Me.id,vt=Me.open,Mt=Me.multiple,Ee=Me.mode,le=Me.searchValue,de=Me.toggleOpen,be=Me.notFoundContent,Qe=Me.onPopupScroll,Ge=h.useContext(Un),Ne=Ge.flattenOptions,mt=Ge.onActiveValue,Ct=Ge.defaultActiveFirstOption,Pt=Ge.onSelect,pt=Ge.menuItemSelectedIcon,$e=Ge.rawValues,Lt=Ge.fieldNames,Ht=Ge.virtual,It=Ge.direction,yt=Ge.listHeight,Dt=Ge.listItemHeight,jt="".concat(Ye,"-item"),Ft=b(function(){return Ne},[vt,Ne],function(lr,Yt){return Yt[0]&&lr[1]!==Yt[1]}),Zt=h.useRef(null),cr=function(Yt){Yt.preventDefault()},dr=function(Yt){Zt.current&&Zt.current.scrollTo(typeof Yt=="number"?{index:Yt}:Yt)},xr=function(Yt){for(var ir=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1,Tr=Ft.length,Ar=0;Ar<Tr;Ar+=1){var Cr=(Yt+Ar*ir+Tr)%Tr,rr=Ft[Cr],zr=rr.group,kr=rr.data;if(!zr&&!kr.disabled)return Cr}return-1},pr=h.useState(function(){return xr(0)}),Jt=(0,v.Z)(pr,2),or=Jt[0],sr=Jt[1],ur=function(Yt){var ir=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;sr(Yt);var Tr={source:ir?"keyboard":"mouse"},Ar=Ft[Yt];if(!Ar){mt(null,-1,Tr);return}mt(Ar.value,Yt,Tr)};(0,h.useEffect)(function(){ur(Ct!==!1?xr(0):-1)},[Ft.length,le]);var nn=h.useCallback(function(lr){return $e.has(lr)&&Ee!=="combobox"},[Ee,(0,g.Z)($e).toString(),$e.size]);(0,h.useEffect)(function(){var lr=setTimeout(function(){if(!Mt&&vt&&$e.size===1){var ir=Array.from($e)[0],Tr=Ft.findIndex(function(Ar){var Cr=Ar.data;return Cr.value===ir});Tr!==-1&&(ur(Tr),dr(Tr))}});if(vt){var Yt;(Yt=Zt.current)===null||Yt===void 0||Yt.scrollTo(void 0)}return function(){return clearTimeout(lr)}},[vt,le,Ne.length]);var an=function(Yt){Yt!==void 0&&Pt(Yt,{selected:!$e.has(Yt)}),Mt||de(!1)};if(h.useImperativeHandle(Be,function(){return{onKeyDown:function(Yt){var ir=Yt.which,Tr=Yt.ctrlKey;switch(ir){case S.N:case S.P:case S.UP:case S.DOWN:{var Ar=0;if(ir===S.UP?Ar=-1:ir===S.DOWN?Ar=1:zn()&&Tr&&(ir===S.N?Ar=1:ir===S.P&&(Ar=-1)),Ar!==0){var Cr=xr(or+Ar,Ar);dr(Cr),ur(Cr,!0)}break}case S.ENTER:{var rr=Ft[or];rr&&!rr.data.disabled?an(rr.value):an(void 0),vt&&Yt.preventDefault();break}case S.ESC:de(!1),vt&&Yt.stopPropagation()}},onKeyUp:function(){},scrollTo:function(Yt){dr(Yt)}}}),Ft.length===0)return h.createElement("div",{role:"listbox",id:"".concat(at,"_list"),className:"".concat(jt,"-empty"),onMouseDown:cr},be);var qr=Object.keys(Lt).map(function(lr){return Lt[lr]}),Br=function(Yt){return Yt.label};function vr(lr,Yt){var ir=lr.group;return{role:ir?"presentation":"option",id:"".concat(at,"_list_").concat(Yt)}}var $r=function(Yt){var ir=Ft[Yt];if(!ir)return null;var Tr=ir.data||{},Ar=Tr.value,Cr=ir.group,rr=me(Tr,!0),zr=Br(ir);return ir?h.createElement("div",(0,M.Z)({"aria-label":typeof zr=="string"&&!Cr?zr:null},rr,{key:Yt},vr(ir,Yt),{"aria-selected":nn(Ar)}),Ar):null},en={role:"listbox",id:"".concat(at,"_list")};return h.createElement(h.Fragment,null,Ht&&h.createElement("div",(0,M.Z)({},en,{style:{height:0,width:0,overflow:"hidden"}}),$r(or-1),$r(or),$r(or+1)),h.createElement(Xr.Z,{itemKey:"key",ref:Zt,data:Ft,height:yt,itemHeight:Dt,fullHeight:!1,onMouseDown:cr,onScroll:Qe,virtual:Ht,direction:It,innerProps:Ht?null:en},function(lr,Yt){var ir,Tr=lr.group,Ar=lr.groupOption,Cr=lr.data,rr=lr.label,zr=lr.value,kr=Cr.key;if(Tr){var Vr,Yr=(Vr=Cr.title)!==null&&Vr!==void 0?Vr:On(rr)?rr.toString():void 0;return h.createElement("div",{className:H()(jt,"".concat(jt,"-group")),title:Yr},rr!==void 0?rr:kr)}var on=Cr.disabled,mn=Cr.title,fn=Cr.children,Qr=Cr.style,bn=Cr.className,An=(0,m.Z)(Cr,ci),Cn=cn(An,qr),hn=nn(zr),Jr="".concat(jt,"-option"),er=H()(jt,Jr,bn,(ir={},(0,D.Z)(ir,"".concat(Jr,"-grouped"),Ar),(0,D.Z)(ir,"".concat(Jr,"-active"),or===Yt&&!on),(0,D.Z)(ir,"".concat(Jr,"-disabled"),on),(0,D.Z)(ir,"".concat(Jr,"-selected"),hn),ir)),fr=Br(lr),Nr=!pt||typeof pt=="function"||hn,tn=typeof fr=="number"?fr:fr||zr,gn=On(tn)?tn.toString():void 0;return mn!==void 0&&(gn=mn),h.createElement("div",(0,M.Z)({},me(Cn),Ht?{}:vr(lr,Yt),{"aria-selected":hn,className:er,title:gn,onMouseMove:function(){or===Yt||on||ur(Yt)},onClick:function(){on||an(zr)},style:Qr}),h.createElement("div",{className:"".concat(Jr,"-content")},tn),h.isValidElement(pt)||hn,Nr&&h.createElement(F,{className:"".concat(jt,"-option-state"),customizeIcon:pt,customizeIconProps:{isSelected:hn}},hn?"\u2713":null))}))},jn=h.forwardRef(mi);jn.displayName="OptionList";var Rn=jn;function ni(ne){var ae=ne.mode,Be=ne.options,Me=ne.children,Ye=ne.backfill,at=ne.allowClear,vt=ne.placeholder,Mt=ne.getInputElement,Ee=ne.showSearch,le=ne.onSearch,de=ne.defaultOpen,be=ne.autoFocus,Qe=ne.labelInValue,Ge=ne.value,Ne=ne.inputValue,mt=ne.optionLabelProp,Ct=isMultiple(ae),Pt=Ee!==void 0?Ee:Ct||ae==="combobox",pt=Be||convertChildrenToData(Me);if(warning(ae!=="tags"||pt.every(function(It){return!It.disabled}),"Please avoid setting option to disabled in tags mode since user can always type text as tag."),ae==="tags"||ae==="combobox"){var $e=pt.some(function(It){return It.options?It.options.some(function(yt){return typeof("value"in yt?yt.value:yt.key)=="number"}):typeof("value"in It?It.value:It.key)=="number"});warning(!$e,"`value` of Option should not use number type when `mode` is `tags` or `combobox`.")}if(warning(ae!=="combobox"||!mt,"`combobox` mode not support `optionLabelProp`. Please set `value` on Option directly."),warning(ae==="combobox"||!Ye,"`backfill` only works with `combobox` mode."),warning(ae==="combobox"||!Mt,"`getInputElement` only work with `combobox` mode."),noteOnce(ae!=="combobox"||!Mt||!at||!vt,"Customize `getInputElement` should customize clear and placeholder logic instead of configuring `allowClear` and `placeholder`."),le&&!Pt&&ae!=="combobox"&&ae!=="tags"&&warning(!1,"`onSearch` should work with `showSearch` instead of use alone."),noteOnce(!de||be,"`defaultOpen` makes Select open without focus which means it will not close by click outside. You can set `autoFocus` if needed."),Ge!=null){var Lt=toArray(Ge);warning(!Qe||Lt.every(function(It){return _typeof(It)==="object"&&("key"in It||"value"in It)}),"`value` should in shape of `{ value: string | number, label?: ReactNode }` when you set `labelInValue` to `true`"),warning(!Ct||Array.isArray(Ge),"`value` should be array when `mode` is `multiple` or `tags`")}if(Me){var Ht=null;toNodeArray(Me).some(function(It){if(!React.isValidElement(It)||!It.type)return!1;var yt=It,Dt=yt.type;if(Dt.isSelectOption)return!1;if(Dt.isSelectOptGroup){var jt=toNodeArray(It.props.children).every(function(Ft){return!React.isValidElement(Ft)||!It.type||Ft.type.isSelectOption?!0:(Ht=Ft.type,!1)});return!jt}return Ht=Dt,!0}),Ht&&warning(!1,"`children` should be `Select.Option` or `Select.OptGroup` instead of `".concat(Ht.displayName||Ht.name||Ht,"`.")),warning(Ne===void 0,"`inputValue` is deprecated, please use `searchValue` instead.")}}function Zn(ne,ae){if(ne){var Be=function Me(Ye){for(var at=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,vt=0;vt<Ye.length;vt++){var Mt=Ye[vt];if(Mt[ae==null?void 0:ae.value]===null)return warning(!1,"`value` in Select options should not be `null`."),!0;if(!at&&Array.isArray(Mt[ae==null?void 0:ae.options])&&Me(Mt[ae==null?void 0:ae.options],!0))break}};Be(ne)}}var Nn=null,Mn=["id","mode","prefixCls","backfill","fieldNames","inputValue","searchValue","onSearch","autoClearSearchValue","onSelect","onDeselect","dropdownMatchSelectWidth","filterOption","filterSort","optionFilterProp","optionLabelProp","options","children","defaultActiveFirstOption","menuItemSelectedIcon","virtual","direction","listHeight","listItemHeight","value","defaultValue","labelInValue","onChange"],Yn=["inputValue"];function Kn(ne){return!ne||(0,E.Z)(ne)!=="object"}var ii=h.forwardRef(function(ne,ae){var Be=ne.id,Me=ne.mode,Ye=ne.prefixCls,at=Ye===void 0?"rc-select":Ye,vt=ne.backfill,Mt=ne.fieldNames,Ee=ne.inputValue,le=ne.searchValue,de=ne.onSearch,be=ne.autoClearSearchValue,Qe=be===void 0?!0:be,Ge=ne.onSelect,Ne=ne.onDeselect,mt=ne.dropdownMatchSelectWidth,Ct=mt===void 0?!0:mt,Pt=ne.filterOption,pt=ne.filterSort,$e=ne.optionFilterProp,Lt=ne.optionLabelProp,Ht=ne.options,It=ne.children,yt=ne.defaultActiveFirstOption,Dt=ne.menuItemSelectedIcon,jt=ne.virtual,Ft=ne.direction,Zt=ne.listHeight,cr=Zt===void 0?200:Zt,dr=ne.listItemHeight,xr=dr===void 0?20:dr,pr=ne.value,Jt=ne.defaultValue,or=ne.labelInValue,sr=ne.onChange,ur=(0,m.Z)(ne,Mn),nn=un(Be),an=Vt(Me),qr=!!(!Ht&&It),Br=h.useMemo(function(){return Pt===void 0&&Me==="combobox"?!1:Pt},[Pt,Me]),vr=h.useMemo(function(){return st(Mt,qr)},[JSON.stringify(Mt),qr]),$r=s("",{value:le!==void 0?le:Ee,postState:function(Qt){return Qt||""}}),en=(0,v.Z)($r,2),lr=en[0],Yt=en[1],ir=xn(Ht,It,vr,$e,Lt),Tr=ir.valueOptions,Ar=ir.labelOptions,Cr=ir.options,rr=h.useCallback(function(Bt){var Qt=Nt(Bt);return Qt.map(function(qt){var nr,sn,dn,$n,Xn;if(Kn(qt))nr=qt;else{var ei;dn=qt.key,sn=qt.label,nr=(ei=qt.value)!==null&&ei!==void 0?ei:dn}var yn=Tr.get(nr);if(yn){var ui;if(sn===void 0&&(sn=yn==null?void 0:yn[Lt||vr.label]),dn===void 0&&(dn=(ui=yn==null?void 0:yn.key)!==null&&ui!==void 0?ui:nr),$n=yn==null?void 0:yn.disabled,Xn=yn==null?void 0:yn.title,0)var Ai}return{label:sn,value:nr,key:dn,disabled:$n,title:Xn}})},[vr,Lt,Tr]),zr=s(Jt,{value:pr}),kr=(0,v.Z)(zr,2),Vr=kr[0],Yr=kr[1],on=h.useMemo(function(){var Bt,Qt=rr(Vr);return Me==="combobox"&&ge((Bt=Qt[0])===null||Bt===void 0?void 0:Bt.value)?[]:Qt},[Vr,rr,Me]),mn=Pr(on,Tr),fn=(0,v.Z)(mn,2),Qr=fn[0],bn=fn[1],An=h.useMemo(function(){if(!Me&&Qr.length===1){var Bt=Qr[0];if(Bt.value===null&&(Bt.label===null||Bt.label===void 0))return[]}return Qr.map(function(Qt){var qt;return(0,y.Z)((0,y.Z)({},Qt),{},{label:(qt=Qt.label)!==null&&qt!==void 0?qt:Qt.value})})},[Me,Qr]),Cn=h.useMemo(function(){return new Set(Qr.map(function(Bt){return Bt.value}))},[Qr]);h.useEffect(function(){if(Me==="combobox"){var Bt,Qt=(Bt=Qr[0])===null||Bt===void 0?void 0:Bt.value;Yt(_t(Qt)?String(Qt):"")}},[Qr]);var hn=rn(function(Bt,Qt){var qt,nr=Qt!=null?Qt:Bt;return qt={},(0,D.Z)(qt,vr.value,Bt),(0,D.Z)(qt,vr.label,nr),qt}),Jr=h.useMemo(function(){if(Me!=="tags")return Cr;var Bt=(0,g.Z)(Cr),Qt=function(nr){return Tr.has(nr)};return(0,g.Z)(Qr).sort(function(qt,nr){return qt.value<nr.value?-1:1}).forEach(function(qt){var nr=qt.value;Qt(nr)||Bt.push(hn(nr,qt.label))}),Bt},[hn,Cr,Tr,Qr,Me]),er=mr(Jr,vr,lr,Br,$e),fr=h.useMemo(function(){return Me!=="tags"||!lr||er.some(function(Bt){return Bt[$e||"value"]===lr})||er.some(function(Bt){return Bt[vr.value]===lr})?er:[hn(lr)].concat((0,g.Z)(er))},[hn,$e,Me,er,lr,vr]),Nr=h.useMemo(function(){return pt?(0,g.Z)(fr).sort(function(Bt,Qt){return pt(Bt,Qt)}):fr},[fr,pt]),tn=h.useMemo(function(){return bt(Nr,{fieldNames:vr,childrenAsData:qr})},[Nr,vr,qr]),gn=function(Qt){var qt=rr(Qt);if(Yr(qt),sr&&(qt.length!==Qr.length||qt.some(function(dn,$n){var Xn;return((Xn=Qr[$n])===null||Xn===void 0?void 0:Xn.value)!==(dn==null?void 0:dn.value)}))){var nr=or?qt:qt.map(function(dn){return dn.value}),sn=qt.map(function(dn){return wt(bn(dn.value))});sr(an?nr:nr[0],an?sn:sn[0])}},Jn=h.useState(null),Gn=(0,v.Z)(Jn,2),fi=Gn[0],kn=Gn[1],Pn=h.useState(0),di=(0,v.Z)(Pn,2),Tn=di[0],Fn=di[1],ai=yt!==void 0?yt:Me!=="combobox",Wn=h.useCallback(function(Bt,Qt){var qt=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},nr=qt.source,sn=nr===void 0?"keyboard":nr;Fn(Qt),vt&&Me==="combobox"&&Bt!==null&&sn==="keyboard"&&kn(String(Bt))},[vt,Me]),oi=function(Qt,qt,nr){var sn=function(){var hi,ti=bn(Qt);return[or?{label:ti==null?void 0:ti[vr.label],value:Qt,key:(hi=ti==null?void 0:ti.key)!==null&&hi!==void 0?hi:Qt}:Qt,wt(ti)]};if(qt&&Ge){var dn=sn(),$n=(0,v.Z)(dn,2),Xn=$n[0],ei=$n[1];Ge(Xn,ei)}else if(!qt&&Ne&&nr!=="clear"){var yn=sn(),ui=(0,v.Z)(yn,2),Ai=ui[0],Si=ui[1];Ne(Ai,Si)}},qn=rn(function(Bt,Qt){var qt,nr=an?Qt.selected:!0;nr?qt=an?[].concat((0,g.Z)(Qr),[Bt]):[Bt]:qt=Qr.filter(function(sn){return sn.value!==Bt}),gn(qt),oi(Bt,nr),Me==="combobox"?kn(""):(!Vt||Qe)&&(Yt(""),kn(""))}),pi=function(Qt,qt){gn(Qt);var nr=qt.type,sn=qt.values;(nr==="remove"||nr==="clear")&&sn.forEach(function(dn){oi(dn.value,!1,nr)})},si=function(Qt,qt){if(Yt(Qt),kn(null),qt.source==="submit"){var nr=(Qt||"").trim();if(nr){var sn=Array.from(new Set([].concat((0,g.Z)(Cn),[nr])));gn(sn),oi(nr,!0),Yt("")}return}qt.source!=="blur"&&(Me==="combobox"&&gn(Qt),de==null||de(Qt))},li=function(Qt){var qt=Qt;Me!=="tags"&&(qt=Qt.map(function(sn){var dn=Ar.get(sn);return dn==null?void 0:dn.value}).filter(function(sn){return sn!==void 0}));var nr=Array.from(new Set([].concat((0,g.Z)(Cn),(0,g.Z)(qt))));gn(nr),nr.forEach(function(sn){oi(sn,!0)})},Er=h.useMemo(function(){var Bt=jt!==!1&&Ct!==!1;return(0,y.Z)((0,y.Z)({},ir),{},{flattenOptions:tn,onActiveValue:Wn,defaultActiveFirstOption:ai,onSelect:qn,menuItemSelectedIcon:Dt,rawValues:Cn,fieldNames:vr,virtual:Bt,direction:Ft,listHeight:cr,listItemHeight:xr,childrenAsData:qr})},[ir,tn,Wn,ai,qn,Dt,Cn,vr,jt,Ct,cr,xr,qr]);return h.createElement(Un.Provider,{value:Er},h.createElement(hr,(0,M.Z)({},ur,{id:nn,prefixCls:at,ref:ae,omitDomProps:Yn,mode:Me,displayValues:An,onDisplayValuesChange:pi,direction:Ft,searchValue:lr,onSearch:si,autoClearSearchValue:Qe,onSearchSplit:li,dropdownMatchSelectWidth:Ct,OptionList:Rn,emptyOptions:!tn.length,activeValue:fi,activeDescendantId:"".concat(nn,"_list_").concat(Tn)})))}),Qn=ii;Qn.Option=Gr,Qn.OptGroup=He;var Dn=Qn,gi=Dn,Re=B(10366),Fe=B(8745),it=B(33603),ct=B(9708),et=B(53124),St=B(98866),Et=B(88258),$t=B(98675),ar=B(65223),tr=B(4173),br=B(87244),yr=B(13458),Ur=B(78642),Fr=B(46163),gr=function(ne,ae){var Be={};for(var Me in ne)Object.prototype.hasOwnProperty.call(ne,Me)&&ae.indexOf(Me)<0&&(Be[Me]=ne[Me]);if(ne!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Ye=0,Me=Object.getOwnPropertySymbols(ne);Ye<Me.length;Ye++)ae.indexOf(Me[Ye])<0&&Object.prototype.propertyIsEnumerable.call(ne,Me[Ye])&&(Be[Me[Ye]]=ne[Me[Ye]]);return Be};const Wr="SECRET_COMBOBOX_MODE_DO_NOT_USE",Hr=(ne,ae)=>{var Be,{prefixCls:Me,bordered:Ye=!0,className:at,rootClassName:vt,getPopupContainer:Mt,popupClassName:Ee,dropdownClassName:le,listHeight:de=256,placement:be,listItemHeight:Qe=24,size:Ge,disabled:Ne,notFoundContent:mt,status:Ct,builtinPlacements:Pt,dropdownMatchSelectWidth:pt,popupMatchSelectWidth:$e,direction:Lt,style:Ht,allowClear:It}=ne,yt=gr(ne,["prefixCls","bordered","className","rootClassName","getPopupContainer","popupClassName","dropdownClassName","listHeight","placement","listItemHeight","size","disabled","notFoundContent","status","builtinPlacements","dropdownMatchSelectWidth","popupMatchSelectWidth","direction","style","allowClear"]);const{getPopupContainer:Dt,getPrefixCls:jt,renderEmpty:Ft,direction:Zt,virtual:cr,popupMatchSelectWidth:dr,popupOverflow:xr,select:pr}=h.useContext(et.E_),Jt=jt("select",Me),or=jt(),sr=Lt!=null?Lt:Zt,{compactSize:ur,compactItemClassnames:nn}=(0,tr.ri)(Jt,sr),[an,qr]=(0,br.Z)(Jt),Br=h.useMemo(()=>{const{mode:Jr}=yt;if(Jr!=="combobox")return Jr===Wr?"combobox":Jr},[yt.mode]),vr=Br==="multiple"||Br==="tags",$r=(0,Ur.Z)(yt.suffixIcon,yt.showArrow),en=(Be=$e!=null?$e:pt)!==null&&Be!==void 0?Be:dr,{status:lr,hasFeedback:Yt,isFormItemInput:ir,feedbackIcon:Tr}=h.useContext(ar.aM),Ar=(0,ct.F)(lr,Ct);let Cr;mt!==void 0?Cr=mt:Br==="combobox"?Cr=null:Cr=(Ft==null?void 0:Ft("Select"))||h.createElement(Et.Z,{componentName:"Select"});const{suffixIcon:rr,itemIcon:zr,removeIcon:kr,clearIcon:Vr}=(0,Fr.Z)(Object.assign(Object.assign({},yt),{multiple:vr,hasFeedback:Yt,feedbackIcon:Tr,showSuffixIcon:$r,prefixCls:Jt,showArrow:yt.showArrow,componentName:"Select"})),Yr=It===!0?{clearIcon:Vr}:It,on=(0,Re.Z)(yt,["suffixIcon","itemIcon"]),mn=H()(Ee||le,{[`${Jt}-dropdown-${sr}`]:sr==="rtl"},vt,qr),fn=(0,$t.Z)(Jr=>{var er;return(er=Ge!=null?Ge:ur)!==null&&er!==void 0?er:Jr}),Qr=h.useContext(St.Z),bn=Ne!=null?Ne:Qr,An=H()({[`${Jt}-lg`]:fn==="large",[`${Jt}-sm`]:fn==="small",[`${Jt}-rtl`]:sr==="rtl",[`${Jt}-borderless`]:!Ye,[`${Jt}-in-form-item`]:ir},(0,ct.Z)(Jt,Ar,Yt),nn,pr==null?void 0:pr.className,at,vt,qr),Cn=h.useMemo(()=>be!==void 0?be:sr==="rtl"?"bottomRight":"bottomLeft",[be,sr]),hn=(0,yr.Z)(Pt,xr);return an(h.createElement(gi,Object.assign({ref:ae,virtual:cr,showSearch:pr==null?void 0:pr.showSearch},on,{style:Object.assign(Object.assign({},pr==null?void 0:pr.style),Ht),dropdownMatchSelectWidth:en,builtinPlacements:hn,transitionName:(0,it.m)(or,"slide-up",yt.transitionName),listHeight:de,listItemHeight:Qe,mode:Br,prefixCls:Jt,placement:Cn,direction:sr,suffixIcon:rr,menuItemSelectedIcon:zr,removeIcon:kr,allowClear:Yr,notFoundContent:Cr,className:An,getPopupContainer:Mt||Dt,dropdownClassName:mn,disabled:bn})))},Lr=h.forwardRef(Hr),Sr=(0,Fe.Z)(Lr);Lr.SECRET_COMBOBOX_MODE_DO_NOT_USE=Wr,Lr.Option=Gr,Lr.OptGroup=He,Lr._InternalPanelDoNotUseOrYouWillBeFired=Sr;var Dr=Lr},87244:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return t}});var w=B(14747),H=B(80110),M=B(45503),g=B(67968),D=B(67771),y=B(33297);const v=i=>{const{optionHeight:c,optionFontSize:p,optionLineHeight:A,optionPadding:x}=i;return{position:"relative",display:"block",minHeight:c,padding:x,color:i.colorText,fontWeight:"normal",fontSize:p,lineHeight:A,boxSizing:"border-box"}};var E=i=>{const{antCls:c,componentCls:p}=i,A=`${p}-item`,x=`&${c}-slide-up-enter${c}-slide-up-enter-active`,C=`&${c}-slide-up-appear${c}-slide-up-appear-active`,S=`&${c}-slide-up-leave${c}-slide-up-leave-active`,P=`${p}-dropdown-placement-`;return[{[`${p}-dropdown`]:Object.assign(Object.assign({},(0,w.Wf)(i)),{position:"absolute",top:-9999,zIndex:i.zIndexPopup,boxSizing:"border-box",padding:i.paddingXXS,overflow:"hidden",fontSize:i.fontSize,fontVariant:"initial",backgroundColor:i.colorBgElevated,borderRadius:i.borderRadiusLG,outline:"none",boxShadow:i.boxShadowSecondary,[`
|
|
${x}${P}bottomLeft,
|
|
${C}${P}bottomLeft
|
|
`]:{animationName:D.fJ},[`
|
|
${x}${P}topLeft,
|
|
${C}${P}topLeft,
|
|
${x}${P}topRight,
|
|
${C}${P}topRight
|
|
`]:{animationName:D.Qt},[`${S}${P}bottomLeft`]:{animationName:D.Uw},[`
|
|
${S}${P}topLeft,
|
|
${S}${P}topRight
|
|
`]:{animationName:D.ly},"&-hidden":{display:"none"},[`${A}`]:Object.assign(Object.assign({},v(i)),{cursor:"pointer",transition:`background ${i.motionDurationSlow} ease`,borderRadius:i.borderRadiusSM,"&-group":{color:i.colorTextDescription,fontSize:i.fontSizeSM,cursor:"default"},"&-option":{display:"flex","&-content":Object.assign({flex:"auto"},w.vS),"&-state":{flex:"none",display:"flex",alignItems:"center"},[`&-active:not(${A}-option-disabled)`]:{backgroundColor:i.optionActiveBg},[`&-selected:not(${A}-option-disabled)`]:{color:i.optionSelectedColor,fontWeight:i.optionSelectedFontWeight,backgroundColor:i.optionSelectedBg,[`${A}-option-state`]:{color:i.colorPrimary}},"&-disabled":{[`&${A}-option-selected`]:{backgroundColor:i.colorBgContainerDisabled},color:i.colorTextDisabled,cursor:"not-allowed"},"&-grouped":{paddingInlineStart:i.controlPaddingHorizontal*2}}}),"&-rtl":{direction:"rtl"}})},(0,D.oN)(i,"slide-up"),(0,D.oN)(i,"slide-down"),(0,y.Fm)(i,"move-up"),(0,y.Fm)(i,"move-down")]};const h=2,a=i=>{let{controlHeightSM:c,controlHeight:p,lineWidth:A}=i;const x=(p-c)/2-A,C=Math.ceil(x/2);return[x,C]};function d(i,c){const{componentCls:p,iconCls:A}=i,x=`${p}-selection-overflow`,C=i.multipleSelectItemHeight,[S]=a(i),P=c?`${p}-${c}`:"";return{[`${p}-multiple${P}`]:{fontSize:i.fontSize,[x]:{position:"relative",display:"flex",flex:"auto",flexWrap:"wrap",maxWidth:"100%","&-item":{flex:"none",alignSelf:"center",maxWidth:"100%",display:"inline-flex"}},[`${p}-selector`]:{display:"flex",flexWrap:"wrap",alignItems:"center",padding:`${S-h}px ${h*2}px`,borderRadius:i.borderRadius,[`${p}-show-search&`]:{cursor:"text"},[`${p}-disabled&`]:{background:i.multipleSelectorBgDisabled,cursor:"not-allowed"},"&:after":{display:"inline-block",width:0,margin:`${h}px 0`,lineHeight:`${C}px`,visibility:"hidden",content:'"\\a0"'}},[`
|
|
&${p}-show-arrow ${p}-selector,
|
|
&${p}-allow-clear ${p}-selector
|
|
`]:{paddingInlineEnd:i.fontSizeIcon+i.controlPaddingHorizontal},[`${p}-selection-item`]:{position:"relative",display:"flex",flex:"none",boxSizing:"border-box",maxWidth:"100%",height:C,marginTop:h,marginBottom:h,lineHeight:`${C-i.lineWidth*2}px`,background:i.multipleItemBg,border:`${i.lineWidth}px ${i.lineType} ${i.multipleItemBorderColor}`,borderRadius:i.borderRadiusSM,cursor:"default",transition:`font-size ${i.motionDurationSlow}, line-height ${i.motionDurationSlow}, height ${i.motionDurationSlow}`,userSelect:"none",marginInlineEnd:h*2,paddingInlineStart:i.paddingXS,paddingInlineEnd:i.paddingXS/2,[`${p}-disabled&`]:{color:i.multipleItemColorDisabled,borderColor:i.multipleItemBorderColorDisabled,cursor:"not-allowed"},"&-content":{display:"inline-block",marginInlineEnd:i.paddingXS/2,overflow:"hidden",whiteSpace:"pre",textOverflow:"ellipsis"},"&-remove":Object.assign(Object.assign({},(0,w.Ro)()),{display:"inline-flex",alignItems:"center",color:i.colorIcon,fontWeight:"bold",fontSize:10,lineHeight:"inherit",cursor:"pointer",[`> ${A}`]:{verticalAlign:"-0.2em"},"&:hover":{color:i.colorIconHover}})},[`${x}-item + ${x}-item`]:{[`${p}-selection-search`]:{marginInlineStart:0}},[`${p}-selection-search`]:{display:"inline-flex",position:"relative",maxWidth:"100%",marginInlineStart:i.inputPaddingHorizontalBase-S,"\n &-input,\n &-mirror\n ":{height:C,fontFamily:i.fontFamily,lineHeight:`${C}px`,transition:`all ${i.motionDurationSlow}`},"&-input":{width:"100%",minWidth:4.1},"&-mirror":{position:"absolute",top:0,insetInlineStart:0,insetInlineEnd:"auto",zIndex:999,whiteSpace:"pre",visibility:"hidden"}},[`${p}-selection-placeholder `]:{position:"absolute",top:"50%",insetInlineStart:i.inputPaddingHorizontalBase,insetInlineEnd:i.inputPaddingHorizontalBase,transform:"translateY(-50%)",transition:`all ${i.motionDurationSlow}`}}}}var r=i=>{const{componentCls:c}=i,p=(0,M.TS)(i,{controlHeight:i.controlHeightSM,multipleSelectItemHeight:i.controlHeightXS,borderRadius:i.borderRadiusSM,borderRadiusSM:i.borderRadiusXS}),A=(0,M.TS)(i,{fontSize:i.fontSizeLG,controlHeight:i.controlHeightLG,multipleSelectItemHeight:i.multipleItemHeightLG,borderRadius:i.borderRadiusLG,borderRadiusSM:i.borderRadius}),[,x]=a(i);return[d(i),d(p,"sm"),{[`${c}-multiple${c}-sm`]:{[`${c}-selection-placeholder`]:{insetInline:i.controlPaddingHorizontalSM-i.lineWidth},[`${c}-selection-search`]:{marginInlineStart:x}}},d(A,"lg")]};function n(i,c){const{componentCls:p,inputPaddingHorizontalBase:A,borderRadius:x}=i,C=i.controlHeight-i.lineWidth*2,S=Math.ceil(i.fontSize*1.25),P=c?`${p}-${c}`:"";return{[`${p}-single${P}`]:{fontSize:i.fontSize,[`${p}-selector`]:Object.assign(Object.assign({},(0,w.Wf)(i)),{display:"flex",borderRadius:x,[`${p}-selection-search`]:{position:"absolute",top:0,insetInlineStart:A,insetInlineEnd:A,bottom:0,"&-input":{width:"100%"}},[`
|
|
${p}-selection-item,
|
|
${p}-selection-placeholder
|
|
`]:{padding:0,lineHeight:`${C}px`,transition:`all ${i.motionDurationSlow}, visibility 0s`,"@supports (-moz-appearance: meterbar)":{lineHeight:`${C}px`}},[`${p}-selection-item`]:{position:"relative",userSelect:"none"},[`${p}-selection-placeholder`]:{transition:"none",pointerEvents:"none"},[["&:after",`${p}-selection-item:after`,`${p}-selection-placeholder:after`].join(",")]:{display:"inline-block",width:0,visibility:"hidden",content:'"\\a0"'}}),[`
|
|
&${p}-show-arrow ${p}-selection-item,
|
|
&${p}-show-arrow ${p}-selection-placeholder
|
|
`]:{paddingInlineEnd:S},[`&${p}-open ${p}-selection-item`]:{color:i.colorTextPlaceholder},[`&:not(${p}-customize-input)`]:{[`${p}-selector`]:{width:"100%",height:i.controlHeight,padding:`0 ${A}px`,[`${p}-selection-search-input`]:{height:C},"&:after":{lineHeight:`${C}px`}}},[`&${p}-customize-input`]:{[`${p}-selector`]:{"&:after":{display:"none"},[`${p}-selection-search`]:{position:"static",width:"100%"},[`${p}-selection-placeholder`]:{position:"absolute",insetInlineStart:0,insetInlineEnd:0,padding:`0 ${A}px`,"&:after":{display:"none"}}}}}}}function l(i){const{componentCls:c}=i,p=i.controlPaddingHorizontalSM-i.lineWidth;return[n(i),n((0,M.TS)(i,{controlHeight:i.controlHeightSM,borderRadius:i.borderRadiusSM}),"sm"),{[`${c}-single${c}-sm`]:{[`&:not(${c}-customize-input)`]:{[`${c}-selection-search`]:{insetInlineStart:p,insetInlineEnd:p},[`${c}-selector`]:{padding:`0 ${p}px`},[`&${c}-show-arrow ${c}-selection-search`]:{insetInlineEnd:p+i.fontSize*1.5},[`
|
|
&${c}-show-arrow ${c}-selection-item,
|
|
&${c}-show-arrow ${c}-selection-placeholder
|
|
`]:{paddingInlineEnd:i.fontSize*1.5}}}},n((0,M.TS)(i,{controlHeight:i.singleItemHeightLG,fontSize:i.fontSizeLG,borderRadius:i.borderRadiusLG}),"lg")]}const o=i=>{const{componentCls:c,selectorBg:p}=i;return{position:"relative",backgroundColor:p,border:`${i.lineWidth}px ${i.lineType} ${i.colorBorder}`,transition:`all ${i.motionDurationMid} ${i.motionEaseInOut}`,input:{cursor:"pointer"},[`${c}-show-search&`]:{cursor:"text",input:{cursor:"auto",color:"inherit"}},[`${c}-disabled&`]:{color:i.colorTextDisabled,background:i.colorBgContainerDisabled,cursor:"not-allowed",[`${c}-multiple&`]:{background:i.multipleSelectorBgDisabled},input:{cursor:"not-allowed"}}}},s=function(i,c){let p=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;const{componentCls:A,borderHoverColor:x,outlineColor:C,antCls:S}=c,P=p?{[`${A}-selector`]:{borderColor:x}}:{};return{[i]:{[`&:not(${A}-disabled):not(${A}-customize-input):not(${S}-pagination-size-changer)`]:Object.assign(Object.assign({},P),{[`${A}-focused& ${A}-selector`]:{borderColor:x,boxShadow:`0 0 0 ${c.controlOutlineWidth}px ${C}`,outline:0},[`&:hover ${A}-selector`]:{borderColor:x}})}}},u=i=>{const{componentCls:c}=i;return{[`${c}-selection-search-input`]:{margin:0,padding:0,background:"transparent",border:"none",outline:"none",appearance:"none","&::-webkit-search-cancel-button":{display:"none","-webkit-appearance":"none"}}}},f=i=>{const{componentCls:c,inputPaddingHorizontalBase:p,iconCls:A}=i;return{[c]:Object.assign(Object.assign({},(0,w.Wf)(i)),{position:"relative",display:"inline-block",cursor:"pointer",[`&:not(${c}-customize-input) ${c}-selector`]:Object.assign(Object.assign({},o(i)),u(i)),[`${c}-selection-item`]:Object.assign({flex:1,fontWeight:"normal"},w.vS),[`${c}-selection-placeholder`]:Object.assign(Object.assign({},w.vS),{flex:1,color:i.colorTextPlaceholder,pointerEvents:"none"}),[`${c}-arrow`]:Object.assign(Object.assign({},(0,w.Ro)()),{position:"absolute",top:"50%",insetInlineStart:"auto",insetInlineEnd:p,height:i.fontSizeIcon,marginTop:-i.fontSizeIcon/2,color:i.colorTextQuaternary,fontSize:i.fontSizeIcon,lineHeight:1,textAlign:"center",pointerEvents:"none",display:"flex",alignItems:"center",[A]:{verticalAlign:"top",transition:`transform ${i.motionDurationSlow}`,"> svg":{verticalAlign:"top"},[`&:not(${c}-suffix)`]:{pointerEvents:"auto"}},[`${c}-disabled &`]:{cursor:"not-allowed"},"> *:not(:last-child)":{marginInlineEnd:8}}),[`${c}-clear`]:{position:"absolute",top:"50%",insetInlineStart:"auto",insetInlineEnd:p,zIndex:1,display:"inline-block",width:i.fontSizeIcon,height:i.fontSizeIcon,marginTop:-i.fontSizeIcon/2,color:i.colorTextQuaternary,fontSize:i.fontSizeIcon,fontStyle:"normal",lineHeight:1,textAlign:"center",textTransform:"none",background:i.clearBg,cursor:"pointer",opacity:0,transition:`color ${i.motionDurationMid} ease, opacity ${i.motionDurationSlow} ease`,textRendering:"auto","&:before":{display:"block"},"&:hover":{color:i.colorTextTertiary}},"&:hover":{[`${c}-clear`]:{opacity:1}}}),[`${c}-has-feedback`]:{[`${c}-clear`]:{insetInlineEnd:p+i.fontSize+i.paddingXS}}}},e=i=>{const{componentCls:c}=i;return[{[c]:{[`&-borderless ${c}-selector`]:{backgroundColor:"transparent !important",borderColor:"transparent !important",boxShadow:"none !important"},[`&${c}-in-form-item`]:{width:"100%"}}},f(i),l(i),r(i),E(i),{[`${c}-rtl`]:{direction:"rtl"}},s(c,(0,M.TS)(i,{borderHoverColor:i.colorPrimaryHover,outlineColor:i.controlOutline})),s(`${c}-status-error`,(0,M.TS)(i,{borderHoverColor:i.colorErrorHover,outlineColor:i.colorErrorOutline}),!0),s(`${c}-status-warning`,(0,M.TS)(i,{borderHoverColor:i.colorWarningHover,outlineColor:i.colorWarningOutline}),!0),(0,H.c)(i,{borderElCls:`${c}-selector`,focusElCls:`${c}-focused`})]};var t=(0,g.Z)("Select",(i,c)=>{let{rootPrefixCls:p}=c;const A=(0,M.TS)(i,{rootPrefixCls:p,inputPaddingHorizontalBase:i.paddingSM-1,multipleSelectItemHeight:i.multipleItemHeight});return[e(A)]},i=>{const{fontSize:c,lineHeight:p,controlHeight:A,controlPaddingHorizontal:x,zIndexPopupBase:C,colorText:S,fontWeightStrong:P,controlItemBgActive:b,controlItemBgHover:L,colorBgContainer:R,colorFillSecondary:T,controlHeightLG:N,controlHeightSM:I,colorBgContainerDisabled:F,colorTextDisabled:U}=i;return{zIndexPopup:C+50,optionSelectedColor:S,optionSelectedFontWeight:P,optionSelectedBg:b,optionActiveBg:L,optionPadding:`${(A-c*p)/2}px ${x}px`,optionFontSize:c,optionLineHeight:p,optionHeight:A,selectorBg:R,clearBg:R,singleItemHeightLG:N,multipleItemBg:T,multipleItemBorderColor:"transparent",multipleItemHeight:I,multipleItemHeightLG:A,multipleSelectorBgDisabled:F,multipleItemColorDisabled:U,multipleItemBorderColorDisabled:"transparent"}})},13458:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return H}});const w=M=>{const D={overflow:{adjustX:!0,adjustY:!0,shiftY:!0},htmlRegion:M==="scroll"?"scroll":"visible",_experimental:{dynamicInset:!0}};return{bottomLeft:Object.assign(Object.assign({},D),{points:["tl","bl"],offset:[0,4]}),bottomRight:Object.assign(Object.assign({},D),{points:["tr","br"],offset:[0,4]}),topLeft:Object.assign(Object.assign({},D),{points:["bl","tl"],offset:[0,-4]}),topRight:Object.assign(Object.assign({},D),{points:["br","tr"],offset:[0,-4]})}};function H(M,g){return M||w(g)}},78642:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return w}});function w(H,M){return M!==void 0?M:H!==null}},46163:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return m}});var w=B(18299),H=B(16646),M=B(73475),g=B(42922),D=B(3407),y=B(72395),v=B(67294);function m(E){let{suffixIcon:h,clearIcon:a,menuItemSelectedIcon:d,removeIcon:_,loading:r,multiple:n,hasFeedback:l,prefixCls:o,showSuffixIcon:s,feedbackIcon:u,showArrow:f,componentName:e}=E;const t=a!=null?a:v.createElement(H.Z,null),i=x=>h===null&&!l&&!f?null:v.createElement(v.Fragment,null,s!==!1&&x,l&&u);let c=null;if(h!==void 0)c=i(h);else if(r)c=i(v.createElement(D.Z,{spin:!0}));else{const x=`${o}-suffix`;c=C=>{let{open:S,showSearch:P}=C;return i(S&&P?v.createElement(y.Z,{className:x}):v.createElement(g.Z,{className:x}))}}let p=null;d!==void 0?p=d:n?p=v.createElement(w.Z,null):p=null;let A=null;return _!==void 0?A=_:A=v.createElement(M.Z,null),{clearIcon:t,suffixIcon:c,itemIcon:p,removeIcon:A}}},46303:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return ye}});var w=B(94184),H=B.n(w),M=B(67294),g=B(53124),D=B(10366),v=q=>{const{prefixCls:Q,className:$,style:j,size:re,shape:k}=q,te=H()({[`${Q}-lg`]:re==="large",[`${Q}-sm`]:re==="small"}),ie=H()({[`${Q}-circle`]:k==="circle",[`${Q}-square`]:k==="square",[`${Q}-round`]:k==="round"}),J=M.useMemo(()=>typeof re=="number"?{width:re,height:re,lineHeight:`${re}px`}:{},[re]);return M.createElement("span",{className:H()(Q,te,ie,$),style:Object.assign(Object.assign({},J),j)})},m=B(45930),E=B(67968),h=B(45503);const a=new m.Keyframes("ant-skeleton-loading",{"0%":{backgroundPosition:"100% 50%"},"100%":{backgroundPosition:"0 50%"}}),d=q=>({height:q,lineHeight:`${q}px`}),_=q=>Object.assign({width:q},d(q)),r=q=>({background:q.skeletonLoadingBackground,backgroundSize:"400% 100%",animationName:a,animationDuration:q.skeletonLoadingMotionDuration,animationTimingFunction:"ease",animationIterationCount:"infinite"}),n=q=>Object.assign({width:q*5,minWidth:q*5},d(q)),l=q=>{const{skeletonAvatarCls:Q,gradientFromColor:$,controlHeight:j,controlHeightLG:re,controlHeightSM:k}=q;return{[`${Q}`]:Object.assign({display:"inline-block",verticalAlign:"top",background:$},_(j)),[`${Q}${Q}-circle`]:{borderRadius:"50%"},[`${Q}${Q}-lg`]:Object.assign({},_(re)),[`${Q}${Q}-sm`]:Object.assign({},_(k))}},o=q=>{const{controlHeight:Q,borderRadiusSM:$,skeletonInputCls:j,controlHeightLG:re,controlHeightSM:k,gradientFromColor:te}=q;return{[`${j}`]:Object.assign({display:"inline-block",verticalAlign:"top",background:te,borderRadius:$},n(Q)),[`${j}-lg`]:Object.assign({},n(re)),[`${j}-sm`]:Object.assign({},n(k))}},s=q=>Object.assign({width:q},d(q)),u=q=>{const{skeletonImageCls:Q,imageSizeBase:$,gradientFromColor:j,borderRadiusSM:re}=q;return{[`${Q}`]:Object.assign(Object.assign({display:"flex",alignItems:"center",justifyContent:"center",verticalAlign:"top",background:j,borderRadius:re},s($*2)),{[`${Q}-path`]:{fill:"#bfbfbf"},[`${Q}-svg`]:Object.assign(Object.assign({},s($)),{maxWidth:$*4,maxHeight:$*4}),[`${Q}-svg${Q}-svg-circle`]:{borderRadius:"50%"}}),[`${Q}${Q}-circle`]:{borderRadius:"50%"}}},f=(q,Q,$)=>{const{skeletonButtonCls:j}=q;return{[`${$}${j}-circle`]:{width:Q,minWidth:Q,borderRadius:"50%"},[`${$}${j}-round`]:{borderRadius:Q}}},e=q=>Object.assign({width:q*2,minWidth:q*2},d(q)),t=q=>{const{borderRadiusSM:Q,skeletonButtonCls:$,controlHeight:j,controlHeightLG:re,controlHeightSM:k,gradientFromColor:te}=q;return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({[`${$}`]:Object.assign({display:"inline-block",verticalAlign:"top",background:te,borderRadius:Q,width:j*2,minWidth:j*2},e(j))},f(q,j,$)),{[`${$}-lg`]:Object.assign({},e(re))}),f(q,re,`${$}-lg`)),{[`${$}-sm`]:Object.assign({},e(k))}),f(q,k,`${$}-sm`))},i=q=>{const{componentCls:Q,skeletonAvatarCls:$,skeletonTitleCls:j,skeletonParagraphCls:re,skeletonButtonCls:k,skeletonInputCls:te,skeletonImageCls:ie,controlHeight:J,controlHeightLG:ce,controlHeightSM:Se,gradientFromColor:Le,padding:ze,marginSM:We,borderRadius:tt,titleHeight:je,blockRadius:pe,paragraphLiHeight:Oe,controlHeightXS:Ie,paragraphMarginTop:Pe}=q;return{[`${Q}`]:{display:"table",width:"100%",[`${Q}-header`]:{display:"table-cell",paddingInlineEnd:ze,verticalAlign:"top",[`${$}`]:Object.assign({display:"inline-block",verticalAlign:"top",background:Le},_(J)),[`${$}-circle`]:{borderRadius:"50%"},[`${$}-lg`]:Object.assign({},_(ce)),[`${$}-sm`]:Object.assign({},_(Se))},[`${Q}-content`]:{display:"table-cell",width:"100%",verticalAlign:"top",[`${j}`]:{width:"100%",height:je,background:Le,borderRadius:pe,[`+ ${re}`]:{marginBlockStart:Se}},[`${re}`]:{padding:0,"> li":{width:"100%",height:Oe,listStyle:"none",background:Le,borderRadius:pe,"+ li":{marginBlockStart:Ie}}},[`${re}> li:last-child:not(:first-child):not(:nth-child(2))`]:{width:"61%"}},[`&-round ${Q}-content`]:{[`${j}, ${re} > li`]:{borderRadius:tt}}},[`${Q}-with-avatar ${Q}-content`]:{[`${j}`]:{marginBlockStart:We,[`+ ${re}`]:{marginBlockStart:Pe}}},[`${Q}${Q}-element`]:Object.assign(Object.assign(Object.assign(Object.assign({display:"inline-block",width:"auto"},t(q)),l(q)),o(q)),u(q)),[`${Q}${Q}-block`]:{width:"100%",[`${k}`]:{width:"100%"},[`${te}`]:{width:"100%"}},[`${Q}${Q}-active`]:{[`
|
|
${j},
|
|
${re} > li,
|
|
${$},
|
|
${k},
|
|
${te},
|
|
${ie}
|
|
`]:Object.assign({},r(q))}}};var c=(0,E.Z)("Skeleton",q=>{const{componentCls:Q}=q,$=(0,h.TS)(q,{skeletonAvatarCls:`${Q}-avatar`,skeletonTitleCls:`${Q}-title`,skeletonParagraphCls:`${Q}-paragraph`,skeletonButtonCls:`${Q}-button`,skeletonInputCls:`${Q}-input`,skeletonImageCls:`${Q}-image`,imageSizeBase:q.controlHeight*1.5,borderRadius:100,skeletonLoadingBackground:`linear-gradient(90deg, ${q.gradientFromColor} 25%, ${q.gradientToColor} 37%, ${q.gradientFromColor} 63%)`,skeletonLoadingMotionDuration:"1.4s"});return[i($)]},q=>{const{colorFillContent:Q,colorFill:$}=q,j=Q,re=$;return{color:j,colorGradientEnd:re,gradientFromColor:j,gradientToColor:re,titleHeight:q.controlHeight/2,blockRadius:q.borderRadiusSM,paragraphMarginTop:q.marginLG+q.marginXXS,paragraphLiHeight:q.controlHeight/2}},{deprecatedTokens:[["color","gradientFromColor"],["colorGradientEnd","gradientToColor"]]}),A=q=>{const{prefixCls:Q,className:$,rootClassName:j,active:re,shape:k="circle",size:te="default"}=q,{getPrefixCls:ie}=M.useContext(g.E_),J=ie("skeleton",Q),[ce,Se]=c(J),Le=(0,D.Z)(q,["prefixCls","className"]),ze=H()(J,`${J}-element`,{[`${J}-active`]:re},$,j,Se);return ce(M.createElement("div",{className:ze},M.createElement(v,Object.assign({prefixCls:`${J}-avatar`,shape:k,size:te},Le))))},C=q=>{const{prefixCls:Q,className:$,rootClassName:j,active:re,block:k=!1,size:te="default"}=q,{getPrefixCls:ie}=M.useContext(g.E_),J=ie("skeleton",Q),[ce,Se]=c(J),Le=(0,D.Z)(q,["prefixCls"]),ze=H()(J,`${J}-element`,{[`${J}-active`]:re,[`${J}-block`]:k},$,j,Se);return ce(M.createElement("div",{className:ze},M.createElement(v,Object.assign({prefixCls:`${J}-button`,size:te},Le))))};const S="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 b=q=>{const{prefixCls:Q,className:$,rootClassName:j,style:re,active:k}=q,{getPrefixCls:te}=M.useContext(g.E_),ie=te("skeleton",Q),[J,ce]=c(ie),Se=H()(ie,`${ie}-element`,{[`${ie}-active`]:k},$,j,ce);return J(M.createElement("div",{className:Se},M.createElement("div",{className:H()(`${ie}-image`,$),style:re},M.createElement("svg",{viewBox:"0 0 1098 1024",xmlns:"http://www.w3.org/2000/svg",className:`${ie}-image-svg`},M.createElement("path",{d:S,className:`${ie}-image-path`})))))},R=q=>{const{prefixCls:Q,className:$,rootClassName:j,active:re,block:k,size:te="default"}=q,{getPrefixCls:ie}=M.useContext(g.E_),J=ie("skeleton",Q),[ce,Se]=c(J),Le=(0,D.Z)(q,["prefixCls"]),ze=H()(J,`${J}-element`,{[`${J}-active`]:re,[`${J}-block`]:k},$,j,Se);return ce(M.createElement("div",{className:ze},M.createElement(v,Object.assign({prefixCls:`${J}-input`,size:te},Le))))},T=B(87462),N={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"},I=N,F=B(74643),U=function(Q,$){return M.createElement(F.Z,(0,T.Z)({},Q,{ref:$,icon:I}))},K=M.forwardRef(U),V=q=>{const{prefixCls:Q,className:$,rootClassName:j,style:re,active:k,children:te}=q,{getPrefixCls:ie}=M.useContext(g.E_),J=ie("skeleton",Q),[ce,Se]=c(J),Le=H()(J,`${J}-element`,{[`${J}-active`]:k},Se,$,j),ze=te!=null?te:M.createElement(K,null);return ce(M.createElement("div",{className:Le},M.createElement("div",{className:H()(`${J}-image`,$),style:re},ze)))},X=B(74902),oe=q=>{const Q=ie=>{const{width:J,rows:ce=2}=q;if(Array.isArray(J))return J[ie];if(ce-1===ie)return J},{prefixCls:$,className:j,style:re,rows:k}=q,te=(0,X.Z)(Array(k)).map((ie,J)=>M.createElement("li",{key:J,style:{width:Q(J)}}));return M.createElement("ul",{className:H()($,j),style:re},te)},Ae=q=>{let{prefixCls:Q,className:$,width:j,style:re}=q;return M.createElement("h3",{className:H()(Q,$),style:Object.assign({width:j},re)})};function fe(q){return q&&typeof q=="object"?q:{}}function he(q,Q){return q&&!Q?{size:"large",shape:"square"}:{size:"large",shape:"circle"}}function ve(q,Q){return!q&&Q?{width:"38%"}:q&&Q?{width:"50%"}:{}}function me(q,Q){const $={};return(!q||!Q)&&($.width="61%"),!q&&Q?$.rows=3:$.rows=2,$}const Te=q=>{const{prefixCls:Q,loading:$,className:j,rootClassName:re,style:k,children:te,avatar:ie=!1,title:J=!0,paragraph:ce=!0,active:Se,round:Le}=q,{getPrefixCls:ze,direction:We,skeleton:tt}=M.useContext(g.E_),je=ze("skeleton",Q),[pe,Oe]=c(je);if($||!("loading"in q)){const Ie=!!ie,Pe=!!J,ot=!!ce;let ht;if(Ie){const Ot=Object.assign(Object.assign({prefixCls:`${je}-avatar`},he(Pe,ot)),fe(ie));ht=M.createElement("div",{className:`${je}-header`},M.createElement(v,Object.assign({},Ot)))}let dt;if(Pe||ot){let Ot;if(Pe){const Xe=Object.assign(Object.assign({prefixCls:`${je}-title`},ve(Ie,ot)),fe(J));Ot=M.createElement(Ae,Object.assign({},Xe))}let Ke;if(ot){const Xe=Object.assign(Object.assign({prefixCls:`${je}-paragraph`},me(Ie,Pe)),fe(ce));Ke=M.createElement(oe,Object.assign({},Xe))}dt=M.createElement("div",{className:`${je}-content`},Ot,Ke)}const At=H()(je,{[`${je}-with-avatar`]:Ie,[`${je}-active`]:Se,[`${je}-rtl`]:We==="rtl",[`${je}-round`]:Le},tt==null?void 0:tt.className,j,re,Oe);return pe(M.createElement("div",{className:At,style:Object.assign(Object.assign({},tt==null?void 0:tt.style),k)},ht,dt))}return typeof te!="undefined"?te:null};Te.Button=C,Te.Avatar=A,Te.Input=R,Te.Image=b,Te.Node=V;var Ce=Te,ye=Ce},93421:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return o}});var w=B(67294),H=B(94184),M=B.n(H),g=B(37419),D=B(53124),y=B(4173);const v=w.createContext({latestIndex:0}),m=v.Provider;var h=s=>{let{className:u,index:f,children:e,split:t,style:i}=s;const{latestIndex:c}=w.useContext(v);return e==null?null:w.createElement(w.Fragment,null,w.createElement("div",{className:u,style:i},e),f<c&&t&&w.createElement("span",{className:`${u}-split`},t))},a=B(51916);function d(s){return["small","middle","large"].includes(s)}function _(s){return s?typeof s=="number"&&!Number.isNaN(s):!1}var r=function(s,u){var f={};for(var e in s)Object.prototype.hasOwnProperty.call(s,e)&&u.indexOf(e)<0&&(f[e]=s[e]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var t=0,e=Object.getOwnPropertySymbols(s);t<e.length;t++)u.indexOf(e[t])<0&&Object.prototype.propertyIsEnumerable.call(s,e[t])&&(f[e[t]]=s[e[t]]);return f};const l=w.forwardRef((s,u)=>{var f,e;const{getPrefixCls:t,space:i,direction:c}=w.useContext(D.E_),{size:p=(i==null?void 0:i.size)||"small",align:A,className:x,rootClassName:C,children:S,direction:P="horizontal",prefixCls:b,split:L,style:R,wrap:T=!1,classNames:N,styles:I}=s,F=r(s,["size","align","className","rootClassName","children","direction","prefixCls","split","style","wrap","classNames","styles"]),[U,K]=Array.isArray(p)?p:[p,p],G=d(K),V=d(U),X=_(K),ee=_(U),oe=(0,g.Z)(S,{keepEmpty:!0}),ue=A===void 0&&P==="horizontal"?"center":A,Ae=t("space",b),[fe,he]=(0,a.Z)(Ae),ve=M()(Ae,i==null?void 0:i.className,he,`${Ae}-${P}`,{[`${Ae}-rtl`]:c==="rtl",[`${Ae}-align-${ue}`]:ue,[`${Ae}-gap-row-${K}`]:G,[`${Ae}-gap-col-${U}`]:V},x,C),me=M()(`${Ae}-item`,(f=N==null?void 0:N.item)!==null&&f!==void 0?f:(e=i==null?void 0:i.classNames)===null||e===void 0?void 0:e.item);let Te=0;const Ce=oe.map((Q,$)=>{var j,re;Q!=null&&(Te=$);const k=Q&&Q.key||`${me}-${$}`;return w.createElement(h,{className:me,key:k,index:$,split:L,style:(j=I==null?void 0:I.item)!==null&&j!==void 0?j:(re=i==null?void 0:i.styles)===null||re===void 0?void 0:re.item},Q)}),ye=w.useMemo(()=>({latestIndex:Te}),[Te]);if(oe.length===0)return null;const q={};return T&&(q.flexWrap="wrap"),!V&&ee&&(q.columnGap=U),!G&&X&&(q.rowGap=K),fe(w.createElement("div",Object.assign({ref:u,className:ve,style:Object.assign(Object.assign(Object.assign({},q),i==null?void 0:i.style),R)},F),w.createElement(m,{value:ye},Ce)))});l.Compact=y.ZP;var o=l},55054:function(ke,_e,B){"use strict";B.d(_e,{default:function(){return c}});var w=B(67294),H=B(57838),M=B(96159),g=B(94184),D=B.n(g),y=B(53124),v=B(46303),E=p=>{const{value:A,formatter:x,precision:C,decimalSeparator:S,groupSeparator:P="",prefixCls:b}=p;let L;if(typeof x=="function")L=x(A);else{const R=String(A),T=R.match(/^(-?)(\d*)(\.(\d+))?$/);if(!T||R==="-")L=R;else{const N=T[1];let I=T[2]||"0",F=T[4]||"";I=I.replace(/\B(?=(\d{3})+(?!\d))/g,P),typeof C=="number"&&(F=F.padEnd(C,"0").slice(0,C>0?C:0)),F&&(F=`${S}${F}`),L=[w.createElement("span",{key:"int",className:`${b}-content-value-int`},N,I),F&&w.createElement("span",{key:"decimal",className:`${b}-content-value-decimal`},F)]}}return w.createElement("span",{className:`${b}-content-value`},L)},h=B(14747),a=B(67968),d=B(45503);const _=p=>{const{componentCls:A,marginXXS:x,padding:C,colorTextDescription:S,titleFontSize:P,colorTextHeading:b,contentFontSize:L,fontFamily:R}=p;return{[`${A}`]:Object.assign(Object.assign({},(0,h.Wf)(p)),{[`${A}-title`]:{marginBottom:x,color:S,fontSize:P},[`${A}-skeleton`]:{paddingTop:C},[`${A}-content`]:{color:b,fontSize:L,fontFamily:R,[`${A}-content-value`]:{display:"inline-block",direction:"ltr"},[`${A}-content-prefix, ${A}-content-suffix`]:{display:"inline-block"},[`${A}-content-prefix`]:{marginInlineEnd:x},[`${A}-content-suffix`]:{marginInlineStart:x}}})}};var r=(0,a.Z)("Statistic",p=>{const A=(0,d.TS)(p,{});return[_(A)]},p=>{const{fontSizeHeading3:A,fontSize:x}=p;return{titleFontSize:x,contentFontSize:A}}),l=p=>{const{prefixCls:A,className:x,rootClassName:C,style:S,valueStyle:P,value:b=0,title:L,valueRender:R,prefix:T,suffix:N,loading:I=!1,onMouseEnter:F,onMouseLeave:U,decimalSeparator:K=".",groupSeparator:G=","}=p,{getPrefixCls:V,direction:X,statistic:ee}=w.useContext(y.E_),oe=V("statistic",A),[ue,Ae]=r(oe),fe=w.createElement(E,Object.assign({decimalSeparator:K,groupSeparator:G,prefixCls:oe},p,{value:b})),he=D()(oe,{[`${oe}-rtl`]:X==="rtl"},ee==null?void 0:ee.className,x,C,Ae);return ue(w.createElement("div",{className:he,style:Object.assign(Object.assign({},ee==null?void 0:ee.style),S),onMouseEnter:F,onMouseLeave:U},L&&w.createElement("div",{className:`${oe}-title`},L),w.createElement(v.Z,{paragraph:!1,loading:I,className:`${oe}-skeleton`},w.createElement("div",{style:P,className:`${oe}-content`},T&&w.createElement("span",{className:`${oe}-content-prefix`},T),R?R(fe):fe,N&&w.createElement("span",{className:`${oe}-content-suffix`},N)))))};const o=[["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 s(p,A){let x=p;const C=/\[[^\]]*]/g,S=(A.match(C)||[]).map(R=>R.slice(1,-1)),P=A.replace(C,"[]"),b=o.reduce((R,T)=>{let[N,I]=T;if(R.includes(N)){const F=Math.floor(x/I);return x-=F*I,R.replace(new RegExp(`${N}+`,"g"),U=>{const K=U.length;return F.toString().padStart(K,"0")})}return R},P);let L=0;return b.replace(C,()=>{const R=S[L];return L+=1,R})}function u(p,A){const{format:x=""}=A,C=new Date(p).getTime(),S=Date.now(),P=Math.max(C-S,0);return s(P,x)}const f=1e3/30;function e(p){return new Date(p).getTime()}const t=p=>{const{value:A,format:x="HH:mm:ss",onChange:C,onFinish:S}=p,P=(0,H.Z)(),b=w.useRef(null),L=()=>{S==null||S(),b.current&&(clearInterval(b.current),b.current=null)},R=()=>{const I=e(A);I>=Date.now()&&(b.current=setInterval(()=>{P(),C==null||C(I-Date.now()),I<Date.now()&&L()},f))};w.useEffect(()=>(R(),()=>{b.current&&(clearInterval(b.current),b.current=null)}),[A]);const T=(I,F)=>u(I,Object.assign(Object.assign({},F),{format:x})),N=I=>(0,M.Tm)(I,{title:void 0});return w.createElement(l,Object.assign({},p,{valueRender:N,formatter:T}))};var i=w.memo(t);l.Countdown=i;var c=l},33507:function(ke,_e){"use strict";const B=w=>({[w.componentCls]:{[`${w.antCls}-motion-collapse-legacy`]:{overflow:"hidden","&-active":{transition:`height ${w.motionDurationMid} ${w.motionEaseInOut},
|
|
opacity ${w.motionDurationMid} ${w.motionEaseInOut} !important`}},[`${w.antCls}-motion-collapse`]:{overflow:"hidden",transition:`height ${w.motionDurationMid} ${w.motionEaseInOut},
|
|
opacity ${w.motionDurationMid} ${w.motionEaseInOut} !important`}}});_e.Z=B},33297:function(ke,_e,B){"use strict";B.d(_e,{Fm:function(){return d}});var w=B(45930),H=B(93590);const M=new w.Keyframes("antMoveDownIn",{"0%":{transform:"translate3d(0, 100%, 0)",transformOrigin:"0 0",opacity:0},"100%":{transform:"translate3d(0, 0, 0)",transformOrigin:"0 0",opacity:1}}),g=new w.Keyframes("antMoveDownOut",{"0%":{transform:"translate3d(0, 0, 0)",transformOrigin:"0 0",opacity:1},"100%":{transform:"translate3d(0, 100%, 0)",transformOrigin:"0 0",opacity:0}}),D=new w.Keyframes("antMoveLeftIn",{"0%":{transform:"translate3d(-100%, 0, 0)",transformOrigin:"0 0",opacity:0},"100%":{transform:"translate3d(0, 0, 0)",transformOrigin:"0 0",opacity:1}}),y=new w.Keyframes("antMoveLeftOut",{"0%":{transform:"translate3d(0, 0, 0)",transformOrigin:"0 0",opacity:1},"100%":{transform:"translate3d(-100%, 0, 0)",transformOrigin:"0 0",opacity:0}}),v=new w.Keyframes("antMoveRightIn",{"0%":{transform:"translate3d(100%, 0, 0)",transformOrigin:"0 0",opacity:0},"100%":{transform:"translate3d(0, 0, 0)",transformOrigin:"0 0",opacity:1}}),m=new w.Keyframes("antMoveRightOut",{"0%":{transform:"translate3d(0, 0, 0)",transformOrigin:"0 0",opacity:1},"100%":{transform:"translate3d(100%, 0, 0)",transformOrigin:"0 0",opacity:0}}),E=new w.Keyframes("antMoveUpIn",{"0%":{transform:"translate3d(0, -100%, 0)",transformOrigin:"0 0",opacity:0},"100%":{transform:"translate3d(0, 0, 0)",transformOrigin:"0 0",opacity:1}}),h=new w.Keyframes("antMoveUpOut",{"0%":{transform:"translate3d(0, 0, 0)",transformOrigin:"0 0",opacity:1},"100%":{transform:"translate3d(0, -100%, 0)",transformOrigin:"0 0",opacity:0}}),a={"move-up":{inKeyframes:E,outKeyframes:h},"move-down":{inKeyframes:M,outKeyframes:g},"move-left":{inKeyframes:D,outKeyframes:y},"move-right":{inKeyframes:v,outKeyframes:m}},d=(_,r)=>{const{antCls:n}=_,l=`${n}-${r}`,{inKeyframes:o,outKeyframes:s}=a[r];return[(0,H.R)(l,o,s,_.motionDurationMid),{[`
|
|
${l}-enter,
|
|
${l}-appear
|
|
`]:{opacity:0,animationTimingFunction:_.motionEaseOutCirc},[`${l}-leave`]:{animationTimingFunction:_.motionEaseInOutCirc}}]}},67771:function(ke,_e,B){"use strict";B.d(_e,{Qt:function(){return D},Uw:function(){return g},fJ:function(){return M},ly:function(){return y},oN:function(){return d}});var w=B(45930),H=B(93590);const M=new w.Keyframes("antSlideUpIn",{"0%":{transform:"scaleY(0.8)",transformOrigin:"0% 0%",opacity:0},"100%":{transform:"scaleY(1)",transformOrigin:"0% 0%",opacity:1}}),g=new w.Keyframes("antSlideUpOut",{"0%":{transform:"scaleY(1)",transformOrigin:"0% 0%",opacity:1},"100%":{transform:"scaleY(0.8)",transformOrigin:"0% 0%",opacity:0}}),D=new w.Keyframes("antSlideDownIn",{"0%":{transform:"scaleY(0.8)",transformOrigin:"100% 100%",opacity:0},"100%":{transform:"scaleY(1)",transformOrigin:"100% 100%",opacity:1}}),y=new w.Keyframes("antSlideDownOut",{"0%":{transform:"scaleY(1)",transformOrigin:"100% 100%",opacity:1},"100%":{transform:"scaleY(0.8)",transformOrigin:"100% 100%",opacity:0}}),v=new w.Keyframes("antSlideLeftIn",{"0%":{transform:"scaleX(0.8)",transformOrigin:"0% 0%",opacity:0},"100%":{transform:"scaleX(1)",transformOrigin:"0% 0%",opacity:1}}),m=new w.Keyframes("antSlideLeftOut",{"0%":{transform:"scaleX(1)",transformOrigin:"0% 0%",opacity:1},"100%":{transform:"scaleX(0.8)",transformOrigin:"0% 0%",opacity:0}}),E=new w.Keyframes("antSlideRightIn",{"0%":{transform:"scaleX(0.8)",transformOrigin:"100% 0%",opacity:0},"100%":{transform:"scaleX(1)",transformOrigin:"100% 0%",opacity:1}}),h=new w.Keyframes("antSlideRightOut",{"0%":{transform:"scaleX(1)",transformOrigin:"100% 0%",opacity:1},"100%":{transform:"scaleX(0.8)",transformOrigin:"100% 0%",opacity:0}}),a={"slide-up":{inKeyframes:M,outKeyframes:g},"slide-down":{inKeyframes:D,outKeyframes:y},"slide-left":{inKeyframes:v,outKeyframes:m},"slide-right":{inKeyframes:E,outKeyframes:h}},d=(_,r)=>{const{antCls:n}=_,l=`${n}-${r}`,{inKeyframes:o,outKeyframes:s}=a[r];return[(0,H.R)(l,o,s,_.motionDurationMid),{[`
|
|
${l}-enter,
|
|
${l}-appear
|
|
`]:{transform:"scale(0)",transformOrigin:"0% 0%",opacity:0,animationTimingFunction:_.motionEaseOutQuint,"&-prepare":{transform:"scale(1)"}},[`${l}-leave`]:{animationTimingFunction:_.motionEaseInQuint}}]}},66309:function(ke,_e,B){"use strict";B.d(_e,{default:function(){return C}});var w=B(67294),H=B(73475),M=B(94184),g=B.n(M),D=B(98787),y=B(69760),v=B(45353),m=B(53124),E=B(14747),h=B(45503),a=B(67968);const d=S=>{const{paddingXXS:P,lineWidth:b,tagPaddingHorizontal:L,componentCls:R}=S,T=L-b,N=P-b;return{[R]:Object.assign(Object.assign({},(0,E.Wf)(S)),{display:"inline-block",height:"auto",marginInlineEnd:S.marginXS,paddingInline:T,fontSize:S.tagFontSize,lineHeight:S.tagLineHeight,whiteSpace:"nowrap",background:S.defaultBg,border:`${S.lineWidth}px ${S.lineType} ${S.colorBorder}`,borderRadius:S.borderRadiusSM,opacity:1,transition:`all ${S.motionDurationMid}`,textAlign:"start",position:"relative",[`&${R}-rtl`]:{direction:"rtl"},"&, a, a:hover":{color:S.defaultColor},[`${R}-close-icon`]:{marginInlineStart:N,color:S.colorTextDescription,fontSize:S.tagIconSize,cursor:"pointer",transition:`all ${S.motionDurationMid}`,"&:hover":{color:S.colorTextHeading}},[`&${R}-has-color`]:{borderColor:"transparent",[`&, a, a:hover, ${S.iconCls}-close, ${S.iconCls}-close:hover`]:{color:S.colorTextLightSolid}},"&-checkable":{backgroundColor:"transparent",borderColor:"transparent",cursor:"pointer",[`&:not(${R}-checkable-checked):hover`]:{color:S.colorPrimary,backgroundColor:S.colorFillSecondary},"&:active, &-checked":{color:S.colorTextLightSolid},"&-checked":{backgroundColor:S.colorPrimary,"&:hover":{backgroundColor:S.colorPrimaryHover}},"&:active":{backgroundColor:S.colorPrimaryActive}},"&-hidden":{display:"none"},[`> ${S.iconCls} + span, > span + ${S.iconCls}`]:{marginInlineStart:T}}),[`${R}-borderless`]:{borderColor:"transparent",background:S.tagBorderlessBg}}},_=S=>{const{lineWidth:P,fontSizeIcon:b}=S,L=S.fontSizeSM,R=`${S.lineHeightSM*L}px`;return(0,h.TS)(S,{tagFontSize:L,tagLineHeight:R,tagIconSize:b-2*P,tagPaddingHorizontal:8,tagBorderlessBg:S.colorFillTertiary})},r=S=>({defaultBg:S.colorFillQuaternary,defaultColor:S.colorText});var n=(0,a.Z)("Tag",S=>{const P=_(S);return d(P)},r),l=function(S,P){var b={};for(var L in S)Object.prototype.hasOwnProperty.call(S,L)&&P.indexOf(L)<0&&(b[L]=S[L]);if(S!=null&&typeof Object.getOwnPropertySymbols=="function")for(var R=0,L=Object.getOwnPropertySymbols(S);R<L.length;R++)P.indexOf(L[R])<0&&Object.prototype.propertyIsEnumerable.call(S,L[R])&&(b[L[R]]=S[L[R]]);return b},s=S=>{const{prefixCls:P,style:b,className:L,checked:R,onChange:T,onClick:N}=S,I=l(S,["prefixCls","style","className","checked","onChange","onClick"]),{getPrefixCls:F,tag:U}=w.useContext(m.E_),K=oe=>{T==null||T(!R),N==null||N(oe)},G=F("tag",P),[V,X]=n(G),ee=g()(G,`${G}-checkable`,{[`${G}-checkable-checked`]:R},U==null?void 0:U.className,L,X);return V(w.createElement("span",Object.assign({},I,{style:Object.assign(Object.assign({},b),U==null?void 0:U.style),className:ee,onClick:K})))},u=B(98719);const f=S=>(0,u.Z)(S,(P,b)=>{let{textColor:L,lightBorderColor:R,lightColor:T,darkColor:N}=b;return{[`${S.componentCls}-${P}`]:{color:L,background:T,borderColor:R,"&-inverse":{color:S.colorTextLightSolid,background:N,borderColor:N},[`&${S.componentCls}-borderless`]:{borderColor:"transparent"}}}});var e=(0,a.b)(["Tag","preset"],S=>{const P=_(S);return f(P)},r);function t(S){return typeof S!="string"?S:S.charAt(0).toUpperCase()+S.slice(1)}const i=(S,P,b)=>{const L=t(b);return{[`${S.componentCls}-${P}`]:{color:S[`color${b}`],background:S[`color${L}Bg`],borderColor:S[`color${L}Border`],[`&${S.componentCls}-borderless`]:{borderColor:"transparent"}}}};var c=(0,a.b)(["Tag","status"],S=>{const P=_(S);return[i(P,"success","Success"),i(P,"processing","Info"),i(P,"error","Error"),i(P,"warning","Warning")]},r),p=function(S,P){var b={};for(var L in S)Object.prototype.hasOwnProperty.call(S,L)&&P.indexOf(L)<0&&(b[L]=S[L]);if(S!=null&&typeof Object.getOwnPropertySymbols=="function")for(var R=0,L=Object.getOwnPropertySymbols(S);R<L.length;R++)P.indexOf(L[R])<0&&Object.prototype.propertyIsEnumerable.call(S,L[R])&&(b[L[R]]=S[L[R]]);return b};const A=(S,P)=>{const{prefixCls:b,className:L,rootClassName:R,style:T,children:N,icon:I,color:F,onClose:U,closeIcon:K,closable:G,bordered:V=!0}=S,X=p(S,["prefixCls","className","rootClassName","style","children","icon","color","onClose","closeIcon","closable","bordered"]),{getPrefixCls:ee,direction:oe,tag:ue}=w.useContext(m.E_),[Ae,fe]=w.useState(!0);w.useEffect(()=>{"visible"in X&&fe(X.visible)},[X.visible]);const he=(0,D.o2)(F),ve=(0,D.yT)(F),me=he||ve,Te=Object.assign(Object.assign({backgroundColor:F&&!me?F:void 0},ue==null?void 0:ue.style),T),Ce=ee("tag",b),[ye,q]=n(Ce),Q=g()(Ce,ue==null?void 0:ue.className,{[`${Ce}-${F}`]:me,[`${Ce}-has-color`]:F&&!me,[`${Ce}-hidden`]:!Ae,[`${Ce}-rtl`]:oe==="rtl",[`${Ce}-borderless`]:!V},L,R,q),$=J=>{J.stopPropagation(),U==null||U(J),!J.defaultPrevented&&fe(!1)},[,j]=(0,y.Z)(G,K,J=>J===null?w.createElement(H.Z,{className:`${Ce}-close-icon`,onClick:$}):w.createElement("span",{className:`${Ce}-close-icon`,onClick:$},J),null,!1),re=typeof X.onClick=="function"||N&&N.type==="a",k=I||null,te=k?w.createElement(w.Fragment,null,k,N&&w.createElement("span",null,N)):N,ie=w.createElement("span",Object.assign({},X,{ref:P,className:Q,style:Te}),te,j,he&&w.createElement(e,{key:"preset",prefixCls:Ce}),ve&&w.createElement(c,{key:"status",prefixCls:Ce}));return ye(re?w.createElement(v.Z,{component:"Tag"},ie):ie)},x=w.forwardRef(A);x.CheckableTag=s;var C=x},72665:function(ke,_e){"use strict";var B;var w=typeof Symbol=="function"&&Symbol.for,H=w?Symbol.for("react.element"):60103,M=w?Symbol.for("react.portal"):60106,g=w?Symbol.for("react.fragment"):60107,D=w?Symbol.for("react.strict_mode"):60108,y=w?Symbol.for("react.profiler"):60114,v=w?Symbol.for("react.provider"):60109,m=w?Symbol.for("react.context"):60110,E=w?Symbol.for("react.async_mode"):60111,h=w?Symbol.for("react.concurrent_mode"):60111,a=w?Symbol.for("react.forward_ref"):60112,d=w?Symbol.for("react.suspense"):60113,_=w?Symbol.for("react.suspense_list"):60120,r=w?Symbol.for("react.memo"):60115,n=w?Symbol.for("react.lazy"):60116,l=w?Symbol.for("react.block"):60121,o=w?Symbol.for("react.fundamental"):60117,s=w?Symbol.for("react.responder"):60118,u=w?Symbol.for("react.scope"):60119;function f(t){if(typeof t=="object"&&t!==null){var i=t.$$typeof;switch(i){case H:switch(t=t.type,t){case E:case h:case g:case y:case D:case d:return t;default:switch(t=t&&t.$$typeof,t){case m:case a:case n:case r:case v:return t;default:return i}}case M:return i}}}function e(t){return f(t)===h}B=E,B=h,B=m,B=v,B=H,B=a,B=g,B=n,B=r,B=M,B=y,B=D,B=d,B=function(t){return e(t)||f(t)===E},B=e,B=function(t){return f(t)===m},B=function(t){return f(t)===v},B=function(t){return typeof t=="object"&&t!==null&&t.$$typeof===H},B=function(t){return f(t)===a},B=function(t){return f(t)===g},B=function(t){return f(t)===n},_e.isMemo=function(t){return f(t)===r},B=function(t){return f(t)===M},B=function(t){return f(t)===y},B=function(t){return f(t)===D},B=function(t){return f(t)===d},B=function(t){return typeof t=="string"||typeof t=="function"||t===g||t===h||t===y||t===D||t===d||t===_||typeof t=="object"&&t!==null&&(t.$$typeof===n||t.$$typeof===r||t.$$typeof===v||t.$$typeof===m||t.$$typeof===a||t.$$typeof===o||t.$$typeof===s||t.$$typeof===u||t.$$typeof===l)},B=f},12060:function(ke,_e,B){"use strict";ke.exports=B(72665)},41771:function(ke,_e){"use strict";var B;var w=typeof Symbol=="function"&&Symbol.for,H=w?Symbol.for("react.element"):60103,M=w?Symbol.for("react.portal"):60106,g=w?Symbol.for("react.fragment"):60107,D=w?Symbol.for("react.strict_mode"):60108,y=w?Symbol.for("react.profiler"):60114,v=w?Symbol.for("react.provider"):60109,m=w?Symbol.for("react.context"):60110,E=w?Symbol.for("react.async_mode"):60111,h=w?Symbol.for("react.concurrent_mode"):60111,a=w?Symbol.for("react.forward_ref"):60112,d=w?Symbol.for("react.suspense"):60113,_=w?Symbol.for("react.suspense_list"):60120,r=w?Symbol.for("react.memo"):60115,n=w?Symbol.for("react.lazy"):60116,l=w?Symbol.for("react.block"):60121,o=w?Symbol.for("react.fundamental"):60117,s=w?Symbol.for("react.responder"):60118,u=w?Symbol.for("react.scope"):60119;function f(t){if(typeof t=="object"&&t!==null){var i=t.$$typeof;switch(i){case H:switch(t=t.type,t){case E:case h:case g:case y:case D:case d:return t;default:switch(t=t&&t.$$typeof,t){case m:case a:case n:case r:case v:return t;default:return i}}case M:return i}}}function e(t){return f(t)===h}B=E,B=h,B=m,B=v,B=H,B=a,B=g,B=n,B=r,B=M,B=y,B=D,B=d,B=function(t){return e(t)||f(t)===E},B=e,B=function(t){return f(t)===m},B=function(t){return f(t)===v},B=function(t){return typeof t=="object"&&t!==null&&t.$$typeof===H},B=function(t){return f(t)===a},_e.isFragment=function(t){return f(t)===g},B=function(t){return f(t)===n},B=function(t){return f(t)===r},B=function(t){return f(t)===M},B=function(t){return f(t)===y},B=function(t){return f(t)===D},B=function(t){return f(t)===d},B=function(t){return typeof t=="string"||typeof t=="function"||t===g||t===h||t===y||t===D||t===d||t===_||typeof t=="object"&&t!==null&&(t.$$typeof===n||t.$$typeof===r||t.$$typeof===v||t.$$typeof===m||t.$$typeof===a||t.$$typeof===o||t.$$typeof===s||t.$$typeof===u||t.$$typeof===l)},B=f},47655:function(ke,_e,B){"use strict";ke.exports=B(41771)},64701:function(ke,_e,B){"use strict";B.r(_e),B.d(_e,{ResizableTextArea:function(){return G},default:function(){return Ae}});var w=B(87462),H=B(1413),M=B(4942),g=B(71002),D=B(97685),y=B(45987),v=B(74902),m=B(94184),E=B.n(m),h=B(67656),a=B(87887),d=B(67294);function _(fe){var he=d.useRef();he.current=fe;var ve=d.useCallback(function(){for(var me,Te=arguments.length,Ce=new Array(Te),ye=0;ye<Te;ye++)Ce[ye]=arguments[ye];return(me=he.current)===null||me===void 0?void 0:me.call.apply(me,[he].concat(Ce))},[]);return ve}function r(){return!!(typeof window!="undefined"&&window.document&&window.document.createElement)}var n=r()?d.useLayoutEffect:d.useEffect,l=n,o=function(he,ve){var me=d.useRef(!0);n(function(){if(!me.current)return he()},ve),n(function(){return me.current=!1,function(){me.current=!0}},[])};function s(fe){var he=d.useRef(!1),ve=d.useState(fe),me=(0,D.Z)(ve,2),Te=me[0],Ce=me[1];d.useEffect(function(){return he.current=!1,function(){he.current=!0}},[]);function ye(q,Q){Q&&he.current||Ce(q)}return[Te,ye]}function u(fe){return fe!==void 0}function f(fe,he){var ve=he||{},me=ve.defaultValue,Te=ve.value,Ce=ve.onChange,ye=ve.postState,q=s(function(){return u(Te)?Te:u(me)?typeof me=="function"?me():me:typeof fe=="function"?fe():fe}),Q=(0,D.Z)(q,2),$=Q[0],j=Q[1],re=Te!==void 0?Te:$,k=ye?ye(re):re,te=_(Ce),ie=s([re]),J=(0,D.Z)(ie,2),ce=J[0],Se=J[1];o(function(){var ze=ce[0];$!==ze&&te($,ze)},[ce]),o(function(){u(Te)||j(Te)},[Te]);var Le=_(function(ze,We){j(ze,We),Se([re],We)});return[k,Le]}var e=B(48555),t=function(he){return+setTimeout(he,16)},i=function(he){return clearTimeout(he)};typeof window!="undefined"&&"requestAnimationFrame"in window&&(t=function(he){return window.requestAnimationFrame(he)},i=function(he){return window.cancelAnimationFrame(he)});var c=0,p=new Map;function A(fe){p.delete(fe)}var x=function(he){var ve=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1;c+=1;var me=c;function Te(Ce){if(Ce===0)A(me),he();else{var ye=t(function(){Te(Ce-1)});p.set(me,ye)}}return Te(ve),me};x.cancel=function(fe){var he=p.get(fe);return A(he),i(he)};var C=x,S=`
|
|
min-height:0 !important;
|
|
max-height:none !important;
|
|
height:0 !important;
|
|
visibility:hidden !important;
|
|
overflow:hidden !important;
|
|
position:absolute !important;
|
|
z-index:-1000 !important;
|
|
top:0 !important;
|
|
right:0 !important;
|
|
pointer-events: none !important;
|
|
`,P=["letter-spacing","line-height","padding-top","padding-bottom","font-family","font-weight","font-size","font-variant","text-rendering","text-transform","width","text-indent","padding-left","padding-right","border-width","box-sizing","word-break","white-space"],b={},L;function R(fe){var he=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,ve=fe.getAttribute("id")||fe.getAttribute("data-reactid")||fe.getAttribute("name");if(he&&b[ve])return b[ve];var me=window.getComputedStyle(fe),Te=me.getPropertyValue("box-sizing")||me.getPropertyValue("-moz-box-sizing")||me.getPropertyValue("-webkit-box-sizing"),Ce=parseFloat(me.getPropertyValue("padding-bottom"))+parseFloat(me.getPropertyValue("padding-top")),ye=parseFloat(me.getPropertyValue("border-bottom-width"))+parseFloat(me.getPropertyValue("border-top-width")),q=P.map(function($){return"".concat($,":").concat(me.getPropertyValue($))}).join(";"),Q={sizingStyle:q,paddingSize:Ce,borderSize:ye,boxSizing:Te};return he&&ve&&(b[ve]=Q),Q}function T(fe){var he=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,ve=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,me=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;L||(L=document.createElement("textarea"),L.setAttribute("tab-index","-1"),L.setAttribute("aria-hidden","true"),document.body.appendChild(L)),fe.getAttribute("wrap")?L.setAttribute("wrap",fe.getAttribute("wrap")):L.removeAttribute("wrap");var Te=R(fe,he),Ce=Te.paddingSize,ye=Te.borderSize,q=Te.boxSizing,Q=Te.sizingStyle;L.setAttribute("style","".concat(Q,";").concat(S)),L.value=fe.value||fe.placeholder||"";var $=void 0,j=void 0,re,k=L.scrollHeight;if(q==="border-box"?k+=ye:q==="content-box"&&(k-=Ce),ve!==null||me!==null){L.value=" ";var te=L.scrollHeight-Ce;ve!==null&&($=te*ve,q==="border-box"&&($=$+Ce+ye),k=Math.max($,k)),me!==null&&(j=te*me,q==="border-box"&&(j=j+Ce+ye),re=k>j?"":"hidden",k=Math.min(j,k))}var ie={height:k,overflowY:re,resize:"none"};return $&&(ie.minHeight=$),j&&(ie.maxHeight=j),ie}var N=["prefixCls","onPressEnter","defaultValue","value","autoSize","onResize","className","style","disabled","onChange","onInternalAutoSize"],I=0,F=1,U=2,K=d.forwardRef(function(fe,he){var ve=fe,me=ve.prefixCls,Te=ve.onPressEnter,Ce=ve.defaultValue,ye=ve.value,q=ve.autoSize,Q=ve.onResize,$=ve.className,j=ve.style,re=ve.disabled,k=ve.onChange,te=ve.onInternalAutoSize,ie=(0,y.Z)(ve,N),J=f(Ce,{value:ye,postState:function(De){return De!=null?De:""}}),ce=(0,D.Z)(J,2),Se=ce[0],Le=ce[1],ze=function(De){Le(De.target.value),k==null||k(De)},We=d.useRef();d.useImperativeHandle(he,function(){return{textArea:We.current}});var tt=d.useMemo(function(){return q&&(0,g.Z)(q)==="object"?[q.minRows,q.maxRows]:[]},[q]),je=(0,D.Z)(tt,2),pe=je[0],Oe=je[1],Ie=!!q,Pe=function(){try{if(document.activeElement===We.current){var De=We.current,nt=De.selectionStart,qe=De.selectionEnd,rt=De.scrollTop;We.current.setSelectionRange(nt,qe),We.current.scrollTop=rt}}catch(ft){}},ot=d.useState(U),ht=(0,D.Z)(ot,2),dt=ht[0],At=ht[1],Ot=d.useState(),Ke=(0,D.Z)(Ot,2),Xe=Ke[0],Je=Ke[1],Nt=function(){At(I)};l(function(){Ie&&Nt()},[ye,pe,Oe,Ie]),l(function(){if(dt===I)At(F);else if(dt===F){var Ue=T(We.current,!1,pe,Oe);At(U),Je(Ue)}else Pe()},[dt]);var ut=d.useRef(),Kt=function(){C.cancel(ut.current)},_t=function(De){dt===U&&(Q==null||Q(De),q&&(Kt(),ut.current=C(function(){Nt()})))};d.useEffect(function(){return Kt},[]);var ge=Ie?Xe:null,we=(0,H.Z)((0,H.Z)({},j),ge);return(dt===I||dt===F)&&(we.overflowY="hidden",we.overflowX="hidden"),d.createElement(e.Z,{onResize:_t,disabled:!(q||Q)},d.createElement("textarea",(0,w.Z)({},ie,{ref:We,style:we,className:E()(me,$,(0,M.Z)({},"".concat(me,"-disabled"),re)),disabled:re,value:Se,onChange:ze})))}),G=K,V=["defaultValue","value","onFocus","onBlur","onChange","allowClear","maxLength","onCompositionStart","onCompositionEnd","suffix","prefixCls","classes","showCount","className","style","disabled","hidden","classNames","styles","onResize"];function X(fe,he){return(0,v.Z)(fe||"").slice(0,he).join("")}function ee(fe,he,ve,me){var Te=ve;return fe?Te=X(ve,me):(0,v.Z)(he||"").length<ve.length&&(0,v.Z)(ve||"").length>me&&(Te=he),Te}var oe=d.forwardRef(function(fe,he){var ve,me=fe.defaultValue,Te=fe.value,Ce=fe.onFocus,ye=fe.onBlur,q=fe.onChange,Q=fe.allowClear,$=fe.maxLength,j=fe.onCompositionStart,re=fe.onCompositionEnd,k=fe.suffix,te=fe.prefixCls,ie=te===void 0?"rc-textarea":te,J=fe.classes,ce=fe.showCount,Se=fe.className,Le=fe.style,ze=fe.disabled,We=fe.hidden,tt=fe.classNames,je=fe.styles,pe=fe.onResize,Oe=(0,y.Z)(fe,V),Ie=f(me,{value:Te,defaultValue:me}),Pe=(0,D.Z)(Ie,2),ot=Pe[0],ht=Pe[1],dt=(0,d.useRef)(null),At=d.useState(!1),Ot=(0,D.Z)(At,2),Ke=Ot[0],Xe=Ot[1],Je=d.useState(!1),Nt=(0,D.Z)(Je,2),ut=Nt[0],Kt=Nt[1],_t=d.useRef(),ge=d.useRef(0),we=d.useState(null),Ue=(0,D.Z)(we,2),De=Ue[0],nt=Ue[1],qe=function(){var st;(st=dt.current)===null||st===void 0||st.textArea.focus()};(0,d.useImperativeHandle)(he,function(){return{resizableTextArea:dt.current,focus:qe,blur:function(){var st;(st=dt.current)===null||st===void 0||st.textArea.blur()}}}),(0,d.useEffect)(function(){Xe(function(Ut){return!ze&&Ut})},[ze]);var rt=Number($)>0,ft=function(st){Kt(!0),_t.current=ot,ge.current=st.currentTarget.selectionStart,j==null||j(st)},Tt=function(st){Kt(!1);var bt=st.currentTarget.value;if(rt){var wt,gt=ge.current>=$+1||ge.current===((wt=_t.current)===null||wt===void 0?void 0:wt.length);bt=ee(gt,_t.current,bt,$)}bt!==ot&&(ht(bt),(0,a.rJ)(st.currentTarget,st,q,bt)),re==null||re(st)},Ze=function(st){var bt=st.target.value;if(!ut&&rt){var wt=st.target.selectionStart>=$+1||st.target.selectionStart===bt.length||!st.target.selectionStart;bt=ee(wt,ot,bt,$)}ht(bt),(0,a.rJ)(st.currentTarget,st,q,bt)},O=function(st){var bt=Oe.onPressEnter,wt=Oe.onKeyDown;st.key==="Enter"&&bt&&bt(st),wt==null||wt(st)},W=function(st){Xe(!0),Ce==null||Ce(st)},z=function(st){Xe(!1),ye==null||ye(st)},Z=function(st){var bt;ht(""),qe(),(0,a.rJ)((bt=dt.current)===null||bt===void 0?void 0:bt.textArea,st,q)},Y=(0,a.D7)(ot);!ut&&rt&&Te==null&&(Y=X(Y,$));var se=k,xe;if(ce){var lt=(0,v.Z)(Y).length;(0,g.Z)(ce)==="object"?xe=ce.formatter({value:Y,count:lt,maxLength:$}):xe="".concat(lt).concat(rt?" / ".concat($):""),se=d.createElement(d.Fragment,null,se,d.createElement("span",{className:E()("".concat(ie,"-data-count"),tt==null?void 0:tt.count),style:je==null?void 0:je.count},xe))}var Ve=function(st){var bt;pe==null||pe(st),(bt=dt.current)!==null&&bt!==void 0&&bt.textArea.style.height&&nt(!0)},Rt=!Oe.autoSize&&!ce&&!Q,kt=d.createElement(h.BaseInput,{value:Y,allowClear:Q,handleReset:Z,suffix:se,prefixCls:ie,classes:{affixWrapper:E()(J==null?void 0:J.affixWrapper,(ve={},(0,M.Z)(ve,"".concat(ie,"-show-count"),ce),(0,M.Z)(ve,"".concat(ie,"-textarea-allow-clear"),Q),ve))},disabled:ze,focused:Ke,className:Se,style:(0,H.Z)((0,H.Z)({},Le),De&&!Rt?{height:"auto"}:{}),dataAttrs:{affixWrapper:{"data-count":typeof xe=="string"?xe:void 0}},hidden:We,inputElement:d.createElement(G,(0,w.Z)({},Oe,{onKeyDown:O,onChange:Ze,onFocus:W,onBlur:z,onCompositionStart:ft,onCompositionEnd:Tt,className:tt==null?void 0:tt.textarea,style:(0,H.Z)((0,H.Z)({},je==null?void 0:je.textarea),{},{resize:Le==null?void 0:Le.resize}),disabled:ze,prefixCls:ie,onResize:Ve,ref:dt}))});return kt}),ue=oe,Ae=ue},1337:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return m}});var w=B(1413),H=`accept acceptCharset accessKey action allowFullScreen allowTransparency
|
|
alt async autoComplete autoFocus autoPlay capture cellPadding cellSpacing challenge
|
|
charSet checked classID className colSpan cols content contentEditable contextMenu
|
|
controls coords crossOrigin data dateTime default defer dir disabled download draggable
|
|
encType form formAction formEncType formMethod formNoValidate formTarget frameBorder
|
|
headers height hidden high href hrefLang htmlFor httpEquiv icon id inputMode integrity
|
|
is keyParams keyType kind label lang list loop low manifest marginHeight marginWidth max maxLength media
|
|
mediaGroup method min minLength multiple muted name noValidate nonce open
|
|
optimum pattern placeholder poster preload radioGroup readOnly rel required
|
|
reversed role rowSpan rows sandbox scope scoped scrolling seamless selected
|
|
shape size sizes span spellCheck src srcDoc srcLang srcSet start step style
|
|
summary tabIndex target title type useMap value width wmode wrap`,M=`onCopy onCut onPaste onCompositionEnd onCompositionStart onCompositionUpdate onKeyDown
|
|
onKeyPress onKeyUp onFocus onBlur onChange onInput onSubmit onClick onContextMenu onDoubleClick
|
|
onDrag onDragEnd onDragEnter onDragExit onDragLeave onDragOver onDragStart onDrop onMouseDown
|
|
onMouseEnter onMouseLeave onMouseMove onMouseOut onMouseOver onMouseUp onSelect onTouchCancel
|
|
onTouchEnd onTouchMove onTouchStart onScroll onWheel onAbort onCanPlay onCanPlayThrough
|
|
onDurationChange onEmptied onEncrypted onEnded onError onLoadedData onLoadedMetadata
|
|
onLoadStart onPause onPlay onPlaying onProgress onRateChange onSeeked onSeeking onStalled onSuspend onTimeUpdate onVolumeChange onWaiting onLoad onError`,g="".concat(H," ").concat(M).split(/[\s\n]+/),D="aria-",y="data-";function v(E,h){return E.indexOf(h)===0}function m(E){var h=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,a;h===!1?a={aria:!0,data:!0,attr:!0}:h===!0?a={aria:!0}:a=(0,w.Z)({},h);var d={};return Object.keys(E).forEach(function(_){(a.aria&&(_==="role"||v(_,D))||a.data&&v(_,y)||a.attr&&g.includes(_))&&(d[_]=E[_])}),d}},87155:function(ke,_e,B){"use strict";Object.defineProperty(_e,"__esModule",{value:!0}),_e.default=void 0;var w=Object.assign||function(l){for(var o=1;o<arguments.length;o++){var s=arguments[o];for(var u in s)Object.prototype.hasOwnProperty.call(s,u)&&(l[u]=s[u])}return l},H=function(){function l(o,s){for(var u=0;u<s.length;u++){var f=s[u];f.enumerable=f.enumerable||!1,f.configurable=!0,"value"in f&&(f.writable=!0),Object.defineProperty(o,f.key,f)}}return function(o,s,u){return s&&l(o.prototype,s),u&&l(o,u),o}}(),M=B(67294),g=a(M),D=B(45697),y=a(D),v=B(72984),m=a(v),E=B(18587),h=B(52211);function a(l){return l&&l.__esModule?l:{default:l}}function d(l,o){if(!(l instanceof o))throw new TypeError("Cannot call a class as a function")}function _(l,o){if(!l)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return o&&(typeof o=="object"||typeof o=="function")?o:l}function r(l,o){if(typeof o!="function"&&o!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof o);l.prototype=Object.create(o&&o.prototype,{constructor:{value:l,enumerable:!1,writable:!0,configurable:!0}}),o&&(Object.setPrototypeOf?Object.setPrototypeOf(l,o):l.__proto__=o)}var n=function(l){r(o,l);function o(s){d(this,o);var u=_(this,(o.__proto__||Object.getPrototypeOf(o)).call(this,s));return u.getEchartsInstance=function(){return u.echartsLib.getInstanceByDom(u.echartsElement)||u.echartsLib.init(u.echartsElement,u.props.theme,u.props.opts)},u.dispose=function(){if(u.echartsElement){try{(0,E.clear)(u.echartsElement)}catch(f){console.warn(f)}u.echartsLib.dispose(u.echartsElement)}},u.rerender=function(){var f=u.props,e=f.onEvents,t=f.onChartReady,i=u.renderEchartDom();u.bindEvents(i,e||{}),typeof t=="function"&&u.props.onChartReady(i),u.echartsElement&&(0,E.bind)(u.echartsElement,function(){try{i.resize()}catch(c){console.warn(c)}})},u.bindEvents=function(f,e){var t=function(p,A){typeof p=="string"&&typeof A=="function"&&f.on(p,function(x){A(x,f)})};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&t(i,e[i])},u.renderEchartDom=function(){var f=u.getEchartsInstance();return f.setOption(u.props.option,u.props.notMerge||!1,u.props.lazyUpdate||!1),u.props.showLoading?f.showLoading(u.props.loadingOption||null):f.hideLoading(),f},u.echartsLib=s.echarts,u.echartsElement=null,u}return H(o,[{key:"componentDidMount",value:function(){this.rerender()}},{key:"componentDidUpdate",value:function(u){if(!(typeof this.props.shouldSetOption=="function"&&!this.props.shouldSetOption(u,this.props))){if(!(0,m.default)(u.theme,this.props.theme)||!(0,m.default)(u.opts,this.props.opts)||!(0,m.default)(u.onEvents,this.props.onEvents)){this.dispose(),this.rerender();return}var f=["option","notMerge","lazyUpdate","showLoading","loadingOption"];if(!(0,m.default)((0,h.pick)(this.props,f),(0,h.pick)(u,f))){var e=this.renderEchartDom();if(!(0,m.default)(u.style,this.props.style)||!(0,m.default)(u.className,this.props.className))try{e.resize()}catch(t){console.warn(t)}}}}},{key:"componentWillUnmount",value:function(){this.dispose()}},{key:"render",value:function(){var u=this,f=this.props,e=f.style,t=f.className,i=w({height:300},e);return g.default.createElement("div",{ref:function(p){u.echartsElement=p},style:i,className:"echarts-for-react "+t})}}]),o}(M.Component);_e.default=n,n.propTypes={option:y.default.object.isRequired,echarts:y.default.object,notMerge:y.default.bool,lazyUpdate:y.default.bool,style:y.default.object,className:y.default.string,theme:y.default.oneOfType([y.default.string,y.default.object]),onChartReady:y.default.func,showLoading:y.default.bool,loadingOption:y.default.object,onEvents:y.default.object,opts:y.default.shape({devicePixelRatio:y.default.number,renderer:y.default.oneOf(["canvas","svg"]),width:y.default.oneOfType([y.default.number,y.default.oneOf([null,void 0,"auto"])]),height:y.default.oneOfType([y.default.number,y.default.oneOf([null,void 0,"auto"])])}),shouldSetOption:y.default.func},n.defaultProps={echarts:{},notMerge:!1,lazyUpdate:!1,style:{},className:"",theme:null,onChartReady:function(){},showLoading:!1,loadingOption:null,onEvents:{},opts:{},shouldSetOption:function(){return!0}}},50976:function(ke,_e,B){"use strict";var w;w={value:!0},_e.Z=void 0;var H=B(70596),M=y(H),g=B(87155),D=y(g);function y(a){return a&&a.__esModule?a:{default:a}}function v(a,d){if(!(a instanceof d))throw new TypeError("Cannot call a class as a function")}function m(a,d){if(!a)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return d&&(typeof d=="object"||typeof d=="function")?d:a}function E(a,d){if(typeof d!="function"&&d!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof d);a.prototype=Object.create(d&&d.prototype,{constructor:{value:a,enumerable:!1,writable:!0,configurable:!0}}),d&&(Object.setPrototypeOf?Object.setPrototypeOf(a,d):a.__proto__=d)}var h=function(a){E(d,a);function d(_){v(this,d);var r=m(this,(d.__proto__||Object.getPrototypeOf(d)).call(this,_));return r.echartsLib=M.default,r}return d}(D.default);_e.Z=h},52211:function(ke,_e){"use strict";Object.defineProperty(_e,"__esModule",{value:!0});var B=_e.pick=function(H,M){var g={};return M.forEach(function(D){g[D]=H[D]}),g}},72984:function(ke){"use strict";var _e=Array.isArray,B=Object.keys,w=Object.prototype.hasOwnProperty;ke.exports=function H(M,g){if(M===g)return!0;if(M&&g&&typeof M=="object"&&typeof g=="object"){var D=_e(M),y=_e(g),v,m,E;if(D&&y){if(m=M.length,m!=g.length)return!1;for(v=m;v--!==0;)if(!H(M[v],g[v]))return!1;return!0}if(D!=y)return!1;var h=M instanceof Date,a=g instanceof Date;if(h!=a)return!1;if(h&&a)return M.getTime()==g.getTime();var d=M instanceof RegExp,_=g instanceof RegExp;if(d!=_)return!1;if(d&&_)return M.toString()==g.toString();var r=B(M);if(m=r.length,m!==B(g).length)return!1;for(v=m;v--!==0;)if(!w.call(g,r[v]))return!1;for(v=m;v--!==0;)if(E=r[v],!H(M[E],g[E]))return!1;return!0}return M!==M&&g!==g}},43085:function(ke,_e,B){(function(H,M){ke.exports=M(B(70596))})(this,function(w){return function(H){var M={};function g(D){if(M[D])return M[D].exports;var y=M[D]={i:D,l:!1,exports:{}};return H[D].call(y.exports,y,y.exports,g),y.l=!0,y.exports}return g.m=H,g.c=M,g.d=function(D,y,v){g.o(D,y)||Object.defineProperty(D,y,{configurable:!1,enumerable:!0,get:v})},g.n=function(D){var y=D&&D.__esModule?function(){return D.default}:function(){return D};return g.d(y,"a",y),y},g.o=function(D,y){return Object.prototype.hasOwnProperty.call(D,y)},g.p="",g(g.s=87)}([function(H,M){H.exports=w},function(H,M,g){(function(D){"use strict";var y={};y.exports=M,function(v){if(!m)var m=1e-6;if(!E)var E=typeof Float32Array!="undefined"?Float32Array:Array;if(!h)var h=Math.random;var a={};a.setMatrixArrayType=function(e){E=e},typeof v!="undefined"&&(v.glMatrix=a);var d=Math.PI/180;a.toRadian=function(e){return e*d};var _={};_.create=function(){var e=new E(2);return e[0]=0,e[1]=0,e},_.clone=function(e){var t=new E(2);return t[0]=e[0],t[1]=e[1],t},_.fromValues=function(e,t){var i=new E(2);return i[0]=e,i[1]=t,i},_.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e},_.set=function(e,t,i){return e[0]=t,e[1]=i,e},_.add=function(e,t,i){return e[0]=t[0]+i[0],e[1]=t[1]+i[1],e},_.subtract=function(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e},_.sub=_.subtract,_.multiply=function(e,t,i){return e[0]=t[0]*i[0],e[1]=t[1]*i[1],e},_.mul=_.multiply,_.divide=function(e,t,i){return e[0]=t[0]/i[0],e[1]=t[1]/i[1],e},_.div=_.divide,_.min=function(e,t,i){return e[0]=Math.min(t[0],i[0]),e[1]=Math.min(t[1],i[1]),e},_.max=function(e,t,i){return e[0]=Math.max(t[0],i[0]),e[1]=Math.max(t[1],i[1]),e},_.scale=function(e,t,i){return e[0]=t[0]*i,e[1]=t[1]*i,e},_.scaleAndAdd=function(e,t,i,c){return e[0]=t[0]+i[0]*c,e[1]=t[1]+i[1]*c,e},_.distance=function(e,t){var i=t[0]-e[0],c=t[1]-e[1];return Math.sqrt(i*i+c*c)},_.dist=_.distance,_.squaredDistance=function(e,t){var i=t[0]-e[0],c=t[1]-e[1];return i*i+c*c},_.sqrDist=_.squaredDistance,_.length=function(e){var t=e[0],i=e[1];return Math.sqrt(t*t+i*i)},_.len=_.length,_.squaredLength=function(e){var t=e[0],i=e[1];return t*t+i*i},_.sqrLen=_.squaredLength,_.negate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e},_.inverse=function(e,t){return e[0]=1/t[0],e[1]=1/t[1],e},_.normalize=function(e,t){var i=t[0],c=t[1],p=i*i+c*c;return p>0&&(p=1/Math.sqrt(p),e[0]=t[0]*p,e[1]=t[1]*p),e},_.dot=function(e,t){return e[0]*t[0]+e[1]*t[1]},_.cross=function(e,t,i){var c=t[0]*i[1]-t[1]*i[0];return e[0]=e[1]=0,e[2]=c,e},_.lerp=function(e,t,i,c){var p=t[0],A=t[1];return e[0]=p+c*(i[0]-p),e[1]=A+c*(i[1]-A),e},_.random=function(e,t){t=t||1;var i=h()*2*Math.PI;return e[0]=Math.cos(i)*t,e[1]=Math.sin(i)*t,e},_.transformMat2=function(e,t,i){var c=t[0],p=t[1];return e[0]=i[0]*c+i[2]*p,e[1]=i[1]*c+i[3]*p,e},_.transformMat2d=function(e,t,i){var c=t[0],p=t[1];return e[0]=i[0]*c+i[2]*p+i[4],e[1]=i[1]*c+i[3]*p+i[5],e},_.transformMat3=function(e,t,i){var c=t[0],p=t[1];return e[0]=i[0]*c+i[3]*p+i[6],e[1]=i[1]*c+i[4]*p+i[7],e},_.transformMat4=function(e,t,i){var c=t[0],p=t[1];return e[0]=i[0]*c+i[4]*p+i[12],e[1]=i[1]*c+i[5]*p+i[13],e},_.forEach=function(){var e=_.create();return function(t,i,c,p,A,x){var C,S;for(i||(i=2),c||(c=0),p?S=Math.min(p*i+c,t.length):S=t.length,C=c;C<S;C+=i)e[0]=t[C],e[1]=t[C+1],A(e,e,x),t[C]=e[0],t[C+1]=e[1];return t}}(),_.str=function(e){return"vec2("+e[0]+", "+e[1]+")"},typeof v!="undefined"&&(v.vec2=_);var r={};r.create=function(){var e=new E(3);return e[0]=0,e[1]=0,e[2]=0,e},r.clone=function(e){var t=new E(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t},r.fromValues=function(e,t,i){var c=new E(3);return c[0]=e,c[1]=t,c[2]=i,c},r.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e},r.set=function(e,t,i,c){return e[0]=t,e[1]=i,e[2]=c,e},r.add=function(e,t,i){return e[0]=t[0]+i[0],e[1]=t[1]+i[1],e[2]=t[2]+i[2],e},r.subtract=function(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e[2]=t[2]-i[2],e},r.sub=r.subtract,r.multiply=function(e,t,i){return e[0]=t[0]*i[0],e[1]=t[1]*i[1],e[2]=t[2]*i[2],e},r.mul=r.multiply,r.divide=function(e,t,i){return e[0]=t[0]/i[0],e[1]=t[1]/i[1],e[2]=t[2]/i[2],e},r.div=r.divide,r.min=function(e,t,i){return e[0]=Math.min(t[0],i[0]),e[1]=Math.min(t[1],i[1]),e[2]=Math.min(t[2],i[2]),e},r.max=function(e,t,i){return e[0]=Math.max(t[0],i[0]),e[1]=Math.max(t[1],i[1]),e[2]=Math.max(t[2],i[2]),e},r.scale=function(e,t,i){return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e},r.scaleAndAdd=function(e,t,i,c){return e[0]=t[0]+i[0]*c,e[1]=t[1]+i[1]*c,e[2]=t[2]+i[2]*c,e},r.distance=function(e,t){var i=t[0]-e[0],c=t[1]-e[1],p=t[2]-e[2];return Math.sqrt(i*i+c*c+p*p)},r.dist=r.distance,r.squaredDistance=function(e,t){var i=t[0]-e[0],c=t[1]-e[1],p=t[2]-e[2];return i*i+c*c+p*p},r.sqrDist=r.squaredDistance,r.length=function(e){var t=e[0],i=e[1],c=e[2];return Math.sqrt(t*t+i*i+c*c)},r.len=r.length,r.squaredLength=function(e){var t=e[0],i=e[1],c=e[2];return t*t+i*i+c*c},r.sqrLen=r.squaredLength,r.negate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e},r.inverse=function(e,t){return e[0]=1/t[0],e[1]=1/t[1],e[2]=1/t[2],e},r.normalize=function(e,t){var i=t[0],c=t[1],p=t[2],A=i*i+c*c+p*p;return A>0&&(A=1/Math.sqrt(A),e[0]=t[0]*A,e[1]=t[1]*A,e[2]=t[2]*A),e},r.dot=function(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]},r.cross=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=i[0],C=i[1],S=i[2];return e[0]=p*S-A*C,e[1]=A*x-c*S,e[2]=c*C-p*x,e},r.lerp=function(e,t,i,c){var p=t[0],A=t[1],x=t[2];return e[0]=p+c*(i[0]-p),e[1]=A+c*(i[1]-A),e[2]=x+c*(i[2]-x),e},r.random=function(e,t){t=t||1;var i=h()*2*Math.PI,c=h()*2-1,p=Math.sqrt(1-c*c)*t;return e[0]=Math.cos(i)*p,e[1]=Math.sin(i)*p,e[2]=c*t,e},r.transformMat4=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=i[3]*c+i[7]*p+i[11]*A+i[15];return x=x||1,e[0]=(i[0]*c+i[4]*p+i[8]*A+i[12])/x,e[1]=(i[1]*c+i[5]*p+i[9]*A+i[13])/x,e[2]=(i[2]*c+i[6]*p+i[10]*A+i[14])/x,e},r.transformMat3=function(e,t,i){var c=t[0],p=t[1],A=t[2];return e[0]=c*i[0]+p*i[3]+A*i[6],e[1]=c*i[1]+p*i[4]+A*i[7],e[2]=c*i[2]+p*i[5]+A*i[8],e},r.transformQuat=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=i[0],C=i[1],S=i[2],P=i[3],b=P*c+C*A-S*p,L=P*p+S*c-x*A,R=P*A+x*p-C*c,T=-x*c-C*p-S*A;return e[0]=b*P+T*-x+L*-S-R*-C,e[1]=L*P+T*-C+R*-x-b*-S,e[2]=R*P+T*-S+b*-C-L*-x,e},r.rotateX=function(e,t,i,c){var p=[],A=[];return p[0]=t[0]-i[0],p[1]=t[1]-i[1],p[2]=t[2]-i[2],A[0]=p[0],A[1]=p[1]*Math.cos(c)-p[2]*Math.sin(c),A[2]=p[1]*Math.sin(c)+p[2]*Math.cos(c),e[0]=A[0]+i[0],e[1]=A[1]+i[1],e[2]=A[2]+i[2],e},r.rotateY=function(e,t,i,c){var p=[],A=[];return p[0]=t[0]-i[0],p[1]=t[1]-i[1],p[2]=t[2]-i[2],A[0]=p[2]*Math.sin(c)+p[0]*Math.cos(c),A[1]=p[1],A[2]=p[2]*Math.cos(c)-p[0]*Math.sin(c),e[0]=A[0]+i[0],e[1]=A[1]+i[1],e[2]=A[2]+i[2],e},r.rotateZ=function(e,t,i,c){var p=[],A=[];return p[0]=t[0]-i[0],p[1]=t[1]-i[1],p[2]=t[2]-i[2],A[0]=p[0]*Math.cos(c)-p[1]*Math.sin(c),A[1]=p[0]*Math.sin(c)+p[1]*Math.cos(c),A[2]=p[2],e[0]=A[0]+i[0],e[1]=A[1]+i[1],e[2]=A[2]+i[2],e},r.forEach=function(){var e=r.create();return function(t,i,c,p,A,x){var C,S;for(i||(i=3),c||(c=0),p?S=Math.min(p*i+c,t.length):S=t.length,C=c;C<S;C+=i)e[0]=t[C],e[1]=t[C+1],e[2]=t[C+2],A(e,e,x),t[C]=e[0],t[C+1]=e[1],t[C+2]=e[2];return t}}(),r.angle=function(e,t){var i=r.fromValues(e[0],e[1],e[2]),c=r.fromValues(t[0],t[1],t[2]);r.normalize(i,i),r.normalize(c,c);var p=r.dot(i,c);return p>1?0:Math.acos(p)},r.str=function(e){return"vec3("+e[0]+", "+e[1]+", "+e[2]+")"},typeof v!="undefined"&&(v.vec3=r);var n={};n.create=function(){var e=new E(4);return e[0]=0,e[1]=0,e[2]=0,e[3]=0,e},n.clone=function(e){var t=new E(4);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t},n.fromValues=function(e,t,i,c){var p=new E(4);return p[0]=e,p[1]=t,p[2]=i,p[3]=c,p},n.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e},n.set=function(e,t,i,c,p){return e[0]=t,e[1]=i,e[2]=c,e[3]=p,e},n.add=function(e,t,i){return e[0]=t[0]+i[0],e[1]=t[1]+i[1],e[2]=t[2]+i[2],e[3]=t[3]+i[3],e},n.subtract=function(e,t,i){return e[0]=t[0]-i[0],e[1]=t[1]-i[1],e[2]=t[2]-i[2],e[3]=t[3]-i[3],e},n.sub=n.subtract,n.multiply=function(e,t,i){return e[0]=t[0]*i[0],e[1]=t[1]*i[1],e[2]=t[2]*i[2],e[3]=t[3]*i[3],e},n.mul=n.multiply,n.divide=function(e,t,i){return e[0]=t[0]/i[0],e[1]=t[1]/i[1],e[2]=t[2]/i[2],e[3]=t[3]/i[3],e},n.div=n.divide,n.min=function(e,t,i){return e[0]=Math.min(t[0],i[0]),e[1]=Math.min(t[1],i[1]),e[2]=Math.min(t[2],i[2]),e[3]=Math.min(t[3],i[3]),e},n.max=function(e,t,i){return e[0]=Math.max(t[0],i[0]),e[1]=Math.max(t[1],i[1]),e[2]=Math.max(t[2],i[2]),e[3]=Math.max(t[3],i[3]),e},n.scale=function(e,t,i){return e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e[3]=t[3]*i,e},n.scaleAndAdd=function(e,t,i,c){return e[0]=t[0]+i[0]*c,e[1]=t[1]+i[1]*c,e[2]=t[2]+i[2]*c,e[3]=t[3]+i[3]*c,e},n.distance=function(e,t){var i=t[0]-e[0],c=t[1]-e[1],p=t[2]-e[2],A=t[3]-e[3];return Math.sqrt(i*i+c*c+p*p+A*A)},n.dist=n.distance,n.squaredDistance=function(e,t){var i=t[0]-e[0],c=t[1]-e[1],p=t[2]-e[2],A=t[3]-e[3];return i*i+c*c+p*p+A*A},n.sqrDist=n.squaredDistance,n.length=function(e){var t=e[0],i=e[1],c=e[2],p=e[3];return Math.sqrt(t*t+i*i+c*c+p*p)},n.len=n.length,n.squaredLength=function(e){var t=e[0],i=e[1],c=e[2],p=e[3];return t*t+i*i+c*c+p*p},n.sqrLen=n.squaredLength,n.negate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=-t[3],e},n.inverse=function(e,t){return e[0]=1/t[0],e[1]=1/t[1],e[2]=1/t[2],e[3]=1/t[3],e},n.normalize=function(e,t){var i=t[0],c=t[1],p=t[2],A=t[3],x=i*i+c*c+p*p+A*A;return x>0&&(x=1/Math.sqrt(x),e[0]=t[0]*x,e[1]=t[1]*x,e[2]=t[2]*x,e[3]=t[3]*x),e},n.dot=function(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]+e[3]*t[3]},n.lerp=function(e,t,i,c){var p=t[0],A=t[1],x=t[2],C=t[3];return e[0]=p+c*(i[0]-p),e[1]=A+c*(i[1]-A),e[2]=x+c*(i[2]-x),e[3]=C+c*(i[3]-C),e},n.random=function(e,t){return t=t||1,e[0]=h(),e[1]=h(),e[2]=h(),e[3]=h(),n.normalize(e,e),n.scale(e,e,t),e},n.transformMat4=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=t[3];return e[0]=i[0]*c+i[4]*p+i[8]*A+i[12]*x,e[1]=i[1]*c+i[5]*p+i[9]*A+i[13]*x,e[2]=i[2]*c+i[6]*p+i[10]*A+i[14]*x,e[3]=i[3]*c+i[7]*p+i[11]*A+i[15]*x,e},n.transformQuat=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=i[0],C=i[1],S=i[2],P=i[3],b=P*c+C*A-S*p,L=P*p+S*c-x*A,R=P*A+x*p-C*c,T=-x*c-C*p-S*A;return e[0]=b*P+T*-x+L*-S-R*-C,e[1]=L*P+T*-C+R*-x-b*-S,e[2]=R*P+T*-S+b*-C-L*-x,e},n.forEach=function(){var e=n.create();return function(t,i,c,p,A,x){var C,S;for(i||(i=4),c||(c=0),p?S=Math.min(p*i+c,t.length):S=t.length,C=c;C<S;C+=i)e[0]=t[C],e[1]=t[C+1],e[2]=t[C+2],e[3]=t[C+3],A(e,e,x),t[C]=e[0],t[C+1]=e[1],t[C+2]=e[2],t[C+3]=e[3];return t}}(),n.str=function(e){return"vec4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"},typeof v!="undefined"&&(v.vec4=n);var l={};l.create=function(){var e=new E(4);return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e},l.clone=function(e){var t=new E(4);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t},l.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e},l.identity=function(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e},l.transpose=function(e,t){if(e===t){var i=t[1];e[1]=t[2],e[2]=i}else e[0]=t[0],e[1]=t[2],e[2]=t[1],e[3]=t[3];return e},l.invert=function(e,t){var i=t[0],c=t[1],p=t[2],A=t[3],x=i*A-p*c;return x?(x=1/x,e[0]=A*x,e[1]=-c*x,e[2]=-p*x,e[3]=i*x,e):null},l.adjoint=function(e,t){var i=t[0];return e[0]=t[3],e[1]=-t[1],e[2]=-t[2],e[3]=i,e},l.determinant=function(e){return e[0]*e[3]-e[2]*e[1]},l.multiply=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=t[3],C=i[0],S=i[1],P=i[2],b=i[3];return e[0]=c*C+A*S,e[1]=p*C+x*S,e[2]=c*P+A*b,e[3]=p*P+x*b,e},l.mul=l.multiply,l.rotate=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=t[3],C=Math.sin(i),S=Math.cos(i);return e[0]=c*S+A*C,e[1]=p*S+x*C,e[2]=c*-C+A*S,e[3]=p*-C+x*S,e},l.scale=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=t[3],C=i[0],S=i[1];return e[0]=c*C,e[1]=p*C,e[2]=A*S,e[3]=x*S,e},l.str=function(e){return"mat2("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"},l.frob=function(e){return Math.sqrt(Math.pow(e[0],2)+Math.pow(e[1],2)+Math.pow(e[2],2)+Math.pow(e[3],2))},l.LDU=function(e,t,i,c){return e[2]=c[2]/c[0],i[0]=c[0],i[1]=c[1],i[3]=c[3]-e[2]*i[1],[e,t,i]},typeof v!="undefined"&&(v.mat2=l);var o={};o.create=function(){var e=new E(6);return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e[4]=0,e[5]=0,e},o.clone=function(e){var t=new E(6);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t},o.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e},o.identity=function(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e[4]=0,e[5]=0,e},o.invert=function(e,t){var i=t[0],c=t[1],p=t[2],A=t[3],x=t[4],C=t[5],S=i*A-c*p;return S?(S=1/S,e[0]=A*S,e[1]=-c*S,e[2]=-p*S,e[3]=i*S,e[4]=(p*C-A*x)*S,e[5]=(c*x-i*C)*S,e):null},o.determinant=function(e){return e[0]*e[3]-e[1]*e[2]},o.multiply=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=t[3],C=t[4],S=t[5],P=i[0],b=i[1],L=i[2],R=i[3],T=i[4],N=i[5];return e[0]=c*P+A*b,e[1]=p*P+x*b,e[2]=c*L+A*R,e[3]=p*L+x*R,e[4]=c*T+A*N+C,e[5]=p*T+x*N+S,e},o.mul=o.multiply,o.rotate=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=t[3],C=t[4],S=t[5],P=Math.sin(i),b=Math.cos(i);return e[0]=c*b+A*P,e[1]=p*b+x*P,e[2]=c*-P+A*b,e[3]=p*-P+x*b,e[4]=C,e[5]=S,e},o.scale=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=t[3],C=t[4],S=t[5],P=i[0],b=i[1];return e[0]=c*P,e[1]=p*P,e[2]=A*b,e[3]=x*b,e[4]=C,e[5]=S,e},o.translate=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=t[3],C=t[4],S=t[5],P=i[0],b=i[1];return e[0]=c,e[1]=p,e[2]=A,e[3]=x,e[4]=c*P+A*b+C,e[5]=p*P+x*b+S,e},o.str=function(e){return"mat2d("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+")"},o.frob=function(e){return Math.sqrt(Math.pow(e[0],2)+Math.pow(e[1],2)+Math.pow(e[2],2)+Math.pow(e[3],2)+Math.pow(e[4],2)+Math.pow(e[5],2)+1)},typeof v!="undefined"&&(v.mat2d=o);var s={};s.create=function(){var e=new E(9);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},s.fromMat4=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[4],e[4]=t[5],e[5]=t[6],e[6]=t[8],e[7]=t[9],e[8]=t[10],e},s.clone=function(e){var t=new E(9);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t},s.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e},s.identity=function(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},s.transpose=function(e,t){if(e===t){var i=t[1],c=t[2],p=t[5];e[1]=t[3],e[2]=t[6],e[3]=i,e[5]=t[7],e[6]=c,e[7]=p}else e[0]=t[0],e[1]=t[3],e[2]=t[6],e[3]=t[1],e[4]=t[4],e[5]=t[7],e[6]=t[2],e[7]=t[5],e[8]=t[8];return e},s.invert=function(e,t){var i=t[0],c=t[1],p=t[2],A=t[3],x=t[4],C=t[5],S=t[6],P=t[7],b=t[8],L=b*x-C*P,R=-b*A+C*S,T=P*A-x*S,N=i*L+c*R+p*T;return N?(N=1/N,e[0]=L*N,e[1]=(-b*c+p*P)*N,e[2]=(C*c-p*x)*N,e[3]=R*N,e[4]=(b*i-p*S)*N,e[5]=(-C*i+p*A)*N,e[6]=T*N,e[7]=(-P*i+c*S)*N,e[8]=(x*i-c*A)*N,e):null},s.adjoint=function(e,t){var i=t[0],c=t[1],p=t[2],A=t[3],x=t[4],C=t[5],S=t[6],P=t[7],b=t[8];return e[0]=x*b-C*P,e[1]=p*P-c*b,e[2]=c*C-p*x,e[3]=C*S-A*b,e[4]=i*b-p*S,e[5]=p*A-i*C,e[6]=A*P-x*S,e[7]=c*S-i*P,e[8]=i*x-c*A,e},s.determinant=function(e){var t=e[0],i=e[1],c=e[2],p=e[3],A=e[4],x=e[5],C=e[6],S=e[7],P=e[8];return t*(P*A-x*S)+i*(-P*p+x*C)+c*(S*p-A*C)},s.multiply=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=t[3],C=t[4],S=t[5],P=t[6],b=t[7],L=t[8],R=i[0],T=i[1],N=i[2],I=i[3],F=i[4],U=i[5],K=i[6],G=i[7],V=i[8];return e[0]=R*c+T*x+N*P,e[1]=R*p+T*C+N*b,e[2]=R*A+T*S+N*L,e[3]=I*c+F*x+U*P,e[4]=I*p+F*C+U*b,e[5]=I*A+F*S+U*L,e[6]=K*c+G*x+V*P,e[7]=K*p+G*C+V*b,e[8]=K*A+G*S+V*L,e},s.mul=s.multiply,s.translate=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=t[3],C=t[4],S=t[5],P=t[6],b=t[7],L=t[8],R=i[0],T=i[1];return e[0]=c,e[1]=p,e[2]=A,e[3]=x,e[4]=C,e[5]=S,e[6]=R*c+T*x+P,e[7]=R*p+T*C+b,e[8]=R*A+T*S+L,e},s.rotate=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=t[3],C=t[4],S=t[5],P=t[6],b=t[7],L=t[8],R=Math.sin(i),T=Math.cos(i);return e[0]=T*c+R*x,e[1]=T*p+R*C,e[2]=T*A+R*S,e[3]=T*x-R*c,e[4]=T*C-R*p,e[5]=T*S-R*A,e[6]=P,e[7]=b,e[8]=L,e},s.scale=function(e,t,i){var c=i[0],p=i[1];return e[0]=c*t[0],e[1]=c*t[1],e[2]=c*t[2],e[3]=p*t[3],e[4]=p*t[4],e[5]=p*t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e},s.fromMat2d=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=0,e[3]=t[2],e[4]=t[3],e[5]=0,e[6]=t[4],e[7]=t[5],e[8]=1,e},s.fromQuat=function(e,t){var i=t[0],c=t[1],p=t[2],A=t[3],x=i+i,C=c+c,S=p+p,P=i*x,b=c*x,L=c*C,R=p*x,T=p*C,N=p*S,I=A*x,F=A*C,U=A*S;return e[0]=1-L-N,e[3]=b-U,e[6]=R+F,e[1]=b+U,e[4]=1-P-N,e[7]=T-I,e[2]=R-F,e[5]=T+I,e[8]=1-P-L,e},s.normalFromMat4=function(e,t){var i=t[0],c=t[1],p=t[2],A=t[3],x=t[4],C=t[5],S=t[6],P=t[7],b=t[8],L=t[9],R=t[10],T=t[11],N=t[12],I=t[13],F=t[14],U=t[15],K=i*C-c*x,G=i*S-p*x,V=i*P-A*x,X=c*S-p*C,ee=c*P-A*C,oe=p*P-A*S,ue=b*I-L*N,Ae=b*F-R*N,fe=b*U-T*N,he=L*F-R*I,ve=L*U-T*I,me=R*U-T*F,Te=K*me-G*ve+V*he+X*fe-ee*Ae+oe*ue;return Te?(Te=1/Te,e[0]=(C*me-S*ve+P*he)*Te,e[1]=(S*fe-x*me-P*Ae)*Te,e[2]=(x*ve-C*fe+P*ue)*Te,e[3]=(p*ve-c*me-A*he)*Te,e[4]=(i*me-p*fe+A*Ae)*Te,e[5]=(c*fe-i*ve-A*ue)*Te,e[6]=(I*oe-F*ee+U*X)*Te,e[7]=(F*V-N*oe-U*G)*Te,e[8]=(N*ee-I*V+U*K)*Te,e):null},s.str=function(e){return"mat3("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+")"},s.frob=function(e){return Math.sqrt(Math.pow(e[0],2)+Math.pow(e[1],2)+Math.pow(e[2],2)+Math.pow(e[3],2)+Math.pow(e[4],2)+Math.pow(e[5],2)+Math.pow(e[6],2)+Math.pow(e[7],2)+Math.pow(e[8],2))},typeof v!="undefined"&&(v.mat3=s);var u={};u.create=function(){var e=new E(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},u.clone=function(e){var t=new E(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},u.copy=function(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},u.identity=function(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},u.transpose=function(e,t){if(e===t){var i=t[1],c=t[2],p=t[3],A=t[6],x=t[7],C=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=i,e[6]=t[9],e[7]=t[13],e[8]=c,e[9]=A,e[11]=t[14],e[12]=p,e[13]=x,e[14]=C}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e},u.invert=function(e,t){var i=t[0],c=t[1],p=t[2],A=t[3],x=t[4],C=t[5],S=t[6],P=t[7],b=t[8],L=t[9],R=t[10],T=t[11],N=t[12],I=t[13],F=t[14],U=t[15],K=i*C-c*x,G=i*S-p*x,V=i*P-A*x,X=c*S-p*C,ee=c*P-A*C,oe=p*P-A*S,ue=b*I-L*N,Ae=b*F-R*N,fe=b*U-T*N,he=L*F-R*I,ve=L*U-T*I,me=R*U-T*F,Te=K*me-G*ve+V*he+X*fe-ee*Ae+oe*ue;return Te?(Te=1/Te,e[0]=(C*me-S*ve+P*he)*Te,e[1]=(p*ve-c*me-A*he)*Te,e[2]=(I*oe-F*ee+U*X)*Te,e[3]=(R*ee-L*oe-T*X)*Te,e[4]=(S*fe-x*me-P*Ae)*Te,e[5]=(i*me-p*fe+A*Ae)*Te,e[6]=(F*V-N*oe-U*G)*Te,e[7]=(b*oe-R*V+T*G)*Te,e[8]=(x*ve-C*fe+P*ue)*Te,e[9]=(c*fe-i*ve-A*ue)*Te,e[10]=(N*ee-I*V+U*K)*Te,e[11]=(L*V-b*ee-T*K)*Te,e[12]=(C*Ae-x*he-S*ue)*Te,e[13]=(i*he-c*Ae+p*ue)*Te,e[14]=(I*G-N*X-F*K)*Te,e[15]=(b*X-L*G+R*K)*Te,e):null},u.adjoint=function(e,t){var i=t[0],c=t[1],p=t[2],A=t[3],x=t[4],C=t[5],S=t[6],P=t[7],b=t[8],L=t[9],R=t[10],T=t[11],N=t[12],I=t[13],F=t[14],U=t[15];return e[0]=C*(R*U-T*F)-L*(S*U-P*F)+I*(S*T-P*R),e[1]=-(c*(R*U-T*F)-L*(p*U-A*F)+I*(p*T-A*R)),e[2]=c*(S*U-P*F)-C*(p*U-A*F)+I*(p*P-A*S),e[3]=-(c*(S*T-P*R)-C*(p*T-A*R)+L*(p*P-A*S)),e[4]=-(x*(R*U-T*F)-b*(S*U-P*F)+N*(S*T-P*R)),e[5]=i*(R*U-T*F)-b*(p*U-A*F)+N*(p*T-A*R),e[6]=-(i*(S*U-P*F)-x*(p*U-A*F)+N*(p*P-A*S)),e[7]=i*(S*T-P*R)-x*(p*T-A*R)+b*(p*P-A*S),e[8]=x*(L*U-T*I)-b*(C*U-P*I)+N*(C*T-P*L),e[9]=-(i*(L*U-T*I)-b*(c*U-A*I)+N*(c*T-A*L)),e[10]=i*(C*U-P*I)-x*(c*U-A*I)+N*(c*P-A*C),e[11]=-(i*(C*T-P*L)-x*(c*T-A*L)+b*(c*P-A*C)),e[12]=-(x*(L*F-R*I)-b*(C*F-S*I)+N*(C*R-S*L)),e[13]=i*(L*F-R*I)-b*(c*F-p*I)+N*(c*R-p*L),e[14]=-(i*(C*F-S*I)-x*(c*F-p*I)+N*(c*S-p*C)),e[15]=i*(C*R-S*L)-x*(c*R-p*L)+b*(c*S-p*C),e},u.determinant=function(e){var t=e[0],i=e[1],c=e[2],p=e[3],A=e[4],x=e[5],C=e[6],S=e[7],P=e[8],b=e[9],L=e[10],R=e[11],T=e[12],N=e[13],I=e[14],F=e[15],U=t*x-i*A,K=t*C-c*A,G=t*S-p*A,V=i*C-c*x,X=i*S-p*x,ee=c*S-p*C,oe=P*N-b*T,ue=P*I-L*T,Ae=P*F-R*T,fe=b*I-L*N,he=b*F-R*N,ve=L*F-R*I;return U*ve-K*he+G*fe+V*Ae-X*ue+ee*oe},u.multiply=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=t[3],C=t[4],S=t[5],P=t[6],b=t[7],L=t[8],R=t[9],T=t[10],N=t[11],I=t[12],F=t[13],U=t[14],K=t[15],G=i[0],V=i[1],X=i[2],ee=i[3];return e[0]=G*c+V*C+X*L+ee*I,e[1]=G*p+V*S+X*R+ee*F,e[2]=G*A+V*P+X*T+ee*U,e[3]=G*x+V*b+X*N+ee*K,G=i[4],V=i[5],X=i[6],ee=i[7],e[4]=G*c+V*C+X*L+ee*I,e[5]=G*p+V*S+X*R+ee*F,e[6]=G*A+V*P+X*T+ee*U,e[7]=G*x+V*b+X*N+ee*K,G=i[8],V=i[9],X=i[10],ee=i[11],e[8]=G*c+V*C+X*L+ee*I,e[9]=G*p+V*S+X*R+ee*F,e[10]=G*A+V*P+X*T+ee*U,e[11]=G*x+V*b+X*N+ee*K,G=i[12],V=i[13],X=i[14],ee=i[15],e[12]=G*c+V*C+X*L+ee*I,e[13]=G*p+V*S+X*R+ee*F,e[14]=G*A+V*P+X*T+ee*U,e[15]=G*x+V*b+X*N+ee*K,e},u.multiplyAffine=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=t[4],C=t[5],S=t[6],P=t[8],b=t[9],L=t[10],R=t[12],T=t[13],N=t[14],I=i[0],F=i[1],U=i[2];return e[0]=I*c+F*x+U*P,e[1]=I*p+F*C+U*b,e[2]=I*A+F*S+U*L,I=i[4],F=i[5],U=i[6],e[4]=I*c+F*x+U*P,e[5]=I*p+F*C+U*b,e[6]=I*A+F*S+U*L,I=i[8],F=i[9],U=i[10],e[8]=I*c+F*x+U*P,e[9]=I*p+F*C+U*b,e[10]=I*A+F*S+U*L,I=i[12],F=i[13],U=i[14],e[12]=I*c+F*x+U*P+R,e[13]=I*p+F*C+U*b+T,e[14]=I*A+F*S+U*L+N,e},u.mul=u.multiply,u.mulAffine=u.multiplyAffine,u.translate=function(e,t,i){var c=i[0],p=i[1],A=i[2],x,C,S,P,b,L,R,T,N,I,F,U;return t===e?(e[12]=t[0]*c+t[4]*p+t[8]*A+t[12],e[13]=t[1]*c+t[5]*p+t[9]*A+t[13],e[14]=t[2]*c+t[6]*p+t[10]*A+t[14],e[15]=t[3]*c+t[7]*p+t[11]*A+t[15]):(x=t[0],C=t[1],S=t[2],P=t[3],b=t[4],L=t[5],R=t[6],T=t[7],N=t[8],I=t[9],F=t[10],U=t[11],e[0]=x,e[1]=C,e[2]=S,e[3]=P,e[4]=b,e[5]=L,e[6]=R,e[7]=T,e[8]=N,e[9]=I,e[10]=F,e[11]=U,e[12]=x*c+b*p+N*A+t[12],e[13]=C*c+L*p+I*A+t[13],e[14]=S*c+R*p+F*A+t[14],e[15]=P*c+T*p+U*A+t[15]),e},u.scale=function(e,t,i){var c=i[0],p=i[1],A=i[2];return e[0]=t[0]*c,e[1]=t[1]*c,e[2]=t[2]*c,e[3]=t[3]*c,e[4]=t[4]*p,e[5]=t[5]*p,e[6]=t[6]*p,e[7]=t[7]*p,e[8]=t[8]*A,e[9]=t[9]*A,e[10]=t[10]*A,e[11]=t[11]*A,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},u.rotate=function(e,t,i,c){var p=c[0],A=c[1],x=c[2],C=Math.sqrt(p*p+A*A+x*x),S,P,b,L,R,T,N,I,F,U,K,G,V,X,ee,oe,ue,Ae,fe,he,ve,me,Te,Ce;return Math.abs(C)<m?null:(C=1/C,p*=C,A*=C,x*=C,S=Math.sin(i),P=Math.cos(i),b=1-P,L=t[0],R=t[1],T=t[2],N=t[3],I=t[4],F=t[5],U=t[6],K=t[7],G=t[8],V=t[9],X=t[10],ee=t[11],oe=p*p*b+P,ue=A*p*b+x*S,Ae=x*p*b-A*S,fe=p*A*b-x*S,he=A*A*b+P,ve=x*A*b+p*S,me=p*x*b+A*S,Te=A*x*b-p*S,Ce=x*x*b+P,e[0]=L*oe+I*ue+G*Ae,e[1]=R*oe+F*ue+V*Ae,e[2]=T*oe+U*ue+X*Ae,e[3]=N*oe+K*ue+ee*Ae,e[4]=L*fe+I*he+G*ve,e[5]=R*fe+F*he+V*ve,e[6]=T*fe+U*he+X*ve,e[7]=N*fe+K*he+ee*ve,e[8]=L*me+I*Te+G*Ce,e[9]=R*me+F*Te+V*Ce,e[10]=T*me+U*Te+X*Ce,e[11]=N*me+K*Te+ee*Ce,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)},u.rotateX=function(e,t,i){var c=Math.sin(i),p=Math.cos(i),A=t[4],x=t[5],C=t[6],S=t[7],P=t[8],b=t[9],L=t[10],R=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=A*p+P*c,e[5]=x*p+b*c,e[6]=C*p+L*c,e[7]=S*p+R*c,e[8]=P*p-A*c,e[9]=b*p-x*c,e[10]=L*p-C*c,e[11]=R*p-S*c,e},u.rotateY=function(e,t,i){var c=Math.sin(i),p=Math.cos(i),A=t[0],x=t[1],C=t[2],S=t[3],P=t[8],b=t[9],L=t[10],R=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=A*p-P*c,e[1]=x*p-b*c,e[2]=C*p-L*c,e[3]=S*p-R*c,e[8]=A*c+P*p,e[9]=x*c+b*p,e[10]=C*c+L*p,e[11]=S*c+R*p,e},u.rotateZ=function(e,t,i){var c=Math.sin(i),p=Math.cos(i),A=t[0],x=t[1],C=t[2],S=t[3],P=t[4],b=t[5],L=t[6],R=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=A*p+P*c,e[1]=x*p+b*c,e[2]=C*p+L*c,e[3]=S*p+R*c,e[4]=P*p-A*c,e[5]=b*p-x*c,e[6]=L*p-C*c,e[7]=R*p-S*c,e},u.fromRotationTranslation=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=t[3],C=c+c,S=p+p,P=A+A,b=c*C,L=c*S,R=c*P,T=p*S,N=p*P,I=A*P,F=x*C,U=x*S,K=x*P;return e[0]=1-(T+I),e[1]=L+K,e[2]=R-U,e[3]=0,e[4]=L-K,e[5]=1-(b+I),e[6]=N+F,e[7]=0,e[8]=R+U,e[9]=N-F,e[10]=1-(b+T),e[11]=0,e[12]=i[0],e[13]=i[1],e[14]=i[2],e[15]=1,e},u.fromQuat=function(e,t){var i=t[0],c=t[1],p=t[2],A=t[3],x=i+i,C=c+c,S=p+p,P=i*x,b=c*x,L=c*C,R=p*x,T=p*C,N=p*S,I=A*x,F=A*C,U=A*S;return e[0]=1-L-N,e[1]=b+U,e[2]=R-F,e[3]=0,e[4]=b-U,e[5]=1-P-N,e[6]=T+I,e[7]=0,e[8]=R+F,e[9]=T-I,e[10]=1-P-L,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e},u.frustum=function(e,t,i,c,p,A,x){var C=1/(i-t),S=1/(p-c),P=1/(A-x);return e[0]=A*2*C,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=A*2*S,e[6]=0,e[7]=0,e[8]=(i+t)*C,e[9]=(p+c)*S,e[10]=(x+A)*P,e[11]=-1,e[12]=0,e[13]=0,e[14]=x*A*2*P,e[15]=0,e},u.perspective=function(e,t,i,c,p){var A=1/Math.tan(t/2),x=1/(c-p);return e[0]=A/i,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=A,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(p+c)*x,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*p*c*x,e[15]=0,e},u.ortho=function(e,t,i,c,p,A,x){var C=1/(t-i),S=1/(c-p),P=1/(A-x);return e[0]=-2*C,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*S,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*P,e[11]=0,e[12]=(t+i)*C,e[13]=(p+c)*S,e[14]=(x+A)*P,e[15]=1,e},u.lookAt=function(e,t,i,c){var p,A,x,C,S,P,b,L,R,T,N=t[0],I=t[1],F=t[2],U=c[0],K=c[1],G=c[2],V=i[0],X=i[1],ee=i[2];return Math.abs(N-V)<m&&Math.abs(I-X)<m&&Math.abs(F-ee)<m?u.identity(e):(b=N-V,L=I-X,R=F-ee,T=1/Math.sqrt(b*b+L*L+R*R),b*=T,L*=T,R*=T,p=K*R-G*L,A=G*b-U*R,x=U*L-K*b,T=Math.sqrt(p*p+A*A+x*x),T?(T=1/T,p*=T,A*=T,x*=T):(p=0,A=0,x=0),C=L*x-R*A,S=R*p-b*x,P=b*A-L*p,T=Math.sqrt(C*C+S*S+P*P),T?(T=1/T,C*=T,S*=T,P*=T):(C=0,S=0,P=0),e[0]=p,e[1]=C,e[2]=b,e[3]=0,e[4]=A,e[5]=S,e[6]=L,e[7]=0,e[8]=x,e[9]=P,e[10]=R,e[11]=0,e[12]=-(p*N+A*I+x*F),e[13]=-(C*N+S*I+P*F),e[14]=-(b*N+L*I+R*F),e[15]=1,e)},u.str=function(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]+")"},u.frob=function(e){return Math.sqrt(Math.pow(e[0],2)+Math.pow(e[1],2)+Math.pow(e[2],2)+Math.pow(e[3],2)+Math.pow(e[4],2)+Math.pow(e[5],2)+Math.pow(e[6],2)+Math.pow(e[7],2)+Math.pow(e[8],2)+Math.pow(e[9],2)+Math.pow(e[10],2)+Math.pow(e[11],2)+Math.pow(e[12],2)+Math.pow(e[13],2)+Math.pow(e[14],2)+Math.pow(e[15],2))},typeof v!="undefined"&&(v.mat4=u);var f={};f.create=function(){var e=new E(4);return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e},f.rotationTo=function(){var e=r.create(),t=r.fromValues(1,0,0),i=r.fromValues(0,1,0);return function(c,p,A){var x=r.dot(p,A);return x<-.999999?(r.cross(e,t,p),r.length(e)<1e-6&&r.cross(e,i,p),r.normalize(e,e),f.setAxisAngle(c,e,Math.PI),c):x>.999999?(c[0]=0,c[1]=0,c[2]=0,c[3]=1,c):(r.cross(e,p,A),c[0]=e[0],c[1]=e[1],c[2]=e[2],c[3]=1+x,f.normalize(c,c))}}(),f.setAxes=function(){var e=s.create();return function(t,i,c,p){return e[0]=c[0],e[3]=c[1],e[6]=c[2],e[1]=p[0],e[4]=p[1],e[7]=p[2],e[2]=-i[0],e[5]=-i[1],e[8]=-i[2],f.normalize(t,f.fromMat3(t,e))}}(),f.clone=n.clone,f.fromValues=n.fromValues,f.copy=n.copy,f.set=n.set,f.identity=function(e){return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e},f.setAxisAngle=function(e,t,i){i=i*.5;var c=Math.sin(i);return e[0]=c*t[0],e[1]=c*t[1],e[2]=c*t[2],e[3]=Math.cos(i),e},f.add=n.add,f.multiply=function(e,t,i){var c=t[0],p=t[1],A=t[2],x=t[3],C=i[0],S=i[1],P=i[2],b=i[3];return e[0]=c*b+x*C+p*P-A*S,e[1]=p*b+x*S+A*C-c*P,e[2]=A*b+x*P+c*S-p*C,e[3]=x*b-c*C-p*S-A*P,e},f.mul=f.multiply,f.scale=n.scale,f.rotateX=function(e,t,i){i*=.5;var c=t[0],p=t[1],A=t[2],x=t[3],C=Math.sin(i),S=Math.cos(i);return e[0]=c*S+x*C,e[1]=p*S+A*C,e[2]=A*S-p*C,e[3]=x*S-c*C,e},f.rotateY=function(e,t,i){i*=.5;var c=t[0],p=t[1],A=t[2],x=t[3],C=Math.sin(i),S=Math.cos(i);return e[0]=c*S-A*C,e[1]=p*S+x*C,e[2]=A*S+c*C,e[3]=x*S-p*C,e},f.rotateZ=function(e,t,i){i*=.5;var c=t[0],p=t[1],A=t[2],x=t[3],C=Math.sin(i),S=Math.cos(i);return e[0]=c*S+p*C,e[1]=p*S-c*C,e[2]=A*S+x*C,e[3]=x*S-A*C,e},f.calculateW=function(e,t){var i=t[0],c=t[1],p=t[2];return e[0]=i,e[1]=c,e[2]=p,e[3]=Math.sqrt(Math.abs(1-i*i-c*c-p*p)),e},f.dot=n.dot,f.lerp=n.lerp,f.slerp=function(e,t,i,c){var p=t[0],A=t[1],x=t[2],C=t[3],S=i[0],P=i[1],b=i[2],L=i[3],R,T,N,I,F;return T=p*S+A*P+x*b+C*L,T<0&&(T=-T,S=-S,P=-P,b=-b,L=-L),1-T>1e-6?(R=Math.acos(T),N=Math.sin(R),I=Math.sin((1-c)*R)/N,F=Math.sin(c*R)/N):(I=1-c,F=c),e[0]=I*p+F*S,e[1]=I*A+F*P,e[2]=I*x+F*b,e[3]=I*C+F*L,e},f.invert=function(e,t){var i=t[0],c=t[1],p=t[2],A=t[3],x=i*i+c*c+p*p+A*A,C=x?1/x:0;return e[0]=-i*C,e[1]=-c*C,e[2]=-p*C,e[3]=A*C,e},f.conjugate=function(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=t[3],e},f.length=n.length,f.len=f.length,f.squaredLength=n.squaredLength,f.sqrLen=f.squaredLength,f.normalize=n.normalize,f.fromMat3=function(e,t){var i=t[0]+t[4]+t[8],c;if(i>0)c=Math.sqrt(i+1),e[3]=.5*c,c=.5/c,e[0]=(t[5]-t[7])*c,e[1]=(t[6]-t[2])*c,e[2]=(t[1]-t[3])*c;else{var p=0;t[4]>t[0]&&(p=1),t[8]>t[p*3+p]&&(p=2);var A=(p+1)%3,x=(p+2)%3;c=Math.sqrt(t[p*3+p]-t[A*3+A]-t[x*3+x]+1),e[p]=.5*c,c=.5/c,e[3]=(t[A*3+x]-t[x*3+A])*c,e[A]=(t[A*3+p]+t[p*3+A])*c,e[x]=(t[x*3+p]+t[p*3+x])*c}return e},f.str=function(e){return"quat("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"},typeof v!="undefined"&&(v.quat=f)}(y.exports)})(this)},function(H,M,g){"use strict";var D=g(24),y=g(46),v=g(5),m=g(6),E=g(7),h=g(17),a=g(28),d=g(13),_=g(0),r=g.n(_),n=g(29),l=g(53),o=g.n(l),s=g(54),u=g(106),f=g(107),e=g(113),t=g(114),i=g(3),c=g(68),p=g(37),A=g(69),x=g(116),C=g(70),S=g(71),P=g(72),b=g(36),L=g(30),R=g(23),T=g(4),N=g(117),I=g(50),F=g(118),U=g(119),K=g(120),G=g(9),V=g(67),X=g(49),ee=g(15),oe=g(52),ue=g(121),Ae=g(126),fe=g(63),he=g(127),ve=g(128),me=g(129),Te=g(130),Ce=g(131),ye=g(132);r.a.util.extend(a.a.prototype,ue.a),E.a.import(Ae.a),E.a.import(fe.a),E.a.import(he.a),E.a.import(ve.a),E.a.import(me.a),E.a.import(Te.a),E.a.import(Ce.a),E.a.import(ye.a);function q(ce){return!ce||ce==="none"}function Q(ce){return ce instanceof HTMLCanvasElement||ce instanceof HTMLImageElement||ce instanceof Image}function $(ce){return ce.getZr&&ce.setOption}var j=n.a.prototype.addToScene,re=n.a.prototype.removeFromScene;n.a.prototype.addToScene=function(ce){if(j.call(this,ce),this.__zr){var Se=this.__zr;ce.traverse(function(Le){Le.__zr=Se,Le.addAnimatorsToZr&&Le.addAnimatorsToZr(Se)})}},n.a.prototype.removeFromScene=function(ce){re.call(this,ce),ce.traverse(function(Se){var Le=Se.__zr;Se.__zr=null,Le&&Se.removeAnimatorsFromZr&&Se.removeAnimatorsFromZr(Le)})},h.a.prototype.setTextureImage=function(ce,Se,Le,ze){if(this.shader){var We=Le.getZr(),tt=this,je;return tt.autoUpdateTextureStatus=!1,tt.disableTexture(ce),q(Se)||(je=k.loadTexture(Se,Le,ze,function(pe){tt.enableTexture(ce),We&&We.refresh()}),tt.set(ce,je)),je}};var k={};k.Renderer=y.a,k.Node=a.a,k.Mesh=D.a,k.Shader=E.a,k.Material=h.a,k.Texture=m.a,k.Texture2D=v.a,k.Geometry=d.a,k.SphereGeometry=c.a,k.PlaneGeometry=p.a,k.CubeGeometry=A.a,k.AmbientLight=x.a,k.DirectionalLight=C.a,k.PointLight=S.a,k.SpotLight=P.a,k.PerspectiveCamera=b.a,k.OrthographicCamera=L.a,k.Vector2=R.a,k.Vector3=T.a,k.Vector4=N.a,k.Quaternion=I.a,k.Matrix2=F.a,k.Matrix2d=U.a,k.Matrix3=K.a,k.Matrix4=G.a,k.Plane=V.a,k.Ray=X.a,k.BoundingBox=ee.a,k.Frustum=oe.a;var te=s.a.createBlank("rgba(255,255,255,0)").image;function ie(ce){return Math.pow(2,Math.round(Math.log(ce)/Math.LN2))}function J(ce){if((ce.wrapS===m.a.REPEAT||ce.wrapT===m.a.REPEAT)&&ce.image){var Se=ie(ce.width),Le=ie(ce.height);if(Se!==ce.width||Le!==ce.height){var ze=document.createElement("canvas");ze.width=Se,ze.height=Le;var We=ze.getContext("2d");We.drawImage(ce.image,0,0,Se,Le),ce.image=ze}}}k.loadTexture=function(ce,Se,Le,ze){typeof Le=="function"&&(ze=Le,Le={}),Le=Le||{};for(var We=Object.keys(Le).sort(),tt="",je=0;je<We.length;je++)tt+=We[je]+"_"+Le[We[je]]+"_";var pe=Se.__textureCache=Se.__textureCache||new o.a(20);if($(ce)){var Oe=ce.__textureid__,Ie=pe.get(tt+Oe);if(Ie)Ie.texture.surface.setECharts(ce),ze&&ze(Ie.texture);else{var Pe=new u.a(ce);Pe.onupdate=function(){Se.getZr().refresh()},Ie={texture:Pe.getTexture()};for(var je=0;je<We.length;je++)Ie.texture[We[je]]=Le[We[je]];Oe=ce.__textureid__||"__ecgl_ec__"+Ie.texture.__uid__,ce.__textureid__=Oe,pe.put(tt+Oe,Ie),ze&&ze(Ie.texture)}return Ie.texture}else if(Q(ce)){var Oe=ce.__textureid__,Ie=pe.get(tt+Oe);if(!Ie){Ie={texture:new k.Texture2D({image:ce})};for(var je=0;je<We.length;je++)Ie.texture[We[je]]=Le[We[je]];Oe=ce.__textureid__||"__ecgl_image__"+Ie.texture.__uid__,ce.__textureid__=Oe,pe.put(tt+Oe,Ie),J(Ie.texture),ze&&ze(Ie.texture)}return Ie.texture}else{var Ie=pe.get(tt+ce);if(Ie)Ie.callbacks?Ie.callbacks.push(ze):ze&&ze(Ie.texture);else if(ce.match(/.hdr$|^data:application\/octet-stream/)){Ie={callbacks:[ze]};var ot=s.a.loadTexture(ce,{exposure:Le.exposure,fileType:"hdr"},function(){ot.dirty(),Ie.callbacks.forEach(function(At){At&&At(ot)}),Ie.callbacks=null});Ie.texture=ot,pe.put(tt+ce,Ie)}else{for(var ot=new k.Texture2D({image:new Image}),je=0;je<We.length;je++)ot[We[je]]=Le[We[je]];Ie={texture:ot,callbacks:[ze]};var ht=ot.image;ht.onload=function(){ot.image=ht,J(ot),ot.dirty(),Ie.callbacks.forEach(function(Ot){Ot&&Ot(ot)}),Ie.callbacks=null},ht.src=ce,ot.image=te,pe.put(tt+ce,Ie)}return Ie.texture}},k.createAmbientCubemap=function(ce,Se,Le,ze){ce=ce||{};var We=ce.texture,tt=i.a.firstNotNull(ce.exposure,1),je=new f.a({intensity:i.a.firstNotNull(ce.specularIntensity,1)}),pe=new e.a({intensity:i.a.firstNotNull(ce.diffuseIntensity,1),coefficients:[.844,.712,.691,-.037,.083,.167,.343,.288,.299,-.041,-.021,-.009,-.003,-.041,-.064,-.011,-.007,-.004,-.031,.034,.081,-.06,-.049,-.06,.046,.056,.05]});return je.cubemap=k.loadTexture(We,Le,{exposure:tt},function(){je.cubemap.flipY=!1,je.prefilter(Se,32),pe.coefficients=t.a.projectEnvironmentMap(Se,je.cubemap,{lod:1}),ze&&ze()}),{specular:je,diffuse:pe}},k.createBlankTexture=s.a.createBlank,k.isImage=Q,k.additiveBlend=function(ce){ce.blendEquation(ce.FUNC_ADD),ce.blendFunc(ce.SRC_ALPHA,ce.ONE)},k.parseColor=function(ce,Se){return ce instanceof Array?(Se||(Se=[]),Se[0]=ce[0],Se[1]=ce[1],Se[2]=ce[2],ce.length>3?Se[3]=ce[3]:Se[3]=1,Se):(Se=r.a.color.parse(ce||"#000",Se)||[0,0,0,0],Se[0]/=255,Se[1]/=255,Se[2]/=255,Se)},k.directionFromAlphaBeta=function(ce,Se){var Le=ce/180*Math.PI+Math.PI/2,ze=-Se/180*Math.PI+Math.PI/2,We=[],tt=Math.sin(Le);return We[0]=tt*Math.cos(ze),We[1]=-Math.cos(Le),We[2]=tt*Math.sin(ze),We},k.getShadowResolution=function(ce){var Se=1024;switch(ce){case"low":Se=512;break;case"medium":break;case"high":Se=2048;break;case"ultra":Se=4096;break}return Se},k.COMMON_SHADERS=["lambert","color","realistic","hatching"],k.createShader=function(ce){var Se=E.a.source(ce+".vertex"),Le=E.a.source(ce+".fragment");Se||console.error("Vertex shader of '%s' not exits",ce),Le||console.error("Fragment shader of '%s' not exits",ce);var ze=new E.a(Se,Le);return ze.name=ce,ze},k.createMaterial=function(ce,Se){Se instanceof Array||(Se=[Se]);var Le=k.createShader(ce),ze=new h.a({shader:Le});return Se.forEach(function(We){typeof We=="string"&&ze.define(We)}),ze},k.setMaterialFromModel=function(ce,Se,Le,ze){Se.autoUpdateTextureStatus=!1;var We=Le.getModel(ce+"Material"),tt=We.get("detailTexture"),je=i.a.firstNotNull(We.get("textureTiling"),1),pe=i.a.firstNotNull(We.get("textureOffset"),0);typeof je=="number"&&(je=[je,je]),typeof pe=="number"&&(pe=[pe,pe]);var Oe=je[0]>1||je[1]>1?k.Texture.REPEAT:k.Texture.CLAMP_TO_EDGE,Ie={anisotropic:8,wrapS:Oe,wrapT:Oe};if(ce==="realistic"){var Pe=We.get("roughness"),ot=We.get("metalness");ot!=null?isNaN(ot)&&(Se.setTextureImage("metalnessMap",ot,ze,Ie),ot=i.a.firstNotNull(We.get("metalnessAdjust"),.5)):ot=0,Pe!=null?isNaN(Pe)&&(Se.setTextureImage("roughnessMap",Pe,ze,Ie),Pe=i.a.firstNotNull(We.get("roughnessAdjust"),.5)):Pe=.5;var ht=We.get("normalTexture");Se.setTextureImage("detailMap",tt,ze,Ie),Se.setTextureImage("normalMap",ht,ze,Ie),Se.set({roughness:Pe,metalness:ot,detailUvRepeat:je,detailUvOffset:pe})}else if(ce==="lambert")Se.setTextureImage("detailMap",tt,ze,Ie),Se.set({detailUvRepeat:je,detailUvOffset:pe});else if(ce==="color")Se.setTextureImage("detailMap",tt,ze,Ie),Se.set({detailUvRepeat:je,detailUvOffset:pe});else if(ce==="hatching"){var dt=We.get("hatchingTextures")||[];dt.length<6&&console.error("Invalid hatchingTextures.");for(var At=0;At<6;At++)Se.setTextureImage("hatch"+(At+1),dt[At],ze,{anisotropic:8,wrapS:k.Texture.REPEAT,wrapT:k.Texture.REPEAT});Se.set({detailUvRepeat:je,detailUvOffset:pe})}},k.updateVertexAnimation=function(ce,Se,Le,ze){var We=ze.get("animation"),tt=ze.get("animationDurationUpdate"),je=ze.get("animationEasingUpdate"),pe=Le.shadowDepthMaterial;if(We&&Se&&tt>0&&Se.geometry.vertexCount===Le.geometry.vertexCount){Le.material.define("vertex","VERTEX_ANIMATION"),Le.ignorePreZ=!0,pe&&pe.define("vertex","VERTEX_ANIMATION");for(var Oe=0;Oe<ce.length;Oe++)Le.geometry.attributes[ce[Oe][0]].value=Se.geometry.attributes[ce[Oe][1]].value;Le.geometry.dirty(),Le.__percent=0,Le.material.set("percent",0),Le.stopAnimation(),Le.animate().when(tt,{__percent:1}).during(function(){Le.material.set("percent",Le.__percent),pe&&pe.set("percent",Le.__percent)}).done(function(){Le.ignorePreZ=!1,Le.material.undefine("vertex","VERTEX_ANIMATION"),pe&&pe.undefine("vertex","VERTEX_ANIMATION")}).start(je)}else Le.material.undefine("vertex","VERTEX_ANIMATION"),pe&&pe.undefine("vertex","VERTEX_ANIMATION")},M.a=k},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v={firstNotNull:function(){for(var m=0,E=arguments.length;m<E;m++)if(arguments[m]!=null)return arguments[m]},queryDataIndex:function(m,E){if(E.dataIndexInside!=null)return E.dataIndexInside;if(E.dataIndex!=null)return y.a.util.isArray(E.dataIndex)?y.a.util.map(E.dataIndex,function(h){return m.indexOfRawIndex(h)}):m.indexOfRawIndex(E.dataIndex);if(E.name!=null)return y.a.util.isArray(E.name)?y.a.util.map(E.name,function(h){return m.indexOfName(h)}):m.indexOfName(E.name)}};M.a=v},function(H,M,g){"use strict";var D=g(1),y=g.n(D),v=y.a.vec3,m=function(n,l,o){n=n||0,l=l||0,o=o||0,this.array=v.fromValues(n,l,o),this._dirty=!0};m.prototype={constructor:m,add:function(n){return v.add(this.array,this.array,n.array),this._dirty=!0,this},set:function(n,l,o){return this.array[0]=n,this.array[1]=l,this.array[2]=o,this._dirty=!0,this},setArray:function(n){return this.array[0]=n[0],this.array[1]=n[1],this.array[2]=n[2],this._dirty=!0,this},clone:function(){return new m(this.x,this.y,this.z)},copy:function(n){return v.copy(this.array,n.array),this._dirty=!0,this},cross:function(n,l){return v.cross(this.array,n.array,l.array),this._dirty=!0,this},dist:function(n){return v.dist(this.array,n.array)},distance:function(n){return v.distance(this.array,n.array)},div:function(n){return v.div(this.array,this.array,n.array),this._dirty=!0,this},divide:function(n){return v.divide(this.array,this.array,n.array),this._dirty=!0,this},dot:function(n){return v.dot(this.array,n.array)},len:function(){return v.len(this.array)},length:function(){return v.length(this.array)},lerp:function(n,l,o){return v.lerp(this.array,n.array,l.array,o),this._dirty=!0,this},min:function(n){return v.min(this.array,this.array,n.array),this._dirty=!0,this},max:function(n){return v.max(this.array,this.array,n.array),this._dirty=!0,this},mul:function(n){return v.mul(this.array,this.array,n.array),this._dirty=!0,this},multiply:function(n){return v.multiply(this.array,this.array,n.array),this._dirty=!0,this},negate:function(){return v.negate(this.array,this.array),this._dirty=!0,this},normalize:function(){return v.normalize(this.array,this.array),this._dirty=!0,this},random:function(n){return v.random(this.array,n),this._dirty=!0,this},scale:function(n){return v.scale(this.array,this.array,n),this._dirty=!0,this},scaleAndAdd:function(n,l){return v.scaleAndAdd(this.array,this.array,n.array,l),this._dirty=!0,this},sqrDist:function(n){return v.sqrDist(this.array,n.array)},squaredDistance:function(n){return v.squaredDistance(this.array,n.array)},sqrLen:function(){return v.sqrLen(this.array)},squaredLength:function(){return v.squaredLength(this.array)},sub:function(n){return v.sub(this.array,this.array,n.array),this._dirty=!0,this},subtract:function(n){return v.subtract(this.array,this.array,n.array),this._dirty=!0,this},transformMat3:function(n){return v.transformMat3(this.array,this.array,n.array),this._dirty=!0,this},transformMat4:function(n){return v.transformMat4(this.array,this.array,n.array),this._dirty=!0,this},transformQuat:function(n){return v.transformQuat(this.array,this.array,n.array),this._dirty=!0,this},applyProjection:function(n){var l=this.array;if(n=n.array,n[15]===0){var o=-1/l[2];l[0]=n[0]*l[0]*o,l[1]=n[5]*l[1]*o,l[2]=(n[10]*l[2]+n[14])*o}else l[0]=n[0]*l[0]+n[12],l[1]=n[5]*l[1]+n[13],l[2]=n[10]*l[2]+n[14];return this._dirty=!0,this},eulerFromQuat:function(n,l){m.eulerFromQuat(this,n,l)},eulerFromMat3:function(n,l){m.eulerFromMat3(this,n,l)},toString:function(){return"["+Array.prototype.join.call(this.array,",")+"]"},toArray:function(){return Array.prototype.slice.call(this.array)}};var E=Object.defineProperty;if(E){var h=m.prototype;E(h,"x",{get:function(){return this.array[0]},set:function(n){this.array[0]=n,this._dirty=!0}}),E(h,"y",{get:function(){return this.array[1]},set:function(n){this.array[1]=n,this._dirty=!0}}),E(h,"z",{get:function(){return this.array[2]},set:function(n){this.array[2]=n,this._dirty=!0}})}m.add=function(n,l,o){return v.add(n.array,l.array,o.array),n._dirty=!0,n},m.set=function(n,l,o,s){v.set(n.array,l,o,s),n._dirty=!0},m.copy=function(n,l){return v.copy(n.array,l.array),n._dirty=!0,n},m.cross=function(n,l,o){return v.cross(n.array,l.array,o.array),n._dirty=!0,n},m.dist=function(n,l){return v.distance(n.array,l.array)},m.distance=m.dist,m.div=function(n,l,o){return v.divide(n.array,l.array,o.array),n._dirty=!0,n},m.divide=m.div,m.dot=function(n,l){return v.dot(n.array,l.array)},m.len=function(n){return v.length(n.array)},m.lerp=function(n,l,o,s){return v.lerp(n.array,l.array,o.array,s),n._dirty=!0,n},m.min=function(n,l,o){return v.min(n.array,l.array,o.array),n._dirty=!0,n},m.max=function(n,l,o){return v.max(n.array,l.array,o.array),n._dirty=!0,n},m.mul=function(n,l,o){return v.multiply(n.array,l.array,o.array),n._dirty=!0,n},m.multiply=m.mul,m.negate=function(n,l){return v.negate(n.array,l.array),n._dirty=!0,n},m.normalize=function(n,l){return v.normalize(n.array,l.array),n._dirty=!0,n},m.random=function(n,l){return v.random(n.array,l),n._dirty=!0,n},m.scale=function(n,l,o){return v.scale(n.array,l.array,o),n._dirty=!0,n},m.scaleAndAdd=function(n,l,o,s){return v.scaleAndAdd(n.array,l.array,o.array,s),n._dirty=!0,n},m.sqrDist=function(n,l){return v.sqrDist(n.array,l.array)},m.squaredDistance=m.sqrDist,m.sqrLen=function(n){return v.sqrLen(n.array)},m.squaredLength=m.sqrLen,m.sub=function(n,l,o){return v.subtract(n.array,l.array,o.array),n._dirty=!0,n},m.subtract=m.sub,m.transformMat3=function(n,l,o){return v.transformMat3(n.array,l.array,o.array),n._dirty=!0,n},m.transformMat4=function(n,l,o){return v.transformMat4(n.array,l.array,o.array),n._dirty=!0,n},m.transformQuat=function(n,l,o){return v.transformQuat(n.array,l.array,o.array),n._dirty=!0,n};function a(n,l,o){return n<l?l:n>o?o:n}var d=Math.atan2,_=Math.asin,r=Math.abs;m.eulerFromQuat=function(n,l,x){n._dirty=!0,l=l.array;var s=n.array,u=l[0],f=l[1],e=l[2],t=l[3],i=u*u,c=f*f,p=e*e,A=t*t,x=(x||"XYZ").toUpperCase();switch(x){case"XYZ":s[0]=d(2*(u*t-f*e),A-i-c+p),s[1]=_(a(2*(u*e+f*t),-1,1)),s[2]=d(2*(e*t-u*f),A+i-c-p);break;case"YXZ":s[0]=_(a(2*(u*t-f*e),-1,1)),s[1]=d(2*(u*e+f*t),A-i-c+p),s[2]=d(2*(u*f+e*t),A-i+c-p);break;case"ZXY":s[0]=_(a(2*(u*t+f*e),-1,1)),s[1]=d(2*(f*t-e*u),A-i-c+p),s[2]=d(2*(e*t-u*f),A-i+c-p);break;case"ZYX":s[0]=d(2*(u*t+e*f),A-i-c+p),s[1]=_(a(2*(f*t-u*e),-1,1)),s[2]=d(2*(u*f+e*t),A+i-c-p);break;case"YZX":s[0]=d(2*(u*t-e*f),A-i+c-p),s[1]=d(2*(f*t-u*e),A+i-c-p),s[2]=_(a(2*(u*f+e*t),-1,1));break;case"XZY":s[0]=d(2*(u*t+f*e),A-i+c-p),s[1]=d(2*(u*e+f*t),A+i-c-p),s[2]=_(a(2*(e*t-u*f),-1,1));break;default:console.warn("Unkown order: "+x)}return n},m.eulerFromMat3=function(n,l,S){var s=l.array,u=s[0],f=s[3],e=s[6],t=s[1],i=s[4],c=s[7],p=s[2],A=s[5],x=s[8],C=n.array,S=(S||"XYZ").toUpperCase();switch(S){case"XYZ":C[1]=_(a(e,-1,1)),r(e)<.99999?(C[0]=d(-c,x),C[2]=d(-f,u)):(C[0]=d(A,i),C[2]=0);break;case"YXZ":C[0]=_(-a(c,-1,1)),r(c)<.99999?(C[1]=d(e,x),C[2]=d(t,i)):(C[1]=d(-p,u),C[2]=0);break;case"ZXY":C[0]=_(a(A,-1,1)),r(A)<.99999?(C[1]=d(-p,x),C[2]=d(-f,i)):(C[1]=0,C[2]=d(t,u));break;case"ZYX":C[1]=_(-a(p,-1,1)),r(p)<.99999?(C[0]=d(A,x),C[2]=d(t,u)):(C[0]=0,C[2]=d(-f,i));break;case"YZX":C[2]=_(a(t,-1,1)),r(t)<.99999?(C[0]=d(-c,i),C[1]=d(-p,u)):(C[0]=0,C[1]=d(e,x));break;case"XZY":C[2]=_(-a(f,-1,1)),r(f)<.99999?(C[0]=d(A,i),C[1]=d(e,u)):(C[0]=d(-c,x),C[1]=0);break;default:console.warn("Unkown order: "+S)}return n._dirty=!0,n},m.POSITIVE_X=new m(1,0,0),m.NEGATIVE_X=new m(-1,0,0),m.POSITIVE_Y=new m(0,1,0),m.NEGATIVE_Y=new m(0,-1,0),m.POSITIVE_Z=new m(0,0,1),m.NEGATIVE_Z=new m(0,0,-1),m.UP=new m(0,1,0),m.ZERO=new m(0,0,0),M.a=m},function(H,M,g){"use strict";var D=g(6),y=g(11),v=g(66),m=v.a.isPowerOfTwo,E=D.a.extend(function(){return{image:null,pixels:null,mipmaps:[]}},{update:function(h){var a=h.gl;a.bindTexture(a.TEXTURE_2D,this._cache.get("webgl_texture")),this.updateCommon(h);var d=this.format,_=this.type;a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_S,this.getAvailableWrapS()),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_WRAP_T,this.getAvailableWrapT()),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MAG_FILTER,this.getAvailableMagFilter()),a.texParameteri(a.TEXTURE_2D,a.TEXTURE_MIN_FILTER,this.getAvailableMinFilter());var r=h.getGLExtension("EXT_texture_filter_anisotropic");if(r&&this.anisotropic>1&&a.texParameterf(a.TEXTURE_2D,r.TEXTURE_MAX_ANISOTROPY_EXT,this.anisotropic),_===36193){var n=h.getGLExtension("OES_texture_half_float");n||(_=y.a.FLOAT)}if(this.mipmaps.length)for(var l=this.width,o=this.height,s=0;s<this.mipmaps.length;s++){var u=this.mipmaps[s];this._updateTextureData(a,u,s,l,o,d,_),l/=2,o/=2}else this._updateTextureData(a,this,0,this.width,this.height,d,_),this.useMipmap&&!this.NPOT&&a.generateMipmap(a.TEXTURE_2D);a.bindTexture(a.TEXTURE_2D,null)},_updateTextureData:function(h,a,d,_,r,n,l){a.image?h.texImage2D(h.TEXTURE_2D,d,n,n,l,a.image):n<=D.a.COMPRESSED_RGBA_S3TC_DXT5_EXT&&n>=D.a.COMPRESSED_RGB_S3TC_DXT1_EXT?h.compressedTexImage2D(h.TEXTURE_2D,d,n,_,r,0,a.pixels):h.texImage2D(h.TEXTURE_2D,d,n,_,r,0,n,l,a.pixels)},generateMipmap:function(h){var a=h.gl;this.useMipmap&&!this.NPOT&&(a.bindTexture(a.TEXTURE_2D,this._cache.get("webgl_texture")),a.generateMipmap(a.TEXTURE_2D))},isPowerOfTwo:function(){var h,a;return this.image?(h=this.image.width,a=this.image.height):(h=this.width,a=this.height),m(h)&&m(a)},isRenderable:function(){return this.image?this.image.nodeName==="CANVAS"||this.image.nodeName==="VIDEO"||this.image.complete:!!(this.width&&this.height)},bind:function(h){h.gl.bindTexture(h.gl.TEXTURE_2D,this.getWebGLTexture(h))},unbind:function(h){h.gl.bindTexture(h.gl.TEXTURE_2D,null)},load:function(h,a){var d=new Image;a&&(d.crossOrigin=a);var _=this;return d.onload=function(){_.dirty(),_.trigger("success",_),d.onload=null},d.onerror=function(){_.trigger("error",_),d.onerror=null},d.src=h,this.image=d,this}});Object.defineProperty(E.prototype,"width",{get:function(){return this.image?this.image.width:this._width},set:function(h){this.image?console.warn("Texture from image can't set width"):(this._width!==h&&this.dirty(),this._width=h)}}),Object.defineProperty(E.prototype,"height",{get:function(){return this.image?this.image.height:this._height},set:function(h){this.image?console.warn("Texture from image can't set height"):(this._height!==h&&this.dirty(),this._height=h)}}),M.a=E},function(H,M,g){"use strict";var D=g(8),y=g(11),v=g(48),m=D.a.extend({width:512,height:512,type:y.a.UNSIGNED_BYTE,format:y.a.RGBA,wrapS:y.a.REPEAT,wrapT:y.a.REPEAT,minFilter:y.a.LINEAR_MIPMAP_LINEAR,magFilter:y.a.LINEAR,useMipmap:!0,anisotropic:1,flipY:!0,sRGB:!0,unpackAlignment:4,premultiplyAlpha:!1,dynamic:!1,NPOT:!1},function(){this._cache=new v.a},{getWebGLTexture:function(E){var h=E.gl,a=this._cache;return a.use(E.__uid__),a.miss("webgl_texture")&&a.put("webgl_texture",h.createTexture()),this.dynamic?this.update(E):a.isDirty()&&(this.update(E),a.fresh()),a.get("webgl_texture")},bind:function(){},unbind:function(){},dirty:function(){this._cache&&this._cache.dirtyAll()},update:function(E){},updateCommon:function(E){var h=E.gl;h.pixelStorei(h.UNPACK_FLIP_Y_WEBGL,this.flipY),h.pixelStorei(h.UNPACK_PREMULTIPLY_ALPHA_WEBGL,this.premultiplyAlpha),h.pixelStorei(h.UNPACK_ALIGNMENT,this.unpackAlignment),this.format===y.a.DEPTH_COMPONENT&&(this.useMipmap=!1);var a=E.getGLExtension("EXT_sRGB");this.format===m.SRGB&&!a&&(this.format=m.RGB),this.format===m.SRGB_ALPHA&&!a&&(this.format=m.RGBA),this.NPOT=!this.isPowerOfTwo()},getAvailableWrapS:function(){return this.NPOT?y.a.CLAMP_TO_EDGE:this.wrapS},getAvailableWrapT:function(){return this.NPOT?y.a.CLAMP_TO_EDGE:this.wrapT},getAvailableMinFilter:function(){var E=this.minFilter;return this.NPOT||!this.useMipmap?E==y.a.NEAREST_MIPMAP_NEAREST||E==y.a.NEAREST_MIPMAP_LINEAR?y.a.NEAREST:E==y.a.LINEAR_MIPMAP_LINEAR||E==y.a.LINEAR_MIPMAP_NEAREST?y.a.LINEAR:E:E},getAvailableMagFilter:function(){return this.magFilter},nextHighestPowerOfTwo:function(E){--E;for(var h=1;h<32;h<<=1)E=E|E>>h;return E+1},dispose:function(E){var h=this._cache;h.use(E.__uid__);var a=h.get("webgl_texture");a&&E.gl.deleteTexture(a),h.deleteContext(E.__uid__)},isRenderable:function(){},isPowerOfTwo:function(){}});Object.defineProperty(m.prototype,"width",{get:function(){return this._width},set:function(E){this._width=E}}),Object.defineProperty(m.prototype,"height",{get:function(){return this._height},set:function(E){this._height=E}}),m.BYTE=y.a.BYTE,m.UNSIGNED_BYTE=y.a.UNSIGNED_BYTE,m.SHORT=y.a.SHORT,m.UNSIGNED_SHORT=y.a.UNSIGNED_SHORT,m.INT=y.a.INT,m.UNSIGNED_INT=y.a.UNSIGNED_INT,m.FLOAT=y.a.FLOAT,m.HALF_FLOAT=36193,m.UNSIGNED_INT_24_8_WEBGL=34042,m.DEPTH_COMPONENT=y.a.DEPTH_COMPONENT,m.DEPTH_STENCIL=y.a.DEPTH_STENCIL,m.ALPHA=y.a.ALPHA,m.RGB=y.a.RGB,m.RGBA=y.a.RGBA,m.LUMINANCE=y.a.LUMINANCE,m.LUMINANCE_ALPHA=y.a.LUMINANCE_ALPHA,m.SRGB=35904,m.SRGB_ALPHA=35906,m.COMPRESSED_RGB_S3TC_DXT1_EXT=33776,m.COMPRESSED_RGBA_S3TC_DXT1_EXT=33777,m.COMPRESSED_RGBA_S3TC_DXT3_EXT=33778,m.COMPRESSED_RGBA_S3TC_DXT5_EXT=33779,m.NEAREST=y.a.NEAREST,m.LINEAR=y.a.LINEAR,m.NEAREST_MIPMAP_NEAREST=y.a.NEAREST_MIPMAP_NEAREST,m.LINEAR_MIPMAP_NEAREST=y.a.LINEAR_MIPMAP_NEAREST,m.NEAREST_MIPMAP_LINEAR=y.a.NEAREST_MIPMAP_LINEAR,m.LINEAR_MIPMAP_LINEAR=y.a.LINEAR_MIPMAP_LINEAR,m.REPEAT=y.a.REPEAT,m.CLAMP_TO_EDGE=y.a.CLAMP_TO_EDGE,m.MIRRORED_REPEAT=y.a.MIRRORED_REPEAT,M.a=m},function(H,M,g){"use strict";var D=g(21),y=g(18),v=g(1),m=g.n(v),E=m.a.mat2,h=m.a.mat3,a=m.a.mat4,d=/uniform\s+(bool|float|int|vec2|vec3|vec4|ivec2|ivec3|ivec4|mat2|mat3|mat4|sampler2D|samplerCube)\s+([\w\,]+)?(\[.*?\])?\s*(:\s*([\S\s]+?))?;/g,_=/attribute\s+(float|int|vec2|vec3|vec4)\s+(\w*)\s*(:\s*(\w+))?;/g,r=/#define\s+(\w+)?(\s+[\w-.]+)?\s*;?\s*\n/g,n={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"},l={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 E.create()},mat3:function(){return h.create()},mat4:function(){return a.create()},array:function(){return[]}},o=["POSITION","NORMAL","BINORMAL","TANGENT","TEXCOORD","TEXCOORD_0","TEXCOORD_1","COLOR","JOINT","WEIGHT"],s=["SKIN_MATRIX","VIEWPORT_SIZE","VIEWPORT","DEVICEPIXELRATIO","WINDOW_SIZE","NEAR","FAR","TIME"],u=["WORLD","VIEW","PROJECTION","WORLDVIEW","VIEWPROJECTION","WORLDVIEWPROJECTION","WORLDINVERSE","VIEWINVERSE","PROJECTIONINVERSE","WORLDVIEWINVERSE","VIEWPROJECTIONINVERSE","WORLDVIEWPROJECTIONINVERSE","WORLDTRANSPOSE","VIEWTRANSPOSE","PROJECTIONTRANSPOSE","WORLDVIEWTRANSPOSE","VIEWPROJECTIONTRANSPOSE","WORLDVIEWPROJECTIONTRANSPOSE","WORLDINVERSETRANSPOSE","VIEWINVERSETRANSPOSE","PROJECTIONINVERSETRANSPOSE","WORLDVIEWINVERSETRANSPOSE","VIEWPROJECTIONINVERSETRANSPOSE","WORLDVIEWPROJECTIONINVERSETRANSPOSE"],f={},e={};function t(A,x){var C="vertex:"+A+"fragment:"+x;if(f[C])return f[C];var S=D.a.genGUID();return f[C]=S,e[S]={vertex:A,fragment:x},S}function i(A,x){typeof A=="object"&&(x=A.fragment,A=A.vertex),this._shaderID=t(A,x),this._vertexCode=i.parseImport(A),this._fragmentCode=i.parseImport(x),this.attributeSemantics={},this.matrixSemantics={},this.uniformSemantics={},this.matrixSemanticKeys=[],this.uniformTemplates={},this.attributes={},this.textures={},this.vertexDefines={},this.fragmentDefines={},this._parseAttributes(),this._parseUniforms(),this._parseDefines()}i.prototype={constructor:i,createUniforms:function(){var A={};for(var x in this.uniformTemplates){var C=this.uniformTemplates[x];A[x]={type:C.type,value:C.value()}}return A},_parseImport:function(){this._vertexCode=i.parseImport(this.vertex),this._fragmentCode=i.parseImport(this.fragment)},_parseUniforms:function(){var A={},x=this,C="vertex";this._uniformList=[],this._vertexCode=this._vertexCode.replace(d,S),C="fragment",this._fragmentCode=this._fragmentCode.replace(d,S),x.matrixSemanticKeys=Object.keys(this.matrixSemantics);function S(P,b,L,R,T,N){if(b&&L){var I=n[b],F=!0,U;if(I){if(x._uniformList.push(L),(b==="sampler2D"||b==="samplerCube")&&(x.textures[L]={shaderType:C,type:b}),R&&(I+="v"),N)if(o.indexOf(N)>=0)x.attributeSemantics[N]={symbol:L,type:I},F=!1;else if(u.indexOf(N)>=0){var K=!1,G=N;N.match(/TRANSPOSE$/)&&(K=!0,G=N.slice(0,-9)),x.matrixSemantics[N]={symbol:L,type:I,isTranspose:K,semanticNoTranspose:G},F=!1}else if(s.indexOf(N)>=0)x.uniformSemantics[N]={symbol:L,type:I},F=!1;else if(N==="unconfigurable")F=!1;else if(U=x._parseDefaultValue(b,N),U)N="";else throw new Error('Unkown semantic "'+N+'"');F&&(A[L]={type:I,value:R?l.array:U||l[b],semantic:N||null})}return["uniform",b,L,R].join(" ")+`;
|
|
`}}this.uniformTemplates=A},_parseDefaultValue:function(A,x){var C=/\[\s*(.*)\s*\]/;if(A==="vec2"||A==="vec3"||A==="vec4"){var S=C.exec(x)[1];if(S){var P=S.split(/\s*,\s*/);return function(){return new y.a.Float32Array(P)}}else return}else{if(A==="bool")return function(){return x.toLowerCase()==="true"};if(A==="float")return function(){return parseFloat(x)};if(A==="int")return function(){return parseInt(x)}}},_parseAttributes:function(){var A={},x=this;this._vertexCode=this._vertexCode.replace(_,C);function C(S,P,b,L,R){if(P&&b){var T=1;switch(P){case"vec4":T=4;break;case"vec3":T=3;break;case"vec2":T=2;break;case"float":T=1;break}if(A[b]={type:"float",size:T,semantic:R||null},R){if(o.indexOf(R)<0)throw new Error('Unkown semantic "'+R+'"');x.attributeSemantics[R]={symbol:b,type:P}}}return["attribute",P,b].join(" ")+`;
|
|
`}this.attributes=A},_parseDefines:function(){var A=this,x="vertex";this._vertexCode=this._vertexCode.replace(r,C),x="fragment",this._fragmentCode=this._fragmentCode.replace(r,C);function C(S,P,b){var L=x==="vertex"?A.vertexDefines:A.fragmentDefines;return L[P]||(b=="false"?L[P]=!1:b=="true"?L[P]=!0:L[P]=b?isNaN(parseFloat(b))?b.trim():parseFloat(b):null),""}},clone:function(){var A=e[this._shaderID],x=new i(A.vertex,A.fragment);return x}},Object.defineProperty&&(Object.defineProperty(i.prototype,"shaderID",{get:function(){return this._shaderID}}),Object.defineProperty(i.prototype,"vertex",{get:function(){return this._vertexCode}}),Object.defineProperty(i.prototype,"fragment",{get:function(){return this._fragmentCode}}),Object.defineProperty(i.prototype,"uniforms",{get:function(){return this._uniformList}}));var c=/(@import)\s*([0-9a-zA-Z_\-\.]*)/g;i.parseImport=function(A){return A=A.replace(c,function(P,C,S){var P=i.source(S);return P?i.parseImport(P):(console.error('Shader chunk "'+S+'" not existed in library'),"")}),A};var p=/(@export)\s*([0-9a-zA-Z_\-\.]*)\s*\n([\s\S]*?)@end/g;i.import=function(A){A.replace(p,function(x,C,S,b){var b=b.replace(/(^[\s\t\xa0\u3000]+)|([\u3000\xa0\s\t]+\x24)/g,"");if(b){for(var L=S.split("."),R=i.codes,T=0,N;T<L.length-1;)N=L[T++],R[N]||(R[N]={}),R=R[N];N=L[T],R[N]=b}return b})},i.codes={},i.source=function(A){for(var x=A.split("."),C=i.codes,S=0;C&&S<x.length;){var P=x[S++];C=C[P]}return typeof C!="string"?(console.error('Shader "'+A+'" not existed in library'),""):C},M.a=i},function(H,M,g){"use strict";var D=g(91),y=g(47),v=g(21),m=function(){this.__uid__=v.a.genGUID()};m.__initializers__=[function(E){v.a.extend(this,E)}],v.a.extend(m,D.a),v.a.extend(m.prototype,y.a),M.a=m},function(H,M,g){"use strict";var D=g(1),y=g.n(D),v=g(4),m=y.a.mat4,E=y.a.vec3,h=y.a.mat3,a=y.a.quat,d=function(){this._axisX=new v.a,this._axisY=new v.a,this._axisZ=new v.a,this.array=m.create(),this._dirty=!0};d.prototype={constructor:d,setArray:function(n){for(var l=0;l<this.array.length;l++)this.array[l]=n[l];return this._dirty=!0,this},adjoint:function(){return m.adjoint(this.array,this.array),this._dirty=!0,this},clone:function(){return new d().copy(this)},copy:function(n){return m.copy(this.array,n.array),this._dirty=!0,this},determinant:function(){return m.determinant(this.array)},fromQuat:function(n){return m.fromQuat(this.array,n.array),this._dirty=!0,this},fromRotationTranslation:function(n,l){return m.fromRotationTranslation(this.array,n.array,l.array),this._dirty=!0,this},fromMat2d:function(n){return d.fromMat2d(this,n),this},frustum:function(n,l,o,s,u,f){return m.frustum(this.array,n,l,o,s,u,f),this._dirty=!0,this},identity:function(){return m.identity(this.array),this._dirty=!0,this},invert:function(){return m.invert(this.array,this.array),this._dirty=!0,this},lookAt:function(n,l,o){return m.lookAt(this.array,n.array,l.array,o.array),this._dirty=!0,this},mul:function(n){return m.mul(this.array,this.array,n.array),this._dirty=!0,this},mulLeft:function(n){return m.mul(this.array,n.array,this.array),this._dirty=!0,this},multiply:function(n){return m.multiply(this.array,this.array,n.array),this._dirty=!0,this},multiplyLeft:function(n){return m.multiply(this.array,n.array,this.array),this._dirty=!0,this},ortho:function(n,l,o,s,u,f){return m.ortho(this.array,n,l,o,s,u,f),this._dirty=!0,this},perspective:function(n,l,o,s){return m.perspective(this.array,n,l,o,s),this._dirty=!0,this},rotate:function(n,l){return m.rotate(this.array,this.array,n,l.array),this._dirty=!0,this},rotateX:function(n){return m.rotateX(this.array,this.array,n),this._dirty=!0,this},rotateY:function(n){return m.rotateY(this.array,this.array,n),this._dirty=!0,this},rotateZ:function(n){return m.rotateZ(this.array,this.array,n),this._dirty=!0,this},scale:function(n){return m.scale(this.array,this.array,n.array),this._dirty=!0,this},translate:function(n){return m.translate(this.array,this.array,n.array),this._dirty=!0,this},transpose:function(){return m.transpose(this.array,this.array),this._dirty=!0,this},decomposeMatrix:function(){var n=E.create(),l=E.create(),o=E.create(),s=h.create();return function(u,f,e){var t=this.array;E.set(n,t[0],t[1],t[2]),E.set(l,t[4],t[5],t[6]),E.set(o,t[8],t[9],t[10]);var i=E.length(n),c=E.length(l),p=E.length(o),A=this.determinant();A<0&&(i=-i),u&&u.set(i,c,p),e.set(t[12],t[13],t[14]),h.fromMat4(s,t),s[0]/=i,s[1]/=i,s[2]/=i,s[3]/=c,s[4]/=c,s[5]/=c,s[6]/=p,s[7]/=p,s[8]/=p,a.fromMat3(f.array,s),a.normalize(f.array,f.array),f._dirty=!0,e._dirty=!0}}(),toString:function(){return"["+Array.prototype.join.call(this.array,",")+"]"},toArray:function(){return Array.prototype.slice.call(this.array)}};var _=Object.defineProperty;if(_){var r=d.prototype;_(r,"z",{get:function(){var n=this.array;return this._axisZ.set(n[8],n[9],n[10]),this._axisZ},set:function(n){var l=this.array;n=n.array,l[8]=n[0],l[9]=n[1],l[10]=n[2],this._dirty=!0}}),_(r,"y",{get:function(){var n=this.array;return this._axisY.set(n[4],n[5],n[6]),this._axisY},set:function(n){var l=this.array;n=n.array,l[4]=n[0],l[5]=n[1],l[6]=n[2],this._dirty=!0}}),_(r,"x",{get:function(){var n=this.array;return this._axisX.set(n[0],n[1],n[2]),this._axisX},set:function(n){var l=this.array;n=n.array,l[0]=n[0],l[1]=n[1],l[2]=n[2],this._dirty=!0}})}d.adjoint=function(n,l){return m.adjoint(n.array,l.array),n._dirty=!0,n},d.copy=function(n,l){return m.copy(n.array,l.array),n._dirty=!0,n},d.determinant=function(n){return m.determinant(n.array)},d.identity=function(n){return m.identity(n.array),n._dirty=!0,n},d.ortho=function(n,l,o,s,u,f,e){return m.ortho(n.array,l,o,s,u,f,e),n._dirty=!0,n},d.perspective=function(n,l,o,s,u){return m.perspective(n.array,l,o,s,u),n._dirty=!0,n},d.lookAt=function(n,l,o,s){return m.lookAt(n.array,l.array,o.array,s.array),n._dirty=!0,n},d.invert=function(n,l){return m.invert(n.array,l.array),n._dirty=!0,n},d.mul=function(n,l,o){return m.mul(n.array,l.array,o.array),n._dirty=!0,n},d.multiply=d.mul,d.fromQuat=function(n,l){return m.fromQuat(n.array,l.array),n._dirty=!0,n},d.fromRotationTranslation=function(n,l,o){return m.fromRotationTranslation(n.array,l.array,o.array),n._dirty=!0,n},d.fromMat2d=function(s,o){s._dirty=!0;var o=o.array,s=s.array;return s[0]=o[0],s[4]=o[2],s[12]=o[4],s[1]=o[1],s[5]=o[3],s[13]=o[5],s},d.rotate=function(n,l,o,s){return m.rotate(n.array,l.array,o,s.array),n._dirty=!0,n},d.rotateX=function(n,l,o){return m.rotateX(n.array,l.array,o),n._dirty=!0,n},d.rotateY=function(n,l,o){return m.rotateY(n.array,l.array,o),n._dirty=!0,n},d.rotateZ=function(n,l,o){return m.rotateZ(n.array,l.array,o),n._dirty=!0,n},d.scale=function(n,l,o){return m.scale(n.array,l.array,o.array),n._dirty=!0,n},d.transpose=function(n,l){return m.transpose(n.array,l.array),n._dirty=!0,n},d.translate=function(n,l,o){return m.translate(n.array,l.array,o.array),n._dirty=!0,n},M.a=d},function(H,M,g){"use strict";var D=g(8),y=g(6),v=g(25),m=g(11),E=g(48),h="framebuffer",a="renderbuffer",d=a+"_width",_=a+"_height",r=a+"_attached",n="depthtexture_attached",l=m.a.FRAMEBUFFER,o=m.a.RENDERBUFFER,s=m.a.DEPTH_ATTACHMENT,u=m.a.COLOR_ATTACHMENT0,f=D.a.extend({depthBuffer:!0,viewport:null,_width:0,_height:0,_textures:null,_boundRenderer:null},function(){this._cache=new E.a,this._textures={}},{getTextureWidth:function(){return this._width},getTextureHeight:function(){return this._height},bind:function(e){if(e.__currentFrameBuffer){if(e.__currentFrameBuffer===this)return;console.warn("Renderer already bound with another framebuffer. Unbind it first")}e.__currentFrameBuffer=this;var t=e.gl;t.bindFramebuffer(l,this._getFrameBufferGL(e)),this._boundRenderer=e;var i=this._cache;i.put("viewport",e.viewport);var c=!1,p,A;for(var x in this._textures){c=!0;var C=this._textures[x];C&&(p=C.texture.width,A=C.texture.height,this._doAttach(e,C.texture,x,C.target))}this._width=p,this._height=A,!c&&this.depthBuffer&&console.error("Must attach texture before bind, or renderbuffer may have incorrect width and height."),this.viewport?e.setViewport(this.viewport):e.setViewport(0,0,p,A,1);var S=i.get("attached_textures");if(S){for(var x in S)if(!this._textures[x]){var P=S[x];this._doDetach(t,x,P)}}if(!i.get(n)&&this.depthBuffer){i.miss(a)&&i.put(a,t.createRenderbuffer());var b=i.get(a);(p!==i.get(d)||A!==i.get(_))&&(t.bindRenderbuffer(o,b),t.renderbufferStorage(o,t.DEPTH_COMPONENT16,p,A),i.put(d,p),i.put(_,A),t.bindRenderbuffer(o,null)),i.get(r)||(t.framebufferRenderbuffer(l,s,o,b),i.put(r,!0))}},unbind:function(e){e.__currentFrameBuffer=null;var t=e.gl;t.bindFramebuffer(l,null),this._boundRenderer=null,this._cache.use(e.__uid__);var i=this._cache.get("viewport");i&&e.setViewport(i),this.updateMipmap(e)},updateMipmap:function(e){var t=e.gl;for(var i in this._textures){var c=this._textures[i];if(c){var p=c.texture;if(!p.NPOT&&p.useMipmap&&p.minFilter===y.a.LINEAR_MIPMAP_LINEAR){var A=p instanceof v.a?m.a.TEXTURE_CUBE_MAP:m.a.TEXTURE_2D;t.bindTexture(A,p.getWebGLTexture(e)),t.generateMipmap(A),t.bindTexture(A,null)}}}},checkStatus:function(e){return e.checkFramebufferStatus(l)},_getFrameBufferGL:function(e){var t=this._cache;return t.use(e.__uid__),t.miss(h)&&t.put(h,e.gl.createFramebuffer()),t.get(h)},attach:function(e,t,i){if(!e.width)throw new Error("The texture attached to color buffer is not a valid.");t=t||u,i=i||m.a.TEXTURE_2D;var c=this._boundRenderer,p=c&&c.gl,A;if(p){var x=this._cache;x.use(c.__uid__),A=x.get("attached_textures")}var C=this._textures[t];if(!(C&&C.target===i&&C.texture===e&&A&&A[t]!=null)){var S=!0;c&&(S=this._doAttach(c,e,t,i),this.viewport||c.setViewport(0,0,e.width,e.height,1)),S&&(this._textures[t]=this._textures[t]||{},this._textures[t].texture=e,this._textures[t].target=i)}},_doAttach:function(e,t,i,c){var p=e.gl,A=t.getWebGLTexture(e),x=this._cache.get("attached_textures");if(x&&x[i]){var C=x[i];if(C.texture===t&&C.target===c)return}i=+i;var S=!0;if(i===s||i===m.a.DEPTH_STENCIL_ATTACHMENT){var P=e.getGLExtension("WEBGL_depth_texture");if(P||(console.error("Depth texture is not supported by the browser"),S=!1),t.format!==m.a.DEPTH_COMPONENT&&t.format!==m.a.DEPTH_STENCIL&&(console.error("The texture attached to depth buffer is not a valid."),S=!1),S){var b=this._cache.get(a);b&&(p.framebufferRenderbuffer(l,s,o,null),p.deleteRenderbuffer(b),this._cache.put(a,!1)),this._cache.put(r,!1),this._cache.put(n,!0)}}return p.framebufferTexture2D(l,i,c,A,0),x||(x={},this._cache.put("attached_textures",x)),x[i]=x[i]||{},x[i].texture=t,x[i].target=c,S},_doDetach:function(e,t,i){e.framebufferTexture2D(l,t,i,null,0);var c=this._cache.get("attached_textures");c&&c[t]&&(c[t]=null),(t===s||t===m.a.DEPTH_STENCIL_ATTACHMENT)&&this._cache.put(n,!1)},detach:function(e,t){if(this._textures[e]=null,this._boundRenderer){var i=this._cache;i.use(this._boundRenderer.__uid__),this._doDetach(this._boundRenderer.gl,e,t)}},dispose:function(e){var t=e.gl,i=this._cache;i.use(e.__uid__);var c=i.get(a);c&&t.deleteRenderbuffer(c);var p=i.get(h);p&&t.deleteFramebuffer(p),i.deleteContext(e.__uid__),this._textures={}}});f.DEPTH_ATTACHMENT=s,f.COLOR_ATTACHMENT0=u,f.STENCIL_ATTACHMENT=m.a.STENCIL_ATTACHMENT,f.DEPTH_STENCIL_ATTACHMENT=m.a.DEPTH_STENCIL_ATTACHMENT,M.a=f},function(H,M,g){"use strict";M.a={DEPTH_BUFFER_BIT:256,STENCIL_BUFFER_BIT:1024,COLOR_BUFFER_BIT:16384,POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6,ZERO:0,ONE:1,SRC_COLOR:768,ONE_MINUS_SRC_COLOR:769,SRC_ALPHA:770,ONE_MINUS_SRC_ALPHA:771,DST_ALPHA:772,ONE_MINUS_DST_ALPHA:773,DST_COLOR:774,ONE_MINUS_DST_COLOR:775,SRC_ALPHA_SATURATE:776,FUNC_ADD:32774,BLEND_EQUATION:32777,BLEND_EQUATION_RGB:32777,BLEND_EQUATION_ALPHA:34877,FUNC_SUBTRACT:32778,FUNC_REVERSE_SUBTRACT:32779,BLEND_DST_RGB:32968,BLEND_SRC_RGB:32969,BLEND_DST_ALPHA:32970,BLEND_SRC_ALPHA:32971,CONSTANT_COLOR:32769,ONE_MINUS_CONSTANT_COLOR:32770,CONSTANT_ALPHA:32771,ONE_MINUS_CONSTANT_ALPHA:32772,BLEND_COLOR:32773,ARRAY_BUFFER:34962,ELEMENT_ARRAY_BUFFER:34963,ARRAY_BUFFER_BINDING:34964,ELEMENT_ARRAY_BUFFER_BINDING:34965,STREAM_DRAW:35040,STATIC_DRAW:35044,DYNAMIC_DRAW:35048,BUFFER_SIZE:34660,BUFFER_USAGE:34661,CURRENT_VERTEX_ATTRIB:34342,FRONT:1028,BACK:1029,FRONT_AND_BACK:1032,CULL_FACE:2884,BLEND:3042,DITHER:3024,STENCIL_TEST:2960,DEPTH_TEST:2929,SCISSOR_TEST:3089,POLYGON_OFFSET_FILL:32823,SAMPLE_ALPHA_TO_COVERAGE:32926,SAMPLE_COVERAGE:32928,NO_ERROR:0,INVALID_ENUM:1280,INVALID_VALUE:1281,INVALID_OPERATION:1282,OUT_OF_MEMORY:1285,CW:2304,CCW:2305,LINE_WIDTH:2849,ALIASED_POINT_SIZE_RANGE:33901,ALIASED_LINE_WIDTH_RANGE:33902,CULL_FACE_MODE:2885,FRONT_FACE:2886,DEPTH_RANGE:2928,DEPTH_WRITEMASK:2930,DEPTH_CLEAR_VALUE:2931,DEPTH_FUNC:2932,STENCIL_CLEAR_VALUE:2961,STENCIL_FUNC:2962,STENCIL_FAIL:2964,STENCIL_PASS_DEPTH_FAIL:2965,STENCIL_PASS_DEPTH_PASS:2966,STENCIL_REF:2967,STENCIL_VALUE_MASK:2963,STENCIL_WRITEMASK:2968,STENCIL_BACK_FUNC:34816,STENCIL_BACK_FAIL:34817,STENCIL_BACK_PASS_DEPTH_FAIL:34818,STENCIL_BACK_PASS_DEPTH_PASS:34819,STENCIL_BACK_REF:36003,STENCIL_BACK_VALUE_MASK:36004,STENCIL_BACK_WRITEMASK:36005,VIEWPORT:2978,SCISSOR_BOX:3088,COLOR_CLEAR_VALUE:3106,COLOR_WRITEMASK:3107,UNPACK_ALIGNMENT:3317,PACK_ALIGNMENT:3333,MAX_TEXTURE_SIZE:3379,MAX_VIEWPORT_DIMS:3386,SUBPIXEL_BITS:3408,RED_BITS:3410,GREEN_BITS:3411,BLUE_BITS:3412,ALPHA_BITS:3413,DEPTH_BITS:3414,STENCIL_BITS:3415,POLYGON_OFFSET_UNITS:10752,POLYGON_OFFSET_FACTOR:32824,TEXTURE_BINDING_2D:32873,SAMPLE_BUFFERS:32936,SAMPLES:32937,SAMPLE_COVERAGE_VALUE:32938,SAMPLE_COVERAGE_INVERT:32939,COMPRESSED_TEXTURE_FORMATS:34467,DONT_CARE:4352,FASTEST:4353,NICEST:4354,GENERATE_MIPMAP_HINT:33170,BYTE:5120,UNSIGNED_BYTE:5121,SHORT:5122,UNSIGNED_SHORT:5123,INT:5124,UNSIGNED_INT:5125,FLOAT:5126,DEPTH_COMPONENT:6402,ALPHA:6406,RGB:6407,RGBA:6408,LUMINANCE:6409,LUMINANCE_ALPHA:6410,UNSIGNED_SHORT_4_4_4_4:32819,UNSIGNED_SHORT_5_5_5_1:32820,UNSIGNED_SHORT_5_6_5:33635,FRAGMENT_SHADER:35632,VERTEX_SHADER:35633,MAX_VERTEX_ATTRIBS:34921,MAX_VERTEX_UNIFORM_VECTORS:36347,MAX_VARYING_VECTORS:36348,MAX_COMBINED_TEXTURE_IMAGE_UNITS:35661,MAX_VERTEX_TEXTURE_IMAGE_UNITS:35660,MAX_TEXTURE_IMAGE_UNITS:34930,MAX_FRAGMENT_UNIFORM_VECTORS:36349,SHADER_TYPE:35663,DELETE_STATUS:35712,LINK_STATUS:35714,VALIDATE_STATUS:35715,ATTACHED_SHADERS:35717,ACTIVE_UNIFORMS:35718,ACTIVE_ATTRIBUTES:35721,SHADING_LANGUAGE_VERSION:35724,CURRENT_PROGRAM:35725,NEVER:512,LESS:513,EQUAL:514,LEQUAL:515,GREATER:516,NOTEQUAL:517,GEQUAL:518,ALWAYS:519,KEEP:7680,REPLACE:7681,INCR:7682,DECR:7683,INVERT:5386,INCR_WRAP:34055,DECR_WRAP:34056,VENDOR:7936,RENDERER:7937,VERSION:7938,NEAREST:9728,LINEAR:9729,NEAREST_MIPMAP_NEAREST:9984,LINEAR_MIPMAP_NEAREST:9985,NEAREST_MIPMAP_LINEAR:9986,LINEAR_MIPMAP_LINEAR:9987,TEXTURE_MAG_FILTER:10240,TEXTURE_MIN_FILTER:10241,TEXTURE_WRAP_S:10242,TEXTURE_WRAP_T:10243,TEXTURE_2D:3553,TEXTURE:5890,TEXTURE_CUBE_MAP:34067,TEXTURE_BINDING_CUBE_MAP:34068,TEXTURE_CUBE_MAP_POSITIVE_X:34069,TEXTURE_CUBE_MAP_NEGATIVE_X:34070,TEXTURE_CUBE_MAP_POSITIVE_Y:34071,TEXTURE_CUBE_MAP_NEGATIVE_Y:34072,TEXTURE_CUBE_MAP_POSITIVE_Z:34073,TEXTURE_CUBE_MAP_NEGATIVE_Z:34074,MAX_CUBE_MAP_TEXTURE_SIZE:34076,TEXTURE0:33984,TEXTURE1:33985,TEXTURE2:33986,TEXTURE3:33987,TEXTURE4:33988,TEXTURE5:33989,TEXTURE6:33990,TEXTURE7:33991,TEXTURE8:33992,TEXTURE9:33993,TEXTURE10:33994,TEXTURE11:33995,TEXTURE12:33996,TEXTURE13:33997,TEXTURE14:33998,TEXTURE15:33999,TEXTURE16:34e3,TEXTURE17:34001,TEXTURE18:34002,TEXTURE19:34003,TEXTURE20:34004,TEXTURE21:34005,TEXTURE22:34006,TEXTURE23:34007,TEXTURE24:34008,TEXTURE25:34009,TEXTURE26:34010,TEXTURE27:34011,TEXTURE28:34012,TEXTURE29:34013,TEXTURE30:34014,TEXTURE31:34015,ACTIVE_TEXTURE:34016,REPEAT:10497,CLAMP_TO_EDGE:33071,MIRRORED_REPEAT:33648,FLOAT_VEC2:35664,FLOAT_VEC3:35665,FLOAT_VEC4:35666,INT_VEC2:35667,INT_VEC3:35668,INT_VEC4:35669,BOOL:35670,BOOL_VEC2:35671,BOOL_VEC3:35672,BOOL_VEC4:35673,FLOAT_MAT2:35674,FLOAT_MAT3:35675,FLOAT_MAT4:35676,SAMPLER_2D:35678,SAMPLER_CUBE:35680,VERTEX_ATTRIB_ARRAY_ENABLED:34338,VERTEX_ATTRIB_ARRAY_SIZE:34339,VERTEX_ATTRIB_ARRAY_STRIDE:34340,VERTEX_ATTRIB_ARRAY_TYPE:34341,VERTEX_ATTRIB_ARRAY_NORMALIZED:34922,VERTEX_ATTRIB_ARRAY_POINTER:34373,VERTEX_ATTRIB_ARRAY_BUFFER_BINDING:34975,COMPILE_STATUS:35713,LOW_FLOAT:36336,MEDIUM_FLOAT:36337,HIGH_FLOAT:36338,LOW_INT:36339,MEDIUM_INT:36340,HIGH_INT:36341,FRAMEBUFFER:36160,RENDERBUFFER:36161,RGBA4:32854,RGB5_A1:32855,RGB565:36194,DEPTH_COMPONENT16:33189,STENCIL_INDEX:6401,STENCIL_INDEX8:36168,DEPTH_STENCIL:34041,RENDERBUFFER_WIDTH:36162,RENDERBUFFER_HEIGHT:36163,RENDERBUFFER_INTERNAL_FORMAT:36164,RENDERBUFFER_RED_SIZE:36176,RENDERBUFFER_GREEN_SIZE:36177,RENDERBUFFER_BLUE_SIZE:36178,RENDERBUFFER_ALPHA_SIZE:36179,RENDERBUFFER_DEPTH_SIZE:36180,RENDERBUFFER_STENCIL_SIZE:36181,FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE:36048,FRAMEBUFFER_ATTACHMENT_OBJECT_NAME:36049,FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL:36050,FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE:36051,COLOR_ATTACHMENT0:36064,DEPTH_ATTACHMENT:36096,STENCIL_ATTACHMENT:36128,DEPTH_STENCIL_ATTACHMENT:33306,NONE:0,FRAMEBUFFER_COMPLETE:36053,FRAMEBUFFER_INCOMPLETE_ATTACHMENT:36054,FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT:36055,FRAMEBUFFER_INCOMPLETE_DIMENSIONS:36057,FRAMEBUFFER_UNSUPPORTED:36061,FRAMEBUFFER_BINDING:36006,RENDERBUFFER_BINDING:36007,MAX_RENDERBUFFER_SIZE:34024,INVALID_FRAMEBUFFER_OPERATION:1286,UNPACK_FLIP_Y_WEBGL:37440,UNPACK_PREMULTIPLY_ALPHA_WEBGL:37441,CONTEXT_LOST_WEBGL:37442,UNPACK_COLORSPACE_CONVERSION_WEBGL:37443,BROWSER_DEFAULT_WEBGL:37444}},function(H,M){var g={"[object Function]":1,"[object RegExp]":1,"[object Date]":1,"[object Error]":1,"[object CanvasGradient]":1,"[object CanvasPattern]":1,"[object Image]":1,"[object Canvas]":1},D={"[object Int8Array]":1,"[object Uint8Array]":1,"[object Uint8ClampedArray]":1,"[object Int16Array]":1,"[object Uint16Array]":1,"[object Int32Array]":1,"[object Uint32Array]":1,"[object Float32Array]":1,"[object Float64Array]":1},y=Object.prototype.toString,v=Array.prototype,m=v.forEach,E=v.filter,h=v.slice,a=v.map,d=v.reduce,_={};function r(j,re){_[j]=re}function n(j){if(j==null||typeof j!="object")return j;var re=j,k=y.call(j);if(k==="[object Array]"){if(!me(j)){re=[];for(var te=0,ie=j.length;te<ie;te++)re[te]=n(j[te])}}else if(D[k]){if(!me(j)){var J=j.constructor;if(j.constructor.from)re=J.from(j);else{re=new J(j.length);for(var te=0,ie=j.length;te<ie;te++)re[te]=n(j[te])}}}else if(!g[k]&&!me(j)&&!G(j)){re={};for(var ce in j)j.hasOwnProperty(ce)&&(re[ce]=n(j[ce]))}return re}function l(j,re,k){if(!F(re)||!F(j))return k?n(re):j;for(var te in re)if(re.hasOwnProperty(te)){var ie=j[te],J=re[te];F(J)&&F(ie)&&!T(J)&&!T(ie)&&!G(J)&&!G(ie)&&!U(J)&&!U(ie)&&!me(J)&&!me(ie)?l(ie,J,k):(k||!(te in j))&&(j[te]=n(re[te],!0))}return j}function o(j,re){for(var k=j[0],te=1,ie=j.length;te<ie;te++)k=l(k,j[te],re);return k}function s(j,re){for(var k in re)re.hasOwnProperty(k)&&(j[k]=re[k]);return j}function u(j,re,k){for(var te in re)re.hasOwnProperty(te)&&(k?re[te]!=null:j[te]==null)&&(j[te]=re[te]);return j}var f=function(){return _.createCanvas()};_.createCanvas=function(){return document.createElement("canvas")};var e;function t(){return e||(e=f().getContext("2d")),e}function i(j,re){if(j){if(j.indexOf)return j.indexOf(re);for(var k=0,te=j.length;k<te;k++)if(j[k]===re)return k}return-1}function c(j,re){var k=j.prototype;function te(){}te.prototype=re.prototype,j.prototype=new te;for(var ie in k)j.prototype[ie]=k[ie];j.prototype.constructor=j,j.superClass=re}function p(j,re,k){j="prototype"in j?j.prototype:j,re="prototype"in re?re.prototype:re,u(j,re,k)}function A(j){if(j)return typeof j=="string"?!1:typeof j.length=="number"}function x(j,re,k){if(j&&re)if(j.forEach&&j.forEach===m)j.forEach(re,k);else if(j.length===+j.length)for(var te=0,ie=j.length;te<ie;te++)re.call(k,j[te],te,j);else for(var J in j)j.hasOwnProperty(J)&&re.call(k,j[J],J,j)}function C(j,re,k){if(j&&re){if(j.map&&j.map===a)return j.map(re,k);for(var te=[],ie=0,J=j.length;ie<J;ie++)te.push(re.call(k,j[ie],ie,j));return te}}function S(j,re,k,te){if(j&&re){if(j.reduce&&j.reduce===d)return j.reduce(re,k,te);for(var ie=0,J=j.length;ie<J;ie++)k=re.call(te,k,j[ie],ie,j);return k}}function P(j,re,k){if(j&&re){if(j.filter&&j.filter===E)return j.filter(re,k);for(var te=[],ie=0,J=j.length;ie<J;ie++)re.call(k,j[ie],ie,j)&&te.push(j[ie]);return te}}function b(j,re,k){if(j&&re){for(var te=0,ie=j.length;te<ie;te++)if(re.call(k,j[te],te,j))return j[te]}}function L(j,re){var k=h.call(arguments,2);return function(){return j.apply(re,k.concat(h.call(arguments)))}}function R(j){var re=h.call(arguments,1);return function(){return j.apply(this,re.concat(h.call(arguments)))}}function T(j){return y.call(j)==="[object Array]"}function N(j){return typeof j=="function"}function I(j){return y.call(j)==="[object String]"}function F(j){var re=typeof j;return re==="function"||!!j&&re=="object"}function U(j){return!!g[y.call(j)]}function K(j){return!!D[y.call(j)]}function G(j){return typeof j=="object"&&typeof j.nodeType=="number"&&typeof j.ownerDocument=="object"}function V(j){return j!==j}function X(j){for(var re=0,k=arguments.length;re<k;re++)if(arguments[re]!=null)return arguments[re]}function ee(j,re){return j!=null?j:re}function oe(j,re,k){return j!=null?j:re!=null?re:k}function ue(){return Function.call.apply(h,arguments)}function Ae(j){if(typeof j=="number")return[j,j,j,j];var re=j.length;return re===2?[j[0],j[1],j[0],j[1]]:re===3?[j[0],j[1],j[2],j[1]]:j}function fe(j,re){if(!j)throw new Error(re)}var he="__ec_primitive__";function ve(j){j[he]=!0}function me(j){return j[he]}function Te(j){var re=T(j);j&&x(j,function(k,te){re?this.set(k,1):this.set(te,k)},this)}var Ce="_ec_",ye=4;Te.prototype={constructor:Te,get:function(j){return this[Ce+j]},set:function(j,re){return this[Ce+j]=re,re},each:function(j,re){re!==void 0&&(j=L(j,re));for(var k in this)this.hasOwnProperty(k)&&j(this[k],k.slice(ye))},removeKey:function(j){delete this[Ce+j]}};function q(j){return new Te(j)}function Q(j,re){for(var k=new j.constructor(j.length+re.length),te=0;te<j.length;te++)k[te]=j[te];var ie=j.length;for(te=0;te<re.length;te++)k[te+ie]=re[te];return k}function $(){}M.$override=r,M.clone=n,M.merge=l,M.mergeAll=o,M.extend=s,M.defaults=u,M.createCanvas=f,M.getContext=t,M.indexOf=i,M.inherits=c,M.mixin=p,M.isArrayLike=A,M.each=x,M.map=C,M.reduce=S,M.filter=P,M.find=b,M.bind=L,M.curry=R,M.isArray=T,M.isFunction=N,M.isString=I,M.isObject=F,M.isBuiltInObject=U,M.isTypedArray=K,M.isDom=G,M.eqNaN=V,M.retrieve=X,M.retrieve2=ee,M.retrieve3=oe,M.slice=ue,M.normalizeCssArray=Ae,M.assert=fe,M.setAsPrimitive=ve,M.isPrimitive=me,M.createHashMap=q,M.concatArray=Q,M.noop=$},function(H,M,g){"use strict";var D=g(8),y=g(11),v=g(48),m=g(18),E=g(1),h=g.n(E),a=g(15),d=h.a.vec3,_=h.a.mat4,r=d.create,n=d.add,l=d.set;function o(i){return{byte:m.a.Int8Array,ubyte:m.a.Uint8Array,short:m.a.Int16Array,ushort:m.a.Uint16Array}[i]||m.a.Float32Array}function s(i){return"attr_"+i}function u(i,c,p,A){switch(this.name=i,this.type=c,this.size=p,this.semantic=A||"",this.value=null,p){case 1:this.get=function(x){return this.value[x]},this.set=function(x,C){this.value[x]=C},this.copy=function(x,C){this.value[x]=this.value[x]};break;case 2:this.get=function(x,C){var S=this.value;return C[0]=S[x*2],C[1]=S[x*2+1],C},this.set=function(x,C){var S=this.value;S[x*2]=C[0],S[x*2+1]=C[1]},this.copy=function(x,C){var S=this.value;C*=2,x*=2,S[x]=S[C],S[x+1]=S[C+1]};break;case 3:this.get=function(x,C){var S=x*3,P=this.value;return C[0]=P[S],C[1]=P[S+1],C[2]=P[S+2],C},this.set=function(x,C){var S=x*3,P=this.value;P[S]=C[0],P[S+1]=C[1],P[S+2]=C[2]},this.copy=function(x,C){var S=this.value;C*=3,x*=3,S[x]=S[C],S[x+1]=S[C+1],S[x+2]=S[C+2]};break;case 4:this.get=function(x,C){var S=this.value,P=x*4;return C[0]=S[P],C[1]=S[P+1],C[2]=S[P+2],C[3]=S[P+3],C},this.set=function(x,C){var S=this.value,P=x*4;S[P]=C[0],S[P+1]=C[1],S[P+2]=C[2],S[P+3]=C[3]},this.copy=function(x,C){var S=this.value;C*=4,x*=4,S[x]=S[C],S[x+1]=S[C+1],S[x+2]=S[C+2],S[x+3]=S[C+3]}}}u.prototype.init=function(i){if(!this.value||this.value.length!=i*this.size){var c=o(this.type);this.value=new c(i*this.size)}},u.prototype.fromArray=function(i){var c=o(this.type),p;if(i[0]&&i[0].length){var A=0,x=this.size;p=new c(i.length*x);for(var C=0;C<i.length;C++)for(var S=0;S<x;S++)p[A++]=i[C][S]}else p=new c(i);this.value=p},u.prototype.clone=function(i){var c=new u(this.name,this.type,this.size,this.semantic);return i&&console.warn("todo"),c};function f(i,c,p,A,x){this.name=i,this.type=c,this.buffer=p,this.size=A,this.semantic=x,this.symbol="",this.needsRemove=!1}function e(i){this.buffer=i,this.count=0}var t=D.a.extend(function(){return{attributes:{position:new u("position","float",3,"POSITION"),texcoord0:new u("texcoord0","float",2,"TEXCOORD_0"),texcoord1:new u("texcoord1","float",2,"TEXCOORD_1"),normal:new u("normal","float",3,"NORMAL"),tangent:new u("tangent","float",4,"TANGENT"),color:new u("color","float",4,"COLOR"),weight:new u("weight","float",3,"WEIGHT"),joint:new u("joint","float",4,"JOINT"),barycentric:new u("barycentric","float",3,null)},boundingBox:null,indices:null,dynamic:!0,_enabledAttributes:null}},function(){this._cache=new v.a,this._attributeList=Object.keys(this.attributes)},{mainAttribute:"position",pick:null,pickByRay:null,updateBoundingBox:function(){var i=this.boundingBox;i||(i=this.boundingBox=new a.a);var c=this.attributes.position.value;if(c&&c.length){var p=i.min,A=i.max,x=p.array,C=A.array;d.set(x,c[0],c[1],c[2]),d.set(C,c[0],c[1],c[2]);for(var S=3;S<c.length;){var P=c[S++],b=c[S++],L=c[S++];P<x[0]&&(x[0]=P),b<x[1]&&(x[1]=b),L<x[2]&&(x[2]=L),P>C[0]&&(C[0]=P),b>C[1]&&(C[1]=b),L>C[2]&&(C[2]=L)}p._dirty=!0,A._dirty=!0}},dirty:function(){for(var i=this.getEnabledAttributes(),c=0;c<i.length;c++)this.dirtyAttribute(i[c]);this.dirtyIndices(),this._enabledAttributes=null,this._cache.dirty("any")},dirtyIndices:function(){this._cache.dirtyAll("indices")},dirtyAttribute:function(i){this._cache.dirtyAll(s(i)),this._cache.dirtyAll("attributes")},getTriangleIndices:function(i,c){if(i<this.triangleCount&&i>=0){c||(c=r());var p=this.indices;return c[0]=p[i*3],c[1]=p[i*3+1],c[2]=p[i*3+2],c}},setTriangleIndices:function(i,c){var p=this.indices;p[i*3]=c[0],p[i*3+1]=c[1],p[i*3+2]=c[2]},isUseIndices:function(){return!!this.indices},initIndicesFromArray:function(i){var c,p=this.vertexCount>65535?m.a.Uint32Array:m.a.Uint16Array;if(i[0]&&i[0].length){var A=0,x=3;c=new p(i.length*x);for(var C=0;C<i.length;C++)for(var S=0;S<x;S++)c[A++]=i[C][S]}else c=new p(i);this.indices=c},createAttribute:function(i,c,p,A){var x=new u(i,c,p,A);return this.attributes[i]&&this.removeAttribute(i),this.attributes[i]=x,this._attributeList.push(i),x},removeAttribute:function(i){var c=this._attributeList,p=c.indexOf(i);return p>=0?(c.splice(p,1),delete this.attributes[i],!0):!1},getAttribute:function(i){return this.attributes[i]},getEnabledAttributes:function(){var i=this._enabledAttributes,c=this._attributeList;if(i)return i;for(var p=[],A=this.vertexCount,x=0;x<c.length;x++){var C=c[x],S=this.attributes[C];S.value&&S.value.length===A*S.size&&p.push(C)}return this._enabledAttributes=p,p},getBufferChunks:function(i){var c=this._cache;c.use(i.__uid__);var p=c.isDirty("attributes"),A=c.isDirty("indices");if(p||A){this._updateBuffer(i.gl,p,A);for(var x=this.getEnabledAttributes(),C=0;C<x.length;C++)c.fresh(s(x[C]));c.fresh("attributes"),c.fresh("indices")}return c.fresh("any"),c.get("chunks")},_updateBuffer:function(i,c,p){var A=this._cache,x=A.get("chunks"),C=!1;x||(x=[],x[0]={attributeBuffers:[],indicesBuffer:null},A.put("chunks",x),C=!0);var S=x[0],P=S.attributeBuffers,b=S.indicesBuffer;if(c||C){var L=this.getEnabledAttributes(),R={};if(!C)for(var T=0;T<P.length;T++)R[P[T].name]=P[T];for(var N=0;N<L.length;N++){var I=L[N],F=this.attributes[I],U;C||(U=R[I]);var K;U?K=U.buffer:K=i.createBuffer(),A.isDirty(s(I))&&(i.bindBuffer(i.ARRAY_BUFFER,K),i.bufferData(i.ARRAY_BUFFER,F.value,this.dynamic?y.a.DYNAMIC_DRAW:y.a.STATIC_DRAW)),P[N]=new f(I,F.type,K,F.size,F.semantic)}for(var T=N;T<P.length;T++)i.deleteBuffer(P[T].buffer);P.length=N}this.isUseIndices()&&(p||C)&&(b||(b=new e(i.createBuffer()),S.indicesBuffer=b),b.count=this.indices.length,i.bindBuffer(i.ELEMENT_ARRAY_BUFFER,b.buffer),i.bufferData(i.ELEMENT_ARRAY_BUFFER,this.indices,this.dynamic?y.a.DYNAMIC_DRAW:y.a.STATIC_DRAW))},generateVertexNormals:function(){if(this.vertexCount){var i=this.indices,c=this.attributes,p=c.position.value,A=c.normal.value;if(!A||A.length!==p.length)A=c.normal.value=new m.a.Float32Array(p.length);else for(var x=0;x<A.length;x++)A[x]=0;for(var C=r(),S=r(),P=r(),b=r(),L=r(),R=r(),T=i?i.length:this.vertexCount,N,I,F,U=0;U<T;){i?(N=i[U++],I=i[U++],F=i[U++]):(N=U++,I=U++,F=U++),l(C,p[N*3],p[N*3+1],p[N*3+2]),l(S,p[I*3],p[I*3+1],p[I*3+2]),l(P,p[F*3],p[F*3+1],p[F*3+2]),d.sub(b,C,S),d.sub(L,S,P),d.cross(R,b,L);for(var x=0;x<3;x++)A[N*3+x]=A[N*3+x]+R[x],A[I*3+x]=A[I*3+x]+R[x],A[F*3+x]=A[F*3+x]+R[x]}for(var x=0;x<A.length;)l(R,A[x],A[x+1],A[x+2]),d.normalize(R,R),A[x++]=R[0],A[x++]=R[1],A[x++]=R[2];this.dirty()}},generateFaceNormals:function(){if(this.vertexCount){this.isUniqueVertex()||this.generateUniqueVertex();var i=this.indices,c=this.attributes,p=c.position.value,A=c.normal.value,x=r(),C=r(),S=r(),P=r(),b=r(),L=r();A||(A=c.normal.value=new Float32Array(p.length));for(var R=i?i.length:this.vertexCount,T,N,I,F=0;F<R;){i?(T=i[F++],N=i[F++],I=i[F++]):(T=F++,N=F++,I=F++),l(x,p[T*3],p[T*3+1],p[T*3+2]),l(C,p[N*3],p[N*3+1],p[N*3+2]),l(S,p[I*3],p[I*3+1],p[I*3+2]),d.sub(P,x,C),d.sub(b,C,S),d.cross(L,P,b),d.normalize(L,L);for(var U=0;U<3;U++)A[T*3+U]=L[U],A[N*3+U]=L[U],A[I*3+U]=L[U]}this.dirty()}},generateTangents:function(){if(this.vertexCount){var i=this.vertexCount,c=this.attributes;c.tangent.value||(c.tangent.value=new Float32Array(i*4));var p=c.texcoord0.value,A=c.position.value,x=c.tangent.value,C=c.normal.value;if(!p){console.warn("Geometry without texcoords can't generate tangents.");return}for(var S=[],P=[],b=0;b<i;b++)S[b]=[0,0,0],P[b]=[0,0,0];for(var L=[0,0,0],R=[0,0,0],T=this.indices,N=T?T.length:this.vertexCount,I,F,U,b=0;b<N;){T?(I=T[b++],F=T[b++],U=T[b++]):(I=b++,F=b++,U=b++);var K=p[I*2],G=p[F*2],V=p[U*2],X=p[I*2+1],ee=p[F*2+1],oe=p[U*2+1],ue=A[I*3],Ae=A[F*3],fe=A[U*3],he=A[I*3+1],ve=A[F*3+1],me=A[U*3+1],Te=A[I*3+2],Ce=A[F*3+2],ye=A[U*3+2],q=Ae-ue,Q=fe-ue,$=ve-he,j=me-he,re=Ce-Te,k=ye-Te,te=G-K,ie=V-K,J=ee-X,ce=oe-X,Se=1/(te*ce-J*ie);L[0]=(ce*q-J*Q)*Se,L[1]=(ce*$-J*j)*Se,L[2]=(ce*re-J*k)*Se,R[0]=(te*Q-ie*q)*Se,R[1]=(te*j-ie*$)*Se,R[2]=(te*k-ie*re)*Se,n(S[I],S[I],L),n(S[F],S[F],L),n(S[U],S[U],L),n(P[I],P[I],R),n(P[F],P[F],R),n(P[U],P[U],R)}for(var Le=r(),ze=r(),We=r(),b=0;b<i;b++){We[0]=C[b*3],We[1]=C[b*3+1],We[2]=C[b*3+2];var tt=S[b];d.scale(Le,We,d.dot(We,tt)),d.sub(Le,tt,Le),d.normalize(Le,Le),d.cross(ze,We,tt),x[b*4]=Le[0],x[b*4+1]=Le[1],x[b*4+2]=Le[2],x[b*4+3]=d.dot(ze,P[b])<0?-1:1}this.dirty()}},isUniqueVertex:function(){return this.isUseIndices()?this.vertexCount===this.indices.length:!0},generateUniqueVertex:function(){if(!(!this.vertexCount||!this.indices)){this.indices.length>65535&&(this.indices=new m.a.Uint32Array(this.indices));for(var i=this.attributes,c=this.indices,p=this.getEnabledAttributes(),A={},x=0;x<p.length;x++){var C=p[x];A[C]=i[C].value,i[C].init(this.indices.length)}for(var S=0,P=0;P<c.length;P++){for(var b=c[P],x=0;x<p.length;x++)for(var C=p[x],L=i[C].value,R=i[C].size,T=0;T<R;T++)L[S*R+T]=A[C][b*R+T];c[P]=S,S++}this.dirty()}},generateBarycentric:function(){if(this.vertexCount){this.isUniqueVertex()||this.generateUniqueVertex();var i=this.attributes,c=i.barycentric.value,p=this.indices;if(!(c&&c.length===p.length*3)){c=i.barycentric.value=new Float32Array(p.length*3);for(var A=0;A<(p?p.length:this.vertexCount/3);)for(var x=0;x<3;x++){var C=p?p[A++]:A*3+x;c[C*3+x]=1}this.dirty()}}},applyTransform:function(i){var c=this.attributes,p=c.position.value,A=c.normal.value,x=c.tangent.value;i=i.array;var C=_.create();_.invert(C,i),_.transpose(C,C);var S=d.transformMat4,P=d.forEach;P(p,3,0,null,S,i),A&&P(A,3,0,null,S,C),x&&P(x,4,0,null,S,C),this.boundingBox&&this.updateBoundingBox()},dispose:function(i){var c=this._cache;c.use(i.__uid__);var p=c.get("chunks");if(p)for(var A=0;A<p.length;A++){for(var x=p[A],C=0;C<x.attributeBuffers.length;C++){var S=x.attributeBuffers[C];i.gl.deleteBuffer(S.buffer)}x.indicesBuffer&&i.gl.deleteBuffer(x.indicesBuffer.buffer)}c.deleteContext(i.__uid__)}});Object.defineProperty&&(Object.defineProperty(t.prototype,"vertexCount",{enumerable:!1,get:function(){var i=this.attributes[this.mainAttribute];return!i||!i.value?0:i.value.length/i.size}}),Object.defineProperty(t.prototype,"triangleCount",{enumerable:!1,get:function(){var i=this.indices;return i?i.length/3:0}})),t.STATIC_DRAW=y.a.STATIC_DRAW,t.DYNAMIC_DRAW=y.a.DYNAMIC_DRAW,t.STREAM_DRAW=y.a.STREAM_DRAW,t.AttributeBuffer=f,t.IndicesBuffer=e,t.Attribute=u,M.a=t},function(H,M,g){"use strict";var D=g(8),y=g(30),v=g(37),m=g(7),E=g(17),h=g(24),a=g(11),d=g(109);m.a.import(d.a);var _=new v.a,r=new h.a({geometry:_,frustumCulling:!1}),n=new y.a,l=D.a.extend(function(){return{fragment:"",outputs:null,material:null,blendWithPrevious:!1,clearColor:!1,clearDepth:!0}},function(){var o=new m.a(m.a.source("clay.compositor.vertex"),this.fragment),s=new E.a({shader:o});s.enableTexturesAll(),this.material=s},{setUniform:function(o,s){this.material.setUniform(o,s)},getUniform:function(o){var s=this.material.uniforms[o];if(s)return s.value},attachOutput:function(o,s){this.outputs||(this.outputs={}),s=s||a.a.COLOR_ATTACHMENT0,this.outputs[s]=o},detachOutput:function(o){for(var s in this.outputs)this.outputs[s]===o&&(this.outputs[s]=null)},bind:function(o,s){if(this.outputs)for(var u in this.outputs){var f=this.outputs[u];f&&s.attach(f,u)}s&&s.bind(o)},unbind:function(o,s){s.unbind(o)},render:function(o,s){var u=o.gl;if(s){this.bind(o,s);var f=o.getGLExtension("EXT_draw_buffers");if(f&&this.outputs){var e=[];for(var t in this.outputs)t=+t,t>=u.COLOR_ATTACHMENT0&&t<=u.COLOR_ATTACHMENT0+8&&e.push(t);f.drawBuffersEXT(e)}}this.trigger("beforerender",this,o);var i=this.clearDepth?u.DEPTH_BUFFER_BIT:0;if(u.depthMask(!0),this.clearColor){i=i|u.COLOR_BUFFER_BIT,u.colorMask(!0,!0,!0,!0);var c=this.clearColor;Array.isArray(c)&&u.clearColor(c[0],c[1],c[2],c[3])}u.clear(i),this.blendWithPrevious?(u.enable(u.BLEND),this.material.transparent=!0):(u.disable(u.BLEND),this.material.transparent=!1),this.renderQuad(o),this.trigger("afterrender",this,o),s&&this.unbind(o,s)},renderQuad:function(o){r.material=this.material,o.renderPass([r],n)},dispose:function(o){}});M.a=l},function(H,M,g){"use strict";var D=g(4),y=g(1),v=g.n(y),m=v.a.vec3,E=m.copy,h=m.set,a=function(d,_){this.min=d||new D.a(1/0,1/0,1/0),this.max=_||new D.a(-1/0,-1/0,-1/0)};a.prototype={constructor:a,updateFromVertices:function(d){if(d.length>0){var _=this.min,r=this.max,n=_.array,l=r.array;E(n,d[0]),E(l,d[0]);for(var o=1;o<d.length;o++){var s=d[o];s[0]<n[0]&&(n[0]=s[0]),s[1]<n[1]&&(n[1]=s[1]),s[2]<n[2]&&(n[2]=s[2]),s[0]>l[0]&&(l[0]=s[0]),s[1]>l[1]&&(l[1]=s[1]),s[2]>l[2]&&(l[2]=s[2])}_._dirty=!0,r._dirty=!0}},union:function(d){var _=this.min,r=this.max;return m.min(_.array,_.array,d.min.array),m.max(r.array,r.array,d.max.array),_._dirty=!0,r._dirty=!0,this},intersection:function(d){var _=this.min,r=this.max;return m.max(_.array,_.array,d.min.array),m.min(r.array,r.array,d.max.array),_._dirty=!0,r._dirty=!0,this},intersectBoundingBox:function(d){var _=this.min.array,r=this.max.array,n=d.min.array,l=d.max.array;return!(_[0]>l[0]||_[1]>l[1]||_[2]>l[2]||r[0]<n[0]||r[1]<n[1]||r[2]<n[2])},containBoundingBox:function(d){var _=this.min.array,r=this.max.array,n=d.min.array,l=d.max.array;return _[0]<=n[0]&&_[1]<=n[1]&&_[2]<=n[2]&&r[0]>=l[0]&&r[1]>=l[1]&&r[2]>=l[2]},containPoint:function(d){var _=this.min.array,r=this.max.array,n=d.array;return _[0]<=n[0]&&_[1]<=n[1]&&_[2]<=n[2]&&r[0]>=n[0]&&r[1]>=n[1]&&r[2]>=n[2]},isFinite:function(){var d=this.min.array,_=this.max.array;return isFinite(d[0])&&isFinite(d[1])&&isFinite(d[2])&&isFinite(_[0])&&isFinite(_[1])&&isFinite(_[2])},applyTransform:function(){var d=m.create(),_=m.create(),r=m.create(),n=m.create(),l=m.create(),o=m.create();return function(s){var u=this.min.array,f=this.max.array,e=s.array;return d[0]=e[0]*u[0],d[1]=e[1]*u[0],d[2]=e[2]*u[0],_[0]=e[0]*f[0],_[1]=e[1]*f[0],_[2]=e[2]*f[0],r[0]=e[4]*u[1],r[1]=e[5]*u[1],r[2]=e[6]*u[1],n[0]=e[4]*f[1],n[1]=e[5]*f[1],n[2]=e[6]*f[1],l[0]=e[8]*u[2],l[1]=e[9]*u[2],l[2]=e[10]*u[2],o[0]=e[8]*f[2],o[1]=e[9]*f[2],o[2]=e[10]*f[2],u[0]=Math.min(d[0],_[0])+Math.min(r[0],n[0])+Math.min(l[0],o[0])+e[12],u[1]=Math.min(d[1],_[1])+Math.min(r[1],n[1])+Math.min(l[1],o[1])+e[13],u[2]=Math.min(d[2],_[2])+Math.min(r[2],n[2])+Math.min(l[2],o[2])+e[14],f[0]=Math.max(d[0],_[0])+Math.max(r[0],n[0])+Math.max(l[0],o[0])+e[12],f[1]=Math.max(d[1],_[1])+Math.max(r[1],n[1])+Math.max(l[1],o[1])+e[13],f[2]=Math.max(d[2],_[2])+Math.max(r[2],n[2])+Math.max(l[2],o[2])+e[14],this.min._dirty=!0,this.max._dirty=!0,this}}(),applyProjection:function(d){var _=this.min.array,r=this.max.array,n=d.array,l=_[0],o=_[1],s=_[2],u=r[0],f=r[1],e=_[2],t=r[0],i=r[1],c=r[2];if(n[15]===1)_[0]=n[0]*l+n[12],_[1]=n[5]*o+n[13],r[2]=n[10]*s+n[14],r[0]=n[0]*t+n[12],r[1]=n[5]*i+n[13],_[2]=n[10]*c+n[14];else{var p=-1/s;_[0]=n[0]*l*p,_[1]=n[5]*o*p,r[2]=(n[10]*s+n[14])*p,p=-1/e,r[0]=n[0]*u*p,r[1]=n[5]*f*p,p=-1/c,_[2]=(n[10]*c+n[14])*p}return this.min._dirty=!0,this.max._dirty=!0,this},updateVertices:function(){var d=this.vertices;if(!d){for(var d=[],_=0;_<8;_++)d[_]=m.fromValues(0,0,0);this.vertices=d}var r=this.min.array,n=this.max.array;return h(d[0],r[0],r[1],r[2]),h(d[1],r[0],n[1],r[2]),h(d[2],n[0],r[1],r[2]),h(d[3],n[0],n[1],r[2]),h(d[4],r[0],r[1],n[2]),h(d[5],r[0],n[1],n[2]),h(d[6],n[0],r[1],n[2]),h(d[7],n[0],n[1],n[2]),this},copy:function(d){var _=this.min,r=this.max;return E(_.array,d.min.array),E(r.array,d.max.array),_._dirty=!0,r._dirty=!0,this},clone:function(){var d=new a;return d.copy(this),d}},M.a=a},function(H,M,g){"use strict";M.a=function(D,y,v){return{seriesType:D,reset:function(m,E){var h=m.getData(),a=m.visualColorAccessPath.split(".");a[a.length-1]="opacity";var d=m.get(a);h.setVisual("opacity",d==null?1:d);function _(r){var n=h.getItemModel(r),l=n.get(a);l!=null&&h.setItemVisual(r,"opacity",l)}return{dataEach:h.hasItemOption?_:null}}}}},function(H,M,g){"use strict";var D=g(8),y=g(6),v=g(21),m=g(93),E=m.a.parseToFloat,h={};function a(r,n,l){var o=Object.keys(r);o.sort();for(var s=[],u=0;u<o.length;u++){var f=o[u],e=r[f];e===null?s.push(f):s.push(f+" "+e.toString())}return s.join(`
|
|
`)}function d(r,n,l){l.sort();for(var o=[],s=0;s<l.length;s++){var u=l[s];o.push(u)}var f=a(r)+`
|
|
`+a(n)+`
|
|
`+o.join(`
|
|
`);if(h[f])return h[f];var e=v.a.genGUID();return h[f]=e,e}var _=D.a.extend(function(){return{name:"",depthTest:!0,depthMask:!0,transparent:!1,blend:null,autoUpdateTextureStatus:!0,uniforms:{},vertexDefines:{},fragmentDefines:{},_textureStatus:{},_enabledUniforms:null}},function(){this.name||(this.name="MATERIAL_"+this.__uid__),this.shader&&this.attachShader(this.shader,!0)},{precision:"highp",bind:function(r,n,l,o){for(var s=r.gl,u=n.currentTextureSlot(),f=0;f<this._enabledUniforms.length;f++){var e=this._enabledUniforms[f],t=this.uniforms[e].value;if(t instanceof y.a)t.__slot=-1;else if(Array.isArray(t))for(var i=0;i<t.length;i++)t[i]instanceof y.a&&(t[i].__slot=-1)}for(var f=0;f<this._enabledUniforms.length;f++){var e=this._enabledUniforms[f],c=this.uniforms[e],t=c.value;if(t===null){if(c.type==="t"){var p=n.currentTextureSlot(),A=n.setUniform(s,"1i",e,p);A&&n.takeCurrentTextureSlot(r,null)}continue}else if(t instanceof y.a)if(t.__slot<0){var p=n.currentTextureSlot(),A=n.setUniform(s,"1i",e,p);if(!A)continue;n.takeCurrentTextureSlot(r,t),t.__slot=p}else n.setUniform(s,"1i",e,t.__slot);else if(Array.isArray(t)){if(t.length===0)continue;var x=t[0];if(x instanceof y.a){if(!n.hasUniform(e))continue;for(var C=[],i=0;i<t.length;i++){var S=t[i];if(S.__slot<0){var p=n.currentTextureSlot();C.push(p),n.takeCurrentTextureSlot(r,S),S.__slot=p}else C.push(S.__slot)}n.setUniform(s,"1iv",e,C)}else n.setUniform(s,c.type,e,t)}else n.setUniform(s,c.type,e,t)}n.resetTextureSlot(u)},setUniform:function(r,n){n===void 0&&console.warn('Uniform value "'+r+'" is undefined');var l=this.uniforms[r];l&&(typeof n=="string"&&(n=E(n)||n),l.value=n,this.autoUpdateTextureStatus&&l.type==="t"&&(n?this.enableTexture(r):this.disableTexture(r)))},setUniforms:function(r){for(var n in r){var l=r[n];this.setUniform(n,l)}},isUniformEnabled:function(r){return this._enabledUniforms.indexOf(r)>=0},getEnabledUniforms:function(){return this._enabledUniforms},getTextureUniforms:function(){return this._textureUniforms},set:function(r,n){if(typeof r=="object")for(var l in r){var o=r[l];this.setUniform(l,o)}else this.setUniform(r,n)},get:function(r){var n=this.uniforms[r];if(n)return n.value},attachShader:function(r,n){var l=this.uniforms;this.uniforms=r.createUniforms(),this.shader=r;var o=this.uniforms;this._enabledUniforms=Object.keys(o),this._enabledUniforms.sort(),this._textureUniforms=this._enabledUniforms.filter(function(i){var c=this.uniforms[i].type;return c==="t"||c==="tv"},this);var s=this.vertexDefines,u=this.fragmentDefines;if(this.vertexDefines=v.a.clone(r.vertexDefines),this.fragmentDefines=v.a.clone(r.fragmentDefines),n){for(var f in l)o[f]&&(o[f].value=l[f].value);v.a.defaults(this.vertexDefines,s),v.a.defaults(this.fragmentDefines,u)}var e={};for(var t in r.textures)e[t]={shaderType:r.textures[t].shaderType,type:r.textures[t].type,enabled:n&&this._textureStatus[t]?this._textureStatus[t].enabled:!1};this._textureStatus=e,this._programKey=""},clone:function(){var r=new this.constructor({name:this.name,shader:this.shader});for(var n in this.uniforms)r.uniforms[n].value=this.uniforms[n].value;return r.depthTest=this.depthTest,r.depthMask=this.depthMask,r.transparent=this.transparent,r.blend=this.blend,r.vertexDefines=v.a.clone(this.vertexDefines),r.fragmentDefines=v.a.clone(this.fragmentDefines),r.enableTexture(this.getEnabledTextures()),r.precision=this.precision,r},define:function(r,n,l){var o=this.vertexDefines,s=this.fragmentDefines;r!=="vertex"&&r!=="fragment"&&r!=="both"&&arguments.length<3&&(l=n,n=r,r="both"),l=l!=null?l:null,(r==="vertex"||r==="both")&&o[n]!==l&&(o[n]=l,this._programKey=""),(r==="fragment"||r==="both")&&s[n]!==l&&(s[n]=l,r!=="both"&&(this._programKey=""))},undefine:function(r,n){r!=="vertex"&&r!=="fragment"&&r!=="both"&&arguments.length<2&&(n=r,r="both"),(r==="vertex"||r==="both")&&this.isDefined("vertex",n)&&(delete this.vertexDefines[n],this._programKey=""),(r==="fragment"||r==="both")&&this.isDefined("fragment",n)&&(delete this.fragmentDefines[n],r!=="both"&&(this._programKey=""))},isDefined:function(r,n){switch(r){case"vertex":return this.vertexDefines[n]!==void 0;case"fragment":return this.fragmentDefines[n]!==void 0}},getDefine:function(r,n){switch(r){case"vertex":return this.vertexDefines[n];case"fragment":return this.fragmentDefines[n]}},enableTexture:function(r){if(Array.isArray(r)){for(var n=0;n<r.length;n++)this.enableTexture(r[n]);return}var l=this._textureStatus[r];if(l){var o=l.enabled;o||(l.enabled=!0,this._programKey="")}},enableTexturesAll:function(){var r=this._textureStatus;for(var n in r)r[n].enabled=!0;this._programKey=""},disableTexture:function(r){if(Array.isArray(r)){for(var n=0;n<r.length;n++)this.disableTexture(r[n]);return}var l=this._textureStatus[r];if(l){var o=!l.enabled;o||(l.enabled=!1,this._programKey="")}},disableTexturesAll:function(){var r=this._textureStatus;for(var n in r)r[n].enabled=!1;this._programKey=""},isTextureEnabled:function(r){var n=this._textureStatus;return!!n[r]&&n[r].enabled},getEnabledTextures:function(){var r=[],n=this._textureStatus;for(var l in n)n[l].enabled&&r.push(l);return r},dirtyDefines:function(){this._programKey=""}});Object.defineProperty&&(Object.defineProperty(_.prototype,"shader",{get:function(){return this._shader||null},set:function(r){this._shader=r}}),Object.defineProperty(_.prototype,"programKey",{get:function(){return this._programKey||(this._programKey=d(this.vertexDefines,this.fragmentDefines,this.getEnabledTextures())),this._programKey}})),M.a=_},function(H,M,g){"use strict";var D=!0;try{var y=document.createElement("canvas"),v=y.getContext("webgl")||y.getContext("experimental-webgl");if(!v)throw new Error}catch(E){D=!1}var m={};m.supportWebGL=function(){return D},m.Int8Array=typeof Int8Array=="undefined"?Array:Int8Array,m.Uint8Array=typeof Uint8Array=="undefined"?Array:Uint8Array,m.Uint16Array=typeof Uint16Array=="undefined"?Array:Uint16Array,m.Uint32Array=typeof Uint32Array=="undefined"?Array:Uint32Array,m.Int16Array=typeof Int16Array=="undefined"?Array:Int16Array,m.Float32Array=typeof Float32Array=="undefined"?Array:Float32Array,m.Float64Array=typeof Float64Array=="undefined"?Array:Float64Array,M.a=m},function(H,M,g){"use strict";var D=g(28),y=D.a.extend(function(){return{color:[1,1,1],intensity:1,castShadow:!0,shadowResolution:512,group:0}},{type:"",clone:function(){var v=D.a.prototype.clone.call(this);return v.color=Array.prototype.slice.call(this.color),v.intensity=this.intensity,v.castShadow=this.castShadow,v.shadowResolution=this.shadowResolution,v}});M.a=y},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(29),m=g(152),E=g(36),h=g(30),a=g(9),d=g(4),_=g(23),r=g(47),n=g(155),l=g(182),o=g(43);function s(f){f=f||"perspective",this.layer=null,this.scene=new v.a,this.rootNode=this.scene,this.viewport={x:0,y:0,width:0,height:0},this.setProjection(f),this._compositor=new n.a,this._temporalSS=new l.a,this._shadowMapPass=new m.a;for(var e=[],t=0,i=0;i<30;i++){for(var c=[],p=0;p<6;p++)c.push(Object(o.a)(t,2)*4-2),c.push(Object(o.a)(t,3)*4-2),t++;e.push(c)}this._pcfKernels=e,this.scene.on("beforerender",function(A,x,C){this.needsTemporalSS()&&this._temporalSS.jitterProjection(A,C)},this)}s.prototype.setProjection=function(f){var e=this.camera;e&&e.update(),f==="perspective"?this.camera instanceof E.a||(this.camera=new E.a,e&&this.camera.setLocalTransform(e.localTransform)):this.camera instanceof h.a||(this.camera=new h.a,e&&this.camera.setLocalTransform(e.localTransform)),this.camera.near=.1,this.camera.far=2e3},s.prototype.setViewport=function(f,e,t,i,c){this.camera instanceof E.a&&(this.camera.aspect=t/i),c=c||1,this.viewport.x=f,this.viewport.y=e,this.viewport.width=t,this.viewport.height=i,this.viewport.devicePixelRatio=c,this._compositor.resize(t*c,i*c),this._temporalSS.resize(t*c,i*c)},s.prototype.containPoint=function(f,e){var t=this.viewport,i=this.layer.renderer.getHeight();return e=i-e,f>=t.x&&e>=t.y&&f<=t.x+t.width&&e<=t.y+t.height};var u=new _.a;s.prototype.castRay=function(f,e,t){var i=this.layer.renderer,c=i.viewport;return i.viewport=this.viewport,i.screenToNDC(f,e,u),this.camera.castRay(u,t),i.viewport=c,t},s.prototype.prepareRender=function(){this.scene.update(),this.camera.update(),this._needsSortProgressively=!1;for(var f=0;f<this.scene.transparentList.length;f++){var e=this.scene.transparentList[f],t=e.geometry;t.needsSortVerticesProgressively&&t.needsSortVerticesProgressively()&&(this._needsSortProgressively=!0),t.needsSortTrianglesProgressively&&t.needsSortTrianglesProgressively()&&(this._needsSortProgressively=!0)}this._frame=0,this._temporalSS.resetFrame()},s.prototype.render=function(f,e){this._doRender(f,e,this._frame),this._frame++},s.prototype.needsAccumulate=function(){return this.needsTemporalSS()||this._needsSortProgressively},s.prototype.needsTemporalSS=function(){var f=this._enableTemporalSS;return f=="auto"&&(f=this._enablePostEffect),f},s.prototype.hasDOF=function(){return this._enableDOF},s.prototype.isAccumulateFinished=function(){return this.needsTemporalSS()?this._temporalSS.isFinished():this._frame>30},s.prototype._doRender=function(f,e,t){var i=this.scene,c=this.camera;if(t=t||0,this._updateTransparent(f,i,c,t),e||(this._shadowMapPass.kernelPCF=this._pcfKernels[0],this._shadowMapPass.render(f,i,c,!0)),this._updateShadowPCFKernel(t),f.gl.clearColor(0,0,0,0),this._enablePostEffect&&(this.needsTemporalSS()&&this._temporalSS.jitterProjection(f,c),this._compositor.updateNormal(f,i,c,this._temporalSS.getFrame())),this._updateSSAO(f,i,c,this._temporalSS.getFrame()),this._enablePostEffect){var p=this._compositor.getSourceFrameBuffer();p.bind(f),f.gl.clear(f.gl.DEPTH_BUFFER_BIT|f.gl.COLOR_BUFFER_BIT),f.render(i,c,!0,!0),p.unbind(f),this.needsTemporalSS()&&e?(this._compositor.composite(f,c,this._temporalSS.getSourceFrameBuffer(),this._temporalSS.getFrame()),f.setViewport(this.viewport),this._temporalSS.render(f)):(f.setViewport(this.viewport),this._compositor.composite(f,c,null,0))}else if(this.needsTemporalSS()&&e){var p=this._temporalSS.getSourceFrameBuffer();p.bind(f),f.saveClear(),f.clearBit=f.gl.DEPTH_BUFFER_BIT|f.gl.COLOR_BUFFER_BIT,f.render(i,c,!0,!0),f.restoreClear(),p.unbind(f),f.setViewport(this.viewport),this._temporalSS.render(f)}else f.setViewport(this.viewport),f.render(i,c,!0,!0)},s.prototype._updateTransparent=function(f,e,t,i){for(var c=new d.a,p=new a.a,A=t.getWorldPosition(),x=0;x<e.transparentList.length;x++){var C=e.transparentList[x],S=C.geometry;a.a.invert(p,C.worldTransform),d.a.transformMat4(c,A,p),S.needsSortTriangles&&S.needsSortTriangles()&&S.doSortTriangles(c,i),S.needsSortVertices&&S.needsSortVertices()&&S.doSortVertices(c,i)}},s.prototype._updateSSAO=function(f,e,t,i){var c=this._enableSSAO&&this._enablePostEffect;c&&this._compositor.updateSSAO(f,e,t,this._temporalSS.getFrame());for(var p=0;p<e.opaqueList.length;p++){var A=e.opaqueList[p];A.renderNormal&&A.material[c?"enableTexture":"disableTexture"]("ssaoMap"),c&&A.material.set("ssaoMap",this._compositor.getSSAOTexture())}},s.prototype._updateShadowPCFKernel=function(f){for(var e=this._pcfKernels[f%this._pcfKernels.length],t=this.scene.opaqueList,i=0;i<t.length;i++)t[i].receiveShadow&&(t[i].material.set("pcfKernel",e),t[i].material.define("fragment","PCF_KERNEL_SIZE",e.length/2))},s.prototype.dispose=function(f){this._compositor.dispose(f.gl),this._temporalSS.dispose(f.gl),this._shadowMapPass.dispose(f)},s.prototype.setPostEffect=function(f,e){var t=this._compositor;this._enablePostEffect=f.get("enable");var i=f.getModel("bloom"),c=f.getModel("edge"),p=f.getModel("DOF",f.getModel("depthOfField")),A=f.getModel("SSAO",f.getModel("screenSpaceAmbientOcclusion")),x=f.getModel("SSR",f.getModel("screenSpaceReflection")),C=f.getModel("FXAA"),S=f.getModel("colorCorrection");i.get("enable")?t.enableBloom():t.disableBloom(),p.get("enable")?t.enableDOF():t.disableDOF(),x.get("enable")?t.enableSSR():t.disableSSR(),S.get("enable")?t.enableColorCorrection():t.disableColorCorrection(),c.get("enable")?t.enableEdge():t.disableEdge(),C.get("enable")?t.enableFXAA():t.disableFXAA(),this._enableDOF=p.get("enable"),this._enableSSAO=A.get("enable"),this._enableSSAO?t.enableSSAO():t.disableSSAO(),t.setBloomIntensity(i.get("intensity")),t.setEdgeColor(c.get("color")),t.setColorLookupTexture(S.get("lookupTexture"),e),t.setExposure(S.get("exposure")),["radius","quality","intensity"].forEach(function(P){t.setSSAOParameter(P,A.get(P))}),["quality","maxRoughness"].forEach(function(P){t.setSSRParameter(P,x.get(P))}),["quality","focalDistance","focalRange","blurRadius","fstop"].forEach(function(P){t.setDOFParameter(P,p.get(P))}),["brightness","contrast","saturation"].forEach(function(P){t.setColorCorrection(P,S.get(P))})},s.prototype.setDOFFocusOnPoint=function(f){if(this._enablePostEffect)return f>this.camera.far||f<this.camera.near?void 0:(this._compositor.setDOFParameter("focalDistance",f),!0)},s.prototype.setTemporalSuperSampling=function(f){this._enableTemporalSS=f.get("enable")},s.prototype.isLinearSpace=function(){return this._enablePostEffect},s.prototype.setRootNode=function(f){if(this.rootNode!==f){for(var e=this.rootNode.children(),t=0;t<e.length;t++)f.add(e[t]);f!==this.scene&&this.scene.add(f),this.rootNode=f}},s.prototype.add=function(f){this.rootNode.add(f)},s.prototype.remove=function(f){this.rootNode.remove(f)},s.prototype.removeAll=function(f){this.rootNode.removeAll(f)},y.a.util.extend(s.prototype,r.a),M.a=s},function(H,M,g){"use strict";var D=0,y=Array.prototype,v=y.forEach,m={genGUID:function(){return++D},relative2absolute:function(E,h){if(!h||E.match(/^\//))return E;for(var a=E.split("/"),d=h.split("/"),_=a[0];_==="."||_==="..";)_===".."&&d.pop(),a.shift(),_=a[0];return d.join("/")+"/"+a.join("/")},extend:function(E,h){if(h)for(var a in h)h.hasOwnProperty(a)&&(E[a]=h[a]);return E},defaults:function(E,h){if(h)for(var a in h)E[a]===void 0&&(E[a]=h[a]);return E},extendWithPropList:function(E,h,a){if(h)for(var d=0;d<a.length;d++){var _=a[d];E[_]=h[_]}return E},defaultsWithPropList:function(E,h,a){if(h)for(var d=0;d<a.length;d++){var _=a[d];E[_]==null&&(E[_]=h[_])}return E},each:function(E,h,a){if(E&&h)if(E.forEach&&E.forEach===v)E.forEach(h,a);else if(E.length===+E.length)for(var d=0,_=E.length;d<_;d++)h.call(a,E[d],d,E);else for(var r in E)E.hasOwnProperty(r)&&h.call(a,E[r],r,E)},isObject:function(E){return E===Object(E)},isArray:function(E){return Array.isArray(E)},isArrayLike:function(E){return E?E.length===+E.length:!1},clone:function(E){if(m.isObject(E)){if(m.isArray(E))return E.slice();if(m.isArrayLike(E)){for(var h=new E.constructor(E.length),a=0;a<E.length;a++)h[a]=E[a];return h}else return m.extend({},E)}else return E}};M.a=m},function(H,M,g){"use strict";var D=g(13),y=g(0),v=g.n(y),m=g(33),E=g(1),h=g.n(E),a=h.a.vec3,d=[[0,0],[1,1]],_=D.a.extend(function(){return{segmentScale:1,dynamic:!0,useNativeLine:!0,attributes:{position:new D.a.Attribute("position","float",3,"POSITION"),positionPrev:new D.a.Attribute("positionPrev","float",3),positionNext:new D.a.Attribute("positionNext","float",3),prevPositionPrev:new D.a.Attribute("prevPositionPrev","float",3),prevPosition:new D.a.Attribute("prevPosition","float",3),prevPositionNext:new D.a.Attribute("prevPositionNext","float",3),offset:new D.a.Attribute("offset","float",1),color:new D.a.Attribute("color","float",4,"COLOR")}}},{resetOffset:function(){this._vertexOffset=0,this._triangleOffset=0,this._itemVertexOffsets=[]},setVertexCount:function(r){var n=this.attributes;this.vertexCount!==r&&(n.position.init(r),n.color.init(r),this.useNativeLine||(n.positionPrev.init(r),n.positionNext.init(r),n.offset.init(r)),r>65535?this.indices instanceof Uint16Array&&(this.indices=new Uint32Array(this.indices)):this.indices instanceof Uint32Array&&(this.indices=new Uint16Array(this.indices)))},setTriangleCount:function(r){this.triangleCount!==r&&(r===0?this.indices=null:this.indices=this.vertexCount>65535?new Uint32Array(r*3):new Uint16Array(r*3))},_getCubicCurveApproxStep:function(r,n,l,o){var s=a.dist(r,n)+a.dist(l,n)+a.dist(o,l),u=1/(s+1)*this.segmentScale;return u},getCubicCurveVertexCount:function(r,n,l,o){var s=this._getCubicCurveApproxStep(r,n,l,o),u=Math.ceil(1/s);return this.useNativeLine?u*2:u*2+2},getCubicCurveTriangleCount:function(r,n,l,o){var s=this._getCubicCurveApproxStep(r,n,l,o),u=Math.ceil(1/s);return this.useNativeLine?0:u*2},getLineVertexCount:function(){return this.getPolylineVertexCount(d)},getLineTriangleCount:function(){return this.getPolylineTriangleCount(d)},getPolylineVertexCount:function(r){var n;if(typeof r=="number")n=r;else{var l=typeof r[0]!="number";n=l?r.length:r.length/3}return this.useNativeLine?(n-1)*2:(n-1)*2+2},getPolylineTriangleCount:function(r){var n;if(typeof r=="number")n=r;else{var l=typeof r[0]!="number";n=l?r.length:r.length/3}return this.useNativeLine?0:Math.max(n-1,0)*2},addCubicCurve:function(r,n,l,o,s,u){u==null&&(u=1);for(var f=r[0],e=r[1],t=r[2],i=n[0],c=n[1],p=n[2],A=l[0],x=l[1],C=l[2],S=o[0],P=o[1],b=o[2],L=this._getCubicCurveApproxStep(r,n,l,o),R=L*L,T=R*L,N=3*L,I=3*R,F=6*R,U=6*T,K=f-i*2+A,G=e-c*2+x,V=t-p*2+C,X=(i-A)*3-f+S,ee=(c-x)*3-e+P,oe=(p-C)*3-t+b,ue=f,Ae=e,fe=t,he=(i-f)*N+K*I+X*T,ve=(c-e)*N+G*I+ee*T,me=(p-t)*N+V*I+oe*T,Te=K*F+X*U,Ce=G*F+ee*U,ye=V*F+oe*U,q=X*U,Q=ee*U,$=oe*U,j=0,re=0,k=Math.ceil(1/L),te=new Float32Array((k+1)*3),te=[],ie=0,re=0;re<k+1;re++)te[ie++]=ue,te[ie++]=Ae,te[ie++]=fe,ue+=he,Ae+=ve,fe+=me,he+=Te,ve+=Ce,me+=ye,Te+=q,Ce+=Q,ye+=$,j+=L,j>1&&(ue=he>0?Math.min(ue,S):Math.max(ue,S),Ae=ve>0?Math.min(Ae,P):Math.max(Ae,P),fe=me>0?Math.min(fe,b):Math.max(fe,b));return this.addPolyline(te,s,u)},addLine:function(r,n,l,o){return this.addPolyline([r,n],l,o)},addPolyline:function(r,n,l,o,s){if(r.length){var u=typeof r[0]!="number";if(s==null&&(s=u?r.length:r.length/3),!(s<2)){o==null&&(o=0),l==null&&(l=1),this._itemVertexOffsets.push(this._vertexOffset);var u=typeof r[0]!="number",f=u?typeof n[0]!="number":n.length/4===s,e=this.attributes.position,t=this.attributes.positionPrev,i=this.attributes.positionNext,c=this.attributes.color,p=this.attributes.offset,A=this.indices,x=this._vertexOffset,C,S;l=Math.max(l,.01);for(var P=o;P<s;P++){if(u)C=r[P],f?S=n[P]:S=n;else{var b=P*3;if(C=C||[],C[0]=r[b],C[1]=r[b+1],C[2]=r[b+2],f){var L=P*4;S=S||[],S[0]=n[L],S[1]=n[L+1],S[2]=n[L+2],S[3]=n[L+3]}else S=n}if(this.useNativeLine?P>1&&(e.copy(x,x-1),c.copy(x,x-1),x++):(P<s-1&&(t.set(x+2,C),t.set(x+3,C)),P>0&&(i.set(x-2,C),i.set(x-1,C)),e.set(x,C),e.set(x+1,C),c.set(x,S),c.set(x+1,S),p.set(x,l/2),p.set(x+1,-l/2),x+=2),this.useNativeLine)c.set(x,S),e.set(x,C),x++;else if(P>0){var R=this._triangleOffset*3,A=this.indices;A[R]=x-4,A[R+1]=x-3,A[R+2]=x-2,A[R+3]=x-3,A[R+4]=x-1,A[R+5]=x-2,this._triangleOffset+=2}}if(!this.useNativeLine){var T=this._vertexOffset,N=this._vertexOffset+s*2;t.copy(T,T+2),t.copy(T+1,T+3),i.copy(N-1,N-3),i.copy(N-2,N-4)}return this._vertexOffset=x,this._vertexOffset}}},setItemColor:function(r,n){for(var l=this._itemVertexOffsets[r],o=r<this._itemVertexOffsets.length-1?this._itemVertexOffsets[r+1]:this._vertexOffset,s=l;s<o;s++)this.attributes.color.set(s,n);this.dirty("color")},currentTriangleOffset:function(){return this._triangleOffset},currentVertexOffset:function(){return this._vertexOffset}});v.a.util.defaults(_.prototype,m.a),M.a=_},function(H,M,g){"use strict";var D=g(1),y=g.n(D),v=y.a.vec2,m=function(h,a){h=h||0,a=a||0,this.array=v.fromValues(h,a),this._dirty=!0};if(m.prototype={constructor:m,add:function(h){return v.add(this.array,this.array,h.array),this._dirty=!0,this},set:function(h,a){return this.array[0]=h,this.array[1]=a,this._dirty=!0,this},setArray:function(h){return this.array[0]=h[0],this.array[1]=h[1],this._dirty=!0,this},clone:function(){return new m(this.x,this.y)},copy:function(h){return v.copy(this.array,h.array),this._dirty=!0,this},cross:function(h,a){return v.cross(h.array,this.array,a.array),h._dirty=!0,this},dist:function(h){return v.dist(this.array,h.array)},distance:function(h){return v.distance(this.array,h.array)},div:function(h){return v.div(this.array,this.array,h.array),this._dirty=!0,this},divide:function(h){return v.divide(this.array,this.array,h.array),this._dirty=!0,this},dot:function(h){return v.dot(this.array,h.array)},len:function(){return v.len(this.array)},length:function(){return v.length(this.array)},lerp:function(h,a,d){return v.lerp(this.array,h.array,a.array,d),this._dirty=!0,this},min:function(h){return v.min(this.array,this.array,h.array),this._dirty=!0,this},max:function(h){return v.max(this.array,this.array,h.array),this._dirty=!0,this},mul:function(h){return v.mul(this.array,this.array,h.array),this._dirty=!0,this},multiply:function(h){return v.multiply(this.array,this.array,h.array),this._dirty=!0,this},negate:function(){return v.negate(this.array,this.array),this._dirty=!0,this},normalize:function(){return v.normalize(this.array,this.array),this._dirty=!0,this},random:function(h){return v.random(this.array,h),this._dirty=!0,this},scale:function(h){return v.scale(this.array,this.array,h),this._dirty=!0,this},scaleAndAdd:function(h,a){return v.scaleAndAdd(this.array,this.array,h.array,a),this._dirty=!0,this},sqrDist:function(h){return v.sqrDist(this.array,h.array)},squaredDistance:function(h){return v.squaredDistance(this.array,h.array)},sqrLen:function(){return v.sqrLen(this.array)},squaredLength:function(){return v.squaredLength(this.array)},sub:function(h){return v.sub(this.array,this.array,h.array),this._dirty=!0,this},subtract:function(h){return v.subtract(this.array,this.array,h.array),this._dirty=!0,this},transformMat2:function(h){return v.transformMat2(this.array,this.array,h.array),this._dirty=!0,this},transformMat2d:function(h){return v.transformMat2d(this.array,this.array,h.array),this._dirty=!0,this},transformMat3:function(h){return v.transformMat3(this.array,this.array,h.array),this._dirty=!0,this},transformMat4:function(h){return v.transformMat4(this.array,this.array,h.array),this._dirty=!0,this},toString:function(){return"["+Array.prototype.join.call(this.array,",")+"]"},toArray:function(){return Array.prototype.slice.call(this.array)}},Object.defineProperty){var E=m.prototype;Object.defineProperty(E,"x",{get:function(){return this.array[0]},set:function(h){this.array[0]=h,this._dirty=!0}}),Object.defineProperty(E,"y",{get:function(){return this.array[1]},set:function(h){this.array[1]=h,this._dirty=!0}})}m.add=function(h,a,d){return v.add(h.array,a.array,d.array),h._dirty=!0,h},m.set=function(h,a,d){return v.set(h.array,a,d),h._dirty=!0,h},m.copy=function(h,a){return v.copy(h.array,a.array),h._dirty=!0,h},m.cross=function(h,a,d){return v.cross(h.array,a.array,d.array),h._dirty=!0,h},m.dist=function(h,a){return v.distance(h.array,a.array)},m.distance=m.dist,m.div=function(h,a,d){return v.divide(h.array,a.array,d.array),h._dirty=!0,h},m.divide=m.div,m.dot=function(h,a){return v.dot(h.array,a.array)},m.len=function(h){return v.length(h.array)},m.lerp=function(h,a,d,_){return v.lerp(h.array,a.array,d.array,_),h._dirty=!0,h},m.min=function(h,a,d){return v.min(h.array,a.array,d.array),h._dirty=!0,h},m.max=function(h,a,d){return v.max(h.array,a.array,d.array),h._dirty=!0,h},m.mul=function(h,a,d){return v.multiply(h.array,a.array,d.array),h._dirty=!0,h},m.multiply=m.mul,m.negate=function(h,a){return v.negate(h.array,a.array),h._dirty=!0,h},m.normalize=function(h,a){return v.normalize(h.array,a.array),h._dirty=!0,h},m.random=function(h,a){return v.random(h.array,a),h._dirty=!0,h},m.scale=function(h,a,d){return v.scale(h.array,a.array,d),h._dirty=!0,h},m.scaleAndAdd=function(h,a,d,_){return v.scaleAndAdd(h.array,a.array,d.array,_),h._dirty=!0,h},m.sqrDist=function(h,a){return v.sqrDist(h.array,a.array)},m.squaredDistance=m.sqrDist,m.sqrLen=function(h){return v.sqrLen(h.array)},m.squaredLength=m.sqrLen,m.sub=function(h,a,d){return v.subtract(h.array,a.array,d.array),h._dirty=!0,h},m.subtract=m.sub,m.transformMat2=function(h,a,d){return v.transformMat2(h.array,a.array,d.array),h._dirty=!0,h},m.transformMat2d=function(h,a,d){return v.transformMat2d(h.array,a.array,d.array),h._dirty=!0,h},m.transformMat3=function(h,a,d){return v.transformMat3(h.array,a.array,d.array),h._dirty=!0,h},m.transformMat4=function(h,a,d){return v.transformMat4(h.array,a.array,d.array),h._dirty=!0,h},M.a=m},function(H,M,g){"use strict";var D=g(64),y=g(11),v=g(5),m=D.a.extend({skeleton:null,joints:null,useSkinMatricesTexture:!1},function(){this.joints||(this.joints=[])},{isSkinnedMesh:function(){return!!(this.skeleton&&this.joints&&this.joints.length>0)},render:function(E,h,a){var d=E.gl;if(this.skeleton){this.skeleton.update();var _=this.skeleton.getSubSkinMatrices(this.__uid__,this.joints);a.setUniformOfSemantic(d,"SKIN_MATRIX",_)}return D.a.prototype.render.call(this,E,h,a)},getSkinMatricesTexture:function(){return this._skinMatricesTexture=this._skinMatricesTexture||new v.a({type:y.a.FLOAT,minFilter:y.a.NEAREST,magFilter:y.a.NEAREST,useMipmap:!1,flipY:!1}),this._skinMatricesTexture}});m.POINTS=y.a.POINTS,m.LINES=y.a.LINES,m.LINE_LOOP=y.a.LINE_LOOP,m.LINE_STRIP=y.a.LINE_STRIP,m.TRIANGLES=y.a.TRIANGLES,m.TRIANGLE_STRIP=y.a.TRIANGLE_STRIP,m.TRIANGLE_FAN=y.a.TRIANGLE_FAN,m.BACK=y.a.BACK,m.FRONT=y.a.FRONT,m.FRONT_AND_BACK=y.a.FRONT_AND_BACK,m.CW=y.a.CW,m.CCW=y.a.CCW,M.a=m},function(H,M,g){"use strict";var D=g(6),y=g(11),v=g(21),m=g(66),E=m.a.isPowerOfTwo,h=["px","nx","py","ny","pz","nz"],a=D.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(_){var r=_.gl;r.bindTexture(r.TEXTURE_CUBE_MAP,this._cache.get("webgl_texture")),this.updateCommon(_);var n=this.format,l=this.type;r.texParameteri(r.TEXTURE_CUBE_MAP,r.TEXTURE_WRAP_S,this.getAvailableWrapS()),r.texParameteri(r.TEXTURE_CUBE_MAP,r.TEXTURE_WRAP_T,this.getAvailableWrapT()),r.texParameteri(r.TEXTURE_CUBE_MAP,r.TEXTURE_MAG_FILTER,this.getAvailableMagFilter()),r.texParameteri(r.TEXTURE_CUBE_MAP,r.TEXTURE_MIN_FILTER,this.getAvailableMinFilter());var o=_.getGLExtension("EXT_texture_filter_anisotropic");if(o&&this.anisotropic>1&&r.texParameterf(r.TEXTURE_CUBE_MAP,o.TEXTURE_MAX_ANISOTROPY_EXT,this.anisotropic),l===36193){var s=_.getGLExtension("OES_texture_half_float");s||(l=y.a.FLOAT)}if(this.mipmaps.length)for(var u=this.width,f=this.height,e=0;e<this.mipmaps.length;e++){var t=this.mipmaps[e];this._updateTextureData(r,t,e,u,f,n,l),u/=2,f/=2}else this._updateTextureData(r,this,0,this.width,this.height,n,l),!this.NPOT&&this.useMipmap&&r.generateMipmap(r.TEXTURE_CUBE_MAP);r.bindTexture(r.TEXTURE_CUBE_MAP,null)},_updateTextureData:function(_,r,n,l,o,s,u){for(var f=0;f<6;f++){var e=h[f],t=r.image&&r.image[e];t?_.texImage2D(_.TEXTURE_CUBE_MAP_POSITIVE_X+f,n,s,s,u,t):_.texImage2D(_.TEXTURE_CUBE_MAP_POSITIVE_X+f,n,s,l,o,0,s,u,r.pixels&&r.pixels[e])}},generateMipmap:function(_){var r=_.gl;this.useMipmap&&!this.NPOT&&(r.bindTexture(r.TEXTURE_CUBE_MAP,this._cache.get("webgl_texture")),r.generateMipmap(r.TEXTURE_CUBE_MAP))},bind:function(_){_.gl.bindTexture(_.gl.TEXTURE_CUBE_MAP,this.getWebGLTexture(_))},unbind:function(_){_.gl.bindTexture(_.gl.TEXTURE_CUBE_MAP,null)},isPowerOfTwo:function(){return this.image.px?E(this.image.px.width)&&E(this.image.px.height):E(this.width)&&E(this.height)},isRenderable:function(){return this.image.px?d(this.image.px)&&d(this.image.nx)&&d(this.image.py)&&d(this.image.ny)&&d(this.image.pz)&&d(this.image.nz):!!(this.width&&this.height)},load:function(_,r){var n=0,l=this;return v.a.each(_,function(o,s){var u=new Image;r&&(u.crossOrigin=r),u.onload=function(){n--,n===0&&(l.dirty(),l.trigger("success",l)),u.onload=null},u.onerror=function(){n--,u.onerror=null},n++,u.src=o,l.image[s]=u}),this}});Object.defineProperty(a.prototype,"width",{get:function(){return this.image&&this.image.px?this.image.px.width:this._width},set:function(_){this.image&&this.image.px?console.warn("Texture from image can't set width"):(this._width!==_&&this.dirty(),this._width=_)}}),Object.defineProperty(a.prototype,"height",{get:function(){return this.image&&this.image.px?this.image.px.height:this._height},set:function(_){this.image&&this.image.px?console.warn("Texture from image can't set height"):(this._height!==_&&this.dirty(),this._height=_)}});function d(_){return _.nodeName==="CANVAS"||_.nodeName==="VIDEO"||_.complete}M.a=a},function(H,M,g){"use strict";M.a={defaultOption:{shading:null,realisticMaterial:{textureTiling:1,textureOffset:0,detailTexture:null},lambertMaterial:{textureTiling:1,textureOffset:0,detailTexture:null},colorMaterial:{textureTiling:1,textureOffset:0,detailTexture:null},hatchingMaterial:{textureTiling:1,textureOffset:0,paperColor:"#fff"}}}},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v={};v.getFormattedLabel=function(m,E,h,a,d){h=h||"normal";var _=m.getData(a),r=_.getItemModel(E),n=m.getDataParams(E,a);d!=null&&n.value instanceof Array&&(n.value=n.value[d]);var l=r.get(h==="normal"?["label","formatter"]:["emphasis","label","formatter"]);l==null&&(l=r.get(["label","formatter"]));var o;return typeof l=="function"?(n.status=h,o=l(n)):typeof l=="string"&&(o=y.a.format.formatTpl(l,n)),o},v.normalizeToArray=function(m){return m instanceof Array?m:m==null?[]:[m]},M.a=v},function(H,M,g){"use strict";var D=g(8),y=g(4),v=g(50),m=g(9),E=g(1),h=g.n(E),a=g(15),d=h.a.mat4,_=0,r=D.a.extend({name:"",position:null,rotation:null,scale:null,worldTransform:null,localTransform:null,autoUpdateLocalTransform:!0,_parent:null,_scene:null,_needsUpdateWorldTransform:!0,_inIterating:!1,__depth:0},function(){this.name||(this.name=(this.type||"NODE")+"_"+_++),this.position||(this.position=new y.a),this.rotation||(this.rotation=new v.a),this.scale||(this.scale=new y.a(1,1,1)),this.worldTransform=new m.a,this.localTransform=new m.a,this._children=[]},{target:null,invisible:!1,isSkinnedMesh:function(){return!1},isRenderable:function(){return!1},setName:function(n){var l=this._scene;if(l){var o=l._nodeRepository;delete o[this.name],o[n]=this}this.name=n},add:function(n){this._inIterating&&console.warn("Add operation can cause unpredictable error when in iterating");var l=n._parent;if(l!==this){l&&l.remove(n),n._parent=this,this._children.push(n);var o=this._scene;o&&o!==n.scene&&n.traverse(this._addSelfToScene,this),n._needsUpdateWorldTransform=!0}},remove:function(n){this._inIterating&&console.warn("Remove operation can cause unpredictable error when in iterating");var l=this._children,o=l.indexOf(n);o<0||(l.splice(o,1),n._parent=null,this._scene&&n.traverse(this._removeSelfFromScene,this))},removeAll:function(){for(var n=this._children,l=0;l<n.length;l++)n[l]._parent=null,this._scene&&n[l].traverse(this._removeSelfFromScene,this);this._children=[]},getScene:function(){return this._scene},getParent:function(){return this._parent},_removeSelfFromScene:function(n){n._scene.removeFromScene(n),n._scene=null},_addSelfToScene:function(n){this._scene.addToScene(n),n._scene=this._scene},isAncestor:function(n){for(var l=n._parent;l;){if(l===this)return!0;l=l._parent}return!1},children:function(){return this._children.slice()},childAt:function(n){return this._children[n]},getChildByName:function(n){for(var l=this._children,o=0;o<l.length;o++)if(l[o].name===n)return l[o]},getDescendantByName:function(n){for(var l=this._children,o=0;o<l.length;o++){var s=l[o];if(s.name===n)return s;var u=s.getDescendantByName(n);if(u)return u}},queryNode:function(n){if(n){for(var l=n.split("/"),o=this,s=0;s<l.length;s++){var u=l[s];if(u){for(var f=!1,e=o._children,t=0;t<e.length;t++){var i=e[t];if(i.name===u){o=i,f=!0;break}}if(!f)return}}return o}},getPath:function(n){if(!this._parent)return"/";for(var l=this._parent,o=this.name;l._parent&&(o=l.name+"/"+o,l._parent!=n);)l=l._parent;return!l._parent&&n?null:o},traverse:function(n,l,o){this._inIterating=!0,(!o||o.call(l,this))&&n.call(l,this);for(var s=this._children,u=0,f=s.length;u<f;u++)s[u].traverse(n,l,o);this._inIterating=!1},eachChild:function(n,l,o){this._inIterating=!0;for(var s=this._children,u=o==null,f=0,e=s.length;f<e;f++){var t=s[f];(u||t.constructor===o)&&n.call(l,t,f)}this._inIterating=!1},setLocalTransform:function(n){d.copy(this.localTransform.array,n.array),this.decomposeLocalTransform()},decomposeLocalTransform:function(n){var l=n?null:this.scale;this.localTransform.decomposeMatrix(l,this.rotation,this.position)},setWorldTransform:function(n){d.copy(this.worldTransform.array,n.array),this.decomposeWorldTransform()},decomposeWorldTransform:function(){var n=d.create();return function(l){var o=this.localTransform,s=this.worldTransform;this._parent?(d.invert(n,this._parent.worldTransform.array),d.multiply(o.array,n,s.array)):d.copy(o.array,s.array);var u=l?null:this.scale;o.decomposeMatrix(u,this.rotation,this.position)}}(),transformNeedsUpdate:function(){return this.position._dirty||this.rotation._dirty||this.scale._dirty},updateLocalTransform:function(){var n=this.position,l=this.rotation,o=this.scale;if(this.transformNeedsUpdate()){var s=this.localTransform.array;d.fromRotationTranslation(s,l.array,n.array),d.scale(s,s,o.array),l._dirty=!1,o._dirty=!1,n._dirty=!1,this._needsUpdateWorldTransform=!0}},_updateWorldTransformTopDown:function(){var n=this.localTransform.array,l=this.worldTransform.array;this._parent?d.multiplyAffine(l,this._parent.worldTransform.array,n):d.copy(l,n)},updateWorldTransform:function(){for(var n=this;n&&n.getParent()&&n.getParent().transformNeedsUpdate();)n=n.getParent();n.update()},update:function(n){this.autoUpdateLocalTransform?this.updateLocalTransform():n=!0,(n||this._needsUpdateWorldTransform)&&(this._updateWorldTransformTopDown(),n=!0,this._needsUpdateWorldTransform=!1);for(var l=this._children,o=0,s=l.length;o<s;o++)l[o].update(n)},getBoundingBox:function(){function n(u){return!u.invisible&&u.geometry}var l=new a.a,o=new m.a,s=new m.a;return function(u,f){return f=f||new a.a,u=u||n,this._parent?m.a.invert(s,this._parent.worldTransform):m.a.identity(s),this.traverse(function(e){e.geometry&&e.geometry.boundingBox&&(l.copy(e.geometry.boundingBox),m.a.multiply(o,s,e.worldTransform),l.applyTransform(o),f.union(l))},this,n),f}}(),getWorldPosition:function(n){this.transformNeedsUpdate()&&this.updateWorldTransform();var l=this.worldTransform.array;if(n){var o=n.array;return o[0]=l[12],o[1]=l[13],o[2]=l[14],n}else return new y.a(l[12],l[13],l[14])},clone:function(){var n=new this.constructor,l=this._children;n.setName(this.name),n.position.copy(this.position),n.rotation.copy(this.rotation),n.scale.copy(this.scale);for(var o=0;o<l.length;o++)n.add(l[o].clone());return n},rotateAround:function(){var n=new y.a,l=new m.a;return function(o,s,u){n.copy(this.position).subtract(o);var f=this.localTransform;f.identity(),f.translate(o),f.rotate(u,s),l.fromRotationTranslation(this.rotation,n),f.multiply(l),f.scale(this.scale),this.decomposeLocalTransform(),this._needsUpdateWorldTransform=!0}}(),lookAt:function(){var n=new m.a;return function(l,o){n.lookAt(this.position,l,o||this.localTransform.y).invert(),this.setLocalTransform(n),this.target=l}}()});M.a=r},function(H,M,g){"use strict";var D=g(28),y=g(19),v=g(51),m=g(15),E=g(21),h={};function a(r){var n=[],l=Object.keys(r);l.sort();for(var o=0;o<l.length;o++){var s=r[o];n.push(s+" "+r[s])}var u=n.join(`
|
|
`);if(h[u])return h[u];var f=E.a.genGUID();return h[u]=f,f}var d=D.a.extend(function(){return{material:null,autoUpdate:!0,opaqueList:[],transparentList:[],lights:[],viewBoundingBoxLastFrame:new m.a,shadowUniforms:{},_cameraList:[],_lightUniforms:{},_previousLightNumber:{},_lightNumber:{},_lightProgramKeys:{},_opaqueObjectCount:0,_transparentObjectCount:0,_nodeRepository:{}}},function(){this._scene=this},{addToScene:function(r){r instanceof v.a&&(this._cameraList.length>0&&console.warn("Found multiple camera in one scene. Use the fist one."),this._cameraList.push(r)),r.name&&(this._nodeRepository[r.name]=r)},removeFromScene:function(r){if(r instanceof v.a){var n=this._cameraList.indexOf(r);n>=0&&this._cameraList.splice(n,1)}r.name&&delete this._nodeRepository[r.name]},getNode:function(r){return this._nodeRepository[r]},cloneNode:function(r){var n=r.clone(),l={},o=function(u,f){u.skeleton&&(f.skeleton=u.skeleton.clone(r,n),f.joints=u.joints.slice()),u.material&&(l[u.material.__uid__]={oldMat:u.material});for(var e=0;e<u._children.length;e++)o(u._children[e],f._children[e])};o(r,n);for(var s in l)l[s].newMat=l[s].oldMat.clone();return n.traverse(function(u){u.material&&(u.material=l[u.material.__uid__].newMat)}),n},update:function(r,n){if(this.autoUpdate||r){D.a.prototype.update.call(this,r);var l=this.lights,o=this.material&&this.material.transparent;if(this._opaqueObjectCount=0,this._transparentObjectCount=0,l.length=0,this._updateRenderList(this,o),this.opaqueList.length=this._opaqueObjectCount,this.transparentList.length=this._transparentObjectCount,!n){this._previousLightNumber=this._lightNumber;for(var s={},u=0;u<l.length;u++){var f=l[u],e=f.group;s[e]||(s[e]={}),s[e][f.type]=s[e][f.type]||0,s[e][f.type]++}this._lightNumber=s;for(var t in s)this._lightProgramKeys[t]=a(s[t]);this._updateLightUniforms()}}},getMainCamera:function(){return this._cameraList[0]},_updateRenderList:function(r,n){if(!r.invisible)for(var l=0;l<r._children.length;l++){var o=r._children[l];o instanceof y.a?this.lights.push(o):o.isRenderable()&&(o.material.transparent||n?this.transparentList[this._transparentObjectCount++]=o:this.opaqueList[this._opaqueObjectCount++]=o),o._children.length>0&&this._updateRenderList(o)}},_updateLightUniforms:function(){var r=this.lights;r.sort(_);var n=this._lightUniforms;for(var l in n)for(var o in n[l])n[l][o].value.length=0;for(var s=0;s<r.length;s++){var u=r[s],l=u.group;for(var o in u.uniformTemplates){var f=u.uniformTemplates[o],e=f.value(u);if(e!=null){n[l]||(n[l]={}),n[l][o]||(n[l][o]={type:"",value:[]});var t=n[l][o];switch(t.type=f.type+"v",f.type){case"1i":case"1f":case"t":t.value.push(e);break;case"2f":case"3f":case"4f":for(var i=0;i<e.length;i++)t.value.push(e[i]);break;default:console.error("Unkown light uniform type "+f.type)}}}}},getLightGroups:function(){var r=[];for(var n in this._lightNumber)r.push(n);return r},getNumberChangedLightGroups:function(){var r=[];for(var n in this._lightNumber)this.isLightNumberChanged(n)&&r.push(n);return r},isLightNumberChanged:function(r){var n=this._previousLightNumber,l=this._lightNumber;for(var o in l[r])if(!n[r]||l[r][o]!==n[r][o])return!0;for(var o in n[r])if(!l[r]||l[r][o]!==n[r][o])return!0;return!1},getLightsNumbers:function(r){return this._lightNumber[r]},getProgramKey:function(r){return this._lightProgramKeys[r]},setLightUniforms:function(){function r(n,l,o){for(var s in n){var u=n[s];if(u.type==="tv"){if(!l.hasUniform(s))continue;for(var f=[],e=0;e<u.value.length;e++){var t=u.value[e],i=l.takeCurrentTextureSlot(o,t);f.push(i)}l.setUniform(o.gl,"1iv",s,f)}else l.setUniform(o.gl,u.type,s,u.value)}}return function(n,l,o){r(this._lightUniforms[l],n,o),r(this.shadowUniforms,n,o)}}(),dispose:function(){this.material=null,this.opaqueList=[],this.transparentList=[],this.lights=[],this._lightUniforms={},this._lightNumber={},this._nodeRepository={}}});function _(r,n){if(n.castShadow&&!r.castShadow)return!0}M.a=d},function(H,M,g){"use strict";var D=g(51),y=D.a.extend({left:-1,right:1,near:-1,far:1,top:1,bottom:-1},{updateProjectionMatrix:function(){this.projectionMatrix.ortho(this.left,this.right,this.bottom,this.top,this.near,this.far)},decomposeProjectionMatrix:function(){var v=this.projectionMatrix.array;this.left=(-1-v[12])/v[0],this.right=(1-v[12])/v[0],this.top=(1-v[13])/v[5],this.bottom=(-1-v[13])/v[5],this.near=-(-1-v[14])/v[10],this.far=-(1-v[14])/v[10]},clone:function(){var v=D.a.prototype.clone.call(this);return v.left=this.left,v.right=this.right,v.near=this.near,v.far=this.far,v.top=this.top,v.bottom=this.bottom,v}});M.a=y},function(H,M,g){"use strict";M.a={defaultOption:{postEffect:{enable:!1,bloom:{enable:!0,intensity:.1},depthOfField:{enable:!1,focalRange:20,focalDistance:50,blurRadius:10,fstop:2.8,quality:"medium"},screenSpaceAmbientOcclusion:{enable:!1,radius:2,quality:"medium",intensity:1},screenSpaceReflection:{enable:!1,quality:"medium",maxRoughness:.8},colorCorrection:{enable:!0,exposure:0,brightness:0,contrast:1,saturation:1,lookupTexture:""},edge:{enable:!1},FXAA:{enable:!1}},temporalSuperSampling:{enable:"auto"}}}},function(H,M,g){"use strict";M.a={defaultOption:{light:{main:{shadow:!1,shadowQuality:"high",color:"#fff",intensity:1,alpha:0,beta:0},ambient:{color:"#fff",intensity:.2},ambientCubemap:{texture:null,exposure:1,diffuseIntensity:.5,specularIntensity:.5}}}}},function(H,M,g){"use strict";M.a={convertToDynamicArray:function(D){D&&this.resetOffset();var y=this.attributes;for(var v in y)D||!y[v].value?y[v].value=[]:y[v].value=Array.prototype.slice.call(y[v].value);D||!this.indices?this.indices=[]:this.indices=Array.prototype.slice.call(this.indices)},convertToTypedArray:function(){var D=this.attributes;for(var y in D)D[y].value&&D[y].value.length>0?D[y].value=new Float32Array(D[y].value):D[y].value=null;this.indices&&this.indices.length>0&&(this.indices=this.vertexCount>65535?new Uint32Array(this.indices):new Uint16Array(this.indices)),this.dirty()}}},function(H,M,g){"use strict";var D=g(2),y=g(57),v=g(56),m=g(0),E=g.n(m);function h(){}h.prototype={constructor:h,setScene:function(a){this._scene=a,this._skybox&&this._skybox.attachScene(this._scene)},initLight:function(a){this._lightRoot=a,this.mainLight=new D.a.DirectionalLight({shadowBias:.005}),this.ambientLight=new D.a.AmbientLight,a.add(this.mainLight),a.add(this.ambientLight)},dispose:function(){this._lightRoot&&(this._lightRoot.remove(this.mainLight),this._lightRoot.remove(this.ambientLight))},updateLight:function(a){var d=this.mainLight,_=this.ambientLight,r=a.getModel("light"),n=r.getModel("main"),l=r.getModel("ambient");d.intensity=n.get("intensity"),_.intensity=l.get("intensity"),d.color=D.a.parseColor(n.get("color")).slice(0,3),_.color=D.a.parseColor(l.get("color")).slice(0,3);var o=n.get("alpha")||0,s=n.get("beta")||0;d.position.setArray(D.a.directionFromAlphaBeta(o,s)),d.lookAt(D.a.Vector3.ZERO),d.castShadow=n.get("shadow"),d.shadowResolution=D.a.getShadowResolution(n.get("shadowQuality"))},updateAmbientCubemap:function(a,d,_){var r=d.getModel("light.ambientCubemap"),n=r.get("texture");if(n){this._cubemapLightsCache=this._cubemapLightsCache||{};var l=this._cubemapLightsCache[n];if(!l){var o=this;l=this._cubemapLightsCache[n]=D.a.createAmbientCubemap(r.option,a,_,function(){o._skybox instanceof y.a&&o._skybox.setEnvironmentMap(l.specular.cubemap),_.getZr().refresh()})}this._lightRoot.add(l.diffuse),this._lightRoot.add(l.specular),this._currentCubemapLights=l}else this._currentCubemapLights&&(this._lightRoot.remove(this._currentCubemapLights.diffuse),this._lightRoot.remove(this._currentCubemapLights.specular),this._currentCubemapLights=null)},updateSkybox:function(a,d,_){var r=d.get("environment"),n=this;function l(){return n._skybox instanceof y.a||(n._skybox&&n._skybox.dispose(a),n._skybox=new y.a),n._skybox}function o(){return n._skybox instanceof v.a||(n._skybox&&n._skybox.dispose(a),n._skybox=new v.a),n._skybox}if(r&&r!=="none")if(r==="auto")if(this._currentCubemapLights){var s=l(),u=this._currentCubemapLights.specular.cubemap;s.setEnvironmentMap(u),this._scene&&s.attachScene(this._scene),s.material.set("lod",2)}else this._skybox&&this._skybox.detachScene();else if(typeof r=="object"&&r.colorStops||typeof r=="string"&&E.a.color.parse(r)){var f=o(),e=new D.a.Texture2D({anisotropic:8,flipY:!1});f.setEnvironmentMap(e);var t=e.image=document.createElement("canvas");t.width=t.height=16;var i=t.getContext("2d"),c=new E.a.graphic.Rect({shape:{x:0,y:0,width:16,height:16},style:{fill:r}});c.brush(i),f.attachScene(this._scene)}else{var f=o(),e=D.a.loadTexture(r,_,{anisotropic:8,flipY:!1});f.setEnvironmentMap(e),f.attachScene(this._scene)}else this._skybox&&this._skybox.detachScene(this._scene),this._skybox=null;var p=d.coordinateSystem;if(this._skybox)if(p&&p.viewGL&&r!=="auto"&&!(r.match&&r.match(/.hdr$/))){var A=p.viewGL.isLinearSpace()?"define":"undefine";this._skybox.material[A]("fragment","SRGB_DECODE")}else this._skybox.material.undefine("fragment","SRGB_DECODE")}},M.a=h},function(H,M,g){"use strict";var D=g(0),y=g.n(D);function v(m,E){var h=[];return y.a.util.each(m.dimensions,function(a){var d=m.getDimensionInfo(a),_=d.otherDims,r=_[E];r!=null&&r!==!1&&(h[r]=d.name)}),h}M.a=function(m,E,h){function a(u){var f=!0,e=[],t=v(d,"tooltip");t.length?y.a.util.each(t,function(c){i(d.get(c,E),c)}):y.a.util.each(u,i);function i(c,p){var A=d.getDimensionInfo(p);if(!(!A||A.otherDims.tooltip===!1)){var x=A.type,C=(f?"- "+(A.tooltipName||A.name)+": ":"")+(x==="ordinal"?c+"":x==="time"?h?"":y.a.format.formatTime("yyyy/MM/dd hh:mm:ss",c):y.a.format.addCommas(c));C&&e.push(y.a.format.encodeHTML(C))}}return(f?"<br/>":"")+e.join(f?"<br/>":", ")}var d=m.getData(),_=m.getRawValue(E),r=y.a.util.isArray(_)?a(_):y.a.format.encodeHTML(y.a.format.addCommas(_)),n=d.getName(E),l=d.getItemVisual(E,"color");y.a.util.isObject(l)&&l.colorStops&&(l=(l.colorStops[0]||{}).color),l=l||"transparent";var o=y.a.format.getTooltipMarker(l),s=m.name;return s==="\0-"&&(s=""),s=s?y.a.format.encodeHTML(s)+(h?": ":"<br/>"):"",h?o+s+r:s+o+(n?y.a.format.encodeHTML(n)+": "+r:r)}},function(H,M,g){"use strict";var D=g(51),y=D.a.extend({fov:50,aspect:1,near:.1,far:2e3},{updateProjectionMatrix:function(){var v=this.fov/180*Math.PI;this.projectionMatrix.perspective(v,this.aspect,this.near,this.far)},decomposeProjectionMatrix:function(){var v=this.projectionMatrix.array,m=Math.atan(1/v[5])*2;this.fov=m/Math.PI*180,this.aspect=v[5]/v[0],this.near=v[14]/(v[10]-1),this.far=v[14]/(v[10]+1)},clone:function(){var v=D.a.prototype.clone.call(this);return v.fov=this.fov,v.aspect=this.aspect,v.near=this.near,v.far=this.far,v}});M.a=y},function(H,M,g){"use strict";var D=g(13),y=g(15),v=D.a.extend({dynamic:!1,widthSegments:1,heightSegments:1},function(){this.build()},{build:function(){for(var m=this.heightSegments,E=this.widthSegments,h=this.attributes,a=[],d=[],_=[],r=[],n=0;n<=m;n++)for(var l=n/m,o=0;o<=E;o++){var s=o/E;if(a.push([2*s-1,2*l-1,0]),d&&d.push([s,l]),_&&_.push([0,0,1]),o<E&&n<m){var u=o+n*(E+1);r.push([u,u+1,u+E+1]),r.push([u+E+1,u+1,u+E+2])}}h.position.fromArray(a),h.texcoord0.fromArray(d),h.normal.fromArray(_),this.initIndicesFromArray(r),this.boundingBox=new y.a,this.boundingBox.min.set(-1,-1,0),this.boundingBox.max.set(1,1,0)}});M.a=v},function(H,M,g){"use strict";M.a={defaultOption:{viewControl:{projection:"perspective",autoRotate:!1,autoRotateDirection:"cw",autoRotateSpeed:10,autoRotateAfterStill:3,damping:.8,rotateSensitivity:1,zoomSensitivity:1,panSensitivity:1,panMouseButton:"middle",rotateMouseButton:"left",distance:150,minDistance:40,maxDistance:400,orthographicSize:150,maxOrthographicSize:400,minOrthographicSize:20,center:[0,0,0],alpha:0,beta:0,minAlpha:-90,maxAlpha:90}},setView:function(D){D=D||{},this.option.viewControl=this.option.viewControl||{},D.alpha!=null&&(this.option.viewControl.alpha=D.alpha),D.beta!=null&&(this.option.viewControl.beta=D.beta),D.distance!=null&&(this.option.viewControl.distance=D.distance),D.center!=null&&(this.option.viewControl.center=D.center)}}},function(H,M,g){"use strict";var D=g(8),y=g(23),v=g(4),m=g(50),E=g(3),h=E.a.firstNotNull,a={left:0,middle:1,right:2};function d(r){return r instanceof Array||(r=[r,r]),r}var _=D.a.extend(function(){return{zr:null,viewGL:null,_center:new v.a,minDistance:.5,maxDistance:1.5,maxOrthographicSize:300,minOrthographicSize:30,minAlpha:-90,maxAlpha:90,minBeta:-1/0,maxBeta:1/0,autoRotateAfterStill:0,autoRotateDirection:"cw",autoRotateSpeed:60,damping:.8,rotateSensitivity:1,zoomSensitivity:1,panSensitivity:1,panMouseButton:"middle",rotateMouseButton:"left",_mode:"rotate",_camera:null,_needsUpdate:!1,_rotating:!1,_phi:0,_theta:0,_mouseX:0,_mouseY:0,_rotateVelocity:new y.a,_panVelocity:new y.a,_distance:500,_zoomSpeed:0,_stillTimeout:0,_animators:[]}},function(){["_mouseDownHandler","_mouseWheelHandler","_mouseMoveHandler","_mouseUpHandler","_pinchHandler","_contextMenuHandler","_update"].forEach(function(r){this[r]=this[r].bind(this)},this)},{init:function(){var r=this.zr;r&&(r.on("mousedown",this._mouseDownHandler),r.on("globalout",this._mouseUpHandler),r.on("mousewheel",this._mouseWheelHandler),r.on("pinch",this._pinchHandler),r.animation.on("frame",this._update),r.dom.addEventListener("contextmenu",this._contextMenuHandler))},dispose:function(){var r=this.zr;r&&(r.off("mousedown",this._mouseDownHandler),r.off("mousemove",this._mouseMoveHandler),r.off("mouseup",this._mouseUpHandler),r.off("mousewheel",this._mouseWheelHandler),r.off("pinch",this._pinchHandler),r.off("globalout",this._mouseUpHandler),r.dom.removeEventListener("contextmenu",this._contextMenuHandler),r.animation.off("frame",this._update)),this.stopAllAnimation()},getDistance:function(){return this._distance},setDistance:function(r){this._distance=r,this._needsUpdate=!0},getOrthographicSize:function(){return this._orthoSize},setOrthographicSize:function(r){this._orthoSize=r,this._needsUpdate=!0},getAlpha:function(){return this._theta/Math.PI*180},getBeta:function(){return-this._phi/Math.PI*180},getCenter:function(){return this._center.toArray()},setAlpha:function(r){r=Math.max(Math.min(this.maxAlpha,r),this.minAlpha),this._theta=r/180*Math.PI,this._needsUpdate=!0},setBeta:function(r){r=Math.max(Math.min(this.maxBeta,r),this.minBeta),this._phi=-r/180*Math.PI,this._needsUpdate=!0},setCenter:function(r){this._center.setArray(r)},setViewGL:function(r){this.viewGL=r},getCamera:function(){return this.viewGL.camera},setFromViewControlModel:function(r,n){n=n||{};var l=n.baseDistance||0,o=n.baseOrthoSize||1,s=r.get("projection");s!=="perspective"&&s!=="orthographic"&&s!=="isometric"&&(console.error("Unkown projection type %s, use perspective projection instead.",s),s="perspective"),this._projection=s,this.viewGL.setProjection(s);var u=r.get("distance")+l,f=r.get("orthographicSize")+o;[["damping",.8],["autoRotate",!1],["autoRotateAfterStill",3],["autoRotateDirection","cw"],["autoRotateSpeed",10],["minDistance",30],["maxDistance",400],["minOrthographicSize",30],["maxOrthographicSize",300],["minAlpha",-90],["maxAlpha",90],["minBeta",-1/0],["maxBeta",1/0],["rotateSensitivity",1],["zoomSensitivity",1],["panSensitivity",1],["panMouseButton","left"],["rotateMouseButton","middle"]].forEach(function(A){this[A[0]]=h(r.get(A[0]),A[1])},this),this.minDistance+=l,this.maxDistance+=l,this.minOrthographicSize+=o,this.maxOrthographicSize+=o;var e=r.ecModel,t={};["animation","animationDurationUpdate","animationEasingUpdate"].forEach(function(A){t[A]=h(r.get(A),e&&e.get(A))});var i=h(n.alpha,r.get("alpha"))||0,c=h(n.beta,r.get("beta"))||0,p=h(n.center,r.get("center"))||[0,0,0];t.animation&&t.animationDurationUpdate>0&&this._notFirst?this.animateTo({alpha:i,beta:c,center:p,distance:u,targetOrthographicSize:f,easing:t.animationEasingUpdate,duration:t.animationDurationUpdate}):(this.setDistance(u),this.setAlpha(i),this.setBeta(c),this.setCenter(p),this.setOrthographicSize(f)),this._notFirst=!0,this._validateProperties()},_validateProperties:function(){a[this.panMouseButton]==null&&console.error("Unkown panMouseButton %s. It should be left|middle|right",this.panMouseButton),a[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(r){var n=this.zr,l=this,o={},s={};return r.distance!=null&&(o.distance=this.getDistance(),s.distance=r.distance),r.orthographicSize!=null&&(o.orthographicSize=this.getOrthographicSize(),s.orthographicSize=r.orthographicSize),r.alpha!=null&&(o.alpha=this.getAlpha(),s.alpha=r.alpha),r.beta!=null&&(o.beta=this.getBeta(),s.beta=r.beta),r.center!=null&&(o.center=this.getCenter(),s.center=r.center),this._addAnimator(n.animation.animate(o).when(r.duration||1e3,s).during(function(){o.alpha!=null&&l.setAlpha(o.alpha),o.beta!=null&&l.setBeta(o.beta),o.distance!=null&&l.setDistance(o.distance),o.center!=null&&l.setCenter(o.center),o.orthographicSize!=null&&l.setOrthographicSize(o.orthographicSize),l._needsUpdate=!0})).start(r.easing||"linear")},stopAllAnimation:function(){for(var r=0;r<this._animators.length;r++)this._animators[r].stop();this._animators.length=0},_isAnimating:function(){return this._animators.length>0},_update:function(r){if(this._rotating){var n=(this.autoRotateDirection==="cw"?1:-1)*this.autoRotateSpeed/180*Math.PI;this._phi-=n*r/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&&(r=Math.min(r,50),this._updateDistanceOrSize(r),this._updatePan(r),this._updateRotate(r),this._updateTransform(),this.getCamera().update(),this.zr&&this.zr.refresh(),this.trigger("update"),this._needsUpdate=!1)},_updateRotate:function(r){var n=this._rotateVelocity;this._phi=n.y*r/20+this._phi,this._theta=n.x*r/20+this._theta,this.setAlpha(this.getAlpha()),this.setBeta(this.getBeta()),this._vectorDamping(n,Math.pow(this.damping,r/16))},_updateDistanceOrSize:function(r){this._projection==="perspective"?this._setDistance(this._distance+this._zoomSpeed*r/20):this._setOrthoSize(this._orthoSize+this._zoomSpeed*r/20),this._zoomSpeed*=Math.pow(this.damping,r/16)},_setDistance:function(r){this._distance=Math.max(Math.min(r,this.maxDistance),this.minDistance)},_setOrthoSize:function(r){this._orthoSize=Math.max(Math.min(r,this.maxOrthographicSize),this.minOrthographicSize);var n=this.getCamera(),l=this._orthoSize,o=l/this.viewGL.viewport.height*this.viewGL.viewport.width;n.left=-o/2,n.right=o/2,n.top=l/2,n.bottom=-l/2},_updatePan:function(r){var n=this._panVelocity,l=this._distance,o=this.getCamera(),s=o.worldTransform.y,u=o.worldTransform.x;this._center.scaleAndAdd(u,-n.x*l/200).scaleAndAdd(s,-n.y*l/200),this._vectorDamping(n,0)},_updateTransform:function(){var r=this.getCamera(),n=new v.a,l=this._theta+Math.PI/2,o=this._phi+Math.PI/2,s=Math.sin(l);n.x=s*Math.cos(o),n.y=-Math.cos(l),n.z=s*Math.sin(o),r.position.copy(this._center).scaleAndAdd(n,this._distance),r.rotation.identity().rotateY(-this._phi).rotateX(-this._theta)},_startCountingStill:function(){clearTimeout(this._stillTimeout);var r=this.autoRotateAfterStill,n=this;!isNaN(r)&&r>0&&(this._stillTimeout=setTimeout(function(){n._rotating=!0},r*1e3))},_vectorDamping:function(r,n){var l=r.len();l=l*n,l<1e-4&&(l=0),r.normalize().scale(l)},_decomposeTransform:function(){if(this.getCamera()){this.getCamera().updateWorldTransform();var r=this.getCamera().worldTransform.z,n=Math.asin(r.y),l=Math.atan2(r.x,r.z);this._theta=n,this._phi=-l,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(r){if(!r.target&&!this._isAnimating()){var n=r.offsetX,l=r.offsetY;this.viewGL&&!this.viewGL.containPoint(n,l)||(this.zr.on("mousemove",this._mouseMoveHandler),this.zr.on("mouseup",this._mouseUpHandler),r.event.targetTouches?r.event.targetTouches.length===1&&(this._mode="rotate"):r.event.button===a[this.rotateMouseButton]?this._mode="rotate":r.event.button===a[this.panMouseButton]?this._mode="pan":this._mode="",this._rotateVelocity.set(0,0),this._rotating=!1,this.autoRotate&&this._startCountingStill(),this._mouseX=r.offsetX,this._mouseY=r.offsetY)}},_mouseMoveHandler:function(r){if(!(r.target&&r.target.__isGLToZRProxy)&&!this._isAnimating()){var n=d(this.panSensitivity),l=d(this.rotateSensitivity);this._mode==="rotate"?(this._rotateVelocity.y=(r.offsetX-this._mouseX)/this.zr.getHeight()*2*l[0],this._rotateVelocity.x=(r.offsetY-this._mouseY)/this.zr.getWidth()*2*l[1]):this._mode==="pan"&&(this._panVelocity.x=(r.offsetX-this._mouseX)/this.zr.getWidth()*n[0]*400,this._panVelocity.y=(-r.offsetY+this._mouseY)/this.zr.getHeight()*n[1]*400),this._mouseX=r.offsetX,this._mouseY=r.offsetY,r.event.preventDefault()}},_mouseWheelHandler:function(r){if(!this._isAnimating()){var n=r.event.wheelDelta||-r.event.detail;this._zoomHandler(r,n)}},_pinchHandler:function(r){this._isAnimating()||(this._zoomHandler(r,r.pinchScale>1?1:-1),this._mode="")},_zoomHandler:function(r,n){if(n!==0){var l=r.offsetX,o=r.offsetY;if(!(this.viewGL&&!this.viewGL.containPoint(l,o))){var s;this._projection==="perspective"?s=Math.max(Math.max(Math.min(this._distance-this.minDistance,this.maxDistance-this._distance))/20,.5):s=Math.max(Math.max(Math.min(this._orthoSize-this.minOrthographicSize,this.maxOrthographicSize-this._orthoSize))/20,.5),this._zoomSpeed=(n>0?-1:1)*s*this.zoomSensitivity,this._rotating=!1,this.autoRotate&&this._mode==="rotate"&&this._startCountingStill(),r.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(r){this._isRightMouseButtonUsed()&&r.preventDefault()},_addAnimator:function(r){var n=this._animators;return n.push(r),r.done(function(){var l=n.indexOf(r);l>=0&&n.splice(l,1)}),r}});Object.defineProperty(_.prototype,"autoRotate",{get:function(r){return this._autoRotate},set:function(r){this._autoRotate=r,this._rotating=r}}),M.a=_},function(H,M,g){"use strict";M.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(H,M,g){var D=g(12),y=g(75),v=g(78),m=v.parsePercent,E=g(149),h=D.each,a=["left","right","top","bottom","width","height"],d=[["width","left","right"],["height","top","bottom"]];function _(c,p,A,x,C){var S=0,P=0;x==null&&(x=1/0),C==null&&(C=1/0);var b=0;p.eachChild(function(L,R){var T=L.position,N=L.getBoundingRect(),I=p.childAt(R+1),F=I&&I.getBoundingRect(),U,K;if(c==="horizontal"){var G=N.width+(F?-F.x+N.x:0);U=S+G,U>x||L.newline?(S=0,U=G,P+=b+A,b=N.height):b=Math.max(b,N.height)}else{var V=N.height+(F?-F.y+N.y:0);K=P+V,K>C||L.newline?(S+=b+A,P=0,K=V,b=N.width):b=Math.max(b,N.width)}L.newline||(T[0]=S,T[1]=P,c==="horizontal"?S=U+A:P=K+A)})}var r=_,n=D.curry(_,"vertical"),l=D.curry(_,"horizontal");function o(c,p,A){var x=p.width,C=p.height,S=m(c.x,x),P=m(c.y,C),b=m(c.x2,x),L=m(c.y2,C);return(isNaN(S)||isNaN(parseFloat(c.x)))&&(S=0),(isNaN(b)||isNaN(parseFloat(c.x2)))&&(b=x),(isNaN(P)||isNaN(parseFloat(c.y)))&&(P=0),(isNaN(L)||isNaN(parseFloat(c.y2)))&&(L=C),A=E.normalizeCssArray(A||0),{width:Math.max(b-S-A[1]-A[3],0),height:Math.max(L-P-A[0]-A[2],0)}}function s(c,p,A){A=E.normalizeCssArray(A||0);var x=p.width,C=p.height,S=m(c.left,x),P=m(c.top,C),b=m(c.right,x),L=m(c.bottom,C),R=m(c.width,x),T=m(c.height,C),N=A[2]+A[0],I=A[1]+A[3],F=c.aspect;switch(isNaN(R)&&(R=x-b-I-S),isNaN(T)&&(T=C-L-N-P),F!=null&&(isNaN(R)&&isNaN(T)&&(F>x/C?R=x*.8:T=C*.8),isNaN(R)&&(R=F*T),isNaN(T)&&(T=R/F)),isNaN(S)&&(S=x-b-R-I),isNaN(P)&&(P=C-L-T-N),c.left||c.right){case"center":S=x/2-R/2-A[3];break;case"right":S=x-R-I;break}switch(c.top||c.bottom){case"middle":case"center":P=C/2-T/2-A[0];break;case"bottom":P=C-T-N;break}S=S||0,P=P||0,isNaN(R)&&(R=x-I-S-(b||0)),isNaN(T)&&(T=C-N-P-(L||0));var U=new y(S+A[3],P+A[0],R,T);return U.margin=A,U}function u(c,p,A,x,C){var S=!C||!C.hv||C.hv[0],P=!C||!C.hv||C.hv[1],b=C&&C.boundingMode||"all";if(!(!S&&!P)){var L;if(b==="raw")L=c.type==="group"?new y(0,0,+p.width||0,+p.height||0):c.getBoundingRect();else if(L=c.getBoundingRect(),c.needLocalTransform()){var R=c.getLocalTransform();L=L.clone(),L.applyTransform(R)}p=s(D.defaults({width:L.width,height:L.height},p),A,x);var T=c.position,N=S?p.x-L.x:0,I=P?p.y-L.y:0;c.attr("position",b==="raw"?[N,I]:[T[0]+N,T[1]+I])}}function f(c,p){return c[d[p][0]]!=null||c[d[p][1]]!=null&&c[d[p][2]]!=null}function e(c,p,A){!D.isObject(A)&&(A={});var x=A.ignoreSize;!D.isArray(x)&&(x=[x,x]);var C=P(d[0],0),S=P(d[1],1);R(d[0],c,C),R(d[1],c,S);function P(T,N){var I={},F=0,U={},K=0,G=2;if(h(T,function(ee){U[ee]=c[ee]}),h(T,function(ee){b(p,ee)&&(I[ee]=U[ee]=p[ee]),L(I,ee)&&F++,L(U,ee)&&K++}),x[N])return L(p,T[1])?U[T[2]]=null:L(p,T[2])&&(U[T[1]]=null),U;if(K===G||!F)return U;if(F>=G)return I;for(var V=0;V<T.length;V++){var X=T[V];if(!b(I,X)&&b(c,X)){I[X]=c[X];break}}return I}function b(T,N){return T.hasOwnProperty(N)}function L(T,N){return T[N]!=null&&T[N]!=="auto"}function R(T,N,I){h(T,function(F){N[F]=I[F]})}}function t(c){return i({},c)}function i(c,p){return p&&c&&h(a,function(A){p.hasOwnProperty(A)&&(c[A]=p[A])}),c}M.LOCATION_PARAMS=a,M.HV_NAMES=d,M.box=r,M.vbox=n,M.hbox=l,M.getAvailableSize=o,M.getLayoutRect=s,M.positionElement=u,M.sizeCalculable=f,M.mergeLayoutParam=e,M.getLayoutParams=t,M.copyLayoutParams=i},function(H,M,g){"use strict";var D=g(8),y=D.a.extend(function(){return{name:"",inputLinks:{},outputLinks:{},_prevOutputTextures:{},_outputTextures:{},_outputReferences:{},_rendering:!1,_rendered:!1,_compositor:null}},{updateParameter:function(v,m){var E=this.outputs[v],h=E.parameters,a=E._parametersCopy;if(a||(a=E._parametersCopy={}),h)for(var d in h)d!=="width"&&d!=="height"&&(a[d]=h[d]);var _,r;return h.width instanceof Function?_=h.width.call(this,m):_=h.width,h.height instanceof Function?r=h.height.call(this,m):r=h.height,(a.width!==_||a.height!==r)&&this._outputTextures[v]&&this._outputTextures[v].dispose(m.gl),a.width=_,a.height=r,a},setParameter:function(v,m){},getParameter:function(v){},setParameters:function(v){for(var m in v)this.setParameter(m,v[m])},render:function(){},getOutput:function(v,m){if(m==null)return m=v,this._outputTextures[m];var E=this.outputs[m];if(E)return this._rendered?E.outputLastFrame?this._prevOutputTextures[m]:this._outputTextures[m]:this._rendering?(this._prevOutputTextures[m]||(this._prevOutputTextures[m]=this._compositor.allocateTexture(E.parameters||{})),this._prevOutputTextures[m]):(this.render(v),this._outputTextures[m])},removeReference:function(v){if(this._outputReferences[v]--,this._outputReferences[v]===0){var m=this.outputs[v];m.keepLastFrame?(this._prevOutputTextures[v]&&this._compositor.releaseTexture(this._prevOutputTextures[v]),this._prevOutputTextures[v]=this._outputTextures[v]):this._compositor.releaseTexture(this._outputTextures[v])}},link:function(v,m,E){this.inputLinks[v]={node:m,pin:E},m.outputLinks[E]||(m.outputLinks[E]=[]),m.outputLinks[E].push({node:this,pin:v}),this.pass.material.enableTexture(v)},clear:function(){this.inputLinks={},this.outputLinks={}},updateReference:function(v){if(!this._rendering){this._rendering=!0;for(var m in this.inputLinks){var E=this.inputLinks[m];E.node.updateReference(E.pin)}this._rendering=!1}v&&this._outputReferences[v]++},beforeFrame:function(){this._rendered=!1;for(var v in this.outputLinks)this._outputReferences[v]=0},afterFrame:function(){for(var v in this.outputLinks)if(this._outputReferences[v]>0){var m=this.outputs[v];m.keepLastFrame?(this._prevOutputTextures[v]&&this._compositor.releaseTexture(this._prevOutputTextures[v]),this._prevOutputTextures[v]=this._outputTextures[v]):this._compositor.releaseTexture(this._outputTextures[v])}}});M.a=y},function(H,M,g){"use strict";function D(y,v){for(var m=0,E=1/v,h=y;h>0;)m=m+E*(h%v),h=Math.floor(h/v),E=E/v;return m}M.a=D},function(H,M,g){"use strict";var D=g(0),y=g.n(D);M.a=function(v,m,E){E=E||v.getSource();var h=m||y.a.getCoordinateSystemDimensions(v.get("coordinateSystem"))||["x","y","z"],a=y.a.helper.createDimensions(E,{dimensionsDefine:E.dimensionsDefine||v.get("dimensions"),encodeDefine:E.encodeDefine||v.get("encode"),coordDimensions:h.map(function(_){var r=v.getReferringComponents(_+"Axis3D")[0];return{type:r&&r.get("type")==="category"?"ordinal":"float",name:_,stackable:_==="z"}})});v.get("coordinateSystem")==="cartesian3D"&&a.forEach(function(_){if(h.indexOf(_.coordDim)>=0){var r=v.getReferringComponents(_.coordDim+"Axis3D")[0];r&&r.get("type")==="category"&&(_.ordinalMeta=r.getOrdinalMeta())}});var d=new y.a.List(a,v);return d.initData(E),d}},function(H,M){function g(D,y,v){return{seriesType:D,performRawSeries:!0,reset:function(m,E,h){var a=m.getData(),d=m.get("symbol")||y,_=m.get("symbolSize");if(a.setVisual({legendSymbol:v||d,symbol:d,symbolSize:_}),E.isSeriesFiltered(m))return;var r=typeof _=="function";function n(l,o){if(typeof _=="function"){var s=m.getRawValue(o),u=m.getDataParams(o);l.setItemVisual(o,"symbolSize",_(s,u))}if(l.hasItemOption){var f=l.getItemModel(o),e=f.getShallow("symbol",!0),t=f.getShallow("symbolSize",!0);e!=null&&l.setItemVisual(o,"symbol",e),t!=null&&l.setItemVisual(o,"symbolSize",t)}}return{dataEach:a.hasItemOption||r?n:null}}}}H.exports=g},function(H,M,g){"use strict";var D=g(8),y=g(92),v=g(11),m=g(18),E=g(15),h=g(9),a=g(17),d=g(23),_=g(96),r=g(7),n=g(98),l=g(63),o=g(1),s=g.n(o);r.a.import(n.a),r.a.import(l.a);var u=s.a.mat4,f=s.a.vec3,e=u.create,t={};function i(x){return x.material}function c(){}var p=D.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 x=this.canvas;try{var C={alpha:this.alpha,depth:this.depth,stencil:this.stencil,antialias:this.antialias,premultipliedAlpha:this.premultipliedAlpha,preserveDrawingBuffer:this.preserveDrawingBuffer};if(this.gl=x.getContext("webgl",C)||x.getContext("experimental-webgl",C),!this.gl)throw new Error;this._glinfo=new y.a(this.gl),this.gl.targetRenderer&&console.error("Already created a renderer"),this.gl.targetRenderer=this,this.resize()}catch(S){throw"Error creating WebGL Context "+S}this._programMgr=new _.a(this)},{resize:function(x,C){var S=this.canvas,P=this.devicePixelRatio;x!=null?(S.style.width=x+"px",S.style.height=C+"px",S.width=x*P,S.height=C*P,this._width=x,this._height=C):(this._width=S.width/P,this._height=S.height/P),this.setViewport(0,0,this._width,this._height)},getWidth:function(){return this._width},getHeight:function(){return this._height},getViewportAspect:function(){var x=this.viewport;return x.width/x.height},setDevicePixelRatio:function(x){this.devicePixelRatio=x,this.resize(this._width,this._height)},getDevicePixelRatio:function(){return this.devicePixelRatio},getGLExtension:function(x){return this._glinfo.getExtension(x)},getGLParameter:function(x){return this._glinfo.getParameter(x)},setViewport:function(x,C,S,P,b){if(typeof x=="object"){var L=x;x=L.x,C=L.y,S=L.width,P=L.height,b=L.devicePixelRatio}b=b||this.devicePixelRatio,this.gl.viewport(x*b,C*b,S*b,P*b),this.viewport={x,y:C,width:S,height:P,devicePixelRatio:b}},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 x=this._clearStack.pop();this.clearColor=x.clearColor,this.clearBit=x.clearBit}},bindSceneRendering:function(x){this._sceneRendering=x},render:function(x,C,S,P){var b=this.gl,L=this.clearColor;if(this.clearBit){b.colorMask(!0,!0,!0,!0),b.depthMask(!0);var R=this.viewport,T=!1,N=R.devicePixelRatio;(R.width!==this._width||R.height!==this._height||N&&N!==this.devicePixelRatio||R.x||R.y)&&(T=!0,b.enable(b.SCISSOR_TEST),b.scissor(R.x*N,R.y*N,R.width*N,R.height*N)),b.clearColor(L[0],L[1],L[2],L[3]),b.clear(this.clearBit),T&&b.disable(b.SCISSOR_TEST)}if(S||x.update(!1),C=C||x.getMainCamera(),!C){console.error("Can't find camera in the scene.");return}C.getScene()||C.update(!0),this._sceneRendering=x,x.viewBoundingBoxLastFrame.min.set(1/0,1/0,1/0),x.viewBoundingBoxLastFrame.max.set(-1/0,-1/0,-1/0);var I=this.cullRenderList(x.opaqueList,x,C),F=this.cullRenderList(x.transparentList,x,C),U=x.material;x.trigger("beforerender",this,x,C),P?(this.renderPreZ(I,x,C),b.depthFunc(b.LEQUAL)):b.depthFunc(b.LESS);for(var K=e(),G=f.create(),V=0;V<F.length;V++){var X=F[V];u.multiplyAffine(K,C.viewMatrix.array,X.worldTransform.array),f.transformMat4(G,X.position.array,K),X.__depth=G[2]}var ee=this.renderPass(I,C,{getMaterial:function(fe){return U||fe.material},sortCompare:this.opaqueSortCompare}),oe=this.renderPass(F,C,{getMaterial:function(fe){return U||fe.material},sortCompare:this.transparentSortCompare}),ue={};for(var Ae in ee)ue[Ae]=ee[Ae]+oe[Ae];return x.trigger("afterrender",this,x,C,ue),this._sceneRendering=null,ue},getProgram:function(x,C,S){return C=C||x.material,this._programMgr.getProgram(x,C,S)},validateProgram:function(x){if(x.__error){var C=x.__error;if(t[x.__uid__])return;if(t[x.__uid__]=!0,this.throwError)throw new Error(C);this.trigger("error",C)}},updatePrograms:function(x,C,S){var P=S&&S.getMaterial||i;C=C||null;for(var b=0;b<x.length;b++){var L=x[b],R=P.call(this,L);if(b>0){var T=x[b-1],N=T.joints?T.joints.length:0,I=L.joints.length?L.joints.length:0;if(I===N&&L.material===T.material&&L.lightGroup===T.lightGroup){L.__program=T.__program;continue}}var F=this._programMgr.getProgram(L,R,C);this.validateProgram(F),L.__program=F}},cullRenderList:function(x,C,S){for(var P=[],b=0;b<x.length;b++){var L=x[b],R=L.isSkinnedMesh()?A.IDENTITY:L.worldTransform.array,T=L.geometry;u.multiplyAffine(A.WORLDVIEW,S.viewMatrix.array,R),!(T.boundingBox&&this.isFrustumCulled(L,C,S,A.WORLDVIEW,S.projectionMatrix.array))&&P.push(L)}return P},renderPass:function(x,C,S){this.trigger("beforerenderpass",this,x,C,S);var P={triangleCount:0,vertexCount:0,drawCallCount:0,meshCount:x.length,renderedMeshCount:0};S=S||{},S.getMaterial=S.getMaterial||i,S.beforeRender=S.beforeRender||c,S.afterRender=S.afterRender||c,this.updatePrograms(x,this._sceneRendering,S),S.sortCompare&&x.sort(S.sortCompare);var b=this.viewport,L=b.devicePixelRatio,R=[b.x*L,b.y*L,b.width*L,b.height*L],T=this.devicePixelRatio,N=this.__currentFrameBuffer?[this.__currentFrameBuffer.getTextureWidth(),this.__currentFrameBuffer.getTextureHeight()]:[this._width*T,this._height*T],I=[R[2],R[3]],F=Date.now();u.copy(A.VIEW,C.viewMatrix.array),u.copy(A.PROJECTION,C.projectionMatrix.array),u.multiply(A.VIEWPROJECTION,C.projectionMatrix.array,A.VIEW),u.copy(A.VIEWINVERSE,C.worldTransform.array),u.invert(A.PROJECTIONINVERSE,A.PROJECTION),u.invert(A.VIEWPROJECTIONINVERSE,A.VIEWPROJECTION);for(var U=this.gl,K=this._sceneRendering,G,V,X,ee,oe,ue,Ae,fe,he=0;he<x.length;he++){var ve=x[he];if(!(S.ifRender&&!S.ifRender(ve))){var me=ve.isSkinnedMesh()?A.IDENTITY:ve.worldTransform.array,Te=S.getMaterial.call(this,ve),Ce=ve.__program,ye=Te.shader;u.copy(A.WORLD,me),u.multiply(A.WORLDVIEWPROJECTION,A.VIEWPROJECTION,me),(ye.matrixSemantics.WORLDINVERSE||ye.matrixSemantics.WORLDINVERSETRANSPOSE)&&u.invert(A.WORLDINVERSE,me),(ye.matrixSemantics.WORLDVIEWINVERSE||ye.matrixSemantics.WORLDVIEWINVERSETRANSPOSE)&&u.invert(A.WORLDVIEWINVERSE,A.WORLDVIEW),(ye.matrixSemantics.WORLDVIEWPROJECTIONINVERSE||ye.matrixSemantics.WORLDVIEWPROJECTIONINVERSETRANSPOSE)&&u.invert(A.WORLDVIEWPROJECTIONINVERSE,A.WORLDVIEWPROJECTION),ve.beforeRender(this),S.beforeRender.call(this,ve,Te,G);var q=Ce!==V;q?(Ce.bind(this),Ce.setUniformOfSemantic(U,"VIEWPORT",R),Ce.setUniformOfSemantic(U,"WINDOW_SIZE",N),Ce.setUniformOfSemantic(U,"NEAR",C.near),Ce.setUniformOfSemantic(U,"FAR",C.far),Ce.setUniformOfSemantic(U,"DEVICEPIXELRATIO",L),Ce.setUniformOfSemantic(U,"TIME",F),Ce.setUniformOfSemantic(U,"VIEWPORT_SIZE",I),K&&K.setLightUniforms(Ce,ve.lightGroup,this)):Ce=V,(G!==Te||q)&&(Te.depthTest!==X&&(Te.depthTest?U.enable(U.DEPTH_TEST):U.disable(U.DEPTH_TEST),X=Te.depthTest),Te.depthMask!==ee&&(U.depthMask(Te.depthMask),ee=Te.depthMask),Te.transparent!==fe&&(Te.transparent?U.enable(U.BLEND):U.disable(U.BLEND),fe=Te.transparent),Te.transparent&&(Te.blend?Te.blend(U):(U.blendEquationSeparate(U.FUNC_ADD,U.FUNC_ADD),U.blendFuncSeparate(U.SRC_ALPHA,U.ONE_MINUS_SRC_ALPHA,U.ONE,U.ONE_MINUS_SRC_ALPHA))),Te.bind(this,Ce,G,V),G=Te);for(var Q=ye.matrixSemanticKeys,$=0;$<Q.length;$++){var j=Q[$],re=ye.matrixSemantics[j],k=A[j];if(re.isTranspose){var te=A[re.semanticNoTranspose];u.transpose(k,te)}Ce.setUniform(U,re.type,re.symbol,k)}ve.cullFace!==ue&&(ue=ve.cullFace,U.cullFace(ue)),ve.frontFace!==Ae&&(Ae=ve.frontFace,U.frontFace(Ae)),ve.culling!==oe&&(oe=ve.culling,oe?U.enable(U.CULL_FACE):U.disable(U.CULL_FACE));var ie=ve.render(this,Te,Ce);ie&&(P.triangleCount+=ie.triangleCount,P.vertexCount+=ie.vertexCount,P.drawCallCount+=ie.drawCallCount,P.renderedMeshCount++),S.afterRender.call(this,ve,ie),ve.afterRender(this,ie),V=Ce}}for(var he=0;he<x.length;he++)x[he].__program=null;return this.trigger("afterrenderpass",this,x,C,S),P},renderPreZ:function(x,C,S){var P=this.gl,b=this._prezMaterial||new a.a({shader:new r.a(r.a.source("clay.prez.vertex"),r.a.source("clay.prez.fragment"))});this._prezMaterial=b,P.colorMask(!1,!1,!1,!1),P.depthMask(!0),this.renderPass(x,S,{ifRender:function(L){return!L.ignorePreZ},getMaterial:function(){return b},sort:this.opaqueSortCompare}),P.colorMask(!0,!0,!0,!0),P.depthMask(!0)},isFrustumCulled:function(){var x=new E.a,C=new h.a;return function(S,P,b,L,R){var T=S.boundingBox||S.geometry.boundingBox;if(C.array=L,x.copy(T),x.applyTransform(C),P&&S.isRenderable()&&S.castShadow&&P.viewBoundingBoxLastFrame.union(x),S.frustumCulling&&!S.isSkinnedMesh()){if(!x.intersectBoundingBox(b.frustum.boundingBox))return!0;C.array=R,x.max.array[2]>0&&x.min.array[2]<0&&(x.max.array[2]=-1e-20),x.applyProjection(C);var N=x.min.array,I=x.max.array;if(I[0]<-1||N[0]>1||I[1]<-1||N[1]>1||I[2]<-1||N[2]>1)return!0}return!1}}(),disposeScene:function(x){this.disposeNode(x,!0,!0),x.dispose()},disposeNode:function(x,C,S){x.getParent()&&x.getParent().remove(x),x.traverse(function(P){P.geometry&&C&&P.geometry.dispose(this),P.dispose&&P.dispose(this)},this)},disposeGeometry:function(x){x.dispose(this)},disposeTexture:function(x){x.dispose(this)},disposeFrameBuffer:function(x){x.dispose(this)},dispose:function(){},screenToNDC:function(x,C,S){S||(S=new d.a),C=this._height-C;var P=this.viewport,b=S.array;return b[0]=(x-P.x)/P.width,b[0]=b[0]*2-1,b[1]=(C-P.y)/P.height,b[1]=b[1]*2-1,S}});p.opaqueSortCompare=p.prototype.opaqueSortCompare=function(x,C){return x.renderOrder===C.renderOrder?x.__program===C.__program?x.material===C.material?x.geometry.__uid__-C.geometry.__uid__:x.material.__uid__-C.material.__uid__:x.__program&&C.__program?x.__program.__uid__-C.__program.__uid__:0:x.renderOrder-C.renderOrder},p.transparentSortCompare=p.prototype.transparentSortCompare=function(x,C){return x.renderOrder===C.renderOrder?x.__depth===C.__depth?x.__program===C.__program?x.material===C.material?x.geometry.__uid__-C.geometry.__uid__:x.material.__uid__-C.material.__uid__:x.__program&&C.__program?x.__program.__uid__-C.__program.__uid__:0:x.__depth-C.__depth:x.renderOrder-C.renderOrder};var A={IDENTITY:e(),WORLD:e(),VIEW:e(),PROJECTION:e(),WORLDVIEW:e(),VIEWPROJECTION:e(),WORLDVIEWPROJECTION:e(),WORLDINVERSE:e(),VIEWINVERSE:e(),PROJECTIONINVERSE:e(),WORLDVIEWINVERSE:e(),VIEWPROJECTIONINVERSE:e(),WORLDVIEWPROJECTIONINVERSE:e(),WORLDTRANSPOSE:e(),VIEWTRANSPOSE:e(),PROJECTIONTRANSPOSE:e(),WORLDVIEWTRANSPOSE:e(),VIEWPROJECTIONTRANSPOSE:e(),WORLDVIEWPROJECTIONTRANSPOSE:e(),WORLDINVERSETRANSPOSE:e(),VIEWINVERSETRANSPOSE:e(),PROJECTIONINVERSETRANSPOSE:e(),WORLDVIEWINVERSETRANSPOSE:e(),VIEWPROJECTIONINVERSETRANSPOSE:e(),WORLDVIEWPROJECTIONINVERSETRANSPOSE:e()};p.COLOR_BUFFER_BIT=v.a.COLOR_BUFFER_BIT,p.DEPTH_BUFFER_BIT=v.a.DEPTH_BUFFER_BIT,p.STENCIL_BUFFER_BIT=v.a.STENCIL_BUFFER_BIT,M.a=p},function(H,M,g){"use strict";function D(v,m){this.action=v,this.context=m}var y={trigger:function(v){if(this.hasOwnProperty("__handlers__")&&this.__handlers__.hasOwnProperty(v)){var m=this.__handlers__[v],E=m.length,h=-1,a=arguments;switch(a.length){case 1:for(;++h<E;)m[h].action.call(m[h].context);return;case 2:for(;++h<E;)m[h].action.call(m[h].context,a[1]);return;case 3:for(;++h<E;)m[h].action.call(m[h].context,a[1],a[2]);return;case 4:for(;++h<E;)m[h].action.call(m[h].context,a[1],a[2],a[3]);return;case 5:for(;++h<E;)m[h].action.call(m[h].context,a[1],a[2],a[3],a[4]);return;default:for(;++h<E;)m[h].action.apply(m[h].context,Array.prototype.slice.call(a,1));return}}},on:function(v,m,E){if(!(!v||!m)){var h=this.__handlers__||(this.__handlers__={});if(!h[v])h[v]=[];else if(this.has(v,m))return;var a=new D(m,E||this);return h[v].push(a),this}},once:function(v,m,E){if(!v||!m)return;var h=this;function a(){h.off(v,a),m.apply(this,arguments)}return this.on(v,a,E)},before:function(v,m,E){if(!(!v||!m))return v="before"+v,this.on(v,m,E)},after:function(v,m,E){if(!(!v||!m))return v="after"+v,this.on(v,m,E)},success:function(v,m){return this.once("success",v,m)},error:function(v,m){return this.once("error",v,m)},off:function(v,m){var E=this.__handlers__||(this.__handlers__={});if(!m){E[v]=[];return}if(E[v]){for(var h=E[v],a=[],d=0;d<h.length;d++)m&&h[d].action!==m&&a.push(h[d]);E[v]=a}return this},has:function(v,m){var E=this.__handlers__;if(!E||!E[v])return!1;for(var h=E[v],a=0;a<h.length;a++)if(h[a].action===m)return!0}};M.a=y},function(H,M,g){"use strict";var D="__dt__",y=function(){this._contextId=0,this._caches=[],this._context={}};y.prototype={use:function(v,m){var E=this._caches;E[v]||(E[v]={},m&&(E[v]=m())),this._contextId=v,this._context=E[v]},put:function(v,m){this._context[v]=m},get:function(v){return this._context[v]},dirty:function(v){v=v||"";var m=D+v;this.put(m,!0)},dirtyAll:function(v){v=v||"";for(var m=D+v,E=this._caches,h=0;h<E.length;h++)E[h]&&(E[h][m]=!0)},fresh:function(v){v=v||"";var m=D+v;this.put(m,!1)},freshAll:function(v){v=v||"";for(var m=D+v,E=this._caches,h=0;h<E.length;h++)E[h]&&(E[h][m]=!1)},isDirty:function(v){v=v||"";var m=D+v,E=this._context;return!E.hasOwnProperty(m)||E[m]===!0},deleteContext:function(v){delete this._caches[v],this._context={}},delete:function(v){delete this._context[v]},clearAll:function(){this._caches={}},getContext:function(){return this._context},eachContext:function(v,m){var E=Object.keys(this._caches);E.forEach(function(h){v&&v.call(m,h)})},miss:function(v){return!this._context.hasOwnProperty(v)}},y.prototype.constructor=y,M.a=y},function(H,M,g){"use strict";var D=g(4),y=g(1),v=g.n(y),m=v.a.vec3,E=1e-5,h=function(a,d){this.origin=a||new D.a,this.direction=d||new D.a};h.prototype={constructor:h,intersectPlane:function(a,d){var _=a.normal.array,r=a.distance,n=this.origin.array,l=this.direction.array,o=m.dot(_,l);if(o===0)return null;d||(d=new D.a);var s=(m.dot(_,n)-r)/o;return m.scaleAndAdd(d.array,n,l,-s),d._dirty=!0,d},mirrorAgainstPlane:function(a){var d=m.dot(a.normal.array,this.direction.array);m.scaleAndAdd(this.direction.array,this.direction.array,a.normal.array,-d*2),this.direction._dirty=!0},distanceToPoint:function(){var a=m.create();return function(d){m.sub(a,d,this.origin.array);var _=m.dot(a,this.direction.array);if(_<0)return m.distance(this.origin.array,d);var r=m.lenSquared(a);return Math.sqrt(r-_*_)}}(),intersectSphere:function(){var a=m.create();return function(d,_,r){var n=this.origin.array,l=this.direction.array;d=d.array,m.sub(a,d,n);var o=m.dot(a,l),s=m.squaredLength(a),u=s-o*o,f=_*_;if(!(u>f)){var e=Math.sqrt(f-u),t=o-e,i=o+e;return r||(r=new D.a),t<0?i<0?null:(m.scaleAndAdd(r.array,n,l,i),r):(m.scaleAndAdd(r.array,n,l,t),r)}}}(),intersectBoundingBox:function(a,d){var _=this.direction.array,r=this.origin.array,n=a.min.array,l=a.max.array,o=1/_[0],s=1/_[1],u=1/_[2],f,e,t,i,c,p;if(o>=0?(f=(n[0]-r[0])*o,e=(l[0]-r[0])*o):(e=(n[0]-r[0])*o,f=(l[0]-r[0])*o),s>=0?(t=(n[1]-r[1])*s,i=(l[1]-r[1])*s):(i=(n[1]-r[1])*s,t=(l[1]-r[1])*s),f>i||t>e||((t>f||f!==f)&&(f=t),(i<e||e!==e)&&(e=i),u>=0?(c=(n[2]-r[2])*u,p=(l[2]-r[2])*u):(p=(n[2]-r[2])*u,c=(l[2]-r[2])*u),f>p||c>e)||((c>f||f!==f)&&(f=c),(p<e||e!==e)&&(e=p),e<0))return null;var A=f>=0?f:e;return d||(d=new D.a),m.scaleAndAdd(d.array,r,_,A),d},intersectTriangle:function(){var a=m.create(),d=m.create(),_=m.create(),r=m.create();return function(n,l,o,s,u,f){var e=this.direction.array,t=this.origin.array;n=n.array,l=l.array,o=o.array,m.sub(a,l,n),m.sub(d,o,n),m.cross(r,d,e);var i=m.dot(a,r);if(s){if(i>-E)return null}else if(i>-E&&i<E)return null;m.sub(_,t,n);var c=m.dot(r,_)/i;if(c<0||c>1)return null;m.cross(r,a,_);var p=m.dot(e,r)/i;if(p<0||p>1||c+p>1)return null;m.cross(r,a,d);var A=-m.dot(_,r)/i;return A<0?null:(u||(u=new D.a),f&&D.a.set(f,1-c-p,c,p),m.scaleAndAdd(u.array,t,e,A),u)}}(),applyTransform:function(a){D.a.add(this.direction,this.direction,this.origin),D.a.transformMat4(this.origin,this.origin,a),D.a.transformMat4(this.direction,this.direction,a),D.a.sub(this.direction,this.direction,this.origin),D.a.normalize(this.direction,this.direction)},copy:function(a){D.a.copy(this.origin,a.origin),D.a.copy(this.direction,a.direction)},clone:function(){var a=new h;return a.copy(this),a}},M.a=h},function(H,M,g){"use strict";var D=g(1),y=g.n(D),v=y.a.quat,m=function(a,d,_,r){a=a||0,d=d||0,_=_||0,r=r===void 0?1:r,this.array=v.fromValues(a,d,_,r),this._dirty=!0};m.prototype={constructor:m,add:function(a){return v.add(this.array,this.array,a.array),this._dirty=!0,this},calculateW:function(){return v.calculateW(this.array,this.array),this._dirty=!0,this},set:function(a,d,_,r){return this.array[0]=a,this.array[1]=d,this.array[2]=_,this.array[3]=r,this._dirty=!0,this},setArray:function(a){return this.array[0]=a[0],this.array[1]=a[1],this.array[2]=a[2],this.array[3]=a[3],this._dirty=!0,this},clone:function(){return new m(this.x,this.y,this.z,this.w)},conjugate:function(){return v.conjugate(this.array,this.array),this._dirty=!0,this},copy:function(a){return v.copy(this.array,a.array),this._dirty=!0,this},dot:function(a){return v.dot(this.array,a.array)},fromMat3:function(a){return v.fromMat3(this.array,a.array),this._dirty=!0,this},fromMat4:function(){var a=y.a.mat3,d=a.create();return function(_){return a.fromMat4(d,_.array),a.transpose(d,d),v.fromMat3(this.array,d),this._dirty=!0,this}}(),identity:function(){return v.identity(this.array),this._dirty=!0,this},invert:function(){return v.invert(this.array,this.array),this._dirty=!0,this},len:function(){return v.len(this.array)},length:function(){return v.length(this.array)},lerp:function(a,d,_){return v.lerp(this.array,a.array,d.array,_),this._dirty=!0,this},mul:function(a){return v.mul(this.array,this.array,a.array),this._dirty=!0,this},mulLeft:function(a){return v.multiply(this.array,a.array,this.array),this._dirty=!0,this},multiply:function(a){return v.multiply(this.array,this.array,a.array),this._dirty=!0,this},multiplyLeft:function(a){return v.multiply(this.array,a.array,this.array),this._dirty=!0,this},normalize:function(){return v.normalize(this.array,this.array),this._dirty=!0,this},rotateX:function(a){return v.rotateX(this.array,this.array,a),this._dirty=!0,this},rotateY:function(a){return v.rotateY(this.array,this.array,a),this._dirty=!0,this},rotateZ:function(a){return v.rotateZ(this.array,this.array,a),this._dirty=!0,this},rotationTo:function(a,d){return v.rotationTo(this.array,a.array,d.array),this._dirty=!0,this},setAxes:function(a,d,_){return v.setAxes(this.array,a.array,d.array,_.array),this._dirty=!0,this},setAxisAngle:function(a,d){return v.setAxisAngle(this.array,a.array,d),this._dirty=!0,this},slerp:function(a,d,_){return v.slerp(this.array,a.array,d.array,_),this._dirty=!0,this},sqrLen:function(){return v.sqrLen(this.array)},squaredLength:function(){return v.squaredLength(this.array)},fromEuler:function(a,d){return m.fromEuler(this,a,d)},toString:function(){return"["+Array.prototype.join.call(this.array,",")+"]"},toArray:function(){return Array.prototype.slice.call(this.array)}};var E=Object.defineProperty;if(E){var h=m.prototype;E(h,"x",{get:function(){return this.array[0]},set:function(a){this.array[0]=a,this._dirty=!0}}),E(h,"y",{get:function(){return this.array[1]},set:function(a){this.array[1]=a,this._dirty=!0}}),E(h,"z",{get:function(){return this.array[2]},set:function(a){this.array[2]=a,this._dirty=!0}}),E(h,"w",{get:function(){return this.array[3]},set:function(a){this.array[3]=a,this._dirty=!0}})}m.add=function(a,d,_){return v.add(a.array,d.array,_.array),a._dirty=!0,a},m.set=function(a,d,_,r,n){v.set(a.array,d,_,r,n),a._dirty=!0},m.copy=function(a,d){return v.copy(a.array,d.array),a._dirty=!0,a},m.calculateW=function(a,d){return v.calculateW(a.array,d.array),a._dirty=!0,a},m.conjugate=function(a,d){return v.conjugate(a.array,d.array),a._dirty=!0,a},m.identity=function(a){return v.identity(a.array),a._dirty=!0,a},m.invert=function(a,d){return v.invert(a.array,d.array),a._dirty=!0,a},m.dot=function(a,d){return v.dot(a.array,d.array)},m.len=function(a){return v.length(a.array)},m.lerp=function(a,d,_,r){return v.lerp(a.array,d.array,_.array,r),a._dirty=!0,a},m.slerp=function(a,d,_,r){return v.slerp(a.array,d.array,_.array,r),a._dirty=!0,a},m.mul=function(a,d,_){return v.multiply(a.array,d.array,_.array),a._dirty=!0,a},m.multiply=m.mul,m.rotateX=function(a,d,_){return v.rotateX(a.array,d.array,_),a._dirty=!0,a},m.rotateY=function(a,d,_){return v.rotateY(a.array,d.array,_),a._dirty=!0,a},m.rotateZ=function(a,d,_){return v.rotateZ(a.array,d.array,_),a._dirty=!0,a},m.setAxisAngle=function(a,d,_){return v.setAxisAngle(a.array,d.array,_),a._dirty=!0,a},m.normalize=function(a,d){return v.normalize(a.array,d.array),a._dirty=!0,a},m.sqrLen=function(a){return v.sqrLen(a.array)},m.squaredLength=m.sqrLen,m.fromMat3=function(a,d){return v.fromMat3(a.array,d.array),a._dirty=!0,a},m.setAxes=function(a,d,_,r){return v.setAxes(a.array,d.array,_.array,r.array),a._dirty=!0,a},m.rotationTo=function(a,d,_){return v.rotationTo(a.array,d.array,_.array),a._dirty=!0,a},m.fromEuler=function(a,d,e){a._dirty=!0,d=d.array;var r=a.array,n=Math.cos(d[0]/2),l=Math.cos(d[1]/2),o=Math.cos(d[2]/2),s=Math.sin(d[0]/2),u=Math.sin(d[1]/2),f=Math.sin(d[2]/2),e=(e||"XYZ").toUpperCase();switch(e){case"XYZ":r[0]=s*l*o+n*u*f,r[1]=n*u*o-s*l*f,r[2]=n*l*f+s*u*o,r[3]=n*l*o-s*u*f;break;case"YXZ":r[0]=s*l*o+n*u*f,r[1]=n*u*o-s*l*f,r[2]=n*l*f-s*u*o,r[3]=n*l*o+s*u*f;break;case"ZXY":r[0]=s*l*o-n*u*f,r[1]=n*u*o+s*l*f,r[2]=n*l*f+s*u*o,r[3]=n*l*o-s*u*f;break;case"ZYX":r[0]=s*l*o-n*u*f,r[1]=n*u*o+s*l*f,r[2]=n*l*f-s*u*o,r[3]=n*l*o+s*u*f;break;case"YZX":r[0]=s*l*o+n*u*f,r[1]=n*u*o+s*l*f,r[2]=n*l*f-s*u*o,r[3]=n*l*o-s*u*f;break;case"XZY":r[0]=s*l*o-n*u*f,r[1]=n*u*o-s*l*f,r[2]=n*l*f+s*u*o,r[3]=n*l*o+s*u*f;break}},M.a=m},function(H,M,g){"use strict";var D=g(28),y=g(9),v=g(52),m=g(49),E=g(1),h=g.n(E),a=h.a.vec3,d=h.a.vec4,_=D.a.extend(function(){return{projectionMatrix:new y.a,invProjectionMatrix:new y.a,viewMatrix:new y.a,frustum:new v.a}},function(){this.update(!0)},{update:function(r){D.a.prototype.update.call(this,r),y.a.invert(this.viewMatrix,this.worldTransform),this.updateProjectionMatrix(),y.a.invert(this.invProjectionMatrix,this.projectionMatrix),this.frustum.setFromProjection(this.projectionMatrix)},setViewMatrix:function(r){y.a.copy(this.viewMatrix,r),y.a.invert(this.worldTransform,r),this.decomposeWorldTransform()},decomposeProjectionMatrix:function(){},setProjectionMatrix:function(r){y.a.copy(this.projectionMatrix,r),y.a.invert(this.invProjectionMatrix,r),this.decomposeProjectionMatrix()},updateProjectionMatrix:function(){},castRay:function(){var r=d.create();return function(n,l){var o=l!==void 0?l:new m.a,s=n.array[0],u=n.array[1];return d.set(r,s,u,-1,1),d.transformMat4(r,r,this.invProjectionMatrix.array),d.transformMat4(r,r,this.worldTransform.array),a.scale(o.origin.array,r,1/r[3]),d.set(r,s,u,1,1),d.transformMat4(r,r,this.invProjectionMatrix.array),d.transformMat4(r,r,this.worldTransform.array),a.scale(r,r,1/r[3]),a.sub(o.direction.array,r,o.origin.array),a.normalize(o.direction.array,o.direction.array),o.direction._dirty=!0,o.origin._dirty=!0,o}}()});M.a=_},function(H,M,g){"use strict";var D=g(4),y=g(15),v=g(67),m=g(1),E=g.n(m),h=E.a.vec3,a=h.set,d=h.copy,_=h.transformMat4,r=Math.min,n=Math.max,l=function(){this.planes=[];for(var o=0;o<6;o++)this.planes.push(new v.a);this.boundingBox=new y.a,this.vertices=[];for(var o=0;o<8;o++)this.vertices[o]=h.fromValues(0,0,0)};l.prototype={setFromProjection:function(o){var s=this.planes,u=o.array,f=u[0],e=u[1],t=u[2],i=u[3],c=u[4],p=u[5],A=u[6],x=u[7],C=u[8],S=u[9],P=u[10],b=u[11],L=u[12],R=u[13],T=u[14],N=u[15];a(s[0].normal.array,i-f,x-c,b-C),s[0].distance=-(N-L),s[0].normalize(),a(s[1].normal.array,i+f,x+c,b+C),s[1].distance=-(N+L),s[1].normalize(),a(s[2].normal.array,i+e,x+p,b+S),s[2].distance=-(N+R),s[2].normalize(),a(s[3].normal.array,i-e,x-p,b-S),s[3].distance=-(N-R),s[3].normalize(),a(s[4].normal.array,i-t,x-A,b-P),s[4].distance=-(N-T),s[4].normalize(),a(s[5].normal.array,i+t,x+A,b+P),s[5].distance=-(N+T),s[5].normalize();var I=this.boundingBox;if(N===0){var F=p/f,U=-T/(P-1),K=-T/(P+1),G=-K/p,V=-U/p;I.min.set(-G*F,-G,K),I.max.set(G*F,G,U);var X=this.vertices;a(X[0],-G*F,-G,K),a(X[1],-G*F,G,K),a(X[2],G*F,-G,K),a(X[3],G*F,G,K),a(X[4],-V*F,-V,U),a(X[5],-V*F,V,U),a(X[6],V*F,-V,U),a(X[7],V*F,V,U)}else{var ee=(-1-L)/f,oe=(1-L)/f,ue=(1-R)/p,Ae=(-1-R)/p,fe=(-1-T)/P,he=(1-T)/P;I.min.set(Math.min(ee,oe),Math.min(Ae,ue),Math.min(he,fe)),I.max.set(Math.max(oe,ee),Math.max(ue,Ae),Math.max(fe,he));var ve=I.min.array,me=I.max.array,X=this.vertices;a(X[0],ve[0],ve[1],ve[2]),a(X[1],ve[0],me[1],ve[2]),a(X[2],me[0],ve[1],ve[2]),a(X[3],me[0],me[1],ve[2]),a(X[4],ve[0],ve[1],me[2]),a(X[5],ve[0],me[1],me[2]),a(X[6],me[0],ve[1],me[2]),a(X[7],me[0],me[1],me[2])}},getTransformedBoundingBox:function(){var o=h.create();return function(s,u){var f=this.vertices,e=u.array,t=s.min,i=s.max,c=t.array,p=i.array,A=f[0];_(o,A,e),d(c,o),d(p,o);for(var x=1;x<8;x++)A=f[x],_(o,A,e),c[0]=r(o[0],c[0]),c[1]=r(o[1],c[1]),c[2]=r(o[2],c[2]),p[0]=n(o[0],p[0]),p[1]=n(o[1],p[1]),p[2]=n(o[2],p[2]);return t._dirty=!0,i._dirty=!0,s}}()},M.a=l},function(H,M){var g=function(){this.head=null,this.tail=null,this._len=0},D=g.prototype;D.insert=function(h){var a=new y(h);return this.insertEntry(a),a},D.insertEntry=function(h){this.head?(this.tail.next=h,h.prev=this.tail,h.next=null,this.tail=h):this.head=this.tail=h,this._len++},D.remove=function(h){var a=h.prev,d=h.next;a?a.next=d:this.head=d,d?d.prev=a:this.tail=a,h.next=h.prev=null,this._len--},D.len=function(){return this._len},D.clear=function(){this.head=this.tail=null,this._len=0};var y=function(h){this.value=h,this.next,this.prev},v=function(h){this._list=new g,this._map={},this._maxSize=h||10,this._lastRemovedEntry=null},m=v.prototype;m.put=function(h,a){var d=this._list,_=this._map,r=null;if(_[h]==null){var n=d.len(),l=this._lastRemovedEntry;if(n>=this._maxSize&&n>0){var o=d.head;d.remove(o),delete _[o.key],r=o.value,this._lastRemovedEntry=o}l?l.value=a:l=new y(a),l.key=h,d.insertEntry(l),_[h]=l}return r},m.get=function(h){var a=this._map[h],d=this._list;if(a!=null)return a!==d.tail&&(d.remove(a),d.insertEntry(a)),a.value},m.clear=function(){this._list.clear(),this._map={}};var E=v;H.exports=E},function(H,M,g){"use strict";var D=g(5),y=g(25),v=g(102),m=g(55),E=g(56),h=g(29),a=g(104),d=g(105),_={loadTexture:function(r,n,l,o){var s;if(typeof n=="function"?(l=n,o=l,n={}):n=n||{},typeof r=="string"){if(r.match(/.hdr$/)||n.fileType==="hdr")return s=new D.a({width:0,height:0,sRGB:!1}),_._fetchTexture(r,function(u){d.a.parseRGBE(u,s,n.exposure),s.dirty(),l&&l(s)},o),s;r.match(/.dds$/)||n.fileType==="dds"?(s=new D.a({width:0,height:0}),_._fetchTexture(r,function(u){a.a.parse(u,s),s.dirty(),l&&l(s)},o)):(s=new D.a,s.load(r),s.success(l),s.error(o))}else if(typeof r=="object"&&typeof r.px!="undefined"){var s=new y.a;s.load(r),s.success(l),s.error(o)}return s},loadPanorama:function(r,n,l,o,s,u){var f=this;typeof o=="function"?(s=o,u=s,o={}):o=o||{},_.loadTexture(n,o,function(e){e.flipY=o.flipY||!1,f.panoramaToCubeMap(r,e,l,o),e.dispose(r),s&&s(l)},u)},panoramaToCubeMap:function(r,n,l,o){var s=new m.a,u=new E.a({scene:new h.a});return u.material.set("diffuseMap",n),o=o||{},o.encodeRGBM&&u.material.define("fragment","RGBM_ENCODE"),l.sRGB=n.sRGB,s.texture=l,s.render(r,u.scene),s.texture=null,s.dispose(r),l},heightToNormal:function(r,n){var l=document.createElement("canvas"),o=l.width=r.width,s=l.height=r.height,u=l.getContext("2d");u.drawImage(r,0,0,o,s),n=n||!1;for(var f=u.getImageData(0,0,o,s),e=u.createImageData(o,s),t=0;t<f.data.length;t+=4){if(n){var i=f.data[t],c=f.data[t+1],p=f.data[t+2],A=Math.abs(i-c)+Math.abs(c-p);if(A>20)return console.warn("Given image is not a height map"),r}var x,C,S,P;t%(o*4)===0?(x=f.data[t],S=f.data[t+4]):t%(o*4)===(o-1)*4?(x=f.data[t-4],S=f.data[t]):(x=f.data[t-4],S=f.data[t+4]),t<o*4?(C=f.data[t],P=f.data[t+o*4]):t>o*(s-1)*4?(C=f.data[t-o*4],P=f.data[t]):(C=f.data[t-o*4],P=f.data[t+o*4]),e.data[t]=x-S+127,e.data[t+1]=C-P+127,e.data[t+2]=255,e.data[t+3]=255}return u.putImageData(e,0,0),l},isHeightImage:function(r,n,l){if(!r||!r.width||!r.height)return!1;var o=document.createElement("canvas"),s=o.getContext("2d"),u=n||32;l=l||20,o.width=o.height=u,s.drawImage(r,0,0,u,u);for(var f=s.getImageData(0,0,u,u),e=0;e<f.data.length;e+=4){var t=f.data[e],i=f.data[e+1],c=f.data[e+2],p=Math.abs(t-i)+Math.abs(i-c);if(p>l)return!1}return!0},_fetchTexture:function(r,n,l){v.a.get({url:r,responseType:"arraybuffer",onload:n,onerror:l})},createChessboard:function(r,n,l,o){r=r||512,n=n||64,l=l||"black",o=o||"white";var s=Math.ceil(r/n),u=document.createElement("canvas");u.width=r,u.height=r;var f=u.getContext("2d");f.fillStyle=o,f.fillRect(0,0,r,r),f.fillStyle=l;for(var e=0;e<s;e++)for(var t=0;t<s;t++){var i=t%2?e%2:e%2-1;i&&f.fillRect(e*n,t*n,n,n)}var c=new D.a({image:u,anisotropic:8});return c},createBlank:function(r){var n=document.createElement("canvas");n.width=1,n.height=1;var l=n.getContext("2d");l.fillStyle=r,l.fillRect(0,0,1,1);var o=new D.a({image:n});return o}};M.a=_},function(H,M,g){"use strict";var D=g(8),y=g(4),v=g(36),m=g(10),E=["px","nx","py","ny","pz","nz"],h=D.a.extend(function(){var a={position:new y.a,far:1e3,near:.1,texture:null,shadowMapPass:null},d=a._cameras={px:new v.a({fov:90}),nx:new v.a({fov:90}),py:new v.a({fov:90}),ny:new v.a({fov:90}),pz:new v.a({fov:90}),nz:new v.a({fov:90})};return d.px.lookAt(y.a.POSITIVE_X,y.a.NEGATIVE_Y),d.nx.lookAt(y.a.NEGATIVE_X,y.a.NEGATIVE_Y),d.py.lookAt(y.a.POSITIVE_Y,y.a.POSITIVE_Z),d.ny.lookAt(y.a.NEGATIVE_Y,y.a.NEGATIVE_Z),d.pz.lookAt(y.a.POSITIVE_Z,y.a.NEGATIVE_Y),d.nz.lookAt(y.a.NEGATIVE_Z,y.a.NEGATIVE_Y),a._frameBuffer=new m.a,a},{getCamera:function(a){return this._cameras[a]},render:function(a,d,_){var r=a.gl;_||d.update();for(var n=this.texture.width,l=2*Math.atan(n/(n-.5))/Math.PI*180,o=0;o<6;o++){var s=E[o],u=this._cameras[s];if(y.a.copy(u.position,this.position),u.far=this.far,u.near=this.near,u.fov=l,this.shadowMapPass){u.update();var f=d.getBoundingBox();f.applyTransform(u.viewMatrix),d.viewBoundingBoxLastFrame.copy(f),this.shadowMapPass.render(a,d,u,!0)}this._frameBuffer.attach(this.texture,r.COLOR_ATTACHMENT0,r.TEXTURE_CUBE_MAP_POSITIVE_X+o),this._frameBuffer.bind(a),a.render(d,u,!0),this._frameBuffer.unbind(a)}},dispose:function(a){this._frameBuffer.dispose(a)}});M.a=h},function(H,M,g){"use strict";var D=g(24),y=g(68),v=g(7),m=g(17),E=g(103);v.a.import(E.a);var h=D.a.extend(function(){var a=new v.a(v.a.source("clay.basic.vertex"),v.a.source("clay.basic.fragment")),d=new m.a({shader:a,depthMask:!1});return d.enableTexture("diffuseMap"),{scene:null,geometry:new y.a({widthSegments:30,heightSegments:30}),material:d,environmentMap:null,culling:!1}},function(){var a=this.scene;a&&this.attachScene(a),this.environmentMap&&this.setEnvironmentMap(this.environmentMap)},{attachScene:function(a){this.scene&&this.detachScene(),a.skydome=this,this.scene=a,a.on("beforerender",this._beforeRenderScene,this)},detachScene:function(){this.scene&&(this.scene.off("beforerender",this._beforeRenderScene),this.scene.skydome=null),this.scene=null},_beforeRenderScene:function(a,d,_){this.position.copy(_.getWorldPosition()),this.update(),a.renderPass([this],_)},setEnvironmentMap:function(a){this.material.set("diffuseMap",a)},getEnvironmentMap:function(){return this.material.get("diffuseMap")},dispose:function(a){this.detachScene(),this.geometry.dispose(a)}});M.a=h},function(H,M,g){"use strict";var D=g(24),y=g(69),v=g(7),m=g(17),E=g(110);v.a.import(E.a);var h=D.a.extend(function(){var a=new v.a({vertex:v.a.source("clay.skybox.vertex"),fragment:v.a.source("clay.skybox.fragment")}),d=new m.a({shader:a,depthMask:!1});return{scene:null,geometry:new y.a,material:d,environmentMap:null,culling:!1}},function(){var a=this.scene;a&&this.attachScene(a),this.environmentMap&&this.setEnvironmentMap(this.environmentMap)},{attachScene:function(a){this.scene&&this.detachScene(),a.skybox=this,this.scene=a,a.on("beforerender",this._beforeRenderScene,this)},detachScene:function(){this.scene&&(this.scene.off("beforerender",this._beforeRenderScene),this.scene.skybox=null),this.scene=null},dispose:function(a){this.detachScene(),this.geometry.dispose(a)},setEnvironmentMap:function(a){this.material.set("environmentMap",a)},getEnvironmentMap:function(){return this.material.get("environmentMap")},_beforeRenderScene:function(a,d,_){this.renderSkybox(a,_)},renderSkybox:function(a,d){this.position.copy(d.getWorldPosition()),this.update(),a.gl.disable(a.gl.BLEND),this.material.get("lod")>0?this.material.define("fragment","LOD"):this.material.undefine("fragment","LOD"),a.renderPass([this],d)}});M.a=h},function(H,M,g){"use strict";var D=g(2),y=g(143),v=g(144);D.a.Shader.import(v.a),M.a=D.a.Mesh.extend(function(){var m=new y.a({dynamic:!0}),E=new D.a.Material({shader:D.a.createShader("ecgl.labels"),transparent:!0,depthMask:!1});return{geometry:m,material:E,culling:!1,castShadow:!1,ignorePicking:!0}})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(2),m=g(186),E=g(22),h=g(3),a=g(1),d=g.n(a),_=g(60),r=g(61),n=g(40),l=d.a.vec3;v.a.Shader.import(n.a);function o(s){this.rootNode=new v.a.Node,this._triangulationResults={},this._shadersMap=v.a.COMMON_SHADERS.reduce(function(f,e){return f[e]=v.a.createShader("ecgl."+e),f},{}),this._linesShader=v.a.createShader("ecgl.meshLines3D");var u={};v.a.COMMON_SHADERS.forEach(function(f){u[f]=new v.a.Material({shader:v.a.createShader("ecgl."+f)})}),this._groundMaterials=u,this._groundMesh=new v.a.Mesh({geometry:new v.a.PlaneGeometry({dynamic:!0}),castShadow:!1,renderNormal:!0,$ignorePicking:!0}),this._groundMesh.rotation.rotateX(-Math.PI/2),this._labelsBuilder=new r.a(512,512,s),this._labelsBuilder.getMesh().renderOrder=100,this._labelsBuilder.getMesh().material.depthTest=!1,this.rootNode.add(this._labelsBuilder.getMesh()),this._initMeshes(),this._api=s}o.prototype={constructor:o,extrudeY:!0,update:function(s,u,f,e,t){var i=s.getData();e==null&&(e=0),t==null&&(t=i.count()),this._startIndex=e,this._endIndex=t-1,this._triangulation(s,e,t);var c=this._getShader(s.get("shading"));this._prepareMesh(s,c,f,e,t),this.rootNode.updateWorldTransform(),this._updateRegionMesh(s,f,e,t);var p=s.coordinateSystem;p.type==="geo3D"&&this._updateGroundPlane(s,p,f);var A=this;this._labelsBuilder.updateData(i,e,t),this._labelsBuilder.getLabelPosition=function(x,C,S){var P=i.getName(x),b,L=S;if(p.type==="geo3D"){var R=p.getRegion(P);return b=R.center,p.dataToPoint([b[0],b[1],L])}else var T=A._triangulationResults[x-A._startIndex],b=A.extrudeY?[(T.max[0]+T.min[0])/2,T.max[1]+L,(T.max[2]+T.min[2])/2]:[(T.max[0]+T.min[0])/2,(T.max[1]+T.min[1])/2,T.max[2]+L]},this._data=i,this._labelsBuilder.updateLabels(),this._updateDebugWireframe(s),this._lastHoverDataIndex=0},_initMeshes:function(){this.rootNode.removeAll();var s=this;function u(){var t=new v.a.Mesh({name:"Polygon",material:new v.a.Material({shader:s._shadersMap.lambert}),culling:!1,geometry:new v.a.Geometry({sortTriangles:!0,dynamic:!0}),ignorePicking:!0,renderNormal:!0});return y.a.util.extend(t.geometry,_.a),t}var f=u(),e=new v.a.Mesh({material:new v.a.Material({shader:this._linesShader}),castShadow:!1,ignorePicking:!0,$ignorePicking:!0,geometry:new E.a({useNativeLine:!1})});this.rootNode.add(f),this.rootNode.add(e),f.material.define("both","VERTEX_COLOR"),f.material.define("fragment","DOUBLE_SIDED"),this._polygonMesh=f,this._linesMesh=e,this.rootNode.add(this._groundMesh)},_getShader:function(s){var u=this._shadersMap[s];return u||(console.warn("Unkown shading "+s),u=this._shadersMap.lambert),u.__shading=s,u},_prepareMesh:function(s,u,f,e,t){for(var i=0,c=0,p=0,A=0,x=e;x<t;x++){var C=this._getRegionPolygonInfo(x),S=this._getRegionLinesInfo(x,s,this._linesMesh.geometry);i+=C.vertexCount,c+=C.triangleCount,p+=S.vertexCount,A+=S.triangleCount}var P=this._polygonMesh,b=P.geometry;["position","normal","texcoord0","color"].forEach(function(L){b.attributes[L].init(i)}),b.indices=i>65535?new Uint32Array(c*3):new Uint16Array(c*3),P.material.shader!==u&&P.material.attachShader(u,!0),v.a.setMaterialFromModel(u.__shading,P.material,s,f),p>0&&(this._linesMesh.geometry.resetOffset(),this._linesMesh.geometry.setVertexCount(p),this._linesMesh.geometry.setTriangleCount(A)),this._dataIndexOfVertex=new Uint32Array(i),this._vertexRangeOfDataIndex=new Uint32Array((t-e)*2)},_updateRegionMesh:function(s,u,f,e){for(var t=s.getData(),i=0,c=0,p=!1,G=this._polygonMesh,A=this._linesMesh,x=f;x<e;x++){var C=s.getRegionModel(x),S=C.getModel("itemStyle"),P=S.get("color"),b=h.a.firstNotNull(S.get("opacity"),1),L=t.getItemVisual(x,"color",!0);L!=null&&t.hasValue(x)&&(P=L),t.setItemVisual(x,"color",P),t.setItemVisual(x,"opacity",b),P=v.a.parseColor(P);var R=v.a.parseColor(S.get("borderColor"));P[3]*=b,R[3]*=b;var T=P[3]<.99;G.material.set("color",[1,1,1,1]),p=p||T;for(var N=h.a.firstNotNull(C.get("height",!0),s.get("regionHeight")),I=this._updatePolygonGeometry(s,G.geometry,x,N,i,c,P),F=i;F<I.vertexOffset;F++)this._dataIndexOfVertex[F]=x;this._vertexRangeOfDataIndex[(x-f)*2]=i,this._vertexRangeOfDataIndex[(x-f)*2+1]=I.vertexOffset,i=I.vertexOffset,c=I.triangleOffset;var U=S.get("borderWidth"),K=U>0;K&&(U*=u.getDevicePixelRatio(),this._updateLinesGeometry(A.geometry,s,x,N,U,s.coordinateSystem.transform)),A.invisible=!K,A.material.set({color:R})}var G=this._polygonMesh;G.material.transparent=p,G.material.depthMask=!p,G.geometry.updateBoundingBox(),G.material.get("normalMap")&&G.geometry.generateTangents(),G.seriesIndex=s.seriesIndex,G.on("mousemove",this._onmousemove,this),G.on("mouseout",this._onmouseout,this)},_updateDebugWireframe:function(s){var u=s.getModel("debug.wireframe");if(u.get("show")){var f=v.a.parseColor(u.get("lineStyle.color")||"rgba(0,0,0,0.5)"),e=h.a.firstNotNull(u.get("lineStyle.width"),1),t=this._polygonMesh;t.geometry.generateBarycentric(),t.material.define("both","WIREFRAME_TRIANGLE"),t.material.set("wireframeLineColor",f),t.material.set("wireframeLineWidth",e)}},_onmousemove:function(s){var u=this._dataIndexOfVertex[s.triangle[0]];u==null&&(u=-1),u!==this._lastHoverDataIndex&&(this.downplay(this._lastHoverDataIndex),this.highlight(u)),this._lastHoverDataIndex=u,this._polygonMesh.dataIndex=u},_onmouseover:function(s){if(s.target){var u=s.target.eventData?this._data.indexOfName(s.target.eventData.name):s.target.dataIndex;u!=null&&(this.highlight(u),this._labelsBuilder.updateLabels([u]))}},_onmouseout:function(s){s.target&&(this.downplay(this._lastHoverDataIndex),this._lastHoverDataIndex=-1,this._polygonMesh.dataIndex=-1)},_updateGroundPlane:function(s,u,f){var e=s.getModel("groundPlane",s);if(this._groundMesh.invisible=!e.get("show",!0),!this._groundMesh.invisible){var t=s.get("shading"),i=this._groundMaterials[t];i||(console.warn("Unkown shading "+t),i=this._groundMaterials.lambert),v.a.setMaterialFromModel(t,i,e,f),i.get("normalMap")&&this._groundMesh.geometry.generateTangents(),this._groundMesh.material=i,this._groundMesh.material.set("color",v.a.parseColor(e.get("color"))),this._groundMesh.scale.set(u.size[0],u.size[2],1)}},_triangulation:function(s,u,f){this._triangulationResults=[];for(var e=[1/0,1/0,1/0],t=[-1/0,-1/0,-1/0],i=s.coordinateSystem,c=u;c<f;c++){for(var p=[],A=s.getRegionPolygonCoords(c),x=0;x<A.length;x++){var C=A[x].exterior,S=A[x].interiors,P=[],b=[];if(!(C.length<3)){for(var L=0,R=0;R<C.length;R++){var T=C[R];P[L++]=T[0],P[L++]=T[1]}for(var R=0;R<S.length;R++)if(!(S[R].length<3)){for(var N=P.length/2,I=0;I<S[R].length;I++){var T=S[R][I];P.push(T[0]),P.push(T[1])}b.push(N)}for(var F=Object(m.a)(P,b),U=new Float64Array(P.length/2*3),K=[],G=[1/0,1/0,1/0],V=[-1/0,-1/0,-1/0],X=0,R=0;R<P.length;)l.set(K,P[R++],0,P[R++]),i&&i.transform&&l.transformMat4(K,K,i.transform),l.min(G,G,K),l.max(V,V,K),U[X++]=K[0],U[X++]=K[1],U[X++]=K[2];l.min(e,e,G),l.max(t,t,V),p.push({points:U,indices:F,min:G,max:V})}}this._triangulationResults.push(p)}this._geoBoundingBox=[e,t]},_getRegionPolygonInfo:function(s){for(var u=this._triangulationResults[s-this._startIndex],f=0,e=0,t=0;t<u.length;t++)f+=u[t].points.length/3,e+=u[t].indices.length/3;var i=f*2+f*4,c=e*2+f*2;return{vertexCount:i,triangleCount:c}},_updatePolygonGeometry:function(s,u,f,e,t,i,c){var p=s.get("projectUVOnGround"),A=u.attributes.position,x=u.attributes.normal,C=u.attributes.texcoord0,S=u.attributes.color,P=this._triangulationResults[f-this._startIndex],b=S.value&&c,L=u.indices,R=this.extrudeY?1:2,T=this.extrudeY?2:1,N=[this.rootNode.worldTransform.x.len(),this.rootNode.worldTransform.y.len(),this.rootNode.worldTransform.z.len()],I=l.mul([],this._geoBoundingBox[0],N),F=l.mul([],this._geoBoundingBox[1],N),U=Math.max(F[0]-I[0],F[2]-I[2]);function K(J,ce,Se){for(var Le=J.points,ze=Le.length,We=[],tt=[],je=0;je<ze;je+=3)We[0]=Le[je],We[R]=ce,We[T]=Le[je+2],tt[0]=(Le[je]*N[0]-I[0])/U,tt[1]=(Le[je+2]*N[T]-I[2])/U,A.set(t,We),b&&S.set(t,c),C.set(t++,tt)}function G(J,ce,Se){var Le=t;K(J,ce,Se);for(var ze=0;ze<J.indices.length;ze++)L[i*3+ze]=J.indices[ze]+Le;i+=J.indices.length/3}for(var V=this.extrudeY?[0,1,0]:[0,0,1],X=l.negate([],V),ee=0;ee<P.length;ee++){var oe=t,ue=P[ee];G(ue,0,0),G(ue,e,0);for(var Ae=ue.points.length/3,fe=0;fe<Ae;fe++)x.set(oe+fe,X),x.set(oe+fe+Ae,V);for(var he=[0,3,1,1,3,2],ve=[[],[],[],[]],me=[],Te=[],Ce=[],ye=[],q=0,fe=0;fe<Ae;fe++){for(var Q=(fe+1)%Ae,$=(ue.points[Q*3]-ue.points[fe*3])*N[0],j=(ue.points[Q*3+2]-ue.points[fe*3+2])*N[T],re=Math.sqrt($*$+j*j),k=0;k<4;k++){var te=k===0||k===3,ie=(te?fe:Q)*3;ve[k][0]=ue.points[ie],ve[k][R]=k>1?e:0,ve[k][T]=ue.points[ie+2],A.set(t+k,ve[k]),p?(ye[0]=(ue.points[ie]*N[0]-I[0])/U,ye[1]=(ue.points[ie+2]*N[T]-I[T])/U):(ye[0]=(te?q:q+re)/U,ye[1]=(ve[k][R]*N[R]-I[R])/U),C.set(t+k,ye)}l.sub(me,ve[1],ve[0]),l.sub(Te,ve[3],ve[0]),l.cross(Ce,me,Te),l.normalize(Ce,Ce);for(var k=0;k<4;k++)x.set(t+k,Ce),b&&S.set(t+k,c);for(var k=0;k<6;k++)L[i*3+k]=he[k]+t;t+=4,i+=2,q+=re}}return u.dirty(),{vertexOffset:t,triangleOffset:i}},_getRegionLinesInfo:function(s,u,f){var e=0,t=0,i=u.getRegionModel(s),c=i.getModel("itemStyle"),p=c.get("borderWidth");if(p>0){var A=u.getRegionPolygonCoords(s);A.forEach(function(x){var C=x.exterior,S=x.interiors;e+=f.getPolylineVertexCount(C),t+=f.getPolylineTriangleCount(C);for(var P=0;P<S.length;P++)e+=f.getPolylineVertexCount(S[P]),t+=f.getPolylineTriangleCount(S[P])},this)}return{vertexCount:e,triangleCount:t}},_updateLinesGeometry:function(s,u,f,e,t,i){function c(x){for(var C=new Float64Array(x.length*3),S=0,P=[],b=0;b<x.length;b++)P[0]=x[b][0],P[1]=e+.1,P[2]=x[b][1],i&&l.transformMat4(P,P,i),C[S++]=P[0],C[S++]=P[1],C[S++]=P[2];return C}var p=[1,1,1,1],A=u.getRegionPolygonCoords(f);A.forEach(function(x){var C=x.exterior,S=x.interiors;s.addPolyline(c(C),p,t);for(var P=0;P<S.length;P++)s.addPolyline(c(S[P]),p,t)})},highlight:function(s){var u=this._data;if(u){var f=u.getItemModel(s),e=f.getModel("emphasis.itemStyle"),t=e.get("color"),i=h.a.firstNotNull(e.get("opacity"),u.getItemVisual(s,"opacity"),1);if(t==null){var c=u.getItemVisual(s,"color");t=y.a.color.lift(c,-.4)}i==null&&(i=u.getItemVisual(s,"opacity"));var p=v.a.parseColor(t);p[3]*=i,this._setColorOfDataIndex(u,s,p)}},downplay:function(s){var u=this._data;if(u){var f=u.getItemVisual(s,"color"),e=h.a.firstNotNull(u.getItemVisual(s,"opacity"),1),t=v.a.parseColor(f);t[3]*=e,this._setColorOfDataIndex(u,s,t)}},_setColorOfDataIndex:function(s,u,f){if(!(u<this._startIndex&&u>this._endIndex)){u-=this._startIndex;for(var e=this._vertexRangeOfDataIndex[u*2];e<this._vertexRangeOfDataIndex[u*2+1];e++)this._polygonMesh.geometry.attributes.color.set(e,f);this._polygonMesh.geometry.dirty(),this._api.getZr().refresh()}}},M.a=o},function(H,M,g){"use strict";var D=g(81),y=g(1),v=g.n(y),m=v.a.vec3,E=m.create(),h=m.create(),a=m.create();M.a={needsSortTriangles:function(){return this.indices&&this.sortTriangles},needsSortTrianglesProgressively:function(){return this.needsSortTriangles()&&this.triangleCount>=2e4},doSortTriangles:function(d,_){var r=this.indices;if(_===0){var n=this.attributes.position,d=d.array;(!this._triangleZList||this._triangleZList.length!==this.triangleCount)&&(this._triangleZList=new Float32Array(this.triangleCount),this._sortedTriangleIndices=new Uint32Array(this.triangleCount),this._indicesTmp=new r.constructor(r.length),this._triangleZListTmp=new Float32Array(this.triangleCount));for(var l=0,o,s=0;s<r.length;){n.get(r[s++],E),n.get(r[s++],h),n.get(r[s++],a);var u=m.sqrDist(E,d),f=m.sqrDist(h,d),e=m.sqrDist(a,d),t=Math.min(u,f);t=Math.min(t,e),s===3?(o=t,t=0):t=t-o,this._triangleZList[l++]=t}}for(var i=this._sortedTriangleIndices,s=0;s<i.length;s++)i[s]=s;if(this.triangleCount<2e4)_===0&&this._simpleSort(!0);else for(var s=0;s<3;s++)this._progressiveQuickSort(_*3+s);for(var c=this._indicesTmp,p=this._triangleZListTmp,A=this._triangleZList,s=0;s<this.triangleCount;s++){var x=i[s]*3,C=s*3;c[C++]=r[x++],c[C++]=r[x++],c[C]=r[x],p[s]=A[i[s]]}var S=this._indicesTmp;this._indicesTmp=this.indices,this.indices=S;var S=this._triangleZListTmp;this._triangleZListTmp=this._triangleZList,this._triangleZList=S,this.dirtyIndices()},_simpleSort:function(d){var _=this._triangleZList,r=this._sortedTriangleIndices;function n(l,o){return _[o]-_[l]}d?Array.prototype.sort.call(r,n):D.a.sort(r,n,0,r.length-1)},_progressiveQuickSort:function(d){var _=this._triangleZList,r=this._sortedTriangleIndices;this._quickSort=this._quickSort||new D.a,this._quickSort.step(r,function(n,l){return _[l]-_[n]},d)}}},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(73),m=g(58),E=g(3),h=1,a=2;function d(_,r,n){this._labelsMesh=new m.a,this._labelTextureSurface=new v.a({width:512,height:512,devicePixelRatio:n.getDevicePixelRatio(),onupdate:function(){n.getZr().refresh()}}),this._api=n,this._labelsMesh.material.set("textureAtlas",this._labelTextureSurface.getTexture())}d.prototype.getLabelPosition=function(_,r,n){return[0,0,0]},d.prototype.getLabelDistance=function(_,r,n){return 0},d.prototype.getMesh=function(){return this._labelsMesh},d.prototype.updateData=function(_,r,n){r==null&&(r=0),n==null&&(n=_.count()),(!this._labelsVisibilitiesBits||this._labelsVisibilitiesBits.length!==n-r)&&(this._labelsVisibilitiesBits=new Uint8Array(n-r));for(var l=["label","show"],o=["emphasis","label","show"],s=r;s<n;s++){var u=_.getItemModel(s),f=u.get(l),e=u.get(o);e==null&&(e=f);var t=(f?h:0)|(e?a:0);this._labelsVisibilitiesBits[s-r]=t}this._start=r,this._end=n,this._data=_},d.prototype.updateLabels=function(_){if(this._data){_=_||[];for(var r=_.length>0,n={},l=0;l<_.length;l++)n[_[l]]=!0;this._labelsMesh.geometry.convertToDynamicArray(!0),this._labelTextureSurface.clear();for(var o=["label"],s=["emphasis","label"],u=this._data.hostModel,f=this._data,e=u.getModel(o),t=u.getModel(s,e),i={left:"right",right:"left",top:"center",bottom:"center"},c={left:"middle",right:"middle",top:"bottom",bottom:"top"},p=this._start;p<this._end;p++){var A=!1;r&&n[p]&&(A=!0);var x=this._labelsVisibilitiesBits[p-this._start]&(A?a:h);if(x){var C=f.getItemModel(p),S=C.getModel(A?s:o,A?t:e),P=S.get("distance")||0,b=S.get("position"),L=S.getModel("textStyle"),R=this._api.getDevicePixelRatio(),T=u.getFormattedLabel(p,A?"emphasis":"normal");if(T==null||T==="")return;var N=new y.a.graphic.Text;y.a.graphic.setTextStyle(N.style,L,{text:T,textFill:L.get("color")||f.getItemVisual(p,"color")||"#000",textAlign:"left",textVerticalAlign:"top",opacity:E.a.firstNotNull(L.get("opacity"),f.getItemVisual(p,"opacity"),1)});var I=N.getBoundingRect(),F=1.2;I.height*=F;var U=this._labelTextureSurface.add(N),K=i[b]||"center",G=c[b]||"bottom";this._labelsMesh.geometry.addSprite(this.getLabelPosition(p,b,P),[I.width*R,I.height*R],U,K,G,this.getLabelDistance(p,b,P)*R)}}this._labelsMesh.material.set("uvScale",this._labelTextureSurface.getCoordsScale()),this._labelTextureSurface.getZr().refreshImmediately(),this._labelsMesh.geometry.convertToTypedArray(),this._labelsMesh.geometry.dirty()}},M.a=d},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(2),m=g(216),E=g(217),h=g(61),a=g(9),d=g(3),_=20,r=-10;function n(o,s){return o&&s&&o[0]===s[0]&&o[1]===s[1]}function l(o,s){this.rootNode=new v.a.Node,this.is2D=o,this._labelsBuilder=new h.a(256,256,s),this._labelsBuilder.getMesh().renderOrder=100,this.rootNode.add(this._labelsBuilder.getMesh()),this._api=s,this._spriteImageCanvas=document.createElement("canvas"),this._startDataIndex=0,this._endDataIndex=0,this._sizeScale=1}l.prototype={constructor:l,highlightOnMouseover:!0,update:function(o,s,u,f,e){var t=this._prevMesh;this._prevMesh=this._mesh,this._mesh=t;var i=o.getData();if(f==null&&(f=0),e==null&&(e=i.count()),this._startDataIndex=f,this._endDataIndex=e-1,!this._mesh){var c=this._prevMesh&&this._prevMesh.material;this._mesh=new E.a({renderOrder:10,frustumCulling:!1}),c&&(this._mesh.material=c)}var c=this._mesh.material,p=this._mesh.geometry,A=p.attributes;this.rootNode.remove(this._prevMesh),this.rootNode.add(this._mesh),this._setPositionTextureToMesh(this._mesh,this._positionTexture);var x=this._getSymbolInfo(o,f,e),C=u.getDevicePixelRatio(),S=o.getModel("itemStyle").getItemStyle(),P=o.get("large"),b=1;x.maxSize>2?(b=this._updateSymbolSprite(o,S,x,C),c.enableTexture("sprite")):c.disableTexture("sprite"),A.position.init(e-f);var L=[];if(P){c.undefine("VERTEX_SIZE"),c.undefine("VERTEX_COLOR");var R=i.getVisual("color"),T=i.getVisual("opacity");v.a.parseColor(R,L),L[3]*=T,c.set({color:L,u_Size:x.maxSize*this._sizeScale})}else c.set({color:[1,1,1,1]}),c.define("VERTEX_SIZE"),c.define("VERTEX_COLOR"),A.size.init(e-f),A.color.init(e-f),this._originalOpacity=new Float32Array(e-f);for(var N=i.getLayout("points"),I=A.position.value,F=!1,U=0;U<e-f;U++){var K=U*3,G=U*2;if(this.is2D?(I[K]=N[G],I[K+1]=N[G+1],I[K+2]=r):(I[K]=N[K],I[K+1]=N[K+1],I[K+2]=N[K+2]),!P){var R=i.getItemVisual(U,"color"),T=i.getItemVisual(U,"opacity");v.a.parseColor(R,L),L[3]*=T,A.color.set(U,L),L[3]<.99&&(F=!0);var V=i.getItemVisual(U,"symbolSize");V=V instanceof Array?Math.max(V[0],V[1]):V,isNaN(V)&&(V=0),A.size.value[U]=V*b*this._sizeScale,this._originalOpacity[U]=L[3]}}this._mesh.sizeScale=b,p.updateBoundingBox(),p.dirty(),this._updateMaterial(o,S);var X=o.coordinateSystem;if(X&&X.viewGL){var ee=X.viewGL.isLinearSpace()?"define":"undefine";c[ee]("fragment","SRGB_DECODE")}P||this._updateLabelBuilder(o,f,e),this._updateHandler(o,s,u),this._updateAnimation(o),this._api=u},getPointsMesh:function(){return this._mesh},updateLabels:function(o){this._labelsBuilder.updateLabels(o)},hideLabels:function(){this.rootNode.remove(this._labelsBuilder.getMesh())},showLabels:function(){this.rootNode.add(this._labelsBuilder.getMesh())},_updateSymbolSprite:function(o,s,u,f){u.maxSize=Math.min(u.maxSize*2,200);var e=[];return u.aspect>1?(e[0]=u.maxSize,e[1]=u.maxSize/u.aspect):(e[1]=u.maxSize,e[0]=u.maxSize*u.aspect),e[0]=e[0]||1,e[1]=e[1]||1,(this._symbolType!==u.type||!n(this._symbolSize,e)||this._lineWidth!==s.lineWidth)&&(m.a.createSymbolSprite(u.type,e,{fill:"#fff",lineWidth:s.lineWidth,stroke:"transparent",shadowColor:"transparent",minMargin:Math.min(e[0]/2,10)},this._spriteImageCanvas),m.a.createSDFFromCanvas(this._spriteImageCanvas,Math.min(this._spriteImageCanvas.width,32),_,this._mesh.material.get("sprite").image),this._symbolType=u.type,this._symbolSize=e,this._lineWidth=s.lineWidth),this._spriteImageCanvas.width/u.maxSize*f},_updateMaterial:function(o,s){var u=o.get("blendMode")==="lighter"?v.a.additiveBlend:null,f=this._mesh.material;f.blend=u,f.set("lineWidth",s.lineWidth/_);var e=v.a.parseColor(s.stroke);f.set("strokeColor",e),f.transparent=!0,f.depthMask=!1,f.depthTest=!this.is2D,f.sortVertices=!this.is2D},_updateLabelBuilder:function(o,i,u){var f=o.getData(),e=this._mesh.geometry,t=e.attributes.position.value,i=this._startDataIndex,c=this._mesh.sizeScale;this._labelsBuilder.updateData(f,i,u),this._labelsBuilder.getLabelPosition=function(p,A,x){var C=(p-i)*3;return[t[C],t[C+1],t[C+2]]},this._labelsBuilder.getLabelDistance=function(p,A,x){var C=e.attributes.size.get(p-i)/c;return C/2+x},this._labelsBuilder.updateLabels()},_updateAnimation:function(o){v.a.updateVertexAnimation([["prevPosition","position"],["prevSize","size"]],this._prevMesh,this._mesh,o)},_updateHandler:function(o,s,u){var f=o.getData(),e=this._mesh,t=this,i=-1,c=o.coordinateSystem&&o.coordinateSystem.type==="cartesian3D",p;c&&(p=o.coordinateSystem.model),e.seriesIndex=o.seriesIndex,e.off("mousemove"),e.off("mouseout"),e.on("mousemove",function(A){var x=A.vertexIndex+t._startDataIndex;x!==i&&(this.highlightOnMouseover&&(this.downplay(f,i),this.highlight(f,x),this._labelsBuilder.updateLabels([x])),c&&u.dispatchAction({type:"grid3DShowAxisPointer",value:[f.get(o.coordDimToDataDim("x")[0],x),f.get(o.coordDimToDataDim("y")[0],x),f.get(o.coordDimToDataDim("z")[0],x)],grid3DIndex:p.componentIndex})),e.dataIndex=x,i=x},this),e.on("mouseout",function(A){var x=A.vertexIndex+t._startDataIndex;this.highlightOnMouseover&&(this.downplay(f,x),this._labelsBuilder.updateLabels()),i=-1,e.dataIndex=-1,c&&u.dispatchAction({type:"grid3DHideAxisPointer",grid3DIndex:p.componentIndex})},this)},updateLayout:function(o,s,u){var f=o.getData();if(this._mesh){var e=this._mesh.geometry.attributes.position.value,t=f.getLayout("points");if(this.is2D)for(var i=0;i<t.length/2;i++){var c=i*3,p=i*2;e[c]=t[p],e[c+1]=t[p+1],e[c+2]=r}else for(var i=0;i<t.length;i++)e[i]=t[i];this._mesh.geometry.dirty(),u.getZr().refresh()}},updateView:function(o){if(this._mesh){var s=new a.a;a.a.mul(s,o.viewMatrix,this._mesh.worldTransform),a.a.mul(s,o.projectionMatrix,s),this._mesh.updateNDCPosition(s,this.is2D,this._api)}},highlight:function(o,s){if(!(s>this._endDataIndex||s<this._startDataIndex)){var u=o.getItemModel(s),f=u.getModel("emphasis.itemStyle"),e=f.get("color"),t=f.get("opacity");if(e==null){var i=o.getItemVisual(s,"color");e=y.a.color.lift(i,-.4)}t==null&&(t=o.getItemVisual(s,"opacity"));var c=v.a.parseColor(e);c[3]*=t,this._mesh.geometry.attributes.color.set(s-this._startDataIndex,c),this._mesh.geometry.dirtyAttribute("color"),this._api.getZr().refresh()}},downplay:function(o,s){if(!(s>this._endDataIndex||s<this._startDataIndex)){var u=o.getItemVisual(s,"color"),f=o.getItemVisual(s,"opacity"),e=v.a.parseColor(u);e[3]*=f,this._mesh.geometry.attributes.color.set(s-this._startDataIndex,e),this._mesh.geometry.dirtyAttribute("color"),this._api.getZr().refresh()}},fadeOutAll:function(o){if(this._originalOpacity){for(var s=this._mesh.geometry,u=0;u<s.vertexCount;u++){var f=this._originalOpacity[u]*o;s.attributes.color.value[u*4+3]=f}s.dirtyAttribute("color"),this._api.getZr().refresh()}},fadeInAll:function(){this.fadeOutAll(1)},setPositionTexture:function(o){this._mesh&&this._setPositionTextureToMesh(this._mesh,o),this._positionTexture=o},removePositionTexture:function(){this._positionTexture=null,this._mesh&&this._setPositionTextureToMesh(this._mesh,null)},setSizeScale:function(o){if(o!==this._sizeScale){if(this._mesh){var s=this._mesh.material.get("u_Size");this._mesh.material.set("u_Size",s/this._sizeScale*o);var u=this._mesh.geometry.attributes;if(u.size.value)for(var f=0;f<u.size.value.length;f++)u.size.value[f]=u.size.value[f]/this._sizeScale*o}this._sizeScale=o}},_setPositionTextureToMesh:function(o,s){s&&o.material.set("positionTexture",s),o.material[s?"enableTexture":"disableTexture"]("positionTexture")},_getSymbolInfo:function(o,s,u){if(o.get("large")){var f=d.a.firstNotNull(o.get("symbolSize"),1),A,t;return f instanceof Array?(A=Math.max(f[0],f[1]),t=f[0]/f[1]):(A=f,t=1),{maxSize:f,type:o.get("symbol"),aspect:t}}for(var e=o.getData(),t,i=!1,c=e.getItemVisual(0,"symbol")||"circle",p=!1,A=0,x=s;x<u;x++){var f=e.getItemVisual(x,"symbolSize"),C=e.getItemVisual(x,"symbol"),S;if(f instanceof Array)S=f[0]/f[1],A=Math.max(Math.max(f[0],f[1]),A);else{if(isNaN(f))return;S=1,A=Math.max(f,A)}t!=null&&Math.abs(S-t)>.05&&(i=!0),C!==c&&(p=!0),c=C,t=S}return i&&console.warn("Different symbol width / height ratio will be ignored."),p&&console.warn("Different symbol type will be ignored."),{maxSize:A,type:c,aspect:t}}},M.a=l},function(H,M,g){"use strict";M.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(H,M,g){"use strict";var D=g(28),y=g(11),v=0,m=null,E=!0,h,a=function(){this.triangleCount=0,this.vertexCount=0,this.drawCallCount=0};function d(r,n,l){this.availableAttributes=r,this.availableAttributeSymbols=n,this.indicesBuffer=l,this.vao=null}var _=D.a.extend({material:null,geometry:null,mode:y.a.TRIANGLES,_drawCache:null,_renderInfo:null},function(){this._drawCache={},this._renderInfo=new a},{__program:null,lightGroup:0,renderOrder:0,lineWidth:1,culling:!0,cullFace:y.a.BACK,frontFace:y.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(r){},afterRender:function(r,n){},getBoundingBox:function(r,n){return n=D.a.prototype.getBoundingBox.call(this,r,n),this.geometry&&this.geometry.boundingBox&&n.union(this.geometry.boundingBox),n},render:function(r,n,l){var o=r.gl;n=n||this.material;var s=n.shader,u=this.geometry,f=this.mode,e=u.vertexCount,t=u.isUseIndices(),i=r.getGLExtension("OES_element_index_uint"),c=i&&e>65535,p=c?o.UNSIGNED_INT:o.UNSIGNED_SHORT,A=r.getGLExtension("OES_vertex_array_object"),x=!u.dynamic,C=this._renderInfo;C.vertexCount=e,C.triangleCount=0,C.drawCallCount=0;var S=!1;if(h=r.__uid__+"-"+u.__uid__+"-"+l.__uid__,(h!==v||A&&x||u._cache.isDirty("any"))&&(S=!0),v=h,!S)E?(o.drawElements(f,m.count,p,0),C.triangleCount=m.count/3):o.drawArrays(f,0,e),C.drawCallCount=1;else{var P=this._drawCache[h];if(!P){var b=u.getBufferChunks(r);if(!b)return;P=[];for(var L=0;L<b.length;L++){for(var R=b[L],T=R.attributeBuffers,N=R.indicesBuffer,I=[],F=[],U=0;U<T.length;U++){var K=T[U],G=K.name,V=K.semantic,X;if(V){var ee=s.attributeSemantics[V];X=ee&&ee.symbol}else X=G;X&&l.attributes[X]&&(I.push(K),F.push(X))}var oe=new d(I,F,N);P.push(oe)}x&&(this._drawCache[h]=P)}for(var ue=0;ue<P.length;ue++){var oe=P[ue],Ae=!0;A&&x&&(oe.vao==null?oe.vao=A.createVertexArrayOES():Ae=!1,A.bindVertexArrayOES(oe.vao));var I=oe.availableAttributes,N=oe.indicesBuffer;if(Ae)for(var fe=l.enableAttributes(r,oe.availableAttributeSymbols,A&&x&&oe.vao),U=0;U<I.length;U++){var he=fe[U];if(he!==-1){var K=I[U],ve=K.buffer,me=K.size,Te;switch(K.type){case"float":Te=o.FLOAT;break;case"byte":Te=o.BYTE;break;case"ubyte":Te=o.UNSIGNED_BYTE;break;case"short":Te=o.SHORT;break;case"ushort":Te=o.UNSIGNED_SHORT;break;default:Te=o.FLOAT;break}o.bindBuffer(o.ARRAY_BUFFER,ve),o.vertexAttribPointer(he,me,Te,!1,0,0)}}(f==y.a.LINES||f==y.a.LINE_STRIP||f==y.a.LINE_LOOP)&&o.lineWidth(this.lineWidth),m=N,E=u.isUseIndices(),E?(Ae&&o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,N.buffer),o.drawElements(f,N.count,p,0),C.triangleCount+=N.count/3):o.drawArrays(f,0,e),A&&x&&A.bindVertexArrayOES(null),C.drawCallCount++}}return C},clone:function(){var r=["castShadow","receiveShadow","mode","culling","cullFace","frontFace","frustumCulling","renderOrder","lineWidth","ignorePicking","ignorePreZ","ignoreGBuffer"];return function(){var n=D.a.prototype.clone.call(this);n.geometry=this.geometry,n.material=this.material;for(var l=0;l<r.length;l++){var o=r[l];n[o]!==this[o]&&(n[o]=this[o])}return n}}()});_.POINTS=y.a.POINTS,_.LINES=y.a.LINES,_.LINE_LOOP=y.a.LINE_LOOP,_.LINE_STRIP=y.a.LINE_STRIP,_.TRIANGLES=y.a.TRIANGLES,_.TRIANGLE_STRIP=y.a.TRIANGLE_STRIP,_.TRIANGLE_FAN=y.a.TRIANGLE_FAN,_.BACK=y.a.BACK,_.FRONT=y.a.FRONT,_.FRONT_AND_BACK=y.a.FRONT_AND_BACK,_.CW=y.a.CW,_.CCW=y.a.CCW,_.RenderInfo=a,M.a=_},function(H,M){var g=typeof window!="undefined"&&(window.requestAnimationFrame&&window.requestAnimationFrame.bind(window)||window.msRequestAnimationFrame&&window.msRequestAnimationFrame.bind(window)||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame)||function(D){setTimeout(D,16)};H.exports=g},function(H,M,g){"use strict";var D={};D.isPowerOfTwo=function(y){return(y&y-1)===0},D.nextPowerOfTwo=function(y){return y--,y|=y>>1,y|=y>>2,y|=y>>4,y|=y>>8,y|=y>>16,y++,y},D.nearestPowerOfTwo=function(y){return Math.pow(2,Math.round(Math.log(y)/Math.LN2))},M.a=D},function(H,M,g){"use strict";var D=g(4),y=g(1),v=g.n(y),m=v.a.vec3,E=v.a.mat4,h=v.a.vec4,a=function(d,_){this.normal=d||new D.a(0,1,0),this.distance=_||0};a.prototype={constructor:a,distanceToPoint:function(d){return m.dot(d.array,this.normal.array)-this.distance},projectPoint:function(d,_){_||(_=new D.a);var r=this.distanceToPoint(d);return m.scaleAndAdd(_.array,d.array,this.normal.array,-r),_._dirty=!0,_},normalize:function(){var d=1/m.len(this.normal.array);m.scale(this.normal.array,d),this.distance*=d},intersectFrustum:function(d){for(var _=d.vertices,r=this.normal.array,n=m.dot(_[0].array,r)>this.distance,l=1;l<8;l++)if(m.dot(_[l].array,r)>this.distance!=n)return!0},intersectLine:function(){var d=m.create();return function(_,r,n){var l=this.distanceToPoint(_),o=this.distanceToPoint(r);if(l>0&&o>0||l<0&&o<0)return null;var s=this.normal.array,u=this.distance,f=_.array;m.sub(d,r.array,_.array),m.normalize(d,d);var e=m.dot(s,d);if(e===0)return null;n||(n=new D.a);var t=(m.dot(s,f)-u)/e;return m.scaleAndAdd(n.array,f,d,-t),n._dirty=!0,n}}(),applyTransform:function(){var d=E.create(),_=h.create(),r=h.create();return r[3]=1,function(n){n=n.array,m.scale(r,this.normal.array,this.distance),h.transformMat4(r,r,n),this.distance=m.dot(r,this.normal.array),E.invert(d,n),E.transpose(d,d),_[3]=0,m.copy(_,this.normal.array),h.transformMat4(_,_,d),m.copy(this.normal.array,_)}}(),copy:function(d){m.copy(this.normal.array,d.normal.array),this.normal._dirty=!0,this.distance=d.distance},clone:function(){var d=new a;return d.copy(this),d}},M.a=a},function(H,M,g){"use strict";var D=g(13),y=g(15),v=D.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 m=this.heightSegments,E=this.widthSegments,h=this.attributes.position,a=this.attributes.texcoord0,d=this.attributes.normal,_=(E+1)*(m+1);h.init(_),a.init(_),d.init(_);var r=_>65535?Uint32Array:Uint16Array,n=this.indices=new r(E*m*6),l,o,s,u,f,e,t,x=this.radius,i=this.phiStart,c=this.phiLength,p=this.thetaStart,A=this.thetaLength,x=this.radius,C=[],S=[],P=0,b=1/x;for(t=0;t<=m;t++)for(e=0;e<=E;e++)u=e/E,f=t/m,l=-x*Math.cos(i+u*c)*Math.sin(p+f*A),o=x*Math.cos(p+f*A),s=x*Math.sin(i+u*c)*Math.sin(p+f*A),C[0]=l,C[1]=o,C[2]=s,S[0]=u,S[1]=f,h.set(P,C),a.set(P,S),C[0]*=b,C[1]*=b,C[2]*=b,d.set(P,C),P++;var L,R,T,N,I=E+1,F=0;for(t=0;t<m;t++)for(e=0;e<E;e++)R=t*I+e,L=t*I+e+1,N=(t+1)*I+e+1,T=(t+1)*I+e,n[F++]=L,n[F++]=R,n[F++]=N,n[F++]=R,n[F++]=T,n[F++]=N;this.boundingBox=new y.a,this.boundingBox.max.set(x,x,x),this.boundingBox.min.set(-x,-x,-x)}});M.a=v},function(H,M,g){"use strict";var D=g(13),y=g(37),v=g(9),m=g(4),E=g(15),h=g(18),a=new v.a,d=D.a.extend({dynamic:!1,widthSegments:1,heightSegments:1,depthSegments:1,inside:!1},function(){this.build()},{build:function(){var r={px:_("px",this.depthSegments,this.heightSegments),nx:_("nx",this.depthSegments,this.heightSegments),py:_("py",this.widthSegments,this.depthSegments),ny:_("ny",this.widthSegments,this.depthSegments),pz:_("pz",this.widthSegments,this.heightSegments),nz:_("nz",this.widthSegments,this.heightSegments)},n=["position","texcoord0","normal"],l=0,o=0;for(var s in r)l+=r[s].vertexCount,o+=r[s].indices.length;for(var u=0;u<n.length;u++)this.attributes[n[u]].init(l);this.indices=new h.a.Uint16Array(o);var f=0,e=0;for(var s in r){for(var t=r[s],u=0;u<n.length;u++)for(var i=n[u],c=t.attributes[i].value,p=t.attributes[i].size,A=i==="normal",x=0;x<c.length;x++){var C=c[x];this.inside&&A&&(C=-C),this.attributes[i].value[x+p*e]=C}for(var S=t.indices.length,x=0;x<t.indices.length;x++)this.indices[x+f]=e+t.indices[this.inside?S-x-1:x];f+=t.indices.length,e+=t.vertexCount}this.boundingBox=new E.a,this.boundingBox.max.set(1,1,1),this.boundingBox.min.set(-1,-1,-1)}});function _(r,n,l){a.identity();var o=new y.a({widthSegments:n,heightSegments:l});switch(r){case"px":v.a.translate(a,a,m.a.POSITIVE_X),v.a.rotateY(a,a,Math.PI/2);break;case"nx":v.a.translate(a,a,m.a.NEGATIVE_X),v.a.rotateY(a,a,-Math.PI/2);break;case"py":v.a.translate(a,a,m.a.POSITIVE_Y),v.a.rotateX(a,a,-Math.PI/2);break;case"ny":v.a.translate(a,a,m.a.NEGATIVE_Y),v.a.rotateX(a,a,Math.PI/2);break;case"pz":v.a.translate(a,a,m.a.POSITIVE_Z);break;case"nz":v.a.translate(a,a,m.a.NEGATIVE_Z),v.a.rotateY(a,a,Math.PI);break}return o.applyTransform(a),o}M.a=d},function(H,M,g){"use strict";var D=g(19),y=g(4),v=D.a.extend({shadowBias:.001,shadowSlopeScale:2,shadowCascade:1,cascadeSplitLogFactor:.2},{type:"DIRECTIONAL_LIGHT",uniformTemplates:{directionalLightDirection:{type:"3f",value:function(m){return m.__dir=m.__dir||new y.a,m.__dir.copy(m.worldTransform.z).normalize().negate().array}},directionalLightColor:{type:"3f",value:function(m){var E=m.color,h=m.intensity;return[E[0]*h,E[1]*h,E[2]*h]}}},clone:function(){var m=D.a.prototype.clone.call(this);return m.shadowBias=this.shadowBias,m.shadowSlopeScale=this.shadowSlopeScale,m}});M.a=v},function(H,M,g){"use strict";var D=g(19),y=D.a.extend({range:100,castShadow:!1},{type:"POINT_LIGHT",uniformTemplates:{pointLightPosition:{type:"3f",value:function(v){return v.getWorldPosition().array}},pointLightRange:{type:"1f",value:function(v){return v.range}},pointLightColor:{type:"3f",value:function(v){var m=v.color,E=v.intensity;return[m[0]*E,m[1]*E,m[2]*E]}}},clone:function(){var v=D.a.prototype.clone.call(this);return v.range=this.range,v}});M.a=y},function(H,M,g){"use strict";var D=g(19),y=g(4),v=D.a.extend({range:20,umbraAngle:30,penumbraAngle:45,falloffFactor:2,shadowBias:2e-4,shadowSlopeScale:2},{type:"SPOT_LIGHT",uniformTemplates:{spotLightPosition:{type:"3f",value:function(m){return m.getWorldPosition().array}},spotLightRange:{type:"1f",value:function(m){return m.range}},spotLightUmbraAngleCosine:{type:"1f",value:function(m){return Math.cos(m.umbraAngle*Math.PI/180)}},spotLightPenumbraAngleCosine:{type:"1f",value:function(m){return Math.cos(m.penumbraAngle*Math.PI/180)}},spotLightFalloffFactor:{type:"1f",value:function(m){return m.falloffFactor}},spotLightDirection:{type:"3f",value:function(m){return m.__dir=m.__dir||new y.a,m.__dir.copy(m.worldTransform.z).negate().array}},spotLightColor:{type:"3f",value:function(m){var E=m.color,h=m.intensity;return[E[0]*h,E[1]*h,E[2]*h]}}},clone:function(){var m=D.a.prototype.clone.call(this);return m.range=this.range,m.umbraAngle=this.umbraAngle,m.penumbraAngle=this.penumbraAngle,m.falloffFactor=this.falloffFactor,m.shadowBias=this.shadowBias,m.shadowSlopeScale=this.shadowSlopeScale,m}});M.a=v},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(5);function m(h,a,d,_,r,n,l){this._zr=h,this._x=0,this._y=0,this._rowHeight=0,this.width=_,this.height=r,this.offsetX=a,this.offsetY=d,this.dpr=l,this.gap=n}m.prototype={constructor:m,clear:function(){this._x=0,this._y=0,this._rowHeight=0},add:function(h,a,d){var _=h.getBoundingRect();a==null&&(a=_.width),d==null&&(d=_.height),a*=this.dpr,d*=this.dpr,this._fitElement(h,a,d);var r=this._x,n=this._y,l=this.width*this.dpr,o=this.height*this.dpr,s=this.gap;if(r+a+s>l&&(r=this._x=0,n+=this._rowHeight+s,this._y=n,this._rowHeight=0),this._x+=a+s,this._rowHeight=Math.max(this._rowHeight,d),n+d+s>o)return null;h.position[0]+=this.offsetX*this.dpr+r,h.position[1]+=this.offsetY*this.dpr+n,this._zr.add(h);var u=[this.offsetX/this.width,this.offsetY/this.height],f=[[r/l+u[0],n/o+u[1]],[(r+a)/l+u[0],(n+d)/o+u[1]]];return f},_fitElement:function(h,a,d){var _=h.getBoundingRect(),r=a/_.width,n=d/_.height;h.position=[-_.x*r,-_.y*n],h.scale=[r,n],h.update()}};function E(h){h=h||{},h.width=h.width||512,h.height=h.height||512,h.devicePixelRatio=h.devicePixelRatio||1,h.gap=h.gap==null?2:h.gap;var a=document.createElement("canvas");a.width=h.width*h.devicePixelRatio,a.height=h.height*h.devicePixelRatio,this._canvas=a,this._texture=new v.a({image:a,flipY:!1});var d=this;this._zr=y.a.zrender.init(a);var _=this._zr.refreshImmediately;this._zr.refreshImmediately=function(){_.call(this),d._texture.dirty(),d.onupdate&&d.onupdate()},this._dpr=h.devicePixelRatio,this._coords={},this.onupdate=h.onupdate,this._gap=h.gap,this._textureAtlasNodes=[new m(this._zr,0,0,h.width,h.height,this._gap,this._dpr)],this._nodeWidth=h.width,this._nodeHeight=h.height,this._currentNodeIdx=0}E.prototype={clear:function(){for(var h=0;h<this._textureAtlasNodes.length;h++)this._textureAtlasNodes[h].clear();this._currentNodeIdx=0,this._zr.clear(),this._coords={}},getWidth:function(){return this._width},getHeight:function(){return this._height},getTexture:function(){return this._texture},getDevicePixelRatio:function(){return this._dpr},getZr:function(){return this._zr},_getCurrentNode:function(){return this._textureAtlasNodes[this._currentNodeIdx]},_expand:function(){if(this._currentNodeIdx++,this._textureAtlasNodes[this._currentNodeIdx])return this._textureAtlasNodes[this._currentNodeIdx];var h=4096/this._dpr,a=this._textureAtlasNodes,d=a.length,_=d*this._nodeWidth%h,r=Math.floor(d*this._nodeWidth/h)*this._nodeHeight;if(r>=h){console.error("Too much labels. Some will be ignored.");return}var n=(_+this._nodeWidth)*this._dpr,l=(r+this._nodeHeight)*this._dpr;try{this._zr.resize({width:n,height:l})}catch(s){this._canvas.width=n,this._canvas.height=l}var o=new m(this._zr,_,r,this._nodeWidth,this._nodeHeight,this._gap,this._dpr);return this._textureAtlasNodes.push(o),o},add:function(h,a,d){if(this._coords[h.id])return console.warn("Element already been add"),this._coords[h.id];var _=this._getCurrentNode().add(h,a,d);if(!_){var r=this._expand();if(!r)return;_=r.add(h,a,d)}return this._coords[h.id]=_,_},getCoordsScale:function(){var h=this._dpr;return[this._nodeWidth/this._canvas.width*h,this._nodeHeight/this._canvas.height*h]},getCoords:function(h){return this._coords[h]}},M.a=E},function(H,M,g){"use strict";M.a=D;function D(y,v,m){var E,h=y.scale;return h.type==="ordinal"&&(typeof m=="function"?(E=h.getTicks()[v],!m(E,h.getLabel(E))):v%(m+1))}},function(H,M,g){var D=g(76),y=g(77),v=D.applyTransform,m=Math.min,E=Math.max;function h(d,_,r,n){r<0&&(d=d+r,r=-r),n<0&&(_=_+n,n=-n),this.x=d,this.y=_,this.width=r,this.height=n}h.prototype={constructor:h,union:function(d){var _=m(d.x,this.x),r=m(d.y,this.y);this.width=E(d.x+d.width,this.x+this.width)-_,this.height=E(d.y+d.height,this.y+this.height)-r,this.x=_,this.y=r},applyTransform:function(){var d=[],_=[],r=[],n=[];return function(l){if(l){d[0]=r[0]=this.x,d[1]=n[1]=this.y,_[0]=n[0]=this.x+this.width,_[1]=r[1]=this.y+this.height,v(d,d,l),v(_,_,l),v(r,r,l),v(n,n,l),this.x=m(d[0],_[0],r[0],n[0]),this.y=m(d[1],_[1],r[1],n[1]);var o=E(d[0],_[0],r[0],n[0]),s=E(d[1],_[1],r[1],n[1]);this.width=o-this.x,this.height=s-this.y}}}(),calculateTransform:function(d){var _=this,r=d.width/_.width,n=d.height/_.height,l=y.create();return y.translate(l,l,[-_.x,-_.y]),y.scale(l,l,[r,n]),y.translate(l,l,[d.x,d.y]),l},intersect:function(d){if(!d)return!1;d instanceof h||(d=h.create(d));var _=this,r=_.x,n=_.x+_.width,l=_.y,o=_.y+_.height,s=d.x,u=d.x+d.width,f=d.y,e=d.y+d.height;return!(n<s||u<r||o<f||e<l)},contain:function(d,_){var r=this;return d>=r.x&&d<=r.x+r.width&&_>=r.y&&_<=r.y+r.height},clone:function(){return new h(this.x,this.y,this.width,this.height)},copy:function(d){this.x=d.x,this.y=d.y,this.width=d.width,this.height=d.height},plain:function(){return{x:this.x,y:this.y,width:this.width,height:this.height}}},h.create=function(d){return new h(d.x,d.y,d.width,d.height)};var a=h;H.exports=a},function(H,M){var g=typeof Float32Array=="undefined"?Array:Float32Array;function D(P,b){var L=new g(2);return P==null&&(P=0),b==null&&(b=0),L[0]=P,L[1]=b,L}function y(P,b){return P[0]=b[0],P[1]=b[1],P}function v(P){var b=new g(2);return b[0]=P[0],b[1]=P[1],b}function m(P,b,L){return P[0]=b,P[1]=L,P}function E(P,b,L){return P[0]=b[0]+L[0],P[1]=b[1]+L[1],P}function h(P,b,L,R){return P[0]=b[0]+L[0]*R,P[1]=b[1]+L[1]*R,P}function a(P,b,L){return P[0]=b[0]-L[0],P[1]=b[1]-L[1],P}function d(P){return Math.sqrt(r(P))}var _=d;function r(P){return P[0]*P[0]+P[1]*P[1]}var n=r;function l(P,b,L){return P[0]=b[0]*L[0],P[1]=b[1]*L[1],P}function o(P,b,L){return P[0]=b[0]/L[0],P[1]=b[1]/L[1],P}function s(P,b){return P[0]*b[0]+P[1]*b[1]}function u(P,b,L){return P[0]=b[0]*L,P[1]=b[1]*L,P}function f(P,b){var L=d(b);return L===0?(P[0]=0,P[1]=0):(P[0]=b[0]/L,P[1]=b[1]/L),P}function e(P,b){return Math.sqrt((P[0]-b[0])*(P[0]-b[0])+(P[1]-b[1])*(P[1]-b[1]))}var t=e;function i(P,b){return(P[0]-b[0])*(P[0]-b[0])+(P[1]-b[1])*(P[1]-b[1])}var c=i;function p(P,b){return P[0]=-b[0],P[1]=-b[1],P}function A(P,b,L,R){return P[0]=b[0]+R*(L[0]-b[0]),P[1]=b[1]+R*(L[1]-b[1]),P}function x(P,b,L){var R=b[0],T=b[1];return P[0]=L[0]*R+L[2]*T+L[4],P[1]=L[1]*R+L[3]*T+L[5],P}function C(P,b,L){return P[0]=Math.min(b[0],L[0]),P[1]=Math.min(b[1],L[1]),P}function S(P,b,L){return P[0]=Math.max(b[0],L[0]),P[1]=Math.max(b[1],L[1]),P}M.create=D,M.copy=y,M.clone=v,M.set=m,M.add=E,M.scaleAndAdd=h,M.sub=a,M.len=d,M.length=_,M.lenSquare=r,M.lengthSquare=n,M.mul=l,M.div=o,M.dot=s,M.scale=u,M.normalize=f,M.distance=e,M.dist=t,M.distanceSquare=i,M.distSquare=c,M.negate=p,M.lerp=A,M.applyTransform=x,M.min=C,M.max=S},function(H,M){var g=typeof Float32Array=="undefined"?Array:Float32Array;function D(){var r=new g(6);return y(r),r}function y(r){return r[0]=1,r[1]=0,r[2]=0,r[3]=1,r[4]=0,r[5]=0,r}function v(r,n){return r[0]=n[0],r[1]=n[1],r[2]=n[2],r[3]=n[3],r[4]=n[4],r[5]=n[5],r}function m(r,n,l){var o=n[0]*l[0]+n[2]*l[1],s=n[1]*l[0]+n[3]*l[1],u=n[0]*l[2]+n[2]*l[3],f=n[1]*l[2]+n[3]*l[3],e=n[0]*l[4]+n[2]*l[5]+n[4],t=n[1]*l[4]+n[3]*l[5]+n[5];return r[0]=o,r[1]=s,r[2]=u,r[3]=f,r[4]=e,r[5]=t,r}function E(r,n,l){return r[0]=n[0],r[1]=n[1],r[2]=n[2],r[3]=n[3],r[4]=n[4]+l[0],r[5]=n[5]+l[1],r}function h(r,n,l){var o=n[0],s=n[2],u=n[4],f=n[1],e=n[3],t=n[5],i=Math.sin(l),c=Math.cos(l);return r[0]=o*c+f*i,r[1]=-o*i+f*c,r[2]=s*c+e*i,r[3]=-s*i+c*e,r[4]=c*u+i*t,r[5]=c*t-i*u,r}function a(r,n,l){var o=l[0],s=l[1];return r[0]=n[0]*o,r[1]=n[1]*s,r[2]=n[2]*o,r[3]=n[3]*s,r[4]=n[4]*o,r[5]=n[5]*s,r}function d(r,n){var l=n[0],o=n[2],s=n[4],u=n[1],f=n[3],e=n[5],t=l*f-u*o;return t?(t=1/t,r[0]=f*t,r[1]=-u*t,r[2]=-o*t,r[3]=l*t,r[4]=(o*e-f*s)*t,r[5]=(u*s-l*e)*t,r):null}function _(r){var n=D();return v(n,r),n}M.create=D,M.identity=y,M.copy=v,M.mul=m,M.translate=E,M.rotate=h,M.scale=a,M.invert=d,M.clone=_},function(H,M,g){var D=g(12),y=1e-4;function v(A){return A.replace(/^\s+/,"").replace(/\s+$/,"")}function m(A,x,C,S){var P=x[1]-x[0],b=C[1]-C[0];if(P===0)return b===0?C[0]:(C[0]+C[1])/2;if(S)if(P>0){if(A<=x[0])return C[0];if(A>=x[1])return C[1]}else{if(A>=x[0])return C[0];if(A<=x[1])return C[1]}else{if(A===x[0])return C[0];if(A===x[1])return C[1]}return(A-x[0])/P*b+C[0]}function E(A,x){switch(A){case"center":case"middle":A="50%";break;case"left":case"top":A="0%";break;case"right":case"bottom":A="100%";break}return typeof A=="string"?v(A).match(/%$/)?parseFloat(A)/100*x:parseFloat(A):A==null?NaN:+A}function h(A,x,C){return x==null&&(x=10),x=Math.min(Math.max(0,x),20),A=(+A).toFixed(x),C?A:+A}function a(A){return A.sort(function(x,C){return x-C}),A}function d(A){if(A=+A,isNaN(A))return 0;for(var x=1,C=0;Math.round(A*x)/x!==A;)x*=10,C++;return C}function _(A){var x=A.toString(),C=x.indexOf("e");if(C>0){var S=+x.slice(C+1);return S<0?-S:0}else{var P=x.indexOf(".");return P<0?0:x.length-1-P}}function r(A,x){var C=Math.log,S=Math.LN10,P=Math.floor(C(A[1]-A[0])/S),b=Math.round(C(Math.abs(x[1]-x[0]))/S),L=Math.min(Math.max(-P+b,0),20);return isFinite(L)?L:20}function n(A,x,C){if(!A[x])return 0;var S=D.reduce(A,function(G,V){return G+(isNaN(V)?0:V)},0);if(S===0)return 0;for(var P=Math.pow(10,C),b=D.map(A,function(G){return(isNaN(G)?0:G)/S*P*100}),L=P*100,R=D.map(b,function(G){return Math.floor(G)}),T=D.reduce(R,function(G,V){return G+V},0),N=D.map(b,function(G,V){return G-R[V]});T<L;){for(var I=Number.NEGATIVE_INFINITY,F=null,U=0,K=N.length;U<K;++U)N[U]>I&&(I=N[U],F=U);++R[F],N[F]=0,++T}return R[x]/P}var l=9007199254740991;function o(A){var x=Math.PI*2;return(A%x+x)%x}function s(A){return A>-y&&A<y}var u=/^(?:(\d{4})(?:[-\/](\d{1,2})(?:[-\/](\d{1,2})(?:[T ](\d{1,2})(?::(\d\d)(?::(\d\d)(?:[.,](\d+))?)?)?(Z|[\+\-]\d\d:?\d\d)?)?)?)?)?$/;function f(A){if(A instanceof Date)return A;if(typeof A=="string"){var x=u.exec(A);if(!x)return new Date(NaN);if(x[8]){var C=+x[4]||0;return x[8].toUpperCase()!=="Z"&&(C-=x[8].slice(0,3)),new Date(Date.UTC(+x[1],+(x[2]||1)-1,+x[3]||1,C,+(x[5]||0),+x[6]||0,+x[7]||0))}else return new Date(+x[1],+(x[2]||1)-1,+x[3]||1,+x[4]||0,+(x[5]||0),+x[6]||0,+x[7]||0)}else if(A==null)return new Date(NaN);return new Date(Math.round(A))}function e(A){return Math.pow(10,t(A))}function t(A){return Math.floor(Math.log(A)/Math.LN10)}function i(A,x){var C=t(A),S=Math.pow(10,C),P=A/S,b;return x?P<1.5?b=1:P<2.5?b=2:P<4?b=3:P<7?b=5:b=10:P<1?b=1:P<2?b=2:P<3?b=3:P<5?b=5:b=10,A=b*S,C>=-20?+A.toFixed(C<0?-C:0):A}function c(A){A.sort(function(T,N){return R(T,N,0)?-1:1});for(var x=-1/0,C=1,S=0;S<A.length;){for(var P=A[S].interval,b=A[S].close,L=0;L<2;L++)P[L]<=x&&(P[L]=x,b[L]=L?1:1-C),x=P[L],C=b[L];P[0]===P[1]&&b[0]*b[1]!==1?A.splice(S,1):S++}return A;function R(T,N,I){return T.interval[I]<N.interval[I]||T.interval[I]===N.interval[I]&&(T.close[I]-N.close[I]===(I?-1:1)||!I&&R(T,N,1))}}function p(A){return A-parseFloat(A)>=0}M.linearMap=m,M.parsePercent=E,M.round=h,M.asc=a,M.getPrecision=d,M.getPrecisionSafe=_,M.getPixelPrecision=r,M.getPercentWithPrecision=n,M.MAX_SAFE_INTEGER=l,M.remRadian=o,M.isRadianAroundZero=s,M.parseDate=f,M.quantity=e,M.nice=i,M.reformIntervals=c,M.isNumeric=p},function(H,M,g){"use strict";var D=g(5),y=g(11),v=g(21),m=function(){this._pool={},this._allocatedTextures=[]};m.prototype={constructor:m,get:function(r){var n=a(r);this._pool.hasOwnProperty(n)||(this._pool[n]=[]);var l=this._pool[n];if(!l.length){var o=new D.a(r);return this._allocatedTextures.push(o),o}return l.pop()},put:function(r){var n=a(r);this._pool.hasOwnProperty(n)||(this._pool[n]=[]);var l=this._pool[n];l.push(r)},clear:function(r){for(var n=0;n<this._allocatedTextures.length;n++)this._allocatedTextures[n].dispose(r);this._pool={},this._allocatedTextures=[]}};var E={width:512,height:512,type:y.a.UNSIGNED_BYTE,format:y.a.RGBA,wrapS:y.a.CLAMP_TO_EDGE,wrapT:y.a.CLAMP_TO_EDGE,minFilter:y.a.LINEAR_MIPMAP_LINEAR,magFilter:y.a.LINEAR,useMipmap:!0,anisotropic:1,flipY:!0,unpackAlignment:4,premultiplyAlpha:!1},h=Object.keys(E);function a(r){v.a.defaultsWithPropList(r,E,h),d(r);for(var n="",l=0;l<h.length;l++){var o=h[l],s=r[o].toString();n+=s}return n}function d(r){var n=_(r.width,r.height);r.format===y.a.DEPTH_COMPONENT&&(r.useMipmap=!1),(!n||!r.useMipmap)&&(r.minFilter==y.a.NEAREST_MIPMAP_NEAREST||r.minFilter==y.a.NEAREST_MIPMAP_LINEAR?r.minFilter=y.a.NEAREST:(r.minFilter==y.a.LINEAR_MIPMAP_LINEAR||r.minFilter==y.a.LINEAR_MIPMAP_NEAREST)&&(r.minFilter=y.a.LINEAR)),n||(r.wrapS=y.a.CLAMP_TO_EDGE,r.wrapT=y.a.CLAMP_TO_EDGE)}function _(r,n){return(r&r-1)===0&&(n&n-1)===0}M.a=m},function(H,M,g){"use strict";var D=g(0),y=g.n(D);M.a={getFilledRegions:function(v,m){var E=(v||[]).slice(),h;if(typeof m=="string"?(m=y.a.getMap(m),h=m&&m.geoJson):m&&m.features&&(h=m),!h)return console.error("Map "+m+" not exists. You can download map file on http://echarts.baidu.com/download-map.html"),h.features||console.error("Invalid GeoJSON for map3D"),[];for(var a={},d=h.features,_=0;_<E.length;_++)a[E[_].name]=E[_];for(var _=0;_<d.length;_++){var r=d[_].properties.name;a[r]||E.push({name:r})}return E},defaultOption:{show:!0,zlevel:-10,map:"",left:0,top:0,width:"100%",height:"100%",boxWidth:100,boxHeight:10,boxDepth:"auto",regionHeight:3,environment:"auto",groundPlane:{show:!1,color:"#aaa"},shading:"lambert",light:{main:{alpha:40,beta:30}},viewControl:{alpha:40,beta:0,distance:100,orthographicSize:60,minAlpha:5,minBeta:-80,maxBeta:80},label:{show:!1,distance:2,textStyle:{fontSize:20,color:"#000",backgroundColor:"rgba(255,255,255,0.7)",padding:3,borderRadius:4}},itemStyle:{color:"#fff",borderWidth:0,borderColor:"#333"},emphasis:{itemStyle:{color:"#639fc0"},label:{show:!0}}}}},function(H,M,g){"use strict";function D(E,h,a){var d=E[h];E[h]=E[a],E[a]=d}function y(E,h,a,d,_){var r=a,n=E[h];D(E,h,d);for(var l=a;l<d;l++)_(E[l],n)<0&&(D(E,l,r),r++);return D(E,d,r),r}function v(E,h,a,d){if(a<d){var _=Math.floor((a+d)/2),r=y(E,_,a,d,h);v(E,h,a,r-1),v(E,h,r+1,d)}}function m(){this._parts=[]}m.prototype.step=function(E,h,a){var d=E.length;if(a===0){this._parts=[],this._sorted=!1;var _=Math.floor(d/2);this._parts.push({pivot:_,left:0,right:d-1}),this._currentSortPartIdx=0}if(!this._sorted){var r=this._parts;if(r.length===0)return this._sorted=!0,!0;if(r.length<512){for(var n=0;n<r.length;n++)r[n].pivot=y(E,r[n].pivot,r[n].left,r[n].right,h);for(var l=[],n=0;n<r.length;n++){var o=r[n].left,s=r[n].pivot-1;s>o&&l.push({pivot:Math.floor((s+o)/2),left:o,right:s});var o=r[n].pivot+1,s=r[n].right;s>o&&l.push({pivot:Math.floor((s+o)/2),left:o,right:s})}r=this._parts=l}else for(var n=0;n<Math.floor(r.length/10);n++){var u=r.length-1-this._currentSortPartIdx;if(v(E,h,r[u].left,r[u].right),this._currentSortPartIdx++,this._currentSortPartIdx===r.length)return this._sorted=!0,!0}return!1}},m.sort=v,M.a=m},function(H,M,g){"use strict";var D=g(83),y=g(0),v=g.n(y),m=g(41),E=g.n(m),h=g(20),a=g(3);function d(o,s){var u=o.getBoxLayoutParams(),f=E.a.getLayoutRect(u,{width:s.getWidth(),height:s.getHeight()});f.y=s.getHeight()-f.y-f.height,this.viewGL.setViewport(f.x,f.y,f.width,f.height,s.getDevicePixelRatio());var e=this.getGeoBoundingRect(),t=e.width/e.height*(o.get("aspectScale")||.75),i=o.get("boxWidth"),c=o.get("boxDepth"),p=o.get("boxHeight");p==null&&(p=5),isNaN(i)&&isNaN(c)&&(i=100),isNaN(c)?c=i/t:isNaN(i)&&(i=c/t),this.setSize(i,p,c),this.regionHeight=o.get("regionHeight"),this.altitudeAxis&&this.altitudeAxis.setExtent(0,Math.max(p-this.regionHeight,0))}function _(o,s){var u=[1/0,-1/0];if(o.eachSeries(function(e){if(e.coordinateSystem===this&&e.type!=="series.map3D"){var t=e.getData(),i=e.coordDimToDataDim("alt")[0];if(i){var c=t.getDataExtent(i,!0);u[0]=Math.min(u[0],c[0]),u[1]=Math.max(u[1],c[1])}}},this),u&&isFinite(u[1]-u[0])){var f=v.a.helper.createScale(u,{type:"value",min:"dataMin",max:"dataMax"});this.altitudeAxis=new v.a.Axis("altitude",f),this.resize(this.model,s)}}var r=function(o){console.error("Map "+o+" not exists. You can download map file on http://echarts.baidu.com/download-map.html")},n=0,l={dimensions:D.a.prototype.dimensions,create:function(o,s){var u=[];if(!v.a.getMap)throw new Error("geo3D component depends on geo component");function f(e,t){var i=l.createGeo3D(e);e.__viewGL=e.__viewGL||new h.a,i.viewGL=e.__viewGL,e.coordinateSystem=i,i.model=e,u.push(i),i.resize=d,i.resize(e,s),i.update=_}return o.eachComponent("geo3D",function(e,t){f(e,t)}),o.eachSeriesByType("map3D",function(e,t){var i=e.get("coordinateSystem");i==null&&(i="geo3D"),i==="geo3D"&&f(e,t)}),o.eachSeries(function(e){if(e.get("coordinateSystem")==="geo3D"){if(e.type==="series.map3D")return;var t=e.getReferringComponents("geo3D")[0];if(t||(t=o.getComponent("geo3D")),!t)throw new Error('geo "'+a.a.firstNotNull(e.get("geo3DIndex"),e.get("geo3DId"),0)+'" not found');e.coordinateSystem=t.coordinateSystem}}),u},createGeo3D:function(o){var s=o.get("map"),u;if(typeof s=="string"?(u=s,s=v.a.getMap(s)):s&&s.features&&(s={geoJson:s}),s||r(s),!s.geoJson.features)throw new Error("Invalid GeoJSON for map3D");return u==null&&(u="GEO_ANONYMOUS_"+n++),new D.a(u+n++,u,s&&s.geoJson,s&&s.specialAreas,o.get("nameMap"))}};v.a.registerCoordinateSystem("geo3D",l),M.a=l},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(1),m=g.n(v),E=g(187),h=g.n(E),a=g(188),d=g.n(a),_=m.a.vec3,r=m.a.mat4,n=[h.a,d.a];function l(o,s,u,f,e){this.name=o,this.map=s,this.regionHeight=0,this.regions=[],this._nameCoordMap={},this.loadGeoJson(u,f,e),this.transform=r.identity(new Float64Array(16)),this.invTransform=r.identity(new Float64Array(16)),this.extrudeY=!0,this.altitudeAxis}l.prototype={constructor:l,type:"geo3D",dimensions:["lng","lat","alt"],containPoint:function(){},loadGeoJson:function(o,s,u){var f=y.a.parseGeoJSON||y.a.parseGeoJson;try{this.regions=o?f(o):[]}catch(A){throw`Invalid geoJson format
|
|
`+A}s=s||{},u=u||{};for(var e=this.regions,t={},i=0;i<e.length;i++){var c=e[i].name;c=u[c]||c,e[i].name=c,t[c]=e[i],this.addGeoCoord(c,e[i].center);var p=s[c];p&&e[i].transformTo(p.left,p.top,p.width,p.height)}this._regionsMap=t,this._geoRect=null,n.forEach(function(A){A(this)},this)},getGeoBoundingRect:function(){if(this._geoRect)return this._geoRect;for(var o,s=this.regions,u=0;u<s.length;u++){var f=s[u].getBoundingRect();o=o||f.clone(),o.union(f)}return this._geoRect=o||new y.a.graphic.BoundingRect(0,0,0,0)},addGeoCoord:function(o,s){this._nameCoordMap[o]=s},getRegion:function(o){return this._regionsMap[o]},getRegionByCoord:function(o){for(var s=this.regions,u=0;u<s.length;u++)if(s[u].contain(o))return s[u]},setSize:function(o,s,u){this.size=[o,s,u];var f=this.getGeoBoundingRect(),e=o/f.width,t=-u/f.height,i=-o/2-f.x*e,c=u/2-f.y*t,p=this.extrudeY?[i,0,c]:[i,c,0],A=this.extrudeY?[e,1,t]:[e,t,1],x=this.transform;r.identity(x),r.translate(x,x,p),r.scale(x,x,A),r.invert(this.invTransform,x)},dataToPoint:function(o,s){s=s||[];var u=this.extrudeY?1:2,f=this.extrudeY?2:1,e=o[2];return isNaN(e)&&(e=0),s[0]=o[0],s[f]=o[1],this.altitudeAxis?s[u]=this.altitudeAxis.dataToCoord(e):s[u]=0,s[u]+=this.regionHeight,_.transformMat4(s,s,this.transform),s},pointToData:function(o,s){}},M.a=l},function(H,M,g){"use strict";var D=g(77),y=g.n(D),v=g(76),m=g.n(v);function E(h){this.viewGL=h}E.prototype.reset=function(h,a){this._updateCamera(a.getWidth(),a.getHeight(),a.getDevicePixelRatio()),this._viewTransform=y.a.create(),this.updateTransform(h,a)},E.prototype.updateTransform=function(h,a){var d=h.coordinateSystem;d.getRoamTransform&&(y.a.invert(this._viewTransform,d.getRoamTransform()),this._setCameraTransform(this._viewTransform),a.getZr().refresh())},E.prototype.dataToPoint=function(h,a,d){d=h.dataToPoint(a,null,d);var _=this._viewTransform;_&&m.a.applyTransform(d,d,_)},E.prototype.removeTransformInPoint=function(h){return this._viewTransform&&m.a.applyTransform(h,h,this._viewTransform),h},E.prototype.getZoom=function(){if(this._viewTransform){var h=this._viewTransform;return 1/Math.max(Math.sqrt(h[0]*h[0]+h[1]*h[1]),Math.sqrt(h[2]*h[2]+h[3]*h[3]))}return 1},E.prototype._setCameraTransform=function(h){var a=this.viewGL.camera;a.position.set(h[4],h[5],0),a.scale.set(Math.sqrt(h[0]*h[0]+h[1]*h[1]),Math.sqrt(h[2]*h[2]+h[3]*h[3]),1)},E.prototype._updateCamera=function(h,a,d){this.viewGL.setViewport(0,0,h,a,d);var _=this.viewGL.camera;_.left=_.top=0,_.bottom=a,_.right=h,_.near=0,_.far=100},M.a=E},function(H,M,g){(function(D){var y;typeof window!="undefined"?y=window.__DEV__:typeof D!="undefined"&&(y=D.__DEV__),typeof y=="undefined"&&(y=!0);var v=y;M.__DEV__=v}).call(M,g(243))},function(H,M,g){"use strict";var D=g(13),y=g(0),v=g.n(y),m=g(33),E=g(1),h=g.n(E),a=h.a.vec2,d=[[0,0],[1,1]],_=D.a.extend(function(){return{segmentScale:4,dynamic:!0,useNativeLine:!0,attributes:{position:new D.a.Attribute("position","float",2,"POSITION"),normal:new D.a.Attribute("normal","float",2),offset:new D.a.Attribute("offset","float",1),color:new D.a.Attribute("color","float",4,"COLOR")}}},{resetOffset:function(){this._vertexOffset=0,this._faceOffset=0,this._itemVertexOffsets=[]},setVertexCount:function(r){var n=this.attributes;this.vertexCount!==r&&(n.position.init(r),n.color.init(r),this.useNativeLine||(n.offset.init(r),n.normal.init(r)),r>65535?this.indices instanceof Uint16Array&&(this.indices=new Uint32Array(this.indices)):this.indices instanceof Uint32Array&&(this.indices=new Uint16Array(this.indices)))},setTriangleCount:function(r){this.triangleCount!==r&&(r===0?this.indices=null:this.indices=this.vertexCount>65535?new Uint32Array(r*3):new Uint16Array(r*3))},_getCubicCurveApproxStep:function(r,n,l,o){var s=a.dist(r,n)+a.dist(l,n)+a.dist(o,l),u=1/(s+1)*this.segmentScale;return u},getCubicCurveVertexCount:function(r,n,l,o){var s=this._getCubicCurveApproxStep(r,n,l,o),u=Math.ceil(1/s);return this.useNativeLine?u*2:u*2+2},getCubicCurveTriangleCount:function(r,n,l,o){var s=this._getCubicCurveApproxStep(r,n,l,o),u=Math.ceil(1/s);return this.useNativeLine?0:u*2},getLineVertexCount:function(){return this.getPolylineVertexCount(d)},getLineTriangleCount:function(){return this.getPolylineTriangleCount(d)},getPolylineVertexCount:function(r){var n;if(typeof r=="number")n=r;else{var l=typeof r[0]!="number";n=l?r.length:r.length/2}return this.useNativeLine?(n-1)*2:(n-1)*2+2},getPolylineTriangleCount:function(r){var n;if(typeof r=="number")n=r;else{var l=typeof r[0]!="number";n=l?r.length:r.length/2}return this.useNativeLine?0:(n-1)*2},addCubicCurve:function(r,n,l,o,s,u){u==null&&(u=1);for(var f=r[0],e=r[1],t=n[0],i=n[1],c=l[0],p=l[1],A=o[0],x=o[1],C=this._getCubicCurveApproxStep(r,n,l,o),S=C*C,P=S*C,b=3*C,L=3*S,R=6*S,T=6*P,N=f-t*2+c,I=e-i*2+p,F=(t-c)*3-f+A,U=(i-p)*3-e+x,K=f,G=e,V=(t-f)*b+N*L+F*P,X=(i-e)*b+I*L+U*P,ee=N*R+F*T,oe=I*R+U*T,ue=F*T,Ae=U*T,fe=0,he=0,ve=Math.ceil(1/C),me=new Float32Array((ve+1)*3),me=[],Te=0,he=0;he<ve+1;he++)me[Te++]=K,me[Te++]=G,K+=V,G+=X,V+=ee,X+=oe,ee+=ue,oe+=Ae,fe+=C,fe>1&&(K=V>0?Math.min(K,A):Math.max(K,A),G=X>0?Math.min(G,x):Math.max(G,x));this.addPolyline(me,s,u)},addLine:function(r,n,l,o){this.addPolyline([r,n],l,o)},addPolyline:function(){var r=a.create(),n=a.create(),l=a.create(),o=a.create(),s=[],u=[],f=[];return function(e,t,i,c,p){if(e.length){var A=typeof e[0]!="number";if(p==null&&(p=A?e.length:e.length/2),!(p<2)){c==null&&(c=0),i==null&&(i=1),this._itemVertexOffsets.push(this._vertexOffset);for(var x=A?typeof t[0]!="number":t.length/4===p,C=this.attributes.position,S=this.attributes.color,P=this.attributes.offset,b=this.attributes.normal,L=this.indices,R=this._vertexOffset,T,N=0;N<p;N++){if(A)s=e[N+c],x?T=t[N+c]:T=t;else{var I=N*2+c;if(s=s||[],s[0]=e[I],s[1]=e[I+1],x){var F=N*4+c;T=T||[],T[0]=t[F],T[1]=t[F+1],T[2]=t[F+2],T[3]=t[F+3]}else T=t}if(this.useNativeLine)N>1&&(C.copy(R,R-1),S.copy(R,R-1),R++);else{var U;if(N<p-1){if(A)a.copy(u,e[N+1]);else{var I=(N+1)*2+c;u=u||[],u[0]=e[I],u[1]=e[I+1]}if(N>0){a.sub(r,s,f),a.sub(n,u,s),a.normalize(r,r),a.normalize(n,n),a.add(o,r,n),a.normalize(o,o);var K=i/2*Math.min(1/a.dot(r,o),2);l[0]=-o[1],l[1]=o[0],U=K}else a.sub(r,u,s),a.normalize(r,r),l[0]=-r[1],l[1]=r[0],U=i/2}else a.sub(r,s,f),a.normalize(r,r),l[0]=-r[1],l[1]=r[0],U=i/2;b.set(R,l),b.set(R+1,l),P.set(R,U),P.set(R+1,-U),a.copy(f,s),C.set(R,s),C.set(R+1,s),S.set(R,T),S.set(R+1,T),R+=2}if(this.useNativeLine)S.set(R,T),C.set(R,s),R++;else if(N>0){var G=this._faceOffset*3,L=this.indices;L[G]=R-4,L[G+1]=R-3,L[G+2]=R-2,L[G+3]=R-3,L[G+4]=R-1,L[G+5]=R-2,this._faceOffset+=2}}this._vertexOffset=R}}}}(),setItemColor:function(r,n){for(var l=this._itemVertexOffsets[r],o=r<this._itemVertexOffsets.length-1?this._itemVertexOffsets[r+1]:this._vertexOffset,s=l;s<o;s++)this.attributes.color.set(s,n);this.dirty("color")}});v.a.util.defaults(_.prototype,m.a),M.a=_},function(H,M,g){"use strict";Object.defineProperty(M,"__esModule",{value:!0});var D=g(88),y=g(133),v=g(183),m=g(189),E=g(195),h=g(202),a=g(209),d=g(213),_=g(220),r=g(226),n=g(229),l=g(233),o=g(236),s=g(239),u=g(253),f=g(259)},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(89),m=g(90),E=g(101),h=g(2),a={version:"1.0.0",dependencies:{echarts:"4.0.0",claygl:"1.0.0"}},d=a.dependencies;function _(s){throw new Error(s+" version is too old, needs "+d[s]+" or higher")}function r(s,u){s.replace(".","")-0<d[u].replace(".","")-0&&_(u),console.log("Loaded "+u+", version "+s)}r(v.a,"claygl"),r(y.a.version,"echarts");function n(s){this._layers={},this._zr=s}n.prototype.update=function(s,u){var f=this,e=u.getZr();if(!e.getWidth()||!e.getHeight()){console.warn("Dom has no width or height");return}function t(p){var A;p.coordinateSystem&&p.coordinateSystem.model,A=p.get("zlevel");var x=f._layers,C=x[A];if(!C){if(C=x[A]=new m.a("gl-"+A,e),e.painter.isSingleCanvas()){C.virtual=!0;var S=new y.a.graphic.Image({z:1e4,style:{image:C.renderer.canvas},silent:!0});C.__hostImage=S,e.add(S)}e.painter.insertLayer(A,C)}return C.__hostImage&&C.__hostImage.setStyle({width:C.renderer.getWidth(),height:C.renderer.getHeight()}),C}function i(p,A){p&&p.traverse(function(x){x.isRenderable&&x.isRenderable()&&(x.ignorePicking=x.$ignorePicking!=null?x.$ignorePicking:A)})}for(var c in this._layers)this._layers[c].removeViewsAll();s.eachComponent(function(p,A){if(p!=="series"){var x=u.getViewOfComponentModel(A),C=A.coordinateSystem;if(x.__ecgl__){var S;if(C){if(!C.viewGL){console.error("Can't find viewGL in coordinateSystem of component "+A.id);return}S=C.viewGL}else{if(!A.viewGL){console.error("Can't find viewGL of component "+A.id);return}S=C.viewGL}var S=C.viewGL,P=t(A);P.addView(S),x.afterRender&&x.afterRender(A,s,u,P),i(x.groupGL,A.get("silent"))}}}),s.eachSeries(function(p){var A=u.getViewOfSeriesModel(p),x=p.coordinateSystem;if(A.__ecgl__){if(x&&!x.viewGL&&!A.viewGL){console.error("Can't find viewGL of series "+A.id);return}var C=x&&x.viewGL||A.viewGL,S=t(p);S.addView(C),A.afterRender&&A.afterRender(p,s,u,S),i(A.groupGL,p.get("silent"))}})};var l=y.a.init;y.a.init=function(){var s=l.apply(this,arguments);return s.getZr().painter.getRenderedCanvas=function(u){if(u=u||{},this._singleCanvas)return this._layers[0].dom;var f=document.createElement("canvas"),e=u.pixelRatio||this.dpr;f.width=this.getWidth()*e,f.height=this.getHeight()*e;var t=f.getContext("2d");t.dpr=e,t.clearRect(0,0,f.width,f.height),u.backgroundColor&&(t.fillStyle=u.backgroundColor,t.fillRect(0,0,f.width,f.height));var i=this.storage.getDisplayList(!0),c={},p,A=this;function x(b,L){var R=A._zlevelList;b==null&&(b=-1/0);for(var T,N=0;N<R.length;N++){var I=R[N],F=A._layers[I];if(!F.__builtin__&&I>b&&I<L){T=F;break}}T&&T.renderToCanvas&&(t.save(),T.renderToCanvas(t),t.restore())}for(var C={ctx:t},S=0;S<i.length;S++){var P=i[S];P.zlevel!==p&&(x(p,P.zlevel),p=P.zlevel),this._doPaintEl(P,C,!0,c)}return x(p,1/0),f},s},y.a.registerPostUpdate(function(s,u){var f=u.getZr(),e=f.__egl=f.__egl||new n(f);e.update(s,u)}),y.a.registerPreprocessor(E.a),y.a.graphicGL=h.a;var o=n},function(H,M,g){"use strict";M.a="1.0.0"},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(46),m=g(100),E=g(6),h=g(47),a=g(65),d=g.n(a),_=function(f,e){this.id=f,this.zr=e;try{this.renderer=new v.a({clearBit:0,devicePixelRatio:e.painter.dpr,preserveDrawingBuffer:!0,premultipliedAlpha:!0}),this.renderer.resize(e.painter.getWidth(),e.painter.getHeight())}catch(i){this.renderer=null,this.dom=document.createElement("div"),this.dom.style.cssText="position:absolute; left: 0; top: 0; right: 0; bottom: 0;",this.dom.className="ecgl-nowebgl",this.dom.innerHTML="Sorry, your browser does support WebGL",console.error(i);return}this.onglobalout=this.onglobalout.bind(this),e.on("globalout",this.onglobalout),this.dom=this.renderer.canvas;var t=this.dom.style;t.position="absolute",t.left="0",t.top="0",this.views=[],this._picking=new m.a({renderer:this.renderer}),this._viewsToDispose=[],this._accumulatingId=0,this._zrEventProxy=new y.a.graphic.Rect({shape:{x:-1,y:-1,width:2,height:2},__isGLToZRProxy:!0})};_.prototype.addView=function(f){if(f.layer!==this){var e=this._viewsToDispose.indexOf(f);e>=0&&this._viewsToDispose.splice(e,1),this.views.push(f),f.layer=this;var t=this.zr;f.scene.traverse(function(i){i.__zr=t,i.addAnimatorsToZr&&i.addAnimatorsToZr(t)})}};function r(f){var e=f.__zr;f.__zr=null,e&&f.removeAnimatorsFromZr&&f.removeAnimatorsFromZr(e)}_.prototype.removeView=function(f){if(f.layer===this){var e=this.views.indexOf(f);e>=0&&(this.views.splice(e,1),f.scene.traverse(r,this),f.layer=null,this._viewsToDispose.push(f))}},_.prototype.removeViewsAll=function(){this.views.forEach(function(f){f.scene.traverse(r,this),f.layer=null,this._viewsToDispose.push(f)},this),this.views.length=0},_.prototype.resize=function(f,e){var t=this.renderer;t.resize(f,e)},_.prototype.clear=function(){var f=this.renderer.gl;f.clearColor(0,0,0,0),f.depthMask(!0),f.colorMask(!0,!0,!0,!0),f.clear(f.DEPTH_BUFFER_BIT|f.COLOR_BUFFER_BIT)},_.prototype.clearDepth=function(){var f=this.renderer.gl;f.clear(f.DEPTH_BUFFER_BIT)},_.prototype.clearColor=function(){var f=this.renderer.gl;f.clearColor(0,0,0,0),f.clear(f.COLOR_BUFFER_BIT)},_.prototype.needsRefresh=function(){this.zr.refresh()},_.prototype.refresh=function(){for(var f=0;f<this.views.length;f++)this.views[f].prepareRender();this._doRender(!1),this._trackAndClean();for(var f=0;f<this._viewsToDispose.length;f++)this._viewsToDispose[f].dispose(this.renderer);this._viewsToDispose.length=0,this._startAccumulating()},_.prototype.renderToCanvas=function(f){this._startAccumulating(!0),f.drawImage(this.dom,0,0,f.canvas.width,f.canvas.height)},_.prototype._doRender=function(f){this.clear(),this.renderer.saveViewport();for(var e=0;e<this.views.length;e++)this.views[e].render(this.renderer,f);this.renderer.restoreViewport()},_.prototype._stopAccumulating=function(){this._accumulatingId=0,clearTimeout(this._accumulatingTimeout)};var n=1;_.prototype._startAccumulating=function(f){var e=this;this._stopAccumulating();for(var t=!1,i=0;i<this.views.length;i++)t=this.views[i].needsAccumulate()||t;if(!t)return;function c(p){if(!(!e._accumulatingId||p!==e._accumulatingId)){for(var A=!0,x=0;x<e.views.length;x++)A=e.views[x].isAccumulateFinished()&&t;A||(e._doRender(!0),f?c(p):d()(function(){c(p)}))}}this._accumulatingId=n++,f?c(e._accumulatingId):this._accumulatingTimeout=setTimeout(function(){c(e._accumulatingId)},50)},_.prototype._trackAndClean=function(){var f=[],e=[];this._textureList&&(l(this._textureList),l(this._geometriesList));for(var t=0;t<this.views.length;t++)u(this.views[t].scene,f,e);this._textureList&&(o(this.renderer,this._textureList),o(this.renderer,this._geometriesList)),this._textureList=f,this._geometriesList=e};function l(f){for(var e=0;e<f.length;e++)f[e].__used__=0}function o(f,e){for(var t=0;t<e.length;t++)e[t].__used__||e[t].dispose(f)}function s(f,e){f.__used__=f.__used__||0,f.__used__++,f.__used__===1&&e.push(f)}function u(f,e,t){function i(p){for(var A,x,C=0;C<p.length;C++){var S=p[C],P=S.geometry,b=S.material;if(b!==A)for(var L=b.getTextureUniforms(),R=0;R<L.length;R++){var T=L[R],N=b.uniforms[T].value;if(N){if(N instanceof E.a)s(N,e);else if(N instanceof Array)for(var I=0;I<N.length;I++)N[I]instanceof E.a&&s(N[I],e)}}P!==x&&s(P,t),A=b,x=P}}i(f.opaqueList),i(f.transparentList);for(var c=0;c<f.lights.length;c++)f.lights[c].cubemap&&s(f.lights[c].cubemap,e)}_.prototype.dispose=function(){this._stopAccumulating(),this.renderer.disposeScene(this.scene),this.zr.off("globalout",this.onglobalout)},_.prototype.onmousedown=function(f){if(!(f.target&&f.target.__isGLToZRProxy)){f=f.event;var e=this.pickObject(f.offsetX,f.offsetY);e&&(this._dispatchEvent("mousedown",f,e),this._dispatchDataEvent("mousedown",f,e)),this._downX=f.offsetX,this._downY=f.offsetY}},_.prototype.onmousemove=function(f){if(!(f.target&&f.target.__isGLToZRProxy)){f=f.event;var e=this.pickObject(f.offsetX,f.offsetY),t=e&&e.target,i=this._hovered;this._hovered=e,i&&t!==i.target&&(i.relatedTarget=t,this._dispatchEvent("mouseout",f,i),this.zr.setCursorStyle("default")),this._dispatchEvent("mousemove",f,e),e&&(this.zr.setCursorStyle("pointer"),(!i||t!==i.target)&&this._dispatchEvent("mouseover",f,e)),this._dispatchDataEvent("mousemove",f,e)}},_.prototype.onmouseup=function(f){if(!(f.target&&f.target.__isGLToZRProxy)){f=f.event;var e=this.pickObject(f.offsetX,f.offsetY);e&&(this._dispatchEvent("mouseup",f,e),this._dispatchDataEvent("mouseup",f,e)),this._upX=f.offsetX,this._upY=f.offsetY}},_.prototype.onclick=_.prototype.dblclick=function(f){if(!(f.target&&f.target.__isGLToZRProxy)){var e=this._upX-this._downX,t=this._upY-this._downY;if(!(Math.sqrt(e*e+t*t)>20)){f=f.event;var i=this.pickObject(f.offsetX,f.offsetY);i&&(this._dispatchEvent(f.type,f,i),this._dispatchDataEvent(f.type,f,i));var c=this._clickToSetFocusPoint(f);if(c){var p=c.view.setDOFFocusOnPoint(c.distance);p&&this.zr.refresh()}}}},_.prototype._clickToSetFocusPoint=function(f){for(var e=this.renderer,t=e.viewport,i=this.views.length-1;i>=0;i--){var c=this.views[i];if(c.hasDOF()&&c.containPoint(f.offsetX,f.offsetY)){this._picking.scene=c.scene,this._picking.camera=c.camera,e.viewport=c.viewport;var p=this._picking.pick(f.offsetX,f.offsetY,!0);if(p)return p.view=c,p}}e.viewport=t},_.prototype.onglobalout=function(f){var e=this._hovered;e&&this._dispatchEvent("mouseout",f,{target:e.target})},_.prototype.pickObject=function(f,e){for(var t=[],i=this.renderer,c=i.viewport,p=0;p<this.views.length;p++){var A=this.views[p];A.containPoint(f,e)&&(this._picking.scene=A.scene,this._picking.camera=A.camera,i.viewport=A.viewport,this._picking.pickAll(f,e,t))}return i.viewport=c,t.sort(function(x,C){return x.distance-C.distance}),t[0]},_.prototype._dispatchEvent=function(f,e,t){t||(t={});var i=t.target;for(t.cancelBubble=!1,t.event=e,t.type=f,t.offsetX=e.offsetX,t.offsetY=e.offsetY;i&&(i.trigger(f,t),i=i.getParent(),!t.cancelBubble););this._dispatchToView(f,t)},_.prototype._dispatchDataEvent=function(f,e,t){var i=t&&t.target,c=i&&i.dataIndex,p=i&&i.seriesIndex,A=i&&i.eventData,x=!1,C=this._zrEventProxy;C.position=[e.offsetX,e.offsetY],C.update();var S={target:C};f==="mousemove"&&(c!=null?c!==this._lastDataIndex&&(parseInt(this._lastDataIndex,10)>=0&&(C.dataIndex=this._lastDataIndex,C.seriesIndex=this._lastSeriesIndex,this.zr.handler.dispatchToElement(S,"mouseout",e)),x=!0):A!=null&&A!==this._lastEventData&&(this._lastEventData!=null&&(C.eventData=this._lastEventData,this.zr.handler.dispatchToElement(S,"mouseout",e)),x=!0),this._lastEventData=A,this._lastDataIndex=c,this._lastSeriesIndex=p),C.eventData=A,C.dataIndex=c,C.seriesIndex=p,(A!=null||parseInt(c,10)>=0)&&(this.zr.handler.dispatchToElement(S,f,e),x&&this.zr.handler.dispatchToElement(S,"mouseover",e))},_.prototype._dispatchToView=function(f,e){for(var t=0;t<this.views.length;t++)this.views[t].containPoint(e.offsetX,e.offsetY)&&this.views[t].trigger(f,e)},y.a.util.extend(_.prototype,h.a),M.a=_},function(H,M,g){"use strict";function D(m,E,h){typeof E=="object"&&(h=E,E=null);var a=this,d;if(!(m instanceof Function)){d=[];for(var _ in m)m.hasOwnProperty(_)&&d.push(_)}var r=function(l){if(a.apply(this,arguments),m instanceof Function?y(this,m.call(this,l)):v(this,m,d),this.constructor===r)for(var o=r.__initializers__,s=0;s<o.length;s++)o[s].apply(this,arguments)};r.__super__=a,a.__initializers__?r.__initializers__=a.__initializers__.slice():r.__initializers__=[],E&&r.__initializers__.push(E);var n=function(){};return n.prototype=a.prototype,r.prototype=new n,r.prototype.constructor=r,y(r.prototype,h),r.extend=a.extend,r.derive=a.extend,r}function y(m,E){if(E)for(var h in E)E.hasOwnProperty(h)&&(m[h]=E[h])}function v(m,E,h){for(var a=0;a<h.length;a++){var d=h[a];m[d]=E[d]}}M.a={extend:D,derive:D}},function(H,M,g){"use strict";var D=["OES_texture_float","OES_texture_half_float","OES_texture_float_linear","OES_texture_half_float_linear","OES_standard_derivatives","OES_vertex_array_object","OES_element_index_uint","WEBGL_compressed_texture_s3tc","WEBGL_depth_texture","EXT_texture_filter_anisotropic","EXT_shader_texture_lod","WEBGL_draw_buffers","EXT_frag_depth","EXT_sRGB"],y=["MAX_TEXTURE_SIZE","MAX_CUBE_MAP_TEXTURE_SIZE"];function v(m){for(var E={},h={},a=0;a<D.length;a++){var d=D[a];r(d)}for(var a=0;a<y.length;a++){var _=y[a];h[_]=m.getParameter(m[_])}this.getExtension=function(n){return n in E||r(n),E[n]},this.getParameter=function(n){return h[n]};function r(n){var l=m.getExtension(n);l||(l=m.getExtension("MOZ_"+n)),l||(l=m.getExtension("WEBKIT_"+n)),E[n]=l}}M.a=v},function(H,M,g){"use strict";var D=g(94),y={},v={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function m(t){return t=Math.round(t),t<0?0:t>255?255:t}function E(t){return t=Math.round(t),t<0?0:t>360?360:t}function h(t){return t<0?0:t>1?1:t}function a(t){return t.length&&t.charAt(t.length-1)==="%"?m(parseFloat(t)/100*255):m(parseInt(t,10))}function d(t){return t.length&&t.charAt(t.length-1)==="%"?h(parseFloat(t)/100):h(parseFloat(t))}function _(t,i,c){return c<0?c+=1:c>1&&(c-=1),c*6<1?t+(i-t)*c*6:c*2<1?i:c*3<2?t+(i-t)*(2/3-c)*6:t}function r(t,i,c){return t+(i-t)*c}function n(t,i,c,p,A){return t[0]=i,t[1]=c,t[2]=p,t[3]=A,t}function l(t,i){return t[0]=i[0],t[1]=i[1],t[2]=i[2],t[3]=i[3],t}var o=new D.a(20),s=null;function u(t,i){s&&l(s,i),s=o.put(t,s||i.slice())}y.parse=function(t,i){if(t){i=i||[];var c=o.get(t);if(c)return l(i,c);t=t+"";var p=t.replace(/ /g,"").toLowerCase();if(p in v)return l(i,v[p]),u(t,i),i;if(p.charAt(0)==="#"){if(p.length===4){var A=parseInt(p.substr(1),16);if(!(A>=0&&A<=4095)){n(i,0,0,0,1);return}return n(i,(A&3840)>>4|(A&3840)>>8,A&240|(A&240)>>4,A&15|(A&15)<<4,1),u(t,i),i}else if(p.length===7){var A=parseInt(p.substr(1),16);if(!(A>=0&&A<=16777215)){n(i,0,0,0,1);return}return n(i,(A&16711680)>>16,(A&65280)>>8,A&255,1),u(t,i),i}return}var x=p.indexOf("("),C=p.indexOf(")");if(x!==-1&&C+1===p.length){var S=p.substr(0,x),P=p.substr(x+1,C-(x+1)).split(","),b=1;switch(S){case"rgba":if(P.length!==4){n(i,0,0,0,1);return}b=d(P.pop());case"rgb":if(P.length!==3){n(i,0,0,0,1);return}return n(i,a(P[0]),a(P[1]),a(P[2]),b),u(t,i),i;case"hsla":if(P.length!==4){n(i,0,0,0,1);return}return P[3]=d(P[3]),f(P,i),u(t,i),i;case"hsl":if(P.length!==3){n(i,0,0,0,1);return}return f(P,i),u(t,i),i;default:return}}n(i,0,0,0,1)}},y.parseToFloat=function(t,i){if(i=y.parse(t,i),!!i)return i[0]/=255,i[1]/=255,i[2]/=255,i};function f(t,i){var c=(parseFloat(t[0])%360+360)%360/360,p=d(t[1]),A=d(t[2]),x=A<=.5?A*(p+1):A+p-A*p,C=A*2-x;return i=i||[],n(i,m(_(C,x,c+1/3)*255),m(_(C,x,c)*255),m(_(C,x,c-1/3)*255),1),t.length===4&&(i[3]=t[3]),i}function e(t){if(t){var i=t[0]/255,c=t[1]/255,p=t[2]/255,A=Math.min(i,c,p),x=Math.max(i,c,p),C=x-A,S=(x+A)/2,P,b;if(C===0)P=0,b=0;else{S<.5?b=C/(x+A):b=C/(2-x-A);var L=((x-i)/6+C/2)/C,R=((x-c)/6+C/2)/C,T=((x-p)/6+C/2)/C;i===x?P=T-R:c===x?P=1/3+L-T:p===x&&(P=2/3+R-L),P<0&&(P+=1),P>1&&(P-=1)}var N=[P*360,b,S];return t[3]!=null&&N.push(t[3]),N}}y.lift=function(t,i){var c=y.parse(t);if(c){for(var p=0;p<3;p++)i<0?c[p]=c[p]*(1-i)|0:c[p]=(255-c[p])*i+c[p]|0;return y.stringify(c,c.length===4?"rgba":"rgb")}},y.toHex=function(t){var i=y.parse(t);if(i)return((1<<24)+(i[0]<<16)+(i[1]<<8)+ +i[2]).toString(16).slice(1)},y.fastLerp=function(t,i,c){if(!(!(i&&i.length)||!(t>=0&&t<=1))){c=c||[];var p=t*(i.length-1),A=Math.floor(p),x=Math.ceil(p),C=i[A],S=i[x],P=p-A;return c[0]=m(r(C[0],S[0],P)),c[1]=m(r(C[1],S[1],P)),c[2]=m(r(C[2],S[2],P)),c[3]=h(r(C[3],S[3],P)),c}},y.fastMapToColor=y.fastLerp,y.lerp=function(t,i,c){if(!(!(i&&i.length)||!(t>=0&&t<=1))){var p=t*(i.length-1),A=Math.floor(p),x=Math.ceil(p),C=y.parse(i[A]),S=y.parse(i[x]),P=p-A,b=y.stringify([m(r(C[0],S[0],P)),m(r(C[1],S[1],P)),m(r(C[2],S[2],P)),h(r(C[3],S[3],P))],"rgba");return c?{color:b,leftIndex:A,rightIndex:x,value:p}:b}},y.mapToColor=y.lerp,y.modifyHSL=function(t,i,c,p){if(t=y.parse(t),t)return t=e(t),i!=null&&(t[0]=E(i)),c!=null&&(t[1]=d(c)),p!=null&&(t[2]=d(p)),y.stringify(f(t),"rgba")},y.modifyAlpha=function(t,i){if(t=y.parse(t),t&&i!=null)return t[3]=h(i),y.stringify(t,"rgba")},y.stringify=function(t,i){if(!(!t||!t.length)){var c=t[0]+","+t[1]+","+t[2];return(i==="rgba"||i==="hsva"||i==="hsla")&&(c+=","+t[3]),i+"("+c+")"}},M.a=y},function(H,M,g){"use strict";var D=g(95),y=function(v){this._list=new D.a,this._map={},this._maxSize=v||10};y.prototype.setMaxSize=function(v){this._maxSize=v},y.prototype.put=function(v,m){if(typeof this._map[v]=="undefined"){var E=this._list.length();if(E>=this._maxSize&&E>0){var h=this._list.head;this._list.remove(h),delete this._map[h.key]}var a=this._list.insert(m);a.key=v,this._map[v]=a}},y.prototype.get=function(v){var m=this._map[v];if(typeof m!="undefined")return m!==this._list.tail&&(this._list.remove(m),this._list.insertEntry(m)),m.value},y.prototype.remove=function(v){var m=this._map[v];typeof m!="undefined"&&(delete this._map[v],this._list.remove(m))},y.prototype.clear=function(){this._list.clear(),this._map={}},M.a=y},function(H,M,g){"use strict";var D=function(){this.head=null,this.tail=null,this._length=0};D.prototype.insert=function(y){var v=new D.Entry(y);return this.insertEntry(v),v},D.prototype.insertAt=function(y,v){if(!(y<0)){for(var m=this.head,E=0;m&&E!=y;)m=m.next,E++;if(m){var h=new D.Entry(v),a=m.prev;a?(a.next=h,h.prev=a):this.head=h,h.next=m,m.prev=h}else this.insert(v)}},D.prototype.insertBeforeEntry=function(y,v){var m=new D.Entry(y),E=v.prev;E?(E.next=m,m.prev=E):this.head=m,m.next=v,v.prev=m,this._length++},D.prototype.insertEntry=function(y){this.head?(this.tail.next=y,y.prev=this.tail,this.tail=y):this.head=this.tail=y,this._length++},D.prototype.remove=function(y){var v=y.prev,m=y.next;v?v.next=m:this.head=m,m?m.prev=v:this.tail=v,y.next=y.prev=null,this._length--},D.prototype.removeAt=function(y){if(!(y<0)){for(var v=this.head,m=0;v&&m!=y;)v=v.next,m++;if(v)return this.remove(v),v.value}},D.prototype.getHead=function(){if(this.head)return this.head.value},D.prototype.getTail=function(){if(this.tail)return this.tail.value},D.prototype.getAt=function(y){if(!(y<0)){for(var v=this.head,m=0;v&&m!=y;)v=v.next,m++;return v.value}},D.prototype.indexOf=function(y){for(var v=this.head,m=0;v;){if(v.value===y)return m;v=v.next,m++}},D.prototype.length=function(){return this._length},D.prototype.isEmpty=function(){return this._length===0},D.prototype.forEach=function(y,v){for(var m=this.head,E=0,h=typeof v!="undefined";m;)h?y.call(v,m.value,E):y(m.value,E),m=m.next,E++},D.prototype.clear=function(){this.tail=this.head=null,this._length=0},D.Entry=function(y){this.value=y,this.next=null,this.prev=null},M.a=D},function(H,M,g){"use strict";var D=g(97),y=/for\s*?\(int\s*?_idx_\s*\=\s*([\w-]+)\;\s*_idx_\s*<\s*([\w-]+);\s*_idx_\s*\+\+\s*\)\s*\{\{([\s\S]+?)(?=\}\})\}\}/g;function v(d,_,r){function n(s,u,f,e){var t="";isNaN(u)&&(u in _?u=_[u]:u=l[u]),isNaN(f)&&(f in _?f=_[f]:f=l[f]);for(var i=parseInt(u);i<parseInt(f);i++)t+="{"+e.replace(/float\s*\(\s*_idx_\s*\)/g,i.toFixed(1)).replace(/_idx_/g,i)+"}";return t}var l={};for(var o in r)l[o+"_COUNT"]=r[o];return d.replace(y,n)}function m(d,_,r){var n=[];if(_)for(var l in _){var o=_[l];o>0&&n.push("#define "+l.toUpperCase()+"_COUNT "+o)}if(r)for(var s=0;s<r.length;s++){var u=r[s];n.push("#define "+u.toUpperCase()+"_ENABLED")}for(var u in d){var f=d[u];f===null?n.push("#define "+u):n.push("#define "+u+" "+f.toString())}return n.join(`
|
|
`)}function E(d){for(var _=[],r=0;r<d.length;r++)_.push("#extension GL_"+d[r]+" : enable");return _.join(`
|
|
`)}function h(d){return["precision",d,"float"].join(" ")+`;
|
|
`+["precision",d,"int"].join(" ")+`;
|
|
`+["precision",d,"sampler2D"].join(" ")+`;
|
|
`}function a(d){this._renderer=d,this._cache={}}a.prototype.getProgram=function(d,_,r){var n=this._cache,l="s"+_.shader.shaderID+"m"+_.programKey;r&&(l+="se"+r.getProgramKey(d.lightGroup)),d.isSkinnedMesh()&&(l+=","+d.joints.length);var C=n[l];if(C)return C;var o=r?r.getLightsNumbers(d.lightGroup):{},s=this._renderer,u=s.gl,f=_.getEnabledTextures(),e="";d.isSkinnedMesh()&&(e=`
|
|
`+m({SKINNING:null,JOINT_COUNT:d.joints.length})+`
|
|
`);var t=e+m(_.vertexDefines,o,f),i=e+m(_.fragmentDefines,o,f),c=t+`
|
|
`+_.shader.vertex,p=E(["OES_standard_derivatives","EXT_shader_texture_lod"])+`
|
|
`+h(_.precision)+`
|
|
`+i+`
|
|
`+_.shader.fragment,A=v(c,_.vertexDefines,o),x=v(p,_.fragmentDefines,o),C=new D.a;C.uniformSemantics=_.shader.uniformSemantics,C.attributes=_.shader.attributes;var S=C.buildProgram(u,_.shader,A,x);return C.__error=S,n[l]=C,C},M.a=a},function(H,M,g){"use strict";var D=g(18),y=g(8),v=1,m=2,E=3,h={};function a(r){for(var n=r.split(`
|
|
`),l=0,o=n.length;l<o;l++)n[l]=l+1+": "+n[l];return n.join(`
|
|
`)}function d(r,n,l){if(!r.getShaderParameter(n,r.COMPILE_STATUS))return[r.getShaderInfoLog(n),a(l)].join(`
|
|
`)}var _=y.a.extend({uniformSemantics:{},attributes:{}},function(){this._locations={},this._textureSlot=0,this._program=null},{bind:function(r){this._textureSlot=0,r.gl.useProgram(this._program)},hasUniform:function(r){var n=this._locations[r];return n!=null},useTextureSlot:function(r,n,l){n&&(r.gl.activeTexture(r.gl.TEXTURE0+l),n.isRenderable()?n.bind(r):n.unbind(r))},currentTextureSlot:function(){return this._textureSlot},resetTextureSlot:function(r){this._textureSlot=r||0},takeCurrentTextureSlot:function(r,n){var l=this._textureSlot;return this.useTextureSlot(r,n,l),this._textureSlot++,l},setUniform:function(r,n,l,o){var s=this._locations,u=s[l];if(u==null)return!1;switch(n){case"m4":r.uniformMatrix4fv(u,!1,o);break;case"2i":r.uniform2i(u,o[0],o[1]);break;case"2f":r.uniform2f(u,o[0],o[1]);break;case"3i":r.uniform3i(u,o[0],o[1],o[2]);break;case"3f":r.uniform3f(u,o[0],o[1],o[2]);break;case"4i":r.uniform4i(u,o[0],o[1],o[2],o[3]);break;case"4f":r.uniform4f(u,o[0],o[1],o[2],o[3]);break;case"1i":r.uniform1i(u,o);break;case"1f":r.uniform1f(u,o);break;case"1fv":r.uniform1fv(u,o);break;case"1iv":r.uniform1iv(u,o);break;case"2iv":r.uniform2iv(u,o);break;case"2fv":r.uniform2fv(u,o);break;case"3iv":r.uniform3iv(u,o);break;case"3fv":r.uniform3fv(u,o);break;case"4iv":r.uniform4iv(u,o);break;case"4fv":r.uniform4fv(u,o);break;case"m2":case"m2v":r.uniformMatrix2fv(u,!1,o);break;case"m3":case"m3v":r.uniformMatrix3fv(u,!1,o);break;case"m4v":if(Array.isArray(o)){for(var f=new D.a.Float32Array(o.length*16),e=0,t=0;t<o.length;t++)for(var i=o[t],c=0;c<16;c++)f[e++]=i[c];r.uniformMatrix4fv(u,!1,f)}else o instanceof D.a.Float32Array&&r.uniformMatrix4fv(u,!1,o);break}return!0},setUniformOfSemantic:function(r,n,l){var o=this.uniformSemantics[n];return o?this.setUniform(r,o.type,o.symbol,l):!1},enableAttributes:function(r,n,l){var o=r.gl,s=this._program,u=this._locations,f;l?f=l.__enabledAttributeList:f=h[r.__uid__],f||(l?f=l.__enabledAttributeList=[]:f=h[r.__uid__]=[]);for(var e=[],t=0;t<n.length;t++){var i=n[t];if(!this.attributes[i]){e[t]=-1;continue}var c=u[i];if(c==null){if(c=o.getAttribLocation(s,i),c===-1){e[t]=-1;continue}u[i]=c}e[t]=c,f[c]?f[c]=m:f[c]=v}for(var t=0;t<f.length;t++)switch(f[t]){case v:o.enableVertexAttribArray(t),f[t]=E;break;case m:f[t]=E;break;case E:o.disableVertexAttribArray(t),f[t]=0;break}return e},buildProgram:function(r,n,l,o){var s=r.createShader(r.VERTEX_SHADER),u=r.createProgram();r.shaderSource(s,l),r.compileShader(s);var f=r.createShader(r.FRAGMENT_SHADER);r.shaderSource(f,o),r.compileShader(f);var e=d(r,s,l);if(e||(e=d(r,f,o),e))return e;if(r.attachShader(u,s),r.attachShader(u,f),n.attributeSemantics.POSITION)r.bindAttribLocation(u,0,n.attributeSemantics.POSITION.symbol);else{var t=Object.keys(this.attributes);r.bindAttribLocation(u,0,t[0])}if(r.linkProgram(u),!r.getProgramParameter(u,r.LINK_STATUS))return`Could not link program
|
|
VALIDATE_STATUS: `+r.getProgramParameter(u,r.VALIDATE_STATUS)+", gl error ["+r.getError()+"]";for(var i=0;i<n.uniforms.length;i++){var c=n.uniforms[i];this._locations[c]=r.getUniformLocation(u,c)}r.deleteShader(s),r.deleteShader(f),this._program=u,this.vertexCode=l,this.fragmentCode=o}});M.a=_},function(H,M,g){"use strict";var D=g(99),y="uniform vec3 ",v="uniform float ",m="@export clay.header.",E="@end",h=":unconfigurable;";M.a=[m+"directional_light",y+"directionalLightDirection[DIRECTIONAL_LIGHT_COUNT]"+h,y+"directionalLightColor[DIRECTIONAL_LIGHT_COUNT]"+h,E,m+"ambient_light",y+"ambientLightColor[AMBIENT_LIGHT_COUNT]"+h,E,m+"ambient_sh_light",y+"ambientSHLightColor[AMBIENT_SH_LIGHT_COUNT]"+h,y+"ambientSHLightCoefficients[AMBIENT_SH_LIGHT_COUNT * 9]"+h,D.a,E,m+"ambient_cubemap_light",y+"ambientCubemapLightColor[AMBIENT_CUBEMAP_LIGHT_COUNT]"+h,"uniform samplerCube ambientCubemapLightCubemap[AMBIENT_CUBEMAP_LIGHT_COUNT]"+h,"uniform sampler2D ambientCubemapLightBRDFLookup[AMBIENT_CUBEMAP_LIGHT_COUNT]"+h,E,m+"point_light",y+"pointLightPosition[POINT_LIGHT_COUNT]"+h,v+"pointLightRange[POINT_LIGHT_COUNT]"+h,y+"pointLightColor[POINT_LIGHT_COUNT]"+h,E,m+"spot_light",y+"spotLightPosition[SPOT_LIGHT_COUNT]"+h,y+"spotLightDirection[SPOT_LIGHT_COUNT]"+h,v+"spotLightRange[SPOT_LIGHT_COUNT]"+h,v+"spotLightUmbraAngleCosine[SPOT_LIGHT_COUNT]"+h,v+"spotLightPenumbraAngleCosine[SPOT_LIGHT_COUNT]"+h,v+"spotLightFalloffFactor[SPOT_LIGHT_COUNT]"+h,y+"spotLightColor[SPOT_LIGHT_COUNT]"+h,E].join(`
|
|
`)},function(H,M,g){"use strict";M.a=`vec3 calcAmbientSHLight(int idx, vec3 N) {
|
|
int offset = 9 * idx;
|
|
return ambientSHLightCoefficients[0]
|
|
+ ambientSHLightCoefficients[1] * N.x
|
|
+ ambientSHLightCoefficients[2] * N.y
|
|
+ ambientSHLightCoefficients[3] * N.z
|
|
+ ambientSHLightCoefficients[4] * N.x * N.z
|
|
+ ambientSHLightCoefficients[5] * N.z * N.y
|
|
+ ambientSHLightCoefficients[6] * N.y * N.x
|
|
+ ambientSHLightCoefficients[7] * (3.0 * N.z * N.z - 1.0)
|
|
+ ambientSHLightCoefficients[8] * (N.x * N.x - N.y * N.y);
|
|
}`},function(H,M,g){"use strict";var D=g(8),y=g(49),v=g(23),m=g(4),E=g(9),h=g(64),a=g(11),d=g(1),_=g.n(d),r=_.a.vec3,n=D.a.extend({scene:null,camera:null,renderer:null},function(){this._ray=new y.a,this._ndc=new v.a},{pick:function(l,o,s){var u=this.pickAll(l,o,[],s);return u[0]||null},pickAll:function(l,o,s,u){return this.renderer.screenToNDC(l,o,this._ndc),this.camera.castRay(this._ndc,this._ray),s=s||[],this._intersectNode(this.scene,s,u||!1),s.sort(this._intersectionCompareFunc),s},_intersectNode:function(l,o,s){l instanceof h.a&&l.isRenderable()&&(!l.ignorePicking||s)&&(l.mode===a.a.TRIANGLES&&l.geometry.isUseIndices()||l.geometry.pickByRay||l.geometry.pick)&&this._intersectRenderable(l,o);for(var u=0;u<l._children.length;u++)this._intersectNode(l._children[u],o,s)},_intersectRenderable:function(){var l=new m.a,o=new m.a,s=new m.a,u=new y.a,f=new E.a;return function(e,t){var i=e.isSkinnedMesh();u.copy(this._ray),E.a.invert(f,e.worldTransform),i||u.applyTransform(f);var c=e.geometry;if(!(!i&&c.boundingBox&&!u.intersectBoundingBox(c.boundingBox))){if(c.pick){c.pick(this._ndc.x,this._ndc.y,this.renderer,this.camera,e,t);return}else if(c.pickByRay){c.pickByRay(u,e,t);return}var p=e.cullFace===a.a.BACK&&e.frontFace===a.a.CCW||e.cullFace===a.a.FRONT&&e.frontFace===a.a.CW,A,x=c.indices,C=c.attributes.position,S=c.attributes.weight,P=c.attributes.joint,b,L=[];if(!(!C||!C.value||!x)){if(i){b=e.skeleton.getSubSkinMatrices(e.__uid__,e.joints);for(var R=0;R<e.joints.length;R++){L[R]=L[R]||[];for(var T=0;T<16;T++)L[R][T]=b[R*16+T]}var N=[],I=[],F=[],U=[],K=[],G=c.attributes.skinnedPosition;(!G||!G.value)&&(c.createAttribute("skinnedPosition","f",3),G=c.attributes.skinnedPosition,G.init(c.vertexCount));for(var R=0;R<c.vertexCount;R++){C.get(R,N),S.get(R,I),P.get(R,F),I[3]=1-I[0]-I[1]-I[2],r.set(U,0,0,0);for(var T=0;T<4;T++)F[T]>=0&&I[T]>1e-4&&(r.transformMat4(K,N,L[F[T]]),r.scaleAndAdd(U,U,K,I[T]));G.set(R,U)}}for(var R=0;R<x.length;R+=3){var V=x[R],X=x[R+1],ee=x[R+2],oe=i?c.attributes.skinnedPosition:C;if(oe.get(V,l.array),oe.get(X,o.array),oe.get(ee,s.array),p?A=u.intersectTriangle(l,o,s,e.culling):A=u.intersectTriangle(l,s,o,e.culling),A){var ue=new m.a;i?m.a.copy(ue,A):m.a.transformMat4(ue,A,e.worldTransform),t.push(new n.Intersection(A,ue,e,[V,X,ee],R/3,m.a.dist(ue,this._ray.origin)))}}}}}}(),_intersectionCompareFunc:function(l,o){return l.distance-o.distance}});n.Intersection=function(l,o,s,u,f,e){this.point=l,this.pointWorld=o,this.target=s,this.triangle=u,this.triangleIndex=f,this.distance=e},M.a=n},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=["bar3D","line3D","map3D","scatter3D","surface","lines3D","scatterGL","scatter3D"];function m(a,d){if(a&&a[d]&&(a[d].normal||a[d].emphasis)){var _=a[d].normal,r=a[d].emphasis;_&&(a[d]=_),r&&(a.emphasis=a.emphasis||{},a.emphasis[d]=r)}}function E(a){m(a,"itemStyle"),m(a,"lineStyle"),m(a,"areaStyle"),m(a,"label")}function h(a){a&&(a instanceof Array||(a=[a]),y.a.util.each(a,function(d){if(d.axisLabel){var _=d.axisLabel;y.a.util.extend(_,_.textStyle),_.textStyle=null}}))}M.a=function(a){y.a.util.each(a.series,function(d){y.a.util.indexOf(v,d.type)>=0&&(E(d),d.coordinateSystem==="mapbox"&&(d.coordinateSystem="mapbox3D",a.mapbox3D=a.mapbox))}),h(a.xAxis3D),h(a.yAxis3D),h(a.zAxis3D),h(a.grid3D),m(a.geo3D)}},function(H,M,g){"use strict";function D(y){var v=new XMLHttpRequest;v.open("get",y.url),v.responseType=y.responseType||"text",y.onprogress&&(v.onprogress=function(m){if(m.lengthComputable){var E=m.loaded/m.total;y.onprogress(E,m.loaded,m.total)}else y.onprogress(null)}),v.onload=function(m){v.status>=400?y.onerror&&y.onerror():y.onload&&y.onload(v.response)},y.onerror&&(v.onerror=y.onerror),v.send(null)}M.a={get:D}},function(H,M,g){"use strict";M.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(H,M,g){"use strict";var D=g(6),y=g(5),v=g(25),m=542327876,E=1,h=2,a=4,d=8,_=4096,r=131072,n=524288,l=8388608,o=8,s=4194304,u=4096,f=512,e=1024,t=2048,i=4096,c=8192,p=16384,A=32768,x=2097152,C=1,S=2,P=4,b=64,L=512,R=131072;function T(ye){return ye.charCodeAt(0)+(ye.charCodeAt(1)<<8)+(ye.charCodeAt(2)<<16)+(ye.charCodeAt(3)<<24)}function N(ye){return String.fromCharCode(ye&255,ye>>8&255,ye>>16&255,ye>>24&255)}var I=31,F=T("DXT1"),U=T("DXT3"),K=T("DXT5"),G=0,V=1,X=2,ee=3,oe=4,ue=7,Ae=20,fe=21,he=27,ve=28,me=29,Te=30,Ce={parse:function(ye,q){var Q=new Int32Array(ye,0,I);if(Q[G]!==m||!Q(Ae)&P)return null;var $=Q(fe),j=Q[oe],re=Q[ee],k=Q[ve]&f,te=Q[X]&r,ie,J;switch($){case F:ie=8,J=D.a.COMPRESSED_RGB_S3TC_DXT1_EXT;break;case U:ie=16,J=D.a.COMPRESSED_RGBA_S3TC_DXT3_EXT;break;case K:ie=16,J=D.a.COMPRESSED_RGBA_S3TC_DXT5_EXT;break;default:return null}var ce=Q[V]+4,Se=k?6:1,Le=1;te&&(Le=Math.max(1,Q[ue]));for(var ze=[],We=0;We<Se;We++){var tt=j,je=re;ze[We]=new y.a({width:tt,height:je,format:J});for(var pe=[],Oe=0;Oe<Le;Oe++){var Ie=Math.max(4,tt)/4*Math.max(4,je)/4*ie,Pe=new Uint8Array(ye,ce,Ie);ce+=Ie,tt*=.5,je*=.5,pe[Oe]=Pe}ze[We].pixels=pe[0],te&&(ze[We].mipmaps=pe)}if(q)q.width=ze[0].width,q.height=ze[0].height,q.format=ze[0].format,q.pixels=ze[0].pixels,q.mipmaps=ze[0].mipmaps;else return ze[0]}};M.a=Ce},function(H,M,g){"use strict";var D=g(6),y=g(5),v=String.fromCharCode,m=8,E=32767;function h(l,o,s,u){if(l[3]>0){var f=Math.pow(2,l[3]-128-8+u);o[s+0]=l[0]*f,o[s+1]=l[1]*f,o[s+2]=l[2]*f}else o[s+0]=0,o[s+1]=0,o[s+2]=0;return o[s+3]=1,o}function a(l,o,s){for(var u="",f=o;f<s;f++)u+=v(l[f]);return u}function d(l,o){o[0]=l[0],o[1]=l[1],o[2]=l[2],o[3]=l[3]}function _(l,o,s,u){for(var f=0,e=0,t=u;t>0;)if(l[e][0]=o[s++],l[e][1]=o[s++],l[e][2]=o[s++],l[e][3]=o[s++],l[e][0]===1&&l[e][1]===1&&l[e][2]===1){for(var i=l[e][3]<<f>>>0;i>0;i--)d(l[e-1],l[e]),e++,t--;f+=8}else e++,t--,f=0;return s}function r(l,o,s,u){if(u<m|u>E)return _(l,o,s,u);var f=o[s++];if(f!=2)return _(l,o,s-1,u);if(l[0][1]=o[s++],l[0][2]=o[s++],f=o[s++],(l[0][2]<<8>>>0|f)>>>0!==u)return null;for(var f=0;f<4;f++)for(var e=0;e<u;){var t=o[s++];if(t>128){t=(t&127)>>>0;for(var i=o[s++];t--;)l[e++][f]=i}else for(;t--;)l[e++][f]=o[s++]}return s}var n={parseRGBE:function(l,o,s){s==null&&(s=0);var u=new Uint8Array(l),f=u.length;if(a(u,0,2)==="#?"){for(var e=2;e<f&&!(v(u[e])===`
|
|
`&&v(u[e+1])===`
|
|
`);e++);if(!(e>=f)){e+=2;for(var t="";e<f;e++){var i=v(u[e]);if(i===`
|
|
`)break;t+=i}var c=t.split(" "),p=parseInt(c[1]),A=parseInt(c[3]);if(!(!A||!p)){for(var x=e+1,C=[],S=0;S<A;S++){C[S]=[];for(var P=0;P<4;P++)C[S][P]=0}for(var b=new Float32Array(A*p*4),L=0,R=0;R<p;R++){var x=r(C,u,x,A);if(!x)return null;for(var S=0;S<A;S++)h(C[S],b,L,s),L+=4}return o||(o=new y.a),o.width=A,o.height=p,o.pixels=b,o.type=D.a.FLOAT,o}}}},parseRGBEFromPNG:function(l){}};M.a=n},function(H,M,g){"use strict";var D=g(5),y=g(4),v=g(23),m=["mousedown","mouseup","mousemove","mouseover","mouseout","click","dblclick","contextmenu"];function E(a){return"_on"+a}var h=function(a){var d=this;this._texture=new D.a({anisotropic:32,flipY:!1,surface:this,dispose:function(_){d.dispose(),D.a.prototype.dispose.call(this,_)}}),m.forEach(function(_){this[E(_)]=function(r){r.triangle&&this._meshes.forEach(function(n){this.dispatchEvent(_,n,r.triangle,r.point)},this)}},this),this._meshes=[],a&&this.setECharts(a),this.onupdate=null};h.prototype={constructor:h,getTexture:function(){return this._texture},setECharts:function(a){this._chart=a;var d=a.getDom();if(!(d instanceof HTMLCanvasElement))console.error("ECharts must init on canvas if it is used as texture."),d=document.createElement("canvas");else{var _=this,r=a.getZr(),n=r.__oldRefreshImmediately||r.refreshImmediately;r.refreshImmediately=function(){n.call(this),_._texture.dirty(),_.onupdate&&_.onupdate()},r.__oldRefreshImmediately=n}this._texture.image=d,this._texture.dirty(),this.onupdate&&this.onupdate()},dispatchEvent:function(){var a=new y.a,d=new y.a,_=new y.a,r=new v.a,n=new v.a,l=new v.a,o=new v.a,s=new y.a;return function(u,f,e,t){var i=f.geometry,c=i.attributes.position,p=i.attributes.texcoord0,A=y.a.dot,x=y.a.cross;c.get(e[0],a.array),c.get(e[1],d.array),c.get(e[2],_.array),p.get(e[0],r.array),p.get(e[1],n.array),p.get(e[2],l.array),x(s,d,_);var C=A(a,s),S=A(t,s)/C;x(s,_,a);var P=A(t,s)/C;x(s,a,d);var b=A(t,s)/C;v.a.scale(o,r,S),v.a.scaleAndAdd(o,o,n,P),v.a.scaleAndAdd(o,o,l,b);var L=o.x*this._chart.getWidth(),R=o.y*this._chart.getHeight();this._chart.getZr().handler.dispatch(u,{zrX:L,zrY:R})}}(),attachToMesh:function(a){this._meshes.indexOf(a)>=0||(m.forEach(function(d){a.on(d,this[E(d)],this)},this),this._meshes.push(a))},detachFromMesh:function(a){var d=this._meshes.indexOf(a);d>=0&&this._meshes.splice(d,1),m.forEach(function(_){a.off(_,this[E(_)])},this)},dispose:function(){this._meshes.forEach(function(a){this.detachFromMesh(a)},this)}},M.a=h},function(H,M,g){"use strict";var D=g(19),y=g(108),v=D.a.extend({cubemap:null,castShadow:!1,_normalDistribution:null,_brdfLookup:null},{type:"AMBIENT_CUBEMAP_LIGHT",prefilter:function(m,E){this._brdfLookup||(this._normalDistribution=y.a.generateNormalDistribution(),this._brdfLookup=y.a.integrateBRDF(m,this._normalDistribution));var h=this.cubemap;if(!h.__prefiltered){var a=y.a.prefilterEnvironmentMap(m,h,{encodeRGBM:!0,width:E,height:E},this._normalDistribution,this._brdfLookup);this.cubemap=a.environmentMap,this.cubemap.__prefiltered=!0,h.dispose(m)}},uniformTemplates:{ambientCubemapLightColor:{type:"3f",value:function(m){var E=m.color,h=m.intensity;return[E[0]*h,E[1]*h,E[2]*h]}},ambientCubemapLightCubemap:{type:"t",value:function(m){return m.cubemap}},ambientCubemapLightBRDFLookup:{type:"t",value:function(m){return m._brdfLookup}}}});M.a=v},function(H,M,g){"use strict";var D=g(5),y=g(25),v=g(6),m=g(10),E=g(14),h=g(17),a=g(7),d=g(57),_=g(29),r=g(55),n=g(18),l=g(54),o=g(111),s=g(112),u={},f=["px","nx","py","ny","pz","nz"];u.prefilterEnvironmentMap=function(e,t,i,c,p){(!p||!c)&&(c=u.generateNormalDistribution(),p=u.integrateBRDF(e,c)),i=i||{};var A=i.width||64,x=i.height||64,C=i.type||t.type,S=new y.a({width:A,height:x,type:C,flipY:!1,mipmaps:[]});S.isPowerOfTwo()||console.warn("Width and height must be power of two to enable mipmap.");var P=Math.min(A,x),b=Math.log(P)/Math.log(2)+1,L=new h.a({shader:new a.a({vertex:a.a.source("clay.skybox.vertex"),fragment:s.a})});L.set("normalDistribution",c),i.encodeRGBM&&L.define("fragment","RGBM_ENCODE"),i.decodeRGBM&&L.define("fragment","RGBM_DECODE");var R=new _.a,T;if(t instanceof D.a){var N=new y.a({width:A,height:x,type:C===v.a.FLOAT?v.a.HALF_FLOAT:C});l.a.panoramaToCubeMap(e,t,N,{encodeRGBM:i.decodeRGBM}),t=N}T=new d.a({scene:R,material:L}),T.material.set("environmentMap",t);var I=new r.a({texture:S});i.encodeRGBM&&(C=S.type=v.a.UNSIGNED_BYTE);for(var F=new D.a({width:A,height:x,type:C}),U=new m.a({depthBuffer:!1}),K=n.a[C===v.a.UNSIGNED_BYTE?"Uint8Array":"Float32Array"],G=0;G<b;G++){S.mipmaps[G]={pixels:{}},T.material.set("roughness",G/(f.length-1));for(var V=F.width,X=2*Math.atan(V/(V-.5))/Math.PI*180,ee=0;ee<f.length;ee++){var oe=new K(F.width*F.height*4);U.attach(F),U.bind(e);var ue=I.getCamera(f[ee]);ue.fov=X,e.render(R,ue),e.gl.readPixels(0,0,F.width,F.height,v.a.RGBA,C,oe),U.unbind(e),S.mipmaps[G].pixels[f[ee]]=oe}F.width/=2,F.height/=2,F.dirty()}return U.dispose(e),F.dispose(e),T.dispose(e),c.dispose(e),{environmentMap:S,brdfLookup:p,normalDistribution:c,maxMipmapLevel:b}},u.integrateBRDF=function(e,t){t=t||u.generateNormalDistribution();var i=new m.a({depthBuffer:!1}),c=new E.a({fragment:o.a}),p=new D.a({width:512,height:256,type:v.a.HALF_FLOAT,minFilter:v.a.NEAREST,magFilter:v.a.NEAREST,useMipmap:!1});return c.setUniform("normalDistribution",t),c.setUniform("viewportSize",[512,256]),c.attachOutput(p),c.render(e,i),i.dispose(e),p},u.generateNormalDistribution=function(i,c){for(var i=i||256,c=c||1024,p=new D.a({width:i,height:c,type:v.a.FLOAT,minFilter:v.a.NEAREST,magFilter:v.a.NEAREST,useMipmap:!1}),A=new Float32Array(c*i*4),x=0;x<c;x++){var C=x/c,S=(x<<16|x>>>16)>>>0;S=((S&1431655765)<<1|(S&2863311530)>>>1)>>>0,S=((S&858993459)<<2|(S&3435973836)>>>2)>>>0,S=((S&252645135)<<4|(S&4042322160)>>>4)>>>0,S=(((S&16711935)<<8|(S&4278255360)>>>8)>>>0)/4294967296;for(var P=0;P<i;P++){var b=P/i,L=b*b,R=2*Math.PI*C,T=Math.sqrt((1-S)/(1+(L*L-1)*S)),N=Math.sqrt(1-T*T),I=(x*i+P)*4;A[I]=N*Math.cos(R),A[I+1]=N*Math.sin(R),A[I+2]=T,A[I+3]=1}}return p.pixels=A,p},M.a=u},function(H,M,g){"use strict";M.a=`
|
|
@export clay.compositor.vertex
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
attribute vec3 position : POSITION;
|
|
attribute vec2 texcoord : TEXCOORD_0;
|
|
varying vec2 v_Texcoord;
|
|
void main()
|
|
{
|
|
v_Texcoord = texcoord;
|
|
gl_Position = worldViewProjection * vec4(position, 1.0);
|
|
}
|
|
@end`},function(H,M,g){"use strict";M.a=`@export clay.skybox.vertex
|
|
uniform mat4 world : WORLD;
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
attribute vec3 position : POSITION;
|
|
varying vec3 v_WorldPosition;
|
|
void main()
|
|
{
|
|
v_WorldPosition = (world * vec4(position, 1.0)).xyz;
|
|
gl_Position = worldViewProjection * vec4(position, 1.0);
|
|
}
|
|
@end
|
|
@export clay.skybox.fragment
|
|
uniform mat4 viewInverse : VIEWINVERSE;
|
|
uniform samplerCube environmentMap;
|
|
uniform float lod: 0.0;
|
|
varying vec3 v_WorldPosition;
|
|
@import clay.util.rgbm
|
|
@import clay.util.srgb
|
|
@import clay.util.ACES
|
|
void main()
|
|
{
|
|
vec3 eyePos = viewInverse[3].xyz;
|
|
vec3 viewDirection = normalize(v_WorldPosition - eyePos);
|
|
#ifdef LOD
|
|
vec4 texel = decodeHDR(textureCubeLodEXT(environmentMap, viewDirection, lod));
|
|
#else
|
|
vec4 texel = decodeHDR(textureCube(environmentMap, viewDirection));
|
|
#endif
|
|
#ifdef SRGB_DECODE
|
|
texel = sRGBToLinear(texel);
|
|
#endif
|
|
#ifdef TONEMAPPING
|
|
texel.rgb = ACESToneMapping(texel.rgb);
|
|
#endif
|
|
#ifdef SRGB_ENCODE
|
|
texel = linearTosRGB(texel);
|
|
#endif
|
|
gl_FragColor = encodeHDR(vec4(texel.rgb, 1.0));
|
|
}
|
|
@end`},function(H,M,g){"use strict";M.a=`#define SAMPLE_NUMBER 1024
|
|
#define PI 3.14159265358979
|
|
uniform sampler2D normalDistribution;
|
|
uniform vec2 viewportSize : [512, 256];
|
|
const vec3 N = vec3(0.0, 0.0, 1.0);
|
|
const float fSampleNumber = float(SAMPLE_NUMBER);
|
|
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;
|
|
}
|
|
float G_Smith(float roughness, float NoV, float NoL) {
|
|
float k = roughness * roughness / 2.0;
|
|
float G1V = NoV / (NoV * (1.0 - k) + k);
|
|
float G1L = NoL / (NoL * (1.0 - k) + k);
|
|
return G1L * G1V;
|
|
}
|
|
void main() {
|
|
vec2 uv = gl_FragCoord.xy / viewportSize;
|
|
float NoV = uv.x;
|
|
float roughness = uv.y;
|
|
vec3 V;
|
|
V.x = sqrt(1.0 - NoV * NoV);
|
|
V.y = 0.0;
|
|
V.z = NoV;
|
|
float A = 0.0;
|
|
float B = 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(L.z, 0.0, 1.0);
|
|
float NoH = clamp(H.z, 0.0, 1.0);
|
|
float VoH = clamp(dot(V, H), 0.0, 1.0);
|
|
if (NoL > 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(H,M,g){"use strict";M.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(H,M,g){"use strict";var D=g(19),y=g(18),v=D.a.extend({castShadow:!1,coefficients:[]},function(){this._coefficientsTmpArr=new y.a.Float32Array(9*3)},{type:"AMBIENT_SH_LIGHT",uniformTemplates:{ambientSHLightColor:{type:"3f",value:function(m){var E=m.color,h=m.intensity;return[E[0]*h,E[1]*h,E[2]*h]}},ambientSHLightCoefficients:{type:"3f",value:function(m){for(var E=m._coefficientsTmpArr,h=0;h<m.coefficients.length;h++)E[h]=m.coefficients[h];return E}}}});M.a=v},function(H,M,g){"use strict";var D=g(6),y=g(10),v=g(5),m=g(14),E=g(18),h=g(57),a=g(56),d=g(55),_=g(29),r=g(1),n=g.n(r),l=g(115),o=n.a.vec3,s={},u=["px","nx","py","ny","pz","nz"];function f(c,p){var A=new v.a({width:9,height:1,type:D.a.FLOAT}),x=new m.a({fragment:l.a});x.material.define("fragment","TEXTURE_SIZE",p.width),x.setUniform("environmentMap",p);var C=new y.a;C.attach(A),x.render(c,C),C.bind(c);var S=new E.a.Float32Array(9*4);c.gl.readPixels(0,0,9,1,D.a.RGBA,D.a.FLOAT,S);for(var P=new E.a.Float32Array(9*3),b=0;b<9;b++)P[b*3]=S[b*4],P[b*3+1]=S[b*4+1],P[b*3+2]=S[b*4+2];return C.unbind(c),C.dispose(c),x.dispose(c),P}function e(c,p){var A=c[0],x=c[1],C=c[2];return p===0?1:p===1?A:p===2?x:p===3?C:p===4?A*C:p===5?x*C:p===6?A*x:p===7?3*C*C-1:A*A-x*x}var t={px:[2,1,0,-1,-1,1],nx:[2,1,0,1,-1,-1],py:[0,2,1,1,-1,-1],ny:[0,2,1,1,1,1],pz:[0,1,2,-1,-1,-1],nz:[0,1,2,1,-1,1]};function i(c,p,A,x){for(var C=new E.a.Float32Array(27),S=o.create(),P=o.create(),b=o.create(),L=0;L<9;L++){for(var R=o.create(),T=0;T<u.length;T++){for(var N=p[u[T]],I=o.create(),F=0,U=0,K=t[u[T]],G=0;G<x;G++)for(var V=0;V<A;V++){S[0]=V/(A-1)*2-1,S[1]=G/(x-1)*2-1,S[2]=-1,o.normalize(S,S),b[0]=S[K[0]]*K[3],b[1]=S[K[1]]*K[4],b[2]=S[K[2]]*K[5],P[0]=N[U++]/255,P[1]=N[U++]/255,P[2]=N[U++]/255;var X=N[U++]/255*51.5;P[0]*=X,P[1]*=X,P[2]*=X,o.scaleAndAdd(I,I,P,e(b,L)*-S[2]),F+=-S[2]}o.scaleAndAdd(R,R,I,1/F)}C[L*3]=R[0]/6,C[L*3+1]=R[1]/6,C[L*3+2]=R[2]/6}return C}s.projectEnvironmentMap=function(c,p,A){A=A||{},A.lod=A.lod||0;var x,C=new _.a,S=64;p instanceof v.a?x=new a.a({scene:C,environmentMap:p}):(S=p.image&&p.image.px?p.image.px.width:p.width,x=new h.a({scene:C,environmentMap:p}));var P=Math.ceil(S/Math.pow(2,A.lod)),b=Math.ceil(S/Math.pow(2,A.lod)),L=new v.a({width:P,height:b}),R=new y.a;x.material.define("fragment","RGBM_ENCODE"),A.decodeRGBM&&x.material.define("fragment","RGBM_DECODE"),x.material.set("lod",A.lod);for(var T=new d.a({texture:L}),N={},I=0;I<u.length;I++){N[u[I]]=new Uint8Array(P*b*4);var F=T.getCamera(u[I]);F.fov=90,R.attach(L),R.bind(c),c.render(C,F),c.gl.readPixels(0,0,P,b,D.a.RGBA,D.a.UNSIGNED_BYTE,N[u[I]]),R.unbind(c)}return x.dispose(c),R.dispose(c),L.dispose(c),i(c,N,P,b)},M.a=s},function(H,M,g){"use strict";M.a=`uniform samplerCube environmentMap;
|
|
varying vec2 v_Texcoord;
|
|
#define TEXTURE_SIZE 16
|
|
mat3 front = mat3(
|
|
1.0, 0.0, 0.0,
|
|
0.0, 1.0, 0.0,
|
|
0.0, 0.0, 1.0
|
|
);
|
|
mat3 back = mat3(
|
|
-1.0, 0.0, 0.0,
|
|
0.0, 1.0, 0.0,
|
|
0.0, 0.0, -1.0
|
|
);
|
|
mat3 left = mat3(
|
|
0.0, 0.0, -1.0,
|
|
0.0, 1.0, 0.0,
|
|
1.0, 0.0, 0.0
|
|
);
|
|
mat3 right = mat3(
|
|
0.0, 0.0, 1.0,
|
|
0.0, 1.0, 0.0,
|
|
-1.0, 0.0, 0.0
|
|
);
|
|
mat3 up = mat3(
|
|
1.0, 0.0, 0.0,
|
|
0.0, 0.0, 1.0,
|
|
0.0, -1.0, 0.0
|
|
);
|
|
mat3 down = mat3(
|
|
1.0, 0.0, 0.0,
|
|
0.0, 0.0, -1.0,
|
|
0.0, 1.0, 0.0
|
|
);
|
|
float harmonics(vec3 normal){
|
|
int index = int(gl_FragCoord.x);
|
|
float x = normal.x;
|
|
float y = normal.y;
|
|
float z = normal.z;
|
|
if(index==0){
|
|
return 1.0;
|
|
}
|
|
else if(index==1){
|
|
return x;
|
|
}
|
|
else if(index==2){
|
|
return y;
|
|
}
|
|
else if(index==3){
|
|
return z;
|
|
}
|
|
else if(index==4){
|
|
return x*z;
|
|
}
|
|
else if(index==5){
|
|
return y*z;
|
|
}
|
|
else if(index==6){
|
|
return x*y;
|
|
}
|
|
else if(index==7){
|
|
return 3.0*z*z - 1.0;
|
|
}
|
|
else{
|
|
return x*x - y*y;
|
|
}
|
|
}
|
|
vec3 sampleSide(mat3 rot)
|
|
{
|
|
vec3 result = vec3(0.0);
|
|
float divider = 0.0;
|
|
for (int i = 0; i < TEXTURE_SIZE * TEXTURE_SIZE; i++) {
|
|
float x = mod(float(i), float(TEXTURE_SIZE));
|
|
float y = float(i / TEXTURE_SIZE);
|
|
vec2 sidecoord = ((vec2(x, y) + vec2(0.5, 0.5)) / vec2(TEXTURE_SIZE)) * 2.0 - 1.0;
|
|
vec3 normal = normalize(vec3(sidecoord, -1.0));
|
|
vec3 fetchNormal = rot * normal;
|
|
vec3 texel = textureCube(environmentMap, fetchNormal).rgb;
|
|
result += harmonics(fetchNormal) * texel * -normal.z;
|
|
divider += -normal.z;
|
|
}
|
|
return result / divider;
|
|
}
|
|
void main()
|
|
{
|
|
vec3 result = (
|
|
sampleSide(front) +
|
|
sampleSide(back) +
|
|
sampleSide(left) +
|
|
sampleSide(right) +
|
|
sampleSide(up) +
|
|
sampleSide(down)
|
|
) / 6.0;
|
|
gl_FragColor = vec4(result, 1.0);
|
|
}`},function(H,M,g){"use strict";var D=g(19),y=D.a.extend({castShadow:!1},{type:"AMBIENT_LIGHT",uniformTemplates:{ambientLightColor:{type:"3f",value:function(v){var m=v.color,E=v.intensity;return[m[0]*E,m[1]*E,m[2]*E]}}}});M.a=y},function(H,M,g){"use strict";var D=g(1),y=g.n(D),v=y.a.vec4,m=function(a,d,_,r){a=a||0,d=d||0,_=_||0,r=r||0,this.array=v.fromValues(a,d,_,r),this._dirty=!0};m.prototype={constructor:m,add:function(a){return v.add(this.array,this.array,a.array),this._dirty=!0,this},set:function(a,d,_,r){return this.array[0]=a,this.array[1]=d,this.array[2]=_,this.array[3]=r,this._dirty=!0,this},setArray:function(a){return this.array[0]=a[0],this.array[1]=a[1],this.array[2]=a[2],this.array[3]=a[3],this._dirty=!0,this},clone:function(){return new m(this.x,this.y,this.z,this.w)},copy:function(a){return v.copy(this.array,a.array),this._dirty=!0,this},dist:function(a){return v.dist(this.array,a.array)},distance:function(a){return v.distance(this.array,a.array)},div:function(a){return v.div(this.array,this.array,a.array),this._dirty=!0,this},divide:function(a){return v.divide(this.array,this.array,a.array),this._dirty=!0,this},dot:function(a){return v.dot(this.array,a.array)},len:function(){return v.len(this.array)},length:function(){return v.length(this.array)},lerp:function(a,d,_){return v.lerp(this.array,a.array,d.array,_),this._dirty=!0,this},min:function(a){return v.min(this.array,this.array,a.array),this._dirty=!0,this},max:function(a){return v.max(this.array,this.array,a.array),this._dirty=!0,this},mul:function(a){return v.mul(this.array,this.array,a.array),this._dirty=!0,this},multiply:function(a){return v.multiply(this.array,this.array,a.array),this._dirty=!0,this},negate:function(){return v.negate(this.array,this.array),this._dirty=!0,this},normalize:function(){return v.normalize(this.array,this.array),this._dirty=!0,this},random:function(a){return v.random(this.array,a),this._dirty=!0,this},scale:function(a){return v.scale(this.array,this.array,a),this._dirty=!0,this},scaleAndAdd:function(a,d){return v.scaleAndAdd(this.array,this.array,a.array,d),this._dirty=!0,this},sqrDist:function(a){return v.sqrDist(this.array,a.array)},squaredDistance:function(a){return v.squaredDistance(this.array,a.array)},sqrLen:function(){return v.sqrLen(this.array)},squaredLength:function(){return v.squaredLength(this.array)},sub:function(a){return v.sub(this.array,this.array,a.array),this._dirty=!0,this},subtract:function(a){return v.subtract(this.array,this.array,a.array),this._dirty=!0,this},transformMat4:function(a){return v.transformMat4(this.array,this.array,a.array),this._dirty=!0,this},transformQuat:function(a){return v.transformQuat(this.array,this.array,a.array),this._dirty=!0,this},toString:function(){return"["+Array.prototype.join.call(this.array,",")+"]"},toArray:function(){return Array.prototype.slice.call(this.array)}};var E=Object.defineProperty;if(E){var h=m.prototype;E(h,"x",{get:function(){return this.array[0]},set:function(a){this.array[0]=a,this._dirty=!0}}),E(h,"y",{get:function(){return this.array[1]},set:function(a){this.array[1]=a,this._dirty=!0}}),E(h,"z",{get:function(){return this.array[2]},set:function(a){this.array[2]=a,this._dirty=!0}}),E(h,"w",{get:function(){return this.array[3]},set:function(a){this.array[3]=a,this._dirty=!0}})}m.add=function(a,d,_){return v.add(a.array,d.array,_.array),a._dirty=!0,a},m.set=function(a,d,_,r,n){v.set(a.array,d,_,r,n),a._dirty=!0},m.copy=function(a,d){return v.copy(a.array,d.array),a._dirty=!0,a},m.dist=function(a,d){return v.distance(a.array,d.array)},m.distance=m.dist,m.div=function(a,d,_){return v.divide(a.array,d.array,_.array),a._dirty=!0,a},m.divide=m.div,m.dot=function(a,d){return v.dot(a.array,d.array)},m.len=function(a){return v.length(a.array)},m.lerp=function(a,d,_,r){return v.lerp(a.array,d.array,_.array,r),a._dirty=!0,a},m.min=function(a,d,_){return v.min(a.array,d.array,_.array),a._dirty=!0,a},m.max=function(a,d,_){return v.max(a.array,d.array,_.array),a._dirty=!0,a},m.mul=function(a,d,_){return v.multiply(a.array,d.array,_.array),a._dirty=!0,a},m.multiply=m.mul,m.negate=function(a,d){return v.negate(a.array,d.array),a._dirty=!0,a},m.normalize=function(a,d){return v.normalize(a.array,d.array),a._dirty=!0,a},m.random=function(a,d){return v.random(a.array,d),a._dirty=!0,a},m.scale=function(a,d,_){return v.scale(a.array,d.array,_),a._dirty=!0,a},m.scaleAndAdd=function(a,d,_,r){return v.scaleAndAdd(a.array,d.array,_.array,r),a._dirty=!0,a},m.sqrDist=function(a,d){return v.sqrDist(a.array,d.array)},m.squaredDistance=m.sqrDist,m.sqrLen=function(a){return v.sqrLen(a.array)},m.squaredLength=m.sqrLen,m.sub=function(a,d,_){return v.subtract(a.array,d.array,_.array),a._dirty=!0,a},m.subtract=m.sub,m.transformMat4=function(a,d,_){return v.transformMat4(a.array,d.array,_.array),a._dirty=!0,a},m.transformQuat=function(a,d,_){return v.transformQuat(a.array,d.array,_.array),a._dirty=!0,a},M.a=m},function(H,M,g){"use strict";var D=g(1),y=g.n(D),v=y.a.mat2,m=function(){this.array=v.create(),this._dirty=!0};m.prototype={constructor:m,setArray:function(E){for(var h=0;h<this.array.length;h++)this.array[h]=E[h];return this._dirty=!0,this},clone:function(){return new m().copy(this)},copy:function(E){return v.copy(this.array,E.array),this._dirty=!0,this},adjoint:function(){return v.adjoint(this.array,this.array),this._dirty=!0,this},determinant:function(){return v.determinant(this.array)},identity:function(){return v.identity(this.array),this._dirty=!0,this},invert:function(){return v.invert(this.array,this.array),this._dirty=!0,this},mul:function(E){return v.mul(this.array,this.array,E.array),this._dirty=!0,this},mulLeft:function(E){return v.mul(this.array,E.array,this.array),this._dirty=!0,this},multiply:function(E){return v.multiply(this.array,this.array,E.array),this._dirty=!0,this},multiplyLeft:function(E){return v.multiply(this.array,E.array,this.array),this._dirty=!0,this},rotate:function(E){return v.rotate(this.array,this.array,E),this._dirty=!0,this},scale:function(E){return v.scale(this.array,this.array,E.array),this._dirty=!0,this},transpose:function(){return v.transpose(this.array,this.array),this._dirty=!0,this},toString:function(){return"["+Array.prototype.join.call(this.array,",")+"]"},toArray:function(){return Array.prototype.slice.call(this.array)}},m.adjoint=function(E,h){return v.adjoint(E.array,h.array),E._dirty=!0,E},m.copy=function(E,h){return v.copy(E.array,h.array),E._dirty=!0,E},m.determinant=function(E){return v.determinant(E.array)},m.identity=function(E){return v.identity(E.array),E._dirty=!0,E},m.invert=function(E,h){return v.invert(E.array,h.array),E._dirty=!0,E},m.mul=function(E,h,a){return v.mul(E.array,h.array,a.array),E._dirty=!0,E},m.multiply=m.mul,m.rotate=function(E,h,a){return v.rotate(E.array,h.array,a),E._dirty=!0,E},m.scale=function(E,h,a){return v.scale(E.array,h.array,a.array),E._dirty=!0,E},m.transpose=function(E,h){return v.transpose(E.array,h.array),E._dirty=!0,E},M.a=m},function(H,M,g){"use strict";var D=g(1),y=g.n(D),v=y.a.mat2d,m=function(){this.array=v.create(),this._dirty=!0};m.prototype={constructor:m,setArray:function(E){for(var h=0;h<this.array.length;h++)this.array[h]=E[h];return this._dirty=!0,this},clone:function(){return new m().copy(this)},copy:function(E){return v.copy(this.array,E.array),this._dirty=!0,this},determinant:function(){return v.determinant(this.array)},identity:function(){return v.identity(this.array),this._dirty=!0,this},invert:function(){return v.invert(this.array,this.array),this._dirty=!0,this},mul:function(E){return v.mul(this.array,this.array,E.array),this._dirty=!0,this},mulLeft:function(E){return v.mul(this.array,E.array,this.array),this._dirty=!0,this},multiply:function(E){return v.multiply(this.array,this.array,E.array),this._dirty=!0,this},multiplyLeft:function(E){return v.multiply(this.array,E.array,this.array),this._dirty=!0,this},rotate:function(E){return v.rotate(this.array,this.array,E),this._dirty=!0,this},scale:function(E){return v.scale(this.array,this.array,E.array),this._dirty=!0,this},translate:function(E){return v.translate(this.array,this.array,E.array),this._dirty=!0,this},toString:function(){return"["+Array.prototype.join.call(this.array,",")+"]"},toArray:function(){return Array.prototype.slice.call(this.array)}},m.copy=function(E,h){return v.copy(E.array,h.array),E._dirty=!0,E},m.determinant=function(E){return v.determinant(E.array)},m.identity=function(E){return v.identity(E.array),E._dirty=!0,E},m.invert=function(E,h){return v.invert(E.array,h.array),E._dirty=!0,E},m.mul=function(E,h,a){return v.mul(E.array,h.array,a.array),E._dirty=!0,E},m.multiply=m.mul,m.rotate=function(E,h,a){return v.rotate(E.array,h.array,a),E._dirty=!0,E},m.scale=function(E,h,a){return v.scale(E.array,h.array,a.array),E._dirty=!0,E},m.translate=function(E,h,a){return v.translate(E.array,h.array,a.array),E._dirty=!0,E},M.a=m},function(H,M,g){"use strict";var D=g(1),y=g.n(D),v=y.a.mat3,m=function(){this.array=v.create(),this._dirty=!0};m.prototype={constructor:m,setArray:function(E){for(var h=0;h<this.array.length;h++)this.array[h]=E[h];return this._dirty=!0,this},adjoint:function(){return v.adjoint(this.array,this.array),this._dirty=!0,this},clone:function(){return new m().copy(this)},copy:function(E){return v.copy(this.array,E.array),this._dirty=!0,this},determinant:function(){return v.determinant(this.array)},fromMat2d:function(E){return v.fromMat2d(this.array,E.array),this._dirty=!0,this},fromMat4:function(E){return v.fromMat4(this.array,E.array),this._dirty=!0,this},fromQuat:function(E){return v.fromQuat(this.array,E.array),this._dirty=!0,this},identity:function(){return v.identity(this.array),this._dirty=!0,this},invert:function(){return v.invert(this.array,this.array),this._dirty=!0,this},mul:function(E){return v.mul(this.array,this.array,E.array),this._dirty=!0,this},mulLeft:function(E){return v.mul(this.array,E.array,this.array),this._dirty=!0,this},multiply:function(E){return v.multiply(this.array,this.array,E.array),this._dirty=!0,this},multiplyLeft:function(E){return v.multiply(this.array,E.array,this.array),this._dirty=!0,this},rotate:function(E){return v.rotate(this.array,this.array,E),this._dirty=!0,this},scale:function(E){return v.scale(this.array,this.array,E.array),this._dirty=!0,this},translate:function(E){return v.translate(this.array,this.array,E.array),this._dirty=!0,this},normalFromMat4:function(E){return v.normalFromMat4(this.array,E.array),this._dirty=!0,this},transpose:function(){return v.transpose(this.array,this.array),this._dirty=!0,this},toString:function(){return"["+Array.prototype.join.call(this.array,",")+"]"},toArray:function(){return Array.prototype.slice.call(this.array)}},m.adjoint=function(E,h){return v.adjoint(E.array,h.array),E._dirty=!0,E},m.copy=function(E,h){return v.copy(E.array,h.array),E._dirty=!0,E},m.determinant=function(E){return v.determinant(E.array)},m.identity=function(E){return v.identity(E.array),E._dirty=!0,E},m.invert=function(E,h){return v.invert(E.array,h.array),E},m.mul=function(E,h,a){return v.mul(E.array,h.array,a.array),E._dirty=!0,E},m.multiply=m.mul,m.fromMat2d=function(E,h){return v.fromMat2d(E.array,h.array),E._dirty=!0,E},m.fromMat4=function(E,h){return v.fromMat4(E.array,h.array),E._dirty=!0,E},m.fromQuat=function(E,h){return v.fromQuat(E.array,h.array),E._dirty=!0,E},m.normalFromMat4=function(E,h){return v.normalFromMat4(E.array,h.array),E._dirty=!0,E},m.rotate=function(E,h,a){return v.rotate(E.array,h.array,a),E._dirty=!0,E},m.scale=function(E,h,a){return v.scale(E.array,h.array,a.array),E._dirty=!0,E},m.transpose=function(E,h){return v.transpose(E.array,h.array),E._dirty=!0,E},m.translate=function(E,h,a){return v.translate(E.array,h.array,a.array),E._dirty=!0,E},M.a=m},function(H,M,g){"use strict";var D=g(122),y=g.n(D),v={_animators:null,getAnimators:function(){return this._animators=this._animators||[],this._animators},animate:function(m,E){this._animators=this._animators||[];var h=this,a;if(m){for(var d=m.split("."),_=h,r=0,n=d.length;r<n;r++)_&&(_=_[d[r]]);_&&(a=_)}else a=h;if(a==null)throw new Error("Target "+m+" not exists");var l=this._animators,o=new y.a(a,E),s=this;return o.during(function(){s.__zr&&s.__zr.refresh()}).done(function(){var u=l.indexOf(o);u>=0&&l.splice(u,1)}),l.push(o),this.__zr&&this.__zr.animation.addAnimator(o),o},stopAnimation:function(m){this._animators=this._animators||[];for(var E=this._animators,h=E.length,a=0;a<h;a++)E[a].stop(m);return E.length=0,this},addAnimatorsToZr:function(m){if(this._animators)for(var E=0;E<this._animators.length;E++)m.animation.addAnimator(this._animators[E])},removeAnimatorsFromZr:function(m){if(this._animators)for(var E=0;E<this._animators.length;E++)m.animation.removeAnimator(this._animators[E])}};M.a=v},function(H,M,g){var D=g(123),y=g(125),v=g(12),m=v.isArrayLike,E=Array.prototype.slice;function h(p,A){return p[A]}function a(p,A,x){p[A]=x}function d(p,A,x){return(A-p)*x+p}function _(p,A,x){return x>.5?A:p}function r(p,A,x,C,S){var P=p.length;if(S==1)for(var b=0;b<P;b++)C[b]=d(p[b],A[b],x);else for(var L=P&&p[0].length,b=0;b<P;b++)for(var R=0;R<L;R++)C[b][R]=d(p[b][R],A[b][R],x)}function n(p,A,x){var C=p.length,S=A.length;if(C!==S){var P=C>S;if(P)p.length=S;else for(var b=C;b<S;b++)p.push(x===1?A[b]:E.call(A[b]))}for(var L=p[0]&&p[0].length,b=0;b<p.length;b++)if(x===1)isNaN(p[b])&&(p[b]=A[b]);else for(var R=0;R<L;R++)isNaN(p[b][R])&&(p[b][R]=A[b][R])}function l(p,A,x){if(p===A)return!0;var C=p.length;if(C!==A.length)return!1;if(x===1){for(var S=0;S<C;S++)if(p[S]!==A[S])return!1}else for(var P=p[0].length,S=0;S<C;S++)for(var b=0;b<P;b++)if(p[S][b]!==A[S][b])return!1;return!0}function o(p,A,x,C,S,P,b,L,R){var T=p.length;if(R==1)for(var N=0;N<T;N++)L[N]=s(p[N],A[N],x[N],C[N],S,P,b);else for(var I=p[0].length,N=0;N<T;N++)for(var F=0;F<I;F++)L[N][F]=s(p[N][F],A[N][F],x[N][F],C[N][F],S,P,b)}function s(p,A,x,C,S,P,b){var L=(x-p)*.5,R=(C-A)*.5;return(2*(A-x)+L+R)*b+(-3*(A-x)-2*L-R)*P+L*S+A}function u(p){if(m(p)){var A=p.length;if(m(p[0])){for(var x=[],C=0;C<A;C++)x.push(E.call(p[C]));return x}return E.call(p)}return p}function f(p){return p[0]=Math.floor(p[0]),p[1]=Math.floor(p[1]),p[2]=Math.floor(p[2]),"rgba("+p.join(",")+")"}function e(p){var A=p[p.length-1].value;return m(A&&A[0])?2:1}function t(p,A,x,C,S,P){var b=p._getter,L=p._setter,R=A==="spline",T=C.length;if(T){var N=C[0].value,I=m(N),F=!1,U=!1,K=I?e(C):0,G;C.sort(function(te,ie){return te.time-ie.time}),G=C[T-1].time;for(var V=[],X=[],ee=C[0].value,oe=!0,ue=0;ue<T;ue++){V.push(C[ue].time/G);var Ae=C[ue].value;if(I&&l(Ae,ee,K)||!I&&Ae===ee||(oe=!1),ee=Ae,typeof Ae=="string"){var fe=y.parse(Ae);fe?(Ae=fe,F=!0):U=!0}X.push(Ae)}if(!(!P&&oe)){for(var he=X[T-1],ue=0;ue<T-1;ue++)I?n(X[ue],he,K):isNaN(X[ue])&&!isNaN(he)&&!U&&!F&&(X[ue]=he);I&&n(b(p._target,S),he,K);var ve=0,me=0,Te,Ce,ye,q,Q,$;if(F)var j=[0,0,0,0];var re=function(te,ie){var J;if(ie<0)J=0;else if(ie<me){for(Te=Math.min(ve+1,T-1),J=Te;J>=0&&!(V[J]<=ie);J--);J=Math.min(J,T-2)}else{for(J=ve;J<T&&!(V[J]>ie);J++);J=Math.min(J-1,T-2)}ve=J,me=ie;var ce=V[J+1]-V[J];if(ce!==0)if(Ce=(ie-V[J])/ce,R)if(q=X[J],ye=X[J===0?J:J-1],Q=X[J>T-2?T-1:J+1],$=X[J>T-3?T-1:J+2],I)o(ye,q,Q,$,Ce,Ce*Ce,Ce*Ce*Ce,b(te,S),K);else{var Se;if(F)Se=o(ye,q,Q,$,Ce,Ce*Ce,Ce*Ce*Ce,j,1),Se=f(j);else{if(U)return _(q,Q,Ce);Se=s(ye,q,Q,$,Ce,Ce*Ce,Ce*Ce*Ce)}L(te,S,Se)}else if(I)r(X[J],X[J+1],Ce,b(te,S),K);else{var Se;if(F)r(X[J],X[J+1],Ce,j,1),Se=f(j);else{if(U)return _(X[J],X[J+1],Ce);Se=d(X[J],X[J+1],Ce)}L(te,S,Se)}},k=new D({target:p._target,life:G,loop:p._loop,delay:p._delay,onframe:re,ondestroy:x});return A&&A!=="spline"&&(k.easing=A),k}}}var i=function(p,A,x,C){this._tracks={},this._target=p,this._loop=A||!1,this._getter=x||h,this._setter=C||a,this._clipCount=0,this._delay=0,this._doneList=[],this._onframeList=[],this._clipList=[]};i.prototype={when:function(p,A){var x=this._tracks;for(var C in A)if(A.hasOwnProperty(C)){if(!x[C]){x[C]=[];var S=this._getter(this._target,C);if(S==null)continue;p!==0&&x[C].push({time:0,value:u(S)})}x[C].push({time:p,value:A[C]})}return this},during:function(p){return this._onframeList.push(p),this},pause:function(){for(var p=0;p<this._clipList.length;p++)this._clipList[p].pause();this._paused=!0},resume:function(){for(var p=0;p<this._clipList.length;p++)this._clipList[p].resume();this._paused=!1},isPaused:function(){return!!this._paused},_doneCallback:function(){this._tracks={},this._clipList.length=0;for(var p=this._doneList,A=p.length,x=0;x<A;x++)p[x].call(this)},start:function(p,A){var x=this,C=0,S=function(){C--,C||x._doneCallback()},P;for(var b in this._tracks)if(this._tracks.hasOwnProperty(b)){var L=t(this,p,S,this._tracks[b],b,A);L&&(this._clipList.push(L),C++,this.animation&&this.animation.addClip(L),P=L)}if(P){var R=P.onframe;P.onframe=function(T,N){R(T,N);for(var I=0;I<x._onframeList.length;I++)x._onframeList[I](T,N)}}return C||this._doneCallback(),this},stop:function(p){for(var A=this._clipList,x=this.animation,C=0;C<A.length;C++){var S=A[C];p&&S.onframe(this._target,1),x&&x.removeClip(S)}A.length=0},delay:function(p){return this._delay=p,this},done:function(p){return p&&this._doneList.push(p),this},getClips:function(){return this._clipList}};var c=i;H.exports=c},function(H,M,g){var D=g(124);function y(m){this._target=m.target,this._life=m.life||1e3,this._delay=m.delay||0,this._initialized=!1,this.loop=m.loop==null?!1:m.loop,this.gap=m.gap||0,this.easing=m.easing||"Linear",this.onframe=m.onframe,this.ondestroy=m.ondestroy,this.onrestart=m.onrestart,this._pausedTime=0,this._paused=!1}y.prototype={constructor:y,step:function(m,E){if(this._initialized||(this._startTime=m+this._delay,this._initialized=!0),this._paused){this._pausedTime+=E;return}var h=(m-this._startTime-this._pausedTime)/this._life;if(!(h<0)){h=Math.min(h,1);var a=this.easing,d=typeof a=="string"?D[a]:a,_=typeof d=="function"?d(h):h;return this.fire("frame",_),h==1?this.loop?(this.restart(m),"restart"):(this._needsRemove=!0,"destroy"):null}},restart:function(m){var E=(m-this._startTime-this._pausedTime)%this._life;this._startTime=m-E+this.gap,this._pausedTime=0,this._needsRemove=!1},fire:function(m,E){m="on"+m,this[m]&&this[m](this._target,E)},pause:function(){this._paused=!0},resume:function(){this._paused=!1}};var v=y;H.exports=v},function(H,M){var g={linear:function(y){return y},quadraticIn:function(y){return y*y},quadraticOut:function(y){return y*(2-y)},quadraticInOut:function(y){return(y*=2)<1?.5*y*y:-.5*(--y*(y-2)-1)},cubicIn:function(y){return y*y*y},cubicOut:function(y){return--y*y*y+1},cubicInOut:function(y){return(y*=2)<1?.5*y*y*y:.5*((y-=2)*y*y+2)},quarticIn:function(y){return y*y*y*y},quarticOut:function(y){return 1- --y*y*y*y},quarticInOut:function(y){return(y*=2)<1?.5*y*y*y*y:-.5*((y-=2)*y*y*y-2)},quinticIn:function(y){return y*y*y*y*y},quinticOut:function(y){return--y*y*y*y*y+1},quinticInOut:function(y){return(y*=2)<1?.5*y*y*y*y*y:.5*((y-=2)*y*y*y*y+2)},sinusoidalIn:function(y){return 1-Math.cos(y*Math.PI/2)},sinusoidalOut:function(y){return Math.sin(y*Math.PI/2)},sinusoidalInOut:function(y){return .5*(1-Math.cos(Math.PI*y))},exponentialIn:function(y){return y===0?0:Math.pow(1024,y-1)},exponentialOut:function(y){return y===1?1:1-Math.pow(2,-10*y)},exponentialInOut:function(y){return y===0?0:y===1?1:(y*=2)<1?.5*Math.pow(1024,y-1):.5*(-Math.pow(2,-10*(y-1))+2)},circularIn:function(y){return 1-Math.sqrt(1-y*y)},circularOut:function(y){return Math.sqrt(1- --y*y)},circularInOut:function(y){return(y*=2)<1?-.5*(Math.sqrt(1-y*y)-1):.5*(Math.sqrt(1-(y-=2)*y)+1)},elasticIn:function(y){var v,m=.1,E=.4;return y===0?0:y===1?1:(!m||m<1?(m=1,v=E/4):v=E*Math.asin(1/m)/(2*Math.PI),-(m*Math.pow(2,10*(y-=1))*Math.sin((y-v)*(2*Math.PI)/E)))},elasticOut:function(y){var v,m=.1,E=.4;return y===0?0:y===1?1:(!m||m<1?(m=1,v=E/4):v=E*Math.asin(1/m)/(2*Math.PI),m*Math.pow(2,-10*y)*Math.sin((y-v)*(2*Math.PI)/E)+1)},elasticInOut:function(y){var v,m=.1,E=.4;return y===0?0:y===1?1:(!m||m<1?(m=1,v=E/4):v=E*Math.asin(1/m)/(2*Math.PI),(y*=2)<1?-.5*(m*Math.pow(2,10*(y-=1))*Math.sin((y-v)*(2*Math.PI)/E)):m*Math.pow(2,-10*(y-=1))*Math.sin((y-v)*(2*Math.PI)/E)*.5+1)},backIn:function(y){var v=1.70158;return y*y*((v+1)*y-v)},backOut:function(y){var v=1.70158;return--y*y*((v+1)*y+v)+1},backInOut:function(y){var v=2.5949095;return(y*=2)<1?.5*(y*y*((v+1)*y-v)):.5*((y-=2)*y*((v+1)*y+v)+2)},bounceIn:function(y){return 1-g.bounceOut(1-y)},bounceOut:function(y){return y<.36363636363636365?7.5625*y*y:y<.7272727272727273?7.5625*(y-=.5454545454545454)*y+.75:y<.9090909090909091?7.5625*(y-=.8181818181818182)*y+.9375:7.5625*(y-=.9545454545454546)*y+.984375},bounceInOut:function(y){return y<.5?g.bounceIn(y*2)*.5:g.bounceOut(y*2-1)*.5+.5}},D=g;H.exports=D},function(H,M,g){var D=g(53),y={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function v(b){return b=Math.round(b),b<0?0:b>255?255:b}function m(b){return b=Math.round(b),b<0?0:b>360?360:b}function E(b){return b<0?0:b>1?1:b}function h(b){return b.length&&b.charAt(b.length-1)==="%"?v(parseFloat(b)/100*255):v(parseInt(b,10))}function a(b){return b.length&&b.charAt(b.length-1)==="%"?E(parseFloat(b)/100):E(parseFloat(b))}function d(b,L,R){return R<0?R+=1:R>1&&(R-=1),R*6<1?b+(L-b)*R*6:R*2<1?L:R*3<2?b+(L-b)*(2/3-R)*6:b}function _(b,L,R){return b+(L-b)*R}function r(b,L,R,T,N){return b[0]=L,b[1]=R,b[2]=T,b[3]=N,b}function n(b,L){return b[0]=L[0],b[1]=L[1],b[2]=L[2],b[3]=L[3],b}var l=new D(20),o=null;function s(b,L){o&&n(o,L),o=l.put(b,o||L.slice())}function u(b,L){if(b){L=L||[];var R=l.get(b);if(R)return n(L,R);b=b+"";var T=b.replace(/ /g,"").toLowerCase();if(T in y)return n(L,y[T]),s(b,L),L;if(T.charAt(0)==="#"){if(T.length===4){var N=parseInt(T.substr(1),16);if(!(N>=0&&N<=4095)){r(L,0,0,0,1);return}return r(L,(N&3840)>>4|(N&3840)>>8,N&240|(N&240)>>4,N&15|(N&15)<<4,1),s(b,L),L}else if(T.length===7){var N=parseInt(T.substr(1),16);if(!(N>=0&&N<=16777215)){r(L,0,0,0,1);return}return r(L,(N&16711680)>>16,(N&65280)>>8,N&255,1),s(b,L),L}return}var I=T.indexOf("("),F=T.indexOf(")");if(I!==-1&&F+1===T.length){var U=T.substr(0,I),K=T.substr(I+1,F-(I+1)).split(","),G=1;switch(U){case"rgba":if(K.length!==4){r(L,0,0,0,1);return}G=a(K.pop());case"rgb":if(K.length!==3){r(L,0,0,0,1);return}return r(L,h(K[0]),h(K[1]),h(K[2]),G),s(b,L),L;case"hsla":if(K.length!==4){r(L,0,0,0,1);return}return K[3]=a(K[3]),f(K,L),s(b,L),L;case"hsl":if(K.length!==3){r(L,0,0,0,1);return}return f(K,L),s(b,L),L;default:return}}r(L,0,0,0,1)}}function f(b,L){var R=(parseFloat(b[0])%360+360)%360/360,T=a(b[1]),N=a(b[2]),I=N<=.5?N*(T+1):N+T-N*T,F=N*2-I;return L=L||[],r(L,v(d(F,I,R+1/3)*255),v(d(F,I,R)*255),v(d(F,I,R-1/3)*255),1),b.length===4&&(L[3]=b[3]),L}function e(b){if(b){var L=b[0]/255,R=b[1]/255,T=b[2]/255,N=Math.min(L,R,T),I=Math.max(L,R,T),F=I-N,U=(I+N)/2,K,G;if(F===0)K=0,G=0;else{U<.5?G=F/(I+N):G=F/(2-I-N);var V=((I-L)/6+F/2)/F,X=((I-R)/6+F/2)/F,ee=((I-T)/6+F/2)/F;L===I?K=ee-X:R===I?K=1/3+V-ee:T===I&&(K=2/3+X-V),K<0&&(K+=1),K>1&&(K-=1)}var oe=[K*360,G,U];return b[3]!=null&&oe.push(b[3]),oe}}function t(b,L){var R=u(b);if(R){for(var T=0;T<3;T++)L<0?R[T]=R[T]*(1-L)|0:R[T]=(255-R[T])*L+R[T]|0;return P(R,R.length===4?"rgba":"rgb")}}function i(b){var L=u(b);if(L)return((1<<24)+(L[0]<<16)+(L[1]<<8)+ +L[2]).toString(16).slice(1)}function c(b,L,R){if(!(!(L&&L.length)||!(b>=0&&b<=1))){R=R||[];var T=b*(L.length-1),N=Math.floor(T),I=Math.ceil(T),F=L[N],U=L[I],K=T-N;return R[0]=v(_(F[0],U[0],K)),R[1]=v(_(F[1],U[1],K)),R[2]=v(_(F[2],U[2],K)),R[3]=E(_(F[3],U[3],K)),R}}var p=c;function A(b,L,R){if(!(!(L&&L.length)||!(b>=0&&b<=1))){var T=b*(L.length-1),N=Math.floor(T),I=Math.ceil(T),F=u(L[N]),U=u(L[I]),K=T-N,G=P([v(_(F[0],U[0],K)),v(_(F[1],U[1],K)),v(_(F[2],U[2],K)),E(_(F[3],U[3],K))],"rgba");return R?{color:G,leftIndex:N,rightIndex:I,value:T}:G}}var x=A;function C(b,L,R,T){if(b=u(b),b)return b=e(b),L!=null&&(b[0]=m(L)),R!=null&&(b[1]=a(R)),T!=null&&(b[2]=a(T)),P(f(b),"rgba")}function S(b,L){if(b=u(b),b&&L!=null)return b[3]=E(L),P(b,"rgba")}function P(b,L){if(!(!b||!b.length)){var R=b[0]+","+b[1]+","+b[2];return(L==="rgba"||L==="hsva"||L==="hsla")&&(R+=","+b[3]),L+"("+R+")"}}M.parse=u,M.lift=t,M.toHex=i,M.fastLerp=c,M.fastMapToColor=p,M.lerp=A,M.mapToColor=x,M.modifyHSL=C,M.modifyAlpha=S,M.stringify=P},function(H,M,g){"use strict";M.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(H,M,g){"use strict";M.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(H,M,g){"use strict";M.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(H,M,g){"use strict";M.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(H,M,g){"use strict";M.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(H,M,g){"use strict";M.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(H,M,g){"use strict";M.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(H,M,g){"use strict";var D=g(134),y=g(138),v=g(139),m=g(145),E=g(0),h=g.n(E);h.a.registerAction({type:"grid3DChangeCamera",event:"grid3dcamerachanged",update:"series:updateCamera"},function(a,d){d.eachComponent({mainType:"grid3D",query:a},function(_){_.setView(a)})}),h.a.registerAction({type:"grid3DShowAxisPointer",event:"grid3dshowaxispointer",update:"grid3D:showAxisPointer"},function(a,d){}),h.a.registerAction({type:"grid3DHideAxisPointer",event:"grid3dhideaxispointer",update:"grid3D:hideAxisPointer"},function(a,d){})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(135),m=y.a.extendComponentModel({type:"cartesian3DAxis",axis:null,getCoordSysModel:function(){return this.ecModel.queryComponents({mainType:"grid3D",index:this.option.gridIndex,id:this.option.gridId})[0]}});y.a.helper.mixinAxisModelCommonMethods(m);function E(h,a){return a.type||(a.data?"category":"value")}Object(v.a)("x",m,E,{name:"X"}),Object(v.a)("y",m,E,{name:"Y"}),Object(v.a)("z",m,E,{name:"Z"})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(136),m=g(137),E=g.n(m),h=["value","category","time","log"];M.a=function(a,d,_,r){y.a.util.each(h,function(n){d.extend({type:a+"Axis3D."+n,__ordinalMeta:null,mergeDefaultAndTheme:function(l,o){var s=o.getTheme();y.a.util.merge(l,s.get(n+"Axis3D")),y.a.util.merge(l,this.getDefaultOption()),l.type=_(a,l)},optionUpdated:function(){var l=this.option;l.type==="category"&&(this.__ordinalMeta=E.a.createByAxisModel(this))},getCategories:function(){if(this.option.type==="category")return this.__ordinalMeta.categories},getOrdinalMeta:function(){return this.__ordinalMeta},defaultOption:y.a.util.merge(y.a.util.clone(v.a[n+"Axis3D"]),r||{},!0)})}),d.superClass.registerSubTypeDefaulter(a+"Axis3D",y.a.util.curry(_,a))}},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v={show:!0,grid3DIndex:0,inverse:!1,name:"",nameLocation:"middle",nameTextStyle:{fontSize:16},nameGap:20,axisPointer:{},axisLine:{},axisTick:{},axisLabel:{},splitArea:{}},m=y.a.util.merge({boundaryGap:!0,axisTick:{alignWithLabel:!1,interval:"auto"},axisLabel:{interval:"auto"},axisPointer:{label:{show:!1}}},v),E=y.a.util.merge({boundaryGap:[0,0],splitNumber:5,axisPointer:{label:{}}},v),h=y.a.util.defaults({scale:!0,min:"dataMin",max:"dataMax"},E),a=y.a.util.defaults({logBase:10},E);a.scale=!0,M.a={categoryAxis3D:m,valueAxis3D:E,timeAxis3D:h,logAxis3D:a}},function(H,M,g){var D=g(12),y=D.createHashMap,v=D.isObject,m=D.map;function E(r){this.categories=r.categories||[],this._needCollect=r.needCollect,this._deduplication=r.deduplication,this._map}E.createByAxisModel=function(r){var n=r.option,l=n.data,o=l&&m(l,d);return new E({categories:o,needCollect:!o,deduplication:n.dedplication!==!1})};var h=E.prototype;h.getOrdinal=function(r){return a(this).get(r)},h.parseAndCollect=function(r){var n,l=this._needCollect;if(typeof r!="string"&&!l)return r;if(l&&!this._deduplication)return n=this.categories.length,this.categories[n]=r,n;var o=a(this);return n=o.get(r),n==null&&(l?(n=this.categories.length,this.categories[n]=r,o.set(r,n)):n=NaN),n};function a(r){return r._map||(r._map=y(r.categories))}function d(r){return v(r)&&r.value!=null?r.value:r+""}var _=E;H.exports=_},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(38),m=g(31),E=g(32),h=y.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}}});y.a.util.merge(h.prototype,v.a),y.a.util.merge(h.prototype,m.a),y.a.util.merge(h.prototype,E.a);var a=h},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(2),m=g(39),E=g(22),h=g(3),a=g(73),d=g(34),_=g(140),r=g(142),n=g(58),l=g(40),o=h.a.firstNotNull;v.a.Shader.import(l.a),["x","y","z"].forEach(function(f){y.a.extendComponentView({type:f+"Axis3D"})});var s={x:0,y:2,z:1},u=y.a.extendComponentView({type:"grid3D",__ecgl__:!0,init:function(f,e){var t=[["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"]],i=["x","y","z"],c=new v.a.Material({shader:v.a.createShader("ecgl.color"),depthMask:!1,transparent:!0}),p=new v.a.Material({shader:v.a.createShader("ecgl.meshLines3D"),depthMask:!1,transparent:!0});c.define("fragment","DOUBLE_SIDED"),c.define("both","VERTEX_COLOR"),this.groupGL=new v.a.Node,this._control=new m.a({zr:e.getZr()}),this._control.init(),this._faces=t.map(function(x){var C=new _.a(x,p,c);return this.groupGL.add(C.rootNode),C},this),this._axes=i.map(function(x){var C=new r.a(x,p);return this.groupGL.add(C.rootNode),C},this);var A=e.getDevicePixelRatio();this._axisLabelSurface=new a.a({width:256,height:256,devicePixelRatio:A}),this._axisLabelSurface.onupdate=function(){e.getZr().refresh()},this._axisPointerLineMesh=new v.a.Mesh({geometry:new E.a({useNativeLine:!1}),material:p,castShadow:!1,ignorePicking:!0,renderOrder:3}),this.groupGL.add(this._axisPointerLineMesh),this._axisPointerLabelsSurface=new a.a({width:128,height:128,devicePixelRatio:A}),this._axisPointerLabelsMesh=new n.a({ignorePicking:!0,renderOrder:4,castShadow:!1}),this._axisPointerLabelsMesh.material.set("textureAtlas",this._axisPointerLabelsSurface.getTexture()),this.groupGL.add(this._axisPointerLabelsMesh),this._lightRoot=new v.a.Node,this._sceneHelper=new d.a,this._sceneHelper.initLight(this._lightRoot)},render:function(f,e,t){this._model=f,this._api=t;var i=f.coordinateSystem;i.viewGL.add(this._lightRoot),f.get("show")?i.viewGL.add(this.groupGL):i.viewGL.remove(this.groupGL);var c=this._control;c.setViewGL(i.viewGL);var p=f.getModel("viewControl");c.setFromViewControlModel(p,0),this._axisLabelSurface.clear();var A=["x","y","z"].reduce(function(x,C){var S=i.getAxis(C),P=S.model;return x[C]=o(P.get("axisLabel.interval"),f.get("axisLabel.interval")),S.scale.type==="ordinal"&&(x[C]==null||x[C]=="auto")&&(x[C]=Math.floor(S.scale.getTicks().length/8)),x},{});c.off("update"),f.get("show")&&(this._faces.forEach(function(x){x.update(A,f,e,t)},this),this._axes.forEach(function(x){x.update(f,A,this._axisLabelSurface,t)},this)),c.on("update",this._onCameraChange.bind(this,f,t),this),this._sceneHelper.setScene(i.viewGL.scene),this._sceneHelper.updateLight(f),i.viewGL.setPostEffect(f.getModel("postEffect"),t),i.viewGL.setTemporalSuperSampling(f.getModel("temporalSuperSampling")),this._initMouseHandler(f)},afterRender:function(f,e,t,i){var c=i.renderer;this._sceneHelper.updateAmbientCubemap(c,f,t),this._sceneHelper.updateSkybox(c,f,t)},showAxisPointer:function(f,e,t,i){this._doShowAxisPointer(),this._updateAxisPointer(i.value)},hideAxisPointer:function(f,e,t,i){this._doHideAxisPointer()},_initMouseHandler:function(f){var e=f.coordinateSystem,t=e.viewGL;f.get("show")&&f.get("axisPointer.show")?t.on("mousemove",this._updateAxisPointerOnMousePosition,this):t.off("mousemove",this._updateAxisPointerOnMousePosition)},_updateAxisPointerOnMousePosition:function(f){if(!f.target){for(var e=this._model,t=e.coordinateSystem,i=t.viewGL,c=i.castRay(f.offsetX,f.offsetY,new v.a.Ray),p,A=0;A<this._faces.length;A++){var x=this._faces[A];if(!x.rootNode.invisible){x.plane.normal.dot(i.camera.worldTransform.z)<0&&x.plane.normal.negate();var C=c.intersectPlane(x.plane);if(C){var S=t.getAxis(x.faceInfo[0]),P=t.getAxis(x.faceInfo[1]),b=s[x.faceInfo[0]],L=s[x.faceInfo[1]];S.contain(C.array[b])&&P.contain(C.array[L])&&(p=C)}}}if(p){var R=t.pointToData(p.array,[],!0);this._updateAxisPointer(R),this._doShowAxisPointer()}else this._doHideAxisPointer()}},_onCameraChange:function(f,e){f.get("show")&&(this._updateFaceVisibility(),this._updateAxisLinePosition());var t=this._control;e.dispatchAction({type:"grid3DChangeCamera",alpha:t.getAlpha(),beta:t.getBeta(),distance:t.getDistance(),center:t.getCenter(),from:this.uid,grid3DId:f.id})},_updateFaceVisibility:function(){var f=this._control.getCamera(),e=new v.a.Vector3;f.update();for(var t=0;t<this._faces.length/2;t++){for(var i=[],c=0;c<2;c++){var p=this._faces[t*2+c];p.rootNode.getWorldPosition(e),e.transformMat4(f.viewMatrix),i[c]=e.z}var A=i[0]>i[1]?0:1,x=this._faces[t*2+A],C=this._faces[t*2+1-A];x.rootNode.invisible=!0,C.rootNode.invisible=!1}},_updateAxisLinePosition:function(){var f=this._model.coordinateSystem,e=f.getAxis("x"),t=f.getAxis("y"),i=f.getAxis("z"),c=i.getExtentMax(),p=i.getExtentMin(),A=e.getExtentMin(),x=e.getExtentMax(),C=t.getExtentMax(),S=t.getExtentMin(),P=this._axes[0].rootNode,b=this._axes[1].rootNode,L=this._axes[2].rootNode,R=this._faces,T=R[4].rootNode.invisible?S:C,N=R[2].rootNode.invisible?c:p,I=R[0].rootNode.invisible?A:x,F=R[2].rootNode.invisible?c:p,U=R[0].rootNode.invisible?x:A,K=R[4].rootNode.invisible?S:C;P.rotation.identity(),b.rotation.identity(),L.rotation.identity(),R[4].rootNode.invisible&&(this._axes[0].flipped=!0,P.rotation.rotateX(Math.PI)),R[0].rootNode.invisible&&(this._axes[1].flipped=!0,b.rotation.rotateZ(Math.PI)),R[4].rootNode.invisible&&(this._axes[2].flipped=!0,L.rotation.rotateY(Math.PI)),P.position.set(0,N,T),b.position.set(I,F,0),L.position.set(U,0,K),P.update(),b.update(),L.update(),this._updateAxisLabelAlign()},_updateAxisLabelAlign:function(){var f=this._control.getCamera(),e=[new v.a.Vector4,new v.a.Vector4],t=new v.a.Vector4;this.groupGL.getWorldPosition(t),t.w=1,t.transformMat4(f.viewMatrix).transformMat4(f.projectionMatrix),t.x/=t.w,t.y/=t.w,this._axes.forEach(function(i){for(var c=i.axisLineCoords,p=i.labelsMesh.geometry,A=0;A<e.length;A++)e[A].setArray(c[A]),e[A].w=1,e[A].transformMat4(i.rootNode.worldTransform).transformMat4(f.viewMatrix).transformMat4(f.projectionMatrix),e[A].x/=e[A].w,e[A].y/=e[A].w;var x=e[1].x-e[0].x,C=e[1].y-e[0].y,S=(e[1].x+e[0].x)/2,P=(e[1].y+e[0].y)/2,b,L;Math.abs(C/x)<.5?(b="center",L=P>t.y?"bottom":"top"):(L="middle",b=S>t.x?"left":"right"),i.setSpriteAlign(b,L,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(f){var e=this._model.coordinateSystem,t=e.dataToPoint(f),i=this._axisPointerLineMesh,c=i.geometry,p=this._model.getModel("axisPointer"),A=this._api.getDevicePixelRatio();c.convertToDynamicArray(!0);function x(oe){return h.a.firstNotNull(oe.model.get("axisPointer.show"),p.get("show"))}function C(oe){var ue=oe.model.getModel("axisPointer",p),Ae=ue.getModel("lineStyle"),fe=v.a.parseColor(Ae.get("color")),he=o(Ae.get("width"),1),ve=o(Ae.get("opacity"),1);return fe[3]*=ve,{color:fe,lineWidth:he}}for(var S=0;S<this._faces.length;S++){var P=this._faces[S];if(!P.rootNode.invisible){for(var b=P.faceInfo,L=b[3]<0?e.getAxis(b[2]).getExtentMin():e.getAxis(b[2]).getExtentMax(),R=s[b[2]],T=0;T<2;T++){var N=b[T],I=b[1-T],F=e.getAxis(N),U=e.getAxis(I);if(x(F)){var K=[0,0,0],G=[0,0,0],V=s[N],X=s[I];K[V]=G[V]=t[V],K[R]=G[R]=L,K[X]=U.getExtentMin(),G[X]=U.getExtentMax();var ee=C(F);c.addLine(K,G,ee.color,ee.lineWidth*A)}}if(x(e.getAxis(b[2]))){var K=t.slice(),G=t.slice();G[R]=L;var ee=C(e.getAxis(b[2]));c.addLine(K,G,ee.color,ee.lineWidth*A)}}}c.convertToTypedArray(),this._updateAxisPointerLabelsMesh(f),this._api.getZr().refresh()},_updateAxisPointerLabelsMesh:function(f){var e=this._model,t=this._axisPointerLabelsMesh,i=this._axisPointerLabelsSurface,c=e.coordinateSystem,p=e.getModel("axisPointer");t.geometry.convertToDynamicArray(!0),i.clear();var A={x:"y",y:"x",z:"y"};this._axes.forEach(function(x,C){var S=c.getAxis(x.dim),P=S.model,b=P.getModel("axisPointer",p),L=b.getModel("label"),R=b.get("lineStyle.color");if(!(!L.get("show")||!b.get("show"))){var T=f[C],N=L.get("formatter"),I=S.scale.getLabel(T);if(N!=null)I=N(I,f);else if(S.scale.type==="interval"||S.scale.type==="log"){var F=y.a.number.getPrecisionSafe(S.scale.getTicks()[0]);I=T.toFixed(F+2)}var U=L.getModel("textStyle"),K=U.get("color"),G=new y.a.graphic.Text;y.a.graphic.setTextStyle(G.style,U,{text:I,textFill:K||R,textAlign:"left",textVerticalAlign:"top"});var V=i.add(G),X=G.getBoundingRect(),ee=this._api.getDevicePixelRatio(),oe=x.rootNode.position.toArray(),ue=s[A[x.dim]];oe[ue]+=(x.flipped?-1:1)*L.get("margin"),oe[s[x.dim]]=S.dataToCoord(f[C]),t.geometry.addSprite(oe,[X.width*ee,X.height*ee],V,x.textAlign,x.textVerticalAlign)}},this),i.getZr().refreshImmediately(),t.material.set("uvScale",i.getCoordsScale()),t.geometry.convertToTypedArray()},dispose:function(){this.groupGL.removeAll(),this._control.dispose()}})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(2),m=g(3),E=g(22),h=g(141),a=g(74),d=m.a.firstNotNull,_={x:0,y:2,z:1};function r(l,o,s,u){var f=[0,0,0],e=u<0?s.getExtentMin():s.getExtentMax();f[_[s.dim]]=e,l.position.setArray(f),l.rotation.identity(),o.distance=-Math.abs(e),o.normal.set(0,0,0),s.dim==="x"?(l.rotation.rotateY(u*Math.PI/2),o.normal.x=-u):s.dim==="z"?(l.rotation.rotateX(-u*Math.PI/2),o.normal.y=-u):(u>0&&l.rotation.rotateY(Math.PI),o.normal.z=-u)}function n(l,o,s){this.rootNode=new v.a.Node;var u=new v.a.Mesh({geometry:new E.a({useNativeLine:!1}),material:o,castShadow:!1,ignorePicking:!0,renderOrder:1}),f=new v.a.Mesh({geometry:new h.a,material:s,castShadow:!1,culling:!1,ignorePicking:!0,renderOrder:0});this.rootNode.add(f),this.rootNode.add(u),this.faceInfo=l,this.plane=new v.a.Plane,this.linesMesh=u,this.quadsMesh=f}n.prototype.update=function(l,o,s,u){var f=o.coordinateSystem,e=[f.getAxis(this.faceInfo[0]),f.getAxis(this.faceInfo[1])],t=this.linesMesh.geometry,i=this.quadsMesh.geometry;t.convertToDynamicArray(!0),i.convertToDynamicArray(!0),this._updateSplitLines(t,e,o,l,u),this._udpateSplitAreas(i,e,o,l,u),t.convertToTypedArray(),i.convertToTypedArray();var c=f.getAxis(this.faceInfo[2]);r(this.rootNode,this.plane,c,this.faceInfo[3])},n.prototype._updateSplitLines=function(l,o,s,u,f){var e=f.getDevicePixelRatio();o.forEach(function(t,i){var c=t.model,p=o[1-i].getExtent();if(!t.scale.isBlank()){var A=c.getModel("splitLine",s.getModel("splitLine"));if(A.get("show")){var x=A.getModel("lineStyle"),C=x.get("color"),S=d(x.get("opacity"),1),P=d(x.get("width"),1),b=A.get("interval");(b==null||b==="auto")&&(b=u[t.dim]),C=y.a.util.isArray(C)?C:[C];for(var L=t.getTicksCoords(),R=0,T=0;T<L.length;T++)if(!Object(a.a)(t,T,b)){var N=L[T],I=v.a.parseColor(C[R%C.length]);I[3]*=S;var F=[0,0,0],U=[0,0,0];F[i]=U[i]=N,F[1-i]=p[0],U[1-i]=p[1],l.addLine(F,U,I,P*e),R++}}}})},n.prototype._udpateSplitAreas=function(l,o,s,u,f){o.forEach(function(e,t){var i=e.model,c=o[1-t].getExtent();if(!e.scale.isBlank()){var p=i.getModel("splitArea",s.getModel("splitArea"));if(p.get("show")){var A=p.getModel("areaStyle"),x=A.get("color"),C=d(A.get("opacity"),1),S=p.get("interval");(S==null||S==="auto")&&(S=u[e.dim]),x=y.a.util.isArray(x)?x:[x];for(var P=e.getTicksCoords(),b=0,L=[0,0,0],R=[0,0,0],T=0;T<P.length;T++){var N=P[T],I=[0,0,0],F=[0,0,0];if(I[t]=F[t]=N,I[1-t]=c[0],F[1-t]=c[1],T===0){L=I,R=F;continue}if(!Object(a.a)(e,T,S)){var U=v.a.parseColor(x[b%x.length]);U[3]*=C,l.addQuad([L,I,F,R],U),L=I,R=F,b++}}}}})},M.a=n},function(H,M,g){"use strict";var D=g(13),y=g(0),v=g.n(y),m=g(33),E=g(1),h=g.n(E),a=h.a.vec3,d=D.a.extend(function(){return{segmentScale:1,useNativeLine:!0,attributes:{position:new D.a.Attribute("position","float",3,"POSITION"),normal:new D.a.Attribute("normal","float",3,"NORMAL"),color:new D.a.Attribute("color","float",4,"COLOR")}}},{resetOffset:function(){this._vertexOffset=0,this._faceOffset=0},setQuadCount:function(_){var r=this.attributes,n=this.getQuadVertexCount()*_,l=this.getQuadTriangleCount()*_;this.vertexCount!==n&&(r.position.init(n),r.normal.init(n),r.color.init(n)),this.triangleCount!==l&&(this.indices=n>65535?new Uint32Array(l*3):new Uint16Array(l*3))},getQuadVertexCount:function(){return 4},getQuadTriangleCount:function(){return 2},addQuad:function(){var _=a.create(),r=a.create(),n=a.create(),l=[0,3,1,3,2,1];return function(o,s){var u=this.attributes.position,f=this.attributes.normal,e=this.attributes.color;a.sub(_,o[1],o[0]),a.sub(r,o[2],o[1]),a.cross(n,_,r),a.normalize(n,n);for(var t=0;t<4;t++)u.set(this._vertexOffset+t,o[t]),e.set(this._vertexOffset+t,s),f.set(this._vertexOffset+t,n);for(var i=this._faceOffset*3,t=0;t<6;t++)this.indices[i+t]=l[t]+this._vertexOffset;this._vertexOffset+=4,this._faceOffset+=2}}()});v.a.util.defaults(d.prototype,m.a),M.a=d},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(2),m=g(22),E=g(3),h=g(58),a=g(74),d=E.a.firstNotNull,_={x:0,y:2,z:1};function r(l,o){var s=new v.a.Mesh({geometry:new m.a({useNativeLine:!1}),material:o,castShadow:!1,ignorePicking:!0,renderOrder:2}),u=new h.a;u.material.depthMask=!1;var f=new v.a.Node;f.add(s),f.add(u),this.rootNode=f,this.dim=l,this.linesMesh=s,this.labelsMesh=u,this.axisLineCoords=null,this.labelElements=[]}var n={x:"y",y:"x",z:"y"};r.prototype.update=function(l,o,s,u){var f=l.coordinateSystem,e=f.getAxis(this.dim),t=o[this.dim],i=this.linesMesh.geometry,c=this.labelsMesh.geometry;i.convertToDynamicArray(!0),c.convertToDynamicArray(!0);var p=e.model,A=e.getExtent(),Ae=u.getDevicePixelRatio(),x=p.getModel("axisLine",l.getModel("axisLine")),C=p.getModel("axisTick",l.getModel("axisTick")),S=p.getModel("axisLabel",l.getModel("axisLabel")),P=x.get("lineStyle.color");if(x.get("show")){var b=x.getModel("lineStyle"),L=[0,0,0],R=[0,0,0],T=_[e.dim];L[T]=A[0],R[T]=A[1],this.axisLineCoords=[L,R];var N=v.a.parseColor(P),I=d(b.get("width"),1),F=d(b.get("opacity"),1);N[3]*=F,i.addLine(L,R,N,I*Ae)}if(C.get("show")){var U=C.getModel("lineStyle"),K=v.a.parseColor(d(U.get("color"),P)),I=d(U.get("width"),1);K[3]*=d(U.get("opacity"),1);var G=e.getTicksCoords(),V=C.get("interval");(V==null||V==="auto")&&(V=t);for(var X=C.get("length"),ee=0;ee<G.length;ee++)if(!Object(a.a)(e,ee,V)){var oe=G[ee],L=[0,0,0],R=[0,0,0],T=_[e.dim],ue=_[n[e.dim]];L[T]=R[T]=oe,R[ue]=X,i.addLine(L,R,K,I*Ae)}}this.labelElements=[];var Ae=u.getDevicePixelRatio();if(S.get("show")){for(var fe=e.getLabelsCoords(),he=p.get("data"),V=t,ve=S.get("margin"),me=p.getFormattedLabels(),Te=e.scale.getTicks(),ee=0;ee<fe.length;ee++)if(!Object(a.a)(e,ee,V)){var oe=fe[ee],Ce=[0,0,0],T=_[e.dim],ue=_[n[e.dim]];Ce[T]=Ce[T]=oe,Ce[ue]=ve;var ye=S;he&&he[Te[ee]]&&he[Te[ee]].textStyle&&(ye=new y.a.Model(he[Te[ee]].textStyle,S,p.ecModel));var q=d(ye.get("color"),P),Q=new y.a.graphic.Text;y.a.graphic.setTextStyle(Q.style,ye,{text:me[ee],textFill:typeof q=="function"?q(e.type==="category"?me[ee]:e.type==="value"?Te[ee]+"":Te[ee],ee):q,textVerticalAlign:"top",textAlign:"left"});var $=s.add(Q),j=Q.getBoundingRect();c.addSprite(Ce,[j.width*Ae,j.height*Ae],$),this.labelElements.push(Q)}}if(p.get("name")){var re=p.getModel("nameTextStyle"),Ce=[0,0,0],T=_[e.dim],ue=_[n[e.dim]],k=d(re.get("color"),P),te=re.get("borderColor"),I=re.get("borderWidth");Ce[T]=Ce[T]=(A[0]+A[1])/2,Ce[ue]=p.get("nameGap");var Q=new y.a.graphic.Text;y.a.graphic.setTextStyle(Q.style,re,{text:p.get("name"),textFill:k,textStroke:te,lineWidth:I});var $=s.add(Q),j=Q.getBoundingRect();c.addSprite(Ce,[j.width*Ae,j.height*Ae],$),Q.__idx=this.labelElements.length,this.nameLabelElement=Q}this.labelsMesh.material.set("textureAtlas",s.getTexture()),this.labelsMesh.material.set("uvScale",s.getCoordsScale()),i.convertToTypedArray(),c.convertToTypedArray()},r.prototype.setSpriteAlign=function(l,o,s){for(var u=s.getDevicePixelRatio(),f=this.labelsMesh.geometry,e=0;e<this.labelElements.length;e++){var t=this.labelElements[e],i=t.getBoundingRect();f.setSpriteAlign(e,[i.width*u,i.height*u],l,o)}var c=this.nameLabelElement;if(c){var i=c.getBoundingRect();f.setSpriteAlign(c.__idx,[i.width*u,i.height*u],l,o),f.dirty()}this.textAlign=l,this.textVerticalAlign=o},M.a=r},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(13),m=g(33),E=[0,1,2,0,2,3],h=v.a.extend(function(){return{attributes:{position:new v.a.Attribute("position","float",3,"POSITION"),texcoord:new v.a.Attribute("texcoord","float",2,"TEXCOORD_0"),offset:new v.a.Attribute("offset","float",2),color:new v.a.Attribute("color","float",4,"COLOR")}}},{resetOffset:function(){this._vertexOffset=0,this._faceOffset=0},setSpriteCount:function(a){this._spriteCount=a;var d=a*4,_=a*2;this.vertexCount!==d&&(this.attributes.position.init(d),this.attributes.offset.init(d),this.attributes.color.init(d)),this.triangleCount!==_&&(this.indices=d>65535?new Uint32Array(_*3):new Uint16Array(_*3))},setSpriteAlign:function(a,d,_,r,n){_==null&&(_="left"),r==null&&(r="top");var l,o,s,u;switch(n=n||0,_){case"left":l=n,s=d[0]+n;break;case"center":case"middle":l=-d[0]/2,s=d[0]/2;break;case"right":l=-d[0]-n,s=-n;break}switch(r){case"bottom":o=n,u=d[1]+n;break;case"middle":o=-d[1]/2,u=d[1]/2;break;case"top":o=-d[1]-n,u=-n;break}var f=a*4,e=this.attributes.offset;e.set(f,[l,u]),e.set(f+1,[s,u]),e.set(f+2,[s,o]),e.set(f+3,[l,o])},addSprite:function(a,d,_,r,n,l){var o=this._vertexOffset;this.setSprite(this._vertexOffset/4,a,d,_,r,n,l);for(var s=0;s<E.length;s++)this.indices[this._faceOffset*3+s]=E[s]+o;return this._faceOffset+=2,this._vertexOffset+=4,o/4},setSprite:function(a,d,_,r,n,l,o){for(var s=a*4,u=this.attributes,f=0;f<4;f++)u.position.set(s+f,d);var e=u.texcoord;e.set(s,[r[0][0],r[0][1]]),e.set(s+1,[r[1][0],r[0][1]]),e.set(s+2,[r[1][0],r[1][1]]),e.set(s+3,[r[0][0],r[1][1]]),this.setSpriteAlign(a,_,n,l,o)}});y.a.util.defaults(h.prototype,m.a),M.a=h},function(H,M,g){"use strict";M.a=`@export ecgl.labels.vertex
|
|
|
|
attribute vec3 position: POSITION;
|
|
attribute vec2 texcoord: TEXCOORD_0;
|
|
attribute vec2 offset;
|
|
#ifdef VERTEX_COLOR
|
|
attribute vec4 a_Color : COLOR;
|
|
varying vec4 v_Color;
|
|
#endif
|
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
uniform vec4 viewport : VIEWPORT;
|
|
|
|
varying vec2 v_Texcoord;
|
|
|
|
void main()
|
|
{
|
|
vec4 proj = worldViewProjection * vec4(position, 1.0);
|
|
|
|
vec2 screen = (proj.xy / abs(proj.w) + 1.0) * 0.5 * viewport.zw;
|
|
|
|
screen += offset;
|
|
|
|
proj.xy = (screen / viewport.zw - 0.5) * 2.0 * abs(proj.w);
|
|
gl_Position = proj;
|
|
#ifdef VERTEX_COLOR
|
|
v_Color = a_Color;
|
|
#endif
|
|
v_Texcoord = texcoord;
|
|
}
|
|
@end
|
|
|
|
|
|
@export ecgl.labels.fragment
|
|
|
|
uniform vec3 color : [1.0, 1.0, 1.0];
|
|
uniform float alpha : 1.0;
|
|
uniform sampler2D textureAtlas;
|
|
uniform vec2 uvScale: [1.0, 1.0];
|
|
|
|
#ifdef VERTEX_COLOR
|
|
varying vec4 v_Color;
|
|
#endif
|
|
varying float v_Miter;
|
|
|
|
varying vec2 v_Texcoord;
|
|
|
|
void main()
|
|
{
|
|
gl_FragColor = vec4(color, alpha) * texture2D(textureAtlas, v_Texcoord * uvScale);
|
|
#ifdef VERTEX_COLOR
|
|
gl_FragColor *= v_Color;
|
|
#endif
|
|
}
|
|
|
|
@end`},function(H,M,g){"use strict";var D=g(146),y=g(148),v=g(0),m=g.n(v),E=g(41),h=g.n(E),a=g(20),d=g(3);function _(o,s){var u=o.getBoxLayoutParams(),f=h.a.getLayoutRect(u,{width:s.getWidth(),height:s.getHeight()});f.y=s.getHeight()-f.y-f.height,this.viewGL.setViewport(f.x,f.y,f.width,f.height,s.getDevicePixelRatio());var e=o.get("boxWidth"),t=o.get("boxHeight"),i=o.get("boxDepth");["x","y","z"].forEach(function(c){if(!this.getAxis(c))throw new Error("Grid"+o.id+" don't have "+c+"Axis")},this),this.getAxis("x").setExtent(-e/2,e/2),this.getAxis("y").setExtent(i/2,-i/2),this.getAxis("z").setExtent(-t/2,t/2),this.size=[e,t,i]}function r(o,s){var u={};function f(e,t){u[e]=u[e]||[1/0,-1/0],u[e][0]=Math.min(t[0],u[e][0]),u[e][1]=Math.max(t[1],u[e][1])}o.eachSeries(function(e){if(e.coordinateSystem===this){var t=e.getData();["x","y","z"].forEach(function(i){f(i,t.getDataExtent(e.coordDimToDataDim(i)[0],!0))})}},this),["xAxis3D","yAxis3D","zAxis3D"].forEach(function(e){o.eachComponent(e,function(t){var i=e.charAt(0),c=t.getReferringComponents("grid3D")[0],p=c.coordinateSystem;if(p===this){var A=p.getAxis(i);if(A){console.warn("Can't have two %s in one grid3D",e);return}var x=m.a.helper.createScale(u[i]||[1/0,-1/0],t);A=new y.a(i,x),A.type=t.get("type");var C=A.type==="category";A.onBand=C&&t.get("boundaryGap"),A.inverse=t.get("inverse"),t.axis=A,A.model=t,p.addAxis(A)}},this)},this),this.resize(this.model,s)}var n={dimensions:D.a.prototype.dimensions,create:function(o,s){var u=[];o.eachComponent("grid3D",function(t){t.__viewGL=t.__viewGL||new a.a;var i=new D.a;i.model=t,i.viewGL=t.__viewGL,t.coordinateSystem=i,u.push(i),i.resize=_,i.update=r});var f=["xAxis3D","yAxis3D","zAxis3D"];function e(t,i){return f.map(function(c){var p=t.getReferringComponents(c)[0];if(p==null&&(p=i.getComponent(c)),!p)throw new Error(c+' "'+d.a.firstNotNull(t.get(c+"Index"),t.get(c+"Id"),0)+'" not found');return p})}return o.eachSeries(function(t){if(t.get("coordinateSystem")==="cartesian3D"){var i=t.getReferringComponents("grid3D")[0];if(i==null){var c=e(t,o),i=c[0].getCoordSysModel();c.forEach(function(x){var C=x.getCoordSysModel();if(!C)throw new Error('grid3D "'+d.a.firstNotNull(x.get("gridIndex"),x.get("gridId"),0)+'" not found');if(C!==i)throw new Error("xAxis3D, yAxis3D, zAxis3D must use the same grid")})}var p=i.coordinateSystem;t.coordinateSystem=p}}),u}};m.a.registerCoordinateSystem("grid3D",n);var l=n},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(147),m=g.n(v);function E(h){m.a.call(this,h),this.size=[0,0,0]}E.prototype={constructor:E,type:"cartesian3D",dimensions:["x","y","z"],model:null,containPoint:function(h){return this.getAxis("x").contain(h[0])&&this.getAxis("y").contain(h[2])&&this.getAxis("z").contain(h[1])},containData:function(h){return this.getAxis("x").containData(h[0])&&this.getAxis("y").containData(h[1])&&this.getAxis("z").containData(h[2])},dataToPoint:function(h,a,d){return a=a||[],a[0]=this.getAxis("x").dataToCoord(h[0],d),a[2]=this.getAxis("y").dataToCoord(h[1],d),a[1]=this.getAxis("z").dataToCoord(h[2],d),a},pointToData:function(h,a,d){return a=a||[],a[0]=this.getAxis("x").coordToData(h[0],d),a[1]=this.getAxis("y").coordToData(h[2],d),a[2]=this.getAxis("z").coordToData(h[1],d),a}},y.a.util.inherits(E,m.a),M.a=E},function(H,M,g){var D=g(12);function y(E){return this._axes[E]}var v=function(E){this._axes={},this._dimList=[],this.name=E||""};v.prototype={constructor:v,type:"cartesian",getAxis:function(E){return this._axes[E]},getAxes:function(){return D.map(this._dimList,y,this)},getAxesByScale:function(E){return E=E.toLowerCase(),D.filter(this.getAxes(),function(h){return h.scale.type===E})},addAxis:function(E){var h=E.dim;this._axes[h]=E,this._dimList.push(h)},dataToCoord:function(E){return this._dataCoordConvert(E,"dataToCoord")},coordToData:function(E){return this._dataCoordConvert(E,"coordToData")},_dataCoordConvert:function(E,h){for(var a=this._dimList,d=E instanceof Array?[]:{},_=0;_<a.length;_++){var r=a[_],n=this._axes[r];d[r]=n[h](E[r])}return d}};var m=v;H.exports=m},function(H,M,g){"use strict";var D=g(0),y=g.n(D);function v(m,E,h){y.a.Axis.call(this,m,E,h)}v.prototype={constructor:v,getExtentMin:function(){var m=this._extent;return Math.min(m[0],m[1])},getExtentMax:function(){var m=this._extent;return Math.max(m[0],m[1])}},y.a.util.inherits(v,y.a.Axis),M.a=v},function(H,M,g){var D=g(12),y=g(150),v=g(78);function m(t){return isNaN(t)?"-":(t=(t+"").split("."),t[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g,"$1,")+(t.length>1?"."+t[1]:""))}function E(t,i){return t=(t||"").toLowerCase().replace(/-(.)/g,function(c,p){return p.toUpperCase()}),i&&t&&(t=t.charAt(0).toUpperCase()+t.slice(1)),t}var h=D.normalizeCssArray;function a(t){return String(t).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}var d=["a","b","c","d","e","f","g"],_=function(t,i){return"{"+t+(i==null?"":i)+"}"};function r(t,i,c){D.isArray(i)||(i=[i]);var p=i.length;if(!p)return"";for(var A=i[0].$vars||[],x=0;x<A.length;x++){var C=d[x];t=t.replace(_(C),_(C,0))}for(var S=0;S<p;S++)for(var P=0;P<A.length;P++){var b=i[S][A[P]];t=t.replace(_(d[P],S),c?a(b):b)}return t}function n(t,i,c){return D.each(i,function(p,A){t=t.replace("{"+A+"}",c?a(p):p)}),t}function l(t,A){t=D.isString(t)?{color:t,extraCssText:A}:t||{};var c=t.color,p=t.type,A=t.extraCssText;return c?p==="subItem"?'<span style="display:inline-block;vertical-align:middle;margin-right:8px;margin-left:3px;border-radius:4px;width:4px;height:4px;background-color:'+a(c)+";"+(A||"")+'"></span>':'<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:'+a(c)+";"+(A||"")+'"></span>':""}var o=function(t){return t<10?"0"+t:t};function s(t,i,c){(t==="week"||t==="month"||t==="quarter"||t==="half-year"||t==="year")&&(t=`MM-dd
|
|
yyyy`);var p=v.parseDate(i),A=c?"UTC":"",x=p["get"+A+"FullYear"](),C=p["get"+A+"Month"]()+1,S=p["get"+A+"Date"](),P=p["get"+A+"Hours"](),b=p["get"+A+"Minutes"](),L=p["get"+A+"Seconds"]();return t=t.replace("MM",o(C)).replace("M",C).replace("yyyy",x).replace("yy",x%100).replace("dd",o(S)).replace("d",S).replace("hh",o(P)).replace("h",P).replace("mm",o(b)).replace("m",b).replace("ss",o(L)).replace("s",L),t}function u(t){return t&&t.charAt(0).toUpperCase()+t.substr(1)}var f=y.truncateText,e=y.getBoundingRect;M.addCommas=m,M.toCamelCase=E,M.normalizeCssArray=h,M.encodeHTML=a,M.formatTpl=r,M.formatTplSimple=n,M.getTooltipMarker=l,M.formatTime=s,M.capitalFirst=u,M.truncateText=f,M.getTextRect=e},function(H,M,g){var D=g(75),y=g(151),v=g(12),m=v.getContext,E=v.extend,h=v.retrieve2,a=v.retrieve3,d={},_=0,r=5e3,n=/\{([a-zA-Z0-9_]+)\|([^}]*)\}/g,l="12px sans-serif",o={};function s(I,F){o[I]=F}function u(I,F){F=F||l;var U=I+":"+F;if(d[U])return d[U];for(var K=(I+"").split(`
|
|
`),G=0,V=0,X=K.length;V<X;V++)G=Math.max(b(K[V],F).width,G);return _>r&&(_=0,d={}),_++,d[U]=G,G}function f(I,F,U,K,G,V,X){return V?t(I,F,U,K,G,V,X):e(I,F,U,K,G,X)}function e(I,F,U,K,G,V){var X=L(I,F,G,V),ee=u(I,F);G&&(ee+=G[1]+G[3]);var oe=X.outerHeight,ue=i(0,ee,U),Ae=c(0,oe,K),fe=new D(ue,Ae,ee,oe);return fe.lineHeight=X.lineHeight,fe}function t(I,F,U,K,G,V,X){var ee=R(I,{rich:V,truncate:X,font:F,textAlign:U,textPadding:G}),oe=ee.outerWidth,ue=ee.outerHeight,Ae=i(0,oe,U),fe=c(0,ue,K);return new D(Ae,fe,oe,ue)}function i(I,F,U){return U==="right"?I-=F:U==="center"&&(I-=F/2),I}function c(I,F,U){return U==="middle"?I-=F/2:U==="bottom"&&(I-=F),I}function p(I,F,U){var K=F.x,G=F.y,V=F.height,X=F.width,ee=V/2,oe="left",ue="top";switch(I){case"left":K-=U,G+=ee,oe="right",ue="middle";break;case"right":K+=U+X,G+=ee,ue="middle";break;case"top":K+=X/2,G-=U,oe="center",ue="bottom";break;case"bottom":K+=X/2,G+=V+U,oe="center";break;case"inside":K+=X/2,G+=ee,oe="center",ue="middle";break;case"insideLeft":K+=U,G+=ee,ue="middle";break;case"insideRight":K+=X-U,G+=ee,oe="right",ue="middle";break;case"insideTop":K+=X/2,G+=U,oe="center";break;case"insideBottom":K+=X/2,G+=V-U,oe="center",ue="bottom";break;case"insideTopLeft":K+=U,G+=U;break;case"insideTopRight":K+=X-U,G+=U,oe="right";break;case"insideBottomLeft":K+=U,G+=V-U,ue="bottom";break;case"insideBottomRight":K+=X-U,G+=V-U,oe="right",ue="bottom";break}return{x:K,y:G,textAlign:oe,textVerticalAlign:ue}}function A(I,F,U,K,G){if(!F)return"";var V=(I+"").split(`
|
|
`);G=x(F,U,K,G);for(var X=0,ee=V.length;X<ee;X++)V[X]=C(V[X],G);return V.join(`
|
|
`)}function x(I,F,G,K){K=E({},K),K.font=F;var G=h(G,"...");K.maxIterations=h(K.maxIterations,2);var V=K.minChar=h(K.minChar,0);K.cnCharWidth=u("\u56FD",F);var X=K.ascCharWidth=u("a",F);K.placeholder=h(K.placeholder,"");for(var ee=I=Math.max(0,I-1),oe=0;oe<V&&ee>=X;oe++)ee-=X;var ue=u(G);return ue>ee&&(G="",ue=0),ee=I-ue,K.ellipsis=G,K.ellipsisWidth=ue,K.contentWidth=ee,K.containerWidth=I,K}function C(I,F){var U=F.containerWidth,K=F.font,G=F.contentWidth;if(!U)return"";var V=u(I,K);if(V<=U)return I;for(var X=0;;X++){if(V<=G||X>=F.maxIterations){I+=F.ellipsis;break}var ee=X===0?S(I,G,F.ascCharWidth,F.cnCharWidth):V>0?Math.floor(I.length*G/V):0;I=I.substr(0,ee),V=u(I,K)}return I===""&&(I=F.placeholder),I}function S(I,F,U,K){for(var G=0,V=0,X=I.length;V<X&&G<F;V++){var ee=I.charCodeAt(V);G+=0<=ee&&ee<=127?U:K}return V}function P(I){return u("\u56FD",I)}function b(I,F){return o.measureText(I,F)}o.measureText=function(I,F){var U=m();return U.font=F||l,U.measureText(I)};function L(I,F,U,K){I!=null&&(I+="");var G=P(F),V=I?I.split(`
|
|
`):[],X=V.length*G,ee=X;if(U&&(ee+=U[0]+U[2]),I&&K){var oe=K.outerHeight,ue=K.outerWidth;if(oe!=null&&ee>oe)I="",V=[];else if(ue!=null)for(var Ae=x(ue-(U?U[1]+U[3]:0),F,K.ellipsis,{minChar:K.minChar,placeholder:K.placeholder}),fe=0,he=V.length;fe<he;fe++)V[fe]=C(V[fe],Ae)}return{lines:V,height:X,outerHeight:ee,lineHeight:G}}function R(I,F){var U={lines:[],width:0,height:0};if(I!=null&&(I+=""),!I)return U;for(var K=n.lastIndex=0,G;(G=n.exec(I))!=null;){var V=G.index;V>K&&T(U,I.substring(K,V)),T(U,G[2],G[1]),K=n.lastIndex}K<I.length&&T(U,I.substring(K,I.length));var X=U.lines,ee=0,oe=0,ue=[],Ae=F.textPadding,fe=F.truncate,he=fe&&fe.outerWidth,ve=fe&&fe.outerHeight;Ae&&(he!=null&&(he-=Ae[1]+Ae[3]),ve!=null&&(ve-=Ae[0]+Ae[2]));for(var me=0;me<X.length;me++){for(var Te=X[me],Ce=0,ye=0,q=0;q<Te.tokens.length;q++){var Q=Te.tokens[q],$=Q.styleName&&F.rich[Q.styleName]||{},j=Q.textPadding=$.textPadding,re=Q.font=$.font||F.font,k=Q.textHeight=h($.textHeight,P(re));if(j&&(k+=j[0]+j[2]),Q.height=k,Q.lineHeight=a($.textLineHeight,F.textLineHeight,k),Q.textAlign=$&&$.textAlign||F.textAlign,Q.textVerticalAlign=$&&$.textVerticalAlign||"middle",ve!=null&&ee+Q.lineHeight>ve)return{lines:[],width:0,height:0};Q.textWidth=u(Q.text,re);var te=$.textWidth,ie=te==null||te==="auto";if(typeof te=="string"&&te.charAt(te.length-1)==="%")Q.percentWidth=te,ue.push(Q),te=0;else{if(ie){te=Q.textWidth;var J=$.textBackgroundColor,ce=J&&J.image;ce&&(ce=y.findExistImage(ce),y.isImageReady(ce)&&(te=Math.max(te,ce.width*k/ce.height)))}var Se=j?j[1]+j[3]:0;te+=Se;var Le=he!=null?he-ye:null;Le!=null&&Le<te&&(!ie||Le<Se?(Q.text="",Q.textWidth=te=0):(Q.text=A(Q.text,Le-Se,re,fe.ellipsis,{minChar:fe.minChar}),Q.textWidth=u(Q.text,re),te=Q.textWidth+Se))}ye+=Q.width=te,$&&(Ce=Math.max(Ce,Q.lineHeight))}Te.width=ye,Te.lineHeight=Ce,ee+=Ce,oe=Math.max(oe,ye)}U.outerWidth=U.width=h(F.textWidth,oe),U.outerHeight=U.height=h(F.textHeight,ee),Ae&&(U.outerWidth+=Ae[1]+Ae[3],U.outerHeight+=Ae[0]+Ae[2]);for(var me=0;me<ue.length;me++){var Q=ue[me],ze=Q.percentWidth;Q.width=parseInt(ze,10)/100*oe}return U}function T(I,F,U){for(var K=F==="",G=F.split(`
|
|
`),V=I.lines,X=0;X<G.length;X++){var ee=G[X],oe={styleName:U,text:ee,isLineHolder:!ee&&!K};if(X)V.push({tokens:[oe]});else{var ue=(V[V.length-1]||(V[0]={tokens:[]})).tokens,Ae=ue.length;Ae===1&&ue[0].isLineHolder?ue[0]=oe:(ee||!Ae||K)&&ue.push(oe)}}}function N(I){return(I.fontSize||I.fontFamily)&&[I.fontStyle,I.fontWeight,(I.fontSize||12)+"px",I.fontFamily||"sans-serif"].join(" ")||I.textFont||I.font}M.DEFAULT_FONT=l,M.$override=s,M.getWidth=u,M.getBoundingRect=f,M.adjustTextX=i,M.adjustTextY=c,M.adjustTextPositionOnRect=p,M.truncateText=A,M.getLineHeight=P,M.measureText=b,M.parsePlainText=L,M.parseRichText=R,M.makeFont=N},function(H,M,g){var D=g(53),y=new D(50);function v(a){if(typeof a=="string"){var d=y.get(a);return d&&d.image}else return a}function m(a,d,_,r,n){if(a)if(typeof a=="string"){if(d&&d.__zrImageSrc===a||!_)return d;var l=y.get(a),o={hostEl:_,cb:r,cbPayload:n};return l?(d=l.image,!h(d)&&l.pending.push(o)):(!d&&(d=new Image),d.onload=E,y.put(a,d.__cachedImgObj={image:d,pending:[o]}),d.src=d.__zrImageSrc=a),d}else return a;else return d}function E(){var a=this.__cachedImgObj;this.onload=this.__cachedImgObj=null;for(var d=0;d<a.pending.length;d++){var _=a.pending[d],r=_.cb;r&&r(this,_.cbPayload),_.hostEl.dirty()}a.pending.length=0}function h(a){return a&&a.width&&a.height}M.findExistImage=v,M.createOrUpdateImage=m,M.isImageReady=h},function(H,M,g){"use strict";var D=g(8),y=g(11),v=g(4),m=g(15),E=g(52),h=g(9),a=g(46),d=g(7),_=g(19),r=g(24),n=g(72),l=g(70),o=g(71),s=g(153),u=g(17),f=g(10),e=g(6),t=g(5),i=g(25),c=g(36),p=g(30),A=g(14),x=g(79),C=g(1),S=g.n(C),P=g(154),b=S.a.mat4,L=S.a.vec3,R=["px","nx","py","ny","pz","nz"];d.a.import(P.a);var T=D.a.extend(function(){return{softShadow:T.PCF,shadowBlur:1,lightFrustumBias:"auto",kernelPCF:new Float32Array([1,0,1,1,-1,1,0,1,-1,0,-1,-1,1,-1,0,-1]),precision:"mediump",_lastRenderNotCastShadow:!1,_frameBuffer:new f.a,_textures:{},_shadowMapNumber:{POINT_LIGHT:0,DIRECTIONAL_LIGHT:0,SPOT_LIGHT:0},_depthMaterials:{},_distanceMaterials:{},_opaqueCasters:[],_receivers:[],_lightsCastShadow:[],_lightCameras:{},_lightMaterials:{},_texturePool:new x.a}},function(){this._gaussianPassH=new A.a({fragment:d.a.source("clay.compositor.gaussian_blur")}),this._gaussianPassV=new A.a({fragment:d.a.source("clay.compositor.gaussian_blur")}),this._gaussianPassH.setUniform("blurSize",this.shadowBlur),this._gaussianPassH.setUniform("blurDir",0),this._gaussianPassV.setUniform("blurSize",this.shadowBlur),this._gaussianPassV.setUniform("blurDir",1),this._outputDepthPass=new A.a({fragment:d.a.source("clay.sm.debug_depth")})},{render:function(N,I,F,U){F||(F=I.getMainCamera()),this.trigger("beforerender",this,N,I,F),this._renderShadowPass(N,I,F,U),this.trigger("afterrender",this,N,I,F)},renderDebug:function(N,I){N.saveClear();var F=N.viewport,U=0,K=0,G=I||F.width/4,V=G;this.softShadow===T.VSM?this._outputDepthPass.material.define("fragment","USE_VSM"):this._outputDepthPass.material.undefine("fragment","USE_VSM");for(var X in this._textures){var ee=this._textures[X];N.setViewport(U,K,G*ee.width/ee.height,V),this._outputDepthPass.setUniform("depthMap",ee),this._outputDepthPass.render(N),U+=G*ee.width/ee.height}N.setViewport(F),N.restoreClear()},_updateCasterAndReceiver:function(N,I){if(I.castShadow&&this._opaqueCasters.push(I),I.receiveShadow?(this._receivers.push(I),I.material.set("shadowEnabled",1),I.material.set("pcfKernel",this.kernelPCF)):I.material.set("shadowEnabled",0),!I.material.shader&&I.material.updateShader&&I.material.updateShader(N),this.softShadow===T.VSM)I.material.define("fragment","USE_VSM"),I.material.undefine("fragment","PCF_KERNEL_SIZE");else{I.material.undefine("fragment","USE_VSM");var F=this.kernelPCF;F&&F.length?I.material.define("fragment","PCF_KERNEL_SIZE",F.length/2):I.material.undefine("fragment","PCF_KERNEL_SIZE")}},_update:function(N,I){for(var F=0;F<I.opaqueList.length;F++)this._updateCasterAndReceiver(N,I.opaqueList[F]);for(var F=0;F<I.transparentList.length;F++)this._updateCasterAndReceiver(N,I.transparentList[F]);for(var F=0;F<I.lights.length;F++){var U=I.lights[F];U.castShadow&&this._lightsCastShadow.push(U)}},_renderShadowPass:function(N,I,F,U){for(var K in this._shadowMapNumber)this._shadowMapNumber[K]=0;this._lightsCastShadow.length=0,this._opaqueCasters.length=0,this._receivers.length=0;var G=N.gl;if(U||I.update(),F&&F.update(),this._update(N,I),!this._lightsCastShadow.length&&this._lastRenderNotCastShadow)return;this._lastRenderNotCastShadow=this._lightsCastShadow===0,G.enable(G.DEPTH_TEST),G.depthMask(!0),G.disable(G.BLEND),G.clearColor(1,1,1,1);for(var V=[],X=[],ee=[],oe=[],ue=[],Ae=[],fe,he=0;he<this._lightsCastShadow.length;he++){var ve=this._lightsCastShadow[he];if(ve instanceof l.a){if(fe){console.warn("Only one direectional light supported with shadow cascade");continue}if(ve.shadowCascade>4){console.warn("Support at most 4 cascade");continue}ve.shadowCascade>1&&(fe=ve.shadowCascade),this.renderDirectionalLightShadow(N,I,F,ve,this._opaqueCasters,ue,oe,ee)}else ve instanceof n.a?this.renderSpotLightShadow(N,I,ve,this._opaqueCasters,X,V):ve instanceof o.a&&this.renderPointLightShadow(N,I,ve,this._opaqueCasters,Ae);this._shadowMapNumber[ve.type]++}for(var me in this._shadowMapNumber)for(var Te=this._shadowMapNumber[me],Ce=me+"_SHADOWMAP_COUNT",he=0;he<this._receivers.length;he++){var ye=this._receivers[he],q=ye.material;q.fragmentDefines[Ce]!==Te&&(Te>0?q.define("fragment",Ce,Te):q.isDefined("fragment",Ce)&&q.undefine("fragment",Ce))}for(var he=0;he<this._receivers.length;he++){var ye=this._receivers[he],q=ye.material;fe?q.define("fragment","SHADOW_CASCADE",fe.shadowCascade):q.undefine("fragment","SHADOW_CASCADE")}var Q=I.shadowUniforms;function $(ie){return ie.height}if(ee.length>0){var j=ee.map($);if(Q.directionalLightShadowMaps={value:ee,type:"tv"},Q.directionalLightMatrices={value:oe,type:"m4v"},Q.directionalLightShadowMapSizes={value:j,type:"1fv"},fe){var re=ue.slice(),k=ue.slice();re.pop(),k.shift(),re.reverse(),k.reverse(),oe.reverse(),Q.shadowCascadeClipsNear={value:re,type:"1fv"},Q.shadowCascadeClipsFar={value:k,type:"1fv"}}}if(V.length>0){var te=V.map($),Q=I.shadowUniforms;Q.spotLightShadowMaps={value:V,type:"tv"},Q.spotLightMatrices={value:X,type:"m4v"},Q.spotLightShadowMapSizes={value:te,type:"1fv"}}Ae.length>0&&(Q.pointLightShadowMaps={value:Ae,type:"tv"})},renderDirectionalLightShadow:function(){var N=new E.a,I=new h.a,F=new m.a,U=new h.a,K=new h.a,G=new h.a,V=new h.a;return function(X,ee,oe,ue,Ae,fe,he,ve){var me=this._getDepthMaterial(ue),Te={getMaterial:function(ot){return ot.shadowDepthMaterial||me},sortCompare:a.a.opaqueSortCompare};if(!ee.viewBoundingBoxLastFrame.isFinite()){var Ce=ee.getBoundingBox();ee.viewBoundingBoxLastFrame.copy(Ce).applyTransform(oe.viewMatrix)}var ye=Math.min(-ee.viewBoundingBoxLastFrame.min.z,oe.far),q=Math.max(-ee.viewBoundingBoxLastFrame.max.z,oe.near),Q=this._getDirectionalLightCamera(ue,ee,oe),$=G.array;V.copy(Q.projectionMatrix),b.invert(K.array,Q.worldTransform.array),b.multiply(K.array,K.array,oe.worldTransform.array),b.multiply($,V.array,K.array);for(var j=[],re=oe instanceof c.a,k=(oe.near+oe.far)/(oe.near-oe.far),te=2*oe.near*oe.far/(oe.near-oe.far),ie=0;ie<=ue.shadowCascade;ie++){var J=q*Math.pow(ye/q,ie/ue.shadowCascade),ce=q+(ye-q)*ie/ue.shadowCascade,Se=J*ue.cascadeSplitLogFactor+ce*(1-ue.cascadeSplitLogFactor);j.push(Se),fe.push(-(-Se*k+te)/-Se)}var Le=this._getTexture(ue,ue.shadowCascade);ve.push(Le);var ze=X.viewport,We=X.gl;this._frameBuffer.attach(Le),this._frameBuffer.bind(X),We.clear(We.COLOR_BUFFER_BIT|We.DEPTH_BUFFER_BIT);for(var ie=0;ie<ue.shadowCascade;ie++){var tt=j[ie],je=j[ie+1];re?b.perspective(I.array,oe.fov/180*Math.PI,oe.aspect,tt,je):b.ortho(I.array,oe.left,oe.right,oe.bottom,oe.top,tt,je),N.setFromProjection(I),N.getTransformedBoundingBox(F,K),F.applyProjection(V);var pe=F.min.array,Oe=F.max.array;pe[0]=Math.max(pe[0],-1),pe[1]=Math.max(pe[1],-1),Oe[0]=Math.min(Oe[0],1),Oe[1]=Math.min(Oe[1],1),U.ortho(pe[0],Oe[0],pe[1],Oe[1],1,-1),Q.projectionMatrix.multiplyLeft(U);var Ie=ue.shadowResolution||512;X.setViewport((ue.shadowCascade-ie-1)*Ie,0,Ie,Ie,1),X.renderPass(Ae,Q,Te),this.softShadow===T.VSM&&this._gaussianFilter(X,Le,Le.width);var Pe=new h.a;Pe.copy(Q.viewMatrix).multiplyLeft(Q.projectionMatrix),he.push(Pe.array),Q.projectionMatrix.copy(V)}this._frameBuffer.unbind(X),X.setViewport(ze)}}(),renderSpotLightShadow:function(N,I,F,U,K,G){var V=this._getTexture(F),X=this._getSpotLightCamera(F),ee=N.gl;this._frameBuffer.attach(V),this._frameBuffer.bind(N),ee.clear(ee.COLOR_BUFFER_BIT|ee.DEPTH_BUFFER_BIT);var oe=this._getDepthMaterial(F),ue={getMaterial:function(fe){return fe.shadowDepthMaterial||oe},sortCompare:a.a.opaqueSortCompare};N.renderPass(N.cullRenderList(U,null,X),X,ue),this._frameBuffer.unbind(N),this.softShadow===T.VSM&&this._gaussianFilter(N,V,V.width);var Ae=new h.a;Ae.copy(X.worldTransform).invert().multiplyLeft(X.projectionMatrix),G.push(V),K.push(Ae.array)},renderPointLightShadow:function(N,I,F,U,K){var G=this._getTexture(F),V=N.gl;K.push(G);for(var X=this._getDepthMaterial(F),ee={getMaterial:function(fe){return fe.shadowDepthMaterial||X},sortCompare:a.a.opaqueSortCompare},oe=0;oe<6;oe++){var ue=R[oe],Ae=this._getPointLightCamera(F,ue);this._frameBuffer.attach(G,V.COLOR_ATTACHMENT0,V.TEXTURE_CUBE_MAP_POSITIVE_X+oe),this._frameBuffer.bind(N),V.clear(V.COLOR_BUFFER_BIT|V.DEPTH_BUFFER_BIT),N.renderPass(N.cullRenderList(U,null,Ae),Ae,ee)}this._frameBuffer.unbind(N)},_getDepthMaterial:function(N){var I=this._lightMaterials[N.__uid__],F=N instanceof o.a;if(!I){var U=F?"clay.sm.distance.":"clay.sm.depth.";I=new u.a({precision:this.precision,shader:new d.a(d.a.source(U+"vertex"),d.a.source(U+"fragment"))}),this._lightMaterials[N.__uid__]=I}return N.shadowSlopeScale!=null&&I.setUniform("slopeScale",N.shadowSlopeScale),N.shadowBias!=null&&I.setUniform("shadowBias",N.shadowBias),this.softShadow===T.VSM?I.define("fragment","USE_VSM"):I.undefine("fragment","USE_VSM"),F&&(I.set("lightPosition",N.getWorldPosition().array),I.set("range",N.range)),I},_gaussianFilter:function(N,I,F){var U={width:F,height:F,type:e.a.FLOAT},K=this._texturePool.get(U);this._frameBuffer.attach(K),this._frameBuffer.bind(N),this._gaussianPassH.setUniform("texture",I),this._gaussianPassH.setUniform("textureWidth",F),this._gaussianPassH.render(N),this._frameBuffer.attach(I),this._gaussianPassV.setUniform("texture",K),this._gaussianPassV.setUniform("textureHeight",F),this._gaussianPassV.render(N),this._frameBuffer.unbind(N),this._texturePool.put(K)},_getTexture:function(N,I){var F=N.__uid__,U=this._textures[F],K=N.shadowResolution||512;return I=I||1,U||(N instanceof o.a?U=new i.a:U=new t.a,U.width=K*I,U.height=K,this.softShadow===T.VSM?(U.type=e.a.FLOAT,U.anisotropic=4):(U.minFilter=y.a.NEAREST,U.magFilter=y.a.NEAREST,U.useMipmap=!1),this._textures[F]=U),U},_getPointLightCamera:function(N,I){this._lightCameras.point||(this._lightCameras.point={px:new c.a,nx:new c.a,py:new c.a,ny:new c.a,pz:new c.a,nz:new c.a});var F=this._lightCameras.point[I];switch(F.far=N.range,F.fov=90,F.position.set(0,0,0),I){case"px":F.lookAt(v.a.POSITIVE_X,v.a.NEGATIVE_Y);break;case"nx":F.lookAt(v.a.NEGATIVE_X,v.a.NEGATIVE_Y);break;case"py":F.lookAt(v.a.POSITIVE_Y,v.a.POSITIVE_Z);break;case"ny":F.lookAt(v.a.NEGATIVE_Y,v.a.NEGATIVE_Z);break;case"pz":F.lookAt(v.a.POSITIVE_Z,v.a.NEGATIVE_Y);break;case"nz":F.lookAt(v.a.NEGATIVE_Z,v.a.NEGATIVE_Y);break}return N.getWorldPosition(F.position),F.update(),F},_getDirectionalLightCamera:function(){var N=new h.a,I=new m.a,F=new m.a;return function(U,K,G){this._lightCameras.directional||(this._lightCameras.directional=new p.a);var V=this._lightCameras.directional;I.copy(K.viewBoundingBoxLastFrame),I.intersection(G.frustum.boundingBox),V.position.copy(I.min).add(I.max).scale(.5).transformMat4(G.worldTransform),V.rotation.copy(U.rotation),V.scale.copy(U.scale),V.updateWorldTransform(),h.a.invert(N,V.worldTransform),h.a.multiply(N,N,G.worldTransform),F.copy(I).applyTransform(N);var X=F.min.array,ee=F.max.array;return V.position.set((X[0]+ee[0])/2,(X[1]+ee[1])/2,ee[2]).transformMat4(V.worldTransform),V.near=0,V.far=-X[2]+ee[2],isNaN(this.lightFrustumBias)?V.far*=4:V.far+=this.lightFrustumBias,V.left=X[0],V.right=ee[0],V.top=ee[1],V.bottom=X[1],V.update(!0),V}}(),_getSpotLightCamera:function(N){this._lightCameras.spot||(this._lightCameras.spot=new c.a);var I=this._lightCameras.spot;return I.fov=N.penumbraAngle*2,I.far=N.range,I.worldTransform.copy(N.worldTransform),I.updateProjectionMatrix(),b.invert(I.viewMatrix.array,I.worldTransform.array),I},dispose:function(N){var I=N.gl||N;this._frameBuffer&&this._frameBuffer.dispose(I);for(var F in this._textures)this._textures[F].dispose(I);this._texturePool.clear(N.gl),this._depthMaterials={},this._distanceMaterials={},this._textures={},this._lightCameras={},this._shadowMapNumber={POINT_LIGHT:0,DIRECTIONAL_LIGHT:0,SPOT_LIGHT:0},this._meshMaterials={};for(var U=0;U<this._receivers.length;U++){var K=this._receivers[U];if(K.material&&K.material.shader){var G=K.material,V=G.shader;V.undefine("fragment","POINT_LIGHT_SHADOW_COUNT"),V.undefine("fragment","DIRECTIONAL_LIGHT_SHADOW_COUNT"),V.undefine("fragment","AMBIENT_LIGHT_SHADOW_COUNT"),G.set("shadowEnabled",0)}}this._opaqueCasters=[],this._receivers=[],this._lightsCastShadow=[]}});T.VSM=1,T.PCF=2,M.a=T},function(H,M,g){"use strict";var D=g(7),y={};function v(){this._pool={}}v.prototype.get=function(a){var d=a;if(this._pool[d])return this._pool[d];var _=y[a];if(!_){console.error('Shader "'+a+'" is not in the library');return}var r=new D.a(_.vertex,_.fragment);return this._pool[d]=r,r},v.prototype.clear=function(){this._pool={}};function m(a,d,_){y[a]={vertex:d,fragment:_}}var E=new v,h={createLibrary:function(){return new v},get:function(){return E.get.apply(E,arguments)},template:m,clear:function(){return E.clear()}}},function(H,M,g){"use strict";M.a=`@export clay.sm.depth.vertex
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
attribute vec3 position : POSITION;
|
|
#ifdef SHADOW_TRANSPARENT
|
|
attribute vec2 texcoord : TEXCOORD_0;
|
|
#endif
|
|
@import clay.chunk.skinning_header
|
|
varying vec4 v_ViewPosition;
|
|
#ifdef SHADOW_TRANSPARENT
|
|
varying vec2 v_Texcoord;
|
|
#endif
|
|
void main(){
|
|
vec3 skinnedPosition = position;
|
|
#ifdef SKINNING
|
|
@import clay.chunk.skin_matrix
|
|
skinnedPosition = (skinMatrixWS * vec4(position, 1.0)).xyz;
|
|
#endif
|
|
v_ViewPosition = worldViewProjection * vec4(skinnedPosition, 1.0);
|
|
gl_Position = v_ViewPosition;
|
|
#ifdef SHADOW_TRANSPARENT
|
|
v_Texcoord = texcoord;
|
|
#endif
|
|
}
|
|
@end
|
|
@export clay.sm.depth.fragment
|
|
varying vec4 v_ViewPosition;
|
|
#ifdef SHADOW_TRANSPARENT
|
|
varying vec2 v_Texcoord;
|
|
#endif
|
|
uniform float bias : 0.001;
|
|
uniform float slopeScale : 1.0;
|
|
#ifdef SHADOW_TRANSPARENT
|
|
uniform sampler2D transparentMap;
|
|
#endif
|
|
@import clay.util.encode_float
|
|
void main(){
|
|
float depth = v_ViewPosition.z / v_ViewPosition.w;
|
|
#ifdef USE_VSM
|
|
depth = depth * 0.5 + 0.5;
|
|
float moment1 = depth;
|
|
float moment2 = depth * depth;
|
|
float dx = dFdx(depth);
|
|
float dy = dFdy(depth);
|
|
moment2 += 0.25*(dx*dx+dy*dy);
|
|
gl_FragColor = vec4(moment1, moment2, 0.0, 1.0);
|
|
#else
|
|
float dx = dFdx(depth);
|
|
float dy = dFdy(depth);
|
|
depth += sqrt(dx*dx + dy*dy) * slopeScale + bias;
|
|
#ifdef SHADOW_TRANSPARENT
|
|
if (texture2D(transparentMap, v_Texcoord).a <= 0.1) {
|
|
gl_FragColor = encodeFloat(0.9999);
|
|
return;
|
|
}
|
|
#endif
|
|
gl_FragColor = encodeFloat(depth * 0.5 + 0.5);
|
|
#endif
|
|
}
|
|
@end
|
|
@export clay.sm.debug_depth
|
|
uniform sampler2D depthMap;
|
|
varying vec2 v_Texcoord;
|
|
@import clay.util.decode_float
|
|
void main() {
|
|
vec4 tex = texture2D(depthMap, v_Texcoord);
|
|
#ifdef USE_VSM
|
|
gl_FragColor = vec4(tex.rgb, 1.0);
|
|
#else
|
|
float depth = decodeFloat(tex);
|
|
gl_FragColor = vec4(depth, depth, depth, 1.0);
|
|
#endif
|
|
}
|
|
@end
|
|
@export clay.sm.distance.vertex
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
uniform mat4 world : WORLD;
|
|
attribute vec3 position : POSITION;
|
|
@import clay.chunk.skinning_header
|
|
varying vec3 v_WorldPosition;
|
|
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);
|
|
v_WorldPosition = (world * vec4(skinnedPosition, 1.0)).xyz;
|
|
}
|
|
@end
|
|
@export clay.sm.distance.fragment
|
|
uniform vec3 lightPosition;
|
|
uniform float range : 100;
|
|
varying vec3 v_WorldPosition;
|
|
@import clay.util.encode_float
|
|
void main(){
|
|
float dist = distance(lightPosition, v_WorldPosition);
|
|
#ifdef USE_VSM
|
|
gl_FragColor = vec4(dist, dist * dist, 0.0, 0.0);
|
|
#else
|
|
dist = dist / range;
|
|
gl_FragColor = encodeFloat(dist);
|
|
#endif
|
|
}
|
|
@end
|
|
@export clay.plugin.shadow_map_common
|
|
@import clay.util.decode_float
|
|
float tapShadowMap(sampler2D map, vec2 uv, float z){
|
|
vec4 tex = texture2D(map, uv);
|
|
return step(z, decodeFloat(tex) * 2.0 - 1.0);
|
|
}
|
|
float pcf(sampler2D map, vec2 uv, float z, float textureSize, vec2 scale) {
|
|
float shadowContrib = tapShadowMap(map, uv, z);
|
|
vec2 offset = vec2(1.0 / textureSize) * scale;
|
|
#ifdef PCF_KERNEL_SIZE
|
|
for (int _idx_ = 0; _idx_ < PCF_KERNEL_SIZE; _idx_++) {{
|
|
shadowContrib += tapShadowMap(map, uv + offset * pcfKernel[_idx_], z);
|
|
}}
|
|
return shadowContrib / float(PCF_KERNEL_SIZE + 1);
|
|
#else
|
|
shadowContrib += tapShadowMap(map, uv+vec2(offset.x, 0.0), z);
|
|
shadowContrib += tapShadowMap(map, uv+vec2(offset.x, offset.y), z);
|
|
shadowContrib += tapShadowMap(map, uv+vec2(-offset.x, offset.y), z);
|
|
shadowContrib += tapShadowMap(map, uv+vec2(0.0, offset.y), z);
|
|
shadowContrib += tapShadowMap(map, uv+vec2(-offset.x, 0.0), z);
|
|
shadowContrib += tapShadowMap(map, uv+vec2(-offset.x, -offset.y), z);
|
|
shadowContrib += tapShadowMap(map, uv+vec2(offset.x, -offset.y), z);
|
|
shadowContrib += tapShadowMap(map, uv+vec2(0.0, -offset.y), z);
|
|
return shadowContrib / 9.0;
|
|
#endif
|
|
}
|
|
float pcf(sampler2D map, vec2 uv, float z, float textureSize) {
|
|
return pcf(map, uv, z, textureSize, vec2(1.0));
|
|
}
|
|
float chebyshevUpperBound(vec2 moments, float z){
|
|
float p = 0.0;
|
|
z = z * 0.5 + 0.5;
|
|
if (z <= moments.x) {
|
|
p = 1.0;
|
|
}
|
|
float variance = moments.y - moments.x * moments.x;
|
|
variance = max(variance, 0.0000001);
|
|
float mD = moments.x - z;
|
|
float pMax = variance / (variance + mD * mD);
|
|
pMax = clamp((pMax-0.4)/(1.0-0.4), 0.0, 1.0);
|
|
return max(p, pMax);
|
|
}
|
|
float computeShadowContrib(
|
|
sampler2D map, mat4 lightVPM, vec3 position, float textureSize, vec2 scale, vec2 offset
|
|
) {
|
|
vec4 posInLightSpace = lightVPM * vec4(position, 1.0);
|
|
posInLightSpace.xyz /= posInLightSpace.w;
|
|
float z = posInLightSpace.z;
|
|
if(all(greaterThan(posInLightSpace.xyz, vec3(-0.99, -0.99, -1.0))) &&
|
|
all(lessThan(posInLightSpace.xyz, vec3(0.99, 0.99, 1.0)))){
|
|
vec2 uv = (posInLightSpace.xy+1.0) / 2.0;
|
|
#ifdef USE_VSM
|
|
vec2 moments = texture2D(map, uv * scale + offset).xy;
|
|
return chebyshevUpperBound(moments, z);
|
|
#else
|
|
return pcf(map, uv * scale + offset, z, textureSize, scale);
|
|
#endif
|
|
}
|
|
return 1.0;
|
|
}
|
|
float computeShadowContrib(sampler2D map, mat4 lightVPM, vec3 position, float textureSize) {
|
|
return computeShadowContrib(map, lightVPM, position, textureSize, vec2(1.0), vec2(0.0));
|
|
}
|
|
float computeShadowContribOmni(samplerCube map, vec3 direction, float range)
|
|
{
|
|
float dist = length(direction);
|
|
vec4 shadowTex = textureCube(map, direction);
|
|
#ifdef USE_VSM
|
|
vec2 moments = shadowTex.xy;
|
|
float variance = moments.y - moments.x * moments.x;
|
|
float mD = moments.x - dist;
|
|
float p = variance / (variance + mD * mD);
|
|
if(moments.x + 0.001 < dist){
|
|
return clamp(p, 0.0, 1.0);
|
|
}else{
|
|
return 1.0;
|
|
}
|
|
#else
|
|
return step(dist, (decodeFloat(shadowTex) + 0.0002) * range);
|
|
#endif
|
|
}
|
|
@end
|
|
@export clay.plugin.compute_shadow_map
|
|
#if defined(SPOT_LIGHT_SHADOWMAP_COUNT) || defined(DIRECTIONAL_LIGHT_SHADOWMAP_COUNT) || defined(POINT_LIGHT_SHADOWMAP_COUNT)
|
|
#ifdef SPOT_LIGHT_SHADOWMAP_COUNT
|
|
uniform sampler2D spotLightShadowMaps[SPOT_LIGHT_SHADOWMAP_COUNT]:unconfigurable;
|
|
uniform mat4 spotLightMatrices[SPOT_LIGHT_SHADOWMAP_COUNT]:unconfigurable;
|
|
uniform float spotLightShadowMapSizes[SPOT_LIGHT_SHADOWMAP_COUNT]:unconfigurable;
|
|
#endif
|
|
#ifdef DIRECTIONAL_LIGHT_SHADOWMAP_COUNT
|
|
#if defined(SHADOW_CASCADE)
|
|
uniform sampler2D directionalLightShadowMaps[1]:unconfigurable;
|
|
uniform mat4 directionalLightMatrices[SHADOW_CASCADE]:unconfigurable;
|
|
uniform float directionalLightShadowMapSizes[1]:unconfigurable;
|
|
uniform float shadowCascadeClipsNear[SHADOW_CASCADE]:unconfigurable;
|
|
uniform float shadowCascadeClipsFar[SHADOW_CASCADE]:unconfigurable;
|
|
#else
|
|
uniform sampler2D directionalLightShadowMaps[DIRECTIONAL_LIGHT_SHADOWMAP_COUNT]:unconfigurable;
|
|
uniform mat4 directionalLightMatrices[DIRECTIONAL_LIGHT_SHADOWMAP_COUNT]:unconfigurable;
|
|
uniform float directionalLightShadowMapSizes[DIRECTIONAL_LIGHT_SHADOWMAP_COUNT]:unconfigurable;
|
|
#endif
|
|
#endif
|
|
#ifdef POINT_LIGHT_SHADOWMAP_COUNT
|
|
uniform samplerCube pointLightShadowMaps[POINT_LIGHT_SHADOWMAP_COUNT]:unconfigurable;
|
|
#endif
|
|
uniform bool shadowEnabled : true;
|
|
#ifdef PCF_KERNEL_SIZE
|
|
uniform vec2 pcfKernel[PCF_KERNEL_SIZE];
|
|
#endif
|
|
@import clay.plugin.shadow_map_common
|
|
#if defined(SPOT_LIGHT_SHADOWMAP_COUNT)
|
|
void computeShadowOfSpotLights(vec3 position, inout float shadowContribs[SPOT_LIGHT_COUNT] ) {
|
|
float shadowContrib;
|
|
for(int _idx_ = 0; _idx_ < SPOT_LIGHT_SHADOWMAP_COUNT; _idx_++) {{
|
|
shadowContrib = computeShadowContrib(
|
|
spotLightShadowMaps[_idx_], spotLightMatrices[_idx_], position,
|
|
spotLightShadowMapSizes[_idx_]
|
|
);
|
|
shadowContribs[_idx_] = shadowContrib;
|
|
}}
|
|
for(int _idx_ = SPOT_LIGHT_SHADOWMAP_COUNT; _idx_ < SPOT_LIGHT_COUNT; _idx_++){{
|
|
shadowContribs[_idx_] = 1.0;
|
|
}}
|
|
}
|
|
#endif
|
|
#if defined(DIRECTIONAL_LIGHT_SHADOWMAP_COUNT)
|
|
#ifdef SHADOW_CASCADE
|
|
void computeShadowOfDirectionalLights(vec3 position, inout float shadowContribs[DIRECTIONAL_LIGHT_COUNT]){
|
|
float depth = (2.0 * gl_FragCoord.z - gl_DepthRange.near - gl_DepthRange.far)
|
|
/ (gl_DepthRange.far - gl_DepthRange.near);
|
|
float shadowContrib;
|
|
shadowContribs[0] = 1.0;
|
|
for (int _idx_ = 0; _idx_ < SHADOW_CASCADE; _idx_++) {{
|
|
if (
|
|
depth >= 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(H,M,g){"use strict";var D=g(7),y=g(5),v=g(6),m=g(10),E=g(156),h=g(162),a=g(164),d=g(166),_=g(2),r=g(167),n=g(169),l=g(9),o=g(170),s=g(171),u=g(172),f=g(173),e=g(174),t=g(175),i=g(176),c=g(177),p=g(178),A=g(179),x=g(180),C=g(181);D.a.import(s.a),D.a.import(u.a),D.a.import(f.a),D.a.import(e.a),D.a.import(t.a),D.a.import(i.a),D.a.import(c.a),D.a.import(p.a),D.a.import(A.a),D.a.import(x.a),D.a.import(C.a);var S={color:{parameters:{width:function(L){return L.getWidth()},height:function(L){return L.getHeight()}}}},P=["composite","FXAA"];function b(){this._sourceTexture=new y.a({type:v.a.HALF_FLOAT}),this._depthTexture=new y.a({format:v.a.DEPTH_COMPONENT,type:v.a.UNSIGNED_INT}),this._framebuffer=new m.a,this._framebuffer.attach(this._sourceTexture),this._framebuffer.attach(this._depthTexture,m.a.DEPTH_ATTACHMENT),this._normalPass=new r.a,this._compositor=Object(E.a)(o.a);var L=this._compositor.getNodeByName("source");L.texture=this._sourceTexture;var R=this._compositor.getNodeByName("coc");this._sourceNode=L,this._cocNode=R,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(N){return this._compositor.getNodeByName(N)},this),this._dofBlurKernel=0,this._dofBlurKernelSize=new Float32Array(0),this._finalNodesChain=P.map(function(N){return this._compositor.getNodeByName(N)},this);var T={normalTexture:this._normalPass.getNormalTexture(),depthTexture:this._normalPass.getDepthTexture()};this._ssaoPass=new h.a(T),this._ssrPass=new a.a(T),this._edgePass=new n.a(T)}b.prototype.resize=function(N,I,T){T=T||1;var N=N*T,I=I*T,F=this._sourceTexture,U=this._depthTexture;F.width=N,F.height=I,U.width=N,U.height=I},b.prototype._ifRenderNormalPass=function(){return this._enableSSAO||this._enableEdge||this._enableSSR},b.prototype._getPrevNode=function(L){for(var R=P.indexOf(L.name)-1,T=this._finalNodesChain[R];T&&!this._compositor.getNodeByName(T.name);)R-=1,T=this._finalNodesChain[R];return T},b.prototype._getNextNode=function(L){for(var R=P.indexOf(L.name)+1,T=this._finalNodesChain[R];T&&!this._compositor.getNodeByName(T.name);)R+=1,T=this._finalNodesChain[R];return T},b.prototype._addChainNode=function(L){var R=this._getPrevNode(L),T=this._getNextNode(L);R&&(R.outputs=S,L.inputs.texture=R.name,T?(L.outputs=S,T.inputs.texture=L.name):L.outputs=null,this._compositor.addNode(L))},b.prototype._removeChainNode=function(L){var R=this._getPrevNode(L),T=this._getNextNode(L);R&&(T?(R.outputs=S,T.inputs.texture=R.name):R.outputs=null,this._compositor.removeNode(L))},b.prototype.updateNormal=function(L,R,T,N){this._ifRenderNormalPass()&&this._normalPass.update(L,R,T)},b.prototype.updateSSAO=function(L,R,T,N){this._ssaoPass.update(L,T,N)},b.prototype.enableSSAO=function(){this._enableSSAO=!0},b.prototype.disableSSAO=function(){this._enableSSAO=!1},b.prototype.enableSSR=function(){this._enableSSR=!0},b.prototype.disableSSR=function(){this._enableSSR=!1},b.prototype.getSSAOTexture=function(L,R,T,N){return this._ssaoPass.getTargetTexture()},b.prototype.getSourceFrameBuffer=function(){return this._framebuffer},b.prototype.getSourceTexture=function(){return this._sourceTexture},b.prototype.disableFXAA=function(){this._removeChainNode(this._fxaaNode)},b.prototype.enableFXAA=function(){this._addChainNode(this._fxaaNode)},b.prototype.enableBloom=function(){this._compositeNode.inputs.bloom="bloom_composite",this._compositor.dirty()},b.prototype.disableBloom=function(){this._compositeNode.inputs.bloom=null,this._compositor.dirty()},b.prototype.enableDOF=function(){this._compositeNode.inputs.texture="dof_composite",this._compositor.dirty()},b.prototype.disableDOF=function(){this._compositeNode.inputs.texture="source",this._compositor.dirty()},b.prototype.enableColorCorrection=function(){this._compositeNode.define("COLOR_CORRECTION"),this._enableColorCorrection=!0},b.prototype.disableColorCorrection=function(){this._compositeNode.undefine("COLOR_CORRECTION"),this._enableColorCorrection=!1},b.prototype.enableEdge=function(){this._enableEdge=!0},b.prototype.disableEdge=function(){this._enableEdge=!1},b.prototype.setBloomIntensity=function(L){this._compositeNode.setParameter("bloomIntensity",L)},b.prototype.setSSAOParameter=function(L,R){switch(L){case"quality":var T={low:6,medium:12,high:32,ultra:62}[R]||12;this._ssaoPass.setParameter("kernelSize",T);break;case"radius":this._ssaoPass.setParameter(L,R),this._ssaoPass.setParameter("bias",R/200);break;case"intensity":this._ssaoPass.setParameter(L,R);break;default:console.warn("Unkown SSAO parameter "+L)}},b.prototype.setDOFParameter=function(L,R){switch(L){case"focalDistance":case"focalRange":case"fstop":this._cocNode.setParameter(L,R);break;case"blurRadius":for(var T=0;T<this._dofBlurNodes.length;T++)this._dofBlurNodes[T].setParameter("blurRadius",R);break;case"quality":var N={low:4,medium:8,high:16,ultra:32}[R]||8;this._dofBlurKernelSize=N;for(var T=0;T<this._dofBlurNodes.length;T++)this._dofBlurNodes[T].pass.material.define("POISSON_KERNEL_SIZE",N);this._dofBlurKernel=new Float32Array(N*2);break;default:console.warn("Unkown DOF parameter "+L)}},b.prototype.setSSRParameter=function(L,R){switch(L){case"quality":var T={low:10,medium:20,high:40,ultra:80}[R]||20,N={low:32,medium:16,high:8,ultra:4}[R]||16;this._ssrPass.setParameter("maxIteration",T),this._ssrPass.setParameter("pixelStride",N);break;case"maxRoughness":this._ssrPass.setParameter("minGlossiness",Math.max(Math.min(1-R,1),0));break;default:console.warn("Unkown SSR parameter "+L)}},b.prototype.setEdgeColor=function(L){var R=_.a.parseColor(L);this._edgePass.setParameter("edgeColor",R)},b.prototype.setExposure=function(L){this._compositeNode.setParameter("exposure",Math.pow(2,L))},b.prototype.setColorLookupTexture=function(L,R){this._compositeNode.pass.material.setTextureImage("lut",this._enableColorCorrection?L:"none",R,{minFilter:_.a.Texture.NEAREST,magFilter:_.a.Texture.NEAREST,flipY:!1})},b.prototype.setColorCorrection=function(L,R){this._compositeNode.setParameter(L,R)},b.prototype.composite=function(L,R,T,N){var I=this._sourceTexture,F=I;this._enableEdge&&(this._edgePass.update(L,R,I,N),I=F=this._edgePass.getTargetTexture()),this._enableSSR&&(this._ssrPass.update(L,R,I,N),F=this._ssrPass.getTargetTexture(),this._ssrPass.setSSAOTexture(this._enableSSAO?this._ssaoPass.getTargetTexture():null)),this._sourceNode.texture=F,this._cocNode.setParameter("depth",this._depthTexture);for(var U=this._dofBlurKernel,K=this._dofBlurKernelSize,G=Math.floor(d.a.length/2/K),V=N%G,X=0;X<K*2;X++)U[X]=d.a[X+V*K*2];for(var X=0;X<this._dofBlurNodes.length;X++)this._dofBlurNodes[X].setParameter("percent",N/30),this._dofBlurNodes[X].setParameter("poissonKernel",U);this._cocNode.setParameter("zNear",R.near),this._cocNode.setParameter("zFar",R.far),this._compositor.render(L,T)},b.prototype.dispose=function(L){this._sourceTexture.dispose(L),this._depthTexture.dispose(L),this._framebuffer.dispose(L),this._compositor.dispose(L),this._normalPass.dispose(L),this._ssaoPass.dispose(L)},M.a=b},function(H,M,g){"use strict";var D=g(21),y=g(157),v=g(159),m=g(160),E=g(161),h=g(7),a=g(6),d=g(5),_=g(25),r=/^#source\((.*?)\)/;function n(t,i){var c=new y.a;i=i||{};var p={textures:{},parameters:{}},A=function(S,P){for(var b=0;b<t.nodes.length;b++){var L=t.nodes[b],R=l(L,p,i);R&&c.addNode(R)}};for(var x in t.parameters){var C=t.parameters[x];p.parameters[x]=o(C)}return s(t,p,i,function(S){p.textures=S,A()}),c}function l(t,i,c){var p=t.type||"filter",A,x,C;if(p==="filter"){var S=t.shader.trim(),P=r.exec(S);if(P?A=h.a.source(P[1].trim()):S.charAt(0)==="#"&&(A=i.shaders[S.substr(1)]),A||(A=S),!A)return}if(t.inputs){x={};for(var b in t.inputs)typeof t.inputs[b]=="string"?x[b]=t.inputs[b]:x[b]={node:t.inputs[b].node,pin:t.inputs[b].pin}}if(t.outputs){C={};for(var b in t.outputs){var L=t.outputs[b];C[b]={},L.attachment!=null&&(C[b].attachment=L.attachment),L.keepLastFrame!=null&&(C[b].keepLastFrame=L.keepLastFrame),L.outputLastFrame!=null&&(C[b].outputLastFrame=L.outputLastFrame),L.parameters&&(C[b].parameters=o(L.parameters))}}var R;if(p==="scene"?R=new v.a({name:t.name,scene:c.scene,camera:c.camera,outputs:C}):p==="texture"?R=new m.a({name:t.name,outputs:C}):R=new E.a({name:t.name,shader:A,inputs:x,outputs:C}),R){if(t.parameters)for(var b in t.parameters){var T=t.parameters[b];typeof T=="string"&&(T=T.trim(),T.charAt(0)==="#"?T=i.textures[T.substr(1)]:R.on("beforerender",u(b,e(T)))),R.setParameter(b,T)}if(t.defines&&R.pass)for(var b in t.defines){var T=t.defines[b];R.pass.material.define("fragment",b,T)}}return R}function o(t){var i={};return t&&(["type","minFilter","magFilter","wrapS","wrapT","flipY","useMipmap"].forEach(function(c){var p=t[c];p!=null&&(typeof p=="string"&&(p=a.a[p]),i[c]=p)}),["width","height"].forEach(function(c){if(t[c]!=null){var p=t[c];typeof p=="string"?(p=p.trim(),i[c]=f(c,e(p))):i[c]=p}}),t.useMipmap!=null&&(i.useMipmap=t.useMipmap)),i}function s(t,i,c,p){if(!t.textures){p({});return}var A={},x=0,C=!1,S=c.textureRootPath;D.a.each(t.textures,function(P,b){var L,R=P.path,T=o(P.parameters);if(Array.isArray(R)&&R.length===6)S&&(R=R.map(function(N){return D.a.relative2absolute(N,S)})),L=new _.a(T);else if(typeof R=="string")S&&(R=D.a.relative2absolute(R,S)),L=new d.a(T);else return;L.load(R),x++,L.once("success",function(){A[b]=L,x--,x===0&&(p(A),C=!0)})}),x===0&&!C&&p(A)}function u(t,i){return function(c){var p=c.getDevicePixelRatio(),A=c.getWidth(),x=c.getHeight(),C=i(A,x,p);this.setParameter(t,C)}}function f(t,i){return function(c){var p=c.getDevicePixelRatio(),A=c.getWidth(),x=c.getHeight();return i(A,x,p)}}function e(t){var i=/^expr\((.*)\)$/.exec(t);if(i)try{var c=new Function("width","height","dpr","return "+i[1]);return c(1,1),c}catch(p){throw new Error("Invalid expression.")}}M.a=n},function(H,M,g){"use strict";var D=g(158),y=g(79),v=g(10),m=D.a.extend(function(){return{_outputs:[],_texturePool:new y.a,_frameBuffer:new v.a({depthBuffer:!1})}},{addNode:function(E){D.a.prototype.addNode.call(this,E),E._compositor=this},render:function(E,h){if(this._dirty){this.update(),this._dirty=!1,this._outputs.length=0;for(var a=0;a<this.nodes.length;a++)this.nodes[a].outputs||this._outputs.push(this.nodes[a])}for(var a=0;a<this.nodes.length;a++)this.nodes[a].beforeFrame();for(var a=0;a<this._outputs.length;a++)this._outputs[a].updateReference();for(var a=0;a<this._outputs.length;a++)this._outputs[a].render(E,h);for(var a=0;a<this.nodes.length;a++)this.nodes[a].afterFrame()},allocateTexture:function(E){return this._texturePool.get(E)},releaseTexture:function(E){this._texturePool.put(E)},getFrameBuffer:function(){return this._frameBuffer},dispose:function(E){this._texturePool.clear(E)}});M.a=m},function(H,M,g){"use strict";var D=g(8),y=g(42),v=D.a.extend(function(){return{nodes:[]}},{dirty:function(){this._dirty=!0},addNode:function(m){this.nodes.indexOf(m)>=0||(this.nodes.push(m),this._dirty=!0)},removeNode:function(m){typeof m=="string"&&(m=this.getNodeByName(m));var E=this.nodes.indexOf(m);E>=0&&(this.nodes.splice(E,1),this._dirty=!0)},getNodeByName:function(m){for(var E=0;E<this.nodes.length;E++)if(this.nodes[E].name===m)return this.nodes[E]},update:function(){for(var m=0;m<this.nodes.length;m++)this.nodes[m].clear();for(var m=0;m<this.nodes.length;m++){var E=this.nodes[m];if(E.inputs){for(var h in E.inputs)if(E.inputs[h]){if(E.pass&&!E.pass.material.isUniformEnabled(h)){console.warn("Pin "+E.name+"."+h+" not used.");continue}var a=E.inputs[h],d=this.findPin(a);d?E.link(h,d.node,d.pin):console.warn(typeof a=="string"?"Node "+a+" not exist":"Pin of "+a.node+"."+a.pin+" not exist")}}}},findPin:function(m){var E;if((typeof m=="string"||m instanceof y.a)&&(m={node:m}),typeof m.node=="string")for(var h=0;h<this.nodes.length;h++){var a=this.nodes[h];a.name===m.node&&(E=a)}else E=m.node;if(E){var d=m.pin;if(d||E.outputs&&(d=Object.keys(E.outputs)[0]),E.outputs[d])return{node:E,pin:d}}}});M.a=v},function(H,M,g){"use strict";var D=g(42),y=g(11),v=g(10),m=D.a.extend({name:"scene",scene:null,camera:null,autoUpdateScene:!0,preZ:!1},function(){this.frameBuffer=new v.a},{render:function(E){this._rendering=!0;var h=E.gl;this.trigger("beforerender");var a;if(!this.outputs)a=E.render(this.scene,this.camera,!this.autoUpdateScene,this.preZ);else{var d=this.frameBuffer;for(var _ in this.outputs){var r=this.updateParameter(_,E),n=this.outputs[_],l=this._compositor.allocateTexture(r);this._outputTextures[_]=l;var o=n.attachment||h.COLOR_ATTACHMENT0;typeof o=="string"&&(o=h[o]),d.attach(l,o)}d.bind(E);var s=E.getGLExtension("EXT_draw_buffers");if(s){var u=[];for(var o in this.outputs)o=parseInt(o),o>=h.COLOR_ATTACHMENT0&&o<=h.COLOR_ATTACHMENT0+8&&u.push(o);s.drawBuffersEXT(u)}E.saveClear(),E.clearBit=y.a.DEPTH_BUFFER_BIT|y.a.COLOR_BUFFER_BIT,a=E.render(this.scene,this.camera,!this.autoUpdateScene,this.preZ),E.restoreClear(),d.unbind(E)}this.trigger("afterrender",a),this._rendering=!1,this._rendered=!0}});M.a=m},function(H,M,g){"use strict";var D=g(42),y=D.a.extend(function(){return{texture:null,outputs:{color:{}}}},function(){},{getOutput:function(v,m){return this.texture},beforeFrame:function(){},afterFrame:function(){}});M.a=y},function(H,M,g){"use strict";var D=g(14),y=g(42),v=y.a.extend(function(){return{name:"",inputs:{},outputs:null,shader:"",inputLinks:{},outputLinks:{},pass:null,_prevOutputTextures:{},_outputTextures:{},_outputReferences:{},_rendering:!1,_rendered:!1,_compositor:null}},function(){var m=new D.a({fragment:this.shader});this.pass=m},{render:function(m,E){this.trigger("beforerender",m),this._rendering=!0;var h=m.gl;for(var a in this.inputLinks){var d=this.inputLinks[a],_=d.node.getOutput(m,d.pin);this.pass.setUniform(a,_)}if(!this.outputs)this.pass.outputs=null,this._compositor.getFrameBuffer().unbind(m),this.pass.render(m,E);else{this.pass.outputs={};var r={};for(var n in this.outputs){var l=this.updateParameter(n,m);isNaN(l.width)&&this.updateParameter(n,m);var o=this.outputs[n],s=this._compositor.allocateTexture(l);this._outputTextures[n]=s;var u=o.attachment||h.COLOR_ATTACHMENT0;typeof u=="string"&&(u=h[u]),r[u]=s}this._compositor.getFrameBuffer().bind(m);for(var u in r)this._compositor.getFrameBuffer().attach(r[u],u);this.pass.render(m),this._compositor.getFrameBuffer().updateMipmap(m.gl)}for(var a in this.inputLinks){var d=this.inputLinks[a];d.node.removeReference(d.pin)}this._rendering=!1,this._rendered=!0,this.trigger("afterrender",m)},updateParameter:function(m,E){var h=this.outputs[m],a=h.parameters,d=h._parametersCopy;if(d||(d=h._parametersCopy={}),a)for(var _ in a)_!=="width"&&_!=="height"&&(d[_]=a[_]);var r,n;return a.width instanceof Function?r=a.width.call(this,E):r=a.width,a.height instanceof Function?n=a.height.call(this,E):n=a.height,(d.width!==r||d.height!==n)&&this._outputTextures[m]&&this._outputTextures[m].dispose(E),d.width=r,d.height=n,d},setParameter:function(m,E){this.pass.setUniform(m,E)},getParameter:function(m){return this.pass.getUniform(m)},setParameters:function(m){for(var E in m)this.setParameter(E,m[E])},define:function(m,E){this.pass.material.define("fragment",m,E)},undefine:function(m){this.pass.material.undefine("fragment",m)},removeReference:function(m){if(this._outputReferences[m]--,this._outputReferences[m]===0){var E=this.outputs[m];E.keepLastFrame?(this._prevOutputTextures[m]&&this._compositor.releaseTexture(this._prevOutputTextures[m]),this._prevOutputTextures[m]=this._outputTextures[m]):this._compositor.releaseTexture(this._outputTextures[m])}},clear:function(){y.a.prototype.clear.call(this),this.pass.material.disableTexturesAll()}});M.a=v},function(H,M,g){"use strict";var D=g(9),y=g(4),v=g(5),m=g(6),E=g(14),h=g(7),a=g(10),d=g(43),_=g(163);h.a.import(_.a);function r(s){for(var u=new Uint8Array(s*s*4),f=0,e=new y.a,t=0;t<s;t++)for(var i=0;i<s;i++)e.set(Math.random()*2-1,Math.random()*2-1,0).normalize(),u[f++]=(e.x*.5+.5)*255,u[f++]=(e.y*.5+.5)*255,u[f++]=0,u[f++]=255;return u}function n(s){return new v.a({pixels:r(s),wrapS:m.a.REPEAT,wrapT:m.a.REPEAT,width:s,height:s})}function l(s,u,f){var e=new Float32Array(s*3);u=u||0;for(var t=0;t<s;t++){var i=Object(d.a)(t+u,2)*(f?1:2)*Math.PI,c=Object(d.a)(t+u,3)*Math.PI,p=Math.random(),A=Math.cos(i)*Math.sin(c)*p,x=Math.cos(c)*p,C=Math.sin(i)*Math.sin(c)*p;e[t*3]=A,e[t*3+1]=x,e[t*3+2]=C}return e}function o(s){s=s||{},this._ssaoPass=new E.a({fragment:h.a.source("ecgl.ssao.estimate")}),this._blurPass=new E.a({fragment:h.a.source("ecgl.ssao.blur")}),this._framebuffer=new a.a({depthBuffer:!1}),this._ssaoTexture=new v.a,this._blurTexture=new v.a,this._blurTexture2=new v.a,this._depthTex=s.depthTexture,this._normalTex=s.normalTexture,this.setNoiseSize(4),this.setKernelSize(s.kernelSize||12),s.radius!=null&&this.setParameter("radius",s.radius),s.power!=null&&this.setParameter("power",s.power),this._normalTex||(this._ssaoPass.material.disableTexture("normalTex"),this._blurPass.material.disableTexture("normalTex")),this._depthTex||this._blurPass.material.disableTexture("depthTex"),this._blurPass.material.setUniform("normalTex",this._normalTex),this._blurPass.material.setUniform("depthTex",this._depthTex)}o.prototype.setDepthTexture=function(s){this._depthTex=s},o.prototype.setNormalTexture=function(s){this._normalTex=s,this._ssaoPass.material[s?"enableTexture":"disableTexture"]("normalTex"),this.setKernelSize(this._kernelSize)},o.prototype.update=function(s,u,f){var e=s.getWidth(),t=s.getHeight(),i=this._ssaoPass,c=this._blurPass;i.setUniform("kernel",this._kernels[f%this._kernels.length]),i.setUniform("depthTex",this._depthTex),this._normalTex!=null&&i.setUniform("normalTex",this._normalTex),i.setUniform("depthTexSize",[this._depthTex.width,this._depthTex.height]);var p=new D.a;D.a.transpose(p,u.worldTransform),i.setUniform("projection",u.projectionMatrix.array),i.setUniform("projectionInv",u.invProjectionMatrix.array),i.setUniform("viewInverseTranspose",p.array);var A=this._ssaoTexture,x=this._blurTexture,C=this._blurTexture2;A.width=e/2,A.height=t/2,x.width=e,x.height=t,C.width=e,C.height=t,this._framebuffer.attach(A),this._framebuffer.bind(s),s.gl.clearColor(1,1,1,1),s.gl.clear(s.gl.COLOR_BUFFER_BIT),i.render(s),c.setUniform("textureSize",[e/2,t/2]),c.setUniform("projection",u.projectionMatrix.array),this._framebuffer.attach(x),c.setUniform("direction",0),c.setUniform("ssaoTexture",A),c.render(s),this._framebuffer.attach(C),c.setUniform("textureSize",[e,t]),c.setUniform("direction",1),c.setUniform("ssaoTexture",x),c.render(s),this._framebuffer.unbind(s);var S=s.clearColor;s.gl.clearColor(S[0],S[1],S[2],S[3])},o.prototype.getTargetTexture=function(){return this._blurTexture2},o.prototype.setParameter=function(s,u){s==="noiseTexSize"?this.setNoiseSize(u):s==="kernelSize"?this.setKernelSize(u):s==="intensity"?this._ssaoPass.material.set("intensity",u):this._ssaoPass.setUniform(s,u)},o.prototype.setKernelSize=function(s){this._kernelSize=s,this._ssaoPass.material.define("fragment","KERNEL_SIZE",s),this._kernels=this._kernels||[];for(var u=0;u<30;u++)this._kernels[u]=l(s,u*s,!!this._normalTex)},o.prototype.setNoiseSize=function(s){var u=this._ssaoPass.getUniform("noiseTex");u?(u.data=r(s),u.width=u.height=s,u.dirty()):(u=n(s),this._ssaoPass.setUniform("noiseTex",n(s))),this._ssaoPass.setUniform("noiseTexSize",[s,s])},o.prototype.dispose=function(s){this._blurTexture.dispose(s),this._ssaoTexture.dispose(s),this._blurTexture2.dispose(s)},M.a=o},function(H,M,g){"use strict";M.a=`@export ecgl.ssao.estimate
|
|
|
|
uniform sampler2D depthTex;
|
|
|
|
uniform sampler2D normalTex;
|
|
|
|
uniform sampler2D noiseTex;
|
|
|
|
uniform vec2 depthTexSize;
|
|
|
|
uniform vec2 noiseTexSize;
|
|
|
|
uniform mat4 projection;
|
|
|
|
uniform mat4 projectionInv;
|
|
|
|
uniform mat4 viewInverseTranspose;
|
|
|
|
uniform vec3 kernel[KERNEL_SIZE];
|
|
|
|
uniform float radius : 1;
|
|
|
|
uniform float power : 1;
|
|
|
|
uniform float bias: 1e-2;
|
|
|
|
uniform float intensity: 1.0;
|
|
|
|
varying vec2 v_Texcoord;
|
|
|
|
float ssaoEstimator(in vec3 originPos, in mat3 kernelBasis) {
|
|
float occlusion = 0.0;
|
|
|
|
for (int i = 0; i < KERNEL_SIZE; i++) {
|
|
vec3 samplePos = kernel[i];
|
|
#ifdef NORMALTEX_ENABLED
|
|
samplePos = kernelBasis * samplePos;
|
|
#endif
|
|
samplePos = samplePos * radius + originPos;
|
|
|
|
vec4 texCoord = projection * vec4(samplePos, 1.0);
|
|
texCoord.xy /= texCoord.w;
|
|
|
|
vec4 depthTexel = texture2D(depthTex, texCoord.xy * 0.5 + 0.5);
|
|
|
|
float sampleDepth = depthTexel.r * 2.0 - 1.0;
|
|
if (projection[3][3] == 0.0) {
|
|
sampleDepth = projection[3][2] / (sampleDepth * projection[2][3] - projection[2][2]);
|
|
}
|
|
else {
|
|
sampleDepth = (sampleDepth - projection[3][2]) / projection[2][2];
|
|
}
|
|
|
|
float rangeCheck = smoothstep(0.0, 1.0, radius / abs(originPos.z - sampleDepth));
|
|
occlusion += rangeCheck * step(samplePos.z, sampleDepth - bias);
|
|
}
|
|
#ifdef NORMALTEX_ENABLED
|
|
occlusion = 1.0 - occlusion / float(KERNEL_SIZE);
|
|
#else
|
|
occlusion = 1.0 - clamp((occlusion / float(KERNEL_SIZE) - 0.6) * 2.5, 0.0, 1.0);
|
|
#endif
|
|
return pow(occlusion, power);
|
|
}
|
|
|
|
void main()
|
|
{
|
|
|
|
vec4 depthTexel = texture2D(depthTex, v_Texcoord);
|
|
|
|
#ifdef NORMALTEX_ENABLED
|
|
vec4 tex = texture2D(normalTex, v_Texcoord);
|
|
if (dot(tex.rgb, tex.rgb) == 0.0) {
|
|
gl_FragColor = vec4(1.0);
|
|
return;
|
|
}
|
|
vec3 N = tex.rgb * 2.0 - 1.0;
|
|
N = (viewInverseTranspose * vec4(N, 0.0)).xyz;
|
|
|
|
vec2 noiseTexCoord = depthTexSize / vec2(noiseTexSize) * v_Texcoord;
|
|
vec3 rvec = texture2D(noiseTex, noiseTexCoord).rgb * 2.0 - 1.0;
|
|
vec3 T = normalize(rvec - N * dot(rvec, N));
|
|
vec3 BT = normalize(cross(N, T));
|
|
mat3 kernelBasis = mat3(T, BT, N);
|
|
#else
|
|
if (depthTexel.r > 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(H,M,g){"use strict";var D=g(9),y=g(4),v=g(5),m=g(6),E=g(14),h=g(7),a=g(10),d=g(43),_=g(165);h.a.import(_.a);function r(n){n=n||{},this._ssrPass=new E.a({fragment:h.a.source("ecgl.ssr.main"),clearColor:[0,0,0,0]}),this._blurPass1=new E.a({fragment:h.a.source("ecgl.ssr.blur"),clearColor:[0,0,0,0]}),this._blurPass2=new E.a({fragment:h.a.source("ecgl.ssr.blur"),clearColor:[0,0,0,0]}),this._ssrPass.setUniform("gBufferTexture1",n.normalTexture),this._ssrPass.setUniform("gBufferTexture2",n.depthTexture),this._blurPass1.setUniform("gBufferTexture1",n.normalTexture),this._blurPass1.setUniform("gBufferTexture2",n.depthTexture),this._blurPass2.setUniform("gBufferTexture1",n.normalTexture),this._blurPass2.setUniform("gBufferTexture2",n.depthTexture),this._blurPass2.material.define("fragment","VERTICAL"),this._blurPass2.material.define("fragment","BLEND"),this._texture1=new v.a({type:m.a.HALF_FLOAT}),this._texture2=new v.a({type:m.a.HALF_FLOAT}),this._texture3=new v.a({type:m.a.HALF_FLOAT}),this._frameBuffer=new a.a({depthBuffer:!1})}r.prototype.update=function(n,l,o,s){var u=n.getWidth(),f=n.getHeight(),e=n.getDevicePixelRatio(),t=this._texture1,i=this._texture2,c=this._texture3;i.width=u/2,i.height=f/2,t.width=u,t.height=f,c.width=u*e,c.height=f*e;var p=this._frameBuffer,A=this._ssrPass,x=this._blurPass1,C=this._blurPass2,S=new D.a;D.a.transpose(S,l.worldTransform),A.setUniform("sourceTexture",o),A.setUniform("projection",l.projectionMatrix.array),A.setUniform("projectionInv",l.invProjectionMatrix.array),A.setUniform("viewInverseTranspose",S.array),A.setUniform("nearZ",l.near),A.setUniform("jitterOffset",s/30),x.setUniform("textureSize",[u/2,f/2]),C.setUniform("textureSize",[u,f]),C.setUniform("sourceTexture",o),x.setUniform("projection",l.projectionMatrix.array),C.setUniform("projection",l.projectionMatrix.array),p.attach(t),p.bind(n),A.render(n),p.attach(i),x.setUniform("texture",t),x.render(n),p.attach(c),C.setUniform("texture",i),C.render(n),p.unbind(n)},r.prototype.getTargetTexture=function(){return this._texture3},r.prototype.setParameter=function(n,l){n==="maxIteration"?this._ssrPass.material.define("fragment","MAX_ITERATION",l):this._ssrPass.setUniform(n,l)},r.prototype.setSSAOTexture=function(n){var l=this._blurPass2;n?(l.material.enableTexture("ssaoTex"),l.material.set("ssaoTex",n)):l.material.disableTexture("ssaoTex")},r.prototype.dispose=function(n){this._texture1.dispose(n),this._texture2.dispose(n),this._texture3.dispose(n),this._frameBuffer.dispose(n)},M.a=r},function(H,M,g){"use strict";M.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(H,M,g){"use strict";M.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(H,M,g){"use strict";var D=g(5),y=g(6),v=g(7),m=g(10),E=g(17),h=g(14),a=g(54),d=g(168);v.a.import(d.a);function _(l,o,s,u,f){var e=l.gl;o.setUniform(e,"1i",s,f),e.activeTexture(e.TEXTURE0+f),u.isRenderable()?u.bind(l):u.unbind(l)}function r(l,o,s,u,f){var e,t,i,c,p=l.gl;return function(A,x,C){if(!(c&&c.material===A.material)){var S=A.material,P=A.__program,b=S.get("roughness");b==null&&(b=1);var L=S.get("normalMap")||o,R=S.get("roughnessMap"),T=S.get("bumpMap"),N=S.get("uvRepeat"),I=S.get("uvOffset"),F=S.get("detailUvRepeat"),U=S.get("detailUvOffset"),K=!!T&&S.isTextureEnabled("bumpMap"),G=!!R&&S.isTextureEnabled("roughnessMap"),V=S.isDefined("fragment","DOUBLE_SIDED");T=T||s,R=R||u,C!==x?(x.set("normalMap",L),x.set("bumpMap",T),x.set("roughnessMap",R),x.set("useBumpMap",K),x.set("useRoughnessMap",G),x.set("doubleSide",V),N!=null&&x.set("uvRepeat",N),I!=null&&x.set("uvOffset",I),F!=null&&x.set("detailUvRepeat",F),U!=null&&x.set("detailUvOffset",U),x.set("roughness",b)):(P.setUniform(p,"1f","roughness",b),e!==L&&_(l,P,"normalMap",L,0),t!==T&&T&&_(l,P,"bumpMap",T,1),i!==R&&R&&_(l,P,"roughnessMap",R,2),N!=null&&P.setUniform(p,"2f","uvRepeat",N),I!=null&&P.setUniform(p,"2f","uvOffset",I),F!=null&&P.setUniform(p,"2f","detailUvRepeat",F),U!=null&&P.setUniform(p,"2f","detailUvOffset",U),P.setUniform(p,"1i","useBumpMap",+K),P.setUniform(p,"1i","useRoughnessMap",+G),P.setUniform(p,"1i","doubleSide",+V)),e=L,t=T,i=R,c=A}}}function n(l){l=l||{},this._depthTex=new D.a({format:y.a.DEPTH_COMPONENT,type:y.a.UNSIGNED_INT}),this._normalTex=new D.a({type:y.a.HALF_FLOAT}),this._framebuffer=new m.a,this._framebuffer.attach(this._normalTex),this._framebuffer.attach(this._depthTex,m.a.DEPTH_ATTACHMENT),this._normalMaterial=new E.a({shader:new v.a(v.a.source("ecgl.normal.vertex"),v.a.source("ecgl.normal.fragment"))}),this._normalMaterial.enableTexture(["normalMap","bumpMap","roughnessMap"]),this._defaultNormalMap=a.a.createBlank("#000"),this._defaultBumpMap=a.a.createBlank("#000"),this._defaultRoughessMap=a.a.createBlank("#000"),this._debugPass=new h.a({fragment:v.a.source("clay.compositor.output")}),this._debugPass.setUniform("texture",this._normalTex),this._debugPass.material.undefine("fragment","OUTPUT_ALPHA")}n.prototype.getDepthTexture=function(){return this._depthTex},n.prototype.getNormalTexture=function(){return this._normalTex},n.prototype.update=function(l,o,s){var u=l.getWidth(),f=l.getHeight(),e=this._depthTex,t=this._normalTex,i=this._normalMaterial;e.width=u,e.height=f,t.width=u,t.height=f;var c=o.opaqueList;this._framebuffer.bind(l),l.gl.clearColor(0,0,0,0),l.gl.clear(l.gl.COLOR_BUFFER_BIT|l.gl.DEPTH_BUFFER_BIT),l.gl.disable(l.gl.BLEND),l.renderPass(c,s,{getMaterial:function(){return i},ifRender:function(p){return p.renderNormal},beforeRender:r(l,this._defaultNormalMap,this._defaultBumpMap,this._defaultRoughessMap,this._normalMaterial),sort:l.opaqueSortCompare}),this._framebuffer.unbind(l)},n.prototype.renderDebug=function(l){this._debugPass.render(l)},n.prototype.dispose=function(l){this._depthTex.dispose(l),this._normalTex.dispose(l)},M.a=n},function(H,M,g){"use strict";M.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(H,M,g){"use strict";var D=g(9),y=g(4),v=g(5),m=g(6),E=g(14),h=g(7),a=g(10);function d(_){_=_||{},this._edgePass=new E.a({fragment:h.a.source("ecgl.edge")}),this._edgePass.setUniform("normalTexture",_.normalTexture),this._edgePass.setUniform("depthTexture",_.depthTexture),this._targetTexture=new v.a({type:m.a.HALF_FLOAT}),this._frameBuffer=new a.a,this._frameBuffer.attach(this._targetTexture)}d.prototype.update=function(_,r,n,l){var o=_.getWidth(),s=_.getHeight(),u=this._targetTexture;u.width=o,u.height=s;var f=this._frameBuffer;f.bind(_),this._edgePass.setUniform("projectionInv",r.invProjectionMatrix.array),this._edgePass.setUniform("textureSize",[o,s]),this._edgePass.setUniform("texture",n),this._edgePass.render(_),f.unbind(_)},d.prototype.getTargetTexture=function(){return this._targetTexture},d.prototype.setParameter=function(_,r){this._edgePass.setUniform(_,r)},d.prototype.dispose=function(_){this._targetTexture.dispose(_),this._frameBuffer.dispose(_)},M.a=d},function(H,M,g){"use strict";M.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(H,M,g){"use strict";M.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(H,M,g){"use strict";M.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(H,M,g){"use strict";M.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(H,M,g){"use strict";M.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(H,M,g){"use strict";M.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(H,M,g){"use strict";M.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(H,M,g){"use strict";M.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(H,M,g){"use strict";M.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(H,M,g){"use strict";M.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(H,M,g){"use strict";M.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(H,M,g){"use strict";M.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(H,M,g){"use strict";var D=g(43),y=g(14),v=g(10),m=g(5),E=g(7),h=g(9);function a(d){for(var _=[],r=0;r<30;r++)_.push([Object(D.a)(r,2),Object(D.a)(r,3)]);this._haltonSequence=_,this._frame=0,this._sourceTex=new m.a,this._sourceFb=new v.a,this._sourceFb.attach(this._sourceTex),this._prevFrameTex=new m.a,this._outputTex=new m.a;var n=this._blendPass=new y.a({fragment:E.a.source("clay.compositor.blend")});n.material.disableTexturesAll(),n.material.enableTexture(["texture1","texture2"]),this._blendFb=new v.a({depthBuffer:!1}),this._outputPass=new y.a({fragment:E.a.source("clay.compositor.output"),blendWithPrevious:!0}),this._outputPass.material.define("fragment","OUTPUT_ALPHA"),this._outputPass.material.blend=function(l){l.blendEquationSeparate(l.FUNC_ADD,l.FUNC_ADD),l.blendFuncSeparate(l.ONE,l.ONE_MINUS_SRC_ALPHA,l.ONE,l.ONE_MINUS_SRC_ALPHA)}}a.prototype={constructor:a,jitterProjection:function(d,_){var r=d.viewport,n=r.devicePixelRatio||d.getDevicePixelRatio(),l=r.width*n,o=r.height*n,s=this._haltonSequence[this._frame%this._haltonSequence.length],u=new h.a;u.array[12]=(s[0]*2-1)/l,u.array[13]=(s[1]*2-1)/o,h.a.mul(_.projectionMatrix,u,_.projectionMatrix),h.a.invert(_.invProjectionMatrix,_.projectionMatrix)},resetFrame:function(){this._frame=0},getFrame:function(){return this._frame},getSourceFrameBuffer:function(){return this._sourceFb},getOutputTexture:function(){return this._outputTex},resize:function(d,_){this._prevFrameTex.width=d,this._prevFrameTex.height=_,this._outputTex.width=d,this._outputTex.height=_,this._sourceTex.width=d,this._sourceTex.height=_,this._prevFrameTex.dirty(),this._outputTex.dirty(),this._sourceTex.dirty()},isFinished:function(){return this._frame>=this._haltonSequence.length},render:function(d,_,r){var n=this._blendPass;this._frame===0?(n.setUniform("weight1",0),n.setUniform("weight2",1)):(n.setUniform("weight1",.9),n.setUniform("weight2",.1)),n.setUniform("texture1",this._prevFrameTex),n.setUniform("texture2",_||this._sourceTex),this._blendFb.attach(this._outputTex),this._blendFb.bind(d),n.render(d),this._blendFb.unbind(d),r||(this._outputPass.setUniform("texture",this._outputTex),this._outputPass.render(d));var l=this._prevFrameTex;this._prevFrameTex=this._outputTex,this._outputTex=l,this._frame++},dispose:function(d){this._sourceFb.dispose(d),this._blendFb.dispose(d),this._prevFrameTex.dispose(d),this._outputTex.dispose(d),this._sourceTex.dispose(d),this._outputPass.dispose(d),this._blendPass.dispose(d)}},M.a=a},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(184),m=g(185),E=g(82);y.a.registerAction({type:"geo3DChangeCamera",event:"geo3dcamerachanged",update:"series:updateCamera"},function(h,a){a.eachComponent({mainType:"geo3D",query:h},function(d){d.setView(h)})})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(38),m=g(31),E=g(32),h=g(26),a=g(80),d=y.a.extendComponentModel({type:"geo3D",layoutMode:"box",coordinateSystem:null,optionUpdated:function(){var r=this.option;r.regions=this.getFilledRegions(r.regions,r.map);var n=y.a.helper.completeDimensions(["value"],r.data,{encodeDef:this.get("encode"),dimsDef:this.get("dimensions")}),l=new y.a.List(n,this);l.initData(r.regions);var o={};l.each(function(s){var u=l.getName(s),f=l.getItemModel(s);o[u]=f}),this._regionModelMap=o,this._data=l},getData:function(){return this._data},getRegionModel:function(r){var n=this.getData().getName(r);return this._regionModelMap[n]||new y.a.Model(null,this)},getRegionPolygonCoords:function(r){var n=this.getData().getName(r),l=this.coordinateSystem.getRegion(n);return l?l.geometries:[]},getFormattedLabel:function(r,n){var l=this._data.getName(r),o=this.getRegionModel(l),s=o.get(n==="normal"?["label","formatter"]:["emphasis","label","formatter"]);s==null&&(s=o.get(["label","formatter"]));var u={name:l};if(typeof s=="function")return u.status=n,s(u);if(typeof s=="string"){var f=u.seriesName;return s.replace("{a}",f!=null?f:"")}else return l},defaultOption:{regions:[]}});y.a.util.merge(d.prototype,a.a),y.a.util.merge(d.prototype,v.a),y.a.util.merge(d.prototype,m.a),y.a.util.merge(d.prototype,E.a),y.a.util.merge(d.prototype,h.a);var _=d},function(H,M,g){"use strict";var D=g(59),y=g(0),v=g.n(y),m=g(2),E=g(39),h=g(34),a=v.a.extendComponentView({type:"geo3D",__ecgl__:!0,init:function(d,_){this._geo3DBuilder=new D.a(_),this.groupGL=new m.a.Node,this._lightRoot=new m.a.Node,this._sceneHelper=new h.a(this._lightRoot),this._sceneHelper.initLight(this._lightRoot),this._control=new E.a({zr:_.getZr()}),this._control.init()},render:function(d,_,r){this.groupGL.add(this._geo3DBuilder.rootNode);var n=d.coordinateSystem;if(!(!n||!n.viewGL)){n.viewGL.add(this._lightRoot),d.get("show")?n.viewGL.add(this.groupGL):n.viewGL.remove(this.groupGL);var l=this._control;l.setViewGL(n.viewGL);var o=d.getModel("viewControl");l.setFromViewControlModel(o,0),this._sceneHelper.setScene(n.viewGL.scene),this._sceneHelper.updateLight(d),n.viewGL.setPostEffect(d.getModel("postEffect"),r),n.viewGL.setTemporalSuperSampling(d.getModel("temporalSuperSampling")),this._geo3DBuilder.update(d,_,r,0,d.getData().count());var s=n.viewGL.isLinearSpace()?"define":"undefine";this._geo3DBuilder.rootNode.traverse(function(u){u.material&&u.material[s]("fragment","SRGB_DECODE")}),l.off("update"),l.on("update",function(){r.dispatchAction({type:"geo3DChangeCamera",alpha:l.getAlpha(),beta:l.getBeta(),distance:l.getDistance(),center:l.getCenter(),from:this.uid,geo3DId:d.id})})}},afterRender:function(d,_,r,n){var l=n.renderer;this._sceneHelper.updateAmbientCubemap(l,d,r),this._sceneHelper.updateSkybox(l,d,r)},dispose:function(){this._control.dispose()}})},function(H,M,g){"use strict";M.a=D;function D(T,N,I){I=I||2;var F=N&&N.length,U=F?N[0]*I:T.length,K=y(T,0,U,I,!0),G=[];if(!K)return G;var V,X,ee,oe,ue,Ae,fe;if(F&&(K=_(T,N,K,I)),T.length>80*I){V=ee=T[0],X=oe=T[1];for(var he=I;he<U;he+=I)ue=T[he],Ae=T[he+1],ue<V&&(V=ue),Ae<X&&(X=Ae),ue>ee&&(ee=ue),Ae>oe&&(oe=Ae);fe=Math.max(ee-V,oe-X)}return m(K,G,I,V,X,fe),G}function y(T,N,I,F,U){var K,G;if(U===R(T,N,I,F)>0)for(K=N;K<I;K+=F)G=P(K,T[K],T[K+1],G);else for(K=I-F;K>=N;K-=F)G=P(K,T[K],T[K+1],G);return G&&c(G,G.next)&&(b(G),G=G.next),G}function v(T,N){if(!T)return T;N||(N=T);var I=T,F;do if(F=!1,!I.steiner&&(c(I,I.next)||i(I.prev,I,I.next)===0)){if(b(I),I=N=I.prev,I===I.next)return null;F=!0}else I=I.next;while(F||I!==N);return N}function m(T,N,I,F,U,K,G){if(T){!G&&K&&o(T,F,U,K);for(var V=T,X,ee;T.prev!==T.next;){if(X=T.prev,ee=T.next,K?h(T,F,U,K):E(T)){N.push(X.i/I),N.push(T.i/I),N.push(ee.i/I),b(T),T=ee.next,V=ee.next;continue}if(T=ee,T===V){G?G===1?(T=a(T,N,I),m(T,N,I,F,U,K,2)):G===2&&d(T,N,I,F,U,K):m(v(T),N,I,F,U,K,1);break}}}}function E(T){var N=T.prev,I=T,F=T.next;if(i(N,I,F)>=0)return!1;for(var U=T.next.next;U!==T.prev;){if(e(N.x,N.y,I.x,I.y,F.x,F.y,U.x,U.y)&&i(U.prev,U,U.next)>=0)return!1;U=U.next}return!0}function h(T,N,I,F){var U=T.prev,K=T,G=T.next;if(i(U,K,G)>=0)return!1;for(var V=U.x<K.x?U.x<G.x?U.x:G.x:K.x<G.x?K.x:G.x,X=U.y<K.y?U.y<G.y?U.y:G.y:K.y<G.y?K.y:G.y,ee=U.x>K.x?U.x>G.x?U.x:G.x:K.x>G.x?K.x:G.x,oe=U.y>K.y?U.y>G.y?U.y:G.y:K.y>G.y?K.y:G.y,ue=u(V,X,N,I,F),Ae=u(ee,oe,N,I,F),fe=T.nextZ;fe&&fe.z<=Ae;){if(fe!==T.prev&&fe!==T.next&&e(U.x,U.y,K.x,K.y,G.x,G.y,fe.x,fe.y)&&i(fe.prev,fe,fe.next)>=0)return!1;fe=fe.nextZ}for(fe=T.prevZ;fe&&fe.z>=ue;){if(fe!==T.prev&&fe!==T.next&&e(U.x,U.y,K.x,K.y,G.x,G.y,fe.x,fe.y)&&i(fe.prev,fe,fe.next)>=0)return!1;fe=fe.prevZ}return!0}function a(T,N,I){var F=T;do{var U=F.prev,K=F.next.next;!c(U,K)&&p(U,F,F.next,K)&&x(U,K)&&x(K,U)&&(N.push(U.i/I),N.push(F.i/I),N.push(K.i/I),b(F),b(F.next),F=T=K),F=F.next}while(F!==T);return F}function d(T,N,I,F,U,K){var G=T;do{for(var V=G.next.next;V!==G.prev;){if(G.i!==V.i&&t(G,V)){var X=S(G,V);G=v(G,G.next),X=v(X,X.next),m(G,N,I,F,U,K),m(X,N,I,F,U,K);return}V=V.next}G=G.next}while(G!==T)}function _(T,N,I,F){var U=[],K,G,V,X,ee;for(K=0,G=N.length;K<G;K++)V=N[K]*F,X=K<G-1?N[K+1]*F:T.length,ee=y(T,V,X,F,!1),ee===ee.next&&(ee.steiner=!0),U.push(f(ee));for(U.sort(r),K=0;K<U.length;K++)n(U[K],I),I=v(I,I.next);return I}function r(T,N){return T.x-N.x}function n(T,N){if(N=l(T,N),N){var I=S(N,T);v(I,I.next)}}function l(T,N){var I=N,F=T.x,U=T.y,K=-1/0,G;do{if(U<=I.y&&U>=I.next.y&&I.next.y!==I.y){var V=I.x+(U-I.y)*(I.next.x-I.x)/(I.next.y-I.y);if(V<=F&&V>K){if(K=V,V===F){if(U===I.y)return I;if(U===I.next.y)return I.next}G=I.x<I.next.x?I:I.next}}I=I.next}while(I!==N);if(!G)return null;if(F===K)return G.prev;var X=G,ee=G.x,oe=G.y,ue=1/0,Ae;for(I=G.next;I!==X;)F>=I.x&&I.x>=ee&&F!==I.x&&e(U<oe?F:K,U,ee,oe,U<oe?K:F,U,I.x,I.y)&&(Ae=Math.abs(U-I.y)/(F-I.x),(Ae<ue||Ae===ue&&I.x>G.x)&&x(I,T)&&(G=I,ue=Ae)),I=I.next;return G}function o(T,N,I,F){var U=T;do U.z===null&&(U.z=u(U.x,U.y,N,I,F)),U.prevZ=U.prev,U.nextZ=U.next,U=U.next;while(U!==T);U.prevZ.nextZ=null,U.prevZ=null,s(U)}function s(T){var N,I,F,U,K,G,V,X,ee=1;do{for(I=T,T=null,K=null,G=0;I;){for(G++,F=I,V=0,N=0;N<ee&&(V++,F=F.nextZ,!!F);N++);for(X=ee;V>0||X>0&&F;)V!==0&&(X===0||!F||I.z<=F.z)?(U=I,I=I.nextZ,V--):(U=F,F=F.nextZ,X--),K?K.nextZ=U:T=U,U.prevZ=K,K=U;I=F}K.nextZ=null,ee*=2}while(G>1);return T}function u(T,N,I,F,U){return T=32767*(T-I)/U,N=32767*(N-F)/U,T=(T|T<<8)&16711935,T=(T|T<<4)&252645135,T=(T|T<<2)&858993459,T=(T|T<<1)&1431655765,N=(N|N<<8)&16711935,N=(N|N<<4)&252645135,N=(N|N<<2)&858993459,N=(N|N<<1)&1431655765,T|N<<1}function f(T){var N=T,I=T;do N.x<I.x&&(I=N),N=N.next;while(N!==T);return I}function e(T,N,I,F,U,K,G,V){return(U-G)*(N-V)-(T-G)*(K-V)>=0&&(T-G)*(F-V)-(I-G)*(N-V)>=0&&(I-G)*(K-V)-(U-G)*(F-V)>=0}function t(T,N){return T.next.i!==N.i&&T.prev.i!==N.i&&!A(T,N)&&x(T,N)&&x(N,T)&&C(T,N)}function i(T,N,I){return(N.y-T.y)*(I.x-N.x)-(N.x-T.x)*(I.y-N.y)}function c(T,N){return T.x===N.x&&T.y===N.y}function p(T,N,I,F){return c(T,N)&&c(I,F)||c(T,F)&&c(I,N)?!0:i(T,N,I)>0!=i(T,N,F)>0&&i(I,F,T)>0!=i(I,F,N)>0}function A(T,N){var I=T;do{if(I.i!==T.i&&I.next.i!==T.i&&I.i!==N.i&&I.next.i!==N.i&&p(I,I.next,T,N))return!0;I=I.next}while(I!==T);return!1}function x(T,N){return i(T.prev,T,T.next)<0?i(T,N,T.next)>=0&&i(T,T.prev,N)>=0:i(T,N,T.prev)<0||i(T,T.next,N)<0}function C(T,N){var I=T,F=!1,U=(T.x+N.x)/2,K=(T.y+N.y)/2;do I.y>K!=I.next.y>K&&I.next.y!==I.y&&U<(I.next.x-I.x)*(K-I.y)/(I.next.y-I.y)+I.x&&(F=!F),I=I.next;while(I!==T);return F}function S(T,N){var I=new L(T.i,T.x,T.y),F=new L(N.i,N.x,N.y),U=T.next,K=N.prev;return T.next=N,N.prev=T,I.next=U,U.prev=I,F.next=I,I.prev=F,K.next=F,F.prev=K,F}function P(T,N,I,F){var U=new L(T,N,I);return F?(U.next=F.next,U.prev=F,F.next.prev=U,F.next=U):(U.prev=U,U.next=U),U}function b(T){T.next.prev=T.prev,T.prev.next=T.next,T.prevZ&&(T.prevZ.nextZ=T.nextZ),T.nextZ&&(T.nextZ.prevZ=T.prevZ)}function L(T,N,I){this.i=T,this.x=N,this.y=I,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}D.deviation=function(T,N,I,F){var U=N&&N.length,K=U?N[0]*I:T.length,G=Math.abs(R(T,0,K,I));if(U)for(var V=0,X=N.length;V<X;V++){var ee=N[V]*I,oe=V<X-1?N[V+1]*I:T.length;G-=Math.abs(R(T,ee,oe,I))}var ue=0;for(V=0;V<F.length;V+=3){var Ae=F[V]*I,fe=F[V+1]*I,he=F[V+2]*I;ue+=Math.abs((T[Ae]-T[he])*(T[fe+1]-T[Ae+1])-(T[Ae]-T[fe])*(T[he+1]-T[Ae+1]))}return G===0&&ue===0?0:Math.abs((ue-G)/G)};function R(T,N,I,F){for(var U=0,K=N,G=I-F;K<I;K+=F)U+=(T[G]-T[K])*(T[K+1]+T[G+1]),G=K;return U}},function(H,M,g){var D=g(12),y={\u5357\u6D77\u8BF8\u5C9B:[32,80],\u5E7F\u4E1C:[0,-10],\u9999\u6E2F:[10,5],\u6FB3\u95E8:[-10,10],\u5929\u6D25:[5,5]};function v(m){D.each(m.regions,function(E){var h=y[E.name];if(h){var a=E.center;a[0]+=h[0]/10.5,a[1]+=-h[1]/(10.5/.75)}})}H.exports=v},function(H,M,g){var D=g(12),y={Russia:[100,60],"United States":[-99,38],"United States of America":[-99,38]};function v(m){D.each(m.regions,function(E){var h=y[E.name];if(h){var a=E.center;a[0]=h[0],a[1]=h[1]}})}H.exports=v},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(190),m=g(191),E=g(193);y.a.registerAction({type:"globeChangeCamera",event:"globecamerachanged",update:"series:updateCamera"},function(h,a){a.eachComponent({mainType:"globe",query:h},function(d){d.setView(h)})}),y.a.registerAction({type:"globeUpdateDisplacment",event:"globedisplacementupdated",update:"update"},function(h,a){})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(38),m=g(31),E=g(32),h=g(26);function a(r,n){r.id=r.id||r.name||n+""}var d=y.a.extendComponentModel({type:"globe",layoutMode:"box",coordinateSystem:null,init:function(){d.superApply(this,"init",arguments),y.a.util.each(this.option.layers,function(r,n){y.a.util.merge(r,this.defaultLayerOption),a(r,n)},this)},mergeOption:function(r){var n=this.option.layers;this.option.layers=null,d.superApply(this,"mergeOption",arguments);function l(f){return y.a.util.reduce(f,function(e,t,i){return a(t,i),e[t.id]=t,e},{})}if(n&&n.length){var o=l(r.layers),s=l(n);for(var u in o)s[u]?y.a.util.merge(s[u],o[u],!0):n.push(r.layers[u]);this.option.layers=n}y.a.util.each(this.option.layers,function(f){y.a.util.merge(f,this.defaultLayerOption)},this)},optionUpdated:function(){this.updateDisplacementHash()},defaultLayerOption:{show:!0,type:"overlay"},defaultOption:{show:!0,zlevel:-10,left:0,top:0,width:"100%",height:"100%",environment:"auto",baseColor:"#fff",baseTexture:"",heightTexture:"",displacementTexture:"",displacementScale:0,displacementQuality:"medium",globeRadius:100,globeOuterRadius:150,shading:"lambert",light:{main:{time:""}},viewControl:{autoRotate:!0,panSensitivity:0,targetCoord:null},layers:[]},setDisplacementData:function(r,n,l){this.displacementData=r,this.displacementWidth=n,this.displacementHeight=l},getDisplacementTexture:function(){return this.get("displacementTexture")||this.get("heightTexture")},getDisplacemenScale:function(){var r=this.getDisplacementTexture(),n=this.get("displacementScale");return(!r||r==="none")&&(n=0),n},hasDisplacement:function(){return this.getDisplacemenScale()>0},_displacementChanged:!0,_displacementScale:0,updateDisplacementHash:function(){var r=this.getDisplacementTexture(),n=this.getDisplacemenScale();this._displacementChanged=this._displacementTexture!==r||this._displacementScale!==n,this._displacementTexture=r,this._displacementScale=n},isDisplacementChanged:function(){return this._displacementChanged}});y.a.util.merge(d.prototype,v.a),y.a.util.merge(d.prototype,m.a),y.a.util.merge(d.prototype,E.a),y.a.util.merge(d.prototype,h.a);var _=d},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(2),m=g(39),E=g(34),h=g(192),a=g(3),d=y.a.extendComponentView({type:"globe",__ecgl__:!0,_displacementScale:0,init:function(_,r){this.groupGL=new v.a.Node,this._sphereGeometry=new v.a.SphereGeometry({widthSegments:200,heightSegments:100,dynamic:!0}),this._overlayGeometry=new v.a.SphereGeometry({widthSegments:80,heightSegments:40}),this._planeGeometry=new v.a.PlaneGeometry,this._earthMesh=new v.a.Mesh({renderNormal:!0}),this._lightRoot=new v.a.Node,this._sceneHelper=new E.a,this._sceneHelper.initLight(this._lightRoot),this.groupGL.add(this._earthMesh),this._control=new m.a({zr:r.getZr()}),this._control.init(),this._layerMeshes={}},render:function(_,r,n){var l=_.coordinateSystem,o=_.get("shading");l.viewGL.add(this._lightRoot),_.get("show")?l.viewGL.add(this.groupGL):l.viewGL.remove(this.groupGL),this._sceneHelper.setScene(l.viewGL.scene),l.viewGL.setPostEffect(_.getModel("postEffect"),n),l.viewGL.setTemporalSuperSampling(_.getModel("temporalSuperSampling"));var s=this._earthMesh;s.geometry=this._sphereGeometry;var u="ecgl."+o;(!s.material||s.material.shader.name!==u)&&(s.material=v.a.createMaterial(u)),v.a.setMaterialFromModel(o,s.material,_,n),["roughnessMap","metalnessMap","detailMap","normalMap"].forEach(function(i){var c=s.material.get(i);c&&(c.flipY=!1)}),s.material.set("color",v.a.parseColor(_.get("baseColor")));var f=l.radius*.99;s.scale.set(f,f,f);var e=s.material.setTextureImage("diffuseMap",_.get("baseTexture"),n,{flipY:!1,anisotropic:8});e&&e.surface&&e.surface.attachToMesh(s);var t=s.material.setTextureImage("bumpMap",_.get("heightTexture"),n,{flipY:!1,anisotropic:8});t&&t.surface&&t.surface.attachToMesh(s),s.material[_.get("postEffect.enable")?"define":"undefine"]("fragment","SRGB_DECODE"),this._updateLight(_,n),this._displaceVertices(_,n),this._updateViewControl(_,n),this._updateLayers(_,n)},afterRender:function(_,r,n,l){var o=l.renderer;this._sceneHelper.updateAmbientCubemap(o,_,n),this._sceneHelper.updateSkybox(o,_,n)},_updateLayers:function(_,r){var n=_.coordinateSystem,l=_.get("layers"),o=n.radius,s=[],u=[],f=[],e=[];y.a.util.each(l,function(A){var x=new y.a.Model(A),C=x.get("type"),S=v.a.loadTexture(x.get("texture"),r,{flipY:!1,anisotropic:8});if(S.surface&&S.surface.attachToMesh(this._earthMesh),C==="blend"){var P=x.get("blendTo"),b=a.a.firstNotNull(x.get("intensity"),1);P==="emission"?(f.push(S),e.push(b)):(s.push(S),u.push(b))}else{var L=x.get("id"),R=this._layerMeshes[L];R||(R=this._layerMeshes[L]=new v.a.Mesh({geometry:this._overlayGeometry,castShadow:!1,ignorePicking:!0}));var T=x.get("shading");T==="lambert"?(R.material=R.__lambertMaterial||new v.a.Material({autoUpdateTextureStatus:!1,shader:v.a.createShader("ecgl.lambert"),transparent:!0,depthMask:!1}),R.__lambertMaterial=R.material):(R.material=R.__colorMaterial||new v.a.Material({autoUpdateTextureStatus:!1,shader:v.a.createShader("ecgl.color"),transparent:!0,depthMask:!1}),R.__colorMaterial=R.material),R.material.enableTexture("diffuseMap");var N=x.get("distance"),I=o+(N==null?n.radius/100:N);R.scale.set(I,I,I),o=I;var F=this._blankTexture||(this._blankTexture=v.a.createBlankTexture("rgba(255, 255, 255, 0)"));R.material.set("diffuseMap",F),v.a.loadTexture(x.get("texture"),r,{flipY:!1,anisotropic:8},function(U){U.surface&&U.surface.attachToMesh(R),R.material.set("diffuseMap",U),r.getZr().refresh()}),x.get("show")?this.groupGL.add(R):this.groupGL.remove(R)}},this);var t=this._earthMesh.material;t.define("fragment","LAYER_DIFFUSEMAP_COUNT",s.length),t.define("fragment","LAYER_EMISSIVEMAP_COUNT",f.length),t.set("layerDiffuseMap",s),t.set("layerDiffuseIntensity",u),t.set("layerEmissiveMap",f),t.set("layerEmissionIntensity",e);var i=_.getModel("debug.wireframe");if(i.get("show")){t.define("both","WIREFRAME_TRIANGLE");var c=v.a.parseColor(i.get("lineStyle.color")||"rgba(0,0,0,0.5)"),p=a.a.firstNotNull(i.get("lineStyle.width"),1);t.set("wireframeLineWidth",p),t.set("wireframeLineColor",c)}else t.undefine("both","WIREFRAME_TRIANGLE")},_updateViewControl:function(_,r){var n=_.coordinateSystem,l=_.getModel("viewControl"),o=n.viewGL.camera,s=this;function u(){return{type:"globeChangeCamera",alpha:f.getAlpha(),beta:f.getBeta(),distance:f.getDistance()-n.radius,center:f.getCenter(),from:s.uid,globeId:_.id}}var f=this._control;f.setViewGL(n.viewGL);var e=l.get("targetCoord"),t,i;e!=null&&(i=e[0]+90,t=e[1]),f.setFromViewControlModel(l,{baseDistance:n.radius,alpha:t,beta:i}),f.off("update"),f.on("update",function(){r.dispatchAction(u())})},_displaceVertices:function(_,r){var n=_.get("displacementQuality"),l=_.get("debug.wireframe.show"),o=_.coordinateSystem;if(!(!_.isDisplacementChanged()&&n===this._displacementQuality&&l===this._showDebugWireframe)){this._displacementQuality=n,this._showDebugWireframe=l;var s=this._sphereGeometry,u={low:100,medium:200,high:400,ultra:800}[n]||200,f=u/2;(s.widthSegments!==u||l)&&(s.widthSegments=u,s.heightSegments=f,s.build()),this._doDisplaceVertices(s,o),l&&s.generateBarycentric()}},_doDisplaceVertices:function(_,r){var n=_.attributes.position.value,l=_.attributes.texcoord0.value,o=_.__originalPosition;(!o||o.length!==n.length)&&(o=new Float32Array(n.length),o.set(n),_.__originalPosition=o);for(var s=r.displacementWidth,u=r.displacementHeight,f=r.displacementData,e=0;e<_.vertexCount;e++){var t=e*3,i=e*2,c=o[t+1],p=o[t+2],A=o[t+3],x=l[i++],C=l[i++],S=Math.round(x*(s-1)),P=Math.round(C*(u-1)),b=P*s+S,L=f?f[b]:0;n[t+1]=c+c*L,n[t+2]=p+p*L,n[t+3]=A+A*L}_.generateVertexNormals(),_.dirty(),_.updateBoundingBox()},_updateLight:function(_,r){var n=this._earthMesh;this._sceneHelper.updateLight(_);var l=this._sceneHelper.mainLight,o=_.get("light.main.time")||new Date,s=h.a.getPosition(y.a.number.parseDate(o),0,0),u=Math.cos(s.altitude);l.position.y=-u*Math.cos(s.azimuth),l.position.x=Math.sin(s.altitude),l.position.z=u*Math.sin(s.azimuth),l.lookAt(n.getWorldPosition())},dispose:function(_,r){this.groupGL.removeAll(),this._control.dispose()}})},function(H,M,g){"use strict";var D=Math.PI,y=Math.sin,v=Math.cos,m=Math.tan,E=Math.asin,h=Math.atan2,a=D/180,d=1e3*60*60*24,_=2440588,r=2451545;function n(x){return x.valueOf()/d-.5+_}function l(x){return n(x)-r}var o=a*23.4397;function s(x,C){return h(y(x)*v(o)-m(C)*y(o),v(x))}function u(x,C){return E(y(C)*v(o)+v(C)*y(o)*y(x))}function f(x,C,S){return h(y(x),v(x)*y(C)-m(S)*v(C))}function e(x,C,S){return E(y(C)*y(S)+v(C)*v(S)*v(x))}function t(x,C){return a*(280.16+360.9856235*x)-C}function i(x){return a*(357.5291+.98560028*x)}function c(x){var C=a*(1.9148*y(x)+.02*y(2*x)+3e-4*y(3*x)),S=a*102.9372;return x+C+S+D}function p(x){var C=i(x),S=c(C);return{dec:u(S,0),ra:s(S,0)}}var A={};A.getPosition=function(x,C,S){var P=a*-S,b=a*C,L=l(x),R=p(L),T=t(L,P)-R.ra;return{azimuth:f(T,b,R.dec),altitude:e(T,b,R.dec)}},M.a=A},function(H,M,g){"use strict";var D=g(194),y=g(0),v=g.n(y),m=g(41),E=g.n(m),h=g(20),a=g(3),d=g(2);function _(s,u){var f=document.createElement("canvas"),e=f.getContext("2d"),t=s.width,i=s.height;f.width=t,f.height=i,e.drawImage(s,0,0,t,i);for(var c=e.getImageData(0,0,t,i).data,p=new Float32Array(c.length/4),A=0;A<c.length/4;A++){var x=c[A*4];p[A]=x/255*u}return{data:p,width:t,height:i}}function r(s,u){var f=s.getBoxLayoutParams(),e=E.a.getLayoutRect(f,{width:u.getWidth(),height:u.getHeight()});e.y=u.getHeight()-e.y-e.height,this.viewGL.setViewport(e.x,e.y,e.width,e.height,u.getDevicePixelRatio()),this.radius=s.get("globeRadius");var t=s.get("globeOuterRadius");this.altitudeAxis&&this.altitudeAxis.setExtent(0,t-this.radius)}function n(s,u){var f=[1/0,-1/0];if(s.eachSeries(function(t){if(t.coordinateSystem===this){var i=t.getData(),c=t.coordDimToDataDim("alt")[0];if(c){var p=i.getDataExtent(c,!0);f[0]=Math.min(f[0],p[0]),f[1]=Math.max(f[1],p[1])}}},this),f&&isFinite(f[1]-f[0])){var e=v.a.helper.createScale(f,{type:"value",min:"dataMin",max:"dataMax"});this.altitudeAxis=new v.a.Axis("altitude",e),this.resize(this.model,u)}}var l={dimensions:D.a.prototype.dimensions,create:function(s,u){var f=[];return s.eachComponent("globe",function(e){e.__viewGL=e.__viewGL||new h.a;var t=new D.a;t.viewGL=e.__viewGL,e.coordinateSystem=t,t.model=e,f.push(t),t.resize=r,t.resize(e,u),t.update=n}),s.eachSeries(function(e){if(e.get("coordinateSystem")==="globe"){var t=e.getReferringComponents("globe")[0];if(t||(t=s.getComponent("globe")),!t)throw new Error('globe "'+a.a.firstNotNull(e.get("globe3DIndex"),e.get("globe3DId"),0)+'" not found');var i=t.coordinateSystem;e.coordinateSystem=i}}),s.eachComponent("globe",function(e,t){var i=e.coordinateSystem,c=e.getDisplacementTexture(),p=e.getDisplacemenScale();if(e.isDisplacementChanged()){if(e.hasDisplacement()){var A=!0;d.a.loadTexture(c,u,function(x){var C=x.image,S=_(C,p);e.setDisplacementData(S.data,S.width,S.height),A||u.dispatchAction({type:"globeUpdateDisplacment"})}),A=!1}else i.setDisplacementData(null,0,0);i.setDisplacementData(e.displacementData,e.displacementWidth,e.displacementHeight)}}),f}};v.a.registerCoordinateSystem("globe",l);var o=l},function(H,M,g){"use strict";var D=g(1),y=g.n(D),v=y.a.vec3;function m(E){this.radius=E,this.viewGL=null,this.altitudeAxis,this.displacementData=null,this.displacementWidth,this.displacementHeight}m.prototype={constructor:m,dimensions:["lng","lat","alt"],type:"globe",containPoint:function(){},setDisplacementData:function(E,h,a){this.displacementData=E,this.displacementWidth=h,this.displacementHeight=a},_getDisplacementScale:function(E,h){var a=(E+180)/360*(this.displacementWidth-1),d=(90-h)/180*(this.displacementHeight-1),_=Math.round(a)+Math.round(d)*this.displacementWidth;return this.displacementData[_]},dataToPoint:function(E,h){var a=E[0],d=E[1],_=E[2]||0,r=this.radius;this.displacementData&&(r*=1+this._getDisplacementScale(a,d)),this.altitudeAxis&&(r+=this.altitudeAxis.dataToCoord(_)),a=a*Math.PI/180,d=d*Math.PI/180;var n=Math.cos(d)*r;return h=h||[],h[0]=-n*Math.cos(a+Math.PI),h[1]=Math.sin(d)*r,h[2]=n*Math.sin(a+Math.PI),h},pointToData:function(E,h){var a=E[0],d=E[1],_=E[2],r=v.len(E);a/=r,d/=r,_/=r;var n=Math.asin(d),l=Math.atan2(_,-a);l<0&&(l=Math.PI*2+l);var o=n*180/Math.PI,s=l*180/Math.PI-180;return h=h||[],h[0]=s,h[1]=o,h[2]=r-this.radius,this.altitudeAxis&&(h[2]=this.altitudeAxis.coordToData(h[2])),h}},M.a=m},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(196),m=g(198),E=g(199);y.a.registerAction({type:"mapbox3DChangeCamera",event:"mapbox3dcamerachanged",update:"mapbox3D:updateCamera"},function(h,a){a.eachComponent({mainType:"mapbox3D",query:h},function(d){d.setMapboxCameraOption(h)})})},function(H,M,g){"use strict";var D=g(197),y=g(0),v=g.n(y),m=g(3),E=g(2),h=g(20);function a(n,l){var o=l.getWidth(),s=l.getHeight(),u=l.getDevicePixelRatio();this.viewGL.setViewport(0,0,o,s,u),this.width=o,this.height=s,this.altitudeScale=n.get("altitudeScale"),this.boxHeight=n.get("boxHeight")}function d(n,l){if(this.model.get("boxHeight")!=="auto"){var o=[1/0,-1/0];n.eachSeries(function(s){if(s.coordinateSystem===this){var u=s.getData(),f=s.coordDimToDataDim("alt")[0];if(f){var e=u.getDataExtent(f,!0);o[0]=Math.min(o[0],e[0]),o[1]=Math.max(o[1],e[1])}}},this),o&&isFinite(o[1]-o[0])&&(this.altitudeExtent=o)}}var _={dimensions:D.a.prototype.dimensions,create:function(n,l){var o=[];return n.eachComponent("mapbox3D",function(s){var u=s.__viewGL;u||(u=s.__viewGL=new h.a,u.setRootNode(new E.a.Node));var f=new D.a;f.viewGL=s.__viewGL,f.resize=a,f.resize(s,l),o.push(f),s.coordinateSystem=f,f.model=s,f.setCameraOption(s.getMapboxCameraOption()),f.update=d}),n.eachSeries(function(s){if(s.get("coordinateSystem")==="mapbox3D"){var u=s.getReferringComponents("mapbox3D")[0];if(u||(u=n.getComponent("mapbox3D")),!u)throw new Error('mapbox3D "'+m.a.firstNotNull(s.get("mapbox3DIndex"),s.get("mapbox3DId"),0)+'" not found');s.coordinateSystem=u.coordinateSystem}}),o}};v.a.registerCoordinateSystem("mapbox3D",_);var r=_},function(H,M,g){"use strict";var D=g(1),y=g.n(D),v=y.a.mat4,m=512,E=.6435011087932844,h=Math.PI,a=1/10;function d(){this.width=0,this.height=0,this.altitudeScale=1,this.boxHeight="auto",this.altitudeExtent,this.bearing=0,this.pitch=0,this.center=[0,0],this._origin,this.zoom=0,this._initialZoom}d.prototype={constructor:d,type:"mapbox3D",dimensions:["lng","lat","alt"],containPoint:function(){},setCameraOption:function(_){this.bearing=_.bearing,this.pitch=_.pitch,this.center=_.center,this.zoom=_.zoom,this._origin||(this._origin=this.projectOnTileWithScale(this.center,m)),this._initialZoom==null&&(this._initialZoom=this.zoom),this.updateTransform()},updateTransform:function(){if(this.height){var _=.5/Math.tan(E/2)*this.height*a,r=Math.max(Math.min(this.pitch,60),0)/180*Math.PI,n=E/2,l=Math.PI/2+r,o=Math.sin(n)*_/Math.sin(Math.PI-l-n),s=Math.cos(Math.PI/2-r)*o+_,u=s*1.1,f=new Float64Array(16);v.perspective(f,E,this.width/this.height,1,u),this.viewGL.camera.projectionMatrix.setArray(f),this.viewGL.camera.decomposeProjectionMatrix();var f=v.identity(new Float64Array(16)),e=this.dataToPoint(this.center);v.scale(f,f,[1,-1,1]),v.translate(f,f,[0,0,-_]),v.rotateX(f,f,r),v.rotateZ(f,f,-this.bearing/180*Math.PI),v.translate(f,f,[-e[0]*this.getScale()*a,-e[1]*this.getScale()*a,0]),this.viewGL.camera.viewMatrix.array=f;var t=new Float64Array(16);v.invert(t,f),this.viewGL.camera.worldTransform.array=t,this.viewGL.camera.decomposeWorldTransform();var i=m*this.getScale(),c;if(this.altitudeExtent&&!isNaN(this.boxHeight)){var p=this.altitudeExtent[1]-this.altitudeExtent[0];c=this.boxHeight/p*this.getScale()/Math.pow(2,this._initialZoom)}else c=i/(2*Math.PI*6378e3*Math.abs(Math.cos(this.center[1]*(Math.PI/180))))*this.altitudeScale*a;this.viewGL.rootNode.scale.set(this.getScale()*a,this.getScale()*a,c)}},getScale:function(){return Math.pow(2,this.zoom)},projectOnTile:function(_,r){return this.projectOnTileWithScale(_,this.getScale()*m,r)},projectOnTileWithScale:function(_,r,n){var l=_[0],o=_[1],s=l*h/180,u=o*h/180,f=r*(s+h)/(2*h),e=r*(h-Math.log(Math.tan(h/4+u*.5)))/(2*h);return n=n||[],n[0]=f,n[1]=e,n},unprojectFromTile:function(_,r){return this.unprojectOnTileWithScale(_,this.getScale()*m,r)},unprojectOnTileWithScale:function(_,r,n){var l=_[0],o=_[1],s=l/r*(2*h)-h,u=2*(Math.atan(Math.exp(h-o/r*(2*h)))-h/4);return n=n||[],n[0]=s*180/h,n[1]=u*180/h,n},dataToPoint:function(_,r){return r=this.projectOnTileWithScale(_,m,r),r[0]-=this._origin[0],r[1]-=this._origin[1],r[2]=isNaN(_[2])?0:_[2],isNaN(_[2])||(r[2]=_[2],this.altitudeExtent&&(r[2]-=this.altitudeExtent[0])),r}},M.a=d},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(31),m=g(32),E=["zoom","center","pitch","bearing"],h=y.a.extendComponentModel({type:"mapbox3D",layoutMode:"box",coordinateSystem:null,defaultOption:{zlevel:-10,style:"mapbox://styles/mapbox/light-v9",center:[0,0],zoom:0,pitch:0,bearing:0,light:{main:{alpha:20,beta:30}},altitudeScale:1,boxHeight:"auto"},getMapboxCameraOption:function(){var d=this;return E.reduce(function(_,r){return _[r]=d.get(r),_},{})},setMapboxCameraOption:function(d){d!=null&&E.forEach(function(_){d[_]!=null&&(this.option[_]=d[_])},this)},getMapbox:function(){return this._mapbox},setMapbox:function(d){this._mapbox=d}});y.a.util.merge(h.prototype,v.a),y.a.util.merge(h.prototype,m.a);var a=h},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(200),m=g(34),E=g(2),h=g(201);E.a.Shader.import(h.a);var a=512,d=y.a.extendComponentView({type:"mapbox3D",__ecgl__:!0,init:function(_,r){var n=r.getZr();this._zrLayer=new v.a("mapbox3D",n),n.painter.insertLayer(-1e3,this._zrLayer),this._lightRoot=new E.a.Node,this._sceneHelper=new m.a(this._lightRoot),this._sceneHelper.initLight(this._lightRoot);var l=this._zrLayer.getMapbox(),o=this._dispatchInteractAction.bind(this,r,l);["zoom","rotate","drag","pitch","rotate","move"].forEach(function(s){l.on(s,o)}),this._groundMesh=new E.a.Mesh({geometry:new E.a.PlaneGeometry,material:new E.a.Material({shader:new E.a.Shader({vertex:E.a.Shader.source("ecgl.displayShadow.vertex"),fragment:E.a.Shader.source("ecgl.displayShadow.fragment")}),depthMask:!1}),renderOrder:-100,culling:!1,castShadow:!1,$ignorePicking:!0,renderNormal:!0})},render:function(_,r,n){var l=this._zrLayer.getMapbox(),o=_.get("style"),s=JSON.stringify(o);s!==this._oldStyleStr&&o&&l.setStyle(o),this._oldStyleStr=s,l.setCenter(_.get("center")),l.setZoom(_.get("zoom")),l.setPitch(_.get("pitch")),l.setBearing(_.get("bearing")),_.setMapbox(l);var u=_.coordinateSystem;u.viewGL.scene.add(this._lightRoot),u.viewGL.add(this._groundMesh),this._updateGroundMesh(),this._sceneHelper.setScene(u.viewGL.scene),this._sceneHelper.updateLight(_),u.viewGL.setPostEffect(_.getModel("postEffect"),n),u.viewGL.setTemporalSuperSampling(_.getModel("temporalSuperSampling")),this._mapbox3DModel=_},afterRender:function(_,r,n,l){var o=l.renderer;this._sceneHelper.updateAmbientCubemap(o,_,n),this._sceneHelper.updateSkybox(o,_,n),_.coordinateSystem.viewGL.scene.traverse(function(s){s.material&&(s.material.define("fragment","NORMAL_UP_AXIS",2),s.material.define("fragment","NORMAL_FRONT_AXIS",1))})},updateCamera:function(_,r,n,l){_.coordinateSystem.setCameraOption(l),this._updateGroundMesh(),n.getZr().refresh()},_dispatchInteractAction:function(_,r,n){_.dispatchAction({type:"mapbox3DChangeCamera",pitch:r.getPitch(),zoom:r.getZoom(),center:r.getCenter().toArray(),bearing:r.getBearing(),mapbox3DId:this._mapbox3DModel&&this._mapbox3DModel.id})},_updateGroundMesh:function(){if(this._mapbox3DModel){var _=this._mapbox3DModel.coordinateSystem,r=_.dataToPoint(_.center);this._groundMesh.position.set(r[0],r[1],-.001);var n=new E.a.Plane(new E.a.Vector3(0,0,1),0),l=_.viewGL.camera.castRay(new E.a.Vector2(-1,-1)),o=_.viewGL.camera.castRay(new E.a.Vector2(1,1)),s=l.intersectPlane(n),u=o.intersectPlane(n),f=s.dist(u)/_.viewGL.rootNode.scale.x;this._groundMesh.scale.set(f,f,1)}},dispose:function(_,r){r.getZr().delLayer(-1e3)}})},function(H,M,g){"use strict";function D(v,m){if(this.id=v,this.zr=m,this.dom=document.createElement("div"),this.dom.style.cssText="position:absolute;left:0;right:0;top:0;bottom:0;",!mapboxgl)throw new Error("Mapbox GL library must be included. See https://www.mapbox.com/mapbox-gl-js/api/");this._mapbox=new mapboxgl.Map({container:this.dom}),this._initEvents()}D.prototype.resize=function(){this._mapbox.resize()},D.prototype.getMapbox=function(){return this._mapbox},D.prototype.clear=function(){},D.prototype.refresh=function(){this._mapbox.resize()};var y=["mousedown","mouseup","click","dblclick","mousemove","mousewheel","wheel","touchstart","touchend","touchmove","touchcancel"];D.prototype._initEvents=function(){var v=this._mapbox.getCanvasContainer();this._handlers=this._handlers||{contextmenu:function(m){return m.preventDefault(),!1}},y.forEach(function(m){this._handlers[m]=function(E){var h={};for(var a in E)h[a]=E[a];h.bubbles=!1;var d=new E.constructor(E.type,h);v.dispatchEvent(d)},this.zr.dom.addEventListener(m,this._handlers[m])},this),this.zr.dom.addEventListener("contextmenu",this._handlers.contextmenu)},D.prototype.dispose=function(){y.forEach(function(v){this.zr.dom.removeEventListener(v,this._handlers[v])},this)},M.a=D},function(H,M,g){"use strict";M.a=`
|
|
@export ecgl.displayShadow.vertex
|
|
|
|
@import ecgl.common.transformUniforms
|
|
|
|
@import ecgl.common.uv.header
|
|
|
|
@import ecgl.common.attributes
|
|
|
|
varying vec3 v_WorldPosition;
|
|
|
|
varying vec3 v_Normal;
|
|
|
|
void main()
|
|
{
|
|
@import ecgl.common.uv.main
|
|
v_Normal = normalize((worldInverseTranspose * vec4(normal, 0.0)).xyz);
|
|
|
|
v_WorldPosition = (world * vec4(position, 1.0)).xyz;
|
|
gl_Position = worldViewProjection * vec4(position, 1.0);
|
|
}
|
|
|
|
@end
|
|
|
|
|
|
@export ecgl.displayShadow.fragment
|
|
|
|
@import ecgl.common.uv.fragmentHeader
|
|
|
|
varying vec3 v_Normal;
|
|
varying vec3 v_WorldPosition;
|
|
|
|
uniform float roughness: 0.2;
|
|
|
|
#ifdef DIRECTIONAL_LIGHT_COUNT
|
|
@import clay.header.directional_light
|
|
#endif
|
|
|
|
@import ecgl.common.ssaoMap.header
|
|
|
|
@import clay.plugin.compute_shadow_map
|
|
|
|
void main()
|
|
{
|
|
float shadow = 1.0;
|
|
|
|
@import ecgl.common.ssaoMap.main
|
|
|
|
#if defined(DIRECTIONAL_LIGHT_COUNT) && defined(DIRECTIONAL_LIGHT_SHADOWMAP_COUNT)
|
|
float shadowContribsDir[DIRECTIONAL_LIGHT_COUNT];
|
|
if(shadowEnabled)
|
|
{
|
|
computeShadowOfDirectionalLights(v_WorldPosition, shadowContribsDir);
|
|
}
|
|
for (int i = 0; i < DIRECTIONAL_LIGHT_COUNT; i++) {
|
|
shadow = min(shadow, shadowContribsDir[i] * 0.5 + 0.5);
|
|
}
|
|
#endif
|
|
|
|
shadow *= 0.5 + ao * 0.5;
|
|
shadow = clamp(shadow, 0.0, 1.0);
|
|
|
|
gl_FragColor = vec4(vec3(0.0), 1.0 - shadow);
|
|
}
|
|
|
|
@end`},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(203),m=g(206),E=g(208),h=g(16);y.a.registerVisual(Object(h.a)("bar3D")),y.a.registerProcessor(function(a,d){a.eachSeriesByType("bar3d",function(_){var r=_.getData();r.filterSelf(function(n){return r.hasValue(n)})})})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(4),m=g(1),E=g.n(m),h=g(204),a=g(205),d=E.a.vec3;function _(l,o){var s=l.getData(),u=l.get("minHeight")||0,f=l.get("barSize"),e=["lng","lat","alt"].map(function(c){return l.coordDimToDataDim(c)[0]});if(f==null){var t=o.radius*Math.PI,i=Object(a.a)(s,e[0],e[1]);f=[t/Math.sqrt(s.count()/i),t/Math.sqrt(s.count()/i)]}else y.a.util.isArray(f)||(f=[f,f]);s.each(e,function(c,p,A,x){var C=s.get(e[2],x,!0),S=s.stackedOn?C-A:o.altitudeAxis.scale.getExtent()[0],P=Math.max(o.altitudeAxis.dataToCoord(A),u),b=o.dataToPoint([c,p,S]),L=o.dataToPoint([c,p,C]),R=d.sub([],L,b);d.normalize(R,R);var T=[f[0],P,f[1]];s.setItemLayout(x,[b,R,T])}),s.setLayout("orient",v.a.UP.array)}function r(l,o){var s=l.getData(),u=l.get("barSize"),f=l.get("minHeight")||0,e=["lng","lat","alt"].map(function(p){return l.coordDimToDataDim(p)[0]});if(u==null){var t=Math.min(o.size[0],o.size[2]),i=Object(a.a)(s,e[0],e[1]);u=[t/Math.sqrt(s.count()/i),t/Math.sqrt(s.count()/i)]}else y.a.util.isArray(u)||(u=[u,u]);var c=[0,1,0];s.each(e,function(p,A,x,C){var S=s.get(e[2],C,!0),P=s.stackedOn?S-x:o.altitudeAxis.scale.getExtent()[0],b=Math.max(o.altitudeAxis.dataToCoord(x),f),L=o.dataToPoint([p,A,P]),R=[u[0],b,u[1]];s.setItemLayout(C,[L,c,R])}),s.setLayout("orient",[1,0,0])}function n(l,o){var s=l.getData(),u=l.coordDimToDataDim("lng")[0],f=l.coordDimToDataDim("lat")[0],e=l.coordDimToDataDim("alt")[0],t=l.get("barSize"),i=l.get("minHeight")||0;if(t==null){var c=s.getDataExtent(u),p=s.getDataExtent(f),A=o.dataToPoint([c[0],p[0]]),x=o.dataToPoint([c[1],p[1]]),C=Math.min(Math.abs(A[0]-x[0]),Math.abs(A[1]-x[1]))||1,S=Object(a.a)(s,u,f);t=[C/Math.sqrt(s.count()/S),C/Math.sqrt(s.count()/S)]}else y.a.util.isArray(t)||(t=[t,t]),t[0]/=o.getScale()/16,t[1]/=o.getScale()/16;var P=[0,0,1];s.each([u,f,e],function(b,L,R,T){var N=s.get(e,T,!0),I=s.stackedOn?N-R:0,F=o.dataToPoint([b,L,I]),U=o.dataToPoint([b,L,N]),K=Math.max(U[2]-F[2],i),G=[t[0],K,t[1]];s.setItemLayout(T,[F,P,G])}),s.setLayout("orient",[1,0,0])}y.a.registerLayout(function(l,o){l.eachSeriesByType("bar3D",function(s){var u=s.coordinateSystem,f=u&&u.type;if(f==="globe")_(s,u);else if(f==="cartesian3D")Object(h.a)(s,u);else if(f==="geo3D")r(s,u);else if(f==="mapbox3D")n(s,u);else throw u?new Error("bar3D doesn't support coordinate system "+u.type):new Error("bar3D doesn't have coordinate system.")})})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(1),m=g.n(v),E=m.a.vec3;function h(d){var _=d[0],r=d[1];return!(_>0&&r>0||_<0&&r<0)}function a(d,_){var r=d.getData(),n=d.get("barSize");if(n==null){var l=_.size,o,s,u=_.getAxis("x"),f=_.getAxis("y");u.type==="category"?o=u.getBandWidth()*.7:o=Math.round(l[0]/Math.sqrt(r.count()))*.6,f.type==="category"?s=f.getBandWidth()*.7:s=Math.round(l[1]/Math.sqrt(r.count()))*.6,n=[o,s]}else y.a.util.isArray(n)||(n=[n,n]);var e=_.getAxis("z").scale.getExtent(),t=h(e),i=["x","y","z"].map(function(c){return d.coordDimToDataDim(c)[0]});r.each(i,function(c,p,A,x){var C=r.get(i[2],x,!0),S=r.stackedOn?C-A:t?0:e[0],P=_.dataToPoint([c,p,S]),b=_.dataToPoint([c,p,C]),L=E.dist(P,b),R=[0,b[1]<P[1]?-1:1,0];Math.abs(L)===0&&(L=.1);var T=[n[0],L,n[1]];r.setItemLayout(x,[P,R,T])}),r.setLayout("orient",[1,0,0])}M.a=a},function(H,M,g){"use strict";M.a=function(D,y,v){for(var m=D.getDataExtent(y),E=D.getDataExtent(v),h=m[1]-m[0]||m[0],a=E[1]-E[0]||E[0],d=50,_=new Uint8Array(d*d),r=0;r<D.count();r++){var n=D.get(y,r),l=D.get(v,r),o=Math.floor((n-m[0])/h*(d-1)),s=Math.floor((l-E[0])/a*(d-1)),u=s*d+o;_[u]=_[u]||1}for(var f=0,r=0;r<_.length;r++)_[r]&&f++;return f/_.length}},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(2),m=g(3),E=g(27),h=g(207),a=g(61),d=g(1),_=g.n(d),r=_.a.vec3,n=y.a.extendChartView({type:"bar3D",__ecgl__:!0,init:function(l,o){this.groupGL=new v.a.Node,this._api=o,this._labelsBuilder=new a.a(256,256,o);var s=this;this._labelsBuilder.getLabelPosition=function(u,f,e){if(s._data){var t=s._data.getItemLayout(u),i=t[0],c=t[1],p=t[2][1];return r.scaleAndAdd([],i,c,e+p)}else return[0,0]},this._labelsBuilder.getMesh().renderOrder=100},render:function(l,o,s){var u=this._prevBarMesh;this._prevBarMesh=this._barMesh,this._barMesh=u,this._barMesh||(this._barMesh=new v.a.Mesh({geometry:new h.a,shadowDepthMaterial:new v.a.Material({shader:new v.a.Shader(v.a.Shader.source("ecgl.sm.depth.vertex"),v.a.Shader.source("ecgl.sm.depth.fragment"))}),culling:l.coordinateSystem.type==="cartesian3D",renderOrder:10,renderNormal:!0})),this.groupGL.remove(this._prevBarMesh),this.groupGL.add(this._barMesh),this.groupGL.add(this._labelsBuilder.getMesh());var f=l.coordinateSystem;if(this._doRender(l,s),f&&f.viewGL){f.viewGL.add(this.groupGL);var e=f.viewGL.isLinearSpace()?"define":"undefine";this._barMesh.material[e]("fragment","SRGB_DECODE")}this._data=l.getData(),this._labelsBuilder.updateData(this._data),this._labelsBuilder.updateLabels(),this._updateAnimation(l)},_updateAnimation:function(l){v.a.updateVertexAnimation([["prevPosition","position"],["prevNormal","normal"]],this._prevBarMesh,this._barMesh,l)},_doRender:function(l,o){var s=l.getData(),u=l.get("shading"),f=u!=="color",e=this,t=this._barMesh,i="ecgl."+u;(!t.material||t.material.shader.name!==i)&&(t.material=v.a.createMaterial(i,["VERTEX_COLOR"])),v.a.setMaterialFromModel(u,t.material,l,o),t.geometry.enableNormal=f,t.geometry.resetOffset();var c=l.get("bevelSize"),p=l.get("bevelSmoothness");t.geometry.bevelSegments=p,t.geometry.bevelSize=c;var A=[],x=new Float32Array(s.count()*4),C=0,L=0,S=!1;s.each(function(T){if(s.hasValue(T)){var N=s.getItemVisual(T,"color"),I=s.getItemVisual(T,"opacity");I==null&&(I=1),v.a.parseColor(N,A),A[3]*=I,x[C++]=A[0],x[C++]=A[1],x[C++]=A[2],x[C++]=A[3],A[3]>0&&(L++,A[3]<.99&&(S=!0))}}),t.geometry.setBarCount(L);var P=s.getLayout("orient"),b=this._barIndexOfData=new Int32Array(s.count()),L=0;s.each(function(T){if(!s.hasValue(T)){b[T]=-1;return}var N=s.getItemLayout(T),I=N[0],F=N[1],U=N[2],K=T*4;A[0]=x[K++],A[1]=x[K++],A[2]=x[K++],A[3]=x[K++],A[3]>0&&(e._barMesh.geometry.addBar(I,F,P,U,A,T),b[T]=L++)}),t.geometry.dirty(),t.geometry.updateBoundingBox();var R=t.material;R.transparent=S,R.depthMask=!S,t.geometry.sortTriangles=S,this._initHandler(l,o)},_initHandler:function(l,o){var s=l.getData(),u=this._barMesh,f=l.coordinateSystem.type==="cartesian3D";u.seriesIndex=l.seriesIndex;var e=-1;u.off("mousemove"),u.off("mouseout"),u.on("mousemove",function(t){var i=u.geometry.getDataIndexOfVertex(t.triangle[0]);i!==e&&(this._downplay(e),this._highlight(i),this._labelsBuilder.updateLabels([i]),f&&o.dispatchAction({type:"grid3DShowAxisPointer",value:[s.get("x",i),s.get("y",i),s.get("z",i,!0)]})),e=i,u.dataIndex=i},this),u.on("mouseout",function(t){this._downplay(e),this._labelsBuilder.updateLabels(),e=-1,u.dataIndex=-1,f&&o.dispatchAction({type:"grid3DHideAxisPointer"})},this)},_highlight:function(l){var o=this._data;if(o){var s=this._barIndexOfData[l];if(!(s<0)){var u=o.getItemModel(l),f=u.getModel("emphasis.itemStyle"),e=f.get("color"),t=f.get("opacity");if(e==null){var i=o.getItemVisual(l,"color");e=y.a.color.lift(i,-.4)}t==null&&(t=o.getItemVisual(l,"opacity"));var c=v.a.parseColor(e);c[3]*=t,this._barMesh.geometry.setColor(s,c),this._api.getZr().refresh()}}},_downplay:function(l){var o=this._data;if(o){var s=this._barIndexOfData[l];if(!(s<0)){var u=o.getItemVisual(l,"color"),f=o.getItemVisual(l,"opacity"),e=v.a.parseColor(u);e[3]*=f,this._barMesh.geometry.setColor(s,e),this._api.getZr().refresh()}}},highlight:function(l,o,s,u){this._toggleStatus("highlight",l,o,s,u)},downplay:function(l,o,s,u){this._toggleStatus("downplay",l,o,s,u)},_toggleStatus:function(l,o,s,u,f){var e=o.getData(),t=m.a.queryDataIndex(e,f),i=this;t!=null?y.a.util.each(E.a.normalizeToArray(t),function(c){l==="highlight"?this._highlight(c):this._downplay(c)},this):e.each(function(c){l==="highlight"?i._highlight(c):i._downplay(c)})},remove:function(){this.groupGL.removeAll()},dispose:function(){this.groupGL.removeAll()}})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(33),m=g(60),E=g(13),h=g(1),a=g.n(h),d=a.a.vec3,_=a.a.mat3,r=E.a.extend(function(){return{attributes:{position:new E.a.Attribute("position","float",3,"POSITION"),normal:new E.a.Attribute("normal","float",3,"NORMAL"),color:new E.a.Attribute("color","float",4,"COLOR"),prevPosition:new E.a.Attribute("prevPosition","float",3),prevNormal:new E.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(n){var l=this.enableNormal,o=this.getBarVertexCount()*n,s=this.getBarTriangleCount()*n;this.vertexCount!==o&&(this.attributes.position.init(o),l?this.attributes.normal.init(o):this.attributes.normal.value=null,this.attributes.color.init(o)),this.triangleCount!==s&&(this.indices=o>65535?new Uint32Array(s*3):new Uint16Array(s*3),this._dataIndices=new Uint32Array(o))},getBarVertexCount:function(){var n=this.bevelSize>0?this.bevelSegments:0;return n>0?this._getBevelBarVertexCount(n):this.enableNormal?24:8},getBarTriangleCount:function(){var n=this.bevelSize>0?this.bevelSegments:0;return n>0?this._getBevelBarTriangleCount(n):12},_getBevelBarVertexCount:function(n){return(n+1)*4*(n+1)*2},_getBevelBarTriangleCount:function(n){var l=n*4+3,o=n*2+1;return(l+1)*o*2+4},setColor:function(n,l){for(var o=this.getBarVertexCount(),s=o*n,u=o*(n+1),f=s;f<u;f++)this.attributes.color.set(f,l);this.dirtyAttribute("color")},getDataIndexOfVertex:function(n){return this._dataIndices?this._dataIndices[n]:null},addBar:function(){for(var n=d.create,l=d.scaleAndAdd,o=n(),s=n(),u=n(),f=n(),e=n(),t=n(),i=n(),c=[],p=[],A=0;A<8;A++)c[A]=n();for(var x=[[0,1,5,4],[2,3,7,6],[4,5,6,7],[3,2,1,0],[0,4,7,3],[1,2,6,5]],C=[0,1,2,0,2,3],S=[],A=0;A<x.length;A++)for(var P=x[A],b=0;b<2;b++){for(var L=[],R=0;R<3;R++)L.push(P[C[b*3+R]]);S.push(L)}return function(T,N,I,F,U,K){var G=this._vertexOffset;if(this.bevelSize>0&&this.bevelSegments>0)this._addBevelBar(T,N,I,F,this.bevelSize,this.bevelSegments,U);else{d.copy(u,N),d.normalize(u,u),d.cross(f,I,u),d.normalize(f,f),d.cross(s,u,f),d.normalize(f,f),d.negate(e,s),d.negate(t,u),d.negate(i,f),l(c[0],T,s,F[0]/2),l(c[0],c[0],f,F[2]/2),l(c[1],T,s,F[0]/2),l(c[1],c[1],i,F[2]/2),l(c[2],T,e,F[0]/2),l(c[2],c[2],i,F[2]/2),l(c[3],T,e,F[0]/2),l(c[3],c[3],f,F[2]/2),l(o,T,u,F[1]),l(c[4],o,s,F[0]/2),l(c[4],c[4],f,F[2]/2),l(c[5],o,s,F[0]/2),l(c[5],c[5],i,F[2]/2),l(c[6],o,e,F[0]/2),l(c[6],c[6],i,F[2]/2),l(c[7],o,e,F[0]/2),l(c[7],c[7],f,F[2]/2);var V=this.attributes;if(this.enableNormal){p[0]=s,p[1]=e,p[2]=u,p[3]=t,p[4]=f,p[5]=i;for(var X=this._vertexOffset,ee=0;ee<x.length;ee++){for(var oe=this._triangleOffset*3,ue=0;ue<6;ue++)this.indices[oe++]=X+C[ue];X+=4,this._triangleOffset+=2}for(var ee=0;ee<x.length;ee++)for(var Ae=p[ee],ue=0;ue<4;ue++){var fe=x[ee][ue];V.position.set(this._vertexOffset,c[fe]),V.normal.set(this._vertexOffset,Ae),V.color.set(this._vertexOffset++,U)}}else{for(var ee=0;ee<S.length;ee++){for(var oe=this._triangleOffset*3,ue=0;ue<3;ue++)this.indices[oe+ue]=S[ee][ue]+this._vertexOffset;this._triangleOffset++}for(var ee=0;ee<c.length;ee++)V.position.set(this._vertexOffset,c[ee]),V.color.set(this._vertexOffset++,U)}}for(var he=this._vertexOffset,ee=G;ee<he;ee++)this._dataIndices[ee]=K}}(),_addBevelBar:function(){var n=d.create(),l=d.create(),o=d.create(),s=_.create(),u=[],f=[1,-1,-1,1],e=[1,1,-1,-1],t=[2,0];return function(i,c,p,A,x,C,S){d.copy(l,c),d.normalize(l,l),d.cross(o,p,l),d.normalize(o,o),d.cross(n,l,o),d.normalize(o,o),s[0]=n[0],s[1]=n[1],s[2]=n[2],s[3]=l[0],s[4]=l[1],s[5]=l[2],s[6]=o[0],s[7]=o[1],s[8]=o[2],x=Math.min(A[0],A[2])/2*x;for(var P=0;P<3;P++)u[P]=Math.max(A[P]-x*2,0);for(var b=(A[0]-u[0])/2,L=(A[1]-u[1])/2,R=(A[2]-u[2])/2,T=[],N=[],I=this._vertexOffset,F=[],P=0;P<2;P++){F[P]=F[P]=[];for(var U=0;U<=C;U++)for(var K=0;K<4;K++){(U===0&&P===0||P===1&&U===C)&&F[P].push(I);for(var G=0;G<=C;G++){var V=G/C*Math.PI/2+Math.PI/2*K,X=U/C*Math.PI/2+Math.PI/2*P;N[0]=b*Math.cos(V)*Math.sin(X),N[1]=L*Math.cos(X),N[2]=R*Math.sin(V)*Math.sin(X),T[0]=N[0]+f[K]*u[0]/2,T[1]=N[1]+L+t[P]*u[1]/2,T[2]=N[2]+e[K]*u[2]/2,Math.abs(b-L)<1e-6&&Math.abs(L-R)<1e-6||(N[0]/=b*b,N[1]/=L*L,N[2]/=R*R),d.normalize(N,N),d.transformMat3(T,T,s),d.transformMat3(N,N,s),d.add(T,T,i),this.attributes.position.set(I,T),this.enableNormal&&this.attributes.normal.set(I,N),this.attributes.color.set(I,S),I++}}}for(var ee=C*4+3,oe=C*2+1,ue=ee+1,K=0;K<oe;K++)for(var P=0;P<=ee;P++){var Ae=K*ue+P+this._vertexOffset,fe=K*ue+(P+1)%ue+this._vertexOffset,he=(K+1)*ue+(P+1)%ue+this._vertexOffset,ve=(K+1)*ue+P+this._vertexOffset;this.setTriangleIndices(this._triangleOffset++,[he,Ae,fe]),this.setTriangleIndices(this._triangleOffset++,[he,ve,Ae])}this.setTriangleIndices(this._triangleOffset++,[F[0][0],F[0][2],F[0][1]]),this.setTriangleIndices(this._triangleOffset++,[F[0][0],F[0][3],F[0][2]]),this.setTriangleIndices(this._triangleOffset++,[F[1][0],F[1][1],F[1][2]]),this.setTriangleIndices(this._triangleOffset++,[F[1][0],F[1][2],F[1][3]]),this._vertexOffset=I}}()});y.a.util.defaults(r.prototype,v.a),y.a.util.defaults(r.prototype,m.a),M.a=r},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(26),m=g(27),E=g(35),h=g(44),a=y.a.extendSeriesModel({type:"series.bar3D",dependencies:["globe"],visualColorAccessPath:"itemStyle.color",getInitialData:function(_,r){return Object(h.a)(this)},getFormattedLabel:function(_,r,n,l){var o=m.a.getFormattedLabel(this,_,r,n,l);return o==null&&(o=this.getData().get("z",_)),o},formatTooltip:function(_){return Object(E.a)(this,_)},defaultOption:{coordinateSystem:"cartesian3D",globeIndex:0,grid3DIndex:0,zlevel:-10,bevelSize:0,bevelSmoothness:2,onGridPlane:"xy",shading:"color",minHeight:0,itemStyle:{opacity:1},label:{show:!1,distance:2,textStyle:{fontSize:14,color:"#000",backgroundColor:"rgba(255,255,255,0.7)",padding:3,borderRadius:3}},emphasis:{label:{show:!0}},animationDurationUpdate:500}});y.a.util.merge(a.prototype,v.a);var d=a},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(210),m=g(211),E=g(45),h=g.n(E),a=g(16);y.a.registerVisual(h()("line3D","circle",null)),y.a.registerVisual(Object(a.a)("line3D")),y.a.registerLayout(function(d,_){d.eachSeriesByType("line3D",function(r){var n=r.getData(),l=r.coordinateSystem;if(l){if(l.type!=="cartesian3D"){console.error("line3D needs cartesian3D coordinateSystem");return}var o=new Float32Array(n.count()*3),s=[],u=[],f=l.dimensions,e=f.map(function(t){return r.coordDimToDataDim(t)[0]});l&&n.each(e,function(t,i,c,p){s[0]=t,s[1]=i,s[2]=c,l.dataToPoint(s,u),o[p*3]=u[0],o[p*3+1]=u[1],o[p*3+2]=u[2]}),n.setLayout("points",o)}})})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(35),m=g(44),E=y.a.extendSeriesModel({type:"series.line3D",dependencies:["grid3D"],visualColorAccessPath:"lineStyle.color",getInitialData:function(a,d){return Object(m.a)(this)},formatTooltip:function(a){return Object(v.a)(this,a)},defaultOption:{coordinateSystem:"cartesian3D",zlevel:-10,grid3DIndex:0,lineStyle:{width:2},animationDurationUpdate:500}}),h=E},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(2),m=g(3),E=g(22),h=g(9),a=g(4),d=g(212),_=g.n(d),r=g(1),n=g.n(r),l=g(40),o=n.a.vec3;v.a.Shader.import(l.a);var s=y.a.extendChartView({type:"line3D",__ecgl__:!0,init:function(u,f){this.groupGL=new v.a.Node,this._api=f},render:function(u,f,e){var t=this._prevLine3DMesh;this._prevLine3DMesh=this._line3DMesh,this._line3DMesh=t,this._line3DMesh||(this._line3DMesh=new v.a.Mesh({geometry:new E.a({useNativeLine:!1,sortTriangles:!0}),material:new v.a.Material({shader:v.a.createShader("ecgl.meshLines3D")}),renderOrder:10}),this._line3DMesh.geometry.pick=this._pick.bind(this)),this.groupGL.remove(this._prevLine3DMesh),this.groupGL.add(this._line3DMesh);var i=u.coordinateSystem;if(i&&i.viewGL){i.viewGL.add(this.groupGL);var c=i.viewGL.isLinearSpace()?"define":"undefine";this._line3DMesh.material[c]("fragment","SRGB_DECODE")}this._doRender(u,e),this._data=u.getData(),this._camera=i.viewGL.camera,this.updateCamera(),this._updateAnimation(u)},updateCamera:function(){this._updateNDCPosition()},_doRender:function(u,f){var e=u.getData(),t=this._line3DMesh;t.geometry.resetOffset();var i=e.getLayout("points"),c=[],p=new Float32Array(i.length/3*4),A=0,x=!1;e.each(function(P){var b=e.getItemVisual(P,"color"),L=e.getItemVisual(P,"opacity");L==null&&(L=1),v.a.parseColor(b,c),c[3]*=L,p[A++]=c[0],p[A++]=c[1],p[A++]=c[2],p[A++]=c[3],c[3]<.99&&(x=!0)}),t.geometry.setVertexCount(t.geometry.getPolylineVertexCount(i)),t.geometry.setTriangleCount(t.geometry.getPolylineTriangleCount(i)),t.geometry.addPolyline(i,p,m.a.firstNotNull(u.get("lineStyle.width"),1)),t.geometry.dirty(),t.geometry.updateBoundingBox();var C=t.material;C.transparent=x,C.depthMask=!x;var S=u.getModel("debug.wireframe");S.get("show")?(t.geometry.createAttribute("barycentric","float",3),t.geometry.generateBarycentric(),t.material.set("both","WIREFRAME_TRIANGLE"),t.material.set("wireframeLineColor",v.a.parseColor(S.get("lineStyle.color")||"rgba(0,0,0,0.5)")),t.material.set("wireframeLineWidth",m.a.firstNotNull(S.get("lineStyle.width"),1))):t.material.set("both","WIREFRAME_TRIANGLE"),this._points=i,this._initHandler(u,f)},_updateAnimation:function(u){v.a.updateVertexAnimation([["prevPosition","position"],["prevPositionPrev","positionPrev"],["prevPositionNext","positionNext"]],this._prevLine3DMesh,this._line3DMesh,u)},_initHandler:function(u,f){var e=u.getData(),t=u.coordinateSystem,i=this._line3DMesh,c=-1;i.seriesIndex=u.seriesIndex,i.off("mousemove"),i.off("mouseout"),i.on("mousemove",function(p){var A=t.pointToData(p.point.array),x=e.indicesOfNearest("x",A[0])[0];x!==c&&(f.dispatchAction({type:"grid3DShowAxisPointer",value:[e.get("x",x),e.get("y",x),e.get("z",x)]}),i.dataIndex=x),c=x},this),i.on("mouseout",function(p){c=-1,i.dataIndex=-1,f.dispatchAction({type:"grid3DHideAxisPointer"})},this)},_updateNDCPosition:function(){var u=new h.a,f=this._camera;h.a.multiply(u,f.projectionMatrix,f.viewMatrix);var e=this._positionNDC,t=this._points,i=t.length/3;(!e||e.length/2!==i)&&(e=this._positionNDC=new Float32Array(i*2));for(var c=[],p=0;p<i;p++){var A=p*3,x=p*2;c[0]=t[A],c[1]=t[A+1],c[2]=t[A+2],c[3]=1,o.transformMat4(c,c,u.array),e[x]=c[0]/c[3],e[x+1]=c[1]/c[3]}},_pick:function(u,f,e,t,i,c){var p=this._positionNDC,A=this._data.hostModel,x=A.get("lineStyle.width"),C=-1,S=e.viewport.width,P=e.viewport.height,b=S*.5,L=P*.5;u=(u+1)*b,f=(f+1)*L;for(var R=1;R<p.length/2;R++){var T=(p[(R-1)*2]+1)*b,N=(p[(R-1)*2+1]+1)*L,I=(p[R*2]+1)*b,F=(p[R*2+1]+1)*L;if(_.a.containStroke(T,N,I,F,x,u,f)){var U=(T-u)*(T-u)+(N-f)*(N-f),K=(I-u)*(I-u)+(F-f)*(F-f);C=U<K?R-1:R}}if(C>=0){var G=C*3,V=new a.a(this._points[G],this._points[G+1],this._points[G+2]);c.push({dataIndex:C,point:V,pointWorld:V.clone(),target:this._line3DMesh,distance:this._camera.getWorldPosition().dist(V)})}},remove:function(){this.groupGL.removeAll()},dispose:function(){this.groupGL.removeAll()}})},function(H,M){function g(D,y,v,m,E,h,a){if(E===0)return!1;var d=E,_=0,r=D;if(a>y+d&&a>m+d||a<y-d&&a<m-d||h>D+d&&h>v+d||h<D-d&&h<v-d)return!1;if(D!==v)_=(y-m)/(D-v),r=(D*m-v*y)/(D-v);else return Math.abs(h-D)<=d/2;var n=_*h-a+r,l=n*n/(_*_+1);return l<=d/2*d/2}M.containStroke=g},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(214),m=g(215),E=g(45),h=g.n(E),a=g(16);y.a.registerVisual(h()("scatter3D","circle",null)),y.a.registerVisual(Object(a.a)("scatter3D")),y.a.registerLayout({seriesType:"scatter3D",reset:function(d){var _=d.coordinateSystem;if(_){var r=_.dimensions;if(r.length<3){console.error("scatter3D needs 3D coordinateSystem");return}var n=r.map(function(s){return d.coordDimToDataDim(s)[0]}),l=[],o=[];return{progress:function(s,u){for(var f=new Float32Array((s.end-s.start)*3),e=s.start;e<s.end;e++){var t=(e-s.start)*3;l[0]=u.get(n[0],e),l[1]=u.get(n[1],e),l[2]=u.get(n[2],e),_.dataToPoint(l,o),f[t]=o[0],f[t+1]=o[1],f[t+2]=o[2]}u.setLayout("points",f)}}}}})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(27),m=g(35),E=g(44);y.a.extendSeriesModel({type:"series.scatter3D",dependencies:["globe","grid3D","geo3D"],visualColorAccessPath:"itemStyle.color",getInitialData:function(h,a){return Object(E.a)(this)},getFormattedLabel:function(h,a,d,_){var r=v.a.getFormattedLabel(this,h,a,d,_);if(r==null){var n=this.getData(),l=n.dimensions[n.dimensions.length-1];r=n.get(l,h)}return r},formatTooltip:function(h){return Object(m.a)(this,h)},defaultOption:{coordinateSystem:"cartesian3D",zlevel:-10,progressive:1e5,progressiveThreshold:1e5,grid3DIndex:0,globeIndex:0,symbol:"circle",symbolSize:10,blendMode:"source-over",label:{show:!1,position:"right",distance:5,textStyle:{fontSize:14,color:"#000",backgroundColor:"rgba(255,255,255,0.7)",padding:3,borderRadius:3}},itemStyle:{opacity:.8},emphasis:{label:{show:!0}},animationDurationUpdate:500}})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(2),m=g(3),E=g(27),h=g(62);y.a.extendChartView({type:"scatter3D",__ecgl__:!0,init:function(a,d){this.groupGL=new v.a.Node,this._pointsBuilderList=[],this._currentStep=0},render:function(a,d,_){if(this.groupGL.removeAll(),!!a.getData().count()){var r=a.coordinateSystem;if(r&&r.viewGL){r.viewGL.add(this.groupGL),this._camera=r.viewGL.camera;var n=this._pointsBuilderList[0];n||(n=this._pointsBuilderList[0]=new h.a(!1,_)),this._pointsBuilderList.length=1,this.groupGL.add(n.rootNode),n.update(a,d,_),n.updateView(r.viewGL.camera)}else throw new Error("Invalid coordinate system")}},incrementalPrepareRender:function(a,d,_){var r=a.coordinateSystem;if(r&&r.viewGL)r.viewGL.add(this.groupGL),this._camera=r.viewGL.camera;else throw new Error("Invalid coordinate system");this.groupGL.removeAll(),this._currentStep=0},incrementalRender:function(a,d,_,r){if(!(a.end<=a.start)){var n=this._pointsBuilderList[this._currentStep];n||(n=new h.a(!1,r),this._pointsBuilderList[this._currentStep]=n),this.groupGL.add(n.rootNode),n.update(d,_,r,a.start,a.end),n.updateView(d.coordinateSystem.viewGL.camera),this._currentStep++}},updateCamera:function(){this._pointsBuilderList.forEach(function(a){a.updateView(this._camera)},this)},highlight:function(a,d,_,r){this._toggleStatus("highlight",a,d,_,r)},downplay:function(a,d,_,r){this._toggleStatus("downplay",a,d,_,r)},_toggleStatus:function(a,d,_,r,n){var l=d.getData(),o=m.a.queryDataIndex(l,n),s=a==="highlight";o!=null?y.a.util.each(E.a.normalizeToArray(o),function(u){for(var f=0;f<this._pointsBuilderList.length;f++){var e=this._pointsBuilderList[f];s?e.highlight(l,u):e.downplay(l,u)}},this):l.each(function(u){for(var f=0;f<this._pointsBuilderList.length;f++){var e=this._pointsBuilderList[f];s?e.highlight(l,u):e.downplay(l,u)}})},dispose:function(){this.groupGL.removeAll()},remove:function(){this.groupGL.removeAll()}})},function(H,M,g){"use strict";var D=g(0),y=g.n(D);function v(a,r,_){var r=r||document.createElement("canvas");r.width=a,r.height=a;var n=r.getContext("2d");return _&&_(n),r}function m(a,d,_,r){y.a.util.isArray(d)||(d=[d,d]);var n=h.getMarginByStyle(_,r),l=d[0]+n.left+n.right,o=d[1]+n.top+n.bottom,s=y.a.helper.createSymbol(a,0,0,d[0],d[1]),u=Math.max(l,o);s.position=[n.left,n.top],l>o?s.position[1]+=(u-o)/2:s.position[0]+=(u-l)/2;var f=s.getBoundingRect();return s.position[0]-=f.x,s.position[1]-=f.y,s.setStyle(_),s.update(),s.__size=u,s}function E(a,d,_){var r=d.width,n=d.height,l=a.canvas.width,o=a.canvas.height,s=r/l,u=n/o;function f(C){return C<128?1:-1}function e(C,S){var P=1/0;C=Math.floor(C*s),S=Math.floor(S*u);for(var b=S*r+C,L=d.data[b*4],R=f(L),T=Math.max(S-_,0);T<Math.min(S+_,n);T++)for(var N=Math.max(C-_,0);N<Math.min(C+_,r);N++){var b=T*r+N,I=d.data[b*4],F=f(I),U=N-C,K=T-S;if(R!==F){var G=U*U+K*K;G<P&&(P=G)}}return R*Math.sqrt(P)}for(var t=a.createImageData(l,o),i=0;i<o;i++)for(var c=0;c<l;c++){var p=e(c,i),A=p/_*.5+.5,x=(i*l+c)*4;t.data[x++]=(1-A)*255,t.data[x++]=(1-A)*255,t.data[x++]=(1-A)*255,t.data[x++]=255}return t}var h={getMarginByStyle:function(a){var d=a.minMargin||0,_=0;a.stroke&&a.stroke!=="none"&&(_=a.lineWidth==null?1:a.lineWidth);var r=a.shadowBlur||0,n=a.shadowOffsetX||0,l=a.shadowOffsetY||0,o={};return o.left=Math.max(_/2,-n+r,d),o.right=Math.max(_/2,n+r,d),o.top=Math.max(_/2,-l+r,d),o.bottom=Math.max(_/2,l+r,d),o},createSymbolSprite:function(a,d,_,r){var n=m(a,d,_),l=h.getMarginByStyle(_);return{image:v(n.__size,r,function(o){n.brush(o)}),margin:l}},createSDFFromCanvas:function(a,d,_,r){return v(d,r,function(n){var l=a.getContext("2d"),o=l.getImageData(0,0,a.width,a.height);n.putImageData(E(n,o,_),0,0)})},createSimpleSprite:function(a,d){return v(a,d,function(_){var r=a/2;_.beginPath(),_.arc(r,r,60,0,Math.PI*2,!1),_.closePath();var n=_.createRadialGradient(r,r,0,r,r,r);n.addColorStop(0,"rgba(255, 255, 255, 1)"),n.addColorStop(.5,"rgba(255, 255, 255, 0.5)"),n.addColorStop(1,"rgba(255, 255, 255, 0)"),_.fillStyle=n,_.fill()})}};M.a=h},function(H,M,g){"use strict";var D=g(2),y=g(218),v=g(0),m=g.n(v),E=g(1),h=g.n(E),a=g(219),d=h.a.vec4;D.a.Shader.import(a.a);var _=D.a.Mesh.extend(function(){var r=new D.a.Geometry({dynamic:!0,attributes:{color:new D.a.Geometry.Attribute("color","float",4,"COLOR"),position:new D.a.Geometry.Attribute("position","float",3,"POSITION"),size:new D.a.Geometry.Attribute("size","float",1),prevPosition:new D.a.Geometry.Attribute("prevPosition","float",3),prevSize:new D.a.Geometry.Attribute("prevSize","float",1)}});m.a.util.extend(r,y.a);var n=new D.a.Material({shader:D.a.createShader("ecgl.sdfSprite"),transparent:!0,depthMask:!1});n.enableTexture("sprite"),n.define("both","VERTEX_COLOR"),n.define("both","VERTEX_SIZE");var l=new D.a.Texture2D({image:document.createElement("canvas"),flipY:!1});return n.set("sprite",l),r.pick=this._pick.bind(this),{geometry:r,material:n,mode:D.a.Mesh.POINTS,sizeScale:1}},{_pick:function(r,n,l,o,s,u){var f=this._positionNDC;if(f)for(var e=l.viewport,t=2/e.width,i=2/e.height,c=this.geometry.vertexCount-1;c>=0;c--){var p;this.geometry.indices?p=this.geometry.indices[c]:p=c;var A=f[p*2],x=f[p*2+1],C=this.geometry.attributes.size.get(p)/this.sizeScale,S=C/2;if(r>A-S*t&&r<A+S*t&&n>x-S*i&&n<x+S*i){var P=new D.a.Vector3,b=new D.a.Vector3;this.geometry.attributes.position.get(p,P.array),D.a.Vector3.transformMat4(b,P,this.worldTransform),u.push({vertexIndex:p,point:P,pointWorld:b,target:this,distance:b.distance(o.getWorldPosition())})}}},updateNDCPosition:function(r,n,l){var o=this._positionNDC,s=this.geometry;(!o||o.length/2!==s.vertexCount)&&(o=this._positionNDC=new Float32Array(s.vertexCount*2));for(var u=d.create(),f=0;f<s.vertexCount;f++)s.attributes.position.get(f,u),u[3]=1,d.transformMat4(u,u,r.array),d.scale(u,u,1/u[3]),o[f*2]=u[0],o[f*2+1]=u[1]}});M.a=_},function(H,M,g){"use strict";var D=g(81),y=g(1),v=g.n(y),m=v.a.vec3;M.a={needsSortVertices:function(){return this.sortVertices},needsSortVerticesProgressively:function(){return this.needsSortVertices()&&this.vertexCount>=2e4},doSortVertices:function(E,h){var a=this.indices,d=m.create();if(!a){a=this.indices=this.vertexCount>65535?new Uint32Array(this.vertexCount):new Uint16Array(this.vertexCount);for(var _=0;_<a.length;_++)a[_]=_}if(h===0){var r=this.attributes.position,E=E.array,n=0;(!this._zList||this._zList.length!==this.vertexCount)&&(this._zList=new Float32Array(this.vertexCount));for(var l,_=0;_<this.vertexCount;_++){r.get(_,d);var o=m.sqrDist(d,E);isNaN(o)&&(o=1e7,n++),_===0?(l=o,o=0):o=o-l,this._zList[_]=o}this._noneCount=n}if(this.vertexCount<2e4)h===0&&this._simpleSort(this._noneCount/this.vertexCount>.05);else for(var _=0;_<3;_++)this._progressiveQuickSort(h*3+_);this.dirtyIndices()},_simpleSort:function(E){var h=this._zList,a=this.indices;function d(_,r){return h[r]-h[_]}E?Array.prototype.sort.call(a,d):D.a.sort(a,d,0,a.length-1)},_progressiveQuickSort:function(E){var h=this._zList,a=this.indices;this._quickSort=this._quickSort||new D.a,this._quickSort.step(a,function(d,_){return h[_]-h[d]},E)}}},function(H,M,g){"use strict";M.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(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(221),m=g(222),E=g(225),h=g(16);y.a.registerVisual(Object(h.a)("lines3D")),y.a.registerAction({type:"lines3DPauseEffect",event:"lines3deffectpaused",update:"series.lines3D:pauseEffect"},function(){}),y.a.registerAction({type:"lines3DResumeEffect",event:"lines3deffectresumed",update:"series.lines3D:resumeEffect"},function(){}),y.a.registerAction({type:"lines3DToggleEffect",event:"lines3deffectchanged",update:"series.lines3D:toggleEffect"},function(){})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(1),m=g.n(v),E=m.a.vec3,h=m.a.vec2,a=E.normalize,d=E.cross,_=E.sub,r=E.add,n=E.create,l=n(),o=n(),s=n(),u=n(),f=[],e=[];function t(C,S){h.copy(f,C[0]),h.copy(e,C[1]);var P=[],b=P[0]=n(),L=P[1]=n(),R=P[2]=n(),T=P[3]=n();S.dataToPoint(f,b),S.dataToPoint(e,T),a(l,b),_(o,T,b),a(o,o),d(s,o,l),a(s,s),d(o,l,s),r(L,l,o),a(L,L),a(l,T),_(o,b,T),a(o,o),d(s,o,l),a(s,s),d(o,l,s),r(R,l,o),a(R,R),r(u,b,T),a(u,u);var N=E.dot(b,u),I=E.dot(u,L),F=(Math.max(E.len(b),E.len(T))-N)/I*2;return E.scaleAndAdd(L,b,L,F),E.scaleAndAdd(R,T,R,F),P}function i(C,S,P){var b=[],L=b[0]=E.create(),R=b[1]=E.create(),T=b[2]=E.create(),N=b[3]=E.create();S.dataToPoint(C[0],L),S.dataToPoint(C[1],N);var I=E.dist(L,N);return E.lerp(R,L,N,.3),E.lerp(T,L,N,.3),E.scaleAndAdd(R,R,P,Math.min(I*.1,10)),E.scaleAndAdd(T,T,P,Math.min(I*.1,10)),b}function c(C,S){for(var P=new Float32Array(C.length*3),b=0,L=[],R=0;R<C.length;R++)S.dataToPoint(C[R],L),P[b++]=L[0],P[b++]=L[1],P[b++]=L[2];return P}function p(C){var S=[];return C.each(function(P){var b=C.getItemModel(P),L=b.option instanceof Array?b.option:b.getShallow("coords",!0);if(!(L instanceof Array&&L.length>0&&L[0]instanceof Array))throw new Error("Invalid coords "+JSON.stringify(L)+". Lines must have 2d coords array in data item.");S.push(L)}),{coordsList:S}}function A(C,S){var P=C.getData(),b=C.get("polyline");P.setLayout("lineType",b?"polyline":"cubicBezier");var L=p(P);P.each(function(R){var T=L.coordsList[R],N=b?c:t;P.setItemLayout(R,N(T,S))})}function x(C,S,P){var b=C.getData(),L=C.get("polyline"),R=p(b);b.setLayout("lineType",L?"polyline":"cubicBezier"),b.each(function(T){var N=R.coordsList[T],I=L?c(N,S):i(N,S,P);b.setItemLayout(T,I)})}y.a.registerLayout(function(C,S){C.eachSeriesByType("lines3D",function(P){var b=P.coordinateSystem;b.type==="globe"?A(P,b):b.type==="geo3D"?x(P,b,[0,1,0]):b.type==="mapbox3D"&&x(P,b,[0,0,1])})})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(2),m=g(22),E=g(223),h=g(40);v.a.Shader.import(h.a);function a(_){return _.radius!=null?_.radius:_.size!=null?Math.max(_.size[0],_.size[1],_.size[2]):100}var d=y.a.extendChartView({type:"lines3D",__ecgl__:!0,init:function(_,r){this.groupGL=new v.a.Node,this._meshLinesMaterial=new v.a.Material({shader:v.a.createShader("ecgl.meshLines3D"),transparent:!0,depthMask:!1}),this._linesMesh=new v.a.Mesh({geometry:new m.a,material:this._meshLinesMaterial,$ignorePicking:!0}),this._trailMesh=new E.a},render:function(_,r,n){this.groupGL.add(this._linesMesh);var l=_.coordinateSystem,o=_.getData();if(l&&l.viewGL){var s=l.viewGL;s.add(this.groupGL),this._updateLines(_,r,n);var u=l.viewGL.isLinearSpace()?"define":"undefine";this._linesMesh.material[u]("fragment","SRGB_DECODE"),this._trailMesh.material[u]("fragment","SRGB_DECODE")}var f=this._trailMesh;if(f.stopAnimation(),_.get("effect.show")){this.groupGL.add(f),f.updateData(o,n,this._linesMesh.geometry),f.__time=f.__time||0;var e=3600*1e3;this._curveEffectsAnimator=f.animate("",{loop:!0}).when(e,{__time:e}).during(function(){f.setAnimationTime(f.__time)}).start()}else this.groupGL.remove(f),this._curveEffectsAnimator=null;this._linesMesh.material.blend=this._trailMesh.material.blend=_.get("blendMode")==="lighter"?v.a.additiveBlend:null},pauseEffect:function(){this._curveEffectsAnimator&&this._curveEffectsAnimator.pause()},resumeEffect:function(){this._curveEffectsAnimator&&this._curveEffectsAnimator.resume()},toggleEffect:function(){var _=this._curveEffectsAnimator;_&&(_.isPaused()?_.resume():_.pause())},_updateLines:function(_,r,n){var l=_.getData(),o=_.coordinateSystem,s=this._linesMesh.geometry,u=_.get("polyline");s.expandLine=!0;var f=a(o);s.segmentScale=f/20;var e="lineStyle.width".split("."),t=n.getDevicePixelRatio(),i=0;l.each(function(x){var C=l.getItemModel(x),S=C.get(e);S==null&&(S=1),l.setItemVisual(x,"lineWidth",S),i=Math.max(S,i)}),s.useNativeLine=!1;var c=0,p=0;l.each(function(x){var C=l.getItemLayout(x);u?(c+=s.getPolylineVertexCount(C),p+=s.getPolylineTriangleCount(C)):(c+=s.getCubicCurveVertexCount(C[0],C[1],C[2],C[3]),p+=s.getCubicCurveTriangleCount(C[0],C[1],C[2],C[3]))}),s.setVertexCount(c),s.setTriangleCount(p),s.resetOffset();var A=[];l.each(function(x){var C=l.getItemLayout(x),S=l.getItemVisual(x,"color"),P=l.getItemVisual(x,"opacity"),b=l.getItemVisual(x,"lineWidth")*t;P==null&&(P=1),A=v.a.parseColor(S,A),A[3]*=P,u?s.addPolyline(C,A,b):s.addCubicCurve(C[0],C[1],C[2],C[3],A,b)}),s.dirty()},remove:function(){this.groupGL.removeAll()},dispose:function(){this.groupGL.removeAll()}})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(2),m=g(1),E=g.n(m),h=g(22),a=g(224),d=E.a.vec3;function _(r){return r>0?1:-1}v.a.Shader.import(a.a),M.a=v.a.Mesh.extend(function(){var r=new v.a.Material({shader:new v.a.Shader(v.a.Shader.source("ecgl.trail2.vertex"),v.a.Shader.source("ecgl.trail2.fragment")),transparent:!0,depthMask:!1}),n=new h.a({dynamic:!0});return n.createAttribute("dist","float",1),n.createAttribute("distAll","float",1),n.createAttribute("start","float",1),{geometry:n,material:r,culling:!1,$ignorePicking:!0}},{updateData:function(r,n,l){var o=r.hostModel,s=this.geometry,u=o.getModel("effect"),f=u.get("trailWidth")*n.getDevicePixelRatio(),e=u.get("trailLength"),t=o.get("effect.constantSpeed"),i=o.get("effect.period")*1e3,c=t!=null;this.getScene()||console.error("TrailMesh must been add to scene before updateData"),c?this.material.set("speed",t/1e3):this.material.set("period",i),this.material[c?"define":"undefine"]("vertex","CONSTANT_SPEED");var p=o.get("polyline");s.trailLength=e,this.material.set("trailLength",e),s.resetOffset(),["position","positionPrev","positionNext"].forEach(function(F){s.attributes[F].value=l.attributes[F].value});var A=["dist","distAll","start","offset","color"];A.forEach(function(F){s.attributes[F].init(s.vertexCount)}),s.indices=l.indices;var x=[],C=u.get("trailColor"),S=u.get("trailOpacity"),P=C!=null,b=S!=null;this.updateWorldTransform();var L=this.worldTransform.x.len(),R=this.worldTransform.y.len(),T=this.worldTransform.z.len(),N=0,I=0;r.each(function(F){var U=r.getItemLayout(F),K=b?S:r.getItemVisual(F,"opacity"),G=r.getItemVisual(F,"color");K==null&&(K=1),x=v.a.parseColor(P?C:G,x),x[3]*=K;for(var V=p?l.getPolylineVertexCount(U):l.getCubicCurveVertexCount(U[0],U[1],U[2],U[3]),X=0,ee=[],oe=[],ue=N;ue<N+V;ue++)s.attributes.position.get(ue,ee),ee[0]*=L,ee[1]*=R,ee[2]*=T,ue>N&&(X+=d.dist(ee,oe)),s.attributes.dist.set(ue,X),d.copy(oe,ee);I=Math.max(I,X);for(var Ae=Math.random()*(c?X:i),ue=N;ue<N+V;ue++)s.attributes.distAll.set(ue,X),s.attributes.start.set(ue,Ae),s.attributes.offset.set(ue,_(l.attributes.offset.get(ue))*f/2),s.attributes.color.set(ue,x);N+=V}),this.material.set("spotSize",I*.1*e),this.material.set("spotIntensity",u.get("spotIntensity")),s.dirty()},setAnimationTime:function(r){this.material.set("time",r)}})},function(H,M,g){"use strict";M.a=`@export ecgl.trail2.vertex
|
|
attribute vec3 position: POSITION;
|
|
attribute vec3 positionPrev;
|
|
attribute vec3 positionNext;
|
|
attribute float offset;
|
|
attribute float dist;
|
|
attribute float distAll;
|
|
attribute float start;
|
|
|
|
attribute vec4 a_Color : COLOR;
|
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
uniform vec4 viewport : VIEWPORT;
|
|
uniform float near : NEAR;
|
|
|
|
uniform float speed : 0;
|
|
uniform float trailLength: 0.3;
|
|
uniform float time;
|
|
uniform float period: 1000;
|
|
|
|
uniform float spotSize: 1;
|
|
|
|
varying vec4 v_Color;
|
|
varying float v_Percent;
|
|
varying float v_SpotPercent;
|
|
|
|
@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
|
|
|
|
#ifdef CONSTANT_SPEED
|
|
float t = mod((speed * time + start) / distAll, 1. + trailLength) - trailLength;
|
|
#else
|
|
float t = mod((time + start) / period, 1. + trailLength) - trailLength;
|
|
#endif
|
|
|
|
float trailLen = distAll * trailLength;
|
|
|
|
v_Percent = (dist - t * distAll) / trailLen;
|
|
|
|
v_SpotPercent = spotSize / distAll;
|
|
|
|
}
|
|
@end
|
|
|
|
|
|
@export ecgl.trail2.fragment
|
|
|
|
uniform vec4 color : [1.0, 1.0, 1.0, 1.0];
|
|
uniform float spotIntensity: 5;
|
|
|
|
varying vec4 v_Color;
|
|
varying float v_Percent;
|
|
varying float v_SpotPercent;
|
|
|
|
@import ecgl.common.wireframe.fragmentHeader
|
|
|
|
@import clay.util.srgb
|
|
|
|
void main()
|
|
{
|
|
if (v_Percent > 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(H,M,g){"use strict";var D=g(0),y=g.n(D);y.a.extendSeriesModel({type:"series.lines3D",dependencies:["globe"],visualColorAccessPath:"lineStyle.color",getInitialData:function(v,m){var E=new y.a.List(["value"],this);return E.hasItemOption=!1,E.initData(v.data,[],function(h,a,d,_){if(h instanceof Array)return NaN;E.hasItemOption=!0;var r=h.value;if(r!=null)return r instanceof Array?r[_]:r}),E},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(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(227),m=g(228),E=g(16);y.a.registerVisual(Object(E.a)("polygons3D"))},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(26);function m(a,d){for(var _=[],r=0;r<d.length;r++)_.push(a.dataToPoint(d[r]));return _}var E=y.a.extendSeriesModel({type:"series.polygons3D",getRegionModel:function(a){return this.getData().getItemModel(a)},getRegionPolygonCoords:function(a){var d=this.coordinateSystem,_=this.getData().getItemModel(a),r=_.option instanceof Array?_.option:_.getShallow("coords");_.get("multiPolygon")||(r=[r]);for(var n=[],l=0;l<r.length;l++){for(var o=[],s=1;s<r[l].length;s++)o.push(m(d,r[l][s]));n.push({exterior:m(d,r[l][0]),interiors:o})}return n},getInitialData:function(a){var d=new y.a.List(["value"],this);return d.hasItemOption=!1,d.initData(a.data,[],function(_,r,n,l){if(_ instanceof Array)return NaN;d.hasItemOption=!0;var o=_.value;if(o!=null)return o instanceof Array?o[l]:o}),d},defaultOption:{show:!0,data:null,multiPolygon:!1,progressiveThreshold:1e3,progressive:1e3,zlevel:-10,label:{show:!1,distance:2,textStyle:{fontSize:20,color:"#000",backgroundColor:"rgba(255,255,255,0.7)",padding:3,borderRadius:4}},itemStyle:{color:"#fff",borderWidth:0,borderColor:"#333"},emphasis:{itemStyle:{color:"#639fc0"},label:{show:!0}}}});y.a.util.merge(E.prototype,v.a);var h=E},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(59),m=g(2);y.a.extendChartView({type:"polygons3D",__ecgl__:!0,init:function(E,h){this.groupGL=new m.a.Node,this._geo3DBuilderList=[],this._currentStep=0},render:function(E,h,a){this.groupGL.removeAll();var d=E.coordinateSystem;d&&d.viewGL&&d.viewGL.add(this.groupGL);var _=this._geo3DBuilderList[0];_||(_=new v.a(a),_.extrudeY=d.type!=="mapbox3D",this._geo3DBuilderList[0]=_),this._updateShaderDefines(d,_),_.update(E,h,a),this._geo3DBuilderList.length=1,this.groupGL.add(_.rootNode)},incrementalPrepareRender:function(E,h,a){this.groupGL.removeAll();var d=E.coordinateSystem;d&&d.viewGL&&d.viewGL.add(this.groupGL),this._currentStep=0},incrementalRender:function(E,h,a,d){var _=this._geo3DBuilderList[this._currentStep],r=h.coordinateSystem;_||(_=new v.a(d),_.extrudeY=r.type!=="mapbox3D",this._geo3DBuilderList[this._currentStep]=_),_.update(h,a,d,E.start,E.end),this.groupGL.add(_.rootNode),this._updateShaderDefines(r,_),this._currentStep++},_updateShaderDefines:function(E,h){var a=E.viewGL.isLinearSpace()?"define":"undefine";h.rootNode.traverse(function(d){d.material&&(d.material[a]("fragment","SRGB_DECODE"),E.type==="mapbox3D"&&(d.material.define("fragment","NORMAL_UP_AXIS",2),d.material.define("fragment","NORMAL_FRONT_AXIS",1)))})},remove:function(){this.groupGL.removeAll()},dispose:function(){this.groupGL.removeAll()}})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(230),m=g(231),E=g(232),h=g(16);y.a.registerVisual(Object(h.a)("surface"))},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(26),m=g(35),E=g(44),h=y.a.extendSeriesModel({type:"series.surface",dependencies:["globe","grid3D","geo3D"],visualColorAccessPath:"itemStyle.color",formatTooltip:function(d){return Object(m.a)(this,d)},getInitialData:function(d,_){var r=d.data;function n(U){return!(isNaN(U.min)||isNaN(U.max)||isNaN(U.step))}function l(U){var K=y.a.number.getPrecisionSafe;return Math.max(K(U.min),K(U.max),K(U.step))+1}if(!r)if(r=[],d.parametric){var x=d.parametricEquation||{},C=x.u||{},S=x.v||{};["u","v"].forEach(function(U){if(!n(x[U])){console.error("Invalid parametricEquation.%s",U);return}}),["x","y","z"].forEach(function(U){if(typeof x[U]!="function"){console.error("parametricEquation.%s needs to be function",U);return}});for(var P=l(C),b=l(S),L=S.min;L<S.max+S.step*.999;L+=S.step)for(var R=C.min;R<C.max+C.step*.999;R+=C.step){var T=y.a.number.round(Math.min(R,C.max),P),N=y.a.number.round(Math.min(L,S.max),b),i=x.x(T,N),t=x.y(T,N),A=x.z(T,N);r.push([i,t,A,T,N])}}else{var o=d.equation||{},s=o.x||{},u=o.y||{};if(["x","y"].forEach(function(U){if(!n(o[U])){console.error("Invalid equation.%s",U);return}}),typeof o.z!="function"){console.error("equation.z needs to be function");return}for(var f=l(s),e=l(u),t=u.min;t<u.max+u.step*.999;t+=u.step)for(var i=s.min;i<s.max+s.step*.999;i+=s.step){var c=y.a.number.round(Math.min(i,s.max),f),p=y.a.number.round(Math.min(t,u.max),e),A=o.z(c,p);r.push([c,p,A])}}var I=["x","y","z"];d.parametric&&I.push("u","v");var F=Object(E.a)(this,I,d.data||r);return F},defaultOption:{coordinateSystem:"cartesian3D",zlevel:-10,grid3DIndex:0,shading:"lambert",parametric:!1,wireframe:{show:!0,lineStyle:{color:"rgba(0,0,0,0.5)",width:1}},equation:{x:{min:-1,max:1,step:.1},y:{min:-1,max:1,step:.1},z:null},parametricEquation:{u:{min:-1,max:1,step:.1},v:{min:-1,max:1,step:.1},x:null,y:null,z:null},itemStyle:{},animationDurationUpdate:500}});y.a.util.merge(h.prototype,v.a);var a=h},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(2),m=g(3),E=g(1),h=g.n(E),a=g(60),d=h.a.vec3;function _(r){return isNaN(r[0])||isNaN(r[1])||isNaN(r[2])}y.a.extendChartView({type:"surface",__ecgl__:!0,init:function(r,n){this.groupGL=new v.a.Node},render:function(r,n,l){var o=this._prevSurfaceMesh;this._prevSurfaceMesh=this._surfaceMesh,this._surfaceMesh=o,this._surfaceMesh||(this._surfaceMesh=this._createSurfaceMesh()),this.groupGL.remove(this._prevSurfaceMesh),this.groupGL.add(this._surfaceMesh);var s=r.coordinateSystem,u=r.get("shading"),f=r.getData(),e="ecgl."+u;if((!this._surfaceMesh.material||this._surfaceMesh.material.shader.name!==e)&&(this._surfaceMesh.material=v.a.createMaterial(e,["VERTEX_COLOR","DOUBLE_SIDED"])),v.a.setMaterialFromModel(u,this._surfaceMesh.material,r,l),s&&s.viewGL){s.viewGL.add(this.groupGL);var t=s.viewGL.isLinearSpace()?"define":"undefine";this._surfaceMesh.material[t]("fragment","SRGB_DECODE")}var i=r.get("parametric"),c=this._getDataShape(f,i),p=r.getModel("wireframe"),A=p.get("lineStyle.width"),x=p.get("show")&&A>0;this._updateSurfaceMesh(this._surfaceMesh,r,c,x);var C=this._surfaceMesh.material;x?(C.define("WIREFRAME_QUAD"),C.set("wireframeLineWidth",A),C.set("wireframeLineColor",v.a.parseColor(p.get("lineStyle.color")))):C.undefine("WIREFRAME_QUAD"),this._initHandler(r,l),this._updateAnimation(r)},_updateAnimation:function(r){v.a.updateVertexAnimation([["prevPosition","position"],["prevNormal","normal"]],this._prevSurfaceMesh,this._surfaceMesh,r)},_createSurfaceMesh:function(){var r=new v.a.Mesh({geometry:new v.a.Geometry({dynamic:!0,sortTriangles:!0}),shadowDepthMaterial:new v.a.Material({shader:new v.a.Shader(v.a.Shader.source("ecgl.sm.depth.vertex"),v.a.Shader.source("ecgl.sm.depth.fragment"))}),culling:!1,renderOrder:10,renderNormal:!0});return r.geometry.createAttribute("barycentric","float",4),r.geometry.createAttribute("prevPosition","float",3),r.geometry.createAttribute("prevNormal","float",3),y.a.util.extend(r.geometry,a.a),r},_initHandler:function(r,n){var l=r.getData(),o=this._surfaceMesh,s=r.coordinateSystem;function u(e,t){for(var i=1/0,c=-1,p=[],A=0;A<e.length;A++){o.geometry.attributes.position.get(e[A],p);var x=d.dist(t.array,p);x<i&&(i=x,c=e[A])}return c}o.seriesIndex=r.seriesIndex;var f=-1;o.off("mousemove"),o.off("mouseout"),o.on("mousemove",function(e){var t=u(e.triangle,e.point);if(t>=0){var i=[];o.geometry.attributes.position.get(t,i);for(var c=s.pointToData(i),p=1/0,A=-1,x=[],C=0;C<l.count();C++){x[0]=l.get("x",C),x[1]=l.get("y",C),x[2]=l.get("z",C);var S=d.squaredDistance(x,c);S<p&&(A=C,p=S)}A!==f&&n.dispatchAction({type:"grid3DShowAxisPointer",value:c}),f=A,o.dataIndex=A}else o.dataIndex=-1},this),o.on("mouseout",function(e){f=-1,o.dataIndex=-1,n.dispatchAction({type:"grid3DHideAxisPointer"})},this)},_updateSurfaceMesh:function(r,n,l,o){var s=r.geometry,u=n.getData(),f=u.getLayout("points"),e=0;u.each(function(ce){u.hasValue(ce)||e++});var t=e||o,i=s.attributes.position,c=s.attributes.normal,p=s.attributes.texcoord0,A=s.attributes.barycentric,x=s.attributes.color,C=l.row,S=l.column,P=n.get("shading"),b=P!=="color";if(t){var L=(C-1)*(S-1)*4;i.init(L),o&&A.init(L)}else i.value=new Float32Array(f);x.init(s.vertexCount),p.init(s.vertexCount);var R=[0,3,1,1,3,2],T=[[1,1,0,0],[0,1,0,1],[1,0,0,1],[1,0,1,0]],N=s.indices=new(s.vertexCount>65535?Uint32Array:Uint16Array)((C-1)*(S-1)*6),I=function(ce,Se,Le){Le[1]=ce*S+Se,Le[0]=ce*S+Se+1,Le[3]=(ce+1)*S+Se+1,Le[2]=(ce+1)*S+Se},F=!1;if(t){var U=[],K=[],G=0;b?c.init(s.vertexCount):c.value=null;for(var V=[[],[],[]],X=[],ee=[],oe=d.create(),ue=function(ce,Se,Le){var ze=Se*3;return Le[0]=ce[ze],Le[1]=ce[ze+1],Le[2]=ce[ze+2],Le},Ae=new Float32Array(f.length),fe=new Float32Array(f.length/3*4),he=0;he<u.count();he++)if(u.hasValue(he)){var te=v.a.parseColor(u.getItemVisual(he,"color")),ve=u.getItemVisual(he,"opacity");te[3]*=ve,te[3]<.99&&(F=!0);for(var me=0;me<4;me++)fe[he*4+me]=te[me]}for(var Te=[1e7,1e7,1e7],he=0;he<C-1;he++)for(var Ce=0;Ce<S-1;Ce++){var ye=he*(S-1)+Ce,q=ye*4;I(he,Ce,U);for(var Q=!1,me=0;me<4;me++)ue(f,U[me],K),_(K)&&(Q=!0);for(var me=0;me<4;me++)Q?i.set(q+me,Te):(ue(f,U[me],K),i.set(q+me,K)),o&&A.set(q+me,T[me]);for(var me=0;me<6;me++)N[G++]=R[me]+q;if(b&&!Q)for(var me=0;me<2;me++){for(var $=me*3,j=0;j<3;j++){var re=U[R[$]+j];ue(f,re,V[j])}d.sub(X,V[0],V[1]),d.sub(ee,V[1],V[2]),d.cross(oe,X,ee);for(var j=0;j<3;j++){var k=U[R[$]+j]*3;Ae[k]=Ae[k]+oe[0],Ae[k+1]=Ae[k+1]+oe[1],Ae[k+2]=Ae[k+2]+oe[2]}}}if(b)for(var he=0;he<Ae.length/3;he++)ue(Ae,he,oe),d.normalize(oe,oe),Ae[he*3]=oe[0],Ae[he*3+1]=oe[1],Ae[he*3+2]=oe[2];for(var te=[],ie=[],he=0;he<C-1;he++)for(var Ce=0;Ce<S-1;Ce++){var ye=he*(S-1)+Ce,q=ye*4;I(he,Ce,U);for(var me=0;me<4;me++){for(var j=0;j<4;j++)te[j]=fe[U[me]*4+j];x.set(q+me,te),b&&(ue(Ae,U[me],oe),c.set(q+me,oe));var re=U[me];ie[0]=re%S/(S-1),ie[1]=Math.floor(re/S)/(C-1),p.set(q+me,ie)}ye++}}else{for(var ie=[],he=0;he<u.count();he++){ie[0]=he%S/(S-1),ie[1]=Math.floor(he/S)/(C-1);var te=v.a.parseColor(u.getItemVisual(he,"color")),ve=u.getItemVisual(he,"opacity");te[3]*=ve,te[3]<.99&&(F=!0),x.set(he,te),p.set(he,ie)}for(var U=[],J=0,he=0;he<C-1;he++)for(var Ce=0;Ce<S-1;Ce++){I(he,Ce,U);for(var me=0;me<6;me++)N[J++]=U[R[me]]}b?s.generateVertexNormals():c.value=null}r.material.get("normalMap")&&s.generateTangents(),s.updateBoundingBox(),s.dirty(),r.material.transparent=F,r.material.depthMask=!F},_getDataShape:function(r,n){for(var l=-1/0,o=0,s=0,u=0,f=n?"u":"x",e=0;e<r.count();e++){var t=r.get(f,e);if(t<l){if(u&&u!==s)throw new Error("Invalid data. data should be a row major 2d array.");u=s,s=0,o++}l=t,s++}return{row:o+1,column:s}},dispose:function(){this.groupGL.removeAll()},remove:function(){this.groupGL.removeAll()}})},function(H,M,g){"use strict";var D=g(0),y=g.n(D);y.a.registerLayout(function(v,m){v.eachSeriesByType("surface",function(E){var h=E.coordinateSystem;(!h||h.type!=="cartesian3D")&&console.error("Surface chart only support cartesian3D coordinateSystem");var a=E.getData(),d=new Float32Array(3*a.count()),_=[NaN,NaN,NaN];if(h&&h.type==="cartesian3D"){var r=h.dimensions,n=r.map(function(l){return E.coordDimToDataDim(l)[0]});a.each(n,function(l,o,s,u){var f;a.hasValue(u)?f=h.dataToPoint([l,o,s]):f=_,d[u*3]=f[0],d[u*3+1]=f[1],d[u*3+2]=f[2]})}a.setLayout("points",d)})})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(83),m=g(234),E=g(235),h=g(16);y.a.registerVisual(Object(h.a)("map3D")),y.a.registerAction({type:"map3DChangeCamera",event:"map3dcamerachanged",update:"series:updateCamera"},function(a,d){d.eachComponent({mainType:"series",subType:"map3D",query:a},function(_){_.setView(a)})})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(38),m=g(31),E=g(32),h=g(26),a=g(80),d=g(27),_=g(35),r=g(82);function n(s,u){for(var f=[],e=0;e<u.length;e++)f.push(s.dataToPoint(u[e]));return f}var l=y.a.extendSeriesModel({type:"series.map3D",layoutMode:"box",coordinateSystem:null,visualColorAccessPath:"itemStyle.color",optionUpdated:function(s){s=s||{};var u=this.get("coordinateSystem");if(!(u==null||u==="geo3D")){var f=["left","top","width","height","boxWidth","boxDepth","boxHeight","light","viewControl","postEffect","temporalSuperSampling","environment","groundPlane"],e=[];f.forEach(function(t){s[t]!=null&&e.push(t)}),e.length&&console.warn("Property %s in map3D series will be ignored if coordinate system is %s",e.join(", "),u),this.get("groundPlane.show")&&(this.option.groundPlane.show=!1),this._geo=null}},getInitialData:function(s){s.data=this.getFilledRegions(s.data,s.map);var u=y.a.helper.completeDimensions(["value"],s.data),f=new y.a.List(u,this);f.initData(s.data);var e={};return f.each(function(t){var i=f.getName(t),c=f.getItemModel(t);e[i]=c}),this._regionModelMap=e,f},formatTooltip:function(s){return Object(_.a)(this,s)},getRegionModel:function(s){var u=this.getData().getName(s);return this._regionModelMap[u]||new y.a.Model(null,this)},getRegionPolygonCoords:function(s){var u=this.coordinateSystem,f=this.getData().getName(s);if(u.transform){var e=u.getRegion(f);return e?e.geometries:[]}else{this._geo||(this._geo=r.a.createGeo3D(this));for(var e=this._geo.getRegion(f),t=[],i=0;i<e.geometries.length;i++){var c=e.geometries[i],p=[],A=n(u,c.exterior);if(p&&p.length)for(var x=0;x<c.interiors.length;x++)p.push(n(u,p[x]));t.push({interiors:p,exterior:A})}return t}},getFormattedLabel:function(s,u){var f=d.a.getFormattedLabel(this,s,u);return f==null&&(f=this.getData().getName(s)),f},defaultOption:{coordinateSystem:"geo3D",data:null}});y.a.util.merge(l.prototype,a.a),y.a.util.merge(l.prototype,v.a),y.a.util.merge(l.prototype,m.a),y.a.util.merge(l.prototype,E.a),y.a.util.merge(l.prototype,h.a);var o=l},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(2),m=g(39),E=g(34),h=g(59),a=y.a.extendChartView({type:"map3D",__ecgl__:!0,init:function(d,_){this._geo3DBuilder=new h.a(_),this.groupGL=new v.a.Node},render:function(d,_,r){var n=d.coordinateSystem;if(!(!n||!n.viewGL)){this.groupGL.add(this._geo3DBuilder.rootNode),n.viewGL.add(this.groupGL);var l;if(n.type==="geo3D"){l=n,this._sceneHelper||(this._sceneHelper=new E.a,this._sceneHelper.initLight(this.groupGL)),this._sceneHelper.setScene(n.viewGL.scene),this._sceneHelper.updateLight(d),n.viewGL.setPostEffect(d.getModel("postEffect"),r),n.viewGL.setTemporalSuperSampling(d.getModel("temporalSuperSampling"));var o=this._control;o||(o=this._control=new m.a({zr:r.getZr()}),this._control.init());var s=d.getModel("viewControl");o.setViewGL(n.viewGL),o.setFromViewControlModel(s,0),o.off("update"),o.on("update",function(){r.dispatchAction({type:"map3DChangeCamera",alpha:o.getAlpha(),beta:o.getBeta(),distance:o.getDistance(),from:this.uid,map3DId:d.id})}),this._geo3DBuilder.extrudeY=!0}else this._control&&(this._control.dispose(),this._control=null),this._sceneHelper&&(this._sceneHelper.dispose(),this._sceneHelper=null),l=d.getData().getLayout("geo3D"),this._geo3DBuilder.extrudeY=!1;this._geo3DBuilder.update(d,_,r,0,d.getData().count());var u=n.viewGL.isLinearSpace()?"define":"undefine";this._geo3DBuilder.rootNode.traverse(function(f){f.material&&f.material[u]("fragment","SRGB_DECODE")})}},afterRender:function(d,_,r,n){var l=n.renderer,o=d.coordinateSystem;o&&o.type==="geo3D"&&(this._sceneHelper.updateAmbientCubemap(l,d,r),this._sceneHelper.updateSkybox(l,d,r))},dispose:function(){this.groupGL.removeAll(),this._control.dispose()}})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(237),m=g(238),E=g(45),h=g.n(E),a=g(16);y.a.registerVisual(h()("scatterGL","circle",null)),y.a.registerVisual(Object(a.a)("scatterGL")),y.a.registerLayout({seriesType:"scatterGL",reset:function(d){var _=d.coordinateSystem,r;if(_){var n=_.dimensions,l=[];n.length===1?r=function(o,s){for(var u=new Float32Array((o.end-o.start)*2),f=o.start;f<o.end;f++){var e=(f-o.start)*2,t=s.get(n[0],f),i=_.dataToPoint(t);u[e]=i[0],u[e+1]=i[1]}s.setLayout("points",u)}:n.length===2&&(r=function(o,s){for(var u=new Float32Array((o.end-o.start)*2),f=o.start;f<o.end;f++){var e=(f-o.start)*2,t=s.get(n[0],f),i=s.get(n[1],f);l[0]=t,l[1]=i,l=_.dataToPoint(l),u[e]=l[0],u[e+1]=l[1]}s.setLayout("points",u)})}return{progress:r}}})},function(H,M,g){"use strict";var D=g(0),y=g.n(D);y.a.extendSeriesModel({type:"series.scatterGL",dependencies:["grid","polar","geo","singleAxis"],visualColorAccessPath:"itemStyle.color",getInitialData:function(){return y.a.helper.createList(this)},defaultOption:{coordinateSystem:"cartesian2d",zlevel:10,progressive:1e5,progressiveThreshold:1e5,large:!1,symbol:"circle",symbolSize:10,zoomScale:0,blendMode:"source-over",itemStyle:{opacity:.8},postEffect:{enable:!1,colorCorrection:{exposure:0,brightness:0,contrast:1,saturation:1,enable:!0}}}})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(2),m=g(20),E=g(62),h=g(84),a=g(3);y.a.extendChartView({type:"scatterGL",__ecgl__:!0,init:function(d,_){this.groupGL=new v.a.Node,this.viewGL=new m.a("orthographic"),this.viewGL.add(this.groupGL),this._pointsBuilderList=[],this._currentStep=0,this._sizeScale=1,this._glViewHelper=new h.a(this.viewGL)},render:function(d,_,r){if(this.groupGL.removeAll(),this._glViewHelper.reset(d,r),!!d.getData().count()){var n=this._pointsBuilderList[0];n||(n=this._pointsBuilderList[0]=new E.a(!0,r)),this._pointsBuilderList.length=1,this.groupGL.add(n.rootNode),this._removeTransformInPoints(d.getData().getLayout("points")),n.update(d,_,r),this.viewGL.setPostEffect(d.getModel("postEffect"),r)}},incrementalPrepareRender:function(d,_,r){this.groupGL.removeAll(),this._glViewHelper.reset(d,r),this._currentStep=0,this.viewGL.setPostEffect(d.getModel("postEffect"),r)},incrementalRender:function(d,_,r,n){if(!(d.end<=d.start)){var l=this._pointsBuilderList[this._currentStep];l||(l=new E.a(!0,n),this._pointsBuilderList[this._currentStep]=l),this.groupGL.add(l.rootNode),this._removeTransformInPoints(_.getData().getLayout("points")),l.setSizeScale(this._sizeScale),l.update(_,r,n,d.start,d.end),n.getZr().refresh(),this._currentStep++}},updateTransform:function(d,_,r){if(d.coordinateSystem.getRoamTransform){this._glViewHelper.updateTransform(d,r);var n=this._glViewHelper.getZoom(),l=Math.max((d.get("zoomScale")||0)*(n-1)+1,0);this._sizeScale=l,this._pointsBuilderList.forEach(function(o){o.setSizeScale(l)})}},_removeTransformInPoints:function(d){if(d)for(var _=[],r=0;r<d.length;r+=2)_[0]=d[r],_[1]=d[r+1],this._glViewHelper.removeTransformInPoint(_),d[r]=_[0],d[r+1]=_[1]},dispose:function(){this.groupGL.removeAll()},remove:function(){this.groupGL.removeAll()}})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(240),m=g(246),E=g(45),h=g.n(E),a=g(16);y.a.registerVisual(h()("graphGL","circle",null)),y.a.registerVisual(Object(a.a)("graphGL")),y.a.registerVisual(function(_){var r={};_.eachSeriesByType("graphGL",function(n){var l=n.getCategoriesData(),o=n.getData(),s={};l.each(function(u){var f=l.getName(u);s[f]=u;var e=l.getItemModel(u),t=e.get("itemStyle.color")||n.getColorFromPalette(f,r);l.setItemVisual(u,"color",t)}),l.count()&&o.each(function(u){var f=o.getItemModel(u),e=f.getShallow("category");e!=null&&(typeof e=="string"&&(e=s[e]),o.getItemVisual(u,"color",!0)||o.setItemVisual(u,"color",l.getItemVisual(e,"color")))})})}),y.a.registerVisual(function(_){_.eachSeriesByType("graphGL",function(r){var n=r.getGraph(),l=r.getEdgeData(),o="lineStyle.color".split("."),s="lineStyle.opacity".split(".");l.setVisual("color",r.get(o)),l.setVisual("opacity",r.get(s)),l.each(function(u){var f=l.getItemModel(u),e=n.getEdgeByIndex(u),t=f.get(o),i=f.get(s);switch(t){case"source":t=e.node1.getVisual("color");break;case"target":t=e.node2.getVisual("color");break}e.setVisual("color",t),e.setVisual("opacity",i)})})}),y.a.registerAction({type:"graphGLRoam",event:"graphglroam",update:"series.graphGL:roam"},function(_,r){r.eachComponent({mainType:"series",query:_},function(n){n.setView(_)})});function d(){}y.a.registerAction({type:"graphGLStartLayout",event:"graphgllayoutstarted",update:"series.graphGL:startLayout"},d),y.a.registerAction({type:"graphGLStopLayout",event:"graphgllayoutstopped",update:"series.graphGL:stopLayout"},d),y.a.registerAction({type:"graphGLFocusNodeAdjacency",event:"graphGLFocusNodeAdjacency",update:"series.graphGL:focusNodeAdjacency"},d),y.a.registerAction({type:"graphGLUnfocusNodeAdjacency",event:"graphGLUnfocusNodeAdjacency",update:"series.graphGL:unfocusNodeAdjacency"},d)},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(241),m=g(27),E=y.a.extendSeriesModel({type:"series.graphGL",visualColorAccessPath:"itemStyle.color",init:function(a){E.superApply(this,"init",arguments),this.legendDataProvider=function(){return this._categoriesData},this._updateCategoriesData()},mergeOption:function(a){E.superApply(this,"mergeOption",arguments),this._updateCategoriesData()},getFormattedLabel:function(a,d,_,r){var n=m.a.getFormattedLabel(this,a,d,_,r);if(n==null){var l=this.getData(),o=l.dimensions[l.dimensions.length-1];n=l.get(o,a)}return n},getInitialData:function(a,d){var _=a.edges||a.links||[],r=a.data||a.nodes||[],n=this;if(r&&_)return Object(v.a)(r,_,this,!0,l).data;function l(o,s){o.wrapMethod("getItemModel",function(t){var i=n._categoriesModels,c=t.getShallow("category"),p=i[c];return p&&(p.parentModel=t.parentModel,t.parentModel=p),t});var u=n.getModel("edgeLabel"),f=new y.a.Model({label:u.option},u.parentModel,d);s.wrapMethod("getItemModel",function(t){return t.customizeGetParent(e),t});function e(t){return t=this.parsePath(t),t&&t[0]==="label"?f:this.parentModel}}},getGraph:function(){return this.getData().graph},getEdgeData:function(){return this.getGraph().edgeData},getCategoriesData:function(){return this._categoriesData},formatTooltip:function(a,d,_){if(_==="edge"){var r=this.getData(),n=this.getDataParams(a,_),l=r.graph.getEdgeByIndex(a),o=r.getName(l.node1.dataIndex),s=r.getName(l.node2.dataIndex),u=[];return o!=null&&u.push(o),s!=null&&u.push(s),u=y.a.format.encodeHTML(u.join(" > ")),n.value&&(u+=" : "+y.a.format.encodeHTML(n.value)),u}else return E.superApply(this,"formatTooltip",arguments)},_updateCategoriesData:function(){var a=(this.option.categories||[]).map(function(_){return _.value!=null?_:y.a.util.extend({value:0},_)}),d=new y.a.List(["value"],this);d.initData(a),this._categoriesData=d,this._categoriesModels=d.mapArray(function(_){return d.getItemModel(_,!0)})},setView:function(a){a.zoom!=null&&(this.option.zoom=a.zoom),a.offset!=null&&(this.option.offset=a.offset)},setNodePosition:function(a){for(var d=0;d<a.length/2;d++){var _=a[d*2],r=a[d*2+1],n=this.getData().getRawDataItem(d);n.x=_,n.y=r}},isAnimationEnabled:function(){return E.superCall(this,"isAnimationEnabled")&&!(this.get("layout")==="force"&&this.get("force.layoutAnimation"))},defaultOption:{zlevel:10,z:2,legendHoverLink:!0,layout:"forceAtlas2",forceAtlas2:{initLayout:null,GPU:!0,steps:1,maxSteps:1e3,repulsionByDegree:!0,linLogMode:!1,strongGravityMode:!1,gravity:1,edgeWeightInfluence:1,edgeWeight:[1,4],nodeWeight:[1,4],preventOverlap:!1,gravityCenter:null},focusNodeAdjacency:!0,focusNodeAdjacencyOn:"mouseover",left:"center",top:"center",symbol:"circle",symbolSize:5,roam:!1,center:null,zoom:1,label:{show:!1,formatter:"{b}",position:"right",distance:5,textStyle:{fontSize:14}},itemStyle:{},lineStyle:{color:"#aaa",width:1,opacity:.5},emphasis:{label:{show:!0}},animation:!1}}),h=E},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(242),m=g.n(v),E=g(245),h=g.n(E),a=g(3);M.a=function(d,_,r,n,l){for(var o=new m.a(n),s=0;s<d.length;s++)o.addNode(a.a.firstNotNull(d[s].id,d[s].name,s),s);for(var u=[],f=[],e=0,s=0;s<_.length;s++){var t=_[s],i=t.source,c=t.target;o.addEdge(i,c,e)&&(f.push(t),u.push(a.a.firstNotNull(t.id,i+" > "+c)),e++)}var p,A=y.a.helper.completeDimensions(["value"],d);p=new y.a.List(A,r),p.initData(d);var x=new y.a.List(["value"],r);return x.initData(f,u),l&&l(p,x),h()({mainData:p,struct:o,structAttr:"graph",datas:{node:p,edge:x},datasAttr:{node:"data",edge:"edgeData"}}),o.update(),o}},function(H,M,g){var D=g(85),y=D.__DEV__,v=g(12),m=g(244),E=m.enableClassCheck;function h(o){return"_EC_"+o}var a=function(o){this._directed=o||!1,this.nodes=[],this.edges=[],this._nodesMap={},this._edgesMap={},this.data,this.edgeData},d=a.prototype;d.type="graph",d.isDirected=function(){return this._directed},d.addNode=function(o,s){o=o||""+s;var u=this._nodesMap;if(!u[h(o)]){var f=new _(o,s);return f.hostGraph=this,this.nodes.push(f),u[h(o)]=f,f}},d.getNodeByIndex=function(o){var s=this.data.getRawIndex(o);return this.nodes[s]},d.getNodeById=function(o){return this._nodesMap[h(o)]},d.addEdge=function(o,s,u){var f=this._nodesMap,e=this._edgesMap;if(typeof o=="number"&&(o=this.nodes[o]),typeof s=="number"&&(s=this.nodes[s]),_.isInstance(o)||(o=f[h(o)]),_.isInstance(s)||(s=f[h(s)]),!(!o||!s)){var t=o.id+"-"+s.id;if(!e[t]){var i=new r(o,s,u);return i.hostGraph=this,this._directed&&(o.outEdges.push(i),s.inEdges.push(i)),o.edges.push(i),o!==s&&s.edges.push(i),this.edges.push(i),e[t]=i,i}}},d.getEdgeByIndex=function(o){var s=this.edgeData.getRawIndex(o);return this.edges[s]},d.getEdge=function(o,s){_.isInstance(o)&&(o=o.id),_.isInstance(s)&&(s=s.id);var u=this._edgesMap;return this._directed?u[o+"-"+s]:u[o+"-"+s]||u[s+"-"+o]},d.eachNode=function(o,s){for(var u=this.nodes,f=u.length,e=0;e<f;e++)u[e].dataIndex>=0&&o.call(s,u[e],e)},d.eachEdge=function(o,s){for(var u=this.edges,f=u.length,e=0;e<f;e++)u[e].dataIndex>=0&&u[e].node1.dataIndex>=0&&u[e].node2.dataIndex>=0&&o.call(s,u[e],e)},d.breadthFirstTraverse=function(o,s,u,f){if(_.isInstance(s)||(s=this._nodesMap[h(s)]),!!s){for(var e=u==="out"?"outEdges":u==="in"?"inEdges":"edges",t=0;t<this.nodes.length;t++)this.nodes[t].__visited=!1;if(!o.call(f,s,null))for(var i=[s];i.length;)for(var c=i.shift(),p=c[e],t=0;t<p.length;t++){var A=p[t],x=A.node1===c?A.node2:A.node1;if(!x.__visited){if(o.call(f,x,c))return;i.push(x),x.__visited=!0}}}},d.update=function(){for(var o=this.data,s=this.edgeData,u=this.nodes,f=this.edges,e=0,t=u.length;e<t;e++)u[e].dataIndex=-1;for(var e=0,t=o.count();e<t;e++)u[o.getRawIndex(e)].dataIndex=e;s.filterSelf(function(i){var c=f[s.getRawIndex(i)];return c.node1.dataIndex>=0&&c.node2.dataIndex>=0});for(var e=0,t=f.length;e<t;e++)f[e].dataIndex=-1;for(var e=0,t=s.count();e<t;e++)f[s.getRawIndex(e)].dataIndex=e},d.clone=function(){for(var o=new a(this._directed),s=this.nodes,u=this.edges,f=0;f<s.length;f++)o.addNode(s[f].id,s[f].dataIndex);for(var f=0;f<u.length;f++){var e=u[f];o.addEdge(e.node1.id,e.node2.id,e.dataIndex)}return o};function _(o,s){this.id=o==null?"":o,this.inEdges=[],this.outEdges=[],this.edges=[],this.hostGraph,this.dataIndex=s==null?-1:s}_.prototype={constructor:_,degree:function(){return this.edges.length},inDegree:function(){return this.inEdges.length},outDegree:function(){return this.outEdges.length},getModel:function(o){if(!(this.dataIndex<0)){var s=this.hostGraph,u=s.data.getItemModel(this.dataIndex);return u.getModel(o)}}};function r(o,s,u){this.node1=o,this.node2=s,this.dataIndex=u==null?-1:u}r.prototype.getModel=function(o){if(!(this.dataIndex<0)){var s=this.hostGraph,u=s.edgeData.getItemModel(this.dataIndex);return u.getModel(o)}};var n=function(o,s){return{getValue:function(u){var f=this[o][s];return f.get(f.getDimension(u||"value"),this.dataIndex)},setVisual:function(u,f){this.dataIndex>=0&&this[o][s].setItemVisual(this.dataIndex,u,f)},getVisual:function(u,f){return this[o][s].getItemVisual(this.dataIndex,u,f)},setLayout:function(u,f){this.dataIndex>=0&&this[o][s].setItemLayout(this.dataIndex,u,f)},getLayout:function(){return this[o][s].getItemLayout(this.dataIndex)},getGraphicEl:function(){return this[o][s].getItemGraphicEl(this.dataIndex)},getRawIndex:function(){return this[o][s].getRawIndex(this.dataIndex)}}};v.mixin(_,n("hostGraph","data")),v.mixin(r,n("hostGraph","edgeData")),a.Node=_,a.Edge=r,E(_),E(r);var l=a;H.exports=l},function(H,M){var g;g=function(){return this}();try{g=g||Function("return this")()||(0,eval)("this")}catch(D){typeof window=="object"&&(g=window)}H.exports=g},function(H,M,g){var D=g(85),y=D.__DEV__,v=g(12),m=".",E="___EC__COMPONENT__CONTAINER___";function h(u){var f={main:"",sub:""};return u&&(u=u.split(m),f.main=u[0]||"",f.sub=u[1]||""),f}function a(u){v.assert(/^[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)?$/.test(u),'componentType "'+u+'" illegal')}function d(u,f){u.$constructor=u,u.extend=function(e){var t=this,i=function(){e.$constructor?e.$constructor.apply(this,arguments):t.apply(this,arguments)};return v.extend(i.prototype,e),i.extend=this.extend,i.superCall=n,i.superApply=l,v.inherits(i,this),i.superClass=t,i}}var _=0;function r(u){var f=["__\0is_clz",_++,Math.random().toFixed(3)].join("_");u.prototype[f]=!0,u.isInstance=function(e){return!!(e&&e[f])}}function n(u,f){var e=v.slice(arguments,2);return this.superClass.prototype[f].apply(u,e)}function l(u,f,e){return this.superClass.prototype[f].apply(u,e)}function o(u,f){f=f||{};var e={};u.registerClass=function(c,p){if(p){if(a(p),p=h(p),!p.sub)e[p.main]=c;else if(p.sub!==E){var A=t(p);A[p.sub]=c}}return c},u.getClass=function(c,p,A){var x=e[c];if(x&&x[E]&&(x=p?x[p]:null),A&&!x)throw new Error(p?"Component "+c+"."+(p||"")+" not exists. Load it first.":c+".type should be specified.");return x},u.getClassesByMainType=function(c){c=h(c);var p=[],A=e[c.main];return A&&A[E]?v.each(A,function(x,C){C!==E&&p.push(x)}):p.push(A),p},u.hasClass=function(c){return c=h(c),!!e[c.main]},u.getAllClassMainTypes=function(){var c=[];return v.each(e,function(p,A){c.push(A)}),c},u.hasSubTypes=function(c){c=h(c);var p=e[c.main];return p&&p[E]},u.parseClassType=h;function t(c){var p=e[c.main];return(!p||!p[E])&&(p=e[c.main]={},p[E]=!0),p}if(f.registerWhenExtend){var i=u.extend;i&&(u.extend=function(c){var p=i.call(this,c);return u.registerClass(p,c.type)})}return u}function s(u,f){}M.parseClassType=h,M.enableClassExtend=d,M.enableClassCheck=r,M.enableClassManagement=o,M.setReadOnly=s},function(H,M,g){var D=g(12),y=D.each,v="\0__link_datas",m="\0__link_mainData";function E(s){var u=s.mainData,f=s.datas;f||(f={main:u},s.datasAttr={main:"data"}),s.datas=s.mainData=null,n(u,f,s),y(f,function(e){y(u.TRANSFERABLE_METHODS,function(t){e.wrapMethod(t,D.curry(h,s))})}),u.wrapMethod("cloneShallow",D.curry(d,s)),y(u.CHANGABLE_METHODS,function(e){u.wrapMethod(e,D.curry(a,s))}),D.assert(f[u.dataType]===u)}function h(s,u){if(r(this)){var f=D.extend({},this[v]);f[this.dataType]=u,n(u,f,s)}else l(u,this.dataType,this[m],s);return u}function a(s,u){return s.struct&&s.struct.update(this),u}function d(s,u){return y(u[v],function(f,e){f!==u&&l(f.cloneShallow(),e,u,s)}),u}function _(s){var u=this[m];return s==null||u==null?u:u[v][s]}function r(s){return s[m]===s}function n(s,u,f){s[v]={},y(u,function(e,t){l(e,t,s,f)})}function l(s,u,f,e){f[v][u]=s,s[m]=f,s.dataType=u,e.struct&&(s[e.structAttr]=e.struct,e.struct[e.datasAttr[u]]=s),s.getLinkedData=_}var o=E;H.exports=o},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(41),m=g.n(v),E=g(2),h=g(20),a=g(86),d=g(3),_=g(247),r=g(249),n=g(65),l=g.n(n),o=g(1),s=g.n(o),u=g(251),f=g(62),e=g(252),t=s.a.vec2;E.a.Shader.import(e.a);var i=1;y.a.extendChartView({type:"graphGL",__ecgl__:!0,init:function(c,p){this.groupGL=new E.a.Node,this.viewGL=new h.a("orthographic"),this.viewGL.camera.left=this.viewGL.camera.right=0,this.viewGL.add(this.groupGL),this._pointsBuilder=new f.a(!0,p),this._forceEdgesMesh=new E.a.Mesh({material:new E.a.Material({shader:E.a.createShader("ecgl.forceAtlas2.edges"),transparent:!0,depthMask:!1,depthTest:!1}),$ignorePicking:!0,geometry:new E.a.Geometry({attributes:{node:new E.a.Geometry.Attribute("node","float",2),color:new E.a.Geometry.Attribute("color","float",4,"COLOR")},dynamic:!0,mainAttribute:"node"}),renderOrder:-1,mode:E.a.Mesh.LINES}),this._edgesMesh=new E.a.Mesh({material:new E.a.Material({shader:E.a.createShader("ecgl.meshLines2D"),transparent:!0,depthMask:!1,depthTest:!1}),$ignorePicking:!0,geometry:new a.a({useNativeLine:!1,dynamic:!0}),renderOrder:-1,culling:!1}),this._layoutId=0,this._control=new u.a({zr:p.getZr(),viewGL:this.viewGL}),this._control.setTarget(this.groupGL),this._control.init(),this._clickHandler=this._clickHandler.bind(this)},render:function(c,p,A){this.groupGL.add(this._pointsBuilder.rootNode),this._model=c,this._api=A,this._initLayout(c,p,A),this._pointsBuilder.update(c,p,A),this._forceLayoutInstance instanceof _.a||this.groupGL.remove(this._forceEdgesMesh),this._updateCamera(c,A),this._control.off("update"),this._control.on("update",function(){A.dispatchAction({type:"graphGLRoam",seriesId:c.id,zoom:this._control.getZoom(),offset:this._control.getOffset()}),this._pointsBuilder.updateView(this.viewGL.camera)},this),this._control.setZoom(d.a.firstNotNull(c.get("zoom"),1)),this._control.setOffset(c.get("offset")||[0,0]);var x=this._pointsBuilder.getPointsMesh();if(x.off("mousemove",this._mousemoveHandler),x.off("mouseout",this._mouseOutHandler,this),A.getZr().off("click",this._clickHandler),this._pointsBuilder.highlightOnMouseover=!0,c.get("focusNodeAdjacency")){var C=c.get("focusNodeAdjacencyOn");C==="click"?A.getZr().on("click",this._clickHandler):C==="mouseover"?(x.on("mousemove",this._mousemoveHandler,this),x.on("mouseout",this._mouseOutHandler,this),this._pointsBuilder.highlightOnMouseover=!1):console.warn("Unkown focusNodeAdjacencyOn value s"+C)}this._lastMouseOverDataIndex=-1},_clickHandler:function(c){if(!this._layouting){var p=this._pointsBuilder.getPointsMesh().dataIndex;p>=0?this._api.dispatchAction({type:"graphGLFocusNodeAdjacency",seriesId:this._model.id,dataIndex:p}):this._api.dispatchAction({type:"graphGLUnfocusNodeAdjacency",seriesId:this._model.id})}},_mousemoveHandler:function(c){if(!this._layouting){var p=this._pointsBuilder.getPointsMesh().dataIndex;p>=0?p!==this._lastMouseOverDataIndex&&this._api.dispatchAction({type:"graphGLFocusNodeAdjacency",seriesId:this._model.id,dataIndex:p}):this._mouseOutHandler(c),this._lastMouseOverDataIndex=p}},_mouseOutHandler:function(c){this._layouting||(this._api.dispatchAction({type:"graphGLUnfocusNodeAdjacency",seriesId:this._model.id}),this._lastMouseOverDataIndex=-1)},_updateForceEdgesGeometry:function(c,p){var A=this._forceEdgesMesh.geometry,x=p.getEdgeData(),C=0,S=this._forceLayoutInstance,P=x.count()*2;A.attributes.node.init(P),A.attributes.color.init(P),x.each(function(b){var L=c[b];A.attributes.node.set(C,S.getNodeUV(L.node1)),A.attributes.node.set(C+1,S.getNodeUV(L.node2));var R=x.getItemVisual(L.dataIndex,"color"),T=E.a.parseColor(R);T[3]*=d.a.firstNotNull(x.getItemVisual(L.dataIndex,"opacity"),1),A.attributes.color.set(C,T),A.attributes.color.set(C+1,T),C+=2}),A.dirty()},_updateMeshLinesGeometry:function(){var p=this._model.getEdgeData(),c=this._edgesMesh.geometry,p=this._model.getEdgeData(),A=this._model.getData().getLayout("points");c.resetOffset(),c.setVertexCount(p.count()*c.getLineVertexCount()),c.setTriangleCount(p.count()*c.getLineTriangleCount());var x=[],C=[],S=["lineStyle","width"];this._originalEdgeColors=new Float32Array(p.count()*4),this._edgeIndicesMap=new Float32Array(p.count()),p.each(function(P){var b=p.graph.getEdgeByIndex(P),L=b.node1.dataIndex*2,R=b.node2.dataIndex*2;x[0]=A[L],x[1]=A[L+1],C[0]=A[R],C[1]=A[R+1];var T=p.getItemVisual(b.dataIndex,"color"),N=E.a.parseColor(T);N[3]*=d.a.firstNotNull(p.getItemVisual(b.dataIndex,"opacity"),1);var I=p.getItemModel(b.dataIndex),F=d.a.firstNotNull(I.get(S),1)*this._api.getDevicePixelRatio();c.addLine(x,C,N,F);for(var U=0;U<4;U++)this._originalEdgeColors[b.dataIndex*4+U]=N[U];this._edgeIndicesMap[b.dataIndex]=P},!1,this),c.dirty()},_updateForceNodesGeometry:function(c){for(var p=this._pointsBuilder.getPointsMesh(),A=[],x=0;x<c.count();x++)this._forceLayoutInstance.getNodeUV(x,A),p.geometry.attributes.position.set(x,A);p.geometry.dirty("position")},_initLayout:function(c,p,A){var x=c.get("layout"),C=c.getGraph(),S=c.getBoxLayoutParams(),P=m.a.getLayoutRect(S,{width:A.getWidth(),height:A.getHeight()});x==="force"&&(console.warn("Currently only forceAtlas2 layout supported."),x="forceAtlas2"),this.stopLayout(c,p,A,{beforeLayout:!0});var b=c.getData(),L=c.getData();if(x==="forceAtlas2"){var R=c.getModel("forceAtlas2"),T=this._forceLayoutInstance,N=[],I=[],F=b.getDataExtent("value"),U=L.getDataExtent("value"),K=d.a.firstNotNull(R.get("edgeWeight"),1),G=d.a.firstNotNull(R.get("nodeWeight"),1);typeof K=="number"&&(K=[K,K]),typeof G=="number"&&(G=[G,G]);var V=0,X={},ee=new Float32Array(b.count()*2);if(C.eachNode(function(ue){var Ae=ue.dataIndex,fe=b.get("value",Ae),he,ve;if(b.hasItemOption){var me=b.getItemModel(Ae);he=me.get("x"),ve=me.get("y")}he==null&&(he=P.x+Math.random()*P.width,ve=P.y+Math.random()*P.height),ee[V*2]=he,ee[V*2+1]=ve,X[ue.id]=V++;var Te=y.a.number.linearMap(fe,F,G);isNaN(Te)&&(isNaN(G[0])?Te=1:Te=G[0]),N.push({x:he,y:ve,mass:Te,size:b.getItemVisual(Ae,"symbolSize")})}),b.setLayout("points",ee),C.eachEdge(function(ue){var Ae=ue.dataIndex,fe=b.get("value",Ae),he=y.a.number.linearMap(fe,U,K);isNaN(he)&&(isNaN(K[0])?he=1:he=K[0]),I.push({node1:X[ue.node1.id],node2:X[ue.node2.id],weight:he,dataIndex:Ae})}),!T){var oe=R.get("GPU");this._forceLayoutInstance&&(oe&&!(this._forceLayoutInstance instanceof _.a)||!oe&&!(this._forceLayoutInstance instanceof r.a))&&(this._forceLayoutInstanceToDispose=this._forceLayoutInstance),T=this._forceLayoutInstance=oe?new _.a:new r.a}T.initData(N,I),T.updateOption(R.option),this._updateForceEdgesGeometry(T.getEdges(),c),this._updatePositionTexture(),A.dispatchAction({type:"graphGLStartLayout",from:this.uid})}else{var ee=new Float32Array(b.count()*2),V=0;C.eachNode(function(fe){var he=fe.dataIndex,ve,me;if(b.hasItemOption){var Te=b.getItemModel(he);ve=Te.get("x"),me=Te.get("y")}ee[V++]=ve,ee[V++]=me}),b.setLayout("points",ee),this._updateAfterLayout(c,p,A)}},_updatePositionTexture:function(){var c=this._forceLayoutInstance.getNodePositionTexture();this._pointsBuilder.setPositionTexture(c),this._forceEdgesMesh.material.set("positionTex",c)},startLayout:function(c,p,S,x){if(!(x&&x.from!=null&&x.from!==this.uid)){var C=this.viewGL,S=this._api,P=this._forceLayoutInstance,b=this._model.getData(),L=this._model.getModel("forceAtlas2");if(!P){console.error("None layout don't have startLayout action");return}if(this.groupGL.remove(this._edgesMesh),this.groupGL.add(this._forceEdgesMesh),!!this._forceLayoutInstance){this._updateForceNodesGeometry(c.getData()),this._pointsBuilder.hideLabels();var R=this,T=this._layoutId=i++,N=L.getShallow("maxSteps"),I=L.getShallow("steps"),F=0,U=Math.max(I*2,20),K=function(G){if(G===R._layoutId){if(P.isFinished(N)){S.dispatchAction({type:"graphGLStopLayout",from:R.uid}),S.dispatchAction({type:"graphGLFinishLayout",points:b.getLayout("points"),from:R.uid});return}P.update(C.layer.renderer,I,function(){R._updatePositionTexture(),F+=I,F>=U&&(R._syncNodePosition(c),F=0),S.getZr().refresh(),l()(function(){K(G)})})}};l()(function(){R._forceLayoutInstanceToDispose&&(R._forceLayoutInstanceToDispose.dispose(C.layer.renderer),R._forceLayoutInstanceToDispose=null),K(T)}),this._layouting=!0}}},stopLayout:function(c,p,A,x){x&&x.from!=null&&x.from!==this.uid||(this._layoutId=0,this.groupGL.remove(this._forceEdgesMesh),this.groupGL.add(this._edgesMesh),this._forceLayoutInstance&&this.viewGL.layer&&(x&&x.beforeLayout||(this._syncNodePosition(c),this._updateAfterLayout(c,p,A)),this._api.getZr().refresh(),this._layouting=!1))},_syncNodePosition:function(c){var p=this._forceLayoutInstance.getNodePosition(this.viewGL.layer.renderer);c.getData().setLayout("points",p),c.setNodePosition(p)},_updateAfterLayout:function(c,p,A){this._updateMeshLinesGeometry(),this._pointsBuilder.removePositionTexture(),this._pointsBuilder.updateLayout(c,p,A),this._pointsBuilder.updateView(this.viewGL.camera),this._pointsBuilder.updateLabels(),this._pointsBuilder.showLabels()},focusNodeAdjacency:function(c,p,A,x){var C=this._model.getData();this._downplayAll();var S=x.dataIndex,P=C.graph,b=[],L=P.getNodeByIndex(S);b.push(L),L.edges.forEach(function(T){T.dataIndex<0||(T.node1!==L&&b.push(T.node1),T.node2!==L&&b.push(T.node2))},this),this._pointsBuilder.fadeOutAll(.05),this._fadeOutEdgesAll(.05),b.forEach(function(T){this._pointsBuilder.highlight(C,T.dataIndex)},this),this._pointsBuilder.updateLabels(b.map(function(T){return T.dataIndex}));var R=[];L.edges.forEach(function(T){T.dataIndex>=0&&(this._highlightEdge(T.dataIndex),R.push(T))},this),this._focusNodes=b,this._focusEdges=R},unfocusNodeAdjacency:function(c,p,A,x){this._downplayAll(),this._pointsBuilder.fadeInAll(),this._fadeInEdgesAll(),this._pointsBuilder.updateLabels()},_highlightEdge:function(c){var p=this._model.getEdgeData().getItemModel(c),A=E.a.parseColor(p.get("emphasis.lineStyle.color")||p.get("lineStyle.color")),x=d.a.firstNotNull(p.get("emphasis.lineStyle.opacity"),p.get("lineStyle.opacity"),1);A[3]*=x,this._edgesMesh.geometry.setItemColor(this._edgeIndicesMap[c],A)},_downplayAll:function(){this._focusNodes&&this._focusNodes.forEach(function(c){this._pointsBuilder.downplay(this._model.getData(),c.dataIndex)},this),this._focusEdges&&this._focusEdges.forEach(function(c){this._downplayEdge(c.dataIndex)},this)},_downplayEdge:function(c){var p=this._getColor(c,[]);this._edgesMesh.geometry.setItemColor(this._edgeIndicesMap[c],p)},_setEdgeFade:function(){var c=[];return function(p,A){this._getColor(p,c),c[3]*=A,this._edgesMesh.geometry.setItemColor(this._edgeIndicesMap[p],c)}}(),_getColor:function(c,p){for(var A=0;A<4;A++)p[A]=this._originalEdgeColors[c*4+A];return p},_fadeOutEdgesAll:function(c){var p=this._model.getData().graph;p.eachEdge(function(A){this._setEdgeFade(A.dataIndex,c)},this)},_fadeInEdgesAll:function(){this._fadeOutEdgesAll(1)},_updateCamera:function(c,p){this.viewGL.setViewport(0,0,p.getWidth(),p.getHeight(),p.getDevicePixelRatio());for(var A=this.viewGL.camera,x=c.getData(),C=x.getLayout("points"),S=t.create(1/0,1/0),P=t.create(-1/0,-1/0),b=[],L=0;L<C.length;)b[0]=C[L++],b[1]=C[L++],t.min(S,S,b),t.max(P,P,b);var R=(P[1]+S[1])/2,T=(P[0]+S[0])/2;if(!(T>A.left&&T<A.right&&R<A.bottom&&R>A.top)){var N=Math.max(P[0]-S[0],10),I=N/p.getWidth()*p.getHeight();N*=1.4,I*=1.4,S[0]-=N*.2,A.left=S[0],A.top=R-I/2,A.bottom=R+I/2,A.right=N+S[0],A.near=0,A.far=100}},dispose:function(){var c=this.viewGL.layer.renderer;this._forceLayoutInstance&&this._forceLayoutInstance.dispose(c),this.groupGL.removeAll(),this._layoutId=-1},remove:function(){this.groupGL.removeAll(),this._control.dispose()}})},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(2),m=g(14),E=g(10),h=g(248);v.a.Shader.import(h.a);var a={repulsionByDegree:!0,linLogMode:!1,strongGravityMode:!1,gravity:1,scaling:1,edgeWeightInfluence:1,jitterTolerence:.1,preventOverlap:!1,dissuadeHubs:!1,gravityCenter:null};function d(_){var r={type:v.a.Texture.FLOAT,minFilter:v.a.Texture.NEAREST,magFilter:v.a.Texture.NEAREST};this._positionSourceTex=new v.a.Texture2D(r),this._positionSourceTex.flipY=!1,this._positionTex=new v.a.Texture2D(r),this._positionPrevTex=new v.a.Texture2D(r),this._forceTex=new v.a.Texture2D(r),this._forcePrevTex=new v.a.Texture2D(r),this._weightedSumTex=new v.a.Texture2D(r),this._weightedSumTex.width=this._weightedSumTex.height=1,this._globalSpeedTex=new v.a.Texture2D(r),this._globalSpeedPrevTex=new v.a.Texture2D(r),this._globalSpeedTex.width=this._globalSpeedTex.height=1,this._globalSpeedPrevTex.width=this._globalSpeedPrevTex.height=1,this._nodeRepulsionPass=new m.a({fragment:v.a.Shader.source("ecgl.forceAtlas2.updateNodeRepulsion")}),this._positionPass=new m.a({fragment:v.a.Shader.source("ecgl.forceAtlas2.updatePosition")}),this._globalSpeedPass=new m.a({fragment:v.a.Shader.source("ecgl.forceAtlas2.calcGlobalSpeed")}),this._copyPass=new m.a({fragment:v.a.Shader.source("clay.compositor.output")});var n=function(l){l.blendEquation(l.FUNC_ADD),l.blendFunc(l.ONE,l.ONE)};this._edgeForceMesh=new v.a.Mesh({geometry:new v.a.Geometry({attributes:{node1:new v.a.Geometry.Attribute("node1","float",2),node2:new v.a.Geometry.Attribute("node2","float",2),weight:new v.a.Geometry.Attribute("weight","float",1)},dynamic:!0,mainAttribute:"node1"}),material:new v.a.Material({transparent:!0,shader:v.a.createShader("ecgl.forceAtlas2.updateEdgeAttraction"),blend:n,depthMask:!1,depthText:!1}),mode:v.a.Mesh.POINTS}),this._weightedSumMesh=new v.a.Mesh({geometry:new v.a.Geometry({attributes:{node:new v.a.Geometry.Attribute("node","float",2)},dynamic:!0,mainAttribute:"node"}),material:new v.a.Material({transparent:!0,shader:v.a.createShader("ecgl.forceAtlas2.calcWeightedSum"),blend:n,depthMask:!1,depthText:!1}),mode:v.a.Mesh.POINTS}),this._framebuffer=new E.a({depthBuffer:!1}),this._dummyCamera=new v.a.OrthographicCamera({left:-1,right:1,top:1,bottom:-1,near:0,far:100}),this._globalSpeed=0}d.prototype.updateOption=function(_){for(var r in a)this[r]=a[r];var n=this._nodes.length;if(n>5e4?this.jitterTolerence=10:n>5e3?this.jitterTolerence=1:this.jitterTolerence=.1,n>100?this.scaling=2:this.scaling=10,_)for(var r in a)_[r]!=null&&(this[r]=_[r]);if(this.repulsionByDegree)for(var l=this._positionSourceTex.pixels,o=0;o<this._nodes.length;o++)l[o*4+2]=(this._nodes[o].degree||0)+1},d.prototype._updateGravityCenter=function(_){var r=this._nodes,n=this._edges;if(this.gravityCenter)this._gravityCenter=this.gravityCenter;else{for(var l=[1/0,1/0],o=[-1/0,-1/0],s=0;s<r.length;s++)l[0]=Math.min(r[s].x,l[0]),l[1]=Math.min(r[s].y,l[1]),o[0]=Math.max(r[s].x,o[0]),o[1]=Math.max(r[s].y,o[1]);this._gravityCenter=[(l[0]+o[0])*.5,(l[1]+o[1])*.5]}for(var s=0;s<n.length;s++){var u=n[s].node1,f=n[s].node2;r[u].degree=(r[u].degree||0)+1,r[f].degree=(r[f].degree||0)+1}},d.prototype.initData=function(_,r){this._nodes=_,this._edges=r,this._updateGravityCenter();var n=Math.ceil(Math.sqrt(_.length)),l=n,o=new Float32Array(n*l*4);this._resize(n,l);for(var s=0,u=0;u<_.length;u++){var f=_[u];o[s++]=f.x||0,o[s++]=f.y||0,o[s++]=f.mass||1,o[s++]=f.size||1}this._positionSourceTex.pixels=o;var e=this._edgeForceMesh.geometry,t=r.length;e.attributes.node1.init(t*2),e.attributes.node2.init(t*2),e.attributes.weight.init(t*2);for(var i=[],u=0;u<r.length;u++){var c=e.attributes,p=r[u].weight;p==null&&(p=1),c.node1.set(u,this.getNodeUV(r[u].node1,i)),c.node2.set(u,this.getNodeUV(r[u].node2,i)),c.weight.set(u,p),c.node1.set(u+t,this.getNodeUV(r[u].node2,i)),c.node2.set(u+t,this.getNodeUV(r[u].node1,i)),c.weight.set(u+t,p)}var A=this._weightedSumMesh.geometry;A.attributes.node.init(_.length);for(var u=0;u<_.length;u++)A.attributes.node.set(u,this.getNodeUV(u,i));e.dirty(),A.dirty(),this._nodeRepulsionPass.material.define("fragment","NODE_COUNT",_.length),this._nodeRepulsionPass.material.setUniform("textureSize",[n,l]),this._inited=!1,this._frame=0},d.prototype.getNodes=function(){return this._nodes},d.prototype.getEdges=function(){return this._edges},d.prototype.step=function(_){this._inited||(this._initFromSource(_),this._inited=!0),this._frame++,this._framebuffer.attach(this._forceTex),this._framebuffer.bind(_);var r=this._nodeRepulsionPass;r.setUniform("strongGravityMode",this.strongGravityMode),r.setUniform("gravity",this.gravity),r.setUniform("gravityCenter",this._gravityCenter),r.setUniform("scaling",this.scaling),r.setUniform("preventOverlap",this.preventOverlap),r.setUniform("positionTex",this._positionPrevTex),r.render(_);var n=this._edgeForceMesh;n.material.set("linLogMode",this.linLogMode),n.material.set("edgeWeightInfluence",this.edgeWeightInfluence),n.material.set("preventOverlap",this.preventOverlap),n.material.set("positionTex",this._positionPrevTex),_.gl.enable(_.gl.BLEND),_.renderPass([n],this._dummyCamera),this._framebuffer.attach(this._weightedSumTex),_.gl.clearColor(0,0,0,0),_.gl.clear(_.gl.COLOR_BUFFER_BIT),_.gl.enable(_.gl.BLEND);var l=this._weightedSumMesh;l.material.set("positionTex",this._positionPrevTex),l.material.set("forceTex",this._forceTex),l.material.set("forcePrevTex",this._forcePrevTex),_.renderPass([l],this._dummyCamera),this._framebuffer.attach(this._globalSpeedTex);var o=this._globalSpeedPass;o.setUniform("globalSpeedPrevTex",this._globalSpeedPrevTex),o.setUniform("weightedSumTex",this._weightedSumTex),o.setUniform("jitterTolerence",this.jitterTolerence),_.gl.disable(_.gl.BLEND),o.render(_);var s=this._positionPass;this._framebuffer.attach(this._positionTex),s.setUniform("globalSpeedTex",this._globalSpeedTex),s.setUniform("positionTex",this._positionPrevTex),s.setUniform("forceTex",this._forceTex),s.setUniform("forcePrevTex",this._forcePrevTex),s.render(_),this._framebuffer.unbind(_),this._swapTexture()},d.prototype.update=function(_,r,n){r==null&&(r=1),r=Math.max(r,1);for(var l=0;l<r;l++)this.step(_);n&&n()},d.prototype.getNodePositionTexture=function(){return this._inited?this._positionPrevTex:this._positionSourceTex},d.prototype.getNodeUV=function(_,r){r=r||[];var n=this._positionTex.width,l=this._positionTex.height;return r[0]=_%n/(n-1),r[1]=Math.floor(_/n)/(l-1)||0,r},d.prototype.getNodePosition=function(_,r){var n=this._positionArr,l=this._positionTex.width,o=this._positionTex.height,s=l*o;(!n||n.length!==s*4)&&(n=this._positionArr=new Float32Array(s*4)),this._framebuffer.bind(_),this._framebuffer.attach(this._positionPrevTex),_.gl.readPixels(0,0,l,o,_.gl.RGBA,_.gl.FLOAT,n),this._framebuffer.unbind(_),r||(r=new Float32Array(this._nodes.length*2));for(var u=0;u<this._nodes.length;u++)r[u*2]=n[u*4],r[u*2+1]=n[u*4+1];return r},d.prototype.getTextureData=function(_,r){var n=this["_"+r+"Tex"],l=n.width,o=n.height;this._framebuffer.bind(_),this._framebuffer.attach(n);var s=new Float32Array(l*o*4);return _.gl.readPixels(0,0,l,o,_.gl.RGBA,_.gl.FLOAT,s),this._framebuffer.unbind(_),s},d.prototype.getTextureSize=function(){return{width:this._positionTex.width,height:this._positionTex.height}},d.prototype.isFinished=function(_){return this._frame>_},d.prototype._swapTexture=function(){var _=this._positionPrevTex;this._positionPrevTex=this._positionTex,this._positionTex=_;var _=this._forcePrevTex;this._forcePrevTex=this._forceTex,this._forceTex=_;var _=this._globalSpeedPrevTex;this._globalSpeedPrevTex=this._globalSpeedTex,this._globalSpeedTex=_},d.prototype._initFromSource=function(_){this._framebuffer.attach(this._positionPrevTex),this._framebuffer.bind(_),this._copyPass.setUniform("texture",this._positionSourceTex),this._copyPass.render(_),_.gl.clearColor(0,0,0,0),this._framebuffer.attach(this._forcePrevTex),_.gl.clear(_.gl.COLOR_BUFFER_BIT),this._framebuffer.attach(this._globalSpeedPrevTex),_.gl.clear(_.gl.COLOR_BUFFER_BIT),this._framebuffer.unbind(_)},d.prototype._resize=function(_,r){["_positionSourceTex","_positionTex","_positionPrevTex","_forceTex","_forcePrevTex"].forEach(function(n){this[n].width=_,this[n].height=r,this[n].dirty()},this)},d.prototype.dispose=function(_){this._framebuffer.dispose(_),this._copyPass.dispose(_),this._nodeRepulsionPass.dispose(_),this._positionPass.dispose(_),this._globalSpeedPass.dispose(_),this._edgeForceMesh.geometry.dispose(_),this._weightedSumMesh.geometry.dispose(_),this._positionSourceTex.dispose(_),this._positionTex.dispose(_),this._positionPrevTex.dispose(_),this._forceTex.dispose(_),this._forcePrevTex.dispose(_),this._weightedSumTex.dispose(_),this._globalSpeedTex.dispose(_),this._globalSpeedPrevTex.dispose(_)},y.a.ForceAtlas2GPU=d,M.a=d},function(H,M,g){"use strict";M.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(H,M,g){"use strict";var D=g(5),y=g(6),v=g(250),m=v.a.toString();m=m.slice(m.indexOf("{")+1,m.lastIndexOf("}"));var E={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},h=function(a){for(var d in E)this[d]=E[d];if(a)for(var d in a)this[d]=a[d];this._nodes=[],this._edges=[],this._disposed=!1,this._positionTex=new D.a({type:y.a.FLOAT,flipY:!1,minFilter:y.a.NEAREST,magFilter:y.a.NEAREST})};h.prototype.initData=function(a,d){var _=new Blob([m]),r=window.URL.createObjectURL(_);this._worker=new Worker(r),this._worker.onmessage=this._$onupdate.bind(this),this._nodes=a,this._edges=d,this._frame=0;for(var n=a.length,l=d.length,o=new Float32Array(n*2),s=new Float32Array(n),u=new Float32Array(n),f=new Float32Array(l*2),e=new Float32Array(l),t=0;t<a.length;t++){var i=a[t];o[t*2]=i.x,o[t*2+1]=i.y,s[t]=i.mass==null?1:i.mass,u[t]=i.size==null?1:i.size}for(var t=0;t<d.length;t++){var c=d[t],p=c.node1,A=c.node2;f[t*2]=p,f[t*2+1]=A,e[t]=c.weight==null?1:c.weight}var x=Math.ceil(Math.sqrt(a.length)),C=x,S=new Float32Array(x*C*4),P=this._positionTex;P.width=x,P.height=C,P.pixels=S,this._worker.postMessage({cmd:"init",nodesPosition:o,nodesMass:s,nodesSize:u,edges:f,edgesWeight:e}),this._globalSpeed=1/0},h.prototype.updateOption=function(a){var d={};for(var _ in E)d[_]=E[_];var r=this._nodes,n=this._edges,l=r.length;if(l>5e4?d.jitterTolerence=10:l>5e3?d.jitterTolerence=1:d.jitterTolerence=.1,l>100?d.scaling=2:d.scaling=10,l>1e3?d.barnesHutOptimize=!0:d.barnesHutOptimize=!1,a)for(var _ in E)a[_]!=null&&(d[_]=a[_]);if(!d.gravityCenter){for(var o=[1/0,1/0],s=[-1/0,-1/0],u=0;u<r.length;u++)o[0]=Math.min(r[u].x,o[0]),o[1]=Math.min(r[u].y,o[1]),s[0]=Math.max(r[u].x,s[0]),s[1]=Math.max(r[u].y,s[1]);d.gravityCenter=[(o[0]+s[0])*.5,(o[1]+s[1])*.5]}for(var u=0;u<n.length;u++){var f=n[u].node1,e=n[u].node2;r[f].degree=(r[f].degree||0)+1,r[e].degree=(r[e].degree||0)+1}this._worker&&this._worker.postMessage({cmd:"updateConfig",config:d})},h.prototype.update=function(a,d,_){d==null&&(d=1),d=Math.max(d,1),this._frame+=d,this._onupdate=_,this._worker&&this._worker.postMessage({cmd:"update",steps:Math.round(d)})},h.prototype._$onupdate=function(a){if(!this._disposed){var d=new Float32Array(a.data.buffer);this._globalSpeed=a.data.globalSpeed,this._positionArr=d,this._updateTexture(d),this._onupdate&&this._onupdate()}},h.prototype.getNodePositionTexture=function(){return this._positionTex},h.prototype.getNodeUV=function(a,d){d=d||[];var _=this._positionTex.width,r=this._positionTex.height;return d[0]=a%_/(_-1),d[1]=Math.floor(a/_)/(r-1),d},h.prototype.getNodes=function(){return this._nodes},h.prototype.getEdges=function(){return this._edges},h.prototype.isFinished=function(a){return this._frame>a},h.prototype.getNodePosition=function(a,d){if(d||(d=new Float32Array(this._nodes.length*2)),this._positionArr)for(var _=0;_<this._positionArr.length;_++)d[_]=this._positionArr[_];return d},h.prototype._updateTexture=function(a){for(var d=this._positionTex.pixels,_=0,r=0;r<a.length;)d[_++]=a[r++],d[_++]=a[r++],d[_++]=1,d[_++]=1;this._positionTex.dirty()},h.prototype.dispose=function(a){this._disposed=!0,this._worker=null},M.a=h},function(H,M,g){"use strict";function D(){var y={create:function(){return new Float32Array(2)},dist:function(r,n){var l=n[0]-r[0],o=n[1]-r[1];return Math.sqrt(l*l+o*o)},len:function(r){var n=r[0],l=r[1];return Math.sqrt(n*n+l*l)},scaleAndAdd:function(r,n,l,o){return r[0]=n[0]+l[0]*o,r[1]=n[1]+l[1]*o,r},scale:function(r,n,l){return r[0]=n[0]*l,r[1]=n[1]*l,r},add:function(r,n,l){return r[0]=n[0]+l[0],r[1]=n[1]+l[1],r},sub:function(r,n,l){return r[0]=n[0]-l[0],r[1]=n[1]-l[1],r},normalize:function(r,n){var l=n[0],o=n[1],s=l*l+o*o;return s>0&&(s=1/Math.sqrt(s),r[0]=n[0]*s,r[1]=n[1]*s),r},negate:function(r,n){return r[0]=-n[0],r[1]=-n[1],r},copy:function(r,n){return r[0]=n[0],r[1]=n[1],r},set:function(r,n,l){return r[0]=n,r[1]=l,r}};function v(){this.subRegions=[],this.nSubRegions=0,this.node=null,this.mass=0,this.centerOfMass=null,this.bbox=new Float32Array(4),this.size=0}var m=v.prototype;m.beforeUpdate=function(){for(var r=0;r<this.nSubRegions;r++)this.subRegions[r].beforeUpdate();this.mass=0,this.centerOfMass&&(this.centerOfMass[0]=0,this.centerOfMass[1]=0),this.nSubRegions=0,this.node=null},m.afterUpdate=function(){this.subRegions.length=this.nSubRegions;for(var r=0;r<this.nSubRegions;r++)this.subRegions[r].afterUpdate()},m.addNode=function(r){if(this.nSubRegions===0)if(this.node==null){this.node=r;return}else this._addNodeToSubRegion(this.node),this.node=null;this._addNodeToSubRegion(r),this._updateCenterOfMass(r)},m.findSubRegion=function(r,n){for(var l=0;l<this.nSubRegions;l++){var o=this.subRegions[l];if(o.contain(r,n))return o}},m.contain=function(r,n){return this.bbox[0]<=r&&this.bbox[2]>=r&&this.bbox[1]<=n&&this.bbox[3]>=n},m.setBBox=function(r,n,l,o){this.bbox[0]=r,this.bbox[1]=n,this.bbox[2]=l,this.bbox[3]=o,this.size=(l-r+o-n)/2},m._newSubRegion=function(){var r=this.subRegions[this.nSubRegions];return r||(r=new v,this.subRegions[this.nSubRegions]=r),this.nSubRegions++,r},m._addNodeToSubRegion=function(r){var n=this.findSubRegion(r.position[0],r.position[1]),l=this.bbox;if(!n){var o=(l[0]+l[2])/2,s=(l[1]+l[3])/2,u=(l[2]-l[0])/2,f=(l[3]-l[1])/2,e=r.position[0]>=o?1:0,t=r.position[1]>=s?1:0,n=this._newSubRegion();n.setBBox(e*u+l[0],t*f+l[1],(e+1)*u+l[0],(t+1)*f+l[1])}n.addNode(r)},m._updateCenterOfMass=function(r){this.centerOfMass==null&&(this.centerOfMass=new Float32Array(2));var n=this.centerOfMass[0]*this.mass,l=this.centerOfMass[1]*this.mass;n+=r.position[0]*r.mass,l+=r.position[1]*r.mass,this.mass+=r.mass,this.centerOfMass[0]=n/this.mass,this.centerOfMass[1]=l/this.mass};function E(){this.position=new Float32Array(2),this.force=y.create(),this.forcePrev=y.create(),this.mass=1,this.inDegree=0,this.outDegree=0}function h(r,n){this.source=r,this.target=n,this.weight=1}function a(){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 v,this.rootRegion.centerOfMass=y.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 d=a.prototype;d.initNodes=function(r,n,l){var o=n.length;this.nodes.length=0;for(var s=typeof l!="undefined",u=0;u<o;u++){var f=new E;f.position[0]=r[u*2],f.position[1]=r[u*2+1],f.mass=n[u],s&&(f.size=l[u]),this.nodes.push(f)}this._massArr=n,this._swingingArr=new Float32Array(o),s&&(this._sizeArr=l)},d.initEdges=function(r,n){var l=r.length/2;this.edges.length=0;for(var o=0;o<l;o++){var s=r[o*2],u=r[o*2+1],f=this.nodes[s],e=this.nodes[u];if(!f||!e){console.error("Node not exists, try initNodes before initEdges");return}f.outDegree++,e.inDegree++;var t=new h(f,e);n&&(t.weight=n[o]),this.edges.push(t)}},d.updateSettings=function(){if(this.repulsionByDegree)for(var r=0;r<this.nodes.length;r++){var n=this.nodes[r];n.mass=n.inDegree+n.outDegree+1}else for(var r=0;r<this.nodes.length;r++){var n=this.nodes[r];n.mass=this._massArr[r]}},d.update=function(){var r=this.nodes.length;if(this.updateSettings(),this.updateBBox(),this.barnesHutOptimize){this.rootRegion.setBBox(this.bbox[0],this.bbox[1],this.bbox[2],this.bbox[3]),this.rootRegion.beforeUpdate();for(var n=0;n<r;n++)this.rootRegion.addNode(this.nodes[n]);this.rootRegion.afterUpdate()}for(var n=0;n<r;n++){var l=this.nodes[n];y.copy(l.forcePrev,l.force),y.set(l.force,0,0)}for(var n=0;n<r;n++){var o=this.nodes[n];if(this.barnesHutOptimize)this.applyRegionToNodeRepulsion(this.rootRegion,o);else for(var s=n+1;s<r;s++){var u=this.nodes[s];this.applyNodeToNodeRepulsion(o,u,!1)}this.gravity>0&&(this.strongGravityMode?this.applyNodeStrongGravity(o):this.applyNodeGravity(o))}for(var n=0;n<this.edges.length;n++)this.applyEdgeAttraction(this.edges[n]);for(var f=0,e=0,t=y.create(),n=0;n<r;n++){var l=this.nodes[n],i=y.dist(l.force,l.forcePrev);f+=i*l.mass,y.add(t,l.force,l.forcePrev);var c=y.len(t)*.5;e+=c*l.mass,this._swingingArr[n]=i}var p=this.jitterTolerence*this.jitterTolerence*e/f;this._globalSpeed>0&&(p=Math.min(p/this._globalSpeed,1.5)*this._globalSpeed),this._globalSpeed=p;for(var n=0;n<r;n++){var l=this.nodes[n],i=this._swingingArr[n],A=.1*p/(1+p*Math.sqrt(i)),x=y.len(l.force);x>0&&(A=Math.min(x*A,10)/x,y.scaleAndAdd(l.position,l.position,l.force,A))}},d.applyRegionToNodeRepulsion=function(){var r=y.create();return function(l,o){if(l.node)this.applyNodeToNodeRepulsion(l.node,o,!0);else{y.sub(r,o.position,l.centerOfMass);var s=r[0]*r[0]+r[1]*r[1];if(s>this.barnesHutTheta*l.size*l.size){var u=this.scaling*o.mass*l.mass/s;y.scaleAndAdd(o.force,o.force,r,u)}else for(var f=0;f<l.nSubRegions;f++)this.applyRegionToNodeRepulsion(l.subRegions[f],o)}}}(),d.applyNodeToNodeRepulsion=function(){var r=y.create();return function(l,o,s){if(l!=o){y.sub(r,l.position,o.position);var u=r[0]*r[0]+r[1]*r[1];if(u!==0){var f;if(this.preventOverlap){var e=Math.sqrt(u);if(e=e-l.size-o.size,e>0)f=this.scaling*l.mass*o.mass/(e*e);else if(e<0)f=this.scaling*100*l.mass*o.mass;else return}else f=this.scaling*l.mass*o.mass/u;y.scaleAndAdd(l.force,l.force,r,f),y.scaleAndAdd(o.force,o.force,r,-f)}}}}(),d.applyEdgeAttraction=function(){var r=y.create();return function(l){var o=l.source,s=l.target;y.sub(r,o.position,s.position);var u=y.len(r),f;this.edgeWeightInfluence===0?f=1:this.edgeWeightInfluence===1?f=l.weight:f=Math.pow(l.weight,this.edgeWeightInfluence);var e;this.preventOverlap&&(u=u-o.size-s.size,u<=0)||(this.linLogMode?e=-f*Math.log(u+1)/(u+1):e=-f,y.scaleAndAdd(o.force,o.force,r,e),y.scaleAndAdd(s.force,s.force,r,-e))}}(),d.applyNodeGravity=function(){var r=y.create();return function(n){y.sub(r,this.gravityCenter,n.position);var l=y.len(r);y.scaleAndAdd(n.force,n.force,r,this.gravity*n.mass/(l+1))}}(),d.applyNodeStrongGravity=function(){var r=y.create();return function(n){y.sub(r,this.gravityCenter,n.position),y.scaleAndAdd(n.force,n.force,r,this.gravity*n.mass)}}(),d.updateBBox=function(){for(var r=1/0,n=1/0,l=-1/0,o=-1/0,s=0;s<this.nodes.length;s++){var u=this.nodes[s].position;r=Math.min(r,u[0]),n=Math.min(n,u[1]),l=Math.max(l,u[0]),o=Math.max(o,u[1])}this.bbox[0]=r,this.bbox[1]=n,this.bbox[2]=l,this.bbox[3]=o},d.getGlobalSpeed=function(){return this._globalSpeed};var _=null;self.onmessage=function(r){switch(r.data.cmd){case"init":_=new a,_.initNodes(r.data.nodesPosition,r.data.nodesMass,r.data.nodesSize),_.initEdges(r.data.edges,r.data.edgesWeight);break;case"updateConfig":if(_)for(var n in r.data.config)_[n]=r.data.config[n];break;case"update":var l=r.data.steps;if(_){for(var o=0;o<l;o++)_.update();for(var s=_.nodes.length,u=new Float32Array(s*2),o=0;o<s;o++){var f=_.nodes[o];u[o*2]=f.position[0],u[o*2+1]=f.position[1]}self.postMessage({buffer:u.buffer,globalSpeed:_.getGlobalSpeed()},[u.buffer])}else{var e=new Float32Array;self.postMessage({buffer:e.buffer,globalSpeed:_.getGlobalSpeed()},[e.buffer])}break}}}M.a=D},function(H,M,g){"use strict";var D=g(8),y=g(3),v=D.a.extend(function(){return{zr:null,viewGL:null,minZoom:.2,maxZoom:5,_needsUpdate:!1,_dx:0,_dy:0,_zoom:1}},function(){this._mouseDownHandler=this._mouseDownHandler.bind(this),this._mouseWheelHandler=this._mouseWheelHandler.bind(this),this._mouseMoveHandler=this._mouseMoveHandler.bind(this),this._mouseUpHandler=this._mouseUpHandler.bind(this),this._update=this._update.bind(this)},{init:function(){var m=this.zr;m.on("mousedown",this._mouseDownHandler),m.on("mousewheel",this._mouseWheelHandler),m.on("globalout",this._mouseUpHandler),m.animation.on("frame",this._update)},setTarget:function(m){this._target=m},setZoom:function(m){this._zoom=Math.max(Math.min(m,this.maxZoom),this.minZoom),this._needsUpdate=!0},setOffset:function(m){this._dx=m[0],this._dy=m[1],this._needsUpdate=!0},getZoom:function(){return this._zoom},getOffset:function(){return[this._dx,this._dy]},_update:function(){if(this._target&&this._needsUpdate){var m=this._target,E=this._zoom;m.position.x=this._dx,m.position.y=this._dy,m.scale.set(E,E,E),this.zr.refresh(),this._needsUpdate=!1,this.trigger("update")}},_mouseDownHandler:function(m){if(!m.target){var E=m.offsetX,h=m.offsetY;if(!(this.viewGL&&!this.viewGL.containPoint(E,h))){this.zr.on("mousemove",this._mouseMoveHandler),this.zr.on("mouseup",this._mouseUpHandler);var a=this._convertPos(E,h);this._x=a.x,this._y=a.y}}},_convertPos:function(m,E){var h=this.viewGL.camera,a=this.viewGL.viewport;return{x:(m-a.x)/a.width*(h.right-h.left)+h.left,y:(E-a.y)/a.height*(h.bottom-h.top)+h.top}},_mouseMoveHandler:function(m){var E=this._convertPos(m.offsetX,m.offsetY);this._dx+=E.x-this._x,this._dy+=E.y-this._y,this._x=E.x,this._y=E.y,this._needsUpdate=!0},_mouseUpHandler:function(m){this.zr.off("mousemove",this._mouseMoveHandler),this.zr.off("mouseup",this._mouseUpHandler)},_mouseWheelHandler:function(m){m=m.event;var E=m.wheelDelta||-m.detail;if(E!==0){var h=m.offsetX,a=m.offsetY;if(!(this.viewGL&&!this.viewGL.containPoint(h,a))){var d=E>0?1.1:.9,_=Math.max(Math.min(this._zoom*d,this.maxZoom),this.minZoom);d=_/this._zoom;var r=this._convertPos(h,a),n=(r.x-this._dx)*(d-1),l=(r.y-this._dy)*(d-1);this._dx-=n,this._dy-=l,this._zoom=_,this._needsUpdate=!0}}},dispose:function(){var m=this.zr;m.off("mousedown",this._mouseDownHandler),m.off("mousemove",this._mouseMoveHandler),m.off("mouseup",this._mouseUpHandler),m.off("mousewheel",this._mouseWheelHandler),m.off("globalout",this._mouseUpHandler),m.animation.off("frame",this._update)}});M.a=v},function(H,M,g){"use strict";M.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(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(254),m=g(258)},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(2),m=g(3),E=g(20),h=g(255);y.a.extendChartView({type:"flowGL",__ecgl__:!0,init:function(a,d){this.viewGL=new E.a("orthographic"),this.groupGL=new v.a.Node,this.viewGL.add(this.groupGL),this._particleSurface=new h.a;var _=new v.a.Mesh({geometry:new v.a.PlaneGeometry,material:new v.a.Material({shader:new v.a.Shader({vertex:v.a.Shader.source("ecgl.color.vertex"),fragment:v.a.Shader.source("ecgl.color.fragment")}),transparent:!0})});_.material.enableTexture("diffuseMap"),this.groupGL.add(_),this._planeMesh=_},render:function(a,d,_){var r=this._particleSurface;r.setParticleType(a.get("particleType")),r.setSupersampling(a.get("supersampling")),this._updateData(a,_),this._updateCamera(_.getWidth(),_.getHeight(),_.getDevicePixelRatio());var n=m.a.firstNotNull(a.get("particleDensity"),128);r.setParticleDensity(n,n);var l=this._planeMesh,o=+new Date,s=this,u=!0;l.__percent=0,l.stopAnimation(),l.animate("",{loop:!0}).when(1e5,{__percent:1}).during(function(){var t=+new Date,i=Math.min(t-o,20);o=o+i,s._renderer&&(r.update(s._renderer,_,i/1e3,u),l.material.set("diffuseMap",r.getSurfaceTexture())),u=!1}).start();var f=a.getModel("itemStyle"),e=v.a.parseColor(f.get("color"));e[3]*=m.a.firstNotNull(f.get("opacity"),1),l.material.set("color",e),r.setColorTextureImage(a.get("colorTexture"),_),r.setParticleSize(a.get("particleSize")),r.particleSpeedScaling=a.get("particleSpeed"),r.motionBlurFactor=1-Math.pow(.1,a.get("particleTrail"))},updateTransform:function(a,d,_){this._updateData(a,_)},afterRender:function(a,d,_,r){var n=r.renderer;this._renderer=n},_updateData:function(a,d){var _=a.coordinateSystem,r=_.dimensions.map(function(S){return a.coordDimToDataDim(S)[0]}),n=a.getData(),l=n.getDataExtent(r[0]),o=n.getDataExtent(r[1]),s=a.get("gridWidth"),u=a.get("gridHeight");if(s==null||s==="auto"){var f=(l[1]-l[0])/(o[1]-o[0]);s=Math.round(Math.sqrt(f*n.count()))}(u==null||u==="auto")&&(u=Math.ceil(n.count()/s));var e=this._particleSurface.vectorFieldTexture,t=e.pixels;if(!t||t.length!==u*s*4)t=e.pixels=new Float32Array(s*u*4);else for(var i=0;i<t.length;i++)t[i]=0;var c=0,p=1/0,A=new Float32Array(n.count()*2),x=0,C=[[1/0,1/0],[-1/0,-1/0]];n.each([r[0],r[1],"vx","vy"],function(S,P,b,L){var R=_.dataToPoint([S,P]);A[x++]=R[0],A[x++]=R[1],C[0][0]=Math.min(R[0],C[0][0]),C[0][1]=Math.min(R[1],C[0][1]),C[1][0]=Math.max(R[0],C[1][0]),C[1][1]=Math.max(R[1],C[1][1]);var T=Math.sqrt(b*b+L*L);c=Math.max(c,T),p=Math.min(p,T)}),n.each(["vx","vy"],function(S,P,b){var L=Math.round((A[b*2]-C[0][0])/(C[1][0]-C[0][0])*(s-1)),R=u-1-Math.round((A[b*2+1]-C[0][1])/(C[1][1]-C[0][1])*(u-1)),T=(R*s+L)*4;t[T]=S/c*.5+.5,t[T+1]=P/c*.5+.5,t[T+3]=1}),e.width=s,e.height=u,a.get("coordinateSystem")==="bmap"&&this._fillEmptyPixels(e),e.dirty(),this._updatePlanePosition(C[0],C[1],a,d),this._updateGradientTexture(n.getVisual("visualMeta"),[p,c])},_fillEmptyPixels:function(a){var d=a.pixels,_=a.width,r=a.height;function n(A,x,C){A=Math.max(Math.min(A,_-1),0),x=Math.max(Math.min(x,r-1),0);var S=(x*(_-1)+A)*4;return d[S+3]===0?!1:(C[0]=d[S],C[1]=d[S+1],!0)}function l(A,x,C){C[0]=A[0]+x[0],C[1]=A[1]+x[1]}for(var o=[],s=[],u=[],f=[],e=[],t=0,i=0;i<r;i++)for(var c=0;c<_;c++){var p=(i*(_-1)+c)*4;d[p+3]===0&&(t=o[0]=o[1]=0,n(c-1,i,s)&&(t++,l(s,o,o)),n(c+1,i,u)&&(t++,l(u,o,o)),n(c,i-1,f)&&(t++,l(f,o,o)),n(c,i+1,e)&&(t++,l(e,o,o)),o[0]/=t,o[1]/=t,d[p]=o[0],d[p+1]=o[1]),d[p+3]=1}},_updateGradientTexture:function(a,d){if(!a||!a.length){this._particleSurface.setGradientTexture(null);return}this._gradientTexture=this._gradientTexture||new v.a.Texture2D({image:document.createElement("canvas")});var _=this._gradientTexture,r=_.image;r.width=200,r.height=1;var n=r.getContext("2d"),l=n.createLinearGradient(0,.5,r.width,.5);a[0].stops.forEach(function(o){var s;d[1]===d[0]?s=0:(s=o.value/d[1],s=Math.min(Math.max(s,0),1)),l.addColorStop(s,o.color)}),n.fillStyle=l,n.fillRect(0,0,r.width,r.height),_.dirty(),this._particleSurface.setGradientTexture(this._gradientTexture)},_updatePlanePosition:function(a,d,_,r){var n=this._limitInViewportAndFullFill(a,d,_,r);a=n.leftTop,d=n.rightBottom,this._particleSurface.setRegion(n.region),this._planeMesh.position.set((a[0]+d[0])/2,r.getHeight()-(a[1]+d[1])/2,0);var l=d[0]-a[0],o=d[1]-a[1];this._planeMesh.scale.set(l/2,o/2,1),this._particleSurface.resize(Math.max(Math.min(l,2048),1),Math.max(Math.min(o,2048),1)),this._renderer&&this._particleSurface.clearFrame(this._renderer)},_limitInViewportAndFullFill:function(a,d,_,r){var n=[Math.max(a[0],0),Math.max(a[1],0)],l=[Math.min(d[0],r.getWidth()),Math.min(d[1],r.getHeight())];if(_.get("coordinateSystem")==="bmap"){var o=_.getData().getDataExtent(_.coordDimToDataDim("lng")[0]),s=Math.floor(o[1]-o[0])>=359;s&&(n[0]>0&&(n[0]=0),l[0]<r.getWidth()&&(l[0]=r.getWidth()))}var u=d[0]-a[0],f=d[1]-a[1],e=l[0]-n[0],t=l[1]-n[1],i=[(n[0]-a[0])/u,1-t/f-(n[1]-a[1])/f,e/u,t/f];return{leftTop:n,rightBottom:l,region:i}},_updateCamera:function(a,d,_){this.viewGL.setViewport(0,0,a,d,_);var r=this.viewGL.camera;r.left=r.bottom=0,r.top=d,r.right=a,r.near=0,r.far=100,r.position.z=10},remove:function(){this._planeMesh.stopAnimation(),this.groupGL.removeAll()},dispose:function(){this._renderer&&this._particleSurface.dispose(this._renderer),this.groupGL.removeAll()}})},function(H,M,g){"use strict";var D=g(14),y=g(13),v=g(24),m=g(17),E=g(7),h=g(5),a=g(6),d=g(30),_=g(37),r=g(10),n=g(256),l=g(257);E.a.import(l.a);function o(u){var f=document.createElement("canvas");f.width=f.height=u;var e=f.getContext("2d");return e.fillStyle="#fff",e.arc(u/2,u/2,u/2,0,Math.PI*2),e.fill(),f}var s=function(){this.motionBlurFactor=.99,this.vectorFieldTexture=new h.a({type:a.a.FLOAT,flipY:!1}),this.particleLife=[5,20],this._particleType="point",this._particleSize=1,this.particleColor=[1,1,1,1],this.particleSpeedScaling=1,this._thisFrameTexture=null,this._particlePass=null,this._spawnTexture=null,this._particleTexture0=null,this._particleTexture1=null,this._particlePointsMesh=null,this._surfaceFrameBuffer=null,this._elapsedTime=0,this._scene=null,this._camera=null,this._lastFrameTexture=null,this._supersampling=1,this._downsampleTextures=[],this._width=512,this._height=512,this.init()};s.prototype={constructor:s,init:function(){var u={type:a.a.FLOAT,minFilter:a.a.NEAREST,magFilter:a.a.NEAREST,useMipmap:!1};this._spawnTexture=new h.a(u),this._particleTexture0=new h.a(u),this._particleTexture1=new h.a(u),this._frameBuffer=new r.a({depthBuffer:!1}),this._particlePass=new D.a({fragment:E.a.source("ecgl.vfParticle.particle.fragment")}),this._particlePass.setUniform("velocityTexture",this.vectorFieldTexture),this._particlePass.setUniform("spawnTexture",this._spawnTexture),this._downsamplePass=new D.a({fragment:E.a.source("clay.compositor.downsample")});var f=new v.a({renderOrder:10,material:new m.a({shader:new E.a(E.a.source("ecgl.vfParticle.renderPoints.vertex"),E.a.source("ecgl.vfParticle.renderPoints.fragment"))}),mode:v.a.POINTS,geometry:new y.a({dynamic:!0,mainAttribute:"texcoord0"})}),e=new v.a({renderOrder:10,material:new m.a({shader:new E.a(E.a.source("ecgl.vfParticle.renderLines.vertex"),E.a.source("ecgl.vfParticle.renderLines.fragment"))}),geometry:new n.a,culling:!1}),t=new v.a({material:new m.a({shader:new E.a(E.a.source("ecgl.color.vertex"),E.a.source("ecgl.color.fragment"))}),geometry:new _.a});t.material.enableTexture("diffuseMap"),this._particlePointsMesh=f,this._particleLinesMesh=e,this._lastFrameFullQuadMesh=t,this._camera=new d.a,this._thisFrameTexture=new h.a,this._lastFrameTexture=new h.a},setParticleDensity:function(u,f){for(var e=u*f,t=new Float32Array(e*4),i=0,c=this.particleLife,p=0;p<u;p++)for(var A=0;A<f;A++,i++){t[i*4]=Math.random(),t[i*4+1]=Math.random(),t[i*4+2]=Math.random();var x=(c[1]-c[0])*Math.random()+c[0];t[i*4+3]=x}this._particleType==="line"?this._setLineGeometry(u,f):this._setPointsGeometry(u,f),this._spawnTexture.width=u,this._spawnTexture.height=f,this._spawnTexture.pixels=t,this._particleTexture0.width=this._particleTexture1.width=u,this._particleTexture0.height=this._particleTexture1.height=f,this._particlePass.setUniform("textureSize",[u,f])},_setPointsGeometry:function(u,f){var e=u*f,t=this._particlePointsMesh.geometry,i=t.attributes;i.texcoord0.init(e);for(var c=0,p=0;p<u;p++)for(var A=0;A<f;A++,c++)i.texcoord0.value[c*2]=p/u,i.texcoord0.value[c*2+1]=A/f;t.dirty()},_setLineGeometry:function(u,f){var e=u*f,t=this._getParticleMesh().geometry;t.setLineCount(e),t.resetOffset();for(var i=0;i<u;i++)for(var c=0;c<f;c++)t.addLine([i/u,c/f]);t.dirty()},_getParticleMesh:function(){return this._particleType==="line"?this._particleLinesMesh:this._particlePointsMesh},update:function(u,f,e,t){var i=this._getParticleMesh(),c=this._frameBuffer,p=this._particlePass;t&&this._updateDownsampleTextures(u,f),i.material.set("size",this._particleSize*this._supersampling),i.material.set("color",this.particleColor),p.setUniform("speedScaling",this.particleSpeedScaling),c.attach(this._particleTexture1),p.setUniform("firstFrameTime",t?(this.particleLife[1]+this.particleLife[0])/2:0),p.setUniform("particleTexture",this._particleTexture0),p.setUniform("deltaTime",e),p.setUniform("elapsedTime",this._elapsedTime),p.render(u,c),i.material.set("particleTexture",this._particleTexture1),i.material.set("prevParticleTexture",this._particleTexture0),c.attach(this._thisFrameTexture),c.bind(u),u.gl.clear(u.gl.DEPTH_BUFFER_BIT|u.gl.COLOR_BUFFER_BIT);var A=this._lastFrameFullQuadMesh;A.material.set("diffuseMap",this._lastFrameTexture),A.material.set("color",[1,1,1,this.motionBlurFactor]),this._camera.update(!0),u.renderPass([A,i],this._camera),c.unbind(u),this._downsample(u),this._swapTexture(),this._elapsedTime+=e},_downsample:function(u){var f=this._downsampleTextures;if(f.length!==0)for(var e=0,t=this._thisFrameTexture,i=f[e];i;)this._frameBuffer.attach(i),this._downsamplePass.setUniform("texture",t),this._downsamplePass.setUniform("textureSize",[t.width,t.height]),this._downsamplePass.render(u,this._frameBuffer),t=i,i=f[++e]},getSurfaceTexture:function(){var u=this._downsampleTextures;return u.length>0?u[u.length-1]:this._lastFrameTexture},setRegion:function(u){this._particlePass.setUniform("region",u)},resize:function(u,f){this._lastFrameTexture.width=u*this._supersampling,this._lastFrameTexture.height=f*this._supersampling,this._thisFrameTexture.width=u*this._supersampling,this._thisFrameTexture.height=f*this._supersampling,this._width=u,this._height=f},setParticleSize:function(u){var f=this._getParticleMesh();if(u<=2){f.material.disableTexture("spriteTexture"),f.material.transparent=!1;return}this._spriteTexture||(this._spriteTexture=new h.a),(!this._spriteTexture.image||this._spriteTexture.image.width!==u)&&(this._spriteTexture.image=o(u),this._spriteTexture.dirty()),f.material.transparent=!0,f.material.enableTexture("spriteTexture"),f.material.set("spriteTexture",this._spriteTexture),this._particleSize=u},setGradientTexture:function(u){var f=this._getParticleMesh().material;f[u?"enableTexture":"disableTexture"]("gradientTexture"),f.setUniform("gradientTexture",u)},setColorTextureImage:function(u,f){var e=this._getParticleMesh().material;e.setTextureImage("colorTexture",u,f,{flipY:!0})},setParticleType:function(u){this._particleType=u},clearFrame:function(u){var f=this._frameBuffer;f.attach(this._lastFrameTexture),f.bind(u),u.gl.clear(u.gl.DEPTH_BUFFER_BIT|u.gl.COLOR_BUFFER_BIT),f.unbind(u)},setSupersampling:function(u){this._supersampling=u,this.resize(this._width,this._height)},_updateDownsampleTextures:function(u,f){for(var e=this._downsampleTextures,t=Math.max(Math.floor(Math.log(this._supersampling/f.getDevicePixelRatio())/Math.log(2)),0),i=2,c=this._width*this._supersampling,p=this._height*this._supersampling,A=0;A<t;A++)e[A]=e[A]||new h.a,e[A].width=c/i,e[A].height=p/i,i*=2;for(;A<e.length;A++)e[A].dispose(u);e.length=t},_swapTexture:function(){var u=this._particleTexture0;this._particleTexture0=this._particleTexture1,this._particleTexture1=u;var u=this._thisFrameTexture;this._thisFrameTexture=this._lastFrameTexture,this._lastFrameTexture=u},dispose:function(u){u.disposeFrameBuffer(this._frameBuffer),u.disposeTexture(this.vectorFieldTexture),u.disposeTexture(this._spawnTexture),u.disposeTexture(this._particleTexture0),u.disposeTexture(this._particleTexture1),u.disposeTexture(this._thisFrameTexture),u.disposeTexture(this._lastFrameTexture),u.disposeGeometry(this._particleLinesMesh.geometry),u.disposeGeometry(this._particlePointsMesh.geometry),u.disposeGeometry(this._lastFrameFullQuadMesh.geometry),this._spriteTexture&&u.disposeTexture(this._spriteTexture),this._particlePass.dispose(u),this._downsamplePass.dispose(u),this._downsampleTextures.forEach(function(f){f.dispose(u)})}},M.a=s},function(H,M,g){"use strict";var D=g(13),y=g(0),v=g.n(y),m=D.a.extend(function(){return{dynamic:!0,attributes:{position:new D.a.Attribute("position","float",3,"POSITION")}}},{resetOffset:function(){this._vertexOffset=0,this._faceOffset=0},setLineCount:function(E){var h=this.attributes,a=4*E,d=2*E;this.vertexCount!==a&&h.position.init(a),this.triangleCount!==d&&(d===0?this.indices=null:this.indices=this.vertexCount>65535?new Uint32Array(d*3):new Uint16Array(d*3))},addLine:function(E){var h=this._vertexOffset;this.attributes.position.set(h,[E[0],E[1],1]),this.attributes.position.set(h+1,[E[0],E[1],-1]),this.attributes.position.set(h+2,[E[0],E[1],2]),this.attributes.position.set(h+3,[E[0],E[1],-2]),this.setTriangleIndices(this._faceOffset++,[h,h+1,h+2]),this.setTriangleIndices(this._faceOffset++,[h+1,h+2,h+3]),this._vertexOffset+=4}});M.a=m},function(H,M,g){"use strict";M.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(H,M,g){"use strict";var D=g(0),y=g.n(D);y.a.extendSeriesModel({type:"series.flowGL",dependencies:["geo","grid","bmap"],visualColorAccessPath:"itemStyle.color",getInitialData:function(v,m){var E=y.a.getCoordinateSystemDimensions(this.get("coordinateSystem"))||["x","y"];if(E.length>2)throw new Error("flowGL can only be used on 2d coordinate systems.");E.push("vx","vy");var h=y.a.helper.completeDimensions(E,this.getSource(),{encodeDef:this.get("encode"),dimsDef:this.get("dimensions")}),a=new y.a.List(h,this);return a.initData(this.getSource()),a},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(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(260),m=g(261),E=g(16);y.a.registerVisual(Object(E.a)("linesGL"))},function(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(12),m=g.n(v),E=y.a.extendSeriesModel({type:"series.linesGL",dependencies:["grid","geo"],visualColorAccessPath:"lineStyle.color",streamEnabled:!0,init:function(h){var a=this._processFlatCoordsArray(h.data);this._flatCoords=a.flatCoords,this._flatCoordsOffset=a.flatCoordsOffset,a.flatCoords&&(h.data=new Float32Array(a.count)),E.superApply(this,"init",arguments)},mergeOption:function(h){var a=this._processFlatCoordsArray(h.data);this._flatCoords=a.flatCoords,this._flatCoordsOffset=a.flatCoordsOffset,a.flatCoords&&(h.data=new Float32Array(a.count)),E.superApply(this,"mergeOption",arguments)},appendData:function(h){var a=this._processFlatCoordsArray(h.data);a.flatCoords&&(this._flatCoords?(this._flatCoords=Object(v.concatArray)(this._flatCoords,a.flatCoords),this._flatCoordsOffset=Object(v.concatArray)(this._flatCoordsOffset,a.flatCoordsOffset)):(this._flatCoords=a.flatCoords,this._flatCoordsOffset=a.flatCoordsOffset),h.data=new Float32Array(a.count)),this.getRawData().appendData(h.data)},_getCoordsFromItemModel:function(h){var a=this.getData().getItemModel(h),d=a.option instanceof Array?a.option:a.getShallow("coords");if(!(d instanceof Array&&d.length>0&&d[0]instanceof Array))throw new Error("Invalid coords "+JSON.stringify(d)+". Lines must have 2d coords array in data item.");return d},getLineCoordsCount:function(h){return this._flatCoordsOffset?this._flatCoordsOffset[h*2+1]:this._getCoordsFromItemModel(h).length},getLineCoords:function(h,a){if(this._flatCoordsOffset){for(var d=this._flatCoordsOffset[h*2],_=this._flatCoordsOffset[h*2+1],r=0;r<_;r++)a[r]=a[r]||[],a[r][0]=this._flatCoords[d+r*2],a[r][1]=this._flatCoords[d+r*2+1];return _}else{for(var n=this._getCoordsFromItemModel(h),r=0;r<n.length;r++)a[r]=a[r]||[],a[r][0]=n[r][0],a[r][1]=n[r][1];return n.length}},_processFlatCoordsArray:function(h){var a=0;if(this._flatCoords&&(a=this._flatCoords.length),typeof h[0]=="number"){for(var d=h.length,_=new Uint32Array(d),r=new Float64Array(d),n=0,l=0,o=0,s=0;s<d;){o++;var u=h[s++];_[l++]=n+a,_[l++]=u;for(var f=0;f<u;f++){var e=h[s++],t=h[s++];if(r[n++]=e,r[n++]=t,s>d)throw new Error("Invalid data format.")}}return{flatCoordsOffset:new Uint32Array(_.buffer,0,l),flatCoords:r,count:o}}return{flatCoordsOffset:null,flatCoords:null,count:h.length}},getInitialData:function(h,a){var d=new y.a.List(["value"],this);return d.hasItemOption=!1,d.initData(h.data,[],function(_,r,n,l){if(_ instanceof Array)return NaN;d.hasItemOption=!0;var o=_.value;if(o!=null)return o instanceof Array?o[l]:o}),d},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(H,M,g){"use strict";var D=g(0),y=g.n(D),v=g(2),m=g(20),E=g(86),h=g(84),a=g(3);y.a.extendChartView({type:"linesGL",__ecgl__:!0,init:function(d,_){this.groupGL=new v.a.Node,this.viewGL=new m.a("orthographic"),this.viewGL.add(this.groupGL),this._glViewHelper=new h.a(this.viewGL),this._nativeLinesShader=v.a.createShader("ecgl.lines3D"),this._meshLinesShader=v.a.createShader("ecgl.meshLines3D"),this._linesMeshes=[],this._currentStep=0},render:function(d,_,r){this.groupGL.removeAll(),this._glViewHelper.reset(d,r);var n=this._linesMeshes[0];n||(n=this._linesMeshes[0]=this._createLinesMesh(d)),this._linesMeshes.length=1,this.groupGL.add(n),this._updateLinesMesh(d,n,0,d.getData().count()),this.viewGL.setPostEffect(d.getModel("postEffect"),r)},incrementalPrepareRender:function(d,_,r){this.groupGL.removeAll(),this._glViewHelper.reset(d,r),this._currentStep=0,this.viewGL.setPostEffect(d.getModel("postEffect"),r)},incrementalRender:function(d,_,r,n){var l=this._linesMeshes[this._currentStep];l||(l=this._createLinesMesh(_),this._linesMeshes[this._currentStep]=l),this._updateLinesMesh(_,l,d.start,d.end),this.groupGL.add(l),n.getZr().refresh(),this._currentStep++},updateTransform:function(d,_,r){d.coordinateSystem.getRoamTransform&&this._glViewHelper.updateTransform(d,r)},_createLinesMesh:function(d){var _=new v.a.Mesh({$ignorePicking:!0,material:new v.a.Material({shader:v.a.createShader("ecgl.lines3D"),transparent:!0,depthMask:!1,depthTest:!1}),geometry:new E.a({segmentScale:10,useNativeLine:!0,dynamic:!1}),mode:v.a.Mesh.LINES,culling:!1});return _},_updateLinesMesh:function(d,_,r,n){var l=d.getData();_.material.blend=d.get("blendMode")==="lighter"?v.a.additiveBlend:null;var o=d.get("lineStyle.curveness")||0,s=d.get("polyline"),u=_.geometry,f=d.coordinateSystem,e=a.a.firstNotNull(d.get("lineStyle.width"),1);e>1?(_.material.shader!==this._meshLinesShader&&_.material.attachShader(this._meshLinesShader),_.mode=v.a.Mesh.TRIANGLES):(_.material.shader!==this._nativeLinesShader&&_.material.attachShader(this._nativeLinesShader),_.mode=v.a.Mesh.LINES),r=r||0,n=n||l.count(),u.resetOffset();var t=0,i=0,c=[],p=[],A=[],x=[],C=[],S=.3,P=.7;function b(){p[0]=c[0]*P+x[0]*S-(c[1]-x[1])*o,p[1]=c[1]*P+x[1]*S-(x[0]-c[0])*o,A[0]=c[0]*S+x[0]*P-(c[1]-x[1])*o,A[1]=c[1]*S+x[1]*P-(x[0]-c[0])*o}if(s||o!==0)for(var L=r;L<n;L++)if(s){var R=d.getLineCoordsCount(L);t+=u.getPolylineVertexCount(R),i+=u.getPolylineTriangleCount(R)}else d.getLineCoords(L,C),this._glViewHelper.dataToPoint(f,C[0],c),this._glViewHelper.dataToPoint(f,C[1],x),b(),t+=u.getCubicCurveVertexCount(c,p,A,x),i+=u.getCubicCurveTriangleCount(c,p,A,x);else{var T=n-r;t+=T*u.getLineVertexCount(),i+=T*u.getLineVertexCount()}u.setVertexCount(t),u.setTriangleCount(i);for(var N=r,I=[],L=r;L<n;L++){v.a.parseColor(l.getItemVisual(N,"color"),I);var F=a.a.firstNotNull(l.getItemVisual(N,"opacity"),1);I[3]*=F;for(var R=d.getLineCoords(L,C),U=0;U<R;U++)this._glViewHelper.dataToPoint(f,C[U],C[U]);s?u.addPolyline(C,I,e,0,R):o!==0?(c=C[0],x=C[1],b(),u.addCubicCurve(c,p,A,x,I,e)):u.addPolyline(C,I,e,0,2),N++}},dispose:function(){this.groupGL.removeAll()},remove:function(){this.groupGL.removeAll()}})}])})},82702:function(ke,_e,B){var w=B(34155);(function(H,M){ke.exports=M()})(this,function(){"use strict";function H(k){var te=typeof k;return k!==null&&(te==="object"||te==="function")}function M(k){return typeof k=="function"}var g=void 0;Array.isArray?g=Array.isArray:g=function(k){return Object.prototype.toString.call(k)==="[object Array]"};var D=g,y=0,v=void 0,m=void 0,E=function(te,ie){t[y]=te,t[y+1]=ie,y+=2,y===2&&(m?m(i):p())};function h(k){m=k}function a(k){E=k}var d=typeof window!="undefined"?window:void 0,_=d||{},r=_.MutationObserver||_.WebKitMutationObserver,n=typeof self=="undefined"&&typeof w!="undefined"&&{}.toString.call(w)==="[object process]",l=typeof Uint8ClampedArray!="undefined"&&typeof importScripts!="undefined"&&typeof MessageChannel!="undefined";function o(){return function(){return w.nextTick(i)}}function s(){return typeof v!="undefined"?function(){v(i)}:e()}function u(){var k=0,te=new r(i),ie=document.createTextNode("");return te.observe(ie,{characterData:!0}),function(){ie.data=k=++k%2}}function f(){var k=new MessageChannel;return k.port1.onmessage=i,function(){return k.port2.postMessage(0)}}function e(){var k=setTimeout;return function(){return k(i,1)}}var t=new Array(1e3);function i(){for(var k=0;k<y;k+=2){var te=t[k],ie=t[k+1];te(ie),t[k]=void 0,t[k+1]=void 0}y=0}function c(){try{var k=Function("return this")().require("vertx");return v=k.runOnLoop||k.runOnContext,s()}catch(te){return e()}}var p=void 0;n?p=o():r?p=u():l?p=f():d===void 0?p=c():p=e();function A(k,te){var ie=this,J=new this.constructor(S);J[C]===void 0&&ve(J);var ce=ie._state;if(ce){var Se=arguments[ce-1];E(function(){return ue(ce,J,Se,ie._result)})}else ee(ie,J,k,te);return J}function x(k){var te=this;if(k&&typeof k=="object"&&k.constructor===te)return k;var ie=new te(S);return K(ie,k),ie}var C=Math.random().toString(36).substring(2);function S(){}var P=void 0,b=1,L=2;function R(){return new TypeError("You cannot resolve a promise with itself")}function T(){return new TypeError("A promises callback cannot return that same promise.")}function N(k,te,ie,J){try{k.call(te,ie,J)}catch(ce){return ce}}function I(k,te,ie){E(function(J){var ce=!1,Se=N(ie,te,function(Le){ce||(ce=!0,te!==Le?K(J,Le):V(J,Le))},function(Le){ce||(ce=!0,X(J,Le))},"Settle: "+(J._label||" unknown promise"));!ce&&Se&&(ce=!0,X(J,Se))},k)}function F(k,te){te._state===b?V(k,te._result):te._state===L?X(k,te._result):ee(te,void 0,function(ie){return K(k,ie)},function(ie){return X(k,ie)})}function U(k,te,ie){te.constructor===k.constructor&&ie===A&&te.constructor.resolve===x?F(k,te):ie===void 0?V(k,te):M(ie)?I(k,te,ie):V(k,te)}function K(k,te){if(k===te)X(k,R());else if(H(te)){var ie=void 0;try{ie=te.then}catch(J){X(k,J);return}U(k,te,ie)}else V(k,te)}function G(k){k._onerror&&k._onerror(k._result),oe(k)}function V(k,te){k._state===P&&(k._result=te,k._state=b,k._subscribers.length!==0&&E(oe,k))}function X(k,te){k._state===P&&(k._state=L,k._result=te,E(G,k))}function ee(k,te,ie,J){var ce=k._subscribers,Se=ce.length;k._onerror=null,ce[Se]=te,ce[Se+b]=ie,ce[Se+L]=J,Se===0&&k._state&&E(oe,k)}function oe(k){var te=k._subscribers,ie=k._state;if(te.length!==0){for(var J=void 0,ce=void 0,Se=k._result,Le=0;Le<te.length;Le+=3)J=te[Le],ce=te[Le+ie],J?ue(ie,J,ce,Se):ce(Se);k._subscribers.length=0}}function ue(k,te,ie,J){var ce=M(ie),Se=void 0,Le=void 0,ze=!0;if(ce){try{Se=ie(J)}catch(We){ze=!1,Le=We}if(te===Se){X(te,T());return}}else Se=J;te._state!==P||(ce&&ze?K(te,Se):ze===!1?X(te,Le):k===b?V(te,Se):k===L&&X(te,Se))}function Ae(k,te){try{te(function(J){K(k,J)},function(J){X(k,J)})}catch(ie){X(k,ie)}}var fe=0;function he(){return fe++}function ve(k){k[C]=fe++,k._state=void 0,k._result=void 0,k._subscribers=[]}function me(){return new Error("Array Methods must be provided an Array")}var Te=function(){function k(te,ie){this._instanceConstructor=te,this.promise=new te(S),this.promise[C]||ve(this.promise),D(ie)?(this.length=ie.length,this._remaining=ie.length,this._result=new Array(this.length),this.length===0?V(this.promise,this._result):(this.length=this.length||0,this._enumerate(ie),this._remaining===0&&V(this.promise,this._result))):X(this.promise,me())}return k.prototype._enumerate=function(ie){for(var J=0;this._state===P&&J<ie.length;J++)this._eachEntry(ie[J],J)},k.prototype._eachEntry=function(ie,J){var ce=this._instanceConstructor,Se=ce.resolve;if(Se===x){var Le=void 0,ze=void 0,We=!1;try{Le=ie.then}catch(je){We=!0,ze=je}if(Le===A&&ie._state!==P)this._settledAt(ie._state,J,ie._result);else if(typeof Le!="function")this._remaining--,this._result[J]=ie;else if(ce===j){var tt=new ce(S);We?X(tt,ze):U(tt,ie,Le),this._willSettleAt(tt,J)}else this._willSettleAt(new ce(function(je){return je(ie)}),J)}else this._willSettleAt(Se(ie),J)},k.prototype._settledAt=function(ie,J,ce){var Se=this.promise;Se._state===P&&(this._remaining--,ie===L?X(Se,ce):this._result[J]=ce),this._remaining===0&&V(Se,this._result)},k.prototype._willSettleAt=function(ie,J){var ce=this;ee(ie,void 0,function(Se){return ce._settledAt(b,J,Se)},function(Se){return ce._settledAt(L,J,Se)})},k}();function Ce(k){return new Te(this,k).promise}function ye(k){var te=this;return D(k)?new te(function(ie,J){for(var ce=k.length,Se=0;Se<ce;Se++)te.resolve(k[Se]).then(ie,J)}):new te(function(ie,J){return J(new TypeError("You must pass an array to race."))})}function q(k){var te=this,ie=new te(S);return X(ie,k),ie}function Q(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}function $(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}var j=function(){function k(te){this[C]=he(),this._result=this._state=void 0,this._subscribers=[],S!==te&&(typeof te!="function"&&Q(),this instanceof k?Ae(this,te):$())}return k.prototype.catch=function(ie){return this.then(null,ie)},k.prototype.finally=function(ie){var J=this,ce=J.constructor;return M(ie)?J.then(function(Se){return ce.resolve(ie()).then(function(){return Se})},function(Se){return ce.resolve(ie()).then(function(){throw Se})}):J.then(ie,ie)},k}();j.prototype.then=A,j.all=Ce,j.race=ye,j.resolve=x,j.reject=q,j._setScheduler=h,j._setAsap=a,j._asap=E;function re(){var k=void 0;if(typeof B.g!="undefined")k=B.g;else if(typeof self!="undefined")k=self;else try{k=Function("return this")()}catch(J){throw new Error("polyfill failed because global object is unavailable in this environment")}var te=k.Promise;if(te){var ie=null;try{ie=Object.prototype.toString.call(te.resolve())}catch(J){}if(ie==="[object Promise]"&&!te.cast)return}k.Promise=j}return j.polyfill=re,j.Promise=j,j})},17187:function(ke){"use strict";var _e=typeof Reflect=="object"?Reflect:null,B=_e&&typeof _e.apply=="function"?_e.apply:function(f,e,t){return Function.prototype.apply.call(f,e,t)},w;_e&&typeof _e.ownKeys=="function"?w=_e.ownKeys:Object.getOwnPropertySymbols?w=function(f){return Object.getOwnPropertyNames(f).concat(Object.getOwnPropertySymbols(f))}:w=function(f){return Object.getOwnPropertyNames(f)};function H(u){console&&console.warn&&console.warn(u)}var M=Number.isNaN||function(f){return f!==f};function g(){g.init.call(this)}ke.exports=g,ke.exports.once=l,g.EventEmitter=g,g.prototype._events=void 0,g.prototype._eventsCount=0,g.prototype._maxListeners=void 0;var D=10;function y(u){if(typeof u!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof u)}Object.defineProperty(g,"defaultMaxListeners",{enumerable:!0,get:function(){return D},set:function(u){if(typeof u!="number"||u<0||M(u))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+u+".");D=u}}),g.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},g.prototype.setMaxListeners=function(f){if(typeof f!="number"||f<0||M(f))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+f+".");return this._maxListeners=f,this};function v(u){return u._maxListeners===void 0?g.defaultMaxListeners:u._maxListeners}g.prototype.getMaxListeners=function(){return v(this)},g.prototype.emit=function(f){for(var e=[],t=1;t<arguments.length;t++)e.push(arguments[t]);var i=f==="error",c=this._events;if(c!==void 0)i=i&&c.error===void 0;else if(!i)return!1;if(i){var p;if(e.length>0&&(p=e[0]),p instanceof Error)throw p;var A=new Error("Unhandled error."+(p?" ("+p.message+")":""));throw A.context=p,A}var x=c[f];if(x===void 0)return!1;if(typeof x=="function")B(x,this,e);else for(var C=x.length,S=_(x,C),t=0;t<C;++t)B(S[t],this,e);return!0};function m(u,f,e,t){var i,c,p;if(y(e),c=u._events,c===void 0?(c=u._events=Object.create(null),u._eventsCount=0):(c.newListener!==void 0&&(u.emit("newListener",f,e.listener?e.listener:e),c=u._events),p=c[f]),p===void 0)p=c[f]=e,++u._eventsCount;else if(typeof p=="function"?p=c[f]=t?[e,p]:[p,e]:t?p.unshift(e):p.push(e),i=v(u),i>0&&p.length>i&&!p.warned){p.warned=!0;var A=new Error("Possible EventEmitter memory leak detected. "+p.length+" "+String(f)+" listeners added. Use emitter.setMaxListeners() to increase limit");A.name="MaxListenersExceededWarning",A.emitter=u,A.type=f,A.count=p.length,H(A)}return u}g.prototype.addListener=function(f,e){return m(this,f,e,!1)},g.prototype.on=g.prototype.addListener,g.prototype.prependListener=function(f,e){return m(this,f,e,!0)};function E(){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 h(u,f,e){var t={fired:!1,wrapFn:void 0,target:u,type:f,listener:e},i=E.bind(t);return i.listener=e,t.wrapFn=i,i}g.prototype.once=function(f,e){return y(e),this.on(f,h(this,f,e)),this},g.prototype.prependOnceListener=function(f,e){return y(e),this.prependListener(f,h(this,f,e)),this},g.prototype.removeListener=function(f,e){var t,i,c,p,A;if(y(e),i=this._events,i===void 0)return this;if(t=i[f],t===void 0)return this;if(t===e||t.listener===e)--this._eventsCount===0?this._events=Object.create(null):(delete i[f],i.removeListener&&this.emit("removeListener",f,t.listener||e));else if(typeof t!="function"){for(c=-1,p=t.length-1;p>=0;p--)if(t[p]===e||t[p].listener===e){A=t[p].listener,c=p;break}if(c<0)return this;c===0?t.shift():r(t,c),t.length===1&&(i[f]=t[0]),i.removeListener!==void 0&&this.emit("removeListener",f,A||e)}return this},g.prototype.off=g.prototype.removeListener,g.prototype.removeAllListeners=function(f){var e,t,i;if(t=this._events,t===void 0)return this;if(t.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):t[f]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete t[f]),this;if(arguments.length===0){var c=Object.keys(t),p;for(i=0;i<c.length;++i)p=c[i],p!=="removeListener"&&this.removeAllListeners(p);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(e=t[f],typeof e=="function")this.removeListener(f,e);else if(e!==void 0)for(i=e.length-1;i>=0;i--)this.removeListener(f,e[i]);return this};function a(u,f,e){var t=u._events;if(t===void 0)return[];var i=t[f];return i===void 0?[]:typeof i=="function"?e?[i.listener||i]:[i]:e?n(i):_(i,i.length)}g.prototype.listeners=function(f){return a(this,f,!0)},g.prototype.rawListeners=function(f){return a(this,f,!1)},g.listenerCount=function(u,f){return typeof u.listenerCount=="function"?u.listenerCount(f):d.call(u,f)},g.prototype.listenerCount=d;function d(u){var f=this._events;if(f!==void 0){var e=f[u];if(typeof e=="function")return 1;if(e!==void 0)return e.length}return 0}g.prototype.eventNames=function(){return this._eventsCount>0?w(this._events):[]};function _(u,f){for(var e=new Array(f),t=0;t<f;++t)e[t]=u[t];return e}function r(u,f){for(;f+1<u.length;f++)u[f]=u[f+1];u.pop()}function n(u){for(var f=new Array(u.length),e=0;e<f.length;++e)f[e]=u[e].listener||u[e];return f}function l(u,f){return new Promise(function(e,t){function i(p){u.removeListener(f,c),t(p)}function c(){typeof u.removeListener=="function"&&u.removeListener("error",i),e([].slice.call(arguments))}s(u,f,c,{once:!0}),f!=="error"&&o(u,i,{once:!0})})}function o(u,f,e){typeof u.on=="function"&&s(u,"error",f,e)}function s(u,f,e,t){if(typeof u.on=="function")t.once?u.once(f,e):u.on(f,e);else if(typeof u.addEventListener=="function")u.addEventListener(f,function i(c){t.once&&u.removeEventListener(f,i),e(c)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof u)}},67656:function(ke,_e,B){"use strict";B.r(_e),B.d(_e,{BaseInput:function(){return h},default:function(){return u}});var w=B(87462),H=B(1413),M=B(4942),g=B(71002),D=B(94184),y=B.n(D),v=B(67294),m=B(87887),E=function(e){var t,i,c=e.inputElement,p=e.prefixCls,A=e.prefix,x=e.suffix,C=e.addonBefore,S=e.addonAfter,P=e.className,b=e.style,L=e.disabled,R=e.readOnly,T=e.focused,N=e.triggerFocus,I=e.allowClear,F=e.value,U=e.handleReset,K=e.hidden,G=e.classes,V=e.classNames,X=e.dataAttrs,ee=e.styles,oe=e.components,ue=(oe==null?void 0:oe.affixWrapper)||"span",Ae=(oe==null?void 0:oe.groupWrapper)||"span",fe=(oe==null?void 0:oe.wrapper)||"span",he=(oe==null?void 0:oe.groupAddon)||"span",ve=(0,v.useRef)(null),me=function(J){var ce;(ce=ve.current)!==null&&ce!==void 0&&ce.contains(J.target)&&(N==null||N())},Te=function(){var J;if(!I)return null;var ce=!L&&!R&&F,Se="".concat(p,"-clear-icon"),Le=(0,g.Z)(I)==="object"&&I!==null&&I!==void 0&&I.clearIcon?I.clearIcon:"\u2716";return v.createElement("span",{onClick:U,onMouseDown:function(We){return We.preventDefault()},className:y()(Se,(J={},(0,M.Z)(J,"".concat(Se,"-hidden"),!ce),(0,M.Z)(J,"".concat(Se,"-has-suffix"),!!x),J)),role:"button",tabIndex:-1},Le)},Ce=(0,v.cloneElement)(c,{value:F,hidden:K,className:y()((t=c.props)===null||t===void 0?void 0:t.className,!(0,m.X3)(e)&&!(0,m.He)(e)&&P)||null,style:(0,H.Z)((0,H.Z)({},(i=c.props)===null||i===void 0?void 0:i.style),!(0,m.X3)(e)&&!(0,m.He)(e)?b:{})});if((0,m.X3)(e)){var ye,q="".concat(p,"-affix-wrapper"),Q=y()(q,(ye={},(0,M.Z)(ye,"".concat(q,"-disabled"),L),(0,M.Z)(ye,"".concat(q,"-focused"),T),(0,M.Z)(ye,"".concat(q,"-readonly"),R),(0,M.Z)(ye,"".concat(q,"-input-with-clear-btn"),x&&I&&F),ye),!(0,m.He)(e)&&P,G==null?void 0:G.affixWrapper,V==null?void 0:V.affixWrapper),$=(x||I)&&v.createElement("span",{className:y()("".concat(p,"-suffix"),V==null?void 0:V.suffix),style:ee==null?void 0:ee.suffix},Te(),x);Ce=v.createElement(ue,(0,w.Z)({className:Q,style:(0,H.Z)((0,H.Z)({},(0,m.He)(e)?void 0:b),ee==null?void 0:ee.affixWrapper),hidden:!(0,m.He)(e)&&K,onClick:me},X==null?void 0:X.affixWrapper,{ref:ve}),A&&v.createElement("span",{className:y()("".concat(p,"-prefix"),V==null?void 0:V.prefix),style:ee==null?void 0:ee.prefix},A),(0,v.cloneElement)(c,{value:F,hidden:null}),$)}if((0,m.He)(e)){var j="".concat(p,"-group"),re="".concat(j,"-addon"),k=y()("".concat(p,"-wrapper"),j,G==null?void 0:G.wrapper),te=y()("".concat(p,"-group-wrapper"),P,G==null?void 0:G.group);return v.createElement(Ae,{className:te,style:b,hidden:K},v.createElement(fe,{className:k},C&&v.createElement(he,{className:re},C),(0,v.cloneElement)(Ce,{hidden:null}),S&&v.createElement(he,{className:re},S)))}return Ce},h=E,a=B(74902),d=B(97685),_=B(45987),r=B(21770),n=B(98423),l=["autoComplete","onChange","onFocus","onBlur","onPressEnter","onKeyDown","prefixCls","disabled","htmlSize","className","maxLength","suffix","showCount","type","classes","classNames","styles"],o=(0,v.forwardRef)(function(f,e){var t=f.autoComplete,i=f.onChange,c=f.onFocus,p=f.onBlur,A=f.onPressEnter,x=f.onKeyDown,C=f.prefixCls,S=C===void 0?"rc-input":C,P=f.disabled,b=f.htmlSize,L=f.className,R=f.maxLength,T=f.suffix,N=f.showCount,I=f.type,F=I===void 0?"text":I,U=f.classes,K=f.classNames,G=f.styles,V=(0,_.Z)(f,l),X=(0,r.Z)(f.defaultValue,{value:f.value}),ee=(0,d.Z)(X,2),oe=ee[0],ue=ee[1],Ae=(0,v.useState)(!1),fe=(0,d.Z)(Ae,2),he=fe[0],ve=fe[1],me=(0,v.useRef)(null),Te=function(te){me.current&&(0,m.nH)(me.current,te)};(0,v.useImperativeHandle)(e,function(){return{focus:Te,blur:function(){var te;(te=me.current)===null||te===void 0||te.blur()},setSelectionRange:function(te,ie,J){var ce;(ce=me.current)===null||ce===void 0||ce.setSelectionRange(te,ie,J)},select:function(){var te;(te=me.current)===null||te===void 0||te.select()},input:me.current}}),(0,v.useEffect)(function(){ve(function(k){return k&&P?!1:k})},[P]);var Ce=function(te){f.value===void 0&&ue(te.target.value),me.current&&(0,m.rJ)(me.current,te,i)},ye=function(te){A&&te.key==="Enter"&&A(te),x==null||x(te)},q=function(te){ve(!0),c==null||c(te)},Q=function(te){ve(!1),p==null||p(te)},$=function(te){ue(""),Te(),me.current&&(0,m.rJ)(me.current,te,i)},j=function(){var te=(0,n.Z)(f,["prefixCls","onPressEnter","addonBefore","addonAfter","prefix","suffix","allowClear","defaultValue","showCount","classes","htmlSize","styles","classNames"]);return v.createElement("input",(0,w.Z)({autoComplete:t},te,{onChange:Ce,onFocus:q,onBlur:Q,onKeyDown:ye,className:y()(S,(0,M.Z)({},"".concat(S,"-disabled"),P),K==null?void 0:K.input),style:G==null?void 0:G.input,ref:me,size:b,type:F}))},re=function(){var te=Number(R)>0;if(T||N){var ie=(0,m.D7)(oe),J=(0,a.Z)(ie).length,ce=(0,g.Z)(N)==="object"?N.formatter({value:ie,count:J,maxLength:R}):"".concat(J).concat(te?" / ".concat(R):"");return v.createElement(v.Fragment,null,!!N&&v.createElement("span",{className:y()("".concat(S,"-show-count-suffix"),(0,M.Z)({},"".concat(S,"-show-count-has-suffix"),!!T),K==null?void 0:K.count),style:(0,H.Z)({},G==null?void 0:G.count)},ce),T)}return null};return v.createElement(h,(0,w.Z)({},V,{prefixCls:S,className:L,inputElement:j(),handleReset:$,value:(0,m.D7)(oe),focused:he,triggerFocus:Te,suffix:re(),disabled:P,classes:U,classNames:K,styles:G}))}),s=o,u=s},87887:function(ke,_e,B){"use strict";B.d(_e,{D7:function(){return D},He:function(){return w},X3:function(){return H},nH:function(){return g},rJ:function(){return M}});function w(y){return!!(y.addonBefore||y.addonAfter)}function H(y){return!!(y.prefix||y.suffix||y.allowClear)}function M(y,v,m,E){if(m){var h=v;if(v.type==="click"){var a=y.cloneNode(!0);h=Object.create(v,{target:{value:a},currentTarget:{value:a}}),a.value="",m(h);return}if(E!==void 0){h=Object.create(v,{target:{value:y},currentTarget:{value:y}}),y.value=E,m(h);return}m(h)}}function g(y,v){if(y){y.focus(v);var m=v||{},E=m.cursor;if(E){var h=y.value.length;switch(E){case"start":y.setSelectionRange(0,0);break;case"end":y.setSelectionRange(h,h);break;default:y.setSelectionRange(0,h)}}}}function D(y){return typeof y=="undefined"||y===null?"":String(y)}},78595:function(ke,_e,B){"use strict";B.d(_e,{iz:function(){return ni},ck:function(){return mr},BW:function(){return Rn},sN:function(){return mr},Wd:function(){return zn},ZP:function(){return gi},Xl:function(){return ce}});var w=B(87462),H=B(4942),M=B(1413),g=B(74902),D=B(97685),y=B(45987),v=B(94184),m=B.n(v),E=B(67294),h=B(48555);function a(){return!!(typeof window!="undefined"&&window.document&&window.document.createElement)}var d=a()?E.useLayoutEffect:E.useEffect,_=function(Fe,it){var ct=E.useRef(!0);d(function(){return Fe(ct.current)},it),d(function(){return ct.current=!1,function(){ct.current=!0}},[])},r=function(Fe,it){_(function(ct){if(!ct)return Fe()},it)},n=_,l=["prefixCls","invalidate","item","renderItem","responsive","responsiveDisabled","registerSize","itemKey","className","style","children","display","order","component"],o=void 0;function s(Re,Fe){var it=Re.prefixCls,ct=Re.invalidate,et=Re.item,St=Re.renderItem,Et=Re.responsive,$t=Re.responsiveDisabled,ar=Re.registerSize,tr=Re.itemKey,br=Re.className,yr=Re.style,Ur=Re.children,Fr=Re.display,gr=Re.order,Wr=Re.component,Hr=Wr===void 0?"div":Wr,Lr=(0,y.Z)(Re,l),Sr=Et&&!Fr;function Dr(Ye){ar(tr,Ye)}E.useEffect(function(){return function(){Dr(null)}},[]);var ne=St&&et!==o?St(et):Ur,ae;ct||(ae={opacity:Sr?0:1,height:Sr?0:o,overflowY:Sr?"hidden":o,order:Et?gr:o,pointerEvents:Sr?"none":o,position:Sr?"absolute":o});var Be={};Sr&&(Be["aria-hidden"]=!0);var Me=E.createElement(Hr,(0,w.Z)({className:m()(!ct&&it,br),style:(0,M.Z)((0,M.Z)({},ae),yr)},Be,Lr,{ref:Fe}),ne);return Et&&(Me=E.createElement(h.Z,{onResize:function(at){var vt=at.offsetWidth;Dr(vt)},disabled:$t},Me)),Me}var u=E.forwardRef(s);u.displayName="Item";var f=u;function e(Re){var Fe=E.useRef();Fe.current=Re;var it=E.useCallback(function(){for(var ct,et=arguments.length,St=new Array(et),Et=0;Et<et;Et++)St[Et]=arguments[Et];return(ct=Fe.current)===null||ct===void 0?void 0:ct.call.apply(ct,[Fe].concat(St))},[]);return it}var t=B(73935),i=function(Fe){return+setTimeout(Fe,16)},c=function(Fe){return clearTimeout(Fe)};typeof window!="undefined"&&"requestAnimationFrame"in window&&(i=function(Fe){return window.requestAnimationFrame(Fe)},c=function(Fe){return window.cancelAnimationFrame(Fe)});var p=0,A=new Map;function x(Re){A.delete(Re)}var C=function(Fe){var it=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1;p+=1;var ct=p;function et(St){if(St===0)x(ct),Fe();else{var Et=i(function(){et(St-1)});A.set(ct,Et)}}return et(it),ct};C.cancel=function(Re){var Fe=A.get(Re);return x(Fe),c(Fe)};var S=C;function P(Re){if(typeof MessageChannel=="undefined")S(Re);else{var Fe=new MessageChannel;Fe.port1.onmessage=function(){return Re()},Fe.port2.postMessage(void 0)}}function b(){var Re=E.useRef(null),Fe=function(ct){Re.current||(Re.current=[],P(function(){(0,t.unstable_batchedUpdates)(function(){Re.current.forEach(function(et){et()}),Re.current=null})})),Re.current.push(ct)};return Fe}function L(Re,Fe){var it=E.useState(Fe),ct=(0,D.Z)(it,2),et=ct[0],St=ct[1],Et=e(function($t){Re(function(){St($t)})});return[et,Et]}var R=E.createContext(null),T=["component"],N=["className"],I=["className"],F=function(Fe,it){var ct=E.useContext(R);if(!ct){var et=Fe.component,St=et===void 0?"div":et,Et=(0,y.Z)(Fe,T);return E.createElement(St,(0,w.Z)({},Et,{ref:it}))}var $t=ct.className,ar=(0,y.Z)(ct,N),tr=Fe.className,br=(0,y.Z)(Fe,I);return E.createElement(R.Provider,{value:null},E.createElement(f,(0,w.Z)({ref:it,className:m()($t,tr)},ar,br)))},U=E.forwardRef(F);U.displayName="RawItem";var K=U,G=["prefixCls","data","renderItem","renderRawItem","itemKey","itemWidth","ssr","style","className","maxCount","renderRest","renderRawRest","suffix","component","itemComponent","onVisibleChange"],V="responsive",X="invalidate";function ee(Re){return"+ ".concat(Re.length," ...")}function oe(Re,Fe){var it=Re.prefixCls,ct=it===void 0?"rc-overflow":it,et=Re.data,St=et===void 0?[]:et,Et=Re.renderItem,$t=Re.renderRawItem,ar=Re.itemKey,tr=Re.itemWidth,br=tr===void 0?10:tr,yr=Re.ssr,Ur=Re.style,Fr=Re.className,gr=Re.maxCount,Wr=Re.renderRest,Hr=Re.renderRawRest,Lr=Re.suffix,Sr=Re.component,Dr=Sr===void 0?"div":Sr,ne=Re.itemComponent,ae=Re.onVisibleChange,Be=(0,y.Z)(Re,G),Me=yr==="full",Ye=b(),at=L(Ye,null),vt=(0,D.Z)(at,2),Mt=vt[0],Ee=vt[1],le=Mt||0,de=L(Ye,new Map),be=(0,D.Z)(de,2),Qe=be[0],Ge=be[1],Ne=L(Ye,0),mt=(0,D.Z)(Ne,2),Ct=mt[0],Pt=mt[1],pt=L(Ye,0),$e=(0,D.Z)(pt,2),Lt=$e[0],Ht=$e[1],It=L(Ye,0),yt=(0,D.Z)(It,2),Dt=yt[0],jt=yt[1],Ft=(0,E.useState)(null),Zt=(0,D.Z)(Ft,2),cr=Zt[0],dr=Zt[1],xr=(0,E.useState)(null),pr=(0,D.Z)(xr,2),Jt=pr[0],or=pr[1],sr=E.useMemo(function(){return Jt===null&&Me?Number.MAX_SAFE_INTEGER:Jt||0},[Jt,Mt]),ur=(0,E.useState)(!1),nn=(0,D.Z)(ur,2),an=nn[0],qr=nn[1],Br="".concat(ct,"-item"),vr=Math.max(Ct,Lt),$r=gr===V,en=St.length&&$r,lr=gr===X,Yt=en||typeof gr=="number"&&St.length>gr,ir=(0,E.useMemo)(function(){var er=St;return en?Mt===null&&Me?er=St:er=St.slice(0,Math.min(St.length,le/br)):typeof gr=="number"&&(er=St.slice(0,gr)),er},[St,br,Mt,gr,en]),Tr=(0,E.useMemo)(function(){return en?St.slice(sr+1):St.slice(ir.length)},[St,ir,en,sr]),Ar=(0,E.useCallback)(function(er,fr){var Nr;return typeof ar=="function"?ar(er):(Nr=ar&&(er==null?void 0:er[ar]))!==null&&Nr!==void 0?Nr:fr},[ar]),Cr=(0,E.useCallback)(Et||function(er){return er},[Et]);function rr(er,fr,Nr){Jt===er&&(fr===void 0||fr===cr)||(or(er),Nr||(qr(er<St.length-1),ae==null||ae(er)),fr!==void 0&&dr(fr))}function zr(er,fr){Ee(fr.clientWidth)}function kr(er,fr){Ge(function(Nr){var tn=new Map(Nr);return fr===null?tn.delete(er):tn.set(er,fr),tn})}function Vr(er,fr){Ht(fr),Pt(Lt)}function Yr(er,fr){jt(fr)}function on(er){return Qe.get(Ar(ir[er],er))}n(function(){if(le&&typeof vr=="number"&&ir){var er=Dt,fr=ir.length,Nr=fr-1;if(!fr){rr(0,null);return}for(var tn=0;tn<fr;tn+=1){var gn=on(tn);if(Me&&(gn=gn||0),gn===void 0){rr(tn-1,void 0,!0);break}if(er+=gn,Nr===0&&er<=le||tn===Nr-1&&er+on(Nr)<=le){rr(Nr,null);break}else if(er+vr>le){rr(tn-1,er-gn-Dt+Lt);break}}Lr&&on(0)+Dt>le&&dr(null)}},[le,Qe,Lt,Dt,Ar,ir]);var mn=an&&!!Tr.length,fn={};cr!==null&&en&&(fn={position:"absolute",left:cr,top:0});var Qr={prefixCls:Br,responsive:en,component:ne,invalidate:lr},bn=$t?function(er,fr){var Nr=Ar(er,fr);return E.createElement(R.Provider,{key:Nr,value:(0,M.Z)((0,M.Z)({},Qr),{},{order:fr,item:er,itemKey:Nr,registerSize:kr,display:fr<=sr})},$t(er,fr))}:function(er,fr){var Nr=Ar(er,fr);return E.createElement(f,(0,w.Z)({},Qr,{order:fr,key:Nr,item:er,renderItem:Cr,itemKey:Nr,registerSize:kr,display:fr<=sr}))},An,Cn={order:mn?sr:Number.MAX_SAFE_INTEGER,className:"".concat(Br,"-rest"),registerSize:Vr,display:mn};if(Hr)Hr&&(An=E.createElement(R.Provider,{value:(0,M.Z)((0,M.Z)({},Qr),Cn)},Hr(Tr)));else{var hn=Wr||ee;An=E.createElement(f,(0,w.Z)({},Qr,Cn),typeof hn=="function"?hn(Tr):hn)}var Jr=E.createElement(Dr,(0,w.Z)({className:m()(!lr&&ct,Fr),style:Ur,ref:Fe},Be),ir.map(bn),Yt?An:null,Lr&&E.createElement(f,(0,w.Z)({},Qr,{responsive:$r,responsiveDisabled:!en,order:sr,className:"".concat(Br,"-suffix"),registerSize:Yr,display:!0,style:fn}),Lr));return $r&&(Jr=E.createElement(h.Z,{onResize:zr,disabled:!en},Jr)),Jr}var ue=E.forwardRef(oe);ue.displayName="Overflow",ue.Item=K,ue.RESPONSIVE=V,ue.INVALIDATE=X;var Ae=ue,fe=Ae,he=B(21770),ve=B(80334),me=B(91881),Te=E.createContext(null);function Ce(Re,Fe){return Re===void 0?null:"".concat(Re,"-").concat(Fe)}function ye(Re){var Fe=E.useContext(Te);return Ce(Fe,Re)}var q=B(56982),Q=["children","locked"],$=E.createContext(null);function j(Re,Fe){var it=(0,M.Z)({},Re);return Object.keys(Fe).forEach(function(ct){var et=Fe[ct];et!==void 0&&(it[ct]=et)}),it}function re(Re){var Fe=Re.children,it=Re.locked,ct=(0,y.Z)(Re,Q),et=E.useContext($),St=(0,q.Z)(function(){return j(et,ct)},[et,ct],function(Et,$t){return!it&&(Et[0]!==$t[0]||!(0,me.Z)(Et[1],$t[1],!0))});return E.createElement($.Provider,{value:St},Fe)}var k=[],te=E.createContext(null);function ie(){return E.useContext(te)}var J=E.createContext(k);function ce(Re){var Fe=E.useContext(J);return E.useMemo(function(){return Re!==void 0?[].concat((0,g.Z)(Fe),[Re]):Fe},[Fe,Re])}var Se=E.createContext(null),Le=E.createContext({}),ze=Le,We=B(15105),tt=B(75164),je=function(Re){if(!Re)return!1;if(Re instanceof Element){if(Re.offsetParent)return!0;if(Re.getBBox){var Fe=Re.getBBox(),it=Fe.width,ct=Fe.height;if(it||ct)return!0}if(Re.getBoundingClientRect){var et=Re.getBoundingClientRect(),St=et.width,Et=et.height;if(St||Et)return!0}}return!1};function pe(Re){var Fe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(je(Re)){var it=Re.nodeName.toLowerCase(),ct=["input","select","textarea","button"].includes(it)||Re.isContentEditable||it==="a"&&!!Re.getAttribute("href"),et=Re.getAttribute("tabindex"),St=Number(et),Et=null;return et&&!Number.isNaN(St)?Et=St:ct&&Et===null&&(Et=0),ct&&Re.disabled&&(Et=null),Et!==null&&(Et>=0||Fe&&Et<0)}return!1}function Oe(Re){var Fe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,it=(0,g.Z)(Re.querySelectorAll("*")).filter(function(ct){return pe(ct,Fe)});return pe(Re,Fe)&&it.unshift(Re),it}var Ie=null;function Pe(){Ie=document.activeElement}function ot(){Ie=null}function ht(){if(Ie)try{Ie.focus()}catch(Re){}}function dt(Re,Fe){if(Fe.keyCode===9){var it=Oe(Re),ct=it[Fe.shiftKey?0:it.length-1],et=ct===document.activeElement||Re===document.activeElement;if(et){var St=it[Fe.shiftKey?it.length-1:0];St.focus(),Fe.preventDefault()}}}var At=We.Z.LEFT,Ot=We.Z.RIGHT,Ke=We.Z.UP,Xe=We.Z.DOWN,Je=We.Z.ENTER,Nt=We.Z.ESC,ut=We.Z.HOME,Kt=We.Z.END,_t=[Ke,Xe,At,Ot];function ge(Re,Fe,it,ct){var et,St,Et,$t,ar="prev",tr="next",br="children",yr="parent";if(Re==="inline"&&ct===Je)return{inlineTrigger:!0};var Ur=(et={},(0,H.Z)(et,Ke,ar),(0,H.Z)(et,Xe,tr),et),Fr=(St={},(0,H.Z)(St,At,it?tr:ar),(0,H.Z)(St,Ot,it?ar:tr),(0,H.Z)(St,Xe,br),(0,H.Z)(St,Je,br),St),gr=(Et={},(0,H.Z)(Et,Ke,ar),(0,H.Z)(Et,Xe,tr),(0,H.Z)(Et,Je,br),(0,H.Z)(Et,Nt,yr),(0,H.Z)(Et,At,it?br:yr),(0,H.Z)(Et,Ot,it?yr:br),Et),Wr={inline:Ur,horizontal:Fr,vertical:gr,inlineSub:Ur,horizontalSub:gr,verticalSub:gr},Hr=($t=Wr["".concat(Re).concat(Fe?"":"Sub")])===null||$t===void 0?void 0:$t[ct];switch(Hr){case ar:return{offset:-1,sibling:!0};case tr:return{offset:1,sibling:!0};case yr:return{offset:-1,sibling:!1};case br:return{offset:1,sibling:!1};default:return null}}function we(Re){for(var Fe=Re;Fe;){if(Fe.getAttribute("data-menu-list"))return Fe;Fe=Fe.parentElement}return null}function Ue(Re,Fe){for(var it=Re||document.activeElement;it;){if(Fe.has(it))return it;it=it.parentElement}return null}function De(Re,Fe){var it=Oe(Re,!0);return it.filter(function(ct){return Fe.has(ct)})}function nt(Re,Fe,it){var ct=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1;if(!Re)return null;var et=De(Re,Fe),St=et.length,Et=et.findIndex(function($t){return it===$t});return ct<0?Et===-1?Et=St-1:Et-=1:ct>0&&(Et+=1),Et=(Et+St)%St,et[Et]}function qe(Re,Fe,it,ct,et,St,Et,$t,ar,tr){var br=E.useRef(),yr=E.useRef();yr.current=Fe;var Ur=function(){tt.Z.cancel(br.current)};return E.useEffect(function(){return function(){Ur()}},[]),function(Fr){var gr=Fr.which;if([].concat(_t,[Je,Nt,ut,Kt]).includes(gr)){var Wr,Hr,Lr,Sr=function(){Wr=new Set,Hr=new Map,Lr=new Map;var be=St();return be.forEach(function(Qe){var Ge=document.querySelector("[data-menu-id='".concat(Ce(ct,Qe),"']"));Ge&&(Wr.add(Ge),Lr.set(Ge,Qe),Hr.set(Qe,Ge))}),Wr};Sr();var Dr=Hr.get(Fe),ne=Ue(Dr,Wr),ae=Lr.get(ne),Be=ge(Re,Et(ae,!0).length===1,it,gr);if(!Be&&gr!==ut&&gr!==Kt)return;(_t.includes(gr)||[ut,Kt].includes(gr))&&Fr.preventDefault();var Me=function(be){if(be){var Qe=be,Ge=be.querySelector("a");Ge!=null&&Ge.getAttribute("href")&&(Qe=Ge);var Ne=Lr.get(be);$t(Ne),Ur(),br.current=(0,tt.Z)(function(){yr.current===Ne&&Qe.focus()})}};if([ut,Kt].includes(gr)||Be.sibling||!ne){var Ye;!ne||Re==="inline"?Ye=et.current:Ye=we(ne);var at,vt=De(Ye,Wr);gr===ut?at=vt[0]:gr===Kt?at=vt[vt.length-1]:at=nt(Ye,Wr,ne,Be.offset),Me(at)}else if(Be.inlineTrigger)ar(ae);else if(Be.offset>0)ar(ae,!0),Ur(),br.current=(0,tt.Z)(function(){Sr();var de=ne.getAttribute("aria-controls"),be=document.getElementById(de),Qe=nt(be,Wr);Me(Qe)},5);else if(Be.offset<0){var Mt=Et(ae,!0),Ee=Mt[Mt.length-2],le=Hr.get(Ee);ar(Ee,!1),Me(le)}}tr==null||tr(Fr)}}function rt(Re){Promise.resolve().then(Re)}var ft="__RC_UTIL_PATH_SPLIT__",Tt=function(Fe){return Fe.join(ft)},Ze=function(Fe){return Fe.split(ft)},O="rc-menu-more";function W(){var Re=E.useState({}),Fe=(0,D.Z)(Re,2),it=Fe[1],ct=(0,E.useRef)(new Map),et=(0,E.useRef)(new Map),St=E.useState([]),Et=(0,D.Z)(St,2),$t=Et[0],ar=Et[1],tr=(0,E.useRef)(0),br=(0,E.useRef)(!1),yr=function(){br.current||it({})},Ur=(0,E.useCallback)(function(Dr,ne){var ae=Tt(ne);et.current.set(ae,Dr),ct.current.set(Dr,ae),tr.current+=1;var Be=tr.current;rt(function(){Be===tr.current&&yr()})},[]),Fr=(0,E.useCallback)(function(Dr,ne){var ae=Tt(ne);et.current.delete(ae),ct.current.delete(Dr)},[]),gr=(0,E.useCallback)(function(Dr){ar(Dr)},[]),Wr=(0,E.useCallback)(function(Dr,ne){var ae=ct.current.get(Dr)||"",Be=Ze(ae);return ne&&$t.includes(Be[0])&&Be.unshift(O),Be},[$t]),Hr=(0,E.useCallback)(function(Dr,ne){return Dr.some(function(ae){var Be=Wr(ae,!0);return Be.includes(ne)})},[Wr]),Lr=function(){var ne=(0,g.Z)(ct.current.keys());return $t.length&&ne.push(O),ne},Sr=(0,E.useCallback)(function(Dr){var ne="".concat(ct.current.get(Dr)).concat(ft),ae=new Set;return(0,g.Z)(et.current.keys()).forEach(function(Be){Be.startsWith(ne)&&ae.add(et.current.get(Be))}),ae},[]);return E.useEffect(function(){return function(){br.current=!0}},[]),{registerPath:Ur,unregisterPath:Fr,refreshOverflowKeys:gr,isSubPathKey:Hr,getKeyPath:Wr,getKeys:Lr,getSubPathKeys:Sr}}function z(Re){var Fe=E.useRef(Re);Fe.current=Re;var it=E.useCallback(function(){for(var ct,et=arguments.length,St=new Array(et),Et=0;Et<et;Et++)St[Et]=arguments[Et];return(ct=Fe.current)===null||ct===void 0?void 0:ct.call.apply(ct,[Fe].concat(St))},[]);return Re?it:void 0}var Z=Math.random().toFixed(5).toString().slice(2),Y=0;function se(Re){var Fe=(0,he.Z)(Re,{value:Re}),it=(0,D.Z)(Fe,2),ct=it[0],et=it[1];return E.useEffect(function(){Y+=1;var St="".concat(Z,"-").concat(Y);et("rc-menu-uuid-".concat(St))},[]),ct}var xe=B(15671),lt=B(43144),Ve=B(60136),Rt=B(51630),kt=B(98423),Ut=B(42550);function st(Re,Fe,it,ct){var et=E.useContext($),St=et.activeKey,Et=et.onActive,$t=et.onInactive,ar={active:St===Re};return Fe||(ar.onMouseEnter=function(tr){it==null||it({key:Re,domEvent:tr}),Et(Re)},ar.onMouseLeave=function(tr){ct==null||ct({key:Re,domEvent:tr}),$t(Re)}),ar}function bt(Re){var Fe=E.useContext($),it=Fe.mode,ct=Fe.rtl,et=Fe.inlineIndent;if(it!=="inline")return null;var St=Re;return ct?{paddingRight:St*et}:{paddingLeft:St*et}}function wt(Re){var Fe=Re.icon,it=Re.props,ct=Re.children,et;return Fe===null||Fe===!1?null:(typeof Fe=="function"?et=E.createElement(Fe,(0,M.Z)({},it)):typeof Fe!="boolean"&&(et=Fe),et||ct||null)}var gt=["item"];function xt(Re){var Fe=Re.item,it=(0,y.Z)(Re,gt);return Object.defineProperty(it,"item",{get:function(){return(0,ve.ZP)(!1,"`info.item` is deprecated since we will move to function component that not provides React Node instance in future."),Fe}}),it}var Gt=["title","attribute","elementRef"],Vt=["style","className","eventKey","warnKey","disabled","itemIcon","children","role","onMouseEnter","onMouseLeave","onClick","onKeyDown","onFocus"],Xt=["active"],hr=function(Re){(0,Ve.Z)(it,Re);var Fe=(0,Rt.Z)(it);function it(){return(0,xe.Z)(this,it),Fe.apply(this,arguments)}return(0,lt.Z)(it,[{key:"render",value:function(){var et=this.props,St=et.title,Et=et.attribute,$t=et.elementRef,ar=(0,y.Z)(et,Gt),tr=(0,kt.Z)(ar,["eventKey","popupClassName","popupOffset","onTitleClick"]);return(0,ve.ZP)(!Et,"`attribute` of Menu.Item is deprecated. Please pass attribute directly."),E.createElement(fe.Item,(0,w.Z)({},Et,{title:typeof St=="string"?St:void 0},tr,{ref:$t}))}}]),it}(E.Component),Pr=E.forwardRef(function(Re,Fe){var it,ct=Re.style,et=Re.className,St=Re.eventKey,Et=Re.warnKey,$t=Re.disabled,ar=Re.itemIcon,tr=Re.children,br=Re.role,yr=Re.onMouseEnter,Ur=Re.onMouseLeave,Fr=Re.onClick,gr=Re.onKeyDown,Wr=Re.onFocus,Hr=(0,y.Z)(Re,Vt),Lr=ye(St),Sr=E.useContext($),Dr=Sr.prefixCls,ne=Sr.onItemClick,ae=Sr.disabled,Be=Sr.overflowDisabled,Me=Sr.itemIcon,Ye=Sr.selectedKeys,at=Sr.onActive,vt=E.useContext(ze),Mt=vt._internalRenderMenuItem,Ee="".concat(Dr,"-item"),le=E.useRef(),de=E.useRef(),be=ae||$t,Qe=(0,Ut.x1)(Fe,de),Ge=ce(St),Ne=function(Zt){return{key:St,keyPath:(0,g.Z)(Ge).reverse(),item:le.current,domEvent:Zt}},mt=ar||Me,Ct=st(St,be,yr,Ur),Pt=Ct.active,pt=(0,y.Z)(Ct,Xt),$e=Ye.includes(St),Lt=bt(Ge.length),Ht=function(Zt){if(!be){var cr=Ne(Zt);Fr==null||Fr(xt(cr)),ne(cr)}},It=function(Zt){if(gr==null||gr(Zt),Zt.which===We.Z.ENTER){var cr=Ne(Zt);Fr==null||Fr(xt(cr)),ne(cr)}},yt=function(Zt){at(St),Wr==null||Wr(Zt)},Dt={};Re.role==="option"&&(Dt["aria-selected"]=$e);var jt=E.createElement(hr,(0,w.Z)({ref:le,elementRef:Qe,role:br===null?"none":br||"menuitem",tabIndex:$t?null:-1,"data-menu-id":Be&&Lr?null:Lr},Hr,pt,Dt,{component:"li","aria-disabled":$t,style:(0,M.Z)((0,M.Z)({},Lt),ct),className:m()(Ee,(it={},(0,H.Z)(it,"".concat(Ee,"-active"),Pt),(0,H.Z)(it,"".concat(Ee,"-selected"),$e),(0,H.Z)(it,"".concat(Ee,"-disabled"),be),it),et),onClick:Ht,onKeyDown:It,onFocus:yt}),tr,E.createElement(wt,{props:(0,M.Z)((0,M.Z)({},Re),{},{isSelected:$e}),icon:mt}));return Mt&&(jt=Mt(jt,Re,{selected:$e})),jt});function Wt(Re,Fe){var it=Re.eventKey,ct=ie(),et=ce(it);return E.useEffect(function(){if(ct)return ct.registerPath(it,et),function(){ct.unregisterPath(it,et)}},[et]),ct?null:E.createElement(Pr,(0,w.Z)({},Re,{ref:Fe}))}var mr=E.forwardRef(Wt),_r=["className","children"],wr=function(Fe,it){var ct=Fe.className,et=Fe.children,St=(0,y.Z)(Fe,_r),Et=E.useContext($),$t=Et.prefixCls,ar=Et.mode,tr=Et.rtl;return E.createElement("ul",(0,w.Z)({className:m()($t,tr&&"".concat($t,"-rtl"),"".concat($t,"-sub"),"".concat($t,"-").concat(ar==="inline"?"inline":"vertical"),ct),role:"menu"},St,{"data-menu-list":!0,ref:it}),et)},Rr=E.forwardRef(wr);Rr.displayName="SubMenuList";var un=Rr,zt=B(50344);function Zr(Re,Fe){return(0,zt.Z)(Re).map(function(it,ct){if(E.isValidElement(it)){var et,St,Et=it.key,$t=(et=(St=it.props)===null||St===void 0?void 0:St.eventKey)!==null&&et!==void 0?et:Et,ar=$t==null;ar&&($t="tmp_key-".concat([].concat((0,g.Z)(Fe),[ct]).join("-")));var tr={key:$t,eventKey:$t};return E.cloneElement(it,tr)}return it})}var _n=B(62709),Mr={adjustX:1,adjustY:1},En={topLeft:{points:["bl","tl"],overflow:Mr},topRight:{points:["br","tr"],overflow:Mr},bottomLeft:{points:["tl","bl"],overflow:Mr},bottomRight:{points:["tr","br"],overflow:Mr},leftTop:{points:["tr","tl"],overflow:Mr},leftBottom:{points:["br","bl"],overflow:Mr},rightTop:{points:["tl","tr"],overflow:Mr},rightBottom:{points:["bl","br"],overflow:Mr}},xn={topLeft:{points:["bl","tl"],overflow:Mr},topRight:{points:["br","tr"],overflow:Mr},bottomLeft:{points:["tl","bl"],overflow:Mr},bottomRight:{points:["tr","br"],overflow:Mr},rightTop:{points:["tr","tl"],overflow:Mr},rightBottom:{points:["br","bl"],overflow:Mr},leftTop:{points:["tl","tr"],overflow:Mr},leftBottom:{points:["bl","br"],overflow:Mr}},rn=null;function Kr(Re,Fe,it){if(Fe)return Fe;if(it)return it[Re]||it.other}var He={horizontal:"bottomLeft",vertical:"rightTop","vertical-left":"rightTop","vertical-right":"leftTop"};function Ir(Re){var Fe=Re.prefixCls,it=Re.visible,ct=Re.children,et=Re.popup,St=Re.popupStyle,Et=Re.popupClassName,$t=Re.popupOffset,ar=Re.disabled,tr=Re.mode,br=Re.onVisibleChange,yr=E.useContext($),Ur=yr.getPopupContainer,Fr=yr.rtl,gr=yr.subMenuOpenDelay,Wr=yr.subMenuCloseDelay,Hr=yr.builtinPlacements,Lr=yr.triggerSubMenuAction,Sr=yr.forceSubMenuRender,Dr=yr.rootClassName,ne=yr.motion,ae=yr.defaultMotions,Be=E.useState(!1),Me=(0,D.Z)(Be,2),Ye=Me[0],at=Me[1],vt=Fr?(0,M.Z)((0,M.Z)({},xn),Hr):(0,M.Z)((0,M.Z)({},En),Hr),Mt=He[tr],Ee=Kr(tr,ne,ae),le=E.useRef(Ee);tr!=="inline"&&(le.current=Ee);var de=(0,M.Z)((0,M.Z)({},le.current),{},{leavedClassName:"".concat(Fe,"-hidden"),removeOnLeave:!1,motionAppear:!0}),be=E.useRef();return E.useEffect(function(){return be.current=(0,tt.Z)(function(){at(it)}),function(){tt.Z.cancel(be.current)}},[it]),E.createElement(_n.Z,{prefixCls:Fe,popupClassName:m()("".concat(Fe,"-popup"),(0,H.Z)({},"".concat(Fe,"-rtl"),Fr),Et,Dr),stretch:tr==="horizontal"?"minWidth":null,getPopupContainer:Ur,builtinPlacements:vt,popupPlacement:Mt,popupVisible:Ye,popup:et,popupStyle:St,popupAlign:$t&&{offset:$t},action:ar?[]:[Lr],mouseEnterDelay:gr,mouseLeaveDelay:Wr,onPopupVisibleChange:br,forceRender:Sr,popupMotion:de,fresh:!0},ct)}var Gr=B(62874);function cn(Re){var Fe=Re.id,it=Re.open,ct=Re.keyPath,et=Re.children,St="inline",Et=E.useContext($),$t=Et.prefixCls,ar=Et.forceSubMenuRender,tr=Et.motion,br=Et.defaultMotions,yr=Et.mode,Ur=E.useRef(!1);Ur.current=yr===St;var Fr=E.useState(!Ur.current),gr=(0,D.Z)(Fr,2),Wr=gr[0],Hr=gr[1],Lr=Ur.current?it:!1;E.useEffect(function(){Ur.current&&Hr(!1)},[yr]);var Sr=(0,M.Z)({},Kr(St,tr,br));ct.length>1&&(Sr.motionAppear=!1);var Dr=Sr.onVisibleChanged;return Sr.onVisibleChanged=function(ne){return!Ur.current&&!ne&&Hr(!0),Dr==null?void 0:Dr(ne)},Wr?null:E.createElement(re,{mode:St,locked:!Ur.current},E.createElement(Gr.Z,(0,w.Z)({visible:Lr},Sr,{forceRender:ar,removeOnLeave:!1,leavedClassName:"".concat($t,"-hidden")}),function(ne){var ae=ne.className,Be=ne.style;return E.createElement(un,{id:Fe,className:ae,style:Be},et)}))}var Xr=["style","className","title","eventKey","warnKey","disabled","internalPopupClose","children","itemIcon","expandIcon","popupClassName","popupOffset","popupStyle","onClick","onMouseEnter","onMouseLeave","onTitleClick","onTitleMouseEnter","onTitleMouseLeave"],wn=["active"],Un=function(Fe){var it,ct=Fe.style,et=Fe.className,St=Fe.title,Et=Fe.eventKey,$t=Fe.warnKey,ar=Fe.disabled,tr=Fe.internalPopupClose,br=Fe.children,yr=Fe.itemIcon,Ur=Fe.expandIcon,Fr=Fe.popupClassName,gr=Fe.popupOffset,Wr=Fe.popupStyle,Hr=Fe.onClick,Lr=Fe.onMouseEnter,Sr=Fe.onMouseLeave,Dr=Fe.onTitleClick,ne=Fe.onTitleMouseEnter,ae=Fe.onTitleMouseLeave,Be=(0,y.Z)(Fe,Xr),Me=ye(Et),Ye=E.useContext($),at=Ye.prefixCls,vt=Ye.mode,Mt=Ye.openKeys,Ee=Ye.disabled,le=Ye.overflowDisabled,de=Ye.activeKey,be=Ye.selectedKeys,Qe=Ye.itemIcon,Ge=Ye.expandIcon,Ne=Ye.onItemClick,mt=Ye.onOpenChange,Ct=Ye.onActive,Pt=E.useContext(ze),pt=Pt._internalRenderSubMenuItem,$e=E.useContext(Se),Lt=$e.isSubPathKey,Ht=ce(),It="".concat(at,"-submenu"),yt=Ee||ar,Dt=E.useRef(),jt=E.useRef(),Ft=yr!=null?yr:Qe,Zt=Ur!=null?Ur:Ge,cr=Mt.includes(Et),dr=!le&&cr,xr=Lt(be,Et),pr=st(Et,yt,ne,ae),Jt=pr.active,or=(0,y.Z)(pr,wn),sr=E.useState(!1),ur=(0,D.Z)(sr,2),nn=ur[0],an=ur[1],qr=function(Yr){yt||an(Yr)},Br=function(Yr){qr(!0),Lr==null||Lr({key:Et,domEvent:Yr})},vr=function(Yr){qr(!1),Sr==null||Sr({key:Et,domEvent:Yr})},$r=E.useMemo(function(){return Jt||(vt!=="inline"?nn||Lt([de],Et):!1)},[vt,Jt,de,nn,Et,Lt]),en=bt(Ht.length),lr=function(Yr){yt||(Dr==null||Dr({key:Et,domEvent:Yr}),vt==="inline"&&mt(Et,!cr))},Yt=z(function(Vr){Hr==null||Hr(xt(Vr)),Ne(Vr)}),ir=function(Yr){vt!=="inline"&&mt(Et,Yr)},Tr=function(){Ct(Et)},Ar=Me&&"".concat(Me,"-popup"),Cr=E.createElement("div",(0,w.Z)({role:"menuitem",style:en,className:"".concat(It,"-title"),tabIndex:yt?null:-1,ref:Dt,title:typeof St=="string"?St:null,"data-menu-id":le&&Me?null:Me,"aria-expanded":dr,"aria-haspopup":!0,"aria-controls":Ar,"aria-disabled":yt,onClick:lr,onFocus:Tr},or),St,E.createElement(wt,{icon:vt!=="horizontal"?Zt:void 0,props:(0,M.Z)((0,M.Z)({},Fe),{},{isOpen:dr,isSubMenu:!0})},E.createElement("i",{className:"".concat(It,"-arrow")}))),rr=E.useRef(vt);if(vt!=="inline"&&Ht.length>1?rr.current="vertical":rr.current=vt,!le){var zr=rr.current;Cr=E.createElement(Ir,{mode:zr,prefixCls:It,visible:!tr&&dr&&vt!=="inline",popupClassName:Fr,popupOffset:gr,popupStyle:Wr,popup:E.createElement(re,{mode:zr==="horizontal"?"vertical":zr},E.createElement(un,{id:Ar,ref:jt},br)),disabled:yt,onVisibleChange:ir},Cr)}var kr=E.createElement(fe.Item,(0,w.Z)({role:"none"},Be,{component:"li",style:ct,className:m()(It,"".concat(It,"-").concat(vt),et,(it={},(0,H.Z)(it,"".concat(It,"-open"),dr),(0,H.Z)(it,"".concat(It,"-active"),$r),(0,H.Z)(it,"".concat(It,"-selected"),xr),(0,H.Z)(it,"".concat(It,"-disabled"),yt),it)),onMouseEnter:Br,onMouseLeave:vr}),Cr,!le&&E.createElement(cn,{id:Ar,open:dr,keyPath:Ht},br));return pt&&(kr=pt(kr,Fe,{selected:xr,active:$r,open:dr,disabled:yt})),E.createElement(re,{onItemClick:Yt,mode:vt==="horizontal"?"vertical":vt,itemIcon:Ft,expandIcon:Zt},kr)};function zn(Re){var Fe=Re.eventKey,it=Re.children,ct=ce(Fe),et=Zr(it,ct),St=ie();E.useEffect(function(){if(St)return St.registerPath(Fe,ct),function(){St.unregisterPath(Fe,ct)}},[ct]);var Et;return St?Et=et:Et=E.createElement(Un,Re,et),E.createElement(J.Provider,{value:ct},Et)}var ci=B(71002),On=["className","title","eventKey","children"],mi=["children"],jn=function(Fe){var it=Fe.className,ct=Fe.title,et=Fe.eventKey,St=Fe.children,Et=(0,y.Z)(Fe,On),$t=E.useContext($),ar=$t.prefixCls,tr="".concat(ar,"-item-group");return E.createElement("li",(0,w.Z)({role:"presentation"},Et,{onClick:function(yr){return yr.stopPropagation()},className:m()(tr,it)}),E.createElement("div",{role:"presentation",className:"".concat(tr,"-title"),title:typeof ct=="string"?ct:void 0},ct),E.createElement("ul",{role:"group",className:"".concat(tr,"-list")},St))};function Rn(Re){var Fe=Re.children,it=(0,y.Z)(Re,mi),ct=ce(it.eventKey),et=Zr(Fe,ct),St=ie();return St?et:E.createElement(jn,(0,kt.Z)(it,["warnKey"]),et)}function ni(Re){var Fe=Re.className,it=Re.style,ct=E.useContext($),et=ct.prefixCls,St=ie();return St?null:E.createElement("li",{role:"separator",className:m()("".concat(et,"-item-divider"),Fe),style:it})}var Zn=["label","children","key","type"];function Nn(Re){return(Re||[]).map(function(Fe,it){if(Fe&&(0,ci.Z)(Fe)==="object"){var ct=Fe,et=ct.label,St=ct.children,Et=ct.key,$t=ct.type,ar=(0,y.Z)(ct,Zn),tr=Et!=null?Et:"tmp-".concat(it);return St||$t==="group"?$t==="group"?E.createElement(Rn,(0,w.Z)({key:tr},ar,{title:et}),Nn(St)):E.createElement(zn,(0,w.Z)({key:tr},ar,{title:et}),Nn(St)):$t==="divider"?E.createElement(ni,(0,w.Z)({key:tr},ar)):E.createElement(mr,(0,w.Z)({key:tr},ar),et)}return null}).filter(function(Fe){return Fe})}function Mn(Re,Fe,it){var ct=Re;return Fe&&(ct=Nn(Fe)),Zr(ct,it)}var Yn=["prefixCls","rootClassName","style","className","tabIndex","items","children","direction","id","mode","inlineCollapsed","disabled","disabledOverflow","subMenuOpenDelay","subMenuCloseDelay","forceSubMenuRender","defaultOpenKeys","openKeys","activeKey","defaultActiveFirst","selectable","multiple","defaultSelectedKeys","selectedKeys","onSelect","onDeselect","inlineIndent","motion","defaultMotions","triggerSubMenuAction","builtinPlacements","itemIcon","expandIcon","overflowedIndicator","overflowedIndicatorPopupClassName","getPopupContainer","onClick","onOpenChange","onKeyDown","openAnimation","openTransitionName","_internalRenderMenuItem","_internalRenderSubMenuItem"],Kn=[],ii=E.forwardRef(function(Re,Fe){var it,ct,et=Re,St=et.prefixCls,Et=St===void 0?"rc-menu":St,$t=et.rootClassName,ar=et.style,tr=et.className,br=et.tabIndex,yr=br===void 0?0:br,Ur=et.items,Fr=et.children,gr=et.direction,Wr=et.id,Hr=et.mode,Lr=Hr===void 0?"vertical":Hr,Sr=et.inlineCollapsed,Dr=et.disabled,ne=et.disabledOverflow,ae=et.subMenuOpenDelay,Be=ae===void 0?.1:ae,Me=et.subMenuCloseDelay,Ye=Me===void 0?.1:Me,at=et.forceSubMenuRender,vt=et.defaultOpenKeys,Mt=et.openKeys,Ee=et.activeKey,le=et.defaultActiveFirst,de=et.selectable,be=de===void 0?!0:de,Qe=et.multiple,Ge=Qe===void 0?!1:Qe,Ne=et.defaultSelectedKeys,mt=et.selectedKeys,Ct=et.onSelect,Pt=et.onDeselect,pt=et.inlineIndent,$e=pt===void 0?24:pt,Lt=et.motion,Ht=et.defaultMotions,It=et.triggerSubMenuAction,yt=It===void 0?"hover":It,Dt=et.builtinPlacements,jt=et.itemIcon,Ft=et.expandIcon,Zt=et.overflowedIndicator,cr=Zt===void 0?"...":Zt,dr=et.overflowedIndicatorPopupClassName,xr=et.getPopupContainer,pr=et.onClick,Jt=et.onOpenChange,or=et.onKeyDown,sr=et.openAnimation,ur=et.openTransitionName,nn=et._internalRenderMenuItem,an=et._internalRenderSubMenuItem,qr=(0,y.Z)(et,Yn),Br=E.useMemo(function(){return Mn(Fr,Ur,Kn)},[Fr,Ur]),vr=E.useState(!1),$r=(0,D.Z)(vr,2),en=$r[0],lr=$r[1],Yt=E.useRef(),ir=se(Wr),Tr=gr==="rtl",Ar=(0,he.Z)(vt,{value:Mt,postState:function(ln){return ln||Kn}}),Cr=(0,D.Z)(Ar,2),rr=Cr[0],zr=Cr[1],kr=function(ln){var vn=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;function In(){zr(ln),Jt==null||Jt(ln)}vn?(0,t.flushSync)(In):In()},Vr=E.useState(rr),Yr=(0,D.Z)(Vr,2),on=Yr[0],mn=Yr[1],fn=E.useRef(!1),Qr=E.useMemo(function(){return(Lr==="inline"||Lr==="vertical")&&Sr?["vertical",Sr]:[Lr,!1]},[Lr,Sr]),bn=(0,D.Z)(Qr,2),An=bn[0],Cn=bn[1],hn=An==="inline",Jr=E.useState(An),er=(0,D.Z)(Jr,2),fr=er[0],Nr=er[1],tn=E.useState(Cn),gn=(0,D.Z)(tn,2),Jn=gn[0],Gn=gn[1];E.useEffect(function(){Nr(An),Gn(Cn),fn.current&&(hn?zr(on):kr(Kn))},[An,Cn]);var fi=E.useState(0),kn=(0,D.Z)(fi,2),Pn=kn[0],di=kn[1],Tn=Pn>=Br.length-1||fr!=="horizontal"||ne;E.useEffect(function(){hn&&mn(rr)},[rr]),E.useEffect(function(){return fn.current=!0,function(){fn.current=!1}},[]);var Fn=W(),ai=Fn.registerPath,Wn=Fn.unregisterPath,oi=Fn.refreshOverflowKeys,qn=Fn.isSubPathKey,pi=Fn.getKeyPath,si=Fn.getKeys,li=Fn.getSubPathKeys,Er=E.useMemo(function(){return{registerPath:ai,unregisterPath:Wn}},[ai,Wn]),Bt=E.useMemo(function(){return{isSubPathKey:qn}},[qn]);E.useEffect(function(){oi(Tn?Kn:Br.slice(Pn+1).map(function(pn){return pn.key}))},[Pn,Tn]);var Qt=(0,he.Z)(Ee||le&&((it=Br[0])===null||it===void 0?void 0:it.key),{value:Ee}),qt=(0,D.Z)(Qt,2),nr=qt[0],sn=qt[1],dn=z(function(pn){sn(pn)}),$n=z(function(){sn(void 0)});(0,E.useImperativeHandle)(Fe,function(){return{list:Yt.current,focus:function(ln){var vn,In=nr!=null?nr:(vn=Br.find(function(Ti){return!Ti.props.disabled}))===null||vn===void 0?void 0:vn.key;if(In){var Ln,vi,Ei;(Ln=Yt.current)===null||Ln===void 0||(vi=Ln.querySelector("li[data-menu-id='".concat(Ce(ir,In),"']")))===null||vi===void 0||(Ei=vi.focus)===null||Ei===void 0||Ei.call(vi,ln)}}}});var Xn=(0,he.Z)(Ne||[],{value:mt,postState:function(ln){return Array.isArray(ln)?ln:ln==null?Kn:[ln]}}),ei=(0,D.Z)(Xn,2),yn=ei[0],ui=ei[1],Ai=function(ln){if(be){var vn=ln.key,In=yn.includes(vn),Ln;Ge?In?Ln=yn.filter(function(Ei){return Ei!==vn}):Ln=[].concat((0,g.Z)(yn),[vn]):Ln=[vn],ui(Ln);var vi=(0,M.Z)((0,M.Z)({},ln),{},{selectedKeys:Ln});In?Pt==null||Pt(vi):Ct==null||Ct(vi)}!Ge&&rr.length&&fr!=="inline"&&kr(Kn)},Si=z(function(pn){pr==null||pr(xt(pn)),Ai(pn)}),Di=z(function(pn,ln){var vn=rr.filter(function(Ln){return Ln!==pn});if(ln)vn.push(pn);else if(fr!=="inline"){var In=li(pn);vn=vn.filter(function(Ln){return!In.has(Ln)})}(0,me.Z)(rr,vn,!0)||kr(vn,!0)}),hi=function(ln,vn){var In=vn!=null?vn:!rr.includes(ln);Di(ln,In)},ti=qe(fr,nr,Tr,ir,Yt,si,pi,sn,hi,or);E.useEffect(function(){lr(!0)},[]);var Oi=E.useMemo(function(){return{_internalRenderMenuItem:nn,_internalRenderSubMenuItem:an}},[nn,an]),_i=fr!=="horizontal"||ne?Br:Br.map(function(pn,ln){return E.createElement(re,{key:pn.key,overflowDisabled:ln>Pn},pn)}),Mi=E.createElement(fe,(0,w.Z)({id:Wr,ref:Yt,prefixCls:"".concat(Et,"-overflow"),component:"ul",itemComponent:mr,className:m()(Et,"".concat(Et,"-root"),"".concat(Et,"-").concat(fr),tr,(ct={},(0,H.Z)(ct,"".concat(Et,"-inline-collapsed"),Jn),(0,H.Z)(ct,"".concat(Et,"-rtl"),Tr),ct),$t),dir:gr,style:ar,role:"menu",tabIndex:yr,data:_i,renderRawItem:function(ln){return ln},renderRawRest:function(ln){var vn=ln.length,In=vn?Br.slice(-vn):null;return E.createElement(zn,{eventKey:O,title:cr,disabled:Tn,internalPopupClose:vn===0,popupClassName:dr},In)},maxCount:fr!=="horizontal"||ne?fe.INVALIDATE:fe.RESPONSIVE,ssr:"full","data-menu-list":!0,onVisibleChange:function(ln){di(ln)},onKeyDown:ti},qr));return E.createElement(ze.Provider,{value:Oi},E.createElement(Te.Provider,{value:ir},E.createElement(re,{prefixCls:Et,rootClassName:$t,mode:fr,openKeys:rr,rtl:Tr,disabled:Dr,motion:en?Lt:null,defaultMotions:en?Ht:null,activeKey:nr,onActive:dn,onInactive:$n,selectedKeys:yn,inlineIndent:$e,subMenuOpenDelay:Be,subMenuCloseDelay:Ye,forceSubMenuRender:at,builtinPlacements:Dt,triggerSubMenuAction:yt,getPopupContainer:xr,itemIcon:jt,expandIcon:Ft,onItemClick:Si,onOpenChange:Di},E.createElement(Se.Provider,{value:Bt},Mi),E.createElement("div",{style:{display:"none"},"aria-hidden":!0},E.createElement(te.Provider,{value:Er},Br)))))}),Qn=ii,Dn=Qn;Dn.Item=mr,Dn.SubMenu=zn,Dn.ItemGroup=Rn,Dn.Divider=ni;var gi=Dn},66680:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return H}});var w=B(67294);function H(M){var g=w.useRef();g.current=M;var D=w.useCallback(function(){for(var y,v=arguments.length,m=new Array(v),E=0;E<v;E++)m[E]=arguments[E];return(y=g.current)===null||y===void 0?void 0:y.call.apply(y,[g].concat(m))},[]);return D}},21770:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return y}});var w=B(97685),H=B(66680),M=B(8410),g=B(63896);function D(v){return v!==void 0}function y(v,m){var E=m||{},h=E.defaultValue,a=E.value,d=E.onChange,_=E.postState,r=(0,g.Z)(function(){return D(a)?a:D(h)?typeof h=="function"?h():h:typeof v=="function"?v():v}),n=(0,w.Z)(r,2),l=n[0],o=n[1],s=a!==void 0?a:l,u=_?_(s):s,f=(0,H.Z)(d),e=(0,g.Z)([s]),t=(0,w.Z)(e,2),i=t[0],c=t[1];(0,M.o)(function(){var A=i[0];l!==A&&f(l,A)},[i]),(0,M.o)(function(){D(a)||o(a)},[a]);var p=(0,H.Z)(function(A,x){o(A,x),c([s],x)});return[u,p]}},91881:function(ke,_e,B){"use strict";var w=B(71002),H=B(80334);function M(g,D){var y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,v=new Set;function m(E,h){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,d=v.has(E);if((0,H.ZP)(!d,"Warning: There may be circular references"),d)return!1;if(E===h)return!0;if(y&&a>1)return!1;v.add(E);var _=a+1;if(Array.isArray(E)){if(!Array.isArray(h)||E.length!==h.length)return!1;for(var r=0;r<E.length;r++)if(!m(E[r],h[r],_))return!1;return!0}if(E&&h&&(0,w.Z)(E)==="object"&&(0,w.Z)(h)==="object"){var n=Object.keys(E);return n.length!==Object.keys(h).length?!1:n.every(function(l){return m(E[l],h[l],_)})}return!1}return m(g,D)}_e.Z=M},98423:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return H}});var w=B(1413);function H(M,g){var D=(0,w.Z)({},M);return Array.isArray(g)&&g.forEach(function(y){delete D[y]}),D}},64217:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return m}});var w=B(1413),H=`accept acceptCharset accessKey action allowFullScreen allowTransparency
|
|
alt async autoComplete autoFocus autoPlay capture cellPadding cellSpacing challenge
|
|
charSet checked classID className colSpan cols content contentEditable contextMenu
|
|
controls coords crossOrigin data dateTime default defer dir disabled download draggable
|
|
encType form formAction formEncType formMethod formNoValidate formTarget frameBorder
|
|
headers height hidden high href hrefLang htmlFor httpEquiv icon id inputMode integrity
|
|
is keyParams keyType kind label lang list loop low manifest marginHeight marginWidth max maxLength media
|
|
mediaGroup method min minLength multiple muted name noValidate nonce open
|
|
optimum pattern placeholder poster preload radioGroup readOnly rel required
|
|
reversed role rowSpan rows sandbox scope scoped scrolling seamless selected
|
|
shape size sizes span spellCheck src srcDoc srcLang srcSet start step style
|
|
summary tabIndex target title type useMap value width wmode wrap`,M=`onCopy onCut onPaste onCompositionEnd onCompositionStart onCompositionUpdate onKeyDown
|
|
onKeyPress onKeyUp onFocus onBlur onChange onInput onSubmit onClick onContextMenu onDoubleClick
|
|
onDrag onDragEnd onDragEnter onDragExit onDragLeave onDragOver onDragStart onDrop onMouseDown
|
|
onMouseEnter onMouseLeave onMouseMove onMouseOut onMouseOver onMouseUp onSelect onTouchCancel
|
|
onTouchEnd onTouchMove onTouchStart onScroll onWheel onAbort onCanPlay onCanPlayThrough
|
|
onDurationChange onEmptied onEncrypted onEnded onError onLoadedData onLoadedMetadata
|
|
onLoadStart onPause onPlay onPlaying onProgress onRateChange onSeeked onSeeking onStalled onSuspend onTimeUpdate onVolumeChange onWaiting onLoad onError`,g="".concat(H," ").concat(M).split(/[\s\n]+/),D="aria-",y="data-";function v(E,h){return E.indexOf(h)===0}function m(E){var h=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,a;h===!1?a={aria:!0,data:!0,attr:!0}:h===!0?a={aria:!0}:a=(0,w.Z)({},h);var d={};return Object.keys(E).forEach(function(_){(a.aria&&(_==="role"||v(_,D))||a.data&&v(_,y)||a.attr&&g.includes(_))&&(d[_]=E[_])}),d}},73299:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return _t}});var w=B(87462),H=B(1413),M=B(71002),g=B(97685),D=B(4942),y=B(45987),v=B(67294),m=B(73935),E=B(94184),h=B.n(E),a=B(48555),d=v.forwardRef(function(ge,we){var Ue=ge.height,De=ge.offsetY,nt=ge.offsetX,qe=ge.children,rt=ge.prefixCls,ft=ge.onInnerResize,Tt=ge.innerProps,Ze=ge.rtl,O=ge.extra,W={},z={display:"flex",flexDirection:"column"};if(De!==void 0){var Z;W={height:Ue,position:"relative",overflow:"hidden"},z=(0,H.Z)((0,H.Z)({},z),{},(Z={transform:"translateY(".concat(De,"px)")},(0,D.Z)(Z,Ze?"marginRight":"marginLeft",-nt),(0,D.Z)(Z,"position","absolute"),(0,D.Z)(Z,"left",0),(0,D.Z)(Z,"right",0),(0,D.Z)(Z,"top",0),Z))}return v.createElement("div",{style:W},v.createElement(a.Z,{onResize:function(se){var xe=se.offsetHeight;xe&&ft&&ft()}},v.createElement("div",(0,w.Z)({style:z,className:h()((0,D.Z)({},"".concat(rt,"-holder-inner"),rt)),ref:we},Tt),qe,O)))});d.displayName="Filler";var _=d,r=function(we){return+setTimeout(we,16)},n=function(we){return clearTimeout(we)};typeof window!="undefined"&&"requestAnimationFrame"in window&&(r=function(we){return window.requestAnimationFrame(we)},n=function(we){return window.cancelAnimationFrame(we)});var l=0,o=new Map;function s(ge){o.delete(ge)}var u=function(we){var Ue=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1;l+=1;var De=l;function nt(qe){if(qe===0)s(De),we();else{var rt=r(function(){nt(qe-1)});o.set(De,rt)}}return nt(Ue),De};u.cancel=function(ge){var we=o.get(ge);return s(we),n(we)};var f=u;function e(ge,we){var Ue="touches"in ge?ge.touches[0]:ge;return Ue[we?"pageX":"pageY"]}var t=v.forwardRef(function(ge,we){var Ue,De=ge.prefixCls,nt=ge.rtl,qe=ge.scrollOffset,rt=ge.scrollRange,ft=ge.onStartMove,Tt=ge.onStopMove,Ze=ge.onScroll,O=ge.horizontal,W=ge.spinSize,z=ge.containerSize,Z=ge.style,Y=ge.thumbStyle,se=v.useState(!1),xe=(0,g.Z)(se,2),lt=xe[0],Ve=xe[1],Rt=v.useState(null),kt=(0,g.Z)(Rt,2),Ut=kt[0],st=kt[1],bt=v.useState(null),wt=(0,g.Z)(bt,2),gt=wt[0],xt=wt[1],Gt=!nt,Vt=v.useRef(),Xt=v.useRef(),hr=v.useState(!1),Pr=(0,g.Z)(hr,2),Wt=Pr[0],mr=Pr[1],_r=v.useRef(),wr=function(){clearTimeout(_r.current),mr(!0),_r.current=setTimeout(function(){mr(!1)},3e3)},Rr=rt-z||0,un=z-W||0,zt=Rr>0,Zr=v.useMemo(function(){if(qe===0||Rr===0)return 0;var Gr=qe/Rr;return Gr*un},[qe,Rr,un]),_n=function(cn){cn.stopPropagation(),cn.preventDefault()},Mr=v.useRef({top:Zr,dragging:lt,pageY:Ut,startTop:gt});Mr.current={top:Zr,dragging:lt,pageY:Ut,startTop:gt};var En=function(cn){Ve(!0),st(e(cn,O)),xt(Mr.current.top),ft(),cn.stopPropagation(),cn.preventDefault()};v.useEffect(function(){var Gr=function(Un){Un.preventDefault()},cn=Vt.current,Xr=Xt.current;return cn.addEventListener("touchstart",Gr),Xr.addEventListener("touchstart",En),function(){cn.removeEventListener("touchstart",Gr),Xr.removeEventListener("touchstart",En)}},[]);var xn=v.useRef();xn.current=Rr;var rn=v.useRef();rn.current=un,v.useEffect(function(){if(lt){var Gr,cn=function(Un){var zn=Mr.current,ci=zn.dragging,On=zn.pageY,mi=zn.startTop;if(f.cancel(Gr),ci){var jn=e(Un,O)-On,Rn=mi;!Gt&&O?Rn-=jn:Rn+=jn;var ni=xn.current,Zn=rn.current,Nn=Zn?Rn/Zn:0,Mn=Math.ceil(Nn*ni);Mn=Math.max(Mn,0),Mn=Math.min(Mn,ni),Gr=f(function(){Ze(Mn,O)})}},Xr=function(){Ve(!1),Tt()};return window.addEventListener("mousemove",cn),window.addEventListener("touchmove",cn),window.addEventListener("mouseup",Xr),window.addEventListener("touchend",Xr),function(){window.removeEventListener("mousemove",cn),window.removeEventListener("touchmove",cn),window.removeEventListener("mouseup",Xr),window.removeEventListener("touchend",Xr),f.cancel(Gr)}}},[lt]),v.useEffect(function(){wr()},[qe]),v.useImperativeHandle(we,function(){return{delayHidden:wr}});var Kr="".concat(De,"-scrollbar"),He={position:"absolute",visibility:Wt&&zt?null:"hidden"},Ir={position:"absolute",background:"rgba(0, 0, 0, 0.5)",borderRadius:99,cursor:"pointer",userSelect:"none"};return O?(He.height=8,He.left=0,He.right=0,He.bottom=0,Ir.height="100%",Ir.width=W,Gt?Ir.left=Zr:Ir.right=Zr):(He.width=8,He.top=0,He.bottom=0,Gt?He.right=0:He.left=0,Ir.width="100%",Ir.height=W,Ir.top=Zr),v.createElement("div",{ref:Vt,className:h()(Kr,(Ue={},(0,D.Z)(Ue,"".concat(Kr,"-horizontal"),O),(0,D.Z)(Ue,"".concat(Kr,"-vertical"),!O),(0,D.Z)(Ue,"".concat(Kr,"-visible"),Wt),Ue)),style:(0,H.Z)((0,H.Z)({},He),Z),onMouseDown:_n,onMouseMove:wr},v.createElement("div",{ref:Xt,className:h()("".concat(Kr,"-thumb"),(0,D.Z)({},"".concat(Kr,"-thumb-moving"),lt)),style:(0,H.Z)((0,H.Z)({},Ir),Y),onMouseDown:En}))}),i=t;function c(ge){var we=ge.children,Ue=ge.setRef,De=v.useCallback(function(nt){Ue(nt)},[]);return v.cloneElement(we,{ref:De})}function p(ge,we,Ue,De,nt,qe,rt){var ft=rt.getKey;return ge.slice(we,Ue+1).map(function(Tt,Ze){var O=we+Ze,W=qe(Tt,O,{style:{width:De}}),z=ft(Tt);return v.createElement(c,{key:z,setRef:function(Y){return nt(Tt,Y)}},W)})}function A(ge){return ge instanceof HTMLElement||ge instanceof SVGElement}function x(ge){return A(ge)?ge:ge instanceof v.Component?m.findDOMNode(ge):null}var C=B(15671),S=B(43144),P=function(){function ge(){(0,C.Z)(this,ge),this.maps=void 0,this.id=0,this.maps=Object.create(null)}return(0,S.Z)(ge,[{key:"set",value:function(Ue,De){this.maps[Ue]=De,this.id+=1}},{key:"get",value:function(Ue){return this.maps[Ue]}}]),ge}(),b=P;function L(ge,we,Ue){var De=v.useState(0),nt=(0,g.Z)(De,2),qe=nt[0],rt=nt[1],ft=(0,v.useRef)(new Map),Tt=(0,v.useRef)(new b),Ze=(0,v.useRef)();function O(){f.cancel(Ze.current)}function W(){var Z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;O();var Y=function(){ft.current.forEach(function(xe,lt){if(xe&&xe.offsetParent){var Ve=x(xe),Rt=Ve.offsetHeight;Tt.current.get(lt)!==Rt&&Tt.current.set(lt,Ve.offsetHeight)}}),rt(function(xe){return xe+1})};Z?Y():Ze.current=f(Y)}function z(Z,Y){var se=ge(Z),xe=ft.current.get(se);Y?(ft.current.set(se,Y),W()):ft.current.delete(se),!xe!=!Y&&(Y?we==null||we(Z):Ue==null||Ue(Z))}return(0,v.useEffect)(function(){return O},[]),[z,W,Tt.current,qe]}function R(){return!!(typeof window!="undefined"&&window.document&&window.document.createElement)}var T=R()?v.useLayoutEffect:v.useEffect,N=function(we,Ue){var De=v.useRef(!0);T(function(){return we(De.current)},Ue),T(function(){return De.current=!1,function(){De.current=!0}},[])},I=function(we,Ue){N(function(De){if(!De)return we()},Ue)},F=N;function U(ge){var we=v.useRef();we.current=ge;var Ue=v.useCallback(function(){for(var De,nt=arguments.length,qe=new Array(nt),rt=0;rt<nt;rt++)qe[rt]=arguments[rt];return(De=we.current)===null||De===void 0?void 0:De.call.apply(De,[we].concat(qe))},[]);return Ue}function K(ge){var we=React.useRef(!1),Ue=React.useState(ge),De=_slicedToArray(Ue,2),nt=De[0],qe=De[1];React.useEffect(function(){return we.current=!1,function(){we.current=!0}},[]);function rt(ft,Tt){Tt&&we.current||qe(ft)}return[nt,rt]}function G(ge){return ge!==void 0}function V(ge,we){var Ue=we||{},De=Ue.defaultValue,nt=Ue.value,qe=Ue.onChange,rt=Ue.postState,ft=useState(function(){return G(nt)?nt:G(De)?typeof De=="function"?De():De:typeof ge=="function"?ge():ge}),Tt=_slicedToArray(ft,2),Ze=Tt[0],O=Tt[1],W=nt!==void 0?nt:Ze,z=rt?rt(W):W,Z=useEvent(qe),Y=useState([W]),se=_slicedToArray(Y,2),xe=se[0],lt=se[1];useLayoutUpdateEffect(function(){var Rt=xe[0];Ze!==Rt&&Z(Ze,Rt)},[xe]),useLayoutUpdateEffect(function(){G(nt)||O(nt)},[nt]);var Ve=useEvent(function(Rt,kt){O(Rt,kt),lt([W],kt)});return[z,Ve]}var X=B(31461);function ee(ge,we,Ue){var De=React.useRef({});return(!("value"in De.current)||Ue(De.current.condition,we))&&(De.current.value=ge(),De.current.condition=we),De.current.value}function oe(ge,we){typeof ge=="function"?ge(we):_typeof(ge)==="object"&&ge&&"current"in ge&&(ge.current=we)}function ue(){for(var ge=arguments.length,we=new Array(ge),Ue=0;Ue<ge;Ue++)we[Ue]=arguments[Ue];var De=we.filter(function(nt){return nt});return De.length<=1?De[0]:function(nt){we.forEach(function(qe){oe(qe,nt)})}}function Ae(){for(var ge=arguments.length,we=new Array(ge),Ue=0;Ue<ge;Ue++)we[Ue]=arguments[Ue];return useMemo(function(){return ue.apply(void 0,we)},we,function(De,nt){return De.length!==nt.length||De.every(function(qe,rt){return qe!==nt[rt]})})}function fe(ge){var we,Ue,De=isMemo(ge)?ge.type.type:ge.type;return!(typeof De=="function"&&!((we=De.prototype)!==null&&we!==void 0&&we.render)||typeof ge=="function"&&!((Ue=ge.prototype)!==null&&Ue!==void 0&&Ue.render))}function he(ge){return!isValidElement(ge)||isFragment(ge)?!1:fe(ge)}function ve(ge,we,Ue,De){if(!we.length)return Ue;var nt=_toArray(we),qe=nt[0],rt=nt.slice(1),ft;return!ge&&typeof qe=="number"?ft=[]:Array.isArray(ge)?ft=_toConsumableArray(ge):ft=_objectSpread({},ge),De&&Ue===void 0&&rt.length===1?delete ft[qe][rt[0]]:ft[qe]=ve(ft[qe],rt,Ue,De),ft}function me(ge,we,Ue){var De=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;return we.length&&De&&Ue===void 0&&!get(ge,we.slice(0,-1))?ge:ve(ge,we,Ue,De)}function Te(ge){return _typeof(ge)==="object"&&ge!==null&&Object.getPrototypeOf(ge)===Object.prototype}function Ce(ge){return Array.isArray(ge)?[]:{}}var ye=typeof Reflect=="undefined"?Object.keys:Reflect.ownKeys;function q(){for(var ge=arguments.length,we=new Array(ge),Ue=0;Ue<ge;Ue++)we[Ue]=arguments[Ue];var De=Ce(we[0]);return we.forEach(function(nt){function qe(rt,ft){var Tt=new Set(ft),Ze=get(nt,rt),O=Array.isArray(Ze);if(O||Te(Ze)){if(!Tt.has(Ze)){Tt.add(Ze);var W=get(De,rt);O?De=me(De,rt,[]):(!W||_typeof(W)!=="object")&&(De=me(De,rt,Ce(Ze))),ye(Ze).forEach(function(z){qe([].concat(_toConsumableArray(rt),[z]),Tt)})}}else De=me(De,rt,Ze)}qe([])}),De}var Q={},$=[],j=function(we){$.push(we)};function re(ge,we){if(0)var Ue}function k(ge,we){if(0)var Ue}function te(){Q={}}function ie(ge,we,Ue){!we&&!Q[Ue]&&(ge(!1,Ue),Q[Ue]=!0)}function J(ge,we){ie(re,ge,we)}function ce(ge,we){ie(k,ge,we)}J.preMessage=j,J.resetWarned=te,J.noteOnce=ce;var Se=null,Le=10;function ze(ge,we,Ue,De,nt,qe,rt,ft){var Tt=v.useRef(),Ze=v.useState(null),O=(0,g.Z)(Ze,2),W=O[0],z=O[1];return F(function(){if(W&&W.times<Le){if(!ge.current){z(function(wr){return(0,H.Z)({},wr)});return}qe();var Z=W.targetAlign,Y=W.originAlign,se=W.index,xe=W.offset,lt=ge.current.clientHeight,Ve=!1,Rt=Z,kt=null;if(lt){for(var Ut=Z||Y,st=0,bt=0,wt=0,gt=Math.min(we.length-1,se),xt=0;xt<=gt;xt+=1){var Gt=nt(we[xt]);bt=st;var Vt=Ue.get(Gt);wt=bt+(Vt===void 0?De:Vt),st=wt}for(var Xt=Ut==="top"?xe:lt-xe,hr=gt;hr>=0;hr-=1){var Pr=nt(we[hr]),Wt=Ue.get(Pr);if(Wt===void 0){Ve=!0;break}if(Xt-=Wt,Xt<=0)break}switch(Ut){case"top":kt=bt-xe;break;case"bottom":kt=wt-lt+xe;break;default:{var mr=ge.current.scrollTop,_r=mr+lt;bt<mr?Rt="top":wt>_r&&(Rt="bottom")}}kt!==null&&rt(kt),kt!==W.lastTop&&(Ve=!0)}Ve&&z(function(wr){return(0,H.Z)((0,H.Z)({},wr),{},{times:wr.times+1,targetAlign:Rt,lastTop:kt})})}},[W,ge.current]),function(Z){if(Z==null){ft();return}if(f.cancel(Tt.current),typeof Z=="number")rt(Z);else if(Z&&(0,M.Z)(Z)==="object"){var Y,se=Z.align;"index"in Z?Y=Z.index:Y=we.findIndex(function(Ve){return nt(Ve)===Z.key});var xe=Z.offset,lt=xe===void 0?0:xe;z({times:0,index:Y,offset:lt,originAlign:se})}}}function We(ge,we,Ue,De){var nt=Ue-ge,qe=we-Ue,rt=Math.min(nt,qe)*2;if(De<=rt){var ft=Math.floor(De/2);return De%2?Ue+ft+1:Ue-ft}return nt>qe?Ue-(De-qe):Ue+(De-nt)}function tt(ge,we,Ue){var De=ge.length,nt=we.length,qe,rt;if(De===0&&nt===0)return null;De<nt?(qe=ge,rt=we):(qe=we,rt=ge);var ft={__EMPTY_ITEM__:!0};function Tt(Y){return Y!==void 0?Ue(Y):ft}for(var Ze=null,O=Math.abs(De-nt)!==1,W=0;W<rt.length;W+=1){var z=Tt(qe[W]),Z=Tt(rt[W]);if(z!==Z){Ze=W,O=O||z!==Tt(rt[W+1]);break}}return Ze===null?null:{index:Ze,multiple:O}}function je(ge,we,Ue){var De=v.useState(ge),nt=(0,g.Z)(De,2),qe=nt[0],rt=nt[1],ft=v.useState(null),Tt=(0,g.Z)(ft,2),Ze=Tt[0],O=Tt[1];return v.useEffect(function(){var W=tt(qe||[],ge||[],we);(W==null?void 0:W.index)!==void 0&&(Ue==null||Ue(W.index),O(ge[W.index])),rt(ge)},[ge]),[Ze]}var pe=(typeof navigator=="undefined"?"undefined":(0,M.Z)(navigator))==="object"&&/Firefox/i.test(navigator.userAgent),Oe=pe,Ie=function(ge,we){var Ue=(0,v.useRef)(!1),De=(0,v.useRef)(null);function nt(){clearTimeout(De.current),Ue.current=!0,De.current=setTimeout(function(){Ue.current=!1},50)}var qe=(0,v.useRef)({top:ge,bottom:we});return qe.current.top=ge,qe.current.bottom=we,function(rt){var ft=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,Tt=rt<0&&qe.current.top||rt>0&&qe.current.bottom;return ft&&Tt?(clearTimeout(De.current),Ue.current=!1):(!Tt||Ue.current)&&nt(),!Ue.current&&Tt}};function Pe(ge,we,Ue,De,nt){var qe=(0,v.useRef)(0),rt=(0,v.useRef)(null),ft=(0,v.useRef)(null),Tt=(0,v.useRef)(!1),Ze=Ie(we,Ue);function O(xe,lt){f.cancel(rt.current),qe.current+=lt,ft.current=lt,!Ze(lt)&&(Oe||xe.preventDefault(),rt.current=f(function(){var Ve=Tt.current?10:1;nt(qe.current*Ve),qe.current=0}))}function W(xe,lt){nt(lt,!0),Oe||xe.preventDefault()}var z=(0,v.useRef)(null),Z=(0,v.useRef)(null);function Y(xe){if(ge){f.cancel(Z.current),Z.current=f(function(){z.current=null},2);var lt=xe.deltaX,Ve=xe.deltaY,Rt=xe.shiftKey,kt=lt,Ut=Ve;(z.current==="sx"||!z.current&&Rt&&Ve&&!lt)&&(kt=Ve,Ut=0,z.current="sx");var st=Math.abs(kt),bt=Math.abs(Ut);z.current===null&&(z.current=De&&st>bt?"x":"y"),z.current==="y"?O(xe,Ut):W(xe,kt)}}function se(xe){ge&&(Tt.current=xe.detail===ft.current)}return[Y,se]}var ot=14/15;function ht(ge,we,Ue){var De=(0,v.useRef)(!1),nt=(0,v.useRef)(0),qe=(0,v.useRef)(null),rt=(0,v.useRef)(null),ft,Tt=function(z){if(De.current){var Z=Math.ceil(z.touches[0].pageY),Y=nt.current-Z;nt.current=Z,Ue(Y)&&z.preventDefault(),clearInterval(rt.current),rt.current=setInterval(function(){Y*=ot,(!Ue(Y,!0)||Math.abs(Y)<=.1)&&clearInterval(rt.current)},16)}},Ze=function(){De.current=!1,ft()},O=function(z){ft(),z.touches.length===1&&!De.current&&(De.current=!0,nt.current=Math.ceil(z.touches[0].pageY),qe.current=z.target,qe.current.addEventListener("touchmove",Tt),qe.current.addEventListener("touchend",Ze))};ft=function(){qe.current&&(qe.current.removeEventListener("touchmove",Tt),qe.current.removeEventListener("touchend",Ze))},F(function(){return ge&&we.current.addEventListener("touchstart",O),function(){var W;(W=we.current)===null||W===void 0||W.removeEventListener("touchstart",O),ft(),clearInterval(rt.current)}},[ge])}var dt=20;function At(){var ge=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,we=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,Ue=ge/we*100;return isNaN(Ue)&&(Ue=0),Ue=Math.max(Ue,dt),Ue=Math.min(Ue,ge/2),Math.floor(Ue)}function Ot(ge,we,Ue,De){var nt=v.useMemo(function(){return[new Map,[]]},[ge,Ue.id,De]),qe=(0,g.Z)(nt,2),rt=qe[0],ft=qe[1],Tt=function(O){var W=arguments.length>1&&arguments[1]!==void 0?arguments[1]:O,z=rt.get(O),Z=rt.get(W);if(z===void 0||Z===void 0)for(var Y=ge.length,se=ft.length;se<Y;se+=1){var xe,lt=ge[se],Ve=we(lt);rt.set(Ve,se);var Rt=(xe=Ue.get(Ve))!==null&&xe!==void 0?xe:De;if(ft[se]=(ft[se-1]||0)+Rt,Ve===O&&(z=se),Ve===W&&(Z=se),z!==void 0&&Z!==void 0)break}return{top:ft[z-1]||0,bottom:ft[Z]}};return Tt}var Ke=["prefixCls","className","height","itemHeight","fullHeight","style","data","children","itemKey","virtual","direction","scrollWidth","component","onScroll","onVirtualScroll","onVisibleChange","innerProps","extraRender","styles"],Xe=[],Je={overflowY:"auto",overflowAnchor:"none"};function Nt(ge,we){var Ue=ge.prefixCls,De=Ue===void 0?"rc-virtual-list":Ue,nt=ge.className,qe=ge.height,rt=ge.itemHeight,ft=ge.fullHeight,Tt=ft===void 0?!0:ft,Ze=ge.style,O=ge.data,W=ge.children,z=ge.itemKey,Z=ge.virtual,Y=ge.direction,se=ge.scrollWidth,xe=ge.component,lt=xe===void 0?"div":xe,Ve=ge.onScroll,Rt=ge.onVirtualScroll,kt=ge.onVisibleChange,Ut=ge.innerProps,st=ge.extraRender,bt=ge.styles,wt=(0,y.Z)(ge,Ke),gt=!!(Z!==!1&&qe&&rt),xt=gt&&O&&(rt*O.length>qe||!!se),Gt=Y==="rtl",Vt=h()(De,(0,D.Z)({},"".concat(De,"-rtl"),Gt),nt),Xt=O||Xe,hr=(0,v.useRef)(),Pr=(0,v.useRef)(),Wt=(0,v.useState)(0),mr=(0,g.Z)(Wt,2),_r=mr[0],wr=mr[1],Rr=(0,v.useState)(0),un=(0,g.Z)(Rr,2),zt=un[0],Zr=un[1],_n=(0,v.useState)(!1),Mr=(0,g.Z)(_n,2),En=Mr[0],xn=Mr[1],rn=function(){xn(!0)},Kr=function(){xn(!1)},He=v.useCallback(function(le){return typeof z=="function"?z(le):le==null?void 0:le[z]},[z]),Ir={getKey:He};function Gr(le){wr(function(de){var be;typeof le=="function"?be=le(de):be=le;var Qe=$t(be);return hr.current.scrollTop=Qe,Qe})}var cn=(0,v.useRef)({start:0,end:Xt.length}),Xr=(0,v.useRef)(),wn=je(Xt,He),Un=(0,g.Z)(wn,1),zn=Un[0];Xr.current=zn;var ci=L(He,null,null),On=(0,g.Z)(ci,4),mi=On[0],jn=On[1],Rn=On[2],ni=On[3],Zn=v.useMemo(function(){if(!gt)return{scrollHeight:void 0,start:0,end:Xt.length-1,offset:void 0};if(!xt){var le;return{scrollHeight:((le=Pr.current)===null||le===void 0?void 0:le.offsetHeight)||0,start:0,end:Xt.length-1,offset:void 0}}for(var de=0,be,Qe,Ge,Ne=Xt.length,mt=0;mt<Ne;mt+=1){var Ct=Xt[mt],Pt=He(Ct),pt=Rn.get(Pt),$e=de+(pt===void 0?rt:pt);$e>=_r&&be===void 0&&(be=mt,Qe=de),$e>_r+qe&&Ge===void 0&&(Ge=mt),de=$e}return be===void 0&&(be=0,Qe=0,Ge=Math.ceil(qe/rt)),Ge===void 0&&(Ge=Xt.length-1),Ge=Math.min(Ge+1,Xt.length-1),{scrollHeight:de,start:be,end:Ge,offset:Qe}},[xt,gt,_r,Xt,ni,qe]),Nn=Zn.scrollHeight,Mn=Zn.start,Yn=Zn.end,Kn=Zn.offset;cn.current.start=Mn,cn.current.end=Yn;var ii=v.useState({width:0,height:qe}),Qn=(0,g.Z)(ii,2),Dn=Qn[0],gi=Qn[1],Re=function(de){gi({width:de.width||de.offsetWidth,height:de.height||de.offsetHeight})},Fe=(0,v.useRef)(),it=(0,v.useRef)(),ct=v.useMemo(function(){return At(Dn.width,se)},[Dn.width,se]),et=v.useMemo(function(){return At(Dn.height,Nn)},[Dn.height,Nn]),St=Nn-qe,Et=(0,v.useRef)(St);Et.current=St;function $t(le){var de=le;return Number.isNaN(Et.current)||(de=Math.min(de,Et.current)),de=Math.max(de,0),de}var ar=_r<=0,tr=_r>=St,br=Ie(ar,tr),yr=function(){return{x:Gt?-zt:zt,y:_r}},Ur=(0,v.useRef)(yr()),Fr=U(function(){if(Rt){var le=yr();(Ur.current.x!==le.x||Ur.current.y!==le.y)&&(Rt(le),Ur.current=le)}});function gr(le,de){var be=le;de?((0,m.flushSync)(function(){Zr(be)}),Fr()):Gr(be)}function Wr(le){var de=le.currentTarget.scrollTop;de!==_r&&Gr(de),Ve==null||Ve(le),Fr()}var Hr=function(de){var be=de,Qe=se-Dn.width;return be=Math.max(be,0),be=Math.min(be,Qe),be},Lr=U(function(le,de){de?((0,m.flushSync)(function(){Zr(function(be){var Qe=be+(Gt?-le:le);return Hr(Qe)})}),Fr()):Gr(function(be){var Qe=be+le;return Qe})}),Sr=Pe(gt,ar,tr,!!se,Lr),Dr=(0,g.Z)(Sr,2),ne=Dr[0],ae=Dr[1];ht(gt,hr,function(le,de){return br(le,de)?!1:(ne({preventDefault:function(){},deltaY:le}),!0)}),F(function(){function le(be){gt&&be.preventDefault()}var de=hr.current;return de.addEventListener("wheel",ne),de.addEventListener("DOMMouseScroll",ae),de.addEventListener("MozMousePixelScroll",le),function(){de.removeEventListener("wheel",ne),de.removeEventListener("DOMMouseScroll",ae),de.removeEventListener("MozMousePixelScroll",le)}},[gt]),F(function(){se&&Zr(function(le){return Hr(le)})},[Dn.width,se]);var Be=function(){var de,be;(de=Fe.current)===null||de===void 0||de.delayHidden(),(be=it.current)===null||be===void 0||be.delayHidden()},Me=ze(hr,Xt,Rn,rt,He,function(){return jn(!0)},Gr,Be);v.useImperativeHandle(we,function(){return{getScrollInfo:yr,scrollTo:function(de){function be(Qe){return Qe&&(0,M.Z)(Qe)==="object"&&("left"in Qe||"top"in Qe)}be(de)?(de.left!==void 0&&Zr(Hr(de.left)),Me(de.top)):Me(de)}}}),F(function(){if(kt){var le=Xt.slice(Mn,Yn+1);kt(le,Xt)}},[Mn,Yn,Xt]);var Ye=Ot(Xt,He,Rn,rt),at=st==null?void 0:st({start:Mn,end:Yn,virtual:xt,offsetX:zt,offsetY:Kn,rtl:Gt,getSize:Ye}),vt=p(Xt,Mn,Yn,se,mi,W,Ir),Mt=null;qe&&(Mt=(0,H.Z)((0,D.Z)({},Tt?"height":"maxHeight",qe),Je),gt&&(Mt.overflowY="hidden",se&&(Mt.overflowX="hidden"),En&&(Mt.pointerEvents="none")));var Ee={};return Gt&&(Ee.dir="rtl"),v.createElement("div",(0,w.Z)({style:(0,H.Z)((0,H.Z)({},Ze),{},{position:"relative"}),className:Vt},Ee,wt),v.createElement(a.Z,{onResize:Re},v.createElement(lt,{className:"".concat(De,"-holder"),style:Mt,ref:hr,onScroll:Wr,onMouseEnter:Be},v.createElement(_,{prefixCls:De,height:Nn,offsetX:zt,offsetY:Kn,scrollWidth:se,onInnerResize:jn,ref:Pr,innerProps:Ut,rtl:Gt,extra:at},vt))),xt&&Nn>qe&&v.createElement(i,{ref:Fe,prefixCls:De,scrollOffset:_r,scrollRange:Nn,rtl:Gt,onScroll:gr,onStartMove:rn,onStopMove:Kr,spinSize:et,containerSize:Dn.height,style:bt==null?void 0:bt.verticalScrollBar,thumbStyle:bt==null?void 0:bt.verticalScrollBarThumb}),xt&&se&&v.createElement(i,{ref:it,prefixCls:De,scrollOffset:zt,scrollRange:se,rtl:Gt,onScroll:gr,onStartMove:rn,onStopMove:Kr,spinSize:ct,containerSize:Dn.width,horizontal:!0,style:bt==null?void 0:bt.horizontalScrollBar,thumbStyle:bt==null?void 0:bt.horizontalScrollBarThumb}))}var ut=v.forwardRef(Nt);ut.displayName="List";var Kt=ut,_t=Kt},66392:function(ke,_e){"use strict";var B;var w=Symbol.for("react.element"),H=Symbol.for("react.portal"),M=Symbol.for("react.fragment"),g=Symbol.for("react.strict_mode"),D=Symbol.for("react.profiler"),y=Symbol.for("react.provider"),v=Symbol.for("react.context"),m=Symbol.for("react.server_context"),E=Symbol.for("react.forward_ref"),h=Symbol.for("react.suspense"),a=Symbol.for("react.suspense_list"),d=Symbol.for("react.memo"),_=Symbol.for("react.lazy"),r=Symbol.for("react.offscreen"),n;n=Symbol.for("react.module.reference");function l(o){if(typeof o=="object"&&o!==null){var s=o.$$typeof;switch(s){case w:switch(o=o.type,o){case M:case D:case g:case h:case a:return o;default:switch(o=o&&o.$$typeof,o){case m:case v:case E:case _:case d:case y:return o;default:return s}}case H:return s}}}B=v,B=y,B=w,B=E,B=M,B=_,B=d,B=H,B=D,B=g,B=h,B=a,B=function(){return!1},B=function(){return!1},B=function(o){return l(o)===v},B=function(o){return l(o)===y},B=function(o){return typeof o=="object"&&o!==null&&o.$$typeof===w},B=function(o){return l(o)===E},B=function(o){return l(o)===M},B=function(o){return l(o)===_},B=function(o){return l(o)===d},B=function(o){return l(o)===H},B=function(o){return l(o)===D},B=function(o){return l(o)===g},B=function(o){return l(o)===h},B=function(o){return l(o)===a},B=function(o){return typeof o=="string"||typeof o=="function"||o===M||o===D||o===g||o===h||o===a||o===r||typeof o=="object"&&o!==null&&(o.$$typeof===_||o.$$typeof===d||o.$$typeof===y||o.$$typeof===v||o.$$typeof===E||o.$$typeof===n||o.getModuleId!==void 0)},B=l},31461:function(ke,_e,B){"use strict";B(66392)},55168:function(ke,_e){"use strict";Object.defineProperty(_e,"__esModule",{value:!0}),_e.SensorTabIndex=_e.SensorClassName=_e.SizeSensorId=void 0;var B="size-sensor-id";_e.SizeSensorId=B;var w="size-sensor-object";_e.SensorClassName=w;var H="-1";_e.SensorTabIndex=H},12177:function(ke,_e){"use strict";Object.defineProperty(_e,"__esModule",{value:!0}),_e.default=void 0;var B=function(H){var M=arguments.length>1&&arguments[1]!==void 0?arguments[1]:60,g=null;return function(){for(var D=this,y=arguments.length,v=new Array(y),m=0;m<y;m++)v[m]=arguments[m];clearTimeout(g),g=setTimeout(function(){H.apply(D,v)},M)}};_e.default=B},96340:function(ke,_e){"use strict";Object.defineProperty(_e,"__esModule",{value:!0}),_e.default=void 0;var B=1,w=function(){return"".concat(B++)};_e.default=w},18587:function(ke,_e,B){"use strict";Object.defineProperty(_e,"__esModule",{value:!0}),_e.ver=_e.clear=_e.bind=void 0;var w=B(12955),H=function(y,v){var m=(0,w.getSensor)(y);return m.bind(v),function(){m.unbind(v)}};_e.bind=H;var M=function(y){var v=(0,w.getSensor)(y);(0,w.removeSensor)(v)};_e.clear=M;var g="1.0.1";_e.ver=g},12955:function(ke,_e,B){"use strict";Object.defineProperty(_e,"__esModule",{value:!0}),_e.removeSensor=_e.getSensor=void 0;var w=g(B(96340)),H=B(82578),M=B(55168);function g(m){return m&&m.__esModule?m:{default:m}}var D={},y=function(E){var h=E.getAttribute(M.SizeSensorId);if(h&&D[h])return D[h];var a=(0,w.default)();E.setAttribute(M.SizeSensorId,a);var d=(0,H.createSensor)(E);return D[a]=d,d};_e.getSensor=y;var v=function(E){var h=E.element.getAttribute(M.SizeSensorId);E.element.removeAttribute(M.SizeSensorId),E.destroy(),h&&D[h]&&delete D[h]};_e.removeSensor=v},82578:function(ke,_e,B){"use strict";Object.defineProperty(_e,"__esModule",{value:!0}),_e.createSensor=void 0;var w=B(27643),H=B(31743),M=typeof ResizeObserver!="undefined"?H.createSensor:w.createSensor;_e.createSensor=M},27643:function(ke,_e,B){"use strict";Object.defineProperty(_e,"__esModule",{value:!0}),_e.createSensor=void 0;var w=M(B(12177)),H=B(55168);function M(D){return D&&D.__esModule?D:{default:D}}var g=function(y){var v=void 0,m=[],E=function(){getComputedStyle(y).position==="static"&&(y.style.position="relative");var n=document.createElement("object");return n.onload=function(){n.contentDocument.defaultView.addEventListener("resize",h),h()},n.style.display="block",n.style.position="absolute",n.style.top="0",n.style.left="0",n.style.height="100%",n.style.width="100%",n.style.overflow="hidden",n.style.pointerEvents="none",n.style.zIndex="-1",n.style.opacity="0",n.setAttribute("class",H.SensorClassName),n.setAttribute("tabindex",H.SensorTabIndex),n.type="text/html",y.appendChild(n),n.data="about:blank",n},h=(0,w.default)(function(){m.forEach(function(r){r(y)})}),a=function(n){v||(v=E()),m.indexOf(n)===-1&&m.push(n)},d=function(){v&&v.parentNode&&(v.contentDocument&&v.contentDocument.defaultView.removeEventListener("resize",h),v.parentNode.removeChild(v),v=void 0,m=[])},_=function(n){var l=m.indexOf(n);l!==-1&&m.splice(l,1),m.length===0&&v&&d()};return{element:y,bind:a,destroy:d,unbind:_}};_e.createSensor=g},31743:function(ke,_e,B){"use strict";Object.defineProperty(_e,"__esModule",{value:!0}),_e.createSensor=void 0;var w=H(B(12177));function H(g){return g&&g.__esModule?g:{default:g}}var M=function(D){var y=void 0,v=[],m=(0,w.default)(function(){v.forEach(function(_){_(D)})}),E=function(){var r=new ResizeObserver(m);return r.observe(D),m(),r},h=function(r){y||(y=E()),v.indexOf(r)===-1&&v.push(r)},a=function(){y.disconnect(),v=[],y=void 0},d=function(r){var n=v.indexOf(r);n!==-1&&v.splice(n,1),v.length===0&&y&&a()};return{element:D,bind:h,destroy:a,unbind:d}};_e.createSensor=M},18034:function(ke){var _e=arguments[3],B=arguments[4],w=arguments[5],H=JSON.stringify;ke.exports=function(M,g){for(var D,y=Object.keys(w),v=0,m=y.length;v<m;v++){var E=y[v],h=w[E].exports;if(h===M||h&&h.default===M){D=E;break}}if(!D){D=Math.floor(Math.pow(16,8)*Math.random()).toString(16);for(var a={},v=0,m=y.length;v<m;v++){var E=y[v];a[E]=E}B[D]=["function(require,module,exports){"+M+"(self); }",a]}var d=Math.floor(Math.pow(16,8)*Math.random()).toString(16),_={};_[D]=D,B[d]=["function(require,module,exports){var f = require("+H(D)+");(f.default ? f.default : f)(self);}",_];var r={};n(d);function n(e){r[e]=!0;for(var t in B[e][1]){var i=B[e][1][t];r[i]||n(i)}}var l="("+_e+")({"+Object.keys(r).map(function(e){return H(e)+":["+B[e][0]+","+H(B[e][1])+"]"}).join(",")+"},{},["+H(d)+"])",o=window.URL||window.webkitURL||window.mozURL||window.msURL,s=new Blob([l],{type:"text/javascript"});if(g&&g.bare)return s;var u=o.createObjectURL(s),f=new Worker(u);return f.objectURL=u,f}},25365:function(ke){"use strict";ke.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAA0VJREFUOE+V03lI01EcAPD3fjucs4nmwrXNOY/VdBoe0Tqggi5NgsLaWriWZFQEEvRHBxmL+iMo/KMg6KJSCy03mbapo1vXzCvJUstjZTM1bUzZZP6uF5M0Zwr1/nsHn/d93+/7QjBn3GhuZkm5scvRJIgODWX7sKCQT0oRGIAQorlnp+cIAAhnJghhhobvWRPjQ/rJ8eEVXIxGwcFsGBYWQUTFLrN6yCB9qpjdthA2BSGEsEd1X08NOlrPSiM4PxWJCSNL+HwfSZBMp/Mbr6+vVyyVyQm+SJYrCWea5sOmoMqm4ezu9rqSrUpFjzxBPgpoCkCEwO+3IJIgWRWVpiR5cirF40crZZGc3rkYdDgQp+advUXC9YZs2rjBQRCTwK/T6E9KaJoGJEVxyw3GtNUbt11KWSYp+AuyfRlf86baVJezc0sLb1HIxGxg9mEIIaiurVXgJOiUq6WbV8KVRMD+s45hbftL082DWk0TQohaKJn+9bb3H6Ntr16hvfvU6TExMe4A6G2Xc4+ttqIkL1fXBAAIuGVORMje3BpvNRrxM8fz0xfHxY0F7Hd/HVSYjKVtGpWqI4THc2ELhIRhTHjzXlHax4Z6++3i4iwIIRkAIYQY9+9cfxHKFyVtz8ho9/l8NIbN4mgaQAYDfHI4hRf152TxAsHhK9ev3for2f6F1sZn6w0VFvMuVY43WZHYi08SOKJIP4AYTBbW7XAKCgsvx0tEQobbg1d1fXj/eN2a9Ad6vZ6eBmd+ttlQpK15/uaaLHEFR7lK6QqPiPC63GMsm80eXmN5wmNiAJKIBRjsYCAQCNFAf98lq3lvAYSqqQLNQFNVaXyuMFue6oZ/utZ5J3Chx+NBFEX3xEnEpr5+Z5b1RX2mIHIJyFbngFHXGOr93FX41GI4CSGkAqA/fdcd1N8+xKWpRUiakuLxJ/bosXxdWenDuziOw6UiMdit2Q/cY17U0/nhgtViPD8vNF/h/P2oyz1U8KSqsgDHfQyhWAyyVVow+GOUdo8MnfhnaLq5NdrcC9XmylMUSWFLRSKQuWMXaHlr7/ov6DfGOJB35LSpovw8RRAYmx1ErF27Wvff0HRku9WaA/b613lRUdKrDQ22sl+EE3lgNS3QYQAAAABJRU5ErkJggg=="},75309:function(ke){"use strict";ke.exports="data:image/png;base64,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"},19664:function(ke){"use strict";ke.exports="data:image/png;base64,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"},77882:function(ke){"use strict";ke.exports="data:image/png;base64,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"},66832:function(ke){"use strict";ke.exports="data:image/png;base64,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"},47558:function(ke){"use strict";ke.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGgAAAAgCAYAAAD+Fz2gAAAAAXNSR0IArs4c6QAAEyhJREFUaEPFWwl4TefWfveJzIkhUnNQQ7TETBGzGtoU1bpoixa9bd2rWkVVJ1o1lFtDVYdf+Xu1fkqFqqlURSIINcVMzCQhJIZEZDz7Pt/6hv3tfU7C7T+dh+ecs6ez93q/d613DTEAIDdlaQ13EWYZMLqYhlHVgAHDMNgu/m6w7/RFbHe+8+NMAKZhwEVnAqZLXMOkU2nf/V4uN7uKOJ9dkf8DTFO9sy2mSb/Gt9NHfh7bTv/luWy76YZpumm/m72zQ90m2B2bbnktcYw8X7yz6xr0M/w8fn32Wf6umz+3djy/H3Y9fo9yH3t62qbdq3g66/mAdBfc2w3DZ0KNmI+vGAycooLiZANGGAyXBYgEieEDO0i0hYBj//g57FY4Hgbc3kCSVr8PSIYwCBlbPJCElRtegmGBxLZzI8ptzs/MoNJgdmMaAiB+3WIyvjSibnR2Xxwgvl8/Ri6e0kHi55YKEoHJDeWCmWUYrqbG7aNLlsHE85woLkiQuB3vzyQ6XjJNe/+/AUkaU8CpgcRXr1ixknFi9dv2MSZprAHcMN2MFZKdFhjyOM4eO0iK5d7A+xNMIpvCvdy4feS7NABVuaElMzgrbCCx7wQtHcXZw/0ed30OMG3uTnNvysn9jzHJYgYtv1KZZLk7nW3k7hT7uAsrkUnkgvlK98YmG/hOsLSFIlaP5galz7DcuQtIN24l/6dJcUMYmwPDjO4NJOHuvIAkwdJjV+kgcZBLe+nujiIIc2X8ySQW5Lo8mSIe0hGX1HEaANKgDCRhdXF9AZICpHQm2VyeR0yy2Kjip7g3N7lnC3TGYDIMu0e26G8eWmxKIcDJ4I1JmmCQbuz/ASQr/ggRoWISfyhubM4oe0ySK14zhJMlXEEokLiL+2+AJO7NI1Zp7s4mFrwKBzeMWwcWmRTdlVpzKDTFJAskyRLL3Vnu8H/F3ZHisl606rwyiYEkFJaUf0rV6aySbLACvlJXTHE6Y5JSbfbY4y0mPTCTlNLUYqUHSIYASEjokkFiAAiFpwsCAaxN5cHA+QPxCKteBxWq1iYzekjwUmLS7YzLCClfCT5+/jbvx9SWBInIr9S4SQuf48WYZMluKbVVULdJb3aklMsy7kgGOUAiJhUpheVUdxKUC8k74RcUgsp1ooQMl6rMi+pzCAfpfu3uzoSRtX8huTjLzUlJbW2j/Upq8yzHktkGigrz4OsfKOIWsOK9F9Ck13No2OUZOu7w5uWoXK8xKtVrTEylK3iAZMB0F2HNlFdQMaIeOv/1ffqdg+u/V0DxmxdYiPeQ8g8hMrqXBpJckSUxyRISHC8Jkl0+C41Phs69k4XdP85DZPsYVGvQXKwFnv/wPInnUwc3/YDM1LPoNuIDlZs5pb9cLDYl6EU8yIVmZO37xuTsYBJbBG6nu3MkqHSsAKkoLxdxi6eiYq1ItOr3Mll+5fsvoHGvQQSQu6gQSSsX4OKhnWja6zlEdR8A0+Xjkcyy651N2oLdy79A91FTUbVBM/qNX6aOpPfbGVcQWLYC/AKCFUh3b11HeK0G6Pn3qbSNuT5uPUesEYzznsTKpLZkd1dYkIcDG5bg8pEkNOzcF5HRT+JW+kXk5dy2EmY3cOd6Kk4krkejzv0QVD7cdh8BIeUQWrGaTb7bwBIgEdjaMxiZf3ylAJLqTa5uySyl0CgTtdxdQd5d7FgyE3czr6HbyI9RtlJ1YszK9wdzgDr3E1LchZTdm7A39j9Q/ZHm6PjSO/AJCLIxyXQX45dpI+EbEIynJnyuQKB7LS7C0rf6IfqFN1G3bQ9Id7d25ihUe6QFWvYdYbk/G0iyAsBB0IWDnrfoysopneU5zJgpezbj8JYVtNAyzp9A+ulk232W9qVmVFtEdfuL9yTXJvEFIyU7M/d+ZcpSjmH42JjE5LcNJM0V3rxyDkkrvkBRQR66vvwhyletxWWzYeCnD4agcU/GoKcJ0MxLp/HHz4tx++ol+JTxRWh4FXR5ZRICQisokM7ui8OupXPRecS7qNk0Gnk5t2C4XPAPLofCvFz8OGEg2g8dizqtu3G2FORj2YQB6DR0PCKad4RLd3+2YGslsx4xST9OGcmTSRTvxP6rZ48gvGZ9uFw+Kg86Ef8LLhzagcdfngTfgCDOHHcxbl1PRdmHqntWJhwy3Ju7k0wybuxZYDJDcGYw+1ogmVr9TQfqzo00/Pbl+wiPqI92g0YjoGyYApKBFP/dp6jTqjOCyj+EU4kbcCl5F2o1i0bz3sNRXJCHrV9PQnCFcPQa8xlPck03fvl0FLkF5t7Yz8Yvmobc7Cw8OXYOcm9eR+zk4eg0fCJqNe9AAN24eAqbZo9D/w+/RXDFKjx7EOpOl+O8BieDNH2SNSStZqcLC104iPPcxSi8l0vs5sa06nY3084h/vtZaPbEYEQ0bkfsZq70wsEEHImLRfuBo1G+au0SQSotJtHzMICcRVBnTHIyiYGVenI/qj3SEi5XGQscAAW52bh8dA/O7PmN/HR47QZoFjMYleo0EtUGF7JvpKMw/x4q1qhLhj23fzv2rPgCfScugH9oBaSdPIAd/5yFmHGzUbFmJG6lX8C6Ga+jZb8RaNjtWQLoZPwvOPzrcgyatozXt3gGRG5M1bukoCCQmFFFfZUdLaSfFcRLBunQxh9w9XQyOg55W8UW0yxG/t07iF8yE8EVHkK7gaN4nut20z24i4uxe9UC5GRloOOQ8fAPDPk3QLKSb+N60hc8UWUrUDFJxhlLOHgDiQHLbuR2+iVcTUlG+umDyEo9D7+AINRu0RF123RH+Sq1lKDgZSFdrvNV/+MHg+EuKoKPrx8KcnPo+MgOMWgz4G/E7Izzx7B53juoEtkEPV6fTvsTFk/HxeRdyu13GjoOtVt2cTBJlsKtsowsjxOTPECyqs26BM+5mYGdS+fQvXUaMg5lK0Ug904mEv9rDrIzr5JwYHbIy7mD/HvZKLibTeAxEVGYn4cq9Zqgdd8RnvU7vdLh5qDw5FjETvb0Gbvn22S2ktxKDEiQDDCXx/ZfPJQAFoMYQ1je4i4qVoZiIDNl5VPGj29zVHQq1WuEqG4DuGLkIQunEjfS4ggJr4KLBxORdmIf+r73DXwDg4kNl47sRvyi6TB8fDBoxnLy8zcunKL4l309DUkrvsTT7yygOMhIkn8vp0QmybYD93SiBEOGkYVVq9rtGxCgYk9BXi4Sl8xCdmY6eo2agZys64hf8in8g0LhHxwCP/YeFAK/wFD4se8BwQgMCsXdWzdwZFssWvUZTkDx2O9ZiFXtEVtpyQ3j2q7PFUBW70evJlgSXMakAz9/S8BUqPYw7t68QS6ofvQTPI5piOifGRIX9scjLKIeOgwdR20KXnXgIJKYSDuPX+eOQ6cX30ZE0/aqVnfk12U4mbAe/iFl0az3i6jF9onX8d9X49i21Rg4damoaQFLxvRR+//sB7YYBkxZyl2jMBoDPv3UIdRkscY0KYUozLuHMpQDmhSnXGV8YLjKoLioEMWFBfDzC0RK0mbUbBINX/8g1ZdygqTXBOUiopLVtZ3zVAzSE1aLSbJoyg1KTTfBJHbMsW2xuHx4F2LGzdN6SY6qgzgn7tsp8A8uiw5DxgpwLJCKCu7h188noHL9pmj17Kuk7uRvbf/2E7h8fFCpTkOkHt9PQkK+tnz+DgLLV0THlyZwEek2Kf6JcKOViHiMkfFJZBuyG2hjEN/oQu0WnVQfyVv74drpw0hcNgcxb36GgNByWD31FTTq9izqt+mBM3t/x8nE9bRPl+r2XMzJJJ44y4Yfuw0jI3GeaYrU3puk5vGJs0gyTAfp+LZYnN65AYFlw0pcrMKZ4V7OLdRo9BjaDx5rdWgZFKYb2xZNRf7d22jTfyQyLp5CxtljKOPnj/YvjsfqycPQqPtf8HCLjlg1aRg6DptAK5K52PUzRyN68BglvyVIwmt5FQ58tepdWeHuvAoH6QZNYkv8d9PRLGYoKlSvg0vJO/HH6oV4ZuLXcPn6I/aTEWj0OAOoJ87u3YqTO9bjyTGzrWqDJtdVh9bRd9JrgtTgy9gxlxjkZotZ9HRKZpInSMfjVuPigXi0fvY1j7a4veEHHNq0jJLZ9oPfUrKenbT3p69xZs9WziqXC2HVHqbKRI2GrVGuUnWsmfoq+rz7JcpVqYl9qxfi8uEkPP3+N4j79hOwakLfd7+C4fKxFogJlRcJKPgq5gHAqtc9EEiWwLhwIAF7Y7/BU+PmIrBcRaTs3oyjv63EM+8tpLjCAIrq3p8AYs9zMnEdYsbMUTHH6sraa396D0l9ZqKBXFzCHNVucGuu637ujuYNDAOMQZcP70Tnlz/kcltEfot5Vld294r5CCoXjvaDx2jzDaCMPDsjDRVr1UdY9bpw+fqRi2Nd2cMbl+LMni3o/8kPBEBRfi7WTvsbAXc15Qi6vPIBIhq39WSvAySZJ4korYElXIpqN2u9G5twcCNu0RRCufOI98joBzcswbWUI+g1ehbNN6z6eDiVsiLb9kTKni04uWMdnnprrk29PShIkknGtYTZxCCx/JVSexB3x0BiDDqduOGBY3HNJu0Q/cJbto6sXnjllW8DRfdy4BcYjNgpf0XlelHoMGScGkI5sX0t9q9ZhPDakZTIlvi6D5PsjNIbf4JpWnf2blYG1v1jNFo/8yoebtmJjL716w8RGl4VrfuPpNUe+9EwAqhBuyeRsudXnEhYh95j54LV8jLOHUflulE8VNg6v15mHLRKg3E1/jORB1lVbObuXM72ApV5mItj5rCEw7H4NSQSuo+aDhflUVyKW4pQVikMJCyZiYDQ8mj/vGSQ0NmiipGTeZVYcenwbty4dBrRz72BHUtn46m356N85QhiZ/qZZMQvno6iwgIySou+w1Ty6hUoB0iqSabcnZTXOpO0oqsA6cjWlTgRvxZPv/cNyvgF4PbVy9i84F206P0SHm7VlX46dvJLaNxjICLbPkEMOpGwFr3HzUNe9k1smj8R3V6dhJAKlVVM0ks8JfWRjLTt/zBZu1u1G5gZXCLnKSUmSRd2PP5nXDyUiMcG/J2D4wDIikMGDm38HiHhVRH9/JuqfcFqbqyImnk5Bfk5d1C2UjVUa9ACD9VugH1rF6NOq65o0XsYioqLcCJuDZI3L0doWGV0fW0yziRtwbGtsajTuivaPjeaEl3vIJlwWZ0KUYHmR5KqUmDZJ39ky4Epq3UzR1MbpO2gN8AKuwlLPsWtq5cR89YcuMqUIaOvmvwSonoMxCPtnsTppM0EUJ/x83Ez/QLiFk9Dr1HTqP5oCQFrpMtjCEUksUZq3CxikASJsYRuWDbjZOvBgxkc1OPxa3F656YHdnEsXkQzBgnWFOTnYvfy+aj2aHNUf7QlQsKq0HVZ5s4qxn0mfgnGrIR/zqQSUdUGzdHpxfHwDSlLv5myazP2/vQVwmrURY/Xp/FipbeXaYHExZTVAPQEiRAThgSunTmK3xd+hC7DJ6JKZHMSCuf2xaHdc28gIqqNKpqumvQionoOIheXemwvklZ9hTotuyAr9SxVHPqMnQe4XCXEJM8iLd1j2raZNDSigyQndXSQVDnI5r4MnNqxHpeO7kH31z4WeYs2quWSI1k832HVb1adfqz/SC+DkfZJIcYOlpjWatIe+bnZ2LbwI0Q9PgA1mkZzljITisHI9JMHyGAdho4vdaE8+Myd3d3lZF7DqZ2b0DxmMBWTT+3cSHdQv10v0WLnx+9fuwjVHm2FynUbo7ggH0e3/oSs1DNUVYlo3IYn2F4HI7VirmMuz0jdNpMYxFaVjB1ywocCjsakkkCimMSGSBj7HACqpFZWDkQsk7FKvZc4vcoHWSh11KZXnSBJ9ypLSCULhz/PJFV51tsFXmbuuAvjdUZ7K4ENRsrJVKukJLuyTvCIQam/f6oqCRIkW0ySCk/vDXGr2oQAB5cLAinBbUqQThGVAw8Boo1zqfEvYXJt5s4JkvfWuRQepZBJc3f2cS5vMcnu7ryCpE0XeWv42UCicSovLQ3ZOneAalzZOiPNMIyq0uA0i0XEsebjZCNOHlMSk+RkqpLtzoafGowsYQhFMNZSivcHSdXyZPFVSpX7zNwxo0nhQHOkTO0JTO0xSax4VeS0mne2rqya0nHGEieT9DFkWbnmLk7ONoi6E9uWbqT+PmOZSaO/lsyWA/CWXKYyg8dolgUU38+P91HDI7wk5OjKMpBU61yyThtCUedwcGy/IVjozd2peQrmCrkroJyu1Ne/xSQxbOJo+CklKHMbFJcQZzRgaYxLAmnlXwokwSKYWG5ciZtZA8VmMmCGKaktjEQOyzZpKguYmtHVtI8OBuvK8u/eurJkeMd8gy0WCRXJwXGMIOuukmrNHAy9uEqnM3vKRVUKSiVPr4oSDw1oiHagPu/A2kmih6OXasidlejC7CBZfyVhB0nEpKwABDSlNcZAMtzuWaaJLtLdSTdlgWRnkZ0ZcrXrMYa3z+8Lkoox+jiXAEVNEwmGaX9VwRwSFzOlg/QgTCodJDnGZQfJXtS0/1XF/UCy/pRFMknLv4B0mO7tAcV+E4LavnLlX3lTS/GLYAyLAAAAAElFTkSuQmCC"},71979:function(ke){"use strict";ke.exports="data:image/png;base64,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"},91833:function(ke){"use strict";ke.exports="data:image/png;base64,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"},31081:function(ke){"use strict";ke.exports="data:image/png;base64,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"},96593:function(ke){"use strict";ke.exports="data:image/png;base64,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"},60345:function(ke){"use strict";ke.exports="data:image/png;base64,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"},20345:function(ke){"use strict";ke.exports="data:image/png;base64,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"},79005:function(ke){"use strict";ke.exports="data:image/png;base64,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"},39057:function(ke){"use strict";ke.exports="data:image/png;base64,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"},96908:function(ke){"use strict";ke.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKQAAAA8CAYAAADogBFvAAAAAXNSR0IArs4c6QAADzxJREFUeF7tnQl4VcUVx3/3JSEBARFEFllcQAMJuKDUD7FqtVbFtUqtS6ufS1soxaW1Si0KBaFVWy2ittqqdQ9xpYq4tLgVFWUThYQlJIEkkJXs63u333lzL+/mrfeF9/KSeM/35Xv3zZw5c+bM/83MOTN3ouGQY4EuZAGtC+niqOJYAAeQDgi6lAU0fUayHqCR5gJXEriS/T6TICkZNOMzIN/gFx7/8vvLiFxDtpfP4G2Xb5Ej6SaPKddav6mPtb5g9e/PF9nSvmTVlpD1S36Sr63WOj1ukD/d+PR+b1NpAekmj5Gve8Dd5lc2ivK4G2lzV4K7Eo/8eSrQ3ZW424rw6J/ST1utTb2jtkuhLAplwgDS7BDj09txdgFqgsjCbwVOKMCYAPH+IAzABIDf8qPYz+OygMus0+8HFQDmYDpaypj1mp+m/qKbgMoKQO+zxwIyCzhNPhOIQQFrAas/uK3l5dlt/SEY9bbn0ZsrS1obynfXNJQXFTeUbPugua5utQZrM7PZHgU2EsIaHJAJUcWp1JYFklKgVx/fX0oqpPSBgw6BASOh/xAlxgC+u6WJqh0bqdi2nrb66gI0sjQXL2W8xHpb9XUykwPITjZ43KuTpcnBw2HA4TBwFBw81Dt66+42aoq2U7FjAw0Ve8R52KxpLB6v86KWjTvuetmswAGkTUN1W7aDBsHIieiHjkVDlhpuavbkU7ThE9wtjQLMbTosyFzGc5pGoD/RyQ13ANnJBk9YdSm9YVg6+tB0NC2ZtqZ6dn/1P+rKirwqaRqrknVuSM9mZ8J0FD2CetmJ1MipO74WkPXn0VOg72CvY1ZRuJU9uRvQPW4ZLes0jdszlvG3+CoRWroDyERZPtH1Dk1HH56B5vHQWFvJzrUf42lrUaMlPJ4BMxOxtnQAmWhgJLL+3gPQR5+E1qsPDdXl5G9YjUdipIreGpzGFUOfpb4zVXQA2ZnW7op1paSiH30qWlIqdVWlFGz6Al1ipmqkXH0wnD0ym8bOUt0BZGdZuivXk9IH/ajJaK4Uasr3UJizUQX/Fb2WOZ7LtfniosefHEDG38bdo4bUvuijJqG5XFQU5VOSv22/3hr8NTObWzqjIQ4gO8PK3aWO3v3RR57gHR13blpHQ121FZTTM7N5Od5NcQAZbwt3N/mDjvDu8jQ11rHj6/XoskevqKxXMuOPfZHyeDbJAWQ8rdsdZct2zYjj0VJS2bu7gLLiXdZRMiszmx/Hs1kOIONp3e4qO60/+rBx6O5WdmzeRHOTz8lO0pg2fhkr4tU0B5Dxsmx3lytTd99B1FZVUZC31dqanMzxTNDmsz9gGcumOoCMpTV7kixXEvrwCV4HZ1vuZlqamqytu2VCNn+NR3MdQMbDqj1Epj5wBFqfgVSU7qWkWB3CENKgEhibme39jCklBpCysf/H3aohrY1w64CYNqrLCJOziRJg1hN+qqtjJklJQx88xrudmJuzBY+cVveBcmlmNr/qmODQpRIHyPuKlVYtjXBL/1i3K7HyDh4Gp94IU2+Ee0+A+pgPJJ3WPn3QEWgpvSkpKaaiosJabxsuJk7IYksslXEAGUtrmrIW5sHAkerb7UO6NSBJ6wcDhnvXkFu354HlDK8GKzOzOS+WJnQAGUtrmrIW5atXCHoCIDXwDDwSlyuJvIICGhran7OIdRjIAaQDyIgW0PsNRkvtR2l5OaXlAcuPmIaBuh4gp1wP/QYrI338ODRUBRpM0+Cc36p0OVT6nwd9PIcdAydcqr7nroL8NXDi5TBmKoyepPgL16n0dS+3dzgGjoaTjY0If7n+Wow+GdK/p1Jr9sC+Ihg1SX0X3Xob6+K3F0FLg0r/egUUbWovSRy8SdNh5PEw4jho2Ae71sOuDbDhVaWvP1nbWLIZvvo3TLwQvjtDvdQlaf+eB2Uxeuu1V2/oP4yGhnryCn3etqmWS+PmjGUsiYhsGwxdD5C/WwsjJirV7xkX3KjyPvZSY+poqoXbBvqaetzF8HPjDMAbc2HIWDjlp8FNsfldePIaH+iTU2FxIRxkyHvgu5D3afCyM5dDprF8emuBN4jM6TPDm/zZG+HTf/l4xpwG1z/nXaMFpYIv4fHpUGVEJEwmaxu/eBFyP4Br/t5exMPnwZb3bUDADouGPmiU9+3FnLxC3BZvW0rHMgzUswEpI5O8Q9LaDAVroHgzDE2H0SdB6kGqJyryYdFJ0GicbLnsfjjLOGn1yT/ghRmBPSajmgBXLg+Qwwd3j4WzboXTDV4J95jkPZxghH2e+xl89ozKEVDdlKVu8RAq/lqNikm91Eg++GiVXlsGD52tRr1ggCz+BgaPAXk/20oxBSTo/YagJfdiV8lequuMEd9SnwYxCQP1bECKwerK4ZELQUYbk2RbbNZbMOQYlbJyMSy/Wz3LdDjvG/XcWAN3Hg6t7XYp4IxZ8CNjmSCj7NJp7cEQyamRH8m8zT7H54WZ8MkTPhlyO4ZM+xcvUGkb3oDHLw8OSDP1m3fgw0ehtlSBWUb2ysL2eh3It7T+iMddVV1LUVnQMFZMwkA9H5CPXQqb3gzsChlVBBSyHm2uh7ljFHiFbn4Pjj1DPT/1U5Bp0Uq/XQ1HnKxSnrgC1r8aHSAvnAfn3aXKfPYsPHN9cKiYywIJrC+a5Ft/WqfsSDIOBITWsnJjRr/DaG1pIbewJKjUWISBejYgZTqeOzZ0l9zyPhxzusp/7BLY9JZ6FifjhhfUc85/YckPfDKsI6iMRnNGq3t+rBRphJyzBuQgrNBD34etHwTXcfLVcN3TKu/d++H136lnKyDlx3TXkcGdv1iB0ZTT7zDv0/aiMppaWoNKP9AwUM8G5Fdvwt8MjzuY+ab/Bc40dr+yfw2rDEdRRgMBlXSArAFl9KwyzgVaR7f3HoDX5gRKjgTIh6rV2lZow+uBSwJTojhX489R32QUltHYH5A7P4P7T4s19ILLk2k7JY3SqhpK99WFqvOAwkA9G5Af/R1emhW6s865HS5ZpPJXLYXsW328Fy+EH9yhvi+/B1YafH/YCoceqdLnZUBpu6NZKj0cICVgLvnRkoSCFk8OBOSXy+DJq6OV1jH+5F6Q1p/G5mZ2lAQJxxlSDyQMFHtATpgGR56iVNvyHmz7KLDxstcrXqpQUx3cdoiPJ5ZhnzUvwNPXhjb+tLth2lyV/86f4I3f+3jF8Zmfq+6SLNsB96TDUVPgNx8qHmnXg2cFlx0OkDIyPrhPrV2FJNbqe8MvtK4S3go2Zcv6Vta5nUGicp9B3vuBcooraXMHfxHxQMJAsQfkRQvg3DuVeazeq9Vgo06EOz9XKXu3wvwMX651fbXgeCgxPF5reQlgLzSCvuHikOJpSiwxFF3zBEy5TuU+exN8aqzXTP5fvgkZxvrxz2fC5CvhtJ+p3KevgzXPRw9IKWHd6w41yoYDmH8csrMAKTql9vWGqoqr6qisaw6pZUfDQLEH5Hd+Atc+qRRdmw3/vCpQaStPzn9gybk+nl+8BhMvUN+XXgCb3wksf+1T8J1rVHo4QMoux7xxwcMfElwXUJt7zg+cDnmr29clux+/MDxoGW0zzlVBc9lNmTMy9Nov0hpy1goY/31Vl3/Ix6rB8ZfACT9UKRJe+vw59ZxIQMq0nZJGbUMzBRVhL7XoUBgo9oCUoPMdxu6GBKQXTIByy4VaKWnwm4/VVpnQf5fAy7/2dcP0B+FMY90XbMo9fCLM+UJNpZEAKflfZqndGH8SZ0acGiEJSC82wjhWPokH3pvnA62ZJ/G+rJsDZZop1nWmePni7VvpuIvg56+oFNlynJ8JzX5OgswCd63zbUH+5Xuw/ePEA1KWGvIOt9vNlr21eDyhz3p2JAwUe0CKyWavhHRjfVVXoUAni38x8ik/geHGFC33yMgIZu2wcWfDr972dZ/slnz+PNTuhaNPhUvuVd6vSeFGSPGQBbjrXoH3/gxl22BIOpz0I593LXIevQi+ttRpBc/5c+ECI2hupt8rMcGvQgPSGk6SsFHO+2rPXLxyk2a8DrLeFirdrtaHEryXy0ZlmTD5Kt9uzTcrVXDfpESOkKKD7G3rOruqmqhuCv9qjcvF+RlZhDBuoAnjA0iJ1ckoaR4wCNV1794HrxsBYivPze/CsWcGLyUgWz5XAVMoHCAFiEInXhZcloBkxQKQvehQJFP6wh2+Lb78L+C+KaH5JUeWE7Ks8KdZaeqqZaFDRsCMN3z79qEk7t4IMjo21XQdQLpSvP8QoKaxlcJ9odeRorCmsSVjHBPtvhQWH0CKJtKRVz3mO4BgNXhFgQrHyC8/GMmhUNlTPvWG9rnVJarcphX2DleIByrOxxVL1Mhsxv5EqkyVWbNh4/Lw4JLc2e/4TvbI3raM2pFo6k1wxkwYPNa3z2wFpJSXeOf5v1d751bdJE/WqfJDkeWBf+A90SOkTNtJvdA9bWwpa8ET4RWNaMJA8QOk2WF9DlEHGmS6FhDszVX7rXao76EwdJy6yF2OjJXLieUIFKqzpPMlHCWjdsFadWTMDglQFhVAnwFqi/HOEYHrPTtywvFIBx96FAzPVODbk6PW3XbCQQdad0fLiz11D7urW9nXHP4eqmjCQPEHZEcb3NFysR49JMxz5SNKm9VPgZzYcQjE4ZOzKy1u8qtt3Jmv8fCEZcyOZDoHkJEsNHcjDBuvuO6bCvlG/DRSuW9Dvly74tHZUumOOG3LUWo7L4U5gAwHHHGsxMESkvOKC40DEd8GsEXRxqI6D1VNka+P1ODtzGzOD7t66XGX3sdyypaguATHhbJvg1UPR9FN3x7WxjbYsc/ezSqRwkA9b4QclqE8aiEJeH/5UseQITs5F81X/+tQSPa6g73f0zHpPaqUhMa3VrppDRMkNxscKQzU8wDZo7q6+zSmtFGntN6GcwOECwM5gOw+fd6lNW31QG6lADLytTHhwkAOILt0N3cv5XZWe6gXZNqhEGEgB5B2jOfw2LLAvmad3bX2pu1QYSAHkLZM7TDZsYD4NDn2YpJeccHCQA4g7Vja4bFtgeJ6D5WNNqdtcXD8TgM5gLRtaofRjgWa3LC9yl5M0jtK+p0GcgBpx8oOT1QWyKt209Aa2ds2hbpczM7Iwrvr4AAyKlM7zHYsEKVz0+5uIAeQdizs8Ni2gIyL8icxSbeNnZv9go0wkANI26Z2GKOxwJ56D+VRODdmGMgBZDRWdnhtW6C6WWeX/Zjk/jDQ/wHkSLPJ/mcrgQAAAABJRU5ErkJggg=="},57177:function(ke){"use strict";ke.exports="data:image/png;base64,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"},81378:function(ke){"use strict";ke.exports="data:image/png;base64,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"},79633:function(ke){"use strict";ke.exports="data:image/png;base64,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"},23473:function(ke,_e,B){"use strict";B.d(_e,{H:function(){return M},Z:function(){return w}});function w(g){const D=+this._x.call(null,g),y=+this._y.call(null,g),v=+this._z.call(null,g);return H(this.cover(D,y,v),D,y,v,g)}function H(g,D,y,v,m){if(isNaN(D)||isNaN(y)||isNaN(v))return g;var E,h=g._root,a={data:m},d=g._x0,_=g._y0,r=g._z0,n=g._x1,l=g._y1,o=g._z1,s,u,f,e,t,i,c,p,A,x,C;if(!h)return g._root=a,g;for(;h.length;)if((c=D>=(s=(d+n)/2))?d=s:n=s,(p=y>=(u=(_+l)/2))?_=u:l=u,(A=v>=(f=(r+o)/2))?r=f:o=f,E=h,!(h=h[x=A<<2|p<<1|c]))return E[x]=a,g;if(e=+g._x.call(null,h.data),t=+g._y.call(null,h.data),i=+g._z.call(null,h.data),D===e&&y===t&&v===i)return a.next=h,E?E[x]=a:g._root=a,g;do E=E?E[x]=new Array(8):g._root=new Array(8),(c=D>=(s=(d+n)/2))?d=s:n=s,(p=y>=(u=(_+l)/2))?_=u:l=u,(A=v>=(f=(r+o)/2))?r=f:o=f;while((x=A<<2|p<<1|c)===(C=(i>=f)<<2|(t>=u)<<1|e>=s));return E[C]=h,E[x]=a,g}function M(g){Array.isArray(g)||(g=Array.from(g));const D=g.length,y=new Float64Array(D),v=new Float64Array(D),m=new Float64Array(D);let E=1/0,h=1/0,a=1/0,d=-1/0,_=-1/0,r=-1/0;for(let n=0,l,o,s,u;n<D;++n)isNaN(o=+this._x.call(null,l=g[n]))||isNaN(s=+this._y.call(null,l))||isNaN(u=+this._z.call(null,l))||(y[n]=o,v[n]=s,m[n]=u,o<E&&(E=o),o>d&&(d=o),s<h&&(h=s),s>_&&(_=s),u<a&&(a=u),u>r&&(r=u));if(E>d||h>_||a>r)return this;this.cover(E,h,a).cover(d,_,r);for(let n=0;n<D;++n)H(this,y[n],v[n],m[n],g[n]);return this}},55802:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return w}});function w(H,M,g){if(isNaN(H=+H)||isNaN(M=+M)||isNaN(g=+g))return this;var D=this._x0,y=this._y0,v=this._z0,m=this._x1,E=this._y1,h=this._z1;if(isNaN(D))m=(D=Math.floor(H))+1,E=(y=Math.floor(M))+1,h=(v=Math.floor(g))+1;else{for(var a=m-D||1,d=this._root,_,r;D>H||H>=m||y>M||M>=E||v>g||g>=h;)switch(r=(g<v)<<2|(M<y)<<1|H<D,_=new Array(8),_[r]=d,d=_,a*=2,r){case 0:m=D+a,E=y+a,h=v+a;break;case 1:D=m-a,E=y+a,h=v+a;break;case 2:m=D+a,y=E-a,h=v+a;break;case 3:D=m-a,y=E-a,h=v+a;break;case 4:m=D+a,E=y+a,v=h-a;break;case 5:D=m-a,E=y+a,v=h-a;break;case 6:m=D+a,y=E-a,v=h-a;break;case 7:D=m-a,y=E-a,v=h-a;break}this._root&&this._root.length&&(this._root=d)}return this._x0=D,this._y0=y,this._z0=v,this._x1=m,this._y1=E,this._z1=h,this}},65587:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return w}});function w(){var H=[];return this.visit(function(M){if(!M.length)do H.push(M.data);while(M=M.next)}),H}},31756:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return w}});function w(H){return arguments.length?this.cover(+H[0][0],+H[0][1],+H[0][2]).cover(+H[1][0],+H[1][1],+H[1][2]):isNaN(this._x0)?void 0:[[this._x0,this._y0,this._z0],[this._x1,this._y1,this._z1]]}},60444:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return H}});var w=B(14086);function H(M,g,D,y){var v,m=this._x0,E=this._y0,h=this._z0,a,d,_,r,n,l,o=this._x1,s=this._y1,u=this._z1,f=[],e=this._root,t,i;for(e&&f.push(new w.Z(e,m,E,h,o,s,u)),y==null?y=1/0:(m=M-y,E=g-y,h=D-y,o=M+y,s=g+y,u=D+y,y*=y);t=f.pop();)if(!(!(e=t.node)||(a=t.x0)>o||(d=t.y0)>s||(_=t.z0)>u||(r=t.x1)<m||(n=t.y1)<E||(l=t.z1)<h))if(e.length){var c=(a+r)/2,p=(d+n)/2,A=(_+l)/2;f.push(new w.Z(e[7],c,p,A,r,n,l),new w.Z(e[6],a,p,A,c,n,l),new w.Z(e[5],c,d,A,r,p,l),new w.Z(e[4],a,d,A,c,p,l),new w.Z(e[3],c,p,_,r,n,A),new w.Z(e[2],a,p,_,c,n,A),new w.Z(e[1],c,d,_,r,p,A),new w.Z(e[0],a,d,_,c,p,A)),(i=(D>=A)<<2|(g>=p)<<1|M>=c)&&(t=f[f.length-1],f[f.length-1]=f[f.length-1-i],f[f.length-1-i]=t)}else{var x=M-+this._x.call(null,e.data),C=g-+this._y.call(null,e.data),S=D-+this._z.call(null,e.data),P=x*x+C*C+S*S;if(P<y){var b=Math.sqrt(y=P);m=M-b,E=g-b,h=D-b,o=M+b,s=g+b,u=D+b,v=e.data}}return v}},14086:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return w}});function w(H,M,g,D,y,v,m){this.node=H,this.x0=M,this.y0=g,this.z0=D,this.x1=y,this.y1=v,this.z1=m}},67217:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return r}});var w=B(23473),H=B(55802),M=B(65587),g=B(31756),D=B(60444),y=B(44576),v=B(76077),m=B(53212),E=B(56173),h=B(36427),a=B(79853),d=B(79840),_=B(87325);function r(s,u,f,e){var t=new n(u==null?a.P:u,f==null?d.q:f,e==null?_.i:e,NaN,NaN,NaN,NaN,NaN,NaN);return s==null?t:t.addAll(s)}function n(s,u,f,e,t,i,c,p,A){this._x=s,this._y=u,this._z=f,this._x0=e,this._y0=t,this._z0=i,this._x1=c,this._y1=p,this._z1=A,this._root=void 0}function l(s){for(var u={data:s.data},f=u;s=s.next;)f=f.next={data:s.data};return u}var o=r.prototype=n.prototype;o.copy=function(){var s=new n(this._x,this._y,this._z,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1),u=this._root,f,e;if(!u)return s;if(!u.length)return s._root=l(u),s;for(f=[{source:u,target:s._root=new Array(8)}];u=f.pop();)for(var t=0;t<8;++t)(e=u.source[t])&&(e.length?f.push({source:e,target:u.target[t]=new Array(8)}):u.target[t]=l(e));return s},o.add=w.Z,o.addAll=w.H,o.cover=H.Z,o.data=M.Z,o.extent=g.Z,o.find=D.Z,o.remove=y.Z,o.removeAll=y.x,o.root=v.Z,o.size=m.Z,o.visit=E.Z,o.visitAfter=h.Z,o.x=a.Z,o.y=d.Z,o.z=_.Z},44576:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return w},x:function(){return H}});function w(M){if(isNaN(n=+this._x.call(null,M))||isNaN(l=+this._y.call(null,M))||isNaN(o=+this._z.call(null,M)))return this;var g,D=this._root,y,v,m,E=this._x0,h=this._y0,a=this._z0,d=this._x1,_=this._y1,r=this._z1,n,l,o,s,u,f,e,t,i,c,p;if(!D)return this;if(D.length)for(;;){if((e=n>=(s=(E+d)/2))?E=s:d=s,(t=l>=(u=(h+_)/2))?h=u:_=u,(i=o>=(f=(a+r)/2))?a=f:r=f,g=D,!(D=D[c=i<<2|t<<1|e]))return this;if(!D.length)break;(g[c+1&7]||g[c+2&7]||g[c+3&7]||g[c+4&7]||g[c+5&7]||g[c+6&7]||g[c+7&7])&&(y=g,p=c)}for(;D.data!==M;)if(v=D,!(D=D.next))return this;return(m=D.next)&&delete D.next,v?(m?v.next=m:delete v.next,this):g?(m?g[c]=m:delete g[c],(D=g[0]||g[1]||g[2]||g[3]||g[4]||g[5]||g[6]||g[7])&&D===(g[7]||g[6]||g[5]||g[4]||g[3]||g[2]||g[1]||g[0])&&!D.length&&(y?y[p]=D:this._root=D),this):(this._root=m,this)}function H(M){for(var g=0,D=M.length;g<D;++g)this.remove(M[g]);return this}},76077:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return w}});function w(){return this._root}},53212:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return w}});function w(){var H=0;return this.visit(function(M){if(!M.length)do++H;while(M=M.next)}),H}},56173:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return H}});var w=B(14086);function H(M){var g=[],D,y=this._root,v,m,E,h,a,d,_;for(y&&g.push(new w.Z(y,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1));D=g.pop();)if(!M(y=D.node,m=D.x0,E=D.y0,h=D.z0,a=D.x1,d=D.y1,_=D.z1)&&y.length){var r=(m+a)/2,n=(E+d)/2,l=(h+_)/2;(v=y[7])&&g.push(new w.Z(v,r,n,l,a,d,_)),(v=y[6])&&g.push(new w.Z(v,m,n,l,r,d,_)),(v=y[5])&&g.push(new w.Z(v,r,E,l,a,n,_)),(v=y[4])&&g.push(new w.Z(v,m,E,l,r,n,_)),(v=y[3])&&g.push(new w.Z(v,r,n,h,a,d,l)),(v=y[2])&&g.push(new w.Z(v,m,n,h,r,d,l)),(v=y[1])&&g.push(new w.Z(v,r,E,h,a,n,l)),(v=y[0])&&g.push(new w.Z(v,m,E,h,r,n,l))}return this}},36427:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return H}});var w=B(14086);function H(M){var g=[],D=[],y;for(this._root&&g.push(new w.Z(this._root,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1));y=g.pop();){var v=y.node;if(v.length){var m,E=y.x0,h=y.y0,a=y.z0,d=y.x1,_=y.y1,r=y.z1,n=(E+d)/2,l=(h+_)/2,o=(a+r)/2;(m=v[0])&&g.push(new w.Z(m,E,h,a,n,l,o)),(m=v[1])&&g.push(new w.Z(m,n,h,a,d,l,o)),(m=v[2])&&g.push(new w.Z(m,E,l,a,n,_,o)),(m=v[3])&&g.push(new w.Z(m,n,l,a,d,_,o)),(m=v[4])&&g.push(new w.Z(m,E,h,o,n,l,r)),(m=v[5])&&g.push(new w.Z(m,n,h,o,d,l,r)),(m=v[6])&&g.push(new w.Z(m,E,l,o,n,_,r)),(m=v[7])&&g.push(new w.Z(m,n,l,o,d,_,r))}D.push(y)}for(;y=D.pop();)M(y.node,y.x0,y.y0,y.z0,y.x1,y.y1,y.z1);return this}},79853:function(ke,_e,B){"use strict";B.d(_e,{P:function(){return w},Z:function(){return H}});function w(M){return M[0]}function H(M){return arguments.length?(this._x=M,this):this._x}},79840:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return H},q:function(){return w}});function w(M){return M[1]}function H(M){return arguments.length?(this._y=M,this):this._y}},87325:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return H},i:function(){return w}});function w(M){return M[2]}function H(M){return arguments.length?(this._z=M,this):this._z}},59715:function(ke,_e,B){"use strict";B.d(_e,{H:function(){return M},Z:function(){return w}});function w(g){const D=+this._x.call(null,g),y=+this._y.call(null,g);return H(this.cover(D,y),D,y,g)}function H(g,D,y,v){if(isNaN(D)||isNaN(y))return g;var m,E=g._root,h={data:v},a=g._x0,d=g._y0,_=g._x1,r=g._y1,n,l,o,s,u,f,e,t;if(!E)return g._root=h,g;for(;E.length;)if((u=D>=(n=(a+_)/2))?a=n:_=n,(f=y>=(l=(d+r)/2))?d=l:r=l,m=E,!(E=E[e=f<<1|u]))return m[e]=h,g;if(o=+g._x.call(null,E.data),s=+g._y.call(null,E.data),D===o&&y===s)return h.next=E,m?m[e]=h:g._root=h,g;do m=m?m[e]=new Array(4):g._root=new Array(4),(u=D>=(n=(a+_)/2))?a=n:_=n,(f=y>=(l=(d+r)/2))?d=l:r=l;while((e=f<<1|u)===(t=(s>=l)<<1|o>=n));return m[t]=E,m[e]=h,g}function M(g){var D,y,v=g.length,m,E,h=new Array(v),a=new Array(v),d=1/0,_=1/0,r=-1/0,n=-1/0;for(y=0;y<v;++y)isNaN(m=+this._x.call(null,D=g[y]))||isNaN(E=+this._y.call(null,D))||(h[y]=m,a[y]=E,m<d&&(d=m),m>r&&(r=m),E<_&&(_=E),E>n&&(n=E));if(d>r||_>n)return this;for(this.cover(d,_).cover(r,n),y=0;y<v;++y)H(this,h[y],a[y],g[y]);return this}},86290:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return w}});function w(H,M){if(isNaN(H=+H)||isNaN(M=+M))return this;var g=this._x0,D=this._y0,y=this._x1,v=this._y1;if(isNaN(g))y=(g=Math.floor(H))+1,v=(D=Math.floor(M))+1;else{for(var m=y-g||1,E=this._root,h,a;g>H||H>=y||D>M||M>=v;)switch(a=(M<D)<<1|H<g,h=new Array(4),h[a]=E,E=h,m*=2,a){case 0:y=g+m,v=D+m;break;case 1:g=y-m,v=D+m;break;case 2:y=g+m,D=v-m;break;case 3:g=y-m,D=v-m;break}this._root&&this._root.length&&(this._root=E)}return this._x0=g,this._y0=D,this._x1=y,this._y1=v,this}},11145:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return w}});function w(){var H=[];return this.visit(function(M){if(!M.length)do H.push(M.data);while(M=M.next)}),H}},57059:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return w}});function w(H){return arguments.length?this.cover(+H[0][0],+H[0][1]).cover(+H[1][0],+H[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}},13297:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return H}});var w=B(92936);function H(M,g,D){var y,v=this._x0,m=this._y0,E,h,a,d,_=this._x1,r=this._y1,n=[],l=this._root,o,s;for(l&&n.push(new w.Z(l,v,m,_,r)),D==null?D=1/0:(v=M-D,m=g-D,_=M+D,r=g+D,D*=D);o=n.pop();)if(!(!(l=o.node)||(E=o.x0)>_||(h=o.y0)>r||(a=o.x1)<v||(d=o.y1)<m))if(l.length){var u=(E+a)/2,f=(h+d)/2;n.push(new w.Z(l[3],u,f,a,d),new w.Z(l[2],E,f,u,d),new w.Z(l[1],u,h,a,f),new w.Z(l[0],E,h,u,f)),(s=(g>=f)<<1|M>=u)&&(o=n[n.length-1],n[n.length-1]=n[n.length-1-s],n[n.length-1-s]=o)}else{var e=M-+this._x.call(null,l.data),t=g-+this._y.call(null,l.data),i=e*e+t*t;if(i<D){var c=Math.sqrt(D=i);v=M-c,m=g-c,_=M+c,r=g+c,y=l.data}}return y}},92936:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return w}});function w(H,M,g,D,y){this.node=H,this.x0=M,this.y0=g,this.x1=D,this.y1=y}},46632:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return _}});var w=B(59715),H=B(86290),M=B(11145),g=B(57059),D=B(13297),y=B(85854),v=B(39033),m=B(56590),E=B(61034),h=B(88020),a=B(40220),d=B(88792);function _(o,s,u){var f=new r(s==null?a.P:s,u==null?d.q:u,NaN,NaN,NaN,NaN);return o==null?f:f.addAll(o)}function r(o,s,u,f,e,t){this._x=o,this._y=s,this._x0=u,this._y0=f,this._x1=e,this._y1=t,this._root=void 0}function n(o){for(var s={data:o.data},u=s;o=o.next;)u=u.next={data:o.data};return s}var l=_.prototype=r.prototype;l.copy=function(){var o=new r(this._x,this._y,this._x0,this._y0,this._x1,this._y1),s=this._root,u,f;if(!s)return o;if(!s.length)return o._root=n(s),o;for(u=[{source:s,target:o._root=new Array(4)}];s=u.pop();)for(var e=0;e<4;++e)(f=s.source[e])&&(f.length?u.push({source:f,target:s.target[e]=new Array(4)}):s.target[e]=n(f));return o},l.add=w.Z,l.addAll=w.H,l.cover=H.Z,l.data=M.Z,l.extent=g.Z,l.find=D.Z,l.remove=y.Z,l.removeAll=y.x,l.root=v.Z,l.size=m.Z,l.visit=E.Z,l.visitAfter=h.Z,l.x=a.Z,l.y=d.Z},85854:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return w},x:function(){return H}});function w(M){if(isNaN(_=+this._x.call(null,M))||isNaN(r=+this._y.call(null,M)))return this;var g,D=this._root,y,v,m,E=this._x0,h=this._y0,a=this._x1,d=this._y1,_,r,n,l,o,s,u,f;if(!D)return this;if(D.length)for(;;){if((o=_>=(n=(E+a)/2))?E=n:a=n,(s=r>=(l=(h+d)/2))?h=l:d=l,g=D,!(D=D[u=s<<1|o]))return this;if(!D.length)break;(g[u+1&3]||g[u+2&3]||g[u+3&3])&&(y=g,f=u)}for(;D.data!==M;)if(v=D,!(D=D.next))return this;return(m=D.next)&&delete D.next,v?(m?v.next=m:delete v.next,this):g?(m?g[u]=m:delete g[u],(D=g[0]||g[1]||g[2]||g[3])&&D===(g[3]||g[2]||g[1]||g[0])&&!D.length&&(y?y[f]=D:this._root=D),this):(this._root=m,this)}function H(M){for(var g=0,D=M.length;g<D;++g)this.remove(M[g]);return this}},39033:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return w}});function w(){return this._root}},56590:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return w}});function w(){var H=0;return this.visit(function(M){if(!M.length)do++H;while(M=M.next)}),H}},61034:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return H}});var w=B(92936);function H(M){var g=[],D,y=this._root,v,m,E,h,a;for(y&&g.push(new w.Z(y,this._x0,this._y0,this._x1,this._y1));D=g.pop();)if(!M(y=D.node,m=D.x0,E=D.y0,h=D.x1,a=D.y1)&&y.length){var d=(m+h)/2,_=(E+a)/2;(v=y[3])&&g.push(new w.Z(v,d,_,h,a)),(v=y[2])&&g.push(new w.Z(v,m,_,d,a)),(v=y[1])&&g.push(new w.Z(v,d,E,h,_)),(v=y[0])&&g.push(new w.Z(v,m,E,d,_))}return this}},88020:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return H}});var w=B(92936);function H(M){var g=[],D=[],y;for(this._root&&g.push(new w.Z(this._root,this._x0,this._y0,this._x1,this._y1));y=g.pop();){var v=y.node;if(v.length){var m,E=y.x0,h=y.y0,a=y.x1,d=y.y1,_=(E+a)/2,r=(h+d)/2;(m=v[0])&&g.push(new w.Z(m,E,h,_,r)),(m=v[1])&&g.push(new w.Z(m,_,h,a,r)),(m=v[2])&&g.push(new w.Z(m,E,r,_,d)),(m=v[3])&&g.push(new w.Z(m,_,r,a,d))}D.push(y)}for(;y=D.pop();)M(y.node,y.x0,y.y0,y.x1,y.y1);return this}},40220:function(ke,_e,B){"use strict";B.d(_e,{P:function(){return w},Z:function(){return H}});function w(M){return M[0]}function H(M){return arguments.length?(this._x=M,this):this._x}},88792:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return H},q:function(){return w}});function w(M){return M[1]}function H(M){return arguments.length?(this._y=M,this):this._y}},17423:function(ke,_e,B){"use strict";B.d(_e,{Z:function(){return m}});const w=E=>typeof E=="object"&&E!=null&&E.nodeType===1,H=(E,h)=>(!h||E!=="hidden")&&E!=="visible"&&E!=="clip",M=(E,h)=>{if(E.clientHeight<E.scrollHeight||E.clientWidth<E.scrollWidth){const a=getComputedStyle(E,null);return H(a.overflowY,h)||H(a.overflowX,h)||(d=>{const _=(r=>{if(!r.ownerDocument||!r.ownerDocument.defaultView)return null;try{return r.ownerDocument.defaultView.frameElement}catch(n){return null}})(d);return!!_&&(_.clientHeight<d.scrollHeight||_.clientWidth<d.scrollWidth)})(E)}return!1},g=(E,h,a,d,_,r,n,l)=>r<E&&n>h||r>E&&n<h?0:r<=E&&l<=a||n>=h&&l>=a?r-E-d:n>h&&l<a||r<E&&l>a?n-h+_:0,D=E=>{const h=E.parentElement;return h==null?E.getRootNode().host||null:h},y=(E,h)=>{var a,d,_,r;if(typeof document=="undefined")return[];const{scrollMode:n,block:l,inline:o,boundary:s,skipOverflowHiddenElements:u}=h,f=typeof s=="function"?s:V=>V!==s;if(!w(E))throw new TypeError("Invalid target");const e=document.scrollingElement||document.documentElement,t=[];let i=E;for(;w(i)&&f(i);){if(i=D(i),i===e){t.push(i);break}i!=null&&i===document.body&&M(i)&&!M(document.documentElement)||i!=null&&M(i,u)&&t.push(i)}const c=(d=(a=window.visualViewport)==null?void 0:a.width)!=null?d:innerWidth,p=(r=(_=window.visualViewport)==null?void 0:_.height)!=null?r:innerHeight,{scrollX:A,scrollY:x}=window,{height:C,width:S,top:P,right:b,bottom:L,left:R}=E.getBoundingClientRect(),{top:T,right:N,bottom:I,left:F}=(V=>{const X=window.getComputedStyle(V);return{top:parseFloat(X.scrollMarginTop)||0,right:parseFloat(X.scrollMarginRight)||0,bottom:parseFloat(X.scrollMarginBottom)||0,left:parseFloat(X.scrollMarginLeft)||0}})(E);let U=l==="start"||l==="nearest"?P-T:l==="end"?L+I:P+C/2-T+I,K=o==="center"?R+S/2-F+N:o==="end"?b+N:R-F;const G=[];for(let V=0;V<t.length;V++){const X=t[V],{height:ee,width:oe,top:ue,right:Ae,bottom:fe,left:he}=X.getBoundingClientRect();if(n==="if-needed"&&P>=0&&R>=0&&L<=p&&b<=c&&P>=ue&&L<=fe&&R>=he&&b<=Ae)return G;const ve=getComputedStyle(X),me=parseInt(ve.borderLeftWidth,10),Te=parseInt(ve.borderTopWidth,10),Ce=parseInt(ve.borderRightWidth,10),ye=parseInt(ve.borderBottomWidth,10);let q=0,Q=0;const $="offsetWidth"in X?X.offsetWidth-X.clientWidth-me-Ce:0,j="offsetHeight"in X?X.offsetHeight-X.clientHeight-Te-ye:0,re="offsetWidth"in X?X.offsetWidth===0?0:oe/X.offsetWidth:0,k="offsetHeight"in X?X.offsetHeight===0?0:ee/X.offsetHeight:0;if(e===X)q=l==="start"?U:l==="end"?U-p:l==="nearest"?g(x,x+p,p,Te,ye,x+U,x+U+C,C):U-p/2,Q=o==="start"?K:o==="center"?K-c/2:o==="end"?K-c:g(A,A+c,c,me,Ce,A+K,A+K+S,S),q=Math.max(0,q+x),Q=Math.max(0,Q+A);else{q=l==="start"?U-ue-Te:l==="end"?U-fe+ye+j:l==="nearest"?g(ue,fe,ee,Te,ye+j,U,U+C,C):U-(ue+ee/2)+j/2,Q=o==="start"?K-he-me:o==="center"?K-(he+oe/2)+$/2:o==="end"?K-Ae+Ce+$:g(he,Ae,oe,me,Ce+$,K,K+S,S);const{scrollLeft:te,scrollTop:ie}=X;q=k===0?0:Math.max(0,Math.min(ie+q/k,X.scrollHeight-ee/k+j)),Q=re===0?0:Math.max(0,Math.min(te+Q/re,X.scrollWidth-oe/re+$)),U+=ie-q,K+=te-Q}G.push({el:X,top:q,left:Q})}return G},v=E=>E===!1?{block:"end",inline:"nearest"}:(h=>h===Object(h)&&Object.keys(h).length!==0)(E)?E:{block:"start",inline:"nearest"};function m(E,h){if(!E.isConnected||!(_=>{let r=_;for(;r&&r.parentNode;){if(r.parentNode===document)return!0;r=r.parentNode instanceof ShadowRoot?r.parentNode.host:r.parentNode}return!1})(E))return;const a=(_=>{const r=window.getComputedStyle(_);return{top:parseFloat(r.scrollMarginTop)||0,right:parseFloat(r.scrollMarginRight)||0,bottom:parseFloat(r.scrollMarginBottom)||0,left:parseFloat(r.scrollMarginLeft)||0}})(E);if((_=>typeof _=="object"&&typeof _.behavior=="function")(h))return h.behavior(y(E,h));const d=typeof h=="boolean"||h==null?void 0:h.behavior;for(const{el:_,top:r,left:n}of y(E,v(h))){const l=r-a.top+a.bottom,o=n-a.left+a.right;_.scroll({top:l,left:o,behavior:d})}}}}]);
|