@heycar-uikit/core
Version:
The React UI library from HeyCar
40 lines (37 loc) • 1.5 kB
JavaScript
import React from 'react';
import { Language, Netherlands, UK, France, Spain, Germany } from '../../../icons/modern';
import { LANG_OPTIONS } from '../constants/Header.constants.js';
const getFlagIcon = (langCode) => {
switch (langCode) {
case 'de-DE':
return React.createElement(Germany, null);
case 'es-ES':
return React.createElement(Spain, null);
case 'fr-FR':
return React.createElement(France, null);
case 'en-GB':
return React.createElement(UK, null);
case 'nl-NL':
return React.createElement(Netherlands, null);
default:
return React.createElement(Language, null);
}
};
const getCurrentLang = (currentLangCode, langOptions = LANG_OPTIONS) => {
const langObj = langOptions.find(lang => lang.langCode === currentLangCode);
if (!langObj)
return undefined;
const Icon = getFlagIcon(currentLangCode);
return {
...langObj,
icon: Icon,
};
};
const hasHeaderItems = (searchItemConfig, favoritesItemConfig, langItemConfig, accountItemConfig, callItemConfig) => ({
hasSearch: !!searchItemConfig && !searchItemConfig.hide,
hasFaves: !!favoritesItemConfig && !favoritesItemConfig.hide,
hasLang: !!langItemConfig && !langItemConfig.hide,
hasAccount: !!accountItemConfig && !accountItemConfig.hide,
hasCall: !!callItemConfig && !callItemConfig.hide,
});
export { getCurrentLang, getFlagIcon, hasHeaderItems };