first commit

This commit is contained in:
2025-06-17 11:39:51 +08:00
commit 4d913c0007
12754 changed files with 1480633 additions and 0 deletions

20
node_modules/i18n-js/LICENSE.md generated vendored Normal file
View File

@@ -0,0 +1,20 @@
# The MIT License (MIT)
Copyright (c) 2021 Nando Vieira
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

1134
node_modules/i18n-js/README.md generated vendored Normal file

File diff suppressed because it is too large Load Diff

2
node_modules/i18n-js/dist/browser/index.js generated vendored Normal file

File diff suppressed because one or more lines are too long

1
node_modules/i18n-js/dist/browser/index.js.map generated vendored Normal file

File diff suppressed because one or more lines are too long

293
node_modules/i18n-js/dist/import/I18n.js generated vendored Normal file
View File

@@ -0,0 +1,293 @@
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
import get from "lodash/get";
import has from "lodash/has";
import merge from "lodash/merge";
import { Locales } from "./Locales";
import { Pluralization } from "./Pluralization";
import { MissingTranslation } from "./MissingTranslation";
import { camelCaseKeys, createTranslationOptions, formatNumber, getFullScope, inferType, interpolate, isSet, lookup, numberToDelimited, numberToHuman, numberToHumanSize, parseDate, pluralize, strftime, timeAgoInWords, } from "./helpers";
const DEFAULT_I18N_OPTIONS = {
defaultLocale: "en",
locale: "en",
defaultSeparator: ".",
placeholder: /(?:\{\{|%\{)(.*?)(?:\}\}?)/gm,
enableFallback: false,
missingBehavior: "message",
missingTranslationPrefix: "",
missingPlaceholder: (_i18n, placeholder) => `[missing "${placeholder}" value]`,
nullPlaceholder: (i18n, placeholder, message, options) => i18n.missingPlaceholder(i18n, placeholder, message, options),
transformKey: (key) => key,
};
export class I18n {
constructor(translations = {}, options = {}) {
this._locale = DEFAULT_I18N_OPTIONS.locale;
this._defaultLocale = DEFAULT_I18N_OPTIONS.defaultLocale;
this._version = 0;
this.onChangeHandlers = [];
this.translations = {};
this.t = this.translate;
this.p = this.pluralize;
this.l = this.localize;
this.distanceOfTimeInWords = this.timeAgoInWords;
const { locale, enableFallback, missingBehavior, missingTranslationPrefix, missingPlaceholder, nullPlaceholder, defaultLocale, defaultSeparator, placeholder, transformKey, } = Object.assign(Object.assign({}, DEFAULT_I18N_OPTIONS), options);
this.locale = locale;
this.defaultLocale = defaultLocale;
this.defaultSeparator = defaultSeparator;
this.enableFallback = enableFallback;
this.locale = locale;
this.missingBehavior = missingBehavior;
this.missingTranslationPrefix = missingTranslationPrefix;
this.missingPlaceholder = missingPlaceholder;
this.nullPlaceholder = nullPlaceholder;
this.placeholder = placeholder;
this.pluralization = new Pluralization(this);
this.locales = new Locales(this);
this.missingTranslation = new MissingTranslation(this);
this.transformKey = transformKey;
this.interpolate = interpolate;
this.store(translations);
}
store(translations) {
merge(this.translations, translations);
this.hasChanged();
}
get locale() {
return this._locale || this.defaultLocale || "en";
}
set locale(newLocale) {
if (typeof newLocale !== "string") {
throw new Error(`Expected newLocale to be a string; got ${inferType(newLocale)}`);
}
const changed = this._locale !== newLocale;
this._locale = newLocale;
if (changed) {
this.hasChanged();
}
}
get defaultLocale() {
return this._defaultLocale || "en";
}
set defaultLocale(newLocale) {
if (typeof newLocale !== "string") {
throw new Error(`Expected newLocale to be a string; got ${inferType(newLocale)}`);
}
const changed = this._defaultLocale !== newLocale;
this._defaultLocale = newLocale;
if (changed) {
this.hasChanged();
}
}
translate(scope, options) {
options = Object.assign({}, options);
const translationOptions = createTranslationOptions(this, scope, options);
let translation;
const hasFoundTranslation = translationOptions.some((translationOption) => {
if (isSet(translationOption.scope)) {
translation = lookup(this, translationOption.scope, options);
}
else if (isSet(translationOption.message)) {
translation = translationOption.message;
}
return translation !== undefined && translation !== null;
});
if (!hasFoundTranslation) {
return this.missingTranslation.get(scope, options);
}
if (typeof translation === "string") {
translation = this.interpolate(this, translation, options);
}
else if (typeof translation === "object" &&
translation &&
isSet(options.count)) {
translation = pluralize({
i18n: this,
count: options.count || 0,
scope: translation,
options,
baseScope: getFullScope(this, scope, options),
});
}
if (options && translation instanceof Array) {
translation = translation.map((entry) => typeof entry === "string"
? interpolate(this, entry, options)
: entry);
}
return translation;
}
pluralize(count, scope, options) {
return pluralize({
i18n: this,
count,
scope,
options: Object.assign({}, options),
baseScope: getFullScope(this, scope, options !== null && options !== void 0 ? options : {}),
});
}
localize(type, value, options) {
options = Object.assign({}, options);
if (value === undefined || value === null) {
return "";
}
switch (type) {
case "currency":
return this.numberToCurrency(value);
case "number":
return formatNumber(value, Object.assign({ delimiter: ",", precision: 3, separator: ".", significant: false, stripInsignificantZeros: false }, lookup(this, "number.format")));
case "percentage":
return this.numberToPercentage(value);
default: {
let localizedValue;
if (type.match(/^(date|time)/)) {
localizedValue = this.toTime(type, value);
}
else {
localizedValue = value.toString();
}
return interpolate(this, localizedValue, options);
}
}
}
toTime(scope, input) {
const date = parseDate(input);
const format = lookup(this, scope);
if (date.toString().match(/invalid/i)) {
return date.toString();
}
if (!format) {
return date.toString();
}
return this.strftime(date, format);
}
numberToCurrency(input, options = {}) {
return formatNumber(input, Object.assign(Object.assign(Object.assign({ delimiter: ",", format: "%u%n", precision: 2, separator: ".", significant: false, stripInsignificantZeros: false, unit: "$" }, camelCaseKeys(this.get("number.format"))), camelCaseKeys(this.get("number.currency.format"))), options));
}
numberToPercentage(input, options = {}) {
return formatNumber(input, Object.assign(Object.assign(Object.assign({ delimiter: "", format: "%n%", precision: 3, stripInsignificantZeros: false, separator: ".", significant: false }, camelCaseKeys(this.get("number.format"))), camelCaseKeys(this.get("number.percentage.format"))), options));
}
numberToHumanSize(input, options = {}) {
return numberToHumanSize(this, input, Object.assign(Object.assign(Object.assign({ delimiter: "", precision: 3, significant: true, stripInsignificantZeros: true, units: {
billion: "Billion",
million: "Million",
quadrillion: "Quadrillion",
thousand: "Thousand",
trillion: "Trillion",
unit: "",
} }, camelCaseKeys(this.get("number.human.format"))), camelCaseKeys(this.get("number.human.storage_units"))), options));
}
numberToHuman(input, options = {}) {
return numberToHuman(this, input, Object.assign(Object.assign(Object.assign({ delimiter: "", separator: ".", precision: 3, significant: true, stripInsignificantZeros: true, format: "%n %u", roundMode: "default", units: {
billion: "Billion",
million: "Million",
quadrillion: "Quadrillion",
thousand: "Thousand",
trillion: "Trillion",
unit: "",
} }, camelCaseKeys(this.get("number.human.format"))), camelCaseKeys(this.get("number.human.decimal_units"))), options));
}
numberToRounded(input, options) {
return formatNumber(input, Object.assign({ unit: "", precision: 3, significant: false, separator: ".", delimiter: "", stripInsignificantZeros: false }, options));
}
numberToDelimited(input, options = {}) {
return numberToDelimited(input, Object.assign({ delimiterPattern: /(\d)(?=(\d\d\d)+(?!\d))/g, delimiter: ",", separator: "." }, options));
}
withLocale(locale, callback) {
return __awaiter(this, void 0, void 0, function* () {
const originalLocale = this.locale;
try {
this.locale = locale;
yield callback();
}
finally {
this.locale = originalLocale;
}
});
}
strftime(date, format, options = {}) {
return strftime(date, format, Object.assign(Object.assign(Object.assign({}, camelCaseKeys(lookup(this, "date"))), { meridian: {
am: lookup(this, "time.am") || "AM",
pm: lookup(this, "time.pm") || "PM",
} }), options));
}
update(path, override, options = { strict: false }) {
if (options.strict && !has(this.translations, path)) {
throw new Error(`The path "${path}" is not currently defined`);
}
const currentNode = get(this.translations, path);
const currentType = inferType(currentNode);
const overrideType = inferType(override);
if (options.strict && currentType !== overrideType) {
throw new Error(`The current type for "${path}" is "${currentType}", but you're trying to override it with "${overrideType}"`);
}
let newNode;
if (overrideType === "object") {
newNode = Object.assign(Object.assign({}, currentNode), override);
}
else {
newNode = override;
}
const components = path.split(this.defaultSeparator);
const prop = components.pop();
let buffer = this.translations;
for (const component of components) {
if (!buffer[component]) {
buffer[component] = {};
}
buffer = buffer[component];
}
buffer[prop] = newNode;
this.hasChanged();
}
toSentence(items, options = {}) {
const { wordsConnector, twoWordsConnector, lastWordConnector } = Object.assign(Object.assign({ wordsConnector: ", ", twoWordsConnector: " and ", lastWordConnector: ", and " }, camelCaseKeys(lookup(this, "support.array"))), options);
const size = items.length;
switch (size) {
case 0:
return "";
case 1:
return `${items[0]}`;
case 2:
return items.join(twoWordsConnector);
default:
return [
items.slice(0, size - 1).join(wordsConnector),
lastWordConnector,
items[size - 1],
].join("");
}
}
timeAgoInWords(fromTime, toTime, options = {}) {
return timeAgoInWords(this, fromTime, toTime, options);
}
onChange(callback) {
this.onChangeHandlers.push(callback);
return () => {
this.onChangeHandlers.splice(this.onChangeHandlers.indexOf(callback), 1);
};
}
get version() {
return this._version;
}
formatNumber(input, options = {}) {
options = Object.assign(Object.assign({ delimiter: ",", precision: 3, separator: ".", unit: "", format: "%u%n", significant: false, stripInsignificantZeros: false }, camelCaseKeys(this.get("number.format"))), options);
return formatNumber(input, options);
}
get(scope) {
return lookup(this, scope);
}
runCallbacks() {
this.onChangeHandlers.forEach((callback) => callback(this));
}
hasChanged() {
this._version += 1;
this.runCallbacks();
}
}
//# sourceMappingURL=I18n.js.map

1
node_modules/i18n-js/dist/import/I18n.js.map generated vendored Normal file

File diff suppressed because one or more lines are too long

56
node_modules/i18n-js/dist/import/Locales.js generated vendored Normal file
View File

@@ -0,0 +1,56 @@
import uniq from "lodash/uniq";
export const defaultLocaleResolver = (i18n, locale) => {
const locales = [];
const list = [];
locales.push(locale);
if (!locale) {
locales.push(i18n.locale);
}
if (i18n.enableFallback) {
locales.push(i18n.defaultLocale);
}
locales
.filter(Boolean)
.map((entry) => entry.toString())
.forEach(function (currentLocale) {
if (!list.includes(currentLocale)) {
list.push(currentLocale);
}
if (!i18n.enableFallback) {
return;
}
const codes = currentLocale.split("-");
if (codes.length === 3) {
list.push(`${codes[0]}-${codes[1]}`);
}
list.push(codes[0]);
});
return uniq(list);
};
export class Locales {
constructor(i18n) {
this.i18n = i18n;
this.registry = {};
this.register("default", defaultLocaleResolver);
}
register(locale, localeResolver) {
if (typeof localeResolver !== "function") {
const result = localeResolver;
localeResolver = (() => result);
}
this.registry[locale] = localeResolver;
}
get(locale) {
let locales = this.registry[locale] ||
this.registry[this.i18n.locale] ||
this.registry.default;
if (typeof locales === "function") {
locales = locales(this.i18n, locale);
}
if (!(locales instanceof Array)) {
locales = [locales];
}
return locales;
}
}
//# sourceMappingURL=Locales.js.map

1
node_modules/i18n-js/dist/import/Locales.js.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"Locales.js","sourceRoot":"","sources":["../../src/Locales.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,aAAa,CAAC;AA0B/B,MAAM,CAAC,MAAM,qBAAqB,GAAmB,CACnD,IAAU,EACV,MAAc,EACJ,EAAE;IACZ,MAAM,OAAO,GAAG,EAAE,CAAC;IACnB,MAAM,IAAI,GAAa,EAAE,CAAC;IAI1B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAGrB,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAGD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACnC,CAAC;IAQD,OAAO;SACJ,MAAM,CAAC,OAAO,CAAC;SACf,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;SAChC,OAAO,CAAC,UAAU,aAAqB;QACtC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEvC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACvC,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC,CAAC,CAAC;IAEL,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,OAAO,OAAO;IAIlB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QAEnB,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;IAClD,CAAC;IAoBM,QAAQ,CACb,MAAc,EACd,cAAkD;QAElD,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE,CAAC;YACzC,MAAM,MAAM,GAAG,cAAc,CAAC;YAC9B,cAAc,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAmB,CAAC;QACpD,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC;IACzC,CAAC;IAgBM,GAAG,CAAC,MAAc;QACvB,IAAI,OAAO,GACT,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;YAC/B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QAExB,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE,CAAC;YAClC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACvC,CAAC;QAED,IAAI,CAAC,CAAC,OAAO,YAAY,KAAK,CAAC,EAAE,CAAC;YAChC,OAAO,GAAG,CAAC,OAAO,CAAC,CAAC;QACtB,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;CACF"}

43
node_modules/i18n-js/dist/import/MissingTranslation.js generated vendored Normal file
View File

@@ -0,0 +1,43 @@
import { getFullScope, inferType } from "./helpers";
export const guessStrategy = function (i18n, scope) {
if (scope instanceof Array) {
scope = scope.join(i18n.defaultSeparator);
}
const message = scope.split(i18n.defaultSeparator).slice(-1)[0];
return (i18n.missingTranslationPrefix +
message
.replace("_", " ")
.replace(/([a-z])([A-Z])/g, (_match, p1, p2) => `${p1} ${p2.toLowerCase()}`));
};
export const messageStrategy = (i18n, scope, options) => {
const fullScope = getFullScope(i18n, scope, options);
const locale = "locale" in options ? options.locale : i18n.locale;
const localeType = inferType(locale);
const fullScopeWithLocale = [
localeType == "string" ? locale : localeType,
fullScope,
].join(i18n.defaultSeparator);
return `[missing "${fullScopeWithLocale}" translation]`;
};
export const errorStrategy = (i18n, scope, options) => {
const fullScope = getFullScope(i18n, scope, options);
const fullScopeWithLocale = [i18n.locale, fullScope].join(i18n.defaultSeparator);
throw new Error(`Missing translation: ${fullScopeWithLocale}`);
};
export class MissingTranslation {
constructor(i18n) {
this.i18n = i18n;
this.registry = {};
this.register("guess", guessStrategy);
this.register("message", messageStrategy);
this.register("error", errorStrategy);
}
register(name, strategy) {
this.registry[name] = strategy;
}
get(scope, options) {
var _a;
return this.registry[(_a = options.missingBehavior) !== null && _a !== void 0 ? _a : this.i18n.missingBehavior](this.i18n, scope, options);
}
}
//# sourceMappingURL=MissingTranslation.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"MissingTranslation.js","sourceRoot":"","sources":["../../src/MissingTranslation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAepD,MAAM,CAAC,MAAM,aAAa,GAA+B,UACvD,IAAI,EACJ,KAAK;IAEL,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC5C,CAAC;IAGD,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAIhE,OAAO,CACL,IAAI,CAAC,wBAAwB;QAC7B,OAAO;aACJ,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC;aACjB,OAAO,CACN,iBAAiB,EACjB,CAAC,MAAc,EAAE,EAAU,EAAE,EAAU,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CACxE,CACJ,CAAC;AACJ,CAAC,CAAC;AAiBF,MAAM,CAAC,MAAM,eAAe,GAA+B,CACzD,IAAI,EACJ,KAAK,EACL,OAAO,EACP,EAAE;IACF,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;IAClE,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IAErC,MAAM,mBAAmB,GAAG;QAC1B,UAAU,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU;QAC5C,SAAS;KACV,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAE9B,OAAO,aAAa,mBAAmB,gBAAgB,CAAC;AAC1D,CAAC,CAAC;AAiBF,MAAM,CAAC,MAAM,aAAa,GAA+B,CACvD,IAAI,EACJ,KAAK,EACL,OAAO,EACP,EAAE;IACF,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACrD,MAAM,mBAAmB,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,IAAI,CACvD,IAAI,CAAC,gBAAgB,CACtB,CAAC;IAEF,MAAM,IAAI,KAAK,CAAC,wBAAwB,mBAAmB,EAAE,CAAC,CAAC;AACjE,CAAC,CAAC;AAEF,MAAM,OAAO,kBAAkB;IAI7B,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QAEnB,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;QACtC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IACxC,CAAC;IA0BM,QAAQ,CAAC,IAAY,EAAE,QAAoC;QAChE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC;IACjC,CAAC;IAWM,GAAG,CAAC,KAAY,EAAE,OAAa;;QACpC,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAA,OAAO,CAAC,eAAe,mCAAI,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CACxE,IAAI,CAAC,IAAI,EACT,KAAK,EACL,OAAO,CACR,CAAC;IACJ,CAAC;CACF"}

29
node_modules/i18n-js/dist/import/Pluralization.js generated vendored Normal file
View File

@@ -0,0 +1,29 @@
import { en } from "make-plural";
export function useMakePlural({ pluralizer, includeZero = true, ordinal = false, }) {
return function (_i18n, count) {
return [
includeZero && count === 0 ? "zero" : "",
pluralizer(count, ordinal),
].filter(Boolean);
};
}
export const defaultPluralizer = useMakePlural({
pluralizer: en,
includeZero: true,
});
export class Pluralization {
constructor(i18n) {
this.i18n = i18n;
this.registry = {};
this.register("default", defaultPluralizer);
}
register(locale, pluralizer) {
this.registry[locale] = pluralizer;
}
get(locale) {
return (this.registry[locale] ||
this.registry[this.i18n.locale] ||
this.registry["default"]);
}
}
//# sourceMappingURL=Pluralization.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Pluralization.js","sourceRoot":"","sources":["../../src/Pluralization.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAgBjC,MAAM,UAAU,aAAa,CAAC,EAC5B,UAAU,EACV,WAAW,GAAG,IAAI,EAClB,OAAO,GAAG,KAAK,GAKhB;IACC,OAAO,UAAU,KAAW,EAAE,KAAa;QACzC,OAAO;YACL,WAAW,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;YACxC,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC;SAC3B,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAqBD,MAAM,CAAC,MAAM,iBAAiB,GAAe,aAAa,CAAC;IACzD,UAAU,EAAE,EAAE;IACd,WAAW,EAAE,IAAI;CAClB,CAAC,CAAC;AAwCH,MAAM,OAAO,aAAa;IAIxB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QAEnB,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;IAC9C,CAAC;IAqCM,QAAQ,CAAC,MAAc,EAAE,UAAsB;QACpD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC;IACrC,CAAC;IAYM,GAAG,CAAC,MAAc;QACvB,OAAO,CACL,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;YAC/B,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CACzB,CAAC;IACJ,CAAC;CACF"}

2907
node_modules/i18n-js/dist/import/bignumber.js generated vendored Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,11 @@
import camelCase from "lodash/camelCase";
export function camelCaseKeys(target) {
if (!target) {
return {};
}
return Object.keys(target).reduce((buffer, key) => {
buffer[camelCase(key)] = target[key];
return buffer;
}, {});
}
//# sourceMappingURL=camelCaseKeys.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"camelCaseKeys.js","sourceRoot":"","sources":["../../../src/helpers/camelCaseKeys.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,kBAAkB,CAAC;AAczC,MAAM,UAAU,aAAa,CAAW,MAAe;IACrD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,EAAO,CAAC;IACjB,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,MAAc,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;QACvD,MAAe,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAI,MAAe,CAAC,GAAG,CAAC,CAAC;QACzD,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,EAAO,CAAC,CAAC;AACd,CAAC"}

View File

@@ -0,0 +1,16 @@
import { isSet } from "./isSet";
export function createTranslationOptions(i18n, scope, options) {
let translationOptions = [{ scope }];
if (isSet(options.defaults)) {
translationOptions = translationOptions.concat(options.defaults);
}
if (isSet(options.defaultValue)) {
const message = typeof options.defaultValue === "function"
? options.defaultValue(i18n, scope, options)
: options.defaultValue;
translationOptions.push({ message });
delete options.defaultValue;
}
return translationOptions;
}
//# sourceMappingURL=createTranslationOptions.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"createTranslationOptions.js","sourceRoot":"","sources":["../../../src/helpers/createTranslationOptions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAiBhC,MAAM,UAAU,wBAAwB,CACtC,IAAU,EACV,KAAY,EACZ,OAAa;IAEb,IAAI,kBAAkB,GAAW,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAI7C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,kBAAkB,GAAG,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnE,CAAC;IAID,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,MAAM,OAAO,GACX,OAAO,OAAO,CAAC,YAAY,KAAK,UAAU;YACxC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC;YAC5C,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;QAE3B,kBAAkB,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QACrC,OAAO,OAAO,CAAC,YAAY,CAAC;IAC9B,CAAC;IAED,OAAO,kBAAmD,CAAC;AAC7D,CAAC"}

View File

@@ -0,0 +1,20 @@
import { BigNumber } from "bignumber.js";
var RoundingModeMap;
(function (RoundingModeMap) {
RoundingModeMap[RoundingModeMap["up"] = BigNumber.ROUND_UP] = "up";
RoundingModeMap[RoundingModeMap["down"] = BigNumber.ROUND_DOWN] = "down";
RoundingModeMap[RoundingModeMap["truncate"] = BigNumber.ROUND_DOWN] = "truncate";
RoundingModeMap[RoundingModeMap["halfUp"] = BigNumber.ROUND_HALF_UP] = "halfUp";
RoundingModeMap[RoundingModeMap["default"] = BigNumber.ROUND_HALF_UP] = "default";
RoundingModeMap[RoundingModeMap["halfDown"] = BigNumber.ROUND_HALF_DOWN] = "halfDown";
RoundingModeMap[RoundingModeMap["halfEven"] = BigNumber.ROUND_HALF_EVEN] = "halfEven";
RoundingModeMap[RoundingModeMap["banker"] = BigNumber.ROUND_HALF_EVEN] = "banker";
RoundingModeMap[RoundingModeMap["ceiling"] = BigNumber.ROUND_CEIL] = "ceiling";
RoundingModeMap[RoundingModeMap["ceil"] = BigNumber.ROUND_CEIL] = "ceil";
RoundingModeMap[RoundingModeMap["floor"] = BigNumber.ROUND_FLOOR] = "floor";
})(RoundingModeMap || (RoundingModeMap = {}));
export function expandRoundMode(roundMode) {
var _a;
return ((_a = RoundingModeMap[roundMode]) !== null && _a !== void 0 ? _a : RoundingModeMap.default);
}
//# sourceMappingURL=expandRoundMode.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"expandRoundMode.js","sourceRoot":"","sources":["../../../src/helpers/expandRoundMode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzC,IAAK,eAYJ;AAZD,WAAK,eAAe;IAClB,wCAAO,SAAS,CAAC,QAAQ,QAAA,CAAA;IACzB,0CAAS,SAAS,CAAC,UAAU,UAAA,CAAA;IAC7B,8CAAa,SAAS,CAAC,UAAU,cAAA,CAAA;IACjC,4CAAW,SAAS,CAAC,aAAa,YAAA,CAAA;IAClC,6CAAY,SAAS,CAAC,aAAa,aAAA,CAAA;IACnC,8CAAa,SAAS,CAAC,eAAe,cAAA,CAAA;IACtC,8CAAa,SAAS,CAAC,eAAe,cAAA,CAAA;IACtC,4CAAW,SAAS,CAAC,eAAe,YAAA,CAAA;IACpC,6CAAY,SAAS,CAAC,UAAU,aAAA,CAAA;IAChC,0CAAS,SAAS,CAAC,UAAU,UAAA,CAAA;IAC7B,2CAAU,SAAS,CAAC,WAAW,WAAA,CAAA;AACjC,CAAC,EAZI,eAAe,KAAf,eAAe,QAYnB;AAOD,MAAM,UAAU,eAAe,CAC7B,SAAuB;;IAEvB,OAAO,CAAC,MAAA,eAAe,CAAC,SAAS,CAAC,mCAChC,eAAe,CAAC,OAAO,CAA2B,CAAC;AACvD,CAAC"}

View File

@@ -0,0 +1,61 @@
import { BigNumber } from "bignumber.js";
import repeat from "lodash/repeat";
import { roundNumber } from "./roundNumber";
function replaceInFormat(format, { formattedNumber, unit }) {
return format.replace("%n", formattedNumber).replace("%u", unit);
}
function computeSignificand({ significand, whole, precision, }) {
if (whole === "0" || precision === null) {
return significand;
}
const limit = Math.max(0, precision - whole.length);
return (significand !== null && significand !== void 0 ? significand : "").substr(0, limit);
}
export function formatNumber(input, options) {
var _a, _b, _c;
const originalNumber = new BigNumber(input);
if (options.raise && !originalNumber.isFinite()) {
throw new Error(`"${input}" is not a valid numeric value`);
}
const roundedNumber = roundNumber(originalNumber, options);
const numeric = new BigNumber(roundedNumber);
const isNegative = numeric.lt(0);
const isZero = numeric.isZero();
let [whole, significand] = roundedNumber.split(".");
const buffer = [];
let formattedNumber;
const positiveFormat = (_a = options.format) !== null && _a !== void 0 ? _a : "%n";
const negativeFormat = (_b = options.negativeFormat) !== null && _b !== void 0 ? _b : `-${positiveFormat}`;
const format = isNegative && !isZero ? negativeFormat : positiveFormat;
whole = whole.replace("-", "");
while (whole.length > 0) {
buffer.unshift(whole.substr(Math.max(0, whole.length - 3), 3));
whole = whole.substr(0, whole.length - 3);
}
whole = buffer.join("");
formattedNumber = buffer.join(options.delimiter);
if (options.significant) {
significand = computeSignificand({
whole,
significand,
precision: options.precision,
});
}
else {
significand = significand !== null && significand !== void 0 ? significand : repeat("0", (_c = options.precision) !== null && _c !== void 0 ? _c : 0);
}
if (options.stripInsignificantZeros && significand) {
significand = significand.replace(/0+$/, "");
}
if (originalNumber.isNaN()) {
formattedNumber = input.toString();
}
if (significand && originalNumber.isFinite()) {
formattedNumber += (options.separator || ".") + significand;
}
return replaceInFormat(format, {
formattedNumber,
unit: options.unit,
});
}
//# sourceMappingURL=formatNumber.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"formatNumber.js","sourceRoot":"","sources":["../../../src/helpers/formatNumber.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,MAAM,MAAM,eAAe,CAAC;AAGnC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,SAAS,eAAe,CACtB,MAAc,EACd,EAAE,eAAe,EAAE,IAAI,EAA6C;IAEpE,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACnE,CAAC;AAED,SAAS,kBAAkB,CAAC,EAC1B,WAAW,EACX,KAAK,EACL,SAAS,GAKV;IACC,IAAI,KAAK,KAAK,GAAG,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;QACxC,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IAEpD,OAAO,CAAC,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AAC9C,CAAC;AAWD,MAAM,UAAU,YAAY,CAC1B,KAAc,EACd,OAA4B;;IAE5B,MAAM,cAAc,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC;IAE5C,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CAAC,IAAI,KAAK,gCAAgC,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,aAAa,GAAG,WAAW,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAC3D,MAAM,OAAO,GAAG,IAAI,SAAS,CAAC,aAAa,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACjC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAChC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACpD,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,eAAuB,CAAC;IAC5B,MAAM,cAAc,GAAG,MAAA,OAAO,CAAC,MAAM,mCAAI,IAAI,CAAC;IAC9C,MAAM,cAAc,GAAG,MAAA,OAAO,CAAC,cAAc,mCAAI,IAAI,cAAc,EAAE,CAAC;IACtE,MAAM,MAAM,GAAG,UAAU,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC;IAEvE,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAE/B,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/D,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACxB,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAEjD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACxB,WAAW,GAAG,kBAAkB,CAAC;YAC/B,KAAK;YACL,WAAW;YACX,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,WAAW,GAAG,WAAW,aAAX,WAAW,cAAX,WAAW,GAAI,MAAM,CAAC,GAAG,EAAE,MAAA,OAAO,CAAC,SAAS,mCAAI,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,IAAI,OAAO,CAAC,uBAAuB,IAAI,WAAW,EAAE,CAAC;QACnD,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,cAAc,CAAC,KAAK,EAAE,EAAE,CAAC;QAC3B,eAAe,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;IACrC,CAAC;IAED,IAAI,WAAW,IAAI,cAAc,CAAC,QAAQ,EAAE,EAAE,CAAC;QAC7C,eAAe,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,GAAG,CAAC,GAAG,WAAW,CAAC;IAC9D,CAAC;IAED,OAAO,eAAe,CAAC,MAAM,EAAE;QAC7B,eAAe;QACf,IAAI,EAAE,OAAO,CAAC,IAAI;KACnB,CAAC,CAAC;AACL,CAAC"}

View File

@@ -0,0 +1,14 @@
export function getFullScope(i18n, scope, options) {
let result = "";
if (scope instanceof String || typeof scope === "string") {
result = scope;
}
if (scope instanceof Array) {
result = scope.join(i18n.defaultSeparator);
}
if (options.scope) {
result = [options.scope, result].join(i18n.defaultSeparator);
}
return result;
}
//# sourceMappingURL=getFullScope.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getFullScope.js","sourceRoot":"","sources":["../../../src/helpers/getFullScope.ts"],"names":[],"mappings":"AAaA,MAAM,UAAU,YAAY,CAAC,IAAU,EAAE,KAAY,EAAE,OAAa;IAClE,IAAI,MAAM,GAAG,EAAE,CAAC;IAGhB,IAAI,KAAK,YAAY,MAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACzD,MAAM,GAAG,KAAe,CAAC;IAC3B,CAAC;IAGD,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,MAAM,GAAI,KAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC3D,CAAC;IAMD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}

18
node_modules/i18n-js/dist/import/helpers/index.js generated vendored Normal file
View File

@@ -0,0 +1,18 @@
export { camelCaseKeys } from "./camelCaseKeys";
export { createTranslationOptions } from "./createTranslationOptions";
export { expandRoundMode } from "./expandRoundMode";
export { formatNumber } from "./formatNumber";
export { getFullScope } from "./getFullScope";
export { inferType } from "./inferType";
export { interpolate } from "./interpolate";
export { isSet } from "./isSet";
export { lookup } from "./lookup";
export { numberToDelimited } from "./numberToDelimited";
export { numberToHuman } from "./numberToHuman";
export { numberToHumanSize } from "./numberToHumanSize";
export { parseDate } from "./parseDate";
export { pluralize } from "./pluralize";
export { roundNumber } from "./roundNumber";
export { strftime } from "./strftime";
export { timeAgoInWords } from "./timeAgoInWords";
//# sourceMappingURL=index.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/helpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC"}

12
node_modules/i18n-js/dist/import/helpers/inferType.js generated vendored Normal file
View File

@@ -0,0 +1,12 @@
export function inferType(instance) {
var _a, _b;
if (instance === null) {
return "null";
}
const type = typeof instance;
if (type !== "object") {
return type;
}
return ((_b = (_a = instance === null || instance === void 0 ? void 0 : instance.constructor) === null || _a === void 0 ? void 0 : _a.name) === null || _b === void 0 ? void 0 : _b.toLowerCase()) || "object";
}
//# sourceMappingURL=inferType.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"inferType.js","sourceRoot":"","sources":["../../../src/helpers/inferType.ts"],"names":[],"mappings":"AASA,MAAM,UAAU,SAAS,CAAC,QAAiB;;IACzC,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,QAAQ,CAAC;IAE7B,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAA,MAAA,MAAC,QAAgB,aAAhB,QAAQ,uBAAR,QAAQ,CAAU,WAAW,0CAAE,IAAI,0CAAE,WAAW,EAAE,KAAI,QAAQ,CAAC;AACzE,CAAC"}

View File

@@ -0,0 +1,29 @@
import { isSet } from "./isSet";
export function interpolate(i18n, message, options) {
options = Object.keys(options).reduce((buffer, key) => {
buffer[i18n.transformKey(key)] = options[key];
return buffer;
}, {});
const matches = message.match(i18n.placeholder);
if (!matches) {
return message;
}
while (matches.length) {
let value;
const placeholder = matches.shift();
const name = placeholder.replace(i18n.placeholder, "$1");
if (isSet(options[name])) {
value = options[name].toString().replace(/\$/gm, "_#$#_");
}
else if (name in options) {
value = i18n.nullPlaceholder(i18n, placeholder, message, options);
}
else {
value = i18n.missingPlaceholder(i18n, placeholder, message, options);
}
const regex = new RegExp(placeholder.replace(/\{/gm, "\\{").replace(/\}/gm, "\\}"), "g");
message = message.replace(regex, value);
}
return message.replace(/_#\$#_/g, "$");
}
//# sourceMappingURL=interpolate.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"interpolate.js","sourceRoot":"","sources":["../../../src/helpers/interpolate.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAgBhC,MAAM,UAAU,WAAW,CACzB,IAAU,EACV,OAAe,EACf,OAAyB;IAEzB,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;QACpD,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC9C,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,EAAsB,CAAC,CAAC;IAC3B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAEhD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC;QACtB,IAAI,KAAa,CAAC;QAClB,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,EAAY,CAAC;QAC9C,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAEzD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YACzB,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC5D,CAAC;aAAM,IAAI,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACpE,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,MAAM,CACtB,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,EACzD,GAAG,CACJ,CAAC;QAEF,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;AACzC,CAAC"}

4
node_modules/i18n-js/dist/import/helpers/isSet.js generated vendored Normal file
View File

@@ -0,0 +1,4 @@
export function isSet(value) {
return value !== undefined && value !== null;
}
//# sourceMappingURL=isSet.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"isSet.js","sourceRoot":"","sources":["../../../src/helpers/isSet.ts"],"names":[],"mappings":"AASA,MAAM,UAAU,KAAK,CAAC,KAAc;IAClC,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC;AAC/C,CAAC"}

18
node_modules/i18n-js/dist/import/helpers/lookup.js generated vendored Normal file
View File

@@ -0,0 +1,18 @@
import { isSet } from "./isSet";
import { getFullScope } from "./getFullScope";
import { inferType } from "./inferType";
export function lookup(i18n, scope, options = {}) {
options = Object.assign({}, options);
const locale = "locale" in options ? options.locale : i18n.locale;
const localeType = inferType(locale);
const locales = i18n.locales
.get(localeType === "string" ? locale : typeof locale)
.slice();
const keys = getFullScope(i18n, scope, options)
.split(i18n.defaultSeparator)
.map((component) => i18n.transformKey(component));
const entries = locales.map((locale) => keys.reduce((path, key) => path && path[key], i18n.translations[locale]));
entries.push(options.defaultValue);
return entries.find((entry) => isSet(entry));
}
//# sourceMappingURL=lookup.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"lookup.js","sourceRoot":"","sources":["../../../src/helpers/lookup.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAiBxC,MAAM,UAAU,MAAM,CAAC,IAAU,EAAE,KAAY,EAAE,UAAgB,EAAE;IACjE,OAAO,qBAAQ,OAAO,CAAE,CAAC;IAEzB,MAAM,MAAM,GAAG,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;IAClE,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IAErC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO;SACzB,GAAG,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC;SACrD,KAAK,EAAE,CAAC;IAEX,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC;SAC5C,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC;SAC5B,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;IAEpD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACrC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CACzE,CAAC;IAEF,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAEnC,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;AAC/C,CAAC"}

View File

@@ -0,0 +1,14 @@
import { BigNumber } from "bignumber.js";
export function numberToDelimited(input, options) {
const numeric = new BigNumber(input);
if (!numeric.isFinite()) {
return input.toString();
}
if (!options.delimiterPattern.global) {
throw new Error(`options.delimiterPattern must be a global regular expression; received ${options.delimiterPattern}`);
}
let [left, right] = numeric.toString().split(".");
left = left.replace(options.delimiterPattern, (digitToDelimiter) => `${digitToDelimiter}${options.delimiter}`);
return [left, right].filter(Boolean).join(options.separator);
}
//# sourceMappingURL=numberToDelimited.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"numberToDelimited.js","sourceRoot":"","sources":["../../../src/helpers/numberToDelimited.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAezC,MAAM,UAAU,iBAAiB,CAC/B,KAAc,EACd,OAAiC;IAEjC,MAAM,OAAO,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC;IAErC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;QACxB,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CACb,0EAA0E,OAAO,CAAC,gBAAgB,EAAE,CACrG,CAAC;IACJ,CAAC;IAGD,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAElD,IAAI,GAAG,IAAI,CAAC,OAAO,CACjB,OAAO,CAAC,gBAAgB,EACxB,CAAC,gBAAgB,EAAE,EAAE,CAAC,GAAG,gBAAgB,GAAG,OAAO,CAAC,SAAS,EAAE,CAChE,CAAC;IAEF,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAC/D,CAAC"}

View File

@@ -0,0 +1,71 @@
import { BigNumber } from "bignumber.js";
import sortBy from "lodash/sortBy";
import zipObject from "lodash/zipObject";
import { getFullScope } from "./getFullScope";
import { lookup } from "./lookup";
import { roundNumber } from "./roundNumber";
import { inferType } from "./inferType";
const DECIMAL_UNITS = {
"0": "unit",
"1": "ten",
"2": "hundred",
"3": "thousand",
"6": "million",
"9": "billion",
"12": "trillion",
"15": "quadrillion",
"-1": "deci",
"-2": "centi",
"-3": "mili",
"-6": "micro",
"-9": "nano",
"-12": "pico",
"-15": "femto",
};
const INVERTED_DECIMAL_UNITS = zipObject(Object.values(DECIMAL_UNITS), Object.keys(DECIMAL_UNITS).map((key) => parseInt(key, 10)));
export function numberToHuman(i18n, input, options) {
const roundOptions = {
roundMode: options.roundMode,
precision: options.precision,
significant: options.significant,
};
let units;
if (inferType(options.units) === "string") {
const scope = options.units;
units = lookup(i18n, scope);
if (!units) {
throw new Error(`The scope "${i18n.locale}${i18n.defaultSeparator}${getFullScope(i18n, scope, {})}" couldn't be found`);
}
}
else {
units = options.units;
}
let formattedNumber = roundNumber(new BigNumber(input), roundOptions);
const unitExponents = (units) => sortBy(Object.keys(units).map((name) => INVERTED_DECIMAL_UNITS[name]), (numeric) => numeric * -1);
const calculateExponent = (num, units) => {
const exponent = num.isZero()
? 0
: Math.floor(Math.log10(num.abs().toNumber()));
return unitExponents(units).find((exp) => exponent >= exp) || 0;
};
const determineUnit = (units, exponent) => {
const expName = DECIMAL_UNITS[exponent.toString()];
return units[expName] || "";
};
const exponent = calculateExponent(new BigNumber(formattedNumber), units);
const unit = determineUnit(units, exponent);
formattedNumber = roundNumber(new BigNumber(formattedNumber).div(Math.pow(10, exponent)), roundOptions);
if (options.stripInsignificantZeros) {
let [whole, significand] = formattedNumber.split(".");
significand = (significand || "").replace(/0+$/, "");
formattedNumber = whole;
if (significand) {
formattedNumber += `${options.separator}${significand}`;
}
}
return options.format
.replace("%n", formattedNumber || "0")
.replace("%u", unit)
.trim();
}
//# sourceMappingURL=numberToHuman.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"numberToHuman.js","sourceRoot":"","sources":["../../../src/helpers/numberToHuman.ts"],"names":[],"mappings":"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"}

View File

@@ -0,0 +1,48 @@
import { BigNumber } from "bignumber.js";
import { roundNumber } from "./roundNumber";
import { expandRoundMode } from "./expandRoundMode";
const STORAGE_UNITS = ["byte", "kb", "mb", "gb", "tb", "pb", "eb"];
export function numberToHumanSize(i18n, input, options) {
const roundMode = expandRoundMode(options.roundMode);
const base = 1024;
const num = new BigNumber(input).abs();
const smallerThanBase = num.lt(base);
let numberToBeFormatted;
const computeExponent = (numeric, units) => {
const max = units.length - 1;
const exp = new BigNumber(Math.log(numeric.toNumber()))
.div(Math.log(base))
.integerValue(BigNumber.ROUND_DOWN)
.toNumber();
return Math.min(max, exp);
};
const storageUnitKey = (units) => {
const keyEnd = smallerThanBase ? "byte" : units[exponent];
return `number.human.storage_units.units.${keyEnd}`;
};
const exponent = computeExponent(num, STORAGE_UNITS);
if (smallerThanBase) {
numberToBeFormatted = num.integerValue();
}
else {
numberToBeFormatted = new BigNumber(roundNumber(num.div(Math.pow(base, exponent)), {
significant: options.significant,
precision: options.precision,
roundMode: options.roundMode,
}));
}
const format = i18n.translate("number.human.storage_units.format", {
defaultValue: "%n %u",
});
const unit = i18n.translate(storageUnitKey(STORAGE_UNITS), {
count: num.integerValue().toNumber(),
});
let formattedNumber = numberToBeFormatted.toFixed(options.precision, roundMode);
if (options.stripInsignificantZeros) {
formattedNumber = formattedNumber
.replace(/(\..*?)0+$/, "$1")
.replace(/\.$/, "");
}
return format.replace("%n", formattedNumber).replace("%u", unit);
}
//# sourceMappingURL=numberToHumanSize.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"numberToHumanSize.js","sourceRoot":"","sources":["../../../src/helpers/numberToHumanSize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAIzC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAKpD,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAanE,MAAM,UAAU,iBAAiB,CAC/B,IAAU,EACV,KAAc,EACd,OAAiC;IAEjC,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,IAAI,CAAC;IAClB,MAAM,GAAG,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC;IACvC,MAAM,eAAe,GAAG,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,mBAAmB,CAAC;IAExB,MAAM,eAAe,GAAG,CAAC,OAAkB,EAAE,KAAe,EAAE,EAAE;QAC9D,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAC7B,MAAM,GAAG,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;aACpD,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aACnB,YAAY,CAAC,SAAS,CAAC,UAAU,CAAC;aAClC,QAAQ,EAAE,CAAC;QAEd,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC5B,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,KAAe,EAAE,EAAE;QACzC,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC1D,OAAO,oCAAoC,MAAM,EAAE,CAAC;IACtD,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IAErD,IAAI,eAAe,EAAE,CAAC;QACpB,mBAAmB,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC;IAC3C,CAAC;SAAM,CAAC;QACN,mBAAmB,GAAG,IAAI,SAAS,CACjC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,SAAA,IAAI,EAAI,QAAQ,CAAA,CAAC,EAAE;YACrC,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAC,CACH,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,mCAAmC,EAAE;QACjE,YAAY,EAAE,OAAO;KACtB,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE;QACzD,KAAK,EAAE,GAAG,CAAC,YAAY,EAAE,CAAC,QAAQ,EAAE;KACrC,CAAC,CAAC;IAEH,IAAI,eAAe,GAAG,mBAAmB,CAAC,OAAO,CAC/C,OAAO,CAAC,SAAmB,EAC3B,SAAS,CACV,CAAC;IAEF,IAAI,OAAO,CAAC,uBAAuB,EAAE,CAAC;QACpC,eAAe,GAAG,eAAe;aAC9B,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC;aAC3B,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACxB,CAAC;IAED,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACnE,CAAC"}

31
node_modules/i18n-js/dist/import/helpers/parseDate.js generated vendored Normal file
View File

@@ -0,0 +1,31 @@
export function parseDate(input) {
if (input instanceof Date) {
return input;
}
if (typeof input === "number") {
const date = new Date();
date.setTime(input);
return date;
}
const matches = new String(input).match(/(\d{4})-(\d{2})-(\d{2})(?:[ T](\d{2}):(\d{2}):(\d{2})(?:[.,](\d{1,3}))?)?(Z|\+00:?00)?/);
if (matches) {
const parts = matches.slice(1, 8).map((match) => parseInt(match, 10) || 0);
parts[1] -= 1;
const [year, month, day, hour, minute, second, milliseconds] = parts;
const timezone = matches[8];
if (timezone) {
return new Date(Date.UTC(year, month, day, hour, minute, second, milliseconds));
}
else {
return new Date(year, month, day, hour, minute, second, milliseconds);
}
}
if (input.match(/([A-Z][a-z]{2}) ([A-Z][a-z]{2}) (\d+) (\d+:\d+:\d+) ([+-]\d+) (\d+)/)) {
const date = new Date();
date.setTime(Date.parse([RegExp.$1, RegExp.$2, RegExp.$3, RegExp.$6, RegExp.$4, RegExp.$5].join(" ")));
}
const date = new Date();
date.setTime(Date.parse(input));
return date;
}
//# sourceMappingURL=parseDate.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"parseDate.js","sourceRoot":"","sources":["../../../src/helpers/parseDate.ts"],"names":[],"mappings":"AAkCA,MAAM,UAAU,SAAS,CAAC,KAAe;IAEvC,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAE9B,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,IAAI,CAAC,OAAO,CAAC,KAA0B,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CACrC,wFAAwF,CACzF,CAAC;IAEF,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAG3E,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAEd,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC;QACrE,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAE5B,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,IAAI,IAAI,CACb,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,CAC/D,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED,IACE,KAAK,CAAC,KAAK,CACT,qEAAqE,CACtE,EACD,CAAC;QAGD,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,IAAI,CAAC,OAAO,CACV,IAAI,CAAC,KAAK,CACR,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CACrE,GAAG,CACJ,CACF,CACF,CAAC;IACJ,CAAC;IAGD,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IACxB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAEhC,OAAO,IAAI,CAAC;AACd,CAAC"}

33
node_modules/i18n-js/dist/import/helpers/pluralize.js generated vendored Normal file
View File

@@ -0,0 +1,33 @@
import { isSet } from "./isSet";
import { lookup } from "./lookup";
export function pluralize({ i18n, count, scope, options, baseScope, }) {
options = Object.assign({}, options);
let translations;
let message;
if (typeof scope === "object" && scope) {
translations = scope;
}
else {
translations = lookup(i18n, scope, options);
}
if (!translations) {
return i18n.missingTranslation.get(scope, options);
}
const pluralizer = i18n.pluralization.get(options.locale);
const keys = pluralizer(i18n, count);
const missingKeys = [];
while (keys.length) {
const key = keys.shift();
if (isSet(translations[key])) {
message = translations[key];
break;
}
missingKeys.push(key);
}
if (!isSet(message)) {
return i18n.missingTranslation.get(baseScope.split(i18n.defaultSeparator).concat([missingKeys[0]]), options);
}
options.count = count;
return i18n.interpolate(i18n, message, options);
}
//# sourceMappingURL=pluralize.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"pluralize.js","sourceRoot":"","sources":["../../../src/helpers/pluralize.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAmBlC,MAAM,UAAU,SAAS,CAAC,EACxB,IAAI,EACJ,KAAK,EACL,KAAK,EACL,OAAO,EACP,SAAS,GAOV;IACC,OAAO,qBAAQ,OAAO,CAAE,CAAC;IACzB,IAAI,YAAY,CAAC;IACjB,IAAI,OAAO,CAAC;IAEZ,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,EAAE,CAAC;QACvC,YAAY,GAAG,KAAK,CAAC;IACvB,CAAC;SAAM,CAAC;QACN,YAAY,GAAG,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1D,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACrC,MAAM,WAAW,GAAgB,EAAE,CAAC;IAEpC,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAY,CAAC;QAEnC,IAAI,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC7B,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;YAC5B,MAAM;QACR,CAAC;QAED,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAChC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,EAC/D,OAAO,CACR,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;IAEtB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC"}

View File

@@ -0,0 +1,28 @@
import { BigNumber } from "bignumber.js";
import { expandRoundMode } from "./expandRoundMode";
function digitCount(numeric) {
if (numeric.isZero()) {
return 1;
}
return Math.floor(Math.log10(numeric.abs().toNumber()) + 1);
}
function getAbsolutePrecision(numeric, { precision, significant }) {
if (significant && precision !== null && precision > 0) {
return precision - digitCount(numeric);
}
return precision;
}
export function roundNumber(numeric, options) {
const precision = getAbsolutePrecision(numeric, options);
if (precision === null) {
return numeric.toString();
}
const roundMode = expandRoundMode(options.roundMode);
if (precision >= 0) {
return numeric.toFixed(precision, roundMode);
}
const rounder = Math.pow(10, Math.abs(precision));
numeric = new BigNumber(numeric.div(rounder).toFixed(0, roundMode)).times(rounder);
return numeric.toString();
}
//# sourceMappingURL=roundNumber.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"roundNumber.js","sourceRoot":"","sources":["../../../src/helpers/roundNumber.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGzC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAQpD,SAAS,UAAU,CAAC,OAAkB;IACpC,IAAI,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;QACrB,OAAO,CAAC,CAAC;IACX,CAAC;IAED,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,oBAAoB,CAC3B,OAAkB,EAClB,EAAE,SAAS,EAAE,WAAW,EAAmB;IAE3C,IAAI,WAAW,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;QACvD,OAAO,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAaD,MAAM,UAAU,WAAW,CACzB,OAAkB,EAClB,OAAwB;IAExB,MAAM,SAAS,GAAG,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAEzD,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;QACvB,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC5B,CAAC;IAED,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAErD,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QACnB,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAC/C,CAAC;IAID,MAAM,OAAO,GAAG,SAAA,EAAE,EAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA,CAAC;IAE1C,OAAO,GAAG,IAAI,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,CACvE,OAAO,CACR,CAAC;IAEF,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;AAC5B,CAAC"}

102
node_modules/i18n-js/dist/import/helpers/strftime.js generated vendored Normal file
View File

@@ -0,0 +1,102 @@
const DEFAULT_OPTIONS = {
meridian: { am: "AM", pm: "PM" },
dayNames: [
"Sunday",
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday",
],
abbrDayNames: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
monthNames: [
null,
"January",
"February",
"March",
"April",
"May",
"June",
"July",
"August",
"September",
"October",
"November",
"December",
],
abbrMonthNames: [
null,
"Jan",
"Feb",
"Mar",
"Apr",
"May",
"Jun",
"Jul",
"Aug",
"Sep",
"Oct",
"Nov",
"Dec",
],
};
export function strftime(date, format, options = {}) {
const { abbrDayNames, dayNames, abbrMonthNames, monthNames, meridian: AM_PM, utc, } = Object.assign(Object.assign({}, DEFAULT_OPTIONS), options);
if (isNaN(date.getTime())) {
throw new Error("strftime() requires a valid date object, but received an invalid date.");
}
const weekDay = utc ? date.getUTCDay() : date.getDay();
const day = utc ? date.getUTCDate() : date.getDate();
const year = utc ? date.getUTCFullYear() : date.getFullYear();
const month = (utc ? date.getUTCMonth() : date.getMonth()) + 1;
const hour = utc ? date.getUTCHours() : date.getHours();
let hour12 = hour;
const meridian = hour > 11 ? "pm" : "am";
const secs = utc ? date.getUTCSeconds() : date.getSeconds();
const mins = utc ? date.getUTCMinutes() : date.getMinutes();
const offset = utc ? 0 : date.getTimezoneOffset();
const absOffsetHours = Math.floor(Math.abs(offset / 60));
const absOffsetMinutes = Math.abs(offset) - absOffsetHours * 60;
const timezoneoffset = (offset > 0 ? "-" : "+") +
(absOffsetHours.toString().length < 2
? "0" + absOffsetHours
: absOffsetHours) +
(absOffsetMinutes.toString().length < 2
? "0" + absOffsetMinutes
: absOffsetMinutes);
if (hour12 > 12) {
hour12 = hour12 - 12;
}
else if (hour12 === 0) {
hour12 = 12;
}
format = format.replace("%a", abbrDayNames[weekDay]);
format = format.replace("%A", dayNames[weekDay]);
format = format.replace("%b", abbrMonthNames[month]);
format = format.replace("%B", monthNames[month]);
format = format.replace("%d", day.toString().padStart(2, "0"));
format = format.replace("%e", day.toString());
format = format.replace("%-d", day.toString());
format = format.replace("%H", hour.toString().padStart(2, "0"));
format = format.replace("%-H", hour.toString());
format = format.replace("%k", hour.toString());
format = format.replace("%I", hour12.toString().padStart(2, "0"));
format = format.replace("%-I", hour12.toString());
format = format.replace("%l", hour12.toString());
format = format.replace("%m", month.toString().padStart(2, "0"));
format = format.replace("%-m", month.toString());
format = format.replace("%M", mins.toString().padStart(2, "0"));
format = format.replace("%-M", mins.toString());
format = format.replace("%p", AM_PM[meridian]);
format = format.replace("%P", AM_PM[meridian].toLowerCase());
format = format.replace("%S", secs.toString().padStart(2, "0"));
format = format.replace("%-S", secs.toString());
format = format.replace("%w", weekDay.toString());
format = format.replace("%y", year.toString().padStart(2, "0").substr(-2));
format = format.replace("%-y", year.toString().padStart(2, "0").substr(-2).replace(/^0+/, ""));
format = format.replace("%Y", year.toString());
format = format.replace(/%z/i, timezoneoffset);
return format;
}
//# sourceMappingURL=strftime.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"strftime.js","sourceRoot":"","sources":["../../../src/helpers/strftime.ts"],"names":[],"mappings":"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"}

View File

@@ -0,0 +1,94 @@
import range from "lodash/range";
import { parseDate } from "./parseDate";
const within = (start, end, actual) => actual >= start && actual <= end;
export function timeAgoInWords(i18n, fromTime, toTime, options = {}) {
const scope = options.scope || "datetime.distance_in_words";
const t = (name, count = 0) => i18n.t(name, { count, scope });
fromTime = parseDate(fromTime);
toTime = parseDate(toTime);
let fromInSeconds = fromTime.getTime() / 1000;
let toInSeconds = toTime.getTime() / 1000;
if (fromInSeconds > toInSeconds) {
[fromTime, toTime, fromInSeconds, toInSeconds] = [
toTime,
fromTime,
toInSeconds,
fromInSeconds,
];
}
const distanceInSeconds = Math.round(toInSeconds - fromInSeconds);
const distanceInMinutes = Math.round((toInSeconds - fromInSeconds) / 60);
const distanceInHours = distanceInMinutes / 60;
const distanceInDays = distanceInHours / 24;
const distanceInHoursRounded = Math.round(distanceInMinutes / 60);
const distanceInDaysRounded = Math.round(distanceInDays);
const distanceInMonthsRounded = Math.round(distanceInDaysRounded / 30);
if (within(0, 1, distanceInMinutes)) {
if (!options.includeSeconds) {
return distanceInMinutes === 0
? t("less_than_x_minutes", 1)
: t("x_minutes", distanceInMinutes);
}
if (within(0, 4, distanceInSeconds)) {
return t("less_than_x_seconds", 5);
}
if (within(5, 9, distanceInSeconds)) {
return t("less_than_x_seconds", 10);
}
if (within(10, 19, distanceInSeconds)) {
return t("less_than_x_seconds", 20);
}
if (within(20, 39, distanceInSeconds)) {
return t("half_a_minute");
}
if (within(40, 59, distanceInSeconds)) {
return t("less_than_x_minutes", 1);
}
return t("x_minutes", 1);
}
if (within(2, 44, distanceInMinutes)) {
return t("x_minutes", distanceInMinutes);
}
if (within(45, 89, distanceInMinutes)) {
return t("about_x_hours", 1);
}
if (within(90, 1439, distanceInMinutes)) {
return t("about_x_hours", distanceInHoursRounded);
}
if (within(1440, 2519, distanceInMinutes)) {
return t("x_days", 1);
}
if (within(2520, 43199, distanceInMinutes)) {
return t("x_days", distanceInDaysRounded);
}
if (within(43200, 86399, distanceInMinutes)) {
return t("about_x_months", Math.round(distanceInMinutes / 43200));
}
if (within(86400, 525599, distanceInMinutes)) {
return t("x_months", distanceInMonthsRounded);
}
let fromYear = fromTime.getFullYear();
if (fromTime.getMonth() + 1 >= 3) {
fromYear += 1;
}
let toYear = toTime.getFullYear();
if (toTime.getMonth() + 1 < 3) {
toYear -= 1;
}
const leapYears = fromYear > toYear
? 0
: range(fromYear, toYear).filter((year) => new Date(year, 1, 29).getMonth() == 1).length;
const minutesInYear = 525600;
const minuteOffsetForLeapYear = leapYears * 1440;
const minutesWithOffset = distanceInMinutes - minuteOffsetForLeapYear;
const distanceInYears = Math.trunc(minutesWithOffset / minutesInYear);
const diff = parseFloat((minutesWithOffset / minutesInYear - distanceInYears).toPrecision(3));
if (diff < 0.25) {
return t("about_x_years", distanceInYears);
}
if (diff < 0.75) {
return t("over_x_years", distanceInYears);
}
return t("almost_x_years", distanceInYears + 1);
}
//# sourceMappingURL=timeAgoInWords.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"timeAgoInWords.js","sourceRoot":"","sources":["../../../src/helpers/timeAgoInWords.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,cAAc,CAAC;AAIjC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,MAAM,MAAM,GAAG,CAAC,KAAa,EAAE,GAAW,EAAE,MAAc,EAAW,EAAE,CACrE,MAAM,IAAI,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC;AAiBnC,MAAM,UAAU,cAAc,CAC5B,IAAU,EACV,QAAkB,EAClB,MAAgB,EAChB,UAAiC,EAAE;IAEnC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,4BAA4B,CAAC;IAC5D,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,KAAK,GAAG,CAAC,EAAU,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAE9E,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC/B,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IAE3B,IAAI,aAAa,GAAG,QAAQ,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;IAC9C,IAAI,WAAW,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;IAE1C,IAAI,aAAa,GAAG,WAAW,EAAE,CAAC;QAChC,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,WAAW,CAAC,GAAG;YAC/C,MAAM;YACN,QAAQ;YACR,WAAW;YACX,aAAa;SACd,CAAC;IACJ,CAAC;IAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,aAAa,CAAC,CAAC;IAClE,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,GAAG,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC;IACzE,MAAM,eAAe,GAAG,iBAAiB,GAAG,EAAE,CAAC;IAC/C,MAAM,cAAc,GAAG,eAAe,GAAG,EAAE,CAAC;IAE5C,MAAM,sBAAsB,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,EAAE,CAAC,CAAC;IAClE,MAAM,qBAAqB,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IACzD,MAAM,uBAAuB,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,GAAG,EAAE,CAAC,CAAC;IAEvE,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,iBAAiB,CAAC,EAAE,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YAC5B,OAAO,iBAAiB,KAAK,CAAC;gBAC5B,CAAC,CAAC,CAAC,CAAC,qBAAqB,EAAE,CAAC,CAAC;gBAC7B,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;QACxC,CAAC;QAED,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,iBAAiB,CAAC,EAAE,CAAC;YACpC,OAAO,CAAC,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC;QACrC,CAAC;QAED,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,iBAAiB,CAAC,EAAE,CAAC;YACpC,OAAO,CAAC,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,iBAAiB,CAAC,EAAE,CAAC;YACtC,OAAO,CAAC,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC;QACtC,CAAC;QAED,IAAI,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,iBAAiB,CAAC,EAAE,CAAC;YACtC,OAAO,CAAC,CAAC,eAAe,CAAC,CAAC;QAC5B,CAAC;QAED,IAAI,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,iBAAiB,CAAC,EAAE,CAAC;YACtC,OAAO,CAAC,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC;QACrC,CAAC;QAED,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED,IAAI,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,iBAAiB,CAAC,EAAE,CAAC;QACrC,OAAO,CAAC,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,iBAAiB,CAAC,EAAE,CAAC;QACtC,OAAO,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC;IAED,IAAI,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,iBAAiB,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,CAAC,eAAe,EAAE,sBAAsB,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,iBAAiB,CAAC,EAAE,CAAC;QAC1C,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACxB,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,EAAE,KAAM,EAAE,iBAAiB,CAAC,EAAE,CAAC;QAC5C,OAAO,CAAC,CAAC,QAAQ,EAAE,qBAAqB,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,MAAM,CAAC,KAAM,EAAE,KAAM,EAAE,iBAAiB,CAAC,EAAE,CAAC;QAC9C,OAAO,CAAC,CAAC,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,KAAK,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,IAAI,MAAM,CAAC,KAAM,EAAE,MAAO,EAAE,iBAAiB,CAAC,EAAE,CAAC;QAC/C,OAAO,CAAC,CAAC,UAAU,EAAE,uBAAuB,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IAEtC,IAAI,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QACjC,QAAQ,IAAI,CAAC,CAAC;IAChB,CAAC;IAED,IAAI,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IAElC,IAAI,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,CAAC,CAAC;IACd,CAAC;IAED,MAAM,SAAS,GACb,QAAQ,GAAG,MAAM;QACf,CAAC,CAAC,CAAC;QACH,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAC5B,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAChD,CAAC,MAAM,CAAC;IAEf,MAAM,aAAa,GAAG,MAAO,CAAC;IAC9B,MAAM,uBAAuB,GAAG,SAAS,GAAG,IAAI,CAAC;IACjD,MAAM,iBAAiB,GAAG,iBAAiB,GAAG,uBAAuB,CAAC;IACtE,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,aAAa,CAAC,CAAC;IAEtE,MAAM,IAAI,GAAG,UAAU,CACrB,CAAC,iBAAiB,GAAG,aAAa,GAAG,eAAe,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CACrE,CAAC;IAEF,IAAI,IAAI,GAAG,IAAI,EAAE,CAAC;QAChB,OAAO,CAAC,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,IAAI,GAAG,IAAI,EAAE,CAAC;QAChB,OAAO,CAAC,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;IAC5C,CAAC;IAED,OAAO,CAAC,CAAC,gBAAgB,EAAE,eAAe,GAAG,CAAC,CAAC,CAAC;AAClD,CAAC"}

6
node_modules/i18n-js/dist/import/index.js generated vendored Normal file
View File

@@ -0,0 +1,6 @@
export { I18n } from "./I18n";
export { Locales } from "./Locales";
export { MissingTranslation } from "./MissingTranslation";
export { Pluralization, useMakePlural } from "./Pluralization";
export * from "./typing";
//# sourceMappingURL=index.js.map

1
node_modules/i18n-js/dist/import/index.js.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC/D,cAAc,UAAU,CAAC"}

3777
node_modules/i18n-js/dist/import/lodash.js generated vendored Normal file

File diff suppressed because it is too large Load Diff

1
node_modules/i18n-js/dist/import/lodash.js.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"lodash.js","sourceRoot":"","sources":["../../src/lodash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,OAAO,IAAI,GAAG,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,cAAc,CAAC"}

663
node_modules/i18n-js/dist/import/make-plural.js generated vendored Normal file
View File

@@ -0,0 +1,663 @@
const a = (n, ord) => {
if (ord) return 'other';
return n == 1 ? 'one' : 'other';
};
const b = (n, ord) => {
if (ord) return 'other';
return (n == 0 || n == 1) ? 'one' : 'other';
};
const c = (n, ord) => {
if (ord) return 'other';
return n >= 0 && n <= 1 ? 'one' : 'other';
};
const d = (n, ord) => {
const s = String(n).split('.'), v0 = !s[1];
if (ord) return 'other';
return n == 1 && v0 ? 'one' : 'other';
};
const e = (n, ord) => 'other';
const f = (n, ord) => {
if (ord) return 'other';
return n == 1 ? 'one'
: n == 2 ? 'two'
: 'other';
};
export const af = a;
export const ak = b;
export const am = c;
export const an = a;
export const ar = (n, ord) => {
const 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';
};
export const ars = (n, ord) => {
const 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';
};
export const 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';
};
export const asa = a;
export const ast = d;
export const az = (n, ord) => {
const 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';
};
export const bal = (n, ord) => n == 1 ? 'one' : 'other';
export const be = (n, ord) => {
const 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';
};
export const bem = a;
export const bez = a;
export const bg = a;
export const bho = b;
export const bm = e;
export const 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';
};
export const bo = e;
export const br = (n, ord) => {
const 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';
};
export const brx = a;
export const bs = (n, ord) => {
const 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';
};
export const ca = (n, ord) => {
const 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';
};
export const ce = a;
export const ceb = (n, ord) => {
const 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';
};
export const cgg = a;
export const chr = a;
export const ckb = a;
export const cs = (n, ord) => {
const 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';
};
export const 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';
};
export const da = (n, ord) => {
const 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';
};
export const de = d;
export const doi = c;
export const dsb = (n, ord) => {
const 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';
};
export const dv = a;
export const dz = e;
export const ee = a;
export const el = a;
export const en = (n, ord) => {
const 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';
};
export const eo = a;
export const es = (n, ord) => {
const 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';
};
export const et = d;
export const eu = a;
export const fa = c;
export const ff = (n, ord) => {
if (ord) return 'other';
return n >= 0 && n < 2 ? 'one' : 'other';
};
export const fi = d;
export const fil = (n, ord) => {
const 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';
};
export const fo = a;
export const fr = (n, ord) => {
const 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';
};
export const fur = a;
export const fy = d;
export const ga = (n, ord) => {
const 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';
};
export const gd = (n, ord) => {
const 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';
};
export const gl = d;
export const gsw = a;
export const 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';
};
export const guw = b;
export const gv = (n, ord) => {
const 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';
};
export const ha = a;
export const haw = a;
export const he = (n, ord) => {
const 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';
};
export const 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';
};
export const hnj = e;
export const hr = (n, ord) => {
const 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';
};
export const hsb = (n, ord) => {
const 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';
};
export const hu = (n, ord) => {
if (ord) return (n == 1 || n == 5) ? 'one' : 'other';
return n == 1 ? 'one' : 'other';
};
export const hy = (n, ord) => {
if (ord) return n == 1 ? 'one' : 'other';
return n >= 0 && n < 2 ? 'one' : 'other';
};
export const ia = d;
export const id = e;
export const ig = e;
export const ii = e;
export const io = d;
export const is = (n, ord) => {
const 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';
};
export const it = (n, ord) => {
const 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';
};
export const iu = f;
export const ja = e;
export const jbo = e;
export const jgo = a;
export const jmc = a;
export const jv = e;
export const jw = e;
export const ka = (n, ord) => {
const 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';
};
export const kab = (n, ord) => {
if (ord) return 'other';
return n >= 0 && n < 2 ? 'one' : 'other';
};
export const kaj = a;
export const kcg = a;
export const kde = e;
export const kea = e;
export const kk = (n, ord) => {
const 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';
};
export const kkj = a;
export const kl = a;
export const km = e;
export const kn = c;
export const ko = e;
export const ks = a;
export const ksb = a;
export const ksh = (n, ord) => {
if (ord) return 'other';
return n == 0 ? 'zero'
: n == 1 ? 'one'
: 'other';
};
export const ku = a;
export const kw = (n, ord) => {
const 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';
};
export const ky = a;
export const lag = (n, ord) => {
const s = String(n).split('.'), i = s[0];
if (ord) return 'other';
return n == 0 ? 'zero'
: (i == 0 || i == 1) && n != 0 ? 'one'
: 'other';
};
export const lb = a;
export const lg = a;
export const lij = (n, ord) => {
const 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';
};
export const lkt = e;
export const ln = b;
export const lo = (n, ord) => {
if (ord) return n == 1 ? 'one' : 'other';
return 'other';
};
export const lt = (n, ord) => {
const 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';
};
export const lv = (n, ord) => {
const 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';
};
export const mas = a;
export const mg = b;
export const mgo = a;
export const mk = (n, ord) => {
const 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';
};
export const ml = a;
export const mn = a;
export const mo = (n, ord) => {
const 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';
};
export const mr = (n, ord) => {
if (ord) return n == 1 ? 'one'
: (n == 2 || n == 3) ? 'two'
: n == 4 ? 'few'
: 'other';
return n == 1 ? 'one' : 'other';
};
export const ms = (n, ord) => {
if (ord) return n == 1 ? 'one' : 'other';
return 'other';
};
export const mt = (n, ord) => {
const 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';
};
export const my = e;
export const nah = a;
export const naq = f;
export const nb = a;
export const nd = a;
export const ne = (n, ord) => {
const s = String(n).split('.'), t0 = Number(s[0]) == n;
if (ord) return (t0 && n >= 1 && n <= 4) ? 'one' : 'other';
return n == 1 ? 'one' : 'other';
};
export const nl = d;
export const nn = a;
export const nnh = a;
export const no = a;
export const nqo = e;
export const nr = a;
export const nso = b;
export const ny = a;
export const nyn = a;
export const om = a;
export const or = (n, ord) => {
const 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';
};
export const os = a;
export const osa = e;
export const pa = b;
export const pap = a;
export const pcm = c;
export const pl = (n, ord) => {
const 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';
};
export const prg = (n, ord) => {
const 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';
};
export const ps = a;
export const pt = (n, ord) => {
const 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';
};
export const pt_PT = (n, ord) => {
const 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';
};
export const rm = a;
export const ro = (n, ord) => {
const 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';
};
export const rof = a;
export const ru = (n, ord) => {
const 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';
};
export const rwk = a;
export const sah = e;
export const saq = a;
export const sat = f;
export const sc = (n, ord) => {
const 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';
};
export const scn = (n, ord) => {
const 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';
};
export const sd = a;
export const sdh = a;
export const se = f;
export const seh = a;
export const ses = e;
export const sg = e;
export const sh = (n, ord) => {
const 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';
};
export const shi = (n, ord) => {
const 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';
};
export const si = (n, ord) => {
const 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';
};
export const sk = (n, ord) => {
const 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';
};
export const sl = (n, ord) => {
const 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';
};
export const sma = f;
export const smi = f;
export const smj = f;
export const smn = f;
export const sms = f;
export const sn = a;
export const so = a;
export const sq = (n, ord) => {
const 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';
};
export const sr = (n, ord) => {
const 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';
};
export const ss = a;
export const ssy = a;
export const st = a;
export const su = e;
export const sv = (n, ord) => {
const 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';
};
export const sw = d;
export const syr = a;
export const ta = a;
export const te = a;
export const teo = a;
export const th = e;
export const ti = b;
export const tig = a;
export const tk = (n, ord) => {
const 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';
};
export const tl = (n, ord) => {
const 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';
};
export const tn = a;
export const to = e;
export const tpi = e;
export const tr = a;
export const ts = a;
export const tzm = (n, ord) => {
const 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';
};
export const ug = a;
export const uk = (n, ord) => {
const 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';
};
export const und = e;
export const ur = d;
export const uz = a;
export const ve = a;
export const vec = (n, ord) => {
const 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';
};
export const vi = (n, ord) => {
if (ord) return n == 1 ? 'one' : 'other';
return 'other';
};
export const vo = a;
export const vun = a;
export const wa = b;
export const wae = a;
export const wo = e;
export const xh = a;
export const xog = a;
export const yi = d;
export const yo = e;
export const yue = e;
export const zh = e;
export const zu = c;

