Fix travis's syntaxe conventions errors

feature-plural-translations
Simon Vareille 2020-06-18 15:21:06 +02:00
parent a2d4083e95
commit 8112bf929c
No known key found for this signature in database
GPG Key ID: 008AE8E706CC19F9
1 changed files with 16 additions and 17 deletions

View File

@ -22,7 +22,7 @@ const DEFAULT_OPTIONS = {
dir: undefined, dir: undefined,
dirs: [path.join(process.cwd(), 'locales')], dirs: [path.join(process.cwd(), 'locales')],
functionName: '__', functionName: '__',
functionnName: '__n' functionnName: '__n',
}; };
module.exports = function (app, options) { module.exports = function (app, options) {
@ -136,49 +136,48 @@ module.exports = function (app, options) {
} }
app[functionName] = gettext; app[functionName] = gettext;
function gettextn(locale, key, count, value) { function gettextn(locale, key, count, value) {
if (arguments.length === 0 || arguments.length === 1) { if (arguments.length === 0 || arguments.length === 1) {
// __n() // __n()
// __n('en') // __n('en')
return ''; return '';
} }
if (arguments.length === 2) { if (arguments.length === 2) {
// __n('en', key) // __n('en', key)
return gettext(locale, key); return gettext(locale, key);
} }
const resource = resources[locale] || {}; const resource = resources[locale] || {};
// enforce number // enforce number
count = Number(count); count = Number(count);
//**************************************************************// //**************************************************************//
// Directly adapted from __n function of i18n module : // Directly adapted from __n function of i18n module :
// https://github.com/mashpie/i18n-node/blob/master/i18n.js // https://github.com/mashpie/i18n-node/blob/master/i18n.js
var p; let p;
// create a new Plural for locale // create a new Plural for locale
// and try to cache instance // and try to cache instance
if (PluralsForLocale[locale]) { if (PluralsForLocale[locale]) {
p = PluralsForLocale[locale]; p = PluralsForLocale[locale];
} else { } else {
// split locales with a region code // split locales with a region code
var lc = locale.toLowerCase().split(/[_-\s]+/) let lc = locale.toLowerCase().split(/[_-\s]+/)
.filter(function(el){ return true && el; }); .filter(function(el){ return true && el; });
// take the first part of locale, fallback to full locale // take the first part of locale, fallback to full locale
p = MakePlural[lc[0] || locale]; p = MakePlural[lc[0] || locale];
PluralsForLocale[locale] = p; PluralsForLocale[locale] = p;
} }
// fallback to 'other' on case of missing translations // fallback to 'other' on case of missing translations
let text = resource[key+"."+p(count)] || resource[key+".other"]; let text = resource[key + '.' + p(count)] || resource[key + '.other'];
//**************************************************************// //**************************************************************//
if (text === undefined && isObject(key)) { if (text === undefined && isObject(key)) {
text = key[p(count)] || key["other"]; text = key[p(count)] || key['other'];
} }
if (text === undefined) { if (text === undefined) {
text = key; text = key;
} }
@ -220,9 +219,9 @@ module.exports = function (app, options) {
args[i - 2] = arguments[i]; args[i - 2] = arguments[i];
} }
return util.format.apply(util, args); return util.format.apply(util, args);
} }
app[functionnName] = gettextn; app[functionnName] = gettextn;
app.context[functionName] = function (key, value) { app.context[functionName] = function (key, value) {
@ -245,7 +244,7 @@ module.exports = function (app, options) {
} }
return gettext.apply(this, args); return gettext.apply(this, args);
}; };
app.context[functionnName] = function (key, count, value) { app.context[functionnName] = function (key, count, value) {
if (arguments.length === 0) { if (arguments.length === 0) {
// __n() // __n()
@ -257,7 +256,7 @@ module.exports = function (app, options) {
// __n(key) // __n(key)
return gettext(locale, key); return gettext(locale, key);
} }
if (arguments.length === 2) { if (arguments.length === 2) {
return gettextn(locale, key, count); return gettextn(locale, key, count);
} }