From cb73951573a6d1dec265a8c4864304169ef19eea Mon Sep 17 00:00:00 2001 From: Ari Gibson Date: Thu, 5 May 2022 03:27:11 -0600 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20Added=20`recoverPublicKey`=20util?= =?UTF-8?q?=20fn=20(#114)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Added hashMessage to exports * โœจ Added splitSignature util fn * make gas price less flakey * โœจ Added `computeAddress` util fn (#116) * Added initial computeAddress fn, relies on ethers at the moment * Init computePublicKey util fn * โœจ Added computePublicKey util fn * ๐Ÿ“ Added documenation to computePublicKey * โฌ† Pre-commit hook package bump, added @noble/secp256k1 * โœจ Added `computePublicKey` util fn (#118) * Init computePublicKey util fn * โœจ Added computePublicKey util fn * ๐Ÿ“ Added documenation to computePublicKey * โฌ† Pre-commit hook package bump, added @noble/secp256k1 * ๐Ÿงช Pass computeAddress test * ๐Ÿ“ Add docs for computeAddress * ๐Ÿ“ Pre-commit script update readme and chains * ๐Ÿงช Pass tests with recoverPublicKey * ๐Ÿ“ Pre-commit script readme update Co-authored-by: daws.eth --- package-lock.json | 1949 +++-------------- package.json | 9 +- readme.md | 62 + scripts/markdown-magic/typedoc.out.json | 1057 +++++---- src/index.ts | 10 +- .../json-rpc-provider/get-gas-price.test.ts | 4 +- src/providers/utils/chains-info.ts | 3 + src/utils/compute-address.ts | 17 + src/utils/compute-public-key.ts | 14 + src/utils/recover-public-key.ts | 17 + src/utils/tests/compute-address.test.ts | 15 + src/utils/tests/compute-public-key.test.ts | 12 + src/utils/tests/recover-public-key.test.ts | 11 + 13 files changed, 1129 insertions(+), 2051 deletions(-) create mode 100644 src/utils/compute-address.ts create mode 100644 src/utils/compute-public-key.ts create mode 100644 src/utils/recover-public-key.ts create mode 100644 src/utils/tests/compute-address.test.ts create mode 100644 src/utils/tests/compute-public-key.test.ts create mode 100644 src/utils/tests/recover-public-key.test.ts diff --git a/package-lock.json b/package-lock.json index 16c3a8ea..44eed710 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,7 @@ "version": "0.5.4", "license": "MIT", "dependencies": { + "@noble/secp256k1": "^1.5.5", "@types/big.js": "^6.1.3", "big.js": "^6.1.1", "isomorphic-unfetch": "^3.1.0", @@ -16,19 +17,19 @@ }, "devDependencies": { "@types/body-parser": "^1.19.1", - "@types/eslint": "^8.4.1", + "@types/eslint": "^8.4.2", "@types/express": "^4.17.13", "@types/jest": "^27.4.1", "@types/jest-dev-server": "^5.0.0", "@types/node": "^16.10.1", "@types/prettier": "^2.4.4", - "@typescript-eslint/eslint-plugin": "^5.21.0", - "@typescript-eslint/parser": "^5.21.0", + "@typescript-eslint/eslint-plugin": "^5.22.0", + "@typescript-eslint/parser": "^5.22.0", "body-parser": "^1.19.0", "dotenv": "^16.0.0", "eslint": "^8.14.0", "eslint-plugin-jest": "^26.1.5", - "ethers": "^5.6.4", + "ethers": "^5.6.5", "express": "^4.17.1", "husky": "^7.0.4", "jest": "^27.5.1", @@ -750,25 +751,6 @@ "@ethersproject/strings": "^5.6.0" } }, - "node_modules/@ethersproject/abi/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.6.0" - } - }, "node_modules/@ethersproject/abi/node_modules/@ethersproject/keccak256": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", @@ -789,22 +771,6 @@ "js-sha3": "0.8.0" } }, - "node_modules/@ethersproject/abi/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, "node_modules/@ethersproject/abi/node_modules/js-sha3": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", @@ -836,10 +802,10 @@ "@ethersproject/web": "^5.6.0" } }, - "node_modules/@ethersproject/abstract-provider/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", + "node_modules/@ethersproject/abstract-signer": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abstract-signer/-/abstract-signer-5.6.0.tgz", + "integrity": "sha512-WOqnG0NJKtI8n0wWZPReHtaLkDByPL67tn4nBaDAhmVq8sjHTPbCdz4DRhVu/cfTOvfy9w3iq5QZ7BX7zw56BQ==", "dev": true, "funding": [ { @@ -852,13 +818,17 @@ } ], "dependencies": { - "@ethersproject/logger": "^5.6.0" + "@ethersproject/abstract-provider": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0" } }, - "node_modules/@ethersproject/abstract-provider/node_modules/@ethersproject/logger": { + "node_modules/@ethersproject/address": { "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", + "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.6.0.tgz", + "integrity": "sha512-6nvhYXjbXsHPS+30sHZ+U4VMagFC/9zAk6Gd/h3S21YW4+yfb0WfRtaAIZ4kfM4rrVwqiy284LP0GtL5HXGLxQ==", "dev": true, "funding": [ { @@ -869,12 +839,19 @@ "type": "individual", "url": "https://www.buymeacoffee.com/ricmoo" } - ] + ], + "dependencies": { + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/rlp": "^5.6.0" + } }, - "node_modules/@ethersproject/abstract-signer": { + "node_modules/@ethersproject/address/node_modules/@ethersproject/keccak256": { "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abstract-signer/-/abstract-signer-5.6.0.tgz", - "integrity": "sha512-WOqnG0NJKtI8n0wWZPReHtaLkDByPL67tn4nBaDAhmVq8sjHTPbCdz4DRhVu/cfTOvfy9w3iq5QZ7BX7zw56BQ==", + "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", + "integrity": "sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w==", "dev": true, "funding": [ { @@ -887,17 +864,20 @@ } ], "dependencies": { - "@ethersproject/abstract-provider": "^5.6.0", - "@ethersproject/bignumber": "^5.6.0", "@ethersproject/bytes": "^5.6.0", - "@ethersproject/logger": "^5.6.0", - "@ethersproject/properties": "^5.6.0" + "js-sha3": "0.8.0" } }, - "node_modules/@ethersproject/abstract-signer/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", + "node_modules/@ethersproject/address/node_modules/js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==", + "dev": true + }, + "node_modules/@ethersproject/base64": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/base64/-/base64-5.6.0.tgz", + "integrity": "sha512-2Neq8wxJ9xHxCF9TUgmKeSh9BXJ6OAxWfeGWvbauPh8FuHEjamgHilllx8KkSd5ErxyHIX7Xv3Fkcud2kY9ezw==", "dev": true, "funding": [ { @@ -910,13 +890,13 @@ } ], "dependencies": { - "@ethersproject/logger": "^5.6.0" + "@ethersproject/bytes": "^5.6.0" } }, - "node_modules/@ethersproject/abstract-signer/node_modules/@ethersproject/logger": { + "node_modules/@ethersproject/basex": { "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", + "resolved": "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.6.0.tgz", + "integrity": "sha512-qN4T+hQd/Md32MoJpc69rOwLYRUXwjTlhHDIeUkUmiN/JyWkkLLMoG0TqvSQKNqZOMgN5stbUYN6ILC+eD7MEQ==", "dev": true, "funding": [ { @@ -927,12 +907,16 @@ "type": "individual", "url": "https://www.buymeacoffee.com/ricmoo" } - ] + ], + "dependencies": { + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/properties": "^5.6.0" + } }, - "node_modules/@ethersproject/address": { + "node_modules/@ethersproject/bignumber": { "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.6.0.tgz", - "integrity": "sha512-6nvhYXjbXsHPS+30sHZ+U4VMagFC/9zAk6Gd/h3S21YW4+yfb0WfRtaAIZ4kfM4rrVwqiy284LP0GtL5HXGLxQ==", + "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.6.0.tgz", + "integrity": "sha512-VziMaXIUHQlHJmkv1dlcd6GY2PmT0khtAqaMctCIDogxkrarMzA9L94KN1NeXqqOfFD6r0sJT3vCTOFSmZ07DA==", "dev": true, "funding": [ { @@ -945,14 +929,12 @@ } ], "dependencies": { - "@ethersproject/bignumber": "^5.6.0", "@ethersproject/bytes": "^5.6.0", - "@ethersproject/keccak256": "^5.6.0", "@ethersproject/logger": "^5.6.0", - "@ethersproject/rlp": "^5.6.0" + "bn.js": "^4.11.9" } }, - "node_modules/@ethersproject/address/node_modules/@ethersproject/bytes": { + "node_modules/@ethersproject/bytes": { "version": "5.6.1", "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", @@ -971,10 +953,10 @@ "@ethersproject/logger": "^5.6.0" } }, - "node_modules/@ethersproject/address/node_modules/@ethersproject/keccak256": { + "node_modules/@ethersproject/constants": { "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", - "integrity": "sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w==", + "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.6.0.tgz", + "integrity": "sha512-SrdaJx2bK0WQl23nSpV/b1aq293Lh0sUaZT/yYKPDKn4tlAbkH96SPJwIhwSwTsoQQZxuh1jnqsKwyymoiBdWA==", "dev": true, "funding": [ { @@ -987,14 +969,13 @@ } ], "dependencies": { - "@ethersproject/bytes": "^5.6.0", - "js-sha3": "0.8.0" + "@ethersproject/bignumber": "^5.6.0" } }, - "node_modules/@ethersproject/address/node_modules/@ethersproject/logger": { + "node_modules/@ethersproject/contracts": { "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", + "resolved": "https://registry.npmjs.org/@ethersproject/contracts/-/contracts-5.6.0.tgz", + "integrity": "sha512-74Ge7iqTDom0NX+mux8KbRUeJgu1eHZ3iv6utv++sLJG80FVuU9HnHeKVPfjd9s3woFhaFoQGf3B3iH/FrQmgw==", "dev": true, "funding": [ { @@ -1005,18 +986,50 @@ "type": "individual", "url": "https://www.buymeacoffee.com/ricmoo" } - ] + ], + "dependencies": { + "@ethersproject/abi": "^5.6.0", + "@ethersproject/abstract-provider": "^5.6.0", + "@ethersproject/abstract-signer": "^5.6.0", + "@ethersproject/address": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/constants": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/transactions": "^5.6.0" + } }, - "node_modules/@ethersproject/address/node_modules/js-sha3": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", - "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==", - "dev": true + "node_modules/@ethersproject/hash": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.6.0.tgz", + "integrity": "sha512-fFd+k9gtczqlr0/BruWLAu7UAOas1uRRJvOR84uDf4lNZ+bTkGl366qvniUZHKtlqxBRU65MkOobkmvmpHU+jA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-signer": "^5.6.0", + "@ethersproject/address": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/strings": "^5.6.0" + } }, - "node_modules/@ethersproject/base64": { + "node_modules/@ethersproject/hash/node_modules/@ethersproject/keccak256": { "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/base64/-/base64-5.6.0.tgz", - "integrity": "sha512-2Neq8wxJ9xHxCF9TUgmKeSh9BXJ6OAxWfeGWvbauPh8FuHEjamgHilllx8KkSd5ErxyHIX7Xv3Fkcud2kY9ezw==", + "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", + "integrity": "sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w==", "dev": true, "funding": [ { @@ -1029,13 +1042,20 @@ } ], "dependencies": { - "@ethersproject/bytes": "^5.6.0" + "@ethersproject/bytes": "^5.6.0", + "js-sha3": "0.8.0" } }, - "node_modules/@ethersproject/base64/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", + "node_modules/@ethersproject/hash/node_modules/js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==", + "dev": true + }, + "node_modules/@ethersproject/hdnode": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.6.0.tgz", + "integrity": "sha512-61g3Jp3nwDqJcL/p4nugSyLrpl/+ChXIOtCEM8UDmWeB3JCAt5FoLdOMXQc3WWkc0oM2C0aAn6GFqqMcS/mHTw==", "dev": true, "funding": [ { @@ -1048,13 +1068,24 @@ } ], "dependencies": { - "@ethersproject/logger": "^5.6.0" + "@ethersproject/abstract-signer": "^5.6.0", + "@ethersproject/basex": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/pbkdf2": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/sha2": "^5.6.0", + "@ethersproject/signing-key": "^5.6.0", + "@ethersproject/strings": "^5.6.0", + "@ethersproject/transactions": "^5.6.0", + "@ethersproject/wordlists": "^5.6.0" } }, - "node_modules/@ethersproject/base64/node_modules/@ethersproject/logger": { + "node_modules/@ethersproject/json-wallets": { "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", + "resolved": "https://registry.npmjs.org/@ethersproject/json-wallets/-/json-wallets-5.6.0.tgz", + "integrity": "sha512-fmh86jViB9r0ibWXTQipxpAGMiuxoqUf78oqJDlCAJXgnJF024hOOX7qVgqsjtbeoxmcLwpPsXNU0WEe/16qPQ==", "dev": true, "funding": [ { @@ -1065,12 +1096,27 @@ "type": "individual", "url": "https://www.buymeacoffee.com/ricmoo" } - ] + ], + "dependencies": { + "@ethersproject/abstract-signer": "^5.6.0", + "@ethersproject/address": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/hdnode": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/pbkdf2": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/random": "^5.6.0", + "@ethersproject/strings": "^5.6.0", + "@ethersproject/transactions": "^5.6.0", + "aes-js": "3.0.0", + "scrypt-js": "3.0.1" + } }, - "node_modules/@ethersproject/basex": { + "node_modules/@ethersproject/json-wallets/node_modules/@ethersproject/keccak256": { "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.6.0.tgz", - "integrity": "sha512-qN4T+hQd/Md32MoJpc69rOwLYRUXwjTlhHDIeUkUmiN/JyWkkLLMoG0TqvSQKNqZOMgN5stbUYN6ILC+eD7MEQ==", + "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", + "integrity": "sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w==", "dev": true, "funding": [ { @@ -1084,13 +1130,19 @@ ], "dependencies": { "@ethersproject/bytes": "^5.6.0", - "@ethersproject/properties": "^5.6.0" + "js-sha3": "0.8.0" } }, - "node_modules/@ethersproject/basex/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", + "node_modules/@ethersproject/json-wallets/node_modules/js-sha3": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", + "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==", + "dev": true + }, + "node_modules/@ethersproject/keccak256": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.4.0.tgz", + "integrity": "sha512-FBI1plWet+dPUvAzPAeHzRKiPpETQzqSUWR1wXJGHVWi4i8bOSrpC3NwpkPjgeXG7MnugVc1B42VbfnQikyC/A==", "dev": true, "funding": [ { @@ -1103,10 +1155,11 @@ } ], "dependencies": { - "@ethersproject/logger": "^5.6.0" + "@ethersproject/bytes": "^5.4.0", + "js-sha3": "0.5.7" } }, - "node_modules/@ethersproject/basex/node_modules/@ethersproject/logger": { + "node_modules/@ethersproject/logger": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", @@ -1122,31 +1175,10 @@ } ] }, - "node_modules/@ethersproject/bignumber": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.6.0.tgz", - "integrity": "sha512-VziMaXIUHQlHJmkv1dlcd6GY2PmT0khtAqaMctCIDogxkrarMzA9L94KN1NeXqqOfFD6r0sJT3vCTOFSmZ07DA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/bytes": "^5.6.0", - "@ethersproject/logger": "^5.6.0", - "bn.js": "^4.11.9" - } - }, - "node_modules/@ethersproject/bignumber/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", + "node_modules/@ethersproject/networks": { + "version": "5.6.2", + "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.6.2.tgz", + "integrity": "sha512-9uEzaJY7j5wpYGTojGp8U89mSsgQLc40PCMJLMCnFXTs7nhBveZ0t7dbqWUNrepWTszDbFkYD6WlL8DKx5huHA==", "dev": true, "funding": [ { @@ -1162,438 +1194,6 @@ "@ethersproject/logger": "^5.6.0" } }, - "node_modules/@ethersproject/bignumber/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, - "node_modules/@ethersproject/bytes": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.4.0.tgz", - "integrity": "sha512-H60ceqgTHbhzOj4uRc/83SCN9d+BSUnOkrr2intevqdtEMO1JFVZ1XL84OEZV+QjV36OaZYxtnt4lGmxcGsPfA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.4.0" - } - }, - "node_modules/@ethersproject/constants": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.6.0.tgz", - "integrity": "sha512-SrdaJx2bK0WQl23nSpV/b1aq293Lh0sUaZT/yYKPDKn4tlAbkH96SPJwIhwSwTsoQQZxuh1jnqsKwyymoiBdWA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/bignumber": "^5.6.0" - } - }, - "node_modules/@ethersproject/contracts": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/contracts/-/contracts-5.6.0.tgz", - "integrity": "sha512-74Ge7iqTDom0NX+mux8KbRUeJgu1eHZ3iv6utv++sLJG80FVuU9HnHeKVPfjd9s3woFhaFoQGf3B3iH/FrQmgw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/abi": "^5.6.0", - "@ethersproject/abstract-provider": "^5.6.0", - "@ethersproject/abstract-signer": "^5.6.0", - "@ethersproject/address": "^5.6.0", - "@ethersproject/bignumber": "^5.6.0", - "@ethersproject/bytes": "^5.6.0", - "@ethersproject/constants": "^5.6.0", - "@ethersproject/logger": "^5.6.0", - "@ethersproject/properties": "^5.6.0", - "@ethersproject/transactions": "^5.6.0" - } - }, - "node_modules/@ethersproject/contracts/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.6.0" - } - }, - "node_modules/@ethersproject/contracts/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, - "node_modules/@ethersproject/hash": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.6.0.tgz", - "integrity": "sha512-fFd+k9gtczqlr0/BruWLAu7UAOas1uRRJvOR84uDf4lNZ+bTkGl366qvniUZHKtlqxBRU65MkOobkmvmpHU+jA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/abstract-signer": "^5.6.0", - "@ethersproject/address": "^5.6.0", - "@ethersproject/bignumber": "^5.6.0", - "@ethersproject/bytes": "^5.6.0", - "@ethersproject/keccak256": "^5.6.0", - "@ethersproject/logger": "^5.6.0", - "@ethersproject/properties": "^5.6.0", - "@ethersproject/strings": "^5.6.0" - } - }, - "node_modules/@ethersproject/hash/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.6.0" - } - }, - "node_modules/@ethersproject/hash/node_modules/@ethersproject/keccak256": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", - "integrity": "sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/bytes": "^5.6.0", - "js-sha3": "0.8.0" - } - }, - "node_modules/@ethersproject/hash/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, - "node_modules/@ethersproject/hash/node_modules/js-sha3": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", - "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==", - "dev": true - }, - "node_modules/@ethersproject/hdnode": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.6.0.tgz", - "integrity": "sha512-61g3Jp3nwDqJcL/p4nugSyLrpl/+ChXIOtCEM8UDmWeB3JCAt5FoLdOMXQc3WWkc0oM2C0aAn6GFqqMcS/mHTw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/abstract-signer": "^5.6.0", - "@ethersproject/basex": "^5.6.0", - "@ethersproject/bignumber": "^5.6.0", - "@ethersproject/bytes": "^5.6.0", - "@ethersproject/logger": "^5.6.0", - "@ethersproject/pbkdf2": "^5.6.0", - "@ethersproject/properties": "^5.6.0", - "@ethersproject/sha2": "^5.6.0", - "@ethersproject/signing-key": "^5.6.0", - "@ethersproject/strings": "^5.6.0", - "@ethersproject/transactions": "^5.6.0", - "@ethersproject/wordlists": "^5.6.0" - } - }, - "node_modules/@ethersproject/hdnode/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.6.0" - } - }, - "node_modules/@ethersproject/hdnode/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, - "node_modules/@ethersproject/json-wallets": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/json-wallets/-/json-wallets-5.6.0.tgz", - "integrity": "sha512-fmh86jViB9r0ibWXTQipxpAGMiuxoqUf78oqJDlCAJXgnJF024hOOX7qVgqsjtbeoxmcLwpPsXNU0WEe/16qPQ==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/abstract-signer": "^5.6.0", - "@ethersproject/address": "^5.6.0", - "@ethersproject/bytes": "^5.6.0", - "@ethersproject/hdnode": "^5.6.0", - "@ethersproject/keccak256": "^5.6.0", - "@ethersproject/logger": "^5.6.0", - "@ethersproject/pbkdf2": "^5.6.0", - "@ethersproject/properties": "^5.6.0", - "@ethersproject/random": "^5.6.0", - "@ethersproject/strings": "^5.6.0", - "@ethersproject/transactions": "^5.6.0", - "aes-js": "3.0.0", - "scrypt-js": "3.0.1" - } - }, - "node_modules/@ethersproject/json-wallets/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.6.0" - } - }, - "node_modules/@ethersproject/json-wallets/node_modules/@ethersproject/keccak256": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", - "integrity": "sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/bytes": "^5.6.0", - "js-sha3": "0.8.0" - } - }, - "node_modules/@ethersproject/json-wallets/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, - "node_modules/@ethersproject/json-wallets/node_modules/js-sha3": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", - "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==", - "dev": true - }, - "node_modules/@ethersproject/keccak256": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.4.0.tgz", - "integrity": "sha512-FBI1plWet+dPUvAzPAeHzRKiPpETQzqSUWR1wXJGHVWi4i8bOSrpC3NwpkPjgeXG7MnugVc1B42VbfnQikyC/A==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/bytes": "^5.4.0", - "js-sha3": "0.5.7" - } - }, - "node_modules/@ethersproject/logger": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.4.1.tgz", - "integrity": "sha512-DZ+bRinnYLPw1yAC64oRl0QyVZj43QeHIhVKfD/+YwSz4wsv1pfwb5SOFjz+r710YEWzU6LrhuSjpSO+6PeE4A==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, - "node_modules/@ethersproject/networks": { - "version": "5.6.2", - "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.6.2.tgz", - "integrity": "sha512-9uEzaJY7j5wpYGTojGp8U89mSsgQLc40PCMJLMCnFXTs7nhBveZ0t7dbqWUNrepWTszDbFkYD6WlL8DKx5huHA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.6.0" - } - }, - "node_modules/@ethersproject/networks/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, "node_modules/@ethersproject/pbkdf2": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/pbkdf2/-/pbkdf2-5.6.0.tgz", @@ -1614,41 +1214,6 @@ "@ethersproject/sha2": "^5.6.0" } }, - "node_modules/@ethersproject/pbkdf2/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.6.0" - } - }, - "node_modules/@ethersproject/pbkdf2/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, "node_modules/@ethersproject/properties": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.6.0.tgz", @@ -1668,26 +1233,10 @@ "@ethersproject/logger": "^5.6.0" } }, - "node_modules/@ethersproject/properties/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, "node_modules/@ethersproject/providers": { - "version": "5.6.4", - "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.6.4.tgz", - "integrity": "sha512-WAdknnaZ52hpHV3qPiJmKx401BLpup47h36Axxgre9zT+doa/4GC/Ne48ICPxTm0BqndpToHjpLP1ZnaxyE+vw==", + "version": "5.6.5", + "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.6.5.tgz", + "integrity": "sha512-TRS+c2Ud+cMpWodmGAc9xbnYRPWzRNYt2zkCSnj58nJoamBQ6x4cUbBeo0lTC3y+6RDVIBeJv18OqsDbSktLVg==", "dev": true, "funding": [ { @@ -1721,41 +1270,6 @@ "ws": "7.4.6" } }, - "node_modules/@ethersproject/providers/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.6.0" - } - }, - "node_modules/@ethersproject/providers/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, "node_modules/@ethersproject/random": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/random/-/random-5.6.0.tgz", @@ -1776,41 +1290,6 @@ "@ethersproject/logger": "^5.6.0" } }, - "node_modules/@ethersproject/random/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.6.0" - } - }, - "node_modules/@ethersproject/random/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, "node_modules/@ethersproject/rlp": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.6.0.tgz", @@ -1831,41 +1310,6 @@ "@ethersproject/logger": "^5.6.0" } }, - "node_modules/@ethersproject/rlp/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.6.0" - } - }, - "node_modules/@ethersproject/rlp/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, "node_modules/@ethersproject/sha2": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/sha2/-/sha2-5.6.0.tgz", @@ -1884,131 +1328,13 @@ "dependencies": { "@ethersproject/bytes": "^5.6.0", "@ethersproject/logger": "^5.6.0", - "hash.js": "1.1.7" - } - }, - "node_modules/@ethersproject/sha2/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.6.0" - } - }, - "node_modules/@ethersproject/sha2/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, - "node_modules/@ethersproject/signing-key": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.6.0.tgz", - "integrity": "sha512-S+njkhowmLeUu/r7ir8n78OUKx63kBdMCPssePS89So1TH4hZqnWFsThEd/GiXYp9qMxVrydf7KdM9MTGPFukA==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/bytes": "^5.6.0", - "@ethersproject/logger": "^5.6.0", - "@ethersproject/properties": "^5.6.0", - "bn.js": "^4.11.9", - "elliptic": "6.5.4", - "hash.js": "1.1.7" - } - }, - "node_modules/@ethersproject/signing-key/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.6.0" - } - }, - "node_modules/@ethersproject/signing-key/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, - "node_modules/@ethersproject/solidity": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/solidity/-/solidity-5.6.0.tgz", - "integrity": "sha512-YwF52vTNd50kjDzqKaoNNbC/r9kMDPq3YzDWmsjFTRBcIF1y4JCQJ8gB30wsTfHbaxgxelI5BfxQSxD/PbJOww==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/bignumber": "^5.6.0", - "@ethersproject/bytes": "^5.6.0", - "@ethersproject/keccak256": "^5.6.0", - "@ethersproject/logger": "^5.6.0", - "@ethersproject/sha2": "^5.6.0", - "@ethersproject/strings": "^5.6.0" + "hash.js": "1.1.7" } }, - "node_modules/@ethersproject/solidity/node_modules/@ethersproject/bytes": { + "node_modules/@ethersproject/signing-key": { "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", + "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.6.1.tgz", + "integrity": "sha512-XvqQ20DH0D+bS3qlrrgh+axRMth5kD1xuvqUQUTeezxUTXBOeR6hWz2/C6FBEu39FRytyybIWrYf7YLSAKr1LQ==", "dev": true, "funding": [ { @@ -2021,13 +1347,18 @@ } ], "dependencies": { - "@ethersproject/logger": "^5.6.0" + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "bn.js": "^4.11.9", + "elliptic": "6.5.4", + "hash.js": "1.1.7" } }, - "node_modules/@ethersproject/solidity/node_modules/@ethersproject/keccak256": { + "node_modules/@ethersproject/solidity": { "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", - "integrity": "sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w==", + "resolved": "https://registry.npmjs.org/@ethersproject/solidity/-/solidity-5.6.0.tgz", + "integrity": "sha512-YwF52vTNd50kjDzqKaoNNbC/r9kMDPq3YzDWmsjFTRBcIF1y4JCQJ8gB30wsTfHbaxgxelI5BfxQSxD/PbJOww==", "dev": true, "funding": [ { @@ -2040,14 +1371,18 @@ } ], "dependencies": { + "@ethersproject/bignumber": "^5.6.0", "@ethersproject/bytes": "^5.6.0", - "js-sha3": "0.8.0" + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/sha2": "^5.6.0", + "@ethersproject/strings": "^5.6.0" } }, - "node_modules/@ethersproject/solidity/node_modules/@ethersproject/logger": { + "node_modules/@ethersproject/solidity/node_modules/@ethersproject/keccak256": { "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", + "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", + "integrity": "sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w==", "dev": true, "funding": [ { @@ -2058,7 +1393,11 @@ "type": "individual", "url": "https://www.buymeacoffee.com/ricmoo" } - ] + ], + "dependencies": { + "@ethersproject/bytes": "^5.6.0", + "js-sha3": "0.8.0" + } }, "node_modules/@ethersproject/solidity/node_modules/js-sha3": { "version": "0.8.0", @@ -2087,41 +1426,6 @@ "@ethersproject/logger": "^5.6.0" } }, - "node_modules/@ethersproject/strings/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.6.0" - } - }, - "node_modules/@ethersproject/strings/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, "node_modules/@ethersproject/transactions": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.6.0.tgz", @@ -2149,25 +1453,6 @@ "@ethersproject/signing-key": "^5.6.0" } }, - "node_modules/@ethersproject/transactions/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.6.0" - } - }, "node_modules/@ethersproject/transactions/node_modules/@ethersproject/keccak256": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", @@ -2188,22 +1473,6 @@ "js-sha3": "0.8.0" } }, - "node_modules/@ethersproject/transactions/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, "node_modules/@ethersproject/transactions/node_modules/js-sha3": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", @@ -2231,22 +1500,6 @@ "@ethersproject/logger": "^5.6.0" } }, - "node_modules/@ethersproject/units/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, "node_modules/@ethersproject/wallet": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/wallet/-/wallet-5.6.0.tgz", @@ -2280,25 +1533,6 @@ "@ethersproject/wordlists": "^5.6.0" } }, - "node_modules/@ethersproject/wallet/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.6.0" - } - }, "node_modules/@ethersproject/wallet/node_modules/@ethersproject/keccak256": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", @@ -2319,22 +1553,6 @@ "js-sha3": "0.8.0" } }, - "node_modules/@ethersproject/wallet/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, "node_modules/@ethersproject/wallet/node_modules/js-sha3": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", @@ -2364,41 +1582,6 @@ "@ethersproject/strings": "^5.6.0" } }, - "node_modules/@ethersproject/web/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.6.0" - } - }, - "node_modules/@ethersproject/web/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, "node_modules/@ethersproject/wordlists": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/wordlists/-/wordlists-5.6.0.tgz", @@ -2422,41 +1605,6 @@ "@ethersproject/strings": "^5.6.0" } }, - "node_modules/@ethersproject/wordlists/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.6.0" - } - }, - "node_modules/@ethersproject/wordlists/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, "node_modules/@hapi/hoek": { "version": "9.2.1", "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.2.1.tgz", @@ -2782,6 +1930,17 @@ "@jridgewell/sourcemap-codec": "^1.4.10" } }, + "node_modules/@noble/secp256k1": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.5.5.tgz", + "integrity": "sha512-sZ1W6gQzYnu45wPrWx8D3kwI2/U29VYTx9OjbDAd7jwRItJ0cSTMPRL/C8AWZFn9kWFLQGqEXVEE86w4Z8LpIQ==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ] + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -2985,9 +2144,9 @@ } }, "node_modules/@types/eslint": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.1.tgz", - "integrity": "sha512-GE44+DNEyxxh2Kc6ro/VkIj+9ma0pO0bwv9+uHSyBrikYOHr8zYcdPvnBOp1aw8s+CjRvuSx7CyWqRrNFQ59mA==", + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.2.tgz", + "integrity": "sha512-Z1nseZON+GEnFjJc04sv4NSALGjhFwy6K0HXt7qsn5ArfAKtb63dXNJHf+1YW6IpOIYRBGUbu3GwJdj8DGnCjA==", "dev": true, "dependencies": { "@types/estree": "*", @@ -3171,14 +2330,14 @@ "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.21.0.tgz", - "integrity": "sha512-fTU85q8v5ZLpoZEyn/u1S2qrFOhi33Edo2CZ0+q1gDaWWm0JuPh3bgOyU8lM0edIEYgKLDkPFiZX2MOupgjlyg==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.22.0.tgz", + "integrity": "sha512-YCiy5PUzpAeOPGQ7VSGDEY2NeYUV1B0swde2e0HzokRsHBYjSdF6DZ51OuRZxVPHx0032lXGLvOMls91D8FXlg==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "5.21.0", - "@typescript-eslint/type-utils": "5.21.0", - "@typescript-eslint/utils": "5.21.0", + "@typescript-eslint/scope-manager": "5.22.0", + "@typescript-eslint/type-utils": "5.22.0", + "@typescript-eslint/utils": "5.22.0", "debug": "^4.3.2", "functional-red-black-tree": "^1.0.1", "ignore": "^5.1.8", @@ -3204,14 +2363,14 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.21.0.tgz", - "integrity": "sha512-8RUwTO77hstXUr3pZoWZbRQUxXcSXafZ8/5gpnQCfXvgmP9gpNlRGlWzvfbEQ14TLjmtU8eGnONkff8U2ui2Eg==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.22.0.tgz", + "integrity": "sha512-piwC4krUpRDqPaPbFaycN70KCP87+PC5WZmrWs+DlVOxxmF+zI6b6hETv7Quy4s9wbkV16ikMeZgXsvzwI3icQ==", "dev": true, "dependencies": { - "@typescript-eslint/scope-manager": "5.21.0", - "@typescript-eslint/types": "5.21.0", - "@typescript-eslint/typescript-estree": "5.21.0", + "@typescript-eslint/scope-manager": "5.22.0", + "@typescript-eslint/types": "5.22.0", + "@typescript-eslint/typescript-estree": "5.22.0", "debug": "^4.3.2" }, "engines": { @@ -3231,13 +2390,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.21.0.tgz", - "integrity": "sha512-XTX0g0IhvzcH/e3393SvjRCfYQxgxtYzL3UREteUneo72EFlt7UNoiYnikUtmGVobTbhUDByhJ4xRBNe+34kOQ==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.22.0.tgz", + "integrity": "sha512-yA9G5NJgV5esANJCO0oF15MkBO20mIskbZ8ijfmlKIvQKg0ynVKfHZ15/nhAJN5m8Jn3X5qkwriQCiUntC9AbA==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.21.0", - "@typescript-eslint/visitor-keys": "5.21.0" + "@typescript-eslint/types": "5.22.0", + "@typescript-eslint/visitor-keys": "5.22.0" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -3248,12 +2407,12 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.21.0.tgz", - "integrity": "sha512-MxmLZj0tkGlkcZCSE17ORaHl8Th3JQwBzyXL/uvC6sNmu128LsgjTX0NIzy+wdH2J7Pd02GN8FaoudJntFvSOw==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.22.0.tgz", + "integrity": "sha512-iqfLZIsZhK2OEJ4cQ01xOq3NaCuG5FQRKyHicA3xhZxMgaxQazLUHbH/B2k9y5i7l3+o+B5ND9Mf1AWETeMISA==", "dev": true, "dependencies": { - "@typescript-eslint/utils": "5.21.0", + "@typescript-eslint/utils": "5.22.0", "debug": "^4.3.2", "tsutils": "^3.21.0" }, @@ -3274,9 +2433,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.21.0.tgz", - "integrity": "sha512-XnOOo5Wc2cBlq8Lh5WNvAgHzpjnEzxn4CJBwGkcau7b/tZ556qrWXQz4DJyChYg8JZAD06kczrdgFPpEQZfDsA==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.22.0.tgz", + "integrity": "sha512-T7owcXW4l0v7NTijmjGWwWf/1JqdlWiBzPqzAWhobxft0SiEvMJB56QXmeCQjrPuM8zEfGUKyPQr/L8+cFUBLw==", "dev": true, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -3287,13 +2446,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.21.0.tgz", - "integrity": "sha512-Y8Y2T2FNvm08qlcoSMoNchh9y2Uj3QmjtwNMdRQkcFG7Muz//wfJBGBxh8R7HAGQFpgYpdHqUpEoPQk+q9Kjfg==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.22.0.tgz", + "integrity": "sha512-EyBEQxvNjg80yinGE2xdhpDYm41so/1kOItl0qrjIiJ1kX/L/L8WWGmJg8ni6eG3DwqmOzDqOhe6763bF92nOw==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.21.0", - "@typescript-eslint/visitor-keys": "5.21.0", + "@typescript-eslint/types": "5.22.0", + "@typescript-eslint/visitor-keys": "5.22.0", "debug": "^4.3.2", "globby": "^11.0.4", "is-glob": "^4.0.3", @@ -3314,15 +2473,15 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.21.0.tgz", - "integrity": "sha512-q/emogbND9wry7zxy7VYri+7ydawo2HDZhRZ5k6yggIvXa7PvBbAAZ4PFH/oZLem72ezC4Pr63rJvDK/sTlL8Q==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.22.0.tgz", + "integrity": "sha512-HodsGb037iobrWSUMS7QH6Hl1kppikjA1ELiJlNSTYf/UdMEwzgj0WIp+lBNb6WZ3zTwb0tEz51j0Wee3iJ3wQ==", "dev": true, "dependencies": { "@types/json-schema": "^7.0.9", - "@typescript-eslint/scope-manager": "5.21.0", - "@typescript-eslint/types": "5.21.0", - "@typescript-eslint/typescript-estree": "5.21.0", + "@typescript-eslint/scope-manager": "5.22.0", + "@typescript-eslint/types": "5.22.0", + "@typescript-eslint/typescript-estree": "5.22.0", "eslint-scope": "^5.1.1", "eslint-utils": "^3.0.0" }, @@ -3338,12 +2497,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.21.0.tgz", - "integrity": "sha512-SX8jNN+iHqAF0riZQMkm7e8+POXa/fXw5cxL+gjpyP+FI+JVNhii53EmQgDAfDcBpFekYSlO0fGytMQwRiMQCA==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.22.0.tgz", + "integrity": "sha512-DbgTqn2Dv5RFWluG88tn0pP6Ex0ROF+dpDO1TNNZdRtLjUr6bdznjA6f/qNqJLjd2PgguAES2Zgxh/JzwzETDg==", "dev": true, "dependencies": { - "@typescript-eslint/types": "5.21.0", + "@typescript-eslint/types": "5.22.0", "eslint-visitor-keys": "^3.0.0" }, "engines": { @@ -5622,9 +4781,9 @@ "dev": true }, "node_modules/ethers": { - "version": "5.6.4", - "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.6.4.tgz", - "integrity": "sha512-62UIfxAQXdf67TeeOaoOoPctm5hUlYgfd0iW3wxfj7qRYKDcvvy0f+sJ3W2/Pyx77R8dblvejA8jokj+lS+ATQ==", + "version": "5.6.5", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.6.5.tgz", + "integrity": "sha512-9CTmplO9bv0s/aPw3HB3txGzKz3tUSI2EfO4dJo0W2WvaEq1ArgsEX6obV+bj5X3yY+Zgb1kAux8TDtJKe1FaA==", "dev": true, "funding": [ { @@ -5651,41 +4810,22 @@ "@ethersproject/hdnode": "5.6.0", "@ethersproject/json-wallets": "5.6.0", "@ethersproject/keccak256": "5.6.0", - "@ethersproject/logger": "5.6.0", - "@ethersproject/networks": "5.6.2", - "@ethersproject/pbkdf2": "5.6.0", - "@ethersproject/properties": "5.6.0", - "@ethersproject/providers": "5.6.4", - "@ethersproject/random": "5.6.0", - "@ethersproject/rlp": "5.6.0", - "@ethersproject/sha2": "5.6.0", - "@ethersproject/signing-key": "5.6.0", - "@ethersproject/solidity": "5.6.0", - "@ethersproject/strings": "5.6.0", - "@ethersproject/transactions": "5.6.0", - "@ethersproject/units": "5.6.0", - "@ethersproject/wallet": "5.6.0", - "@ethersproject/web": "5.6.0", - "@ethersproject/wordlists": "5.6.0" - } - }, - "node_modules/ethers/node_modules/@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ], - "dependencies": { - "@ethersproject/logger": "^5.6.0" + "@ethersproject/logger": "5.6.0", + "@ethersproject/networks": "5.6.2", + "@ethersproject/pbkdf2": "5.6.0", + "@ethersproject/properties": "5.6.0", + "@ethersproject/providers": "5.6.5", + "@ethersproject/random": "5.6.0", + "@ethersproject/rlp": "5.6.0", + "@ethersproject/sha2": "5.6.0", + "@ethersproject/signing-key": "5.6.1", + "@ethersproject/solidity": "5.6.0", + "@ethersproject/strings": "5.6.0", + "@ethersproject/transactions": "5.6.0", + "@ethersproject/units": "5.6.0", + "@ethersproject/wallet": "5.6.0", + "@ethersproject/web": "5.6.0", + "@ethersproject/wordlists": "5.6.0" } }, "node_modules/ethers/node_modules/@ethersproject/keccak256": { @@ -5708,22 +4848,6 @@ "js-sha3": "0.8.0" } }, - "node_modules/ethers/node_modules/@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" - }, - { - "type": "individual", - "url": "https://www.buymeacoffee.com/ricmoo" - } - ] - }, "node_modules/ethers/node_modules/js-sha3": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", @@ -12752,15 +11876,6 @@ "@ethersproject/strings": "^5.6.0" }, "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, "@ethersproject/keccak256": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", @@ -12771,12 +11886,6 @@ "js-sha3": "0.8.0" } }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - }, "js-sha3": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", @@ -12798,23 +11907,6 @@ "@ethersproject/properties": "^5.6.0", "@ethersproject/transactions": "^5.6.0", "@ethersproject/web": "^5.6.0" - }, - "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@ethersproject/abstract-signer": { @@ -12828,23 +11920,6 @@ "@ethersproject/bytes": "^5.6.0", "@ethersproject/logger": "^5.6.0", "@ethersproject/properties": "^5.6.0" - }, - "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@ethersproject/address": { @@ -12860,15 +11935,6 @@ "@ethersproject/rlp": "^5.6.0" }, "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, "@ethersproject/keccak256": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", @@ -12879,12 +11945,6 @@ "js-sha3": "0.8.0" } }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - }, "js-sha3": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", @@ -12900,23 +11960,6 @@ "dev": true, "requires": { "@ethersproject/bytes": "^5.6.0" - }, - "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@ethersproject/basex": { @@ -12927,23 +11970,6 @@ "requires": { "@ethersproject/bytes": "^5.6.0", "@ethersproject/properties": "^5.6.0" - }, - "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@ethersproject/bignumber": { @@ -12955,32 +11981,15 @@ "@ethersproject/bytes": "^5.6.0", "@ethersproject/logger": "^5.6.0", "bn.js": "^4.11.9" - }, - "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@ethersproject/bytes": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.4.0.tgz", - "integrity": "sha512-H60ceqgTHbhzOj4uRc/83SCN9d+BSUnOkrr2intevqdtEMO1JFVZ1XL84OEZV+QjV36OaZYxtnt4lGmxcGsPfA==", + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", + "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", "dev": true, "requires": { - "@ethersproject/logger": "^5.4.0" + "@ethersproject/logger": "^5.6.0" } }, "@ethersproject/constants": { @@ -13008,23 +12017,6 @@ "@ethersproject/logger": "^5.6.0", "@ethersproject/properties": "^5.6.0", "@ethersproject/transactions": "^5.6.0" - }, - "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@ethersproject/hash": { @@ -13043,15 +12035,6 @@ "@ethersproject/strings": "^5.6.0" }, "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, "@ethersproject/keccak256": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", @@ -13062,12 +12045,6 @@ "js-sha3": "0.8.0" } }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - }, "js-sha3": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", @@ -13094,23 +12071,6 @@ "@ethersproject/strings": "^5.6.0", "@ethersproject/transactions": "^5.6.0", "@ethersproject/wordlists": "^5.6.0" - }, - "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@ethersproject/json-wallets": { @@ -13134,15 +12094,6 @@ "scrypt-js": "3.0.1" }, "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, "@ethersproject/keccak256": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", @@ -13153,12 +12104,6 @@ "js-sha3": "0.8.0" } }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - }, "js-sha3": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", @@ -13178,9 +12123,9 @@ } }, "@ethersproject/logger": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.4.1.tgz", - "integrity": "sha512-DZ+bRinnYLPw1yAC64oRl0QyVZj43QeHIhVKfD/+YwSz4wsv1pfwb5SOFjz+r710YEWzU6LrhuSjpSO+6PeE4A==", + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", + "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", "dev": true }, "@ethersproject/networks": { @@ -13190,14 +12135,6 @@ "dev": true, "requires": { "@ethersproject/logger": "^5.6.0" - }, - "dependencies": { - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@ethersproject/pbkdf2": { @@ -13208,23 +12145,6 @@ "requires": { "@ethersproject/bytes": "^5.6.0", "@ethersproject/sha2": "^5.6.0" - }, - "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@ethersproject/properties": { @@ -13234,20 +12154,12 @@ "dev": true, "requires": { "@ethersproject/logger": "^5.6.0" - }, - "dependencies": { - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@ethersproject/providers": { - "version": "5.6.4", - "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.6.4.tgz", - "integrity": "sha512-WAdknnaZ52hpHV3qPiJmKx401BLpup47h36Axxgre9zT+doa/4GC/Ne48ICPxTm0BqndpToHjpLP1ZnaxyE+vw==", + "version": "5.6.5", + "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.6.5.tgz", + "integrity": "sha512-TRS+c2Ud+cMpWodmGAc9xbnYRPWzRNYt2zkCSnj58nJoamBQ6x4cUbBeo0lTC3y+6RDVIBeJv18OqsDbSktLVg==", "dev": true, "requires": { "@ethersproject/abstract-provider": "^5.6.0", @@ -13269,23 +12181,6 @@ "@ethersproject/web": "^5.6.0", "bech32": "1.1.4", "ws": "7.4.6" - }, - "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@ethersproject/random": { @@ -13296,23 +12191,6 @@ "requires": { "@ethersproject/bytes": "^5.6.0", "@ethersproject/logger": "^5.6.0" - }, - "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@ethersproject/rlp": { @@ -13323,23 +12201,6 @@ "requires": { "@ethersproject/bytes": "^5.6.0", "@ethersproject/logger": "^5.6.0" - }, - "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@ethersproject/sha2": { @@ -13351,29 +12212,12 @@ "@ethersproject/bytes": "^5.6.0", "@ethersproject/logger": "^5.6.0", "hash.js": "1.1.7" - }, - "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@ethersproject/signing-key": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.6.0.tgz", - "integrity": "sha512-S+njkhowmLeUu/r7ir8n78OUKx63kBdMCPssePS89So1TH4hZqnWFsThEd/GiXYp9qMxVrydf7KdM9MTGPFukA==", + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.6.1.tgz", + "integrity": "sha512-XvqQ20DH0D+bS3qlrrgh+axRMth5kD1xuvqUQUTeezxUTXBOeR6hWz2/C6FBEu39FRytyybIWrYf7YLSAKr1LQ==", "dev": true, "requires": { "@ethersproject/bytes": "^5.6.0", @@ -13382,23 +12226,6 @@ "bn.js": "^4.11.9", "elliptic": "6.5.4", "hash.js": "1.1.7" - }, - "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@ethersproject/solidity": { @@ -13415,15 +12242,6 @@ "@ethersproject/strings": "^5.6.0" }, "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, "@ethersproject/keccak256": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", @@ -13434,12 +12252,6 @@ "js-sha3": "0.8.0" } }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - }, "js-sha3": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", @@ -13457,23 +12269,6 @@ "@ethersproject/bytes": "^5.6.0", "@ethersproject/constants": "^5.6.0", "@ethersproject/logger": "^5.6.0" - }, - "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@ethersproject/transactions": { @@ -13493,15 +12288,6 @@ "@ethersproject/signing-key": "^5.6.0" }, "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, "@ethersproject/keccak256": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", @@ -13512,12 +12298,6 @@ "js-sha3": "0.8.0" } }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - }, "js-sha3": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", @@ -13535,14 +12315,6 @@ "@ethersproject/bignumber": "^5.6.0", "@ethersproject/constants": "^5.6.0", "@ethersproject/logger": "^5.6.0" - }, - "dependencies": { - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@ethersproject/wallet": { @@ -13568,15 +12340,6 @@ "@ethersproject/wordlists": "^5.6.0" }, "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, "@ethersproject/keccak256": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", @@ -13587,12 +12350,6 @@ "js-sha3": "0.8.0" } }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - }, "js-sha3": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", @@ -13612,23 +12369,6 @@ "@ethersproject/logger": "^5.6.0", "@ethersproject/properties": "^5.6.0", "@ethersproject/strings": "^5.6.0" - }, - "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@ethersproject/wordlists": { @@ -13642,23 +12382,6 @@ "@ethersproject/logger": "^5.6.0", "@ethersproject/properties": "^5.6.0", "@ethersproject/strings": "^5.6.0" - }, - "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - } } }, "@hapi/hoek": { @@ -13925,6 +12648,11 @@ "@jridgewell/sourcemap-codec": "^1.4.10" } }, + "@noble/secp256k1": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.5.5.tgz", + "integrity": "sha512-sZ1W6gQzYnu45wPrWx8D3kwI2/U29VYTx9OjbDAd7jwRItJ0cSTMPRL/C8AWZFn9kWFLQGqEXVEE86w4Z8LpIQ==" + }, "@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -14110,9 +12838,9 @@ } }, "@types/eslint": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.1.tgz", - "integrity": "sha512-GE44+DNEyxxh2Kc6ro/VkIj+9ma0pO0bwv9+uHSyBrikYOHr8zYcdPvnBOp1aw8s+CjRvuSx7CyWqRrNFQ59mA==", + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.2.tgz", + "integrity": "sha512-Z1nseZON+GEnFjJc04sv4NSALGjhFwy6K0HXt7qsn5ArfAKtb63dXNJHf+1YW6IpOIYRBGUbu3GwJdj8DGnCjA==", "dev": true, "requires": { "@types/estree": "*", @@ -14296,14 +13024,14 @@ "dev": true }, "@typescript-eslint/eslint-plugin": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.21.0.tgz", - "integrity": "sha512-fTU85q8v5ZLpoZEyn/u1S2qrFOhi33Edo2CZ0+q1gDaWWm0JuPh3bgOyU8lM0edIEYgKLDkPFiZX2MOupgjlyg==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.22.0.tgz", + "integrity": "sha512-YCiy5PUzpAeOPGQ7VSGDEY2NeYUV1B0swde2e0HzokRsHBYjSdF6DZ51OuRZxVPHx0032lXGLvOMls91D8FXlg==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "5.21.0", - "@typescript-eslint/type-utils": "5.21.0", - "@typescript-eslint/utils": "5.21.0", + "@typescript-eslint/scope-manager": "5.22.0", + "@typescript-eslint/type-utils": "5.22.0", + "@typescript-eslint/utils": "5.22.0", "debug": "^4.3.2", "functional-red-black-tree": "^1.0.1", "ignore": "^5.1.8", @@ -14313,52 +13041,52 @@ } }, "@typescript-eslint/parser": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.21.0.tgz", - "integrity": "sha512-8RUwTO77hstXUr3pZoWZbRQUxXcSXafZ8/5gpnQCfXvgmP9gpNlRGlWzvfbEQ14TLjmtU8eGnONkff8U2ui2Eg==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.22.0.tgz", + "integrity": "sha512-piwC4krUpRDqPaPbFaycN70KCP87+PC5WZmrWs+DlVOxxmF+zI6b6hETv7Quy4s9wbkV16ikMeZgXsvzwI3icQ==", "dev": true, "requires": { - "@typescript-eslint/scope-manager": "5.21.0", - "@typescript-eslint/types": "5.21.0", - "@typescript-eslint/typescript-estree": "5.21.0", + "@typescript-eslint/scope-manager": "5.22.0", + "@typescript-eslint/types": "5.22.0", + "@typescript-eslint/typescript-estree": "5.22.0", "debug": "^4.3.2" } }, "@typescript-eslint/scope-manager": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.21.0.tgz", - "integrity": "sha512-XTX0g0IhvzcH/e3393SvjRCfYQxgxtYzL3UREteUneo72EFlt7UNoiYnikUtmGVobTbhUDByhJ4xRBNe+34kOQ==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.22.0.tgz", + "integrity": "sha512-yA9G5NJgV5esANJCO0oF15MkBO20mIskbZ8ijfmlKIvQKg0ynVKfHZ15/nhAJN5m8Jn3X5qkwriQCiUntC9AbA==", "dev": true, "requires": { - "@typescript-eslint/types": "5.21.0", - "@typescript-eslint/visitor-keys": "5.21.0" + "@typescript-eslint/types": "5.22.0", + "@typescript-eslint/visitor-keys": "5.22.0" } }, "@typescript-eslint/type-utils": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.21.0.tgz", - "integrity": "sha512-MxmLZj0tkGlkcZCSE17ORaHl8Th3JQwBzyXL/uvC6sNmu128LsgjTX0NIzy+wdH2J7Pd02GN8FaoudJntFvSOw==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.22.0.tgz", + "integrity": "sha512-iqfLZIsZhK2OEJ4cQ01xOq3NaCuG5FQRKyHicA3xhZxMgaxQazLUHbH/B2k9y5i7l3+o+B5ND9Mf1AWETeMISA==", "dev": true, "requires": { - "@typescript-eslint/utils": "5.21.0", + "@typescript-eslint/utils": "5.22.0", "debug": "^4.3.2", "tsutils": "^3.21.0" } }, "@typescript-eslint/types": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.21.0.tgz", - "integrity": "sha512-XnOOo5Wc2cBlq8Lh5WNvAgHzpjnEzxn4CJBwGkcau7b/tZ556qrWXQz4DJyChYg8JZAD06kczrdgFPpEQZfDsA==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.22.0.tgz", + "integrity": "sha512-T7owcXW4l0v7NTijmjGWwWf/1JqdlWiBzPqzAWhobxft0SiEvMJB56QXmeCQjrPuM8zEfGUKyPQr/L8+cFUBLw==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.21.0.tgz", - "integrity": "sha512-Y8Y2T2FNvm08qlcoSMoNchh9y2Uj3QmjtwNMdRQkcFG7Muz//wfJBGBxh8R7HAGQFpgYpdHqUpEoPQk+q9Kjfg==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.22.0.tgz", + "integrity": "sha512-EyBEQxvNjg80yinGE2xdhpDYm41so/1kOItl0qrjIiJ1kX/L/L8WWGmJg8ni6eG3DwqmOzDqOhe6763bF92nOw==", "dev": true, "requires": { - "@typescript-eslint/types": "5.21.0", - "@typescript-eslint/visitor-keys": "5.21.0", + "@typescript-eslint/types": "5.22.0", + "@typescript-eslint/visitor-keys": "5.22.0", "debug": "^4.3.2", "globby": "^11.0.4", "is-glob": "^4.0.3", @@ -14367,26 +13095,26 @@ } }, "@typescript-eslint/utils": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.21.0.tgz", - "integrity": "sha512-q/emogbND9wry7zxy7VYri+7ydawo2HDZhRZ5k6yggIvXa7PvBbAAZ4PFH/oZLem72ezC4Pr63rJvDK/sTlL8Q==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.22.0.tgz", + "integrity": "sha512-HodsGb037iobrWSUMS7QH6Hl1kppikjA1ELiJlNSTYf/UdMEwzgj0WIp+lBNb6WZ3zTwb0tEz51j0Wee3iJ3wQ==", "dev": true, "requires": { "@types/json-schema": "^7.0.9", - "@typescript-eslint/scope-manager": "5.21.0", - "@typescript-eslint/types": "5.21.0", - "@typescript-eslint/typescript-estree": "5.21.0", + "@typescript-eslint/scope-manager": "5.22.0", + "@typescript-eslint/types": "5.22.0", + "@typescript-eslint/typescript-estree": "5.22.0", "eslint-scope": "^5.1.1", "eslint-utils": "^3.0.0" } }, "@typescript-eslint/visitor-keys": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.21.0.tgz", - "integrity": "sha512-SX8jNN+iHqAF0riZQMkm7e8+POXa/fXw5cxL+gjpyP+FI+JVNhii53EmQgDAfDcBpFekYSlO0fGytMQwRiMQCA==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.22.0.tgz", + "integrity": "sha512-DbgTqn2Dv5RFWluG88tn0pP6Ex0ROF+dpDO1TNNZdRtLjUr6bdznjA6f/qNqJLjd2PgguAES2Zgxh/JzwzETDg==", "dev": true, "requires": { - "@typescript-eslint/types": "5.21.0", + "@typescript-eslint/types": "5.22.0", "eslint-visitor-keys": "^3.0.0" } }, @@ -16195,9 +14923,9 @@ } }, "ethers": { - "version": "5.6.4", - "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.6.4.tgz", - "integrity": "sha512-62UIfxAQXdf67TeeOaoOoPctm5hUlYgfd0iW3wxfj7qRYKDcvvy0f+sJ3W2/Pyx77R8dblvejA8jokj+lS+ATQ==", + "version": "5.6.5", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.6.5.tgz", + "integrity": "sha512-9CTmplO9bv0s/aPw3HB3txGzKz3tUSI2EfO4dJo0W2WvaEq1ArgsEX6obV+bj5X3yY+Zgb1kAux8TDtJKe1FaA==", "dev": true, "requires": { "@ethersproject/abi": "5.6.1", @@ -16218,11 +14946,11 @@ "@ethersproject/networks": "5.6.2", "@ethersproject/pbkdf2": "5.6.0", "@ethersproject/properties": "5.6.0", - "@ethersproject/providers": "5.6.4", + "@ethersproject/providers": "5.6.5", "@ethersproject/random": "5.6.0", "@ethersproject/rlp": "5.6.0", "@ethersproject/sha2": "5.6.0", - "@ethersproject/signing-key": "5.6.0", + "@ethersproject/signing-key": "5.6.1", "@ethersproject/solidity": "5.6.0", "@ethersproject/strings": "5.6.0", "@ethersproject/transactions": "5.6.0", @@ -16232,15 +14960,6 @@ "@ethersproject/wordlists": "5.6.0" }, "dependencies": { - "@ethersproject/bytes": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.1.tgz", - "integrity": "sha512-NwQt7cKn5+ZE4uDn+X5RAXLp46E1chXoaMmrxAyA0rblpxz8t58lVkrHXoRIn0lz1joQElQ8410GqhTqMOwc6g==", - "dev": true, - "requires": { - "@ethersproject/logger": "^5.6.0" - } - }, "@ethersproject/keccak256": { "version": "5.6.0", "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", @@ -16251,12 +14970,6 @@ "js-sha3": "0.8.0" } }, - "@ethersproject/logger": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", - "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", - "dev": true - }, "js-sha3": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", diff --git a/package.json b/package.json index 60d26a22..d283af32 100644 --- a/package.json +++ b/package.json @@ -34,19 +34,19 @@ }, "devDependencies": { "@types/body-parser": "^1.19.1", - "@types/eslint": "^8.4.1", + "@types/eslint": "^8.4.2", "@types/express": "^4.17.13", "@types/jest": "^27.4.1", "@types/jest-dev-server": "^5.0.0", "@types/node": "^16.10.1", "@types/prettier": "^2.4.4", - "@typescript-eslint/eslint-plugin": "^5.21.0", - "@typescript-eslint/parser": "^5.21.0", + "@typescript-eslint/eslint-plugin": "^5.22.0", + "@typescript-eslint/parser": "^5.22.0", "body-parser": "^1.19.0", "dotenv": "^16.0.0", "eslint": "^8.14.0", "eslint-plugin-jest": "^26.1.5", - "ethers": "^5.6.4", + "ethers": "^5.6.5", "express": "^4.17.1", "husky": "^7.0.4", "jest": "^27.5.1", @@ -63,6 +63,7 @@ "web3": "^1.7.3" }, "dependencies": { + "@noble/secp256k1": "^1.5.5", "@types/big.js": "^6.1.3", "big.js": "^6.1.1", "isomorphic-unfetch": "^3.1.0", diff --git a/readme.md b/readme.md index a7da8bf3..536da3de 100644 --- a/readme.md +++ b/readme.md @@ -47,6 +47,8 @@ - [Install](#install) - [๐Ÿ›  Utils](#-utils) - [`arrayify`](#arrayify) + - [`computeAddress`](#computeaddress) + - [`computePublicKey`](#computepublickey) - [`concat`](#concat) - [`etherToGwei`](#ethertogwei) - [`etherToWei`](#ethertowei) @@ -66,7 +68,9 @@ - [`jsonRpcProvider`](#jsonrpcprovider) - [`keccak256`](#keccak256) - [`pack`](#pack) + - [`recoverPublicKey`](#recoverpublickey) - [`solidityKeccak256`](#soliditykeccak256) + - [`splitSignature`](#splitsignature) - [`stripZeros`](#stripzeros) - [`tinyBig`](#tinybig) - [`toChecksumAddress`](#tochecksumaddress) @@ -147,6 +151,22 @@ arrayify('0x1', { hexPad: 'right' });
+#### [`computeAddress`](https://essential-eth.vercel.app/docs/api/modules#computeaddress) + +```typescript +computeAddress(key: string): string +``` + +
+ +#### [`computePublicKey`](https://essential-eth.vercel.app/docs/api/modules#computepublickey) + +```typescript +computePublicKey(privKey: BytesLike): string +``` + +
+ #### [`concat`](https://essential-eth.vercel.app/docs/api/modules#concat) ```typescript @@ -561,6 +581,14 @@ pack(types: Array, values: Array): string
+#### [`recoverPublicKey`](https://essential-eth.vercel.app/docs/api/modules#recoverpublickey) + +```typescript +recoverPublicKey(digest: BytesLike, signature: SignatureLike): string +``` + +
+ #### [`solidityKeccak256`](https://essential-eth.vercel.app/docs/api/modules#soliditykeccak256) ```typescript @@ -598,6 +626,40 @@ solidityKeccak256(types, values);
+#### [`splitSignature`](https://essential-eth.vercel.app/docs/api/modules#splitsignature) + +```typescript +splitSignature(signature: SignatureLike): Signature +``` + +
+ View Example + +```js +import { splitSignature } from 'essential-eth'; + +// or in a require environment +const { splitSignature } = require('essential-eth'); +``` + +```javascript +const signature = '0x60bc4ed91f2021aefe7045f3f77bd12f87eb733aee24bd1965343b3c27b3971647252185b7d2abb411b01b5d1ac4ab41ea486df1e9b396758c1aec6c1b6eee331b'; +splitSignature(signature); + { + r: "0x60bc4ed91f2021aefe7045f3f77bd12f87eb733aee24bd1965343b3c27b39716", + s: "0x47252185b7d2abb411b01b5d1ac4ab41ea486df1e9b396758c1aec6c1b6eee33", + _vs: "0x47252185b7d2abb411b01b5d1ac4ab41ea486df1e9b396758c1aec6c1b6eee33", + recoveryParam: 0, + v: 27, + yParityAndS: "0x47252185b7d2abb411b01b5d1ac4ab41ea486df1e9b396758c1aec6c1b6eee33", + compact: "0x60bc4ed91f2021aefe7045f3f77bd12f87eb733aee24bd1965343b3c27b3971647252185b7d2abb411b01b5d1ac4ab41ea486df1e9b396758c1aec6c1b6eee33" + } +``` + +
+ +
+ #### [`stripZeros`](https://essential-eth.vercel.app/docs/api/modules#stripzeros) ```typescript diff --git a/scripts/markdown-magic/typedoc.out.json b/scripts/markdown-magic/typedoc.out.json index e631f06f..b081d3cc 100644 --- a/scripts/markdown-magic/typedoc.out.json +++ b/scripts/markdown-magic/typedoc.out.json @@ -7,7 +7,7 @@ "originalName": "", "children": [ { - "id": 101, + "id": 117, "name": "Contract", "kind": 128, "kindString": "Class", @@ -26,14 +26,14 @@ }, "children": [ { - "id": 102, + "id": 118, "name": "constructor", "kind": 512, "kindString": "Constructor", "flags": {}, "signatures": [ { - "id": 103, + "id": 119, "name": "new Contract", "kind": 16384, "kindString": "Constructor signature", @@ -41,7 +41,7 @@ "comment": {}, "parameters": [ { - "id": 104, + "id": 120, "name": "addressOrName", "kind": 32768, "kindString": "Parameter", @@ -55,7 +55,7 @@ } }, { - "id": 105, + "id": 121, "name": "contractInterface", "kind": 32768, "kindString": "Parameter", @@ -65,12 +65,12 @@ }, "type": { "type": "reference", - "id": 221, + "id": 237, "name": "JSONABI" } }, { - "id": 106, + "id": 122, "name": "signerOrProvider", "kind": 32768, "kindString": "Parameter", @@ -87,7 +87,7 @@ ], "type": { "type": "reference", - "id": 101, + "id": 117, "name": "Contract" }, "inheritedFrom": { @@ -107,7 +107,7 @@ "title": "Constructors", "kind": 512, "children": [ - 102 + 118 ] } ], @@ -119,7 +119,7 @@ } ], "indexSignature": { - "id": 107, + "id": 123, "name": "__index", "kind": 8192, "kindString": "Index signature", @@ -129,7 +129,7 @@ }, "parameters": [ { - "id": 108, + "id": 124, "name": "key", "kind": 32768, "flags": {}, @@ -312,7 +312,7 @@ "typeArguments": [ { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" } ], @@ -408,7 +408,7 @@ "typeArguments": [ { "type": "reference", - "id": 211, + "id": 227, "name": "BlockResponse" } ], @@ -457,7 +457,7 @@ "typeArguments": [ { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" } ], @@ -506,7 +506,7 @@ "typeArguments": [ { "type": "reference", - "id": 241, + "id": 257, "name": "Network" } ], @@ -575,7 +575,7 @@ "typeArguments": [ { "type": "reference", - "id": 245, + "id": 261, "name": "TransactionResponse" } ], @@ -913,7 +913,7 @@ "typeArguments": [ { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" } ], @@ -1009,7 +1009,7 @@ "typeArguments": [ { "type": "reference", - "id": 211, + "id": 227, "name": "BlockResponse" } ], @@ -1058,7 +1058,7 @@ "typeArguments": [ { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" } ], @@ -1107,7 +1107,7 @@ "typeArguments": [ { "type": "reference", - "id": 241, + "id": 257, "name": "Network" } ], @@ -1176,7 +1176,7 @@ "typeArguments": [ { "type": "reference", - "id": 245, + "id": 261, "name": "TransactionResponse" } ], @@ -1386,7 +1386,7 @@ ] }, { - "id": 109, + "id": 125, "name": "TinyBig", "kind": 128, "kindString": "Class", @@ -1396,7 +1396,7 @@ }, "children": [ { - "id": 118, + "id": 134, "name": "constructor", "kind": 512, "kindString": "Constructor", @@ -1410,14 +1410,14 @@ ], "signatures": [ { - "id": 119, + "id": 135, "name": "new TinyBig", "kind": 16384, "kindString": "Constructor signature", "flags": {}, "parameters": [ { - "id": 120, + "id": 136, "name": "value", "kind": 32768, "kindString": "Parameter", @@ -1435,7 +1435,7 @@ }, { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" }, { @@ -1450,7 +1450,7 @@ ], "type": { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" }, "overwrites": { @@ -1465,7 +1465,7 @@ } }, { - "id": 208, + "id": 224, "name": "c", "kind": 1024, "kindString": "Property", @@ -1495,7 +1495,7 @@ } }, { - "id": 209, + "id": 225, "name": "e", "kind": 1024, "kindString": "Property", @@ -1522,7 +1522,7 @@ } }, { - "id": 210, + "id": 226, "name": "s", "kind": 1024, "kindString": "Property", @@ -1549,7 +1549,7 @@ } }, { - "id": 110, + "id": 126, "name": "DP", "kind": 1024, "kindString": "Property", @@ -1578,7 +1578,7 @@ } }, { - "id": 112, + "id": 128, "name": "NE", "kind": 1024, "kindString": "Property", @@ -1607,7 +1607,7 @@ } }, { - "id": 113, + "id": 129, "name": "PE", "kind": 1024, "kindString": "Property", @@ -1636,7 +1636,7 @@ } }, { - "id": 111, + "id": 127, "name": "RM", "kind": 1024, "kindString": "Property", @@ -1664,7 +1664,7 @@ } }, { - "id": 114, + "id": 130, "name": "roundDown", "kind": 1024, "kindString": "Property", @@ -1693,7 +1693,7 @@ } }, { - "id": 116, + "id": 132, "name": "roundHalfEven", "kind": 1024, "kindString": "Property", @@ -1722,7 +1722,7 @@ } }, { - "id": 115, + "id": 131, "name": "roundHalfUp", "kind": 1024, "kindString": "Property", @@ -1751,7 +1751,7 @@ } }, { - "id": 117, + "id": 133, "name": "roundUp", "kind": 1024, "kindString": "Property", @@ -1780,7 +1780,7 @@ } }, { - "id": 135, + "id": 151, "name": "abs", "kind": 2048, "kindString": "Method", @@ -1789,7 +1789,7 @@ }, "signatures": [ { - "id": 136, + "id": 152, "name": "abs", "kind": 4096, "kindString": "Call signature", @@ -1817,7 +1817,7 @@ } }, { - "id": 137, + "id": 153, "name": "add", "kind": 2048, "kindString": "Method", @@ -1826,7 +1826,7 @@ }, "signatures": [ { - "id": 138, + "id": 154, "name": "add", "kind": 4096, "kindString": "Call signature", @@ -1844,7 +1844,7 @@ }, "parameters": [ { - "id": 139, + "id": 155, "name": "n", "kind": 32768, "kindString": "Parameter", @@ -1877,7 +1877,7 @@ } }, { - "id": 140, + "id": 156, "name": "cmp", "kind": 2048, "kindString": "Method", @@ -1886,7 +1886,7 @@ }, "signatures": [ { - "id": 141, + "id": 157, "name": "cmp", "kind": 4096, "kindString": "Call signature", @@ -1904,7 +1904,7 @@ }, "parameters": [ { - "id": 142, + "id": 158, "name": "n", "kind": 32768, "kindString": "Parameter", @@ -1937,7 +1937,7 @@ } }, { - "id": 143, + "id": 159, "name": "div", "kind": 2048, "kindString": "Method", @@ -1946,7 +1946,7 @@ }, "signatures": [ { - "id": 144, + "id": 160, "name": "div", "kind": 4096, "kindString": "Call signature", @@ -1973,7 +1973,7 @@ }, "parameters": [ { - "id": 145, + "id": 161, "name": "n", "kind": 32768, "kindString": "Parameter", @@ -2006,7 +2006,7 @@ } }, { - "id": 146, + "id": 162, "name": "eq", "kind": 2048, "kindString": "Method", @@ -2015,7 +2015,7 @@ }, "signatures": [ { - "id": 147, + "id": 163, "name": "eq", "kind": 4096, "kindString": "Call signature", @@ -2033,7 +2033,7 @@ }, "parameters": [ { - "id": 148, + "id": 164, "name": "n", "kind": 32768, "kindString": "Parameter", @@ -2064,7 +2064,7 @@ } }, { - "id": 149, + "id": 165, "name": "gt", "kind": 2048, "kindString": "Method", @@ -2073,7 +2073,7 @@ }, "signatures": [ { - "id": 150, + "id": 166, "name": "gt", "kind": 4096, "kindString": "Call signature", @@ -2091,7 +2091,7 @@ }, "parameters": [ { - "id": 151, + "id": 167, "name": "n", "kind": 32768, "kindString": "Parameter", @@ -2122,7 +2122,7 @@ } }, { - "id": 152, + "id": 168, "name": "gte", "kind": 2048, "kindString": "Method", @@ -2131,7 +2131,7 @@ }, "signatures": [ { - "id": 153, + "id": 169, "name": "gte", "kind": 4096, "kindString": "Call signature", @@ -2149,7 +2149,7 @@ }, "parameters": [ { - "id": 154, + "id": 170, "name": "n", "kind": 32768, "kindString": "Parameter", @@ -2180,7 +2180,7 @@ } }, { - "id": 155, + "id": 171, "name": "lt", "kind": 2048, "kindString": "Method", @@ -2189,7 +2189,7 @@ }, "signatures": [ { - "id": 156, + "id": 172, "name": "lt", "kind": 4096, "kindString": "Call signature", @@ -2207,7 +2207,7 @@ }, "parameters": [ { - "id": 157, + "id": 173, "name": "n", "kind": 32768, "kindString": "Parameter", @@ -2238,7 +2238,7 @@ } }, { - "id": 158, + "id": 174, "name": "lte", "kind": 2048, "kindString": "Method", @@ -2247,7 +2247,7 @@ }, "signatures": [ { - "id": 159, + "id": 175, "name": "lte", "kind": 4096, "kindString": "Call signature", @@ -2265,7 +2265,7 @@ }, "parameters": [ { - "id": 160, + "id": 176, "name": "n", "kind": 32768, "kindString": "Parameter", @@ -2296,7 +2296,7 @@ } }, { - "id": 161, + "id": 177, "name": "minus", "kind": 2048, "kindString": "Method", @@ -2305,7 +2305,7 @@ }, "signatures": [ { - "id": 162, + "id": 178, "name": "minus", "kind": 4096, "kindString": "Call signature", @@ -2323,7 +2323,7 @@ }, "parameters": [ { - "id": 163, + "id": 179, "name": "n", "kind": 32768, "kindString": "Parameter", @@ -2356,7 +2356,7 @@ } }, { - "id": 164, + "id": 180, "name": "mod", "kind": 2048, "kindString": "Method", @@ -2365,7 +2365,7 @@ }, "signatures": [ { - "id": 165, + "id": 181, "name": "mod", "kind": 4096, "kindString": "Call signature", @@ -2384,7 +2384,7 @@ }, "parameters": [ { - "id": 166, + "id": 182, "name": "n", "kind": 32768, "kindString": "Parameter", @@ -2417,7 +2417,7 @@ } }, { - "id": 167, + "id": 183, "name": "mul", "kind": 2048, "kindString": "Method", @@ -2426,7 +2426,7 @@ }, "signatures": [ { - "id": 168, + "id": 184, "name": "mul", "kind": 4096, "kindString": "Call signature", @@ -2444,7 +2444,7 @@ }, "parameters": [ { - "id": 169, + "id": 185, "name": "n", "kind": 32768, "kindString": "Parameter", @@ -2477,7 +2477,7 @@ } }, { - "id": 127, + "id": 143, "name": "padAndChop", "kind": 2048, "kindString": "Method", @@ -2493,7 +2493,7 @@ ], "signatures": [ { - "id": 128, + "id": 144, "name": "padAndChop", "kind": 4096, "kindString": "Call signature", @@ -2501,7 +2501,7 @@ "comment": {}, "parameters": [ { - "id": 129, + "id": 145, "name": "str", "kind": 32768, "kindString": "Parameter", @@ -2513,7 +2513,7 @@ } }, { - "id": 130, + "id": 146, "name": "padChar", "kind": 32768, "kindString": "Parameter", @@ -2525,7 +2525,7 @@ } }, { - "id": 131, + "id": 147, "name": "length", "kind": 32768, "kindString": "Parameter", @@ -2547,7 +2547,7 @@ ] }, { - "id": 170, + "id": 186, "name": "plus", "kind": 2048, "kindString": "Method", @@ -2556,7 +2556,7 @@ }, "signatures": [ { - "id": 171, + "id": 187, "name": "plus", "kind": 4096, "kindString": "Call signature", @@ -2574,7 +2574,7 @@ }, "parameters": [ { - "id": 172, + "id": 188, "name": "n", "kind": 32768, "kindString": "Parameter", @@ -2607,7 +2607,7 @@ } }, { - "id": 173, + "id": 189, "name": "pow", "kind": 2048, "kindString": "Method", @@ -2616,7 +2616,7 @@ }, "signatures": [ { - "id": 174, + "id": 190, "name": "pow", "kind": 4096, "kindString": "Call signature", @@ -2635,7 +2635,7 @@ }, "parameters": [ { - "id": 175, + "id": 191, "name": "exp", "kind": 32768, "kindString": "Parameter", @@ -2669,7 +2669,7 @@ } }, { - "id": 176, + "id": 192, "name": "prec", "kind": 2048, "kindString": "Method", @@ -2678,7 +2678,7 @@ }, "signatures": [ { - "id": 177, + "id": 193, "name": "prec", "kind": 4096, "kindString": "Call signature", @@ -2700,7 +2700,7 @@ }, "parameters": [ { - "id": 178, + "id": 194, "name": "sd", "kind": 32768, "kindString": "Parameter", @@ -2716,7 +2716,7 @@ } }, { - "id": 179, + "id": 195, "name": "rm", "kind": 32768, "kindString": "Parameter", @@ -2753,7 +2753,7 @@ } }, { - "id": 180, + "id": 196, "name": "round", "kind": 2048, "kindString": "Method", @@ -2762,7 +2762,7 @@ }, "signatures": [ { - "id": 181, + "id": 197, "name": "round", "kind": 4096, "kindString": "Call signature", @@ -2784,7 +2784,7 @@ }, "parameters": [ { - "id": 182, + "id": 198, "name": "dp", "kind": 32768, "kindString": "Parameter", @@ -2801,7 +2801,7 @@ } }, { - "id": 183, + "id": 199, "name": "rm", "kind": 32768, "kindString": "Parameter", @@ -2838,7 +2838,7 @@ } }, { - "id": 184, + "id": 200, "name": "sqrt", "kind": 2048, "kindString": "Method", @@ -2847,7 +2847,7 @@ }, "signatures": [ { - "id": 185, + "id": 201, "name": "sqrt", "kind": 4096, "kindString": "Call signature", @@ -2882,7 +2882,7 @@ } }, { - "id": 186, + "id": 202, "name": "sub", "kind": 2048, "kindString": "Method", @@ -2891,7 +2891,7 @@ }, "signatures": [ { - "id": 187, + "id": 203, "name": "sub", "kind": 4096, "kindString": "Call signature", @@ -2909,7 +2909,7 @@ }, "parameters": [ { - "id": 188, + "id": 204, "name": "n", "kind": 32768, "kindString": "Parameter", @@ -2942,7 +2942,7 @@ } }, { - "id": 189, + "id": 205, "name": "times", "kind": 2048, "kindString": "Method", @@ -2951,7 +2951,7 @@ }, "signatures": [ { - "id": 190, + "id": 206, "name": "times", "kind": 4096, "kindString": "Call signature", @@ -2969,7 +2969,7 @@ }, "parameters": [ { - "id": 191, + "id": 207, "name": "n", "kind": 32768, "kindString": "Parameter", @@ -3002,7 +3002,7 @@ } }, { - "id": 192, + "id": 208, "name": "toExponential", "kind": 2048, "kindString": "Method", @@ -3011,7 +3011,7 @@ }, "signatures": [ { - "id": 193, + "id": 209, "name": "toExponential", "kind": 4096, "kindString": "Call signature", @@ -3030,7 +3030,7 @@ }, "parameters": [ { - "id": 194, + "id": 210, "name": "dp", "kind": 32768, "kindString": "Parameter", @@ -3047,7 +3047,7 @@ } }, { - "id": 195, + "id": 211, "name": "rm", "kind": 32768, "kindString": "Parameter", @@ -3082,7 +3082,7 @@ } }, { - "id": 196, + "id": 212, "name": "toFixed", "kind": 2048, "kindString": "Method", @@ -3091,7 +3091,7 @@ }, "signatures": [ { - "id": 197, + "id": 213, "name": "toFixed", "kind": 4096, "kindString": "Call signature", @@ -3110,7 +3110,7 @@ }, "parameters": [ { - "id": 198, + "id": 214, "name": "dp", "kind": 32768, "kindString": "Parameter", @@ -3127,7 +3127,7 @@ } }, { - "id": 199, + "id": 215, "name": "rm", "kind": 32768, "kindString": "Parameter", @@ -3162,7 +3162,7 @@ } }, { - "id": 121, + "id": 137, "name": "toHexString", "kind": 2048, "kindString": "Method", @@ -3176,7 +3176,7 @@ ], "signatures": [ { - "id": 122, + "id": 138, "name": "toHexString", "kind": 4096, "kindString": "Call signature", @@ -3192,7 +3192,7 @@ ] }, { - "id": 206, + "id": 222, "name": "toJSON", "kind": 2048, "kindString": "Method", @@ -3201,7 +3201,7 @@ }, "signatures": [ { - "id": 207, + "id": 223, "name": "toJSON", "kind": 4096, "kindString": "Call signature", @@ -3228,7 +3228,7 @@ } }, { - "id": 123, + "id": 139, "name": "toNumber", "kind": 2048, "kindString": "Method", @@ -3242,7 +3242,7 @@ ], "signatures": [ { - "id": 124, + "id": 140, "name": "toNumber", "kind": 4096, "kindString": "Call signature", @@ -3263,7 +3263,7 @@ } }, { - "id": 200, + "id": 216, "name": "toPrecision", "kind": 2048, "kindString": "Method", @@ -3272,7 +3272,7 @@ }, "signatures": [ { - "id": 201, + "id": 217, "name": "toPrecision", "kind": 4096, "kindString": "Call signature", @@ -3291,7 +3291,7 @@ }, "parameters": [ { - "id": 202, + "id": 218, "name": "sd", "kind": 32768, "kindString": "Parameter", @@ -3308,7 +3308,7 @@ } }, { - "id": 203, + "id": 219, "name": "rm", "kind": 32768, "kindString": "Parameter", @@ -3343,7 +3343,7 @@ } }, { - "id": 125, + "id": 141, "name": "toString", "kind": 2048, "kindString": "Method", @@ -3357,7 +3357,7 @@ ], "signatures": [ { - "id": 126, + "id": 142, "name": "toString", "kind": 4096, "kindString": "Call signature", @@ -3378,7 +3378,7 @@ } }, { - "id": 132, + "id": 148, "name": "toTwos", "kind": 2048, "kindString": "Method", @@ -3394,14 +3394,14 @@ ], "signatures": [ { - "id": 133, + "id": 149, "name": "toTwos", "kind": 4096, "kindString": "Call signature", "flags": {}, "parameters": [ { - "id": 134, + "id": 150, "name": "bitCount", "kind": 32768, "kindString": "Parameter", @@ -3422,7 +3422,7 @@ ] }, { - "id": 204, + "id": 220, "name": "valueOf", "kind": 2048, "kindString": "Method", @@ -3431,7 +3431,7 @@ }, "signatures": [ { - "id": 205, + "id": 221, "name": "valueOf", "kind": 4096, "kindString": "Call signature", @@ -3463,59 +3463,59 @@ "title": "Constructors", "kind": 512, "children": [ - 118 + 134 ] }, { "title": "Properties", "kind": 1024, "children": [ - 208, - 209, - 210, - 110, - 112, - 113, - 111, - 114, - 116, - 115, - 117 + 224, + 225, + 226, + 126, + 128, + 129, + 127, + 130, + 132, + 131, + 133 ] }, { "title": "Methods", "kind": 2048, "children": [ - 135, - 137, - 140, - 143, - 146, - 149, - 152, - 155, - 158, - 161, - 164, - 167, - 127, - 170, - 173, - 176, + 151, + 153, + 156, + 159, + 162, + 165, + 168, + 171, + 174, + 177, 180, - 184, + 183, + 143, 186, 189, 192, 196, - 121, - 206, - 123, 200, - 125, - 132, - 204 + 202, + 205, + 208, + 212, + 137, + 222, + 139, + 216, + 141, + 148, + 220 ] } ], @@ -3536,14 +3536,14 @@ ] }, { - "id": 313, + "id": 329, "name": "DataOptions", "kind": 256, "kindString": "Interface", "flags": {}, "children": [ { - "id": 314, + "id": 330, "name": "allowMissingPrefix", "kind": 1024, "kindString": "Property", @@ -3563,7 +3563,7 @@ } }, { - "id": 315, + "id": 331, "name": "hexPad", "kind": 1024, "kindString": "Property", @@ -3601,8 +3601,8 @@ "title": "Properties", "kind": 1024, "children": [ - 314, - 315 + 330, + 331 ] } ], @@ -3615,21 +3615,21 @@ ] }, { - "id": 316, + "id": 332, "name": "Hexable", "kind": 256, "kindString": "Interface", "flags": {}, "children": [ { - "id": 317, + "id": 333, "name": "toHexString", "kind": 2048, "kindString": "Method", "flags": {}, "signatures": [ { - "id": 318, + "id": 334, "name": "toHexString", "kind": 4096, "kindString": "Call signature", @@ -3647,7 +3647,7 @@ "title": "Methods", "kind": 2048, "children": [ - 317 + 333 ] } ], @@ -3660,14 +3660,14 @@ ] }, { - "id": 222, + "id": 238, "name": "JSONABIArgument", "kind": 256, "kindString": "Interface", "flags": {}, "children": [ { - "id": 223, + "id": 239, "name": "anonymous", "kind": 1024, "kindString": "Property", @@ -3687,7 +3687,7 @@ } }, { - "id": 239, + "id": 255, "name": "constant", "kind": 1024, "kindString": "Property", @@ -3707,7 +3707,7 @@ } }, { - "id": 238, + "id": 254, "name": "gas", "kind": 1024, "kindString": "Property", @@ -3727,7 +3727,7 @@ } }, { - "id": 224, + "id": 240, "name": "inputs", "kind": 1024, "kindString": "Property", @@ -3744,14 +3744,14 @@ "elementType": { "type": "reflection", "declaration": { - "id": 225, + "id": 241, "name": "__type", "kind": 65536, "kindString": "Type literal", "flags": {}, "children": [ { - "id": 229, + "id": 245, "name": "indexed", "kind": 1024, "kindString": "Property", @@ -3771,7 +3771,7 @@ } }, { - "id": 226, + "id": 242, "name": "internalType", "kind": 1024, "kindString": "Property", @@ -3791,7 +3791,7 @@ } }, { - "id": 227, + "id": 243, "name": "name", "kind": 1024, "kindString": "Property", @@ -3809,7 +3809,7 @@ } }, { - "id": 228, + "id": 244, "name": "type", "kind": 1024, "kindString": "Property", @@ -3832,10 +3832,10 @@ "title": "Properties", "kind": 1024, "children": [ - 229, - 226, - 227, - 228 + 245, + 242, + 243, + 244 ] } ] @@ -3844,7 +3844,7 @@ } }, { - "id": 230, + "id": 246, "name": "name", "kind": 1024, "kindString": "Property", @@ -3864,7 +3864,7 @@ } }, { - "id": 231, + "id": 247, "name": "outputs", "kind": 1024, "kindString": "Property", @@ -3883,14 +3883,14 @@ "elementType": { "type": "reflection", "declaration": { - "id": 232, + "id": 248, "name": "__type", "kind": 65536, "kindString": "Type literal", "flags": {}, "children": [ { - "id": 233, + "id": 249, "name": "internalType", "kind": 1024, "kindString": "Property", @@ -3910,7 +3910,7 @@ } }, { - "id": 234, + "id": 250, "name": "name", "kind": 1024, "kindString": "Property", @@ -3928,7 +3928,7 @@ } }, { - "id": 235, + "id": 251, "name": "type", "kind": 1024, "kindString": "Property", @@ -3951,9 +3951,9 @@ "title": "Properties", "kind": 1024, "children": [ - 233, - 234, - 235 + 249, + 250, + 251 ] } ] @@ -3962,7 +3962,7 @@ } }, { - "id": 240, + "id": 256, "name": "payable", "kind": 1024, "kindString": "Property", @@ -3982,7 +3982,7 @@ } }, { - "id": 236, + "id": 252, "name": "stateMutability", "kind": 1024, "kindString": "Property", @@ -4002,7 +4002,7 @@ } }, { - "id": 237, + "id": 253, "name": "type", "kind": 1024, "kindString": "Property", @@ -4046,15 +4046,15 @@ "title": "Properties", "kind": 1024, "children": [ - 223, 239, - 238, - 224, - 230, - 231, + 255, + 254, 240, - 236, - 237 + 246, + 247, + 256, + 252, + 253 ] } ], @@ -4067,7 +4067,7 @@ ] }, { - "id": 241, + "id": 257, "name": "Network", "kind": 256, "kindString": "Interface", @@ -4077,7 +4077,7 @@ }, "children": [ { - "id": 242, + "id": 258, "name": "chainId", "kind": 1024, "kindString": "Property", @@ -4095,7 +4095,7 @@ } }, { - "id": 243, + "id": 259, "name": "ensAddress", "kind": 1024, "kindString": "Property", @@ -4122,7 +4122,7 @@ } }, { - "id": 244, + "id": 260, "name": "name", "kind": 1024, "kindString": "Property", @@ -4145,9 +4145,9 @@ "title": "Properties", "kind": 1024, "children": [ - 242, - 243, - 244 + 258, + 259, + 260 ] } ], @@ -4160,14 +4160,14 @@ ] }, { - "id": 326, + "id": 342, "name": "Signature", "kind": 256, "kindString": "Interface", "flags": {}, "children": [ { - "id": 329, + "id": 345, "name": "_vs", "kind": 1024, "kindString": "Property", @@ -4185,7 +4185,7 @@ } }, { - "id": 333, + "id": 349, "name": "compact", "kind": 1024, "kindString": "Property", @@ -4203,7 +4203,7 @@ } }, { - "id": 327, + "id": 343, "name": "r", "kind": 1024, "kindString": "Property", @@ -4221,7 +4221,7 @@ } }, { - "id": 330, + "id": 346, "name": "recoveryParam", "kind": 1024, "kindString": "Property", @@ -4239,7 +4239,7 @@ } }, { - "id": 328, + "id": 344, "name": "s", "kind": 1024, "kindString": "Property", @@ -4257,7 +4257,7 @@ } }, { - "id": 331, + "id": 347, "name": "v", "kind": 1024, "kindString": "Property", @@ -4275,7 +4275,7 @@ } }, { - "id": 332, + "id": 348, "name": "yParityAndS", "kind": 1024, "kindString": "Property", @@ -4298,13 +4298,13 @@ "title": "Properties", "kind": 1024, "children": [ - 329, - 333, - 327, - 330, - 328, - 331, - 332 + 345, + 349, + 343, + 346, + 344, + 347, + 348 ] } ], @@ -4317,7 +4317,7 @@ ] }, { - "id": 211, + "id": 227, "name": "BlockResponse", "kind": 4194304, "kindString": "Type alias", @@ -4339,14 +4339,14 @@ { "type": "reflection", "declaration": { - "id": 212, + "id": 228, "name": "__type", "kind": 65536, "kindString": "Type literal", "flags": {}, "children": [ { - "id": 218, + "id": 234, "name": "baseFeePerGas", "kind": 1024, "kindString": "Property", @@ -4364,7 +4364,7 @@ } }, { - "id": 213, + "id": 229, "name": "gasLimit", "kind": 1024, "kindString": "Property", @@ -4382,7 +4382,7 @@ } }, { - "id": 214, + "id": 230, "name": "gasUsed", "kind": 1024, "kindString": "Property", @@ -4400,7 +4400,7 @@ } }, { - "id": 215, + "id": 231, "name": "number", "kind": 1024, "kindString": "Property", @@ -4418,7 +4418,7 @@ } }, { - "id": 216, + "id": 232, "name": "size", "kind": 1024, "kindString": "Property", @@ -4436,7 +4436,7 @@ } }, { - "id": 217, + "id": 233, "name": "timestamp", "kind": 1024, "kindString": "Property", @@ -4454,7 +4454,7 @@ } }, { - "id": 219, + "id": 235, "name": "transactions", "kind": 1024, "kindString": "Property", @@ -4489,13 +4489,13 @@ "title": "Properties", "kind": 1024, "children": [ - 218, - 213, - 214, - 215, - 216, - 217, - 219 + 234, + 229, + 230, + 231, + 232, + 233, + 235 ] } ], @@ -4513,7 +4513,7 @@ } }, { - "id": 310, + "id": 326, "name": "Bytes", "kind": 4194304, "kindString": "Type alias", @@ -4539,7 +4539,7 @@ } }, { - "id": 311, + "id": 327, "name": "BytesLike", "kind": 4194304, "kindString": "Type alias", @@ -4572,7 +4572,7 @@ "types": [ { "type": "reference", - "id": 310, + "id": 326, "name": "Bytes" }, { @@ -4583,7 +4583,7 @@ } }, { - "id": 312, + "id": 328, "name": "BytesLikeWithNumber", "kind": 4194304, "kindString": "Type alias", @@ -4600,7 +4600,7 @@ "types": [ { "type": "reference", - "id": 311, + "id": 327, "name": "BytesLike" }, { @@ -4611,7 +4611,7 @@ } }, { - "id": 220, + "id": 236, "name": "ContractTypes", "kind": 4194304, "kindString": "Type alias", @@ -4802,7 +4802,7 @@ } }, { - "id": 221, + "id": 237, "name": "JSONABI", "kind": 4194304, "kindString": "Type alias", @@ -4818,13 +4818,13 @@ "type": "array", "elementType": { "type": "reference", - "id": 222, + "id": 238, "name": "JSONABIArgument" } } }, { - "id": 319, + "id": 335, "name": "SignatureLike", "kind": 4194304, "kindString": "Type alias", @@ -4842,14 +4842,14 @@ { "type": "reflection", "declaration": { - "id": 320, + "id": 336, "name": "__type", "kind": 65536, "kindString": "Type literal", "flags": {}, "children": [ { - "id": 323, + "id": 339, "name": "_vs", "kind": 1024, "kindString": "Property", @@ -4869,7 +4869,7 @@ } }, { - "id": 321, + "id": 337, "name": "r", "kind": 1024, "kindString": "Property", @@ -4887,7 +4887,7 @@ } }, { - "id": 324, + "id": 340, "name": "recoveryParam", "kind": 1024, "kindString": "Property", @@ -4907,7 +4907,7 @@ } }, { - "id": 322, + "id": 338, "name": "s", "kind": 1024, "kindString": "Property", @@ -4927,7 +4927,7 @@ } }, { - "id": 325, + "id": 341, "name": "v", "kind": 1024, "kindString": "Property", @@ -4952,11 +4952,11 @@ "title": "Properties", "kind": 1024, "children": [ - 323, - 321, - 324, - 322, - 325 + 339, + 337, + 340, + 338, + 341 ] } ], @@ -4971,14 +4971,14 @@ }, { "type": "reference", - "id": 311, + "id": 327, "name": "BytesLike" } ] } }, { - "id": 245, + "id": 261, "name": "TransactionResponse", "kind": 4194304, "kindString": "Type alias", @@ -5003,14 +5003,14 @@ { "type": "reflection", "declaration": { - "id": 246, + "id": 262, "name": "__type", "kind": 65536, "kindString": "Type literal", "flags": {}, "children": [ { - "id": 247, + "id": 263, "name": "blockNumber", "kind": 1024, "kindString": "Property", @@ -5028,7 +5028,7 @@ } }, { - "id": 248, + "id": 264, "name": "chainId", "kind": 1024, "kindString": "Property", @@ -5046,7 +5046,7 @@ } }, { - "id": 255, + "id": 271, "name": "gas", "kind": 1024, "kindString": "Property", @@ -5060,12 +5060,12 @@ ], "type": { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" } }, { - "id": 256, + "id": 272, "name": "gasLimit", "kind": 1024, "kindString": "Property", @@ -5079,12 +5079,12 @@ ], "type": { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" } }, { - "id": 254, + "id": 270, "name": "gasPrice", "kind": 1024, "kindString": "Property", @@ -5098,12 +5098,12 @@ ], "type": { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" } }, { - "id": 249, + "id": 265, "name": "nonce", "kind": 1024, "kindString": "Property", @@ -5121,7 +5121,7 @@ } }, { - "id": 250, + "id": 266, "name": "transactionIndex", "kind": 1024, "kindString": "Property", @@ -5139,7 +5139,7 @@ } }, { - "id": 251, + "id": 267, "name": "type", "kind": 1024, "kindString": "Property", @@ -5157,7 +5157,7 @@ } }, { - "id": 252, + "id": 268, "name": "v", "kind": 1024, "kindString": "Property", @@ -5175,7 +5175,7 @@ } }, { - "id": 253, + "id": 269, "name": "value", "kind": 1024, "kindString": "Property", @@ -5189,7 +5189,7 @@ ], "type": { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" } } @@ -5199,16 +5199,16 @@ "title": "Properties", "kind": 1024, "children": [ - 247, - 248, - 255, - 256, - 254, - 249, - 250, - 251, - 252, - 253 + 263, + 264, + 271, + 272, + 270, + 265, + 266, + 267, + 268, + 269 ] } ], @@ -5224,14 +5224,14 @@ { "type": "reflection", "declaration": { - "id": 257, + "id": 273, "name": "__type", "kind": 65536, "kindString": "Type literal", "flags": {}, "children": [ { - "id": 260, + "id": 276, "name": "confirmations", "kind": 1024, "kindString": "Property", @@ -5249,7 +5249,7 @@ } }, { - "id": 258, + "id": 274, "name": "maxFeePerGas", "kind": 1024, "kindString": "Property", @@ -5263,12 +5263,12 @@ ], "type": { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" } }, { - "id": 259, + "id": 275, "name": "maxPriorityFeePerGas", "kind": 1024, "kindString": "Property", @@ -5282,7 +5282,7 @@ ], "type": { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" } } @@ -5292,9 +5292,9 @@ "title": "Properties", "kind": 1024, "children": [ - 260, - 258, - 259 + 276, + 274, + 275 ] } ], @@ -5314,7 +5314,7 @@ } }, { - "id": 267, + "id": 283, "name": "arrayify", "kind": 64, "kindString": "Function", @@ -5328,7 +5328,7 @@ ], "signatures": [ { - "id": 268, + "id": 284, "name": "arrayify", "kind": 4096, "kindString": "Call signature", @@ -5352,7 +5352,7 @@ }, "parameters": [ { - "id": 269, + "id": 285, "name": "value", "kind": 32768, "kindString": "Parameter", @@ -5366,19 +5366,19 @@ }, { "type": "reference", - "id": 311, + "id": 327, "name": "BytesLike" }, { "type": "reference", - "id": 316, + "id": 332, "name": "Hexable" } ] } }, { - "id": 270, + "id": 286, "name": "options", "kind": 32768, "kindString": "Parameter", @@ -5387,7 +5387,7 @@ }, "type": { "type": "reference", - "id": 313, + "id": 329, "name": "DataOptions" } } @@ -5402,7 +5402,99 @@ ] }, { - "id": 271, + "id": 111, + "name": "computeAddress", + "kind": 64, + "kindString": "Function", + "flags": {}, + "sources": [ + { + "fileName": "src/utils/compute-address.ts", + "line": 12, + "character": 16 + } + ], + "signatures": [ + { + "id": 112, + "name": "computeAddress", + "kind": 4096, + "kindString": "Call signature", + "flags": {}, + "comment": { + "shortText": "Computes the address that corresponds to a specified public or private key", + "returns": "the address that corresponds to the key specified\n" + }, + "parameters": [ + { + "id": 113, + "name": "key", + "kind": 32768, + "kindString": "Parameter", + "flags": {}, + "comment": { + "shortText": "the public or private key to find the address related to\n" + }, + "type": { + "type": "intrinsic", + "name": "string" + } + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + } + ] + }, + { + "id": 114, + "name": "computePublicKey", + "kind": 64, + "kindString": "Function", + "flags": {}, + "sources": [ + { + "fileName": "src/utils/compute-public-key.ts", + "line": 11, + "character": 16 + } + ], + "signatures": [ + { + "id": 115, + "name": "computePublicKey", + "kind": 4096, + "kindString": "Call signature", + "flags": {}, + "comment": { + "shortText": "Computes the public key from a given private key", + "returns": "the public key\n" + }, + "parameters": [ + { + "id": 116, + "name": "privKey", + "kind": 32768, + "kindString": "Parameter", + "flags": {}, + "type": { + "type": "reference", + "id": 327, + "name": "BytesLike" + } + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + } + ] + }, + { + "id": 287, "name": "concat", "kind": 64, "kindString": "Function", @@ -5416,7 +5508,7 @@ ], "signatures": [ { - "id": 272, + "id": 288, "name": "concat", "kind": 4096, "kindString": "Call signature", @@ -5432,7 +5524,7 @@ }, "parameters": [ { - "id": 273, + "id": 289, "name": "arrayOfBytesLike", "kind": 32768, "kindString": "Parameter", @@ -5444,7 +5536,7 @@ "type": "array", "elementType": { "type": "reference", - "id": 312, + "id": 328, "name": "BytesLikeWithNumber" } } @@ -5514,7 +5606,7 @@ }, { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" }, { @@ -5529,7 +5621,7 @@ ], "type": { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" } } @@ -5589,7 +5681,7 @@ }, { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" }, { @@ -5604,7 +5696,7 @@ ], "type": { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" } } @@ -5664,7 +5756,7 @@ }, { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" }, { @@ -5679,14 +5771,14 @@ ], "type": { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" } } ] }, { - "id": 334, + "id": 98, "name": "hashMessage", "kind": 64, "kindString": "Function", @@ -5700,7 +5792,7 @@ ], "signatures": [ { - "id": 335, + "id": 99, "name": "hashMessage", "kind": 4096, "kindString": "Call signature", @@ -5716,7 +5808,7 @@ }, "parameters": [ { - "id": 336, + "id": 100, "name": "message", "kind": 32768, "kindString": "Parameter", @@ -5730,7 +5822,7 @@ }, { "type": "reference", - "id": 310, + "id": 326, "name": "Bytes" } ] @@ -5745,7 +5837,7 @@ ] }, { - "id": 297, + "id": 313, "name": "hexConcat", "kind": 64, "kindString": "Function", @@ -5759,14 +5851,14 @@ ], "signatures": [ { - "id": 298, + "id": 314, "name": "hexConcat", "kind": 4096, "kindString": "Call signature", "flags": {}, "parameters": [ { - "id": 299, + "id": 315, "name": "items", "kind": 32768, "kindString": "Parameter", @@ -5778,7 +5870,7 @@ "type": "array", "elementType": { "type": "reference", - "id": 311, + "id": 327, "name": "BytesLike" } } @@ -5793,7 +5885,7 @@ ] }, { - "id": 289, + "id": 305, "name": "hexDataLength", "kind": 64, "kindString": "Function", @@ -5807,21 +5899,21 @@ ], "signatures": [ { - "id": 290, + "id": 306, "name": "hexDataLength", "kind": 4096, "kindString": "Call signature", "flags": {}, "parameters": [ { - "id": 291, + "id": 307, "name": "data", "kind": 32768, "kindString": "Parameter", "flags": {}, "type": { "type": "reference", - "id": 311, + "id": 327, "name": "BytesLike" } } @@ -5843,7 +5935,7 @@ ] }, { - "id": 292, + "id": 308, "name": "hexDataSlice", "kind": 64, "kindString": "Function", @@ -5857,26 +5949,26 @@ ], "signatures": [ { - "id": 293, + "id": 309, "name": "hexDataSlice", "kind": 4096, "kindString": "Call signature", "flags": {}, "parameters": [ { - "id": 294, + "id": 310, "name": "data", "kind": 32768, "kindString": "Parameter", "flags": {}, "type": { "type": "reference", - "id": 312, + "id": 328, "name": "BytesLikeWithNumber" } }, { - "id": 295, + "id": 311, "name": "offset", "kind": 32768, "kindString": "Parameter", @@ -5887,7 +5979,7 @@ } }, { - "id": 296, + "id": 312, "name": "endOffset", "kind": 32768, "kindString": "Parameter", @@ -5908,7 +6000,7 @@ ] }, { - "id": 303, + "id": 319, "name": "hexStripZeros", "kind": 64, "kindString": "Function", @@ -5922,21 +6014,21 @@ ], "signatures": [ { - "id": 304, + "id": 320, "name": "hexStripZeros", "kind": 4096, "kindString": "Call signature", "flags": {}, "parameters": [ { - "id": 305, + "id": 321, "name": "value", "kind": 32768, "kindString": "Parameter", "flags": {}, "type": { "type": "reference", - "id": 311, + "id": 327, "name": "BytesLike" } } @@ -5949,7 +6041,7 @@ ] }, { - "id": 300, + "id": 316, "name": "hexValue", "kind": 64, "kindString": "Function", @@ -5963,14 +6055,14 @@ ], "signatures": [ { - "id": 301, + "id": 317, "name": "hexValue", "kind": 4096, "kindString": "Call signature", "flags": {}, "parameters": [ { - "id": 302, + "id": 318, "name": "value", "kind": 32768, "kindString": "Parameter", @@ -5988,12 +6080,12 @@ }, { "type": "reference", - "id": 311, + "id": 327, "name": "BytesLike" }, { "type": "reference", - "id": 316, + "id": 332, "name": "Hexable" } ] @@ -6008,7 +6100,7 @@ ] }, { - "id": 306, + "id": 322, "name": "hexZeroPad", "kind": 64, "kindString": "Function", @@ -6022,7 +6114,7 @@ ], "signatures": [ { - "id": 307, + "id": 323, "name": "hexZeroPad", "kind": 4096, "kindString": "Call signature", @@ -6055,19 +6147,19 @@ }, "parameters": [ { - "id": 308, + "id": 324, "name": "value", "kind": 32768, "kindString": "Parameter", "flags": {}, "type": { "type": "reference", - "id": 312, + "id": 328, "name": "BytesLikeWithNumber" } }, { - "id": 309, + "id": 325, "name": "length", "kind": 32768, "kindString": "Parameter", @@ -6089,7 +6181,7 @@ ] }, { - "id": 285, + "id": 301, "name": "hexlify", "kind": 64, "kindString": "Function", @@ -6103,7 +6195,7 @@ ], "signatures": [ { - "id": 286, + "id": 302, "name": "hexlify", "kind": 4096, "kindString": "Call signature", @@ -6118,7 +6210,7 @@ }, "parameters": [ { - "id": 287, + "id": 303, "name": "value", "kind": 32768, "kindString": "Parameter", @@ -6136,19 +6228,19 @@ }, { "type": "reference", - "id": 311, + "id": 327, "name": "BytesLike" }, { "type": "reference", - "id": 316, + "id": 332, "name": "Hexable" } ] } }, { - "id": 288, + "id": 304, "name": "options", "kind": 32768, "kindString": "Parameter", @@ -6157,7 +6249,7 @@ }, "type": { "type": "reference", - "id": 313, + "id": 329, "name": "DataOptions" } } @@ -6227,7 +6319,7 @@ ] }, { - "id": 264, + "id": 280, "name": "isBytes", "kind": 64, "kindString": "Function", @@ -6241,7 +6333,7 @@ ], "signatures": [ { - "id": 265, + "id": 281, "name": "isBytes", "kind": 4096, "kindString": "Call signature", @@ -6265,7 +6357,7 @@ }, "parameters": [ { - "id": 266, + "id": 282, "name": "value", "kind": 32768, "kindString": "Parameter", @@ -6282,7 +6374,7 @@ "asserts": false, "targetType": { "type": "reference", - "id": 310, + "id": 326, "name": "Bytes" } } @@ -6290,7 +6382,7 @@ ] }, { - "id": 261, + "id": 277, "name": "isBytesLike", "kind": 64, "kindString": "Function", @@ -6304,7 +6396,7 @@ ], "signatures": [ { - "id": 262, + "id": 278, "name": "isBytesLike", "kind": 4096, "kindString": "Call signature", @@ -6328,7 +6420,7 @@ }, "parameters": [ { - "id": 263, + "id": 279, "name": "value", "kind": 32768, "kindString": "Parameter", @@ -6345,7 +6437,7 @@ "asserts": false, "targetType": { "type": "reference", - "id": 311, + "id": 327, "name": "BytesLike" } } @@ -6353,7 +6445,7 @@ ] }, { - "id": 281, + "id": 297, "name": "isHexString", "kind": 64, "kindString": "Function", @@ -6367,7 +6459,7 @@ ], "signatures": [ { - "id": 282, + "id": 298, "name": "isHexString", "kind": 4096, "kindString": "Call signature", @@ -6377,7 +6469,7 @@ }, "parameters": [ { - "id": 283, + "id": 299, "name": "value", "kind": 32768, "kindString": "Parameter", @@ -6388,7 +6480,7 @@ } }, { - "id": 284, + "id": 300, "name": "length", "kind": 32768, "kindString": "Parameter", @@ -6461,7 +6553,7 @@ ] }, { - "id": 337, + "id": 350, "name": "keccak256", "kind": 64, "kindString": "Function", @@ -6475,21 +6567,21 @@ ], "signatures": [ { - "id": 338, + "id": 351, "name": "keccak256", "kind": 4096, "kindString": "Call signature", "flags": {}, "parameters": [ { - "id": 339, + "id": 352, "name": "data", "kind": 32768, "kindString": "Parameter", "flags": {}, "type": { "type": "reference", - "id": 311, + "id": 327, "name": "BytesLike" } } @@ -6502,7 +6594,7 @@ ] }, { - "id": 340, + "id": 353, "name": "pack", "kind": 64, "kindString": "Function", @@ -6516,14 +6608,14 @@ ], "signatures": [ { - "id": 341, + "id": 354, "name": "pack", "kind": 4096, "kindString": "Call signature", "flags": {}, "parameters": [ { - "id": 342, + "id": 355, "name": "types", "kind": 32768, "kindString": "Parameter", @@ -6541,7 +6633,7 @@ } }, { - "id": 343, + "id": 356, "name": "values", "kind": 32768, "kindString": "Parameter", @@ -6567,7 +6659,60 @@ ] }, { - "id": 344, + "id": 104, + "name": "recoverPublicKey", + "kind": 64, + "kindString": "Function", + "flags": {}, + "sources": [ + { + "fileName": "src/utils/recover-public-key.ts", + "line": 5, + "character": 16 + } + ], + "signatures": [ + { + "id": 105, + "name": "recoverPublicKey", + "kind": 4096, + "kindString": "Call signature", + "flags": {}, + "parameters": [ + { + "id": 106, + "name": "digest", + "kind": 32768, + "kindString": "Parameter", + "flags": {}, + "type": { + "type": "reference", + "id": 327, + "name": "BytesLike" + } + }, + { + "id": 107, + "name": "signature", + "kind": 32768, + "kindString": "Parameter", + "flags": {}, + "type": { + "type": "reference", + "id": 335, + "name": "SignatureLike" + } + } + ], + "type": { + "type": "intrinsic", + "name": "string" + } + } + ] + }, + { + "id": 357, "name": "solidityKeccak256", "kind": 64, "kindString": "Function", @@ -6581,7 +6726,7 @@ ], "signatures": [ { - "id": 345, + "id": 358, "name": "solidityKeccak256", "kind": 4096, "kindString": "Call signature", @@ -6603,7 +6748,7 @@ }, "parameters": [ { - "id": 346, + "id": 359, "name": "types", "kind": 32768, "kindString": "Parameter", @@ -6624,7 +6769,7 @@ } }, { - "id": 347, + "id": 360, "name": "values", "kind": 32768, "kindString": "Parameter", @@ -6653,7 +6798,63 @@ ] }, { - "id": 274, + "id": 101, + "name": "splitSignature", + "kind": 64, + "kindString": "Function", + "flags": {}, + "sources": [ + { + "fileName": "src/utils/split-signature.ts", + "line": 38, + "character": 16 + } + ], + "signatures": [ + { + "id": 102, + "name": "splitSignature", + "kind": 4096, + "kindString": "Call signature", + "flags": {}, + "comment": { + "shortText": "Expands a signature into the full signature object and fills in missing properties.", + "text": "* Same as [\"splitSignature\" in ethers.js](https://docs.ethers.io/v5/api/utils/bytes/#utils-splitSignature)\n", + "returns": "a full signature object with all properties filled\n", + "tags": [ + { + "tag": "example", + "text": "\n```javascript\nconst signature = '0x60bc4ed91f2021aefe7045f3f77bd12f87eb733aee24bd1965343b3c27b3971647252185b7d2abb411b01b5d1ac4ab41ea486df1e9b396758c1aec6c1b6eee331b';\nsplitSignature(signature);\n {\n r: \"0x60bc4ed91f2021aefe7045f3f77bd12f87eb733aee24bd1965343b3c27b39716\",\n s: \"0x47252185b7d2abb411b01b5d1ac4ab41ea486df1e9b396758c1aec6c1b6eee33\",\n _vs: \"0x47252185b7d2abb411b01b5d1ac4ab41ea486df1e9b396758c1aec6c1b6eee33\",\n recoveryParam: 0,\n v: 27,\n yParityAndS: \"0x47252185b7d2abb411b01b5d1ac4ab41ea486df1e9b396758c1aec6c1b6eee33\",\n compact: \"0x60bc4ed91f2021aefe7045f3f77bd12f87eb733aee24bd1965343b3c27b3971647252185b7d2abb411b01b5d1ac4ab41ea486df1e9b396758c1aec6c1b6eee33\"\n }\n```\n" + } + ] + }, + "parameters": [ + { + "id": 103, + "name": "signature", + "kind": 32768, + "kindString": "Parameter", + "flags": {}, + "comment": { + "shortText": "the signature object to split, parse, and compute missing properties from\n" + }, + "type": { + "type": "reference", + "id": 335, + "name": "SignatureLike" + } + } + ], + "type": { + "type": "reference", + "id": 342, + "name": "Signature" + } + } + ] + }, + { + "id": 290, "name": "stripZeros", "kind": 64, "kindString": "Function", @@ -6667,21 +6868,21 @@ ], "signatures": [ { - "id": 275, + "id": 291, "name": "stripZeros", "kind": 4096, "kindString": "Call signature", "flags": {}, "parameters": [ { - "id": 276, + "id": 292, "name": "value", "kind": 32768, "kindString": "Parameter", "flags": {}, "type": { "type": "reference", - "id": 311, + "id": 327, "name": "BytesLike" } } @@ -6744,7 +6945,7 @@ }, { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" }, { @@ -6759,7 +6960,7 @@ ], "type": { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" } } @@ -6818,7 +7019,7 @@ ] }, { - "id": 98, + "id": 108, "name": "toUtf8Bytes", "kind": 64, "kindString": "Function", @@ -6832,14 +7033,14 @@ ], "signatures": [ { - "id": 99, + "id": 109, "name": "toUtf8Bytes", "kind": 4096, "kindString": "Call signature", "flags": {}, "parameters": [ { - "id": 100, + "id": 110, "name": "data", "kind": 32768, "kindString": "Parameter", @@ -6913,7 +7114,7 @@ }, { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" }, { @@ -6928,14 +7129,14 @@ ], "type": { "type": "reference", - "id": 109, + "id": 125, "name": "TinyBig" } } ] }, { - "id": 277, + "id": 293, "name": "zeroPad", "kind": 64, "kindString": "Function", @@ -6949,26 +7150,26 @@ ], "signatures": [ { - "id": 278, + "id": 294, "name": "zeroPad", "kind": 4096, "kindString": "Call signature", "flags": {}, "parameters": [ { - "id": 279, + "id": 295, "name": "value", "kind": 32768, "kindString": "Parameter", "flags": {}, "type": { "type": "reference", - "id": 311, + "id": 327, "name": "BytesLike" } }, { - "id": 280, + "id": 296, "name": "length", "kind": 32768, "kindString": "Parameter", @@ -6994,68 +7195,72 @@ "title": "Classes", "kind": 128, "children": [ - 101, + 117, 48, 13, - 109 + 125 ] }, { "title": "Interfaces", "kind": 256, "children": [ - 313, - 316, - 222, - 241, - 326 + 329, + 332, + 238, + 257, + 342 ] }, { "title": "Type aliases", "kind": 4194304, "children": [ - 211, - 310, - 311, - 312, - 220, - 221, - 319, - 245 + 227, + 326, + 327, + 328, + 236, + 237, + 335, + 261 ] }, { "title": "Functions", "kind": 64, "children": [ - 267, - 271, + 283, + 111, + 114, + 287, 4, 1, 95, - 334, - 297, - 289, - 292, - 303, - 300, - 306, - 285, + 98, + 313, + 305, + 308, + 319, + 316, + 322, + 301, 7, - 264, - 261, - 281, + 280, + 277, + 297, 10, - 337, - 340, - 344, - 274, + 350, + 353, + 104, + 357, + 101, + 290, 86, 89, - 98, + 108, 92, - 277 + 293 ] } ], diff --git a/src/index.ts b/src/index.ts index f526c1e5..1ef29b6e 100644 --- a/src/index.ts +++ b/src/index.ts @@ -10,16 +10,19 @@ import { } from './types/Contract.types'; import { Network } from './types/Network.types'; import { TransactionResponse } from './types/Transaction.types'; +import { computeAddress } from './utils/compute-address'; +import { computePublicKey } from './utils/compute-public-key'; import { etherToGwei } from './utils/ether-to-gwei'; import { etherToWei } from './utils/ether-to-wei'; import { gweiToEther } from './utils/gwei-to-ether'; +import { hashMessage } from './utils/hash-message'; import { isAddress } from './utils/is-address'; +import { recoverPublicKey } from './utils/recover-public-key'; +import { splitSignature } from './utils/split-signature'; import { toChecksumAddress } from './utils/to-checksum-address'; // import { verifyMessage } from './utils/verify-message'; import { toUtf8Bytes } from './utils/to-utf8-bytes'; import { weiToEther } from './utils/wei-to-ether'; -import { hashMessage } from './utils/hash-message'; -import { splitSignature } from './utils/split-signature'; export * from './utils/bytes'; export * from './utils/hash-message'; @@ -38,8 +41,11 @@ export { gweiToEther, hashMessage, splitSignature, + recoverPublicKey, // verifyMessage, toUtf8Bytes, + computeAddress, + computePublicKey, /* classes */ Contract, TinyBig, diff --git a/src/providers/test/json-rpc-provider/get-gas-price.test.ts b/src/providers/test/json-rpc-provider/get-gas-price.test.ts index 257f7691..68dd7916 100644 --- a/src/providers/test/json-rpc-provider/get-gas-price.test.ts +++ b/src/providers/test/json-rpc-provider/get-gas-price.test.ts @@ -12,6 +12,8 @@ describe('provider.getGasPrice', () => { ethersProvider.getGasPrice(), essentialEthProvider.getGasPrice(), ]); - expect(ethersGasPrice.toNumber()).toBe(essentialEthGasPrice.toNumber()); + expect( + ethersGasPrice.sub(essentialEthGasPrice.toString()).toNumber(), + ).toBeLessThan(100); }); }); diff --git a/src/providers/utils/chains-info.ts b/src/providers/utils/chains-info.ts index 27de5817..5cb88093 100644 --- a/src/providers/utils/chains-info.ts +++ b/src/providers/utils/chains-info.ts @@ -449,6 +449,9 @@ export default { "588": [ "metis-stardust" ], + "592": [ + "astr" + ], "595": [ "maca" ], diff --git a/src/utils/compute-address.ts b/src/utils/compute-address.ts new file mode 100644 index 00000000..4356d4ea --- /dev/null +++ b/src/utils/compute-address.ts @@ -0,0 +1,17 @@ +import { computePublicKey, toChecksumAddress } from '..'; +import { hexDataSlice } from './bytes'; +import { keccak256 } from './keccak256'; + +/** + * Computes the address that corresponds to a specified public or private key + * + * @param key the public or private key to find the address related to + * + * @returns the address that corresponds to the key specified + */ +export function computeAddress(key: string): string { + if (!key.startsWith('0x04')) { + key = computePublicKey(key); + } + return toChecksumAddress(hexDataSlice(keccak256(hexDataSlice(key, 1)), 12)); +} diff --git a/src/utils/compute-public-key.ts b/src/utils/compute-public-key.ts new file mode 100644 index 00000000..b15ccaae --- /dev/null +++ b/src/utils/compute-public-key.ts @@ -0,0 +1,14 @@ +import { Point } from '@noble/secp256k1'; +import { BytesLike, hexlify } from './bytes'; + +/** + * Computes the public key from a given private key + * + * @param key the private key to find a public key from + * + * @returns the public key + */ +export function computePublicKey(privKey: BytesLike): string { + privKey = hexlify(privKey).slice(2); + return '0x' + Point.fromPrivateKey(privKey).toHex(); +} diff --git a/src/utils/recover-public-key.ts b/src/utils/recover-public-key.ts new file mode 100644 index 00000000..1373bfe0 --- /dev/null +++ b/src/utils/recover-public-key.ts @@ -0,0 +1,17 @@ +import { Point } from '@noble/secp256k1'; +import { BytesLike, hexlify, SignatureLike } from './bytes'; +import { splitSignature } from './split-signature'; + +export function recoverPublicKey( + digest: BytesLike, + signature: SignatureLike, +): string { + let msg; + if (typeof digest === 'string') msg = digest.slice(2); + else msg = hexlify(digest).slice(2); + const sig = splitSignature(signature); + return ( + '0x' + + Point.fromSignature(msg, sig.compact.slice(2), sig.recoveryParam).toHex() + ); +} diff --git a/src/utils/tests/compute-address.test.ts b/src/utils/tests/compute-address.test.ts new file mode 100644 index 00000000..fec8ea95 --- /dev/null +++ b/src/utils/tests/compute-address.test.ts @@ -0,0 +1,15 @@ +import { utils } from 'ethers'; +import { computeAddress } from '../../index'; + +describe('computeAddress', () => { + it('should match ethers.js - public key', () => { + const publicKey = + '0x04aaa2abcf8d119ad68b2c190abf34355a0029197911e2446007d5b44e6fddfd54352326fedac51eca491d59937c592ecffff65c6941037babbe26edfdbb32a688'; + expect(computeAddress(publicKey)).toBe(utils.computeAddress(publicKey)); + }); + it('should match ethers.js - private key', () => { + const privateKey = + '0x8da4ef21b864d2cc526dbdb2a120bd2874c36c9d0a1fb7f8c63d7f7a8b41de8f'; // example private key from http://www.herongyang.com/Ethereum/Etheruem-Account-Public-Private-Key-Example.html + expect(computeAddress(privateKey)).toBe(utils.computeAddress(privateKey)); + }); +}); diff --git a/src/utils/tests/compute-public-key.test.ts b/src/utils/tests/compute-public-key.test.ts new file mode 100644 index 00000000..5372db18 --- /dev/null +++ b/src/utils/tests/compute-public-key.test.ts @@ -0,0 +1,12 @@ +import { utils } from 'ethers'; +import { computePublicKey } from '../../index'; + +describe('computePublicKey', () => { + it('should match ethers.js', () => { + const privateKey = + '0x8da4ef21b864d2cc526dbdb2a120bd2874c36c9d0a1fb7f8c63d7f7a8b41de8f'; // example private key from http://www.herongyang.com/Ethereum/Etheruem-Account-Public-Private-Key-Example.html + expect(computePublicKey(privateKey)).toBe( + utils.computePublicKey(privateKey), + ); + }); +}); diff --git a/src/utils/tests/recover-public-key.test.ts b/src/utils/tests/recover-public-key.test.ts new file mode 100644 index 00000000..bce47cb7 --- /dev/null +++ b/src/utils/tests/recover-public-key.test.ts @@ -0,0 +1,11 @@ +import { utils } from 'ethers'; +import { recoverPublicKey } from '../../index'; + +describe('recoverPublicKey', () => { + it('should match ethers.js', () => { + const msg = '0x49204c4f5645205448452053454154544c45204e4654204d555345554d'; + const sig = + '0x60bc4ed91f2021aefe7045f3f77bd12f87eb733aee24bd1965343b3c27b3971647252185b7d2abb411b01b5d1ac4ab41ea486df1e9b396758c1aec6c1b6eee331b'; + expect(recoverPublicKey(msg, sig)).toBe(utils.recoverPublicKey(msg, sig)); + }); +});