1
node_modules/i18n-js/dist/import/make-plural.js.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"make-plural.js","sourceRoot":"","sources":["../../src/make-plural.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,GAAG,EACH,GAAG,EACH,EAAE,EACF,GAAG,EACH,EAAE,EACF,GAAG,EACH,GAAG,EACH,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,GAAG,EACH,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,GAAG,EACH,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,GAAG,EACH,EAAE,EACF,GAAG,EACH,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,GAAG,EACH,GAAG,EACH,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,KAAK,EACL,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,EAAE,EACF,GAAG,EACH,EAAE,EACF,GAAG,EACH,EAAE,EACF,GAAG,EACH,GAAG,EACH,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,EACF,GAAG,EACH,EAAE,EACF,EAAE,GACH,MAAM,qBAAqB,CAAC"}

24
node_modules/i18n-js/dist/import/pluralize/ru.js generated vendored Normal file
View File

@@ -0,0 +1,24 @@
export const ru = (_i18n, count) => {
const mod10 = count % 10;
const mod100 = count % 100;
let key;
const one = mod10 === 1 && mod100 !== 11;
const few = [2, 3, 4].includes(mod10) && ![12, 13, 14].includes(mod100);
const many = mod10 === 0 ||
[5, 6, 7, 8, 9].includes(mod10) ||
[11, 12, 13, 14].includes(mod100);
if (one) {
key = "one";
}
else if (few) {
key = "few";
}
else if (many) {
key = "many";
}
else {
key = "other";
}
return [key];
};
//# sourceMappingURL=ru.js.map

