diff --git a/apps/blog/components/Article/AllArticle/index.tsx b/apps/blog/components/Article/AllArticle/index.tsx index 0c0718704523c..0d4485a69247e 100644 --- a/apps/blog/components/Article/AllArticle/index.tsx +++ b/apps/blog/components/Article/AllArticle/index.tsx @@ -11,8 +11,7 @@ import CategoriesSelector from 'components/Article/CategoriesSelector' import useAllArticle from 'hooks/useAllArticle' import useLanguage from 'hooks/useLanguage' import SkeletonArticle from 'components/SkeletonArticle' -import { storageLangMap } from 'utils/getLocalStorageLanguageCode' -import { getLanguageCodeFromLS } from 'utils/getLanguageCodeFromLS' +import { getLanguageCodeFromLS, LS_KEY } from 'utils/getLanguageCodeFromLS' const StyledArticleContainer = styled(Box)` width: 100%; @@ -99,8 +98,7 @@ const AllArticle = () => { const codeFromStorage = getLanguageCodeFromLS() useEffect(() => { if (codeFromStorage) { - const languageStorage = storageLangMap(codeFromStorage) - setLanguageOption(languageStorage) + setLanguageOption(codeFromStorage) } }, [codeFromStorage]) @@ -118,6 +116,15 @@ const AllArticle = () => { setCurrentPage(value) } + const handleSwitchLanguage = (language: string) => { + setLanguageOption(language) + + const blogCodeFromStorage = localStorage.getItem(LS_KEY) + if (blogCodeFromStorage !== language) { + localStorage.setItem(LS_KEY, language) + } + } + return ( { title={t('Languages')} value={languageOption} options={languageItems} - setOption={setLanguageOption} + setOption={handleSwitchLanguage} /> )} diff --git a/apps/blog/utils/getLanguageCodeFromLS.ts b/apps/blog/utils/getLanguageCodeFromLS.ts index dd2b575d828eb..d221fe8eebcd9 100644 --- a/apps/blog/utils/getLanguageCodeFromLS.ts +++ b/apps/blog/utils/getLanguageCodeFromLS.ts @@ -1,9 +1,8 @@ -const LS_KEY = 'pancakeswap_language' +export const LS_KEY = 'blog_pancakeswap_language' export const getLanguageCodeFromLS = () => { try { const codeFromStorage = localStorage.getItem(LS_KEY) - return codeFromStorage || 'en' } catch { return 'en' diff --git a/apps/blog/utils/getLocalStorageLanguageCode.ts b/apps/blog/utils/getLocalStorageLanguageCode.ts deleted file mode 100644 index c9bb530ac2ea3..0000000000000 --- a/apps/blog/utils/getLocalStorageLanguageCode.ts +++ /dev/null @@ -1,25 +0,0 @@ -const storageLanguage: any = { - 'en-US': 'en', - 'id-ID': 'id', - 'pt-PT': 'pt', - 'es-ES': 'es', - 'tr-TR': 'tr', - 'zh-CN': 'zh-CN', - 'ru-RU': 'ru', - 'it-IT': 'it', - 'ja-JP': 'ja', - 'de-DE': 'de', - 'vi-VN': 'vi', - 'fr-FR': 'fr', -} -// {label: 'Georgian', value: 'ka'} - -export const storageLangMap = (languageCode: string) => { - if (!languageCode) { - return 'en' - } - if (storageLanguage[languageCode]) { - return storageLanguage[languageCode] - } - return 'en' -}