@metamask-previews/transaction-controller 63.1.0-preview-a0caca0c0 → 63.2.0-preview-17c76be24

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 (174) hide show
  1. package/CHANGELOG.md +6 -4
  2. package/dist/TransactionController-method-action-types.cjs +1 -1
  3. package/dist/TransactionController-method-action-types.cjs.map +1 -1
  4. package/dist/TransactionController-method-action-types.d.cts +1 -1
  5. package/dist/TransactionController-method-action-types.d.mts +1 -1
  6. package/dist/TransactionController-method-action-types.mjs +1 -1
  7. package/dist/TransactionController-method-action-types.mjs.map +1 -1
  8. package/dist/TransactionController.cjs +101 -73
  9. package/dist/TransactionController.cjs.map +1 -1
  10. package/dist/TransactionController.d.cts.map +1 -1
  11. package/dist/TransactionController.d.mts.map +1 -1
  12. package/dist/TransactionController.mjs +106 -74
  13. package/dist/TransactionController.mjs.map +1 -1
  14. package/dist/gas-flows/LineaGasFeeFlow.cjs +11 -22
  15. package/dist/gas-flows/LineaGasFeeFlow.cjs.map +1 -1
  16. package/dist/gas-flows/LineaGasFeeFlow.d.cts.map +1 -1
  17. package/dist/gas-flows/LineaGasFeeFlow.d.mts.map +1 -1
  18. package/dist/gas-flows/LineaGasFeeFlow.mjs +12 -23
  19. package/dist/gas-flows/LineaGasFeeFlow.mjs.map +1 -1
  20. package/dist/helpers/AccountsApiRemoteTransactionSource.cjs +2 -2
  21. package/dist/helpers/AccountsApiRemoteTransactionSource.cjs.map +1 -1
  22. package/dist/helpers/AccountsApiRemoteTransactionSource.d.cts.map +1 -1
  23. package/dist/helpers/AccountsApiRemoteTransactionSource.d.mts.map +1 -1
  24. package/dist/helpers/AccountsApiRemoteTransactionSource.mjs +1 -1
  25. package/dist/helpers/AccountsApiRemoteTransactionSource.mjs.map +1 -1
  26. package/dist/helpers/GasFeePoller.cjs +19 -5
  27. package/dist/helpers/GasFeePoller.cjs.map +1 -1
  28. package/dist/helpers/GasFeePoller.d.cts +6 -1
  29. package/dist/helpers/GasFeePoller.d.cts.map +1 -1
  30. package/dist/helpers/GasFeePoller.d.mts +6 -1
  31. package/dist/helpers/GasFeePoller.d.mts.map +1 -1
  32. package/dist/helpers/GasFeePoller.mjs +26 -5
  33. package/dist/helpers/GasFeePoller.mjs.map +1 -1
  34. package/dist/helpers/IncomingTransactionHelper.cjs +11 -2
  35. package/dist/helpers/IncomingTransactionHelper.cjs.map +1 -1
  36. package/dist/helpers/IncomingTransactionHelper.d.cts.map +1 -1
  37. package/dist/helpers/IncomingTransactionHelper.d.mts.map +1 -1
  38. package/dist/helpers/IncomingTransactionHelper.mjs +11 -2
  39. package/dist/helpers/IncomingTransactionHelper.mjs.map +1 -1
  40. package/dist/helpers/MethodDataHelper.cjs +6 -10
  41. package/dist/helpers/MethodDataHelper.cjs.map +1 -1
  42. package/dist/helpers/MethodDataHelper.d.cts +4 -4
  43. package/dist/helpers/MethodDataHelper.d.cts.map +1 -1
  44. package/dist/helpers/MethodDataHelper.d.mts +4 -4
  45. package/dist/helpers/MethodDataHelper.d.mts.map +1 -1
  46. package/dist/helpers/MethodDataHelper.mjs +6 -10
  47. package/dist/helpers/MethodDataHelper.mjs.map +1 -1
  48. package/dist/helpers/MultichainTrackingHelper.cjs +2 -0
  49. package/dist/helpers/MultichainTrackingHelper.cjs.map +1 -1
  50. package/dist/helpers/MultichainTrackingHelper.d.cts +2 -0
  51. package/dist/helpers/MultichainTrackingHelper.d.cts.map +1 -1
  52. package/dist/helpers/MultichainTrackingHelper.d.mts +2 -0
  53. package/dist/helpers/MultichainTrackingHelper.d.mts.map +1 -1
  54. package/dist/helpers/MultichainTrackingHelper.mjs +2 -0
  55. package/dist/helpers/MultichainTrackingHelper.mjs.map +1 -1
  56. package/dist/helpers/PendingTransactionTracker.cjs +24 -38
  57. package/dist/helpers/PendingTransactionTracker.cjs.map +1 -1
  58. package/dist/helpers/PendingTransactionTracker.d.cts +7 -3
  59. package/dist/helpers/PendingTransactionTracker.d.cts.map +1 -1
  60. package/dist/helpers/PendingTransactionTracker.d.mts +7 -3
  61. package/dist/helpers/PendingTransactionTracker.d.mts.map +1 -1
  62. package/dist/helpers/PendingTransactionTracker.mjs +24 -38
  63. package/dist/helpers/PendingTransactionTracker.mjs.map +1 -1
  64. package/dist/hooks/SequentialPublishBatchHook.cjs +6 -4
  65. package/dist/hooks/SequentialPublishBatchHook.cjs.map +1 -1
  66. package/dist/hooks/SequentialPublishBatchHook.d.cts +4 -2
  67. package/dist/hooks/SequentialPublishBatchHook.d.cts.map +1 -1
  68. package/dist/hooks/SequentialPublishBatchHook.d.mts +4 -2
  69. package/dist/hooks/SequentialPublishBatchHook.d.mts.map +1 -1
  70. package/dist/hooks/SequentialPublishBatchHook.mjs +6 -4
  71. package/dist/hooks/SequentialPublishBatchHook.mjs.map +1 -1
  72. package/dist/index.cjs +3 -1
  73. package/dist/index.cjs.map +1 -1
  74. package/dist/index.d.cts +1 -0
  75. package/dist/index.d.cts.map +1 -1
  76. package/dist/index.d.mts +1 -0
  77. package/dist/index.d.mts.map +1 -1
  78. package/dist/index.mjs +1 -0
  79. package/dist/index.mjs.map +1 -1
  80. package/dist/types.cjs.map +1 -1
  81. package/dist/types.d.cts +3 -0
  82. package/dist/types.d.cts.map +1 -1
  83. package/dist/types.d.mts +3 -0
  84. package/dist/types.d.mts.map +1 -1
  85. package/dist/types.mjs.map +1 -1
  86. package/dist/utils/balance-changes.cjs +2 -2
  87. package/dist/utils/balance-changes.cjs.map +1 -1
  88. package/dist/utils/balance-changes.d.cts +2 -4
  89. package/dist/utils/balance-changes.d.cts.map +1 -1
  90. package/dist/utils/balance-changes.d.mts +2 -4
  91. package/dist/utils/balance-changes.d.mts.map +1 -1
  92. package/dist/utils/balance-changes.mjs +2 -2
  93. package/dist/utils/balance-changes.mjs.map +1 -1
  94. package/dist/utils/balance.cjs +10 -14
  95. package/dist/utils/balance.cjs.map +1 -1
  96. package/dist/utils/balance.d.cts +5 -8
  97. package/dist/utils/balance.d.cts.map +1 -1
  98. package/dist/utils/balance.d.mts +5 -8
  99. package/dist/utils/balance.d.mts.map +1 -1
  100. package/dist/utils/balance.mjs +10 -14
  101. package/dist/utils/balance.mjs.map +1 -1
  102. package/dist/utils/batch.cjs +16 -15
  103. package/dist/utils/batch.cjs.map +1 -1
  104. package/dist/utils/batch.d.cts +5 -1
  105. package/dist/utils/batch.d.cts.map +1 -1
  106. package/dist/utils/batch.d.mts +5 -1
  107. package/dist/utils/batch.d.mts.map +1 -1
  108. package/dist/utils/batch.mjs +17 -16
  109. package/dist/utils/batch.mjs.map +1 -1
  110. package/dist/utils/eip7702.cjs +6 -13
  111. package/dist/utils/eip7702.cjs.map +1 -1
  112. package/dist/utils/eip7702.d.cts +5 -6
  113. package/dist/utils/eip7702.d.cts.map +1 -1
  114. package/dist/utils/eip7702.d.mts +5 -6
  115. package/dist/utils/eip7702.d.mts.map +1 -1
  116. package/dist/utils/eip7702.mjs +7 -14
  117. package/dist/utils/eip7702.mjs.map +1 -1
  118. package/dist/utils/gas-fee-tokens.cjs +3 -4
  119. package/dist/utils/gas-fee-tokens.cjs.map +1 -1
  120. package/dist/utils/gas-fee-tokens.d.cts +4 -6
  121. package/dist/utils/gas-fee-tokens.d.cts.map +1 -1
  122. package/dist/utils/gas-fee-tokens.d.mts +4 -6
  123. package/dist/utils/gas-fee-tokens.d.mts.map +1 -1
  124. package/dist/utils/gas-fee-tokens.mjs +3 -4
  125. package/dist/utils/gas-fee-tokens.mjs.map +1 -1
  126. package/dist/utils/gas-fees.cjs +6 -8
  127. package/dist/utils/gas-fees.cjs.map +1 -1
  128. package/dist/utils/gas-fees.d.cts +2 -0
  129. package/dist/utils/gas-fees.d.cts.map +1 -1
  130. package/dist/utils/gas-fees.d.mts +2 -0
  131. package/dist/utils/gas-fees.d.mts.map +1 -1
  132. package/dist/utils/gas-fees.mjs +7 -9
  133. package/dist/utils/gas-fees.mjs.map +1 -1
  134. package/dist/utils/gas.cjs +34 -60
  135. package/dist/utils/gas.cjs.map +1 -1
  136. package/dist/utils/gas.d.cts +11 -6
  137. package/dist/utils/gas.d.cts.map +1 -1
  138. package/dist/utils/gas.d.mts +11 -6
  139. package/dist/utils/gas.d.mts.map +1 -1
  140. package/dist/utils/gas.mjs +35 -61
  141. package/dist/utils/gas.mjs.map +1 -1
  142. package/dist/utils/layer1-gas-fee-flow.cjs +3 -7
  143. package/dist/utils/layer1-gas-fee-flow.cjs.map +1 -1
  144. package/dist/utils/layer1-gas-fee-flow.d.cts +5 -2
  145. package/dist/utils/layer1-gas-fee-flow.d.cts.map +1 -1
  146. package/dist/utils/layer1-gas-fee-flow.d.mts +5 -2
  147. package/dist/utils/layer1-gas-fee-flow.d.mts.map +1 -1
  148. package/dist/utils/layer1-gas-fee-flow.mjs +3 -7
  149. package/dist/utils/layer1-gas-fee-flow.mjs.map +1 -1
  150. package/dist/utils/swaps.cjs +7 -11
  151. package/dist/utils/swaps.cjs.map +1 -1
  152. package/dist/utils/swaps.d.cts +4 -6
  153. package/dist/utils/swaps.d.cts.map +1 -1
  154. package/dist/utils/swaps.d.mts +4 -6
  155. package/dist/utils/swaps.d.mts.map +1 -1
  156. package/dist/utils/swaps.mjs +7 -11
  157. package/dist/utils/swaps.mjs.map +1 -1
  158. package/dist/utils/transaction-type.cjs +8 -17
  159. package/dist/utils/transaction-type.cjs.map +1 -1
  160. package/dist/utils/transaction-type.d.cts +3 -9
  161. package/dist/utils/transaction-type.d.cts.map +1 -1
  162. package/dist/utils/transaction-type.d.mts +3 -9
  163. package/dist/utils/transaction-type.d.mts.map +1 -1
  164. package/dist/utils/transaction-type.mjs +8 -17
  165. package/dist/utils/transaction-type.mjs.map +1 -1
  166. package/package.json +2 -2
  167. package/dist/utils/provider.cjs +0 -74
  168. package/dist/utils/provider.cjs.map +0 -1
  169. package/dist/utils/provider.d.cts +0 -65
  170. package/dist/utils/provider.d.cts.map +0 -1
  171. package/dist/utils/provider.d.mts +0 -65
  172. package/dist/utils/provider.d.mts.map +0 -1
  173. package/dist/utils/provider.mjs +0 -67
  174. package/dist/utils/provider.mjs.map +0 -1
