var si=Object.defineProperty,li=Object.defineProperties;var ui=Object.getOwnPropertyDescriptors;var vo=Object.getOwnPropertySymbols;var ci=Object.prototype.hasOwnProperty,di=Object.prototype.propertyIsEnumerable;var yo=(y,n,i)=>n in y?si(y,n,{enumerable:!0,configurable:!0,writable:!0,value:i}):y[n]=i,$=(y,n)=>{for(var i in n||(n={}))ci.call(n,i)&&yo(y,i,n[i]);if(vo)for(var i of vo(n))di.call(n,i)&&yo(y,i,n[i]);return y},j=(y,n)=>li(y,ui(n));var se=(y,n,i)=>new Promise((l,s)=>{var d=h=>{try{m(i.next(h))}catch(w){s(w)}},g=h=>{try{m(i.throw(h))}catch(w){s(w)}},m=h=>h.done?l(h.value):Promise.resolve(h.value).then(d,g);m((i=i.apply(y,n)).next())});import{h as $o,w as pt,o as T,c as I,a as b,d as O,a7 as fi,k as hi,a8 as mi,g as E,q as pi,A as q,a9 as dt,t as G,j as K,s as bo,v as wo,b as ca,C as Pe,K as Ue,F as Ce,y as Le,u as ft,x as da,B as gi,n as ht,e as Bt,f as Te,aa as vi,L as Ft}from"./index-1786807848259.js";import{l as xo,g as yi,E as bi}from"./live-scene-1-60a25a2c-1786807848259.js";import{H as So}from"./index.esm.min-024ee703-1786807848259.js";import{_ as ko}from"./index-0eddac6c-1786807848259.js";import{h as wi,a as Do,g as fa,C as xi,H as Si,b as ki,f as Mi,c as Pi,d as Ci,M as Li}from"./index-80cb981f-1786807848259.js";import{O as Ti,P as He,a as le,D as Ye,C as me,A as we,b as te,e as Ai,F as _i,G as ye,c as Ii,d as Ei,f as Oi,g as Mo,L as Po,V as ee,h as Co,R as be,B as Ri,S as ha,i as Bi,j as Fi,k as Ni,l as Hi,N as Gi,Q as $i,T as Di,m as Vi,n as Lo,o as To,p as zi,q as Ao,r as ji}from"./screen2Standard-03f7f908-1786807848259.js";import{M as Ki,g as Wi,h as Ui,L as qi,B as _o,a as ma,E as Qi,G as Yi,D as Ji,b as Zi,l as pa,P as Io,c as Eo,d as Xi}from"./yakApi-0d53b9e4-1786807848259.js";import{g as Je}from"./index-db918426-1786807848259.js";import{R as er,r as tr,a as ar,c as or,o as nr,s as ir,p as rr,b as Oo,d as sr,h as lr,g as Ro,e as ur,f as cr,i as dr,j as fr,k as hr,l as mr,m as pr,n as gr,_ as vr}from"./TopicSwitcher-c91bad20-1786807848259.js";import{_ as yr,a as Bo}from"./FeatureInfoPanel-9b5cdecf-1786807848259.js";import{b as br,a as wr,g as xr}from"./resourceDetailRows-4a1c39d1-1786807848259.js";import{g as Sr,a as kr}from"./layers-3f51b190-1786807848259.js";import{w as mt,f as Mr}from"./chartTheme-7114e4ea-1786807848259.js";import{c as Pr,F as Cr}from"./featurePanelLayout-f3191169-1786807848259.js";import"./_plugin-vue_export-helper-c27b6911-1786807848259.js";class Lr extends Ti{constructor(n,i){super(),this.config=Object.assign({color1:16566615,color2:16777215},i),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,i=new He(1.5,1.5,1),l=new He(1,3,1);l.translate(0,1,0);let s=new le({color:n,transparent:!0,fog:!1,side:Ye,depthWrite:!1}),d=s.clone();d.map=this.assets.instance.getResource("focusArrows");let g=s.clone();g.map=this.assets.instance.getResource("focusBar");let m=s.clone();m.map=this.assets.instance.getResource("focusBg");let h=s.clone();h.color=new me(this.config.color2),h.map=this.assets.instance.getResource("focusMidQuan");let w=s.clone();w.map=this.assets.instance.getResource("focusMoveBg"),w.blending=we;let L=new te(i,d),M=new te(l,g);M.rotation.x=Math.PI/2;let B=M.clone();B.rotation.y=Math.PI/2;let k=new te(i,m),S=new te(i,h),A=new te(i,w),H=[S,k,L,A,M,B];H.map(W=>{W.renderOrder=99}),this.add(...H);let R=0;A.scale.setScalar(R),this.animateElements={focusMidQuan:S,focusArrows:L,focusMoveBg:A},this.startAnimate()}startAnimate(){let n=Je.to(this.animateElements.focusMidQuan.rotation,{z:2*Math.PI,duration:8,repeat:-1,ease:"none"}),i=Je.to(this.animateElements.focusArrows.rotation,{z:2*Math.PI,duration:5,repeat:-1,ease:"none"}),l=Je.to(this.animateElements.focusMoveBg.scale,{x:1.5,y:1.5,z:1.5,duration:2.5,repeat:-1,ease:"none"}),s=Je.to(this.animateElements.focusMoveBg.material,{opacity:0,duration:2.5,repeat:-1,ease:"none"});this.gsapObjects=[n,i,l,s]}pausedAnimate(){this.gsapObjects.map(n=>{n.paused=!0})}destroy(){this.gsapObjects.map(n=>{n.kill()}),Ai(this)}}const Tr=wi.map(y=>$({},y)),Fo=Do.map(y=>$({},y)),Ar=Do.map(y=>{var n,i;return{name:y.name,value:y.value,lng:(n=y.center)==null?void 0:n[0],lat:(i=y.center)==null?void 0:i[1]}}),_r=[{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 ga(y){return y.sort((n,i)=>i.value-n.value),y}function Ir(y){return y?typeof y=="string"?JSON.parse(y):y:null}function va(y){const n=Ir(y);return n!=null&&n.features&&n.features.forEach(i=>{var l;((l=i.geometry)==null?void 0:l.type)==="Polygon"&&(i.geometry.coordinates=[i.geometry.coordinates])}),n}function Er(y,n){var i;try{return(i=y==null?void 0:y.getResource)==null?void 0:i.call(y,n)}catch(l){return null}}function Or(y,n,i){const l=Number(y);return Number.isFinite(l)?Math.max(n,Math.min(i,l)):n}class Rr extends Ki{constructor(n,i,l={}){var s;super(n,{maxPixelRatio:(s=l.maxPixelRatio)!=null?s:l.showDataOverlays===!1?1.35:void 0,antialias:l.antialias}),this.options=l||{},this.geoProjectionCenter=[102.6305459723107,32.72169252326339],this.geoProjectionScale=650,this.backgroundProjectionCenter=l.backgroundProjectionCenter||this.geoProjectionCenter,this.backgroundProjectionScale=l.backgroundProjectionScale||120,this.geoProjectionFn=Wi().center(this.geoProjectionCenter).scale(this.geoProjectionScale).translate([0,0]),this.flyLineCenter=[102.60242339873115,32.83022561372293],this.depth=.5,this.clicked=!1,this.sceneMode=l.sceneMode||"default",this.showDataOverlays=l.showDataOverlays!==!1,this.mapAnimationDone=!1,this.sceneTweens=[],this.sceneTimers=[],this.scene.fog=new _i(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 Ui(this.renderer.instance,this.camera.instance,this.canvas),this.assets=i,this.staticMapData={china:va(Er(this.assets.instance,"china")),mapJson:va(this.assets.instance.getResource("mapJson")),mapStroke:va(this.assets.instance.getResource("mapStroke"))},this.initEnvironment(),this.init()}addSceneTween(n){var i;return n&&(this.sceneTweens.push(n),this.scenePaused&&((i=n.pause)==null||i.call(n)),n)}addSceneTimer(n){return n&&this.sceneTimers.push(n),n}init(){this.labelGroup=new ye,this.label3d=new qi(this),this.labelGroup.rotation.x=-Math.PI/2,this.scene.add(this.labelGroup),this.flyLineFocusGroup=new ye,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=Je.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((i,l)=>{let s=i.element.querySelector(".other-label");n.to(s,{duration:1,delay:.1*l,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 i,l;this.showDataOverlays&&this.flyLineFocusGroup&&(this.flyLineFocusGroup.visible=!0),this.mapAnimationDone=!0,this.applySceneMode(),(l=(i=this.options).onPlayComplete)==null||l.call(i)}},"focusMapOpacity"),(this.allBar||[]).map((i,l)=>{if(i.userData.name==="邛溪镇")return!1;n.to(i.scale,{duration:1,delay:.1*l,x:1,y:1,z:1,ease:"circ.out"},"bar")}),(this.allBarMaterial||[]).map((i,l)=>{n.to(i,{duration:1,delay:.1*l,opacity:1,ease:"circ.out"},"bar")}),(this.allProvinceLabel||[]).map((i,l)=>{let s=i.element.querySelector(".provinces-label-wrap"),d=i.element.querySelector(".number .value"),g=Number(d.innerText),m={score:0};n.to(s,{duration:1,delay:.2*l,translateY:0,opacity:1,ease:"circ.out"},"bar"),n.to(m,{duration:1,delay:.2*l,score:g,onUpdate:h},"bar");function h(){d.innerText=m.score.toFixed(0)}}),(this.allGuangquan||[]).map((i,l)=>{n.to(i.children[0].scale,{duration:1,delay:.1*l,x:1,y:1,z:1,ease:"circ.out"},"bar"),n.to(i.children[1].scale,{duration:1,delay:.1*l,x:1,y:1,z:1,ease:"circ.out"},"bar")})}initEnvironment(){let n=new Ii(16777215,5);this.scene.add(n);let i=new Ei(16777215,5);i.position.set(-30,6,-8),i.castShadow=!0,i.shadow.radius=20,i.shadow.mapSize.width=1024,i.shadow.mapSize.height=1024,this.scene.add(i),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 i=new Oi(1924702,n.intensity,n.distance);i.position.set(n.x,n.y,n.z),this.scene.add(i)}createMap(){let n=new ye,i=new ye;this.focusMapGroup=i;let{china:l,chinaTopLine:s}=this.createChina(),{map:d,mapTop:g,mapLine:m}=this.createProvince();l==null||l.setParent(n),s==null||s.setParent(n),this.createDiffuse(),d.setParent(i),g.setParent(i),m.setParent(i),i.position.set(0,0,-.01),i.scale.set(1,1,0),n.add(i),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 m;let n={chinaBgMaterialColor:"#152c47",lineColor:"#3f82cd"},i=this.staticMapData.china;if(!((m=i==null?void 0:i.features)!=null&&m.length))return{china:null,chinaTopLine:null};let l=new Mo({color:new me(n.chinaBgMaterialColor),transparent:!0,opacity:this.showDataOverlays?1:.54}),s=new _o(this,{data:i,geoProjectionCenter:this.backgroundProjectionCenter,geoProjectionScale:this.backgroundProjectionScale,merge:!0,material:l,renderOrder:2}),d=new Po({color:n.lineColor}),g=new ma(this,{data:i,geoProjectionCenter:this.backgroundProjectionCenter,geoProjectionScale:this.backgroundProjectionScale,material:d,renderOrder:3});return g.lineGroup.position.z+=.01,{china:s,chinaTopLine:g}}createProvince(){let n=this.staticMapData.mapJson,[i,l]=this.createProvinceMaterial();this.focusMapTopMaterial=i,this.focusMapSideMaterial=l;let s=new Qi(this,{geoProjectionCenter:this.geoProjectionCenter,geoProjectionScale:this.geoProjectionScale,position:new ee(0,0,.11),data:n,depth:this.depth,topFaceMaterial:i,sideMaterial:l,renderOrder:9}),d=new Co({color:16777215,transparent:!0,opacity:.5});this.createTerrainSurfaceShader(d),this.defaultMaterial=d,this.defaultLightMaterial=this.defaultMaterial.clone(),this.defaultLightMaterial.color=new me("rgba(115,208,255,1)"),this.defaultLightMaterial.opacity=.8;let g=new _o(this,{geoProjectionCenter:this.geoProjectionCenter,geoProjectionScale:this.geoProjectionScale,position:new ee(0,0,this.depth+.22),data:n,material:d,renderOrder:2});g.mapGroup.children.map(h=>{h.children.map(w=>{w.type==="Mesh"&&this.eventElement.push(w)})}),this.mapLineMaterial=new Po({color:16777215,opacity:0,transparent:!0,fog:!1});let m=new ma(this,{geoProjectionCenter:this.geoProjectionCenter,geoProjectionScale:this.geoProjectionScale,data:n,material:this.mapLineMaterial,renderOrder:3});return m.lineGroup.position.z+=this.depth+.23,{map:s,mapTop:g,mapLine:m}}createProvinceMaterial(){let n=new Mo({color:16777215,transparent:!0,opacity:0,fog:!1,side:Ye});n.onBeforeCompile=s=>{s.uniforms=j($({},s.uniforms),{uColor1:{value:new me(2780818)},uColor2:{value:new me(1058614)}}),s.vertexShader=s.vertexShader.replace("void main() {",` attribute float alpha; varying vec3 vPosition; varying float vAlpha; void main() { vAlpha = alpha; vPosition = position; `),s.fragmentShader=s.fragmentShader.replace("void main() {",` varying vec3 vPosition; varying float vAlpha; uniform vec3 uColor1; uniform vec3 uColor2; void main() { `),s.fragmentShader=s.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 i=this.assets.instance.getResource("side");i.wrapS=be,i.wrapT=be,i.repeat.set(1,1.5),i.offset.y+=.065;let l=new Co({color:16777215,map:i,fog:!1,opacity:0,side:Ye});return this.time.on("tick",()=>{i.offset.y+=.005}),l.onBeforeCompile=s=>{s.uniforms=j($({},s.uniforms),{uColor1:{value:new me(2780818)},uColor2:{value:new me(2780818)}}),s.vertexShader=s.vertexShader.replace("void main() {",` attribute float alpha; varying vec3 vPosition; varying float vAlpha; void main() { vAlpha = alpha; vPosition = position; `),s.fragmentShader=s.fragmentShader.replace("void main() {",` varying vec3 vPosition; varying float vAlpha; uniform vec3 uColor1; uniform vec3 uColor2; void main() { `),s.fragmentShader=s.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,l]}createTerrainSurfaceShader(n){n.onBeforeCompile=i=>{i.uniforms=j($({},i.uniforms),{uTerrainColor1:{value:new me(807272)},uTerrainColor2:{value:new me(1619414)},uTerrainColor3:{value:new me(7074015)}}),i.vertexShader=i.vertexShader.replace("void main() {",` varying vec3 vTerrainPosition; void main() { vTerrainPosition = position; `),i.fragmentShader=i.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() { `),i.fragmentShader=i.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,i=ga(Fo).filter((h,w)=>w<7);const l=new ye;this.barGroup=l;const s=.7,d=4*s,g=i[0].value;this.allBar=[],this.allBarMaterial=[],this.allGuangquan=[],this.allProvinceLabel=[],i.map((h,w)=>{let L=d*(h.value/g),M=new le({color:16777215,transparent:!0,opacity:0,depthTest:!1,fog:!1});new Yi(M,{uColor1:w>3?16506760:5291006,uColor2:w>3?16776948:7863285,size:L,dir:"y"});const B=new Ri(.1*s,.1*s,L);B.translate(0,0,L/2);const k=new te(B,M);k.renderOrder=5;let S=k,[A,H]=this.geoProjection(h.centroid);S.position.set(A,-H,this.depth+.45),S.scale.set(1,1,0),S.userData=$({},h);let R=this.createQuan(new ee(A,this.depth+.44,H),w),W=this.createHUIGUANG(L,w>3?16776948:7863285);S.add(...W),l.add(S),l.rotation.x=-Math.PI/2;let F=m(h,w,new ee(A,-H,this.depth+1.1+L));this.allBar.push(S),this.allBarMaterial.push(M),this.allGuangquan.push(R),this.allProvinceLabel.push(F)}),this.scene.add(l);function m(h,w,L){let M=n.label3d.create("","provinces-label",!1);return M.init(`
${h.name}
${h.value}km²
${w+1}
`,L),n.label3d.setLabelStyle(M,.01,"x"),M.setParent(n.labelGroup),M.userData=j($({},h),{labelType:"ranking-label"}),M}}createEvent(){let n=[];this.selectedRegion=null;const i=(s,d=!1)=>{var g,m,h;!d&&((m=(g=this.selectedRegion)==null?void 0:g.userData)==null?void 0:m.name)===((h=s==null?void 0:s.userData)==null?void 0:h.name)||s.traverse(w=>{w.isMesh&&(w.material=this.defaultMaterial)})},l=s=>{s.traverse(d=>{d.isMesh&&(d.material=this.defaultLightMaterial)})};this.eventElement.map(s=>{this.interactionManager.add(s),s.addEventListener("mousedown",d=>{var m;const g=((m=d.target)==null?void 0:m.parent)||d.target;this.selectedRegion&&this.selectedRegion!==g&&i(this.selectedRegion,!0),this.selectedRegion=g,l(g),this.emitTownClick((g==null?void 0:g.userData)||{})}),s.addEventListener("mouseover",d=>{n.includes(d.target.parent)||n.push(d.target.parent),document.body.style.cursor="pointer",l(d.target.parent)}),s.addEventListener("mouseout",d=>{n=n.filter(g=>g.userData.name!==d.target.parent.userData.name),n.length>0&&n[n.length-1],i(d.target.parent),document.body.style.cursor="default"})})}createHUIGUANG(n,i){let l=new He(.35,n);l.translate(0,n/2,0);const s=this.assets.instance.getResource("huiguang");s.colorSpace=ha,s.wrapS=be,s.wrapT=be;let d=new le({color:i,map:s,transparent:!0,opacity:.4,depthWrite:!1,side:Ye,blending:we}),g=new te(l,d);g.renderOrder=10,g.rotateX(Math.PI/2);let m=g.clone(),h=g.clone();return m.rotateY(Math.PI/180*60),h.rotateY(Math.PI/180*120),[g,m,h]}createQuan(n,i){const l=this.assets.instance.getResource("guangquan1"),s=this.assets.instance.getResource("guangquan2");let d=new He(.5,.5),g=new le({color:16777215,map:l,alphaMap:l,opacity:1,transparent:!0,depthTest:!1,fog:!1,blending:we}),m=new le({color:16777215,map:s,alphaMap:s,opacity:1,transparent:!0,depthTest:!1,fog:!1,blending:we}),h=new te(d,g),w=new te(d,m);return h.renderOrder=6,w.renderOrder=6,h.rotateX(-Math.PI/2),w.rotateX(-Math.PI/2),h.position.copy(n),w.position.copy(n),w.position.y-=.001,h.scale.set(0,0,0),w.scale.set(0,0,0),this.quanGroup=new ye,this.quanGroup.add(h,w),this.scene.add(this.quanGroup),this.time.on("tick",()=>{h.rotation.z+=.05}),this.quanGroup}createDiffuse(){let n=new He(200,200),i=new le({color:0,depthWrite:!1,transparent:!0,blending:Bi});i.blendEquation=Fi,i.blendSrc=Ni,i.blendDst=Hi,new Ji({material:i,time:this.time,size:60,diffuseSpeed:8,diffuseColor:7442830,diffuseWidth:2,callback:s=>{const d=setTimeout(()=>{this.addSceneTween(Je.to(s.uniforms.uTime,{value:4,repeat:-1,duration:6,ease:"power1.easeIn"}))},3);this.addSceneTimer(d)}});let l=new te(n,i);l.renderOrder=3,l.rotation.x=-Math.PI/2,l.position.set(0,.21,0),this.scene.add(l)}createGrid(){new Zi(this,{gridSize:68,gridDivision:28,gridColor:2123149,shapeSize:.58,shapeColor:4035005,pointSize:.12,pointColor:1805508,pointLayout:{row:170,col:170},pointBlending:we})}createBottomBg(){let n=new He(42,42);const i=this.assets.instance.getResource("ocean");i.colorSpace=ha,i.wrapS=be,i.wrapT=be,i.repeat.set(1,1);let l=new le({map:i,opacity:1,fog:!1}),s=new te(n,l);s.rotation.x=-Math.PI/2,s.position.set(0,-.7,0),this.scene.add(s)}createChinaBlurLine(){let n=new He(147,147);const i=this.assets.instance.getResource("chinaBlurLine");i.colorSpace=ha,i.wrapS=be,i.wrapT=be,i.generateMipmaps=!1,i.minFilter=Gi,i.repeat.set(1,1);let l=new le({color:4162253,alphaMap:i,transparent:!0,opacity:.5}),s=new te(n,l);s.rotateX(-Math.PI/2),s.position.set(-19.3,-.5,-19.7),this.scene.add(s)}createLabel(){let n=this,i=this.labelGroup,l=this.label3d,s=[];if(Tr.map(m=>{if(m.hide==!0)return!1;let h=d(m,l,i);s.push(h)}),this.showDataOverlays){let m=g({icon:pa,center:[103.13,33.01],width:"40px",height:"40px",reflect:!0},l,i),h=g({icon:pa,center:[102.03,32.44],width:"20px",height:"20px",reflect:!1},l,i);s.push(m),s.push(h)}this.otherLabel=s;function d(m,h,w){let L=h.create("",`china-label ${m.blur?" blur":""}`,!1);const[M,B]=n.geoProjection(m.center),k=n.showDataOverlays?``:"";return L.init(`
${k}${m.name}
`,new ee(M,-B,n.depth+.85)),h.setLabelStyle(L,.018,"x"),L.setParent(w),L.userData=j($({},m),{labelType:"town-label",baseScale:.018}),L}function g(m,h,w){let L=h.create("",`decoration-label ${m.reflect?" reflect":""}`,!1);const[M,B]=n.geoProjection(m.center);return L.init(`
`,new ee(M,-B,.4)),h.setLabelStyle(L,.02,"x"),L.setParent(w),L}}createRotateBorder(){let n=12,i=this.assets.instance.getResource("rotationBorder1"),l=this.assets.instance.getResource("rotationBorder2"),s=new Io(this,{width:n*1.178,needRotate:!0,rotateSpeed:.001,material:new le({map:i,color:4763647,transparent:!0,opacity:.2,side:Ye,depthWrite:!1,blending:we}),position:new ee(0,.28,0)});s.instance.rotation.x=-Math.PI/2,s.instance.renderOrder=6,s.instance.scale.set(0,0,0),s.setParent(this.scene);let d=new Io(this,{width:n*1.116,needRotate:!0,rotateSpeed:-.004,material:new le({map:l,color:4763647,transparent:!0,opacity:.4,side:Ye,depthWrite:!1,blending:we}),position:new ee(0,.3,0)});d.instance.rotation.x=-Math.PI/2,d.instance.renderOrder=6,d.instance.scale.set(0,0,0),d.setParent(this.scene),this.rotateBorder1=s.instance,this.rotateBorder2=d.instance}createFlyLine(){this.flyLineGroup=new ye,this.flyLineGroup.visible=!1,this.scene.add(this.flyLineGroup);const n=this.assets.instance.getResource("mapFlyline");n.wrapS=n.wrapT=be,n.repeat.set(.5,2);const i=.1,l=32,s=2,d=!1;let[g,m]=this.geoProjection(this.flyLineCenter),h=new ee(g,-m,0);const w=new le({map:n,color:2781042,transparent:!0,fog:!1,opacity:1,depthTest:!1,blending:we});this.flyLineMaterial=w,this.flyLineTexture=n,this.time.on("tick",()=>{n.offset.x-=this.sceneMode==="trade"?.014:.006}),Fo.filter((L,M)=>M<7).map(L=>{let[M,B]=this.geoProjection(L.centroid),k=new ee(M,-B,0);const S=new ee;S.addVectors(h,k).multiplyScalar(.5),S.setZ(3);const A=new $i(h,S,k),H=new Di(A,l,i,s,d),R=new te(H,w);R.rotation.x=-Math.PI/2,R.position.set(0,this.depth+.44,0),R.renderOrder=21,this.flyLineGroup.add(R)})}createFocus(){let n=new Lr(this,{color1:12451325,color2:12451325}),[i,l]=this.geoProjection(this.flyLineCenter);n.position.set(i,-l,this.depth+.44),n.scale.set(1,1,1),this.flyLineFocusGroup.add(n)}createParticles(){this.particles=new Eo(this,{num:10,range:30,dir:"up",speed:.05,material:new Vi({map:Eo.createTexture(),size:1,color:61166,transparent:!0,opacity:1,depthTest:!1,depthWrite:!1,vertexColors:!0,blending:we,sizeAttenuation:!0})}),this.particleGroup=new ye,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 ye,this.scatterGroup.visible=!1,this.scatterGroup.rotation.x=-Math.PI/2,this.scene.add(this.scatterGroup);const n=this.assets.instance.getResource("arrow"),i=new Lo({map:n,color:16776948,fog:!1,transparent:!0,depthTest:!1});let l=ga(Ar),s=l[0].value;l.map(d=>{const g=new To(i);g.renderOrder=23;let m=.1+d.value/s*.2;g.scale.set(m,m,m);let[h,w]=this.geoProjection([d.lng,d.lat]);g.position.set(h,-w,this.depth+.45),g.userData.position=[h,-w,this.depth+.45],this.scatterGroup.add(g)})}createInfoPoint(){let n=this;this.InfoPointGroup=new ye,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 i=this.label3d;const l=this.assets.instance.getResource("point");let s=[16776948,7863285],d=ga(_r),g=d[0].value;d.map((h,w)=>{const L=new Lo({map:l,color:s[w%s.length],fog:!1,transparent:!0,depthTest:!1}),M=new To(L);M.renderOrder=23;let B=.7+h.value/g*.4;M.scale.set(B,B,B);let[k,S]=this.geoProjection([h.lng,h.lat]),A=[k,-S,this.depth+.7];M.position.set(...A),M.userData.position=[...A],M.userData={position:[k,-S,this.depth+.7],name:h.name,value:h.value,level:h.level,index:w},this.InfoPointGroup.add(M);let H=m(h,i,this.InfoPointGroup);this.infoLabelElement.push(H),this.interactionManager.add(M),M.addEventListener("mousedown",R=>{if(this.clicked||!this.InfoPointGroup.visible)return!1;this.clicked=!0,this.emitTownClick(R.target.userData,"info-point"),this.infoPointIndex=R.target.userData.index,this.infoLabelElement.map(W=>{W.visible=!1}),H.visible=!0,this.createInfoPointLabelLoop()}),M.addEventListener("mouseup",R=>{this.clicked=!1}),M.addEventListener("mouseover",R=>{document.body.style.cursor="pointer"}),M.addEventListener("mouseout",R=>{document.body.style.cursor="default"})});function m(h,w,L){let M=w.create("","info-point",!0);const[B,k]=n.geoProjection([h.lng,h.lat]);return M.init(`
名称${h.name}
面积${h.value}km²
类型${h.level}
`,new ee(B,-k,n.depth+1.9)),w.setLabelStyle(M,.015,"x"),M.setParent(L),M.visible=!1,M}}emitTownClick(n={},i="region"){var s,d;const l=n.name||n.fullName;l&&((d=(s=this.options)==null?void 0:s.onTownClick)==null||d.call(s,j($({},n),{name:l,source:i})))}setSceneMode(n="default"){this.sceneMode=n,this.applySceneMode()}setDataOverlaysVisible(n=!0){this.showDataOverlays=!!n,this.applySceneMode()}updateTownLabelVisibility(){const n=new Set((this.allProvinceLabel||[]).map(l=>{var s;return(s=l==null?void 0:l.userData)==null?void 0:s.name}).filter(Boolean)),i=this.showDataOverlays&&this.sceneMode!=="trade";(this.otherLabel||[]).forEach(l=>{var s;((s=l==null?void 0:l.userData)==null?void 0:s.labelType)==="town-label"&&(l.visible=!(i&&n.has(l.userData.name)))})}applySceneMode(){var i,l,s,d;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),(i=this.allProvinceLabel)==null||i.forEach(g=>{g.visible=!1}),(l=this.allGuangquan)==null||l.forEach(g=>{g.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),(s=this.allProvinceLabel)==null||s.forEach(g=>{g.visible=!n}),(d=this.allGuangquan)==null||d.forEach(g=>{g.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((i,l)=>{this.infoPointIndex===l?i.visible=!0:i.visible=!1})},3e3))}createStorke(){const n=this.staticMapData.mapStroke,i=this.assets.instance.getResource("pathLine3");i.wrapS=i.wrapT=be,i.repeat.set(2,1);let l=new ma(this,{geoProjectionCenter:this.geoProjectionCenter,geoProjectionScale:this.geoProjectionScale,position:new ee(0,0,this.depth+.24),data:n,material:new le({color:2868444,map:i,alphaMap:i,fog:!1,transparent:!0,opacity:1,blending:we}),type:"Line3",renderOrder:22,tubeRadius:.03});this.focusMapGroup.add(l.lineGroup),this.time.on("tick",()=>{i.offset.x+=.005})}geoProjection(n){return this.geoProjectionFn(n)}updateTownLabelScale(){var m,h,w;const n=this.otherLabel||[],i=(m=this.camera)==null?void 0:m.instance,l=(w=(h=this.camera)==null?void 0:h.controls)==null?void 0:w.target;if(!n.length||!i||!l)return;const s=i.position.distanceTo(l),d=Or(s*72e-5,.011,.026),g=s>45?"0.76":s<22?"0.94":"1";n.forEach(L=>{var B,k,S;if(((B=L==null?void 0:L.userData)==null?void 0:B.labelType)!=="town-label")return;L.scale.set(d,d,d);const M=(S=(k=L.element)==null?void 0:k.querySelector)==null?void 0:S.call(k,".other-label");M&&(M.style.opacity=g)})}update(){super.update(),this.updateTownLabelScale(),this.interactionManager&&this.interactionManager.update()}pauseScene(){var n,i;this.scenePaused=!0,(i=(n=this.time)==null?void 0:n.pause)==null||i.call(n),this.sceneTweens.forEach(l=>{var s;return(s=l==null?void 0:l.pause)==null?void 0:s.call(l)}),clearInterval(this.infoPointLabelTime),this.infoPointLabelTime=null}resumeScene(){var n,i,l;this.scenePaused=!1,(i=(n=this.time)==null?void 0:n.resume)==null||i.call(n),this.sceneTweens.forEach(s=>{var d;return(d=s==null?void 0:s.resume)==null?void 0:d.call(s)}),(l=this.InfoPointGroup)!=null&&l.visible&&!this.infoPointLabelTime&&this.createInfoPointLabelLoop()}destroy(){this.pauseScene(),this.sceneTimers.forEach(n=>clearTimeout(n)),this.sceneTimers=[],this.sceneTweens.forEach(n=>{var i;return(i=n==null?void 0:n.kill)==null?void 0:i.call(n)}),this.sceneTweens=[],super.destroy(),this.label3d&&this.label3d.destroy()}}const Br={class:"map"},Fr={__name:"map",props:{sceneMode:{type:String,default:"default"},showDataOverlays:{type:Boolean,default:!0},maxPixelRatio:{type:Number,default:0}},emits:["town-click","play-complete"],setup(y,{expose:n,emit:i}){const l=O(null),s=fi(null),d=y,g=i;let m=!1;$o(()=>{B()});function h(k){var S,A,H,R;s.value||!l.value||(s.value=new Rr(l.value,k,{showDataOverlays:d.showDataOverlays,maxPixelRatio:d.maxPixelRatio||void 0,onTownClick:W=>g("town-click",W),onPlayComplete:()=>g("play-complete")}),(A=(S=s.value).setSceneMode)==null||A.call(S,d.sceneMode),(R=(H=s.value).setDataOverlaysVisible)==null||R.call(H,d.showDataOverlays),s.value.time.pause())}function w(){return se(this,null,function*(){var k,S,A,H;s.value&&(L(),!(m||s.value.mapAnimationDone)&&(m=!0,(S=(k=s.value.animateTl)==null?void 0:k.timeScale)==null||S.call(k,1),(H=(A=s.value.animateTl)==null?void 0:A.play)==null||H.call(A)))})}function L(){var k,S;s.value&&((S=(k=s.value).resumeScene)==null||S.call(k),s.value.resumeScene||s.value.time.resume())}function M(){var k,S,A,H,R,W;s.value&&((S=(k=s.value.animateTl)==null?void 0:k.pause)==null||S.call(k),(H=(A=s.value).pauseScene)==null||H.call(A),s.value.pauseScene||(W=(R=s.value.time)==null?void 0:R.pause)==null||W.call(R))}function B(){var k,S;(S=(k=s.value)==null?void 0:k.destroy)==null||S.call(k),s.value=null}return n({loadMap:h,play:w,resume:L,pause:M,destroyMap:B,canvasMap:s}),pt(()=>d.sceneMode,k=>{var S,A;(A=(S=s.value)==null?void 0:S.setSceneMode)==null||A.call(S,k)},{immediate:!0}),pt(()=>d.showDataOverlays,k=>{var S,A;(A=(S=s.value)==null?void 0:S.setDataOverlaysVisible)==null||A.call(S,k)}),(k,S)=>(T(),I("div",Br,[b("canvas",{ref_key:"canvasRef",ref:l},null,512)]))}},Nr=""+new URL("flyline6-525edf67-balabala-1786807848259.png",import.meta.url).href;class Hr{constructor(n={}){this.options=n||{},this.init()}init(){this.instance=new er,this.instance.addLoader(zi,"FileLoader");const n={type:"File",name:"china",path:fa(xi)},i=[{type:"File",name:"mapJson",path:fa(Si)},{type:"File",name:"mapStroke",path:fa(ki)},{type:"Texture",name:"rotationBorder1",path:tr},{type:"Texture",name:"rotationBorder2",path:ar},{type:"Texture",name:"chinaBlurLine",path:or},{type:"Texture",name:"ocean",path:nr},{type:"Texture",name:"side",path:ir},{type:"Texture",name:"pathLine3",path:rr}],l=[{type:"Texture",name:"flyline",path:Oo},{type:"Texture",name:"pathLine",path:Oo},{type:"Texture",name:"pathLine2",path:sr},{type:"Texture",name:"huiguang",path:lr},{type:"Texture",name:"guangquan1",path:Ro},{type:"Texture",name:"guangquan2",path:ur},{type:"Texture",name:"flyLineFocus",path:Ro},{type:"Texture",name:"mapFlyline",path:Nr},{type:"Texture",name:"arrow",path:cr},{type:"Texture",name:"point",path:dr},{type:"Texture",name:"focusArrows",path:fr},{type:"Texture",name:"focusBar",path:hr},{type:"Texture",name:"focusBg",path:mr},{type:"Texture",name:"focusMidQuan",path:pr},{type:"Texture",name:"focusMoveBg",path:gr}],s=this.options.showDataOverlays===!1?i:[n,...i,...l];this.instance.loadAll(s)}}const Gr="/openApi/screen2/home";function $r(){return se(this,null,function*(){const y=yield hi(`${Gr}/dashboard`,{timeout:2e4});if((y==null?void 0:y.success)===!1||(y==null?void 0:y.code)!==void 0&&![0,200,"0","200"].includes(y.code)){const l=new Error((y==null?void 0:y.message)||(y==null?void 0:y.msg)||"首页业务数据加载失败");throw l.code=y==null?void 0:y.code,l}const i=mi(y);if(!(i!=null&&i.hasData))throw new Error("首页业务数据缺失");return i})}const Dr={class:"home-dashboard"},Vr={key:0,class:"home-business-error",role:"alert"},zr={key:2,class:"home-slaughter-ticker","aria-label":"最新牦牛出栏动态"},jr={class:"home-slaughter-ticker-viewport"},Kr={class:"home-bottom-switcher"},Wr={class:"home-left"},Ur={class:"home-side-stack is-left"},qr={class:"home-right"},Qr={class:"home-side-stack is-right"},Yr=["aria-label","onClick"],Jr={key:0,class:"home-video-monitor"},Zr=["disabled"],Xr=["data-video-index","onClick","onKeydown"],es={key:0,class:"home-video-loading"},ts={key:1,class:"home-video-error"},as=["onClick"],os={class:"home-video-point-name"},ns=["disabled"],is={key:2,class:"home-balance-gauge-grid"},rs={key:0,class:"home-balance-empty","aria-live":"polite"},ss={class:"home-balance-gauge-head"},ls={class:"home-balance-gauge-ring"},us={class:"home-balance-gauge-value"},cs={class:"home-balance-gauge-name"},ds={class:"home-balance-gauge-extra"},fs=["data-monitoring-updated-at"],hs={class:"home-more-dialog-head"},ms={key:0,class:"home-video-modal-grid"},ps=["data-video-index","onClick","onKeydown"],gs={key:0,class:"home-video-loading"},vs={key:1,class:"home-video-error"},ys=["onClick"],bs={class:"home-video-point-name"},ws={key:1,class:"home-more-empty"},xs={key:2,class:"home-more-pager"},Ss=["disabled"],ks=["disabled"],Ms={key:0,class:"home-video-web-overlay",role:"dialog","aria-modal":"true","aria-label":"基地监控网页全屏"},Ps={class:"home-more-dialog home-balance-dialog"},Cs={class:"home-balance-modal-grid"},Ls={class:"home-balance-modal-title"},Ts={class:"home-balance-modal-value"},As="image://data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAQ5JREFUOE+1la1OQ0EQRs8kCFIQdVCCxIBpCK1AInkDHC+B4QkwvASub4GsaE0NGCRpKhGFVDQZ+Mjem9vNbkphmWTMfjNnd3b2x0iYuxuwH7wNbIewBfAGzORm5nG6ElfM3QU6AXZSkzXG3oEnMxO8thWgux8DR2tAsfxiZs/VYA38Jazi1NBvYCizv+HK4vCRyrfQgIsf7Nm6+bSnjwIeAGeZaGnXQDfoE+ABmGbixwKeAoeJAMHuv3w30ubATQb6KqDKjZPEuAXOMysZAncJbS7gJbCVEAdAKwP8AK4S2vJfgMVLLt6UDtAreWx0W8od7OJXryq16OPwR2j6+WpAyz2wDagape7vARt9AZ+G3HmhiKS3xwAAAABJRU5ErkJggg==",_s=4,No=6e4,Is=15e3,Ho=1e4,Es=6e4,ya="#ffffff",qe="#ffffff",Fe="rgba(246, 253, 255, 0.92)",Go="rgba(242, 253, 255, 0.9)",ba="rgba(218, 250, 255, 0.28)",Os=12e3,Rs=9,Ne="home-3d",Qe=9,Js={__name:"index",props:{active:{type:Boolean,default:!0}},emits:["module-stats","loading-progress","map-ready"],setup(y,{expose:n,emit:i}){const l={图斑编号:"patch_no",图斑号:"patch_no",湿地编号:"land_number",草地编号:"land_number",林地类型:"dlmc",地类:"landUseName",地类名称:"landUseName",所在乡镇:"townName",所在区域:"full_name",面积:"acreage",图斑面积:"acreage",湿地面积:"acreage",草场面积:"acreage",草原类:"grassTypeName",草原型:"grassMinType",草原等级:"grasslandLevel",草原类型:"basic_type_name",小斑干草产量:"xbGcYield",小斑鲜草产量:"xbXcYield",鲜草产量:"xcYield",干草产量:"gcYield",海拔:"elevation",地貌:"landformName",权属单位:"qsdwmc",坐落单位:"zldwmc",林班:"lin_ban",小班:"xiao_ban",森林类别:"sen_lin_lb",林种:"lin_zhong",公益林等级:"gjgyl_bhdj",保护等级:"bh_dj",质量等级:"zl_dj",优势树种:"you_shi_sz",起源:"qi_yuan",龄组:"ling_zu",郁闭度:"yu_bi_du",林地权属:"ld_qs",土地使用权属:"tdsyqs",林木权属:"lmqs",生态区位:"stqwmc",坡度等级:"slope"},s=new Set(["code","msg","message","success","data","result","grassland","wetland","woodland","basicGrassland","dyColumn","geom","wkt","geometry","the_geom","theGeom","shape","shape_leng","shape_length","length","perimeter","gid","id","objectid","object_id","fid","key_uid","bsm","ysdm"].map(e=>e.toLowerCase())),d=y,g=i,m=O(null),h=O(null),w=O(null),L=O(null),M=new Map,B=O({}),k=Ft([]),S=Ft([]),A=Ft([]),H=O([]),R=O(""),W=new Map;let F=!1,gt=!1,vt=null,Ze=null;const Q=new Map,xe=new Map,Nt=new Set,Ht=new Map;let Ae=null,Xe="",wa=!1,et=null,yt=!1,bt=null,Gt=!1,tt=0,Ge=0,at=null,ue=null,ot=!1,$t=!1,nt=0;const _e=new Map,ce=O(0),ae=O([]),xa=O(""),de=O(0),Y=O(!1),oe=O(1),it=O(!1),fe=O(null),Dt=O(!1),Vt=O([]),zt=O(!1),jt=O(""),Kt=O(!1),Sa=O(!1),U=O(""),Vo=`home-video-player-${Math.random().toString(36).slice(2)}`,pe=Ft({}),zo=["#30dcff","#27f0c0","#8bf7ff","#48cfff","#48cfff","#24f6c4"],ka=Ao.sideCardWidth,Ma=O(typeof window=="undefined"?1080:window.innerHeight);Ao.sideCardGap;const $e=E(()=>ji(Ma.value)),wt=E(()=>$e.value),jo=wt,xt=[{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}],Ko={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}},Pa={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}},z=O(Ne),J=O(null),Ie=O(!1),Me=O(!1),ne=O(null),ie=E(()=>z.value!==Ne),Wo=E(()=>d.active&&!ie.value),Ca=E(()=>{var f,p,C;const e=z.value,t=Pa[e];if(!t)return null;const a=Mi.find(x=>x.key===t.topicKey),o=Vn(t);if(!o||t.type!=="vector"&&!o.layerName&&!o.dataPath)return null;const r=Ko[e],u=t.legendKey?(o.legends||[]).find(x=>x.key===t.legendKey):null,c=Array.isArray(t.legendKeys)?t.legendKeys.map(x=>(o.legends||[]).find(P=>P.key===x)).filter(Boolean):[];if(t.type==="vector"){const x=e==="pasture"?{sourceType:"wkt-api",layerName:"",dataPath:"",fallbackPath:"",apiUrl:"/openApi/screen2/yak-industry-chain/points?stage=family-pasture&page=1&pageSize=300"}:{},P=u&&e==="pasture"?j($({},u),{match:{field:"stageKey",value:"family-pasture"}}):u;return j($($({},o),x),{activeLegend:P||o.activeLegend,activeLegends:c.length?c:o.activeLegends,cqlFilter:(u==null?void 0:u.cqlFilter)||Jo(c)||o.cqlFilter,name:`${((f=xt.find(v=>v.key===e))==null?void 0:f.name)||o.name}图层`,opacity:(p=t.opacity)!=null?p:o.opacity,homePresentationMaxOpacity:(C=t.opacity)!=null?C:.96,showPointLabels:!1,hidePointFeatures:!1})}return r?j($({},o),{name:`${(a==null?void 0:a.name)||o.name}分布`,styles:"",opacity:r.opacity,homePresentationMaxOpacity:r.maxOpacity,softMask:!1,homeGlowColor:r.glowColor,homeGlowBlur:r.glowBlur,homeGlowOpacity:r.glowOpacity,sldBody:zn(o.layerName,r)}):null}),Wt=E(()=>!!ne.value),Uo=Cr,La=E(()=>Pr({point:ne.value?Kn(ne.value):null,rowCount:J.value?Ta.value.length||ua(J.value):0,loading:Me.value,empty:Ie.value||!J.value})),qo=E(()=>La.value.height),Qo=E(()=>La.value.style),Yo=E(()=>{var t;return{grassland:"草地详情",wetland:"湿地详情",woodland:"林地详情",yak:"牦牛识别详情",pasture:"家庭牧场详情"}[z.value]||`${((t=xt.find(a=>a.key===z.value))==null?void 0:t.name)||"地图"}详情`});function Jo(e=[]){const t=e.map(a=>String((a==null?void 0:a.cqlFilter)||"").trim()).filter(Boolean);return t.length?t.map(a=>`(${a})`).join(" OR "):""}const Ta=E(()=>{var t;const e=((t=J.value)==null?void 0:t.properties)||{};return z.value==="pasture"?Un(e)?br(e):[]:["grassland","wetland","woodland"].includes(z.value)?wr(z.value,e):[]}),Aa=E(()=>oo(A.length)),Ut=E(()=>Vt.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:`理论 ${re(t.bearingCapacity)}|实际 ${re(t.livestockCapacity)}|超载 ${re(Number(t.livestockCapacity||0)-Number(t.bearingCapacity||0))}头`}))),Zo=E(()=>zt.value?"正在读取最新草畜平衡数据":jt.value||"暂无草畜平衡数据"),St=E(()=>{const e=Ut.value,t=3,a=e.length?Math.floor(ce.value/2)*t%e.length:0;return Array.from({length:Math.min(t,e.length)},(o,r)=>e[(a+r)%e.length])}),Xo=E(()=>{const e=St.value.length;return e?ce.value%e:0}),kt={key:"home-empty-video",title:"暂无在线可播放摄像头",town:"红原县",scene:"基地监控",device:"",channel:"",cameraCount:0,status:"待接入",onlineRate:0,updateTime:"",operator:"等待在线摄像头",progress:0,image:xo,playUrl:"",hdPlayUrl:"",token:""};function ge(e){return(e==null?void 0:e.status)==="直播中"&&!!(e!=null&&e.hdPlayUrl&&(e!=null&&e.token))}const De=E(()=>ae.value.map((e,t)=>({key:`home-video-carousel-${e.key||e.title||t}`,index:t,live:e})).filter(e=>ge(e.live))),qt=E(()=>{const e=De.value;if(!e.length)return 0;const t=Z(de.value),a=e.findIndex(r=>r.index===t),o=a>=0?a:0;return it.value||Kt.value||Y.value?o:(Math.floor(ce.value/_s)+o)%e.length}),D=E(()=>{var e,t;return ae.value.length?Y.value?Z(de.value):(t=(e=De.value[qt.value])==null?void 0:e.index)!=null?t:0:0}),en=E(()=>ae.value[D.value]||kt),_a=E(()=>vn(De.value,qt.value,kt)),tn=E(()=>ae.value.filter(e=>ge(e)).length),rt=E(()=>ae.value.map((e,t)=>({index:t,live:e})).sort((e,t)=>Number(ge(t.live))-Number(ge(e.live))||e.index-t.index)),st=E(()=>Math.max(1,Math.ceil(rt.value.length/Qe))),Ia=E(()=>{const e=(oe.value-1)*Qe;return rt.value.slice(e,e+Qe).map(t=>({key:`home-video-modal-${t.live.key||t.live.title}-${t.index}`,index:t.index,live:t.live}))}),an=E(()=>k),Qt=E(()=>H.value.slice(0,12)),on=E(()=>Math.max(28,Qt.value.length*5.2)),nn=E(()=>{const e=Bn();return e.length?{key:"home-pasture-productivity",title:"草地生产力",rows:e,option:$n(e,"生产力"),height:$e.value}:null}),rn=E(()=>({key:"yak-stock-distribution",title:"牦牛存栏分布",height:wt.value,option:Gn(S,"牦牛存栏")})),sn=E(()=>[sa(It("grassland","grassland-town"),"草地面积"),sa(It("wetland","wetland-town-area"),"湿地面积"),sa(It("grassland","grassland-type-proportion"),"草原类别"),nn.value].filter(Boolean).map((e,t)=>Fn(e,`forest-grass-wet-${t}`))),ln=E(()=>[{key:"home-video-monitor",title:"基地监控",type:"video",height:jo.value,live:en.value},rn.value,{key:"yak-structure",title:"畜群结构",height:wt.value,option:un.value},{key:"home-town-balance-gauge",title:"草畜平衡",type:"gauge",height:wt.value,max:100,rows:St.value}]),un=E(()=>mt({animation:!0,animationDuration:900,animationDurationUpdate:700,animationEasing:"cubicOut",color:zo,tooltip:Mr(e=>`${e.name}
占比:${e.percent}%
估算数量:${re(e.value)}头`),legend:{orient:"vertical",right:0,top:"middle",itemWidth:8,itemHeight:8,itemGap:5,formatter(e){const t=A.find(a=>a.name===e);return t?`${e} ${Be(t.count)}头`:e},textStyle:{color:Fe,fontSize:10}},series:[{name:"畜群结构",type:"pie",selectedMode:"single",selectedOffset:8,radius:["36%","62%"],center:["30%","54%"],avoidLabelOverlap:!0,label:{color:qe,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:A.map((e,t)=>({name:e.name,value:e.count,selected:t===Aa.value}))}]}));pi(()=>{la(),window.addEventListener("resize",la),window.addEventListener("keydown",ro),document.addEventListener("pointerdown",co,!0),document.addEventListener("click",Za,!0),ea(),Qa(),Va(),Yt()}),$o(()=>{var e,t,a,o;F=!0,nt+=1,window.removeEventListener("resize",la),window.removeEventListener("keydown",ro),document.removeEventListener("pointerdown",co,!0),document.removeEventListener("click",Za,!0),Ot(),to(),ve(),za(),ta(),Zt(),Xt(),W.clear(),(t=(e=m.value)==null?void 0:e.destroyMap)==null||t.call(e),(o=(a=h.value)==null?void 0:a.destroyMap)==null||o.call(a),hn()}),pt(D,()=>{if(!Y.value){if(!Kt.value&&!Sa.value&&!Q.size){U.value="";return}ve({resetError:!0})}}),pt(z,e=>{var t,a;if(X(),e===Ne){(a=(t=m.value)==null?void 0:t.pause)==null||a.call(t),q(()=>{Mt(),Ee()});return}Ra(),q(()=>{var o,r;(r=(o=m.value)==null?void 0:o.resume)==null||r.call(o)})}),pt(()=>d.active,e=>{var t,a;e?(Yt(),mn(),Ga(),Qa(),Va(),wa?Pt(0):Fa()):(gt=!1,(a=(t=m.value)==null?void 0:t.pause)==null||a.call(t),Ra(),Zt(),Xt(),ta(),ve({resetError:!0}),Lt(),Tt())});function Yt(){gt=!1,g("loading-progress",{progress:0}),q(()=>{var e,t,a,o;if(ie.value){(t=(e=m.value)==null?void 0:e.hasMap)!=null&&t.call(e)?Ve():(o=(a=m.value)==null?void 0:a.loadMap)==null||o.call(a);return}Mt()})}function Mt(){if(!(F||!d.active||ie.value)){if(Ba()){Ee(),Ve();return}if($t){Oa();return}ot||(ot=!0,ue=new Hr({showDataOverlays:!1}),ue.instance.on("onProgress",cn),ue.instance.on("onLoad",Ea),ue.instance.on("onError",dn),ue.instance.loaded&&Ea())}}function cn(e,t,a){if(F||ie.value)return;const o=Math.max(1,Number(a)||1),r=Math.max(0,Number(t)||0);g("loading-progress",{progress:Math.min(98,Math.floor(r/o*92))})}function Ea(){F||(ot=!1,$t=!0,g("loading-progress",{progress:96}),q(Oa))}function dn(e){ot=!1,console.warn("[home] 3D map assets load failed",e),Ve()}function Oa(){var e,t,a,o;F||!d.active||ie.value||!ue||((t=(e=h.value)==null?void 0:e.loadMap)==null||t.call(e,ue),Ee(),(o=(a=h.value)==null?void 0:a.play)==null||o.call(a),Ve())}function Ee(){var a,o,r,u,c,f,p,C;const e=h.value;(a=e==null?void 0:e.resume)==null||a.call(e);const t=Ba();(r=(o=t==null?void 0:t.sizes)==null?void 0:o.init)==null||r.call(o),(u=t==null?void 0:t.resize)==null||u.call(t),(f=(c=t==null?void 0:t.label3d)==null?void 0:c.resize)==null||f.call(c),(C=(p=t==null?void 0:t.label3d)==null?void 0:p.update)==null||C.call(p)}function Ra(){var e,t;(t=(e=h.value)==null?void 0:e.pause)==null||t.call(e)}function Ba(){var t;const e=(t=h.value)==null?void 0:t.canvasMap;return(e==null?void 0:e.value)||e||null}function fn(){ie.value||Ve()}function hn(){var e,t;(t=(e=ue==null?void 0:ue.instance)==null?void 0:e.destroy)==null||t.call(e),ue=null,ot=!1,$t=!1}function Ve(){F||gt||(gt=!0,g("loading-progress",{progress:100}),g("map-ready"),Fa())}function Jt(e={}){var t,a,o,r,u,c,f,p,C;if(!ie.value){Ee();return}if((a=(t=m.value)==null?void 0:t.resume)==null||a.call(t),e.reset){(r=(o=m.value)==null?void 0:o.resetView)==null||r.call(o),(u=m.value)!=null&&u.resetView||(f=(c=m.value)==null?void 0:c.refreshView)==null||f.call(c);return}(C=(p=m.value)==null?void 0:p.refreshView)==null||C.call(p)}function mn(){z.value!==Ne&&!Pa[z.value]&&(z.value=Ne);const e=()=>{if(!(F||!d.active)){if(ie.value){Jt({reset:!0});return}Mt(),Ee()}};q(()=>{e(),window.setTimeout(e,180)})}function pn(){var e,t;if(X(),!ie.value){Ee();return}if((t=(e=m.value)==null?void 0:e.hasMap)!=null&&t.call(e)){Jt({reset:!0});return}Yt(),q(()=>{var a,o;(o=(a=m.value)==null?void 0:a.resume)==null||o.call(a)})}function gn(){if(X(),z.value===Ne){q(()=>{Mt(),Ee()});return}z.value=Ne}n({refreshMapView:Jt,resetMap:pn,showDefaultThreeMap:gn});function Fa(){Zt();const e=()=>{Ae=null,Xe="",!(F||!d.active)&&(wa=!0,ja(),d.active&&Ga())};if(typeof window.requestIdleCallback=="function"){Xe="idle",Ae=window.requestIdleCallback(e,{timeout:1800});return}Xe="timeout",Ae=window.setTimeout(e,650)}function Zt(){Ae&&(Xe==="idle"&&typeof window.cancelIdleCallback=="function"?window.cancelIdleCallback(Ae):window.clearTimeout(Ae),Ae=null,Xe="")}function Na(e,t){e&&(t?W.set(e,t):W.delete(e))}function Ha(e,t){const a=Number(t==null?void 0:t.index);Number.isFinite(a)&&(e?M.set(a,e):M.delete(a)),t!=null&&t.isActive&&(w.value=e||null)}function vn(e=[],t=0,a=kt){const o=Array.isArray(e)?e:[];if(!o.length)return[{key:`empty-${a.key||"video"}`,index:0,live:a,isActive:!0}];const r=(t+o.length)%o.length,u=o[r],c=(u==null?void 0:u.live)||u||a,f=Number.isFinite(Number(u==null?void 0:u.index))?Number(u.index):r;return[{key:`${c.key||c.title||"video"}-${f}`,index:f,live:c,isActive:!0}]}function Ga(){!d.active||F||(Xt(),vt=window.setInterval($a,2600),Ze=window.setTimeout($a,800))}function Xt(){vt&&(window.clearInterval(vt),vt=null),Ze&&(window.clearTimeout(Ze),Ze=null)}function $a(){F||!d.active||(Ze=null,ce.value+=1,On())}function ea(){g("module-stats",{moduleKey:"home",items:an.value})}function yn(e=[]){return Array.isArray(e)?e.map((t,a)=>{var o,r;return{recordKey:t.recordKey||t.record_key||`home-slaughter-${a}`,issueTime:t.issueTime||t.issue_time||"",originTownName:t.originTownName||t.origin_town_name||"未标注",animalTypeName:t.animalTypeName||t.animal_type_name||"未标注",animalQuantity:Number((r=(o=t.animalQuantity)!=null?o:t.animal_quantity)!=null?r:0),destinationProvinceName:t.destinationProvinceName||t.destination_province_name||"未标注"}}):[]}function Da(){return se(this,null,function*(){if(!(Gt||F||!d.active)){Gt=!0;try{const e=yield Xi({page:1,pageSize:12});if(F||!d.active)return;H.value=yn(e==null?void 0:e.rows)}catch(e){!F&&d.active&&!H.value.length&&(H.value=[])}finally{Gt=!1}}})}function Va(){ta(),!(F||!d.active)&&(Da(),bt=window.setInterval(()=>{Da()},Es))}function ta(){bt&&(window.clearInterval(bt),bt=null)}function Pt(e=No){za(),!(F||!d.active)&&(et=window.setTimeout(()=>{if(et=null,!(F||!d.active)){if(yt){Pt(Ho);return}ja()}},Math.max(0,Number(e)||0)))}function za(){et&&(window.clearTimeout(et),et=null)}function ja(){return se(this,null,function*(){if(yt){Pt(Ho);return}yt=!0;let e=No;try{const t=yield yi({includeOffline:!0,includeHidden:!0});if(F)return;wn(t)}catch(t){if(F)return;e=Is,ae.value.length||(U.value="监控接口暂不可用"),window.setTimeout(()=>{F||U.value==="监控接口暂不可用"&&(U.value="")},2400)}finally{yt=!1,F||Pt(e)}})}function Se(e){return String((e==null?void 0:e.key)||(e==null?void 0:e.device)||(e==null?void 0:e.title)||"").trim()}function bn(e=[],t=[]){const a=new Map;t.forEach(u=>{const c=Se(u);c&&!a.has(c)&&a.set(c,u)});const o=[],r=new Set;return e.forEach(u=>{const c=Se(u),f=c?a.get(c):null;!f||r.has(c)||(o.push(f),r.add(c))}),t.forEach(u=>{const c=Se(u);c&&r.has(c)||(o.push(u),c&&r.add(c))}),o}function wn(e=[]){const t=ae.value,a=D.value,o=Se(t[a]),r=t.filter(ge).map(Se),u=bn(t,Array.isArray(e)?e:[]),c=t.some((P,v)=>Se(P)!==Se(u[v])),f=u.filter(ge).map(Se),p=r.length!==f.length||r.some((P,v)=>P!==f[v]);c?ve({resetError:!0}):t.forEach((P,v)=>{if(!Q.has(String(v))&&!pe[String(v)])return;const _=u[v];(!_||!ge(_))&&We(v,{resetError:!0})}),ae.value=u,xa.value=new Date().toISOString();let C=o?u.findIndex(P=>Se(P)===o):-1;if(C<0||!ge(u[C])?(C=u.findIndex(P=>ge(P)),de.value=Math.max(0,C),it.value=!1,ce.value=0):!Y.value&&(p||c)?(de.value=C,ce.value=0):Y.value&&(de.value=C),u.filter(P=>ge(P)).length?["暂无在线可播放摄像头","监控接口暂不可用"].includes(U.value)&&(U.value=""):(ve({resetError:!0}),U.value="暂无在线可播放摄像头"),Y.value){const P=rt.value.findIndex(v=>v.index===de.value);oe.value=Math.floor(Math.max(0,P)/Qe)+1}else oe.value=Math.min(oe.value,st.value)}function Z(e){const t=ae.value.length;return t?((Number(e)||0)+t)%t:0}function he(e){return String(Z(e))}function Ka(e){const t=he(e);return pe[t]||(pe[t]={playing:!1,loading:!1,ready:!1,error:""}),pe[t]}function lt(e){return pe[he(e)]||{}}function ut(e){return`${Vo}-${he(e)}`}function aa(e){return!!lt(e).playing}function Ct(e){return!!lt(e).loading}function ze(e){const t=lt(e).error;return t||(Z(e)===D.value?U.value:"")}function Wa(e){const t=lt(e);return!!(t.playing||t.loading)}function Oe(){const e=Object.values(pe);Kt.value=e.some(t=>t.playing),Sa.value=e.some(t=>t.loading)}function Ua(e,t=!0,a=D.value){const o=(e==null?void 0:e.image)||xo;return aa(a)&&t?void 0:{backgroundImage:`linear-gradient(180deg, rgba(0, 16, 26, 0.08), rgba(0, 16, 26, 0.32)), url(${o})`}}function xn(){Ya(-1)}function Sn(){Ya(1)}function kn(){const e=D.value;ve({resetError:!0}),de.value=e,it.value=!0,ce.value=0;const t=rt.value.findIndex(a=>a.index===e);oe.value=Math.floor(Math.max(0,t)/Qe)+1,Y.value=!0,q(()=>na())}function Lt(){Y.value&&(ve({resetError:!0}),Y.value=!1)}function qa(e){var o,r;const t=Math.max(1,Math.min(st.value,Number(e)||1));if(t===oe.value)return;ve({resetError:!0}),oe.value=t;const a=(t-1)*Qe;de.value=(r=(o=rt.value[a])==null?void 0:o.index)!=null?r:0,q(()=>na())}function Mn(){Dt.value=!0}function Qa(){return se(this,null,function*(){const e=++nt;zt.value=!0,jt.value="",R.value="";try{const t=yield $r();if(F||e!==nt)return;k.splice(0,k.length,...t.headerStats||[]),S.splice(0,S.length,...t.yakTowns||[]),A.splice(0,A.length,...t.yakStructure||[]),Vt.value=(t.balanceRows||[]).filter(a=>["county","town"].includes(a.type)),B.value={grassland:t.grassland||{},wetland:t.wetland||{}},ea()}catch(t){if(F||e!==nt)return;console.error("[home] V3 dashboard unavailable",t),k.splice(0),S.splice(0),A.splice(0),Vt.value=[],B.value={},R.value=(t==null?void 0:t.message)||"首页V3业务数据加载失败",jt.value=R.value,ea()}finally{!F&&e===nt&&(zt.value=!1)}})}function Tt(){Dt.value=!1}function Ya(e){var r,u;const t=De.value,a=t.length;if(!a)return;ve({resetError:!0});const o=qt.value;de.value=(u=(r=t[(o+e+a)%a])==null?void 0:r.index)!=null?u:0,it.value=!0,ce.value=0}function Re(e){if(!ae.value.length){An();return}const a=Z(e),o=he(a),r=lt(a);if(de.value=a,it.value=!0,ce.value=0,Nt.has(o)||Q.has(o)||(r.playing||r.loading)&&!r.error){Ke(a);return}Nt.add(o),q(()=>se(this,null,function*(){try{yield eo(a,{stopOthers:!Y.value})}finally{Nt.delete(o)}}))}function Ja(e,t){Cn(t==null?void 0:t.target)||Re(e)}function Za(e){var r,u,c,f,p,C,x,P,v,_;const t=((u=(r=e==null?void 0:e.target)==null?void 0:r.closest)==null?void 0:u.call(r,'[id$="-webExpend-content"]'))||((c=e==null?void 0:e.composedPath)==null?void 0:c.call(e).find(N=>String((N==null?void 0:N.id)||"").endsWith("-webExpend-content")));if(!t)return;const a=Number((C=(p=(f=t.closest)==null?void 0:f.call(t,"[data-video-index]"))==null?void 0:p.dataset)==null?void 0:C.videoIndex),o=(x=fe.value)!=null?x:Number.isFinite(a)?a:D.value;(P=e.preventDefault)==null||P.call(e),(v=e.stopPropagation)==null||v.call(e),(_=e.stopImmediatePropagation)==null||_.call(e),Pn(o)}function Pn(e){return se(this,null,function*(){var r,u;const t=Z(e);if(fe.value===t){At();return}fe.value!==null&&At();const a=document.getElementById(`${ut(t)}-wrap`);if(!a)return;fe.value=t,yield q();const o=(u=(r=L.value)==null?void 0:r.querySelector)==null?void 0:u.call(r,".home-video-web-player-slot");if(!o){fe.value=null;return}o.appendChild(a),Ke(t),je(t)})}function At(e={}){var r;const{restore:t=!0}=e,a=fe.value;if(a===null)return;const o=document.getElementById(`${ut(a)}-wrap`);if(t&&o){const u=_t(a)||w.value,c=(r=u==null?void 0:u.querySelector)==null?void 0:r.call(u,".home-video-player-host");c&&c.appendChild(o)}fe.value=null,t&&q(()=>{Ke(a),je(a)})}function Cn(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 Ln(e){const t=Math.max(0,Number((e==null?void 0:e.value)||0)),a=Math.max(5,...Ut.value.map(o=>Math.max(0,Number(o.value||0))));return Math.max(6,Math.min(100,t/a*100))}function Tn(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 Xa(e){return{"--balance-color":Tn(e),"--balance-progress":`${Ln(e)}%`}}function An(){return se(this,null,function*(){return eo(D.value,{stopOthers:!Y.value})})}function eo(a){return se(this,arguments,function*(e,t={}){const{stopOthers:o=!0}=t,r=Z(e),u=ae.value[r]||kt,c=he(r);let f=Ka(r);if((u==null?void 0:u.status)!=="直播中"||!(u!=null&&u.hdPlayUrl)||!(u!=null&&u.token)){f.error=(u==null?void 0:u.status)==="离线"?"当前监控离线":"暂无在线可播放摄像头",f.loading=!1,f.playing=!1,f.ready=!1,r===D.value&&(U.value=f.error),Oe();return}if(Q.has(c)||(f.playing||f.loading)&&!f.error)return;de.value=r,ce.value=0,o?ve({resetError:!0}):(Q.has(c)||f.loading)&&We(r,{resetError:!0}),f=Ka(r),f.error="",f.loading=!0,f.playing=!1,f.ready=!1,r===D.value&&(U.value=""),Oe(),yield q();const p=(xe.get(c)||0)+1;xe.set(c,p);let C=null;In(r,p);try{const x=_t(r)||w.value,P=ut(r);if(!_n(x,P))throw new Error("视频容器未就绪");const{width:v,height:_}=ao(x,340,92);if(C=new bi.EZUIKitPlayer({id:P,accessToken:u.token,url:u.hdPlayUrl,audio:0,width:v,height:_,themeData:En(),handleError(N){p===xe.get(c)&&(ct(r),console.warn("EZUIKit player error",N),ia(C),f.error="视频加载失败",f.loading=!1,f.playing=!1,f.ready=!1,xe.set(c,p+1),Q.delete(c),ra(r),r===D.value&&(U.value=f.error),Oe())},handleSuccess(){p===xe.get(c)&&(ct(r),f.error="",f.ready=!0,f.loading=!1,r===D.value&&(U.value=""),Ke(r),je(r),oa(P),Oe())},fullScreenChangeCallBack(){}}),p!==xe.get(c)){ia(C),ra(r);return}Q.set(c,C),f.playing=!0,Oe(),q(()=>{Ke(r),je(r),oa(P)})}catch(x){ct(r),console.warn("EZUIKit init error",x),f.error="视频加载失败",r===D.value&&(U.value=f.error),We(r,{resetError:!1})}})}function oa(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=D.value,t=0){if(typeof window=="undefined")return;const a=Z(e),o=he(a),r=_e.get(o);t===0&&r&&window.cancelAnimationFrame(r);const u=window.requestAnimationFrame(()=>{Ke(a),t<8?je(a,t+1):_e.delete(o)});_e.set(o,u)}function to(e){if(typeof window!="undefined"){if(e!==void 0){const t=he(e),a=_e.get(t);a&&window.cancelAnimationFrame(a),_e.delete(t);return}_e.forEach(t=>window.cancelAnimationFrame(t)),_e.clear()}}function na(){Array.from(Q.keys()).forEach(e=>{const t=Number(e);Number.isFinite(t)&&je(t)})}function ao(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),r=e.clientWidth||e.offsetWidth||(o==null?void 0:o.width)||t,u=e.clientHeight||e.offsetHeight||(o==null?void 0:o.height)||a;return{width:Math.max(1,Math.floor(r||1)),height:Math.max(1,Math.floor(u||1))}}function _t(e=D.value){if(typeof document=="undefined")return null;const t=Z(e),a=Y.value?".home-video-modal-item":".home-video-card .home-video-screen",o=document.querySelector(`${a}[data-video-index="${t}"]`);if(o)return o;const r=M.get(t);return r!=null&&r.isConnected?r:null}function _n(e,t){var r;const a=(r=e==null?void 0:e.querySelector)==null?void 0:r.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 Ke(e=D.value){var ho,mo;if(typeof document=="undefined")return;const t=Z(e),a=he(t),o=ut(t),r=fe.value===t&&L.value?L.value:_t(t)||w.value,u=document.getElementById(`${o}-wrap`),c=document.getElementById(o),f=u||c;if(!r||!f)return;const{width:p,height:C}=ao(r),x=Q.get(a);try{u&&c&&x&&typeof x.reSize=="function"?x.reSize(p,C):u&&c&&x&&typeof x.autoResize=="function"&&x.autoResize()}catch(ke){console.warn("EZUIKit resize failed",ke)}const P={position:"absolute",left:"0",top:"0",right:"0",bottom:"0",width:`${p}px`,height:`${C}px`};Object.assign(f.style,P,{display:"block",verticalAlign:"top"}),u&&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 v=document.getElementById(`EZUIKitPlayer-${o}`);v&&(v.setAttribute("width",String(p)),v.setAttribute("height",String(C)));const _=document.getElementById(`${o}-player`),N=document.getElementById(`${o}canvas0`),V=document.getElementById(`${o}canvas_draw0`),Rt=[f,c,_,N==null?void 0:N.parentElement,N,V==null?void 0:V.parentElement,V,...Array.from((c==null?void 0:c.children)||[]),...Array.from(((ho=f==null?void 0:f.querySelectorAll)==null?void 0:ho.call(f,"[id$='-wrap'], .play-window, video, canvas, iframe, object, embed"))||[]),...Array.from(((mo=c==null?void 0:c.querySelectorAll)==null?void 0:mo.call(c,".play-window, video, canvas, iframe, object, embed"))||[]),v].filter(Boolean);Array.from(new Set(Rt)).forEach(ke=>{var po,go;(po=ke.setAttribute)==null||po.call(ke,"width",String(p)),(go=ke.setAttribute)==null||go.call(ke,"height",String(C)),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"})}),oa(o)}function ve(e={}){Array.from(Q.keys()).forEach(t=>{We(Number(t),e)}),Object.keys(pe).forEach(t=>{Q.has(t)||We(Number(t),e)}),Oe()}function We(e,t={}){const{clearElement:a=!0,resetError:o=!1}=t,r=Z(e),u=he(r);to(r),ct(r);const c=Q.get(u);Q.delete(u),xe.set(u,(xe.get(u)||0)+1),c&&ia(c),a&&ra(r);const f=pe[u];f&&(f.playing=!1,f.loading=!1,f.ready=!1,o&&(f.error=""),f.error||delete pe[u]),r===D.value&&o&&(U.value=""),Oe()}function In(e,t){const a=Z(e),o=he(a);ct(a);const r=window.setTimeout(()=>{const u=pe[o];t!==xe.get(o)||!(u!=null&&u.loading)||(u.error="视频加载超时",a===D.value&&(U.value=u.error),We(a,{resetError:!1}))},Os);Ht.set(o,r)}function ct(e){const t=he(e),a=Ht.get(t);a&&(window.clearTimeout(a),Ht.delete(t))}function ia(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 ra(e=D.value){var f;if(typeof document=="undefined")return;const t=Z(e),a=ut(t),o=document.getElementById(`${a}-wrap`),r=document.getElementById(a),u=_t(t)||w.value,c=(f=u==null?void 0:u.querySelector)==null?void 0:f.call(u,".home-video-player-host");fe.value===t&&At({restore:!1}),c&&c.replaceChildren(),o!=null&&o.isConnected&&o.remove(),r!=null&&r.isConnected&&r.remove()}function En(){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 On(){const e=W.get("yak-structure");Rn(e,"畜群结构",Aa.value)}function Rn(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 oo(e){return e?ce.value%e:0}function It(e,t){const a=B.value[e];return[...(a==null?void 0:a.leftPanels)||[],...(a==null?void 0:a.rightPanels)||[]].find(r=>(r==null?void 0:r.key)===t)}function sa(e,t){return e?j($({},e),{title:t}):null}function Bn(){var t;return(((t=It("grassland","grassland-productivity-town"))==null?void 0:t.rows)||[]).map((a,o)=>j($({},a),{key:a.key||`home-pasture-productivity-${a.name}`,unit:"斤/亩",sourceIndex:o}))}function Fn(e,t){const a=String((e==null?void 0:e.key)||"");return a.includes("grassland-town")?j($({},e),{key:`home-${t}-${e.key}`,height:$e.value,option:Nn(e,e.title)}):a.includes("wetland-town-area")?j($({},e),{key:`home-${t}-${e.key}`,height:$e.value,option:Hn(e,e.title)}):a.includes("grassland-type-proportion")?j($({},e),{key:`home-${t}-${e.key}`,fixedActiveIndex:!0,height:$e.value}):j($({},e),{key:`home-${t}-${e.key}`,height:$e.value})}function Nn(e,t,a={}){var C;const o=(e.rows||[]).filter(x=>Number.isFinite(Number(x.value))).slice(0,10),r=((C=o.find(x=>x.unit))==null?void 0:C.unit)||"万亩",u=o.map(x=>Number(x.value)||0),c=Math.max(...u,1),f=Math.ceil(c*1.14),p=a.showTrendLine===!0;return mt({animation:!0,animationDuration:900,animationDurationUpdate:700,animationEasing:"cubicOut",title:{text:`单位:${r}`,left:"5%",top:"8%",textStyle:{color:Fe,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(x){var N;const P=Array.isArray(x)?x:[x],v=P.find(V=>V.seriesName===t)||P[0],_=o[(N=v==null?void 0:v.dataIndex)!=null?N:0];return _?`${_.name}
${t}:${re(_.value)}${_.unit||r}`:""}},grid:{left:"12%",top:"25%",width:"82%",height:"55%"},xAxis:[{type:"category",data:o.map(x=>x.name),axisLabel:{interval:0,hideOverlap:!1,color:ya,fontSize:10,fontWeight:700,lineHeight:12,margin:8,padding:[0,0,0,0],formatter:io},axisLine:{show:!1},axisTick:{show:!1},splitLine:{show:!1}},{type:"category",data:o.map(x=>x.name),axisLine:{show:!1,lineStyle:{color:"rgba(0, 0, 0, 0)"}},axisTick:{show:!1},axisLabel:{show:!1}}],yAxis:{type:"value",min:0,max:f,axisLine:{show:!1},axisTick:{show:!1},splitLine:{show:!0,lineStyle:{type:[2,2],dashOffset:5,color:ba,opacity:1,width:.3}},axisLabel:{color:Go,fontSize:10,formatter:Be}},series:[{name:t,type:"bar",barWidth:7,stack:"b",z:3,data:o.map(x=>Number(x.value)||0),label:{show:!0,position:"top",distance:9,color:qe,fontSize:10,fontWeight:700,formatter:({value:x})=>Be(x)},itemStyle:{borderRadius:2,color:new dt(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)"}}},...p?[{name:`${t}趋势`,type:"line",smooth:!0,symbol:"circle",symbolSize:5,showSymbol:!0,data:u,label:{show:!1},lineStyle:{width:1.3,color:"rgba(139, 247, 255, 0.82)",shadowBlur:0,shadowColor:"transparent"},itemStyle:{color:qe,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(()=>f),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 Hn(e,t){var f;const a=(e.rows||[]).filter(p=>Number.isFinite(Number(p.value))).sort((p,C)=>(Number(C.value)||0)-(Number(p.value)||0)).slice(0,10),o=((f=a.find(p=>p.unit))==null?void 0:f.unit)||"万亩",r=a.map(p=>Number(p.value)||0),u=Math.max(...r,1),c=Math.ceil(u*1.2);return mt({animation:!0,animationDuration:900,animationDurationUpdate:700,animationEasing:"cubicOut",title:{text:`单位:${o}`,left:"5%",top:"8%",textStyle:{color:Fe,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(p){var v;const C=Array.isArray(p)?p:[p],x=C.find(_=>_.seriesName===t)||C[0],P=a[(v=x==null?void 0:x.dataIndex)!=null?v:0];return P?`${P.name}
${t}:${re(P.value)}${P.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:ba,type:[2,4],width:.3}}},yAxis:{type:"category",inverse:!0,data:a.map(p=>p.name),axisLine:{show:!1},axisTick:{show:!1},axisLabel:{color:ya,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:r,label:{show:!0,position:"right",distance:8,color:qe,fontSize:10,fontWeight:700,formatter:({value:p})=>`${re(p)}${o}`},itemStyle:{borderRadius:[0,5,5,0],color:new dt(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 Gn(e=[],t="数值"){var P;const a=["邛溪镇","刷经寺镇","安曲镇","龙日镇","江茸乡","查尔玛乡","瓦切镇","阿木乡","麦洼乡","色地镇"],o=new Map(a.map((v,_)=>[v,_])),r=e.filter(v=>Number.isFinite(Number(v.value))).sort((v,_)=>{var N,V;return((N=o.get(v.name))!=null?N:99)-((V=o.get(_.name))!=null?V:99)}).slice(0,10),u=((P=r.find(v=>v.unit))==null?void 0:P.unit)||"头",c=r.map(v=>Number(v.value)||0),f=Math.max(...c,1),p=Math.ceil(f*1.16/1e4)*1e4,C=oo(r.length),x=new Set(c.map((v,_)=>({value:v,index:_})).sort((v,_)=>_.value-v.value).slice(0,3).map(v=>v.index));return mt({animation:!0,animationDuration:760,animationDurationUpdate:520,animationEasing:"cubicOut",title:{text:`单位:${u}`,left:12,top:8,textStyle:{color:Fe,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(v){var Rt;const _=Array.isArray(v)?v:[v],N=_.find(fo=>fo.seriesName===t)||_[0],V=r[(Rt=N==null?void 0:N.dataIndex)!=null?Rt:0];return V?`${V.name}
${t}:${re(V.value)}${V.unit||u}`:""}},grid:{left:46,right:20,top:38,bottom:28,containLabel:!1},xAxis:{type:"category",boundaryGap:!1,data:r.map(v=>v.name),axisLine:{show:!0,lineStyle:{color:"rgba(141, 251, 255, 0.32)"}},axisTick:{show:!1},axisLabel:{show:!0,interval:0,margin:8,color:Fe,fontSize:9,formatter:v=>String(v).replace(/[乡镇]$/,"")}},yAxis:{type:"value",min:0,max:p,splitNumber:4,axisLine:{show:!1},axisTick:{show:!1},axisLabel:{color:Fe,fontSize:9,margin:7,formatter:v=>Be(v)},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:(v,_)=>_.dataIndex===C?7:4,data:c,label:{show:!0,position:"top",distance:5,color:qe,fontSize:10,fontWeight:700,formatter:({value:v,dataIndex:_})=>x.has(_)?Be(v):""},lineStyle:{width:2.5,color:"#8dfbff",shadowBlur:7,shadowColor:"rgba(48, 220, 255, 0.68)"},areaStyle:{color:new dt(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(v){return v.dataIndex===C?"#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 $n(e=[],t="数值"){var f;const a=e.filter(p=>Number.isFinite(Number(p.value))).slice(0,10),o=((f=a.find(p=>p.unit))==null?void 0:f.unit)||"",r=a.map(p=>Number(p.value)||0),u=Math.max(...r,1),c=Math.ceil(u*1.12);return mt({animation:!0,animationDuration:900,animationDurationUpdate:700,animationEasing:"cubicOut",title:{text:o?`单位:${o}`:"",left:"5%",top:"8%",textStyle:{color:Fe,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(p){var v;const x=(Array.isArray(p)?p:[p])[0],P=a[(v=x==null?void 0:x.dataIndex)!=null?v:0];return P?`${P.name}
${t}:${re(P.value)}${P.unit||o}`:""}},color:["#6BC7F6"],xAxis:[{type:"category",data:a.map(p=>p.name),axisLine:{show:!1},axisTick:{show:!1},splitLine:{show:!1},axisLabel:{color:ya,fontSize:10,fontWeight:700,interval:0,padding:[0,0,0,0],formatter:io}},{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:ba,opacity:1,width:.3}},axisLabel:{color:Go,fontSize:10,formatter:Be}},series:[{name:t,data:r,type:"line",smooth:!0,symbol:As,symbolSize:10,showSymbol:!1,z:3,emphasis:{focus:"none",itemStyle:{color:"white"}},label:{show:!0,position:"top",distance:10,color:qe,fontSize:10,fontWeight:700,formatter:({value:p})=>Be(p)},lineStyle:{shadowColor:"rgba(0, 0, 0, 0.4)",shadowBlur:3,shadowOffsetY:10,width:3,color:new dt(0,0,0,1,[{offset:0,color:"rgba(115, 208, 255, 1)"},{offset:1,color:"rgba(18, 60, 98, 1)"}])},areaStyle:{color:new dt(0,0,0,1,[{offset:0,color:"rgba(25, 255, 236, 0.34)"},{offset:1,color:"rgba(51, 153, 255, 0)"}])}}]})}function no(e){return String((e==null?void 0:e.key)||"").includes("grassland-town")}function re(e){const t=Number(e);return Number.isFinite(t)?t.toLocaleString("zh-CN",{maximumFractionDigits:Number.isInteger(t)?0:2}):"--"}function Dn(e){const t=String(e||"").trim();if(!t)return"--";const a=t.match(/^\d{4}-(\d{2})-(\d{2})(?:[ T](\d{2}):(\d{2}))?/);return a?`${a[1]}-${a[2]}${a[3]?` ${a[3]}:${a[4]}`:""}`:t}function Be(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 io(e){return String(e||"").replace(/\s+/g,"").replace(/[镇乡]$/u,"").slice(0,4)}function Vn(e){if(!e)return null;const t=e.topicKey==="yak-industry-chain"?Sr(e.layerKey):Pi(e.topicKey,e.layerKey);if(t)return t;const a=Ci(e.topicKey);return a.find(o=>o.key===e.layerKey)||a[0]||null}function zn(e,t){const a=Number.isFinite(Number(t.fillOpacity))?Number(t.fillOpacity):.46,o=t.stroke||t.strokeColor||"#E5FCFF",r=Number.isFinite(Number(t.strokeOpacity))?Number(t.strokeOpacity):.86,u=Number.isFinite(Number(t.strokeWidth))?Number(t.strokeWidth):1.1;return`${e}${t.fill}${a}${o}${r}${u}round`}function jn(e){xt.some(t=>t.key===e)&&(z.value=e,X())}function ro(e){if(e.key==="Escape"){if(fe.value!==null){At();return}Lt(),Tt()}}function la(){Ma.value=typeof window=="undefined"?1080:window.innerHeight,na()}function Kn(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),r=Number(e==null?void 0:e.y);return!Number.isFinite(o)||!Number.isFinite(r)?{x:960,y:540}:o>=0&&o<=1920&&r>=0&&r<=1080&&(o>a.width||r>a.height)?{x:o,y:r}:{x:(o-a.left)/a.width*1920,y:(r-a.top)/a.height*1080}}function Et(e,t){var a,o,r,u;return((o=(a=m.value)==null?void 0:a.getVectorFeatureAnchorScreen)==null?void 0:o.call(a,e))||((u=(r=m.value)==null?void 0:r.getVectorFeatureScreen)==null?void 0:u.call(r,e))||t}function Wn(){if(!Wt.value||!J.value)return;const e=Et(J.value,ne.value);if(!e)return;const t=ne.value;t&&Math.abs(Number(t.x)-Number(e.x))<.5&&Math.abs(Number(t.y)-Number(e.y))<.5||(ne.value=e)}function ua(e){const t=(e==null?void 0:e.properties)||{};return Object.keys(t).filter(o=>so(o,t[o])).length}function Un(e={}){return e.categoryCode==="YC-FAMILY-PASTURE"||e.stageKey==="family-pasture"}function so(e,t){return t==null||t===""||Array.isArray(t)||typeof t=="object"?!1:!s.has(String(e||"").toLowerCase())}function lo(e={}){const t=String(z.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 qn(e={}){const t=uo(e.lng),a=uo(e.lat);return t===""||a===""?"":`POINT(${t} ${a})`}function uo(e){const t=Number(e);return Number.isFinite(t)?t.toFixed(8).replace(/\.?0+$/,""):""}function Qn(){return se(this,arguments,function*(e={}){var p,C,x,P,v,_;const t=Number((p=e==null?void 0:e.lngLat)==null?void 0:p.lng),a=Number((C=e==null?void 0:e.lngLat)==null?void 0:C.lat),o=Ca.value,r=lo(o);if(!Number.isFinite(t)||!Number.isFinite(a)){X();return}if(!r){ri();return}const u=++tt,c=Ge,f=e.screen||{x:960,y:540};ne.value=null,J.value=null,Ie.value=!1,Me.value=!0,(P=(x=m.value)==null?void 0:x.clearSelectedFeature)==null||P.call(x);try{const N=yield Yn(o,{lng:t,lat:a},r);if(u!==tt||F)return;if(!N){Ge===c&&X();return}J.value=N,Ie.value=!1,ne.value=f;try{(_=(v=m.value)==null?void 0:v.highlightFeature)==null||_.call(v,N,{highlightTone:"v21"})}catch(V){console.warn("[home] resource feature highlight skipped",V)}try{ne.value=Et(N,f)||f}catch(V){console.warn("[home] resource feature anchor fallback",V)}}catch(N){u===tt&&Ge===c&&X()}finally{u===tt&&(Me.value=!1)}})}function Yn(o,r){return se(this,arguments,function*(e,t,a=lo(e)){const u=qn(t);if(!u)return null;const c=yield xr(a,u),f=Jn(c,a);if(!Xn(f))return null;const p=ti(f,e,t,a);return ua(p)>0?p:null})}function Jn(e,t){var o,r,u,c;const a=[e==null?void 0:e[t],e==null?void 0:e.grassland,e==null?void 0:e.wetland,e==null?void 0:e.woodland,(o=e==null?void 0:e.data)==null?void 0:o[t],(r=e==null?void 0:e.data)==null?void 0:r.grassland,(u=e==null?void 0:e.data)==null?void 0:u.wetland,(c=e==null?void 0:e.data)==null?void 0:c.woodland,e==null?void 0:e.data,e==null?void 0:e.result,e];for(const f of a){const p=Zn(f);if(p)return p}return null}function Zn(e){return Array.isArray(e)?e.find(t=>t&&typeof t=="object")||null:e&&typeof e=="object"?e:null}function Xn(e){return!e||typeof e!="object"?!1:Array.isArray(e.dyColumn)&&e.dyColumn.some(ei)?!0:Object.keys(e).some(t=>so(t,e[t]))}function ei(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 ti(e,t,a,o){const r=oi(e),u=ai(e);return{id:e.id||e.patchNo||e.patch_no||e.landNumber||e.land_number||`${o}-${a.lng}-${a.lat}`,properties:r,feature:{type:"Feature",properties:r,geometry:u},geometry:u,layer:t,lngLat:a}}function ai(e={}){return e.geometry||e.geom||e.wkt||e.the_geom||e.theGeom||e.geo||e.geometryWkt||e.geometry_wkt||e.shape||null}function oi(e={}){const t=$({},e);return(Array.isArray(e.dyColumn)?e.dyColumn:[]).forEach(o=>{const r=o==null?void 0:o.value;if(r==null||r==="")return;const u=l[String((o==null?void 0:o.title)||"").trim()],c=String((o==null?void 0:o.field)||"").trim();[c,ni(c),u].filter(Boolean).forEach(p=>{(t[p]===void 0||t[p]===null||t[p]==="")&&(t[p]=r)})}),t}function ni(e){const t=String(e||"").trim();return t?t.replace(/([a-z0-9])([A-Z])/g,"$1_$2").toLowerCase():""}function ii(e){var o,r,u,c;Ge+=1,Ot();const t=(r=(o=e==null?void 0:e.feature)!=null?o:e)!=null?r:null;if(!t||ua(t)<=0){X();return}const a=((u=t==null?void 0:t.properties)==null?void 0:u.public_id)||((c=t==null?void 0:t.properties)==null?void 0:c.publicId)||(t==null?void 0:t.id);if(z.value==="pasture"&&a){Me.value=!0,kr(a).then(f=>{if(!f)return X();J.value=j($({},t),{id:f.id||f.publicId||a,properties:f}),Ie.value=!1,e!=null&&e.screen&&(ne.value=Et(J.value,e.screen))}).catch(()=>X()).finally(()=>{Me.value=!1});return}J.value=t,Ie.value=!1,e!=null&&e.screen&&(ne.value=Et(t,e.screen))}function X(){var e,t;Ot(),tt+=1,J.value=null,Ie.value=!1,Me.value=!1,ne.value=null,(t=(e=m.value)==null?void 0:e.clearSelectedFeature)==null||t.call(e)}function ri(){const e=Ge;Ot(),at=window.setTimeout(()=>{at=null,Ge===e&&X()},80)}function Ot(){at&&(window.clearTimeout(at),at=null)}function co(e){if(!Wt.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)||X()}return(e,t)=>(T(),I("div",Dr,[R.value?(T(),I("div",Vr,G(R.value),1)):K("",!0),bo(ca(Fr,{ref_key:"threeMapSceneRef",ref:h,class:"home-map-scene home-three-map-scene","show-data-overlays":!1,"max-pixel-ratio":1.35,onPlayComplete:fn},null,512),[[wo,Wo.value]]),ie.value?bo((T(),Pe(Li,{key:1,ref_key:"mapSceneRef",ref:m,class:"home-map-scene home-remote-map-scene",active:d.active&&ie.value,"active-layer":Ca.value,"admin-boundary-line-scale":1.65,"initial-zoom":Rs,"minimum-zoom-distance":1,"auto-apply-layer-map-view":!1,"max-zoom":21,"enable-imagery-feature-pick":!1,"emit-empty-feature-info-on-miss":!1,"hide-town-label-stats":"",onReady:Ve,onFeatureLoading:t[0]||(t[0]=a=>Me.value=a),onFeatureInfo:ii,onMapClick:Qn,onViewChange:Wn},null,8,["active","active-layer"])),[[wo,ie.value]]):K("",!0),t[15]||(t[15]=b("div",{class:"home-map-scrim"},null,-1)),Qt.value.length?(T(),I("div",zr,[t[4]||(t[4]=b("div",{class:"home-slaughter-ticker-status"},[b("i"),b("strong",null,"实时出栏")],-1)),b("div",jr,[b("div",{class:"home-slaughter-ticker-track",style:Ue({"--ticker-duration":`${on.value}s`})},[(T(),I(Ce,null,Le(2,a=>b("div",{key:a,class:"home-slaughter-ticker-group"},[(T(!0),I(Ce,null,Le(Qt.value,o=>(T(),I("span",{key:`${a}-${o.recordKey}`,class:"home-slaughter-ticker-item"},[b("b",null,G(Dn(o.issueTime)),1),b("em",null,G(o.originTownName),1),b("strong",null,G(o.animalTypeName)+" "+G(re(o.animalQuantity))+"头",1),t[3]||(t[3]=b("i",null,"→",-1)),b("span",null,G(o.destinationProvinceName),1)]))),128))])),64))],4)])])):K("",!0),b("div",Kr,[ca(vr,{"model-value":z.value,topics:xt,"onUpdate:modelValue":jn},null,8,["model-value"])]),Wt.value?(T(),I("div",{key:3,class:"home-map-feature-info",style:Ue(Qo.value)},[ca(yr,{title:Yo.value,feature:J.value,empty:Ie.value,loading:Me.value,width:ft(Uo),height:qo.value,rows:Ta.value,closable:"",onClose:X},null,8,["title","feature","empty","loading","width","height","rows"])],4)):K("",!0),b("div",Wr,[b("div",Ur,[(T(!0),I(Ce,null,Le(sn.value,a=>(T(),Pe(ko,{key:a.key,class:"home-card left-card",title:a.title,width:ft(ka),height:a.height},{default:da(()=>[a.option?(T(),Pe(ft(So),{key:0,ref_for:!0,ref:o=>Na(a.key,o),class:"home-chart home-town-column-chart",option:a.option,autoresize:!0},null,8,["option"])):(T(),Pe(Bo,{key:1,panel:a,compact:"","column-label-standard":no(a),"visual-version":"v21"},null,8,["panel","column-label-standard"]))]),_:2},1032,["title","width","height"]))),128))])]),b("div",qr,[b("div",Qr,[(T(!0),I(Ce,null,Le(ln.value,a=>(T(),Pe(ko,{key:a.key,class:ht(["home-card","right-card",{"home-video-card":a.type==="video"}]),title:a.title,width:ft(ka),height:a.height},{extra:da(()=>[a.type==="video"||a.key==="home-town-balance-gauge"?(T(),I("button",{key:0,class:"home-card-more",type:"button","aria-label":a.type==="video"?"查看全部基地监控":"查看全部乡镇草畜平衡",onClick:o=>a.type==="video"?kn():Mn()},[...t[5]||(t[5]=[gi(" 更多 ",-1),b("span",{"aria-hidden":"true"},"›",-1)])],8,Yr)):K("",!0)]),default:da(()=>[a.type==="video"?(T(),I("div",Jr,[b("button",{class:"home-video-nav home-video-prev",type:"button","aria-label":"上一路监控",disabled:De.value.length<=1,onClick:xn},"‹",8,Zr),b("div",{class:ht(["home-video-grid",{"is-single":_a.value.length<=1}])},[(T(!0),I(Ce,null,Le(_a.value,o=>(T(),I("div",{key:o.key,ref_for:!0,ref:r=>Ha(r,o),"data-video-index":o.index,class:ht(["home-video-screen",{"is-active":o.isActive,"is-playing":aa(o.index),"is-loading":Ct(o.index)}]),style:Ue(Ua(o.live,o.isActive,o.index)),role:"button",tabindex:"0",onClick:r=>Ja(o.index,r),onKeydown:[Bt(Te(r=>Re(o.index),["prevent"]),["enter"]),Bt(Te(r=>Re(o.index),["prevent"]),["space"])]},[t[6]||(t[6]=b("div",{class:"home-video-player-host"},null,-1)),Ct(o.index)?(T(),I("div",es,"加载中")):K("",!0),ze(o.index)?(T(),I("div",ts,G(ze(o.index)),1)):K("",!0),o.live.hdPlayUrl&&(!Wa(o.index)||ze(o.index))?(T(),I("button",{key:2,class:"home-video-hit",type:"button","aria-label":"播放监控",onClick:Te(r=>Re(o.index),["stop"])},null,8,as)):K("",!0),b("div",os,G(o.live.title),1)],46,Xr))),128))],2),b("button",{class:"home-video-nav home-video-next",type:"button","aria-label":"下一路监控",disabled:De.value.length<=1,onClick:Sn},"›",8,ns)])):a.option?(T(),Pe(ft(So),{key:1,ref_for:!0,ref:o=>Na(a.key,o),class:"home-chart",option:a.option,autoresize:!0},null,8,["option"])):a.key==="home-town-balance-gauge"?(T(),I("div",is,[St.value.length?K("",!0):(T(),I("div",rs,[t[7]||(t[7]=b("i",null,null,-1)),b("span",null,G(Zo.value),1)])),(T(!0),I(Ce,null,Le(St.value,(o,r)=>(T(),I("div",{key:o.key,class:ht(["home-balance-gauge-card",{"is-active":r===Xo.value}]),style:Ue(Xa(o))},[b("div",ss,[b("strong",null,G(o.status),1)]),b("div",ls,[b("div",us,[b("strong",null,G(re(o.value)),1),t[8]||(t[8]=b("em",null,"%",-1))])]),b("div",cs,G(o.name),1),b("div",ds,G(o.extra),1)],6))),128))])):(T(),Pe(Bo,{key:3,panel:a,compact:"","column-label-standard":no(a),"visual-version":"v21"},null,8,["panel","column-label-standard"]))]),_:2},1032,["class","title","width","height"]))),128))])]),Y.value?(T(),I("div",{key:4,class:"home-more-modal",role:"dialog","aria-modal":"true","aria-label":"全部基地监控",onClick:Te(Lt,["self"])},[b("section",{class:"home-more-dialog home-video-dialog","data-monitoring-updated-at":xa.value},[b("header",hs,[b("div",null,[t[9]||(t[9]=b("h2",null,"基地监控",-1)),b("p",null,"共 "+G(ae.value.length)+" 路,在线 "+G(tn.value)+" 路",1)]),b("button",{type:"button",title:"关闭","aria-label":"关闭",onClick:Lt},"×")]),Ia.value.length?(T(),I("div",ms,[(T(!0),I(Ce,null,Le(Ia.value,a=>(T(),I("div",{key:a.key,ref_for:!0,ref:o=>Ha(o,a),"data-video-index":a.index,class:ht(["home-video-modal-item home-video-screen",{"is-active":a.index===D.value,"is-playing":aa(a.index),"is-loading":Ct(a.index),"is-offline":a.live.status!=="直播中"}]),style:Ue(Ua(a.live,a.index===D.value,a.index)),role:"button",tabindex:"0",onClick:o=>Ja(a.index,o),onKeydown:[Bt(Te(o=>Re(a.index),["prevent"]),["enter"]),Bt(Te(o=>Re(a.index),["prevent"]),["space"])]},[t[10]||(t[10]=b("div",{class:"home-video-player-host"},null,-1)),Ct(a.index)?(T(),I("div",gs,"加载中")):K("",!0),ze(a.index)?(T(),I("div",vs,G(ze(a.index)),1)):K("",!0),a.live.hdPlayUrl&&(!Wa(a.index)||ze(a.index))?(T(),I("button",{key:2,class:"home-video-hit",type:"button","aria-label":"播放监控",onClick:Te(o=>Re(a.index),["stop"])},null,8,ys)):K("",!0),b("span",bs,G(a.live.title),1)],46,ps))),128))])):(T(),I("div",ws,"暂无监控数据")),st.value>1?(T(),I("footer",xs,[b("button",{type:"button",disabled:oe.value<=1,onClick:t[1]||(t[1]=a=>qa(oe.value-1))},"上一页",8,Ss),b("span",null,G(oe.value)+" / "+G(st.value),1),b("button",{type:"button",disabled:oe.value>=st.value,onClick:t[2]||(t[2]=a=>qa(oe.value+1))},"下一页",8,ks)])):K("",!0)],8,fs)])):K("",!0),(T(),Pe(vi,{to:"body"},[fe.value!==null?(T(),I("div",Ms,[b("div",{ref_key:"homeVideoWebStageRef",ref:L,class:"home-video-screen home-video-web-stage is-active is-playing"},[...t[11]||(t[11]=[b("div",{class:"home-video-web-player-slot"},null,-1)])],512)])):K("",!0)])),Dt.value?(T(),I("div",{key:5,class:"home-more-modal",role:"dialog","aria-modal":"true","aria-label":"全部乡镇草畜平衡",onClick:Te(Tt,["self"])},[b("section",Ps,[b("header",{class:"home-more-dialog-head"},[t[12]||(t[12]=b("div",null,[b("h2",null,"全县乡镇草畜平衡")],-1)),b("button",{type:"button",title:"关闭","aria-label":"关闭",onClick:Tt},"×")]),b("div",Cs,[(T(!0),I(Ce,null,Le(Ut.value,a=>(T(),I("article",{key:a.key,class:"home-balance-modal-item",style:Ue(Xa(a))},[b("div",Ls,[b("strong",null,G(a.name),1),b("span",null,G(a.status),1)]),b("div",Ts,[b("strong",null,G(re(a.value)),1),t[13]||(t[13]=b("em",null,"%",-1))]),t[14]||(t[14]=b("div",{class:"home-balance-modal-track"},[b("i")],-1)),b("p",null,G(a.extra),1)],4))),128))])])])):K("",!0)]))}};export{Js as default};