@metamask/transaction-controller 21.2.0 → 23.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 (40) hide show
  1. package/CHANGELOG.md +58 -1
  2. package/dist/TransactionController.d.ts +113 -113
  3. package/dist/TransactionController.d.ts.map +1 -1
  4. package/dist/TransactionController.js +315 -181
  5. package/dist/TransactionController.js.map +1 -1
  6. package/dist/helpers/EtherscanRemoteTransactionSource.d.ts.map +1 -1
  7. package/dist/helpers/EtherscanRemoteTransactionSource.js +28 -8
  8. package/dist/helpers/EtherscanRemoteTransactionSource.js.map +1 -1
  9. package/dist/helpers/IncomingTransactionHelper.d.ts +17 -3
  10. package/dist/helpers/IncomingTransactionHelper.d.ts.map +1 -1
  11. package/dist/helpers/IncomingTransactionHelper.js +17 -14
  12. package/dist/helpers/IncomingTransactionHelper.js.map +1 -1
  13. package/dist/helpers/MultichainTrackingHelper.d.ts +72 -0
  14. package/dist/helpers/MultichainTrackingHelper.d.ts.map +1 -0
  15. package/dist/helpers/MultichainTrackingHelper.js +292 -0
  16. package/dist/helpers/MultichainTrackingHelper.js.map +1 -0
  17. package/dist/helpers/PendingTransactionTracker.d.ts +13 -7
  18. package/dist/helpers/PendingTransactionTracker.d.ts.map +1 -1
  19. package/dist/helpers/PendingTransactionTracker.js +43 -23
  20. package/dist/helpers/PendingTransactionTracker.js.map +1 -1
  21. package/dist/types.d.ts +5 -0
  22. package/dist/types.d.ts.map +1 -1
  23. package/dist/types.js.map +1 -1
  24. package/dist/utils/etherscan.d.ts +7 -0
  25. package/dist/utils/etherscan.d.ts.map +1 -1
  26. package/dist/utils/etherscan.js +17 -6
  27. package/dist/utils/etherscan.js.map +1 -1
  28. package/dist/utils/gas-fees.d.ts +4 -3
  29. package/dist/utils/gas-fees.d.ts.map +1 -1
  30. package/dist/utils/gas-fees.js +6 -2
  31. package/dist/utils/gas-fees.js.map +1 -1
  32. package/dist/utils/gas.d.ts +3 -2
  33. package/dist/utils/gas.d.ts.map +1 -1
  34. package/dist/utils/gas.js +4 -5
  35. package/dist/utils/gas.js.map +1 -1
  36. package/dist/utils/nonce.d.ts +3 -3
  37. package/dist/utils/nonce.d.ts.map +1 -1
  38. package/dist/utils/nonce.js +3 -3
  39. package/dist/utils/nonce.js.map +1 -1
  40. package/package.json +9 -8