1
node_modules/i18n-js/dist/import/pluralize/ru.js.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"ru.js","sourceRoot":"","sources":["../../../src/pluralize/ru.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,EAAE,GAAe,CAAC,KAAW,EAAE,KAAa,EAAE,EAAE;IAC3D,MAAM,KAAK,GAAG,KAAK,GAAG,EAAE,CAAC;IACzB,MAAM,MAAM,GAAG,KAAK,GAAG,GAAG,CAAC;IAC3B,IAAI,GAAG,CAAC;IAER,MAAM,GAAG,GAAG,KAAK,KAAK,CAAC,IAAI,MAAM,KAAK,EAAE,CAAC;IACzC,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACxE,MAAM,IAAI,GACR,KAAK,KAAK,CAAC;QACX,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QAC/B,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEpC,IAAI,GAAG,EAAE,CAAC;QACR,GAAG,GAAG,KAAK,CAAC;IACd,CAAC;SAAM,IAAI,GAAG,EAAE,CAAC;QACf,GAAG,GAAG,KAAK,CAAC;IACd,CAAC;SAAM,IAAI,IAAI,EAAE,CAAC;QAChB,GAAG,GAAG,MAAM,CAAC;IACf,CAAC;SAAM,CAAC;QACN,GAAG,GAAG,OAAO,CAAC;IAChB,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,CAAC;AACf,CAAC,CAAC"}

