src/modules/weather/weather-codes.helper.ts
export class WeatherCodesHelper {
public static codes = [
{
id: 0,
icon: 'tornado',
description: 'tornado',
descriptionFa: 'توفانی'
},
{
id: 1,
icon: 'tropical-storm',
description: 'tropical storm',
descriptionFa: 'طوفان گرمسیری'
},
{
id: 2,
icon: 'tornado',
description: 'hurricane',
descriptionFa: 'تندباد'
},
{
id: 3,
icon: 'thunderstorms',
description: 'severe thunderstorms',
descriptionFa: 'رعد و برق شدید'
},
{
id: 4,
icon: 'thunderstorms',
description: 'thunderstorms',
descriptionFa: 'رعد و برق'
},
{
id: 5,
icon: 'mixed-rain-and-snow',
description: 'mixed rain and snow',
descriptionFa: 'برف و باران'
},
{
id: 6,
icon: 'mixed-rain-and-sleet',
description: 'mixed rain and sleet',
descriptionFa: 'باران و یخ'
},
{
id: 7,
icon: 'mixed-rain-and-sleet',
description: 'mixed snow and sleet',
descriptionFa: 'برف و بوران'
},
{
id: 8,
icon: 'snow-drizzle',
description: 'freezing drizzle',
descriptionFa: 'بارش نمنم یخ'
},
{
id: 9,
icon: 'drizzle',
description: 'drizzle',
descriptionFa: 'بارش نمنم'
},
{
id: 10,
icon: 'freezing-rain',
description: 'freezing rain',
descriptionFa: 'بارش باران یخزده'
},
{
id: 11,
icon: 'showers',
description: 'showers',
descriptionFa: 'رگبار'
},
{
id: 12,
icon: 'showers',
description: 'showers',
descriptionFa: 'رگبار'
},
{
id: 13,
icon: 'flurries',
description: 'snow flurries',
descriptionFa: 'بارش برف پراکنده'
},
{
id: 14,
icon: 'flurries',
description: 'light snow showers',
descriptionFa: 'بارش برف سبک'
},
{
id: 15,
icon: 'snowflake',
description: 'blowing snow',
descriptionFa: 'وزش برف'
},
{
id: 16,
icon: 'snowflake',
description: 'snow',
descriptionFa: 'برفی'
},
{
id: 17,
icon: 'hail',
description: 'hail',
descriptionFa: 'تگرگ'
},
{
id: 18,
icon: 'sleet',
description: 'sleet',
descriptionFa: 'برف و باران'
},
{
id: 19,
icon: 'dust',
description: 'dust',
descriptionFa: 'گرد و خاک'
},
{
id: 20,
icon: 'foggy',
description: 'foggy',
descriptionFa: 'مهآلود'
},
{
id: 21,
icon: 'foggy',
description: 'haze',
descriptionFa: 'مه'
},
{
id: 22,
icon: 'foggy',
description: 'smoky',
descriptionFa: 'دود'
},
{
id: 23,
icon: 'windy',
description: 'blustery',
descriptionFa: 'پرباد'
},
{
id: 24,
icon: 'windy',
description: 'windy',
descriptionFa: 'وزش باد'
},
{
id: 25,
icon: 'thermometer',
description: 'cold',
descriptionFa: 'سرد'
},
{
id: 26,
icon: 'cloudy',
description: 'cloudy',
descriptionFa: 'ابری'
},
{
id: 27,
icon: 'cloudy-night',
description: 'mostly cloudy (night)',
descriptionFa: 'بیشتر ابری'
},
{
id: 28,
icon: 'cloudy-day',
description: 'mostly cloudy (day)',
descriptionFa: 'بیشتر ابری'
},
{
id: 29,
icon: 'cloudy-night',
description: 'partly cloudy (night)',
descriptionFa: 'کمی ابری'
},
{
id: 30,
icon: 'cloudy-day',
description: 'partly cloudy (day)',
descriptionFa: 'کمی ابری'
},
{
id: 31,
icon: 'night',
description: 'clear (night)',
descriptionFa: 'صاف'
},
{
id: 32,
icon: 'sunny',
description: 'sunny',
descriptionFa: 'آفتابی'
},
{
id: 33,
icon: 'night',
description: 'fair (night)',
descriptionFa: 'صاف'
},
{
id: 34,
icon: 'day',
description: 'fair (day)',
descriptionFa: 'صاف'
},
{
id: 35,
icon: 'freezing-rain',
description: 'mixed rain and hail',
descriptionFa: 'باران و تگرگ'
},
{
id: 36,
icon: 'sun-hot',
description: 'hot',
descriptionFa: 'داغ'
},
{
id: 37,
icon: 'thunderstorms-2',
description: 'isolated thunderstorms',
descriptionFa: 'رعد و برق محدود'
},
{
id: 38,
icon: 'thunderstorms-2',
description: 'scattered thunderstorms',
descriptionFa: 'رعد و برق پراکنده'
},
{
id: 39,
icon: 'thunderstorms-2',
description: 'scattered thunderstorms',
descriptionFa: 'رعد و برق پراکنده'
},
{
id: 40,
icon: 'windy-rainy',
description: 'scattered showers',
descriptionFa: 'رگبار پراکنده'
},
{
id: 41,
icon: 'mixed-rain-and-sleet',
description: 'heavy snow',
descriptionFa: 'برف شدید'
},
{
id: 42,
icon: 'sleet',
description: 'scattered snow showers',
descriptionFa: 'رگبار برف پراکنده'
},
{
id: 43,
icon: 'mixed-rain-and-sleet',
description: 'heavy snow',
descriptionFa: 'برف شدید'
},
{
id: 44,
icon: 'cloudy-day',
description: 'partly cloudy',
descriptionFa: 'کمی ابری'
},
{
id: 45,
icon: 'thunderstorms',
description: 'thundershowers',
descriptionFa: 'رگبار و رعد و برق'
},
{
id: 46,
icon: 'mixed-rain-and-sleet',
description: 'snow showers',
descriptionFa: 'رگبار برف'
},
{
id: 47,
icon: 'showers',
description: 'isolated thundershowers',
descriptionFa: 'رگبار و رعد و برق'
},
{
id: 3200,
icon: 'none',
description: 'not available',
descriptionFa: 'موجود نیست'
}
];
public static resolveCode(code: number, lang: string = 'fa'): string {
const description: string = 'description' + (lang !== '' ? lang.charAt(0).toUpperCase() + lang.slice(1) : '');
let output: string = '';
WeatherCodesHelper.codes.forEach((item) => {
if (item.id === code) {
output = item[description];
}
});
return output;
}
public static resolveIcon(code: number): string {
let output: string = 'none';
WeatherCodesHelper.codes.forEach((item) => {
if (item.id === code) {
output = item['icon'];
}
});
return output;
}
}