@metamask/transaction-controller 54.4.0 → 55.0.1

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 (52) hide show
  1. package/CHANGELOG.md +25 -1
  2. package/dist/TransactionController.cjs +56 -17
  3. package/dist/TransactionController.cjs.map +1 -1
  4. package/dist/TransactionController.d.cts +7 -5
  5. package/dist/TransactionController.d.cts.map +1 -1
  6. package/dist/TransactionController.d.mts +7 -5
  7. package/dist/TransactionController.d.mts.map +1 -1
  8. package/dist/TransactionController.mjs +58 -19
  9. package/dist/TransactionController.mjs.map +1 -1
  10. package/dist/api/simulation-api.cjs.map +1 -1
  11. package/dist/api/simulation-api.d.cts +8 -1
  12. package/dist/api/simulation-api.d.cts.map +1 -1
  13. package/dist/api/simulation-api.d.mts +8 -1
  14. package/dist/api/simulation-api.d.mts.map +1 -1
  15. package/dist/api/simulation-api.mjs.map +1 -1
  16. package/dist/types.cjs +4 -0
  17. package/dist/types.cjs.map +1 -1
  18. package/dist/types.d.cts +4 -0
  19. package/dist/types.d.cts.map +1 -1
  20. package/dist/types.d.mts +4 -0
  21. package/dist/types.d.mts.map +1 -1
  22. package/dist/types.mjs +4 -0
  23. package/dist/types.mjs.map +1 -1
  24. package/dist/utils/batch.cjs +81 -69
  25. package/dist/utils/batch.cjs.map +1 -1
  26. package/dist/utils/batch.d.cts +1 -0
  27. package/dist/utils/batch.d.cts.map +1 -1
  28. package/dist/utils/batch.d.mts +1 -0
  29. package/dist/utils/batch.d.mts.map +1 -1
  30. package/dist/utils/batch.mjs +79 -67
  31. package/dist/utils/batch.mjs.map +1 -1
  32. package/dist/utils/eip7702.cjs +2 -1
  33. package/dist/utils/eip7702.cjs.map +1 -1
  34. package/dist/utils/eip7702.d.cts +1 -0
  35. package/dist/utils/eip7702.d.cts.map +1 -1
  36. package/dist/utils/eip7702.d.mts +1 -0
  37. package/dist/utils/eip7702.d.mts.map +1 -1
  38. package/dist/utils/eip7702.mjs +1 -0
  39. package/dist/utils/eip7702.mjs.map +1 -1
  40. package/dist/utils/gas-fees.cjs +5 -0
  41. package/dist/utils/gas-fees.cjs.map +1 -1
  42. package/dist/utils/gas-fees.mjs +5 -0
  43. package/dist/utils/gas-fees.mjs.map +1 -1
  44. package/dist/utils/simulation.cjs +55 -37
  45. package/dist/utils/simulation.cjs.map +1 -1
  46. package/dist/utils/simulation.d.cts +3 -1
  47. package/dist/utils/simulation.d.cts.map +1 -1
  48. package/dist/utils/simulation.d.mts +3 -1
  49. package/dist/utils/simulation.d.mts.map +1 -1
  50. package/dist/utils/simulation.mjs +55 -37
  51. package/dist/utils/simulation.mjs.map +1 -1
  52. package/package.json +5 -5
