1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/TradeCenterMap-UBHYjsQS.js","assets/index-Bab2R6yH.js","assets/index-DzjF18Ep.css"])))=>i.map(i=>d[i]); 2import{w as S,u as B,j as e,B as v,e as m,a9 as p,aa as j,T as E,f as h,ab as _,M as b,c as I,r as f,n as z,ac as L,ad as D,a7 as F}from"./index-Bab2R6yH.js";/** 3 * @license lucide-react v0.462.0 - ISC 4 * 5 * This source code is licensed under the ISC license. 6 * See the LICENSE file in the root directory of this source tree. 7 */const H=S("Hammer",[["path",{d:"m15 12-8.373 8.373a1 1 0 1 1-3-3L12 9",key:"eefl8a"}],["path",{d:"m18 15 4-4",key:"16gjal"}],["path",{d:"m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172V7l-2.26-2.26a6 6 0 0 0-4.202-1.756L9 2.96l.92.82A6.18 6.18 0 0 1 12 8.4V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5",key:"b7pghm"}]]),O=f.lazy(()=>F(()=>import("./TradeCenterMap-UBHYjsQS.js"),__vite__mapDeps([0,1,2]))),K=({data:s,language:n})=>{const c=Math.max(...s.map(a=>a.total));return e.jsxs("div",{className:"space-y-4",children:[s.map((a,i)=>e.jsxs("div",{className:"space-y-1",children:[e.jsxs("div",{className:"flex justify-between text-sm",children:[e.jsx("span",{className:"font-medium",children:a.region}),e.jsx("span",{className:"text-muted-foreground",children:a.total})]}),e.jsxs("div",{className:"flex h-6 rounded-md overflow-hidden bg-muted/30",children:[a.completed>0&&e.jsx("div",{className:"bg-green-500 flex items-center justify-center text-xs text-white font-medium",style:{width:`${a.completed/c*100}%`},title:`${n==="zh"?"已建æ":"Completed"}: ${a.completed}`,children:a.completed>1&&a.completed}),a.inProgress>0&&e.jsx("div",{className:"bg-amber-500 flex items-center justify-center text-xs text-white font-medium",style:{width:`${a.inProgress/c*100}%`},title:`${n==="zh"?"建设ä¸":"In Progress"}: ${a.inProgress}`,children:a.inProgress>1&&a.inProgress}),a.planned>0&&e.jsx("div",{className:"bg-slate-400 flex items-center justify-center text-xs text-white font-medium",style:{width:`${a.planned/c*100}%`},title:`${n==="zh"?"è§åä¸":"Planned"}: ${a.planned}`,children:a.planned>5&&a.planned})]})]},i)),e.jsxs("div",{className:"flex flex-wrap gap-4 pt-4 border-t",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("div",{className:"w-3 h-3 rounded-sm bg-green-500"}),e.jsx("span",{className:"text-sm text-muted-foreground",children:n==="zh"?"已建æ":"Completed"})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("div",{className:"w-3 h-3 rounded-sm bg-amber-500"}),e.jsx("span",{className:"text-sm text-muted-foreground",children:n==="zh"?"建设ä¸":"In Progress"})]}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("div",{className:"w-3 h-3 rounded-sm bg-slate-400"}),e.jsx("span",{className:"text-sm text-muted-foreground",children:n==="zh"?"è§åä¸":"Planned"})]})]})]})},V=({data:s,language:n})=>{const c=s.reduce((r,l)=>r+l.value,0),[a,i]=f.useState(!1);f.useEffect(()=>{i(!0)},[]);let x=-90;const g=s.map(r=>{const l=r.value/c*100,d=l/100*360,t=x;return x+=d,{...r,percentage:l,startAngle:t,endAngle:x}}),N=(r,l,d,t)=>{const o=r*Math.PI/180,u=l*Math.PI/180,P=100+t*Math.cos(o),w=100+t*Math.sin(o),C=100+t*Math.cos(u),$=100+t*Math.sin(u),A=100+d*Math.cos(u),k=100+d*Math.sin(u),M=100+d*Math.cos(o),T=100+d*Math.sin(o),y=l-r>180?1:0;return`M ${P} ${w} A ${t} ${t} 0 ${y} 1 ${C} ${$} L ${A} ${k} A ${d} ${d} 0 ${y} 0 ${M} ${T} Z`};return e.jsxs("div",{className:"flex flex-col items-center",children:[e.jsxs("svg",{viewBox:"0 0 200 200",className:"w-48 h-48 md:w-56 md:h-56",children:[g.map((r,l)=>e.jsx("path",{d:N(r.startAngle,r.endAngle-1,50,80),fill:r.color,className:`transition-all duration-500 ${a?"opacity-100":"opacity-0"}`,style:{transitionDelay:`${l*100}ms`}},l)),e.jsx("text",{x:"100",y:"95",textAnchor:"middle",className:"fill-foreground text-2xl font-bold",children:c}),e.jsx("text",{x:"100",y:"115",textAnchor:"middle",className:"fill-muted-foreground text-xs",children:n==="zh"?"æ»è®¡":"Total"})]}),e.jsx("div",{className:"flex flex-wrap justify-center gap-4 mt-4",children:g.map((r,l)=>e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("div",{className:"w-3 h-3 rounded-full",style:{backgroundColor:r.color}}),e.jsxs("span",{className:"text-sm",children:[r.name,": ",r.value," (",r.percentage.toFixed(0),"%)"]})]},l))})]})},U=()=>{const{language:s}=B(),n=100,c=8,a=12,i=80,x=(c+a*.5)/n*100,g=[{region:s==="zh"?"äºå¤ªå°åº":"Asia Pacific",completed:4,inProgress:6,planned:25,total:35,color:"#2563EB"},{region:s==="zh"?"ä¸ä¸éæ´²":"Middle East & Africa",completed:2,inProgress:3,planned:15,total:20,color:"#10B981"}
7,{region:s==="zh"?"欧洲":"Europe",completed:1,inProgress:2,planned:17,total:20,color:"#8B5CF6"},{region:s==="zh"?"ç¾æ´²":"Americas",completed:1,inProgress:1,planned:13,total:15,color:"#F59E0B"},{region:s==="zh"?"ä¸äº":"Central Asia",completed:0,inProgress:0,planned:10,total:10,color:"#EC4899"}],N=[{name:s==="zh"?"已建æ":"Completed",value:c,color:"#10B981"},{name:s==="zh"?"建设ä¸":"In Progress",value:a,color:"#F59E0B"},{name:s==="zh"?"è§åä¸":"Planned",value:i,color:"#94A3B8"}],r=[{city:s==="zh"?"迪æ":"Dubai",country:s==="zh"?"é¿èé
":"UAE",status:"completed",year:2024},{city:s==="zh"?"æ°å å¡":"Singapore",country:s==="zh"?"æ°å å¡":"Singapore",status:"completed",year:2024},{city:s==="zh"?"æµ·å£":"Haikou",country:s==="zh"?"ä¸å½":"China",status:"completed",year:2025},{city:s==="zh"?"馿¸¯":"Hong Kong",country:s==="zh"?"ä¸å½":"China",status:"completed",year:2024},{city:s==="zh"?"鹿ç¹ä¸¹":"Rotterdam",country:s==="zh"?"è·å
°":"Netherlands",status:"completed",year:2025},{city:s==="zh"?"é¦å°":"Seoul",country:s==="zh"?"é©å½":"South Korea",status:"inProgress",year:2026},{city:s==="zh"?"åè¾¾":"Jeddah",country:s==="zh"?"æ²ç¹é¿æä¼¯":"Saudi Arabia",status:"inProgress",year:2026},{city:s==="zh"?"æ¼è°·":"Bangkok",country:s==="zh"?"æ³°å½":"Thailand",status:"inProgress",year:2026}],l=t=>{switch(t){case"completed":return e.jsx(D,{className:"w-4 h-4 text-green-500"});case"inProgress":return e.jsx(H,{className:"w-4 h-4 text-amber-500"});default:return e.jsx(L,{className:"w-4 h-4 text-muted-foreground"})}},d=t=>t==="completed"?s==="zh"?"已建æ":"Completed":t==="inProgress"?s==="zh"?"建设ä¸":"In Progress":s==="zh"?"è§åä¸":"Planned";return e.jsxs("div",{className:"space-y-8",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(v,{className:"w-6 h-6 text-primary"}),e.jsx("h2",{className:"text-2xl font-bold",children:s==="zh"?"ä¸çèªç±è´¸æä¸å¿å»ºè®¾è¿åº¦":"World Free Trade Center Progress"})]}),e.jsxs(m,{children:[e.jsx(p,{children:e.jsxs(j,{className:"flex items-center gap-2 text-lg",children:[e.jsx(E,{className:"w-5 h-5 text-primary"}),s==="zh"?"æ»ä½å»ºè®¾è¿åº¦":"Overall Construction Progress"]})}),e.jsxs(h,{children:[e.jsxs("div",{className:"grid md:grid-cols-4 gap-6 mb-6",children:[e.jsxs("div",{className:"text-center p-4 bg-primary/5 rounded-lg",children:[e.jsx("div",{className:"text-4xl font-bold text-primary",children:n}),e.jsx("div",{className:"text-sm text-muted-foreground mt-1",children:s==="zh"?"ç®æ æ»æ°":"Target Total"})]}),e.jsxs("div",{className:"text-center p-4 bg-green-500/10 rounded-lg",children:[e.jsx("div",{className:"text-4xl font-bold text-green-600",children:c}),e.jsx("div",{className:"text-sm text-muted-foreground mt-1",children:s==="zh"?"已建æ":"Completed"})]}),e.jsxs("div",{className:"text-center p-4 bg-amber-500/10 rounded-lg",children:[e.jsx("div",{className:"text-4xl font-bold text-amber-600",children:a}),e.jsx("div",{className:"text-sm text-muted-foreground mt-1",children:s==="zh"?"建设ä¸":"In Progress"})]}),e.jsxs("div",{className:"text-center p-4 bg-slate-500/10 rounded-lg",children:[e.jsx("div",{className:"text-4xl font-bold text-slate-600",children:i}),e.jsx("div",{className:"text-sm text-muted-foreground mt-1",children:s==="zh"?"è§åä¸":"Planned"})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs("div",{className:"flex justify-between text-sm",children:[e.jsx("span",{className:"text-muted-foreground",children:s==="zh"?"æ´ä½å®æåº¦":"Overall Completion"}),e.jsxs("span",{className:"font-medium",children:[x.toFixed(0),"%"]})]}),e.jsx(_,{value:x,className:"h-3"})]})]})]}),e.jsxs("div",{className:"grid lg:grid-cols-2 gap-6",children:[e.jsxs(m,{children:[e.jsx(p,{children:e.jsxs(j,{className:"flex items-center gap-2 text-lg",children:[e.jsx(b,{className:"w-5 h-5 text-primary"}),s==="zh"?"åºååå¸":"Regional Distribution"]})}),e.jsx(h,{children:e.jsx(K,{data:g,language:s})})]}),e.jsxs(m,{children:[e.jsx(p,{children:e.jsxs(j,{className:"flex items-center gap-2 text-lg",children:[e.jsx(I,{className:"w-5 h-5 text-primary"}),s==="zh"?"å»ºè®¾ç¶æåå¸":"Construction Status"]})}),e.jsx(h,{className:"flex justify-center",children:e.jsx(V,{data:N,language:s})})]})]}),e.jsxs(m,{children:[e.jsx(p,{children:e.jsxs(j,{className:"flex items-center gap-2 text-lg",children:[e.jsx(v,{className:"w-5 h-5 text-primary"}),s==="zh"?"éç¹åå¸å»ºè®¾æ
åµ":"Key Cities Status"]})}),e.jsx(h,{children:e.jsx("div",{className:"grid sm:grid-cols-2 lg:grid-cols-4 gap-4",children:r.map((t,o)=>e.jsxs("div",{className:"flex items-center gap-3 p-4 bg-muted/50 rounded-lg hover:bg-muted transition-colors",children:[l(t.status),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("div",{className:"font-medium truncate",children:t.city}),e.jsxs("div",{className:"text-xs text-muted-foreground flex items-center gap-2",children:[e.jsx("span",{children:t.country}),e.jsx("span",{children:"â¢"}),e.jsx("span",{children:t.year})]})]}),e.jsx("span",{className:`text-xs px-2 py-1 rounded-full ${t.status==="completed"?"bg-green-100 text-green-700 dark:bg-green-900/30 dark:text-green-400":"bg-amber-100 text-amber-700 dark:bg-amber-900/30 dark:text-amber-400"}`,children:d(t.status)})]},o))})})]}
7),e.jsx("div",{className:"grid sm:grid-cols-2 lg:grid-cols-5 gap-4",children:g.map((t,o)=>e.jsx(m,{className:"text-center",children:e.jsxs(h,{className:"pt-6",children:[e.jsx("div",{className:"w-12 h-12 rounded-full mx-auto mb-3 flex items-center justify-center",style:{backgroundColor:`${t.color}20`},children:e.jsx(b,{className:"w-6 h-6",style:{color:t.color}})}),e.jsx("div",{className:"text-2xl font-bold",children:t.total}),e.jsx("div",{className:"text-sm text-muted-foreground truncate",children:t.region}),e.jsxs("div",{className:"mt-2 flex justify-center gap-2 text-xs",children:[e.jsxs("span",{className:"text-green-600",children:[t.completed," ",s==="zh"?"建æ":"done"]}),e.jsxs("span",{className:"text-amber-600",children:[t.inProgress," ",s==="zh"?"å¨å»º":"wip"]})]})]})},o))}),e.jsx(f.Suspense,{fallback:e.jsxs(m,{children:[e.jsx(p,{children:e.jsx(z,{className:"h-6 w-48"})}),e.jsx(h,{children:e.jsx(z,{className:"h-[500px] w-full"})})]}),children:e.jsx(O,{})})]})},W=Object.freeze(Object.defineProperty({__proto__:null,default:U},Symbol.toStringTag,{value:"Module"}));export{H,W as T};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.