@metamask/transaction-controller 8.0.0 → 9.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.
Files changed (38) hide show
  1. package/CHANGELOG.md +44 -1
  2. package/dist/EtherscanRemoteTransactionSource.d.ts +15 -0
  3. package/dist/EtherscanRemoteTransactionSource.d.ts.map +1 -0
  4. package/dist/EtherscanRemoteTransactionSource.js +99 -0
  5. package/dist/EtherscanRemoteTransactionSource.js.map +1 -0
  6. package/dist/IncomingTransactionHelper.d.ts +24 -0
  7. package/dist/IncomingTransactionHelper.d.ts.map +1 -0
  8. package/dist/IncomingTransactionHelper.js +188 -0
  9. package/dist/IncomingTransactionHelper.js.map +1 -0
  10. package/dist/TransactionController.d.ts +58 -232
  11. package/dist/TransactionController.d.ts.map +1 -1
  12. package/dist/TransactionController.js +198 -311
  13. package/dist/TransactionController.js.map +1 -1
  14. package/dist/constants.d.ts +119 -0
  15. package/dist/constants.d.ts.map +1 -0
  16. package/dist/constants.js +124 -0
  17. package/dist/constants.js.map +1 -0
  18. package/dist/etherscan.d.ts +65 -0
  19. package/dist/etherscan.d.ts.map +1 -0
  20. package/dist/etherscan.js +116 -0
  21. package/dist/etherscan.js.map +1 -0
  22. package/dist/index.d.ts +2 -0
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +1 -0
  25. package/dist/index.js.map +1 -1
  26. package/dist/types.d.ts +265 -0
  27. package/dist/types.d.ts.map +1 -0
  28. package/dist/types.js +29 -0
  29. package/dist/types.js.map +1 -0
  30. package/dist/utils.d.ts +13 -23
  31. package/dist/utils.d.ts.map +1 -1
  32. package/dist/utils.js +20 -77
  33. package/dist/utils.js.map +1 -1
  34. package/package.json +5 -6
  35. package/dist/mocks/txsMock.d.ts +0 -64
  36. package/dist/mocks/txsMock.d.ts.map +0 -1
  37. package/dist/mocks/txsMock.js +0 -516
  38. package/dist/mocks/txsMock.js.map +0 -1
@@ -1,12 +1,12 @@
1
1
  /// <reference types="node" />
2
- import { Hardfork, Common } from '@ethereumjs/common';
2
+ import { Hardfork } from '@ethereumjs/common';
3
3
  import type { TypedTransaction } from '@ethereumjs/tx';
4
4
  import type { AddApprovalRequest } from '@metamask/approval-controller';
5
5
  import type { BaseConfig, BaseState, RestrictedControllerMessenger } from '@metamask/base-controller';
6
6
  import { BaseController } from '@metamask/base-controller';
7
7
  import type { BlockTracker, NetworkState, Provider } from '@metamask/network-controller';
8
- import type { Hex } from '@metamask/utils';
9
8
  import { EventEmitter } from 'events';
9
+ import type { Transaction, TransactionMeta, WalletDevice } from './types';
10
10
  export declare const HARDFORK = Hardfork.London;
11
11
  /**
12
12
  * @type Result
@@ -26,35 +26,6 @@ export interface FetchAllOptions {
26
26
  fromBlock?: string;
27
27
  etherscanApiKey?: string;
28
28
  }
29
- /**
30
- * @type Transaction
31
- *
32
- * Transaction representation
33
- * @property chainId - Network ID as per EIP-155
34
- * @property data - Data to pass with this transaction
35
- * @property from - Address to send this transaction from
36
- * @property gas - Gas to send with this transaction
37
- * @property gasPrice - Price of gas with this transaction
38
- * @property gasUsed - Gas used in the transaction
39
- * @property nonce - Unique number to prevent replay attacks
40
- * @property to - Address to send this transaction to
41
- * @property value - Value associated with this transaction
42
- */
43
- export interface Transaction {
44
- chainId?: Hex;
45
- data?: string;
46
- from: string;
47
- gas?: string;
48
- gasPrice?: string;
49
- gasUsed?: string;
50
- nonce?: string;
51
- to?: string;
52
- value?: string;
53
- maxFeePerGas?: string;
54
- maxPriorityFeePerGas?: string;
55
- estimatedBaseFee?: string;
56
- estimateGasError?: string;
57
- }
58
29
  export interface GasPriceValue {
59
30
  gasPrice: string;
60
31
  }
