@anoki/fse-ui
Version:
FSE UI components library
79 lines (78 loc) • 1.81 kB
JavaScript
const l = {
arab: "[٠-٩]",
arabext: "[۰-۹]",
bali: "[᭐-᭙]",
beng: "[০-৯]",
deva: "[०-९]",
fullwide: "[0-9]",
gujr: "[૦-૯]",
hanidec: "[〇|一|二|三|四|五|六|七|八|九]",
khmr: "[០-៩]",
knda: "[೦-೯]",
laoo: "[໐-໙]",
limb: "[᥆-᥏]",
mlym: "[൦-൯]",
mong: "[᠐-᠙]",
mymr: "[၀-၉]",
orya: "[୦-୯]",
tamldec: "[௦-௯]",
telu: "[౦-౯]",
thai: "[๐-๙]",
tibt: "[༠-༩]",
latn: "\\d"
}, c = {
arab: [1632, 1641],
arabext: [1776, 1785],
bali: [6992, 7001],
beng: [2534, 2543],
deva: [2406, 2415],
fullwide: [65296, 65303],
gujr: [2790, 2799],
khmr: [6112, 6121],
knda: [3302, 3311],
laoo: [3792, 3801],
limb: [6470, 6479],
mlym: [3430, 3439],
mong: [6160, 6169],
mymr: [4160, 4169],
orya: [2918, 2927],
tamldec: [3046, 3055],
telu: [3174, 3183],
thai: [3664, 3673],
tibt: [3872, 3881]
}, m = l.hanidec.replace(/[\[|\]]/g, "").split("");
function s(t) {
let e = parseInt(t, 10);
if (isNaN(e)) {
e = "";
for (let u = 0; u < t.length; u++) {
const n = t.charCodeAt(u);
if (t[u].search(l.hanidec) !== -1)
e += m.indexOf(t[u]);
else
for (const a in c) {
const [r, o] = c[a];
n >= r && n <= o && (e += n - r);
}
}
return parseInt(e, 10);
} else
return e;
}
const i = /* @__PURE__ */ new Map();
function d() {
i.clear();
}
function g({ numberingSystem: t }, e = "") {
const u = t || "latn";
let n = i.get(u);
n === void 0 && (n = /* @__PURE__ */ new Map(), i.set(u, n));
let a = n.get(e);
return a === void 0 && (a = new RegExp(`${l[u]}${e}`), n.set(e, a)), a;
}
export {
g as digitRegex,
s as parseDigits,
d as resetDigitRegexCache
};
//# sourceMappingURL=index.es243.js.map