From 708976a9e9a246a9dbb167931cd0512b9e93bc26 Mon Sep 17 00:00:00 2001 From: Lim Chee Aun Date: Wed, 3 Apr 2024 19:48:18 +0800 Subject: [PATCH] Anything Intl always need to extract out and memoized --- src/utils/localeCode2Text.jsx | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/utils/localeCode2Text.jsx b/src/utils/localeCode2Text.jsx index e9843ace..5c8ada7f 100644 --- a/src/utils/localeCode2Text.jsx +++ b/src/utils/localeCode2Text.jsx @@ -1,10 +1,16 @@ -export default function localeCode2Text(code) { +import mem from './mem'; + +const IntlDN = new Intl.DisplayNames(navigator.languages, { + type: 'language', +}); + +function _localeCode2Text(code) { try { - return new Intl.DisplayNames(navigator.languages, { - type: 'language', - }).of(code); + return IntlDN.of(code); } catch (e) { console.error(e); return null; } } + +export default mem(_localeCode2Text);