From 75a5bd21d62e88d6f2a26fed1d45e793c4a0adcb Mon Sep 17 00:00:00 2001 From: Enrique Date: Tue, 9 Apr 2024 14:11:31 -0400 Subject: [PATCH 1/9] updated ethers --- package.json | 2 +- yarn.lock | 509 +++++---------------------------------------------- 2 files changed, 49 insertions(+), 462 deletions(-) diff --git a/package.json b/package.json index 46fbb43..ffac25d 100644 --- a/package.json +++ b/package.json @@ -27,7 +27,7 @@ ], "license": "MIT", "dependencies": { - "ethers": "^5.3.1", + "ethers": "^6.11.1", "tiny-invariant": "^1.3.1" }, "devDependencies": { diff --git a/yarn.lock b/yarn.lock index 0e29e9d..dd18962 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,6 +2,11 @@ # yarn lockfile v1 +"@adraffy/ens-normalize@1.10.1": + version "1.10.1" + resolved "https://registry.yarnpkg.com/@adraffy/ens-normalize/-/ens-normalize-1.10.1.tgz#63430d04bd8c5e74f8d7d049338f1cd9d4f02069" + integrity sha512-96Z2IP3mYmF1Xg2cDm8f1gWGf/HUVedQ3FMifV4kG/PQ4yEP51xDtRAEfhVNt5f/uzpNkZHwWQuUcu6D6K+Ekw== + "@ampproject/remapping@^2.1.0": version "2.2.0" resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz#56c133824780de3174aed5ab6834f3026790154d" @@ -949,348 +954,6 @@ exec-sh "^0.3.2" minimist "^1.2.0" -"@ethersproject/abi@5.7.0", "@ethersproject/abi@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.7.0.tgz#b3f3e045bbbeed1af3947335c247ad625a44e449" - integrity sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA== - dependencies: - "@ethersproject/address" "^5.7.0" - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/constants" "^5.7.0" - "@ethersproject/hash" "^5.7.0" - "@ethersproject/keccak256" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/strings" "^5.7.0" - -"@ethersproject/abstract-provider@5.7.0", "@ethersproject/abstract-provider@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz#b0a8550f88b6bf9d51f90e4795d48294630cb9ef" - integrity sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw== - dependencies: - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/networks" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/transactions" "^5.7.0" - "@ethersproject/web" "^5.7.0" - -"@ethersproject/abstract-signer@5.7.0", "@ethersproject/abstract-signer@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz#13f4f32117868452191a4649723cb086d2b596b2" - integrity sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ== - dependencies: - "@ethersproject/abstract-provider" "^5.7.0" - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - -"@ethersproject/address@5.7.0", "@ethersproject/address@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.7.0.tgz#19b56c4d74a3b0a46bfdbb6cfcc0a153fc697f37" - integrity sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA== - dependencies: - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/keccak256" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/rlp" "^5.7.0" - -"@ethersproject/base64@5.7.0", "@ethersproject/base64@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.7.0.tgz#ac4ee92aa36c1628173e221d0d01f53692059e1c" - integrity sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ== - dependencies: - "@ethersproject/bytes" "^5.7.0" - -"@ethersproject/basex@5.7.0", "@ethersproject/basex@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.7.0.tgz#97034dc7e8938a8ca943ab20f8a5e492ece4020b" - integrity sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw== - dependencies: - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - -"@ethersproject/bignumber@5.7.0", "@ethersproject/bignumber@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.7.0.tgz#e2f03837f268ba655ffba03a57853e18a18dc9c2" - integrity sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw== - dependencies: - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - bn.js "^5.2.1" - -"@ethersproject/bytes@5.7.0", "@ethersproject/bytes@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.7.0.tgz#a00f6ea8d7e7534d6d87f47188af1148d71f155d" - integrity sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A== - dependencies: - "@ethersproject/logger" "^5.7.0" - -"@ethersproject/constants@5.7.0", "@ethersproject/constants@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.7.0.tgz#df80a9705a7e08984161f09014ea012d1c75295e" - integrity sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA== - dependencies: - "@ethersproject/bignumber" "^5.7.0" - -"@ethersproject/contracts@5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.7.0.tgz#c305e775abd07e48aa590e1a877ed5c316f8bd1e" - integrity sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg== - dependencies: - "@ethersproject/abi" "^5.7.0" - "@ethersproject/abstract-provider" "^5.7.0" - "@ethersproject/abstract-signer" "^5.7.0" - "@ethersproject/address" "^5.7.0" - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/constants" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/transactions" "^5.7.0" - -"@ethersproject/hash@5.7.0", "@ethersproject/hash@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.7.0.tgz#eb7aca84a588508369562e16e514b539ba5240a7" - integrity sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g== - dependencies: - "@ethersproject/abstract-signer" "^5.7.0" - "@ethersproject/address" "^5.7.0" - "@ethersproject/base64" "^5.7.0" - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/keccak256" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/strings" "^5.7.0" - -"@ethersproject/hdnode@5.7.0", "@ethersproject/hdnode@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.7.0.tgz#e627ddc6b466bc77aebf1a6b9e47405ca5aef9cf" - integrity sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg== - dependencies: - "@ethersproject/abstract-signer" "^5.7.0" - "@ethersproject/basex" "^5.7.0" - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/pbkdf2" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/sha2" "^5.7.0" - "@ethersproject/signing-key" "^5.7.0" - "@ethersproject/strings" "^5.7.0" - "@ethersproject/transactions" "^5.7.0" - "@ethersproject/wordlists" "^5.7.0" - -"@ethersproject/json-wallets@5.7.0", "@ethersproject/json-wallets@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz#5e3355287b548c32b368d91014919ebebddd5360" - integrity sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g== - dependencies: - "@ethersproject/abstract-signer" "^5.7.0" - "@ethersproject/address" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/hdnode" "^5.7.0" - "@ethersproject/keccak256" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/pbkdf2" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/random" "^5.7.0" - "@ethersproject/strings" "^5.7.0" - "@ethersproject/transactions" "^5.7.0" - aes-js "3.0.0" - scrypt-js "3.0.1" - -"@ethersproject/keccak256@5.7.0", "@ethersproject/keccak256@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.7.0.tgz#3186350c6e1cd6aba7940384ec7d6d9db01f335a" - integrity sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg== - dependencies: - "@ethersproject/bytes" "^5.7.0" - js-sha3 "0.8.0" - -"@ethersproject/logger@5.7.0", "@ethersproject/logger@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.7.0.tgz#6ce9ae168e74fecf287be17062b590852c311892" - integrity sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig== - -"@ethersproject/networks@5.7.1", "@ethersproject/networks@^5.7.0": - version "5.7.1" - resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.1.tgz#118e1a981d757d45ccea6bb58d9fd3d9db14ead6" - integrity sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ== - dependencies: - "@ethersproject/logger" "^5.7.0" - -"@ethersproject/pbkdf2@5.7.0", "@ethersproject/pbkdf2@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz#d2267d0a1f6e123f3771007338c47cccd83d3102" - integrity sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw== - dependencies: - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/sha2" "^5.7.0" - -"@ethersproject/properties@5.7.0", "@ethersproject/properties@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.7.0.tgz#a6e12cb0439b878aaf470f1902a176033067ed30" - integrity sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw== - dependencies: - "@ethersproject/logger" "^5.7.0" - -"@ethersproject/providers@5.7.2": - version "5.7.2" - resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.7.2.tgz#f8b1a4f275d7ce58cf0a2eec222269a08beb18cb" - integrity sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg== - dependencies: - "@ethersproject/abstract-provider" "^5.7.0" - "@ethersproject/abstract-signer" "^5.7.0" - "@ethersproject/address" "^5.7.0" - "@ethersproject/base64" "^5.7.0" - "@ethersproject/basex" "^5.7.0" - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/constants" "^5.7.0" - "@ethersproject/hash" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/networks" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/random" "^5.7.0" - "@ethersproject/rlp" "^5.7.0" - "@ethersproject/sha2" "^5.7.0" - "@ethersproject/strings" "^5.7.0" - "@ethersproject/transactions" "^5.7.0" - "@ethersproject/web" "^5.7.0" - bech32 "1.1.4" - ws "7.4.6" - -"@ethersproject/random@5.7.0", "@ethersproject/random@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.7.0.tgz#af19dcbc2484aae078bb03656ec05df66253280c" - integrity sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ== - dependencies: - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - -"@ethersproject/rlp@5.7.0", "@ethersproject/rlp@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.7.0.tgz#de39e4d5918b9d74d46de93af80b7685a9c21304" - integrity sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w== - dependencies: - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - -"@ethersproject/sha2@5.7.0", "@ethersproject/sha2@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.7.0.tgz#9a5f7a7824ef784f7f7680984e593a800480c9fb" - integrity sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw== - dependencies: - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - hash.js "1.1.7" - -"@ethersproject/signing-key@5.7.0", "@ethersproject/signing-key@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.7.0.tgz#06b2df39411b00bc57c7c09b01d1e41cf1b16ab3" - integrity sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q== - dependencies: - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - bn.js "^5.2.1" - elliptic "6.5.4" - hash.js "1.1.7" - -"@ethersproject/solidity@5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.7.0.tgz#5e9c911d8a2acce2a5ebb48a5e2e0af20b631cb8" - integrity sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA== - dependencies: - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/keccak256" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/sha2" "^5.7.0" - "@ethersproject/strings" "^5.7.0" - -"@ethersproject/strings@5.7.0", "@ethersproject/strings@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.7.0.tgz#54c9d2a7c57ae8f1205c88a9d3a56471e14d5ed2" - integrity sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg== - dependencies: - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/constants" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - -"@ethersproject/transactions@5.7.0", "@ethersproject/transactions@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.7.0.tgz#91318fc24063e057885a6af13fdb703e1f993d3b" - integrity sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ== - dependencies: - "@ethersproject/address" "^5.7.0" - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/constants" "^5.7.0" - "@ethersproject/keccak256" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/rlp" "^5.7.0" - "@ethersproject/signing-key" "^5.7.0" - -"@ethersproject/units@5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.7.0.tgz#637b563d7e14f42deeee39245275d477aae1d8b1" - integrity sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg== - dependencies: - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/constants" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - -"@ethersproject/wallet@5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.7.0.tgz#4e5d0790d96fe21d61d38fb40324e6c7ef350b2d" - integrity sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA== - dependencies: - "@ethersproject/abstract-provider" "^5.7.0" - "@ethersproject/abstract-signer" "^5.7.0" - "@ethersproject/address" "^5.7.0" - "@ethersproject/bignumber" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/hash" "^5.7.0" - "@ethersproject/hdnode" "^5.7.0" - "@ethersproject/json-wallets" "^5.7.0" - "@ethersproject/keccak256" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/random" "^5.7.0" - "@ethersproject/signing-key" "^5.7.0" - "@ethersproject/transactions" "^5.7.0" - "@ethersproject/wordlists" "^5.7.0" - -"@ethersproject/web@5.7.1", "@ethersproject/web@^5.7.0": - version "5.7.1" - resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.1.tgz#de1f285b373149bee5928f4eb7bcb87ee5fbb4ae" - integrity sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w== - dependencies: - "@ethersproject/base64" "^5.7.0" - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/strings" "^5.7.0" - -"@ethersproject/wordlists@5.7.0", "@ethersproject/wordlists@^5.7.0": - version "5.7.0" - resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.7.0.tgz#8fb2c07185d68c3e09eb3bfd6e779ba2774627f5" - integrity sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA== - dependencies: - "@ethersproject/bytes" "^5.7.0" - "@ethersproject/hash" "^5.7.0" - "@ethersproject/logger" "^5.7.0" - "@ethersproject/properties" "^5.7.0" - "@ethersproject/strings" "^5.7.0" - "@istanbuljs/load-nyc-config@^1.0.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" @@ -1524,6 +1187,18 @@ "@jridgewell/resolve-uri" "3.1.0" "@jridgewell/sourcemap-codec" "1.4.14" +"@noble/curves@1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.2.0.tgz#92d7e12e4e49b23105a2555c6984d41733d65c35" + integrity sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw== + dependencies: + "@noble/hashes" "1.3.2" + +"@noble/hashes@1.3.2": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.3.2.tgz#6f26dbc8fbc7205873ce3cee2f690eba0d421b39" + integrity sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ== + "@rollup/plugin-babel@^5.1.0": version "5.3.1" resolved "https://registry.yarnpkg.com/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz#04bc0608f4aa4b2e4b1aebf284344d0f68fda283" @@ -1693,6 +1368,11 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-18.11.4.tgz#7017a52e18dfaad32f55eebd539993014441949c" integrity sha512-BxcJpBu8D3kv/GZkx/gSMz6VnTJREBj/4lbzYOQueUOELkt8WrO6zAcSPmp9uRPEW/d+lUO8QK0W2xnS1hEU0A== +"@types/node@18.15.13": + version "18.15.13" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.15.13.tgz#f64277c341150c979e42b00e4ac289290c9df469" + integrity sha512-N+0kuo9KgrUQ1Sn/ifDXsvg0TTleP7rIy4zOBGECxAljqvqfqpTfzx0Q1NUedOixRMBfe2Whhb056a42cWs26Q== + "@types/normalize-package-data@^2.4.0": version "2.4.1" resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" @@ -1815,10 +1495,10 @@ acorn@^7.1.0, acorn@^7.1.1: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -aes-js@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d" - integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw== +aes-js@4.0.0-beta.5: + version "4.0.0-beta.5" + resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-4.0.0-beta.5.tgz#8d2452c52adedebc3a3e28465d858c11ca315873" + integrity sha512-G965FqalsNyrPqgEGON7nIx1e/OVENSgiEIzyC63haUMuvNnwIgIjMs52hlTCKhkBny7A2ORNlfY9Zu+jmGk1Q== ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.3: version "6.12.6" @@ -2181,21 +1861,6 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" -bech32@1.1.4: - version "1.1.4" - resolved "https://registry.yarnpkg.com/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9" - integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== - -bn.js@^4.11.9: - version "4.12.0" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" - integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== - -bn.js@^5.2.1: - version "5.2.1" - resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" - integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== - brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -2227,11 +1892,6 @@ braces@^3.0.2: dependencies: fill-range "^7.0.1" -brorand@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" - integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== - browser-process-hrtime@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" @@ -2723,19 +2383,6 @@ electron-to-chromium@^1.4.251: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz#61046d1e4cab3a25238f6bf7413795270f125592" integrity sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA== -elliptic@6.5.4: - version "6.5.4" - resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" - integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== - dependencies: - bn.js "^4.11.9" - brorand "^1.1.0" - hash.js "^1.0.0" - hmac-drbg "^1.0.1" - inherits "^2.0.4" - minimalistic-assert "^1.0.1" - minimalistic-crypto-utils "^1.0.1" - emoji-regex@^7.0.1: version "7.0.3" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" @@ -3074,41 +2721,18 @@ esutils@^2.0.2: resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== -ethers@^5.3.1: - version "5.7.2" - resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.7.2.tgz#3a7deeabbb8c030d4126b24f84e525466145872e" - integrity sha512-wswUsmWo1aOK8rR7DIKiWSw9DbLWe6x98Jrn8wcTflTVvaXhAMaB5zGAXy0GYQEQp9iO1iSHWVyARQm11zUtyg== - dependencies: - "@ethersproject/abi" "5.7.0" - "@ethersproject/abstract-provider" "5.7.0" - "@ethersproject/abstract-signer" "5.7.0" - "@ethersproject/address" "5.7.0" - "@ethersproject/base64" "5.7.0" - "@ethersproject/basex" "5.7.0" - "@ethersproject/bignumber" "5.7.0" - "@ethersproject/bytes" "5.7.0" - "@ethersproject/constants" "5.7.0" - "@ethersproject/contracts" "5.7.0" - "@ethersproject/hash" "5.7.0" - "@ethersproject/hdnode" "5.7.0" - "@ethersproject/json-wallets" "5.7.0" - "@ethersproject/keccak256" "5.7.0" - "@ethersproject/logger" "5.7.0" - "@ethersproject/networks" "5.7.1" - "@ethersproject/pbkdf2" "5.7.0" - "@ethersproject/properties" "5.7.0" - "@ethersproject/providers" "5.7.2" - "@ethersproject/random" "5.7.0" - "@ethersproject/rlp" "5.7.0" - "@ethersproject/sha2" "5.7.0" - "@ethersproject/signing-key" "5.7.0" - "@ethersproject/solidity" "5.7.0" - "@ethersproject/strings" "5.7.0" - "@ethersproject/transactions" "5.7.0" - "@ethersproject/units" "5.7.0" - "@ethersproject/wallet" "5.7.0" - "@ethersproject/web" "5.7.1" - "@ethersproject/wordlists" "5.7.0" +ethers@^6.11.1: + version "6.11.1" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-6.11.1.tgz#96aae00b627c2e35f9b0a4d65c7ab658259ee6af" + integrity sha512-mxTAE6wqJQAbp5QAe/+o+rXOID7Nw91OZXvgpjDa1r4fAbq2Nu314oEZSbjoRLacuCzs7kUC3clEvkCQowffGg== + dependencies: + "@adraffy/ens-normalize" "1.10.1" + "@noble/curves" "1.2.0" + "@noble/hashes" "1.3.2" + "@types/node" "18.15.13" + aes-js "4.0.0-beta.5" + tslib "2.4.0" + ws "8.5.0" exec-sh@^0.3.2: version "0.3.6" @@ -3610,23 +3234,6 @@ has@^1.0.3: dependencies: function-bind "^1.1.1" -hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3: - version "1.1.7" - resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" - integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== - dependencies: - inherits "^2.0.3" - minimalistic-assert "^1.0.1" - -hmac-drbg@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" - integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== - dependencies: - hash.js "^1.0.3" - minimalistic-assert "^1.0.0" - minimalistic-crypto-utils "^1.0.1" - hosted-git-info@^2.1.4: version "2.8.9" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" @@ -3704,7 +3311,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@^2.0.3, inherits@^2.0.4: +inherits@2: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -4483,11 +4090,6 @@ jpjs@^1.2.1: resolved "https://registry.yarnpkg.com/jpjs/-/jpjs-1.2.1.tgz#f343833de8838a5beba1f42d5a219be0114c44b7" integrity sha512-GxJWybWU4NV0RNKi6EIqk6IRPOTqd/h+U7sbtyuD7yUISUzV78LdHnq2xkevJsTlz/EImux4sWj+wfMiwKLkiw== -js-sha3@0.8.0: - version "0.8.0" - resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" - integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== - "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -4846,16 +4448,6 @@ mimic-fn@^2.1.0: resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== -minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" - integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== - -minimalistic-crypto-utils@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" - integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== - minimatch@^3.0.4, minimatch@^3.1.1, minimatch@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" @@ -5768,11 +5360,6 @@ saxes@^3.1.9: dependencies: xmlchars "^2.1.1" -scrypt-js@3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312" - integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA== - "semver@2 || 3 || 4 || 5", semver@^5.5.0: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" @@ -6419,16 +6006,16 @@ tslib@2.0.1: resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.1.tgz#410eb0d113e5b6356490eec749603725b021b43e" integrity sha512-SgIkNheinmEBgx1IUNirK0TUD4X9yjjBRTqqjggWCU3pUEqIk3/Uwl3yRixYKT6WjQuGiwDv4NomL3wqRCj+CQ== +tslib@2.4.0, tslib@^2.0.3: + version "2.4.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3" + integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== + tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: version "1.14.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.0.3: - version "2.4.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3" - integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== - tsutils@^3.17.1: version "3.21.0" resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" @@ -6739,10 +6326,10 @@ write@1.0.3: dependencies: mkdirp "^0.5.1" -ws@7.4.6: - version "7.4.6" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" - integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== +ws@8.5.0: + version "8.5.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.5.0.tgz#bfb4be96600757fe5382de12c670dab984a1ed4f" + integrity sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg== ws@^7.0.0: version "7.5.9" From 07529c373c2bcd60922fda9a8b7f3dd4a5231530 Mon Sep 17 00:00:00 2001 From: Enrique Date: Tue, 9 Apr 2024 14:53:40 -0400 Subject: [PATCH 2/9] updated ethers requirments across allowancetransfer, constants, and signaturetransfer --- src/allowanceTransfer.test.ts | 56 +++++++++++++++++------------------ src/allowanceTransfer.ts | 25 ++++++++-------- src/constants.test.ts | 19 ++++++------ src/constants.ts | 11 ++++--- src/signatureTransfer.test.ts | 48 +++++++++++++++--------------- src/signatureTransfer.ts | 23 +++++++------- tsconfig.json | 2 +- 7 files changed, 90 insertions(+), 94 deletions(-) diff --git a/src/allowanceTransfer.test.ts b/src/allowanceTransfer.test.ts index a2dda2a..fe53f97 100644 --- a/src/allowanceTransfer.test.ts +++ b/src/allowanceTransfer.test.ts @@ -9,12 +9,12 @@ describe('AllowanceTransfer', () => { { details: { token: '0x0000000000000000000000000000000000000000', - amount: MaxAllowanceTransferAmount.toString(), - expiration: MaxAllowanceExpiration.toString(), - nonce: MaxOrderedNonce.toString(), + amount: MaxAllowanceTransferAmount, + expiration: MaxAllowanceExpiration, + nonce: MaxOrderedNonce, }, spender: '0x0000000000000000000000000000000000000000', - sigDeadline: MaxSigDeadline.toString(), + sigDeadline: MaxSigDeadline, }, '0x0000000000000000000000000000000000000000', 1 @@ -28,12 +28,12 @@ describe('AllowanceTransfer', () => { { details: { token: '0x0000000000000000000000000000000000000000', - amount: '0', - expiration: '0', - nonce: MaxOrderedNonce.add(1).toString(), + amount: 0n, + expiration: 0n, + nonce: MaxOrderedNonce + 1n, }, spender: '0x0000000000000000000000000000000000000000', - sigDeadline: '0', + sigDeadline: 0n, }, '0x0000000000000000000000000000000000000000', 1 @@ -47,12 +47,12 @@ describe('AllowanceTransfer', () => { { details: { token: '0x0000000000000000000000000000000000000000', - amount: MaxAllowanceTransferAmount.add(1).toString(), - expiration: '0', - nonce: 0, + amount: MaxAllowanceTransferAmount, + expiration: 0n, + nonce: 0n, }, spender: '0x0000000000000000000000000000000000000000', - sigDeadline: '0', + sigDeadline: 0n, }, '0x0000000000000000000000000000000000000000', 1 @@ -66,12 +66,12 @@ describe('AllowanceTransfer', () => { { details: { token: '0x0000000000000000000000000000000000000000', - amount: '0', - expiration: MaxAllowanceExpiration.add(1).toString(), - nonce: 0, + amount: 0n, + expiration: MaxAllowanceExpiration + 1n, + nonce: 0n, }, spender: '0x0000000000000000000000000000000000000000', - sigDeadline: '0', + sigDeadline: 0n, }, '0x0000000000000000000000000000000000000000', 1 @@ -85,12 +85,12 @@ describe('AllowanceTransfer', () => { { details: { token: '0x0000000000000000000000000000000000000000', - amount: '0', - expiration: '0', - nonce: 0, + amount: 0n, + expiration: 0n, + nonce: 0n, }, spender: '0x0000000000000000000000000000000000000000', - sigDeadline: MaxSigDeadline.add(1).toString(), + sigDeadline: MaxSigDeadline + 1n, }, '0x0000000000000000000000000000000000000000', 1 @@ -105,12 +105,12 @@ describe('AllowanceTransfer', () => { { details: { token: '0x0000000000000000000000000000000000000000', - amount: '0', - expiration: '0', - nonce: 0, + amount: 0n, + expiration: 0n, + nonce: 0n, }, spender: '0x0000000000000000000000000000000000000000', - sigDeadline: '0', + sigDeadline: 0n, }, '0x0000000000000000000000000000000000000000', 1 @@ -125,13 +125,13 @@ describe('AllowanceTransfer', () => { details: [ { token: '0x0000000000000000000000000000000000000000', - amount: '0', - expiration: '0', - nonce: 0, + amount: 0n, + expiration: 0n, + nonce: 0n, }, ], spender: '0x0000000000000000000000000000000000000000', - sigDeadline: '0', + sigDeadline: 0n, }, '0x0000000000000000000000000000000000000000', 1 diff --git a/src/allowanceTransfer.ts b/src/allowanceTransfer.ts index 3b42173..33c58e7 100644 --- a/src/allowanceTransfer.ts +++ b/src/allowanceTransfer.ts @@ -1,27 +1,26 @@ import invariant from 'tiny-invariant' -import { TypedDataDomain, TypedDataField } from '@ethersproject/abstract-signer' -import { BigNumberish } from '@ethersproject/bignumber' -import { _TypedDataEncoder } from '@ethersproject/hash' +import { TypedDataDomain, TypedDataField } from 'ethers' +import { TypedDataEncoder } from 'ethers' import { MaxSigDeadline, MaxOrderedNonce, MaxAllowanceTransferAmount, MaxAllowanceExpiration } from './constants' import { permit2Domain } from './domain' export interface PermitDetails { token: string - amount: BigNumberish - expiration: BigNumberish - nonce: BigNumberish + amount: bigint + expiration: bigint + nonce: bigint } export interface PermitSingle { details: PermitDetails spender: string - sigDeadline: BigNumberish + sigDeadline: bigint } export interface PermitBatch { details: PermitDetails[] spender: string - sigDeadline: BigNumberish + sigDeadline: bigint } export type PermitSingleData = { @@ -78,7 +77,7 @@ export abstract class AllowanceTransfer { permit2Address: string, chainId: number ): PermitSingleData | PermitBatchData { - invariant(MaxSigDeadline.gte(permit.sigDeadline), 'SIG_DEADLINE_OUT_OF_RANGE') + invariant(MaxSigDeadline >= permit.sigDeadline, 'SIG_DEADLINE_OUT_OF_RANGE'); const domain = permit2Domain(permit2Address, chainId) if (isPermit(permit)) { @@ -100,12 +99,12 @@ export abstract class AllowanceTransfer { public static hash(permit: PermitSingle | PermitBatch, permit2Address: string, chainId: number): string { const { domain, types, values } = AllowanceTransfer.getPermitData(permit, permit2Address, chainId) - return _TypedDataEncoder.hash(domain, types, values) + return TypedDataEncoder.hash(domain, types, values) } } function validatePermitDetails(details: PermitDetails) { - invariant(MaxOrderedNonce.gte(details.nonce), 'NONCE_OUT_OF_RANGE') - invariant(MaxAllowanceTransferAmount.gte(details.amount), 'AMOUNT_OUT_OF_RANGE') - invariant(MaxAllowanceExpiration.gte(details.expiration), 'EXPIRATION_OUT_OF_RANGE') + invariant(MaxOrderedNonce >= details.nonce, 'NONCE_OUT_OF_RANGE'); + invariant(MaxAllowanceTransferAmount >= details.amount, 'AMOUNT_OUT_OF_RANGE'); + invariant(MaxAllowanceExpiration >= details.expiration, 'EXPIRATION_OUT_OF_RANGE'); } diff --git a/src/constants.test.ts b/src/constants.test.ts index c1f90aa..6f63461 100644 --- a/src/constants.test.ts +++ b/src/constants.test.ts @@ -1,20 +1,19 @@ -import { BigNumber } from '@ethersproject/bignumber' import { MaxUint48, MaxUint160, MaxUint256, InstantExpiration } from './constants' describe('Constants', () => { it('MaxUint256', () => { - expect(MaxUint256).toEqual(BigNumber.from(2).pow(256).sub(1)) - }) + expect(MaxUint256).toEqual((2n ** 256n) - 1n); + }); it('MaxUint160', () => { - expect(MaxUint160).toEqual(BigNumber.from(2).pow(160).sub(1)) - }) + expect(MaxUint160).toEqual((2n ** 160n) - 1n); + }); it('MaxUint48', () => { - expect(MaxUint48).toEqual(BigNumber.from(2).pow(48).sub(1)) - }) + expect(MaxUint48).toEqual((2n ** 48n) - 1n); + }); it('InstantExpiration', () => { - expect(InstantExpiration).toEqual(BigNumber.from(0)) - }) -}) + expect(InstantExpiration).toEqual(0n); + }); +}) \ No newline at end of file diff --git a/src/constants.ts b/src/constants.ts index 50e7bef..aed98b6 100644 --- a/src/constants.ts +++ b/src/constants.ts @@ -1,10 +1,8 @@ -import { BigNumber } from '@ethersproject/bignumber' - export const PERMIT2_ADDRESS = '0x000000000022D473030F116dDEE9F6B43aC78BA3' -export const MaxUint48 = BigNumber.from('0xffffffffffff') -export const MaxUint160 = BigNumber.from('0xffffffffffffffffffffffffffffffffffffffff') -export const MaxUint256 = BigNumber.from('0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff') +export const MaxUint48 = BigInt('0xffffffffffff') +export const MaxUint160 =BigInt('0xffffffffffffffffffffffffffffffffffffffff') +export const MaxUint256 =BigInt('0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff') // alias max types for their usages // allowance transfer types @@ -17,4 +15,5 @@ export const MaxSignatureTransferAmount = MaxUint256 export const MaxUnorderedNonce = MaxUint256 export const MaxSigDeadline = MaxUint256 -export const InstantExpiration: BigNumber = BigNumber.from(0) +export const InstantExpiration = BigInt(0) + diff --git a/src/signatureTransfer.test.ts b/src/signatureTransfer.test.ts index d0cbfd9..b5ad70d 100644 --- a/src/signatureTransfer.test.ts +++ b/src/signatureTransfer.test.ts @@ -9,11 +9,11 @@ describe('SignatureTransfer', () => { { permitted: { token: '0x0000000000000000000000000000000000000000', - amount: MaxSignatureTransferAmount.toString(), + amount: MaxSignatureTransferAmount, }, spender: '0x0000000000000000000000000000000000000000', - nonce: MaxUnorderedNonce.toString(), - deadline: MaxSigDeadline.toString(), + nonce: MaxUnorderedNonce, + deadline: MaxSigDeadline, }, '0x0000000000000000000000000000000000000000', 1 @@ -27,11 +27,11 @@ describe('SignatureTransfer', () => { { permitted: { token: '0x0000000000000000000000000000000000000000', - amount: '0', + amount: 0n, }, spender: '0x0000000000000000000000000000000000000000', - nonce: MaxUnorderedNonce.add(1).toString(), - deadline: '0', + nonce: MaxUnorderedNonce + 1n, + deadline: 0n, }, '0x0000000000000000000000000000000000000000', 1 @@ -45,11 +45,11 @@ describe('SignatureTransfer', () => { { permitted: { token: '0x0000000000000000000000000000000000000000', - amount: MaxSignatureTransferAmount.add(1).toString(), + amount: MaxSignatureTransferAmount + 1n, }, spender: '0x0000000000000000000000000000000000000000', - nonce: '0', - deadline: '0', + nonce: 0n, + deadline: 0n, }, '0x0000000000000000000000000000000000000000', 1 @@ -63,11 +63,11 @@ describe('SignatureTransfer', () => { { permitted: { token: '0x0000000000000000000000000000000000000000', - amount: '0', + amount: 0n, }, spender: '0x0000000000000000000000000000000000000000', - nonce: '0', - deadline: MaxSigDeadline.add(1).toString(), + nonce: 0n, + deadline: MaxSigDeadline + 1n, }, '0x0000000000000000000000000000000000000000', 1 @@ -82,11 +82,11 @@ describe('SignatureTransfer', () => { { permitted: { token: '0x0000000000000000000000000000000000000000', - amount: '0', + amount: 0n, }, spender: '0x0000000000000000000000000000000000000000', - nonce: '0', - deadline: '0', + nonce: 0n, + deadline: 0n, }, '0x0000000000000000000000000000000000000000', 1 @@ -100,11 +100,11 @@ describe('SignatureTransfer', () => { { permitted: { token: '0x0000000000000000000000000000000000000000', - amount: '0', + amount: 0n, }, spender: '0x0000000000000000000000000000000000000000', - nonce: '0', - deadline: '0', + nonce: 0n, + deadline: 0n, }, '0x0000000000000000000000000000000000000000', 1, @@ -124,12 +124,12 @@ describe('SignatureTransfer', () => { permitted: [ { token: '0x0000000000000000000000000000000000000000', - amount: '0', + amount: 0n, }, ], spender: '0x0000000000000000000000000000000000000000', - nonce: '0', - deadline: '0', + nonce: 0n, + deadline: 0n, }, '0x0000000000000000000000000000000000000000', 1 @@ -144,12 +144,12 @@ describe('SignatureTransfer', () => { permitted: [ { token: '0x0000000000000000000000000000000000000000', - amount: '0', + amount: 0n, }, ], spender: '0x0000000000000000000000000000000000000000', - nonce: '0', - deadline: '0', + nonce: 0n, + deadline: 0n, }, '0x0000000000000000000000000000000000000000', 1, diff --git a/src/signatureTransfer.ts b/src/signatureTransfer.ts index 0c54275..1cf7dbb 100644 --- a/src/signatureTransfer.ts +++ b/src/signatureTransfer.ts @@ -1,7 +1,6 @@ import invariant from 'tiny-invariant' -import { TypedDataDomain, TypedDataField } from '@ethersproject/abstract-signer' -import { BigNumberish } from '@ethersproject/bignumber' -import { _TypedDataEncoder } from '@ethersproject/hash' +import { TypedDataDomain, TypedDataField } from 'ethers' +import { TypedDataEncoder } from 'ethers' import { permit2Domain } from './domain' import { MaxSigDeadline, MaxUnorderedNonce, MaxSignatureTransferAmount } from './constants' @@ -13,21 +12,21 @@ export interface Witness { export interface TokenPermissions { token: string - amount: BigNumberish + amount: bigint } export interface PermitTransferFrom { permitted: TokenPermissions spender: string - nonce: BigNumberish - deadline: BigNumberish + nonce: bigint + deadline: bigint } export interface PermitBatchTransferFrom { permitted: TokenPermissions[] spender: string - nonce: BigNumberish - deadline: BigNumberish + nonce: bigint + deadline: bigint } export type PermitTransferFromData = { @@ -113,8 +112,8 @@ export abstract class SignatureTransfer { chainId: number, witness?: Witness ): PermitTransferFromData | PermitBatchTransferFromData { - invariant(MaxSigDeadline.gte(permit.deadline), 'SIG_DEADLINE_OUT_OF_RANGE') - invariant(MaxUnorderedNonce.gte(permit.nonce), 'NONCE_OUT_OF_RANGE') + invariant(MaxSigDeadline >= permit.deadline, 'SIG_DEADLINE_OUT_OF_RANGE') + invariant(MaxUnorderedNonce >= permit.nonce, 'NONCE_OUT_OF_RANGE') const domain = permit2Domain(permit2Address, chainId) if (isPermitTransferFrom(permit)) { @@ -145,10 +144,10 @@ export abstract class SignatureTransfer { witness?: Witness ): string { const { domain, types, values } = SignatureTransfer.getPermitData(permit, permit2Address, chainId, witness) - return _TypedDataEncoder.hash(domain, types, values) + return TypedDataEncoder.hash(domain, types, values) } } function validateTokenPermissions(permissions: TokenPermissions) { - invariant(MaxSignatureTransferAmount.gte(permissions.amount), 'AMOUNT_OUT_OF_RANGE') + invariant(MaxSignatureTransferAmount >= permissions.amount, 'AMOUNT_OUT_OF_RANGE') } diff --git a/tsconfig.json b/tsconfig.json index 0086384..761f836 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,7 +1,7 @@ { "include": ["src"], "compilerOptions": { - "target": "es2018", + "target": "ES2020", "module": "esnext", "importHelpers": true, "declaration": true, From 023450b75caee1484107cb7023a7692fe521e808 Mon Sep 17 00:00:00 2001 From: Enrique Date: Tue, 9 Apr 2024 14:55:28 -0400 Subject: [PATCH 3/9] updated domain.ts --- src/domain.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/domain.ts b/src/domain.ts index 5aa2edc..4f433d0 100644 --- a/src/domain.ts +++ b/src/domain.ts @@ -1,4 +1,4 @@ -import { TypedDataDomain, TypedDataField } from '@ethersproject/abstract-signer' +import { TypedDataDomain, TypedDataField } from 'ethers' const PERMIT2_DOMAIN_NAME = 'Permit2' From 774ef48d8f9b0540315e854c2cd156dff5055441 Mon Sep 17 00:00:00 2001 From: Enrique Date: Tue, 9 Apr 2024 14:57:50 -0400 Subject: [PATCH 4/9] fixed minor typo bug --- src/allowanceTransfer.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/allowanceTransfer.test.ts b/src/allowanceTransfer.test.ts index fe53f97..99d4620 100644 --- a/src/allowanceTransfer.test.ts +++ b/src/allowanceTransfer.test.ts @@ -47,7 +47,7 @@ describe('AllowanceTransfer', () => { { details: { token: '0x0000000000000000000000000000000000000000', - amount: MaxAllowanceTransferAmount, + amount: MaxAllowanceTransferAmount + 1n, expiration: 0n, nonce: 0n, }, From 0c8e6545ae49390e138b8732ae123335aa0f5fb2 Mon Sep 17 00:00:00 2001 From: Enrique Date: Tue, 9 Apr 2024 15:04:51 -0400 Subject: [PATCH 5/9] updated allowanceprovider, upgrade complete --- src/providers/AllowanceProvider.ts | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/providers/AllowanceProvider.ts b/src/providers/AllowanceProvider.ts index 0eff6c0..3e3ce86 100644 --- a/src/providers/AllowanceProvider.ts +++ b/src/providers/AllowanceProvider.ts @@ -1,10 +1,8 @@ -import { BigNumber } from '@ethersproject/bignumber' -import { Provider } from '@ethersproject/providers' +import { Contract, Provider } from 'ethers' import Permit2Abi from '../../abis/Permit2.json' -import { Contract } from '@ethersproject/contracts' export interface AllowanceData { - amount: BigNumber + amount: bigint nonce: number expiration: number } @@ -20,7 +18,7 @@ export class AllowanceProvider { return await this.permit2.allowance(owner, token, spender) } - async getAllowance(token: string, owner: string, spender: string): Promise { + async getAllowance(token: string, owner: string, spender: string): Promise { return (await this.getAllowanceData(token, owner, spender)).amount } From c73290e4b6a93fa18d1ae0728d61bbbf629ca2ac Mon Sep 17 00:00:00 2001 From: Enrique Date: Tue, 9 Apr 2024 15:42:00 -0400 Subject: [PATCH 6/9] updating url link --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index ffac25d..06d36e3 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ }, "repository": { "type": "git", - "url": "https://github.com/Uniswap/permit2-sdk.git" + "url": "https://github.com/enriquebarco/permit2-sdk" }, "keywords": [ "uniswap", From 7714285aaecb3dee928835fb023ac38f9a474ae3 Mon Sep 17 00:00:00 2001 From: Enrique Date: Tue, 9 Apr 2024 17:13:56 -0400 Subject: [PATCH 7/9] testing to see if it works with jsonrpcprovider type --- src/providers/AllowanceProvider.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/providers/AllowanceProvider.ts b/src/providers/AllowanceProvider.ts index 3e3ce86..a3e0f4a 100644 --- a/src/providers/AllowanceProvider.ts +++ b/src/providers/AllowanceProvider.ts @@ -1,4 +1,5 @@ -import { Contract, Provider } from 'ethers' +import { Contract, JsonRpcProvider } from 'ethers' + import Permit2Abi from '../../abis/Permit2.json' export interface AllowanceData { @@ -10,7 +11,7 @@ export interface AllowanceData { export class AllowanceProvider { private permit2: Contract - constructor(private provider: Provider, private permit2Address: string) { + constructor(private provider: JsonRpcProvider, private permit2Address: string) { this.permit2 = new Contract(this.permit2Address, Permit2Abi, this.provider) } From 520d36189dba67fb0fca393fa776c496fbc41909 Mon Sep 17 00:00:00 2001 From: Enrique Date: Tue, 9 Apr 2024 17:22:42 -0400 Subject: [PATCH 8/9] reverting --- src/providers/AllowanceProvider.ts | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/providers/AllowanceProvider.ts b/src/providers/AllowanceProvider.ts index a3e0f4a..3e3ce86 100644 --- a/src/providers/AllowanceProvider.ts +++ b/src/providers/AllowanceProvider.ts @@ -1,5 +1,4 @@ -import { Contract, JsonRpcProvider } from 'ethers' - +import { Contract, Provider } from 'ethers' import Permit2Abi from '../../abis/Permit2.json' export interface AllowanceData { @@ -11,7 +10,7 @@ export interface AllowanceData { export class AllowanceProvider { private permit2: Contract - constructor(private provider: JsonRpcProvider, private permit2Address: string) { + constructor(private provider: Provider, private permit2Address: string) { this.permit2 = new Contract(this.permit2Address, Permit2Abi, this.provider) } From c86d86b2c3e76e95a64fd0fbfce64021d6b8ed44 Mon Sep 17 00:00:00 2001 From: Enrique Date: Wed, 10 Apr 2024 11:20:22 -0400 Subject: [PATCH 9/9] cleanup --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 06d36e3..ffac25d 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ }, "repository": { "type": "git", - "url": "https://github.com/enriquebarco/permit2-sdk" + "url": "https://github.com/Uniswap/permit2-sdk.git" }, "keywords": [ "uniswap",