Skip to content

Commit e605e82

Browse files
committed
Simplified properties in language objects
1 parent e4d58a1 commit e605e82

File tree

3 files changed

+24
-24
lines changed

3 files changed

+24
-24
lines changed

index.js

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -251,9 +251,9 @@ module.exports = function(version, _options) {
251251
if (languages.instructions[language]) return language;
252252

253253
var codes = languages.parseLanguageIntoCodes(language);
254-
var languageCode = codes.languageCode;
255-
var scriptCode = codes.scriptCode;
256-
var countryCode = codes.countryCode;
254+
var languageCode = codes.language;
255+
var scriptCode = codes.script;
256+
var regionCode = codes.region;
257257

258258
var supportedLanguageCodes = languages.supportedCodes.map(function(language) {
259259
return language.toLowerCase().split('-')[0];
@@ -264,9 +264,9 @@ module.exports = function(version, _options) {
264264
return languageCode + '-' + scriptCode;
265265
}
266266

267-
// Same language code and country code (lng-CC)
268-
if (languages.instructions[languageCode + '-' + countryCode]) {
269-
return languageCode + '-' + countryCode;
267+
// Same language code and region code (lng-CC)
268+
if (languages.instructions[languageCode + '-' + regionCode]) {
269+
return languageCode + '-' + regionCode;
270270
}
271271

272272
// Same language code (lng)
@@ -276,24 +276,24 @@ module.exports = function(version, _options) {
276276

277277
// Same language code and any script code (lng-Scpx) and the found language contains a script
278278
var anyScript = languages.parsedSupportedCodes.find(function (language) {
279-
return language.languageCode === languageCode && language.scriptCode;
279+
return language.language === languageCode && language.script;
280280
});
281281
if (anyScript) {
282282
return anyScript.locale;
283283
}
284284

285-
// Same language code and any country code (lng-CX)
285+
// Same language code and any region code (lng-CX)
286286
var anyCountry = languages.parsedSupportedCodes.find(function (language) {
287-
return language.languageCode === languageCode && language.scriptCode;
287+
return language.language === languageCode && language.script;
288288
});
289289
if (anyCountry) {
290290
return anyCountry.locale;
291291
}
292292

293293
// Only language code provided, but we on support this language code
294-
// with either script/country code.
294+
// with either script/region code.
295295
var sameLanguage = languages.parsedSupportedCodes.find(function (language) {
296-
return language.languageCode === languageCode;
296+
return language.language === languageCode;
297297
});
298298
if (sameLanguage) {
299299
return sameLanguage.locale;

languages.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -67,9 +67,9 @@ function parseLanguageIntoCodes (language) {
6767

6868
return {
6969
locale: locale.join('-'),
70-
languageCode: match[1],
71-
scriptCode: match[2],
72-
countryCode: match[3]
70+
language: match[1],
71+
script: match[2],
72+
region: match[3]
7373
};
7474
}
7575

test/index_test.js

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -287,16 +287,16 @@ tape.test('v5 compile', function(t) {
287287

288288
/* eslint-disable */
289289
t.test('parseLanguageIntoCodes', function(t) {
290-
t.deepEqual(languages.parseLanguageIntoCodes('foo'), { countryCode: undefined, languageCode: 'fo', locale: 'fo', scriptCode: undefined });
291-
t.deepEqual(languages.parseLanguageIntoCodes('en-US'), { countryCode: 'US', languageCode: 'en', locale: 'en-US', scriptCode: undefined });
292-
t.deepEqual(languages.parseLanguageIntoCodes('zh-CN'), { countryCode: 'CN', languageCode: 'zh', locale: 'zh-CN', scriptCode: undefined });
293-
t.deepEqual(languages.parseLanguageIntoCodes('zh-Hant'), { countryCode: undefined, languageCode: 'zh', locale: 'zh-Hant', scriptCode: 'Hant' });
294-
t.deepEqual(languages.parseLanguageIntoCodes('zh-Hant-TW'), { countryCode: 'TW', languageCode: 'zh', locale: 'zh-Hant-TW', scriptCode: 'Hant' });
295-
t.deepEqual(languages.parseLanguageIntoCodes('zh'), { countryCode: undefined, languageCode: 'zh', locale: 'zh', scriptCode: undefined });
296-
t.deepEqual(languages.parseLanguageIntoCodes('es-MX'), { countryCode: 'MX', languageCode: 'es', locale: 'es-MX', scriptCode: undefined });
297-
t.deepEqual(languages.parseLanguageIntoCodes('es-ES'), { countryCode: 'ES', languageCode: 'es', locale: 'es-ES', scriptCode: undefined });
298-
t.deepEqual(languages.parseLanguageIntoCodes('pt-PT'), { countryCode: 'PT', languageCode: 'pt', locale: 'pt-PT', scriptCode: undefined });
299-
t.deepEqual(languages.parseLanguageIntoCodes('pt'), { countryCode: undefined, languageCode: 'pt', locale: 'pt', scriptCode: undefined });
290+
t.deepEqual(languages.parseLanguageIntoCodes('foo'), { region: undefined, language: 'fo', locale: 'fo', script: undefined });
291+
t.deepEqual(languages.parseLanguageIntoCodes('en-US'), { region: 'US', language: 'en', locale: 'en-US', script: undefined });
292+
t.deepEqual(languages.parseLanguageIntoCodes('zh-CN'), { region: 'CN', language: 'zh', locale: 'zh-CN', script: undefined });
293+
t.deepEqual(languages.parseLanguageIntoCodes('zh-Hant'), { region: undefined, language: 'zh', locale: 'zh-Hant', script: 'Hant' });
294+
t.deepEqual(languages.parseLanguageIntoCodes('zh-Hant-TW'), { region: 'TW', language: 'zh', locale: 'zh-Hant-TW', script: 'Hant' });
295+
t.deepEqual(languages.parseLanguageIntoCodes('zh'), { region: undefined, language: 'zh', locale: 'zh', script: undefined });
296+
t.deepEqual(languages.parseLanguageIntoCodes('es-MX'), { region: 'MX', language: 'es', locale: 'es-MX', script: undefined });
297+
t.deepEqual(languages.parseLanguageIntoCodes('es-ES'), { region: 'ES', language: 'es', locale: 'es-ES', script: undefined });
298+
t.deepEqual(languages.parseLanguageIntoCodes('pt-PT'), { region: 'PT', language: 'pt', locale: 'pt-PT', script: undefined });
299+
t.deepEqual(languages.parseLanguageIntoCodes('pt'), { region: undefined, language: 'pt', locale: 'pt', script: undefined });
300300
t.end();
301301
});
302302
/* eslint-enable */

0 commit comments

Comments
 (0)