@@ -62,115 +33,6 @@ export interface FeeMarketEIP1559Values {
62
33
  maxFeePerGas: string;
63
34
  maxPriorityFeePerGas: string;
64
35
  }
65
- /**
66
- * The status of the transaction. Each status represents the state of the transaction internally
67
- * in the wallet. Some of these correspond with the state of the transaction on the network, but
68
- * some are wallet-specific.
69
- */
70
- export declare enum TransactionStatus {
71
- approved = "approved",
72
- cancelled = "cancelled",
73
- confirmed = "confirmed",
74
- failed = "failed",
75
- rejected = "rejected",
76
- signed = "signed",
77
- submitted = "submitted",
78
- unapproved = "unapproved"
79
- }
80
- /**
81
- * Options for wallet device.
82
- */
83
- export declare enum WalletDevice {
84
- MM_MOBILE = "metamask_mobile",
85
- MM_EXTENSION = "metamask_extension",
86
- OTHER = "other_device"
87
- }
88
- declare type TransactionMetaBase = {
89
- isTransfer?: boolean;
90
- transferInformation?: {
91
- symbol: string;
92
- contractAddress: string;
93
- decimals: number;
94
- };
95
- id: string;
96
- networkID?: string;
97
- chainId?: Hex;
98
- origin?: string;
99
- rawTransaction?: string;
100
- time: number;
101
- toSmartContract?: boolean;
102
- transaction: Transaction;
103
- transactionHash?: string;
104
- blockNumber?: string;
105
- deviceConfirmedOn?: WalletDevice;
106
- verifiedOnBlockchain?: boolean;
107
- };
108
- /**
109
- * @type TransactionMeta
110
- *
111
- * TransactionMeta representation
112
- * @property error - Synthesized error information for failed transactions
113
- * @property id - Generated UUID associated with this transaction
114
- * @property networkID - Network code as per EIP-155 for this transaction
115
- * @property origin - Origin this transaction was sent from
116
- * @property deviceConfirmedOn - string to indicate what device the transaction was confirmed
117
- * @property rawTransaction - Hex representation of the underlying transaction
118
- * @property status - String status of this transaction
119
- * @property time - Timestamp associated with this transaction
120
- * @property toSmartContract - Whether transaction recipient is a smart contract
121
- * @property transaction - Underlying Transaction object
122
- * @property transactionHash - Hash of a successful transaction
123
- * @property blockNumber - Number of the block where the transaction has been included
124
- */
125
- export declare type TransactionMeta = ({
126
- status: Exclude<TransactionStatus, TransactionStatus.failed>;
127
- } & TransactionMetaBase) | ({
128
- status: TransactionStatus.failed;
129
- error: Error;
130
- } & TransactionMetaBase);
131
- /**
132
- * @type EtherscanTransactionMeta
133
- *
134
- * EtherscanTransactionMeta representation
135
- * @property blockNumber - Number of the block where the transaction has been included
136
- * @property timeStamp - Timestamp associated with this transaction
137
- * @property hash - Hash of a successful transaction
138
- * @property nonce - Nonce of the transaction
139
- * @property blockHash - Hash of the block where the transaction has been included
140
- * @property transactionIndex - Etherscan internal index for this transaction
141
- * @property from - Address to send this transaction from
142
- * @property to - Address to send this transaction to
143
- * @property gas - Gas to send with this transaction
144
- * @property gasPrice - Price of gas with this transaction
145
- * @property isError - Synthesized error information for failed transactions
146
- * @property txreceipt_status - Receipt status for this transaction
147
- * @property input - input of the transaction
148
- * @property contractAddress - Address of the contract
149
- * @property cumulativeGasUsed - Amount of gas used
150
- * @property confirmations - Number of confirmations
151
- */
152
- export interface EtherscanTransactionMeta {
153
- blockNumber: string;
154
- timeStamp: string;
155
- hash: string;
156
- nonce: string;
157
- blockHash: string;
158
- transactionIndex: string;
159
- from: string;
160
- to: string;
161
- value: string;
162
- gas: string;
163
- gasPrice: string;
164
- cumulativeGasUsed: string;
165
- gasUsed: string;
166
- isError: string;
167
- txreceipt_status: string;
168
- input: string;
169
- contractAddress: string;
170
- confirmations: string;
171
- tokenDecimal: string;
172
- tokenSymbol: string;
173
- }
174
36
  /**
175
37
  * @type TransactionConfig
176
38
  *
@@ -207,6 +69,9 @@ export interface TransactionState extends BaseState {
207
69
  methodData: {
208
70
  [key: string]: MethodData;
209
71
  };
72
+ lastFetchedBlockNumbers: {
73
+ [key: string]: number;
74
+ };
210
75
  }
211
76
  /**
212
77
  * Multiplier used to determine a transaction's increased gas fee during cancellation
@@ -240,19 +105,9 @@ export declare class TransactionController extends BaseController<TransactionCon
240
105
  private readonly mutex;
241
106
  private readonly getNetworkState;
242
107
  private readonly messagingSystem;
108
+ private readonly incomingTransactionHelper;
243
109
  private failTransaction;
244
110
  private registryLookup;
245
- /**
246
- * Normalizes the transaction information from etherscan
247
- * to be compatible with the TransactionMeta interface.
248
- *
249
- * @param txMeta - The transaction.
250
- * @param currentNetworkID - The current network ID.
251
- * @param currentChainId - The current chain ID.
252
- * @returns The normalized transaction.
253
- */
254
- private normalizeTx;
255
- private readonly normalizeTokenTx;
256
111
  /**
257
112
  * EventEmitter instance used to listen to specific transactional events
258
113
  */
