diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 106c9ee5b0..32328d0fd2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -21,7 +21,7 @@ jobs: strategy: fail-fast: false matrix: - node-version: [18.x, 20.x, 22.x] + node-version: [18.x, 20.x, 22.x, 24.x] steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 @@ -94,10 +94,10 @@ jobs: with: ref: ${{ github.event.pull_request.head.sha }} - - name: Setup node 18 + - name: Setup node 24 uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 with: - node-version: 18 + node-version: 24 - name: restore lerna dependencies id: lerna-cache @@ -106,7 +106,7 @@ jobs: path: | node_modules modules/*/node_modules - key: ${{ runner.os }}-node18-${{ hashFiles('yarn.lock') }}-${{ hashFiles('tsconfig.packages.json') }}-${{ hashFiles('package.json') }} + key: ${{ runner.os }}-node24-${{ hashFiles('yarn.lock') }}-${{ hashFiles('tsconfig.packages.json') }}-${{ hashFiles('package.json') }} - name: Install Packages if: steps.lerna-cache.outputs.cache-hit != 'true' || contains( github.event.pull_request.labels.*.name, 'SKIP_CACHE') @@ -142,10 +142,10 @@ jobs: with: ref: ${{ github.event.pull_request.head.sha }} - - name: Setup node 18 + - name: Setup node 24 uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 with: - node-version: 18 # this just needs to pass our lock file requirement for compilation + node-version: 24 # this just needs to pass our lock file requirement for compilation - name: Build Info run: | diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index f62e6776b5..0afb7813ba 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -23,7 +23,7 @@ jobs: - name: Setup Node uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 with: - node-version: 18 + node-version: 24 - name: Install BitGoJS run: yarn install --with-frozen-lockfile diff --git a/.nvmrc b/.nvmrc index 5b540673a8..3d487129fd 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -22.16.0 +v24.3.0 diff --git a/DEVELOPERS.md b/DEVELOPERS.md index f48860b8fc..aed3b80fbf 100644 --- a/DEVELOPERS.md +++ b/DEVELOPERS.md @@ -180,7 +180,7 @@ Engines should be set to the following: ```json { "engines": { - "node": ">=18 <23", + "node": ">=18 < 25", "npm": ">=3.10.10" } } diff --git a/Dockerfile b/Dockerfile index e38cdb5c7d..958bb7d287 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,7 +2,7 @@ # An elaborated scheme to build all the dependencies of all packages first in a cached layer # https://stackoverflow.com/a/63142468/134409 # https://medium.com/@emilefugulin/building-a-sane-docker-image-for-typescript-lerna-and-prisma-2-76d8ff9926e4 -FROM node:22.16.0-bookworm-slim@sha256:2f3571619daafc6b53232ebf2fcc0817c1e64795e92de317c1684a915d13f1a5 AS filter-packages-json +FROM node:24.3.0-bookworm-slim@sha256:dd773e49e639dafc0b425bf9ac1d74705086b9aebac960706ab146c5dfa0b32d AS filter-packages-json LABEL maintainer="Developer Relations " COPY package.json yarn.lock lerna.json ./ @@ -12,7 +12,7 @@ COPY modules ./modules # delete all the non package.json files under `./modules/` RUN find modules \! -name "package.json" -mindepth 2 -maxdepth 2 -print | xargs rm -rf -FROM node:22.16.0-bookworm-slim@sha256:2f3571619daafc6b53232ebf2fcc0817c1e64795e92de317c1684a915d13f1a5 AS builder +FROM node:24.3.0-bookworm-slim@sha256:dd773e49e639dafc0b425bf9ac1d74705086b9aebac960706ab146c5dfa0b32d AS builder RUN apt-get update && apt-get install -y git python3 make g++ libtool autoconf automake WORKDIR /tmp/bitgo COPY --from=filter-packages-json /tmp/bitgo . @@ -31,7 +31,7 @@ RUN \ rm -r modules/*/src -FROM node:22.16.0-bookworm-slim@sha256:2f3571619daafc6b53232ebf2fcc0817c1e64795e92de317c1684a915d13f1a5 +FROM node:24.3.0-bookworm-slim@sha256:dd773e49e639dafc0b425bf9ac1d74705086b9aebac960706ab146c5dfa0b32d RUN apt-get update && apt-get install -y tini # copy the root node_modules to the bitgo-express parent node_modules COPY --from=builder /tmp/bitgo/node_modules /var/node_modules/ diff --git a/README.md b/README.md index 7dfd0d427f..17624d56be 100644 --- a/README.md +++ b/README.md @@ -51,7 +51,7 @@ BitGoJS currently provides support for the following Node versions per package.j ``` "engines": { - "node": ">=18 <23", + "node": ">=18 <24", "npm": ">=3.10.10" } ``` @@ -62,6 +62,8 @@ As each Node LTS version reaches its end-of-life we will exclude that version fr - `18` - `20` +- `22` +- `24` JavaScript package managers should allow you to install this package with any version of Node, with, at most, a warning if your version of Node does not fall within the range specified by our node engines property. If you encounter issues installing this package on a supported version of Node, please report the issue to us. diff --git a/examples/js/sui/custom-tx/.nvmrc b/examples/js/sui/custom-tx/.nvmrc index 5b540673a8..3d487129fd 100644 --- a/examples/js/sui/custom-tx/.nvmrc +++ b/examples/js/sui/custom-tx/.nvmrc @@ -1 +1 @@ -22.16.0 +v24.3.0 diff --git a/examples/ts/proxy/.nvmrc b/examples/ts/proxy/.nvmrc index 5b540673a8..3d487129fd 100644 --- a/examples/ts/proxy/.nvmrc +++ b/examples/ts/proxy/.nvmrc @@ -1 +1 @@ -22.16.0 +v24.3.0 diff --git a/examples/ts/tss-recovery/.nvmrc b/examples/ts/tss-recovery/.nvmrc index 5b540673a8..3d487129fd 100644 --- a/examples/ts/tss-recovery/.nvmrc +++ b/examples/ts/tss-recovery/.nvmrc @@ -1 +1 @@ -22.16.0 +v24.3.0 diff --git a/examples/ts/tss-smc/.nvmrc b/examples/ts/tss-smc/.nvmrc index 5b540673a8..3d487129fd 100644 --- a/examples/ts/tss-smc/.nvmrc +++ b/examples/ts/tss-smc/.nvmrc @@ -1 +1 @@ -22.16.0 +v24.3.0 diff --git a/modules/abstract-cosmos/package.json b/modules/abstract-cosmos/package.json index 40a6ce0b13..f182f3adb5 100644 --- a/modules/abstract-cosmos/package.json +++ b/modules/abstract-cosmos/package.json @@ -16,7 +16,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/abstract-eth/package.json b/modules/abstract-eth/package.json index 39971b2305..01258f835a 100644 --- a/modules/abstract-eth/package.json +++ b/modules/abstract-eth/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/abstract-eth/test/unit/token.ts b/modules/abstract-eth/test/unit/token.ts index ddab7fdf74..16eeb36894 100644 --- a/modules/abstract-eth/test/unit/token.ts +++ b/modules/abstract-eth/test/unit/token.ts @@ -1,6 +1,10 @@ -import { TestBitGo, TestBitGoAPI } from '@bitgo/sdk-test'; +import * as sdkTest from '@bitgo/sdk-test'; +import type { TestBitGoAPI } from '@bitgo/sdk-test'; + import { BitGoAPI } from '@bitgo/sdk-api'; +const { TestBitGo } = sdkTest; + export function runTokenTestInitialization( currentCoinToken, coinName: string, diff --git a/modules/abstract-lightning/package.json b/modules/abstract-lightning/package.json index 093965234e..e7d8536176 100644 --- a/modules/abstract-lightning/package.json +++ b/modules/abstract-lightning/package.json @@ -17,7 +17,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/abstract-substrate/package.json b/modules/abstract-substrate/package.json index b0260fdbf3..4258a84735 100644 --- a/modules/abstract-substrate/package.json +++ b/modules/abstract-substrate/package.json @@ -16,7 +16,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=14 <23" + "node": ">=14 < 25" }, "repository": { "type": "git", diff --git a/modules/abstract-utxo/package.json b/modules/abstract-utxo/package.json index dd6d072dc7..cf2da66954 100644 --- a/modules/abstract-utxo/package.json +++ b/modules/abstract-utxo/package.json @@ -20,7 +20,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/account-lib/package.json b/modules/account-lib/package.json index 5527b98cec..7869d75467 100644 --- a/modules/account-lib/package.json +++ b/modules/account-lib/package.json @@ -24,7 +24,7 @@ "author": "BitGo SDK Team ", "license": "ISC", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "dependencies": { "@bitgo/sdk-coin-ada": "^4.12.1", diff --git a/modules/account-lib/test/unit/fixtures.ts b/modules/account-lib/test/unit/fixtures.ts index 7c9c999f0b..bf3093b41c 100644 --- a/modules/account-lib/test/unit/fixtures.ts +++ b/modules/account-lib/test/unit/fixtures.ts @@ -1,26 +1,22 @@ import { BaseCoin } from '@bitgo/statics'; -import { - BaseMessage, - BaseMessageBuilder, - BaseMessageBuilderFactory, - IMessage, - IMessageBuilder, - MessageOptions, - MessageStandardType, -} from '@bitgo/sdk-core'; +import * as sdkCore from '@bitgo/sdk-core'; +import type { IMessage, IMessageBuilder, MessageOptions } from '@bitgo/sdk-core'; +const { BaseMessage, BaseMessageBuilder, BaseMessageBuilderFactory, MessageStandardType } = sdkCore; + +type MessageStandardTypeValue = (typeof MessageStandardType)[keyof typeof MessageStandardType]; export class MockMessageBuilderFactory extends BaseMessageBuilderFactory { constructor(coinConfig: Readonly) { super(coinConfig); } - getMessageBuilder(type: MessageStandardType): IMessageBuilder { + getMessageBuilder(type: MessageStandardTypeValue): IMessageBuilder { return new MockMessageBuilder(this.coinConfig, type); } } export class MockMessageBuilder extends BaseMessageBuilder { - constructor(coinConfig: Readonly, type: MessageStandardType = MessageStandardType.UNKNOWN) { + constructor(coinConfig: Readonly, type: MessageStandardTypeValue = MessageStandardType.UNKNOWN) { super(coinConfig, type); } diff --git a/modules/babylonlabs-io-btc-staking-ts/package.json b/modules/babylonlabs-io-btc-staking-ts/package.json index ef89a0bfc4..0fb32fb990 100644 --- a/modules/babylonlabs-io-btc-staking-ts/package.json +++ b/modules/babylonlabs-io-btc-staking-ts/package.json @@ -27,7 +27,7 @@ "btc-staking" ], "engines": { - "node": ">=18 < 23" + "node": ">=18 < 25" }, "author": "Babylon Labs Ltd.", "license": "SEE LICENSE IN LICENSE", diff --git a/modules/bitgo/package.json b/modules/bitgo/package.json index 5ad1c11779..974bb23962 100644 --- a/modules/bitgo/package.json +++ b/modules/bitgo/package.json @@ -16,7 +16,7 @@ }, "license": "Apache-2.0", "engines": { - "node": ">=18 <23", + "node": ">=18 < 25", "npm": ">=3.10.10" }, "scripts": { @@ -26,14 +26,14 @@ "webpack-dev": "cross-env NODE_ENV=development webpack", "webpack-prod": "NODE_OPTIONS=--max-old-space-size=4096 cross-env NODE_ENV=production webpack", "test": "npm run coverage", - "unit-test": "mocha 'test/v2/unit/**/*.ts' 'test/unit/**/*.ts'", + "unit-test": "mocha 'dist/test/v2/unit/**/*.js' 'dist/test/unit/**/*.js'", "coverage": "nyc -- npm run unit-test", "integration-test": "nyc -- mocha \"test/v2/integration/**/*.ts\"", "browser-test": "karma start karma.conf.js", "lint": "eslint --quiet .", "audit": "if [ \"$(npm --version | cut -d. -f1)\" -ge \"6\" ]; then npm audit; else echo \"npm >= 6 required to perform audit. skipping...\"; fi", "clean": "rm -r dist/*", - "build": "yarn tsc --build --incremental --verbose .", + "build": "yarn tsc --build --incremental --verbose . && cpx \"test/v2/unit/internal/tssUtils/ecdsaMPCv2/fixtures/**/*\" dist/test/v2/unit/internal/tssUtils/ecdsaMPCv2/fixtures", "prepare": "npm run build", "prepublishOnly": "npm run compile", "upload-artifacts": "node scripts/upload-test-reports.js", @@ -145,6 +145,7 @@ "@types/jasmine": "^3.5.12", "@types/lodash": "^4.14.121", "aws-sdk": "^2.1155.0", + "cpx": "^1.5.0", "io-ts-types": "^0.5.16", "karma": "^5.1.1", "karma-chrome-launcher": "^3.1.0", diff --git a/modules/bitgo/test/ecdh.ts b/modules/bitgo/test/ecdh.ts index 295dd6be15..b1fdbc80de 100644 --- a/modules/bitgo/test/ecdh.ts +++ b/modules/bitgo/test/ecdh.ts @@ -8,7 +8,7 @@ import * as utxolib from '@bitgo/utxo-lib'; import { getSharedSecret, signMessageWithDerivedEcdhKey, verifyEcdhSignature } from '@bitgo/sdk-core'; import { TestBitGo } from '@bitgo/sdk-test'; -import * as assert from 'assert'; +import assert from 'assert'; import { BitGo } from '../src/bitgo'; describe('ECDH utils', () => { diff --git a/modules/bitgo/test/integration/wallets.ts b/modules/bitgo/test/integration/wallets.ts index a0ad95aca4..adc725b4fa 100644 --- a/modules/bitgo/test/integration/wallets.ts +++ b/modules/bitgo/test/integration/wallets.ts @@ -14,7 +14,7 @@ const TestBitGo = require('../lib/test_bitgo'); import * as utxolib from '@bitgo/utxo-lib'; import { getAddressP2PKH, getNetwork } from '../../src/bitcoin'; import { common } from '@bitgo/sdk-core'; -import * as nock from 'nock'; +import nock from 'nock'; const TEST_WALLET_LABEL = 'wallet management test'; diff --git a/modules/bitgo/test/unit/bip32path.ts b/modules/bitgo/test/unit/bip32path.ts index 87cd3657a3..e433b65c2c 100644 --- a/modules/bitgo/test/unit/bip32path.ts +++ b/modules/bitgo/test/unit/bip32path.ts @@ -2,7 +2,7 @@ * @prettier */ import 'should'; -import { bip32, BIP32Interface } from '@bitgo/utxo-lib'; +import { bip32, type BIP32Interface } from '@bitgo/utxo-lib'; import { sanitizeLegacyPath, bitcoin } from '@bitgo/sdk-core'; import { getSeed } from '@bitgo/sdk-test'; const { HDNode, hdPath } = bitcoin; diff --git a/modules/bitgo/test/unit/bitgo.ts b/modules/bitgo/test/unit/bitgo.ts index 02c44b9230..a67ee4d7e2 100644 --- a/modules/bitgo/test/unit/bitgo.ts +++ b/modules/bitgo/test/unit/bitgo.ts @@ -3,9 +3,9 @@ // import * as crypto from 'crypto'; -import * as nock from 'nock'; +import nock from 'nock'; import * as should from 'should'; -import assert = require('assert'); +import assert from 'assert'; import { common, generateGPGKeyPair } from '@bitgo/sdk-core'; import { bip32, ECPair } from '@bitgo/utxo-lib'; diff --git a/modules/bitgo/test/unit/decryptKeychain.ts b/modules/bitgo/test/unit/decryptKeychain.ts index 976ae2b632..f00e4375fd 100644 --- a/modules/bitgo/test/unit/decryptKeychain.ts +++ b/modules/bitgo/test/unit/decryptKeychain.ts @@ -1,5 +1,5 @@ import 'should'; -import { decryptKeychainPrivateKey, OptionalKeychainEncryptedKey } from '@bitgo/sdk-core'; +import { decryptKeychainPrivateKey, type OptionalKeychainEncryptedKey } from '@bitgo/sdk-core'; import { BitGoAPI } from '@bitgo/sdk-api'; describe('decryptKeychainPrivateKey', () => { diff --git a/modules/bitgo/test/unit/keychains.ts b/modules/bitgo/test/unit/keychains.ts index 9f39f423a1..11fb77b859 100644 --- a/modules/bitgo/test/unit/keychains.ts +++ b/modules/bitgo/test/unit/keychains.ts @@ -3,7 +3,7 @@ // import * as _ from 'lodash'; -import * as nock from 'nock'; +import nock from 'nock'; import 'should'; import { common } from '@bitgo/sdk-core'; diff --git a/modules/bitgo/test/v2/integration/coins/eth.ts b/modules/bitgo/test/v2/integration/coins/eth.ts index 93d73665da..d76bf9da29 100644 --- a/modules/bitgo/test/v2/integration/coins/eth.ts +++ b/modules/bitgo/test/v2/integration/coins/eth.ts @@ -2,7 +2,7 @@ import * as should from 'should'; import 'should-http'; import { TestBitGo } from '../../../lib/test_bitgo'; -import * as nock from 'nock'; +import nock from 'nock'; nock.restore(); describe('ETH:', function () { diff --git a/modules/bitgo/test/v2/integration/coins/xlm.ts b/modules/bitgo/test/v2/integration/coins/xlm.ts index c7a3d45426..f10f429a87 100644 --- a/modules/bitgo/test/v2/integration/coins/xlm.ts +++ b/modules/bitgo/test/v2/integration/coins/xlm.ts @@ -4,7 +4,7 @@ import { BaseCoin } from '../../../../src/v2'; import { TestBitGo } from '../../../lib/test_bitgo'; -import * as nock from 'nock'; +import nock from 'nock'; describe('XLM:', function () { let bitgo: typeof TestBitGo; diff --git a/modules/bitgo/test/v2/integration/wallet.ts b/modules/bitgo/test/v2/integration/wallet.ts index 0902eda89f..7f360cac13 100644 --- a/modules/bitgo/test/v2/integration/wallet.ts +++ b/modules/bitgo/test/v2/integration/wallet.ts @@ -4,7 +4,7 @@ import * as should from 'should'; import * as _ from 'lodash'; -import * as nock from 'nock'; +import nock from 'nock'; import { TestBitGo } from '../../lib/test_bitgo'; diff --git a/modules/bitgo/test/v2/lib/recovery-nocks.ts b/modules/bitgo/test/v2/lib/recovery-nocks.ts index 10c00c9f00..6d9c46ddb9 100644 --- a/modules/bitgo/test/v2/lib/recovery-nocks.ts +++ b/modules/bitgo/test/v2/lib/recovery-nocks.ts @@ -1,7 +1,7 @@ /** * @prettier */ -import * as nock from 'nock'; +import nock from 'nock'; import { Environments } from '@bitgo/sdk-core'; module.exports.nockXrpRecovery = function nockXrpRecovery() { diff --git a/modules/bitgo/test/v2/unit/PrebuildAndSign.ts b/modules/bitgo/test/v2/unit/PrebuildAndSign.ts index f617c4e4fb..73181f0116 100644 --- a/modules/bitgo/test/v2/unit/PrebuildAndSign.ts +++ b/modules/bitgo/test/v2/unit/PrebuildAndSign.ts @@ -1,5 +1,5 @@ import * as sinon from 'sinon'; -import * as nock from 'nock'; +import nock from 'nock'; import { Environments, Wallet } from '@bitgo/sdk-core'; import { TestableBG, TestBitGo } from '@bitgo/sdk-test'; diff --git a/modules/bitgo/test/v2/unit/accountConsolidations.ts b/modules/bitgo/test/v2/unit/accountConsolidations.ts index 1c85ba3303..fda55f8770 100644 --- a/modules/bitgo/test/v2/unit/accountConsolidations.ts +++ b/modules/bitgo/test/v2/unit/accountConsolidations.ts @@ -6,13 +6,13 @@ import * as sinon from 'sinon'; require('should-sinon'); import '../lib/asserts'; -import * as nock from 'nock'; +import nock from 'nock'; import { common, Wallet } from '@bitgo/sdk-core'; import { TestBitGo } from '@bitgo/sdk-test'; import { BitGo } from '../../../src/bitgo'; -const algoFixtures = require('../../../../sdk-coin-algo/test/fixtures/algo'); +const algoFixtures = require('../../../../../sdk-coin-algo/test/fixtures/algo'); nock.disableNetConnect(); diff --git a/modules/bitgo/test/v2/unit/ams/ams.ts b/modules/bitgo/test/v2/unit/ams/ams.ts index 62858e96ce..371803288c 100644 --- a/modules/bitgo/test/v2/unit/ams/ams.ts +++ b/modules/bitgo/test/v2/unit/ams/ams.ts @@ -1,5 +1,5 @@ import * as should from 'should'; -import * as nock from 'nock'; +import nock from 'nock'; import { Environments } from '@bitgo/sdk-core'; import { TestBitGo } from '@bitgo/sdk-test'; diff --git a/modules/bitgo/test/v2/unit/apiNocks.ts b/modules/bitgo/test/v2/unit/apiNocks.ts index 185f019c95..7dc3952170 100644 --- a/modules/bitgo/test/v2/unit/apiNocks.ts +++ b/modules/bitgo/test/v2/unit/apiNocks.ts @@ -1,4 +1,4 @@ -import * as nock from 'nock'; +import nock from 'nock'; export async function nockGetSigningKey(params: { userId: string; diff --git a/modules/bitgo/test/v2/unit/auth.ts b/modules/bitgo/test/v2/unit/auth.ts index b9641e4521..c510fc83b2 100644 --- a/modules/bitgo/test/v2/unit/auth.ts +++ b/modules/bitgo/test/v2/unit/auth.ts @@ -1,4 +1,4 @@ -import * as nock from 'nock'; +import nock from 'nock'; import 'should'; import * as sinon from 'sinon'; diff --git a/modules/bitgo/test/v2/unit/baseCoin.ts b/modules/bitgo/test/v2/unit/baseCoin.ts index 41af4d1921..cb409f6995 100644 --- a/modules/bitgo/test/v2/unit/baseCoin.ts +++ b/modules/bitgo/test/v2/unit/baseCoin.ts @@ -3,7 +3,7 @@ // import 'should'; -import * as nock from 'nock'; +import nock from 'nock'; import { TestBitGo } from '@bitgo/sdk-test'; import { BitGo } from '../../../src/bitgo'; diff --git a/modules/bitgo/test/v2/unit/coins/utxo/address.ts b/modules/bitgo/test/v2/unit/coins/utxo/address.ts index 0dfbd58ab2..63f4da5e23 100644 --- a/modules/bitgo/test/v2/unit/coins/utxo/address.ts +++ b/modules/bitgo/test/v2/unit/coins/utxo/address.ts @@ -2,7 +2,7 @@ * @prettier */ import 'should'; -import * as assert from 'assert'; +import assert from 'assert'; import * as utxolib from '@bitgo/utxo-lib'; const { chainCodes } = utxolib.bitgo; diff --git a/modules/bitgo/test/v2/unit/coins/utxo/coins.ts b/modules/bitgo/test/v2/unit/coins/utxo/coins.ts index 349f028b47..549f220b44 100644 --- a/modules/bitgo/test/v2/unit/coins/utxo/coins.ts +++ b/modules/bitgo/test/v2/unit/coins/utxo/coins.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import * as utxolib from '@bitgo/utxo-lib'; import { getUtxoCoinForNetwork, utxoCoins } from './util'; diff --git a/modules/bitgo/test/v2/unit/coins/utxo/keySignatures.ts b/modules/bitgo/test/v2/unit/coins/utxo/keySignatures.ts index 4c03cc2dd6..75ad8973c9 100644 --- a/modules/bitgo/test/v2/unit/coins/utxo/keySignatures.ts +++ b/modules/bitgo/test/v2/unit/coins/utxo/keySignatures.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { AbstractUtxoCoin } from '@bitgo/abstract-utxo'; import { Keychain } from '@bitgo/sdk-core'; diff --git a/modules/bitgo/test/v2/unit/coins/utxo/keychains.ts b/modules/bitgo/test/v2/unit/coins/utxo/keychains.ts index 8908534c0b..44dda92fdb 100644 --- a/modules/bitgo/test/v2/unit/coins/utxo/keychains.ts +++ b/modules/bitgo/test/v2/unit/coins/utxo/keychains.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import 'should'; import { AbstractUtxoCoin } from '@bitgo/abstract-utxo'; import { utxoCoins } from './util'; diff --git a/modules/bitgo/test/v2/unit/coins/utxo/prebuildAndSign.ts b/modules/bitgo/test/v2/unit/coins/utxo/prebuildAndSign.ts index eb8057b673..b1cb93d8d1 100644 --- a/modules/bitgo/test/v2/unit/coins/utxo/prebuildAndSign.ts +++ b/modules/bitgo/test/v2/unit/coins/utxo/prebuildAndSign.ts @@ -1,11 +1,11 @@ /** * @prettier */ -import * as assert from 'assert'; +import assert from 'assert'; import { AbstractUtxoCoin, getReplayProtectionAddresses } from '@bitgo/abstract-utxo'; import * as utxolib from '@bitgo/utxo-lib'; -import * as nock from 'nock'; +import nock from 'nock'; import { encryptKeychain, getDefaultWalletKeys, getUtxoWallet, keychainsBase58, utxoCoins } from './util'; import { common, HalfSignedUtxoTransaction, Wallet } from '@bitgo/sdk-core'; diff --git a/modules/bitgo/test/v2/unit/coins/utxo/recovery/backupKeyRecovery.ts b/modules/bitgo/test/v2/unit/coins/utxo/recovery/backupKeyRecovery.ts index 9a8d48c625..3b229b00d1 100644 --- a/modules/bitgo/test/v2/unit/coins/utxo/recovery/backupKeyRecovery.ts +++ b/modules/bitgo/test/v2/unit/coins/utxo/recovery/backupKeyRecovery.ts @@ -4,7 +4,7 @@ import 'should'; import * as mocha from 'mocha'; import * as sinon from 'sinon'; -import * as nock from 'nock'; +import nock from 'nock'; import { BIP32Interface } from '@bitgo/utxo-lib'; import * as utxolib from '@bitgo/utxo-lib'; diff --git a/modules/bitgo/test/v2/unit/coins/utxo/recovery/crossChainRecovery.ts b/modules/bitgo/test/v2/unit/coins/utxo/recovery/crossChainRecovery.ts index cc516d23be..29a3e669ca 100644 --- a/modules/bitgo/test/v2/unit/coins/utxo/recovery/crossChainRecovery.ts +++ b/modules/bitgo/test/v2/unit/coins/utxo/recovery/crossChainRecovery.ts @@ -1,9 +1,9 @@ /** * @prettier */ -import * as assert from 'assert'; +import assert from 'assert'; import * as should from 'should'; -import * as nock from 'nock'; +import nock from 'nock'; import * as utxolib from '@bitgo/utxo-lib'; import { Triple } from '@bitgo/sdk-core'; import { diff --git a/modules/bitgo/test/v2/unit/coins/utxo/recovery/mock.ts b/modules/bitgo/test/v2/unit/coins/utxo/recovery/mock.ts index 507b26fa8e..4f5a4ca728 100644 --- a/modules/bitgo/test/v2/unit/coins/utxo/recovery/mock.ts +++ b/modules/bitgo/test/v2/unit/coins/utxo/recovery/mock.ts @@ -2,16 +2,18 @@ * @prettier */ import { bitgo } from '@bitgo/utxo-lib'; -import { AddressInfo, TransactionIO } from '@bitgo/blockapis'; -import { AbstractUtxoCoin, RecoveryProvider } from '@bitgo/abstract-utxo'; +import type { AddressInfo, TransactionIO } from '@bitgo/blockapis'; +import type { AbstractUtxoCoin, RecoveryProvider } from '@bitgo/abstract-utxo'; import * as utxolib from '@bitgo/utxo-lib'; import { Bch } from '@bitgo/sdk-coin-bch'; import { Bsv } from '@bitgo/sdk-coin-bsv'; type Unspent = bitgo.Unspent; export class MockRecoveryProvider implements RecoveryProvider { + public unspents: Unspent[]; private prevTxCache: Record = {}; - constructor(public unspents: Unspent[]) { + constructor(unspents: Unspent[]) { + this.unspents = unspents; this.unspents.forEach((u) => { if (utxolib.bitgo.isUnspentWithPrevTx(u)) { const { txid } = bitgo.parseOutputId(u.id); @@ -50,13 +52,15 @@ export class MockRecoveryProvider implements RecoveryProvider { } } export class MockCrossChainRecoveryProvider implements RecoveryProvider { + public coin: AbstractUtxoCoin; + public unspents: Unspent[]; + public tx: utxolib.bitgo.UtxoTransaction; private addressVersion: 'cashaddr' | 'base58'; private addressFormat: utxolib.addressFormat.AddressFormat; - constructor( - public coin: AbstractUtxoCoin, - public unspents: Unspent[], - public tx: utxolib.bitgo.UtxoTransaction - ) { + constructor(coin: AbstractUtxoCoin, unspents: Unspent[], tx: utxolib.bitgo.UtxoTransaction) { + this.coin = coin; + this.unspents = unspents; + this.tx = tx; // this is how blockchair will return the data, as a cashaddr for BCH like coins // BSV supports cashaddr, but at the time of writing the SDK does not support cashaddr for bsv this.addressFormat = this.coin instanceof Bch && !(this.coin instanceof Bsv) ? 'cashaddr' : 'default'; diff --git a/modules/bitgo/test/v2/unit/coins/utxo/transaction.ts b/modules/bitgo/test/v2/unit/coins/utxo/transaction.ts index ac0c97dcc9..a04cf1e53c 100644 --- a/modules/bitgo/test/v2/unit/coins/utxo/transaction.ts +++ b/modules/bitgo/test/v2/unit/coins/utxo/transaction.ts @@ -3,9 +3,9 @@ */ import 'mocha'; import * as _ from 'lodash'; -import * as assert from 'assert'; +import assert from 'assert'; import * as utxolib from '@bitgo/utxo-lib'; -import * as nock from 'nock'; +import nock from 'nock'; import { BIP32Interface, bitgo, testutil } from '@bitgo/utxo-lib'; import { AbstractUtxoCoin, getReplayProtectionAddresses } from '@bitgo/abstract-utxo'; diff --git a/modules/bitgo/test/v2/unit/coins/utxo/util/keychains.ts b/modules/bitgo/test/v2/unit/coins/utxo/util/keychains.ts index b40c6008bc..9e34a10139 100644 --- a/modules/bitgo/test/v2/unit/coins/utxo/util/keychains.ts +++ b/modules/bitgo/test/v2/unit/coins/utxo/util/keychains.ts @@ -1,10 +1,10 @@ /** * @prettier */ -import { Triple } from '@bitgo/sdk-core'; +import type { Triple } from '@bitgo/sdk-core'; import { encrypt } from '@bitgo/sdk-api'; import { getSeed } from '@bitgo/sdk-test'; -import { bip32, BIP32Interface, bitgo } from '@bitgo/utxo-lib'; +import { bip32, type BIP32Interface, bitgo } from '@bitgo/utxo-lib'; type RootWalletKeys = bitgo.RootWalletKeys; diff --git a/modules/bitgo/test/v2/unit/coins/utxo/util/nockBitGo.ts b/modules/bitgo/test/v2/unit/coins/utxo/util/nockBitGo.ts index 28b99cf29d..4f166ee233 100644 --- a/modules/bitgo/test/v2/unit/coins/utxo/util/nockBitGo.ts +++ b/modules/bitgo/test/v2/unit/coins/utxo/util/nockBitGo.ts @@ -1,4 +1,4 @@ -import * as nock from 'nock'; +import nock from 'nock'; import { Environment, Environments } from '@bitgo/sdk-core'; import { defaultBitGo } from './utxoCoins'; diff --git a/modules/bitgo/test/v2/unit/coins/utxo/util/nockIndexerAPI.ts b/modules/bitgo/test/v2/unit/coins/utxo/util/nockIndexerAPI.ts index eeb74448c1..404e3670d2 100644 --- a/modules/bitgo/test/v2/unit/coins/utxo/util/nockIndexerAPI.ts +++ b/modules/bitgo/test/v2/unit/coins/utxo/util/nockIndexerAPI.ts @@ -1,7 +1,7 @@ /** * @prettier */ -import * as nock from 'nock'; +import nock from 'nock'; import * as utxolib from '@bitgo/utxo-lib'; import { AbstractUtxoCoin } from '@bitgo/abstract-utxo'; import { nockBitGo } from './nockBitGo'; diff --git a/modules/bitgo/test/v2/unit/enterprise.ts b/modules/bitgo/test/v2/unit/enterprise.ts index 9a54851bb3..2c7486ce78 100644 --- a/modules/bitgo/test/v2/unit/enterprise.ts +++ b/modules/bitgo/test/v2/unit/enterprise.ts @@ -2,7 +2,7 @@ // Tests for enterprises // -import * as nock from 'nock'; +import nock from 'nock'; import * as sinon from 'sinon'; import { common, ECDSAUtils, Enterprise } from '@bitgo/sdk-core'; diff --git a/modules/bitgo/test/v2/unit/errors.ts b/modules/bitgo/test/v2/unit/errors.ts index 5ba25c4099..1351a92c1c 100644 --- a/modules/bitgo/test/v2/unit/errors.ts +++ b/modules/bitgo/test/v2/unit/errors.ts @@ -1,10 +1,11 @@ import 'should'; -const assert = require('assert'); +import assert from 'assert'; import { BitGoJsError, NodeEnvironmentError } from '@bitgo/sdk-core'; describe('Error handling', () => { it('should capture stack trace', function namedFunc() { const { stack } = new BitGoJsError(); + assert(stack); assert.match(stack, /BitGoJsError/); assert.match(stack, /at Context\.namedFunc/); new NodeEnvironmentError().stack!.should.match(/NodeEnvironmentError:/); diff --git a/modules/bitgo/test/v2/unit/internal/opengpgUtils.ts b/modules/bitgo/test/v2/unit/internal/opengpgUtils.ts index 31d8b645ce..0845559ab7 100644 --- a/modules/bitgo/test/v2/unit/internal/opengpgUtils.ts +++ b/modules/bitgo/test/v2/unit/internal/opengpgUtils.ts @@ -1,13 +1,13 @@ import * as openpgp from 'openpgp'; -import * as should from 'should'; +import should from 'should'; import * as crypto from 'crypto'; -import * as assert from 'assert'; +import assert from 'assert'; import { openpgpUtils } from '@bitgo/sdk-core'; import { ecc as secp256k1 } from '@bitgo/utxo-lib'; -import * as sinon from 'sinon'; +import sinon from 'sinon'; -const sodium = require('libsodium-wrappers-sumo'); +import sodium from 'libsodium-wrappers-sumo'; describe('OpenGPG Utils Tests', function () { let senderKey: { publicKey: string; privateKey: string }; diff --git a/modules/bitgo/test/v2/unit/internal/tssUtils/bitgoMpcGpgPubKeys.ts b/modules/bitgo/test/v2/unit/internal/tssUtils/bitgoMpcGpgPubKeys.ts index 5a4fd1e454..25dd9ca59a 100644 --- a/modules/bitgo/test/v2/unit/internal/tssUtils/bitgoMpcGpgPubKeys.ts +++ b/modules/bitgo/test/v2/unit/internal/tssUtils/bitgoMpcGpgPubKeys.ts @@ -11,8 +11,8 @@ import { TestBitGo } from '@bitgo/sdk-test'; import { BitGo } from '../../../../../src'; import * as openpgp from 'openpgp'; -import nock = require('nock'); -import assert = require('assert'); +import nock from 'nock'; +import assert from 'assert'; class TestEcdsaMpcv2Utils extends ECDSAUtils.EcdsaMPCv2Utils { public async testPickBitgoPubGpgKeyForSigning( diff --git a/modules/bitgo/test/v2/unit/internal/tssUtils/common.ts b/modules/bitgo/test/v2/unit/internal/tssUtils/common.ts index 8b60405820..91e2917fb3 100644 --- a/modules/bitgo/test/v2/unit/internal/tssUtils/common.ts +++ b/modules/bitgo/test/v2/unit/internal/tssUtils/common.ts @@ -1,5 +1,5 @@ -import { ExchangeCommitmentResponse, RequestType, SignatureShareRecord } from '@bitgo/sdk-core'; -import * as nock from 'nock'; +import { type ExchangeCommitmentResponse, RequestType, type SignatureShareRecord } from '@bitgo/sdk-core'; +import nock from 'nock'; import * as _ from 'lodash'; export async function nockSendTxRequest(params: { diff --git a/modules/bitgo/test/v2/unit/internal/tssUtils/ecdsa.ts b/modules/bitgo/test/v2/unit/internal/tssUtils/ecdsa.ts index 05a5930c77..5a9c7a6e6e 100644 --- a/modules/bitgo/test/v2/unit/internal/tssUtils/ecdsa.ts +++ b/modules/bitgo/test/v2/unit/internal/tssUtils/ecdsa.ts @@ -1,8 +1,8 @@ -import * as assert from 'assert'; +import assert from 'assert'; import * as _ from 'lodash'; -import * as nock from 'nock'; +import nock from 'nock'; import * as openpgp from 'openpgp'; -import * as should from 'should'; +import should from 'should'; import * as sinon from 'sinon'; import { diff --git a/modules/bitgo/test/v2/unit/internal/tssUtils/ecdsaMPCv2/createKeychains.ts b/modules/bitgo/test/v2/unit/internal/tssUtils/ecdsaMPCv2/createKeychains.ts index 5c73592fda..7802250cda 100644 --- a/modules/bitgo/test/v2/unit/internal/tssUtils/ecdsaMPCv2/createKeychains.ts +++ b/modules/bitgo/test/v2/unit/internal/tssUtils/ecdsaMPCv2/createKeychains.ts @@ -1,5 +1,5 @@ -import * as assert from 'assert'; -import * as nock from 'nock'; +import assert from 'assert'; +import nock from 'nock'; import * as openpgp from 'openpgp'; import * as crypto from 'crypto'; diff --git a/modules/bitgo/test/v2/unit/internal/tssUtils/ecdsaMPCv2/signTxRequest.ts b/modules/bitgo/test/v2/unit/internal/tssUtils/ecdsaMPCv2/signTxRequest.ts index 9fe7614ad5..fcde574b44 100644 --- a/modules/bitgo/test/v2/unit/internal/tssUtils/ecdsaMPCv2/signTxRequest.ts +++ b/modules/bitgo/test/v2/unit/internal/tssUtils/ecdsaMPCv2/signTxRequest.ts @@ -22,7 +22,7 @@ import { MPCv2PartyFromStringOrNumber, } from '@bitgo/public-types'; import * as openpgp from 'openpgp'; -import * as nock from 'nock'; +import nock from 'nock'; import { TestableBG, TestBitGo } from '@bitgo/sdk-test'; import { BitGo } from '../../../../../../src'; const createKeccakHash = require('keccak'); diff --git a/modules/bitgo/test/v2/unit/internal/tssUtils/eddsa.ts b/modules/bitgo/test/v2/unit/internal/tssUtils/eddsa.ts index e93976ea68..948cb15124 100644 --- a/modules/bitgo/test/v2/unit/internal/tssUtils/eddsa.ts +++ b/modules/bitgo/test/v2/unit/internal/tssUtils/eddsa.ts @@ -1,6 +1,6 @@ -import * as sodium from 'libsodium-wrappers-sumo'; +import sodium from 'libsodium-wrappers-sumo'; import * as _ from 'lodash'; -import * as nock from 'nock'; +import nock from 'nock'; import * as openpgp from 'openpgp'; import * as should from 'should'; import * as sinon from 'sinon'; diff --git a/modules/bitgo/test/v2/unit/keychains.ts b/modules/bitgo/test/v2/unit/keychains.ts index 2e9b7c922d..f195eeb91f 100644 --- a/modules/bitgo/test/v2/unit/keychains.ts +++ b/modules/bitgo/test/v2/unit/keychains.ts @@ -3,9 +3,9 @@ // import { CoinFamily, CoinKind, coins, KeyCurve, UnderlyingAsset } from '@bitgo/statics'; -import * as assert from 'assert'; +import assert from 'assert'; import * as _ from 'lodash'; -import * as nock from 'nock'; +import nock from 'nock'; import * as should from 'should'; import * as sinon from 'sinon'; diff --git a/modules/bitgo/test/v2/unit/lightning/lightningWallets.ts b/modules/bitgo/test/v2/unit/lightning/lightningWallets.ts index 784823e29b..e4630b1708 100644 --- a/modules/bitgo/test/v2/unit/lightning/lightningWallets.ts +++ b/modules/bitgo/test/v2/unit/lightning/lightningWallets.ts @@ -1,6 +1,6 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { TestBitGo } from '@bitgo/sdk-test'; -import * as nock from 'nock'; +import nock from 'nock'; import { BaseCoin, PendingApprovalData, State, Type } from '@bitgo/sdk-core'; import { CreateInvoiceBody, diff --git a/modules/bitgo/test/v2/unit/mmi.ts b/modules/bitgo/test/v2/unit/mmi.ts index 7eca972c9b..7a62da5051 100644 --- a/modules/bitgo/test/v2/unit/mmi.ts +++ b/modules/bitgo/test/v2/unit/mmi.ts @@ -1,10 +1,10 @@ import { TestBitGo } from '@bitgo/sdk-test'; import { BitGo } from '../../../src/bitgo'; -import * as nock from 'nock'; +import nock from 'nock'; import { bip32 } from '@bitgo/utxo-lib'; import { common, TransactionType } from '@bitgo/sdk-core'; -import { AvaxC as AvaxCAccountLib, getBuilder } from '../../../../account-lib'; +import { AvaxC as AvaxCAccountLib, getBuilder } from '@bitgo/account-lib'; nock.enableNetConnect(); diff --git a/modules/bitgo/test/v2/unit/pendingApproval.ts b/modules/bitgo/test/v2/unit/pendingApproval.ts index 515eca0d93..201f2ee114 100644 --- a/modules/bitgo/test/v2/unit/pendingApproval.ts +++ b/modules/bitgo/test/v2/unit/pendingApproval.ts @@ -2,7 +2,7 @@ * @prettier */ import 'should'; -import * as nock from 'nock'; +import nock from 'nock'; import * as sinon from 'sinon'; import { TestableBG, TestBitGo } from '@bitgo/sdk-test'; import { BitGo } from '../../../src'; diff --git a/modules/bitgo/test/v2/unit/recovery.ts b/modules/bitgo/test/v2/unit/recovery.ts index c06b0e92ea..096fe83106 100644 --- a/modules/bitgo/test/v2/unit/recovery.ts +++ b/modules/bitgo/test/v2/unit/recovery.ts @@ -1,5 +1,5 @@ import * as should from 'should'; -import * as nock from 'nock'; +import nock from 'nock'; import { mockSerializedChallengeWithProofs, TestBitGo } from '@bitgo/sdk-test'; import { BitGo } from '../../../src'; diff --git a/modules/bitgo/test/v2/unit/seedValidator.ts b/modules/bitgo/test/v2/unit/seedValidator.ts index 4486b355cc..e68d0f06da 100644 --- a/modules/bitgo/test/v2/unit/seedValidator.ts +++ b/modules/bitgo/test/v2/unit/seedValidator.ts @@ -1,6 +1,6 @@ import 'should'; -import * as nock from 'nock'; +import nock from 'nock'; import { TestBitGo } from '@bitgo/sdk-test'; import { BitGo } from '../../../src/bitgo'; diff --git a/modules/bitgo/test/v2/unit/staking/goStakingWalletCommon.ts b/modules/bitgo/test/v2/unit/staking/goStakingWalletCommon.ts index 5493baf1ba..3515ddfc37 100644 --- a/modules/bitgo/test/v2/unit/staking/goStakingWalletCommon.ts +++ b/modules/bitgo/test/v2/unit/staking/goStakingWalletCommon.ts @@ -1,4 +1,4 @@ -import * as nock from 'nock'; +import nock from 'nock'; import * as should from 'should'; import fixtures from '../../fixtures/staking/goStakingWallet'; diff --git a/modules/bitgo/test/v2/unit/staking/stakingWalletCommon.ts b/modules/bitgo/test/v2/unit/staking/stakingWalletCommon.ts index 8cf8bfe034..f24be0332f 100644 --- a/modules/bitgo/test/v2/unit/staking/stakingWalletCommon.ts +++ b/modules/bitgo/test/v2/unit/staking/stakingWalletCommon.ts @@ -1,4 +1,4 @@ -import * as nock from 'nock'; +import nock from 'nock'; import * as should from 'should'; import fixtures from '../../fixtures/staking/stakingWallet'; diff --git a/modules/bitgo/test/v2/unit/staking/stakingWalletNonTSS.ts b/modules/bitgo/test/v2/unit/staking/stakingWalletNonTSS.ts index 72a5663560..45d7fd570f 100644 --- a/modules/bitgo/test/v2/unit/staking/stakingWalletNonTSS.ts +++ b/modules/bitgo/test/v2/unit/staking/stakingWalletNonTSS.ts @@ -1,6 +1,6 @@ import * as _ from 'lodash'; -import * as nock from 'nock'; +import nock from 'nock'; import fixtures from '../../fixtures/staking/stakingWallet'; import { Enterprise, Environments, Keychain, Keychains, StakingWallet, Wallet } from '@bitgo/sdk-core'; @@ -242,7 +242,7 @@ describe('non-TSS Staking Wallet', function () { .reply(200, transaction); const prebuildTransaction = sandbox.stub(Wallet.prototype, 'prebuildTransaction'); - const descriptor = sandbox.stub(StakingWallet.prototype, 'getDescriptorWallet'); + const descriptor = sandbox.stub(StakingWallet.prototype, 'getDescriptorWallet' as any); await btcStakingWallet.build(transaction); prebuildTransaction.calledOnceWithExactly(transaction.buildParams).should.be.true; descriptor.notCalled.should.be.true; diff --git a/modules/bitgo/test/v2/unit/staking/stakingWalletTSS.ts b/modules/bitgo/test/v2/unit/staking/stakingWalletTSS.ts index 99d39b5be1..e81fd4ac28 100644 --- a/modules/bitgo/test/v2/unit/staking/stakingWalletTSS.ts +++ b/modules/bitgo/test/v2/unit/staking/stakingWalletTSS.ts @@ -1,6 +1,6 @@ import * as _ from 'lodash'; -import * as nock from 'nock'; +import nock from 'nock'; import fixtures from '../../fixtures/staking/stakingWallet'; import { Enterprise, Environments, Keychain, Keychains, StakingWallet, TssUtils, Wallet } from '@bitgo/sdk-core'; diff --git a/modules/bitgo/test/v2/unit/sweep.ts b/modules/bitgo/test/v2/unit/sweep.ts index db07e991d7..61490c627b 100644 --- a/modules/bitgo/test/v2/unit/sweep.ts +++ b/modules/bitgo/test/v2/unit/sweep.ts @@ -1,4 +1,4 @@ -import * as nock from 'nock'; +import nock from 'nock'; import { Environments, Wallet } from '@bitgo/sdk-core'; import { TestableBG, TestBitGo } from '@bitgo/sdk-test'; diff --git a/modules/bitgo/test/v2/unit/tss/ecdsa.ts b/modules/bitgo/test/v2/unit/tss/ecdsa.ts index 270315778e..0e34514790 100644 --- a/modules/bitgo/test/v2/unit/tss/ecdsa.ts +++ b/modules/bitgo/test/v2/unit/tss/ecdsa.ts @@ -33,7 +33,7 @@ import { mockSignWithPaillierChallengeRT, } from '../../fixtures/tss/ecdsaFixtures'; -import nock = require('nock'); +import nock from 'nock'; type KeyShare = ECDSA.KeyShare; const encryptNShare = ECDSAMethods.encryptNShare; diff --git a/modules/bitgo/test/v2/unit/tss/eddsa.ts b/modules/bitgo/test/v2/unit/tss/eddsa.ts index fb52d1ea8d..65649b900e 100644 --- a/modules/bitgo/test/v2/unit/tss/eddsa.ts +++ b/modules/bitgo/test/v2/unit/tss/eddsa.ts @@ -28,7 +28,7 @@ import { TestBitGo } from '@bitgo/sdk-test'; import { BitGo } from '../../../../src/bitgo'; import { nockGetTxRequest, nockSendSignatureShare } from './helpers'; import * as sinon from 'sinon'; -import nock = require('nock'); +import nock from 'nock'; describe('test tss helper functions', function () { let mpc: Eddsa; diff --git a/modules/bitgo/test/v2/unit/tss/helpers.ts b/modules/bitgo/test/v2/unit/tss/helpers.ts index e21ec5e0b1..f2284e0e94 100644 --- a/modules/bitgo/test/v2/unit/tss/helpers.ts +++ b/modules/bitgo/test/v2/unit/tss/helpers.ts @@ -1,7 +1,7 @@ import * as openpgp from 'openpgp'; import { createSharedDataProof, SignatureShareRecord } from '@bitgo/sdk-core'; import { getRoute } from '../internal/tssUtils/common'; -import * as nock from 'nock'; +import nock from 'nock'; export async function nockSendSignatureShare( params: { diff --git a/modules/bitgo/test/v2/unit/unspents.ts b/modules/bitgo/test/v2/unit/unspents.ts index f37e295eee..2410d143ce 100644 --- a/modules/bitgo/test/v2/unit/unspents.ts +++ b/modules/bitgo/test/v2/unit/unspents.ts @@ -1,4 +1,4 @@ -import * as nock from 'nock'; +import nock from 'nock'; import * as sinon from 'sinon'; import { common, Wallet } from '@bitgo/sdk-core'; import { TestBitGo } from '@bitgo/sdk-test'; diff --git a/modules/bitgo/test/v2/unit/wallet.ts b/modules/bitgo/test/v2/unit/wallet.ts index 3bfa9eb004..2d94224618 100644 --- a/modules/bitgo/test/v2/unit/wallet.ts +++ b/modules/bitgo/test/v2/unit/wallet.ts @@ -5,7 +5,7 @@ import * as should from 'should'; import * as sinon from 'sinon'; import '../lib/asserts'; -import * as nock from 'nock'; +import nock from 'nock'; import * as _ from 'lodash'; import { diff --git a/modules/bitgo/test/v2/unit/wallets.ts b/modules/bitgo/test/v2/unit/wallets.ts index e91a2a7632..3a4074e030 100644 --- a/modules/bitgo/test/v2/unit/wallets.ts +++ b/modules/bitgo/test/v2/unit/wallets.ts @@ -1,8 +1,8 @@ // // Tests for Wallets // -import * as assert from 'assert'; -import * as nock from 'nock'; +import assert from 'assert'; +import nock from 'nock'; import * as sinon from 'sinon'; import * as should from 'should'; import * as _ from 'lodash'; diff --git a/modules/bitgo/tsconfig.json b/modules/bitgo/tsconfig.json index d3fab23fed..5bab825300 100644 --- a/modules/bitgo/tsconfig.json +++ b/modules/bitgo/tsconfig.json @@ -10,7 +10,7 @@ "../../node_modules/@types" ], "declarationDir": "./dist/types", - "esModuleInterop": false + "esModuleInterop": true }, "include": [ "src/**/*", diff --git a/modules/blockapis/test/UtxoApi.ts b/modules/blockapis/test/UtxoApi.ts index fc3249728d..f00305f93e 100644 --- a/modules/blockapis/test/UtxoApi.ts +++ b/modules/blockapis/test/UtxoApi.ts @@ -43,12 +43,19 @@ type MethodArguments = unknown[]; * A test case for a UtxoApi method. */ class TestCase { + public coinName: string; + public methodName: keyof UtxoApi; + public args: unknown[]; /** * @param coinName - coin to test * @param methodName - method to test * @param args - method arguments */ - constructor(public coinName: string, public methodName: keyof UtxoApi, public args: unknown[]) {} + constructor(coinName: string, methodName: keyof UtxoApi, args: unknown[]) { + this.coinName = coinName; + this.methodName = methodName; + this.args = args; + } /** * Call the method on the given API. diff --git a/modules/express/package.json b/modules/express/package.json index 152815a5a4..cd492cda82 100644 --- a/modules/express/package.json +++ b/modules/express/package.json @@ -64,7 +64,7 @@ "@types/express": "4.17.13", "@types/lodash": "^4.14.121", "@types/morgan": "^1.7.35", - "@types/node": "^22.15.29", + "@types/node": "^24.0.4", "@types/sinon": "^10.0.11", "@types/supertest": "^2.0.11", "keccak": "^3.0.3", diff --git a/modules/sdk-api/src/types.ts b/modules/sdk-api/src/types.ts index 128ed7e6bb..b7f118b6be 100644 --- a/modules/sdk-api/src/types.ts +++ b/modules/sdk-api/src/types.ts @@ -1,5 +1,5 @@ import { EnvironmentName, IRequestTracer, V1Network } from '@bitgo/sdk-core'; -import { ECPairInterface } from '@bitgo/utxo-lib'; +import type { ECPairInterface } from '@bitgo/utxo-lib'; import { type Agent } from 'http'; const patchedRequestMethods = ['get', 'post', 'put', 'del', 'patch', 'options'] as const; diff --git a/modules/sdk-api/src/v1/travelRule.ts b/modules/sdk-api/src/v1/travelRule.ts index 395ba5da4b..fe8750fbe6 100644 --- a/modules/sdk-api/src/v1/travelRule.ts +++ b/modules/sdk-api/src/v1/travelRule.ts @@ -11,7 +11,7 @@ // Copyright 2014, BitGo, Inc. All Rights Reserved. // import { common, getNetwork, getSharedSecret, makeRandomKey, sanitizeLegacyPath } from '@bitgo/sdk-core'; -import { bip32, BIP32Interface } from '@bitgo/utxo-lib'; +import { bip32, type BIP32Interface } from '@bitgo/utxo-lib'; import * as utxolib from '@bitgo/utxo-lib'; import _ from 'lodash'; diff --git a/modules/sdk-coin-ada/package.json b/modules/sdk-coin-ada/package.json index e211985fb2..53d45ab233 100644 --- a/modules/sdk-coin-ada/package.json +++ b/modules/sdk-coin-ada/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-ada/test/unit/ada.ts b/modules/sdk-coin-ada/test/unit/ada.ts index 930624467d..67330e90e7 100644 --- a/modules/sdk-coin-ada/test/unit/ada.ts +++ b/modules/sdk-coin-ada/test/unit/ada.ts @@ -2,7 +2,7 @@ * @prettier */ -import should = require('should'); +import should from 'should'; import { randomBytes } from 'crypto'; import * as sinon from 'sinon'; import { TestBitGo, TestBitGoAPI } from '@bitgo/sdk-test'; diff --git a/modules/sdk-coin-algo/package.json b/modules/sdk-coin-algo/package.json index c1b2ac5c01..1884dae512 100644 --- a/modules/sdk-coin-algo/package.json +++ b/modules/sdk-coin-algo/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-apechain/package.json b/modules/sdk-coin-apechain/package.json index 332b8a41a3..5f6b7f1c61 100644 --- a/modules/sdk-coin-apechain/package.json +++ b/modules/sdk-coin-apechain/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-apt/package.json b/modules/sdk-coin-apt/package.json index 06e89eff78..22fa3f25e2 100644 --- a/modules/sdk-coin-apt/package.json +++ b/modules/sdk-coin-apt/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=16 <23" + "node": ">=16 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-arbeth/package.json b/modules/sdk-coin-arbeth/package.json index 031cbf4490..e2146658a6 100644 --- a/modules/sdk-coin-arbeth/package.json +++ b/modules/sdk-coin-arbeth/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-asi/package.json b/modules/sdk-coin-asi/package.json index cdb15cd3ca..c940ba7cd2 100644 --- a/modules/sdk-coin-asi/package.json +++ b/modules/sdk-coin-asi/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-asi/test/unit/asi.ts b/modules/sdk-coin-asi/test/unit/asi.ts index 955350becb..70e6cbd0d2 100644 --- a/modules/sdk-coin-asi/test/unit/asi.ts +++ b/modules/sdk-coin-asi/test/unit/asi.ts @@ -1,4 +1,4 @@ -import should = require('should'); +import should from 'should'; import BigNumber from 'bignumber.js'; import sinon from 'sinon'; import { TestBitGo, TestBitGoAPI } from '@bitgo/sdk-test'; diff --git a/modules/sdk-coin-atom/package.json b/modules/sdk-coin-atom/package.json index 6f82a5aebc..1358097b12 100644 --- a/modules/sdk-coin-atom/package.json +++ b/modules/sdk-coin-atom/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-atom/test/unit/atom.ts b/modules/sdk-coin-atom/test/unit/atom.ts index 38886a5b81..57efea9890 100644 --- a/modules/sdk-coin-atom/test/unit/atom.ts +++ b/modules/sdk-coin-atom/test/unit/atom.ts @@ -19,7 +19,7 @@ import { wrwUser, wrwUserDkls, } from '../resources/atom'; -import should = require('should'); +import should from 'should'; describe('ATOM', function () { let bitgo: TestBitGoAPI; diff --git a/modules/sdk-coin-avaxc/package.json b/modules/sdk-coin-avaxc/package.json index 15b3b3cd9c..cb22013223 100644 --- a/modules/sdk-coin-avaxc/package.json +++ b/modules/sdk-coin-avaxc/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-avaxp/package.json b/modules/sdk-coin-avaxp/package.json index d61bd052e0..be26a4f212 100644 --- a/modules/sdk-coin-avaxp/package.json +++ b/modules/sdk-coin-avaxp/package.json @@ -26,7 +26,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "lint-staged": { "*.{js,ts}": [ diff --git a/modules/sdk-coin-baby/package.json b/modules/sdk-coin-baby/package.json index 28366ca301..e7e431ee6d 100644 --- a/modules/sdk-coin-baby/package.json +++ b/modules/sdk-coin-baby/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-baby/test/unit/baby.ts b/modules/sdk-coin-baby/test/unit/baby.ts index 51a45059e7..f849e1e7b1 100644 --- a/modules/sdk-coin-baby/test/unit/baby.ts +++ b/modules/sdk-coin-baby/test/unit/baby.ts @@ -4,7 +4,7 @@ import BigNumber from 'bignumber.js'; import sinon from 'sinon'; import { Baby, Tbaby } from '../../src'; import { TEST_SEND_MANY_TX, TEST_SEND_TX, TEST_TX_WITH_MEMO, address } from '../resources/baby'; -import should = require('should'); +import should from 'should'; import utils from '../../src/lib/utils'; describe('Babylon', function () { diff --git a/modules/sdk-coin-bch/package.json b/modules/sdk-coin-bch/package.json index ca4da2e7be..6fa6b7811c 100644 --- a/modules/sdk-coin-bch/package.json +++ b/modules/sdk-coin-bch/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-bcha/package.json b/modules/sdk-coin-bcha/package.json index fb92bd83de..7e2fad86bf 100644 --- a/modules/sdk-coin-bcha/package.json +++ b/modules/sdk-coin-bcha/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-bera/package.json b/modules/sdk-coin-bera/package.json index 7203187537..ae64195326 100644 --- a/modules/sdk-coin-bera/package.json +++ b/modules/sdk-coin-bera/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-bld/package.json b/modules/sdk-coin-bld/package.json index eb7eaeb153..56c2884ccf 100644 --- a/modules/sdk-coin-bld/package.json +++ b/modules/sdk-coin-bld/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-bld/test/unit/bld.ts b/modules/sdk-coin-bld/test/unit/bld.ts index 05b67dc01b..f43cd6f667 100644 --- a/modules/sdk-coin-bld/test/unit/bld.ts +++ b/modules/sdk-coin-bld/test/unit/bld.ts @@ -17,7 +17,7 @@ import { TEST_WITHDRAW_REWARDS_TX, wrwUser, } from '../resources/bld'; -import should = require('should'); +import should from 'should'; describe('BLD', function () { let bitgo: TestBitGoAPI; diff --git a/modules/sdk-coin-bsc/package.json b/modules/sdk-coin-bsc/package.json index 822ae8c2dd..50348277b6 100644 --- a/modules/sdk-coin-bsc/package.json +++ b/modules/sdk-coin-bsc/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-bsv/package.json b/modules/sdk-coin-bsv/package.json index 6c7bb49bf8..eb6a2a1b60 100644 --- a/modules/sdk-coin-bsv/package.json +++ b/modules/sdk-coin-bsv/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-btc/package.json b/modules/sdk-coin-btc/package.json index 8446a27f2c..4450f47e2d 100644 --- a/modules/sdk-coin-btc/package.json +++ b/modules/sdk-coin-btc/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-btg/package.json b/modules/sdk-coin-btg/package.json index 7e5c0e0b6c..4678fd39b9 100644 --- a/modules/sdk-coin-btg/package.json +++ b/modules/sdk-coin-btg/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-celo/package.json b/modules/sdk-coin-celo/package.json index ff0c05d866..e93a8bee36 100644 --- a/modules/sdk-coin-celo/package.json +++ b/modules/sdk-coin-celo/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-coredao/package.json b/modules/sdk-coin-coredao/package.json index c58c3ece65..1a85420611 100644 --- a/modules/sdk-coin-coredao/package.json +++ b/modules/sdk-coin-coredao/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-coreum/package.json b/modules/sdk-coin-coreum/package.json index f5cb875c26..d2c36e3b7f 100644 --- a/modules/sdk-coin-coreum/package.json +++ b/modules/sdk-coin-coreum/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-coreum/test/unit/coreum.ts b/modules/sdk-coin-coreum/test/unit/coreum.ts index d3cd4819e5..1e3bfd7b02 100644 --- a/modules/sdk-coin-coreum/test/unit/coreum.ts +++ b/modules/sdk-coin-coreum/test/unit/coreum.ts @@ -19,7 +19,7 @@ import { testnetAddress, wrwUser, } from '../resources/tcoreum'; -import should = require('should'); +import should from 'should'; describe('Coreum', function () { let bitgo: TestBitGoAPI; diff --git a/modules/sdk-coin-cosmos/package.json b/modules/sdk-coin-cosmos/package.json index 3a72396a38..81fc6bffb5 100644 --- a/modules/sdk-coin-cosmos/package.json +++ b/modules/sdk-coin-cosmos/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-cronos/package.json b/modules/sdk-coin-cronos/package.json index d191d21652..402a8349be 100644 --- a/modules/sdk-coin-cronos/package.json +++ b/modules/sdk-coin-cronos/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-cronos/test/unit/cronos.ts b/modules/sdk-coin-cronos/test/unit/cronos.ts index a711c3ef95..12ddf3234f 100644 --- a/modules/sdk-coin-cronos/test/unit/cronos.ts +++ b/modules/sdk-coin-cronos/test/unit/cronos.ts @@ -1,4 +1,4 @@ -import should = require('should'); +import should from 'should'; import BigNumber from 'bignumber.js'; import sinon from 'sinon'; import { TestBitGo, TestBitGoAPI } from '@bitgo/sdk-test'; diff --git a/modules/sdk-coin-cspr/package.json b/modules/sdk-coin-cspr/package.json index 803d7aaf5b..2a1bfaaa7f 100644 --- a/modules/sdk-coin-cspr/package.json +++ b/modules/sdk-coin-cspr/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-dash/package.json b/modules/sdk-coin-dash/package.json index 6c56acc703..a7f0c7dbe9 100644 --- a/modules/sdk-coin-dash/package.json +++ b/modules/sdk-coin-dash/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-doge/package.json b/modules/sdk-coin-doge/package.json index fd235a786c..42a27fb4cb 100644 --- a/modules/sdk-coin-doge/package.json +++ b/modules/sdk-coin-doge/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-dot/package.json b/modules/sdk-coin-dot/package.json index 6f0d83a9a8..dddecb866c 100644 --- a/modules/sdk-coin-dot/package.json +++ b/modules/sdk-coin-dot/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-dot/test/unit/dot.ts b/modules/sdk-coin-dot/test/unit/dot.ts index ebd694dac0..907ae5cc36 100644 --- a/modules/sdk-coin-dot/test/unit/dot.ts +++ b/modules/sdk-coin-dot/test/unit/dot.ts @@ -1,7 +1,7 @@ import { BitGoAPI } from '@bitgo/sdk-api'; import { TestBitGo, TestBitGoAPI } from '@bitgo/sdk-test'; import { randomBytes } from 'crypto'; -import should = require('should'); +import should from 'should'; import { Dot, Tdot, KeyPair } from '../../src'; import * as testData from '../fixtures'; import { chainName, txVersion, genesisHash, specVersion } from '../resources'; diff --git a/modules/sdk-coin-eos/package.json b/modules/sdk-coin-eos/package.json index e47f6aa3eb..d20073cb3d 100644 --- a/modules/sdk-coin-eos/package.json +++ b/modules/sdk-coin-eos/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-eos/test/unit/eos.ts b/modules/sdk-coin-eos/test/unit/eos.ts index 0b2bd7525f..a72f611d8f 100644 --- a/modules/sdk-coin-eos/test/unit/eos.ts +++ b/modules/sdk-coin-eos/test/unit/eos.ts @@ -126,7 +126,7 @@ describe('EOS:', function () { // mock responses to the block chain const sandBox = sinon.createSandbox(); - const callBack = sandBox.stub(Eos.prototype, 'getDataFromNode'); + const callBack = sandBox.stub(Eos.prototype, 'getDataFromNode' as any); callBack .withArgs({ endpoint: '/v1/chain/get_account', @@ -380,7 +380,7 @@ describe('EOS:', function () { beforeEach(async () => { // mock responses to the block chain sandBox = sinon.createSandbox(); - const callBack = sandBox.stub(Eos.prototype, 'getDataFromNode'); + const callBack = sandBox.stub(Eos.prototype, 'getDataFromNode' as any); callBack .withArgs({ endpoint: '/v1/chain/get_info', diff --git a/modules/sdk-coin-etc/package.json b/modules/sdk-coin-etc/package.json index ee68189055..a5540a79d7 100644 --- a/modules/sdk-coin-etc/package.json +++ b/modules/sdk-coin-etc/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-eth/package.json b/modules/sdk-coin-eth/package.json index c66383f494..cdec1a8505 100644 --- a/modules/sdk-coin-eth/package.json +++ b/modules/sdk-coin-eth/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-ethlike/package.json b/modules/sdk-coin-ethlike/package.json index 0243afee6a..f06e53de9d 100644 --- a/modules/sdk-coin-ethlike/package.json +++ b/modules/sdk-coin-ethlike/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-ethw/package.json b/modules/sdk-coin-ethw/package.json index 2a3bae37d6..c78969536a 100644 --- a/modules/sdk-coin-ethw/package.json +++ b/modules/sdk-coin-ethw/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-flr/package.json b/modules/sdk-coin-flr/package.json index cd365aa554..41a2e2fee0 100644 --- a/modules/sdk-coin-flr/package.json +++ b/modules/sdk-coin-flr/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-hash/package.json b/modules/sdk-coin-hash/package.json index 937e29541b..f69c28f3e1 100644 --- a/modules/sdk-coin-hash/package.json +++ b/modules/sdk-coin-hash/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-hash/test/unit/hash.ts b/modules/sdk-coin-hash/test/unit/hash.ts index ec6d629cfa..6264a74ed2 100644 --- a/modules/sdk-coin-hash/test/unit/hash.ts +++ b/modules/sdk-coin-hash/test/unit/hash.ts @@ -18,7 +18,7 @@ import { testnetAddress, wrwUser, } from '../resources/hash'; -import should = require('should'); +import should from 'should'; describe('HASH', function () { let bitgo: TestBitGoAPI; diff --git a/modules/sdk-coin-hbar/package.json b/modules/sdk-coin-hbar/package.json index 34489b4c73..794b2798ec 100644 --- a/modules/sdk-coin-hbar/package.json +++ b/modules/sdk-coin-hbar/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-icp/package.json b/modules/sdk-coin-icp/package.json index bb0e64eae7..e282c42263 100644 --- a/modules/sdk-coin-icp/package.json +++ b/modules/sdk-coin-icp/package.json @@ -19,7 +19,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-initia/package.json b/modules/sdk-coin-initia/package.json index 091940b14e..a92cea1927 100644 --- a/modules/sdk-coin-initia/package.json +++ b/modules/sdk-coin-initia/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-initia/test/unit/initia.ts b/modules/sdk-coin-initia/test/unit/initia.ts index f3aad0ced5..d04c7c2c1b 100644 --- a/modules/sdk-coin-initia/test/unit/initia.ts +++ b/modules/sdk-coin-initia/test/unit/initia.ts @@ -1,4 +1,4 @@ -import should = require('should'); +import should from 'should'; import BigNumber from 'bignumber.js'; import sinon from 'sinon'; import { TestBitGo, TestBitGoAPI } from '@bitgo/sdk-test'; diff --git a/modules/sdk-coin-injective/package.json b/modules/sdk-coin-injective/package.json index a1b37b42ad..3e5e8b2f90 100644 --- a/modules/sdk-coin-injective/package.json +++ b/modules/sdk-coin-injective/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-injective/test/unit/injective.ts b/modules/sdk-coin-injective/test/unit/injective.ts index fe1db84dbf..7874c880e0 100644 --- a/modules/sdk-coin-injective/test/unit/injective.ts +++ b/modules/sdk-coin-injective/test/unit/injective.ts @@ -18,8 +18,8 @@ import { TEST_WITHDRAW_REWARDS_TX, wrwUser, } from '../resources/injective'; -import should = require('should'); -import nock = require('nock'); +import should from 'should'; +import nock from 'nock'; describe('INJ', function () { let bitgo: TestBitGoAPI; diff --git a/modules/sdk-coin-islm/package.json b/modules/sdk-coin-islm/package.json index eb3797e3f8..1cb8bff38c 100644 --- a/modules/sdk-coin-islm/package.json +++ b/modules/sdk-coin-islm/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-islm/test/unit/islm.ts b/modules/sdk-coin-islm/test/unit/islm.ts index 03d34cbe73..7bd3929697 100644 --- a/modules/sdk-coin-islm/test/unit/islm.ts +++ b/modules/sdk-coin-islm/test/unit/islm.ts @@ -12,7 +12,7 @@ import { TEST_WITHDRAW_REWARDS_TX, address, } from '../resources/islm'; -import should = require('should'); +import should from 'should'; describe('Islm', function () { let bitgo: TestBitGoAPI; diff --git a/modules/sdk-coin-lnbtc/package.json b/modules/sdk-coin-lnbtc/package.json index 0cf18a2789..b46ec97dea 100644 --- a/modules/sdk-coin-lnbtc/package.json +++ b/modules/sdk-coin-lnbtc/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-ltc/package.json b/modules/sdk-coin-ltc/package.json index 3045067789..5b01c211d2 100644 --- a/modules/sdk-coin-ltc/package.json +++ b/modules/sdk-coin-ltc/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-mantra/package.json b/modules/sdk-coin-mantra/package.json index 36fbe10ea0..d0b8120ac5 100644 --- a/modules/sdk-coin-mantra/package.json +++ b/modules/sdk-coin-mantra/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-mantra/test/unit/mantra.ts b/modules/sdk-coin-mantra/test/unit/mantra.ts index 2110632bf1..90bf2aeb82 100644 --- a/modules/sdk-coin-mantra/test/unit/mantra.ts +++ b/modules/sdk-coin-mantra/test/unit/mantra.ts @@ -5,7 +5,7 @@ import sinon from 'sinon'; import { Mantra, Tmantra } from '../../src'; import utils from '../../src/lib/utils'; import { TEST_SEND_MANY_TX, TEST_SEND_TX, TEST_TX_WITH_MEMO, address } from '../resources/mantra'; -import should = require('should'); +import should from 'should'; describe('Mantra', function () { let bitgo: TestBitGoAPI; diff --git a/modules/sdk-coin-mon/package.json b/modules/sdk-coin-mon/package.json index 9e93d028af..b5f972e3ef 100644 --- a/modules/sdk-coin-mon/package.json +++ b/modules/sdk-coin-mon/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-near/package.json b/modules/sdk-coin-near/package.json index 9471c99133..031bcecfad 100644 --- a/modules/sdk-coin-near/package.json +++ b/modules/sdk-coin-near/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-oas/package.json b/modules/sdk-coin-oas/package.json index 2c2effce63..10553f9ba3 100644 --- a/modules/sdk-coin-oas/package.json +++ b/modules/sdk-coin-oas/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-opeth/package.json b/modules/sdk-coin-opeth/package.json index 1e8474e88b..87e6cc819c 100644 --- a/modules/sdk-coin-opeth/package.json +++ b/modules/sdk-coin-opeth/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-osmo/package.json b/modules/sdk-coin-osmo/package.json index 241cc2d34a..95d2caedab 100644 --- a/modules/sdk-coin-osmo/package.json +++ b/modules/sdk-coin-osmo/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-osmo/test/unit/osmo.ts b/modules/sdk-coin-osmo/test/unit/osmo.ts index 0d9d6b2112..446f6b6bed 100644 --- a/modules/sdk-coin-osmo/test/unit/osmo.ts +++ b/modules/sdk-coin-osmo/test/unit/osmo.ts @@ -18,7 +18,7 @@ import { TEST_WITHDRAW_REWARDS_TX, wrwUser, } from '../resources/osmo'; -import should = require('should'); +import should from 'should'; describe('OSMO', function () { let bitgo: TestBitGoAPI; diff --git a/modules/sdk-coin-polygon/package.json b/modules/sdk-coin-polygon/package.json index 29c4d2111c..fc59c81bf2 100644 --- a/modules/sdk-coin-polygon/package.json +++ b/modules/sdk-coin-polygon/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-polyx/package.json b/modules/sdk-coin-polyx/package.json index 8b5aa2340f..ffbc21b9e5 100644 --- a/modules/sdk-coin-polyx/package.json +++ b/modules/sdk-coin-polyx/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=16 <23" + "node": ">=16 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-rbtc/package.json b/modules/sdk-coin-rbtc/package.json index e6c23ed0a8..dea078e590 100644 --- a/modules/sdk-coin-rbtc/package.json +++ b/modules/sdk-coin-rbtc/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-rune/package.json b/modules/sdk-coin-rune/package.json index bc1bee64f1..06bc282a38 100644 --- a/modules/sdk-coin-rune/package.json +++ b/modules/sdk-coin-rune/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-rune/test/unit/rune.ts b/modules/sdk-coin-rune/test/unit/rune.ts index 0b71ba4d17..6724c0b93e 100644 --- a/modules/sdk-coin-rune/test/unit/rune.ts +++ b/modules/sdk-coin-rune/test/unit/rune.ts @@ -10,7 +10,7 @@ import { RuneUtils } from '../../src/lib/utils'; import { mainnetAddress } from '../resources/rune'; import { TEST_SEND_TX, TEST_TX_WITH_MEMO, testnetAddress, wrwUser } from '../resources/trune'; const bech32 = require('bech32-buffer'); -import should = require('should'); +import should from 'should'; describe('Rune', function () { let bitgo: TestBitGoAPI; diff --git a/modules/sdk-coin-sei/package.json b/modules/sdk-coin-sei/package.json index 040e73333b..50e7402b38 100644 --- a/modules/sdk-coin-sei/package.json +++ b/modules/sdk-coin-sei/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-sei/test/unit/sei.ts b/modules/sdk-coin-sei/test/unit/sei.ts index e19467f946..e540dfd4b8 100644 --- a/modules/sdk-coin-sei/test/unit/sei.ts +++ b/modules/sdk-coin-sei/test/unit/sei.ts @@ -17,7 +17,7 @@ import { TEST_WITHDRAW_REWARDS_TX, wrwUser, } from '../resources/sei'; -import should = require('should'); +import should from 'should'; describe('SEI', function () { let bitgo: TestBitGoAPI; diff --git a/modules/sdk-coin-sgb/package.json b/modules/sdk-coin-sgb/package.json index 35c7582e54..28ef38c129 100644 --- a/modules/sdk-coin-sgb/package.json +++ b/modules/sdk-coin-sgb/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-sol/package.json b/modules/sdk-coin-sol/package.json index b3e12ae07f..9a936a507b 100644 --- a/modules/sdk-coin-sol/package.json +++ b/modules/sdk-coin-sol/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-soneium/package.json b/modules/sdk-coin-soneium/package.json index 2476bc062d..964dabd1eb 100644 --- a/modules/sdk-coin-soneium/package.json +++ b/modules/sdk-coin-soneium/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-stt/package.json b/modules/sdk-coin-stt/package.json index e138035dc0..bc270f639c 100644 --- a/modules/sdk-coin-stt/package.json +++ b/modules/sdk-coin-stt/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-stx/package.json b/modules/sdk-coin-stx/package.json index d939a0dbbe..979e2c9ecb 100644 --- a/modules/sdk-coin-stx/package.json +++ b/modules/sdk-coin-stx/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-sui/package.json b/modules/sdk-coin-sui/package.json index e3be6494b0..88f5d89d8b 100644 --- a/modules/sdk-coin-sui/package.json +++ b/modules/sdk-coin-sui/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-sui/test/local_fullnode/RpcClient.ts b/modules/sdk-coin-sui/test/local_fullnode/RpcClient.ts index f82a71cf17..f50b418e69 100644 --- a/modules/sdk-coin-sui/test/local_fullnode/RpcClient.ts +++ b/modules/sdk-coin-sui/test/local_fullnode/RpcClient.ts @@ -24,8 +24,11 @@ function unwrapResult(method: string, v: { result: A } | { error: { code: num } export class RpcError extends Error { - constructor(public rpcError: { code: number; message: string }) { + public rpcError: { code: number; message: string }; + + constructor(rpcError: { code: number; message: string }) { super(`RPC error: ${rpcError.message} (code=${rpcError.code})`); + this.rpcError = rpcError; } static isRpcErrorWithCode(e: Error, code: number): boolean { @@ -44,10 +47,13 @@ export type Coin = { /** Wrapper around https://docs.sui.io/sui-jsonrpc */ export class RpcClient { + public url: string; // Running counter, increments every request id = 0; - constructor(public url: string) {} + constructor(url: string) { + this.url = url; + } static async createCheckedConnection(url: string): Promise { const rpcClient = new RpcClient(url); diff --git a/modules/sdk-coin-sui/test/local_fullnode/faucet.ts b/modules/sdk-coin-sui/test/local_fullnode/faucet.ts index fa13c21c40..691d226fbf 100644 --- a/modules/sdk-coin-sui/test/local_fullnode/faucet.ts +++ b/modules/sdk-coin-sui/test/local_fullnode/faucet.ts @@ -1,7 +1,10 @@ import axios from 'axios'; export class Faucet { - constructor(public url: string) {} + public url: string; + constructor(url: string) { + this.url = url; + } async getCoins(address: string, amount: number): Promise { await axios.post(this.url + '/gas', { FixedAmountRequest: { recipient: address } }); diff --git a/modules/sdk-coin-tao/package.json b/modules/sdk-coin-tao/package.json index fd47bcc3b7..4f8cb1e278 100644 --- a/modules/sdk-coin-tao/package.json +++ b/modules/sdk-coin-tao/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=14 <23" + "node": ">=14 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-tao/test/unit/tao.ts b/modules/sdk-coin-tao/test/unit/tao.ts index 8aa0bf706e..ce5411187e 100644 --- a/modules/sdk-coin-tao/test/unit/tao.ts +++ b/modules/sdk-coin-tao/test/unit/tao.ts @@ -1,4 +1,4 @@ -import should = require('should'); +import should from 'should'; import { TestBitGo, TestBitGoAPI } from '@bitgo/sdk-test'; import { BitGoAPI } from '@bitgo/sdk-api'; import { Tao, Ttao } from '../../src'; diff --git a/modules/sdk-coin-tia/package.json b/modules/sdk-coin-tia/package.json index 9fc4e60c0a..bcca1ea461 100644 --- a/modules/sdk-coin-tia/package.json +++ b/modules/sdk-coin-tia/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-tia/test/unit/tia.ts b/modules/sdk-coin-tia/test/unit/tia.ts index 4bf7b3e3d1..69ccf173db 100644 --- a/modules/sdk-coin-tia/test/unit/tia.ts +++ b/modules/sdk-coin-tia/test/unit/tia.ts @@ -21,8 +21,8 @@ import { TEST_WITHDRAW_REWARDS_TX, wrwUser, } from '../resources/tia'; -import should = require('should'); -import nock = require('nock'); +import should from 'should'; +import nock from 'nock'; describe('TIA', function () { let bitgo: TestBitGoAPI; diff --git a/modules/sdk-coin-ton/package.json b/modules/sdk-coin-ton/package.json index a7e9f11a23..9451c1a283 100644 --- a/modules/sdk-coin-ton/package.json +++ b/modules/sdk-coin-ton/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-trx/package.json b/modules/sdk-coin-trx/package.json index e6c4a3d95b..8265631286 100644 --- a/modules/sdk-coin-trx/package.json +++ b/modules/sdk-coin-trx/package.json @@ -14,14 +14,14 @@ "prepare": "npm run build-ts && shx cp -r ./resources ./dist", "test": "npm run coverage", "coverage": "nyc -- npm run unit-test", - "unit-test": "yarn run build && node --test", + "unit-test": "yarn run build && node --test dist/test/**/*.js", "gen-protobuf": "pbjs -t static-module -w commonjs -o ./resources/protobuf/tron.js ./resources/protobuf/Discover.proto ./resources/protobuf/Contract.proto ./resources/protobuf/tron.proto", "gen-protobufts": "pbts -o ./resources/protobuf/tron.d.ts ./resources/protobuf/tron.js" }, "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-vet/package.json b/modules/sdk-coin-vet/package.json index 7ded2e6234..25c978a63c 100644 --- a/modules/sdk-coin-vet/package.json +++ b/modules/sdk-coin-vet/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-wemix/package.json b/modules/sdk-coin-wemix/package.json index 1d7917d0e0..56b338fe31 100644 --- a/modules/sdk-coin-wemix/package.json +++ b/modules/sdk-coin-wemix/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-world/package.json b/modules/sdk-coin-world/package.json index e0757c55f7..6bd247edfb 100644 --- a/modules/sdk-coin-world/package.json +++ b/modules/sdk-coin-world/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-xdc/package.json b/modules/sdk-coin-xdc/package.json index 9c2d267147..f7b7a645f4 100644 --- a/modules/sdk-coin-xdc/package.json +++ b/modules/sdk-coin-xdc/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-xlm/package.json b/modules/sdk-coin-xlm/package.json index 6f83e89619..59efa2c744 100644 --- a/modules/sdk-coin-xlm/package.json +++ b/modules/sdk-coin-xlm/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-xrp/package.json b/modules/sdk-coin-xrp/package.json index 311d25621b..ba3937a3b2 100644 --- a/modules/sdk-coin-xrp/package.json +++ b/modules/sdk-coin-xrp/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-xtz/package.json b/modules/sdk-coin-xtz/package.json index 0af3a4a3f1..10b8568ce3 100644 --- a/modules/sdk-coin-xtz/package.json +++ b/modules/sdk-coin-xtz/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-zec/package.json b/modules/sdk-coin-zec/package.json index 5406594ae3..35c78e2d64 100644 --- a/modules/sdk-coin-zec/package.json +++ b/modules/sdk-coin-zec/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-zeta/package.json b/modules/sdk-coin-zeta/package.json index f0427c5e04..f5ca55eb8a 100644 --- a/modules/sdk-coin-zeta/package.json +++ b/modules/sdk-coin-zeta/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-coin-zeta/test/unit/zeta.ts b/modules/sdk-coin-zeta/test/unit/zeta.ts index a29d2df4ca..39e2623780 100644 --- a/modules/sdk-coin-zeta/test/unit/zeta.ts +++ b/modules/sdk-coin-zeta/test/unit/zeta.ts @@ -20,8 +20,8 @@ import { mockAccountDetailsResponse, wrwUser, } from '../resources/zeta'; -import should = require('should'); -import nock = require('nock'); +import should from 'should'; +import nock from 'nock'; describe('Zeta', function () { let bitgo: TestBitGoAPI; diff --git a/modules/sdk-coin-zketh/package.json b/modules/sdk-coin-zketh/package.json index 34d43014e1..f797dcab53 100644 --- a/modules/sdk-coin-zketh/package.json +++ b/modules/sdk-coin-zketh/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=16 <23" + "node": ">=16 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-core/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.ts b/modules/sdk-core/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.ts index f8b068dd68..9032b13b1a 100644 --- a/modules/sdk-core/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.ts +++ b/modules/sdk-core/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.ts @@ -1,4 +1,4 @@ -import { bip32, BIP32Interface, ECPair, ECPairInterface } from '@bitgo/secp256k1'; +import { bip32, type BIP32Interface, ECPair, type ECPairInterface } from '@bitgo/secp256k1'; import * as Crypto from '../util/crypto'; import { KeyPairOptions, ExtendedKeys } from './iface'; import { BaseKeyPair } from './baseKeyPair'; diff --git a/modules/sdk-core/src/bitgo/bitcoin.ts b/modules/sdk-core/src/bitgo/bitcoin.ts index da4687909b..907f482558 100644 --- a/modules/sdk-core/src/bitgo/bitcoin.ts +++ b/modules/sdk-core/src/bitgo/bitcoin.ts @@ -3,7 +3,7 @@ */ import * as utxolib from '@bitgo/utxo-lib'; -import { BIP32Interface, ECPairInterface } from '@bitgo/utxo-lib'; +import type { BIP32Interface, ECPairInterface } from '@bitgo/utxo-lib'; import * as common from '../common'; import { V1Network } from './types'; diff --git a/modules/sdk-core/src/bitgo/ecdh.ts b/modules/sdk-core/src/bitgo/ecdh.ts index 983662fa91..8887140310 100644 --- a/modules/sdk-core/src/bitgo/ecdh.ts +++ b/modules/sdk-core/src/bitgo/ecdh.ts @@ -14,7 +14,7 @@ import * as assert from 'assert'; import * as secp256k1 from 'secp256k1'; -import { ECPairInterface, BIP32Interface, bip32, ECPair } from '@bitgo/utxo-lib'; +import { type ECPairInterface, type BIP32Interface, bip32, ECPair } from '@bitgo/utxo-lib'; /** * Calculate the Elliptic Curve Diffie Hellman diff --git a/modules/sdk-core/src/bitgo/legacyBitcoin.ts b/modules/sdk-core/src/bitgo/legacyBitcoin.ts index be02ffcf72..b3d29d02ab 100644 --- a/modules/sdk-core/src/bitgo/legacyBitcoin.ts +++ b/modules/sdk-core/src/bitgo/legacyBitcoin.ts @@ -1,5 +1,5 @@ import * as utxolib from '@bitgo/utxo-lib'; -import { bip32, BIP32Interface, ECPairInterface } from '@bitgo/utxo-lib'; +import { bip32, type BIP32Interface, type ECPairInterface } from '@bitgo/utxo-lib'; import { sanitizeLegacyPath } from '../api'; import * as bitcoinUtil from './bitcoin'; diff --git a/modules/sdk-core/src/bitgo/recovery/initiate.ts b/modules/sdk-core/src/bitgo/recovery/initiate.ts index c94ef4de2f..8184ae61e2 100644 --- a/modules/sdk-core/src/bitgo/recovery/initiate.ts +++ b/modules/sdk-core/src/bitgo/recovery/initiate.ts @@ -2,7 +2,7 @@ * @prettier */ -import { bip32, BIP32Interface } from '@bitgo/utxo-lib'; +import { bip32, type BIP32Interface } from '@bitgo/utxo-lib'; import { BaseCoin } from '../baseCoin'; import { BitGoBase } from '../bitgoBase'; import { KrsProvider, krsProviders } from '../config'; diff --git a/modules/sdk-core/test/unit/account-lib/mpc/tss/ecdsa/fixtures.ts b/modules/sdk-core/test/unit/account-lib/mpc/tss/ecdsa/fixtures.ts index 1bc31a204b..4c9b761cb3 100644 --- a/modules/sdk-core/test/unit/account-lib/mpc/tss/ecdsa/fixtures.ts +++ b/modules/sdk-core/test/unit/account-lib/mpc/tss/ecdsa/fixtures.ts @@ -1,4 +1,4 @@ -import { KeyPair, PrivateKey, PublicKey } from 'paillier-bigint'; +import { PrivateKey, PublicKey } from 'paillier-bigint'; const publicKeys: PublicKey[] = [ new PublicKey( @@ -27,7 +27,7 @@ const publicKeys: PublicKey[] = [ ), ]; -export const paillierKeyPairs: KeyPair[] = [ +export const paillierKeyPairs = [ { publicKey: publicKeys[0], privateKey: new PrivateKey( diff --git a/modules/sdk-lib-mpc/package.json b/modules/sdk-lib-mpc/package.json index 3290077343..4d00f74b9e 100644 --- a/modules/sdk-lib-mpc/package.json +++ b/modules/sdk-lib-mpc/package.json @@ -55,7 +55,7 @@ "@bitgo/sdk-opensslbytes": "^2.0.0", "@silencelaboratories/dkls-wasm-ll-bundler": "1.2.0-pre.4", "@types/lodash": "^4.14.151", - "@types/node": "^22.15.29", + "@types/node": "^24.0.4", "@types/sjcl": "1.0.34", "nyc": "^15.0.0", "sjcl": "1.0.8" diff --git a/modules/sdk-rpc-wrapper/package.json b/modules/sdk-rpc-wrapper/package.json index e5671d89d1..b3cdb5e5cc 100644 --- a/modules/sdk-rpc-wrapper/package.json +++ b/modules/sdk-rpc-wrapper/package.json @@ -23,7 +23,7 @@ "author": "Bitgo DEFI Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/modules/sdk-rpc-wrapper/test/unit/evmRPCWrapper.ts b/modules/sdk-rpc-wrapper/test/unit/evmRPCWrapper.ts index 09f04473a4..fec5b4f55a 100644 --- a/modules/sdk-rpc-wrapper/test/unit/evmRPCWrapper.ts +++ b/modules/sdk-rpc-wrapper/test/unit/evmRPCWrapper.ts @@ -22,7 +22,7 @@ import { txRequestForTypedDataSigning, transactionOptions, } from '../fixtures/evmRPCWrapperFixtures'; -import nock = require('nock'); +import nock from 'nock'; import { personal_sign, eth_signTypedData, eth_sendTransaction } from '../../src/constants'; describe('EVMRPCWrapper handleRPCCall', function () { diff --git a/modules/secp256k1/package.json b/modules/secp256k1/package.json index dd69d38f41..5a87bba82c 100644 --- a/modules/secp256k1/package.json +++ b/modules/secp256k1/package.json @@ -4,7 +4,7 @@ "description": "Low-level cryptographic methods used in BitGo packages for the secp256k1 curve", "main": "./dist/src/index.js", "engines": { - "node": ">=10.22.0 <23", + "node": ">=10.22.0 < 25", "npm": ">=3.10.10" }, "keywords": [ diff --git a/modules/statics/src/base.ts b/modules/statics/src/base.ts index c6f2632f3b..367e7cd2ff 100644 --- a/modules/statics/src/base.ts +++ b/modules/statics/src/base.ts @@ -6,10 +6,14 @@ import { } from './errors'; import { BaseNetwork } from './networks'; -export enum CoinKind { - CRYPTO = 'crypto', - FIAT = 'fiat', -} +export const CoinKind = { + CRYPTO: 'crypto', + FIAT: 'fiat', +} as const; + +export type CoinKindKey = keyof typeof CoinKind; +export type CoinKindValue = (typeof CoinKind)[keyof typeof CoinKind]; +export type CoinKind = CoinKindValue; /** * The coin family links related variants of a single coin together. @@ -19,92 +23,96 @@ export enum CoinKind { * * For example, the coins `btc` and `tbtc` both belong to the same family, `btc`. */ -export enum CoinFamily { - ADA = 'ada', - APECHAIN = 'apechain', - ALGO = 'algo', - APT = 'apt', - ARBETH = 'arbeth', - ASI = 'asi', - ATOM = 'atom', - AVAXC = 'avaxc', - AVAXP = 'avaxp', - BASEETH = 'baseeth', - BABY = 'baby', - BCH = 'bch', - BCHA = 'bcha', - BERA = 'bera', - BLD = 'bld', // Agoric - BSC = 'bsc', - BSV = 'bsv', - BTC = 'btc', - BTG = 'btg', - CELO = 'celo', - COREDAO = 'coredao', - COREUM = 'coreum', - CRONOS = 'cronos', - CSPR = 'cspr', - DASH = 'dash', - DOGE = 'doge', - DOT = 'dot', - ETH = 'eth', - ETH2 = 'eth2', - ETHW = 'ethw', - ETC = 'etc', - EOS = 'eos', - FETCHAI = 'fetchai', - FIAT = 'fiat', - FLR = 'flr', - HASH = 'hash', // Provenance - HBAR = 'hbar', - ICP = 'icp', - INITIA = 'initia', - INJECTIVE = 'injective', - IRYS = 'irys', - ISLM = 'islm', - KAIA = 'kaia', - KAVA = 'kava', - LNBTC = 'lnbtc', - LTC = 'ltc', - MANTRA = 'mantra', - MON = 'mon', - POLYGON = 'polygon', - POLYX = 'polyx', - PHRS = 'phrs', - CTC = 'ctc', - HYPEEVM = 'hypeevm', - NEAR = 'near', - OAS = 'oas', - OFC = 'ofc', - OPETH = 'opeth', - OSMO = 'osmo', - RBTC = 'rbtc', - SGB = 'sgb', - SEI = 'sei', - SEIEVM = 'seievm', - SOL = 'sol', - SONIC = 'sonic', - SONEIUM = 'soneium', - STT = 'stt', - SUI = 'sui', - STX = 'stx', - SUSD = 'susd', - TAO = 'tao', - THOR = 'thor', - TIA = 'tia', // Celestia - TON = 'ton', - TRX = 'trx', - VET = 'vet', - WORLD = 'world', - WEMIX = 'wemix', - XDC = 'xdc', - XLM = 'xlm', - XRP = 'xrp', - XTZ = 'xtz', - ZEC = 'zec', - ZETA = 'zeta', - ZKETH = 'zketh', -} +export const CoinFamily = { + ADA: 'ada', + APECHAIN: 'apechain', + ALGO: 'algo', + APT: 'apt', + ARBETH: 'arbeth', + ASI: 'asi', + ATOM: 'atom', + AVAXC: 'avaxc', + AVAXP: 'avaxp', + BASEETH: 'baseeth', + BABY: 'baby', + BCH: 'bch', + BCHA: 'bcha', + BERA: 'bera', + BLD: 'bld', // Agoric + BSC: 'bsc', + BSV: 'bsv', + BTC: 'btc', + BTG: 'btg', + CELO: 'celo', + COREDAO: 'coredao', + COREUM: 'coreum', + CRONOS: 'cronos', + CSPR: 'cspr', + DASH: 'dash', + DOGE: 'doge', + DOT: 'dot', + ETH: 'eth', + ETH2: 'eth2', + ETHW: 'ethw', + ETC: 'etc', + EOS: 'eos', + FETCHAI: 'fetchai', + FIAT: 'fiat', + FLR: 'flr', + HASH: 'hash', // Provenance + HBAR: 'hbar', + ICP: 'icp', + INITIA: 'initia', + INJECTIVE: 'injective', + IRYS: 'irys', + ISLM: 'islm', + KAIA: 'kaia', + KAVA: 'kava', + LNBTC: 'lnbtc', + LTC: 'ltc', + MANTRA: 'mantra', + MON: 'mon', + POLYGON: 'polygon', + POLYX: 'polyx', + PHRS: 'phrs', + CTC: 'ctc', + HYPEEVM: 'hypeevm', + NEAR: 'near', + OAS: 'oas', + OFC: 'ofc', + OPETH: 'opeth', + OSMO: 'osmo', + RBTC: 'rbtc', + SGB: 'sgb', + SEI: 'sei', + SEIEVM: 'seievm', + SOL: 'sol', + SONIC: 'sonic', + SONEIUM: 'soneium', + STT: 'stt', + SUI: 'sui', + STX: 'stx', + SUSD: 'susd', + TAO: 'tao', + THOR: 'thor', + TIA: 'tia', // Celestia + TON: 'ton', + TRX: 'trx', + VET: 'vet', + WORLD: 'world', + WEMIX: 'wemix', + XDC: 'xdc', + XLM: 'xlm', + XRP: 'xrp', + XTZ: 'xtz', + ZEC: 'zec', + ZETA: 'zeta', + ZKETH: 'zketh', +} as const; + +export type CoinFamilyKey = keyof typeof CoinFamily; +export type CoinFamilyValue = (typeof CoinFamily)[keyof typeof CoinFamily]; +export type CoinFamily = CoinFamilyValue; /** * Coin features are yes or no questions about what a coin requires or is capable of. @@ -114,37 +122,37 @@ export enum CoinFamily { * before executing some coin-specific logic, and instead allows one to check if a * coin supports the coin-specific feature that the logic implements. */ -export enum CoinFeature { +export const CoinFeature = { /* * This coin supports creating wallets on different networks with the same keys. Only works for TSS account-base coins */ - EVM_WALLET = 'evm-wallet', + EVM_WALLET: 'evm-wallet', /* * This coin supports creating an EVM transaction using Metamask Institutional (MMI). */ - METAMASK_INSTITUTIONAL = 'metamask-institutional', + METAMASK_INSTITUTIONAL: 'metamask-institutional', /* * The valueless transfer feature indicates that it is valid to send a transaction which moves zero units of the coin. * * An example is Ethereum, which uses zero value transactions to trigger contract calls. */ - VALUELESS_TRANSFER = 'valueless-transfer', + VALUELESS_TRANSFER: 'valueless-transfer', /* * Transaction data means there can be arbitrary data encoded in a transaction. * * Ethereum contract call data is an example. */ - TRANSACTION_DATA = 'transaction-data', + TRANSACTION_DATA: 'transaction-data', /* * Some coins have a higher precision range than IEEE 754 doubles, which are used to represent numbers in javascript. * * For these coins, we must use an arbitrary precision arithmetic library, and this feature indicates this requirement. */ - REQUIRES_BIG_NUMBER = 'requires-big-number', + REQUIRES_BIG_NUMBER: 'requires-big-number', /* * RMG requires all wallets to have a backup key held by a BitGo approved Key Recovery Service (KRS) */ - REQUIRES_KRS_BACKUP_KEY = 'requires-krs-backup-key', + REQUIRES_KRS_BACKUP_KEY: 'requires-krs-backup-key', /* * For customers which are not on a postpaid contract, we add an extra output to transactions which pays BitGo a fee. * @@ -152,25 +160,25 @@ export enum CoinFeature { * * Some coins are unable to create transactions with more than one output, so paygo outputs are not possible for these coins. */ - PAYGO = 'paygo', + PAYGO: 'paygo', /* * Does this coin align with the unspent model? * * These are typically Bitcoin and forks of it, such as Litecoin and Bitcoin Cash. */ - UNSPENT_MODEL = 'unspent-model', + UNSPENT_MODEL: 'unspent-model', /* * Does this coin align with the Lightning Network model? * * These are typically Lightning Network on unspent model coins, such as BTC and LBTC. */ - LIGHTNING_MODEL = 'lightning-model', + LIGHTNING_MODEL: 'lightning-model', /* * Does this coin align with the account model? * * Examples of this coin type are Ethereum, XRP, and Stellar */ - ACCOUNT_MODEL = 'account-model', + ACCOUNT_MODEL: 'account-model', /* * Does this coin support child-pays-for-parent transactions? * @@ -179,21 +187,21 @@ export enum CoinFeature { * * This is only possible for coins which follow the unspent model (UTXO coins). */ - CHILD_PAYS_FOR_PARENT = 'cpfp', + CHILD_PAYS_FOR_PARENT: 'cpfp', /* * Does this coin support tokens? These are distinct assets from the underlying coin, but run on the same network. * * For example, Ethereum's ERC 20 token standard means that it supports tokens, so it shall have this feature. */ - SUPPORTS_TOKENS = 'supports-tokens', + SUPPORTS_TOKENS: 'supports-tokens', /* * Are fees for transactions of this coin paid for by the Enterprise (eg, Enterprise gas tank)? */ - ENTERPRISE_PAYS_FEES = 'enterprise-pays-fees', + ENTERPRISE_PAYS_FEES: 'enterprise-pays-fees', /* * This coin requires that accounts keep a minimum balance as reserve */ - REQUIRES_RESERVE = 'requires-reserve', + REQUIRES_RESERVE: 'requires-reserve', /** * @deprecated This property is no longer valid. Please select the following custody option based on the BitGo org: * * CUSTODY_BITGO_TRUST @@ -201,223 +209,227 @@ export enum CoinFeature { * * CUSTODY_BITGO_GERMANY * * CUSTODY_BITGO_SWITZERLAND */ - CUSTODY = 'custody', + CUSTODY: 'custody', /* This coin uses TSS for key creation and signing */ - TSS = 'tss', + TSS: 'tss', /* * This coin supports staking */ - STAKING = 'staking', + STAKING: 'staking', /* * This coin supports liquid staking */ - LIQUID_STAKING = 'liquid-staking', + LIQUID_STAKING: 'liquid-staking', /** * This coin is deprecated */ - DEPRECATED = 'deprecated', + DEPRECATED: 'deprecated', /** * This coin is a dummy object meant to be a placeholder for an unsupported token */ - GENERIC_TOKEN = 'genericToken', + GENERIC_TOKEN: 'genericToken', /* * This coin supports custody in BitGo Trust SD entities */ - CUSTODY_BITGO_TRUST = 'custody-bitgo-trust', + CUSTODY_BITGO_TRUST: 'custody-bitgo-trust', /* * This coin supports custody in BitGo New York entities */ - CUSTODY_BITGO_NEW_YORK = 'custody-bitgo-new-york', + CUSTODY_BITGO_NEW_YORK: 'custody-bitgo-new-york', /* * This coin supports custody in BitGo Germany entities */ - CUSTODY_BITGO_GERMANY = 'custody-bitgo-germany', + CUSTODY_BITGO_GERMANY: 'custody-bitgo-germany', /* * This coin supports custody in BitGo Switzerland entities */ - CUSTODY_BITGO_SWITZERLAND = 'custody-bitgo-switzerland', + CUSTODY_BITGO_SWITZERLAND: 'custody-bitgo-switzerland', /* * This coin supports custody in BitGo Switzerland entities */ - CUSTODY_BITGO_FRANKFURT = 'custody-bitgo-frankfurt', + CUSTODY_BITGO_FRANKFURT: 'custody-bitgo-frankfurt', /* * This coin supports custody in BitGo Singapore entities */ - CUSTODY_BITGO_SINGAPORE = 'custody-bitgo-singapore', + CUSTODY_BITGO_SINGAPORE: 'custody-bitgo-singapore', /* * This coin supports custody in BitGo Sister Trust 1 entities */ - CUSTODY_BITGO_SISTER_TRUST_ONE = 'custody-bitgo-sister-trust-one', + CUSTODY_BITGO_SISTER_TRUST_ONE: 'custody-bitgo-sister-trust-one', /** * This coin supports custody in BitGo Korea entities */ - CUSTODY_BITGO_KOREA = 'custody-bitgo-korea', + CUSTODY_BITGO_KOREA: 'custody-bitgo-korea', /** * This coin supports custody in BitGo Europe ApS entities */ - CUSTODY_BITGO_EUROPE_APS = 'custody-bitgo-europe-aps', + CUSTODY_BITGO_EUROPE_APS: 'custody-bitgo-europe-aps', /** * This coin supports custody in BitGo MENA FZE entities */ - CUSTODY_BITGO_MENA_FZE = 'custody-bitgo-mena-fze', + CUSTODY_BITGO_MENA_FZE: 'custody-bitgo-mena-fze', /** * This coin supports custody in BitGo Custody MENA FZE entities */ - CUSTODY_BITGO_CUSTODY_MENA_FZE = 'custody-bitgo-custody-mena-fze', + CUSTODY_BITGO_CUSTODY_MENA_FZE: 'custody-bitgo-custody-mena-fze', /* * This coin has transactions that expire after a certain amount of time. */ - EXPIRING_TRANSACTIONS = 'expiring-transactions', + EXPIRING_TRANSACTIONS: 'expiring-transactions', /** * This coin supports cold wallets that use a multisig signing protocol */ - MULTISIG_COLD = 'multisig-cold', + MULTISIG_COLD: 'multisig-cold', /** * This coin supports cold wallets that use a TSS signing protocol */ - TSS_COLD = 'tss-cold', + TSS_COLD: 'tss-cold', /** * This coin uses sha256 hash function for ECDSA TSS signatures */ - SHA256_WITH_ECDSA_TSS = 'sha256-with-ecdsa-tss', + SHA256_WITH_ECDSA_TSS: 'sha256-with-ecdsa-tss', /** * This coin is cosmos like coin */ - COSMOS_LIKE_COINS = 'cosmos_like_coins', + COSMOS_LIKE_COINS: 'cosmos_like_coins', /** * This coin supports the ability to rebuild transactions on custody signing */ - REBUILD_ON_CUSTODY_SIGNING = 'rebuild-on-custody-signing', + REBUILD_ON_CUSTODY_SIGNING: 'rebuild-on-custody-signing', /** * This coin supports higher limit for tx request rebuild, which is 10 by default */ - INCREASED_TX_REQUEST_REBUILD_LIMIT = 'increased-tx-request-rebuild-limit', + INCREASED_TX_REQUEST_REBUILD_LIMIT: 'increased-tx-request-rebuild-limit', /** * This coin supports bulk transaction creation */ - BULK_TRANSACTION = 'bulk-transaction', + BULK_TRANSACTION: 'bulk-transaction', /** * This coin supports bulk ERC20 token transactions (token batching) */ - ERC20_BULK_TRANSACTION = 'erc20-bulk-transaction', + ERC20_BULK_TRANSACTION: 'erc20-bulk-transaction', /** * This coin supports distributed custody wallets */ - DISTRIBUTED_CUSTODY = 'distributed-custody', + DISTRIBUTED_CUSTODY: 'distributed-custody', /** * This coin supports bulk staking transaction creation */ - BULK_STAKING_TRANSACTION = 'bulk-staking-transaction', + BULK_STAKING_TRANSACTION: 'bulk-staking-transaction', /** * This coin uses non-packed encoding for transaction data */ - USES_NON_PACKED_ENCODING_FOR_TXDATA = 'uses-non-packed-encoding-for-txdata', + USES_NON_PACKED_ENCODING_FOR_TXDATA: 'uses-non-packed-encoding-for-txdata', /** * This coins supports MPCv2 for key creation and signing */ - MPCV2 = 'mpcv2', + MPCV2: 'mpcv2', /** * This coin supports acceleration or nonce filling txn for stuck transactions for tss wallet */ - STUCK_TRANSACTION_MANAGEMENT_TSS = 'stuck-transaction-management-tss', + STUCK_TRANSACTION_MANAGEMENT_TSS: 'stuck-transaction-management-tss', /** * This coin supports acceleration or nonce filling txn for stuck transactions for onchain wallet */ - STUCK_TRANSACTION_MANAGEMENT_ONCHAIN = 'stuck-transaction-management-onchain', + STUCK_TRANSACTION_MANAGEMENT_ONCHAIN: 'stuck-transaction-management-onchain', /** * This coin is onboarded on etheruem rollup chain */ - ETH_ROLLUP_CHAIN = 'eth-rollup-chain', + ETH_ROLLUP_CHAIN: 'eth-rollup-chain', /** * This coin supports EIP1559 proposal for transaction fee */ - EIP1559 = 'EIP1559', + EIP1559: 'EIP1559', /** * Fees for transactions of TSS wallet of this coin would be paid by the Enterprise i.e. Gas Tank */ - TSS_ENTERPRISE_PAYS_FEES = 'tss-enterprise-pays-fees', + TSS_ENTERPRISE_PAYS_FEES: 'tss-enterprise-pays-fees', /** * This coin supports alphanumeric memo id */ - ALPHANUMERIC_MEMO_ID = 'alphanumeric-memo-id', + ALPHANUMERIC_MEMO_ID: 'alphanumeric-memo-id', /** * This coin supports WalletConnect */ - WALLET_CONNECT_DEFI = 'wallet-connect-defi', + WALLET_CONNECT_DEFI: 'wallet-connect-defi', /** * This coin is gated for TSS Support */ - TSS_SUPPORT_GATED = 'tss-support-gated', + TSS_SUPPORT_GATED: 'tss-support-gated', /** * This coin is gated for Multisig Support */ - MULTISIG_SUPPORT_GATED = 'multisig-support-gated', + MULTISIG_SUPPORT_GATED: 'multisig-support-gated', /** * This coins is an EVM compatible coin and should use common EVM functionality */ - SHARED_EVM_SIGNING = 'shared-evm-signing', + SHARED_EVM_SIGNING: 'shared-evm-signing', /** * This coin is an EVM compatible coin and should use common EVM SDK module */ - SHARED_EVM_SDK = 'shared-evm-sdk', + SHARED_EVM_SDK: 'shared-evm-sdk', /** * This coin is a Cosmos coin and should use shared Cosmos SDK module */ - SHARED_COSMOS_SDK = 'shared-cosmos-sdk', + SHARED_COSMOS_SDK: 'shared-cosmos-sdk', /** * This coin is EVM based coin */ - EVM_COIN = 'evm_coin', + EVM_COIN: 'evm_coin', /** * This coin supports multisig wallets */ - MULTISIG = 'multisig', + MULTISIG: 'multisig', /** * This coin is an EVM compatible coin and should use common EVM model registration in IMS */ - EVM_COMPATIBLE_IMS = 'evm-compatible-ims', + EVM_COMPATIBLE_IMS: 'evm-compatible-ims', /** * This coin is an EVM compatible coin which supports unsigned sweep recovery */ - EVM_UNSIGNED_SWEEP_RECOVERY = 'evm-unsigned-sweep-recovery', + EVM_UNSIGNED_SWEEP_RECOVERY: 'evm-unsigned-sweep-recovery', /** * This coin is an EVM compatible coin which supports non-bitgo recovery */ - EVM_NON_BITGO_RECOVERY = 'evm-non-bitgo-recovery', + EVM_NON_BITGO_RECOVERY: 'evm-non-bitgo-recovery', /** * This coin is a rebase token and should use the rebase token functionality */ - REBASE_TOKEN = 'rebase-token', -} + REBASE_TOKEN: 'rebase-token', +} as const; + +export type CoinFeatureKey = keyof typeof CoinFeature; +export type CoinFeatureValue = (typeof CoinFeature)[keyof typeof CoinFeature]; +export type CoinFeature = CoinFeatureValue; /** * Some coins are representations of another underlying asset class. An example @@ -426,2515 +438,2549 @@ export enum CoinFeature { * For these coins, the `UnderlyingAsset` provides a link to the actual * asset for which the coin is a unit of account. */ -export enum UnderlyingAsset { - INVALID_UNKNOWN = 'invalid_asset_type', - ADA = 'ada', - ALGO = 'algo', - APE = 'ape', - APECHAIN = 'apechain', - API3 = 'api3', - ARBETH = 'arbeth', - BASEETH = 'baseeth', - ASI = 'asi', - ATOM = 'atom', - AVAXC = 'avaxc', - AVAXP = 'avaxp', - AXL = 'AXL', - AXLV2 = 'axlv2', - BABY = 'baby', - BCH = 'bch', - BCHA = 'bcha', - BERA = 'bera', - BLD = 'bld', // Agoric - BSC = 'bsc', - BSV = 'bsv', - BTC = 'btc', - BTG = 'btg', - DASH = 'dash', - DOT = 'dot', - CELO = 'celo', // Celo main coin - COREDAO = 'coredao', - COREUM = 'coreum', - CRONOS = 'cronos', - CSPR = 'cspr', - ETH = 'eth', - ETH2 = 'eth2', - ETHW = 'ethw', - ETC = 'etc', - EOS = 'eos', - ERD = 'erd', - EURCVV0 = 'eurcvv0', - EURCV = 'eurcv', - EUROC = 'euroc', - EURR = 'eurr', - FETCHAI = 'fetchai', - FLR = 'flr', - GTC = 'gtc', - HASH = 'hash', // Provenance - HBAR = 'hbar', // Hedera main coin - ICP = 'icp', - INITIA = 'initia', - INJECTIVE = 'injective', - IRYS = 'irys', - ISLM = 'islm', - KAIA = 'kaia', - KAVA = 'kava', - LNBTC = 'lnbtc', - LTC = 'ltc', - MANTRA = 'mantra', - MON = 'mon', - NEAR = 'near', - OAS = 'oas', - OPETH = 'opeth', - OSMO = 'osmo', - POLYGON = 'polygon', - PHRS = 'phrs', - CTC = 'ctc', - HYPEEVM = 'hypeevm', - RBTC = 'rbtc', // RSK main coin - SEI = 'sei', - SEIEVM = 'seievm', - SGB = 'sgb', - SOL = 'sol', - SONIC = 'sonic', - SUI = 'sui', - STX = 'stx', - TIA = 'tia', // Celestia - TON = 'ton', - TRX = 'trx', - SONEIUM = 'soneium', - STT = 'stt', - VET = 'vet', - WEMIX = 'wemix', - WORLD = 'world', - XLM = 'xlm', - XDC = 'xdc', - XRP = 'xrp', - XTZ = 'xtz', - ZEC = 'zec', - ZETA = 'zeta', - ZKETH = 'zketh', +export const UnderlyingAsset = { + INVALID_UNKNOWN: 'invalid_asset_type', + ADA: 'ada', + ALGO: 'algo', + APE: 'ape', + APECHAIN: 'apechain', + API3: 'api3', + ARBETH: 'arbeth', + BASEETH: 'baseeth', + ASI: 'asi', + ATOM: 'atom', + AVAXC: 'avaxc', + AVAXP: 'avaxp', + AXL: 'AXL', + AXLV2: 'axlv2', + BABY: 'baby', + BCH: 'bch', + BCHA: 'bcha', + BERA: 'bera', + BLD: 'bld', // Agoric + BSC: 'bsc', + BSV: 'bsv', + BTC: 'btc', + BTG: 'btg', + DASH: 'dash', + DOT: 'dot', + CELO: 'celo', // Celo main coin + COREDAO: 'coredao', + COREUM: 'coreum', + CRONOS: 'cronos', + CSPR: 'cspr', + ETH: 'eth', + ETH2: 'eth2', + ETHW: 'ethw', + ETC: 'etc', + EOS: 'eos', + ERD: 'erd', + EURCVV0: 'eurcvv0', + EURCV: 'eurcv', + EUROC: 'euroc', + EURR: 'eurr', + FETCHAI: 'fetchai', + FLR: 'flr', + GTC: 'gtc', + HASH: 'hash', // Provenance + HBAR: 'hbar', // Hedera main coin + ICP: 'icp', + INITIA: 'initia', + INJECTIVE: 'injective', + IRYS: 'irys', + ISLM: 'islm', + KAIA: 'kaia', + KAVA: 'kava', + LNBTC: 'lnbtc', + LTC: 'ltc', + MANTRA: 'mantra', + MON: 'mon', + NEAR: 'near', + OAS: 'oas', + OPETH: 'opeth', + OSMO: 'osmo', + POLYGON: 'polygon', + PHRS: 'phrs', + CTC: 'ctc', + HYPEEVM: 'hypeevm', + RBTC: 'rbtc', // RSK main coin + SEI: 'sei', + SEIEVM: 'seievm', + SGB: 'sgb', + SOL: 'sol', + SONIC: 'sonic', + SUI: 'sui', + STX: 'stx', + TIA: 'tia', // Celestia + TON: 'ton', + TRX: 'trx', + SONEIUM: 'soneium', + STT: 'stt', + VET: 'vet', + WEMIX: 'wemix', + WORLD: 'world', + XLM: 'xlm', + XDC: 'xdc', + XRP: 'xrp', + XTZ: 'xtz', + ZEC: 'zec', + ZETA: 'zeta', + ZKETH: 'zketh', // ERC 20 tokens - '$Evmosia.com' = '$evmosia.com', - '0xREVIEW' = '0xreview', - '1INCH' = '1inch', - '1UP' = '1up', - '3CRV' = '3crv', - AAVE = 'aave', - ABT = 'abt', - ACE = 'ace', - ACEV2 = 'acev2', - ACX = 'acx', - ACXT = 'acxt', - ACH = 'ach', - ADABEAR = 'adabear', - ADABULL = 'adabull', - ADX = 'adx', - AE = 'ae', - AERGO = 'aergo', - AERGO1 = 'aergo1', - AGEUR = 'ageur', - AGI = 'agi', - AGIX = 'agix', - AGLD = 'agld', - AGWD = 'agwd', - AION = 'aion', - AJNA = 'ajna', - AKRO = 'akro', - ALCX = 'alcx', - ALD = 'ald', - ALDRIN = 'aldrin', - ALEPH = 'aleph', - ALGOBEAR = 'algobear', - ALGOBULL = 'algobull', - ALGODOOM = 'algodoom', - ALGOHEDGE = 'algohedge', - ALGOMOON = 'algomoon', - ALTDOOM = 'altdoom', - ALTMOON = 'altmoon', - ALI = 'ali', - ALICE = 'alice', - ALK = 'alk', - ALM = 'alm', - ALPHA = 'alpha', - ALTBEAR = 'altbear', - ALTBULL = 'altbull', - ALTHEDGE = 'althedge', - AMKT = 'amkt', - AMN = 'amn', - AMO = 'amo', - AMP = 'amp', - AMPL = 'ampl', - AMON = 'amon', - AMPX = 'ampx', - ANA = 'ana', - ANC = 'anc', - ANGLE = 'angle', - ANKR = 'ankr', - ANKRETH = 'ankreth', - ANML = 'anml', - ANT = 'ant', - ANTV2 = 'antv2', - AOA = 'aoa', - APPC = 'appc', - APT = 'apt', - AQT = 'aqt', - ARCT = 'arct', - ARCX = 'arcx', - ARKM = 'arkm', - ARMOR = 'armor', - ARPA = 'arpa', - ARTEQ = 'arteq', - ASD = 'asd', - AST = 'ast', - ASTO = 'asto', - ATA = 'ata', - ATF = 'atf', - ATH = 'ath', - ATL = 'atl', - ATLAS = 'atlas', - ATOMBEAR = 'atombear', - ATOMBULL = 'atombull', - ATRI = 'atri', - AUCTION = 'auction', - AUDD = 'audd', - AUDF = 'audf', - AUDIO = 'audio', - AUDX = 'audx', - AUSD = 'ausd', - AUSDT = 'ausdt', - AUST = 'aust', - AVA = 'ava', - AVT = 'avt', - AWBTC = 'awbtc', - AXPR = 'axpr', - AXS = 'axs', - AXSV2 = 'axsv2', - AYFI = 'ayfi', - AZUKI = 'azuki', - AZUKI2 = 'azuki2', - AZUKIPEPE = 'azukipepe', - BADGER = 'badger', - BAI = 'bai', - BAL = 'bal', - BAND = 'band', - BANK = 'bank', - BAO = 'bao', - BASIC = 'basic', - BAT = 'bat', - BAX = 'bax', - BBANK = 'bbank', - BBSAMO = 'bbsamo', - BBTC = 'BBTC', - BBX = 'bbx', - BCAP = 'bcap', - BCC = 'bcc', - BCHBEAR = 'bchbear', - BCHBULL = 'bchbull', - BCHDOOM = 'bchdoom', - BCHHEDGE = 'bchhedge', - BCHMOON = 'bchmoon', - BCIO = 'bcio', - BCUT = 'bcut', - BCT = 'bct', - BDXN = 'bdxn', - BEAM = 'beam', - BEAR = 'bear', - BEARSHIT = 'bearshit', - BED = 'bed', - BEND = 'bend', - BEPRO = 'bepro', - BETA = 'beta', - BGB = 'bgb', - BGBG = 'bgbg', - BICO = 'bico', - BID = 'bid', - BIDL = 'bidl', - BIGTIME = 'bigtime', - BIRD = 'bird', - BIT = 'bit', - BKT = 'bkt', - BKX = 'bkx', - BLCT = 'blct', - BLT = 'blt', - BLUR = 'blur', - BLUR0x083 = 'blur0x083', - BLUR0xb93 = 'blur0xb93', - BLZ = 'blz', - BNB = 'bnb', - BNBBEAR = 'bnbbear', - BNBBULL = 'bnbbull', - BNBDOOM = 'bnbdoom', - BNBHEDGE = 'bnbhedge', - BNBMOON = 'bnbmoon', - BNK = 'bnk', - BNL = 'bnl', - BNT = 'bnt', - BNTY = 'bnty', - BNVDA = 'bnvda', - BOB = 'bob', - BOND = 'bond', - BONK = 'bonk', - BONE = 'bone', - BORG = 'borg', - BOTTO = 'botto', - BLOCKS = 'blocks', - BOX = 'box', - BOBA = 'boba', - BRD = 'brd', - BRIBE = 'bribe', - BRZ = 'brz', - BSGG = 'bsgg', - BST = 'bst', - BSVBEAR = 'bsvbear', - BSVBULL = 'bsvbull', - BSVDOOM = 'bsvdoom', - BSVHEDGE = 'bsvhedge', - BSVMOON = 'bsvmoon', - BSX = 'bsx', - BTC2XFLI = 'btc2xfli', - BTMXBEAR = 'btmxbear', - BTMXBULL = 'btmxbull', - BTRST = 'btrst', - BTSG = 'btsg', - BTT = 'btt', - BTU = 'btu', - BUIDL = 'buidl', - BULL = 'bull', - BULLSHIT = 'bullshit', - BURP = 'burp', - BUSD = 'busd', - BUY = 'buy', - BPT = 'bpt', - BVOL = 'bvol', - BXX = 'bxx', - BXXV1 = 'bxxv1', - BZZ = 'bzz', - C3 = 'c3', - C6P = 'c6p', - C8P = 'c8p', - C98 = 'c98', - CACXT = 'cacxt', - CADX = 'cadx', - CAG = 'cag', - CANTO = 'canto', - CAPS = 'caps', - CARV = 'carv', - CASH = 'cash', - CBAT = 'cbat', - CBC = 'cbc', - CBETH = 'cbeth', - CBRL = 'cbrl', - CCAI = 'ccai', - CCT = 'cct', - CDAG = 'cdag', - CDAI = 'cdai', - CDAIV2 = 'cdaiV2', - CDT = 'cdt', - CEL = 'cel', - CELLS = 'cells', - CELR = 'celr', - CERE = 'cere', - CETH = 'ceth', - CFX = 'cfx', - CHAINLINK = 'chainlink', - CHART = 'chart', - CHO = 'cho', - CHFX = 'chfx', - CHR = 'chr', - CHSB = 'chsb', - CHZ = 'chz', - CIBO = 'cibo', - CIX100 = 'cix100', - CLIQ = 'cliq', - CLN = 'cln', - CLT = 'clt', - CLXY = 'clxy', - CLV = 'clv', - CMFI = 'cmfi', - CNFI = 'cnfi', - CNG = 'cng', - CNYX = 'cnyx', - COLLAR = 'collar', - COMBO = 'combo', - COMP = 'comp', - CONV = 'conv', - COPE = 'cope', - CORE = 'core', - COS = 'cos', - COTI = 'coti', - COVAL = 'coval', - COVER = 'cover', - COVERPROTOCOL = 'coverprotocol', - COW = 'cow', - CPAY = 'cpay', - CPLT = 'cplt', - CPOOL = 'cpool', - CQT = 'cqt', - CQX = 'cqx', - CRA = 'cra', - CRDT = 'crdt', - CRE = 'cre', - CREAM = 'cream', - CREP = 'crep', - CRI = 'cri', - CRO = 'cro', - CRV = 'crv', - CRPT = 'crpt', - CRPT1 = 'crpt1', - CSLV = 'cslv', - CSOL = 'csol', - CSP = 'csp', - CTSI = 'ctsi', - CTX = 'ctx', - CUBE = 'cube', - CUSD = 'cusd', - CUSDC = 'cusdc', - CVXFXS = 'cvxfxs', - CWAR = 'cwar', - CWBTC = 'cwbtc', - CVC = 'cvc', - CVX = 'cvx', - CXT = 'cxt', - CYBER = 'cyber', - CZRX = 'czrx', - DACXI = 'dacxi', - DADI = 'dadi', - DAMM = 'damm', - DAI = 'dai', - DAO = 'dao', - DAOLANG = 'daolang', - DAR = 'dar', - DATA = 'data', - DATAV2 = 'datav2', - DATAECON = 'dataecon', - DAWN = 'dawn', - DEC = 'dec', - DEGO = 'dego', - DENT = 'dent', - DEP = 'dep', - DEPAY = 'depay', - DEXA = 'dexa', - DEXE = 'dexe', - DFD = 'dfd', - DFI = 'dfi', - DFL = 'dfl', - DFX = 'dfx', - DGCL = 'dgcl', - DGD = 'dgd', - DGLD = 'dgld', - DGX = 'dgx', - DHT = 'dht', - DIGG = 'digg', - DIA = 'dia', - DING = 'ding', - DIPE = 'dipe', - DMG = 'dmg', - DMT = 'dmt', - DNA = 'dna', - DNT = 'dnt', - DODO = 'dodo', - DOG = 'dog', - DOGE = 'doge', - DOGEBEAR = 'dogebear', - DOGEBEAR2021 = 'dogebear2021', - DOGEBULL = 'dogebull', - DOMI = 'domi', - DOOM = 'doom', - DOOMSHIT = 'doomshit', - DOSE = 'dose', - DOTK = 'dotk', - DPAY = 'dpay', - DPI = 'dpi', - DPX = 'dpx', - DPY = 'dpy', - DRAM = 'dram', - DRGNBEAR = 'drgnbear', - DRGNBULL = 'drgnbull', - DRPU = 'drpu', - DRV = 'drv', - DUC = 'duc', - DUCK = 'duck', - DUSD = 'dusd', - DUSK = 'dusk', - DUST = 'dust', - DX1U = 'dx1u', - DXGT = 'dxgt', - DXO = 'dxo', - DXPT = 'dxpt', - DXST = 'dxst', - DYDX = 'dydx', - DYN = 'dyn', - EASY = 'easy', - EBTCQ = 'ebtcq', - ECHT = 'echt', - 'eth:eco' = 'eth:eco', - ECOX = 'ecox', - EDEN = 'eden', - EDISON = 'edison', - EDLC = 'edlc', - EDO = 'edo', - ELON = 'elon', - EMB = 'emb', - EDN = 'edn', - EDR = 'edr', - EFI = 'efi', - EGL = 'egl', - EGLD = 'egld', - EGOLD = 'egold', - EIGEN = 'eigen', - ELF = 'elf', - ELU = 'elu', - EMAID = 'emaid', - EMX = 'emx', - ENA = 'ena', - ENG = 'eng', - ENJ = 'enj', - ENS = 'ens', - EON = 'eon', - EOP = 'eop', - EOSBEAR = 'eosbear', - EOSBULL = 'eosbull', - EOSDOOM = 'eosdoom', - EOSHEDGE = 'eoshedge', - EOSMOON = 'eosmoon', - EQO = 'eqo', - ESE = 'ese', - ETA = 'eta', - ETHBULL = 'ethbull', - ETCBEAR = 'etcbear', - ETCBULL = 'etcbull', - ETCDOOM = 'etcdoom', - ETCHEDOOM = 'etchedoom', - ETCMOON = 'etcmoon', - ETHBEAR = 'ethbear', - ETHDOOM = 'ethdoom', - ETHFI = 'ethfi', - 'eth:block' = 'eth:block', - 'eth:bito' = 'eth:bito', - 'ETH:ECASH' = 'eth:ecash', - 'ETH:OORT' = 'eth:oort', - 'eth:ultra' = 'eth:ultra', - 'eth:dragonx' = 'eth:dragonx', - ETHHEDGE = 'ethhedge', - ETHMOON = 'ethmoon', - ETHOPT = 'ethopt', - ETHOS = 'ethos', - ETHTON = 'ethton', - ETHX = 'ethx', - ETV = 'etv', - ETX = 'etx', - EUL = 'eul', - EURE = 'eure', - EURL = 'eurl', - EUROE = 'euroe', - EUROP = 'europ', - EURS = 'eurs', - EURST = 'eurst', - EURT = 'eurt', - EURX = 'eurx', - EUX = 'eux', - EVER = 'ever', - EVERY = 'every', - EVRY = 'evry', - EVX = 'evx', - EXCHBEAR = 'exchbear', - EXCHBULL = 'exchbull', - EXCHDOOM = 'exchdoom', - EXCHHEDGE = 'exchhedge', - EXCHMOON = 'exchmoon', - EXE = 'exe', - FANT = 'fant', - FARM = 'farm', - FEI = 'fei', - FET = 'fet', - FET1 = 'fet1', - FDT = 'fdt', - FDUSD = 'fdusd', - FF1 = 'ff1', - FF6000 = 'ff6000', - FFT = 'fft', - FIDA = 'fida', - FIDU = 'fidu', - FIN = 'fin', - FIRE = 'fire', - FIRSTBLOOD = 'firstblood', - FIS = 'fis', - FIXED = 'fixed', - FLIP = 'flip', - FLOKI = 'floki', - FLUX = 'flux', - FLY = 'fly', - FMF = 'fmf', - FOLD = 'fold', - FOR = 'for', - FOREX = 'forex', - FORT = 'fort', - FORTH = 'forth', - FOX = 'fox', - FPIS = 'fpis', - FRAX = 'frax', - FRONT = 'front', - FT = 'ft', - FTM = 'ftm', - FTT = 'ftt', - FTT20 = 'ftt20', - FTX2 = 'ftx2', - FUCKFTX = 'fuckftx', - FUN = 'fun', - FWB = 'fwb', - FX = 'fx', - FXRT = 'fxrt', - FXS = 'fxs', - G = 'g', - GAL = 'gal', - GALA = 'gala', - GALAV2 = 'galav2', - 'GAME.COM' = 'game.com', - GAMMA = 'gamma', - 'sol:gari' = 'sol:gari', - 'sol:usd1' = 'sol:usd1', - 'tsol:slnd' = 'tsol:slnd', - 'tsol:orca' = 'tsol:orca', - 'tsol:usdc' = 'tsol:usdc', - 'tsol:ray' = 'tsol:ray', - 'tsol:gmt' = 'tsol:gmt', - 'tsol:usdt' = 'tsol:usdt', - 'tsol:srm' = 'tsol:srm', - 'tsol:gari' = 'tsol:gari', - GAS = 'gas', - GATE = 'gate', - GBPT = 'gbpt', - GBPX = 'gbpx', - GDT = 'gdt', - GEAR = 'gear', - GEC = 'gec', - GEL = 'gel', - GEN = 'gen', - GENE = 'gene', - GENIE = 'genie', - GF = 'gf', - GFI = 'gfi', - GHST = 'ghst', - GHUB = 'ghub', - GIGDROP = 'gigdrop', - GIV = 'giv', - GLDX = 'gldx', - GLM = 'glm', - GMT = 'gmt', - 'sol:gmt' = 'sol:gmt', - GNO = 'gno', - GNT = 'gnt', - 'sol:goat' = 'sol:goat', - GODS = 'gods', - GOHM = 'gohm', - GOG = 'gog', - GOLD = 'gold', - GOM = 'gom', - GOMINING = 'gomining', - GOT = 'got', - GRID = 'grid', - GRT = 'grt', - GST = 'gst', - GT = 'gt', - GTAAVE18DP = 'gtaave18dp', - GTBAT18DP = 'gtbat18dp', - GTCOMP18DP = 'gtcomp18dp', - GTGRT18DP = 'gtgrt18dp', - GTLINK18DP = 'gtlink18dp', - GTMKR18DP = 'gtmkr18dp', - GTSNX18DP = 'gtsnx18dp', - GTUNI18DP = 'gtuni18dp', - GTUSDT6DP = 'gtusdt6dp', - GTYFI18DP = 'gtyfi18dp', - GTWBTC8DP = 'gtwbtc8dp', - GTO = 'gto', - GTERC2DP = 'gterc2dp', - GTERC6DP = 'gterc6dp', - GTERC18DP = 'gterc18dp', - GUSD = 'gusd', - GUSDT = 'gusdt', - GXC = 'gxc', - GXT = 'gxt', - GYEN = 'gyen', - HBB = 'hbb', - HBTC = 'hbtc', - HCN = 'hcn', - HDO = 'hdo', - HEDG = 'hedg', - HEDGE = 'hedge', - HEDGESHIT = 'hedgeshit', - HEX = 'hex', - HFT = 'hft', - HGET = 'hget', - HIGH = 'high', - HIFI = 'hifi', - HIT = 'hit', - HKDX = 'hkdx', - HLC = 'hlc', - HMT = 'hmt', - 'sol:hnt' = 'sol:hnt', - HOLD = 'hold', - HOLY = 'holy', - HOP = 'hop', - HOT = 'hot', - HPO = 'hpo', - HQG = 'hqg', - HQT = 'hqt', - HST = 'hst', - HT = 'ht', - HTBEAR = 'htbear', - HTBULL = 'htbull', - HTDOOM = 'htdoom', - 'hteth:bgerchv2' = 'hteth:bgerchv2', - 'hteth:bgerchv3' = 'hteth:bgerchv3', - 'hteth:aut' = 'hteth:aut', - HTHEDGE = 'hthedge', - HTMOON = 'htmoon', - HUM = 'hum', - HUMV2 = 'humv2', - HUSD = 'husd', - HXRO = 'hxro', - HYB = 'hyb', - HYDRO = 'hydro', - HYDROPROTOCOL = 'hydroprotocol', - I8 = 'i8', - IBEUR = 'ibeur', - IBOX = 'ibox', - IBVOL = 'ibvol', - ICETH = 'iceth', - ID = 'id', - IDEX = 'idex', - IDRC = 'idrc', - IDRT = 'idrt', - ILV = 'ilv', - IMX = 'imx', - IMXV2 = 'imxv2', - INCX = 'incx', - IND = 'ind', - INDEX = 'index', - INDI = 'indi', - INF = 'inf', - INJ = 'inj', - INJV2 = 'injv2', - INST = 'inst', - INSUR = 'insur', - INV = 'inv', - INX = 'inx', - IOST = 'iost', - IOTX = 'iotx', - IP3 = 'ip3', - ISF = 'isf', - ISR = 'isr', - IVO = 'ivo', - IVY = 'ivy', - JASMY = 'jasmy', - JBC = 'jbc', - JCR = 'jcr', - JCG = 'jcg', - 'sol:jet' = 'sol:jet', - JFIN = 'jfin', - JPYX = 'jpyx', - JSOL = 'jsol', - KARATE = 'karate', - KARMA = 'karma', - KAS = 'kas', - KCASH = 'kcash', - KCS = 'kcs', - KEEP = 'keep', - KEY = 'key', - KILL0 = 'kill0', - KIN = 'kin', - 'sol:kin' = 'sol:kin', - KINE = 'kine', - KING = 'king', - KINTO = 'kinto', - KIRO = 'kiro', - KISHUI = 'kishui', - KITTY = 'kitty', - KNC = 'knc', - KNC2 = 'knc2', - KOIN = 'koin', - KOL = 'kol', - KOZ = 'koz', - KP3R = 'kp3r', - KRO = 'kro', - KROM = 'krom', - KTRC = 'ktrc', - KZE = 'kze', - L3 = 'l3', - L3USD = 'l3usd', - LA = 'la', - LADYS = 'ladys', - LAYER = 'layer', - LAYERZERO = 'layerzero', - LBA = 'lba', - LCX = 'lcx', - LDO = 'ldo', - LEND = 'lend', - LEO = 'leo', - LEOBEAR = 'leobear', - LEOBULL = 'leobull', - LEODOOM = 'leodoom', - LEOHEDGE = 'leohedge', - LEOMOON = 'leomoon', - LEV = 'lev', - LEVER = 'lever', - LGO = 'lgo', - LIEN = 'lien', - LIF3 = 'lif3', - LIKE = 'like', - LINA = 'lina', - LINK = 'link', - LINKBEAR = 'linkbear', - LINKBULL = 'linkbull', - LION = 'lion', - LIT = 'lit', - LITH = 'lith', - LITv2 = 'litv2', - LKR = 'lkr', - LMWR = 'lmwr', - LNC = 'lnc', - LOKA = 'loka', - LOOKS = 'looks', - LOOM = 'loom', - LOOM1 = 'loom1', - LOVE = 'love', - LOVELY = 'lovely', - LOWB = 'lowb', - LPT = 'lpt', - LQID = 'lqid', - LQTY = 'lqty', - LRC = 'lrc', - LRCV2 = 'lrcv2', - LSETH = 'lseth', - LSK = 'lsk', - LTCBEAR = 'ltcbear', - LTCBULL = 'ltcbull', - LTCDOOM = 'ltcdoom', - LTCHEDGE = 'ltchedge', - LTCMOON = 'ltcmoon', - LTO = 'lto', - LUA = 'lua', - LUNA = 'luna', - LUNAWORMHOLE = 'lunawormhole', - LYN = 'lyn', - LYXE = 'lyxe', - MAGIC = 'magic', - MANA = 'mana', - MAPS = 'maps', - MASA = 'masa', - MASK = 'mask', - MATH = 'math', - MATIC = 'matic', - MATICBEAR = 'maticbear', - MATICBEAR2021 = 'maticbear2021', - MATICBULL = 'maticbull', - MATTER = 'matter', - MAV = 'mav', - MBS = 'mbs', - MCAU = 'mcau', - MCB = 'mcb', - MCDAI = 'mcdai', - MCO = 'mco', - MCO2 = 'mco2', - MCS = 'mcs', - MCX = 'mcx', - MDFC = 'mdfc', - MDT = 'mdt', - MDX = 'mdx', - MEAN = 'mean', - MEDIA = 'media', - MEDIAv2 = 'mediav2', - MEDX = 'medx', - MEME = 'meme', - MEOW = 'meow', - MER = 'mer', - MET = 'met', - META = 'meta', - METIS = 'metis', - MEW = 'mew', - MFG = 'mfg', - MFPH = 'mfph', - MFT = 'mft', - MIDBEAR = 'midbear', - MIDBULL = 'midbull', - MIDDOOM = 'middoom', - MIDHEDGE = 'midhedge', - MIDMOON = 'midmoon', - MILKV2 = 'milkv2', - MIM = 'mim', - MIR = 'mir', - MITH = 'mith', - MIX = 'mix', - MIZN = 'mizn', - MKR = 'mkr', - MLN = 'mln', - MNS = 'mns', - MNT = 'mnt', - MNDE = 'mnde', - 'sol:mnde' = 'sol:mnde', - MOC = 'moc', - MOCA = 'moca', - MOCHI = 'mochi', - MOF = 'mof', - MOG = 'mog', - MOH = 'moh', - MOON = 'moon', - MOONSHIT = 'moonshit', - MOTHER = 'mother', - MNGO = 'mngo', - MPAY = 'mpay', - MPL = 'mpl', - 'sol:mplx' = 'sol:mplx', - MRTWEET = 'mrtweet', - MSN = 'msn', - MSOL = 'msol', - MTA = 'mta', - MTCN = 'mtcn', - MTH = 'mth', - MTL = 'mtl', - MTV = 'mtv', - MUSD = 'musd', - MVL = 'mvl', - MVI = 'mvi', - MWT = 'mwt', - MYRC = 'myrc', - MYTH = 'myth', - NAAI = 'naai', - NAS = 'nas', - NCT = 'nct', - NDX = 'ndx', - 'NEAR-ERC20' = 'near-erc20', - NEU = 'neu', - NEWO = 'newo', - NEXO = 'nexo', - 'NFCWIN-SB-2021' = 'nfcwin-sb-2021', - NFTFI = 'nftfi', - NFTX = 'nftx', - NGNT = 'ngnt', - NIAX = 'niax', - NKN = 'nkn', - NMR = 'nmr', - NOSANA = 'nosana', - NOTE = 'note', - NOVA = 'nova', - NPT = 'npt', - NPXS = 'npxs', - NS2DRP = 'ns2drp', - NU = 'nu', - NULS = 'nuls', - NUTS = 'nuts', - NXM = 'nxm', - NYM = 'nym', - NZDX = 'nzdx', - OAX = 'oax', - OCEAN = 'ocean', - OCEANV2 = 'oceanv2', - OCTAV = 'octav', - OGN = 'ogn', - OGV = 'ogv', - OKB = 'okb', - OKBBEAR = 'okbbear', - OKBBULL = 'okbbull', - OKBDOOM = 'okbdoom', - OKBHEDGE = 'okbhedge', - OKBMOON = 'okbmoon', - OM = 'om', - OMOLD = 'omold', - OMG = 'omg', - OMNI = 'omni', - OMNIA = 'omnia', - ONDO = 'ondo', - ONL = 'onl', - ONT = 'ont', - OOKI = 'ooki', - OP = 'op', - OPIUM = 'opium', - OPT = 'opt', - ORAI = 'orai', - ORBS = 'orbs', - ORC = 'orc', - ORN = 'orn', - 'sol:orca' = 'sol:orca', - OS = 'os', - OSETH = 'oseth', - OUSD = 'ousd', - OUSG = 'ousg', - OWN = 'own', - OXT = 'oxt', - OXY = 'oxy', - OHM = 'ohm', - PACT = 'pact', - PAI = 'pai', - PAR = 'par', - PASS = 'pass', - PAU = 'pau', - PAX = 'pax', - PAXG = 'paxg', - PAXGBEAR = 'paxgbear', - PAXGBULL = 'paxgbull', - PAY = 'pay', - PBCH = 'pbch', - PBTC = 'pbtc', - PDA = 'PDA', - PDATA = 'pdata', - PDI = 'pdi', - PEAQ = 'peaq', - PEBBLE = 'pebble', - PEG = 'peg', - PENDLE = 'pendle', - PEOPLE = 'people', - PEPE = 'pepe', - PERL = 'perl', - PERP = 'perp', - PETH = 'peth', - PHA = 'pha', - PHNX = 'phnx', - PICK = 'pick', - PICKLE = 'pickle', - PIE = 'pie', - PINE = 'pine', - PIRATE = 'pirate', - PLAY = 'play', - PIXEL = 'pixel', - PLC = 'plc', - PFCT = 'pfct', - PLANET = 'planet', - PLNX = 'plnx', - PLX = 'plx', - PMA = 'pma', - PNT = 'pnt', - POL = 'pol', - POLIS = 'polis', - POLY = 'poly', - POLYX = 'polyx', - POLS = 'pols', - POND = 'pond', - PONYS = 'ponys', - PORT = 'port', - POWR = 'powr', - PPT = 'ppt', - PRDX = 'prdx', - PRINTS = 'prints', - PRISM = 'prism', - PRO = 'pro', - PROM = 'prom', - PROS = 'pros', - PRT = 'prt', - PRTS = 'prts', - PSOL = 'psol', - PSP = 'psp', - PSTAKE = 'pstake', - PSY = 'psy', - PTU = 'ptu', - PUNDIX = 'pundix', - 'sol:pump' = 'sol:pump', - PUSD = 'pusd', - PUSH = 'push', - PV01 = 'pv01', - PXP = 'pxp', - PYR = 'pyr', - PYUSD = 'pyusd', - QASH = 'qash', - QCAD = 'qcad', - 'sol:qcad' = 'sol:qcad', - QOM = 'qom', - QUICK = 'quick', - QDT = 'qdt', - QKC = 'qkc', - QLINDO = 'qlindo', - QNT = 'qnt', - QRDO = 'qrdo', - QRL = 'qrl', - QSP = 'qsp', - QVT = 'qvt', - RAD = 'rad', - RADAR = 'radar', - RAIN = 'rain', - RALPH = 'ralph', - RAMP = 'ramp', - RARE = 'rare', - RARI = 'rari', - RAY = 'ray', - 'sol:ray' = 'sol:ray', - RAZOR = 'razor', - RBANK = 'rbank', - RBN = 'rbn', - RBX = 'rbx', - RBY = 'rby', - RCOIN = 'rcoin', - RCT = 'rct', - RDN = 'rdn', - RDNT = 'rdnt', - REAL = 'real', - REB = 'reb', - REBL = 'rebl', - REEF = 'reef', - REF = 'ref', - REKT = 'rekt', - REKTGAME = 'rektgame', - REN = 'ren', - RENBTC = 'renbtc', - RENDOGE = 'rendoge', - REP = 'rep', - REPV2 = 'repv2', - REQ = 'REQ', - 'RETH-ROCKET' = 'reth-rocket', - 'RETH-STAFI' = 'reth-stafi', - 'RETH-H' = 'reth-h', - RETH2 = 'reth2', - REVV = 'revv', - REZ = 'rez', - RFOX = 'rfox', - RFR = 'rfr', - RFUEL = 'rfuel', - RGT = 'rgt', - RIF = 'rif', - RINGX = 'ringx', - RIO = 'rio', - RLC = 'rlc', - RLUSD = 'rlusd', - RLY = 'rly', - RN = 'rn', - RND = 'rnd', - RNDR = 'rndr', - RNDT = 'rndt', - ROOK = 'rook', - RON = 'ron', - RONC = 'ronc', - ROOBEE = 'roobee', - RPK = 'rpk', - RPL = 'rpl', - RSR = 'rsr', - RSWETH = 'rsweth', - RUBX = 'rubx', - RUEDATK = 'ruedatk', - RUN = 'run', - RUNE = 'rune', - RVR = 'rvr', - RYOSHI = 'ryoshi', - SAFE = 'safe', - SAIL = 'sail', - SAITABIT = 'saitabit', - SALT = 'salt', - SAND = 'sand', - SASHIMI = 'sashimi', - SAMO = 'samo', - SBC = 'sbc', - 'sol:sbc' = 'sol:sbc', - 'sol:veur' = 'sol:veur', - 'sol:vchf' = 'sol:vchf', - 'sol:tbill' = 'sol:tbill', - 'sol:usdg' = 'sol:usdg', - 'sol:ausd' = 'sol:ausd', - SBF = 'sbf', - SBR = 'sbr', + '$Evmosia.com': '$evmosia.com', + '0xREVIEW': '0xreview', + '1INCH': '1inch', + '1UP': '1up', + '3CRV': '3crv', + AAVE: 'aave', + ABT: 'abt', + ACE: 'ace', + ACEV2: 'acev2', + ACX: 'acx', + ACXT: 'acxt', + ACH: 'ach', + ADABEAR: 'adabear', + ADABULL: 'adabull', + ADX: 'adx', + AE: 'ae', + AERGO: 'aergo', + AERGO1: 'aergo1', + AGEUR: 'ageur', + AGI: 'agi', + AGIX: 'agix', + AGLD: 'agld', + AGWD: 'agwd', + AION: 'aion', + AJNA: 'ajna', + AKRO: 'akro', + ALCX: 'alcx', + ALD: 'ald', + ALDRIN: 'aldrin', + ALEPH: 'aleph', + ALGOBEAR: 'algobear', + ALGOBULL: 'algobull', + ALGODOOM: 'algodoom', + ALGOHEDGE: 'algohedge', + ALGOMOON: 'algomoon', + ALTDOOM: 'altdoom', + ALTMOON: 'altmoon', + ALI: 'ali', + ALICE: 'alice', + ALK: 'alk', + ALM: 'alm', + ALPHA: 'alpha', + ALTBEAR: 'altbear', + ALTBULL: 'altbull', + ALTHEDGE: 'althedge', + AMKT: 'amkt', + AMN: 'amn', + AMO: 'amo', + AMP: 'amp', + AMPL: 'ampl', + AMON: 'amon', + AMPX: 'ampx', + ANA: 'ana', + ANC: 'anc', + ANGLE: 'angle', + ANKR: 'ankr', + ANKRETH: 'ankreth', + ANML: 'anml', + ANT: 'ant', + ANTV2: 'antv2', + AOA: 'aoa', + APPC: 'appc', + APT: 'apt', + AQT: 'aqt', + ARCT: 'arct', + ARCX: 'arcx', + ARKM: 'arkm', + ARMOR: 'armor', + ARPA: 'arpa', + ARTEQ: 'arteq', + ASD: 'asd', + AST: 'ast', + ASTO: 'asto', + ATA: 'ata', + ATF: 'atf', + ATH: 'ath', + ATL: 'atl', + ATLAS: 'atlas', + ATOMBEAR: 'atombear', + ATOMBULL: 'atombull', + ATRI: 'atri', + AUCTION: 'auction', + AUDD: 'audd', + AUDF: 'audf', + AUDIO: 'audio', + AUDX: 'audx', + AUSD: 'ausd', + AUSDT: 'ausdt', + AUST: 'aust', + AVA: 'ava', + AVT: 'avt', + AWBTC: 'awbtc', + AXPR: 'axpr', + AXS: 'axs', + AXSV2: 'axsv2', + AYFI: 'ayfi', + AZUKI: 'azuki', + AZUKI2: 'azuki2', + AZUKIPEPE: 'azukipepe', + BADGER: 'badger', + BAI: 'bai', + BAL: 'bal', + BAND: 'band', + BANK: 'bank', + BAO: 'bao', + BASIC: 'basic', + BAT: 'bat', + BAX: 'bax', + BBANK: 'bbank', + BBSAMO: 'bbsamo', + BBTC: 'BBTC', + BBX: 'bbx', + BCAP: 'bcap', + BCC: 'bcc', + BCHBEAR: 'bchbear', + BCHBULL: 'bchbull', + BCHDOOM: 'bchdoom', + BCHHEDGE: 'bchhedge', + BCHMOON: 'bchmoon', + BCIO: 'bcio', + BCUT: 'bcut', + BCT: 'bct', + BDXN: 'bdxn', + BEAM: 'beam', + BEAR: 'bear', + BEARSHIT: 'bearshit', + BED: 'bed', + BEND: 'bend', + BEPRO: 'bepro', + BETA: 'beta', + BGB: 'bgb', + BGBG: 'bgbg', + BICO: 'bico', + BID: 'bid', + BIDL: 'bidl', + BIGTIME: 'bigtime', + BIRD: 'bird', + BIT: 'bit', + BKT: 'bkt', + BKX: 'bkx', + BLCT: 'blct', + BLT: 'blt', + BLUR: 'blur', + BLUR0x083: 'blur0x083', + BLUR0xb93: 'blur0xb93', + BLZ: 'blz', + BNB: 'bnb', + BNBBEAR: 'bnbbear', + BNBBULL: 'bnbbull', + BNBDOOM: 'bnbdoom', + BNBHEDGE: 'bnbhedge', + BNBMOON: 'bnbmoon', + BNK: 'bnk', + BNL: 'bnl', + BNT: 'bnt', + BNTY: 'bnty', + BNVDA: 'bnvda', + BOB: 'bob', + BOND: 'bond', + BONK: 'bonk', + BONE: 'bone', + BORG: 'borg', + BOTTO: 'botto', + BLOCKS: 'blocks', + BOX: 'box', + BOBA: 'boba', + BRD: 'brd', + BRIBE: 'bribe', + BRZ: 'brz', + BSGG: 'bsgg', + BST: 'bst', + BSVBEAR: 'bsvbear', + BSVBULL: 'bsvbull', + BSVDOOM: 'bsvdoom', + BSVHEDGE: 'bsvhedge', + BSVMOON: 'bsvmoon', + BSX: 'bsx', + BTC2XFLI: 'btc2xfli', + BTMXBEAR: 'btmxbear', + BTMXBULL: 'btmxbull', + BTRST: 'btrst', + BTSG: 'btsg', + BTT: 'btt', + BTU: 'btu', + BUIDL: 'buidl', + BULL: 'bull', + BULLSHIT: 'bullshit', + BURP: 'burp', + BUSD: 'busd', + BUY: 'buy', + BPT: 'bpt', + BVOL: 'bvol', + BXX: 'bxx', + BXXV1: 'bxxv1', + BZZ: 'bzz', + C3: 'c3', + C6P: 'c6p', + C8P: 'c8p', + C98: 'c98', + CACXT: 'cacxt', + CADX: 'cadx', + CAG: 'cag', + CANTO: 'canto', + CAPS: 'caps', + CARV: 'carv', + CASH: 'cash', + CBAT: 'cbat', + CBC: 'cbc', + CBETH: 'cbeth', + CBRL: 'cbrl', + CCAI: 'ccai', + CCT: 'cct', + CDAG: 'cdag', + CDAI: 'cdai', + CDAIV2: 'cdaiV2', + CDT: 'cdt', + CEL: 'cel', + CELLS: 'cells', + CELR: 'celr', + CERE: 'cere', + CETH: 'ceth', + CFX: 'cfx', + CHAINLINK: 'chainlink', + CHART: 'chart', + CHO: 'cho', + CHFX: 'chfx', + CHR: 'chr', + CHSB: 'chsb', + CHZ: 'chz', + CIBO: 'cibo', + CIX100: 'cix100', + CLIQ: 'cliq', + CLN: 'cln', + CLT: 'clt', + CLXY: 'clxy', + CLV: 'clv', + CMFI: 'cmfi', + CNFI: 'cnfi', + CNG: 'cng', + CNYX: 'cnyx', + COLLAR: 'collar', + COMBO: 'combo', + COMP: 'comp', + CONV: 'conv', + COPE: 'cope', + CORE: 'core', + COS: 'cos', + COTI: 'coti', + COVAL: 'coval', + COVER: 'cover', + COVERPROTOCOL: 'coverprotocol', + COW: 'cow', + CPAY: 'cpay', + CPLT: 'cplt', + CPOOL: 'cpool', + CQT: 'cqt', + CQX: 'cqx', + CRA: 'cra', + CRDT: 'crdt', + CRE: 'cre', + CREAM: 'cream', + CREP: 'crep', + CRI: 'cri', + CRO: 'cro', + CRV: 'crv', + CRPT: 'crpt', + CRPT1: 'crpt1', + CSLV: 'cslv', + CSOL: 'csol', + CSP: 'csp', + CTSI: 'ctsi', + CTX: 'ctx', + CUBE: 'cube', + CUSD: 'cusd', + CUSDC: 'cusdc', + CVXFXS: 'cvxfxs', + CWAR: 'cwar', + CWBTC: 'cwbtc', + CVC: 'cvc', + CVX: 'cvx', + CXT: 'cxt', + CYBER: 'cyber', + CZRX: 'czrx', + DACXI: 'dacxi', + DADI: 'dadi', + DAMM: 'damm', + DAI: 'dai', + DAO: 'dao', + DAOLANG: 'daolang', + DAR: 'dar', + DATA: 'data', + DATAV2: 'datav2', + DATAECON: 'dataecon', + DAWN: 'dawn', + DEC: 'dec', + DEGO: 'dego', + DENT: 'dent', + DEP: 'dep', + DEPAY: 'depay', + DEXA: 'dexa', + DEXE: 'dexe', + DFD: 'dfd', + DFI: 'dfi', + DFL: 'dfl', + DFX: 'dfx', + DGCL: 'dgcl', + DGD: 'dgd', + DGLD: 'dgld', + DGX: 'dgx', + DHT: 'dht', + DIGG: 'digg', + DIA: 'dia', + DING: 'ding', + DIPE: 'dipe', + DMG: 'dmg', + DMT: 'dmt', + DNA: 'dna', + DNT: 'dnt', + DODO: 'dodo', + DOG: 'dog', + DOGE: 'doge', + DOGEBEAR: 'dogebear', + DOGEBEAR2021: 'dogebear2021', + DOGEBULL: 'dogebull', + DOMI: 'domi', + DOOM: 'doom', + DOOMSHIT: 'doomshit', + DOSE: 'dose', + DOTK: 'dotk', + DPAY: 'dpay', + DPI: 'dpi', + DPX: 'dpx', + DPY: 'dpy', + DRAM: 'dram', + DRGNBEAR: 'drgnbear', + DRGNBULL: 'drgnbull', + DRPU: 'drpu', + DRV: 'drv', + DUC: 'duc', + DUCK: 'duck', + DUSD: 'dusd', + DUSK: 'dusk', + DUST: 'dust', + DX1U: 'dx1u', + DXGT: 'dxgt', + DXO: 'dxo', + DXPT: 'dxpt', + DXST: 'dxst', + DYDX: 'dydx', + DYN: 'dyn', + EASY: 'easy', + EBTCQ: 'ebtcq', + ECHT: 'echt', + 'eth:eco': 'eth:eco', + ECOX: 'ecox', + EDEN: 'eden', + EDISON: 'edison', + EDLC: 'edlc', + EDO: 'edo', + ELON: 'elon', + EMB: 'emb', + EDN: 'edn', + EDR: 'edr', + EFI: 'efi', + EGL: 'egl', + EGLD: 'egld', + EGOLD: 'egold', + EIGEN: 'eigen', + ELF: 'elf', + ELU: 'elu', + EMAID: 'emaid', + EMX: 'emx', + ENA: 'ena', + ENG: 'eng', + ENJ: 'enj', + ENS: 'ens', + EON: 'eon', + EOP: 'eop', + EOSBEAR: 'eosbear', + EOSBULL: 'eosbull', + EOSDOOM: 'eosdoom', + EOSHEDGE: 'eoshedge', + EOSMOON: 'eosmoon', + EQO: 'eqo', + ESE: 'ese', + ETA: 'eta', + ETHBULL: 'ethbull', + ETCBEAR: 'etcbear', + ETCBULL: 'etcbull', + ETCDOOM: 'etcdoom', + ETCHEDOOM: 'etchedoom', + ETCMOON: 'etcmoon', + ETHBEAR: 'ethbear', + ETHDOOM: 'ethdoom', + ETHFI: 'ethfi', + 'eth:block': 'eth:block', + 'eth:bito': 'eth:bito', + 'ETH:ECASH': 'eth:ecash', + 'ETH:OORT': 'eth:oort', + 'eth:ultra': 'eth:ultra', + 'eth:dragonx': 'eth:dragonx', + ETHHEDGE: 'ethhedge', + ETHMOON: 'ethmoon', + ETHOPT: 'ethopt', + ETHOS: 'ethos', + ETHTON: 'ethton', + ETHX: 'ethx', + ETV: 'etv', + ETX: 'etx', + EUL: 'eul', + EURE: 'eure', + EURL: 'eurl', + EUROE: 'euroe', + EUROP: 'europ', + EURS: 'eurs', + EURST: 'eurst', + EURT: 'eurt', + EURX: 'eurx', + EUX: 'eux', + EVER: 'ever', + EVERY: 'every', + EVRY: 'evry', + EVX: 'evx', + EXCHBEAR: 'exchbear', + EXCHBULL: 'exchbull', + EXCHDOOM: 'exchdoom', + EXCHHEDGE: 'exchhedge', + EXCHMOON: 'exchmoon', + EXE: 'exe', + FANT: 'fant', + FARM: 'farm', + FEI: 'fei', + FET: 'fet', + FET1: 'fet1', + FDT: 'fdt', + FDUSD: 'fdusd', + FF1: 'ff1', + FF6000: 'ff6000', + FFT: 'fft', + FIDA: 'fida', + FIDU: 'fidu', + FIN: 'fin', + FIRE: 'fire', + FIRSTBLOOD: 'firstblood', + FIS: 'fis', + FIXED: 'fixed', + FLIP: 'flip', + FLOKI: 'floki', + FLUX: 'flux', + FLY: 'fly', + FMF: 'fmf', + FOLD: 'fold', + FOR: 'for', + FOREX: 'forex', + FORT: 'fort', + FORTH: 'forth', + FOX: 'fox', + FPIS: 'fpis', + FRAX: 'frax', + FRONT: 'front', + FT: 'ft', + FTM: 'ftm', + FTT: 'ftt', + FTT20: 'ftt20', + FTX2: 'ftx2', + FUCKFTX: 'fuckftx', + FUN: 'fun', + FWB: 'fwb', + FX: 'fx', + FXRT: 'fxrt', + FXS: 'fxs', + G: 'g', + GAL: 'gal', + GALA: 'gala', + GALAV2: 'galav2', + 'GAME.COM': 'game.com', + GAMMA: 'gamma', + 'sol:gari': 'sol:gari', + 'sol:usd1': 'sol:usd1', + 'tsol:slnd': 'tsol:slnd', + 'tsol:orca': 'tsol:orca', + 'tsol:usdc': 'tsol:usdc', + 'tsol:ray': 'tsol:ray', + 'tsol:gmt': 'tsol:gmt', + 'tsol:usdt': 'tsol:usdt', + 'tsol:srm': 'tsol:srm', + 'tsol:gari': 'tsol:gari', + GAS: 'gas', + GATE: 'gate', + GBPT: 'gbpt', + GBPX: 'gbpx', + GDT: 'gdt', + GEAR: 'gear', + GEC: 'gec', + GEL: 'gel', + GEN: 'gen', + GENE: 'gene', + GENIE: 'genie', + GF: 'gf', + GFI: 'gfi', + GHST: 'ghst', + GHUB: 'ghub', + GIGDROP: 'gigdrop', + GIV: 'giv', + GLDX: 'gldx', + GLM: 'glm', + GMT: 'gmt', + 'sol:gmt': 'sol:gmt', + GNO: 'gno', + GNT: 'gnt', + 'sol:goat': 'sol:goat', + GODS: 'gods', + GOHM: 'gohm', + GOG: 'gog', + GOLD: 'gold', + GOM: 'gom', + GOMINING: 'gomining', + GOT: 'got', + GRID: 'grid', + GRT: 'grt', + GST: 'gst', + GT: 'gt', + GTAAVE18DP: 'gtaave18dp', + GTBAT18DP: 'gtbat18dp', + GTCOMP18DP: 'gtcomp18dp', + GTGRT18DP: 'gtgrt18dp', + GTLINK18DP: 'gtlink18dp', + GTMKR18DP: 'gtmkr18dp', + GTSNX18DP: 'gtsnx18dp', + GTUNI18DP: 'gtuni18dp', + GTUSDT6DP: 'gtusdt6dp', + GTYFI18DP: 'gtyfi18dp', + GTWBTC8DP: 'gtwbtc8dp', + GTO: 'gto', + GTERC2DP: 'gterc2dp', + GTERC6DP: 'gterc6dp', + GTERC18DP: 'gterc18dp', + GUSD: 'gusd', + GUSDT: 'gusdt', + GXC: 'gxc', + GXT: 'gxt', + GYEN: 'gyen', + HBB: 'hbb', + HBTC: 'hbtc', + HCN: 'hcn', + HDO: 'hdo', + HEDG: 'hedg', + HEDGE: 'hedge', + HEDGESHIT: 'hedgeshit', + HEX: 'hex', + HFT: 'hft', + HGET: 'hget', + HIGH: 'high', + HIFI: 'hifi', + HIT: 'hit', + HKDX: 'hkdx', + HLC: 'hlc', + HMT: 'hmt', + 'sol:hnt': 'sol:hnt', + HOLD: 'hold', + HOLY: 'holy', + HOP: 'hop', + HOT: 'hot', + HPO: 'hpo', + HQG: 'hqg', + HQT: 'hqt', + HST: 'hst', + HT: 'ht', + HTBEAR: 'htbear', + HTBULL: 'htbull', + HTDOOM: 'htdoom', + 'hteth:bgerchv2': 'hteth:bgerchv2', + 'hteth:bgerchv3': 'hteth:bgerchv3', + 'hteth:aut': 'hteth:aut', + HTHEDGE: 'hthedge', + HTMOON: 'htmoon', + HUM: 'hum', + HUMV2: 'humv2', + HUSD: 'husd', + HXRO: 'hxro', + HYB: 'hyb', + HYDRO: 'hydro', + HYDROPROTOCOL: 'hydroprotocol', + I8: 'i8', + IBEUR: 'ibeur', + IBOX: 'ibox', + IBVOL: 'ibvol', + ICETH: 'iceth', + ID: 'id', + IDEX: 'idex', + IDRC: 'idrc', + IDRT: 'idrt', + ILV: 'ilv', + IMX: 'imx', + IMXV2: 'imxv2', + INCX: 'incx', + IND: 'ind', + INDEX: 'index', + INDI: 'indi', + INF: 'inf', + INJ: 'inj', + INJV2: 'injv2', + INST: 'inst', + INSUR: 'insur', + INV: 'inv', + INX: 'inx', + IOST: 'iost', + IOTX: 'iotx', + IP3: 'ip3', + ISF: 'isf', + ISR: 'isr', + IVO: 'ivo', + IVY: 'ivy', + JASMY: 'jasmy', + JBC: 'jbc', + JCR: 'jcr', + JCG: 'jcg', + 'sol:jet': 'sol:jet', + JFIN: 'jfin', + JPYX: 'jpyx', + JSOL: 'jsol', + KARATE: 'karate', + KARMA: 'karma', + KAS: 'kas', + KCASH: 'kcash', + KCS: 'kcs', + KEEP: 'keep', + KEY: 'key', + KILL0: 'kill0', + KIN: 'kin', + 'sol:kin': 'sol:kin', + KINE: 'kine', + KING: 'king', + KINTO: 'kinto', + KIRO: 'kiro', + KISHUI: 'kishui', + KITTY: 'kitty', + KNC: 'knc', + KNC2: 'knc2', + KOIN: 'koin', + KOL: 'kol', + KOZ: 'koz', + KP3R: 'kp3r', + KRO: 'kro', + KROM: 'krom', + KTRC: 'ktrc', + KZE: 'kze', + L3: 'l3', + L3USD: 'l3usd', + LA: 'la', + LADYS: 'ladys', + LAYER: 'layer', + LAYERZERO: 'layerzero', + LBA: 'lba', + LCX: 'lcx', + LDO: 'ldo', + LEND: 'lend', + LEO: 'leo', + LEOBEAR: 'leobear', + LEOBULL: 'leobull', + LEODOOM: 'leodoom', + LEOHEDGE: 'leohedge', + LEOMOON: 'leomoon', + LEV: 'lev', + LEVER: 'lever', + LGO: 'lgo', + LIEN: 'lien', + LIF3: 'lif3', + LIKE: 'like', + LINA: 'lina', + LINK: 'link', + LINKBEAR: 'linkbear', + LINKBULL: 'linkbull', + LION: 'lion', + LIT: 'lit', + LITH: 'lith', + LITv2: 'litv2', + LKR: 'lkr', + LMWR: 'lmwr', + LNC: 'lnc', + LOKA: 'loka', + LOOKS: 'looks', + LOOM: 'loom', + LOOM1: 'loom1', + LOVE: 'love', + LOVELY: 'lovely', + LOWB: 'lowb', + LPT: 'lpt', + LQID: 'lqid', + LQTY: 'lqty', + LRC: 'lrc', + LRCV2: 'lrcv2', + LSETH: 'lseth', + LSK: 'lsk', + LTCBEAR: 'ltcbear', + LTCBULL: 'ltcbull', + LTCDOOM: 'ltcdoom', + LTCHEDGE: 'ltchedge', + LTCMOON: 'ltcmoon', + LTO: 'lto', + LUA: 'lua', + LUNA: 'luna', + LUNAWORMHOLE: 'lunawormhole', + LYN: 'lyn', + LYXE: 'lyxe', + MAGIC: 'magic', + MANA: 'mana', + MAPS: 'maps', + MASA: 'masa', + MASK: 'mask', + MATH: 'math', + MATIC: 'matic', + MATICBEAR: 'maticbear', + MATICBEAR2021: 'maticbear2021', + MATICBULL: 'maticbull', + MATTER: 'matter', + MAV: 'mav', + MBS: 'mbs', + MCAU: 'mcau', + MCB: 'mcb', + MCDAI: 'mcdai', + MCO: 'mco', + MCO2: 'mco2', + MCS: 'mcs', + MCX: 'mcx', + MDFC: 'mdfc', + MDT: 'mdt', + MDX: 'mdx', + MEAN: 'mean', + MEDIA: 'media', + MEDIAv2: 'mediav2', + MEDX: 'medx', + MEME: 'meme', + MEOW: 'meow', + MER: 'mer', + MET: 'met', + META: 'meta', + METIS: 'metis', + MEW: 'mew', + MFG: 'mfg', + MFPH: 'mfph', + MFT: 'mft', + MIDBEAR: 'midbear', + MIDBULL: 'midbull', + MIDDOOM: 'middoom', + MIDHEDGE: 'midhedge', + MIDMOON: 'midmoon', + MILKV2: 'milkv2', + MIM: 'mim', + MIR: 'mir', + MITH: 'mith', + MIX: 'mix', + MIZN: 'mizn', + MKR: 'mkr', + MLN: 'mln', + MNS: 'mns', + MNT: 'mnt', + MNDE: 'mnde', + 'sol:mnde': 'sol:mnde', + MOC: 'moc', + MOCA: 'moca', + MOCHI: 'mochi', + MOF: 'mof', + MOG: 'mog', + MOH: 'moh', + MOON: 'moon', + MOONSHIT: 'moonshit', + MOTHER: 'mother', + MNGO: 'mngo', + MPAY: 'mpay', + MPL: 'mpl', + 'sol:mplx': 'sol:mplx', + MRTWEET: 'mrtweet', + MSN: 'msn', + MSOL: 'msol', + MTA: 'mta', + MTCN: 'mtcn', + MTH: 'mth', + MTL: 'mtl', + MTV: 'mtv', + MUSD: 'musd', + MVL: 'mvl', + MVI: 'mvi', + MWT: 'mwt', + MYRC: 'myrc', + MYTH: 'myth', + NAAI: 'naai', + NAS: 'nas', + NCT: 'nct', + NDX: 'ndx', + 'NEAR-ERC20': 'near-erc20', + NEU: 'neu', + NEWO: 'newo', + NEXO: 'nexo', + 'NFCWIN-SB-2021': 'nfcwin-sb-2021', + NFTFI: 'nftfi', + NFTX: 'nftx', + NGNT: 'ngnt', + NIAX: 'niax', + NKN: 'nkn', + NMR: 'nmr', + NOSANA: 'nosana', + NOTE: 'note', + NOVA: 'nova', + NPT: 'npt', + NPXS: 'npxs', + NS2DRP: 'ns2drp', + NU: 'nu', + NULS: 'nuls', + NUTS: 'nuts', + NXM: 'nxm', + NYM: 'nym', + NZDX: 'nzdx', + OAX: 'oax', + OCEAN: 'ocean', + OCEANV2: 'oceanv2', + OCTAV: 'octav', + OGN: 'ogn', + OGV: 'ogv', + OKB: 'okb', + OKBBEAR: 'okbbear', + OKBBULL: 'okbbull', + OKBDOOM: 'okbdoom', + OKBHEDGE: 'okbhedge', + OKBMOON: 'okbmoon', + OM: 'om', + OMOLD: 'omold', + OMG: 'omg', + OMNI: 'omni', + OMNIA: 'omnia', + ONDO: 'ondo', + ONL: 'onl', + ONT: 'ont', + OOKI: 'ooki', + OP: 'op', + OPIUM: 'opium', + OPT: 'opt', + ORAI: 'orai', + ORBS: 'orbs', + ORC: 'orc', + ORN: 'orn', + 'sol:orca': 'sol:orca', + OS: 'os', + OSETH: 'oseth', + OUSD: 'ousd', + OUSG: 'ousg', + OWN: 'own', + OXT: 'oxt', + OXY: 'oxy', + OHM: 'ohm', + PACT: 'pact', + PAI: 'pai', + PAR: 'par', + PASS: 'pass', + PAU: 'pau', + PAX: 'pax', + PAXG: 'paxg', + PAXGBEAR: 'paxgbear', + PAXGBULL: 'paxgbull', + PAY: 'pay', + PBCH: 'pbch', + PBTC: 'pbtc', + PDA: 'PDA', + PDATA: 'pdata', + PDI: 'pdi', + PEAQ: 'peaq', + PEBBLE: 'pebble', + PEG: 'peg', + PENDLE: 'pendle', + PEOPLE: 'people', + PEPE: 'pepe', + PERL: 'perl', + PERP: 'perp', + PETH: 'peth', + PHA: 'pha', + PHNX: 'phnx', + PICK: 'pick', + PICKLE: 'pickle', + PIE: 'pie', + PINE: 'pine', + PIRATE: 'pirate', + PLAY: 'play', + PIXEL: 'pixel', + PLC: 'plc', + PFCT: 'pfct', + PLANET: 'planet', + PLNX: 'plnx', + PLX: 'plx', + PMA: 'pma', + PNT: 'pnt', + POL: 'pol', + POLIS: 'polis', + POLY: 'poly', + POLYX: 'polyx', + POLS: 'pols', + POND: 'pond', + PONYS: 'ponys', + PORT: 'port', + POWR: 'powr', + PPT: 'ppt', + PRDX: 'prdx', + PRINTS: 'prints', + PRISM: 'prism', + PRO: 'pro', + PROM: 'prom', + PROS: 'pros', + PRT: 'prt', + PRTS: 'prts', + PSOL: 'psol', + PSP: 'psp', + PSTAKE: 'pstake', + PSY: 'psy', + PTU: 'ptu', + PUNDIX: 'pundix', + 'sol:pump': 'sol:pump', + PUSD: 'pusd', + PUSH: 'push', + PV01: 'pv01', + PXP: 'pxp', + PYR: 'pyr', + PYUSD: 'pyusd', + QASH: 'qash', + QCAD: 'qcad', + 'sol:qcad': 'sol:qcad', + QOM: 'qom', + QUICK: 'quick', + QDT: 'qdt', + QKC: 'qkc', + QLINDO: 'qlindo', + QNT: 'qnt', + QRDO: 'qrdo', + QRL: 'qrl', + QSP: 'qsp', + QVT: 'qvt', + RAD: 'rad', + RADAR: 'radar', + RAIN: 'rain', + RALPH: 'ralph', + RAMP: 'ramp', + RARE: 'rare', + RARI: 'rari', + RAY: 'ray', + 'sol:ray': 'sol:ray', + RAZOR: 'razor', + RBANK: 'rbank', + RBN: 'rbn', + RBX: 'rbx', + RBY: 'rby', + RCOIN: 'rcoin', + RCT: 'rct', + RDN: 'rdn', + RDNT: 'rdnt', + REAL: 'real', + REB: 'reb', + REBL: 'rebl', + REEF: 'reef', + REF: 'ref', + REKT: 'rekt', + REKTGAME: 'rektgame', + REN: 'ren', + RENBTC: 'renbtc', + RENDOGE: 'rendoge', + REP: 'rep', + REPV2: 'repv2', + REQ: 'REQ', + 'RETH-ROCKET': 'reth-rocket', + 'RETH-STAFI': 'reth-stafi', + 'RETH-H': 'reth-h', + RETH2: 'reth2', + REVV: 'revv', + REZ: 'rez', + RFOX: 'rfox', + RFR: 'rfr', + RFUEL: 'rfuel', + RGT: 'rgt', + RIF: 'rif', + RINGX: 'ringx', + RIO: 'rio', + RLC: 'rlc', + RLUSD: 'rlusd', + RLY: 'rly', + RN: 'rn', + RND: 'rnd', + RNDR: 'rndr', + RNDT: 'rndt', + ROOK: 'rook', + RON: 'ron', + RONC: 'ronc', + ROOBEE: 'roobee', + RPK: 'rpk', + RPL: 'rpl', + RSR: 'rsr', + RSWETH: 'rsweth', + RUBX: 'rubx', + RUEDATK: 'ruedatk', + RUN: 'run', + RUNE: 'rune', + RVR: 'rvr', + RYOSHI: 'ryoshi', + SAFE: 'safe', + SAIL: 'sail', + SAITABIT: 'saitabit', + SALT: 'salt', + SAND: 'sand', + SASHIMI: 'sashimi', + SAMO: 'samo', + SBC: 'sbc', + 'sol:sbc': 'sol:sbc', + 'sol:veur': 'sol:veur', + 'sol:vchf': 'sol:vchf', + 'sol:tbill': 'sol:tbill', + 'sol:usdg': 'sol:usdg', + 'sol:ausd': 'sol:ausd', + SBF: 'sbf', + SBR: 'sbr', // Saber IOU Token (Liquidity Mining Rewards) - SBRIOU = 'sbriou', - SCNSOL = 'scnsol', - SCOPE = 'scope', - SD = 'sd', - SDL = 'sdl', - SECO = 'seco', - SETH = 'seth', - 'SETH-H' = 'seth-h', - SETH2 = 'seth2', - SEWERCOIN = 'sewercoin', - SFI = 'sfi', - SGA = 'sga', - SGDX = 'sgdx', - SGR = 'sgr', - SGT = 'sgt', - SHDW = 'shdw', - SHEESH = 'sheesh', - SHIDO = 'shido', - SHK = 'shk', - SHOPX = 'shopx', - SHOW = 'show', - SHIB = 'shib', - SHR = 'shr', - SIH = 'sih', - SILV = 'silv', - SIPHER = 'sipher', - SIS = 'sis', - SKALE = 'skale', - SLAB = 'slab', - SLC = 'slc', - SLCL = 'slcl', - 'sol:slnd' = 'sol:slnd', - SLOT = 'slot', - SLP = 'slp', - SLRS = 'slrs', - SLVX = 'slvx', - SMT = 'smt', - SNC = 'snc', - SNM = 'snm', - SNOV = 'snov', - SNT = 'snt', - SNX = 'snx', - SNY = 'sny', - SOC = 'soc', - SOHM = 'sohm', - SOMM = 'somm', - SOS = 'sos', - SPA = 'spa', - SPELL = 'spell', - SPF = 'spf', - SPO = 'spo', - SOLVE = 'solve', - 'SQUID2.0' = 'squid2.0', - SRNT = 'srnt', - SRM = 'srm', - 'sol:srm' = 'sol:srm', - SSV = 'ssv', - STARS = 'stars', - STATE = 'state', - STBU = 'stbu', - STC = 'stc', - STCV2 = 'stcv2', - STEP = 'step', - STETH = 'steth', - STG = 'stg', - STKAAVE = 'stkaave', - STMX = 'stmx', - STORE = 'store', - STORJ = 'storj', - STORM = 'storm', - STPT = 'stpt', - STRIKE = 'strike', - STRK = 'strk', - STRONG = 'strong', - STSOL = 'stsol', - STZEN = 'stzen', - 'SUI-ERC20' = 'sui-erc20', - SUN = 'sun', - SUNNY = 'sunny', - SUPER = 'super', - SUPERPERIO = 'superperio', - SUSD = 'susd', - SUSDE = 'susde', - SUSHI = 'sushi', - SQUIG = 'squig', - SVT = 'svt', - SWAG = 'swag', - SWAP = 'SWAP', - SWEAT = 'sweat', - SWETH = 'sweth', - SWISE = 'swice', - SWITCH = 'switch', - SWRV = 'swrv', - SXP = 'sxp', - SYN = 'syn', - SYNCH = 'synch', - SYRUP = 'syrup', - 'SYNTH-SUSD' = 'synth-susd', - TAO = 'tao', - THRESHOLD = 'threshold', - THEU = 'theu', - TAUD = 'taud', - TBILL = 'tbill', - TBTC1 = 'tbtc1', - TBTC2 = 'tbtc2', - TCAD = 'tcad', - TCO = 'tco', - TEIGEN = 'teigen', - TEINU = 'teinu', - TEL = 'tel', - TELEGRAMDAO = 'telegramdao', - TEN = 'ten', - TENX = 'tenx', - TERC = 'terc', - TEUROC = 'teuroc', - TERC2DP = 'terc2dp', - HDTERC2DP = 'hdterc2dp', - TERC6DP = 'terc6dp', - HDTERC6DP = 'hdterc6dp', - TERC18DP = 'terc18DP', - HDTERC18DP = 'hdterc18DP', - TERC20 = 'terc20', - TERC2DP1 = 'terc2dp1', - TERC2DP2 = 'terc2dp2', - TERC2DP3 = 'terc2dp3', - TERC2DP4 = 'terc2dp4', - TERC2DP5 = 'terc2dp5', - TERC6DP1 = 'terc6dp1', - TERC6DP2 = 'terc6dp2', - TERC6DP3 = 'terc6dp3', - TERC6DP4 = 'terc6dp4', - TERC6DP5 = 'terc6dp5', - TERC18DP1 = 'terc18dp1', - TERC18DP2 = 'terc18dp2', - TERC18DP3 = 'terc18dp3', - TERC18DP4 = 'terc18dp4', - TERC18DP5 = 'terc18dp5', - TERC18DP6 = 'terc18dp6', - TERC18DP7 = 'terc18dp7', - TERC18DP8 = 'terc18dp8', - TERC18DP9 = 'terc18dp9', - TERC18DP10 = 'terc18dp10', - TERC18DP11 = 'terc18dp11', - TERC18DP12 = 'terc18dp12', - TERC18DP13 = 'terc18dp13', - TERC18DP14 = 'terc18dp14', - TERC18DP15 = 'terc18dp15', - BGERCH = 'bgerch', - TERM = 'term', - TGBP = 'tgbp', - TUSDS = 'tusds', - TGOUSD = 'tgousd', - 'hteth:gousd' = 'hteth:gousd', - 'hteth:usd1' = 'hteth:usd1', - 'hteth:stgusd1' = 'hteth:stgusd1', - 'hteth:tsteth' = 'hteth:tsteth', - THKD = 'thkd', - THUNDER = 'thunder', - TIO = 'tio', - TIOX = 'tiox', - TKMK = 'tkmk', - TKNT = 'tknt', - TKO = 'tko', - TKX = 'tkx', - TLAB = 'tlab', - TLM = 'tlm', - TLOS = 'tlos', - TMATIC = 'tmatic', - TMSN = 'tmsn', - TNT = 'tnt', - TOKAMAK = 'tokamak', - TOKE = 'toke', - TOKEN = 'token', - TOMI = 'tomi', - TOMOBEAR = 'tomobear', - TOMOBEAR2 = 'tomobear2', - TOMOBULL = 'tomobull', - TOK = 'tok', - TONCOIN = 'toncoin', - TOPM = 'topm', - TRAC = 'trac', - TRAXX = 'traxx', - TRB = 'trb', - TRIBE = 'tribe', - TRIBL = 'tribl', - TRL = 'trl', - TROY = 'troy', - TRST = 'trst', - TRU = 'tru', - TRUF = 'truf', - TRUFV2 = 'trufv2', - TRUMPLOSE = 'trumplose', - TRUMPWIN = 'trumpwin', - TRXBEAR = 'trxbear', - TRXBULL = 'trxbull', - TRXDOOM = 'trxdoom', - 'TRX-ERC20' = 'TRX-ERC20', - TRXHEDGE = 'trxhedge', - TRXMOON = 'trxmoon', + SBRIOU: 'sbriou', + SCNSOL: 'scnsol', + SCOPE: 'scope', + SD: 'sd', + SDL: 'sdl', + SECO: 'seco', + SETH: 'seth', + 'SETH-H': 'seth-h', + SETH2: 'seth2', + SEWERCOIN: 'sewercoin', + SFI: 'sfi', + SGA: 'sga', + SGDX: 'sgdx', + SGR: 'sgr', + SGT: 'sgt', + SHDW: 'shdw', + SHEESH: 'sheesh', + SHIDO: 'shido', + SHK: 'shk', + SHOPX: 'shopx', + SHOW: 'show', + SHIB: 'shib', + SHR: 'shr', + SIH: 'sih', + SILV: 'silv', + SIPHER: 'sipher', + SIS: 'sis', + SKALE: 'skale', + SLAB: 'slab', + SLC: 'slc', + SLCL: 'slcl', + 'sol:slnd': 'sol:slnd', + SLOT: 'slot', + SLP: 'slp', + SLRS: 'slrs', + SLVX: 'slvx', + SMT: 'smt', + SNC: 'snc', + SNM: 'snm', + SNOV: 'snov', + SNT: 'snt', + SNX: 'snx', + SNY: 'sny', + SOC: 'soc', + SOHM: 'sohm', + SOMM: 'somm', + SOS: 'sos', + SPA: 'spa', + SPELL: 'spell', + SPF: 'spf', + SPO: 'spo', + SOLVE: 'solve', + 'SQUID2.0': 'squid2.0', + SRNT: 'srnt', + SRM: 'srm', + 'sol:srm': 'sol:srm', + SSV: 'ssv', + STARS: 'stars', + STATE: 'state', + STBU: 'stbu', + STC: 'stc', + STCV2: 'stcv2', + STEP: 'step', + STETH: 'steth', + STG: 'stg', + STKAAVE: 'stkaave', + STMX: 'stmx', + STORE: 'store', + STORJ: 'storj', + STORM: 'storm', + STPT: 'stpt', + STRIKE: 'strike', + STRK: 'strk', + STRONG: 'strong', + STSOL: 'stsol', + STZEN: 'stzen', + 'SUI-ERC20': 'sui-erc20', + SUN: 'sun', + SUNNY: 'sunny', + SUPER: 'super', + SUPERPERIO: 'superperio', + SUSD: 'susd', + SUSDE: 'susde', + SUSHI: 'sushi', + SQUIG: 'squig', + SVT: 'svt', + SWAG: 'swag', + SWAP: 'SWAP', + SWEAT: 'sweat', + SWETH: 'sweth', + SWISE: 'swice', + SWITCH: 'switch', + SWRV: 'swrv', + SXP: 'sxp', + SYN: 'syn', + SYNCH: 'synch', + SYRUP: 'syrup', + 'SYNTH-SUSD': 'synth-susd', + TAO: 'tao', + THRESHOLD: 'threshold', + THEU: 'theu', + TAUD: 'taud', + TBILL: 'tbill', + TBTC1: 'tbtc1', + TBTC2: 'tbtc2', + TCAD: 'tcad', + TCO: 'tco', + TEIGEN: 'teigen', + TEINU: 'teinu', + TEL: 'tel', + TELEGRAMDAO: 'telegramdao', + TEN: 'ten', + TENX: 'tenx', + TERC: 'terc', + TEUROC: 'teuroc', + TERC2DP: 'terc2dp', + HDTERC2DP: 'hdterc2dp', + TERC6DP: 'terc6dp', + HDTERC6DP: 'hdterc6dp', + TERC18DP: 'terc18DP', + HDTERC18DP: 'hdterc18DP', + TERC20: 'terc20', + TERC2DP1: 'terc2dp1', + TERC2DP2: 'terc2dp2', + TERC2DP3: 'terc2dp3', + TERC2DP4: 'terc2dp4', + TERC2DP5: 'terc2dp5', + TERC6DP1: 'terc6dp1', + TERC6DP2: 'terc6dp2', + TERC6DP3: 'terc6dp3', + TERC6DP4: 'terc6dp4', + TERC6DP5: 'terc6dp5', + TERC18DP1: 'terc18dp1', + TERC18DP2: 'terc18dp2', + TERC18DP3: 'terc18dp3', + TERC18DP4: 'terc18dp4', + TERC18DP5: 'terc18dp5', + TERC18DP6: 'terc18dp6', + TERC18DP7: 'terc18dp7', + TERC18DP8: 'terc18dp8', + TERC18DP9: 'terc18dp9', + TERC18DP10: 'terc18dp10', + TERC18DP11: 'terc18dp11', + TERC18DP12: 'terc18dp12', + TERC18DP13: 'terc18dp13', + TERC18DP14: 'terc18dp14', + TERC18DP15: 'terc18dp15', + BGERCH: 'bgerch', + TERM: 'term', + TGBP: 'tgbp', + TUSDS: 'tusds', + TGOUSD: 'tgousd', + 'hteth:gousd': 'hteth:gousd', + 'hteth:usd1': 'hteth:usd1', + 'hteth:stgusd1': 'hteth:stgusd1', + 'hteth:tsteth': 'hteth:tsteth', + THKD: 'thkd', + THUNDER: 'thunder', + TIO: 'tio', + TIOX: 'tiox', + TKMK: 'tkmk', + TKNT: 'tknt', + TKO: 'tko', + TKX: 'tkx', + TLAB: 'tlab', + TLM: 'tlm', + TLOS: 'tlos', + TMATIC: 'tmatic', + TMSN: 'tmsn', + TNT: 'tnt', + TOKAMAK: 'tokamak', + TOKE: 'toke', + TOKEN: 'token', + TOMI: 'tomi', + TOMOBEAR: 'tomobear', + TOMOBEAR2: 'tomobear2', + TOMOBULL: 'tomobull', + TOK: 'tok', + TONCOIN: 'toncoin', + TOPM: 'topm', + TRAC: 'trac', + TRAXX: 'traxx', + TRB: 'trb', + TRIBE: 'tribe', + TRIBL: 'tribl', + TRL: 'trl', + TROY: 'troy', + TRST: 'trst', + TRU: 'tru', + TRUF: 'truf', + TRUFV2: 'trufv2', + TRUMPLOSE: 'trumplose', + TRUMPWIN: 'trumpwin', + TRXBEAR: 'trxbear', + TRXBULL: 'trxbull', + TRXDOOM: 'trxdoom', + 'TRX-ERC20': 'TRX-ERC20', + TRXHEDGE: 'trxhedge', + TRXMOON: 'trxmoon', // Bilira - TRYB = 'tryb', + TRYB: 'tryb', // TRYB on Solana - https://solscan.io/token/6ry4WBDvAwAnrYJVv6MCog4J8zx6S3cPgSqnTsDZ73AR - TRYB2 = 'tryb2', - TRYBBEAR = 'trybbear', - TRYBBULL = 'trybbull', - TRYX = 'tryx', - TST = 'tst', - TSUKA = 'tsuka', - TULIP = 'tulip', - TUPOLIS = 'tupolis', - TUSD = 'tusd', - TUSDC = 'tusdc', - TUSDT = 'tusdt', - TUSRM = 'tusrm', - TWDOGE = 'twdoge', - TWETH = 'tweth', - TXL = 'txl', - TXSGD = 'txsgd', - TXUSD = 'txusd', - UAIR = 'uair', - UBXT = 'ubxt', - UCO = 'uco', - UFT = 'uft', - UKG = 'ukg', - UMA = 'uma', - UMEE = 'umee', - UNB = 'unb', - UNI = 'uni', - UOS = 'uos', - UP = 'up', - UPBTC = 'upbtc', - UPP = 'upp', - UPT = 'upt', - UPUSD = 'upusd', - UQC = 'uqc', - URHD = 'urhd', - 'sol:usdt' = 'sol:usdt', - 'sol:usdc' = 'sol:usdc', - USCC = 'uscc', - USDC = 'usdc', - 'USDC-POS-WORMHOLE' = 'usdc-pos-wormhole', - USDD = 'usdd', - USDE = 'usde', - USDGLO = 'usdglo', - USDH = 'usdh', - USDK = 'usdk', + TRYB2: 'tryb2', + TRYBBEAR: 'trybbear', + TRYBBULL: 'trybbull', + TRYX: 'tryx', + TST: 'tst', + TSUKA: 'tsuka', + TULIP: 'tulip', + TUPOLIS: 'tupolis', + TUSD: 'tusd', + TUSDC: 'tusdc', + TUSDT: 'tusdt', + TUSRM: 'tusrm', + TWDOGE: 'twdoge', + TWETH: 'tweth', + TXL: 'txl', + TXSGD: 'txsgd', + TXUSD: 'txusd', + UAIR: 'uair', + UBXT: 'ubxt', + UCO: 'uco', + UFT: 'uft', + UKG: 'ukg', + UMA: 'uma', + UMEE: 'umee', + UNB: 'unb', + UNI: 'uni', + UOS: 'uos', + UP: 'up', + UPBTC: 'upbtc', + UPP: 'upp', + UPT: 'upt', + UPUSD: 'upusd', + UQC: 'uqc', + URHD: 'urhd', + 'sol:usdt': 'sol:usdt', + 'sol:usdc': 'sol:usdc', + USCC: 'uscc', + USDC: 'usdc', + 'USDC-POS-WORMHOLE': 'usdc-pos-wormhole', + USDD: 'usdd', + USDE: 'usde', + USDGLO: 'usdglo', + USDH: 'usdh', + USDK: 'usdk', // Also available on EOS - USDT = 'usdt', - USDTBEAR = 'usdtbear', - USDTBULL = 'usdtbull', - USDTDOOM = 'usdtdoom', - USDTHEDGE = 'usdthedge', - USDTMOON = 'usdtmoon', - USDX = 'usdx', - USDY = 'usdy', - USG = 'usg', - USPX = 'uspx', - UST = 'ust', - USTB = 'ustb', - 'UST-WORMHOLE' = 'ust-wormhole', - USX = 'usx', - USYC = 'usyc', - UTK = 'utk', - UTK1 = 'utk1', - UXB = 'uxb', - UXP = 'uxp', - VALOR = 'valor', - VANRY = 'vanry', - VBNT = 'vbnt', - VCORE = 'vcore', - VDX = 'vdx', - VEC = 'vec', - VEE = 'vee', - VEGA = 'vega', - VEXT = 'vext', - VGX = 'vgx', - VI = 'vi', - VIB = 'vib', - VIC = 'vic', - VIDT = 'vidt', - VISR = 'visr', - VIU = 'viu', - VOLT = 'volt', - VRA = 'vra', - VRGX = 'vrgx', - VRTX = 'vrtx', - VSP = 'vsp', - VXC = 'vxc', - VXV = 'vxv', - W = 'w', + USDT: 'usdt', + USDTBEAR: 'usdtbear', + USDTBULL: 'usdtbull', + USDTDOOM: 'usdtdoom', + USDTHEDGE: 'usdthedge', + USDTMOON: 'usdtmoon', + USDX: 'usdx', + USDY: 'usdy', + USG: 'usg', + USPX: 'uspx', + UST: 'ust', + USTB: 'ustb', + 'UST-WORMHOLE': 'ust-wormhole', + USX: 'usx', + USYC: 'usyc', + UTK: 'utk', + UTK1: 'utk1', + UXB: 'uxb', + UXP: 'uxp', + VALOR: 'valor', + VANRY: 'vanry', + VBNT: 'vbnt', + VCORE: 'vcore', + VDX: 'vdx', + VEC: 'vec', + VEE: 'vee', + VEGA: 'vega', + VEXT: 'vext', + VGX: 'vgx', + VI: 'vi', + VIB: 'vib', + VIC: 'vic', + VIDT: 'vidt', + VISR: 'visr', + VIU: 'viu', + VOLT: 'volt', + VRA: 'vra', + VRGX: 'vrgx', + VRTX: 'vrtx', + VSP: 'vsp', + VXC: 'vxc', + VXV: 'vxv', + W: 'w', // Wrapped AAVE - WAAVE = 'waave', - WABI = 'wabi', - WAFL = 'wafl', - WAGMI = 'wagmi', + WAAVE: 'waave', + WABI: 'wabi', + WAFL: 'wafl', + WAGMI: 'wagmi', // Wrapped AAVAX - WAVAX = 'wavax', - WAVES = 'waves', - WAX = 'wax', - WAXP = 'waxp', + WAVAX: 'wavax', + WAVES: 'waves', + WAX: 'wax', + WAXP: 'waxp', // Wrapped BNB - WBNB = 'wbnb', - WECAN = 'wecan', - WFEE = 'wfee', - WHAT = 'what', - WOO = 'woo', - WTK = 'wtk', - WBTC = 'wbtc', - WDAIV2 = 'wdaiv2', - WDOGE = 'wdoge', - WCFG = 'wcfg', - WEC = 'wec', - 'sol:wec' = 'sol:wec', - WET = 'wet', - WETH = 'weth', - WEETH = 'weeth', - WFLOW = 'wflow', - WFFT = 'wfft', - WHALE = 'whale', - WHT = 'wht', - WILD = 'wild', - WING = 'wing', - WNXM = 'wnxm', - WLD = 'wld', - WLUNA = 'wluna', - WLXT = 'wlxt', + WBNB: 'wbnb', + WECAN: 'wecan', + WFEE: 'wfee', + WHAT: 'what', + WOO: 'woo', + WTK: 'wtk', + WBTC: 'wbtc', + WDAIV2: 'wdaiv2', + WDOGE: 'wdoge', + WCFG: 'wcfg', + WEC: 'wec', + 'sol:wec': 'sol:wec', + WET: 'wet', + WETH: 'weth', + WEETH: 'weeth', + WFLOW: 'wflow', + WFFT: 'wfft', + WHALE: 'whale', + WHT: 'wht', + WILD: 'wild', + WING: 'wing', + WNXM: 'wnxm', + WLD: 'wld', + WLUNA: 'wluna', + WLXT: 'wlxt', // Wrapped SOL - 'sol:wsol' = 'sol:wsol', + 'sol:wsol': 'sol:wsol', // Wrapped Rose - WROSE = 'wrose', - WSTETH = 'wsteth', - WPX = 'wpx', - WTAO = 'wtao', - WTC = 'wtc', - WTGXX = 'wtgxx', + WROSE: 'wrose', + WSTETH: 'wsteth', + WPX: 'wpx', + WTAO: 'wtao', + WTC: 'wtc', + WTGXX: 'wtgxx', // USD Coin (Wormhole) - WUSDC = 'wusdc', - WUSDCV2 = 'wusdvcv2', - WUSDM = 'wusdm', + WUSDC: 'wusdc', + WUSDCV2: 'wusdvcv2', + WUSDM: 'wusdm', // Tether USD (Wormhole) - WUSDTV2 = 'wusdtv2', - WXRP = 'wxrp', - WXRPV0 = 'wxrpv0', - WXT = 'wxt', - XAUD = 'xaud', - XAURY = 'xaury', - XAUT = 'xaut', - XAUTBEAR = 'xautbear', - XAUTBULL = 'xautbull', - XBGOLD = 'xbgold', - XCD = 'xcd', - XCHNG = 'xchng', - XCN = 'xcn', - XDEFI = 'xdefi', - XDOGE = 'xdoge', - XEX = 'xex', - XLMBEAR = 'xlmbear', - XLMBULL = 'xlmbull', - XRL = 'xrl', - XRPBEAR = 'xrpbear', - XRPBULL = 'xrpbull', - XRPDOOM = 'xrpdoom', - XRPHEDGE = 'xrphedge', - XRPMOON = 'xrpmoon', - XSGD = 'xsgd', - XSUSHI = 'xsushi', - XTP = 'xtp', - XTZBEAR = 'xtzbear', - XTZBULL = 'xtzbull', - XUSD = 'xusd', - XVS = 'xvs', - XX = 'xx', - XZK = 'xzk', - YAMV2 = 'yamv2', - YFDAI = 'yfdai', - YFI = 'yfi', - YFII = 'yfii', - YFL = 'yfl', - YGG = 'ygg', - YLD = 'yld', - YNG = 'yng', - YSEY = 'ysey', - ZARX = 'zarx', - ZBC = 'zbc', - ZBU = 'zbu', - ZBUV2 = 'zbuv2', - ZCO = 'zco', - ZECBEAR = 'zecbear', - ZECBULL = 'zecbull', - ZETAEVM = 'zetaevm', - ZIL = 'zil', - ZIP = 'zip', - ZIX = 'zix', - ZKL = 'zkl', - ZKS = 'zks', - ZLW = 'zlw', - ZMT = 'zmt', - ZOOM = 'zoom', - ZRO = 'zro', - 'ZRO-0x320' = 'zro-0x320', - 'ZRO-0xFCF' = 'zro-0xfcf', - 'ZRO-0xE5C' = 'zro-0xe5c', - ZRX = 'zrx', - ZUSD = 'zusd', - 'eth:usdg' = 'eth:usdg', - 'eth:spxux' = 'eth:spxux', - 'eth:aleo' = 'eth:aleo', - 'eth:dbusd' = 'eth:dbusd', - 'eth:edu' = 'eth:edu', - 'eth:telos' = 'eth:telos', - 'eth:cusdo' = 'eth:cusdo', - 'eth:aevo' = 'eth:aevo', - 'eth:alt' = 'eth:alt', - 'eth:rtbl' = 'eth:rtbl', - 'eth:virtual' = 'eth:virtual', - 'eth:vice' = 'eth:vice', - 'eth:audu' = 'eth:audu', - 'eth:wlfi' = 'eth:wlfi', - 'eth:kava' = 'eth:kava', - 'eth:gousd' = 'eth:gousd', - 'eth:iq' = 'eth:iq', - 'eth:iris' = 'eth:iris', - 'eth:hard' = 'eth:hard', - 'eth:hegic' = 'eth:hegic', - 'eth:spx' = 'eth:spx', - 'eth:exrd' = 'eth:exrd', - 'eth:turbo' = 'eth:turbo', - 'eth:icnt' = 'eth:icnt', - 'eth:god' = 'eth:god', - 'eth:sky' = 'eth:sky', - 'eth:uco' = 'eth:uco', - 'eth:fuel' = 'eth:fuel', - 'eth:xreth' = 'eth:xreth', - 'eth:xy' = 'eth:xy', - 'eth:move' = 'eth:move', - 'eth:mon' = 'eth:mon', - 'eth:usual' = 'eth:usual', - 'eth:usd1' = 'eth:usd1', - 'eth:ibtc' = 'eth:ibtc', - 'eth:pyr' = 'eth:pyr', - 'eth:una' = 'eth:una', - 'eth:ads' = 'eth:ads', - 'eth:fuelv1' = 'eth:fuelv1', - 'eth:cet' = 'eth:cet', - 'eth:unio' = 'eth:unio', - 'eth:flttx' = 'eth:flttx', - 'eth:wtsix' = 'eth:wtsix', - 'eth:modrx' = 'eth:modrx', - 'eth:techx' = 'eth:techx', - 'eth:wtsyx' = 'eth:wtsyx', - 'eth:wtlgx' = 'eth:wtlgx', - 'eth:wttsx' = 'eth:wttsx', - 'eth:tipsx' = 'eth:tipsx', - 'eth:wtstx' = 'eth:wtstx', - 'eth:lngvx' = 'eth:lngvx', - 'eth:eqtyx' = 'eth:eqtyx', - 'eth:deuro' = 'eth:deuro', - 'eth:usdf' = 'eth:usdf', - 'eth:ausd' = 'eth:ausd', - 'eth:gaia' = 'eth:gaia', - 'eth:usds' = 'eth:usds', - 'eth:perc' = 'eth:perc', - 'eth:cfg' = 'eth:cfg', - 'eth:plume' = 'eth:plume', - 'eth:vbill' = 'eth:vbill', - 'eth:la' = 'eth:la', - 'eth:es' = 'eth:es', - 'eth:ctrl' = 'eth:ctrl', - 'eth:benji' = 'eth:benji', - 'eth:ibenji' = 'eth:ibenji', - 'eth:chex' = 'eth:chex', - 'eth:gho' = 'eth:gho', - 'eth:npc' = 'eth:npc', - 'eth:towns' = 'eth:towns', - 'eth:umint' = 'eth:umint', - 'eth:arb' = 'eth:arb', - 'eth:ez' = 'eth:ez', - 'eth:ncash' = 'eth:ncash', - 'eth:sub' = 'eth:sub', - 'eth:poe' = 'eth:poe', - 'eth:ocn' = 'eth:ocn', - 'eth:banca' = 'eth:banca', - 'eth:stq' = 'eth:stq', - 'eth:route' = 'eth:route', - 'eth:ryt' = 'eth:ryt', - 'eth:guild' = 'eth:guild', - 'eth:rdo' = 'eth:rdo', - 'eth:h' = 'eth:h', - 'eth:wbt' = 'eth:wbt', - 'eth:ftn' = 'eth:ftn', - 'eth:sc' = 'eth:sc', - 'eth:lf' = 'eth:lf', - 'eth:usdcv' = 'eth:usdcv', - 'eth:cake' = 'eth:cake', - 'eth:nft' = 'eth:nft', - 'eth:morpho' = 'eth:morpho', - 'eth:usdd' = 'eth:usdd', - 'eth:mx' = 'eth:mx', - 'eth:flz' = 'eth:flz', - 'eth:usd0' = 'eth:usd0', - 'eth:white' = 'eth:white', - 'eth:upc' = 'eth:upc', - 'eth:lgct' = 'eth:lgct', - 'eth:usdtb' = 'eth:usdtb', - 'eth:deusd' = 'eth:deusd', - 'eth:neiro' = 'eth:neiro', - 'eth:vana' = 'eth:vana', - 'eth:eurau' = 'eth:eurau', - 'eth:insur' = 'eth:insur', - 'xlm:BST-GADDFE4R72YUP2AOEL67OHZN3GJQYPC3VE734N2XFMEGRR2L32CZ3XYZ' = 'xlm:BST-GADDFE4R72YUP2AOEL67OHZN3GJQYPC3VE734N2XFMEGRR2L32CZ3XYZ', - 'xlm:VELO-GDM4RQUQQUVSKQA7S6EM7XBZP3FCGH4Q7CL6TABQ7B2BEJ5ERARM2M5M' = 'xlm:VELO-GDM4RQUQQUVSKQA7S6EM7XBZP3FCGH4Q7CL6TABQ7B2BEJ5ERARM2M5M', - 'xlm:SLT-GCKA6K5PCQ6PNF5RQBF7PQDJWRHO6UOGFMRLK3DYHDOI244V47XKQ4GP' = 'xlm:SLT-GCKA6K5PCQ6PNF5RQBF7PQDJWRHO6UOGFMRLK3DYHDOI244V47XKQ4GP', - 'xlm:USD-GDUKMGUGDZQK6YHYA5Z6AY2G4XDSZPSZ3SW5UN3ARVMO6QSRDWP5YLEX' = 'xlm:USD-GDUKMGUGDZQK6YHYA5Z6AY2G4XDSZPSZ3SW5UN3ARVMO6QSRDWP5YLEX', - 'xlm:ETH-GBVOL67TMUQBGL4TZYNMY3ZQ5WGQYFPFD5VJRWXR72VA33VFNL225PL5' = 'xlm:ETH-GBVOL67TMUQBGL4TZYNMY3ZQ5WGQYFPFD5VJRWXR72VA33VFNL225PL5', - 'xlm:WXT-GASBLVHS5FOABSDNW5SPPH3QRJYXY5JHA2AOA2QHH2FJLZBRXSG4SWXT' = 'xlm:WXT-GASBLVHS5FOABSDNW5SPPH3QRJYXY5JHA2AOA2QHH2FJLZBRXSG4SWXT', - 'xlm:USDC-GA5ZSEJYB37JRC5AVCIA5MOP4RHTM335X2KGX3IHOJAPP5RE34K4KZVN' = 'xlm:USDC-GA5ZSEJYB37JRC5AVCIA5MOP4RHTM335X2KGX3IHOJAPP5RE34K4KZVN', - 'xlm:SIX-GDMS6EECOH6MBMCP3FYRYEVRBIV3TQGLOFQIPVAITBRJUMTI6V7A2X6Z' = 'xlm:SIX-GDMS6EECOH6MBMCP3FYRYEVRBIV3TQGLOFQIPVAITBRJUMTI6V7A2X6Z', - 'xlm:BRLT-GCHQ3F2BF5P74DMDNOOGHT5DUCKC773AW5DTOFINC26W4KGYFPYDPRSO' = 'xlm:BRLT-GCHQ3F2BF5P74DMDNOOGHT5DUCKC773AW5DTOFINC26W4KGYFPYDPRSO', - 'xlm:ARST-GCSAZVWXZKWS4XS223M5F54H2B6XPIIXZZGP7KEAIU6YSL5HDRGCI3DG' = 'xlm:ARST-GCSAZVWXZKWS4XS223M5F54H2B6XPIIXZZGP7KEAIU6YSL5HDRGCI3DG', - 'xlm:AQUA-GBNZILSTVQZ4R7IKQDGHYGY2QXL5QOFJYQMXPKWRRM5PAV7Y4M67AQUA' = 'xlm:AQUA-GBNZILSTVQZ4R7IKQDGHYGY2QXL5QOFJYQMXPKWRRM5PAV7Y4M67AQUA', - 'xlm:EURC-GDHU6WRG4IEQXM5NZ4BMPKOXHW76MZM4Y2IEMFDVXBSDP6SJY4ITNPP2' = 'xlm:EURC-GDHU6WRG4IEQXM5NZ4BMPKOXHW76MZM4Y2IEMFDVXBSDP6SJY4ITNPP2', - 'xlm:GYEN-GDF6VOEGRWLOZ64PQQGKD2IYWA22RLT37GJKS2EJXZHT2VLAGWLC5TOB' = 'xlm:GYEN-GDF6VOEGRWLOZ64PQQGKD2IYWA22RLT37GJKS2EJXZHT2VLAGWLC5TOB', - 'xlm:ZUSD-GDF6VOEGRWLOZ64PQQGKD2IYWA22RLT37GJKS2EJXZHT2VLAGWLC5TOB' = 'xlm:ZUSD-GDF6VOEGRWLOZ64PQQGKD2IYWA22RLT37GJKS2EJXZHT2VLAGWLC5TOB', - 'xlm:EURS-GC5FGCDEOGOGSNWCCNKS3OMEVDHTE3Q5A5FEQWQKV3AXA7N6KDQ2CUZJ' = 'xlm:EURS-GC5FGCDEOGOGSNWCCNKS3OMEVDHTE3Q5A5FEQWQKV3AXA7N6KDQ2CUZJ', - 'xlm:VEUR-GDXLSLCOPPHTWOQXLLKSVN4VN3G67WD2ENU7UMVAROEYVJLSPSEWXIZN' = 'xlm:VEUR-GDXLSLCOPPHTWOQXLLKSVN4VN3G67WD2ENU7UMVAROEYVJLSPSEWXIZN', - 'xlm:VCHF-GDXLSLCOPPHTWOQXLLKSVN4VN3G67WD2ENU7UMVAROEYVJLSPSEWXIZN' = 'xlm:VCHF-GDXLSLCOPPHTWOQXLLKSVN4VN3G67WD2ENU7UMVAROEYVJLSPSEWXIZN', - 'xlm:AUDD-GDC7X2MXTYSAKUUGAIQ7J7RPEIM7GXSAIWFYWWH4GLNFECQVJJLB2EEU' = 'xlm:AUDD-GDC7X2MXTYSAKUUGAIQ7J7RPEIM7GXSAIWFYWWH4GLNFECQVJJLB2EEU', - 'xlm:BENJI-GBHNGLLIE3KWGKCHIKMHJ5HVZHYIK7WTBE4QF5PLAKL4CJGSEU7HZIW5' = 'xlm:BENJI-GBHNGLLIE3KWGKCHIKMHJ5HVZHYIK7WTBE4QF5PLAKL4CJGSEU7HZIW5', - 'xlm:gBENJI-GD5J73EKK5IYL5XS3FBTHHX7CZIYRP7QXDL57XFWGC2WVYWT326OBXRP' = 'xlm:gBENJI-GD5J73EKK5IYL5XS3FBTHHX7CZIYRP7QXDL57XFWGC2WVYWT326OBXRP', + WUSDTV2: 'wusdtv2', + WXRP: 'wxrp', + WXRPV0: 'wxrpv0', + WXT: 'wxt', + XAUD: 'xaud', + XAURY: 'xaury', + XAUT: 'xaut', + XAUTBEAR: 'xautbear', + XAUTBULL: 'xautbull', + XBGOLD: 'xbgold', + XCD: 'xcd', + XCHNG: 'xchng', + XCN: 'xcn', + XDEFI: 'xdefi', + XDOGE: 'xdoge', + XEX: 'xex', + XLMBEAR: 'xlmbear', + XLMBULL: 'xlmbull', + XRL: 'xrl', + XRPBEAR: 'xrpbear', + XRPBULL: 'xrpbull', + XRPDOOM: 'xrpdoom', + XRPHEDGE: 'xrphedge', + XRPMOON: 'xrpmoon', + XSGD: 'xsgd', + XSUSHI: 'xsushi', + XTP: 'xtp', + XTZBEAR: 'xtzbear', + XTZBULL: 'xtzbull', + XUSD: 'xusd', + XVS: 'xvs', + XX: 'xx', + XZK: 'xzk', + YAMV2: 'yamv2', + YFDAI: 'yfdai', + YFI: 'yfi', + YFII: 'yfii', + YFL: 'yfl', + YGG: 'ygg', + YLD: 'yld', + YNG: 'yng', + YSEY: 'ysey', + ZARX: 'zarx', + ZBC: 'zbc', + ZBU: 'zbu', + ZBUV2: 'zbuv2', + ZCO: 'zco', + ZECBEAR: 'zecbear', + ZECBULL: 'zecbull', + ZETAEVM: 'zetaevm', + ZIL: 'zil', + ZIP: 'zip', + ZIX: 'zix', + ZKL: 'zkl', + ZKS: 'zks', + ZLW: 'zlw', + ZMT: 'zmt', + ZOOM: 'zoom', + ZRO: 'zro', + 'ZRO-0x320': 'zro-0x320', + 'ZRO-0xFCF': 'zro-0xfcf', + 'ZRO-0xE5C': 'zro-0xe5c', + ZRX: 'zrx', + ZUSD: 'zusd', + 'eth:usdg': 'eth:usdg', + 'eth:spxux': 'eth:spxux', + 'eth:aleo': 'eth:aleo', + 'eth:dbusd': 'eth:dbusd', + 'eth:edu': 'eth:edu', + 'eth:telos': 'eth:telos', + 'eth:cusdo': 'eth:cusdo', + 'eth:aevo': 'eth:aevo', + 'eth:alt': 'eth:alt', + 'eth:rtbl': 'eth:rtbl', + 'eth:virtual': 'eth:virtual', + 'eth:vice': 'eth:vice', + 'eth:audu': 'eth:audu', + 'eth:wlfi': 'eth:wlfi', + 'eth:kava': 'eth:kava', + 'eth:gousd': 'eth:gousd', + 'eth:iq': 'eth:iq', + 'eth:iris': 'eth:iris', + 'eth:hard': 'eth:hard', + 'eth:hegic': 'eth:hegic', + 'eth:spx': 'eth:spx', + 'eth:exrd': 'eth:exrd', + 'eth:turbo': 'eth:turbo', + 'eth:icnt': 'eth:icnt', + 'eth:god': 'eth:god', + 'eth:sky': 'eth:sky', + 'eth:uco': 'eth:uco', + 'eth:fuel': 'eth:fuel', + 'eth:xreth': 'eth:xreth', + 'eth:xy': 'eth:xy', + 'eth:move': 'eth:move', + 'eth:mon': 'eth:mon', + 'eth:usual': 'eth:usual', + 'eth:usd1': 'eth:usd1', + 'eth:ibtc': 'eth:ibtc', + 'eth:pyr': 'eth:pyr', + 'eth:una': 'eth:una', + 'eth:ads': 'eth:ads', + 'eth:fuelv1': 'eth:fuelv1', + 'eth:cet': 'eth:cet', + 'eth:unio': 'eth:unio', + 'eth:flttx': 'eth:flttx', + 'eth:wtsix': 'eth:wtsix', + 'eth:modrx': 'eth:modrx', + 'eth:techx': 'eth:techx', + 'eth:wtsyx': 'eth:wtsyx', + 'eth:wtlgx': 'eth:wtlgx', + 'eth:wttsx': 'eth:wttsx', + 'eth:tipsx': 'eth:tipsx', + 'eth:wtstx': 'eth:wtstx', + 'eth:lngvx': 'eth:lngvx', + 'eth:eqtyx': 'eth:eqtyx', + 'eth:deuro': 'eth:deuro', + 'eth:usdf': 'eth:usdf', + 'eth:ausd': 'eth:ausd', + 'eth:gaia': 'eth:gaia', + 'eth:usds': 'eth:usds', + 'eth:perc': 'eth:perc', + 'eth:cfg': 'eth:cfg', + 'eth:plume': 'eth:plume', + 'eth:vbill': 'eth:vbill', + 'eth:la': 'eth:la', + 'eth:es': 'eth:es', + 'eth:ctrl': 'eth:ctrl', + 'eth:benji': 'eth:benji', + 'eth:ibenji': 'eth:ibenji', + 'eth:chex': 'eth:chex', + 'eth:gho': 'eth:gho', + 'eth:npc': 'eth:npc', + 'eth:towns': 'eth:towns', + 'eth:umint': 'eth:umint', + 'eth:arb': 'eth:arb', + 'eth:ez': 'eth:ez', + 'eth:ncash': 'eth:ncash', + 'eth:sub': 'eth:sub', + 'eth:poe': 'eth:poe', + 'eth:ocn': 'eth:ocn', + 'eth:banca': 'eth:banca', + 'eth:stq': 'eth:stq', + 'eth:route': 'eth:route', + 'eth:ryt': 'eth:ryt', + 'eth:guild': 'eth:guild', + 'eth:rdo': 'eth:rdo', + 'eth:h': 'eth:h', + 'eth:wbt': 'eth:wbt', + 'eth:ftn': 'eth:ftn', + 'eth:sc': 'eth:sc', + 'eth:lf': 'eth:lf', + 'eth:usdcv': 'eth:usdcv', + 'eth:cake': 'eth:cake', + 'eth:nft': 'eth:nft', + 'eth:morpho': 'eth:morpho', + 'eth:usdd': 'eth:usdd', + 'eth:mx': 'eth:mx', + 'eth:flz': 'eth:flz', + 'eth:usd0': 'eth:usd0', + 'eth:white': 'eth:white', + 'eth:upc': 'eth:upc', + 'eth:lgct': 'eth:lgct', + 'eth:usdtb': 'eth:usdtb', + 'eth:deusd': 'eth:deusd', + 'eth:neiro': 'eth:neiro', + 'eth:vana': 'eth:vana', + 'eth:eurau': 'eth:eurau', + 'eth:insur': 'eth:insur', + 'xlm:BST-GADDFE4R72YUP2AOEL67OHZN3GJQYPC3VE734N2XFMEGRR2L32CZ3XYZ': + 'xlm:BST-GADDFE4R72YUP2AOEL67OHZN3GJQYPC3VE734N2XFMEGRR2L32CZ3XYZ', + 'xlm:VELO-GDM4RQUQQUVSKQA7S6EM7XBZP3FCGH4Q7CL6TABQ7B2BEJ5ERARM2M5M': + 'xlm:VELO-GDM4RQUQQUVSKQA7S6EM7XBZP3FCGH4Q7CL6TABQ7B2BEJ5ERARM2M5M', + 'xlm:SLT-GCKA6K5PCQ6PNF5RQBF7PQDJWRHO6UOGFMRLK3DYHDOI244V47XKQ4GP': + 'xlm:SLT-GCKA6K5PCQ6PNF5RQBF7PQDJWRHO6UOGFMRLK3DYHDOI244V47XKQ4GP', + 'xlm:USD-GDUKMGUGDZQK6YHYA5Z6AY2G4XDSZPSZ3SW5UN3ARVMO6QSRDWP5YLEX': + 'xlm:USD-GDUKMGUGDZQK6YHYA5Z6AY2G4XDSZPSZ3SW5UN3ARVMO6QSRDWP5YLEX', + 'xlm:ETH-GBVOL67TMUQBGL4TZYNMY3ZQ5WGQYFPFD5VJRWXR72VA33VFNL225PL5': + 'xlm:ETH-GBVOL67TMUQBGL4TZYNMY3ZQ5WGQYFPFD5VJRWXR72VA33VFNL225PL5', + 'xlm:WXT-GASBLVHS5FOABSDNW5SPPH3QRJYXY5JHA2AOA2QHH2FJLZBRXSG4SWXT': + 'xlm:WXT-GASBLVHS5FOABSDNW5SPPH3QRJYXY5JHA2AOA2QHH2FJLZBRXSG4SWXT', + 'xlm:USDC-GA5ZSEJYB37JRC5AVCIA5MOP4RHTM335X2KGX3IHOJAPP5RE34K4KZVN': + 'xlm:USDC-GA5ZSEJYB37JRC5AVCIA5MOP4RHTM335X2KGX3IHOJAPP5RE34K4KZVN', + 'xlm:SIX-GDMS6EECOH6MBMCP3FYRYEVRBIV3TQGLOFQIPVAITBRJUMTI6V7A2X6Z': + 'xlm:SIX-GDMS6EECOH6MBMCP3FYRYEVRBIV3TQGLOFQIPVAITBRJUMTI6V7A2X6Z', + 'xlm:BRLT-GCHQ3F2BF5P74DMDNOOGHT5DUCKC773AW5DTOFINC26W4KGYFPYDPRSO': + 'xlm:BRLT-GCHQ3F2BF5P74DMDNOOGHT5DUCKC773AW5DTOFINC26W4KGYFPYDPRSO', + 'xlm:ARST-GCSAZVWXZKWS4XS223M5F54H2B6XPIIXZZGP7KEAIU6YSL5HDRGCI3DG': + 'xlm:ARST-GCSAZVWXZKWS4XS223M5F54H2B6XPIIXZZGP7KEAIU6YSL5HDRGCI3DG', + 'xlm:AQUA-GBNZILSTVQZ4R7IKQDGHYGY2QXL5QOFJYQMXPKWRRM5PAV7Y4M67AQUA': + 'xlm:AQUA-GBNZILSTVQZ4R7IKQDGHYGY2QXL5QOFJYQMXPKWRRM5PAV7Y4M67AQUA', + 'xlm:EURC-GDHU6WRG4IEQXM5NZ4BMPKOXHW76MZM4Y2IEMFDVXBSDP6SJY4ITNPP2': + 'xlm:EURC-GDHU6WRG4IEQXM5NZ4BMPKOXHW76MZM4Y2IEMFDVXBSDP6SJY4ITNPP2', + 'xlm:GYEN-GDF6VOEGRWLOZ64PQQGKD2IYWA22RLT37GJKS2EJXZHT2VLAGWLC5TOB': + 'xlm:GYEN-GDF6VOEGRWLOZ64PQQGKD2IYWA22RLT37GJKS2EJXZHT2VLAGWLC5TOB', + 'xlm:ZUSD-GDF6VOEGRWLOZ64PQQGKD2IYWA22RLT37GJKS2EJXZHT2VLAGWLC5TOB': + 'xlm:ZUSD-GDF6VOEGRWLOZ64PQQGKD2IYWA22RLT37GJKS2EJXZHT2VLAGWLC5TOB', + 'xlm:EURS-GC5FGCDEOGOGSNWCCNKS3OMEVDHTE3Q5A5FEQWQKV3AXA7N6KDQ2CUZJ': + 'xlm:EURS-GC5FGCDEOGOGSNWCCNKS3OMEVDHTE3Q5A5FEQWQKV3AXA7N6KDQ2CUZJ', + 'xlm:VEUR-GDXLSLCOPPHTWOQXLLKSVN4VN3G67WD2ENU7UMVAROEYVJLSPSEWXIZN': + 'xlm:VEUR-GDXLSLCOPPHTWOQXLLKSVN4VN3G67WD2ENU7UMVAROEYVJLSPSEWXIZN', + 'xlm:VCHF-GDXLSLCOPPHTWOQXLLKSVN4VN3G67WD2ENU7UMVAROEYVJLSPSEWXIZN': + 'xlm:VCHF-GDXLSLCOPPHTWOQXLLKSVN4VN3G67WD2ENU7UMVAROEYVJLSPSEWXIZN', + 'xlm:AUDD-GDC7X2MXTYSAKUUGAIQ7J7RPEIM7GXSAIWFYWWH4GLNFECQVJJLB2EEU': + 'xlm:AUDD-GDC7X2MXTYSAKUUGAIQ7J7RPEIM7GXSAIWFYWWH4GLNFECQVJJLB2EEU', + 'xlm:BENJI-GBHNGLLIE3KWGKCHIKMHJ5HVZHYIK7WTBE4QF5PLAKL4CJGSEU7HZIW5': + 'xlm:BENJI-GBHNGLLIE3KWGKCHIKMHJ5HVZHYIK7WTBE4QF5PLAKL4CJGSEU7HZIW5', + 'xlm:gBENJI-GD5J73EKK5IYL5XS3FBTHHX7CZIYRP7QXDL57XFWGC2WVYWT326OBXRP': + 'xlm:gBENJI-GD5J73EKK5IYL5XS3FBTHHX7CZIYRP7QXDL57XFWGC2WVYWT326OBXRP', // Eth NFTs // generic NFTs - 'erc721:token' = 'erc721:token', - 'erc1155:token' = 'erc1155:token', - 'nonstandard:token' = 'nonstandard:token', + 'erc721:token': 'erc721:token', + 'erc1155:token': 'erc1155:token', + 'nonstandard:token': 'nonstandard:token', // Test Eth NFTs - 'terc721:token' = 'terc721:token', - 'terc1155:token' = 'terc1155:token', - 'tnonstandard:token' = 'tnonstandard:token', + 'terc721:token': 'terc721:token', + 'terc1155:token': 'terc1155:token', + 'tnonstandard:token': 'tnonstandard:token', // Algorand mainnet tokens - 'algo:USDC-31566704' = 'algo:USDC-31566704', - 'algo:USDt-312769' = 'algo:USDt-312769', - 'algo:MCAU-6547014' = 'algo:MCAU-6547014', - 'algo:QCAD-84507107' = 'algo:QCAD-84507107', - 'algo:VCAD-438505559' = 'algo:VCAD-438505559', + 'algo:USDC-31566704': 'algo:USDC-31566704', + 'algo:USDt-312769': 'algo:USDt-312769', + 'algo:MCAU-6547014': 'algo:MCAU-6547014', + 'algo:QCAD-84507107': 'algo:QCAD-84507107', + 'algo:VCAD-438505559': 'algo:VCAD-438505559', // Kovan-only ERC20 tokens - TEST = 'test', - SCHZ = 'schz', - CAT = 'cat', + TEST: 'test', + SCHZ: 'schz', + CAT: 'cat', // Stellar testnet tokens - 'txlm:BST-GBQTIOS3XGHB7LVYGBKQVJGCZ3R4JL5E4CBSWJ5ALIJUHBKS6263644L' = 'txlm:BST-GBQTIOS3XGHB7LVYGBKQVJGCZ3R4JL5E4CBSWJ5ALIJUHBKS6263644L', - 'txlm:TST-GBQTIOS3XGHB7LVYGBKQVJGCZ3R4JL5E4CBSWJ5ALIJUHBKS6263644L' = 'txlm:TST-GBQTIOS3XGHB7LVYGBKQVJGCZ3R4JL5E4CBSWJ5ALIJUHBKS6263644L', + 'txlm:BST-GBQTIOS3XGHB7LVYGBKQVJGCZ3R4JL5E4CBSWJ5ALIJUHBKS6263644L': + 'txlm:BST-GBQTIOS3XGHB7LVYGBKQVJGCZ3R4JL5E4CBSWJ5ALIJUHBKS6263644L', + 'txlm:TST-GBQTIOS3XGHB7LVYGBKQVJGCZ3R4JL5E4CBSWJ5ALIJUHBKS6263644L': + 'txlm:TST-GBQTIOS3XGHB7LVYGBKQVJGCZ3R4JL5E4CBSWJ5ALIJUHBKS6263644L', // Algorand testnet tokens - 'talgo:USON-16026728' = 'talgo:USON-16026728', - 'talgo:SPRW-16026732' = 'talgo:SPRW-16026732', - 'talgo:KAL-16026733' = 'talgo:KAL-16026733', - 'talgo:USDC-10458941' = 'talgo:USDC-10458941', - 'talgo:USDt-180447' = 'talgo:USDt-180447', - 'talgo:JPT-162085446' = 'talgo:JPT-162085446', + 'talgo:USON-16026728': 'talgo:USON-16026728', + 'talgo:SPRW-16026732': 'talgo:SPRW-16026732', + 'talgo:KAL-16026733': 'talgo:KAL-16026733', + 'talgo:USDC-10458941': 'talgo:USDC-10458941', + 'talgo:USDt-180447': 'talgo:USDt-180447', + 'talgo:JPT-162085446': 'talgo:JPT-162085446', // EOS tokens - CHEX = 'chex', - IQ = 'iq', - EOS_BOX = 'eos:box', - VAULTA = 'vaulta', + CHEX: 'chex', + IQ: 'iq', + EOS_BOX: 'eos:box', + VAULTA: 'vaulta', // Avax Token ERC-20 - 'avaxc:qi' = 'avaxc:qi', - 'avaxc:xava' = 'avaxc:xava', - 'avaxc:klo' = 'avaxc:klo', - 'avaxc:joe' = 'avaxc:joe', - 'avaxc:png' = 'avaxc:png', - 'avaxc:usdt' = 'avaxc:usdt', - 'avaxc:usdc' = 'avaxc:usdc', - 'avaxc:link' = 'avaxc:link', - 'avaxc:cai' = 'avaxc:cai', - 'avaxc:aave' = 'avaxc:aave', - 'avaxc:btc' = 'avaxc:btc', - 'avaxc:dai' = 'avaxc:dai', - 'avaxc:tryb' = 'avaxc:tryb', - 'avaxc:wbtc' = 'avaxc:wbtc', - 'avaxc:weth' = 'avaxc:weth', - 'avaxc:sbc' = 'avaxc:sbc', - 'avaxc:xsgd' = 'avaxc:xsgd', - 'avaxc:ticov2' = 'avaxc:ticov2', - 'avaxc:nxpc' = 'avaxc:nxpc', - 'avaxc:spxux' = 'avaxc:spxux', - 'tavaxc:opm' = 'tavaxc:opm', - 'tavaxc:cop2peq' = 'tavaxc:cop2peq', - 'tavaxc:xsgd' = 'tavaxc:xsgd', - 'tavaxc:bitgo' = 'tavaxc:bitgo', - 'tavaxc:stavax' = 'tavaxc:stavax', + 'avaxc:qi': 'avaxc:qi', + 'avaxc:xava': 'avaxc:xava', + 'avaxc:klo': 'avaxc:klo', + 'avaxc:joe': 'avaxc:joe', + 'avaxc:png': 'avaxc:png', + 'avaxc:usdt': 'avaxc:usdt', + 'avaxc:usdc': 'avaxc:usdc', + 'avaxc:link': 'avaxc:link', + 'avaxc:cai': 'avaxc:cai', + 'avaxc:aave': 'avaxc:aave', + 'avaxc:btc': 'avaxc:btc', + 'avaxc:dai': 'avaxc:dai', + 'avaxc:tryb': 'avaxc:tryb', + 'avaxc:wbtc': 'avaxc:wbtc', + 'avaxc:weth': 'avaxc:weth', + 'avaxc:sbc': 'avaxc:sbc', + 'avaxc:xsgd': 'avaxc:xsgd', + 'avaxc:ticov2': 'avaxc:ticov2', + 'avaxc:nxpc': 'avaxc:nxpc', + 'avaxc:spxux': 'avaxc:spxux', + 'tavaxc:opm': 'tavaxc:opm', + 'tavaxc:cop2peq': 'tavaxc:cop2peq', + 'tavaxc:xsgd': 'tavaxc:xsgd', + 'tavaxc:bitgo': 'tavaxc:bitgo', + 'tavaxc:stavax': 'tavaxc:stavax', // Begin FTX missing AVAXC tokens - 'avaxc:yeti' = 'avaxc:yeti', - 'avaxc:spell' = 'avaxc:spell', - 'avaxc:yusd' = 'avaxc:yusd', - 'avaxc:yusdcrv-f' = 'avaxc:yusdcrv-f', - 'avaxc:ecd' = 'avaxc:ecd', - 'avaxc:blzz' = 'avaxc:blzz', - 'avaxc:ptp' = 'avaxc:ptp', - 'avaxc:stg' = 'avaxc:stg', - 'avaxc:syn' = 'avaxc:syn', - 'avaxc:aavausdc' = 'avaxc:aavausdc', - 'avaxc:tusd' = 'avaxc:tusd', - 'avaxc:crv' = 'avaxc:crv', - 'avaxc:savax' = 'avaxc:savax', - 'avaxc:ampl' = 'avaxc:ampl', - 'avaxc:cnr' = 'avaxc:cnr', - 'avaxc:roco' = 'avaxc:roco', - 'avaxc:aavadai' = 'avaxc:aavadai', - 'avaxc:vtx' = 'avaxc:vtx', - 'avaxc:wavax' = 'avaxc:wavax', - 'avaxc:bnb' = 'avaxc:bnb', - 'avaxc:aavausdt' = 'avaxc:aavausdt', - 'avaxc:acre' = 'avaxc:acre', - 'avaxc:gmx' = 'avaxc:gmx', - 'avaxc:gunz' = 'avaxc:gunz', - 'avaxc:mim' = 'avaxc:mim', - 'avaxc:axlusdc' = 'avaxc:axlusdc', - 'avaxc:lot' = 'avaxc:lot', - 'avaxc:av3crv' = 'avaxc:av3crv', - 'avaxc:time' = 'avaxc:time', - 'avaxc:uni.e' = 'avaxc:uni.e', - 'avaxc:sb' = 'avaxc:sb', - 'avaxc:dyp' = 'avaxc:dyp', - 'avaxc:sing' = 'avaxc:sing', - 'avaxc:gohm' = 'avaxc:gohm', - 'avaxc:boofi' = 'avaxc:boofi', - 'avaxc:eth' = 'avaxc:eth', - 'avaxc:wmemo' = 'avaxc:wmemo', - 'avaxc:fxs' = 'avaxc:fxs', - 'avaxc:sifu' = 'avaxc:sifu', - 'avaxc:sushi.e' = 'avaxc:sushi.e', - 'avaxc:sushi' = 'avaxc:sushi', - 'avaxc:mimatic' = 'avaxc:mimatic', - 'avaxc:sspell' = 'avaxc:sspell', - 'avaxc:grape' = 'avaxc:grape', - 'avaxc:xjoe' = 'avaxc:xjoe', - 'avaxc:bsgg' = 'avaxc:bsgg', - 'avaxc:roy' = 'avaxc:roy', - 'avaxc:wow' = 'avaxc:wow', - 'avaxc:wine' = 'avaxc:wine', - 'avaxc:mu' = 'avaxc:mu', - 'avaxc:frax' = 'avaxc:frax', - 'avaxc:movr' = 'avaxc:movr', - 'avaxc:ice' = 'avaxc:ice', - 'avaxc:note' = 'avaxc:note', - 'avaxc:wrose' = 'avaxc:wrose', - 'avaxc:swap' = 'avaxc:swap', - 'avaxc:tico' = 'avaxc:tico', - 'avaxc:shrap' = 'avaxc:shrap', - 'avaxc:benji' = 'avaxc:benji', - 'avaxc:emdx' = 'avaxc:emdx', - 'avaxc:eurc' = 'avaxc:eurc', + 'avaxc:yeti': 'avaxc:yeti', + 'avaxc:spell': 'avaxc:spell', + 'avaxc:yusd': 'avaxc:yusd', + 'avaxc:yusdcrv-f': 'avaxc:yusdcrv-f', + 'avaxc:ecd': 'avaxc:ecd', + 'avaxc:blzz': 'avaxc:blzz', + 'avaxc:ptp': 'avaxc:ptp', + 'avaxc:stg': 'avaxc:stg', + 'avaxc:syn': 'avaxc:syn', + 'avaxc:aavausdc': 'avaxc:aavausdc', + 'avaxc:tusd': 'avaxc:tusd', + 'avaxc:crv': 'avaxc:crv', + 'avaxc:savax': 'avaxc:savax', + 'avaxc:ampl': 'avaxc:ampl', + 'avaxc:cnr': 'avaxc:cnr', + 'avaxc:roco': 'avaxc:roco', + 'avaxc:aavadai': 'avaxc:aavadai', + 'avaxc:vtx': 'avaxc:vtx', + 'avaxc:wavax': 'avaxc:wavax', + 'avaxc:bnb': 'avaxc:bnb', + 'avaxc:aavausdt': 'avaxc:aavausdt', + 'avaxc:acre': 'avaxc:acre', + 'avaxc:gmx': 'avaxc:gmx', + 'avaxc:gunz': 'avaxc:gunz', + 'avaxc:mim': 'avaxc:mim', + 'avaxc:axlusdc': 'avaxc:axlusdc', + 'avaxc:lot': 'avaxc:lot', + 'avaxc:av3crv': 'avaxc:av3crv', + 'avaxc:time': 'avaxc:time', + 'avaxc:uni.e': 'avaxc:uni.e', + 'avaxc:sb': 'avaxc:sb', + 'avaxc:dyp': 'avaxc:dyp', + 'avaxc:sing': 'avaxc:sing', + 'avaxc:gohm': 'avaxc:gohm', + 'avaxc:boofi': 'avaxc:boofi', + 'avaxc:eth': 'avaxc:eth', + 'avaxc:wmemo': 'avaxc:wmemo', + 'avaxc:fxs': 'avaxc:fxs', + 'avaxc:sifu': 'avaxc:sifu', + 'avaxc:sushi.e': 'avaxc:sushi.e', + 'avaxc:sushi': 'avaxc:sushi', + 'avaxc:mimatic': 'avaxc:mimatic', + 'avaxc:sspell': 'avaxc:sspell', + 'avaxc:grape': 'avaxc:grape', + 'avaxc:xjoe': 'avaxc:xjoe', + 'avaxc:bsgg': 'avaxc:bsgg', + 'avaxc:roy': 'avaxc:roy', + 'avaxc:wow': 'avaxc:wow', + 'avaxc:wine': 'avaxc:wine', + 'avaxc:mu': 'avaxc:mu', + 'avaxc:frax': 'avaxc:frax', + 'avaxc:movr': 'avaxc:movr', + 'avaxc:ice': 'avaxc:ice', + 'avaxc:note': 'avaxc:note', + 'avaxc:wrose': 'avaxc:wrose', + 'avaxc:swap': 'avaxc:swap', + 'avaxc:tico': 'avaxc:tico', + 'avaxc:shrap': 'avaxc:shrap', + 'avaxc:benji': 'avaxc:benji', + 'avaxc:emdx': 'avaxc:emdx', + 'avaxc:eurc': 'avaxc:eurc', // End FTX missing AVAXC tokens // polygon Token ERC-20 - 'polygon:usdc' = 'polygon:usdc', - 'polygon:usdcv2' = 'polygon:usdcv2', - 'polygon:usdt' = 'polygon:usdt', - 'polygon:weth' = 'polygon:weth', - 'polygon:cnkt' = 'polygon:cnkt', - 'polygon:wbtc' = 'polygon:wbtc', - 'polygon:sand' = 'polygon:sand', - 'polygon:dai' = 'polygon:dai', - 'polygon:woo' = 'polygon:woo', - 'polygon:aave' = 'polygon:aave', - 'polygon:link' = 'polygon:link', - 'polygon:tusd' = 'polygon:tusd', - 'polygon:cel' = 'polygon:cel', - 'polygon:busd' = 'polygon:busd', - 'polygon:frax' = 'polygon:frax', - 'polygon:crv' = 'polygon:crv', - 'polygon:uni' = 'polygon:uni', - 'polygon:fcd' = 'polygon:fcd', - 'polygon:ape' = 'polygon:ape', - 'polygon:srm' = 'polygon:srm', - 'polygon:fly' = 'polygon:fly', - 'polygon:gfc' = 'polygon:gfc', - 'polygon:rbw' = 'polygon:rbw', - 'polygon:zed' = 'polygon:zed', - 'polygon:vext' = 'polygon:vext', - 'polygon:vcnt' = 'polygon:vcnt', - 'polygon:sushi' = 'polygon:sushi', - 'polygon:wmatic' = 'polygon:wmatic', - 'polygon:1inch' = 'polygon:1inch', - 'polygon:comp' = 'polygon:comp', - 'polygon:sol' = 'polygon:sol', - 'polygon:wavax' = 'polygon:wavax', - 'polygon:wbnb' = 'polygon:wbnb', - 'polygon:wftm' = 'polygon:wftm', - 'polygon:yfi' = 'polygon:yfi', - 'polygon:treta' = 'polygon:treta', - 'polygon:orb' = 'polygon:orb', - 'polygon:route' = 'polygon:route', - 'polygon:sbc' = 'polygon:sbc', - 'polygon:xsgd' = 'polygon:xsgd', - 'polygon:dimo' = 'polygon:dimo', - 'polygon:bcut' = 'polygon:bcut', - 'polygon:pme' = 'polygon:pme', - 'polygon:dipe' = 'polygon:dipe', - 'polygon:lif3' = 'polygon:lif3', - 'polygon:l3usd' = 'polygon:l3usd', - 'polygon:moca' = 'polygon:moca', - 'polygon:mask' = 'polygon:mask', - 'polygon:nexo' = 'polygon:nexo', - 'polygon:om' = 'polygon:om', - 'polygon:pyr' = 'polygon:pyr', - 'polygon:renbtc' = 'polygon:renbtc', - 'polygon:req' = 'polygon:req', - 'polygon:rndr' = 'polygon:rndr', - 'polygon:snx' = 'polygon:snx', - 'polygon:trb' = 'polygon:trb', - 'polygon:ali' = 'polygon:ali', - 'polygon:bal' = 'polygon:bal', - 'polygon:elon' = 'polygon:elon', - 'polygon:hex' = 'polygon:hex', - 'polygon:iotx' = 'polygon:iotx', - 'polygon:agix' = 'polygon:agix', - 'polygon:avax' = 'polygon:avax', - 'polygon:band' = 'polygon:band', - 'polygon:blz' = 'polygon:blz', - 'polygon:bnb' = 'polygon:bnb', - 'polygon:bnt' = 'polygon:bnt', - 'polygon:chz' = 'polygon:chz', - 'polygon:enj' = 'polygon:enj', - 'polygon:fet' = 'polygon:fet', - 'polygon:forth' = 'polygon:forth', - 'polygon:glm' = 'polygon:glm', - 'polygon:gno' = 'polygon:gno', - 'polygon:gohm' = 'polygon:gohm', - 'polygon:gtc' = 'polygon:gtc', - 'polygon:gusd' = 'polygon:gusd', - 'polygon:hot' = 'polygon:hot', - 'polygon:inj' = 'polygon:inj', - 'polygon:lit' = 'polygon:lit', - 'polygon:lrc' = 'polygon:lrc', - 'polygon:mana' = 'polygon:mana', - 'polygon:shib' = 'polygon:shib', - 'polygon:sxp' = 'polygon:sxp', - 'polygon:grt' = 'polygon:grt', - 'polygon:mkr' = 'polygon:mkr', - 'polygon:oxt' = 'polygon:oxt', - 'polygon:pax' = 'polygon:pax', - 'polygon:paxg' = 'polygon:paxg', - 'polygon:powr' = 'polygon:powr', - 'polygon:super' = 'polygon:super', - 'polygon:uma' = 'polygon:uma', - 'polygon:zrx' = 'polygon:zrx', - 'polygon:ont' = 'polygon:ont', - 'polygon:wrx' = 'polygon:wrx', - 'polygon:voxel' = 'polygon:voxel', - 'polygon:uft' = 'polygon:uft', - 'polygon:ooki' = 'polygon:ooki', - 'polygon:swap' = 'polygon:swap', - 'polygon:vanry' = 'polygon:vanry', - 'polygon:npt' = 'polygon:npt', - 'polygon:volt' = 'polygon:volt', - 'polygon:euroe' = 'polygon:euroe', - 'polygon:geod' = 'polygon:geod', - 'polygon:heth' = 'polygon:heth', - 'polygon:copm' = 'polygon:copm', - 'polygon:gmt' = 'polygon:gmt', - 'polygon:uhu' = 'polygon:uhu', - 'polygon:mv' = 'polygon:mv', - 'polygon:bid' = 'polygon:bid', - 'polygon:tcs' = 'polygon:tcs', - 'polygon:buidl' = 'polygon:buidl', - 'polygon:benji' = 'polygon:benji', - 'polygon:naka' = 'polygon:naka', + 'polygon:usdc': 'polygon:usdc', + 'polygon:usdcv2': 'polygon:usdcv2', + 'polygon:usdt': 'polygon:usdt', + 'polygon:weth': 'polygon:weth', + 'polygon:cnkt': 'polygon:cnkt', + 'polygon:wbtc': 'polygon:wbtc', + 'polygon:sand': 'polygon:sand', + 'polygon:dai': 'polygon:dai', + 'polygon:woo': 'polygon:woo', + 'polygon:aave': 'polygon:aave', + 'polygon:link': 'polygon:link', + 'polygon:tusd': 'polygon:tusd', + 'polygon:cel': 'polygon:cel', + 'polygon:busd': 'polygon:busd', + 'polygon:frax': 'polygon:frax', + 'polygon:crv': 'polygon:crv', + 'polygon:uni': 'polygon:uni', + 'polygon:fcd': 'polygon:fcd', + 'polygon:ape': 'polygon:ape', + 'polygon:srm': 'polygon:srm', + 'polygon:fly': 'polygon:fly', + 'polygon:gfc': 'polygon:gfc', + 'polygon:rbw': 'polygon:rbw', + 'polygon:zed': 'polygon:zed', + 'polygon:vext': 'polygon:vext', + 'polygon:vcnt': 'polygon:vcnt', + 'polygon:sushi': 'polygon:sushi', + 'polygon:wmatic': 'polygon:wmatic', + 'polygon:1inch': 'polygon:1inch', + 'polygon:comp': 'polygon:comp', + 'polygon:sol': 'polygon:sol', + 'polygon:wavax': 'polygon:wavax', + 'polygon:wbnb': 'polygon:wbnb', + 'polygon:wftm': 'polygon:wftm', + 'polygon:yfi': 'polygon:yfi', + 'polygon:treta': 'polygon:treta', + 'polygon:orb': 'polygon:orb', + 'polygon:route': 'polygon:route', + 'polygon:sbc': 'polygon:sbc', + 'polygon:xsgd': 'polygon:xsgd', + 'polygon:dimo': 'polygon:dimo', + 'polygon:bcut': 'polygon:bcut', + 'polygon:pme': 'polygon:pme', + 'polygon:dipe': 'polygon:dipe', + 'polygon:lif3': 'polygon:lif3', + 'polygon:l3usd': 'polygon:l3usd', + 'polygon:moca': 'polygon:moca', + 'polygon:mask': 'polygon:mask', + 'polygon:nexo': 'polygon:nexo', + 'polygon:om': 'polygon:om', + 'polygon:pyr': 'polygon:pyr', + 'polygon:renbtc': 'polygon:renbtc', + 'polygon:req': 'polygon:req', + 'polygon:rndr': 'polygon:rndr', + 'polygon:snx': 'polygon:snx', + 'polygon:trb': 'polygon:trb', + 'polygon:ali': 'polygon:ali', + 'polygon:bal': 'polygon:bal', + 'polygon:elon': 'polygon:elon', + 'polygon:hex': 'polygon:hex', + 'polygon:iotx': 'polygon:iotx', + 'polygon:agix': 'polygon:agix', + 'polygon:avax': 'polygon:avax', + 'polygon:band': 'polygon:band', + 'polygon:blz': 'polygon:blz', + 'polygon:bnb': 'polygon:bnb', + 'polygon:bnt': 'polygon:bnt', + 'polygon:chz': 'polygon:chz', + 'polygon:enj': 'polygon:enj', + 'polygon:fet': 'polygon:fet', + 'polygon:forth': 'polygon:forth', + 'polygon:glm': 'polygon:glm', + 'polygon:gno': 'polygon:gno', + 'polygon:gohm': 'polygon:gohm', + 'polygon:gtc': 'polygon:gtc', + 'polygon:gusd': 'polygon:gusd', + 'polygon:hot': 'polygon:hot', + 'polygon:inj': 'polygon:inj', + 'polygon:lit': 'polygon:lit', + 'polygon:lrc': 'polygon:lrc', + 'polygon:mana': 'polygon:mana', + 'polygon:shib': 'polygon:shib', + 'polygon:sxp': 'polygon:sxp', + 'polygon:grt': 'polygon:grt', + 'polygon:mkr': 'polygon:mkr', + 'polygon:oxt': 'polygon:oxt', + 'polygon:pax': 'polygon:pax', + 'polygon:paxg': 'polygon:paxg', + 'polygon:powr': 'polygon:powr', + 'polygon:super': 'polygon:super', + 'polygon:uma': 'polygon:uma', + 'polygon:zrx': 'polygon:zrx', + 'polygon:ont': 'polygon:ont', + 'polygon:wrx': 'polygon:wrx', + 'polygon:voxel': 'polygon:voxel', + 'polygon:uft': 'polygon:uft', + 'polygon:ooki': 'polygon:ooki', + 'polygon:swap': 'polygon:swap', + 'polygon:vanry': 'polygon:vanry', + 'polygon:npt': 'polygon:npt', + 'polygon:volt': 'polygon:volt', + 'polygon:euroe': 'polygon:euroe', + 'polygon:geod': 'polygon:geod', + 'polygon:heth': 'polygon:heth', + 'polygon:copm': 'polygon:copm', + 'polygon:gmt': 'polygon:gmt', + 'polygon:uhu': 'polygon:uhu', + 'polygon:mv': 'polygon:mv', + 'polygon:bid': 'polygon:bid', + 'polygon:tcs': 'polygon:tcs', + 'polygon:buidl': 'polygon:buidl', + 'polygon:benji': 'polygon:benji', + 'polygon:naka': 'polygon:naka', // Polygon NFTs // generic NFTs - 'erc721:polygontoken' = 'erc721:polygontoken', - 'erc1155:polygontoken' = 'erc1155:polygontoken', + 'erc721:polygontoken': 'erc721:polygontoken', + 'erc1155:polygontoken': 'erc1155:polygontoken', // BSC Token BEP-20 - 'bsc:sol' = 'bsc:sol', - 'bsc:solv' = 'bsc:solv', - 'bsc:brise' = 'bsc:brise', - 'bsc:bsw' = 'bsc:bsw', - 'bsc:burger' = 'bsc:burger', - 'bsc:cfx' = 'bsc:cfx', - 'bsc:bake' = 'bsc:bake', - 'bsc:bnx' = 'bsc:bnx', - 'bsc:busd' = 'bsc:busd', - 'bsc:hook' = 'bsc:hook', - 'bsc:ksm' = 'bsc:ksm', - 'bsc:usdt' = 'bsc:usdt', - 'bsc:vet' = 'bsc:vet', - 'bsc:cake' = 'bsc:cake', - 'bsc:litt' = 'bsc:litt', - 'bsc:xvs' = 'bsc:xvs', - 'bsc:epx' = 'bsc:epx', - 'bsc:usdc' = 'bsc:usdc', - 'bsc:eth' = 'bsc:eth', - 'bsc:dd' = 'bsc:dd', - 'bsc:parti' = 'bsc:parti', - 'bsc:form' = 'bsc:form', - 'bsc:ltc' = 'bsc:ltc', - 'bsc:mask' = 'bsc:mask', - 'bsc:matic' = 'bsc:matic', - 'bsc:mbox' = 'bsc:mbox', - 'bsc:mdt' = 'bsc:mdt', - 'bsc:nuls' = 'bsc:nuls', - 'bsc:ont' = 'bsc:ont', - 'bsc:orn' = 'bsc:orn', - 'bsc:porto' = 'bsc:porto', - 'bsc:reef' = 'bsc:reef', - 'bsc:renbtc' = 'bsc:renbtc', - 'bsc:snx' = 'bsc:snx', - 'bsc:tking' = 'bsc:tking', - 'bsc:tlm' = 'bsc:tlm', - 'bsc:ton' = 'bsc:ton', - 'bsc:trx' = 'bsc:trx', - 'bsc:wbnb' = 'bsc:wbnb', - 'bsc:win' = 'bsc:win', - 'bsc:wrx' = 'bsc:wrx', - 'bsc:yfii' = 'bsc:yfii', - 'bsc:zil' = 'bsc:zil', - 'bsc:1inch' = 'bsc:1inch', - 'bsc:ada' = 'bsc:ada', - 'bsc:alice' = 'bsc:alice', - 'bsc:alpaca' = 'bsc:alpaca', - 'bsc:alpine' = 'bsc:alpine', - 'bsc:ankr' = 'bsc:ankr', - 'bsc:avax' = 'bsc:avax', - 'bsc:beta' = 'bsc:beta', - 'bsc:btt' = 'bsc:btt', - 'bsc:celr' = 'bsc:celr', - 'bsc:chr' = 'bsc:chr', - 'bsc:coti' = 'bsc:coti', - 'bsc:cream' = 'bsc:cream', - 'bsc:dar' = 'bsc:dar', - 'bsc:degov2' = 'bsc:degov2', - 'bsc:dodo' = 'bsc:dodo', - 'bsc:elon' = 'bsc:elon', - 'bsc:etc' = 'bsc:etc', - 'bsc:firo' = 'bsc:firo', - 'bsc:front' = 'bsc:front', - 'bsc:hft' = 'bsc:hft', - 'bsc:high' = 'bsc:high', - 'bsc:inj' = 'bsc:inj', - 'bsc:iotx' = 'bsc:iotx', - 'bsc:auto' = 'bsc:auto', - 'bsc:fet' = 'bsc:fet', - 'bsc:kas' = 'bsc:kas', - 'bsc:lit' = 'bsc:lit', - 'bsc:mana' = 'bsc:mana', - 'bsc:shib' = 'bsc:shib', - 'bsc:sxp' = 'bsc:sxp', - 'bsc:nnn' = 'bsc:nnn', - 'bsc:nvm' = 'bsc:nvm', - 'bsc:jasmy' = 'bsc:jasmy', - 'bsc:near' = 'bsc:near', - 'bsc:ocean' = 'bsc:ocean', - 'bsc:sand' = 'bsc:sand', - 'bsc:tusd' = 'bsc:tusd', - 'bsc:wrose' = 'bsc:wrose', - 'bsc:twt' = 'bsc:twt', - 'bsc:sfp' = 'bsc:sfp', - 'bsc:edu' = 'bsc:edu', - 'bsc:mrs' = 'bsc:mrs', - 'bsc:ong' = 'bsc:ong', - 'bsc:ctk' = 'bsc:ctk', - 'bsc:rndt' = 'bsc:rndt', - 'bsc:mbx' = 'bsc:mbx', - 'bsc:mav' = 'bsc:mav', - 'bsc:mct' = 'bsc:mct', - 'bsc:thunder' = 'bsc:thunder', - 'bsc:atlas' = 'bsc:atlas', - 'bsc:vidt' = 'bsc:vidt', - 'bsc:unfi' = 'bsc:unfi', - 'bsc:chess' = 'bsc:chess', - 'bsc:pols' = 'bsc:pols', - 'bsc:uft' = 'bsc:uft', - 'bsc:wing' = 'bsc:wing', - 'bsc:santos' = 'bsc:santos', - 'bsc:lazio' = 'bsc:lazio', - 'bsc:swap' = 'bsc:swap', - 'bsc:troy' = 'bsc:troy', - 'bsc:rdnt' = 'bsc:rdnt', - 'bsc:pax' = 'bsc:pax', - 'bsc:volt' = 'bsc:volt', - 'tbsc:busd' = 'tbsc:busd', - 'tbsc:usd1' = 'tbsc:usd1', - 'tbsc:stgusd1' = 'tbsc:stgusd1', - 'bsc:city' = 'bsc:city', - 'bsc:fdusd' = 'bsc:fdusd', - 'bsc:floki' = 'bsc:floki', - 'bsc:ldo' = 'bsc:ldo', - 'bsc:om' = 'bsc:om', - 'bsc:eos' = 'bsc:eos', - 'bsc:usdd' = 'bsc:usdd', - 'bsc:gft' = 'bsc:gft', - 'bsc:glmr' = 'bsc:glmr', - 'bsc:gmt' = 'bsc:gmt', - 'bsc:tko' = 'bsc:tko', - 'bsc:vite' = 'bsc:vite', - 'bsc:mdx' = 'bsc:mdx', - 'bsc:multi' = 'bsc:multi', - 'bsc:psg' = 'bsc:psg', - 'bsc:telos' = 'bsc:telos', - 'bsc:flux' = 'bsc:flux', - 'bsc:h2o' = 'bsc:h2o', - 'bsc:lto' = 'bsc:lto', - 'bsc:kmd' = 'bsc:kmd', - 'bsc:farm' = 'bsc:farm', - 'bsc:lina' = 'bsc:lina', - 'bsc:usd1' = 'bsc:usd1', - 'bsc:oort' = 'bsc:oort', - 'bsc:aitech' = 'bsc:aitech', - 'bsc:fil' = 'bsc:fil', - 'bsc:ftm' = 'bsc:ftm', - 'bsc:comp' = 'bsc:comp', - 'bsc:uni' = 'bsc:uni', - 'bsc:yfi' = 'bsc:yfi', - 'bsc:link' = 'bsc:link', + 'bsc:sol': 'bsc:sol', + 'bsc:solv': 'bsc:solv', + 'bsc:brise': 'bsc:brise', + 'bsc:bsw': 'bsc:bsw', + 'bsc:burger': 'bsc:burger', + 'bsc:cfx': 'bsc:cfx', + 'bsc:bake': 'bsc:bake', + 'bsc:bnx': 'bsc:bnx', + 'bsc:busd': 'bsc:busd', + 'bsc:hook': 'bsc:hook', + 'bsc:ksm': 'bsc:ksm', + 'bsc:usdt': 'bsc:usdt', + 'bsc:vet': 'bsc:vet', + 'bsc:cake': 'bsc:cake', + 'bsc:litt': 'bsc:litt', + 'bsc:xvs': 'bsc:xvs', + 'bsc:epx': 'bsc:epx', + 'bsc:usdc': 'bsc:usdc', + 'bsc:eth': 'bsc:eth', + 'bsc:dd': 'bsc:dd', + 'bsc:parti': 'bsc:parti', + 'bsc:form': 'bsc:form', + 'bsc:ltc': 'bsc:ltc', + 'bsc:mask': 'bsc:mask', + 'bsc:matic': 'bsc:matic', + 'bsc:mbox': 'bsc:mbox', + 'bsc:mdt': 'bsc:mdt', + 'bsc:nuls': 'bsc:nuls', + 'bsc:ont': 'bsc:ont', + 'bsc:orn': 'bsc:orn', + 'bsc:porto': 'bsc:porto', + 'bsc:reef': 'bsc:reef', + 'bsc:renbtc': 'bsc:renbtc', + 'bsc:snx': 'bsc:snx', + 'bsc:tking': 'bsc:tking', + 'bsc:tlm': 'bsc:tlm', + 'bsc:ton': 'bsc:ton', + 'bsc:trx': 'bsc:trx', + 'bsc:wbnb': 'bsc:wbnb', + 'bsc:win': 'bsc:win', + 'bsc:wrx': 'bsc:wrx', + 'bsc:yfii': 'bsc:yfii', + 'bsc:zil': 'bsc:zil', + 'bsc:1inch': 'bsc:1inch', + 'bsc:ada': 'bsc:ada', + 'bsc:alice': 'bsc:alice', + 'bsc:alpaca': 'bsc:alpaca', + 'bsc:alpine': 'bsc:alpine', + 'bsc:ankr': 'bsc:ankr', + 'bsc:avax': 'bsc:avax', + 'bsc:beta': 'bsc:beta', + 'bsc:btt': 'bsc:btt', + 'bsc:celr': 'bsc:celr', + 'bsc:chr': 'bsc:chr', + 'bsc:coti': 'bsc:coti', + 'bsc:cream': 'bsc:cream', + 'bsc:dar': 'bsc:dar', + 'bsc:degov2': 'bsc:degov2', + 'bsc:dodo': 'bsc:dodo', + 'bsc:elon': 'bsc:elon', + 'bsc:etc': 'bsc:etc', + 'bsc:firo': 'bsc:firo', + 'bsc:front': 'bsc:front', + 'bsc:hft': 'bsc:hft', + 'bsc:high': 'bsc:high', + 'bsc:inj': 'bsc:inj', + 'bsc:iotx': 'bsc:iotx', + 'bsc:auto': 'bsc:auto', + 'bsc:fet': 'bsc:fet', + 'bsc:kas': 'bsc:kas', + 'bsc:lit': 'bsc:lit', + 'bsc:mana': 'bsc:mana', + 'bsc:shib': 'bsc:shib', + 'bsc:sxp': 'bsc:sxp', + 'bsc:nnn': 'bsc:nnn', + 'bsc:nvm': 'bsc:nvm', + 'bsc:jasmy': 'bsc:jasmy', + 'bsc:near': 'bsc:near', + 'bsc:ocean': 'bsc:ocean', + 'bsc:sand': 'bsc:sand', + 'bsc:tusd': 'bsc:tusd', + 'bsc:wrose': 'bsc:wrose', + 'bsc:twt': 'bsc:twt', + 'bsc:sfp': 'bsc:sfp', + 'bsc:edu': 'bsc:edu', + 'bsc:mrs': 'bsc:mrs', + 'bsc:ong': 'bsc:ong', + 'bsc:ctk': 'bsc:ctk', + 'bsc:rndt': 'bsc:rndt', + 'bsc:mbx': 'bsc:mbx', + 'bsc:mav': 'bsc:mav', + 'bsc:mct': 'bsc:mct', + 'bsc:thunder': 'bsc:thunder', + 'bsc:atlas': 'bsc:atlas', + 'bsc:vidt': 'bsc:vidt', + 'bsc:unfi': 'bsc:unfi', + 'bsc:chess': 'bsc:chess', + 'bsc:pols': 'bsc:pols', + 'bsc:uft': 'bsc:uft', + 'bsc:wing': 'bsc:wing', + 'bsc:santos': 'bsc:santos', + 'bsc:lazio': 'bsc:lazio', + 'bsc:swap': 'bsc:swap', + 'bsc:troy': 'bsc:troy', + 'bsc:rdnt': 'bsc:rdnt', + 'bsc:pax': 'bsc:pax', + 'bsc:volt': 'bsc:volt', + 'tbsc:busd': 'tbsc:busd', + 'tbsc:usd1': 'tbsc:usd1', + 'tbsc:stgusd1': 'tbsc:stgusd1', + 'bsc:city': 'bsc:city', + 'bsc:fdusd': 'bsc:fdusd', + 'bsc:floki': 'bsc:floki', + 'bsc:ldo': 'bsc:ldo', + 'bsc:om': 'bsc:om', + 'bsc:eos': 'bsc:eos', + 'bsc:usdd': 'bsc:usdd', + 'bsc:gft': 'bsc:gft', + 'bsc:glmr': 'bsc:glmr', + 'bsc:gmt': 'bsc:gmt', + 'bsc:tko': 'bsc:tko', + 'bsc:vite': 'bsc:vite', + 'bsc:mdx': 'bsc:mdx', + 'bsc:multi': 'bsc:multi', + 'bsc:psg': 'bsc:psg', + 'bsc:telos': 'bsc:telos', + 'bsc:flux': 'bsc:flux', + 'bsc:h2o': 'bsc:h2o', + 'bsc:lto': 'bsc:lto', + 'bsc:kmd': 'bsc:kmd', + 'bsc:farm': 'bsc:farm', + 'bsc:lina': 'bsc:lina', + 'bsc:usd1': 'bsc:usd1', + 'bsc:oort': 'bsc:oort', + 'bsc:aitech': 'bsc:aitech', + 'bsc:fil': 'bsc:fil', + 'bsc:ftm': 'bsc:ftm', + 'bsc:comp': 'bsc:comp', + 'bsc:uni': 'bsc:uni', + 'bsc:yfi': 'bsc:yfi', + 'bsc:link': 'bsc:link', // BSC NFTs // generic NFTs - 'erc721:bsctoken' = 'erc721:bsctoken', - 'erc1155:bsctoken' = 'erc1155:bsctoken', + 'erc721:bsctoken': 'erc721:bsctoken', + 'erc1155:bsctoken': 'erc1155:bsctoken', // Test BSC NFTs - 'terc721:bsctoken' = 'terc721:bsctoken', - 'terc1155:bsctoken' = 'terc1155:bsctoken', + 'terc721:bsctoken': 'terc721:bsctoken', + 'terc1155:bsctoken': 'terc1155:bsctoken', // Polygon testnet tokens - 'tpolygon:derc20' = 'tpolygon:derc20', - 'tpolygon:link' = 'tpolygon:link', - 'tpolygon:name' = 'tpolygon:name', - 'tpolygon:opm' = 'tpolygon:opm', - 'tpolygon:pme' = 'tpolygon:pme', - 'tpolygon:xsgd' = 'tpolygon:xsgd', - 'tpolygon:terc18dp' = 'tpolygon:terc18dp', - 'tpolygon:terc10dp' = 'tpolygon:terc10dp', - 'tpolygon:terc6dp' = 'tpolygon:terc6dp', - 'tpolygon:usdt' = 'tpolygon:usdt', - 'tpolygon:usdc' = 'tpolygon:usdc', - 'tpolygon:testcopm' = 'tpolygon:testcopm', - 'tpolygon:BitGoTest' = 'tpolygon:BitGoTest', + 'tpolygon:derc20': 'tpolygon:derc20', + 'tpolygon:link': 'tpolygon:link', + 'tpolygon:name': 'tpolygon:name', + 'tpolygon:opm': 'tpolygon:opm', + 'tpolygon:pme': 'tpolygon:pme', + 'tpolygon:xsgd': 'tpolygon:xsgd', + 'tpolygon:terc18dp': 'tpolygon:terc18dp', + 'tpolygon:terc10dp': 'tpolygon:terc10dp', + 'tpolygon:terc6dp': 'tpolygon:terc6dp', + 'tpolygon:usdt': 'tpolygon:usdt', + 'tpolygon:usdc': 'tpolygon:usdc', + 'tpolygon:testcopm': 'tpolygon:testcopm', + 'tpolygon:BitGoTest': 'tpolygon:BitGoTest', // generic NFTs - 'terc721:polygontoken' = 'terc721:polygontoken', - 'terc1155:polygontoken' = 'terc1155:polygontoken', + 'terc721:polygontoken': 'terc721:polygontoken', + 'terc1155:polygontoken': 'terc1155:polygontoken', // Arbitrum mainnet tokens - 'arbeth:link' = 'arbeth:link', - 'arbeth:spxux' = 'arbeth:spxux', - 'arbeth:usdc' = 'arbeth:usdc', - 'arbeth:xsgdv2' = 'arbeth:xsgdv2', - 'arbeth:trn' = 'arbeth:trn', - 'arbeth:usdcv2' = 'arbeth:usdcv2', - 'arbeth:usdt' = 'arbeth:usdt', - 'arbeth:arb' = 'arbeth:arb', - 'arbeth:sqd' = 'arbeth:sqd', - 'arbeth:cbl' = 'arbeth:cbl', - 'arbeth:w' = 'arbeth:w', - 'arbeth:comp' = 'arbeth:comp', - 'arbeth:coti' = 'arbeth:coti', - 'arbeth:gno' = 'arbeth:gno', - 'arbeth:gohm' = 'arbeth:gohm', - 'arbeth:grt' = 'arbeth:grt', - 'arbeth:knc' = 'arbeth:knc', - 'arbeth:trb' = 'arbeth:trb', - 'arbeth:tusd' = 'arbeth:tusd', - 'arbeth:uma' = 'arbeth:uma', - 'arbeth:uni' = 'arbeth:uni', - 'arbeth:weth' = 'arbeth:weth', - 'arbeth:woo' = 'arbeth:woo', - 'arbeth:yfi' = 'arbeth:yfi', - 'arbeth:xsgd' = 'arbeth:xsgd', - 'arbeth:ztx' = 'arbeth:ztx', - 'arbeth:ldo' = 'arbeth:ldo', - 'arbeth:egp' = 'arbeth:egp', - 'arbeth:myrc' = 'arbeth:myrc', - 'arbeth:gs' = 'arbeth:gs', - 'arbeth:veur' = 'arbeth:veur', - 'arbeth:vchf' = 'arbeth:vchf', - 'arbeth:tbill' = 'arbeth:tbill', - 'arbeth:xai' = 'arbeth:xai', - 'arbeth:flttx' = 'arbeth:flttx', - 'arbeth:wtsix' = 'arbeth:wtsix', - 'arbeth:modrx' = 'arbeth:modrx', - 'arbeth:techx' = 'arbeth:techx', - 'arbeth:wtsyx' = 'arbeth:wtsyx', - 'arbeth:wtlgx' = 'arbeth:wtlgx', - 'arbeth:wttsx' = 'arbeth:wttsx', - 'arbeth:tipsx' = 'arbeth:tipsx', - 'arbeth:wtstx' = 'arbeth:wtstx', - 'arbeth:wtgxx' = 'arbeth:wtgxx', - 'arbeth:lngvx' = 'arbeth:lngvx', - 'arbeth:eqtyx' = 'arbeth:eqtyx', - 'arbeth:anime' = 'arbeth:anime', - 'arbeth:benji' = 'arbeth:benji', + 'arbeth:link': 'arbeth:link', + 'arbeth:spxux': 'arbeth:spxux', + 'arbeth:usdc': 'arbeth:usdc', + 'arbeth:xsgdv2': 'arbeth:xsgdv2', + 'arbeth:trn': 'arbeth:trn', + 'arbeth:usdcv2': 'arbeth:usdcv2', + 'arbeth:usdt': 'arbeth:usdt', + 'arbeth:arb': 'arbeth:arb', + 'arbeth:sqd': 'arbeth:sqd', + 'arbeth:cbl': 'arbeth:cbl', + 'arbeth:w': 'arbeth:w', + 'arbeth:comp': 'arbeth:comp', + 'arbeth:coti': 'arbeth:coti', + 'arbeth:gno': 'arbeth:gno', + 'arbeth:gohm': 'arbeth:gohm', + 'arbeth:grt': 'arbeth:grt', + 'arbeth:knc': 'arbeth:knc', + 'arbeth:trb': 'arbeth:trb', + 'arbeth:tusd': 'arbeth:tusd', + 'arbeth:uma': 'arbeth:uma', + 'arbeth:uni': 'arbeth:uni', + 'arbeth:weth': 'arbeth:weth', + 'arbeth:woo': 'arbeth:woo', + 'arbeth:yfi': 'arbeth:yfi', + 'arbeth:xsgd': 'arbeth:xsgd', + 'arbeth:ztx': 'arbeth:ztx', + 'arbeth:ldo': 'arbeth:ldo', + 'arbeth:egp': 'arbeth:egp', + 'arbeth:myrc': 'arbeth:myrc', + 'arbeth:gs': 'arbeth:gs', + 'arbeth:veur': 'arbeth:veur', + 'arbeth:vchf': 'arbeth:vchf', + 'arbeth:tbill': 'arbeth:tbill', + 'arbeth:xai': 'arbeth:xai', + 'arbeth:flttx': 'arbeth:flttx', + 'arbeth:wtsix': 'arbeth:wtsix', + 'arbeth:modrx': 'arbeth:modrx', + 'arbeth:techx': 'arbeth:techx', + 'arbeth:wtsyx': 'arbeth:wtsyx', + 'arbeth:wtlgx': 'arbeth:wtlgx', + 'arbeth:wttsx': 'arbeth:wttsx', + 'arbeth:tipsx': 'arbeth:tipsx', + 'arbeth:wtstx': 'arbeth:wtstx', + 'arbeth:wtgxx': 'arbeth:wtgxx', + 'arbeth:lngvx': 'arbeth:lngvx', + 'arbeth:eqtyx': 'arbeth:eqtyx', + 'arbeth:anime': 'arbeth:anime', + 'arbeth:benji': 'arbeth:benji', // Arbitrum testnet tokens - 'tarbeth:link' = 'tarbeth:link', - 'tarbeth:xsgd' = 'tarbeth:xsgd', + 'tarbeth:link': 'tarbeth:link', + 'tarbeth:xsgd': 'tarbeth:xsgd', // Optimism mainnet tokens - 'opeth:link' = 'opeth:link', - 'opeth:usdc' = 'opeth:usdc', - 'opeth:usdcv2' = 'opeth:usdcv2', - 'opeth:usdt' = 'opeth:usdt', - 'opeth:op' = 'opeth:op', - 'opeth:exa' = 'opeth:exa', - 'opeth:wld' = 'opeth:wld', - 'opeth:wct' = 'opeth:wct', - 'opeth:spxux' = 'opeth:spxux', - 'opeth:flttx' = 'opeth:flttx', - 'opeth:wtsix' = 'opeth:wtsix', - 'opeth:modrx' = 'opeth:modrx', - 'opeth:techx' = 'opeth:techx', - 'opeth:wtsyx' = 'opeth:wtsyx', - 'opeth:wtlgx' = 'opeth:wtlgx', - 'opeth:wttsx' = 'opeth:wttsx', - 'opeth:tipsx' = 'opeth:tipsx', - 'opeth:wtstx' = 'opeth:wtstx', - 'opeth:wtgxx' = 'opeth:wtgxx', - 'opeth:lngvx' = 'opeth:lngvx', - 'opeth:eqtyx' = 'opeth:eqtyx', + 'opeth:link': 'opeth:link', + 'opeth:usdc': 'opeth:usdc', + 'opeth:usdcv2': 'opeth:usdcv2', + 'opeth:usdt': 'opeth:usdt', + 'opeth:op': 'opeth:op', + 'opeth:exa': 'opeth:exa', + 'opeth:wld': 'opeth:wld', + 'opeth:wct': 'opeth:wct', + 'opeth:spxux': 'opeth:spxux', + 'opeth:flttx': 'opeth:flttx', + 'opeth:wtsix': 'opeth:wtsix', + 'opeth:modrx': 'opeth:modrx', + 'opeth:techx': 'opeth:techx', + 'opeth:wtsyx': 'opeth:wtsyx', + 'opeth:wtlgx': 'opeth:wtlgx', + 'opeth:wttsx': 'opeth:wttsx', + 'opeth:tipsx': 'opeth:tipsx', + 'opeth:wtstx': 'opeth:wtstx', + 'opeth:wtgxx': 'opeth:wtgxx', + 'opeth:lngvx': 'opeth:lngvx', + 'opeth:eqtyx': 'opeth:eqtyx', // Optimism testnet tokens - 'topeth:terc18dp' = 'topeth:terc18dp', - 'topeth:wct' = 'topeth:wct', + 'topeth:terc18dp': 'topeth:terc18dp', + 'topeth:wct': 'topeth:wct', // zkSync mainnet tokens - 'zketh:link' = 'zketh:link', + 'zketh:link': 'zketh:link', // zkSync testnet tokens - 'tzketh:link' = 'tzketh:link', + 'tzketh:link': 'tzketh:link', // Celo mainnet tokens - 'celo:pact' = 'celo:pact', + 'celo:pact': 'celo:pact', // bera mainnet tokens - 'bera:bgt' = 'bera:bgt', - 'bera:honey' = 'bera:honey', - 'bera:usdc' = 'bera:usdc', - 'bera:ibera' = 'bera:ibera', - 'bera:dolo' = 'bera:dolo', - 'bera:wgbera' = 'bera:wgbera', + 'bera:bgt': 'bera:bgt', + 'bera:honey': 'bera:honey', + 'bera:usdc': 'bera:usdc', + 'bera:ibera': 'bera:ibera', + 'bera:dolo': 'bera:dolo', + 'bera:wgbera': 'bera:wgbera', // bera testnet tokens - 'tbera:bgt' = 'tbera:bgt', - 'tbera:honey' = 'tbera:honey', - 'tbera:usdc' = 'tbera:usdc', - 'tbera:ibera' = 'tbera:ibera', + 'tbera:bgt': 'tbera:bgt', + 'tbera:honey': 'tbera:honey', + 'tbera:usdc': 'tbera:usdc', + 'tbera:ibera': 'tbera:ibera', // Soneium NFTs // generic NFTs - 'erc721:soneiumtoken' = 'erc721:soneiumtoken', - 'erc1155:soneiumtoken' = 'erc1155:soneiumtoken', - 'tsoneium:test721' = 'tsoneium:test721', - 'tsoneium:test1155' = 'tsoneium:test1155', + 'erc721:soneiumtoken': 'erc721:soneiumtoken', + 'erc1155:soneiumtoken': 'erc1155:soneiumtoken', + 'tsoneium:test721': 'tsoneium:test721', + 'tsoneium:test1155': 'tsoneium:test1155', // Lido ETH NFTs - 'erc721:unsteth' = 'erc721:unsteth', - 'terc721:unsteth' = 'terc721:unsteth', + 'erc721:unsteth': 'erc721:unsteth', + 'terc721:unsteth': 'terc721:unsteth', // coredao mainnet tokens - 'coredao:stcore' = 'coredao:stcore', + 'coredao:stcore': 'coredao:stcore', // coredao testnet tokens - 'tcoredao:stcore' = 'tcoredao:stcore', + 'tcoredao:stcore': 'tcoredao:stcore', //world chain mainnet tokens - 'world:wld' = 'world:wld', - 'world:usdc' = 'world:usdc', + 'world:wld': 'world:wld', + 'world:usdc': 'world:usdc', //world chain testnet tokens - 'tworld:wld' = 'tworld:wld', - 'tworld:usdc' = 'tworld:usdc', + 'tworld:wld': 'tworld:wld', + 'tworld:usdc': 'tworld:usdc', - ERC721 = 'erc721', - ERC1155 = 'erc1155', - NONSTANDARD = 'nonstandard', + ERC721: 'erc721', + ERC1155: 'erc1155', + NONSTANDARD: 'nonstandard', // Cardano Token - adaTestnetToken = 'temporary-placeholder', + adaTestnetToken: 'temporary-placeholder', // solana token - 'sol:bome' = 'sol:bome', - '3uejh-usdc' = '3uejh-usdc', - 'avax-usdc' = 'avax-usdc', - 'bop-usdc' = 'bop-usdc', - 'sol:crown' = 'sol:crown', - 'elu-usdt' = 'elu-usdt', - 'fida-usdc' = 'fida-usdc', - 'fida-usdt' = 'fida-usdt', - 'ftt-ftt' = 'ftt-ftt', - 'link-usdc' = 'link-usdc', - 'lqid-usdc' = 'lqid-usdc', - 'maticpo-usdc' = 'maticpo-usdc', - 'msol-sol' = 'msol-sol', - 'msol-usdc' = 'msol-usdc', - 'prism-usdc' = 'prism-usdc', - 'sol:pyth' = 'sol:pyth', - 'rendoge-usdc' = 'rendoge-usdc', - 'shdw-usdc' = 'shdw-usdc', - 'sol-wtust' = 'sol-wtust', - 'srm-usdc' = 'srm-usdc', - 'srmet-srm' = 'srmet-srm', - 'sushi-usdc' = 'sushi-usdc', - 'tuatlas' = 'tuatlas', - 'tucope' = 'tucope', - 'tulike' = 'tulike', - 'tureal' = 'tureal', - 'tusamo' = 'tusamo', - 'usdt-usdc' = 'usdt-usdc', - 'wbwbnb-usdc' = 'wbwbnb-usdc', - 'wheth-usdc' = 'wheth-usdc', - 'wtust-usdt' = 'wtust-usdt', - 'xcope-usdc' = 'xcope-usdc', - 'xrp-sollet' = 'xrp-sollet', - 'aury' = 'aury', - 'dio' = 'dio', - 'sol-perp' = 'sol-perp', - 'sol-woo' = 'sol-woo', - 'sol-weth' = 'sol-weth', - 'btc-sollet' = 'btc-sollet', - 'eth-sollet' = 'eth-sollet', - 'sol:bonk' = 'sol:bonk', - 'jto' = 'jto', - 'sol:jto' = 'sol:jto', - 'jup' = 'jup', - 'sol:jup' = 'sol:jup', - 'sol:honey' = 'sol:honey', - 'mobile' = 'mobile', - 'sol:mobile' = 'sol:mobile', - 'wif' = 'wif', - 'sol:wif' = 'sol:wif', - 'natix' = 'natix', - 'sol:natix' = 'sol:natix', - 'sol:ks' = 'sol:ks', - 'sol:apusdt' = 'sol:apusdt', - 'sol:acusd' = 'sol:acusd', - 'sol:solink' = 'sol:solink', - 'sol:block' = 'sol:block', - 'sol:render' = 'sol:render', - 'sol:wen' = 'sol:wen', - 'sol:mew' = 'sol:mew', - 'sol:pyusd' = 'sol:pyusd', - 'sol:moveusd' = 'sol:moveusd', - 'sol:dxl' = 'sol:dxl', - 'sol:mother' = 'sol:mother', - 'sol:wrose' = 'sol:wrose', - 'sol:atlas' = 'sol:atlas', - 'sol:mdt' = 'sol:mdt', - 'sol:io' = 'sol:io', - 'sol:aave' = 'sol:aave', - 'sol:ldo' = 'sol:ldo', - 'sol:gt' = 'sol:gt', - 'sol:popcat' = 'sol:popcat', - 'sol:axs' = 'sol:axs', - 'sol:sand' = 'sol:sand', - 'sol:ens' = 'sol:ens', - 'sol:enron' = 'sol:enron', - 'sol:jitosol' = 'sol:jitosol', - 'sol:zeus' = 'sol:zeus', - 'sol:kmno' = 'sol:kmno', - 'sol:giga' = 'sol:giga', - 'sol:tnsr' = 'sol:tnsr', - 'sol:ssol' = 'sol:ssol', - 'sol:drift' = 'sol:drift', - 'sol:spx' = 'sol:spx', - 'sol:turbo' = 'sol:turbo', - 'sol:fartcoin' = 'sol:fartcoin', - 'sol:swarms' = 'sol:swarms', - 'sol:nc' = 'sol:nc', - 'sol:tai' = 'sol:tai', - 'sol:pengu' = 'sol:pengu', - 'sol:corn' = 'sol:corn', - 'sol:yes' = 'sol:yes', - 'sol:ai16z' = 'sol:ai16z', - 'sol:pnut' = 'sol:pnut', - 'sol:nyan' = 'sol:nyan', - 'sol:virtual' = 'sol:virtual', - 'sol:zerebro' = 'sol:zerebro', - 'sol:arc' = 'sol:arc', - 'sol:nos' = 'sol:nos', - 'sol:jlp' = 'sol:jlp', - 'sol:grass' = 'sol:grass', - 'sol:trump' = 'sol:trump', - 'sol:melania' = 'sol:melania', - 'sol:ustry' = 'sol:ustry', - 'sol:eurob' = 'sol:eurob', - 'sol:tesouro' = 'sol:tesouro', - 'sol:cetes' = 'sol:cetes', - 'sol:gilts' = 'sol:gilts', - 'sol:muskit' = 'sol:muskit', - 'sol:matrix' = 'sol:matrix', - 'sol:eurcv' = 'sol:eurcv', - 'sol:layer' = 'sol:layer', - 'sol:rock' = 'sol:rock', - 'sol:dood' = 'sol:dood', - 'sol:sb' = 'sol:sb', - 'sol:dfdvsol' = 'sol:dfdvsol', - 'sol:chillguy' = 'sol:chillguy', - 'sol:moodeng' = 'sol:moodeng', - 'sol:hsol' = 'sol:hsol', - 'sol:grph' = 'sol:grph', - 'sol:superbonds' = 'sol:superbonds', - 'sol:would' = 'sol:would', - 'sol:dog' = 'sol:dog', - 'sol:saros' = 'sol:saros', - 'sol:babydoge' = 'sol:babydoge', - 'sol:useless' = 'sol:useless', - 'sol:gohome' = 'sol:gohome', - 'sol:aura' = 'sol:aura', - 'sol:me' = 'sol:me', - 'sol:alch' = 'sol:alch', - 'sol:launchcoin' = 'sol:launchcoin', - 'sol:stik' = 'sol:stik', - 'sol:chill' = 'sol:chill', - 'sol:zbcn' = 'sol:zbcn', - 'sol:benji' = 'sol:benji', + 'sol:bome': 'sol:bome', + '3uejh-usdc': '3uejh-usdc', + 'avax-usdc': 'avax-usdc', + 'bop-usdc': 'bop-usdc', + 'sol:crown': 'sol:crown', + 'elu-usdt': 'elu-usdt', + 'fida-usdc': 'fida-usdc', + 'fida-usdt': 'fida-usdt', + 'ftt-ftt': 'ftt-ftt', + 'link-usdc': 'link-usdc', + 'lqid-usdc': 'lqid-usdc', + 'maticpo-usdc': 'maticpo-usdc', + 'msol-sol': 'msol-sol', + 'msol-usdc': 'msol-usdc', + 'prism-usdc': 'prism-usdc', + 'sol:pyth': 'sol:pyth', + 'rendoge-usdc': 'rendoge-usdc', + 'shdw-usdc': 'shdw-usdc', + 'sol-wtust': 'sol-wtust', + 'srm-usdc': 'srm-usdc', + 'srmet-srm': 'srmet-srm', + 'sushi-usdc': 'sushi-usdc', + tuatlas: 'tuatlas', + tucope: 'tucope', + tulike: 'tulike', + tureal: 'tureal', + tusamo: 'tusamo', + 'usdt-usdc': 'usdt-usdc', + 'wbwbnb-usdc': 'wbwbnb-usdc', + 'wheth-usdc': 'wheth-usdc', + 'wtust-usdt': 'wtust-usdt', + 'xcope-usdc': 'xcope-usdc', + 'xrp-sollet': 'xrp-sollet', + aury: 'aury', + dio: 'dio', + 'sol-perp': 'sol-perp', + 'sol-woo': 'sol-woo', + 'sol-weth': 'sol-weth', + 'btc-sollet': 'btc-sollet', + 'eth-sollet': 'eth-sollet', + 'sol:bonk': 'sol:bonk', + jto: 'jto', + 'sol:jto': 'sol:jto', + jup: 'jup', + 'sol:jup': 'sol:jup', + 'sol:honey': 'sol:honey', + mobile: 'mobile', + 'sol:mobile': 'sol:mobile', + wif: 'wif', + 'sol:wif': 'sol:wif', + natix: 'natix', + 'sol:natix': 'sol:natix', + 'sol:ks': 'sol:ks', + 'sol:apusdt': 'sol:apusdt', + 'sol:acusd': 'sol:acusd', + 'sol:solink': 'sol:solink', + 'sol:block': 'sol:block', + 'sol:render': 'sol:render', + 'sol:wen': 'sol:wen', + 'sol:mew': 'sol:mew', + 'sol:pyusd': 'sol:pyusd', + 'sol:moveusd': 'sol:moveusd', + 'sol:dxl': 'sol:dxl', + 'sol:mother': 'sol:mother', + 'sol:wrose': 'sol:wrose', + 'sol:atlas': 'sol:atlas', + 'sol:mdt': 'sol:mdt', + 'sol:io': 'sol:io', + 'sol:aave': 'sol:aave', + 'sol:ldo': 'sol:ldo', + 'sol:gt': 'sol:gt', + 'sol:popcat': 'sol:popcat', + 'sol:axs': 'sol:axs', + 'sol:sand': 'sol:sand', + 'sol:ens': 'sol:ens', + 'sol:enron': 'sol:enron', + 'sol:jitosol': 'sol:jitosol', + 'sol:zeus': 'sol:zeus', + 'sol:kmno': 'sol:kmno', + 'sol:giga': 'sol:giga', + 'sol:tnsr': 'sol:tnsr', + 'sol:ssol': 'sol:ssol', + 'sol:drift': 'sol:drift', + 'sol:spx': 'sol:spx', + 'sol:turbo': 'sol:turbo', + 'sol:fartcoin': 'sol:fartcoin', + 'sol:swarms': 'sol:swarms', + 'sol:nc': 'sol:nc', + 'sol:tai': 'sol:tai', + 'sol:pengu': 'sol:pengu', + 'sol:corn': 'sol:corn', + 'sol:yes': 'sol:yes', + 'sol:ai16z': 'sol:ai16z', + 'sol:pnut': 'sol:pnut', + 'sol:nyan': 'sol:nyan', + 'sol:virtual': 'sol:virtual', + 'sol:zerebro': 'sol:zerebro', + 'sol:arc': 'sol:arc', + 'sol:nos': 'sol:nos', + 'sol:jlp': 'sol:jlp', + 'sol:grass': 'sol:grass', + 'sol:trump': 'sol:trump', + 'sol:melania': 'sol:melania', + 'sol:ustry': 'sol:ustry', + 'sol:eurob': 'sol:eurob', + 'sol:tesouro': 'sol:tesouro', + 'sol:cetes': 'sol:cetes', + 'sol:gilts': 'sol:gilts', + 'sol:muskit': 'sol:muskit', + 'sol:matrix': 'sol:matrix', + 'sol:eurcv': 'sol:eurcv', + 'sol:layer': 'sol:layer', + 'sol:rock': 'sol:rock', + 'sol:dood': 'sol:dood', + 'sol:sb': 'sol:sb', + 'sol:dfdvsol': 'sol:dfdvsol', + 'sol:chillguy': 'sol:chillguy', + 'sol:moodeng': 'sol:moodeng', + 'sol:hsol': 'sol:hsol', + 'sol:grph': 'sol:grph', + 'sol:superbonds': 'sol:superbonds', + 'sol:would': 'sol:would', + 'sol:dog': 'sol:dog', + 'sol:saros': 'sol:saros', + 'sol:babydoge': 'sol:babydoge', + 'sol:useless': 'sol:useless', + 'sol:gohome': 'sol:gohome', + 'sol:aura': 'sol:aura', + 'sol:me': 'sol:me', + 'sol:alch': 'sol:alch', + 'sol:launchcoin': 'sol:launchcoin', + 'sol:stik': 'sol:stik', + 'sol:chill': 'sol:chill', + 'sol:zbcn': 'sol:zbcn', + 'sol:benji': 'sol:benji', // TRX tokens - 'trx:htx' = 'trx:htx', - 'trx:jst' = 'trx:jst', - 'trx:tusd' = 'trx:tusd', - 'trx:win' = 'trx:win', - 'trx:btt' = 'trx:btt', - 'trx:usdd' = 'trx:usdd', - 'trx:usdt' = 'trx:usdt', - 'trx:usd1' = 'trx:usd1', - 'trx:nft' = 'trx:nft', - 'trx:trxs' = 'trx:trxs', + 'trx:htx': 'trx:htx', + 'trx:jst': 'trx:jst', + 'trx:tusd': 'trx:tusd', + 'trx:win': 'trx:win', + 'trx:btt': 'trx:btt', + 'trx:usdd': 'trx:usdd', + 'trx:usdt': 'trx:usdt', + 'trx:usd1': 'trx:usd1', + 'trx:nft': 'trx:nft', + 'trx:trxs': 'trx:trxs', // TRX testnet tokens - 'ttrx:usdt' = 'ttrx:usdt', - 'ttrx:usd1' = 'ttrx:usd1', - 'ttrx:stgusd1' = 'ttrx:stgusd1', + 'ttrx:usdt': 'ttrx:usdt', + 'ttrx:usd1': 'ttrx:usd1', + 'ttrx:stgusd1': 'ttrx:stgusd1', // XRP tokens - 'txrp:tst-rP9jPyP5kyvFRb6ZiRghAGw5u8SGAmU4bd' = 'txrp:tst-rP9jPyP5kyvFRb6ZiRghAGw5u8SGAmU4bd', - 'xrp:rlusd' = 'xrp:rlusd', - 'txrp:rlusd' = 'txrp:rlusd', - 'txrp:xat' = 'txrp:xat', - 'xrp:tbill' = 'xrp:tbill', - 'xrp:xsgd' = 'xrp:xsgd', - 'xrp:veur' = 'xrp:veur', - 'xrp:vchf' = 'xrp:vchf', - 'xrp:vgbp' = 'xrp:vgbp', - 'xrp:solo' = 'xrp:solo', - 'xrp:aau' = 'xrp:aau', - 'xrp:fiuaxrp' = 'xrp:fiuaxrp', + 'txrp:tst-rP9jPyP5kyvFRb6ZiRghAGw5u8SGAmU4bd': 'txrp:tst-rP9jPyP5kyvFRb6ZiRghAGw5u8SGAmU4bd', + 'xrp:rlusd': 'xrp:rlusd', + 'txrp:rlusd': 'txrp:rlusd', + 'txrp:xat': 'txrp:xat', + 'xrp:tbill': 'xrp:tbill', + 'xrp:xsgd': 'xrp:xsgd', + 'xrp:veur': 'xrp:veur', + 'xrp:vchf': 'xrp:vchf', + 'xrp:vgbp': 'xrp:vgbp', + 'xrp:solo': 'xrp:solo', + 'xrp:aau': 'xrp:aau', + 'xrp:fiuaxrp': 'xrp:fiuaxrp', // XRP testnet tokens - 'txrp:xsgd' = 'txrp:xsgd', + 'txrp:xsgd': 'txrp:xsgd', // Sui tokens - 'sui:deep' = 'sui:deep', - 'sui:suins' = 'sui:suins', - 'sui:fdusd' = 'sui:fdusd', - 'sui:usdc' = 'sui:usdc', - 'sui:wusdc' = 'sui:wusdc', - 'sui:sca' = 'sui:sca', - 'sui:times' = 'sui:times', - 'sui:fud' = 'sui:fud', - 'sui:afsui' = 'sui:afsui', - 'sui:navx' = 'sui:navx', - 'sui:vsui' = 'sui:vsui', - 'sui:send' = 'sui:send', - 'sui:cetus' = 'sui:cetus', - 'sui:wal' = 'sui:wal', - 'sui:xmn' = 'sui:xmn', + 'sui:deep': 'sui:deep', + 'sui:suins': 'sui:suins', + 'sui:fdusd': 'sui:fdusd', + 'sui:usdc': 'sui:usdc', + 'sui:wusdc': 'sui:wusdc', + 'sui:sca': 'sui:sca', + 'sui:times': 'sui:times', + 'sui:fud': 'sui:fud', + 'sui:afsui': 'sui:afsui', + 'sui:navx': 'sui:navx', + 'sui:vsui': 'sui:vsui', + 'sui:send': 'sui:send', + 'sui:cetus': 'sui:cetus', + 'sui:wal': 'sui:wal', + 'sui:xmn': 'sui:xmn', // Sui testnet tokens - 'tsui:deep' = 'tsui:deep', - 'tsui:wal' = 'tsui:wal', + 'tsui:deep': 'tsui:deep', + 'tsui:wal': 'tsui:wal', // Apt tokens - 'apt:usdt' = 'apt:usdt', - 'apt:usdc' = 'apt:usdc', - 'apt:pact' = 'apt:pact', - 'apt:benji' = 'apt:benji', + 'apt:usdt': 'apt:usdt', + 'apt:usdc': 'apt:usdc', + 'apt:pact': 'apt:pact', + 'apt:benji': 'apt:benji', // Apt mainnet NFT collections - 'apt:h00ts' = 'apt:h00ts', + 'apt:h00ts': 'apt:h00ts', // Apt testnet tokens - 'tapt:usdt' = 'tapt:usdt', + 'tapt:usdt': 'tapt:usdt', // Apt testnet NFT collections - 'tapt:nftcollection1' = 'tapt:nftcollection1', - 'tapt:beta3loanbook' = 'tapt:beta3loanbook', + 'tapt:nftcollection1': 'tapt:nftcollection1', + 'tapt:beta3loanbook': 'tapt:beta3loanbook', // Sip10 tokens - 'stx:sbtc' = 'stx:sbtc', - 'stx:ststx' = 'stx:ststx', - 'stx:alex' = 'stx:alex', - 'stx:aeusdc' = 'stx:aeusdc', - 'stx:usdh' = 'stx:usdh', - 'stx:susdh' = 'stx:susdh', - 'stx:welsh' = 'stx:welsh', + 'stx:sbtc': 'stx:sbtc', + 'stx:ststx': 'stx:ststx', + 'stx:alex': 'stx:alex', + 'stx:aeusdc': 'stx:aeusdc', + 'stx:usdh': 'stx:usdh', + 'stx:susdh': 'stx:susdh', + 'stx:welsh': 'stx:welsh', // Sip10 testnet tokens - 'tstx:tsbtc' = 'tstx:tsbtc', - 'tstx:tsip6dp' = 'tstx:tsip6dp', - 'tstx:tsip8dp' = 'tstx:tsip8dp', + 'tstx:tsbtc': 'tstx:tsbtc', + 'tstx:tsip6dp': 'tstx:tsip6dp', + 'tstx:tsip8dp': 'tstx:tsip8dp', // Hbar tokens - 'hbar:karate' = 'hbar:karate', - 'hbar:sauce' = 'hbar:sauce', - 'hbar:dovu' = 'hbar:dovu', - 'hbar:pack' = 'hbar:pack', - 'hbar:jam' = 'hbar:jam', - 'hbar:berry' = 'hbar:berry', - 'hbar:bonzo' = 'hbar:bonzo', - 'hbar:co2e' = 'hbar:co2e', - 'hbar:hsuite' = 'hbar:hsuite', + 'hbar:karate': 'hbar:karate', + 'hbar:sauce': 'hbar:sauce', + 'hbar:dovu': 'hbar:dovu', + 'hbar:pack': 'hbar:pack', + 'hbar:jam': 'hbar:jam', + 'hbar:berry': 'hbar:berry', + 'hbar:bonzo': 'hbar:bonzo', + 'hbar:co2e': 'hbar:co2e', + 'hbar:hsuite': 'hbar:hsuite', // Hbar Testnet tokens - 'thbar:txsgd' = 'thbar:txsgd', + 'thbar:txsgd': 'thbar:txsgd', // Nep141 tokens - 'near:usdc' = 'near:usdc', - 'near:usdt' = 'near:usdt', + 'near:usdc': 'near:usdc', + 'near:usdt': 'near:usdt', // Nep141 testnet tokens - 'tnear:tnep24dp' = 'tnear:tnep24dp', - 'tnear:usdc' = 'tnear:usdc', + 'tnear:tnep24dp': 'tnear:tnep24dp', + 'tnear:usdc': 'tnear:usdc', // VET tokens - 'vet:vtho' = 'vet:vtho', + 'vet:vtho': 'vet:vtho', // VET testnet tokens - 'tvet:vtho' = 'tvet:vtho', + 'tvet:vtho': 'tvet:vtho', // fiats - AED = 'aed', - EUR = 'eur', - GBP = 'gbp', - SGD = 'sgd', - USD = 'usd', -} + AED: 'aed', + EUR: 'eur', + GBP: 'gbp', + SGD: 'sgd', + USD: 'usd', +} as const; + +export type UnderLyingAssetKey = keyof typeof UnderlyingAsset; +export type UnderlyingAssetValue = (typeof UnderlyingAsset)[keyof typeof UnderlyingAsset]; +export type UnderlyingAsset = UnderlyingAssetValue; /** * This is the curve BitGo signs against with the user, backup and BitGo key. */ -export enum KeyCurve { - Secp256k1 = 'secp256k1', - Ed25519 = 'ed25519', -} +export const KeyCurve = { + Secp256k1: 'secp256k1', + Ed25519: 'ed25519', +} as const; + +export type KeyCurveKey = keyof typeof KeyCurve; +export type KeyCurveValue = (typeof KeyCurve)[keyof typeof KeyCurve]; +export type KeyCurve = KeyCurveValue; /** * This enum contains the base units for the coins that BitGo supports */ -export enum BaseUnit { - ATOM = 'uatom', - APT = 'octa', - ETH = 'wei', - BABY = 'ubbn', - BTC = 'satoshi', - BSC = 'jager', - XLM = 'stroop', - TRX = 'sun', - HBAR = 'tinybar', - ALGO = 'microAlgo', - EOS = 'eos', // eos has no base unit. smallest amount in eos is 4 decimals - SOL = 'lamport', - ADA = 'lovelace', - USD = 'USD', - LNBTC = 'millisatoshi', - LTC = 'microlitecoins', - DASH = 'duff', - ZEC = 'zatoshi', - CSPR = 'mote', - DOT = 'planck', - XRP = 'drop', - XTZ = 'micro xtz', - STX = 'micro-STX', - SUI = 'MIST', - TON = 'nanoton', - NEAR = 'yocto', - OFC = 'ofcCoin', - OSMO = 'uosmo', - FIAT = 'fiatCoin', - TIA = 'utia', - HASH = 'nhash', - BLD = 'ubld', - SEI = 'usei', - INJECTIVE = 'inj', - ZETA = 'azeta', - KAVA = 'ukava', - COREUM = 'ucore', - TCOREUM = 'utestcore', // Coreum testnet uses different name for native coin - ISLM = 'aISLM', - RUNE = 'rune', - TAO = 'rao', - ICP = 'e8s', - MANTRA = 'uom', - POLYX = 'micropolyx', - CRONOS = 'basecro', - FETCHAI = 'afet', - INITIA = 'uinit', - ASI = 'afet', - VET = 'wei', - TCRONOS = 'basetcro', - TASI = 'atestfet', -} +export const BaseUnit = { + ATOM: 'uatom', + APT: 'octa', + ETH: 'wei', + BABY: 'ubbn', + BTC: 'satoshi', + BSC: 'jager', + XLM: 'stroop', + TRX: 'sun', + HBAR: 'tinybar', + ALGO: 'microAlgo', + EOS: 'eos', // eos has no base unit. smallest amount in eos is 4 decimals + SOL: 'lamport', + ADA: 'lovelace', + USD: 'USD', + LNBTC: 'millisatoshi', + LTC: 'microlitecoins', + DASH: 'duff', + ZEC: 'zatoshi', + CSPR: 'mote', + DOT: 'planck', + XRP: 'drop', + XTZ: 'micro xtz', + STX: 'micro-STX', + SUI: 'MIST', + TON: 'nanoton', + NEAR: 'yocto', + OFC: 'ofcCoin', + OSMO: 'uosmo', + FIAT: 'fiatCoin', + TIA: 'utia', + HASH: 'nhash', + BLD: 'ubld', + SEI: 'usei', + INJECTIVE: 'inj', + ZETA: 'azeta', + KAVA: 'ukava', + COREUM: 'ucore', + TCOREUM: 'utestcore', // Coreum testnet uses different name for native coin + ISLM: 'aISLM', + RUNE: 'rune', + TAO: 'rao', + ICP: 'e8s', + MANTRA: 'uom', + POLYX: 'micropolyx', + CRONOS: 'basecro', + FETCHAI: 'afet', + INITIA: 'uinit', + ASI: 'afet', + VET: 'wei', + TCRONOS: 'basetcro', + TASI: 'atestfet', +} as const; + +export type BaseUnitKey = keyof typeof BaseUnit; +export type BaseUnitValue = (typeof BaseUnit)[keyof typeof BaseUnit]; +export type BaseUnit = BaseUnitValue; export interface BaseCoinConstructorOptions { id: string; // uuid v4 diff --git a/modules/statics/src/coinFeatures.ts b/modules/statics/src/coinFeatures.ts index dfe379f976..d3f10ad1b3 100644 --- a/modules/statics/src/coinFeatures.ts +++ b/modules/statics/src/coinFeatures.ts @@ -60,12 +60,9 @@ export const AVAXC_FEATURES = [ CoinFeature.MULTISIG, CoinFeature.EIP1559, ]; -export const CELO_FEATURES = [ - ...ETH_FEATURES, - CoinFeature.MULTISIG_COLD, - CoinFeature.MULTISIG, - CoinFeature.EIP1559, -].filter( +export const CELO_FEATURES = ( + [...ETH_FEATURES, CoinFeature.MULTISIG_COLD, CoinFeature.MULTISIG, CoinFeature.EIP1559] as CoinFeature[] +).filter( (feature) => feature !== CoinFeature.CUSTODY && feature !== CoinFeature.CUSTODY_BITGO_GERMANY && @@ -242,7 +239,7 @@ export const SOL_FEATURES = [ CoinFeature.BULK_TRANSACTION, ]; export const TSOL_FEATURES = [...SOL_FEATURES, CoinFeature.BULK_TRANSACTION, CoinFeature.CUSTODY_BITGO_SINGAPORE]; -export const SOL_TOKEN_FEATURES = [ +export const SOL_TOKEN_FEATURES: CoinFeature[] = [ ...ACCOUNT_COIN_DEFAULT_FEATURES, CoinFeature.TSS, CoinFeature.TSS_COLD, diff --git a/modules/statics/src/coins.ts b/modules/statics/src/coins.ts index fecd7b844f..e390774a81 100644 --- a/modules/statics/src/coins.ts +++ b/modules/statics/src/coins.ts @@ -61,7 +61,7 @@ import { bscTokens } from './coins/bscTokens'; import { polygonTokens } from './coins/polygonTokens'; import { solTokens } from './coins/solTokens'; import { CoinMap } from './map'; -import { Networks } from './networks'; +import { BaseNetwork, Networks } from './networks'; import { networkFeatureMapForTokens } from './networkFeatureMapForTokens'; import { utxoCoins } from './utxo'; import { lightningCoins } from './lightning'; @@ -221,11 +221,13 @@ export const coins = CoinMap.fromCoins([ BaseUnit.CSPR, CSPR_FEATURES.filter( (feature) => - ![ - CoinFeature.CUSTODY_BITGO_SINGAPORE, - CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, - CoinFeature.CUSTODY_BITGO_MENA_FZE, - ].includes(feature) + !( + [ + CoinFeature.CUSTODY_BITGO_SINGAPORE, + CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, + CoinFeature.CUSTODY_BITGO_MENA_FZE, + ] as CoinFeature[] + ).includes(feature) ) ), account( @@ -811,11 +813,13 @@ export const coins = CoinMap.fromCoins([ BaseUnit.COREUM, COREUM_FEATURES.filter( (feature) => - ![ - CoinFeature.CUSTODY_BITGO_SINGAPORE, - CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, - CoinFeature.CUSTODY_BITGO_MENA_FZE, - ].includes(feature) + !( + [ + CoinFeature.CUSTODY_BITGO_SINGAPORE, + CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, + CoinFeature.CUSTODY_BITGO_MENA_FZE, + ] as CoinFeature[] + ).includes(feature) ) ), account( @@ -4229,7 +4233,7 @@ export function createTokenMapUsingTrimmedConfigDetails( reducedTokenConfigMap: Record ): CoinMap { const amsTokenConfigMap: Record = {}; - const networkNameMap = new Map( + const networkNameMap = new Map( Object.values(Networks).flatMap((networkType) => Object.values(networkType).map((network) => [network.name, network]) ) diff --git a/modules/statics/src/coins/erc20Coins.ts b/modules/statics/src/coins/erc20Coins.ts index 25960535be..af2febbc8b 100644 --- a/modules/statics/src/coins/erc20Coins.ts +++ b/modules/statics/src/coins/erc20Coins.ts @@ -1300,11 +1300,13 @@ export const erc20Coins = [ UnderlyingAsset.CEL, ETH_FEATURES_WITH_FRANKFURT.filter( (feature) => - ![ - CoinFeature.CUSTODY_BITGO_SINGAPORE, - CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, - CoinFeature.CUSTODY_BITGO_MENA_FZE, - ].includes(feature) + !( + [ + CoinFeature.CUSTODY_BITGO_SINGAPORE, + CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, + CoinFeature.CUSTODY_BITGO_MENA_FZE, + ] as CoinFeature[] + ).includes(feature) ) ), erc20( @@ -2557,11 +2559,13 @@ export const erc20Coins = [ UnderlyingAsset.FTT, ETH_FEATURES_WITH_FRANKFURT.filter( (feature) => - ![ - CoinFeature.CUSTODY_BITGO_SINGAPORE, - CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, - CoinFeature.CUSTODY_BITGO_MENA_FZE, - ].includes(feature) + !( + [ + CoinFeature.CUSTODY_BITGO_SINGAPORE, + CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, + CoinFeature.CUSTODY_BITGO_MENA_FZE, + ] as CoinFeature[] + ).includes(feature) ) ), erc20( diff --git a/modules/statics/src/coins/polygonTokens.ts b/modules/statics/src/coins/polygonTokens.ts index b98f2adfa2..de4f810ed6 100644 --- a/modules/statics/src/coins/polygonTokens.ts +++ b/modules/statics/src/coins/polygonTokens.ts @@ -133,11 +133,13 @@ export const polygonTokens = [ UnderlyingAsset['polygon:cel'], POLYGON_TOKEN_FEATURES.filter( (feature) => - ![ - CoinFeature.CUSTODY_BITGO_SINGAPORE, - CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, - CoinFeature.CUSTODY_BITGO_MENA_FZE, - ].includes(feature) + !( + [ + CoinFeature.CUSTODY_BITGO_SINGAPORE, + CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, + CoinFeature.CUSTODY_BITGO_MENA_FZE, + ] as CoinFeature[] + ).includes(feature) ) ), polygonErc20( @@ -887,11 +889,13 @@ export const polygonTokens = [ UnderlyingAsset['polygon:wrx'], POLYGON_TOKEN_FEATURES.filter( (feature) => - ![ - CoinFeature.CUSTODY_BITGO_SINGAPORE, - CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, - CoinFeature.CUSTODY_BITGO_MENA_FZE, - ].includes(feature) + !( + [ + CoinFeature.CUSTODY_BITGO_SINGAPORE, + CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, + CoinFeature.CUSTODY_BITGO_MENA_FZE, + ] as CoinFeature[] + ).includes(feature) ) ), polygonErc20( diff --git a/modules/statics/src/coins/solTokens.ts b/modules/statics/src/coins/solTokens.ts index 3e0cb36764..0384044069 100644 --- a/modules/statics/src/coins/solTokens.ts +++ b/modules/statics/src/coins/solTokens.ts @@ -341,11 +341,13 @@ export const solTokens = [ UnderlyingAsset.FTT, SOL_TOKEN_FEATURES.filter( (feature) => - ![ - CoinFeature.CUSTODY_BITGO_SINGAPORE, - CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, - CoinFeature.CUSTODY_BITGO_MENA_FZE, - ].includes(feature) + !( + [ + CoinFeature.CUSTODY_BITGO_SINGAPORE, + CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, + CoinFeature.CUSTODY_BITGO_MENA_FZE, + ] as CoinFeature[] + ).includes(feature) ) ), solToken( @@ -798,11 +800,13 @@ export const solTokens = [ UnderlyingAsset.CEL, SOL_TOKEN_FEATURES.filter( (feature) => - ![ - CoinFeature.CUSTODY_BITGO_SINGAPORE, - CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, - CoinFeature.CUSTODY_BITGO_MENA_FZE, - ].includes(feature) + !( + [ + CoinFeature.CUSTODY_BITGO_SINGAPORE, + CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, + CoinFeature.CUSTODY_BITGO_MENA_FZE, + ] as CoinFeature[] + ).includes(feature) ) ), solToken( @@ -1505,11 +1509,13 @@ export const solTokens = [ UnderlyingAsset.FTT, SOL_TOKEN_FEATURES.filter( (feature) => - ![ - CoinFeature.CUSTODY_BITGO_SINGAPORE, - CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, - CoinFeature.CUSTODY_BITGO_MENA_FZE, - ].includes(feature) + !( + [ + CoinFeature.CUSTODY_BITGO_SINGAPORE, + CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, + CoinFeature.CUSTODY_BITGO_MENA_FZE, + ] as CoinFeature[] + ).includes(feature) ) ), solToken( @@ -1572,11 +1578,13 @@ export const solTokens = [ UnderlyingAsset.WFFT, SOL_TOKEN_FEATURES.filter( (feature) => - ![ - CoinFeature.CUSTODY_BITGO_SINGAPORE, - CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, - CoinFeature.CUSTODY_BITGO_MENA_FZE, - ].includes(feature) + !( + [ + CoinFeature.CUSTODY_BITGO_SINGAPORE, + CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, + CoinFeature.CUSTODY_BITGO_MENA_FZE, + ] as CoinFeature[] + ).includes(feature) ) ), solToken( @@ -2712,7 +2720,7 @@ export const solTokens = [ 'he1iusmfkpAdwvxLNGV8Y1iSbj4rUy6yMhEA3fotn9A', 'he1iusmfkpAdwvxLNGV8Y1iSbj4rUy6yMhEA3fotn9A', UnderlyingAsset['sol:hsol'], - SOL_TOKEN_FEATURES.filter((feature) => ![CoinFeature.CUSTODY_BITGO_SINGAPORE].includes(feature)) + SOL_TOKEN_FEATURES.filter((feature) => !([CoinFeature.CUSTODY_BITGO_SINGAPORE] as CoinFeature[]).includes(feature)) ), solToken( '247b9f70-2e4c-4f31-a944-bb5b59f1529a', diff --git a/modules/statics/src/utxo.ts b/modules/statics/src/utxo.ts index c433a816f8..da199930ec 100644 --- a/modules/statics/src/utxo.ts +++ b/modules/statics/src/utxo.ts @@ -284,11 +284,13 @@ export const utxoCoins: Readonly[] = [ BaseUnit.DASH, DASH_FEATURES.filter( (feature) => - ![ - CoinFeature.CUSTODY_BITGO_SINGAPORE, - CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, - CoinFeature.CUSTODY_BITGO_MENA_FZE, - ].includes(feature) + !( + [ + CoinFeature.CUSTODY_BITGO_SINGAPORE, + CoinFeature.CUSTODY_BITGO_CUSTODY_MENA_FZE, + CoinFeature.CUSTODY_BITGO_MENA_FZE, + ] as CoinFeature[] + ).includes(feature) ) ), utxo( diff --git a/modules/statics/test/unit/account.ts b/modules/statics/test/unit/account.ts index 33ff79eae9..a8f444e44f 100644 --- a/modules/statics/test/unit/account.ts +++ b/modules/statics/test/unit/account.ts @@ -1,4 +1,4 @@ -const should = require('should'); +import should from 'should'; import { AccountCoin, Networks, UnderlyingAsset } from '../../src'; import { txrpToken, xrpToken } from '../../src/account'; diff --git a/modules/statics/test/unit/base.ts b/modules/statics/test/unit/base.ts index 037fe8a1d3..c09359ea89 100644 --- a/modules/statics/test/unit/base.ts +++ b/modules/statics/test/unit/base.ts @@ -1,13 +1,13 @@ -const should = require('should'); -const { UnderlyingAsset } = require('../../src/base'); +import should from 'should'; +import { UnderlyingAsset, UnderlyingAssetValue } from '../../src/base'; describe('UnderlyingAsset', function () { it('UnderlyingAsset values should be unique', function () { const underlyingAssetSet = new Set(); - const duplicateAssets: (typeof UnderlyingAsset)[] = []; + const duplicateAssets: UnderlyingAssetValue[] = []; - for (const asset in UnderlyingAsset) { - const assetValue = UnderlyingAsset[asset].toUpperCase(); + for (const asset of Object.keys(UnderlyingAsset)) { + const assetValue = UnderlyingAsset[asset as keyof typeof UnderlyingAsset].toUpperCase() as UnderlyingAssetValue; if (underlyingAssetSet.has(assetValue)) { duplicateAssets.push(assetValue); } diff --git a/modules/statics/test/unit/deps.ts b/modules/statics/test/unit/deps.ts index 4ab001fa31..207b613c96 100644 --- a/modules/statics/test/unit/deps.ts +++ b/modules/statics/test/unit/deps.ts @@ -1,5 +1,8 @@ import 'should'; -import * as pkg from '../../package.json'; +import { readFileSync } from 'fs'; +import { resolve } from 'path'; + +const pkg = JSON.parse(readFileSync(resolve(process.cwd(), 'package.json'), 'utf8')); describe('Dependency Policy', () => { it('should not have any run time dependencies', () => { diff --git a/modules/statics/test/unit/ofcCoinParity.ts b/modules/statics/test/unit/ofcCoinParity.ts index ffd6511fb8..b549bc3fd5 100644 --- a/modules/statics/test/unit/ofcCoinParity.ts +++ b/modules/statics/test/unit/ofcCoinParity.ts @@ -1,4 +1,4 @@ -const should = require('should'); +import should from 'should'; import { randomUUID } from 'crypto'; import { CoinFeature, coins, UnderlyingAsset } from '../../src'; diff --git a/modules/statics/tsconfig.json b/modules/statics/tsconfig.json index 6b59e3fe15..d85faa8229 100644 --- a/modules/statics/tsconfig.json +++ b/modules/statics/tsconfig.json @@ -3,6 +3,7 @@ "compilerOptions": { "outDir": "./dist", "rootDir": ".", + "esModuleInterop": true, "strict": true, "typeRoots": ["../../types", "./node_modules/@types", "../../node_modules/@types"] }, diff --git a/modules/unspents/package.json b/modules/unspents/package.json index 5e1b20f0c6..a097ea6105 100644 --- a/modules/unspents/package.json +++ b/modules/unspents/package.json @@ -31,7 +31,7 @@ "homepage": "https://github.com/BitGo/BitGoJS/tree/master/modules/unspents#bitgounspents", "devDependencies": { "@types/lodash": "~4.14.123", - "@types/node": "^22.15.29", + "@types/node": "^24.0.4", "lodash.combinations": "~18.9.19", "should": "~13.2.3" }, diff --git a/modules/unspents/test/signedTx/inputWeights.ts b/modules/unspents/test/signedTx/inputWeights.ts index 79906e5844..271baea75b 100644 --- a/modules/unspents/test/signedTx/inputWeights.ts +++ b/modules/unspents/test/signedTx/inputWeights.ts @@ -2,7 +2,7 @@ import * as assert from 'assert'; import * as mocha from 'mocha'; import * as utxolib from '@bitgo/utxo-lib'; -import { bip32, BIP32Interface } from '@bitgo/utxo-lib'; +import { bip32, type BIP32Interface } from '@bitgo/utxo-lib'; import { getInputComponentsWeight, getInputWeight, diff --git a/modules/unspents/test/signedTx/txGen.ts b/modules/unspents/test/signedTx/txGen.ts index 5836105fff..2a4155c939 100644 --- a/modules/unspents/test/signedTx/txGen.ts +++ b/modules/unspents/test/signedTx/txGen.ts @@ -1,7 +1,7 @@ /* eslint-disable @typescript-eslint/ban-ts-comment */ import * as utxolib from '@bitgo/utxo-lib'; -import { bip32, BIP32Interface } from '@bitgo/utxo-lib'; +import { bip32, type BIP32Interface } from '@bitgo/utxo-lib'; import _ from 'lodash'; import 'lodash.combinations'; import { Dimensions } from '../../src'; @@ -105,17 +105,29 @@ function signInput( } class TxCombo { + public walletKeys: BIP32Interface[]; + public inputTypes: string[]; + public outputTypes: TestUnspentType[]; + public expectedDims: Readonly; + public signKeys?: BIP32Interface[]; + public inputValue: number; public unspents: IUnspent[]; public inputTx: any; constructor( - public walletKeys: BIP32Interface[], - public inputTypes: string[], - public outputTypes: TestUnspentType[], - public expectedDims: Readonly = Dimensions.ZERO, - public signKeys?: BIP32Interface[], - public inputValue: number = 10 + walletKeys: BIP32Interface[], + inputTypes: string[], + outputTypes: TestUnspentType[], + expectedDims: Readonly = Dimensions.ZERO, + signKeys?: BIP32Interface[], + inputValue = 10 ) { + this.walletKeys = walletKeys; + this.inputTypes = inputTypes; + this.outputTypes = outputTypes; + this.expectedDims = expectedDims; + this.signKeys = signKeys; + this.inputValue = inputValue; this.unspents = inputTypes.map((inputType) => createUnspent( walletKeys.map((key) => key.publicKey), @@ -180,9 +192,12 @@ const runCombinations = ( }; class Histogram { + public map: Map; public total = 0; - constructor(public map: Map = new Map()) {} + constructor(map: Map = new Map()) { + this.map = map; + } public add(size: number): void { this.map.set(size, (this.map.get(size) || 0) + 1); diff --git a/modules/unspents/test/testutils.ts b/modules/unspents/test/testutils.ts index d1afb03109..ee432b472a 100644 --- a/modules/unspents/test/testutils.ts +++ b/modules/unspents/test/testutils.ts @@ -31,7 +31,10 @@ export const UnspentTypePubKeyHash: { export type TestUnspentType = string | UnspentTypeOpReturn; export class UnspentTypeOpReturn { - constructor(public size: number) {} + public size: number; + constructor(size: number) { + this.size = size; + } public toString(): string { return `opReturn(${this.size})`; diff --git a/modules/utxo-bin/test/bip32.util.ts b/modules/utxo-bin/test/bip32.util.ts index b76d3055cd..f6fc1f4044 100644 --- a/modules/utxo-bin/test/bip32.util.ts +++ b/modules/utxo-bin/test/bip32.util.ts @@ -1,7 +1,7 @@ import * as crypto from 'crypto'; import * as utxolib from '@bitgo/utxo-lib'; -import { BIP32Interface } from 'bip32'; +import type { BIP32Interface } from 'bip32'; export type Triple = [T, T, T]; diff --git a/modules/utxo-core/package.json b/modules/utxo-core/package.json index a6f479436e..0c85733f37 100644 --- a/modules/utxo-core/package.json +++ b/modules/utxo-core/package.json @@ -20,14 +20,14 @@ "./testutil/descriptor": "./dist/src/testutil/descriptor/index.js" }, "scripts": { - "build": "yarn tsc --build --incremental --verbose .", + "build": "yarn tsc --build --incremental --verbose . && cpx \"test/descriptor/psbt/fixtures/**/*\" dist/test/descriptor/psbt/fixtures", "fmt": "prettier --write .", "check-fmt": "prettier --check .", "clean": "rm -r ./dist", "lint": "eslint --quiet .", "prepare": "npm run build", "test": "npm run unit-test", - "unit-test": "mocha --recursive test/" + "unit-test": "mocha --recursive \"dist/test/**/*.js\"" }, "author": "BitGo SDK Team ", "license": "MIT", @@ -45,6 +45,7 @@ "publishConfig": { "access": "public" }, + "type": "commonjs", "nyc": { "extension": [ ".ts" @@ -57,5 +58,8 @@ "bip174": "npm:@bitgo-forks/bip174@3.1.0-master.4", "bitcoinjs-message": "npm:@bitgo-forks/bitcoinjs-message@1.0.0-master.3" }, - "gitHead": "18e460ddf02de2dbf13c2aa243478188fb539f0c" + "gitHead": "18e460ddf02de2dbf13c2aa243478188fb539f0c", + "devDependencies": { + "cpx": "^1.5.0" + } } diff --git a/modules/utxo-lib/package.json b/modules/utxo-lib/package.json index 627d4b8297..282357564e 100644 --- a/modules/utxo-lib/package.json +++ b/modules/utxo-lib/package.json @@ -4,7 +4,7 @@ "description": "Client-side Bitcoin JavaScript library", "main": "./dist/src/index.js", "engines": { - "node": ">=10.22.0 <23", + "node": ">=10.22.0 < 25", "npm": ">=3.10.10" }, "keywords": [ @@ -66,7 +66,7 @@ }, "devDependencies": { "@types/fs-extra": "^9.0.12", - "@types/node": "^22.15.29", + "@types/node": "^24.0.4", "axios": "^1.6.0", "debug": "^3.1.0", "fs-extra": "^9.1.0" diff --git a/modules/utxo-lib/src/bitgo/UtxoPsbt.ts b/modules/utxo-lib/src/bitgo/UtxoPsbt.ts index 678bc17b2d..b019c5de8d 100644 --- a/modules/utxo-lib/src/bitgo/UtxoPsbt.ts +++ b/modules/utxo-lib/src/bitgo/UtxoPsbt.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { Psbt as PsbtBase } from 'bip174'; import { Bip32Derivation, diff --git a/modules/utxo-lib/src/bitgo/UtxoTransaction.ts b/modules/utxo-lib/src/bitgo/UtxoTransaction.ts index 650193a500..f1ba21220e 100644 --- a/modules/utxo-lib/src/bitgo/UtxoTransaction.ts +++ b/modules/utxo-lib/src/bitgo/UtxoTransaction.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import * as bitcoinjs from 'bitcoinjs-lib'; import * as varuint from 'varuint-bitcoin'; import { toTNumber } from './tnumber'; diff --git a/modules/utxo-lib/src/bitgo/legacysafe/index.ts b/modules/utxo-lib/src/bitgo/legacysafe/index.ts index ed3d6ec727..ce1fc1d231 100644 --- a/modules/utxo-lib/src/bitgo/legacysafe/index.ts +++ b/modules/utxo-lib/src/bitgo/legacysafe/index.ts @@ -4,7 +4,7 @@ * P2SH address per wallet whose redeem script uses uncompressed public keys. * */ -import * as assert from 'assert'; +import assert from 'assert'; import { ecc as eccLib } from '../../noble_ecc'; import { isBitcoin, Network } from '../../networks'; import { isTriple } from '../types'; diff --git a/modules/utxo-lib/src/bitgo/nonStandardHalfSigned.ts b/modules/utxo-lib/src/bitgo/nonStandardHalfSigned.ts index 303f4c67aa..5774c00927 100644 --- a/modules/utxo-lib/src/bitgo/nonStandardHalfSigned.ts +++ b/modules/utxo-lib/src/bitgo/nonStandardHalfSigned.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import * as opcodes from 'bitcoin-ops'; import { classify, script as bscript, TxInput } from '../'; diff --git a/modules/utxo-lib/src/bitgo/outputScripts.ts b/modules/utxo-lib/src/bitgo/outputScripts.ts index ed011820d3..2a154036ee 100644 --- a/modules/utxo-lib/src/bitgo/outputScripts.ts +++ b/modules/utxo-lib/src/bitgo/outputScripts.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import * as bitcoinjs from 'bitcoinjs-lib'; import { Network, supportsSegwit, supportsTaproot } from '../networks'; diff --git a/modules/utxo-lib/src/bitgo/psbt/fromHalfSigned.ts b/modules/utxo-lib/src/bitgo/psbt/fromHalfSigned.ts index 71a8c98b32..31fe8067cd 100644 --- a/modules/utxo-lib/src/bitgo/psbt/fromHalfSigned.ts +++ b/modules/utxo-lib/src/bitgo/psbt/fromHalfSigned.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { PsbtInputUpdate, PartialSig } from 'bip174/src/lib/interfaces'; import { ecc as eccLib, TxOutput, taproot, getMainnet, networks } from '../..'; import { UtxoTransaction } from '../UtxoTransaction'; diff --git a/modules/utxo-lib/src/bitgo/signature.ts b/modules/utxo-lib/src/bitgo/signature.ts index 100b948302..83f931cecd 100644 --- a/modules/utxo-lib/src/bitgo/signature.ts +++ b/modules/utxo-lib/src/bitgo/signature.ts @@ -1,4 +1,4 @@ -import { BIP32Interface } from 'bip32'; +import type { BIP32Interface } from 'bip32'; import { Transaction, taproot, TxOutput, ScriptSignature } from 'bitcoinjs-lib'; diff --git a/modules/utxo-lib/src/bitgo/wallet/Psbt.ts b/modules/utxo-lib/src/bitgo/wallet/Psbt.ts index 3fc0cb6856..8d232e0489 100644 --- a/modules/utxo-lib/src/bitgo/wallet/Psbt.ts +++ b/modules/utxo-lib/src/bitgo/wallet/Psbt.ts @@ -1,8 +1,8 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { GlobalXpub, PartialSig, PsbtInput, TapScriptSig } from 'bip174/src/lib/interfaces'; import { checkForInput } from 'bip174/src/lib/utils'; -import { BIP32Interface } from 'bip32'; +import type { BIP32Interface } from 'bip32'; import * as bs58check from 'bs58check'; import { UtxoPsbt } from '../UtxoPsbt'; import { UtxoTransaction } from '../UtxoTransaction'; diff --git a/modules/utxo-lib/src/bitgo/wallet/WalletKeys.ts b/modules/utxo-lib/src/bitgo/wallet/WalletKeys.ts index 875750ab78..d66a0aaa0b 100644 --- a/modules/utxo-lib/src/bitgo/wallet/WalletKeys.ts +++ b/modules/utxo-lib/src/bitgo/wallet/WalletKeys.ts @@ -9,7 +9,7 @@ * Since we never use other derivations for utxo address scripts, the classes defined here only * allow exactly one level of derivation. */ -import { BIP32Interface } from 'bip32'; +import type { BIP32Interface } from 'bip32'; import { Triple } from '../types'; diff --git a/modules/utxo-lib/src/bitgo/wallet/WalletOutput.ts b/modules/utxo-lib/src/bitgo/wallet/WalletOutput.ts index acf8c2828e..b452a049ba 100644 --- a/modules/utxo-lib/src/bitgo/wallet/WalletOutput.ts +++ b/modules/utxo-lib/src/bitgo/wallet/WalletOutput.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { Payment, taproot } from 'bitcoinjs-lib'; import { PsbtOutput, PsbtOutputUpdate } from 'bip174/src/lib/interfaces'; diff --git a/modules/utxo-lib/src/bitgo/wallet/WalletUnspentSigner.ts b/modules/utxo-lib/src/bitgo/wallet/WalletUnspentSigner.ts index 82e5cc4d9d..e44eb4393c 100644 --- a/modules/utxo-lib/src/bitgo/wallet/WalletUnspentSigner.ts +++ b/modules/utxo-lib/src/bitgo/wallet/WalletUnspentSigner.ts @@ -1,4 +1,4 @@ -import { BIP32Interface } from 'bip32'; +import type { BIP32Interface } from 'bip32'; import { DerivedWalletKeys, eqPublicKey, RootWalletKeys, WalletKeys } from './WalletKeys'; import { Triple } from '../types'; diff --git a/modules/utxo-lib/src/bitgo/wallet/psbt/PsbtOutputs.ts b/modules/utxo-lib/src/bitgo/wallet/psbt/PsbtOutputs.ts index 92d34dfd69..4f92f68839 100644 --- a/modules/utxo-lib/src/bitgo/wallet/psbt/PsbtOutputs.ts +++ b/modules/utxo-lib/src/bitgo/wallet/psbt/PsbtOutputs.ts @@ -5,7 +5,7 @@ import { isBufferArray, Triple } from '../../types'; import { createOutputScript2of3, scriptTypes2Of3 } from '../../outputScripts'; import { UtxoPsbt } from '../../UtxoPsbt'; -import { BIP32Interface } from 'bip32'; +import type { BIP32Interface } from 'bip32'; import { checkForOutput } from 'bip174/src/lib/utils'; import { PsbtOutput } from 'bip174/src/lib/interfaces'; import { getSortedRootNodes } from './RootNodes'; diff --git a/modules/utxo-lib/src/bitgo/wallet/psbt/RootNodes.ts b/modules/utxo-lib/src/bitgo/wallet/psbt/RootNodes.ts index 46e857f8fa..3f02b147e0 100644 --- a/modules/utxo-lib/src/bitgo/wallet/psbt/RootNodes.ts +++ b/modules/utxo-lib/src/bitgo/wallet/psbt/RootNodes.ts @@ -2,7 +2,7 @@ * Contains helper methods for getting and sorting root nodes from a PSBT. */ -import * as assert from 'assert'; +import assert from 'assert'; import * as bs58check from 'bs58check'; import { UtxoPsbt } from '../../UtxoPsbt'; diff --git a/modules/utxo-lib/src/bitgo/zcash/address.ts b/modules/utxo-lib/src/bitgo/zcash/address.ts index 4943d4cf60..6f55be9bde 100644 --- a/modules/utxo-lib/src/bitgo/zcash/address.ts +++ b/modules/utxo-lib/src/bitgo/zcash/address.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { payments } from 'bitcoinjs-lib'; import * as types from 'bitcoinjs-lib/src/types'; import { Base58CheckResult } from 'bitcoinjs-lib/src/address'; diff --git a/modules/utxo-lib/src/noble_ecc.ts b/modules/utxo-lib/src/noble_ecc.ts index 7d10bf95f5..cecef60942 100644 --- a/modules/utxo-lib/src/noble_ecc.ts +++ b/modules/utxo-lib/src/noble_ecc.ts @@ -1,5 +1,5 @@ -import * as createHash from 'create-hash'; -import * as createHmac from 'create-hmac'; +import createHash from 'create-hash'; +import createHmac from 'create-hmac'; import { ECPairAPI, ECPairFactory, ECPairInterface } from 'ecpair'; import * as necc from '@noble/secp256k1'; import { BIP32API, BIP32Factory, BIP32Interface } from 'bip32'; diff --git a/modules/utxo-lib/src/taproot.ts b/modules/utxo-lib/src/taproot.ts index 7d6de52249..2552970e5a 100644 --- a/modules/utxo-lib/src/taproot.ts +++ b/modules/utxo-lib/src/taproot.ts @@ -3,7 +3,7 @@ // https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki import { TapTree as PsbtTapTree, TapLeaf as PsbtTapLeaf } from 'bip174/src/lib/interfaces'; -import assert = require('assert'); +import assert from 'assert'; import FastPriorityQueue = require('fastpriorityqueue'); import { script as bscript, crypto as bcrypto, payments as bpayments } from 'bitcoinjs-lib'; import { ecc as eccLib } from './noble_ecc'; diff --git a/modules/utxo-lib/src/testutil/mock.ts b/modules/utxo-lib/src/testutil/mock.ts index 4cb19ef65f..9960e595a5 100644 --- a/modules/utxo-lib/src/testutil/mock.ts +++ b/modules/utxo-lib/src/testutil/mock.ts @@ -1,5 +1,5 @@ -import * as assert from 'assert'; -import { BIP32Interface } from 'bip32'; +import assert from 'assert'; +import type { BIP32Interface } from 'bip32'; import * as noble from '@noble/secp256k1'; import * as utxolib from '..'; import { getMainnet, Network, networks } from '../networks'; diff --git a/modules/utxo-lib/src/testutil/psbt.ts b/modules/utxo-lib/src/testutil/psbt.ts index 6d7316efd8..f13e04c3d4 100644 --- a/modules/utxo-lib/src/testutil/psbt.ts +++ b/modules/utxo-lib/src/testutil/psbt.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { createOutputScriptP2shP2pk, diff --git a/modules/utxo-lib/src/testutil/transaction.ts b/modules/utxo-lib/src/testutil/transaction.ts index 7bbd448f43..e4a34e8fca 100644 --- a/modules/utxo-lib/src/testutil/transaction.ts +++ b/modules/utxo-lib/src/testutil/transaction.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { ScriptType, ScriptType2Of3, scriptTypeP2shP2pk, scriptTypes2Of3 } from '../bitgo/outputScripts'; import { diff --git a/modules/utxo-lib/test/address/address.ts b/modules/utxo-lib/test/address/address.ts index 9f16d7b677..c276010a7b 100644 --- a/modules/utxo-lib/test/address/address.ts +++ b/modules/utxo-lib/test/address/address.ts @@ -1,5 +1,5 @@ import * as path from 'path'; -import * as assert from 'assert'; +import assert from 'assert'; import * as utxolib from '../../src'; import { getNetworkList, getNetworkName } from '../../src'; import { getKeyTriple } from '../../src/testutil'; diff --git a/modules/utxo-lib/test/address/addressFormat.ts b/modules/utxo-lib/test/address/addressFormat.ts index c6710b1721..c62806665b 100644 --- a/modules/utxo-lib/test/address/addressFormat.ts +++ b/modules/utxo-lib/test/address/addressFormat.ts @@ -1,7 +1,7 @@ /** * Contains third-party test fixtures for nonstandard address formats */ -import * as assert from 'assert'; +import assert from 'assert'; import { getMainnet, getNetworkList, getNetworkName, Network, networks } from '../../src'; import { fromOutputScript } from '../../src/address'; import { diff --git a/modules/utxo-lib/test/address/bitcoincash/cashaddr.ts b/modules/utxo-lib/test/address/bitcoincash/cashaddr.ts index 10b1fc0dee..c2514ba9aa 100644 --- a/modules/utxo-lib/test/address/bitcoincash/cashaddr.ts +++ b/modules/utxo-lib/test/address/bitcoincash/cashaddr.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { getTestVectorsBitcoinCashAddressTranslations } from './fixtures'; import { toOutputScriptFromCashAddress } from '../../../src/bitgo/bitcoincash/address'; diff --git a/modules/utxo-lib/test/address/ecash/ecashaddr.ts b/modules/utxo-lib/test/address/ecash/ecashaddr.ts index 7a024e9e21..aa4894cf49 100644 --- a/modules/utxo-lib/test/address/ecash/ecashaddr.ts +++ b/modules/utxo-lib/test/address/ecash/ecashaddr.ts @@ -1,6 +1,6 @@ import { fromOutputScriptWithFormat, toOutputScriptWithFormat } from '../../../src/addressFormat'; import { networks } from '../../../src/networks'; -import * as assert from 'assert'; +import assert from 'assert'; // Addresses used from https://www.npmjs.com/package/ecashaddrjs const ecashAddress = 'ecash:qpadrekpz6gjd8w0zfedmtqyld0r2j4qmuthccqd8d', diff --git a/modules/utxo-lib/test/bitgo/Unspent.ts b/modules/utxo-lib/test/bitgo/Unspent.ts index 72ad86becd..3cab17a0bf 100644 --- a/modules/utxo-lib/test/bitgo/Unspent.ts +++ b/modules/utxo-lib/test/bitgo/Unspent.ts @@ -1,4 +1,4 @@ -import assert = require('assert'); +import assert from 'assert'; import { unspentSum } from '../../src/bitgo'; function mockUnspent(value: TNumber) { diff --git a/modules/utxo-lib/test/bitgo/legacysafe/index.ts b/modules/utxo-lib/test/bitgo/legacysafe/index.ts index 6ab3c3a602..bcc7f195fe 100644 --- a/modules/utxo-lib/test/bitgo/legacysafe/index.ts +++ b/modules/utxo-lib/test/bitgo/legacysafe/index.ts @@ -1,6 +1,6 @@ import { toUncompressedPub, toCompressedPub, createLegacySafeOutputScript2of3 } from '../../../src/bitgo/legacysafe'; import { getKey, getKeyTriple, getUncompressedKeyTriple } from '../../../src/testutil'; -import * as assert from 'assert'; +import assert from 'assert'; import { networks } from '../../../src'; import { fromOutputScript } from '../../../src/address'; diff --git a/modules/utxo-lib/test/bitgo/litecoin/mwebBehavior.ts b/modules/utxo-lib/test/bitgo/litecoin/mwebBehavior.ts index 533ac132a7..253f5fce5e 100644 --- a/modules/utxo-lib/test/bitgo/litecoin/mwebBehavior.ts +++ b/modules/utxo-lib/test/bitgo/litecoin/mwebBehavior.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import * as path from 'path'; import * as fs from 'fs-extra'; diff --git a/modules/utxo-lib/test/bitgo/nonStandardHalfSigned.ts b/modules/utxo-lib/test/bitgo/nonStandardHalfSigned.ts index 36ae39df1b..48b6be3c10 100644 --- a/modules/utxo-lib/test/bitgo/nonStandardHalfSigned.ts +++ b/modules/utxo-lib/test/bitgo/nonStandardHalfSigned.ts @@ -1,6 +1,6 @@ import * as path from 'path'; import * as fs from 'fs-extra'; -import * as assert from 'assert'; +import assert from 'assert'; import { networks, Network, getNetworkName } from '../../src'; import { createTransactionFromBuffer } from '../../src/bitgo'; diff --git a/modules/utxo-lib/test/bitgo/outputScripts.ts b/modules/utxo-lib/test/bitgo/outputScripts.ts index a0e26f0569..e245614e45 100644 --- a/modules/utxo-lib/test/bitgo/outputScripts.ts +++ b/modules/utxo-lib/test/bitgo/outputScripts.ts @@ -1,5 +1,5 @@ import { networks } from 'bitcoinjs-lib'; -import * as assert from 'assert'; +import assert from 'assert'; import { createOutputScript2of3, diff --git a/modules/utxo-lib/test/bitgo/psbt/Musig2.ts b/modules/utxo-lib/test/bitgo/psbt/Musig2.ts index f162ed6e6b..c4977a8997 100644 --- a/modules/utxo-lib/test/bitgo/psbt/Musig2.ts +++ b/modules/utxo-lib/test/bitgo/psbt/Musig2.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { createPsbtFromHex, diff --git a/modules/utxo-lib/test/bitgo/psbt/Musig2Util.ts b/modules/utxo-lib/test/bitgo/psbt/Musig2Util.ts index 591c365379..548392b096 100644 --- a/modules/utxo-lib/test/bitgo/psbt/Musig2Util.ts +++ b/modules/utxo-lib/test/bitgo/psbt/Musig2Util.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { addReplayProtectionUnspentToPsbt, @@ -33,7 +33,7 @@ import { } from '../../../src/bitgo/outputScripts'; import { mockWalletUnspent, replayProtectionKeyPair } from '../../../src/testutil'; import { bip32, networks } from '../../../src'; -import { BIP32Interface } from 'bip32'; +import type { BIP32Interface } from 'bip32'; import { isPsbtInputFinalized } from '../../../src/bitgo/PsbtUtil'; export const network = networks.bitcoin; diff --git a/modules/utxo-lib/test/bitgo/psbt/ProprietaryKeyVals.ts b/modules/utxo-lib/test/bitgo/psbt/ProprietaryKeyVals.ts index 6cb1ebc3ae..92e721ae18 100644 --- a/modules/utxo-lib/test/bitgo/psbt/ProprietaryKeyVals.ts +++ b/modules/utxo-lib/test/bitgo/psbt/ProprietaryKeyVals.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { constructPsbt } from '../../../src/testutil'; import { bip32, BIP32Interface, networks, testutil } from '../../../src'; import { RootWalletKeys, PSBT_PROPRIETARY_IDENTIFIER } from '../../../src/bitgo'; diff --git a/modules/utxo-lib/test/bitgo/psbt/Psbt.ts b/modules/utxo-lib/test/bitgo/psbt/Psbt.ts index dcc93a2341..cb538a2c33 100644 --- a/modules/utxo-lib/test/bitgo/psbt/Psbt.ts +++ b/modules/utxo-lib/test/bitgo/psbt/Psbt.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { Network, getNetworkName, networks, getNetworkList, testutil, isMainnet, Transaction } from '../../../src'; import { diff --git a/modules/utxo-lib/test/bitgo/psbt/PsbtOutputs.ts b/modules/utxo-lib/test/bitgo/psbt/PsbtOutputs.ts index e878e59a23..3ed4f2bd09 100644 --- a/modules/utxo-lib/test/bitgo/psbt/PsbtOutputs.ts +++ b/modules/utxo-lib/test/bitgo/psbt/PsbtOutputs.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import * as bs58check from 'bs58check'; diff --git a/modules/utxo-lib/test/bitgo/psbt/SignVerifyPsbtAndTx.ts b/modules/utxo-lib/test/bitgo/psbt/SignVerifyPsbtAndTx.ts index dd238836c4..d271350c07 100644 --- a/modules/utxo-lib/test/bitgo/psbt/SignVerifyPsbtAndTx.ts +++ b/modules/utxo-lib/test/bitgo/psbt/SignVerifyPsbtAndTx.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { addXpubsToPsbt, @@ -10,7 +10,7 @@ import { Triple, UtxoTransaction, } from '../../../src/bitgo'; -import { BIP32Interface } from 'bip32'; +import type { BIP32Interface } from 'bip32'; import { constructPsbt, constructTxnBuilder, diff --git a/modules/utxo-lib/test/bitgo/psbt/ZcashPsbt.ts b/modules/utxo-lib/test/bitgo/psbt/ZcashPsbt.ts index 6d2d91a891..71840c7764 100644 --- a/modules/utxo-lib/test/bitgo/psbt/ZcashPsbt.ts +++ b/modules/utxo-lib/test/bitgo/psbt/ZcashPsbt.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { networks } from '../../../src'; import * as utxolib from '../../../src'; diff --git a/modules/utxo-lib/test/bitgo/psbt/fromHalfSigned.ts b/modules/utxo-lib/test/bitgo/psbt/fromHalfSigned.ts index a9bfa9cc02..cd6d08b325 100644 --- a/modules/utxo-lib/test/bitgo/psbt/fromHalfSigned.ts +++ b/modules/utxo-lib/test/bitgo/psbt/fromHalfSigned.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { describe, it } from 'mocha'; import { BIP32Interface, getNetworkName, Network, networks } from '../../../src'; diff --git a/modules/utxo-lib/test/bitgo/psbt/psbtUtil.ts b/modules/utxo-lib/test/bitgo/psbt/psbtUtil.ts index 9bb323b8f8..8ba2785a16 100644 --- a/modules/utxo-lib/test/bitgo/psbt/psbtUtil.ts +++ b/modules/utxo-lib/test/bitgo/psbt/psbtUtil.ts @@ -29,7 +29,7 @@ import { ParsedPsbtTaproot, } from '../../../src/bitgo'; import { parsePsbtInput, signWalletPsbt } from '../../../src/bitgo/wallet/Psbt'; -import * as assert from 'assert'; +import assert from 'assert'; import { SignatureTargetType } from './Psbt'; import { Network } from '../../../src'; diff --git a/modules/utxo-lib/test/bitgo/psbt/signingAndValidation.ts b/modules/utxo-lib/test/bitgo/psbt/signingAndValidation.ts index 6042fa5aac..f35fcac2df 100644 --- a/modules/utxo-lib/test/bitgo/psbt/signingAndValidation.ts +++ b/modules/utxo-lib/test/bitgo/psbt/signingAndValidation.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { describe, it } from 'mocha'; import * as bs58check from 'bs58check'; diff --git a/modules/utxo-lib/test/bitgo/psbt/toPsbtBuffer.ts b/modules/utxo-lib/test/bitgo/psbt/toPsbtBuffer.ts index 03baaff220..60b8bf8fbb 100644 --- a/modules/utxo-lib/test/bitgo/psbt/toPsbtBuffer.ts +++ b/modules/utxo-lib/test/bitgo/psbt/toPsbtBuffer.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { toPsbtBuffer } from '../../../src/bitgo'; diff --git a/modules/utxo-lib/test/bitgo/signature.ts b/modules/utxo-lib/test/bitgo/signature.ts index 5cba5b2e0b..fbe698135f 100644 --- a/modules/utxo-lib/test/bitgo/signature.ts +++ b/modules/utxo-lib/test/bitgo/signature.ts @@ -1,5 +1,5 @@ -import * as assert from 'assert'; -import { BIP32Interface } from 'bip32'; +import assert from 'assert'; +import type { BIP32Interface } from 'bip32'; import { script as bscript, classify, TxOutput } from '../../src'; import { getKeyName } from '../../src/testutil'; diff --git a/modules/utxo-lib/test/bitgo/tnumber.ts b/modules/utxo-lib/test/bitgo/tnumber.ts index 3757730189..1b15c94a9c 100644 --- a/modules/utxo-lib/test/bitgo/tnumber.ts +++ b/modules/utxo-lib/test/bitgo/tnumber.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { toTNumber } from '../../src/bitgo'; const values = [ diff --git a/modules/utxo-lib/test/bitgo/wallet/ScriptId.ts b/modules/utxo-lib/test/bitgo/wallet/ScriptId.ts index b3b7228482..f62d635f74 100644 --- a/modules/utxo-lib/test/bitgo/wallet/ScriptId.ts +++ b/modules/utxo-lib/test/bitgo/wallet/ScriptId.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { getScriptIdFromPath } from '../../../src/bitgo/wallet/ScriptId'; diff --git a/modules/utxo-lib/test/bitgo/wallet/WalletKeys.ts b/modules/utxo-lib/test/bitgo/wallet/WalletKeys.ts index 226feb8880..c1a8e7cf08 100644 --- a/modules/utxo-lib/test/bitgo/wallet/WalletKeys.ts +++ b/modules/utxo-lib/test/bitgo/wallet/WalletKeys.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { DerivedWalletKeys, RootWalletKeys, WalletKeys } from '../../../src/bitgo'; import { getDefaultWalletKeys } from '../../../src/testutil'; diff --git a/modules/utxo-lib/test/bitgo/wallet/WalletOutput.ts b/modules/utxo-lib/test/bitgo/wallet/WalletOutput.ts index 8219922369..bbb912b226 100644 --- a/modules/utxo-lib/test/bitgo/wallet/WalletOutput.ts +++ b/modules/utxo-lib/test/bitgo/wallet/WalletOutput.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { getScriptIdFromOutput, getPsbtBip32DerivationOutputUpdate } from '../../../src/bitgo/wallet/WalletOutput'; import { getDefaultWalletKeys } from '../../../src/testutil/keys'; diff --git a/modules/utxo-lib/test/bitgo/wallet/WalletUnspent.ts b/modules/utxo-lib/test/bitgo/wallet/WalletUnspent.ts index fc43e51ef0..dfc1769d51 100644 --- a/modules/utxo-lib/test/bitgo/wallet/WalletUnspent.ts +++ b/modules/utxo-lib/test/bitgo/wallet/WalletUnspent.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { Transaction, networks } from '../../../src'; import { diff --git a/modules/utxo-lib/test/bitgo/wallet/WalletUnspentSigner.ts b/modules/utxo-lib/test/bitgo/wallet/WalletUnspentSigner.ts index 6a67bc06be..8d930888e8 100644 --- a/modules/utxo-lib/test/bitgo/wallet/WalletUnspentSigner.ts +++ b/modules/utxo-lib/test/bitgo/wallet/WalletUnspentSigner.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { WalletUnspentSigner } from '../../../src/bitgo'; import { getDefaultWalletKeys } from '../../../src/testutil'; diff --git a/modules/utxo-lib/test/bitgo/wallet/chains.ts b/modules/utxo-lib/test/bitgo/wallet/chains.ts index 0e08406155..34b642b4d5 100644 --- a/modules/utxo-lib/test/bitgo/wallet/chains.ts +++ b/modules/utxo-lib/test/bitgo/wallet/chains.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { ChainCode, chainCodes, diff --git a/modules/utxo-lib/test/bitgo/zcash/hashZip0244.ts b/modules/utxo-lib/test/bitgo/zcash/hashZip0244.ts index d22f324b97..0b81240af8 100644 --- a/modules/utxo-lib/test/bitgo/zcash/hashZip0244.ts +++ b/modules/utxo-lib/test/bitgo/zcash/hashZip0244.ts @@ -1,5 +1,5 @@ -import * as assert from 'assert'; -import * as vectors from './fixtures/vectorsZip0244.json'; +import assert from 'assert'; +import vectors from './fixtures/vectorsZip0244.json'; import { UnsupportedTransactionError, ZcashTransaction } from '../../../src/bitgo'; import { Transaction, networks } from '../../../src'; diff --git a/modules/utxo-lib/test/classify.spec.ts b/modules/utxo-lib/test/classify.spec.ts index 2d0053b3bd..3b994ffce0 100644 --- a/modules/utxo-lib/test/classify.spec.ts +++ b/modules/utxo-lib/test/classify.spec.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { describe, it } from 'mocha'; import * as classify from '../src/classify'; import { script as bscript } from '../src/'; diff --git a/modules/utxo-lib/test/fixture.util.ts b/modules/utxo-lib/test/fixture.util.ts index f9773d207b..2e6b324401 100644 --- a/modules/utxo-lib/test/fixture.util.ts +++ b/modules/utxo-lib/test/fixture.util.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import * as mpath from 'path'; import * as fs from 'fs-extra'; diff --git a/modules/utxo-lib/test/fixtures_thirdparty/parse.ts b/modules/utxo-lib/test/fixtures_thirdparty/parse.ts index 9a9d20657c..05f346651f 100644 --- a/modules/utxo-lib/test/fixtures_thirdparty/parse.ts +++ b/modules/utxo-lib/test/fixtures_thirdparty/parse.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { describe } from 'mocha'; import { getNetworkList, getNetworkName, isBitcoinGold, isMainnet, isZcash, isDogecoin } from '../../src/networks'; import { diff --git a/modules/utxo-lib/test/integration_local_rpc/generate/RpcClient.ts b/modules/utxo-lib/test/integration_local_rpc/generate/RpcClient.ts index 392311516a..19c268603f 100644 --- a/modules/utxo-lib/test/integration_local_rpc/generate/RpcClient.ts +++ b/modules/utxo-lib/test/integration_local_rpc/generate/RpcClient.ts @@ -1,11 +1,11 @@ -import * as assert from 'assert'; +import assert from 'assert'; import axios, { AxiosError } from 'axios'; import buildDebug from 'debug'; import { Network, getMainnet, getNetworkName, isZcash } from '../../../src/networks'; import { RpcTransaction } from './RpcTypes'; -const utxolib = require('../../../src'); +import * as utxolib from '../../../src'; const debug = buildDebug('RpcClient'); @@ -16,8 +16,11 @@ function sleep(millis: number): Promise { } export class RpcError extends Error { - constructor(public rpcError: { code: number; message: string }) { + public rpcError: { code: number; message: string }; + + constructor(rpcError: { code: number; message: string }) { super(`RPC error: ${rpcError.message} (code=${rpcError.code})`); + this.rpcError = rpcError; } static isRpcErrorWithCode(e: Error, code: number): boolean { @@ -30,9 +33,16 @@ type NetworkInfo = { subversion: string }; const BITCOIN_CORE_22_99 = '/Satoshi:22.99.0/'; export class RpcClient { + protected network: Network; + protected url: string; + protected networkInfo?: NetworkInfo; id = 0; - constructor(protected network: Network, protected url: string, protected networkInfo?: NetworkInfo) {} + constructor(network: Network, url: string, networkInfo?: NetworkInfo) { + this.network = network; + this.url = url; + this.networkInfo = networkInfo; + } /** * Poor man's Bluebird.map(arr, f, { concurrency }) @@ -198,8 +208,10 @@ export class RpcClient { } export class RpcClientWithWallet extends RpcClient { - constructor(network: Network, url: string, networkInfo: NetworkInfo, private walletName?: string) { + private walletName?: string; + constructor(network: Network, url: string, networkInfo: NetworkInfo, walletName?: string) { super(network, url, networkInfo); + this.walletName = walletName; } protected getUrl(): string { diff --git a/modules/utxo-lib/test/integration_local_rpc/generate/fixtures.ts b/modules/utxo-lib/test/integration_local_rpc/generate/fixtures.ts index e640946d30..995554635a 100644 --- a/modules/utxo-lib/test/integration_local_rpc/generate/fixtures.ts +++ b/modules/utxo-lib/test/integration_local_rpc/generate/fixtures.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import * as fs from 'fs-extra'; import * as path from 'path'; diff --git a/modules/utxo-lib/test/integration_local_rpc/generate/main.ts b/modules/utxo-lib/test/integration_local_rpc/generate/main.ts index b84ab516d0..973cf38243 100644 --- a/modules/utxo-lib/test/integration_local_rpc/generate/main.ts +++ b/modules/utxo-lib/test/integration_local_rpc/generate/main.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; const utxolib = require('../../../src'); diff --git a/modules/utxo-lib/test/integration_local_rpc/generate/outputScripts.util.ts b/modules/utxo-lib/test/integration_local_rpc/generate/outputScripts.util.ts index 56188bfc83..d2bac2d3c8 100644 --- a/modules/utxo-lib/test/integration_local_rpc/generate/outputScripts.util.ts +++ b/modules/utxo-lib/test/integration_local_rpc/generate/outputScripts.util.ts @@ -1,4 +1,4 @@ -import { BIP32Interface } from 'bip32'; +import type { BIP32Interface } from 'bip32'; import { Transaction, TxOutput } from 'bitcoinjs-lib'; import * as utxolib from '../../../src'; import { diff --git a/modules/utxo-lib/test/integration_local_rpc/parse.ts b/modules/utxo-lib/test/integration_local_rpc/parse.ts index 05dbd3b3b5..de6d5cde00 100644 --- a/modules/utxo-lib/test/integration_local_rpc/parse.ts +++ b/modules/utxo-lib/test/integration_local_rpc/parse.ts @@ -1,6 +1,6 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { describe, it } from 'mocha'; -import { BIP32Interface } from 'bip32'; +import type { BIP32Interface } from 'bip32'; import { isTestnet, TxOutput, getNetworkList, getNetworkName, networks } from '../../src'; import { getDefaultCosigner } from '../../src/testutil'; diff --git a/modules/utxo-lib/test/integration_local_rpc/parseDashEvo.ts b/modules/utxo-lib/test/integration_local_rpc/parseDashEvo.ts index 102b90cff9..6d1e545f15 100644 --- a/modules/utxo-lib/test/integration_local_rpc/parseDashEvo.ts +++ b/modules/utxo-lib/test/integration_local_rpc/parseDashEvo.ts @@ -10,7 +10,7 @@ However the generated fixtures have the same format as the RPC responses so we w */ import * as fs from 'fs-extra'; -import * as assert from 'assert'; +import assert from 'assert'; import { RpcTransaction } from './generate/RpcTypes'; import { normalizeParsedTransaction, normalizeRpcTransaction } from './compare'; diff --git a/modules/utxo-lib/test/networks.ts b/modules/utxo-lib/test/networks.ts index 3147ed3f41..cfa2918762 100644 --- a/modules/utxo-lib/test/networks.ts +++ b/modules/utxo-lib/test/networks.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { getMainnet, getNetworkList, diff --git a/modules/utxo-lib/test/payments.spec.ts b/modules/utxo-lib/test/payments.spec.ts index c0761066e3..19c8143e1d 100644 --- a/modules/utxo-lib/test/payments.spec.ts +++ b/modules/utxo-lib/test/payments.spec.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { describe, it } from 'mocha'; import { ecc } from '../src'; import { PaymentCreator } from 'bitcoinjs-lib'; diff --git a/modules/utxo-lib/test/taproot.spec.ts b/modules/utxo-lib/test/taproot.spec.ts index f320e1c6cd..3760c82214 100644 --- a/modules/utxo-lib/test/taproot.spec.ts +++ b/modules/utxo-lib/test/taproot.spec.ts @@ -1,4 +1,4 @@ -import * as assert from 'assert'; +import assert from 'assert'; import { ECPairAPI, ECPairFactory } from 'ecpair'; import { ecc, taproot } from '../src'; import { createTaprootOutputScript, getTaprootOutputKey } from '../src/taproot'; diff --git a/modules/utxo-lib/test/transaction_builder.spec.ts b/modules/utxo-lib/test/transaction_builder.spec.ts index 8d3e375a74..d93c92a27a 100644 --- a/modules/utxo-lib/test/transaction_builder.spec.ts +++ b/modules/utxo-lib/test/transaction_builder.spec.ts @@ -1,5 +1,5 @@ import * as bitcoinjs from 'bitcoinjs-lib'; -import * as assert from 'assert'; +import assert from 'assert'; import { beforeEach, describe, it } from 'mocha'; import { address as baddress, diff --git a/modules/utxo-lib/test/transaction_util.ts b/modules/utxo-lib/test/transaction_util.ts index 27b86526d8..3ea884ada4 100644 --- a/modules/utxo-lib/test/transaction_util.ts +++ b/modules/utxo-lib/test/transaction_util.ts @@ -1,5 +1,5 @@ -import { BIP32Interface } from 'bip32'; -import * as assert from 'assert'; +import type { BIP32Interface } from 'bip32'; +import assert from 'assert'; import { TxOutput } from 'bitcoinjs-lib'; import { networks, Network } from '../src'; diff --git a/modules/utxo-lib/tsconfig.json b/modules/utxo-lib/tsconfig.json index ae3975a410..3b98dfb86e 100644 --- a/modules/utxo-lib/tsconfig.json +++ b/modules/utxo-lib/tsconfig.json @@ -3,7 +3,7 @@ "compilerOptions": { "outDir": "./dist", "rootDir": ".", - "esModuleInterop": false, + "esModuleInterop": true, "typeRoots": ["../../types", "./node_modules/@types", "../../node_modules/@types"], "resolveJsonModule": true }, diff --git a/modules/utxo-staking/package.json b/modules/utxo-staking/package.json index c02c1ba368..7df5e62d0b 100644 --- a/modules/utxo-staking/package.json +++ b/modules/utxo-staking/package.json @@ -8,19 +8,19 @@ "dist/src" ], "scripts": { - "build": "yarn tsc --build --incremental --verbose .", + "build": "yarn tsc --build --incremental --verbose . && cpx \"test/fixtures/**/*\" dist/test/fixtures", "fmt": "prettier --write .", "check-fmt": "prettier --check .", "clean": "rm -r ./dist", "lint": "eslint --quiet .", "prepare": "npm run build", "coverage": "nyc -- npm run unit-test", - "unit-test": "mocha --recursive test" + "unit-test": "mocha --recursive \"dist/test/**/*.js\"" }, "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", @@ -41,6 +41,7 @@ ".ts" ] }, + "type": "commonjs", "dependencies": { "@babylonlabs-io/babylon-proto-ts": "1.0.0", "@bitgo/babylonlabs-io-btc-staking-ts": "^2.4.0", @@ -55,6 +56,7 @@ "io-ts-types": "^0.5.19" }, "devDependencies": { + "cpx": "^1.5.0", "yargs": "^17.7.2" } } diff --git a/modules/utxo-staking/test/unit/babylon/key.utils.ts b/modules/utxo-staking/test/unit/babylon/key.utils.ts index d7d665e161..0a1dedeea3 100644 --- a/modules/utxo-staking/test/unit/babylon/key.utils.ts +++ b/modules/utxo-staking/test/unit/babylon/key.utils.ts @@ -1,7 +1,7 @@ import assert from 'assert'; import * as utxolib from '@bitgo/utxo-lib'; -import { ECPairInterface } from '@bitgo/utxo-lib'; +import type { ECPairInterface } from '@bitgo/utxo-lib'; import { getKey } from '@bitgo/utxo-core/testutil'; export function getECKey(seed: string): ECPairInterface { diff --git a/modules/utxo-staking/test/unit/babylon/transactions.ts b/modules/utxo-staking/test/unit/babylon/transactions.ts index 972652fb52..0aacf6e108 100644 --- a/modules/utxo-staking/test/unit/babylon/transactions.ts +++ b/modules/utxo-staking/test/unit/babylon/transactions.ts @@ -3,7 +3,7 @@ import assert from 'assert'; import * as vendor from '@bitgo/babylonlabs-io-btc-staking-ts'; import * as bitcoinjslib from 'bitcoinjs-lib'; import * as utxolib from '@bitgo/utxo-lib'; -import { ECPairInterface } from '@bitgo/utxo-lib'; +import type { ECPairInterface } from '@bitgo/utxo-lib'; import { ast, Descriptor, Miniscript } from '@bitgo/wasm-miniscript'; import { createAddressFromDescriptor, diff --git a/modules/utxo-staking/test/unit/babylon/vendor.utils.ts b/modules/utxo-staking/test/unit/babylon/vendor.utils.ts index 6929feec4b..ce1d03811e 100644 --- a/modules/utxo-staking/test/unit/babylon/vendor.utils.ts +++ b/modules/utxo-staking/test/unit/babylon/vendor.utils.ts @@ -1,5 +1,5 @@ import * as bitcoinjslib from 'bitcoinjs-lib'; -import { ECPairInterface } from '@bitgo/utxo-lib'; +import type { ECPairInterface } from '@bitgo/utxo-lib'; import * as vendor from '@bitgo/babylonlabs-io-btc-staking-ts'; import * as babylonProtobuf from '@babylonlabs-io/babylon-proto-ts'; import { toBech32 } from 'bitcoinjs-lib/src/address'; diff --git a/package.json b/package.json index 60c561a40d..0f70123d68 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "@commitlint/config-conventional": "^19.2.2", "@types/lodash": "^4.14.151", "@types/mocha": "^9.1.0", - "@types/node": "^22.15.29", + "@types/node": "^24.0.4", "@types/semver": "^7.3.12", "@types/sinon": "^7.0.6", "@typescript-eslint/eslint-plugin": "^4.23.0", diff --git a/scripts/sdk-coin-generator/template/base/package.json b/scripts/sdk-coin-generator/template/base/package.json index 3db019eb25..7afd118aa8 100644 --- a/scripts/sdk-coin-generator/template/base/package.json +++ b/scripts/sdk-coin-generator/template/base/package.json @@ -18,7 +18,7 @@ "author": "BitGo SDK Team ", "license": "MIT", "engines": { - "node": ">=18 <23" + "node": ">=18 < 25" }, "repository": { "type": "git", diff --git a/yarn.lock b/yarn.lock index 89e248277f..803102b72a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5879,6 +5879,13 @@ dependencies: undici-types "~6.21.0" +"@types/node@^24.0.4": + version "24.0.4" + resolved "https://registry.npmjs.org/@types/node/-/node-24.0.4.tgz#dbae889912bda33a7f57669fb8587c1a56bc0c1f" + integrity sha512-ulyqAkrhnuNq9pB76DRBTkcS6YsmDALy6Ua63V8OhrOBgbcYt6IOdzpw5P1+dyRIyMerzLkeYWBeOXPpA9GMAA== + dependencies: + undici-types "~7.8.0" + "@types/normalize-package-data@^2.4.0": version "2.4.4" resolved "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz#56e2cc26c397c038fab0e3a917a12d5c5909e901" @@ -6801,6 +6808,14 @@ ansi-styles@^6.0.0, ansi-styles@^6.1.0: resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5" integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== +anymatch@^1.3.0: + version "1.3.2" + resolved "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz#553dcb8f91e3c889845dfdba34c77721b90b9d7a" + integrity sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA== + dependencies: + micromatch "^2.1.5" + normalize-path "^2.0.0" + anymatch@^3.0.0, anymatch@~3.1.2: version "3.1.3" resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" @@ -6863,6 +6878,28 @@ aria-query@5.3.0: dependencies: dequal "^2.0.3" +arr-diff@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" + integrity sha512-dtXTVMkh6VkEEA7OhXnN1Ecb8aAGFdZ1LFxtOCoqj4qkyOJMt7+qs6Ahdy6p/NQCPYsRSXXivhSB/J5E9jmYKA== + dependencies: + arr-flatten "^1.0.1" + +arr-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" + integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== + +arr-flatten@^1.0.1, arr-flatten@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== + +arr-union@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" + integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== + array-buffer-byte-length@^1.0.1, array-buffer-byte-length@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz#384d12a37295aec3769ab022ad323a18a51ccf8b" @@ -6920,6 +6957,16 @@ array-uniq@^1.0.1: resolved "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" integrity sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q== +array-unique@^0.2.1: + version "0.2.1" + resolved "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" + integrity sha512-G2n5bG5fSUCpnsXz4+8FUkYsGPkNfLn9YvS66U5qbTIXI2Ynnlo4Bi42bWv+omKUCqz+ejzfClwne0alJWJPhg== + +array-unique@^0.3.2: + version "0.3.2" + resolved "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" + integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== + array.prototype.findlastindex@^1.2.5: version "1.2.6" resolved "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz#cfa1065c81dcb64e34557c9b81d012f6a421c564" @@ -7079,6 +7126,11 @@ assertion-error@^1.1.0: resolved "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz#e60b6b0e8f301bd97e5375215bda406c85118c0b" integrity sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw== +assign-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" + integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== + ast-types@^0.13.4: version "0.13.4" resolved "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz#ee0d77b343263965ecc3fb62da16e7222b2b6782" @@ -7091,6 +7143,11 @@ astral-regex@^2.0.0: resolved "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== +async-each@^1.0.0: + version "1.0.6" + resolved "https://registry.npmjs.org/async-each/-/async-each-1.0.6.tgz#52f1d9403818c179b7561e11a5d1b77eb2160e77" + integrity sha512-c646jH1avxr+aVpndVMeAfYw7wAa6idufrlN3LPA4PmKS0QEGp6PIC9nwz0WQkkvBGAMEki3pFdtxaF39J9vvg== + async-function@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz#509c9fca60eaf85034c6829838188e4e4c8ffb2b" @@ -7260,6 +7317,14 @@ babel-plugin-polyfill-regenerator@^0.6.1: lodash "^4.17.21" picomatch "^2.3.1" +babel-runtime@^6.9.2: + version "6.26.0" + resolved "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" + integrity sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g== + dependencies: + core-js "^2.4.0" + regenerator-runtime "^0.11.0" + backo2@1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz#31ab1ac8b129363463e35b3ebb69f4dfcfba7947" @@ -7327,6 +7392,19 @@ base64id@2.0.0: resolved "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz#2770ac6bc47d312af97a8bf9a634342e0cd25cb6" integrity sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog== +base@^0.11.1: + version "0.11.2" + resolved "https://registry.npmjs.org/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" + integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== + dependencies: + cache-base "^1.0.1" + class-utils "^0.3.5" + component-emitter "^1.2.1" + define-property "^1.0.0" + isobject "^3.0.1" + mixin-deep "^1.2.0" + pascalcase "^0.1.1" + basic-auth@~2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz#b998279bf47ce38344b4f3cf916d4679bbf51e3a" @@ -7437,6 +7515,11 @@ bin-links@^3.0.0: rimraf "^3.0.0" write-file-atomic "^4.0.0" +binary-extensions@^1.0.0: + version "1.13.1" + resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65" + integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== + binary-extensions@^2.0.0: version "2.3.0" resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" @@ -7447,7 +7530,7 @@ binaryextensions@^4.16.0: resolved "https://registry.npmjs.org/binaryextensions/-/binaryextensions-4.19.0.tgz#7944b41ce6bbbcd3e544e05f65794ac48caaa132" integrity sha512-DRxnVbOi/1OgA5pA9EDiRT8gvVYeqfuN7TmPfLyt6cyho3KbHCi3EtDQf39TTmGDrR5dZ9CspdXhPkL/j/WGbg== -bindings@^1.3.0: +bindings@^1.3.0, bindings@^1.5.0: version "1.5.0" resolved "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== @@ -7695,6 +7778,31 @@ brace-expansion@^2.0.1: dependencies: balanced-match "^1.0.0" +braces@^1.8.2: + version "1.8.5" + resolved "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" + integrity sha512-xU7bpz2ytJl1bH9cgIurjpg/n8Gohy9GTw81heDYLJQ4RU60dlyJsa+atVF2pI0yMMvKxI9HkKwjePCj5XI1hw== + dependencies: + expand-range "^1.8.1" + preserve "^0.2.0" + repeat-element "^1.1.2" + +braces@^2.3.1: + version "2.3.2" + resolved "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" + integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== + dependencies: + arr-flatten "^1.1.0" + array-unique "^0.3.2" + extend-shallow "^2.0.1" + fill-range "^4.0.0" + isobject "^3.0.1" + repeat-element "^1.1.2" + snapdragon "^0.8.1" + snapdragon-node "^2.0.1" + split-string "^3.0.2" + to-regex "^3.0.1" + braces@^3.0.2, braces@^3.0.3, braces@~3.0.2: version "3.0.3" resolved "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" @@ -8043,6 +8151,21 @@ cacache@^17.0.0: tar "^6.1.11" unique-filename "^3.0.0" +cache-base@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" + integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== + dependencies: + collection-visit "^1.0.0" + component-emitter "^1.2.1" + get-value "^2.0.6" + has-value "^1.0.0" + isobject "^3.0.1" + set-value "^2.0.0" + to-object-path "^0.3.0" + union-value "^1.0.0" + unset-value "^1.0.0" + cacheable-lookup@^5.0.3: version "5.0.4" resolved "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz#5a6b865b2c44357be3d5ebc2a467b032719a7005" @@ -8331,6 +8454,22 @@ chokidar@3.5.3: optionalDependencies: fsevents "~2.3.2" +chokidar@^1.6.0: + version "1.7.0" + resolved "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468" + integrity sha512-mk8fAWcRUOxY7btlLtitj3A45jOwSAxH4tOFOoEGbVsl6cL6pPMWUy7dwZ/canfj3QEdP6FHSnf/l1c6/WkzVg== + dependencies: + anymatch "^1.3.0" + async-each "^1.0.0" + glob-parent "^2.0.0" + inherits "^2.0.1" + is-binary-path "^1.0.0" + is-glob "^2.0.0" + path-is-absolute "^1.0.0" + readdirp "^2.0.0" + optionalDependencies: + fsevents "^1.0.0" + chokidar@^3.4.2, chokidar@^3.5.3: version "3.6.0" resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" @@ -8402,6 +8541,16 @@ class-is@^1.1.0: resolved "https://registry.npmjs.org/class-is/-/class-is-1.1.0.tgz#9d3c0fba0440d211d843cec3dedfa48055005825" integrity sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw== +class-utils@^0.3.5: + version "0.3.6" + resolved "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" + integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== + dependencies: + arr-union "^3.1.0" + define-property "^0.2.5" + isobject "^3.0.0" + static-extend "^0.1.1" + clean-css@^4.2.3: version "4.2.4" resolved "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz#733bf46eba4e607c6891ea57c24a989356831178" @@ -8540,6 +8689,14 @@ cmd-shim@^5.0.0: dependencies: mkdirp-infer-owner "^2.0.0" +collection-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" + integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== + dependencies: + map-visit "^1.0.0" + object-visit "^1.0.0" + color-convert@^1.9.0: version "1.9.3" resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" @@ -8692,7 +8849,7 @@ component-emitter@1.2.1: resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" integrity sha512-jPatnhd33viNplKjqXKRkGU345p263OIWzDL2wH3LGIGp5Kojo+uXizHmOADRvhGFFTnJqX3jBAKP6vvmSDKcA== -component-emitter@^1.2.0, component-emitter@^1.3.0, component-emitter@~1.3.0: +component-emitter@^1.2.0, component-emitter@^1.2.1, component-emitter@^1.3.0, component-emitter@~1.3.0: version "1.3.1" resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.1.tgz#ef1d5796f7d93f135ee6fb684340b26403c97d17" integrity sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ== @@ -8966,6 +9123,11 @@ cookiejar@^2.1.0, cookiejar@^2.1.1, cookiejar@^2.1.4: resolved "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz#ee669c1fea2cf42dc31585469d193fef0d65771b" integrity sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw== +copy-descriptor@^0.1.0: + version "0.1.1" + resolved "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" + integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== + copy-webpack-plugin@^8.1.1: version "8.1.1" resolved "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-8.1.1.tgz#3f697e162764925c2f0d235f380676125508fd26" @@ -8986,6 +9148,11 @@ core-js-compat@^3.40.0: dependencies: browserslist "^4.24.4" +core-js@^2.4.0: + version "2.6.12" + resolved "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec" + integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== + core-js@^3.6.0: version "3.41.0" resolved "https://registry.npmjs.org/core-js/-/core-js-3.41.0.tgz#57714dafb8c751a6095d028a7428f1fb5834a776" @@ -9053,6 +9220,23 @@ cosmjs-types@^0.6.1: long "^4.0.0" protobufjs "~6.11.2" +cpx@^1.5.0: + version "1.5.0" + resolved "https://registry.npmjs.org/cpx/-/cpx-1.5.0.tgz#185be018511d87270dedccc293171e37655ab88f" + integrity sha512-jHTjZhsbg9xWgsP2vuNW2jnnzBX+p4T+vNI9Lbjzs1n4KhOfa22bQppiFYLsWQKd8TzmL5aSP/Me3yfsCwXbDA== + dependencies: + babel-runtime "^6.9.2" + chokidar "^1.6.0" + duplexer "^0.1.1" + glob "^7.0.5" + glob2base "^0.0.12" + minimatch "^3.0.2" + mkdirp "^0.5.1" + resolve "^1.1.7" + safe-buffer "^5.0.1" + shell-quote "^1.6.1" + subarg "^1.0.0" + crc-32@^1.2.0: version "1.2.2" resolved "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz#3cad35a934b8bf71f25ca524b6da51fb7eace2ff" @@ -9425,7 +9609,7 @@ dayjs@^1.10.4: resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz#92430b0139055c3ebb60150aa13e860a4b5a366c" integrity sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg== -debug@2.6.9, debug@^2.2.0, debug@^2.6.9: +debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.9: version "2.6.9" resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== @@ -9602,6 +9786,28 @@ define-properties@^1.1.2, define-properties@^1.1.3, define-properties@^1.2.1: has-property-descriptors "^1.0.0" object-keys "^1.1.1" +define-property@^0.2.5: + version "0.2.5" + resolved "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" + integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA== + dependencies: + is-descriptor "^0.1.0" + +define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" + integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== + dependencies: + is-descriptor "^1.0.0" + +define-property@^2.0.2: + version "2.0.2" + resolved "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" + integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== + dependencies: + is-descriptor "^1.0.2" + isobject "^3.0.1" + defined@^1.0.0, defined@~1.0.1: version "1.0.1" resolved "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz#c0b9db27bfaffd95d6f61399419b893df0f91ebf" @@ -11077,6 +11283,33 @@ executable@^4.1.1: dependencies: pify "^2.2.0" +expand-brackets@^0.1.4: + version "0.1.5" + resolved "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" + integrity sha512-hxx03P2dJxss6ceIeri9cmYOT4SRs3Zk3afZwWpOsRqLqprhTR8u++SlC+sFGsQr7WGFPdMF7Gjc1njDLDK6UA== + dependencies: + is-posix-bracket "^0.1.0" + +expand-brackets@^2.1.4: + version "2.1.4" + resolved "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" + integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== + dependencies: + debug "^2.3.3" + define-property "^0.2.5" + extend-shallow "^2.0.1" + posix-character-classes "^0.1.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +expand-range@^1.8.1: + version "1.8.2" + resolved "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" + integrity sha512-AFASGfIlnIbkKPQwX1yHaDjFvh/1gyKJODme52V6IORh69uEYgZp0o9C+qsIGNVEiuuhQU0CSSl++Rlegg1qvA== + dependencies: + fill-range "^2.1.0" + expand-tilde@^2.0.0, expand-tilde@^2.0.2: version "2.0.2" resolved "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" @@ -11199,6 +11432,21 @@ ext@^1.7.0: dependencies: type "^2.7.2" +extend-shallow@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" + integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== + dependencies: + is-extendable "^0.1.0" + +extend-shallow@^3.0.0, extend-shallow@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" + integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== + dependencies: + assign-symbols "^1.0.0" + is-extendable "^1.0.1" + extend@^3.0.0, extend@~3.0.2: version "3.0.2" resolved "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" @@ -11213,6 +11461,27 @@ external-editor@^3.0.3: iconv-lite "^0.4.24" tmp "^0.0.33" +extglob@^0.3.1: + version "0.3.2" + resolved "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" + integrity sha512-1FOj1LOwn42TMrruOHGt18HemVnbwAmAak7krWk+wa93KXxGbK+2jpezm+ytJYDaBX0/SPLZFHKM7m+tKobWGg== + dependencies: + is-extglob "^1.0.0" + +extglob@^2.0.4: + version "2.0.4" + resolved "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" + integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== + dependencies: + array-unique "^0.3.2" + define-property "^1.0.0" + expand-brackets "^2.1.4" + extend-shallow "^2.0.1" + fragment-cache "^0.2.1" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + extract-zip@2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz#663dca56fe46df890d5f131ef4a06d22bb8ba13a" @@ -11424,6 +11693,11 @@ filelist@^1.0.4: dependencies: minimatch "^5.0.1" +filename-regex@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" + integrity sha512-BTCqyBaWBTsauvnHiE8i562+EdJj+oUpkqWp2R1iCoR8f6oo8STRu3of7WJJ0TqWtxN50a5YFpzYK4Jj9esYfQ== + fill-keys@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/fill-keys/-/fill-keys-1.0.2.tgz#9a8fa36f4e8ad634e3bf6b4f3c8882551452eb20" @@ -11432,6 +11706,27 @@ fill-keys@^1.0.2: is-object "~1.0.1" merge-descriptors "~1.0.0" +fill-range@^2.1.0: + version "2.2.4" + resolved "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz#eb1e773abb056dcd8df2bfdf6af59b8b3a936565" + integrity sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q== + dependencies: + is-number "^2.1.0" + isobject "^2.0.0" + randomatic "^3.0.0" + repeat-element "^1.1.2" + repeat-string "^1.5.2" + +fill-range@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" + integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== + dependencies: + extend-shallow "^2.0.1" + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range "^2.1.0" + fill-range@^7.1.1: version "7.1.1" resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" @@ -11482,6 +11777,11 @@ find-cache-dir@^4.0.0: common-path-prefix "^3.0.0" pkg-dir "^7.0.0" +find-index@^0.1.1: + version "0.1.1" + resolved "https://registry.npmjs.org/find-index/-/find-index-0.1.1.tgz#675d358b2ca3892d795a1ab47232f8b6e2e0dde4" + integrity sha512-uJ5vWrfBKMcE6y2Z8834dwEZj9mNGxYa3t3I53OwFeuZ8D9oc2E5zcsrkuhX6h4iYrjhiv0T3szQmxlAV9uxDg== + find-up@5.0.0, find-up@~5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" @@ -11571,6 +11871,18 @@ for-each@^0.3.3, for-each@^0.3.5, for-each@~0.3.3: dependencies: is-callable "^1.2.7" +for-in@^1.0.1, for-in@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== + +for-own@^0.1.4: + version "0.1.5" + resolved "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" + integrity sha512-SKmowqGTJoPzLO1T0BBJpkfp3EMacCMOuH40hOUbrbzElVktk4DioXVM99QkLCyKoiuOmyjgcWMpVz2xjE7LZw== + dependencies: + for-in "^1.0.1" + foreground-child@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz#71b32800c9f15aa8f2f83f4a6bd9bff35d861a53" @@ -11649,6 +11961,13 @@ fraction.js@^4.3.7: resolved "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz#06ca0085157e42fda7f9e726e79fefc4068840f7" integrity sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew== +fragment-cache@^0.2.1: + version "0.2.1" + resolved "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" + integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== + dependencies: + map-cache "^0.2.2" + fresh@0.5.2: version "0.5.2" resolved "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" @@ -11732,6 +12051,14 @@ fs.realpath@^1.0.0: resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== +fsevents@^1.0.0: + version "1.2.13" + resolved "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38" + integrity sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw== + dependencies: + bindings "^1.5.0" + nan "^2.12.1" + fsevents@~2.3.2: version "2.3.3" resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" @@ -11898,6 +12225,11 @@ get-uri@^6.0.1: data-uri-to-buffer "^6.0.2" debug "^4.3.4" +get-value@^2.0.3, get-value@^2.0.6: + version "2.0.6" + resolved "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" + integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== + getos@^3.2.1: version "3.2.1" resolved "https://registry.npmjs.org/getos/-/getos-3.2.1.tgz#0134d1f4e00eb46144c5a9c0ac4dc087cbb27dc5" @@ -11977,6 +12309,21 @@ github-username@^6.0.0: dependencies: "@octokit/rest" "^18.0.6" +glob-base@^0.3.0: + version "0.3.0" + resolved "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" + integrity sha512-ab1S1g1EbO7YzauaJLkgLp7DZVAqj9M/dvKlTt8DkXA2tiOIcSMrlVI2J1RZyB5iJVccEscjGn+kpOG9788MHA== + dependencies: + glob-parent "^2.0.0" + is-glob "^2.0.0" + +glob-parent@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" + integrity sha512-JDYOvfxio/t42HKdxkAYaCiBN7oYiuxykOxKxdaUW5Qn0zaYN3gRQWolrwdnf0shM9/EP0ebuuTmyoXNr1cC5w== + dependencies: + is-glob "^2.0.0" + glob-parent@^5.1.1, glob-parent@^5.1.2, glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" @@ -11989,6 +12336,13 @@ glob-to-regexp@^0.4.1: resolved "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== +glob2base@^0.0.12: + version "0.0.12" + resolved "https://registry.npmjs.org/glob2base/-/glob2base-0.0.12.tgz#9d419b3e28f12e83a362164a277055922c9c0d56" + integrity sha512-ZyqlgowMbfj2NPjxaZZ/EtsXlOch28FRXgMd64vqZWk1bT9+wvSRLYD1om9M7QfQru51zJPAT17qXm4/zd+9QA== + dependencies: + find-index "^0.1.1" + glob@7.1.4: version "7.1.4" resolved "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz#aa608a2f6c577ad357e1ae5a5c26d9a8d1969255" @@ -12025,7 +12379,7 @@ glob@^10.2.2: package-json-from-dist "^1.0.0" path-scurry "^1.11.1" -glob@^7.0.0, glob@^7.0.3, glob@^7.1.0, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@~7.2.3: +glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@^7.1.0, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@~7.2.3: version "7.2.3" resolved "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -12275,6 +12629,37 @@ has-unicode@^2.0.1: resolved "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" integrity sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ== +has-value@^0.3.1: + version "0.3.1" + resolved "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" + integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== + dependencies: + get-value "^2.0.3" + has-values "^0.1.4" + isobject "^2.0.0" + +has-value@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" + integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== + dependencies: + get-value "^2.0.6" + has-values "^1.0.0" + isobject "^3.0.0" + +has-values@^0.1.4: + version "0.1.4" + resolved "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" + integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== + +has-values@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" + integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" + has@^1.0.0, has@~1.0.3: version "1.0.4" resolved "https://registry.npmjs.org/has/-/has-1.0.4.tgz#2eb2860e000011dae4f1406a86fe80e530fb2ec6" @@ -12988,6 +13373,13 @@ ipaddr.js@^2.0.1: resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.2.0.tgz#d33fa7bac284f4de7af949638c9d68157c6b92e8" integrity sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA== +is-accessor-descriptor@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.1.tgz#3223b10628354644b86260db29b3e693f5ceedd4" + integrity sha512-YBUanLI8Yoihw923YeFUS5fs0fF2f5TSFTNiYAAzhhDscDa3lEqYuz1pDOEP5KvX94I9ey3vsqjJcLVFVU+3QA== + dependencies: + hasown "^2.0.0" + is-arguments@^1.0.4, is-arguments@^1.1.1: version "1.2.0" resolved "https://registry.npmjs.org/is-arguments/-/is-arguments-1.2.0.tgz#ad58c6aecf563b78ef2bf04df540da8f5d7d8e1b" @@ -13028,6 +13420,13 @@ is-bigint@^1.1.0: dependencies: has-bigints "^1.0.2" +is-binary-path@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" + integrity sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q== + dependencies: + binary-extensions "^1.0.0" + is-binary-path@~2.1.0: version "2.1.0" resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" @@ -13043,7 +13442,7 @@ is-boolean-object@^1.2.1: call-bound "^1.0.3" has-tostringtag "^1.0.2" -is-buffer@^1.1.0: +is-buffer@^1.1.0, is-buffer@^1.1.5: version "1.1.6" resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== @@ -13074,6 +13473,13 @@ is-core-module@^2.12.0, is-core-module@^2.13.0, is-core-module@^2.15.1, is-core- dependencies: hasown "^2.0.2" +is-data-descriptor@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.1.tgz#2109164426166d32ea38c405c1e0945d9e6a4eeb" + integrity sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw== + dependencies: + hasown "^2.0.0" + is-data-view@^1.0.1, is-data-view@^1.0.2: version "1.0.2" resolved "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz#bae0a41b9688986c2188dda6657e56b8f9e63b8e" @@ -13091,6 +13497,22 @@ is-date-object@^1.0.5, is-date-object@^1.1.0: call-bound "^1.0.2" has-tostringtag "^1.0.2" +is-descriptor@^0.1.0: + version "0.1.7" + resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz#2727eb61fd789dcd5bdf0ed4569f551d2fe3be33" + integrity sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg== + dependencies: + is-accessor-descriptor "^1.0.1" + is-data-descriptor "^1.0.1" + +is-descriptor@^1.0.0, is-descriptor@^1.0.2: + version "1.0.3" + resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz#92d27cb3cd311c4977a4db47df457234a13cb306" + integrity sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw== + dependencies: + is-accessor-descriptor "^1.0.1" + is-data-descriptor "^1.0.1" + is-docker@^2.0.0, is-docker@^2.1.1: version "2.2.1" resolved "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" @@ -13101,6 +13523,35 @@ is-docker@^3.0.0: resolved "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz#90093aa3106277d8a77a5910dbae71747e15a200" integrity sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ== +is-dotfile@^1.0.0: + version "1.0.3" + resolved "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" + integrity sha512-9YclgOGtN/f8zx0Pr4FQYMdibBiTaH3sn52vjYip4ZSf6C4/6RfTEZ+MR4GvKhCxdPh21Bg42/WL55f6KSnKpg== + +is-equal-shallow@^0.1.3: + version "0.1.3" + resolved "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" + integrity sha512-0EygVC5qPvIyb+gSz7zdD5/AAoS6Qrx1e//6N4yv4oNm30kqvdmG66oZFWVlQHUWe5OjP08FuTw2IdT0EOTcYA== + dependencies: + is-primitive "^2.0.0" + +is-extendable@^0.1.0, is-extendable@^0.1.1: + version "0.1.1" + resolved "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== + +is-extendable@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" + integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== + dependencies: + is-plain-object "^2.0.4" + +is-extglob@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" + integrity sha512-7Q+VbVafe6x2T+Tu6NcOf6sRklazEPmBoB3IWk3WdGZM2iGUwU/Oe3Wtq5lSEkDTTlpp8yx+5t4pzO/i9Ty1ww== + is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" @@ -13138,6 +13589,13 @@ is-generator-function@^1.0.10, is-generator-function@^1.0.7: has-tostringtag "^1.0.2" safe-regex-test "^1.1.0" +is-glob@^2.0.0, is-glob@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" + integrity sha512-a1dBeB19NXsf/E0+FHqkagizel/LQw2DjSQpvQrj3zT+jYPpaUCryPnrQajXKFLCMuf4I6FhRpaGtw4lPrG6Eg== + dependencies: + is-extglob "^1.0.0" + is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: version "4.0.3" resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" @@ -13212,6 +13670,25 @@ is-number-object@^1.1.1: call-bound "^1.0.3" has-tostringtag "^1.0.2" +is-number@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" + integrity sha512-QUzH43Gfb9+5yckcrSA0VBDwEtDUchrk4F6tfJZQuNzDJbEDB9cZNzSfXGQ1jqmdDY/kl41lUOWM9syA8z8jlg== + dependencies: + kind-of "^3.0.2" + +is-number@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" + integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== + dependencies: + kind-of "^3.0.2" + +is-number@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" + integrity sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ== + is-number@^7.0.0: version "7.0.0" resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" @@ -13266,7 +13743,7 @@ is-plain-obj@^3.0.0: resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz#af6f2ea14ac5a646183a5bbdb5baabbc156ad9d7" integrity sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA== -is-plain-object@^2.0.4: +is-plain-object@^2.0.3, is-plain-object@^2.0.4: version "2.0.4" resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== @@ -13278,6 +13755,16 @@ is-plain-object@^5.0.0: resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== +is-posix-bracket@^0.1.0: + version "0.1.1" + resolved "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" + integrity sha512-Yu68oeXJ7LeWNmZ3Zov/xg/oDBnBK2RNxwYY1ilNJX+tKKZqgPK+qOn/Gs9jEu66KDY9Netf5XLKNGzas/vPfQ== + +is-primitive@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" + integrity sha512-N3w1tFaRfk3UrPfqeRyD+GYDASU3W5VinKhlORy8EWVf/sIdDL9GAcew85XmktCfH+ngG7SRXEVDoO18WMdB/Q== + is-promise@^2.2.2: version "2.2.2" resolved "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" @@ -13429,6 +13916,11 @@ is64bit@^2.0.0: dependencies: system-architecture "^0.1.0" +isarray@1.0.0, isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== + isarray@2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz#a37d94ed9cda2d59865c9f76fe596ee1f338741e" @@ -13439,11 +13931,6 @@ isarray@^2.0.5: resolved "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz#8af1e4c1221244cc62459faf38940d4e644a5723" integrity sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw== -isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" - integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== - isbinaryfile@5.0.0, isbinaryfile@^4.0.6, isbinaryfile@^5.0.0: version "5.0.0" resolved "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-5.0.0.tgz#034b7e54989dab8986598cbcea41f66663c65234" @@ -13459,7 +13946,14 @@ iso-url@~0.4.7: resolved "https://registry.npmjs.org/iso-url/-/iso-url-0.4.7.tgz#de7e48120dae46921079fe78f325ac9e9217a385" integrity sha512-27fFRDnPAMnHGLq36bWTpKET+eiXct3ENlCcdcMdk+mjXrb2kw3mhBUg1B7ewAC0kVzlOPhADzQgz1SE6Tglog== -isobject@^3.0.1: +isobject@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== + dependencies: + isarray "1.0.0" + +isobject@^3.0.0, isobject@^3.0.1: version "3.0.1" resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== @@ -14064,7 +14558,21 @@ keyv@^4.0.0, keyv@^4.5.3: dependencies: json-buffer "3.0.1" -kind-of@^6.0.2, kind-of@^6.0.3: +kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: + version "3.2.2" + resolved "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== + dependencies: + is-buffer "^1.1.5" + +kind-of@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" + integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== + dependencies: + is-buffer "^1.1.5" + +kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3: version "6.0.3" resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== @@ -14668,6 +15176,11 @@ make-fetch-happen@^11.0.0, make-fetch-happen@^11.0.1, make-fetch-happen@^11.1.1: socks-proxy-agent "^7.0.0" ssri "^10.0.0" +map-cache@^0.2.2: + version "0.2.2" + resolved "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" + integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== + map-obj@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" @@ -14678,6 +15191,13 @@ map-obj@^4.0.0: resolved "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a" integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ== +map-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" + integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== + dependencies: + object-visit "^1.0.0" + markdown-it-anchor@^8.6.7: version "8.6.7" resolved "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.7.tgz#ee6926daf3ad1ed5e4e3968b1740eef1c6399634" @@ -14705,6 +15225,11 @@ math-intrinsics@^1.1.0: resolved "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9" integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g== +math-random@^1.0.1: + version "1.0.4" + resolved "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz#5dd6943c938548267016d4e34f057583080c514c" + integrity sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A== + md5.js@^1.3.4: version "1.3.5" resolved "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz#b5d07b8e3216e3e27cd728d72f70d1e6a342005f" @@ -14840,6 +15365,44 @@ micro-packed@~0.5.1: dependencies: "@scure/base" "~1.1.5" +micromatch@^2.1.5: + version "2.3.11" + resolved "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" + integrity sha512-LnU2XFEk9xxSJ6rfgAry/ty5qwUTyHYOBU0g4R6tIw5ljwgGIBmiKhRWLw5NpMOnrgUNcDJ4WMp8rl3sYVHLNA== + dependencies: + arr-diff "^2.0.0" + array-unique "^0.2.1" + braces "^1.8.2" + expand-brackets "^0.1.4" + extglob "^0.3.1" + filename-regex "^2.0.0" + is-extglob "^1.0.0" + is-glob "^2.0.1" + kind-of "^3.0.2" + normalize-path "^2.0.1" + object.omit "^2.0.0" + parse-glob "^3.0.4" + regex-cache "^0.4.2" + +micromatch@^3.1.10: + version "3.1.10" + resolved "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" + integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + braces "^2.3.1" + define-property "^2.0.2" + extend-shallow "^3.0.2" + extglob "^2.0.4" + fragment-cache "^0.2.1" + kind-of "^6.0.2" + nanomatch "^1.2.9" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.2" + micromatch@^4.0.0, micromatch@^4.0.2, micromatch@^4.0.4, micromatch@^4.0.5, micromatch@^4.0.8: version "4.0.8" resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" @@ -14948,7 +15511,7 @@ minimatch@4.2.1: dependencies: brace-expansion "^1.1.7" -minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: +minimatch@^3.0.2, minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== @@ -15088,6 +15651,14 @@ minizlib@^2.1.1, minizlib@^2.1.2: minipass "^3.0.0" yallist "^4.0.0" +mixin-deep@^1.2.0: + version "1.3.2" + resolved "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" + integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== + dependencies: + for-in "^1.0.2" + is-extendable "^1.0.1" + mkdirp-infer-owner@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz#55d3b368e7d89065c38f32fd38e638f0ab61d316" @@ -15109,7 +15680,7 @@ mkdirp@*: resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-3.0.1.tgz#e44e4c5607fb279c168241713cc6e0fea9adcb50" integrity sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg== -mkdirp@^0.5.4, mkdirp@^0.5.5: +mkdirp@^0.5.1, mkdirp@^0.5.4, mkdirp@^0.5.5: version "0.5.6" resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== @@ -15314,6 +15885,11 @@ nan@2.14.0: resolved "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c" integrity sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg== +nan@^2.12.1: + version "2.23.0" + resolved "https://registry.npmjs.org/nan/-/nan-2.23.0.tgz#24aa4ddffcc37613a2d2935b97683c1ec96093c6" + integrity sha512-1UxuyYGdoQHcGg87Lkqm3FzefucTa0NAiOcuRsDmysep3c1LVCRK2krrUDafMWtjSG04htvAmvg96+SDknOmgQ== + nano-json-stream-parser@^0.1.2: version "0.1.2" resolved "https://registry.npmjs.org/nano-json-stream-parser/-/nano-json-stream-parser-0.1.2.tgz#0cc8f6d0e2b622b479c40d499c46d64b755c6f5f" @@ -15344,6 +15920,23 @@ nanoid@^3.3.8: resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz#4f4f112cefbe303202f2199838128936266d185b" integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w== +nanomatch@^1.2.9: + version "1.2.13" + resolved "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" + integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + define-property "^2.0.2" + extend-shallow "^3.0.2" + fragment-cache "^0.2.1" + is-windows "^1.0.2" + kind-of "^6.0.2" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" @@ -15606,6 +16199,13 @@ normalize-package-data@^5.0.0: semver "^7.3.5" validate-npm-package-license "^3.0.4" +normalize-path@^2.0.0, normalize-path@^2.0.1: + version "2.1.1" + resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + integrity sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w== + dependencies: + remove-trailing-separator "^1.0.1" + normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" @@ -15901,6 +16501,15 @@ object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1 resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== +object-copy@^0.1.0: + version "0.1.0" + resolved "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" + integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== + dependencies: + copy-descriptor "^0.1.0" + define-property "^0.2.5" + kind-of "^3.0.3" + object-inspect@^1.12.2, object-inspect@^1.13.3: version "1.13.4" resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz#8375265e21bc20d0fa582c22e1b13485d6e00213" @@ -15924,6 +16533,13 @@ object-keys@^1.1.1: resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== +object-visit@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" + integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== + dependencies: + isobject "^3.0.0" + object.assign@^4.1.4, object.assign@^4.1.7: version "4.1.7" resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz#8c14ca1a424c6a561b0bb2a22f66f5049a945d3d" @@ -15968,6 +16584,21 @@ object.groupby@^1.0.3: define-properties "^1.2.1" es-abstract "^1.23.2" +object.omit@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" + integrity sha512-UiAM5mhmIuKLsOvrL+B0U2d1hXHF3bFYWIuH1LMpuV2EJEHG1Ntz06PgLEHjm6VFd87NpH8rastvPoyv6UW2fA== + dependencies: + for-own "^0.1.4" + is-extendable "^0.1.1" + +object.pick@^1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" + integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== + dependencies: + isobject "^3.0.1" + object.values@^1.2.0: version "1.2.1" resolved "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz#deed520a50809ff7f75a7cfd4bc64c7a038c6216" @@ -16430,6 +17061,16 @@ parse-conflict-json@^2.0.1: just-diff "^5.0.1" just-diff-apply "^5.2.0" +parse-glob@^3.0.4: + version "3.0.4" + resolved "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" + integrity sha512-FC5TeK0AwXzq3tUBFtH74naWkPQCEWs4K+xMxWZBlKDWu0bVHXGZa+KKqxKidd7xwhdZ19ZNuF2uO1M/r196HA== + dependencies: + glob-base "^0.3.0" + is-dotfile "^1.0.0" + is-extglob "^1.0.0" + is-glob "^2.0.0" + parse-headers@^2.0.0: version "2.0.6" resolved "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.6.tgz#7940f0abe5fe65df2dd25d4ce8800cb35b49d01c" @@ -16500,6 +17141,11 @@ pascal-case@^3.1.2: no-case "^3.0.4" tslib "^2.0.3" +pascalcase@^0.1.1: + version "0.1.1" + resolved "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" + integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== + path-browserify@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd" @@ -16740,6 +17386,11 @@ poseidon-lite@^0.2.0: resolved "https://registry.npmjs.org/poseidon-lite/-/poseidon-lite-0.2.1.tgz#7ad98e3a3aa5b91a1fd3a61a87460e9e46fd76d6" integrity sha512-xIr+G6HeYfOhCuswdqcFpSX47SPhm0EpisWJ6h7fHlWwaVIvH3dLnejpatrtw6Xc6HaLrpq05y7VRfvDmDGIog== +posix-character-classes@^0.1.0: + version "0.1.1" + resolved "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" + integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== + possible-typed-array-names@^1.0.0: version "1.1.0" resolved "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz#93e3582bc0e5426586d9d07b79ee40fc841de4ae" @@ -17065,6 +17716,11 @@ prepend-http@^2.0.0: resolved "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" integrity sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA== +preserve@^0.2.0: + version "0.2.0" + resolved "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" + integrity sha512-s/46sYeylUfHNjI+sA/78FAHlmIuKqI9wNnzEOGehAlUUYeObv5C2mOinXBjyUyWmJ2SfcS2/ydApH4hTF4WXQ== + prettier-linter-helpers@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" @@ -17505,6 +18161,15 @@ raf@^3.4.1: dependencies: performance-now "^2.1.0" +randomatic@^3.0.0: + version "3.1.1" + resolved "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz#b776efc59375984e36c537b2f51a1f0aff0da1ed" + integrity sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw== + dependencies: + is-number "^4.0.0" + kind-of "^6.0.0" + math-random "^1.0.1" + randombytes@2.0.5: version "2.0.5" resolved "https://registry.npmjs.org/randombytes/-/randombytes-2.0.5.tgz#dc009a246b8d09a177b4b7a0ae77bc570f4b1b79" @@ -17771,6 +18436,15 @@ readdir-scoped-modules@^1.1.0: graceful-fs "^4.1.2" once "^1.3.0" +readdirp@^2.0.0: + version "2.2.1" + resolved "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz#0e87622a3325aa33e892285caf8b4e846529a525" + integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== + dependencies: + graceful-fs "^4.1.11" + micromatch "^3.1.10" + readable-stream "^2.0.2" + readdirp@^3.6.0, readdirp@~3.6.0: version "3.6.0" resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" @@ -17846,6 +18520,11 @@ regenerate@^1.4.2: resolved "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== +regenerator-runtime@^0.11.0: + version "0.11.1" + resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz#be05ad7f9bf7d22e056f9726cee5017fbf19e2e9" + integrity sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg== + regenerator-runtime@^0.13.2: version "0.13.11" resolved "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz#f6dca3e7ceec20590d07ada785636a90cdca17f9" @@ -17863,6 +18542,21 @@ regenerator-transform@^0.15.2: dependencies: "@babel/runtime" "^7.8.4" +regex-cache@^0.4.2: + version "0.4.4" + resolved "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz#75bdc58a2a1496cec48a12835bc54c8d562336dd" + integrity sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ== + dependencies: + is-equal-shallow "^0.1.3" + +regex-not@^1.0.0, regex-not@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" + integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== + dependencies: + extend-shallow "^3.0.2" + safe-regex "^1.1.0" + regexp.prototype.flags@^1.5.1, regexp.prototype.flags@^1.5.3: version "1.5.4" resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz#1ad6c62d44a259007e55b3970e00f746efbcaa19" @@ -17921,6 +18615,11 @@ release-zalgo@^1.0.0: dependencies: es6-error "^4.0.1" +remove-trailing-separator@^1.0.1: + version "1.1.0" + resolved "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw== + renderkid@^2.0.4: version "2.0.7" resolved "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz#464f276a6bdcee606f4a15993f9b29fc74ca8609" @@ -17943,6 +18642,16 @@ renderkid@^3.0.0: lodash "^4.17.21" strip-ansi "^6.0.1" +repeat-element@^1.1.2: + version "1.1.4" + resolved "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9" + integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== + +repeat-string@^1.5.2, repeat-string@^1.6.1: + version "1.6.1" + resolved "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== + request-progress@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz#4ca754081c7fec63f505e4faa825aa06cd669dbe" @@ -18055,12 +18764,17 @@ resolve-from@^5.0.0: resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== +resolve-url@^0.2.1: + version "0.2.1" + resolved "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== + resolve@1.1.7: version "1.1.7" resolved "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" integrity sha512-9znBF0vBcaSN3W2j7wKvdERPwqTxSpCq+if5C0WoTCyV9n24rua28jeuQ2pL/HOf+yUe/Mef+H/5p60K0Id3bg== -resolve@^1.1.3, resolve@^1.1.4, resolve@^1.1.6, resolve@^1.10.0, resolve@^1.11.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.22.3, resolve@^1.22.4, resolve@^1.9.0, resolve@~1.22.6: +resolve@^1.1.3, resolve@^1.1.4, resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.11.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.22.3, resolve@^1.22.4, resolve@^1.9.0, resolve@~1.22.6: version "1.22.10" resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz#b663e83ffb09bbf2386944736baae803029b8b39" integrity sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w== @@ -18091,6 +18805,11 @@ restore-cursor@^3.1.0: onetime "^5.1.0" signal-exit "^3.0.2" +ret@~0.1.10: + version "0.1.15" + resolved "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" + integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== + retry@^0.12.0: version "0.12.0" resolved "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" @@ -18273,6 +18992,13 @@ safe-regex-test@^1.1.0: es-errors "^1.3.0" is-regex "^1.2.1" +safe-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" + integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== + dependencies: + ret "~0.1.10" + safe-stable-stringify@^2.3.1: version "2.5.0" resolved "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz#4ca2f8e385f2831c432a719b108a3bf7af42a1dd" @@ -18559,6 +19285,16 @@ set-proto@^1.0.0: es-errors "^1.3.0" es-object-atoms "^1.0.0" +set-value@^2.0.0, set-value@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" + integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.3" + split-string "^3.0.1" + setimmediate@^1.0.4, setimmediate@^1.0.5: version "1.0.5" resolved "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" @@ -18872,6 +19608,36 @@ smoldot@2.0.26: dependencies: ws "^8.8.1" +snapdragon-node@^2.0.1: + version "2.1.1" + resolved "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" + integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== + dependencies: + define-property "^1.0.0" + isobject "^3.0.0" + snapdragon-util "^3.0.1" + +snapdragon-util@^3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" + integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== + dependencies: + kind-of "^3.2.0" + +snapdragon@^0.8.1: + version "0.8.2" + resolved "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" + integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== + dependencies: + base "^0.11.1" + debug "^2.2.0" + define-property "^0.2.5" + extend-shallow "^2.0.1" + map-cache "^0.2.2" + source-map "^0.5.6" + source-map-resolve "^0.5.0" + use "^3.1.0" + socket.io-adapter@~1.1.0: version "1.1.2" resolved "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz#ab3f0d6f66b8fc7fca3959ab5991f82221789be9" @@ -18997,6 +19763,17 @@ source-list-map@^2.0.0: resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46" integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== +source-map-resolve@^0.5.0: + version "0.5.3" + resolved "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" + integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== + dependencies: + atob "^2.1.2" + decode-uri-component "^0.2.0" + resolve-url "^0.2.1" + source-map-url "^0.4.0" + urix "^0.1.0" + source-map-support@~0.5.20: version "0.5.21" resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" @@ -19005,6 +19782,16 @@ source-map-support@~0.5.20: buffer-from "^1.0.0" source-map "^0.6.0" +source-map-url@^0.4.0: + version "0.4.1" + resolved "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" + integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== + +source-map@^0.5.6, source-map@~0.5.3: + version "0.5.7" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== + source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: version "0.6.1" resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" @@ -19015,11 +19802,6 @@ source-map@^0.7.3, source-map@^0.7.4: resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== -source-map@~0.5.3: - version "0.5.7" - resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" - integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== - spawn-wrap@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz#103685b8b8f9b79771318827aa78650a610d457e" @@ -19088,6 +19870,13 @@ speed-measure-webpack-plugin@1.4.2: dependencies: chalk "^4.1.0" +split-string@^3.0.1, split-string@^3.0.2: + version "3.1.0" + resolved "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" + integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== + dependencies: + extend-shallow "^3.0.0" + split2@^3.0.0: version "3.2.2" resolved "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f" @@ -19151,6 +19940,14 @@ stackblur-canvas@^2.0.0: resolved "https://registry.npmjs.org/stackblur-canvas/-/stackblur-canvas-2.7.0.tgz#af931277d0b5096df55e1f91c530043e066989b6" integrity sha512-yf7OENo23AGJhBriGx0QivY5JP6Y1HbrrDI6WLt6C5auYZXlQrheoY8hD4ibekFKz1HOfE48Ww8kMWMnJD/zcQ== +static-extend@^0.1.1: + version "0.1.2" + resolved "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" + integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== + dependencies: + define-property "^0.2.5" + object-copy "^0.1.0" + statuses@2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" @@ -19895,11 +20692,26 @@ to-buffer@^1.2.0: safe-buffer "^5.2.1" typed-array-buffer "^1.0.3" +to-object-path@^0.3.0: + version "0.3.0" + resolved "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" + integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== + dependencies: + kind-of "^3.0.2" + to-readable-stream@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz#ce0aa0c2f3df6adf852efb404a783e77c0475771" integrity sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q== +to-regex-range@^2.1.0: + version "2.1.1" + resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" + integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== + dependencies: + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -19907,6 +20719,16 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" +to-regex@^3.0.1, to-regex@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" + integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== + dependencies: + define-property "^2.0.2" + extend-shallow "^3.0.2" + regex-not "^1.0.2" + safe-regex "^1.1.0" + toidentifier@1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" @@ -20343,6 +21165,11 @@ undici-types@~6.21.0: resolved "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz#691d00af3909be93a7faa13be61b3a5b50ef12cb" integrity sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ== +undici-types@~7.8.0: + version "7.8.0" + resolved "https://registry.npmjs.org/undici-types/-/undici-types-7.8.0.tgz#de00b85b710c54122e44fbfd911f8d70174cd294" + integrity sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw== + unicode-canonical-property-names-ecmascript@^2.0.0: version "2.0.1" resolved "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz#cb3173fe47ca743e228216e4a3ddc4c84d628cc2" @@ -20371,6 +21198,16 @@ unicorn-magic@^0.1.0: resolved "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.1.0.tgz#1bb9a51c823aaf9d73a8bfcd3d1a23dde94b0ce4" integrity sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ== +union-value@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" + integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== + dependencies: + arr-union "^3.1.0" + get-value "^2.0.6" + is-extendable "^0.1.1" + set-value "^2.0.1" + unique-filename@^2.0.0: version "2.0.1" resolved "https://registry.npmjs.org/unique-filename/-/unique-filename-2.0.1.tgz#e785f8675a9a7589e0ac77e0b5c34d2eaeac6da2" @@ -20419,6 +21256,14 @@ unpipe@1.0.0, unpipe@~1.0.0: resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== +unset-value@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" + integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== + dependencies: + has-value "^0.3.1" + isobject "^3.0.0" + untildify@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" @@ -20449,6 +21294,11 @@ urijs@^1.19.1: resolved "https://registry.npmjs.org/urijs/-/urijs-1.19.11.tgz#204b0d6b605ae80bea54bea39280cdb7c9f923cc" integrity sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ== +urix@^0.1.0: + version "0.1.0" + resolved "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" + integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== + url-parse-lax@^3.0.0: version "3.0.0" resolved "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" @@ -20494,6 +21344,11 @@ use-latest@^1.2.1: dependencies: use-isomorphic-layout-effect "^1.1.1" +use@^3.1.0: + version "3.1.1" + resolved "https://registry.npmjs.org/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" + integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== + utf-8-validate@^5.0.2: version "5.0.10" resolved "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.10.tgz#d7d10ea39318171ca982718b6b96a8d2442571a2" @@ -21688,6 +22543,6 @@ yocto-queue@^1.0.0: integrity sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg== zod@^3.21.4: - version "3.25.67" - resolved "https://registry.npmjs.org/zod/-/zod-3.25.67.tgz#62987e4078e2ab0f63b491ef0c4f33df24236da8" - integrity sha512-idA2YXwpCdqUSKRCACDE6ItZD9TZzy3OZMtpfLoh6oPR47lipysRrJfjzMqFxQ3uJuUPyUeWe1r9vLH33xO/Qw== + version "3.25.76" + resolved "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz#26841c3f6fd22a6a2760e7ccb719179768471e34" + integrity sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==