@@ -9,9 +9,17 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
9
9
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
10
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
11
  };
12
- var _TransactionController_instances, _TransactionController_afterAdd, _TransactionController_afterSign, _TransactionController_afterSimulate, _TransactionController_approvingTransactionIds, _TransactionController_beforeCheckPendingTransaction, _TransactionController_beforePublish, _TransactionController_beforeSign, _TransactionController_gasFeeFlows, _TransactionController_getAdditionalSignArguments, _TransactionController_getCurrentAccountEIP1559Compatibility, _TransactionController_getCurrentNetworkEIP1559Compatibility, _TransactionController_getExternalPendingTransactions, _TransactionController_getGasFeeEstimates, _TransactionController_getNetworkState, _TransactionController_getPermittedAccounts, _TransactionController_getSavedGasFees, _TransactionController_getSimulationConfig, _TransactionController_incomingTransactionHelper, _TransactionController_incomingTransactionOptions, _TransactionController_internalEvents, _TransactionController_isAutomaticGasFeeUpdateEnabled, _TransactionController_isEIP7702GasFeeTokensEnabled, _TransactionController_isFirstTimeInteractionEnabled, _TransactionController_isSimulationEnabled, _TransactionController_isSwapsDisabled, _TransactionController_isTimeoutEnabled, _TransactionController_layer1GasFeeFlows, _TransactionController_methodDataHelper, _TransactionController_multichainTrackingHelper, _TransactionController_pendingTransactionOptions, _TransactionController_publicKeyEIP7702, _TransactionController_publish, _TransactionController_publishBatchHook, _TransactionController_securityProviderRequest, _TransactionController_sign, _TransactionController_signAbortCallbacks, _TransactionController_skipSimulationTransactionIds, _TransactionController_testGasFeeFlows, _TransactionController_trace, _TransactionController_retryTransaction, _TransactionController_signExternalTransaction, _TransactionController_addMetadata, _TransactionController_updateGasProperties, _TransactionController_onBootCleanup, _TransactionController_failIncompleteTransactions, _TransactionController_processApproval, _TransactionController_approveTransaction, _TransactionController_publishTransaction, _TransactionController_rejectTransaction, _TransactionController_trimTransactionsForState, _TransactionController_isFinalState, _TransactionController_isLocalFinalState, _TransactionController_requestApproval, _TransactionController_getTransaction, _TransactionController_getTransactionOrThrow, _TransactionController_getApprovalId, _TransactionController_isTransactionCompleted, _TransactionController_onIncomingTransactions, _TransactionController_generateDappSuggestedGasFees, _TransactionController_addExternalTransaction, _TransactionController_markNonceDuplicatesDropped, _TransactionController_setTransactionStatusDropped, _TransactionController_waitForTransactionFinished, _TransactionController_updateTransactionMetaRSV, _TransactionController_getEIP1559Compatibility, _TransactionController_signTransaction, _TransactionController_onTransactionStatusChange, _TransactionController_getNonceTrackerTransactions, _TransactionController_onConfirmedTransaction, _TransactionController_updatePostBalance, _TransactionController_createNonceTracker, _TransactionController_createPendingTransactionTracker, _TransactionController_checkForPendingTransactionAndStartPolling, _TransactionController_stopAllTracking, _TransactionController_addIncomingTransactionHelperListeners, _TransactionController_removePendingTransactionTrackerListeners, _TransactionController_addPendingTransactionTrackerListeners, _TransactionController_getNonceTrackerPendingTransactions, _TransactionController_publishTransactionForRetry, _TransactionController_isTransactionAlreadyConfirmedError, _TransactionController_getGasFeeFlows, _TransactionController_getLayer1GasFeeFlows, _TransactionController_updateTransactionInternal, _TransactionController_updateSimulationData, _TransactionController_onGasFeePollerTransactionUpdate, _TransactionController_onGasFeePollerTransactionBatchUpdate, _TransactionController_updateTransactionBatch, _TransactionController_getSelectedAccount, _TransactionController_getInternalAccounts, _TransactionController_updateSubmitHistory, _TransactionController_updateGasEstimate, _TransactionController_registerActionHandlers, _TransactionController_deleteTransaction, _TransactionController_isRejectError, _TransactionController_rejectTransactionAndThrow, _TransactionController_failTransaction, _TransactionController_runAfterSimulateHook, _TransactionController_defaultPublishHook, _TransactionController_getGasFeeTokens;
12
+ var _TransactionController_instances, _TransactionController_afterAdd, _TransactionController_afterSign, _TransactionController_afterSimulate, _TransactionController_approvingTransactionIds, _TransactionController_beforeCheckPendingTransaction, _TransactionController_beforePublish, _TransactionController_beforeSign, _TransactionController_gasFeeFlows, _TransactionController_getAdditionalSignArguments, _TransactionController_getCurrentAccountEIP1559Compatibility, _TransactionController_getCurrentNetworkEIP1559Compatibility, _TransactionController_getExternalPendingTransactions, _TransactionController_getGasFeeEstimates, _TransactionController_getNetworkState, _TransactionController_getPermittedAccounts, _TransactionController_getSavedGasFees, _TransactionController_getSimulationConfig, _TransactionController_incomingTransactionHelper, _TransactionController_incomingTransactionOptions, _TransactionController_internalEvents, _TransactionController_isAutomaticGasFeeUpdateEnabled, _TransactionController_isEIP7702GasFeeTokensEnabled, _TransactionController_isFirstTimeInteractionEnabled, _TransactionController_isSimulationEnabled, _TransactionController_isSwapsDisabled, _TransactionController_isTimeoutEnabled, _TransactionController_layer1GasFeeFlows, _TransactionController_methodDataHelper, _TransactionController_multichainTrackingHelper, _TransactionController_pendingTransactionOptions, _TransactionController_publicKeyEIP7702, _TransactionController_publish, _TransactionController_publishBatchHook, _TransactionController_securityProviderRequest, _TransactionController_sign, _TransactionController_signAbortCallbacks, _TransactionController_skipSimulationTransactionIds, _TransactionController_testGasFeeFlows, _TransactionController_trace, _TransactionController_retryTransaction, _TransactionController_signExternalTransaction, _TransactionController_addMetadata, _TransactionController_updateGasProperties, _TransactionController_onBootCleanup, _TransactionController_failIncompleteTransactions, _TransactionController_processApproval, _TransactionController_approveTransaction, _TransactionController_publishTransaction, _TransactionController_rejectTransaction, _TransactionController_trimTransactionsForState, _TransactionController_isFinalState, _TransactionController_isLocalFinalState, _TransactionController_requestApproval, _TransactionController_getTransaction, _TransactionController_getTransactionOrThrow, _TransactionController_getApprovalId, _TransactionController_isTransactionCompleted, _TransactionController_getChainId, _TransactionController_getNetworkClientId, _TransactionController_getEthQuery, _TransactionController_getProvider, _TransactionController_onIncomingTransactions, _TransactionController_generateDappSuggestedGasFees, _TransactionController_addExternalTransaction, _TransactionController_markNonceDuplicatesDropped, _TransactionController_setTransactionStatusDropped, _TransactionController_waitForTransactionFinished, _TransactionController_updateTransactionMetaRSV, _TransactionController_getEIP1559Compatibility, _TransactionController_signTransaction, _TransactionController_onTransactionStatusChange, _TransactionController_getNonceTrackerTransactions, _TransactionController_onConfirmedTransaction, _TransactionController_updatePostBalance, _TransactionController_createNonceTracker, _TransactionController_createPendingTransactionTracker, _TransactionController_checkForPendingTransactionAndStartPolling, _TransactionController_stopAllTracking, _TransactionController_addIncomingTransactionHelperListeners, _TransactionController_removePendingTransactionTrackerListeners, _TransactionController_addPendingTransactionTrackerListeners, _TransactionController_getNonceTrackerPendingTransactions, _TransactionController_publishTransactionForRetry, _TransactionController_isTransactionAlreadyConfirmedError, _TransactionController_getGasFeeFlows, _TransactionController_getLayer1GasFeeFlows, _TransactionController_updateTransactionInternal, _TransactionController_updateSimulationData, _TransactionController_onGasFeePollerTransactionUpdate, _TransactionController_onGasFeePollerTransactionBatchUpdate, _TransactionController_updateTransactionBatch, _TransactionController_getSelectedAccount, _TransactionController_getInternalAccounts, _TransactionController_updateSubmitHistory, _TransactionController_updateGasEstimate, _TransactionController_registerActionHandlers, _TransactionController_deleteTransaction, _TransactionController_isRejectError, _TransactionController_rejectTransactionAndThrow, _TransactionController_failTransaction, _TransactionController_runAfterSimulateHook, _TransactionController_defaultPublishHook, _TransactionController_getGasFeeTokens;
13
+ function $importDefault(module) {
14
+ if (module?.__esModule) {
15
+ return module.default;
16
+ }
17
+ return module;
18
+ }
13
19
  import { BaseController } from "@metamask/base-controller";
