var Ti=Object.defineProperty,Ai=Object.defineProperties;var Ii=Object.getOwnPropertyDescriptors;var Lo=Object.getOwnPropertySymbols;var _i=Object.prototype.hasOwnProperty,Ei=Object.prototype.propertyIsEnumerable;var To=(L,n,r)=>n in L?Ti(L,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):L[n]=r,G=(L,n)=>{for(var r in n||(n={}))_i.call(n,r)&&To(L,r,n[r]);if(Lo)for(var r of Lo(n))Ei.call(n,r)&&To(L,r,n[r]);return L},z=(L,n)=>Ai(L,Ii(n));var X=(L,n,r)=>new Promise((u,l)=>{var h=m=>{try{p(r.next(m))}catch(x){l(x)}},v=m=>{try{p(r.throw(m))}catch(x){l(x)}},p=m=>m.done?u(m.value):Promise.resolve(m.value).then(h,v);p((r=r.apply(L,n)).next())});import{h as qo,w as kt,o as _,c as E,a as M,d as R,L as Ri,g as T,M as Ae,q as Fi,A as q,s as Ao,v as Io,b as Vt,C as Ie,j as Y,K as St,u as et,F as He,y as Ge,x as wa,B as Oi,n as tt,e as jt,f as _e,t as D,T as Ni,N as Bi}from"./index-1786541781548.js";import{l as _o,g as Hi,E as Gi}from"./live-scene-1-6228d1a0-1786541781548.js";import{H as xa}from"./index.esm.min-8cdcc8d4-1786541781548.js";import{_ as Eo}from"./index-6fc47545-1786541781548.js";import{g as Sa,C as $i,H as Di,a as zi,M as Vi}from"./index-af4e3bce-1786541781548.js";import{O as ji,P as Ve,a as se,D as nt,C as me,A as xe,b as te,e as Wi,F as Ui,G as be,c as Ki,d as qi,f as Yi,g as Ro,L as Fo,V as ee,h as Oo,R as we,B as Qi,S as Ma,i as Ji,j as Zi,k as Xi,l as er,N as tr,Q as ar,T as or,m as nr,n as No,o as Bo,p as ir,q as Ho,r as rr}from"./screen2Standard-54c0337d-1786541781548.js";import{M as sr,g as lr,h as ur,L as cr,B as Go,a as ka,E as dr,G as fr,D as hr,b as mr,l as Ca,P as $o,c as Do}from"./three.interactive-b20ac8b1-1786541781548.js";import{g as it}from"./index-e9f36657-1786541781548.js";import{h as pr,a as Yo,f as gr,g as yr,b as vr}from"./townshipBoundaries-cb449981-1786541781548.js";import{R as br,r as wr,a as xr,c as Sr,o as Mr,s as kr,p as Cr,b as zo,d as Pr,h as Lr,g as Vo,e as Tr,f as Ar,i as Ir,j as _r,k as Er,l as Rr,m as Fr,n as Or,_ as Nr}from"./TopicSwitcher-dccf4985-1786541781548.js";import{_ as Br,a as jo}from"./FeatureInfoPanel-d72afc33-1786541781548.js";import{g as Hr,a as Gr,b as $r}from"./homeApi-5936c8b9-1786541781548.js";import{g as Dr,a as zr}from"./openApi-e3a5d37a-1786541781548.js";import{g as Vr}from"./pastureApi-d30fd847-1786541781548.js";import{w as $e,f as Pa}from"./chartTheme-5bd00e2e-1786541781548.js";import{c as jr,F as Wr}from"./featurePanelLayout-3e9b38ef-1786541781548.js";import{g as Ur}from"./balanceApi-7cfaf8b2-1786541781548.js";import{n as Kr}from"./data-efe99d44-1786541781548.js";import"./index-25a05535-1786541781548.js";import"./geoserver-a49d147b-1786541781548.js";class qr extends ji{constructor(n,r){super(),this.config=Object.assign({color1:16566615,color2:16777215},r),this.assets={instance:null},this.assets.instance=n.assets.instance,this.sceneGroup=n.sceneGroup,this.gsapObjects=[],this.animateElements={},this.init()}init(){let n=this.config.color1,r=new Ve(1.5,1.5,1),u=new Ve(1,3,1);u.translate(0,1,0);let l=new se({color:n,transparent:!0,fog:!1,side:nt,depthWrite:!1}),h=l.clone();h.map=this.assets.instance.getResource("focusArrows");let v=l.clone();v.map=this.assets.instance.getResource("focusBar");let p=l.clone();p.map=this.assets.instance.getResource("focusBg");let m=l.clone();m.color=new me(this.config.color2),m.map=this.assets.instance.getResource("focusMidQuan");let x=l.clone();x.map=this.assets.instance.getResource("focusMoveBg"),x.blending=xe;let A=new te(r,h),P=new te(u,v);P.rotation.x=Math.PI/2;let F=P.clone();F.rotation.y=Math.PI/2;let k=new te(r,p),C=new te(r,m),S=new te(r,x),H=[C,k,A,S,P,F];H.map(V=>{V.renderOrder=99}),this.add(...H);let N=0;S.scale.setScalar(N),this.animateElements={focusMidQuan:C,focusArrows:A,focusMoveBg:S},this.startAnimate()}startAnimate(){let n=it.to(this.animateElements.focusMidQuan.rotation,{z:2*Math.PI,duration:8,repeat:-1,ease:"none"}),r=it.to(this.animateElements.focusArrows.rotation,{z:2*Math.PI,duration:5,repeat:-1,ease:"none"}),u=it.to(this.animateElements.focusMoveBg.scale,{x:1.5,y:1.5,z:1.5,duration:2.5,repeat:-1,ease:"none"}),l=it.to(this.animateElements.focusMoveBg.material,{opacity:0,duration:2.5,repeat:-1,ease:"none"});this.gsapObjects=[n,r,u,l]}pausedAnimate(){this.gsapObjects.map(n=>{n.paused=!0})}destroy(){this.gsapObjects.map(n=>{n.kill()}),Wi(this)}}const Yr=pr.map(L=>G({},L)),Wo=Yo.map(L=>G({},L)),Qr=Yo.map(L=>{var n,r;return{name:L.name,value:L.value,lng:(n=L.center)==null?void 0:n[0],lat:(r=L.center)==null?void 0:r[1]}}),Jr=[{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 La(L){return L.sort((n,r)=>r.value-n.value),L}function Zr(L){return L?typeof L=="string"?JSON.parse(L):L:null}function Ta(L){const n=Zr(L);return n!=null&&n.features&&n.features.forEach(r=>{var u;((u=r.geometry)==null?void 0:u.type)==="Polygon"&&(r.geometry.coordinates=[r.geometry.coordinates])}),n}function Xr(L,n){var r;try{return(r=L==null?void 0:L.getResource)==null?void 0:r.call(L,n)}catch(u){return null}}function es(L,n,r){const u=Number(L);return Number.isFinite(u)?Math.max(n,Math.min(r,u)):n}class ts extends sr{constructor(n,r,u={}){var l;super(n,{maxPixelRatio:(l=u.maxPixelRatio)!=null?l:u.showDataOverlays===!1?1.35:void 0,antialias:u.antialias}),this.options=u||{},this.geoProjectionCenter=[102.6305459723107,32.72169252326339],this.geoProjectionScale=650,this.backgroundProjectionCenter=u.backgroundProjectionCenter||this.geoProjectionCenter,this.backgroundProjectionScale=u.backgroundProjectionScale||120,this.geoProjectionFn=lr().center(this.geoProjectionCenter).scale(this.geoProjectionScale).translate([0,0]),this.flyLineCenter=[102.60242339873115,32.83022561372293],this.depth=.5,this.clicked=!1,this.sceneMode=u.sceneMode||"default",this.showDataOverlays=u.showDataOverlays!==!1,this.mapAnimationDone=!1,this.sceneTweens=[],this.sceneTimers=[],this.scene.fog=new Ui(1058614,1,50),this.scene.background=new me(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 ur(this.renderer.instance,this.camera.instance,this.canvas),this.assets=r,this.staticMapData={china:Ta(Xr(this.assets.instance,"china")),mapJson:Ta(this.assets.instance.getResource("mapJson")),mapStroke:Ta(this.assets.instance.getResource("mapStroke"))},this.initEnvironment(),this.init()}addSceneTween(n){var r;return n&&(this.sceneTweens.push(n),this.scenePaused&&((r=n.pause)==null||r.call(n)),n)}addSceneTimer(n){return n&&this.sceneTimers.push(n),n}init(){this.labelGroup=new be,this.label3d=new cr(this),this.labelGroup.rotation.x=-Math.PI/2,this.scene.add(this.labelGroup),this.flyLineFocusGroup=new be,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 n=it.timeline({onComplete:()=>{}});n.pause(),this.animateTl=n,n.addLabel("focusMap",1.5),n.addLabel("focusMapOpacity",2),n.addLabel("bar",3),n.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)}}),n.to(this.focusMapGroup.position,{duration:1,x:0,y:0,z:0},"focusMap"),n.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"),n.to(this.focusMapTopMaterial,{duration:1,opacity:1,ease:"circ.out"},"focusMapOpacity"),n.to(this.focusMapSideMaterial,{duration:1,opacity:1,ease:"circ.out",onComplete:()=>{this.focusMapSideMaterial.transparent=!1}},"focusMapOpacity"),this.otherLabel.map((r,u)=>{let l=r.element.querySelector(".other-label");n.to(l,{duration:1,delay:.1*u,translateY:0,opacity:1,ease:"circ.out"},"focusMapOpacity")}),n.to(this.mapLineMaterial,{duration:.5,delay:.3,opacity:1},"focusMapOpacity"),n.to(this.rotateBorder1.scale,{delay:.3,duration:1,x:1,y:1,z:1,ease:"circ.out"},"focusMapOpacity"),n.to(this.rotateBorder2.scale,{duration:1,delay:.5,x:1,y:1,z:1,ease:"circ.out",onComplete:()=>{var r,u;this.showDataOverlays&&this.flyLineFocusGroup&&(this.flyLineFocusGroup.visible=!0),this.mapAnimationDone=!0,this.applySceneMode(),(u=(r=this.options).onPlayComplete)==null||u.call(r)}},"focusMapOpacity"),(this.allBar||[]).map((r,u)=>{if(r.userData.name==="邛溪镇")return!1;n.to(r.scale,{duration:1,delay:.1*u,x:1,y:1,z:1,ease:"circ.out"},"bar")}),(this.allBarMaterial||[]).map((r,u)=>{n.to(r,{duration:1,delay:.1*u,opacity:1,ease:"circ.out"},"bar")}),(this.allProvinceLabel||[]).map((r,u)=>{let l=r.element.querySelector(".provinces-label-wrap"),h=r.element.querySelector(".number .value"),v=Number(h.innerText),p={score:0};n.to(l,{duration:1,delay:.2*u,translateY:0,opacity:1,ease:"circ.out"},"bar"),n.to(p,{duration:1,delay:.2*u,score:v,onUpdate:m},"bar");function m(){h.innerText=p.score.toFixed(0)}}),(this.allGuangquan||[]).map((r,u)=>{n.to(r.children[0].scale,{duration:1,delay:.1*u,x:1,y:1,z:1,ease:"circ.out"},"bar"),n.to(r.children[1].scale,{duration:1,delay:.1*u,x:1,y:1,z:1,ease:"circ.out"},"bar")})}initEnvironment(){let n=new Ki(16777215,5);this.scene.add(n);let r=new qi(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(n){const r=new Yi(1924702,n.intensity,n.distance);r.position.set(n.x,n.y,n.z),this.scene.add(r)}createMap(){let n=new be,r=new be;this.focusMapGroup=r;let{china:u,chinaTopLine:l}=this.createChina(),{map:h,mapTop:v,mapLine:p}=this.createProvince();u==null||u.setParent(n),l==null||l.setParent(n),this.createDiffuse(),h.setParent(r),v.setParent(r),p.setParent(r),r.position.set(0,0,-.01),r.scale.set(1,1,0),n.add(r),n.rotation.x=-Math.PI/2,n.position.set(0,.2,0),this.scene.add(n),this.showDataOverlays?(this.createBar(),this.updateTownLabelVisibility()):(this.allBar=[],this.allBarMaterial=[],this.allGuangquan=[],this.allProvinceLabel=[])}createChina(){var p;let n={chinaBgMaterialColor:"#152c47",lineColor:"#3f82cd"},r=this.staticMapData.china;if(!((p=r==null?void 0:r.features)!=null&&p.length))return{china:null,chinaTopLine:null};let u=new Ro({color:new me(n.chinaBgMaterialColor),transparent:!0,opacity:this.showDataOverlays?1:.54}),l=new Go(this,{data:r,geoProjectionCenter:this.backgroundProjectionCenter,geoProjectionScale:this.backgroundProjectionScale,merge:!0,material:u,renderOrder:2}),h=new Fo({color:n.lineColor}),v=new ka(this,{data:r,geoProjectionCenter:this.backgroundProjectionCenter,geoProjectionScale:this.backgroundProjectionScale,material:h,renderOrder:3});return v.lineGroup.position.z+=.01,{china:l,chinaTopLine:v}}createProvince(){let n=this.staticMapData.mapJson,[r,u]=this.createProvinceMaterial();this.focusMapTopMaterial=r,this.focusMapSideMaterial=u;let l=new dr(this,{geoProjectionCenter:this.geoProjectionCenter,geoProjectionScale:this.geoProjectionScale,position:new ee(0,0,.11),data:n,depth:this.depth,topFaceMaterial:r,sideMaterial:u,renderOrder:9}),h=new Oo({color:16777215,transparent:!0,opacity:.5});this.createTerrainSurfaceShader(h),this.defaultMaterial=h,this.defaultLightMaterial=this.defaultMaterial.clone(),this.defaultLightMaterial.color=new me("rgba(115,208,255,1)"),this.defaultLightMaterial.opacity=.8;let v=new Go(this,{geoProjectionCenter:this.geoProjectionCenter,geoProjectionScale:this.geoProjectionScale,position:new ee(0,0,this.depth+.22),data:n,material:h,renderOrder:2});v.mapGroup.children.map(m=>{m.children.map(x=>{x.type==="Mesh"&&this.eventElement.push(x)})}),this.mapLineMaterial=new Fo({color:16777215,opacity:0,transparent:!0,fog:!1});let p=new ka(this,{geoProjectionCenter:this.geoProjectionCenter,geoProjectionScale:this.geoProjectionScale,data:n,material:this.mapLineMaterial,renderOrder:3});return p.lineGroup.position.z+=this.depth+.23,{map:l,mapTop:v,mapLine:p}}createProvinceMaterial(){let n=new Ro({color:16777215,transparent:!0,opacity:0,fog:!1,side:nt});n.onBeforeCompile=l=>{l.uniforms=z(G({},l.uniforms),{uColor1:{value:new me(2780818)},uColor2:{value:new me(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=we,r.wrapT=we,r.repeat.set(1,1.5),r.offset.y+=.065;let u=new Oo({color:16777215,map:r,fog:!1,opacity:0,side:nt});return this.time.on("tick",()=>{r.offset.y+=.005}),u.onBeforeCompile=l=>{l.uniforms=z(G({},l.uniforms),{uColor1:{value:new me(2780818)},uColor2:{value:new me(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 ); `)},[n,u]}createTerrainSurfaceShader(n){n.onBeforeCompile=r=>{r.uniforms=z(G({},r.uniforms),{uTerrainColor1:{value:new me(807272)},uTerrainColor2:{value:new me(1619414)},uTerrainColor3:{value:new me(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 n=this,r=La(Wo).filter((m,x)=>x<7);const u=new be;this.barGroup=u;const l=.7,h=4*l,v=r[0].value;this.allBar=[],this.allBarMaterial=[],this.allGuangquan=[],this.allProvinceLabel=[],r.map((m,x)=>{let A=h*(m.value/v),P=new se({color:16777215,transparent:!0,opacity:0,depthTest:!1,fog:!1});new fr(P,{uColor1:x>3?16506760:5291006,uColor2:x>3?16776948:7863285,size:A,dir:"y"});const F=new Qi(.1*l,.1*l,A);F.translate(0,0,A/2);const k=new te(F,P);k.renderOrder=5;let C=k,[S,H]=this.geoProjection(m.centroid);C.position.set(S,-H,this.depth+.45),C.scale.set(1,1,0),C.userData=G({},m);let N=this.createQuan(new ee(S,this.depth+.44,H),x),V=this.createHUIGUANG(A,x>3?16776948:7863285);C.add(...V),u.add(C),u.rotation.x=-Math.PI/2;let W=p(m,x,new ee(S,-H,this.depth+1.1+A));this.allBar.push(C),this.allBarMaterial.push(P),this.allGuangquan.push(N),this.allProvinceLabel.push(W)}),this.scene.add(u);function p(m,x,A){let P=n.label3d.create("","provinces-label",!1);return P.init(`
${m.name}
${m.value}km²
${x+1}
`,A),n.label3d.setLabelStyle(P,.01,"x"),P.setParent(n.labelGroup),P.userData=z(G({},m),{labelType:"ranking-label"}),P}}createEvent(){let n=[];this.selectedRegion=null;const r=(l,h=!1)=>{var v,p,m;!h&&((p=(v=this.selectedRegion)==null?void 0:v.userData)==null?void 0:p.name)===((m=l==null?void 0:l.userData)==null?void 0:m.name)||l.traverse(x=>{x.isMesh&&(x.material=this.defaultMaterial)})},u=l=>{l.traverse(h=>{h.isMesh&&(h.material=this.defaultLightMaterial)})};this.eventElement.map(l=>{this.interactionManager.add(l),l.addEventListener("mousedown",h=>{var p;const v=((p=h.target)==null?void 0:p.parent)||h.target;this.selectedRegion&&this.selectedRegion!==v&&r(this.selectedRegion,!0),this.selectedRegion=v,u(v),this.emitTownClick((v==null?void 0:v.userData)||{})}),l.addEventListener("mouseover",h=>{n.includes(h.target.parent)||n.push(h.target.parent),document.body.style.cursor="pointer",u(h.target.parent)}),l.addEventListener("mouseout",h=>{n=n.filter(v=>v.userData.name!==h.target.parent.userData.name),n.length>0&&n[n.length-1],r(h.target.parent),document.body.style.cursor="default"})})}createHUIGUANG(n,r){let u=new Ve(.35,n);u.translate(0,n/2,0);const l=this.assets.instance.getResource("huiguang");l.colorSpace=Ma,l.wrapS=we,l.wrapT=we;let h=new se({color:r,map:l,transparent:!0,opacity:.4,depthWrite:!1,side:nt,blending:xe}),v=new te(u,h);v.renderOrder=10,v.rotateX(Math.PI/2);let p=v.clone(),m=v.clone();return p.rotateY(Math.PI/180*60),m.rotateY(Math.PI/180*120),[v,p,m]}createQuan(n,r){const u=this.assets.instance.getResource("guangquan1"),l=this.assets.instance.getResource("guangquan2");let h=new Ve(.5,.5),v=new se({color:16777215,map:u,alphaMap:u,opacity:1,transparent:!0,depthTest:!1,fog:!1,blending:xe}),p=new se({color:16777215,map:l,alphaMap:l,opacity:1,transparent:!0,depthTest:!1,fog:!1,blending:xe}),m=new te(h,v),x=new te(h,p);return m.renderOrder=6,x.renderOrder=6,m.rotateX(-Math.PI/2),x.rotateX(-Math.PI/2),m.position.copy(n),x.position.copy(n),x.position.y-=.001,m.scale.set(0,0,0),x.scale.set(0,0,0),this.quanGroup=new be,this.quanGroup.add(m,x),this.scene.add(this.quanGroup),this.time.on("tick",()=>{m.rotation.z+=.05}),this.quanGroup}createDiffuse(){let n=new Ve(200,200),r=new se({color:0,depthWrite:!1,transparent:!0,blending:Ji});r.blendEquation=Zi,r.blendSrc=Xi,r.blendDst=er,new hr({material:r,time:this.time,size:60,diffuseSpeed:8,diffuseColor:7442830,diffuseWidth:2,callback:l=>{const h=setTimeout(()=>{this.addSceneTween(it.to(l.uniforms.uTime,{value:4,repeat:-1,duration:6,ease:"power1.easeIn"}))},3);this.addSceneTimer(h)}});let u=new te(n,r);u.renderOrder=3,u.rotation.x=-Math.PI/2,u.position.set(0,.21,0),this.scene.add(u)}createGrid(){new mr(this,{gridSize:68,gridDivision:28,gridColor:2123149,shapeSize:.58,shapeColor:4035005,pointSize:.12,pointColor:1805508,pointLayout:{row:170,col:170},pointBlending:xe})}createBottomBg(){let n=new Ve(42,42);const r=this.assets.instance.getResource("ocean");r.colorSpace=Ma,r.wrapS=we,r.wrapT=we,r.repeat.set(1,1);let u=new se({map:r,opacity:1,fog:!1}),l=new te(n,u);l.rotation.x=-Math.PI/2,l.position.set(0,-.7,0),this.scene.add(l)}createChinaBlurLine(){let n=new Ve(147,147);const r=this.assets.instance.getResource("chinaBlurLine");r.colorSpace=Ma,r.wrapS=we,r.wrapT=we,r.generateMipmaps=!1,r.minFilter=tr,r.repeat.set(1,1);let u=new se({color:4162253,alphaMap:r,transparent:!0,opacity:.5}),l=new te(n,u);l.rotateX(-Math.PI/2),l.position.set(-19.3,-.5,-19.7),this.scene.add(l)}createLabel(){let n=this,r=this.labelGroup,u=this.label3d,l=[];if(Yr.map(p=>{if(p.hide==!0)return!1;let m=h(p,u,r);l.push(m)}),this.showDataOverlays){let p=v({icon:Ca,center:[103.13,33.01],width:"40px",height:"40px",reflect:!0},u,r),m=v({icon:Ca,center:[102.03,32.44],width:"20px",height:"20px",reflect:!1},u,r);l.push(p),l.push(m)}this.otherLabel=l;function h(p,m,x){let A=m.create("",`china-label ${p.blur?" blur":""}`,!1);const[P,F]=n.geoProjection(p.center),k=n.showDataOverlays?``:"";return A.init(`
${k}${p.name}
`,new ee(P,-F,n.depth+.85)),m.setLabelStyle(A,.018,"x"),A.setParent(x),A.userData=z(G({},p),{labelType:"town-label",baseScale:.018}),A}function v(p,m,x){let A=m.create("",`decoration-label ${p.reflect?" reflect":""}`,!1);const[P,F]=n.geoProjection(p.center);return A.init(`
`,new ee(P,-F,.4)),m.setLabelStyle(A,.02,"x"),A.setParent(x),A}}createRotateBorder(){let n=12,r=this.assets.instance.getResource("rotationBorder1"),u=this.assets.instance.getResource("rotationBorder2"),l=new $o(this,{width:n*1.178,needRotate:!0,rotateSpeed:.001,material:new se({map:r,color:4763647,transparent:!0,opacity:.2,side:nt,depthWrite:!1,blending:xe}),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 h=new $o(this,{width:n*1.116,needRotate:!0,rotateSpeed:-.004,material:new se({map:u,color:4763647,transparent:!0,opacity:.4,side:nt,depthWrite:!1,blending:xe}),position:new ee(0,.3,0)});h.instance.rotation.x=-Math.PI/2,h.instance.renderOrder=6,h.instance.scale.set(0,0,0),h.setParent(this.scene),this.rotateBorder1=l.instance,this.rotateBorder2=h.instance}createFlyLine(){this.flyLineGroup=new be,this.flyLineGroup.visible=!1,this.scene.add(this.flyLineGroup);const n=this.assets.instance.getResource("mapFlyline");n.wrapS=n.wrapT=we,n.repeat.set(.5,2);const r=.1,u=32,l=2,h=!1;let[v,p]=this.geoProjection(this.flyLineCenter),m=new ee(v,-p,0);const x=new se({map:n,color:2781042,transparent:!0,fog:!1,opacity:1,depthTest:!1,blending:xe});this.flyLineMaterial=x,this.flyLineTexture=n,this.time.on("tick",()=>{n.offset.x-=this.sceneMode==="trade"?.014:.006}),Wo.filter((A,P)=>P<7).map(A=>{let[P,F]=this.geoProjection(A.centroid),k=new ee(P,-F,0);const C=new ee;C.addVectors(m,k).multiplyScalar(.5),C.setZ(3);const S=new ar(m,C,k),H=new or(S,u,r,l,h),N=new te(H,x);N.rotation.x=-Math.PI/2,N.position.set(0,this.depth+.44,0),N.renderOrder=21,this.flyLineGroup.add(N)})}createFocus(){let n=new qr(this,{color1:12451325,color2:12451325}),[r,u]=this.geoProjection(this.flyLineCenter);n.position.set(r,-u,this.depth+.44),n.scale.set(1,1,1),this.flyLineFocusGroup.add(n)}createParticles(){this.particles=new Do(this,{num:10,range:30,dir:"up",speed:.05,material:new nr({map:Do.createTexture(),size:1,color:61166,transparent:!0,opacity:1,depthTest:!1,depthWrite:!1,vertexColors:!0,blending:xe,sizeAttenuation:!0})}),this.particleGroup=new be,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 be,this.scatterGroup.visible=!1,this.scatterGroup.rotation.x=-Math.PI/2,this.scene.add(this.scatterGroup);const n=this.assets.instance.getResource("arrow"),r=new No({map:n,color:16776948,fog:!1,transparent:!0,depthTest:!1});let u=La(Qr),l=u[0].value;u.map(h=>{const v=new Bo(r);v.renderOrder=23;let p=.1+h.value/l*.2;v.scale.set(p,p,p);let[m,x]=this.geoProjection([h.lng,h.lat]);v.position.set(m,-x,this.depth+.45),v.userData.position=[m,-x,this.depth+.45],this.scatterGroup.add(v)})}createInfoPoint(){let n=this;this.InfoPointGroup=new be,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 u=this.assets.instance.getResource("point");let l=[16776948,7863285],h=La(Jr),v=h[0].value;h.map((m,x)=>{const A=new No({map:u,color:l[x%l.length],fog:!1,transparent:!0,depthTest:!1}),P=new Bo(A);P.renderOrder=23;let F=.7+m.value/v*.4;P.scale.set(F,F,F);let[k,C]=this.geoProjection([m.lng,m.lat]),S=[k,-C,this.depth+.7];P.position.set(...S),P.userData.position=[...S],P.userData={position:[k,-C,this.depth+.7],name:m.name,value:m.value,level:m.level,index:x},this.InfoPointGroup.add(P);let H=p(m,r,this.InfoPointGroup);this.infoLabelElement.push(H),this.interactionManager.add(P),P.addEventListener("mousedown",N=>{if(this.clicked||!this.InfoPointGroup.visible)return!1;this.clicked=!0,this.emitTownClick(N.target.userData,"info-point"),this.infoPointIndex=N.target.userData.index,this.infoLabelElement.map(V=>{V.visible=!1}),H.visible=!0,this.createInfoPointLabelLoop()}),P.addEventListener("mouseup",N=>{this.clicked=!1}),P.addEventListener("mouseover",N=>{document.body.style.cursor="pointer"}),P.addEventListener("mouseout",N=>{document.body.style.cursor="default"})});function p(m,x,A){let P=x.create("","info-point",!0);const[F,k]=n.geoProjection([m.lng,m.lat]);return P.init(`
名称${m.name}
面积${m.value}km²
类型${m.level}
`,new ee(F,-k,n.depth+1.9)),x.setLabelStyle(P,.015,"x"),P.setParent(A),P.visible=!1,P}}emitTownClick(n={},r="region"){var l,h;const u=n.name||n.fullName;u&&((h=(l=this.options)==null?void 0:l.onTownClick)==null||h.call(l,z(G({},n),{name:u,source:r})))}setSceneMode(n="default"){this.sceneMode=n,this.applySceneMode()}setDataOverlaysVisible(n=!0){this.showDataOverlays=!!n,this.applySceneMode()}updateTownLabelVisibility(){const n=new Set((this.allProvinceLabel||[]).map(u=>{var l;return(l=u==null?void 0:u.userData)==null?void 0:l.name}).filter(Boolean)),r=this.showDataOverlays&&this.sceneMode!=="trade";(this.otherLabel||[]).forEach(u=>{var l;((l=u==null?void 0:u.userData)==null?void 0:l.labelType)==="town-label"&&(u.visible=!(r&&n.has(u.userData.name)))})}applySceneMode(){var r,u,l,h;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(v=>{v.visible=!1}),(u=this.allGuangquan)==null||u.forEach(v=>{v.visible=!1}),this.updateTownLabelVisibility();return}const n=this.sceneMode==="trade";this.flyLineGroup&&(this.flyLineGroup.visible=n||this.mapAnimationDone),this.flyLineFocusGroup&&(this.flyLineFocusGroup.visible=n||this.mapAnimationDone),this.flyLineMaterial&&(this.flyLineMaterial.color.set(n?7534280:2781042),this.flyLineMaterial.opacity=n?1:.82),this.flyLineTexture&&this.flyLineTexture.repeat.set(n?.32:.5,n?3:2),this.scatterGroup&&(this.scatterGroup.visible=!n&&this.mapAnimationDone),this.InfoPointGroup&&(this.InfoPointGroup.visible=!n&&this.mapAnimationDone),this.barGroup&&(this.barGroup.visible=!n),(l=this.allProvinceLabel)==null||l.forEach(v=>{v.visible=!n}),(h=this.allGuangquan)==null||h.forEach(v=>{v.visible=!n}),this.updateTownLabelVisibility()}createInfoPointLabelLoop(){var n;this.scenePaused||!((n=this.infoLabelElement)!=null&&n.length)||(clearInterval(this.infoPointLabelTime),this.infoPointLabelTime=setInterval(()=>{this.infoPointIndex++,this.infoPointIndex>=this.infoLabelElement.length&&(this.infoPointIndex=0),this.infoLabelElement.map((r,u)=>{this.infoPointIndex===u?r.visible=!0:r.visible=!1})},3e3))}createStorke(){const n=this.staticMapData.mapStroke,r=this.assets.instance.getResource("pathLine3");r.wrapS=r.wrapT=we,r.repeat.set(2,1);let u=new ka(this,{geoProjectionCenter:this.geoProjectionCenter,geoProjectionScale:this.geoProjectionScale,position:new ee(0,0,this.depth+.24),data:n,material:new se({color:2868444,map:r,alphaMap:r,fog:!1,transparent:!0,opacity:1,blending:xe}),type:"Line3",renderOrder:22,tubeRadius:.03});this.focusMapGroup.add(u.lineGroup),this.time.on("tick",()=>{r.offset.x+=.005})}geoProjection(n){return this.geoProjectionFn(n)}updateTownLabelScale(){var p,m,x;const n=this.otherLabel||[],r=(p=this.camera)==null?void 0:p.instance,u=(x=(m=this.camera)==null?void 0:m.controls)==null?void 0:x.target;if(!n.length||!r||!u)return;const l=r.position.distanceTo(u),h=es(l*72e-5,.011,.026),v=l>45?"0.76":l<22?"0.94":"1";n.forEach(A=>{var F,k,C;if(((F=A==null?void 0:A.userData)==null?void 0:F.labelType)!=="town-label")return;A.scale.set(h,h,h);const P=(C=(k=A.element)==null?void 0:k.querySelector)==null?void 0:C.call(k,".other-label");P&&(P.style.opacity=v)})}update(){super.update(),this.updateTownLabelScale(),this.interactionManager&&this.interactionManager.update()}pauseScene(){var n,r;this.scenePaused=!0,(r=(n=this.time)==null?void 0:n.pause)==null||r.call(n),this.sceneTweens.forEach(u=>{var l;return(l=u==null?void 0:u.pause)==null?void 0:l.call(u)}),clearInterval(this.infoPointLabelTime),this.infoPointLabelTime=null}resumeScene(){var n,r,u;this.scenePaused=!1,(r=(n=this.time)==null?void 0:n.resume)==null||r.call(n),this.sceneTweens.forEach(l=>{var h;return(h=l==null?void 0:l.resume)==null?void 0:h.call(l)}),(u=this.InfoPointGroup)!=null&&u.visible&&!this.infoPointLabelTime&&this.createInfoPointLabelLoop()}destroy(){this.pauseScene(),this.sceneTimers.forEach(n=>clearTimeout(n)),this.sceneTimers=[],this.sceneTweens.forEach(n=>{var r;return(r=n==null?void 0:n.kill)==null?void 0:r.call(n)}),this.sceneTweens=[],super.destroy(),this.label3d&&this.label3d.destroy()}}const as={class:"map"},os={__name:"map",props:{sceneMode:{type:String,default:"default"},showDataOverlays:{type:Boolean,default:!0},maxPixelRatio:{type:Number,default:0}},emits:["town-click","play-complete"],setup(L,{expose:n,emit:r}){const u=R(null),l=Ri(null),h=L,v=r;let p=!1;qo(()=>{F()});function m(k){var C,S,H,N;l.value||!u.value||(l.value=new ts(u.value,k,{showDataOverlays:h.showDataOverlays,maxPixelRatio:h.maxPixelRatio||void 0,onTownClick:V=>v("town-click",V),onPlayComplete:()=>v("play-complete")}),(S=(C=l.value).setSceneMode)==null||S.call(C,h.sceneMode),(N=(H=l.value).setDataOverlaysVisible)==null||N.call(H,h.showDataOverlays),l.value.time.pause())}function x(){return X(this,null,function*(){var k,C,S,H;l.value&&(A(),!(p||l.value.mapAnimationDone)&&(p=!0,(C=(k=l.value.animateTl)==null?void 0:k.timeScale)==null||C.call(k,1),(H=(S=l.value.animateTl)==null?void 0:S.play)==null||H.call(S)))})}function A(){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,S,H,N,V;l.value&&((C=(k=l.value.animateTl)==null?void 0:k.pause)==null||C.call(k),(H=(S=l.value).pauseScene)==null||H.call(S),l.value.pauseScene||(V=(N=l.value.time)==null?void 0:N.pause)==null||V.call(N))}function F(){var k,C;(C=(k=l.value)==null?void 0:k.destroy)==null||C.call(k),l.value=null}return n({loadMap:m,play:x,resume:A,pause:P,destroyMap:F,canvasMap:l}),kt(()=>h.sceneMode,k=>{var C,S;(S=(C=l.value)==null?void 0:C.setSceneMode)==null||S.call(C,k)},{immediate:!0}),kt(()=>h.showDataOverlays,k=>{var C,S;(S=(C=l.value)==null?void 0:C.setDataOverlaysVisible)==null||S.call(C,k)}),(k,C)=>(_(),E("div",as,[M("canvas",{ref_key:"canvasRef",ref:u},null,512)]))}},ns=""+new URL("flyline6-525edf67-balabala-1786541781548.png",import.meta.url).href;class is{constructor(n={}){this.options=n||{},this.init()}init(){this.instance=new br,this.instance.addLoader(ir,"FileLoader");const n={type:"File",name:"china",path:Sa($i)},r=[{type:"File",name:"mapJson",path:Sa(Di)},{type:"File",name:"mapStroke",path:Sa(zi)},{type:"Texture",name:"rotationBorder1",path:wr},{type:"Texture",name:"rotationBorder2",path:xr},{type:"Texture",name:"chinaBlurLine",path:Sr},{type:"Texture",name:"ocean",path:Mr},{type:"Texture",name:"side",path:kr},{type:"Texture",name:"pathLine3",path:Cr}],u=[{type:"Texture",name:"flyline",path:zo},{type:"Texture",name:"pathLine",path:zo},{type:"Texture",name:"pathLine2",path:Pr},{type:"Texture",name:"huiguang",path:Lr},{type:"Texture",name:"guangquan1",path:Vo},{type:"Texture",name:"guangquan2",path:Tr},{type:"Texture",name:"flyLineFocus",path:Vo},{type:"Texture",name:"mapFlyline",path:ns},{type:"Texture",name:"arrow",path:Ar},{type:"Texture",name:"point",path:Ir},{type:"Texture",name:"focusArrows",path:_r},{type:"Texture",name:"focusBar",path:Er},{type:"Texture",name:"focusBg",path:Rr},{type:"Texture",name:"focusMidQuan",path:Fr},{type:"Texture",name:"focusMoveBg",path:Or}],l=this.options.showDataOverlays===!1?r:[n,...r,...u];this.instance.loadAll(l)}}const rs={class:"home-dashboard"},ss={class:"home-bottom-switcher"},ls={class:"home-left"},us={class:"home-side-stack is-left"},cs={class:"home-right"},ds={class:"home-side-stack is-right"},fs=["aria-label","onClick"],hs={key:0,class:"home-video-monitor"},ms=["disabled"],ps=["data-video-index","onClick","onKeydown"],gs={key:0,class:"home-video-loading"},ys={key:1,class:"home-video-error"},vs=["onClick"],bs={class:"home-video-point-name"},ws=["disabled"],xs={key:1,class:"home-forecast-trend-card"},Ss={class:"home-forecast-density-switcher","aria-label":"预测粒度切换"},Ms=["onClick"],ks={key:3,class:"home-balance-gauge-grid"},Cs={key:0,class:"home-balance-empty","aria-live":"polite"},Ps={class:"home-balance-gauge-head"},Ls={class:"home-balance-gauge-ring"},Ts={class:"home-balance-gauge-value"},As={class:"home-balance-gauge-name"},Is={class:"home-balance-gauge-extra"},_s=["data-monitoring-updated-at"],Es={class:"home-more-dialog-head"},Rs={key:0,class:"home-video-modal-grid"},Fs=["data-video-index","onClick","onKeydown"],Os={key:0,class:"home-video-loading"},Ns={key:1,class:"home-video-error"},Bs=["onClick"],Hs={class:"home-video-point-name"},Gs={key:1,class:"home-more-empty"},$s={key:2,class:"home-more-pager"},Ds=["disabled"],zs=["disabled"],Vs={key:0,class:"home-video-web-overlay",role:"dialog","aria-modal":"true","aria-label":"基地监控网页全屏"},js={class:"home-more-dialog home-balance-dialog"},Ws={class:"home-more-dialog-head"},Us={class:"home-balance-modal-grid"},Ks={class:"home-balance-modal-title"},qs={class:"home-balance-modal-value"},Ys="image://data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAQ5JREFUOE+1la1OQ0EQRs8kCFIQdVCCxIBpCK1AInkDHC+B4QkwvASub4GsaE0NGCRpKhGFVDQZ+Mjem9vNbkphmWTMfjNnd3b2x0iYuxuwH7wNbIewBfAGzORm5nG6ElfM3QU6AXZSkzXG3oEnMxO8thWgux8DR2tAsfxiZs/VYA38Jazi1NBvYCizv+HK4vCRyrfQgIsf7Nm6+bSnjwIeAGeZaGnXQDfoE+ABmGbixwKeAoeJAMHuv3w30ubATQb6KqDKjZPEuAXOMysZAncJbS7gJbCVEAdAKwP8AK4S2vJfgMVLLt6UDtAreWx0W8od7OJXryq16OPwR2j6+WpAyz2wDagape7vARt9AZ+G3HmhiKS3xwAAAABJRU5ErkJggg==",Qs=4,Uo=6e4,Js=15e3,Ko=1e4,Aa="#ffffff",De="#ffffff",Ce="rgba(246, 253, 255, 0.92)",at="rgba(242, 253, 255, 0.9)",Mt="rgba(218, 250, 255, 0.28)",Zs=12e3,Xs=9,ze="home-3d",ot=9,xl={__name:"index",props:{active:{type:Boolean,default:!0}},emits:["module-stats","loading-progress","map-ready"],setup(L,{expose:n,emit:r}){const u={图斑编号:"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"},l=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())),h=L,v=r,p=R(null),m=R(null),x=R(null),A=R(null),P=new Map,F=R({grasslandTownRows:[],wetlandTownRows:[],grassTypeRows:[],productivityRows:[],meta:{}}),k=R({currentStock:void 0,stockSourceYear:void 0,townRows:[],structureRows:[],forecastPeriods:[],forecastConfig:{},tradeImpactRows:[],meta:{}}),C=new Map;let S=!1,H=!1,N=null,V=null;const W=new Map,Se=new Map,Wt=new Set,Ut=new Map;let Ee=null,rt="",Ia=!1,st=null,Ct=!1,lt=0,je=0,ut=null,le=null,ct=!1,Kt=!1,dt=0;const Re=new Map,ue=R(0),ae=R([]),_a=R(""),qt=R([]),ce=R(0),Q=R(!1),oe=R(1),ft=R(!1),de=R(null),Yt=R(!1),Pt=R([]),Qt=R(!1),Lt=R(""),Jt=R("month"),Zt=R(!1),Ea=R(!1),U=R(""),Qo=`home-video-player-${Math.random().toString(36).slice(2)}`,pe=Bi({}),Jo=["#30dcff","#27f0c0","#8bf7ff","#48cfff","#48cfff","#24f6c4"],Ra=Ho.sideCardWidth,Fa=R(typeof window=="undefined"?1080:window.innerHeight);Ho.sideCardGap;const We=T(()=>rr(Fa.value)),Tt=T(()=>We.value),Zo=Tt,Xo=T(()=>k.value.townRows||[]),Xt=T(()=>k.value.structureRows||[]),Pe=T(()=>k.value.forecastPeriods||[]),en=T(()=>k.value.forecastConfig||{}),ht=T(()=>Number(k.value.currentStock)||0),tn=T(()=>ei("2028")),ea=[{key:"day",label:"日",unit:"日"},{key:"week",label:"周",unit:"周"},{key:"month",label:"月",unit:"月"}],At=[{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}],an={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}},Oa={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=R(ze),on=T(()=>!["grassland","wetland","woodland"].includes(K.value)),ne=R(null),Le=R(!1),Fe=R(""),Ue=R(!1),ie=R(null),re=T(()=>K.value!==ze),nn=T(()=>h.active&&!re.value),Na=T(()=>{var d,f,w;const e=K.value,t=Oa[e];if(!t)return null;const a=gr.find(g=>g.key===t.topicKey),o=si(t);if(!(o!=null&&o.layerName)&&!(o!=null&&o.dataPath)&&!(o!=null&&o.apiUrl))return null;const i=an[e],s=t.legendKey?(o.legends||[]).find(g=>g.key===t.legendKey):null,c=Array.isArray(t.legendKeys)?t.legendKeys.map(g=>(o.legends||[]).find(b=>b.key===g)).filter(Boolean):[];if(t.type==="vector"){const g=z(G({},o),{activeLegend:s||o.activeLegend,activeLegends:c.length?c:o.activeLegends,name:`${((d=At.find(b=>b.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});return e!=="pasture"?g:z(G({},g),{key:"home-family-pasture-db",sourceType:"geojson-api",apiUrl:"/openApi/screen2/industryChain/familyPastureMap",dataPath:"",fallbackPath:"",floatPointMarkers:!0,pointHitSize:44,legends:s?[s]:[],activeLegends:s?[s]:[]})}return i?z(G({},o),{name:`${(a==null?void 0:a.name)||o.name}分布`,styles:"",opacity:i.opacity,homePresentationMaxOpacity:i.maxOpacity,softMask:!1,homeGlowColor:i.glowColor,homeGlowBlur:i.glowBlur,homeGlowOpacity:i.glowOpacity,sldBody:li(o.layerName,i)}):null}),ta=T(()=>!!ie.value),rn=Wr,Ba=T(()=>jr({point:ie.value?ci(ie.value):null,rowCount:ne.value?Ha.value.length||va(ne.value):0,loading:Ue.value,empty:!Fe.value&&(Le.value||!ne.value)})),sn=T(()=>Ba.value.height),ln=T(()=>Ba.value.style),un=T(()=>{var t;return{grassland:"草地详情",wetland:"湿地详情",woodland:"林地详情",yak:"牦牛识别详情",pasture:"家庭牧场详情"}[K.value]||`${((t=At.find(a=>a.key===K.value))==null?void 0:t.name)||"地图"}详情`}),Ha=T(()=>{var t;if(K.value!=="pasture")return[];const e=((t=ne.value)==null?void 0:t.properties)||{};return fi(e)?hi(e):[]}),Ga=T(()=>$t(Xt.value.length)),Ke=T(()=>$t(Pe.value.length)),$a=T(()=>Xn(Jt.value)),Da=T(()=>ai(tn.value,$a.value.key)),mt=T(()=>$t(Da.value.labels.length)),It=T(()=>Pt.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:`理论 ${j(t.bearingCapacity)}|实际 ${j(t.livestockCapacity)}|超载 ${j(Number(t.livestockCapacity||0)-Number(t.bearingCapacity||0))}头`}))),cn=T(()=>Qt.value?"正在读取最新草畜平衡数据":Lt.value||"暂无草畜平衡数据"),_t=T(()=>{const e=It.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,i)=>e[(a+i)%e.length])}),dn=T(()=>{const e=_t.value.length;return e?ue.value%e:0}),Et={key:"home-empty-video",title:"暂无在线可播放摄像头",town:"红原县",scene:"基地监控",device:"",channel:"",cameraCount:0,status:"待接入",onlineRate:0,updateTime:"",operator:"等待在线摄像头",progress:0,image:_o,playUrl:"",hdPlayUrl:"",token:""};function ge(e){return(e==null?void 0:e.status)==="直播中"&&!!(e!=null&&e.hdPlayUrl&&(e!=null&&e.token))}const qe=T(()=>ae.value.map((e,t)=>({key:`home-video-carousel-${e.key||e.title||t}`,index:t,live:e})).filter(e=>ge(e.live))),aa=T(()=>{const e=qe.value;if(!e.length)return 0;const t=J(ce.value),a=e.findIndex(i=>i.index===t),o=a>=0?a:0;return ft.value||Zt.value||Q.value?o:(Math.floor(ue.value/Qs)+o)%e.length}),$=T(()=>{var e,t;return ae.value.length?Q.value?J(ce.value):(t=(e=qe.value[aa.value])==null?void 0:e.index)!=null?t:0:0}),fn=T(()=>ae.value[$.value]||Et),za=T(()=>Pn(qe.value,aa.value,Et)),hn=T(()=>ae.value.filter(e=>ge(e)).length),pt=T(()=>ae.value.map((e,t)=>({index:t,live:e})).sort((e,t)=>Number(ge(t.live))-Number(ge(e.live))||e.index-t.index)),gt=T(()=>Math.max(1,Math.ceil(pt.value.length/ot))),Va=T(()=>{const e=(oe.value-1)*ot;return pt.value.slice(e,e+ot).map(t=>({key:`home-video-modal-${t.live.key||t.live.title}-${t.index}`,index:t.index,live:t.live}))}),mn=T(()=>{const e=F.value.productivityRows||[];return e.length?{key:"home-pasture-productivity",title:"草地生产力",rows:e,option:Zn(e,"生产力"),height:We.value}:null}),pn=T(()=>({key:"yak-stock-distribution",title:"牦牛存栏分布",height:Tt.value,option:Jn(Xo.value,"牦牛存栏")})),gn=T(()=>[ma("grassland-town","草地面积","column",F.value.grasslandTownRows,{span:1,variant:"plain"}),ma("wetland-town-area","湿地面积","column",F.value.wetlandTownRows,{span:1,variant:"plain"}),ma("grassland-type-proportion","草原类别","donut",F.value.grassTypeRows,{span:1}),mn.value].filter(Boolean).map((e,t)=>qn(e,`forest-grass-wet-${t}`))),yn=T(()=>[{key:"home-video-monitor",title:"基地监控",type:"video",height:Zo.value,live:fn.value},pn.value,{key:"yak-structure",title:"畜群结构",height:Tt.value,option:vn.value},{key:"home-town-balance-gauge",title:"草畜平衡",type:"gauge",height:Tt.value,max:100,rows:_t.value}]),vn=T(()=>$e({animation:!0,animationDuration:900,animationDurationUpdate:700,animationEasing:"cubicOut",color:Jo,tooltip:Pa(e=>`${e.name}
占比:${e.percent}%
估算数量:${j(e.value)}头`),legend:{orient:"vertical",right:0,top:"middle",itemWidth:8,itemHeight:8,itemGap:5,formatter(e){const t=Xt.value.find(a=>a.name===e);return t?`${e} ${ve(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:De,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:Xt.value.map((e,t)=>({name:e.name,value:e.count,selected:t===Ga.value}))}]}));T(()=>$e({animation:!0,animationDuration:1100,animationDurationUpdate:900,animationEasing:"cubicOut",color:["#30dcff"],tooltip:z(G({},Pa()),{trigger:"axis",axisPointer:{type:"shadow"},formatter(e){const t=Pe.value[e[0].dataIndex];return`${t.label}
预测存栏:${j(t.stock)}头`}}),grid:{left:50,right:18,top:16,bottom:24},xAxis:{type:"category",data:Pe.value.map(e=>e.shortLabel),axisLabel:{color:at,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:at,fontSize:10,margin:4,formatter:e=>yo(e,1)},splitLine:{lineStyle:{color:Mt,type:"dashed"}}},series:[{name:"预测存栏",type:"bar",barWidth:24,data:Pe.value.map((e,t)=>({value:e.stock,itemStyle:{borderRadius:[9,9,1,1],color:new Ae(0,0,0,1,[{offset:0,color:t===Ke.value?"#8bf7ff":"#30dcff"},{offset:.72,color:t===Ke.value?"rgba(139, 247, 255, 0.7)":"rgba(48, 220, 255, 0.62)"},{offset:1,color:t===Ke.value?"rgba(139, 247, 255, 0.1)":"rgba(48, 220, 255, 0.08)"}]),shadowBlur:t===Ke.value?16:8,shadowColor:t===Ke.value?"rgba(139, 247, 255, 0.56)":"rgba(48, 220, 255, 0.28)"}})),itemStyle:{borderRadius:[9,9,1,1],color:new Ae(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:De,fontSize:10,formatter:({value:e})=>yo(e)}}]})),T(()=>{const e=$a.value,t=Da.value,a=ii(t),o=oi(a.length,e.key);return $e({animation:!0,animationDuration:1200,animationDurationUpdate:900,animationEasing:"cubicOut",color:["#30dcff","#8bf7ff","#48cfff"],tooltip:z(G({},Pa()),{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(i){var w,g,b;const s=Array.isArray(i)?i:[i],c=s.find(y=>y.seriesType==="candlestick"),d=(c==null?void 0:c.data)||a[(b=(g=c==null?void 0:c.dataIndex)!=null?g:(w=s[0])==null?void 0:w.dataIndex)!=null?b:0];if(!d)return"";const f=d.close-d.open;return[`${d.label}|${e.unit}度预测`,`预测存栏:${j(d.close)}头`,`较上期:${ri(f)}头`,`繁殖补充:${j(d.birth)}头`,`出栏扣减:${j(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:at,fontSize:10,interval:o},axisLine:{lineStyle:{color:"rgba(48, 220, 255, 0.28)"}},axisTick:{show:!1}},yAxis:[{type:"value",scale:!0,axisLabel:{color:at,fontSize:10,formatter:ve},splitLine:{lineStyle:{color:Mt,type:"dashed"}}},{type:"value",axisLabel:{color:Ce,fontSize:10,formatter:ve},splitLine:{show:!1}}],series:[{name:"预测存栏",type:"candlestick",yAxisIndex:0,barWidth:ni(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((i,s)=>({value:i.close,symbolSize:s===mt.value?7:3,itemStyle:{color:s===mt.value?"#ffffff":"#30dcff"}})),lineStyle:{width:1.6,color:"rgba(48, 220, 255, 0.86)"},itemStyle:{color:"#30dcff"},tooltip:{show:!1}},mo("繁殖补充",t.births,"#8bf7ff",1,!1,mt.value),mo("出栏扣减",t.outflow,"#48cfff",1,!1,mt.value)]})}),Fi(()=>{ga(),window.addEventListener("resize",ga),window.addEventListener("keydown",bo),document.addEventListener("pointerdown",ko,!0),document.addEventListener("click",so,!0),Tn(),no(),oa()}),qo(()=>{var e,t,a,o;S=!0,dt+=1,window.removeEventListener("resize",ga),window.removeEventListener("keydown",bo),document.removeEventListener("pointerdown",ko,!0),document.removeEventListener("click",so,!0),Dt(),co(),ye(),Za(),ia(),sa(),C.clear(),(t=(e=p.value)==null?void 0:e.destroyMap)==null||t.call(e),(o=(a=m.value)==null?void 0:a.destroyMap)==null||o.call(a),Sn()}),kt($,()=>{if(!Q.value){if(!Zt.value&&!Ea.value&&!W.size){U.value="";return}ye({resetError:!0})}}),kt(K,e=>{var t,a;if(he(),e===ze){(a=(t=p.value)==null?void 0:t.pause)==null||a.call(t),q(()=>{Rt(),Oe()});return}Ua(),q(()=>{var o,i;(i=(o=p.value)==null?void 0:o.resume)==null||i.call(o)})}),kt(()=>h.active,e=>{var t,a;e?(oa(),Mn(),Qa(),no(),Ia?Ft(0):qa()):(H=!1,(a=(t=p.value)==null?void 0:t.pause)==null||a.call(t),Ua(),ia(),sa(),ye({resetError:!0}),Nt(),Bt())});function oa(){H=!1,v("loading-progress",{progress:0}),q(()=>{var e,t,a,o;if(re.value){(t=(e=p.value)==null?void 0:e.hasMap)!=null&&t.call(e)?Ye():(o=(a=p.value)==null?void 0:a.loadMap)==null||o.call(a);return}Rt()})}function Rt(){if(!(S||!h.active||re.value)){if(Ka()){Oe(),Ye();return}if(Kt){Wa();return}ct||(ct=!0,le=new is({showDataOverlays:!1}),le.instance.on("onProgress",bn),le.instance.on("onLoad",ja),le.instance.on("onError",wn),le.instance.loaded&&ja())}}function bn(e,t,a){if(S||re.value)return;const o=Math.max(1,Number(a)||1),i=Math.max(0,Number(t)||0);v("loading-progress",{progress:Math.min(98,Math.floor(i/o*92))})}function ja(){S||(ct=!1,Kt=!0,v("loading-progress",{progress:96}),q(Wa))}function wn(e){ct=!1,console.warn("[home] 3D map assets load failed",e),Ye()}function Wa(){var e,t,a,o;S||!h.active||re.value||!le||((t=(e=m.value)==null?void 0:e.loadMap)==null||t.call(e,le),Oe(),(o=(a=m.value)==null?void 0:a.play)==null||o.call(a),Ye())}function Oe(){var a,o,i,s,c,d,f,w;const e=m.value;(a=e==null?void 0:e.resume)==null||a.call(e);const t=Ka();(i=(o=t==null?void 0:t.sizes)==null?void 0:o.init)==null||i.call(o),(s=t==null?void 0:t.resize)==null||s.call(t),(d=(c=t==null?void 0:t.label3d)==null?void 0:c.resize)==null||d.call(c),(w=(f=t==null?void 0:t.label3d)==null?void 0:f.update)==null||w.call(f)}function Ua(){var e,t;(t=(e=m.value)==null?void 0:e.pause)==null||t.call(e)}function Ka(){var t;const e=(t=m.value)==null?void 0:t.canvasMap;return(e==null?void 0:e.value)||e||null}function xn(){re.value||Ye()}function Sn(){var e,t;(t=(e=le==null?void 0:le.instance)==null?void 0:e.destroy)==null||t.call(e),le=null,ct=!1,Kt=!1}function Ye(){S||H||(H=!0,v("loading-progress",{progress:100}),v("map-ready"),qa())}function na(e={}){var t,a,o,i,s,c,d,f,w;if(!re.value){Oe();return}if((a=(t=p.value)==null?void 0:t.resume)==null||a.call(t),e.reset){(i=(o=p.value)==null?void 0:o.resetView)==null||i.call(o),(s=p.value)!=null&&s.resetView||(d=(c=p.value)==null?void 0:c.refreshView)==null||d.call(c);return}(w=(f=p.value)==null?void 0:f.refreshView)==null||w.call(f)}function Mn(){K.value!==ze&&!Oa[K.value]&&(K.value=ze);const e=()=>{if(!(S||!h.active)){if(re.value){na({reset:!0});return}Rt(),Oe()}};q(()=>{e(),window.setTimeout(e,180)})}function kn(){var e,t;if(he(),!re.value){Oe();return}if((t=(e=p.value)==null?void 0:e.hasMap)!=null&&t.call(e)){na({reset:!0});return}oa(),q(()=>{var a,o;(o=(a=p.value)==null?void 0:a.resume)==null||o.call(a)})}function Cn(){if(he(),K.value===ze){q(()=>{Rt(),Oe()});return}K.value=ze}n({refreshMapView:na,resetMap:kn,showDefaultThreeMap:Cn});function qa(){ia();const e=()=>{Ee=null,rt="",!(S||!h.active)&&(Ia=!0,Un(),Kn(),Xa(),h.active&&Qa())};if(typeof window.requestIdleCallback=="function"){rt="idle",Ee=window.requestIdleCallback(e,{timeout:1800});return}rt="timeout",Ee=window.setTimeout(e,650)}function ia(){Ee&&(rt==="idle"&&typeof window.cancelIdleCallback=="function"?window.cancelIdleCallback(Ee):window.clearTimeout(Ee),Ee=null,rt="")}function ra(e,t){e&&(t?C.set(e,t):C.delete(e))}function Ya(e,t){const a=Number(t==null?void 0:t.index);Number.isFinite(a)&&(e?P.set(a,e):P.delete(a)),t!=null&&t.isActive&&(x.value=e||null)}function Pn(e=[],t=0,a=Et){const o=Array.isArray(e)?e:[];if(!o.length)return[{key:`empty-${a.key||"video"}`,index:0,live:a,isActive:!0}];const i=(t+o.length)%o.length,s=o[i],c=(s==null?void 0:s.live)||s||a,d=Number.isFinite(Number(s==null?void 0:s.index))?Number(s.index):i;return[{key:`${c.key||c.title||"video"}-${d}`,index:d,live:c,isActive:!0}]}function Qa(){!h.active||S||(sa(),N=window.setInterval(Ja,2600),V=window.setTimeout(Ja,800))}function sa(){N&&(window.clearInterval(N),N=null),V&&(window.clearTimeout(V),V=null)}function Ja(){S||!h.active||(V=null,ue.value+=1,Vn(),jn(),Wn())}function Ln(){v("module-stats",{moduleKey:"home",items:qt.value})}function Tn(){return X(this,null,function*(){try{const e=yield Hr();if(S)return;qt.value=e}catch(e){if(S)return;qt.value=[],console.warn("[home] top stats unavailable",e)}Ln()})}function Ft(e=Uo){Za(),!(S||!h.active)&&(st=window.setTimeout(()=>{if(st=null,!(S||!h.active)){if(Ct){Ft(Ko);return}Xa()}},Math.max(0,Number(e)||0)))}function Za(){st&&(window.clearTimeout(st),st=null)}function Xa(){return X(this,null,function*(){if(Ct){Ft(Ko);return}Ct=!0;let e=Uo;try{const t=yield Hi({includeOffline:!0,includeHidden:!0});if(S)return;In(t)}catch(t){if(S)return;e=Js,ae.value.length||(U.value="监控接口暂不可用"),window.setTimeout(()=>{S||U.value==="监控接口暂不可用"&&(U.value="")},2400)}finally{Ct=!1,S||Ft(e)}})}function Me(e){return String((e==null?void 0:e.key)||(e==null?void 0:e.device)||(e==null?void 0:e.title)||"").trim()}function An(e=[],t=[]){const a=new Map;t.forEach(s=>{const c=Me(s);c&&!a.has(c)&&a.set(c,s)});const o=[],i=new Set;return e.forEach(s=>{const c=Me(s),d=c?a.get(c):null;!d||i.has(c)||(o.push(d),i.add(c))}),t.forEach(s=>{const c=Me(s);c&&i.has(c)||(o.push(s),c&&i.add(c))}),o}function In(e=[]){const t=ae.value,a=$.value,o=Me(t[a]),i=t.filter(ge).map(Me),s=An(t,Array.isArray(e)?e:[]),c=t.some((b,y)=>Me(b)!==Me(s[y])),d=s.filter(ge).map(Me),f=i.length!==d.length||i.some((b,y)=>b!==d[y]);c?ye({resetError:!0}):t.forEach((b,y)=>{if(!W.has(String(y))&&!pe[String(y)])return;const I=s[y];(!I||!ge(I))&&Xe(y,{resetError:!0})}),ae.value=s,_a.value=new Date().toISOString();let w=o?s.findIndex(b=>Me(b)===o):-1;if(w<0||!ge(s[w])?(w=s.findIndex(b=>ge(b)),ce.value=Math.max(0,w),ft.value=!1,ue.value=0):!Q.value&&(f||c)?(ce.value=w,ue.value=0):Q.value&&(ce.value=w),s.filter(b=>ge(b)).length?["暂无在线可播放摄像头","监控接口暂不可用"].includes(U.value)&&(U.value=""):(ye({resetError:!0}),U.value="暂无在线可播放摄像头"),Q.value){const b=pt.value.findIndex(y=>y.index===ce.value);oe.value=Math.floor(Math.max(0,b)/ot)+1}else oe.value=Math.min(oe.value,gt.value)}function J(e){const t=ae.value.length;return t?((Number(e)||0)+t)%t:0}function fe(e){return String(J(e))}function eo(e){const t=fe(e);return pe[t]||(pe[t]={playing:!1,loading:!1,ready:!1,error:""}),pe[t]}function yt(e){return pe[fe(e)]||{}}function vt(e){return`${Qo}-${fe(e)}`}function la(e){return!!yt(e).playing}function Ot(e){return!!yt(e).loading}function Qe(e){const t=yt(e).error;return t||(J(e)===$.value?U.value:"")}function to(e){const t=yt(e);return!!(t.playing||t.loading)}function Ne(){const e=Object.values(pe);Zt.value=e.some(t=>t.playing),Ea.value=e.some(t=>t.loading)}function ao(e,t=!0,a=$.value){const o=(e==null?void 0:e.image)||_o;return la(a)&&t?void 0:{backgroundImage:`linear-gradient(180deg, rgba(0, 16, 26, 0.08), rgba(0, 16, 26, 0.32)), url(${o})`}}function _n(){io(-1)}function En(){io(1)}function Rn(){const e=$.value;ye({resetError:!0}),ce.value=e,ft.value=!0,ue.value=0;const t=pt.value.findIndex(a=>a.index===e);oe.value=Math.floor(Math.max(0,t)/ot)+1,Q.value=!0,q(()=>ca())}function Nt(){Q.value&&(ye({resetError:!0}),Q.value=!1)}function oo(e){var o,i;const t=Math.max(1,Math.min(gt.value,Number(e)||1));if(t===oe.value)return;ye({resetError:!0}),oe.value=t;const a=(t-1)*ot;ce.value=(i=(o=pt.value[a])==null?void 0:o.index)!=null?i:0,q(()=>ca())}function Fn(){Yt.value=!0}function no(){return X(this,null,function*(){const e=++dt;Qt.value=!0,Lt.value="";try{const t=yield Ur();if(S||e!==dt)return;const a=new Map;t.forEach(o=>{const i=Kr(o);if(!["county","town"].includes(i.type)||!i.name)return;const s=i.areaCode||i.key||i.name;a.set(String(s),i)}),Pt.value=[...a.values()].sort((o,i)=>String(o.areaCode||o.name).localeCompare(String(i.areaCode||i.name),"zh-CN")),Pt.value.length||(Lt.value="暂无草畜平衡数据")}catch(t){if(S||e!==dt)return;console.warn("[home] balance rows unavailable",t),Pt.value=[],Lt.value="草畜平衡接口暂不可用"}finally{!S&&e===dt&&(Qt.value=!1)}})}function Bt(){Yt.value=!1}function io(e){var i,s;const t=qe.value,a=t.length;if(!a)return;ye({resetError:!0});const o=aa.value;ce.value=(s=(i=t[(o+e+a)%a])==null?void 0:i.index)!=null?s:0,ft.value=!0,ue.value=0}function Be(e){if(!ae.value.length){Gn();return}const a=J(e),o=fe(a),i=yt(a);if(ce.value=a,ft.value=!0,ue.value=0,Wt.has(o)||W.has(o)||(i.playing||i.loading)&&!i.error){Ze(a);return}Wt.add(o),q(()=>X(this,null,function*(){try{yield uo(a,{stopOthers:!Q.value})}finally{Wt.delete(o)}}))}function ro(e,t){Nn(t==null?void 0:t.target)||Be(e)}function so(e){var i,s,c,d,f,w,g,b,y,I;const t=((s=(i=e==null?void 0:e.target)==null?void 0:i.closest)==null?void 0:s.call(i,'[id$="-webExpend-content"]'))||((c=e==null?void 0:e.composedPath)==null?void 0:c.call(e).find(O=>String((O==null?void 0:O.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:$.value;(b=e.preventDefault)==null||b.call(e),(y=e.stopPropagation)==null||y.call(e),(I=e.stopImmediatePropagation)==null||I.call(e),On(o)}function On(e){return X(this,null,function*(){var i,s;const t=J(e);if(de.value===t){Ht();return}de.value!==null&&Ht();const a=document.getElementById(`${vt(t)}-wrap`);if(!a)return;de.value=t,yield q();const o=(s=(i=A.value)==null?void 0:i.querySelector)==null?void 0:s.call(i,".home-video-web-player-slot");if(!o){de.value=null;return}o.appendChild(a),Ze(t),Je(t)})}function Ht(e={}){var i;const{restore:t=!0}=e,a=de.value;if(a===null)return;const o=document.getElementById(`${vt(a)}-wrap`);if(t&&o){const s=Gt(a)||x.value,c=(i=s==null?void 0:s.querySelector)==null?void 0:i.call(s,".home-video-player-host");c&&c.appendChild(o)}de.value=null,t&&q(()=>{Ze(a),Je(a)})}function Nn(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 Bn(e){const t=Math.max(0,Number((e==null?void 0:e.value)||0)),a=Math.max(5,...It.value.map(o=>Math.max(0,Number(o.value||0))));return Math.max(6,Math.min(100,t/a*100))}function Hn(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 lo(e){return{"--balance-color":Hn(e),"--balance-progress":`${Bn(e)}%`}}function Gn(){return X(this,null,function*(){return uo($.value,{stopOthers:!Q.value})})}function uo(a){return X(this,arguments,function*(e,t={}){const{stopOthers:o=!0}=t,i=J(e),s=ae.value[i]||Et,c=fe(i);let d=eo(i);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,i===$.value&&(U.value=d.error),Ne();return}if(W.has(c)||(d.playing||d.loading)&&!d.error)return;ce.value=i,ue.value=0,o?ye({resetError:!0}):(W.has(c)||d.loading)&&Xe(i,{resetError:!0}),d=eo(i),d.error="",d.loading=!0,d.playing=!1,d.ready=!1,i===$.value&&(U.value=""),Ne(),yield q();const f=(Se.get(c)||0)+1;Se.set(c,f);let w=null;Dn(i,f);try{const g=Gt(i)||x.value,b=vt(i);if(!$n(g,b))throw new Error("视频容器未就绪");const{width:y,height:I}=fo(g,340,92);if(w=new Gi.EZUIKitPlayer({id:b,accessToken:s.token,url:s.hdPlayUrl,audio:0,width:y,height:I,themeData:zn(),handleError(O){f===Se.get(c)&&(bt(i),console.warn("EZUIKit player error",O),da(w),d.error="视频加载失败",d.loading=!1,d.playing=!1,d.ready=!1,Se.set(c,f+1),W.delete(c),fa(i),i===$.value&&(U.value=d.error),Ne())},handleSuccess(){f===Se.get(c)&&(bt(i),d.error="",d.ready=!0,d.loading=!1,i===$.value&&(U.value=""),Ze(i),Je(i),ua(b),Ne())},fullScreenChangeCallBack(){}}),f!==Se.get(c)){da(w),fa(i);return}W.set(c,w),d.playing=!0,Ne(),q(()=>{Ze(i),Je(i),ua(b)})}catch(g){bt(i),console.warn("EZUIKit init error",g),d.error="视频加载失败",i===$.value&&(U.value=d.error),Xe(i,{resetError:!1})}})}function ua(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 Je(e=$.value,t=0){if(typeof window=="undefined")return;const a=J(e),o=fe(a),i=Re.get(o);t===0&&i&&window.cancelAnimationFrame(i);const s=window.requestAnimationFrame(()=>{Ze(a),t<8?Je(a,t+1):Re.delete(o)});Re.set(o,s)}function co(e){if(typeof window!="undefined"){if(e!==void 0){const t=fe(e),a=Re.get(t);a&&window.cancelAnimationFrame(a),Re.delete(t);return}Re.forEach(t=>window.cancelAnimationFrame(t)),Re.clear()}}function ca(){Array.from(W.keys()).forEach(e=>{const t=Number(e);Number.isFinite(t)&&Je(t)})}function fo(e,t=1,a=1){var c;if(!e)return{width:Math.max(1,Math.floor(t||1)),height:Math.max(1,Math.floor(a||1))};const o=(c=e.getBoundingClientRect)==null?void 0:c.call(e),i=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(i||1)),height:Math.max(1,Math.floor(s||1))}}function Gt(e=$.value){if(typeof document=="undefined")return null;const t=J(e),a=Q.value?".home-video-modal-item":".home-video-card .home-video-screen",o=document.querySelector(`${a}[data-video-index="${t}"]`);if(o)return o;const i=P.get(t);return i!=null&&i.isConnected?i:null}function $n(e,t){var i;const a=(i=e==null?void 0:e.querySelector)==null?void 0:i.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 Ze(e=$.value){var xt,zt;if(typeof document=="undefined")return;const t=J(e),a=fe(t),o=vt(t),i=de.value===t&&A.value?A.value:Gt(t)||x.value,s=document.getElementById(`${o}-wrap`),c=document.getElementById(o),d=s||c;if(!i||!d)return;const{width:f,height:w}=fo(i),g=W.get(a);try{s&&c&&g&&typeof g.reSize=="function"?g.reSize(f,w):s&&c&&g&&typeof g.autoResize=="function"&&g.autoResize()}catch(ke){console.warn("EZUIKit resize failed",ke)}const b={position:"absolute",left:"0",top:"0",right:"0",bottom:"0",width:`${f}px`,height:`${w}px`};Object.assign(d.style,b,{display:"block",verticalAlign:"top"}),s&&c&&Object.assign(c.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 y=document.getElementById(`EZUIKitPlayer-${o}`);y&&(y.setAttribute("width",String(f)),y.setAttribute("height",String(w)));const I=document.getElementById(`${o}-player`),O=document.getElementById(`${o}canvas0`),B=document.getElementById(`${o}canvas_draw0`),Z=[d,c,I,O==null?void 0:O.parentElement,O,B==null?void 0:B.parentElement,B,...Array.from((c==null?void 0:c.children)||[]),...Array.from(((xt=d==null?void 0:d.querySelectorAll)==null?void 0:xt.call(d,"[id$='-wrap'], .play-window, video, canvas, iframe, object, embed"))||[]),...Array.from(((zt=c==null?void 0:c.querySelectorAll)==null?void 0:zt.call(c,".play-window, video, canvas, iframe, object, embed"))||[]),y].filter(Boolean);Array.from(new Set(Z)).forEach(ke=>{var Co,Po;(Co=ke.setAttribute)==null||Co.call(ke,"width",String(f)),(Po=ke.setAttribute)==null||Po.call(ke,"height",String(w)),Object.assign(ke.style,{position:"absolute",left:"0",top:"0",right:"0",bottom:"0",width:"100%",height:"100%",maxWidth:"none",maxHeight:"none",margin:"0",objectFit:"fill"})}),ua(o)}function ye(e={}){Array.from(W.keys()).forEach(t=>{Xe(Number(t),e)}),Object.keys(pe).forEach(t=>{W.has(t)||Xe(Number(t),e)}),Ne()}function Xe(e,t={}){const{clearElement:a=!0,resetError:o=!1}=t,i=J(e),s=fe(i);co(i),bt(i);const c=W.get(s);W.delete(s),Se.set(s,(Se.get(s)||0)+1),c&&da(c),a&&fa(i);const d=pe[s];d&&(d.playing=!1,d.loading=!1,d.ready=!1,o&&(d.error=""),d.error||delete pe[s]),i===$.value&&o&&(U.value=""),Ne()}function Dn(e,t){const a=J(e),o=fe(a);bt(a);const i=window.setTimeout(()=>{const s=pe[o];t!==Se.get(o)||!(s!=null&&s.loading)||(s.error="视频加载超时",a===$.value&&(U.value=s.error),Xe(a,{resetError:!1}))},Zs);Ut.set(o,i)}function bt(e){const t=fe(e),a=Ut.get(t);a&&(window.clearTimeout(a),Ut.delete(t))}function da(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 fa(e=$.value){var d;if(typeof document=="undefined")return;const t=J(e),a=vt(t),o=document.getElementById(`${a}-wrap`),i=document.getElementById(a),s=Gt(t)||x.value,c=(d=s==null?void 0:s.querySelector)==null?void 0:d.call(s,".home-video-player-host");de.value===t&&Ht({restore:!1}),c&&c.replaceChildren(),o!=null&&o.isConnected&&o.remove(),i!=null&&i.isConnected&&i.remove()}function zn(){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 Vn(){const e=C.get("yak-structure");ha(e,"畜群结构",Ga.value)}function jn(){const e=C.get("yak-three-year-forecast");ha(e,"预测存栏",Ke.value)}function Wn(){const e=C.get("yak-forecast-trend");ha(e,"预测存栏",mt.value)}function ha(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 $t(e){return e?ue.value%e:0}function Un(){return X(this,null,function*(){try{const e=yield Gr();if(S)return;F.value=e}catch(e){if(S)return;F.value={grasslandTownRows:[],wetlandTownRows:[],grassTypeRows:[],productivityRows:[],meta:{}},console.warn("[home] resource panels unavailable",e)}})}function Kn(){return X(this,null,function*(){try{const e=yield $r();if(S)return;k.value=e}catch(e){if(S)return;k.value={currentStock:void 0,stockSourceYear:void 0,townRows:[],structureRows:[],forecastPeriods:[],forecastConfig:{},tradeImpactRows:[],meta:{}},console.warn("[home] yak stats unavailable",e)}})}function ma(e,t,a,o=[],i={}){return o.length?G({key:e,title:t,type:a,rows:o},i):null}function qn(e,t){const a=String((e==null?void 0:e.key)||"");return a.includes("grassland-town")?z(G({},e),{key:`home-${t}-${e.key}`,height:We.value,option:Yn(e,e.title)}):a.includes("wetland-town-area")?z(G({},e),{key:`home-${t}-${e.key}`,height:We.value,option:Qn(e,e.title)}):a.includes("grassland-type-proportion")?z(G({},e),{key:`home-${t}-${e.key}`,fixedActiveIndex:!0,height:We.value}):z(G({},e),{key:`home-${t}-${e.key}`,height:We.value})}function Yn(e,t,a={}){var w;const o=(e.rows||[]).filter(g=>Number.isFinite(Number(g.value))).slice(0,10),i=((w=o.find(g=>g.unit))==null?void 0:w.unit)||"万亩",s=o.map(g=>Number(g.value)||0),c=Math.max(...s,1),d=Math.ceil(c*1.14),f=a.showTrendLine===!0;return $e({animation:!0,animationDuration:900,animationDurationUpdate:700,animationEasing:"cubicOut",title:{text:`单位:${i}`,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 O;const b=Array.isArray(g)?g:[g],y=b.find(B=>B.seriesName===t)||b[0],I=o[(O=y==null?void 0:y.dataIndex)!=null?O:0];return I?`${I.name}
${t}:${j(I.value)}${I.unit||i}`:""}},grid:{left:"12%",top:"25%",width:"82%",height:"55%"},xAxis:[{type:"category",data:o.map(g=>g.name),axisLabel:{interval:0,hideOverlap:!1,color:Aa,fontSize:10,fontWeight:700,lineHeight:12,margin:8,padding:[0,0,0,0],formatter:vo},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:Mt,opacity:1,width:.3}},axisLabel:{color:at,fontSize:10,formatter:ve}},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:De,fontSize:10,fontWeight:700,formatter:({value:g})=>ve(g)},itemStyle:{borderRadius:2,color:new Ae(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:De,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 Qn(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)||"万亩",i=a.map(f=>Number(f.value)||0),s=Math.max(...i,1),c=Math.ceil(s*1.2);return $e({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 y;const w=Array.isArray(f)?f:[f],g=w.find(I=>I.seriesName===t)||w[0],b=a[(y=g==null?void 0:g.dataIndex)!=null?y:0];return b?`${b.name}
${t}:${j(b.value)}${b.unit||o}`:""}},grid:{left:58,right:74,top:42,bottom:14,containLabel:!1},xAxis:{type:"value",min:0,max:c,axisLine:{show:!1},axisTick:{show:!1},axisLabel:{show:!1},splitLine:{show:!0,lineStyle:{color:Mt,type:[2,4],width:.3}}},yAxis:{type:"category",inverse:!0,data:a.map(f=>f.name),axisLine:{show:!1},axisTick:{show:!1},axisLabel:{color:Aa,fontSize:10,fontWeight:700,margin:8}},series:[{name:"背景",type:"bar",barWidth:8,barGap:"-100%",data:a.map(()=>c),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:i,label:{show:!0,position:"right",distance:8,color:De,fontSize:10,fontWeight:700,formatter:({value:f})=>`${j(f)}${o}`},itemStyle:{borderRadius:[0,5,5,0],color:new Ae(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 Jn(e=[],t="数值"){var b;const a=["邛溪镇","刷经寺镇","安曲镇","龙日镇","江茸乡","查尔玛乡","瓦切镇","阿木乡","麦洼乡","色地镇"],o=new Map(a.map((y,I)=>[y,I])),i=e.filter(y=>Number.isFinite(Number(y.value))).sort((y,I)=>{var O,B;return((O=o.get(y.name))!=null?O:99)-((B=o.get(I.name))!=null?B:99)}).slice(0,10),s=((b=i.find(y=>y.unit))==null?void 0:b.unit)||"头",c=i.map(y=>Number(y.value)||0),d=Math.max(...c,1),f=Math.ceil(d*1.16/1e4)*1e4,w=$t(i.length),g=new Set(c.map((y,I)=>({value:y,index:I})).sort((y,I)=>I.value-y.value).slice(0,3).map(y=>y.index));return $e({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(y){var Z;const I=Array.isArray(y)?y:[y],O=I.find(wt=>wt.seriesName===t)||I[0],B=i[(Z=O==null?void 0:O.dataIndex)!=null?Z:0];return B?`${B.name}
${t}:${j(B.value)}${B.unit||s}`:""}},grid:{left:46,right:20,top:38,bottom:28,containLabel:!1},xAxis:{type:"category",boundaryGap:!1,data:i.map(y=>y.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:y=>String(y).replace(/[乡镇]$/,"")}},yAxis:{type:"value",min:0,max:f,splitNumber:4,axisLine:{show:!1},axisTick:{show:!1},axisLabel:{color:Ce,fontSize:9,margin:7,formatter:y=>ve(y)},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:(y,I)=>I.dataIndex===w?7:4,data:c,label:{show:!0,position:"top",distance:5,color:De,fontSize:10,fontWeight:700,formatter:({value:y,dataIndex:I})=>g.has(I)?ve(y):""},lineStyle:{width:2.5,color:"#8dfbff",shadowBlur:7,shadowColor:"rgba(48, 220, 255, 0.68)"},areaStyle:{color:new Ae(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(y){return y.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 Zn(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)||"",i=a.map(f=>Number(f.value)||0),s=Math.max(...i,1),c=Math.ceil(s*1.12);return $e({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 y;const g=(Array.isArray(f)?f:[f])[0],b=a[(y=g==null?void 0:g.dataIndex)!=null?y:0];return b?`${b.name}
${t}:${j(b.value)}${b.unit||o}`:""}},color:["#6BC7F6"],xAxis:[{type:"category",data:a.map(f=>f.name),axisLine:{show:!1},axisTick:{show:!1},splitLine:{show:!1},axisLabel:{color:Aa,fontSize:10,fontWeight:700,interval:0,padding:[0,0,0,0],formatter:vo}},{data:[],axisLine:{show:!1,lineStyle:{color:"rgba(0, 0, 0, 0)"}},axisTick:{show:!1},axisLabel:{show:!1}}],yAxis:{type:"value",min:0,max:c,axisLine:{show:!1},axisTick:{show:!1},splitLine:{show:!0,lineStyle:{type:[2,2],dashOffset:5,color:Mt,opacity:1,width:.3}},axisLabel:{color:at,fontSize:10,formatter:ve}},series:[{name:t,data:i,type:"line",smooth:!0,symbol:Ys,symbolSize:10,showSymbol:!1,z:3,emphasis:{focus:"none",itemStyle:{color:"white"}},label:{show:!0,position:"top",distance:10,color:De,fontSize:10,fontWeight:700,formatter:({value:f})=>ve(f)},lineStyle:{shadowColor:"rgba(0, 0, 0, 0.4)",shadowBlur:3,shadowOffsetY:10,width:3,color:new Ae(0,0,0,1,[{offset:0,color:"rgba(115, 208, 255, 1)"},{offset:1,color:"rgba(18, 60, 98, 1)"}])},areaStyle:{color:new Ae(0,0,0,1,[{offset:0,color:"rgba(25, 255, 236, 0.34)"},{offset:1,color:"rgba(51, 153, 255, 0)"}])}}]})}function ho(e){return String((e==null?void 0:e.key)||"").includes("grassland-town")}function mo(e,t,a,o=0,i=!1,s=-1){return{name:e,type:"line",yAxisIndex:o,smooth:!0,symbolSize:5,data:t.map((c,d)=>({value:c,symbolSize:d===s?10:5,itemStyle:{color:d===s?"#ffffff":a},label:{show:d===s,position:"top",color:a,fontSize:10,formatter:({value:f})=>ve(f)}})),lineStyle:{width:2.4,color:a},itemStyle:{color:a},areaStyle:i?{color:new Ae(0,0,0,1,[{offset:0,color:`${a}44`},{offset:1,color:`${a}05`}])}:void 0}}function Xn(e){return ea.find(t=>t.key===e)||ea[2]}function ei(e){return Pe.value.find(t=>t.key===e)||Pe.value[1]||Pe.value[0]||null}function po(e={}){return Math.max(1,Math.round(Number((e==null?void 0:e.months)||1)))}function pa(e,t){return t<=1?1:Math.min(1,Math.max(0,e/(t-1)))}function Te(e){var a;const t=Number((a=en.value)==null?void 0:a[e]);return Number.isFinite(t)?t:void 0}function go(e=0,t){var i;const a=((i=Pe.value[0])==null?void 0:i.startDate)||"",o=new Date(`${a}T00:00:00Z`);return!a||Number.isNaN(o.getTime())?"":(t!==void 0?o.setUTCMonth(o.getUTCMonth()+t):o.setUTCDate(o.getUTCDate()+e),[String(o.getUTCFullYear()).slice(-2),String(o.getUTCMonth()+1).padStart(2,"0"),...t===void 0?[String(o.getUTCDate()).padStart(2,"0")]:[]].join("-"))}function ti(e){if(!e||!ht.value)return{labels:[],stock:[],births:[],outflow:[]};const t=Te("monthlySeasonalDivisor"),a=Te("seasonalMaxAmplitude"),o=Te("seasonalAmplitudePerMonth");if(!t||a===void 0||o===void 0)return{labels:[],stock:[],births:[],outflow:[]};const i=po(e),s=Array.from({length:i},(w,g)=>go(0,g)),c=s.map((w,g)=>{const b=pa(g,i),y=Math.sin(g/t)*Math.sin(Math.PI*b)*Math.min(a,e.months*o);return Math.round(ht.value+(e.stock-ht.value)*b+y)}),d=s.map((w,g)=>Math.round(e.births*pa(g,i))),f=s.map((w,g)=>Math.round(e.outflow*pa(g,i)));return{labels:s,stock:c,births:d,outflow:f}}function ai(e,t="month"){if(t==="month")return ti(e);const a=po(e),o=Te("daysPerMonth"),i=Te("weekStepDays"),s=Te(t==="week"?"weeklySeasonalDivisor":"dailySeasonalDivisor"),c=Te("seasonalMaxAmplitude"),d=Te("seasonalAmplitudePerMonth");if(!o||!i||!s||c===void 0||d===void 0)return{labels:[],stock:[],births:[],outflow:[]};const f=Math.max(1,Math.round(Math.max(1,a-1)*o)),w=t==="week"?i:1,g=Math.ceil(f/w)+1,b=Array.from({length:g},(B,Z)=>{const wt=Math.min(f,Z*w);return go(wt)}),y=b.map((B,Z)=>{const xt=Math.min(f,Z*w)/f,zt=Math.sin(Z/s)*Math.sin(Math.PI*xt)*Math.min(c,e.months*d);return Math.round(ht.value+(e.stock-ht.value)*xt+zt)}),I=b.map((B,Z)=>Math.round(e.births*(Math.min(f,Z*w)/f))),O=b.map((B,Z)=>Math.round(e.outflow*(Math.min(f,Z*w)/f)));return{labels:b,stock:y,births:I,outflow:O}}function oi(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 ni(e,t){return t==="day"?e>700?2:e>360?3:4:t==="week"?e>110?4:6:e>24?7:10}function ii(e){return(e.labels||[]).map((t,a)=>{var g,b,y,I,O,B;const o=Number(((g=e.stock)==null?void 0:g[Math.max(a-1,0)])||0),i=Number(((b=e.stock)==null?void 0:b[a])||o),s=Math.max(0,Number(((y=e.births)==null?void 0:y[a])||0)-Number(((I=e.births)==null?void 0:I[Math.max(a-1,0)])||0)),c=Math.max(0,Number(((O=e.outflow)==null?void 0:O[a])||0)-Number(((B=e.outflow)==null?void 0:B[Math.max(a-1,0)])||0)),d=Math.max(120,Math.round((s+c)*.18)),f=Math.max(o,i)+Math.max(d,Math.round(s*.32)),w=Math.max(0,Math.min(o,i)-Math.max(d,Math.round(c*.32)));return{label:t,open:o,close:i,low:w,high:f,birth:s,outflow:c,value:[o,i,w,f]}})}function j(e){const t=Number(e);return Number.isFinite(t)?t.toLocaleString("zh-CN",{maximumFractionDigits:Number.isInteger(t)?0:2}):"--"}function ri(e){const t=Number(e);return Number.isFinite(t)?`${t>0?"+":""}${j(t)}`:"--"}function ve(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 yo(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 vo(e){return String(e||"").replace(/\s+/g,"").replace(/[镇乡]$/u,"").slice(0,4)}function si(e){if(!e)return null;const t=yr(e.topicKey,e.layerKey);if(t)return t;const a=vr(e.topicKey);return a.find(o=>o.key===e.layerKey)||a[0]||null}function li(e,t){const a=Number.isFinite(Number(t.fillOpacity))?Number(t.fillOpacity):.46,o=t.stroke||t.strokeColor||"#E5FCFF",i=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}${i}${s}round`}function ui(e){At.some(t=>t.key===e)&&(K.value=e,he())}function bo(e){if(e.key==="Escape"){if(de.value!==null){Ht();return}Nt(),Bt()}}function ga(){Fa.value=typeof window=="undefined"?1080:window.innerHeight,ca()}function ci(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),i=Number(e==null?void 0:e.y);return!Number.isFinite(o)||!Number.isFinite(i)?{x:960,y:540}:o>=0&&o<=1920&&i>=0&&i<=1080&&(o>a.width||i>a.height)?{x:o,y:i}:{x:(o-a.left)/a.width*1920,y:(i-a.top)/a.height*1080}}function ya(e,t){var a,o,i,s;return((o=(a=p.value)==null?void 0:a.getVectorFeatureAnchorScreen)==null?void 0:o.call(a,e))||((s=(i=p.value)==null?void 0:i.getVectorFeatureScreen)==null?void 0:s.call(i,e))||t}function di(){if(!ta.value||!ne.value)return;const e=ya(ne.value,ie.value);if(!e)return;const t=ie.value;t&&Math.abs(Number(t.x)-Number(e.x))<.5&&Math.abs(Number(t.y)-Number(e.y))<.5||(ie.value=e)}function va(e){const t=(e==null?void 0:e.properties)||{};return Object.keys(t).filter(o=>xo(o,t[o])).length}function fi(e={}){return e.categoryCode==="YC-FAMILY-PASTURE"||e.stageKey==="family-pasture"}function hi(e={}){var c,d,f,w;const t=mi(e),a=t.metrics||{},o=t.attributes||{},i=[],s=(g,b,y="")=>{wo(b)&&i.push({label:g,value:pi(b,y)})};return s("名称",t.name||t.fullName),s("所在乡镇",t.town||t.areaName),s("户主",t.owner||o.户主),s("建设年份",t.constructionYear,"年"),s("所在村",t.village||t.address),s("标准化暖棚",(c=t.greenhouseAreaM2)!=null?c:a["标准化暖棚 (㎡)"],"㎡"),s("生产管理用房",(d=t.managementBuildingAreaM2)!=null?d:a["管理用房 (㎡)"],"㎡"),s("饲草料库",(f=t.fodderStoreAreaM2)!=null?f:a["饲草料库 (㎡)"],"㎡"),s("活动场地及通道",(w=t.activityAreaM2)!=null?w:a["活动场地及通道 (㎡)"],"㎡"),s("草料配套",t.grassSupportText||o.草料配套),i.some(g=>g.label==="草料配套")||s("设施配置",t.facilityDetail||o.设施配置),i}function mi(e={}){return z(G({},e),{name:e.name||e.fullName,fullName:e.fullName||e.name,town:e.town||e.areaName,village:e.village||e.address})}function wo(e){return e!=null&&String(e).trim()!==""}function pi(e,t=""){if(!wo(e))return"";const a=String(e).trim();return t?a.endsWith(t)?a:`${a}${t}`:a}function xo(e,t){return t==null||t===""||Array.isArray(t)||typeof t=="object"?!1:!l.has(String(e||"").toLowerCase())}function So(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 gi(e={}){const t=Mo(e.lng),a=Mo(e.lat);return t===""||a===""?"":`POINT(${t} ${a})`}function Mo(e){const t=Number(e);return Number.isFinite(t)?t.toFixed(8).replace(/\.?0+$/,""):""}function yi(){return X(this,arguments,function*(e={}){var w,g,b,y,I,O;const t=Number((w=e==null?void 0:e.lngLat)==null?void 0:w.lng),a=Number((g=e==null?void 0:e.lngLat)==null?void 0:g.lat),o=Na.value,i=So(o);if(!Number.isFinite(t)||!Number.isFinite(a)){he();return}if(!i){Li();return}const s=++lt,c=je,d=e.screen||{x:960,y:540},f=["wetland","woodland"].includes(i);ie.value=f?d:null,ne.value=null,Le.value=!1,Fe.value="",Ue.value=!0,(y=(b=p.value)==null?void 0:b.clearSelectedFeature)==null||y.call(b);try{const B=yield vi(o,{lng:t,lat:a},i);if(s!==lt||S)return;if(!B){je===c&&(f?(Le.value=!0,ie.value=d):he());return}ne.value=B,Le.value=!1,Fe.value="",(O=(I=p.value)==null?void 0:I.highlightFeature)==null||O.call(I,B,{highlightTone:"v21"}),ie.value=ya(B,d)}catch(B){s===lt&&je===c&&(f?(ne.value=null,Le.value=!1,Fe.value=`${i==="woodland"?"林地":"湿地"}详情加载失败,请稍后重试`,ie.value=d):he())}finally{s===lt&&(Ue.value=!1)}})}function vi(o,i){return X(this,arguments,function*(e,t,a=So(e)){const s=gi(t);if(!s)return null;let c=null;a==="grassland"?c=yield Vr({wkt:s}):a==="wetland"?c=yield Dr(s):a==="woodland"&&(c=yield zr(s));const d=bi(c,a);if(!wi(d))return null;const f=Si(d,e,t,a);return va(f)>0?f:null})}function bi(e,t){const a=["grassland","wetland","woodland"],o=[e,e==null?void 0:e.data,e==null?void 0:e.result];for(const s of o){const c=ba(s==null?void 0:s[t]);if(c)return c}return o.some(s=>a.some(c=>ba(s==null?void 0:s[c])))?null:ba(e)}function ba(e){return Array.isArray(e)?e.find(t=>t&&typeof t=="object")||null:e&&typeof e=="object"?e:null}function wi(e){return!e||typeof e!="object"?!1:Array.isArray(e.dyColumn)&&e.dyColumn.some(xi)?!0:Object.keys(e).some(t=>xo(t,e[t]))}function xi(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 Si(e,t,a,o){const i=ki(e),s=Mi(e);return{id:e.id||e.patchNo||e.patch_no||e.landNumber||e.land_number||`${o}-${a.lng}-${a.lat}`,properties:i,feature:{type:"Feature",properties:i,geometry:s},geometry:s,layer:t,lngLat:a}}function Mi(e={}){return e.geometry||e.geom||e.wkt||e.the_geom||e.theGeom||e.geo||e.geometryWkt||e.geometry_wkt||e.shape||null}function ki(e={}){const t=G({},e);return(Array.isArray(e.dyColumn)?e.dyColumn:[]).forEach(o=>{const i=o==null?void 0:o.value;if(i==null||i==="")return;const s=u[String((o==null?void 0:o.title)||"").trim()],c=String((o==null?void 0:o.field)||"").trim();[c,Ci(c),s].filter(Boolean).forEach(f=>{(t[f]===void 0||t[f]===null||t[f]==="")&&(t[f]=i)})}),t}function Ci(e){const t=String(e||"").trim();return t?t.replace(/([a-z0-9])([A-Z])/g,"$1_$2").toLowerCase():""}function Pi(e){var a,o;je+=1,Dt();const t=(o=(a=e==null?void 0:e.feature)!=null?a:e)!=null?o:null;if(!t||va(t)<=0){he();return}ne.value=t,Le.value=!1,Fe.value="",e!=null&&e.screen&&(ie.value=ya(t,e.screen))}function he(){var e,t;Dt(),lt+=1,ne.value=null,Le.value=!1,Fe.value="",Ue.value=!1,ie.value=null,(t=(e=p.value)==null?void 0:e.clearSelectedFeature)==null||t.call(e)}function Li(){const e=je;Dt(),ut=window.setTimeout(()=>{ut=null,je===e&&he()},80)}function Dt(){ut&&(window.clearTimeout(ut),ut=null)}function ko(e){if(!ta.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)=>(_(),E("div",rs,[Ao(Vt(os,{ref_key:"threeMapSceneRef",ref:m,class:"home-map-scene home-three-map-scene","show-data-overlays":!1,"max-pixel-ratio":1.35,onPlayComplete:xn},null,512),[[Io,nn.value]]),re.value?Ao((_(),Ie(Vi,{key:0,ref_key:"mapSceneRef",ref:p,class:"home-map-scene home-remote-map-scene",active:h.active&&re.value,"active-layer":Na.value,"admin-boundary-line-scale":1.65,"initial-zoom":Xs,"minimum-zoom-distance":1,"auto-apply-layer-map-view":!1,"max-zoom":21,"enable-imagery-feature-pick":on.value,"emit-empty-feature-info-on-miss":!1,"hide-town-label-stats":"",onReady:Ye,onFeatureLoading:t[0]||(t[0]=a=>Ue.value=a),onFeatureInfo:Pi,onMapClick:yi,onViewChange:di},null,8,["active","active-layer","enable-imagery-feature-pick"])),[[Io,re.value]]):Y("",!0),t[13]||(t[13]=M("div",{class:"home-map-scrim"},null,-1)),M("div",ss,[Vt(Nr,{"model-value":K.value,topics:At,"onUpdate:modelValue":ui},null,8,["model-value"])]),ta.value?(_(),E("div",{key:1,class:"home-map-feature-info",style:St(ln.value)},[Vt(Br,{title:un.value,feature:ne.value,empty:Le.value,error:Fe.value,loading:Ue.value,width:et(rn),height:sn.value,rows:Ha.value,closable:"",onClose:he},null,8,["title","feature","empty","error","loading","width","height","rows"])],4)):Y("",!0),M("div",ls,[M("div",us,[(_(!0),E(He,null,Ge(gn.value,a=>(_(),Ie(Eo,{key:a.key,class:"home-card left-card",title:a.title,width:et(Ra),height:a.height},{default:wa(()=>[a.option?(_(),Ie(et(xa),{key:0,ref_for:!0,ref:o=>ra(a.key,o),class:"home-chart home-town-column-chart",option:a.option,autoresize:!0},null,8,["option"])):(_(),Ie(jo,{key:1,panel:a,compact:"","column-label-standard":ho(a),"visual-version":"v21"},null,8,["panel","column-label-standard"]))]),_:2},1032,["title","width","height"]))),128))])]),M("div",cs,[M("div",ds,[(_(!0),E(He,null,Ge(yn.value,a=>(_(),Ie(Eo,{key:a.key,class:tt(["home-card","right-card",{"home-video-card":a.type==="video"}]),title:a.title,width:et(Ra),height:a.height},{extra:wa(()=>[a.type==="video"||a.key==="home-town-balance-gauge"?(_(),E("button",{key:0,class:"home-card-more",type:"button","aria-label":a.type==="video"?"查看全部基地监控":"查看全部乡镇草畜平衡",onClick:o=>a.type==="video"?Rn():Fn()},[...t[3]||(t[3]=[Oi(" 更多 ",-1),M("span",{"aria-hidden":"true"},"›",-1)])],8,fs)):Y("",!0)]),default:wa(()=>[a.type==="video"?(_(),E("div",hs,[M("button",{class:"home-video-nav home-video-prev",type:"button","aria-label":"上一路监控",disabled:qe.value.length<=1,onClick:_n},"‹",8,ms),M("div",{class:tt(["home-video-grid",{"is-single":za.value.length<=1}])},[(_(!0),E(He,null,Ge(za.value,o=>(_(),E("div",{key:o.key,ref_for:!0,ref:i=>Ya(i,o),"data-video-index":o.index,class:tt(["home-video-screen",{"is-active":o.isActive,"is-playing":la(o.index),"is-loading":Ot(o.index)}]),style:St(ao(o.live,o.isActive,o.index)),role:"button",tabindex:"0",onClick:i=>ro(o.index,i),onKeydown:[jt(_e(i=>Be(o.index),["prevent"]),["enter"]),jt(_e(i=>Be(o.index),["prevent"]),["space"])]},[t[4]||(t[4]=M("div",{class:"home-video-player-host"},null,-1)),Ot(o.index)?(_(),E("div",gs,"加载中")):Y("",!0),Qe(o.index)?(_(),E("div",ys,D(Qe(o.index)),1)):Y("",!0),o.live.hdPlayUrl&&(!to(o.index)||Qe(o.index))?(_(),E("button",{key:2,class:"home-video-hit",type:"button","aria-label":"播放监控",onClick:_e(i=>Be(o.index),["stop"])},null,8,vs)):Y("",!0),M("div",bs,D(o.live.title),1)],46,ps))),128))],2),M("button",{class:"home-video-nav home-video-next",type:"button","aria-label":"下一路监控",disabled:qe.value.length<=1,onClick:En},"›",8,ws)])):a.key==="yak-forecast-trend"?(_(),E("div",xs,[M("div",Ss,[(_(),E(He,null,Ge(ea,o=>M("button",{key:o.key,type:"button",class:tt({active:o.key===Jt.value}),onClick:i=>Jt.value=o.key},D(o.label),11,Ms)),64))]),Vt(et(xa),{ref_for:!0,ref:o=>ra(a.key,o),class:"home-chart home-forecast-kline-chart",option:a.option,autoresize:!0},null,8,["option"])])):a.option?(_(),Ie(et(xa),{key:2,ref_for:!0,ref:o=>ra(a.key,o),class:"home-chart",option:a.option,autoresize:!0},null,8,["option"])):a.key==="home-town-balance-gauge"?(_(),E("div",ks,[_t.value.length?Y("",!0):(_(),E("div",Cs,[t[5]||(t[5]=M("i",null,null,-1)),M("span",null,D(cn.value),1)])),(_(!0),E(He,null,Ge(_t.value,(o,i)=>(_(),E("div",{key:o.key,class:tt(["home-balance-gauge-card",{"is-active":i===dn.value}]),style:St(lo(o))},[M("div",Ps,[M("strong",null,D(o.status),1)]),M("div",Ls,[M("div",Ts,[M("strong",null,D(j(o.value)),1),t[6]||(t[6]=M("em",null,"%",-1))])]),M("div",As,D(o.name),1),M("div",Is,D(o.extra),1)],6))),128))])):(_(),Ie(jo,{key:4,panel:a,compact:"","column-label-standard":ho(a),"visual-version":"v21"},null,8,["panel","column-label-standard"]))]),_:2},1032,["class","title","width","height"]))),128))])]),Q.value?(_(),E("div",{key:2,class:"home-more-modal",role:"dialog","aria-modal":"true","aria-label":"全部基地监控",onClick:_e(Nt,["self"])},[M("section",{class:"home-more-dialog home-video-dialog","data-monitoring-updated-at":_a.value},[M("header",Es,[M("div",null,[t[7]||(t[7]=M("h2",null,"基地监控",-1)),M("p",null,"共 "+D(ae.value.length)+" 路,在线 "+D(hn.value)+" 路",1)]),M("button",{type:"button",title:"关闭","aria-label":"关闭",onClick:Nt},"×")]),Va.value.length?(_(),E("div",Rs,[(_(!0),E(He,null,Ge(Va.value,a=>(_(),E("div",{key:a.key,ref_for:!0,ref:o=>Ya(o,a),"data-video-index":a.index,class:tt(["home-video-modal-item home-video-screen",{"is-active":a.index===$.value,"is-playing":la(a.index),"is-loading":Ot(a.index),"is-offline":a.live.status!=="直播中"}]),style:St(ao(a.live,a.index===$.value,a.index)),role:"button",tabindex:"0",onClick:o=>ro(a.index,o),onKeydown:[jt(_e(o=>Be(a.index),["prevent"]),["enter"]),jt(_e(o=>Be(a.index),["prevent"]),["space"])]},[t[8]||(t[8]=M("div",{class:"home-video-player-host"},null,-1)),Ot(a.index)?(_(),E("div",Os,"加载中")):Y("",!0),Qe(a.index)?(_(),E("div",Ns,D(Qe(a.index)),1)):Y("",!0),a.live.hdPlayUrl&&(!to(a.index)||Qe(a.index))?(_(),E("button",{key:2,class:"home-video-hit",type:"button","aria-label":"播放监控",onClick:_e(o=>Be(a.index),["stop"])},null,8,Bs)):Y("",!0),M("span",Hs,D(a.live.title),1)],46,Fs))),128))])):(_(),E("div",Gs,"暂无监控数据")),gt.value>1?(_(),E("footer",$s,[M("button",{type:"button",disabled:oe.value<=1,onClick:t[1]||(t[1]=a=>oo(oe.value-1))},"上一页",8,Ds),M("span",null,D(oe.value)+" / "+D(gt.value),1),M("button",{type:"button",disabled:oe.value>=gt.value,onClick:t[2]||(t[2]=a=>oo(oe.value+1))},"下一页",8,zs)])):Y("",!0)],8,_s)])):Y("",!0),(_(),Ie(Ni,{to:"body"},[de.value!==null?(_(),E("div",Vs,[M("div",{ref_key:"homeVideoWebStageRef",ref:A,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)])):Y("",!0)])),Yt.value?(_(),E("div",{key:3,class:"home-more-modal",role:"dialog","aria-modal":"true","aria-label":"全部乡镇草畜平衡",onClick:_e(Bt,["self"])},[M("section",js,[M("header",Ws,[M("div",null,[t[10]||(t[10]=M("h2",null,"全县乡镇草畜平衡",-1)),M("p",null,"全部 "+D(It.value.length)+" 个乡镇,理论承载、实际载畜、超载数量与超载率统一按结果库口径",1)]),M("button",{type:"button",title:"关闭","aria-label":"关闭",onClick:Bt},"×")]),M("div",Us,[(_(!0),E(He,null,Ge(It.value,a=>(_(),E("article",{key:a.key,class:"home-balance-modal-item",style:St(lo(a))},[M("div",Ks,[M("strong",null,D(a.name),1),M("span",null,D(a.status),1)]),M("div",qs,[M("strong",null,D(j(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,D(a.extra),1)],4))),128))])])])):Y("",!0)]))}};export{xl as default};