From afd93f736a77fe243d9cadffa331b8fc6c1ccc58 Mon Sep 17 00:00:00 2001 From: alexandermendes Date: Wed, 13 Nov 2024 23:47:15 +0000 Subject: [PATCH] fix: revert "refactor: add abitype and use built-in erc20 abi" This reverts commit f31712d6627a6cb9eb5cf01039f5a0624377e21b. --- package.json | 1 - src/abis/erc20.ts | 163 +++++++++++++++++++++++++++++++++++++++++++ src/abis/staking.ts | 2 +- src/utils/staking.ts | 4 +- yarn.lock | 5 -- 5 files changed, 166 insertions(+), 9 deletions(-) create mode 100644 src/abis/erc20.ts diff --git a/package.json b/package.json index bf875f0..94708d0 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,6 @@ "react": "*" }, "dependencies": { - "abitype": "^1.0.6", "date-fns": "^4.1.0", "ethers": "5.6.9", "wagmi": "2.5.19" diff --git a/src/abis/erc20.ts b/src/abis/erc20.ts new file mode 100644 index 0000000..a1badf2 --- /dev/null +++ b/src/abis/erc20.ts @@ -0,0 +1,163 @@ +export const erc20abi = [ + { inputs: [], stateMutability: 'nonpayable', type: 'constructor' }, + { + anonymous: false, + inputs: [ + { + indexed: true, + internalType: 'address', + name: 'owner', + type: 'address', + }, + { + indexed: true, + internalType: 'address', + name: 'spender', + type: 'address', + }, + { + indexed: false, + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'Approval', + type: 'event', + }, + { + anonymous: false, + inputs: [ + { indexed: true, internalType: 'address', name: 'from', type: 'address' }, + { indexed: true, internalType: 'address', name: 'to', type: 'address' }, + { + indexed: false, + internalType: 'uint256', + name: 'value', + type: 'uint256', + }, + ], + name: 'Transfer', + type: 'event', + }, + { + inputs: [ + { internalType: 'address', name: 'owner', type: 'address' }, + { internalType: 'address', name: 'spender', type: 'address' }, + ], + name: 'allowance', + outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { internalType: 'address', name: 'spender', type: 'address' }, + { internalType: 'uint256', name: 'amount', type: 'uint256' }, + ], + name: 'approve', + outputs: [{ internalType: 'bool', name: '', type: 'bool' }], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [{ internalType: 'address', name: 'account', type: 'address' }], + name: 'balanceOf', + outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [{ internalType: 'uint256', name: 'amount', type: 'uint256' }], + name: 'burn', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { internalType: 'address', name: 'account', type: 'address' }, + { internalType: 'uint256', name: 'amount', type: 'uint256' }, + ], + name: 'burnFrom', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'decimals', + outputs: [{ internalType: 'uint8', name: '', type: 'uint8' }], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { internalType: 'address', name: 'spender', type: 'address' }, + { internalType: 'uint256', name: 'subtractedValue', type: 'uint256' }, + ], + name: 'decreaseAllowance', + outputs: [{ internalType: 'bool', name: '', type: 'bool' }], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { internalType: 'address', name: 'spender', type: 'address' }, + { internalType: 'uint256', name: 'addedValue', type: 'uint256' }, + ], + name: 'increaseAllowance', + outputs: [{ internalType: 'bool', name: '', type: 'bool' }], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [{ internalType: 'uint256', name: 'amount', type: 'uint256' }], + name: 'mint', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'name', + outputs: [{ internalType: 'string', name: '', type: 'string' }], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'symbol', + outputs: [{ internalType: 'string', name: '', type: 'string' }], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'totalSupply', + outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { internalType: 'address', name: 'recipient', type: 'address' }, + { internalType: 'uint256', name: 'amount', type: 'uint256' }, + ], + name: 'transfer', + outputs: [{ internalType: 'bool', name: '', type: 'bool' }], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { internalType: 'address', name: 'sender', type: 'address' }, + { internalType: 'address', name: 'recipient', type: 'address' }, + { internalType: 'uint256', name: 'amount', type: 'uint256' }, + ], + name: 'transferFrom', + outputs: [{ internalType: 'bool', name: '', type: 'bool' }], + stateMutability: 'nonpayable', + type: 'function', + }, +]; diff --git a/src/abis/staking.ts b/src/abis/staking.ts index a20a251..a98a8c7 100644 --- a/src/abis/staking.ts +++ b/src/abis/staking.ts @@ -1649,4 +1649,4 @@ export const stakingAbi = [ stateMutability: 'payable', type: 'constructor', }, -] as const; +]; diff --git a/src/utils/staking.ts b/src/utils/staking.ts index ebe1389..ef95c38 100644 --- a/src/utils/staking.ts +++ b/src/utils/staking.ts @@ -1,6 +1,6 @@ import { BigNumber, ethers, providers } from 'ethers'; -import { erc20Abi } from 'abitype/abis'; import { stakingAbi } from '../abis/staking.js'; +import { erc20abi } from '../abis/erc20.js'; import { type AuroraNetworkConfig } from '../types/network.js'; import { logger } from '../logger.js'; import { isDefined } from './is-defined.js'; @@ -254,7 +254,7 @@ export const approveStaking = async ( ) => { const auroraToken = new ethers.Contract( networkConfig.tokenContractAddress, - erc20Abi, + erc20abi, provider.getSigner(), ); diff --git a/yarn.lock b/yarn.lock index 04ba941..09e9957 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4067,11 +4067,6 @@ abitype@0.9.8: resolved "https://registry.yarnpkg.com/abitype/-/abitype-0.9.8.tgz#1f120b6b717459deafd213dfbf3a3dd1bf10ae8c" integrity sha512-puLifILdm+8sjyss4S+fsUN09obiT1g2YW6CtcQF+QDzxR0euzgEB29MZujC6zMk2a6SVmtttq1fc6+YFA7WYQ== -abitype@^1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/abitype/-/abitype-1.0.6.tgz#76410903e1d88e34f1362746e2d407513c38565b" - integrity sha512-MMSqYh4+C/aVqI2RQaWqbvI4Kxo5cQV40WQ4QFtDnNzCkqChm8MuENhElmynZlO0qUy/ObkEUaXtKqYnx1Kp3A== - acorn-jsx@^5.3.2: version "5.3.2" resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937"