14
- import { ApprovalType, ORIGIN_METAMASK, convertHexToDecimal } from "@metamask/controller-utils";
20
+ import { query, ApprovalType, ORIGIN_METAMASK, convertHexToDecimal } from "@metamask/controller-utils";
21
+ import $EthQuery from "@metamask/eth-query";
22
+ const EthQuery = $importDefault($EthQuery);
15
23
  import { NetworkClientType } from "@metamask/network-controller";
16
24
  import { NonceTracker } from "@metamask/nonce-tracker";
17
25
  import { errorCodes, rpcErrors, providerErrors, JsonRpcError } from "@metamask/rpc-errors";
@@ -51,7 +59,6 @@ import { getGasFeeFlow } from "./utils/gas-flow.mjs";
51
59
  import { getTransactionLayer1GasFee, updateTransactionLayer1GasFee } from "./utils/layer1-gas-fee-flow.mjs";
52
60
  import { getAndFormatTransactionsForNonceTracker, getNextNonce } from "./utils/nonce.mjs";
53
61
  import { prepareTransaction, serializeTransaction } from "./utils/prepare.mjs";
54
- import { getChainId, getNetworkClientId, rpcRequest } from "./utils/provider.mjs";
55
62
  import { getTransactionParamsWithIncreasedGasFee } from "./utils/retry.mjs";
