intl-pluralrules
Version:
Intl.PluralRules polyfill
1,326 lines (1,307 loc) • 35.5 kB
JavaScript
'use strict';
var getPluralRules = require('./factory.js');
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
function _mergeNamespaces(n, m) {
m.forEach(function (e) {
e && typeof e !== 'string' && !Array.isArray(e) && Object.keys(e).forEach(function (k) {
if (k !== 'default' && !(k in n)) {
var d = Object.getOwnPropertyDescriptor(e, k);
Object.defineProperty(n, k, d.get ? d : {
enumerable: true,
get: function () { return e[k]; }
});
}
});
});
return Object.freeze(n);
}
var getPluralRules__default = /*#__PURE__*/_interopDefaultLegacy(getPluralRules);
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
function getDefaultExportFromCjs (x) {
return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
}
var plurals$1 = {exports: {}};
(function (module, exports) {
var a = function a(n, ord) {
if (ord) return 'other';
return n == 1 ? 'one' : 'other';
};
var b = function b(n, ord) {
if (ord) return 'other';
return n == 0 || n == 1 ? 'one' : 'other';
};
var c = function c(n, ord) {
if (ord) return 'other';
return n >= 0 && n <= 1 ? 'one' : 'other';
};
var d = function d(n, ord) {
var s = String(n).split('.'),
v0 = !s[1];
if (ord) return 'other';
return n == 1 && v0 ? 'one' : 'other';
};
var e = function e(n, ord) {
return 'other';
};
var f = function f(n, ord) {
if (ord) return 'other';
return n == 1 ? 'one' : n == 2 ? 'two' : 'other';
};
(function (root, plurals) {
Object.defineProperty(plurals, '__esModule', {
value: true
});
module.exports = plurals;
})(commonjsGlobal, {
af: a,
ak: b,
am: c,
an: a,
ar: function ar(n, ord) {
var s = String(n).split('.'),
t0 = Number(s[0]) == n,
n100 = t0 && s[0].slice(-2);
if (ord) return 'other';
return n == 0 ? 'zero' : n == 1 ? 'one' : n == 2 ? 'two' : n100 >= 3 && n100 <= 10 ? 'few' : n100 >= 11 && n100 <= 99 ? 'many' : 'other';
},
ars: function ars(n, ord) {
var s = String(n).split('.'),
t0 = Number(s[0]) == n,
n100 = t0 && s[0].slice(-2);
if (ord) return 'other';
return n == 0 ? 'zero' : n == 1 ? 'one' : n == 2 ? 'two' : n100 >= 3 && n100 <= 10 ? 'few' : n100 >= 11 && n100 <= 99 ? 'many' : 'other';
},
as: function as(n, ord) {
if (ord) return n == 1 || n == 5 || n == 7 || n == 8 || n == 9 || n == 10 ? 'one' : n == 2 || n == 3 ? 'two' : n == 4 ? 'few' : n == 6 ? 'many' : 'other';
return n >= 0 && n <= 1 ? 'one' : 'other';
},
asa: a,
ast: d,
az: function az(n, ord) {
var s = String(n).split('.'),
i = s[0],
i10 = i.slice(-1),
i100 = i.slice(-2),
i1000 = i.slice(-3);
if (ord) return i10 == 1 || i10 == 2 || i10 == 5 || i10 == 7 || i10 == 8 || i100 == 20 || i100 == 50 || i100 == 70 || i100 == 80 ? 'one' : i10 == 3 || i10 == 4 || i1000 == 100 || i1000 == 200 || i1000 == 300 || i1000 == 400 || i1000 == 500 || i1000 == 600 || i1000 == 700 || i1000 == 800 || i1000 == 900 ? 'few' : i == 0 || i10 == 6 || i100 == 40 || i100 == 60 || i100 == 90 ? 'many' : 'other';
return n == 1 ? 'one' : 'other';
},
bal: function bal(n, ord) {
return n == 1 ? 'one' : 'other';
},
be: function be(n, ord) {
var s = String(n).split('.'),
t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1),
n100 = t0 && s[0].slice(-2);
if (ord) return (n10 == 2 || n10 == 3) && n100 != 12 && n100 != 13 ? 'few' : 'other';
return n10 == 1 && n100 != 11 ? 'one' : n10 >= 2 && n10 <= 4 && (n100 < 12 || n100 > 14) ? 'few' : t0 && n10 == 0 || n10 >= 5 && n10 <= 9 || n100 >= 11 && n100 <= 14 ? 'many' : 'other';
},
bem: a,
bez: a,
bg: a,
bho: b,
bm: e,
bn: function bn(n, ord) {
if (ord) return n == 1 || n == 5 || n == 7 || n == 8 || n == 9 || n == 10 ? 'one' : n == 2 || n == 3 ? 'two' : n == 4 ? 'few' : n == 6 ? 'many' : 'other';
return n >= 0 && n <= 1 ? 'one' : 'other';
},
bo: e,
br: function br(n, ord) {
var s = String(n).split('.'),
t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1),
n100 = t0 && s[0].slice(-2),
n1000000 = t0 && s[0].slice(-6);
if (ord) return 'other';
return n10 == 1 && n100 != 11 && n100 != 71 && n100 != 91 ? 'one' : n10 == 2 && n100 != 12 && n100 != 72 && n100 != 92 ? 'two' : (n10 == 3 || n10 == 4 || n10 == 9) && (n100 < 10 || n100 > 19) && (n100 < 70 || n100 > 79) && (n100 < 90 || n100 > 99) ? 'few' : n != 0 && t0 && n1000000 == 0 ? 'many' : 'other';
},
brx: a,
bs: function bs(n, ord) {
var s = String(n).split('.'),
i = s[0],
f = s[1] || '',
v0 = !s[1],
i10 = i.slice(-1),
i100 = i.slice(-2),
f10 = f.slice(-1),
f100 = f.slice(-2);
if (ord) return 'other';
return v0 && i10 == 1 && i100 != 11 || f10 == 1 && f100 != 11 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) || f10 >= 2 && f10 <= 4 && (f100 < 12 || f100 > 14) ? 'few' : 'other';
},
ca: function ca(n, ord) {
var s = String(n).split('.'),
i = s[0],
v0 = !s[1],
i1000000 = i.slice(-6);
if (ord) return n == 1 || n == 3 ? 'one' : n == 2 ? 'two' : n == 4 ? 'few' : 'other';
return n == 1 && v0 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';
},
ce: a,
ceb: function ceb(n, ord) {
var s = String(n).split('.'),
i = s[0],
f = s[1] || '',
v0 = !s[1],
i10 = i.slice(-1),
f10 = f.slice(-1);
if (ord) return 'other';
return v0 && (i == 1 || i == 2 || i == 3) || v0 && i10 != 4 && i10 != 6 && i10 != 9 || !v0 && f10 != 4 && f10 != 6 && f10 != 9 ? 'one' : 'other';
},
cgg: a,
chr: a,
ckb: a,
cs: function cs(n, ord) {
var s = String(n).split('.'),
i = s[0],
v0 = !s[1];
if (ord) return 'other';
return n == 1 && v0 ? 'one' : i >= 2 && i <= 4 && v0 ? 'few' : !v0 ? 'many' : 'other';
},
cy: function cy(n, ord) {
if (ord) return n == 0 || n == 7 || n == 8 || n == 9 ? 'zero' : n == 1 ? 'one' : n == 2 ? 'two' : n == 3 || n == 4 ? 'few' : n == 5 || n == 6 ? 'many' : 'other';
return n == 0 ? 'zero' : n == 1 ? 'one' : n == 2 ? 'two' : n == 3 ? 'few' : n == 6 ? 'many' : 'other';
},
da: function da(n, ord) {
var s = String(n).split('.'),
i = s[0],
t0 = Number(s[0]) == n;
if (ord) return 'other';
return n == 1 || !t0 && (i == 0 || i == 1) ? 'one' : 'other';
},
de: d,
doi: c,
dsb: function dsb(n, ord) {
var s = String(n).split('.'),
i = s[0],
f = s[1] || '',
v0 = !s[1],
i100 = i.slice(-2),
f100 = f.slice(-2);
if (ord) return 'other';
return v0 && i100 == 1 || f100 == 1 ? 'one' : v0 && i100 == 2 || f100 == 2 ? 'two' : v0 && (i100 == 3 || i100 == 4) || f100 == 3 || f100 == 4 ? 'few' : 'other';
},
dv: a,
dz: e,
ee: a,
el: a,
en: function en(n, ord) {
var s = String(n).split('.'),
v0 = !s[1],
t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1),
n100 = t0 && s[0].slice(-2);
if (ord) return n10 == 1 && n100 != 11 ? 'one' : n10 == 2 && n100 != 12 ? 'two' : n10 == 3 && n100 != 13 ? 'few' : 'other';
return n == 1 && v0 ? 'one' : 'other';
},
eo: a,
es: function es(n, ord) {
var s = String(n).split('.'),
i = s[0],
v0 = !s[1],
i1000000 = i.slice(-6);
if (ord) return 'other';
return n == 1 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';
},
et: d,
eu: a,
fa: c,
ff: function ff(n, ord) {
if (ord) return 'other';
return n >= 0 && n < 2 ? 'one' : 'other';
},
fi: d,
fil: function fil(n, ord) {
var s = String(n).split('.'),
i = s[0],
f = s[1] || '',
v0 = !s[1],
i10 = i.slice(-1),
f10 = f.slice(-1);
if (ord) return n == 1 ? 'one' : 'other';
return v0 && (i == 1 || i == 2 || i == 3) || v0 && i10 != 4 && i10 != 6 && i10 != 9 || !v0 && f10 != 4 && f10 != 6 && f10 != 9 ? 'one' : 'other';
},
fo: a,
fr: function fr(n, ord) {
var s = String(n).split('.'),
i = s[0],
v0 = !s[1],
i1000000 = i.slice(-6);
if (ord) return n == 1 ? 'one' : 'other';
return n >= 0 && n < 2 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';
},
fur: a,
fy: d,
ga: function ga(n, ord) {
var s = String(n).split('.'),
t0 = Number(s[0]) == n;
if (ord) return n == 1 ? 'one' : 'other';
return n == 1 ? 'one' : n == 2 ? 'two' : t0 && n >= 3 && n <= 6 ? 'few' : t0 && n >= 7 && n <= 10 ? 'many' : 'other';
},
gd: function gd(n, ord) {
var s = String(n).split('.'),
t0 = Number(s[0]) == n;
if (ord) return n == 1 || n == 11 ? 'one' : n == 2 || n == 12 ? 'two' : n == 3 || n == 13 ? 'few' : 'other';
return n == 1 || n == 11 ? 'one' : n == 2 || n == 12 ? 'two' : t0 && n >= 3 && n <= 10 || t0 && n >= 13 && n <= 19 ? 'few' : 'other';
},
gl: d,
gsw: a,
gu: function gu(n, ord) {
if (ord) return n == 1 ? 'one' : n == 2 || n == 3 ? 'two' : n == 4 ? 'few' : n == 6 ? 'many' : 'other';
return n >= 0 && n <= 1 ? 'one' : 'other';
},
guw: b,
gv: function gv(n, ord) {
var s = String(n).split('.'),
i = s[0],
v0 = !s[1],
i10 = i.slice(-1),
i100 = i.slice(-2);
if (ord) return 'other';
return v0 && i10 == 1 ? 'one' : v0 && i10 == 2 ? 'two' : v0 && (i100 == 0 || i100 == 20 || i100 == 40 || i100 == 60 || i100 == 80) ? 'few' : !v0 ? 'many' : 'other';
},
ha: a,
haw: a,
he: function he(n, ord) {
var s = String(n).split('.'),
i = s[0],
v0 = !s[1];
if (ord) return 'other';
return i == 1 && v0 || i == 0 && !v0 ? 'one' : i == 2 && v0 ? 'two' : 'other';
},
hi: function hi(n, ord) {
if (ord) return n == 1 ? 'one' : n == 2 || n == 3 ? 'two' : n == 4 ? 'few' : n == 6 ? 'many' : 'other';
return n >= 0 && n <= 1 ? 'one' : 'other';
},
hnj: e,
hr: function hr(n, ord) {
var s = String(n).split('.'),
i = s[0],
f = s[1] || '',
v0 = !s[1],
i10 = i.slice(-1),
i100 = i.slice(-2),
f10 = f.slice(-1),
f100 = f.slice(-2);
if (ord) return 'other';
return v0 && i10 == 1 && i100 != 11 || f10 == 1 && f100 != 11 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) || f10 >= 2 && f10 <= 4 && (f100 < 12 || f100 > 14) ? 'few' : 'other';
},
hsb: function hsb(n, ord) {
var s = String(n).split('.'),
i = s[0],
f = s[1] || '',
v0 = !s[1],
i100 = i.slice(-2),
f100 = f.slice(-2);
if (ord) return 'other';
return v0 && i100 == 1 || f100 == 1 ? 'one' : v0 && i100 == 2 || f100 == 2 ? 'two' : v0 && (i100 == 3 || i100 == 4) || f100 == 3 || f100 == 4 ? 'few' : 'other';
},
hu: function hu(n, ord) {
if (ord) return n == 1 || n == 5 ? 'one' : 'other';
return n == 1 ? 'one' : 'other';
},
hy: function hy(n, ord) {
if (ord) return n == 1 ? 'one' : 'other';
return n >= 0 && n < 2 ? 'one' : 'other';
},
ia: d,
id: e,
ig: e,
ii: e,
io: d,
is: function is(n, ord) {
var s = String(n).split('.'),
i = s[0],
t = (s[1] || '').replace(/0+$/, ''),
t0 = Number(s[0]) == n,
i10 = i.slice(-1),
i100 = i.slice(-2);
if (ord) return 'other';
return t0 && i10 == 1 && i100 != 11 || t % 10 == 1 && t % 100 != 11 ? 'one' : 'other';
},
it: function it(n, ord) {
var s = String(n).split('.'),
i = s[0],
v0 = !s[1],
i1000000 = i.slice(-6);
if (ord) return n == 11 || n == 8 || n == 80 || n == 800 ? 'many' : 'other';
return n == 1 && v0 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';
},
iu: f,
ja: e,
jbo: e,
jgo: a,
jmc: a,
jv: e,
jw: e,
ka: function ka(n, ord) {
var s = String(n).split('.'),
i = s[0],
i100 = i.slice(-2);
if (ord) return i == 1 ? 'one' : i == 0 || i100 >= 2 && i100 <= 20 || i100 == 40 || i100 == 60 || i100 == 80 ? 'many' : 'other';
return n == 1 ? 'one' : 'other';
},
kab: function kab(n, ord) {
if (ord) return 'other';
return n >= 0 && n < 2 ? 'one' : 'other';
},
kaj: a,
kcg: a,
kde: e,
kea: e,
kk: function kk(n, ord) {
var s = String(n).split('.'),
t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1);
if (ord) return n10 == 6 || n10 == 9 || t0 && n10 == 0 && n != 0 ? 'many' : 'other';
return n == 1 ? 'one' : 'other';
},
kkj: a,
kl: a,
km: e,
kn: c,
ko: e,
ks: a,
ksb: a,
ksh: function ksh(n, ord) {
if (ord) return 'other';
return n == 0 ? 'zero' : n == 1 ? 'one' : 'other';
},
ku: a,
kw: function kw(n, ord) {
var s = String(n).split('.'),
t0 = Number(s[0]) == n,
n100 = t0 && s[0].slice(-2),
n1000 = t0 && s[0].slice(-3),
n100000 = t0 && s[0].slice(-5),
n1000000 = t0 && s[0].slice(-6);
if (ord) return t0 && n >= 1 && n <= 4 || n100 >= 1 && n100 <= 4 || n100 >= 21 && n100 <= 24 || n100 >= 41 && n100 <= 44 || n100 >= 61 && n100 <= 64 || n100 >= 81 && n100 <= 84 ? 'one' : n == 5 || n100 == 5 ? 'many' : 'other';
return n == 0 ? 'zero' : n == 1 ? 'one' : n100 == 2 || n100 == 22 || n100 == 42 || n100 == 62 || n100 == 82 || t0 && n1000 == 0 && (n100000 >= 1000 && n100000 <= 20000 || n100000 == 40000 || n100000 == 60000 || n100000 == 80000) || n != 0 && n1000000 == 100000 ? 'two' : n100 == 3 || n100 == 23 || n100 == 43 || n100 == 63 || n100 == 83 ? 'few' : n != 1 && (n100 == 1 || n100 == 21 || n100 == 41 || n100 == 61 || n100 == 81) ? 'many' : 'other';
},
ky: a,
lag: function lag(n, ord) {
var s = String(n).split('.'),
i = s[0];
if (ord) return 'other';
return n == 0 ? 'zero' : (i == 0 || i == 1) && n != 0 ? 'one' : 'other';
},
lb: a,
lg: a,
lij: function lij(n, ord) {
var s = String(n).split('.'),
v0 = !s[1],
t0 = Number(s[0]) == n;
if (ord) return n == 11 || n == 8 || t0 && n >= 80 && n <= 89 || t0 && n >= 800 && n <= 899 ? 'many' : 'other';
return n == 1 && v0 ? 'one' : 'other';
},
lkt: e,
ln: b,
lo: function lo(n, ord) {
if (ord) return n == 1 ? 'one' : 'other';
return 'other';
},
lt: function lt(n, ord) {
var s = String(n).split('.'),
f = s[1] || '',
t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1),
n100 = t0 && s[0].slice(-2);
if (ord) return 'other';
return n10 == 1 && (n100 < 11 || n100 > 19) ? 'one' : n10 >= 2 && n10 <= 9 && (n100 < 11 || n100 > 19) ? 'few' : f != 0 ? 'many' : 'other';
},
lv: function lv(n, ord) {
var s = String(n).split('.'),
f = s[1] || '',
v = f.length,
t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1),
n100 = t0 && s[0].slice(-2),
f100 = f.slice(-2),
f10 = f.slice(-1);
if (ord) return 'other';
return t0 && n10 == 0 || n100 >= 11 && n100 <= 19 || v == 2 && f100 >= 11 && f100 <= 19 ? 'zero' : n10 == 1 && n100 != 11 || v == 2 && f10 == 1 && f100 != 11 || v != 2 && f10 == 1 ? 'one' : 'other';
},
mas: a,
mg: b,
mgo: a,
mk: function mk(n, ord) {
var s = String(n).split('.'),
i = s[0],
f = s[1] || '',
v0 = !s[1],
i10 = i.slice(-1),
i100 = i.slice(-2),
f10 = f.slice(-1),
f100 = f.slice(-2);
if (ord) return i10 == 1 && i100 != 11 ? 'one' : i10 == 2 && i100 != 12 ? 'two' : (i10 == 7 || i10 == 8) && i100 != 17 && i100 != 18 ? 'many' : 'other';
return v0 && i10 == 1 && i100 != 11 || f10 == 1 && f100 != 11 ? 'one' : 'other';
},
ml: a,
mn: a,
mo: function mo(n, ord) {
var s = String(n).split('.'),
v0 = !s[1],
t0 = Number(s[0]) == n,
n100 = t0 && s[0].slice(-2);
if (ord) return n == 1 ? 'one' : 'other';
return n == 1 && v0 ? 'one' : !v0 || n == 0 || n != 1 && n100 >= 1 && n100 <= 19 ? 'few' : 'other';
},
mr: function mr(n, ord) {
if (ord) return n == 1 ? 'one' : n == 2 || n == 3 ? 'two' : n == 4 ? 'few' : 'other';
return n == 1 ? 'one' : 'other';
},
ms: function ms(n, ord) {
if (ord) return n == 1 ? 'one' : 'other';
return 'other';
},
mt: function mt(n, ord) {
var s = String(n).split('.'),
t0 = Number(s[0]) == n,
n100 = t0 && s[0].slice(-2);
if (ord) return 'other';
return n == 1 ? 'one' : n == 2 ? 'two' : n == 0 || n100 >= 3 && n100 <= 10 ? 'few' : n100 >= 11 && n100 <= 19 ? 'many' : 'other';
},
my: e,
nah: a,
naq: f,
nb: a,
nd: a,
ne: function ne(n, ord) {
var s = String(n).split('.'),
t0 = Number(s[0]) == n;
if (ord) return t0 && n >= 1 && n <= 4 ? 'one' : 'other';
return n == 1 ? 'one' : 'other';
},
nl: d,
nn: a,
nnh: a,
no: a,
nqo: e,
nr: a,
nso: b,
ny: a,
nyn: a,
om: a,
or: function or(n, ord) {
var s = String(n).split('.'),
t0 = Number(s[0]) == n;
if (ord) return n == 1 || n == 5 || t0 && n >= 7 && n <= 9 ? 'one' : n == 2 || n == 3 ? 'two' : n == 4 ? 'few' : n == 6 ? 'many' : 'other';
return n == 1 ? 'one' : 'other';
},
os: a,
osa: e,
pa: b,
pap: a,
pcm: c,
pl: function pl(n, ord) {
var s = String(n).split('.'),
i = s[0],
v0 = !s[1],
i10 = i.slice(-1),
i100 = i.slice(-2);
if (ord) return 'other';
return n == 1 && v0 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) ? 'few' : v0 && i != 1 && (i10 == 0 || i10 == 1) || v0 && i10 >= 5 && i10 <= 9 || v0 && i100 >= 12 && i100 <= 14 ? 'many' : 'other';
},
prg: function prg(n, ord) {
var s = String(n).split('.'),
f = s[1] || '',
v = f.length,
t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1),
n100 = t0 && s[0].slice(-2),
f100 = f.slice(-2),
f10 = f.slice(-1);
if (ord) return 'other';
return t0 && n10 == 0 || n100 >= 11 && n100 <= 19 || v == 2 && f100 >= 11 && f100 <= 19 ? 'zero' : n10 == 1 && n100 != 11 || v == 2 && f10 == 1 && f100 != 11 || v != 2 && f10 == 1 ? 'one' : 'other';
},
ps: a,
pt: function pt(n, ord) {
var s = String(n).split('.'),
i = s[0],
v0 = !s[1],
i1000000 = i.slice(-6);
if (ord) return 'other';
return i == 0 || i == 1 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';
},
pt_PT: function pt_PT(n, ord) {
var s = String(n).split('.'),
i = s[0],
v0 = !s[1],
i1000000 = i.slice(-6);
if (ord) return 'other';
return n == 1 && v0 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';
},
rm: a,
ro: function ro(n, ord) {
var s = String(n).split('.'),
v0 = !s[1],
t0 = Number(s[0]) == n,
n100 = t0 && s[0].slice(-2);
if (ord) return n == 1 ? 'one' : 'other';
return n == 1 && v0 ? 'one' : !v0 || n == 0 || n != 1 && n100 >= 1 && n100 <= 19 ? 'few' : 'other';
},
rof: a,
ru: function ru(n, ord) {
var s = String(n).split('.'),
i = s[0],
v0 = !s[1],
i10 = i.slice(-1),
i100 = i.slice(-2);
if (ord) return 'other';
return v0 && i10 == 1 && i100 != 11 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) ? 'few' : v0 && i10 == 0 || v0 && i10 >= 5 && i10 <= 9 || v0 && i100 >= 11 && i100 <= 14 ? 'many' : 'other';
},
rwk: a,
sah: e,
saq: a,
sat: f,
sc: function sc(n, ord) {
var s = String(n).split('.'),
v0 = !s[1];
if (ord) return n == 11 || n == 8 || n == 80 || n == 800 ? 'many' : 'other';
return n == 1 && v0 ? 'one' : 'other';
},
scn: function scn(n, ord) {
var s = String(n).split('.'),
v0 = !s[1];
if (ord) return n == 11 || n == 8 || n == 80 || n == 800 ? 'many' : 'other';
return n == 1 && v0 ? 'one' : 'other';
},
sd: a,
sdh: a,
se: f,
seh: a,
ses: e,
sg: e,
sh: function sh(n, ord) {
var s = String(n).split('.'),
i = s[0],
f = s[1] || '',
v0 = !s[1],
i10 = i.slice(-1),
i100 = i.slice(-2),
f10 = f.slice(-1),
f100 = f.slice(-2);
if (ord) return 'other';
return v0 && i10 == 1 && i100 != 11 || f10 == 1 && f100 != 11 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) || f10 >= 2 && f10 <= 4 && (f100 < 12 || f100 > 14) ? 'few' : 'other';
},
shi: function shi(n, ord) {
var s = String(n).split('.'),
t0 = Number(s[0]) == n;
if (ord) return 'other';
return n >= 0 && n <= 1 ? 'one' : t0 && n >= 2 && n <= 10 ? 'few' : 'other';
},
si: function si(n, ord) {
var s = String(n).split('.'),
i = s[0],
f = s[1] || '';
if (ord) return 'other';
return n == 0 || n == 1 || i == 0 && f == 1 ? 'one' : 'other';
},
sk: function sk(n, ord) {
var s = String(n).split('.'),
i = s[0],
v0 = !s[1];
if (ord) return 'other';
return n == 1 && v0 ? 'one' : i >= 2 && i <= 4 && v0 ? 'few' : !v0 ? 'many' : 'other';
},
sl: function sl(n, ord) {
var s = String(n).split('.'),
i = s[0],
v0 = !s[1],
i100 = i.slice(-2);
if (ord) return 'other';
return v0 && i100 == 1 ? 'one' : v0 && i100 == 2 ? 'two' : v0 && (i100 == 3 || i100 == 4) || !v0 ? 'few' : 'other';
},
sma: f,
smi: f,
smj: f,
smn: f,
sms: f,
sn: a,
so: a,
sq: function sq(n, ord) {
var s = String(n).split('.'),
t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1),
n100 = t0 && s[0].slice(-2);
if (ord) return n == 1 ? 'one' : n10 == 4 && n100 != 14 ? 'many' : 'other';
return n == 1 ? 'one' : 'other';
},
sr: function sr(n, ord) {
var s = String(n).split('.'),
i = s[0],
f = s[1] || '',
v0 = !s[1],
i10 = i.slice(-1),
i100 = i.slice(-2),
f10 = f.slice(-1),
f100 = f.slice(-2);
if (ord) return 'other';
return v0 && i10 == 1 && i100 != 11 || f10 == 1 && f100 != 11 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) || f10 >= 2 && f10 <= 4 && (f100 < 12 || f100 > 14) ? 'few' : 'other';
},
ss: a,
ssy: a,
st: a,
su: e,
sv: function sv(n, ord) {
var s = String(n).split('.'),
v0 = !s[1],
t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1),
n100 = t0 && s[0].slice(-2);
if (ord) return (n10 == 1 || n10 == 2) && n100 != 11 && n100 != 12 ? 'one' : 'other';
return n == 1 && v0 ? 'one' : 'other';
},
sw: d,
syr: a,
ta: a,
te: a,
teo: a,
th: e,
ti: b,
tig: a,
tk: function tk(n, ord) {
var s = String(n).split('.'),
t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1);
if (ord) return n10 == 6 || n10 == 9 || n == 10 ? 'few' : 'other';
return n == 1 ? 'one' : 'other';
},
tl: function tl(n, ord) {
var s = String(n).split('.'),
i = s[0],
f = s[1] || '',
v0 = !s[1],
i10 = i.slice(-1),
f10 = f.slice(-1);
if (ord) return n == 1 ? 'one' : 'other';
return v0 && (i == 1 || i == 2 || i == 3) || v0 && i10 != 4 && i10 != 6 && i10 != 9 || !v0 && f10 != 4 && f10 != 6 && f10 != 9 ? 'one' : 'other';
},
tn: a,
to: e,
tpi: e,
tr: a,
ts: a,
tzm: function tzm(n, ord) {
var s = String(n).split('.'),
t0 = Number(s[0]) == n;
if (ord) return 'other';
return n == 0 || n == 1 || t0 && n >= 11 && n <= 99 ? 'one' : 'other';
},
ug: a,
uk: function uk(n, ord) {
var s = String(n).split('.'),
i = s[0],
v0 = !s[1],
t0 = Number(s[0]) == n,
n10 = t0 && s[0].slice(-1),
n100 = t0 && s[0].slice(-2),
i10 = i.slice(-1),
i100 = i.slice(-2);
if (ord) return n10 == 3 && n100 != 13 ? 'few' : 'other';
return v0 && i10 == 1 && i100 != 11 ? 'one' : v0 && i10 >= 2 && i10 <= 4 && (i100 < 12 || i100 > 14) ? 'few' : v0 && i10 == 0 || v0 && i10 >= 5 && i10 <= 9 || v0 && i100 >= 11 && i100 <= 14 ? 'many' : 'other';
},
und: e,
ur: d,
uz: a,
ve: a,
vec: function vec(n, ord) {
var s = String(n).split('.'),
i = s[0],
v0 = !s[1],
i1000000 = i.slice(-6);
if (ord) return n == 11 || n == 8 || n == 80 || n == 800 ? 'many' : 'other';
return n == 1 && v0 ? 'one' : i != 0 && i1000000 == 0 && v0 ? 'many' : 'other';
},
vi: function vi(n, ord) {
if (ord) return n == 1 ? 'one' : 'other';
return 'other';
},
vo: a,
vun: a,
wa: b,
wae: a,
wo: e,
xh: a,
xog: a,
yi: d,
yo: e,
yue: e,
zh: e,
zu: c
});
})(plurals$1);
var plurals = /*@__PURE__*/getDefaultExportFromCjs(plurals$1.exports);
var P = /*#__PURE__*/_mergeNamespaces({
__proto__: null,
'default': plurals
}, [plurals$1.exports]);
var pluralCategories$1 = {exports: {}};
(function (module, exports) {
var z = "zero",
o = "one",
t = "two",
f = "few",
m = "many",
x = "other";
var a = {
cardinal: [o, x],
ordinal: [x]
};
var b = {
cardinal: [o, x],
ordinal: [o, x]
};
var c = {
cardinal: [x],
ordinal: [x]
};
var d = {
cardinal: [o, t, x],
ordinal: [x]
};
(function (root, pluralCategories) {
Object.defineProperty(pluralCategories, '__esModule', {
value: true
});
module.exports = pluralCategories;
})(commonjsGlobal, {
af: a,
ak: a,
am: a,
an: a,
ar: {
cardinal: [z, o, t, f, m, x],
ordinal: [x]
},
ars: {
cardinal: [z, o, t, f, m, x],
ordinal: [x]
},
as: {
cardinal: [o, x],
ordinal: [o, t, f, m, x]
},
asa: a,
ast: a,
az: {
cardinal: [o, x],
ordinal: [o, f, m, x]
},
bal: b,
be: {
cardinal: [o, f, m, x],
ordinal: [f, x]
},
bem: a,
bez: a,
bg: a,
bho: a,
bm: c,
bn: {
cardinal: [o, x],
ordinal: [o, t, f, m, x]
},
bo: c,
br: {
cardinal: [o, t, f, m, x],
ordinal: [x]
},
brx: a,
bs: {
cardinal: [o, f, x],
ordinal: [x]
},
ca: {
cardinal: [o, m, x],
ordinal: [o, t, f, x]
},
ce: a,
ceb: a,
cgg: a,
chr: a,
ckb: a,
cs: {
cardinal: [o, f, m, x],
ordinal: [x]
},
cy: {
cardinal: [z, o, t, f, m, x],
ordinal: [z, o, t, f, m, x]
},
da: a,
de: a,
doi: a,
dsb: {
cardinal: [o, t, f, x],
ordinal: [x]
},
dv: a,
dz: c,
ee: a,
el: a,
en: {
cardinal: [o, x],
ordinal: [o, t, f, x]
},
eo: a,
es: {
cardinal: [o, m, x],
ordinal: [x]
},
et: a,
eu: a,
fa: a,
ff: a,
fi: a,
fil: b,
fo: a,
fr: {
cardinal: [o, m, x],
ordinal: [o, x]
},
fur: a,
fy: a,
ga: {
cardinal: [o, t, f, m, x],
ordinal: [o, x]
},
gd: {
cardinal: [o, t, f, x],
ordinal: [o, t, f, x]
},
gl: a,
gsw: a,
gu: {
cardinal: [o, x],
ordinal: [o, t, f, m, x]
},
guw: a,
gv: {
cardinal: [o, t, f, m, x],
ordinal: [x]
},
ha: a,
haw: a,
he: d,
hi: {
cardinal: [o, x],
ordinal: [o, t, f, m, x]
},
hnj: c,
hr: {
cardinal: [o, f, x],
ordinal: [x]
},
hsb: {
cardinal: [o, t, f, x],
ordinal: [x]
},
hu: b,
hy: b,
ia: a,
id: c,
ig: c,
ii: c,
io: a,
is: a,
it: {
cardinal: [o, m, x],
ordinal: [m, x]
},
iu: d,
ja: c,
jbo: c,
jgo: a,
jmc: a,
jv: c,
jw: c,
ka: {
cardinal: [o, x],
ordinal: [o, m, x]
},
kab: a,
kaj: a,
kcg: a,
kde: c,
kea: c,
kk: {
cardinal: [o, x],
ordinal: [m, x]
},
kkj: a,
kl: a,
km: c,
kn: a,
ko: c,
ks: a,
ksb: a,
ksh: {
cardinal: [z, o, x],
ordinal: [x]
},
ku: a,
kw: {
cardinal: [z, o, t, f, m, x],
ordinal: [o, m, x]
},
ky: a,
lag: {
cardinal: [z, o, x],
ordinal: [x]
},
lb: a,
lg: a,
lij: {
cardinal: [o, x],
ordinal: [m, x]
},
lkt: c,
ln: a,
lo: {
cardinal: [x],
ordinal: [o, x]
},
lt: {
cardinal: [o, f, m, x],
ordinal: [x]
},
lv: {
cardinal: [z, o, x],
ordinal: [x]
},
mas: a,
mg: a,
mgo: a,
mk: {
cardinal: [o, x],
ordinal: [o, t, m, x]
},
ml: a,
mn: a,
mo: {
cardinal: [o, f, x],
ordinal: [o, x]
},
mr: {
cardinal: [o, x],
ordinal: [o, t, f, x]
},
ms: {
cardinal: [x],
ordinal: [o, x]
},
mt: {
cardinal: [o, t, f, m, x],
ordinal: [x]
},
my: c,
nah: a,
naq: d,
nb: a,
nd: a,
ne: b,
nl: a,
nn: a,
nnh: a,
no: a,
nqo: c,
nr: a,
nso: a,
ny: a,
nyn: a,
om: a,
or: {
cardinal: [o, x],
ordinal: [o, t, f, m, x]
},
os: a,
osa: c,
pa: a,
pap: a,
pcm: a,
pl: {
cardinal: [o, f, m, x],
ordinal: [x]
},
prg: {
cardinal: [z, o, x],
ordinal: [x]
},
ps: a,
pt: {
cardinal: [o, m, x],
ordinal: [x]
},
pt_PT: {
cardinal: [o, m, x],
ordinal: [x]
},
rm: a,
ro: {
cardinal: [o, f, x],
ordinal: [o, x]
},
rof: a,
ru: {
cardinal: [o, f, m, x],
ordinal: [x]
},
rwk: a,
sah: c,
saq: a,
sat: d,
sc: {
cardinal: [o, x],
ordinal: [m, x]
},
scn: {
cardinal: [o, x],
ordinal: [m, x]
},
sd: a,
sdh: a,
se: d,
seh: a,
ses: c,
sg: c,
sh: {
cardinal: [o, f, x],
ordinal: [x]
},
shi: {
cardinal: [o, f, x],
ordinal: [x]
},
si: a,
sk: {
cardinal: [o, f, m, x],
ordinal: [x]
},
sl: {
cardinal: [o, t, f, x],
ordinal: [x]
},
sma: d,
smi: d,
smj: d,
smn: d,
sms: d,
sn: a,
so: a,
sq: {
cardinal: [o, x],
ordinal: [o, m, x]
},
sr: {
cardinal: [o, f, x],
ordinal: [x]
},
ss: a,
ssy: a,
st: a,
su: c,
sv: b,
sw: a,
syr: a,
ta: a,
te: a,
teo: a,
th: c,
ti: a,
tig: a,
tk: {
cardinal: [o, x],
ordinal: [f, x]
},
tl: b,
tn: a,
to: c,
tpi: c,
tr: a,
ts: a,
tzm: a,
ug: a,
uk: {
cardinal: [o, f, m, x],
ordinal: [f, x]
},
und: c,
ur: a,
uz: a,
ve: a,
vec: {
cardinal: [o, m, x],
ordinal: [m, x]
},
vi: {
cardinal: [x],
ordinal: [o, x]
},
vo: a,
vun: a,
wa: a,
wae: a,
wo: c,
xh: a,
xog: a,
yi: a,
yo: c,
yue: c,
zh: c,
zu: a
});
})(pluralCategories$1);
var pluralCategories = /*@__PURE__*/getDefaultExportFromCjs(pluralCategories$1.exports);
var C = /*#__PURE__*/_mergeNamespaces({
__proto__: null,
'default': pluralCategories
}, [pluralCategories$1.exports]);
var ranges$1 = {exports: {}};
(function (module, exports) {
var a = function a(start, end) {
return "other";
};
var b = function b(start, end) {
return start === "other" && end === "one" ? "one" : "other";
};
var c = function c(start, end) {
return end || "other";
};
(function (root, pluralRanges) {
Object.defineProperty(pluralRanges, '__esModule', {
value: true
});
module.exports = pluralRanges;
})(commonjsGlobal, {
af: a,
ak: b,
am: c,
an: a,
ar: function ar(start, end) {
return end === "few" ? "few" : end === "many" ? "many" : start === "zero" && end === "one" ? "zero" : start === "zero" && end === "two" ? "zero" : "other";
},
as: c,
az: c,
be: c,
bg: a,
bn: c,
bs: c,
ca: a,
cs: c,
cy: c,
da: c,
de: c,
el: c,
en: a,
es: a,
et: a,
eu: a,
fa: b,
fi: a,
fil: c,
fr: c,
ga: c,
gl: c,
gsw: c,
gu: c,
he: a,
hi: c,
hr: c,
hu: c,
hy: c,
ia: a,
id: a,
io: a,
is: c,
it: c,
ja: a,
ka: function ka(start, end) {
return start || "other";
},
kk: c,
km: a,
kn: c,
ko: a,
ky: c,
lij: c,
lo: a,
lt: c,
lv: function lv(start, end) {
return end === "one" ? "one" : "other";
},
mk: a,
ml: c,
mn: c,
mr: c,
ms: a,
my: a,
nb: a,
ne: c,
nl: c,
no: a,
or: b,
pa: c,
pcm: a,
pl: c,
ps: c,
pt: c,
ro: function ro(start, end) {
return end === "few" ? "few" : end === "one" ? "few" : "other";
},
ru: c,
sc: c,
scn: c,
sd: b,
si: function si(start, end) {
return start === "one" && end === "one" ? "one" : "other";
},
sk: c,
sl: function sl(start, end) {
return end === "few" ? "few" : end === "one" ? "few" : end === "two" ? "two" : "other";
},
sq: c,
sr: c,
sv: a,
sw: c,
ta: c,
te: c,
th: a,
tk: c,
tr: c,
ug: c,
uk: c,
ur: a,
uz: c,
vi: a,
yue: a,
zh: a,
zu: c
});
})(ranges$1);
var ranges = /*@__PURE__*/getDefaultExportFromCjs(ranges$1.exports);
var R = /*#__PURE__*/_mergeNamespaces({
__proto__: null,
'default': ranges
}, [ranges$1.exports]);
// In a .mjs context, CommonJS imports only expose the default endpoint. We're
// using them here because with this many small functions, bundlers produce less
// cruft than for ES module exports.
var Plurals = plurals || P;
var Categories = pluralCategories || C;
var RangePlurals = ranges || R;
// make-plural exports are cast with safe-identifier to be valid JS identifiers
var id = function id(lc) {
return lc === 'pt-PT' ? 'pt_PT' : lc;
};
var getSelector = function getSelector(lc) {
return Plurals[id(lc)];
};
var getCategories = function getCategories(lc, ord) {
return Categories[id(lc)][ord ? 'ordinal' : 'cardinal'];
};
var getRangeSelector = function getRangeSelector(lc) {
return RangePlurals[id(lc)];
};
var PluralRules = getPluralRules__default["default"](Intl.NumberFormat, getSelector, getCategories, getRangeSelector);
module.exports = PluralRules;