1
0
Fork 0
mirror of https://github.com/pawelmalak/flame.git synced 2025-07-19 11:39:36 +02:00
flame/client/src/components/UI/Icons/WeatherIcon/IconMapping.ts
2022-09-02 21:31:11 +02:00

34 lines
No EOL
739 B
TypeScript

import { IconKey } from 'skycons-ts';
export interface WeatherCondition {
code: number;
icon: {
day: IconKey;
night: IconKey;
}
}
export enum TimeOfDay {
day,
night
}
const mapFromJson = require('./WeatherMapping.json')
export class IconMapping {
private conditions: WeatherCondition[] = mapFromJson.mapping
mapIcon(weatherStatusCode: number, timeOfDay: TimeOfDay): IconKey {
const mapping = this.conditions.find((condition: WeatherCondition) => condition.code === weatherStatusCode);
if (mapping) {
if (timeOfDay === TimeOfDay.day) {
return mapping.icon.day;
} else if (timeOfDay === TimeOfDay.night) {
return mapping.icon.night;
}
}
return 'clear-day';
}
}