@metamask/transaction-controller 4.0.1 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"txsMock.js","sourceRoot":"","sources":["../../src/mocks/txsMock.ts"],"names":[],"mappings":"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","sourcesContent":["import { TransactionMeta, TransactionStatus } from '../TransactionController';\n\nexport const ethTxsMock = (ethTxHash: string) => [\n {\n blockNumber: '4535101',\n confirmations: '10',\n contractAddress: '',\n cumulativeGasUsed: '120607',\n from: '0xe46abaf75cfbff815c0b7ffed6f02b0760ea27f1',\n gas: '335208',\n gasPrice: '10000000000',\n gasUsed: '21000',\n hash: ethTxHash,\n input: '0x',\n isError: '0',\n nonce: '9',\n timeStamp: '1543596286',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n transactionIndex: '2',\n txreceipt_status: '1',\n value: '100000000000000000',\n },\n {\n blockNumber: '4535108',\n confirmations: '3',\n contractAddress: '',\n cumulativeGasUsed: '693910',\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n gas: '335208',\n gasPrice: '20000000000',\n gasUsed: '21000',\n hash: '0x342e9d73e10004af41d04973339fc7219dbadcbb5629730cfe65e9f9cb15ff92',\n input: '0x',\n isError: '0',\n nonce: '0',\n timeStamp: '1543596378',\n to: '0xb2d191b6fe03c5b8a1ab249cfe88c37553357a23',\n transactionIndex: '12',\n txreceipt_status: '1',\n value: '50000000000000000',\n },\n {\n blockNumber: '4535105',\n confirmations: '4',\n contractAddress: '',\n cumulativeGasUsed: '693910',\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n gas: '335208',\n gasPrice: '20000000000',\n gasUsed: '21000',\n hash: '0x342e9d73e10004af41d04973339fc7219dbadcbb5629730cfe65e9f9cb15ff91',\n input: '0x',\n isError: '0',\n nonce: '1',\n timeStamp: '1543596356',\n transactionIndex: '13',\n txreceipt_status: '1',\n value: '50000000000000000',\n },\n {\n blockNumber: '4535106',\n confirmations: '4',\n contractAddress: '',\n cumulativeGasUsed: '693910',\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n gas: '335208',\n gasPrice: '20000000000',\n gasUsed: '21000',\n hash: '0x342e9d73e10004af41d04973139fc7219dbadcbb5629730cfe65e9f9cb15ff91',\n input: '0x11',\n isError: '0',\n nonce: '3',\n timeStamp: '1543596356',\n to: '0xb2d191b6fe03c5b8a1ab249cfe88c37553357a23',\n transactionIndex: '13',\n txreceipt_status: '1',\n value: '50000000000000000',\n },\n];\n\nexport const tokenTxsMock = (tokenTxHash: string) => [\n {\n blockNumber: '8222239',\n timeStamp: '1564091067',\n hash: tokenTxHash,\n nonce: '2329',\n blockHash:\n '0x3c30a9be9aea7be13caad419444140c11839d72e70479ec7e9c6d8bd08c533bc',\n from: '0xdfa6edae2ec0cf1d4a60542422724a48195a5071',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '0',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '69',\n gas: '624874',\n gasPrice: '20000000000',\n gasUsed: '21000',\n cumulativeGasUsed: '3203881',\n input: 'deprecated',\n confirmations: '3659676',\n },\n {\n blockNumber: '8222250',\n timeStamp: '1564091247',\n hash: '0xdcd1c8bee545d3f76d80b20a23ad44276ba2e376681228eb4570cf3518491279',\n nonce: '2330',\n blockHash:\n '0x16986dd66bedb20a5b846ec2b6c0ecaa62f1c4b51fac58c1326101fd9126dd82',\n from: '0xdfa6edae2ec0cf1d4a60542422724a48195a5071',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '0',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '40',\n gas: '594268',\n gasPrice: '20000000000',\n gasUsed: '579268',\n cumulativeGasUsed: '2009011',\n input: 'deprecated',\n confirmations: '3659665',\n },\n {\n blockNumber: '8223771',\n timeStamp: '1564111652',\n hash: '0x070369e6f560b0deca52e050ff1a961fa7b688bbec5cea08435921c9d9b0f52e',\n nonce: '2333',\n blockHash:\n '0x0aff8b36881be99df6d176d7c64c2171672c0483684a10c112d2c90fefe30a0a',\n from: '0xdfa6edae2ec0cf1d4a60542422724a48195a5071',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '0',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '132',\n gas: '583810',\n gasPrice: '6000000000',\n gasUsed: '568810',\n cumulativeGasUsed: '6956245',\n input: 'deprecated',\n confirmations: '3658144',\n },\n {\n blockNumber: '8224850',\n timeStamp: '1564126442',\n hash: '0x8ef20ec9597c8c2e945bcc76d2668e5d3bb088b081fe8c5b5af2e1cbd315a20f',\n nonce: '31',\n blockHash:\n '0xb80d4d861ecb7a3cb14e591c0aaeb226842d0267772affa2acc1a590c7535647',\n from: '0x6c70e3563cef0c6835703bb2664c9f59a92353e4',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '10000000000000000000',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '169',\n gas: '78447',\n gasPrice: '2000000000',\n gasUsed: '52298',\n cumulativeGasUsed: '7047823',\n input: 'deprecated',\n confirmations: '3657065',\n },\n {\n blockNumber: '8228053',\n timeStamp: '1564168901',\n hash: '0xa0f2d7b558bb3cc28fa568f6feb8ed30eb28a01a674d7c0d4ae603fc691e6020',\n nonce: '2368',\n blockHash:\n '0x62c515ea049842c968ca67499f47a32a11394364d319d9c9cc0a0211652a7294',\n from: '0xdfa6edae2ec0cf1d4a60542422724a48195a5071',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '0',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '43',\n gas: '567156',\n gasPrice: '3000000000',\n gasUsed: '552156',\n cumulativeGasUsed: '3048261',\n input: 'deprecated',\n confirmations: '3653862',\n },\n {\n blockNumber: '8315335',\n timeStamp: '1565339223',\n hash: '0x464df60fe00b6dd04c9e8ab341d02af9b10a619d2fcd60fd2971f10edf12118f',\n nonce: '206760',\n blockHash:\n '0x98275388ef6708debe35ac7bf2e30143c9b1fd9e0e457ca03598fc1f4209e273',\n from: '0x00cfbbaf7ddb3a1476767101c12a0162e241fbad',\n contractAddress: '0x4dc3643dbc642b72c158e7f3d2ff232df61cb6ce',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '100000000000000000',\n tokenName: 'Amber',\n tokenSymbol: 'AMB',\n tokenDecimal: '18',\n transactionIndex: '186',\n gas: '60000',\n gasPrice: '2000000000',\n gasUsed: '52108',\n cumulativeGasUsed: '7490707',\n input: 'deprecated',\n confirmations: '3566580',\n },\n {\n blockNumber: '8350846',\n timeStamp: '1565815049',\n hash: '0xc0682327ad3efd56dfa33e8206b4e09efad4e419a6191076069d217e3ee2341f',\n nonce: '2506',\n blockHash:\n '0xd0aa3c0e319fdfeb21b0192cf77b9760b8668060a5977a5f10f8413531083afa',\n from: '0xdfa6edae2ec0cf1d4a60542422724a48195a5071',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '4',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '48',\n gas: '578737',\n gasPrice: '3000000000',\n gasUsed: '518737',\n cumulativeGasUsed: '2848015',\n input: 'deprecated',\n confirmations: '3531069',\n },\n {\n blockNumber: '8350859',\n timeStamp: '1565815221',\n hash: '0x989ea9f3ee576fa43957f44363e839adf1a4a397c3d8392a4f7cbbf7949fd0ae',\n nonce: '2',\n blockHash:\n '0xb9cf1d29c665c052e3831b5754903e539c5b0b1d33b8bcab6cd2d450764d601f',\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0x09cabec1ead1c0ba254b09efb3ee13841712be14',\n value: '10000000000000000000',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '31',\n gas: '60734',\n gasPrice: '1000000000',\n gasUsed: '54745',\n cumulativeGasUsed: '7833857',\n input: 'deprecated',\n confirmations: '3531056',\n },\n {\n blockNumber: '8679548',\n timeStamp: '1570244087',\n hash: '0xc0016b89b3b525b30d73f242653b0d80ec3ebf285376dff5bb52cef3261498b2',\n nonce: '3',\n blockHash:\n '0x1ceb2f8b83087f010773e2acf63d1526633c8a884bd1980f118a1bba576be69f',\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0xdfa6edae2ec0cf1d4a60542422724a48195a5071',\n value: '0',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '56',\n gas: '993379',\n gasPrice: '1440000000',\n gasUsed: '647253',\n cumulativeGasUsed: '3562204',\n input: 'deprecated',\n confirmations: '3202367',\n },\n {\n blockNumber: '8679548',\n timeStamp: '1570244087',\n hash: '0xc0016b89b3b525b30d73f242653b0d80ec3ebf285376dff5bb52cef3261498b2',\n nonce: '3',\n blockHash:\n '0x1ceb2f8b83087f010773e2acf63d1526633c8a884bd1980f118a1bba576be69f',\n from: '0xdfa6edae2ec0cf1d4a60542422724a48195a5071',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '0',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '56',\n gas: '993379',\n gasPrice: '1440000000',\n gasUsed: '647253',\n cumulativeGasUsed: '3562204',\n input: 'deprecated',\n confirmations: '3202367',\n },\n {\n blockNumber: '8694142',\n timeStamp: '1570440625',\n hash: '0xd8397138bb93d56e50d01e92a9eae99ebd3ae28844acdaa4663976a5501116cf',\n nonce: '2837',\n blockHash:\n '0xba45dd64e71e146066af9b6d2dd3bc5d72f4a3399148c155dced74c139fc3c51',\n from: '0xdfa6edae2ec0cf1d4a60542422724a48195a5071',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '0',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '217',\n gas: '600632',\n gasPrice: '9000000000',\n gasUsed: '570632',\n cumulativeGasUsed: '9023725',\n input: 'deprecated',\n confirmations: '3187773',\n },\n {\n blockNumber: '10877041',\n timeStamp: '1600310867',\n hash: '0xc8bd16b6b41b4c24849eb6869702e1489c808cb5b125b01f084e38fefcb5ea77',\n nonce: '4',\n blockHash:\n '0x7fa16a022bcf1f69c2d7adf6bd7d3f058e808eec5c66aaa910dfa8016a5333d1',\n from: '0x090d4613473dee047c3f2706764f49e0821d256e',\n contractAddress: '0x1f9840a85d5af5bf1d1762f925bdaddc4201f984',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '400000000000000000000',\n tokenName: 'Uniswap',\n tokenSymbol: 'UNI',\n tokenDecimal: '18',\n transactionIndex: '42',\n gas: '90038',\n gasPrice: '550000000000',\n gasUsed: '81853',\n cumulativeGasUsed: '3163540',\n input: 'deprecated',\n confirmations: '1004874',\n },\n {\n blockNumber: '10877897',\n timeStamp: '1600321973',\n hash: '0xa7162489faef826ee77862ed5210b01726524f09428f69842118dad394842d62',\n nonce: '6',\n blockHash:\n '0xa74eb9d16f65f307dde4ce58c813c981b28f242edf1090ee2ac42caac9dccaca',\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n contractAddress: '0x1f9840a85d5af5bf1d1762f925bdaddc4201f984',\n to: '0x5e736f1f25992b2cad20ded179a52823d3d24b26',\n value: '400000000000000000000',\n tokenName: 'Uniswap',\n tokenSymbol: 'UNI',\n tokenDecimal: '18',\n transactionIndex: '86',\n gas: '60759',\n gasPrice: '640000000000',\n gasUsed: '25506',\n cumulativeGasUsed: '4408393',\n input: 'deprecated',\n confirmations: '1004018',\n },\n];\n\nexport const txsInStateMock = (\n ethTxHash: string,\n tokenTxHash: string,\n): TransactionMeta[] => [\n {\n id: 'token-transaction-id',\n chainId: '1',\n status: TransactionStatus.confirmed,\n time: 1615497996125,\n transaction: {\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n data: '0x',\n gas: '624874',\n gasPrice: '20000000000',\n gasUsed: '21000',\n nonce: '0x12',\n to: '0x881d40237659c251811cec9c364ef91dc08d300c',\n value: '0x0',\n },\n transactionHash: tokenTxHash,\n toSmartContract: true,\n },\n {\n id: 'eth-transaction-id',\n chainId: '1',\n status: TransactionStatus.confirmed,\n time: 1615497996125,\n transaction: {\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n data: '0x',\n gas: '0x51d68',\n gasPrice: '0x2540be400',\n gasUsed: '0x5208',\n nonce: '0x12',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '100000000000000000',\n },\n transactionHash: ethTxHash,\n toSmartContract: false,\n },\n];\n\nexport const txsInStateWithOutdatedStatusMock = (\n ethTxHash: string,\n tokenTxHash: string,\n): TransactionMeta[] => [\n {\n id: 'token-transaction-id',\n chainId: '1',\n status: TransactionStatus.rejected,\n time: 1615497996125,\n transaction: {\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n data: '0x',\n gas: '624874',\n gasPrice: '20000000000',\n gasUsed: '21000',\n nonce: '0x12',\n to: '0x881d40237659c251811cec9c364ef91dc08d300c',\n value: '0x0',\n },\n transactionHash: tokenTxHash,\n toSmartContract: true,\n },\n {\n id: 'eth-transaction-id',\n chainId: '1',\n status: TransactionStatus.rejected,\n time: 1615497996125,\n transaction: {\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n data: '0x',\n gas: '0x51d68',\n gasPrice: '0x2540be400',\n gasUsed: '0x5208',\n nonce: '0x12',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '100000000000000000',\n },\n transactionHash: ethTxHash,\n toSmartContract: false,\n },\n];\n\nexport const txsInStateWithOutdatedGasDataMock = (\n ethTxHash: string,\n tokenTxHash: string,\n): TransactionMeta[] => [\n {\n id: 'token-transaction-id',\n chainId: '1',\n status: TransactionStatus.confirmed,\n time: 1615497996125,\n transaction: {\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n data: '0x',\n gas: '624874',\n gasPrice: '20000000000',\n gasUsed: undefined,\n nonce: '0x12',\n to: '0x881d40237659c251811cec9c364ef91dc08d300c',\n value: '0x0',\n },\n transactionHash: tokenTxHash,\n toSmartContract: true,\n },\n {\n id: 'eth-transaction-id',\n chainId: '1',\n status: TransactionStatus.confirmed,\n time: 1615497996125,\n transaction: {\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n data: '0x',\n gas: '0x51d68',\n gasPrice: '0x2540be400',\n gasUsed: undefined,\n nonce: '0x12',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '100000000000000000',\n },\n transactionHash: ethTxHash,\n toSmartContract: false,\n },\n];\n\nexport const txsInStateWithOutdatedStatusAndGasDataMock = (\n ethTxHash: string,\n tokenTxHash: string,\n): TransactionMeta[] => [\n {\n id: 'token-transaction-id',\n chainId: '1',\n status: TransactionStatus.rejected,\n time: 1615497996125,\n transaction: {\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n data: '0x',\n gas: '624874',\n gasPrice: '20000000000',\n gasUsed: undefined,\n nonce: '0x12',\n to: '0x881d40237659c251811cec9c364ef91dc08d300c',\n value: '0x0',\n },\n transactionHash: tokenTxHash,\n toSmartContract: true,\n },\n {\n id: 'eth-transaction-id',\n chainId: '1',\n status: TransactionStatus.rejected,\n time: 1615497996125,\n transaction: {\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n data: '0x',\n gas: '0x51d68',\n gasPrice: '0x2540be400',\n gasUsed: undefined,\n nonce: '0x12',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '100000000000000000',\n },\n transactionHash: ethTxHash,\n toSmartContract: false,\n },\n];\n"]}
1
+ {"version":3,"file":"txsMock.js","sourceRoot":"","sources":["../../src/mocks/txsMock.ts"],"names":[],"mappings":"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","sourcesContent":["import { toHex } from '@metamask/controller-utils';\nimport { TransactionMeta, TransactionStatus } from '../TransactionController';\n\nexport const ethTxsMock = (ethTxHash: string) => [\n {\n blockNumber: '4535101',\n confirmations: '10',\n contractAddress: '',\n cumulativeGasUsed: '120607',\n from: '0xe46abaf75cfbff815c0b7ffed6f02b0760ea27f1',\n gas: '335208',\n gasPrice: '10000000000',\n gasUsed: '21000',\n hash: ethTxHash,\n input: '0x',\n isError: '0',\n nonce: '9',\n timeStamp: '1543596286',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n transactionIndex: '2',\n txreceipt_status: '1',\n value: '100000000000000000',\n },\n {\n blockNumber: '4535108',\n confirmations: '3',\n contractAddress: '',\n cumulativeGasUsed: '693910',\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n gas: '335208',\n gasPrice: '20000000000',\n gasUsed: '21000',\n hash: '0x342e9d73e10004af41d04973339fc7219dbadcbb5629730cfe65e9f9cb15ff92',\n input: '0x',\n isError: '0',\n nonce: '0',\n timeStamp: '1543596378',\n to: '0xb2d191b6fe03c5b8a1ab249cfe88c37553357a23',\n transactionIndex: '12',\n txreceipt_status: '1',\n value: '50000000000000000',\n },\n {\n blockNumber: '4535105',\n confirmations: '4',\n contractAddress: '',\n cumulativeGasUsed: '693910',\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n gas: '335208',\n gasPrice: '20000000000',\n gasUsed: '21000',\n hash: '0x342e9d73e10004af41d04973339fc7219dbadcbb5629730cfe65e9f9cb15ff91',\n input: '0x',\n isError: '0',\n nonce: '1',\n timeStamp: '1543596356',\n transactionIndex: '13',\n txreceipt_status: '1',\n value: '50000000000000000',\n },\n {\n blockNumber: '4535106',\n confirmations: '4',\n contractAddress: '',\n cumulativeGasUsed: '693910',\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n gas: '335208',\n gasPrice: '20000000000',\n gasUsed: '21000',\n hash: '0x342e9d73e10004af41d04973139fc7219dbadcbb5629730cfe65e9f9cb15ff91',\n input: '0x11',\n isError: '0',\n nonce: '3',\n timeStamp: '1543596356',\n to: '0xb2d191b6fe03c5b8a1ab249cfe88c37553357a23',\n transactionIndex: '13',\n txreceipt_status: '1',\n value: '50000000000000000',\n },\n];\n\nexport const tokenTxsMock = (tokenTxHash: string) => [\n {\n blockNumber: '8222239',\n timeStamp: '1564091067',\n hash: tokenTxHash,\n nonce: '2329',\n blockHash:\n '0x3c30a9be9aea7be13caad419444140c11839d72e70479ec7e9c6d8bd08c533bc',\n from: '0xdfa6edae2ec0cf1d4a60542422724a48195a5071',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '0',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '69',\n gas: '624874',\n gasPrice: '20000000000',\n gasUsed: '21000',\n cumulativeGasUsed: '3203881',\n input: 'deprecated',\n confirmations: '3659676',\n },\n {\n blockNumber: '8222250',\n timeStamp: '1564091247',\n hash: '0xdcd1c8bee545d3f76d80b20a23ad44276ba2e376681228eb4570cf3518491279',\n nonce: '2330',\n blockHash:\n '0x16986dd66bedb20a5b846ec2b6c0ecaa62f1c4b51fac58c1326101fd9126dd82',\n from: '0xdfa6edae2ec0cf1d4a60542422724a48195a5071',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '0',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '40',\n gas: '594268',\n gasPrice: '20000000000',\n gasUsed: '579268',\n cumulativeGasUsed: '2009011',\n input: 'deprecated',\n confirmations: '3659665',\n },\n {\n blockNumber: '8223771',\n timeStamp: '1564111652',\n hash: '0x070369e6f560b0deca52e050ff1a961fa7b688bbec5cea08435921c9d9b0f52e',\n nonce: '2333',\n blockHash:\n '0x0aff8b36881be99df6d176d7c64c2171672c0483684a10c112d2c90fefe30a0a',\n from: '0xdfa6edae2ec0cf1d4a60542422724a48195a5071',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '0',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '132',\n gas: '583810',\n gasPrice: '6000000000',\n gasUsed: '568810',\n cumulativeGasUsed: '6956245',\n input: 'deprecated',\n confirmations: '3658144',\n },\n {\n blockNumber: '8224850',\n timeStamp: '1564126442',\n hash: '0x8ef20ec9597c8c2e945bcc76d2668e5d3bb088b081fe8c5b5af2e1cbd315a20f',\n nonce: '31',\n blockHash:\n '0xb80d4d861ecb7a3cb14e591c0aaeb226842d0267772affa2acc1a590c7535647',\n from: '0x6c70e3563cef0c6835703bb2664c9f59a92353e4',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '10000000000000000000',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '169',\n gas: '78447',\n gasPrice: '2000000000',\n gasUsed: '52298',\n cumulativeGasUsed: '7047823',\n input: 'deprecated',\n confirmations: '3657065',\n },\n {\n blockNumber: '8228053',\n timeStamp: '1564168901',\n hash: '0xa0f2d7b558bb3cc28fa568f6feb8ed30eb28a01a674d7c0d4ae603fc691e6020',\n nonce: '2368',\n blockHash:\n '0x62c515ea049842c968ca67499f47a32a11394364d319d9c9cc0a0211652a7294',\n from: '0xdfa6edae2ec0cf1d4a60542422724a48195a5071',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '0',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '43',\n gas: '567156',\n gasPrice: '3000000000',\n gasUsed: '552156',\n cumulativeGasUsed: '3048261',\n input: 'deprecated',\n confirmations: '3653862',\n },\n {\n blockNumber: '8315335',\n timeStamp: '1565339223',\n hash: '0x464df60fe00b6dd04c9e8ab341d02af9b10a619d2fcd60fd2971f10edf12118f',\n nonce: '206760',\n blockHash:\n '0x98275388ef6708debe35ac7bf2e30143c9b1fd9e0e457ca03598fc1f4209e273',\n from: '0x00cfbbaf7ddb3a1476767101c12a0162e241fbad',\n contractAddress: '0x4dc3643dbc642b72c158e7f3d2ff232df61cb6ce',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '100000000000000000',\n tokenName: 'Amber',\n tokenSymbol: 'AMB',\n tokenDecimal: '18',\n transactionIndex: '186',\n gas: '60000',\n gasPrice: '2000000000',\n gasUsed: '52108',\n cumulativeGasUsed: '7490707',\n input: 'deprecated',\n confirmations: '3566580',\n },\n {\n blockNumber: '8350846',\n timeStamp: '1565815049',\n hash: '0xc0682327ad3efd56dfa33e8206b4e09efad4e419a6191076069d217e3ee2341f',\n nonce: '2506',\n blockHash:\n '0xd0aa3c0e319fdfeb21b0192cf77b9760b8668060a5977a5f10f8413531083afa',\n from: '0xdfa6edae2ec0cf1d4a60542422724a48195a5071',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '4',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '48',\n gas: '578737',\n gasPrice: '3000000000',\n gasUsed: '518737',\n cumulativeGasUsed: '2848015',\n input: 'deprecated',\n confirmations: '3531069',\n },\n {\n blockNumber: '8350859',\n timeStamp: '1565815221',\n hash: '0x989ea9f3ee576fa43957f44363e839adf1a4a397c3d8392a4f7cbbf7949fd0ae',\n nonce: '2',\n blockHash:\n '0xb9cf1d29c665c052e3831b5754903e539c5b0b1d33b8bcab6cd2d450764d601f',\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0x09cabec1ead1c0ba254b09efb3ee13841712be14',\n value: '10000000000000000000',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '31',\n gas: '60734',\n gasPrice: '1000000000',\n gasUsed: '54745',\n cumulativeGasUsed: '7833857',\n input: 'deprecated',\n confirmations: '3531056',\n },\n {\n blockNumber: '8679548',\n timeStamp: '1570244087',\n hash: '0xc0016b89b3b525b30d73f242653b0d80ec3ebf285376dff5bb52cef3261498b2',\n nonce: '3',\n blockHash:\n '0x1ceb2f8b83087f010773e2acf63d1526633c8a884bd1980f118a1bba576be69f',\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0xdfa6edae2ec0cf1d4a60542422724a48195a5071',\n value: '0',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '56',\n gas: '993379',\n gasPrice: '1440000000',\n gasUsed: '647253',\n cumulativeGasUsed: '3562204',\n input: 'deprecated',\n confirmations: '3202367',\n },\n {\n blockNumber: '8679548',\n timeStamp: '1570244087',\n hash: '0xc0016b89b3b525b30d73f242653b0d80ec3ebf285376dff5bb52cef3261498b2',\n nonce: '3',\n blockHash:\n '0x1ceb2f8b83087f010773e2acf63d1526633c8a884bd1980f118a1bba576be69f',\n from: '0xdfa6edae2ec0cf1d4a60542422724a48195a5071',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '0',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '56',\n gas: '993379',\n gasPrice: '1440000000',\n gasUsed: '647253',\n cumulativeGasUsed: '3562204',\n input: 'deprecated',\n confirmations: '3202367',\n },\n {\n blockNumber: '8694142',\n timeStamp: '1570440625',\n hash: '0xd8397138bb93d56e50d01e92a9eae99ebd3ae28844acdaa4663976a5501116cf',\n nonce: '2837',\n blockHash:\n '0xba45dd64e71e146066af9b6d2dd3bc5d72f4a3399148c155dced74c139fc3c51',\n from: '0xdfa6edae2ec0cf1d4a60542422724a48195a5071',\n contractAddress: '0x89d24a6b4ccb1b6faa2625fe562bdd9a23260359',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '0',\n tokenName: 'Sai Stablecoin v1.0',\n tokenSymbol: 'SAI',\n tokenDecimal: '18',\n transactionIndex: '217',\n gas: '600632',\n gasPrice: '9000000000',\n gasUsed: '570632',\n cumulativeGasUsed: '9023725',\n input: 'deprecated',\n confirmations: '3187773',\n },\n {\n blockNumber: '10877041',\n timeStamp: '1600310867',\n hash: '0xc8bd16b6b41b4c24849eb6869702e1489c808cb5b125b01f084e38fefcb5ea77',\n nonce: '4',\n blockHash:\n '0x7fa16a022bcf1f69c2d7adf6bd7d3f058e808eec5c66aaa910dfa8016a5333d1',\n from: '0x090d4613473dee047c3f2706764f49e0821d256e',\n contractAddress: '0x1f9840a85d5af5bf1d1762f925bdaddc4201f984',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '400000000000000000000',\n tokenName: 'Uniswap',\n tokenSymbol: 'UNI',\n tokenDecimal: '18',\n transactionIndex: '42',\n gas: '90038',\n gasPrice: '550000000000',\n gasUsed: '81853',\n cumulativeGasUsed: '3163540',\n input: 'deprecated',\n confirmations: '1004874',\n },\n {\n blockNumber: '10877897',\n timeStamp: '1600321973',\n hash: '0xa7162489faef826ee77862ed5210b01726524f09428f69842118dad394842d62',\n nonce: '6',\n blockHash:\n '0xa74eb9d16f65f307dde4ce58c813c981b28f242edf1090ee2ac42caac9dccaca',\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n contractAddress: '0x1f9840a85d5af5bf1d1762f925bdaddc4201f984',\n to: '0x5e736f1f25992b2cad20ded179a52823d3d24b26',\n value: '400000000000000000000',\n tokenName: 'Uniswap',\n tokenSymbol: 'UNI',\n tokenDecimal: '18',\n transactionIndex: '86',\n gas: '60759',\n gasPrice: '640000000000',\n gasUsed: '25506',\n cumulativeGasUsed: '4408393',\n input: 'deprecated',\n confirmations: '1004018',\n },\n];\n\nexport const txsInStateMock = (\n ethTxHash: string,\n tokenTxHash: string,\n): TransactionMeta[] => [\n {\n id: 'token-transaction-id',\n chainId: toHex(1),\n status: TransactionStatus.confirmed,\n time: 1615497996125,\n transaction: {\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n data: '0x',\n gas: '624874',\n gasPrice: '20000000000',\n gasUsed: '21000',\n nonce: '0x12',\n to: '0x881d40237659c251811cec9c364ef91dc08d300c',\n value: '0x0',\n },\n transactionHash: tokenTxHash,\n toSmartContract: true,\n },\n {\n id: 'eth-transaction-id',\n chainId: toHex(1),\n status: TransactionStatus.confirmed,\n time: 1615497996125,\n transaction: {\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n data: '0x',\n gas: '0x51d68',\n gasPrice: '0x2540be400',\n gasUsed: '0x5208',\n nonce: '0x12',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '100000000000000000',\n },\n transactionHash: ethTxHash,\n toSmartContract: false,\n },\n];\n\nexport const txsInStateWithOutdatedStatusMock = (\n ethTxHash: string,\n tokenTxHash: string,\n): TransactionMeta[] => [\n {\n id: 'token-transaction-id',\n chainId: toHex(1),\n status: TransactionStatus.rejected,\n time: 1615497996125,\n transaction: {\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n data: '0x',\n gas: '624874',\n gasPrice: '20000000000',\n gasUsed: '21000',\n nonce: '0x12',\n to: '0x881d40237659c251811cec9c364ef91dc08d300c',\n value: '0x0',\n },\n transactionHash: tokenTxHash,\n toSmartContract: true,\n },\n {\n id: 'eth-transaction-id',\n chainId: toHex(1),\n status: TransactionStatus.rejected,\n time: 1615497996125,\n transaction: {\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n data: '0x',\n gas: '0x51d68',\n gasPrice: '0x2540be400',\n gasUsed: '0x5208',\n nonce: '0x12',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '100000000000000000',\n },\n transactionHash: ethTxHash,\n toSmartContract: false,\n },\n];\n\nexport const txsInStateWithOutdatedGasDataMock = (\n ethTxHash: string,\n tokenTxHash: string,\n): TransactionMeta[] => [\n {\n id: 'token-transaction-id',\n chainId: toHex(1),\n status: TransactionStatus.confirmed,\n time: 1615497996125,\n transaction: {\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n data: '0x',\n gas: '624874',\n gasPrice: '20000000000',\n gasUsed: undefined,\n nonce: '0x12',\n to: '0x881d40237659c251811cec9c364ef91dc08d300c',\n value: '0x0',\n },\n transactionHash: tokenTxHash,\n toSmartContract: true,\n },\n {\n id: 'eth-transaction-id',\n chainId: toHex(1),\n status: TransactionStatus.confirmed,\n time: 1615497996125,\n transaction: {\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n data: '0x',\n gas: '0x51d68',\n gasPrice: '0x2540be400',\n gasUsed: undefined,\n nonce: '0x12',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '100000000000000000',\n },\n transactionHash: ethTxHash,\n toSmartContract: false,\n },\n];\n\nexport const txsInStateWithOutdatedStatusAndGasDataMock = (\n ethTxHash: string,\n tokenTxHash: string,\n): TransactionMeta[] => [\n {\n id: 'token-transaction-id',\n chainId: toHex(1),\n status: TransactionStatus.rejected,\n time: 1615497996125,\n transaction: {\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n data: '0x',\n gas: '624874',\n gasPrice: '20000000000',\n gasUsed: undefined,\n nonce: '0x12',\n to: '0x881d40237659c251811cec9c364ef91dc08d300c',\n value: '0x0',\n },\n transactionHash: tokenTxHash,\n toSmartContract: true,\n },\n {\n id: 'eth-transaction-id',\n chainId: toHex(1),\n status: TransactionStatus.rejected,\n time: 1615497996125,\n transaction: {\n from: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n data: '0x',\n gas: '0x51d68',\n gasPrice: '0x2540be400',\n gasUsed: undefined,\n nonce: '0x12',\n to: '0x6bf137f335ea1b8f193b8f6ea92561a60d23a207',\n value: '100000000000000000',\n },\n transactionHash: ethTxHash,\n toSmartContract: false,\n },\n];\n"]}
package/dist/utils.d.ts CHANGED
@@ -1,4 +1,6 @@
1
- import { Transaction, FetchAllOptions, GasPriceValue, FeeMarketEIP1559Values } from './TransactionController';
1
+ import type { Transaction as NonceTrackerTransaction } from 'nonce-tracker/dist/NonceTracker';
2
+ import { Transaction, FetchAllOptions, GasPriceValue, FeeMarketEIP1559Values, TransactionStatus } from './TransactionController';
3
+ import type { TransactionMeta } from './TransactionController';
2
4
  export declare const ESTIMATE_GAS_ERROR = "eth_estimateGas rpc method error";
