@metamask/transaction-controller 22.0.0 → 23.1.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 (64) hide show
  1. package/CHANGELOG.md +51 -1
  2. package/dist/TransactionController.d.ts +106 -107
  3. package/dist/TransactionController.d.ts.map +1 -1
  4. package/dist/TransactionController.js +355 -219
  5. package/dist/TransactionController.js.map +1 -1
  6. package/dist/gas-flows/DefaultGasFeeFlow.d.ts +10 -0
  7. package/dist/gas-flows/DefaultGasFeeFlow.d.ts.map +1 -0
  8. package/dist/gas-flows/DefaultGasFeeFlow.js +78 -0
  9. package/dist/gas-flows/DefaultGasFeeFlow.js.map +1 -0
  10. package/dist/gas-flows/LineaGasFeeFlow.d.ts +12 -0
  11. package/dist/gas-flows/LineaGasFeeFlow.d.ts.map +1 -0
  12. package/dist/gas-flows/LineaGasFeeFlow.js +111 -0
  13. package/dist/gas-flows/LineaGasFeeFlow.js.map +1 -0
  14. package/dist/helpers/EtherscanRemoteTransactionSource.d.ts.map +1 -1
  15. package/dist/helpers/EtherscanRemoteTransactionSource.js +37 -14
  16. package/dist/helpers/EtherscanRemoteTransactionSource.js.map +1 -1
  17. package/dist/helpers/GasFeePoller.d.ts +32 -0
  18. package/dist/helpers/GasFeePoller.d.ts.map +1 -0
  19. package/dist/helpers/GasFeePoller.js +144 -0
  20. package/dist/helpers/GasFeePoller.js.map +1 -0
  21. package/dist/helpers/IncomingTransactionHelper.d.ts +17 -3
  22. package/dist/helpers/IncomingTransactionHelper.d.ts.map +1 -1
  23. package/dist/helpers/IncomingTransactionHelper.js +17 -14
  24. package/dist/helpers/IncomingTransactionHelper.js.map +1 -1
  25. package/dist/helpers/MultichainTrackingHelper.d.ts +72 -0
  26. package/dist/helpers/MultichainTrackingHelper.d.ts.map +1 -0
  27. package/dist/helpers/MultichainTrackingHelper.js +292 -0
  28. package/dist/helpers/MultichainTrackingHelper.js.map +1 -0
  29. package/dist/helpers/PendingTransactionTracker.d.ts +7 -7
  30. package/dist/helpers/PendingTransactionTracker.d.ts.map +1 -1
  31. package/dist/helpers/PendingTransactionTracker.js +28 -28
  32. package/dist/helpers/PendingTransactionTracker.js.map +1 -1
  33. package/dist/index.d.ts +1 -0
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +3 -1
  36. package/dist/index.js.map +1 -1
  37. package/dist/types.d.ts +62 -0
  38. package/dist/types.d.ts.map +1 -1
  39. package/dist/types.js +8 -1
  40. package/dist/types.js.map +1 -1
  41. package/dist/utils/etherscan.d.ts +7 -0
  42. package/dist/utils/etherscan.d.ts.map +1 -1
  43. package/dist/utils/etherscan.js +17 -6
  44. package/dist/utils/etherscan.js.map +1 -1
  45. package/dist/utils/gas-fees.d.ts +14 -19
  46. package/dist/utils/gas-fees.d.ts.map +1 -1
  47. package/dist/utils/gas-fees.js +24 -35
  48. package/dist/utils/gas-fees.js.map +1 -1
  49. package/dist/utils/gas-flow.d.ts +32 -0
  50. package/dist/utils/gas-flow.d.ts.map +1 -0
  51. package/dist/utils/gas-flow.js +53 -0
  52. package/dist/utils/gas-flow.js.map +1 -0
  53. package/dist/utils/gas.d.ts +4 -3
  54. package/dist/utils/gas.d.ts.map +1 -1
  55. package/dist/utils/gas.js +8 -10
  56. package/dist/utils/gas.js.map +1 -1
  57. package/dist/utils/nonce.d.ts +3 -3
  58. package/dist/utils/nonce.d.ts.map +1 -1
  59. package/dist/utils/nonce.js +3 -3
  60. package/dist/utils/nonce.js.map +1 -1
  61. package/dist/utils/utils.d.ts.map +1 -1
  62. package/dist/utils/utils.js +15 -16
  63. package/dist/utils/utils.js.map +1 -1
  64. package/package.json +6 -3