package/CHANGELOG.md CHANGED
@@ -7,6 +7,28 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [55.0.1]
11
+
12
+ ### Changed
13
+
14
+ - Bump `@metamask/controller-utils` to `^11.8.0` ([#5765](https://github.com/MetaMask/core/pull/5765))
15
+
16
+ ### Fixed
17
+
18
+ - Validate correct origin in EIP-7702 transaction ([#5771](https://github.com/MetaMask/core/pull/5771))
19
+ - Set `userFeeLevel` to `medium` instead of `dappSuggested` when `gasPrice` is suggested ([#5773](https://github.com/MetaMask/core/5773))
20
+
21
+ ## [55.0.0]
22
+
23
+ ### Added
24
+
25
+ - Add optional `isEIP7702GasFeeTokensEnabled` constructor callback ([#5706](https://github.com/MetaMask/core/pull/5706))
26
+ - Add `lendingDeposit` `TransactionType` ([#5747](https://github.com/MetaMask/core/pull/5747))
27
+
28
+ ### Changed
29
+
30
+ - **BREAKING:** Bump `@metamask/accounts-controller` peer dependency to `^28.0.0` ([#5763](https://github.com/MetaMask/core/pull/5763))
31
+
10
32
  ## [54.4.0]
11
33
 
12
34
  ### Changed
@@ -1549,7 +1571,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1549
1571
 
1550
1572
  All changes listed after this point were applied to this package following the monorepo conversion.
1551
1573
 
1552
- [Unreleased]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@54.4.0...HEAD
1574
+ [Unreleased]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@55.0.1...HEAD
1575
+ [55.0.1]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@55.0.0...@metamask/transaction-controller@55.0.1
1576
+ [55.0.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@54.4.0...@metamask/transaction-controller@55.0.0
1553
1577
  [54.4.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@54.3.0...@metamask/transaction-controller@54.4.0
1554
1578
  [54.3.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@54.2.0...@metamask/transaction-controller@54.3.0
1555
1579
  [54.2.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@54.1.0...@metamask/transaction-controller@54.2.0
@@ -13,7 +13,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
13
13
  var __importDefault = (this && this.__importDefault) || function (mod) {
14
14
  return (mod && mod.__esModule) ? mod : { "default": mod };
15
15
  };
16
- var _TransactionController_instances, _TransactionController_afterAdd, _TransactionController_afterSign, _TransactionController_approvingTransactionIds, _TransactionController_beforeCheckPendingTransaction, _TransactionController_beforePublish, _TransactionController_gasFeeFlows, _TransactionController_getAdditionalSignArguments, _TransactionController_getCurrentAccountEIP1559Compatibility, _TransactionController_getCurrentNetworkEIP1559Compatibility, _TransactionController_getExternalPendingTransactions, _TransactionController_getGasFeeEstimates, _TransactionController_getNetworkState, _TransactionController_getPermittedAccounts, _TransactionController_getSavedGasFees, _TransactionController_incomingTransactionHelper, _TransactionController_incomingTransactionOptions, _TransactionController_internalEvents, _TransactionController_isAutomaticGasFeeUpdateEnabled, _TransactionController_isFirstTimeInteractionEnabled, _TransactionController_isHistoryDisabled, _TransactionController_isSendFlowHistoryDisabled, _TransactionController_isSimulationEnabled, _TransactionController_isSwapsDisabled, _TransactionController_layer1GasFeeFlows, _TransactionController_methodDataHelper, _TransactionController_multichainTrackingHelper, _TransactionController_pendingTransactionOptions, _TransactionController_publicKeyEIP7702, _TransactionController_publish, _TransactionController_publishBatchHook, _TransactionController_securityProviderRequest, _TransactionController_sign, _TransactionController_signAbortCallbacks, _TransactionController_testGasFeeFlows, _TransactionController_trace, _TransactionController_transactionHistoryLimit, _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_getTransactionWithActionId, _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_updateFirstTimeInteraction, _TransactionController_updateSimulationData, _TransactionController_onGasFeePollerTransactionUpdate, _TransactionController_getSelectedAccount, _TransactionController_getInternalAccounts, _TransactionController_updateSubmitHistory, _TransactionController_updateGasEstimate, _TransactionController_registerActionHandlers, _TransactionController_deleteTransaction, _TransactionController_isRejectError, _TransactionController_rejectTransactionAndThrow, _TransactionController_failTransaction;
16
+ var _TransactionController_instances, _TransactionController_afterAdd, _TransactionController_afterSign, _TransactionController_approvingTransactionIds, _TransactionController_beforeCheckPendingTransaction, _TransactionController_beforePublish, _TransactionController_gasFeeFlows, _TransactionController_getAdditionalSignArguments, _TransactionController_getCurrentAccountEIP1559Compatibility, _TransactionController_getCurrentNetworkEIP1559Compatibility, _TransactionController_getExternalPendingTransactions, _TransactionController_getGasFeeEstimates, _TransactionController_getNetworkState, _TransactionController_getPermittedAccounts, _TransactionController_getSavedGasFees, _TransactionController_incomingTransactionHelper, _TransactionController_incomingTransactionOptions, _TransactionController_internalEvents, _TransactionController_isAutomaticGasFeeUpdateEnabled, _TransactionController_isEIP7702GasFeeTokensEnabled, _TransactionController_isFirstTimeInteractionEnabled, _TransactionController_isHistoryDisabled, _TransactionController_isSendFlowHistoryDisabled, _TransactionController_isSimulationEnabled, _TransactionController_isSwapsDisabled, _TransactionController_layer1GasFeeFlows, _TransactionController_methodDataHelper, _TransactionController_multichainTrackingHelper, _TransactionController_pendingTransactionOptions, _TransactionController_publicKeyEIP7702, _TransactionController_publish, _TransactionController_publishBatchHook, _TransactionController_securityProviderRequest, _TransactionController_sign, _TransactionController_signAbortCallbacks, _TransactionController_testGasFeeFlows, _TransactionController_trace, _TransactionController_transactionHistoryLimit, _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_getTransactionWithActionId, _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_updateFirstTimeInteraction, _TransactionController_updateSimulationData, _TransactionController_onGasFeePollerTransactionUpdate, _TransactionController_getSelectedAccount, _TransactionController_getInternalAccounts, _TransactionController_updateSubmitHistory, _TransactionController_updateGasEstimate, _TransactionController_registerActionHandlers, _TransactionController_deleteTransaction, _TransactionController_isRejectError, _TransactionController_rejectTransactionAndThrow, _TransactionController_failTransaction, _TransactionController_getSimulationData, _TransactionController_getSimulationAuthorizationList;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.TransactionController = exports.ApprovalState = exports.SPEED_UP_RATE = exports.CANCEL_RATE = void 0;
19
19
  const base_controller_1 = require("@metamask/base-controller");
@@ -48,6 +48,7 @@ const types_1 = require("./types.cjs");
48
48
  const batch_1 = require("./utils/batch.cjs");
49
49
  const eip7702_1 = require("./utils/eip7702.cjs");
50
50
  const external_transactions_1 = require("./utils/external-transactions.cjs");
51
+ const feature_flags_1 = require("./utils/feature-flags.cjs");
51
52
  const gas_1 = require("./utils/gas.cjs");
52
53
  const gas_fees_1 = require("./utils/gas-fees.cjs");
53
54
  const gas_flow_1 = require("./utils/gas-flow.cjs");
@@ -128,7 +129,7 @@ class TransactionController extends base_controller_1.BaseController {
128
129
  * @param options - The controller options.
129
130
  */
130
131
  constructor(options) {
131
- const { disableHistory, disableSendFlowHistory, disableSwaps, getCurrentAccountEIP1559Compatibility, getCurrentNetworkEIP1559Compatibility, getExternalPendingTransactions, getGasFeeEstimates, getNetworkClientRegistry, getNetworkState, getPermittedAccounts, getSavedGasFees, hooks, incomingTransactions = {}, isAutomaticGasFeeUpdateEnabled, isFirstTimeInteractionEnabled, isSimulationEnabled, messenger, pendingTransactions = {}, publicKeyEIP7702, securityProviderRequest, sign, state, testGasFeeFlows, trace, transactionHistoryLimit = 40, } = options;
132
+ const { disableHistory, disableSendFlowHistory, disableSwaps, getCurrentAccountEIP1559Compatibility, getCurrentNetworkEIP1559Compatibility, getExternalPendingTransactions, getGasFeeEstimates, getNetworkClientRegistry, getNetworkState, getPermittedAccounts, getSavedGasFees, hooks, incomingTransactions = {}, isAutomaticGasFeeUpdateEnabled, isEIP7702GasFeeTokensEnabled, isFirstTimeInteractionEnabled, isSimulationEnabled, messenger, pendingTransactions = {}, publicKeyEIP7702, securityProviderRequest, sign, state, testGasFeeFlows, trace, transactionHistoryLimit = 40, } = options;
132
133
  super({
133
134
  name: controllerName,
134
135
  metadata,
@@ -157,6 +158,7 @@ class TransactionController extends base_controller_1.BaseController {
157
158
  _TransactionController_incomingTransactionOptions.set(this, void 0);
158
159
  _TransactionController_internalEvents.set(this, new events_1.EventEmitter());
159
160
  _TransactionController_isAutomaticGasFeeUpdateEnabled.set(this, void 0);
161
+ _TransactionController_isEIP7702GasFeeTokensEnabled.set(this, void 0);
160
162
  _TransactionController_isFirstTimeInteractionEnabled.set(this, void 0);
161
163
  _TransactionController_isHistoryDisabled.set(this, void 0);
162
164
  _TransactionController_isSendFlowHistoryDisabled.set(this, void 0);
@@ -195,6 +197,7 @@ class TransactionController extends base_controller_1.BaseController {
195
197
  __classPrivateFieldSet(this, _TransactionController_getSavedGasFees, getSavedGasFees ?? ((_chainId) => undefined), "f");
196
198
  __classPrivateFieldSet(this, _TransactionController_incomingTransactionOptions, incomingTransactions, "f");
197
199
  __classPrivateFieldSet(this, _TransactionController_isAutomaticGasFeeUpdateEnabled, isAutomaticGasFeeUpdateEnabled ?? ((_txMeta) => false), "f");
200
+ __classPrivateFieldSet(this, _TransactionController_isEIP7702GasFeeTokensEnabled, isEIP7702GasFeeTokensEnabled ?? (() => Promise.resolve(false)), "f");
198
201
  __classPrivateFieldSet(this, _TransactionController_isFirstTimeInteractionEnabled, isFirstTimeInteractionEnabled ?? (() => true), "f");
199
202
  __classPrivateFieldSet(this, _TransactionController_isHistoryDisabled, disableHistory ?? false, "f");
200
203
  __classPrivateFieldSet(this, _TransactionController_isSendFlowHistoryDisabled, disableSendFlowHistory ?? false, "f");
@@ -1210,7 +1213,7 @@ class TransactionController extends base_controller_1.BaseController {
1210
1213
  }
1211
1214
  }
1212
1215
  exports.TransactionController = TransactionController;
1213
- _TransactionController_afterAdd = new WeakMap(), _TransactionController_afterSign = new WeakMap(), _TransactionController_approvingTransactionIds = new WeakMap(), _TransactionController_beforeCheckPendingTransaction = new WeakMap(), _TransactionController_beforePublish = new WeakMap(), _TransactionController_gasFeeFlows = new WeakMap(), _TransactionController_getAdditionalSignArguments = new WeakMap(), _TransactionController_getCurrentAccountEIP1559Compatibility = new WeakMap(), _TransactionController_getCurrentNetworkEIP1559Compatibility = new WeakMap(), _TransactionController_getExternalPendingTransactions = new WeakMap(), _TransactionController_getGasFeeEstimates = new WeakMap(), _TransactionController_getNetworkState = new WeakMap(), _TransactionController_getPermittedAccounts = new WeakMap(), _TransactionController_getSavedGasFees = new WeakMap(), _TransactionController_incomingTransactionHelper = new WeakMap(), _TransactionController_incomingTransactionOptions = new WeakMap(), _TransactionController_internalEvents = new WeakMap(), _TransactionController_isAutomaticGasFeeUpdateEnabled = new WeakMap(), _TransactionController_isFirstTimeInteractionEnabled = new WeakMap(), _TransactionController_isHistoryDisabled = new WeakMap(), _TransactionController_isSendFlowHistoryDisabled = new WeakMap(), _TransactionController_isSimulationEnabled = new WeakMap(), _TransactionController_isSwapsDisabled = new WeakMap(), _TransactionController_layer1GasFeeFlows = new WeakMap(), _TransactionController_methodDataHelper = new WeakMap(), _TransactionController_multichainTrackingHelper = new WeakMap(), _TransactionController_pendingTransactionOptions = new WeakMap(), _TransactionController_publicKeyEIP7702 = new WeakMap(), _TransactionController_publish = new WeakMap(), _TransactionController_publishBatchHook = new WeakMap(), _TransactionController_securityProviderRequest = new WeakMap(), _TransactionController_sign = new WeakMap(), _TransactionController_signAbortCallbacks = new WeakMap(), _TransactionController_testGasFeeFlows = new WeakMap(), _TransactionController_trace = new WeakMap(), _TransactionController_transactionHistoryLimit = new WeakMap(), _TransactionController_checkForPendingTransactionAndStartPolling = new WeakMap(), _TransactionController_instances = new WeakSet(), _TransactionController_retryTransaction = async function _TransactionController_retryTransaction({ actionId, afterSubmit, estimatedBaseFee, gasValues, label, prepareTransactionParams, rate, transactionId, transactionType, }) {
1216
+ _TransactionController_afterAdd = new WeakMap(), _TransactionController_afterSign = new WeakMap(), _TransactionController_approvingTransactionIds = new WeakMap(), _TransactionController_beforeCheckPendingTransaction = new WeakMap(), _TransactionController_beforePublish = new WeakMap(), _TransactionController_gasFeeFlows = new WeakMap(), _TransactionController_getAdditionalSignArguments = new WeakMap(), _TransactionController_getCurrentAccountEIP1559Compatibility = new WeakMap(), _TransactionController_getCurrentNetworkEIP1559Compatibility = new WeakMap(), _TransactionController_getExternalPendingTransactions = new WeakMap(), _TransactionController_getGasFeeEstimates = new WeakMap(), _TransactionController_getNetworkState = new WeakMap(), _TransactionController_getPermittedAccounts = new WeakMap(), _TransactionController_getSavedGasFees = new WeakMap(), _TransactionController_incomingTransactionHelper = new WeakMap(), _TransactionController_incomingTransactionOptions = new WeakMap(), _TransactionController_internalEvents = new WeakMap(), _TransactionController_isAutomaticGasFeeUpdateEnabled = new WeakMap(), _TransactionController_isEIP7702GasFeeTokensEnabled = new WeakMap(), _TransactionController_isFirstTimeInteractionEnabled = new WeakMap(), _TransactionController_isHistoryDisabled = new WeakMap(), _TransactionController_isSendFlowHistoryDisabled = new WeakMap(), _TransactionController_isSimulationEnabled = new WeakMap(), _TransactionController_isSwapsDisabled = new WeakMap(), _TransactionController_layer1GasFeeFlows = new WeakMap(), _TransactionController_methodDataHelper = new WeakMap(), _TransactionController_multichainTrackingHelper = new WeakMap(), _TransactionController_pendingTransactionOptions = new WeakMap(), _TransactionController_publicKeyEIP7702 = new WeakMap(), _TransactionController_publish = new WeakMap(), _TransactionController_publishBatchHook = new WeakMap(), _TransactionController_securityProviderRequest = new WeakMap(), _TransactionController_sign = new WeakMap(), _TransactionController_signAbortCallbacks = new WeakMap(), _TransactionController_testGasFeeFlows = new WeakMap(), _TransactionController_trace = new WeakMap(), _TransactionController_transactionHistoryLimit = new WeakMap(), _TransactionController_checkForPendingTransactionAndStartPolling = new WeakMap(), _TransactionController_instances = new WeakSet(), _TransactionController_retryTransaction = async function _TransactionController_retryTransaction({ actionId, afterSubmit, estimatedBaseFee, gasValues, label, prepareTransactionParams, rate, transactionId, transactionType, }) {
1214
1217
  // If transaction is found for same action id, do not create a new transaction.
1215
1218
  if (__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getTransactionWithActionId).call(this, actionId)) {
1216
1219
  return;
@@ -1995,8 +1998,7 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
1995
1998
  (0, logger_1.projectLogger)('Error fetching account address relationship, skipping first time interaction update', error);
1996
1999
  }
1997
2000
  }, _TransactionController_updateSimulationData = async function _TransactionController_updateSimulationData(transactionMeta, { blockTime, traceContext, } = {}) {
1998
- const { id: transactionId, chainId, txParams, simulationData: prevSimulationData, } = transactionMeta;
1999
- const { from, to, value, data } = txParams;
2001
+ const { id: transactionId, simulationData: prevSimulationData } = transactionMeta;
2000
2002
  let simulationData = {
2001
2003
  error: {
2002
2004
  code: types_1.SimulationErrorCode.Disabled,
@@ -2006,19 +2008,11 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
2006
2008
  };
2007
2009
  let gasFeeTokens = [];
2008
2010
  if (__classPrivateFieldGet(this, _TransactionController_isSimulationEnabled, "f").call(this)) {
2009
- const authorizationAddress = txParams?.authorizationList?.[0]?.address;
2010
- const senderCode = authorizationAddress &&
2011
- (eip7702_1.DELEGATION_PREFIX + (0, utils_1.remove0x)(authorizationAddress));
2012
- const result = await __classPrivateFieldGet(this, _TransactionController_trace, "f").call(this, { name: 'Simulate', parentContext: traceContext }, () => (0, simulation_1.getSimulationData)({
2013
- chainId,
2014
- from: from,
2015
- to: to,
2016
- value: value,
2017
- data: data,
2018
- }, {
2011
+ const result = await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getSimulationData).call(this, {
2019
2012
  blockTime,
2020
- senderCode,
2021
- }));
2013
+ traceContext,
2014
+ transactionMeta,
2015
+ });
2022
2016
  gasFeeTokens = result?.gasFeeTokens;
2023
2017
  simulationData = result?.simulationData;
2024
2018
  if (blockTime &&
@@ -2149,5 +2143,50 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
2149
2143
  __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_onTransactionStatusChange).call(this, newTransactionMeta);
2150
2144
  this.messagingSystem.publish(`${controllerName}:transactionFinished`, newTransactionMeta);
2151
2145
  __classPrivateFieldGet(this, _TransactionController_internalEvents, "f").emit(`${transactionMeta.id}:finished`, newTransactionMeta);
2146
+ }, _TransactionController_getSimulationData = async function _TransactionController_getSimulationData({ blockTime, traceContext, transactionMeta, }) {
2147
+ const { chainId, delegationAddress, txParams } = transactionMeta;
2148
+ const { authorizationList: authorizationListRequest, data, from, to, value, } = txParams;
2149
+ const authorizationAddress = authorizationListRequest?.[0]?.address;
2150
+ const senderCode = authorizationAddress &&
2151
+ (eip7702_1.DELEGATION_PREFIX + (0, utils_1.remove0x)(authorizationAddress));
2152
+ const is7702GasFeeTokensEnabled = await __classPrivateFieldGet(this, _TransactionController_isEIP7702GasFeeTokensEnabled, "f").call(this, transactionMeta);
2153
+ const use7702Fees = is7702GasFeeTokensEnabled &&
2154
+ (0, eip7702_1.doesChainSupportEIP7702)(chainId, this.messagingSystem);
2155
+ let authorizationList = authorizationListRequest?.map((authorization) => ({
2156
+ address: authorization.address,
2157
+ from: from,
2158
+ }));
2159
+ if (use7702Fees && !delegationAddress && !authorizationList) {
2160
+ authorizationList = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getSimulationAuthorizationList).call(this, {
2161
+ chainId,
2162
+ from: from,
2163
+ });
2164
+ }
2165
+ return await __classPrivateFieldGet(this, _TransactionController_trace, "f").call(this, { name: 'Simulate', parentContext: traceContext }, () => (0, simulation_1.getSimulationData)({
2166
+ authorizationList,
2167
+ chainId,
2168
+ data: data,
2169
+ from: from,
2170
+ to: to,
2171
+ value: value,
2172
+ }, {
2173
+ blockTime,
2174
+ senderCode,
2175
+ use7702Fees,
2176
+ }));
2177
+ }, _TransactionController_getSimulationAuthorizationList = function _TransactionController_getSimulationAuthorizationList({ chainId, from, }) {
2178
+ if (!__classPrivateFieldGet(this, _TransactionController_publicKeyEIP7702, "f")) {
2179
+ throw rpc_errors_1.rpcErrors.internal(eip7702_1.ERROR_MESSGE_PUBLIC_KEY);
2180
+ }
2181
+ const upgradeAddress = (0, feature_flags_1.getEIP7702UpgradeContractAddress)(chainId, this.messagingSystem, __classPrivateFieldGet(this, _TransactionController_publicKeyEIP7702, "f"));
2182
+ if (!upgradeAddress) {
2183
+ throw rpc_errors_1.rpcErrors.internal(batch_1.ERROR_MESSAGE_NO_UPGRADE_CONTRACT);
2184
+ }
2185
+ return [
2186
+ {
2187
+ address: upgradeAddress,
2188
+ from: from,
2189
+ },
2190
+ ];
2152
2191
  };
2153
2192
  //# sourceMappingURL=TransactionController.cjs.map