Files
TechRadarAJR/src/config.ts
2022-12-16 13:15:04 +01:00

50 lines
1.3 KiB
TypeScript

import { HomepageOption, Item, QuadrantConfig } from "./model";
export interface ConfigData {
tags?: string[];
quadrants: { [key: string]: string };
rings: string[];
showEmptyRings: boolean;
quadrantsMap: { [quadrant: string]: QuadrantConfig };
chartConfig: {
size: number;
scale: number[];
blipSize: number;
ringsAttributes: { radius: number; arcWidth: number }[];
};
homepageContent: HomepageOption;
dateFormat?: string;
editLink?: {
radarLink: string;
title?: string;
};
}
export const radarName =
process.env.REACT_APP_RADAR_NAME || "AOE Technology Radar";
export const radarNameShort = radarName;
export const getItemPageNames = (items: Item[]) =>
items.map((item) => `${item.quadrant}/${item.name}`);
export function isMobileViewport() {
// return false for server side rendering
if (typeof window == "undefined") return false;
const width =
window.innerWidth ||
document.documentElement.clientWidth ||
document.body.clientWidth;
return width < 1200;
}
export const publicUrl = (process.env.PUBLIC_URL || "").replace(/\/$/, '') + "/";
export function assetUrl(file: string) {
return publicUrl + file;
}
export function translate(config: ConfigData, key: string) {
return config.quadrants[key] || "-";
}