Skip to content

Commit 824206b

Browse files
authored
Load number formatting data when activating locales (#5128)
1 parent 93c171b commit 824206b

File tree

1 file changed

+64
-16
lines changed

1 file changed

+64
-16
lines changed

src/locale/i18n.ts

Lines changed: 64 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -37,82 +37,130 @@ export async function dynamicActivate(locale: AppLanguage) {
3737
switch (locale) {
3838
case AppLanguage.ca: {
3939
i18n.loadAndActivate({locale, messages: messagesCa})
40-
await import('@formatjs/intl-pluralrules/locale-data/ca')
40+
await Promise.all([
41+
import('@formatjs/intl-pluralrules/locale-data/ca'),
42+
import('@formatjs/intl-numberformat/locale-data/ca'),
43+
])
4144
break
4245
}
4346
case AppLanguage.de: {
4447
i18n.loadAndActivate({locale, messages: messagesDe})
45-
await import('@formatjs/intl-pluralrules/locale-data/de')
48+
await Promise.all([
49+
import('@formatjs/intl-pluralrules/locale-data/de'),
50+
import('@formatjs/intl-numberformat/locale-data/de'),
51+
])
4652
break
4753
}
4854
case AppLanguage.es: {
4955
i18n.loadAndActivate({locale, messages: messagesEs})
50-
await import('@formatjs/intl-pluralrules/locale-data/es')
56+
await Promise.all([
57+
import('@formatjs/intl-pluralrules/locale-data/es'),
58+
import('@formatjs/intl-numberformat/locale-data/es'),
59+
])
5160
break
5261
}
5362
case AppLanguage.fi: {
5463
i18n.loadAndActivate({locale, messages: messagesFi})
55-
await import('@formatjs/intl-pluralrules/locale-data/fi')
64+
await Promise.all([
65+
import('@formatjs/intl-pluralrules/locale-data/fi'),
66+
import('@formatjs/intl-numberformat/locale-data/fi'),
67+
])
5668
break
5769
}
5870
case AppLanguage.fr: {
5971
i18n.loadAndActivate({locale, messages: messagesFr})
60-
await import('@formatjs/intl-pluralrules/locale-data/fr')
72+
await Promise.all([
73+
import('@formatjs/intl-pluralrules/locale-data/fr'),
74+
import('@formatjs/intl-numberformat/locale-data/fr'),
75+
])
6176
break
6277
}
6378
case AppLanguage.ga: {
6479
i18n.loadAndActivate({locale, messages: messagesGa})
65-
await import('@formatjs/intl-pluralrules/locale-data/ga')
80+
await Promise.all([
81+
import('@formatjs/intl-pluralrules/locale-data/ga'),
82+
import('@formatjs/intl-numberformat/locale-data/ga'),
83+
])
6684
break
6785
}
6886
case AppLanguage.hi: {
6987
i18n.loadAndActivate({locale, messages: messagesHi})
70-
await import('@formatjs/intl-pluralrules/locale-data/hi')
88+
await Promise.all([
89+
import('@formatjs/intl-pluralrules/locale-data/hi'),
90+
import('@formatjs/intl-numberformat/locale-data/hi'),
91+
])
7192
break
7293
}
7394
case AppLanguage.id: {
7495
i18n.loadAndActivate({locale, messages: messagesId})
75-
await import('@formatjs/intl-pluralrules/locale-data/id')
96+
await Promise.all([
97+
import('@formatjs/intl-pluralrules/locale-data/id'),
98+
import('@formatjs/intl-numberformat/locale-data/id'),
99+
])
76100
break
77101
}
78102
case AppLanguage.it: {
79103
i18n.loadAndActivate({locale, messages: messagesIt})
80-
await import('@formatjs/intl-pluralrules/locale-data/it')
104+
await Promise.all([
105+
import('@formatjs/intl-pluralrules/locale-data/it'),
106+
import('@formatjs/intl-numberformat/locale-data/it'),
107+
])
81108
break
82109
}
83110
case AppLanguage.ja: {
84111
i18n.loadAndActivate({locale, messages: messagesJa})
85-
await import('@formatjs/intl-pluralrules/locale-data/ja')
112+
await Promise.all([
113+
import('@formatjs/intl-pluralrules/locale-data/ja'),
114+
import('@formatjs/intl-numberformat/locale-data/ja'),
115+
])
86116
break
87117
}
88118
case AppLanguage.ko: {
89119
i18n.loadAndActivate({locale, messages: messagesKo})
90-
await import('@formatjs/intl-pluralrules/locale-data/ko')
120+
await Promise.all([
121+
import('@formatjs/intl-pluralrules/locale-data/ko'),
122+
import('@formatjs/intl-numberformat/locale-data/ko'),
123+
])
91124
break
92125
}
93126
case AppLanguage.pt_BR: {
94127
i18n.loadAndActivate({locale, messages: messagesPt_BR})
95-
await import('@formatjs/intl-pluralrules/locale-data/pt')
128+
await Promise.all([
129+
import('@formatjs/intl-pluralrules/locale-data/pt'),
130+
import('@formatjs/intl-numberformat/locale-data/pt'),
131+
])
96132
break
97133
}
98134
case AppLanguage.tr: {
99135
i18n.loadAndActivate({locale, messages: messagesTr})
100-
await import('@formatjs/intl-pluralrules/locale-data/tr')
136+
await Promise.all([
137+
import('@formatjs/intl-pluralrules/locale-data/tr'),
138+
import('@formatjs/intl-numberformat/locale-data/tr'),
139+
])
101140
break
102141
}
103142
case AppLanguage.uk: {
104143
i18n.loadAndActivate({locale, messages: messagesUk})
105-
await import('@formatjs/intl-pluralrules/locale-data/uk')
144+
await Promise.all([
145+
import('@formatjs/intl-pluralrules/locale-data/uk'),
146+
import('@formatjs/intl-numberformat/locale-data/uk'),
147+
])
106148
break
107149
}
108150
case AppLanguage.zh_CN: {
109151
i18n.loadAndActivate({locale, messages: messagesZh_CN})
110-
await import('@formatjs/intl-pluralrules/locale-data/zh')
152+
await Promise.all([
153+
import('@formatjs/intl-pluralrules/locale-data/zh'),
154+
import('@formatjs/intl-numberformat/locale-data/zh'),
155+
])
111156
break
112157
}
113158
case AppLanguage.zh_TW: {
114159
i18n.loadAndActivate({locale, messages: messagesZh_TW})
115-
await import('@formatjs/intl-pluralrules/locale-data/zh')
160+
await Promise.all([
161+
import('@formatjs/intl-pluralrules/locale-data/zh'),
162+
import('@formatjs/intl-numberformat/locale-data/zh'),
163+
])
116164
break
117165
}
118166
default: {

0 commit comments

Comments
 (0)