View File

@@ -0,0 +1,15 @@
export const westSlavic = (_i18n, count) => {
const few = [2, 3, 4];
let key;
if (count == 1) {
key = "one";
}
else if (few.includes(count)) {
key = "few";
}
else {
key = "other";
}
return [key];
};
//# sourceMappingURL=westSlavic.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"westSlavic.js","sourceRoot":"","sources":["../../../src/pluralize/westSlavic.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,UAAU,GAAe,CAAC,KAAW,EAAE,KAAa,EAAE,EAAE;IACnE,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACtB,IAAI,GAAG,CAAC;IAER,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QACf,GAAG,GAAG,KAAK,CAAC;IACd,CAAC;SAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/B,GAAG,GAAG,KAAK,CAAC;IACd,CAAC;SAAM,CAAC;QACN,GAAG,GAAG,OAAO,CAAC;IAChB,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,CAAC;AACf,CAAC,CAAC"}

2
node_modules/i18n-js/dist/import/typing.js generated vendored Normal file
View File

@@ -0,0 +1,2 @@
export {};
//# sourceMappingURL=typing.js.map

1
node_modules/i18n-js/dist/import/typing.js.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"typing.js","sourceRoot":"","sources":["../../src/typing.ts"],"names":[],"mappings":""}

300
node_modules/i18n-js/dist/require/I18n.js generated vendored Normal file
View File