package/CHANGELOG.md CHANGED
@@ -7,6 +7,61 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [23.0.0]
11
+
12
+ ### Added
13
+
14
+ - **BREAKING:** Constructor now expects a `getNetworkClientRegistry` callback function ([#3643](https://github.com/MetaMask/core/pull/3643))
15
+ - **BREAKING:** Messenger now requires `NetworkController:stateChange` to be an allowed event ([#3643](https://github.com/MetaMask/core/pull/3643))
16
+ - **BREAKING:** Messenger now requires `NetworkController:findNetworkClientByChainId` and `NetworkController:getNetworkClientById` actions ([#3643](https://github.com/MetaMask/core/pull/3643))
17
+ - Adds a feature flag parameter `isMultichainEnabled` passed via the constructor (and defaulted to false), which when passed a truthy value will enable the controller to submit, process, and track transactions concurrently on multiple networks. ([#3643](https://github.com/MetaMask/core/pull/3643))
18
+ - Adds `destroy()` method that stops/removes internal polling and listeners ([#3643](https://github.com/MetaMask/core/pull/3643))
19
+ - Adds `stopAllIncomingTransactionPolling()` method that stops polling Etherscan for transaction updates relevant to the currently selected network.
20
+ - When called with the `isMultichainEnabled` feature flag on, also stops polling Etherscan for transaction updates relevant to each currently polled networkClientId. ([#3643](https://github.com/MetaMask/core/pull/3643))
21
+ - Exports `PendingTransactionOptions` type ([#3643](https://github.com/MetaMask/core/pull/3643))
22
+ - Exports `TransactionControllerOptions` type ([#3643](https://github.com/MetaMask/core/pull/3643))
23
+
24
+ ### Changed
25
+
26
+ - **BREAKING:** `approveTransactionsWithSameNonce()` now requires `chainId` to be populated in for each TransactionParams that is passed ([#3643](https://github.com/MetaMask/core/pull/3643))
27
+ - `addTransaction()` now accepts optional `networkClientId` in its options param which specifies the network client that the transaction will be processed with during its lifecycle if the `isMultichainEnabled` feature flag is on ([#3643](https://github.com/MetaMask/core/pull/3643))
28
+ - when called with the `isMultichainEnabled` feature flag off, passing in a networkClientId will cause an error to be thrown.
29
+ - `estimateGas()` now accepts optional networkClientId as its last param which specifies the network client that should be used to estimate the required gas for the given transaction ([#3643](https://github.com/MetaMask/core/pull/3643))
30
+ - when called with the `isMultichainEnabled` feature flag is off, the networkClientId param is ignored and the global network client will be used instead.
31
+ - `estimateGasBuffered()` now accepts optional networkClientId as its last param which specifies the network client that should be used to estimate the required gas plus buffer for the given transaction ([#3643](https://github.com/MetaMask/core/pull/3643))
32
+ - when called with the `isMultichainEnabled` feature flag is off, the networkClientId param is ignored and the global network client will be used instead.
33
+ - `getNonceLock()` now accepts optional networkClientId as its last param which specifies which the network client's nonceTracker should be used to determine the next nonce. ([#3643](https://github.com/MetaMask/core/pull/3643))
34
+ - When called with the `isMultichainEnabled` feature flag on and with networkClientId specified, this method will also restrict acquiring the next nonce by chainId, i.e. if this method is called with two different networkClientIds on the same chainId, only the first call will return immediately with a lock from its respective nonceTracker with the second call being blocked until the first caller releases its lock
35
+ - When called with `isMultichainEnabled` feature flag off, the networkClientId param is ignored and the global network client will be used instead.
36
+ - `startIncomingTransactionPolling()` and `updateIncomingTransactions()` now enforce a 5 second delay between requests per chainId to avoid rate limiting ([#3643](https://github.com/MetaMask/core/pull/3643))
37
+ - `TransactionMeta` type now specifies an optional `networkClientId` field ([#3643](https://github.com/MetaMask/core/pull/3643))
38
+ - `startIncomingTransactionPolling()` now accepts an optional array of `networkClientIds`. ([#3643](https://github.com/MetaMask/core/pull/3643))
39
+ - When `networkClientIds` is provided and the `isMultichainEnabled` feature flag is on, the controller will start polling Etherscan for transaction updates relevant to the networkClientIds.
40
+ - When `networkClientIds` is provided and the `isMultichainEnabled` feature flag is off, nothing will happen.
41
+ - If `networkClientIds` is empty or not provided, the controller will start polling Etherscan for transaction updates relevant to the currently selected network.
42
+ - `stopIncomingTransactionPolling()` now accepts an optional array of `networkClientIds`. ([#3643](https://github.com/MetaMask/core/pull/3643))
43
+ - When `networkClientIds` is provided and the `isMultichainEnabled` feature flag is on, the controller will stop polling Ethercsan for transaction updates relevant to the networkClientIds.
44
+ - When `networkClientIds` is provided and the `isMultichainEnabled` feature flag is off, nothing will happen.
45
+ - If `networkClientIds` is empty or not provided, the controller will stop polling Etherscan for transaction updates relevant to the currently selected network.
46
+
47
+ ## [22.0.0]
48
+
49
+ ### Changed
50
+
51
+ - **BREAKING:** Add peerDependency on `@babel/runtime` ([#3897](https://github.com/MetaMask/core/pull/3897))
52
+ - Throw after publishing a canceled or sped-up transaction if already confirmed ([#3800](https://github.com/MetaMask/core/pull/3800))
53
+ - Bump `eth-method-registry` from `^3.0.0` to `^4.0.0` ([#3897](https://github.com/MetaMask/core/pull/3897))
54
+ - Bump `@metamask/controller-utils` to `^8.0.3` ([#3915](https://github.com/MetaMask/core/pull/3915))
55
+ - Bump `@metamask/gas-fee-controller` to `^13.0.1` ([#3915](https://github.com/MetaMask/core/pull/3915))
56
+
57
+ ### Removed
58
+
59
+ - **BREAKING:** Remove `cancelMultiplier` and `speedUpMultiplier` constructor options as both values are now fixed at `1.1`. ([#3909](https://github.com/MetaMask/core/pull/3909))
60
+
61
+ ### Fixed
62
+
63
+ - Remove implicit peerDependency on `babel-runtime` ([#3897](https://github.com/MetaMask/core/pull/3897))
64
+
10
65
  ## [21.2.0]
11
66
 
12
67
  ### Added
@@ -477,7 +532,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
477
532
 
478
533
  All changes listed after this point were applied to this package following the monorepo conversion.
479
534
 
480
- [Unreleased]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@21.2.0...HEAD
535
+ [Unreleased]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@23.0.0...HEAD
536
+ [23.0.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@22.0.0...@metamask/transaction-controller@23.0.0
537
+ [22.0.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@21.2.0...@metamask/transaction-controller@22.0.0
481
538
  [21.2.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@21.1.0...@metamask/transaction-controller@21.2.0
482
539
  [21.1.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@21.0.1...@metamask/transaction-controller@21.1.0
483
540
  [21.0.1]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@21.0.0...@metamask/transaction-controller@21.0.1
@@ -5,15 +5,18 @@ import type { AddApprovalRequest } from '@metamask/approval-controller';
5
5
  import type { BaseConfig, BaseState, RestrictedControllerMessenger } from '@metamask/base-controller';
6
6
  import { BaseControllerV1 } from '@metamask/base-controller';
7
7
  import type { GasFeeState } from '@metamask/gas-fee-controller';
8
- import type { BlockTracker, NetworkState, Provider } from '@metamask/network-controller';
8
+ import type { BlockTracker, NetworkClientId, NetworkController, NetworkControllerStateChangeEvent, NetworkState, Provider, NetworkControllerFindNetworkClientIdByChainIdAction, NetworkControllerGetNetworkClientByIdAction } from '@metamask/network-controller';
9
9
  import type { Hex } from '@metamask/utils';
10
10
  import { EventEmitter } from 'events';
11
11
  import type { NonceLock, Transaction as NonceTrackerTransaction } from 'nonce-tracker';
12
+ import type { IncomingTransactionOptions } from './helpers/IncomingTransactionHelper';
12
13
  import type { Events, SavedGasFees, SecurityProviderRequest, SendFlowHistoryEntry, TransactionParams, TransactionMeta, TransactionReceipt, WalletDevice, SecurityAlertResponse } from './types';
13
14
  import { TransactionType, TransactionStatus } from './types';
14
15
  export declare const HARDFORK = Hardfork.London;
15
16
  /**
16
- * @type Result
17
+ * Object with new transaction's meta and a promise resolving to the
18
+ * transaction hash if successful.
19
+ *
17
20
  * @property result - Promise resolving to a new transaction hash
18
21
  * @property transactionMeta - Meta information about this new transaction
19
22
  */
@@ -29,9 +32,8 @@ export interface FeeMarketEIP1559Values {
29
32
  maxPriorityFeePerGas: string;
30
33
  }
31
34
  /**
32
- * @type TransactionConfig
33
- *
34
35
  * Transaction controller configuration
36
+ *
35
37
  * @property provider - Provider used to create a new underlying EthQuery instance
36
38
  * @property sign - Method used to sign transactions
37
39
  */
@@ -40,9 +42,8 @@ export interface TransactionConfig extends BaseConfig {
40
42
  txHistoryLimit: number;
41
43
  }
42
44
  /**
43
- * @type MethodData
44
- *
45
45
  * Method data registry object
46
+ *
46
47
  * @property registryMethod - Registry method raw string
47
48
  * @property parsedRegistryMethod - Registry method object, containing name and method arguments
48
49
  */
@@ -51,9 +52,8 @@ export interface MethodData {
51
52
  parsedRegistryMethod: Record<string, unknown>;
52
53
  }
53
54
  /**
54
- * @type TransactionState
55
- *
56
55
  * Transaction controller state
56
+ *
57
57
  * @property transactions - A list of TransactionMeta objects
58
58
  * @property methodData - Object containing all known method data information
59
59
  */
@@ -69,11 +69,82 @@ export interface TransactionState extends BaseState {
69
69
  /**
70
70
  * Multiplier used to determine a transaction's increased gas fee during cancellation
71
71
  */
72
- export declare const CANCEL_RATE = 1.5;
72
+ export declare const CANCEL_RATE = 1.1;
73
73
  /**
74
74
  * Multiplier used to determine a transaction's increased gas fee during speed up
75
75
  */
76
76
  export declare const SPEED_UP_RATE = 1.1;
77
+ /**
78
+ * Configuration options for the PendingTransactionTracker
79
+ *
80
+ * @property isResubmitEnabled - Whether transaction publishing is automatically retried.
81
+ */
82
+ export declare type PendingTransactionOptions = {
83
+ isResubmitEnabled?: boolean;
84
+ };
85
+ /**
86
+ * TransactionController constructor options.
87
+ *
88
+ * @property blockTracker - The block tracker used to poll for new blocks data.
89
+ * @property disableHistory - Whether to disable storing history in transaction metadata.
90
+ * @property disableSendFlowHistory - Explicitly disable transaction metadata history.
91
+ * @property disableSwaps - Whether to disable additional processing on swaps transactions.
92
+ * @property isMultichainEnabled - Enable multichain support.
93
+ * @property getCurrentAccountEIP1559Compatibility - Whether or not the account supports EIP-1559.
94
+ * @property getCurrentNetworkEIP1559Compatibility - Whether or not the network supports EIP-1559.
95
+ * @property getExternalPendingTransactions - Callback to retrieve pending transactions from external sources.
96
+ * @property getGasFeeEstimates - Callback to retrieve gas fee estimates.
97
+ * @property getNetworkClientRegistry - Gets the network client registry.
98
+ * @property getNetworkState - Gets the state of the network controller.
99
+ * @property getPermittedAccounts - Get accounts that a given origin has permissions for.
100
+ * @property getSavedGasFees - Gets the saved gas fee config.
101
+ * @property getSelectedAddress - Gets the address of the currently selected account.
102
+ * @property incomingTransactions - Configuration options for incoming transaction support.
103
+ * @property messenger - The controller messenger.
104
+ * @property onNetworkStateChange - Allows subscribing to network controller state changes.
105
+ * @property pendingTransactions - Configuration options for pending transaction support.
106
+ * @property provider - The provider used to create the underlying EthQuery instance.
107
+ * @property securityProviderRequest - A function for verifying a transaction, whether it is malicious or not.
108
+ * @property hooks - The controller hooks.
109
+ * @property hooks.afterSign - Additional logic to execute after signing a transaction. Return false to not change the status to signed.
110
+ * @property hooks.beforeApproveOnInit - Additional logic to execute before starting an approval flow for a transaction during initialization. Return false to skip the transaction.
111
+ * @property hooks.beforeCheckPendingTransaction - Additional logic to execute before checking pending transactions. Return false to prevent the broadcast of the transaction.
112
+ * @property hooks.beforePublish - Additional logic to execute before publishing a transaction. Return false to prevent the broadcast of the transaction.
113
+ * @property hooks.getAdditionalSignArguments - Returns additional arguments required to sign a transaction.
114
+ * @property hooks.publish - Alternate logic to publish a transaction.
115
+ */
116
+ export declare type TransactionControllerOptions = {
117
+ blockTracker: BlockTracker;
118
+ disableHistory: boolean;
119
+ disableSendFlowHistory: boolean;
120
+ disableSwaps: boolean;
121
+ getCurrentAccountEIP1559Compatibility?: () => Promise<boolean>;
122
+ getCurrentNetworkEIP1559Compatibility: () => Promise<boolean>;
123
+ getExternalPendingTransactions?: (address: string, chainId?: string) => NonceTrackerTransaction[];
124
+ getGasFeeEstimates?: () => Promise<GasFeeState>;
125
+ getNetworkState: () => NetworkState;
126
+ getPermittedAccounts: (origin?: string) => Promise<string[]>;
127
+ getSavedGasFees?: (chainId: Hex) => SavedGasFees | undefined;
128
+ getSelectedAddress: () => string;
129
+ incomingTransactions?: IncomingTransactionOptions;
130
+ messenger: TransactionControllerMessenger;
131
+ onNetworkStateChange: (listener: (state: NetworkState) => void) => void;
132
+ pendingTransactions?: PendingTransactionOptions;
133
+ provider: Provider;
134
+ securityProviderRequest?: SecurityProviderRequest;
135
+ getNetworkClientRegistry: NetworkController['getNetworkClientRegistry'];
136
+ isMultichainEnabled: boolean;
137
+ hooks: {
138
+ afterSign?: (transactionMeta: TransactionMeta, signedTx: TypedTransaction) => boolean;
139
+ beforeApproveOnInit?: (transactionMeta: TransactionMeta) => boolean;
140
+ beforeCheckPendingTransaction?: (transactionMeta: TransactionMeta) => boolean;
141
+ beforePublish?: (transactionMeta: TransactionMeta) => boolean;
142
+ getAdditionalSignArguments?: (transactionMeta: TransactionMeta) => (TransactionMeta | undefined)[];
143
+ publish?: (transactionMeta: TransactionMeta) => Promise<{
144
+ transactionHash: string;
145
+ }>;
146
+ };
147
+ };
77
148
  /**
78
149
  * The name of the {@link TransactionController}.
79
150
  */
@@ -81,11 +152,12 @@ declare const controllerName = "TransactionController";
81
152
  /**
82
153
  * The external actions available to the {@link TransactionController}.
83
154
  */
84
- declare type AllowedActions = AddApprovalRequest;
155
+ declare type AllowedActions = AddApprovalRequest | NetworkControllerFindNetworkClientIdByChainIdAction | NetworkControllerGetNetworkClientByIdAction;
156
+ declare type AllowedEvents = NetworkControllerStateChangeEvent;
85
157
  /**
86
158
  * The messenger of the {@link TransactionController}.
87
159
  */
88
- export declare type TransactionControllerMessenger = RestrictedControllerMessenger<typeof controllerName, AllowedActions, never, AllowedActions['type'], never>;
160
+ export declare type TransactionControllerMessenger = RestrictedControllerMessenger<typeof controllerName, AllowedActions, AllowedEvents, AllowedActions['type'], AllowedEvents['type']>;
89
161
  export interface TransactionControllerEventEmitter extends EventEmitter {
90
162
  on<T extends keyof Events>(eventName: T, listener: (...args: Events[T]) => void): this;
91
163
  emit<T extends keyof Events>(eventName: T, ...args: Events[T]): boolean;
@@ -94,14 +166,13 @@ export interface TransactionControllerEventEmitter extends EventEmitter {
94
166
  * Controller responsible for submitting and managing transactions.
95
167
  */
96
168
  export declare class TransactionController extends BaseControllerV1<TransactionConfig, TransactionState> {
97
- private readonly ethQuery;
169
+ #private;
98
170
  private readonly isHistoryDisabled;
99
171
  private readonly isSwapsDisabled;
100
172
  private readonly isSendFlowHistoryDisabled;
101
173
  private readonly inProcessOfSigning;
102
174
  private readonly nonceTracker;
103
175
  private readonly registry;
104
- private readonly provider;
105
176
  private readonly mutex;
106
177
  private readonly getSavedGasFees;
107
178
  private readonly getNetworkState;
@@ -115,8 +186,6 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
115
186
  private readonly incomingTransactionHelper;
116
187
  private readonly securityProviderRequest?;
117
188
  private readonly pendingTransactionTracker;
118
- private readonly cancelMultiplier;
119
- private readonly speedUpMultiplier;
120
189
  private readonly signAbortCallbacks;
121
190
  private readonly afterSign;
122
191
  private readonly beforeApproveOnInit;
@@ -138,84 +207,11 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
138
207
  * Method used to sign transactions
139
208
  */
140
209
  sign?: (transaction: TypedTransaction, from: string, transactionMeta?: TransactionMeta) => Promise<TypedTransaction>;
210
+ constructor({ blockTracker, disableHistory, disableSendFlowHistory, disableSwaps, getCurrentAccountEIP1559Compatibility, getCurrentNetworkEIP1559Compatibility, getExternalPendingTransactions, getGasFeeEstimates, getNetworkState, getPermittedAccounts, getSavedGasFees, getSelectedAddress, incomingTransactions, messenger, onNetworkStateChange, pendingTransactions, provider, securityProviderRequest, getNetworkClientRegistry, isMultichainEnabled, hooks, }: TransactionControllerOptions, config?: Partial<TransactionConfig>, state?: Partial<TransactionState>);
141
211
  /**
142
- * Creates a TransactionController instance.
143
- *
144
- * @param options - The controller options.
145
- * @param options.blockTracker - The block tracker used to poll for new blocks data.
146
- * @param options.cancelMultiplier - Multiplier used to determine a transaction's increased gas fee during cancellation.
147
- * @param options.disableHistory - Whether to disable storing history in transaction metadata.
148
- * @param options.disableSendFlowHistory - Explicitly disable transaction metadata history.
149
- * @param options.disableSwaps - Whether to disable additional processing on swaps transactions.
150
- * @param options.getCurrentAccountEIP1559Compatibility - Whether or not the account supports EIP-1559.
151
- * @param options.getCurrentNetworkEIP1559Compatibility - Whether or not the network supports EIP-1559.
152
- * @param options.getExternalPendingTransactions - Callback to retrieve pending transactions from external sources.
153
- * @param options.getGasFeeEstimates - Callback to retrieve gas fee estimates.
154
- * @param options.getNetworkState - Gets the state of the network controller.
155
- * @param options.getPermittedAccounts - Get accounts that a given origin has permissions for.
156
- * @param options.getSavedGasFees - Gets the saved gas fee config.
157
- * @param options.getSelectedAddress - Gets the address of the currently selected account.
158
- * @param options.incomingTransactions - Configuration options for incoming transaction support.
159
- * @param options.incomingTransactions.includeTokenTransfers - Whether or not to include ERC20 token transfers.
160
- * @param options.incomingTransactions.isEnabled - Whether or not incoming transaction retrieval is enabled.
161
- * @param options.incomingTransactions.queryEntireHistory - Whether to initially query the entire transaction history or only recent blocks.
162
- * @param options.incomingTransactions.updateTransactions - Whether to update local transactions using remote transaction data.
163
- * @param options.messenger - The controller messenger.
164
- * @param options.onNetworkStateChange - Allows subscribing to network controller state changes.
165
- * @param options.pendingTransactions - Configuration options for pending transaction support.
166
- * @param options.pendingTransactions.isResubmitEnabled - Whether transaction publishing is automatically retried.
167
- * @param options.provider - The provider used to create the underlying EthQuery instance.
168
- * @param options.securityProviderRequest - A function for verifying a transaction, whether it is malicious or not.
169
- * @param options.speedUpMultiplier - Multiplier used to determine a transaction's increased gas fee during speed up.
170
- * @param options.hooks - The controller hooks.
171
- * @param options.hooks.afterSign - Additional logic to execute after signing a transaction. Return false to not change the status to signed.
172
- * @param options.hooks.beforeApproveOnInit - Additional logic to execute before starting an approval flow for a transaction during initialization. Return false to skip the transaction.
173
- * @param options.hooks.beforeCheckPendingTransaction - Additional logic to execute before checking pending transactions. Return false to prevent the broadcast of the transaction.
174
- * @param options.hooks.beforePublish - Additional logic to execute before publishing a transaction. Return false to prevent the broadcast of the transaction.
175
- * @param options.hooks.getAdditionalSignArguments - Returns additional arguments required to sign a transaction.
176
- * @param options.hooks.publish - Alternate logic to publish a transaction.
177
- * @param config - Initial options used to configure this controller.
178
- * @param state - Initial state to set on this controller.
179
- */
180
- constructor({ blockTracker, cancelMultiplier, disableHistory, disableSendFlowHistory, disableSwaps, getCurrentAccountEIP1559Compatibility, getCurrentNetworkEIP1559Compatibility, getExternalPendingTransactions, getGasFeeEstimates, getNetworkState, getPermittedAccounts, getSavedGasFees, getSelectedAddress, incomingTransactions, messenger, onNetworkStateChange, pendingTransactions, provider, securityProviderRequest, speedUpMultiplier, hooks, }: {
181
- blockTracker: BlockTracker;
182
- cancelMultiplier?: number;
183
- disableHistory: boolean;
184
- disableSendFlowHistory: boolean;
185
- disableSwaps: boolean;
186
- getCurrentAccountEIP1559Compatibility?: () => Promise<boolean>;
187
- getCurrentNetworkEIP1559Compatibility: () => Promise<boolean>;
188
- getExternalPendingTransactions?: (address: string) => NonceTrackerTransaction[];
189
- getGasFeeEstimates?: () => Promise<GasFeeState>;
190
- getNetworkState: () => NetworkState;
191
- getPermittedAccounts: (origin?: string) => Promise<string[]>;
192
- getSavedGasFees?: (chainId: Hex) => SavedGasFees | undefined;
193
- getSelectedAddress: () => string;
194
- incomingTransactions?: {
195
- includeTokenTransfers?: boolean;
196
- isEnabled?: () => boolean;
197
- queryEntireHistory?: boolean;
198
- updateTransactions?: boolean;
199
- };
200
- messenger: TransactionControllerMessenger;
201
- onNetworkStateChange: (listener: (state: NetworkState) => void) => void;
202
- pendingTransactions?: {
203
- isResubmitEnabled?: boolean;
204
- };
205
- provider: Provider;
206
- securityProviderRequest?: SecurityProviderRequest;
207
- speedUpMultiplier?: number;
208
- hooks: {
209
- afterSign?: (transactionMeta: TransactionMeta, signedTx: TypedTransaction) => boolean;
210
- beforeApproveOnInit?: (transactionMeta: TransactionMeta) => boolean;
211
- beforeCheckPendingTransaction?: (transactionMeta: TransactionMeta) => boolean;
212
- beforePublish?: (transactionMeta: TransactionMeta) => boolean;
213
- getAdditionalSignArguments?: (transactionMeta: TransactionMeta) => (TransactionMeta | undefined)[];
214
- publish?: (transactionMeta: TransactionMeta) => Promise<{
215
- transactionHash: string;
216
- }>;
217
- };
218
- }, config?: Partial<TransactionConfig>, state?: Partial<TransactionState>);
212
+ * Stops polling and removes listeners to prepare the controller for garbage collection.
213
+ */
214
+ destroy(): void;
219
215
  /**
220
216
  * Handle new method data request.
221
217
  *
@@ -241,9 +237,10 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
241
237
  * @param opts.swaps - Options for swaps transactions.
242
238
  * @param opts.swaps.hasApproveTx - Whether the transaction has an approval transaction.
243
239
  * @param opts.swaps.meta - Metadata for swap transaction.
240
+ * @param opts.networkClientId - The id of the network client for this transaction.
244
241
  * @returns Object containing a promise resolving to the transaction hash if approved.
245
242
  */
246
- addTransaction(txParams: TransactionParams, { actionId, deviceConfirmedOn, method, origin, requireApproval, securityAlertResponse, sendFlowHistory, swaps, type, }?: {
243
+ addTransaction(txParams: TransactionParams, { actionId, deviceConfirmedOn, method, origin, requireApproval, securityAlertResponse, sendFlowHistory, swaps, type, networkClientId, }?: {
247
244
  actionId?: string;
248
245
  deviceConfirmedOn?: WalletDevice;
249
246
  method?: string;
@@ -256,10 +253,12 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
256
253
  meta?: Partial<TransactionMeta>;
257
254
  };
258
255
  type?: TransactionType;
256
+ networkClientId?: NetworkClientId;
259
257
  }): Promise<Result>;
260
- startIncomingTransactionPolling(): void;
261
- stopIncomingTransactionPolling(): void;
262
- updateIncomingTransactions(): Promise<void>;
258
+ startIncomingTransactionPolling(networkClientIds?: NetworkClientId[]): void;
259
+ stopIncomingTransactionPolling(networkClientIds?: NetworkClientId[]): void;
260
+ stopAllIncomingTransactionPolling(): void;
261
+ updateIncomingTransactions(networkClientIds?: NetworkClientId[]): Promise<void>;
263
262
  /**
264
263
  * Attempts to cancel a transaction based on its ID by setting its status to "rejected"
265
264
  * and emitting a `<tx.id>:finished` hub event.
@@ -291,9 +290,10 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
291
290
  * Estimates required gas for a given transaction.
292
291
  *
293
292
  * @param transaction - The transaction to estimate gas for.
293
+ * @param networkClientId - The network client id to use for the estimate.
294
294
  * @returns The gas and gas price.
295
295
  */
296
- estimateGas(transaction: TransactionParams): Promise<{
296
+ estimateGas(transaction: TransactionParams, networkClientId?: NetworkClientId): Promise<{
297
297
  gas: string;
298
298
  simulationFails: {
299
299
  reason: any;
@@ -309,8 +309,9 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
309
309
  *
310
310
  * @param transaction - The transaction params to estimate gas for.
311
311
  * @param multiplier - The multiplier to use for the gas buffer.
312
+ * @param networkClientId - The network client id to use for the estimate.
312
313
  */
313
- estimateGasBuffered(transaction: TransactionParams, multiplier: number): Promise<{
314
+ estimateGasBuffered(transaction: TransactionParams, multiplier: number, networkClientId?: NetworkClientId): Promise<{
314
315
  gas: string;
315
316
  simulationFails: {
316
317
  reason: any;
@@ -344,8 +345,6 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
344
345
  * wiped on current network.
345
346
  */
346
347
  wipeTransactions(ignoreNetwork?: boolean, address?: string): void;
347
- startIncomingTransactionProcessing(): void;
348
- stopIncomingTransactionProcessing(): void;
349
348
  /**
350
349
  * Adds external provided transaction to state as confirmed transaction.
351
350
  *
@@ -409,14 +408,7 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
409
408
  maxFeePerGas?: string;
410
409
  maxPriorityFeePerGas?: string;
411
410
  }): TransactionMeta;
412
- /**
413
- * Gets the next nonce according to the nonce-tracker.
414
- * Ensure `releaseLock` is called once processing of the `nonce` value is complete.
415
- *
416
- * @param address - The hex string address for the transaction.
417
- * @returns object with the `nextNonce` `nonceDetails`, and the releaseLock.
418
- */
419
- getNonceLock(address: string): Promise<NonceLock>;
411
+ getNonceLock(address: string, networkClientId?: NetworkClientId): Promise<NonceLock>;
420
412
  /**
421
413
  * Updates the editable parameters of a transaction.
422
414
  *
@@ -446,7 +438,9 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
446
438
  * @param opts.hasNonce - Whether the transactions already have a nonce.
447
439
  * @returns The raw transactions.
448
440
  */
449
- approveTransactionsWithSameNonce(listOfTxParams?: TransactionParams[], { hasNonce }?: {
441
+ approveTransactionsWithSameNonce(listOfTxParams?: (TransactionParams & {
442
+ chainId: Hex;
443
+ })[], { hasNonce }?: {
450
444
  hasNonce?: boolean;
451
445
  }): Promise<string | string[]>;
452
446
  /**
@@ -496,10 +490,9 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
496
490
  abortTransactionSigning(transactionId: string): void;
497
491
  private addMetadata;
498
492
  private updateGasProperties;
499
- private getCurrentChainTransactionsByStatus;
500
493
  private onBootCleanup;
501
494
  /**
502
- * Force to submit approved transactions on current chain.
495
+ * Force submit approved transactions for all chains.
503
496
  */
504
497
  private submitApprovedTransactions;
505
498
  private processApproval;
@@ -563,6 +556,7 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
563
556
  * specified in txParams, @ethereumjs/tx is able to determine which EIP-2718
564
557
  * transaction type to use.
565
558
  *
559
+ * @param chainId - The chainId to use for the configuration.
566
560
  * @returns common configuration object
567
561
  */
568
562
  private getCommonConfiguration;
@@ -605,13 +599,19 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
605
599
  */
606
600
  private updateTransactionMetaRSV;
607
601
  private getEIP1559Compatibility;
608
- private addPendingTransactionTrackerListeners;
609
602
  private signTransaction;
610
603
  private onTransactionStatusChange;
611
- private getNonceTrackerPendingTransactions;
612
604
  private getNonceTrackerTransactions;
613
605
  private onConfirmedTransaction;
614
606
  private updatePostBalance;
607
+ private publishTransactionForRetry;
608
+ /**
609
+ * Ensures that error is a nonce issue
610
+ *
611
+ * @param error - The error to check
612
+ * @returns Whether or not the error is a nonce issue
613
+ */
614
+ private isTransactionAlreadyConfirmedError;
615
615
  }
616
616
  export {};
617
617
  //# 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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"}