Skip to content

Commit cc21049

Browse files
authored
feat: add Vietnamese language support (#825)
1 parent d6396c6 commit cc21049

File tree

3 files changed

+9
-1
lines changed

3 files changed

+9
-1
lines changed

src/i18n/countries.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import plLocale from 'i18n-iso-countries/langs/pl.json';
1414
import ptLocale from 'i18n-iso-countries/langs/pt.json';
1515
import ruLocale from 'i18n-iso-countries/langs/ru.json';
1616
import ukLocale from 'i18n-iso-countries/langs/uk.json';
17+
import viLocale from 'i18n-iso-countries/langs/vi.json';
1718

1819
import { getPrimaryLanguageSubtag } from './lib';
1920

@@ -39,6 +40,7 @@ COUNTRIES.registerLocale(ptLocale);
3940
COUNTRIES.registerLocale(ruLocale);
4041
// COUNTRIES.registerLocale(thLocale); // Doesn't exist in lib.
4142
COUNTRIES.registerLocale(ukLocale);
43+
COUNTRIES.registerLocale(viLocale);
4244

4345
/**
4446
* Provides a lookup table of country IDs to country names for the current locale.

src/i18n/lib.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import '@formatjs/intl-pluralrules/locale-data/pt';
1717
import '@formatjs/intl-pluralrules/locale-data/ru';
1818
import '@formatjs/intl-pluralrules/locale-data/th';
1919
import '@formatjs/intl-pluralrules/locale-data/uk';
20+
import '@formatjs/intl-pluralrules/locale-data/vi';
2021

2122
import '@formatjs/intl-relativetimeformat/polyfill';
2223
import '@formatjs/intl-relativetimeformat/locale-data/ar';
@@ -33,6 +34,7 @@ import '@formatjs/intl-relativetimeformat/locale-data/pt';
3334
import '@formatjs/intl-relativetimeformat/locale-data/ru';
3435
import '@formatjs/intl-relativetimeformat/locale-data/th';
3536
import '@formatjs/intl-relativetimeformat/locale-data/uk';
37+
import '@formatjs/intl-relativetimeformat/locale-data/vi';
3638

3739
const cookies = new Cookies();
3840
const supportedLocales = [
@@ -52,6 +54,7 @@ const supportedLocales = [
5254
'ru', // Russian
5355
'th', // Thai
5456
'uk', // Ukrainian
57+
'vi', // Vietnamese
5558
];
5659
const rtlLocales = [
5760
'ar', // Arabic
@@ -220,6 +223,7 @@ const messagesShape = {
220223
ru: PropTypes.objectOf(PropTypes.string), // Russian
221224
th: PropTypes.objectOf(PropTypes.string), // Thai
222225
uk: PropTypes.objectOf(PropTypes.string), // Ukrainian
226+
vi: PropTypes.objectOf(PropTypes.string), // Vietnamese
223227
};
224228

225229
const optionsShape = {

src/i18n/lib.test.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ describe('lib', () => {
8080
messages: {},
8181
});
8282

83-
expect(console.warn).toHaveBeenCalledTimes(15);
83+
expect(console.warn).toHaveBeenCalledTimes(16);
8484
expect(console.warn).toHaveBeenCalledWith('Missing locale: ar');
8585
expect(console.warn).toHaveBeenCalledWith('Missing locale: es-419');
8686
expect(console.warn).toHaveBeenCalledWith('Missing locale: fr');
@@ -94,6 +94,7 @@ describe('lib', () => {
9494
expect(console.warn).toHaveBeenCalledWith('Missing locale: ru');
9595
expect(console.warn).toHaveBeenCalledWith('Missing locale: th');
9696
expect(console.warn).toHaveBeenCalledWith('Missing locale: uk');
97+
expect(console.warn).toHaveBeenCalledWith('Missing locale: vi');
9798
});
9899
});
99100

@@ -198,6 +199,7 @@ describe('lib', () => {
198199
expect(isRtl('es-419')).toBe(false);
199200
expect(isRtl('de')).toBe(false);
200201
expect(isRtl('ru')).toBe(false);
202+
expect(isRtl('vi')).toBe(false);
201203
});
202204
});
203205

0 commit comments

Comments
 (0)