package/CHANGELOG.md CHANGED
@@ -7,6 +7,54 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [23.1.0]
11
+
12
+ ### Added
13
+
14
+ - Add `gasFeeEstimatesLoaded` property to `TransactionMeta` ([#3948](https://github.com/MetaMask/core/pull/3948))
15
+ - Add `gasFeeEstimates` property to `TransactionMeta` to be automatically populated on unapproved transactions ([#3913](https://github.com/MetaMask/core/pull/3913))
16
+
17
+ ### Changed
18
+
19
+ - Use the `linea_estimateGas` RPC method to provide transaction specific gas fee estimates on Linea networks ([#3913](https://github.com/MetaMask/core/pull/3913))
20
+
21
+ ## [23.0.0]
22
+
23
+ ### Added
24
+
25
+ - **BREAKING:** Constructor now expects a `getNetworkClientRegistry` callback function ([#3643](https://github.com/MetaMask/core/pull/3643))
26
+ - **BREAKING:** Messenger now requires `NetworkController:stateChange` to be an allowed event ([#3643](https://github.com/MetaMask/core/pull/3643))
27
+ - **BREAKING:** Messenger now requires `NetworkController:findNetworkClientByChainId` and `NetworkController:getNetworkClientById` actions ([#3643](https://github.com/MetaMask/core/pull/3643))
28
+ - 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))
29
+ - Adds `destroy()` method that stops/removes internal polling and listeners ([#3643](https://github.com/MetaMask/core/pull/3643))
30
+ - Adds `stopAllIncomingTransactionPolling()` method that stops polling Etherscan for transaction updates relevant to the currently selected network.
31
+ - 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))
32
+ - Exports `PendingTransactionOptions` type ([#3643](https://github.com/MetaMask/core/pull/3643))
33
+ - Exports `TransactionControllerOptions` type ([#3643](https://github.com/MetaMask/core/pull/3643))
34
+
35
+ ### Changed
36
+
37
+ - **BREAKING:** `approveTransactionsWithSameNonce()` now requires `chainId` to be populated in for each TransactionParams that is passed ([#3643](https://github.com/MetaMask/core/pull/3643))
38
+ - `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))
39
+ - when called with the `isMultichainEnabled` feature flag off, passing in a networkClientId will cause an error to be thrown.
40
+ - `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))
41
+ - when called with the `isMultichainEnabled` feature flag is off, the networkClientId param is ignored and the global network client will be used instead.
42
+ - `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))
43
+ - when called with the `isMultichainEnabled` feature flag is off, the networkClientId param is ignored and the global network client will be used instead.
44
+ - `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))
45
+ - 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
46
+ - When called with `isMultichainEnabled` feature flag off, the networkClientId param is ignored and the global network client will be used instead.
47
+ - `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))
48
+ - `TransactionMeta` type now specifies an optional `networkClientId` field ([#3643](https://github.com/MetaMask/core/pull/3643))
49
+ - `startIncomingTransactionPolling()` now accepts an optional array of `networkClientIds`. ([#3643](https://github.com/MetaMask/core/pull/3643))
50
+ - When `networkClientIds` is provided and the `isMultichainEnabled` feature flag is on, the controller will start polling Etherscan for transaction updates relevant to the networkClientIds.
51
+ - When `networkClientIds` is provided and the `isMultichainEnabled` feature flag is off, nothing will happen.
52
+ - If `networkClientIds` is empty or not provided, the controller will start polling Etherscan for transaction updates relevant to the currently selected network.
53
+ - `stopIncomingTransactionPolling()` now accepts an optional array of `networkClientIds`. ([#3643](https://github.com/MetaMask/core/pull/3643))
54
+ - When `networkClientIds` is provided and the `isMultichainEnabled` feature flag is on, the controller will stop polling Ethercsan for transaction updates relevant to the networkClientIds.
55
+ - When `networkClientIds` is provided and the `isMultichainEnabled` feature flag is off, nothing will happen.
56
+ - If `networkClientIds` is empty or not provided, the controller will stop polling Etherscan for transaction updates relevant to the currently selected network.
57
+
10
58
  ## [22.0.0]
11
59
 
12
60
  ### Changed
@@ -495,7 +543,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
495
543
 
496
544
  All changes listed after this point were applied to this package following the monorepo conversion.
497
545
 
498
- [Unreleased]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@22.0.0...HEAD
546
+ [Unreleased]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@23.1.0...HEAD
547
+ [23.1.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@23.0.0...@metamask/transaction-controller@23.1.0
548
+ [23.0.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@22.0.0...@metamask/transaction-controller@23.0.0
499
549
  [22.0.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@21.2.0...@metamask/transaction-controller@22.0.0
500
550
  [21.2.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@21.1.0...@metamask/transaction-controller@21.2.0
501
551
  [21.1.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@21.0.1...@metamask/transaction-controller@21.1.0
@@ -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
  */
@@ -74,6 +74,77 @@ export declare const CANCEL_RATE = 1.1;
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,15 +166,15 @@ 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;
177
+ private readonly gasFeeFlows;
106
178
  private readonly getSavedGasFees;
107
179
  private readonly getNetworkState;
108
180
  private readonly getCurrentAccountEIP1559Compatibility;
@@ -136,80 +208,11 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
136
208
  * Method used to sign transactions
137
209
  */
138
210
  sign?: (transaction: TypedTransaction, from: string, transactionMeta?: TransactionMeta) => Promise<TypedTransaction>;
211
+ 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>);
139
212
  /**
140
- * Creates a TransactionController instance.
141
- *
142
- * @param options - The controller options.
143
- * @param options.blockTracker - The block tracker used to poll for new blocks data.
144
- * @param options.disableHistory - Whether to disable storing history in transaction metadata.
145
- * @param options.disableSendFlowHistory - Explicitly disable transaction metadata history.
146
- * @param options.disableSwaps - Whether to disable additional processing on swaps transactions.
147
- * @param options.getCurrentAccountEIP1559Compatibility - Whether or not the account supports EIP-1559.
148
- * @param options.getCurrentNetworkEIP1559Compatibility - Whether or not the network supports EIP-1559.
149
- * @param options.getExternalPendingTransactions - Callback to retrieve pending transactions from external sources.
150
- * @param options.getGasFeeEstimates - Callback to retrieve gas fee estimates.
151
- * @param options.getNetworkState - Gets the state of the network controller.
152
- * @param options.getPermittedAccounts - Get accounts that a given origin has permissions for.
153
- * @param options.getSavedGasFees - Gets the saved gas fee config.
154
- * @param options.getSelectedAddress - Gets the address of the currently selected account.
155
- * @param options.incomingTransactions - Configuration options for incoming transaction support.
156
- * @param options.incomingTransactions.includeTokenTransfers - Whether or not to include ERC20 token transfers.
157
- * @param options.incomingTransactions.isEnabled - Whether or not incoming transaction retrieval is enabled.
158
- * @param options.incomingTransactions.queryEntireHistory - Whether to initially query the entire transaction history or only recent blocks.
159
- * @param options.incomingTransactions.updateTransactions - Whether to update local transactions using remote transaction data.
160
- * @param options.messenger - The controller messenger.
161
- * @param options.onNetworkStateChange - Allows subscribing to network controller state changes.
162
- * @param options.pendingTransactions - Configuration options for pending transaction support.
163
- * @param options.pendingTransactions.isResubmitEnabled - Whether transaction publishing is automatically retried.
164
- * @param options.provider - The provider used to create the underlying EthQuery instance.
165
- * @param options.securityProviderRequest - A function for verifying a transaction, whether it is malicious or not.
166
- * @param options.hooks - The controller hooks.
167
- * @param options.hooks.afterSign - Additional logic to execute after signing a transaction. Return false to not change the status to signed.
168
- * @param options.hooks.beforeApproveOnInit - Additional logic to execute before starting an approval flow for a transaction during initialization. Return false to skip the transaction.
169
- * @param options.hooks.beforeCheckPendingTransaction - Additional logic to execute before checking pending transactions. Return false to prevent the broadcast of the transaction.
170
- * @param options.hooks.beforePublish - Additional logic to execute before publishing a transaction. Return false to prevent the broadcast of the transaction.
171
- * @param options.hooks.getAdditionalSignArguments - Returns additional arguments required to sign a transaction.
172
- * @param options.hooks.publish - Alternate logic to publish a transaction.
173
- * @param config - Initial options used to configure this controller.
174
- * @param state - Initial state to set on this controller.
175
- */
176
- constructor({ blockTracker, disableHistory, disableSendFlowHistory, disableSwaps, getCurrentAccountEIP1559Compatibility, getCurrentNetworkEIP1559Compatibility, getExternalPendingTransactions, getGasFeeEstimates, getNetworkState, getPermittedAccounts, getSavedGasFees, getSelectedAddress, incomingTransactions, messenger, onNetworkStateChange, pendingTransactions, provider, securityProviderRequest, hooks, }: {
177
- blockTracker: BlockTracker;
178
- disableHistory: boolean;
179
- disableSendFlowHistory: boolean;
180
- disableSwaps: boolean;
181
- getCurrentAccountEIP1559Compatibility?: () => Promise<boolean>;
182
- getCurrentNetworkEIP1559Compatibility: () => Promise<boolean>;
183
- getExternalPendingTransactions?: (address: string) => NonceTrackerTransaction[];
184
- getGasFeeEstimates?: () => Promise<GasFeeState>;
185
- getNetworkState: () => NetworkState;
186
- getPermittedAccounts: (origin?: string) => Promise<string[]>;
187
- getSavedGasFees?: (chainId: Hex) => SavedGasFees | undefined;
188
- getSelectedAddress: () => string;
189
- incomingTransactions?: {
190
- includeTokenTransfers?: boolean;
191
- isEnabled?: () => boolean;
192
- queryEntireHistory?: boolean;
193
- updateTransactions?: boolean;
194
- };
195
- messenger: TransactionControllerMessenger;
196
- onNetworkStateChange: (listener: (state: NetworkState) => void) => void;
197
- pendingTransactions?: {
198
- isResubmitEnabled?: boolean;
199
- };
200
- provider: Provider;
201
- securityProviderRequest?: SecurityProviderRequest;
202
- hooks: {
203
- afterSign?: (transactionMeta: TransactionMeta, signedTx: TypedTransaction) => boolean;
204
- beforeApproveOnInit?: (transactionMeta: TransactionMeta) => boolean;
205
- beforeCheckPendingTransaction?: (transactionMeta: TransactionMeta) => boolean;
206
- beforePublish?: (transactionMeta: TransactionMeta) => boolean;
207
- getAdditionalSignArguments?: (transactionMeta: TransactionMeta) => (TransactionMeta | undefined)[];
208
- publish?: (transactionMeta: TransactionMeta) => Promise<{
209
- transactionHash: string;
210
- }>;
211
- };
212
- }, config?: Partial<TransactionConfig>, state?: Partial<TransactionState>);
213
+ * Stops polling and removes listeners to prepare the controller for garbage collection.
214
+ */
215
+ destroy(): void;
213
216
  /**
214
217
  * Handle new method data request.
215
218
  *
@@ -235,9 +238,10 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
235
238
  * @param opts.swaps - Options for swaps transactions.
236
239
  * @param opts.swaps.hasApproveTx - Whether the transaction has an approval transaction.
237
240
  * @param opts.swaps.meta - Metadata for swap transaction.
241
+ * @param opts.networkClientId - The id of the network client for this transaction.
238
242
  * @returns Object containing a promise resolving to the transaction hash if approved.
239
243
  */
240
- addTransaction(txParams: TransactionParams, { actionId, deviceConfirmedOn, method, origin, requireApproval, securityAlertResponse, sendFlowHistory, swaps, type, }?: {
244
+ addTransaction(txParams: TransactionParams, { actionId, deviceConfirmedOn, method, origin, requireApproval, securityAlertResponse, sendFlowHistory, swaps, type, networkClientId, }?: {
241
245
  actionId?: string;
242
246
  deviceConfirmedOn?: WalletDevice;
243
247
  method?: string;
@@ -250,10 +254,12 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
250
254
  meta?: Partial<TransactionMeta>;
251
255
  };
252
256
  type?: TransactionType;
257
+ networkClientId?: NetworkClientId;
253
258
  }): Promise<Result>;
254
- startIncomingTransactionPolling(): void;
255
- stopIncomingTransactionPolling(): void;
256
- updateIncomingTransactions(): Promise<void>;
259
+ startIncomingTransactionPolling(networkClientIds?: NetworkClientId[]): void;
260
+ stopIncomingTransactionPolling(networkClientIds?: NetworkClientId[]): void;
261
+ stopAllIncomingTransactionPolling(): void;
262
+ updateIncomingTransactions(networkClientIds?: NetworkClientId[]): Promise<void>;
257
263
  /**
258
264
  * Attempts to cancel a transaction based on its ID by setting its status to "rejected"
259
265
  * and emitting a `<tx.id>:finished` hub event.
@@ -285,9 +291,10 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
285
291
  * Estimates required gas for a given transaction.
286
292
  *
287
293
  * @param transaction - The transaction to estimate gas for.
294
+ * @param networkClientId - The network client id to use for the estimate.
288
295
  * @returns The gas and gas price.
289
296
  */
290
- estimateGas(transaction: TransactionParams): Promise<{
297
+ estimateGas(transaction: TransactionParams, networkClientId?: NetworkClientId): Promise<{
291
298
  gas: string;
292
299
  simulationFails: {
293
300
  reason: any;
@@ -303,9 +310,10 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
303
310
  *
304
311
  * @param transaction - The transaction params to estimate gas for.
305
312
  * @param multiplier - The multiplier to use for the gas buffer.
313
+ * @param networkClientId - The network client id to use for the estimate.
306
314
  */
307
- estimateGasBuffered(transaction: TransactionParams, multiplier: number): Promise<{
308
- gas: string;
315
+ estimateGasBuffered(transaction: TransactionParams, multiplier: number, networkClientId?: NetworkClientId): Promise<{
316
+ gas: `0x${string}`;
309
317
  simulationFails: {
310
318
  reason: any;
311
319
  errorKey: any;
@@ -338,8 +346,6 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
338
346
  * wiped on current network.
339
347
  */
340
348
  wipeTransactions(ignoreNetwork?: boolean, address?: string): void;
341
- startIncomingTransactionProcessing(): void;
342
- stopIncomingTransactionProcessing(): void;
343
349
  /**
344
350
  * Adds external provided transaction to state as confirmed transaction.
345
351
  *
@@ -403,14 +409,7 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
403
409
  maxFeePerGas?: string;
404
410
  maxPriorityFeePerGas?: string;
405
411
  }): TransactionMeta;
406
- /**
407
- * Gets the next nonce according to the nonce-tracker.
408
- * Ensure `releaseLock` is called once processing of the `nonce` value is complete.
409
- *
410
- * @param address - The hex string address for the transaction.
411
- * @returns object with the `nextNonce` `nonceDetails`, and the releaseLock.
412
- */
413
- getNonceLock(address: string): Promise<NonceLock>;
412
+ getNonceLock(address: string, networkClientId?: NetworkClientId): Promise<NonceLock>;
414
413
  /**
415
414
  * Updates the editable parameters of a transaction.
416
415
  *
@@ -440,7 +439,9 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
440
439
  * @param opts.hasNonce - Whether the transactions already have a nonce.
441
440
  * @returns The raw transactions.
442
441
  */
443
- approveTransactionsWithSameNonce(listOfTxParams?: TransactionParams[], { hasNonce }?: {
442
+ approveTransactionsWithSameNonce(listOfTxParams?: (TransactionParams & {
443
+ chainId: Hex;
444
+ })[], { hasNonce }?: {
444
445
  hasNonce?: boolean;
445
446
  }): Promise<string | string[]>;
446
447
  /**
@@ -490,10 +491,9 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
490
491
  abortTransactionSigning(transactionId: string): void;
491
492
  private addMetadata;
492
493
  private updateGasProperties;
493
- private getCurrentChainTransactionsByStatus;
494
494
  private onBootCleanup;
495
495
  /**
496
- * Force to submit approved transactions on current chain.
496
+ * Force submit approved transactions for all chains.
497
497
  */
498
498
  private submitApprovedTransactions;
499
499
  private processApproval;
@@ -557,6 +557,7 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
557
557
  * specified in txParams, @ethereumjs/tx is able to determine which EIP-2718
558
558
  * transaction type to use.
559
559
  *
560
+ * @param chainId - The chainId to use for the configuration.
560
561
  * @returns common configuration object
561
562
  */
562
563
  private getCommonConfiguration;
@@ -599,10 +600,8 @@ export declare class TransactionController extends BaseControllerV1<TransactionC
599
600
  */
600
601
  private updateTransactionMetaRSV;
601
602
  private getEIP1559Compatibility;
602
- private addPendingTransactionTrackerListeners;
603
603
  private signTransaction;
604
604
  private onTransactionStatusChange;
605
- private getNonceTrackerPendingTransactions;
606
605
  private getNonceTrackerTransactions;
607
606
  private onConfirmedTransaction;
608
607
  private updatePostBalance;
@@ -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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"}