@@ -0,0 +1,300 @@
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.I18n = void 0;
const get_1 = __importDefault(require("lodash/get"));
const has_1 = __importDefault(require("lodash/has"));
const merge_1 = __importDefault(require("lodash/merge"));
const Locales_1 = require("./Locales");
const Pluralization_1 = require("./Pluralization");
const MissingTranslation_1 = require("./MissingTranslation");
const helpers_1 = require("./helpers");
const DEFAULT_I18N_OPTIONS = {
defaultLocale: "en",
locale: "en",
defaultSeparator: ".",
placeholder: /(?:\{\{|%\{)(.*?)(?:\}\}?)/gm,
enableFallback: false,
missingBehavior: "message",
missingTranslationPrefix: "",
missingPlaceholder: (_i18n, placeholder) => `[missing "${placeholder}" value]`,
nullPlaceholder: (i18n, placeholder, message, options) => i18n.missingPlaceholder(i18n, placeholder, message, options),
transformKey: (key) => key,
};
class I18n {
constructor(translations = {}, options = {}) {
this._locale = DEFAULT_I18N_OPTIONS.locale;
this._defaultLocale = DEFAULT_I18N_OPTIONS.defaultLocale;
this._version = 0;
this.onChangeHandlers = [];
this.translations = {};
this.t = this.translate;
this.p = this.pluralize;
this.l = this.localize;
this.distanceOfTimeInWords = this.timeAgoInWords;
const { locale, enableFallback, missingBehavior, missingTranslationPrefix, missingPlaceholder, nullPlaceholder, defaultLocale, defaultSeparator, placeholder, transformKey, } = Object.assign(Object.assign({}, DEFAULT_I18N_OPTIONS), options);
this.locale = locale;
this.defaultLocale = defaultLocale;
this.defaultSeparator = defaultSeparator;
this.enableFallback = enableFallback;
this.locale = locale;
this.missingBehavior = missingBehavior;
this.missingTranslationPrefix = missingTranslationPrefix;
this.missingPlaceholder = missingPlaceholder;
this.nullPlaceholder = nullPlaceholder;
this.placeholder = placeholder;
this.pluralization = new Pluralization_1.Pluralization(this);
this.locales = new Locales_1.Locales(this);
this.missingTranslation = new MissingTranslation_1.MissingTranslation(this);
this.transformKey = transformKey;
this.interpolate = helpers_1.interpolate;
this.store(translations);
}
store(translations) {
(0, merge_1.default)(this.translations, translations);
this.hasChanged();
}
get locale() {
return this._locale || this.defaultLocale || "en";
}
set locale(newLocale) {
if (typeof newLocale !== "string") {
throw new Error(`Expected newLocale to be a string; got ${(0, helpers_1.inferType)(newLocale)}`);
}
const changed = this._locale !== newLocale;
this._locale = newLocale;
if (changed) {
this.hasChanged();
}
}
get defaultLocale() {
return this._defaultLocale || "en";
}
set defaultLocale(newLocale) {
if (typeof newLocale !== "string") {
throw new Error(`Expected newLocale to be a string; got ${(0, helpers_1.inferType)(newLocale)}`);
}
const changed = this._defaultLocale !== newLocale;
this._defaultLocale = newLocale;
if (changed) {
this.hasChanged();
}
}
translate(scope, options) {
options = Object.assign({}, options);
const translationOptions = (0, helpers_1.createTranslationOptions)(this, scope, options);
let translation;
const hasFoundTranslation = translationOptions.some((translationOption) => {
if ((0, helpers_1.isSet)(translationOption.scope)) {
translation = (0, helpers_1.lookup)(this, translationOption.scope, options);
}
else if ((0, helpers_1.isSet)(translationOption.message)) {
translation = translationOption.message;
}
return translation !== undefined && translation !== null;
});
if (!hasFoundTranslation) {
return this.missingTranslation.get(scope, options);
}
if (typeof translation === "string") {
translation = this.interpolate(this, translation, options);
}
else if (typeof translation === "object" &&
translation &&
(0, helpers_1.isSet)(options.count)) {
translation = (0, helpers_1.pluralize)({
i18n: this,
count: options.count || 0,
scope: translation,
options,
baseScope: (0, helpers_1.getFullScope)(this, scope, options),
});
}
if (options && translation instanceof Array) {
translation = translation.map((entry) => typeof entry === "string"
? (0, helpers_1.interpolate)(this, entry, options)
: entry);
}
return translation;
}
pluralize(count, scope, options) {
return (0, helpers_1.pluralize)({
i18n: this,
count,
scope,
options: Object.assign({}, options),
baseScope: (0, helpers_1.getFullScope)(this, scope, options !== null && options !== void 0 ? options : {}),
});
}
localize(type, value, options) {
options = Object.assign({}, options);
if (value === undefined || value === null) {
return "";
}
switch (type) {
case "currency":
return this.numberToCurrency(value);
case "number":
return (0, helpers_1.formatNumber)(value, Object.assign({ delimiter: ",", precision: 3, separator: ".", significant: false, stripInsignificantZeros: false }, (0, helpers_1.lookup)(this, "number.format")));
case "percentage":
return this.numberToPercentage(value);
default: {
let localizedValue;
if (type.match(/^(date|time)/)) {
localizedValue = this.toTime(type, value);
}
else {
localizedValue = value.toString();
}
return (0, helpers_1.interpolate)(this, localizedValue, options);
}
}
}
toTime(scope, input) {
const date = (0, helpers_1.parseDate)(input);
const format = (0, helpers_1.lookup)(this, scope);
if (date.toString().match(/invalid/i)) {
return date.toString();
}
if (!format) {
return date.toString();
}
return this.strftime(date, format);
}
numberToCurrency(input, options = {}) {
return (0, helpers_1.formatNumber)(input, Object.assign(Object.assign(Object.assign({ delimiter: ",", format: "%u%n", precision: 2, separator: ".", significant: false, stripInsignificantZeros: false, unit: "$" }, (0, helpers_1.camelCaseKeys)(this.get("number.format"))), (0, helpers_1.camelCaseKeys)(this.get("number.currency.format"))), options));
}
numberToPercentage(input, options = {}) {
return (0, helpers_1.formatNumber)(input, Object.assign(Object.assign(Object.assign({ delimiter: "", format: "%n%", precision: 3, stripInsignificantZeros: false, separator: ".", significant: false }, (0, helpers_1.camelCaseKeys)(this.get("number.format"))), (0, helpers_1.camelCaseKeys)(this.get("number.percentage.format"))), options));
}
numberToHumanSize(input, options = {}) {
return (0, helpers_1.numberToHumanSize)(this, input, Object.assign(Object.assign(Object.assign({ delimiter: "", precision: 3, significant: true, stripInsignificantZeros: true, units: {
billion: "Billion",
million: "Million",
quadrillion: "Quadrillion",
thousand: "Thousand",
trillion: "Trillion",
unit: "",
} }, (0, helpers_1.camelCaseKeys)(this.get("number.human.format"))), (0, helpers_1.camelCaseKeys)(this.get("number.human.storage_units"))), options));
}
numberToHuman(input, options = {}) {
return (0, helpers_1.numberToHuman)(this, input, Object.assign(Object.assign(Object.assign({ delimiter: "", separator: ".", precision: 3, significant: true, stripInsignificantZeros: true, format: "%n %u", roundMode: "default", units: {
billion: "Billion",
million: "Million",
quadrillion: "Quadrillion",
thousand: "Thousand",
trillion: "Trillion",
unit: "",
} }, (0, helpers_1.camelCaseKeys)(this.get("number.human.format"))), (0, helpers_1.camelCaseKeys)(this.get("number.human.decimal_units"))), options));
}
numberToRounded(input, options) {
return (0, helpers_1.formatNumber)(input, Object.assign({ unit: "", precision: 3, significant: false, separator: ".", delimiter: "", stripInsignificantZeros: false }, options));
}
numberToDelimited(input, options = {}) {
return (0, helpers_1.numberToDelimited)(input, Object.assign({ delimiterPattern: /(\d)(?=(\d\d\d)+(?!\d))/g, delimiter: ",", separator: "." }, options));
}
withLocale(locale, callback) {
return __awaiter(this, void 0, void 0, function* () {
const originalLocale = this.locale;
try {
this.locale = locale;
yield callback();
}
finally {
this.locale = originalLocale;
}
});
}
strftime(date, format, options = {}) {
return (0, helpers_1.strftime)(date, format, Object.assign(Object.assign(Object.assign({}, (0, helpers_1.camelCaseKeys)((0, helpers_1.lookup)(this, "date"))), { meridian: {
am: (0, helpers_1.lookup)(this, "time.am") || "AM",
pm: (0, helpers_1.lookup)(this, "time.pm") || "PM",
} }), options));
}
update(path, override, options = { strict: false }) {
if (options.strict && !(0, has_1.default)(this.translations, path)) {
throw new Error(`The path "${path}" is not currently defined`);
}
const currentNode = (0, get_1.default)(this.translations, path);
const currentType = (0, helpers_1.inferType)(currentNode);
const overrideType = (0, helpers_1.inferType)(override);
if (options.strict && currentType !== overrideType) {
throw new Error(`The current type for "${path}" is "${currentType}", but you're trying to override it with "${overrideType}"`);
}
let newNode;
if (overrideType === "object") {
newNode = Object.assign(Object.assign({}, currentNode), override);
}
else {
newNode = override;
}
const components = path.split(this.defaultSeparator);
const prop = components.pop();
let buffer = this.translations;
for (const component of components) {
if (!buffer[component]) {
buffer[component] = {};
}
buffer = buffer[component];
}
buffer[prop] = newNode;
this.hasChanged();
}
toSentence(items, options = {}) {
const { wordsConnector, twoWordsConnector, lastWordConnector } = Object.assign(Object.assign({ wordsConnector: ", ", twoWordsConnector: " and ", lastWordConnector: ", and " }, (0, helpers_1.camelCaseKeys)((0, helpers_1.lookup)(this, "support.array"))), options);
const size = items.length;
switch (size) {
case 0:
return "";
case 1:
return `${items[0]}`;
case 2:
return items.join(twoWordsConnector);
default:
return [
items.slice(0, size - 1).join(wordsConnector),
lastWordConnector,
items[size - 1],
].join("");
}
}
timeAgoInWords(fromTime, toTime, options = {}) {
return (0, helpers_1.timeAgoInWords)(this, fromTime, toTime, options);
}
onChange(callback) {
this.onChangeHandlers.push(callback);
return () => {
this.onChangeHandlers.splice(this.onChangeHandlers.indexOf(callback), 1);
};
}
get version() {
return this._version;
}
formatNumber(input, options = {}) {
options = Object.assign(Object.assign({ delimiter: ",", precision: 3, separator: ".", unit: "", format: "%u%n", significant: false, stripInsignificantZeros: false }, (0, helpers_1.camelCaseKeys)(this.get("number.format"))), options);
return (0, helpers_1.formatNumber)(input, options);
}
get(scope) {
return (0, helpers_1.lookup)(this, scope);
}
runCallbacks() {
this.onChangeHandlers.forEach((callback) => callback(this));
}
hasChanged() {
this._version += 1;
this.runCallbacks();
}
}
exports.I18n = I18n;
//# sourceMappingURL=I18n.js.map

1
node_modules/i18n-js/dist/require/I18n.js.map generated vendored Normal file

File diff suppressed because one or more lines are too long

64
node_modules/i18n-js/dist/require/Locales.js generated vendored Normal file
View File

@@ -0,0 +1,64 @@
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.Locales = exports.defaultLocaleResolver = void 0;
const uniq_1 = __importDefault(require("lodash/uniq"));
const defaultLocaleResolver = (i18n, locale) => {
const locales = [];
const list = [];
locales.push(locale);
if (!locale) {
locales.push(i18n.locale);
}
if (i18n.enableFallback) {
locales.push(i18n.defaultLocale);
}
locales
.filter(Boolean)
.map((entry) => entry.toString())
.forEach(function (currentLocale) {
if (!list.includes(currentLocale)) {
list.push(currentLocale);
}
if (!i18n.enableFallback) {
return;
}
const codes = currentLocale.split("-");
if (codes.length === 3) {
list.push(`${codes[0]}-${codes[1]}`);
}
list.push(codes[0]);
});
return (0, uniq_1.default)(list);
};
exports.defaultLocaleResolver = defaultLocaleResolver;
class Locales {
constructor(i18n) {
this.i18n = i18n;
this.registry = {};
this.register("default", exports.defaultLocaleResolver);
}
register(locale, localeResolver) {
if (typeof localeResolver !== "function") {
const result = localeResolver;
localeResolver = (() => result);
}
this.registry[locale] = localeResolver;
}
get(locale) {
let locales = this.registry[locale] ||
this.registry[this.i18n.locale] ||
this.registry.default;
if (typeof locales === "function") {
locales = locales(this.i18n, locale);
}
if (!(locales instanceof Array)) {
locales = [locales];
}
return locales;
}
}
exports.Locales = Locales;
//# sourceMappingURL=Locales.js.map

1
node_modules/i18n-js/dist/require/Locales.js.map generated vendored Normal file
View File

@@ -0,0 +1 @@
{"version":3,"file":"Locales.js","sourceRoot":"","sources":["../../src/Locales.ts"],"names":[],"mappings":";;;;;;AAAA,uDAA+B;AA0BxB,MAAM,qBAAqB,GAAmB,CACnD,IAAU,EACV,MAAc,EACJ,EAAE;IACZ,MAAM,OAAO,GAAG,EAAE,CAAC;IACnB,MAAM,IAAI,GAAa,EAAE,CAAC;IAI1B,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAGrB,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAGD,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACnC,CAAC;IAQD,OAAO;SACJ,MAAM,CAAC,OAAO,CAAC;SACf,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;SAChC,OAAO,CAAC,UAAU,aAAqB;QACtC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEvC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACvC,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACtB,CAAC,CAAC,CAAC;IAEL,OAAO,IAAA,cAAI,EAAC,IAAI,CAAC,CAAC;AACpB,CAAC,CAAC;AAjDW,QAAA,qBAAqB,yBAiDhC;AAEF,MAAa,OAAO;IAIlB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QAEnB,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,6BAAqB,CAAC,CAAC;IAClD,CAAC;IAoBM,QAAQ,CACb,MAAc,EACd,cAAkD;QAElD,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE,CAAC;YACzC,MAAM,MAAM,GAAG,cAAc,CAAC;YAC9B,cAAc,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAmB,CAAC;QACpD,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC;IACzC,CAAC;IAgBM,GAAG,CAAC,MAAc;QACvB,IAAI,OAAO,GACT,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;YAC/B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QAExB,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE,CAAC;YAClC,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACvC,CAAC;QAED,IAAI,CAAC,CAAC,OAAO,YAAY,KAAK,CAAC,EAAE,CAAC;YAChC,OAAO,GAAG,CAAC,OAAO,CAAC,CAAC;QACtB,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AAtED,0BAsEC"}

View File

@@ -0,0 +1,50 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.MissingTranslation = exports.errorStrategy = exports.messageStrategy = exports.guessStrategy = void 0;
const helpers_1 = require("./helpers");
const guessStrategy = function (i18n, scope) {
if (scope instanceof Array) {
scope = scope.join(i18n.defaultSeparator);
}
const message = scope.split(i18n.defaultSeparator).slice(-1)[0];
return (i18n.missingTranslationPrefix +
message
.replace("_", " ")
.replace(/([a-z])([A-Z])/g, (_match, p1, p2) => `${p1} ${p2.toLowerCase()}`));
};
exports.guessStrategy = guessStrategy;
const messageStrategy = (i18n, scope, options) => {
const fullScope = (0, helpers_1.getFullScope)(i18n, scope, options);
const locale = "locale" in options ? options.locale : i18n.locale;
const localeType = (0, helpers_1.inferType)(locale);
const fullScopeWithLocale = [
localeType == "string" ? locale : localeType,
fullScope,
].join(i18n.defaultSeparator);
return `[missing "${fullScopeWithLocale}" translation]`;
};
exports.messageStrategy = messageStrategy;
const errorStrategy = (i18n, scope, options) => {
const fullScope = (0, helpers_1.getFullScope)(i18n, scope, options);
const fullScopeWithLocale = [i18n.locale, fullScope].join(i18n.defaultSeparator);
throw new Error(`Missing translation: ${fullScopeWithLocale}`);
};
exports.errorStrategy = errorStrategy;
class MissingTranslation {
constructor(i18n) {
this.i18n = i18n;
this.registry = {};
this.register("guess", exports.guessStrategy);
this.register("message", exports.messageStrategy);
this.register("error", exports.errorStrategy);
}
register(name, strategy) {
this.registry[name] = strategy;
}
get(scope, options) {
var _a;
return this.registry[(_a = options.missingBehavior) !== null && _a !== void 0 ? _a : this.i18n.missingBehavior](this.i18n, scope, options);
}
}
exports.MissingTranslation = MissingTranslation;
//# sourceMappingURL=MissingTranslation.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"MissingTranslation.js","sourceRoot":"","sources":["../../src/MissingTranslation.ts"],"names":[],"mappings":";;;AACA,uCAAoD;AAe7C,MAAM,aAAa,GAA+B,UACvD,IAAI,EACJ,KAAK;IAEL,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC5C,CAAC;IAGD,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAIhE,OAAO,CACL,IAAI,CAAC,wBAAwB;QAC7B,OAAO;aACJ,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC;aACjB,OAAO,CACN,iBAAiB,EACjB,CAAC,MAAc,EAAE,EAAU,EAAE,EAAU,EAAE,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CACxE,CACJ,CAAC;AACJ,CAAC,CAAC;AAtBW,QAAA,aAAa,iBAsBxB;AAiBK,MAAM,eAAe,GAA+B,CACzD,IAAI,EACJ,KAAK,EACL,OAAO,EACP,EAAE;IACF,MAAM,SAAS,GAAG,IAAA,sBAAY,EAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;IAClE,MAAM,UAAU,GAAG,IAAA,mBAAS,EAAC,MAAM,CAAC,CAAC;IAErC,MAAM,mBAAmB,GAAG;QAC1B,UAAU,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU;QAC5C,SAAS;KACV,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAE9B,OAAO,aAAa,mBAAmB,gBAAgB,CAAC;AAC1D,CAAC,CAAC;AAfW,QAAA,eAAe,mBAe1B;AAiBK,MAAM,aAAa,GAA+B,CACvD,IAAI,EACJ,KAAK,EACL,OAAO,EACP,EAAE;IACF,MAAM,SAAS,GAAG,IAAA,sBAAY,EAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACrD,MAAM,mBAAmB,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,IAAI,CACvD,IAAI,CAAC,gBAAgB,CACtB,CAAC;IAEF,MAAM,IAAI,KAAK,CAAC,wBAAwB,mBAAmB,EAAE,CAAC,CAAC;AACjE,CAAC,CAAC;AAXW,QAAA,aAAa,iBAWxB;AAEF,MAAa,kBAAkB;IAI7B,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QAEnB,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,qBAAa,CAAC,CAAC;QACtC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,uBAAe,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,qBAAa,CAAC,CAAC;IACxC,CAAC;IA0BM,QAAQ,CAAC,IAAY,EAAE,QAAoC;QAChE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC;IACjC,CAAC;IAWM,GAAG,CAAC,KAAY,EAAE,OAAa;;QACpC,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAA,OAAO,CAAC,eAAe,mCAAI,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CACxE,IAAI,CAAC,IAAI,EACT,KAAK,EACL,OAAO,CACR,CAAC;IACJ,CAAC;CACF;AAzDD,gDAyDC"}

34
node_modules/i18n-js/dist/require/Pluralization.js generated vendored Normal file
View File

@@ -0,0 +1,34 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Pluralization = exports.defaultPluralizer = exports.useMakePlural = void 0;
const make_plural_1 = require("make-plural");
function useMakePlural({ pluralizer, includeZero = true, ordinal = false, }) {
return function (_i18n, count) {
return [
includeZero && count === 0 ? "zero" : "",
pluralizer(count, ordinal),
].filter(Boolean);
};
}
exports.useMakePlural = useMakePlural;
exports.defaultPluralizer = useMakePlural({
pluralizer: make_plural_1.en,
includeZero: true,
});
class Pluralization {
constructor(i18n) {
this.i18n = i18n;
this.registry = {};
this.register("default", exports.defaultPluralizer);
}
register(locale, pluralizer) {
this.registry[locale] = pluralizer;
}
get(locale) {
return (this.registry[locale] ||
this.registry[this.i18n.locale] ||
this.registry["default"]);
}
}
exports.Pluralization = Pluralization;
//# sourceMappingURL=Pluralization.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"Pluralization.js","sourceRoot":"","sources":["../../src/Pluralization.ts"],"names":[],"mappings":";;;AAAA,6CAAiC;AAgBjC,SAAgB,aAAa,CAAC,EAC5B,UAAU,EACV,WAAW,GAAG,IAAI,EAClB,OAAO,GAAG,KAAK,GAKhB;IACC,OAAO,UAAU,KAAW,EAAE,KAAa;QACzC,OAAO;YACL,WAAW,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;YACxC,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC;SAC3B,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAfD,sCAeC;AAqBY,QAAA,iBAAiB,GAAe,aAAa,CAAC;IACzD,UAAU,EAAE,gBAAE;IACd,WAAW,EAAE,IAAI;CAClB,CAAC,CAAC;AAwCH,MAAa,aAAa;IAIxB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QAEnB,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,yBAAiB,CAAC,CAAC;IAC9C,CAAC;IAqCM,QAAQ,CAAC,MAAc,EAAE,UAAsB;QACpD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC;IACrC,CAAC;IAYM,GAAG,CAAC,MAAc;QACvB,OAAO,CACL,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YACrB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;YAC/B,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CACzB,CAAC;IACJ,CAAC;CACF;AAnED,sCAmEC"}

View File

@@ -0,0 +1,18 @@
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.camelCaseKeys = void 0;
const camelCase_1 = __importDefault(require("lodash/camelCase"));
function camelCaseKeys(target) {
if (!target) {
return {};
}
return Object.keys(target).reduce((buffer, key) => {
buffer[(0, camelCase_1.default)(key)] = target[key];
return buffer;
}, {});
}
exports.camelCaseKeys = camelCaseKeys;
//# sourceMappingURL=camelCaseKeys.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"camelCaseKeys.js","sourceRoot":"","sources":["../../../src/helpers/camelCaseKeys.ts"],"names":[],"mappings":";;;;;;AAAA,iEAAyC;AAczC,SAAgB,aAAa,CAAW,MAAe;IACrD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,EAAO,CAAC;IACjB,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,MAAc,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;QACvD,MAAe,CAAC,IAAA,mBAAS,EAAC,GAAG,CAAC,CAAC,GAAI,MAAe,CAAC,GAAG,CAAC,CAAC;QACzD,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,EAAO,CAAC,CAAC;AACd,CAAC;AATD,sCASC"}

View File

@@ -0,0 +1,20 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.createTranslationOptions = void 0;
const isSet_1 = require("./isSet");
function createTranslationOptions(i18n, scope, options) {
let translationOptions = [{ scope }];
if ((0, isSet_1.isSet)(options.defaults)) {
translationOptions = translationOptions.concat(options.defaults);
}
if ((0, isSet_1.isSet)(options.defaultValue)) {
const message = typeof options.defaultValue === "function"
? options.defaultValue(i18n, scope, options)
: options.defaultValue;
translationOptions.push({ message });
delete options.defaultValue;
}
return translationOptions;
}
exports.createTranslationOptions = createTranslationOptions;
//# sourceMappingURL=createTranslationOptions.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"createTranslationOptions.js","sourceRoot":"","sources":["../../../src/helpers/createTranslationOptions.ts"],"names":[],"mappings":";;;AAEA,mCAAgC;AAiBhC,SAAgB,wBAAwB,CACtC,IAAU,EACV,KAAY,EACZ,OAAa;IAEb,IAAI,kBAAkB,GAAW,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAI7C,IAAI,IAAA,aAAK,EAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,kBAAkB,GAAG,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnE,CAAC;IAID,IAAI,IAAA,aAAK,EAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,MAAM,OAAO,GACX,OAAO,OAAO,CAAC,YAAY,KAAK,UAAU;YACxC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC;YAC5C,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;QAE3B,kBAAkB,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QACrC,OAAO,OAAO,CAAC,YAAY,CAAC;IAC9B,CAAC;IAED,OAAO,kBAAmD,CAAC;AAC7D,CAAC;AA1BD,4DA0BC"}

View File

@@ -0,0 +1,24 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.expandRoundMode = void 0;
const bignumber_js_1 = require("bignumber.js");
var RoundingModeMap;
(function (RoundingModeMap) {
RoundingModeMap[RoundingModeMap["up"] = bignumber_js_1.BigNumber.ROUND_UP] = "up";
RoundingModeMap[RoundingModeMap["down"] = bignumber_js_1.BigNumber.ROUND_DOWN] = "down";
RoundingModeMap[RoundingModeMap["truncate"] = bignumber_js_1.BigNumber.ROUND_DOWN] = "truncate";
RoundingModeMap[RoundingModeMap["halfUp"] = bignumber_js_1.BigNumber.ROUND_HALF_UP] = "halfUp";
RoundingModeMap[RoundingModeMap["default"] = bignumber_js_1.BigNumber.ROUND_HALF_UP] = "default";
RoundingModeMap[RoundingModeMap["halfDown"] = bignumber_js_1.BigNumber.ROUND_HALF_DOWN] = "halfDown";
RoundingModeMap[RoundingModeMap["halfEven"] = bignumber_js_1.BigNumber.ROUND_HALF_EVEN] = "halfEven";
RoundingModeMap[RoundingModeMap["banker"] = bignumber_js_1.BigNumber.ROUND_HALF_EVEN] = "banker";
RoundingModeMap[RoundingModeMap["ceiling"] = bignumber_js_1.BigNumber.ROUND_CEIL] = "ceiling";
RoundingModeMap[RoundingModeMap["ceil"] = bignumber_js_1.BigNumber.ROUND_CEIL] = "ceil";
RoundingModeMap[RoundingModeMap["floor"] = bignumber_js_1.BigNumber.ROUND_FLOOR] = "floor";
})(RoundingModeMap || (RoundingModeMap = {}));
function expandRoundMode(roundMode) {
var _a;
return ((_a = RoundingModeMap[roundMode]) !== null && _a !== void 0 ? _a : RoundingModeMap.default);
}
exports.expandRoundMode = expandRoundMode;
//# sourceMappingURL=expandRoundMode.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"expandRoundMode.js","sourceRoot":"","sources":["../../../src/helpers/expandRoundMode.ts"],"names":[],"mappings":";;;AAAA,+CAAyC;AAGzC,IAAK,eAYJ;AAZD,WAAK,eAAe;IAClB,wCAAO,wBAAS,CAAC,QAAQ,QAAA,CAAA;IACzB,0CAAS,wBAAS,CAAC,UAAU,UAAA,CAAA;IAC7B,8CAAa,wBAAS,CAAC,UAAU,cAAA,CAAA;IACjC,4CAAW,wBAAS,CAAC,aAAa,YAAA,CAAA;IAClC,6CAAY,wBAAS,CAAC,aAAa,aAAA,CAAA;IACnC,8CAAa,wBAAS,CAAC,eAAe,cAAA,CAAA;IACtC,8CAAa,wBAAS,CAAC,eAAe,cAAA,CAAA;IACtC,4CAAW,wBAAS,CAAC,eAAe,YAAA,CAAA;IACpC,6CAAY,wBAAS,CAAC,UAAU,aAAA,CAAA;IAChC,0CAAS,wBAAS,CAAC,UAAU,UAAA,CAAA;IAC7B,2CAAU,wBAAS,CAAC,WAAW,WAAA,CAAA;AACjC,CAAC,EAZI,eAAe,KAAf,eAAe,QAYnB;AAOD,SAAgB,eAAe,CAC7B,SAAuB;;IAEvB,OAAO,CAAC,MAAA,eAAe,CAAC,SAAS,CAAC,mCAChC,eAAe,CAAC,OAAO,CAA2B,CAAC;AACvD,CAAC;AALD,0CAKC"}

View File

@@ -0,0 +1,68 @@
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.formatNumber = void 0;
const bignumber_js_1 = require("bignumber.js");
const repeat_1 = __importDefault(require("lodash/repeat"));
const roundNumber_1 = require("./roundNumber");
function replaceInFormat(format, { formattedNumber, unit }) {
return format.replace("%n", formattedNumber).replace("%u", unit);
}
function computeSignificand({ significand, whole, precision, }) {
if (whole === "0" || precision === null) {
return significand;
}
const limit = Math.max(0, precision - whole.length);
return (significand !== null && significand !== void 0 ? significand : "").substr(0, limit);
}
function formatNumber(input, options) {
var _a, _b, _c;
const originalNumber = new bignumber_js_1.BigNumber(input);
if (options.raise && !originalNumber.isFinite()) {
throw new Error(`"${input}" is not a valid numeric value`);
}
const roundedNumber = (0, roundNumber_1.roundNumber)(originalNumber, options);
const numeric = new bignumber_js_1.BigNumber(roundedNumber);
const isNegative = numeric.lt(0);
const isZero = numeric.isZero();
let [whole, significand] = roundedNumber.split(".");
const buffer = [];
let formattedNumber;
const positiveFormat = (_a = options.format) !== null && _a !== void 0 ? _a : "%n";
const negativeFormat = (_b = options.negativeFormat) !== null && _b !== void 0 ? _b : `-${positiveFormat}`;
const format = isNegative && !isZero ? negativeFormat : positiveFormat;
whole = whole.replace("-", "");
while (whole.length > 0) {
buffer.unshift(whole.substr(Math.max(0, whole.length - 3), 3));
whole = whole.substr(0, whole.length - 3);
}
whole = buffer.join("");
formattedNumber = buffer.join(options.delimiter);
if (options.significant) {
significand = computeSignificand({
whole,
significand,
precision: options.precision,
});
}
else {
significand = significand !== null && significand !== void 0 ? significand : (0, repeat_1.default)("0", (_c = options.precision) !== null && _c !== void 0 ? _c : 0);
}
if (options.stripInsignificantZeros && significand) {
significand = significand.replace(/0+$/, "");
}
if (originalNumber.isNaN()) {
formattedNumber = input.toString();
}
if (significand && originalNumber.isFinite()) {
formattedNumber += (options.separator || ".") + significand;
}
return replaceInFormat(format, {
formattedNumber,
unit: options.unit,
});
}
exports.formatNumber = formatNumber;
//# sourceMappingURL=formatNumber.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"formatNumber.js","sourceRoot":"","sources":["../../../src/helpers/formatNumber.ts"],"names":[],"mappings":"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"}

View File

@@ -0,0 +1,18 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getFullScope = void 0;
function getFullScope(i18n, scope, options) {
let result = "";
if (scope instanceof String || typeof scope === "string") {
result = scope;
}
if (scope instanceof Array) {
result = scope.join(i18n.defaultSeparator);
}
if (options.scope) {
result = [options.scope, result].join(i18n.defaultSeparator);
}
return result;
}
exports.getFullScope = getFullScope;
//# sourceMappingURL=getFullScope.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"getFullScope.js","sourceRoot":"","sources":["../../../src/helpers/getFullScope.ts"],"names":[],"mappings":";;;AAaA,SAAgB,YAAY,CAAC,IAAU,EAAE,KAAY,EAAE,OAAa;IAClE,IAAI,MAAM,GAAG,EAAE,CAAC;IAGhB,IAAI,KAAK,YAAY,MAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACzD,MAAM,GAAG,KAAe,CAAC;IAC3B,CAAC;IAGD,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,MAAM,GAAI,KAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC3D,CAAC;IAMD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAtBD,oCAsBC"}

38
node_modules/i18n-js/dist/require/helpers/index.js generated vendored Normal file
View File

@@ -0,0 +1,38 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.timeAgoInWords = exports.strftime = exports.roundNumber = exports.pluralize = exports.parseDate = exports.numberToHumanSize = exports.numberToHuman = exports.numberToDelimited = exports.lookup = exports.isSet = exports.interpolate = exports.inferType = exports.getFullScope = exports.formatNumber = exports.expandRoundMode = exports.createTranslationOptions = exports.camelCaseKeys = void 0;
var camelCaseKeys_1 = require("./camelCaseKeys");
Object.defineProperty(exports, "camelCaseKeys", { enumerable: true, get: function () { return camelCaseKeys_1.camelCaseKeys; } });
var createTranslationOptions_1 = require("./createTranslationOptions");
Object.defineProperty(exports, "createTranslationOptions", { enumerable: true, get: function () { return createTranslationOptions_1.createTranslationOptions; } });
var expandRoundMode_1 = require("./expandRoundMode");
Object.defineProperty(exports, "expandRoundMode", { enumerable: true, get: function () { return expandRoundMode_1.expandRoundMode; } });
var formatNumber_1 = require("./formatNumber");
Object.defineProperty(exports, "formatNumber", { enumerable: true, get: function () { return formatNumber_1.formatNumber; } });
var getFullScope_1 = require("./getFullScope");
Object.defineProperty(exports, "getFullScope", { enumerable: true, get: function () { return getFullScope_1.getFullScope; } });
var inferType_1 = require("./inferType");
Object.defineProperty(exports, "inferType", { enumerable: true, get: function () { return inferType_1.inferType; } });
var interpolate_1 = require("./interpolate");
Object.defineProperty(exports, "interpolate", { enumerable: true, get: function () { return interpolate_1.interpolate; } });
var isSet_1 = require("./isSet");
Object.defineProperty(exports, "isSet", { enumerable: true, get: function () { return isSet_1.isSet; } });
var lookup_1 = require("./lookup");
Object.defineProperty(exports, "lookup", { enumerable: true, get: function () { return lookup_1.lookup; } });
var numberToDelimited_1 = require("./numberToDelimited");
Object.defineProperty(exports, "numberToDelimited", { enumerable: true, get: function () { return numberToDelimited_1.numberToDelimited; } });
var numberToHuman_1 = require("./numberToHuman");
Object.defineProperty(exports, "numberToHuman", { enumerable: true, get: function () { return numberToHuman_1.numberToHuman; } });
var numberToHumanSize_1 = require("./numberToHumanSize");
Object.defineProperty(exports, "numberToHumanSize", { enumerable: true, get: function () { return numberToHumanSize_1.numberToHumanSize; } });
var parseDate_1 = require("./parseDate");
Object.defineProperty(exports, "parseDate", { enumerable: true, get: function () { return parseDate_1.parseDate; } });
var pluralize_1 = require("./pluralize");
Object.defineProperty(exports, "pluralize", { enumerable: true, get: function () { return pluralize_1.pluralize; } });
var roundNumber_1 = require("./roundNumber");
Object.defineProperty(exports, "roundNumber", { enumerable: true, get: function () { return roundNumber_1.roundNumber; } });
var strftime_1 = require("./strftime");
Object.defineProperty(exports, "strftime", { enumerable: true, get: function () { return strftime_1.strftime; } });
var timeAgoInWords_1 = require("./timeAgoInWords");
Object.defineProperty(exports, "timeAgoInWords", { enumerable: true, get: function () { return timeAgoInWords_1.timeAgoInWords; } });
//# sourceMappingURL=index.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/helpers/index.ts"],"names":[],"mappings":";;;AAAA,iDAAgD;AAAvC,8GAAA,aAAa,OAAA;AACtB,uEAAsE;AAA7D,oIAAA,wBAAwB,OAAA;AACjC,qDAAoD;AAA3C,kHAAA,eAAe,OAAA;AACxB,+CAA8C;AAArC,4GAAA,YAAY,OAAA;AACrB,+CAA8C;AAArC,4GAAA,YAAY,OAAA;AACrB,yCAAwC;AAA/B,sGAAA,SAAS,OAAA;AAClB,6CAA4C;AAAnC,0GAAA,WAAW,OAAA;AACpB,iCAAgC;AAAvB,8FAAA,KAAK,OAAA;AACd,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AACf,yDAAwD;AAA/C,sHAAA,iBAAiB,OAAA;AAC1B,iDAAgD;AAAvC,8GAAA,aAAa,OAAA;AACtB,yDAAwD;AAA/C,sHAAA,iBAAiB,OAAA;AAC1B,yCAAwC;AAA/B,sGAAA,SAAS,OAAA;AAClB,yCAAwC;AAA/B,sGAAA,SAAS,OAAA;AAClB,6CAA4C;AAAnC,0GAAA,WAAW,OAAA;AACpB,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,mDAAkD;AAAzC,gHAAA,cAAc,OAAA"}

16
node_modules/i18n-js/dist/require/helpers/inferType.js generated vendored Normal file
View File

@@ -0,0 +1,16 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.inferType = void 0;
function inferType(instance) {
var _a, _b;
if (instance === null) {
return "null";
}
const type = typeof instance;
if (type !== "object") {
return type;
}
return ((_b = (_a = instance === null || instance === void 0 ? void 0 : instance.constructor) === null || _a === void 0 ? void 0 : _a.name) === null || _b === void 0 ? void 0 : _b.toLowerCase()) || "object";
}
exports.inferType = inferType;
//# sourceMappingURL=inferType.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"inferType.js","sourceRoot":"","sources":["../../../src/helpers/inferType.ts"],"names":[],"mappings":";;;AASA,SAAgB,SAAS,CAAC,QAAiB;;IACzC,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,QAAQ,CAAC;IAE7B,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAA,MAAA,MAAC,QAAgB,aAAhB,QAAQ,uBAAR,QAAQ,CAAU,WAAW,0CAAE,IAAI,0CAAE,WAAW,EAAE,KAAI,QAAQ,CAAC;AACzE,CAAC;AAZD,8BAYC"}

View File

@@ -0,0 +1,33 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.interpolate = void 0;
const isSet_1 = require("./isSet");
function interpolate(i18n, message, options) {
options = Object.keys(options).reduce((buffer, key) => {
buffer[i18n.transformKey(key)] = options[key];
return buffer;
}, {});
const matches = message.match(i18n.placeholder);
if (!matches) {
return message;
}
while (matches.length) {
let value;
const placeholder = matches.shift();
const name = placeholder.replace(i18n.placeholder, "$1");
if ((0, isSet_1.isSet)(options[name])) {
value = options[name].toString().replace(/\$/gm, "_#$#_");
}
else if (name in options) {
value = i18n.nullPlaceholder(i18n, placeholder, message, options);
}
else {
value = i18n.missingPlaceholder(i18n, placeholder, message, options);
}
const regex = new RegExp(placeholder.replace(/\{/gm, "\\{").replace(/\}/gm, "\\}"), "g");
message = message.replace(regex, value);
}
return message.replace(/_#\$#_/g, "$");
}
exports.interpolate = interpolate;
//# sourceMappingURL=interpolate.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"interpolate.js","sourceRoot":"","sources":["../../../src/helpers/interpolate.ts"],"names":[],"mappings":";;;AAEA,mCAAgC;AAgBhC,SAAgB,WAAW,CACzB,IAAU,EACV,OAAe,EACf,OAAyB;IAEzB,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;QACpD,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC9C,OAAO,MAAM,CAAC;IAChB,CAAC,EAAE,EAAsB,CAAC,CAAC;IAC3B,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAEhD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC;QACtB,IAAI,KAAa,CAAC;QAClB,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,EAAY,CAAC;QAC9C,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAEzD,IAAI,IAAA,aAAK,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YACzB,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAC5D,CAAC;aAAM,IAAI,IAAI,IAAI,OAAO,EAAE,CAAC;YAC3B,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACpE,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,MAAM,CACtB,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,EACzD,GAAG,CACJ,CAAC;QAEF,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;AACzC,CAAC;AArCD,kCAqCC"}

8
node_modules/i18n-js/dist/require/helpers/isSet.js generated vendored Normal file
View File

@@ -0,0 +1,8 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.isSet = void 0;
function isSet(value) {
return value !== undefined && value !== null;
}
exports.isSet = isSet;
//# sourceMappingURL=isSet.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"isSet.js","sourceRoot":"","sources":["../../../src/helpers/isSet.ts"],"names":[],"mappings":";;;AASA,SAAgB,KAAK,CAAC,KAAc;IAClC,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAC;AAC/C,CAAC;AAFD,sBAEC"}

22
node_modules/i18n-js/dist/require/helpers/lookup.js generated vendored Normal file
View File

@@ -0,0 +1,22 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.lookup = void 0;
const isSet_1 = require("./isSet");
const getFullScope_1 = require("./getFullScope");
const inferType_1 = require("./inferType");
function lookup(i18n, scope, options = {}) {
options = Object.assign({}, options);
const locale = "locale" in options ? options.locale : i18n.locale;
const localeType = (0, inferType_1.inferType)(locale);
const locales = i18n.locales
.get(localeType === "string" ? locale : typeof locale)
.slice();
const keys = (0, getFullScope_1.getFullScope)(i18n, scope, options)
.split(i18n.defaultSeparator)
.map((component) => i18n.transformKey(component));
const entries = locales.map((locale) => keys.reduce((path, key) => path && path[key], i18n.translations[locale]));
entries.push(options.defaultValue);
return entries.find((entry) => (0, isSet_1.isSet)(entry));
}
exports.lookup = lookup;
//# sourceMappingURL=lookup.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"lookup.js","sourceRoot":"","sources":["../../../src/helpers/lookup.ts"],"names":[],"mappings":";;;AAEA,mCAAgC;AAChC,iDAA8C;AAC9C,2CAAwC;AAiBxC,SAAgB,MAAM,CAAC,IAAU,EAAE,KAAY,EAAE,UAAgB,EAAE;IACjE,OAAO,qBAAQ,OAAO,CAAE,CAAC;IAEzB,MAAM,MAAM,GAAG,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;IAClE,MAAM,UAAU,GAAG,IAAA,qBAAS,EAAC,MAAM,CAAC,CAAC;IAErC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO;SACzB,GAAG,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC;SACrD,KAAK,EAAE,CAAC;IAEX,MAAM,IAAI,GAAG,IAAA,2BAAY,EAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC;SAC5C,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC;SAC5B,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;IAEpD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACrC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CACzE,CAAC;IAEF,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAEnC,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,aAAK,EAAC,KAAK,CAAC,CAAC,CAAC;AAC/C,CAAC;AArBD,wBAqBC"}

View File

@@ -0,0 +1,18 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.numberToDelimited = void 0;
const bignumber_js_1 = require("bignumber.js");
function numberToDelimited(input, options) {
const numeric = new bignumber_js_1.BigNumber(input);
if (!numeric.isFinite()) {
return input.toString();
}
if (!options.delimiterPattern.global) {
throw new Error(`options.delimiterPattern must be a global regular expression; received ${options.delimiterPattern}`);
}
let [left, right] = numeric.toString().split(".");
left = left.replace(options.delimiterPattern, (digitToDelimiter) => `${digitToDelimiter}${options.delimiter}`);
return [left, right].filter(Boolean).join(options.separator);
}
exports.numberToDelimited = numberToDelimited;
//# sourceMappingURL=numberToDelimited.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"numberToDelimited.js","sourceRoot":"","sources":["../../../src/helpers/numberToDelimited.ts"],"names":[],"mappings":";;;AAAA,+CAAyC;AAezC,SAAgB,iBAAiB,CAC/B,KAAc,EACd,OAAiC;IAEjC,MAAM,OAAO,GAAG,IAAI,wBAAS,CAAC,KAAK,CAAC,CAAC;IAErC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;QACxB,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CACb,0EAA0E,OAAO,CAAC,gBAAgB,EAAE,CACrG,CAAC;IACJ,CAAC;IAGD,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAElD,IAAI,GAAG,IAAI,CAAC,OAAO,CACjB,OAAO,CAAC,gBAAgB,EACxB,CAAC,gBAAgB,EAAE,EAAE,CAAC,GAAG,gBAAgB,GAAG,OAAO,CAAC,SAAS,EAAE,CAChE,CAAC;IAEF,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAC/D,CAAC;AAzBD,8CAyBC"}

View File

@@ -0,0 +1,78 @@
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.numberToHuman = void 0;
const bignumber_js_1 = require("bignumber.js");
const sortBy_1 = __importDefault(require("lodash/sortBy"));
const zipObject_1 = __importDefault(require("lodash/zipObject"));
const getFullScope_1 = require("./getFullScope");
const lookup_1 = require("./lookup");
const roundNumber_1 = require("./roundNumber");
const inferType_1 = require("./inferType");
const DECIMAL_UNITS = {
"0": "unit",
"1": "ten",
"2": "hundred",
"3": "thousand",
"6": "million",
"9": "billion",
"12": "trillion",
"15": "quadrillion",
"-1": "deci",
"-2": "centi",
"-3": "mili",
"-6": "micro",
"-9": "nano",
"-12": "pico",
"-15": "femto",
};
const INVERTED_DECIMAL_UNITS = (0, zipObject_1.default)(Object.values(DECIMAL_UNITS), Object.keys(DECIMAL_UNITS).map((key) => parseInt(key, 10)));
function numberToHuman(i18n, input, options) {
const roundOptions = {
roundMode: options.roundMode,
precision: options.precision,
significant: options.significant,
};
let units;
if ((0, inferType_1.inferType)(options.units) === "string") {
const scope = options.units;
units = (0, lookup_1.lookup)(i18n, scope);
if (!units) {
throw new Error(`The scope "${i18n.locale}${i18n.defaultSeparator}${(0, getFullScope_1.getFullScope)(i18n, scope, {})}" couldn't be found`);
}
}
else {
units = options.units;
}
let formattedNumber = (0, roundNumber_1.roundNumber)(new bignumber_js_1.BigNumber(input), roundOptions);
const unitExponents = (units) => (0, sortBy_1.default)(Object.keys(units).map((name) => INVERTED_DECIMAL_UNITS[name]), (numeric) => numeric * -1);
const calculateExponent = (num, units) => {
const exponent = num.isZero()
? 0
: Math.floor(Math.log10(num.abs().toNumber()));
return unitExponents(units).find((exp) => exponent >= exp) || 0;
};
const determineUnit = (units, exponent) => {
const expName = DECIMAL_UNITS[exponent.toString()];
return units[expName] || "";
};
const exponent = calculateExponent(new bignumber_js_1.BigNumber(formattedNumber), units);
const unit = determineUnit(units, exponent);
formattedNumber = (0, roundNumber_1.roundNumber)(new bignumber_js_1.BigNumber(formattedNumber).div(Math.pow(10, exponent)), roundOptions);
if (options.stripInsignificantZeros) {
let [whole, significand] = formattedNumber.split(".");
significand = (significand || "").replace(/0+$/, "");
formattedNumber = whole;
if (significand) {
formattedNumber += `${options.separator}${significand}`;
}
}
return options.format
.replace("%n", formattedNumber || "0")
.replace("%u", unit)
.trim();
}
exports.numberToHuman = numberToHuman;
//# sourceMappingURL=numberToHuman.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"numberToHuman.js","sourceRoot":"","sources":["../../../src/helpers/numberToHuman.ts"],"names":[],"mappings":"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"}

View File

@@ -0,0 +1,52 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.numberToHumanSize = void 0;
const bignumber_js_1 = require("bignumber.js");
const roundNumber_1 = require("./roundNumber");
const expandRoundMode_1 = require("./expandRoundMode");
const STORAGE_UNITS = ["byte", "kb", "mb", "gb", "tb", "pb", "eb"];
function numberToHumanSize(i18n, input, options) {
const roundMode = (0, expandRoundMode_1.expandRoundMode)(options.roundMode);
const base = 1024;
const num = new bignumber_js_1.BigNumber(input).abs();
const smallerThanBase = num.lt(base);
let numberToBeFormatted;
const computeExponent = (numeric, units) => {
const max = units.length - 1;
const exp = new bignumber_js_1.BigNumber(Math.log(numeric.toNumber()))
.div(Math.log(base))
.integerValue(bignumber_js_1.BigNumber.ROUND_DOWN)
.toNumber();
return Math.min(max, exp);
};
const storageUnitKey = (units) => {
const keyEnd = smallerThanBase ? "byte" : units[exponent];
return `number.human.storage_units.units.${keyEnd}`;
};
const exponent = computeExponent(num, STORAGE_UNITS);
if (smallerThanBase) {
numberToBeFormatted = num.integerValue();
}
else {
numberToBeFormatted = new bignumber_js_1.BigNumber((0, roundNumber_1.roundNumber)(num.div(Math.pow(base, exponent)), {
significant: options.significant,
precision: options.precision,
roundMode: options.roundMode,
}));
}
const format = i18n.translate("number.human.storage_units.format", {
defaultValue: "%n %u",
});
const unit = i18n.translate(storageUnitKey(STORAGE_UNITS), {
count: num.integerValue().toNumber(),
});
let formattedNumber = numberToBeFormatted.toFixed(options.precision, roundMode);
if (options.stripInsignificantZeros) {
formattedNumber = formattedNumber
.replace(/(\..*?)0+$/, "$1")
.replace(/\.$/, "");
}
return format.replace("%n", formattedNumber).replace("%u", unit);
}
exports.numberToHumanSize = numberToHumanSize;
//# sourceMappingURL=numberToHumanSize.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"numberToHumanSize.js","sourceRoot":"","sources":["../../../src/helpers/numberToHumanSize.ts"],"names":[],"mappings":";;;AAAA,+CAAyC;AAIzC,+CAA4C;AAC5C,uDAAoD;AAKpD,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAanE,SAAgB,iBAAiB,CAC/B,IAAU,EACV,KAAc,EACd,OAAiC;IAEjC,MAAM,SAAS,GAAG,IAAA,iCAAe,EAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,IAAI,CAAC;IAClB,MAAM,GAAG,GAAG,IAAI,wBAAS,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC;IACvC,MAAM,eAAe,GAAG,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,mBAAmB,CAAC;IAExB,MAAM,eAAe,GAAG,CAAC,OAAkB,EAAE,KAAe,EAAE,EAAE;QAC9D,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAC7B,MAAM,GAAG,GAAG,IAAI,wBAAS,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;aACpD,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aACnB,YAAY,CAAC,wBAAS,CAAC,UAAU,CAAC;aAClC,QAAQ,EAAE,CAAC;QAEd,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAC5B,CAAC,CAAC;IAEF,MAAM,cAAc,GAAG,CAAC,KAAe,EAAE,EAAE;QACzC,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC1D,OAAO,oCAAoC,MAAM,EAAE,CAAC;IACtD,CAAC,CAAC;IAEF,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IAErD,IAAI,eAAe,EAAE,CAAC;QACpB,mBAAmB,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC;IAC3C,CAAC;SAAM,CAAC;QACN,mBAAmB,GAAG,IAAI,wBAAS,CACjC,IAAA,yBAAW,EAAC,GAAG,CAAC,GAAG,CAAC,SAAA,IAAI,EAAI,QAAQ,CAAA,CAAC,EAAE;YACrC,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAC,CACH,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,mCAAmC,EAAE;QACjE,YAAY,EAAE,OAAO;KACtB,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE;QACzD,KAAK,EAAE,GAAG,CAAC,YAAY,EAAE,CAAC,QAAQ,EAAE;KACrC,CAAC,CAAC;IAEH,IAAI,eAAe,GAAG,mBAAmB,CAAC,OAAO,CAC/C,OAAO,CAAC,SAAmB,EAC3B,SAAS,CACV,CAAC;IAEF,IAAI,OAAO,CAAC,uBAAuB,EAAE,CAAC;QACpC,eAAe,GAAG,eAAe;aAC9B,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC;aAC3B,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACxB,CAAC;IAED,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACnE,CAAC;AA5DD,8CA4DC"}

35
node_modules/i18n-js/dist/require/helpers/parseDate.js generated vendored Normal file
View File

@@ -0,0 +1,35 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.parseDate = void 0;
function parseDate(input) {
if (input instanceof Date) {
return input;
}
if (typeof input === "number") {
const date = new Date();
date.setTime(input);
return date;
}
const matches = new String(input).match(/(\d{4})-(\d{2})-(\d{2})(?:[ T](\d{2}):(\d{2}):(\d{2})(?:[.,](\d{1,3}))?)?(Z|\+00:?00)?/);
if (matches) {
const parts = matches.slice(1, 8).map((match) => parseInt(match, 10) || 0);
parts[1] -= 1;
const [year, month, day, hour, minute, second, milliseconds] = parts;
const timezone = matches[8];
if (timezone) {
return new Date(Date.UTC(year, month, day, hour, minute, second, milliseconds));
}
else {
return new Date(year, month, day, hour, minute, second, milliseconds);
}
}
if (input.match(/([A-Z][a-z]{2}) ([A-Z][a-z]{2}) (\d+) (\d+:\d+:\d+) ([+-]\d+) (\d+)/)) {
const date = new Date();
date.setTime(Date.parse([RegExp.$1, RegExp.$2, RegExp.$3, RegExp.$6, RegExp.$4, RegExp.$5].join(" ")));
}
const date = new Date();
date.setTime(Date.parse(input));
return date;
}
exports.parseDate = parseDate;
//# sourceMappingURL=parseDate.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"parseDate.js","sourceRoot":"","sources":["../../../src/helpers/parseDate.ts"],"names":[],"mappings":";;;AAkCA,SAAgB,SAAS,CAAC,KAAe;IAEvC,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAE9B,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,IAAI,CAAC,OAAO,CAAC,KAA0B,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CACrC,wFAAwF,CACzF,CAAC;IAEF,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAG3E,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAEd,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC;QACrE,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAE5B,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,IAAI,IAAI,CACb,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,CAC/D,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IAED,IACE,KAAK,CAAC,KAAK,CACT,qEAAqE,CACtE,EACD,CAAC;QAGD,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,IAAI,CAAC,OAAO,CACV,IAAI,CAAC,KAAK,CACR,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CACrE,GAAG,CACJ,CACF,CACF,CAAC;IACJ,CAAC;IAGD,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IACxB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAEhC,OAAO,IAAI,CAAC;AACd,CAAC;AAzDD,8BAyDC"}

37
node_modules/i18n-js/dist/require/helpers/pluralize.js generated vendored Normal file
View File

@@ -0,0 +1,37 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.pluralize = void 0;
const isSet_1 = require("./isSet");
const lookup_1 = require("./lookup");
function pluralize({ i18n, count, scope, options, baseScope, }) {
options = Object.assign({}, options);
let translations;
let message;
if (typeof scope === "object" && scope) {
translations = scope;
}
else {
translations = (0, lookup_1.lookup)(i18n, scope, options);
}
if (!translations) {
return i18n.missingTranslation.get(scope, options);
}
const pluralizer = i18n.pluralization.get(options.locale);
const keys = pluralizer(i18n, count);
const missingKeys = [];
while (keys.length) {
const key = keys.shift();
if ((0, isSet_1.isSet)(translations[key])) {
message = translations[key];
break;
}
missingKeys.push(key);
}
if (!(0, isSet_1.isSet)(message)) {
return i18n.missingTranslation.get(baseScope.split(i18n.defaultSeparator).concat([missingKeys[0]]), options);
}
options.count = count;
return i18n.interpolate(i18n, message, options);
}
exports.pluralize = pluralize;
//# sourceMappingURL=pluralize.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"pluralize.js","sourceRoot":"","sources":["../../../src/helpers/pluralize.ts"],"names":[],"mappings":";;;AAGA,mCAAgC;AAChC,qCAAkC;AAmBlC,SAAgB,SAAS,CAAC,EACxB,IAAI,EACJ,KAAK,EACL,KAAK,EACL,OAAO,EACP,SAAS,GAOV;IACC,OAAO,qBAAQ,OAAO,CAAE,CAAC;IACzB,IAAI,YAAY,CAAC;IACjB,IAAI,OAAO,CAAC;IAEZ,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,EAAE,CAAC;QACvC,YAAY,GAAG,KAAK,CAAC;IACvB,CAAC;SAAM,CAAC;QACN,YAAY,GAAG,IAAA,eAAM,EAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1D,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACrC,MAAM,WAAW,GAAgB,EAAE,CAAC;IAEpC,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAY,CAAC;QAEnC,IAAI,IAAA,aAAK,EAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC7B,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;YAC5B,MAAM;QACR,CAAC;QAED,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,IAAI,CAAC,IAAA,aAAK,EAAC,OAAO,CAAC,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAChC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,EAC/D,OAAO,CACR,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;IAEtB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC;AApDD,8BAoDC"}

View File

@@ -0,0 +1,32 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.roundNumber = void 0;
const bignumber_js_1 = require("bignumber.js");
const expandRoundMode_1 = require("./expandRoundMode");
function digitCount(numeric) {
if (numeric.isZero()) {
return 1;
}
return Math.floor(Math.log10(numeric.abs().toNumber()) + 1);
}
function getAbsolutePrecision(numeric, { precision, significant }) {
if (significant && precision !== null && precision > 0) {
return precision - digitCount(numeric);
}
return precision;
}
function roundNumber(numeric, options) {
const precision = getAbsolutePrecision(numeric, options);
if (precision === null) {
return numeric.toString();
}
const roundMode = (0, expandRoundMode_1.expandRoundMode)(options.roundMode);
if (precision >= 0) {
return numeric.toFixed(precision, roundMode);
}
const rounder = Math.pow(10, Math.abs(precision));
numeric = new bignumber_js_1.BigNumber(numeric.div(rounder).toFixed(0, roundMode)).times(rounder);
return numeric.toString();
}
exports.roundNumber = roundNumber;
//# sourceMappingURL=roundNumber.js.map

Some files were not shown because too many files have changed in this diff Show More