var $i=Object.defineProperty,Di=Object.defineProperties;var zi=Object.getOwnPropertyDescriptors;var Fo=Object.getOwnPropertySymbols;var Vi=Object.prototype.hasOwnProperty,ji=Object.prototype.propertyIsEnumerable;var Eo=(T,i,r)=>i in T?$i(T,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):T[i]=r,R=(T,i)=>{for(var r in i||(i={}))Vi.call(i,r)&&Eo(T,r,i[r]);if(Fo)for(var r of Fo(i))ji.call(i,r)&&Eo(T,r,i[r]);return T},z=(T,i)=>Di(T,zi(i));var re=(T,i,r)=>new Promise((c,l)=>{var m=p=>{try{b(r.next(p))}catch(S){l(S)}},y=p=>{try{b(r.throw(p))}catch(S){l(S)}},b=p=>p.done?c(p.value):Promise.resolve(p.value).then(m,y);b((r=r.apply(T,i)).next())});import{h as an,w as Ct,o as I,c as E,a as M,d as O,L as Wi,g as N,M as Le,q as Ui,A as Y,s as Oo,v as Bo,b as Kt,C as Te,j as Q,K as kt,u as at,F as Be,y as Re,x as Pa,B as Ki,n as ot,e as qt,f as Ae,t as V,T as qi,N as Yi}from"./index-1785726778446.js";import{l as Ro,g as Qi,E as Ji}from"./live-scene-1-e9556509-1785726778446.js";import{H as Ca}from"./index.esm.min-4f309085-1785726778446.js";import{_ as Ho}from"./index-7b46d381-1785726778446.js";import{g as La,C as Zi,H as Xi,a as er,M as tr}from"./index-7b548b42-1785726778446.js";import{O as ar,P as De,a as se,D as rt,C as pe,A as Me,b as te,e as or,F as nr,G as xe,c as ir,d as rr,f as sr,g as Go,L as $o,V as ee,h as Do,R as Se,B as lr,S as Ta,i as ur,j as cr,k as dr,l as fr,N as hr,Q as mr,T as pr,m as gr,n as zo,o as Vo,p as yr,q as jo,r as vr}from"./screen2Standard-f38b9a2d-1785726778446.js";import{M as br,g as wr,h as xr,L as Sr,B as Wo,a as Aa,E as Mr,G as kr,D as Pr,b as Cr,l as Ia,P as Uo,c as Ko,d as Lr,s as Na,f as Yt,e as Tr,i as Ar,j as Ir,k as qo}from"./data-112f1d11-1785726778446.js";import{g as st}from"./index-e9f36657-1785726778446.js";import{h as Nr,a as on,f as _r,g as Fr,b as Er}from"./townshipBoundaries-8867fad4-1785726778446.js";import{R as Or,r as Br,a as Rr,c as Hr,o as Gr,s as $r,p as Dr,b as Yo,d as zr,h as Vr,g as Qo,e as jr,f as Wr,i as Ur,j as Kr,k as qr,l as Yr,m as Qr,n as Jr,_ as Zr}from"./TopicSwitcher-0aae51d1-1785726778446.js";import{_ as Xr,a as Jo}from"./FeatureInfoPanel-e0a0d741-1785726778446.js";import{g as Zo,a as es}from"./openApi-70e9578a-1785726778446.js";import{c as ts,F as as,g as os,a as ns}from"./featurePanelLayout-b5234356-1785726778446.js";import{g as is}from"./yakApi-185e6ecc-1785726778446.js";import{w as He,f as _a}from"./chartTheme-330b271e-1785726778446.js";import{g as rs}from"./balanceApi-994e7f98-1785726778446.js";import{b as Fa,c as ss,n as ls}from"./data-56996d99-1785726778446.js";import{h as us,y as cs}from"./data-e7a95cad-1785726778446.js";import{f as ds}from"./familyPastureData-f64283c3-1785726778446.js";import"./index-e33f4373-1785726778446.js";import"./livestockData-36ec0ae2-1785726778446.js";import"./geoserver-d05ee620-1785726778446.js";class fs extends ar{constructor(i,r){super(),this.config=Object.assign({color1:16566615,color2:16777215},r),this.assets={instance:null},this.assets.instance=i.assets.instance,this.sceneGroup=i.sceneGroup,this.gsapObjects=[],this.animateElements={},this.init()}init(){let i=this.config.color1,r=new De(1.5,1.5,1),c=new De(1,3,1);c.translate(0,1,0);let l=new se({color:i,transparent:!0,fog:!1,side:rt,depthWrite:!1}),m=l.clone();m.map=this.assets.instance.getResource("focusArrows");let y=l.clone();y.map=this.assets.instance.getResource("focusBar");let b=l.clone();b.map=this.assets.instance.getResource("focusBg");let p=l.clone();p.color=new pe(this.config.color2),p.map=this.assets.instance.getResource("focusMidQuan");let S=l.clone();S.map=this.assets.instance.getResource("focusMoveBg"),S.blending=Me;let L=new te(r,m),P=new te(c,y);P.rotation.x=Math.PI/2;let A=P.clone();A.rotation.y=Math.PI/2;let k=new te(r,b),C=new te(r,p),F=new te(r,S),H=[C,k,L,F,P,A];H.map(j=>{j.renderOrder=99}),this.add(...H);let B=0;F.scale.setScalar(B),this.animateElements={focusMidQuan:C,focusArrows:L,focusMoveBg:F},this.startAnimate()}startAnimate(){let i=st.to(this.animateElements.focusMidQuan.rotation,{z:2*Math.PI,duration:8,repeat:-1,ease:"none"}),r=st.to(this.animateElements.focusArrows.rotation,{z:2*Math.PI,duration:5,repeat:-1,ease:"none"}),c=st.to(this.animateElements.focusMoveBg.scale,{x:1.5,y:1.5,z:1.5,duration:2.5,repeat:-1,ease:"none"}),l=st.to(this.animateElements.focusMoveBg.material,{opacity:0,duration:2.5,repeat:-1,ease:"none"});this.gsapObjects=[i,r,c,l]}pausedAnimate(){this.gsapObjects.map(i=>{i.paused=!0})}destroy(){this.gsapObjects.map(i=>{i.kill()}),or(this)}}const hs=Nr.map(T=>R({},T)),Xo=on.map(T=>R({},T)),ms=on.map(T=>{var i,r;return{name:T.name,value:T.value,lng:(i=T.center)==null?void 0:i[0],lat:(r=T.center)==null?void 0:r[1]}}),ps=[{name:"邛溪镇",level:"县城驻地",value:895.94,lng:102.60242339873115,lat:32.83022561372293},{name:"瓦切镇",level:"北部牧区",value:991,lng:102.71535664604494,lat:33.12869670968013},{name:"刷经寺镇",level:"南部通道",value:986.44,lng:102.55651980382184,lat:32.204097908180216},{name:"色地镇",level:"东部片区",value:1199.06,lng:103.12540730227074,lat:33.010462261362875}];function Ea(T){return T.sort((i,r)=>r.value-i.value),T}function gs(T){return T?typeof T=="string"?JSON.parse(T):T:null}function Oa(T){const i=gs(T);return i!=null&&i.features&&i.features.forEach(r=>{var c;((c=r.geometry)==null?void 0:c.type)==="Polygon"&&(r.geometry.coordinates=[r.geometry.coordinates])}),i}function ys(T,i){var r;try{return(r=T==null?void 0:T.getResource)==null?void 0:r.call(T,i)}catch(c){return null}}function vs(T,i,r){const c=Number(T);return Number.isFinite(c)?Math.max(i,Math.min(r,c)):i}class bs extends br{constructor(i,r,c={}){var l;super(i,{maxPixelRatio:(l=c.maxPixelRatio)!=null?l:c.showDataOverlays===!1?1.35:void 0,antialias:c.antialias}),this.options=c||{},this.geoProjectionCenter=[102.6305459723107,32.72169252326339],this.geoProjectionScale=650,this.backgroundProjectionCenter=c.backgroundProjectionCenter||this.geoProjectionCenter,this.backgroundProjectionScale=c.backgroundProjectionScale||120,this.geoProjectionFn=wr().center(this.geoProjectionCenter).scale(this.geoProjectionScale).translate([0,0]),this.flyLineCenter=[102.60242339873115,32.83022561372293],this.depth=.5,this.clicked=!1,this.sceneMode=c.sceneMode||"default",this.showDataOverlays=c.showDataOverlays!==!1,this.mapAnimationDone=!1,this.sceneTweens=[],this.sceneTimers=[],this.scene.fog=new nr(1058614,1,50),this.scene.background=new pe(1058614),this.camera.instance.position.set(-13.767695123014105,12.990152163077308,39.28228164159694),this.camera.instance.near=1,this.camera.instance.far=1e4,this.camera.instance.updateProjectionMatrix(),this.interactionManager=new xr(this.renderer.instance,this.camera.instance,this.canvas),this.assets=r,this.staticMapData={china:Oa(ys(this.assets.instance,"china")),mapJson:Oa(this.assets.instance.getResource("mapJson")),mapStroke:Oa(this.assets.instance.getResource("mapStroke"))},this.initEnvironment(),this.init()}addSceneTween(i){var r;return i&&(this.sceneTweens.push(i),this.scenePaused&&((r=i.pause)==null||r.call(i)),i)}addSceneTimer(i){return i&&this.sceneTimers.push(i),i}init(){this.labelGroup=new xe,this.label3d=new Sr(this),this.labelGroup.rotation.x=-Math.PI/2,this.scene.add(this.labelGroup),this.flyLineFocusGroup=new xe,this.flyLineFocusGroup.visible=!1,this.flyLineFocusGroup.rotation.x=-Math.PI/2,this.scene.add(this.flyLineFocusGroup),this.eventElement=[],this.defaultMaterial=null,this.defaultLightMaterial=null,this.createBottomBg(),this.createChinaBlurLine(),this.createGrid(),this.createRotateBorder(),this.createLabel(),this.createMap(),this.createEvent(),this.createParticles(),this.showDataOverlays&&(this.createFlyLine(),this.createFocus(),this.createScatter(),this.createInfoPoint()),this.createStorke();let i=st.timeline({onComplete:()=>{}});i.pause(),this.animateTl=i,i.addLabel("focusMap",1.5),i.addLabel("focusMapOpacity",2),i.addLabel("bar",3),i.to(this.camera.instance.position,{duration:2,x:-.17427287762525134,y:13.678992786206543,z:20.688611202093714,ease:"circ.out",onStart:()=>{this.flyLineFocusGroup&&(this.flyLineFocusGroup.visible=!1)}}),i.to(this.focusMapGroup.position,{duration:1,x:0,y:0,z:0},"focusMap"),i.to(this.focusMapGroup.scale,{duration:1,x:1,y:1,z:1,ease:"circ.out",onComplete:()=>{this.showDataOverlays&&(this.flyLineGroup.visible=!0,this.scatterGroup.visible=!0,this.InfoPointGroup.visible=!0),this.applySceneMode()}},"focusMap"),i.to(this.focusMapTopMaterial,{duration:1,opacity:1,ease:"circ.out"},"focusMapOpacity"),i.to(this.focusMapSideMaterial,{duration:1,opacity:1,ease:"circ.out",onComplete:()=>{this.focusMapSideMaterial.transparent=!1}},"focusMapOpacity"),this.otherLabel.map((r,c)=>{let l=r.element.querySelector(".other-label");i.to(l,{duration:1,delay:.1*c,translateY:0,opacity:1,ease:"circ.out"},"focusMapOpacity")}),i.to(this.mapLineMaterial,{duration:.5,delay:.3,opacity:1},"focusMapOpacity"),i.to(this.rotateBorder1.scale,{delay:.3,duration:1,x:1,y:1,z:1,ease:"circ.out"},"focusMapOpacity"),i.to(this.rotateBorder2.scale,{duration:1,delay:.5,x:1,y:1,z:1,ease:"circ.out",onComplete:()=>{var r,c;this.showDataOverlays&&this.flyLineFocusGroup&&(this.flyLineFocusGroup.visible=!0),this.mapAnimationDone=!0,this.applySceneMode(),(c=(r=this.options).onPlayComplete)==null||c.call(r)}},"focusMapOpacity"),(this.allBar||[]).map((r,c)=>{if(r.userData.name==="邛溪镇")return!1;i.to(r.scale,{duration:1,delay:.1*c,x:1,y:1,z:1,ease:"circ.out"},"bar")}),(this.allBarMaterial||[]).map((r,c)=>{i.to(r,{duration:1,delay:.1*c,opacity:1,ease:"circ.out"},"bar")}),(this.allProvinceLabel||[]).map((r,c)=>{let l=r.element.querySelector(".provinces-label-wrap"),m=r.element.querySelector(".number .value"),y=Number(m.innerText),b={score:0};i.to(l,{duration:1,delay:.2*c,translateY:0,opacity:1,ease:"circ.out"},"bar"),i.to(b,{duration:1,delay:.2*c,score:y,onUpdate:p},"bar");function p(){m.innerText=b.score.toFixed(0)}}),(this.allGuangquan||[]).map((r,c)=>{i.to(r.children[0].scale,{duration:1,delay:.1*c,x:1,y:1,z:1,ease:"circ.out"},"bar"),i.to(r.children[1].scale,{duration:1,delay:.1*c,x:1,y:1,z:1,ease:"circ.out"},"bar")})}initEnvironment(){let i=new ir(16777215,5);this.scene.add(i);let r=new rr(16777215,5);r.position.set(-30,6,-8),r.castShadow=!0,r.shadow.radius=20,r.shadow.mapSize.width=1024,r.shadow.mapSize.height=1024,this.scene.add(r),this.createPointLight({color:"#1d5e5e",intensity:800,distance:1e4,x:-9,y:3,z:-3}),this.createPointLight({color:"#1d5e5e",intensity:200,distance:1e4,x:0,y:2,z:5})}createPointLight(i){const r=new sr(1924702,i.intensity,i.distance);r.position.set(i.x,i.y,i.z),this.scene.add(r)}createMap(){let i=new xe,r=new xe;this.focusMapGroup=r;let{china:c,chinaTopLine:l}=this.createChina(),{map:m,mapTop:y,mapLine:b}=this.createProvince();c==null||c.setParent(i),l==null||l.setParent(i),this.createDiffuse(),m.setParent(r),y.setParent(r),b.setParent(r),r.position.set(0,0,-.01),r.scale.set(1,1,0),i.add(r),i.rotation.x=-Math.PI/2,i.position.set(0,.2,0),this.scene.add(i),this.showDataOverlays?(this.createBar(),this.updateTownLabelVisibility()):(this.allBar=[],this.allBarMaterial=[],this.allGuangquan=[],this.allProvinceLabel=[])}createChina(){var b;let i={chinaBgMaterialColor:"#152c47",lineColor:"#3f82cd"},r=this.staticMapData.china;if(!((b=r==null?void 0:r.features)!=null&&b.length))return{china:null,chinaTopLine:null};let c=new Go({color:new pe(i.chinaBgMaterialColor),transparent:!0,opacity:this.showDataOverlays?1:.54}),l=new Wo(this,{data:r,geoProjectionCenter:this.backgroundProjectionCenter,geoProjectionScale:this.backgroundProjectionScale,merge:!0,material:c,renderOrder:2}),m=new $o({color:i.lineColor}),y=new Aa(this,{data:r,geoProjectionCenter:this.backgroundProjectionCenter,geoProjectionScale:this.backgroundProjectionScale,material:m,renderOrder:3});return y.lineGroup.position.z+=.01,{china:l,chinaTopLine:y}}createProvince(){let i=this.staticMapData.mapJson,[r,c]=this.createProvinceMaterial();this.focusMapTopMaterial=r,this.focusMapSideMaterial=c;let l=new Mr(this,{geoProjectionCenter:this.geoProjectionCenter,geoProjectionScale:this.geoProjectionScale,position:new ee(0,0,.11),data:i,depth:this.depth,topFaceMaterial:r,sideMaterial:c,renderOrder:9}),m=new Do({color:16777215,transparent:!0,opacity:.5});this.createTerrainSurfaceShader(m),this.defaultMaterial=m,this.defaultLightMaterial=this.defaultMaterial.clone(),this.defaultLightMaterial.color=new pe("rgba(115,208,255,1)"),this.defaultLightMaterial.opacity=.8;let y=new Wo(this,{geoProjectionCenter:this.geoProjectionCenter,geoProjectionScale:this.geoProjectionScale,position:new ee(0,0,this.depth+.22),data:i,material:m,renderOrder:2});y.mapGroup.children.map(p=>{p.children.map(S=>{S.type==="Mesh"&&this.eventElement.push(S)})}),this.mapLineMaterial=new $o({color:16777215,opacity:0,transparent:!0,fog:!1});let b=new Aa(this,{geoProjectionCenter:this.geoProjectionCenter,geoProjectionScale:this.geoProjectionScale,data:i,material:this.mapLineMaterial,renderOrder:3});return b.lineGroup.position.z+=this.depth+.23,{map:l,mapTop:y,mapLine:b}}createProvinceMaterial(){let i=new Go({color:16777215,transparent:!0,opacity:0,fog:!1,side:rt});i.onBeforeCompile=l=>{l.uniforms=z(R({},l.uniforms),{uColor1:{value:new pe(2780818)},uColor2:{value:new pe(1058614)}}),l.vertexShader=l.vertexShader.replace("void main() {",` attribute float alpha; varying vec3 vPosition; varying float vAlpha; void main() { vAlpha = alpha; vPosition = position; `),l.fragmentShader=l.fragmentShader.replace("void main() {",` varying vec3 vPosition; varying float vAlpha; uniform vec3 uColor1; uniform vec3 uColor2; void main() { `),l.fragmentShader=l.fragmentShader.replace("#include ",` #ifdef OPAQUE diffuseColor.a = 1.0; #endif #ifdef USE_TRANSMISSION diffuseColor.a *= transmissionAlpha + 0.1; #endif vec3 gradient = mix(uColor1, uColor2, vPosition.x/15.78); outgoingLight = outgoingLight*gradient; float topAlpha = 0.5; if(vPosition.z>0.3){ diffuseColor.a *= topAlpha; } gl_FragColor = vec4( outgoingLight, diffuseColor.a ); `)};let r=this.assets.instance.getResource("side");r.wrapS=Se,r.wrapT=Se,r.repeat.set(1,1.5),r.offset.y+=.065;let c=new Do({color:16777215,map:r,fog:!1,opacity:0,side:rt});return this.time.on("tick",()=>{r.offset.y+=.005}),c.onBeforeCompile=l=>{l.uniforms=z(R({},l.uniforms),{uColor1:{value:new pe(2780818)},uColor2:{value:new pe(2780818)}}),l.vertexShader=l.vertexShader.replace("void main() {",` attribute float alpha; varying vec3 vPosition; varying float vAlpha; void main() { vAlpha = alpha; vPosition = position; `),l.fragmentShader=l.fragmentShader.replace("void main() {",` varying vec3 vPosition; varying float vAlpha; uniform vec3 uColor1; uniform vec3 uColor2; void main() { `),l.fragmentShader=l.fragmentShader.replace("#include ",` #ifdef OPAQUE diffuseColor.a = 1.0; #endif #ifdef USE_TRANSMISSION diffuseColor.a *= transmissionAlpha + 0.1; #endif vec3 gradient = mix(uColor1, uColor2, vPosition.z/1.2); outgoingLight = outgoingLight*gradient; gl_FragColor = vec4( outgoingLight, diffuseColor.a ); `)},[i,c]}createTerrainSurfaceShader(i){i.onBeforeCompile=r=>{r.uniforms=z(R({},r.uniforms),{uTerrainColor1:{value:new pe(807272)},uTerrainColor2:{value:new pe(1619414)},uTerrainColor3:{value:new pe(7074015)}}),r.vertexShader=r.vertexShader.replace("void main() {",` varying vec3 vTerrainPosition; void main() { vTerrainPosition = position; `),r.fragmentShader=r.fragmentShader.replace("void main() {",` varying vec3 vTerrainPosition; uniform vec3 uTerrainColor1; uniform vec3 uTerrainColor2; uniform vec3 uTerrainColor3; float terrainHash(vec2 p) { return fract(sin(dot(p, vec2(127.1, 311.7))) * 43758.5453123); } float terrainNoise(vec2 p) { vec2 i = floor(p); vec2 f = fract(p); vec2 u = f * f * (3.0 - 2.0 * f); return mix( mix(terrainHash(i + vec2(0.0, 0.0)), terrainHash(i + vec2(1.0, 0.0)), u.x), mix(terrainHash(i + vec2(0.0, 1.0)), terrainHash(i + vec2(1.0, 1.0)), u.x), u.y ); } void main() { `),r.fragmentShader=r.fragmentShader.replace("#include ",` #ifdef OPAQUE diffuseColor.a = 1.0; #endif #ifdef USE_TRANSMISSION diffuseColor.a *= transmissionAlpha + 0.1; #endif vec2 terrainUv = vTerrainPosition.xz; float broad = terrainNoise(terrainUv * 0.32); float detail = terrainNoise(terrainUv * 1.6); float bands = sin(terrainUv.x * 0.75 + terrainUv.y * 0.46) * 0.5 + 0.5; float ridges = smoothstep(0.48, 0.86, bands) * 0.16; float mixValue = clamp((vTerrainPosition.x + 9.0) / 18.0 + (broad - 0.5) * 0.28, 0.0, 1.0); vec3 terrainColor = mix(uTerrainColor1, uTerrainColor2, mixValue); terrainColor = mix(terrainColor, uTerrainColor3, clamp(detail * 0.18 + ridges, 0.0, 0.28)); float shade = 0.8 + broad * 0.24 + detail * 0.1; outgoingLight *= terrainColor * shade; diffuseColor.a *= 0.68; gl_FragColor = vec4(outgoingLight, diffuseColor.a); `)}}createBar(){let i=this,r=Ea(Xo).filter((p,S)=>S<7);const c=new xe;this.barGroup=c;const l=.7,m=4*l,y=r[0].value;this.allBar=[],this.allBarMaterial=[],this.allGuangquan=[],this.allProvinceLabel=[],r.map((p,S)=>{let L=m*(p.value/y),P=new se({color:16777215,transparent:!0,opacity:0,depthTest:!1,fog:!1});new kr(P,{uColor1:S>3?16506760:5291006,uColor2:S>3?16776948:7863285,size:L,dir:"y"});const A=new lr(.1*l,.1*l,L);A.translate(0,0,L/2);const k=new te(A,P);k.renderOrder=5;let C=k,[F,H]=this.geoProjection(p.centroid);C.position.set(F,-H,this.depth+.45),C.scale.set(1,1,0),C.userData=R({},p);let B=this.createQuan(new ee(F,this.depth+.44,H),S),j=this.createHUIGUANG(L,S>3?16776948:7863285);C.add(...j),c.add(C),c.rotation.x=-Math.PI/2;let G=b(p,S,new ee(F,-H,this.depth+1.1+L));this.allBar.push(C),this.allBarMaterial.push(P),this.allGuangquan.push(B),this.allProvinceLabel.push(G)}),this.scene.add(c);function b(p,S,L){let P=i.label3d.create("","provinces-label",!1);return P.init(`
${p.name}
${p.value}km²
${S+1}
`,L),i.label3d.setLabelStyle(P,.01,"x"),P.setParent(i.labelGroup),P.userData=z(R({},p),{labelType:"ranking-label"}),P}}createEvent(){let i=[];this.selectedRegion=null;const r=(l,m=!1)=>{var y,b,p;!m&&((b=(y=this.selectedRegion)==null?void 0:y.userData)==null?void 0:b.name)===((p=l==null?void 0:l.userData)==null?void 0:p.name)||l.traverse(S=>{S.isMesh&&(S.material=this.defaultMaterial)})},c=l=>{l.traverse(m=>{m.isMesh&&(m.material=this.defaultLightMaterial)})};this.eventElement.map(l=>{this.interactionManager.add(l),l.addEventListener("mousedown",m=>{var b;const y=((b=m.target)==null?void 0:b.parent)||m.target;this.selectedRegion&&this.selectedRegion!==y&&r(this.selectedRegion,!0),this.selectedRegion=y,c(y),this.emitTownClick((y==null?void 0:y.userData)||{})}),l.addEventListener("mouseover",m=>{i.includes(m.target.parent)||i.push(m.target.parent),document.body.style.cursor="pointer",c(m.target.parent)}),l.addEventListener("mouseout",m=>{i=i.filter(y=>y.userData.name!==m.target.parent.userData.name),i.length>0&&i[i.length-1],r(m.target.parent),document.body.style.cursor="default"})})}createHUIGUANG(i,r){let c=new De(.35,i);c.translate(0,i/2,0);const l=this.assets.instance.getResource("huiguang");l.colorSpace=Ta,l.wrapS=Se,l.wrapT=Se;let m=new se({color:r,map:l,transparent:!0,opacity:.4,depthWrite:!1,side:rt,blending:Me}),y=new te(c,m);y.renderOrder=10,y.rotateX(Math.PI/2);let b=y.clone(),p=y.clone();return b.rotateY(Math.PI/180*60),p.rotateY(Math.PI/180*120),[y,b,p]}createQuan(i,r){const c=this.assets.instance.getResource("guangquan1"),l=this.assets.instance.getResource("guangquan2");let m=new De(.5,.5),y=new se({color:16777215,map:c,alphaMap:c,opacity:1,transparent:!0,depthTest:!1,fog:!1,blending:Me}),b=new se({color:16777215,map:l,alphaMap:l,opacity:1,transparent:!0,depthTest:!1,fog:!1,blending:Me}),p=new te(m,y),S=new te(m,b);return p.renderOrder=6,S.renderOrder=6,p.rotateX(-Math.PI/2),S.rotateX(-Math.PI/2),p.position.copy(i),S.position.copy(i),S.position.y-=.001,p.scale.set(0,0,0),S.scale.set(0,0,0),this.quanGroup=new xe,this.quanGroup.add(p,S),this.scene.add(this.quanGroup),this.time.on("tick",()=>{p.rotation.z+=.05}),this.quanGroup}createDiffuse(){let i=new De(200,200),r=new se({color:0,depthWrite:!1,transparent:!0,blending:ur});r.blendEquation=cr,r.blendSrc=dr,r.blendDst=fr,new Pr({material:r,time:this.time,size:60,diffuseSpeed:8,diffuseColor:7442830,diffuseWidth:2,callback:l=>{const m=setTimeout(()=>{this.addSceneTween(st.to(l.uniforms.uTime,{value:4,repeat:-1,duration:6,ease:"power1.easeIn"}))},3);this.addSceneTimer(m)}});let c=new te(i,r);c.renderOrder=3,c.rotation.x=-Math.PI/2,c.position.set(0,.21,0),this.scene.add(c)}createGrid(){new Cr(this,{gridSize:68,gridDivision:28,gridColor:2123149,shapeSize:.58,shapeColor:4035005,pointSize:.12,pointColor:1805508,pointLayout:{row:170,col:170},pointBlending:Me})}createBottomBg(){let i=new De(42,42);const r=this.assets.instance.getResource("ocean");r.colorSpace=Ta,r.wrapS=Se,r.wrapT=Se,r.repeat.set(1,1);let c=new se({map:r,opacity:1,fog:!1}),l=new te(i,c);l.rotation.x=-Math.PI/2,l.position.set(0,-.7,0),this.scene.add(l)}createChinaBlurLine(){let i=new De(147,147);const r=this.assets.instance.getResource("chinaBlurLine");r.colorSpace=Ta,r.wrapS=Se,r.wrapT=Se,r.generateMipmaps=!1,r.minFilter=hr,r.repeat.set(1,1);let c=new se({color:4162253,alphaMap:r,transparent:!0,opacity:.5}),l=new te(i,c);l.rotateX(-Math.PI/2),l.position.set(-19.3,-.5,-19.7),this.scene.add(l)}createLabel(){let i=this,r=this.labelGroup,c=this.label3d,l=[];if(hs.map(b=>{if(b.hide==!0)return!1;let p=m(b,c,r);l.push(p)}),this.showDataOverlays){let b=y({icon:Ia,center:[103.13,33.01],width:"40px",height:"40px",reflect:!0},c,r),p=y({icon:Ia,center:[102.03,32.44],width:"20px",height:"20px",reflect:!1},c,r);l.push(b),l.push(p)}this.otherLabel=l;function m(b,p,S){let L=p.create("",`china-label ${b.blur?" blur":""}`,!1);const[P,A]=i.geoProjection(b.center),k=i.showDataOverlays?``:"";return L.init(`
${k}${b.name}
`,new ee(P,-A,i.depth+.85)),p.setLabelStyle(L,.018,"x"),L.setParent(S),L.userData=z(R({},b),{labelType:"town-label",baseScale:.018}),L}function y(b,p,S){let L=p.create("",`decoration-label ${b.reflect?" reflect":""}`,!1);const[P,A]=i.geoProjection(b.center);return L.init(`
`,new ee(P,-A,.4)),p.setLabelStyle(L,.02,"x"),L.setParent(S),L}}createRotateBorder(){let i=12,r=this.assets.instance.getResource("rotationBorder1"),c=this.assets.instance.getResource("rotationBorder2"),l=new Uo(this,{width:i*1.178,needRotate:!0,rotateSpeed:.001,material:new se({map:r,color:4763647,transparent:!0,opacity:.2,side:rt,depthWrite:!1,blending:Me}),position:new ee(0,.28,0)});l.instance.rotation.x=-Math.PI/2,l.instance.renderOrder=6,l.instance.scale.set(0,0,0),l.setParent(this.scene);let m=new Uo(this,{width:i*1.116,needRotate:!0,rotateSpeed:-.004,material:new se({map:c,color:4763647,transparent:!0,opacity:.4,side:rt,depthWrite:!1,blending:Me}),position:new ee(0,.3,0)});m.instance.rotation.x=-Math.PI/2,m.instance.renderOrder=6,m.instance.scale.set(0,0,0),m.setParent(this.scene),this.rotateBorder1=l.instance,this.rotateBorder2=m.instance}createFlyLine(){this.flyLineGroup=new xe,this.flyLineGroup.visible=!1,this.scene.add(this.flyLineGroup);const i=this.assets.instance.getResource("mapFlyline");i.wrapS=i.wrapT=Se,i.repeat.set(.5,2);const r=.1,c=32,l=2,m=!1;let[y,b]=this.geoProjection(this.flyLineCenter),p=new ee(y,-b,0);const S=new se({map:i,color:2781042,transparent:!0,fog:!1,opacity:1,depthTest:!1,blending:Me});this.flyLineMaterial=S,this.flyLineTexture=i,this.time.on("tick",()=>{i.offset.x-=this.sceneMode==="trade"?.014:.006}),Xo.filter((L,P)=>P<7).map(L=>{let[P,A]=this.geoProjection(L.centroid),k=new ee(P,-A,0);const C=new ee;C.addVectors(p,k).multiplyScalar(.5),C.setZ(3);const F=new mr(p,C,k),H=new pr(F,c,r,l,m),B=new te(H,S);B.rotation.x=-Math.PI/2,B.position.set(0,this.depth+.44,0),B.renderOrder=21,this.flyLineGroup.add(B)})}createFocus(){let i=new fs(this,{color1:12451325,color2:12451325}),[r,c]=this.geoProjection(this.flyLineCenter);i.position.set(r,-c,this.depth+.44),i.scale.set(1,1,1),this.flyLineFocusGroup.add(i)}createParticles(){this.particles=new Ko(this,{num:10,range:30,dir:"up",speed:.05,material:new gr({map:Ko.createTexture(),size:1,color:61166,transparent:!0,opacity:1,depthTest:!1,depthWrite:!1,vertexColors:!0,blending:Me,sizeAttenuation:!0})}),this.particleGroup=new xe,this.scene.add(this.particleGroup),this.particleGroup.rotation.x=-Math.PI/2,this.particles.setParent(this.particleGroup),this.particles.enable=!0,this.particleGroup.visible=!0}createScatter(){this.scatterGroup=new xe,this.scatterGroup.visible=!1,this.scatterGroup.rotation.x=-Math.PI/2,this.scene.add(this.scatterGroup);const i=this.assets.instance.getResource("arrow"),r=new zo({map:i,color:16776948,fog:!1,transparent:!0,depthTest:!1});let c=Ea(ms),l=c[0].value;c.map(m=>{const y=new Vo(r);y.renderOrder=23;let b=.1+m.value/l*.2;y.scale.set(b,b,b);let[p,S]=this.geoProjection([m.lng,m.lat]);y.position.set(p,-S,this.depth+.45),y.userData.position=[p,-S,this.depth+.45],this.scatterGroup.add(y)})}createInfoPoint(){let i=this;this.InfoPointGroup=new xe,this.scene.add(this.InfoPointGroup),this.InfoPointGroup.visible=!1,this.InfoPointGroup.rotation.x=-Math.PI/2,this.infoPointIndex=0,this.infoPointLabelTime=null,this.infoLabelElement=[];let r=this.label3d;const c=this.assets.instance.getResource("point");let l=[16776948,7863285],m=Ea(ps),y=m[0].value;m.map((p,S)=>{const L=new zo({map:c,color:l[S%l.length],fog:!1,transparent:!0,depthTest:!1}),P=new Vo(L);P.renderOrder=23;let A=.7+p.value/y*.4;P.scale.set(A,A,A);let[k,C]=this.geoProjection([p.lng,p.lat]),F=[k,-C,this.depth+.7];P.position.set(...F),P.userData.position=[...F],P.userData={position:[k,-C,this.depth+.7],name:p.name,value:p.value,level:p.level,index:S},this.InfoPointGroup.add(P);let H=b(p,r,this.InfoPointGroup);this.infoLabelElement.push(H),this.interactionManager.add(P),P.addEventListener("mousedown",B=>{if(this.clicked||!this.InfoPointGroup.visible)return!1;this.clicked=!0,this.emitTownClick(B.target.userData,"info-point"),this.infoPointIndex=B.target.userData.index,this.infoLabelElement.map(j=>{j.visible=!1}),H.visible=!0,this.createInfoPointLabelLoop()}),P.addEventListener("mouseup",B=>{this.clicked=!1}),P.addEventListener("mouseover",B=>{document.body.style.cursor="pointer"}),P.addEventListener("mouseout",B=>{document.body.style.cursor="default"})});function b(p,S,L){let P=S.create("","info-point",!0);const[A,k]=i.geoProjection([p.lng,p.lat]);return P.init(`
名称${p.name}
面积${p.value}km²
类型${p.level}
`,new ee(A,-k,i.depth+1.9)),S.setLabelStyle(P,.015,"x"),P.setParent(L),P.visible=!1,P}}emitTownClick(i={},r="region"){var l,m;const c=i.name||i.fullName;c&&((m=(l=this.options)==null?void 0:l.onTownClick)==null||m.call(l,z(R({},i),{name:c,source:r})))}setSceneMode(i="default"){this.sceneMode=i,this.applySceneMode()}setDataOverlaysVisible(i=!0){this.showDataOverlays=!!i,this.applySceneMode()}updateTownLabelVisibility(){const i=new Set((this.allProvinceLabel||[]).map(c=>{var l;return(l=c==null?void 0:c.userData)==null?void 0:l.name}).filter(Boolean)),r=this.showDataOverlays&&this.sceneMode!=="trade";(this.otherLabel||[]).forEach(c=>{var l;((l=c==null?void 0:c.userData)==null?void 0:l.labelType)==="town-label"&&(c.visible=!(r&&i.has(c.userData.name)))})}applySceneMode(){var r,c,l,m;if(!this.showDataOverlays){this.flyLineGroup&&(this.flyLineGroup.visible=!1),this.flyLineFocusGroup&&(this.flyLineFocusGroup.visible=!1),this.scatterGroup&&(this.scatterGroup.visible=!1),this.InfoPointGroup&&(this.InfoPointGroup.visible=!1),this.barGroup&&(this.barGroup.visible=!1),(r=this.allProvinceLabel)==null||r.forEach(y=>{y.visible=!1}),(c=this.allGuangquan)==null||c.forEach(y=>{y.visible=!1}),this.updateTownLabelVisibility();return}const i=this.sceneMode==="trade";this.flyLineGroup&&(this.flyLineGroup.visible=i||this.mapAnimationDone),this.flyLineFocusGroup&&(this.flyLineFocusGroup.visible=i||this.mapAnimationDone),this.flyLineMaterial&&(this.flyLineMaterial.color.set(i?7534280:2781042),this.flyLineMaterial.opacity=i?1:.82),this.flyLineTexture&&this.flyLineTexture.repeat.set(i?.32:.5,i?3:2),this.scatterGroup&&(this.scatterGroup.visible=!i&&this.mapAnimationDone),this.InfoPointGroup&&(this.InfoPointGroup.visible=!i&&this.mapAnimationDone),this.barGroup&&(this.barGroup.visible=!i),(l=this.allProvinceLabel)==null||l.forEach(y=>{y.visible=!i}),(m=this.allGuangquan)==null||m.forEach(y=>{y.visible=!i}),this.updateTownLabelVisibility()}createInfoPointLabelLoop(){var i;this.scenePaused||!((i=this.infoLabelElement)!=null&&i.length)||(clearInterval(this.infoPointLabelTime),this.infoPointLabelTime=setInterval(()=>{this.infoPointIndex++,this.infoPointIndex>=this.infoLabelElement.length&&(this.infoPointIndex=0),this.infoLabelElement.map((r,c)=>{this.infoPointIndex===c?r.visible=!0:r.visible=!1})},3e3))}createStorke(){const i=this.staticMapData.mapStroke,r=this.assets.instance.getResource("pathLine3");r.wrapS=r.wrapT=Se,r.repeat.set(2,1);let c=new Aa(this,{geoProjectionCenter:this.geoProjectionCenter,geoProjectionScale:this.geoProjectionScale,position:new ee(0,0,this.depth+.24),data:i,material:new se({color:2868444,map:r,alphaMap:r,fog:!1,transparent:!0,opacity:1,blending:Me}),type:"Line3",renderOrder:22,tubeRadius:.03});this.focusMapGroup.add(c.lineGroup),this.time.on("tick",()=>{r.offset.x+=.005})}geoProjection(i){return this.geoProjectionFn(i)}updateTownLabelScale(){var b,p,S;const i=this.otherLabel||[],r=(b=this.camera)==null?void 0:b.instance,c=(S=(p=this.camera)==null?void 0:p.controls)==null?void 0:S.target;if(!i.length||!r||!c)return;const l=r.position.distanceTo(c),m=vs(l*72e-5,.011,.026),y=l>45?"0.76":l<22?"0.94":"1";i.forEach(L=>{var A,k,C;if(((A=L==null?void 0:L.userData)==null?void 0:A.labelType)!=="town-label")return;L.scale.set(m,m,m);const P=(C=(k=L.element)==null?void 0:k.querySelector)==null?void 0:C.call(k,".other-label");P&&(P.style.opacity=y)})}update(){super.update(),this.updateTownLabelScale(),this.interactionManager&&this.interactionManager.update()}pauseScene(){var i,r;this.scenePaused=!0,(r=(i=this.time)==null?void 0:i.pause)==null||r.call(i),this.sceneTweens.forEach(c=>{var l;return(l=c==null?void 0:c.pause)==null?void 0:l.call(c)}),clearInterval(this.infoPointLabelTime),this.infoPointLabelTime=null}resumeScene(){var i,r,c;this.scenePaused=!1,(r=(i=this.time)==null?void 0:i.resume)==null||r.call(i),this.sceneTweens.forEach(l=>{var m;return(m=l==null?void 0:l.resume)==null?void 0:m.call(l)}),(c=this.InfoPointGroup)!=null&&c.visible&&!this.infoPointLabelTime&&this.createInfoPointLabelLoop()}destroy(){this.pauseScene(),this.sceneTimers.forEach(i=>clearTimeout(i)),this.sceneTimers=[],this.sceneTweens.forEach(i=>{var r;return(r=i==null?void 0:i.kill)==null?void 0:r.call(i)}),this.sceneTweens=[],super.destroy(),this.label3d&&this.label3d.destroy()}}const ws={class:"map"},xs={__name:"map",props:{sceneMode:{type:String,default:"default"},showDataOverlays:{type:Boolean,default:!0},maxPixelRatio:{type:Number,default:0}},emits:["town-click","play-complete"],setup(T,{expose:i,emit:r}){const c=O(null),l=Wi(null),m=T,y=r;let b=!1;an(()=>{A()});function p(k){var C,F,H,B;l.value||!c.value||(l.value=new bs(c.value,k,{showDataOverlays:m.showDataOverlays,maxPixelRatio:m.maxPixelRatio||void 0,onTownClick:j=>y("town-click",j),onPlayComplete:()=>y("play-complete")}),(F=(C=l.value).setSceneMode)==null||F.call(C,m.sceneMode),(B=(H=l.value).setDataOverlaysVisible)==null||B.call(H,m.showDataOverlays),l.value.time.pause())}function S(){return re(this,null,function*(){var k,C,F,H;l.value&&(L(),!(b||l.value.mapAnimationDone)&&(b=!0,(C=(k=l.value.animateTl)==null?void 0:k.timeScale)==null||C.call(k,1),(H=(F=l.value.animateTl)==null?void 0:F.play)==null||H.call(F)))})}function L(){var k,C;l.value&&((C=(k=l.value).resumeScene)==null||C.call(k),l.value.resumeScene||l.value.time.resume())}function P(){var k,C,F,H,B,j;l.value&&((C=(k=l.value.animateTl)==null?void 0:k.pause)==null||C.call(k),(H=(F=l.value).pauseScene)==null||H.call(F),l.value.pauseScene||(j=(B=l.value.time)==null?void 0:B.pause)==null||j.call(B))}function A(){var k,C;(C=(k=l.value)==null?void 0:k.destroy)==null||C.call(k),l.value=null}return i({loadMap:p,play:S,resume:L,pause:P,destroyMap:A,canvasMap:l}),Ct(()=>m.sceneMode,k=>{var C,F;(F=(C=l.value)==null?void 0:C.setSceneMode)==null||F.call(C,k)},{immediate:!0}),Ct(()=>m.showDataOverlays,k=>{var C,F;(F=(C=l.value)==null?void 0:C.setDataOverlaysVisible)==null||F.call(C,k)}),(k,C)=>(I(),E("div",ws,[M("canvas",{ref_key:"canvasRef",ref:c},null,512)]))}},Ss=""+new URL("flyline6-525edf67-balabala-1785726778446.png",import.meta.url).href;class Ms{constructor(i={}){this.options=i||{},this.init()}init(){this.instance=new Or,this.instance.addLoader(yr,"FileLoader");const i={type:"File",name:"china",path:La(Zi)},r=[{type:"File",name:"mapJson",path:La(Xi)},{type:"File",name:"mapStroke",path:La(er)},{type:"Texture",name:"rotationBorder1",path:Br},{type:"Texture",name:"rotationBorder2",path:Rr},{type:"Texture",name:"chinaBlurLine",path:Hr},{type:"Texture",name:"ocean",path:Gr},{type:"Texture",name:"side",path:$r},{type:"Texture",name:"pathLine3",path:Dr}],c=[{type:"Texture",name:"flyline",path:Yo},{type:"Texture",name:"pathLine",path:Yo},{type:"Texture",name:"pathLine2",path:zr},{type:"Texture",name:"huiguang",path:Vr},{type:"Texture",name:"guangquan1",path:Qo},{type:"Texture",name:"guangquan2",path:jr},{type:"Texture",name:"flyLineFocus",path:Qo},{type:"Texture",name:"mapFlyline",path:Ss},{type:"Texture",name:"arrow",path:Wr},{type:"Texture",name:"point",path:Ur},{type:"Texture",name:"focusArrows",path:Kr},{type:"Texture",name:"focusBar",path:qr},{type:"Texture",name:"focusBg",path:Yr},{type:"Texture",name:"focusMidQuan",path:Qr},{type:"Texture",name:"focusMoveBg",path:Jr}],l=this.options.showDataOverlays===!1?r:[i,...r,...c];this.instance.loadAll(l)}}const ks={class:"home-dashboard"},Ps={class:"home-bottom-switcher"},Cs={class:"home-left"},Ls={class:"home-side-stack is-left"},Ts={class:"home-right"},As={class:"home-side-stack is-right"},Is=["aria-label","onClick"],Ns={key:0,class:"home-video-monitor"},_s=["disabled"],Fs=["data-video-index","onClick","onKeydown"],Es={key:0,class:"home-video-loading"},Os={key:1,class:"home-video-error"},Bs=["onClick"],Rs={class:"home-video-point-name"},Hs=["disabled"],Gs={key:1,class:"home-forecast-trend-card"},$s={class:"home-forecast-density-switcher","aria-label":"预测粒度切换"},Ds=["onClick"],zs={key:3,class:"home-balance-gauge-grid"},Vs={key:0,class:"home-balance-empty","aria-live":"polite"},js={class:"home-balance-gauge-head"},Ws={class:"home-balance-gauge-ring"},Us={class:"home-balance-gauge-value"},Ks={class:"home-balance-gauge-name"},qs={class:"home-balance-gauge-extra"},Ys=["data-monitoring-updated-at"],Qs={class:"home-more-dialog-head"},Js={key:0,class:"home-video-modal-grid"},Zs=["data-video-index","onClick","onKeydown"],Xs={key:0,class:"home-video-loading"},el={key:1,class:"home-video-error"},tl=["onClick"],al={class:"home-video-point-name"},ol={key:1,class:"home-more-empty"},nl={key:2,class:"home-more-pager"},il=["disabled"],rl=["disabled"],sl={key:0,class:"home-video-web-overlay",role:"dialog","aria-modal":"true","aria-label":"基地监控网页全屏"},ll={class:"home-more-dialog home-balance-dialog"},ul={class:"home-more-dialog-head"},cl={class:"home-balance-modal-grid"},dl={class:"home-balance-modal-title"},fl={class:"home-balance-modal-value"},hl="image://data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAQ5JREFUOE+1la1OQ0EQRs8kCFIQdVCCxIBpCK1AInkDHC+B4QkwvASub4GsaE0NGCRpKhGFVDQZ+Mjem9vNbkphmWTMfjNnd3b2x0iYuxuwH7wNbIewBfAGzORm5nG6ElfM3QU6AXZSkzXG3oEnMxO8thWgux8DR2tAsfxiZs/VYA38Jazi1NBvYCizv+HK4vCRyrfQgIsf7Nm6+bSnjwIeAGeZaGnXQDfoE+ABmGbixwKeAoeJAMHuv3w30ubATQb6KqDKjZPEuAXOMysZAncJbS7gJbCVEAdAKwP8AK4S2vJfgMVLLt6UDtAreWx0W8od7OJXryq16OPwR2j6+WpAyz2wDagape7vARt9AZ+G3HmhiKS3xwAAAABJRU5ErkJggg==",ml=4,en=6e4,pl=15e3,tn=1e4,Ba="#ffffff",Ge="#ffffff",Ce="rgba(246, 253, 255, 0.92)",nt="rgba(242, 253, 255, 0.9)",Pt="rgba(218, 250, 255, 0.28)",gl=12e3,yl=9,$e="home-3d",it=9,Dl={__name:"index",props:{active:{type:Boolean,default:!0}},emits:["module-stats","loading-progress","map-ready"],setup(T,{expose:i,emit:r}){const l=JSON.parse(ds).records||[],m=new Map(l.map(e=>[Number(e.matchedPointNo||e.markerNo||0),e]).filter(([e])=>Number.isFinite(e)&&e>0)),y=Co(l,e=>Lo(e.town,e.village)),b=Co(l,e=>St(e.town)),p={图斑编号:"patch_no",图斑号:"patch_no",湿地编号:"land_number",草地编号:"land_number",林地类型:"dlmc",地类:"landUseName",地类名称:"landUseName",所在乡镇:"townName",所在区域:"full_name",面积:"acreage",图斑面积:"acreage",湿地面积:"acreage",草场面积:"acreage",草原类:"grassTypeName",草原型:"grassMinType",草原等级:"grasslandLevel",草原类型:"basic_type_name",小斑干草产量:"xbGcYield",小斑鲜草产量:"xbXcYield",鲜草产量:"xcYield",干草产量:"gcYield",海拔:"elevation",地貌:"landformName",权属单位:"qsdwmc",坐落单位:"zldwmc",林班:"lin_ban",小班:"xiao_ban",森林类别:"sen_lin_lb",林种:"lin_zhong",公益林等级:"gjgyl_bhdj",保护等级:"bh_dj",质量等级:"zl_dj",优势树种:"you_shi_sz",起源:"qi_yuan",龄组:"ling_zu",郁闭度:"yu_bi_du",林地权属:"ld_qs",土地使用权属:"tdsyqs",林木权属:"lmqs",生态区位:"stqwmc",坡度等级:"slope"},S=new Set(["code","msg","message","success","data","result","grassland","wetland","woodland","basicGrassland","dyColumn","geom","wkt","geometry","the_geom","theGeom","shape","shape_leng","shape_length","length","perimeter","gid","id","objectid","object_id","fid","key_uid","bsm","ysdm"].map(e=>e.toLowerCase())),L=T,P=r,A=O(null),k=O(null),C=O(null),F=O(null),H=new Map,B=O({}),j=new Map;let G=!1,Lt=!1,Tt=null,lt=null;const J=new Map,ke=new Map,Qt=new Set,Jt=new Map;let Ie=null,ut="",Ra=!1,ct=null,At=!1,dt=0,ze=0,ft=null,le=null,ht=!1,Zt=!1,mt=0;const Ne=new Map,ue=O(0),ae=O([]),Ha=O(""),Xt=O(0),ce=O(0),Z=O(!1),oe=O(1),pt=O(!1),de=O(null),ea=O(!1),It=O(Fa.filter(e=>["county","town"].includes(e.type))),ta=O(!1),aa=O(""),oa=O("month"),na=O(!1),Ga=O(!1),U=O(""),nn=`home-video-player-${Math.random().toString(36).slice(2)}`,ge=Yi({}),rn=["#30dcff","#27f0c0","#8bf7ff","#48cfff","#48cfff","#24f6c4"],$a=jo.sideCardWidth,Da=O(typeof window=="undefined"?1080:window.innerHeight);jo.sideCardGap;const Ve=N(()=>vr(Da.value)),Nt=N(()=>Ve.value),sn=Nt,ln=Lr("2028"),ia=[{key:"day",label:"日",unit:"日"},{key:"week",label:"周",unit:"周"},{key:"month",label:"月",unit:"月"}],_t=[{key:"grassland",name:"草地",color:"#A7FF4F",width:92},{key:"wetland",name:"湿地",color:"#36C8FF",width:92},{key:"woodland",name:"林地",color:"#31F084",width:92},{key:"yak",name:"牦牛",color:"#30DCFF",width:92},{key:"pasture",name:"家庭牧场",color:"#30DCFF",width:112}],un={grassland:{fill:"#A7FF4F",fillOpacity:.98,opacity:1,maxOpacity:1,stroke:"#F4FFCF",strokeOpacity:.95,strokeWidth:1.35,glowColor:"#DFFF86",glowBlur:18,glowOpacity:.44},wetland:{fill:"#36C8FF",fillOpacity:.97,opacity:1,maxOpacity:1,stroke:"#EBFCFF",strokeOpacity:.95,strokeWidth:1.35,glowColor:"#9AF2FF",glowBlur:18,glowOpacity:.48},woodland:{fill:"#31F084",fillOpacity:.97,opacity:1,maxOpacity:1,stroke:"#D9FFF0",strokeOpacity:.94,strokeWidth:1.3,glowColor:"#7CFFBF",glowBlur:18,glowOpacity:.44}},za={grassland:{topicKey:"grassland",layerKey:"grassland-distribution",type:"raster"},wetland:{topicKey:"wetland",layerKey:"wetland-distribution",type:"raster"},woodland:{topicKey:"woodland",layerKey:"woodland-distribution",type:"raster"},yak:{topicKey:"yak-industry-chain",layerKey:"yak-recognition-layer",type:"vector",opacity:.94},pasture:{topicKey:"yak-industry-chain",layerKey:"yak-industry-points",legendKey:"yak-industry-family-pasture",type:"vector",opacity:.96},base:{topicKey:"yak-industry-chain",layerKey:"yak-industry-points",legendKeys:["yak-industry-artificial-grassland","yak-industry-scale-breeding","yak-industry-breeding-selection"],type:"vector",opacity:.96}},K=O($e),ne=O(null),je=O(!1),We=O(!1),ye=O(null),ie=N(()=>K.value!==$e),cn=N(()=>L.active&&!ie.value),Va=N(()=>{var d,f,w;const e=K.value,t=za[e];if(!t)return null;const a=_r.find(g=>g.key===t.topicKey),o=fi(t);if(!(o!=null&&o.layerName)&&!(o!=null&&o.dataPath))return null;const n=un[e],s=t.legendKey?(o.legends||[]).find(g=>g.key===t.legendKey):null,u=Array.isArray(t.legendKeys)?t.legendKeys.map(g=>(o.legends||[]).find(v=>v.key===g)).filter(Boolean):[];return t.type==="vector"?z(R({},o),{activeLegend:s||o.activeLegend,activeLegends:u.length?u:o.activeLegends,name:`${((d=_t.find(g=>g.key===e))==null?void 0:d.name)||o.name}图层`,opacity:(f=t.opacity)!=null?f:o.opacity,homePresentationMaxOpacity:(w=t.opacity)!=null?w:.96,showPointLabels:!1,hidePointFeatures:!1}):n?z(R({},o),{name:`${(a==null?void 0:a.name)||o.name}分布`,styles:"",opacity:n.opacity,homePresentationMaxOpacity:n.maxOpacity,softMask:!1,homeGlowColor:n.glowColor,homeGlowBlur:n.glowBlur,homeGlowOpacity:n.glowOpacity,sldBody:hi(o.layerName,n)}):null}),ra=N(()=>!!ye.value),dn=as,ja=N(()=>ts({point:ye.value?pi(ye.value):null,rowCount:ne.value?Wa.value.length||Sa(ne.value):0,loading:We.value,empty:je.value||!ne.value})),fn=N(()=>ja.value.height),hn=N(()=>ja.value.style),mn=N(()=>{var t;return{grassland:"草地详情",wetland:"湿地详情",woodland:"林地详情",yak:"牦牛识别详情",pasture:"家庭牧场详情"}[K.value]||`${((t=_t.find(a=>a.key===K.value))==null?void 0:t.name)||"地图"}详情`}),Wa=N(()=>{var t;if(K.value!=="pasture")return[];const e=((t=ne.value)==null?void 0:t.properties)||{};return yi(e)?vi(e,ne.value):[]}),Ua=N(()=>Vt(Na.length)),Ue=N(()=>Vt(Yt.length)),Ka=N(()=>ri(oa.value)),qa=N(()=>si(ln,Ka.value.key)),gt=N(()=>Vt(qa.value.labels.length)),Ft=N(()=>It.value.filter(t=>(t==null?void 0:t.name)&&t.type==="town").map((t,a)=>({key:`home-balance-${t.areaCode||t.key||t.name}`,sourceIndex:a,name:t.name,value:t.overloadRate,unit:"%",status:t.level||"总体可控",bearingCapacity:t.bearingCapacity,livestockCapacity:t.livestockCapacity,overloadCount:Number(t.livestockCapacity||0)-Number(t.bearingCapacity||0),extra:`理论 ${W(t.bearingCapacity)}|实际 ${W(t.livestockCapacity)}|超载 ${W(Number(t.livestockCapacity||0)-Number(t.bearingCapacity||0))}头`}))),pn=N(()=>It.value.find(e=>(e==null?void 0:e.type)==="county"&&String(e.areaCode||"")==="513233")||ss),gn=N(()=>ta.value?"正在读取最新草畜平衡数据":aa.value||"暂无草畜平衡数据"),Et=N(()=>{const e=Ft.value,t=3,a=e.length?Math.floor(ue.value/2)*t%e.length:0;return Array.from({length:Math.min(t,e.length)},(o,n)=>e[(a+n)%e.length])}),yn=N(()=>{const e=Et.value.length;return e?ue.value%e:0}),Ot={key:"home-empty-video",title:"暂无在线可播放摄像头",town:"红原县",scene:"基地监控",device:"",channel:"",cameraCount:0,status:"待接入",onlineRate:0,updateTime:"",operator:"等待在线摄像头",progress:0,image:Ro,playUrl:"",hdPlayUrl:"",token:""};function ve(e){return(e==null?void 0:e.status)==="直播中"&&!!(e!=null&&e.hdPlayUrl&&(e!=null&&e.token))}const Ke=N(()=>ae.value.map((e,t)=>({key:`home-video-carousel-${e.key||e.title||t}`,index:t,live:e})).filter(e=>ve(e.live))),sa=N(()=>{const e=Ke.value;if(!e.length)return 0;const t=X(ce.value),a=e.findIndex(n=>n.index===t),o=a>=0?a:0;return pt.value||na.value||Z.value?o:(Math.floor(ue.value/ml)+o)%e.length}),D=N(()=>{var e,t;return ae.value.length?Z.value?X(ce.value):(t=(e=Ke.value[sa.value])==null?void 0:e.index)!=null?t:0:0}),vn=N(()=>ae.value[D.value]||Ot),Ya=N(()=>Fn(Ke.value,sa.value,Ot)),bn=N(()=>ae.value.filter(e=>ve(e)).length),yt=N(()=>ae.value.map((e,t)=>({index:t,live:e})).sort((e,t)=>Number(ve(t.live))-Number(ve(e.live))||e.index-t.index)),vt=N(()=>Math.max(1,Math.ceil(yt.value.length/it))),Qa=N(()=>{const e=(oe.value-1)*it;return yt.value.slice(e,e+it).map(t=>({key:`home-video-modal-${t.live.key||t.live.title}-${t.index}`,index:t.index,live:t.live}))}),wn=N(()=>us.map(e=>e.key==="today-outflow"?z(R({},e),{value:Xt.value}):e.key==="county-overload-rate"?z(R({},e),{value:pn.value.overloadRate}):e)),xn=N(()=>{const e=ei();return e.length?{key:"home-pasture-productivity",title:"草地生产力",rows:e,option:ii(e,"生产力"),height:Ve.value}:null}),Sn=N(()=>({key:"yak-stock-distribution",title:"牦牛存栏分布",height:Nt.value,option:ni(cs,"牦牛存栏")})),Mn=N(()=>[ba(Oe("grassland","grassland-town"),"草地面积"),ba(Oe("wetland","wetland-town-area"),"湿地面积"),ba(Oe("grassland","grassland-type-proportion"),"草原类别"),xn.value].filter(Boolean).map((e,t)=>ti(e,`forest-grass-wet-${t}`))),kn=N(()=>[{key:"home-video-monitor",title:"基地监控",type:"video",height:sn.value,live:vn.value},Sn.value,{key:"yak-structure",title:"畜群结构",height:Nt.value,option:Pn.value},{key:"home-town-balance-gauge",title:"草畜平衡",type:"gauge",height:Nt.value,max:100,rows:Et.value}]),Pn=N(()=>He({animation:!0,animationDuration:900,animationDurationUpdate:700,animationEasing:"cubicOut",color:rn,tooltip:_a(e=>`${e.name}
占比:${e.percent}%
估算数量:${W(e.value)}头`),legend:{orient:"vertical",right:0,top:"middle",itemWidth:8,itemHeight:8,itemGap:5,formatter(e){const t=Na.find(a=>a.name===e);return t?`${e} ${we(t.count)}头`:e},textStyle:{color:Ce,fontSize:10}},series:[{name:"畜群结构",type:"pie",selectedMode:"single",selectedOffset:8,radius:["36%","62%"],center:["30%","54%"],avoidLabelOverlap:!0,label:{color:Ge,fontSize:10,formatter:"{d}%"},labelLine:{length:7,length2:4,lineStyle:{color:"rgba(223, 250, 255, 0.35)"}},itemStyle:{borderColor:"rgba(3, 18, 31, 0.92)",borderWidth:3},emphasis:{scale:!0,scaleSize:8,itemStyle:{shadowBlur:5,shadowColor:"rgba(48, 220, 255, 0.2)"}},data:Na.map((e,t)=>({name:e.name,value:e.count,selected:t===Ua.value}))}]}));N(()=>He({animation:!0,animationDuration:1100,animationDurationUpdate:900,animationEasing:"cubicOut",color:["#30dcff"],tooltip:z(R({},_a()),{trigger:"axis",axisPointer:{type:"shadow"},formatter(e){const t=Yt[e[0].dataIndex];return`${t.label}
预测存栏:${W(t.stock)}头`}}),grid:{left:50,right:18,top:16,bottom:24},xAxis:{type:"category",data:Yt.map(e=>e.shortLabel),axisLabel:{color:nt,fontSize:11},axisLine:{lineStyle:{color:"rgba(48, 220, 255, 0.26)"}},axisTick:{show:!1}},yAxis:{type:"value",min(e){return Math.max(0,Math.floor(e.min/1e4)*1e4)},axisLabel:{color:nt,fontSize:10,margin:4,formatter:e=>Mo(e,1)},splitLine:{lineStyle:{color:Pt,type:"dashed"}}},series:[{name:"预测存栏",type:"bar",barWidth:24,data:Yt.map((e,t)=>({value:e.stock,itemStyle:{borderRadius:[9,9,1,1],color:new Le(0,0,0,1,[{offset:0,color:t===Ue.value?"#8bf7ff":"#30dcff"},{offset:.72,color:t===Ue.value?"rgba(139, 247, 255, 0.7)":"rgba(48, 220, 255, 0.62)"},{offset:1,color:t===Ue.value?"rgba(139, 247, 255, 0.1)":"rgba(48, 220, 255, 0.08)"}]),shadowBlur:t===Ue.value?16:8,shadowColor:t===Ue.value?"rgba(139, 247, 255, 0.56)":"rgba(48, 220, 255, 0.28)"}})),itemStyle:{borderRadius:[9,9,1,1],color:new Le(0,0,0,1,[{offset:0,color:"#30dcff"},{offset:.72,color:"rgba(48, 220, 255, 0.62)"},{offset:1,color:"rgba(48, 220, 255, 0.08)"}])},label:{show:!0,position:"top",color:Ge,fontSize:10,formatter:({value:e})=>Mo(e)}}]})),N(()=>{const e=Ka.value,t=qa.value,a=ci(t),o=li(a.length,e.key);return He({animation:!0,animationDuration:1200,animationDurationUpdate:900,animationEasing:"cubicOut",color:["#30dcff","#8bf7ff","#48cfff"],tooltip:z(R({},_a()),{trigger:"axis",triggerOn:"mousemove|click",axisPointer:{type:"cross",crossStyle:{color:"rgba(126, 251, 246, 0.42)"},label:{color:"#eaffff",backgroundColor:"rgba(5, 31, 51, 0.96)"}},formatter(n){var w,g,v;const s=Array.isArray(n)?n:[n],u=s.find(h=>h.seriesType==="candlestick"),d=(u==null?void 0:u.data)||a[(v=(g=u==null?void 0:u.dataIndex)!=null?g:(w=s[0])==null?void 0:w.dataIndex)!=null?v:0];if(!d)return"";const f=d.close-d.open;return[`${d.label}|${e.unit}度预测`,`预测存栏:${W(d.close)}头`,`较上期:${di(f)}头`,`繁殖补充:${W(d.birth)}头`,`出栏扣减:${W(d.outflow)}头`].join("
")}}),legend:{top:2,right:2,data:["预测存栏","繁殖补充","出栏扣减"],itemWidth:10,itemHeight:7,itemGap:7,textStyle:{color:Ce,fontSize:10}},grid:{left:42,right:32,top:30,bottom:24},xAxis:{type:"category",boundaryGap:!0,data:t.labels,axisLabel:{color:nt,fontSize:10,interval:o},axisLine:{lineStyle:{color:"rgba(48, 220, 255, 0.28)"}},axisTick:{show:!1}},yAxis:[{type:"value",scale:!0,axisLabel:{color:nt,fontSize:10,formatter:we},splitLine:{lineStyle:{color:Pt,type:"dashed"}}},{type:"value",axisLabel:{color:Ce,fontSize:10,formatter:we},splitLine:{show:!1}}],series:[{name:"预测存栏",type:"candlestick",yAxisIndex:0,barWidth:ui(a.length,e.key),data:a,itemStyle:{color:"rgba(48, 220, 255, 0.82)",color0:"rgba(72, 207, 255, 0.82)",borderColor:"#30dcff",borderColor0:"#48cfff",borderWidth:1.2}},{name:"预测存栏线",type:"line",yAxisIndex:0,smooth:!0,symbol:"circle",symbolSize:3,data:a.map((n,s)=>({value:n.close,symbolSize:s===gt.value?7:3,itemStyle:{color:s===gt.value?"#ffffff":"#30dcff"}})),lineStyle:{width:1.6,color:"rgba(48, 220, 255, 0.86)"},itemStyle:{color:"#30dcff"},tooltip:{show:!1}},So("繁殖补充",t.births,"#8bf7ff",1,!1,gt.value),So("出栏扣减",t.outflow,"#48cfff",1,!1,gt.value)]})}),Ui(()=>{wa(),window.addEventListener("resize",wa),window.addEventListener("keydown",Po),document.addEventListener("pointerdown",_o,!0),document.addEventListener("click",go,!0),io(),ho(),la()}),an(()=>{var e,t,a,o;G=!0,mt+=1,window.removeEventListener("resize",wa),window.removeEventListener("keydown",Po),document.removeEventListener("pointerdown",_o,!0),document.removeEventListener("click",go,!0),Wt(),bo(),be(),ro(),ca(),fa(),j.clear(),(t=(e=A.value)==null?void 0:e.destroyMap)==null||t.call(e),(o=(a=k.value)==null?void 0:a.destroyMap)==null||o.call(a),An()}),Ct(D,()=>{if(!Z.value){if(!na.value&&!Ga.value&&!J.size){U.value="";return}be({resetError:!0})}}),Ct(K,e=>{var t,a;if(he(),e===$e){(a=(t=A.value)==null?void 0:t.pause)==null||a.call(t),Y(()=>{Bt(),_e()});return}Xa(),Y(()=>{var o,n;(n=(o=A.value)==null?void 0:o.resume)==null||n.call(o)})}),Ct(()=>L.active,e=>{var t,a;e?(la(),In(),oo(),ho(),Ra?Rt(0):to()):(Lt=!1,(a=(t=A.value)==null?void 0:t.pause)==null||a.call(t),Xa(),ca(),fa(),be({resetError:!0}),Gt(),$t())});function la(){Lt=!1,P("loading-progress",{progress:0}),Y(()=>{var e,t,a,o;if(ie.value){(t=(e=A.value)==null?void 0:e.hasMap)!=null&&t.call(e)?qe():(o=(a=A.value)==null?void 0:a.loadMap)==null||o.call(a);return}Bt()})}function Bt(){if(!(G||!L.active||ie.value)){if(eo()){_e(),qe();return}if(Zt){Za();return}ht||(ht=!0,le=new Ms({showDataOverlays:!1}),le.instance.on("onProgress",Cn),le.instance.on("onLoad",Ja),le.instance.on("onError",Ln),le.instance.loaded&&Ja())}}function Cn(e,t,a){if(G||ie.value)return;const o=Math.max(1,Number(a)||1),n=Math.max(0,Number(t)||0);P("loading-progress",{progress:Math.min(98,Math.floor(n/o*92))})}function Ja(){G||(ht=!1,Zt=!0,P("loading-progress",{progress:96}),Y(Za))}function Ln(e){ht=!1,console.warn("[home] 3D map assets load failed",e),qe()}function Za(){var e,t,a,o;G||!L.active||ie.value||!le||((t=(e=k.value)==null?void 0:e.loadMap)==null||t.call(e,le),_e(),(o=(a=k.value)==null?void 0:a.play)==null||o.call(a),qe())}function _e(){var a,o,n,s,u,d,f,w;const e=k.value;(a=e==null?void 0:e.resume)==null||a.call(e);const t=eo();(n=(o=t==null?void 0:t.sizes)==null?void 0:o.init)==null||n.call(o),(s=t==null?void 0:t.resize)==null||s.call(t),(d=(u=t==null?void 0:t.label3d)==null?void 0:u.resize)==null||d.call(u),(w=(f=t==null?void 0:t.label3d)==null?void 0:f.update)==null||w.call(f)}function Xa(){var e,t;(t=(e=k.value)==null?void 0:e.pause)==null||t.call(e)}function eo(){var t;const e=(t=k.value)==null?void 0:t.canvasMap;return(e==null?void 0:e.value)||e||null}function Tn(){ie.value||qe()}function An(){var e,t;(t=(e=le==null?void 0:le.instance)==null?void 0:e.destroy)==null||t.call(e),le=null,ht=!1,Zt=!1}function qe(){G||Lt||(Lt=!0,P("loading-progress",{progress:100}),P("map-ready"),to())}function ua(e={}){var t,a,o,n,s,u,d,f,w;if(!ie.value){_e();return}if((a=(t=A.value)==null?void 0:t.resume)==null||a.call(t),e.reset){(n=(o=A.value)==null?void 0:o.resetView)==null||n.call(o),(s=A.value)!=null&&s.resetView||(d=(u=A.value)==null?void 0:u.refreshView)==null||d.call(u);return}(w=(f=A.value)==null?void 0:f.refreshView)==null||w.call(f)}function In(){K.value!==$e&&!za[K.value]&&(K.value=$e);const e=()=>{if(!(G||!L.active)){if(ie.value){ua({reset:!0});return}Bt(),_e()}};Y(()=>{e(),window.setTimeout(e,180)})}function Nn(){var e,t;if(he(),!ie.value){_e();return}if((t=(e=A.value)==null?void 0:e.hasMap)!=null&&t.call(e)){ua({reset:!0});return}la(),Y(()=>{var a,o;(o=(a=A.value)==null?void 0:a.resume)==null||o.call(a)})}function _n(){if(he(),K.value===$e){Y(()=>{Bt(),_e()});return}K.value=$e}i({refreshMapView:ua,resetMap:Nn,showDefaultThreeMap:_n});function to(){ca();const e=()=>{Ie=null,ut="",!(G||!L.active)&&(Ra=!0,Xn(),so(),En(),L.active&&oo())};if(typeof window.requestIdleCallback=="function"){ut="idle",Ie=window.requestIdleCallback(e,{timeout:1800});return}ut="timeout",Ie=window.setTimeout(e,650)}function ca(){Ie&&(ut==="idle"&&typeof window.cancelIdleCallback=="function"?window.cancelIdleCallback(Ie):window.clearTimeout(Ie),Ie=null,ut="")}function da(e,t){e&&(t?j.set(e,t):j.delete(e))}function ao(e,t){const a=Number(t==null?void 0:t.index);Number.isFinite(a)&&(e?H.set(a,e):H.delete(a)),t!=null&&t.isActive&&(C.value=e||null)}function Fn(e=[],t=0,a=Ot){const o=Array.isArray(e)?e:[];if(!o.length)return[{key:`empty-${a.key||"video"}`,index:0,live:a,isActive:!0}];const n=(t+o.length)%o.length,s=o[n],u=(s==null?void 0:s.live)||s||a,d=Number.isFinite(Number(s==null?void 0:s.index))?Number(s.index):n;return[{key:`${u.key||u.title||"video"}-${d}`,index:d,live:u,isActive:!0}]}function oo(){!L.active||G||(fa(),Tt=window.setInterval(no,2600),lt=window.setTimeout(no,800))}function fa(){Tt&&(window.clearInterval(Tt),Tt=null),lt&&(window.clearTimeout(lt),lt=null)}function no(){G||!L.active||(lt=null,ue.value+=1,Qn(),Jn(),Zn())}function io(){P("module-stats",{moduleKey:"home",items:wn.value})}function En(){return re(this,null,function*(){var t,a;const e=On(new Date);try{const o=yield is({year:Number(e.slice(0,4)),startDate:e,endDate:e}),n=(o==null?void 0:o.metrics)||{},s=Number((a=(t=n.headCount)!=null?t:n.head_count)!=null?a:0);Xt.value=Number.isFinite(s)?s:0}catch(o){Xt.value=0}G||io()})}function On(e){const t=e.getFullYear(),a=String(e.getMonth()+1).padStart(2,"0"),o=String(e.getDate()).padStart(2,"0");return`${t}-${a}-${o}`}function Rt(e=en){ro(),!(G||!L.active)&&(ct=window.setTimeout(()=>{if(ct=null,!(G||!L.active)){if(At){Rt(tn);return}so()}},Math.max(0,Number(e)||0)))}function ro(){ct&&(window.clearTimeout(ct),ct=null)}function so(){return re(this,null,function*(){if(At){Rt(tn);return}At=!0;let e=en;try{const t=yield Qi({includeOffline:!0,includeHidden:!0});if(G)return;Rn(t)}catch(t){if(G)return;e=pl,ae.value.length||(U.value="监控接口暂不可用"),window.setTimeout(()=>{G||U.value==="监控接口暂不可用"&&(U.value="")},2400)}finally{At=!1,G||Rt(e)}})}function Pe(e){return String((e==null?void 0:e.key)||(e==null?void 0:e.device)||(e==null?void 0:e.title)||"").trim()}function Bn(e=[],t=[]){const a=new Map;t.forEach(s=>{const u=Pe(s);u&&!a.has(u)&&a.set(u,s)});const o=[],n=new Set;return e.forEach(s=>{const u=Pe(s),d=u?a.get(u):null;!d||n.has(u)||(o.push(d),n.add(u))}),t.forEach(s=>{const u=Pe(s);u&&n.has(u)||(o.push(s),u&&n.add(u))}),o}function Rn(e=[]){const t=ae.value,a=D.value,o=Pe(t[a]),n=t.filter(ve).map(Pe),s=Bn(t,Array.isArray(e)?e:[]),u=t.some((v,h)=>Pe(v)!==Pe(s[h])),d=s.filter(ve).map(Pe),f=n.length!==d.length||n.some((v,h)=>v!==d[h]);u?be({resetError:!0}):t.forEach((v,h)=>{if(!J.has(String(h))&&!ge[String(h)])return;const x=s[h];(!x||!ve(x))&&Ze(h,{resetError:!0})}),ae.value=s,Ha.value=new Date().toISOString();let w=o?s.findIndex(v=>Pe(v)===o):-1;if(w<0||!ve(s[w])?(w=s.findIndex(v=>ve(v)),ce.value=Math.max(0,w),pt.value=!1,ue.value=0):!Z.value&&(f||u)?(ce.value=w,ue.value=0):Z.value&&(ce.value=w),s.filter(v=>ve(v)).length?["暂无在线可播放摄像头","监控接口暂不可用"].includes(U.value)&&(U.value=""):(be({resetError:!0}),U.value="暂无在线可播放摄像头"),Z.value){const v=yt.value.findIndex(h=>h.index===ce.value);oe.value=Math.floor(Math.max(0,v)/it)+1}else oe.value=Math.min(oe.value,vt.value)}function X(e){const t=ae.value.length;return t?((Number(e)||0)+t)%t:0}function fe(e){return String(X(e))}function lo(e){const t=fe(e);return ge[t]||(ge[t]={playing:!1,loading:!1,ready:!1,error:""}),ge[t]}function bt(e){return ge[fe(e)]||{}}function wt(e){return`${nn}-${fe(e)}`}function ha(e){return!!bt(e).playing}function Ht(e){return!!bt(e).loading}function Ye(e){const t=bt(e).error;return t||(X(e)===D.value?U.value:"")}function uo(e){const t=bt(e);return!!(t.playing||t.loading)}function Fe(){const e=Object.values(ge);na.value=e.some(t=>t.playing),Ga.value=e.some(t=>t.loading)}function co(e,t=!0,a=D.value){const o=(e==null?void 0:e.image)||Ro;return ha(a)&&t?void 0:{backgroundImage:`linear-gradient(180deg, rgba(0, 16, 26, 0.08), rgba(0, 16, 26, 0.32)), url(${o})`}}function Hn(){mo(-1)}function Gn(){mo(1)}function $n(){const e=D.value;be({resetError:!0}),ce.value=e,pt.value=!0,ue.value=0;const t=yt.value.findIndex(a=>a.index===e);oe.value=Math.floor(Math.max(0,t)/it)+1,Z.value=!0,Y(()=>pa())}function Gt(){Z.value&&(be({resetError:!0}),Z.value=!1)}function fo(e){var o,n;const t=Math.max(1,Math.min(vt.value,Number(e)||1));if(t===oe.value)return;be({resetError:!0}),oe.value=t;const a=(t-1)*it;ce.value=(n=(o=yt.value[a])==null?void 0:o.index)!=null?n:0,Y(()=>pa())}function Dn(){ea.value=!0}function ho(){return re(this,null,function*(){const e=++mt;ta.value=!0,aa.value="";try{const t=yield rs();if(G||e!==mt)return;const a=new Map;t.forEach(o=>{const n=ls(o,o);if(!["county","town"].includes(n.type)||!n.name)return;const s=n.areaCode||n.key||n.name;a.set(String(s),n)}),Fa.filter(o=>["county","town"].includes(o.type)).forEach(o=>{const n=String(o.areaCode||o.key||o.name);a.has(n)||a.set(n,R({},o))}),It.value=[...a.values()].sort((o,n)=>String(o.areaCode||o.name).localeCompare(String(n.areaCode||n.name),"zh-CN"))}catch(t){if(G||e!==mt)return;console.warn("[home] balance rows unavailable",t),It.value=Fa.filter(a=>["county","town"].includes(a.type)),aa.value=""}finally{!G&&e===mt&&(ta.value=!1)}})}function $t(){ea.value=!1}function mo(e){var n,s;const t=Ke.value,a=t.length;if(!a)return;be({resetError:!0});const o=sa.value;ce.value=(s=(n=t[(o+e+a)%a])==null?void 0:n.index)!=null?s:0,pt.value=!0,ue.value=0}function Ee(e){if(!ae.value.length){Un();return}const a=X(e),o=fe(a),n=bt(a);if(ce.value=a,pt.value=!0,ue.value=0,Qt.has(o)||J.has(o)||(n.playing||n.loading)&&!n.error){Je(a);return}Qt.add(o),Y(()=>re(this,null,function*(){try{yield vo(a,{stopOthers:!Z.value})}finally{Qt.delete(o)}}))}function po(e,t){Vn(t==null?void 0:t.target)||Ee(e)}function go(e){var n,s,u,d,f,w,g,v,h,x;const t=((s=(n=e==null?void 0:e.target)==null?void 0:n.closest)==null?void 0:s.call(n,'[id$="-webExpend-content"]'))||((u=e==null?void 0:e.composedPath)==null?void 0:u.call(e).find(_=>String((_==null?void 0:_.id)||"").endsWith("-webExpend-content")));if(!t)return;const a=Number((w=(f=(d=t.closest)==null?void 0:d.call(t,"[data-video-index]"))==null?void 0:f.dataset)==null?void 0:w.videoIndex),o=(g=de.value)!=null?g:Number.isFinite(a)?a:D.value;(v=e.preventDefault)==null||v.call(e),(h=e.stopPropagation)==null||h.call(e),(x=e.stopImmediatePropagation)==null||x.call(e),zn(o)}function zn(e){return re(this,null,function*(){var n,s;const t=X(e);if(de.value===t){Dt();return}de.value!==null&&Dt();const a=document.getElementById(`${wt(t)}-wrap`);if(!a)return;de.value=t,yield Y();const o=(s=(n=F.value)==null?void 0:n.querySelector)==null?void 0:s.call(n,".home-video-web-player-slot");if(!o){de.value=null;return}o.appendChild(a),Je(t),Qe(t)})}function Dt(e={}){var n;const{restore:t=!0}=e,a=de.value;if(a===null)return;const o=document.getElementById(`${wt(a)}-wrap`);if(t&&o){const s=zt(a)||C.value,u=(n=s==null?void 0:s.querySelector)==null?void 0:n.call(s,".home-video-player-host");u&&u.appendChild(o)}de.value=null,t&&Y(()=>{Je(a),Qe(a)})}function Vn(e){var t;return!!((t=e==null?void 0:e.closest)!=null&&t.call(e,'[id$="-audioControls"], [id$="-ez-iframe-footer-container"], .footer-controls, .theme-icon-item'))}function jn(e){const t=Math.max(0,Number((e==null?void 0:e.value)||0)),a=Math.max(5,...Ft.value.map(o=>Math.max(0,Number(o.value||0))));return Math.max(6,Math.min(100,t/a*100))}function Wn(e){const t=Number(e==null?void 0:e.value),a=String((e==null?void 0:e.status)||(e==null?void 0:e.level)||"");return Number.isFinite(t)?t>20||/严重|重度|高超载/.test(a)?"#8bf7ff":t>10||/中度|预警/.test(a)?"#48cfff":t>5||/轻度/.test(a)?"#8bf7ff":t<=0||/总体可控|合理|正常|达标|无超载/.test(a)?"#24f6c4":"#30dcff":"#30dcff"}function yo(e){return{"--balance-color":Wn(e),"--balance-progress":`${jn(e)}%`}}function Un(){return re(this,null,function*(){return vo(D.value,{stopOthers:!Z.value})})}function vo(a){return re(this,arguments,function*(e,t={}){const{stopOthers:o=!0}=t,n=X(e),s=ae.value[n]||Ot,u=fe(n);let d=lo(n);if((s==null?void 0:s.status)!=="直播中"||!(s!=null&&s.hdPlayUrl)||!(s!=null&&s.token)){d.error=(s==null?void 0:s.status)==="离线"?"当前监控离线":"暂无在线可播放摄像头",d.loading=!1,d.playing=!1,d.ready=!1,n===D.value&&(U.value=d.error),Fe();return}if(J.has(u)||(d.playing||d.loading)&&!d.error)return;ce.value=n,ue.value=0,o?be({resetError:!0}):(J.has(u)||d.loading)&&Ze(n,{resetError:!0}),d=lo(n),d.error="",d.loading=!0,d.playing=!1,d.ready=!1,n===D.value&&(U.value=""),Fe(),yield Y();const f=(ke.get(u)||0)+1;ke.set(u,f);let w=null;qn(n,f);try{const g=zt(n)||C.value,v=wt(n);if(!Kn(g,v))throw new Error("视频容器未就绪");const{width:h,height:x}=wo(g,340,92);if(w=new Ji.EZUIKitPlayer({id:v,accessToken:s.token,url:s.hdPlayUrl,audio:0,width:h,height:x,themeData:Yn(),handleError(_){f===ke.get(u)&&(xt(n),console.warn("EZUIKit player error",_),ga(w),d.error="视频加载失败",d.loading=!1,d.playing=!1,d.ready=!1,ke.set(u,f+1),J.delete(u),ya(n),n===D.value&&(U.value=d.error),Fe())},handleSuccess(){f===ke.get(u)&&(xt(n),d.error="",d.ready=!0,d.loading=!1,n===D.value&&(U.value=""),Je(n),Qe(n),ma(v),Fe())},fullScreenChangeCallBack(){}}),f!==ke.get(u)){ga(w),ya(n);return}J.set(u,w),d.playing=!0,Fe(),Y(()=>{Je(n),Qe(n),ma(v)})}catch(g){xt(n),console.warn("EZUIKit init error",g),d.error="视频加载失败",n===D.value&&(U.value=d.error),Ze(n,{resetError:!1})}})}function ma(e){if(typeof document=="undefined"||!e)return;const t=document.getElementById(`${e}-ez-iframe-footer-container`),a=document.getElementById(`${e}-audioControls`);t&&Object.assign(t.style,{position:"absolute",left:"0",right:"0",bottom:"0",zIndex:"20",width:"100%",marginTop:"0",pointerEvents:"auto",visibility:"visible",opacity:"1"}),a&&Object.assign(a.style,{opacity:"1",pointerEvents:"all",visibility:"visible"})}function Qe(e=D.value,t=0){if(typeof window=="undefined")return;const a=X(e),o=fe(a),n=Ne.get(o);t===0&&n&&window.cancelAnimationFrame(n);const s=window.requestAnimationFrame(()=>{Je(a),t<8?Qe(a,t+1):Ne.delete(o)});Ne.set(o,s)}function bo(e){if(typeof window!="undefined"){if(e!==void 0){const t=fe(e),a=Ne.get(t);a&&window.cancelAnimationFrame(a),Ne.delete(t);return}Ne.forEach(t=>window.cancelAnimationFrame(t)),Ne.clear()}}function pa(){Array.from(J.keys()).forEach(e=>{const t=Number(e);Number.isFinite(t)&&Qe(t)})}function wo(e,t=1,a=1){var u;if(!e)return{width:Math.max(1,Math.floor(t||1)),height:Math.max(1,Math.floor(a||1))};const o=(u=e.getBoundingClientRect)==null?void 0:u.call(e),n=e.clientWidth||e.offsetWidth||(o==null?void 0:o.width)||t,s=e.clientHeight||e.offsetHeight||(o==null?void 0:o.height)||a;return{width:Math.max(1,Math.floor(n||1)),height:Math.max(1,Math.floor(s||1))}}function zt(e=D.value){if(typeof document=="undefined")return null;const t=X(e),a=Z.value?".home-video-modal-item":".home-video-card .home-video-screen",o=document.querySelector(`${a}[data-video-index="${t}"]`);if(o)return o;const n=H.get(t);return n!=null&&n.isConnected?n:null}function Kn(e,t){var n;const a=(n=e==null?void 0:e.querySelector)==null?void 0:n.call(e,".home-video-player-host");if(!a)return null;a.replaceChildren();const o=document.createElement("div");return o.id=t,o.className="home-video-player",a.appendChild(o),o}function Je(e=D.value){var et,tt;if(typeof document=="undefined")return;const t=X(e),a=fe(t),o=wt(t),n=de.value===t&&F.value?F.value:zt(t)||C.value,s=document.getElementById(`${o}-wrap`),u=document.getElementById(o),d=s||u;if(!n||!d)return;const{width:f,height:w}=wo(n),g=J.get(a);try{s&&u&&g&&typeof g.reSize=="function"?g.reSize(f,w):s&&u&&g&&typeof g.autoResize=="function"&&g.autoResize()}catch(q){console.warn("EZUIKit resize failed",q)}const v={position:"absolute",left:"0",top:"0",right:"0",bottom:"0",width:`${f}px`,height:`${w}px`};Object.assign(d.style,v,{display:"block",verticalAlign:"top"}),s&&u&&Object.assign(u.style,{position:"absolute",left:"0",top:"0",right:"0",bottom:"0",display:"block",width:"100%",height:"100%",maxWidth:"none",maxHeight:"none",overflow:"hidden",verticalAlign:"top"});const h=document.getElementById(`EZUIKitPlayer-${o}`);h&&(h.setAttribute("width",String(f)),h.setAttribute("height",String(w)));const x=document.getElementById(`${o}-player`),_=document.getElementById(`${o}canvas0`),$=document.getElementById(`${o}canvas_draw0`),me=[d,u,x,_==null?void 0:_.parentElement,_,$==null?void 0:$.parentElement,$,...Array.from((u==null?void 0:u.children)||[]),...Array.from(((et=d==null?void 0:d.querySelectorAll)==null?void 0:et.call(d,"[id$='-wrap'], .play-window, video, canvas, iframe, object, embed"))||[]),...Array.from(((tt=u==null?void 0:u.querySelectorAll)==null?void 0:tt.call(u,".play-window, video, canvas, iframe, object, embed"))||[]),h].filter(Boolean);Array.from(new Set(me)).forEach(q=>{var Mt,Ut;(Mt=q.setAttribute)==null||Mt.call(q,"width",String(f)),(Ut=q.setAttribute)==null||Ut.call(q,"height",String(w)),Object.assign(q.style,{position:"absolute",left:"0",top:"0",right:"0",bottom:"0",width:"100%",height:"100%",maxWidth:"none",maxHeight:"none",margin:"0",objectFit:"fill"})}),ma(o)}function be(e={}){Array.from(J.keys()).forEach(t=>{Ze(Number(t),e)}),Object.keys(ge).forEach(t=>{J.has(t)||Ze(Number(t),e)}),Fe()}function Ze(e,t={}){const{clearElement:a=!0,resetError:o=!1}=t,n=X(e),s=fe(n);bo(n),xt(n);const u=J.get(s);J.delete(s),ke.set(s,(ke.get(s)||0)+1),u&&ga(u),a&&ya(n);const d=ge[s];d&&(d.playing=!1,d.loading=!1,d.ready=!1,o&&(d.error=""),d.error||delete ge[s]),n===D.value&&o&&(U.value=""),Fe()}function qn(e,t){const a=X(e),o=fe(a);xt(a);const n=window.setTimeout(()=>{const s=ge[o];t!==ke.get(o)||!(s!=null&&s.loading)||(s.error="视频加载超时",a===D.value&&(U.value=s.error),Ze(a,{resetError:!1}))},gl);Jt.set(o,n)}function xt(e){const t=fe(e),a=Jt.get(t);a&&(window.clearTimeout(a),Jt.delete(t))}function ga(e){if(!(!e||typeof e.stop!="function"))try{const t=e.stop();t&&typeof t.catch=="function"&&t.catch(()=>{})}catch(t){console.warn("EZUIKit stop error",t)}}function ya(e=D.value){var d;if(typeof document=="undefined")return;const t=X(e),a=wt(t),o=document.getElementById(`${a}-wrap`),n=document.getElementById(a),s=zt(t)||C.value,u=(d=s==null?void 0:s.querySelector)==null?void 0:d.call(s,".home-video-player-host");de.value===t&&Dt({restore:!1}),u&&u.replaceChildren(),o!=null&&o.isConnected&&o.remove(),n!=null&&n.isConnected&&n.remove()}function Yn(){return{autoFocus:0,header:{color:"#30dcff",activeColor:"#ffffff",backgroundColor:"#000000",btnList:[{iconId:"deviceID",part:"left",defaultActive:0,memo:"顶部设备序列号",isrender:0},{iconId:"deviceName",part:"left",defaultActive:0,memo:"顶部设备名称",isrender:0},{iconId:"cloudRec",part:"right",defaultActive:0,memo:"云存储",isrender:0},{iconId:"rec",part:"right",defaultActive:0,memo:"SD卡回放",isrender:0}]},footer:{color:"#ffffff",activeColor:"#30dcff",backgroundColor:"#00000021",btnList:[{iconId:"play",part:"left",defaultActive:1,memo:"播放",isrender:1},{iconId:"capturePicture",part:"left",defaultActive:0,memo:"截屏按钮",isrender:0},{iconId:"sound",part:"left",defaultActive:0,memo:"声音按钮",isrender:1},{iconId:"pantile",part:"left",defaultActive:0,memo:"云台控制按钮",isrender:1},{iconId:"recordvideo",part:"left",defaultActive:0,memo:"录制按钮",isrender:0},{iconId:"zoom",part:"left",defaultActive:0,memo:"电子放大",isrender:0},{iconId:"hd",part:"right",defaultActive:0,memo:"清晰度切换按钮",isrender:1},{iconId:"webExpend",part:"right",defaultActive:0,memo:"网页全屏按钮",isrender:1}]}}}function Qn(){const e=j.get("yak-structure");va(e,"畜群结构",Ua.value)}function Jn(){const e=j.get("yak-three-year-forecast");va(e,"预测存栏",Ue.value)}function Zn(){const e=j.get("yak-forecast-trend");va(e,"预测存栏",gt.value)}function va(e,t,a){const o=typeof(e==null?void 0:e.dispatchAction)=="function"?e:e==null?void 0:e.chart;!o||a<0||(o.dispatchAction({type:"downplay",seriesName:t}),o.dispatchAction({type:"hideTip"}),o.dispatchAction({type:"highlight",seriesName:t,dataIndex:a}),o.dispatchAction({type:"showTip",seriesName:t,dataIndex:a}))}function Vt(e){return e?ue.value%e:0}function Xn(){return re(this,null,function*(){const[e,t]=yield Promise.all([Zo("grassland","grassland-distribution"),Zo("wetland","wetland-distribution")]);G||(B.value={grassland:e,wetland:t})})}function Oe(e,t){const a=B.value[e];return[...(a==null?void 0:a.leftPanels)||[],...(a==null?void 0:a.rightPanels)||[]].find(n=>(n==null?void 0:n.key)===t)}function ba(e,t){return e?z(R({},e),{title:t}):null}function ei(){var w,g,v,h;const e=((w=Oe("grassland","grassland-town"))==null?void 0:w.rows)||[],t=((g=Oe("wetland","wetland-town-area"))==null?void 0:g.rows)||[],a=((v=Oe("grassland","grassland-productivity-town"))==null?void 0:v.rows)||[],o=((h=Oe("wetland","wetland-mu-yield"))==null?void 0:h.rows)||[],n=jt(e),s=jt(t),u=jt(a),d=jt(o);return[...new Set([...e,...t,...a,...o].map(x=>x==null?void 0:x.name).filter(Boolean))].map((x,_)=>{const $=n.get(x)||0,me=s.get(x)||0,Xe=u.get(x)||0,et=d.get(x)||0;let tt=0,q=0;$>0&&Xe>0&&(tt+=$*Xe,q+=$),me>0&&et>0&&(tt+=me*et,q+=me);const Mt=[Xe,et].filter(ka=>ka>0),Ut=q>0?tt/q:Mt.reduce((ka,Gi)=>ka+Gi,0)/Math.max(Mt.length,1);return{key:`home-pasture-productivity-${x}`,name:x,value:Number(Ut.toFixed(2)),unit:"斤/亩",extra:"草地与湿地加权亩产",sourceIndex:_}}).filter(x=>x.value>0)}function jt(e=[]){return new Map(e.map(t=>[t.name,Number(t.value)||0]))}function ti(e,t){const a=String((e==null?void 0:e.key)||"");return a.includes("grassland-town")?z(R({},e),{key:`home-${t}-${e.key}`,height:Ve.value,option:ai(e,e.title)}):a.includes("wetland-town-area")?z(R({},e),{key:`home-${t}-${e.key}`,height:Ve.value,option:oi(e,e.title)}):a.includes("grassland-type-proportion")?z(R({},e),{key:`home-${t}-${e.key}`,fixedActiveIndex:!0,height:Ve.value}):z(R({},e),{key:`home-${t}-${e.key}`,height:Ve.value})}function ai(e,t,a={}){var w;const o=(e.rows||[]).filter(g=>Number.isFinite(Number(g.value))).slice(0,10),n=((w=o.find(g=>g.unit))==null?void 0:w.unit)||"万亩",s=o.map(g=>Number(g.value)||0),u=Math.max(...s,1),d=Math.ceil(u*1.14),f=a.showTrendLine===!0;return He({animation:!0,animationDuration:900,animationDurationUpdate:700,animationEasing:"cubicOut",title:{text:`单位:${n}`,left:"5%",top:"8%",textStyle:{color:Ce,fontSize:10,fontWeight:400}},tooltip:{trigger:"axis",axisPointer:{type:"shadow",shadowStyle:{opacity:0}},backgroundColor:"rgba(0, 0, 0, 0.92)",borderWidth:1,borderColor:"rgba(255, 255, 255, 0.82)",padding:[8,10],textStyle:{color:"#ffffff",fontSize:10},formatter(g){var _;const v=Array.isArray(g)?g:[g],h=v.find($=>$.seriesName===t)||v[0],x=o[(_=h==null?void 0:h.dataIndex)!=null?_:0];return x?`${x.name}
${t}:${W(x.value)}${x.unit||n}`:""}},grid:{left:"12%",top:"25%",width:"82%",height:"55%"},xAxis:[{type:"category",data:o.map(g=>g.name),axisLabel:{interval:0,hideOverlap:!1,color:Ba,fontSize:10,fontWeight:700,lineHeight:12,margin:8,padding:[0,0,0,0],formatter:ko},axisLine:{show:!1},axisTick:{show:!1},splitLine:{show:!1}},{type:"category",data:o.map(g=>g.name),axisLine:{show:!1,lineStyle:{color:"rgba(0, 0, 0, 0)"}},axisTick:{show:!1},axisLabel:{show:!1}}],yAxis:{type:"value",min:0,max:d,axisLine:{show:!1},axisTick:{show:!1},splitLine:{show:!0,lineStyle:{type:[2,2],dashOffset:5,color:Pt,opacity:1,width:.3}},axisLabel:{color:nt,fontSize:10,formatter:we}},series:[{name:t,type:"bar",barWidth:7,stack:"b",z:3,data:o.map(g=>Number(g.value)||0),label:{show:!0,position:"top",distance:9,color:Ge,fontSize:10,fontWeight:700,formatter:({value:g})=>we(g)},itemStyle:{borderRadius:2,color:new Le(0,0,0,1,[{offset:0,color:"#43d9e8"},{offset:.58,color:"rgba(67, 217, 232, 0.72)"},{offset:1,color:"rgba(67, 217, 232, 0.16)"}])},emphasis:{itemStyle:{shadowBlur:4,shadowColor:"rgba(67, 217, 232, 0.18)"}}},...f?[{name:`${t}趋势`,type:"line",smooth:!0,symbol:"circle",symbolSize:5,showSymbol:!0,data:s,label:{show:!1},lineStyle:{width:1.3,color:"rgba(139, 247, 255, 0.82)",shadowBlur:0,shadowColor:"transparent"},itemStyle:{color:Ge,borderColor:"#8bf7ff",borderWidth:1,shadowBlur:0,shadowColor:"transparent"},emphasis:{scale:!0,lineStyle:{width:2}},tooltip:{show:!1},z:5}]:[],{type:"bar",barWidth:18,xAxisIndex:1,barGap:"-220%",data:o.map(()=>d),emphasis:{focus:"none",itemStyle:{color:"rgba(255, 255, 255, 0.8)"}},itemStyle:{color:"rgba(67, 217, 232, 0.3)",opacity:.08},tooltip:{show:!1},z:0}]})}function oi(e,t){var d;const a=(e.rows||[]).filter(f=>Number.isFinite(Number(f.value))).sort((f,w)=>(Number(w.value)||0)-(Number(f.value)||0)).slice(0,10),o=((d=a.find(f=>f.unit))==null?void 0:d.unit)||"万亩",n=a.map(f=>Number(f.value)||0),s=Math.max(...n,1),u=Math.ceil(s*1.2);return He({animation:!0,animationDuration:900,animationDurationUpdate:700,animationEasing:"cubicOut",title:{text:`单位:${o}`,left:"5%",top:"8%",textStyle:{color:Ce,fontSize:10,fontWeight:400}},tooltip:{trigger:"axis",axisPointer:{type:"shadow",shadowStyle:{opacity:.08}},backgroundColor:"rgba(0, 0, 0, 0.92)",borderWidth:1,borderColor:"rgba(255, 255, 255, 0.82)",padding:[8,10],textStyle:{color:"#ffffff",fontSize:10},formatter(f){var h;const w=Array.isArray(f)?f:[f],g=w.find(x=>x.seriesName===t)||w[0],v=a[(h=g==null?void 0:g.dataIndex)!=null?h:0];return v?`${v.name}
${t}:${W(v.value)}${v.unit||o}`:""}},grid:{left:58,right:74,top:42,bottom:14,containLabel:!1},xAxis:{type:"value",min:0,max:u,axisLine:{show:!1},axisTick:{show:!1},axisLabel:{show:!1},splitLine:{show:!0,lineStyle:{color:Pt,type:[2,4],width:.3}}},yAxis:{type:"category",inverse:!0,data:a.map(f=>f.name),axisLine:{show:!1},axisTick:{show:!1},axisLabel:{color:Ba,fontSize:10,fontWeight:700,margin:8}},series:[{name:"背景",type:"bar",barWidth:8,barGap:"-100%",data:a.map(()=>u),itemStyle:{color:"rgba(74, 145, 165, 0.13)",borderColor:"rgba(95, 208, 235, 0.12)",borderWidth:1},emphasis:{disabled:!0},tooltip:{show:!1},z:0},{name:t,type:"bar",barWidth:8,data:n,label:{show:!0,position:"right",distance:8,color:Ge,fontSize:10,fontWeight:700,formatter:({value:f})=>`${W(f)}${o}`},itemStyle:{borderRadius:[0,5,5,0],color:new Le(0,0,1,0,[{offset:0,color:"rgba(50, 170, 255, 0.22)"},{offset:.45,color:"#35d6ff"},{offset:1,color:"#8dfbff"}])},emphasis:{itemStyle:{shadowBlur:3,shadowColor:"rgba(53, 214, 255, 0.16)"}},z:2}]})}function ni(e=[],t="数值"){var v;const a=["邛溪镇","刷经寺镇","安曲镇","龙日镇","江茸乡","查尔玛乡","瓦切镇","阿木乡","麦洼乡","色地镇"],o=new Map(a.map((h,x)=>[h,x])),n=e.filter(h=>Number.isFinite(Number(h.value))).sort((h,x)=>{var _,$;return((_=o.get(h.name))!=null?_:99)-(($=o.get(x.name))!=null?$:99)}).slice(0,10),s=((v=n.find(h=>h.unit))==null?void 0:v.unit)||"头",u=n.map(h=>Number(h.value)||0),d=Math.max(...u,1),f=Math.ceil(d*1.16/1e4)*1e4,w=Vt(n.length),g=new Set(u.map((h,x)=>({value:h,index:x})).sort((h,x)=>x.value-h.value).slice(0,3).map(h=>h.index));return He({animation:!0,animationDuration:760,animationDurationUpdate:520,animationEasing:"cubicOut",title:{text:`单位:${s}`,left:12,top:8,textStyle:{color:Ce,fontSize:10,fontWeight:400}},tooltip:{trigger:"axis",axisPointer:{type:"line",lineStyle:{color:"rgba(48, 220, 255, 0.18)"}},backgroundColor:"rgba(0, 0, 0, 0.92)",borderWidth:1,borderColor:"rgba(255, 255, 255, 0.82)",padding:[8,10],textStyle:{color:"#ffffff",fontSize:10},formatter(h){var me;const x=Array.isArray(h)?h:[h],_=x.find(Xe=>Xe.seriesName===t)||x[0],$=n[(me=_==null?void 0:_.dataIndex)!=null?me:0];return $?`${$.name}
${t}:${W($.value)}${$.unit||s}`:""}},grid:{left:46,right:20,top:38,bottom:28,containLabel:!1},xAxis:{type:"category",boundaryGap:!1,data:n.map(h=>h.name),axisLine:{show:!0,lineStyle:{color:"rgba(141, 251, 255, 0.32)"}},axisTick:{show:!1},axisLabel:{show:!0,interval:0,margin:8,color:Ce,fontSize:9,formatter:h=>String(h).replace(/[乡镇]$/,"")}},yAxis:{type:"value",min:0,max:f,splitNumber:4,axisLine:{show:!1},axisTick:{show:!1},axisLabel:{color:Ce,fontSize:9,margin:7,formatter:h=>we(h)},splitLine:{show:!0,lineStyle:{color:"rgba(112, 209, 230, 0.25)",type:[4,4],width:.7}}},series:[{name:t,type:"line",smooth:.16,showSymbol:!0,symbol:"circle",symbolSize:(h,x)=>x.dataIndex===w?7:4,data:u,label:{show:!0,position:"top",distance:5,color:Ge,fontSize:10,fontWeight:700,formatter:({value:h,dataIndex:x})=>g.has(x)?we(h):""},lineStyle:{width:2.5,color:"#8dfbff",shadowBlur:7,shadowColor:"rgba(48, 220, 255, 0.68)"},areaStyle:{color:new Le(0,0,0,1,[{offset:0,color:"rgba(73, 241, 255, 0.72)"},{offset:.38,color:"rgba(38, 197, 235, 0.26)"},{offset:1,color:"rgba(13, 78, 111, 0.03)"}])},itemStyle:{color(h){return h.dataIndex===w?"#ffffff":"#38e6f7"},borderColor:"#8dfbff",borderWidth:1,shadowBlur:5,shadowColor:"rgba(48, 220, 255, 0.58)"},emphasis:{scale:!0,itemStyle:{color:"#ffffff",shadowBlur:5,shadowColor:"rgba(141, 251, 255, 0.2)"}},z:2}]})}function ii(e=[],t="数值"){var d;const a=e.filter(f=>Number.isFinite(Number(f.value))).slice(0,10),o=((d=a.find(f=>f.unit))==null?void 0:d.unit)||"",n=a.map(f=>Number(f.value)||0),s=Math.max(...n,1),u=Math.ceil(s*1.12);return He({animation:!0,animationDuration:900,animationDurationUpdate:700,animationEasing:"cubicOut",title:{text:o?`单位:${o}`:"",left:"5%",top:"8%",textStyle:{color:Ce,fontSize:10,fontWeight:400}},grid:{left:"12%",top:"25%",width:"82%",height:"55%"},tooltip:{trigger:"axis",axisPointer:{type:"shadow",shadowStyle:{opacity:.2}},backgroundColor:"rgba(0, 0, 0, 0.92)",borderWidth:1,borderColor:"rgba(153, 153, 153, 0.95)",padding:[8,10],textStyle:{color:"#ffffff",fontSize:10},formatter(f){var h;const g=(Array.isArray(f)?f:[f])[0],v=a[(h=g==null?void 0:g.dataIndex)!=null?h:0];return v?`${v.name}
${t}:${W(v.value)}${v.unit||o}`:""}},color:["#6BC7F6"],xAxis:[{type:"category",data:a.map(f=>f.name),axisLine:{show:!1},axisTick:{show:!1},splitLine:{show:!1},axisLabel:{color:Ba,fontSize:10,fontWeight:700,interval:0,padding:[0,0,0,0],formatter:ko}},{data:[],axisLine:{show:!1,lineStyle:{color:"rgba(0, 0, 0, 0)"}},axisTick:{show:!1},axisLabel:{show:!1}}],yAxis:{type:"value",min:0,max:u,axisLine:{show:!1},axisTick:{show:!1},splitLine:{show:!0,lineStyle:{type:[2,2],dashOffset:5,color:Pt,opacity:1,width:.3}},axisLabel:{color:nt,fontSize:10,formatter:we}},series:[{name:t,data:n,type:"line",smooth:!0,symbol:hl,symbolSize:10,showSymbol:!1,z:3,emphasis:{focus:"none",itemStyle:{color:"white"}},label:{show:!0,position:"top",distance:10,color:Ge,fontSize:10,fontWeight:700,formatter:({value:f})=>we(f)},lineStyle:{shadowColor:"rgba(0, 0, 0, 0.4)",shadowBlur:3,shadowOffsetY:10,width:3,color:new Le(0,0,0,1,[{offset:0,color:"rgba(115, 208, 255, 1)"},{offset:1,color:"rgba(18, 60, 98, 1)"}])},areaStyle:{color:new Le(0,0,0,1,[{offset:0,color:"rgba(25, 255, 236, 0.34)"},{offset:1,color:"rgba(51, 153, 255, 0)"}])}}]})}function xo(e){return String((e==null?void 0:e.key)||"").includes("grassland-town")}function So(e,t,a,o=0,n=!1,s=-1){return{name:e,type:"line",yAxisIndex:o,smooth:!0,symbolSize:5,data:t.map((u,d)=>({value:u,symbolSize:d===s?10:5,itemStyle:{color:d===s?"#ffffff":a},label:{show:d===s,position:"top",color:a,fontSize:10,formatter:({value:f})=>we(f)}})),lineStyle:{width:2.4,color:a},itemStyle:{color:a},areaStyle:n?{color:new Le(0,0,0,1,[{offset:0,color:`${a}44`},{offset:1,color:`${a}05`}])}:void 0}}function ri(e){return ia.find(t=>t.key===e)||ia[2]}function si(e,t="month"){if(t==="month")return Tr(e);const a=Ar(e),o=Math.max(1,Math.round(Math.max(1,a-1)*30)),n=t==="week"?7:1,s=Math.ceil(o/n)+1,u=Array.from({length:s},(g,v)=>{const h=Math.min(o,v*n);return Ir(h)}),d=u.map((g,v)=>{const x=Math.min(o,v*n)/o,_=Math.sin(v/(t==="week"?1.8:8.5))*Math.sin(Math.PI*x)*Math.min(360,e.months*18);return Math.round(qo+(e.stock-qo)*x+_)}),f=u.map((g,v)=>Math.round(e.births*(Math.min(o,v*n)/o))),w=u.map((g,v)=>Math.round(e.outflow*(Math.min(o,v*n)/o)));return{labels:u,stock:d,births:f,outflow:w}}function li(e,t){return t==="day"?Math.max(10,Math.ceil(e/6)):t==="week"?Math.max(2,Math.ceil(e/7)):e>24?4:e>14?2:1}function ui(e,t){return t==="day"?e>700?2:e>360?3:4:t==="week"?e>110?4:6:e>24?7:10}function ci(e){return(e.labels||[]).map((t,a)=>{var g,v,h,x,_,$;const o=Number(((g=e.stock)==null?void 0:g[Math.max(a-1,0)])||0),n=Number(((v=e.stock)==null?void 0:v[a])||o),s=Math.max(0,Number(((h=e.births)==null?void 0:h[a])||0)-Number(((x=e.births)==null?void 0:x[Math.max(a-1,0)])||0)),u=Math.max(0,Number(((_=e.outflow)==null?void 0:_[a])||0)-Number((($=e.outflow)==null?void 0:$[Math.max(a-1,0)])||0)),d=Math.max(120,Math.round((s+u)*.18)),f=Math.max(o,n)+Math.max(d,Math.round(s*.32)),w=Math.max(0,Math.min(o,n)-Math.max(d,Math.round(u*.32)));return{label:t,open:o,close:n,low:w,high:f,birth:s,outflow:u,value:[o,n,w,f]}})}function W(e){const t=Number(e);return Number.isFinite(t)?t.toLocaleString("zh-CN",{maximumFractionDigits:Number.isInteger(t)?0:2}):"--"}function di(e){const t=Number(e);return Number.isFinite(t)?`${t>0?"+":""}${W(t)}`:"--"}function we(e){const t=Number(e);return Number.isFinite(t)?Math.abs(t)>=1e4?`${(t/1e4).toFixed(Math.abs(t)>=1e5?0:1)}万`:Math.round(t).toLocaleString("zh-CN"):"--"}function Mo(e,t=2){const a=Number(e);return Number.isFinite(a)?Math.abs(a)>=1e4?`${(a/1e4).toFixed(t)}万`:Math.round(a).toLocaleString("zh-CN"):"--"}function ko(e){return String(e||"").replace(/\s+/g,"").replace(/[镇乡]$/u,"").slice(0,4)}function fi(e){if(!e)return null;const t=Fr(e.topicKey,e.layerKey);if(t)return t;const a=Er(e.topicKey);return a.find(o=>o.key===e.layerKey)||a[0]||null}function hi(e,t){const a=Number.isFinite(Number(t.fillOpacity))?Number(t.fillOpacity):.46,o=t.stroke||t.strokeColor||"#E5FCFF",n=Number.isFinite(Number(t.strokeOpacity))?Number(t.strokeOpacity):.86,s=Number.isFinite(Number(t.strokeWidth))?Number(t.strokeWidth):1.1;return`${e}${t.fill}${a}${o}${n}${s}round`}function mi(e){_t.some(t=>t.key===e)&&(K.value=e,he())}function Po(e){if(e.key==="Escape"){if(de.value!==null){Dt();return}Gt(),$t()}}function wa(){Da.value=typeof window=="undefined"?1080:window.innerHeight,pa()}function pi(e){const t=document.querySelector(".home-dashboard"),a=t==null?void 0:t.getBoundingClientRect();if(!(a!=null&&a.width)||!(a!=null&&a.height))return e;const o=Number(e==null?void 0:e.x),n=Number(e==null?void 0:e.y);return!Number.isFinite(o)||!Number.isFinite(n)?{x:960,y:540}:o>=0&&o<=1920&&n>=0&&n<=1080&&(o>a.width||n>a.height)?{x:o,y:n}:{x:(o-a.left)/a.width*1920,y:(n-a.top)/a.height*1080}}function xa(e,t){var a,o,n,s;return((o=(a=A.value)==null?void 0:a.getVectorFeatureAnchorScreen)==null?void 0:o.call(a,e))||((s=(n=A.value)==null?void 0:n.getVectorFeatureScreen)==null?void 0:s.call(n,e))||t}function gi(){if(!ra.value||!ne.value)return;const e=xa(ne.value,ye.value);if(!e)return;const t=ye.value;t&&Math.abs(Number(t.x)-Number(e.x))<.5&&Math.abs(Number(t.y)-Number(e.y))<.5||(ye.value=e)}function Sa(e){const t=(e==null?void 0:e.properties)||{};return Object.keys(t).filter(o=>Ao(o,t[o])).length}function yi(e={}){return e.categoryCode==="YC-FAMILY-PASTURE"||e.stageKey==="family-pasture"}function vi(e={},t=null){const a=bi(e,t),o=a.metrics||{},n=a.attributes||{},s=[],u=(d,f,w="")=>{To(f)&&s.push({label:d,value:Pi(f,w)})};return u("名称",a.name||a.fullName),u("所在乡镇",a.town||a.areaName),u("户主",a.owner||n.户主),u("建设年份",a.constructionYear,"年"),u("所在村",a.village||a.address),u("标准化暖棚",o["标准化暖棚 (㎡)"],"㎡"),u("生产管理用房",o["管理用房 (㎡)"],"㎡"),u("饲草料库",o["饲草料库 (㎡)"],"㎡"),u("活动场地及通道",o["活动场地及通道 (㎡)"],"㎡"),u("草料配套",a.grassSupportText||n.草料配套),s.some(d=>d.label==="草料配套")||u("设施配置",a.facilityDetail||n.设施配置),s}function bi(e={},t=null){const a=ki(e),s=(a?m.get(a):null)||wi(e,t)||null;return z(R(R({},e),s||{}),{name:(s==null?void 0:s.name)||e.name||e.fullName,fullName:(s==null?void 0:s.name)||e.fullName||e.name,town:(s==null?void 0:s.town)||e.town||e.areaName,village:(s==null?void 0:s.village)||e.village||e.address,address:(s==null?void 0:s.village)||e.address,markerNo:a||e.markerNo})}function Co(e=[],t){const a=new Map;return e.forEach(o=>{const n=t(o);n&&(a.has(n)||a.set(n,[]),a.get(n).push(o))}),a.forEach(o=>{o.sort((n,s)=>Number(n.matchedPointNo||0)-Number(s.matchedPointNo||0))}),a}function wi(e={},t=null){const a=St(e.town||e.areaName||e.matchedPointTown),o=St(e.village||e.address||e.matchedPointVillage),n=y.get(Lo(a,o))||[],s=b.get(a)||[],u=n.length?n:s;return u.length?xi(u,Mi(e,t)):null}function xi(e=[],t=null){var a;return t?((a=e.map((o,n)=>({record:o,index:n,distance:Si(t,{longitude:Number(o.longitude),latitude:Number(o.latitude)})})).sort((o,n)=>o.distance-n.distance||o.index-n.index)[0])==null?void 0:a.record)||e[0]||null:e[0]||null}function Si(e={},t={}){const a=Number(e.longitude),o=Number(e.latitude),n=Number(t.longitude),s=Number(t.latitude);return[a,o,n,s].every(Number.isFinite)?Math.hypot(a-n,o-s):Number.POSITIVE_INFINITY}function Mi(e={},t=null){var s,u,d,f,w,g,v,h,x,_,$,me;const a=Ma((f=(d=(u=(s=e.longitude)!=null?s:e.lng)!=null?u:e.lon)!=null?d:e.jd)!=null?f:e.x,(v=(g=(w=e.latitude)!=null?w:e.lat)!=null?g:e.wd)!=null?v:e.y);if(a)return a;const o=Ma((h=t==null?void 0:t.lngLat)==null?void 0:h.lng,(x=t==null?void 0:t.lngLat)==null?void 0:x.lat);if(o)return o;const n=(t==null?void 0:t.geometry)||((_=t==null?void 0:t.feature)==null?void 0:_.geometry);return(n==null?void 0:n.type)==="Point"?Ma(($=n.coordinates)==null?void 0:$[0],(me=n.coordinates)==null?void 0:me[1]):null}function Ma(e,t){const a=Number(e),o=Number(t);return!Number.isFinite(a)||!Number.isFinite(o)?null:{longitude:a,latitude:o}}function Lo(e,t){const a=St(e),o=St(t);return a&&o?`${a}::${o}`:""}function St(e){return String(e||"").trim().replace(/\s+/g,"")}function ki(e={}){const t=Number(e.matchedPointNo||e.markerNo||0);if(Number.isFinite(t)&&t>0)return t;const o=[e.pointName,e.name,e.fullName,e.id,e.key].filter(Boolean).join(" ").match(/地图标记\s*(\d+)\s*号点/),n=o?Number(o[1]):0;return Number.isFinite(n)&&n>0?n:0}function To(e){return e!=null&&String(e).trim()!==""}function Pi(e,t=""){if(!To(e))return"";const a=String(e).trim();return t?a.endsWith(t)?a:`${a}${t}`:a}function Ao(e,t){return t==null||t===""||Array.isArray(t)||typeof t=="object"?!1:!S.has(String(e||"").toLowerCase())}function Io(e={}){const t=String(K.value||"").toLowerCase(),a=`${e.key||""} ${e.layerName||""} ${t}`.toLowerCase();return t==="woodland"||a.includes("woodland")||a.includes("t_woodland")?"woodland":t==="wetland"||a.includes("wetland")||a.includes("shidi")?"wetland":t==="grassland"||a.includes("grassland")||a.includes("caodi")?"grassland":""}function Ci(e={}){const t=No(e.lng),a=No(e.lat);return t===""||a===""?"":`POINT(${t} ${a})`}function No(e){const t=Number(e);return Number.isFinite(t)?t.toFixed(8).replace(/\.?0+$/,""):""}function Li(){return re(this,arguments,function*(e={}){var f,w,g,v,h,x;const t=Number((f=e==null?void 0:e.lngLat)==null?void 0:f.lng),a=Number((w=e==null?void 0:e.lngLat)==null?void 0:w.lat),o=Va.value,n=Io(o);if(!Number.isFinite(t)||!Number.isFinite(a)){he();return}if(!n){Hi();return}const s=++dt,u=ze,d=e.screen||{x:960,y:540};ye.value=null,ne.value=null,je.value=!1,We.value=!0,(v=(g=A.value)==null?void 0:g.clearSelectedFeature)==null||v.call(g);try{const _=yield Ti(o,{lng:t,lat:a},n);if(s!==dt||G)return;if(!_){ze===u&&he();return}ne.value=_,je.value=!1,(x=(h=A.value)==null?void 0:h.highlightFeature)==null||x.call(h,_,{highlightTone:"v21"}),ye.value=xa(_,d)}catch(_){s===dt&&ze===u&&he()}finally{s===dt&&(We.value=!1)}})}function Ti(o,n){return re(this,arguments,function*(e,t,a=Io(e)){const s=Ci(t);if(!s)return null;let u=null;a==="grassland"?u=yield os({wkt:s}):a==="wetland"?u=yield ns({wkt:s}):a==="woodland"&&(u=yield es(s));const d=Ai(u,a);if(!Ni(d))return null;const f=Fi(d,e,t,a);return Sa(f)>0?f:null})}function Ai(e,t){var o,n,s,u;const a=[e==null?void 0:e[t],e==null?void 0:e.grassland,e==null?void 0:e.wetland,e==null?void 0:e.woodland,(o=e==null?void 0:e.data)==null?void 0:o[t],(n=e==null?void 0:e.data)==null?void 0:n.grassland,(s=e==null?void 0:e.data)==null?void 0:s.wetland,(u=e==null?void 0:e.data)==null?void 0:u.woodland,e==null?void 0:e.data,e==null?void 0:e.result,e];for(const d of a){const f=Ii(d);if(f)return f}return null}function Ii(e){return Array.isArray(e)?e.find(t=>t&&typeof t=="object")||null:e&&typeof e=="object"?e:null}function Ni(e){return!e||typeof e!="object"?!1:Array.isArray(e.dyColumn)&&e.dyColumn.some(_i)?!0:Object.keys(e).some(t=>Ao(t,e[t]))}function _i(e={}){const t=e==null?void 0:e.value;return t==null||t===""?!1:!!String((e==null?void 0:e.field)||(e==null?void 0:e.title)||"").trim()}function Fi(e,t,a,o){const n=Oi(e),s=Ei(e);return{id:e.id||e.patchNo||e.patch_no||e.landNumber||e.land_number||`${o}-${a.lng}-${a.lat}`,properties:n,feature:{type:"Feature",properties:n,geometry:s},geometry:s,layer:t,lngLat:a}}function Ei(e={}){return e.geometry||e.geom||e.wkt||e.the_geom||e.theGeom||e.geo||e.geometryWkt||e.geometry_wkt||e.shape||null}function Oi(e={}){const t=R({},e);return(Array.isArray(e.dyColumn)?e.dyColumn:[]).forEach(o=>{const n=o==null?void 0:o.value;if(n==null||n==="")return;const s=p[String((o==null?void 0:o.title)||"").trim()],u=String((o==null?void 0:o.field)||"").trim();[u,Bi(u),s].filter(Boolean).forEach(f=>{(t[f]===void 0||t[f]===null||t[f]==="")&&(t[f]=n)})}),t}function Bi(e){const t=String(e||"").trim();return t?t.replace(/([a-z0-9])([A-Z])/g,"$1_$2").toLowerCase():""}function Ri(e){var a,o;ze+=1,Wt();const t=(o=(a=e==null?void 0:e.feature)!=null?a:e)!=null?o:null;if(!t||Sa(t)<=0){he();return}ne.value=t,je.value=!1,e!=null&&e.screen&&(ye.value=xa(t,e.screen))}function he(){var e,t;Wt(),dt+=1,ne.value=null,je.value=!1,We.value=!1,ye.value=null,(t=(e=A.value)==null?void 0:e.clearSelectedFeature)==null||t.call(e)}function Hi(){const e=ze;Wt(),ft=window.setTimeout(()=>{ft=null,ze===e&&he()},80)}function Wt(){ft&&(window.clearTimeout(ft),ft=null)}function _o(e){if(!ra.value)return;const t=document.querySelector(".home-map-feature-info"),a=document.querySelector(".home-dashboard .cesium-map"),o=e.target;t&&o instanceof Node&&t.contains(o)||a&&o instanceof Node&&a.contains(o)||he()}return(e,t)=>(I(),E("div",ks,[Oo(Kt(xs,{ref_key:"threeMapSceneRef",ref:k,class:"home-map-scene home-three-map-scene","show-data-overlays":!1,"max-pixel-ratio":1.35,onPlayComplete:Tn},null,512),[[Bo,cn.value]]),ie.value?Oo((I(),Te(tr,{key:0,ref_key:"mapSceneRef",ref:A,class:"home-map-scene home-remote-map-scene",active:L.active&&ie.value,"active-layer":Va.value,"admin-boundary-line-scale":1.65,"initial-zoom":yl,"minimum-zoom-distance":1,"auto-apply-layer-map-view":!1,"max-zoom":21,"enable-imagery-feature-pick":!0,"emit-empty-feature-info-on-miss":!1,"hide-town-label-stats":"",onReady:qe,onFeatureLoading:t[0]||(t[0]=a=>We.value=a),onFeatureInfo:Ri,onMapClick:Li,onViewChange:gi},null,8,["active","active-layer"])),[[Bo,ie.value]]):Q("",!0),t[13]||(t[13]=M("div",{class:"home-map-scrim"},null,-1)),M("div",Ps,[Kt(Zr,{"model-value":K.value,topics:_t,"onUpdate:modelValue":mi},null,8,["model-value"])]),ra.value?(I(),E("div",{key:1,class:"home-map-feature-info",style:kt(hn.value)},[Kt(Xr,{title:mn.value,feature:ne.value,empty:je.value,loading:We.value,width:at(dn),height:fn.value,rows:Wa.value,closable:"",onClose:he},null,8,["title","feature","empty","loading","width","height","rows"])],4)):Q("",!0),M("div",Cs,[M("div",Ls,[(I(!0),E(Be,null,Re(Mn.value,a=>(I(),Te(Ho,{key:a.key,class:"home-card left-card",title:a.title,width:at($a),height:a.height},{default:Pa(()=>[a.option?(I(),Te(at(Ca),{key:0,ref_for:!0,ref:o=>da(a.key,o),class:"home-chart home-town-column-chart",option:a.option,autoresize:!0},null,8,["option"])):(I(),Te(Jo,{key:1,panel:a,compact:"","column-label-standard":xo(a),"visual-version":"v21"},null,8,["panel","column-label-standard"]))]),_:2},1032,["title","width","height"]))),128))])]),M("div",Ts,[M("div",As,[(I(!0),E(Be,null,Re(kn.value,a=>(I(),Te(Ho,{key:a.key,class:ot(["home-card","right-card",{"home-video-card":a.type==="video"}]),title:a.title,width:at($a),height:a.height},{extra:Pa(()=>[a.type==="video"||a.key==="home-town-balance-gauge"?(I(),E("button",{key:0,class:"home-card-more",type:"button","aria-label":a.type==="video"?"查看全部基地监控":"查看全部乡镇草畜平衡",onClick:o=>a.type==="video"?$n():Dn()},[...t[3]||(t[3]=[Ki(" 更多 ",-1),M("span",{"aria-hidden":"true"},"›",-1)])],8,Is)):Q("",!0)]),default:Pa(()=>[a.type==="video"?(I(),E("div",Ns,[M("button",{class:"home-video-nav home-video-prev",type:"button","aria-label":"上一路监控",disabled:Ke.value.length<=1,onClick:Hn},"‹",8,_s),M("div",{class:ot(["home-video-grid",{"is-single":Ya.value.length<=1}])},[(I(!0),E(Be,null,Re(Ya.value,o=>(I(),E("div",{key:o.key,ref_for:!0,ref:n=>ao(n,o),"data-video-index":o.index,class:ot(["home-video-screen",{"is-active":o.isActive,"is-playing":ha(o.index),"is-loading":Ht(o.index)}]),style:kt(co(o.live,o.isActive,o.index)),role:"button",tabindex:"0",onClick:n=>po(o.index,n),onKeydown:[qt(Ae(n=>Ee(o.index),["prevent"]),["enter"]),qt(Ae(n=>Ee(o.index),["prevent"]),["space"])]},[t[4]||(t[4]=M("div",{class:"home-video-player-host"},null,-1)),Ht(o.index)?(I(),E("div",Es,"加载中")):Q("",!0),Ye(o.index)?(I(),E("div",Os,V(Ye(o.index)),1)):Q("",!0),o.live.hdPlayUrl&&(!uo(o.index)||Ye(o.index))?(I(),E("button",{key:2,class:"home-video-hit",type:"button","aria-label":"播放监控",onClick:Ae(n=>Ee(o.index),["stop"])},null,8,Bs)):Q("",!0),M("div",Rs,V(o.live.title),1)],46,Fs))),128))],2),M("button",{class:"home-video-nav home-video-next",type:"button","aria-label":"下一路监控",disabled:Ke.value.length<=1,onClick:Gn},"›",8,Hs)])):a.key==="yak-forecast-trend"?(I(),E("div",Gs,[M("div",$s,[(I(),E(Be,null,Re(ia,o=>M("button",{key:o.key,type:"button",class:ot({active:o.key===oa.value}),onClick:n=>oa.value=o.key},V(o.label),11,Ds)),64))]),Kt(at(Ca),{ref_for:!0,ref:o=>da(a.key,o),class:"home-chart home-forecast-kline-chart",option:a.option,autoresize:!0},null,8,["option"])])):a.option?(I(),Te(at(Ca),{key:2,ref_for:!0,ref:o=>da(a.key,o),class:"home-chart",option:a.option,autoresize:!0},null,8,["option"])):a.key==="home-town-balance-gauge"?(I(),E("div",zs,[Et.value.length?Q("",!0):(I(),E("div",Vs,[t[5]||(t[5]=M("i",null,null,-1)),M("span",null,V(gn.value),1)])),(I(!0),E(Be,null,Re(Et.value,(o,n)=>(I(),E("div",{key:o.key,class:ot(["home-balance-gauge-card",{"is-active":n===yn.value}]),style:kt(yo(o))},[M("div",js,[M("strong",null,V(o.status),1)]),M("div",Ws,[M("div",Us,[M("strong",null,V(W(o.value)),1),t[6]||(t[6]=M("em",null,"%",-1))])]),M("div",Ks,V(o.name),1),M("div",qs,V(o.extra),1)],6))),128))])):(I(),Te(Jo,{key:4,panel:a,compact:"","column-label-standard":xo(a),"visual-version":"v21"},null,8,["panel","column-label-standard"]))]),_:2},1032,["class","title","width","height"]))),128))])]),Z.value?(I(),E("div",{key:2,class:"home-more-modal",role:"dialog","aria-modal":"true","aria-label":"全部基地监控",onClick:Ae(Gt,["self"])},[M("section",{class:"home-more-dialog home-video-dialog","data-monitoring-updated-at":Ha.value},[M("header",Qs,[M("div",null,[t[7]||(t[7]=M("h2",null,"基地监控",-1)),M("p",null,"共 "+V(ae.value.length)+" 路,在线 "+V(bn.value)+" 路",1)]),M("button",{type:"button",title:"关闭","aria-label":"关闭",onClick:Gt},"×")]),Qa.value.length?(I(),E("div",Js,[(I(!0),E(Be,null,Re(Qa.value,a=>(I(),E("div",{key:a.key,ref_for:!0,ref:o=>ao(o,a),"data-video-index":a.index,class:ot(["home-video-modal-item home-video-screen",{"is-active":a.index===D.value,"is-playing":ha(a.index),"is-loading":Ht(a.index),"is-offline":a.live.status!=="直播中"}]),style:kt(co(a.live,a.index===D.value,a.index)),role:"button",tabindex:"0",onClick:o=>po(a.index,o),onKeydown:[qt(Ae(o=>Ee(a.index),["prevent"]),["enter"]),qt(Ae(o=>Ee(a.index),["prevent"]),["space"])]},[t[8]||(t[8]=M("div",{class:"home-video-player-host"},null,-1)),Ht(a.index)?(I(),E("div",Xs,"加载中")):Q("",!0),Ye(a.index)?(I(),E("div",el,V(Ye(a.index)),1)):Q("",!0),a.live.hdPlayUrl&&(!uo(a.index)||Ye(a.index))?(I(),E("button",{key:2,class:"home-video-hit",type:"button","aria-label":"播放监控",onClick:Ae(o=>Ee(a.index),["stop"])},null,8,tl)):Q("",!0),M("span",al,V(a.live.title),1)],46,Zs))),128))])):(I(),E("div",ol,"暂无监控数据")),vt.value>1?(I(),E("footer",nl,[M("button",{type:"button",disabled:oe.value<=1,onClick:t[1]||(t[1]=a=>fo(oe.value-1))},"上一页",8,il),M("span",null,V(oe.value)+" / "+V(vt.value),1),M("button",{type:"button",disabled:oe.value>=vt.value,onClick:t[2]||(t[2]=a=>fo(oe.value+1))},"下一页",8,rl)])):Q("",!0)],8,Ys)])):Q("",!0),(I(),Te(qi,{to:"body"},[de.value!==null?(I(),E("div",sl,[M("div",{ref_key:"homeVideoWebStageRef",ref:F,class:"home-video-screen home-video-web-stage is-active is-playing"},[...t[9]||(t[9]=[M("div",{class:"home-video-web-player-slot"},null,-1)])],512)])):Q("",!0)])),ea.value?(I(),E("div",{key:3,class:"home-more-modal",role:"dialog","aria-modal":"true","aria-label":"全部乡镇草畜平衡",onClick:Ae($t,["self"])},[M("section",ll,[M("header",ul,[M("div",null,[t[10]||(t[10]=M("h2",null,"全县乡镇草畜平衡",-1)),M("p",null,"全部 "+V(Ft.value.length)+" 个乡镇,理论承载、实际载畜、超载数量与超载率统一按结果库口径",1)]),M("button",{type:"button",title:"关闭","aria-label":"关闭",onClick:$t},"×")]),M("div",cl,[(I(!0),E(Be,null,Re(Ft.value,a=>(I(),E("article",{key:a.key,class:"home-balance-modal-item",style:kt(yo(a))},[M("div",dl,[M("strong",null,V(a.name),1),M("span",null,V(a.status),1)]),M("div",fl,[M("strong",null,V(W(a.value)),1),t[11]||(t[11]=M("em",null,"%",-1))]),t[12]||(t[12]=M("div",{class:"home-balance-modal-track"},[M("i")],-1)),M("p",null,V(a.extra),1)],4))),128))])])])):Q("",!0)]))}};export{Dl as default};