56
63
  import { updatePostTransactionBalance, updateSwapsTransaction } from "./utils/swaps.mjs";
57
64
  import { determineTransactionType } from "./utils/transaction-type.mjs";
@@ -285,8 +292,10 @@ export class TransactionController extends BaseController {
285
292
  __classPrivateFieldSet(this, _TransactionController_gasFeeFlows, __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getGasFeeFlows).call(this), "f");
286
293
  __classPrivateFieldSet(this, _TransactionController_layer1GasFeeFlows, __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getLayer1GasFeeFlows).call(this), "f");
287
294
  const gasFeePoller = new GasFeePoller({
295
+ findNetworkClientIdByChainId,
288
296
  gasFeeFlows: __classPrivateFieldGet(this, _TransactionController_gasFeeFlows, "f"),
289
297
  getGasFeeControllerEstimates: __classPrivateFieldGet(this, _TransactionController_getGasFeeEstimates, "f"),
298
+ getProvider: (networkClientId) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getProvider).call(this, { networkClientId }),
290
299
  getTransactions: () => this.state.transactions,
291
300
  getTransactionBatches: () => this.state.transactionBatches,
292
301
  layer1GasFeeFlows: __classPrivateFieldGet(this, _TransactionController_layer1GasFeeFlows, "f"),
@@ -298,7 +307,7 @@ export class TransactionController extends BaseController {
298
307
  gasFeePoller.hub.on('transaction-updated', __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_onGasFeePollerTransactionUpdate).bind(this));
299
308
  gasFeePoller.hub.on('transaction-batch-updated', __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_onGasFeePollerTransactionBatchUpdate).bind(this));
300
309
  __classPrivateFieldSet(this, _TransactionController_methodDataHelper, new MethodDataHelper({
301
- messenger: this.messenger,
310
+ getProvider: (networkClientId) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getProvider).call(this, { networkClientId }),
302
311
  getState: () => this.state.methodData,
303
312
  }), "f");
304
313
  __classPrivateFieldGet(this, _TransactionController_methodDataHelper, "f").hub.on('update', ({ fourBytePrefix, methodData }) => {
@@ -360,11 +369,15 @@ export class TransactionController extends BaseController {
360
369
  return await addTransactionBatch({
361
370
  addTransaction: this.addTransaction.bind(this),
362
371
  estimateGas: this.estimateGas.bind(this),
372
+ getChainId: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getChainId).bind(this),
373
+ getEthQuery: (networkClientId) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { networkClientId }),
363
374
  getGasFeeEstimates: __classPrivateFieldGet(this, _TransactionController_getGasFeeEstimates, "f"),
364
375
  getInternalAccounts: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getInternalAccounts).bind(this),
365
376
  getSimulationConfig: __classPrivateFieldGet(this, _TransactionController_getSimulationConfig, "f").bind(this),
366
377
  getPendingTransactionTracker: (networkClientId) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_createPendingTransactionTracker).call(this, {
378
+ provider: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getProvider).call(this, { networkClientId }),
367
379
  blockTracker,
380
+ chainId: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getChainId).call(this, networkClientId),
368
381
  networkClientId,
369
382
  }),
370
383
  getTransaction: (transactionId) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getTransactionOrThrow).call(this, transactionId),
