@metamask-previews/transaction-controller 51.0.0-preview-a47985c → 51.0.0-preview-3e231aec

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 (50) hide show
  1. package/CHANGELOG.md +0 -7
  2. package/dist/TransactionController.cjs +29 -8
  3. package/dist/TransactionController.cjs.map +1 -1
  4. package/dist/TransactionController.d.cts +3 -3
  5. package/dist/TransactionController.d.cts.map +1 -1
  6. package/dist/TransactionController.d.mts +3 -3
  7. package/dist/TransactionController.d.mts.map +1 -1
  8. package/dist/TransactionController.mjs +29 -8
  9. package/dist/TransactionController.mjs.map +1 -1
  10. package/dist/helpers/AccountsApiRemoteTransactionSource.cjs +8 -3
  11. package/dist/helpers/AccountsApiRemoteTransactionSource.cjs.map +1 -1
  12. package/dist/helpers/AccountsApiRemoteTransactionSource.d.cts.map +1 -1
  13. package/dist/helpers/AccountsApiRemoteTransactionSource.d.mts.map +1 -1
  14. package/dist/helpers/AccountsApiRemoteTransactionSource.mjs +8 -3
  15. package/dist/helpers/AccountsApiRemoteTransactionSource.mjs.map +1 -1
  16. package/dist/helpers/IncomingTransactionHelper.cjs +12 -4
  17. package/dist/helpers/IncomingTransactionHelper.cjs.map +1 -1
  18. package/dist/helpers/IncomingTransactionHelper.d.cts +3 -1
  19. package/dist/helpers/IncomingTransactionHelper.d.cts.map +1 -1
  20. package/dist/helpers/IncomingTransactionHelper.d.mts +3 -1
  21. package/dist/helpers/IncomingTransactionHelper.d.mts.map +1 -1
  22. package/dist/helpers/IncomingTransactionHelper.mjs +12 -4
  23. package/dist/helpers/IncomingTransactionHelper.mjs.map +1 -1
  24. package/dist/types.cjs.map +1 -1
  25. package/dist/types.d.cts +4 -0
  26. package/dist/types.d.cts.map +1 -1
  27. package/dist/types.d.mts +4 -0
  28. package/dist/types.d.mts.map +1 -1
  29. package/dist/types.mjs.map +1 -1
  30. package/dist/utils/feature-flags.cjs +2 -2
  31. package/dist/utils/feature-flags.cjs.map +1 -1
  32. package/dist/utils/feature-flags.d.cts +2 -2
  33. package/dist/utils/feature-flags.d.mts +2 -2
  34. package/dist/utils/feature-flags.mjs +2 -2
  35. package/dist/utils/feature-flags.mjs.map +1 -1
  36. package/dist/utils/gas.cjs +108 -8
  37. package/dist/utils/gas.cjs.map +1 -1
  38. package/dist/utils/gas.d.cts +16 -5
  39. package/dist/utils/gas.d.cts.map +1 -1
  40. package/dist/utils/gas.d.mts +16 -5
  41. package/dist/utils/gas.d.mts.map +1 -1
  42. package/dist/utils/gas.mjs +108 -8
  43. package/dist/utils/gas.mjs.map +1 -1
  44. package/dist/utils/simulation-api.cjs.map +1 -1
  45. package/dist/utils/simulation-api.d.cts +9 -5
  46. package/dist/utils/simulation-api.d.cts.map +1 -1
  47. package/dist/utils/simulation-api.d.mts +9 -5
  48. package/dist/utils/simulation-api.d.mts.map +1 -1
  49. package/dist/utils/simulation-api.mjs.map +1 -1
  50. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -7,13 +7,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
