fix: more imports 2

This commit is contained in:
TrèsAbhi committed 2024-09-08 10:15:42 -05:00
1 parent 4f24db0956
commit c51ddbc725
49 files changed
+138 -123

No files matched your search

@@ -0,0 +1,46 @@
import { Region } from '@blitzkit/core';
import { fetchBlitz } from '@blitzkit/core/src/blitz/fetchBlitz';
import { normalizeIds } from '../../../website/src/core/blitz/normalizeIds';
type IndividualClanAccountInfo = {
account_id: number;
joined_at: number;
clan_id: number;
role: string;
account_name: string;
clan?: {
members_count: number;
name: string;
created_at: number;
tag: string;
clan_id: number;
emblem_set_id: number;
};
} | null;
interface ClanAccountInfo {
[accountId: number]: IndividualClanAccountInfo;
}
export async function getClanAccountInfo<
Ids extends number | number[],
ReturnType = Ids extends number
? IndividualClanAccountInfo
: IndividualClanAccountInfo[],
>(region: Region, ids: Ids, extra: string[] = []) {
const object = await fetchBlitz<ClanAccountInfo>(
region,
'clans/accountinfo',
{
account_id: normalizeIds(ids),
extra: extra.length === 0 ? undefined : extra.join(','),
},
);
if (typeof ids === 'number') {
return object[ids as number] as ReturnType;
} else {
return ids.map((id) => object[id]) as ReturnType;
}
}