@@ -372,7 +385,7 @@ export class TransactionController extends BaseController {
372
385
  messenger: this.messenger,
373
386
  publishBatchHook: __classPrivateFieldGet(this, _TransactionController_publishBatchHook, "f"),
374
387
  publicKeyEIP7702: __classPrivateFieldGet(this, _TransactionController_publicKeyEIP7702, "f"),
375
- publishTransaction: (transactionMeta) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransaction).call(this, transactionMeta),
388
+ publishTransaction: (ethQuery, transactionMeta) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransaction).call(this, ethQuery, transactionMeta),
376
389
  request,
377
390
  signTransaction: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_signTransaction).bind(this),
378
391
  update: this.update.bind(this),
@@ -388,6 +401,7 @@ export class TransactionController extends BaseController {
388
401
  async isAtomicBatchSupported(request) {
389
402
  return isAtomicBatchSupported({
390
403
  ...request,
404
+ getEthQuery: (chainId) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { chainId }),
391
405
  messenger: this.messenger,
392
406
  publicKeyEIP7702: __classPrivateFieldGet(this, _TransactionController_publicKeyEIP7702, "f"),
393
407
  });
@@ -409,7 +423,10 @@ export class TransactionController extends BaseController {
409
423
  if (!__classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").has(networkClientId)) {
410
424
  throw new Error(`Network client not found - ${networkClientId}`);
411
425
  }
412
- const chainId = getChainId({ messenger: this.messenger, networkClientId });
426
+ const chainId = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getChainId).call(this, networkClientId);
427
+ const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, {
428
+ networkClientId,
429
+ });
413
430
  const permittedAddresses = origin === undefined
414
431
  ? undefined
415
432
  : await __classPrivateFieldGet(this, _TransactionController_getPermittedAccounts, "f")?.call(this, origin);
@@ -423,7 +440,7 @@ export class TransactionController extends BaseController {
423
440
  txParams,
424
441
  type,
425
442
  });
426
- const delegationAddressPromise = getDelegationAddress(txParams.from, this.messenger, networkClientId).catch(() => undefined);
443
+ const delegationAddressPromise = getDelegationAddress(txParams.from, ethQuery).catch(() => undefined);
427
444
  const isEIP1559Compatible = await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEIP1559Compatibility).call(this, networkClientId);
428
445
  validateTxParams(txParams, isEIP1559Compatible, chainId);
429
446
  if (!txParams.type) {
@@ -436,11 +453,7 @@ export class TransactionController extends BaseController {
436
453
  throw new JsonRpcError(ErrorCode.DuplicateBundleId, 'Batch ID already exists');
437
454
  }
438
455
  const dappSuggestedGasFees = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_generateDappSuggestedGasFees).call(this, txParams, origin);