@@ -269,20 +124,33 @@ export declare class TransactionController extends BaseController<TransactionCon
269
124
  * Creates a TransactionController instance.
270
125
  *
271
126
  * @param options - The controller options.
127
+ * @param options.blockTracker - The block tracker used to poll for new blocks data.
272
128
  * @param options.getNetworkState - Gets the state of the network controller.
129
+ * @param options.getSelectedAddress - Gets the address of the currently selected account.
130
+ * @param options.incomingTransactions - Configuration options for incoming transaction support.
131
+ * @param options.incomingTransactions.apiKey - An optional API key to use when fetching remote transaction data.
132
+ * @param options.incomingTransactions.includeTokenTransfers - Whether or not to include ERC20 token transfers.
133
+ * @param options.incomingTransactions.isEnabled - Whether or not incoming transaction retrieval is enabled.
134
+ * @param options.incomingTransactions.updateTransactions - Whether or not to update local transactions using remote transaction data.
135
+ * @param options.messenger - The controller messenger.
273
136
  * @param options.onNetworkStateChange - Allows subscribing to network controller state changes.
274
137
  * @param options.provider - The provider used to create the underlying EthQuery instance.
275
- * @param options.blockTracker - The block tracker used to poll for new blocks data.
276
- * @param options.messenger - The controller messenger.
277
138
  * @param config - Initial options used to configure this controller.
278
139
  * @param state - Initial state to set on this controller.
279
140
  */
