diff --git a/dist/data.d.ts b/dist/data.d.ts deleted file mode 100644 index 9a46b52..0000000 --- a/dist/data.d.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { AsyncZippable, Unzipped } from 'fflate'; -import { BaseEvents, MinimalEvents } from './events'; -export declare function existsAsync(fileOrDir: string): Promise; -export declare function zipAsync(file: AsyncZippable): Promise; -export declare function unzipAsync(data: Uint8Array): Promise; -export declare function saveUserFile({ fileName, userDirectory, dataString, }: { - fileName: string; - userDirectory: string; - dataString: string; -}): Promise; -export declare function loadSavedEvents({ name, userDirectory, deployedBlock, }: { - name: string; - userDirectory: string; - deployedBlock: number; -}): Promise>; -export declare function download({ name, cacheDirectory }: { - name: string; - cacheDirectory: string; -}): Promise; -export declare function loadCachedEvents({ name, cacheDirectory, deployedBlock, }: { - name: string; - cacheDirectory: string; - deployedBlock: number; -}): Promise>; diff --git a/dist/events/index.d.ts b/dist/events/index.d.ts index c386db6..63fa69b 100644 --- a/dist/events/index.d.ts +++ b/dist/events/index.d.ts @@ -1,3 +1,2 @@ export * from './types'; export * from './base'; -export * from './node'; diff --git a/dist/events/node.d.ts b/dist/events/node.d.ts deleted file mode 100644 index 8cc2eb4..0000000 --- a/dist/events/node.d.ts +++ /dev/null @@ -1,76 +0,0 @@ -import { BatchBlockOnProgress, BatchEventOnProgress } from '../batch'; -import { BaseTornadoService, BaseEncryptedNotesService, BaseGovernanceService, BaseRegistryService, BaseTornadoServiceConstructor, BaseEncryptedNotesServiceConstructor, BaseGovernanceServiceConstructor, BaseRegistryServiceConstructor, BaseEchoServiceConstructor, BaseEchoService } from './base'; -import type { BaseEvents, DepositsEvents, WithdrawalsEvents, EncryptedNotesEvents, RegistersEvents, AllGovernanceEvents, EchoEvents } from './types'; -export type NodeTornadoServiceConstructor = BaseTornadoServiceConstructor & { - cacheDirectory?: string; - userDirectory?: string; -}; -export declare class NodeTornadoService extends BaseTornadoService { - cacheDirectory?: string; - userDirectory?: string; - constructor({ netId, provider, graphApi, subgraphName, Tornado, type, amount, currency, deployedBlock, fetchDataOptions, cacheDirectory, userDirectory, }: NodeTornadoServiceConstructor); - updateEventProgress({ type, fromBlock, toBlock, count }: Parameters[0]): void; - updateTransactionProgress({ currentIndex, totalIndex }: Parameters[0]): void; - updateBlockProgress({ currentIndex, totalIndex }: Parameters[0]): void; - updateGraphProgress({ type, fromBlock, toBlock, count }: Parameters[0]): void; - getEventsFromDB(): Promise>; - getEventsFromCache(): Promise>; - saveEvents({ events, lastBlock }: BaseEvents): Promise; -} -export type NodeEchoServiceConstructor = BaseEchoServiceConstructor & { - cacheDirectory?: string; - userDirectory?: string; -}; -export declare class NodeEchoService extends BaseEchoService { - cacheDirectory?: string; - userDirectory?: string; - constructor({ netId, provider, graphApi, subgraphName, Echoer, deployedBlock, fetchDataOptions, cacheDirectory, userDirectory, }: NodeEchoServiceConstructor); - updateEventProgress({ type, fromBlock, toBlock, count }: Parameters[0]): void; - updateGraphProgress({ type, fromBlock, toBlock, count }: Parameters[0]): void; - getEventsFromDB(): Promise>; - getEventsFromCache(): Promise>; - saveEvents({ events, lastBlock }: BaseEvents): Promise; -} -export type NodeEncryptedNotesServiceConstructor = BaseEncryptedNotesServiceConstructor & { - cacheDirectory?: string; - userDirectory?: string; -}; -export declare class NodeEncryptedNotesService extends BaseEncryptedNotesService { - cacheDirectory?: string; - userDirectory?: string; - constructor({ netId, provider, graphApi, subgraphName, Router, deployedBlock, fetchDataOptions, cacheDirectory, userDirectory, }: NodeEncryptedNotesServiceConstructor); - updateEventProgress({ type, fromBlock, toBlock, count }: Parameters[0]): void; - updateGraphProgress({ type, fromBlock, toBlock, count }: Parameters[0]): void; - getEventsFromDB(): Promise>; - getEventsFromCache(): Promise>; - saveEvents({ events, lastBlock }: BaseEvents): Promise; -} -export type NodeGovernanceServiceConstructor = BaseGovernanceServiceConstructor & { - cacheDirectory?: string; - userDirectory?: string; -}; -export declare class NodeGovernanceService extends BaseGovernanceService { - cacheDirectory?: string; - userDirectory?: string; - constructor({ netId, provider, graphApi, subgraphName, Governance, deployedBlock, fetchDataOptions, cacheDirectory, userDirectory, }: NodeGovernanceServiceConstructor); - updateEventProgress({ type, fromBlock, toBlock, count }: Parameters[0]): void; - updateGraphProgress({ type, fromBlock, toBlock, count }: Parameters[0]): void; - updateTransactionProgress({ currentIndex, totalIndex }: Parameters[0]): void; - getEventsFromDB(): Promise>; - getEventsFromCache(): Promise>; - saveEvents({ events, lastBlock }: BaseEvents): Promise; -} -export type NodeRegistryServiceConstructor = BaseRegistryServiceConstructor & { - cacheDirectory?: string; - userDirectory?: string; -}; -export declare class NodeRegistryService extends BaseRegistryService { - cacheDirectory?: string; - userDirectory?: string; - constructor({ netId, provider, graphApi, subgraphName, RelayerRegistry, deployedBlock, fetchDataOptions, cacheDirectory, userDirectory, }: NodeRegistryServiceConstructor); - updateEventProgress({ type, fromBlock, toBlock, count }: Parameters[0]): void; - updateGraphProgress({ type, fromBlock, toBlock, count }: Parameters[0]): void; - getEventsFromDB(): Promise>; - getEventsFromCache(): Promise>; - saveEvents({ events, lastBlock }: BaseEvents): Promise; -} diff --git a/dist/index.d.ts b/dist/index.d.ts index 67793bd..959e645 100644 --- a/dist/index.d.ts +++ b/dist/index.d.ts @@ -3,7 +3,6 @@ export * from './graphql'; export * from './schemas'; export * from './typechain'; export * from './batch'; -export * from './data'; export * from './deposits'; export * from './encryptedNotes'; export * from './fees'; @@ -11,12 +10,10 @@ export * from './merkleTree'; export * from './mimc'; export * from './multicall'; export * from './networkConfig'; -export * from './parser'; export * from './pedersen'; export * from './prices'; export * from './providers'; export * from './relayerClient'; export * from './tokens'; -export * from './treeCache'; export * from './utils'; export * from './websnark'; diff --git a/dist/index.js b/dist/index.js index 47c8bda..de9c5c5 100644 --- a/dist/index.js +++ b/dist/index.js @@ -2,23 +2,13 @@ var ethers = require('ethers'); var crossFetch = require('cross-fetch'); -var httpProxyAgent = require('http-proxy-agent'); -var httpsProxyAgent = require('https-proxy-agent'); -var socksProxyAgent = require('socks-proxy-agent'); var crypto$1 = require('crypto'); var BN = require('bn.js'); -var Table = require('cli-table3'); -var moment = require('moment'); -var path = require('path'); -var promises = require('fs/promises'); -var fflate = require('fflate'); var Ajv = require('ajv'); var circomlibjs = require('circomlibjs'); var ethSigUtil = require('@metamask/eth-sig-util'); var worker_threads = require('worker_threads'); var fixedMerkleTree = require('@tornado/fixed-merkle-tree'); -var commander = require('commander'); -var BloomFilter = require('bloomfilter.js'); var websnarkUtils = require('@tornado/websnark/src/utils'); var websnarkGroth = require('@tornado/websnark/src/groth16'); @@ -2667,7 +2657,7 @@ function substring(str, length = 10) { return `${str.substring(0, length)}...${str.substring(str.length - length)}`; } -var __async$f = (__this, __arguments, generator) => { +var __async$c = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -2688,7 +2678,7 @@ var __async$f = (__this, __arguments, generator) => { }); }; function multicall(Multicall2, calls) { - return __async$f(this, null, function* () { + return __async$c(this, null, function* () { const calldata = calls.map((call) => { var _a, _b, _c; const target = ((_a = call.contract) == null ? void 0 : _a.target) || call.address; @@ -2711,29 +2701,29 @@ function multicall(Multicall2, calls) { }); } -var __defProp$5 = Object.defineProperty; -var __defProps$4 = Object.defineProperties; -var __getOwnPropDescs$4 = Object.getOwnPropertyDescriptors; -var __getOwnPropSymbols$5 = Object.getOwnPropertySymbols; +var __defProp$4 = Object.defineProperty; +var __defProps$3 = Object.defineProperties; +var __getOwnPropDescs$3 = Object.getOwnPropertyDescriptors; +var __getOwnPropSymbols$4 = Object.getOwnPropertySymbols; var __getProtoOf$1 = Object.getPrototypeOf; -var __hasOwnProp$5 = Object.prototype.hasOwnProperty; -var __propIsEnum$5 = Object.prototype.propertyIsEnumerable; +var __hasOwnProp$4 = Object.prototype.hasOwnProperty; +var __propIsEnum$4 = Object.prototype.propertyIsEnumerable; var __reflectGet$1 = Reflect.get; -var __defNormalProp$5 = (obj, key, value) => key in obj ? __defProp$5(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; -var __spreadValues$5 = (a, b) => { +var __defNormalProp$4 = (obj, key, value) => key in obj ? __defProp$4(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; +var __spreadValues$4 = (a, b) => { for (var prop in b || (b = {})) - if (__hasOwnProp$5.call(b, prop)) - __defNormalProp$5(a, prop, b[prop]); - if (__getOwnPropSymbols$5) - for (var prop of __getOwnPropSymbols$5(b)) { - if (__propIsEnum$5.call(b, prop)) - __defNormalProp$5(a, prop, b[prop]); + if (__hasOwnProp$4.call(b, prop)) + __defNormalProp$4(a, prop, b[prop]); + if (__getOwnPropSymbols$4) + for (var prop of __getOwnPropSymbols$4(b)) { + if (__propIsEnum$4.call(b, prop)) + __defNormalProp$4(a, prop, b[prop]); } return a; }; -var __spreadProps$4 = (a, b) => __defProps$4(a, __getOwnPropDescs$4(b)); +var __spreadProps$3 = (a, b) => __defProps$3(a, __getOwnPropDescs$3(b)); var __superGet$1 = (cls, obj, key) => __reflectGet$1(__getProtoOf$1(cls), key, obj); -var __async$e = (__this, __arguments, generator) => { +var __async$b = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -2761,25 +2751,28 @@ function getHttpAgent({ torPort, retry }) { + const { HttpProxyAgent } = require("http-proxy-agent"); + const { HttpsProxyAgent } = require("https-proxy-agent"); + const { SocksProxyAgent } = require("socks-proxy-agent"); if (torPort) { - return new socksProxyAgent.SocksProxyAgent(`socks5h://tor${retry}@127.0.0.1:${torPort}`); + return new SocksProxyAgent(`socks5h://tor${retry}@127.0.0.1:${torPort}`); } if (!proxyUrl) { return; } const isHttps = fetchUrl.includes("https://"); if (proxyUrl.includes("socks://") || proxyUrl.includes("socks4://") || proxyUrl.includes("socks5://")) { - return new socksProxyAgent.SocksProxyAgent(proxyUrl); + return new SocksProxyAgent(proxyUrl); } if (proxyUrl.includes("http://") || proxyUrl.includes("https://")) { if (isHttps) { - return new httpsProxyAgent.HttpsProxyAgent(proxyUrl); + return new HttpsProxyAgent(proxyUrl); } - return new httpProxyAgent.HttpProxyAgent(proxyUrl); + return new HttpProxyAgent(proxyUrl); } } function fetchData(_0) { - return __async$e(this, arguments, function* (url, options = {}) { + return __async$b(this, arguments, function* (url, options = {}) { var _a, _b, _c; const MAX_RETRY = (_a = options.maxRetry) != null ? _a : 3; const RETRY_ON = (_b = options.retryOn) != null ? _b : 500; @@ -2871,7 +2864,7 @@ function fetchData(_0) { throw errorObject; }); } -const fetchGetUrlFunc = (options = {}) => (req, _signal) => __async$e(void 0, null, function* () { +const fetchGetUrlFunc = (options = {}) => (req, _signal) => __async$b(void 0, null, function* () { let signal; if (_signal) { const controller = new AbortController(); @@ -2880,7 +2873,7 @@ const fetchGetUrlFunc = (options = {}) => (req, _signal) => __async$e(void 0, nu controller.abort(); }); } - const init = __spreadProps$4(__spreadValues$5({}, options), { + const init = __spreadProps$3(__spreadValues$4({}, options), { method: req.method || "POST", headers: req.headers, body: req.body || void 0, @@ -2905,7 +2898,7 @@ const oracleMapper = /* @__PURE__ */ new Map(); const multicallMapper = /* @__PURE__ */ new Map(); function getGasOraclePlugin(networkKey, fetchOptions) { const gasStationApi = (fetchOptions == null ? void 0 : fetchOptions.gasStationApi) || "https://gasstation.polygon.technology/v2"; - return new ethers.FetchUrlFeeDataNetworkPlugin(gasStationApi, (fetchFeeData, provider, request) => __async$e(this, null, function* () { + return new ethers.FetchUrlFeeDataNetworkPlugin(gasStationApi, (fetchFeeData, provider, request) => __async$b(this, null, function* () { if (!oracleMapper.has(networkKey)) { oracleMapper.set(networkKey, GasPriceOracle__factory.connect(fetchOptions == null ? void 0 : fetchOptions.gasPriceOracle, provider)); } @@ -2964,7 +2957,7 @@ function getGasOraclePlugin(networkKey, fetchOptions) { })); } function getProvider(rpcUrl, fetchOptions) { - return __async$e(this, null, function* () { + return __async$b(this, null, function* () { const fetchReq = new ethers.FetchRequest(rpcUrl); fetchReq.getUrlFunc = fetchGetUrlFunc(fetchOptions); const _staticNetwork = yield new ethers.JsonRpcProvider(fetchReq).getNetwork(); @@ -3014,7 +3007,7 @@ function getProviderWithNetId(netId, rpcUrl, config, fetchOptions) { provider.pollingInterval = (fetchOptions == null ? void 0 : fetchOptions.pollingInterval) || pollInterval * 1e3; return provider; } -const populateTransaction = (signer, tx) => __async$e(void 0, null, function* () { +const populateTransaction = (signer, tx) => __async$b(void 0, null, function* () { const provider = signer.provider; if (!tx.from) { tx.from = signer.address; @@ -3023,7 +3016,7 @@ const populateTransaction = (signer, tx) => __async$e(void 0, null, function* () throw new Error(errMsg); } const [feeData, nonce] = yield Promise.all([ - (() => __async$e(void 0, null, function* () { + (() => __async$b(void 0, null, function* () { if (tx.maxFeePerGas && tx.maxPriorityFeePerGas) { return new ethers.FeeData(null, BigInt(tx.maxFeePerGas), BigInt(tx.maxPriorityFeePerGas)); } @@ -3045,7 +3038,7 @@ const populateTransaction = (signer, tx) => __async$e(void 0, null, function* () ); } }))(), - (() => __async$e(void 0, null, function* () { + (() => __async$b(void 0, null, function* () { if (tx.nonce) { return tx.nonce; } @@ -3075,7 +3068,7 @@ const populateTransaction = (signer, tx) => __async$e(void 0, null, function* () delete tx.maxFeePerGas; delete tx.maxPriorityFeePerGas; } - tx.gasLimit = tx.gasLimit || (yield (() => __async$e(void 0, null, function* () { + tx.gasLimit = tx.gasLimit || (yield (() => __async$b(void 0, null, function* () { try { const gasLimit = yield provider.estimateGas(tx); return gasLimit === BigInt(21e3) ? gasLimit : gasLimit * (BigInt(1e4) + BigInt(signer.gasLimitBump)) / BigInt(1e4); @@ -3092,7 +3085,7 @@ const populateTransaction = (signer, tx) => __async$e(void 0, null, function* () class TornadoWallet extends ethers.Wallet { constructor(key, provider, { gasPriceBump, gasLimitBump, gasFailover, bumpNonce } = {}) { super(key, provider); - this.gasPriceBump = gasPriceBump != null ? gasPriceBump : 0; + this.gasPriceBump = gasPriceBump != null ? gasPriceBump : 1e3; this.gasLimitBump = gasLimitBump != null ? gasLimitBump : 3e3; this.gasFailover = gasFailover != null ? gasFailover : false; this.bumpNonce = bumpNonce != null ? bumpNonce : false; @@ -3103,7 +3096,7 @@ class TornadoWallet extends ethers.Wallet { return new TornadoWallet(privateKey, provider, options); } populateTransaction(tx) { - return __async$e(this, null, function* () { + return __async$b(this, null, function* () { const txObject = yield populateTransaction(this, tx); this.nonce = txObject.nonce; return __superGet$1(TornadoWallet.prototype, this, "populateTransaction").call(this, txObject); @@ -3113,13 +3106,13 @@ class TornadoWallet extends ethers.Wallet { class TornadoVoidSigner extends ethers.VoidSigner { constructor(address, provider, { gasPriceBump, gasLimitBump, gasFailover, bumpNonce } = {}) { super(address, provider); - this.gasPriceBump = gasPriceBump != null ? gasPriceBump : 0; + this.gasPriceBump = gasPriceBump != null ? gasPriceBump : 1e3; this.gasLimitBump = gasLimitBump != null ? gasLimitBump : 3e3; this.gasFailover = gasFailover != null ? gasFailover : false; this.bumpNonce = bumpNonce != null ? bumpNonce : false; } populateTransaction(tx) { - return __async$e(this, null, function* () { + return __async$b(this, null, function* () { const txObject = yield populateTransaction(this, tx); this.nonce = txObject.nonce; return __superGet$1(TornadoVoidSigner.prototype, this, "populateTransaction").call(this, txObject); @@ -3129,13 +3122,13 @@ class TornadoVoidSigner extends ethers.VoidSigner { class TornadoRpcSigner extends ethers.JsonRpcSigner { constructor(provider, address, { gasPriceBump, gasLimitBump, gasFailover, bumpNonce } = {}) { super(provider, address); - this.gasPriceBump = gasPriceBump != null ? gasPriceBump : 0; + this.gasPriceBump = gasPriceBump != null ? gasPriceBump : 1e3; this.gasLimitBump = gasLimitBump != null ? gasLimitBump : 3e3; this.gasFailover = gasFailover != null ? gasFailover : false; this.bumpNonce = bumpNonce != null ? bumpNonce : false; } sendUncheckedTransaction(tx) { - return __async$e(this, null, function* () { + return __async$b(this, null, function* () { return __superGet$1(TornadoRpcSigner.prototype, this, "sendUncheckedTransaction").call(this, yield populateTransaction(this, tx)); }); } @@ -3146,7 +3139,7 @@ class TornadoBrowserProvider extends ethers.BrowserProvider { this.options = options; } getSigner(address) { - return __async$e(this, null, function* () { + return __async$b(this, null, function* () { var _a, _b, _c, _d, _e, _f, _g, _h, _i; const signerAddress = (yield __superGet$1(TornadoBrowserProvider.prototype, this, "getSigner").call(this, address)).address; if (((_a = this.options) == null ? void 0 : _a.webChainId) && ((_b = this.options) == null ? void 0 : _b.connectWallet) && Number(yield __superGet$1(TornadoBrowserProvider.prototype, this, "send").call(this, "eth_chainId", [])) !== Number((_c = this.options) == null ? void 0 : _c.webChainId)) { @@ -3355,26 +3348,26 @@ const GET_GOVERNANCE_APY = ` } `; -var __defProp$4 = Object.defineProperty; -var __defProps$3 = Object.defineProperties; -var __getOwnPropDescs$3 = Object.getOwnPropertyDescriptors; -var __getOwnPropSymbols$4 = Object.getOwnPropertySymbols; -var __hasOwnProp$4 = Object.prototype.hasOwnProperty; -var __propIsEnum$4 = Object.prototype.propertyIsEnumerable; -var __defNormalProp$4 = (obj, key, value) => key in obj ? __defProp$4(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; -var __spreadValues$4 = (a, b) => { +var __defProp$3 = Object.defineProperty; +var __defProps$2 = Object.defineProperties; +var __getOwnPropDescs$2 = Object.getOwnPropertyDescriptors; +var __getOwnPropSymbols$3 = Object.getOwnPropertySymbols; +var __hasOwnProp$3 = Object.prototype.hasOwnProperty; +var __propIsEnum$3 = Object.prototype.propertyIsEnumerable; +var __defNormalProp$3 = (obj, key, value) => key in obj ? __defProp$3(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; +var __spreadValues$3 = (a, b) => { for (var prop in b || (b = {})) - if (__hasOwnProp$4.call(b, prop)) - __defNormalProp$4(a, prop, b[prop]); - if (__getOwnPropSymbols$4) - for (var prop of __getOwnPropSymbols$4(b)) { - if (__propIsEnum$4.call(b, prop)) - __defNormalProp$4(a, prop, b[prop]); + if (__hasOwnProp$3.call(b, prop)) + __defNormalProp$3(a, prop, b[prop]); + if (__getOwnPropSymbols$3) + for (var prop of __getOwnPropSymbols$3(b)) { + if (__propIsEnum$3.call(b, prop)) + __defNormalProp$3(a, prop, b[prop]); } return a; }; -var __spreadProps$3 = (a, b) => __defProps$3(a, __getOwnPropDescs$3(b)); -var __async$d = (__this, __arguments, generator) => { +var __spreadProps$2 = (a, b) => __defProps$2(a, __getOwnPropDescs$2(b)); +var __async$a = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -3397,7 +3390,7 @@ var __async$d = (__this, __arguments, generator) => { const isEmptyArray = (arr) => !Array.isArray(arr) || !arr.length; const first = 1e3; function queryGraph(_0) { - return __async$d(this, arguments, function* ({ + return __async$a(this, arguments, function* ({ graphApi, subgraphName, query, @@ -3406,7 +3399,7 @@ function queryGraph(_0) { }) { var _a; const graphUrl = `${graphApi}/subgraphs/name/${subgraphName}`; - const { data, errors } = yield fetchData(graphUrl, __spreadProps$3(__spreadValues$4({}, fetchDataOptions2), { + const { data, errors } = yield fetchData(graphUrl, __spreadProps$2(__spreadValues$3({}, fetchDataOptions2), { method: "POST", headers: { "Content-Type": "application/json" @@ -3426,7 +3419,7 @@ function queryGraph(_0) { }); } function getStatistic(_0) { - return __async$d(this, arguments, function* ({ + return __async$a(this, arguments, function* ({ graphApi, subgraphName, currency, @@ -3473,7 +3466,7 @@ function getStatistic(_0) { }); } function getMeta(_0) { - return __async$d(this, arguments, function* ({ graphApi, subgraphName, fetchDataOptions: fetchDataOptions2 }) { + return __async$a(this, arguments, function* ({ graphApi, subgraphName, fetchDataOptions: fetchDataOptions2 }) { try { const { _meta: { @@ -3518,7 +3511,7 @@ function getRegisters({ }); } function getAllRegisters(_0) { - return __async$d(this, arguments, function* ({ + return __async$a(this, arguments, function* ({ graphApi, subgraphName, fromBlock, @@ -3607,7 +3600,7 @@ function getDeposits({ }); } function getAllDeposits(_0) { - return __async$d(this, arguments, function* ({ + return __async$a(this, arguments, function* ({ graphApi, subgraphName, currency, @@ -3704,7 +3697,7 @@ function getWithdrawals({ }); } function getAllWithdrawals(_0) { - return __async$d(this, arguments, function* ({ + return __async$a(this, arguments, function* ({ graphApi, subgraphName, currency, @@ -3780,7 +3773,7 @@ function getAllWithdrawals(_0) { }); } function getNoteAccounts(_0) { - return __async$d(this, arguments, function* ({ + return __async$a(this, arguments, function* ({ graphApi, subgraphName, address, @@ -3833,7 +3826,7 @@ function getGraphEchoEvents({ }); } function getAllGraphEchoEvents(_0) { - return __async$d(this, arguments, function* ({ + return __async$a(this, arguments, function* ({ graphApi, subgraphName, fromBlock, @@ -3922,7 +3915,7 @@ function getEncryptedNotes({ }); } function getAllEncryptedNotes(_0) { - return __async$d(this, arguments, function* ({ + return __async$a(this, arguments, function* ({ graphApi, subgraphName, fromBlock, @@ -4007,7 +4000,7 @@ function getGovernanceEvents({ }); } function getAllGovernanceEvents(_0) { - return __async$d(this, arguments, function* ({ + return __async$a(this, arguments, function* ({ graphApi, subgraphName, fromBlock, @@ -4166,7 +4159,7 @@ var graph = /*#__PURE__*/Object.freeze({ queryGraph: queryGraph }); -var __async$c = (__this, __arguments, generator) => { +var __async$9 = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -4205,7 +4198,7 @@ class BatchBlockService { this.retryOn = retryOn; } getBlock(blockTag) { - return __async$c(this, null, function* () { + return __async$9(this, null, function* () { const blockObject = yield this.provider.getBlock(blockTag); if (!blockObject) { const errMsg = `No block for ${blockTag}`; @@ -4215,9 +4208,9 @@ class BatchBlockService { }); } createBatchRequest(batchArray) { - return batchArray.map((blocks, index) => __async$c(this, null, function* () { + return batchArray.map((blocks, index) => __async$9(this, null, function* () { yield sleep(20 * index); - return (() => __async$c(this, null, function* () { + return (() => __async$9(this, null, function* () { let retries = 0; let err; while (!this.shouldRetry && retries === 0 || this.shouldRetry && retries < this.retryMax) { @@ -4234,7 +4227,7 @@ class BatchBlockService { })); } getBatchBlocks(blocks) { - return __async$c(this, null, function* () { + return __async$9(this, null, function* () { let blockCount = 0; const results = []; for (const chunks of chunk(blocks, this.concurrencySize * this.batchSize)) { @@ -4272,7 +4265,7 @@ class BatchTransactionService { this.retryOn = retryOn; } getTransaction(txHash) { - return __async$c(this, null, function* () { + return __async$9(this, null, function* () { const txObject = yield this.provider.getTransaction(txHash); if (!txObject) { const errMsg = `No transaction for ${txHash}`; @@ -4282,9 +4275,9 @@ class BatchTransactionService { }); } createBatchRequest(batchArray) { - return batchArray.map((txs, index) => __async$c(this, null, function* () { + return batchArray.map((txs, index) => __async$9(this, null, function* () { yield sleep(20 * index); - return (() => __async$c(this, null, function* () { + return (() => __async$9(this, null, function* () { let retries = 0; let err; while (!this.shouldRetry && retries === 0 || this.shouldRetry && retries < this.retryMax) { @@ -4301,7 +4294,7 @@ class BatchTransactionService { })); } getBatchTransactions(txs) { - return __async$c(this, null, function* () { + return __async$9(this, null, function* () { let txCount = 0; const results = []; for (const chunks of chunk(txs, this.concurrencySize * this.batchSize)) { @@ -4337,7 +4330,7 @@ class BatchEventsService { this.retryOn = retryOn; } getPastEvents(_0) { - return __async$c(this, arguments, function* ({ fromBlock, toBlock, type }) { + return __async$9(this, arguments, function* ({ fromBlock, toBlock, type }) { let err; let retries = 0; while (!this.shouldRetry && retries === 0 || this.shouldRetry && retries < this.retryMax) { @@ -4357,13 +4350,13 @@ class BatchEventsService { }); } createBatchRequest(batchArray) { - return batchArray.map((event, index) => __async$c(this, null, function* () { + return batchArray.map((event, index) => __async$9(this, null, function* () { yield sleep(20 * index); return this.getPastEvents(event); })); } getBatchEvents(_0) { - return __async$c(this, arguments, function* ({ fromBlock, toBlock, type = "*" }) { + return __async$9(this, arguments, function* ({ fromBlock, toBlock, type = "*" }) { if (!toBlock) { toBlock = yield this.provider.getBlockNumber(); } @@ -4394,29 +4387,29 @@ class BatchEventsService { } } -var __defProp$3 = Object.defineProperty; -var __defProps$2 = Object.defineProperties; -var __getOwnPropDescs$2 = Object.getOwnPropertyDescriptors; -var __getOwnPropSymbols$3 = Object.getOwnPropertySymbols; +var __defProp$2 = Object.defineProperty; +var __defProps$1 = Object.defineProperties; +var __getOwnPropDescs$1 = Object.getOwnPropertyDescriptors; +var __getOwnPropSymbols$2 = Object.getOwnPropertySymbols; var __getProtoOf = Object.getPrototypeOf; -var __hasOwnProp$3 = Object.prototype.hasOwnProperty; -var __propIsEnum$3 = Object.prototype.propertyIsEnumerable; +var __hasOwnProp$2 = Object.prototype.hasOwnProperty; +var __propIsEnum$2 = Object.prototype.propertyIsEnumerable; var __reflectGet = Reflect.get; -var __defNormalProp$3 = (obj, key, value) => key in obj ? __defProp$3(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; -var __spreadValues$3 = (a, b) => { +var __defNormalProp$2 = (obj, key, value) => key in obj ? __defProp$2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; +var __spreadValues$2 = (a, b) => { for (var prop in b || (b = {})) - if (__hasOwnProp$3.call(b, prop)) - __defNormalProp$3(a, prop, b[prop]); - if (__getOwnPropSymbols$3) - for (var prop of __getOwnPropSymbols$3(b)) { - if (__propIsEnum$3.call(b, prop)) - __defNormalProp$3(a, prop, b[prop]); + if (__hasOwnProp$2.call(b, prop)) + __defNormalProp$2(a, prop, b[prop]); + if (__getOwnPropSymbols$2) + for (var prop of __getOwnPropSymbols$2(b)) { + if (__propIsEnum$2.call(b, prop)) + __defNormalProp$2(a, prop, b[prop]); } return a; }; -var __spreadProps$2 = (a, b) => __defProps$2(a, __getOwnPropDescs$2(b)); +var __spreadProps$1 = (a, b) => __defProps$1(a, __getOwnPropDescs$1(b)); var __superGet = (cls, obj, key) => __reflectGet(__getProtoOf(cls), key, obj); -var __async$b = (__this, __arguments, generator) => { +var __async$8 = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -4491,7 +4484,7 @@ class BaseEventsService { } /* eslint-enable @typescript-eslint/no-unused-vars */ formatEvents(events) { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { return yield new Promise((resolve) => resolve(events)); }); } @@ -4499,7 +4492,7 @@ class BaseEventsService { * Get saved or cached events */ getEventsFromDB() { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { return { events: [], lastBlock: null @@ -4507,7 +4500,7 @@ class BaseEventsService { }); } getEventsFromCache() { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { return { events: [], lastBlock: null @@ -4515,7 +4508,7 @@ class BaseEventsService { }); } getSavedEvents() { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { let cachedEvents = yield this.getEventsFromDB(); if (!cachedEvents || !cachedEvents.events.length) { cachedEvents = yield this.getEventsFromCache(); @@ -4527,7 +4520,7 @@ class BaseEventsService { * Get latest events */ getEventsFromGraph(_0) { - return __async$b(this, arguments, function* ({ + return __async$8(this, arguments, function* ({ fromBlock, methodName = "" }) { @@ -4537,7 +4530,7 @@ class BaseEventsService { lastBlock: fromBlock }; } - const { events, lastSyncBlock } = yield graph[methodName || this.getGraphMethod()](__spreadValues$3({ + const { events, lastSyncBlock } = yield graph[methodName || this.getGraphMethod()](__spreadValues$2({ fromBlock }, this.getGraphParams())); return { @@ -4547,7 +4540,7 @@ class BaseEventsService { }); } getEventsFromRpc(_0) { - return __async$b(this, arguments, function* ({ + return __async$8(this, arguments, function* ({ fromBlock, toBlock }) { @@ -4585,7 +4578,7 @@ class BaseEventsService { }); } getLatestEvents(_0) { - return __async$b(this, arguments, function* ({ fromBlock }) { + return __async$8(this, arguments, function* ({ fromBlock }) { const allEvents = []; const graphEvents = yield this.getEventsFromGraph({ fromBlock }); const lastSyncBlock = graphEvents.lastBlock && graphEvents.lastBlock >= fromBlock ? graphEvents.lastBlock : fromBlock; @@ -4607,14 +4600,14 @@ class BaseEventsService { */ // eslint-disable-next-line @typescript-eslint/no-unused-vars saveEvents(_0) { - return __async$b(this, arguments, function* ({ events, lastBlock }) { + return __async$8(this, arguments, function* ({ events, lastBlock }) { }); } /** * Trigger saving and receiving latest events */ updateEvents() { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { const savedEvents = yield this.getSavedEvents(); let fromBlock = this.deployedBlock; if (savedEvents && savedEvents.lastBlock) { @@ -4688,7 +4681,7 @@ class BaseTornadoService extends BaseEventsService { }; } formatEvents(events) { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { const type = this.getType().toLowerCase(); if (type === DEPOSIT) { const formattedEvents = events.map(({ blockNumber, index: logIndex, transactionHash, args }) => { @@ -4707,7 +4700,7 @@ class BaseTornadoService extends BaseEventsService { ]); return formattedEvents.map((event) => { const { from } = txs.find(({ hash }) => hash === event.transactionHash); - return __spreadProps$2(__spreadValues$3({}, event), { + return __spreadProps$1(__spreadValues$2({}, event), { from }); }); @@ -4728,7 +4721,7 @@ class BaseTornadoService extends BaseEventsService { ]); return formattedEvents.map((event) => { const { timestamp } = blocks.find(({ number }) => number === event.blockNumber); - return __spreadProps$2(__spreadValues$3({}, event), { + return __spreadProps$1(__spreadValues$2({}, event), { timestamp }); }); @@ -4767,7 +4760,7 @@ class BaseEchoService extends BaseEventsService { return "getAllGraphEchoEvents"; } formatEvents(events) { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { return events.map(({ blockNumber, index: logIndex, transactionHash, args }) => { const { who, data } = args; if (who && data) { @@ -4776,7 +4769,7 @@ class BaseEchoService extends BaseEventsService { logIndex, transactionHash }; - return __spreadProps$2(__spreadValues$3({}, eventObjects), { + return __spreadProps$1(__spreadValues$2({}, eventObjects), { address: who, encryptedAccount: data }); @@ -4785,7 +4778,7 @@ class BaseEchoService extends BaseEventsService { }); } getEventsFromGraph(_0) { - return __async$b(this, arguments, function* ({ fromBlock }) { + return __async$8(this, arguments, function* ({ fromBlock }) { if (!this.graphApi || this.graphApi.includes("api.thegraph.com")) { return { events: [], @@ -4818,7 +4811,7 @@ class BaseEncryptedNotesService extends BaseEventsService { return "getAllEncryptedNotes"; } formatEvents(events) { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { return events.map(({ blockNumber, index: logIndex, transactionHash, args }) => { const { encryptedNote } = args; if (encryptedNote) { @@ -4827,7 +4820,7 @@ class BaseEncryptedNotesService extends BaseEventsService { logIndex, transactionHash }; - return __spreadProps$2(__spreadValues$3({}, eventObjects), { + return __spreadProps$1(__spreadValues$2({}, eventObjects), { encryptedNote }); } @@ -4861,7 +4854,7 @@ class BaseGovernanceService extends BaseEventsService { return "getAllGovernanceEvents"; } formatEvents(events) { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { const proposalEvents = []; const votedEvents = []; const delegatedEvents = []; @@ -4875,7 +4868,7 @@ class BaseGovernanceService extends BaseEventsService { }; if (event === "ProposalCreated") { const { id, proposer, target, startTime, endTime, description } = args; - proposalEvents.push(__spreadProps$2(__spreadValues$3({}, eventObjects), { + proposalEvents.push(__spreadProps$1(__spreadValues$2({}, eventObjects), { id: Number(id), proposer, target, @@ -4886,7 +4879,7 @@ class BaseGovernanceService extends BaseEventsService { } if (event === "Voted") { const { proposalId, voter, support, votes } = args; - votedEvents.push(__spreadProps$2(__spreadValues$3({}, eventObjects), { + votedEvents.push(__spreadProps$1(__spreadValues$2({}, eventObjects), { proposalId: Number(proposalId), voter, support, @@ -4897,14 +4890,14 @@ class BaseGovernanceService extends BaseEventsService { } if (event === "Delegated") { const { account, to: delegateTo } = args; - delegatedEvents.push(__spreadProps$2(__spreadValues$3({}, eventObjects), { + delegatedEvents.push(__spreadProps$1(__spreadValues$2({}, eventObjects), { account, delegateTo })); } if (event === "Undelegated") { const { account, from: delegateFrom } = args; - undelegatedEvents.push(__spreadProps$2(__spreadValues$3({}, eventObjects), { + undelegatedEvents.push(__spreadProps$1(__spreadValues$2({}, eventObjects), { account, delegateFrom })); @@ -4928,7 +4921,7 @@ class BaseGovernanceService extends BaseEventsService { }); } getEventsFromGraph(_0) { - return __async$b(this, arguments, function* ({ fromBlock }) { + return __async$8(this, arguments, function* ({ fromBlock }) { if (!this.graphApi || !this.subgraphName || this.graphApi.includes("api.thegraph.com")) { return { events: [], @@ -4963,14 +4956,14 @@ class BaseRegistryService extends BaseEventsService { return "getAllRegisters"; } formatEvents(events) { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { return events.map(({ blockNumber, index: logIndex, transactionHash, args }) => { const eventObjects = { blockNumber, logIndex, transactionHash }; - return __spreadProps$2(__spreadValues$3({}, eventObjects), { + return __spreadProps$1(__spreadValues$2({}, eventObjects), { ensName: args.ensName, relayerAddress: args.relayerAddress }); @@ -4978,843 +4971,25 @@ class BaseRegistryService extends BaseEventsService { }); } fetchRelayers() { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { return (yield this.updateEvents()).events; }); } } -var __async$a = (__this, __arguments, generator) => { - return new Promise((resolve, reject) => { - var fulfilled = (value) => { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - }; - var rejected = (value) => { - try { - step(generator.throw(value)); - } catch (e) { - reject(e); - } - }; - var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected); - step((generator = generator.apply(__this, __arguments)).next()); - }); -}; -function existsAsync(fileOrDir) { - return __async$a(this, null, function* () { - try { - yield promises.stat(fileOrDir); - return true; - } catch (e) { - return false; - } - }); -} -function zipAsync(file) { - return new Promise((res, rej) => { - fflate.zip(file, { mtime: /* @__PURE__ */ new Date("1/1/1980") }, (err, data) => { - if (err) { - rej(err); - return; - } - res(data); - }); - }); -} -function unzipAsync(data) { - return new Promise((res, rej) => { - fflate.unzip(data, {}, (err, data2) => { - if (err) { - rej(err); - return; - } - res(data2); - }); - }); -} -function saveUserFile(_0) { - return __async$a(this, arguments, function* ({ - fileName, - userDirectory, - dataString - }) { - fileName = fileName.toLowerCase(); - const filePath = path.join(userDirectory, fileName); - const payload = yield zipAsync({ - [fileName]: new TextEncoder().encode(dataString) - }); - if (!(yield existsAsync(userDirectory))) { - yield promises.mkdir(userDirectory, { recursive: true }); - } - yield promises.writeFile(filePath + ".zip", payload); - yield promises.writeFile(filePath, dataString); - }); -} -function loadSavedEvents(_0) { - return __async$a(this, arguments, function* ({ - name, - userDirectory, - deployedBlock - }) { - const filePath = path.join(userDirectory, `${name}.json`.toLowerCase()); - if (!(yield existsAsync(filePath))) { - return { - events: [], - lastBlock: null - }; - } - try { - const events = JSON.parse(yield promises.readFile(filePath, { encoding: "utf8" })); - return { - events, - lastBlock: events && events.length ? events[events.length - 1].blockNumber : deployedBlock - }; - } catch (err) { - console.log("Method loadSavedEvents has error"); - console.log(err); - return { - events: [], - lastBlock: deployedBlock - }; - } - }); -} -function download(_0) { - return __async$a(this, arguments, function* ({ name, cacheDirectory }) { - const fileName = `${name}.json`.toLowerCase(); - const zipName = `${fileName}.zip`; - const zipPath = path.join(cacheDirectory, zipName); - const data = yield promises.readFile(zipPath); - const { [fileName]: content } = yield unzipAsync(data); - return new TextDecoder().decode(content); - }); -} -function loadCachedEvents(_0) { - return __async$a(this, arguments, function* ({ - name, - cacheDirectory, - deployedBlock - }) { - try { - const module = yield download({ cacheDirectory, name }); - if (module) { - const events = JSON.parse(module); - const lastBlock = events && events.length ? events[events.length - 1].blockNumber : deployedBlock; - return { - events, - lastBlock - }; - } - return { - events: [], - lastBlock: deployedBlock - }; - } catch (err) { - console.log("Method loadCachedEvents has error"); - console.log(err); - return { - events: [], - lastBlock: deployedBlock - }; - } - }); -} - -var __async$9 = (__this, __arguments, generator) => { - return new Promise((resolve, reject) => { - var fulfilled = (value) => { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - }; - var rejected = (value) => { - try { - step(generator.throw(value)); - } catch (e) { - reject(e); - } - }; - var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected); - step((generator = generator.apply(__this, __arguments)).next()); - }); -}; -class NodeTornadoService extends BaseTornadoService { - constructor({ - netId, - provider, - graphApi, - subgraphName, - Tornado, - type, - amount, - currency, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory - }) { - super({ - netId, - provider, - graphApi, - subgraphName, - Tornado, - type, - amount, - currency, - deployedBlock, - fetchDataOptions - }); - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - updateEventProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock} -`); - } - } - } - updateTransactionProgress({ currentIndex, totalIndex }) { - if (totalIndex) { - console.log(`Fetched ${currentIndex} deposit txs of ${totalIndex}`); - } - } - updateBlockProgress({ currentIndex, totalIndex }) { - if (totalIndex) { - console.log(`Fetched ${currentIndex} withdrawal blocks of ${totalIndex}`); - } - } - updateGraphProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock} -`); - } - } - } - getEventsFromDB() { - return __async$9(this, null, function* () { - if (!this.userDirectory) { - console.log( - "Updating events for", - this.amount, - this.currency.toUpperCase(), - `${this.getType().toLowerCase()}s -` - ); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const savedEvents = yield loadSavedEvents({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock - }); - console.log("Updating events for", this.amount, this.currency.toUpperCase(), `${this.getType().toLowerCase()}s -`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock} -`); - return savedEvents; - }); - } - getEventsFromCache() { - return __async$9(this, null, function* () { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const cachedEvents = yield loadCachedEvents({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock} -`); - return cachedEvents; - }); - } - saveEvents(_0) { - return __async$9(this, arguments, function* ({ events, lastBlock }) { - const instanceName = this.getInstanceName(); - console.log("\ntotalEvents count - ", events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock} -` - ); - const eventTable = new Table(); - eventTable.push( - [{ colSpan: 2, content: `${this.getType()}s`, hAlign: "center" }], - ["Instance", `${this.netId} chain ${this.amount} ${this.currency.toUpperCase()}`], - ["Anonymity set", `${events.length} equal user ${this.getType().toLowerCase()}s`], - [{ colSpan: 2, content: `Latest ${this.getType().toLowerCase()}s` }], - ...events.slice(events.length - 10).reverse().map(({ timestamp }, index) => { - const eventIndex = events.length - index; - const eventTime = moment.unix(timestamp).fromNow(); - return [eventIndex, eventTime]; - }) - ); - console.log(eventTable.toString() + "\n"); - if (this.userDirectory) { - yield saveUserFile({ - fileName: instanceName + ".json", - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + "\n" - }); - } - }); - } -} -class NodeEchoService extends BaseEchoService { - constructor({ - netId, - provider, - graphApi, - subgraphName, - Echoer, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory - }) { - super({ - netId, - provider, - graphApi, - subgraphName, - Echoer, - deployedBlock, - fetchDataOptions - }); - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - updateEventProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock} -`); - } - } - } - updateGraphProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock} -`); - } - } - } - getEventsFromDB() { - return __async$9(this, null, function* () { - if (!this.userDirectory) { - console.log(`Updating events for ${this.netId} chain echo events -`); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const savedEvents = yield loadSavedEvents({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`Updating events for ${this.netId} chain echo events -`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock} -`); - return savedEvents; - }); - } - getEventsFromCache() { - return __async$9(this, null, function* () { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const cachedEvents = yield loadCachedEvents({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock} -`); - return cachedEvents; - }); - } - saveEvents(_0) { - return __async$9(this, arguments, function* ({ events, lastBlock }) { - const instanceName = this.getInstanceName(); - console.log("\ntotalEvents count - ", events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock} -` - ); - const eventTable = new Table(); - eventTable.push( - [{ colSpan: 2, content: "Echo Accounts", hAlign: "center" }], - ["Network", `${this.netId} chain`], - ["Events", `${events.length} events`], - [{ colSpan: 2, content: "Latest events" }], - ...events.slice(events.length - 10).reverse().map(({ blockNumber }, index) => { - const eventIndex = events.length - index; - return [eventIndex, blockNumber]; - }) - ); - console.log(eventTable.toString() + "\n"); - if (this.userDirectory) { - yield saveUserFile({ - fileName: instanceName + ".json", - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + "\n" - }); - } - }); - } -} -class NodeEncryptedNotesService extends BaseEncryptedNotesService { - constructor({ - netId, - provider, - graphApi, - subgraphName, - Router, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory - }) { - super({ - netId, - provider, - graphApi, - subgraphName, - Router, - deployedBlock, - fetchDataOptions - }); - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - updateEventProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock} -`); - } - } - } - updateGraphProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock} -`); - } - } - } - getEventsFromDB() { - return __async$9(this, null, function* () { - if (!this.userDirectory) { - console.log(`Updating events for ${this.netId} chain encrypted events -`); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const savedEvents = yield loadSavedEvents({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`Updating events for ${this.netId} chain encrypted events -`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock} -`); - return savedEvents; - }); - } - getEventsFromCache() { - return __async$9(this, null, function* () { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const cachedEvents = yield loadCachedEvents({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock} -`); - return cachedEvents; - }); - } - saveEvents(_0) { - return __async$9(this, arguments, function* ({ events, lastBlock }) { - const instanceName = this.getInstanceName(); - console.log("\ntotalEvents count - ", events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock} -` - ); - const eventTable = new Table(); - eventTable.push( - [{ colSpan: 2, content: "Encrypted Notes", hAlign: "center" }], - ["Network", `${this.netId} chain`], - ["Events", `${events.length} events`], - [{ colSpan: 2, content: "Latest events" }], - ...events.slice(events.length - 10).reverse().map(({ blockNumber }, index) => { - const eventIndex = events.length - index; - return [eventIndex, blockNumber]; - }) - ); - console.log(eventTable.toString() + "\n"); - if (this.userDirectory) { - yield saveUserFile({ - fileName: instanceName + ".json", - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + "\n" - }); - } - }); - } -} -class NodeGovernanceService extends BaseGovernanceService { - constructor({ - netId, - provider, - graphApi, - subgraphName, - Governance, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory - }) { - super({ - netId, - provider, - graphApi, - subgraphName, - Governance, - deployedBlock, - fetchDataOptions - }); - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - updateEventProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock} -`); - } - } - } - updateGraphProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock} -`); - } - } - } - updateTransactionProgress({ currentIndex, totalIndex }) { - if (totalIndex) { - console.log(`Fetched ${currentIndex} governance txs of ${totalIndex}`); - } - } - getEventsFromDB() { - return __async$9(this, null, function* () { - if (!this.userDirectory) { - console.log(`Updating events for ${this.netId} chain governance events -`); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const savedEvents = yield loadSavedEvents({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`Updating events for ${this.netId} chain governance events -`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock} -`); - return savedEvents; - }); - } - getEventsFromCache() { - return __async$9(this, null, function* () { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const cachedEvents = yield loadCachedEvents({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock} -`); - return cachedEvents; - }); - } - saveEvents(_0) { - return __async$9(this, arguments, function* ({ events, lastBlock }) { - const instanceName = this.getInstanceName(); - console.log("\ntotalEvents count - ", events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock} -` - ); - const eventTable = new Table(); - eventTable.push( - [{ colSpan: 2, content: "Governance Events", hAlign: "center" }], - ["Network", `${this.netId} chain`], - ["Events", `${events.length} events`], - [{ colSpan: 2, content: "Latest events" }], - ...events.slice(events.length - 10).reverse().map(({ blockNumber }, index) => { - const eventIndex = events.length - index; - return [eventIndex, blockNumber]; - }) - ); - console.log(eventTable.toString() + "\n"); - if (this.userDirectory) { - yield saveUserFile({ - fileName: instanceName + ".json", - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + "\n" - }); - } - }); - } -} -class NodeRegistryService extends BaseRegistryService { - constructor({ - netId, - provider, - graphApi, - subgraphName, - RelayerRegistry, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory - }) { - super({ - netId, - provider, - graphApi, - subgraphName, - RelayerRegistry, - deployedBlock, - fetchDataOptions - }); - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - updateEventProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock} -`); - } - } - } - updateGraphProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock} -`); - } - } - } - getEventsFromDB() { - return __async$9(this, null, function* () { - if (!this.userDirectory) { - console.log(`Updating events for ${this.netId} chain registry events -`); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const savedEvents = yield loadSavedEvents({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`Updating events for ${this.netId} chain registry events -`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock} -`); - return savedEvents; - }); - } - getEventsFromCache() { - return __async$9(this, null, function* () { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const cachedEvents = yield loadCachedEvents({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock} -`); - return cachedEvents; - }); - } - saveEvents(_0) { - return __async$9(this, arguments, function* ({ events, lastBlock }) { - const instanceName = this.getInstanceName(); - console.log("\ntotalEvents count - ", events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock} -` - ); - const eventTable = new Table(); - eventTable.push( - [{ colSpan: 2, content: "Registered Relayers", hAlign: "center" }], - ["Network", `${this.netId} chain`], - ["Events", `${events.length} events`], - [{ colSpan: 2, content: "Latest events" }], - ...events.slice(events.length - 10).reverse().map(({ blockNumber }, index) => { - const eventIndex = events.length - index; - return [eventIndex, blockNumber]; - }) - ); - console.log(eventTable.toString() + "\n"); - if (this.userDirectory) { - yield saveUserFile({ - fileName: instanceName + ".json", - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + "\n" - }); - } - }); - } -} - -var __defProp$2 = Object.defineProperty; -var __getOwnPropSymbols$2 = Object.getOwnPropertySymbols; -var __hasOwnProp$2 = Object.prototype.hasOwnProperty; -var __propIsEnum$2 = Object.prototype.propertyIsEnumerable; -var __defNormalProp$2 = (obj, key, value) => key in obj ? __defProp$2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; -var __spreadValues$2 = (a, b) => { +var __defProp$1 = Object.defineProperty; +var __getOwnPropSymbols$1 = Object.getOwnPropertySymbols; +var __hasOwnProp$1 = Object.prototype.hasOwnProperty; +var __propIsEnum$1 = Object.prototype.propertyIsEnumerable; +var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; +var __spreadValues$1 = (a, b) => { for (var prop in b || (b = {})) - if (__hasOwnProp$2.call(b, prop)) - __defNormalProp$2(a, prop, b[prop]); - if (__getOwnPropSymbols$2) - for (var prop of __getOwnPropSymbols$2(b)) { - if (__propIsEnum$2.call(b, prop)) - __defNormalProp$2(a, prop, b[prop]); + if (__hasOwnProp$1.call(b, prop)) + __defNormalProp$1(a, prop, b[prop]); + if (__getOwnPropSymbols$1) + for (var prop of __getOwnPropSymbols$1(b)) { + if (__propIsEnum$1.call(b, prop)) + __defNormalProp$1(a, prop, b[prop]); } return a; }; @@ -6443,10 +5618,10 @@ function addNetwork(newConfig) { enabledChains.push( ...Object.keys(newConfig).map((netId) => Number(netId)).filter((netId) => !enabledChains.includes(netId)) ); - exports.customConfig = __spreadValues$2(__spreadValues$2({}, exports.customConfig), newConfig); + exports.customConfig = __spreadValues$1(__spreadValues$1({}, exports.customConfig), newConfig); } function getNetworkConfig() { - const allConfig = __spreadValues$2(__spreadValues$2({}, defaultConfig), exports.customConfig); + const allConfig = __spreadValues$1(__spreadValues$1({}, defaultConfig), exports.customConfig); return enabledChains.reduce((acc, curr) => { acc[curr] = allConfig[curr]; return acc; @@ -6603,7 +5778,7 @@ ajv.addKeyword({ errors: true }); -var __async$8 = (__this, __arguments, generator) => { +var __async$7 = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -6628,13 +5803,13 @@ class Pedersen { this.pedersenPromise = this.initPedersen(); } initPedersen() { - return __async$8(this, null, function* () { + return __async$7(this, null, function* () { this.pedersenHash = yield circomlibjs.buildPedersenHash(); this.babyJub = this.pedersenHash.babyJub; }); } unpackPoint(buffer) { - return __async$8(this, null, function* () { + return __async$7(this, null, function* () { var _a, _b; yield this.pedersenPromise; return (_b = this.babyJub) == null ? void 0 : _b.unpackPoint((_a = this.pedersenHash) == null ? void 0 : _a.hash(buffer)); @@ -6647,13 +5822,13 @@ class Pedersen { } const pedersen = new Pedersen(); function buffPedersenHash(buffer) { - return __async$8(this, null, function* () { + return __async$7(this, null, function* () { const [hash] = yield pedersen.unpackPoint(buffer); return pedersen.toStringBuffer(hash); }); } -var __async$7 = (__this, __arguments, generator) => { +var __async$6 = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -6674,7 +5849,7 @@ var __async$7 = (__this, __arguments, generator) => { }); }; function createDeposit(_0) { - return __async$7(this, arguments, function* ({ nullifier, secret }) { + return __async$6(this, arguments, function* ({ nullifier, secret }) { const preimage = new Uint8Array([...leInt2Buff(nullifier), ...leInt2Buff(secret)]); const noteHex = toFixedHex(bytesToBN(preimage), 62); const commitment = BigInt(yield buffPedersenHash(preimage)); @@ -6734,7 +5909,7 @@ class Deposit { ); } static createNote(_0) { - return __async$7(this, arguments, function* ({ currency, amount, netId, nullifier, secret }) { + return __async$6(this, arguments, function* ({ currency, amount, netId, nullifier, secret }) { if (!nullifier) { nullifier = rBigInt(31); } @@ -6761,7 +5936,7 @@ class Deposit { }); } static parseNote(noteString) { - return __async$7(this, null, function* () { + return __async$6(this, null, function* () { const noteRegex = new RegExp("tornado-(?\\w+)-(?[\\d.]+)-(?\\d+)-0x(?[0-9a-fA-F]{124})", "g"); const match = noteRegex.exec(noteString); if (!match) { @@ -7021,7 +6196,7 @@ class TornadoFeeOracle { } } -var __async$6 = (__this, __arguments, generator) => { +var __async$5 = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -7046,7 +6221,7 @@ class Mimc { this.mimcPromise = this.initMimc(); } initMimc() { - return __async$6(this, null, function* () { + return __async$5(this, null, function* () { this.sponge = yield circomlibjs.buildMimcSponge(); this.hash = (left, right) => { var _a, _b; @@ -7055,7 +6230,7 @@ class Mimc { }); } getHash() { - return __async$6(this, null, function* () { + return __async$5(this, null, function* () { yield this.mimcPromise; return { sponge: this.sponge, @@ -7066,7 +6241,7 @@ class Mimc { } const mimc = new Mimc(); -var __async$5 = (__this, __arguments, generator) => { +var __async$4 = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -7109,7 +6284,7 @@ class MerkleTreeService { this.merkleWorkerPath = merkleWorkerPath; } createTree(events) { - return __async$5(this, null, function* () { + return __async$4(this, null, function* () { const { hash: hashFunction } = yield mimc.getHash(); if (this.merkleWorkerPath) { console.log("Using merkleWorker\n"); @@ -7161,7 +6336,7 @@ class MerkleTreeService { }); } createPartialTree(_0) { - return __async$5(this, arguments, function* ({ edge, elements }) { + return __async$4(this, arguments, function* ({ edge, elements }) { const { hash: hashFunction } = yield mimc.getHash(); if (this.merkleWorkerPath) { console.log("Using merkleWorker\n"); @@ -7215,7 +6390,7 @@ class MerkleTreeService { }); } verifyTree(events) { - return __async$5(this, null, function* () { + return __async$4(this, null, function* () { console.log( ` Creating deposit tree for ${this.netId} ${this.amount} ${this.currency.toUpperCase()} would take a while @@ -7235,72 +6410,7 @@ Creating deposit tree for ${this.netId} ${this.amount} ${this.currency.toUpperCa } } -function parseNumber(value) { - if (!value || isNaN(Number(value))) { - throw new commander.InvalidArgumentError("Invalid Number"); - } - return Number(value); -} -function parseUrl(value) { - if (!value || !validateUrl(value, ["http:", "https:"])) { - throw new commander.InvalidArgumentError("Invalid URL"); - } - return value; -} -function parseRelayer(value) { - if (!value || !(value.endsWith(".eth") || validateUrl(value, ["http:", "https:"]))) { - throw new commander.InvalidArgumentError("Invalid Relayer ETH address or URL"); - } - return value; -} -function parseAddress(value) { - if (!value) { - throw new commander.InvalidArgumentError("Invalid Address"); - } - try { - return ethers.getAddress(value); - } catch (e) { - throw new commander.InvalidArgumentError("Invalid Address"); - } -} -function parseMnemonic(value) { - if (!value) { - throw new commander.InvalidArgumentError("Invalid Mnemonic"); - } - try { - ethers.Mnemonic.fromPhrase(value); - } catch (e) { - throw new commander.InvalidArgumentError("Invalid Mnemonic"); - } - return value; -} -function parseKey(value) { - if (!value) { - throw new commander.InvalidArgumentError("Invalid Private Key"); - } - if (value.length === 64) { - value = "0x" + value; - } - try { - ethers.computeAddress(value); - } catch (e) { - throw new commander.InvalidArgumentError("Invalid Private Key"); - } - return value; -} -function parseRecoveryKey(value) { - if (!value) { - throw new commander.InvalidArgumentError("Invalid Recovery Key"); - } - try { - ethers.computeAddress("0x" + value); - } catch (e) { - throw new commander.InvalidArgumentError("Invalid Recovery Key"); - } - return value; -} - -var __async$4 = (__this, __arguments, generator) => { +var __async$3 = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -7327,7 +6437,7 @@ class TokenPriceOracle { this.oracle = oracle; } fetchPrices(tokens) { - return __async$4(this, null, function* () { + return __async$3(this, null, function* () { if (!this.oracle) { return new Promise((resolve) => resolve(tokens.map(() => ethers.parseEther("0.0001")))); } @@ -7346,26 +6456,26 @@ class TokenPriceOracle { } } -var __defProp$1 = Object.defineProperty; -var __defProps$1 = Object.defineProperties; -var __getOwnPropDescs$1 = Object.getOwnPropertyDescriptors; -var __getOwnPropSymbols$1 = Object.getOwnPropertySymbols; -var __hasOwnProp$1 = Object.prototype.hasOwnProperty; -var __propIsEnum$1 = Object.prototype.propertyIsEnumerable; -var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; -var __spreadValues$1 = (a, b) => { +var __defProp = Object.defineProperty; +var __defProps = Object.defineProperties; +var __getOwnPropDescs = Object.getOwnPropertyDescriptors; +var __getOwnPropSymbols = Object.getOwnPropertySymbols; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __propIsEnum = Object.prototype.propertyIsEnumerable; +var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; +var __spreadValues = (a, b) => { for (var prop in b || (b = {})) - if (__hasOwnProp$1.call(b, prop)) - __defNormalProp$1(a, prop, b[prop]); - if (__getOwnPropSymbols$1) - for (var prop of __getOwnPropSymbols$1(b)) { - if (__propIsEnum$1.call(b, prop)) - __defNormalProp$1(a, prop, b[prop]); + if (__hasOwnProp.call(b, prop)) + __defNormalProp(a, prop, b[prop]); + if (__getOwnPropSymbols) + for (var prop of __getOwnPropSymbols(b)) { + if (__propIsEnum.call(b, prop)) + __defNormalProp(a, prop, b[prop]); } return a; }; -var __spreadProps$1 = (a, b) => __defProps$1(a, __getOwnPropDescs$1(b)); -var __async$3 = (__this, __arguments, generator) => { +var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); +var __async$2 = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -7447,13 +6557,13 @@ class RelayerClient { this.fetchDataOptions = fetchDataOptions2; } askRelayerStatus(_0) { - return __async$3(this, arguments, function* ({ + return __async$2(this, arguments, function* ({ hostname, relayerAddress }) { var _a, _b; const url = `https://${!hostname.endsWith("/") ? hostname + "/" : hostname}`; - const rawStatus = yield fetchData(`${url}status`, __spreadProps$1(__spreadValues$1({}, this.fetchDataOptions), { + const rawStatus = yield fetchData(`${url}status`, __spreadProps(__spreadValues({}, this.fetchDataOptions), { headers: { "Content-Type": "application/json, application/x-www-form-urlencoded" }, @@ -7464,7 +6574,7 @@ class RelayerClient { if (!statusValidator(rawStatus)) { throw new Error("Invalid status schema"); } - const status = __spreadProps$1(__spreadValues$1({}, rawStatus), { + const status = __spreadProps(__spreadValues({}, rawStatus), { url }); if (status.currentQueue > 5) { @@ -7483,7 +6593,7 @@ class RelayerClient { }); } filterRelayer(curr, relayer, subdomains, debugRelayer = false) { - return __async$3(this, null, function* () { + return __async$2(this, null, function* () { var _a; const { relayerEnsSubdomain } = this.config; const subdomainIndex = subdomains.indexOf(relayerEnsSubdomain); @@ -7536,7 +6646,7 @@ class RelayerClient { }); } getValidRelayers(relayers, subdomains, debugRelayer = false) { - return __async$3(this, null, function* () { + return __async$2(this, null, function* () { const relayersSet = /* @__PURE__ */ new Set(); const uniqueRelayers = relayers.reverse().filter(({ ensName }) => { if (!relayersSet.has(ensName)) { @@ -7567,9 +6677,9 @@ class RelayerClient { return pickWeightedRandomRelayer(relayers, this.netId); } tornadoWithdraw(_0) { - return __async$3(this, arguments, function* ({ contract, proof, args }) { + return __async$2(this, arguments, function* ({ contract, proof, args }) { const { url } = this.selectedRelayer; - const withdrawResponse = yield fetchData(`${url}v1/tornadoWithdraw`, __spreadProps$1(__spreadValues$1({}, this.fetchDataOptions), { + const withdrawResponse = yield fetchData(`${url}v1/tornadoWithdraw`, __spreadProps(__spreadValues({}, this.fetchDataOptions), { method: "POST", headers: { "Content-Type": "application/json" @@ -7589,7 +6699,7 @@ class RelayerClient { console.log(`Job submitted: ${jobUrl} `); while (!relayerStatus || !["FAILED", "CONFIRMED"].includes(relayerStatus)) { - const jobResponse = yield fetchData(jobUrl, __spreadProps$1(__spreadValues$1({}, this.fetchDataOptions), { + const jobResponse = yield fetchData(jobUrl, __spreadProps(__spreadValues({}, this.fetchDataOptions), { method: "GET", headers: { "Content-Type": "application/json" @@ -7629,7 +6739,7 @@ class RelayerClient { } } -var __async$2 = (__this, __arguments, generator) => { +var __async$1 = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -7650,7 +6760,7 @@ var __async$2 = (__this, __arguments, generator) => { }); }; function getTokenBalances(_0) { - return __async$2(this, arguments, function* ({ + return __async$1(this, arguments, function* ({ provider, Multicall: Multicall2, currencyName, @@ -7713,120 +6823,6 @@ function getTokenBalances(_0) { }); } -var __defProp = Object.defineProperty; -var __defProps = Object.defineProperties; -var __getOwnPropDescs = Object.getOwnPropertyDescriptors; -var __getOwnPropSymbols = Object.getOwnPropertySymbols; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __propIsEnum = Object.prototype.propertyIsEnumerable; -var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; -var __spreadValues = (a, b) => { - for (var prop in b || (b = {})) - if (__hasOwnProp.call(b, prop)) - __defNormalProp(a, prop, b[prop]); - if (__getOwnPropSymbols) - for (var prop of __getOwnPropSymbols(b)) { - if (__propIsEnum.call(b, prop)) - __defNormalProp(a, prop, b[prop]); - } - return a; -}; -var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); -var __objRest = (source, exclude) => { - var target = {}; - for (var prop in source) - if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0) - target[prop] = source[prop]; - if (source != null && __getOwnPropSymbols) - for (var prop of __getOwnPropSymbols(source)) { - if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop)) - target[prop] = source[prop]; - } - return target; -}; -var __async$1 = (__this, __arguments, generator) => { - return new Promise((resolve, reject) => { - var fulfilled = (value) => { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - }; - var rejected = (value) => { - try { - step(generator.throw(value)); - } catch (e) { - reject(e); - } - }; - var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected); - step((generator = generator.apply(__this, __arguments)).next()); - }); -}; -class TreeCache { - constructor({ netId, amount, currency, userDirectory, PARTS_COUNT = 4 }) { - this.netId = netId; - this.amount = amount; - this.currency = currency; - this.userDirectory = userDirectory; - this.PARTS_COUNT = PARTS_COUNT; - } - getInstanceName() { - return `deposits_${this.netId}_${this.currency}_${this.amount}`; - } - createTree(events, tree) { - return __async$1(this, null, function* () { - const bloom = new BloomFilter(events.length); - console.log(`Creating cached tree for ${this.getInstanceName()} -`); - const eventsData = events.reduce( - (acc, _a, i) => { - var _b = _a, { leafIndex, commitment } = _b, rest = __objRest(_b, ["leafIndex", "commitment"]); - if (leafIndex !== i) { - throw new Error(`leafIndex (${leafIndex}) !== i (${i})`); - } - acc[commitment] = __spreadProps(__spreadValues({}, rest), { leafIndex }); - return acc; - }, - {} - ); - const slices = tree.getTreeSlices(this.PARTS_COUNT); - yield Promise.all( - slices.map((slice, index) => __async$1(this, null, function* () { - const metadata = slice.elements.reduce((acc, curr) => { - if (index < this.PARTS_COUNT - 1) { - bloom.add(curr); - } - acc.push(eventsData[curr]); - return acc; - }, []); - const dataString2 = JSON.stringify( - __spreadProps(__spreadValues({}, slice), { - metadata - }), - null, - 2 - ) + "\n"; - const fileName2 = `${this.getInstanceName()}_slice${index + 1}.json`; - yield saveUserFile({ - fileName: fileName2, - userDirectory: this.userDirectory, - dataString: dataString2 - }); - })) - ); - const dataString = bloom.serialize() + "\n"; - const fileName = `${this.getInstanceName()}_bloom.json`; - yield saveUserFile({ - fileName, - userDirectory: this.userDirectory, - dataString - }); - }); - } -} - var __async = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { @@ -7918,11 +6914,6 @@ exports.MerkleTreeService = MerkleTreeService; exports.Mimc = Mimc; exports.Multicall__factory = Multicall__factory; exports.NetId = NetId; -exports.NodeEchoService = NodeEchoService; -exports.NodeEncryptedNotesService = NodeEncryptedNotesService; -exports.NodeGovernanceService = NodeGovernanceService; -exports.NodeRegistryService = NodeRegistryService; -exports.NodeTornadoService = NodeTornadoService; exports.NoteAccount = NoteAccount; exports.OffchainOracle__factory = OffchainOracle__factory; exports.OvmGasPriceOracle__factory = OvmGasPriceOracle__factory; @@ -7935,7 +6926,6 @@ exports.TornadoFeeOracle = TornadoFeeOracle; exports.TornadoRpcSigner = TornadoRpcSigner; exports.TornadoVoidSigner = TornadoVoidSigner; exports.TornadoWallet = TornadoWallet; -exports.TreeCache = TreeCache; exports.WITHDRAWAL = WITHDRAWAL; exports._META = _META; exports.addNetwork = addNetwork; @@ -7957,9 +6947,7 @@ exports.createDeposit = createDeposit; exports.crypto = crypto; exports.defaultConfig = defaultConfig; exports.defaultUserAgent = defaultUserAgent; -exports.download = download; exports.enabledChains = enabledChains; -exports.existsAsync = existsAsync; exports.factories = index; exports.fetch = fetch; exports.fetchData = fetchData; @@ -7998,30 +6986,18 @@ exports.isRelayerUpdated = isRelayerUpdated; exports.jobsSchema = jobsSchema; exports.leBuff2Int = leBuff2Int; exports.leInt2Buff = leInt2Buff; -exports.loadCachedEvents = loadCachedEvents; -exports.loadSavedEvents = loadSavedEvents; exports.mimc = mimc; exports.multicall = multicall; exports.packEncryptedMessage = packEncryptedMessage; -exports.parseAddress = parseAddress; -exports.parseKey = parseKey; -exports.parseMnemonic = parseMnemonic; -exports.parseNumber = parseNumber; -exports.parseRecoveryKey = parseRecoveryKey; -exports.parseRelayer = parseRelayer; exports.parseSemanticVersion = parseSemanticVersion; -exports.parseUrl = parseUrl; exports.pedersen = pedersen; exports.pickWeightedRandomRelayer = pickWeightedRandomRelayer; exports.populateTransaction = populateTransaction; exports.queryGraph = queryGraph; exports.rBigInt = rBigInt; -exports.saveUserFile = saveUserFile; exports.sleep = sleep; exports.substring = substring; exports.toFixedHex = toFixedHex; exports.toFixedLength = toFixedLength; exports.unpackEncryptedMessage = unpackEncryptedMessage; -exports.unzipAsync = unzipAsync; exports.validateUrl = validateUrl; -exports.zipAsync = zipAsync; diff --git a/dist/index.mjs b/dist/index.mjs index 073637d..1818e18 100644 --- a/dist/index.mjs +++ b/dist/index.mjs @@ -1,22 +1,12 @@ -import { Interface, Contract, FetchUrlFeeDataNetworkPlugin, FetchRequest, Network, EnsPlugin, GasCostPlugin, JsonRpcProvider, Wallet, HDNodeWallet, VoidSigner, JsonRpcSigner, BrowserProvider, parseUnits, FeeData, getAddress, computeAddress, Transaction, Mnemonic, parseEther, namehash, ZeroAddress } from 'ethers'; +import { Interface, Contract, FetchUrlFeeDataNetworkPlugin, FetchRequest, Network, EnsPlugin, GasCostPlugin, JsonRpcProvider, Wallet, HDNodeWallet, VoidSigner, JsonRpcSigner, BrowserProvider, parseUnits, FeeData, getAddress, computeAddress, Transaction, parseEther, namehash, ZeroAddress } from 'ethers'; import crossFetch from 'cross-fetch'; -import { HttpProxyAgent } from 'http-proxy-agent'; -import { HttpsProxyAgent } from 'https-proxy-agent'; -import { SocksProxyAgent } from 'socks-proxy-agent'; import { webcrypto } from 'crypto'; import BN from 'bn.js'; -import Table from 'cli-table3'; -import moment from 'moment'; -import path from 'path'; -import { stat, mkdir, writeFile, readFile } from 'fs/promises'; -import { zip, unzip } from 'fflate'; import Ajv from 'ajv'; import { buildPedersenHash, buildMimcSponge } from 'circomlibjs'; import { getEncryptionPublicKey, encrypt, decrypt } from '@metamask/eth-sig-util'; import { Worker as Worker$1 } from 'worker_threads'; import { MerkleTree, PartialMerkleTree } from '@tornado/fixed-merkle-tree'; -import { InvalidArgumentError } from 'commander'; -import BloomFilter from 'bloomfilter.js'; import * as websnarkUtils from '@tornado/websnark/src/utils'; import websnarkGroth from '@tornado/websnark/src/groth16'; @@ -2646,7 +2636,7 @@ function substring(str, length = 10) { return `${str.substring(0, length)}...${str.substring(str.length - length)}`; } -var __async$f = (__this, __arguments, generator) => { +var __async$c = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -2667,7 +2657,7 @@ var __async$f = (__this, __arguments, generator) => { }); }; function multicall(Multicall2, calls) { - return __async$f(this, null, function* () { + return __async$c(this, null, function* () { const calldata = calls.map((call) => { var _a, _b, _c; const target = ((_a = call.contract) == null ? void 0 : _a.target) || call.address; @@ -2690,29 +2680,29 @@ function multicall(Multicall2, calls) { }); } -var __defProp$5 = Object.defineProperty; -var __defProps$4 = Object.defineProperties; -var __getOwnPropDescs$4 = Object.getOwnPropertyDescriptors; -var __getOwnPropSymbols$5 = Object.getOwnPropertySymbols; +var __defProp$4 = Object.defineProperty; +var __defProps$3 = Object.defineProperties; +var __getOwnPropDescs$3 = Object.getOwnPropertyDescriptors; +var __getOwnPropSymbols$4 = Object.getOwnPropertySymbols; var __getProtoOf$1 = Object.getPrototypeOf; -var __hasOwnProp$5 = Object.prototype.hasOwnProperty; -var __propIsEnum$5 = Object.prototype.propertyIsEnumerable; +var __hasOwnProp$4 = Object.prototype.hasOwnProperty; +var __propIsEnum$4 = Object.prototype.propertyIsEnumerable; var __reflectGet$1 = Reflect.get; -var __defNormalProp$5 = (obj, key, value) => key in obj ? __defProp$5(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; -var __spreadValues$5 = (a, b) => { +var __defNormalProp$4 = (obj, key, value) => key in obj ? __defProp$4(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; +var __spreadValues$4 = (a, b) => { for (var prop in b || (b = {})) - if (__hasOwnProp$5.call(b, prop)) - __defNormalProp$5(a, prop, b[prop]); - if (__getOwnPropSymbols$5) - for (var prop of __getOwnPropSymbols$5(b)) { - if (__propIsEnum$5.call(b, prop)) - __defNormalProp$5(a, prop, b[prop]); + if (__hasOwnProp$4.call(b, prop)) + __defNormalProp$4(a, prop, b[prop]); + if (__getOwnPropSymbols$4) + for (var prop of __getOwnPropSymbols$4(b)) { + if (__propIsEnum$4.call(b, prop)) + __defNormalProp$4(a, prop, b[prop]); } return a; }; -var __spreadProps$4 = (a, b) => __defProps$4(a, __getOwnPropDescs$4(b)); +var __spreadProps$3 = (a, b) => __defProps$3(a, __getOwnPropDescs$3(b)); var __superGet$1 = (cls, obj, key) => __reflectGet$1(__getProtoOf$1(cls), key, obj); -var __async$e = (__this, __arguments, generator) => { +var __async$b = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -2740,6 +2730,9 @@ function getHttpAgent({ torPort, retry }) { + const { HttpProxyAgent } = require("http-proxy-agent"); + const { HttpsProxyAgent } = require("https-proxy-agent"); + const { SocksProxyAgent } = require("socks-proxy-agent"); if (torPort) { return new SocksProxyAgent(`socks5h://tor${retry}@127.0.0.1:${torPort}`); } @@ -2758,7 +2751,7 @@ function getHttpAgent({ } } function fetchData(_0) { - return __async$e(this, arguments, function* (url, options = {}) { + return __async$b(this, arguments, function* (url, options = {}) { var _a, _b, _c; const MAX_RETRY = (_a = options.maxRetry) != null ? _a : 3; const RETRY_ON = (_b = options.retryOn) != null ? _b : 500; @@ -2850,7 +2843,7 @@ function fetchData(_0) { throw errorObject; }); } -const fetchGetUrlFunc = (options = {}) => (req, _signal) => __async$e(void 0, null, function* () { +const fetchGetUrlFunc = (options = {}) => (req, _signal) => __async$b(void 0, null, function* () { let signal; if (_signal) { const controller = new AbortController(); @@ -2859,7 +2852,7 @@ const fetchGetUrlFunc = (options = {}) => (req, _signal) => __async$e(void 0, nu controller.abort(); }); } - const init = __spreadProps$4(__spreadValues$5({}, options), { + const init = __spreadProps$3(__spreadValues$4({}, options), { method: req.method || "POST", headers: req.headers, body: req.body || void 0, @@ -2884,7 +2877,7 @@ const oracleMapper = /* @__PURE__ */ new Map(); const multicallMapper = /* @__PURE__ */ new Map(); function getGasOraclePlugin(networkKey, fetchOptions) { const gasStationApi = (fetchOptions == null ? void 0 : fetchOptions.gasStationApi) || "https://gasstation.polygon.technology/v2"; - return new FetchUrlFeeDataNetworkPlugin(gasStationApi, (fetchFeeData, provider, request) => __async$e(this, null, function* () { + return new FetchUrlFeeDataNetworkPlugin(gasStationApi, (fetchFeeData, provider, request) => __async$b(this, null, function* () { if (!oracleMapper.has(networkKey)) { oracleMapper.set(networkKey, GasPriceOracle__factory.connect(fetchOptions == null ? void 0 : fetchOptions.gasPriceOracle, provider)); } @@ -2943,7 +2936,7 @@ function getGasOraclePlugin(networkKey, fetchOptions) { })); } function getProvider(rpcUrl, fetchOptions) { - return __async$e(this, null, function* () { + return __async$b(this, null, function* () { const fetchReq = new FetchRequest(rpcUrl); fetchReq.getUrlFunc = fetchGetUrlFunc(fetchOptions); const _staticNetwork = yield new JsonRpcProvider(fetchReq).getNetwork(); @@ -2993,7 +2986,7 @@ function getProviderWithNetId(netId, rpcUrl, config, fetchOptions) { provider.pollingInterval = (fetchOptions == null ? void 0 : fetchOptions.pollingInterval) || pollInterval * 1e3; return provider; } -const populateTransaction = (signer, tx) => __async$e(void 0, null, function* () { +const populateTransaction = (signer, tx) => __async$b(void 0, null, function* () { const provider = signer.provider; if (!tx.from) { tx.from = signer.address; @@ -3002,7 +2995,7 @@ const populateTransaction = (signer, tx) => __async$e(void 0, null, function* () throw new Error(errMsg); } const [feeData, nonce] = yield Promise.all([ - (() => __async$e(void 0, null, function* () { + (() => __async$b(void 0, null, function* () { if (tx.maxFeePerGas && tx.maxPriorityFeePerGas) { return new FeeData(null, BigInt(tx.maxFeePerGas), BigInt(tx.maxPriorityFeePerGas)); } @@ -3024,7 +3017,7 @@ const populateTransaction = (signer, tx) => __async$e(void 0, null, function* () ); } }))(), - (() => __async$e(void 0, null, function* () { + (() => __async$b(void 0, null, function* () { if (tx.nonce) { return tx.nonce; } @@ -3054,7 +3047,7 @@ const populateTransaction = (signer, tx) => __async$e(void 0, null, function* () delete tx.maxFeePerGas; delete tx.maxPriorityFeePerGas; } - tx.gasLimit = tx.gasLimit || (yield (() => __async$e(void 0, null, function* () { + tx.gasLimit = tx.gasLimit || (yield (() => __async$b(void 0, null, function* () { try { const gasLimit = yield provider.estimateGas(tx); return gasLimit === BigInt(21e3) ? gasLimit : gasLimit * (BigInt(1e4) + BigInt(signer.gasLimitBump)) / BigInt(1e4); @@ -3071,7 +3064,7 @@ const populateTransaction = (signer, tx) => __async$e(void 0, null, function* () class TornadoWallet extends Wallet { constructor(key, provider, { gasPriceBump, gasLimitBump, gasFailover, bumpNonce } = {}) { super(key, provider); - this.gasPriceBump = gasPriceBump != null ? gasPriceBump : 0; + this.gasPriceBump = gasPriceBump != null ? gasPriceBump : 1e3; this.gasLimitBump = gasLimitBump != null ? gasLimitBump : 3e3; this.gasFailover = gasFailover != null ? gasFailover : false; this.bumpNonce = bumpNonce != null ? bumpNonce : false; @@ -3082,7 +3075,7 @@ class TornadoWallet extends Wallet { return new TornadoWallet(privateKey, provider, options); } populateTransaction(tx) { - return __async$e(this, null, function* () { + return __async$b(this, null, function* () { const txObject = yield populateTransaction(this, tx); this.nonce = txObject.nonce; return __superGet$1(TornadoWallet.prototype, this, "populateTransaction").call(this, txObject); @@ -3092,13 +3085,13 @@ class TornadoWallet extends Wallet { class TornadoVoidSigner extends VoidSigner { constructor(address, provider, { gasPriceBump, gasLimitBump, gasFailover, bumpNonce } = {}) { super(address, provider); - this.gasPriceBump = gasPriceBump != null ? gasPriceBump : 0; + this.gasPriceBump = gasPriceBump != null ? gasPriceBump : 1e3; this.gasLimitBump = gasLimitBump != null ? gasLimitBump : 3e3; this.gasFailover = gasFailover != null ? gasFailover : false; this.bumpNonce = bumpNonce != null ? bumpNonce : false; } populateTransaction(tx) { - return __async$e(this, null, function* () { + return __async$b(this, null, function* () { const txObject = yield populateTransaction(this, tx); this.nonce = txObject.nonce; return __superGet$1(TornadoVoidSigner.prototype, this, "populateTransaction").call(this, txObject); @@ -3108,13 +3101,13 @@ class TornadoVoidSigner extends VoidSigner { class TornadoRpcSigner extends JsonRpcSigner { constructor(provider, address, { gasPriceBump, gasLimitBump, gasFailover, bumpNonce } = {}) { super(provider, address); - this.gasPriceBump = gasPriceBump != null ? gasPriceBump : 0; + this.gasPriceBump = gasPriceBump != null ? gasPriceBump : 1e3; this.gasLimitBump = gasLimitBump != null ? gasLimitBump : 3e3; this.gasFailover = gasFailover != null ? gasFailover : false; this.bumpNonce = bumpNonce != null ? bumpNonce : false; } sendUncheckedTransaction(tx) { - return __async$e(this, null, function* () { + return __async$b(this, null, function* () { return __superGet$1(TornadoRpcSigner.prototype, this, "sendUncheckedTransaction").call(this, yield populateTransaction(this, tx)); }); } @@ -3125,7 +3118,7 @@ class TornadoBrowserProvider extends BrowserProvider { this.options = options; } getSigner(address) { - return __async$e(this, null, function* () { + return __async$b(this, null, function* () { var _a, _b, _c, _d, _e, _f, _g, _h, _i; const signerAddress = (yield __superGet$1(TornadoBrowserProvider.prototype, this, "getSigner").call(this, address)).address; if (((_a = this.options) == null ? void 0 : _a.webChainId) && ((_b = this.options) == null ? void 0 : _b.connectWallet) && Number(yield __superGet$1(TornadoBrowserProvider.prototype, this, "send").call(this, "eth_chainId", [])) !== Number((_c = this.options) == null ? void 0 : _c.webChainId)) { @@ -3334,26 +3327,26 @@ const GET_GOVERNANCE_APY = ` } `; -var __defProp$4 = Object.defineProperty; -var __defProps$3 = Object.defineProperties; -var __getOwnPropDescs$3 = Object.getOwnPropertyDescriptors; -var __getOwnPropSymbols$4 = Object.getOwnPropertySymbols; -var __hasOwnProp$4 = Object.prototype.hasOwnProperty; -var __propIsEnum$4 = Object.prototype.propertyIsEnumerable; -var __defNormalProp$4 = (obj, key, value) => key in obj ? __defProp$4(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; -var __spreadValues$4 = (a, b) => { +var __defProp$3 = Object.defineProperty; +var __defProps$2 = Object.defineProperties; +var __getOwnPropDescs$2 = Object.getOwnPropertyDescriptors; +var __getOwnPropSymbols$3 = Object.getOwnPropertySymbols; +var __hasOwnProp$3 = Object.prototype.hasOwnProperty; +var __propIsEnum$3 = Object.prototype.propertyIsEnumerable; +var __defNormalProp$3 = (obj, key, value) => key in obj ? __defProp$3(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; +var __spreadValues$3 = (a, b) => { for (var prop in b || (b = {})) - if (__hasOwnProp$4.call(b, prop)) - __defNormalProp$4(a, prop, b[prop]); - if (__getOwnPropSymbols$4) - for (var prop of __getOwnPropSymbols$4(b)) { - if (__propIsEnum$4.call(b, prop)) - __defNormalProp$4(a, prop, b[prop]); + if (__hasOwnProp$3.call(b, prop)) + __defNormalProp$3(a, prop, b[prop]); + if (__getOwnPropSymbols$3) + for (var prop of __getOwnPropSymbols$3(b)) { + if (__propIsEnum$3.call(b, prop)) + __defNormalProp$3(a, prop, b[prop]); } return a; }; -var __spreadProps$3 = (a, b) => __defProps$3(a, __getOwnPropDescs$3(b)); -var __async$d = (__this, __arguments, generator) => { +var __spreadProps$2 = (a, b) => __defProps$2(a, __getOwnPropDescs$2(b)); +var __async$a = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -3376,7 +3369,7 @@ var __async$d = (__this, __arguments, generator) => { const isEmptyArray = (arr) => !Array.isArray(arr) || !arr.length; const first = 1e3; function queryGraph(_0) { - return __async$d(this, arguments, function* ({ + return __async$a(this, arguments, function* ({ graphApi, subgraphName, query, @@ -3385,7 +3378,7 @@ function queryGraph(_0) { }) { var _a; const graphUrl = `${graphApi}/subgraphs/name/${subgraphName}`; - const { data, errors } = yield fetchData(graphUrl, __spreadProps$3(__spreadValues$4({}, fetchDataOptions2), { + const { data, errors } = yield fetchData(graphUrl, __spreadProps$2(__spreadValues$3({}, fetchDataOptions2), { method: "POST", headers: { "Content-Type": "application/json" @@ -3405,7 +3398,7 @@ function queryGraph(_0) { }); } function getStatistic(_0) { - return __async$d(this, arguments, function* ({ + return __async$a(this, arguments, function* ({ graphApi, subgraphName, currency, @@ -3452,7 +3445,7 @@ function getStatistic(_0) { }); } function getMeta(_0) { - return __async$d(this, arguments, function* ({ graphApi, subgraphName, fetchDataOptions: fetchDataOptions2 }) { + return __async$a(this, arguments, function* ({ graphApi, subgraphName, fetchDataOptions: fetchDataOptions2 }) { try { const { _meta: { @@ -3497,7 +3490,7 @@ function getRegisters({ }); } function getAllRegisters(_0) { - return __async$d(this, arguments, function* ({ + return __async$a(this, arguments, function* ({ graphApi, subgraphName, fromBlock, @@ -3586,7 +3579,7 @@ function getDeposits({ }); } function getAllDeposits(_0) { - return __async$d(this, arguments, function* ({ + return __async$a(this, arguments, function* ({ graphApi, subgraphName, currency, @@ -3683,7 +3676,7 @@ function getWithdrawals({ }); } function getAllWithdrawals(_0) { - return __async$d(this, arguments, function* ({ + return __async$a(this, arguments, function* ({ graphApi, subgraphName, currency, @@ -3759,7 +3752,7 @@ function getAllWithdrawals(_0) { }); } function getNoteAccounts(_0) { - return __async$d(this, arguments, function* ({ + return __async$a(this, arguments, function* ({ graphApi, subgraphName, address, @@ -3812,7 +3805,7 @@ function getGraphEchoEvents({ }); } function getAllGraphEchoEvents(_0) { - return __async$d(this, arguments, function* ({ + return __async$a(this, arguments, function* ({ graphApi, subgraphName, fromBlock, @@ -3901,7 +3894,7 @@ function getEncryptedNotes({ }); } function getAllEncryptedNotes(_0) { - return __async$d(this, arguments, function* ({ + return __async$a(this, arguments, function* ({ graphApi, subgraphName, fromBlock, @@ -3986,7 +3979,7 @@ function getGovernanceEvents({ }); } function getAllGovernanceEvents(_0) { - return __async$d(this, arguments, function* ({ + return __async$a(this, arguments, function* ({ graphApi, subgraphName, fromBlock, @@ -4145,7 +4138,7 @@ var graph = /*#__PURE__*/Object.freeze({ queryGraph: queryGraph }); -var __async$c = (__this, __arguments, generator) => { +var __async$9 = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -4184,7 +4177,7 @@ class BatchBlockService { this.retryOn = retryOn; } getBlock(blockTag) { - return __async$c(this, null, function* () { + return __async$9(this, null, function* () { const blockObject = yield this.provider.getBlock(blockTag); if (!blockObject) { const errMsg = `No block for ${blockTag}`; @@ -4194,9 +4187,9 @@ class BatchBlockService { }); } createBatchRequest(batchArray) { - return batchArray.map((blocks, index) => __async$c(this, null, function* () { + return batchArray.map((blocks, index) => __async$9(this, null, function* () { yield sleep(20 * index); - return (() => __async$c(this, null, function* () { + return (() => __async$9(this, null, function* () { let retries = 0; let err; while (!this.shouldRetry && retries === 0 || this.shouldRetry && retries < this.retryMax) { @@ -4213,7 +4206,7 @@ class BatchBlockService { })); } getBatchBlocks(blocks) { - return __async$c(this, null, function* () { + return __async$9(this, null, function* () { let blockCount = 0; const results = []; for (const chunks of chunk(blocks, this.concurrencySize * this.batchSize)) { @@ -4251,7 +4244,7 @@ class BatchTransactionService { this.retryOn = retryOn; } getTransaction(txHash) { - return __async$c(this, null, function* () { + return __async$9(this, null, function* () { const txObject = yield this.provider.getTransaction(txHash); if (!txObject) { const errMsg = `No transaction for ${txHash}`; @@ -4261,9 +4254,9 @@ class BatchTransactionService { }); } createBatchRequest(batchArray) { - return batchArray.map((txs, index) => __async$c(this, null, function* () { + return batchArray.map((txs, index) => __async$9(this, null, function* () { yield sleep(20 * index); - return (() => __async$c(this, null, function* () { + return (() => __async$9(this, null, function* () { let retries = 0; let err; while (!this.shouldRetry && retries === 0 || this.shouldRetry && retries < this.retryMax) { @@ -4280,7 +4273,7 @@ class BatchTransactionService { })); } getBatchTransactions(txs) { - return __async$c(this, null, function* () { + return __async$9(this, null, function* () { let txCount = 0; const results = []; for (const chunks of chunk(txs, this.concurrencySize * this.batchSize)) { @@ -4316,7 +4309,7 @@ class BatchEventsService { this.retryOn = retryOn; } getPastEvents(_0) { - return __async$c(this, arguments, function* ({ fromBlock, toBlock, type }) { + return __async$9(this, arguments, function* ({ fromBlock, toBlock, type }) { let err; let retries = 0; while (!this.shouldRetry && retries === 0 || this.shouldRetry && retries < this.retryMax) { @@ -4336,13 +4329,13 @@ class BatchEventsService { }); } createBatchRequest(batchArray) { - return batchArray.map((event, index) => __async$c(this, null, function* () { + return batchArray.map((event, index) => __async$9(this, null, function* () { yield sleep(20 * index); return this.getPastEvents(event); })); } getBatchEvents(_0) { - return __async$c(this, arguments, function* ({ fromBlock, toBlock, type = "*" }) { + return __async$9(this, arguments, function* ({ fromBlock, toBlock, type = "*" }) { if (!toBlock) { toBlock = yield this.provider.getBlockNumber(); } @@ -4373,29 +4366,29 @@ class BatchEventsService { } } -var __defProp$3 = Object.defineProperty; -var __defProps$2 = Object.defineProperties; -var __getOwnPropDescs$2 = Object.getOwnPropertyDescriptors; -var __getOwnPropSymbols$3 = Object.getOwnPropertySymbols; +var __defProp$2 = Object.defineProperty; +var __defProps$1 = Object.defineProperties; +var __getOwnPropDescs$1 = Object.getOwnPropertyDescriptors; +var __getOwnPropSymbols$2 = Object.getOwnPropertySymbols; var __getProtoOf = Object.getPrototypeOf; -var __hasOwnProp$3 = Object.prototype.hasOwnProperty; -var __propIsEnum$3 = Object.prototype.propertyIsEnumerable; +var __hasOwnProp$2 = Object.prototype.hasOwnProperty; +var __propIsEnum$2 = Object.prototype.propertyIsEnumerable; var __reflectGet = Reflect.get; -var __defNormalProp$3 = (obj, key, value) => key in obj ? __defProp$3(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; -var __spreadValues$3 = (a, b) => { +var __defNormalProp$2 = (obj, key, value) => key in obj ? __defProp$2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; +var __spreadValues$2 = (a, b) => { for (var prop in b || (b = {})) - if (__hasOwnProp$3.call(b, prop)) - __defNormalProp$3(a, prop, b[prop]); - if (__getOwnPropSymbols$3) - for (var prop of __getOwnPropSymbols$3(b)) { - if (__propIsEnum$3.call(b, prop)) - __defNormalProp$3(a, prop, b[prop]); + if (__hasOwnProp$2.call(b, prop)) + __defNormalProp$2(a, prop, b[prop]); + if (__getOwnPropSymbols$2) + for (var prop of __getOwnPropSymbols$2(b)) { + if (__propIsEnum$2.call(b, prop)) + __defNormalProp$2(a, prop, b[prop]); } return a; }; -var __spreadProps$2 = (a, b) => __defProps$2(a, __getOwnPropDescs$2(b)); +var __spreadProps$1 = (a, b) => __defProps$1(a, __getOwnPropDescs$1(b)); var __superGet = (cls, obj, key) => __reflectGet(__getProtoOf(cls), key, obj); -var __async$b = (__this, __arguments, generator) => { +var __async$8 = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -4470,7 +4463,7 @@ class BaseEventsService { } /* eslint-enable @typescript-eslint/no-unused-vars */ formatEvents(events) { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { return yield new Promise((resolve) => resolve(events)); }); } @@ -4478,7 +4471,7 @@ class BaseEventsService { * Get saved or cached events */ getEventsFromDB() { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { return { events: [], lastBlock: null @@ -4486,7 +4479,7 @@ class BaseEventsService { }); } getEventsFromCache() { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { return { events: [], lastBlock: null @@ -4494,7 +4487,7 @@ class BaseEventsService { }); } getSavedEvents() { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { let cachedEvents = yield this.getEventsFromDB(); if (!cachedEvents || !cachedEvents.events.length) { cachedEvents = yield this.getEventsFromCache(); @@ -4506,7 +4499,7 @@ class BaseEventsService { * Get latest events */ getEventsFromGraph(_0) { - return __async$b(this, arguments, function* ({ + return __async$8(this, arguments, function* ({ fromBlock, methodName = "" }) { @@ -4516,7 +4509,7 @@ class BaseEventsService { lastBlock: fromBlock }; } - const { events, lastSyncBlock } = yield graph[methodName || this.getGraphMethod()](__spreadValues$3({ + const { events, lastSyncBlock } = yield graph[methodName || this.getGraphMethod()](__spreadValues$2({ fromBlock }, this.getGraphParams())); return { @@ -4526,7 +4519,7 @@ class BaseEventsService { }); } getEventsFromRpc(_0) { - return __async$b(this, arguments, function* ({ + return __async$8(this, arguments, function* ({ fromBlock, toBlock }) { @@ -4564,7 +4557,7 @@ class BaseEventsService { }); } getLatestEvents(_0) { - return __async$b(this, arguments, function* ({ fromBlock }) { + return __async$8(this, arguments, function* ({ fromBlock }) { const allEvents = []; const graphEvents = yield this.getEventsFromGraph({ fromBlock }); const lastSyncBlock = graphEvents.lastBlock && graphEvents.lastBlock >= fromBlock ? graphEvents.lastBlock : fromBlock; @@ -4586,14 +4579,14 @@ class BaseEventsService { */ // eslint-disable-next-line @typescript-eslint/no-unused-vars saveEvents(_0) { - return __async$b(this, arguments, function* ({ events, lastBlock }) { + return __async$8(this, arguments, function* ({ events, lastBlock }) { }); } /** * Trigger saving and receiving latest events */ updateEvents() { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { const savedEvents = yield this.getSavedEvents(); let fromBlock = this.deployedBlock; if (savedEvents && savedEvents.lastBlock) { @@ -4667,7 +4660,7 @@ class BaseTornadoService extends BaseEventsService { }; } formatEvents(events) { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { const type = this.getType().toLowerCase(); if (type === DEPOSIT) { const formattedEvents = events.map(({ blockNumber, index: logIndex, transactionHash, args }) => { @@ -4686,7 +4679,7 @@ class BaseTornadoService extends BaseEventsService { ]); return formattedEvents.map((event) => { const { from } = txs.find(({ hash }) => hash === event.transactionHash); - return __spreadProps$2(__spreadValues$3({}, event), { + return __spreadProps$1(__spreadValues$2({}, event), { from }); }); @@ -4707,7 +4700,7 @@ class BaseTornadoService extends BaseEventsService { ]); return formattedEvents.map((event) => { const { timestamp } = blocks.find(({ number }) => number === event.blockNumber); - return __spreadProps$2(__spreadValues$3({}, event), { + return __spreadProps$1(__spreadValues$2({}, event), { timestamp }); }); @@ -4746,7 +4739,7 @@ class BaseEchoService extends BaseEventsService { return "getAllGraphEchoEvents"; } formatEvents(events) { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { return events.map(({ blockNumber, index: logIndex, transactionHash, args }) => { const { who, data } = args; if (who && data) { @@ -4755,7 +4748,7 @@ class BaseEchoService extends BaseEventsService { logIndex, transactionHash }; - return __spreadProps$2(__spreadValues$3({}, eventObjects), { + return __spreadProps$1(__spreadValues$2({}, eventObjects), { address: who, encryptedAccount: data }); @@ -4764,7 +4757,7 @@ class BaseEchoService extends BaseEventsService { }); } getEventsFromGraph(_0) { - return __async$b(this, arguments, function* ({ fromBlock }) { + return __async$8(this, arguments, function* ({ fromBlock }) { if (!this.graphApi || this.graphApi.includes("api.thegraph.com")) { return { events: [], @@ -4797,7 +4790,7 @@ class BaseEncryptedNotesService extends BaseEventsService { return "getAllEncryptedNotes"; } formatEvents(events) { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { return events.map(({ blockNumber, index: logIndex, transactionHash, args }) => { const { encryptedNote } = args; if (encryptedNote) { @@ -4806,7 +4799,7 @@ class BaseEncryptedNotesService extends BaseEventsService { logIndex, transactionHash }; - return __spreadProps$2(__spreadValues$3({}, eventObjects), { + return __spreadProps$1(__spreadValues$2({}, eventObjects), { encryptedNote }); } @@ -4840,7 +4833,7 @@ class BaseGovernanceService extends BaseEventsService { return "getAllGovernanceEvents"; } formatEvents(events) { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { const proposalEvents = []; const votedEvents = []; const delegatedEvents = []; @@ -4854,7 +4847,7 @@ class BaseGovernanceService extends BaseEventsService { }; if (event === "ProposalCreated") { const { id, proposer, target, startTime, endTime, description } = args; - proposalEvents.push(__spreadProps$2(__spreadValues$3({}, eventObjects), { + proposalEvents.push(__spreadProps$1(__spreadValues$2({}, eventObjects), { id: Number(id), proposer, target, @@ -4865,7 +4858,7 @@ class BaseGovernanceService extends BaseEventsService { } if (event === "Voted") { const { proposalId, voter, support, votes } = args; - votedEvents.push(__spreadProps$2(__spreadValues$3({}, eventObjects), { + votedEvents.push(__spreadProps$1(__spreadValues$2({}, eventObjects), { proposalId: Number(proposalId), voter, support, @@ -4876,14 +4869,14 @@ class BaseGovernanceService extends BaseEventsService { } if (event === "Delegated") { const { account, to: delegateTo } = args; - delegatedEvents.push(__spreadProps$2(__spreadValues$3({}, eventObjects), { + delegatedEvents.push(__spreadProps$1(__spreadValues$2({}, eventObjects), { account, delegateTo })); } if (event === "Undelegated") { const { account, from: delegateFrom } = args; - undelegatedEvents.push(__spreadProps$2(__spreadValues$3({}, eventObjects), { + undelegatedEvents.push(__spreadProps$1(__spreadValues$2({}, eventObjects), { account, delegateFrom })); @@ -4907,7 +4900,7 @@ class BaseGovernanceService extends BaseEventsService { }); } getEventsFromGraph(_0) { - return __async$b(this, arguments, function* ({ fromBlock }) { + return __async$8(this, arguments, function* ({ fromBlock }) { if (!this.graphApi || !this.subgraphName || this.graphApi.includes("api.thegraph.com")) { return { events: [], @@ -4942,14 +4935,14 @@ class BaseRegistryService extends BaseEventsService { return "getAllRegisters"; } formatEvents(events) { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { return events.map(({ blockNumber, index: logIndex, transactionHash, args }) => { const eventObjects = { blockNumber, logIndex, transactionHash }; - return __spreadProps$2(__spreadValues$3({}, eventObjects), { + return __spreadProps$1(__spreadValues$2({}, eventObjects), { ensName: args.ensName, relayerAddress: args.relayerAddress }); @@ -4957,843 +4950,25 @@ class BaseRegistryService extends BaseEventsService { }); } fetchRelayers() { - return __async$b(this, null, function* () { + return __async$8(this, null, function* () { return (yield this.updateEvents()).events; }); } } -var __async$a = (__this, __arguments, generator) => { - return new Promise((resolve, reject) => { - var fulfilled = (value) => { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - }; - var rejected = (value) => { - try { - step(generator.throw(value)); - } catch (e) { - reject(e); - } - }; - var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected); - step((generator = generator.apply(__this, __arguments)).next()); - }); -}; -function existsAsync(fileOrDir) { - return __async$a(this, null, function* () { - try { - yield stat(fileOrDir); - return true; - } catch (e) { - return false; - } - }); -} -function zipAsync(file) { - return new Promise((res, rej) => { - zip(file, { mtime: /* @__PURE__ */ new Date("1/1/1980") }, (err, data) => { - if (err) { - rej(err); - return; - } - res(data); - }); - }); -} -function unzipAsync(data) { - return new Promise((res, rej) => { - unzip(data, {}, (err, data2) => { - if (err) { - rej(err); - return; - } - res(data2); - }); - }); -} -function saveUserFile(_0) { - return __async$a(this, arguments, function* ({ - fileName, - userDirectory, - dataString - }) { - fileName = fileName.toLowerCase(); - const filePath = path.join(userDirectory, fileName); - const payload = yield zipAsync({ - [fileName]: new TextEncoder().encode(dataString) - }); - if (!(yield existsAsync(userDirectory))) { - yield mkdir(userDirectory, { recursive: true }); - } - yield writeFile(filePath + ".zip", payload); - yield writeFile(filePath, dataString); - }); -} -function loadSavedEvents(_0) { - return __async$a(this, arguments, function* ({ - name, - userDirectory, - deployedBlock - }) { - const filePath = path.join(userDirectory, `${name}.json`.toLowerCase()); - if (!(yield existsAsync(filePath))) { - return { - events: [], - lastBlock: null - }; - } - try { - const events = JSON.parse(yield readFile(filePath, { encoding: "utf8" })); - return { - events, - lastBlock: events && events.length ? events[events.length - 1].blockNumber : deployedBlock - }; - } catch (err) { - console.log("Method loadSavedEvents has error"); - console.log(err); - return { - events: [], - lastBlock: deployedBlock - }; - } - }); -} -function download(_0) { - return __async$a(this, arguments, function* ({ name, cacheDirectory }) { - const fileName = `${name}.json`.toLowerCase(); - const zipName = `${fileName}.zip`; - const zipPath = path.join(cacheDirectory, zipName); - const data = yield readFile(zipPath); - const { [fileName]: content } = yield unzipAsync(data); - return new TextDecoder().decode(content); - }); -} -function loadCachedEvents(_0) { - return __async$a(this, arguments, function* ({ - name, - cacheDirectory, - deployedBlock - }) { - try { - const module = yield download({ cacheDirectory, name }); - if (module) { - const events = JSON.parse(module); - const lastBlock = events && events.length ? events[events.length - 1].blockNumber : deployedBlock; - return { - events, - lastBlock - }; - } - return { - events: [], - lastBlock: deployedBlock - }; - } catch (err) { - console.log("Method loadCachedEvents has error"); - console.log(err); - return { - events: [], - lastBlock: deployedBlock - }; - } - }); -} - -var __async$9 = (__this, __arguments, generator) => { - return new Promise((resolve, reject) => { - var fulfilled = (value) => { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - }; - var rejected = (value) => { - try { - step(generator.throw(value)); - } catch (e) { - reject(e); - } - }; - var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected); - step((generator = generator.apply(__this, __arguments)).next()); - }); -}; -class NodeTornadoService extends BaseTornadoService { - constructor({ - netId, - provider, - graphApi, - subgraphName, - Tornado, - type, - amount, - currency, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory - }) { - super({ - netId, - provider, - graphApi, - subgraphName, - Tornado, - type, - amount, - currency, - deployedBlock, - fetchDataOptions - }); - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - updateEventProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock} -`); - } - } - } - updateTransactionProgress({ currentIndex, totalIndex }) { - if (totalIndex) { - console.log(`Fetched ${currentIndex} deposit txs of ${totalIndex}`); - } - } - updateBlockProgress({ currentIndex, totalIndex }) { - if (totalIndex) { - console.log(`Fetched ${currentIndex} withdrawal blocks of ${totalIndex}`); - } - } - updateGraphProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock} -`); - } - } - } - getEventsFromDB() { - return __async$9(this, null, function* () { - if (!this.userDirectory) { - console.log( - "Updating events for", - this.amount, - this.currency.toUpperCase(), - `${this.getType().toLowerCase()}s -` - ); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const savedEvents = yield loadSavedEvents({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock - }); - console.log("Updating events for", this.amount, this.currency.toUpperCase(), `${this.getType().toLowerCase()}s -`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock} -`); - return savedEvents; - }); - } - getEventsFromCache() { - return __async$9(this, null, function* () { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const cachedEvents = yield loadCachedEvents({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock} -`); - return cachedEvents; - }); - } - saveEvents(_0) { - return __async$9(this, arguments, function* ({ events, lastBlock }) { - const instanceName = this.getInstanceName(); - console.log("\ntotalEvents count - ", events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock} -` - ); - const eventTable = new Table(); - eventTable.push( - [{ colSpan: 2, content: `${this.getType()}s`, hAlign: "center" }], - ["Instance", `${this.netId} chain ${this.amount} ${this.currency.toUpperCase()}`], - ["Anonymity set", `${events.length} equal user ${this.getType().toLowerCase()}s`], - [{ colSpan: 2, content: `Latest ${this.getType().toLowerCase()}s` }], - ...events.slice(events.length - 10).reverse().map(({ timestamp }, index) => { - const eventIndex = events.length - index; - const eventTime = moment.unix(timestamp).fromNow(); - return [eventIndex, eventTime]; - }) - ); - console.log(eventTable.toString() + "\n"); - if (this.userDirectory) { - yield saveUserFile({ - fileName: instanceName + ".json", - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + "\n" - }); - } - }); - } -} -class NodeEchoService extends BaseEchoService { - constructor({ - netId, - provider, - graphApi, - subgraphName, - Echoer, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory - }) { - super({ - netId, - provider, - graphApi, - subgraphName, - Echoer, - deployedBlock, - fetchDataOptions - }); - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - updateEventProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock} -`); - } - } - } - updateGraphProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock} -`); - } - } - } - getEventsFromDB() { - return __async$9(this, null, function* () { - if (!this.userDirectory) { - console.log(`Updating events for ${this.netId} chain echo events -`); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const savedEvents = yield loadSavedEvents({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`Updating events for ${this.netId} chain echo events -`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock} -`); - return savedEvents; - }); - } - getEventsFromCache() { - return __async$9(this, null, function* () { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const cachedEvents = yield loadCachedEvents({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock} -`); - return cachedEvents; - }); - } - saveEvents(_0) { - return __async$9(this, arguments, function* ({ events, lastBlock }) { - const instanceName = this.getInstanceName(); - console.log("\ntotalEvents count - ", events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock} -` - ); - const eventTable = new Table(); - eventTable.push( - [{ colSpan: 2, content: "Echo Accounts", hAlign: "center" }], - ["Network", `${this.netId} chain`], - ["Events", `${events.length} events`], - [{ colSpan: 2, content: "Latest events" }], - ...events.slice(events.length - 10).reverse().map(({ blockNumber }, index) => { - const eventIndex = events.length - index; - return [eventIndex, blockNumber]; - }) - ); - console.log(eventTable.toString() + "\n"); - if (this.userDirectory) { - yield saveUserFile({ - fileName: instanceName + ".json", - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + "\n" - }); - } - }); - } -} -class NodeEncryptedNotesService extends BaseEncryptedNotesService { - constructor({ - netId, - provider, - graphApi, - subgraphName, - Router, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory - }) { - super({ - netId, - provider, - graphApi, - subgraphName, - Router, - deployedBlock, - fetchDataOptions - }); - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - updateEventProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock} -`); - } - } - } - updateGraphProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock} -`); - } - } - } - getEventsFromDB() { - return __async$9(this, null, function* () { - if (!this.userDirectory) { - console.log(`Updating events for ${this.netId} chain encrypted events -`); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const savedEvents = yield loadSavedEvents({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`Updating events for ${this.netId} chain encrypted events -`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock} -`); - return savedEvents; - }); - } - getEventsFromCache() { - return __async$9(this, null, function* () { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const cachedEvents = yield loadCachedEvents({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock} -`); - return cachedEvents; - }); - } - saveEvents(_0) { - return __async$9(this, arguments, function* ({ events, lastBlock }) { - const instanceName = this.getInstanceName(); - console.log("\ntotalEvents count - ", events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock} -` - ); - const eventTable = new Table(); - eventTable.push( - [{ colSpan: 2, content: "Encrypted Notes", hAlign: "center" }], - ["Network", `${this.netId} chain`], - ["Events", `${events.length} events`], - [{ colSpan: 2, content: "Latest events" }], - ...events.slice(events.length - 10).reverse().map(({ blockNumber }, index) => { - const eventIndex = events.length - index; - return [eventIndex, blockNumber]; - }) - ); - console.log(eventTable.toString() + "\n"); - if (this.userDirectory) { - yield saveUserFile({ - fileName: instanceName + ".json", - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + "\n" - }); - } - }); - } -} -class NodeGovernanceService extends BaseGovernanceService { - constructor({ - netId, - provider, - graphApi, - subgraphName, - Governance, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory - }) { - super({ - netId, - provider, - graphApi, - subgraphName, - Governance, - deployedBlock, - fetchDataOptions - }); - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - updateEventProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock} -`); - } - } - } - updateGraphProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock} -`); - } - } - } - updateTransactionProgress({ currentIndex, totalIndex }) { - if (totalIndex) { - console.log(`Fetched ${currentIndex} governance txs of ${totalIndex}`); - } - } - getEventsFromDB() { - return __async$9(this, null, function* () { - if (!this.userDirectory) { - console.log(`Updating events for ${this.netId} chain governance events -`); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const savedEvents = yield loadSavedEvents({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`Updating events for ${this.netId} chain governance events -`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock} -`); - return savedEvents; - }); - } - getEventsFromCache() { - return __async$9(this, null, function* () { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const cachedEvents = yield loadCachedEvents({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock} -`); - return cachedEvents; - }); - } - saveEvents(_0) { - return __async$9(this, arguments, function* ({ events, lastBlock }) { - const instanceName = this.getInstanceName(); - console.log("\ntotalEvents count - ", events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock} -` - ); - const eventTable = new Table(); - eventTable.push( - [{ colSpan: 2, content: "Governance Events", hAlign: "center" }], - ["Network", `${this.netId} chain`], - ["Events", `${events.length} events`], - [{ colSpan: 2, content: "Latest events" }], - ...events.slice(events.length - 10).reverse().map(({ blockNumber }, index) => { - const eventIndex = events.length - index; - return [eventIndex, blockNumber]; - }) - ); - console.log(eventTable.toString() + "\n"); - if (this.userDirectory) { - yield saveUserFile({ - fileName: instanceName + ".json", - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + "\n" - }); - } - }); - } -} -class NodeRegistryService extends BaseRegistryService { - constructor({ - netId, - provider, - graphApi, - subgraphName, - RelayerRegistry, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory - }) { - super({ - netId, - provider, - graphApi, - subgraphName, - RelayerRegistry, - deployedBlock, - fetchDataOptions - }); - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - updateEventProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock} -`); - } - } - } - updateGraphProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock} -`); - } - } - } - getEventsFromDB() { - return __async$9(this, null, function* () { - if (!this.userDirectory) { - console.log(`Updating events for ${this.netId} chain registry events -`); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const savedEvents = yield loadSavedEvents({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`Updating events for ${this.netId} chain registry events -`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock} -`); - return savedEvents; - }); - } - getEventsFromCache() { - return __async$9(this, null, function* () { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const cachedEvents = yield loadCachedEvents({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock} -`); - return cachedEvents; - }); - } - saveEvents(_0) { - return __async$9(this, arguments, function* ({ events, lastBlock }) { - const instanceName = this.getInstanceName(); - console.log("\ntotalEvents count - ", events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock} -` - ); - const eventTable = new Table(); - eventTable.push( - [{ colSpan: 2, content: "Registered Relayers", hAlign: "center" }], - ["Network", `${this.netId} chain`], - ["Events", `${events.length} events`], - [{ colSpan: 2, content: "Latest events" }], - ...events.slice(events.length - 10).reverse().map(({ blockNumber }, index) => { - const eventIndex = events.length - index; - return [eventIndex, blockNumber]; - }) - ); - console.log(eventTable.toString() + "\n"); - if (this.userDirectory) { - yield saveUserFile({ - fileName: instanceName + ".json", - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + "\n" - }); - } - }); - } -} - -var __defProp$2 = Object.defineProperty; -var __getOwnPropSymbols$2 = Object.getOwnPropertySymbols; -var __hasOwnProp$2 = Object.prototype.hasOwnProperty; -var __propIsEnum$2 = Object.prototype.propertyIsEnumerable; -var __defNormalProp$2 = (obj, key, value) => key in obj ? __defProp$2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; -var __spreadValues$2 = (a, b) => { +var __defProp$1 = Object.defineProperty; +var __getOwnPropSymbols$1 = Object.getOwnPropertySymbols; +var __hasOwnProp$1 = Object.prototype.hasOwnProperty; +var __propIsEnum$1 = Object.prototype.propertyIsEnumerable; +var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; +var __spreadValues$1 = (a, b) => { for (var prop in b || (b = {})) - if (__hasOwnProp$2.call(b, prop)) - __defNormalProp$2(a, prop, b[prop]); - if (__getOwnPropSymbols$2) - for (var prop of __getOwnPropSymbols$2(b)) { - if (__propIsEnum$2.call(b, prop)) - __defNormalProp$2(a, prop, b[prop]); + if (__hasOwnProp$1.call(b, prop)) + __defNormalProp$1(a, prop, b[prop]); + if (__getOwnPropSymbols$1) + for (var prop of __getOwnPropSymbols$1(b)) { + if (__propIsEnum$1.call(b, prop)) + __defNormalProp$1(a, prop, b[prop]); } return a; }; @@ -6422,10 +5597,10 @@ function addNetwork(newConfig) { enabledChains.push( ...Object.keys(newConfig).map((netId) => Number(netId)).filter((netId) => !enabledChains.includes(netId)) ); - customConfig = __spreadValues$2(__spreadValues$2({}, customConfig), newConfig); + customConfig = __spreadValues$1(__spreadValues$1({}, customConfig), newConfig); } function getNetworkConfig() { - const allConfig = __spreadValues$2(__spreadValues$2({}, defaultConfig), customConfig); + const allConfig = __spreadValues$1(__spreadValues$1({}, defaultConfig), customConfig); return enabledChains.reduce((acc, curr) => { acc[curr] = allConfig[curr]; return acc; @@ -6582,7 +5757,7 @@ ajv.addKeyword({ errors: true }); -var __async$8 = (__this, __arguments, generator) => { +var __async$7 = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -6607,13 +5782,13 @@ class Pedersen { this.pedersenPromise = this.initPedersen(); } initPedersen() { - return __async$8(this, null, function* () { + return __async$7(this, null, function* () { this.pedersenHash = yield buildPedersenHash(); this.babyJub = this.pedersenHash.babyJub; }); } unpackPoint(buffer) { - return __async$8(this, null, function* () { + return __async$7(this, null, function* () { var _a, _b; yield this.pedersenPromise; return (_b = this.babyJub) == null ? void 0 : _b.unpackPoint((_a = this.pedersenHash) == null ? void 0 : _a.hash(buffer)); @@ -6626,13 +5801,13 @@ class Pedersen { } const pedersen = new Pedersen(); function buffPedersenHash(buffer) { - return __async$8(this, null, function* () { + return __async$7(this, null, function* () { const [hash] = yield pedersen.unpackPoint(buffer); return pedersen.toStringBuffer(hash); }); } -var __async$7 = (__this, __arguments, generator) => { +var __async$6 = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -6653,7 +5828,7 @@ var __async$7 = (__this, __arguments, generator) => { }); }; function createDeposit(_0) { - return __async$7(this, arguments, function* ({ nullifier, secret }) { + return __async$6(this, arguments, function* ({ nullifier, secret }) { const preimage = new Uint8Array([...leInt2Buff(nullifier), ...leInt2Buff(secret)]); const noteHex = toFixedHex(bytesToBN(preimage), 62); const commitment = BigInt(yield buffPedersenHash(preimage)); @@ -6713,7 +5888,7 @@ class Deposit { ); } static createNote(_0) { - return __async$7(this, arguments, function* ({ currency, amount, netId, nullifier, secret }) { + return __async$6(this, arguments, function* ({ currency, amount, netId, nullifier, secret }) { if (!nullifier) { nullifier = rBigInt(31); } @@ -6740,7 +5915,7 @@ class Deposit { }); } static parseNote(noteString) { - return __async$7(this, null, function* () { + return __async$6(this, null, function* () { const noteRegex = new RegExp("tornado-(?\\w+)-(?[\\d.]+)-(?\\d+)-0x(?[0-9a-fA-F]{124})", "g"); const match = noteRegex.exec(noteString); if (!match) { @@ -7000,7 +6175,7 @@ class TornadoFeeOracle { } } -var __async$6 = (__this, __arguments, generator) => { +var __async$5 = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -7025,7 +6200,7 @@ class Mimc { this.mimcPromise = this.initMimc(); } initMimc() { - return __async$6(this, null, function* () { + return __async$5(this, null, function* () { this.sponge = yield buildMimcSponge(); this.hash = (left, right) => { var _a, _b; @@ -7034,7 +6209,7 @@ class Mimc { }); } getHash() { - return __async$6(this, null, function* () { + return __async$5(this, null, function* () { yield this.mimcPromise; return { sponge: this.sponge, @@ -7045,7 +6220,7 @@ class Mimc { } const mimc = new Mimc(); -var __async$5 = (__this, __arguments, generator) => { +var __async$4 = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -7088,7 +6263,7 @@ class MerkleTreeService { this.merkleWorkerPath = merkleWorkerPath; } createTree(events) { - return __async$5(this, null, function* () { + return __async$4(this, null, function* () { const { hash: hashFunction } = yield mimc.getHash(); if (this.merkleWorkerPath) { console.log("Using merkleWorker\n"); @@ -7140,7 +6315,7 @@ class MerkleTreeService { }); } createPartialTree(_0) { - return __async$5(this, arguments, function* ({ edge, elements }) { + return __async$4(this, arguments, function* ({ edge, elements }) { const { hash: hashFunction } = yield mimc.getHash(); if (this.merkleWorkerPath) { console.log("Using merkleWorker\n"); @@ -7194,7 +6369,7 @@ class MerkleTreeService { }); } verifyTree(events) { - return __async$5(this, null, function* () { + return __async$4(this, null, function* () { console.log( ` Creating deposit tree for ${this.netId} ${this.amount} ${this.currency.toUpperCase()} would take a while @@ -7214,72 +6389,7 @@ Creating deposit tree for ${this.netId} ${this.amount} ${this.currency.toUpperCa } } -function parseNumber(value) { - if (!value || isNaN(Number(value))) { - throw new InvalidArgumentError("Invalid Number"); - } - return Number(value); -} -function parseUrl(value) { - if (!value || !validateUrl(value, ["http:", "https:"])) { - throw new InvalidArgumentError("Invalid URL"); - } - return value; -} -function parseRelayer(value) { - if (!value || !(value.endsWith(".eth") || validateUrl(value, ["http:", "https:"]))) { - throw new InvalidArgumentError("Invalid Relayer ETH address or URL"); - } - return value; -} -function parseAddress(value) { - if (!value) { - throw new InvalidArgumentError("Invalid Address"); - } - try { - return getAddress(value); - } catch (e) { - throw new InvalidArgumentError("Invalid Address"); - } -} -function parseMnemonic(value) { - if (!value) { - throw new InvalidArgumentError("Invalid Mnemonic"); - } - try { - Mnemonic.fromPhrase(value); - } catch (e) { - throw new InvalidArgumentError("Invalid Mnemonic"); - } - return value; -} -function parseKey(value) { - if (!value) { - throw new InvalidArgumentError("Invalid Private Key"); - } - if (value.length === 64) { - value = "0x" + value; - } - try { - computeAddress(value); - } catch (e) { - throw new InvalidArgumentError("Invalid Private Key"); - } - return value; -} -function parseRecoveryKey(value) { - if (!value) { - throw new InvalidArgumentError("Invalid Recovery Key"); - } - try { - computeAddress("0x" + value); - } catch (e) { - throw new InvalidArgumentError("Invalid Recovery Key"); - } - return value; -} - -var __async$4 = (__this, __arguments, generator) => { +var __async$3 = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -7306,7 +6416,7 @@ class TokenPriceOracle { this.oracle = oracle; } fetchPrices(tokens) { - return __async$4(this, null, function* () { + return __async$3(this, null, function* () { if (!this.oracle) { return new Promise((resolve) => resolve(tokens.map(() => parseEther("0.0001")))); } @@ -7325,26 +6435,26 @@ class TokenPriceOracle { } } -var __defProp$1 = Object.defineProperty; -var __defProps$1 = Object.defineProperties; -var __getOwnPropDescs$1 = Object.getOwnPropertyDescriptors; -var __getOwnPropSymbols$1 = Object.getOwnPropertySymbols; -var __hasOwnProp$1 = Object.prototype.hasOwnProperty; -var __propIsEnum$1 = Object.prototype.propertyIsEnumerable; -var __defNormalProp$1 = (obj, key, value) => key in obj ? __defProp$1(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; -var __spreadValues$1 = (a, b) => { +var __defProp = Object.defineProperty; +var __defProps = Object.defineProperties; +var __getOwnPropDescs = Object.getOwnPropertyDescriptors; +var __getOwnPropSymbols = Object.getOwnPropertySymbols; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __propIsEnum = Object.prototype.propertyIsEnumerable; +var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; +var __spreadValues = (a, b) => { for (var prop in b || (b = {})) - if (__hasOwnProp$1.call(b, prop)) - __defNormalProp$1(a, prop, b[prop]); - if (__getOwnPropSymbols$1) - for (var prop of __getOwnPropSymbols$1(b)) { - if (__propIsEnum$1.call(b, prop)) - __defNormalProp$1(a, prop, b[prop]); + if (__hasOwnProp.call(b, prop)) + __defNormalProp(a, prop, b[prop]); + if (__getOwnPropSymbols) + for (var prop of __getOwnPropSymbols(b)) { + if (__propIsEnum.call(b, prop)) + __defNormalProp(a, prop, b[prop]); } return a; }; -var __spreadProps$1 = (a, b) => __defProps$1(a, __getOwnPropDescs$1(b)); -var __async$3 = (__this, __arguments, generator) => { +var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); +var __async$2 = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -7426,13 +6536,13 @@ class RelayerClient { this.fetchDataOptions = fetchDataOptions2; } askRelayerStatus(_0) { - return __async$3(this, arguments, function* ({ + return __async$2(this, arguments, function* ({ hostname, relayerAddress }) { var _a, _b; const url = `https://${!hostname.endsWith("/") ? hostname + "/" : hostname}`; - const rawStatus = yield fetchData(`${url}status`, __spreadProps$1(__spreadValues$1({}, this.fetchDataOptions), { + const rawStatus = yield fetchData(`${url}status`, __spreadProps(__spreadValues({}, this.fetchDataOptions), { headers: { "Content-Type": "application/json, application/x-www-form-urlencoded" }, @@ -7443,7 +6553,7 @@ class RelayerClient { if (!statusValidator(rawStatus)) { throw new Error("Invalid status schema"); } - const status = __spreadProps$1(__spreadValues$1({}, rawStatus), { + const status = __spreadProps(__spreadValues({}, rawStatus), { url }); if (status.currentQueue > 5) { @@ -7462,7 +6572,7 @@ class RelayerClient { }); } filterRelayer(curr, relayer, subdomains, debugRelayer = false) { - return __async$3(this, null, function* () { + return __async$2(this, null, function* () { var _a; const { relayerEnsSubdomain } = this.config; const subdomainIndex = subdomains.indexOf(relayerEnsSubdomain); @@ -7515,7 +6625,7 @@ class RelayerClient { }); } getValidRelayers(relayers, subdomains, debugRelayer = false) { - return __async$3(this, null, function* () { + return __async$2(this, null, function* () { const relayersSet = /* @__PURE__ */ new Set(); const uniqueRelayers = relayers.reverse().filter(({ ensName }) => { if (!relayersSet.has(ensName)) { @@ -7546,9 +6656,9 @@ class RelayerClient { return pickWeightedRandomRelayer(relayers, this.netId); } tornadoWithdraw(_0) { - return __async$3(this, arguments, function* ({ contract, proof, args }) { + return __async$2(this, arguments, function* ({ contract, proof, args }) { const { url } = this.selectedRelayer; - const withdrawResponse = yield fetchData(`${url}v1/tornadoWithdraw`, __spreadProps$1(__spreadValues$1({}, this.fetchDataOptions), { + const withdrawResponse = yield fetchData(`${url}v1/tornadoWithdraw`, __spreadProps(__spreadValues({}, this.fetchDataOptions), { method: "POST", headers: { "Content-Type": "application/json" @@ -7568,7 +6678,7 @@ class RelayerClient { console.log(`Job submitted: ${jobUrl} `); while (!relayerStatus || !["FAILED", "CONFIRMED"].includes(relayerStatus)) { - const jobResponse = yield fetchData(jobUrl, __spreadProps$1(__spreadValues$1({}, this.fetchDataOptions), { + const jobResponse = yield fetchData(jobUrl, __spreadProps(__spreadValues({}, this.fetchDataOptions), { method: "GET", headers: { "Content-Type": "application/json" @@ -7608,7 +6718,7 @@ class RelayerClient { } } -var __async$2 = (__this, __arguments, generator) => { +var __async$1 = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { try { @@ -7629,7 +6739,7 @@ var __async$2 = (__this, __arguments, generator) => { }); }; function getTokenBalances(_0) { - return __async$2(this, arguments, function* ({ + return __async$1(this, arguments, function* ({ provider, Multicall: Multicall2, currencyName, @@ -7692,120 +6802,6 @@ function getTokenBalances(_0) { }); } -var __defProp = Object.defineProperty; -var __defProps = Object.defineProperties; -var __getOwnPropDescs = Object.getOwnPropertyDescriptors; -var __getOwnPropSymbols = Object.getOwnPropertySymbols; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __propIsEnum = Object.prototype.propertyIsEnumerable; -var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; -var __spreadValues = (a, b) => { - for (var prop in b || (b = {})) - if (__hasOwnProp.call(b, prop)) - __defNormalProp(a, prop, b[prop]); - if (__getOwnPropSymbols) - for (var prop of __getOwnPropSymbols(b)) { - if (__propIsEnum.call(b, prop)) - __defNormalProp(a, prop, b[prop]); - } - return a; -}; -var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); -var __objRest = (source, exclude) => { - var target = {}; - for (var prop in source) - if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0) - target[prop] = source[prop]; - if (source != null && __getOwnPropSymbols) - for (var prop of __getOwnPropSymbols(source)) { - if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop)) - target[prop] = source[prop]; - } - return target; -}; -var __async$1 = (__this, __arguments, generator) => { - return new Promise((resolve, reject) => { - var fulfilled = (value) => { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - }; - var rejected = (value) => { - try { - step(generator.throw(value)); - } catch (e) { - reject(e); - } - }; - var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected); - step((generator = generator.apply(__this, __arguments)).next()); - }); -}; -class TreeCache { - constructor({ netId, amount, currency, userDirectory, PARTS_COUNT = 4 }) { - this.netId = netId; - this.amount = amount; - this.currency = currency; - this.userDirectory = userDirectory; - this.PARTS_COUNT = PARTS_COUNT; - } - getInstanceName() { - return `deposits_${this.netId}_${this.currency}_${this.amount}`; - } - createTree(events, tree) { - return __async$1(this, null, function* () { - const bloom = new BloomFilter(events.length); - console.log(`Creating cached tree for ${this.getInstanceName()} -`); - const eventsData = events.reduce( - (acc, _a, i) => { - var _b = _a, { leafIndex, commitment } = _b, rest = __objRest(_b, ["leafIndex", "commitment"]); - if (leafIndex !== i) { - throw new Error(`leafIndex (${leafIndex}) !== i (${i})`); - } - acc[commitment] = __spreadProps(__spreadValues({}, rest), { leafIndex }); - return acc; - }, - {} - ); - const slices = tree.getTreeSlices(this.PARTS_COUNT); - yield Promise.all( - slices.map((slice, index) => __async$1(this, null, function* () { - const metadata = slice.elements.reduce((acc, curr) => { - if (index < this.PARTS_COUNT - 1) { - bloom.add(curr); - } - acc.push(eventsData[curr]); - return acc; - }, []); - const dataString2 = JSON.stringify( - __spreadProps(__spreadValues({}, slice), { - metadata - }), - null, - 2 - ) + "\n"; - const fileName2 = `${this.getInstanceName()}_slice${index + 1}.json`; - yield saveUserFile({ - fileName: fileName2, - userDirectory: this.userDirectory, - dataString: dataString2 - }); - })) - ); - const dataString = bloom.serialize() + "\n"; - const fileName = `${this.getInstanceName()}_bloom.json`; - yield saveUserFile({ - fileName, - userDirectory: this.userDirectory, - dataString - }); - }); - } -} - var __async = (__this, __arguments, generator) => { return new Promise((resolve, reject) => { var fulfilled = (value) => { @@ -7868,4 +6864,4 @@ function calculateSnarkProof(input, circuit, provingKey) { }); } -export { BaseEchoService, BaseEncryptedNotesService, BaseEventsService, BaseGovernanceService, BaseRegistryService, BaseTornadoService, BatchBlockService, BatchEventsService, BatchTransactionService, DEPOSIT, Deposit, ENS__factory, ERC20__factory, GET_DEPOSITS, GET_ECHO_EVENTS, GET_ENCRYPTED_NOTES, GET_GOVERNANCE_APY, GET_GOVERNANCE_EVENTS, GET_NOTE_ACCOUNTS, GET_REGISTERED, GET_STATISTIC, GET_WITHDRAWALS, GasPriceOracle__factory, Invoice, MIN_STAKE_BALANCE, MerkleTreeService, Mimc, Multicall__factory, NetId, NodeEchoService, NodeEncryptedNotesService, NodeGovernanceService, NodeRegistryService, NodeTornadoService, NoteAccount, OffchainOracle__factory, OvmGasPriceOracle__factory, Pedersen, RelayerClient, ReverseRecords__factory, TokenPriceOracle, TornadoBrowserProvider, TornadoFeeOracle, TornadoRpcSigner, TornadoVoidSigner, TornadoWallet, TreeCache, WITHDRAWAL, _META, addNetwork, ajv, base64ToBytes, bigIntReplacer, bnToBytes, buffPedersenHash, bufferToBytes, bytesToBN, bytesToBase64, bytesToHex, calculateScore, calculateSnarkProof, chunk, concatBytes, convertETHToTokenAmount, createDeposit, crypto, customConfig, defaultConfig, defaultUserAgent, download, enabledChains, existsAsync, index as factories, fetch, fetchData, fetchGetUrlFunc, getAllDeposits, getAllEncryptedNotes, getAllGovernanceEvents, getAllGraphEchoEvents, getAllRegisters, getAllWithdrawals, getConfig, getDeposits, getEncryptedNotes, getGasOraclePlugin, getGovernanceEvents, getGraphEchoEvents, getHttpAgent, getInstanceByAddress, getMeta, getNetworkConfig, getNoteAccounts, getProvider, getProviderWithNetId, getRegisters, getStatistic, getStatusSchema, getSubdomains, getSupportedInstances, getTokenBalances, getWeightRandom, getWithdrawals, hexToBytes, initGroth16, isNode, isRelayerUpdated, jobsSchema, leBuff2Int, leInt2Buff, loadCachedEvents, loadSavedEvents, mimc, multicall, packEncryptedMessage, parseAddress, parseKey, parseMnemonic, parseNumber, parseRecoveryKey, parseRelayer, parseSemanticVersion, parseUrl, pedersen, pickWeightedRandomRelayer, populateTransaction, queryGraph, rBigInt, saveUserFile, sleep, substring, toFixedHex, toFixedLength, unpackEncryptedMessage, unzipAsync, validateUrl, zipAsync }; +export { BaseEchoService, BaseEncryptedNotesService, BaseEventsService, BaseGovernanceService, BaseRegistryService, BaseTornadoService, BatchBlockService, BatchEventsService, BatchTransactionService, DEPOSIT, Deposit, ENS__factory, ERC20__factory, GET_DEPOSITS, GET_ECHO_EVENTS, GET_ENCRYPTED_NOTES, GET_GOVERNANCE_APY, GET_GOVERNANCE_EVENTS, GET_NOTE_ACCOUNTS, GET_REGISTERED, GET_STATISTIC, GET_WITHDRAWALS, GasPriceOracle__factory, Invoice, MIN_STAKE_BALANCE, MerkleTreeService, Mimc, Multicall__factory, NetId, NoteAccount, OffchainOracle__factory, OvmGasPriceOracle__factory, Pedersen, RelayerClient, ReverseRecords__factory, TokenPriceOracle, TornadoBrowserProvider, TornadoFeeOracle, TornadoRpcSigner, TornadoVoidSigner, TornadoWallet, WITHDRAWAL, _META, addNetwork, ajv, base64ToBytes, bigIntReplacer, bnToBytes, buffPedersenHash, bufferToBytes, bytesToBN, bytesToBase64, bytesToHex, calculateScore, calculateSnarkProof, chunk, concatBytes, convertETHToTokenAmount, createDeposit, crypto, customConfig, defaultConfig, defaultUserAgent, enabledChains, index as factories, fetch, fetchData, fetchGetUrlFunc, getAllDeposits, getAllEncryptedNotes, getAllGovernanceEvents, getAllGraphEchoEvents, getAllRegisters, getAllWithdrawals, getConfig, getDeposits, getEncryptedNotes, getGasOraclePlugin, getGovernanceEvents, getGraphEchoEvents, getHttpAgent, getInstanceByAddress, getMeta, getNetworkConfig, getNoteAccounts, getProvider, getProviderWithNetId, getRegisters, getStatistic, getStatusSchema, getSubdomains, getSupportedInstances, getTokenBalances, getWeightRandom, getWithdrawals, hexToBytes, initGroth16, isNode, isRelayerUpdated, jobsSchema, leBuff2Int, leInt2Buff, mimc, multicall, packEncryptedMessage, parseSemanticVersion, pedersen, pickWeightedRandomRelayer, populateTransaction, queryGraph, rBigInt, sleep, substring, toFixedHex, toFixedLength, unpackEncryptedMessage, validateUrl }; diff --git a/dist/index.umd.js b/dist/index.umd.js index 481a854..ea9d186 100644 --- a/dist/index.umd.js +++ b/dist/index.umd.js @@ -31352,245 +31352,6 @@ b2wasm.ready(function (err) { }) -/***/ }), - -/***/ 65403: -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var bloom = __webpack_require__(40710); -module.exports = bloom; - -/***/ }), - -/***/ 88217: -/***/ ((module) => { - -/** -* A simple bitview for Array buffer. -* @author: Joy Ghosh. -* @version: 0.0.1 -*/ - -var BitView = function(buffer){ - this.buffer = buffer; - this.unit8 = new Uint8Array(this.buffer); -} - -/** -* Returns the bit value at position 'index'. -*/ -BitView.prototype.get = function(index){ - var value = this.unit8[index >> 3]; - var offset = index & 0x7; - return ((value >> (7-offset)) & 1); -} - -/** -* Sets the bit value at specified position 'index'. -*/ -BitView.prototype.set = function(index){ - var offset = index & 0x7; - this.unit8[index >> 3] |= (0x80 >> offset); -} - -/** -* Clears the bit at position 'index'. -*/ -BitView.prototype.clear = function(index){ - var offset = index & 0x7; - this.unit8[index >> 3] &= ~(0x80 >> offset); -} - -/** -* Returns the byte length of this array buffer. -*/ -BitView.prototype.length = function(){ - return this.unit8.byteLength; -} - -/** -* Returns the array buffer. -*/ -BitView.prototype.view = function(){ - return this.unit8; -} - -module.exports = BitView; - - -/***/ }), - -/***/ 40710: -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -/** -* Bloom filter. -* @author: Joy Ghosh -* @version: 0.0.1 -*/ - -var BitView = __webpack_require__(88217); -var fnv_1a = __webpack_require__(89897); -var one_at_a_time_hash = __webpack_require__(81397); - -//Constants. -const BITS_IN_BYTE = 8; -const FALSE_POSITIVE_TOLERANCE = 0.000001; - -/** -* Bloom filter object. -* n represents number of elements in this filter. -*/ -var BloomFilter = function(n, false_postive_tolerance = FALSE_POSITIVE_TOLERANCE){ - //Bits in Bloom filter. - this.m = Math.ceil((-2)*n*Math.log(false_postive_tolerance)); - //Number of hash functions. - this.k = Math.ceil(0.7*(this.m/n)); - - //Normalize size. - this.size = (this.m > BITS_IN_BYTE) ? (Math.ceil(this.m/BITS_IN_BYTE)) : 1; //default size is a byte. - - //Initialize bit array for filter. - this.bitview = new BitView(new ArrayBuffer(this.size)); -} - -//Generate hash value. -BloomFilter.prototype.calculateHash = function(x,m,i){ - //Double hash technique. - return ((fnv_1a(x) + (i*one_at_a_time_hash(x)))%m); -} - -//Looks for membership. -BloomFilter.prototype.test = function(data){ - var hash = data; - for(var i=0; i { - -/** -Fowler-Noll-Vo hash function. -@author: Joy Ghosh -@version: 0.0.1 -*/ - -//FNV constants. -const FNV_PRIME = 16777619; -const FNV_OFFSET_BASIS = 2166136261; - -/** -FNV hash function. (32-bit version) -FNV step 1: hash = hash XOR byte_of_data. -FNV step 2: hash = hash * FNV_Prime. -*/ -function fnv_1a(value){ - - var hash = FNV_OFFSET_BASIS; - for(var i=0; i>> 0; -} - -//FNV step 1:hash = hash XOR byte_of_data. -function fnv_xor(hash, byte_of_data){ - return (hash ^ byte_of_data); -} - -//FNV step 2: hash = hash * FNV_Prime. -function fnv_multiply(hash){ - hash += (hash << 1) + (hash << 4) + (hash << 7) + (hash << 8) + (hash << 24); - return hash; -} - -module.exports = fnv_1a; - -/***/ }), - -/***/ 81397: -/***/ ((module) => { - -/** -Jenkins one_at_a_time hash function. -@author: Joy Ghosh -@version: 0.0.1 -*/ - -/** -* Jenkins's one at a time hash function. -*/ -function one_at_a_time_hash(key){ - - var hash = 0; - for(var i=0;i> 6); - } - - hash += (hash << 3); - hash = hash ^ (hash >> 11); - hash += (hash << 15); - return hash; -} - -module.exports = one_at_a_time_hash; - /***/ }), /***/ 39404: @@ -60718,2843 +60479,6 @@ class BatchEventsService { } -/***/ }), - -/***/ 11489: -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; - -// EXPORTS -__webpack_require__.d(__webpack_exports__, { - RG: () => (/* binding */ download), - hn: () => (/* binding */ existsAsync), - sw: () => (/* binding */ loadCachedEvents), - rx: () => (/* binding */ loadSavedEvents), - jj: () => (/* binding */ saveUserFile), - fY: () => (/* binding */ unzipAsync), - a8: () => (/* binding */ zipAsync) -}); - -// EXTERNAL MODULE: path (ignored) -var path_ignored_ = __webpack_require__(21628); -var path_ignored_default = /*#__PURE__*/__webpack_require__.n(path_ignored_); -// EXTERNAL MODULE: fs/promises (ignored) -var promises_ignored_ = __webpack_require__(26840); -;// CONCATENATED MODULE: ./node_modules/fflate/esm/browser.js -// DEFLATE is a complex format; to read this code, you should probably check the RFC first: -// https://tools.ietf.org/html/rfc1951 -// You may also wish to take a look at the guide I made about this program: -// https://gist.github.com/101arrowz/253f31eb5abc3d9275ab943003ffecad -// Some of the following code is similar to that of UZIP.js: -// https://github.com/photopea/UZIP.js -// However, the vast majority of the codebase has diverged from UZIP.js to increase performance and reduce bundle size. -// Sometimes 0 will appear where -1 would be more appropriate. This is because using a uint -// is better for memory in most engines (I *think*). -var ch2 = {}; -var wk = (function (c, id, msg, transfer, cb) { - var w = new Worker(ch2[id] || (ch2[id] = URL.createObjectURL(new Blob([ - c + ';addEventListener("error",function(e){e=e.error;postMessage({$e$:[e.message,e.code,e.stack]})})' - ], { type: 'text/javascript' })))); - w.onmessage = function (e) { - var d = e.data, ed = d.$e$; - if (ed) { - var err = new Error(ed[0]); - err['code'] = ed[1]; - err.stack = ed[2]; - cb(err, null); - } - else - cb(null, d); - }; - w.postMessage(msg, transfer); - return w; -}); - -// aliases for shorter compressed code (most minifers don't do this) -var u8 = Uint8Array, u16 = Uint16Array, i32 = Int32Array; -// fixed length extra bits -var fleb = new u8([0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, /* unused */ 0, 0, /* impossible */ 0]); -// fixed distance extra bits -var fdeb = new u8([0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13, /* unused */ 0, 0]); -// code length index map -var clim = new u8([16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]); -// get base, reverse index map from extra bits -var freb = function (eb, start) { - var b = new u16(31); - for (var i = 0; i < 31; ++i) { - b[i] = start += 1 << eb[i - 1]; - } - // numbers here are at max 18 bits - var r = new i32(b[30]); - for (var i = 1; i < 30; ++i) { - for (var j = b[i]; j < b[i + 1]; ++j) { - r[j] = ((j - b[i]) << 5) | i; - } - } - return { b: b, r: r }; -}; -var _a = freb(fleb, 2), fl = _a.b, revfl = _a.r; -// we can ignore the fact that the other numbers are wrong; they never happen anyway -fl[28] = 258, revfl[258] = 28; -var _b = freb(fdeb, 0), fd = _b.b, revfd = _b.r; -// map of value to reverse (assuming 16 bits) -var rev = new u16(32768); -for (var i = 0; i < 32768; ++i) { - // reverse table algorithm from SO - var x = ((i & 0xAAAA) >> 1) | ((i & 0x5555) << 1); - x = ((x & 0xCCCC) >> 2) | ((x & 0x3333) << 2); - x = ((x & 0xF0F0) >> 4) | ((x & 0x0F0F) << 4); - rev[i] = (((x & 0xFF00) >> 8) | ((x & 0x00FF) << 8)) >> 1; -} -// create huffman tree from u8 "map": index -> code length for code index -// mb (max bits) must be at most 15 -// TODO: optimize/split up? -var hMap = (function (cd, mb, r) { - var s = cd.length; - // index - var i = 0; - // u16 "map": index -> # of codes with bit length = index - var l = new u16(mb); - // length of cd must be 288 (total # of codes) - for (; i < s; ++i) { - if (cd[i]) - ++l[cd[i] - 1]; - } - // u16 "map": index -> minimum code for bit length = index - var le = new u16(mb); - for (i = 1; i < mb; ++i) { - le[i] = (le[i - 1] + l[i - 1]) << 1; - } - var co; - if (r) { - // u16 "map": index -> number of actual bits, symbol for code - co = new u16(1 << mb); - // bits to remove for reverser - var rvb = 15 - mb; - for (i = 0; i < s; ++i) { - // ignore 0 lengths - if (cd[i]) { - // num encoding both symbol and bits read - var sv = (i << 4) | cd[i]; - // free bits - var r_1 = mb - cd[i]; - // start value - var v = le[cd[i] - 1]++ << r_1; - // m is end value - for (var m = v | ((1 << r_1) - 1); v <= m; ++v) { - // every 16 bit value starting with the code yields the same result - co[rev[v] >> rvb] = sv; - } - } - } - } - else { - co = new u16(s); - for (i = 0; i < s; ++i) { - if (cd[i]) { - co[i] = rev[le[cd[i] - 1]++] >> (15 - cd[i]); - } - } - } - return co; -}); -// fixed length tree -var flt = new u8(288); -for (var i = 0; i < 144; ++i) - flt[i] = 8; -for (var i = 144; i < 256; ++i) - flt[i] = 9; -for (var i = 256; i < 280; ++i) - flt[i] = 7; -for (var i = 280; i < 288; ++i) - flt[i] = 8; -// fixed distance tree -var fdt = new u8(32); -for (var i = 0; i < 32; ++i) - fdt[i] = 5; -// fixed length map -var flm = /*#__PURE__*/ hMap(flt, 9, 0), flrm = /*#__PURE__*/ hMap(flt, 9, 1); -// fixed distance map -var fdm = /*#__PURE__*/ hMap(fdt, 5, 0), fdrm = /*#__PURE__*/ hMap(fdt, 5, 1); -// find max of array -var max = function (a) { - var m = a[0]; - for (var i = 1; i < a.length; ++i) { - if (a[i] > m) - m = a[i]; - } - return m; -}; -// read d, starting at bit p and mask with m -var bits = function (d, p, m) { - var o = (p / 8) | 0; - return ((d[o] | (d[o + 1] << 8)) >> (p & 7)) & m; -}; -// read d, starting at bit p continuing for at least 16 bits -var bits16 = function (d, p) { - var o = (p / 8) | 0; - return ((d[o] | (d[o + 1] << 8) | (d[o + 2] << 16)) >> (p & 7)); -}; -// get end of byte -var shft = function (p) { return ((p + 7) / 8) | 0; }; -// typed array slice - allows garbage collector to free original reference, -// while being more compatible than .slice -var slc = function (v, s, e) { - if (s == null || s < 0) - s = 0; - if (e == null || e > v.length) - e = v.length; - // can't use .constructor in case user-supplied - return new u8(v.subarray(s, e)); -}; -/** - * Codes for errors generated within this library - */ -var FlateErrorCode = { - UnexpectedEOF: 0, - InvalidBlockType: 1, - InvalidLengthLiteral: 2, - InvalidDistance: 3, - StreamFinished: 4, - NoStreamHandler: 5, - InvalidHeader: 6, - NoCallback: 7, - InvalidUTF8: 8, - ExtraFieldTooLong: 9, - InvalidDate: 10, - FilenameTooLong: 11, - StreamFinishing: 12, - InvalidZipData: 13, - UnknownCompressionMethod: 14 -}; -// error codes -var ec = [ - 'unexpected EOF', - 'invalid block type', - 'invalid length/literal', - 'invalid distance', - 'stream finished', - 'no stream handler', - , - 'no callback', - 'invalid UTF-8 data', - 'extra field too long', - 'date not in range 1980-2099', - 'filename too long', - 'stream finishing', - 'invalid zip data' - // determined by unknown compression method -]; -; -var err = function (ind, msg, nt) { - var e = new Error(msg || ec[ind]); - e.code = ind; - if (Error.captureStackTrace) - Error.captureStackTrace(e, err); - if (!nt) - throw e; - return e; -}; -// expands raw DEFLATE data -var inflt = function (dat, st, buf, dict) { - // source length dict length - var sl = dat.length, dl = dict ? dict.length : 0; - if (!sl || st.f && !st.l) - return buf || new u8(0); - var noBuf = !buf; - // have to estimate size - var resize = noBuf || st.i != 2; - // no state - var noSt = st.i; - // Assumes roughly 33% compression ratio average - if (noBuf) - buf = new u8(sl * 3); - // ensure buffer can fit at least l elements - var cbuf = function (l) { - var bl = buf.length; - // need to increase size to fit - if (l > bl) { - // Double or set to necessary, whichever is greater - var nbuf = new u8(Math.max(bl * 2, l)); - nbuf.set(buf); - buf = nbuf; - } - }; - // last chunk bitpos bytes - var final = st.f || 0, pos = st.p || 0, bt = st.b || 0, lm = st.l, dm = st.d, lbt = st.m, dbt = st.n; - // total bits - var tbts = sl * 8; - do { - if (!lm) { - // BFINAL - this is only 1 when last chunk is next - final = bits(dat, pos, 1); - // type: 0 = no compression, 1 = fixed huffman, 2 = dynamic huffman - var type = bits(dat, pos + 1, 3); - pos += 3; - if (!type) { - // go to end of byte boundary - var s = shft(pos) + 4, l = dat[s - 4] | (dat[s - 3] << 8), t = s + l; - if (t > sl) { - if (noSt) - err(0); - break; - } - // ensure size - if (resize) - cbuf(bt + l); - // Copy over uncompressed data - buf.set(dat.subarray(s, t), bt); - // Get new bitpos, update byte count - st.b = bt += l, st.p = pos = t * 8, st.f = final; - continue; - } - else if (type == 1) - lm = flrm, dm = fdrm, lbt = 9, dbt = 5; - else if (type == 2) { - // literal lengths - var hLit = bits(dat, pos, 31) + 257, hcLen = bits(dat, pos + 10, 15) + 4; - var tl = hLit + bits(dat, pos + 5, 31) + 1; - pos += 14; - // length+distance tree - var ldt = new u8(tl); - // code length tree - var clt = new u8(19); - for (var i = 0; i < hcLen; ++i) { - // use index map to get real code - clt[clim[i]] = bits(dat, pos + i * 3, 7); - } - pos += hcLen * 3; - // code lengths bits - var clb = max(clt), clbmsk = (1 << clb) - 1; - // code lengths map - var clm = hMap(clt, clb, 1); - for (var i = 0; i < tl;) { - var r = clm[bits(dat, pos, clbmsk)]; - // bits read - pos += r & 15; - // symbol - var s = r >> 4; - // code length to copy - if (s < 16) { - ldt[i++] = s; - } - else { - // copy count - var c = 0, n = 0; - if (s == 16) - n = 3 + bits(dat, pos, 3), pos += 2, c = ldt[i - 1]; - else if (s == 17) - n = 3 + bits(dat, pos, 7), pos += 3; - else if (s == 18) - n = 11 + bits(dat, pos, 127), pos += 7; - while (n--) - ldt[i++] = c; - } - } - // length tree distance tree - var lt = ldt.subarray(0, hLit), dt = ldt.subarray(hLit); - // max length bits - lbt = max(lt); - // max dist bits - dbt = max(dt); - lm = hMap(lt, lbt, 1); - dm = hMap(dt, dbt, 1); - } - else - err(1); - if (pos > tbts) { - if (noSt) - err(0); - break; - } - } - // Make sure the buffer can hold this + the largest possible addition - // Maximum chunk size (practically, theoretically infinite) is 2^17 - if (resize) - cbuf(bt + 131072); - var lms = (1 << lbt) - 1, dms = (1 << dbt) - 1; - var lpos = pos; - for (;; lpos = pos) { - // bits read, code - var c = lm[bits16(dat, pos) & lms], sym = c >> 4; - pos += c & 15; - if (pos > tbts) { - if (noSt) - err(0); - break; - } - if (!c) - err(2); - if (sym < 256) - buf[bt++] = sym; - else if (sym == 256) { - lpos = pos, lm = null; - break; - } - else { - var add = sym - 254; - // no extra bits needed if less - if (sym > 264) { - // index - var i = sym - 257, b = fleb[i]; - add = bits(dat, pos, (1 << b) - 1) + fl[i]; - pos += b; - } - // dist - var d = dm[bits16(dat, pos) & dms], dsym = d >> 4; - if (!d) - err(3); - pos += d & 15; - var dt = fd[dsym]; - if (dsym > 3) { - var b = fdeb[dsym]; - dt += bits16(dat, pos) & (1 << b) - 1, pos += b; - } - if (pos > tbts) { - if (noSt) - err(0); - break; - } - if (resize) - cbuf(bt + 131072); - var end = bt + add; - if (bt < dt) { - var shift = dl - dt, dend = Math.min(dt, end); - if (shift + bt < 0) - err(3); - for (; bt < dend; ++bt) - buf[bt] = dict[shift + bt]; - } - for (; bt < end; ++bt) - buf[bt] = buf[bt - dt]; - } - } - st.l = lm, st.p = lpos, st.b = bt, st.f = final; - if (lm) - final = 1, st.m = lbt, st.d = dm, st.n = dbt; - } while (!final); - // don't reallocate for streams or user buffers - return bt != buf.length && noBuf ? slc(buf, 0, bt) : buf.subarray(0, bt); -}; -// starting at p, write the minimum number of bits that can hold v to d -var wbits = function (d, p, v) { - v <<= p & 7; - var o = (p / 8) | 0; - d[o] |= v; - d[o + 1] |= v >> 8; -}; -// starting at p, write the minimum number of bits (>8) that can hold v to d -var wbits16 = function (d, p, v) { - v <<= p & 7; - var o = (p / 8) | 0; - d[o] |= v; - d[o + 1] |= v >> 8; - d[o + 2] |= v >> 16; -}; -// creates code lengths from a frequency table -var hTree = function (d, mb) { - // Need extra info to make a tree - var t = []; - for (var i = 0; i < d.length; ++i) { - if (d[i]) - t.push({ s: i, f: d[i] }); - } - var s = t.length; - var t2 = t.slice(); - if (!s) - return { t: et, l: 0 }; - if (s == 1) { - var v = new u8(t[0].s + 1); - v[t[0].s] = 1; - return { t: v, l: 1 }; - } - t.sort(function (a, b) { return a.f - b.f; }); - // after i2 reaches last ind, will be stopped - // freq must be greater than largest possible number of symbols - t.push({ s: -1, f: 25001 }); - var l = t[0], r = t[1], i0 = 0, i1 = 1, i2 = 2; - t[0] = { s: -1, f: l.f + r.f, l: l, r: r }; - // efficient algorithm from UZIP.js - // i0 is lookbehind, i2 is lookahead - after processing two low-freq - // symbols that combined have high freq, will start processing i2 (high-freq, - // non-composite) symbols instead - // see https://reddit.com/r/photopea/comments/ikekht/uzipjs_questions/ - while (i1 != s - 1) { - l = t[t[i0].f < t[i2].f ? i0++ : i2++]; - r = t[i0 != i1 && t[i0].f < t[i2].f ? i0++ : i2++]; - t[i1++] = { s: -1, f: l.f + r.f, l: l, r: r }; - } - var maxSym = t2[0].s; - for (var i = 1; i < s; ++i) { - if (t2[i].s > maxSym) - maxSym = t2[i].s; - } - // code lengths - var tr = new u16(maxSym + 1); - // max bits in tree - var mbt = ln(t[i1 - 1], tr, 0); - if (mbt > mb) { - // more algorithms from UZIP.js - // TODO: find out how this code works (debt) - // ind debt - var i = 0, dt = 0; - // left cost - var lft = mbt - mb, cst = 1 << lft; - t2.sort(function (a, b) { return tr[b.s] - tr[a.s] || a.f - b.f; }); - for (; i < s; ++i) { - var i2_1 = t2[i].s; - if (tr[i2_1] > mb) { - dt += cst - (1 << (mbt - tr[i2_1])); - tr[i2_1] = mb; - } - else - break; - } - dt >>= lft; - while (dt > 0) { - var i2_2 = t2[i].s; - if (tr[i2_2] < mb) - dt -= 1 << (mb - tr[i2_2]++ - 1); - else - ++i; - } - for (; i >= 0 && dt; --i) { - var i2_3 = t2[i].s; - if (tr[i2_3] == mb) { - --tr[i2_3]; - ++dt; - } - } - mbt = mb; - } - return { t: new u8(tr), l: mbt }; -}; -// get the max length and assign length codes -var ln = function (n, l, d) { - return n.s == -1 - ? Math.max(ln(n.l, l, d + 1), ln(n.r, l, d + 1)) - : (l[n.s] = d); -}; -// length codes generation -var lc = function (c) { - var s = c.length; - // Note that the semicolon was intentional - while (s && !c[--s]) - ; - var cl = new u16(++s); - // ind num streak - var cli = 0, cln = c[0], cls = 1; - var w = function (v) { cl[cli++] = v; }; - for (var i = 1; i <= s; ++i) { - if (c[i] == cln && i != s) - ++cls; - else { - if (!cln && cls > 2) { - for (; cls > 138; cls -= 138) - w(32754); - if (cls > 2) { - w(cls > 10 ? ((cls - 11) << 5) | 28690 : ((cls - 3) << 5) | 12305); - cls = 0; - } - } - else if (cls > 3) { - w(cln), --cls; - for (; cls > 6; cls -= 6) - w(8304); - if (cls > 2) - w(((cls - 3) << 5) | 8208), cls = 0; - } - while (cls--) - w(cln); - cls = 1; - cln = c[i]; - } - } - return { c: cl.subarray(0, cli), n: s }; -}; -// calculate the length of output from tree, code lengths -var clen = function (cf, cl) { - var l = 0; - for (var i = 0; i < cl.length; ++i) - l += cf[i] * cl[i]; - return l; -}; -// writes a fixed block -// returns the new bit pos -var wfblk = function (out, pos, dat) { - // no need to write 00 as type: TypedArray defaults to 0 - var s = dat.length; - var o = shft(pos + 2); - out[o] = s & 255; - out[o + 1] = s >> 8; - out[o + 2] = out[o] ^ 255; - out[o + 3] = out[o + 1] ^ 255; - for (var i = 0; i < s; ++i) - out[o + i + 4] = dat[i]; - return (o + 4 + s) * 8; -}; -// writes a block -var wblk = function (dat, out, final, syms, lf, df, eb, li, bs, bl, p) { - wbits(out, p++, final); - ++lf[256]; - var _a = hTree(lf, 15), dlt = _a.t, mlb = _a.l; - var _b = hTree(df, 15), ddt = _b.t, mdb = _b.l; - var _c = lc(dlt), lclt = _c.c, nlc = _c.n; - var _d = lc(ddt), lcdt = _d.c, ndc = _d.n; - var lcfreq = new u16(19); - for (var i = 0; i < lclt.length; ++i) - ++lcfreq[lclt[i] & 31]; - for (var i = 0; i < lcdt.length; ++i) - ++lcfreq[lcdt[i] & 31]; - var _e = hTree(lcfreq, 7), lct = _e.t, mlcb = _e.l; - var nlcc = 19; - for (; nlcc > 4 && !lct[clim[nlcc - 1]]; --nlcc) - ; - var flen = (bl + 5) << 3; - var ftlen = clen(lf, flt) + clen(df, fdt) + eb; - var dtlen = clen(lf, dlt) + clen(df, ddt) + eb + 14 + 3 * nlcc + clen(lcfreq, lct) + 2 * lcfreq[16] + 3 * lcfreq[17] + 7 * lcfreq[18]; - if (bs >= 0 && flen <= ftlen && flen <= dtlen) - return wfblk(out, p, dat.subarray(bs, bs + bl)); - var lm, ll, dm, dl; - wbits(out, p, 1 + (dtlen < ftlen)), p += 2; - if (dtlen < ftlen) { - lm = hMap(dlt, mlb, 0), ll = dlt, dm = hMap(ddt, mdb, 0), dl = ddt; - var llm = hMap(lct, mlcb, 0); - wbits(out, p, nlc - 257); - wbits(out, p + 5, ndc - 1); - wbits(out, p + 10, nlcc - 4); - p += 14; - for (var i = 0; i < nlcc; ++i) - wbits(out, p + 3 * i, lct[clim[i]]); - p += 3 * nlcc; - var lcts = [lclt, lcdt]; - for (var it = 0; it < 2; ++it) { - var clct = lcts[it]; - for (var i = 0; i < clct.length; ++i) { - var len = clct[i] & 31; - wbits(out, p, llm[len]), p += lct[len]; - if (len > 15) - wbits(out, p, (clct[i] >> 5) & 127), p += clct[i] >> 12; - } - } - } - else { - lm = flm, ll = flt, dm = fdm, dl = fdt; - } - for (var i = 0; i < li; ++i) { - var sym = syms[i]; - if (sym > 255) { - var len = (sym >> 18) & 31; - wbits16(out, p, lm[len + 257]), p += ll[len + 257]; - if (len > 7) - wbits(out, p, (sym >> 23) & 31), p += fleb[len]; - var dst = sym & 31; - wbits16(out, p, dm[dst]), p += dl[dst]; - if (dst > 3) - wbits16(out, p, (sym >> 5) & 8191), p += fdeb[dst]; - } - else { - wbits16(out, p, lm[sym]), p += ll[sym]; - } - } - wbits16(out, p, lm[256]); - return p + ll[256]; -}; -// deflate options (nice << 13) | chain -var deo = /*#__PURE__*/ new i32([65540, 131080, 131088, 131104, 262176, 1048704, 1048832, 2114560, 2117632]); -// empty -var et = /*#__PURE__*/ new u8(0); -// compresses data into a raw DEFLATE buffer -var dflt = function (dat, lvl, plvl, pre, post, st) { - var s = st.z || dat.length; - var o = new u8(pre + s + 5 * (1 + Math.ceil(s / 7000)) + post); - // writing to this writes to the output buffer - var w = o.subarray(pre, o.length - post); - var lst = st.l; - var pos = (st.r || 0) & 7; - if (lvl) { - if (pos) - w[0] = st.r >> 3; - var opt = deo[lvl - 1]; - var n = opt >> 13, c = opt & 8191; - var msk_1 = (1 << plvl) - 1; - // prev 2-byte val map curr 2-byte val map - var prev = st.p || new u16(32768), head = st.h || new u16(msk_1 + 1); - var bs1_1 = Math.ceil(plvl / 3), bs2_1 = 2 * bs1_1; - var hsh = function (i) { return (dat[i] ^ (dat[i + 1] << bs1_1) ^ (dat[i + 2] << bs2_1)) & msk_1; }; - // 24576 is an arbitrary number of maximum symbols per block - // 424 buffer for last block - var syms = new i32(25000); - // length/literal freq distance freq - var lf = new u16(288), df = new u16(32); - // l/lcnt exbits index l/lind waitdx blkpos - var lc_1 = 0, eb = 0, i = st.i || 0, li = 0, wi = st.w || 0, bs = 0; - for (; i + 2 < s; ++i) { - // hash value - var hv = hsh(i); - // index mod 32768 previous index mod - var imod = i & 32767, pimod = head[hv]; - prev[imod] = pimod; - head[hv] = imod; - // We always should modify head and prev, but only add symbols if - // this data is not yet processed ("wait" for wait index) - if (wi <= i) { - // bytes remaining - var rem = s - i; - if ((lc_1 > 7000 || li > 24576) && (rem > 423 || !lst)) { - pos = wblk(dat, w, 0, syms, lf, df, eb, li, bs, i - bs, pos); - li = lc_1 = eb = 0, bs = i; - for (var j = 0; j < 286; ++j) - lf[j] = 0; - for (var j = 0; j < 30; ++j) - df[j] = 0; - } - // len dist chain - var l = 2, d = 0, ch_1 = c, dif = imod - pimod & 32767; - if (rem > 2 && hv == hsh(i - dif)) { - var maxn = Math.min(n, rem) - 1; - var maxd = Math.min(32767, i); - // max possible length - // not capped at dif because decompressors implement "rolling" index population - var ml = Math.min(258, rem); - while (dif <= maxd && --ch_1 && imod != pimod) { - if (dat[i + l] == dat[i + l - dif]) { - var nl = 0; - for (; nl < ml && dat[i + nl] == dat[i + nl - dif]; ++nl) - ; - if (nl > l) { - l = nl, d = dif; - // break out early when we reach "nice" (we are satisfied enough) - if (nl > maxn) - break; - // now, find the rarest 2-byte sequence within this - // length of literals and search for that instead. - // Much faster than just using the start - var mmd = Math.min(dif, nl - 2); - var md = 0; - for (var j = 0; j < mmd; ++j) { - var ti = i - dif + j & 32767; - var pti = prev[ti]; - var cd = ti - pti & 32767; - if (cd > md) - md = cd, pimod = ti; - } - } - } - // check the previous match - imod = pimod, pimod = prev[imod]; - dif += imod - pimod & 32767; - } - } - // d will be nonzero only when a match was found - if (d) { - // store both dist and len data in one int32 - // Make sure this is recognized as a len/dist with 28th bit (2^28) - syms[li++] = 268435456 | (revfl[l] << 18) | revfd[d]; - var lin = revfl[l] & 31, din = revfd[d] & 31; - eb += fleb[lin] + fdeb[din]; - ++lf[257 + lin]; - ++df[din]; - wi = i + l; - ++lc_1; - } - else { - syms[li++] = dat[i]; - ++lf[dat[i]]; - } - } - } - for (i = Math.max(i, wi); i < s; ++i) { - syms[li++] = dat[i]; - ++lf[dat[i]]; - } - pos = wblk(dat, w, lst, syms, lf, df, eb, li, bs, i - bs, pos); - if (!lst) { - st.r = (pos & 7) | w[(pos / 8) | 0] << 3; - // shft(pos) now 1 less if pos & 7 != 0 - pos -= 7; - st.h = head, st.p = prev, st.i = i, st.w = wi; - } - } - else { - for (var i = st.w || 0; i < s + lst; i += 65535) { - // end - var e = i + 65535; - if (e >= s) { - // write final block - w[(pos / 8) | 0] = lst; - e = s; - } - pos = wfblk(w, pos + 1, dat.subarray(i, e)); - } - st.i = s; - } - return slc(o, 0, pre + shft(pos) + post); -}; -// CRC32 table -var crct = /*#__PURE__*/ (function () { - var t = new Int32Array(256); - for (var i = 0; i < 256; ++i) { - var c = i, k = 9; - while (--k) - c = ((c & 1) && -306674912) ^ (c >>> 1); - t[i] = c; - } - return t; -})(); -// CRC32 -var crc = function () { - var c = -1; - return { - p: function (d) { - // closures have awful performance - var cr = c; - for (var i = 0; i < d.length; ++i) - cr = crct[(cr & 255) ^ d[i]] ^ (cr >>> 8); - c = cr; - }, - d: function () { return ~c; } - }; -}; -// Adler32 -var adler = function () { - var a = 1, b = 0; - return { - p: function (d) { - // closures have awful performance - var n = a, m = b; - var l = d.length | 0; - for (var i = 0; i != l;) { - var e = Math.min(i + 2655, l); - for (; i < e; ++i) - m += n += d[i]; - n = (n & 65535) + 15 * (n >> 16), m = (m & 65535) + 15 * (m >> 16); - } - a = n, b = m; - }, - d: function () { - a %= 65521, b %= 65521; - return (a & 255) << 24 | (a & 0xFF00) << 8 | (b & 255) << 8 | (b >> 8); - } - }; -}; -; -// deflate with opts -var dopt = function (dat, opt, pre, post, st) { - if (!st) { - st = { l: 1 }; - if (opt.dictionary) { - var dict = opt.dictionary.subarray(-32768); - var newDat = new u8(dict.length + dat.length); - newDat.set(dict); - newDat.set(dat, dict.length); - dat = newDat; - st.w = dict.length; - } - } - return dflt(dat, opt.level == null ? 6 : opt.level, opt.mem == null ? (st.l ? Math.ceil(Math.max(8, Math.min(13, Math.log(dat.length))) * 1.5) : 20) : (12 + opt.mem), pre, post, st); -}; -// Walmart object spread -var mrg = function (a, b) { - var o = {}; - for (var k in a) - o[k] = a[k]; - for (var k in b) - o[k] = b[k]; - return o; -}; -// worker clone -// This is possibly the craziest part of the entire codebase, despite how simple it may seem. -// The only parameter to this function is a closure that returns an array of variables outside of the function scope. -// We're going to try to figure out the variable names used in the closure as strings because that is crucial for workerization. -// We will return an object mapping of true variable name to value (basically, the current scope as a JS object). -// The reason we can't just use the original variable names is minifiers mangling the toplevel scope. -// This took me three weeks to figure out how to do. -var wcln = function (fn, fnStr, td) { - var dt = fn(); - var st = fn.toString(); - var ks = st.slice(st.indexOf('[') + 1, st.lastIndexOf(']')).replace(/\s+/g, '').split(','); - for (var i = 0; i < dt.length; ++i) { - var v = dt[i], k = ks[i]; - if (typeof v == 'function') { - fnStr += ';' + k + '='; - var st_1 = v.toString(); - if (v.prototype) { - // for global objects - if (st_1.indexOf('[native code]') != -1) { - var spInd = st_1.indexOf(' ', 8) + 1; - fnStr += st_1.slice(spInd, st_1.indexOf('(', spInd)); - } - else { - fnStr += st_1; - for (var t in v.prototype) - fnStr += ';' + k + '.prototype.' + t + '=' + v.prototype[t].toString(); - } - } - else - fnStr += st_1; - } - else - td[k] = v; - } - return fnStr; -}; -var ch = []; -// clone bufs -var cbfs = function (v) { - var tl = []; - for (var k in v) { - if (v[k].buffer) { - tl.push((v[k] = new v[k].constructor(v[k])).buffer); - } - } - return tl; -}; -// use a worker to execute code -var wrkr = function (fns, init, id, cb) { - if (!ch[id]) { - var fnStr = '', td_1 = {}, m = fns.length - 1; - for (var i = 0; i < m; ++i) - fnStr = wcln(fns[i], fnStr, td_1); - ch[id] = { c: wcln(fns[m], fnStr, td_1), e: td_1 }; - } - var td = mrg({}, ch[id].e); - return wk(ch[id].c + ';onmessage=function(e){for(var k in e.data)self[k]=e.data[k];onmessage=' + init.toString() + '}', id, td, cbfs(td), cb); -}; -// base async inflate fn -var bInflt = function () { return [u8, u16, i32, fleb, fdeb, clim, fl, fd, flrm, fdrm, rev, ec, hMap, max, bits, bits16, shft, slc, err, inflt, inflateSync, pbf, gopt]; }; -var bDflt = function () { return [u8, u16, i32, fleb, fdeb, clim, revfl, revfd, flm, flt, fdm, fdt, rev, deo, et, hMap, wbits, wbits16, hTree, ln, lc, clen, wfblk, wblk, shft, slc, dflt, dopt, deflateSync, pbf]; }; -// gzip extra -var gze = function () { return [gzh, gzhl, wbytes, crc, crct]; }; -// gunzip extra -var guze = function () { return [gzs, gzl]; }; -// zlib extra -var zle = function () { return [zlh, wbytes, adler]; }; -// unzlib extra -var zule = function () { return [zls]; }; -// post buf -var pbf = function (msg) { return postMessage(msg, [msg.buffer]); }; -// get opts -var gopt = function (o) { return o && { - out: o.size && new u8(o.size), - dictionary: o.dictionary -}; }; -// async helper -var cbify = function (dat, opts, fns, init, id, cb) { - var w = wrkr(fns, init, id, function (err, dat) { - w.terminate(); - cb(err, dat); - }); - w.postMessage([dat, opts], opts.consume ? [dat.buffer] : []); - return function () { w.terminate(); }; -}; -// auto stream -var astrm = function (strm) { - strm.ondata = function (dat, final) { return postMessage([dat, final], [dat.buffer]); }; - return function (ev) { - if (ev.data.length) { - strm.push(ev.data[0], ev.data[1]); - postMessage([ev.data[0].length]); - } - else - strm.flush(); - }; -}; -// async stream attach -var astrmify = function (fns, strm, opts, init, id, flush, ext) { - var t; - var w = wrkr(fns, init, id, function (err, dat) { - if (err) - w.terminate(), strm.ondata.call(strm, err); - else if (!Array.isArray(dat)) - ext(dat); - else if (dat.length == 1) { - strm.queuedSize -= dat[0]; - if (strm.ondrain) - strm.ondrain(dat[0]); - } - else { - if (dat[1]) - w.terminate(); - strm.ondata.call(strm, err, dat[0], dat[1]); - } - }); - w.postMessage(opts); - strm.queuedSize = 0; - strm.push = function (d, f) { - if (!strm.ondata) - err(5); - if (t) - strm.ondata(err(4, 0, 1), null, !!f); - strm.queuedSize += d.length; - w.postMessage([d, t = f], [d.buffer]); - }; - strm.terminate = function () { w.terminate(); }; - if (flush) { - strm.flush = function () { w.postMessage([]); }; - } -}; -// read 2 bytes -var b2 = function (d, b) { return d[b] | (d[b + 1] << 8); }; -// read 4 bytes -var b4 = function (d, b) { return (d[b] | (d[b + 1] << 8) | (d[b + 2] << 16) | (d[b + 3] << 24)) >>> 0; }; -var b8 = function (d, b) { return b4(d, b) + (b4(d, b + 4) * 4294967296); }; -// write bytes -var wbytes = function (d, b, v) { - for (; v; ++b) - d[b] = v, v >>>= 8; -}; -// gzip header -var gzh = function (c, o) { - var fn = o.filename; - c[0] = 31, c[1] = 139, c[2] = 8, c[8] = o.level < 2 ? 4 : o.level == 9 ? 2 : 0, c[9] = 3; // assume Unix - if (o.mtime != 0) - wbytes(c, 4, Math.floor(new Date(o.mtime || Date.now()) / 1000)); - if (fn) { - c[3] = 8; - for (var i = 0; i <= fn.length; ++i) - c[i + 10] = fn.charCodeAt(i); - } -}; -// gzip footer: -8 to -4 = CRC, -4 to -0 is length -// gzip start -var gzs = function (d) { - if (d[0] != 31 || d[1] != 139 || d[2] != 8) - err(6, 'invalid gzip data'); - var flg = d[3]; - var st = 10; - if (flg & 4) - st += (d[10] | d[11] << 8) + 2; - for (var zs = (flg >> 3 & 1) + (flg >> 4 & 1); zs > 0; zs -= !d[st++]) - ; - return st + (flg & 2); -}; -// gzip length -var gzl = function (d) { - var l = d.length; - return (d[l - 4] | d[l - 3] << 8 | d[l - 2] << 16 | d[l - 1] << 24) >>> 0; -}; -// gzip header length -var gzhl = function (o) { return 10 + (o.filename ? o.filename.length + 1 : 0); }; -// zlib header -var zlh = function (c, o) { - var lv = o.level, fl = lv == 0 ? 0 : lv < 6 ? 1 : lv == 9 ? 3 : 2; - c[0] = 120, c[1] = (fl << 6) | (o.dictionary && 32); - c[1] |= 31 - ((c[0] << 8) | c[1]) % 31; - if (o.dictionary) { - var h = adler(); - h.p(o.dictionary); - wbytes(c, 2, h.d()); - } -}; -// zlib start -var zls = function (d, dict) { - if ((d[0] & 15) != 8 || (d[0] >> 4) > 7 || ((d[0] << 8 | d[1]) % 31)) - err(6, 'invalid zlib data'); - if ((d[1] >> 5 & 1) == +!dict) - err(6, 'invalid zlib data: ' + (d[1] & 32 ? 'need' : 'unexpected') + ' dictionary'); - return (d[1] >> 3 & 4) + 2; -}; -function StrmOpt(opts, cb) { - if (typeof opts == 'function') - cb = opts, opts = {}; - this.ondata = cb; - return opts; -} -/** - * Streaming DEFLATE compression - */ -var Deflate = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - function Deflate(opts, cb) { - if (typeof opts == 'function') - cb = opts, opts = {}; - this.ondata = cb; - this.o = opts || {}; - this.s = { l: 0, i: 32768, w: 32768, z: 32768 }; - // Buffer length must always be 0 mod 32768 for index calculations to be correct when modifying head and prev - // 98304 = 32768 (lookback) + 65536 (common chunk size) - this.b = new u8(98304); - if (this.o.dictionary) { - var dict = this.o.dictionary.subarray(-32768); - this.b.set(dict, 32768 - dict.length); - this.s.i = 32768 - dict.length; - } - } - Deflate.prototype.p = function (c, f) { - this.ondata(dopt(c, this.o, 0, 0, this.s), f); - }; - /** - * Pushes a chunk to be deflated - * @param chunk The chunk to push - * @param final Whether this is the last chunk - */ - Deflate.prototype.push = function (chunk, final) { - if (!this.ondata) - err(5); - if (this.s.l) - err(4); - var endLen = chunk.length + this.s.z; - if (endLen > this.b.length) { - if (endLen > 2 * this.b.length - 32768) { - var newBuf = new u8(endLen & -32768); - newBuf.set(this.b.subarray(0, this.s.z)); - this.b = newBuf; - } - var split = this.b.length - this.s.z; - this.b.set(chunk.subarray(0, split), this.s.z); - this.s.z = this.b.length; - this.p(this.b, false); - this.b.set(this.b.subarray(-32768)); - this.b.set(chunk.subarray(split), 32768); - this.s.z = chunk.length - split + 32768; - this.s.i = 32766, this.s.w = 32768; - } - else { - this.b.set(chunk, this.s.z); - this.s.z += chunk.length; - } - this.s.l = final & 1; - if (this.s.z > this.s.w + 8191 || final) { - this.p(this.b, final || false); - this.s.w = this.s.i, this.s.i -= 2; - } - }; - /** - * Flushes buffered uncompressed data. Useful to immediately retrieve the - * deflated output for small inputs. - */ - Deflate.prototype.flush = function () { - if (!this.ondata) - err(5); - if (this.s.l) - err(4); - this.p(this.b, false); - this.s.w = this.s.i, this.s.i -= 2; - }; - return Deflate; -}()))); - -/** - * Asynchronous streaming DEFLATE compression - */ -var AsyncDeflate = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - function AsyncDeflate(opts, cb) { - astrmify([ - bDflt, - function () { return [astrm, Deflate]; } - ], this, StrmOpt.call(this, opts, cb), function (ev) { - var strm = new Deflate(ev.data); - onmessage = astrm(strm); - }, 6, 1); - } - return AsyncDeflate; -}()))); - -function deflate(data, opts, cb) { - if (!cb) - cb = opts, opts = {}; - if (typeof cb != 'function') - err(7); - return cbify(data, opts, [ - bDflt, - ], function (ev) { return pbf(deflateSync(ev.data[0], ev.data[1])); }, 0, cb); -} -/** - * Compresses data with DEFLATE without any wrapper - * @param data The data to compress - * @param opts The compression options - * @returns The deflated version of the data - */ -function deflateSync(data, opts) { - return dopt(data, opts || {}, 0, 0); -} -/** - * Streaming DEFLATE decompression - */ -var Inflate = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - function Inflate(opts, cb) { - // no StrmOpt here to avoid adding to workerizer - if (typeof opts == 'function') - cb = opts, opts = {}; - this.ondata = cb; - var dict = opts && opts.dictionary && opts.dictionary.subarray(-32768); - this.s = { i: 0, b: dict ? dict.length : 0 }; - this.o = new u8(32768); - this.p = new u8(0); - if (dict) - this.o.set(dict); - } - Inflate.prototype.e = function (c) { - if (!this.ondata) - err(5); - if (this.d) - err(4); - if (!this.p.length) - this.p = c; - else if (c.length) { - var n = new u8(this.p.length + c.length); - n.set(this.p), n.set(c, this.p.length), this.p = n; - } - }; - Inflate.prototype.c = function (final) { - this.s.i = +(this.d = final || false); - var bts = this.s.b; - var dt = inflt(this.p, this.s, this.o); - this.ondata(slc(dt, bts, this.s.b), this.d); - this.o = slc(dt, this.s.b - 32768), this.s.b = this.o.length; - this.p = slc(this.p, (this.s.p / 8) | 0), this.s.p &= 7; - }; - /** - * Pushes a chunk to be inflated - * @param chunk The chunk to push - * @param final Whether this is the final chunk - */ - Inflate.prototype.push = function (chunk, final) { - this.e(chunk), this.c(final); - }; - return Inflate; -}()))); - -/** - * Asynchronous streaming DEFLATE decompression - */ -var AsyncInflate = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - function AsyncInflate(opts, cb) { - astrmify([ - bInflt, - function () { return [astrm, Inflate]; } - ], this, StrmOpt.call(this, opts, cb), function (ev) { - var strm = new Inflate(ev.data); - onmessage = astrm(strm); - }, 7, 0); - } - return AsyncInflate; -}()))); - -function inflate(data, opts, cb) { - if (!cb) - cb = opts, opts = {}; - if (typeof cb != 'function') - err(7); - return cbify(data, opts, [ - bInflt - ], function (ev) { return pbf(inflateSync(ev.data[0], gopt(ev.data[1]))); }, 1, cb); -} -/** - * Expands DEFLATE data with no wrapper - * @param data The data to decompress - * @param opts The decompression options - * @returns The decompressed version of the data - */ -function inflateSync(data, opts) { - return inflt(data, { i: 2 }, opts && opts.out, opts && opts.dictionary); -} -// before you yell at me for not just using extends, my reason is that TS inheritance is hard to workerize. -/** - * Streaming GZIP compression - */ -var Gzip = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - function Gzip(opts, cb) { - this.c = crc(); - this.l = 0; - this.v = 1; - Deflate.call(this, opts, cb); - } - /** - * Pushes a chunk to be GZIPped - * @param chunk The chunk to push - * @param final Whether this is the last chunk - */ - Gzip.prototype.push = function (chunk, final) { - this.c.p(chunk); - this.l += chunk.length; - Deflate.prototype.push.call(this, chunk, final); - }; - Gzip.prototype.p = function (c, f) { - var raw = dopt(c, this.o, this.v && gzhl(this.o), f && 8, this.s); - if (this.v) - gzh(raw, this.o), this.v = 0; - if (f) - wbytes(raw, raw.length - 8, this.c.d()), wbytes(raw, raw.length - 4, this.l); - this.ondata(raw, f); - }; - /** - * Flushes buffered uncompressed data. Useful to immediately retrieve the - * GZIPped output for small inputs. - */ - Gzip.prototype.flush = function () { - Deflate.prototype.flush.call(this); - }; - return Gzip; -}()))); - -/** - * Asynchronous streaming GZIP compression - */ -var AsyncGzip = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - function AsyncGzip(opts, cb) { - astrmify([ - bDflt, - gze, - function () { return [astrm, Deflate, Gzip]; } - ], this, StrmOpt.call(this, opts, cb), function (ev) { - var strm = new Gzip(ev.data); - onmessage = astrm(strm); - }, 8, 1); - } - return AsyncGzip; -}()))); - -function gzip(data, opts, cb) { - if (!cb) - cb = opts, opts = {}; - if (typeof cb != 'function') - err(7); - return cbify(data, opts, [ - bDflt, - gze, - function () { return [gzipSync]; } - ], function (ev) { return pbf(gzipSync(ev.data[0], ev.data[1])); }, 2, cb); -} -/** - * Compresses data with GZIP - * @param data The data to compress - * @param opts The compression options - * @returns The gzipped version of the data - */ -function gzipSync(data, opts) { - if (!opts) - opts = {}; - var c = crc(), l = data.length; - c.p(data); - var d = dopt(data, opts, gzhl(opts), 8), s = d.length; - return gzh(d, opts), wbytes(d, s - 8, c.d()), wbytes(d, s - 4, l), d; -} -/** - * Streaming single or multi-member GZIP decompression - */ -var Gunzip = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - function Gunzip(opts, cb) { - this.v = 1; - this.r = 0; - Inflate.call(this, opts, cb); - } - /** - * Pushes a chunk to be GUNZIPped - * @param chunk The chunk to push - * @param final Whether this is the last chunk - */ - Gunzip.prototype.push = function (chunk, final) { - Inflate.prototype.e.call(this, chunk); - this.r += chunk.length; - if (this.v) { - var p = this.p.subarray(this.v - 1); - var s = p.length > 3 ? gzs(p) : 4; - if (s > p.length) { - if (!final) - return; - } - else if (this.v > 1 && this.onmember) { - this.onmember(this.r - p.length); - } - this.p = p.subarray(s), this.v = 0; - } - // necessary to prevent TS from using the closure value - // This allows for workerization to function correctly - Inflate.prototype.c.call(this, final); - // process concatenated GZIP - if (this.s.f && !this.s.l && !final) { - this.v = shft(this.s.p) + 9; - this.s = { i: 0 }; - this.o = new u8(0); - this.push(new u8(0), final); - } - }; - return Gunzip; -}()))); - -/** - * Asynchronous streaming single or multi-member GZIP decompression - */ -var AsyncGunzip = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - function AsyncGunzip(opts, cb) { - var _this = this; - astrmify([ - bInflt, - guze, - function () { return [astrm, Inflate, Gunzip]; } - ], this, StrmOpt.call(this, opts, cb), function (ev) { - var strm = new Gunzip(ev.data); - strm.onmember = function (offset) { return postMessage(offset); }; - onmessage = astrm(strm); - }, 9, 0, function (offset) { return _this.onmember && _this.onmember(offset); }); - } - return AsyncGunzip; -}()))); - -function gunzip(data, opts, cb) { - if (!cb) - cb = opts, opts = {}; - if (typeof cb != 'function') - err(7); - return cbify(data, opts, [ - bInflt, - guze, - function () { return [gunzipSync]; } - ], function (ev) { return pbf(gunzipSync(ev.data[0], ev.data[1])); }, 3, cb); -} -/** - * Expands GZIP data - * @param data The data to decompress - * @param opts The decompression options - * @returns The decompressed version of the data - */ -function gunzipSync(data, opts) { - var st = gzs(data); - if (st + 8 > data.length) - err(6, 'invalid gzip data'); - return inflt(data.subarray(st, -8), { i: 2 }, opts && opts.out || new u8(gzl(data)), opts && opts.dictionary); -} -/** - * Streaming Zlib compression - */ -var Zlib = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - function Zlib(opts, cb) { - this.c = adler(); - this.v = 1; - Deflate.call(this, opts, cb); - } - /** - * Pushes a chunk to be zlibbed - * @param chunk The chunk to push - * @param final Whether this is the last chunk - */ - Zlib.prototype.push = function (chunk, final) { - this.c.p(chunk); - Deflate.prototype.push.call(this, chunk, final); - }; - Zlib.prototype.p = function (c, f) { - var raw = dopt(c, this.o, this.v && (this.o.dictionary ? 6 : 2), f && 4, this.s); - if (this.v) - zlh(raw, this.o), this.v = 0; - if (f) - wbytes(raw, raw.length - 4, this.c.d()); - this.ondata(raw, f); - }; - /** - * Flushes buffered uncompressed data. Useful to immediately retrieve the - * zlibbed output for small inputs. - */ - Zlib.prototype.flush = function () { - Deflate.prototype.flush.call(this); - }; - return Zlib; -}()))); - -/** - * Asynchronous streaming Zlib compression - */ -var AsyncZlib = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - function AsyncZlib(opts, cb) { - astrmify([ - bDflt, - zle, - function () { return [astrm, Deflate, Zlib]; } - ], this, StrmOpt.call(this, opts, cb), function (ev) { - var strm = new Zlib(ev.data); - onmessage = astrm(strm); - }, 10, 1); - } - return AsyncZlib; -}()))); - -function zlib(data, opts, cb) { - if (!cb) - cb = opts, opts = {}; - if (typeof cb != 'function') - err(7); - return cbify(data, opts, [ - bDflt, - zle, - function () { return [zlibSync]; } - ], function (ev) { return pbf(zlibSync(ev.data[0], ev.data[1])); }, 4, cb); -} -/** - * Compress data with Zlib - * @param data The data to compress - * @param opts The compression options - * @returns The zlib-compressed version of the data - */ -function zlibSync(data, opts) { - if (!opts) - opts = {}; - var a = adler(); - a.p(data); - var d = dopt(data, opts, opts.dictionary ? 6 : 2, 4); - return zlh(d, opts), wbytes(d, d.length - 4, a.d()), d; -} -/** - * Streaming Zlib decompression - */ -var Unzlib = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - function Unzlib(opts, cb) { - Inflate.call(this, opts, cb); - this.v = opts && opts.dictionary ? 2 : 1; - } - /** - * Pushes a chunk to be unzlibbed - * @param chunk The chunk to push - * @param final Whether this is the last chunk - */ - Unzlib.prototype.push = function (chunk, final) { - Inflate.prototype.e.call(this, chunk); - if (this.v) { - if (this.p.length < 6 && !final) - return; - this.p = this.p.subarray(zls(this.p, this.v - 1)), this.v = 0; - } - if (final) { - if (this.p.length < 4) - err(6, 'invalid zlib data'); - this.p = this.p.subarray(0, -4); - } - // necessary to prevent TS from using the closure value - // This allows for workerization to function correctly - Inflate.prototype.c.call(this, final); - }; - return Unzlib; -}()))); - -/** - * Asynchronous streaming Zlib decompression - */ -var AsyncUnzlib = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - function AsyncUnzlib(opts, cb) { - astrmify([ - bInflt, - zule, - function () { return [astrm, Inflate, Unzlib]; } - ], this, StrmOpt.call(this, opts, cb), function (ev) { - var strm = new Unzlib(ev.data); - onmessage = astrm(strm); - }, 11, 0); - } - return AsyncUnzlib; -}()))); - -function unzlib(data, opts, cb) { - if (!cb) - cb = opts, opts = {}; - if (typeof cb != 'function') - err(7); - return cbify(data, opts, [ - bInflt, - zule, - function () { return [unzlibSync]; } - ], function (ev) { return pbf(unzlibSync(ev.data[0], gopt(ev.data[1]))); }, 5, cb); -} -/** - * Expands Zlib data - * @param data The data to decompress - * @param opts The decompression options - * @returns The decompressed version of the data - */ -function unzlibSync(data, opts) { - return inflt(data.subarray(zls(data, opts && opts.dictionary), -4), { i: 2 }, opts && opts.out, opts && opts.dictionary); -} -// Default algorithm for compression (used because having a known output size allows faster decompression) - - -/** - * Streaming GZIP, Zlib, or raw DEFLATE decompression - */ -var Decompress = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - function Decompress(opts, cb) { - this.o = StrmOpt.call(this, opts, cb) || {}; - this.G = Gunzip; - this.I = Inflate; - this.Z = Unzlib; - } - // init substream - // overriden by AsyncDecompress - Decompress.prototype.i = function () { - var _this = this; - this.s.ondata = function (dat, final) { - _this.ondata(dat, final); - }; - }; - /** - * Pushes a chunk to be decompressed - * @param chunk The chunk to push - * @param final Whether this is the last chunk - */ - Decompress.prototype.push = function (chunk, final) { - if (!this.ondata) - err(5); - if (!this.s) { - if (this.p && this.p.length) { - var n = new u8(this.p.length + chunk.length); - n.set(this.p), n.set(chunk, this.p.length); - } - else - this.p = chunk; - if (this.p.length > 2) { - this.s = (this.p[0] == 31 && this.p[1] == 139 && this.p[2] == 8) - ? new this.G(this.o) - : ((this.p[0] & 15) != 8 || (this.p[0] >> 4) > 7 || ((this.p[0] << 8 | this.p[1]) % 31)) - ? new this.I(this.o) - : new this.Z(this.o); - this.i(); - this.s.push(this.p, final); - this.p = null; - } - } - else - this.s.push(chunk, final); - }; - return Decompress; -}()))); - -/** - * Asynchronous streaming GZIP, Zlib, or raw DEFLATE decompression - */ -var AsyncDecompress = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - function AsyncDecompress(opts, cb) { - Decompress.call(this, opts, cb); - this.queuedSize = 0; - this.G = AsyncGunzip; - this.I = AsyncInflate; - this.Z = AsyncUnzlib; - } - AsyncDecompress.prototype.i = function () { - var _this = this; - this.s.ondata = function (err, dat, final) { - _this.ondata(err, dat, final); - }; - this.s.ondrain = function (size) { - _this.queuedSize -= size; - if (_this.ondrain) - _this.ondrain(size); - }; - }; - /** - * Pushes a chunk to be decompressed - * @param chunk The chunk to push - * @param final Whether this is the last chunk - */ - AsyncDecompress.prototype.push = function (chunk, final) { - this.queuedSize += chunk.length; - Decompress.prototype.push.call(this, chunk, final); - }; - return AsyncDecompress; -}()))); - -function decompress(data, opts, cb) { - if (!cb) - cb = opts, opts = {}; - if (typeof cb != 'function') - err(7); - return (data[0] == 31 && data[1] == 139 && data[2] == 8) - ? gunzip(data, opts, cb) - : ((data[0] & 15) != 8 || (data[0] >> 4) > 7 || ((data[0] << 8 | data[1]) % 31)) - ? inflate(data, opts, cb) - : unzlib(data, opts, cb); -} -/** - * Expands compressed GZIP, Zlib, or raw DEFLATE data, automatically detecting the format - * @param data The data to decompress - * @param opts The decompression options - * @returns The decompressed version of the data - */ -function decompressSync(data, opts) { - return (data[0] == 31 && data[1] == 139 && data[2] == 8) - ? gunzipSync(data, opts) - : ((data[0] & 15) != 8 || (data[0] >> 4) > 7 || ((data[0] << 8 | data[1]) % 31)) - ? inflateSync(data, opts) - : unzlibSync(data, opts); -} -// flatten a directory structure -var fltn = function (d, p, t, o) { - for (var k in d) { - var val = d[k], n = p + k, op = o; - if (Array.isArray(val)) - op = mrg(o, val[1]), val = val[0]; - if (val instanceof u8) - t[n] = [val, op]; - else { - t[n += '/'] = [new u8(0), op]; - fltn(val, n, t, o); - } - } -}; -// text encoder -var te = typeof TextEncoder != 'undefined' && /*#__PURE__*/ new TextEncoder(); -// text decoder -var td = typeof TextDecoder != 'undefined' && /*#__PURE__*/ new TextDecoder(); -// text decoder stream -var tds = 0; -try { - td.decode(et, { stream: true }); - tds = 1; -} -catch (e) { } -// decode UTF8 -var dutf8 = function (d) { - for (var r = '', i = 0;;) { - var c = d[i++]; - var eb = (c > 127) + (c > 223) + (c > 239); - if (i + eb > d.length) - return { s: r, r: slc(d, i - 1) }; - if (!eb) - r += String.fromCharCode(c); - else if (eb == 3) { - c = ((c & 15) << 18 | (d[i++] & 63) << 12 | (d[i++] & 63) << 6 | (d[i++] & 63)) - 65536, - r += String.fromCharCode(55296 | (c >> 10), 56320 | (c & 1023)); - } - else if (eb & 1) - r += String.fromCharCode((c & 31) << 6 | (d[i++] & 63)); - else - r += String.fromCharCode((c & 15) << 12 | (d[i++] & 63) << 6 | (d[i++] & 63)); - } -}; -/** - * Streaming UTF-8 decoding - */ -var DecodeUTF8 = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - /** - * Creates a UTF-8 decoding stream - * @param cb The callback to call whenever data is decoded - */ - function DecodeUTF8(cb) { - this.ondata = cb; - if (tds) - this.t = new TextDecoder(); - else - this.p = et; - } - /** - * Pushes a chunk to be decoded from UTF-8 binary - * @param chunk The chunk to push - * @param final Whether this is the last chunk - */ - DecodeUTF8.prototype.push = function (chunk, final) { - if (!this.ondata) - err(5); - final = !!final; - if (this.t) { - this.ondata(this.t.decode(chunk, { stream: true }), final); - if (final) { - if (this.t.decode().length) - err(8); - this.t = null; - } - return; - } - if (!this.p) - err(4); - var dat = new u8(this.p.length + chunk.length); - dat.set(this.p); - dat.set(chunk, this.p.length); - var _a = dutf8(dat), s = _a.s, r = _a.r; - if (final) { - if (r.length) - err(8); - this.p = null; - } - else - this.p = r; - this.ondata(s, final); - }; - return DecodeUTF8; -}()))); - -/** - * Streaming UTF-8 encoding - */ -var EncodeUTF8 = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - /** - * Creates a UTF-8 decoding stream - * @param cb The callback to call whenever data is encoded - */ - function EncodeUTF8(cb) { - this.ondata = cb; - } - /** - * Pushes a chunk to be encoded to UTF-8 - * @param chunk The string data to push - * @param final Whether this is the last chunk - */ - EncodeUTF8.prototype.push = function (chunk, final) { - if (!this.ondata) - err(5); - if (this.d) - err(4); - this.ondata(strToU8(chunk), this.d = final || false); - }; - return EncodeUTF8; -}()))); - -/** - * Converts a string into a Uint8Array for use with compression/decompression methods - * @param str The string to encode - * @param latin1 Whether or not to interpret the data as Latin-1. This should - * not need to be true unless decoding a binary string. - * @returns The string encoded in UTF-8/Latin-1 binary - */ -function strToU8(str, latin1) { - if (latin1) { - var ar_1 = new u8(str.length); - for (var i = 0; i < str.length; ++i) - ar_1[i] = str.charCodeAt(i); - return ar_1; - } - if (te) - return te.encode(str); - var l = str.length; - var ar = new u8(str.length + (str.length >> 1)); - var ai = 0; - var w = function (v) { ar[ai++] = v; }; - for (var i = 0; i < l; ++i) { - if (ai + 5 > ar.length) { - var n = new u8(ai + 8 + ((l - i) << 1)); - n.set(ar); - ar = n; - } - var c = str.charCodeAt(i); - if (c < 128 || latin1) - w(c); - else if (c < 2048) - w(192 | (c >> 6)), w(128 | (c & 63)); - else if (c > 55295 && c < 57344) - c = 65536 + (c & 1023 << 10) | (str.charCodeAt(++i) & 1023), - w(240 | (c >> 18)), w(128 | ((c >> 12) & 63)), w(128 | ((c >> 6) & 63)), w(128 | (c & 63)); - else - w(224 | (c >> 12)), w(128 | ((c >> 6) & 63)), w(128 | (c & 63)); - } - return slc(ar, 0, ai); -} -/** - * Converts a Uint8Array to a string - * @param dat The data to decode to string - * @param latin1 Whether or not to interpret the data as Latin-1. This should - * not need to be true unless encoding to binary string. - * @returns The original UTF-8/Latin-1 string - */ -function strFromU8(dat, latin1) { - if (latin1) { - var r = ''; - for (var i = 0; i < dat.length; i += 16384) - r += String.fromCharCode.apply(null, dat.subarray(i, i + 16384)); - return r; - } - else if (td) { - return td.decode(dat); - } - else { - var _a = dutf8(dat), s = _a.s, r = _a.r; - if (r.length) - err(8); - return s; - } -} -; -// deflate bit flag -var dbf = function (l) { return l == 1 ? 3 : l < 6 ? 2 : l == 9 ? 1 : 0; }; -// skip local zip header -var slzh = function (d, b) { return b + 30 + b2(d, b + 26) + b2(d, b + 28); }; -// read zip header -var zh = function (d, b, z) { - var fnl = b2(d, b + 28), fn = strFromU8(d.subarray(b + 46, b + 46 + fnl), !(b2(d, b + 8) & 2048)), es = b + 46 + fnl, bs = b4(d, b + 20); - var _a = z && bs == 4294967295 ? z64e(d, es) : [bs, b4(d, b + 24), b4(d, b + 42)], sc = _a[0], su = _a[1], off = _a[2]; - return [b2(d, b + 10), sc, su, fn, es + b2(d, b + 30) + b2(d, b + 32), off]; -}; -// read zip64 extra field -var z64e = function (d, b) { - for (; b2(d, b) != 1; b += 4 + b2(d, b + 2)) - ; - return [b8(d, b + 12), b8(d, b + 4), b8(d, b + 20)]; -}; -// extra field length -var exfl = function (ex) { - var le = 0; - if (ex) { - for (var k in ex) { - var l = ex[k].length; - if (l > 65535) - err(9); - le += l + 4; - } - } - return le; -}; -// write zip header -var wzh = function (d, b, f, fn, u, c, ce, co) { - var fl = fn.length, ex = f.extra, col = co && co.length; - var exl = exfl(ex); - wbytes(d, b, ce != null ? 0x2014B50 : 0x4034B50), b += 4; - if (ce != null) - d[b++] = 20, d[b++] = f.os; - d[b] = 20, b += 2; // spec compliance? what's that? - d[b++] = (f.flag << 1) | (c < 0 && 8), d[b++] = u && 8; - d[b++] = f.compression & 255, d[b++] = f.compression >> 8; - var dt = new Date(f.mtime == null ? Date.now() : f.mtime), y = dt.getFullYear() - 1980; - if (y < 0 || y > 119) - err(10); - wbytes(d, b, (y << 25) | ((dt.getMonth() + 1) << 21) | (dt.getDate() << 16) | (dt.getHours() << 11) | (dt.getMinutes() << 5) | (dt.getSeconds() >> 1)), b += 4; - if (c != -1) { - wbytes(d, b, f.crc); - wbytes(d, b + 4, c < 0 ? -c - 2 : c); - wbytes(d, b + 8, f.size); - } - wbytes(d, b + 12, fl); - wbytes(d, b + 14, exl), b += 16; - if (ce != null) { - wbytes(d, b, col); - wbytes(d, b + 6, f.attrs); - wbytes(d, b + 10, ce), b += 14; - } - d.set(fn, b); - b += fl; - if (exl) { - for (var k in ex) { - var exf = ex[k], l = exf.length; - wbytes(d, b, +k); - wbytes(d, b + 2, l); - d.set(exf, b + 4), b += 4 + l; - } - } - if (col) - d.set(co, b), b += col; - return b; -}; -// write zip footer (end of central directory) -var wzf = function (o, b, c, d, e) { - wbytes(o, b, 0x6054B50); // skip disk - wbytes(o, b + 8, c); - wbytes(o, b + 10, c); - wbytes(o, b + 12, d); - wbytes(o, b + 16, e); -}; -/** - * A pass-through stream to keep data uncompressed in a ZIP archive. - */ -var ZipPassThrough = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - /** - * Creates a pass-through stream that can be added to ZIP archives - * @param filename The filename to associate with this data stream - */ - function ZipPassThrough(filename) { - this.filename = filename; - this.c = crc(); - this.size = 0; - this.compression = 0; - } - /** - * Processes a chunk and pushes to the output stream. You can override this - * method in a subclass for custom behavior, but by default this passes - * the data through. You must call this.ondata(err, chunk, final) at some - * point in this method. - * @param chunk The chunk to process - * @param final Whether this is the last chunk - */ - ZipPassThrough.prototype.process = function (chunk, final) { - this.ondata(null, chunk, final); - }; - /** - * Pushes a chunk to be added. If you are subclassing this with a custom - * compression algorithm, note that you must push data from the source - * file only, pre-compression. - * @param chunk The chunk to push - * @param final Whether this is the last chunk - */ - ZipPassThrough.prototype.push = function (chunk, final) { - if (!this.ondata) - err(5); - this.c.p(chunk); - this.size += chunk.length; - if (final) - this.crc = this.c.d(); - this.process(chunk, final || false); - }; - return ZipPassThrough; -}()))); - -// I don't extend because TypeScript extension adds 1kB of runtime bloat -/** - * Streaming DEFLATE compression for ZIP archives. Prefer using AsyncZipDeflate - * for better performance - */ -var ZipDeflate = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - /** - * Creates a DEFLATE stream that can be added to ZIP archives - * @param filename The filename to associate with this data stream - * @param opts The compression options - */ - function ZipDeflate(filename, opts) { - var _this = this; - if (!opts) - opts = {}; - ZipPassThrough.call(this, filename); - this.d = new Deflate(opts, function (dat, final) { - _this.ondata(null, dat, final); - }); - this.compression = 8; - this.flag = dbf(opts.level); - } - ZipDeflate.prototype.process = function (chunk, final) { - try { - this.d.push(chunk, final); - } - catch (e) { - this.ondata(e, null, final); - } - }; - /** - * Pushes a chunk to be deflated - * @param chunk The chunk to push - * @param final Whether this is the last chunk - */ - ZipDeflate.prototype.push = function (chunk, final) { - ZipPassThrough.prototype.push.call(this, chunk, final); - }; - return ZipDeflate; -}()))); - -/** - * Asynchronous streaming DEFLATE compression for ZIP archives - */ -var AsyncZipDeflate = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - /** - * Creates an asynchronous DEFLATE stream that can be added to ZIP archives - * @param filename The filename to associate with this data stream - * @param opts The compression options - */ - function AsyncZipDeflate(filename, opts) { - var _this = this; - if (!opts) - opts = {}; - ZipPassThrough.call(this, filename); - this.d = new AsyncDeflate(opts, function (err, dat, final) { - _this.ondata(err, dat, final); - }); - this.compression = 8; - this.flag = dbf(opts.level); - this.terminate = this.d.terminate; - } - AsyncZipDeflate.prototype.process = function (chunk, final) { - this.d.push(chunk, final); - }; - /** - * Pushes a chunk to be deflated - * @param chunk The chunk to push - * @param final Whether this is the last chunk - */ - AsyncZipDeflate.prototype.push = function (chunk, final) { - ZipPassThrough.prototype.push.call(this, chunk, final); - }; - return AsyncZipDeflate; -}()))); - -// TODO: Better tree shaking -/** - * A zippable archive to which files can incrementally be added - */ -var Zip = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - /** - * Creates an empty ZIP archive to which files can be added - * @param cb The callback to call whenever data for the generated ZIP archive - * is available - */ - function Zip(cb) { - this.ondata = cb; - this.u = []; - this.d = 1; - } - /** - * Adds a file to the ZIP archive - * @param file The file stream to add - */ - Zip.prototype.add = function (file) { - var _this = this; - if (!this.ondata) - err(5); - // finishing or finished - if (this.d & 2) - this.ondata(err(4 + (this.d & 1) * 8, 0, 1), null, false); - else { - var f = strToU8(file.filename), fl_1 = f.length; - var com = file.comment, o = com && strToU8(com); - var u = fl_1 != file.filename.length || (o && (com.length != o.length)); - var hl_1 = fl_1 + exfl(file.extra) + 30; - if (fl_1 > 65535) - this.ondata(err(11, 0, 1), null, false); - var header = new u8(hl_1); - wzh(header, 0, file, f, u, -1); - var chks_1 = [header]; - var pAll_1 = function () { - for (var _i = 0, chks_2 = chks_1; _i < chks_2.length; _i++) { - var chk = chks_2[_i]; - _this.ondata(null, chk, false); - } - chks_1 = []; - }; - var tr_1 = this.d; - this.d = 0; - var ind_1 = this.u.length; - var uf_1 = mrg(file, { - f: f, - u: u, - o: o, - t: function () { - if (file.terminate) - file.terminate(); - }, - r: function () { - pAll_1(); - if (tr_1) { - var nxt = _this.u[ind_1 + 1]; - if (nxt) - nxt.r(); - else - _this.d = 1; - } - tr_1 = 1; - } - }); - var cl_1 = 0; - file.ondata = function (err, dat, final) { - if (err) { - _this.ondata(err, dat, final); - _this.terminate(); - } - else { - cl_1 += dat.length; - chks_1.push(dat); - if (final) { - var dd = new u8(16); - wbytes(dd, 0, 0x8074B50); - wbytes(dd, 4, file.crc); - wbytes(dd, 8, cl_1); - wbytes(dd, 12, file.size); - chks_1.push(dd); - uf_1.c = cl_1, uf_1.b = hl_1 + cl_1 + 16, uf_1.crc = file.crc, uf_1.size = file.size; - if (tr_1) - uf_1.r(); - tr_1 = 1; - } - else if (tr_1) - pAll_1(); - } - }; - this.u.push(uf_1); - } - }; - /** - * Ends the process of adding files and prepares to emit the final chunks. - * This *must* be called after adding all desired files for the resulting - * ZIP file to work properly. - */ - Zip.prototype.end = function () { - var _this = this; - if (this.d & 2) { - this.ondata(err(4 + (this.d & 1) * 8, 0, 1), null, true); - return; - } - if (this.d) - this.e(); - else - this.u.push({ - r: function () { - if (!(_this.d & 1)) - return; - _this.u.splice(-1, 1); - _this.e(); - }, - t: function () { } - }); - this.d = 3; - }; - Zip.prototype.e = function () { - var bt = 0, l = 0, tl = 0; - for (var _i = 0, _a = this.u; _i < _a.length; _i++) { - var f = _a[_i]; - tl += 46 + f.f.length + exfl(f.extra) + (f.o ? f.o.length : 0); - } - var out = new u8(tl + 22); - for (var _b = 0, _c = this.u; _b < _c.length; _b++) { - var f = _c[_b]; - wzh(out, bt, f, f.f, f.u, -f.c - 2, l, f.o); - bt += 46 + f.f.length + exfl(f.extra) + (f.o ? f.o.length : 0), l += f.b; - } - wzf(out, bt, this.u.length, tl, l); - this.ondata(null, out, true); - this.d = 2; - }; - /** - * A method to terminate any internal workers used by the stream. Subsequent - * calls to add() will fail. - */ - Zip.prototype.terminate = function () { - for (var _i = 0, _a = this.u; _i < _a.length; _i++) { - var f = _a[_i]; - f.t(); - } - this.d = 2; - }; - return Zip; -}()))); - -function zip(data, opts, cb) { - if (!cb) - cb = opts, opts = {}; - if (typeof cb != 'function') - err(7); - var r = {}; - fltn(data, '', r, opts); - var k = Object.keys(r); - var lft = k.length, o = 0, tot = 0; - var slft = lft, files = new Array(lft); - var term = []; - var tAll = function () { - for (var i = 0; i < term.length; ++i) - term[i](); - }; - var cbd = function (a, b) { - mt(function () { cb(a, b); }); - }; - mt(function () { cbd = cb; }); - var cbf = function () { - var out = new u8(tot + 22), oe = o, cdl = tot - o; - tot = 0; - for (var i = 0; i < slft; ++i) { - var f = files[i]; - try { - var l = f.c.length; - wzh(out, tot, f, f.f, f.u, l); - var badd = 30 + f.f.length + exfl(f.extra); - var loc = tot + badd; - out.set(f.c, loc); - wzh(out, o, f, f.f, f.u, l, tot, f.m), o += 16 + badd + (f.m ? f.m.length : 0), tot = loc + l; - } - catch (e) { - return cbd(e, null); - } - } - wzf(out, o, files.length, cdl, oe); - cbd(null, out); - }; - if (!lft) - cbf(); - var _loop_1 = function (i) { - var fn = k[i]; - var _a = r[fn], file = _a[0], p = _a[1]; - var c = crc(), size = file.length; - c.p(file); - var f = strToU8(fn), s = f.length; - var com = p.comment, m = com && strToU8(com), ms = m && m.length; - var exl = exfl(p.extra); - var compression = p.level == 0 ? 0 : 8; - var cbl = function (e, d) { - if (e) { - tAll(); - cbd(e, null); - } - else { - var l = d.length; - files[i] = mrg(p, { - size: size, - crc: c.d(), - c: d, - f: f, - m: m, - u: s != fn.length || (m && (com.length != ms)), - compression: compression - }); - o += 30 + s + exl + l; - tot += 76 + 2 * (s + exl) + (ms || 0) + l; - if (!--lft) - cbf(); - } - }; - if (s > 65535) - cbl(err(11, 0, 1), null); - if (!compression) - cbl(null, file); - else if (size < 160000) { - try { - cbl(null, deflateSync(file, p)); - } - catch (e) { - cbl(e, null); - } - } - else - term.push(deflate(file, p, cbl)); - }; - // Cannot use lft because it can decrease - for (var i = 0; i < slft; ++i) { - _loop_1(i); - } - return tAll; -} -/** - * Synchronously creates a ZIP file. Prefer using `zip` for better performance - * with more than one file. - * @param data The directory structure for the ZIP archive - * @param opts The main options, merged with per-file options - * @returns The generated ZIP archive - */ -function zipSync(data, opts) { - if (!opts) - opts = {}; - var r = {}; - var files = []; - fltn(data, '', r, opts); - var o = 0; - var tot = 0; - for (var fn in r) { - var _a = r[fn], file = _a[0], p = _a[1]; - var compression = p.level == 0 ? 0 : 8; - var f = strToU8(fn), s = f.length; - var com = p.comment, m = com && strToU8(com), ms = m && m.length; - var exl = exfl(p.extra); - if (s > 65535) - err(11); - var d = compression ? deflateSync(file, p) : file, l = d.length; - var c = crc(); - c.p(file); - files.push(mrg(p, { - size: file.length, - crc: c.d(), - c: d, - f: f, - m: m, - u: s != fn.length || (m && (com.length != ms)), - o: o, - compression: compression - })); - o += 30 + s + exl + l; - tot += 76 + 2 * (s + exl) + (ms || 0) + l; - } - var out = new u8(tot + 22), oe = o, cdl = tot - o; - for (var i = 0; i < files.length; ++i) { - var f = files[i]; - wzh(out, f.o, f, f.f, f.u, f.c.length); - var badd = 30 + f.f.length + exfl(f.extra); - out.set(f.c, f.o + badd); - wzh(out, o, f, f.f, f.u, f.c.length, f.o, f.m), o += 16 + badd + (f.m ? f.m.length : 0); - } - wzf(out, o, files.length, cdl, oe); - return out; -} -/** - * Streaming pass-through decompression for ZIP archives - */ -var UnzipPassThrough = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - function UnzipPassThrough() { - } - UnzipPassThrough.prototype.push = function (data, final) { - this.ondata(null, data, final); - }; - UnzipPassThrough.compression = 0; - return UnzipPassThrough; -}()))); - -/** - * Streaming DEFLATE decompression for ZIP archives. Prefer AsyncZipInflate for - * better performance. - */ -var UnzipInflate = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - /** - * Creates a DEFLATE decompression that can be used in ZIP archives - */ - function UnzipInflate() { - var _this = this; - this.i = new Inflate(function (dat, final) { - _this.ondata(null, dat, final); - }); - } - UnzipInflate.prototype.push = function (data, final) { - try { - this.i.push(data, final); - } - catch (e) { - this.ondata(e, null, final); - } - }; - UnzipInflate.compression = 8; - return UnzipInflate; -}()))); - -/** - * Asynchronous streaming DEFLATE decompression for ZIP archives - */ -var AsyncUnzipInflate = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - /** - * Creates a DEFLATE decompression that can be used in ZIP archives - */ - function AsyncUnzipInflate(_, sz) { - var _this = this; - if (sz < 320000) { - this.i = new Inflate(function (dat, final) { - _this.ondata(null, dat, final); - }); - } - else { - this.i = new AsyncInflate(function (err, dat, final) { - _this.ondata(err, dat, final); - }); - this.terminate = this.i.terminate; - } - } - AsyncUnzipInflate.prototype.push = function (data, final) { - if (this.i.terminate) - data = slc(data, 0); - this.i.push(data, final); - }; - AsyncUnzipInflate.compression = 8; - return AsyncUnzipInflate; -}()))); - -/** - * A ZIP archive decompression stream that emits files as they are discovered - */ -var Unzip = /*#__PURE__*/ ((/* unused pure expression or super */ null && (function () { - /** - * Creates a ZIP decompression stream - * @param cb The callback to call whenever a file in the ZIP archive is found - */ - function Unzip(cb) { - this.onfile = cb; - this.k = []; - this.o = { - 0: UnzipPassThrough - }; - this.p = et; - } - /** - * Pushes a chunk to be unzipped - * @param chunk The chunk to push - * @param final Whether this is the last chunk - */ - Unzip.prototype.push = function (chunk, final) { - var _this = this; - if (!this.onfile) - err(5); - if (!this.p) - err(4); - if (this.c > 0) { - var len = Math.min(this.c, chunk.length); - var toAdd = chunk.subarray(0, len); - this.c -= len; - if (this.d) - this.d.push(toAdd, !this.c); - else - this.k[0].push(toAdd); - chunk = chunk.subarray(len); - if (chunk.length) - return this.push(chunk, final); - } - else { - var f = 0, i = 0, is = void 0, buf = void 0; - if (!this.p.length) - buf = chunk; - else if (!chunk.length) - buf = this.p; - else { - buf = new u8(this.p.length + chunk.length); - buf.set(this.p), buf.set(chunk, this.p.length); - } - var l = buf.length, oc = this.c, add = oc && this.d; - var _loop_2 = function () { - var _a; - var sig = b4(buf, i); - if (sig == 0x4034B50) { - f = 1, is = i; - this_1.d = null; - this_1.c = 0; - var bf = b2(buf, i + 6), cmp_1 = b2(buf, i + 8), u = bf & 2048, dd = bf & 8, fnl = b2(buf, i + 26), es = b2(buf, i + 28); - if (l > i + 30 + fnl + es) { - var chks_3 = []; - this_1.k.unshift(chks_3); - f = 2; - var sc_1 = b4(buf, i + 18), su_1 = b4(buf, i + 22); - var fn_1 = strFromU8(buf.subarray(i + 30, i += 30 + fnl), !u); - if (sc_1 == 4294967295) { - _a = dd ? [-2] : z64e(buf, i), sc_1 = _a[0], su_1 = _a[1]; - } - else if (dd) - sc_1 = -1; - i += es; - this_1.c = sc_1; - var d_1; - var file_1 = { - name: fn_1, - compression: cmp_1, - start: function () { - if (!file_1.ondata) - err(5); - if (!sc_1) - file_1.ondata(null, et, true); - else { - var ctr = _this.o[cmp_1]; - if (!ctr) - file_1.ondata(err(14, 'unknown compression type ' + cmp_1, 1), null, false); - d_1 = sc_1 < 0 ? new ctr(fn_1) : new ctr(fn_1, sc_1, su_1); - d_1.ondata = function (err, dat, final) { file_1.ondata(err, dat, final); }; - for (var _i = 0, chks_4 = chks_3; _i < chks_4.length; _i++) { - var dat = chks_4[_i]; - d_1.push(dat, false); - } - if (_this.k[0] == chks_3 && _this.c) - _this.d = d_1; - else - d_1.push(et, true); - } - }, - terminate: function () { - if (d_1 && d_1.terminate) - d_1.terminate(); - } - }; - if (sc_1 >= 0) - file_1.size = sc_1, file_1.originalSize = su_1; - this_1.onfile(file_1); - } - return "break"; - } - else if (oc) { - if (sig == 0x8074B50) { - is = i += 12 + (oc == -2 && 8), f = 3, this_1.c = 0; - return "break"; - } - else if (sig == 0x2014B50) { - is = i -= 4, f = 3, this_1.c = 0; - return "break"; - } - } - }; - var this_1 = this; - for (; i < l - 4; ++i) { - var state_1 = _loop_2(); - if (state_1 === "break") - break; - } - this.p = et; - if (oc < 0) { - var dat = f ? buf.subarray(0, is - 12 - (oc == -2 && 8) - (b4(buf, is - 16) == 0x8074B50 && 4)) : buf.subarray(0, i); - if (add) - add.push(dat, !!f); - else - this.k[+(f == 2)].push(dat); - } - if (f & 2) - return this.push(buf.subarray(i), final); - this.p = buf.subarray(i); - } - if (final) { - if (this.c) - err(13); - this.p = null; - } - }; - /** - * Registers a decoder with the stream, allowing for files compressed with - * the compression type provided to be expanded correctly - * @param decoder The decoder constructor - */ - Unzip.prototype.register = function (decoder) { - this.o[decoder.compression] = decoder; - }; - return Unzip; -}()))); - -var mt = typeof queueMicrotask == 'function' ? queueMicrotask : typeof setTimeout == 'function' ? setTimeout : function (fn) { fn(); }; -function unzip(data, opts, cb) { - if (!cb) - cb = opts, opts = {}; - if (typeof cb != 'function') - err(7); - var term = []; - var tAll = function () { - for (var i = 0; i < term.length; ++i) - term[i](); - }; - var files = {}; - var cbd = function (a, b) { - mt(function () { cb(a, b); }); - }; - mt(function () { cbd = cb; }); - var e = data.length - 22; - for (; b4(data, e) != 0x6054B50; --e) { - if (!e || data.length - e > 65558) { - cbd(err(13, 0, 1), null); - return tAll; - } - } - ; - var lft = b2(data, e + 8); - if (lft) { - var c = lft; - var o = b4(data, e + 16); - var z = o == 4294967295 || c == 65535; - if (z) { - var ze = b4(data, e - 12); - z = b4(data, ze) == 0x6064B50; - if (z) { - c = lft = b4(data, ze + 32); - o = b4(data, ze + 48); - } - } - var fltr = opts && opts.filter; - var _loop_3 = function (i) { - var _a = zh(data, o, z), c_1 = _a[0], sc = _a[1], su = _a[2], fn = _a[3], no = _a[4], off = _a[5], b = slzh(data, off); - o = no; - var cbl = function (e, d) { - if (e) { - tAll(); - cbd(e, null); - } - else { - if (d) - files[fn] = d; - if (!--lft) - cbd(null, files); - } - }; - if (!fltr || fltr({ - name: fn, - size: sc, - originalSize: su, - compression: c_1 - })) { - if (!c_1) - cbl(null, slc(data, b, b + sc)); - else if (c_1 == 8) { - var infl = data.subarray(b, b + sc); - // Synchronously decompress under 512KB, or barely-compressed data - if (su < 524288 || sc > 0.8 * su) { - try { - cbl(null, inflateSync(infl, { out: new u8(su) })); - } - catch (e) { - cbl(e, null); - } - } - else - term.push(inflate(infl, { size: su }, cbl)); - } - else - cbl(err(14, 'unknown compression type ' + c_1, 1), null); - } - else - cbl(null, null); - }; - for (var i = 0; i < c; ++i) { - _loop_3(i); - } - } - else - cbd(null, {}); - return tAll; -} -/** - * Synchronously decompresses a ZIP archive. Prefer using `unzip` for better - * performance with more than one file. - * @param data The raw compressed ZIP file - * @param opts The ZIP extraction options - * @returns The decompressed files - */ -function unzipSync(data, opts) { - var files = {}; - var e = data.length - 22; - for (; b4(data, e) != 0x6054B50; --e) { - if (!e || data.length - e > 65558) - err(13); - } - ; - var c = b2(data, e + 8); - if (!c) - return {}; - var o = b4(data, e + 16); - var z = o == 4294967295 || c == 65535; - if (z) { - var ze = b4(data, e - 12); - z = b4(data, ze) == 0x6064B50; - if (z) { - c = b4(data, ze + 32); - o = b4(data, ze + 48); - } - } - var fltr = opts && opts.filter; - for (var i = 0; i < c; ++i) { - var _a = zh(data, o, z), c_2 = _a[0], sc = _a[1], su = _a[2], fn = _a[3], no = _a[4], off = _a[5], b = slzh(data, off); - o = no; - if (!fltr || fltr({ - name: fn, - size: sc, - originalSize: su, - compression: c_2 - })) { - if (!c_2) - files[fn] = slc(data, b, b + sc); - else if (c_2 == 8) - files[fn] = inflateSync(data.subarray(b, b + sc), { out: new u8(su) }); - else - err(14, 'unknown compression type ' + c_2); - } - } - return files; -} - -;// CONCATENATED MODULE: ./src/data.ts -/* provided dependency */ var console = __webpack_require__(96763); - -var __async = (__this, __arguments, generator) => { - return new Promise((resolve, reject) => { - var fulfilled = (value) => { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - }; - var rejected = (value) => { - try { - step(generator.throw(value)); - } catch (e) { - reject(e); - } - }; - var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected); - step((generator = generator.apply(__this, __arguments)).next()); - }); -}; - - - -function existsAsync(fileOrDir) { - return __async(this, null, function* () { - try { - yield (0,promises_ignored_.stat)(fileOrDir); - return true; - } catch (e) { - return false; - } - }); -} -function zipAsync(file) { - return new Promise((res, rej) => { - zip(file, { mtime: /* @__PURE__ */ new Date("1/1/1980") }, (err, data) => { - if (err) { - rej(err); - return; - } - res(data); - }); - }); -} -function unzipAsync(data) { - return new Promise((res, rej) => { - unzip(data, {}, (err, data2) => { - if (err) { - rej(err); - return; - } - res(data2); - }); - }); -} -function saveUserFile(_0) { - return __async(this, arguments, function* ({ - fileName, - userDirectory, - dataString - }) { - fileName = fileName.toLowerCase(); - const filePath = path_ignored_default().join(userDirectory, fileName); - const payload = yield zipAsync({ - [fileName]: new TextEncoder().encode(dataString) - }); - if (!(yield existsAsync(userDirectory))) { - yield (0,promises_ignored_.mkdir)(userDirectory, { recursive: true }); - } - yield (0,promises_ignored_.writeFile)(filePath + ".zip", payload); - yield (0,promises_ignored_.writeFile)(filePath, dataString); - }); -} -function loadSavedEvents(_0) { - return __async(this, arguments, function* ({ - name, - userDirectory, - deployedBlock - }) { - const filePath = path_ignored_default().join(userDirectory, `${name}.json`.toLowerCase()); - if (!(yield existsAsync(filePath))) { - return { - events: [], - lastBlock: null - }; - } - try { - const events = JSON.parse(yield (0,promises_ignored_.readFile)(filePath, { encoding: "utf8" })); - return { - events, - lastBlock: events && events.length ? events[events.length - 1].blockNumber : deployedBlock - }; - } catch (err) { - console.log("Method loadSavedEvents has error"); - console.log(err); - return { - events: [], - lastBlock: deployedBlock - }; - } - }); -} -function download(_0) { - return __async(this, arguments, function* ({ name, cacheDirectory }) { - const fileName = `${name}.json`.toLowerCase(); - const zipName = `${fileName}.zip`; - const zipPath = path_ignored_default().join(cacheDirectory, zipName); - const data = yield (0,promises_ignored_.readFile)(zipPath); - const { [fileName]: content } = yield unzipAsync(data); - return new TextDecoder().decode(content); - }); -} -function loadCachedEvents(_0) { - return __async(this, arguments, function* ({ - name, - cacheDirectory, - deployedBlock - }) { - try { - const module = yield download({ cacheDirectory, name }); - if (module) { - const events = JSON.parse(module); - const lastBlock = events && events.length ? events[events.length - 1].blockNumber : deployedBlock; - return { - events, - lastBlock - }; - } - return { - events: [], - lastBlock: deployedBlock - }; - } catch (err) { - console.log("Method loadCachedEvents has error"); - console.log(err); - return { - events: [], - lastBlock: deployedBlock - }; - } - }); -} - - /***/ }), /***/ 7240: @@ -64516,11 +61440,6 @@ __webpack_require__.r(__webpack_exports__); /* harmony export */ BaseRegistryService: () => (/* reexport safe */ _base__WEBPACK_IMPORTED_MODULE_1__.cE), /* harmony export */ BaseTornadoService: () => (/* reexport safe */ _base__WEBPACK_IMPORTED_MODULE_1__.e0), /* harmony export */ DEPOSIT: () => (/* reexport safe */ _base__WEBPACK_IMPORTED_MODULE_1__.Lx), -/* harmony export */ NodeEchoService: () => (/* reexport safe */ _node__WEBPACK_IMPORTED_MODULE_2__.Rl), -/* harmony export */ NodeEncryptedNotesService: () => (/* reexport safe */ _node__WEBPACK_IMPORTED_MODULE_2__.l5), -/* harmony export */ NodeGovernanceService: () => (/* reexport safe */ _node__WEBPACK_IMPORTED_MODULE_2__.Om), -/* harmony export */ NodeRegistryService: () => (/* reexport safe */ _node__WEBPACK_IMPORTED_MODULE_2__.b5), -/* harmony export */ NodeTornadoService: () => (/* reexport safe */ _node__WEBPACK_IMPORTED_MODULE_2__.$X), /* harmony export */ WITHDRAWAL: () => (/* reexport safe */ _base__WEBPACK_IMPORTED_MODULE_1__.oW) /* harmony export */ }); /* harmony import */ var _types__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(61060); @@ -64529,717 +61448,11 @@ __webpack_require__.r(__webpack_exports__); /* harmony reexport (unknown) */ for(const __WEBPACK_IMPORT_KEY__ in _types__WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== "default") __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = () => _types__WEBPACK_IMPORTED_MODULE_0__[__WEBPACK_IMPORT_KEY__] /* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__); /* harmony import */ var _base__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(71304); -/* harmony import */ var _node__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(82737); - -/***/ }), - -/***/ 82737: -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ $X: () => (/* binding */ NodeTornadoService), -/* harmony export */ Om: () => (/* binding */ NodeGovernanceService), -/* harmony export */ Rl: () => (/* binding */ NodeEchoService), -/* harmony export */ b5: () => (/* binding */ NodeRegistryService), -/* harmony export */ l5: () => (/* binding */ NodeEncryptedNotesService) -/* harmony export */ }); -/* harmony import */ var cli_table3__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(29530); -/* harmony import */ var cli_table3__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(cli_table3__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(95093); -/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_1__); -/* harmony import */ var _data__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(11489); -/* harmony import */ var _base__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(71304); -/* provided dependency */ var console = __webpack_require__(96763); - -var __async = (__this, __arguments, generator) => { - return new Promise((resolve, reject) => { - var fulfilled = (value) => { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - }; - var rejected = (value) => { - try { - step(generator.throw(value)); - } catch (e) { - reject(e); - } - }; - var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected); - step((generator = generator.apply(__this, __arguments)).next()); - }); -}; - - - - -class NodeTornadoService extends _base__WEBPACK_IMPORTED_MODULE_3__/* .BaseTornadoService */ .e0 { - constructor({ - netId, - provider, - graphApi, - subgraphName, - Tornado, - type, - amount, - currency, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory - }) { - super({ - netId, - provider, - graphApi, - subgraphName, - Tornado, - type, - amount, - currency, - deployedBlock, - fetchDataOptions - }); - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - updateEventProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock} -`); - } - } - } - updateTransactionProgress({ currentIndex, totalIndex }) { - if (totalIndex) { - console.log(`Fetched ${currentIndex} deposit txs of ${totalIndex}`); - } - } - updateBlockProgress({ currentIndex, totalIndex }) { - if (totalIndex) { - console.log(`Fetched ${currentIndex} withdrawal blocks of ${totalIndex}`); - } - } - updateGraphProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock} -`); - } - } - } - getEventsFromDB() { - return __async(this, null, function* () { - if (!this.userDirectory) { - console.log( - "Updating events for", - this.amount, - this.currency.toUpperCase(), - `${this.getType().toLowerCase()}s -` - ); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const savedEvents = yield (0,_data__WEBPACK_IMPORTED_MODULE_2__/* .loadSavedEvents */ .rx)({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock - }); - console.log("Updating events for", this.amount, this.currency.toUpperCase(), `${this.getType().toLowerCase()}s -`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock} -`); - return savedEvents; - }); - } - getEventsFromCache() { - return __async(this, null, function* () { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const cachedEvents = yield (0,_data__WEBPACK_IMPORTED_MODULE_2__/* .loadCachedEvents */ .sw)({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock} -`); - return cachedEvents; - }); - } - saveEvents(_0) { - return __async(this, arguments, function* ({ events, lastBlock }) { - const instanceName = this.getInstanceName(); - console.log("\ntotalEvents count - ", events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock} -` - ); - const eventTable = new (cli_table3__WEBPACK_IMPORTED_MODULE_0___default())(); - eventTable.push( - [{ colSpan: 2, content: `${this.getType()}s`, hAlign: "center" }], - ["Instance", `${this.netId} chain ${this.amount} ${this.currency.toUpperCase()}`], - ["Anonymity set", `${events.length} equal user ${this.getType().toLowerCase()}s`], - [{ colSpan: 2, content: `Latest ${this.getType().toLowerCase()}s` }], - ...events.slice(events.length - 10).reverse().map(({ timestamp }, index) => { - const eventIndex = events.length - index; - const eventTime = moment__WEBPACK_IMPORTED_MODULE_1___default().unix(timestamp).fromNow(); - return [eventIndex, eventTime]; - }) - ); - console.log(eventTable.toString() + "\n"); - if (this.userDirectory) { - yield (0,_data__WEBPACK_IMPORTED_MODULE_2__/* .saveUserFile */ .jj)({ - fileName: instanceName + ".json", - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + "\n" - }); - } - }); - } -} -class NodeEchoService extends _base__WEBPACK_IMPORTED_MODULE_3__/* .BaseEchoService */ .GS { - constructor({ - netId, - provider, - graphApi, - subgraphName, - Echoer, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory - }) { - super({ - netId, - provider, - graphApi, - subgraphName, - Echoer, - deployedBlock, - fetchDataOptions - }); - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - updateEventProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock} -`); - } - } - } - updateGraphProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock} -`); - } - } - } - getEventsFromDB() { - return __async(this, null, function* () { - if (!this.userDirectory) { - console.log(`Updating events for ${this.netId} chain echo events -`); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const savedEvents = yield (0,_data__WEBPACK_IMPORTED_MODULE_2__/* .loadSavedEvents */ .rx)({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`Updating events for ${this.netId} chain echo events -`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock} -`); - return savedEvents; - }); - } - getEventsFromCache() { - return __async(this, null, function* () { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const cachedEvents = yield (0,_data__WEBPACK_IMPORTED_MODULE_2__/* .loadCachedEvents */ .sw)({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock} -`); - return cachedEvents; - }); - } - saveEvents(_0) { - return __async(this, arguments, function* ({ events, lastBlock }) { - const instanceName = this.getInstanceName(); - console.log("\ntotalEvents count - ", events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock} -` - ); - const eventTable = new (cli_table3__WEBPACK_IMPORTED_MODULE_0___default())(); - eventTable.push( - [{ colSpan: 2, content: "Echo Accounts", hAlign: "center" }], - ["Network", `${this.netId} chain`], - ["Events", `${events.length} events`], - [{ colSpan: 2, content: "Latest events" }], - ...events.slice(events.length - 10).reverse().map(({ blockNumber }, index) => { - const eventIndex = events.length - index; - return [eventIndex, blockNumber]; - }) - ); - console.log(eventTable.toString() + "\n"); - if (this.userDirectory) { - yield (0,_data__WEBPACK_IMPORTED_MODULE_2__/* .saveUserFile */ .jj)({ - fileName: instanceName + ".json", - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + "\n" - }); - } - }); - } -} -class NodeEncryptedNotesService extends _base__WEBPACK_IMPORTED_MODULE_3__/* .BaseEncryptedNotesService */ .O_ { - constructor({ - netId, - provider, - graphApi, - subgraphName, - Router, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory - }) { - super({ - netId, - provider, - graphApi, - subgraphName, - Router, - deployedBlock, - fetchDataOptions - }); - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - updateEventProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock} -`); - } - } - } - updateGraphProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock} -`); - } - } - } - getEventsFromDB() { - return __async(this, null, function* () { - if (!this.userDirectory) { - console.log(`Updating events for ${this.netId} chain encrypted events -`); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const savedEvents = yield (0,_data__WEBPACK_IMPORTED_MODULE_2__/* .loadSavedEvents */ .rx)({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`Updating events for ${this.netId} chain encrypted events -`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock} -`); - return savedEvents; - }); - } - getEventsFromCache() { - return __async(this, null, function* () { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const cachedEvents = yield (0,_data__WEBPACK_IMPORTED_MODULE_2__/* .loadCachedEvents */ .sw)({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock} -`); - return cachedEvents; - }); - } - saveEvents(_0) { - return __async(this, arguments, function* ({ events, lastBlock }) { - const instanceName = this.getInstanceName(); - console.log("\ntotalEvents count - ", events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock} -` - ); - const eventTable = new (cli_table3__WEBPACK_IMPORTED_MODULE_0___default())(); - eventTable.push( - [{ colSpan: 2, content: "Encrypted Notes", hAlign: "center" }], - ["Network", `${this.netId} chain`], - ["Events", `${events.length} events`], - [{ colSpan: 2, content: "Latest events" }], - ...events.slice(events.length - 10).reverse().map(({ blockNumber }, index) => { - const eventIndex = events.length - index; - return [eventIndex, blockNumber]; - }) - ); - console.log(eventTable.toString() + "\n"); - if (this.userDirectory) { - yield (0,_data__WEBPACK_IMPORTED_MODULE_2__/* .saveUserFile */ .jj)({ - fileName: instanceName + ".json", - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + "\n" - }); - } - }); - } -} -class NodeGovernanceService extends _base__WEBPACK_IMPORTED_MODULE_3__/* .BaseGovernanceService */ .JJ { - constructor({ - netId, - provider, - graphApi, - subgraphName, - Governance, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory - }) { - super({ - netId, - provider, - graphApi, - subgraphName, - Governance, - deployedBlock, - fetchDataOptions - }); - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - updateEventProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock} -`); - } - } - } - updateGraphProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock} -`); - } - } - } - updateTransactionProgress({ currentIndex, totalIndex }) { - if (totalIndex) { - console.log(`Fetched ${currentIndex} governance txs of ${totalIndex}`); - } - } - getEventsFromDB() { - return __async(this, null, function* () { - if (!this.userDirectory) { - console.log(`Updating events for ${this.netId} chain governance events -`); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const savedEvents = yield (0,_data__WEBPACK_IMPORTED_MODULE_2__/* .loadSavedEvents */ .rx)({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`Updating events for ${this.netId} chain governance events -`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock} -`); - return savedEvents; - }); - } - getEventsFromCache() { - return __async(this, null, function* () { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const cachedEvents = yield (0,_data__WEBPACK_IMPORTED_MODULE_2__/* .loadCachedEvents */ .sw)({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock} -`); - return cachedEvents; - }); - } - saveEvents(_0) { - return __async(this, arguments, function* ({ events, lastBlock }) { - const instanceName = this.getInstanceName(); - console.log("\ntotalEvents count - ", events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock} -` - ); - const eventTable = new (cli_table3__WEBPACK_IMPORTED_MODULE_0___default())(); - eventTable.push( - [{ colSpan: 2, content: "Governance Events", hAlign: "center" }], - ["Network", `${this.netId} chain`], - ["Events", `${events.length} events`], - [{ colSpan: 2, content: "Latest events" }], - ...events.slice(events.length - 10).reverse().map(({ blockNumber }, index) => { - const eventIndex = events.length - index; - return [eventIndex, blockNumber]; - }) - ); - console.log(eventTable.toString() + "\n"); - if (this.userDirectory) { - yield (0,_data__WEBPACK_IMPORTED_MODULE_2__/* .saveUserFile */ .jj)({ - fileName: instanceName + ".json", - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + "\n" - }); - } - }); - } -} -class NodeRegistryService extends _base__WEBPACK_IMPORTED_MODULE_3__/* .BaseRegistryService */ .cE { - constructor({ - netId, - provider, - graphApi, - subgraphName, - RelayerRegistry, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory - }) { - super({ - netId, - provider, - graphApi, - subgraphName, - RelayerRegistry, - deployedBlock, - fetchDataOptions - }); - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - updateEventProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock} -`); - } - } - } - updateGraphProgress({ type, fromBlock, toBlock, count }) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log("____________________________________________"); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock} -`); - } - } - } - getEventsFromDB() { - return __async(this, null, function* () { - if (!this.userDirectory) { - console.log(`Updating events for ${this.netId} chain registry events -`); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const savedEvents = yield (0,_data__WEBPACK_IMPORTED_MODULE_2__/* .loadSavedEvents */ .rx)({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`Updating events for ${this.netId} chain registry events -`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock} -`); - return savedEvents; - }); - } - getEventsFromCache() { - return __async(this, null, function* () { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock} -`); - return { - events: [], - lastBlock: this.deployedBlock - }; - } - const cachedEvents = yield (0,_data__WEBPACK_IMPORTED_MODULE_2__/* .loadCachedEvents */ .sw)({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock - }); - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock} -`); - return cachedEvents; - }); - } - saveEvents(_0) { - return __async(this, arguments, function* ({ events, lastBlock }) { - const instanceName = this.getInstanceName(); - console.log("\ntotalEvents count - ", events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock} -` - ); - const eventTable = new (cli_table3__WEBPACK_IMPORTED_MODULE_0___default())(); - eventTable.push( - [{ colSpan: 2, content: "Registered Relayers", hAlign: "center" }], - ["Network", `${this.netId} chain`], - ["Events", `${events.length} events`], - [{ colSpan: 2, content: "Latest events" }], - ...events.slice(events.length - 10).reverse().map(({ blockNumber }, index) => { - const eventIndex = events.length - index; - return [eventIndex, blockNumber]; - }) - ); - console.log(eventTable.toString() + "\n"); - if (this.userDirectory) { - yield (0,_data__WEBPACK_IMPORTED_MODULE_2__/* .saveUserFile */ .jj)({ - fileName: instanceName + ".json", - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + "\n" - }); - } - }); - } -} - - /***/ }), /***/ 61060: @@ -65380,8 +61593,8 @@ __webpack_require__.d(__webpack_exports__, { // EXTERNAL MODULE: ./node_modules/ethers/lib.esm/address/address.js var address_address = __webpack_require__(30031); -// EXTERNAL MODULE: ./src/providers.ts + 40 modules -var providers = __webpack_require__(64819); +// EXTERNAL MODULE: ./src/providers.ts + 46 modules +var providers = __webpack_require__(68434); ;// CONCATENATED MODULE: ./src/graphql/queries.ts const GET_STATISTIC = ` @@ -67363,97 +63576,6 @@ function getSubdomains() { } -/***/ }), - -/***/ 30200: -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ $J: () => (/* binding */ parseNumber), -/* harmony export */ Dl: () => (/* binding */ parseUrl), -/* harmony export */ Do: () => (/* binding */ parseKey), -/* harmony export */ _p: () => (/* binding */ parseRecoveryKey), -/* harmony export */ or: () => (/* binding */ parseAddress), -/* harmony export */ qc: () => (/* binding */ parseMnemonic), -/* harmony export */ yJ: () => (/* binding */ parseRelayer) -/* harmony export */ }); -/* harmony import */ var commander__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(60684); -/* harmony import */ var commander__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(commander__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var ethers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(30031); -/* harmony import */ var ethers__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(37514); -/* harmony import */ var ethers__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(20415); -/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(67418); - - - - -function parseNumber(value) { - if (!value || isNaN(Number(value))) { - throw new commander__WEBPACK_IMPORTED_MODULE_0__.InvalidArgumentError("Invalid Number"); - } - return Number(value); -} -function parseUrl(value) { - if (!value || !(0,_utils__WEBPACK_IMPORTED_MODULE_1__/* .validateUrl */ .wv)(value, ["http:", "https:"])) { - throw new commander__WEBPACK_IMPORTED_MODULE_0__.InvalidArgumentError("Invalid URL"); - } - return value; -} -function parseRelayer(value) { - if (!value || !(value.endsWith(".eth") || (0,_utils__WEBPACK_IMPORTED_MODULE_1__/* .validateUrl */ .wv)(value, ["http:", "https:"]))) { - throw new commander__WEBPACK_IMPORTED_MODULE_0__.InvalidArgumentError("Invalid Relayer ETH address or URL"); - } - return value; -} -function parseAddress(value) { - if (!value) { - throw new commander__WEBPACK_IMPORTED_MODULE_0__.InvalidArgumentError("Invalid Address"); - } - try { - return (0,ethers__WEBPACK_IMPORTED_MODULE_2__/* .getAddress */ .b)(value); - } catch (e) { - throw new commander__WEBPACK_IMPORTED_MODULE_0__.InvalidArgumentError("Invalid Address"); - } -} -function parseMnemonic(value) { - if (!value) { - throw new commander__WEBPACK_IMPORTED_MODULE_0__.InvalidArgumentError("Invalid Mnemonic"); - } - try { - ethers__WEBPACK_IMPORTED_MODULE_3__/* .Mnemonic */ .v.fromPhrase(value); - } catch (e) { - throw new commander__WEBPACK_IMPORTED_MODULE_0__.InvalidArgumentError("Invalid Mnemonic"); - } - return value; -} -function parseKey(value) { - if (!value) { - throw new commander__WEBPACK_IMPORTED_MODULE_0__.InvalidArgumentError("Invalid Private Key"); - } - if (value.length === 64) { - value = "0x" + value; - } - try { - (0,ethers__WEBPACK_IMPORTED_MODULE_4__/* .computeAddress */ .K)(value); - } catch (e) { - throw new commander__WEBPACK_IMPORTED_MODULE_0__.InvalidArgumentError("Invalid Private Key"); - } - return value; -} -function parseRecoveryKey(value) { - if (!value) { - throw new commander__WEBPACK_IMPORTED_MODULE_0__.InvalidArgumentError("Invalid Recovery Key"); - } - try { - (0,ethers__WEBPACK_IMPORTED_MODULE_4__/* .computeAddress */ .K)("0x" + value); - } catch (e) { - throw new commander__WEBPACK_IMPORTED_MODULE_0__.InvalidArgumentError("Invalid Recovery Key"); - } - return value; -} - - /***/ }), /***/ 85111: @@ -67582,7 +63704,7 @@ class TokenPriceOracle { /***/ }), -/***/ 64819: +/***/ 68434: /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { "use strict"; @@ -67607,12 +63729,6 @@ __webpack_require__.d(__webpack_exports__, { // EXTERNAL MODULE: ./node_modules/cross-fetch/dist/browser-ponyfill.js var browser_ponyfill = __webpack_require__(74945); var browser_ponyfill_default = /*#__PURE__*/__webpack_require__.n(browser_ponyfill); -// EXTERNAL MODULE: http-proxy-agent (ignored) -var http_proxy_agent_ignored_ = __webpack_require__(60513); -// EXTERNAL MODULE: https-proxy-agent (ignored) -var https_proxy_agent_ignored_ = __webpack_require__(2378); -// EXTERNAL MODULE: socks-proxy-agent (ignored) -var socks_proxy_agent_ignored_ = __webpack_require__(60290); // EXTERNAL MODULE: ./node_modules/ethers/lib.esm/utils/properties.js var properties = __webpack_require__(88081); // EXTERNAL MODULE: ./node_modules/ethers/lib.esm/utils/errors.js @@ -74014,10 +70130,420 @@ randomBytes.register = function (func) { }; Object.freeze(randomBytes); //# sourceMappingURL=random.js.map -// EXTERNAL MODULE: ./node_modules/ethers/lib.esm/wordlists/lang-en.js + 3 modules -var lang_en = __webpack_require__(24636); -// EXTERNAL MODULE: ./node_modules/ethers/lib.esm/wallet/mnemonic.js -var wallet_mnemonic = __webpack_require__(37514); +;// CONCATENATED MODULE: ./node_modules/ethers/lib.esm/wordlists/decode-owl.js + +const subsChrs = " !#$%&'()*+,-./<=>?@[]^_`{|}~"; +const Word = /^[a-z]*$/i; +function unfold(words, sep) { + let initial = 97; + return words.reduce((accum, word) => { + if (word === sep) { + initial++; + } + else if (word.match(Word)) { + accum.push(String.fromCharCode(initial) + word); + } + else { + initial = 97; + accum.push(word); + } + return accum; + }, []); +} +/** + * @_ignore + */ +function decode(data, subs) { + // Replace all the substitutions with their expanded form + for (let i = subsChrs.length - 1; i >= 0; i--) { + data = data.split(subsChrs[i]).join(subs.substring(2 * i, 2 * i + 2)); + } + // Get all tle clumps; each suffix, first-increment and second-increment + const clumps = []; + const leftover = data.replace(/(:|([0-9])|([A-Z][a-z]*))/g, (all, item, semi, word) => { + if (semi) { + for (let i = parseInt(semi); i >= 0; i--) { + clumps.push(";"); + } + } + else { + clumps.push(item.toLowerCase()); + } + return ""; + }); + /* c8 ignore start */ + if (leftover) { + throw new Error(`leftovers: ${JSON.stringify(leftover)}`); + } + /* c8 ignore stop */ + return unfold(unfold(clumps, ";"), ":"); +} +/** + * @_ignore + */ +function decodeOwl(data) { + (0,errors/* assertArgument */.MR)(data[0] === "0", "unsupported auwl data", "data", data); + return decode(data.substring(1 + 2 * subsChrs.length), data.substring(1, 1 + 2 * subsChrs.length)); +} +//# sourceMappingURL=decode-owl.js.map +;// CONCATENATED MODULE: ./node_modules/ethers/lib.esm/wordlists/wordlist.js + +/** + * A Wordlist represents a collection of language-specific + * words used to encode and devoce [[link-bip-39]] encoded data + * by mapping words to 11-bit values and vice versa. + */ +class Wordlist { + locale; + /** + * Creates a new Wordlist instance. + * + * Sub-classes MUST call this if they provide their own constructor, + * passing in the locale string of the language. + * + * Generally there is no need to create instances of a Wordlist, + * since each language-specific Wordlist creates an instance and + * there is no state kept internally, so they are safe to share. + */ + constructor(locale) { + (0,properties/* defineProperties */.n)(this, { locale }); + } + /** + * Sub-classes may override this to provide a language-specific + * method for spliting %%phrase%% into individual words. + * + * By default, %%phrase%% is split using any sequences of + * white-space as defined by regular expressions (i.e. ``/\s+/``). + */ + split(phrase) { + return phrase.toLowerCase().split(/\s+/g); + } + /** + * Sub-classes may override this to provider a language-specific + * method for joining %%words%% into a phrase. + * + * By default, %%words%% are joined by a single space. + */ + join(words) { + return words.join(" "); + } +} +//# sourceMappingURL=wordlist.js.map +;// CONCATENATED MODULE: ./node_modules/ethers/lib.esm/wordlists/wordlist-owl.js +// Use the encode-latin.js script to create the necessary +// data files to be consumed by this class + + + + +/** + * An OWL format Wordlist is an encoding method that exploits + * the general locality of alphabetically sorted words to + * achieve a simple but effective means of compression. + * + * This class is generally not useful to most developers as + * it is used mainly internally to keep Wordlists for languages + * based on ASCII-7 small. + * + * If necessary, there are tools within the ``generation/`` folder + * to create the necessary data. + */ +class WordlistOwl extends Wordlist { + #data; + #checksum; + /** + * Creates a new Wordlist for %%locale%% using the OWL %%data%% + * and validated against the %%checksum%%. + */ + constructor(locale, data, checksum) { + super(locale); + this.#data = data; + this.#checksum = checksum; + this.#words = null; + } + /** + * The OWL-encoded data. + */ + get _data() { return this.#data; } + /** + * Decode all the words for the wordlist. + */ + _decodeWords() { + return decodeOwl(this.#data); + } + #words; + #loadWords() { + if (this.#words == null) { + const words = this._decodeWords(); + // Verify the computed list matches the official list + const checksum = (0,id.id)(words.join("\n") + "\n"); + /* c8 ignore start */ + if (checksum !== this.#checksum) { + throw new Error(`BIP39 Wordlist for ${this.locale} FAILED`); + } + /* c8 ignore stop */ + this.#words = words; + } + return this.#words; + } + getWord(index) { + const words = this.#loadWords(); + (0,errors/* assertArgument */.MR)(index >= 0 && index < words.length, `invalid word index: ${index}`, "index", index); + return words[index]; + } + getWordIndex(word) { + return this.#loadWords().indexOf(word); + } +} +//# sourceMappingURL=wordlist-owl.js.map +;// CONCATENATED MODULE: ./node_modules/ethers/lib.esm/wordlists/lang-en.js + +const words = "0erleonalorenseinceregesticitStanvetearctssi#ch2Athck&tneLl0And#Il.yLeOutO=S|S%b/ra@SurdU'0Ce[Cid|CountCu'Hie=IdOu,-Qui*Ro[TT]T%T*[Tu$0AptDD-tD*[Ju,M.UltV<)Vi)0Rob-0FairF%dRaid0A(EEntRee0Ead0MRRp%tS!_rmBumCoholErtI&LLeyLowMo,O}PhaReadySoT Ways0A>urAz(gOngOuntU'd0Aly,Ch%Ci|G G!GryIm$K!Noun)Nu$O` Sw T&naTiqueXietyY1ArtOlogyPe?P!Pro=Ril1ChCt-EaEnaGueMMedM%MyOundR<+Re,Ri=RowTTefa@Ti,Tw%k0KPe@SaultSetSi,SumeThma0H!>OmTa{T&dT.udeTra@0Ct]D.Gu,NtTh%ToTumn0Era+OcadoOid0AkeA*AyEsomeFulKw?d0Is:ByChel%C#D+GL<)Lc#y~MbooN_{Ad!AftAmA}AshAt AwlAzyEamEd.EekEwI{etImeIspIt-OpO[Ou^OwdUci$UelUi'Umb!Un^UshYY,$2BeLtu*PPbo?dRiousRr|Rta(R=Sh]/omTe3C!:DMa+MpN)Ng R(gShUght WnY3AlBa>BrisCadeCemb CideCl(eC%a>C*a'ErF&'F(eFyG*eLayLiv M3AgramAlAm#dAryCeE'lEtFf G.$Gn.yLemmaNn NosaurRe@RtSag*eScov Sea'ShSmi[S%d Splay/<)V tVideV%)Zzy5Ct%Cum|G~Lph(Ma(Na>NkeyN%OrSeUb!Ve_ftAg#AmaA,-AwEamE[IftIllInkIpI=OpUmY2CkMbNeR(g/T^Ty1Arf1Nam-:G G!RlyRnR`Sily/Sy1HoOlogyOnomy0GeItUca>1F%t0G1GhtTh 2BowD E@r-EgSe0B?kBodyBra)Er+Ot]PloyPow Pty0Ab!A@DD![D%'EmyErgyF%)Ga+G(eH<)JoyLi,OughR-hRollSu*T Ti*TryVelope1Isode0U$Uip0AA'OdeOs]R%Upt0CapeSayS&)Ta>0Ern$H-s1Id&)IlOkeOl=1A@Amp!Ce[Ch<+C.eCludeCu'Ecu>Erci'Hau,Hib.I!I,ItOt-PM&'Mu}Pa@Po'Pro=Pul'0ChCludeComeC*a'DexD-a>Do%Du,ryFN Noc|PutQuirySSue0Em1Ory:CketGu?RZz3AlousAns~yWel9BInKeUr}yY5D+I)MpNg!Ni%Nk/:Ng?oo3EnEpT^upY3CkDD}yNdNgdomSsTT^&TeTt&Wi4EeIfeO{Ow:BBelB%Dd DyKeMpNgua+PtopR+T T(UghUndryVaWWnWsu.Y Zy3Ad AfArnA=Ctu*FtGG$G&dIsu*M#NdNg`NsOp?dSs#Tt Vel3ArB tyBr?yC&'FeFtGhtKeMbM.NkOnQuid/Tt!VeZ?d5AdAnB, C$CkG-NelyNgOpTt yUdUn+VeY$5CkyGga+Mb N?N^Xury3R-s:Ch(eDG-G}tIdIlInJ%KeMm$NNa+Nda>NgoNs]Nu$P!Rb!R^Rg(R(eRketRria+SkSs/ T^T i$ThTrixTt XimumZe3AdowAnAsu*AtCh<-D$DiaLodyLtMb M%yNt]NuRcyR+R.RryShSsa+T$Thod3Dd!DnightLk~]M-NdNimumN%Nu>Rac!Rr%S ySs/akeXXedXtu*5Bi!DelDifyMM|N.%NkeyN, N`OnR$ReRn(gSqu.oTh T]T%Unta(U'VeVie5ChFf(LeLtiplySc!SeumShroomS-/Tu$3Self/ yTh:I=MePk(Rrow/yT]Tu*3ArCkEdGati=G!@I` PhewR=/TTw%kUtr$V WsXt3CeGht5B!I'M(eeOd!Rm$R`SeTab!TeTh(gTi)VelW5C!?Mb R'T:K0EyJe@Li+Scu*S =Ta(Vious0CurEAyEa'Ed+U{UgUn+2EmEtIntL?LeLi)NdNyOlPul?Rt]S.]Ssib!/TatoTt yV tyWd W _@i)Ai'Ed-tEf Epa*Es|EttyEv|I)IdeIm?yIntI%.yIs#Iva>IzeOb!mO)[Odu)Of.OgramOje@Omo>OofOp tyOsp O>@OudOvide2Bl-Dd(g~LpL'Mpk(N^PilPpyR^a'R.yRpo'R'ShTZz!3Ramid:99Al.yAntumArt E,]I{ItIzO>:Bb.Cco#CeCkD?DioIlInI'~yMpN^NdomN+PidReTeTh V&WZ%3AdyAlAs#BelBuildC$lCei=CipeC%dCyc!Du)F!@F%mFu'G]G*tGul?Je@LaxLea'LiefLyMa(Memb M(dMo=Nd NewNtOp&PairPeatPla)P%tQui*ScueSemb!Si,Sour)Sp#'SultTi*T*atTurnUn]Ve$ViewW?d2Y`m0BBb#CeChDeD+F!GhtGidNgOtPp!SkTu$V$V 5AdA,BotBu,CketM<)OfOkieOmSeTa>UghUndU>Y$5Bb DeGLeNNwayR$:DDd!D}[FeIlLadLm#L#LtLu>MeMp!NdTisfyToshiU)Usa+VeY1A!AnA*Att E}HemeHoolI&)I[%sOrp]OutRapRe&RiptRub1AAr^As#AtC#dC*tCt]Cur.yEdEkGm|Le@~M(?Ni%N'Nt&)RiesRvi)Ss]Tt!TupV&_dowAftAllowA*EdEllEriffIeldIftI}IpIv O{OeOotOpOrtOuld O=RimpRugUff!Y0Bl(gCkDeE+GhtGnL|Lk~yLv Mil?Mp!N)NgR&/ Tua>XZe1A>Et^IIllInIrtUll0AbAmEepEnd I)IdeIghtImOgAyEakEelEmEpE*oI{IllIngO{Oma^O}OolOryO=Ra>gyReetRikeR#gRugg!Ud|UffUmb!Y!0Bje@Bm.BwayC)[ChDd&Ff G?G+,ItMm NNnyN'tP PplyP*meReRfa)R+Rpri'RroundR=ySpe@/a(1AllowAmpApArmE?EetIftImIngIt^Ord1MbolMptomRup/em:B!Ck!GIlL|LkNkPeR+tSk/eTtooXi3A^Am~NNGradeHoldOnP Set1BOng::Rd3Ar~ow9UUngU`:3BraRo9NeO"; +const checksum = "0x3c8acc1e7b08d8e76f9fda015ef48dc8c710a73cb7e0f77b2c18a9b5a7adde60"; +let wordlist = null; +/** + * The [[link-bip39-en]] for [mnemonic phrases](link-bip-39). + * + * @_docloc: api/wordlists + */ +class LangEn extends WordlistOwl { + /** + * Creates a new instance of the English language Wordlist. + * + * This should be unnecessary most of the time as the exported + * [[langEn]] should suffice. + * + * @_ignore: + */ + constructor() { super("en", words, checksum); } + /** + * Returns a singleton instance of a ``LangEn``, creating it + * if this is the first time being called. + */ + static wordlist() { + if (wordlist == null) { + wordlist = new LangEn(); + } + return wordlist; + } +} +//# sourceMappingURL=lang-en.js.map +;// CONCATENATED MODULE: ./node_modules/ethers/lib.esm/crypto/pbkdf2.js +/** + * A **Password-Based Key-Derivation Function** is designed to create + * a sequence of bytes suitible as a **key** from a human-rememberable + * password. + * + * @_subsection: api/crypto:Passwords [about-pbkdf] + */ + + +let pbkdf2_locked = false; +const _pbkdf2 = function (password, salt, iterations, keylen, algo) { + return (0,crypto_browser/* pbkdf2Sync */.T_)(password, salt, iterations, keylen, algo); +}; +let __pbkdf2 = _pbkdf2; +/** + * Return the [[link-pbkdf2]] for %%keylen%% bytes for %%password%% using + * the %%salt%% and using %%iterations%% of %%algo%%. + * + * This PBKDF is outdated and should not be used in new projects, but is + * required to decrypt older files. + * + * @example: + * // The password must be converted to bytes, and it is generally + * // best practices to ensure the string has been normalized. Many + * // formats explicitly indicate the normalization form to use. + * password = "hello" + * passwordBytes = toUtf8Bytes(password, "NFKC") + * + * salt = id("some-salt") + * + * // Compute the PBKDF2 + * pbkdf2(passwordBytes, salt, 1024, 16, "sha256") + * //_result: + */ +function pbkdf2(_password, _salt, iterations, keylen, algo) { + const password = (0,utils_data/* getBytes */.q5)(_password, "password"); + const salt = (0,utils_data/* getBytes */.q5)(_salt, "salt"); + return (0,utils_data/* hexlify */.c$)(__pbkdf2(password, salt, iterations, keylen, algo)); +} +pbkdf2._ = _pbkdf2; +pbkdf2.lock = function () { pbkdf2_locked = true; }; +pbkdf2.register = function (func) { + if (pbkdf2_locked) { + throw new Error("pbkdf2 is locked"); + } + __pbkdf2 = func; +}; +Object.freeze(pbkdf2); +//# sourceMappingURL=pbkdf2.js.map +;// CONCATENATED MODULE: ./node_modules/ethers/lib.esm/wallet/mnemonic.js + + + +// Returns a byte with the MSB bits set +function getUpperMask(bits) { + return ((1 << bits) - 1) << (8 - bits) & 0xff; +} +// Returns a byte with the LSB bits set +function getLowerMask(bits) { + return ((1 << bits) - 1) & 0xff; +} +function mnemonicToEntropy(mnemonic, wordlist) { + (0,errors/* assertNormalize */.SP)("NFKD"); + if (wordlist == null) { + wordlist = LangEn.wordlist(); + } + const words = wordlist.split(mnemonic); + (0,errors/* assertArgument */.MR)((words.length % 3) === 0 && words.length >= 12 && words.length <= 24, "invalid mnemonic length", "mnemonic", "[ REDACTED ]"); + const entropy = new Uint8Array(Math.ceil(11 * words.length / 8)); + let offset = 0; + for (let i = 0; i < words.length; i++) { + let index = wordlist.getWordIndex(words[i].normalize("NFKD")); + (0,errors/* assertArgument */.MR)(index >= 0, `invalid mnemonic word at index ${i}`, "mnemonic", "[ REDACTED ]"); + for (let bit = 0; bit < 11; bit++) { + if (index & (1 << (10 - bit))) { + entropy[offset >> 3] |= (1 << (7 - (offset % 8))); + } + offset++; + } + } + const entropyBits = 32 * words.length / 3; + const checksumBits = words.length / 3; + const checksumMask = getUpperMask(checksumBits); + const checksum = (0,utils_data/* getBytes */.q5)((0,sha2/* sha256 */.s)(entropy.slice(0, entropyBits / 8)))[0] & checksumMask; + (0,errors/* assertArgument */.MR)(checksum === (entropy[entropy.length - 1] & checksumMask), "invalid mnemonic checksum", "mnemonic", "[ REDACTED ]"); + return (0,utils_data/* hexlify */.c$)(entropy.slice(0, entropyBits / 8)); +} +function entropyToMnemonic(entropy, wordlist) { + (0,errors/* assertArgument */.MR)((entropy.length % 4) === 0 && entropy.length >= 16 && entropy.length <= 32, "invalid entropy size", "entropy", "[ REDACTED ]"); + if (wordlist == null) { + wordlist = LangEn.wordlist(); + } + const indices = [0]; + let remainingBits = 11; + for (let i = 0; i < entropy.length; i++) { + // Consume the whole byte (with still more to go) + if (remainingBits > 8) { + indices[indices.length - 1] <<= 8; + indices[indices.length - 1] |= entropy[i]; + remainingBits -= 8; + // This byte will complete an 11-bit index + } + else { + indices[indices.length - 1] <<= remainingBits; + indices[indices.length - 1] |= entropy[i] >> (8 - remainingBits); + // Start the next word + indices.push(entropy[i] & getLowerMask(8 - remainingBits)); + remainingBits += 3; + } + } + // Compute the checksum bits + const checksumBits = entropy.length / 4; + const checksum = parseInt((0,sha2/* sha256 */.s)(entropy).substring(2, 4), 16) & getUpperMask(checksumBits); + // Shift the checksum into the word indices + indices[indices.length - 1] <<= checksumBits; + indices[indices.length - 1] |= (checksum >> (8 - checksumBits)); + return wordlist.join(indices.map((index) => wordlist.getWord(index))); +} +const _guard = {}; +/** + * A **Mnemonic** wraps all properties required to compute [[link-bip-39]] + * seeds and convert between phrases and entropy. + */ +class Mnemonic { + /** + * The mnemonic phrase of 12, 15, 18, 21 or 24 words. + * + * Use the [[wordlist]] ``split`` method to get the individual words. + */ + phrase; + /** + * The password used for this mnemonic. If no password is used this + * is the empty string (i.e. ``""``) as per the specification. + */ + password; + /** + * The wordlist for this mnemonic. + */ + wordlist; + /** + * The underlying entropy which the mnemonic encodes. + */ + entropy; + /** + * @private + */ + constructor(guard, entropy, phrase, password, wordlist) { + if (password == null) { + password = ""; + } + if (wordlist == null) { + wordlist = LangEn.wordlist(); + } + (0,errors/* assertPrivate */.gk)(guard, _guard, "Mnemonic"); + (0,properties/* defineProperties */.n)(this, { phrase, password, wordlist, entropy }); + } + /** + * Returns the seed for the mnemonic. + */ + computeSeed() { + const salt = (0,utf8/* toUtf8Bytes */.YW)("mnemonic" + this.password, "NFKD"); + return pbkdf2((0,utf8/* toUtf8Bytes */.YW)(this.phrase, "NFKD"), salt, 2048, 64, "sha512"); + } + /** + * Creates a new Mnemonic for the %%phrase%%. + * + * The default %%password%% is the empty string and the default + * wordlist is the [English wordlists](LangEn). + */ + static fromPhrase(phrase, password, wordlist) { + // Normalize the case and space; throws if invalid + const entropy = mnemonicToEntropy(phrase, wordlist); + phrase = entropyToMnemonic((0,utils_data/* getBytes */.q5)(entropy), wordlist); + return new Mnemonic(_guard, entropy, phrase, password, wordlist); + } + /** + * Create a new **Mnemonic** from the %%entropy%%. + * + * The default %%password%% is the empty string and the default + * wordlist is the [English wordlists](LangEn). + */ + static fromEntropy(_entropy, password, wordlist) { + const entropy = (0,utils_data/* getBytes */.q5)(_entropy, "entropy"); + const phrase = entropyToMnemonic(entropy, wordlist); + return new Mnemonic(_guard, (0,utils_data/* hexlify */.c$)(entropy), phrase, password, wordlist); + } + /** + * Returns the phrase for %%mnemonic%%. + */ + static entropyToPhrase(_entropy, wordlist) { + const entropy = (0,utils_data/* getBytes */.q5)(_entropy, "entropy"); + return entropyToMnemonic(entropy, wordlist); + } + /** + * Returns the entropy for %%phrase%%. + */ + static phraseToEntropy(phrase, wordlist) { + return mnemonicToEntropy(phrase, wordlist); + } + /** + * Returns true if %%phrase%% is a valid [[link-bip-39]] phrase. + * + * This checks all the provided words belong to the %%wordlist%%, + * that the length is valid and the checksum is correct. + */ + static isValidMnemonic(phrase, wordlist) { + try { + mnemonicToEntropy(phrase, wordlist); + return true; + } + catch (error) { } + return false; + } +} +//# sourceMappingURL=mnemonic.js.map ;// CONCATENATED MODULE: ./node_modules/aes-js/lib.esm/aes.js /*! MIT License. Copyright 2015-2022 Richard Moore . See LICENSE.txt. */ var __classPrivateFieldGet = (undefined && undefined.__classPrivateFieldGet) || function (receiver, state, kind, f) { @@ -74579,8 +71105,6 @@ function pkcs7Strip(data) { //# sourceMappingURL=index.js.map -// EXTERNAL MODULE: ./node_modules/ethers/lib.esm/crypto/pbkdf2.js -var pbkdf2 = __webpack_require__(29851); // EXTERNAL MODULE: ./node_modules/ethers/node_modules/@noble/hashes/esm/_assert.js var _assert = __webpack_require__(27125); // EXTERNAL MODULE: ./node_modules/ethers/node_modules/@noble/hashes/esm/sha256.js @@ -75202,7 +71726,7 @@ function decryptKeystoreJsonSync(json, _password) { const params = getDecryptKdfParams(data); if (params.name === "pbkdf2") { const { salt, count, dkLen, algorithm } = params; - const key = (0,pbkdf2/* pbkdf2 */.A)(password, salt, count, dkLen, algorithm); + const key = pbkdf2(password, salt, count, dkLen, algorithm); return getAccount(data, key); } (0,errors/* assert */.vA)(params.name === "scrypt", "cannot be reached", "UNKNOWN_ERROR", { params }); @@ -75234,7 +71758,7 @@ async function decryptKeystoreJson(json, _password, progress) { await json_keystore_stall(0); } const { salt, count, dkLen, algorithm } = params; - const key = (0,pbkdf2/* pbkdf2 */.A)(password, salt, count, dkLen, algorithm); + const key = pbkdf2(password, salt, count, dkLen, algorithm); if (progress) { progress(1); await json_keystore_stall(0); @@ -75410,7 +71934,7 @@ function encodeBase58Check(_value) { const bytes = (0,utils_data/* concat */.xW)([value, check]); return encodeBase58(bytes); } -const _guard = {}; +const hdwallet_guard = {}; function ser_I(index, chainCode, publicKey, privateKey) { const data = new Uint8Array(37); if (index & HardenedBit) { @@ -75517,7 +72041,7 @@ class HDNodeWallet extends BaseWallet { */ constructor(guard, signingKey, parentFingerprint, chainCode, path, index, depth, mnemonic, provider) { super(signingKey, provider); - (0,errors/* assertPrivate */.gk)(guard, _guard, "HDNodeWallet"); + (0,errors/* assertPrivate */.gk)(guard, hdwallet_guard, "HDNodeWallet"); (0,properties/* defineProperties */.n)(this, { publicKey: signingKey.compressedPublicKey }); const fingerprint = (0,utils_data/* dataSlice */.ZG)(ripemd160_ripemd160((0,sha2/* sha256 */.s)(this.publicKey)), 0, 4); (0,properties/* defineProperties */.n)(this, { @@ -75527,7 +72051,7 @@ class HDNodeWallet extends BaseWallet { (0,properties/* defineProperties */.n)(this, { mnemonic }); } connect(provider) { - return new HDNodeWallet(_guard, this.signingKey, this.parentFingerprint, this.chainCode, this.path, this.index, this.depth, this.mnemonic, provider); + return new HDNodeWallet(hdwallet_guard, this.signingKey, this.parentFingerprint, this.chainCode, this.path, this.index, this.depth, this.mnemonic, provider); } #account() { const account = { address: this.address, privateKey: this.privateKey }; @@ -75596,7 +72120,7 @@ class HDNodeWallet extends BaseWallet { * child addresses and other public data about the HD Node. */ neuter() { - return new HDNodeVoidWallet(_guard, this.address, this.publicKey, this.parentFingerprint, this.chainCode, this.path, this.index, this.depth, this.provider); + return new HDNodeVoidWallet(hdwallet_guard, this.address, this.publicKey, this.parentFingerprint, this.chainCode, this.path, this.index, this.depth, this.provider); } /** * Return the child for %%index%%. @@ -75614,7 +72138,7 @@ class HDNodeWallet extends BaseWallet { } const { IR, IL } = ser_I(index, this.chainCode, this.publicKey, this.privateKey); const ki = new signing_key/* SigningKey */.h((0,maths/* toBeHex */.up)(((0,maths/* toBigInt */.Dg)(IL) + BigInt(this.privateKey)) % N, 32)); - return new HDNodeWallet(_guard, ki, this.fingerprint, (0,utils_data/* hexlify */.c$)(IR), path, index, this.depth + 1, this.mnemonic, this.provider); + return new HDNodeWallet(hdwallet_guard, ki, this.fingerprint, (0,utils_data/* hexlify */.c$)(IR), path, index, this.depth + 1, this.mnemonic, this.provider); } /** * Return the HDNode for %%path%% from this node. @@ -75628,7 +72152,7 @@ class HDNodeWallet extends BaseWallet { (0,errors/* assertArgument */.MR)(seed.length >= 16 && seed.length <= 64, "invalid seed", "seed", "[REDACTED]"); const I = (0,utils_data/* getBytes */.q5)(computeHmac("sha512", MasterSecret, seed)); const signingKey = new signing_key/* SigningKey */.h((0,utils_data/* hexlify */.c$)(I.slice(0, 32))); - return new HDNodeWallet(_guard, signingKey, "0x00000000", (0,utils_data/* hexlify */.c$)(I.slice(32)), "m", 0, 0, mnemonic, null); + return new HDNodeWallet(hdwallet_guard, signingKey, "0x00000000", (0,utils_data/* hexlify */.c$)(I.slice(32)), "m", 0, 0, mnemonic, null); } /** * Creates a new HD Node from %%extendedKey%%. @@ -75650,7 +72174,7 @@ class HDNodeWallet extends BaseWallet { case "0x0488b21e": case "0x043587cf": { const publicKey = (0,utils_data/* hexlify */.c$)(key); - return new HDNodeVoidWallet(_guard, (0,transaction_address/* computeAddress */.K)(publicKey), publicKey, parentFingerprint, chainCode, null, index, depth, null); + return new HDNodeVoidWallet(hdwallet_guard, (0,transaction_address/* computeAddress */.K)(publicKey), publicKey, parentFingerprint, chainCode, null, index, depth, null); } // Private Key case "0x0488ade4": @@ -75658,7 +72182,7 @@ class HDNodeWallet extends BaseWallet { if (key[0] !== 0) { break; } - return new HDNodeWallet(_guard, new signing_key/* SigningKey */.h(key.slice(1)), parentFingerprint, chainCode, null, index, depth, null, null); + return new HDNodeWallet(hdwallet_guard, new signing_key/* SigningKey */.h(key.slice(1)), parentFingerprint, chainCode, null, index, depth, null, null); } (0,errors/* assertArgument */.MR)(false, "invalid extended key prefix", "extendedKey", "[ REDACTED ]"); } @@ -75673,9 +72197,9 @@ class HDNodeWallet extends BaseWallet { path = hdwallet_defaultPath; } if (wordlist == null) { - wordlist = lang_en/* LangEn */.U.wordlist(); + wordlist = LangEn.wordlist(); } - const mnemonic = wallet_mnemonic/* Mnemonic */.v.fromEntropy(randomBytes(16), password, wordlist); + const mnemonic = Mnemonic.fromEntropy(randomBytes(16), password, wordlist); return HDNodeWallet.#fromSeed(mnemonic.computeSeed(), mnemonic).derivePath(path); } /** @@ -75698,9 +72222,9 @@ class HDNodeWallet extends BaseWallet { path = hdwallet_defaultPath; } if (wordlist == null) { - wordlist = lang_en/* LangEn */.U.wordlist(); + wordlist = LangEn.wordlist(); } - const mnemonic = wallet_mnemonic/* Mnemonic */.v.fromPhrase(phrase, password, wordlist); + const mnemonic = Mnemonic.fromPhrase(phrase, password, wordlist); return HDNodeWallet.#fromSeed(mnemonic.computeSeed(), mnemonic).derivePath(path); } /** @@ -75763,7 +72287,7 @@ class HDNodeVoidWallet extends VoidSigner { */ constructor(guard, address, publicKey, parentFingerprint, chainCode, path, index, depth, provider) { super(address, provider); - (0,errors/* assertPrivate */.gk)(guard, _guard, "HDNodeVoidWallet"); + (0,errors/* assertPrivate */.gk)(guard, hdwallet_guard, "HDNodeVoidWallet"); (0,properties/* defineProperties */.n)(this, { publicKey }); const fingerprint = (0,utils_data/* dataSlice */.ZG)(ripemd160_ripemd160((0,sha2/* sha256 */.s)(publicKey)), 0, 4); (0,properties/* defineProperties */.n)(this, { @@ -75771,7 +72295,7 @@ class HDNodeVoidWallet extends VoidSigner { }); } connect(provider) { - return new HDNodeVoidWallet(_guard, this.address, this.publicKey, this.parentFingerprint, this.chainCode, this.path, this.index, this.depth, provider); + return new HDNodeVoidWallet(hdwallet_guard, this.address, this.publicKey, this.parentFingerprint, this.chainCode, this.path, this.index, this.depth, provider); } /** * The extended key. @@ -75817,7 +72341,7 @@ class HDNodeVoidWallet extends VoidSigner { const { IR, IL } = ser_I(index, this.chainCode, this.publicKey, null); const Ki = signing_key/* SigningKey */.h.addPoints(IL, this.publicKey, true); const address = (0,transaction_address/* computeAddress */.K)(Ki); - return new HDNodeVoidWallet(_guard, address, Ki, this.fingerprint, (0,utils_data/* hexlify */.c$)(IR), path, index, this.depth + 1, this.provider); + return new HDNodeVoidWallet(hdwallet_guard, address, Ki, this.fingerprint, (0,utils_data/* hexlify */.c$)(IR), path, index, this.depth + 1, this.provider); } /** * Return the signer for %%path%% from this node. @@ -75912,7 +72436,7 @@ function decryptCrowdsaleJson(json, _password) { // Encrypted Seed const encseed = looseArrayify(spelunk(data, "encseed:string!")); (0,errors/* assertArgument */.MR)(encseed && (encseed.length % 16) === 0, "invalid encseed", "json", json); - const key = (0,utils_data/* getBytes */.q5)((0,pbkdf2/* pbkdf2 */.A)(password, password, 2000, 32, "sha256")).slice(0, 16); + const key = (0,utils_data/* getBytes */.q5)(pbkdf2(password, password, 2000, 32, "sha256")).slice(0, 16); const iv = encseed.slice(0, 16); const encryptedSeed = encseed.slice(16); // Decrypt the seed @@ -75991,7 +72515,7 @@ class Wallet extends BaseWallet { static #fromAccount(account) { (0,errors/* assertArgument */.MR)(account, "invalid JSON wallet", "json", "[ REDACTED ]"); if ("mnemonic" in account && account.mnemonic && account.mnemonic.locale === "en") { - const mnemonic = wallet_mnemonic/* Mnemonic */.v.fromEntropy(account.mnemonic.entropy); + const mnemonic = Mnemonic.fromEntropy(account.mnemonic.entropy); const wallet = HDNodeWallet.fromMnemonic(mnemonic, account.mnemonic.path); if (wallet.address === account.address && wallet.privateKey === account.privateKey) { return wallet; @@ -76228,9 +72752,6 @@ var __async = (__this, __arguments, generator) => { - - - const defaultUserAgent = "Mozilla/5.0 (Windows NT 10.0; rv:109.0) Gecko/20100101 Firefox/115.0"; const providers_fetch = (browser_ponyfill_default()); function getHttpAgent({ @@ -76239,21 +72760,24 @@ function getHttpAgent({ torPort, retry }) { + const { HttpProxyAgent } = __webpack_require__(60513); + const { HttpsProxyAgent } = __webpack_require__(2378); + const { SocksProxyAgent } = __webpack_require__(60290); if (torPort) { - return new socks_proxy_agent_ignored_.SocksProxyAgent(`socks5h://tor${retry}@127.0.0.1:${torPort}`); + return new SocksProxyAgent(`socks5h://tor${retry}@127.0.0.1:${torPort}`); } if (!proxyUrl) { return; } const isHttps = fetchUrl.includes("https://"); if (proxyUrl.includes("socks://") || proxyUrl.includes("socks4://") || proxyUrl.includes("socks5://")) { - return new socks_proxy_agent_ignored_.SocksProxyAgent(proxyUrl); + return new SocksProxyAgent(proxyUrl); } if (proxyUrl.includes("http://") || proxyUrl.includes("https://")) { if (isHttps) { - return new https_proxy_agent_ignored_.HttpsProxyAgent(proxyUrl); + return new HttpsProxyAgent(proxyUrl); } - return new http_proxy_agent_ignored_.HttpProxyAgent(proxyUrl); + return new HttpProxyAgent(proxyUrl); } } function fetchData(_0) { @@ -76570,7 +73094,7 @@ const populateTransaction = (signer, tx) => __async(void 0, null, function* () { class TornadoWallet extends Wallet { constructor(key, provider, { gasPriceBump, gasLimitBump, gasFailover, bumpNonce } = {}) { super(key, provider); - this.gasPriceBump = gasPriceBump != null ? gasPriceBump : 0; + this.gasPriceBump = gasPriceBump != null ? gasPriceBump : 1e3; this.gasLimitBump = gasLimitBump != null ? gasLimitBump : 3e3; this.gasFailover = gasFailover != null ? gasFailover : false; this.bumpNonce = bumpNonce != null ? bumpNonce : false; @@ -76591,7 +73115,7 @@ class TornadoWallet extends Wallet { class TornadoVoidSigner extends VoidSigner { constructor(address, provider, { gasPriceBump, gasLimitBump, gasFailover, bumpNonce } = {}) { super(address, provider); - this.gasPriceBump = gasPriceBump != null ? gasPriceBump : 0; + this.gasPriceBump = gasPriceBump != null ? gasPriceBump : 1e3; this.gasLimitBump = gasLimitBump != null ? gasLimitBump : 3e3; this.gasFailover = gasFailover != null ? gasFailover : false; this.bumpNonce = bumpNonce != null ? bumpNonce : false; @@ -76607,7 +73131,7 @@ class TornadoVoidSigner extends VoidSigner { class TornadoRpcSigner extends JsonRpcSigner { constructor(provider, address, { gasPriceBump, gasLimitBump, gasFailover, bumpNonce } = {}) { super(provider, address); - this.gasPriceBump = gasPriceBump != null ? gasPriceBump : 0; + this.gasPriceBump = gasPriceBump != null ? gasPriceBump : 1e3; this.gasLimitBump = gasLimitBump != null ? gasLimitBump : 3e3; this.gasFailover = gasFailover != null ? gasFailover : false; this.bumpNonce = bumpNonce != null ? bumpNonce : false; @@ -76666,7 +73190,7 @@ class TornadoBrowserProvider extends BrowserProvider { /* harmony import */ var ethers__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(64563); /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(67418); /* harmony import */ var _networkConfig__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59499); -/* harmony import */ var _providers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(64819); +/* harmony import */ var _providers__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(68434); /* harmony import */ var _schemas__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(7613); /* provided dependency */ var console = __webpack_require__(96763); @@ -77216,137 +73740,6 @@ function getTokenBalances(_0) { } -/***/ }), - -/***/ 15609: -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ v: () => (/* binding */ TreeCache) -/* harmony export */ }); -/* harmony import */ var bloomfilter_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(65403); -/* harmony import */ var bloomfilter_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(bloomfilter_js__WEBPACK_IMPORTED_MODULE_0__); -/* harmony import */ var _data__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(11489); -/* provided dependency */ var console = __webpack_require__(96763); - -var __defProp = Object.defineProperty; -var __defProps = Object.defineProperties; -var __getOwnPropDescs = Object.getOwnPropertyDescriptors; -var __getOwnPropSymbols = Object.getOwnPropertySymbols; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __propIsEnum = Object.prototype.propertyIsEnumerable; -var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; -var __spreadValues = (a, b) => { - for (var prop in b || (b = {})) - if (__hasOwnProp.call(b, prop)) - __defNormalProp(a, prop, b[prop]); - if (__getOwnPropSymbols) - for (var prop of __getOwnPropSymbols(b)) { - if (__propIsEnum.call(b, prop)) - __defNormalProp(a, prop, b[prop]); - } - return a; -}; -var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); -var __objRest = (source, exclude) => { - var target = {}; - for (var prop in source) - if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0) - target[prop] = source[prop]; - if (source != null && __getOwnPropSymbols) - for (var prop of __getOwnPropSymbols(source)) { - if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop)) - target[prop] = source[prop]; - } - return target; -}; -var __async = (__this, __arguments, generator) => { - return new Promise((resolve, reject) => { - var fulfilled = (value) => { - try { - step(generator.next(value)); - } catch (e) { - reject(e); - } - }; - var rejected = (value) => { - try { - step(generator.throw(value)); - } catch (e) { - reject(e); - } - }; - var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected); - step((generator = generator.apply(__this, __arguments)).next()); - }); -}; - - -class TreeCache { - constructor({ netId, amount, currency, userDirectory, PARTS_COUNT = 4 }) { - this.netId = netId; - this.amount = amount; - this.currency = currency; - this.userDirectory = userDirectory; - this.PARTS_COUNT = PARTS_COUNT; - } - getInstanceName() { - return `deposits_${this.netId}_${this.currency}_${this.amount}`; - } - createTree(events, tree) { - return __async(this, null, function* () { - const bloom = new (bloomfilter_js__WEBPACK_IMPORTED_MODULE_0___default())(events.length); - console.log(`Creating cached tree for ${this.getInstanceName()} -`); - const eventsData = events.reduce( - (acc, _a, i) => { - var _b = _a, { leafIndex, commitment } = _b, rest = __objRest(_b, ["leafIndex", "commitment"]); - if (leafIndex !== i) { - throw new Error(`leafIndex (${leafIndex}) !== i (${i})`); - } - acc[commitment] = __spreadProps(__spreadValues({}, rest), { leafIndex }); - return acc; - }, - {} - ); - const slices = tree.getTreeSlices(this.PARTS_COUNT); - yield Promise.all( - slices.map((slice, index) => __async(this, null, function* () { - const metadata = slice.elements.reduce((acc, curr) => { - if (index < this.PARTS_COUNT - 1) { - bloom.add(curr); - } - acc.push(eventsData[curr]); - return acc; - }, []); - const dataString2 = JSON.stringify( - __spreadProps(__spreadValues({}, slice), { - metadata - }), - null, - 2 - ) + "\n"; - const fileName2 = `${this.getInstanceName()}_slice${index + 1}.json`; - yield (0,_data__WEBPACK_IMPORTED_MODULE_1__/* .saveUserFile */ .jj)({ - fileName: fileName2, - userDirectory: this.userDirectory, - dataString: dataString2 - }); - })) - ); - const dataString = bloom.serialize() + "\n"; - const fileName = `${this.getInstanceName()}_bloom.json`; - yield (0,_data__WEBPACK_IMPORTED_MODULE_1__/* .saveUserFile */ .jj)({ - fileName, - userDirectory: this.userDirectory, - dataString - }); - }); - } -} - - /***/ }), /***/ 67276: @@ -88738,21462 +85131,6 @@ utils.encode = function encode(arr, enc) { }; -/***/ }), - -/***/ 25177: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Afrikaans [af] -//! author : Werner Mollentze : https://github.com/wernerm - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var af = moment.defineLocale('af', { - months: 'Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember'.split( - '_' - ), - monthsShort: 'Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des'.split('_'), - weekdays: 'Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag'.split( - '_' - ), - weekdaysShort: 'Son_Maa_Din_Woe_Don_Vry_Sat'.split('_'), - weekdaysMin: 'So_Ma_Di_Wo_Do_Vr_Sa'.split('_'), - meridiemParse: /vm|nm/i, - isPM: function (input) { - return /^nm$/i.test(input); - }, - meridiem: function (hours, minutes, isLower) { - if (hours < 12) { - return isLower ? 'vm' : 'VM'; - } else { - return isLower ? 'nm' : 'NM'; - } - }, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Vandag om] LT', - nextDay: '[Môre om] LT', - nextWeek: 'dddd [om] LT', - lastDay: '[Gister om] LT', - lastWeek: '[Laas] dddd [om] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'oor %s', - past: '%s gelede', - s: "'n paar sekondes", - ss: '%d sekondes', - m: "'n minuut", - mm: '%d minute', - h: "'n uur", - hh: '%d ure', - d: "'n dag", - dd: '%d dae', - M: "'n maand", - MM: '%d maande', - y: "'n jaar", - yy: '%d jaar', - }, - dayOfMonthOrdinalParse: /\d{1,2}(ste|de)/, - ordinal: function (number) { - return ( - number + - (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de') - ); // Thanks to Joris Röling : https://github.com/jjupiter - }, - week: { - dow: 1, // Maandag is die eerste dag van die week. - doy: 4, // Die week wat die 4de Januarie bevat is die eerste week van die jaar. - }, - }); - - return af; - -}))); - - -/***/ }), - -/***/ 41488: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Arabic (Algeria) [ar-dz] -//! author : Amine Roukh: https://github.com/Amine27 -//! author : Abdel Said: https://github.com/abdelsaid -//! author : Ahmed Elkhatib -//! author : forabi https://github.com/forabi -//! author : Noureddine LOUAHEDJ : https://github.com/noureddinem - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var pluralForm = function (n) { - return n === 0 - ? 0 - : n === 1 - ? 1 - : n === 2 - ? 2 - : n % 100 >= 3 && n % 100 <= 10 - ? 3 - : n % 100 >= 11 - ? 4 - : 5; - }, - plurals = { - s: [ - 'أقل من ثانية', - 'ثانية واحدة', - ['ثانيتان', 'ثانيتين'], - '%d ثوان', - '%d ثانية', - '%d ثانية', - ], - m: [ - 'أقل من دقيقة', - 'دقيقة واحدة', - ['دقيقتان', 'دقيقتين'], - '%d دقائق', - '%d دقيقة', - '%d دقيقة', - ], - h: [ - 'أقل من ساعة', - 'ساعة واحدة', - ['ساعتان', 'ساعتين'], - '%d ساعات', - '%d ساعة', - '%d ساعة', - ], - d: [ - 'أقل من يوم', - 'يوم واحد', - ['يومان', 'يومين'], - '%d أيام', - '%d يومًا', - '%d يوم', - ], - M: [ - 'أقل من شهر', - 'شهر واحد', - ['شهران', 'شهرين'], - '%d أشهر', - '%d شهرا', - '%d شهر', - ], - y: [ - 'أقل من عام', - 'عام واحد', - ['عامان', 'عامين'], - '%d أعوام', - '%d عامًا', - '%d عام', - ], - }, - pluralize = function (u) { - return function (number, withoutSuffix, string, isFuture) { - var f = pluralForm(number), - str = plurals[u][pluralForm(number)]; - if (f === 2) { - str = str[withoutSuffix ? 0 : 1]; - } - return str.replace(/%d/i, number); - }; - }, - months = [ - 'جانفي', - 'فيفري', - 'مارس', - 'أفريل', - 'ماي', - 'جوان', - 'جويلية', - 'أوت', - 'سبتمبر', - 'أكتوبر', - 'نوفمبر', - 'ديسمبر', - ]; - - var arDz = moment.defineLocale('ar-dz', { - months: months, - monthsShort: months, - weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), - weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'), - weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'D/\u200FM/\u200FYYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - meridiemParse: /ص|م/, - isPM: function (input) { - return 'م' === input; - }, - meridiem: function (hour, minute, isLower) { - if (hour < 12) { - return 'ص'; - } else { - return 'م'; - } - }, - calendar: { - sameDay: '[اليوم عند الساعة] LT', - nextDay: '[غدًا عند الساعة] LT', - nextWeek: 'dddd [عند الساعة] LT', - lastDay: '[أمس عند الساعة] LT', - lastWeek: 'dddd [عند الساعة] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'بعد %s', - past: 'منذ %s', - s: pluralize('s'), - ss: pluralize('s'), - m: pluralize('m'), - mm: pluralize('m'), - h: pluralize('h'), - hh: pluralize('h'), - d: pluralize('d'), - dd: pluralize('d'), - M: pluralize('M'), - MM: pluralize('M'), - y: pluralize('y'), - yy: pluralize('y'), - }, - postformat: function (string) { - return string.replace(/,/g, '،'); - }, - week: { - dow: 0, // Sunday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return arDz; - -}))); - - -/***/ }), - -/***/ 58676: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Arabic (Kuwait) [ar-kw] -//! author : Nusret Parlak: https://github.com/nusretparlak - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var arKw = moment.defineLocale('ar-kw', { - months: 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split( - '_' - ), - monthsShort: - 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split( - '_' - ), - weekdays: 'الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), - weekdaysShort: 'احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'), - weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[اليوم على الساعة] LT', - nextDay: '[غدا على الساعة] LT', - nextWeek: 'dddd [على الساعة] LT', - lastDay: '[أمس على الساعة] LT', - lastWeek: 'dddd [على الساعة] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'في %s', - past: 'منذ %s', - s: 'ثوان', - ss: '%d ثانية', - m: 'دقيقة', - mm: '%d دقائق', - h: 'ساعة', - hh: '%d ساعات', - d: 'يوم', - dd: '%d أيام', - M: 'شهر', - MM: '%d أشهر', - y: 'سنة', - yy: '%d سنوات', - }, - week: { - dow: 0, // Sunday is the first day of the week. - doy: 12, // The week that contains Jan 12th is the first week of the year. - }, - }); - - return arKw; - -}))); - - -/***/ }), - -/***/ 42353: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Arabic (Libya) [ar-ly] -//! author : Ali Hmer: https://github.com/kikoanis - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var symbolMap = { - 1: '1', - 2: '2', - 3: '3', - 4: '4', - 5: '5', - 6: '6', - 7: '7', - 8: '8', - 9: '9', - 0: '0', - }, - pluralForm = function (n) { - return n === 0 - ? 0 - : n === 1 - ? 1 - : n === 2 - ? 2 - : n % 100 >= 3 && n % 100 <= 10 - ? 3 - : n % 100 >= 11 - ? 4 - : 5; - }, - plurals = { - s: [ - 'أقل من ثانية', - 'ثانية واحدة', - ['ثانيتان', 'ثانيتين'], - '%d ثوان', - '%d ثانية', - '%d ثانية', - ], - m: [ - 'أقل من دقيقة', - 'دقيقة واحدة', - ['دقيقتان', 'دقيقتين'], - '%d دقائق', - '%d دقيقة', - '%d دقيقة', - ], - h: [ - 'أقل من ساعة', - 'ساعة واحدة', - ['ساعتان', 'ساعتين'], - '%d ساعات', - '%d ساعة', - '%d ساعة', - ], - d: [ - 'أقل من يوم', - 'يوم واحد', - ['يومان', 'يومين'], - '%d أيام', - '%d يومًا', - '%d يوم', - ], - M: [ - 'أقل من شهر', - 'شهر واحد', - ['شهران', 'شهرين'], - '%d أشهر', - '%d شهرا', - '%d شهر', - ], - y: [ - 'أقل من عام', - 'عام واحد', - ['عامان', 'عامين'], - '%d أعوام', - '%d عامًا', - '%d عام', - ], - }, - pluralize = function (u) { - return function (number, withoutSuffix, string, isFuture) { - var f = pluralForm(number), - str = plurals[u][pluralForm(number)]; - if (f === 2) { - str = str[withoutSuffix ? 0 : 1]; - } - return str.replace(/%d/i, number); - }; - }, - months = [ - 'يناير', - 'فبراير', - 'مارس', - 'أبريل', - 'مايو', - 'يونيو', - 'يوليو', - 'أغسطس', - 'سبتمبر', - 'أكتوبر', - 'نوفمبر', - 'ديسمبر', - ]; - - var arLy = moment.defineLocale('ar-ly', { - months: months, - monthsShort: months, - weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), - weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'), - weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'D/\u200FM/\u200FYYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - meridiemParse: /ص|م/, - isPM: function (input) { - return 'م' === input; - }, - meridiem: function (hour, minute, isLower) { - if (hour < 12) { - return 'ص'; - } else { - return 'م'; - } - }, - calendar: { - sameDay: '[اليوم عند الساعة] LT', - nextDay: '[غدًا عند الساعة] LT', - nextWeek: 'dddd [عند الساعة] LT', - lastDay: '[أمس عند الساعة] LT', - lastWeek: 'dddd [عند الساعة] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'بعد %s', - past: 'منذ %s', - s: pluralize('s'), - ss: pluralize('s'), - m: pluralize('m'), - mm: pluralize('m'), - h: pluralize('h'), - hh: pluralize('h'), - d: pluralize('d'), - dd: pluralize('d'), - M: pluralize('M'), - MM: pluralize('M'), - y: pluralize('y'), - yy: pluralize('y'), - }, - preparse: function (string) { - return string.replace(/،/g, ','); - }, - postformat: function (string) { - return string - .replace(/\d/g, function (match) { - return symbolMap[match]; - }) - .replace(/,/g, '،'); - }, - week: { - dow: 6, // Saturday is the first day of the week. - doy: 12, // The week that contains Jan 12th is the first week of the year. - }, - }); - - return arLy; - -}))); - - -/***/ }), - -/***/ 24496: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Arabic (Morocco) [ar-ma] -//! author : ElFadili Yassine : https://github.com/ElFadiliY -//! author : Abdel Said : https://github.com/abdelsaid - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var arMa = moment.defineLocale('ar-ma', { - months: 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split( - '_' - ), - monthsShort: - 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split( - '_' - ), - weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), - weekdaysShort: 'احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'), - weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[اليوم على الساعة] LT', - nextDay: '[غدا على الساعة] LT', - nextWeek: 'dddd [على الساعة] LT', - lastDay: '[أمس على الساعة] LT', - lastWeek: 'dddd [على الساعة] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'في %s', - past: 'منذ %s', - s: 'ثوان', - ss: '%d ثانية', - m: 'دقيقة', - mm: '%d دقائق', - h: 'ساعة', - hh: '%d ساعات', - d: 'يوم', - dd: '%d أيام', - M: 'شهر', - MM: '%d أشهر', - y: 'سنة', - yy: '%d سنوات', - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return arMa; - -}))); - - -/***/ }), - -/***/ 6947: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Arabic (Palestine) [ar-ps] -//! author : Majd Al-Shihabi : https://github.com/majdal - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var symbolMap = { - 1: '١', - 2: '٢', - 3: '٣', - 4: '٤', - 5: '٥', - 6: '٦', - 7: '٧', - 8: '٨', - 9: '٩', - 0: '٠', - }, - numberMap = { - '١': '1', - '٢': '2', - '٣': '3', - '٤': '4', - '٥': '5', - '٦': '6', - '٧': '7', - '٨': '8', - '٩': '9', - '٠': '0', - }; - - var arPs = moment.defineLocale('ar-ps', { - months: 'كانون الثاني_شباط_آذار_نيسان_أيّار_حزيران_تمّوز_آب_أيلول_تشري الأوّل_تشرين الثاني_كانون الأوّل'.split( - '_' - ), - monthsShort: - 'ك٢_شباط_آذار_نيسان_أيّار_حزيران_تمّوز_آب_أيلول_ت١_ت٢_ك١'.split('_'), - weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), - weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'), - weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - meridiemParse: /ص|م/, - isPM: function (input) { - return 'م' === input; - }, - meridiem: function (hour, minute, isLower) { - if (hour < 12) { - return 'ص'; - } else { - return 'م'; - } - }, - calendar: { - sameDay: '[اليوم على الساعة] LT', - nextDay: '[غدا على الساعة] LT', - nextWeek: 'dddd [على الساعة] LT', - lastDay: '[أمس على الساعة] LT', - lastWeek: 'dddd [على الساعة] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'في %s', - past: 'منذ %s', - s: 'ثوان', - ss: '%d ثانية', - m: 'دقيقة', - mm: '%d دقائق', - h: 'ساعة', - hh: '%d ساعات', - d: 'يوم', - dd: '%d أيام', - M: 'شهر', - MM: '%d أشهر', - y: 'سنة', - yy: '%d سنوات', - }, - preparse: function (string) { - return string - .replace(/[٣٤٥٦٧٨٩٠]/g, function (match) { - return numberMap[match]; - }) - .split('') // reversed since negative lookbehind not supported everywhere - .reverse() - .join('') - .replace(/[١٢](?![\u062a\u0643])/g, function (match) { - return numberMap[match]; - }) - .split('') - .reverse() - .join('') - .replace(/،/g, ','); - }, - postformat: function (string) { - return string - .replace(/\d/g, function (match) { - return symbolMap[match]; - }) - .replace(/,/g, '،'); - }, - week: { - dow: 0, // Sunday is the first day of the week. - doy: 6, // The week that contains Jan 6th is the first week of the year. - }, - }); - - return arPs; - -}))); - - -/***/ }), - -/***/ 60301: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Arabic (Saudi Arabia) [ar-sa] -//! author : Suhail Alkowaileet : https://github.com/xsoh - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var symbolMap = { - 1: '١', - 2: '٢', - 3: '٣', - 4: '٤', - 5: '٥', - 6: '٦', - 7: '٧', - 8: '٨', - 9: '٩', - 0: '٠', - }, - numberMap = { - '١': '1', - '٢': '2', - '٣': '3', - '٤': '4', - '٥': '5', - '٦': '6', - '٧': '7', - '٨': '8', - '٩': '9', - '٠': '0', - }; - - var arSa = moment.defineLocale('ar-sa', { - months: 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split( - '_' - ), - monthsShort: - 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split( - '_' - ), - weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), - weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'), - weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - meridiemParse: /ص|م/, - isPM: function (input) { - return 'م' === input; - }, - meridiem: function (hour, minute, isLower) { - if (hour < 12) { - return 'ص'; - } else { - return 'م'; - } - }, - calendar: { - sameDay: '[اليوم على الساعة] LT', - nextDay: '[غدا على الساعة] LT', - nextWeek: 'dddd [على الساعة] LT', - lastDay: '[أمس على الساعة] LT', - lastWeek: 'dddd [على الساعة] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'في %s', - past: 'منذ %s', - s: 'ثوان', - ss: '%d ثانية', - m: 'دقيقة', - mm: '%d دقائق', - h: 'ساعة', - hh: '%d ساعات', - d: 'يوم', - dd: '%d أيام', - M: 'شهر', - MM: '%d أشهر', - y: 'سنة', - yy: '%d سنوات', - }, - preparse: function (string) { - return string - .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) { - return numberMap[match]; - }) - .replace(/،/g, ','); - }, - postformat: function (string) { - return string - .replace(/\d/g, function (match) { - return symbolMap[match]; - }) - .replace(/,/g, '،'); - }, - week: { - dow: 0, // Sunday is the first day of the week. - doy: 6, // The week that contains Jan 6th is the first week of the year. - }, - }); - - return arSa; - -}))); - - -/***/ }), - -/***/ 89756: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Arabic (Tunisia) [ar-tn] -//! author : Nader Toukabri : https://github.com/naderio - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var arTn = moment.defineLocale('ar-tn', { - months: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split( - '_' - ), - monthsShort: - 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split( - '_' - ), - weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), - weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'), - weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[اليوم على الساعة] LT', - nextDay: '[غدا على الساعة] LT', - nextWeek: 'dddd [على الساعة] LT', - lastDay: '[أمس على الساعة] LT', - lastWeek: 'dddd [على الساعة] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'في %s', - past: 'منذ %s', - s: 'ثوان', - ss: '%d ثانية', - m: 'دقيقة', - mm: '%d دقائق', - h: 'ساعة', - hh: '%d ساعات', - d: 'يوم', - dd: '%d أيام', - M: 'شهر', - MM: '%d أشهر', - y: 'سنة', - yy: '%d سنوات', - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return arTn; - -}))); - - -/***/ }), - -/***/ 61509: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Arabic [ar] -//! author : Abdel Said: https://github.com/abdelsaid -//! author : Ahmed Elkhatib -//! author : forabi https://github.com/forabi - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var symbolMap = { - 1: '١', - 2: '٢', - 3: '٣', - 4: '٤', - 5: '٥', - 6: '٦', - 7: '٧', - 8: '٨', - 9: '٩', - 0: '٠', - }, - numberMap = { - '١': '1', - '٢': '2', - '٣': '3', - '٤': '4', - '٥': '5', - '٦': '6', - '٧': '7', - '٨': '8', - '٩': '9', - '٠': '0', - }, - pluralForm = function (n) { - return n === 0 - ? 0 - : n === 1 - ? 1 - : n === 2 - ? 2 - : n % 100 >= 3 && n % 100 <= 10 - ? 3 - : n % 100 >= 11 - ? 4 - : 5; - }, - plurals = { - s: [ - 'أقل من ثانية', - 'ثانية واحدة', - ['ثانيتان', 'ثانيتين'], - '%d ثوان', - '%d ثانية', - '%d ثانية', - ], - m: [ - 'أقل من دقيقة', - 'دقيقة واحدة', - ['دقيقتان', 'دقيقتين'], - '%d دقائق', - '%d دقيقة', - '%d دقيقة', - ], - h: [ - 'أقل من ساعة', - 'ساعة واحدة', - ['ساعتان', 'ساعتين'], - '%d ساعات', - '%d ساعة', - '%d ساعة', - ], - d: [ - 'أقل من يوم', - 'يوم واحد', - ['يومان', 'يومين'], - '%d أيام', - '%d يومًا', - '%d يوم', - ], - M: [ - 'أقل من شهر', - 'شهر واحد', - ['شهران', 'شهرين'], - '%d أشهر', - '%d شهرا', - '%d شهر', - ], - y: [ - 'أقل من عام', - 'عام واحد', - ['عامان', 'عامين'], - '%d أعوام', - '%d عامًا', - '%d عام', - ], - }, - pluralize = function (u) { - return function (number, withoutSuffix, string, isFuture) { - var f = pluralForm(number), - str = plurals[u][pluralForm(number)]; - if (f === 2) { - str = str[withoutSuffix ? 0 : 1]; - } - return str.replace(/%d/i, number); - }; - }, - months = [ - 'يناير', - 'فبراير', - 'مارس', - 'أبريل', - 'مايو', - 'يونيو', - 'يوليو', - 'أغسطس', - 'سبتمبر', - 'أكتوبر', - 'نوفمبر', - 'ديسمبر', - ]; - - var ar = moment.defineLocale('ar', { - months: months, - monthsShort: months, - weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), - weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'), - weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'D/\u200FM/\u200FYYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - meridiemParse: /ص|م/, - isPM: function (input) { - return 'م' === input; - }, - meridiem: function (hour, minute, isLower) { - if (hour < 12) { - return 'ص'; - } else { - return 'م'; - } - }, - calendar: { - sameDay: '[اليوم عند الساعة] LT', - nextDay: '[غدًا عند الساعة] LT', - nextWeek: 'dddd [عند الساعة] LT', - lastDay: '[أمس عند الساعة] LT', - lastWeek: 'dddd [عند الساعة] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'بعد %s', - past: 'منذ %s', - s: pluralize('s'), - ss: pluralize('s'), - m: pluralize('m'), - mm: pluralize('m'), - h: pluralize('h'), - hh: pluralize('h'), - d: pluralize('d'), - dd: pluralize('d'), - M: pluralize('M'), - MM: pluralize('M'), - y: pluralize('y'), - yy: pluralize('y'), - }, - preparse: function (string) { - return string - .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) { - return numberMap[match]; - }) - .replace(/،/g, ','); - }, - postformat: function (string) { - return string - .replace(/\d/g, function (match) { - return symbolMap[match]; - }) - .replace(/,/g, '،'); - }, - week: { - dow: 6, // Saturday is the first day of the week. - doy: 12, // The week that contains Jan 12th is the first week of the year. - }, - }); - - return ar; - -}))); - - -/***/ }), - -/***/ 95533: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Azerbaijani [az] -//! author : topchiyev : https://github.com/topchiyev - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var suffixes = { - 1: '-inci', - 5: '-inci', - 8: '-inci', - 70: '-inci', - 80: '-inci', - 2: '-nci', - 7: '-nci', - 20: '-nci', - 50: '-nci', - 3: '-üncü', - 4: '-üncü', - 100: '-üncü', - 6: '-ncı', - 9: '-uncu', - 10: '-uncu', - 30: '-uncu', - 60: '-ıncı', - 90: '-ıncı', - }; - - var az = moment.defineLocale('az', { - months: 'yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr'.split( - '_' - ), - monthsShort: 'yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek'.split('_'), - weekdays: - 'Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə'.split( - '_' - ), - weekdaysShort: 'Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən'.split('_'), - weekdaysMin: 'Bz_BE_ÇA_Çə_CA_Cü_Şə'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[bugün saat] LT', - nextDay: '[sabah saat] LT', - nextWeek: '[gələn həftə] dddd [saat] LT', - lastDay: '[dünən] LT', - lastWeek: '[keçən həftə] dddd [saat] LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s sonra', - past: '%s əvvəl', - s: 'bir neçə saniyə', - ss: '%d saniyə', - m: 'bir dəqiqə', - mm: '%d dəqiqə', - h: 'bir saat', - hh: '%d saat', - d: 'bir gün', - dd: '%d gün', - M: 'bir ay', - MM: '%d ay', - y: 'bir il', - yy: '%d il', - }, - meridiemParse: /gecə|səhər|gündüz|axşam/, - isPM: function (input) { - return /^(gündüz|axşam)$/.test(input); - }, - meridiem: function (hour, minute, isLower) { - if (hour < 4) { - return 'gecə'; - } else if (hour < 12) { - return 'səhər'; - } else if (hour < 17) { - return 'gündüz'; - } else { - return 'axşam'; - } - }, - dayOfMonthOrdinalParse: /\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/, - ordinal: function (number) { - if (number === 0) { - // special case for zero - return number + '-ıncı'; - } - var a = number % 10, - b = (number % 100) - a, - c = number >= 100 ? 100 : null; - return number + (suffixes[a] || suffixes[b] || suffixes[c]); - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return az; - -}))); - - -/***/ }), - -/***/ 28959: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Belarusian [be] -//! author : Dmitry Demidov : https://github.com/demidov91 -//! author: Praleska: http://praleska.pro/ -//! Author : Menelion Elensúle : https://github.com/Oire - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function plural(word, num) { - var forms = word.split('_'); - return num % 10 === 1 && num % 100 !== 11 - ? forms[0] - : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) - ? forms[1] - : forms[2]; - } - function relativeTimeWithPlural(number, withoutSuffix, key) { - var format = { - ss: withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд', - mm: withoutSuffix ? 'хвіліна_хвіліны_хвілін' : 'хвіліну_хвіліны_хвілін', - hh: withoutSuffix ? 'гадзіна_гадзіны_гадзін' : 'гадзіну_гадзіны_гадзін', - dd: 'дзень_дні_дзён', - MM: 'месяц_месяцы_месяцаў', - yy: 'год_гады_гадоў', - }; - if (key === 'm') { - return withoutSuffix ? 'хвіліна' : 'хвіліну'; - } else if (key === 'h') { - return withoutSuffix ? 'гадзіна' : 'гадзіну'; - } else { - return number + ' ' + plural(format[key], +number); - } - } - - var be = moment.defineLocale('be', { - months: { - format: 'студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня'.split( - '_' - ), - standalone: - 'студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань'.split( - '_' - ), - }, - monthsShort: - 'студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж'.split('_'), - weekdays: { - format: 'нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу'.split( - '_' - ), - standalone: - 'нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота'.split( - '_' - ), - isFormat: /\[ ?[Ууў] ?(?:мінулую|наступную)? ?\] ?dddd/, - }, - weekdaysShort: 'нд_пн_ат_ср_чц_пт_сб'.split('_'), - weekdaysMin: 'нд_пн_ат_ср_чц_пт_сб'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D MMMM YYYY г.', - LLL: 'D MMMM YYYY г., HH:mm', - LLLL: 'dddd, D MMMM YYYY г., HH:mm', - }, - calendar: { - sameDay: '[Сёння ў] LT', - nextDay: '[Заўтра ў] LT', - lastDay: '[Учора ў] LT', - nextWeek: function () { - return '[У] dddd [ў] LT'; - }, - lastWeek: function () { - switch (this.day()) { - case 0: - case 3: - case 5: - case 6: - return '[У мінулую] dddd [ў] LT'; - case 1: - case 2: - case 4: - return '[У мінулы] dddd [ў] LT'; - } - }, - sameElse: 'L', - }, - relativeTime: { - future: 'праз %s', - past: '%s таму', - s: 'некалькі секунд', - m: relativeTimeWithPlural, - mm: relativeTimeWithPlural, - h: relativeTimeWithPlural, - hh: relativeTimeWithPlural, - d: 'дзень', - dd: relativeTimeWithPlural, - M: 'месяц', - MM: relativeTimeWithPlural, - y: 'год', - yy: relativeTimeWithPlural, - }, - meridiemParse: /ночы|раніцы|дня|вечара/, - isPM: function (input) { - return /^(дня|вечара)$/.test(input); - }, - meridiem: function (hour, minute, isLower) { - if (hour < 4) { - return 'ночы'; - } else if (hour < 12) { - return 'раніцы'; - } else if (hour < 17) { - return 'дня'; - } else { - return 'вечара'; - } - }, - dayOfMonthOrdinalParse: /\d{1,2}-(і|ы|га)/, - ordinal: function (number, period) { - switch (period) { - case 'M': - case 'd': - case 'DDD': - case 'w': - case 'W': - return (number % 10 === 2 || number % 10 === 3) && - number % 100 !== 12 && - number % 100 !== 13 - ? number + '-і' - : number + '-ы'; - case 'D': - return number + '-га'; - default: - return number; - } - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return be; - -}))); - - -/***/ }), - -/***/ 47777: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Bulgarian [bg] -//! author : Krasen Borisov : https://github.com/kraz - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var bg = moment.defineLocale('bg', { - months: 'януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември'.split( - '_' - ), - monthsShort: 'яну_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек'.split('_'), - weekdays: 'неделя_понеделник_вторник_сряда_четвъртък_петък_събота'.split( - '_' - ), - weekdaysShort: 'нед_пон_вто_сря_чет_пет_съб'.split('_'), - weekdaysMin: 'нд_пн_вт_ср_чт_пт_сб'.split('_'), - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'D.MM.YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY H:mm', - LLLL: 'dddd, D MMMM YYYY H:mm', - }, - calendar: { - sameDay: '[Днес в] LT', - nextDay: '[Утре в] LT', - nextWeek: 'dddd [в] LT', - lastDay: '[Вчера в] LT', - lastWeek: function () { - switch (this.day()) { - case 0: - case 3: - case 6: - return '[Миналата] dddd [в] LT'; - case 1: - case 2: - case 4: - case 5: - return '[Миналия] dddd [в] LT'; - } - }, - sameElse: 'L', - }, - relativeTime: { - future: 'след %s', - past: 'преди %s', - s: 'няколко секунди', - ss: '%d секунди', - m: 'минута', - mm: '%d минути', - h: 'час', - hh: '%d часа', - d: 'ден', - dd: '%d дена', - w: 'седмица', - ww: '%d седмици', - M: 'месец', - MM: '%d месеца', - y: 'година', - yy: '%d години', - }, - dayOfMonthOrdinalParse: /\d{1,2}-(ев|ен|ти|ви|ри|ми)/, - ordinal: function (number) { - var lastDigit = number % 10, - last2Digits = number % 100; - if (number === 0) { - return number + '-ев'; - } else if (last2Digits === 0) { - return number + '-ен'; - } else if (last2Digits > 10 && last2Digits < 20) { - return number + '-ти'; - } else if (lastDigit === 1) { - return number + '-ви'; - } else if (lastDigit === 2) { - return number + '-ри'; - } else if (lastDigit === 7 || lastDigit === 8) { - return number + '-ми'; - } else { - return number + '-ти'; - } - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return bg; - -}))); - - -/***/ }), - -/***/ 54903: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Bambara [bm] -//! author : Estelle Comment : https://github.com/estellecomment - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var bm = moment.defineLocale('bm', { - months: 'Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_Mɛkalo_Zuwɛnkalo_Zuluyekalo_Utikalo_Sɛtanburukalo_ɔkutɔburukalo_Nowanburukalo_Desanburukalo'.split( - '_' - ), - monthsShort: 'Zan_Few_Mar_Awi_Mɛ_Zuw_Zul_Uti_Sɛt_ɔku_Now_Des'.split('_'), - weekdays: 'Kari_Ntɛnɛn_Tarata_Araba_Alamisa_Juma_Sibiri'.split('_'), - weekdaysShort: 'Kar_Ntɛ_Tar_Ara_Ala_Jum_Sib'.split('_'), - weekdaysMin: 'Ka_Nt_Ta_Ar_Al_Ju_Si'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'MMMM [tile] D [san] YYYY', - LLL: 'MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm', - LLLL: 'dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm', - }, - calendar: { - sameDay: '[Bi lɛrɛ] LT', - nextDay: '[Sini lɛrɛ] LT', - nextWeek: 'dddd [don lɛrɛ] LT', - lastDay: '[Kunu lɛrɛ] LT', - lastWeek: 'dddd [tɛmɛnen lɛrɛ] LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s kɔnɔ', - past: 'a bɛ %s bɔ', - s: 'sanga dama dama', - ss: 'sekondi %d', - m: 'miniti kelen', - mm: 'miniti %d', - h: 'lɛrɛ kelen', - hh: 'lɛrɛ %d', - d: 'tile kelen', - dd: 'tile %d', - M: 'kalo kelen', - MM: 'kalo %d', - y: 'san kelen', - yy: 'san %d', - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return bm; - -}))); - - -/***/ }), - -/***/ 17357: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Bengali (Bangladesh) [bn-bd] -//! author : Asraf Hossain Patoary : https://github.com/ashwoolford - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var symbolMap = { - 1: '১', - 2: '২', - 3: '৩', - 4: '৪', - 5: '৫', - 6: '৬', - 7: '৭', - 8: '৮', - 9: '৯', - 0: '০', - }, - numberMap = { - '১': '1', - '২': '2', - '৩': '3', - '৪': '4', - '৫': '5', - '৬': '6', - '৭': '7', - '৮': '8', - '৯': '9', - '০': '0', - }; - - var bnBd = moment.defineLocale('bn-bd', { - months: 'জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর'.split( - '_' - ), - monthsShort: - 'জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে'.split( - '_' - ), - weekdays: 'রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার'.split( - '_' - ), - weekdaysShort: 'রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি'.split('_'), - weekdaysMin: 'রবি_সোম_মঙ্গল_বুধ_বৃহ_শুক্র_শনি'.split('_'), - longDateFormat: { - LT: 'A h:mm সময়', - LTS: 'A h:mm:ss সময়', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY, A h:mm সময়', - LLLL: 'dddd, D MMMM YYYY, A h:mm সময়', - }, - calendar: { - sameDay: '[আজ] LT', - nextDay: '[আগামীকাল] LT', - nextWeek: 'dddd, LT', - lastDay: '[গতকাল] LT', - lastWeek: '[গত] dddd, LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s পরে', - past: '%s আগে', - s: 'কয়েক সেকেন্ড', - ss: '%d সেকেন্ড', - m: 'এক মিনিট', - mm: '%d মিনিট', - h: 'এক ঘন্টা', - hh: '%d ঘন্টা', - d: 'এক দিন', - dd: '%d দিন', - M: 'এক মাস', - MM: '%d মাস', - y: 'এক বছর', - yy: '%d বছর', - }, - preparse: function (string) { - return string.replace(/[১২৩৪৫৬৭৮৯০]/g, function (match) { - return numberMap[match]; - }); - }, - postformat: function (string) { - return string.replace(/\d/g, function (match) { - return symbolMap[match]; - }); - }, - - meridiemParse: /রাত|ভোর|সকাল|দুপুর|বিকাল|সন্ধ্যা|রাত/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === 'রাত') { - return hour < 4 ? hour : hour + 12; - } else if (meridiem === 'ভোর') { - return hour; - } else if (meridiem === 'সকাল') { - return hour; - } else if (meridiem === 'দুপুর') { - return hour >= 3 ? hour : hour + 12; - } else if (meridiem === 'বিকাল') { - return hour + 12; - } else if (meridiem === 'সন্ধ্যা') { - return hour + 12; - } - }, - - meridiem: function (hour, minute, isLower) { - if (hour < 4) { - return 'রাত'; - } else if (hour < 6) { - return 'ভোর'; - } else if (hour < 12) { - return 'সকাল'; - } else if (hour < 15) { - return 'দুপুর'; - } else if (hour < 18) { - return 'বিকাল'; - } else if (hour < 20) { - return 'সন্ধ্যা'; - } else { - return 'রাত'; - } - }, - week: { - dow: 0, // Sunday is the first day of the week. - doy: 6, // The week that contains Jan 6th is the first week of the year. - }, - }); - - return bnBd; - -}))); - - -/***/ }), - -/***/ 61290: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Bengali [bn] -//! author : Kaushik Gandhi : https://github.com/kaushikgandhi - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var symbolMap = { - 1: '১', - 2: '২', - 3: '৩', - 4: '৪', - 5: '৫', - 6: '৬', - 7: '৭', - 8: '৮', - 9: '৯', - 0: '০', - }, - numberMap = { - '১': '1', - '২': '2', - '৩': '3', - '৪': '4', - '৫': '5', - '৬': '6', - '৭': '7', - '৮': '8', - '৯': '9', - '০': '0', - }; - - var bn = moment.defineLocale('bn', { - months: 'জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর'.split( - '_' - ), - monthsShort: - 'জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে'.split( - '_' - ), - weekdays: 'রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার'.split( - '_' - ), - weekdaysShort: 'রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি'.split('_'), - weekdaysMin: 'রবি_সোম_মঙ্গল_বুধ_বৃহ_শুক্র_শনি'.split('_'), - longDateFormat: { - LT: 'A h:mm সময়', - LTS: 'A h:mm:ss সময়', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY, A h:mm সময়', - LLLL: 'dddd, D MMMM YYYY, A h:mm সময়', - }, - calendar: { - sameDay: '[আজ] LT', - nextDay: '[আগামীকাল] LT', - nextWeek: 'dddd, LT', - lastDay: '[গতকাল] LT', - lastWeek: '[গত] dddd, LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s পরে', - past: '%s আগে', - s: 'কয়েক সেকেন্ড', - ss: '%d সেকেন্ড', - m: 'এক মিনিট', - mm: '%d মিনিট', - h: 'এক ঘন্টা', - hh: '%d ঘন্টা', - d: 'এক দিন', - dd: '%d দিন', - M: 'এক মাস', - MM: '%d মাস', - y: 'এক বছর', - yy: '%d বছর', - }, - preparse: function (string) { - return string.replace(/[১২৩৪৫৬৭৮৯০]/g, function (match) { - return numberMap[match]; - }); - }, - postformat: function (string) { - return string.replace(/\d/g, function (match) { - return symbolMap[match]; - }); - }, - meridiemParse: /রাত|সকাল|দুপুর|বিকাল|রাত/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if ( - (meridiem === 'রাত' && hour >= 4) || - (meridiem === 'দুপুর' && hour < 5) || - meridiem === 'বিকাল' - ) { - return hour + 12; - } else { - return hour; - } - }, - meridiem: function (hour, minute, isLower) { - if (hour < 4) { - return 'রাত'; - } else if (hour < 10) { - return 'সকাল'; - } else if (hour < 17) { - return 'দুপুর'; - } else if (hour < 20) { - return 'বিকাল'; - } else { - return 'রাত'; - } - }, - week: { - dow: 0, // Sunday is the first day of the week. - doy: 6, // The week that contains Jan 6th is the first week of the year. - }, - }); - - return bn; - -}))); - - -/***/ }), - -/***/ 31545: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Tibetan [bo] -//! author : Thupten N. Chakrishar : https://github.com/vajradog - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var symbolMap = { - 1: '༡', - 2: '༢', - 3: '༣', - 4: '༤', - 5: '༥', - 6: '༦', - 7: '༧', - 8: '༨', - 9: '༩', - 0: '༠', - }, - numberMap = { - '༡': '1', - '༢': '2', - '༣': '3', - '༤': '4', - '༥': '5', - '༦': '6', - '༧': '7', - '༨': '8', - '༩': '9', - '༠': '0', - }; - - var bo = moment.defineLocale('bo', { - months: 'ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ'.split( - '_' - ), - monthsShort: - 'ཟླ་1_ཟླ་2_ཟླ་3_ཟླ་4_ཟླ་5_ཟླ་6_ཟླ་7_ཟླ་8_ཟླ་9_ཟླ་10_ཟླ་11_ཟླ་12'.split( - '_' - ), - monthsShortRegex: /^(ཟླ་\d{1,2})/, - monthsParseExact: true, - weekdays: - 'གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་'.split( - '_' - ), - weekdaysShort: 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split( - '_' - ), - weekdaysMin: 'ཉི_ཟླ_མིག_ལྷག_ཕུར_སངས_སྤེན'.split('_'), - longDateFormat: { - LT: 'A h:mm', - LTS: 'A h:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY, A h:mm', - LLLL: 'dddd, D MMMM YYYY, A h:mm', - }, - calendar: { - sameDay: '[དི་རིང] LT', - nextDay: '[སང་ཉིན] LT', - nextWeek: '[བདུན་ཕྲག་རྗེས་མ], LT', - lastDay: '[ཁ་སང] LT', - lastWeek: '[བདུན་ཕྲག་མཐའ་མ] dddd, LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s ལ་', - past: '%s སྔན་ལ', - s: 'ལམ་སང', - ss: '%d སྐར་ཆ།', - m: 'སྐར་མ་གཅིག', - mm: '%d སྐར་མ', - h: 'ཆུ་ཚོད་གཅིག', - hh: '%d ཆུ་ཚོད', - d: 'ཉིན་གཅིག', - dd: '%d ཉིན་', - M: 'ཟླ་བ་གཅིག', - MM: '%d ཟླ་བ', - y: 'ལོ་གཅིག', - yy: '%d ལོ', - }, - preparse: function (string) { - return string.replace(/[༡༢༣༤༥༦༧༨༩༠]/g, function (match) { - return numberMap[match]; - }); - }, - postformat: function (string) { - return string.replace(/\d/g, function (match) { - return symbolMap[match]; - }); - }, - meridiemParse: /མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if ( - (meridiem === 'མཚན་མོ' && hour >= 4) || - (meridiem === 'ཉིན་གུང' && hour < 5) || - meridiem === 'དགོང་དག' - ) { - return hour + 12; - } else { - return hour; - } - }, - meridiem: function (hour, minute, isLower) { - if (hour < 4) { - return 'མཚན་མོ'; - } else if (hour < 10) { - return 'ཞོགས་ཀས'; - } else if (hour < 17) { - return 'ཉིན་གུང'; - } else if (hour < 20) { - return 'དགོང་དག'; - } else { - return 'མཚན་མོ'; - } - }, - week: { - dow: 0, // Sunday is the first day of the week. - doy: 6, // The week that contains Jan 6th is the first week of the year. - }, - }); - - return bo; - -}))); - - -/***/ }), - -/***/ 11470: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Breton [br] -//! author : Jean-Baptiste Le Duigou : https://github.com/jbleduigou - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function relativeTimeWithMutation(number, withoutSuffix, key) { - var format = { - mm: 'munutenn', - MM: 'miz', - dd: 'devezh', - }; - return number + ' ' + mutation(format[key], number); - } - function specialMutationForYears(number) { - switch (lastNumber(number)) { - case 1: - case 3: - case 4: - case 5: - case 9: - return number + ' bloaz'; - default: - return number + ' vloaz'; - } - } - function lastNumber(number) { - if (number > 9) { - return lastNumber(number % 10); - } - return number; - } - function mutation(text, number) { - if (number === 2) { - return softMutation(text); - } - return text; - } - function softMutation(text) { - var mutationTable = { - m: 'v', - b: 'v', - d: 'z', - }; - if (mutationTable[text.charAt(0)] === undefined) { - return text; - } - return mutationTable[text.charAt(0)] + text.substring(1); - } - - var monthsParse = [ - /^gen/i, - /^c[ʼ\']hwe/i, - /^meu/i, - /^ebr/i, - /^mae/i, - /^(mez|eve)/i, - /^gou/i, - /^eos/i, - /^gwe/i, - /^her/i, - /^du/i, - /^ker/i, - ], - monthsRegex = - /^(genver|c[ʼ\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu|gen|c[ʼ\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i, - monthsStrictRegex = - /^(genver|c[ʼ\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu)/i, - monthsShortStrictRegex = - /^(gen|c[ʼ\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i, - fullWeekdaysParse = [ - /^sul/i, - /^lun/i, - /^meurzh/i, - /^merc[ʼ\']her/i, - /^yaou/i, - /^gwener/i, - /^sadorn/i, - ], - shortWeekdaysParse = [ - /^Sul/i, - /^Lun/i, - /^Meu/i, - /^Mer/i, - /^Yao/i, - /^Gwe/i, - /^Sad/i, - ], - minWeekdaysParse = [ - /^Su/i, - /^Lu/i, - /^Me([^r]|$)/i, - /^Mer/i, - /^Ya/i, - /^Gw/i, - /^Sa/i, - ]; - - var br = moment.defineLocale('br', { - months: 'Genver_Cʼhwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu'.split( - '_' - ), - monthsShort: 'Gen_Cʼhwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker'.split('_'), - weekdays: 'Sul_Lun_Meurzh_Mercʼher_Yaou_Gwener_Sadorn'.split('_'), - weekdaysShort: 'Sul_Lun_Meu_Mer_Yao_Gwe_Sad'.split('_'), - weekdaysMin: 'Su_Lu_Me_Mer_Ya_Gw_Sa'.split('_'), - weekdaysParse: minWeekdaysParse, - fullWeekdaysParse: fullWeekdaysParse, - shortWeekdaysParse: shortWeekdaysParse, - minWeekdaysParse: minWeekdaysParse, - - monthsRegex: monthsRegex, - monthsShortRegex: monthsRegex, - monthsStrictRegex: monthsStrictRegex, - monthsShortStrictRegex: monthsShortStrictRegex, - monthsParse: monthsParse, - longMonthsParse: monthsParse, - shortMonthsParse: monthsParse, - - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D [a viz] MMMM YYYY', - LLL: 'D [a viz] MMMM YYYY HH:mm', - LLLL: 'dddd, D [a viz] MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Hiziv da] LT', - nextDay: '[Warcʼhoazh da] LT', - nextWeek: 'dddd [da] LT', - lastDay: '[Decʼh da] LT', - lastWeek: 'dddd [paset da] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'a-benn %s', - past: '%s ʼzo', - s: 'un nebeud segondennoù', - ss: '%d eilenn', - m: 'ur vunutenn', - mm: relativeTimeWithMutation, - h: 'un eur', - hh: '%d eur', - d: 'un devezh', - dd: relativeTimeWithMutation, - M: 'ur miz', - MM: relativeTimeWithMutation, - y: 'ur bloaz', - yy: specialMutationForYears, - }, - dayOfMonthOrdinalParse: /\d{1,2}(añ|vet)/, - ordinal: function (number) { - var output = number === 1 ? 'añ' : 'vet'; - return number + output; - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - meridiemParse: /a.m.|g.m./, // goude merenn | a-raok merenn - isPM: function (token) { - return token === 'g.m.'; - }, - meridiem: function (hour, minute, isLower) { - return hour < 12 ? 'a.m.' : 'g.m.'; - }, - }); - - return br; - -}))); - - -/***/ }), - -/***/ 44429: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Bosnian [bs] -//! author : Nedim Cholich : https://github.com/frontyard -//! author : Rasid Redzic : https://github.com/rasidre -//! based on (hr) translation by Bojan Marković - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function processRelativeTime(number, withoutSuffix, key, isFuture) { - switch (key) { - case 'm': - return withoutSuffix - ? 'jedna minuta' - : isFuture - ? 'jednu minutu' - : 'jedne minute'; - } - } - - function translate(number, withoutSuffix, key) { - var result = number + ' '; - switch (key) { - case 'ss': - if (number === 1) { - result += 'sekunda'; - } else if (number === 2 || number === 3 || number === 4) { - result += 'sekunde'; - } else { - result += 'sekundi'; - } - return result; - case 'mm': - if (number === 1) { - result += 'minuta'; - } else if (number === 2 || number === 3 || number === 4) { - result += 'minute'; - } else { - result += 'minuta'; - } - return result; - case 'h': - return withoutSuffix ? 'jedan sat' : 'jedan sat'; - case 'hh': - if (number === 1) { - result += 'sat'; - } else if (number === 2 || number === 3 || number === 4) { - result += 'sata'; - } else { - result += 'sati'; - } - return result; - case 'dd': - if (number === 1) { - result += 'dan'; - } else { - result += 'dana'; - } - return result; - case 'MM': - if (number === 1) { - result += 'mjesec'; - } else if (number === 2 || number === 3 || number === 4) { - result += 'mjeseca'; - } else { - result += 'mjeseci'; - } - return result; - case 'yy': - if (number === 1) { - result += 'godina'; - } else if (number === 2 || number === 3 || number === 4) { - result += 'godine'; - } else { - result += 'godina'; - } - return result; - } - } - - var bs = moment.defineLocale('bs', { - months: 'januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar'.split( - '_' - ), - monthsShort: - 'jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.'.split( - '_' - ), - monthsParseExact: true, - weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split( - '_' - ), - weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'), - weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D. MMMM YYYY', - LLL: 'D. MMMM YYYY H:mm', - LLLL: 'dddd, D. MMMM YYYY H:mm', - }, - calendar: { - sameDay: '[danas u] LT', - nextDay: '[sutra u] LT', - nextWeek: function () { - switch (this.day()) { - case 0: - return '[u] [nedjelju] [u] LT'; - case 3: - return '[u] [srijedu] [u] LT'; - case 6: - return '[u] [subotu] [u] LT'; - case 1: - case 2: - case 4: - case 5: - return '[u] dddd [u] LT'; - } - }, - lastDay: '[jučer u] LT', - lastWeek: function () { - switch (this.day()) { - case 0: - case 3: - return '[prošlu] dddd [u] LT'; - case 6: - return '[prošle] [subote] [u] LT'; - case 1: - case 2: - case 4: - case 5: - return '[prošli] dddd [u] LT'; - } - }, - sameElse: 'L', - }, - relativeTime: { - future: 'za %s', - past: 'prije %s', - s: 'par sekundi', - ss: translate, - m: processRelativeTime, - mm: translate, - h: translate, - hh: translate, - d: 'dan', - dd: translate, - M: 'mjesec', - MM: translate, - y: 'godinu', - yy: translate, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return bs; - -}))); - - -/***/ }), - -/***/ 7306: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Catalan [ca] -//! author : Juan G. Hurtado : https://github.com/juanghurtado - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var ca = moment.defineLocale('ca', { - months: { - standalone: - 'gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre'.split( - '_' - ), - format: "de gener_de febrer_de març_d'abril_de maig_de juny_de juliol_d'agost_de setembre_d'octubre_de novembre_de desembre".split( - '_' - ), - isFormat: /D[oD]?(\s)+MMMM/, - }, - monthsShort: - 'gen._febr._març_abr._maig_juny_jul._ag._set._oct._nov._des.'.split( - '_' - ), - monthsParseExact: true, - weekdays: - 'diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte'.split( - '_' - ), - weekdaysShort: 'dg._dl._dt._dc._dj._dv._ds.'.split('_'), - weekdaysMin: 'dg_dl_dt_dc_dj_dv_ds'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM [de] YYYY', - ll: 'D MMM YYYY', - LLL: 'D MMMM [de] YYYY [a les] H:mm', - lll: 'D MMM YYYY, H:mm', - LLLL: 'dddd D MMMM [de] YYYY [a les] H:mm', - llll: 'ddd D MMM YYYY, H:mm', - }, - calendar: { - sameDay: function () { - return '[avui a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT'; - }, - nextDay: function () { - return '[demà a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT'; - }, - nextWeek: function () { - return 'dddd [a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT'; - }, - lastDay: function () { - return '[ahir a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT'; - }, - lastWeek: function () { - return ( - '[el] dddd [passat a ' + - (this.hours() !== 1 ? 'les' : 'la') + - '] LT' - ); - }, - sameElse: 'L', - }, - relativeTime: { - future: "d'aquí %s", - past: 'fa %s', - s: 'uns segons', - ss: '%d segons', - m: 'un minut', - mm: '%d minuts', - h: 'una hora', - hh: '%d hores', - d: 'un dia', - dd: '%d dies', - M: 'un mes', - MM: '%d mesos', - y: 'un any', - yy: '%d anys', - }, - dayOfMonthOrdinalParse: /\d{1,2}(r|n|t|è|a)/, - ordinal: function (number, period) { - var output = - number === 1 - ? 'r' - : number === 2 - ? 'n' - : number === 3 - ? 'r' - : number === 4 - ? 't' - : 'è'; - if (period === 'w' || period === 'W') { - output = 'a'; - } - return number + output; - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return ca; - -}))); - - -/***/ }), - -/***/ 56464: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Czech [cs] -//! author : petrbela : https://github.com/petrbela - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var months = { - standalone: - 'leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec'.split( - '_' - ), - format: 'ledna_února_března_dubna_května_června_července_srpna_září_října_listopadu_prosince'.split( - '_' - ), - isFormat: /DD?[o.]?(\[[^\[\]]*\]|\s)+MMMM/, - }, - monthsShort = 'led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro'.split('_'), - monthsParse = [ - /^led/i, - /^úno/i, - /^bře/i, - /^dub/i, - /^kvě/i, - /^(čvn|červen$|června)/i, - /^(čvc|červenec|července)/i, - /^srp/i, - /^zář/i, - /^říj/i, - /^lis/i, - /^pro/i, - ], - // NOTE: 'červen' is substring of 'červenec'; therefore 'červenec' must precede 'červen' in the regex to be fully matched. - // Otherwise parser matches '1. červenec' as '1. červen' + 'ec'. - monthsRegex = - /^(leden|únor|březen|duben|květen|červenec|července|červen|června|srpen|září|říjen|listopad|prosinec|led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i; - - function plural(n) { - return n > 1 && n < 5 && ~~(n / 10) !== 1; - } - function translate(number, withoutSuffix, key, isFuture) { - var result = number + ' '; - switch (key) { - case 's': // a few seconds / in a few seconds / a few seconds ago - return withoutSuffix || isFuture ? 'pár sekund' : 'pár sekundami'; - case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago - if (withoutSuffix || isFuture) { - return result + (plural(number) ? 'sekundy' : 'sekund'); - } else { - return result + 'sekundami'; - } - case 'm': // a minute / in a minute / a minute ago - return withoutSuffix ? 'minuta' : isFuture ? 'minutu' : 'minutou'; - case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago - if (withoutSuffix || isFuture) { - return result + (plural(number) ? 'minuty' : 'minut'); - } else { - return result + 'minutami'; - } - case 'h': // an hour / in an hour / an hour ago - return withoutSuffix ? 'hodina' : isFuture ? 'hodinu' : 'hodinou'; - case 'hh': // 9 hours / in 9 hours / 9 hours ago - if (withoutSuffix || isFuture) { - return result + (plural(number) ? 'hodiny' : 'hodin'); - } else { - return result + 'hodinami'; - } - case 'd': // a day / in a day / a day ago - return withoutSuffix || isFuture ? 'den' : 'dnem'; - case 'dd': // 9 days / in 9 days / 9 days ago - if (withoutSuffix || isFuture) { - return result + (plural(number) ? 'dny' : 'dní'); - } else { - return result + 'dny'; - } - case 'M': // a month / in a month / a month ago - return withoutSuffix || isFuture ? 'měsíc' : 'měsícem'; - case 'MM': // 9 months / in 9 months / 9 months ago - if (withoutSuffix || isFuture) { - return result + (plural(number) ? 'měsíce' : 'měsíců'); - } else { - return result + 'měsíci'; - } - case 'y': // a year / in a year / a year ago - return withoutSuffix || isFuture ? 'rok' : 'rokem'; - case 'yy': // 9 years / in 9 years / 9 years ago - if (withoutSuffix || isFuture) { - return result + (plural(number) ? 'roky' : 'let'); - } else { - return result + 'lety'; - } - } - } - - var cs = moment.defineLocale('cs', { - months: months, - monthsShort: monthsShort, - monthsRegex: monthsRegex, - monthsShortRegex: monthsRegex, - // NOTE: 'červen' is substring of 'červenec'; therefore 'červenec' must precede 'červen' in the regex to be fully matched. - // Otherwise parser matches '1. červenec' as '1. červen' + 'ec'. - monthsStrictRegex: - /^(leden|ledna|února|únor|březen|března|duben|dubna|květen|května|červenec|července|červen|června|srpen|srpna|září|říjen|října|listopadu|listopad|prosinec|prosince)/i, - monthsShortStrictRegex: - /^(led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i, - monthsParse: monthsParse, - longMonthsParse: monthsParse, - shortMonthsParse: monthsParse, - weekdays: 'neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota'.split('_'), - weekdaysShort: 'ne_po_út_st_čt_pá_so'.split('_'), - weekdaysMin: 'ne_po_út_st_čt_pá_so'.split('_'), - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D. MMMM YYYY', - LLL: 'D. MMMM YYYY H:mm', - LLLL: 'dddd D. MMMM YYYY H:mm', - l: 'D. M. YYYY', - }, - calendar: { - sameDay: '[dnes v] LT', - nextDay: '[zítra v] LT', - nextWeek: function () { - switch (this.day()) { - case 0: - return '[v neděli v] LT'; - case 1: - case 2: - return '[v] dddd [v] LT'; - case 3: - return '[ve středu v] LT'; - case 4: - return '[ve čtvrtek v] LT'; - case 5: - return '[v pátek v] LT'; - case 6: - return '[v sobotu v] LT'; - } - }, - lastDay: '[včera v] LT', - lastWeek: function () { - switch (this.day()) { - case 0: - return '[minulou neděli v] LT'; - case 1: - case 2: - return '[minulé] dddd [v] LT'; - case 3: - return '[minulou středu v] LT'; - case 4: - case 5: - return '[minulý] dddd [v] LT'; - case 6: - return '[minulou sobotu v] LT'; - } - }, - sameElse: 'L', - }, - relativeTime: { - future: 'za %s', - past: 'před %s', - s: translate, - ss: translate, - m: translate, - mm: translate, - h: translate, - hh: translate, - d: translate, - dd: translate, - M: translate, - MM: translate, - y: translate, - yy: translate, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return cs; - -}))); - - -/***/ }), - -/***/ 73635: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Chuvash [cv] -//! author : Anatoly Mironov : https://github.com/mirontoli - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var cv = moment.defineLocale('cv', { - months: 'кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав'.split( - '_' - ), - monthsShort: 'кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш'.split('_'), - weekdays: - 'вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун'.split( - '_' - ), - weekdaysShort: 'выр_тун_ытл_юн_кӗҫ_эрн_шӑм'.split('_'), - weekdaysMin: 'вр_тн_ыт_юн_кҫ_эр_шм'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD-MM-YYYY', - LL: 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]', - LLL: 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm', - LLLL: 'dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm', - }, - calendar: { - sameDay: '[Паян] LT [сехетре]', - nextDay: '[Ыран] LT [сехетре]', - lastDay: '[Ӗнер] LT [сехетре]', - nextWeek: '[Ҫитес] dddd LT [сехетре]', - lastWeek: '[Иртнӗ] dddd LT [сехетре]', - sameElse: 'L', - }, - relativeTime: { - future: function (output) { - var affix = /сехет$/i.exec(output) - ? 'рен' - : /ҫул$/i.exec(output) - ? 'тан' - : 'ран'; - return output + affix; - }, - past: '%s каялла', - s: 'пӗр-ик ҫеккунт', - ss: '%d ҫеккунт', - m: 'пӗр минут', - mm: '%d минут', - h: 'пӗр сехет', - hh: '%d сехет', - d: 'пӗр кун', - dd: '%d кун', - M: 'пӗр уйӑх', - MM: '%d уйӑх', - y: 'пӗр ҫул', - yy: '%d ҫул', - }, - dayOfMonthOrdinalParse: /\d{1,2}-мӗш/, - ordinal: '%d-мӗш', - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return cv; - -}))); - - -/***/ }), - -/***/ 64226: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Welsh [cy] -//! author : Robert Allen : https://github.com/robgallen -//! author : https://github.com/ryangreaves - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var cy = moment.defineLocale('cy', { - months: 'Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr'.split( - '_' - ), - monthsShort: 'Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag'.split( - '_' - ), - weekdays: - 'Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn'.split( - '_' - ), - weekdaysShort: 'Sul_Llun_Maw_Mer_Iau_Gwe_Sad'.split('_'), - weekdaysMin: 'Su_Ll_Ma_Me_Ia_Gw_Sa'.split('_'), - weekdaysParseExact: true, - // time formats are the same as en-gb - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Heddiw am] LT', - nextDay: '[Yfory am] LT', - nextWeek: 'dddd [am] LT', - lastDay: '[Ddoe am] LT', - lastWeek: 'dddd [diwethaf am] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'mewn %s', - past: '%s yn ôl', - s: 'ychydig eiliadau', - ss: '%d eiliad', - m: 'munud', - mm: '%d munud', - h: 'awr', - hh: '%d awr', - d: 'diwrnod', - dd: '%d diwrnod', - M: 'mis', - MM: '%d mis', - y: 'blwyddyn', - yy: '%d flynedd', - }, - dayOfMonthOrdinalParse: /\d{1,2}(fed|ain|af|il|ydd|ed|eg)/, - // traditional ordinal numbers above 31 are not commonly used in colloquial Welsh - ordinal: function (number) { - var b = number, - output = '', - lookup = [ - '', - 'af', - 'il', - 'ydd', - 'ydd', - 'ed', - 'ed', - 'ed', - 'fed', - 'fed', - 'fed', // 1af to 10fed - 'eg', - 'fed', - 'eg', - 'eg', - 'fed', - 'eg', - 'eg', - 'fed', - 'eg', - 'fed', // 11eg to 20fed - ]; - if (b > 20) { - if (b === 40 || b === 50 || b === 60 || b === 80 || b === 100) { - output = 'fed'; // not 30ain, 70ain or 90ain - } else { - output = 'ain'; - } - } else if (b > 0) { - output = lookup[b]; - } - return number + output; - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return cy; - -}))); - - -/***/ }), - -/***/ 93601: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Danish [da] -//! author : Ulrik Nielsen : https://github.com/mrbase - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var da = moment.defineLocale('da', { - months: 'januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december'.split( - '_' - ), - monthsShort: 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'), - weekdays: 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'), - weekdaysShort: 'søn_man_tir_ons_tor_fre_lør'.split('_'), - weekdaysMin: 'sø_ma_ti_on_to_fr_lø'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D. MMMM YYYY', - LLL: 'D. MMMM YYYY HH:mm', - LLLL: 'dddd [d.] D. MMMM YYYY [kl.] HH:mm', - }, - calendar: { - sameDay: '[i dag kl.] LT', - nextDay: '[i morgen kl.] LT', - nextWeek: 'på dddd [kl.] LT', - lastDay: '[i går kl.] LT', - lastWeek: '[i] dddd[s kl.] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'om %s', - past: '%s siden', - s: 'få sekunder', - ss: '%d sekunder', - m: 'et minut', - mm: '%d minutter', - h: 'en time', - hh: '%d timer', - d: 'en dag', - dd: '%d dage', - M: 'en måned', - MM: '%d måneder', - y: 'et år', - yy: '%d år', - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return da; - -}))); - - -/***/ }), - -/***/ 26111: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : German (Austria) [de-at] -//! author : lluchs : https://github.com/lluchs -//! author: Menelion Elensúle: https://github.com/Oire -//! author : Martin Groller : https://github.com/MadMG -//! author : Mikolaj Dadela : https://github.com/mik01aj - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function processRelativeTime(number, withoutSuffix, key, isFuture) { - var format = { - m: ['eine Minute', 'einer Minute'], - h: ['eine Stunde', 'einer Stunde'], - d: ['ein Tag', 'einem Tag'], - dd: [number + ' Tage', number + ' Tagen'], - w: ['eine Woche', 'einer Woche'], - M: ['ein Monat', 'einem Monat'], - MM: [number + ' Monate', number + ' Monaten'], - y: ['ein Jahr', 'einem Jahr'], - yy: [number + ' Jahre', number + ' Jahren'], - }; - return withoutSuffix ? format[key][0] : format[key][1]; - } - - var deAt = moment.defineLocale('de-at', { - months: 'Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split( - '_' - ), - monthsShort: - 'Jän._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'), - monthsParseExact: true, - weekdays: - 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split( - '_' - ), - weekdaysShort: 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'), - weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D. MMMM YYYY', - LLL: 'D. MMMM YYYY HH:mm', - LLLL: 'dddd, D. MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[heute um] LT [Uhr]', - sameElse: 'L', - nextDay: '[morgen um] LT [Uhr]', - nextWeek: 'dddd [um] LT [Uhr]', - lastDay: '[gestern um] LT [Uhr]', - lastWeek: '[letzten] dddd [um] LT [Uhr]', - }, - relativeTime: { - future: 'in %s', - past: 'vor %s', - s: 'ein paar Sekunden', - ss: '%d Sekunden', - m: processRelativeTime, - mm: '%d Minuten', - h: processRelativeTime, - hh: '%d Stunden', - d: processRelativeTime, - dd: processRelativeTime, - w: processRelativeTime, - ww: '%d Wochen', - M: processRelativeTime, - MM: processRelativeTime, - y: processRelativeTime, - yy: processRelativeTime, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return deAt; - -}))); - - -/***/ }), - -/***/ 54697: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : German (Switzerland) [de-ch] -//! author : sschueller : https://github.com/sschueller - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function processRelativeTime(number, withoutSuffix, key, isFuture) { - var format = { - m: ['eine Minute', 'einer Minute'], - h: ['eine Stunde', 'einer Stunde'], - d: ['ein Tag', 'einem Tag'], - dd: [number + ' Tage', number + ' Tagen'], - w: ['eine Woche', 'einer Woche'], - M: ['ein Monat', 'einem Monat'], - MM: [number + ' Monate', number + ' Monaten'], - y: ['ein Jahr', 'einem Jahr'], - yy: [number + ' Jahre', number + ' Jahren'], - }; - return withoutSuffix ? format[key][0] : format[key][1]; - } - - var deCh = moment.defineLocale('de-ch', { - months: 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split( - '_' - ), - monthsShort: - 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'), - monthsParseExact: true, - weekdays: - 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split( - '_' - ), - weekdaysShort: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'), - weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D. MMMM YYYY', - LLL: 'D. MMMM YYYY HH:mm', - LLLL: 'dddd, D. MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[heute um] LT [Uhr]', - sameElse: 'L', - nextDay: '[morgen um] LT [Uhr]', - nextWeek: 'dddd [um] LT [Uhr]', - lastDay: '[gestern um] LT [Uhr]', - lastWeek: '[letzten] dddd [um] LT [Uhr]', - }, - relativeTime: { - future: 'in %s', - past: 'vor %s', - s: 'ein paar Sekunden', - ss: '%d Sekunden', - m: processRelativeTime, - mm: '%d Minuten', - h: processRelativeTime, - hh: '%d Stunden', - d: processRelativeTime, - dd: processRelativeTime, - w: processRelativeTime, - ww: '%d Wochen', - M: processRelativeTime, - MM: processRelativeTime, - y: processRelativeTime, - yy: processRelativeTime, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return deCh; - -}))); - - -/***/ }), - -/***/ 77853: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : German [de] -//! author : lluchs : https://github.com/lluchs -//! author: Menelion Elensúle: https://github.com/Oire -//! author : Mikolaj Dadela : https://github.com/mik01aj - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function processRelativeTime(number, withoutSuffix, key, isFuture) { - var format = { - m: ['eine Minute', 'einer Minute'], - h: ['eine Stunde', 'einer Stunde'], - d: ['ein Tag', 'einem Tag'], - dd: [number + ' Tage', number + ' Tagen'], - w: ['eine Woche', 'einer Woche'], - M: ['ein Monat', 'einem Monat'], - MM: [number + ' Monate', number + ' Monaten'], - y: ['ein Jahr', 'einem Jahr'], - yy: [number + ' Jahre', number + ' Jahren'], - }; - return withoutSuffix ? format[key][0] : format[key][1]; - } - - var de = moment.defineLocale('de', { - months: 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split( - '_' - ), - monthsShort: - 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'), - monthsParseExact: true, - weekdays: - 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split( - '_' - ), - weekdaysShort: 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'), - weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D. MMMM YYYY', - LLL: 'D. MMMM YYYY HH:mm', - LLLL: 'dddd, D. MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[heute um] LT [Uhr]', - sameElse: 'L', - nextDay: '[morgen um] LT [Uhr]', - nextWeek: 'dddd [um] LT [Uhr]', - lastDay: '[gestern um] LT [Uhr]', - lastWeek: '[letzten] dddd [um] LT [Uhr]', - }, - relativeTime: { - future: 'in %s', - past: 'vor %s', - s: 'ein paar Sekunden', - ss: '%d Sekunden', - m: processRelativeTime, - mm: '%d Minuten', - h: processRelativeTime, - hh: '%d Stunden', - d: processRelativeTime, - dd: processRelativeTime, - w: processRelativeTime, - ww: '%d Wochen', - M: processRelativeTime, - MM: processRelativeTime, - y: processRelativeTime, - yy: processRelativeTime, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return de; - -}))); - - -/***/ }), - -/***/ 60708: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Maldivian [dv] -//! author : Jawish Hameed : https://github.com/jawish - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var months = [ - 'ޖެނުއަރީ', - 'ފެބްރުއަރީ', - 'މާރިޗު', - 'އޭޕްރީލު', - 'މޭ', - 'ޖޫން', - 'ޖުލައި', - 'އޯގަސްޓު', - 'ސެޕްޓެމްބަރު', - 'އޮކްޓޯބަރު', - 'ނޮވެމްބަރު', - 'ޑިސެމްބަރު', - ], - weekdays = [ - 'އާދިއްތަ', - 'ހޯމަ', - 'އަންގާރަ', - 'ބުދަ', - 'ބުރާސްފަތި', - 'ހުކުރު', - 'ހޮނިހިރު', - ]; - - var dv = moment.defineLocale('dv', { - months: months, - monthsShort: months, - weekdays: weekdays, - weekdaysShort: weekdays, - weekdaysMin: 'އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'D/M/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - meridiemParse: /މކ|މފ/, - isPM: function (input) { - return 'މފ' === input; - }, - meridiem: function (hour, minute, isLower) { - if (hour < 12) { - return 'މކ'; - } else { - return 'މފ'; - } - }, - calendar: { - sameDay: '[މިއަދު] LT', - nextDay: '[މާދަމާ] LT', - nextWeek: 'dddd LT', - lastDay: '[އިއްޔެ] LT', - lastWeek: '[ފާއިތުވި] dddd LT', - sameElse: 'L', - }, - relativeTime: { - future: 'ތެރޭގައި %s', - past: 'ކުރިން %s', - s: 'ސިކުންތުކޮޅެއް', - ss: 'd% ސިކުންތު', - m: 'މިނިޓެއް', - mm: 'މިނިޓު %d', - h: 'ގަޑިއިރެއް', - hh: 'ގަޑިއިރު %d', - d: 'ދުވަހެއް', - dd: 'ދުވަސް %d', - M: 'މަހެއް', - MM: 'މަސް %d', - y: 'އަހަރެއް', - yy: 'އަހަރު %d', - }, - preparse: function (string) { - return string.replace(/،/g, ','); - }, - postformat: function (string) { - return string.replace(/,/g, '،'); - }, - week: { - dow: 7, // Sunday is the first day of the week. - doy: 12, // The week that contains Jan 12th is the first week of the year. - }, - }); - - return dv; - -}))); - - -/***/ }), - -/***/ 54691: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Greek [el] -//! author : Aggelos Karalias : https://github.com/mehiel - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function isFunction(input) { - return ( - (typeof Function !== 'undefined' && input instanceof Function) || - Object.prototype.toString.call(input) === '[object Function]' - ); - } - - var el = moment.defineLocale('el', { - monthsNominativeEl: - 'Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος'.split( - '_' - ), - monthsGenitiveEl: - 'Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου'.split( - '_' - ), - months: function (momentToFormat, format) { - if (!momentToFormat) { - return this._monthsNominativeEl; - } else if ( - typeof format === 'string' && - /D/.test(format.substring(0, format.indexOf('MMMM'))) - ) { - // if there is a day number before 'MMMM' - return this._monthsGenitiveEl[momentToFormat.month()]; - } else { - return this._monthsNominativeEl[momentToFormat.month()]; - } - }, - monthsShort: 'Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ'.split('_'), - weekdays: 'Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο'.split( - '_' - ), - weekdaysShort: 'Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ'.split('_'), - weekdaysMin: 'Κυ_Δε_Τρ_Τε_Πε_Πα_Σα'.split('_'), - meridiem: function (hours, minutes, isLower) { - if (hours > 11) { - return isLower ? 'μμ' : 'ΜΜ'; - } else { - return isLower ? 'πμ' : 'ΠΜ'; - } - }, - isPM: function (input) { - return (input + '').toLowerCase()[0] === 'μ'; - }, - meridiemParse: /[ΠΜ]\.?Μ?\.?/i, - longDateFormat: { - LT: 'h:mm A', - LTS: 'h:mm:ss A', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY h:mm A', - LLLL: 'dddd, D MMMM YYYY h:mm A', - }, - calendarEl: { - sameDay: '[Σήμερα {}] LT', - nextDay: '[Αύριο {}] LT', - nextWeek: 'dddd [{}] LT', - lastDay: '[Χθες {}] LT', - lastWeek: function () { - switch (this.day()) { - case 6: - return '[το προηγούμενο] dddd [{}] LT'; - default: - return '[την προηγούμενη] dddd [{}] LT'; - } - }, - sameElse: 'L', - }, - calendar: function (key, mom) { - var output = this._calendarEl[key], - hours = mom && mom.hours(); - if (isFunction(output)) { - output = output.apply(mom); - } - return output.replace('{}', hours % 12 === 1 ? 'στη' : 'στις'); - }, - relativeTime: { - future: 'σε %s', - past: '%s πριν', - s: 'λίγα δευτερόλεπτα', - ss: '%d δευτερόλεπτα', - m: 'ένα λεπτό', - mm: '%d λεπτά', - h: 'μία ώρα', - hh: '%d ώρες', - d: 'μία μέρα', - dd: '%d μέρες', - M: 'ένας μήνας', - MM: '%d μήνες', - y: 'ένας χρόνος', - yy: '%d χρόνια', - }, - dayOfMonthOrdinalParse: /\d{1,2}η/, - ordinal: '%dη', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4st is the first week of the year. - }, - }); - - return el; - -}))); - - -/***/ }), - -/***/ 53872: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : English (Australia) [en-au] -//! author : Jared Morse : https://github.com/jarcoal - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var enAu = moment.defineLocale('en-au', { - months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split( - '_' - ), - monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), - weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split( - '_' - ), - weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), - weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), - longDateFormat: { - LT: 'h:mm A', - LTS: 'h:mm:ss A', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY h:mm A', - LLLL: 'dddd, D MMMM YYYY h:mm A', - }, - calendar: { - sameDay: '[Today at] LT', - nextDay: '[Tomorrow at] LT', - nextWeek: 'dddd [at] LT', - lastDay: '[Yesterday at] LT', - lastWeek: '[Last] dddd [at] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'in %s', - past: '%s ago', - s: 'a few seconds', - ss: '%d seconds', - m: 'a minute', - mm: '%d minutes', - h: 'an hour', - hh: '%d hours', - d: 'a day', - dd: '%d days', - M: 'a month', - MM: '%d months', - y: 'a year', - yy: '%d years', - }, - dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/, - ordinal: function (number) { - var b = number % 10, - output = - ~~((number % 100) / 10) === 1 - ? 'th' - : b === 1 - ? 'st' - : b === 2 - ? 'nd' - : b === 3 - ? 'rd' - : 'th'; - return number + output; - }, - week: { - dow: 0, // Sunday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return enAu; - -}))); - - -/***/ }), - -/***/ 28298: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : English (Canada) [en-ca] -//! author : Jonathan Abourbih : https://github.com/jonbca - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var enCa = moment.defineLocale('en-ca', { - months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split( - '_' - ), - monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), - weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split( - '_' - ), - weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), - weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), - longDateFormat: { - LT: 'h:mm A', - LTS: 'h:mm:ss A', - L: 'YYYY-MM-DD', - LL: 'MMMM D, YYYY', - LLL: 'MMMM D, YYYY h:mm A', - LLLL: 'dddd, MMMM D, YYYY h:mm A', - }, - calendar: { - sameDay: '[Today at] LT', - nextDay: '[Tomorrow at] LT', - nextWeek: 'dddd [at] LT', - lastDay: '[Yesterday at] LT', - lastWeek: '[Last] dddd [at] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'in %s', - past: '%s ago', - s: 'a few seconds', - ss: '%d seconds', - m: 'a minute', - mm: '%d minutes', - h: 'an hour', - hh: '%d hours', - d: 'a day', - dd: '%d days', - M: 'a month', - MM: '%d months', - y: 'a year', - yy: '%d years', - }, - dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/, - ordinal: function (number) { - var b = number % 10, - output = - ~~((number % 100) / 10) === 1 - ? 'th' - : b === 1 - ? 'st' - : b === 2 - ? 'nd' - : b === 3 - ? 'rd' - : 'th'; - return number + output; - }, - }); - - return enCa; - -}))); - - -/***/ }), - -/***/ 56195: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : English (United Kingdom) [en-gb] -//! author : Chris Gedrim : https://github.com/chrisgedrim - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var enGb = moment.defineLocale('en-gb', { - months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split( - '_' - ), - monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), - weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split( - '_' - ), - weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), - weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Today at] LT', - nextDay: '[Tomorrow at] LT', - nextWeek: 'dddd [at] LT', - lastDay: '[Yesterday at] LT', - lastWeek: '[Last] dddd [at] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'in %s', - past: '%s ago', - s: 'a few seconds', - ss: '%d seconds', - m: 'a minute', - mm: '%d minutes', - h: 'an hour', - hh: '%d hours', - d: 'a day', - dd: '%d days', - M: 'a month', - MM: '%d months', - y: 'a year', - yy: '%d years', - }, - dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/, - ordinal: function (number) { - var b = number % 10, - output = - ~~((number % 100) / 10) === 1 - ? 'th' - : b === 1 - ? 'st' - : b === 2 - ? 'nd' - : b === 3 - ? 'rd' - : 'th'; - return number + output; - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return enGb; - -}))); - - -/***/ }), - -/***/ 66584: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : English (Ireland) [en-ie] -//! author : Chris Cartlidge : https://github.com/chriscartlidge - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var enIe = moment.defineLocale('en-ie', { - months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split( - '_' - ), - monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), - weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split( - '_' - ), - weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), - weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Today at] LT', - nextDay: '[Tomorrow at] LT', - nextWeek: 'dddd [at] LT', - lastDay: '[Yesterday at] LT', - lastWeek: '[Last] dddd [at] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'in %s', - past: '%s ago', - s: 'a few seconds', - ss: '%d seconds', - m: 'a minute', - mm: '%d minutes', - h: 'an hour', - hh: '%d hours', - d: 'a day', - dd: '%d days', - M: 'a month', - MM: '%d months', - y: 'a year', - yy: '%d years', - }, - dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/, - ordinal: function (number) { - var b = number % 10, - output = - ~~((number % 100) / 10) === 1 - ? 'th' - : b === 1 - ? 'st' - : b === 2 - ? 'nd' - : b === 3 - ? 'rd' - : 'th'; - return number + output; - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return enIe; - -}))); - - -/***/ }), - -/***/ 65543: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : English (Israel) [en-il] -//! author : Chris Gedrim : https://github.com/chrisgedrim - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var enIl = moment.defineLocale('en-il', { - months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split( - '_' - ), - monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), - weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split( - '_' - ), - weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), - weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Today at] LT', - nextDay: '[Tomorrow at] LT', - nextWeek: 'dddd [at] LT', - lastDay: '[Yesterday at] LT', - lastWeek: '[Last] dddd [at] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'in %s', - past: '%s ago', - s: 'a few seconds', - ss: '%d seconds', - m: 'a minute', - mm: '%d minutes', - h: 'an hour', - hh: '%d hours', - d: 'a day', - dd: '%d days', - M: 'a month', - MM: '%d months', - y: 'a year', - yy: '%d years', - }, - dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/, - ordinal: function (number) { - var b = number % 10, - output = - ~~((number % 100) / 10) === 1 - ? 'th' - : b === 1 - ? 'st' - : b === 2 - ? 'nd' - : b === 3 - ? 'rd' - : 'th'; - return number + output; - }, - }); - - return enIl; - -}))); - - -/***/ }), - -/***/ 9033: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : English (India) [en-in] -//! author : Jatin Agrawal : https://github.com/jatinag22 - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var enIn = moment.defineLocale('en-in', { - months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split( - '_' - ), - monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), - weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split( - '_' - ), - weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), - weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), - longDateFormat: { - LT: 'h:mm A', - LTS: 'h:mm:ss A', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY h:mm A', - LLLL: 'dddd, D MMMM YYYY h:mm A', - }, - calendar: { - sameDay: '[Today at] LT', - nextDay: '[Tomorrow at] LT', - nextWeek: 'dddd [at] LT', - lastDay: '[Yesterday at] LT', - lastWeek: '[Last] dddd [at] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'in %s', - past: '%s ago', - s: 'a few seconds', - ss: '%d seconds', - m: 'a minute', - mm: '%d minutes', - h: 'an hour', - hh: '%d hours', - d: 'a day', - dd: '%d days', - M: 'a month', - MM: '%d months', - y: 'a year', - yy: '%d years', - }, - dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/, - ordinal: function (number) { - var b = number % 10, - output = - ~~((number % 100) / 10) === 1 - ? 'th' - : b === 1 - ? 'st' - : b === 2 - ? 'nd' - : b === 3 - ? 'rd' - : 'th'; - return number + output; - }, - week: { - dow: 0, // Sunday is the first day of the week. - doy: 6, // The week that contains Jan 1st is the first week of the year. - }, - }); - - return enIn; - -}))); - - -/***/ }), - -/***/ 79402: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : English (New Zealand) [en-nz] -//! author : Luke McGregor : https://github.com/lukemcgregor - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var enNz = moment.defineLocale('en-nz', { - months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split( - '_' - ), - monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), - weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split( - '_' - ), - weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), - weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), - longDateFormat: { - LT: 'h:mm A', - LTS: 'h:mm:ss A', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY h:mm A', - LLLL: 'dddd, D MMMM YYYY h:mm A', - }, - calendar: { - sameDay: '[Today at] LT', - nextDay: '[Tomorrow at] LT', - nextWeek: 'dddd [at] LT', - lastDay: '[Yesterday at] LT', - lastWeek: '[Last] dddd [at] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'in %s', - past: '%s ago', - s: 'a few seconds', - ss: '%d seconds', - m: 'a minute', - mm: '%d minutes', - h: 'an hour', - hh: '%d hours', - d: 'a day', - dd: '%d days', - M: 'a month', - MM: '%d months', - y: 'a year', - yy: '%d years', - }, - dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/, - ordinal: function (number) { - var b = number % 10, - output = - ~~((number % 100) / 10) === 1 - ? 'th' - : b === 1 - ? 'st' - : b === 2 - ? 'nd' - : b === 3 - ? 'rd' - : 'th'; - return number + output; - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return enNz; - -}))); - - -/***/ }), - -/***/ 43004: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : English (Singapore) [en-sg] -//! author : Matthew Castrillon-Madrigal : https://github.com/techdimension - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var enSg = moment.defineLocale('en-sg', { - months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split( - '_' - ), - monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), - weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split( - '_' - ), - weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), - weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Today at] LT', - nextDay: '[Tomorrow at] LT', - nextWeek: 'dddd [at] LT', - lastDay: '[Yesterday at] LT', - lastWeek: '[Last] dddd [at] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'in %s', - past: '%s ago', - s: 'a few seconds', - ss: '%d seconds', - m: 'a minute', - mm: '%d minutes', - h: 'an hour', - hh: '%d hours', - d: 'a day', - dd: '%d days', - M: 'a month', - MM: '%d months', - y: 'a year', - yy: '%d years', - }, - dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/, - ordinal: function (number) { - var b = number % 10, - output = - ~~((number % 100) / 10) === 1 - ? 'th' - : b === 1 - ? 'st' - : b === 2 - ? 'nd' - : b === 3 - ? 'rd' - : 'th'; - return number + output; - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return enSg; - -}))); - - -/***/ }), - -/***/ 32934: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Esperanto [eo] -//! author : Colin Dean : https://github.com/colindean -//! author : Mia Nordentoft Imperatori : https://github.com/miestasmia -//! comment : miestasmia corrected the translation by colindean -//! comment : Vivakvo corrected the translation by colindean and miestasmia - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var eo = moment.defineLocale('eo', { - months: 'januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro'.split( - '_' - ), - monthsShort: 'jan_feb_mart_apr_maj_jun_jul_aŭg_sept_okt_nov_dec'.split('_'), - weekdays: 'dimanĉo_lundo_mardo_merkredo_ĵaŭdo_vendredo_sabato'.split('_'), - weekdaysShort: 'dim_lun_mard_merk_ĵaŭ_ven_sab'.split('_'), - weekdaysMin: 'di_lu_ma_me_ĵa_ve_sa'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'YYYY-MM-DD', - LL: '[la] D[-an de] MMMM, YYYY', - LLL: '[la] D[-an de] MMMM, YYYY HH:mm', - LLLL: 'dddd[n], [la] D[-an de] MMMM, YYYY HH:mm', - llll: 'ddd, [la] D[-an de] MMM, YYYY HH:mm', - }, - meridiemParse: /[ap]\.t\.m/i, - isPM: function (input) { - return input.charAt(0).toLowerCase() === 'p'; - }, - meridiem: function (hours, minutes, isLower) { - if (hours > 11) { - return isLower ? 'p.t.m.' : 'P.T.M.'; - } else { - return isLower ? 'a.t.m.' : 'A.T.M.'; - } - }, - calendar: { - sameDay: '[Hodiaŭ je] LT', - nextDay: '[Morgaŭ je] LT', - nextWeek: 'dddd[n je] LT', - lastDay: '[Hieraŭ je] LT', - lastWeek: '[pasintan] dddd[n je] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'post %s', - past: 'antaŭ %s', - s: 'kelkaj sekundoj', - ss: '%d sekundoj', - m: 'unu minuto', - mm: '%d minutoj', - h: 'unu horo', - hh: '%d horoj', - d: 'unu tago', //ne 'diurno', ĉar estas uzita por proksimumo - dd: '%d tagoj', - M: 'unu monato', - MM: '%d monatoj', - y: 'unu jaro', - yy: '%d jaroj', - }, - dayOfMonthOrdinalParse: /\d{1,2}a/, - ordinal: '%da', - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return eo; - -}))); - - -/***/ }), - -/***/ 20838: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Spanish (Dominican Republic) [es-do] - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var monthsShortDot = - 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split( - '_' - ), - monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'), - monthsParse = [ - /^ene/i, - /^feb/i, - /^mar/i, - /^abr/i, - /^may/i, - /^jun/i, - /^jul/i, - /^ago/i, - /^sep/i, - /^oct/i, - /^nov/i, - /^dic/i, - ], - monthsRegex = - /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i; - - var esDo = moment.defineLocale('es-do', { - months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split( - '_' - ), - monthsShort: function (m, format) { - if (!m) { - return monthsShortDot; - } else if (/-MMM-/.test(format)) { - return monthsShort[m.month()]; - } else { - return monthsShortDot[m.month()]; - } - }, - monthsRegex: monthsRegex, - monthsShortRegex: monthsRegex, - monthsStrictRegex: - /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i, - monthsShortStrictRegex: - /^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i, - monthsParse: monthsParse, - longMonthsParse: monthsParse, - shortMonthsParse: monthsParse, - weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'), - weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'), - weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'h:mm A', - LTS: 'h:mm:ss A', - L: 'DD/MM/YYYY', - LL: 'D [de] MMMM [de] YYYY', - LLL: 'D [de] MMMM [de] YYYY h:mm A', - LLLL: 'dddd, D [de] MMMM [de] YYYY h:mm A', - }, - calendar: { - sameDay: function () { - return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; - }, - nextDay: function () { - return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; - }, - nextWeek: function () { - return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; - }, - lastDay: function () { - return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; - }, - lastWeek: function () { - return ( - '[el] dddd [pasado a la' + - (this.hours() !== 1 ? 's' : '') + - '] LT' - ); - }, - sameElse: 'L', - }, - relativeTime: { - future: 'en %s', - past: 'hace %s', - s: 'unos segundos', - ss: '%d segundos', - m: 'un minuto', - mm: '%d minutos', - h: 'una hora', - hh: '%d horas', - d: 'un día', - dd: '%d días', - w: 'una semana', - ww: '%d semanas', - M: 'un mes', - MM: '%d meses', - y: 'un año', - yy: '%d años', - }, - dayOfMonthOrdinalParse: /\d{1,2}º/, - ordinal: '%dº', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return esDo; - -}))); - - -/***/ }), - -/***/ 17730: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Spanish (Mexico) [es-mx] -//! author : JC Franco : https://github.com/jcfranco - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var monthsShortDot = - 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split( - '_' - ), - monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'), - monthsParse = [ - /^ene/i, - /^feb/i, - /^mar/i, - /^abr/i, - /^may/i, - /^jun/i, - /^jul/i, - /^ago/i, - /^sep/i, - /^oct/i, - /^nov/i, - /^dic/i, - ], - monthsRegex = - /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i; - - var esMx = moment.defineLocale('es-mx', { - months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split( - '_' - ), - monthsShort: function (m, format) { - if (!m) { - return monthsShortDot; - } else if (/-MMM-/.test(format)) { - return monthsShort[m.month()]; - } else { - return monthsShortDot[m.month()]; - } - }, - monthsRegex: monthsRegex, - monthsShortRegex: monthsRegex, - monthsStrictRegex: - /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i, - monthsShortStrictRegex: - /^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i, - monthsParse: monthsParse, - longMonthsParse: monthsParse, - shortMonthsParse: monthsParse, - weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'), - weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'), - weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D [de] MMMM [de] YYYY', - LLL: 'D [de] MMMM [de] YYYY H:mm', - LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm', - }, - calendar: { - sameDay: function () { - return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; - }, - nextDay: function () { - return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; - }, - nextWeek: function () { - return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; - }, - lastDay: function () { - return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; - }, - lastWeek: function () { - return ( - '[el] dddd [pasado a la' + - (this.hours() !== 1 ? 's' : '') + - '] LT' - ); - }, - sameElse: 'L', - }, - relativeTime: { - future: 'en %s', - past: 'hace %s', - s: 'unos segundos', - ss: '%d segundos', - m: 'un minuto', - mm: '%d minutos', - h: 'una hora', - hh: '%d horas', - d: 'un día', - dd: '%d días', - w: 'una semana', - ww: '%d semanas', - M: 'un mes', - MM: '%d meses', - y: 'un año', - yy: '%d años', - }, - dayOfMonthOrdinalParse: /\d{1,2}º/, - ordinal: '%dº', - week: { - dow: 0, // Sunday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - invalidDate: 'Fecha inválida', - }); - - return esMx; - -}))); - - -/***/ }), - -/***/ 56575: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Spanish (United States) [es-us] -//! author : bustta : https://github.com/bustta -//! author : chrisrodz : https://github.com/chrisrodz - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var monthsShortDot = - 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split( - '_' - ), - monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'), - monthsParse = [ - /^ene/i, - /^feb/i, - /^mar/i, - /^abr/i, - /^may/i, - /^jun/i, - /^jul/i, - /^ago/i, - /^sep/i, - /^oct/i, - /^nov/i, - /^dic/i, - ], - monthsRegex = - /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i; - - var esUs = moment.defineLocale('es-us', { - months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split( - '_' - ), - monthsShort: function (m, format) { - if (!m) { - return monthsShortDot; - } else if (/-MMM-/.test(format)) { - return monthsShort[m.month()]; - } else { - return monthsShortDot[m.month()]; - } - }, - monthsRegex: monthsRegex, - monthsShortRegex: monthsRegex, - monthsStrictRegex: - /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i, - monthsShortStrictRegex: - /^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i, - monthsParse: monthsParse, - longMonthsParse: monthsParse, - shortMonthsParse: monthsParse, - weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'), - weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'), - weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'h:mm A', - LTS: 'h:mm:ss A', - L: 'MM/DD/YYYY', - LL: 'D [de] MMMM [de] YYYY', - LLL: 'D [de] MMMM [de] YYYY h:mm A', - LLLL: 'dddd, D [de] MMMM [de] YYYY h:mm A', - }, - calendar: { - sameDay: function () { - return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; - }, - nextDay: function () { - return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; - }, - nextWeek: function () { - return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; - }, - lastDay: function () { - return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; - }, - lastWeek: function () { - return ( - '[el] dddd [pasado a la' + - (this.hours() !== 1 ? 's' : '') + - '] LT' - ); - }, - sameElse: 'L', - }, - relativeTime: { - future: 'en %s', - past: 'hace %s', - s: 'unos segundos', - ss: '%d segundos', - m: 'un minuto', - mm: '%d minutos', - h: 'una hora', - hh: '%d horas', - d: 'un día', - dd: '%d días', - w: 'una semana', - ww: '%d semanas', - M: 'un mes', - MM: '%d meses', - y: 'un año', - yy: '%d años', - }, - dayOfMonthOrdinalParse: /\d{1,2}º/, - ordinal: '%dº', - week: { - dow: 0, // Sunday is the first day of the week. - doy: 6, // The week that contains Jan 6th is the first week of the year. - }, - }); - - return esUs; - -}))); - - -/***/ }), - -/***/ 97650: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Spanish [es] -//! author : Julio Napurí : https://github.com/julionc - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var monthsShortDot = - 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split( - '_' - ), - monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'), - monthsParse = [ - /^ene/i, - /^feb/i, - /^mar/i, - /^abr/i, - /^may/i, - /^jun/i, - /^jul/i, - /^ago/i, - /^sep/i, - /^oct/i, - /^nov/i, - /^dic/i, - ], - monthsRegex = - /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i; - - var es = moment.defineLocale('es', { - months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split( - '_' - ), - monthsShort: function (m, format) { - if (!m) { - return monthsShortDot; - } else if (/-MMM-/.test(format)) { - return monthsShort[m.month()]; - } else { - return monthsShortDot[m.month()]; - } - }, - monthsRegex: monthsRegex, - monthsShortRegex: monthsRegex, - monthsStrictRegex: - /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i, - monthsShortStrictRegex: - /^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i, - monthsParse: monthsParse, - longMonthsParse: monthsParse, - shortMonthsParse: monthsParse, - weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'), - weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'), - weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D [de] MMMM [de] YYYY', - LLL: 'D [de] MMMM [de] YYYY H:mm', - LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm', - }, - calendar: { - sameDay: function () { - return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; - }, - nextDay: function () { - return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; - }, - nextWeek: function () { - return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; - }, - lastDay: function () { - return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; - }, - lastWeek: function () { - return ( - '[el] dddd [pasado a la' + - (this.hours() !== 1 ? 's' : '') + - '] LT' - ); - }, - sameElse: 'L', - }, - relativeTime: { - future: 'en %s', - past: 'hace %s', - s: 'unos segundos', - ss: '%d segundos', - m: 'un minuto', - mm: '%d minutos', - h: 'una hora', - hh: '%d horas', - d: 'un día', - dd: '%d días', - w: 'una semana', - ww: '%d semanas', - M: 'un mes', - MM: '%d meses', - y: 'un año', - yy: '%d años', - }, - dayOfMonthOrdinalParse: /\d{1,2}º/, - ordinal: '%dº', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - invalidDate: 'Fecha inválida', - }); - - return es; - -}))); - - -/***/ }), - -/***/ 3035: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Estonian [et] -//! author : Henry Kehlmann : https://github.com/madhenry -//! improvements : Illimar Tambek : https://github.com/ragulka - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function processRelativeTime(number, withoutSuffix, key, isFuture) { - var format = { - s: ['mõne sekundi', 'mõni sekund', 'paar sekundit'], - ss: [number + 'sekundi', number + 'sekundit'], - m: ['ühe minuti', 'üks minut'], - mm: [number + ' minuti', number + ' minutit'], - h: ['ühe tunni', 'tund aega', 'üks tund'], - hh: [number + ' tunni', number + ' tundi'], - d: ['ühe päeva', 'üks päev'], - M: ['kuu aja', 'kuu aega', 'üks kuu'], - MM: [number + ' kuu', number + ' kuud'], - y: ['ühe aasta', 'aasta', 'üks aasta'], - yy: [number + ' aasta', number + ' aastat'], - }; - if (withoutSuffix) { - return format[key][2] ? format[key][2] : format[key][1]; - } - return isFuture ? format[key][0] : format[key][1]; - } - - var et = moment.defineLocale('et', { - months: 'jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember'.split( - '_' - ), - monthsShort: - 'jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets'.split('_'), - weekdays: - 'pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev'.split( - '_' - ), - weekdaysShort: 'P_E_T_K_N_R_L'.split('_'), - weekdaysMin: 'P_E_T_K_N_R_L'.split('_'), - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D. MMMM YYYY', - LLL: 'D. MMMM YYYY H:mm', - LLLL: 'dddd, D. MMMM YYYY H:mm', - }, - calendar: { - sameDay: '[Täna,] LT', - nextDay: '[Homme,] LT', - nextWeek: '[Järgmine] dddd LT', - lastDay: '[Eile,] LT', - lastWeek: '[Eelmine] dddd LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s pärast', - past: '%s tagasi', - s: processRelativeTime, - ss: processRelativeTime, - m: processRelativeTime, - mm: processRelativeTime, - h: processRelativeTime, - hh: processRelativeTime, - d: processRelativeTime, - dd: '%d päeva', - M: processRelativeTime, - MM: processRelativeTime, - y: processRelativeTime, - yy: processRelativeTime, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return et; - -}))); - - -/***/ }), - -/***/ 3508: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Basque [eu] -//! author : Eneko Illarramendi : https://github.com/eillarra - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var eu = moment.defineLocale('eu', { - months: 'urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua'.split( - '_' - ), - monthsShort: - 'urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.'.split( - '_' - ), - monthsParseExact: true, - weekdays: - 'igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata'.split( - '_' - ), - weekdaysShort: 'ig._al._ar._az._og._ol._lr.'.split('_'), - weekdaysMin: 'ig_al_ar_az_og_ol_lr'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'YYYY-MM-DD', - LL: 'YYYY[ko] MMMM[ren] D[a]', - LLL: 'YYYY[ko] MMMM[ren] D[a] HH:mm', - LLLL: 'dddd, YYYY[ko] MMMM[ren] D[a] HH:mm', - l: 'YYYY-M-D', - ll: 'YYYY[ko] MMM D[a]', - lll: 'YYYY[ko] MMM D[a] HH:mm', - llll: 'ddd, YYYY[ko] MMM D[a] HH:mm', - }, - calendar: { - sameDay: '[gaur] LT[etan]', - nextDay: '[bihar] LT[etan]', - nextWeek: 'dddd LT[etan]', - lastDay: '[atzo] LT[etan]', - lastWeek: '[aurreko] dddd LT[etan]', - sameElse: 'L', - }, - relativeTime: { - future: '%s barru', - past: 'duela %s', - s: 'segundo batzuk', - ss: '%d segundo', - m: 'minutu bat', - mm: '%d minutu', - h: 'ordu bat', - hh: '%d ordu', - d: 'egun bat', - dd: '%d egun', - M: 'hilabete bat', - MM: '%d hilabete', - y: 'urte bat', - yy: '%d urte', - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return eu; - -}))); - - -/***/ }), - -/***/ 119: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Persian [fa] -//! author : Ebrahim Byagowi : https://github.com/ebraminio - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var symbolMap = { - 1: '۱', - 2: '۲', - 3: '۳', - 4: '۴', - 5: '۵', - 6: '۶', - 7: '۷', - 8: '۸', - 9: '۹', - 0: '۰', - }, - numberMap = { - '۱': '1', - '۲': '2', - '۳': '3', - '۴': '4', - '۵': '5', - '۶': '6', - '۷': '7', - '۸': '8', - '۹': '9', - '۰': '0', - }; - - var fa = moment.defineLocale('fa', { - months: 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split( - '_' - ), - monthsShort: - 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split( - '_' - ), - weekdays: - 'یک\u200cشنبه_دوشنبه_سه\u200cشنبه_چهارشنبه_پنج\u200cشنبه_جمعه_شنبه'.split( - '_' - ), - weekdaysShort: - 'یک\u200cشنبه_دوشنبه_سه\u200cشنبه_چهارشنبه_پنج\u200cشنبه_جمعه_شنبه'.split( - '_' - ), - weekdaysMin: 'ی_د_س_چ_پ_ج_ش'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - meridiemParse: /قبل از ظهر|بعد از ظهر/, - isPM: function (input) { - return /بعد از ظهر/.test(input); - }, - meridiem: function (hour, minute, isLower) { - if (hour < 12) { - return 'قبل از ظهر'; - } else { - return 'بعد از ظهر'; - } - }, - calendar: { - sameDay: '[امروز ساعت] LT', - nextDay: '[فردا ساعت] LT', - nextWeek: 'dddd [ساعت] LT', - lastDay: '[دیروز ساعت] LT', - lastWeek: 'dddd [پیش] [ساعت] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'در %s', - past: '%s پیش', - s: 'چند ثانیه', - ss: '%d ثانیه', - m: 'یک دقیقه', - mm: '%d دقیقه', - h: 'یک ساعت', - hh: '%d ساعت', - d: 'یک روز', - dd: '%d روز', - M: 'یک ماه', - MM: '%d ماه', - y: 'یک سال', - yy: '%d سال', - }, - preparse: function (string) { - return string - .replace(/[۰-۹]/g, function (match) { - return numberMap[match]; - }) - .replace(/،/g, ','); - }, - postformat: function (string) { - return string - .replace(/\d/g, function (match) { - return symbolMap[match]; - }) - .replace(/,/g, '،'); - }, - dayOfMonthOrdinalParse: /\d{1,2}م/, - ordinal: '%dم', - week: { - dow: 6, // Saturday is the first day of the week. - doy: 12, // The week that contains Jan 12th is the first week of the year. - }, - }); - - return fa; - -}))); - - -/***/ }), - -/***/ 90527: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Finnish [fi] -//! author : Tarmo Aidantausta : https://github.com/bleadof - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var numbersPast = - 'nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän'.split( - ' ' - ), - numbersFuture = [ - 'nolla', - 'yhden', - 'kahden', - 'kolmen', - 'neljän', - 'viiden', - 'kuuden', - numbersPast[7], - numbersPast[8], - numbersPast[9], - ]; - function translate(number, withoutSuffix, key, isFuture) { - var result = ''; - switch (key) { - case 's': - return isFuture ? 'muutaman sekunnin' : 'muutama sekunti'; - case 'ss': - result = isFuture ? 'sekunnin' : 'sekuntia'; - break; - case 'm': - return isFuture ? 'minuutin' : 'minuutti'; - case 'mm': - result = isFuture ? 'minuutin' : 'minuuttia'; - break; - case 'h': - return isFuture ? 'tunnin' : 'tunti'; - case 'hh': - result = isFuture ? 'tunnin' : 'tuntia'; - break; - case 'd': - return isFuture ? 'päivän' : 'päivä'; - case 'dd': - result = isFuture ? 'päivän' : 'päivää'; - break; - case 'M': - return isFuture ? 'kuukauden' : 'kuukausi'; - case 'MM': - result = isFuture ? 'kuukauden' : 'kuukautta'; - break; - case 'y': - return isFuture ? 'vuoden' : 'vuosi'; - case 'yy': - result = isFuture ? 'vuoden' : 'vuotta'; - break; - } - result = verbalNumber(number, isFuture) + ' ' + result; - return result; - } - function verbalNumber(number, isFuture) { - return number < 10 - ? isFuture - ? numbersFuture[number] - : numbersPast[number] - : number; - } - - var fi = moment.defineLocale('fi', { - months: 'tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu'.split( - '_' - ), - monthsShort: - 'tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu'.split( - '_' - ), - weekdays: - 'sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai'.split( - '_' - ), - weekdaysShort: 'su_ma_ti_ke_to_pe_la'.split('_'), - weekdaysMin: 'su_ma_ti_ke_to_pe_la'.split('_'), - longDateFormat: { - LT: 'HH.mm', - LTS: 'HH.mm.ss', - L: 'DD.MM.YYYY', - LL: 'Do MMMM[ta] YYYY', - LLL: 'Do MMMM[ta] YYYY, [klo] HH.mm', - LLLL: 'dddd, Do MMMM[ta] YYYY, [klo] HH.mm', - l: 'D.M.YYYY', - ll: 'Do MMM YYYY', - lll: 'Do MMM YYYY, [klo] HH.mm', - llll: 'ddd, Do MMM YYYY, [klo] HH.mm', - }, - calendar: { - sameDay: '[tänään] [klo] LT', - nextDay: '[huomenna] [klo] LT', - nextWeek: 'dddd [klo] LT', - lastDay: '[eilen] [klo] LT', - lastWeek: '[viime] dddd[na] [klo] LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s päästä', - past: '%s sitten', - s: translate, - ss: translate, - m: translate, - mm: translate, - h: translate, - hh: translate, - d: translate, - dd: translate, - M: translate, - MM: translate, - y: translate, - yy: translate, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return fi; - -}))); - - -/***/ }), - -/***/ 95995: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Filipino [fil] -//! author : Dan Hagman : https://github.com/hagmandan -//! author : Matthew Co : https://github.com/matthewdeeco - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var fil = moment.defineLocale('fil', { - months: 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split( - '_' - ), - monthsShort: 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'), - weekdays: 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split( - '_' - ), - weekdaysShort: 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'), - weekdaysMin: 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'MM/D/YYYY', - LL: 'MMMM D, YYYY', - LLL: 'MMMM D, YYYY HH:mm', - LLLL: 'dddd, MMMM DD, YYYY HH:mm', - }, - calendar: { - sameDay: 'LT [ngayong araw]', - nextDay: '[Bukas ng] LT', - nextWeek: 'LT [sa susunod na] dddd', - lastDay: 'LT [kahapon]', - lastWeek: 'LT [noong nakaraang] dddd', - sameElse: 'L', - }, - relativeTime: { - future: 'sa loob ng %s', - past: '%s ang nakalipas', - s: 'ilang segundo', - ss: '%d segundo', - m: 'isang minuto', - mm: '%d minuto', - h: 'isang oras', - hh: '%d oras', - d: 'isang araw', - dd: '%d araw', - M: 'isang buwan', - MM: '%d buwan', - y: 'isang taon', - yy: '%d taon', - }, - dayOfMonthOrdinalParse: /\d{1,2}/, - ordinal: function (number) { - return number; - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return fil; - -}))); - - -/***/ }), - -/***/ 52477: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Faroese [fo] -//! author : Ragnar Johannesen : https://github.com/ragnar123 -//! author : Kristian Sakarisson : https://github.com/sakarisson - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var fo = moment.defineLocale('fo', { - months: 'januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember'.split( - '_' - ), - monthsShort: 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'), - weekdays: - 'sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur'.split( - '_' - ), - weekdaysShort: 'sun_mán_týs_mik_hós_frí_ley'.split('_'), - weekdaysMin: 'su_má_tý_mi_hó_fr_le'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D. MMMM, YYYY HH:mm', - }, - calendar: { - sameDay: '[Í dag kl.] LT', - nextDay: '[Í morgin kl.] LT', - nextWeek: 'dddd [kl.] LT', - lastDay: '[Í gjár kl.] LT', - lastWeek: '[síðstu] dddd [kl] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'um %s', - past: '%s síðani', - s: 'fá sekund', - ss: '%d sekundir', - m: 'ein minuttur', - mm: '%d minuttir', - h: 'ein tími', - hh: '%d tímar', - d: 'ein dagur', - dd: '%d dagar', - M: 'ein mánaður', - MM: '%d mánaðir', - y: 'eitt ár', - yy: '%d ár', - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return fo; - -}))); - - -/***/ }), - -/***/ 26435: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : French (Canada) [fr-ca] -//! author : Jonathan Abourbih : https://github.com/jonbca - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var frCa = moment.defineLocale('fr-ca', { - months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split( - '_' - ), - monthsShort: - 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split( - '_' - ), - monthsParseExact: true, - weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'), - weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'), - weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'YYYY-MM-DD', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Aujourd’hui à] LT', - nextDay: '[Demain à] LT', - nextWeek: 'dddd [à] LT', - lastDay: '[Hier à] LT', - lastWeek: 'dddd [dernier à] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'dans %s', - past: 'il y a %s', - s: 'quelques secondes', - ss: '%d secondes', - m: 'une minute', - mm: '%d minutes', - h: 'une heure', - hh: '%d heures', - d: 'un jour', - dd: '%d jours', - M: 'un mois', - MM: '%d mois', - y: 'un an', - yy: '%d ans', - }, - dayOfMonthOrdinalParse: /\d{1,2}(er|e)/, - ordinal: function (number, period) { - switch (period) { - // Words with masculine grammatical gender: mois, trimestre, jour - default: - case 'M': - case 'Q': - case 'D': - case 'DDD': - case 'd': - return number + (number === 1 ? 'er' : 'e'); - - // Words with feminine grammatical gender: semaine - case 'w': - case 'W': - return number + (number === 1 ? 're' : 'e'); - } - }, - }); - - return frCa; - -}))); - - -/***/ }), - -/***/ 37892: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : French (Switzerland) [fr-ch] -//! author : Gaspard Bucher : https://github.com/gaspard - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var frCh = moment.defineLocale('fr-ch', { - months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split( - '_' - ), - monthsShort: - 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split( - '_' - ), - monthsParseExact: true, - weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'), - weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'), - weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Aujourd’hui à] LT', - nextDay: '[Demain à] LT', - nextWeek: 'dddd [à] LT', - lastDay: '[Hier à] LT', - lastWeek: 'dddd [dernier à] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'dans %s', - past: 'il y a %s', - s: 'quelques secondes', - ss: '%d secondes', - m: 'une minute', - mm: '%d minutes', - h: 'une heure', - hh: '%d heures', - d: 'un jour', - dd: '%d jours', - M: 'un mois', - MM: '%d mois', - y: 'un an', - yy: '%d ans', - }, - dayOfMonthOrdinalParse: /\d{1,2}(er|e)/, - ordinal: function (number, period) { - switch (period) { - // Words with masculine grammatical gender: mois, trimestre, jour - default: - case 'M': - case 'Q': - case 'D': - case 'DDD': - case 'd': - return number + (number === 1 ? 'er' : 'e'); - - // Words with feminine grammatical gender: semaine - case 'w': - case 'W': - return number + (number === 1 ? 're' : 'e'); - } - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return frCh; - -}))); - - -/***/ }), - -/***/ 85498: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : French [fr] -//! author : John Fischer : https://github.com/jfroffice - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var monthsStrictRegex = - /^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i, - monthsShortStrictRegex = - /(janv\.?|févr\.?|mars|avr\.?|mai|juin|juil\.?|août|sept\.?|oct\.?|nov\.?|déc\.?)/i, - monthsRegex = - /(janv\.?|févr\.?|mars|avr\.?|mai|juin|juil\.?|août|sept\.?|oct\.?|nov\.?|déc\.?|janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i, - monthsParse = [ - /^janv/i, - /^févr/i, - /^mars/i, - /^avr/i, - /^mai/i, - /^juin/i, - /^juil/i, - /^août/i, - /^sept/i, - /^oct/i, - /^nov/i, - /^déc/i, - ]; - - var fr = moment.defineLocale('fr', { - months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split( - '_' - ), - monthsShort: - 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split( - '_' - ), - monthsRegex: monthsRegex, - monthsShortRegex: monthsRegex, - monthsStrictRegex: monthsStrictRegex, - monthsShortStrictRegex: monthsShortStrictRegex, - monthsParse: monthsParse, - longMonthsParse: monthsParse, - shortMonthsParse: monthsParse, - weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'), - weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'), - weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Aujourd’hui à] LT', - nextDay: '[Demain à] LT', - nextWeek: 'dddd [à] LT', - lastDay: '[Hier à] LT', - lastWeek: 'dddd [dernier à] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'dans %s', - past: 'il y a %s', - s: 'quelques secondes', - ss: '%d secondes', - m: 'une minute', - mm: '%d minutes', - h: 'une heure', - hh: '%d heures', - d: 'un jour', - dd: '%d jours', - w: 'une semaine', - ww: '%d semaines', - M: 'un mois', - MM: '%d mois', - y: 'un an', - yy: '%d ans', - }, - dayOfMonthOrdinalParse: /\d{1,2}(er|)/, - ordinal: function (number, period) { - switch (period) { - // TODO: Return 'e' when day of month > 1. Move this case inside - // block for masculine words below. - // See https://github.com/moment/moment/issues/3375 - case 'D': - return number + (number === 1 ? 'er' : ''); - - // Words with masculine grammatical gender: mois, trimestre, jour - default: - case 'M': - case 'Q': - case 'DDD': - case 'd': - return number + (number === 1 ? 'er' : 'e'); - - // Words with feminine grammatical gender: semaine - case 'w': - case 'W': - return number + (number === 1 ? 're' : 'e'); - } - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return fr; - -}))); - - -/***/ }), - -/***/ 37071: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Frisian [fy] -//! author : Robin van der Vliet : https://github.com/robin0van0der0v - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var monthsShortWithDots = - 'jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.'.split('_'), - monthsShortWithoutDots = - 'jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'); - - var fy = moment.defineLocale('fy', { - months: 'jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber'.split( - '_' - ), - monthsShort: function (m, format) { - if (!m) { - return monthsShortWithDots; - } else if (/-MMM-/.test(format)) { - return monthsShortWithoutDots[m.month()]; - } else { - return monthsShortWithDots[m.month()]; - } - }, - monthsParseExact: true, - weekdays: 'snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon'.split( - '_' - ), - weekdaysShort: 'si._mo._ti._wo._to._fr._so.'.split('_'), - weekdaysMin: 'Si_Mo_Ti_Wo_To_Fr_So'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD-MM-YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[hjoed om] LT', - nextDay: '[moarn om] LT', - nextWeek: 'dddd [om] LT', - lastDay: '[juster om] LT', - lastWeek: '[ôfrûne] dddd [om] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'oer %s', - past: '%s lyn', - s: 'in pear sekonden', - ss: '%d sekonden', - m: 'ien minút', - mm: '%d minuten', - h: 'ien oere', - hh: '%d oeren', - d: 'ien dei', - dd: '%d dagen', - M: 'ien moanne', - MM: '%d moannen', - y: 'ien jier', - yy: '%d jierren', - }, - dayOfMonthOrdinalParse: /\d{1,2}(ste|de)/, - ordinal: function (number) { - return ( - number + - (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de') - ); - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return fy; - -}))); - - -/***/ }), - -/***/ 41734: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Irish or Irish Gaelic [ga] -//! author : André Silva : https://github.com/askpt - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var months = [ - 'Eanáir', - 'Feabhra', - 'Márta', - 'Aibreán', - 'Bealtaine', - 'Meitheamh', - 'Iúil', - 'Lúnasa', - 'Meán Fómhair', - 'Deireadh Fómhair', - 'Samhain', - 'Nollaig', - ], - monthsShort = [ - 'Ean', - 'Feabh', - 'Márt', - 'Aib', - 'Beal', - 'Meith', - 'Iúil', - 'Lún', - 'M.F.', - 'D.F.', - 'Samh', - 'Noll', - ], - weekdays = [ - 'Dé Domhnaigh', - 'Dé Luain', - 'Dé Máirt', - 'Dé Céadaoin', - 'Déardaoin', - 'Dé hAoine', - 'Dé Sathairn', - ], - weekdaysShort = ['Domh', 'Luan', 'Máirt', 'Céad', 'Déar', 'Aoine', 'Sath'], - weekdaysMin = ['Do', 'Lu', 'Má', 'Cé', 'Dé', 'A', 'Sa']; - - var ga = moment.defineLocale('ga', { - months: months, - monthsShort: monthsShort, - monthsParseExact: true, - weekdays: weekdays, - weekdaysShort: weekdaysShort, - weekdaysMin: weekdaysMin, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Inniu ag] LT', - nextDay: '[Amárach ag] LT', - nextWeek: 'dddd [ag] LT', - lastDay: '[Inné ag] LT', - lastWeek: 'dddd [seo caite] [ag] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'i %s', - past: '%s ó shin', - s: 'cúpla soicind', - ss: '%d soicind', - m: 'nóiméad', - mm: '%d nóiméad', - h: 'uair an chloig', - hh: '%d uair an chloig', - d: 'lá', - dd: '%d lá', - M: 'mí', - MM: '%d míonna', - y: 'bliain', - yy: '%d bliain', - }, - dayOfMonthOrdinalParse: /\d{1,2}(d|na|mh)/, - ordinal: function (number) { - var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh'; - return number + output; - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return ga; - -}))); - - -/***/ }), - -/***/ 70217: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Scottish Gaelic [gd] -//! author : Jon Ashdown : https://github.com/jonashdown - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var months = [ - 'Am Faoilleach', - 'An Gearran', - 'Am Màrt', - 'An Giblean', - 'An Cèitean', - 'An t-Ògmhios', - 'An t-Iuchar', - 'An Lùnastal', - 'An t-Sultain', - 'An Dàmhair', - 'An t-Samhain', - 'An Dùbhlachd', - ], - monthsShort = [ - 'Faoi', - 'Gear', - 'Màrt', - 'Gibl', - 'Cèit', - 'Ògmh', - 'Iuch', - 'Lùn', - 'Sult', - 'Dàmh', - 'Samh', - 'Dùbh', - ], - weekdays = [ - 'Didòmhnaich', - 'Diluain', - 'Dimàirt', - 'Diciadain', - 'Diardaoin', - 'Dihaoine', - 'Disathairne', - ], - weekdaysShort = ['Did', 'Dil', 'Dim', 'Dic', 'Dia', 'Dih', 'Dis'], - weekdaysMin = ['Dò', 'Lu', 'Mà', 'Ci', 'Ar', 'Ha', 'Sa']; - - var gd = moment.defineLocale('gd', { - months: months, - monthsShort: monthsShort, - monthsParseExact: true, - weekdays: weekdays, - weekdaysShort: weekdaysShort, - weekdaysMin: weekdaysMin, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[An-diugh aig] LT', - nextDay: '[A-màireach aig] LT', - nextWeek: 'dddd [aig] LT', - lastDay: '[An-dè aig] LT', - lastWeek: 'dddd [seo chaidh] [aig] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'ann an %s', - past: 'bho chionn %s', - s: 'beagan diogan', - ss: '%d diogan', - m: 'mionaid', - mm: '%d mionaidean', - h: 'uair', - hh: '%d uairean', - d: 'latha', - dd: '%d latha', - M: 'mìos', - MM: '%d mìosan', - y: 'bliadhna', - yy: '%d bliadhna', - }, - dayOfMonthOrdinalParse: /\d{1,2}(d|na|mh)/, - ordinal: function (number) { - var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh'; - return number + output; - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return gd; - -}))); - - -/***/ }), - -/***/ 77329: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Galician [gl] -//! author : Juan G. Hurtado : https://github.com/juanghurtado - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var gl = moment.defineLocale('gl', { - months: 'xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro'.split( - '_' - ), - monthsShort: - 'xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.'.split( - '_' - ), - monthsParseExact: true, - weekdays: 'domingo_luns_martes_mércores_xoves_venres_sábado'.split('_'), - weekdaysShort: 'dom._lun._mar._mér._xov._ven._sáb.'.split('_'), - weekdaysMin: 'do_lu_ma_mé_xo_ve_sá'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D [de] MMMM [de] YYYY', - LLL: 'D [de] MMMM [de] YYYY H:mm', - LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm', - }, - calendar: { - sameDay: function () { - return '[hoxe ' + (this.hours() !== 1 ? 'ás' : 'á') + '] LT'; - }, - nextDay: function () { - return '[mañá ' + (this.hours() !== 1 ? 'ás' : 'á') + '] LT'; - }, - nextWeek: function () { - return 'dddd [' + (this.hours() !== 1 ? 'ás' : 'a') + '] LT'; - }, - lastDay: function () { - return '[onte ' + (this.hours() !== 1 ? 'á' : 'a') + '] LT'; - }, - lastWeek: function () { - return ( - '[o] dddd [pasado ' + (this.hours() !== 1 ? 'ás' : 'a') + '] LT' - ); - }, - sameElse: 'L', - }, - relativeTime: { - future: function (str) { - if (str.indexOf('un') === 0) { - return 'n' + str; - } - return 'en ' + str; - }, - past: 'hai %s', - s: 'uns segundos', - ss: '%d segundos', - m: 'un minuto', - mm: '%d minutos', - h: 'unha hora', - hh: '%d horas', - d: 'un día', - dd: '%d días', - M: 'un mes', - MM: '%d meses', - y: 'un ano', - yy: '%d anos', - }, - dayOfMonthOrdinalParse: /\d{1,2}º/, - ordinal: '%dº', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return gl; - -}))); - - -/***/ }), - -/***/ 32124: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Konkani Devanagari script [gom-deva] -//! author : The Discoverer : https://github.com/WikiDiscoverer - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function processRelativeTime(number, withoutSuffix, key, isFuture) { - var format = { - s: ['थोडया सॅकंडांनी', 'थोडे सॅकंड'], - ss: [number + ' सॅकंडांनी', number + ' सॅकंड'], - m: ['एका मिणटान', 'एक मिनूट'], - mm: [number + ' मिणटांनी', number + ' मिणटां'], - h: ['एका वरान', 'एक वर'], - hh: [number + ' वरांनी', number + ' वरां'], - d: ['एका दिसान', 'एक दीस'], - dd: [number + ' दिसांनी', number + ' दीस'], - M: ['एका म्हयन्यान', 'एक म्हयनो'], - MM: [number + ' म्हयन्यानी', number + ' म्हयने'], - y: ['एका वर्सान', 'एक वर्स'], - yy: [number + ' वर्सांनी', number + ' वर्सां'], - }; - return isFuture ? format[key][0] : format[key][1]; - } - - var gomDeva = moment.defineLocale('gom-deva', { - months: { - standalone: - 'जानेवारी_फेब्रुवारी_मार्च_एप्रील_मे_जून_जुलय_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर'.split( - '_' - ), - format: 'जानेवारीच्या_फेब्रुवारीच्या_मार्चाच्या_एप्रीलाच्या_मेयाच्या_जूनाच्या_जुलयाच्या_ऑगस्टाच्या_सप्टेंबराच्या_ऑक्टोबराच्या_नोव्हेंबराच्या_डिसेंबराच्या'.split( - '_' - ), - isFormat: /MMMM(\s)+D[oD]?/, - }, - monthsShort: - 'जाने._फेब्रु._मार्च_एप्री._मे_जून_जुल._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.'.split( - '_' - ), - monthsParseExact: true, - weekdays: 'आयतार_सोमार_मंगळार_बुधवार_बिरेस्तार_सुक्रार_शेनवार'.split('_'), - weekdaysShort: 'आयत._सोम._मंगळ._बुध._ब्रेस्त._सुक्र._शेन.'.split('_'), - weekdaysMin: 'आ_सो_मं_बु_ब्रे_सु_शे'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'A h:mm [वाजतां]', - LTS: 'A h:mm:ss [वाजतां]', - L: 'DD-MM-YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY A h:mm [वाजतां]', - LLLL: 'dddd, MMMM Do, YYYY, A h:mm [वाजतां]', - llll: 'ddd, D MMM YYYY, A h:mm [वाजतां]', - }, - calendar: { - sameDay: '[आयज] LT', - nextDay: '[फाल्यां] LT', - nextWeek: '[फुडलो] dddd[,] LT', - lastDay: '[काल] LT', - lastWeek: '[फाटलो] dddd[,] LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s', - past: '%s आदीं', - s: processRelativeTime, - ss: processRelativeTime, - m: processRelativeTime, - mm: processRelativeTime, - h: processRelativeTime, - hh: processRelativeTime, - d: processRelativeTime, - dd: processRelativeTime, - M: processRelativeTime, - MM: processRelativeTime, - y: processRelativeTime, - yy: processRelativeTime, - }, - dayOfMonthOrdinalParse: /\d{1,2}(वेर)/, - ordinal: function (number, period) { - switch (period) { - // the ordinal 'वेर' only applies to day of the month - case 'D': - return number + 'वेर'; - default: - case 'M': - case 'Q': - case 'DDD': - case 'd': - case 'w': - case 'W': - return number; - } - }, - week: { - dow: 0, // Sunday is the first day of the week - doy: 3, // The week that contains Jan 4th is the first week of the year (7 + 0 - 4) - }, - meridiemParse: /राती|सकाळीं|दनपारां|सांजे/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === 'राती') { - return hour < 4 ? hour : hour + 12; - } else if (meridiem === 'सकाळीं') { - return hour; - } else if (meridiem === 'दनपारां') { - return hour > 12 ? hour : hour + 12; - } else if (meridiem === 'सांजे') { - return hour + 12; - } - }, - meridiem: function (hour, minute, isLower) { - if (hour < 4) { - return 'राती'; - } else if (hour < 12) { - return 'सकाळीं'; - } else if (hour < 16) { - return 'दनपारां'; - } else if (hour < 20) { - return 'सांजे'; - } else { - return 'राती'; - } - }, - }); - - return gomDeva; - -}))); - - -/***/ }), - -/***/ 93383: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Konkani Latin script [gom-latn] -//! author : The Discoverer : https://github.com/WikiDiscoverer - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function processRelativeTime(number, withoutSuffix, key, isFuture) { - var format = { - s: ['thoddea sekondamni', 'thodde sekond'], - ss: [number + ' sekondamni', number + ' sekond'], - m: ['eka mintan', 'ek minut'], - mm: [number + ' mintamni', number + ' mintam'], - h: ['eka voran', 'ek vor'], - hh: [number + ' voramni', number + ' voram'], - d: ['eka disan', 'ek dis'], - dd: [number + ' disamni', number + ' dis'], - M: ['eka mhoinean', 'ek mhoino'], - MM: [number + ' mhoineamni', number + ' mhoine'], - y: ['eka vorsan', 'ek voros'], - yy: [number + ' vorsamni', number + ' vorsam'], - }; - return isFuture ? format[key][0] : format[key][1]; - } - - var gomLatn = moment.defineLocale('gom-latn', { - months: { - standalone: - 'Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr'.split( - '_' - ), - format: 'Janerachea_Febrerachea_Marsachea_Abrilachea_Maiachea_Junachea_Julaiachea_Agostachea_Setembrachea_Otubrachea_Novembrachea_Dezembrachea'.split( - '_' - ), - isFormat: /MMMM(\s)+D[oD]?/, - }, - monthsShort: - 'Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.'.split('_'), - monthsParseExact: true, - weekdays: "Aitar_Somar_Mongllar_Budhvar_Birestar_Sukrar_Son'var".split('_'), - weekdaysShort: 'Ait._Som._Mon._Bud._Bre._Suk._Son.'.split('_'), - weekdaysMin: 'Ai_Sm_Mo_Bu_Br_Su_Sn'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'A h:mm [vazta]', - LTS: 'A h:mm:ss [vazta]', - L: 'DD-MM-YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY A h:mm [vazta]', - LLLL: 'dddd, MMMM Do, YYYY, A h:mm [vazta]', - llll: 'ddd, D MMM YYYY, A h:mm [vazta]', - }, - calendar: { - sameDay: '[Aiz] LT', - nextDay: '[Faleam] LT', - nextWeek: '[Fuddlo] dddd[,] LT', - lastDay: '[Kal] LT', - lastWeek: '[Fattlo] dddd[,] LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s', - past: '%s adim', - s: processRelativeTime, - ss: processRelativeTime, - m: processRelativeTime, - mm: processRelativeTime, - h: processRelativeTime, - hh: processRelativeTime, - d: processRelativeTime, - dd: processRelativeTime, - M: processRelativeTime, - MM: processRelativeTime, - y: processRelativeTime, - yy: processRelativeTime, - }, - dayOfMonthOrdinalParse: /\d{1,2}(er)/, - ordinal: function (number, period) { - switch (period) { - // the ordinal 'er' only applies to day of the month - case 'D': - return number + 'er'; - default: - case 'M': - case 'Q': - case 'DDD': - case 'd': - case 'w': - case 'W': - return number; - } - }, - week: { - dow: 0, // Sunday is the first day of the week - doy: 3, // The week that contains Jan 4th is the first week of the year (7 + 0 - 4) - }, - meridiemParse: /rati|sokallim|donparam|sanje/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === 'rati') { - return hour < 4 ? hour : hour + 12; - } else if (meridiem === 'sokallim') { - return hour; - } else if (meridiem === 'donparam') { - return hour > 12 ? hour : hour + 12; - } else if (meridiem === 'sanje') { - return hour + 12; - } - }, - meridiem: function (hour, minute, isLower) { - if (hour < 4) { - return 'rati'; - } else if (hour < 12) { - return 'sokallim'; - } else if (hour < 16) { - return 'donparam'; - } else if (hour < 20) { - return 'sanje'; - } else { - return 'rati'; - } - }, - }); - - return gomLatn; - -}))); - - -/***/ }), - -/***/ 95050: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Gujarati [gu] -//! author : Kaushik Thanki : https://github.com/Kaushik1987 - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var symbolMap = { - 1: '૧', - 2: '૨', - 3: '૩', - 4: '૪', - 5: '૫', - 6: '૬', - 7: '૭', - 8: '૮', - 9: '૯', - 0: '૦', - }, - numberMap = { - '૧': '1', - '૨': '2', - '૩': '3', - '૪': '4', - '૫': '5', - '૬': '6', - '૭': '7', - '૮': '8', - '૯': '9', - '૦': '0', - }; - - var gu = moment.defineLocale('gu', { - months: 'જાન્યુઆરી_ફેબ્રુઆરી_માર્ચ_એપ્રિલ_મે_જૂન_જુલાઈ_ઑગસ્ટ_સપ્ટેમ્બર_ઑક્ટ્બર_નવેમ્બર_ડિસેમ્બર'.split( - '_' - ), - monthsShort: - 'જાન્યુ._ફેબ્રુ._માર્ચ_એપ્રિ._મે_જૂન_જુલા._ઑગ._સપ્ટે._ઑક્ટ્._નવે._ડિસે.'.split( - '_' - ), - monthsParseExact: true, - weekdays: 'રવિવાર_સોમવાર_મંગળવાર_બુધ્વાર_ગુરુવાર_શુક્રવાર_શનિવાર'.split( - '_' - ), - weekdaysShort: 'રવિ_સોમ_મંગળ_બુધ્_ગુરુ_શુક્ર_શનિ'.split('_'), - weekdaysMin: 'ર_સો_મં_બુ_ગુ_શુ_શ'.split('_'), - longDateFormat: { - LT: 'A h:mm વાગ્યે', - LTS: 'A h:mm:ss વાગ્યે', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY, A h:mm વાગ્યે', - LLLL: 'dddd, D MMMM YYYY, A h:mm વાગ્યે', - }, - calendar: { - sameDay: '[આજ] LT', - nextDay: '[કાલે] LT', - nextWeek: 'dddd, LT', - lastDay: '[ગઇકાલે] LT', - lastWeek: '[પાછલા] dddd, LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s મા', - past: '%s પહેલા', - s: 'અમુક પળો', - ss: '%d સેકંડ', - m: 'એક મિનિટ', - mm: '%d મિનિટ', - h: 'એક કલાક', - hh: '%d કલાક', - d: 'એક દિવસ', - dd: '%d દિવસ', - M: 'એક મહિનો', - MM: '%d મહિનો', - y: 'એક વર્ષ', - yy: '%d વર્ષ', - }, - preparse: function (string) { - return string.replace(/[૧૨૩૪૫૬૭૮૯૦]/g, function (match) { - return numberMap[match]; - }); - }, - postformat: function (string) { - return string.replace(/\d/g, function (match) { - return symbolMap[match]; - }); - }, - // Gujarati notation for meridiems are quite fuzzy in practice. While there exists - // a rigid notion of a 'Pahar' it is not used as rigidly in modern Gujarati. - meridiemParse: /રાત|બપોર|સવાર|સાંજ/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === 'રાત') { - return hour < 4 ? hour : hour + 12; - } else if (meridiem === 'સવાર') { - return hour; - } else if (meridiem === 'બપોર') { - return hour >= 10 ? hour : hour + 12; - } else if (meridiem === 'સાંજ') { - return hour + 12; - } - }, - meridiem: function (hour, minute, isLower) { - if (hour < 4) { - return 'રાત'; - } else if (hour < 10) { - return 'સવાર'; - } else if (hour < 17) { - return 'બપોર'; - } else if (hour < 20) { - return 'સાંજ'; - } else { - return 'રાત'; - } - }, - week: { - dow: 0, // Sunday is the first day of the week. - doy: 6, // The week that contains Jan 6th is the first week of the year. - }, - }); - - return gu; - -}))); - - -/***/ }), - -/***/ 11713: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Hebrew [he] -//! author : Tomer Cohen : https://github.com/tomer -//! author : Moshe Simantov : https://github.com/DevelopmentIL -//! author : Tal Ater : https://github.com/TalAter - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var he = moment.defineLocale('he', { - months: 'ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר'.split( - '_' - ), - monthsShort: - 'ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳'.split('_'), - weekdays: 'ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת'.split('_'), - weekdaysShort: 'א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳'.split('_'), - weekdaysMin: 'א_ב_ג_ד_ה_ו_ש'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D [ב]MMMM YYYY', - LLL: 'D [ב]MMMM YYYY HH:mm', - LLLL: 'dddd, D [ב]MMMM YYYY HH:mm', - l: 'D/M/YYYY', - ll: 'D MMM YYYY', - lll: 'D MMM YYYY HH:mm', - llll: 'ddd, D MMM YYYY HH:mm', - }, - calendar: { - sameDay: '[היום ב־]LT', - nextDay: '[מחר ב־]LT', - nextWeek: 'dddd [בשעה] LT', - lastDay: '[אתמול ב־]LT', - lastWeek: '[ביום] dddd [האחרון בשעה] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'בעוד %s', - past: 'לפני %s', - s: 'מספר שניות', - ss: '%d שניות', - m: 'דקה', - mm: '%d דקות', - h: 'שעה', - hh: function (number) { - if (number === 2) { - return 'שעתיים'; - } - return number + ' שעות'; - }, - d: 'יום', - dd: function (number) { - if (number === 2) { - return 'יומיים'; - } - return number + ' ימים'; - }, - M: 'חודש', - MM: function (number) { - if (number === 2) { - return 'חודשיים'; - } - return number + ' חודשים'; - }, - y: 'שנה', - yy: function (number) { - if (number === 2) { - return 'שנתיים'; - } else if (number % 10 === 0 && number !== 10) { - return number + ' שנה'; - } - return number + ' שנים'; - }, - }, - meridiemParse: - /אחה"צ|לפנה"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i, - isPM: function (input) { - return /^(אחה"צ|אחרי הצהריים|בערב)$/.test(input); - }, - meridiem: function (hour, minute, isLower) { - if (hour < 5) { - return 'לפנות בוקר'; - } else if (hour < 10) { - return 'בבוקר'; - } else if (hour < 12) { - return isLower ? 'לפנה"צ' : 'לפני הצהריים'; - } else if (hour < 18) { - return isLower ? 'אחה"צ' : 'אחרי הצהריים'; - } else { - return 'בערב'; - } - }, - }); - - return he; - -}))); - - -/***/ }), - -/***/ 43861: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Hindi [hi] -//! author : Mayank Singhal : https://github.com/mayanksinghal - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var symbolMap = { - 1: '१', - 2: '२', - 3: '३', - 4: '४', - 5: '५', - 6: '६', - 7: '७', - 8: '८', - 9: '९', - 0: '०', - }, - numberMap = { - '१': '1', - '२': '2', - '३': '3', - '४': '4', - '५': '5', - '६': '6', - '७': '7', - '८': '8', - '९': '9', - '०': '0', - }, - monthsParse = [ - /^जन/i, - /^फ़र|फर/i, - /^मार्च/i, - /^अप्रै/i, - /^मई/i, - /^जून/i, - /^जुल/i, - /^अग/i, - /^सितं|सित/i, - /^अक्टू/i, - /^नव|नवं/i, - /^दिसं|दिस/i, - ], - shortMonthsParse = [ - /^जन/i, - /^फ़र/i, - /^मार्च/i, - /^अप्रै/i, - /^मई/i, - /^जून/i, - /^जुल/i, - /^अग/i, - /^सित/i, - /^अक्टू/i, - /^नव/i, - /^दिस/i, - ]; - - var hi = moment.defineLocale('hi', { - months: { - format: 'जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर'.split( - '_' - ), - standalone: - 'जनवरी_फरवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितंबर_अक्टूबर_नवंबर_दिसंबर'.split( - '_' - ), - }, - monthsShort: - 'जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.'.split('_'), - weekdays: 'रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'), - weekdaysShort: 'रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि'.split('_'), - weekdaysMin: 'र_सो_मं_बु_गु_शु_श'.split('_'), - longDateFormat: { - LT: 'A h:mm बजे', - LTS: 'A h:mm:ss बजे', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY, A h:mm बजे', - LLLL: 'dddd, D MMMM YYYY, A h:mm बजे', - }, - - monthsParse: monthsParse, - longMonthsParse: monthsParse, - shortMonthsParse: shortMonthsParse, - - monthsRegex: - /^(जनवरी|जन\.?|फ़रवरी|फरवरी|फ़र\.?|मार्च?|अप्रैल|अप्रै\.?|मई?|जून?|जुलाई|जुल\.?|अगस्त|अग\.?|सितम्बर|सितंबर|सित\.?|अक्टूबर|अक्टू\.?|नवम्बर|नवंबर|नव\.?|दिसम्बर|दिसंबर|दिस\.?)/i, - - monthsShortRegex: - /^(जनवरी|जन\.?|फ़रवरी|फरवरी|फ़र\.?|मार्च?|अप्रैल|अप्रै\.?|मई?|जून?|जुलाई|जुल\.?|अगस्त|अग\.?|सितम्बर|सितंबर|सित\.?|अक्टूबर|अक्टू\.?|नवम्बर|नवंबर|नव\.?|दिसम्बर|दिसंबर|दिस\.?)/i, - - monthsStrictRegex: - /^(जनवरी?|फ़रवरी|फरवरी?|मार्च?|अप्रैल?|मई?|जून?|जुलाई?|अगस्त?|सितम्बर|सितंबर|सित?\.?|अक्टूबर|अक्टू\.?|नवम्बर|नवंबर?|दिसम्बर|दिसंबर?)/i, - - monthsShortStrictRegex: - /^(जन\.?|फ़र\.?|मार्च?|अप्रै\.?|मई?|जून?|जुल\.?|अग\.?|सित\.?|अक्टू\.?|नव\.?|दिस\.?)/i, - - calendar: { - sameDay: '[आज] LT', - nextDay: '[कल] LT', - nextWeek: 'dddd, LT', - lastDay: '[कल] LT', - lastWeek: '[पिछले] dddd, LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s में', - past: '%s पहले', - s: 'कुछ ही क्षण', - ss: '%d सेकंड', - m: 'एक मिनट', - mm: '%d मिनट', - h: 'एक घंटा', - hh: '%d घंटे', - d: 'एक दिन', - dd: '%d दिन', - M: 'एक महीने', - MM: '%d महीने', - y: 'एक वर्ष', - yy: '%d वर्ष', - }, - preparse: function (string) { - return string.replace(/[१२३४५६७८९०]/g, function (match) { - return numberMap[match]; - }); - }, - postformat: function (string) { - return string.replace(/\d/g, function (match) { - return symbolMap[match]; - }); - }, - // Hindi notation for meridiems are quite fuzzy in practice. While there exists - // a rigid notion of a 'Pahar' it is not used as rigidly in modern Hindi. - meridiemParse: /रात|सुबह|दोपहर|शाम/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === 'रात') { - return hour < 4 ? hour : hour + 12; - } else if (meridiem === 'सुबह') { - return hour; - } else if (meridiem === 'दोपहर') { - return hour >= 10 ? hour : hour + 12; - } else if (meridiem === 'शाम') { - return hour + 12; - } - }, - meridiem: function (hour, minute, isLower) { - if (hour < 4) { - return 'रात'; - } else if (hour < 10) { - return 'सुबह'; - } else if (hour < 17) { - return 'दोपहर'; - } else if (hour < 20) { - return 'शाम'; - } else { - return 'रात'; - } - }, - week: { - dow: 0, // Sunday is the first day of the week. - doy: 6, // The week that contains Jan 6th is the first week of the year. - }, - }); - - return hi; - -}))); - - -/***/ }), - -/***/ 26308: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Croatian [hr] -//! author : Bojan Marković : https://github.com/bmarkovic - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function translate(number, withoutSuffix, key) { - var result = number + ' '; - switch (key) { - case 'ss': - if (number === 1) { - result += 'sekunda'; - } else if (number === 2 || number === 3 || number === 4) { - result += 'sekunde'; - } else { - result += 'sekundi'; - } - return result; - case 'm': - return withoutSuffix ? 'jedna minuta' : 'jedne minute'; - case 'mm': - if (number === 1) { - result += 'minuta'; - } else if (number === 2 || number === 3 || number === 4) { - result += 'minute'; - } else { - result += 'minuta'; - } - return result; - case 'h': - return withoutSuffix ? 'jedan sat' : 'jednog sata'; - case 'hh': - if (number === 1) { - result += 'sat'; - } else if (number === 2 || number === 3 || number === 4) { - result += 'sata'; - } else { - result += 'sati'; - } - return result; - case 'dd': - if (number === 1) { - result += 'dan'; - } else { - result += 'dana'; - } - return result; - case 'MM': - if (number === 1) { - result += 'mjesec'; - } else if (number === 2 || number === 3 || number === 4) { - result += 'mjeseca'; - } else { - result += 'mjeseci'; - } - return result; - case 'yy': - if (number === 1) { - result += 'godina'; - } else if (number === 2 || number === 3 || number === 4) { - result += 'godine'; - } else { - result += 'godina'; - } - return result; - } - } - - var hr = moment.defineLocale('hr', { - months: { - format: 'siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca'.split( - '_' - ), - standalone: - 'siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac'.split( - '_' - ), - }, - monthsShort: - 'sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.'.split( - '_' - ), - monthsParseExact: true, - weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split( - '_' - ), - weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'), - weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'DD.MM.YYYY', - LL: 'Do MMMM YYYY', - LLL: 'Do MMMM YYYY H:mm', - LLLL: 'dddd, Do MMMM YYYY H:mm', - }, - calendar: { - sameDay: '[danas u] LT', - nextDay: '[sutra u] LT', - nextWeek: function () { - switch (this.day()) { - case 0: - return '[u] [nedjelju] [u] LT'; - case 3: - return '[u] [srijedu] [u] LT'; - case 6: - return '[u] [subotu] [u] LT'; - case 1: - case 2: - case 4: - case 5: - return '[u] dddd [u] LT'; - } - }, - lastDay: '[jučer u] LT', - lastWeek: function () { - switch (this.day()) { - case 0: - return '[prošlu] [nedjelju] [u] LT'; - case 3: - return '[prošlu] [srijedu] [u] LT'; - case 6: - return '[prošle] [subote] [u] LT'; - case 1: - case 2: - case 4: - case 5: - return '[prošli] dddd [u] LT'; - } - }, - sameElse: 'L', - }, - relativeTime: { - future: 'za %s', - past: 'prije %s', - s: 'par sekundi', - ss: translate, - m: translate, - mm: translate, - h: translate, - hh: translate, - d: 'dan', - dd: translate, - M: 'mjesec', - MM: translate, - y: 'godinu', - yy: translate, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return hr; - -}))); - - -/***/ }), - -/***/ 90609: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Hungarian [hu] -//! author : Adam Brunner : https://github.com/adambrunner -//! author : Peter Viszt : https://github.com/passatgt - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var weekEndings = - 'vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton'.split(' '); - function translate(number, withoutSuffix, key, isFuture) { - var num = number; - switch (key) { - case 's': - return isFuture || withoutSuffix - ? 'néhány másodperc' - : 'néhány másodperce'; - case 'ss': - return num + (isFuture || withoutSuffix) - ? ' másodperc' - : ' másodperce'; - case 'm': - return 'egy' + (isFuture || withoutSuffix ? ' perc' : ' perce'); - case 'mm': - return num + (isFuture || withoutSuffix ? ' perc' : ' perce'); - case 'h': - return 'egy' + (isFuture || withoutSuffix ? ' óra' : ' órája'); - case 'hh': - return num + (isFuture || withoutSuffix ? ' óra' : ' órája'); - case 'd': - return 'egy' + (isFuture || withoutSuffix ? ' nap' : ' napja'); - case 'dd': - return num + (isFuture || withoutSuffix ? ' nap' : ' napja'); - case 'M': - return 'egy' + (isFuture || withoutSuffix ? ' hónap' : ' hónapja'); - case 'MM': - return num + (isFuture || withoutSuffix ? ' hónap' : ' hónapja'); - case 'y': - return 'egy' + (isFuture || withoutSuffix ? ' év' : ' éve'); - case 'yy': - return num + (isFuture || withoutSuffix ? ' év' : ' éve'); - } - return ''; - } - function week(isFuture) { - return ( - (isFuture ? '' : '[múlt] ') + - '[' + - weekEndings[this.day()] + - '] LT[-kor]' - ); - } - - var hu = moment.defineLocale('hu', { - months: 'január_február_március_április_május_június_július_augusztus_szeptember_október_november_december'.split( - '_' - ), - monthsShort: - 'jan._feb._márc._ápr._máj._jún._júl._aug._szept._okt._nov._dec.'.split( - '_' - ), - monthsParseExact: true, - weekdays: 'vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat'.split('_'), - weekdaysShort: 'vas_hét_kedd_sze_csüt_pén_szo'.split('_'), - weekdaysMin: 'v_h_k_sze_cs_p_szo'.split('_'), - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'YYYY.MM.DD.', - LL: 'YYYY. MMMM D.', - LLL: 'YYYY. MMMM D. H:mm', - LLLL: 'YYYY. MMMM D., dddd H:mm', - }, - meridiemParse: /de|du/i, - isPM: function (input) { - return input.charAt(1).toLowerCase() === 'u'; - }, - meridiem: function (hours, minutes, isLower) { - if (hours < 12) { - return isLower === true ? 'de' : 'DE'; - } else { - return isLower === true ? 'du' : 'DU'; - } - }, - calendar: { - sameDay: '[ma] LT[-kor]', - nextDay: '[holnap] LT[-kor]', - nextWeek: function () { - return week.call(this, true); - }, - lastDay: '[tegnap] LT[-kor]', - lastWeek: function () { - return week.call(this, false); - }, - sameElse: 'L', - }, - relativeTime: { - future: '%s múlva', - past: '%s', - s: translate, - ss: translate, - m: translate, - mm: translate, - h: translate, - hh: translate, - d: translate, - dd: translate, - M: translate, - MM: translate, - y: translate, - yy: translate, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return hu; - -}))); - - -/***/ }), - -/***/ 17160: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Armenian [hy-am] -//! author : Armendarabyan : https://github.com/armendarabyan - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var hyAm = moment.defineLocale('hy-am', { - months: { - format: 'հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի'.split( - '_' - ), - standalone: - 'հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր'.split( - '_' - ), - }, - monthsShort: 'հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ'.split('_'), - weekdays: - 'կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ'.split( - '_' - ), - weekdaysShort: 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'), - weekdaysMin: 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D MMMM YYYY թ.', - LLL: 'D MMMM YYYY թ., HH:mm', - LLLL: 'dddd, D MMMM YYYY թ., HH:mm', - }, - calendar: { - sameDay: '[այսօր] LT', - nextDay: '[վաղը] LT', - lastDay: '[երեկ] LT', - nextWeek: function () { - return 'dddd [օրը ժամը] LT'; - }, - lastWeek: function () { - return '[անցած] dddd [օրը ժամը] LT'; - }, - sameElse: 'L', - }, - relativeTime: { - future: '%s հետո', - past: '%s առաջ', - s: 'մի քանի վայրկյան', - ss: '%d վայրկյան', - m: 'րոպե', - mm: '%d րոպե', - h: 'ժամ', - hh: '%d ժամ', - d: 'օր', - dd: '%d օր', - M: 'ամիս', - MM: '%d ամիս', - y: 'տարի', - yy: '%d տարի', - }, - meridiemParse: /գիշերվա|առավոտվա|ցերեկվա|երեկոյան/, - isPM: function (input) { - return /^(ցերեկվա|երեկոյան)$/.test(input); - }, - meridiem: function (hour) { - if (hour < 4) { - return 'գիշերվա'; - } else if (hour < 12) { - return 'առավոտվա'; - } else if (hour < 17) { - return 'ցերեկվա'; - } else { - return 'երեկոյան'; - } - }, - dayOfMonthOrdinalParse: /\d{1,2}|\d{1,2}-(ին|րդ)/, - ordinal: function (number, period) { - switch (period) { - case 'DDD': - case 'w': - case 'W': - case 'DDDo': - if (number === 1) { - return number + '-ին'; - } - return number + '-րդ'; - default: - return number; - } - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return hyAm; - -}))); - - -/***/ }), - -/***/ 74063: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Indonesian [id] -//! author : Mohammad Satrio Utomo : https://github.com/tyok -//! reference: http://id.wikisource.org/wiki/Pedoman_Umum_Ejaan_Bahasa_Indonesia_yang_Disempurnakan - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var id = moment.defineLocale('id', { - months: 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember'.split( - '_' - ), - monthsShort: 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des'.split('_'), - weekdays: 'Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu'.split('_'), - weekdaysShort: 'Min_Sen_Sel_Rab_Kam_Jum_Sab'.split('_'), - weekdaysMin: 'Mg_Sn_Sl_Rb_Km_Jm_Sb'.split('_'), - longDateFormat: { - LT: 'HH.mm', - LTS: 'HH.mm.ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY [pukul] HH.mm', - LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm', - }, - meridiemParse: /pagi|siang|sore|malam/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === 'pagi') { - return hour; - } else if (meridiem === 'siang') { - return hour >= 11 ? hour : hour + 12; - } else if (meridiem === 'sore' || meridiem === 'malam') { - return hour + 12; - } - }, - meridiem: function (hours, minutes, isLower) { - if (hours < 11) { - return 'pagi'; - } else if (hours < 15) { - return 'siang'; - } else if (hours < 19) { - return 'sore'; - } else { - return 'malam'; - } - }, - calendar: { - sameDay: '[Hari ini pukul] LT', - nextDay: '[Besok pukul] LT', - nextWeek: 'dddd [pukul] LT', - lastDay: '[Kemarin pukul] LT', - lastWeek: 'dddd [lalu pukul] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'dalam %s', - past: '%s yang lalu', - s: 'beberapa detik', - ss: '%d detik', - m: 'semenit', - mm: '%d menit', - h: 'sejam', - hh: '%d jam', - d: 'sehari', - dd: '%d hari', - M: 'sebulan', - MM: '%d bulan', - y: 'setahun', - yy: '%d tahun', - }, - week: { - dow: 0, // Sunday is the first day of the week. - doy: 6, // The week that contains Jan 6th is the first week of the year. - }, - }); - - return id; - -}))); - - -/***/ }), - -/***/ 89374: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Icelandic [is] -//! author : Hinrik Örn Sigurðsson : https://github.com/hinrik - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function plural(n) { - if (n % 100 === 11) { - return true; - } else if (n % 10 === 1) { - return false; - } - return true; - } - function translate(number, withoutSuffix, key, isFuture) { - var result = number + ' '; - switch (key) { - case 's': - return withoutSuffix || isFuture - ? 'nokkrar sekúndur' - : 'nokkrum sekúndum'; - case 'ss': - if (plural(number)) { - return ( - result + - (withoutSuffix || isFuture ? 'sekúndur' : 'sekúndum') - ); - } - return result + 'sekúnda'; - case 'm': - return withoutSuffix ? 'mínúta' : 'mínútu'; - case 'mm': - if (plural(number)) { - return ( - result + (withoutSuffix || isFuture ? 'mínútur' : 'mínútum') - ); - } else if (withoutSuffix) { - return result + 'mínúta'; - } - return result + 'mínútu'; - case 'hh': - if (plural(number)) { - return ( - result + - (withoutSuffix || isFuture - ? 'klukkustundir' - : 'klukkustundum') - ); - } - return result + 'klukkustund'; - case 'd': - if (withoutSuffix) { - return 'dagur'; - } - return isFuture ? 'dag' : 'degi'; - case 'dd': - if (plural(number)) { - if (withoutSuffix) { - return result + 'dagar'; - } - return result + (isFuture ? 'daga' : 'dögum'); - } else if (withoutSuffix) { - return result + 'dagur'; - } - return result + (isFuture ? 'dag' : 'degi'); - case 'M': - if (withoutSuffix) { - return 'mánuður'; - } - return isFuture ? 'mánuð' : 'mánuði'; - case 'MM': - if (plural(number)) { - if (withoutSuffix) { - return result + 'mánuðir'; - } - return result + (isFuture ? 'mánuði' : 'mánuðum'); - } else if (withoutSuffix) { - return result + 'mánuður'; - } - return result + (isFuture ? 'mánuð' : 'mánuði'); - case 'y': - return withoutSuffix || isFuture ? 'ár' : 'ári'; - case 'yy': - if (plural(number)) { - return result + (withoutSuffix || isFuture ? 'ár' : 'árum'); - } - return result + (withoutSuffix || isFuture ? 'ár' : 'ári'); - } - } - - var is = moment.defineLocale('is', { - months: 'janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember'.split( - '_' - ), - monthsShort: 'jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des'.split('_'), - weekdays: - 'sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur'.split( - '_' - ), - weekdaysShort: 'sun_mán_þri_mið_fim_fös_lau'.split('_'), - weekdaysMin: 'Su_Má_Þr_Mi_Fi_Fö_La'.split('_'), - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D. MMMM YYYY', - LLL: 'D. MMMM YYYY [kl.] H:mm', - LLLL: 'dddd, D. MMMM YYYY [kl.] H:mm', - }, - calendar: { - sameDay: '[í dag kl.] LT', - nextDay: '[á morgun kl.] LT', - nextWeek: 'dddd [kl.] LT', - lastDay: '[í gær kl.] LT', - lastWeek: '[síðasta] dddd [kl.] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'eftir %s', - past: 'fyrir %s síðan', - s: translate, - ss: translate, - m: translate, - mm: translate, - h: 'klukkustund', - hh: translate, - d: translate, - dd: translate, - M: translate, - MM: translate, - y: translate, - yy: translate, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return is; - -}))); - - -/***/ }), - -/***/ 21827: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Italian (Switzerland) [it-ch] -//! author : xfh : https://github.com/xfh - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var itCh = moment.defineLocale('it-ch', { - months: 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split( - '_' - ), - monthsShort: 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'), - weekdays: 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split( - '_' - ), - weekdaysShort: 'dom_lun_mar_mer_gio_ven_sab'.split('_'), - weekdaysMin: 'do_lu_ma_me_gi_ve_sa'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Oggi alle] LT', - nextDay: '[Domani alle] LT', - nextWeek: 'dddd [alle] LT', - lastDay: '[Ieri alle] LT', - lastWeek: function () { - switch (this.day()) { - case 0: - return '[la scorsa] dddd [alle] LT'; - default: - return '[lo scorso] dddd [alle] LT'; - } - }, - sameElse: 'L', - }, - relativeTime: { - future: function (s) { - return (/^[0-9].+$/.test(s) ? 'tra' : 'in') + ' ' + s; - }, - past: '%s fa', - s: 'alcuni secondi', - ss: '%d secondi', - m: 'un minuto', - mm: '%d minuti', - h: "un'ora", - hh: '%d ore', - d: 'un giorno', - dd: '%d giorni', - M: 'un mese', - MM: '%d mesi', - y: 'un anno', - yy: '%d anni', - }, - dayOfMonthOrdinalParse: /\d{1,2}º/, - ordinal: '%dº', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return itCh; - -}))); - - -/***/ }), - -/***/ 88383: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Italian [it] -//! author : Lorenzo : https://github.com/aliem -//! author: Mattia Larentis: https://github.com/nostalgiaz -//! author: Marco : https://github.com/Manfre98 - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var it = moment.defineLocale('it', { - months: 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split( - '_' - ), - monthsShort: 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'), - weekdays: 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split( - '_' - ), - weekdaysShort: 'dom_lun_mar_mer_gio_ven_sab'.split('_'), - weekdaysMin: 'do_lu_ma_me_gi_ve_sa'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: function () { - return ( - '[Oggi a' + - (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : "ll'") + - ']LT' - ); - }, - nextDay: function () { - return ( - '[Domani a' + - (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : "ll'") + - ']LT' - ); - }, - nextWeek: function () { - return ( - 'dddd [a' + - (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : "ll'") + - ']LT' - ); - }, - lastDay: function () { - return ( - '[Ieri a' + - (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : "ll'") + - ']LT' - ); - }, - lastWeek: function () { - switch (this.day()) { - case 0: - return ( - '[La scorsa] dddd [a' + - (this.hours() > 1 - ? 'lle ' - : this.hours() === 0 - ? ' ' - : "ll'") + - ']LT' - ); - default: - return ( - '[Lo scorso] dddd [a' + - (this.hours() > 1 - ? 'lle ' - : this.hours() === 0 - ? ' ' - : "ll'") + - ']LT' - ); - } - }, - sameElse: 'L', - }, - relativeTime: { - future: 'tra %s', - past: '%s fa', - s: 'alcuni secondi', - ss: '%d secondi', - m: 'un minuto', - mm: '%d minuti', - h: "un'ora", - hh: '%d ore', - d: 'un giorno', - dd: '%d giorni', - w: 'una settimana', - ww: '%d settimane', - M: 'un mese', - MM: '%d mesi', - y: 'un anno', - yy: '%d anni', - }, - dayOfMonthOrdinalParse: /\d{1,2}º/, - ordinal: '%dº', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return it; - -}))); - - -/***/ }), - -/***/ 23827: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Japanese [ja] -//! author : LI Long : https://github.com/baryon - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var ja = moment.defineLocale('ja', { - eras: [ - { - since: '2019-05-01', - offset: 1, - name: '令和', - narrow: '㋿', - abbr: 'R', - }, - { - since: '1989-01-08', - until: '2019-04-30', - offset: 1, - name: '平成', - narrow: '㍻', - abbr: 'H', - }, - { - since: '1926-12-25', - until: '1989-01-07', - offset: 1, - name: '昭和', - narrow: '㍼', - abbr: 'S', - }, - { - since: '1912-07-30', - until: '1926-12-24', - offset: 1, - name: '大正', - narrow: '㍽', - abbr: 'T', - }, - { - since: '1873-01-01', - until: '1912-07-29', - offset: 6, - name: '明治', - narrow: '㍾', - abbr: 'M', - }, - { - since: '0001-01-01', - until: '1873-12-31', - offset: 1, - name: '西暦', - narrow: 'AD', - abbr: 'AD', - }, - { - since: '0000-12-31', - until: -Infinity, - offset: 1, - name: '紀元前', - narrow: 'BC', - abbr: 'BC', - }, - ], - eraYearOrdinalRegex: /(元|\d+)年/, - eraYearOrdinalParse: function (input, match) { - return match[1] === '元' ? 1 : parseInt(match[1] || input, 10); - }, - months: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'), - monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split( - '_' - ), - weekdays: '日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日'.split('_'), - weekdaysShort: '日_月_火_水_木_金_土'.split('_'), - weekdaysMin: '日_月_火_水_木_金_土'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'YYYY/MM/DD', - LL: 'YYYY年M月D日', - LLL: 'YYYY年M月D日 HH:mm', - LLLL: 'YYYY年M月D日 dddd HH:mm', - l: 'YYYY/MM/DD', - ll: 'YYYY年M月D日', - lll: 'YYYY年M月D日 HH:mm', - llll: 'YYYY年M月D日(ddd) HH:mm', - }, - meridiemParse: /午前|午後/i, - isPM: function (input) { - return input === '午後'; - }, - meridiem: function (hour, minute, isLower) { - if (hour < 12) { - return '午前'; - } else { - return '午後'; - } - }, - calendar: { - sameDay: '[今日] LT', - nextDay: '[明日] LT', - nextWeek: function (now) { - if (now.week() !== this.week()) { - return '[来週]dddd LT'; - } else { - return 'dddd LT'; - } - }, - lastDay: '[昨日] LT', - lastWeek: function (now) { - if (this.week() !== now.week()) { - return '[先週]dddd LT'; - } else { - return 'dddd LT'; - } - }, - sameElse: 'L', - }, - dayOfMonthOrdinalParse: /\d{1,2}日/, - ordinal: function (number, period) { - switch (period) { - case 'y': - return number === 1 ? '元年' : number + '年'; - case 'd': - case 'D': - case 'DDD': - return number + '日'; - default: - return number; - } - }, - relativeTime: { - future: '%s後', - past: '%s前', - s: '数秒', - ss: '%d秒', - m: '1分', - mm: '%d分', - h: '1時間', - hh: '%d時間', - d: '1日', - dd: '%d日', - M: '1ヶ月', - MM: '%dヶ月', - y: '1年', - yy: '%d年', - }, - }); - - return ja; - -}))); - - -/***/ }), - -/***/ 89722: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Javanese [jv] -//! author : Rony Lantip : https://github.com/lantip -//! reference: http://jv.wikipedia.org/wiki/Basa_Jawa - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var jv = moment.defineLocale('jv', { - months: 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember'.split( - '_' - ), - monthsShort: 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des'.split('_'), - weekdays: 'Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu'.split('_'), - weekdaysShort: 'Min_Sen_Sel_Reb_Kem_Jem_Sep'.split('_'), - weekdaysMin: 'Mg_Sn_Sl_Rb_Km_Jm_Sp'.split('_'), - longDateFormat: { - LT: 'HH.mm', - LTS: 'HH.mm.ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY [pukul] HH.mm', - LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm', - }, - meridiemParse: /enjing|siyang|sonten|ndalu/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === 'enjing') { - return hour; - } else if (meridiem === 'siyang') { - return hour >= 11 ? hour : hour + 12; - } else if (meridiem === 'sonten' || meridiem === 'ndalu') { - return hour + 12; - } - }, - meridiem: function (hours, minutes, isLower) { - if (hours < 11) { - return 'enjing'; - } else if (hours < 15) { - return 'siyang'; - } else if (hours < 19) { - return 'sonten'; - } else { - return 'ndalu'; - } - }, - calendar: { - sameDay: '[Dinten puniko pukul] LT', - nextDay: '[Mbenjang pukul] LT', - nextWeek: 'dddd [pukul] LT', - lastDay: '[Kala wingi pukul] LT', - lastWeek: 'dddd [kepengker pukul] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'wonten ing %s', - past: '%s ingkang kepengker', - s: 'sawetawis detik', - ss: '%d detik', - m: 'setunggal menit', - mm: '%d menit', - h: 'setunggal jam', - hh: '%d jam', - d: 'sedinten', - dd: '%d dinten', - M: 'sewulan', - MM: '%d wulan', - y: 'setaun', - yy: '%d taun', - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return jv; - -}))); - - -/***/ }), - -/***/ 41794: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Georgian [ka] -//! author : Irakli Janiashvili : https://github.com/IrakliJani - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var ka = moment.defineLocale('ka', { - months: 'იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი'.split( - '_' - ), - monthsShort: 'იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ'.split('_'), - weekdays: { - standalone: - 'კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი'.split( - '_' - ), - format: 'კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს'.split( - '_' - ), - isFormat: /(წინა|შემდეგ)/, - }, - weekdaysShort: 'კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ'.split('_'), - weekdaysMin: 'კვ_ორ_სა_ოთ_ხუ_პა_შა'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[დღეს] LT[-ზე]', - nextDay: '[ხვალ] LT[-ზე]', - lastDay: '[გუშინ] LT[-ზე]', - nextWeek: '[შემდეგ] dddd LT[-ზე]', - lastWeek: '[წინა] dddd LT-ზე', - sameElse: 'L', - }, - relativeTime: { - future: function (s) { - return s.replace( - /(წამ|წუთ|საათ|წელ|დღ|თვ)(ი|ე)/, - function ($0, $1, $2) { - return $2 === 'ი' ? $1 + 'ში' : $1 + $2 + 'ში'; - } - ); - }, - past: function (s) { - if (/(წამი|წუთი|საათი|დღე|თვე)/.test(s)) { - return s.replace(/(ი|ე)$/, 'ის წინ'); - } - if (/წელი/.test(s)) { - return s.replace(/წელი$/, 'წლის წინ'); - } - return s; - }, - s: 'რამდენიმე წამი', - ss: '%d წამი', - m: 'წუთი', - mm: '%d წუთი', - h: 'საათი', - hh: '%d საათი', - d: 'დღე', - dd: '%d დღე', - M: 'თვე', - MM: '%d თვე', - y: 'წელი', - yy: '%d წელი', - }, - dayOfMonthOrdinalParse: /0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/, - ordinal: function (number) { - if (number === 0) { - return number; - } - if (number === 1) { - return number + '-ლი'; - } - if ( - number < 20 || - (number <= 100 && number % 20 === 0) || - number % 100 === 0 - ) { - return 'მე-' + number; - } - return number + '-ე'; - }, - week: { - dow: 1, - doy: 7, - }, - }); - - return ka; - -}))); - - -/***/ }), - -/***/ 27088: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Kazakh [kk] -//! authors : Nurlan Rakhimzhanov : https://github.com/nurlan - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var suffixes = { - 0: '-ші', - 1: '-ші', - 2: '-ші', - 3: '-ші', - 4: '-ші', - 5: '-ші', - 6: '-шы', - 7: '-ші', - 8: '-ші', - 9: '-шы', - 10: '-шы', - 20: '-шы', - 30: '-шы', - 40: '-шы', - 50: '-ші', - 60: '-шы', - 70: '-ші', - 80: '-ші', - 90: '-шы', - 100: '-ші', - }; - - var kk = moment.defineLocale('kk', { - months: 'қаңтар_ақпан_наурыз_сәуір_мамыр_маусым_шілде_тамыз_қыркүйек_қазан_қараша_желтоқсан'.split( - '_' - ), - monthsShort: 'қаң_ақп_нау_сәу_мам_мау_шіл_там_қыр_қаз_қар_жел'.split('_'), - weekdays: 'жексенбі_дүйсенбі_сейсенбі_сәрсенбі_бейсенбі_жұма_сенбі'.split( - '_' - ), - weekdaysShort: 'жек_дүй_сей_сәр_бей_жұм_сен'.split('_'), - weekdaysMin: 'жк_дй_сй_ср_бй_жм_сн'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Бүгін сағат] LT', - nextDay: '[Ертең сағат] LT', - nextWeek: 'dddd [сағат] LT', - lastDay: '[Кеше сағат] LT', - lastWeek: '[Өткен аптаның] dddd [сағат] LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s ішінде', - past: '%s бұрын', - s: 'бірнеше секунд', - ss: '%d секунд', - m: 'бір минут', - mm: '%d минут', - h: 'бір сағат', - hh: '%d сағат', - d: 'бір күн', - dd: '%d күн', - M: 'бір ай', - MM: '%d ай', - y: 'бір жыл', - yy: '%d жыл', - }, - dayOfMonthOrdinalParse: /\d{1,2}-(ші|шы)/, - ordinal: function (number) { - var a = number % 10, - b = number >= 100 ? 100 : null; - return number + (suffixes[number] || suffixes[a] || suffixes[b]); - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return kk; - -}))); - - -/***/ }), - -/***/ 96870: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Cambodian [km] -//! author : Kruy Vanna : https://github.com/kruyvanna - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var symbolMap = { - 1: '១', - 2: '២', - 3: '៣', - 4: '៤', - 5: '៥', - 6: '៦', - 7: '៧', - 8: '៨', - 9: '៩', - 0: '០', - }, - numberMap = { - '១': '1', - '២': '2', - '៣': '3', - '៤': '4', - '៥': '5', - '៦': '6', - '៧': '7', - '៨': '8', - '៩': '9', - '០': '0', - }; - - var km = moment.defineLocale('km', { - months: 'មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split( - '_' - ), - monthsShort: - 'មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split( - '_' - ), - weekdays: 'អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍'.split('_'), - weekdaysShort: 'អា_ច_អ_ព_ព្រ_សុ_ស'.split('_'), - weekdaysMin: 'អា_ច_អ_ព_ព្រ_សុ_ស'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - meridiemParse: /ព្រឹក|ល្ងាច/, - isPM: function (input) { - return input === 'ល្ងាច'; - }, - meridiem: function (hour, minute, isLower) { - if (hour < 12) { - return 'ព្រឹក'; - } else { - return 'ល្ងាច'; - } - }, - calendar: { - sameDay: '[ថ្ងៃនេះ ម៉ោង] LT', - nextDay: '[ស្អែក ម៉ោង] LT', - nextWeek: 'dddd [ម៉ោង] LT', - lastDay: '[ម្សិលមិញ ម៉ោង] LT', - lastWeek: 'dddd [សប្តាហ៍មុន] [ម៉ោង] LT', - sameElse: 'L', - }, - relativeTime: { - future: '%sទៀត', - past: '%sមុន', - s: 'ប៉ុន្មានវិនាទី', - ss: '%d វិនាទី', - m: 'មួយនាទី', - mm: '%d នាទី', - h: 'មួយម៉ោង', - hh: '%d ម៉ោង', - d: 'មួយថ្ងៃ', - dd: '%d ថ្ងៃ', - M: 'មួយខែ', - MM: '%d ខែ', - y: 'មួយឆ្នាំ', - yy: '%d ឆ្នាំ', - }, - dayOfMonthOrdinalParse: /ទី\d{1,2}/, - ordinal: 'ទី%d', - preparse: function (string) { - return string.replace(/[១២៣៤៥៦៧៨៩០]/g, function (match) { - return numberMap[match]; - }); - }, - postformat: function (string) { - return string.replace(/\d/g, function (match) { - return symbolMap[match]; - }); - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return km; - -}))); - - -/***/ }), - -/***/ 84451: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Kannada [kn] -//! author : Rajeev Naik : https://github.com/rajeevnaikte - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var symbolMap = { - 1: '೧', - 2: '೨', - 3: '೩', - 4: '೪', - 5: '೫', - 6: '೬', - 7: '೭', - 8: '೮', - 9: '೯', - 0: '೦', - }, - numberMap = { - '೧': '1', - '೨': '2', - '೩': '3', - '೪': '4', - '೫': '5', - '೬': '6', - '೭': '7', - '೮': '8', - '೯': '9', - '೦': '0', - }; - - var kn = moment.defineLocale('kn', { - months: 'ಜನವರಿ_ಫೆಬ್ರವರಿ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂಬರ್_ಅಕ್ಟೋಬರ್_ನವೆಂಬರ್_ಡಿಸೆಂಬರ್'.split( - '_' - ), - monthsShort: - 'ಜನ_ಫೆಬ್ರ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂ_ಅಕ್ಟೋ_ನವೆಂ_ಡಿಸೆಂ'.split( - '_' - ), - monthsParseExact: true, - weekdays: 'ಭಾನುವಾರ_ಸೋಮವಾರ_ಮಂಗಳವಾರ_ಬುಧವಾರ_ಗುರುವಾರ_ಶುಕ್ರವಾರ_ಶನಿವಾರ'.split( - '_' - ), - weekdaysShort: 'ಭಾನು_ಸೋಮ_ಮಂಗಳ_ಬುಧ_ಗುರು_ಶುಕ್ರ_ಶನಿ'.split('_'), - weekdaysMin: 'ಭಾ_ಸೋ_ಮಂ_ಬು_ಗು_ಶು_ಶ'.split('_'), - longDateFormat: { - LT: 'A h:mm', - LTS: 'A h:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY, A h:mm', - LLLL: 'dddd, D MMMM YYYY, A h:mm', - }, - calendar: { - sameDay: '[ಇಂದು] LT', - nextDay: '[ನಾಳೆ] LT', - nextWeek: 'dddd, LT', - lastDay: '[ನಿನ್ನೆ] LT', - lastWeek: '[ಕೊನೆಯ] dddd, LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s ನಂತರ', - past: '%s ಹಿಂದೆ', - s: 'ಕೆಲವು ಕ್ಷಣಗಳು', - ss: '%d ಸೆಕೆಂಡುಗಳು', - m: 'ಒಂದು ನಿಮಿಷ', - mm: '%d ನಿಮಿಷ', - h: 'ಒಂದು ಗಂಟೆ', - hh: '%d ಗಂಟೆ', - d: 'ಒಂದು ದಿನ', - dd: '%d ದಿನ', - M: 'ಒಂದು ತಿಂಗಳು', - MM: '%d ತಿಂಗಳು', - y: 'ಒಂದು ವರ್ಷ', - yy: '%d ವರ್ಷ', - }, - preparse: function (string) { - return string.replace(/[೧೨೩೪೫೬೭೮೯೦]/g, function (match) { - return numberMap[match]; - }); - }, - postformat: function (string) { - return string.replace(/\d/g, function (match) { - return symbolMap[match]; - }); - }, - meridiemParse: /ರಾತ್ರಿ|ಬೆಳಿಗ್ಗೆ|ಮಧ್ಯಾಹ್ನ|ಸಂಜೆ/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === 'ರಾತ್ರಿ') { - return hour < 4 ? hour : hour + 12; - } else if (meridiem === 'ಬೆಳಿಗ್ಗೆ') { - return hour; - } else if (meridiem === 'ಮಧ್ಯಾಹ್ನ') { - return hour >= 10 ? hour : hour + 12; - } else if (meridiem === 'ಸಂಜೆ') { - return hour + 12; - } - }, - meridiem: function (hour, minute, isLower) { - if (hour < 4) { - return 'ರಾತ್ರಿ'; - } else if (hour < 10) { - return 'ಬೆಳಿಗ್ಗೆ'; - } else if (hour < 17) { - return 'ಮಧ್ಯಾಹ್ನ'; - } else if (hour < 20) { - return 'ಸಂಜೆ'; - } else { - return 'ರಾತ್ರಿ'; - } - }, - dayOfMonthOrdinalParse: /\d{1,2}(ನೇ)/, - ordinal: function (number) { - return number + 'ನೇ'; - }, - week: { - dow: 0, // Sunday is the first day of the week. - doy: 6, // The week that contains Jan 6th is the first week of the year. - }, - }); - - return kn; - -}))); - - -/***/ }), - -/***/ 63164: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Korean [ko] -//! author : Kyungwook, Park : https://github.com/kyungw00k -//! author : Jeeeyul Lee - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var ko = moment.defineLocale('ko', { - months: '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split('_'), - monthsShort: '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split( - '_' - ), - weekdays: '일요일_월요일_화요일_수요일_목요일_금요일_토요일'.split('_'), - weekdaysShort: '일_월_화_수_목_금_토'.split('_'), - weekdaysMin: '일_월_화_수_목_금_토'.split('_'), - longDateFormat: { - LT: 'A h:mm', - LTS: 'A h:mm:ss', - L: 'YYYY.MM.DD.', - LL: 'YYYY년 MMMM D일', - LLL: 'YYYY년 MMMM D일 A h:mm', - LLLL: 'YYYY년 MMMM D일 dddd A h:mm', - l: 'YYYY.MM.DD.', - ll: 'YYYY년 MMMM D일', - lll: 'YYYY년 MMMM D일 A h:mm', - llll: 'YYYY년 MMMM D일 dddd A h:mm', - }, - calendar: { - sameDay: '오늘 LT', - nextDay: '내일 LT', - nextWeek: 'dddd LT', - lastDay: '어제 LT', - lastWeek: '지난주 dddd LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s 후', - past: '%s 전', - s: '몇 초', - ss: '%d초', - m: '1분', - mm: '%d분', - h: '한 시간', - hh: '%d시간', - d: '하루', - dd: '%d일', - M: '한 달', - MM: '%d달', - y: '일 년', - yy: '%d년', - }, - dayOfMonthOrdinalParse: /\d{1,2}(일|월|주)/, - ordinal: function (number, period) { - switch (period) { - case 'd': - case 'D': - case 'DDD': - return number + '일'; - case 'M': - return number + '월'; - case 'w': - case 'W': - return number + '주'; - default: - return number; - } - }, - meridiemParse: /오전|오후/, - isPM: function (token) { - return token === '오후'; - }, - meridiem: function (hour, minute, isUpper) { - return hour < 12 ? '오전' : '오후'; - }, - }); - - return ko; - -}))); - - -/***/ }), - -/***/ 6181: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Northern Kurdish [ku-kmr] -//! authors : Mazlum Özdogan : https://github.com/mergehez - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function processRelativeTime(num, withoutSuffix, key, isFuture) { - var format = { - s: ['çend sanîye', 'çend sanîyeyan'], - ss: [num + ' sanîye', num + ' sanîyeyan'], - m: ['deqîqeyek', 'deqîqeyekê'], - mm: [num + ' deqîqe', num + ' deqîqeyan'], - h: ['saetek', 'saetekê'], - hh: [num + ' saet', num + ' saetan'], - d: ['rojek', 'rojekê'], - dd: [num + ' roj', num + ' rojan'], - w: ['hefteyek', 'hefteyekê'], - ww: [num + ' hefte', num + ' hefteyan'], - M: ['mehek', 'mehekê'], - MM: [num + ' meh', num + ' mehan'], - y: ['salek', 'salekê'], - yy: [num + ' sal', num + ' salan'], - }; - return withoutSuffix ? format[key][0] : format[key][1]; - } - // function obliqueNumSuffix(num) { - // if(num.includes(':')) - // num = parseInt(num.split(':')[0]); - // else - // num = parseInt(num); - // return num == 0 || num % 10 == 1 ? 'ê' - // : (num > 10 && num % 10 == 0 ? 'î' : 'an'); - // } - function ezafeNumSuffix(num) { - num = '' + num; - var l = num.substring(num.length - 1), - ll = num.length > 1 ? num.substring(num.length - 2) : ''; - if ( - !(ll == 12 || ll == 13) && - (l == '2' || l == '3' || ll == '50' || l == '70' || l == '80') - ) - return 'yê'; - return 'ê'; - } - - var kuKmr = moment.defineLocale('ku-kmr', { - // According to the spelling rules defined by the work group of Weqfa Mezopotamyayê (Mesopotamia Foundation) - // this should be: 'Kanûna Paşîn_Sibat_Adar_Nîsan_Gulan_Hezîran_Tîrmeh_Tebax_Îlon_Çirîya Pêşîn_Çirîya Paşîn_Kanûna Pêşîn' - // But the names below are more well known and handy - months: 'Rêbendan_Sibat_Adar_Nîsan_Gulan_Hezîran_Tîrmeh_Tebax_Îlon_Cotmeh_Mijdar_Berfanbar'.split( - '_' - ), - monthsShort: 'Rêb_Sib_Ada_Nîs_Gul_Hez_Tîr_Teb_Îlo_Cot_Mij_Ber'.split('_'), - monthsParseExact: true, - weekdays: 'Yekşem_Duşem_Sêşem_Çarşem_Pêncşem_În_Şemî'.split('_'), - weekdaysShort: 'Yek_Du_Sê_Çar_Pên_În_Şem'.split('_'), - weekdaysMin: 'Ye_Du_Sê_Ça_Pê_În_Şe'.split('_'), - meridiem: function (hours, minutes, isLower) { - if (hours < 12) { - return isLower ? 'bn' : 'BN'; - } else { - return isLower ? 'pn' : 'PN'; - } - }, - meridiemParse: /bn|BN|pn|PN/, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'Do MMMM[a] YYYY[an]', - LLL: 'Do MMMM[a] YYYY[an] HH:mm', - LLLL: 'dddd, Do MMMM[a] YYYY[an] HH:mm', - ll: 'Do MMM[.] YYYY[an]', - lll: 'Do MMM[.] YYYY[an] HH:mm', - llll: 'ddd[.], Do MMM[.] YYYY[an] HH:mm', - }, - calendar: { - sameDay: '[Îro di saet] LT [de]', - nextDay: '[Sibê di saet] LT [de]', - nextWeek: 'dddd [di saet] LT [de]', - lastDay: '[Duh di saet] LT [de]', - lastWeek: 'dddd[a borî di saet] LT [de]', - sameElse: 'L', - }, - relativeTime: { - future: 'di %s de', - past: 'berî %s', - s: processRelativeTime, - ss: processRelativeTime, - m: processRelativeTime, - mm: processRelativeTime, - h: processRelativeTime, - hh: processRelativeTime, - d: processRelativeTime, - dd: processRelativeTime, - w: processRelativeTime, - ww: processRelativeTime, - M: processRelativeTime, - MM: processRelativeTime, - y: processRelativeTime, - yy: processRelativeTime, - }, - dayOfMonthOrdinalParse: /\d{1,2}(?:yê|ê|\.)/, - ordinal: function (num, period) { - var p = period.toLowerCase(); - if (p.includes('w') || p.includes('m')) return num + '.'; - - return num + ezafeNumSuffix(num); - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return kuKmr; - -}))); - - -/***/ }), - -/***/ 98174: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Kurdish [ku] -//! author : Shahram Mebashar : https://github.com/ShahramMebashar - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var symbolMap = { - 1: '١', - 2: '٢', - 3: '٣', - 4: '٤', - 5: '٥', - 6: '٦', - 7: '٧', - 8: '٨', - 9: '٩', - 0: '٠', - }, - numberMap = { - '١': '1', - '٢': '2', - '٣': '3', - '٤': '4', - '٥': '5', - '٦': '6', - '٧': '7', - '٨': '8', - '٩': '9', - '٠': '0', - }, - months = [ - 'کانونی دووەم', - 'شوبات', - 'ئازار', - 'نیسان', - 'ئایار', - 'حوزەیران', - 'تەمموز', - 'ئاب', - 'ئەیلوول', - 'تشرینی یەكەم', - 'تشرینی دووەم', - 'كانونی یەکەم', - ]; - - var ku = moment.defineLocale('ku', { - months: months, - monthsShort: months, - weekdays: - 'یه‌كشه‌ممه‌_دووشه‌ممه‌_سێشه‌ممه‌_چوارشه‌ممه‌_پێنجشه‌ممه‌_هه‌ینی_شه‌ممه‌'.split( - '_' - ), - weekdaysShort: - 'یه‌كشه‌م_دووشه‌م_سێشه‌م_چوارشه‌م_پێنجشه‌م_هه‌ینی_شه‌ممه‌'.split('_'), - weekdaysMin: 'ی_د_س_چ_پ_ه_ش'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - meridiemParse: /ئێواره‌|به‌یانی/, - isPM: function (input) { - return /ئێواره‌/.test(input); - }, - meridiem: function (hour, minute, isLower) { - if (hour < 12) { - return 'به‌یانی'; - } else { - return 'ئێواره‌'; - } - }, - calendar: { - sameDay: '[ئه‌مرۆ كاتژمێر] LT', - nextDay: '[به‌یانی كاتژمێر] LT', - nextWeek: 'dddd [كاتژمێر] LT', - lastDay: '[دوێنێ كاتژمێر] LT', - lastWeek: 'dddd [كاتژمێر] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'له‌ %s', - past: '%s', - s: 'چه‌ند چركه‌یه‌ك', - ss: 'چركه‌ %d', - m: 'یه‌ك خوله‌ك', - mm: '%d خوله‌ك', - h: 'یه‌ك كاتژمێر', - hh: '%d كاتژمێر', - d: 'یه‌ك ڕۆژ', - dd: '%d ڕۆژ', - M: 'یه‌ك مانگ', - MM: '%d مانگ', - y: 'یه‌ك ساڵ', - yy: '%d ساڵ', - }, - preparse: function (string) { - return string - .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) { - return numberMap[match]; - }) - .replace(/،/g, ','); - }, - postformat: function (string) { - return string - .replace(/\d/g, function (match) { - return symbolMap[match]; - }) - .replace(/,/g, '،'); - }, - week: { - dow: 6, // Saturday is the first day of the week. - doy: 12, // The week that contains Jan 12th is the first week of the year. - }, - }); - - return ku; - -}))); - - -/***/ }), - -/***/ 78474: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Kyrgyz [ky] -//! author : Chyngyz Arystan uulu : https://github.com/chyngyz - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var suffixes = { - 0: '-чү', - 1: '-чи', - 2: '-чи', - 3: '-чү', - 4: '-чү', - 5: '-чи', - 6: '-чы', - 7: '-чи', - 8: '-чи', - 9: '-чу', - 10: '-чу', - 20: '-чы', - 30: '-чу', - 40: '-чы', - 50: '-чү', - 60: '-чы', - 70: '-чи', - 80: '-чи', - 90: '-чу', - 100: '-чү', - }; - - var ky = moment.defineLocale('ky', { - months: 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split( - '_' - ), - monthsShort: 'янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split( - '_' - ), - weekdays: 'Жекшемби_Дүйшөмбү_Шейшемби_Шаршемби_Бейшемби_Жума_Ишемби'.split( - '_' - ), - weekdaysShort: 'Жек_Дүй_Шей_Шар_Бей_Жум_Ише'.split('_'), - weekdaysMin: 'Жк_Дй_Шй_Шр_Бй_Жм_Иш'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Бүгүн саат] LT', - nextDay: '[Эртең саат] LT', - nextWeek: 'dddd [саат] LT', - lastDay: '[Кечээ саат] LT', - lastWeek: '[Өткөн аптанын] dddd [күнү] [саат] LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s ичинде', - past: '%s мурун', - s: 'бирнече секунд', - ss: '%d секунд', - m: 'бир мүнөт', - mm: '%d мүнөт', - h: 'бир саат', - hh: '%d саат', - d: 'бир күн', - dd: '%d күн', - M: 'бир ай', - MM: '%d ай', - y: 'бир жыл', - yy: '%d жыл', - }, - dayOfMonthOrdinalParse: /\d{1,2}-(чи|чы|чү|чу)/, - ordinal: function (number) { - var a = number % 10, - b = number >= 100 ? 100 : null; - return number + (suffixes[number] || suffixes[a] || suffixes[b]); - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return ky; - -}))); - - -/***/ }), - -/***/ 79680: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Luxembourgish [lb] -//! author : mweimerskirch : https://github.com/mweimerskirch -//! author : David Raison : https://github.com/kwisatz - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function processRelativeTime(number, withoutSuffix, key, isFuture) { - var format = { - m: ['eng Minutt', 'enger Minutt'], - h: ['eng Stonn', 'enger Stonn'], - d: ['een Dag', 'engem Dag'], - M: ['ee Mount', 'engem Mount'], - y: ['ee Joer', 'engem Joer'], - }; - return withoutSuffix ? format[key][0] : format[key][1]; - } - function processFutureTime(string) { - var number = string.substr(0, string.indexOf(' ')); - if (eifelerRegelAppliesToNumber(number)) { - return 'a ' + string; - } - return 'an ' + string; - } - function processPastTime(string) { - var number = string.substr(0, string.indexOf(' ')); - if (eifelerRegelAppliesToNumber(number)) { - return 'viru ' + string; - } - return 'virun ' + string; - } - /** - * Returns true if the word before the given number loses the '-n' ending. - * e.g. 'an 10 Deeg' but 'a 5 Deeg' - * - * @param number {integer} - * @returns {boolean} - */ - function eifelerRegelAppliesToNumber(number) { - number = parseInt(number, 10); - if (isNaN(number)) { - return false; - } - if (number < 0) { - // Negative Number --> always true - return true; - } else if (number < 10) { - // Only 1 digit - if (4 <= number && number <= 7) { - return true; - } - return false; - } else if (number < 100) { - // 2 digits - var lastDigit = number % 10, - firstDigit = number / 10; - if (lastDigit === 0) { - return eifelerRegelAppliesToNumber(firstDigit); - } - return eifelerRegelAppliesToNumber(lastDigit); - } else if (number < 10000) { - // 3 or 4 digits --> recursively check first digit - while (number >= 10) { - number = number / 10; - } - return eifelerRegelAppliesToNumber(number); - } else { - // Anything larger than 4 digits: recursively check first n-3 digits - number = number / 1000; - return eifelerRegelAppliesToNumber(number); - } - } - - var lb = moment.defineLocale('lb', { - months: 'Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember'.split( - '_' - ), - monthsShort: - 'Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split( - '_' - ), - monthsParseExact: true, - weekdays: - 'Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg'.split( - '_' - ), - weekdaysShort: 'So._Mé._Dë._Më._Do._Fr._Sa.'.split('_'), - weekdaysMin: 'So_Mé_Dë_Më_Do_Fr_Sa'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'H:mm [Auer]', - LTS: 'H:mm:ss [Auer]', - L: 'DD.MM.YYYY', - LL: 'D. MMMM YYYY', - LLL: 'D. MMMM YYYY H:mm [Auer]', - LLLL: 'dddd, D. MMMM YYYY H:mm [Auer]', - }, - calendar: { - sameDay: '[Haut um] LT', - sameElse: 'L', - nextDay: '[Muer um] LT', - nextWeek: 'dddd [um] LT', - lastDay: '[Gëschter um] LT', - lastWeek: function () { - // Different date string for 'Dënschdeg' (Tuesday) and 'Donneschdeg' (Thursday) due to phonological rule - switch (this.day()) { - case 2: - case 4: - return '[Leschten] dddd [um] LT'; - default: - return '[Leschte] dddd [um] LT'; - } - }, - }, - relativeTime: { - future: processFutureTime, - past: processPastTime, - s: 'e puer Sekonnen', - ss: '%d Sekonnen', - m: processRelativeTime, - mm: '%d Minutten', - h: processRelativeTime, - hh: '%d Stonnen', - d: processRelativeTime, - dd: '%d Deeg', - M: processRelativeTime, - MM: '%d Méint', - y: processRelativeTime, - yy: '%d Joer', - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return lb; - -}))); - - -/***/ }), - -/***/ 15867: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Lao [lo] -//! author : Ryan Hart : https://github.com/ryanhart2 - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var lo = moment.defineLocale('lo', { - months: 'ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ'.split( - '_' - ), - monthsShort: - 'ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ'.split( - '_' - ), - weekdays: 'ອາທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ'.split('_'), - weekdaysShort: 'ທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ'.split('_'), - weekdaysMin: 'ທ_ຈ_ອຄ_ພ_ພຫ_ສກ_ສ'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'ວັນdddd D MMMM YYYY HH:mm', - }, - meridiemParse: /ຕອນເຊົ້າ|ຕອນແລງ/, - isPM: function (input) { - return input === 'ຕອນແລງ'; - }, - meridiem: function (hour, minute, isLower) { - if (hour < 12) { - return 'ຕອນເຊົ້າ'; - } else { - return 'ຕອນແລງ'; - } - }, - calendar: { - sameDay: '[ມື້ນີ້ເວລາ] LT', - nextDay: '[ມື້ອື່ນເວລາ] LT', - nextWeek: '[ວັນ]dddd[ໜ້າເວລາ] LT', - lastDay: '[ມື້ວານນີ້ເວລາ] LT', - lastWeek: '[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'ອີກ %s', - past: '%sຜ່ານມາ', - s: 'ບໍ່ເທົ່າໃດວິນາທີ', - ss: '%d ວິນາທີ', - m: '1 ນາທີ', - mm: '%d ນາທີ', - h: '1 ຊົ່ວໂມງ', - hh: '%d ຊົ່ວໂມງ', - d: '1 ມື້', - dd: '%d ມື້', - M: '1 ເດືອນ', - MM: '%d ເດືອນ', - y: '1 ປີ', - yy: '%d ປີ', - }, - dayOfMonthOrdinalParse: /(ທີ່)\d{1,2}/, - ordinal: function (number) { - return 'ທີ່' + number; - }, - }); - - return lo; - -}))); - - -/***/ }), - -/***/ 45766: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Lithuanian [lt] -//! author : Mindaugas Mozūras : https://github.com/mmozuras - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var units = { - ss: 'sekundė_sekundžių_sekundes', - m: 'minutė_minutės_minutę', - mm: 'minutės_minučių_minutes', - h: 'valanda_valandos_valandą', - hh: 'valandos_valandų_valandas', - d: 'diena_dienos_dieną', - dd: 'dienos_dienų_dienas', - M: 'mėnuo_mėnesio_mėnesį', - MM: 'mėnesiai_mėnesių_mėnesius', - y: 'metai_metų_metus', - yy: 'metai_metų_metus', - }; - function translateSeconds(number, withoutSuffix, key, isFuture) { - if (withoutSuffix) { - return 'kelios sekundės'; - } else { - return isFuture ? 'kelių sekundžių' : 'kelias sekundes'; - } - } - function translateSingular(number, withoutSuffix, key, isFuture) { - return withoutSuffix - ? forms(key)[0] - : isFuture - ? forms(key)[1] - : forms(key)[2]; - } - function special(number) { - return number % 10 === 0 || (number > 10 && number < 20); - } - function forms(key) { - return units[key].split('_'); - } - function translate(number, withoutSuffix, key, isFuture) { - var result = number + ' '; - if (number === 1) { - return ( - result + translateSingular(number, withoutSuffix, key[0], isFuture) - ); - } else if (withoutSuffix) { - return result + (special(number) ? forms(key)[1] : forms(key)[0]); - } else { - if (isFuture) { - return result + forms(key)[1]; - } else { - return result + (special(number) ? forms(key)[1] : forms(key)[2]); - } - } - } - var lt = moment.defineLocale('lt', { - months: { - format: 'sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio'.split( - '_' - ), - standalone: - 'sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_spalis_lapkritis_gruodis'.split( - '_' - ), - isFormat: /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|MMMM?(\[[^\[\]]*\]|\s)+D[oD]?/, - }, - monthsShort: 'sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd'.split('_'), - weekdays: { - format: 'sekmadienį_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį'.split( - '_' - ), - standalone: - 'sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis'.split( - '_' - ), - isFormat: /dddd HH:mm/, - }, - weekdaysShort: 'Sek_Pir_Ant_Tre_Ket_Pen_Šeš'.split('_'), - weekdaysMin: 'S_P_A_T_K_Pn_Š'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'YYYY-MM-DD', - LL: 'YYYY [m.] MMMM D [d.]', - LLL: 'YYYY [m.] MMMM D [d.], HH:mm [val.]', - LLLL: 'YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]', - l: 'YYYY-MM-DD', - ll: 'YYYY [m.] MMMM D [d.]', - lll: 'YYYY [m.] MMMM D [d.], HH:mm [val.]', - llll: 'YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]', - }, - calendar: { - sameDay: '[Šiandien] LT', - nextDay: '[Rytoj] LT', - nextWeek: 'dddd LT', - lastDay: '[Vakar] LT', - lastWeek: '[Praėjusį] dddd LT', - sameElse: 'L', - }, - relativeTime: { - future: 'po %s', - past: 'prieš %s', - s: translateSeconds, - ss: translate, - m: translateSingular, - mm: translate, - h: translateSingular, - hh: translate, - d: translateSingular, - dd: translate, - M: translateSingular, - MM: translate, - y: translateSingular, - yy: translate, - }, - dayOfMonthOrdinalParse: /\d{1,2}-oji/, - ordinal: function (number) { - return number + '-oji'; - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return lt; - -}))); - - -/***/ }), - -/***/ 69532: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Latvian [lv] -//! author : Kristaps Karlsons : https://github.com/skakri -//! author : Jānis Elmeris : https://github.com/JanisE - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var units = { - ss: 'sekundes_sekundēm_sekunde_sekundes'.split('_'), - m: 'minūtes_minūtēm_minūte_minūtes'.split('_'), - mm: 'minūtes_minūtēm_minūte_minūtes'.split('_'), - h: 'stundas_stundām_stunda_stundas'.split('_'), - hh: 'stundas_stundām_stunda_stundas'.split('_'), - d: 'dienas_dienām_diena_dienas'.split('_'), - dd: 'dienas_dienām_diena_dienas'.split('_'), - M: 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'), - MM: 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'), - y: 'gada_gadiem_gads_gadi'.split('_'), - yy: 'gada_gadiem_gads_gadi'.split('_'), - }; - /** - * @param withoutSuffix boolean true = a length of time; false = before/after a period of time. - */ - function format(forms, number, withoutSuffix) { - if (withoutSuffix) { - // E.g. "21 minūte", "3 minūtes". - return number % 10 === 1 && number % 100 !== 11 ? forms[2] : forms[3]; - } else { - // E.g. "21 minūtes" as in "pēc 21 minūtes". - // E.g. "3 minūtēm" as in "pēc 3 minūtēm". - return number % 10 === 1 && number % 100 !== 11 ? forms[0] : forms[1]; - } - } - function relativeTimeWithPlural(number, withoutSuffix, key) { - return number + ' ' + format(units[key], number, withoutSuffix); - } - function relativeTimeWithSingular(number, withoutSuffix, key) { - return format(units[key], number, withoutSuffix); - } - function relativeSeconds(number, withoutSuffix) { - return withoutSuffix ? 'dažas sekundes' : 'dažām sekundēm'; - } - - var lv = moment.defineLocale('lv', { - months: 'janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris'.split( - '_' - ), - monthsShort: 'jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec'.split('_'), - weekdays: - 'svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena'.split( - '_' - ), - weekdaysShort: 'Sv_P_O_T_C_Pk_S'.split('_'), - weekdaysMin: 'Sv_P_O_T_C_Pk_S'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY.', - LL: 'YYYY. [gada] D. MMMM', - LLL: 'YYYY. [gada] D. MMMM, HH:mm', - LLLL: 'YYYY. [gada] D. MMMM, dddd, HH:mm', - }, - calendar: { - sameDay: '[Šodien pulksten] LT', - nextDay: '[Rīt pulksten] LT', - nextWeek: 'dddd [pulksten] LT', - lastDay: '[Vakar pulksten] LT', - lastWeek: '[Pagājušā] dddd [pulksten] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'pēc %s', - past: 'pirms %s', - s: relativeSeconds, - ss: relativeTimeWithPlural, - m: relativeTimeWithSingular, - mm: relativeTimeWithPlural, - h: relativeTimeWithSingular, - hh: relativeTimeWithPlural, - d: relativeTimeWithSingular, - dd: relativeTimeWithPlural, - M: relativeTimeWithSingular, - MM: relativeTimeWithPlural, - y: relativeTimeWithSingular, - yy: relativeTimeWithPlural, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return lv; - -}))); - - -/***/ }), - -/***/ 58076: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Montenegrin [me] -//! author : Miodrag Nikač : https://github.com/miodragnikac - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var translator = { - words: { - //Different grammatical cases - ss: ['sekund', 'sekunda', 'sekundi'], - m: ['jedan minut', 'jednog minuta'], - mm: ['minut', 'minuta', 'minuta'], - h: ['jedan sat', 'jednog sata'], - hh: ['sat', 'sata', 'sati'], - dd: ['dan', 'dana', 'dana'], - MM: ['mjesec', 'mjeseca', 'mjeseci'], - yy: ['godina', 'godine', 'godina'], - }, - correctGrammaticalCase: function (number, wordKey) { - return number === 1 - ? wordKey[0] - : number >= 2 && number <= 4 - ? wordKey[1] - : wordKey[2]; - }, - translate: function (number, withoutSuffix, key) { - var wordKey = translator.words[key]; - if (key.length === 1) { - return withoutSuffix ? wordKey[0] : wordKey[1]; - } else { - return ( - number + - ' ' + - translator.correctGrammaticalCase(number, wordKey) - ); - } - }, - }; - - var me = moment.defineLocale('me', { - months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split( - '_' - ), - monthsShort: - 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'), - monthsParseExact: true, - weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split( - '_' - ), - weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'), - weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D. MMMM YYYY', - LLL: 'D. MMMM YYYY H:mm', - LLLL: 'dddd, D. MMMM YYYY H:mm', - }, - calendar: { - sameDay: '[danas u] LT', - nextDay: '[sjutra u] LT', - - nextWeek: function () { - switch (this.day()) { - case 0: - return '[u] [nedjelju] [u] LT'; - case 3: - return '[u] [srijedu] [u] LT'; - case 6: - return '[u] [subotu] [u] LT'; - case 1: - case 2: - case 4: - case 5: - return '[u] dddd [u] LT'; - } - }, - lastDay: '[juče u] LT', - lastWeek: function () { - var lastWeekDays = [ - '[prošle] [nedjelje] [u] LT', - '[prošlog] [ponedjeljka] [u] LT', - '[prošlog] [utorka] [u] LT', - '[prošle] [srijede] [u] LT', - '[prošlog] [četvrtka] [u] LT', - '[prošlog] [petka] [u] LT', - '[prošle] [subote] [u] LT', - ]; - return lastWeekDays[this.day()]; - }, - sameElse: 'L', - }, - relativeTime: { - future: 'za %s', - past: 'prije %s', - s: 'nekoliko sekundi', - ss: translator.translate, - m: translator.translate, - mm: translator.translate, - h: translator.translate, - hh: translator.translate, - d: 'dan', - dd: translator.translate, - M: 'mjesec', - MM: translator.translate, - y: 'godinu', - yy: translator.translate, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return me; - -}))); - - -/***/ }), - -/***/ 41848: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Maori [mi] -//! author : John Corrigan : https://github.com/johnideal - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var mi = moment.defineLocale('mi', { - months: 'Kohi-tāte_Hui-tanguru_Poutū-te-rangi_Paenga-whāwhā_Haratua_Pipiri_Hōngoingoi_Here-turi-kōkā_Mahuru_Whiringa-ā-nuku_Whiringa-ā-rangi_Hakihea'.split( - '_' - ), - monthsShort: - 'Kohi_Hui_Pou_Pae_Hara_Pipi_Hōngoi_Here_Mahu_Whi-nu_Whi-ra_Haki'.split( - '_' - ), - monthsRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i, - monthsStrictRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i, - monthsShortRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i, - monthsShortStrictRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,2}/i, - weekdays: 'Rātapu_Mane_Tūrei_Wenerei_Tāite_Paraire_Hātarei'.split('_'), - weekdaysShort: 'Ta_Ma_Tū_We_Tāi_Pa_Hā'.split('_'), - weekdaysMin: 'Ta_Ma_Tū_We_Tāi_Pa_Hā'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY [i] HH:mm', - LLLL: 'dddd, D MMMM YYYY [i] HH:mm', - }, - calendar: { - sameDay: '[i teie mahana, i] LT', - nextDay: '[apopo i] LT', - nextWeek: 'dddd [i] LT', - lastDay: '[inanahi i] LT', - lastWeek: 'dddd [whakamutunga i] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'i roto i %s', - past: '%s i mua', - s: 'te hēkona ruarua', - ss: '%d hēkona', - m: 'he meneti', - mm: '%d meneti', - h: 'te haora', - hh: '%d haora', - d: 'he ra', - dd: '%d ra', - M: 'he marama', - MM: '%d marama', - y: 'he tau', - yy: '%d tau', - }, - dayOfMonthOrdinalParse: /\d{1,2}º/, - ordinal: '%dº', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return mi; - -}))); - - -/***/ }), - -/***/ 30306: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Macedonian [mk] -//! author : Borislav Mickov : https://github.com/B0k0 -//! author : Sashko Todorov : https://github.com/bkyceh - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var mk = moment.defineLocale('mk', { - months: 'јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември'.split( - '_' - ), - monthsShort: 'јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек'.split('_'), - weekdays: 'недела_понеделник_вторник_среда_четврток_петок_сабота'.split( - '_' - ), - weekdaysShort: 'нед_пон_вто_сре_чет_пет_саб'.split('_'), - weekdaysMin: 'нe_пo_вт_ср_че_пе_сa'.split('_'), - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'D.MM.YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY H:mm', - LLLL: 'dddd, D MMMM YYYY H:mm', - }, - calendar: { - sameDay: '[Денес во] LT', - nextDay: '[Утре во] LT', - nextWeek: '[Во] dddd [во] LT', - lastDay: '[Вчера во] LT', - lastWeek: function () { - switch (this.day()) { - case 0: - case 3: - case 6: - return '[Изминатата] dddd [во] LT'; - case 1: - case 2: - case 4: - case 5: - return '[Изминатиот] dddd [во] LT'; - } - }, - sameElse: 'L', - }, - relativeTime: { - future: 'за %s', - past: 'пред %s', - s: 'неколку секунди', - ss: '%d секунди', - m: 'една минута', - mm: '%d минути', - h: 'еден час', - hh: '%d часа', - d: 'еден ден', - dd: '%d дена', - M: 'еден месец', - MM: '%d месеци', - y: 'една година', - yy: '%d години', - }, - dayOfMonthOrdinalParse: /\d{1,2}-(ев|ен|ти|ви|ри|ми)/, - ordinal: function (number) { - var lastDigit = number % 10, - last2Digits = number % 100; - if (number === 0) { - return number + '-ев'; - } else if (last2Digits === 0) { - return number + '-ен'; - } else if (last2Digits > 10 && last2Digits < 20) { - return number + '-ти'; - } else if (lastDigit === 1) { - return number + '-ви'; - } else if (lastDigit === 2) { - return number + '-ри'; - } else if (lastDigit === 7 || lastDigit === 8) { - return number + '-ми'; - } else { - return number + '-ти'; - } - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return mk; - -}))); - - -/***/ }), - -/***/ 73739: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Malayalam [ml] -//! author : Floyd Pink : https://github.com/floydpink - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var ml = moment.defineLocale('ml', { - months: 'ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ'.split( - '_' - ), - monthsShort: - 'ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.'.split( - '_' - ), - monthsParseExact: true, - weekdays: - 'ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച'.split( - '_' - ), - weekdaysShort: 'ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി'.split('_'), - weekdaysMin: 'ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ'.split('_'), - longDateFormat: { - LT: 'A h:mm -നു', - LTS: 'A h:mm:ss -നു', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY, A h:mm -നു', - LLLL: 'dddd, D MMMM YYYY, A h:mm -നു', - }, - calendar: { - sameDay: '[ഇന്ന്] LT', - nextDay: '[നാളെ] LT', - nextWeek: 'dddd, LT', - lastDay: '[ഇന്നലെ] LT', - lastWeek: '[കഴിഞ്ഞ] dddd, LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s കഴിഞ്ഞ്', - past: '%s മുൻപ്', - s: 'അൽപ നിമിഷങ്ങൾ', - ss: '%d സെക്കൻഡ്', - m: 'ഒരു മിനിറ്റ്', - mm: '%d മിനിറ്റ്', - h: 'ഒരു മണിക്കൂർ', - hh: '%d മണിക്കൂർ', - d: 'ഒരു ദിവസം', - dd: '%d ദിവസം', - M: 'ഒരു മാസം', - MM: '%d മാസം', - y: 'ഒരു വർഷം', - yy: '%d വർഷം', - }, - meridiemParse: /രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if ( - (meridiem === 'രാത്രി' && hour >= 4) || - meridiem === 'ഉച്ച കഴിഞ്ഞ്' || - meridiem === 'വൈകുന്നേരം' - ) { - return hour + 12; - } else { - return hour; - } - }, - meridiem: function (hour, minute, isLower) { - if (hour < 4) { - return 'രാത്രി'; - } else if (hour < 12) { - return 'രാവിലെ'; - } else if (hour < 17) { - return 'ഉച്ച കഴിഞ്ഞ്'; - } else if (hour < 20) { - return 'വൈകുന്നേരം'; - } else { - return 'രാത്രി'; - } - }, - }); - - return ml; - -}))); - - -/***/ }), - -/***/ 99053: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Mongolian [mn] -//! author : Javkhlantugs Nyamdorj : https://github.com/javkhaanj7 - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function translate(number, withoutSuffix, key, isFuture) { - switch (key) { - case 's': - return withoutSuffix ? 'хэдхэн секунд' : 'хэдхэн секундын'; - case 'ss': - return number + (withoutSuffix ? ' секунд' : ' секундын'); - case 'm': - case 'mm': - return number + (withoutSuffix ? ' минут' : ' минутын'); - case 'h': - case 'hh': - return number + (withoutSuffix ? ' цаг' : ' цагийн'); - case 'd': - case 'dd': - return number + (withoutSuffix ? ' өдөр' : ' өдрийн'); - case 'M': - case 'MM': - return number + (withoutSuffix ? ' сар' : ' сарын'); - case 'y': - case 'yy': - return number + (withoutSuffix ? ' жил' : ' жилийн'); - default: - return number; - } - } - - var mn = moment.defineLocale('mn', { - months: 'Нэгдүгээр сар_Хоёрдугаар сар_Гуравдугаар сар_Дөрөвдүгээр сар_Тавдугаар сар_Зургадугаар сар_Долдугаар сар_Наймдугаар сар_Есдүгээр сар_Аравдугаар сар_Арван нэгдүгээр сар_Арван хоёрдугаар сар'.split( - '_' - ), - monthsShort: - '1 сар_2 сар_3 сар_4 сар_5 сар_6 сар_7 сар_8 сар_9 сар_10 сар_11 сар_12 сар'.split( - '_' - ), - monthsParseExact: true, - weekdays: 'Ням_Даваа_Мягмар_Лхагва_Пүрэв_Баасан_Бямба'.split('_'), - weekdaysShort: 'Ням_Дав_Мяг_Лха_Пүр_Баа_Бям'.split('_'), - weekdaysMin: 'Ня_Да_Мя_Лх_Пү_Ба_Бя'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'YYYY-MM-DD', - LL: 'YYYY оны MMMMын D', - LLL: 'YYYY оны MMMMын D HH:mm', - LLLL: 'dddd, YYYY оны MMMMын D HH:mm', - }, - meridiemParse: /ҮӨ|ҮХ/i, - isPM: function (input) { - return input === 'ҮХ'; - }, - meridiem: function (hour, minute, isLower) { - if (hour < 12) { - return 'ҮӨ'; - } else { - return 'ҮХ'; - } - }, - calendar: { - sameDay: '[Өнөөдөр] LT', - nextDay: '[Маргааш] LT', - nextWeek: '[Ирэх] dddd LT', - lastDay: '[Өчигдөр] LT', - lastWeek: '[Өнгөрсөн] dddd LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s дараа', - past: '%s өмнө', - s: translate, - ss: translate, - m: translate, - mm: translate, - h: translate, - hh: translate, - d: translate, - dd: translate, - M: translate, - MM: translate, - y: translate, - yy: translate, - }, - dayOfMonthOrdinalParse: /\d{1,2} өдөр/, - ordinal: function (number, period) { - switch (period) { - case 'd': - case 'D': - case 'DDD': - return number + ' өдөр'; - default: - return number; - } - }, - }); - - return mn; - -}))); - - -/***/ }), - -/***/ 86169: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Marathi [mr] -//! author : Harshad Kale : https://github.com/kalehv -//! author : Vivek Athalye : https://github.com/vnathalye - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var symbolMap = { - 1: '१', - 2: '२', - 3: '३', - 4: '४', - 5: '५', - 6: '६', - 7: '७', - 8: '८', - 9: '९', - 0: '०', - }, - numberMap = { - '१': '1', - '२': '2', - '३': '3', - '४': '4', - '५': '5', - '६': '6', - '७': '7', - '८': '8', - '९': '9', - '०': '0', - }; - - function relativeTimeMr(number, withoutSuffix, string, isFuture) { - var output = ''; - if (withoutSuffix) { - switch (string) { - case 's': - output = 'काही सेकंद'; - break; - case 'ss': - output = '%d सेकंद'; - break; - case 'm': - output = 'एक मिनिट'; - break; - case 'mm': - output = '%d मिनिटे'; - break; - case 'h': - output = 'एक तास'; - break; - case 'hh': - output = '%d तास'; - break; - case 'd': - output = 'एक दिवस'; - break; - case 'dd': - output = '%d दिवस'; - break; - case 'M': - output = 'एक महिना'; - break; - case 'MM': - output = '%d महिने'; - break; - case 'y': - output = 'एक वर्ष'; - break; - case 'yy': - output = '%d वर्षे'; - break; - } - } else { - switch (string) { - case 's': - output = 'काही सेकंदां'; - break; - case 'ss': - output = '%d सेकंदां'; - break; - case 'm': - output = 'एका मिनिटा'; - break; - case 'mm': - output = '%d मिनिटां'; - break; - case 'h': - output = 'एका तासा'; - break; - case 'hh': - output = '%d तासां'; - break; - case 'd': - output = 'एका दिवसा'; - break; - case 'dd': - output = '%d दिवसां'; - break; - case 'M': - output = 'एका महिन्या'; - break; - case 'MM': - output = '%d महिन्यां'; - break; - case 'y': - output = 'एका वर्षा'; - break; - case 'yy': - output = '%d वर्षां'; - break; - } - } - return output.replace(/%d/i, number); - } - - var mr = moment.defineLocale('mr', { - months: 'जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर'.split( - '_' - ), - monthsShort: - 'जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.'.split( - '_' - ), - monthsParseExact: true, - weekdays: 'रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'), - weekdaysShort: 'रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि'.split('_'), - weekdaysMin: 'र_सो_मं_बु_गु_शु_श'.split('_'), - longDateFormat: { - LT: 'A h:mm वाजता', - LTS: 'A h:mm:ss वाजता', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY, A h:mm वाजता', - LLLL: 'dddd, D MMMM YYYY, A h:mm वाजता', - }, - calendar: { - sameDay: '[आज] LT', - nextDay: '[उद्या] LT', - nextWeek: 'dddd, LT', - lastDay: '[काल] LT', - lastWeek: '[मागील] dddd, LT', - sameElse: 'L', - }, - relativeTime: { - future: '%sमध्ये', - past: '%sपूर्वी', - s: relativeTimeMr, - ss: relativeTimeMr, - m: relativeTimeMr, - mm: relativeTimeMr, - h: relativeTimeMr, - hh: relativeTimeMr, - d: relativeTimeMr, - dd: relativeTimeMr, - M: relativeTimeMr, - MM: relativeTimeMr, - y: relativeTimeMr, - yy: relativeTimeMr, - }, - preparse: function (string) { - return string.replace(/[१२३४५६७८९०]/g, function (match) { - return numberMap[match]; - }); - }, - postformat: function (string) { - return string.replace(/\d/g, function (match) { - return symbolMap[match]; - }); - }, - meridiemParse: /पहाटे|सकाळी|दुपारी|सायंकाळी|रात्री/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === 'पहाटे' || meridiem === 'सकाळी') { - return hour; - } else if ( - meridiem === 'दुपारी' || - meridiem === 'सायंकाळी' || - meridiem === 'रात्री' - ) { - return hour >= 12 ? hour : hour + 12; - } - }, - meridiem: function (hour, minute, isLower) { - if (hour >= 0 && hour < 6) { - return 'पहाटे'; - } else if (hour < 12) { - return 'सकाळी'; - } else if (hour < 17) { - return 'दुपारी'; - } else if (hour < 20) { - return 'सायंकाळी'; - } else { - return 'रात्री'; - } - }, - week: { - dow: 0, // Sunday is the first day of the week. - doy: 6, // The week that contains Jan 6th is the first week of the year. - }, - }); - - return mr; - -}))); - - -/***/ }), - -/***/ 92297: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Malay [ms-my] -//! note : DEPRECATED, the correct one is [ms] -//! author : Weldan Jamili : https://github.com/weldan - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var msMy = moment.defineLocale('ms-my', { - months: 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split( - '_' - ), - monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'), - weekdays: 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'), - weekdaysShort: 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'), - weekdaysMin: 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'), - longDateFormat: { - LT: 'HH.mm', - LTS: 'HH.mm.ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY [pukul] HH.mm', - LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm', - }, - meridiemParse: /pagi|tengahari|petang|malam/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === 'pagi') { - return hour; - } else if (meridiem === 'tengahari') { - return hour >= 11 ? hour : hour + 12; - } else if (meridiem === 'petang' || meridiem === 'malam') { - return hour + 12; - } - }, - meridiem: function (hours, minutes, isLower) { - if (hours < 11) { - return 'pagi'; - } else if (hours < 15) { - return 'tengahari'; - } else if (hours < 19) { - return 'petang'; - } else { - return 'malam'; - } - }, - calendar: { - sameDay: '[Hari ini pukul] LT', - nextDay: '[Esok pukul] LT', - nextWeek: 'dddd [pukul] LT', - lastDay: '[Kelmarin pukul] LT', - lastWeek: 'dddd [lepas pukul] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'dalam %s', - past: '%s yang lepas', - s: 'beberapa saat', - ss: '%d saat', - m: 'seminit', - mm: '%d minit', - h: 'sejam', - hh: '%d jam', - d: 'sehari', - dd: '%d hari', - M: 'sebulan', - MM: '%d bulan', - y: 'setahun', - yy: '%d tahun', - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return msMy; - -}))); - - -/***/ }), - -/***/ 73386: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Malay [ms] -//! author : Weldan Jamili : https://github.com/weldan - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var ms = moment.defineLocale('ms', { - months: 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split( - '_' - ), - monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'), - weekdays: 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'), - weekdaysShort: 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'), - weekdaysMin: 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'), - longDateFormat: { - LT: 'HH.mm', - LTS: 'HH.mm.ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY [pukul] HH.mm', - LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm', - }, - meridiemParse: /pagi|tengahari|petang|malam/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === 'pagi') { - return hour; - } else if (meridiem === 'tengahari') { - return hour >= 11 ? hour : hour + 12; - } else if (meridiem === 'petang' || meridiem === 'malam') { - return hour + 12; - } - }, - meridiem: function (hours, minutes, isLower) { - if (hours < 11) { - return 'pagi'; - } else if (hours < 15) { - return 'tengahari'; - } else if (hours < 19) { - return 'petang'; - } else { - return 'malam'; - } - }, - calendar: { - sameDay: '[Hari ini pukul] LT', - nextDay: '[Esok pukul] LT', - nextWeek: 'dddd [pukul] LT', - lastDay: '[Kelmarin pukul] LT', - lastWeek: 'dddd [lepas pukul] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'dalam %s', - past: '%s yang lepas', - s: 'beberapa saat', - ss: '%d saat', - m: 'seminit', - mm: '%d minit', - h: 'sejam', - hh: '%d jam', - d: 'sehari', - dd: '%d hari', - M: 'sebulan', - MM: '%d bulan', - y: 'setahun', - yy: '%d tahun', - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return ms; - -}))); - - -/***/ }), - -/***/ 77075: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Maltese (Malta) [mt] -//! author : Alessandro Maruccia : https://github.com/alesma - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var mt = moment.defineLocale('mt', { - months: 'Jannar_Frar_Marzu_April_Mejju_Ġunju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Diċembru'.split( - '_' - ), - monthsShort: 'Jan_Fra_Mar_Apr_Mej_Ġun_Lul_Aww_Set_Ott_Nov_Diċ'.split('_'), - weekdays: - 'Il-Ħadd_It-Tnejn_It-Tlieta_L-Erbgħa_Il-Ħamis_Il-Ġimgħa_Is-Sibt'.split( - '_' - ), - weekdaysShort: 'Ħad_Tne_Tli_Erb_Ħam_Ġim_Sib'.split('_'), - weekdaysMin: 'Ħa_Tn_Tl_Er_Ħa_Ġi_Si'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Illum fil-]LT', - nextDay: '[Għada fil-]LT', - nextWeek: 'dddd [fil-]LT', - lastDay: '[Il-bieraħ fil-]LT', - lastWeek: 'dddd [li għadda] [fil-]LT', - sameElse: 'L', - }, - relativeTime: { - future: 'f’ %s', - past: '%s ilu', - s: 'ftit sekondi', - ss: '%d sekondi', - m: 'minuta', - mm: '%d minuti', - h: 'siegħa', - hh: '%d siegħat', - d: 'ġurnata', - dd: '%d ġranet', - M: 'xahar', - MM: '%d xhur', - y: 'sena', - yy: '%d sni', - }, - dayOfMonthOrdinalParse: /\d{1,2}º/, - ordinal: '%dº', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return mt; - -}))); - - -/***/ }), - -/***/ 72264: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Burmese [my] -//! author : Squar team, mysquar.com -//! author : David Rossellat : https://github.com/gholadr -//! author : Tin Aung Lin : https://github.com/thanyawzinmin - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var symbolMap = { - 1: '၁', - 2: '၂', - 3: '၃', - 4: '၄', - 5: '၅', - 6: '၆', - 7: '၇', - 8: '၈', - 9: '၉', - 0: '၀', - }, - numberMap = { - '၁': '1', - '၂': '2', - '၃': '3', - '၄': '4', - '၅': '5', - '၆': '6', - '၇': '7', - '၈': '8', - '၉': '9', - '၀': '0', - }; - - var my = moment.defineLocale('my', { - months: 'ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ'.split( - '_' - ), - monthsShort: 'ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ'.split('_'), - weekdays: 'တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ'.split( - '_' - ), - weekdaysShort: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'), - weekdaysMin: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'), - - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[ယနေ.] LT [မှာ]', - nextDay: '[မနက်ဖြန်] LT [မှာ]', - nextWeek: 'dddd LT [မှာ]', - lastDay: '[မနေ.က] LT [မှာ]', - lastWeek: '[ပြီးခဲ့သော] dddd LT [မှာ]', - sameElse: 'L', - }, - relativeTime: { - future: 'လာမည့် %s မှာ', - past: 'လွန်ခဲ့သော %s က', - s: 'စက္ကန်.အနည်းငယ်', - ss: '%d စက္ကန့်', - m: 'တစ်မိနစ်', - mm: '%d မိနစ်', - h: 'တစ်နာရီ', - hh: '%d နာရီ', - d: 'တစ်ရက်', - dd: '%d ရက်', - M: 'တစ်လ', - MM: '%d လ', - y: 'တစ်နှစ်', - yy: '%d နှစ်', - }, - preparse: function (string) { - return string.replace(/[၁၂၃၄၅၆၇၈၉၀]/g, function (match) { - return numberMap[match]; - }); - }, - postformat: function (string) { - return string.replace(/\d/g, function (match) { - return symbolMap[match]; - }); - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return my; - -}))); - - -/***/ }), - -/***/ 22274: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Norwegian Bokmål [nb] -//! authors : Espen Hovlandsdal : https://github.com/rexxars -//! Sigurd Gartmann : https://github.com/sigurdga -//! Stephen Ramthun : https://github.com/stephenramthun - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var nb = moment.defineLocale('nb', { - months: 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split( - '_' - ), - monthsShort: - 'jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.'.split('_'), - monthsParseExact: true, - weekdays: 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'), - weekdaysShort: 'sø._ma._ti._on._to._fr._lø.'.split('_'), - weekdaysMin: 'sø_ma_ti_on_to_fr_lø'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D. MMMM YYYY', - LLL: 'D. MMMM YYYY [kl.] HH:mm', - LLLL: 'dddd D. MMMM YYYY [kl.] HH:mm', - }, - calendar: { - sameDay: '[i dag kl.] LT', - nextDay: '[i morgen kl.] LT', - nextWeek: 'dddd [kl.] LT', - lastDay: '[i går kl.] LT', - lastWeek: '[forrige] dddd [kl.] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'om %s', - past: '%s siden', - s: 'noen sekunder', - ss: '%d sekunder', - m: 'ett minutt', - mm: '%d minutter', - h: 'én time', - hh: '%d timer', - d: 'én dag', - dd: '%d dager', - w: 'én uke', - ww: '%d uker', - M: 'én måned', - MM: '%d måneder', - y: 'ett år', - yy: '%d år', - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return nb; - -}))); - - -/***/ }), - -/***/ 8235: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Nepalese [ne] -//! author : suvash : https://github.com/suvash - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var symbolMap = { - 1: '१', - 2: '२', - 3: '३', - 4: '४', - 5: '५', - 6: '६', - 7: '७', - 8: '८', - 9: '९', - 0: '०', - }, - numberMap = { - '१': '1', - '२': '2', - '३': '3', - '४': '4', - '५': '5', - '६': '6', - '७': '7', - '८': '8', - '९': '9', - '०': '0', - }; - - var ne = moment.defineLocale('ne', { - months: 'जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर'.split( - '_' - ), - monthsShort: - 'जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.'.split( - '_' - ), - monthsParseExact: true, - weekdays: 'आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार'.split( - '_' - ), - weekdaysShort: 'आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.'.split('_'), - weekdaysMin: 'आ._सो._मं._बु._बि._शु._श.'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'Aको h:mm बजे', - LTS: 'Aको h:mm:ss बजे', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY, Aको h:mm बजे', - LLLL: 'dddd, D MMMM YYYY, Aको h:mm बजे', - }, - preparse: function (string) { - return string.replace(/[१२३४५६७८९०]/g, function (match) { - return numberMap[match]; - }); - }, - postformat: function (string) { - return string.replace(/\d/g, function (match) { - return symbolMap[match]; - }); - }, - meridiemParse: /राति|बिहान|दिउँसो|साँझ/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === 'राति') { - return hour < 4 ? hour : hour + 12; - } else if (meridiem === 'बिहान') { - return hour; - } else if (meridiem === 'दिउँसो') { - return hour >= 10 ? hour : hour + 12; - } else if (meridiem === 'साँझ') { - return hour + 12; - } - }, - meridiem: function (hour, minute, isLower) { - if (hour < 3) { - return 'राति'; - } else if (hour < 12) { - return 'बिहान'; - } else if (hour < 16) { - return 'दिउँसो'; - } else if (hour < 20) { - return 'साँझ'; - } else { - return 'राति'; - } - }, - calendar: { - sameDay: '[आज] LT', - nextDay: '[भोलि] LT', - nextWeek: '[आउँदो] dddd[,] LT', - lastDay: '[हिजो] LT', - lastWeek: '[गएको] dddd[,] LT', - sameElse: 'L', - }, - relativeTime: { - future: '%sमा', - past: '%s अगाडि', - s: 'केही क्षण', - ss: '%d सेकेण्ड', - m: 'एक मिनेट', - mm: '%d मिनेट', - h: 'एक घण्टा', - hh: '%d घण्टा', - d: 'एक दिन', - dd: '%d दिन', - M: 'एक महिना', - MM: '%d महिना', - y: 'एक बर्ष', - yy: '%d बर्ष', - }, - week: { - dow: 0, // Sunday is the first day of the week. - doy: 6, // The week that contains Jan 6th is the first week of the year. - }, - }); - - return ne; - -}))); - - -/***/ }), - -/***/ 43784: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Dutch (Belgium) [nl-be] -//! author : Joris Röling : https://github.com/jorisroling -//! author : Jacob Middag : https://github.com/middagj - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var monthsShortWithDots = - 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'), - monthsShortWithoutDots = - 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_'), - monthsParse = [ - /^jan/i, - /^feb/i, - /^(maart|mrt\.?)$/i, - /^apr/i, - /^mei$/i, - /^jun[i.]?$/i, - /^jul[i.]?$/i, - /^aug/i, - /^sep/i, - /^okt/i, - /^nov/i, - /^dec/i, - ], - monthsRegex = - /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i; - - var nlBe = moment.defineLocale('nl-be', { - months: 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split( - '_' - ), - monthsShort: function (m, format) { - if (!m) { - return monthsShortWithDots; - } else if (/-MMM-/.test(format)) { - return monthsShortWithoutDots[m.month()]; - } else { - return monthsShortWithDots[m.month()]; - } - }, - - monthsRegex: monthsRegex, - monthsShortRegex: monthsRegex, - monthsStrictRegex: - /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i, - monthsShortStrictRegex: - /^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i, - - monthsParse: monthsParse, - longMonthsParse: monthsParse, - shortMonthsParse: monthsParse, - - weekdays: - 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'), - weekdaysShort: 'zo._ma._di._wo._do._vr._za.'.split('_'), - weekdaysMin: 'zo_ma_di_wo_do_vr_za'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[vandaag om] LT', - nextDay: '[morgen om] LT', - nextWeek: 'dddd [om] LT', - lastDay: '[gisteren om] LT', - lastWeek: '[afgelopen] dddd [om] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'over %s', - past: '%s geleden', - s: 'een paar seconden', - ss: '%d seconden', - m: 'één minuut', - mm: '%d minuten', - h: 'één uur', - hh: '%d uur', - d: 'één dag', - dd: '%d dagen', - M: 'één maand', - MM: '%d maanden', - y: 'één jaar', - yy: '%d jaar', - }, - dayOfMonthOrdinalParse: /\d{1,2}(ste|de)/, - ordinal: function (number) { - return ( - number + - (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de') - ); - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return nlBe; - -}))); - - -/***/ }), - -/***/ 92572: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Dutch [nl] -//! author : Joris Röling : https://github.com/jorisroling -//! author : Jacob Middag : https://github.com/middagj - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var monthsShortWithDots = - 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'), - monthsShortWithoutDots = - 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_'), - monthsParse = [ - /^jan/i, - /^feb/i, - /^(maart|mrt\.?)$/i, - /^apr/i, - /^mei$/i, - /^jun[i.]?$/i, - /^jul[i.]?$/i, - /^aug/i, - /^sep/i, - /^okt/i, - /^nov/i, - /^dec/i, - ], - monthsRegex = - /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i; - - var nl = moment.defineLocale('nl', { - months: 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split( - '_' - ), - monthsShort: function (m, format) { - if (!m) { - return monthsShortWithDots; - } else if (/-MMM-/.test(format)) { - return monthsShortWithoutDots[m.month()]; - } else { - return monthsShortWithDots[m.month()]; - } - }, - - monthsRegex: monthsRegex, - monthsShortRegex: monthsRegex, - monthsStrictRegex: - /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i, - monthsShortStrictRegex: - /^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i, - - monthsParse: monthsParse, - longMonthsParse: monthsParse, - shortMonthsParse: monthsParse, - - weekdays: - 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'), - weekdaysShort: 'zo._ma._di._wo._do._vr._za.'.split('_'), - weekdaysMin: 'zo_ma_di_wo_do_vr_za'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD-MM-YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[vandaag om] LT', - nextDay: '[morgen om] LT', - nextWeek: 'dddd [om] LT', - lastDay: '[gisteren om] LT', - lastWeek: '[afgelopen] dddd [om] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'over %s', - past: '%s geleden', - s: 'een paar seconden', - ss: '%d seconden', - m: 'één minuut', - mm: '%d minuten', - h: 'één uur', - hh: '%d uur', - d: 'één dag', - dd: '%d dagen', - w: 'één week', - ww: '%d weken', - M: 'één maand', - MM: '%d maanden', - y: 'één jaar', - yy: '%d jaar', - }, - dayOfMonthOrdinalParse: /\d{1,2}(ste|de)/, - ordinal: function (number) { - return ( - number + - (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de') - ); - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return nl; - -}))); - - -/***/ }), - -/***/ 54566: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Nynorsk [nn] -//! authors : https://github.com/mechuwind -//! Stephen Ramthun : https://github.com/stephenramthun - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var nn = moment.defineLocale('nn', { - months: 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split( - '_' - ), - monthsShort: - 'jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.'.split('_'), - monthsParseExact: true, - weekdays: 'sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag'.split('_'), - weekdaysShort: 'su._må._ty._on._to._fr._lau.'.split('_'), - weekdaysMin: 'su_må_ty_on_to_fr_la'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D. MMMM YYYY', - LLL: 'D. MMMM YYYY [kl.] H:mm', - LLLL: 'dddd D. MMMM YYYY [kl.] HH:mm', - }, - calendar: { - sameDay: '[I dag klokka] LT', - nextDay: '[I morgon klokka] LT', - nextWeek: 'dddd [klokka] LT', - lastDay: '[I går klokka] LT', - lastWeek: '[Føregåande] dddd [klokka] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'om %s', - past: '%s sidan', - s: 'nokre sekund', - ss: '%d sekund', - m: 'eit minutt', - mm: '%d minutt', - h: 'ein time', - hh: '%d timar', - d: 'ein dag', - dd: '%d dagar', - w: 'ei veke', - ww: '%d veker', - M: 'ein månad', - MM: '%d månader', - y: 'eit år', - yy: '%d år', - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return nn; - -}))); - - -/***/ }), - -/***/ 69330: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Occitan, lengadocian dialecte [oc-lnc] -//! author : Quentin PAGÈS : https://github.com/Quenty31 - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var ocLnc = moment.defineLocale('oc-lnc', { - months: { - standalone: - 'genièr_febrièr_març_abril_mai_junh_julhet_agost_setembre_octòbre_novembre_decembre'.split( - '_' - ), - format: "de genièr_de febrièr_de març_d'abril_de mai_de junh_de julhet_d'agost_de setembre_d'octòbre_de novembre_de decembre".split( - '_' - ), - isFormat: /D[oD]?(\s)+MMMM/, - }, - monthsShort: - 'gen._febr._març_abr._mai_junh_julh._ago._set._oct._nov._dec.'.split( - '_' - ), - monthsParseExact: true, - weekdays: 'dimenge_diluns_dimars_dimècres_dijòus_divendres_dissabte'.split( - '_' - ), - weekdaysShort: 'dg._dl._dm._dc._dj._dv._ds.'.split('_'), - weekdaysMin: 'dg_dl_dm_dc_dj_dv_ds'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM [de] YYYY', - ll: 'D MMM YYYY', - LLL: 'D MMMM [de] YYYY [a] H:mm', - lll: 'D MMM YYYY, H:mm', - LLLL: 'dddd D MMMM [de] YYYY [a] H:mm', - llll: 'ddd D MMM YYYY, H:mm', - }, - calendar: { - sameDay: '[uèi a] LT', - nextDay: '[deman a] LT', - nextWeek: 'dddd [a] LT', - lastDay: '[ièr a] LT', - lastWeek: 'dddd [passat a] LT', - sameElse: 'L', - }, - relativeTime: { - future: "d'aquí %s", - past: 'fa %s', - s: 'unas segondas', - ss: '%d segondas', - m: 'una minuta', - mm: '%d minutas', - h: 'una ora', - hh: '%d oras', - d: 'un jorn', - dd: '%d jorns', - M: 'un mes', - MM: '%d meses', - y: 'un an', - yy: '%d ans', - }, - dayOfMonthOrdinalParse: /\d{1,2}(r|n|t|è|a)/, - ordinal: function (number, period) { - var output = - number === 1 - ? 'r' - : number === 2 - ? 'n' - : number === 3 - ? 'r' - : number === 4 - ? 't' - : 'è'; - if (period === 'w' || period === 'W') { - output = 'a'; - } - return number + output; - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, - }, - }); - - return ocLnc; - -}))); - - -/***/ }), - -/***/ 29849: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Punjabi (India) [pa-in] -//! author : Harpreet Singh : https://github.com/harpreetkhalsagtbit - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var symbolMap = { - 1: '੧', - 2: '੨', - 3: '੩', - 4: '੪', - 5: '੫', - 6: '੬', - 7: '੭', - 8: '੮', - 9: '੯', - 0: '੦', - }, - numberMap = { - '੧': '1', - '੨': '2', - '੩': '3', - '੪': '4', - '੫': '5', - '੬': '6', - '੭': '7', - '੮': '8', - '੯': '9', - '੦': '0', - }; - - var paIn = moment.defineLocale('pa-in', { - // There are months name as per Nanakshahi Calendar but they are not used as rigidly in modern Punjabi. - months: 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split( - '_' - ), - monthsShort: - 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split( - '_' - ), - weekdays: 'ਐਤਵਾਰ_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬੁਧਵਾਰ_ਵੀਰਵਾਰ_ਸ਼ੁੱਕਰਵਾਰ_ਸ਼ਨੀਚਰਵਾਰ'.split( - '_' - ), - weekdaysShort: 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'), - weekdaysMin: 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'), - longDateFormat: { - LT: 'A h:mm ਵਜੇ', - LTS: 'A h:mm:ss ਵਜੇ', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY, A h:mm ਵਜੇ', - LLLL: 'dddd, D MMMM YYYY, A h:mm ਵਜੇ', - }, - calendar: { - sameDay: '[ਅਜ] LT', - nextDay: '[ਕਲ] LT', - nextWeek: '[ਅਗਲਾ] dddd, LT', - lastDay: '[ਕਲ] LT', - lastWeek: '[ਪਿਛਲੇ] dddd, LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s ਵਿੱਚ', - past: '%s ਪਿਛਲੇ', - s: 'ਕੁਝ ਸਕਿੰਟ', - ss: '%d ਸਕਿੰਟ', - m: 'ਇਕ ਮਿੰਟ', - mm: '%d ਮਿੰਟ', - h: 'ਇੱਕ ਘੰਟਾ', - hh: '%d ਘੰਟੇ', - d: 'ਇੱਕ ਦਿਨ', - dd: '%d ਦਿਨ', - M: 'ਇੱਕ ਮਹੀਨਾ', - MM: '%d ਮਹੀਨੇ', - y: 'ਇੱਕ ਸਾਲ', - yy: '%d ਸਾਲ', - }, - preparse: function (string) { - return string.replace(/[੧੨੩੪੫੬੭੮੯੦]/g, function (match) { - return numberMap[match]; - }); - }, - postformat: function (string) { - return string.replace(/\d/g, function (match) { - return symbolMap[match]; - }); - }, - // Punjabi notation for meridiems are quite fuzzy in practice. While there exists - // a rigid notion of a 'Pahar' it is not used as rigidly in modern Punjabi. - meridiemParse: /ਰਾਤ|ਸਵੇਰ|ਦੁਪਹਿਰ|ਸ਼ਾਮ/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === 'ਰਾਤ') { - return hour < 4 ? hour : hour + 12; - } else if (meridiem === 'ਸਵੇਰ') { - return hour; - } else if (meridiem === 'ਦੁਪਹਿਰ') { - return hour >= 10 ? hour : hour + 12; - } else if (meridiem === 'ਸ਼ਾਮ') { - return hour + 12; - } - }, - meridiem: function (hour, minute, isLower) { - if (hour < 4) { - return 'ਰਾਤ'; - } else if (hour < 10) { - return 'ਸਵੇਰ'; - } else if (hour < 17) { - return 'ਦੁਪਹਿਰ'; - } else if (hour < 20) { - return 'ਸ਼ਾਮ'; - } else { - return 'ਰਾਤ'; - } - }, - week: { - dow: 0, // Sunday is the first day of the week. - doy: 6, // The week that contains Jan 6th is the first week of the year. - }, - }); - - return paIn; - -}))); - - -/***/ }), - -/***/ 94418: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Polish [pl] -//! author : Rafal Hirsz : https://github.com/evoL - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var monthsNominative = - 'styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień'.split( - '_' - ), - monthsSubjective = - 'stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia'.split( - '_' - ), - monthsParse = [ - /^sty/i, - /^lut/i, - /^mar/i, - /^kwi/i, - /^maj/i, - /^cze/i, - /^lip/i, - /^sie/i, - /^wrz/i, - /^paź/i, - /^lis/i, - /^gru/i, - ]; - function plural(n) { - return n % 10 < 5 && n % 10 > 1 && ~~(n / 10) % 10 !== 1; - } - function translate(number, withoutSuffix, key) { - var result = number + ' '; - switch (key) { - case 'ss': - return result + (plural(number) ? 'sekundy' : 'sekund'); - case 'm': - return withoutSuffix ? 'minuta' : 'minutę'; - case 'mm': - return result + (plural(number) ? 'minuty' : 'minut'); - case 'h': - return withoutSuffix ? 'godzina' : 'godzinę'; - case 'hh': - return result + (plural(number) ? 'godziny' : 'godzin'); - case 'ww': - return result + (plural(number) ? 'tygodnie' : 'tygodni'); - case 'MM': - return result + (plural(number) ? 'miesiące' : 'miesięcy'); - case 'yy': - return result + (plural(number) ? 'lata' : 'lat'); - } - } - - var pl = moment.defineLocale('pl', { - months: function (momentToFormat, format) { - if (!momentToFormat) { - return monthsNominative; - } else if (/D MMMM/.test(format)) { - return monthsSubjective[momentToFormat.month()]; - } else { - return monthsNominative[momentToFormat.month()]; - } - }, - monthsShort: 'sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru'.split('_'), - monthsParse: monthsParse, - longMonthsParse: monthsParse, - shortMonthsParse: monthsParse, - weekdays: - 'niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota'.split('_'), - weekdaysShort: 'ndz_pon_wt_śr_czw_pt_sob'.split('_'), - weekdaysMin: 'Nd_Pn_Wt_Śr_Cz_Pt_So'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Dziś o] LT', - nextDay: '[Jutro o] LT', - nextWeek: function () { - switch (this.day()) { - case 0: - return '[W niedzielę o] LT'; - - case 2: - return '[We wtorek o] LT'; - - case 3: - return '[W środę o] LT'; - - case 6: - return '[W sobotę o] LT'; - - default: - return '[W] dddd [o] LT'; - } - }, - lastDay: '[Wczoraj o] LT', - lastWeek: function () { - switch (this.day()) { - case 0: - return '[W zeszłą niedzielę o] LT'; - case 3: - return '[W zeszłą środę o] LT'; - case 6: - return '[W zeszłą sobotę o] LT'; - default: - return '[W zeszły] dddd [o] LT'; - } - }, - sameElse: 'L', - }, - relativeTime: { - future: 'za %s', - past: '%s temu', - s: 'kilka sekund', - ss: translate, - m: translate, - mm: translate, - h: translate, - hh: translate, - d: '1 dzień', - dd: '%d dni', - w: 'tydzień', - ww: translate, - M: 'miesiąc', - MM: translate, - y: 'rok', - yy: translate, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return pl; - -}))); - - -/***/ }), - -/***/ 48303: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Portuguese (Brazil) [pt-br] -//! author : Caio Ribeiro Pereira : https://github.com/caio-ribeiro-pereira - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var ptBr = moment.defineLocale('pt-br', { - months: 'janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split( - '_' - ), - monthsShort: 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'), - weekdays: - 'domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado'.split( - '_' - ), - weekdaysShort: 'dom_seg_ter_qua_qui_sex_sáb'.split('_'), - weekdaysMin: 'do_2ª_3ª_4ª_5ª_6ª_sá'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D [de] MMMM [de] YYYY', - LLL: 'D [de] MMMM [de] YYYY [às] HH:mm', - LLLL: 'dddd, D [de] MMMM [de] YYYY [às] HH:mm', - }, - calendar: { - sameDay: '[Hoje às] LT', - nextDay: '[Amanhã às] LT', - nextWeek: 'dddd [às] LT', - lastDay: '[Ontem às] LT', - lastWeek: function () { - return this.day() === 0 || this.day() === 6 - ? '[Último] dddd [às] LT' // Saturday + Sunday - : '[Última] dddd [às] LT'; // Monday - Friday - }, - sameElse: 'L', - }, - relativeTime: { - future: 'em %s', - past: 'há %s', - s: 'poucos segundos', - ss: '%d segundos', - m: 'um minuto', - mm: '%d minutos', - h: 'uma hora', - hh: '%d horas', - d: 'um dia', - dd: '%d dias', - M: 'um mês', - MM: '%d meses', - y: 'um ano', - yy: '%d anos', - }, - dayOfMonthOrdinalParse: /\d{1,2}º/, - ordinal: '%dº', - invalidDate: 'Data inválida', - }); - - return ptBr; - -}))); - - -/***/ }), - -/***/ 79834: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Portuguese [pt] -//! author : Jefferson : https://github.com/jalex79 - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var pt = moment.defineLocale('pt', { - months: 'janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split( - '_' - ), - monthsShort: 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'), - weekdays: - 'Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado'.split( - '_' - ), - weekdaysShort: 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'), - weekdaysMin: 'Do_2ª_3ª_4ª_5ª_6ª_Sá'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D [de] MMMM [de] YYYY', - LLL: 'D [de] MMMM [de] YYYY HH:mm', - LLLL: 'dddd, D [de] MMMM [de] YYYY HH:mm', - }, - calendar: { - sameDay: '[Hoje às] LT', - nextDay: '[Amanhã às] LT', - nextWeek: 'dddd [às] LT', - lastDay: '[Ontem às] LT', - lastWeek: function () { - return this.day() === 0 || this.day() === 6 - ? '[Último] dddd [às] LT' // Saturday + Sunday - : '[Última] dddd [às] LT'; // Monday - Friday - }, - sameElse: 'L', - }, - relativeTime: { - future: 'em %s', - past: 'há %s', - s: 'segundos', - ss: '%d segundos', - m: 'um minuto', - mm: '%d minutos', - h: 'uma hora', - hh: '%d horas', - d: 'um dia', - dd: '%d dias', - w: 'uma semana', - ww: '%d semanas', - M: 'um mês', - MM: '%d meses', - y: 'um ano', - yy: '%d anos', - }, - dayOfMonthOrdinalParse: /\d{1,2}º/, - ordinal: '%dº', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return pt; - -}))); - - -/***/ }), - -/***/ 24457: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Romanian [ro] -//! author : Vlad Gurdiga : https://github.com/gurdiga -//! author : Valentin Agachi : https://github.com/avaly -//! author : Emanuel Cepoi : https://github.com/cepem - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function relativeTimeWithPlural(number, withoutSuffix, key) { - var format = { - ss: 'secunde', - mm: 'minute', - hh: 'ore', - dd: 'zile', - ww: 'săptămâni', - MM: 'luni', - yy: 'ani', - }, - separator = ' '; - if (number % 100 >= 20 || (number >= 100 && number % 100 === 0)) { - separator = ' de '; - } - return number + separator + format[key]; - } - - var ro = moment.defineLocale('ro', { - months: 'ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie'.split( - '_' - ), - monthsShort: - 'ian._feb._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.'.split( - '_' - ), - monthsParseExact: true, - weekdays: 'duminică_luni_marți_miercuri_joi_vineri_sâmbătă'.split('_'), - weekdaysShort: 'Dum_Lun_Mar_Mie_Joi_Vin_Sâm'.split('_'), - weekdaysMin: 'Du_Lu_Ma_Mi_Jo_Vi_Sâ'.split('_'), - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY H:mm', - LLLL: 'dddd, D MMMM YYYY H:mm', - }, - calendar: { - sameDay: '[azi la] LT', - nextDay: '[mâine la] LT', - nextWeek: 'dddd [la] LT', - lastDay: '[ieri la] LT', - lastWeek: '[fosta] dddd [la] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'peste %s', - past: '%s în urmă', - s: 'câteva secunde', - ss: relativeTimeWithPlural, - m: 'un minut', - mm: relativeTimeWithPlural, - h: 'o oră', - hh: relativeTimeWithPlural, - d: 'o zi', - dd: relativeTimeWithPlural, - w: 'o săptămână', - ww: relativeTimeWithPlural, - M: 'o lună', - MM: relativeTimeWithPlural, - y: 'un an', - yy: relativeTimeWithPlural, - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return ro; - -}))); - - -/***/ }), - -/***/ 82271: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Russian [ru] -//! author : Viktorminator : https://github.com/Viktorminator -//! author : Menelion Elensúle : https://github.com/Oire -//! author : Коренберг Марк : https://github.com/socketpair - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function plural(word, num) { - var forms = word.split('_'); - return num % 10 === 1 && num % 100 !== 11 - ? forms[0] - : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) - ? forms[1] - : forms[2]; - } - function relativeTimeWithPlural(number, withoutSuffix, key) { - var format = { - ss: withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд', - mm: withoutSuffix ? 'минута_минуты_минут' : 'минуту_минуты_минут', - hh: 'час_часа_часов', - dd: 'день_дня_дней', - ww: 'неделя_недели_недель', - MM: 'месяц_месяца_месяцев', - yy: 'год_года_лет', - }; - if (key === 'm') { - return withoutSuffix ? 'минута' : 'минуту'; - } else { - return number + ' ' + plural(format[key], +number); - } - } - var monthsParse = [ - /^янв/i, - /^фев/i, - /^мар/i, - /^апр/i, - /^ма[йя]/i, - /^июн/i, - /^июл/i, - /^авг/i, - /^сен/i, - /^окт/i, - /^ноя/i, - /^дек/i, - ]; - - // http://new.gramota.ru/spravka/rules/139-prop : § 103 - // Сокращения месяцев: http://new.gramota.ru/spravka/buro/search-answer?s=242637 - // CLDR data: http://www.unicode.org/cldr/charts/28/summary/ru.html#1753 - var ru = moment.defineLocale('ru', { - months: { - format: 'января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря'.split( - '_' - ), - standalone: - 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split( - '_' - ), - }, - monthsShort: { - // по CLDR именно "июл." и "июн.", но какой смысл менять букву на точку? - format: 'янв._февр._мар._апр._мая_июня_июля_авг._сент._окт._нояб._дек.'.split( - '_' - ), - standalone: - 'янв._февр._март_апр._май_июнь_июль_авг._сент._окт._нояб._дек.'.split( - '_' - ), - }, - weekdays: { - standalone: - 'воскресенье_понедельник_вторник_среда_четверг_пятница_суббота'.split( - '_' - ), - format: 'воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу'.split( - '_' - ), - isFormat: /\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?] ?dddd/, - }, - weekdaysShort: 'вс_пн_вт_ср_чт_пт_сб'.split('_'), - weekdaysMin: 'вс_пн_вт_ср_чт_пт_сб'.split('_'), - monthsParse: monthsParse, - longMonthsParse: monthsParse, - shortMonthsParse: monthsParse, - - // полные названия с падежами, по три буквы, для некоторых, по 4 буквы, сокращения с точкой и без точки - monthsRegex: - /^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i, - - // копия предыдущего - monthsShortRegex: - /^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i, - - // полные названия с падежами - monthsStrictRegex: - /^(январ[яь]|феврал[яь]|марта?|апрел[яь]|ма[яй]|июн[яь]|июл[яь]|августа?|сентябр[яь]|октябр[яь]|ноябр[яь]|декабр[яь])/i, - - // Выражение, которое соответствует только сокращённым формам - monthsShortStrictRegex: - /^(янв\.|февр?\.|мар[т.]|апр\.|ма[яй]|июн[ья.]|июл[ья.]|авг\.|сент?\.|окт\.|нояб?\.|дек\.)/i, - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D MMMM YYYY г.', - LLL: 'D MMMM YYYY г., H:mm', - LLLL: 'dddd, D MMMM YYYY г., H:mm', - }, - calendar: { - sameDay: '[Сегодня, в] LT', - nextDay: '[Завтра, в] LT', - lastDay: '[Вчера, в] LT', - nextWeek: function (now) { - if (now.week() !== this.week()) { - switch (this.day()) { - case 0: - return '[В следующее] dddd, [в] LT'; - case 1: - case 2: - case 4: - return '[В следующий] dddd, [в] LT'; - case 3: - case 5: - case 6: - return '[В следующую] dddd, [в] LT'; - } - } else { - if (this.day() === 2) { - return '[Во] dddd, [в] LT'; - } else { - return '[В] dddd, [в] LT'; - } - } - }, - lastWeek: function (now) { - if (now.week() !== this.week()) { - switch (this.day()) { - case 0: - return '[В прошлое] dddd, [в] LT'; - case 1: - case 2: - case 4: - return '[В прошлый] dddd, [в] LT'; - case 3: - case 5: - case 6: - return '[В прошлую] dddd, [в] LT'; - } - } else { - if (this.day() === 2) { - return '[Во] dddd, [в] LT'; - } else { - return '[В] dddd, [в] LT'; - } - } - }, - sameElse: 'L', - }, - relativeTime: { - future: 'через %s', - past: '%s назад', - s: 'несколько секунд', - ss: relativeTimeWithPlural, - m: relativeTimeWithPlural, - mm: relativeTimeWithPlural, - h: 'час', - hh: relativeTimeWithPlural, - d: 'день', - dd: relativeTimeWithPlural, - w: 'неделя', - ww: relativeTimeWithPlural, - M: 'месяц', - MM: relativeTimeWithPlural, - y: 'год', - yy: relativeTimeWithPlural, - }, - meridiemParse: /ночи|утра|дня|вечера/i, - isPM: function (input) { - return /^(дня|вечера)$/.test(input); - }, - meridiem: function (hour, minute, isLower) { - if (hour < 4) { - return 'ночи'; - } else if (hour < 12) { - return 'утра'; - } else if (hour < 17) { - return 'дня'; - } else { - return 'вечера'; - } - }, - dayOfMonthOrdinalParse: /\d{1,2}-(й|го|я)/, - ordinal: function (number, period) { - switch (period) { - case 'M': - case 'd': - case 'DDD': - return number + '-й'; - case 'D': - return number + '-го'; - case 'w': - case 'W': - return number + '-я'; - default: - return number; - } - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return ru; - -}))); - - -/***/ }), - -/***/ 1221: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Sindhi [sd] -//! author : Narain Sagar : https://github.com/narainsagar - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var months = [ - 'جنوري', - 'فيبروري', - 'مارچ', - 'اپريل', - 'مئي', - 'جون', - 'جولاءِ', - 'آگسٽ', - 'سيپٽمبر', - 'آڪٽوبر', - 'نومبر', - 'ڊسمبر', - ], - days = ['آچر', 'سومر', 'اڱارو', 'اربع', 'خميس', 'جمع', 'ڇنڇر']; - - var sd = moment.defineLocale('sd', { - months: months, - monthsShort: months, - weekdays: days, - weekdaysShort: days, - weekdaysMin: days, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd، D MMMM YYYY HH:mm', - }, - meridiemParse: /صبح|شام/, - isPM: function (input) { - return 'شام' === input; - }, - meridiem: function (hour, minute, isLower) { - if (hour < 12) { - return 'صبح'; - } - return 'شام'; - }, - calendar: { - sameDay: '[اڄ] LT', - nextDay: '[سڀاڻي] LT', - nextWeek: 'dddd [اڳين هفتي تي] LT', - lastDay: '[ڪالهه] LT', - lastWeek: '[گزريل هفتي] dddd [تي] LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s پوء', - past: '%s اڳ', - s: 'چند سيڪنڊ', - ss: '%d سيڪنڊ', - m: 'هڪ منٽ', - mm: '%d منٽ', - h: 'هڪ ڪلاڪ', - hh: '%d ڪلاڪ', - d: 'هڪ ڏينهن', - dd: '%d ڏينهن', - M: 'هڪ مهينو', - MM: '%d مهينا', - y: 'هڪ سال', - yy: '%d سال', - }, - preparse: function (string) { - return string.replace(/،/g, ','); - }, - postformat: function (string) { - return string.replace(/,/g, '،'); - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return sd; - -}))); - - -/***/ }), - -/***/ 33478: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Northern Sami [se] -//! authors : Bård Rolstad Henriksen : https://github.com/karamell - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var se = moment.defineLocale('se', { - months: 'ođđajagemánnu_guovvamánnu_njukčamánnu_cuoŋománnu_miessemánnu_geassemánnu_suoidnemánnu_borgemánnu_čakčamánnu_golggotmánnu_skábmamánnu_juovlamánnu'.split( - '_' - ), - monthsShort: - 'ođđj_guov_njuk_cuo_mies_geas_suoi_borg_čakč_golg_skáb_juov'.split('_'), - weekdays: - 'sotnabeaivi_vuossárga_maŋŋebárga_gaskavahkku_duorastat_bearjadat_lávvardat'.split( - '_' - ), - weekdaysShort: 'sotn_vuos_maŋ_gask_duor_bear_láv'.split('_'), - weekdaysMin: 's_v_m_g_d_b_L'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'MMMM D. [b.] YYYY', - LLL: 'MMMM D. [b.] YYYY [ti.] HH:mm', - LLLL: 'dddd, MMMM D. [b.] YYYY [ti.] HH:mm', - }, - calendar: { - sameDay: '[otne ti] LT', - nextDay: '[ihttin ti] LT', - nextWeek: 'dddd [ti] LT', - lastDay: '[ikte ti] LT', - lastWeek: '[ovddit] dddd [ti] LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s geažes', - past: 'maŋit %s', - s: 'moadde sekunddat', - ss: '%d sekunddat', - m: 'okta minuhta', - mm: '%d minuhtat', - h: 'okta diimmu', - hh: '%d diimmut', - d: 'okta beaivi', - dd: '%d beaivvit', - M: 'okta mánnu', - MM: '%d mánut', - y: 'okta jahki', - yy: '%d jagit', - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return se; - -}))); - - -/***/ }), - -/***/ 17538: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Sinhalese [si] -//! author : Sampath Sitinamaluwa : https://github.com/sampathsris - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - /*jshint -W100*/ - var si = moment.defineLocale('si', { - months: 'ජනවාරි_පෙබරවාරි_මාර්තු_අප්‍රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්'.split( - '_' - ), - monthsShort: 'ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ'.split( - '_' - ), - weekdays: - 'ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්‍රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා'.split( - '_' - ), - weekdaysShort: 'ඉරි_සඳු_අඟ_බදා_බ්‍රහ_සිකු_සෙන'.split('_'), - weekdaysMin: 'ඉ_ස_අ_බ_බ්‍ර_සි_සෙ'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'a h:mm', - LTS: 'a h:mm:ss', - L: 'YYYY/MM/DD', - LL: 'YYYY MMMM D', - LLL: 'YYYY MMMM D, a h:mm', - LLLL: 'YYYY MMMM D [වැනි] dddd, a h:mm:ss', - }, - calendar: { - sameDay: '[අද] LT[ට]', - nextDay: '[හෙට] LT[ට]', - nextWeek: 'dddd LT[ට]', - lastDay: '[ඊයේ] LT[ට]', - lastWeek: '[පසුගිය] dddd LT[ට]', - sameElse: 'L', - }, - relativeTime: { - future: '%sකින්', - past: '%sකට පෙර', - s: 'තත්පර කිහිපය', - ss: 'තත්පර %d', - m: 'මිනිත්තුව', - mm: 'මිනිත්තු %d', - h: 'පැය', - hh: 'පැය %d', - d: 'දිනය', - dd: 'දින %d', - M: 'මාසය', - MM: 'මාස %d', - y: 'වසර', - yy: 'වසර %d', - }, - dayOfMonthOrdinalParse: /\d{1,2} වැනි/, - ordinal: function (number) { - return number + ' වැනි'; - }, - meridiemParse: /පෙර වරු|පස් වරු|පෙ.ව|ප.ව./, - isPM: function (input) { - return input === 'ප.ව.' || input === 'පස් වරු'; - }, - meridiem: function (hours, minutes, isLower) { - if (hours > 11) { - return isLower ? 'ප.ව.' : 'පස් වරු'; - } else { - return isLower ? 'පෙ.ව.' : 'පෙර වරු'; - } - }, - }); - - return si; - -}))); - - -/***/ }), - -/***/ 5784: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Slovak [sk] -//! author : Martin Minka : https://github.com/k2s -//! based on work of petrbela : https://github.com/petrbela - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var months = - 'január_február_marec_apríl_máj_jún_júl_august_september_október_november_december'.split( - '_' - ), - monthsShort = 'jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec'.split('_'); - function plural(n) { - return n > 1 && n < 5; - } - function translate(number, withoutSuffix, key, isFuture) { - var result = number + ' '; - switch (key) { - case 's': // a few seconds / in a few seconds / a few seconds ago - return withoutSuffix || isFuture ? 'pár sekúnd' : 'pár sekundami'; - case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago - if (withoutSuffix || isFuture) { - return result + (plural(number) ? 'sekundy' : 'sekúnd'); - } else { - return result + 'sekundami'; - } - case 'm': // a minute / in a minute / a minute ago - return withoutSuffix ? 'minúta' : isFuture ? 'minútu' : 'minútou'; - case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago - if (withoutSuffix || isFuture) { - return result + (plural(number) ? 'minúty' : 'minút'); - } else { - return result + 'minútami'; - } - case 'h': // an hour / in an hour / an hour ago - return withoutSuffix ? 'hodina' : isFuture ? 'hodinu' : 'hodinou'; - case 'hh': // 9 hours / in 9 hours / 9 hours ago - if (withoutSuffix || isFuture) { - return result + (plural(number) ? 'hodiny' : 'hodín'); - } else { - return result + 'hodinami'; - } - case 'd': // a day / in a day / a day ago - return withoutSuffix || isFuture ? 'deň' : 'dňom'; - case 'dd': // 9 days / in 9 days / 9 days ago - if (withoutSuffix || isFuture) { - return result + (plural(number) ? 'dni' : 'dní'); - } else { - return result + 'dňami'; - } - case 'M': // a month / in a month / a month ago - return withoutSuffix || isFuture ? 'mesiac' : 'mesiacom'; - case 'MM': // 9 months / in 9 months / 9 months ago - if (withoutSuffix || isFuture) { - return result + (plural(number) ? 'mesiace' : 'mesiacov'); - } else { - return result + 'mesiacmi'; - } - case 'y': // a year / in a year / a year ago - return withoutSuffix || isFuture ? 'rok' : 'rokom'; - case 'yy': // 9 years / in 9 years / 9 years ago - if (withoutSuffix || isFuture) { - return result + (plural(number) ? 'roky' : 'rokov'); - } else { - return result + 'rokmi'; - } - } - } - - var sk = moment.defineLocale('sk', { - months: months, - monthsShort: monthsShort, - weekdays: 'nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota'.split('_'), - weekdaysShort: 'ne_po_ut_st_št_pi_so'.split('_'), - weekdaysMin: 'ne_po_ut_st_št_pi_so'.split('_'), - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D. MMMM YYYY', - LLL: 'D. MMMM YYYY H:mm', - LLLL: 'dddd D. MMMM YYYY H:mm', - }, - calendar: { - sameDay: '[dnes o] LT', - nextDay: '[zajtra o] LT', - nextWeek: function () { - switch (this.day()) { - case 0: - return '[v nedeľu o] LT'; - case 1: - case 2: - return '[v] dddd [o] LT'; - case 3: - return '[v stredu o] LT'; - case 4: - return '[vo štvrtok o] LT'; - case 5: - return '[v piatok o] LT'; - case 6: - return '[v sobotu o] LT'; - } - }, - lastDay: '[včera o] LT', - lastWeek: function () { - switch (this.day()) { - case 0: - return '[minulú nedeľu o] LT'; - case 1: - case 2: - return '[minulý] dddd [o] LT'; - case 3: - return '[minulú stredu o] LT'; - case 4: - case 5: - return '[minulý] dddd [o] LT'; - case 6: - return '[minulú sobotu o] LT'; - } - }, - sameElse: 'L', - }, - relativeTime: { - future: 'za %s', - past: 'pred %s', - s: translate, - ss: translate, - m: translate, - mm: translate, - h: translate, - hh: translate, - d: translate, - dd: translate, - M: translate, - MM: translate, - y: translate, - yy: translate, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return sk; - -}))); - - -/***/ }), - -/***/ 46637: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Slovenian [sl] -//! author : Robert Sedovšek : https://github.com/sedovsek - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function processRelativeTime(number, withoutSuffix, key, isFuture) { - var result = number + ' '; - switch (key) { - case 's': - return withoutSuffix || isFuture - ? 'nekaj sekund' - : 'nekaj sekundami'; - case 'ss': - if (number === 1) { - result += withoutSuffix ? 'sekundo' : 'sekundi'; - } else if (number === 2) { - result += withoutSuffix || isFuture ? 'sekundi' : 'sekundah'; - } else if (number < 5) { - result += withoutSuffix || isFuture ? 'sekunde' : 'sekundah'; - } else { - result += 'sekund'; - } - return result; - case 'm': - return withoutSuffix ? 'ena minuta' : 'eno minuto'; - case 'mm': - if (number === 1) { - result += withoutSuffix ? 'minuta' : 'minuto'; - } else if (number === 2) { - result += withoutSuffix || isFuture ? 'minuti' : 'minutama'; - } else if (number < 5) { - result += withoutSuffix || isFuture ? 'minute' : 'minutami'; - } else { - result += withoutSuffix || isFuture ? 'minut' : 'minutami'; - } - return result; - case 'h': - return withoutSuffix ? 'ena ura' : 'eno uro'; - case 'hh': - if (number === 1) { - result += withoutSuffix ? 'ura' : 'uro'; - } else if (number === 2) { - result += withoutSuffix || isFuture ? 'uri' : 'urama'; - } else if (number < 5) { - result += withoutSuffix || isFuture ? 'ure' : 'urami'; - } else { - result += withoutSuffix || isFuture ? 'ur' : 'urami'; - } - return result; - case 'd': - return withoutSuffix || isFuture ? 'en dan' : 'enim dnem'; - case 'dd': - if (number === 1) { - result += withoutSuffix || isFuture ? 'dan' : 'dnem'; - } else if (number === 2) { - result += withoutSuffix || isFuture ? 'dni' : 'dnevoma'; - } else { - result += withoutSuffix || isFuture ? 'dni' : 'dnevi'; - } - return result; - case 'M': - return withoutSuffix || isFuture ? 'en mesec' : 'enim mesecem'; - case 'MM': - if (number === 1) { - result += withoutSuffix || isFuture ? 'mesec' : 'mesecem'; - } else if (number === 2) { - result += withoutSuffix || isFuture ? 'meseca' : 'mesecema'; - } else if (number < 5) { - result += withoutSuffix || isFuture ? 'mesece' : 'meseci'; - } else { - result += withoutSuffix || isFuture ? 'mesecev' : 'meseci'; - } - return result; - case 'y': - return withoutSuffix || isFuture ? 'eno leto' : 'enim letom'; - case 'yy': - if (number === 1) { - result += withoutSuffix || isFuture ? 'leto' : 'letom'; - } else if (number === 2) { - result += withoutSuffix || isFuture ? 'leti' : 'letoma'; - } else if (number < 5) { - result += withoutSuffix || isFuture ? 'leta' : 'leti'; - } else { - result += withoutSuffix || isFuture ? 'let' : 'leti'; - } - return result; - } - } - - var sl = moment.defineLocale('sl', { - months: 'januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december'.split( - '_' - ), - monthsShort: - 'jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.'.split( - '_' - ), - monthsParseExact: true, - weekdays: 'nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota'.split('_'), - weekdaysShort: 'ned._pon._tor._sre._čet._pet._sob.'.split('_'), - weekdaysMin: 'ne_po_to_sr_če_pe_so'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'DD. MM. YYYY', - LL: 'D. MMMM YYYY', - LLL: 'D. MMMM YYYY H:mm', - LLLL: 'dddd, D. MMMM YYYY H:mm', - }, - calendar: { - sameDay: '[danes ob] LT', - nextDay: '[jutri ob] LT', - - nextWeek: function () { - switch (this.day()) { - case 0: - return '[v] [nedeljo] [ob] LT'; - case 3: - return '[v] [sredo] [ob] LT'; - case 6: - return '[v] [soboto] [ob] LT'; - case 1: - case 2: - case 4: - case 5: - return '[v] dddd [ob] LT'; - } - }, - lastDay: '[včeraj ob] LT', - lastWeek: function () { - switch (this.day()) { - case 0: - return '[prejšnjo] [nedeljo] [ob] LT'; - case 3: - return '[prejšnjo] [sredo] [ob] LT'; - case 6: - return '[prejšnjo] [soboto] [ob] LT'; - case 1: - case 2: - case 4: - case 5: - return '[prejšnji] dddd [ob] LT'; - } - }, - sameElse: 'L', - }, - relativeTime: { - future: 'čez %s', - past: 'pred %s', - s: processRelativeTime, - ss: processRelativeTime, - m: processRelativeTime, - mm: processRelativeTime, - h: processRelativeTime, - hh: processRelativeTime, - d: processRelativeTime, - dd: processRelativeTime, - M: processRelativeTime, - MM: processRelativeTime, - y: processRelativeTime, - yy: processRelativeTime, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return sl; - -}))); - - -/***/ }), - -/***/ 86794: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Albanian [sq] -//! author : Flakërim Ismani : https://github.com/flakerimi -//! author : Menelion Elensúle : https://github.com/Oire -//! author : Oerd Cukalla : https://github.com/oerd - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var sq = moment.defineLocale('sq', { - months: 'Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor'.split( - '_' - ), - monthsShort: 'Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj'.split('_'), - weekdays: 'E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë'.split( - '_' - ), - weekdaysShort: 'Die_Hën_Mar_Mër_Enj_Pre_Sht'.split('_'), - weekdaysMin: 'D_H_Ma_Më_E_P_Sh'.split('_'), - weekdaysParseExact: true, - meridiemParse: /PD|MD/, - isPM: function (input) { - return input.charAt(0) === 'M'; - }, - meridiem: function (hours, minutes, isLower) { - return hours < 12 ? 'PD' : 'MD'; - }, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Sot në] LT', - nextDay: '[Nesër në] LT', - nextWeek: 'dddd [në] LT', - lastDay: '[Dje në] LT', - lastWeek: 'dddd [e kaluar në] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'në %s', - past: '%s më parë', - s: 'disa sekonda', - ss: '%d sekonda', - m: 'një minutë', - mm: '%d minuta', - h: 'një orë', - hh: '%d orë', - d: 'një ditë', - dd: '%d ditë', - M: 'një muaj', - MM: '%d muaj', - y: 'një vit', - yy: '%d vite', - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return sq; - -}))); - - -/***/ }), - -/***/ 3322: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Serbian Cyrillic [sr-cyrl] -//! author : Milan Janačković : https://github.com/milan-j -//! author : Stefan Crnjaković : https://github.com/crnjakovic - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var translator = { - words: { - //Different grammatical cases - ss: ['секунда', 'секунде', 'секунди'], - m: ['један минут', 'једног минута'], - mm: ['минут', 'минута', 'минута'], - h: ['један сат', 'једног сата'], - hh: ['сат', 'сата', 'сати'], - d: ['један дан', 'једног дана'], - dd: ['дан', 'дана', 'дана'], - M: ['један месец', 'једног месеца'], - MM: ['месец', 'месеца', 'месеци'], - y: ['једну годину', 'једне године'], - yy: ['годину', 'године', 'година'], - }, - correctGrammaticalCase: function (number, wordKey) { - if ( - number % 10 >= 1 && - number % 10 <= 4 && - (number % 100 < 10 || number % 100 >= 20) - ) { - return number % 10 === 1 ? wordKey[0] : wordKey[1]; - } - return wordKey[2]; - }, - translate: function (number, withoutSuffix, key, isFuture) { - var wordKey = translator.words[key], - word; - - if (key.length === 1) { - // Nominativ - if (key === 'y' && withoutSuffix) return 'једна година'; - return isFuture || withoutSuffix ? wordKey[0] : wordKey[1]; - } - - word = translator.correctGrammaticalCase(number, wordKey); - // Nominativ - if (key === 'yy' && withoutSuffix && word === 'годину') { - return number + ' година'; - } - - return number + ' ' + word; - }, - }; - - var srCyrl = moment.defineLocale('sr-cyrl', { - months: 'јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар'.split( - '_' - ), - monthsShort: - 'јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.'.split('_'), - monthsParseExact: true, - weekdays: 'недеља_понедељак_уторак_среда_четвртак_петак_субота'.split('_'), - weekdaysShort: 'нед._пон._уто._сре._чет._пет._суб.'.split('_'), - weekdaysMin: 'не_по_ут_ср_че_пе_су'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'D. M. YYYY.', - LL: 'D. MMMM YYYY.', - LLL: 'D. MMMM YYYY. H:mm', - LLLL: 'dddd, D. MMMM YYYY. H:mm', - }, - calendar: { - sameDay: '[данас у] LT', - nextDay: '[сутра у] LT', - nextWeek: function () { - switch (this.day()) { - case 0: - return '[у] [недељу] [у] LT'; - case 3: - return '[у] [среду] [у] LT'; - case 6: - return '[у] [суботу] [у] LT'; - case 1: - case 2: - case 4: - case 5: - return '[у] dddd [у] LT'; - } - }, - lastDay: '[јуче у] LT', - lastWeek: function () { - var lastWeekDays = [ - '[прошле] [недеље] [у] LT', - '[прошлог] [понедељка] [у] LT', - '[прошлог] [уторка] [у] LT', - '[прошле] [среде] [у] LT', - '[прошлог] [четвртка] [у] LT', - '[прошлог] [петка] [у] LT', - '[прошле] [суботе] [у] LT', - ]; - return lastWeekDays[this.day()]; - }, - sameElse: 'L', - }, - relativeTime: { - future: 'за %s', - past: 'пре %s', - s: 'неколико секунди', - ss: translator.translate, - m: translator.translate, - mm: translator.translate, - h: translator.translate, - hh: translator.translate, - d: translator.translate, - dd: translator.translate, - M: translator.translate, - MM: translator.translate, - y: translator.translate, - yy: translator.translate, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 1st is the first week of the year. - }, - }); - - return srCyrl; - -}))); - - -/***/ }), - -/***/ 45719: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Serbian [sr] -//! author : Milan Janačković : https://github.com/milan-j -//! author : Stefan Crnjaković : https://github.com/crnjakovic - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var translator = { - words: { - //Different grammatical cases - ss: ['sekunda', 'sekunde', 'sekundi'], - m: ['jedan minut', 'jednog minuta'], - mm: ['minut', 'minuta', 'minuta'], - h: ['jedan sat', 'jednog sata'], - hh: ['sat', 'sata', 'sati'], - d: ['jedan dan', 'jednog dana'], - dd: ['dan', 'dana', 'dana'], - M: ['jedan mesec', 'jednog meseca'], - MM: ['mesec', 'meseca', 'meseci'], - y: ['jednu godinu', 'jedne godine'], - yy: ['godinu', 'godine', 'godina'], - }, - correctGrammaticalCase: function (number, wordKey) { - if ( - number % 10 >= 1 && - number % 10 <= 4 && - (number % 100 < 10 || number % 100 >= 20) - ) { - return number % 10 === 1 ? wordKey[0] : wordKey[1]; - } - return wordKey[2]; - }, - translate: function (number, withoutSuffix, key, isFuture) { - var wordKey = translator.words[key], - word; - - if (key.length === 1) { - // Nominativ - if (key === 'y' && withoutSuffix) return 'jedna godina'; - return isFuture || withoutSuffix ? wordKey[0] : wordKey[1]; - } - - word = translator.correctGrammaticalCase(number, wordKey); - // Nominativ - if (key === 'yy' && withoutSuffix && word === 'godinu') { - return number + ' godina'; - } - - return number + ' ' + word; - }, - }; - - var sr = moment.defineLocale('sr', { - months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split( - '_' - ), - monthsShort: - 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'), - monthsParseExact: true, - weekdays: 'nedelja_ponedeljak_utorak_sreda_četvrtak_petak_subota'.split( - '_' - ), - weekdaysShort: 'ned._pon._uto._sre._čet._pet._sub.'.split('_'), - weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'D. M. YYYY.', - LL: 'D. MMMM YYYY.', - LLL: 'D. MMMM YYYY. H:mm', - LLLL: 'dddd, D. MMMM YYYY. H:mm', - }, - calendar: { - sameDay: '[danas u] LT', - nextDay: '[sutra u] LT', - nextWeek: function () { - switch (this.day()) { - case 0: - return '[u] [nedelju] [u] LT'; - case 3: - return '[u] [sredu] [u] LT'; - case 6: - return '[u] [subotu] [u] LT'; - case 1: - case 2: - case 4: - case 5: - return '[u] dddd [u] LT'; - } - }, - lastDay: '[juče u] LT', - lastWeek: function () { - var lastWeekDays = [ - '[prošle] [nedelje] [u] LT', - '[prošlog] [ponedeljka] [u] LT', - '[prošlog] [utorka] [u] LT', - '[prošle] [srede] [u] LT', - '[prošlog] [četvrtka] [u] LT', - '[prošlog] [petka] [u] LT', - '[prošle] [subote] [u] LT', - ]; - return lastWeekDays[this.day()]; - }, - sameElse: 'L', - }, - relativeTime: { - future: 'za %s', - past: 'pre %s', - s: 'nekoliko sekundi', - ss: translator.translate, - m: translator.translate, - mm: translator.translate, - h: translator.translate, - hh: translator.translate, - d: translator.translate, - dd: translator.translate, - M: translator.translate, - MM: translator.translate, - y: translator.translate, - yy: translator.translate, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return sr; - -}))); - - -/***/ }), - -/***/ 56000: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : siSwati [ss] -//! author : Nicolai Davies : https://github.com/nicolaidavies - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var ss = moment.defineLocale('ss', { - months: "Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni".split( - '_' - ), - monthsShort: 'Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo'.split('_'), - weekdays: - 'Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo'.split( - '_' - ), - weekdaysShort: 'Lis_Umb_Lsb_Les_Lsi_Lsh_Umg'.split('_'), - weekdaysMin: 'Li_Us_Lb_Lt_Ls_Lh_Ug'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'h:mm A', - LTS: 'h:mm:ss A', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY h:mm A', - LLLL: 'dddd, D MMMM YYYY h:mm A', - }, - calendar: { - sameDay: '[Namuhla nga] LT', - nextDay: '[Kusasa nga] LT', - nextWeek: 'dddd [nga] LT', - lastDay: '[Itolo nga] LT', - lastWeek: 'dddd [leliphelile] [nga] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'nga %s', - past: 'wenteka nga %s', - s: 'emizuzwana lomcane', - ss: '%d mzuzwana', - m: 'umzuzu', - mm: '%d emizuzu', - h: 'lihora', - hh: '%d emahora', - d: 'lilanga', - dd: '%d emalanga', - M: 'inyanga', - MM: '%d tinyanga', - y: 'umnyaka', - yy: '%d iminyaka', - }, - meridiemParse: /ekuseni|emini|entsambama|ebusuku/, - meridiem: function (hours, minutes, isLower) { - if (hours < 11) { - return 'ekuseni'; - } else if (hours < 15) { - return 'emini'; - } else if (hours < 19) { - return 'entsambama'; - } else { - return 'ebusuku'; - } - }, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === 'ekuseni') { - return hour; - } else if (meridiem === 'emini') { - return hour >= 11 ? hour : hour + 12; - } else if (meridiem === 'entsambama' || meridiem === 'ebusuku') { - if (hour === 0) { - return 0; - } - return hour + 12; - } - }, - dayOfMonthOrdinalParse: /\d{1,2}/, - ordinal: '%d', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return ss; - -}))); - - -/***/ }), - -/***/ 41011: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Swedish [sv] -//! author : Jens Alm : https://github.com/ulmus - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var sv = moment.defineLocale('sv', { - months: 'januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december'.split( - '_' - ), - monthsShort: 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'), - weekdays: 'söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag'.split('_'), - weekdaysShort: 'sön_mån_tis_ons_tor_fre_lör'.split('_'), - weekdaysMin: 'sö_må_ti_on_to_fr_lö'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'YYYY-MM-DD', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY [kl.] HH:mm', - LLLL: 'dddd D MMMM YYYY [kl.] HH:mm', - lll: 'D MMM YYYY HH:mm', - llll: 'ddd D MMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Idag] LT', - nextDay: '[Imorgon] LT', - lastDay: '[Igår] LT', - nextWeek: '[På] dddd LT', - lastWeek: '[I] dddd[s] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'om %s', - past: 'för %s sedan', - s: 'några sekunder', - ss: '%d sekunder', - m: 'en minut', - mm: '%d minuter', - h: 'en timme', - hh: '%d timmar', - d: 'en dag', - dd: '%d dagar', - M: 'en månad', - MM: '%d månader', - y: 'ett år', - yy: '%d år', - }, - dayOfMonthOrdinalParse: /\d{1,2}(\:e|\:a)/, - ordinal: function (number) { - var b = number % 10, - output = - ~~((number % 100) / 10) === 1 - ? ':e' - : b === 1 - ? ':a' - : b === 2 - ? ':a' - : b === 3 - ? ':e' - : ':e'; - return number + output; - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return sv; - -}))); - - -/***/ }), - -/***/ 40748: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Swahili [sw] -//! author : Fahad Kassim : https://github.com/fadsel - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var sw = moment.defineLocale('sw', { - months: 'Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba'.split( - '_' - ), - monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des'.split('_'), - weekdays: - 'Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi'.split( - '_' - ), - weekdaysShort: 'Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos'.split('_'), - weekdaysMin: 'J2_J3_J4_J5_Al_Ij_J1'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'hh:mm A', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[leo saa] LT', - nextDay: '[kesho saa] LT', - nextWeek: '[wiki ijayo] dddd [saat] LT', - lastDay: '[jana] LT', - lastWeek: '[wiki iliyopita] dddd [saat] LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s baadaye', - past: 'tokea %s', - s: 'hivi punde', - ss: 'sekunde %d', - m: 'dakika moja', - mm: 'dakika %d', - h: 'saa limoja', - hh: 'masaa %d', - d: 'siku moja', - dd: 'siku %d', - M: 'mwezi mmoja', - MM: 'miezi %d', - y: 'mwaka mmoja', - yy: 'miaka %d', - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return sw; - -}))); - - -/***/ }), - -/***/ 11025: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Tamil [ta] -//! author : Arjunkumar Krishnamoorthy : https://github.com/tk120404 - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var symbolMap = { - 1: '௧', - 2: '௨', - 3: '௩', - 4: '௪', - 5: '௫', - 6: '௬', - 7: '௭', - 8: '௮', - 9: '௯', - 0: '௦', - }, - numberMap = { - '௧': '1', - '௨': '2', - '௩': '3', - '௪': '4', - '௫': '5', - '௬': '6', - '௭': '7', - '௮': '8', - '௯': '9', - '௦': '0', - }; - - var ta = moment.defineLocale('ta', { - months: 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split( - '_' - ), - monthsShort: - 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split( - '_' - ), - weekdays: - 'ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை'.split( - '_' - ), - weekdaysShort: 'ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி'.split( - '_' - ), - weekdaysMin: 'ஞா_தி_செ_பு_வி_வெ_ச'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY, HH:mm', - LLLL: 'dddd, D MMMM YYYY, HH:mm', - }, - calendar: { - sameDay: '[இன்று] LT', - nextDay: '[நாளை] LT', - nextWeek: 'dddd, LT', - lastDay: '[நேற்று] LT', - lastWeek: '[கடந்த வாரம்] dddd, LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s இல்', - past: '%s முன்', - s: 'ஒரு சில விநாடிகள்', - ss: '%d விநாடிகள்', - m: 'ஒரு நிமிடம்', - mm: '%d நிமிடங்கள்', - h: 'ஒரு மணி நேரம்', - hh: '%d மணி நேரம்', - d: 'ஒரு நாள்', - dd: '%d நாட்கள்', - M: 'ஒரு மாதம்', - MM: '%d மாதங்கள்', - y: 'ஒரு வருடம்', - yy: '%d ஆண்டுகள்', - }, - dayOfMonthOrdinalParse: /\d{1,2}வது/, - ordinal: function (number) { - return number + 'வது'; - }, - preparse: function (string) { - return string.replace(/[௧௨௩௪௫௬௭௮௯௦]/g, function (match) { - return numberMap[match]; - }); - }, - postformat: function (string) { - return string.replace(/\d/g, function (match) { - return symbolMap[match]; - }); - }, - // refer http://ta.wikipedia.org/s/1er1 - meridiemParse: /யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/, - meridiem: function (hour, minute, isLower) { - if (hour < 2) { - return ' யாமம்'; - } else if (hour < 6) { - return ' வைகறை'; // வைகறை - } else if (hour < 10) { - return ' காலை'; // காலை - } else if (hour < 14) { - return ' நண்பகல்'; // நண்பகல் - } else if (hour < 18) { - return ' எற்பாடு'; // எற்பாடு - } else if (hour < 22) { - return ' மாலை'; // மாலை - } else { - return ' யாமம்'; - } - }, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === 'யாமம்') { - return hour < 2 ? hour : hour + 12; - } else if (meridiem === 'வைகறை' || meridiem === 'காலை') { - return hour; - } else if (meridiem === 'நண்பகல்') { - return hour >= 10 ? hour : hour + 12; - } else { - return hour + 12; - } - }, - week: { - dow: 0, // Sunday is the first day of the week. - doy: 6, // The week that contains Jan 6th is the first week of the year. - }, - }); - - return ta; - -}))); - - -/***/ }), - -/***/ 11885: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Telugu [te] -//! author : Krishna Chaitanya Thota : https://github.com/kcthota - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var te = moment.defineLocale('te', { - months: 'జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జులై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్'.split( - '_' - ), - monthsShort: - 'జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జులై_ఆగ._సెప్._అక్టో._నవ._డిసె.'.split( - '_' - ), - monthsParseExact: true, - weekdays: - 'ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం'.split( - '_' - ), - weekdaysShort: 'ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని'.split('_'), - weekdaysMin: 'ఆ_సో_మం_బు_గు_శు_శ'.split('_'), - longDateFormat: { - LT: 'A h:mm', - LTS: 'A h:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY, A h:mm', - LLLL: 'dddd, D MMMM YYYY, A h:mm', - }, - calendar: { - sameDay: '[నేడు] LT', - nextDay: '[రేపు] LT', - nextWeek: 'dddd, LT', - lastDay: '[నిన్న] LT', - lastWeek: '[గత] dddd, LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s లో', - past: '%s క్రితం', - s: 'కొన్ని క్షణాలు', - ss: '%d సెకన్లు', - m: 'ఒక నిమిషం', - mm: '%d నిమిషాలు', - h: 'ఒక గంట', - hh: '%d గంటలు', - d: 'ఒక రోజు', - dd: '%d రోజులు', - M: 'ఒక నెల', - MM: '%d నెలలు', - y: 'ఒక సంవత్సరం', - yy: '%d సంవత్సరాలు', - }, - dayOfMonthOrdinalParse: /\d{1,2}వ/, - ordinal: '%dవ', - meridiemParse: /రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === 'రాత్రి') { - return hour < 4 ? hour : hour + 12; - } else if (meridiem === 'ఉదయం') { - return hour; - } else if (meridiem === 'మధ్యాహ్నం') { - return hour >= 10 ? hour : hour + 12; - } else if (meridiem === 'సాయంత్రం') { - return hour + 12; - } - }, - meridiem: function (hour, minute, isLower) { - if (hour < 4) { - return 'రాత్రి'; - } else if (hour < 10) { - return 'ఉదయం'; - } else if (hour < 17) { - return 'మధ్యాహ్నం'; - } else if (hour < 20) { - return 'సాయంత్రం'; - } else { - return 'రాత్రి'; - } - }, - week: { - dow: 0, // Sunday is the first day of the week. - doy: 6, // The week that contains Jan 6th is the first week of the year. - }, - }); - - return te; - -}))); - - -/***/ }), - -/***/ 28861: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Tetun Dili (East Timor) [tet] -//! author : Joshua Brooks : https://github.com/joshbrooks -//! author : Onorio De J. Afonso : https://github.com/marobo -//! author : Sonia Simoes : https://github.com/soniasimoes - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var tet = moment.defineLocale('tet', { - months: 'Janeiru_Fevereiru_Marsu_Abril_Maiu_Juñu_Jullu_Agustu_Setembru_Outubru_Novembru_Dezembru'.split( - '_' - ), - monthsShort: 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'), - weekdays: 'Domingu_Segunda_Tersa_Kuarta_Kinta_Sesta_Sabadu'.split('_'), - weekdaysShort: 'Dom_Seg_Ters_Kua_Kint_Sest_Sab'.split('_'), - weekdaysMin: 'Do_Seg_Te_Ku_Ki_Ses_Sa'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Ohin iha] LT', - nextDay: '[Aban iha] LT', - nextWeek: 'dddd [iha] LT', - lastDay: '[Horiseik iha] LT', - lastWeek: 'dddd [semana kotuk] [iha] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'iha %s', - past: '%s liuba', - s: 'segundu balun', - ss: 'segundu %d', - m: 'minutu ida', - mm: 'minutu %d', - h: 'oras ida', - hh: 'oras %d', - d: 'loron ida', - dd: 'loron %d', - M: 'fulan ida', - MM: 'fulan %d', - y: 'tinan ida', - yy: 'tinan %d', - }, - dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/, - ordinal: function (number) { - var b = number % 10, - output = - ~~((number % 100) / 10) === 1 - ? 'th' - : b === 1 - ? 'st' - : b === 2 - ? 'nd' - : b === 3 - ? 'rd' - : 'th'; - return number + output; - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return tet; - -}))); - - -/***/ }), - -/***/ 86571: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Tajik [tg] -//! author : Orif N. Jr. : https://github.com/orif-jr - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var suffixes = { - 0: '-ум', - 1: '-ум', - 2: '-юм', - 3: '-юм', - 4: '-ум', - 5: '-ум', - 6: '-ум', - 7: '-ум', - 8: '-ум', - 9: '-ум', - 10: '-ум', - 12: '-ум', - 13: '-ум', - 20: '-ум', - 30: '-юм', - 40: '-ум', - 50: '-ум', - 60: '-ум', - 70: '-ум', - 80: '-ум', - 90: '-ум', - 100: '-ум', - }; - - var tg = moment.defineLocale('tg', { - months: { - format: 'январи_феврали_марти_апрели_майи_июни_июли_августи_сентябри_октябри_ноябри_декабри'.split( - '_' - ), - standalone: - 'январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр'.split( - '_' - ), - }, - monthsShort: 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'), - weekdays: 'якшанбе_душанбе_сешанбе_чоршанбе_панҷшанбе_ҷумъа_шанбе'.split( - '_' - ), - weekdaysShort: 'яшб_дшб_сшб_чшб_пшб_ҷум_шнб'.split('_'), - weekdaysMin: 'яш_дш_сш_чш_пш_ҷм_шб'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Имрӯз соати] LT', - nextDay: '[Фардо соати] LT', - lastDay: '[Дирӯз соати] LT', - nextWeek: 'dddd[и] [ҳафтаи оянда соати] LT', - lastWeek: 'dddd[и] [ҳафтаи гузашта соати] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'баъди %s', - past: '%s пеш', - s: 'якчанд сония', - m: 'як дақиқа', - mm: '%d дақиқа', - h: 'як соат', - hh: '%d соат', - d: 'як рӯз', - dd: '%d рӯз', - M: 'як моҳ', - MM: '%d моҳ', - y: 'як сол', - yy: '%d сол', - }, - meridiemParse: /шаб|субҳ|рӯз|бегоҳ/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === 'шаб') { - return hour < 4 ? hour : hour + 12; - } else if (meridiem === 'субҳ') { - return hour; - } else if (meridiem === 'рӯз') { - return hour >= 11 ? hour : hour + 12; - } else if (meridiem === 'бегоҳ') { - return hour + 12; - } - }, - meridiem: function (hour, minute, isLower) { - if (hour < 4) { - return 'шаб'; - } else if (hour < 11) { - return 'субҳ'; - } else if (hour < 16) { - return 'рӯз'; - } else if (hour < 19) { - return 'бегоҳ'; - } else { - return 'шаб'; - } - }, - dayOfMonthOrdinalParse: /\d{1,2}-(ум|юм)/, - ordinal: function (number) { - var a = number % 10, - b = number >= 100 ? 100 : null; - return number + (suffixes[number] || suffixes[a] || suffixes[b]); - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 1th is the first week of the year. - }, - }); - - return tg; - -}))); - - -/***/ }), - -/***/ 55802: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Thai [th] -//! author : Kridsada Thanabulpong : https://github.com/sirn - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var th = moment.defineLocale('th', { - months: 'มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม'.split( - '_' - ), - monthsShort: - 'ม.ค._ก.พ._มี.ค._เม.ย._พ.ค._มิ.ย._ก.ค._ส.ค._ก.ย._ต.ค._พ.ย._ธ.ค.'.split( - '_' - ), - monthsParseExact: true, - weekdays: 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์'.split('_'), - weekdaysShort: 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์'.split('_'), // yes, three characters difference - weekdaysMin: 'อา._จ._อ._พ._พฤ._ศ._ส.'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'H:mm', - LTS: 'H:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY เวลา H:mm', - LLLL: 'วันddddที่ D MMMM YYYY เวลา H:mm', - }, - meridiemParse: /ก่อนเที่ยง|หลังเที่ยง/, - isPM: function (input) { - return input === 'หลังเที่ยง'; - }, - meridiem: function (hour, minute, isLower) { - if (hour < 12) { - return 'ก่อนเที่ยง'; - } else { - return 'หลังเที่ยง'; - } - }, - calendar: { - sameDay: '[วันนี้ เวลา] LT', - nextDay: '[พรุ่งนี้ เวลา] LT', - nextWeek: 'dddd[หน้า เวลา] LT', - lastDay: '[เมื่อวานนี้ เวลา] LT', - lastWeek: '[วัน]dddd[ที่แล้ว เวลา] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'อีก %s', - past: '%sที่แล้ว', - s: 'ไม่กี่วินาที', - ss: '%d วินาที', - m: '1 นาที', - mm: '%d นาที', - h: '1 ชั่วโมง', - hh: '%d ชั่วโมง', - d: '1 วัน', - dd: '%d วัน', - w: '1 สัปดาห์', - ww: '%d สัปดาห์', - M: '1 เดือน', - MM: '%d เดือน', - y: '1 ปี', - yy: '%d ปี', - }, - }); - - return th; - -}))); - - -/***/ }), - -/***/ 59527: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Turkmen [tk] -//! author : Atamyrat Abdyrahmanov : https://github.com/atamyratabdy - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var suffixes = { - 1: "'inji", - 5: "'inji", - 8: "'inji", - 70: "'inji", - 80: "'inji", - 2: "'nji", - 7: "'nji", - 20: "'nji", - 50: "'nji", - 3: "'ünji", - 4: "'ünji", - 100: "'ünji", - 6: "'njy", - 9: "'unjy", - 10: "'unjy", - 30: "'unjy", - 60: "'ynjy", - 90: "'ynjy", - }; - - var tk = moment.defineLocale('tk', { - months: 'Ýanwar_Fewral_Mart_Aprel_Maý_Iýun_Iýul_Awgust_Sentýabr_Oktýabr_Noýabr_Dekabr'.split( - '_' - ), - monthsShort: 'Ýan_Few_Mar_Apr_Maý_Iýn_Iýl_Awg_Sen_Okt_Noý_Dek'.split('_'), - weekdays: 'Ýekşenbe_Duşenbe_Sişenbe_Çarşenbe_Penşenbe_Anna_Şenbe'.split( - '_' - ), - weekdaysShort: 'Ýek_Duş_Siş_Çar_Pen_Ann_Şen'.split('_'), - weekdaysMin: 'Ýk_Dş_Sş_Çr_Pn_An_Şn'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[bugün sagat] LT', - nextDay: '[ertir sagat] LT', - nextWeek: '[indiki] dddd [sagat] LT', - lastDay: '[düýn] LT', - lastWeek: '[geçen] dddd [sagat] LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s soň', - past: '%s öň', - s: 'birnäçe sekunt', - m: 'bir minut', - mm: '%d minut', - h: 'bir sagat', - hh: '%d sagat', - d: 'bir gün', - dd: '%d gün', - M: 'bir aý', - MM: '%d aý', - y: 'bir ýyl', - yy: '%d ýyl', - }, - ordinal: function (number, period) { - switch (period) { - case 'd': - case 'D': - case 'Do': - case 'DD': - return number; - default: - if (number === 0) { - // special case for zero - return number + "'unjy"; - } - var a = number % 10, - b = (number % 100) - a, - c = number >= 100 ? 100 : null; - return number + (suffixes[a] || suffixes[b] || suffixes[c]); - } - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return tk; - -}))); - - -/***/ }), - -/***/ 29231: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Tagalog (Philippines) [tl-ph] -//! author : Dan Hagman : https://github.com/hagmandan - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var tlPh = moment.defineLocale('tl-ph', { - months: 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split( - '_' - ), - monthsShort: 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'), - weekdays: 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split( - '_' - ), - weekdaysShort: 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'), - weekdaysMin: 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'MM/D/YYYY', - LL: 'MMMM D, YYYY', - LLL: 'MMMM D, YYYY HH:mm', - LLLL: 'dddd, MMMM DD, YYYY HH:mm', - }, - calendar: { - sameDay: 'LT [ngayong araw]', - nextDay: '[Bukas ng] LT', - nextWeek: 'LT [sa susunod na] dddd', - lastDay: 'LT [kahapon]', - lastWeek: 'LT [noong nakaraang] dddd', - sameElse: 'L', - }, - relativeTime: { - future: 'sa loob ng %s', - past: '%s ang nakalipas', - s: 'ilang segundo', - ss: '%d segundo', - m: 'isang minuto', - mm: '%d minuto', - h: 'isang oras', - hh: '%d oras', - d: 'isang araw', - dd: '%d araw', - M: 'isang buwan', - MM: '%d buwan', - y: 'isang taon', - yy: '%d taon', - }, - dayOfMonthOrdinalParse: /\d{1,2}/, - ordinal: function (number) { - return number; - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return tlPh; - -}))); - - -/***/ }), - -/***/ 31052: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Klingon [tlh] -//! author : Dominika Kruk : https://github.com/amaranthrose - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var numbersNouns = 'pagh_wa’_cha’_wej_loS_vagh_jav_Soch_chorgh_Hut'.split('_'); - - function translateFuture(output) { - var time = output; - time = - output.indexOf('jaj') !== -1 - ? time.slice(0, -3) + 'leS' - : output.indexOf('jar') !== -1 - ? time.slice(0, -3) + 'waQ' - : output.indexOf('DIS') !== -1 - ? time.slice(0, -3) + 'nem' - : time + ' pIq'; - return time; - } - - function translatePast(output) { - var time = output; - time = - output.indexOf('jaj') !== -1 - ? time.slice(0, -3) + 'Hu’' - : output.indexOf('jar') !== -1 - ? time.slice(0, -3) + 'wen' - : output.indexOf('DIS') !== -1 - ? time.slice(0, -3) + 'ben' - : time + ' ret'; - return time; - } - - function translate(number, withoutSuffix, string, isFuture) { - var numberNoun = numberAsNoun(number); - switch (string) { - case 'ss': - return numberNoun + ' lup'; - case 'mm': - return numberNoun + ' tup'; - case 'hh': - return numberNoun + ' rep'; - case 'dd': - return numberNoun + ' jaj'; - case 'MM': - return numberNoun + ' jar'; - case 'yy': - return numberNoun + ' DIS'; - } - } - - function numberAsNoun(number) { - var hundred = Math.floor((number % 1000) / 100), - ten = Math.floor((number % 100) / 10), - one = number % 10, - word = ''; - if (hundred > 0) { - word += numbersNouns[hundred] + 'vatlh'; - } - if (ten > 0) { - word += (word !== '' ? ' ' : '') + numbersNouns[ten] + 'maH'; - } - if (one > 0) { - word += (word !== '' ? ' ' : '') + numbersNouns[one]; - } - return word === '' ? 'pagh' : word; - } - - var tlh = moment.defineLocale('tlh', { - months: 'tera’ jar wa’_tera’ jar cha’_tera’ jar wej_tera’ jar loS_tera’ jar vagh_tera’ jar jav_tera’ jar Soch_tera’ jar chorgh_tera’ jar Hut_tera’ jar wa’maH_tera’ jar wa’maH wa’_tera’ jar wa’maH cha’'.split( - '_' - ), - monthsShort: - 'jar wa’_jar cha’_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa’maH_jar wa’maH wa’_jar wa’maH cha’'.split( - '_' - ), - monthsParseExact: true, - weekdays: 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split( - '_' - ), - weekdaysShort: - 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'), - weekdaysMin: - 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[DaHjaj] LT', - nextDay: '[wa’leS] LT', - nextWeek: 'LLL', - lastDay: '[wa’Hu’] LT', - lastWeek: 'LLL', - sameElse: 'L', - }, - relativeTime: { - future: translateFuture, - past: translatePast, - s: 'puS lup', - ss: translate, - m: 'wa’ tup', - mm: translate, - h: 'wa’ rep', - hh: translate, - d: 'wa’ jaj', - dd: translate, - M: 'wa’ jar', - MM: translate, - y: 'wa’ DIS', - yy: translate, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return tlh; - -}))); - - -/***/ }), - -/***/ 85096: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Turkish [tr] -//! authors : Erhan Gundogan : https://github.com/erhangundogan, -//! Burak Yiğit Kaya: https://github.com/BYK - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var suffixes = { - 1: "'inci", - 5: "'inci", - 8: "'inci", - 70: "'inci", - 80: "'inci", - 2: "'nci", - 7: "'nci", - 20: "'nci", - 50: "'nci", - 3: "'üncü", - 4: "'üncü", - 100: "'üncü", - 6: "'ncı", - 9: "'uncu", - 10: "'uncu", - 30: "'uncu", - 60: "'ıncı", - 90: "'ıncı", - }; - - var tr = moment.defineLocale('tr', { - months: 'Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık'.split( - '_' - ), - monthsShort: 'Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara'.split('_'), - weekdays: 'Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi'.split( - '_' - ), - weekdaysShort: 'Paz_Pzt_Sal_Çar_Per_Cum_Cmt'.split('_'), - weekdaysMin: 'Pz_Pt_Sa_Ça_Pe_Cu_Ct'.split('_'), - meridiem: function (hours, minutes, isLower) { - if (hours < 12) { - return isLower ? 'öö' : 'ÖÖ'; - } else { - return isLower ? 'ös' : 'ÖS'; - } - }, - meridiemParse: /öö|ÖÖ|ös|ÖS/, - isPM: function (input) { - return input === 'ös' || input === 'ÖS'; - }, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[bugün saat] LT', - nextDay: '[yarın saat] LT', - nextWeek: '[gelecek] dddd [saat] LT', - lastDay: '[dün] LT', - lastWeek: '[geçen] dddd [saat] LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s sonra', - past: '%s önce', - s: 'birkaç saniye', - ss: '%d saniye', - m: 'bir dakika', - mm: '%d dakika', - h: 'bir saat', - hh: '%d saat', - d: 'bir gün', - dd: '%d gün', - w: 'bir hafta', - ww: '%d hafta', - M: 'bir ay', - MM: '%d ay', - y: 'bir yıl', - yy: '%d yıl', - }, - ordinal: function (number, period) { - switch (period) { - case 'd': - case 'D': - case 'Do': - case 'DD': - return number; - default: - if (number === 0) { - // special case for zero - return number + "'ıncı"; - } - var a = number % 10, - b = (number % 100) - a, - c = number >= 100 ? 100 : null; - return number + (suffixes[a] || suffixes[b] || suffixes[c]); - } - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return tr; - -}))); - - -/***/ }), - -/***/ 79846: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Talossan [tzl] -//! author : Robin van der Vliet : https://github.com/robin0van0der0v -//! author : Iustì Canun - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - // After the year there should be a slash and the amount of years since December 26, 1979 in Roman numerals. - // This is currently too difficult (maybe even impossible) to add. - var tzl = moment.defineLocale('tzl', { - months: 'Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar'.split( - '_' - ), - monthsShort: 'Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec'.split('_'), - weekdays: 'Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi'.split('_'), - weekdaysShort: 'Súl_Lún_Mai_Már_Xhú_Vié_Sát'.split('_'), - weekdaysMin: 'Sú_Lú_Ma_Má_Xh_Vi_Sá'.split('_'), - longDateFormat: { - LT: 'HH.mm', - LTS: 'HH.mm.ss', - L: 'DD.MM.YYYY', - LL: 'D. MMMM [dallas] YYYY', - LLL: 'D. MMMM [dallas] YYYY HH.mm', - LLLL: 'dddd, [li] D. MMMM [dallas] YYYY HH.mm', - }, - meridiemParse: /d\'o|d\'a/i, - isPM: function (input) { - return "d'o" === input.toLowerCase(); - }, - meridiem: function (hours, minutes, isLower) { - if (hours > 11) { - return isLower ? "d'o" : "D'O"; - } else { - return isLower ? "d'a" : "D'A"; - } - }, - calendar: { - sameDay: '[oxhi à] LT', - nextDay: '[demà à] LT', - nextWeek: 'dddd [à] LT', - lastDay: '[ieiri à] LT', - lastWeek: '[sür el] dddd [lasteu à] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'osprei %s', - past: 'ja%s', - s: processRelativeTime, - ss: processRelativeTime, - m: processRelativeTime, - mm: processRelativeTime, - h: processRelativeTime, - hh: processRelativeTime, - d: processRelativeTime, - dd: processRelativeTime, - M: processRelativeTime, - MM: processRelativeTime, - y: processRelativeTime, - yy: processRelativeTime, - }, - dayOfMonthOrdinalParse: /\d{1,2}\./, - ordinal: '%d.', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - function processRelativeTime(number, withoutSuffix, key, isFuture) { - var format = { - s: ['viensas secunds', "'iensas secunds"], - ss: [number + ' secunds', '' + number + ' secunds'], - m: ["'n míut", "'iens míut"], - mm: [number + ' míuts', '' + number + ' míuts'], - h: ["'n þora", "'iensa þora"], - hh: [number + ' þoras', '' + number + ' þoras'], - d: ["'n ziua", "'iensa ziua"], - dd: [number + ' ziuas', '' + number + ' ziuas'], - M: ["'n mes", "'iens mes"], - MM: [number + ' mesen', '' + number + ' mesen'], - y: ["'n ar", "'iens ar"], - yy: [number + ' ars', '' + number + ' ars'], - }; - return isFuture - ? format[key][0] - : withoutSuffix - ? format[key][0] - : format[key][1]; - } - - return tzl; - -}))); - - -/***/ }), - -/***/ 97711: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Central Atlas Tamazight Latin [tzm-latn] -//! author : Abdel Said : https://github.com/abdelsaid - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var tzmLatn = moment.defineLocale('tzm-latn', { - months: 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split( - '_' - ), - monthsShort: - 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split( - '_' - ), - weekdays: 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'), - weekdaysShort: 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'), - weekdaysMin: 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[asdkh g] LT', - nextDay: '[aska g] LT', - nextWeek: 'dddd [g] LT', - lastDay: '[assant g] LT', - lastWeek: 'dddd [g] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'dadkh s yan %s', - past: 'yan %s', - s: 'imik', - ss: '%d imik', - m: 'minuḍ', - mm: '%d minuḍ', - h: 'saɛa', - hh: '%d tassaɛin', - d: 'ass', - dd: '%d ossan', - M: 'ayowr', - MM: '%d iyyirn', - y: 'asgas', - yy: '%d isgasn', - }, - week: { - dow: 6, // Saturday is the first day of the week. - doy: 12, // The week that contains Jan 12th is the first week of the year. - }, - }); - - return tzmLatn; - -}))); - - -/***/ }), - -/***/ 81765: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Central Atlas Tamazight [tzm] -//! author : Abdel Said : https://github.com/abdelsaid - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var tzm = moment.defineLocale('tzm', { - months: 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split( - '_' - ), - monthsShort: - 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split( - '_' - ), - weekdays: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'), - weekdaysShort: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'), - weekdaysMin: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[ⴰⵙⴷⵅ ⴴ] LT', - nextDay: '[ⴰⵙⴽⴰ ⴴ] LT', - nextWeek: 'dddd [ⴴ] LT', - lastDay: '[ⴰⵚⴰⵏⵜ ⴴ] LT', - lastWeek: 'dddd [ⴴ] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s', - past: 'ⵢⴰⵏ %s', - s: 'ⵉⵎⵉⴽ', - ss: '%d ⵉⵎⵉⴽ', - m: 'ⵎⵉⵏⵓⴺ', - mm: '%d ⵎⵉⵏⵓⴺ', - h: 'ⵙⴰⵄⴰ', - hh: '%d ⵜⴰⵙⵙⴰⵄⵉⵏ', - d: 'ⴰⵙⵙ', - dd: '%d oⵙⵙⴰⵏ', - M: 'ⴰⵢoⵓⵔ', - MM: '%d ⵉⵢⵢⵉⵔⵏ', - y: 'ⴰⵙⴳⴰⵙ', - yy: '%d ⵉⵙⴳⴰⵙⵏ', - }, - week: { - dow: 6, // Saturday is the first day of the week. - doy: 12, // The week that contains Jan 12th is the first week of the year. - }, - }); - - return tzm; - -}))); - - -/***/ }), - -/***/ 48414: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Uyghur (China) [ug-cn] -//! author: boyaq : https://github.com/boyaq - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var ugCn = moment.defineLocale('ug-cn', { - months: 'يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر'.split( - '_' - ), - monthsShort: - 'يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر'.split( - '_' - ), - weekdays: 'يەكشەنبە_دۈشەنبە_سەيشەنبە_چارشەنبە_پەيشەنبە_جۈمە_شەنبە'.split( - '_' - ), - weekdaysShort: 'يە_دۈ_سە_چا_پە_جۈ_شە'.split('_'), - weekdaysMin: 'يە_دۈ_سە_چا_پە_جۈ_شە'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'YYYY-MM-DD', - LL: 'YYYY-يىلىM-ئاينىڭD-كۈنى', - LLL: 'YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm', - LLLL: 'dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm', - }, - meridiemParse: /يېرىم كېچە|سەھەر|چۈشتىن بۇرۇن|چۈش|چۈشتىن كېيىن|كەچ/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if ( - meridiem === 'يېرىم كېچە' || - meridiem === 'سەھەر' || - meridiem === 'چۈشتىن بۇرۇن' - ) { - return hour; - } else if (meridiem === 'چۈشتىن كېيىن' || meridiem === 'كەچ') { - return hour + 12; - } else { - return hour >= 11 ? hour : hour + 12; - } - }, - meridiem: function (hour, minute, isLower) { - var hm = hour * 100 + minute; - if (hm < 600) { - return 'يېرىم كېچە'; - } else if (hm < 900) { - return 'سەھەر'; - } else if (hm < 1130) { - return 'چۈشتىن بۇرۇن'; - } else if (hm < 1230) { - return 'چۈش'; - } else if (hm < 1800) { - return 'چۈشتىن كېيىن'; - } else { - return 'كەچ'; - } - }, - calendar: { - sameDay: '[بۈگۈن سائەت] LT', - nextDay: '[ئەتە سائەت] LT', - nextWeek: '[كېلەركى] dddd [سائەت] LT', - lastDay: '[تۆنۈگۈن] LT', - lastWeek: '[ئالدىنقى] dddd [سائەت] LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s كېيىن', - past: '%s بۇرۇن', - s: 'نەچچە سېكونت', - ss: '%d سېكونت', - m: 'بىر مىنۇت', - mm: '%d مىنۇت', - h: 'بىر سائەت', - hh: '%d سائەت', - d: 'بىر كۈن', - dd: '%d كۈن', - M: 'بىر ئاي', - MM: '%d ئاي', - y: 'بىر يىل', - yy: '%d يىل', - }, - - dayOfMonthOrdinalParse: /\d{1,2}(-كۈنى|-ئاي|-ھەپتە)/, - ordinal: function (number, period) { - switch (period) { - case 'd': - case 'D': - case 'DDD': - return number + '-كۈنى'; - case 'w': - case 'W': - return number + '-ھەپتە'; - default: - return number; - } - }, - preparse: function (string) { - return string.replace(/،/g, ','); - }, - postformat: function (string) { - return string.replace(/,/g, '،'); - }, - week: { - // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效 - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 1st is the first week of the year. - }, - }); - - return ugCn; - -}))); - - -/***/ }), - -/***/ 16618: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Ukrainian [uk] -//! author : zemlanin : https://github.com/zemlanin -//! Author : Menelion Elensúle : https://github.com/Oire - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - function plural(word, num) { - var forms = word.split('_'); - return num % 10 === 1 && num % 100 !== 11 - ? forms[0] - : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) - ? forms[1] - : forms[2]; - } - function relativeTimeWithPlural(number, withoutSuffix, key) { - var format = { - ss: withoutSuffix ? 'секунда_секунди_секунд' : 'секунду_секунди_секунд', - mm: withoutSuffix ? 'хвилина_хвилини_хвилин' : 'хвилину_хвилини_хвилин', - hh: withoutSuffix ? 'година_години_годин' : 'годину_години_годин', - dd: 'день_дні_днів', - MM: 'місяць_місяці_місяців', - yy: 'рік_роки_років', - }; - if (key === 'm') { - return withoutSuffix ? 'хвилина' : 'хвилину'; - } else if (key === 'h') { - return withoutSuffix ? 'година' : 'годину'; - } else { - return number + ' ' + plural(format[key], +number); - } - } - function weekdaysCaseReplace(m, format) { - var weekdays = { - nominative: - 'неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота'.split( - '_' - ), - accusative: - 'неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу'.split( - '_' - ), - genitive: - 'неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи'.split( - '_' - ), - }, - nounCase; - - if (m === true) { - return weekdays['nominative'] - .slice(1, 7) - .concat(weekdays['nominative'].slice(0, 1)); - } - if (!m) { - return weekdays['nominative']; - } - - nounCase = /(\[[ВвУу]\]) ?dddd/.test(format) - ? 'accusative' - : /\[?(?:минулої|наступної)? ?\] ?dddd/.test(format) - ? 'genitive' - : 'nominative'; - return weekdays[nounCase][m.day()]; - } - function processHoursFunction(str) { - return function () { - return str + 'о' + (this.hours() === 11 ? 'б' : '') + '] LT'; - }; - } - - var uk = moment.defineLocale('uk', { - months: { - format: 'січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня'.split( - '_' - ), - standalone: - 'січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень'.split( - '_' - ), - }, - monthsShort: 'січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд'.split( - '_' - ), - weekdays: weekdaysCaseReplace, - weekdaysShort: 'нд_пн_вт_ср_чт_пт_сб'.split('_'), - weekdaysMin: 'нд_пн_вт_ср_чт_пт_сб'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD.MM.YYYY', - LL: 'D MMMM YYYY р.', - LLL: 'D MMMM YYYY р., HH:mm', - LLLL: 'dddd, D MMMM YYYY р., HH:mm', - }, - calendar: { - sameDay: processHoursFunction('[Сьогодні '), - nextDay: processHoursFunction('[Завтра '), - lastDay: processHoursFunction('[Вчора '), - nextWeek: processHoursFunction('[У] dddd ['), - lastWeek: function () { - switch (this.day()) { - case 0: - case 3: - case 5: - case 6: - return processHoursFunction('[Минулої] dddd [').call(this); - case 1: - case 2: - case 4: - return processHoursFunction('[Минулого] dddd [').call(this); - } - }, - sameElse: 'L', - }, - relativeTime: { - future: 'за %s', - past: '%s тому', - s: 'декілька секунд', - ss: relativeTimeWithPlural, - m: relativeTimeWithPlural, - mm: relativeTimeWithPlural, - h: 'годину', - hh: relativeTimeWithPlural, - d: 'день', - dd: relativeTimeWithPlural, - M: 'місяць', - MM: relativeTimeWithPlural, - y: 'рік', - yy: relativeTimeWithPlural, - }, - // M. E.: those two are virtually unused but a user might want to implement them for his/her website for some reason - meridiemParse: /ночі|ранку|дня|вечора/, - isPM: function (input) { - return /^(дня|вечора)$/.test(input); - }, - meridiem: function (hour, minute, isLower) { - if (hour < 4) { - return 'ночі'; - } else if (hour < 12) { - return 'ранку'; - } else if (hour < 17) { - return 'дня'; - } else { - return 'вечора'; - } - }, - dayOfMonthOrdinalParse: /\d{1,2}-(й|го)/, - ordinal: function (number, period) { - switch (period) { - case 'M': - case 'd': - case 'DDD': - case 'w': - case 'W': - return number + '-й'; - case 'D': - return number + '-го'; - default: - return number; - } - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return uk; - -}))); - - -/***/ }), - -/***/ 57777: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Urdu [ur] -//! author : Sawood Alam : https://github.com/ibnesayeed -//! author : Zack : https://github.com/ZackVision - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var months = [ - 'جنوری', - 'فروری', - 'مارچ', - 'اپریل', - 'مئی', - 'جون', - 'جولائی', - 'اگست', - 'ستمبر', - 'اکتوبر', - 'نومبر', - 'دسمبر', - ], - days = ['اتوار', 'پیر', 'منگل', 'بدھ', 'جمعرات', 'جمعہ', 'ہفتہ']; - - var ur = moment.defineLocale('ur', { - months: months, - monthsShort: months, - weekdays: days, - weekdaysShort: days, - weekdaysMin: days, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd، D MMMM YYYY HH:mm', - }, - meridiemParse: /صبح|شام/, - isPM: function (input) { - return 'شام' === input; - }, - meridiem: function (hour, minute, isLower) { - if (hour < 12) { - return 'صبح'; - } - return 'شام'; - }, - calendar: { - sameDay: '[آج بوقت] LT', - nextDay: '[کل بوقت] LT', - nextWeek: 'dddd [بوقت] LT', - lastDay: '[گذشتہ روز بوقت] LT', - lastWeek: '[گذشتہ] dddd [بوقت] LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s بعد', - past: '%s قبل', - s: 'چند سیکنڈ', - ss: '%d سیکنڈ', - m: 'ایک منٹ', - mm: '%d منٹ', - h: 'ایک گھنٹہ', - hh: '%d گھنٹے', - d: 'ایک دن', - dd: '%d دن', - M: 'ایک ماہ', - MM: '%d ماہ', - y: 'ایک سال', - yy: '%d سال', - }, - preparse: function (string) { - return string.replace(/،/g, ','); - }, - postformat: function (string) { - return string.replace(/,/g, '،'); - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return ur; - -}))); - - -/***/ }), - -/***/ 72475: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Uzbek Latin [uz-latn] -//! author : Rasulbek Mirzayev : github.com/Rasulbeeek - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var uzLatn = moment.defineLocale('uz-latn', { - months: 'Yanvar_Fevral_Mart_Aprel_May_Iyun_Iyul_Avgust_Sentabr_Oktabr_Noyabr_Dekabr'.split( - '_' - ), - monthsShort: 'Yan_Fev_Mar_Apr_May_Iyun_Iyul_Avg_Sen_Okt_Noy_Dek'.split('_'), - weekdays: - 'Yakshanba_Dushanba_Seshanba_Chorshanba_Payshanba_Juma_Shanba'.split( - '_' - ), - weekdaysShort: 'Yak_Dush_Sesh_Chor_Pay_Jum_Shan'.split('_'), - weekdaysMin: 'Ya_Du_Se_Cho_Pa_Ju_Sha'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'D MMMM YYYY, dddd HH:mm', - }, - calendar: { - sameDay: '[Bugun soat] LT [da]', - nextDay: '[Ertaga] LT [da]', - nextWeek: 'dddd [kuni soat] LT [da]', - lastDay: '[Kecha soat] LT [da]', - lastWeek: "[O'tgan] dddd [kuni soat] LT [da]", - sameElse: 'L', - }, - relativeTime: { - future: 'Yaqin %s ichida', - past: 'Bir necha %s oldin', - s: 'soniya', - ss: '%d soniya', - m: 'bir daqiqa', - mm: '%d daqiqa', - h: 'bir soat', - hh: '%d soat', - d: 'bir kun', - dd: '%d kun', - M: 'bir oy', - MM: '%d oy', - y: 'bir yil', - yy: '%d yil', - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 7th is the first week of the year. - }, - }); - - return uzLatn; - -}))); - - -/***/ }), - -/***/ 57609: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Uzbek [uz] -//! author : Sardor Muminov : https://github.com/muminoff - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var uz = moment.defineLocale('uz', { - months: 'январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр'.split( - '_' - ), - monthsShort: 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'), - weekdays: 'Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба'.split('_'), - weekdaysShort: 'Якш_Душ_Сеш_Чор_Пай_Жум_Шан'.split('_'), - weekdaysMin: 'Як_Ду_Се_Чо_Па_Жу_Ша'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'D MMMM YYYY, dddd HH:mm', - }, - calendar: { - sameDay: '[Бугун соат] LT [да]', - nextDay: '[Эртага] LT [да]', - nextWeek: 'dddd [куни соат] LT [да]', - lastDay: '[Кеча соат] LT [да]', - lastWeek: '[Утган] dddd [куни соат] LT [да]', - sameElse: 'L', - }, - relativeTime: { - future: 'Якин %s ичида', - past: 'Бир неча %s олдин', - s: 'фурсат', - ss: '%d фурсат', - m: 'бир дакика', - mm: '%d дакика', - h: 'бир соат', - hh: '%d соат', - d: 'бир кун', - dd: '%d кун', - M: 'бир ой', - MM: '%d ой', - y: 'бир йил', - yy: '%d йил', - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 7, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return uz; - -}))); - - -/***/ }), - -/***/ 21135: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Vietnamese [vi] -//! author : Bang Nguyen : https://github.com/bangnk -//! author : Chien Kira : https://github.com/chienkira - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var vi = moment.defineLocale('vi', { - months: 'tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12'.split( - '_' - ), - monthsShort: - 'Thg 01_Thg 02_Thg 03_Thg 04_Thg 05_Thg 06_Thg 07_Thg 08_Thg 09_Thg 10_Thg 11_Thg 12'.split( - '_' - ), - monthsParseExact: true, - weekdays: 'chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy'.split( - '_' - ), - weekdaysShort: 'CN_T2_T3_T4_T5_T6_T7'.split('_'), - weekdaysMin: 'CN_T2_T3_T4_T5_T6_T7'.split('_'), - weekdaysParseExact: true, - meridiemParse: /sa|ch/i, - isPM: function (input) { - return /^ch$/i.test(input); - }, - meridiem: function (hours, minutes, isLower) { - if (hours < 12) { - return isLower ? 'sa' : 'SA'; - } else { - return isLower ? 'ch' : 'CH'; - } - }, - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM [năm] YYYY', - LLL: 'D MMMM [năm] YYYY HH:mm', - LLLL: 'dddd, D MMMM [năm] YYYY HH:mm', - l: 'DD/M/YYYY', - ll: 'D MMM YYYY', - lll: 'D MMM YYYY HH:mm', - llll: 'ddd, D MMM YYYY HH:mm', - }, - calendar: { - sameDay: '[Hôm nay lúc] LT', - nextDay: '[Ngày mai lúc] LT', - nextWeek: 'dddd [tuần tới lúc] LT', - lastDay: '[Hôm qua lúc] LT', - lastWeek: 'dddd [tuần trước lúc] LT', - sameElse: 'L', - }, - relativeTime: { - future: '%s tới', - past: '%s trước', - s: 'vài giây', - ss: '%d giây', - m: 'một phút', - mm: '%d phút', - h: 'một giờ', - hh: '%d giờ', - d: 'một ngày', - dd: '%d ngày', - w: 'một tuần', - ww: '%d tuần', - M: 'một tháng', - MM: '%d tháng', - y: 'một năm', - yy: '%d năm', - }, - dayOfMonthOrdinalParse: /\d{1,2}/, - ordinal: function (number) { - return number; - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return vi; - -}))); - - -/***/ }), - -/***/ 64051: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Pseudo [x-pseudo] -//! author : Andrew Hood : https://github.com/andrewhood125 - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var xPseudo = moment.defineLocale('x-pseudo', { - months: 'J~áñúá~rý_F~ébrú~árý_~Márc~h_Áp~ríl_~Máý_~Júñé~_Júl~ý_Áú~gúst~_Sép~témb~ér_Ó~ctób~ér_Ñ~óvém~bér_~Décé~mbér'.split( - '_' - ), - monthsShort: - 'J~áñ_~Féb_~Már_~Ápr_~Máý_~Júñ_~Júl_~Áúg_~Sép_~Óct_~Ñóv_~Déc'.split( - '_' - ), - monthsParseExact: true, - weekdays: - 'S~úñdá~ý_Mó~ñdáý~_Túé~sdáý~_Wéd~ñésd~áý_T~húrs~dáý_~Fríd~áý_S~átúr~dáý'.split( - '_' - ), - weekdaysShort: 'S~úñ_~Móñ_~Túé_~Wéd_~Thú_~Frí_~Sát'.split('_'), - weekdaysMin: 'S~ú_Mó~_Tú_~Wé_T~h_Fr~_Sá'.split('_'), - weekdaysParseExact: true, - longDateFormat: { - LT: 'HH:mm', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm', - }, - calendar: { - sameDay: '[T~ódá~ý át] LT', - nextDay: '[T~ómó~rró~w át] LT', - nextWeek: 'dddd [át] LT', - lastDay: '[Ý~ést~érdá~ý át] LT', - lastWeek: '[L~ást] dddd [át] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'í~ñ %s', - past: '%s á~gó', - s: 'á ~féw ~sécó~ñds', - ss: '%d s~écóñ~ds', - m: 'á ~míñ~úté', - mm: '%d m~íñú~tés', - h: 'á~ñ hó~úr', - hh: '%d h~óúrs', - d: 'á ~dáý', - dd: '%d d~áýs', - M: 'á ~móñ~th', - MM: '%d m~óñt~hs', - y: 'á ~ýéár', - yy: '%d ý~éárs', - }, - dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/, - ordinal: function (number) { - var b = number % 10, - output = - ~~((number % 100) / 10) === 1 - ? 'th' - : b === 1 - ? 'st' - : b === 2 - ? 'nd' - : b === 3 - ? 'rd' - : 'th'; - return number + output; - }, - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return xPseudo; - -}))); - - -/***/ }), - -/***/ 82218: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Yoruba Nigeria [yo] -//! author : Atolagbe Abisoye : https://github.com/andela-batolagbe - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var yo = moment.defineLocale('yo', { - months: 'Sẹ́rẹ́_Èrèlè_Ẹrẹ̀nà_Ìgbé_Èbibi_Òkùdu_Agẹmo_Ògún_Owewe_Ọ̀wàrà_Bélú_Ọ̀pẹ̀̀'.split( - '_' - ), - monthsShort: 'Sẹ́r_Èrl_Ẹrn_Ìgb_Èbi_Òkù_Agẹ_Ògú_Owe_Ọ̀wà_Bél_Ọ̀pẹ̀̀'.split('_'), - weekdays: 'Àìkú_Ajé_Ìsẹ́gun_Ọjọ́rú_Ọjọ́bọ_Ẹtì_Àbámẹ́ta'.split('_'), - weekdaysShort: 'Àìk_Ajé_Ìsẹ́_Ọjr_Ọjb_Ẹtì_Àbá'.split('_'), - weekdaysMin: 'Àì_Aj_Ìs_Ọr_Ọb_Ẹt_Àb'.split('_'), - longDateFormat: { - LT: 'h:mm A', - LTS: 'h:mm:ss A', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY h:mm A', - LLLL: 'dddd, D MMMM YYYY h:mm A', - }, - calendar: { - sameDay: '[Ònì ni] LT', - nextDay: '[Ọ̀la ni] LT', - nextWeek: "dddd [Ọsẹ̀ tón'bọ] [ni] LT", - lastDay: '[Àna ni] LT', - lastWeek: 'dddd [Ọsẹ̀ tólọ́] [ni] LT', - sameElse: 'L', - }, - relativeTime: { - future: 'ní %s', - past: '%s kọjá', - s: 'ìsẹjú aayá die', - ss: 'aayá %d', - m: 'ìsẹjú kan', - mm: 'ìsẹjú %d', - h: 'wákati kan', - hh: 'wákati %d', - d: 'ọjọ́ kan', - dd: 'ọjọ́ %d', - M: 'osù kan', - MM: 'osù %d', - y: 'ọdún kan', - yy: 'ọdún %d', - }, - dayOfMonthOrdinalParse: /ọjọ́\s\d{1,2}/, - ordinal: 'ọjọ́ %d', - week: { - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return yo; - -}))); - - -/***/ }), - -/***/ 52648: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Chinese (China) [zh-cn] -//! author : suupic : https://github.com/suupic -//! author : Zeno Zeng : https://github.com/zenozeng -//! author : uu109 : https://github.com/uu109 - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var zhCn = moment.defineLocale('zh-cn', { - months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split( - '_' - ), - monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split( - '_' - ), - weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'), - weekdaysShort: '周日_周一_周二_周三_周四_周五_周六'.split('_'), - weekdaysMin: '日_一_二_三_四_五_六'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'YYYY/MM/DD', - LL: 'YYYY年M月D日', - LLL: 'YYYY年M月D日Ah点mm分', - LLLL: 'YYYY年M月D日ddddAh点mm分', - l: 'YYYY/M/D', - ll: 'YYYY年M月D日', - lll: 'YYYY年M月D日 HH:mm', - llll: 'YYYY年M月D日dddd HH:mm', - }, - meridiemParse: /凌晨|早上|上午|中午|下午|晚上/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') { - return hour; - } else if (meridiem === '下午' || meridiem === '晚上') { - return hour + 12; - } else { - // '中午' - return hour >= 11 ? hour : hour + 12; - } - }, - meridiem: function (hour, minute, isLower) { - var hm = hour * 100 + minute; - if (hm < 600) { - return '凌晨'; - } else if (hm < 900) { - return '早上'; - } else if (hm < 1130) { - return '上午'; - } else if (hm < 1230) { - return '中午'; - } else if (hm < 1800) { - return '下午'; - } else { - return '晚上'; - } - }, - calendar: { - sameDay: '[今天]LT', - nextDay: '[明天]LT', - nextWeek: function (now) { - if (now.week() !== this.week()) { - return '[下]dddLT'; - } else { - return '[本]dddLT'; - } - }, - lastDay: '[昨天]LT', - lastWeek: function (now) { - if (this.week() !== now.week()) { - return '[上]dddLT'; - } else { - return '[本]dddLT'; - } - }, - sameElse: 'L', - }, - dayOfMonthOrdinalParse: /\d{1,2}(日|月|周)/, - ordinal: function (number, period) { - switch (period) { - case 'd': - case 'D': - case 'DDD': - return number + '日'; - case 'M': - return number + '月'; - case 'w': - case 'W': - return number + '周'; - default: - return number; - } - }, - relativeTime: { - future: '%s后', - past: '%s前', - s: '几秒', - ss: '%d 秒', - m: '1 分钟', - mm: '%d 分钟', - h: '1 小时', - hh: '%d 小时', - d: '1 天', - dd: '%d 天', - w: '1 周', - ww: '%d 周', - M: '1 个月', - MM: '%d 个月', - y: '1 年', - yy: '%d 年', - }, - week: { - // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效 - dow: 1, // Monday is the first day of the week. - doy: 4, // The week that contains Jan 4th is the first week of the year. - }, - }); - - return zhCn; - -}))); - - -/***/ }), - -/***/ 1632: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Chinese (Hong Kong) [zh-hk] -//! author : Ben : https://github.com/ben-lin -//! author : Chris Lam : https://github.com/hehachris -//! author : Konstantin : https://github.com/skfd -//! author : Anthony : https://github.com/anthonylau - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var zhHk = moment.defineLocale('zh-hk', { - months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split( - '_' - ), - monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split( - '_' - ), - weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'), - weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'), - weekdaysMin: '日_一_二_三_四_五_六'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'YYYY/MM/DD', - LL: 'YYYY年M月D日', - LLL: 'YYYY年M月D日 HH:mm', - LLLL: 'YYYY年M月D日dddd HH:mm', - l: 'YYYY/M/D', - ll: 'YYYY年M月D日', - lll: 'YYYY年M月D日 HH:mm', - llll: 'YYYY年M月D日dddd HH:mm', - }, - meridiemParse: /凌晨|早上|上午|中午|下午|晚上/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') { - return hour; - } else if (meridiem === '中午') { - return hour >= 11 ? hour : hour + 12; - } else if (meridiem === '下午' || meridiem === '晚上') { - return hour + 12; - } - }, - meridiem: function (hour, minute, isLower) { - var hm = hour * 100 + minute; - if (hm < 600) { - return '凌晨'; - } else if (hm < 900) { - return '早上'; - } else if (hm < 1200) { - return '上午'; - } else if (hm === 1200) { - return '中午'; - } else if (hm < 1800) { - return '下午'; - } else { - return '晚上'; - } - }, - calendar: { - sameDay: '[今天]LT', - nextDay: '[明天]LT', - nextWeek: '[下]ddddLT', - lastDay: '[昨天]LT', - lastWeek: '[上]ddddLT', - sameElse: 'L', - }, - dayOfMonthOrdinalParse: /\d{1,2}(日|月|週)/, - ordinal: function (number, period) { - switch (period) { - case 'd': - case 'D': - case 'DDD': - return number + '日'; - case 'M': - return number + '月'; - case 'w': - case 'W': - return number + '週'; - default: - return number; - } - }, - relativeTime: { - future: '%s後', - past: '%s前', - s: '幾秒', - ss: '%d 秒', - m: '1 分鐘', - mm: '%d 分鐘', - h: '1 小時', - hh: '%d 小時', - d: '1 天', - dd: '%d 天', - M: '1 個月', - MM: '%d 個月', - y: '1 年', - yy: '%d 年', - }, - }); - - return zhHk; - -}))); - - -/***/ }), - -/***/ 31541: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Chinese (Macau) [zh-mo] -//! author : Ben : https://github.com/ben-lin -//! author : Chris Lam : https://github.com/hehachris -//! author : Tan Yuanhong : https://github.com/le0tan - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var zhMo = moment.defineLocale('zh-mo', { - months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split( - '_' - ), - monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split( - '_' - ), - weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'), - weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'), - weekdaysMin: '日_一_二_三_四_五_六'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'YYYY年M月D日', - LLL: 'YYYY年M月D日 HH:mm', - LLLL: 'YYYY年M月D日dddd HH:mm', - l: 'D/M/YYYY', - ll: 'YYYY年M月D日', - lll: 'YYYY年M月D日 HH:mm', - llll: 'YYYY年M月D日dddd HH:mm', - }, - meridiemParse: /凌晨|早上|上午|中午|下午|晚上/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') { - return hour; - } else if (meridiem === '中午') { - return hour >= 11 ? hour : hour + 12; - } else if (meridiem === '下午' || meridiem === '晚上') { - return hour + 12; - } - }, - meridiem: function (hour, minute, isLower) { - var hm = hour * 100 + minute; - if (hm < 600) { - return '凌晨'; - } else if (hm < 900) { - return '早上'; - } else if (hm < 1130) { - return '上午'; - } else if (hm < 1230) { - return '中午'; - } else if (hm < 1800) { - return '下午'; - } else { - return '晚上'; - } - }, - calendar: { - sameDay: '[今天] LT', - nextDay: '[明天] LT', - nextWeek: '[下]dddd LT', - lastDay: '[昨天] LT', - lastWeek: '[上]dddd LT', - sameElse: 'L', - }, - dayOfMonthOrdinalParse: /\d{1,2}(日|月|週)/, - ordinal: function (number, period) { - switch (period) { - case 'd': - case 'D': - case 'DDD': - return number + '日'; - case 'M': - return number + '月'; - case 'w': - case 'W': - return number + '週'; - default: - return number; - } - }, - relativeTime: { - future: '%s內', - past: '%s前', - s: '幾秒', - ss: '%d 秒', - m: '1 分鐘', - mm: '%d 分鐘', - h: '1 小時', - hh: '%d 小時', - d: '1 天', - dd: '%d 天', - M: '1 個月', - MM: '%d 個月', - y: '1 年', - yy: '%d 年', - }, - }); - - return zhMo; - -}))); - - -/***/ }), - -/***/ 50304: -/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { - -//! moment.js locale configuration -//! locale : Chinese (Taiwan) [zh-tw] -//! author : Ben : https://github.com/ben-lin -//! author : Chris Lam : https://github.com/hehachris - -;(function (global, factory) { - true ? factory(__webpack_require__(95093)) : - 0 -}(this, (function (moment) { 'use strict'; - - //! moment.js locale configuration - - var zhTw = moment.defineLocale('zh-tw', { - months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split( - '_' - ), - monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split( - '_' - ), - weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'), - weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'), - weekdaysMin: '日_一_二_三_四_五_六'.split('_'), - longDateFormat: { - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'YYYY/MM/DD', - LL: 'YYYY年M月D日', - LLL: 'YYYY年M月D日 HH:mm', - LLLL: 'YYYY年M月D日dddd HH:mm', - l: 'YYYY/M/D', - ll: 'YYYY年M月D日', - lll: 'YYYY年M月D日 HH:mm', - llll: 'YYYY年M月D日dddd HH:mm', - }, - meridiemParse: /凌晨|早上|上午|中午|下午|晚上/, - meridiemHour: function (hour, meridiem) { - if (hour === 12) { - hour = 0; - } - if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') { - return hour; - } else if (meridiem === '中午') { - return hour >= 11 ? hour : hour + 12; - } else if (meridiem === '下午' || meridiem === '晚上') { - return hour + 12; - } - }, - meridiem: function (hour, minute, isLower) { - var hm = hour * 100 + minute; - if (hm < 600) { - return '凌晨'; - } else if (hm < 900) { - return '早上'; - } else if (hm < 1130) { - return '上午'; - } else if (hm < 1230) { - return '中午'; - } else if (hm < 1800) { - return '下午'; - } else { - return '晚上'; - } - }, - calendar: { - sameDay: '[今天] LT', - nextDay: '[明天] LT', - nextWeek: '[下]dddd LT', - lastDay: '[昨天] LT', - lastWeek: '[上]dddd LT', - sameElse: 'L', - }, - dayOfMonthOrdinalParse: /\d{1,2}(日|月|週)/, - ordinal: function (number, period) { - switch (period) { - case 'd': - case 'D': - case 'DDD': - return number + '日'; - case 'M': - return number + '月'; - case 'w': - case 'W': - return number + '週'; - default: - return number; - } - }, - relativeTime: { - future: '%s後', - past: '%s前', - s: '幾秒', - ss: '%d 秒', - m: '1 分鐘', - mm: '%d 分鐘', - h: '1 小時', - hh: '%d 小時', - d: '1 天', - dd: '%d 天', - M: '1 個月', - MM: '%d 個月', - y: '1 年', - yy: '%d 年', - }, - }); - - return zhTw; - -}))); - - -/***/ }), - -/***/ 35358: -/***/ ((module, __unused_webpack_exports, __webpack_require__) => { - -var map = { - "./af": 25177, - "./af.js": 25177, - "./ar": 61509, - "./ar-dz": 41488, - "./ar-dz.js": 41488, - "./ar-kw": 58676, - "./ar-kw.js": 58676, - "./ar-ly": 42353, - "./ar-ly.js": 42353, - "./ar-ma": 24496, - "./ar-ma.js": 24496, - "./ar-ps": 6947, - "./ar-ps.js": 6947, - "./ar-sa": 60301, - "./ar-sa.js": 60301, - "./ar-tn": 89756, - "./ar-tn.js": 89756, - "./ar.js": 61509, - "./az": 95533, - "./az.js": 95533, - "./be": 28959, - "./be.js": 28959, - "./bg": 47777, - "./bg.js": 47777, - "./bm": 54903, - "./bm.js": 54903, - "./bn": 61290, - "./bn-bd": 17357, - "./bn-bd.js": 17357, - "./bn.js": 61290, - "./bo": 31545, - "./bo.js": 31545, - "./br": 11470, - "./br.js": 11470, - "./bs": 44429, - "./bs.js": 44429, - "./ca": 7306, - "./ca.js": 7306, - "./cs": 56464, - "./cs.js": 56464, - "./cv": 73635, - "./cv.js": 73635, - "./cy": 64226, - "./cy.js": 64226, - "./da": 93601, - "./da.js": 93601, - "./de": 77853, - "./de-at": 26111, - "./de-at.js": 26111, - "./de-ch": 54697, - "./de-ch.js": 54697, - "./de.js": 77853, - "./dv": 60708, - "./dv.js": 60708, - "./el": 54691, - "./el.js": 54691, - "./en-au": 53872, - "./en-au.js": 53872, - "./en-ca": 28298, - "./en-ca.js": 28298, - "./en-gb": 56195, - "./en-gb.js": 56195, - "./en-ie": 66584, - "./en-ie.js": 66584, - "./en-il": 65543, - "./en-il.js": 65543, - "./en-in": 9033, - "./en-in.js": 9033, - "./en-nz": 79402, - "./en-nz.js": 79402, - "./en-sg": 43004, - "./en-sg.js": 43004, - "./eo": 32934, - "./eo.js": 32934, - "./es": 97650, - "./es-do": 20838, - "./es-do.js": 20838, - "./es-mx": 17730, - "./es-mx.js": 17730, - "./es-us": 56575, - "./es-us.js": 56575, - "./es.js": 97650, - "./et": 3035, - "./et.js": 3035, - "./eu": 3508, - "./eu.js": 3508, - "./fa": 119, - "./fa.js": 119, - "./fi": 90527, - "./fi.js": 90527, - "./fil": 95995, - "./fil.js": 95995, - "./fo": 52477, - "./fo.js": 52477, - "./fr": 85498, - "./fr-ca": 26435, - "./fr-ca.js": 26435, - "./fr-ch": 37892, - "./fr-ch.js": 37892, - "./fr.js": 85498, - "./fy": 37071, - "./fy.js": 37071, - "./ga": 41734, - "./ga.js": 41734, - "./gd": 70217, - "./gd.js": 70217, - "./gl": 77329, - "./gl.js": 77329, - "./gom-deva": 32124, - "./gom-deva.js": 32124, - "./gom-latn": 93383, - "./gom-latn.js": 93383, - "./gu": 95050, - "./gu.js": 95050, - "./he": 11713, - "./he.js": 11713, - "./hi": 43861, - "./hi.js": 43861, - "./hr": 26308, - "./hr.js": 26308, - "./hu": 90609, - "./hu.js": 90609, - "./hy-am": 17160, - "./hy-am.js": 17160, - "./id": 74063, - "./id.js": 74063, - "./is": 89374, - "./is.js": 89374, - "./it": 88383, - "./it-ch": 21827, - "./it-ch.js": 21827, - "./it.js": 88383, - "./ja": 23827, - "./ja.js": 23827, - "./jv": 89722, - "./jv.js": 89722, - "./ka": 41794, - "./ka.js": 41794, - "./kk": 27088, - "./kk.js": 27088, - "./km": 96870, - "./km.js": 96870, - "./kn": 84451, - "./kn.js": 84451, - "./ko": 63164, - "./ko.js": 63164, - "./ku": 98174, - "./ku-kmr": 6181, - "./ku-kmr.js": 6181, - "./ku.js": 98174, - "./ky": 78474, - "./ky.js": 78474, - "./lb": 79680, - "./lb.js": 79680, - "./lo": 15867, - "./lo.js": 15867, - "./lt": 45766, - "./lt.js": 45766, - "./lv": 69532, - "./lv.js": 69532, - "./me": 58076, - "./me.js": 58076, - "./mi": 41848, - "./mi.js": 41848, - "./mk": 30306, - "./mk.js": 30306, - "./ml": 73739, - "./ml.js": 73739, - "./mn": 99053, - "./mn.js": 99053, - "./mr": 86169, - "./mr.js": 86169, - "./ms": 73386, - "./ms-my": 92297, - "./ms-my.js": 92297, - "./ms.js": 73386, - "./mt": 77075, - "./mt.js": 77075, - "./my": 72264, - "./my.js": 72264, - "./nb": 22274, - "./nb.js": 22274, - "./ne": 8235, - "./ne.js": 8235, - "./nl": 92572, - "./nl-be": 43784, - "./nl-be.js": 43784, - "./nl.js": 92572, - "./nn": 54566, - "./nn.js": 54566, - "./oc-lnc": 69330, - "./oc-lnc.js": 69330, - "./pa-in": 29849, - "./pa-in.js": 29849, - "./pl": 94418, - "./pl.js": 94418, - "./pt": 79834, - "./pt-br": 48303, - "./pt-br.js": 48303, - "./pt.js": 79834, - "./ro": 24457, - "./ro.js": 24457, - "./ru": 82271, - "./ru.js": 82271, - "./sd": 1221, - "./sd.js": 1221, - "./se": 33478, - "./se.js": 33478, - "./si": 17538, - "./si.js": 17538, - "./sk": 5784, - "./sk.js": 5784, - "./sl": 46637, - "./sl.js": 46637, - "./sq": 86794, - "./sq.js": 86794, - "./sr": 45719, - "./sr-cyrl": 3322, - "./sr-cyrl.js": 3322, - "./sr.js": 45719, - "./ss": 56000, - "./ss.js": 56000, - "./sv": 41011, - "./sv.js": 41011, - "./sw": 40748, - "./sw.js": 40748, - "./ta": 11025, - "./ta.js": 11025, - "./te": 11885, - "./te.js": 11885, - "./tet": 28861, - "./tet.js": 28861, - "./tg": 86571, - "./tg.js": 86571, - "./th": 55802, - "./th.js": 55802, - "./tk": 59527, - "./tk.js": 59527, - "./tl-ph": 29231, - "./tl-ph.js": 29231, - "./tlh": 31052, - "./tlh.js": 31052, - "./tr": 85096, - "./tr.js": 85096, - "./tzl": 79846, - "./tzl.js": 79846, - "./tzm": 81765, - "./tzm-latn": 97711, - "./tzm-latn.js": 97711, - "./tzm.js": 81765, - "./ug-cn": 48414, - "./ug-cn.js": 48414, - "./uk": 16618, - "./uk.js": 16618, - "./ur": 57777, - "./ur.js": 57777, - "./uz": 57609, - "./uz-latn": 72475, - "./uz-latn.js": 72475, - "./uz.js": 57609, - "./vi": 21135, - "./vi.js": 21135, - "./x-pseudo": 64051, - "./x-pseudo.js": 64051, - "./yo": 82218, - "./yo.js": 82218, - "./zh-cn": 52648, - "./zh-cn.js": 52648, - "./zh-hk": 1632, - "./zh-hk.js": 1632, - "./zh-mo": 31541, - "./zh-mo.js": 31541, - "./zh-tw": 50304, - "./zh-tw.js": 50304 -}; - - -function webpackContext(req) { - var id = webpackContextResolve(req); - return __webpack_require__(id); -} -function webpackContextResolve(req) { - if(!__webpack_require__.o(map, req)) { - var e = new Error("Cannot find module '" + req + "'"); - e.code = 'MODULE_NOT_FOUND'; - throw e; - } - return map[req]; -} -webpackContext.keys = function webpackContextKeys() { - return Object.keys(map); -}; -webpackContext.resolve = webpackContextResolve; -module.exports = webpackContext; -webpackContext.id = 35358; - -/***/ }), - -/***/ 95093: -/***/ (function(module, __unused_webpack_exports, __webpack_require__) { - -/* module decorator */ module = __webpack_require__.nmd(module); -/* provided dependency */ var console = __webpack_require__(96763); -//! moment.js -//! version : 2.30.1 -//! authors : Tim Wood, Iskren Chernev, Moment.js contributors -//! license : MIT -//! momentjs.com - -;(function (global, factory) { - true ? module.exports = factory() : - 0 -}(this, (function () { 'use strict'; - - var hookCallback; - - function hooks() { - return hookCallback.apply(null, arguments); - } - - // This is done to register the method called with moment() - // without creating circular dependencies. - function setHookCallback(callback) { - hookCallback = callback; - } - - function isArray(input) { - return ( - input instanceof Array || - Object.prototype.toString.call(input) === '[object Array]' - ); - } - - function isObject(input) { - // IE8 will treat undefined and null as object if it wasn't for - // input != null - return ( - input != null && - Object.prototype.toString.call(input) === '[object Object]' - ); - } - - function hasOwnProp(a, b) { - return Object.prototype.hasOwnProperty.call(a, b); - } - - function isObjectEmpty(obj) { - if (Object.getOwnPropertyNames) { - return Object.getOwnPropertyNames(obj).length === 0; - } else { - var k; - for (k in obj) { - if (hasOwnProp(obj, k)) { - return false; - } - } - return true; - } - } - - function isUndefined(input) { - return input === void 0; - } - - function isNumber(input) { - return ( - typeof input === 'number' || - Object.prototype.toString.call(input) === '[object Number]' - ); - } - - function isDate(input) { - return ( - input instanceof Date || - Object.prototype.toString.call(input) === '[object Date]' - ); - } - - function map(arr, fn) { - var res = [], - i, - arrLen = arr.length; - for (i = 0; i < arrLen; ++i) { - res.push(fn(arr[i], i)); - } - return res; - } - - function extend(a, b) { - for (var i in b) { - if (hasOwnProp(b, i)) { - a[i] = b[i]; - } - } - - if (hasOwnProp(b, 'toString')) { - a.toString = b.toString; - } - - if (hasOwnProp(b, 'valueOf')) { - a.valueOf = b.valueOf; - } - - return a; - } - - function createUTC(input, format, locale, strict) { - return createLocalOrUTC(input, format, locale, strict, true).utc(); - } - - function defaultParsingFlags() { - // We need to deep clone this object. - return { - empty: false, - unusedTokens: [], - unusedInput: [], - overflow: -2, - charsLeftOver: 0, - nullInput: false, - invalidEra: null, - invalidMonth: null, - invalidFormat: false, - userInvalidated: false, - iso: false, - parsedDateParts: [], - era: null, - meridiem: null, - rfc2822: false, - weekdayMismatch: false, - }; - } - - function getParsingFlags(m) { - if (m._pf == null) { - m._pf = defaultParsingFlags(); - } - return m._pf; - } - - var some; - if (Array.prototype.some) { - some = Array.prototype.some; - } else { - some = function (fun) { - var t = Object(this), - len = t.length >>> 0, - i; - - for (i = 0; i < len; i++) { - if (i in t && fun.call(this, t[i], i, t)) { - return true; - } - } - - return false; - }; - } - - function isValid(m) { - var flags = null, - parsedParts = false, - isNowValid = m._d && !isNaN(m._d.getTime()); - if (isNowValid) { - flags = getParsingFlags(m); - parsedParts = some.call(flags.parsedDateParts, function (i) { - return i != null; - }); - isNowValid = - flags.overflow < 0 && - !flags.empty && - !flags.invalidEra && - !flags.invalidMonth && - !flags.invalidWeekday && - !flags.weekdayMismatch && - !flags.nullInput && - !flags.invalidFormat && - !flags.userInvalidated && - (!flags.meridiem || (flags.meridiem && parsedParts)); - if (m._strict) { - isNowValid = - isNowValid && - flags.charsLeftOver === 0 && - flags.unusedTokens.length === 0 && - flags.bigHour === undefined; - } - } - if (Object.isFrozen == null || !Object.isFrozen(m)) { - m._isValid = isNowValid; - } else { - return isNowValid; - } - return m._isValid; - } - - function createInvalid(flags) { - var m = createUTC(NaN); - if (flags != null) { - extend(getParsingFlags(m), flags); - } else { - getParsingFlags(m).userInvalidated = true; - } - - return m; - } - - // Plugins that add properties should also add the key here (null value), - // so we can properly clone ourselves. - var momentProperties = (hooks.momentProperties = []), - updateInProgress = false; - - function copyConfig(to, from) { - var i, - prop, - val, - momentPropertiesLen = momentProperties.length; - - if (!isUndefined(from._isAMomentObject)) { - to._isAMomentObject = from._isAMomentObject; - } - if (!isUndefined(from._i)) { - to._i = from._i; - } - if (!isUndefined(from._f)) { - to._f = from._f; - } - if (!isUndefined(from._l)) { - to._l = from._l; - } - if (!isUndefined(from._strict)) { - to._strict = from._strict; - } - if (!isUndefined(from._tzm)) { - to._tzm = from._tzm; - } - if (!isUndefined(from._isUTC)) { - to._isUTC = from._isUTC; - } - if (!isUndefined(from._offset)) { - to._offset = from._offset; - } - if (!isUndefined(from._pf)) { - to._pf = getParsingFlags(from); - } - if (!isUndefined(from._locale)) { - to._locale = from._locale; - } - - if (momentPropertiesLen > 0) { - for (i = 0; i < momentPropertiesLen; i++) { - prop = momentProperties[i]; - val = from[prop]; - if (!isUndefined(val)) { - to[prop] = val; - } - } - } - - return to; - } - - // Moment prototype object - function Moment(config) { - copyConfig(this, config); - this._d = new Date(config._d != null ? config._d.getTime() : NaN); - if (!this.isValid()) { - this._d = new Date(NaN); - } - // Prevent infinite loop in case updateOffset creates new moment - // objects. - if (updateInProgress === false) { - updateInProgress = true; - hooks.updateOffset(this); - updateInProgress = false; - } - } - - function isMoment(obj) { - return ( - obj instanceof Moment || (obj != null && obj._isAMomentObject != null) - ); - } - - function warn(msg) { - if ( - hooks.suppressDeprecationWarnings === false && - typeof console !== 'undefined' && - console.warn - ) { - console.warn('Deprecation warning: ' + msg); - } - } - - function deprecate(msg, fn) { - var firstTime = true; - - return extend(function () { - if (hooks.deprecationHandler != null) { - hooks.deprecationHandler(null, msg); - } - if (firstTime) { - var args = [], - arg, - i, - key, - argLen = arguments.length; - for (i = 0; i < argLen; i++) { - arg = ''; - if (typeof arguments[i] === 'object') { - arg += '\n[' + i + '] '; - for (key in arguments[0]) { - if (hasOwnProp(arguments[0], key)) { - arg += key + ': ' + arguments[0][key] + ', '; - } - } - arg = arg.slice(0, -2); // Remove trailing comma and space - } else { - arg = arguments[i]; - } - args.push(arg); - } - warn( - msg + - '\nArguments: ' + - Array.prototype.slice.call(args).join('') + - '\n' + - new Error().stack - ); - firstTime = false; - } - return fn.apply(this, arguments); - }, fn); - } - - var deprecations = {}; - - function deprecateSimple(name, msg) { - if (hooks.deprecationHandler != null) { - hooks.deprecationHandler(name, msg); - } - if (!deprecations[name]) { - warn(msg); - deprecations[name] = true; - } - } - - hooks.suppressDeprecationWarnings = false; - hooks.deprecationHandler = null; - - function isFunction(input) { - return ( - (typeof Function !== 'undefined' && input instanceof Function) || - Object.prototype.toString.call(input) === '[object Function]' - ); - } - - function set(config) { - var prop, i; - for (i in config) { - if (hasOwnProp(config, i)) { - prop = config[i]; - if (isFunction(prop)) { - this[i] = prop; - } else { - this['_' + i] = prop; - } - } - } - this._config = config; - // Lenient ordinal parsing accepts just a number in addition to - // number + (possibly) stuff coming from _dayOfMonthOrdinalParse. - // TODO: Remove "ordinalParse" fallback in next major release. - this._dayOfMonthOrdinalParseLenient = new RegExp( - (this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) + - '|' + - /\d{1,2}/.source - ); - } - - function mergeConfigs(parentConfig, childConfig) { - var res = extend({}, parentConfig), - prop; - for (prop in childConfig) { - if (hasOwnProp(childConfig, prop)) { - if (isObject(parentConfig[prop]) && isObject(childConfig[prop])) { - res[prop] = {}; - extend(res[prop], parentConfig[prop]); - extend(res[prop], childConfig[prop]); - } else if (childConfig[prop] != null) { - res[prop] = childConfig[prop]; - } else { - delete res[prop]; - } - } - } - for (prop in parentConfig) { - if ( - hasOwnProp(parentConfig, prop) && - !hasOwnProp(childConfig, prop) && - isObject(parentConfig[prop]) - ) { - // make sure changes to properties don't modify parent config - res[prop] = extend({}, res[prop]); - } - } - return res; - } - - function Locale(config) { - if (config != null) { - this.set(config); - } - } - - var keys; - - if (Object.keys) { - keys = Object.keys; - } else { - keys = function (obj) { - var i, - res = []; - for (i in obj) { - if (hasOwnProp(obj, i)) { - res.push(i); - } - } - return res; - }; - } - - var defaultCalendar = { - sameDay: '[Today at] LT', - nextDay: '[Tomorrow at] LT', - nextWeek: 'dddd [at] LT', - lastDay: '[Yesterday at] LT', - lastWeek: '[Last] dddd [at] LT', - sameElse: 'L', - }; - - function calendar(key, mom, now) { - var output = this._calendar[key] || this._calendar['sameElse']; - return isFunction(output) ? output.call(mom, now) : output; - } - - function zeroFill(number, targetLength, forceSign) { - var absNumber = '' + Math.abs(number), - zerosToFill = targetLength - absNumber.length, - sign = number >= 0; - return ( - (sign ? (forceSign ? '+' : '') : '-') + - Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) + - absNumber - ); - } - - var formattingTokens = - /(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g, - localFormattingTokens = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g, - formatFunctions = {}, - formatTokenFunctions = {}; - - // token: 'M' - // padded: ['MM', 2] - // ordinal: 'Mo' - // callback: function () { this.month() + 1 } - function addFormatToken(token, padded, ordinal, callback) { - var func = callback; - if (typeof callback === 'string') { - func = function () { - return this[callback](); - }; - } - if (token) { - formatTokenFunctions[token] = func; - } - if (padded) { - formatTokenFunctions[padded[0]] = function () { - return zeroFill(func.apply(this, arguments), padded[1], padded[2]); - }; - } - if (ordinal) { - formatTokenFunctions[ordinal] = function () { - return this.localeData().ordinal( - func.apply(this, arguments), - token - ); - }; - } - } - - function removeFormattingTokens(input) { - if (input.match(/\[[\s\S]/)) { - return input.replace(/^\[|\]$/g, ''); - } - return input.replace(/\\/g, ''); - } - - function makeFormatFunction(format) { - var array = format.match(formattingTokens), - i, - length; - - for (i = 0, length = array.length; i < length; i++) { - if (formatTokenFunctions[array[i]]) { - array[i] = formatTokenFunctions[array[i]]; - } else { - array[i] = removeFormattingTokens(array[i]); - } - } - - return function (mom) { - var output = '', - i; - for (i = 0; i < length; i++) { - output += isFunction(array[i]) - ? array[i].call(mom, format) - : array[i]; - } - return output; - }; - } - - // format date using native date object - function formatMoment(m, format) { - if (!m.isValid()) { - return m.localeData().invalidDate(); - } - - format = expandFormat(format, m.localeData()); - formatFunctions[format] = - formatFunctions[format] || makeFormatFunction(format); - - return formatFunctions[format](m); - } - - function expandFormat(format, locale) { - var i = 5; - - function replaceLongDateFormatTokens(input) { - return locale.longDateFormat(input) || input; - } - - localFormattingTokens.lastIndex = 0; - while (i >= 0 && localFormattingTokens.test(format)) { - format = format.replace( - localFormattingTokens, - replaceLongDateFormatTokens - ); - localFormattingTokens.lastIndex = 0; - i -= 1; - } - - return format; - } - - var defaultLongDateFormat = { - LTS: 'h:mm:ss A', - LT: 'h:mm A', - L: 'MM/DD/YYYY', - LL: 'MMMM D, YYYY', - LLL: 'MMMM D, YYYY h:mm A', - LLLL: 'dddd, MMMM D, YYYY h:mm A', - }; - - function longDateFormat(key) { - var format = this._longDateFormat[key], - formatUpper = this._longDateFormat[key.toUpperCase()]; - - if (format || !formatUpper) { - return format; - } - - this._longDateFormat[key] = formatUpper - .match(formattingTokens) - .map(function (tok) { - if ( - tok === 'MMMM' || - tok === 'MM' || - tok === 'DD' || - tok === 'dddd' - ) { - return tok.slice(1); - } - return tok; - }) - .join(''); - - return this._longDateFormat[key]; - } - - var defaultInvalidDate = 'Invalid date'; - - function invalidDate() { - return this._invalidDate; - } - - var defaultOrdinal = '%d', - defaultDayOfMonthOrdinalParse = /\d{1,2}/; - - function ordinal(number) { - return this._ordinal.replace('%d', number); - } - - var defaultRelativeTime = { - future: 'in %s', - past: '%s ago', - s: 'a few seconds', - ss: '%d seconds', - m: 'a minute', - mm: '%d minutes', - h: 'an hour', - hh: '%d hours', - d: 'a day', - dd: '%d days', - w: 'a week', - ww: '%d weeks', - M: 'a month', - MM: '%d months', - y: 'a year', - yy: '%d years', - }; - - function relativeTime(number, withoutSuffix, string, isFuture) { - var output = this._relativeTime[string]; - return isFunction(output) - ? output(number, withoutSuffix, string, isFuture) - : output.replace(/%d/i, number); - } - - function pastFuture(diff, output) { - var format = this._relativeTime[diff > 0 ? 'future' : 'past']; - return isFunction(format) ? format(output) : format.replace(/%s/i, output); - } - - var aliases = { - D: 'date', - dates: 'date', - date: 'date', - d: 'day', - days: 'day', - day: 'day', - e: 'weekday', - weekdays: 'weekday', - weekday: 'weekday', - E: 'isoWeekday', - isoweekdays: 'isoWeekday', - isoweekday: 'isoWeekday', - DDD: 'dayOfYear', - dayofyears: 'dayOfYear', - dayofyear: 'dayOfYear', - h: 'hour', - hours: 'hour', - hour: 'hour', - ms: 'millisecond', - milliseconds: 'millisecond', - millisecond: 'millisecond', - m: 'minute', - minutes: 'minute', - minute: 'minute', - M: 'month', - months: 'month', - month: 'month', - Q: 'quarter', - quarters: 'quarter', - quarter: 'quarter', - s: 'second', - seconds: 'second', - second: 'second', - gg: 'weekYear', - weekyears: 'weekYear', - weekyear: 'weekYear', - GG: 'isoWeekYear', - isoweekyears: 'isoWeekYear', - isoweekyear: 'isoWeekYear', - w: 'week', - weeks: 'week', - week: 'week', - W: 'isoWeek', - isoweeks: 'isoWeek', - isoweek: 'isoWeek', - y: 'year', - years: 'year', - year: 'year', - }; - - function normalizeUnits(units) { - return typeof units === 'string' - ? aliases[units] || aliases[units.toLowerCase()] - : undefined; - } - - function normalizeObjectUnits(inputObject) { - var normalizedInput = {}, - normalizedProp, - prop; - - for (prop in inputObject) { - if (hasOwnProp(inputObject, prop)) { - normalizedProp = normalizeUnits(prop); - if (normalizedProp) { - normalizedInput[normalizedProp] = inputObject[prop]; - } - } - } - - return normalizedInput; - } - - var priorities = { - date: 9, - day: 11, - weekday: 11, - isoWeekday: 11, - dayOfYear: 4, - hour: 13, - millisecond: 16, - minute: 14, - month: 8, - quarter: 7, - second: 15, - weekYear: 1, - isoWeekYear: 1, - week: 5, - isoWeek: 5, - year: 1, - }; - - function getPrioritizedUnits(unitsObj) { - var units = [], - u; - for (u in unitsObj) { - if (hasOwnProp(unitsObj, u)) { - units.push({ unit: u, priority: priorities[u] }); - } - } - units.sort(function (a, b) { - return a.priority - b.priority; - }); - return units; - } - - var match1 = /\d/, // 0 - 9 - match2 = /\d\d/, // 00 - 99 - match3 = /\d{3}/, // 000 - 999 - match4 = /\d{4}/, // 0000 - 9999 - match6 = /[+-]?\d{6}/, // -999999 - 999999 - match1to2 = /\d\d?/, // 0 - 99 - match3to4 = /\d\d\d\d?/, // 999 - 9999 - match5to6 = /\d\d\d\d\d\d?/, // 99999 - 999999 - match1to3 = /\d{1,3}/, // 0 - 999 - match1to4 = /\d{1,4}/, // 0 - 9999 - match1to6 = /[+-]?\d{1,6}/, // -999999 - 999999 - matchUnsigned = /\d+/, // 0 - inf - matchSigned = /[+-]?\d+/, // -inf - inf - matchOffset = /Z|[+-]\d\d:?\d\d/gi, // +00:00 -00:00 +0000 -0000 or Z - matchShortOffset = /Z|[+-]\d\d(?::?\d\d)?/gi, // +00 -00 +00:00 -00:00 +0000 -0000 or Z - matchTimestamp = /[+-]?\d+(\.\d{1,3})?/, // 123456789 123456789.123 - // any word (or two) characters or numbers including two/three word month in arabic. - // includes scottish gaelic two word and hyphenated months - matchWord = - /[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i, - match1to2NoLeadingZero = /^[1-9]\d?/, // 1-99 - match1to2HasZero = /^([1-9]\d|\d)/, // 0-99 - regexes; - - regexes = {}; - - function addRegexToken(token, regex, strictRegex) { - regexes[token] = isFunction(regex) - ? regex - : function (isStrict, localeData) { - return isStrict && strictRegex ? strictRegex : regex; - }; - } - - function getParseRegexForToken(token, config) { - if (!hasOwnProp(regexes, token)) { - return new RegExp(unescapeFormat(token)); - } - - return regexes[token](config._strict, config._locale); - } - - // Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript - function unescapeFormat(s) { - return regexEscape( - s - .replace('\\', '') - .replace( - /\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g, - function (matched, p1, p2, p3, p4) { - return p1 || p2 || p3 || p4; - } - ) - ); - } - - function regexEscape(s) { - return s.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&'); - } - - function absFloor(number) { - if (number < 0) { - // -0 -> 0 - return Math.ceil(number) || 0; - } else { - return Math.floor(number); - } - } - - function toInt(argumentForCoercion) { - var coercedNumber = +argumentForCoercion, - value = 0; - - if (coercedNumber !== 0 && isFinite(coercedNumber)) { - value = absFloor(coercedNumber); - } - - return value; - } - - var tokens = {}; - - function addParseToken(token, callback) { - var i, - func = callback, - tokenLen; - if (typeof token === 'string') { - token = [token]; - } - if (isNumber(callback)) { - func = function (input, array) { - array[callback] = toInt(input); - }; - } - tokenLen = token.length; - for (i = 0; i < tokenLen; i++) { - tokens[token[i]] = func; - } - } - - function addWeekParseToken(token, callback) { - addParseToken(token, function (input, array, config, token) { - config._w = config._w || {}; - callback(input, config._w, config, token); - }); - } - - function addTimeToArrayFromToken(token, input, config) { - if (input != null && hasOwnProp(tokens, token)) { - tokens[token](input, config._a, config, token); - } - } - - function isLeapYear(year) { - return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0; - } - - var YEAR = 0, - MONTH = 1, - DATE = 2, - HOUR = 3, - MINUTE = 4, - SECOND = 5, - MILLISECOND = 6, - WEEK = 7, - WEEKDAY = 8; - - // FORMATTING - - addFormatToken('Y', 0, 0, function () { - var y = this.year(); - return y <= 9999 ? zeroFill(y, 4) : '+' + y; - }); - - addFormatToken(0, ['YY', 2], 0, function () { - return this.year() % 100; - }); - - addFormatToken(0, ['YYYY', 4], 0, 'year'); - addFormatToken(0, ['YYYYY', 5], 0, 'year'); - addFormatToken(0, ['YYYYYY', 6, true], 0, 'year'); - - // PARSING - - addRegexToken('Y', matchSigned); - addRegexToken('YY', match1to2, match2); - addRegexToken('YYYY', match1to4, match4); - addRegexToken('YYYYY', match1to6, match6); - addRegexToken('YYYYYY', match1to6, match6); - - addParseToken(['YYYYY', 'YYYYYY'], YEAR); - addParseToken('YYYY', function (input, array) { - array[YEAR] = - input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input); - }); - addParseToken('YY', function (input, array) { - array[YEAR] = hooks.parseTwoDigitYear(input); - }); - addParseToken('Y', function (input, array) { - array[YEAR] = parseInt(input, 10); - }); - - // HELPERS - - function daysInYear(year) { - return isLeapYear(year) ? 366 : 365; - } - - // HOOKS - - hooks.parseTwoDigitYear = function (input) { - return toInt(input) + (toInt(input) > 68 ? 1900 : 2000); - }; - - // MOMENTS - - var getSetYear = makeGetSet('FullYear', true); - - function getIsLeapYear() { - return isLeapYear(this.year()); - } - - function makeGetSet(unit, keepTime) { - return function (value) { - if (value != null) { - set$1(this, unit, value); - hooks.updateOffset(this, keepTime); - return this; - } else { - return get(this, unit); - } - }; - } - - function get(mom, unit) { - if (!mom.isValid()) { - return NaN; - } - - var d = mom._d, - isUTC = mom._isUTC; - - switch (unit) { - case 'Milliseconds': - return isUTC ? d.getUTCMilliseconds() : d.getMilliseconds(); - case 'Seconds': - return isUTC ? d.getUTCSeconds() : d.getSeconds(); - case 'Minutes': - return isUTC ? d.getUTCMinutes() : d.getMinutes(); - case 'Hours': - return isUTC ? d.getUTCHours() : d.getHours(); - case 'Date': - return isUTC ? d.getUTCDate() : d.getDate(); - case 'Day': - return isUTC ? d.getUTCDay() : d.getDay(); - case 'Month': - return isUTC ? d.getUTCMonth() : d.getMonth(); - case 'FullYear': - return isUTC ? d.getUTCFullYear() : d.getFullYear(); - default: - return NaN; // Just in case - } - } - - function set$1(mom, unit, value) { - var d, isUTC, year, month, date; - - if (!mom.isValid() || isNaN(value)) { - return; - } - - d = mom._d; - isUTC = mom._isUTC; - - switch (unit) { - case 'Milliseconds': - return void (isUTC - ? d.setUTCMilliseconds(value) - : d.setMilliseconds(value)); - case 'Seconds': - return void (isUTC ? d.setUTCSeconds(value) : d.setSeconds(value)); - case 'Minutes': - return void (isUTC ? d.setUTCMinutes(value) : d.setMinutes(value)); - case 'Hours': - return void (isUTC ? d.setUTCHours(value) : d.setHours(value)); - case 'Date': - return void (isUTC ? d.setUTCDate(value) : d.setDate(value)); - // case 'Day': // Not real - // return void (isUTC ? d.setUTCDay(value) : d.setDay(value)); - // case 'Month': // Not used because we need to pass two variables - // return void (isUTC ? d.setUTCMonth(value) : d.setMonth(value)); - case 'FullYear': - break; // See below ... - default: - return; // Just in case - } - - year = value; - month = mom.month(); - date = mom.date(); - date = date === 29 && month === 1 && !isLeapYear(year) ? 28 : date; - void (isUTC - ? d.setUTCFullYear(year, month, date) - : d.setFullYear(year, month, date)); - } - - // MOMENTS - - function stringGet(units) { - units = normalizeUnits(units); - if (isFunction(this[units])) { - return this[units](); - } - return this; - } - - function stringSet(units, value) { - if (typeof units === 'object') { - units = normalizeObjectUnits(units); - var prioritized = getPrioritizedUnits(units), - i, - prioritizedLen = prioritized.length; - for (i = 0; i < prioritizedLen; i++) { - this[prioritized[i].unit](units[prioritized[i].unit]); - } - } else { - units = normalizeUnits(units); - if (isFunction(this[units])) { - return this[units](value); - } - } - return this; - } - - function mod(n, x) { - return ((n % x) + x) % x; - } - - var indexOf; - - if (Array.prototype.indexOf) { - indexOf = Array.prototype.indexOf; - } else { - indexOf = function (o) { - // I know - var i; - for (i = 0; i < this.length; ++i) { - if (this[i] === o) { - return i; - } - } - return -1; - }; - } - - function daysInMonth(year, month) { - if (isNaN(year) || isNaN(month)) { - return NaN; - } - var modMonth = mod(month, 12); - year += (month - modMonth) / 12; - return modMonth === 1 - ? isLeapYear(year) - ? 29 - : 28 - : 31 - ((modMonth % 7) % 2); - } - - // FORMATTING - - addFormatToken('M', ['MM', 2], 'Mo', function () { - return this.month() + 1; - }); - - addFormatToken('MMM', 0, 0, function (format) { - return this.localeData().monthsShort(this, format); - }); - - addFormatToken('MMMM', 0, 0, function (format) { - return this.localeData().months(this, format); - }); - - // PARSING - - addRegexToken('M', match1to2, match1to2NoLeadingZero); - addRegexToken('MM', match1to2, match2); - addRegexToken('MMM', function (isStrict, locale) { - return locale.monthsShortRegex(isStrict); - }); - addRegexToken('MMMM', function (isStrict, locale) { - return locale.monthsRegex(isStrict); - }); - - addParseToken(['M', 'MM'], function (input, array) { - array[MONTH] = toInt(input) - 1; - }); - - addParseToken(['MMM', 'MMMM'], function (input, array, config, token) { - var month = config._locale.monthsParse(input, token, config._strict); - // if we didn't find a month name, mark the date as invalid. - if (month != null) { - array[MONTH] = month; - } else { - getParsingFlags(config).invalidMonth = input; - } - }); - - // LOCALES - - var defaultLocaleMonths = - 'January_February_March_April_May_June_July_August_September_October_November_December'.split( - '_' - ), - defaultLocaleMonthsShort = - 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), - MONTHS_IN_FORMAT = /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/, - defaultMonthsShortRegex = matchWord, - defaultMonthsRegex = matchWord; - - function localeMonths(m, format) { - if (!m) { - return isArray(this._months) - ? this._months - : this._months['standalone']; - } - return isArray(this._months) - ? this._months[m.month()] - : this._months[ - (this._months.isFormat || MONTHS_IN_FORMAT).test(format) - ? 'format' - : 'standalone' - ][m.month()]; - } - - function localeMonthsShort(m, format) { - if (!m) { - return isArray(this._monthsShort) - ? this._monthsShort - : this._monthsShort['standalone']; - } - return isArray(this._monthsShort) - ? this._monthsShort[m.month()] - : this._monthsShort[ - MONTHS_IN_FORMAT.test(format) ? 'format' : 'standalone' - ][m.month()]; - } - - function handleStrictParse(monthName, format, strict) { - var i, - ii, - mom, - llc = monthName.toLocaleLowerCase(); - if (!this._monthsParse) { - // this is not used - this._monthsParse = []; - this._longMonthsParse = []; - this._shortMonthsParse = []; - for (i = 0; i < 12; ++i) { - mom = createUTC([2000, i]); - this._shortMonthsParse[i] = this.monthsShort( - mom, - '' - ).toLocaleLowerCase(); - this._longMonthsParse[i] = this.months(mom, '').toLocaleLowerCase(); - } - } - - if (strict) { - if (format === 'MMM') { - ii = indexOf.call(this._shortMonthsParse, llc); - return ii !== -1 ? ii : null; - } else { - ii = indexOf.call(this._longMonthsParse, llc); - return ii !== -1 ? ii : null; - } - } else { - if (format === 'MMM') { - ii = indexOf.call(this._shortMonthsParse, llc); - if (ii !== -1) { - return ii; - } - ii = indexOf.call(this._longMonthsParse, llc); - return ii !== -1 ? ii : null; - } else { - ii = indexOf.call(this._longMonthsParse, llc); - if (ii !== -1) { - return ii; - } - ii = indexOf.call(this._shortMonthsParse, llc); - return ii !== -1 ? ii : null; - } - } - } - - function localeMonthsParse(monthName, format, strict) { - var i, mom, regex; - - if (this._monthsParseExact) { - return handleStrictParse.call(this, monthName, format, strict); - } - - if (!this._monthsParse) { - this._monthsParse = []; - this._longMonthsParse = []; - this._shortMonthsParse = []; - } - - // TODO: add sorting - // Sorting makes sure if one month (or abbr) is a prefix of another - // see sorting in computeMonthsParse - for (i = 0; i < 12; i++) { - // make the regex if we don't have it already - mom = createUTC([2000, i]); - if (strict && !this._longMonthsParse[i]) { - this._longMonthsParse[i] = new RegExp( - '^' + this.months(mom, '').replace('.', '') + '$', - 'i' - ); - this._shortMonthsParse[i] = new RegExp( - '^' + this.monthsShort(mom, '').replace('.', '') + '$', - 'i' - ); - } - if (!strict && !this._monthsParse[i]) { - regex = - '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, ''); - this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i'); - } - // test the regex - if ( - strict && - format === 'MMMM' && - this._longMonthsParse[i].test(monthName) - ) { - return i; - } else if ( - strict && - format === 'MMM' && - this._shortMonthsParse[i].test(monthName) - ) { - return i; - } else if (!strict && this._monthsParse[i].test(monthName)) { - return i; - } - } - } - - // MOMENTS - - function setMonth(mom, value) { - if (!mom.isValid()) { - // No op - return mom; - } - - if (typeof value === 'string') { - if (/^\d+$/.test(value)) { - value = toInt(value); - } else { - value = mom.localeData().monthsParse(value); - // TODO: Another silent failure? - if (!isNumber(value)) { - return mom; - } - } - } - - var month = value, - date = mom.date(); - - date = date < 29 ? date : Math.min(date, daysInMonth(mom.year(), month)); - void (mom._isUTC - ? mom._d.setUTCMonth(month, date) - : mom._d.setMonth(month, date)); - return mom; - } - - function getSetMonth(value) { - if (value != null) { - setMonth(this, value); - hooks.updateOffset(this, true); - return this; - } else { - return get(this, 'Month'); - } - } - - function getDaysInMonth() { - return daysInMonth(this.year(), this.month()); - } - - function monthsShortRegex(isStrict) { - if (this._monthsParseExact) { - if (!hasOwnProp(this, '_monthsRegex')) { - computeMonthsParse.call(this); - } - if (isStrict) { - return this._monthsShortStrictRegex; - } else { - return this._monthsShortRegex; - } - } else { - if (!hasOwnProp(this, '_monthsShortRegex')) { - this._monthsShortRegex = defaultMonthsShortRegex; - } - return this._monthsShortStrictRegex && isStrict - ? this._monthsShortStrictRegex - : this._monthsShortRegex; - } - } - - function monthsRegex(isStrict) { - if (this._monthsParseExact) { - if (!hasOwnProp(this, '_monthsRegex')) { - computeMonthsParse.call(this); - } - if (isStrict) { - return this._monthsStrictRegex; - } else { - return this._monthsRegex; - } - } else { - if (!hasOwnProp(this, '_monthsRegex')) { - this._monthsRegex = defaultMonthsRegex; - } - return this._monthsStrictRegex && isStrict - ? this._monthsStrictRegex - : this._monthsRegex; - } - } - - function computeMonthsParse() { - function cmpLenRev(a, b) { - return b.length - a.length; - } - - var shortPieces = [], - longPieces = [], - mixedPieces = [], - i, - mom, - shortP, - longP; - for (i = 0; i < 12; i++) { - // make the regex if we don't have it already - mom = createUTC([2000, i]); - shortP = regexEscape(this.monthsShort(mom, '')); - longP = regexEscape(this.months(mom, '')); - shortPieces.push(shortP); - longPieces.push(longP); - mixedPieces.push(longP); - mixedPieces.push(shortP); - } - // Sorting makes sure if one month (or abbr) is a prefix of another it - // will match the longer piece. - shortPieces.sort(cmpLenRev); - longPieces.sort(cmpLenRev); - mixedPieces.sort(cmpLenRev); - - this._monthsRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i'); - this._monthsShortRegex = this._monthsRegex; - this._monthsStrictRegex = new RegExp( - '^(' + longPieces.join('|') + ')', - 'i' - ); - this._monthsShortStrictRegex = new RegExp( - '^(' + shortPieces.join('|') + ')', - 'i' - ); - } - - function createDate(y, m, d, h, M, s, ms) { - // can't just apply() to create a date: - // https://stackoverflow.com/q/181348 - var date; - // the date constructor remaps years 0-99 to 1900-1999 - if (y < 100 && y >= 0) { - // preserve leap years using a full 400 year cycle, then reset - date = new Date(y + 400, m, d, h, M, s, ms); - if (isFinite(date.getFullYear())) { - date.setFullYear(y); - } - } else { - date = new Date(y, m, d, h, M, s, ms); - } - - return date; - } - - function createUTCDate(y) { - var date, args; - // the Date.UTC function remaps years 0-99 to 1900-1999 - if (y < 100 && y >= 0) { - args = Array.prototype.slice.call(arguments); - // preserve leap years using a full 400 year cycle, then reset - args[0] = y + 400; - date = new Date(Date.UTC.apply(null, args)); - if (isFinite(date.getUTCFullYear())) { - date.setUTCFullYear(y); - } - } else { - date = new Date(Date.UTC.apply(null, arguments)); - } - - return date; - } - - // start-of-first-week - start-of-year - function firstWeekOffset(year, dow, doy) { - var // first-week day -- which january is always in the first week (4 for iso, 1 for other) - fwd = 7 + dow - doy, - // first-week day local weekday -- which local weekday is fwd - fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7; - - return -fwdlw + fwd - 1; - } - - // https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday - function dayOfYearFromWeeks(year, week, weekday, dow, doy) { - var localWeekday = (7 + weekday - dow) % 7, - weekOffset = firstWeekOffset(year, dow, doy), - dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset, - resYear, - resDayOfYear; - - if (dayOfYear <= 0) { - resYear = year - 1; - resDayOfYear = daysInYear(resYear) + dayOfYear; - } else if (dayOfYear > daysInYear(year)) { - resYear = year + 1; - resDayOfYear = dayOfYear - daysInYear(year); - } else { - resYear = year; - resDayOfYear = dayOfYear; - } - - return { - year: resYear, - dayOfYear: resDayOfYear, - }; - } - - function weekOfYear(mom, dow, doy) { - var weekOffset = firstWeekOffset(mom.year(), dow, doy), - week = Math.floor((mom.dayOfYear() - weekOffset - 1) / 7) + 1, - resWeek, - resYear; - - if (week < 1) { - resYear = mom.year() - 1; - resWeek = week + weeksInYear(resYear, dow, doy); - } else if (week > weeksInYear(mom.year(), dow, doy)) { - resWeek = week - weeksInYear(mom.year(), dow, doy); - resYear = mom.year() + 1; - } else { - resYear = mom.year(); - resWeek = week; - } - - return { - week: resWeek, - year: resYear, - }; - } - - function weeksInYear(year, dow, doy) { - var weekOffset = firstWeekOffset(year, dow, doy), - weekOffsetNext = firstWeekOffset(year + 1, dow, doy); - return (daysInYear(year) - weekOffset + weekOffsetNext) / 7; - } - - // FORMATTING - - addFormatToken('w', ['ww', 2], 'wo', 'week'); - addFormatToken('W', ['WW', 2], 'Wo', 'isoWeek'); - - // PARSING - - addRegexToken('w', match1to2, match1to2NoLeadingZero); - addRegexToken('ww', match1to2, match2); - addRegexToken('W', match1to2, match1to2NoLeadingZero); - addRegexToken('WW', match1to2, match2); - - addWeekParseToken( - ['w', 'ww', 'W', 'WW'], - function (input, week, config, token) { - week[token.substr(0, 1)] = toInt(input); - } - ); - - // HELPERS - - // LOCALES - - function localeWeek(mom) { - return weekOfYear(mom, this._week.dow, this._week.doy).week; - } - - var defaultLocaleWeek = { - dow: 0, // Sunday is the first day of the week. - doy: 6, // The week that contains Jan 6th is the first week of the year. - }; - - function localeFirstDayOfWeek() { - return this._week.dow; - } - - function localeFirstDayOfYear() { - return this._week.doy; - } - - // MOMENTS - - function getSetWeek(input) { - var week = this.localeData().week(this); - return input == null ? week : this.add((input - week) * 7, 'd'); - } - - function getSetISOWeek(input) { - var week = weekOfYear(this, 1, 4).week; - return input == null ? week : this.add((input - week) * 7, 'd'); - } - - // FORMATTING - - addFormatToken('d', 0, 'do', 'day'); - - addFormatToken('dd', 0, 0, function (format) { - return this.localeData().weekdaysMin(this, format); - }); - - addFormatToken('ddd', 0, 0, function (format) { - return this.localeData().weekdaysShort(this, format); - }); - - addFormatToken('dddd', 0, 0, function (format) { - return this.localeData().weekdays(this, format); - }); - - addFormatToken('e', 0, 0, 'weekday'); - addFormatToken('E', 0, 0, 'isoWeekday'); - - // PARSING - - addRegexToken('d', match1to2); - addRegexToken('e', match1to2); - addRegexToken('E', match1to2); - addRegexToken('dd', function (isStrict, locale) { - return locale.weekdaysMinRegex(isStrict); - }); - addRegexToken('ddd', function (isStrict, locale) { - return locale.weekdaysShortRegex(isStrict); - }); - addRegexToken('dddd', function (isStrict, locale) { - return locale.weekdaysRegex(isStrict); - }); - - addWeekParseToken(['dd', 'ddd', 'dddd'], function (input, week, config, token) { - var weekday = config._locale.weekdaysParse(input, token, config._strict); - // if we didn't get a weekday name, mark the date as invalid - if (weekday != null) { - week.d = weekday; - } else { - getParsingFlags(config).invalidWeekday = input; - } - }); - - addWeekParseToken(['d', 'e', 'E'], function (input, week, config, token) { - week[token] = toInt(input); - }); - - // HELPERS - - function parseWeekday(input, locale) { - if (typeof input !== 'string') { - return input; - } - - if (!isNaN(input)) { - return parseInt(input, 10); - } - - input = locale.weekdaysParse(input); - if (typeof input === 'number') { - return input; - } - - return null; - } - - function parseIsoWeekday(input, locale) { - if (typeof input === 'string') { - return locale.weekdaysParse(input) % 7 || 7; - } - return isNaN(input) ? null : input; - } - - // LOCALES - function shiftWeekdays(ws, n) { - return ws.slice(n, 7).concat(ws.slice(0, n)); - } - - var defaultLocaleWeekdays = - 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'), - defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), - defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), - defaultWeekdaysRegex = matchWord, - defaultWeekdaysShortRegex = matchWord, - defaultWeekdaysMinRegex = matchWord; - - function localeWeekdays(m, format) { - var weekdays = isArray(this._weekdays) - ? this._weekdays - : this._weekdays[ - m && m !== true && this._weekdays.isFormat.test(format) - ? 'format' - : 'standalone' - ]; - return m === true - ? shiftWeekdays(weekdays, this._week.dow) - : m - ? weekdays[m.day()] - : weekdays; - } - - function localeWeekdaysShort(m) { - return m === true - ? shiftWeekdays(this._weekdaysShort, this._week.dow) - : m - ? this._weekdaysShort[m.day()] - : this._weekdaysShort; - } - - function localeWeekdaysMin(m) { - return m === true - ? shiftWeekdays(this._weekdaysMin, this._week.dow) - : m - ? this._weekdaysMin[m.day()] - : this._weekdaysMin; - } - - function handleStrictParse$1(weekdayName, format, strict) { - var i, - ii, - mom, - llc = weekdayName.toLocaleLowerCase(); - if (!this._weekdaysParse) { - this._weekdaysParse = []; - this._shortWeekdaysParse = []; - this._minWeekdaysParse = []; - - for (i = 0; i < 7; ++i) { - mom = createUTC([2000, 1]).day(i); - this._minWeekdaysParse[i] = this.weekdaysMin( - mom, - '' - ).toLocaleLowerCase(); - this._shortWeekdaysParse[i] = this.weekdaysShort( - mom, - '' - ).toLocaleLowerCase(); - this._weekdaysParse[i] = this.weekdays(mom, '').toLocaleLowerCase(); - } - } - - if (strict) { - if (format === 'dddd') { - ii = indexOf.call(this._weekdaysParse, llc); - return ii !== -1 ? ii : null; - } else if (format === 'ddd') { - ii = indexOf.call(this._shortWeekdaysParse, llc); - return ii !== -1 ? ii : null; - } else { - ii = indexOf.call(this._minWeekdaysParse, llc); - return ii !== -1 ? ii : null; - } - } else { - if (format === 'dddd') { - ii = indexOf.call(this._weekdaysParse, llc); - if (ii !== -1) { - return ii; - } - ii = indexOf.call(this._shortWeekdaysParse, llc); - if (ii !== -1) { - return ii; - } - ii = indexOf.call(this._minWeekdaysParse, llc); - return ii !== -1 ? ii : null; - } else if (format === 'ddd') { - ii = indexOf.call(this._shortWeekdaysParse, llc); - if (ii !== -1) { - return ii; - } - ii = indexOf.call(this._weekdaysParse, llc); - if (ii !== -1) { - return ii; - } - ii = indexOf.call(this._minWeekdaysParse, llc); - return ii !== -1 ? ii : null; - } else { - ii = indexOf.call(this._minWeekdaysParse, llc); - if (ii !== -1) { - return ii; - } - ii = indexOf.call(this._weekdaysParse, llc); - if (ii !== -1) { - return ii; - } - ii = indexOf.call(this._shortWeekdaysParse, llc); - return ii !== -1 ? ii : null; - } - } - } - - function localeWeekdaysParse(weekdayName, format, strict) { - var i, mom, regex; - - if (this._weekdaysParseExact) { - return handleStrictParse$1.call(this, weekdayName, format, strict); - } - - if (!this._weekdaysParse) { - this._weekdaysParse = []; - this._minWeekdaysParse = []; - this._shortWeekdaysParse = []; - this._fullWeekdaysParse = []; - } - - for (i = 0; i < 7; i++) { - // make the regex if we don't have it already - - mom = createUTC([2000, 1]).day(i); - if (strict && !this._fullWeekdaysParse[i]) { - this._fullWeekdaysParse[i] = new RegExp( - '^' + this.weekdays(mom, '').replace('.', '\\.?') + '$', - 'i' - ); - this._shortWeekdaysParse[i] = new RegExp( - '^' + this.weekdaysShort(mom, '').replace('.', '\\.?') + '$', - 'i' - ); - this._minWeekdaysParse[i] = new RegExp( - '^' + this.weekdaysMin(mom, '').replace('.', '\\.?') + '$', - 'i' - ); - } - if (!this._weekdaysParse[i]) { - regex = - '^' + - this.weekdays(mom, '') + - '|^' + - this.weekdaysShort(mom, '') + - '|^' + - this.weekdaysMin(mom, ''); - this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i'); - } - // test the regex - if ( - strict && - format === 'dddd' && - this._fullWeekdaysParse[i].test(weekdayName) - ) { - return i; - } else if ( - strict && - format === 'ddd' && - this._shortWeekdaysParse[i].test(weekdayName) - ) { - return i; - } else if ( - strict && - format === 'dd' && - this._minWeekdaysParse[i].test(weekdayName) - ) { - return i; - } else if (!strict && this._weekdaysParse[i].test(weekdayName)) { - return i; - } - } - } - - // MOMENTS - - function getSetDayOfWeek(input) { - if (!this.isValid()) { - return input != null ? this : NaN; - } - - var day = get(this, 'Day'); - if (input != null) { - input = parseWeekday(input, this.localeData()); - return this.add(input - day, 'd'); - } else { - return day; - } - } - - function getSetLocaleDayOfWeek(input) { - if (!this.isValid()) { - return input != null ? this : NaN; - } - var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7; - return input == null ? weekday : this.add(input - weekday, 'd'); - } - - function getSetISODayOfWeek(input) { - if (!this.isValid()) { - return input != null ? this : NaN; - } - - // behaves the same as moment#day except - // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6) - // as a setter, sunday should belong to the previous week. - - if (input != null) { - var weekday = parseIsoWeekday(input, this.localeData()); - return this.day(this.day() % 7 ? weekday : weekday - 7); - } else { - return this.day() || 7; - } - } - - function weekdaysRegex(isStrict) { - if (this._weekdaysParseExact) { - if (!hasOwnProp(this, '_weekdaysRegex')) { - computeWeekdaysParse.call(this); - } - if (isStrict) { - return this._weekdaysStrictRegex; - } else { - return this._weekdaysRegex; - } - } else { - if (!hasOwnProp(this, '_weekdaysRegex')) { - this._weekdaysRegex = defaultWeekdaysRegex; - } - return this._weekdaysStrictRegex && isStrict - ? this._weekdaysStrictRegex - : this._weekdaysRegex; - } - } - - function weekdaysShortRegex(isStrict) { - if (this._weekdaysParseExact) { - if (!hasOwnProp(this, '_weekdaysRegex')) { - computeWeekdaysParse.call(this); - } - if (isStrict) { - return this._weekdaysShortStrictRegex; - } else { - return this._weekdaysShortRegex; - } - } else { - if (!hasOwnProp(this, '_weekdaysShortRegex')) { - this._weekdaysShortRegex = defaultWeekdaysShortRegex; - } - return this._weekdaysShortStrictRegex && isStrict - ? this._weekdaysShortStrictRegex - : this._weekdaysShortRegex; - } - } - - function weekdaysMinRegex(isStrict) { - if (this._weekdaysParseExact) { - if (!hasOwnProp(this, '_weekdaysRegex')) { - computeWeekdaysParse.call(this); - } - if (isStrict) { - return this._weekdaysMinStrictRegex; - } else { - return this._weekdaysMinRegex; - } - } else { - if (!hasOwnProp(this, '_weekdaysMinRegex')) { - this._weekdaysMinRegex = defaultWeekdaysMinRegex; - } - return this._weekdaysMinStrictRegex && isStrict - ? this._weekdaysMinStrictRegex - : this._weekdaysMinRegex; - } - } - - function computeWeekdaysParse() { - function cmpLenRev(a, b) { - return b.length - a.length; - } - - var minPieces = [], - shortPieces = [], - longPieces = [], - mixedPieces = [], - i, - mom, - minp, - shortp, - longp; - for (i = 0; i < 7; i++) { - // make the regex if we don't have it already - mom = createUTC([2000, 1]).day(i); - minp = regexEscape(this.weekdaysMin(mom, '')); - shortp = regexEscape(this.weekdaysShort(mom, '')); - longp = regexEscape(this.weekdays(mom, '')); - minPieces.push(minp); - shortPieces.push(shortp); - longPieces.push(longp); - mixedPieces.push(minp); - mixedPieces.push(shortp); - mixedPieces.push(longp); - } - // Sorting makes sure if one weekday (or abbr) is a prefix of another it - // will match the longer piece. - minPieces.sort(cmpLenRev); - shortPieces.sort(cmpLenRev); - longPieces.sort(cmpLenRev); - mixedPieces.sort(cmpLenRev); - - this._weekdaysRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i'); - this._weekdaysShortRegex = this._weekdaysRegex; - this._weekdaysMinRegex = this._weekdaysRegex; - - this._weekdaysStrictRegex = new RegExp( - '^(' + longPieces.join('|') + ')', - 'i' - ); - this._weekdaysShortStrictRegex = new RegExp( - '^(' + shortPieces.join('|') + ')', - 'i' - ); - this._weekdaysMinStrictRegex = new RegExp( - '^(' + minPieces.join('|') + ')', - 'i' - ); - } - - // FORMATTING - - function hFormat() { - return this.hours() % 12 || 12; - } - - function kFormat() { - return this.hours() || 24; - } - - addFormatToken('H', ['HH', 2], 0, 'hour'); - addFormatToken('h', ['hh', 2], 0, hFormat); - addFormatToken('k', ['kk', 2], 0, kFormat); - - addFormatToken('hmm', 0, 0, function () { - return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2); - }); - - addFormatToken('hmmss', 0, 0, function () { - return ( - '' + - hFormat.apply(this) + - zeroFill(this.minutes(), 2) + - zeroFill(this.seconds(), 2) - ); - }); - - addFormatToken('Hmm', 0, 0, function () { - return '' + this.hours() + zeroFill(this.minutes(), 2); - }); - - addFormatToken('Hmmss', 0, 0, function () { - return ( - '' + - this.hours() + - zeroFill(this.minutes(), 2) + - zeroFill(this.seconds(), 2) - ); - }); - - function meridiem(token, lowercase) { - addFormatToken(token, 0, 0, function () { - return this.localeData().meridiem( - this.hours(), - this.minutes(), - lowercase - ); - }); - } - - meridiem('a', true); - meridiem('A', false); - - // PARSING - - function matchMeridiem(isStrict, locale) { - return locale._meridiemParse; - } - - addRegexToken('a', matchMeridiem); - addRegexToken('A', matchMeridiem); - addRegexToken('H', match1to2, match1to2HasZero); - addRegexToken('h', match1to2, match1to2NoLeadingZero); - addRegexToken('k', match1to2, match1to2NoLeadingZero); - addRegexToken('HH', match1to2, match2); - addRegexToken('hh', match1to2, match2); - addRegexToken('kk', match1to2, match2); - - addRegexToken('hmm', match3to4); - addRegexToken('hmmss', match5to6); - addRegexToken('Hmm', match3to4); - addRegexToken('Hmmss', match5to6); - - addParseToken(['H', 'HH'], HOUR); - addParseToken(['k', 'kk'], function (input, array, config) { - var kInput = toInt(input); - array[HOUR] = kInput === 24 ? 0 : kInput; - }); - addParseToken(['a', 'A'], function (input, array, config) { - config._isPm = config._locale.isPM(input); - config._meridiem = input; - }); - addParseToken(['h', 'hh'], function (input, array, config) { - array[HOUR] = toInt(input); - getParsingFlags(config).bigHour = true; - }); - addParseToken('hmm', function (input, array, config) { - var pos = input.length - 2; - array[HOUR] = toInt(input.substr(0, pos)); - array[MINUTE] = toInt(input.substr(pos)); - getParsingFlags(config).bigHour = true; - }); - addParseToken('hmmss', function (input, array, config) { - var pos1 = input.length - 4, - pos2 = input.length - 2; - array[HOUR] = toInt(input.substr(0, pos1)); - array[MINUTE] = toInt(input.substr(pos1, 2)); - array[SECOND] = toInt(input.substr(pos2)); - getParsingFlags(config).bigHour = true; - }); - addParseToken('Hmm', function (input, array, config) { - var pos = input.length - 2; - array[HOUR] = toInt(input.substr(0, pos)); - array[MINUTE] = toInt(input.substr(pos)); - }); - addParseToken('Hmmss', function (input, array, config) { - var pos1 = input.length - 4, - pos2 = input.length - 2; - array[HOUR] = toInt(input.substr(0, pos1)); - array[MINUTE] = toInt(input.substr(pos1, 2)); - array[SECOND] = toInt(input.substr(pos2)); - }); - - // LOCALES - - function localeIsPM(input) { - // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays - // Using charAt should be more compatible. - return (input + '').toLowerCase().charAt(0) === 'p'; - } - - var defaultLocaleMeridiemParse = /[ap]\.?m?\.?/i, - // Setting the hour should keep the time, because the user explicitly - // specified which hour they want. So trying to maintain the same hour (in - // a new timezone) makes sense. Adding/subtracting hours does not follow - // this rule. - getSetHour = makeGetSet('Hours', true); - - function localeMeridiem(hours, minutes, isLower) { - if (hours > 11) { - return isLower ? 'pm' : 'PM'; - } else { - return isLower ? 'am' : 'AM'; - } - } - - var baseConfig = { - calendar: defaultCalendar, - longDateFormat: defaultLongDateFormat, - invalidDate: defaultInvalidDate, - ordinal: defaultOrdinal, - dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse, - relativeTime: defaultRelativeTime, - - months: defaultLocaleMonths, - monthsShort: defaultLocaleMonthsShort, - - week: defaultLocaleWeek, - - weekdays: defaultLocaleWeekdays, - weekdaysMin: defaultLocaleWeekdaysMin, - weekdaysShort: defaultLocaleWeekdaysShort, - - meridiemParse: defaultLocaleMeridiemParse, - }; - - // internal storage for locale config files - var locales = {}, - localeFamilies = {}, - globalLocale; - - function commonPrefix(arr1, arr2) { - var i, - minl = Math.min(arr1.length, arr2.length); - for (i = 0; i < minl; i += 1) { - if (arr1[i] !== arr2[i]) { - return i; - } - } - return minl; - } - - function normalizeLocale(key) { - return key ? key.toLowerCase().replace('_', '-') : key; - } - - // pick the locale from the array - // try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each - // substring from most specific to least, but move to the next array item if it's a more specific variant than the current root - function chooseLocale(names) { - var i = 0, - j, - next, - locale, - split; - - while (i < names.length) { - split = normalizeLocale(names[i]).split('-'); - j = split.length; - next = normalizeLocale(names[i + 1]); - next = next ? next.split('-') : null; - while (j > 0) { - locale = loadLocale(split.slice(0, j).join('-')); - if (locale) { - return locale; - } - if ( - next && - next.length >= j && - commonPrefix(split, next) >= j - 1 - ) { - //the next array item is better than a shallower substring of this one - break; - } - j--; - } - i++; - } - return globalLocale; - } - - function isLocaleNameSane(name) { - // Prevent names that look like filesystem paths, i.e contain '/' or '\' - // Ensure name is available and function returns boolean - return !!(name && name.match('^[^/\\\\]*$')); - } - - function loadLocale(name) { - var oldLocale = null, - aliasedRequire; - // TODO: Find a better way to register and load all the locales in Node - if ( - locales[name] === undefined && - "object" !== 'undefined' && - module && - module.exports && - isLocaleNameSane(name) - ) { - try { - oldLocale = globalLocale._abbr; - aliasedRequire = undefined; - __webpack_require__(35358)("./" + name); - getSetGlobalLocale(oldLocale); - } catch (e) { - // mark as not found to avoid repeating expensive file require call causing high CPU - // when trying to find en-US, en_US, en-us for every format call - locales[name] = null; // null means not found - } - } - return locales[name]; - } - - // This function will load locale and then set the global locale. If - // no arguments are passed in, it will simply return the current global - // locale key. - function getSetGlobalLocale(key, values) { - var data; - if (key) { - if (isUndefined(values)) { - data = getLocale(key); - } else { - data = defineLocale(key, values); - } - - if (data) { - // moment.duration._locale = moment._locale = data; - globalLocale = data; - } else { - if (typeof console !== 'undefined' && console.warn) { - //warn user if arguments are passed but the locale could not be set - console.warn( - 'Locale ' + key + ' not found. Did you forget to load it?' - ); - } - } - } - - return globalLocale._abbr; - } - - function defineLocale(name, config) { - if (config !== null) { - var locale, - parentConfig = baseConfig; - config.abbr = name; - if (locales[name] != null) { - deprecateSimple( - 'defineLocaleOverride', - 'use moment.updateLocale(localeName, config) to change ' + - 'an existing locale. moment.defineLocale(localeName, ' + - 'config) should only be used for creating a new locale ' + - 'See http://momentjs.com/guides/#/warnings/define-locale/ for more info.' - ); - parentConfig = locales[name]._config; - } else if (config.parentLocale != null) { - if (locales[config.parentLocale] != null) { - parentConfig = locales[config.parentLocale]._config; - } else { - locale = loadLocale(config.parentLocale); - if (locale != null) { - parentConfig = locale._config; - } else { - if (!localeFamilies[config.parentLocale]) { - localeFamilies[config.parentLocale] = []; - } - localeFamilies[config.parentLocale].push({ - name: name, - config: config, - }); - return null; - } - } - } - locales[name] = new Locale(mergeConfigs(parentConfig, config)); - - if (localeFamilies[name]) { - localeFamilies[name].forEach(function (x) { - defineLocale(x.name, x.config); - }); - } - - // backwards compat for now: also set the locale - // make sure we set the locale AFTER all child locales have been - // created, so we won't end up with the child locale set. - getSetGlobalLocale(name); - - return locales[name]; - } else { - // useful for testing - delete locales[name]; - return null; - } - } - - function updateLocale(name, config) { - if (config != null) { - var locale, - tmpLocale, - parentConfig = baseConfig; - - if (locales[name] != null && locales[name].parentLocale != null) { - // Update existing child locale in-place to avoid memory-leaks - locales[name].set(mergeConfigs(locales[name]._config, config)); - } else { - // MERGE - tmpLocale = loadLocale(name); - if (tmpLocale != null) { - parentConfig = tmpLocale._config; - } - config = mergeConfigs(parentConfig, config); - if (tmpLocale == null) { - // updateLocale is called for creating a new locale - // Set abbr so it will have a name (getters return - // undefined otherwise). - config.abbr = name; - } - locale = new Locale(config); - locale.parentLocale = locales[name]; - locales[name] = locale; - } - - // backwards compat for now: also set the locale - getSetGlobalLocale(name); - } else { - // pass null for config to unupdate, useful for tests - if (locales[name] != null) { - if (locales[name].parentLocale != null) { - locales[name] = locales[name].parentLocale; - if (name === getSetGlobalLocale()) { - getSetGlobalLocale(name); - } - } else if (locales[name] != null) { - delete locales[name]; - } - } - } - return locales[name]; - } - - // returns locale data - function getLocale(key) { - var locale; - - if (key && key._locale && key._locale._abbr) { - key = key._locale._abbr; - } - - if (!key) { - return globalLocale; - } - - if (!isArray(key)) { - //short-circuit everything else - locale = loadLocale(key); - if (locale) { - return locale; - } - key = [key]; - } - - return chooseLocale(key); - } - - function listLocales() { - return keys(locales); - } - - function checkOverflow(m) { - var overflow, - a = m._a; - - if (a && getParsingFlags(m).overflow === -2) { - overflow = - a[MONTH] < 0 || a[MONTH] > 11 - ? MONTH - : a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH]) - ? DATE - : a[HOUR] < 0 || - a[HOUR] > 24 || - (a[HOUR] === 24 && - (a[MINUTE] !== 0 || - a[SECOND] !== 0 || - a[MILLISECOND] !== 0)) - ? HOUR - : a[MINUTE] < 0 || a[MINUTE] > 59 - ? MINUTE - : a[SECOND] < 0 || a[SECOND] > 59 - ? SECOND - : a[MILLISECOND] < 0 || a[MILLISECOND] > 999 - ? MILLISECOND - : -1; - - if ( - getParsingFlags(m)._overflowDayOfYear && - (overflow < YEAR || overflow > DATE) - ) { - overflow = DATE; - } - if (getParsingFlags(m)._overflowWeeks && overflow === -1) { - overflow = WEEK; - } - if (getParsingFlags(m)._overflowWeekday && overflow === -1) { - overflow = WEEKDAY; - } - - getParsingFlags(m).overflow = overflow; - } - - return m; - } - - // iso 8601 regex - // 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00) - var extendedIsoRegex = - /^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/, - basicIsoRegex = - /^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/, - tzRegex = /Z|[+-]\d\d(?::?\d\d)?/, - isoDates = [ - ['YYYYYY-MM-DD', /[+-]\d{6}-\d\d-\d\d/], - ['YYYY-MM-DD', /\d{4}-\d\d-\d\d/], - ['GGGG-[W]WW-E', /\d{4}-W\d\d-\d/], - ['GGGG-[W]WW', /\d{4}-W\d\d/, false], - ['YYYY-DDD', /\d{4}-\d{3}/], - ['YYYY-MM', /\d{4}-\d\d/, false], - ['YYYYYYMMDD', /[+-]\d{10}/], - ['YYYYMMDD', /\d{8}/], - ['GGGG[W]WWE', /\d{4}W\d{3}/], - ['GGGG[W]WW', /\d{4}W\d{2}/, false], - ['YYYYDDD', /\d{7}/], - ['YYYYMM', /\d{6}/, false], - ['YYYY', /\d{4}/, false], - ], - // iso time formats and regexes - isoTimes = [ - ['HH:mm:ss.SSSS', /\d\d:\d\d:\d\d\.\d+/], - ['HH:mm:ss,SSSS', /\d\d:\d\d:\d\d,\d+/], - ['HH:mm:ss', /\d\d:\d\d:\d\d/], - ['HH:mm', /\d\d:\d\d/], - ['HHmmss.SSSS', /\d\d\d\d\d\d\.\d+/], - ['HHmmss,SSSS', /\d\d\d\d\d\d,\d+/], - ['HHmmss', /\d\d\d\d\d\d/], - ['HHmm', /\d\d\d\d/], - ['HH', /\d\d/], - ], - aspNetJsonRegex = /^\/?Date\((-?\d+)/i, - // RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3 - rfc2822 = - /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/, - obsOffsets = { - UT: 0, - GMT: 0, - EDT: -4 * 60, - EST: -5 * 60, - CDT: -5 * 60, - CST: -6 * 60, - MDT: -6 * 60, - MST: -7 * 60, - PDT: -7 * 60, - PST: -8 * 60, - }; - - // date from iso format - function configFromISO(config) { - var i, - l, - string = config._i, - match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string), - allowTime, - dateFormat, - timeFormat, - tzFormat, - isoDatesLen = isoDates.length, - isoTimesLen = isoTimes.length; - - if (match) { - getParsingFlags(config).iso = true; - for (i = 0, l = isoDatesLen; i < l; i++) { - if (isoDates[i][1].exec(match[1])) { - dateFormat = isoDates[i][0]; - allowTime = isoDates[i][2] !== false; - break; - } - } - if (dateFormat == null) { - config._isValid = false; - return; - } - if (match[3]) { - for (i = 0, l = isoTimesLen; i < l; i++) { - if (isoTimes[i][1].exec(match[3])) { - // match[2] should be 'T' or space - timeFormat = (match[2] || ' ') + isoTimes[i][0]; - break; - } - } - if (timeFormat == null) { - config._isValid = false; - return; - } - } - if (!allowTime && timeFormat != null) { - config._isValid = false; - return; - } - if (match[4]) { - if (tzRegex.exec(match[4])) { - tzFormat = 'Z'; - } else { - config._isValid = false; - return; - } - } - config._f = dateFormat + (timeFormat || '') + (tzFormat || ''); - configFromStringAndFormat(config); - } else { - config._isValid = false; - } - } - - function extractFromRFC2822Strings( - yearStr, - monthStr, - dayStr, - hourStr, - minuteStr, - secondStr - ) { - var result = [ - untruncateYear(yearStr), - defaultLocaleMonthsShort.indexOf(monthStr), - parseInt(dayStr, 10), - parseInt(hourStr, 10), - parseInt(minuteStr, 10), - ]; - - if (secondStr) { - result.push(parseInt(secondStr, 10)); - } - - return result; - } - - function untruncateYear(yearStr) { - var year = parseInt(yearStr, 10); - if (year <= 49) { - return 2000 + year; - } else if (year <= 999) { - return 1900 + year; - } - return year; - } - - function preprocessRFC2822(s) { - // Remove comments and folding whitespace and replace multiple-spaces with a single space - return s - .replace(/\([^()]*\)|[\n\t]/g, ' ') - .replace(/(\s\s+)/g, ' ') - .replace(/^\s\s*/, '') - .replace(/\s\s*$/, ''); - } - - function checkWeekday(weekdayStr, parsedInput, config) { - if (weekdayStr) { - // TODO: Replace the vanilla JS Date object with an independent day-of-week check. - var weekdayProvided = defaultLocaleWeekdaysShort.indexOf(weekdayStr), - weekdayActual = new Date( - parsedInput[0], - parsedInput[1], - parsedInput[2] - ).getDay(); - if (weekdayProvided !== weekdayActual) { - getParsingFlags(config).weekdayMismatch = true; - config._isValid = false; - return false; - } - } - return true; - } - - function calculateOffset(obsOffset, militaryOffset, numOffset) { - if (obsOffset) { - return obsOffsets[obsOffset]; - } else if (militaryOffset) { - // the only allowed military tz is Z - return 0; - } else { - var hm = parseInt(numOffset, 10), - m = hm % 100, - h = (hm - m) / 100; - return h * 60 + m; - } - } - - // date and time from ref 2822 format - function configFromRFC2822(config) { - var match = rfc2822.exec(preprocessRFC2822(config._i)), - parsedArray; - if (match) { - parsedArray = extractFromRFC2822Strings( - match[4], - match[3], - match[2], - match[5], - match[6], - match[7] - ); - if (!checkWeekday(match[1], parsedArray, config)) { - return; - } - - config._a = parsedArray; - config._tzm = calculateOffset(match[8], match[9], match[10]); - - config._d = createUTCDate.apply(null, config._a); - config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm); - - getParsingFlags(config).rfc2822 = true; - } else { - config._isValid = false; - } - } - - // date from 1) ASP.NET, 2) ISO, 3) RFC 2822 formats, or 4) optional fallback if parsing isn't strict - function configFromString(config) { - var matched = aspNetJsonRegex.exec(config._i); - if (matched !== null) { - config._d = new Date(+matched[1]); - return; - } - - configFromISO(config); - if (config._isValid === false) { - delete config._isValid; - } else { - return; - } - - configFromRFC2822(config); - if (config._isValid === false) { - delete config._isValid; - } else { - return; - } - - if (config._strict) { - config._isValid = false; - } else { - // Final attempt, use Input Fallback - hooks.createFromInputFallback(config); - } - } - - hooks.createFromInputFallback = deprecate( - 'value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' + - 'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' + - 'discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.', - function (config) { - config._d = new Date(config._i + (config._useUTC ? ' UTC' : '')); - } - ); - - // Pick the first defined of two or three arguments. - function defaults(a, b, c) { - if (a != null) { - return a; - } - if (b != null) { - return b; - } - return c; - } - - function currentDateArray(config) { - // hooks is actually the exported moment object - var nowValue = new Date(hooks.now()); - if (config._useUTC) { - return [ - nowValue.getUTCFullYear(), - nowValue.getUTCMonth(), - nowValue.getUTCDate(), - ]; - } - return [nowValue.getFullYear(), nowValue.getMonth(), nowValue.getDate()]; - } - - // convert an array to a date. - // the array should mirror the parameters below - // note: all values past the year are optional and will default to the lowest possible value. - // [year, month, day , hour, minute, second, millisecond] - function configFromArray(config) { - var i, - date, - input = [], - currentDate, - expectedWeekday, - yearToUse; - - if (config._d) { - return; - } - - currentDate = currentDateArray(config); - - //compute day of the year from weeks and weekdays - if (config._w && config._a[DATE] == null && config._a[MONTH] == null) { - dayOfYearFromWeekInfo(config); - } - - //if the day of the year is set, figure out what it is - if (config._dayOfYear != null) { - yearToUse = defaults(config._a[YEAR], currentDate[YEAR]); - - if ( - config._dayOfYear > daysInYear(yearToUse) || - config._dayOfYear === 0 - ) { - getParsingFlags(config)._overflowDayOfYear = true; - } - - date = createUTCDate(yearToUse, 0, config._dayOfYear); - config._a[MONTH] = date.getUTCMonth(); - config._a[DATE] = date.getUTCDate(); - } - - // Default to current date. - // * if no year, month, day of month are given, default to today - // * if day of month is given, default month and year - // * if month is given, default only year - // * if year is given, don't default anything - for (i = 0; i < 3 && config._a[i] == null; ++i) { - config._a[i] = input[i] = currentDate[i]; - } - - // Zero out whatever was not defaulted, including time - for (; i < 7; i++) { - config._a[i] = input[i] = - config._a[i] == null ? (i === 2 ? 1 : 0) : config._a[i]; - } - - // Check for 24:00:00.000 - if ( - config._a[HOUR] === 24 && - config._a[MINUTE] === 0 && - config._a[SECOND] === 0 && - config._a[MILLISECOND] === 0 - ) { - config._nextDay = true; - config._a[HOUR] = 0; - } - - config._d = (config._useUTC ? createUTCDate : createDate).apply( - null, - input - ); - expectedWeekday = config._useUTC - ? config._d.getUTCDay() - : config._d.getDay(); - - // Apply timezone offset from input. The actual utcOffset can be changed - // with parseZone. - if (config._tzm != null) { - config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm); - } - - if (config._nextDay) { - config._a[HOUR] = 24; - } - - // check for mismatching day of week - if ( - config._w && - typeof config._w.d !== 'undefined' && - config._w.d !== expectedWeekday - ) { - getParsingFlags(config).weekdayMismatch = true; - } - } - - function dayOfYearFromWeekInfo(config) { - var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow, curWeek; - - w = config._w; - if (w.GG != null || w.W != null || w.E != null) { - dow = 1; - doy = 4; - - // TODO: We need to take the current isoWeekYear, but that depends on - // how we interpret now (local, utc, fixed offset). So create - // a now version of current config (take local/utc/offset flags, and - // create now). - weekYear = defaults( - w.GG, - config._a[YEAR], - weekOfYear(createLocal(), 1, 4).year - ); - week = defaults(w.W, 1); - weekday = defaults(w.E, 1); - if (weekday < 1 || weekday > 7) { - weekdayOverflow = true; - } - } else { - dow = config._locale._week.dow; - doy = config._locale._week.doy; - - curWeek = weekOfYear(createLocal(), dow, doy); - - weekYear = defaults(w.gg, config._a[YEAR], curWeek.year); - - // Default to current week. - week = defaults(w.w, curWeek.week); - - if (w.d != null) { - // weekday -- low day numbers are considered next week - weekday = w.d; - if (weekday < 0 || weekday > 6) { - weekdayOverflow = true; - } - } else if (w.e != null) { - // local weekday -- counting starts from beginning of week - weekday = w.e + dow; - if (w.e < 0 || w.e > 6) { - weekdayOverflow = true; - } - } else { - // default to beginning of week - weekday = dow; - } - } - if (week < 1 || week > weeksInYear(weekYear, dow, doy)) { - getParsingFlags(config)._overflowWeeks = true; - } else if (weekdayOverflow != null) { - getParsingFlags(config)._overflowWeekday = true; - } else { - temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy); - config._a[YEAR] = temp.year; - config._dayOfYear = temp.dayOfYear; - } - } - - // constant that refers to the ISO standard - hooks.ISO_8601 = function () {}; - - // constant that refers to the RFC 2822 form - hooks.RFC_2822 = function () {}; - - // date from string and format string - function configFromStringAndFormat(config) { - // TODO: Move this to another part of the creation flow to prevent circular deps - if (config._f === hooks.ISO_8601) { - configFromISO(config); - return; - } - if (config._f === hooks.RFC_2822) { - configFromRFC2822(config); - return; - } - config._a = []; - getParsingFlags(config).empty = true; - - // This array is used to make a Date, either with `new Date` or `Date.UTC` - var string = '' + config._i, - i, - parsedInput, - tokens, - token, - skipped, - stringLength = string.length, - totalParsedInputLength = 0, - era, - tokenLen; - - tokens = - expandFormat(config._f, config._locale).match(formattingTokens) || []; - tokenLen = tokens.length; - for (i = 0; i < tokenLen; i++) { - token = tokens[i]; - parsedInput = (string.match(getParseRegexForToken(token, config)) || - [])[0]; - if (parsedInput) { - skipped = string.substr(0, string.indexOf(parsedInput)); - if (skipped.length > 0) { - getParsingFlags(config).unusedInput.push(skipped); - } - string = string.slice( - string.indexOf(parsedInput) + parsedInput.length - ); - totalParsedInputLength += parsedInput.length; - } - // don't parse if it's not a known token - if (formatTokenFunctions[token]) { - if (parsedInput) { - getParsingFlags(config).empty = false; - } else { - getParsingFlags(config).unusedTokens.push(token); - } - addTimeToArrayFromToken(token, parsedInput, config); - } else if (config._strict && !parsedInput) { - getParsingFlags(config).unusedTokens.push(token); - } - } - - // add remaining unparsed input length to the string - getParsingFlags(config).charsLeftOver = - stringLength - totalParsedInputLength; - if (string.length > 0) { - getParsingFlags(config).unusedInput.push(string); - } - - // clear _12h flag if hour is <= 12 - if ( - config._a[HOUR] <= 12 && - getParsingFlags(config).bigHour === true && - config._a[HOUR] > 0 - ) { - getParsingFlags(config).bigHour = undefined; - } - - getParsingFlags(config).parsedDateParts = config._a.slice(0); - getParsingFlags(config).meridiem = config._meridiem; - // handle meridiem - config._a[HOUR] = meridiemFixWrap( - config._locale, - config._a[HOUR], - config._meridiem - ); - - // handle era - era = getParsingFlags(config).era; - if (era !== null) { - config._a[YEAR] = config._locale.erasConvertYear(era, config._a[YEAR]); - } - - configFromArray(config); - checkOverflow(config); - } - - function meridiemFixWrap(locale, hour, meridiem) { - var isPm; - - if (meridiem == null) { - // nothing to do - return hour; - } - if (locale.meridiemHour != null) { - return locale.meridiemHour(hour, meridiem); - } else if (locale.isPM != null) { - // Fallback - isPm = locale.isPM(meridiem); - if (isPm && hour < 12) { - hour += 12; - } - if (!isPm && hour === 12) { - hour = 0; - } - return hour; - } else { - // this is not supposed to happen - return hour; - } - } - - // date from string and array of format strings - function configFromStringAndArray(config) { - var tempConfig, - bestMoment, - scoreToBeat, - i, - currentScore, - validFormatFound, - bestFormatIsValid = false, - configfLen = config._f.length; - - if (configfLen === 0) { - getParsingFlags(config).invalidFormat = true; - config._d = new Date(NaN); - return; - } - - for (i = 0; i < configfLen; i++) { - currentScore = 0; - validFormatFound = false; - tempConfig = copyConfig({}, config); - if (config._useUTC != null) { - tempConfig._useUTC = config._useUTC; - } - tempConfig._f = config._f[i]; - configFromStringAndFormat(tempConfig); - - if (isValid(tempConfig)) { - validFormatFound = true; - } - - // if there is any input that was not parsed add a penalty for that format - currentScore += getParsingFlags(tempConfig).charsLeftOver; - - //or tokens - currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10; - - getParsingFlags(tempConfig).score = currentScore; - - if (!bestFormatIsValid) { - if ( - scoreToBeat == null || - currentScore < scoreToBeat || - validFormatFound - ) { - scoreToBeat = currentScore; - bestMoment = tempConfig; - if (validFormatFound) { - bestFormatIsValid = true; - } - } - } else { - if (currentScore < scoreToBeat) { - scoreToBeat = currentScore; - bestMoment = tempConfig; - } - } - } - - extend(config, bestMoment || tempConfig); - } - - function configFromObject(config) { - if (config._d) { - return; - } - - var i = normalizeObjectUnits(config._i), - dayOrDate = i.day === undefined ? i.date : i.day; - config._a = map( - [i.year, i.month, dayOrDate, i.hour, i.minute, i.second, i.millisecond], - function (obj) { - return obj && parseInt(obj, 10); - } - ); - - configFromArray(config); - } - - function createFromConfig(config) { - var res = new Moment(checkOverflow(prepareConfig(config))); - if (res._nextDay) { - // Adding is smart enough around DST - res.add(1, 'd'); - res._nextDay = undefined; - } - - return res; - } - - function prepareConfig(config) { - var input = config._i, - format = config._f; - - config._locale = config._locale || getLocale(config._l); - - if (input === null || (format === undefined && input === '')) { - return createInvalid({ nullInput: true }); - } - - if (typeof input === 'string') { - config._i = input = config._locale.preparse(input); - } - - if (isMoment(input)) { - return new Moment(checkOverflow(input)); - } else if (isDate(input)) { - config._d = input; - } else if (isArray(format)) { - configFromStringAndArray(config); - } else if (format) { - configFromStringAndFormat(config); - } else { - configFromInput(config); - } - - if (!isValid(config)) { - config._d = null; - } - - return config; - } - - function configFromInput(config) { - var input = config._i; - if (isUndefined(input)) { - config._d = new Date(hooks.now()); - } else if (isDate(input)) { - config._d = new Date(input.valueOf()); - } else if (typeof input === 'string') { - configFromString(config); - } else if (isArray(input)) { - config._a = map(input.slice(0), function (obj) { - return parseInt(obj, 10); - }); - configFromArray(config); - } else if (isObject(input)) { - configFromObject(config); - } else if (isNumber(input)) { - // from milliseconds - config._d = new Date(input); - } else { - hooks.createFromInputFallback(config); - } - } - - function createLocalOrUTC(input, format, locale, strict, isUTC) { - var c = {}; - - if (format === true || format === false) { - strict = format; - format = undefined; - } - - if (locale === true || locale === false) { - strict = locale; - locale = undefined; - } - - if ( - (isObject(input) && isObjectEmpty(input)) || - (isArray(input) && input.length === 0) - ) { - input = undefined; - } - // object construction must be done this way. - // https://github.com/moment/moment/issues/1423 - c._isAMomentObject = true; - c._useUTC = c._isUTC = isUTC; - c._l = locale; - c._i = input; - c._f = format; - c._strict = strict; - - return createFromConfig(c); - } - - function createLocal(input, format, locale, strict) { - return createLocalOrUTC(input, format, locale, strict, false); - } - - var prototypeMin = deprecate( - 'moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/', - function () { - var other = createLocal.apply(null, arguments); - if (this.isValid() && other.isValid()) { - return other < this ? this : other; - } else { - return createInvalid(); - } - } - ), - prototypeMax = deprecate( - 'moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/', - function () { - var other = createLocal.apply(null, arguments); - if (this.isValid() && other.isValid()) { - return other > this ? this : other; - } else { - return createInvalid(); - } - } - ); - - // Pick a moment m from moments so that m[fn](other) is true for all - // other. This relies on the function fn to be transitive. - // - // moments should either be an array of moment objects or an array, whose - // first element is an array of moment objects. - function pickBy(fn, moments) { - var res, i; - if (moments.length === 1 && isArray(moments[0])) { - moments = moments[0]; - } - if (!moments.length) { - return createLocal(); - } - res = moments[0]; - for (i = 1; i < moments.length; ++i) { - if (!moments[i].isValid() || moments[i][fn](res)) { - res = moments[i]; - } - } - return res; - } - - // TODO: Use [].sort instead? - function min() { - var args = [].slice.call(arguments, 0); - - return pickBy('isBefore', args); - } - - function max() { - var args = [].slice.call(arguments, 0); - - return pickBy('isAfter', args); - } - - var now = function () { - return Date.now ? Date.now() : +new Date(); - }; - - var ordering = [ - 'year', - 'quarter', - 'month', - 'week', - 'day', - 'hour', - 'minute', - 'second', - 'millisecond', - ]; - - function isDurationValid(m) { - var key, - unitHasDecimal = false, - i, - orderLen = ordering.length; - for (key in m) { - if ( - hasOwnProp(m, key) && - !( - indexOf.call(ordering, key) !== -1 && - (m[key] == null || !isNaN(m[key])) - ) - ) { - return false; - } - } - - for (i = 0; i < orderLen; ++i) { - if (m[ordering[i]]) { - if (unitHasDecimal) { - return false; // only allow non-integers for smallest unit - } - if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) { - unitHasDecimal = true; - } - } - } - - return true; - } - - function isValid$1() { - return this._isValid; - } - - function createInvalid$1() { - return createDuration(NaN); - } - - function Duration(duration) { - var normalizedInput = normalizeObjectUnits(duration), - years = normalizedInput.year || 0, - quarters = normalizedInput.quarter || 0, - months = normalizedInput.month || 0, - weeks = normalizedInput.week || normalizedInput.isoWeek || 0, - days = normalizedInput.day || 0, - hours = normalizedInput.hour || 0, - minutes = normalizedInput.minute || 0, - seconds = normalizedInput.second || 0, - milliseconds = normalizedInput.millisecond || 0; - - this._isValid = isDurationValid(normalizedInput); - - // representation for dateAddRemove - this._milliseconds = - +milliseconds + - seconds * 1e3 + // 1000 - minutes * 6e4 + // 1000 * 60 - hours * 1000 * 60 * 60; //using 1000 * 60 * 60 instead of 36e5 to avoid floating point rounding errors https://github.com/moment/moment/issues/2978 - // Because of dateAddRemove treats 24 hours as different from a - // day when working around DST, we need to store them separately - this._days = +days + weeks * 7; - // It is impossible to translate months into days without knowing - // which months you are are talking about, so we have to store - // it separately. - this._months = +months + quarters * 3 + years * 12; - - this._data = {}; - - this._locale = getLocale(); - - this._bubble(); - } - - function isDuration(obj) { - return obj instanceof Duration; - } - - function absRound(number) { - if (number < 0) { - return Math.round(-1 * number) * -1; - } else { - return Math.round(number); - } - } - - // compare two arrays, return the number of differences - function compareArrays(array1, array2, dontConvert) { - var len = Math.min(array1.length, array2.length), - lengthDiff = Math.abs(array1.length - array2.length), - diffs = 0, - i; - for (i = 0; i < len; i++) { - if ( - (dontConvert && array1[i] !== array2[i]) || - (!dontConvert && toInt(array1[i]) !== toInt(array2[i])) - ) { - diffs++; - } - } - return diffs + lengthDiff; - } - - // FORMATTING - - function offset(token, separator) { - addFormatToken(token, 0, 0, function () { - var offset = this.utcOffset(), - sign = '+'; - if (offset < 0) { - offset = -offset; - sign = '-'; - } - return ( - sign + - zeroFill(~~(offset / 60), 2) + - separator + - zeroFill(~~offset % 60, 2) - ); - }); - } - - offset('Z', ':'); - offset('ZZ', ''); - - // PARSING - - addRegexToken('Z', matchShortOffset); - addRegexToken('ZZ', matchShortOffset); - addParseToken(['Z', 'ZZ'], function (input, array, config) { - config._useUTC = true; - config._tzm = offsetFromString(matchShortOffset, input); - }); - - // HELPERS - - // timezone chunker - // '+10:00' > ['10', '00'] - // '-1530' > ['-15', '30'] - var chunkOffset = /([\+\-]|\d\d)/gi; - - function offsetFromString(matcher, string) { - var matches = (string || '').match(matcher), - chunk, - parts, - minutes; - - if (matches === null) { - return null; - } - - chunk = matches[matches.length - 1] || []; - parts = (chunk + '').match(chunkOffset) || ['-', 0, 0]; - minutes = +(parts[1] * 60) + toInt(parts[2]); - - return minutes === 0 ? 0 : parts[0] === '+' ? minutes : -minutes; - } - - // Return a moment from input, that is local/utc/zone equivalent to model. - function cloneWithOffset(input, model) { - var res, diff; - if (model._isUTC) { - res = model.clone(); - diff = - (isMoment(input) || isDate(input) - ? input.valueOf() - : createLocal(input).valueOf()) - res.valueOf(); - // Use low-level api, because this fn is low-level api. - res._d.setTime(res._d.valueOf() + diff); - hooks.updateOffset(res, false); - return res; - } else { - return createLocal(input).local(); - } - } - - function getDateOffset(m) { - // On Firefox.24 Date#getTimezoneOffset returns a floating point. - // https://github.com/moment/moment/pull/1871 - return -Math.round(m._d.getTimezoneOffset()); - } - - // HOOKS - - // This function will be called whenever a moment is mutated. - // It is intended to keep the offset in sync with the timezone. - hooks.updateOffset = function () {}; - - // MOMENTS - - // keepLocalTime = true means only change the timezone, without - // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]--> - // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset - // +0200, so we adjust the time as needed, to be valid. - // - // Keeping the time actually adds/subtracts (one hour) - // from the actual represented time. That is why we call updateOffset - // a second time. In case it wants us to change the offset again - // _changeInProgress == true case, then we have to adjust, because - // there is no such time in the given timezone. - function getSetOffset(input, keepLocalTime, keepMinutes) { - var offset = this._offset || 0, - localAdjust; - if (!this.isValid()) { - return input != null ? this : NaN; - } - if (input != null) { - if (typeof input === 'string') { - input = offsetFromString(matchShortOffset, input); - if (input === null) { - return this; - } - } else if (Math.abs(input) < 16 && !keepMinutes) { - input = input * 60; - } - if (!this._isUTC && keepLocalTime) { - localAdjust = getDateOffset(this); - } - this._offset = input; - this._isUTC = true; - if (localAdjust != null) { - this.add(localAdjust, 'm'); - } - if (offset !== input) { - if (!keepLocalTime || this._changeInProgress) { - addSubtract( - this, - createDuration(input - offset, 'm'), - 1, - false - ); - } else if (!this._changeInProgress) { - this._changeInProgress = true; - hooks.updateOffset(this, true); - this._changeInProgress = null; - } - } - return this; - } else { - return this._isUTC ? offset : getDateOffset(this); - } - } - - function getSetZone(input, keepLocalTime) { - if (input != null) { - if (typeof input !== 'string') { - input = -input; - } - - this.utcOffset(input, keepLocalTime); - - return this; - } else { - return -this.utcOffset(); - } - } - - function setOffsetToUTC(keepLocalTime) { - return this.utcOffset(0, keepLocalTime); - } - - function setOffsetToLocal(keepLocalTime) { - if (this._isUTC) { - this.utcOffset(0, keepLocalTime); - this._isUTC = false; - - if (keepLocalTime) { - this.subtract(getDateOffset(this), 'm'); - } - } - return this; - } - - function setOffsetToParsedOffset() { - if (this._tzm != null) { - this.utcOffset(this._tzm, false, true); - } else if (typeof this._i === 'string') { - var tZone = offsetFromString(matchOffset, this._i); - if (tZone != null) { - this.utcOffset(tZone); - } else { - this.utcOffset(0, true); - } - } - return this; - } - - function hasAlignedHourOffset(input) { - if (!this.isValid()) { - return false; - } - input = input ? createLocal(input).utcOffset() : 0; - - return (this.utcOffset() - input) % 60 === 0; - } - - function isDaylightSavingTime() { - return ( - this.utcOffset() > this.clone().month(0).utcOffset() || - this.utcOffset() > this.clone().month(5).utcOffset() - ); - } - - function isDaylightSavingTimeShifted() { - if (!isUndefined(this._isDSTShifted)) { - return this._isDSTShifted; - } - - var c = {}, - other; - - copyConfig(c, this); - c = prepareConfig(c); - - if (c._a) { - other = c._isUTC ? createUTC(c._a) : createLocal(c._a); - this._isDSTShifted = - this.isValid() && compareArrays(c._a, other.toArray()) > 0; - } else { - this._isDSTShifted = false; - } - - return this._isDSTShifted; - } - - function isLocal() { - return this.isValid() ? !this._isUTC : false; - } - - function isUtcOffset() { - return this.isValid() ? this._isUTC : false; - } - - function isUtc() { - return this.isValid() ? this._isUTC && this._offset === 0 : false; - } - - // ASP.NET json date format regex - var aspNetRegex = /^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/, - // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html - // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere - // and further modified to allow for strings containing both week and day - isoRegex = - /^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/; - - function createDuration(input, key) { - var duration = input, - // matching against regexp is expensive, do it on demand - match = null, - sign, - ret, - diffRes; - - if (isDuration(input)) { - duration = { - ms: input._milliseconds, - d: input._days, - M: input._months, - }; - } else if (isNumber(input) || !isNaN(+input)) { - duration = {}; - if (key) { - duration[key] = +input; - } else { - duration.milliseconds = +input; - } - } else if ((match = aspNetRegex.exec(input))) { - sign = match[1] === '-' ? -1 : 1; - duration = { - y: 0, - d: toInt(match[DATE]) * sign, - h: toInt(match[HOUR]) * sign, - m: toInt(match[MINUTE]) * sign, - s: toInt(match[SECOND]) * sign, - ms: toInt(absRound(match[MILLISECOND] * 1000)) * sign, // the millisecond decimal point is included in the match - }; - } else if ((match = isoRegex.exec(input))) { - sign = match[1] === '-' ? -1 : 1; - duration = { - y: parseIso(match[2], sign), - M: parseIso(match[3], sign), - w: parseIso(match[4], sign), - d: parseIso(match[5], sign), - h: parseIso(match[6], sign), - m: parseIso(match[7], sign), - s: parseIso(match[8], sign), - }; - } else if (duration == null) { - // checks for null or undefined - duration = {}; - } else if ( - typeof duration === 'object' && - ('from' in duration || 'to' in duration) - ) { - diffRes = momentsDifference( - createLocal(duration.from), - createLocal(duration.to) - ); - - duration = {}; - duration.ms = diffRes.milliseconds; - duration.M = diffRes.months; - } - - ret = new Duration(duration); - - if (isDuration(input) && hasOwnProp(input, '_locale')) { - ret._locale = input._locale; - } - - if (isDuration(input) && hasOwnProp(input, '_isValid')) { - ret._isValid = input._isValid; - } - - return ret; - } - - createDuration.fn = Duration.prototype; - createDuration.invalid = createInvalid$1; - - function parseIso(inp, sign) { - // We'd normally use ~~inp for this, but unfortunately it also - // converts floats to ints. - // inp may be undefined, so careful calling replace on it. - var res = inp && parseFloat(inp.replace(',', '.')); - // apply sign while we're at it - return (isNaN(res) ? 0 : res) * sign; - } - - function positiveMomentsDifference(base, other) { - var res = {}; - - res.months = - other.month() - base.month() + (other.year() - base.year()) * 12; - if (base.clone().add(res.months, 'M').isAfter(other)) { - --res.months; - } - - res.milliseconds = +other - +base.clone().add(res.months, 'M'); - - return res; - } - - function momentsDifference(base, other) { - var res; - if (!(base.isValid() && other.isValid())) { - return { milliseconds: 0, months: 0 }; - } - - other = cloneWithOffset(other, base); - if (base.isBefore(other)) { - res = positiveMomentsDifference(base, other); - } else { - res = positiveMomentsDifference(other, base); - res.milliseconds = -res.milliseconds; - res.months = -res.months; - } - - return res; - } - - // TODO: remove 'name' arg after deprecation is removed - function createAdder(direction, name) { - return function (val, period) { - var dur, tmp; - //invert the arguments, but complain about it - if (period !== null && !isNaN(+period)) { - deprecateSimple( - name, - 'moment().' + - name + - '(period, number) is deprecated. Please use moment().' + - name + - '(number, period). ' + - 'See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.' - ); - tmp = val; - val = period; - period = tmp; - } - - dur = createDuration(val, period); - addSubtract(this, dur, direction); - return this; - }; - } - - function addSubtract(mom, duration, isAdding, updateOffset) { - var milliseconds = duration._milliseconds, - days = absRound(duration._days), - months = absRound(duration._months); - - if (!mom.isValid()) { - // No op - return; - } - - updateOffset = updateOffset == null ? true : updateOffset; - - if (months) { - setMonth(mom, get(mom, 'Month') + months * isAdding); - } - if (days) { - set$1(mom, 'Date', get(mom, 'Date') + days * isAdding); - } - if (milliseconds) { - mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding); - } - if (updateOffset) { - hooks.updateOffset(mom, days || months); - } - } - - var add = createAdder(1, 'add'), - subtract = createAdder(-1, 'subtract'); - - function isString(input) { - return typeof input === 'string' || input instanceof String; - } - - // type MomentInput = Moment | Date | string | number | (number | string)[] | MomentInputObject | void; // null | undefined - function isMomentInput(input) { - return ( - isMoment(input) || - isDate(input) || - isString(input) || - isNumber(input) || - isNumberOrStringArray(input) || - isMomentInputObject(input) || - input === null || - input === undefined - ); - } - - function isMomentInputObject(input) { - var objectTest = isObject(input) && !isObjectEmpty(input), - propertyTest = false, - properties = [ - 'years', - 'year', - 'y', - 'months', - 'month', - 'M', - 'days', - 'day', - 'd', - 'dates', - 'date', - 'D', - 'hours', - 'hour', - 'h', - 'minutes', - 'minute', - 'm', - 'seconds', - 'second', - 's', - 'milliseconds', - 'millisecond', - 'ms', - ], - i, - property, - propertyLen = properties.length; - - for (i = 0; i < propertyLen; i += 1) { - property = properties[i]; - propertyTest = propertyTest || hasOwnProp(input, property); - } - - return objectTest && propertyTest; - } - - function isNumberOrStringArray(input) { - var arrayTest = isArray(input), - dataTypeTest = false; - if (arrayTest) { - dataTypeTest = - input.filter(function (item) { - return !isNumber(item) && isString(input); - }).length === 0; - } - return arrayTest && dataTypeTest; - } - - function isCalendarSpec(input) { - var objectTest = isObject(input) && !isObjectEmpty(input), - propertyTest = false, - properties = [ - 'sameDay', - 'nextDay', - 'lastDay', - 'nextWeek', - 'lastWeek', - 'sameElse', - ], - i, - property; - - for (i = 0; i < properties.length; i += 1) { - property = properties[i]; - propertyTest = propertyTest || hasOwnProp(input, property); - } - - return objectTest && propertyTest; - } - - function getCalendarFormat(myMoment, now) { - var diff = myMoment.diff(now, 'days', true); - return diff < -6 - ? 'sameElse' - : diff < -1 - ? 'lastWeek' - : diff < 0 - ? 'lastDay' - : diff < 1 - ? 'sameDay' - : diff < 2 - ? 'nextDay' - : diff < 7 - ? 'nextWeek' - : 'sameElse'; - } - - function calendar$1(time, formats) { - // Support for single parameter, formats only overload to the calendar function - if (arguments.length === 1) { - if (!arguments[0]) { - time = undefined; - formats = undefined; - } else if (isMomentInput(arguments[0])) { - time = arguments[0]; - formats = undefined; - } else if (isCalendarSpec(arguments[0])) { - formats = arguments[0]; - time = undefined; - } - } - // We want to compare the start of today, vs this. - // Getting start-of-today depends on whether we're local/utc/offset or not. - var now = time || createLocal(), - sod = cloneWithOffset(now, this).startOf('day'), - format = hooks.calendarFormat(this, sod) || 'sameElse', - output = - formats && - (isFunction(formats[format]) - ? formats[format].call(this, now) - : formats[format]); - - return this.format( - output || this.localeData().calendar(format, this, createLocal(now)) - ); - } - - function clone() { - return new Moment(this); - } - - function isAfter(input, units) { - var localInput = isMoment(input) ? input : createLocal(input); - if (!(this.isValid() && localInput.isValid())) { - return false; - } - units = normalizeUnits(units) || 'millisecond'; - if (units === 'millisecond') { - return this.valueOf() > localInput.valueOf(); - } else { - return localInput.valueOf() < this.clone().startOf(units).valueOf(); - } - } - - function isBefore(input, units) { - var localInput = isMoment(input) ? input : createLocal(input); - if (!(this.isValid() && localInput.isValid())) { - return false; - } - units = normalizeUnits(units) || 'millisecond'; - if (units === 'millisecond') { - return this.valueOf() < localInput.valueOf(); - } else { - return this.clone().endOf(units).valueOf() < localInput.valueOf(); - } - } - - function isBetween(from, to, units, inclusivity) { - var localFrom = isMoment(from) ? from : createLocal(from), - localTo = isMoment(to) ? to : createLocal(to); - if (!(this.isValid() && localFrom.isValid() && localTo.isValid())) { - return false; - } - inclusivity = inclusivity || '()'; - return ( - (inclusivity[0] === '(' - ? this.isAfter(localFrom, units) - : !this.isBefore(localFrom, units)) && - (inclusivity[1] === ')' - ? this.isBefore(localTo, units) - : !this.isAfter(localTo, units)) - ); - } - - function isSame(input, units) { - var localInput = isMoment(input) ? input : createLocal(input), - inputMs; - if (!(this.isValid() && localInput.isValid())) { - return false; - } - units = normalizeUnits(units) || 'millisecond'; - if (units === 'millisecond') { - return this.valueOf() === localInput.valueOf(); - } else { - inputMs = localInput.valueOf(); - return ( - this.clone().startOf(units).valueOf() <= inputMs && - inputMs <= this.clone().endOf(units).valueOf() - ); - } - } - - function isSameOrAfter(input, units) { - return this.isSame(input, units) || this.isAfter(input, units); - } - - function isSameOrBefore(input, units) { - return this.isSame(input, units) || this.isBefore(input, units); - } - - function diff(input, units, asFloat) { - var that, zoneDelta, output; - - if (!this.isValid()) { - return NaN; - } - - that = cloneWithOffset(input, this); - - if (!that.isValid()) { - return NaN; - } - - zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4; - - units = normalizeUnits(units); - - switch (units) { - case 'year': - output = monthDiff(this, that) / 12; - break; - case 'month': - output = monthDiff(this, that); - break; - case 'quarter': - output = monthDiff(this, that) / 3; - break; - case 'second': - output = (this - that) / 1e3; - break; // 1000 - case 'minute': - output = (this - that) / 6e4; - break; // 1000 * 60 - case 'hour': - output = (this - that) / 36e5; - break; // 1000 * 60 * 60 - case 'day': - output = (this - that - zoneDelta) / 864e5; - break; // 1000 * 60 * 60 * 24, negate dst - case 'week': - output = (this - that - zoneDelta) / 6048e5; - break; // 1000 * 60 * 60 * 24 * 7, negate dst - default: - output = this - that; - } - - return asFloat ? output : absFloor(output); - } - - function monthDiff(a, b) { - if (a.date() < b.date()) { - // end-of-month calculations work correct when the start month has more - // days than the end month. - return -monthDiff(b, a); - } - // difference in months - var wholeMonthDiff = (b.year() - a.year()) * 12 + (b.month() - a.month()), - // b is in (anchor - 1 month, anchor + 1 month) - anchor = a.clone().add(wholeMonthDiff, 'months'), - anchor2, - adjust; - - if (b - anchor < 0) { - anchor2 = a.clone().add(wholeMonthDiff - 1, 'months'); - // linear across the month - adjust = (b - anchor) / (anchor - anchor2); - } else { - anchor2 = a.clone().add(wholeMonthDiff + 1, 'months'); - // linear across the month - adjust = (b - anchor) / (anchor2 - anchor); - } - - //check for negative zero, return zero if negative zero - return -(wholeMonthDiff + adjust) || 0; - } - - hooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ'; - hooks.defaultFormatUtc = 'YYYY-MM-DDTHH:mm:ss[Z]'; - - function toString() { - return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ'); - } - - function toISOString(keepOffset) { - if (!this.isValid()) { - return null; - } - var utc = keepOffset !== true, - m = utc ? this.clone().utc() : this; - if (m.year() < 0 || m.year() > 9999) { - return formatMoment( - m, - utc - ? 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]' - : 'YYYYYY-MM-DD[T]HH:mm:ss.SSSZ' - ); - } - if (isFunction(Date.prototype.toISOString)) { - // native implementation is ~50x faster, use it when we can - if (utc) { - return this.toDate().toISOString(); - } else { - return new Date(this.valueOf() + this.utcOffset() * 60 * 1000) - .toISOString() - .replace('Z', formatMoment(m, 'Z')); - } - } - return formatMoment( - m, - utc ? 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYY-MM-DD[T]HH:mm:ss.SSSZ' - ); - } - - /** - * Return a human readable representation of a moment that can - * also be evaluated to get a new moment which is the same - * - * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects - */ - function inspect() { - if (!this.isValid()) { - return 'moment.invalid(/* ' + this._i + ' */)'; - } - var func = 'moment', - zone = '', - prefix, - year, - datetime, - suffix; - if (!this.isLocal()) { - func = this.utcOffset() === 0 ? 'moment.utc' : 'moment.parseZone'; - zone = 'Z'; - } - prefix = '[' + func + '("]'; - year = 0 <= this.year() && this.year() <= 9999 ? 'YYYY' : 'YYYYYY'; - datetime = '-MM-DD[T]HH:mm:ss.SSS'; - suffix = zone + '[")]'; - - return this.format(prefix + year + datetime + suffix); - } - - function format(inputString) { - if (!inputString) { - inputString = this.isUtc() - ? hooks.defaultFormatUtc - : hooks.defaultFormat; - } - var output = formatMoment(this, inputString); - return this.localeData().postformat(output); - } - - function from(time, withoutSuffix) { - if ( - this.isValid() && - ((isMoment(time) && time.isValid()) || createLocal(time).isValid()) - ) { - return createDuration({ to: this, from: time }) - .locale(this.locale()) - .humanize(!withoutSuffix); - } else { - return this.localeData().invalidDate(); - } - } - - function fromNow(withoutSuffix) { - return this.from(createLocal(), withoutSuffix); - } - - function to(time, withoutSuffix) { - if ( - this.isValid() && - ((isMoment(time) && time.isValid()) || createLocal(time).isValid()) - ) { - return createDuration({ from: this, to: time }) - .locale(this.locale()) - .humanize(!withoutSuffix); - } else { - return this.localeData().invalidDate(); - } - } - - function toNow(withoutSuffix) { - return this.to(createLocal(), withoutSuffix); - } - - // If passed a locale key, it will set the locale for this - // instance. Otherwise, it will return the locale configuration - // variables for this instance. - function locale(key) { - var newLocaleData; - - if (key === undefined) { - return this._locale._abbr; - } else { - newLocaleData = getLocale(key); - if (newLocaleData != null) { - this._locale = newLocaleData; - } - return this; - } - } - - var lang = deprecate( - 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.', - function (key) { - if (key === undefined) { - return this.localeData(); - } else { - return this.locale(key); - } - } - ); - - function localeData() { - return this._locale; - } - - var MS_PER_SECOND = 1000, - MS_PER_MINUTE = 60 * MS_PER_SECOND, - MS_PER_HOUR = 60 * MS_PER_MINUTE, - MS_PER_400_YEARS = (365 * 400 + 97) * 24 * MS_PER_HOUR; - - // actual modulo - handles negative numbers (for dates before 1970): - function mod$1(dividend, divisor) { - return ((dividend % divisor) + divisor) % divisor; - } - - function localStartOfDate(y, m, d) { - // the date constructor remaps years 0-99 to 1900-1999 - if (y < 100 && y >= 0) { - // preserve leap years using a full 400 year cycle, then reset - return new Date(y + 400, m, d) - MS_PER_400_YEARS; - } else { - return new Date(y, m, d).valueOf(); - } - } - - function utcStartOfDate(y, m, d) { - // Date.UTC remaps years 0-99 to 1900-1999 - if (y < 100 && y >= 0) { - // preserve leap years using a full 400 year cycle, then reset - return Date.UTC(y + 400, m, d) - MS_PER_400_YEARS; - } else { - return Date.UTC(y, m, d); - } - } - - function startOf(units) { - var time, startOfDate; - units = normalizeUnits(units); - if (units === undefined || units === 'millisecond' || !this.isValid()) { - return this; - } - - startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate; - - switch (units) { - case 'year': - time = startOfDate(this.year(), 0, 1); - break; - case 'quarter': - time = startOfDate( - this.year(), - this.month() - (this.month() % 3), - 1 - ); - break; - case 'month': - time = startOfDate(this.year(), this.month(), 1); - break; - case 'week': - time = startOfDate( - this.year(), - this.month(), - this.date() - this.weekday() - ); - break; - case 'isoWeek': - time = startOfDate( - this.year(), - this.month(), - this.date() - (this.isoWeekday() - 1) - ); - break; - case 'day': - case 'date': - time = startOfDate(this.year(), this.month(), this.date()); - break; - case 'hour': - time = this._d.valueOf(); - time -= mod$1( - time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE), - MS_PER_HOUR - ); - break; - case 'minute': - time = this._d.valueOf(); - time -= mod$1(time, MS_PER_MINUTE); - break; - case 'second': - time = this._d.valueOf(); - time -= mod$1(time, MS_PER_SECOND); - break; - } - - this._d.setTime(time); - hooks.updateOffset(this, true); - return this; - } - - function endOf(units) { - var time, startOfDate; - units = normalizeUnits(units); - if (units === undefined || units === 'millisecond' || !this.isValid()) { - return this; - } - - startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate; - - switch (units) { - case 'year': - time = startOfDate(this.year() + 1, 0, 1) - 1; - break; - case 'quarter': - time = - startOfDate( - this.year(), - this.month() - (this.month() % 3) + 3, - 1 - ) - 1; - break; - case 'month': - time = startOfDate(this.year(), this.month() + 1, 1) - 1; - break; - case 'week': - time = - startOfDate( - this.year(), - this.month(), - this.date() - this.weekday() + 7 - ) - 1; - break; - case 'isoWeek': - time = - startOfDate( - this.year(), - this.month(), - this.date() - (this.isoWeekday() - 1) + 7 - ) - 1; - break; - case 'day': - case 'date': - time = startOfDate(this.year(), this.month(), this.date() + 1) - 1; - break; - case 'hour': - time = this._d.valueOf(); - time += - MS_PER_HOUR - - mod$1( - time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE), - MS_PER_HOUR - ) - - 1; - break; - case 'minute': - time = this._d.valueOf(); - time += MS_PER_MINUTE - mod$1(time, MS_PER_MINUTE) - 1; - break; - case 'second': - time = this._d.valueOf(); - time += MS_PER_SECOND - mod$1(time, MS_PER_SECOND) - 1; - break; - } - - this._d.setTime(time); - hooks.updateOffset(this, true); - return this; - } - - function valueOf() { - return this._d.valueOf() - (this._offset || 0) * 60000; - } - - function unix() { - return Math.floor(this.valueOf() / 1000); - } - - function toDate() { - return new Date(this.valueOf()); - } - - function toArray() { - var m = this; - return [ - m.year(), - m.month(), - m.date(), - m.hour(), - m.minute(), - m.second(), - m.millisecond(), - ]; - } - - function toObject() { - var m = this; - return { - years: m.year(), - months: m.month(), - date: m.date(), - hours: m.hours(), - minutes: m.minutes(), - seconds: m.seconds(), - milliseconds: m.milliseconds(), - }; - } - - function toJSON() { - // new Date(NaN).toJSON() === null - return this.isValid() ? this.toISOString() : null; - } - - function isValid$2() { - return isValid(this); - } - - function parsingFlags() { - return extend({}, getParsingFlags(this)); - } - - function invalidAt() { - return getParsingFlags(this).overflow; - } - - function creationData() { - return { - input: this._i, - format: this._f, - locale: this._locale, - isUTC: this._isUTC, - strict: this._strict, - }; - } - - addFormatToken('N', 0, 0, 'eraAbbr'); - addFormatToken('NN', 0, 0, 'eraAbbr'); - addFormatToken('NNN', 0, 0, 'eraAbbr'); - addFormatToken('NNNN', 0, 0, 'eraName'); - addFormatToken('NNNNN', 0, 0, 'eraNarrow'); - - addFormatToken('y', ['y', 1], 'yo', 'eraYear'); - addFormatToken('y', ['yy', 2], 0, 'eraYear'); - addFormatToken('y', ['yyy', 3], 0, 'eraYear'); - addFormatToken('y', ['yyyy', 4], 0, 'eraYear'); - - addRegexToken('N', matchEraAbbr); - addRegexToken('NN', matchEraAbbr); - addRegexToken('NNN', matchEraAbbr); - addRegexToken('NNNN', matchEraName); - addRegexToken('NNNNN', matchEraNarrow); - - addParseToken( - ['N', 'NN', 'NNN', 'NNNN', 'NNNNN'], - function (input, array, config, token) { - var era = config._locale.erasParse(input, token, config._strict); - if (era) { - getParsingFlags(config).era = era; - } else { - getParsingFlags(config).invalidEra = input; - } - } - ); - - addRegexToken('y', matchUnsigned); - addRegexToken('yy', matchUnsigned); - addRegexToken('yyy', matchUnsigned); - addRegexToken('yyyy', matchUnsigned); - addRegexToken('yo', matchEraYearOrdinal); - - addParseToken(['y', 'yy', 'yyy', 'yyyy'], YEAR); - addParseToken(['yo'], function (input, array, config, token) { - var match; - if (config._locale._eraYearOrdinalRegex) { - match = input.match(config._locale._eraYearOrdinalRegex); - } - - if (config._locale.eraYearOrdinalParse) { - array[YEAR] = config._locale.eraYearOrdinalParse(input, match); - } else { - array[YEAR] = parseInt(input, 10); - } - }); - - function localeEras(m, format) { - var i, - l, - date, - eras = this._eras || getLocale('en')._eras; - for (i = 0, l = eras.length; i < l; ++i) { - switch (typeof eras[i].since) { - case 'string': - // truncate time - date = hooks(eras[i].since).startOf('day'); - eras[i].since = date.valueOf(); - break; - } - - switch (typeof eras[i].until) { - case 'undefined': - eras[i].until = +Infinity; - break; - case 'string': - // truncate time - date = hooks(eras[i].until).startOf('day').valueOf(); - eras[i].until = date.valueOf(); - break; - } - } - return eras; - } - - function localeErasParse(eraName, format, strict) { - var i, - l, - eras = this.eras(), - name, - abbr, - narrow; - eraName = eraName.toUpperCase(); - - for (i = 0, l = eras.length; i < l; ++i) { - name = eras[i].name.toUpperCase(); - abbr = eras[i].abbr.toUpperCase(); - narrow = eras[i].narrow.toUpperCase(); - - if (strict) { - switch (format) { - case 'N': - case 'NN': - case 'NNN': - if (abbr === eraName) { - return eras[i]; - } - break; - - case 'NNNN': - if (name === eraName) { - return eras[i]; - } - break; - - case 'NNNNN': - if (narrow === eraName) { - return eras[i]; - } - break; - } - } else if ([name, abbr, narrow].indexOf(eraName) >= 0) { - return eras[i]; - } - } - } - - function localeErasConvertYear(era, year) { - var dir = era.since <= era.until ? +1 : -1; - if (year === undefined) { - return hooks(era.since).year(); - } else { - return hooks(era.since).year() + (year - era.offset) * dir; - } - } - - function getEraName() { - var i, - l, - val, - eras = this.localeData().eras(); - for (i = 0, l = eras.length; i < l; ++i) { - // truncate time - val = this.clone().startOf('day').valueOf(); - - if (eras[i].since <= val && val <= eras[i].until) { - return eras[i].name; - } - if (eras[i].until <= val && val <= eras[i].since) { - return eras[i].name; - } - } - - return ''; - } - - function getEraNarrow() { - var i, - l, - val, - eras = this.localeData().eras(); - for (i = 0, l = eras.length; i < l; ++i) { - // truncate time - val = this.clone().startOf('day').valueOf(); - - if (eras[i].since <= val && val <= eras[i].until) { - return eras[i].narrow; - } - if (eras[i].until <= val && val <= eras[i].since) { - return eras[i].narrow; - } - } - - return ''; - } - - function getEraAbbr() { - var i, - l, - val, - eras = this.localeData().eras(); - for (i = 0, l = eras.length; i < l; ++i) { - // truncate time - val = this.clone().startOf('day').valueOf(); - - if (eras[i].since <= val && val <= eras[i].until) { - return eras[i].abbr; - } - if (eras[i].until <= val && val <= eras[i].since) { - return eras[i].abbr; - } - } - - return ''; - } - - function getEraYear() { - var i, - l, - dir, - val, - eras = this.localeData().eras(); - for (i = 0, l = eras.length; i < l; ++i) { - dir = eras[i].since <= eras[i].until ? +1 : -1; - - // truncate time - val = this.clone().startOf('day').valueOf(); - - if ( - (eras[i].since <= val && val <= eras[i].until) || - (eras[i].until <= val && val <= eras[i].since) - ) { - return ( - (this.year() - hooks(eras[i].since).year()) * dir + - eras[i].offset - ); - } - } - - return this.year(); - } - - function erasNameRegex(isStrict) { - if (!hasOwnProp(this, '_erasNameRegex')) { - computeErasParse.call(this); - } - return isStrict ? this._erasNameRegex : this._erasRegex; - } - - function erasAbbrRegex(isStrict) { - if (!hasOwnProp(this, '_erasAbbrRegex')) { - computeErasParse.call(this); - } - return isStrict ? this._erasAbbrRegex : this._erasRegex; - } - - function erasNarrowRegex(isStrict) { - if (!hasOwnProp(this, '_erasNarrowRegex')) { - computeErasParse.call(this); - } - return isStrict ? this._erasNarrowRegex : this._erasRegex; - } - - function matchEraAbbr(isStrict, locale) { - return locale.erasAbbrRegex(isStrict); - } - - function matchEraName(isStrict, locale) { - return locale.erasNameRegex(isStrict); - } - - function matchEraNarrow(isStrict, locale) { - return locale.erasNarrowRegex(isStrict); - } - - function matchEraYearOrdinal(isStrict, locale) { - return locale._eraYearOrdinalRegex || matchUnsigned; - } - - function computeErasParse() { - var abbrPieces = [], - namePieces = [], - narrowPieces = [], - mixedPieces = [], - i, - l, - erasName, - erasAbbr, - erasNarrow, - eras = this.eras(); - - for (i = 0, l = eras.length; i < l; ++i) { - erasName = regexEscape(eras[i].name); - erasAbbr = regexEscape(eras[i].abbr); - erasNarrow = regexEscape(eras[i].narrow); - - namePieces.push(erasName); - abbrPieces.push(erasAbbr); - narrowPieces.push(erasNarrow); - mixedPieces.push(erasName); - mixedPieces.push(erasAbbr); - mixedPieces.push(erasNarrow); - } - - this._erasRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i'); - this._erasNameRegex = new RegExp('^(' + namePieces.join('|') + ')', 'i'); - this._erasAbbrRegex = new RegExp('^(' + abbrPieces.join('|') + ')', 'i'); - this._erasNarrowRegex = new RegExp( - '^(' + narrowPieces.join('|') + ')', - 'i' - ); - } - - // FORMATTING - - addFormatToken(0, ['gg', 2], 0, function () { - return this.weekYear() % 100; - }); - - addFormatToken(0, ['GG', 2], 0, function () { - return this.isoWeekYear() % 100; - }); - - function addWeekYearFormatToken(token, getter) { - addFormatToken(0, [token, token.length], 0, getter); - } - - addWeekYearFormatToken('gggg', 'weekYear'); - addWeekYearFormatToken('ggggg', 'weekYear'); - addWeekYearFormatToken('GGGG', 'isoWeekYear'); - addWeekYearFormatToken('GGGGG', 'isoWeekYear'); - - // ALIASES - - // PARSING - - addRegexToken('G', matchSigned); - addRegexToken('g', matchSigned); - addRegexToken('GG', match1to2, match2); - addRegexToken('gg', match1to2, match2); - addRegexToken('GGGG', match1to4, match4); - addRegexToken('gggg', match1to4, match4); - addRegexToken('GGGGG', match1to6, match6); - addRegexToken('ggggg', match1to6, match6); - - addWeekParseToken( - ['gggg', 'ggggg', 'GGGG', 'GGGGG'], - function (input, week, config, token) { - week[token.substr(0, 2)] = toInt(input); - } - ); - - addWeekParseToken(['gg', 'GG'], function (input, week, config, token) { - week[token] = hooks.parseTwoDigitYear(input); - }); - - // MOMENTS - - function getSetWeekYear(input) { - return getSetWeekYearHelper.call( - this, - input, - this.week(), - this.weekday() + this.localeData()._week.dow, - this.localeData()._week.dow, - this.localeData()._week.doy - ); - } - - function getSetISOWeekYear(input) { - return getSetWeekYearHelper.call( - this, - input, - this.isoWeek(), - this.isoWeekday(), - 1, - 4 - ); - } - - function getISOWeeksInYear() { - return weeksInYear(this.year(), 1, 4); - } - - function getISOWeeksInISOWeekYear() { - return weeksInYear(this.isoWeekYear(), 1, 4); - } - - function getWeeksInYear() { - var weekInfo = this.localeData()._week; - return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy); - } - - function getWeeksInWeekYear() { - var weekInfo = this.localeData()._week; - return weeksInYear(this.weekYear(), weekInfo.dow, weekInfo.doy); - } - - function getSetWeekYearHelper(input, week, weekday, dow, doy) { - var weeksTarget; - if (input == null) { - return weekOfYear(this, dow, doy).year; - } else { - weeksTarget = weeksInYear(input, dow, doy); - if (week > weeksTarget) { - week = weeksTarget; - } - return setWeekAll.call(this, input, week, weekday, dow, doy); - } - } - - function setWeekAll(weekYear, week, weekday, dow, doy) { - var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy), - date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear); - - this.year(date.getUTCFullYear()); - this.month(date.getUTCMonth()); - this.date(date.getUTCDate()); - return this; - } - - // FORMATTING - - addFormatToken('Q', 0, 'Qo', 'quarter'); - - // PARSING - - addRegexToken('Q', match1); - addParseToken('Q', function (input, array) { - array[MONTH] = (toInt(input) - 1) * 3; - }); - - // MOMENTS - - function getSetQuarter(input) { - return input == null - ? Math.ceil((this.month() + 1) / 3) - : this.month((input - 1) * 3 + (this.month() % 3)); - } - - // FORMATTING - - addFormatToken('D', ['DD', 2], 'Do', 'date'); - - // PARSING - - addRegexToken('D', match1to2, match1to2NoLeadingZero); - addRegexToken('DD', match1to2, match2); - addRegexToken('Do', function (isStrict, locale) { - // TODO: Remove "ordinalParse" fallback in next major release. - return isStrict - ? locale._dayOfMonthOrdinalParse || locale._ordinalParse - : locale._dayOfMonthOrdinalParseLenient; - }); - - addParseToken(['D', 'DD'], DATE); - addParseToken('Do', function (input, array) { - array[DATE] = toInt(input.match(match1to2)[0]); - }); - - // MOMENTS - - var getSetDayOfMonth = makeGetSet('Date', true); - - // FORMATTING - - addFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear'); - - // PARSING - - addRegexToken('DDD', match1to3); - addRegexToken('DDDD', match3); - addParseToken(['DDD', 'DDDD'], function (input, array, config) { - config._dayOfYear = toInt(input); - }); - - // HELPERS - - // MOMENTS - - function getSetDayOfYear(input) { - var dayOfYear = - Math.round( - (this.clone().startOf('day') - this.clone().startOf('year')) / 864e5 - ) + 1; - return input == null ? dayOfYear : this.add(input - dayOfYear, 'd'); - } - - // FORMATTING - - addFormatToken('m', ['mm', 2], 0, 'minute'); - - // PARSING - - addRegexToken('m', match1to2, match1to2HasZero); - addRegexToken('mm', match1to2, match2); - addParseToken(['m', 'mm'], MINUTE); - - // MOMENTS - - var getSetMinute = makeGetSet('Minutes', false); - - // FORMATTING - - addFormatToken('s', ['ss', 2], 0, 'second'); - - // PARSING - - addRegexToken('s', match1to2, match1to2HasZero); - addRegexToken('ss', match1to2, match2); - addParseToken(['s', 'ss'], SECOND); - - // MOMENTS - - var getSetSecond = makeGetSet('Seconds', false); - - // FORMATTING - - addFormatToken('S', 0, 0, function () { - return ~~(this.millisecond() / 100); - }); - - addFormatToken(0, ['SS', 2], 0, function () { - return ~~(this.millisecond() / 10); - }); - - addFormatToken(0, ['SSS', 3], 0, 'millisecond'); - addFormatToken(0, ['SSSS', 4], 0, function () { - return this.millisecond() * 10; - }); - addFormatToken(0, ['SSSSS', 5], 0, function () { - return this.millisecond() * 100; - }); - addFormatToken(0, ['SSSSSS', 6], 0, function () { - return this.millisecond() * 1000; - }); - addFormatToken(0, ['SSSSSSS', 7], 0, function () { - return this.millisecond() * 10000; - }); - addFormatToken(0, ['SSSSSSSS', 8], 0, function () { - return this.millisecond() * 100000; - }); - addFormatToken(0, ['SSSSSSSSS', 9], 0, function () { - return this.millisecond() * 1000000; - }); - - // PARSING - - addRegexToken('S', match1to3, match1); - addRegexToken('SS', match1to3, match2); - addRegexToken('SSS', match1to3, match3); - - var token, getSetMillisecond; - for (token = 'SSSS'; token.length <= 9; token += 'S') { - addRegexToken(token, matchUnsigned); - } - - function parseMs(input, array) { - array[MILLISECOND] = toInt(('0.' + input) * 1000); - } - - for (token = 'S'; token.length <= 9; token += 'S') { - addParseToken(token, parseMs); - } - - getSetMillisecond = makeGetSet('Milliseconds', false); - - // FORMATTING - - addFormatToken('z', 0, 0, 'zoneAbbr'); - addFormatToken('zz', 0, 0, 'zoneName'); - - // MOMENTS - - function getZoneAbbr() { - return this._isUTC ? 'UTC' : ''; - } - - function getZoneName() { - return this._isUTC ? 'Coordinated Universal Time' : ''; - } - - var proto = Moment.prototype; - - proto.add = add; - proto.calendar = calendar$1; - proto.clone = clone; - proto.diff = diff; - proto.endOf = endOf; - proto.format = format; - proto.from = from; - proto.fromNow = fromNow; - proto.to = to; - proto.toNow = toNow; - proto.get = stringGet; - proto.invalidAt = invalidAt; - proto.isAfter = isAfter; - proto.isBefore = isBefore; - proto.isBetween = isBetween; - proto.isSame = isSame; - proto.isSameOrAfter = isSameOrAfter; - proto.isSameOrBefore = isSameOrBefore; - proto.isValid = isValid$2; - proto.lang = lang; - proto.locale = locale; - proto.localeData = localeData; - proto.max = prototypeMax; - proto.min = prototypeMin; - proto.parsingFlags = parsingFlags; - proto.set = stringSet; - proto.startOf = startOf; - proto.subtract = subtract; - proto.toArray = toArray; - proto.toObject = toObject; - proto.toDate = toDate; - proto.toISOString = toISOString; - proto.inspect = inspect; - if (typeof Symbol !== 'undefined' && Symbol.for != null) { - proto[Symbol.for('nodejs.util.inspect.custom')] = function () { - return 'Moment<' + this.format() + '>'; - }; - } - proto.toJSON = toJSON; - proto.toString = toString; - proto.unix = unix; - proto.valueOf = valueOf; - proto.creationData = creationData; - proto.eraName = getEraName; - proto.eraNarrow = getEraNarrow; - proto.eraAbbr = getEraAbbr; - proto.eraYear = getEraYear; - proto.year = getSetYear; - proto.isLeapYear = getIsLeapYear; - proto.weekYear = getSetWeekYear; - proto.isoWeekYear = getSetISOWeekYear; - proto.quarter = proto.quarters = getSetQuarter; - proto.month = getSetMonth; - proto.daysInMonth = getDaysInMonth; - proto.week = proto.weeks = getSetWeek; - proto.isoWeek = proto.isoWeeks = getSetISOWeek; - proto.weeksInYear = getWeeksInYear; - proto.weeksInWeekYear = getWeeksInWeekYear; - proto.isoWeeksInYear = getISOWeeksInYear; - proto.isoWeeksInISOWeekYear = getISOWeeksInISOWeekYear; - proto.date = getSetDayOfMonth; - proto.day = proto.days = getSetDayOfWeek; - proto.weekday = getSetLocaleDayOfWeek; - proto.isoWeekday = getSetISODayOfWeek; - proto.dayOfYear = getSetDayOfYear; - proto.hour = proto.hours = getSetHour; - proto.minute = proto.minutes = getSetMinute; - proto.second = proto.seconds = getSetSecond; - proto.millisecond = proto.milliseconds = getSetMillisecond; - proto.utcOffset = getSetOffset; - proto.utc = setOffsetToUTC; - proto.local = setOffsetToLocal; - proto.parseZone = setOffsetToParsedOffset; - proto.hasAlignedHourOffset = hasAlignedHourOffset; - proto.isDST = isDaylightSavingTime; - proto.isLocal = isLocal; - proto.isUtcOffset = isUtcOffset; - proto.isUtc = isUtc; - proto.isUTC = isUtc; - proto.zoneAbbr = getZoneAbbr; - proto.zoneName = getZoneName; - proto.dates = deprecate( - 'dates accessor is deprecated. Use date instead.', - getSetDayOfMonth - ); - proto.months = deprecate( - 'months accessor is deprecated. Use month instead', - getSetMonth - ); - proto.years = deprecate( - 'years accessor is deprecated. Use year instead', - getSetYear - ); - proto.zone = deprecate( - 'moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/', - getSetZone - ); - proto.isDSTShifted = deprecate( - 'isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information', - isDaylightSavingTimeShifted - ); - - function createUnix(input) { - return createLocal(input * 1000); - } - - function createInZone() { - return createLocal.apply(null, arguments).parseZone(); - } - - function preParsePostFormat(string) { - return string; - } - - var proto$1 = Locale.prototype; - - proto$1.calendar = calendar; - proto$1.longDateFormat = longDateFormat; - proto$1.invalidDate = invalidDate; - proto$1.ordinal = ordinal; - proto$1.preparse = preParsePostFormat; - proto$1.postformat = preParsePostFormat; - proto$1.relativeTime = relativeTime; - proto$1.pastFuture = pastFuture; - proto$1.set = set; - proto$1.eras = localeEras; - proto$1.erasParse = localeErasParse; - proto$1.erasConvertYear = localeErasConvertYear; - proto$1.erasAbbrRegex = erasAbbrRegex; - proto$1.erasNameRegex = erasNameRegex; - proto$1.erasNarrowRegex = erasNarrowRegex; - - proto$1.months = localeMonths; - proto$1.monthsShort = localeMonthsShort; - proto$1.monthsParse = localeMonthsParse; - proto$1.monthsRegex = monthsRegex; - proto$1.monthsShortRegex = monthsShortRegex; - proto$1.week = localeWeek; - proto$1.firstDayOfYear = localeFirstDayOfYear; - proto$1.firstDayOfWeek = localeFirstDayOfWeek; - - proto$1.weekdays = localeWeekdays; - proto$1.weekdaysMin = localeWeekdaysMin; - proto$1.weekdaysShort = localeWeekdaysShort; - proto$1.weekdaysParse = localeWeekdaysParse; - - proto$1.weekdaysRegex = weekdaysRegex; - proto$1.weekdaysShortRegex = weekdaysShortRegex; - proto$1.weekdaysMinRegex = weekdaysMinRegex; - - proto$1.isPM = localeIsPM; - proto$1.meridiem = localeMeridiem; - - function get$1(format, index, field, setter) { - var locale = getLocale(), - utc = createUTC().set(setter, index); - return locale[field](utc, format); - } - - function listMonthsImpl(format, index, field) { - if (isNumber(format)) { - index = format; - format = undefined; - } - - format = format || ''; - - if (index != null) { - return get$1(format, index, field, 'month'); - } - - var i, - out = []; - for (i = 0; i < 12; i++) { - out[i] = get$1(format, i, field, 'month'); - } - return out; - } - - // () - // (5) - // (fmt, 5) - // (fmt) - // (true) - // (true, 5) - // (true, fmt, 5) - // (true, fmt) - function listWeekdaysImpl(localeSorted, format, index, field) { - if (typeof localeSorted === 'boolean') { - if (isNumber(format)) { - index = format; - format = undefined; - } - - format = format || ''; - } else { - format = localeSorted; - index = format; - localeSorted = false; - - if (isNumber(format)) { - index = format; - format = undefined; - } - - format = format || ''; - } - - var locale = getLocale(), - shift = localeSorted ? locale._week.dow : 0, - i, - out = []; - - if (index != null) { - return get$1(format, (index + shift) % 7, field, 'day'); - } - - for (i = 0; i < 7; i++) { - out[i] = get$1(format, (i + shift) % 7, field, 'day'); - } - return out; - } - - function listMonths(format, index) { - return listMonthsImpl(format, index, 'months'); - } - - function listMonthsShort(format, index) { - return listMonthsImpl(format, index, 'monthsShort'); - } - - function listWeekdays(localeSorted, format, index) { - return listWeekdaysImpl(localeSorted, format, index, 'weekdays'); - } - - function listWeekdaysShort(localeSorted, format, index) { - return listWeekdaysImpl(localeSorted, format, index, 'weekdaysShort'); - } - - function listWeekdaysMin(localeSorted, format, index) { - return listWeekdaysImpl(localeSorted, format, index, 'weekdaysMin'); - } - - getSetGlobalLocale('en', { - eras: [ - { - since: '0001-01-01', - until: +Infinity, - offset: 1, - name: 'Anno Domini', - narrow: 'AD', - abbr: 'AD', - }, - { - since: '0000-12-31', - until: -Infinity, - offset: 1, - name: 'Before Christ', - narrow: 'BC', - abbr: 'BC', - }, - ], - dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/, - ordinal: function (number) { - var b = number % 10, - output = - toInt((number % 100) / 10) === 1 - ? 'th' - : b === 1 - ? 'st' - : b === 2 - ? 'nd' - : b === 3 - ? 'rd' - : 'th'; - return number + output; - }, - }); - - // Side effect imports - - hooks.lang = deprecate( - 'moment.lang is deprecated. Use moment.locale instead.', - getSetGlobalLocale - ); - hooks.langData = deprecate( - 'moment.langData is deprecated. Use moment.localeData instead.', - getLocale - ); - - var mathAbs = Math.abs; - - function abs() { - var data = this._data; - - this._milliseconds = mathAbs(this._milliseconds); - this._days = mathAbs(this._days); - this._months = mathAbs(this._months); - - data.milliseconds = mathAbs(data.milliseconds); - data.seconds = mathAbs(data.seconds); - data.minutes = mathAbs(data.minutes); - data.hours = mathAbs(data.hours); - data.months = mathAbs(data.months); - data.years = mathAbs(data.years); - - return this; - } - - function addSubtract$1(duration, input, value, direction) { - var other = createDuration(input, value); - - duration._milliseconds += direction * other._milliseconds; - duration._days += direction * other._days; - duration._months += direction * other._months; - - return duration._bubble(); - } - - // supports only 2.0-style add(1, 's') or add(duration) - function add$1(input, value) { - return addSubtract$1(this, input, value, 1); - } - - // supports only 2.0-style subtract(1, 's') or subtract(duration) - function subtract$1(input, value) { - return addSubtract$1(this, input, value, -1); - } - - function absCeil(number) { - if (number < 0) { - return Math.floor(number); - } else { - return Math.ceil(number); - } - } - - function bubble() { - var milliseconds = this._milliseconds, - days = this._days, - months = this._months, - data = this._data, - seconds, - minutes, - hours, - years, - monthsFromDays; - - // if we have a mix of positive and negative values, bubble down first - // check: https://github.com/moment/moment/issues/2166 - if ( - !( - (milliseconds >= 0 && days >= 0 && months >= 0) || - (milliseconds <= 0 && days <= 0 && months <= 0) - ) - ) { - milliseconds += absCeil(monthsToDays(months) + days) * 864e5; - days = 0; - months = 0; - } - - // The following code bubbles up values, see the tests for - // examples of what that means. - data.milliseconds = milliseconds % 1000; - - seconds = absFloor(milliseconds / 1000); - data.seconds = seconds % 60; - - minutes = absFloor(seconds / 60); - data.minutes = minutes % 60; - - hours = absFloor(minutes / 60); - data.hours = hours % 24; - - days += absFloor(hours / 24); - - // convert days to months - monthsFromDays = absFloor(daysToMonths(days)); - months += monthsFromDays; - days -= absCeil(monthsToDays(monthsFromDays)); - - // 12 months -> 1 year - years = absFloor(months / 12); - months %= 12; - - data.days = days; - data.months = months; - data.years = years; - - return this; - } - - function daysToMonths(days) { - // 400 years have 146097 days (taking into account leap year rules) - // 400 years have 12 months === 4800 - return (days * 4800) / 146097; - } - - function monthsToDays(months) { - // the reverse of daysToMonths - return (months * 146097) / 4800; - } - - function as(units) { - if (!this.isValid()) { - return NaN; - } - var days, - months, - milliseconds = this._milliseconds; - - units = normalizeUnits(units); - - if (units === 'month' || units === 'quarter' || units === 'year') { - days = this._days + milliseconds / 864e5; - months = this._months + daysToMonths(days); - switch (units) { - case 'month': - return months; - case 'quarter': - return months / 3; - case 'year': - return months / 12; - } - } else { - // handle milliseconds separately because of floating point math errors (issue #1867) - days = this._days + Math.round(monthsToDays(this._months)); - switch (units) { - case 'week': - return days / 7 + milliseconds / 6048e5; - case 'day': - return days + milliseconds / 864e5; - case 'hour': - return days * 24 + milliseconds / 36e5; - case 'minute': - return days * 1440 + milliseconds / 6e4; - case 'second': - return days * 86400 + milliseconds / 1000; - // Math.floor prevents floating point math errors here - case 'millisecond': - return Math.floor(days * 864e5) + milliseconds; - default: - throw new Error('Unknown unit ' + units); - } - } - } - - function makeAs(alias) { - return function () { - return this.as(alias); - }; - } - - var asMilliseconds = makeAs('ms'), - asSeconds = makeAs('s'), - asMinutes = makeAs('m'), - asHours = makeAs('h'), - asDays = makeAs('d'), - asWeeks = makeAs('w'), - asMonths = makeAs('M'), - asQuarters = makeAs('Q'), - asYears = makeAs('y'), - valueOf$1 = asMilliseconds; - - function clone$1() { - return createDuration(this); - } - - function get$2(units) { - units = normalizeUnits(units); - return this.isValid() ? this[units + 's']() : NaN; - } - - function makeGetter(name) { - return function () { - return this.isValid() ? this._data[name] : NaN; - }; - } - - var milliseconds = makeGetter('milliseconds'), - seconds = makeGetter('seconds'), - minutes = makeGetter('minutes'), - hours = makeGetter('hours'), - days = makeGetter('days'), - months = makeGetter('months'), - years = makeGetter('years'); - - function weeks() { - return absFloor(this.days() / 7); - } - - var round = Math.round, - thresholds = { - ss: 44, // a few seconds to seconds - s: 45, // seconds to minute - m: 45, // minutes to hour - h: 22, // hours to day - d: 26, // days to month/week - w: null, // weeks to month - M: 11, // months to year - }; - - // helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize - function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) { - return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture); - } - - function relativeTime$1(posNegDuration, withoutSuffix, thresholds, locale) { - var duration = createDuration(posNegDuration).abs(), - seconds = round(duration.as('s')), - minutes = round(duration.as('m')), - hours = round(duration.as('h')), - days = round(duration.as('d')), - months = round(duration.as('M')), - weeks = round(duration.as('w')), - years = round(duration.as('y')), - a = - (seconds <= thresholds.ss && ['s', seconds]) || - (seconds < thresholds.s && ['ss', seconds]) || - (minutes <= 1 && ['m']) || - (minutes < thresholds.m && ['mm', minutes]) || - (hours <= 1 && ['h']) || - (hours < thresholds.h && ['hh', hours]) || - (days <= 1 && ['d']) || - (days < thresholds.d && ['dd', days]); - - if (thresholds.w != null) { - a = - a || - (weeks <= 1 && ['w']) || - (weeks < thresholds.w && ['ww', weeks]); - } - a = a || - (months <= 1 && ['M']) || - (months < thresholds.M && ['MM', months]) || - (years <= 1 && ['y']) || ['yy', years]; - - a[2] = withoutSuffix; - a[3] = +posNegDuration > 0; - a[4] = locale; - return substituteTimeAgo.apply(null, a); - } - - // This function allows you to set the rounding function for relative time strings - function getSetRelativeTimeRounding(roundingFunction) { - if (roundingFunction === undefined) { - return round; - } - if (typeof roundingFunction === 'function') { - round = roundingFunction; - return true; - } - return false; - } - - // This function allows you to set a threshold for relative time strings - function getSetRelativeTimeThreshold(threshold, limit) { - if (thresholds[threshold] === undefined) { - return false; - } - if (limit === undefined) { - return thresholds[threshold]; - } - thresholds[threshold] = limit; - if (threshold === 's') { - thresholds.ss = limit - 1; - } - return true; - } - - function humanize(argWithSuffix, argThresholds) { - if (!this.isValid()) { - return this.localeData().invalidDate(); - } - - var withSuffix = false, - th = thresholds, - locale, - output; - - if (typeof argWithSuffix === 'object') { - argThresholds = argWithSuffix; - argWithSuffix = false; - } - if (typeof argWithSuffix === 'boolean') { - withSuffix = argWithSuffix; - } - if (typeof argThresholds === 'object') { - th = Object.assign({}, thresholds, argThresholds); - if (argThresholds.s != null && argThresholds.ss == null) { - th.ss = argThresholds.s - 1; - } - } - - locale = this.localeData(); - output = relativeTime$1(this, !withSuffix, th, locale); - - if (withSuffix) { - output = locale.pastFuture(+this, output); - } - - return locale.postformat(output); - } - - var abs$1 = Math.abs; - - function sign(x) { - return (x > 0) - (x < 0) || +x; - } - - function toISOString$1() { - // for ISO strings we do not use the normal bubbling rules: - // * milliseconds bubble up until they become hours - // * days do not bubble at all - // * months bubble up until they become years - // This is because there is no context-free conversion between hours and days - // (think of clock changes) - // and also not between days and months (28-31 days per month) - if (!this.isValid()) { - return this.localeData().invalidDate(); - } - - var seconds = abs$1(this._milliseconds) / 1000, - days = abs$1(this._days), - months = abs$1(this._months), - minutes, - hours, - years, - s, - total = this.asSeconds(), - totalSign, - ymSign, - daysSign, - hmsSign; - - if (!total) { - // this is the same as C#'s (Noda) and python (isodate)... - // but not other JS (goog.date) - return 'P0D'; - } - - // 3600 seconds -> 60 minutes -> 1 hour - minutes = absFloor(seconds / 60); - hours = absFloor(minutes / 60); - seconds %= 60; - minutes %= 60; - - // 12 months -> 1 year - years = absFloor(months / 12); - months %= 12; - - // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js - s = seconds ? seconds.toFixed(3).replace(/\.?0+$/, '') : ''; - - totalSign = total < 0 ? '-' : ''; - ymSign = sign(this._months) !== sign(total) ? '-' : ''; - daysSign = sign(this._days) !== sign(total) ? '-' : ''; - hmsSign = sign(this._milliseconds) !== sign(total) ? '-' : ''; - - return ( - totalSign + - 'P' + - (years ? ymSign + years + 'Y' : '') + - (months ? ymSign + months + 'M' : '') + - (days ? daysSign + days + 'D' : '') + - (hours || minutes || seconds ? 'T' : '') + - (hours ? hmsSign + hours + 'H' : '') + - (minutes ? hmsSign + minutes + 'M' : '') + - (seconds ? hmsSign + s + 'S' : '') - ); - } - - var proto$2 = Duration.prototype; - - proto$2.isValid = isValid$1; - proto$2.abs = abs; - proto$2.add = add$1; - proto$2.subtract = subtract$1; - proto$2.as = as; - proto$2.asMilliseconds = asMilliseconds; - proto$2.asSeconds = asSeconds; - proto$2.asMinutes = asMinutes; - proto$2.asHours = asHours; - proto$2.asDays = asDays; - proto$2.asWeeks = asWeeks; - proto$2.asMonths = asMonths; - proto$2.asQuarters = asQuarters; - proto$2.asYears = asYears; - proto$2.valueOf = valueOf$1; - proto$2._bubble = bubble; - proto$2.clone = clone$1; - proto$2.get = get$2; - proto$2.milliseconds = milliseconds; - proto$2.seconds = seconds; - proto$2.minutes = minutes; - proto$2.hours = hours; - proto$2.days = days; - proto$2.weeks = weeks; - proto$2.months = months; - proto$2.years = years; - proto$2.humanize = humanize; - proto$2.toISOString = toISOString$1; - proto$2.toString = toISOString$1; - proto$2.toJSON = toISOString$1; - proto$2.locale = locale; - proto$2.localeData = localeData; - - proto$2.toIsoString = deprecate( - 'toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)', - toISOString$1 - ); - proto$2.lang = lang; - - // FORMATTING - - addFormatToken('X', 0, 0, 'unix'); - addFormatToken('x', 0, 0, 'valueOf'); - - // PARSING - - addRegexToken('x', matchSigned); - addRegexToken('X', matchTimestamp); - addParseToken('X', function (input, array, config) { - config._d = new Date(parseFloat(input) * 1000); - }); - addParseToken('x', function (input, array, config) { - config._d = new Date(toInt(input)); - }); - - //! moment.js - - hooks.version = '2.30.1'; - - setHookCallback(createLocal); - - hooks.fn = proto; - hooks.min = min; - hooks.max = max; - hooks.now = now; - hooks.utc = createUTC; - hooks.unix = createUnix; - hooks.months = listMonths; - hooks.isDate = isDate; - hooks.locale = getSetGlobalLocale; - hooks.invalid = createInvalid; - hooks.duration = createDuration; - hooks.isMoment = isMoment; - hooks.weekdays = listWeekdays; - hooks.parseZone = createInZone; - hooks.localeData = getLocale; - hooks.isDuration = isDuration; - hooks.monthsShort = listMonthsShort; - hooks.weekdaysMin = listWeekdaysMin; - hooks.defineLocale = defineLocale; - hooks.updateLocale = updateLocale; - hooks.locales = listLocales; - hooks.weekdaysShort = listWeekdaysShort; - hooks.normalizeUnits = normalizeUnits; - hooks.relativeTimeRounding = getSetRelativeTimeRounding; - hooks.relativeTimeThreshold = getSetRelativeTimeThreshold; - hooks.calendarFormat = getCalendarFormat; - hooks.prototype = proto; - - // currently HTML5 input type only supports 24-hour formats - hooks.HTML5_FMT = { - DATETIME_LOCAL: 'YYYY-MM-DDTHH:mm', // - DATETIME_LOCAL_SECONDS: 'YYYY-MM-DDTHH:mm:ss', // - DATETIME_LOCAL_MS: 'YYYY-MM-DDTHH:mm:ss.SSS', // - DATE: 'YYYY-MM-DD', // - TIME: 'HH:mm', // - TIME_SECONDS: 'HH:mm:ss', // - TIME_MS: 'HH:mm:ss.SSS', // - WEEK: 'GGGG-[W]WW', // - MONTH: 'YYYY-MM', // - }; - - return hooks; - -}))); - - /***/ }), /***/ 6585: @@ -148799,27 +123736,6 @@ try { /***/ }), -/***/ 29530: -/***/ (() => { - -/* (ignored) */ - -/***/ }), - -/***/ 60684: -/***/ (() => { - -/* (ignored) */ - -/***/ }), - -/***/ 26840: -/***/ (() => { - -/* (ignored) */ - -/***/ }), - /***/ 60513: /***/ (() => { @@ -148834,13 +123750,6 @@ try { /***/ }), -/***/ 21628: -/***/ (() => { - -/* (ignored) */ - -/***/ }), - /***/ 60290: /***/ (() => { @@ -190462,67 +165371,6 @@ Object.freeze(keccak256); /***/ }), -/***/ 29851: -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -"use strict"; -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ A: () => (/* binding */ pbkdf2) -/* harmony export */ }); -/* harmony import */ var _crypto_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8180); -/* harmony import */ var _utils_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(36212); -/** - * A **Password-Based Key-Derivation Function** is designed to create - * a sequence of bytes suitible as a **key** from a human-rememberable - * password. - * - * @_subsection: api/crypto:Passwords [about-pbkdf] - */ - - -let locked = false; -const _pbkdf2 = function (password, salt, iterations, keylen, algo) { - return (0,_crypto_js__WEBPACK_IMPORTED_MODULE_0__/* .pbkdf2Sync */ .T_)(password, salt, iterations, keylen, algo); -}; -let __pbkdf2 = _pbkdf2; -/** - * Return the [[link-pbkdf2]] for %%keylen%% bytes for %%password%% using - * the %%salt%% and using %%iterations%% of %%algo%%. - * - * This PBKDF is outdated and should not be used in new projects, but is - * required to decrypt older files. - * - * @example: - * // The password must be converted to bytes, and it is generally - * // best practices to ensure the string has been normalized. Many - * // formats explicitly indicate the normalization form to use. - * password = "hello" - * passwordBytes = toUtf8Bytes(password, "NFKC") - * - * salt = id("some-salt") - * - * // Compute the PBKDF2 - * pbkdf2(passwordBytes, salt, 1024, 16, "sha256") - * //_result: - */ -function pbkdf2(_password, _salt, iterations, keylen, algo) { - const password = (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_1__/* .getBytes */ .q5)(_password, "password"); - const salt = (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_1__/* .getBytes */ .q5)(_salt, "salt"); - return (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_1__/* .hexlify */ .c$)(__pbkdf2(password, salt, iterations, keylen, algo)); -} -pbkdf2._ = _pbkdf2; -pbkdf2.lock = function () { locked = true; }; -pbkdf2.register = function (func) { - if (locked) { - throw new Error("pbkdf2 is locked"); - } - __pbkdf2 = func; -}; -Object.freeze(pbkdf2); -//# sourceMappingURL=pbkdf2.js.map - -/***/ }), - /***/ 68650: /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { @@ -198929,405 +173777,6 @@ function toUtf8CodePoints(str, form) { /***/ }), -/***/ 37514: -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -"use strict"; -/* harmony export */ __webpack_require__.d(__webpack_exports__, { -/* harmony export */ v: () => (/* binding */ Mnemonic) -/* harmony export */ }); -/* harmony import */ var _crypto_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(68650); -/* harmony import */ var _crypto_index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(29851); -/* harmony import */ var _utils_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(57339); -/* harmony import */ var _utils_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(36212); -/* harmony import */ var _utils_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(88081); -/* harmony import */ var _utils_index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(87303); -/* harmony import */ var _wordlists_lang_en_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(24636); - - - -// Returns a byte with the MSB bits set -function getUpperMask(bits) { - return ((1 << bits) - 1) << (8 - bits) & 0xff; -} -// Returns a byte with the LSB bits set -function getLowerMask(bits) { - return ((1 << bits) - 1) & 0xff; -} -function mnemonicToEntropy(mnemonic, wordlist) { - (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_0__/* .assertNormalize */ .SP)("NFKD"); - if (wordlist == null) { - wordlist = _wordlists_lang_en_js__WEBPACK_IMPORTED_MODULE_1__/* .LangEn */ .U.wordlist(); - } - const words = wordlist.split(mnemonic); - (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_0__/* .assertArgument */ .MR)((words.length % 3) === 0 && words.length >= 12 && words.length <= 24, "invalid mnemonic length", "mnemonic", "[ REDACTED ]"); - const entropy = new Uint8Array(Math.ceil(11 * words.length / 8)); - let offset = 0; - for (let i = 0; i < words.length; i++) { - let index = wordlist.getWordIndex(words[i].normalize("NFKD")); - (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_0__/* .assertArgument */ .MR)(index >= 0, `invalid mnemonic word at index ${i}`, "mnemonic", "[ REDACTED ]"); - for (let bit = 0; bit < 11; bit++) { - if (index & (1 << (10 - bit))) { - entropy[offset >> 3] |= (1 << (7 - (offset % 8))); - } - offset++; - } - } - const entropyBits = 32 * words.length / 3; - const checksumBits = words.length / 3; - const checksumMask = getUpperMask(checksumBits); - const checksum = (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_2__/* .getBytes */ .q5)((0,_crypto_index_js__WEBPACK_IMPORTED_MODULE_3__/* .sha256 */ .s)(entropy.slice(0, entropyBits / 8)))[0] & checksumMask; - (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_0__/* .assertArgument */ .MR)(checksum === (entropy[entropy.length - 1] & checksumMask), "invalid mnemonic checksum", "mnemonic", "[ REDACTED ]"); - return (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_2__/* .hexlify */ .c$)(entropy.slice(0, entropyBits / 8)); -} -function entropyToMnemonic(entropy, wordlist) { - (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_0__/* .assertArgument */ .MR)((entropy.length % 4) === 0 && entropy.length >= 16 && entropy.length <= 32, "invalid entropy size", "entropy", "[ REDACTED ]"); - if (wordlist == null) { - wordlist = _wordlists_lang_en_js__WEBPACK_IMPORTED_MODULE_1__/* .LangEn */ .U.wordlist(); - } - const indices = [0]; - let remainingBits = 11; - for (let i = 0; i < entropy.length; i++) { - // Consume the whole byte (with still more to go) - if (remainingBits > 8) { - indices[indices.length - 1] <<= 8; - indices[indices.length - 1] |= entropy[i]; - remainingBits -= 8; - // This byte will complete an 11-bit index - } - else { - indices[indices.length - 1] <<= remainingBits; - indices[indices.length - 1] |= entropy[i] >> (8 - remainingBits); - // Start the next word - indices.push(entropy[i] & getLowerMask(8 - remainingBits)); - remainingBits += 3; - } - } - // Compute the checksum bits - const checksumBits = entropy.length / 4; - const checksum = parseInt((0,_crypto_index_js__WEBPACK_IMPORTED_MODULE_3__/* .sha256 */ .s)(entropy).substring(2, 4), 16) & getUpperMask(checksumBits); - // Shift the checksum into the word indices - indices[indices.length - 1] <<= checksumBits; - indices[indices.length - 1] |= (checksum >> (8 - checksumBits)); - return wordlist.join(indices.map((index) => wordlist.getWord(index))); -} -const _guard = {}; -/** - * A **Mnemonic** wraps all properties required to compute [[link-bip-39]] - * seeds and convert between phrases and entropy. - */ -class Mnemonic { - /** - * The mnemonic phrase of 12, 15, 18, 21 or 24 words. - * - * Use the [[wordlist]] ``split`` method to get the individual words. - */ - phrase; - /** - * The password used for this mnemonic. If no password is used this - * is the empty string (i.e. ``""``) as per the specification. - */ - password; - /** - * The wordlist for this mnemonic. - */ - wordlist; - /** - * The underlying entropy which the mnemonic encodes. - */ - entropy; - /** - * @private - */ - constructor(guard, entropy, phrase, password, wordlist) { - if (password == null) { - password = ""; - } - if (wordlist == null) { - wordlist = _wordlists_lang_en_js__WEBPACK_IMPORTED_MODULE_1__/* .LangEn */ .U.wordlist(); - } - (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_0__/* .assertPrivate */ .gk)(guard, _guard, "Mnemonic"); - (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_4__/* .defineProperties */ .n)(this, { phrase, password, wordlist, entropy }); - } - /** - * Returns the seed for the mnemonic. - */ - computeSeed() { - const salt = (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_5__/* .toUtf8Bytes */ .YW)("mnemonic" + this.password, "NFKD"); - return (0,_crypto_index_js__WEBPACK_IMPORTED_MODULE_6__/* .pbkdf2 */ .A)((0,_utils_index_js__WEBPACK_IMPORTED_MODULE_5__/* .toUtf8Bytes */ .YW)(this.phrase, "NFKD"), salt, 2048, 64, "sha512"); - } - /** - * Creates a new Mnemonic for the %%phrase%%. - * - * The default %%password%% is the empty string and the default - * wordlist is the [English wordlists](LangEn). - */ - static fromPhrase(phrase, password, wordlist) { - // Normalize the case and space; throws if invalid - const entropy = mnemonicToEntropy(phrase, wordlist); - phrase = entropyToMnemonic((0,_utils_index_js__WEBPACK_IMPORTED_MODULE_2__/* .getBytes */ .q5)(entropy), wordlist); - return new Mnemonic(_guard, entropy, phrase, password, wordlist); - } - /** - * Create a new **Mnemonic** from the %%entropy%%. - * - * The default %%password%% is the empty string and the default - * wordlist is the [English wordlists](LangEn). - */ - static fromEntropy(_entropy, password, wordlist) { - const entropy = (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_2__/* .getBytes */ .q5)(_entropy, "entropy"); - const phrase = entropyToMnemonic(entropy, wordlist); - return new Mnemonic(_guard, (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_2__/* .hexlify */ .c$)(entropy), phrase, password, wordlist); - } - /** - * Returns the phrase for %%mnemonic%%. - */ - static entropyToPhrase(_entropy, wordlist) { - const entropy = (0,_utils_index_js__WEBPACK_IMPORTED_MODULE_2__/* .getBytes */ .q5)(_entropy, "entropy"); - return entropyToMnemonic(entropy, wordlist); - } - /** - * Returns the entropy for %%phrase%%. - */ - static phraseToEntropy(phrase, wordlist) { - return mnemonicToEntropy(phrase, wordlist); - } - /** - * Returns true if %%phrase%% is a valid [[link-bip-39]] phrase. - * - * This checks all the provided words belong to the %%wordlist%%, - * that the length is valid and the checksum is correct. - */ - static isValidMnemonic(phrase, wordlist) { - try { - mnemonicToEntropy(phrase, wordlist); - return true; - } - catch (error) { } - return false; - } -} -//# sourceMappingURL=mnemonic.js.map - -/***/ }), - -/***/ 24636: -/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { - -"use strict"; - -// EXPORTS -__webpack_require__.d(__webpack_exports__, { - U: () => (/* binding */ LangEn) -}); - -// EXTERNAL MODULE: ./node_modules/ethers/lib.esm/hash/id.js -var id = __webpack_require__(38264); -// EXTERNAL MODULE: ./node_modules/ethers/lib.esm/utils/errors.js -var errors = __webpack_require__(57339); -;// CONCATENATED MODULE: ./node_modules/ethers/lib.esm/wordlists/decode-owl.js - -const subsChrs = " !#$%&'()*+,-./<=>?@[]^_`{|}~"; -const Word = /^[a-z]*$/i; -function unfold(words, sep) { - let initial = 97; - return words.reduce((accum, word) => { - if (word === sep) { - initial++; - } - else if (word.match(Word)) { - accum.push(String.fromCharCode(initial) + word); - } - else { - initial = 97; - accum.push(word); - } - return accum; - }, []); -} -/** - * @_ignore - */ -function decode(data, subs) { - // Replace all the substitutions with their expanded form - for (let i = subsChrs.length - 1; i >= 0; i--) { - data = data.split(subsChrs[i]).join(subs.substring(2 * i, 2 * i + 2)); - } - // Get all tle clumps; each suffix, first-increment and second-increment - const clumps = []; - const leftover = data.replace(/(:|([0-9])|([A-Z][a-z]*))/g, (all, item, semi, word) => { - if (semi) { - for (let i = parseInt(semi); i >= 0; i--) { - clumps.push(";"); - } - } - else { - clumps.push(item.toLowerCase()); - } - return ""; - }); - /* c8 ignore start */ - if (leftover) { - throw new Error(`leftovers: ${JSON.stringify(leftover)}`); - } - /* c8 ignore stop */ - return unfold(unfold(clumps, ";"), ":"); -} -/** - * @_ignore - */ -function decodeOwl(data) { - (0,errors/* assertArgument */.MR)(data[0] === "0", "unsupported auwl data", "data", data); - return decode(data.substring(1 + 2 * subsChrs.length), data.substring(1, 1 + 2 * subsChrs.length)); -} -//# sourceMappingURL=decode-owl.js.map -// EXTERNAL MODULE: ./node_modules/ethers/lib.esm/utils/properties.js -var properties = __webpack_require__(88081); -;// CONCATENATED MODULE: ./node_modules/ethers/lib.esm/wordlists/wordlist.js - -/** - * A Wordlist represents a collection of language-specific - * words used to encode and devoce [[link-bip-39]] encoded data - * by mapping words to 11-bit values and vice versa. - */ -class Wordlist { - locale; - /** - * Creates a new Wordlist instance. - * - * Sub-classes MUST call this if they provide their own constructor, - * passing in the locale string of the language. - * - * Generally there is no need to create instances of a Wordlist, - * since each language-specific Wordlist creates an instance and - * there is no state kept internally, so they are safe to share. - */ - constructor(locale) { - (0,properties/* defineProperties */.n)(this, { locale }); - } - /** - * Sub-classes may override this to provide a language-specific - * method for spliting %%phrase%% into individual words. - * - * By default, %%phrase%% is split using any sequences of - * white-space as defined by regular expressions (i.e. ``/\s+/``). - */ - split(phrase) { - return phrase.toLowerCase().split(/\s+/g); - } - /** - * Sub-classes may override this to provider a language-specific - * method for joining %%words%% into a phrase. - * - * By default, %%words%% are joined by a single space. - */ - join(words) { - return words.join(" "); - } -} -//# sourceMappingURL=wordlist.js.map -;// CONCATENATED MODULE: ./node_modules/ethers/lib.esm/wordlists/wordlist-owl.js -// Use the encode-latin.js script to create the necessary -// data files to be consumed by this class - - - - -/** - * An OWL format Wordlist is an encoding method that exploits - * the general locality of alphabetically sorted words to - * achieve a simple but effective means of compression. - * - * This class is generally not useful to most developers as - * it is used mainly internally to keep Wordlists for languages - * based on ASCII-7 small. - * - * If necessary, there are tools within the ``generation/`` folder - * to create the necessary data. - */ -class WordlistOwl extends Wordlist { - #data; - #checksum; - /** - * Creates a new Wordlist for %%locale%% using the OWL %%data%% - * and validated against the %%checksum%%. - */ - constructor(locale, data, checksum) { - super(locale); - this.#data = data; - this.#checksum = checksum; - this.#words = null; - } - /** - * The OWL-encoded data. - */ - get _data() { return this.#data; } - /** - * Decode all the words for the wordlist. - */ - _decodeWords() { - return decodeOwl(this.#data); - } - #words; - #loadWords() { - if (this.#words == null) { - const words = this._decodeWords(); - // Verify the computed list matches the official list - const checksum = (0,id.id)(words.join("\n") + "\n"); - /* c8 ignore start */ - if (checksum !== this.#checksum) { - throw new Error(`BIP39 Wordlist for ${this.locale} FAILED`); - } - /* c8 ignore stop */ - this.#words = words; - } - return this.#words; - } - getWord(index) { - const words = this.#loadWords(); - (0,errors/* assertArgument */.MR)(index >= 0 && index < words.length, `invalid word index: ${index}`, "index", index); - return words[index]; - } - getWordIndex(word) { - return this.#loadWords().indexOf(word); - } -} -//# sourceMappingURL=wordlist-owl.js.map -;// CONCATENATED MODULE: ./node_modules/ethers/lib.esm/wordlists/lang-en.js - -const words = "0erleonalorenseinceregesticitStanvetearctssi#ch2Athck&tneLl0And#Il.yLeOutO=S|S%b/ra@SurdU'0Ce[Cid|CountCu'Hie=IdOu,-Qui*Ro[TT]T%T*[Tu$0AptDD-tD*[Ju,M.UltV<)Vi)0Rob-0FairF%dRaid0A(EEntRee0Ead0MRRp%tS!_rmBumCoholErtI&LLeyLowMo,O}PhaReadySoT Ways0A>urAz(gOngOuntU'd0Aly,Ch%Ci|G G!GryIm$K!Noun)Nu$O` Sw T&naTiqueXietyY1ArtOlogyPe?P!Pro=Ril1ChCt-EaEnaGueMMedM%MyOundR<+Re,Ri=RowTTefa@Ti,Tw%k0KPe@SaultSetSi,SumeThma0H!>OmTa{T&dT.udeTra@0Ct]D.Gu,NtTh%ToTumn0Era+OcadoOid0AkeA*AyEsomeFulKw?d0Is:ByChel%C#D+GL<)Lc#y~MbooN_{Ad!AftAmA}AshAt AwlAzyEamEd.EekEwI{etImeIspIt-OpO[Ou^OwdUci$UelUi'Umb!Un^UshYY,$2BeLtu*PPbo?dRiousRr|Rta(R=Sh]/omTe3C!:DMa+MpN)Ng R(gShUght WnY3AlBa>BrisCadeCemb CideCl(eC%a>C*a'ErF&'F(eFyG*eLayLiv M3AgramAlAm#dAryCeE'lEtFf G.$Gn.yLemmaNn NosaurRe@RtSag*eScov Sea'ShSmi[S%d Splay/<)V tVideV%)Zzy5Ct%Cum|G~Lph(Ma(Na>NkeyN%OrSeUb!Ve_ftAg#AmaA,-AwEamE[IftIllInkIpI=OpUmY2CkMbNeR(g/T^Ty1Arf1Nam-:G G!RlyRnR`Sily/Sy1HoOlogyOnomy0GeItUca>1F%t0G1GhtTh 2BowD E@r-EgSe0B?kBodyBra)Er+Ot]PloyPow Pty0Ab!A@DD![D%'EmyErgyF%)Ga+G(eH<)JoyLi,OughR-hRollSu*T Ti*TryVelope1Isode0U$Uip0AA'OdeOs]R%Upt0CapeSayS&)Ta>0Ern$H-s1Id&)IlOkeOl=1A@Amp!Ce[Ch<+C.eCludeCu'Ecu>Erci'Hau,Hib.I!I,ItOt-PM&'Mu}Pa@Po'Pro=Pul'0ChCludeComeC*a'DexD-a>Do%Du,ryFN Noc|PutQuirySSue0Em1Ory:CketGu?RZz3AlousAns~yWel9BInKeUr}yY5D+I)MpNg!Ni%Nk/:Ng?oo3EnEpT^upY3CkDD}yNdNgdomSsTT^&TeTt&Wi4EeIfeO{Ow:BBelB%Dd DyKeMpNgua+PtopR+T T(UghUndryVaWWnWsu.Y Zy3Ad AfArnA=Ctu*FtGG$G&dIsu*M#NdNg`NsOp?dSs#Tt Vel3ArB tyBr?yC&'FeFtGhtKeMbM.NkOnQuid/Tt!VeZ?d5AdAnB, C$CkG-NelyNgOpTt yUdUn+VeY$5CkyGga+Mb N?N^Xury3R-s:Ch(eDG-G}tIdIlInJ%KeMm$NNa+Nda>NgoNs]Nu$P!Rb!R^Rg(R(eRketRria+SkSs/ T^T i$ThTrixTt XimumZe3AdowAnAsu*AtCh<-D$DiaLodyLtMb M%yNt]NuRcyR+R.RryShSsa+T$Thod3Dd!DnightLk~]M-NdNimumN%Nu>Rac!Rr%S ySs/akeXXedXtu*5Bi!DelDifyMM|N.%NkeyN, N`OnR$ReRn(gSqu.oTh T]T%Unta(U'VeVie5ChFf(LeLtiplySc!SeumShroomS-/Tu$3Self/ yTh:I=MePk(Rrow/yT]Tu*3ArCkEdGati=G!@I` PhewR=/TTw%kUtr$V WsXt3CeGht5B!I'M(eeOd!Rm$R`SeTab!TeTh(gTi)VelW5C!?Mb R'T:K0EyJe@Li+Scu*S =Ta(Vious0CurEAyEa'Ed+U{UgUn+2EmEtIntL?LeLi)NdNyOlPul?Rt]S.]Ssib!/TatoTt yV tyWd W _@i)Ai'Ed-tEf Epa*Es|EttyEv|I)IdeIm?yIntI%.yIs#Iva>IzeOb!mO)[Odu)Of.OgramOje@Omo>OofOp tyOsp O>@OudOvide2Bl-Dd(g~LpL'Mpk(N^PilPpyR^a'R.yRpo'R'ShTZz!3Ramid:99Al.yAntumArt E,]I{ItIzO>:Bb.Cco#CeCkD?DioIlInI'~yMpN^NdomN+PidReTeTh V&WZ%3AdyAlAs#BelBuildC$lCei=CipeC%dCyc!Du)F!@F%mFu'G]G*tGul?Je@LaxLea'LiefLyMa(Memb M(dMo=Nd NewNtOp&PairPeatPla)P%tQui*ScueSemb!Si,Sour)Sp#'SultTi*T*atTurnUn]Ve$ViewW?d2Y`m0BBb#CeChDeD+F!GhtGidNgOtPp!SkTu$V$V 5AdA,BotBu,CketM<)OfOkieOmSeTa>UghUndU>Y$5Bb DeGLeNNwayR$:DDd!D}[FeIlLadLm#L#LtLu>MeMp!NdTisfyToshiU)Usa+VeY1A!AnA*Att E}HemeHoolI&)I[%sOrp]OutRapRe&RiptRub1AAr^As#AtC#dC*tCt]Cur.yEdEkGm|Le@~M(?Ni%N'Nt&)RiesRvi)Ss]Tt!TupV&_dowAftAllowA*EdEllEriffIeldIftI}IpIv O{OeOotOpOrtOuld O=RimpRugUff!Y0Bl(gCkDeE+GhtGnL|Lk~yLv Mil?Mp!N)NgR&/ Tua>XZe1A>Et^IIllInIrtUll0AbAmEepEnd I)IdeIghtImOgAyEakEelEmEpE*oI{IllIngO{Oma^O}OolOryO=Ra>gyReetRikeR#gRugg!Ud|UffUmb!Y!0Bje@Bm.BwayC)[ChDd&Ff G?G+,ItMm NNnyN'tP PplyP*meReRfa)R+Rpri'RroundR=ySpe@/a(1AllowAmpApArmE?EetIftImIngIt^Ord1MbolMptomRup/em:B!Ck!GIlL|LkNkPeR+tSk/eTtooXi3A^Am~NNGradeHoldOnP Set1BOng::Rd3Ar~ow9UUngU`:3BraRo9NeO"; -const checksum = "0x3c8acc1e7b08d8e76f9fda015ef48dc8c710a73cb7e0f77b2c18a9b5a7adde60"; -let wordlist = null; -/** - * The [[link-bip39-en]] for [mnemonic phrases](link-bip-39). - * - * @_docloc: api/wordlists - */ -class LangEn extends WordlistOwl { - /** - * Creates a new instance of the English language Wordlist. - * - * This should be unnecessary most of the time as the exported - * [[langEn]] should suffice. - * - * @_ignore: - */ - constructor() { super("en", words, checksum); } - /** - * Returns a singleton instance of a ``LangEn``, creating it - * if this is the first time being called. - */ - static wordlist() { - if (wordlist == null) { - wordlist = new LangEn(); - } - return wordlist; - } -} -//# sourceMappingURL=lang-en.js.map - -/***/ }), - /***/ 27125: /***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => { @@ -201331,7 +175780,7 @@ __webpack_require__.r(__webpack_exports__); /* harmony export */ BatchBlockService: () => (/* reexport safe */ _batch__WEBPACK_IMPORTED_MODULE_4__.B3), /* harmony export */ BatchEventsService: () => (/* reexport safe */ _batch__WEBPACK_IMPORTED_MODULE_4__.JY), /* harmony export */ BatchTransactionService: () => (/* reexport safe */ _batch__WEBPACK_IMPORTED_MODULE_4__.AF), -/* harmony export */ Deposit: () => (/* reexport safe */ _deposits__WEBPACK_IMPORTED_MODULE_6__.dA), +/* harmony export */ Deposit: () => (/* reexport safe */ _deposits__WEBPACK_IMPORTED_MODULE_5__.dA), /* harmony export */ ENS__factory: () => (/* reexport safe */ _typechain__WEBPACK_IMPORTED_MODULE_3__.p2), /* harmony export */ ERC20__factory: () => (/* reexport safe */ _typechain__WEBPACK_IMPORTED_MODULE_3__.Xc), /* harmony export */ GET_DEPOSITS: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.GET_DEPOSITS), @@ -201344,114 +175793,99 @@ __webpack_require__.r(__webpack_exports__); /* harmony export */ GET_STATISTIC: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.GET_STATISTIC), /* harmony export */ GET_WITHDRAWALS: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.GET_WITHDRAWALS), /* harmony export */ GasPriceOracle__factory: () => (/* reexport safe */ _typechain__WEBPACK_IMPORTED_MODULE_3__.Hu), -/* harmony export */ Invoice: () => (/* reexport safe */ _deposits__WEBPACK_IMPORTED_MODULE_6__.qO), -/* harmony export */ MIN_STAKE_BALANCE: () => (/* reexport safe */ _relayerClient__WEBPACK_IMPORTED_MODULE_17__.pO), -/* harmony export */ MerkleTreeService: () => (/* reexport safe */ _merkleTree__WEBPACK_IMPORTED_MODULE_9__.s), -/* harmony export */ Mimc: () => (/* reexport safe */ _mimc__WEBPACK_IMPORTED_MODULE_10__.p), +/* harmony export */ Invoice: () => (/* reexport safe */ _deposits__WEBPACK_IMPORTED_MODULE_5__.qO), +/* harmony export */ MIN_STAKE_BALANCE: () => (/* reexport safe */ _relayerClient__WEBPACK_IMPORTED_MODULE_15__.pO), +/* harmony export */ MerkleTreeService: () => (/* reexport safe */ _merkleTree__WEBPACK_IMPORTED_MODULE_8__.s), +/* harmony export */ Mimc: () => (/* reexport safe */ _mimc__WEBPACK_IMPORTED_MODULE_9__.p), /* harmony export */ Multicall__factory: () => (/* reexport safe */ _typechain__WEBPACK_IMPORTED_MODULE_3__.Q2), -/* harmony export */ NetId: () => (/* reexport safe */ _networkConfig__WEBPACK_IMPORTED_MODULE_12__.zr), -/* harmony export */ NoteAccount: () => (/* reexport safe */ _encryptedNotes__WEBPACK_IMPORTED_MODULE_7__.Ad), +/* harmony export */ NetId: () => (/* reexport safe */ _networkConfig__WEBPACK_IMPORTED_MODULE_11__.zr), +/* harmony export */ NoteAccount: () => (/* reexport safe */ _encryptedNotes__WEBPACK_IMPORTED_MODULE_6__.Ad), /* harmony export */ OffchainOracle__factory: () => (/* reexport safe */ _typechain__WEBPACK_IMPORTED_MODULE_3__.Hk), /* harmony export */ OvmGasPriceOracle__factory: () => (/* reexport safe */ _typechain__WEBPACK_IMPORTED_MODULE_3__.Ld), -/* harmony export */ Pedersen: () => (/* reexport safe */ _pedersen__WEBPACK_IMPORTED_MODULE_14__.Hr), -/* harmony export */ RelayerClient: () => (/* reexport safe */ _relayerClient__WEBPACK_IMPORTED_MODULE_17__.OR), +/* harmony export */ Pedersen: () => (/* reexport safe */ _pedersen__WEBPACK_IMPORTED_MODULE_12__.Hr), +/* harmony export */ RelayerClient: () => (/* reexport safe */ _relayerClient__WEBPACK_IMPORTED_MODULE_15__.OR), /* harmony export */ ReverseRecords__factory: () => (/* reexport safe */ _typechain__WEBPACK_IMPORTED_MODULE_3__.Rp), -/* harmony export */ TokenPriceOracle: () => (/* reexport safe */ _prices__WEBPACK_IMPORTED_MODULE_15__.T), -/* harmony export */ TornadoBrowserProvider: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_16__.D2), -/* harmony export */ TornadoFeeOracle: () => (/* reexport safe */ _fees__WEBPACK_IMPORTED_MODULE_8__.o), -/* harmony export */ TornadoRpcSigner: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_16__.Vr), -/* harmony export */ TornadoVoidSigner: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_16__.Gd), -/* harmony export */ TornadoWallet: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_16__.nA), -/* harmony export */ TreeCache: () => (/* reexport safe */ _treeCache__WEBPACK_IMPORTED_MODULE_19__.v), +/* harmony export */ TokenPriceOracle: () => (/* reexport safe */ _prices__WEBPACK_IMPORTED_MODULE_13__.T), +/* harmony export */ TornadoBrowserProvider: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_14__.D2), +/* harmony export */ TornadoFeeOracle: () => (/* reexport safe */ _fees__WEBPACK_IMPORTED_MODULE_7__.o), +/* harmony export */ TornadoRpcSigner: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_14__.Vr), +/* harmony export */ TornadoVoidSigner: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_14__.Gd), +/* harmony export */ TornadoWallet: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_14__.nA), /* harmony export */ _META: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__._META), -/* harmony export */ addNetwork: () => (/* reexport safe */ _networkConfig__WEBPACK_IMPORTED_MODULE_12__.AE), +/* harmony export */ addNetwork: () => (/* reexport safe */ _networkConfig__WEBPACK_IMPORTED_MODULE_11__.AE), /* harmony export */ ajv: () => (/* reexport safe */ _schemas__WEBPACK_IMPORTED_MODULE_2__.SS), -/* harmony export */ base64ToBytes: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.Kp), -/* harmony export */ bigIntReplacer: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.gn), -/* harmony export */ bnToBytes: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.jm), -/* harmony export */ buffPedersenHash: () => (/* reexport safe */ _pedersen__WEBPACK_IMPORTED_MODULE_14__.UB), -/* harmony export */ bufferToBytes: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.lY), -/* harmony export */ bytesToBN: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.Ju), -/* harmony export */ bytesToBase64: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__["if"]), -/* harmony export */ bytesToHex: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.My), -/* harmony export */ calculateScore: () => (/* reexport safe */ _relayerClient__WEBPACK_IMPORTED_MODULE_17__.zy), -/* harmony export */ calculateSnarkProof: () => (/* reexport safe */ _websnark__WEBPACK_IMPORTED_MODULE_21__.i), -/* harmony export */ chunk: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.iv), -/* harmony export */ concatBytes: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.Id), -/* harmony export */ convertETHToTokenAmount: () => (/* reexport safe */ _fees__WEBPACK_IMPORTED_MODULE_8__.N), -/* harmony export */ createDeposit: () => (/* reexport safe */ _deposits__WEBPACK_IMPORTED_MODULE_6__.Hr), -/* harmony export */ crypto: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.Et), -/* harmony export */ customConfig: () => (/* reexport safe */ _networkConfig__WEBPACK_IMPORTED_MODULE_12__.cX), -/* harmony export */ defaultConfig: () => (/* reexport safe */ _networkConfig__WEBPACK_IMPORTED_MODULE_12__.sb), -/* harmony export */ defaultUserAgent: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_16__.mJ), -/* harmony export */ download: () => (/* reexport safe */ _data__WEBPACK_IMPORTED_MODULE_5__.RG), -/* harmony export */ enabledChains: () => (/* reexport safe */ _networkConfig__WEBPACK_IMPORTED_MODULE_12__.Af), -/* harmony export */ existsAsync: () => (/* reexport safe */ _data__WEBPACK_IMPORTED_MODULE_5__.hn), +/* harmony export */ base64ToBytes: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.Kp), +/* harmony export */ bigIntReplacer: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.gn), +/* harmony export */ bnToBytes: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.jm), +/* harmony export */ buffPedersenHash: () => (/* reexport safe */ _pedersen__WEBPACK_IMPORTED_MODULE_12__.UB), +/* harmony export */ bufferToBytes: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.lY), +/* harmony export */ bytesToBN: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.Ju), +/* harmony export */ bytesToBase64: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__["if"]), +/* harmony export */ bytesToHex: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.My), +/* harmony export */ calculateScore: () => (/* reexport safe */ _relayerClient__WEBPACK_IMPORTED_MODULE_15__.zy), +/* harmony export */ calculateSnarkProof: () => (/* reexport safe */ _websnark__WEBPACK_IMPORTED_MODULE_18__.i), +/* harmony export */ chunk: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.iv), +/* harmony export */ concatBytes: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.Id), +/* harmony export */ convertETHToTokenAmount: () => (/* reexport safe */ _fees__WEBPACK_IMPORTED_MODULE_7__.N), +/* harmony export */ createDeposit: () => (/* reexport safe */ _deposits__WEBPACK_IMPORTED_MODULE_5__.Hr), +/* harmony export */ crypto: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.Et), +/* harmony export */ customConfig: () => (/* reexport safe */ _networkConfig__WEBPACK_IMPORTED_MODULE_11__.cX), +/* harmony export */ defaultConfig: () => (/* reexport safe */ _networkConfig__WEBPACK_IMPORTED_MODULE_11__.sb), +/* harmony export */ defaultUserAgent: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_14__.mJ), +/* harmony export */ enabledChains: () => (/* reexport safe */ _networkConfig__WEBPACK_IMPORTED_MODULE_11__.Af), /* harmony export */ factories: () => (/* reexport safe */ _typechain__WEBPACK_IMPORTED_MODULE_3__.XB), -/* harmony export */ fetch: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_16__.hd), -/* harmony export */ fetchData: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_16__.Fd), -/* harmony export */ fetchGetUrlFunc: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_16__.uY), +/* harmony export */ fetch: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_14__.hd), +/* harmony export */ fetchData: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_14__.Fd), +/* harmony export */ fetchGetUrlFunc: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_14__.uY), /* harmony export */ getAllDeposits: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.getAllDeposits), /* harmony export */ getAllEncryptedNotes: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.getAllEncryptedNotes), /* harmony export */ getAllGovernanceEvents: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.getAllGovernanceEvents), /* harmony export */ getAllGraphEchoEvents: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.getAllGraphEchoEvents), /* harmony export */ getAllRegisters: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.getAllRegisters), /* harmony export */ getAllWithdrawals: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.getAllWithdrawals), -/* harmony export */ getConfig: () => (/* reexport safe */ _networkConfig__WEBPACK_IMPORTED_MODULE_12__.zj), +/* harmony export */ getConfig: () => (/* reexport safe */ _networkConfig__WEBPACK_IMPORTED_MODULE_11__.zj), /* harmony export */ getDeposits: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.getDeposits), /* harmony export */ getEncryptedNotes: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.getEncryptedNotes), -/* harmony export */ getGasOraclePlugin: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_16__.bD), +/* harmony export */ getGasOraclePlugin: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_14__.bD), /* harmony export */ getGovernanceEvents: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.getGovernanceEvents), /* harmony export */ getGraphEchoEvents: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.getGraphEchoEvents), -/* harmony export */ getHttpAgent: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_16__.WU), -/* harmony export */ getInstanceByAddress: () => (/* reexport safe */ _networkConfig__WEBPACK_IMPORTED_MODULE_12__.Zh), +/* harmony export */ getHttpAgent: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_14__.WU), +/* harmony export */ getInstanceByAddress: () => (/* reexport safe */ _networkConfig__WEBPACK_IMPORTED_MODULE_11__.Zh), /* harmony export */ getMeta: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.getMeta), -/* harmony export */ getNetworkConfig: () => (/* reexport safe */ _networkConfig__WEBPACK_IMPORTED_MODULE_12__.RY), +/* harmony export */ getNetworkConfig: () => (/* reexport safe */ _networkConfig__WEBPACK_IMPORTED_MODULE_11__.RY), /* harmony export */ getNoteAccounts: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.getNoteAccounts), -/* harmony export */ getProvider: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_16__.sO), -/* harmony export */ getProviderWithNetId: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_16__.MF), +/* harmony export */ getProvider: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_14__.sO), +/* harmony export */ getProviderWithNetId: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_14__.MF), /* harmony export */ getRegisters: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.getRegisters), /* harmony export */ getStatistic: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.getStatistic), /* harmony export */ getStatusSchema: () => (/* reexport safe */ _schemas__WEBPACK_IMPORTED_MODULE_2__.c_), -/* harmony export */ getSubdomains: () => (/* reexport safe */ _networkConfig__WEBPACK_IMPORTED_MODULE_12__.cF), -/* harmony export */ getSupportedInstances: () => (/* reexport safe */ _relayerClient__WEBPACK_IMPORTED_MODULE_17__.XF), -/* harmony export */ getTokenBalances: () => (/* reexport safe */ _tokens__WEBPACK_IMPORTED_MODULE_18__.H), -/* harmony export */ getWeightRandom: () => (/* reexport safe */ _relayerClient__WEBPACK_IMPORTED_MODULE_17__.c$), +/* harmony export */ getSubdomains: () => (/* reexport safe */ _networkConfig__WEBPACK_IMPORTED_MODULE_11__.cF), +/* harmony export */ getSupportedInstances: () => (/* reexport safe */ _relayerClient__WEBPACK_IMPORTED_MODULE_15__.XF), +/* harmony export */ getTokenBalances: () => (/* reexport safe */ _tokens__WEBPACK_IMPORTED_MODULE_16__.H), +/* harmony export */ getWeightRandom: () => (/* reexport safe */ _relayerClient__WEBPACK_IMPORTED_MODULE_15__.c$), /* harmony export */ getWithdrawals: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.getWithdrawals), -/* harmony export */ hexToBytes: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.aT), -/* harmony export */ initGroth16: () => (/* reexport safe */ _websnark__WEBPACK_IMPORTED_MODULE_21__.O), -/* harmony export */ isNode: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.Ll), -/* harmony export */ isRelayerUpdated: () => (/* reexport safe */ _relayerClient__WEBPACK_IMPORTED_MODULE_17__.mU), +/* harmony export */ hexToBytes: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.aT), +/* harmony export */ initGroth16: () => (/* reexport safe */ _websnark__WEBPACK_IMPORTED_MODULE_18__.O), +/* harmony export */ isNode: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.Ll), +/* harmony export */ isRelayerUpdated: () => (/* reexport safe */ _relayerClient__WEBPACK_IMPORTED_MODULE_15__.mU), /* harmony export */ jobsSchema: () => (/* reexport safe */ _schemas__WEBPACK_IMPORTED_MODULE_2__.Us), -/* harmony export */ leBuff2Int: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.ae), -/* harmony export */ leInt2Buff: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.EI), -/* harmony export */ loadCachedEvents: () => (/* reexport safe */ _data__WEBPACK_IMPORTED_MODULE_5__.sw), -/* harmony export */ loadSavedEvents: () => (/* reexport safe */ _data__WEBPACK_IMPORTED_MODULE_5__.rx), -/* harmony export */ mimc: () => (/* reexport safe */ _mimc__WEBPACK_IMPORTED_MODULE_10__.f), -/* harmony export */ multicall: () => (/* reexport safe */ _multicall__WEBPACK_IMPORTED_MODULE_11__.C), -/* harmony export */ packEncryptedMessage: () => (/* reexport safe */ _encryptedNotes__WEBPACK_IMPORTED_MODULE_7__.Fr), -/* harmony export */ parseAddress: () => (/* reexport safe */ _parser__WEBPACK_IMPORTED_MODULE_13__.or), -/* harmony export */ parseKey: () => (/* reexport safe */ _parser__WEBPACK_IMPORTED_MODULE_13__.Do), -/* harmony export */ parseMnemonic: () => (/* reexport safe */ _parser__WEBPACK_IMPORTED_MODULE_13__.qc), -/* harmony export */ parseNumber: () => (/* reexport safe */ _parser__WEBPACK_IMPORTED_MODULE_13__.$J), -/* harmony export */ parseRecoveryKey: () => (/* reexport safe */ _parser__WEBPACK_IMPORTED_MODULE_13__._p), -/* harmony export */ parseRelayer: () => (/* reexport safe */ _parser__WEBPACK_IMPORTED_MODULE_13__.yJ), -/* harmony export */ parseSemanticVersion: () => (/* reexport safe */ _relayerClient__WEBPACK_IMPORTED_MODULE_17__.qo), -/* harmony export */ parseUrl: () => (/* reexport safe */ _parser__WEBPACK_IMPORTED_MODULE_13__.Dl), -/* harmony export */ pedersen: () => (/* reexport safe */ _pedersen__WEBPACK_IMPORTED_MODULE_14__.NO), -/* harmony export */ pickWeightedRandomRelayer: () => (/* reexport safe */ _relayerClient__WEBPACK_IMPORTED_MODULE_17__.sN), -/* harmony export */ populateTransaction: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_16__.zr), +/* harmony export */ leBuff2Int: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.ae), +/* harmony export */ leInt2Buff: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.EI), +/* harmony export */ mimc: () => (/* reexport safe */ _mimc__WEBPACK_IMPORTED_MODULE_9__.f), +/* harmony export */ multicall: () => (/* reexport safe */ _multicall__WEBPACK_IMPORTED_MODULE_10__.C), +/* harmony export */ packEncryptedMessage: () => (/* reexport safe */ _encryptedNotes__WEBPACK_IMPORTED_MODULE_6__.Fr), +/* harmony export */ parseSemanticVersion: () => (/* reexport safe */ _relayerClient__WEBPACK_IMPORTED_MODULE_15__.qo), +/* harmony export */ pedersen: () => (/* reexport safe */ _pedersen__WEBPACK_IMPORTED_MODULE_12__.NO), +/* harmony export */ pickWeightedRandomRelayer: () => (/* reexport safe */ _relayerClient__WEBPACK_IMPORTED_MODULE_15__.sN), +/* harmony export */ populateTransaction: () => (/* reexport safe */ _providers__WEBPACK_IMPORTED_MODULE_14__.zr), /* harmony export */ queryGraph: () => (/* reexport safe */ _graphql__WEBPACK_IMPORTED_MODULE_1__.queryGraph), -/* harmony export */ rBigInt: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.ib), -/* harmony export */ saveUserFile: () => (/* reexport safe */ _data__WEBPACK_IMPORTED_MODULE_5__.jj), -/* harmony export */ sleep: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.yy), -/* harmony export */ substring: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.uU), -/* harmony export */ toFixedHex: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.$W), -/* harmony export */ toFixedLength: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.sY), -/* harmony export */ unpackEncryptedMessage: () => (/* reexport safe */ _encryptedNotes__WEBPACK_IMPORTED_MODULE_7__.ol), -/* harmony export */ unzipAsync: () => (/* reexport safe */ _data__WEBPACK_IMPORTED_MODULE_5__.fY), -/* harmony export */ validateUrl: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_20__.wv), -/* harmony export */ zipAsync: () => (/* reexport safe */ _data__WEBPACK_IMPORTED_MODULE_5__.a8) +/* harmony export */ rBigInt: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.ib), +/* harmony export */ sleep: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.yy), +/* harmony export */ substring: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.uU), +/* harmony export */ toFixedHex: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.$W), +/* harmony export */ toFixedLength: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.sY), +/* harmony export */ unpackEncryptedMessage: () => (/* reexport safe */ _encryptedNotes__WEBPACK_IMPORTED_MODULE_6__.ol), +/* harmony export */ validateUrl: () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_17__.wv) /* harmony export */ }); /* harmony import */ var _events__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(94513); /* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {}; @@ -201461,26 +175895,20 @@ __webpack_require__.r(__webpack_exports__); /* harmony import */ var _schemas__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7613); /* harmony import */ var _typechain__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(67276); /* harmony import */ var _batch__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(9723); -/* harmony import */ var _data__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(11489); -/* harmony import */ var _deposits__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(7240); -/* harmony import */ var _encryptedNotes__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(33298); -/* harmony import */ var _fees__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(37182); -/* harmony import */ var _merkleTree__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(5217); -/* harmony import */ var _mimc__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(22901); -/* harmony import */ var _multicall__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(48486); -/* harmony import */ var _networkConfig__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(59499); -/* harmony import */ var _parser__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(30200); -/* harmony import */ var _pedersen__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(85111); -/* harmony import */ var _prices__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(34525); -/* harmony import */ var _providers__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(64819); -/* harmony import */ var _relayerClient__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(57194); -/* harmony import */ var _tokens__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(7393); -/* harmony import */ var _treeCache__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(15609); -/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(67418); -/* harmony import */ var _websnark__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(26746); - - - +/* harmony import */ var _deposits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(7240); +/* harmony import */ var _encryptedNotes__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(33298); +/* harmony import */ var _fees__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(37182); +/* harmony import */ var _merkleTree__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(5217); +/* harmony import */ var _mimc__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(22901); +/* harmony import */ var _multicall__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(48486); +/* harmony import */ var _networkConfig__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(59499); +/* harmony import */ var _pedersen__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(85111); +/* harmony import */ var _prices__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(34525); +/* harmony import */ var _providers__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(68434); +/* harmony import */ var _relayerClient__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(57194); +/* harmony import */ var _tokens__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(7393); +/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(67418); +/* harmony import */ var _websnark__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(26746); diff --git a/dist/parser.d.ts b/dist/parser.d.ts deleted file mode 100644 index 35da7f2..0000000 --- a/dist/parser.d.ts +++ /dev/null @@ -1,10 +0,0 @@ -export declare function parseNumber(value?: string | number): number; -export declare function parseUrl(value?: string): string; -export declare function parseRelayer(value?: string): string; -export declare function parseAddress(value?: string): string; -export declare function parseMnemonic(value?: string): string; -export declare function parseKey(value?: string): string; -/** - * Recovery key shouldn't have a 0x prefix (Also this is how the UI generates) - */ -export declare function parseRecoveryKey(value?: string): string; diff --git a/dist/treeCache.d.ts b/dist/treeCache.d.ts deleted file mode 100644 index 926c37a..0000000 --- a/dist/treeCache.d.ts +++ /dev/null @@ -1,35 +0,0 @@ -/** - * Create tree cache file from node.js - * - * Only works for node.js, modified from https://github.com/tornadocash/tornado-classic-ui/blob/master/scripts/updateTree.js - */ -import { MerkleTree } from '@tornado/fixed-merkle-tree'; -import { DepositsEvents } from './events'; -import type { NetIdType } from './networkConfig'; -export interface TreeCacheConstructor { - netId: NetIdType; - amount: string; - currency: string; - userDirectory: string; - PARTS_COUNT?: number; - LEAVES?: number; - zeroElement?: string; -} -export interface treeMetadata { - blockNumber: number; - logIndex: number; - transactionHash: string; - timestamp: number; - from: string; - leafIndex: number; -} -export declare class TreeCache { - netId: NetIdType; - amount: string; - currency: string; - userDirectory: string; - PARTS_COUNT: number; - constructor({ netId, amount, currency, userDirectory, PARTS_COUNT }: TreeCacheConstructor); - getInstanceName(): string; - createTree(events: DepositsEvents[], tree: MerkleTree): Promise; -} diff --git a/package.json b/package.json index fa7b08c..be3a331 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@tornado/core", - "version": "1.0.0", + "version": "1.0.1", "description": "An SDK for building applications on top of Privacy Pools", "main": "./dist/index.js", "module": "./dist/index.mjs", @@ -37,7 +37,6 @@ "@tornado/snarkjs": "^0.1.20", "@tornado/websnark": "^0.0.4", "ajv": "^8.12.0", - "bloomfilter.js": "^1.0.2", "bn.js": "^5.2.1", "circomlibjs": "0.1.7", "cross-fetch": "^4.0.0", @@ -45,15 +44,7 @@ "ffjavascript": "0.2.48", "fflate": "^0.8.2" }, - "optionalDependencies": { - "@colors/colors": "1.5.0", - "cli-table3": "^0.6.4", - "commander": "^12.0.0", - "http-proxy-agent": "^7.0.2", - "https-proxy-agent": "^7.0.4", - "moment": "^2.30.1", - "socks-proxy-agent": "^8.0.3" - }, + "optionalDependencies": {}, "devDependencies": { "@rollup/plugin-commonjs": "^25.0.7", "@rollup/plugin-json": "^6.1.0", diff --git a/rollup.config.mjs b/rollup.config.mjs index cfad3c0..f0a74f5 100644 --- a/rollup.config.mjs +++ b/rollup.config.mjs @@ -7,6 +7,9 @@ import pkgJson from './package.json' assert { type: 'json' }; const external = Object.keys(pkgJson.dependencies).concat( Object.keys(pkgJson.optionalDependencies), [ + 'http-proxy-agent', + 'https-proxy-agent', + 'socks-proxy-agent', '@tornado/websnark/src/utils', '@tornado/websnark/src/groth16', ] diff --git a/src/data.ts b/src/data.ts deleted file mode 100644 index ba6d55b..0000000 --- a/src/data.ts +++ /dev/null @@ -1,146 +0,0 @@ -import path from 'path'; -import { stat, mkdir, readFile, writeFile } from 'fs/promises'; -import { zip, unzip, AsyncZippable, Unzipped } from 'fflate'; -import { BaseEvents, MinimalEvents } from './events'; - -export async function existsAsync(fileOrDir: string): Promise { - try { - await stat(fileOrDir); - - return true; - } catch { - return false; - } -} - -export function zipAsync(file: AsyncZippable): Promise { - return new Promise((res, rej) => { - zip(file, { mtime: new Date('1/1/1980') }, (err, data) => { - if (err) { - rej(err); - return; - } - res(data); - }); - }); -} - -export function unzipAsync(data: Uint8Array): Promise { - return new Promise((res, rej) => { - unzip(data, {}, (err, data) => { - if (err) { - rej(err); - return; - } - res(data); - }); - }); -} - -export async function saveUserFile({ - fileName, - userDirectory, - dataString, -}: { - fileName: string; - userDirectory: string; - dataString: string; -}) { - fileName = fileName.toLowerCase(); - - const filePath = path.join(userDirectory, fileName); - - const payload = await zipAsync({ - [fileName]: new TextEncoder().encode(dataString), - }); - - if (!(await existsAsync(userDirectory))) { - await mkdir(userDirectory, { recursive: true }); - } - - await writeFile(filePath + '.zip', payload); - await writeFile(filePath, dataString); -} - -export async function loadSavedEvents({ - name, - userDirectory, - deployedBlock, -}: { - name: string; - userDirectory: string; - deployedBlock: number; -}): Promise> { - const filePath = path.join(userDirectory, `${name}.json`.toLowerCase()); - - if (!(await existsAsync(filePath))) { - return { - events: [] as T[], - lastBlock: null, - }; - } - - try { - const events = JSON.parse(await readFile(filePath, { encoding: 'utf8' })) as T[]; - - return { - events, - lastBlock: events && events.length ? events[events.length - 1].blockNumber : deployedBlock, - }; - } catch (err) { - console.log('Method loadSavedEvents has error'); - console.log(err); - return { - events: [], - lastBlock: deployedBlock, - }; - } -} - -export async function download({ name, cacheDirectory }: { name: string; cacheDirectory: string }) { - const fileName = `${name}.json`.toLowerCase(); - const zipName = `${fileName}.zip`; - const zipPath = path.join(cacheDirectory, zipName); - - const data = await readFile(zipPath); - const { [fileName]: content } = await unzipAsync(data); - - return new TextDecoder().decode(content); -} - -export async function loadCachedEvents({ - name, - cacheDirectory, - deployedBlock, -}: { - name: string; - cacheDirectory: string; - deployedBlock: number; -}): Promise> { - try { - const module = await download({ cacheDirectory, name }); - - if (module) { - const events = JSON.parse(module); - - const lastBlock = events && events.length ? events[events.length - 1].blockNumber : deployedBlock; - - return { - events, - lastBlock, - }; - } - - return { - events: [], - lastBlock: deployedBlock, - }; - } catch (err) { - console.log('Method loadCachedEvents has error'); - console.log(err); - return { - events: [], - lastBlock: deployedBlock, - }; - } -} diff --git a/src/events/index.ts b/src/events/index.ts index c386db6..63fa69b 100644 --- a/src/events/index.ts +++ b/src/events/index.ts @@ -1,3 +1,2 @@ export * from './types'; export * from './base'; -export * from './node'; diff --git a/src/events/node.ts b/src/events/node.ts deleted file mode 100644 index 7ed759e..0000000 --- a/src/events/node.ts +++ /dev/null @@ -1,780 +0,0 @@ -import Table from 'cli-table3'; -import moment from 'moment'; -import { BatchBlockOnProgress, BatchEventOnProgress } from '../batch'; -import { saveUserFile, loadSavedEvents, loadCachedEvents } from '../data'; -import { - BaseTornadoService, - BaseEncryptedNotesService, - BaseGovernanceService, - BaseRegistryService, - BaseTornadoServiceConstructor, - BaseEncryptedNotesServiceConstructor, - BaseGovernanceServiceConstructor, - BaseRegistryServiceConstructor, - BaseEchoServiceConstructor, - BaseEchoService, -} from './base'; -import type { - BaseEvents, - DepositsEvents, - WithdrawalsEvents, - EncryptedNotesEvents, - RegistersEvents, - AllGovernanceEvents, - EchoEvents, -} from './types'; - -export type NodeTornadoServiceConstructor = BaseTornadoServiceConstructor & { - cacheDirectory?: string; - userDirectory?: string; -}; - -export class NodeTornadoService extends BaseTornadoService { - cacheDirectory?: string; - userDirectory?: string; - - constructor({ - netId, - provider, - graphApi, - subgraphName, - Tornado, - type, - amount, - currency, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory, - }: NodeTornadoServiceConstructor) { - super({ - netId, - provider, - graphApi, - subgraphName, - Tornado, - type, - amount, - currency, - deployedBlock, - fetchDataOptions, - }); - - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - - updateEventProgress({ type, fromBlock, toBlock, count }: Parameters[0]) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log('____________________________________________'); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock}\n`); - } - } - } - - updateTransactionProgress({ currentIndex, totalIndex }: Parameters[0]) { - if (totalIndex) { - console.log(`Fetched ${currentIndex} deposit txs of ${totalIndex}`); - } - } - - updateBlockProgress({ currentIndex, totalIndex }: Parameters[0]) { - if (totalIndex) { - console.log(`Fetched ${currentIndex} withdrawal blocks of ${totalIndex}`); - } - } - - updateGraphProgress({ type, fromBlock, toBlock, count }: Parameters[0]) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log('____________________________________________'); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock}\n`); - } - } - } - - async getEventsFromDB() { - if (!this.userDirectory) { - console.log( - 'Updating events for', - this.amount, - this.currency.toUpperCase(), - `${this.getType().toLowerCase()}s\n`, - ); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock}\n`); - - return { - events: [], - lastBlock: this.deployedBlock, - }; - } - - const savedEvents = await loadSavedEvents({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock, - }); - - console.log('Updating events for', this.amount, this.currency.toUpperCase(), `${this.getType().toLowerCase()}s\n`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock}\n`); - - return savedEvents; - } - - async getEventsFromCache() { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock}\n`); - - return { - events: [], - lastBlock: this.deployedBlock, - }; - } - - const cachedEvents = await loadCachedEvents({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock, - }); - - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock}\n`); - - return cachedEvents; - } - - async saveEvents({ events, lastBlock }: BaseEvents) { - const instanceName = this.getInstanceName(); - - console.log('\ntotalEvents count - ', events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock}\n`, - ); - - const eventTable = new Table(); - - eventTable.push( - [{ colSpan: 2, content: `${this.getType()}s`, hAlign: 'center' }], - ['Instance', `${this.netId} chain ${this.amount} ${this.currency.toUpperCase()}`], - ['Anonymity set', `${events.length} equal user ${this.getType().toLowerCase()}s`], - [{ colSpan: 2, content: `Latest ${this.getType().toLowerCase()}s` }], - ...events - .slice(events.length - 10) - .reverse() - .map(({ timestamp }, index) => { - const eventIndex = events.length - index; - const eventTime = moment.unix(timestamp).fromNow(); - - return [eventIndex, eventTime]; - }), - ); - - console.log(eventTable.toString() + '\n'); - - if (this.userDirectory) { - await saveUserFile({ - fileName: instanceName + '.json', - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + '\n', - }); - } - } -} - -export type NodeEchoServiceConstructor = BaseEchoServiceConstructor & { - cacheDirectory?: string; - userDirectory?: string; -}; - -export class NodeEchoService extends BaseEchoService { - cacheDirectory?: string; - userDirectory?: string; - - constructor({ - netId, - provider, - graphApi, - subgraphName, - Echoer, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory, - }: NodeEchoServiceConstructor) { - super({ - netId, - provider, - graphApi, - subgraphName, - Echoer, - deployedBlock, - fetchDataOptions, - }); - - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - - updateEventProgress({ type, fromBlock, toBlock, count }: Parameters[0]) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log('____________________________________________'); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock}\n`); - } - } - } - - updateGraphProgress({ type, fromBlock, toBlock, count }: Parameters[0]) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log('____________________________________________'); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock}\n`); - } - } - } - - async getEventsFromDB() { - if (!this.userDirectory) { - console.log(`Updating events for ${this.netId} chain echo events\n`); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock}\n`); - - return { - events: [], - lastBlock: this.deployedBlock, - }; - } - - const savedEvents = await loadSavedEvents({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock, - }); - - console.log(`Updating events for ${this.netId} chain echo events\n`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock}\n`); - - return savedEvents; - } - - async getEventsFromCache() { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock}\n`); - - return { - events: [], - lastBlock: this.deployedBlock, - }; - } - - const cachedEvents = await loadCachedEvents({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock, - }); - - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock}\n`); - - return cachedEvents; - } - - async saveEvents({ events, lastBlock }: BaseEvents) { - const instanceName = this.getInstanceName(); - - console.log('\ntotalEvents count - ', events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock}\n`, - ); - - const eventTable = new Table(); - - eventTable.push( - [{ colSpan: 2, content: 'Echo Accounts', hAlign: 'center' }], - ['Network', `${this.netId} chain`], - ['Events', `${events.length} events`], - [{ colSpan: 2, content: 'Latest events' }], - ...events - .slice(events.length - 10) - .reverse() - .map(({ blockNumber }, index) => { - const eventIndex = events.length - index; - - return [eventIndex, blockNumber]; - }), - ); - - console.log(eventTable.toString() + '\n'); - - if (this.userDirectory) { - await saveUserFile({ - fileName: instanceName + '.json', - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + '\n', - }); - } - } -} - -export type NodeEncryptedNotesServiceConstructor = BaseEncryptedNotesServiceConstructor & { - cacheDirectory?: string; - userDirectory?: string; -}; - -export class NodeEncryptedNotesService extends BaseEncryptedNotesService { - cacheDirectory?: string; - userDirectory?: string; - - constructor({ - netId, - provider, - graphApi, - subgraphName, - Router, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory, - }: NodeEncryptedNotesServiceConstructor) { - super({ - netId, - provider, - graphApi, - subgraphName, - Router, - deployedBlock, - fetchDataOptions, - }); - - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - - updateEventProgress({ type, fromBlock, toBlock, count }: Parameters[0]) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log('____________________________________________'); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock}\n`); - } - } - } - - updateGraphProgress({ type, fromBlock, toBlock, count }: Parameters[0]) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log('____________________________________________'); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock}\n`); - } - } - } - - async getEventsFromDB() { - if (!this.userDirectory) { - console.log(`Updating events for ${this.netId} chain encrypted events\n`); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock}\n`); - - return { - events: [], - lastBlock: this.deployedBlock, - }; - } - - const savedEvents = await loadSavedEvents({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock, - }); - - console.log(`Updating events for ${this.netId} chain encrypted events\n`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock}\n`); - - return savedEvents; - } - - async getEventsFromCache() { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock}\n`); - - return { - events: [], - lastBlock: this.deployedBlock, - }; - } - - const cachedEvents = await loadCachedEvents({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock, - }); - - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock}\n`); - - return cachedEvents; - } - - async saveEvents({ events, lastBlock }: BaseEvents) { - const instanceName = this.getInstanceName(); - - console.log('\ntotalEvents count - ', events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock}\n`, - ); - - const eventTable = new Table(); - - eventTable.push( - [{ colSpan: 2, content: 'Encrypted Notes', hAlign: 'center' }], - ['Network', `${this.netId} chain`], - ['Events', `${events.length} events`], - [{ colSpan: 2, content: 'Latest events' }], - ...events - .slice(events.length - 10) - .reverse() - .map(({ blockNumber }, index) => { - const eventIndex = events.length - index; - - return [eventIndex, blockNumber]; - }), - ); - - console.log(eventTable.toString() + '\n'); - - if (this.userDirectory) { - await saveUserFile({ - fileName: instanceName + '.json', - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + '\n', - }); - } - } -} - -export type NodeGovernanceServiceConstructor = BaseGovernanceServiceConstructor & { - cacheDirectory?: string; - userDirectory?: string; -}; - -export class NodeGovernanceService extends BaseGovernanceService { - cacheDirectory?: string; - userDirectory?: string; - - constructor({ - netId, - provider, - graphApi, - subgraphName, - Governance, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory, - }: NodeGovernanceServiceConstructor) { - super({ - netId, - provider, - graphApi, - subgraphName, - Governance, - deployedBlock, - fetchDataOptions, - }); - - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - - updateEventProgress({ type, fromBlock, toBlock, count }: Parameters[0]) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log('____________________________________________'); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock}\n`); - } - } - } - - updateGraphProgress({ type, fromBlock, toBlock, count }: Parameters[0]) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log('____________________________________________'); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock}\n`); - } - } - } - - updateTransactionProgress({ currentIndex, totalIndex }: Parameters[0]) { - if (totalIndex) { - console.log(`Fetched ${currentIndex} governance txs of ${totalIndex}`); - } - } - - async getEventsFromDB() { - if (!this.userDirectory) { - console.log(`Updating events for ${this.netId} chain governance events\n`); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock}\n`); - - return { - events: [], - lastBlock: this.deployedBlock, - }; - } - - const savedEvents = await loadSavedEvents({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock, - }); - - console.log(`Updating events for ${this.netId} chain governance events\n`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock}\n`); - - return savedEvents; - } - - async getEventsFromCache() { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock}\n`); - - return { - events: [], - lastBlock: this.deployedBlock, - }; - } - - const cachedEvents = await loadCachedEvents({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock, - }); - - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock}\n`); - - return cachedEvents; - } - - async saveEvents({ events, lastBlock }: BaseEvents) { - const instanceName = this.getInstanceName(); - - console.log('\ntotalEvents count - ', events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock}\n`, - ); - - const eventTable = new Table(); - - eventTable.push( - [{ colSpan: 2, content: 'Governance Events', hAlign: 'center' }], - ['Network', `${this.netId} chain`], - ['Events', `${events.length} events`], - [{ colSpan: 2, content: 'Latest events' }], - ...events - .slice(events.length - 10) - .reverse() - .map(({ blockNumber }, index) => { - const eventIndex = events.length - index; - - return [eventIndex, blockNumber]; - }), - ); - - console.log(eventTable.toString() + '\n'); - - if (this.userDirectory) { - await saveUserFile({ - fileName: instanceName + '.json', - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + '\n', - }); - } - } -} - -export type NodeRegistryServiceConstructor = BaseRegistryServiceConstructor & { - cacheDirectory?: string; - userDirectory?: string; -}; - -export class NodeRegistryService extends BaseRegistryService { - cacheDirectory?: string; - userDirectory?: string; - - constructor({ - netId, - provider, - graphApi, - subgraphName, - RelayerRegistry, - deployedBlock, - fetchDataOptions, - cacheDirectory, - userDirectory, - }: NodeRegistryServiceConstructor) { - super({ - netId, - provider, - graphApi, - subgraphName, - RelayerRegistry, - deployedBlock, - fetchDataOptions, - }); - - this.cacheDirectory = cacheDirectory; - this.userDirectory = userDirectory; - } - - updateEventProgress({ type, fromBlock, toBlock, count }: Parameters[0]) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - - if (count) { - console.log(`downloaded ${type} events count - ${count}`); - console.log('____________________________________________'); - console.log(`Fetched ${type} events from ${fromBlock} to ${toBlock}\n`); - } - } - } - - updateGraphProgress({ type, fromBlock, toBlock, count }: Parameters[0]) { - if (toBlock) { - console.log(`fromBlock - ${fromBlock}`); - console.log(`toBlock - ${toBlock}`); - - if (count) { - console.log(`downloaded ${type} events from graph node count - ${count}`); - console.log('____________________________________________'); - console.log(`Fetched ${type} events from graph node ${fromBlock} to ${toBlock}\n`); - } - } - } - - async getEventsFromDB() { - if (!this.userDirectory) { - console.log(`Updating events for ${this.netId} chain registry events\n`); - console.log(`savedEvents count - ${0}`); - console.log(`savedEvents lastBlock - ${this.deployedBlock}\n`); - - return { - events: [], - lastBlock: this.deployedBlock, - }; - } - - const savedEvents = await loadSavedEvents({ - name: this.getInstanceName(), - userDirectory: this.userDirectory, - deployedBlock: this.deployedBlock, - }); - - console.log(`Updating events for ${this.netId} chain registry events\n`); - console.log(`savedEvents count - ${savedEvents.events.length}`); - console.log(`savedEvents lastBlock - ${savedEvents.lastBlock}\n`); - - return savedEvents; - } - - async getEventsFromCache() { - if (!this.cacheDirectory) { - console.log(`cachedEvents count - ${0}`); - console.log(`cachedEvents lastBlock - ${this.deployedBlock}\n`); - - return { - events: [], - lastBlock: this.deployedBlock, - }; - } - - const cachedEvents = await loadCachedEvents({ - name: this.getInstanceName(), - cacheDirectory: this.cacheDirectory, - deployedBlock: this.deployedBlock, - }); - - console.log(`cachedEvents count - ${cachedEvents.events.length}`); - console.log(`cachedEvents lastBlock - ${cachedEvents.lastBlock}\n`); - - return cachedEvents; - } - - async saveEvents({ events, lastBlock }: BaseEvents) { - const instanceName = this.getInstanceName(); - - console.log('\ntotalEvents count - ', events.length); - console.log( - `totalEvents lastBlock - ${events[events.length - 1] ? events[events.length - 1].blockNumber : lastBlock}\n`, - ); - - const eventTable = new Table(); - - eventTable.push( - [{ colSpan: 2, content: 'Registered Relayers', hAlign: 'center' }], - ['Network', `${this.netId} chain`], - ['Events', `${events.length} events`], - [{ colSpan: 2, content: 'Latest events' }], - ...events - .slice(events.length - 10) - .reverse() - .map(({ blockNumber }, index) => { - const eventIndex = events.length - index; - - return [eventIndex, blockNumber]; - }), - ); - - console.log(eventTable.toString() + '\n'); - - if (this.userDirectory) { - await saveUserFile({ - fileName: instanceName + '.json', - userDirectory: this.userDirectory, - dataString: JSON.stringify(events, null, 2) + '\n', - }); - } - } -} diff --git a/src/index.ts b/src/index.ts index 67793bd..959e645 100644 --- a/src/index.ts +++ b/src/index.ts @@ -3,7 +3,6 @@ export * from './graphql'; export * from './schemas'; export * from './typechain'; export * from './batch'; -export * from './data'; export * from './deposits'; export * from './encryptedNotes'; export * from './fees'; @@ -11,12 +10,10 @@ export * from './merkleTree'; export * from './mimc'; export * from './multicall'; export * from './networkConfig'; -export * from './parser'; export * from './pedersen'; export * from './prices'; export * from './providers'; export * from './relayerClient'; export * from './tokens'; -export * from './treeCache'; export * from './utils'; export * from './websnark'; diff --git a/src/parser.ts b/src/parser.ts deleted file mode 100644 index d54d65a..0000000 --- a/src/parser.ts +++ /dev/null @@ -1,77 +0,0 @@ -import { InvalidArgumentError } from 'commander'; -import { computeAddress, getAddress, Mnemonic } from 'ethers'; -import { validateUrl } from './utils'; - -export function parseNumber(value?: string | number): number { - if (!value || isNaN(Number(value))) { - throw new InvalidArgumentError('Invalid Number'); - } - return Number(value); -} - -export function parseUrl(value?: string): string { - if (!value || !validateUrl(value, ['http:', 'https:'])) { - throw new InvalidArgumentError('Invalid URL'); - } - return value; -} - -export function parseRelayer(value?: string): string { - if (!value || !(value.endsWith('.eth') || validateUrl(value, ['http:', 'https:']))) { - throw new InvalidArgumentError('Invalid Relayer ETH address or URL'); - } - return value; -} - -export function parseAddress(value?: string): string { - if (!value) { - throw new InvalidArgumentError('Invalid Address'); - } - try { - return getAddress(value); - } catch { - throw new InvalidArgumentError('Invalid Address'); - } -} - -export function parseMnemonic(value?: string): string { - if (!value) { - throw new InvalidArgumentError('Invalid Mnemonic'); - } - try { - Mnemonic.fromPhrase(value); - } catch { - throw new InvalidArgumentError('Invalid Mnemonic'); - } - return value; -} - -export function parseKey(value?: string): string { - if (!value) { - throw new InvalidArgumentError('Invalid Private Key'); - } - if (value.length === 64) { - value = '0x' + value; - } - try { - computeAddress(value); - } catch { - throw new InvalidArgumentError('Invalid Private Key'); - } - return value; -} - -/** - * Recovery key shouldn't have a 0x prefix (Also this is how the UI generates) - */ -export function parseRecoveryKey(value?: string): string { - if (!value) { - throw new InvalidArgumentError('Invalid Recovery Key'); - } - try { - computeAddress('0x' + value); - } catch { - throw new InvalidArgumentError('Invalid Recovery Key'); - } - return value; -} diff --git a/src/providers.ts b/src/providers.ts index 010a6cd..cecf4a3 100644 --- a/src/providers.ts +++ b/src/providers.ts @@ -1,9 +1,6 @@ import type { EventEmitter } from 'stream'; import type { RequestOptions } from 'http'; import crossFetch from 'cross-fetch'; -import { HttpProxyAgent } from 'http-proxy-agent'; -import { HttpsProxyAgent } from 'https-proxy-agent'; -import { SocksProxyAgent } from 'socks-proxy-agent'; import { FetchRequest, JsonRpcApiProvider, @@ -72,6 +69,12 @@ export function getHttpAgent({ torPort?: number; retry: number; }): NodeAgent | undefined { + /* eslint-disable @typescript-eslint/no-var-requires */ + const { HttpProxyAgent } = require('http-proxy-agent'); + const { HttpsProxyAgent } = require('https-proxy-agent'); + const { SocksProxyAgent } = require('socks-proxy-agent'); + /* eslint-enable @typescript-eslint/no-var-requires */ + if (torPort) { return new SocksProxyAgent(`socks5h://tor${retry}@127.0.0.1:${torPort}`); } @@ -518,7 +521,8 @@ export class TornadoWallet extends Wallet { { gasPriceBump, gasLimitBump, gasFailover, bumpNonce }: TornadoWalletOptions = {}, ) { super(key, provider); - this.gasPriceBump = gasPriceBump ?? 0; + // 10% bump from the recommended fee + this.gasPriceBump = gasPriceBump ?? 1000; // 30% bump from the recommended gaslimit this.gasLimitBump = gasLimitBump ?? 3000; this.gasFailover = gasFailover ?? false; @@ -552,7 +556,8 @@ export class TornadoVoidSigner extends VoidSigner { { gasPriceBump, gasLimitBump, gasFailover, bumpNonce }: TornadoWalletOptions = {}, ) { super(address, provider); - this.gasPriceBump = gasPriceBump ?? 0; + // 10% bump from the recommended fee + this.gasPriceBump = gasPriceBump ?? 1000; // 30% bump from the recommended gaslimit this.gasLimitBump = gasLimitBump ?? 3000; this.gasFailover = gasFailover ?? false; @@ -580,7 +585,8 @@ export class TornadoRpcSigner extends JsonRpcSigner { { gasPriceBump, gasLimitBump, gasFailover, bumpNonce }: TornadoWalletOptions = {}, ) { super(provider, address); - this.gasPriceBump = gasPriceBump ?? 0; + // 10% bump from the recommended fee + this.gasPriceBump = gasPriceBump ?? 1000; // 30% bump from the recommended gaslimit this.gasLimitBump = gasLimitBump ?? 3000; this.gasFailover = gasFailover ?? false; diff --git a/src/treeCache.ts b/src/treeCache.ts deleted file mode 100644 index bff46c2..0000000 --- a/src/treeCache.ts +++ /dev/null @@ -1,113 +0,0 @@ -/** - * Create tree cache file from node.js - * - * Only works for node.js, modified from https://github.com/tornadocash/tornado-classic-ui/blob/master/scripts/updateTree.js - */ -import { MerkleTree } from '@tornado/fixed-merkle-tree'; -import BloomFilter from 'bloomfilter.js'; -import { saveUserFile } from './data'; -import { DepositsEvents } from './events'; -import type { NetIdType } from './networkConfig'; - -export interface TreeCacheConstructor { - netId: NetIdType; - amount: string; - currency: string; - userDirectory: string; - PARTS_COUNT?: number; - LEAVES?: number; - zeroElement?: string; -} - -export interface treeMetadata { - blockNumber: number; - logIndex: number; - transactionHash: string; - timestamp: number; - from: string; - leafIndex: number; -} - -export class TreeCache { - netId: NetIdType; - amount: string; - currency: string; - userDirectory: string; - - PARTS_COUNT: number; - - constructor({ netId, amount, currency, userDirectory, PARTS_COUNT = 4 }: TreeCacheConstructor) { - this.netId = netId; - this.amount = amount; - this.currency = currency; - this.userDirectory = userDirectory; - - this.PARTS_COUNT = PARTS_COUNT; - } - - getInstanceName(): string { - return `deposits_${this.netId}_${this.currency}_${this.amount}`; - } - - async createTree(events: DepositsEvents[], tree: MerkleTree) { - const bloom = new BloomFilter(events.length); - - console.log(`Creating cached tree for ${this.getInstanceName()}\n`); - - // events indexed by commitment - const eventsData = events.reduce( - (acc, { leafIndex, commitment, ...rest }, i) => { - if (leafIndex !== i) { - throw new Error(`leafIndex (${leafIndex}) !== i (${i})`); - } - - acc[commitment] = { ...rest, leafIndex }; - - return acc; - }, - {} as { [key in string]: treeMetadata }, - ); - - const slices = tree.getTreeSlices(this.PARTS_COUNT); - - await Promise.all( - slices.map(async (slice, index) => { - const metadata = slice.elements.reduce((acc, curr) => { - if (index < this.PARTS_COUNT - 1) { - bloom.add(curr); - } - acc.push(eventsData[curr]); - return acc; - }, [] as treeMetadata[]); - - const dataString = - JSON.stringify( - { - ...slice, - metadata, - }, - null, - 2, - ) + '\n'; - - const fileName = `${this.getInstanceName()}_slice${index + 1}.json`; - - await saveUserFile({ - fileName, - userDirectory: this.userDirectory, - dataString, - }); - }), - ); - - const dataString = bloom.serialize() + '\n'; - - const fileName = `${this.getInstanceName()}_bloom.json`; - - await saveUserFile({ - fileName, - userDirectory: this.userDirectory, - dataString, - }); - } -} diff --git a/src/types/bloomfilter.js.d.ts b/src/types/bloomfilter.js.d.ts deleted file mode 100644 index 925515d..0000000 --- a/src/types/bloomfilter.js.d.ts +++ /dev/null @@ -1,25 +0,0 @@ -/* eslint-disable @typescript-eslint/no-explicit-any */ -declare module 'bloomfilter.js' { - export default class BloomFilter { - m: number; - k: number; - size: number; - bitview: any; - - constructor(n: number, false_postive_tolerance?: number); - - calculateHash(x: number, m: number, i: number): number; - - test(data: any): boolean; - - add(data: any): void; - - bytelength(): number; - - view(): Uint8Array; - - serialize(): string; - - deserialize(serialized: string): BloomFilter; - } -} diff --git a/webpack.config.js b/webpack.config.js index 6a148d6..07d7e8e 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -14,14 +14,10 @@ const esbuildLoader = { const commonAlias = { fs: false, - 'fs/promises': false, 'path': false, 'url': false, 'worker_threads': false, 'fflate': 'fflate/browser', - '@colors/colors': false, - 'cli-table3': false, - 'commander': false, 'http-proxy-agent': false, 'https-proxy-agent': false, 'socks-proxy-agent': false, diff --git a/yarn.lock b/yarn.lock index 8f98f3e..3103d8d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -35,11 +35,6 @@ js-tokens "^4.0.0" picocolors "^1.0.0" -"@colors/colors@1.5.0": - version "1.5.0" - resolved "https://registry.yarnpkg.com/@colors/colors/-/colors-1.5.0.tgz#bb504579c1cae923e6576a4f5da43d25f97bdbd9" - integrity sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ== - "@discoveryjs/json-ext@^0.5.0": version "0.5.7" resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70" @@ -1268,13 +1263,6 @@ aes-js@4.0.0-beta.5: resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-4.0.0-beta.5.tgz#8d2452c52adedebc3a3e28465d858c11ca315873" integrity sha512-G965FqalsNyrPqgEGON7nIx1e/OVENSgiEIzyC63haUMuvNnwIgIjMs52hlTCKhkBny7A2ORNlfY9Zu+jmGk1Q== -agent-base@^7.0.2, agent-base@^7.1.0, agent-base@^7.1.1: - version "7.1.1" - resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-7.1.1.tgz#bdbded7dfb096b751a2a087eeeb9664725b2e317" - integrity sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA== - dependencies: - debug "^4.3.4" - ajv-keywords@^3.5.2: version "3.5.2" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" @@ -1546,11 +1534,6 @@ blakejs@^1.1.0: resolved "https://registry.yarnpkg.com/blakejs/-/blakejs-1.2.1.tgz#5057e4206eadb4a97f7c0b6e197a505042fc3814" integrity sha512-QXUSXI3QVc/gJME0dBpXrag1kbzOqCjCX8/b54ntNyW6sjtoqxqRk3LTmXzaJoh71zMsDCjM+47jS7XiwN/+fQ== -bloomfilter.js@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/bloomfilter.js/-/bloomfilter.js-1.0.2.tgz#63449e4b055dc08e5e4db75367d48cc0a395e704" - integrity sha512-x3SG+7/NlT5m6hHy1GCerNoWm38kxWZeUIsBs1LaMwnTLM0hidmGalhAfXH07DtP3s9QAp+JAQagpgVIxtUl9g== - bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.11.9: version "4.12.0" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" @@ -1786,15 +1769,6 @@ cli-cursor@^2.1.0: dependencies: restore-cursor "^2.0.0" -cli-table3@^0.6.4: - version "0.6.4" - resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.6.4.tgz#d1c536b8a3f2e7bec58f67ac9e5769b1b30088b0" - integrity sha512-Lm3L0p+/npIQWNIiyF/nAn7T5dnOwR3xNTHXYEBFBFVPXzCVNZ5lqEC/1eo/EVfpDsQ1I+TX4ORPQgp+UI0CRw== - dependencies: - string-width "^4.2.0" - optionalDependencies: - "@colors/colors" "1.5.0" - cli-width@^2.0.0: version "2.2.1" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48" @@ -1884,11 +1858,6 @@ commander@^10.0.1: resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.1.tgz#881ee46b4f77d1c1dccc5823433aa39b022cbe06" integrity sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug== -commander@^12.0.0: - version "12.0.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-12.0.0.tgz#b929db6df8546080adfd004ab215ed48cf6f2592" - integrity sha512-MwVNWlYjDTtOjX5PiD7o5pK0UrFU/OYgcJfjjK4RaHZETNtjJqrZa9Y9ds88+A+f+d5lv+561eZ+yCKoS3gbAA== - commander@^2.20.0: version "2.20.3" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" @@ -2026,13 +1995,6 @@ data-view-byte-offset@^1.0.0: es-errors "^1.3.0" is-data-view "^1.0.1" -debug@4, debug@^4.0.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== - dependencies: - ms "2.1.2" - debug@^3.2.7: version "3.2.7" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" @@ -2040,6 +2002,13 @@ debug@^3.2.7: dependencies: ms "^2.1.1" +debug@^4.0.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + decamelize@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" @@ -2169,11 +2138,6 @@ emoji-regex@^7.0.1: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== -emoji-regex@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" - integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== - emojis-list@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" @@ -3142,27 +3106,11 @@ hmac-drbg@^1.0.1: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.1" -http-proxy-agent@^7.0.2: - version "7.0.2" - resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz#9a8b1f246866c028509486585f62b8f2c18c270e" - integrity sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig== - dependencies: - agent-base "^7.1.0" - debug "^4.3.4" - https-browserify@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73" integrity sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg== -https-proxy-agent@^7.0.4: - version "7.0.4" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-7.0.4.tgz#8e97b841a029ad8ddc8731f26595bad868cb4168" - integrity sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg== - dependencies: - agent-base "^7.0.2" - debug "4" - iconv-lite@^0.4.24: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" @@ -3257,14 +3205,6 @@ invert-kv@^2.0.0: resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-2.0.0.tgz#7393f5afa59ec9ff5f67a27620d11c226e3eec02" integrity sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA== -ip-address@^9.0.5: - version "9.0.5" - resolved "https://registry.yarnpkg.com/ip-address/-/ip-address-9.0.5.tgz#117a960819b08780c3bd1f14ef3c1cc1d3f3ea5a" - integrity sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g== - dependencies: - jsbn "1.1.0" - sprintf-js "^1.1.3" - is-arguments@^1.0.4: version "1.1.1" resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" @@ -3346,11 +3286,6 @@ is-fullwidth-code-point@^2.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" integrity sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w== -is-fullwidth-code-point@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" - integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== - is-generator-function@^1.0.7: version "1.0.10" resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.0.10.tgz#f1558baf1ac17e0deea7c0415c438351ff2b3c72" @@ -3516,11 +3451,6 @@ js-yaml@^4.1.0: dependencies: argparse "^2.0.1" -jsbn@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-1.1.0.tgz#b01307cb29b618a1ed26ec79e911f803c4da0040" - integrity sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A== - json-buffer@3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" @@ -3808,11 +3738,6 @@ mkdirp@^1.0.4: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -moment@^2.30.1: - version "2.30.1" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.30.1.tgz#f8c91c07b7a786e30c59926df530b4eac96974ae" - integrity sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how== - ms@2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" @@ -4667,28 +4592,6 @@ slice-ansi@^2.1.0: astral-regex "^1.0.0" is-fullwidth-code-point "^2.0.0" -smart-buffer@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" - integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== - -socks-proxy-agent@^8.0.3: - version "8.0.3" - resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-8.0.3.tgz#6b2da3d77364fde6292e810b496cb70440b9b89d" - integrity sha512-VNegTZKhuGq5vSD6XNKlbqWhyt/40CgoEw8XxD6dhnm8Jq9IEa3nIa4HwnM8XOqU0CdB0BwWVXusqiFXfHB3+A== - dependencies: - agent-base "^7.1.1" - debug "^4.3.4" - socks "^2.7.1" - -socks@^2.7.1: - version "2.8.1" - resolved "https://registry.yarnpkg.com/socks/-/socks-2.8.1.tgz#22c7d9dd7882649043cba0eafb49ae144e3457af" - integrity sha512-B6w7tkwNid7ToxjZ08rQMT8M9BJAf8DKx8Ft4NivzH0zBUfd6jldGcisJn/RLgxcX3FPNDdNQCUEMMT79b+oCQ== - dependencies: - ip-address "^9.0.5" - smart-buffer "^4.2.0" - source-list-map@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" @@ -4707,11 +4610,6 @@ source-map@^0.6.0, source-map@~0.6.1: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -sprintf-js@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.3.tgz#4914b903a2f8b685d17fdf78a70e917e872e444a" - integrity sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA== - sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" @@ -4766,15 +4664,6 @@ string-width@^3.0.0: is-fullwidth-code-point "^2.0.0" strip-ansi "^5.1.0" -string-width@^4.2.0: - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - string.prototype.trim@^1.2.9: version "1.2.9" resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz#b6fa326d72d2c78b6df02f7759c73f8f6274faa4"