import server_names from "@/data/server_names.json"; import servers from "@/data/servers.json"; import top_server_tags_data from "@/data/server_top_tags.json"; import { locales } from '@/utils/locales'; const top_server_tags: {[server: string]: string[]} = top_server_tags_data; //const ServerCards: React.FC = (topServerIds: number[]) => { interface Server { domain: string; description: string; proxied_thumbnail: string; top_tags: string[]; languages: string[]; } // map { code: "be", language: "Беларуская" } to dictionary const localeDictionary = locales.reduce((acc, locale) => { acc[locale.code] = locale.language; return acc; }, {} as { [key: string]: string }); console.log(localeDictionary); const server_data: {[id: number]: Server} = {}; for (let i = 0; i < servers.length; i++) { let s_name: string = servers[i].domain; let index = server_names.indexOf(s_name); if (index > -1) { server_data[index] = { domain: servers[i].domain, description: servers[i].description, proxied_thumbnail: servers[i].proxied_thumbnail, top_tags: [], languages: servers[i].languages }; if (top_server_tags[s_name] !== undefined) { server_data[index].top_tags = top_server_tags[s_name]; } }; }; export function ServerCards(props: {topServerIds: number[], tagCount: number}) { let server_info = props.topServerIds.map((id) => server_data[id]); return (
{data.domain}
{data.languages.map((lang) => ( {localeDictionary[lang]} ))}
{data.description}