1import{_ as F}from"./CvMVyTfu.js";import S from"./DlUS4SxD.js";import{E as V,o as l,c,a as e,i as m,j as k,e as u,_ as U,n as h,h as t,t as d,M,f as $,b as N,d as y,F as E,l as G}from"./BXA5FzRJ.js";import{_ as H}from"./B7pDHWI1.js";import{g as I}from"./Buwj1sW-.js";import{f as x}from"./BBHjeOXq.js";import{f as C}from"./Cl7Pi26f.js";import{_ as R}from"./DcWkh7_I.js";import{u as q}from"./DWqEPCzR.js";import{m as O}from"./90JIyfLa.js";import"./qmbnezf9.js";import"./DZFRiBcs.js";const J={},K={class:"flex flex-col items-center justify-center py-20 px-4 max-w-2xl mx-auto"},Q={class:"text-center"},W={class:"bg-gray-50 dark:bg-gray-800 rounded-lg p-6 mb-6"},X={class:"text-left text-gray-600 dark:text-gray-300 space-y-2 mb-4"},Y={class:"flex items-start"},Z={class:"flex items-start"},ee={class:"flex items-start"},te={class:"flex items-start"},se={class:"flex flex-col sm:flex-row gap-4 justify-center"};function re(g,o){const n=S,s=U;return l(),c("div",K,[e("div",Q,[m(n,{name:"feather:server-off",class:"text-gray-400 dark:text-gray-600 w-16 h-16 mb-4"}),o[7]||(o[7]=e("h2",{class:"text-2xl font-bold text-gray-800 dark:text-white mb-4"},"Server Not Found",-1)),e("div",W,[o[4]||(o[4]=e("p",{class:"text-gray-600 dark:text-gray-300 mb-4"}," The server you're looking for could not be found. This could be due to: ",-1)),e("ul",X,[e("li",Y,[m(n,{name:"feather:x-circle",class:"text-red-500 mr-2 mt-1 flex-shrink-0",size:"16"}),o[0]||(o[0]=e("span",null,"The server domain was entered incorrectly",-1))]),e("li",Z,[m(n,{name:"feather:trash-2",class:"text-red-500 mr-2 mt-1 flex-shrink-0",size:"16"}),o[1]||(o[1]=e("span",null,"The server has been removed from our database",-1))]),e("li",ee,[m(n,{name:"feather:shield",class:"text-red-500 mr-2 mt-1 flex-shrink-0",size:"16"}),o[2]||(o[2]=e("span",null,"The server is blocked by robots.txt",-1))]),e("li",te,[m(n,{name:"feather:alert-triangle",class:"text-red-500 mr-2 mt-1 flex-shrink-0",size:"16"}),o[3]||(o[3]=e("span",null,"The server identifier was mistyped",-1))])])]),e("div",se,[m(s,{to:"/servers",class:"px-5 py-2.5 bg-blue-600 hover:bg-blue-700 text-white rounded-lg transition-colors duration-200 flex items-center justify-center"},{default:k(()=>[m(n,{name:"feather:list",class:"mr-2",size:"16"}),o[5]||(o[5]=u(" Back to Server List ",-1))]),_:1}),m(s,{to:"/",class:"px-5 py-2.5 bg-gray-200 dark:bg-gray-700 hover:bg-gray-300 dark:hover:bg-gray-600 text-gray-700 dark:text-gray-200 rounded-lg transition-colors duration-200 flex items-center justify-center"},{default:k(()=>[m(n,{name:"feather:home",class:"mr-2",size:"16"}),o[6]||(o[6]=u(" Go to Homepage ",-1))]),_:1})])])])}const ae=V(J,[["render",re]]),oe={class:"bg-white dark:bg-gray-800 rounded-lg shadow-md mb-8"},ne={class:"p-6 border-b border-gray-200 dark:border-gray-700"},ie={class:"flex items-center flex-col gap-3 justify-center md:flex-row"},de={class:"text-white text-2xl font-bold"},le={class:"text-2xl font-bold text-gray-800 dark:text-white"},me={class:"md:ml-auto flex items-center space-x-3"},ce=["href"],ge={class:"p-6 grid grid-cols-1 md:grid-cols-4 gap-6"},xe={class:"bg-gray-50 dark:bg-gray-700 p-4 rounded-lg"},ue={class:"text-2xl font-bold text-gray-800 dark:text-white mt-2"},fe={class:"bg-gray-50 dark:bg-gray-700 p-4 rounded-lg"},ye={class:"text-2xl font-bold text-gray-800 dark:text-white mt-2"},he={class:"bg-gray-50 dark:bg-gray-700 p-4 rounded-lg"},pe={class:"text-2xl font-bold text-gray-800 dark:text-white mt-2"},be={class:"bg-gray-50 dark:bg-gray-700 p-4 rounded-lg"},ve={class:"text-2xl font-bold text-gray-800 dark:text-white mt-2"},ke={__name:"ServerSummaryCard",props:{server:{type:Object,required:!0}},setup(g){return(o,n)=>{const s=S;return l(),c("div",oe,[e("div",ne,[e("div",ie,[e("div",{class:h([("generateBgColor"in o?o.generateBgColor:t(I))(g.server.software.name),"h-16 w-16 rounded-lg flex items-center justify-center md:mr-5"])},[e("span",de,d(g.server.icon||g.server.domain.charAt(0).toUpperCase()),1)],2),e("div",null,[e("h1",le,d(g.server.domain),1)]),e("div",me,[e("a",{href:`https://${g.server.domain}`,target:"_blank",rel:"noopener noreferrer",class:"inline-flex items-center px-4 py-2 bg-blue-600 hover:bg-blue-700 text-white text-sm font-medium rounded-lg gap-2"},[n[0]||(n[0]=u(" Visit Server ",-1)),m(s,{name:"feather:external-link"})],8,ce)])])]),e("div",ge,[e("div",xe,[n[1]||(n[1]=e("h3",{class:"text-sm font-medium text-gray-500 dark:text-gray-400"},"Monthly Active Users",-1)),e("p",ue,d(g.server.stats?.monthly_active_users?.toLocaleStr
1ing()||"Unknown"),1)]),e("div",fe,[n[2]||(n[2]=e("h3",{class:"text-sm font-medium text-gray-500 dark:text-gray-400"},"Total Accounts",-1)),e("p",ye,d(("formatNumber"in o?o.formatNumber:t(x))(g.server.stats.user_count)),1)]),e("div",he,[n[3]||(n[3]=e("h3",{class:"text-sm font-medium text-gray-500 dark:text-gray-400"},"Total Statuses",-1)),e("p",pe,d(("formatNumber"in o?o.formatNumber:t(x))(g.server.stats.status_count)),1)]),e("div",be,[n[4]||(n[4]=e("h3",{class:"text-sm font-medium text-gray-500 dark:text-gray-400"},"First Seen",-1)),e("p",ve,d(g.server.first_seen_at?("formatDate"in o?o.formatDate:t(C))(g.server.first_seen_at):"Unknown"),1)])])])}}},_e={class:"min-h-screen bg-gray-50 dark:bg-gray-900"},we={class:"container max-w-6xl mx-auto px-4 py-8"},$e={key:0,class:"flex justify-center items-center h-64"},Ne={key:2},Se={class:"mb-6"},Ue={class:"grid grid-cols-1 lg:grid-cols-3 gap-8"},Ce={class:"lg:col-span-1"},Ae={class:"bg-white dark:bg-gray-800 rounded-lg shadow-md p-6 mb-8"},Te={key:0,class:"mb-4"},De={class:"text-gray-800 dark:text-gray-200 text-sm line-clamp-4"},Be={class:"mb-4"},Le={class:"flex items-center"},je={class:"ml-2 text-gray-800 dark:text-gray-200 text-xs"},Pe={key:1,class:"mb-4"},ze={class:"text-gray-800 dark:text-gray-200"},Fe={class:"mb-4"},Ve={class:"text-gray-800 dark:text-gray-200"},Me={class:"lg:col-span-2"},Ee={class:"bg-white dark:bg-gray-800 rounded-lg shadow-md overflow-hidden mb-8"},Ge={class:"bg-white dark:bg-gray-800 rounded-lg shadow-md overflow-hidden mb-8"},He={key:1,class:"h-80 flex items-center justify-center text-gray-500 dark:text-gray-400"},Ie={class:"bg-white dark:bg-gray-800 rounded-lg shadow-md overflow-hidden"},Re={class:"overflow-x-auto"},qe={class:"min-w-full divide-y divide-gray-200 dark:divide-gray-700"},Oe={class:"bg-white dark:bg-gray-800 divide-y divide-gray-200 dark:divide-gray-700"},Je={class:"px-6 py-4 whitespace-nowrap text-sm text-gray-800 dark:text-gray-200"},Ke={class:"px-6 py-4 whitespace-nowrap text-sm text-gray-800 dark:text-gray-200"},Qe={class:"px-6 py-4 whitespace-nowrap text-sm text-gray-800 dark:text-gray-200"},We={class:"px-6 py-4 whitespace-nowrap text-sm text-gray-800 dark:text-gray-200"},ct={__name:"[domain]",setup(g){const o=M(),n=$(()=>o.params.domain),{data:s,isLoading:b,isError:Xe,error:_,refetch:Ye}=O(n.value),A=$(()=>{if(!s.value?.monthly_stats)return[];const r=s.value.monthly_stats.map(a=>({date:a.date,users:a.user_count,activeUsers:a.active_monthly,posts:a.status_count}));return r.map((a,p)=>{if(p===0)return{...a,deltaUsers:0,deltaActiveUsers:0,deltaPosts:0};const f=r[p-1];return{...a,deltaUsers:a.users-f.users,deltaActiveUsers:a.activeUsers-f.activeUsers,deltaPosts:a.posts-f.posts}})}),v=r=>new Date(r).toLocaleDateString("en-US",{month:"short",year:"numeric"}),T=[{name:"User Count",field:"user_count",type:"line",width:3,showArea:!0,showSymbol:!1},{name:"Monthly Active",field:"active_monthly",type:"line",width:2,showArea:!0,showSymbol:!1}],D=[{name:"Status Count",field:"status_count",type:"line",width:3,showArea:!0,showSymbol:!1}],B=r=>({Mastodon:"bg-indigo-100 dark:bg-indigo-900 text-indigo-800 dark:text-indigo-200",Misskey:"bg-blue-100 dark:bg-blue-900 text-blue-800 dark:text-blue-200",Pleroma:"bg-green-100 dark:bg-green-900 text-green-800 dark:text-green-200",Pixelfed:"bg-purple-100 dark:bg-purple-900 text-purple-800 dark:text-purple-200",Firefish:"bg-pink-100 dark:bg-pink-900 text-pink-800 dark:text-pink-200"})[r]||"bg-gray-100 dark:bg-gray-700 text-gray-800 dark:text-gray-200";return q(()=>({title:s.value?`${s.value.domain} - FediDB`:"Server Details - FediDB",meta:[{name:"description",content:s.value?`Explore ${s.value.domain} - ${s.value.description}`:"View detailed server information in the fediverse"}]})),(r,a)=>{const p=F,f=ae,L=H,j=ke,P=U,w=R;return l(),c("div",_e,[e("div",we,[t(b)?(l(),c("div",$e,[m(p)])):t(s)?(l(),c("div",Ne,[e("div",Se,[m(L,{secondLevelTitle:"Servers",secondLevelPath:"/servers",thirdLevelTitle:n.value},null,8,["thirdLevelTitle"])]),m(j,{server:t(s)},null,8,["server"]),e("div",Ue,[e("div",Ce,[e("div",Ae,[a[4]||(a[4]=e("h2",{class:"text-xl font-bold text-gray-800 dark:text-white mb-4"},"Server Information",-1)),t(s).description?(l(),c("div",Te,[a[0]||(a[0]=e("h3",{class:"text-sm font-medium text-gray-500 dark:text-gray-400 mb-1"},"Description",-1)),e("p",De,d(t(s).description),1)])):y("",!0),e("div",Be,[a[1]||(a[1]=e("h3",{class:"text-sm font-medium text-gray-500 dark:text-gray-400 mb-1"},"Software",-1)),e("div",Le,[m(P,{href:`/software/${t(s).software.slug}`,class:h(["px-2 py-1 text-xs inline-flex text-center font-medium rounded-md",B(t(s).software.name)])},{default:k(()=>[u(d(t(s).software.name),1)]),_:1}
1,8,["href","class"]),e("span",je,d(t(s).software.version),1)])]),t(s).location?.country?(l(),c("div",Pe,[a[2]||(a[2]=e("h3",{class:"text-sm font-medium text-gray-500 dark:text-gray-400 mb-1"},"Location",-1)),e("p",ze,d(t(s).location?.city||"")+" "+d(t(s).location?.country||""),1)])):y("",!0),e("div",Fe,[a[3]||(a[3]=e("h3",{class:"text-sm font-medium text-gray-500 dark:text-gray-400 mb-1"},"Last Seen",-1)),e("p",Ve,d(t(s).last_seen_at?("formatDate"in r?r.formatDate:t(C))(t(s).last_seen_at):"Never"),1)])])]),e("div",Me,[e("div",Ee,[m(w,{title:`User Growth - ${t(s).domain}`,"chart-data":t(s).monthly_stats,"x-axis-field":"date","x-axis-formatter":v,series:T,"is-loading":t(b),error:t(_),"initial-theme":"system",onThemeChange:r.handleThemeChange},null,8,["title","chart-data","is-loading","error","onThemeChange"])]),e("div",Ge,[t(s).monthly_stats?(l(),N(w,{key:0,title:`Activity Growth - ${t(s).domain}`,"chart-data":t(s).monthly_stats,"x-axis-field":"date","x-axis-formatter":v,series:D,"is-loading":t(b),error:t(_),"initial-theme":"system",onThemeChange:r.handleThemeChange},null,8,["title","chart-data","is-loading","error","onThemeChange"])):(l(),c("div",He,[...a[5]||(a[5]=[e("div",{class:"text-center"},[e("svg",{class:"mx-auto h-12 w-12 text-gray-400",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"},[e("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z"})]),e("p",{class:"mt-2"},"No activity data available")],-1)])]))]),e("div",Ie,[a[7]||(a[7]=e("h2",{class:"text-xl font-bold text-gray-800 dark:text-white p-4 bg-gray-200 dark:bg-gray-700"},"Historical Statistics",-1)),e("div",Re,[e("table",qe,[a[6]||(a[6]=e("thead",{class:"bg-gray-50 dark:bg-gray-800"},[e("tr",null,[e("th",{scope:"col",class:"px-6 py-3 text-left text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wider"},"Date"),e("th",{scope:"col",class:"px-6 py-3 text-left text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wider"},"Accounts"),e("th",{scope:"col",class:"px-6 py-3 text-left text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wider"},"Active Accounts"),e("th",{scope:"col",class:"px-6 py-3 text-left text-xs font-medium text-gray-500 dark:text-gray-400 uppercase tracking-wider"},"Statuses")])],-1)),e("tbody",Oe,[(l(!0),c(E,null,G(A.value.reverse(),(i,z)=>(l(),c("tr",{key:z},[e("td",Je,d(v(i.date)),1),e("td",Ke,[u(d(("formatNumber"in r?r.formatNumber:t(x))(i.users,2))+" ",1),i.deltaUsers!=0?(l(),c("span",{key:0,class:h(["ml-2 text-xs font-medium",i.deltaUsers>=0?"text-green-600 dark:text-green-400":"text-red-600 dark:text-red-400"])},d(i.deltaUsers>=0?"+"+("formatNumber"in r?r.formatNumber:t(x))(i.deltaUsers):("formatNumber"in r?r.formatNumber:t(x))(i.deltaUsers)),3)):y("",!0)]),e("td",Qe,[u(d(("formatNumber"in r?r.formatNumber:t(x))(i.activeUsers,2))+" ",1),i.deltaActiveUsers!=0?(l(),c("span",{key:0,class:h(["ml-2 text-xs font-medium",i.deltaActiveUsers>=0?"text-green-600 dark:text-green-400":"text-red-600 dark:text-red-400"])},d(i.deltaActiveUsers>=0?"+"+("formatNumber"in r?r.formatNumber:t(x))(i.deltaActiveUsers):("formatNumber"in r?r.formatNumber:t(x))(i.deltaActiveUsers)),3)):y("",!0)]),e("td",We,[u(d(("formatNumber"in r?r.formatNumber:t(x))(i.posts,2))+" ",1),i.deltaPosts!=0?(l(),c("span",{key:0,class:h(["ml-2 text-xs font-medium",i.deltaPosts>=0?"text-green-600 dark:text-green-400":"text-red-600 dark:text-red-400"])},d(i.deltaPosts>=0?"+"+("formatNumber"in r?r.formatNumber:t(x))(i.deltaPosts):("formatNumber"in r?r.formatNumber:t(x))(i.deltaPosts)),3)):y("",!0)])]))),128))])])])])])])])):(l(),N(f,{key:1}))])])}}};export{ct as default};
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.