280
- constructor({ getNetworkState, onNetworkStateChange, provider, blockTracker, messenger, }: {
141
+ constructor({ blockTracker, getNetworkState, getSelectedAddress, incomingTransactions, messenger, onNetworkStateChange, provider, }: {
142
+ blockTracker: BlockTracker;
281
143
  getNetworkState: () => NetworkState;
144
+ getSelectedAddress: () => string;
145
+ incomingTransactions: {
146
+ apiKey?: string;
147
+ includeTokenTransfers?: boolean;
148
+ isEnabled?: () => boolean;
149
+ updateTransactions?: boolean;
150
+ };
151
+ messenger: TransactionControllerMessenger;
282
152
  onNetworkStateChange: (listener: (state: NetworkState) => void) => void;
283
153
  provider: Provider;
284
- blockTracker: BlockTracker;
285
- messenger: TransactionControllerMessenger;
286
154
  }, config?: Partial<TransactionConfig>, state?: Partial<TransactionState>);
287
155
  /**
288
156
  * Starts a new polling interval.
@@ -303,22 +171,24 @@ export declare class TransactionController extends BaseController<TransactionCon
303
171
  * if not provided. If A `<tx.id>:unapproved` hub event will be emitted once added.
304
172
  *
305
173
  * @param transaction - The transaction object to add.
306
- * @param origin - The domain origin to append to the generated TransactionMeta.
307
- * @param deviceConfirmedOn - An enum to indicate what device the transaction was confirmed to append to the generated TransactionMeta.
174
+ * @param opts - Additional options to control how the transaction is added.
175
+ * @param opts.deviceConfirmedOn - An enum to indicate what device confirmed the transaction.
176
+ * @param opts.origin - The origin of the transaction request, such as a dApp hostname.
177
+ * @param opts.requireApproval - Whether the transaction requires approval by the user, defaults to true unless explicitly disabled.
308
178
  * @returns Object containing a promise resolving to the transaction hash if approved.
309
179
  */
310
- addTransaction(transaction: Transaction, origin?: string, deviceConfirmedOn?: WalletDevice): Promise<Result>;
311
- prepareUnsignedEthTx(txParams: Record<string, unknown>): TypedTransaction;
180
+ addTransaction(transaction: Transaction, { deviceConfirmedOn, origin, requireApproval, }?: {
181
+ deviceConfirmedOn?: WalletDevice;
182
+ origin?: string;
183
+ requireApproval?: boolean | undefined;
184
+ }): Promise<Result>;
185
+ startIncomingTransactionPolling(): void;
186
+ stopIncomingTransactionPolling(): void;
187
+ updateIncomingTransactions(): Promise<void>;
312
188
  /**
313
- * `@ethereumjs/tx` uses `@ethereumjs/common` as a configuration tool for
314
- * specifying which chain, network, hardfork and EIPs to support for
315
- * a transaction. By referencing this configuration, and analyzing the fields
316
- * specified in txParams, @ethereumjs/tx is able to determine which EIP-2718
317
- * transaction type to use.
318
- *
319
- * @returns {Common} common configuration object
189
+ * Creates approvals for all unapproved transactions persisted.
320
190
  */
321
- getCommonConfiguration(): Common;
191
+ initApprovals(): void;
322
192
  /**
323
193
  * Attempts to cancel a transaction based on its ID by setting its status to "rejected"
324
194
  * and emitting a `<tx.id>:finished` hub event.
@@ -365,18 +235,12 @@ export declare class TransactionController extends BaseController<TransactionCon
365
235
  *
366
236
  * @param ignoreNetwork - Determines whether to wipe all transactions, or just those on the
367
237
  * current network. If `true`, all transactions are wiped.
238
+ * @param address - If specified, only transactions originating from this address will be
239
+ * wiped on current network.
368
240
  */
369
- wipeTransactions(ignoreNetwork?: boolean): void;
370
- /**
371
- * Get transactions from Etherscan for the given address. By default all transactions are
372
- * returned, but the `fromBlock` option can be given to filter just for transactions from a
373
- * specific block onward.
374
- *
375
- * @param address - The address to fetch the transactions for.
376
- * @param opt - Object containing optional data, fromBlock and Etherscan API key.
377
- * @returns The block number of the latest incoming transaction.
378
- */
379
- fetchAll(address: string, opt?: FetchAllOptions): Promise<string | void>;
241
+ wipeTransactions(ignoreNetwork?: boolean, address?: string): void;
242
+ startIncomingTransactionProcessing(): void;
243
+ stopIncomingTransactionProcessing(): void;
380
244
  private processApproval;
381
245
  /**
382
246
  * Approves a transaction and updates it's status in state. If this is not a
@@ -440,63 +304,25 @@ export declare class TransactionController extends BaseController<TransactionCon
440
304
  * @returns Whether the transaction has failed.
441
305
  */
442
306
  private checkTxReceiptStatusIsFailed;
443
- /**
444
- * Method to verify the state of transactions using Etherscan as a source of truth.
445
- *
446
- * @param remoteTxs - Transactions to reconcile that are from a remote source.
447
- * @param localTxs - Transactions to reconcile that are local.
448
- * @returns A tuple containing a boolean indicating whether or not an update was required, and the updated transaction.
449
- */
450
- private etherscanTransactionStateReconciler;
451
- /**
452
- * Get all transactions that are in the remote transactions array
453
- * but not in the local transactions array.
454
- *
455
- * @param remoteTxs - Array of transactions from remote source.
456
- * @param localTxs - Array of transactions stored locally.
457
- * @returns The new transactions.
458
- */
459
- private getNewTransactions;
460
- /**
461
- * Get all the transactions that are locally outdated with respect
462
- * to a remote source (etherscan or blockchain). The returned array
463
- * contains the transactions with the updated data.
464
- *
465
- * @param remoteTxs - Array of transactions from remote source.
466
- * @param localTxs - Array of transactions stored locally.
467
- * @returns The updated transactions.
468
- */
469
- private getUpdatedTransactions;
470
- /**
471
- * Verifies if a local transaction is outdated with respect to the remote transaction.
472
- *
473
- * @param remoteTx - The remote transaction from Etherscan.
474
- * @param localTx - The local transaction.
475
- * @returns Whether the transaction is outdated.
476
- */
477
- private isTransactionOutdated;
478
- /**
479
- * Verifies if the status of a local transaction is outdated with respect to the remote transaction.
480
- *
481
- * @param remoteTxHash - Remote transaction hash.
482
- * @param localTxHash - Local transaction hash.
483
- * @param remoteTxStatus - Remote transaction status.
484
- * @param localTxStatus - Local transaction status.
485
- * @returns Whether the status is outdated.
486
- */
487
- private isStatusOutdated;
488
- /**
489
- * Verifies if the gas data of a local transaction is outdated with respect to the remote transaction.
490
- *
491
- * @param remoteGasUsed - Remote gas used in the transaction.
492
- * @param localGasUsed - Local gas used in the transaction.
493
- * @returns Whether the gas data is outdated.
494
- */
495
- private isGasDataOutdated;
496
307
  private requestApproval;
497
308
  private getTransaction;
498
309
  private getApprovalId;
499
310
  private isTransactionCompleted;
311
+ private getChainAndNetworkId;
312
+ private prepareUnsignedEthTx;
313
+ /**
314
+ * `@ethereumjs/tx` uses `@ethereumjs/common` as a configuration tool for
315
+ * specifying which chain, network, hardfork and EIPs to support for
316
+ * a transaction. By referencing this configuration, and analyzing the fields
317
+ * specified in txParams, @ethereumjs/tx is able to determine which EIP-2718
318
+ * transaction type to use.
319
+ *
320
+ * @returns common configuration object
321
+ */
322
+ private getCommonConfiguration;
323
+ private onIncomingTransactions;
324
+ private onUpdatedLastFetchedBlockNumbers;
325
+ private generateDappSuggestedGasFees;
500
326
  }
501
327
  export default TransactionController;
502
328
  //# sourceMappingURL=TransactionController.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TransactionController.d.ts","sourceRoot":"","sources":["../src/TransactionController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TransactionController.d.ts","sourceRoot":"","sources":["../src/TransactionController.ts"],"names":[],"mappings":"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"}