3
5
  /**
4
6
  * Return a URL that can be used to fetch ETH transactions.
@@ -58,3 +60,13 @@ export declare const getIncreasedPriceFromExisting: (value: string | undefined,
58
60
  * @throws Will throw if the proposed value is too low.
59
61
  */
60
62
  export declare function validateMinimumIncrease(proposed: string, min: string): string;
63
+ /**
64
+ * Helper function to filter and format transactions for the nonce tracker.
65
+ *
66
+ * @param fromAddress - Address of the account from which the transactions to filter from are sent.
67
+ * @param transactionStatus - Status of the transactions for which to filter.
68
+ * @param transactions - Array of transactionMeta objects that have been prefiltered.
69
+ * @returns Array of transactions formatted for the nonce tracker.
70
+ */
71
+ export declare function getAndFormatTransactionsForNonceTracker(fromAddress: string, transactionStatus: TransactionStatus, transactions: TransactionMeta[]): NonceTrackerTransaction[];
72
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,WAAW,IAAI,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC9F,OAAO,EACL,WAAW,EACX,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,iBAAiB,EAClB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D,eAAO,MAAM,kBAAkB,qCAAqC,CAAC;AAiBrE;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,GAAG,GACb,MAAM,CAeR;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,WAAW,eAS5D;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,WAAW,QAmD3D;AAED;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,gBAAiB,WAAW,KAAG,OAO/D,CAAC;AAEF;;;;;;;;GAQG;AACH,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,EACtB,GAAG,CAAC,EAAE,eAAe,GACpB,OAAO,CAAC,CAAC;IAAE,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE,CAAA;CAAE,EAAE;IAAE,CAAC,MAAM,EAAE,MAAM,GAAG,EAAE,CAAA;CAAE,CAAC,CAAC,CA8C/D;AAED,eAAO,MAAM,iBAAiB,cACjB,aAAa,GAAG,sBAAsB,SAUlD,CAAC;AAEF,eAAO,MAAM,wBAAwB,yGAIsC,CAAC;AAE5E,eAAO,MAAM,eAAe,gGAG0B,CAAC;AAEvD,eAAO,MAAM,oBAAoB,UAAW,MAAM,QAAQ,MAAM,KAAG,MACF,CAAC;AAElE,eAAO,MAAM,6BAA6B,UACjC,MAAM,GAAG,SAAS,QACnB,MAAM,KACX,MAEF,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAQpE;AAED;;;;;;;GAOG;AACH,wBAAgB,uCAAuC,CACrD,WAAW,EAAE,MAAM,EACnB,iBAAiB,EAAE,iBAAiB,EACpC,YAAY,EAAE,eAAe,EAAE,GAC9B,uBAAuB,EAAE,CAsB3B"}
package/dist/utils.js CHANGED
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.validateMinimumIncrease = exports.getIncreasedPriceFromExisting = exports.getIncreasedPriceHex = exports.isGasPriceValue = exports.isFeeMarketEIP1559Values = exports.validateGasValues = exports.handleTransactionFetch = exports.isEIP1559Transaction = exports.validateTransaction = exports.normalizeTransaction = exports.getEtherscanApiUrl = exports.ESTIMATE_GAS_ERROR = void 0;
12
+ exports.getAndFormatTransactionsForNonceTracker = exports.validateMinimumIncrease = exports.getIncreasedPriceFromExisting = exports.getIncreasedPriceHex = exports.isGasPriceValue = exports.isFeeMarketEIP1559Values = exports.validateGasValues = exports.handleTransactionFetch = exports.isEIP1559Transaction = exports.validateTransaction = exports.normalizeTransaction = exports.getEtherscanApiUrl = exports.ESTIMATE_GAS_ERROR = void 0;
13
13
  const ethereumjs_util_1 = require("ethereumjs-util");