439
- const transactionType = type ??
440
- (await determineTransactionType(txParams, {
441
- messenger: this.messenger,
442
- networkClientId,
443
- })).type;
456
+ const transactionType = type ?? (await determineTransactionType(txParams, ethQuery)).type;
444
457
  let addedTransactionMeta = {
445
458
  actionId,
446
459
  assetsFiatValues,
@@ -644,12 +657,16 @@ export class TransactionController extends BaseController {
644
657
  * @returns The gas and gas price.
645
658
  */
646
659
  async estimateGas(transaction, networkClientId, { ignoreDelegationSignatures, } = {}) {
660
+ const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, {
661
+ networkClientId,
662
+ });
647
663
  const { estimatedGas, simulationFails } = await estimateGas({
664
+ chainId: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getChainId).call(this, networkClientId),
665
+ ethQuery,
648
666
  ignoreDelegationSignatures,
649
667
  isSimulationEnabled: __classPrivateFieldGet(this, _TransactionController_isSimulationEnabled, "f").call(this),
650
668
  getSimulationConfig: __classPrivateFieldGet(this, _TransactionController_getSimulationConfig, "f"),
651
669
  messenger: this.messenger,
652
- networkClientId,
653
670
  txParams: transaction,
654
671
  });
655
672
  return { gas: estimatedGas, simulationFails };
@@ -664,15 +681,16 @@ export class TransactionController extends BaseController {
664
681
  * @returns Object containing the gas limit.
665
682
  */
666
683
  async estimateGasBatch({ chainId, from, transactions, }) {
684
+ const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, {
685
+ chainId,
686
+ });
667
687
  return estimateGasBatch({
688
+ chainId,
689
+ ethQuery,
668
690
  from,
669
691
  getSimulationConfig: __classPrivateFieldGet(this, _TransactionController_getSimulationConfig, "f"),
670
692
  isAtomicBatchSupported: this.isAtomicBatchSupported.bind(this),
671
693
  messenger: this.messenger,
672
- networkClientId: getNetworkClientId({
673
- messenger: this.messenger,
674
- chainId,
675
- }),
676
694
  transactions,
677
695
  });
678
696
  }
@@ -685,11 +703,15 @@ export class TransactionController extends BaseController {
685
703
  * @returns The buffered estimated gas and whether the estimation failed.
686
704
  */
687
705
  async estimateGasBuffered(transaction, multiplier, networkClientId) {
706
+ const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, {
707
+ networkClientId,
708
+ });
688
709
  const { blockGasLimit, estimatedGas, simulationFails } = await estimateGas({
710
+ chainId: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getChainId).call(this, networkClientId),
711
+ ethQuery,
689
712
  isSimulationEnabled: __classPrivateFieldGet(this, _TransactionController_isSimulationEnabled, "f").call(this),
690
713
  getSimulationConfig: __classPrivateFieldGet(this, _TransactionController_getSimulationConfig, "f"),
691
714
  messenger: this.messenger,
692
- networkClientId,
693
715
  txParams: transaction,
694
716
  });
695
717
  const gas = addGasBuffer(estimatedGas, blockGasLimit, multiplier);
@@ -969,11 +991,10 @@ export class TransactionController extends BaseController {
969
991
  editableParams.txParams = pickBy(editableParams.txParams);
970
992
  const updatedTransaction = merge({}, transactionMeta, editableParams);
971
993
  const { networkClientId } = transactionMeta;
994
+ const provider = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getProvider).call(this, { networkClientId });
995
+ const ethQuery = new EthQuery(provider);
972
996
  if (updateType !== false) {
973
- const { type } = await determineTransactionType(updatedTransaction.txParams, {
974
- messenger: this.messenger,
975
- networkClientId,
976
- });
997
+ const { type } = await determineTransactionType(updatedTransaction.txParams, ethQuery);
977
998
  updatedTransaction.type = type;
978
999
  }
979
1000
  if (containerTypes) {
@@ -982,6 +1003,7 @@ export class TransactionController extends BaseController {
982
1003
  await updateTransactionLayer1GasFee({
983
1004
  layer1GasFeeFlows: __classPrivateFieldGet(this, _TransactionController_layer1GasFeeFlows, "f"),
984
1005
  messenger: this.messenger,
1006
+ provider,
985
1007
  transactionMeta: updatedTransaction,
986
1008
  });
987
1009
  this.updateTransaction(updatedTransaction, `Update Editable Params for ${txId}`);
@@ -1023,10 +1045,7 @@ export class TransactionController extends BaseController {
1023
1045
  }
1024
1046
  const initialTx = listOfTxParams[0];
1025
1047
  const { chainId } = initialTx;
1026
- const networkClientId = getNetworkClientId({
1027
- messenger: this.messenger,
1028
- chainId,
1029
- });
1048
+ const networkClientId = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getNetworkClientId).call(this, { chainId });
1030
1049
  const initialTxAsEthTx = prepareTransaction(chainId, initialTx);
1031
1050
  const initialTxAsSerializedHex = serializeTransaction(initialTxAsEthTx);
1032
1051
  if (__classPrivateFieldGet(this, _TransactionController_approvingTransactionIds, "f").has(initialTxAsSerializedHex)) {
@@ -1205,7 +1224,7 @@ export class TransactionController extends BaseController {
1205
1224
  * @returns A promise that resolves to the estimated gas fee response.
1206
1225
  */
1207
1226
  async estimateGasFee({ transactionParams, chainId, networkClientId: requestNetworkClientId, }) {
1208
- const { id: networkClientId } = __classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").getNetworkClient({
1227
+ const { id: networkClientId, provider } = __classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").getNetworkClient({
1209
1228
  chainId,
1210
1229
  networkClientId: requestNetworkClientId,
1211
1230
  });
@@ -1216,10 +1235,12 @@ export class TransactionController extends BaseController {
1216
1235
  };
1217
1236
  // Guaranteed as the default gas fee flow matches all transactions.
1218
1237
  const gasFeeFlow = getGasFeeFlow(transactionMeta, __classPrivateFieldGet(this, _TransactionController_gasFeeFlows, "f"), this.messenger);
1238
+ const ethQuery = new EthQuery(provider);
1219
1239
  const gasFeeControllerData = await __classPrivateFieldGet(this, _TransactionController_getGasFeeEstimates, "f").call(this, {
1220
1240
  networkClientId,
1221
1241
  });
1222
1242
  return gasFeeFlow.getGasFees({
1243
+ ethQuery,
1223
1244
  gasFeeControllerData,
1224
1245
  messenger: this.messenger,
1225
1246
  transactionMeta,
@@ -1235,18 +1256,17 @@ export class TransactionController extends BaseController {
1235
1256
  * @returns The layer 1 gas fee.
1236
1257
  */
1237
1258
  async getLayer1GasFee({ transactionParams, chainId, networkClientId, }) {
1238
- const resolvedNetworkClientId = getNetworkClientId({
1239
- messenger: this.messenger,
1259
+ const provider = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getProvider).call(this, {
1240
1260
  chainId,
1241
1261
  networkClientId,
1242
1262
  });
1243
1263
  return await getTransactionLayer1GasFee({
1244
1264
  layer1GasFeeFlows: __classPrivateFieldGet(this, _TransactionController_layer1GasFeeFlows, "f"),
1245
1265
  messenger: this.messenger,
1266
+ provider,
1246
1267
  transactionMeta: {
1247
1268
  txParams: transactionParams,
1248
1269
  chainId,
1249
- networkClientId: resolvedNetworkClientId,
1250
1270
  },
1251
1271
  });
1252
1272
  }
@@ -1423,11 +1443,8 @@ export class TransactionController extends BaseController {
1423
1443
  */
1424
1444
  async getGasFeeTokens(request) {
1425
1445
  const { chainId, data, from, to, value } = request;
1426
- const networkClientId = getNetworkClientId({
1427
- messenger: this.messenger,
1428
- chainId,
1429
- });
1430
- const delegationAddress = await getDelegationAddress(from, this.messenger, networkClientId);
1446
+ const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { chainId });
1447
+ const delegationAddress = await getDelegationAddress(from, ethQuery);
1431
1448
  const transaction = {
1432
1449
  chainId,
1433
1450
  delegationAddress,
@@ -1475,6 +1492,8 @@ _TransactionController_afterAdd = new WeakMap(), _TransactionController_afterSig
1475
1492
  newFee,
1476
1493
  txParams: newTxParams,
1477
1494
  });
1495
+ const { networkClientId } = transactionMeta;
1496
+ const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { networkClientId });
1478
1497
  const newTransactionMeta = {
1479
1498
  ...transactionMetaWithRsv,
1480
1499
  actionId,
@@ -1487,7 +1506,7 @@ _TransactionController_afterAdd = new WeakMap(), _TransactionController_afterSig
1487
1506
  txParams: newTxParams,
1488
1507
  type: transactionType,
1489
1508
  };
1490
- const hash = await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransactionForRetry).call(this, {
1509
+ const hash = await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransactionForRetry).call(this, ethQuery, {
1491
1510
  ...newTransactionMeta,
1492
1511
  origin: label,
1493
1512
  });
@@ -1533,11 +1552,15 @@ _TransactionController_afterAdd = new WeakMap(), _TransactionController_afterSig
1533
1552
  }, _TransactionController_updateGasProperties = async function _TransactionController_updateGasProperties(transactionMeta, { traceContext } = {}) {
1534
1553
  const isEIP1559Compatible = transactionMeta.txParams.type !== TransactionEnvelopeType.legacy &&
1535
1554
  (await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEIP1559Compatibility).call(this, transactionMeta.networkClientId));
1555
+ const { networkClientId } = transactionMeta;
1556
+ const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { networkClientId });
1557
+ const provider = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getProvider).call(this, { networkClientId });
1536
1558
  await __classPrivateFieldGet(this, _TransactionController_trace, "f").call(this, { name: 'Update Gas', parentContext: traceContext }, async () => {
1537
1559
  await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_updateGasEstimate).call(this, transactionMeta);
1538
1560
  });
1539
1561
  await __classPrivateFieldGet(this, _TransactionController_trace, "f").call(this, { name: 'Update Gas Fees', parentContext: traceContext }, async () => await updateGasFees({
1540
1562
  eip1559: isEIP1559Compatible,
1563
+ ethQuery,
1541
1564
  gasFeeFlows: __classPrivateFieldGet(this, _TransactionController_gasFeeFlows, "f"),
1542
1565
  getGasFeeEstimates: __classPrivateFieldGet(this, _TransactionController_getGasFeeEstimates, "f"),
1543
1566
  getSavedGasFees: __classPrivateFieldGet(this, _TransactionController_getSavedGasFees, "f").bind(this),
@@ -1547,6 +1570,7 @@ _TransactionController_afterAdd = new WeakMap(), _TransactionController_afterSig
1547
1570
  await __classPrivateFieldGet(this, _TransactionController_trace, "f").call(this, { name: 'Update Layer 1 Gas Fees', parentContext: traceContext }, async () => await updateTransactionLayer1GasFee({
1548
1571
  layer1GasFeeFlows: __classPrivateFieldGet(this, _TransactionController_layer1GasFeeFlows, "f"),
1549
1572
  messenger: this.messenger,
1573
+ provider,
1550
1574
  transactionMeta,
1551
1575
  }));
1552
1576
  }, _TransactionController_onBootCleanup = function _TransactionController_onBootCleanup() {
@@ -1687,6 +1711,7 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
1687
1711
  __classPrivateFieldGet(this, _TransactionController_approvingTransactionIds, "f").add(transactionId);
1688
1712
  clearApprovingTransactionId = () => __classPrivateFieldGet(this, _TransactionController_approvingTransactionIds, "f").delete(transactionId);
1689
1713
  const { networkClientId } = transactionMeta;
1714
+ const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { networkClientId });
1690
1715
  const [nonce, releaseNonce] = await getNextNonce(transactionMeta, (address) => __classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").getNonceLock(address, transactionMeta.networkClientId));
1691
1716
  clearNonceLock = releaseNonce;
1692
1717
  // eslint-disable-next-line require-atomic-updates
@@ -1719,18 +1744,15 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
1719
1744
  const shouldUpdatePreTxBalance = transactionMeta.type === TransactionType.swap;
1720
1745
  if (shouldUpdatePreTxBalance) {
1721
1746
  log('Determining pre-transaction balance');
1722
- preTxBalance = (await rpcRequest({
1723
- messenger: this.messenger,
1724
- networkClientId,
1725
- method: 'eth_getBalance',
1726
- params: [transactionMeta.txParams.from, 'latest'],
1727
- }));
1747
+ preTxBalance = await query(ethQuery, 'getBalance', [
1748
+ transactionMeta.txParams.from,
1749
+ ]);
1728
1750
  }
1729
1751
  log('Publishing transaction', transactionMeta.txParams);
1730
1752
  clearNonceLock?.();
1731
1753
  clearNonceLock = undefined;
1732
1754
  let publishHook = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_defaultPublishHook).bind(this, {
1733
- networkClientId,
1755
+ ethQuery,
1734
1756
  publishHookOverride,
1735
1757
  traceContext,
1736
1758
  });
@@ -1774,18 +1796,11 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
1774
1796
  clearApprovingTransactionId?.();
1775
1797
  clearNonceLock?.();
1776
1798
  }
1777
- }, _TransactionController_publishTransaction = async function _TransactionController_publishTransaction(transactionMeta, { skipSubmitHistory } = {}) {
1799
+ }, _TransactionController_publishTransaction = async function _TransactionController_publishTransaction(ethQuery, transactionMeta, { skipSubmitHistory } = {}) {
1778
1800
  try {
1779
- const { networkClientId, rawTx } = transactionMeta;
1780
- if (!rawTx) {
1781
- throw new Error('Missing raw transaction');
1782
- }
1783
- const transactionHash = (await rpcRequest({
1784
- messenger: this.messenger,
1785
- networkClientId,
1786
- method: 'eth_sendRawTransaction',
1787
- params: [rawTx],
1788
- }));
1801
+ const transactionHash = await query(ethQuery, 'sendRawTransaction', [
1802
+ transactionMeta.rawTx,
1803
+ ]);
1789
1804
  if (skipSubmitHistory !== true) {
1790
1805
  __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_updateSubmitHistory).call(this, transactionMeta, transactionHash);
1791
1806
  }
@@ -1883,6 +1898,23 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
1883
1898
  }
1884
1899
  const isCompleted = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_isLocalFinalState).call(this, transaction.status);
1885
1900
  return { meta: transaction, isCompleted };
1901
+ }, _TransactionController_getChainId = function _TransactionController_getChainId(networkClientId) {
1902
+ return __classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").getNetworkClient({ networkClientId })
1903
+ .configuration.chainId;
1904
+ }, _TransactionController_getNetworkClientId = function _TransactionController_getNetworkClientId({ chainId, networkClientId, }) {
1905
+ if (networkClientId) {
1906
+ return networkClientId;
1907
+ }
1908
+ return __classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").getNetworkClient({
1909
+ chainId,
1910
+ }).id;
1911
+ }, _TransactionController_getEthQuery = function _TransactionController_getEthQuery({ chainId, networkClientId, }) {
1912
+ return new EthQuery(__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getProvider).call(this, { chainId, networkClientId }));
1913
+ }, _TransactionController_getProvider = function _TransactionController_getProvider({ chainId, networkClientId, }) {
1914
+ return __classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").getNetworkClient({
1915
+ chainId,
1916
+ networkClientId,
1917
+ }).provider;
1886
1918
  }, _TransactionController_onIncomingTransactions = function _TransactionController_onIncomingTransactions(transactions) {
1887
1919
  if (!transactions.length) {
1888
1920
  return;
@@ -1891,10 +1923,7 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
1891
1923
  for (const tx of transactions) {
1892
1924
  const { chainId } = tx;
1893
1925
  try {
1894
- const networkClientId = getNetworkClientId({
1895
- messenger: this.messenger,
1896
- chainId,
1897
- });
1926
+ const networkClientId = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getNetworkClientId).call(this, { chainId });
1898
1927
  finalTransactions.push({
1899
1928
  ...tx,
1900
1929
  networkClientId,
@@ -2030,9 +2059,9 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
2030
2059
  }
2031
2060
  transactionMeta = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getTransactionOrThrow).call(this, transactionId);
2032
2061
  const { networkClientId } = transactionMeta;
2062
+ const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { networkClientId });
2033
2063
  await checkGasFeeTokenBeforePublish({
2034
- messenger: this.messenger,
2035
- networkClientId,
2064
+ ethQuery,
2036
2065
  fetchGasFeeTokens: async (tx) => (await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getGasFeeTokens).call(this, tx)).gasFeeTokens,
2037
2066
  transaction: transactionMeta,
2038
2067
  updateTransaction: (txId, fn) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_updateTransactionInternal).call(this, { transactionId: txId }, fn),
@@ -2110,9 +2139,9 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
2110
2139
  if (type !== TransactionType.swap) {
2111
2140
  return;
2112
2141
  }
2142
+ const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { networkClientId });
2113
2143
  const { updatedTransactionMeta, approvalTransactionMeta } = await updatePostTransactionBalance(transactionMeta, {
2114
- messenger: this.messenger,
2115
- networkClientId,
2144
+ ethQuery,
2116
2145
  getTransaction: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getTransaction).bind(this),
2117
2146
  updateTransaction: this.updateTransaction.bind(this),
2118
2147
  });