- ### Changed
11
-
12
- - **BREAKING:** Remove `chainIds` argument from incoming transaction methods ([#5436](https://github.com/MetaMask/core/pull/5436))
13
- - `startIncomingTransactionPolling`
14
- - `stopIncomingTransactionPolling`
15
- - `updateIncomingTransactions`
16
-
17
10
  ## [51.0.0]
18
11
 
19
12
  ### Changed
@@ -13,7 +13,7 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || 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_internalEvents, _TransactionController_methodDataHelper, _TransactionController_incomingTransactionHelper, _TransactionController_incomingTransactionOptions, _TransactionController_pendingTransactionOptions, _TransactionController_publicKeyEIP7702, _TransactionController_trace, _TransactionController_transactionHistoryLimit, _TransactionController_isFirstTimeInteractionEnabled, _TransactionController_isSimulationEnabled, _TransactionController_testGasFeeFlows, _TransactionController_multichainTrackingHelper, _TransactionController_retryTransaction, _TransactionController_rejectTransaction, _TransactionController_getChainId, _TransactionController_getNetworkClientId, _TransactionController_getEthQuery, _TransactionController_getProvider, _TransactionController_createNonceTracker, _TransactionController_createPendingTransactionTracker, _TransactionController_checkForPendingTransactionAndStartPolling, _TransactionController_stopAllTracking, _TransactionController_addIncomingTransactionHelperListeners, _TransactionController_removePendingTransactionTrackerListeners, _TransactionController_addPendingTransactionTrackerListeners, _TransactionController_getNonceTrackerPendingTransactions, _TransactionController_getGasFeeFlows, _TransactionController_getLayer1GasFeeFlows, _TransactionController_updateTransactionInternal, _TransactionController_updateFirstTimeInteraction, _TransactionController_updateSimulationData, _TransactionController_onGasFeePollerTransactionUpdate, _TransactionController_getSelectedAccount, _TransactionController_getInternalAccounts, _TransactionController_updateSubmitHistory, _TransactionController_updateGasEstimate, _TransactionController_deleteTransaction, _TransactionController_isRejectError, _TransactionController_rejectTransactionAndThrow;
16
+ var _TransactionController_instances, _TransactionController_internalEvents, _TransactionController_methodDataHelper, _TransactionController_incomingTransactionChainIds, _TransactionController_incomingTransactionHelper, _TransactionController_incomingTransactionOptions, _TransactionController_pendingTransactionOptions, _TransactionController_publicKeyEIP7702, _TransactionController_trace, _TransactionController_transactionHistoryLimit, _TransactionController_isFirstTimeInteractionEnabled, _TransactionController_isSimulationEnabled, _TransactionController_testGasFeeFlows, _TransactionController_multichainTrackingHelper, _TransactionController_retryTransaction, _TransactionController_rejectTransaction, _TransactionController_getChainId, _TransactionController_getNetworkClientId, _TransactionController_getEthQuery, _TransactionController_getProvider, _TransactionController_createNonceTracker, _TransactionController_createPendingTransactionTracker, _TransactionController_checkForPendingTransactionAndStartPolling, _TransactionController_stopAllTracking, _TransactionController_addIncomingTransactionHelperListeners, _TransactionController_removePendingTransactionTrackerListeners, _TransactionController_addPendingTransactionTrackerListeners, _TransactionController_getNonceTrackerPendingTransactions, _TransactionController_getGasFeeFlows, _TransactionController_getLayer1GasFeeFlows, _TransactionController_updateTransactionInternal, _TransactionController_updateFirstTimeInteraction, _TransactionController_updateSimulationData, _TransactionController_onGasFeePollerTransactionUpdate, _TransactionController_getSelectedAccount, _TransactionController_getInternalAccounts, _TransactionController_updateSubmitHistory, _TransactionController_updateGasEstimate, _TransactionController_deleteTransaction, _TransactionController_isRejectError, _TransactionController_rejectTransactionAndThrow;
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");
@@ -171,6 +171,7 @@ class TransactionController extends base_controller_1.BaseController {
171
171
  this.approvingTransactionIds = new Set();
172
172
  _TransactionController_methodDataHelper.set(this, void 0);
173
173
  this.mutex = new async_mutex_1.Mutex();
174
+ _TransactionController_incomingTransactionChainIds.set(this, new Set());
174
175
  _TransactionController_incomingTransactionHelper.set(this, void 0);
175
176
  _TransactionController_incomingTransactionOptions.set(this, void 0);
176
177
  _TransactionController_pendingTransactionOptions.set(this, void 0);
@@ -267,6 +268,7 @@ class TransactionController extends base_controller_1.BaseController {
267
268
  };
268
269
  __classPrivateFieldSet(this, _TransactionController_incomingTransactionHelper, new IncomingTransactionHelper_1.IncomingTransactionHelper({
269
270
  getCache: () => this.state.lastFetchedBlockNumbers,
271
+ getChainIds: () => [...__classPrivateFieldGet(this, _TransactionController_incomingTransactionChainIds, "f")],
270
272
  getCurrentAccount: () => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getSelectedAccount).call(this),
271
273
  getLocalTransactions: () => this.state.transactions,
272
274
  includeTokenTransfers: __classPrivateFieldGet(this, _TransactionController_incomingTransactionOptions, "f").includeTokenTransfers,
@@ -476,13 +478,21 @@ class TransactionController extends base_controller_1.BaseController {
476
478
  transactionMeta: addedTransactionMeta,
477
479
  };
478
480
  }
479
- startIncomingTransactionPolling() {
481
+ startIncomingTransactionPolling(chainIds) {
482
+ chainIds.forEach((chainId) => __classPrivateFieldGet(this, _TransactionController_incomingTransactionChainIds, "f").add(chainId));
480
483
  __classPrivateFieldGet(this, _TransactionController_incomingTransactionHelper, "f").start();
481
484
  }
482
- stopIncomingTransactionPolling() {
483
- __classPrivateFieldGet(this, _TransactionController_incomingTransactionHelper, "f").stop();
485
+ stopIncomingTransactionPolling(chainIds) {
486
+ chainIds?.forEach((chainId) => __classPrivateFieldGet(this, _TransactionController_incomingTransactionChainIds, "f").delete(chainId));
487
+ if (!chainIds) {
488
+ __classPrivateFieldGet(this, _TransactionController_incomingTransactionChainIds, "f").clear();
489
+ }
490
+ if (__classPrivateFieldGet(this, _TransactionController_incomingTransactionChainIds, "f").size === 0) {
491
+ __classPrivateFieldGet(this, _TransactionController_incomingTransactionHelper, "f").stop();
492
+ }
484
493
  }
485
- async updateIncomingTransactions() {
494
+ async updateIncomingTransactions(chainIds) {
495
+ chainIds.forEach((chainId) => __classPrivateFieldGet(this, _TransactionController_incomingTransactionChainIds, "f").add(chainId));
486
496
  await __classPrivateFieldGet(this, _TransactionController_incomingTransactionHelper, "f").update();
487
497
  }
488
498
  /**
@@ -549,7 +559,12 @@ class TransactionController extends base_controller_1.BaseController {
549
559
  const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, {
550
560
  networkClientId,
551
561
  });
552
- const { estimatedGas, simulationFails } = await (0, gas_1.estimateGas)(transaction, ethQuery);
562
+ const { estimatedGas, simulationFails } = await (0, gas_1.estimateGas)({
563
+ chainId: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getChainId).call(this, networkClientId),
564
+ ethQuery,
565
+ isSimulationEnabled: __classPrivateFieldGet(this, _TransactionController_isSimulationEnabled, "f").call(this),
566
+ txParams: transaction,
567
+ });
553
568
  return { gas: estimatedGas, simulationFails };
554
569
  }
555
570
  /**
@@ -564,7 +579,12 @@ class TransactionController extends base_controller_1.BaseController {
564
579
  const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, {
565
580
  networkClientId,
566
581
  });
567
- const { blockGasLimit, estimatedGas, simulationFails } = await (0, gas_1.estimateGas)(transaction, ethQuery);
582
+ const { blockGasLimit, estimatedGas, simulationFails } = await (0, gas_1.estimateGas)({
583
+ chainId: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getChainId).call(this, networkClientId),
584
+ ethQuery,
585
+ isSimulationEnabled: __classPrivateFieldGet(this, _TransactionController_isSimulationEnabled, "f").call(this),
586
+ txParams: transaction,
587
+ });
568
588
  const gas = (0, gas_1.addGasBuffer)(estimatedGas, blockGasLimit, multiplier);
569
589
  return {
570
590
  gas,
@@ -1759,7 +1779,7 @@ class TransactionController extends base_controller_1.BaseController {
1759
1779
  }
1760
1780
  }
1761
1781
  exports.TransactionController = TransactionController;
1762
- _TransactionController_internalEvents = new WeakMap(), _TransactionController_methodDataHelper = new WeakMap(), _TransactionController_incomingTransactionHelper = new WeakMap(), _TransactionController_incomingTransactionOptions = new WeakMap(), _TransactionController_pendingTransactionOptions = new WeakMap(), _TransactionController_publicKeyEIP7702 = new WeakMap(), _TransactionController_trace = new WeakMap(), _TransactionController_transactionHistoryLimit = new WeakMap(), _TransactionController_isFirstTimeInteractionEnabled = new WeakMap(), _TransactionController_isSimulationEnabled = new WeakMap(), _TransactionController_testGasFeeFlows = new WeakMap(), _TransactionController_multichainTrackingHelper = 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, }) {
1782
+ _TransactionController_internalEvents = new WeakMap(), _TransactionController_methodDataHelper = new WeakMap(), _TransactionController_incomingTransactionChainIds = new WeakMap(), _TransactionController_incomingTransactionHelper = new WeakMap(), _TransactionController_incomingTransactionOptions = new WeakMap(), _TransactionController_pendingTransactionOptions = new WeakMap(), _TransactionController_publicKeyEIP7702 = new WeakMap(), _TransactionController_trace = new WeakMap(), _TransactionController_transactionHistoryLimit = new WeakMap(), _TransactionController_isFirstTimeInteractionEnabled = new WeakMap(), _TransactionController_isSimulationEnabled = new WeakMap(), _TransactionController_testGasFeeFlows = new WeakMap(), _TransactionController_multichainTrackingHelper = 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, }) {
1763
1783
  // If transaction is found for same action id, do not create a new transaction.
1764
1784
  if (this.getTransactionWithActionId(actionId)) {
1765
1785
  return;
@@ -2087,6 +2107,7 @@ _TransactionController_internalEvents = new WeakMap(), _TransactionController_me
2087
2107
  chainId,
2088
2108
  ethQuery,
2089
2109
  isCustomNetwork,
2110
+ isSimulationEnabled: __classPrivateFieldGet(this, _TransactionController_isSimulationEnabled, "f").call(this),
2090
2111
  txMeta: transactionMeta,
2091
2112
  });
2092
2113
  }, _TransactionController_deleteTransaction = function _TransactionController_deleteTransaction(transactionId) {