Files
star-kitten/packages/eve-data/src/models/group.ts
T
2026-09-06 11:29:23 -04:00

30 lines
978 B
TypeScript

import type { LocalizedString } from './shared-types';
import { dataSets, loadModels } from './loadModels';
export interface Group {
readonly group_id: number;
readonly category_id: number;
readonly name: LocalizedString;
readonly published: boolean;
readonly icon_id?: number;
readonly anchorable: boolean;
readonly anchored: boolean;
readonly fittable_non_singleton: boolean;
readonly use_base_price: boolean;
readonly type_ids?: number[];
}
export function getGroup(group_id: number): Group {
if (!dataSets.loaded) loadModels();
const data = dataSets.groups[String(group_id)];
if (!data) throw new Error(`Group ID ${group_id} not found in reference data`);
return data;
}
export function groupEveRefLink(group_id: number) {
return `https://everef.net/groups/${group_id}`;
}
export function renderGroupEveRefLink(group: Group, locale: string = 'en') {
return `[${group.name[locale] ?? group.name.en}](${groupEveRefLink(group.group_id)})`;
}