From 041d3ea847aae239866e0fc894bc5a92b929e397 Mon Sep 17 00:00:00 2001 From: maryia-deriv Date: Wed, 8 May 2024 10:24:50 +0300 Subject: [PATCH] fix: do not ignore locales when switching between languages --- packages/shared/src/utils/date/date-time.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/shared/src/utils/date/date-time.ts b/packages/shared/src/utils/date/date-time.ts index b57e66272801..1aa6d0644297 100644 --- a/packages/shared/src/utils/date/date-time.ts +++ b/packages/shared/src/utils/date/date-time.ts @@ -13,11 +13,11 @@ type TExtendedMoment = typeof moment & { // Localize moment instance with specific object export const initMoment = (lang: string) => { - const ignored_language = ['EN', 'AR', 'BN', 'SI']; - if (!lang || ignored_language.includes(lang)) return moment; - return import(`moment/locale/${lang.toLowerCase().replace('_', '-')}`) - .then(() => moment.locale(lang.toLocaleLowerCase().replace('_', '-'))) - .catch(() => moment); + const hasEnMomentLocale = ['EN', 'AR', 'BN', 'SI']; // 'AR', 'BN' & 'SI' langs have non-numeric dates ('২০২৪-০৫-০৭'), our current usage of moment requires us to make all dates numeric + if (!lang) return moment; + let locale = lang.toLowerCase().replace('_', '-'); + if (hasEnMomentLocale.includes(lang)) locale = 'en-gb'; + return import(`moment/locale/${locale}`).then(() => moment.locale(locale)).catch(() => moment); }; /**