@@ -2135,13 +2164,16 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
2135
2164
  getPendingTransactions: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getNonceTrackerPendingTransactions).bind(this, chainId),
2136
2165
  getConfirmedTransactions: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getNonceTrackerTransactions).bind(this, [TransactionStatus.confirmed], chainId),
2137
2166
  });
2138
- }, _TransactionController_createPendingTransactionTracker = function _TransactionController_createPendingTransactionTracker({ blockTracker, networkClientId, }) {
2139
- const chainId = getChainId({ messenger: this.messenger, networkClientId });
2167
+ }, _TransactionController_createPendingTransactionTracker = function _TransactionController_createPendingTransactionTracker({ provider, blockTracker, chainId, networkClientId, }) {
2168
+ const ethQuery = new EthQuery(provider);
2140
2169
  const pendingTransactionTracker = new PendingTransactionTracker({
2141
2170
  blockTracker,
2171
+ getChainId: () => chainId,
2172
+ getEthQuery: () => ethQuery,
2142
2173
  getGlobalLock: () => __classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").acquireNonceLockForChainIdKey({
2143
2174
  chainId,
2144
2175
  }),
2176
+ getNetworkClientId: () => networkClientId,
2145
2177
  getTransactions: () => this.state.transactions,
2146
2178
  hooks: {
2147
2179
  beforeCheckPendingTransaction: __classPrivateFieldGet(this, _TransactionController_beforeCheckPendingTransaction, "f").bind(this),
@@ -2149,8 +2181,7 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
2149
2181
  isResubmitEnabled: __classPrivateFieldGet(this, _TransactionController_pendingTransactionOptions, "f").isResubmitEnabled,
2150
2182
  isTimeoutEnabled: __classPrivateFieldGet(this, _TransactionController_isTimeoutEnabled, "f"),
2151
2183
  messenger: this.messenger,
2152
- networkClientId,
2153
- publishTransaction: (transactionMeta) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransaction).call(this, transactionMeta, {
2184
+ publishTransaction: (_ethQuery, transactionMeta) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransaction).call(this, _ethQuery, transactionMeta, {
2154
2185
  skipSubmitHistory: true,
2155
2186
  }),
2156
2187
  });