14
14
  const controller_utils_1 = require("@metamask/controller-utils");
15
15
  exports.ESTIMATE_GAS_ERROR = 'eth_estimateGas rpc method error';
@@ -203,4 +203,33 @@ function validateMinimumIncrease(proposed, min) {
203
203
  throw new Error(errorMsg);
204
204
  }
205
205
  exports.validateMinimumIncrease = validateMinimumIncrease;
206
+ /**
207
+ * Helper function to filter and format transactions for the nonce tracker.
208
+ *
209
+ * @param fromAddress - Address of the account from which the transactions to filter from are sent.
210
+ * @param transactionStatus - Status of the transactions for which to filter.
211
+ * @param transactions - Array of transactionMeta objects that have been prefiltered.
212
+ * @returns Array of transactions formatted for the nonce tracker.
213
+ */
214
+ function getAndFormatTransactionsForNonceTracker(fromAddress, transactionStatus, transactions) {
215
+ return transactions
216
+ .filter(({ status, transaction: { from } }) => status === transactionStatus &&
217
+ from.toLowerCase() === fromAddress.toLowerCase())
218
+ .map(({ status, transaction: { from, gas, value, nonce } }) => {
219
+ // the only value we care about is the nonce
220
+ // but we need to return the other values to satisfy the type
221
+ // TODO: refactor nonceTracker to not require this
222
+ return {
223
+ status,
224
+ history: [{}],
225
+ txParams: {
226
+ from: from !== null && from !== void 0 ? from : '',
227
+ gas: gas !== null && gas !== void 0 ? gas : '',
228
+ value: value !== null && value !== void 0 ? value : '',
229
+ nonce: nonce !== null && nonce !== void 0 ? nonce : '',
230
+ },
231
+ };
232
+ });
233
+ }
234
+ exports.getAndFormatTransactionsForNonceTracker = getAndFormatTransactionsForNonceTracker;
206
235
  //# sourceMappingURL=utils.js.map
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { addHexPrefix, isHexString } from 'ethereumjs-util';\nimport {\n NetworkType,\n convertHexToDecimal,\n handleFetch,\n isValidHexAddress,\n} from '@metamask/controller-utils';\nimport {\n Transaction,\n FetchAllOptions,\n GasPriceValue,\n FeeMarketEIP1559Values,\n} from './TransactionController';\n\nexport const ESTIMATE_GAS_ERROR = 'eth_estimateGas rpc method error';\n\nconst NORMALIZERS: { [param in keyof Transaction]: any } = {\n data: (data: string) => addHexPrefix(data),\n from: (from: string) => addHexPrefix(from).toLowerCase(),\n gas: (gas: string) => addHexPrefix(gas),\n gasPrice: (gasPrice: string) => addHexPrefix(gasPrice),\n nonce: (nonce: string) => addHexPrefix(nonce),\n to: (to: string) => addHexPrefix(to).toLowerCase(),\n value: (value: string) => addHexPrefix(value),\n maxFeePerGas: (maxFeePerGas: string) => addHexPrefix(maxFeePerGas),\n maxPriorityFeePerGas: (maxPriorityFeePerGas: string) =>\n addHexPrefix(maxPriorityFeePerGas),\n estimatedBaseFee: (maxPriorityFeePerGas: string) =>\n addHexPrefix(maxPriorityFeePerGas),\n};\n\n/**\n * Return a URL that can be used to fetch ETH transactions.\n *\n * @param networkType - Network type of desired network.\n * @param urlParams - The parameters used to construct the URL.\n * @returns URL to fetch the access the endpoint.\n */\nexport function getEtherscanApiUrl(\n networkType: string,\n urlParams: any,\n): string {\n let etherscanSubdomain = 'api';\n if (networkType !== NetworkType.mainnet) {\n etherscanSubdomain = `api-${networkType}`;\n }\n const apiUrl = `https://${etherscanSubdomain}.etherscan.io`;\n let url = `${apiUrl}/api?`;\n\n for (const paramKey in urlParams) {\n if (urlParams[paramKey]) {\n url += `${paramKey}=${urlParams[paramKey]}&`;\n }\n }\n url += 'tag=latest&page=1';\n return url;\n}\n\n/**\n * Normalizes properties on a Transaction object.\n *\n * @param transaction - Transaction object to normalize.\n * @returns Normalized Transaction object.\n */\nexport function normalizeTransaction(transaction: Transaction) {\n const normalizedTransaction: Transaction = { from: '' };\n let key: keyof Transaction;\n for (key in NORMALIZERS) {\n if (transaction[key as keyof Transaction]) {\n normalizedTransaction[key] = NORMALIZERS[key](transaction[key]) as never;\n }\n }\n return normalizedTransaction;\n}\n\n/**\n * Validates a Transaction object for required properties and throws in\n * the event of any validation error.\n *\n * @param transaction - Transaction object to validate.\n */\nexport function validateTransaction(transaction: Transaction) {\n if (\n !transaction.from ||\n typeof transaction.from !== 'string' ||\n !isValidHexAddress(transaction.from)\n ) {\n throw new Error(\n `Invalid \"from\" address: ${transaction.from} must be a valid string.`,\n );\n }\n\n if (transaction.to === '0x' || transaction.to === undefined) {\n if (transaction.data) {\n delete transaction.to;\n } else {\n throw new Error(\n `Invalid \"to\" address: ${transaction.to} must be a valid string.`,\n );\n }\n } else if (\n transaction.to !== undefined &&\n !isValidHexAddress(transaction.to)\n ) {\n throw new Error(\n `Invalid \"to\" address: ${transaction.to} must be a valid string.`,\n );\n }\n\n if (transaction.value !== undefined) {\n const value = transaction.value.toString();\n if (value.includes('-')) {\n throw new Error(`Invalid \"value\": ${value} is not a positive number.`);\n }\n\n if (value.includes('.')) {\n throw new Error(\n `Invalid \"value\": ${value} number must be denominated in wei.`,\n );\n }\n const intValue = parseInt(transaction.value, 10);\n const isValid =\n Number.isFinite(intValue) &&\n !Number.isNaN(intValue) &&\n !isNaN(Number(value)) &&\n Number.isSafeInteger(intValue);\n if (!isValid) {\n throw new Error(\n `Invalid \"value\": ${value} number must be a valid number.`,\n );\n }\n }\n}\n\n/**\n * Checks if a transaction is EIP-1559 by checking for the existence of\n * maxFeePerGas and maxPriorityFeePerGas within its parameters.\n *\n * @param transaction - Transaction object to add.\n * @returns Boolean that is true if the transaction is EIP-1559 (has maxFeePerGas and maxPriorityFeePerGas), otherwise returns false.\n */\nexport const isEIP1559Transaction = (transaction: Transaction): boolean => {\n const hasOwnProp = (obj: Transaction, key: string) =>\n Object.prototype.hasOwnProperty.call(obj, key);\n return (\n hasOwnProp(transaction, 'maxFeePerGas') &&\n hasOwnProp(transaction, 'maxPriorityFeePerGas')\n );\n};\n\n/**\n * Handles the fetch of incoming transactions.\n *\n * @param networkType - Network type of desired network.\n * @param address - Address to get the transactions from.\n * @param txHistoryLimit - The maximum number of transactions to fetch.\n * @param opt - Object that can contain fromBlock and Etherscan service API key.\n * @returns Responses for both ETH and ERC20 token transactions.\n */\nexport async function handleTransactionFetch(\n networkType: string,\n address: string,\n txHistoryLimit: number,\n opt?: FetchAllOptions,\n): Promise<[{ [result: string]: [] }, { [result: string]: [] }]> {\n // transactions\n const urlParams = {\n module: 'account',\n address,\n startBlock: opt?.fromBlock,\n apikey: opt?.etherscanApiKey,\n offset: txHistoryLimit.toString(),\n order: 'desc',\n };\n const etherscanTxUrl = getEtherscanApiUrl(networkType, {\n ...urlParams,\n action: 'txlist',\n });\n const etherscanTxResponsePromise = handleFetch(etherscanTxUrl);\n\n // tokens\n const etherscanTokenUrl = getEtherscanApiUrl(networkType, {\n ...urlParams,\n action: 'tokentx',\n });\n const etherscanTokenResponsePromise = handleFetch(etherscanTokenUrl);\n\n let [etherscanTxResponse, etherscanTokenResponse] = await Promise.all([\n etherscanTxResponsePromise,\n etherscanTokenResponsePromise,\n ]);\n\n if (\n etherscanTxResponse.status === '0' ||\n etherscanTxResponse.result.length <= 0\n ) {\n etherscanTxResponse = { status: etherscanTxResponse.status, result: [] };\n }\n\n if (\n etherscanTokenResponse.status === '0' ||\n etherscanTokenResponse.result.length <= 0\n ) {\n etherscanTokenResponse = {\n status: etherscanTokenResponse.status,\n result: [],\n };\n }\n\n return [etherscanTxResponse, etherscanTokenResponse];\n}\n\nexport const validateGasValues = (\n gasValues: GasPriceValue | FeeMarketEIP1559Values,\n) => {\n Object.keys(gasValues).forEach((key) => {\n const value = (gasValues as any)[key];\n if (typeof value !== 'string' || !isHexString(value)) {\n throw new TypeError(\n `expected hex string for ${key} but received: ${value}`,\n );\n }\n });\n};\n\nexport const isFeeMarketEIP1559Values = (\n gasValues?: GasPriceValue | FeeMarketEIP1559Values,\n): gasValues is FeeMarketEIP1559Values =>\n (gasValues as FeeMarketEIP1559Values)?.maxFeePerGas !== undefined ||\n (gasValues as FeeMarketEIP1559Values)?.maxPriorityFeePerGas !== undefined;\n\nexport const isGasPriceValue = (\n gasValues?: GasPriceValue | FeeMarketEIP1559Values,\n): gasValues is GasPriceValue =>\n (gasValues as GasPriceValue)?.gasPrice !== undefined;\n\nexport const getIncreasedPriceHex = (value: number, rate: number): string =>\n addHexPrefix(`${parseInt(`${value * rate}`, 10).toString(16)}`);\n\nexport const getIncreasedPriceFromExisting = (\n value: string | undefined,\n rate: number,\n): string => {\n return getIncreasedPriceHex(convertHexToDecimal(value), rate);\n};\n\n/**\n * Validates that the proposed value is greater than or equal to the minimum value.\n *\n * @param proposed - The proposed value.\n * @param min - The minimum value.\n * @returns The proposed value.\n * @throws Will throw if the proposed value is too low.\n */\nexport function validateMinimumIncrease(proposed: string, min: string) {\n const proposedDecimal = convertHexToDecimal(proposed);\n const minDecimal = convertHexToDecimal(min);\n if (proposedDecimal >= minDecimal) {\n return proposed;\n }\n const errorMsg = `The proposed value: ${proposedDecimal} should meet or exceed the minimum value: ${minDecimal}`;\n throw new Error(errorMsg);\n}\n"]}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA4D;AAC5D,iEAKoC;AAWvB,QAAA,kBAAkB,GAAG,kCAAkC,CAAC;AAErE,MAAM,WAAW,GAA0C;IACzD,IAAI,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,IAAA,8BAAY,EAAC,IAAI,CAAC;IAC1C,IAAI,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,IAAA,8BAAY,EAAC,IAAI,CAAC,CAAC,WAAW,EAAE;IACxD,GAAG,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,IAAA,8BAAY,EAAC,GAAG,CAAC;IACvC,QAAQ,EAAE,CAAC,QAAgB,EAAE,EAAE,CAAC,IAAA,8BAAY,EAAC,QAAQ,CAAC;IACtD,KAAK,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,IAAA,8BAAY,EAAC,KAAK,CAAC;IAC7C,EAAE,EAAE,CAAC,EAAU,EAAE,EAAE,CAAC,IAAA,8BAAY,EAAC,EAAE,CAAC,CAAC,WAAW,EAAE;IAClD,KAAK,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,IAAA,8BAAY,EAAC,KAAK,CAAC;IAC7C,YAAY,EAAE,CAAC,YAAoB,EAAE,EAAE,CAAC,IAAA,8BAAY,EAAC,YAAY,CAAC;IAClE,oBAAoB,EAAE,CAAC,oBAA4B,EAAE,EAAE,CACrD,IAAA,8BAAY,EAAC,oBAAoB,CAAC;IACpC,gBAAgB,EAAE,CAAC,oBAA4B,EAAE,EAAE,CACjD,IAAA,8BAAY,EAAC,oBAAoB,CAAC;CACrC,CAAC;AAEF;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAChC,WAAmB,EACnB,SAAc;IAEd,IAAI,kBAAkB,GAAG,KAAK,CAAC;IAC/B,IAAI,WAAW,KAAK,8BAAW,CAAC,OAAO,EAAE;QACvC,kBAAkB,GAAG,OAAO,WAAW,EAAE,CAAC;KAC3C;IACD,MAAM,MAAM,GAAG,WAAW,kBAAkB,eAAe,CAAC;IAC5D,IAAI,GAAG,GAAG,GAAG,MAAM,OAAO,CAAC;IAE3B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAChC,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE;YACvB,GAAG,IAAI,GAAG,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC;SAC9C;KACF;IACD,GAAG,IAAI,mBAAmB,CAAC;IAC3B,OAAO,GAAG,CAAC;AACb,CAAC;AAlBD,gDAkBC;AAED;;;;;GAKG;AACH,SAAgB,oBAAoB,CAAC,WAAwB;IAC3D,MAAM,qBAAqB,GAAgB,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IACxD,IAAI,GAAsB,CAAC;IAC3B,KAAK,GAAG,IAAI,WAAW,EAAE;QACvB,IAAI,WAAW,CAAC,GAAwB,CAAC,EAAE;YACzC,qBAAqB,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAU,CAAC;SAC1E;KACF;IACD,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AATD,oDASC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAC,WAAwB;IAC1D,IACE,CAAC,WAAW,CAAC,IAAI;QACjB,OAAO,WAAW,CAAC,IAAI,KAAK,QAAQ;QACpC,CAAC,IAAA,oCAAiB,EAAC,WAAW,CAAC,IAAI,CAAC,EACpC;QACA,MAAM,IAAI,KAAK,CACb,2BAA2B,WAAW,CAAC,IAAI,0BAA0B,CACtE,CAAC;KACH;IAED,IAAI,WAAW,CAAC,EAAE,KAAK,IAAI,IAAI,WAAW,CAAC,EAAE,KAAK,SAAS,EAAE;QAC3D,IAAI,WAAW,CAAC,IAAI,EAAE;YACpB,OAAO,WAAW,CAAC,EAAE,CAAC;SACvB;aAAM;YACL,MAAM,IAAI,KAAK,CACb,yBAAyB,WAAW,CAAC,EAAE,0BAA0B,CAClE,CAAC;SACH;KACF;SAAM,IACL,WAAW,CAAC,EAAE,KAAK,SAAS;QAC5B,CAAC,IAAA,oCAAiB,EAAC,WAAW,CAAC,EAAE,CAAC,EAClC;QACA,MAAM,IAAI,KAAK,CACb,yBAAyB,WAAW,CAAC,EAAE,0BAA0B,CAClE,CAAC;KACH;IAED,IAAI,WAAW,CAAC,KAAK,KAAK,SAAS,EAAE;QACnC,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC3C,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACvB,MAAM,IAAI,KAAK,CAAC,oBAAoB,KAAK,4BAA4B,CAAC,CAAC;SACxE;QAED,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;YACvB,MAAM,IAAI,KAAK,CACb,oBAAoB,KAAK,qCAAqC,CAC/D,CAAC;SACH;QACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACjD,MAAM,OAAO,GACX,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACzB,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;YACvB,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACrB,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,IAAI,KAAK,CACb,oBAAoB,KAAK,iCAAiC,CAC3D,CAAC;SACH;KACF;AACH,CAAC;AAnDD,kDAmDC;AAED;;;;;;GAMG;AACI,MAAM,oBAAoB,GAAG,CAAC,WAAwB,EAAW,EAAE;IACxE,MAAM,UAAU,GAAG,CAAC,GAAgB,EAAE,GAAW,EAAE,EAAE,CACnD,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACjD,OAAO,CACL,UAAU,CAAC,WAAW,EAAE,cAAc,CAAC;QACvC,UAAU,CAAC,WAAW,EAAE,sBAAsB,CAAC,CAChD,CAAC;AACJ,CAAC,CAAC;AAPW,QAAA,oBAAoB,wBAO/B;AAEF;;;;;;;;GAQG;AACH,SAAsB,sBAAsB,CAC1C,WAAmB,EACnB,OAAe,EACf,cAAsB,EACtB,GAAqB;;QAErB,eAAe;QACf,MAAM,SAAS,GAAG;YAChB,MAAM,EAAE,SAAS;YACjB,OAAO;YACP,UAAU,EAAE,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,SAAS;YAC1B,MAAM,EAAE,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,eAAe;YAC5B,MAAM,EAAE,cAAc,CAAC,QAAQ,EAAE;YACjC,KAAK,EAAE,MAAM;SACd,CAAC;QACF,MAAM,cAAc,GAAG,kBAAkB,CAAC,WAAW,kCAChD,SAAS,KACZ,MAAM,EAAE,QAAQ,IAChB,CAAC;QACH,MAAM,0BAA0B,GAAG,IAAA,8BAAW,EAAC,cAAc,CAAC,CAAC;QAE/D,SAAS;QACT,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,WAAW,kCACnD,SAAS,KACZ,MAAM,EAAE,SAAS,IACjB,CAAC;QACH,MAAM,6BAA6B,GAAG,IAAA,8BAAW,EAAC,iBAAiB,CAAC,CAAC;QAErE,IAAI,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACpE,0BAA0B;YAC1B,6BAA6B;SAC9B,CAAC,CAAC;QAEH,IACE,mBAAmB,CAAC,MAAM,KAAK,GAAG;YAClC,mBAAmB,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,EACtC;YACA,mBAAmB,GAAG,EAAE,MAAM,EAAE,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;SAC1E;QAED,IACE,sBAAsB,CAAC,MAAM,KAAK,GAAG;YACrC,sBAAsB,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,EACzC;YACA,sBAAsB,GAAG;gBACvB,MAAM,EAAE,sBAAsB,CAAC,MAAM;gBACrC,MAAM,EAAE,EAAE;aACX,CAAC;SACH;QAED,OAAO,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,CAAC;IACvD,CAAC;CAAA;AAnDD,wDAmDC;AAEM,MAAM,iBAAiB,GAAG,CAC/B,SAAiD,EACjD,EAAE;IACF,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACrC,MAAM,KAAK,GAAI,SAAiB,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,IAAA,6BAAW,EAAC,KAAK,CAAC,EAAE;YACpD,MAAM,IAAI,SAAS,CACjB,2BAA2B,GAAG,kBAAkB,KAAK,EAAE,CACxD,CAAC;SACH;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAXW,QAAA,iBAAiB,qBAW5B;AAEK,MAAM,wBAAwB,GAAG,CACtC,SAAkD,EACb,EAAE,CACvC,CAAC,SAAoC,aAApC,SAAS,uBAAT,SAAS,CAA6B,YAAY,MAAK,SAAS;IACjE,CAAC,SAAoC,aAApC,SAAS,uBAAT,SAAS,CAA6B,oBAAoB,MAAK,SAAS,CAAC;AAJ/D,QAAA,wBAAwB,4BAIuC;AAErE,MAAM,eAAe,GAAG,CAC7B,SAAkD,EACtB,EAAE,CAC9B,CAAC,SAA2B,aAA3B,SAAS,uBAAT,SAAS,CAAoB,QAAQ,MAAK,SAAS,CAAC;AAH1C,QAAA,eAAe,mBAG2B;AAEhD,MAAM,oBAAoB,GAAG,CAAC,KAAa,EAAE,IAAY,EAAU,EAAE,CAC1E,IAAA,8BAAY,EAAC,GAAG,QAAQ,CAAC,GAAG,KAAK,GAAG,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AADrD,QAAA,oBAAoB,wBACiC;AAE3D,MAAM,6BAA6B,GAAG,CAC3C,KAAyB,EACzB,IAAY,EACJ,EAAE;IACV,OAAO,IAAA,4BAAoB,EAAC,IAAA,sCAAmB,EAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;AAChE,CAAC,CAAC;AALW,QAAA,6BAA6B,iCAKxC;AAEF;;;;;;;GAOG;AACH,SAAgB,uBAAuB,CAAC,QAAgB,EAAE,GAAW;IACnE,MAAM,eAAe,GAAG,IAAA,sCAAmB,EAAC,QAAQ,CAAC,CAAC;IACtD,MAAM,UAAU,GAAG,IAAA,sCAAmB,EAAC,GAAG,CAAC,CAAC;IAC5C,IAAI,eAAe,IAAI,UAAU,EAAE;QACjC,OAAO,QAAQ,CAAC;KACjB;IACD,MAAM,QAAQ,GAAG,uBAAuB,eAAe,6CAA6C,UAAU,EAAE,CAAC;IACjH,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC;AAC5B,CAAC;AARD,0DAQC;AAED;;;;;;;GAOG;AACH,SAAgB,uCAAuC,CACrD,WAAmB,EACnB,iBAAoC,EACpC,YAA+B;IAE/B,OAAO,YAAY;SAChB,MAAM,CACL,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,CACpC,MAAM,KAAK,iBAAiB;QAC5B,IAAI,CAAC,WAAW,EAAE,KAAK,WAAW,CAAC,WAAW,EAAE,CACnD;SACA,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;QAC5D,4CAA4C;QAC5C,6DAA6D;QAC7D,kDAAkD;QAClD,OAAO;YACL,MAAM;YACN,OAAO,EAAE,CAAC,EAAE,CAAC;YACb,QAAQ,EAAE;gBACR,IAAI,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE;gBAChB,GAAG,EAAE,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,EAAE;gBACd,KAAK,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE;gBAClB,KAAK,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE;aACnB;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACP,CAAC;AA1BD,0FA0BC","sourcesContent":["import { addHexPrefix, isHexString } from 'ethereumjs-util';\nimport {\n NetworkType,\n convertHexToDecimal,\n handleFetch,\n isValidHexAddress,\n} from '@metamask/controller-utils';\nimport type { Transaction as NonceTrackerTransaction } from 'nonce-tracker/dist/NonceTracker';\nimport {\n Transaction,\n FetchAllOptions,\n GasPriceValue,\n FeeMarketEIP1559Values,\n TransactionStatus,\n} from './TransactionController';\nimport type { TransactionMeta } from './TransactionController';\n\nexport const ESTIMATE_GAS_ERROR = 'eth_estimateGas rpc method error';\n\nconst NORMALIZERS: { [param in keyof Transaction]: any } = {\n data: (data: string) => addHexPrefix(data),\n from: (from: string) => addHexPrefix(from).toLowerCase(),\n gas: (gas: string) => addHexPrefix(gas),\n gasPrice: (gasPrice: string) => addHexPrefix(gasPrice),\n nonce: (nonce: string) => addHexPrefix(nonce),\n to: (to: string) => addHexPrefix(to).toLowerCase(),\n value: (value: string) => addHexPrefix(value),\n maxFeePerGas: (maxFeePerGas: string) => addHexPrefix(maxFeePerGas),\n maxPriorityFeePerGas: (maxPriorityFeePerGas: string) =>\n addHexPrefix(maxPriorityFeePerGas),\n estimatedBaseFee: (maxPriorityFeePerGas: string) =>\n addHexPrefix(maxPriorityFeePerGas),\n};\n\n/**\n * Return a URL that can be used to fetch ETH transactions.\n *\n * @param networkType - Network type of desired network.\n * @param urlParams - The parameters used to construct the URL.\n * @returns URL to fetch the access the endpoint.\n */\nexport function getEtherscanApiUrl(\n networkType: string,\n urlParams: any,\n): string {\n let etherscanSubdomain = 'api';\n if (networkType !== NetworkType.mainnet) {\n etherscanSubdomain = `api-${networkType}`;\n }\n const apiUrl = `https://${etherscanSubdomain}.etherscan.io`;\n let url = `${apiUrl}/api?`;\n\n for (const paramKey in urlParams) {\n if (urlParams[paramKey]) {\n url += `${paramKey}=${urlParams[paramKey]}&`;\n }\n }\n url += 'tag=latest&page=1';\n return url;\n}\n\n/**\n * Normalizes properties on a Transaction object.\n *\n * @param transaction - Transaction object to normalize.\n * @returns Normalized Transaction object.\n */\nexport function normalizeTransaction(transaction: Transaction) {\n const normalizedTransaction: Transaction = { from: '' };\n let key: keyof Transaction;\n for (key in NORMALIZERS) {\n if (transaction[key as keyof Transaction]) {\n normalizedTransaction[key] = NORMALIZERS[key](transaction[key]) as never;\n }\n }\n return normalizedTransaction;\n}\n\n/**\n * Validates a Transaction object for required properties and throws in\n * the event of any validation error.\n *\n * @param transaction - Transaction object to validate.\n */\nexport function validateTransaction(transaction: Transaction) {\n if (\n !transaction.from ||\n typeof transaction.from !== 'string' ||\n !isValidHexAddress(transaction.from)\n ) {\n throw new Error(\n `Invalid \"from\" address: ${transaction.from} must be a valid string.`,\n );\n }\n\n if (transaction.to === '0x' || transaction.to === undefined) {\n if (transaction.data) {\n delete transaction.to;\n } else {\n throw new Error(\n `Invalid \"to\" address: ${transaction.to} must be a valid string.`,\n );\n }\n } else if (\n transaction.to !== undefined &&\n !isValidHexAddress(transaction.to)\n ) {\n throw new Error(\n `Invalid \"to\" address: ${transaction.to} must be a valid string.`,\n );\n }\n\n if (transaction.value !== undefined) {\n const value = transaction.value.toString();\n if (value.includes('-')) {\n throw new Error(`Invalid \"value\": ${value} is not a positive number.`);\n }\n\n if (value.includes('.')) {\n throw new Error(\n `Invalid \"value\": ${value} number must be denominated in wei.`,\n );\n }\n const intValue = parseInt(transaction.value, 10);\n const isValid =\n Number.isFinite(intValue) &&\n !Number.isNaN(intValue) &&\n !isNaN(Number(value)) &&\n Number.isSafeInteger(intValue);\n if (!isValid) {\n throw new Error(\n `Invalid \"value\": ${value} number must be a valid number.`,\n );\n }\n }\n}\n\n/**\n * Checks if a transaction is EIP-1559 by checking for the existence of\n * maxFeePerGas and maxPriorityFeePerGas within its parameters.\n *\n * @param transaction - Transaction object to add.\n * @returns Boolean that is true if the transaction is EIP-1559 (has maxFeePerGas and maxPriorityFeePerGas), otherwise returns false.\n */\nexport const isEIP1559Transaction = (transaction: Transaction): boolean => {\n const hasOwnProp = (obj: Transaction, key: string) =>\n Object.prototype.hasOwnProperty.call(obj, key);\n return (\n hasOwnProp(transaction, 'maxFeePerGas') &&\n hasOwnProp(transaction, 'maxPriorityFeePerGas')\n );\n};\n\n/**\n * Handles the fetch of incoming transactions.\n *\n * @param networkType - Network type of desired network.\n * @param address - Address to get the transactions from.\n * @param txHistoryLimit - The maximum number of transactions to fetch.\n * @param opt - Object that can contain fromBlock and Etherscan service API key.\n * @returns Responses for both ETH and ERC20 token transactions.\n */\nexport async function handleTransactionFetch(\n networkType: string,\n address: string,\n txHistoryLimit: number,\n opt?: FetchAllOptions,\n): Promise<[{ [result: string]: [] }, { [result: string]: [] }]> {\n // transactions\n const urlParams = {\n module: 'account',\n address,\n startBlock: opt?.fromBlock,\n apikey: opt?.etherscanApiKey,\n offset: txHistoryLimit.toString(),\n order: 'desc',\n };\n const etherscanTxUrl = getEtherscanApiUrl(networkType, {\n ...urlParams,\n action: 'txlist',\n });\n const etherscanTxResponsePromise = handleFetch(etherscanTxUrl);\n\n // tokens\n const etherscanTokenUrl = getEtherscanApiUrl(networkType, {\n ...urlParams,\n action: 'tokentx',\n });\n const etherscanTokenResponsePromise = handleFetch(etherscanTokenUrl);\n\n let [etherscanTxResponse, etherscanTokenResponse] = await Promise.all([\n etherscanTxResponsePromise,\n etherscanTokenResponsePromise,\n ]);\n\n if (\n etherscanTxResponse.status === '0' ||\n etherscanTxResponse.result.length <= 0\n ) {\n etherscanTxResponse = { status: etherscanTxResponse.status, result: [] };\n }\n\n if (\n etherscanTokenResponse.status === '0' ||\n etherscanTokenResponse.result.length <= 0\n ) {\n etherscanTokenResponse = {\n status: etherscanTokenResponse.status,\n result: [],\n };\n }\n\n return [etherscanTxResponse, etherscanTokenResponse];\n}\n\nexport const validateGasValues = (\n gasValues: GasPriceValue | FeeMarketEIP1559Values,\n) => {\n Object.keys(gasValues).forEach((key) => {\n const value = (gasValues as any)[key];\n if (typeof value !== 'string' || !isHexString(value)) {\n throw new TypeError(\n `expected hex string for ${key} but received: ${value}`,\n );\n }\n });\n};\n\nexport const isFeeMarketEIP1559Values = (\n gasValues?: GasPriceValue | FeeMarketEIP1559Values,\n): gasValues is FeeMarketEIP1559Values =>\n (gasValues as FeeMarketEIP1559Values)?.maxFeePerGas !== undefined ||\n (gasValues as FeeMarketEIP1559Values)?.maxPriorityFeePerGas !== undefined;\n\nexport const isGasPriceValue = (\n gasValues?: GasPriceValue | FeeMarketEIP1559Values,\n): gasValues is GasPriceValue =>\n (gasValues as GasPriceValue)?.gasPrice !== undefined;\n\nexport const getIncreasedPriceHex = (value: number, rate: number): string =>\n addHexPrefix(`${parseInt(`${value * rate}`, 10).toString(16)}`);\n\nexport const getIncreasedPriceFromExisting = (\n value: string | undefined,\n rate: number,\n): string => {\n return getIncreasedPriceHex(convertHexToDecimal(value), rate);\n};\n\n/**\n * Validates that the proposed value is greater than or equal to the minimum value.\n *\n * @param proposed - The proposed value.\n * @param min - The minimum value.\n * @returns The proposed value.\n * @throws Will throw if the proposed value is too low.\n */\nexport function validateMinimumIncrease(proposed: string, min: string) {\n const proposedDecimal = convertHexToDecimal(proposed);\n const minDecimal = convertHexToDecimal(min);\n if (proposedDecimal >= minDecimal) {\n return proposed;\n }\n const errorMsg = `The proposed value: ${proposedDecimal} should meet or exceed the minimum value: ${minDecimal}`;\n throw new Error(errorMsg);\n}\n\n/**\n * Helper function to filter and format transactions for the nonce tracker.\n *\n * @param fromAddress - Address of the account from which the transactions to filter from are sent.\n * @param transactionStatus - Status of the transactions for which to filter.\n * @param transactions - Array of transactionMeta objects that have been prefiltered.\n * @returns Array of transactions formatted for the nonce tracker.\n */\nexport function getAndFormatTransactionsForNonceTracker(\n fromAddress: string,\n transactionStatus: TransactionStatus,\n transactions: TransactionMeta[],\n): NonceTrackerTransaction[] {\n return transactions\n .filter(\n ({ status, transaction: { from } }) =>\n status === transactionStatus &&\n from.toLowerCase() === fromAddress.toLowerCase(),\n )\n .map(({ status, transaction: { from, gas, value, nonce } }) => {\n // the only value we care about is the nonce\n // but we need to return the other values to satisfy the type\n // TODO: refactor nonceTracker to not require this\n return {\n status,\n history: [{}],\n txParams: {\n from: from ?? '',\n gas: gas ?? '',\n value: value ?? '',\n nonce: nonce ?? '',\n },\n };\n });\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metamask/transaction-controller",
3
- "version": "4.0.1",
3
+ "version": "6.0.0",
4
4
  "description": "Stores transactions alongside their periodically updated statuses and manages interactions such as approval and cancellation",
5
5
  "keywords": [
6
6
  "MetaMask",
@@ -31,32 +31,41 @@
31
31
  "dependencies": {
32
32
  "@ethereumjs/common": "^2.6.1",
33
33
  "@ethereumjs/tx": "^3.5.2",
34
- "@metamask/base-controller": "^2.0.0",
35
- "@metamask/controller-utils": "^3.1.0",
36
- "@metamask/network-controller": "^6.0.0",
34
+ "@metamask/approval-controller": "^3.0.0",
35
+ "@metamask/base-controller": "^3.0.0",
36
+ "@metamask/controller-utils": "^4.0.0",
37
+ "@metamask/network-controller": "^9.0.0",
38
+ "@metamask/utils": "^5.0.2",
37
39
  "async-mutex": "^0.2.6",
38
40
  "babel-runtime": "^6.26.0",
39
41
  "eth-method-registry": "1.1.0",
40
42
  "eth-query": "^2.1.2",
41
- "eth-rpc-errors": "^4.0.0",
43
+ "eth-rpc-errors": "^4.0.2",
42
44
  "ethereumjs-util": "^7.0.10",
45
+ "nonce-tracker": "^1.1.0",
43
46
  "uuid": "^8.3.2"
44
47
  },
45
48
  "devDependencies": {
46
49
  "@metamask/auto-changelog": "^3.1.0",
47
- "@types/jest": "^26.0.22",
48
- "@types/node": "^14.14.31",
50
+ "@metamask/swappable-obj-proxy": "^2.1.0",
51
+ "@types/jest": "^27.4.1",
52
+ "@types/node": "^16.18.24",
49
53
  "deepmerge": "^4.2.2",
54
+ "eth-block-tracker": "^7.0.1",
50
55
  "ethjs-provider-http": "^0.1.6",
51
- "jest": "^26.4.2",
56
+ "jest": "^27.5.1",
52
57
  "sinon": "^9.2.4",
53
- "ts-jest": "^26.5.2",
58
+ "ts-jest": "^27.1.4",
54
59
  "typedoc": "^0.22.15",
55
60
  "typedoc-plugin-missing-exports": "^0.22.6",
56
61
  "typescript": "~4.6.3"
57
62
  },
63
+ "peerDependencies": {
64
+ "@metamask/approval-controller": "^3.0.0",
65
+ "@metamask/network-controller": "^9.0.0"
66
+ },
58
67
  "engines": {
59
- "node": ">=14.0.0"
68
+ "node": ">=16.0.0"
60
69
  },
61
70
  "publishConfig": {
62
71
  "access": "public",