@@ -2178,9 +2209,9 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
2178
2209
  ], address, chainId);
2179
2210
  const externalPendingTransactions = __classPrivateFieldGet(this, _TransactionController_getExternalPendingTransactions, "f").call(this, address, chainId);
2180
2211
  return [...standardPendingTransactions, ...externalPendingTransactions];
2181
- }, _TransactionController_publishTransactionForRetry = async function _TransactionController_publishTransactionForRetry(transactionMeta) {
2212
+ }, _TransactionController_publishTransactionForRetry = async function _TransactionController_publishTransactionForRetry(ethQuery, transactionMeta) {
2182
2213
  try {
2183
- return await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransaction).call(this, transactionMeta);
2214
+ return await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransaction).call(this, ethQuery, transactionMeta);
2184
2215
  }
2185
2216
  catch (error) {
2186
2217
  if (__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_isTransactionAlreadyConfirmedError).call(this, error)) {
@@ -2248,8 +2279,7 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
2248
2279
  const balanceChangesResult = await __classPrivateFieldGet(this, _TransactionController_trace, "f").call(this, { name: 'Simulate', parentContext: traceContext }, () => getBalanceChanges({
2249
2280
  blockTime,
2250
2281
  chainId,
2251
- messenger: this.messenger,
2252
- networkClientId,
2282
+ ethQuery: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { networkClientId }),
2253
2283
  getSimulationConfig: (url, opts) => {
2254
2284
  return __classPrivateFieldGet(this, _TransactionController_getSimulationConfig, "f").call(this, url, {
2255
2285
  txMeta: transactionMeta,
@@ -2350,10 +2380,13 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
2350
2380
  submitHistory.unshift(submitHistoryEntry);
2351
2381
  });
2352
2382
  }, _TransactionController_updateGasEstimate = async function _TransactionController_updateGasEstimate(transactionMeta) {
2353
- const { networkClientId } = transactionMeta;
2383
+ const { chainId, networkClientId } = transactionMeta;
2354
2384
  const isCustomNetwork = __classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").getNetworkClient({ networkClientId })
2355
2385
  .configuration.type === NetworkClientType.Custom;
2386
+ const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { networkClientId });
2356
2387
  await updateGas({
2388
+ chainId,
2389
+ ethQuery,
2357
2390
  isCustomNetwork,
2358
2391
  isSimulationEnabled: __classPrivateFieldGet(this, _TransactionController_isSimulationEnabled, "f").call(this),
2359
2392
  getSimulationConfig: __classPrivateFieldGet(this, _TransactionController_getSimulationConfig, "f"),
@@ -2432,15 +2465,14 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
2432
2465
  updateTransaction(txMeta);
2433
2466
  });
2434
2467
  log('Updated transaction with afterSimulate data', updatedTransactionMeta);
2435
- }, _TransactionController_defaultPublishHook = async function _TransactionController_defaultPublishHook({ networkClientId, publishHookOverride, traceContext, }, transactionMeta, signedTx) {
2468
+ }, _TransactionController_defaultPublishHook = async function _TransactionController_defaultPublishHook({ ethQuery, publishHookOverride, traceContext, }, transactionMeta, signedTx) {
2436
2469
  let transactionHash;
2437
2470
  await __classPrivateFieldGet(this, _TransactionController_trace, "f").call(this, { name: 'Publish', parentContext: traceContext }, async () => {
2438
2471
  const publishHook = publishHookOverride ?? __classPrivateFieldGet(this, _TransactionController_publish, "f");
2439
2472
  ({ transactionHash } = await publishHook(transactionMeta, signedTx));
2440
2473
  // eslint-disable-next-line require-atomic-updates
2441
- transactionHash ?? (transactionHash = await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransaction).call(this, {
2474
+ transactionHash ?? (transactionHash = await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransaction).call(this, ethQuery, {
2442
2475
  ...transactionMeta,
2443
- networkClientId,
2444
2476
  rawTx: signedTx,
2445
2477
  }));
2446
2478
  });