@metamask-previews/transaction-controller 37.3.0-preview-d823fc29 → 37.3.0-preview-f9d64175

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 (43) hide show
  1. package/dist/TransactionController.cjs +25 -25
  2. package/dist/TransactionController.cjs.map +1 -1
  3. package/dist/TransactionController.d.cts.map +1 -1
  4. package/dist/TransactionController.d.mts.map +1 -1
  5. package/dist/TransactionController.mjs +25 -25
  6. package/dist/TransactionController.mjs.map +1 -1
  7. package/dist/types.cjs.map +1 -1
  8. package/dist/types.d.cts +0 -2
  9. package/dist/types.d.cts.map +1 -1
  10. package/dist/types.d.mts +0 -2
  11. package/dist/types.d.mts.map +1 -1
  12. package/dist/types.mjs.map +1 -1
  13. package/dist/utils/simulation-api.cjs.map +1 -1
  14. package/dist/utils/simulation-api.d.cts +0 -3
  15. package/dist/utils/simulation-api.d.cts.map +1 -1
  16. package/dist/utils/simulation-api.d.mts +0 -3
  17. package/dist/utils/simulation-api.d.mts.map +1 -1
  18. package/dist/utils/simulation-api.mjs.map +1 -1
  19. package/dist/utils/simulation.cjs +3 -19
  20. package/dist/utils/simulation.cjs.map +1 -1
  21. package/dist/utils/simulation.d.cts +2 -7
  22. package/dist/utils/simulation.d.cts.map +1 -1
  23. package/dist/utils/simulation.d.mts +2 -7
  24. package/dist/utils/simulation.d.mts.map +1 -1
  25. package/dist/utils/simulation.mjs +3 -19
  26. package/dist/utils/simulation.mjs.map +1 -1
  27. package/dist/utils/utils.cjs +1 -25
  28. package/dist/utils/utils.cjs.map +1 -1
  29. package/dist/utils/utils.d.cts +0 -10
  30. package/dist/utils/utils.d.cts.map +1 -1
  31. package/dist/utils/utils.d.mts +0 -10
  32. package/dist/utils/utils.d.mts.map +1 -1
  33. package/dist/utils/utils.mjs +0 -20
  34. package/dist/utils/utils.mjs.map +1 -1
  35. package/package.json +3 -4
  36. package/dist/utils/resimulate.cjs +0 -103
  37. package/dist/utils/resimulate.cjs.map +0 -1
  38. package/dist/utils/resimulate.d.cts +0 -20
  39. package/dist/utils/resimulate.d.cts.map +0 -1
  40. package/dist/utils/resimulate.d.mts +0 -20
  41. package/dist/utils/resimulate.d.mts.map +0 -1
  42. package/dist/utils/resimulate.mjs +0 -100
  43. package/dist/utils/resimulate.mjs.map +0 -1
@@ -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_incomingTransactionOptions, _TransactionController_pendingTransactionOptions, _TransactionController_trace, _TransactionController_transactionHistoryLimit, _TransactionController_isSimulationEnabled, _TransactionController_testGasFeeFlows, _TransactionController_multichainTrackingHelper, _TransactionController_retryTransaction, _TransactionController_createNonceTracker, _TransactionController_createIncomingTransactionHelper, _TransactionController_createPendingTransactionTracker, _TransactionController_checkForPendingTransactionAndStartPolling, _TransactionController_stopAllTracking, _TransactionController_removeIncomingTransactionHelperListeners, _TransactionController_addIncomingTransactionHelperListeners, _TransactionController_removePendingTransactionTrackerListeners, _TransactionController_addPendingTransactionTrackerListeners, _TransactionController_getNonceTrackerPendingTransactions, _TransactionController_getGasFeeFlows, _TransactionController_getLayer1GasFeeFlows, _TransactionController_updateTransactionInternal, _TransactionController_updateSimulationData, _TransactionController_onGasFeePollerTransactionUpdate, _TransactionController_getNetworkClientId, _TransactionController_getGlobalNetworkClientId, _TransactionController_getGlobalChainId, _TransactionController_isCustomNetwork, _TransactionController_getSelectedAccount, _TransactionController_updateSubmitHistory;
16
+ var _TransactionController_instances, _TransactionController_internalEvents, _TransactionController_incomingTransactionOptions, _TransactionController_pendingTransactionOptions, _TransactionController_trace, _TransactionController_transactionHistoryLimit, _TransactionController_isSimulationEnabled, _TransactionController_testGasFeeFlows, _TransactionController_multichainTrackingHelper, _TransactionController_retryTransaction, _TransactionController_createNonceTracker, _TransactionController_createIncomingTransactionHelper, _TransactionController_createPendingTransactionTracker, _TransactionController_checkForPendingTransactionAndStartPolling, _TransactionController_stopAllTracking, _TransactionController_removeIncomingTransactionHelperListeners, _TransactionController_addIncomingTransactionHelperListeners, _TransactionController_removePendingTransactionTrackerListeners, _TransactionController_addPendingTransactionTrackerListeners, _TransactionController_getNonceTrackerPendingTransactions, _TransactionController_getGasFeeFlows, _TransactionController_getLayer1GasFeeFlows, _TransactionController_updateTransactionInternal, _TransactionController_checkIfTransactionParamsUpdated, _TransactionController_onTransactionParamsUpdated, _TransactionController_updateSimulationData, _TransactionController_onGasFeePollerTransactionUpdate, _TransactionController_getNetworkClientId, _TransactionController_getGlobalNetworkClientId, _TransactionController_getGlobalChainId, _TransactionController_isCustomNetwork, _TransactionController_getSelectedAccount, _TransactionController_updateSubmitHistory;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.TransactionController = exports.ApprovalState = exports.SPEED_UP_RATE = exports.CANCEL_RATE = exports.HARDFORK = void 0;
19
19
  const common_1 = require("@ethereumjs/common");
@@ -50,7 +50,6 @@ const gas_flow_1 = require("./utils/gas-flow.cjs");
50
50
  const history_1 = require("./utils/history.cjs");
51
51
  const layer1_gas_fee_flow_1 = require("./utils/layer1-gas-fee-flow.cjs");
52
52
  const nonce_1 = require("./utils/nonce.cjs");
53
- const resimulate_1 = require("./utils/resimulate.cjs");
54
53
  const retry_1 = require("./utils/retry.cjs");
55
54
  const simulation_1 = require("./utils/simulation.cjs");
56
55
  const swaps_1 = require("./utils/swaps.cjs");
@@ -1933,20 +1932,18 @@ _TransactionController_internalEvents = new WeakMap(), _TransactionController_in
1933
1932
  }, _TransactionController_getLayer1GasFeeFlows = function _TransactionController_getLayer1GasFeeFlows() {
1934
1933
  return [new OptimismLayer1GasFeeFlow_1.OptimismLayer1GasFeeFlow(), new ScrollLayer1GasFeeFlow_1.ScrollLayer1GasFeeFlow()];
1935
1934
  }, _TransactionController_updateTransactionInternal = function _TransactionController_updateTransactionInternal({ transactionId, note, skipHistory, skipValidation, }, callback) {
1936
- let resimulateResponse;
1935
+ let updatedTransactionParams = [];
1937
1936
  this.update((state) => {
1938
1937
  const index = state.transactions.findIndex(({ id }) => id === transactionId);
1939
1938
  let transactionMeta = state.transactions[index];
1940
- const originalTransactionMeta = (0, lodash_1.cloneDeep)(transactionMeta);
1941
1939
  // eslint-disable-next-line n/callback-return
1942
1940
  transactionMeta = callback(transactionMeta) ?? transactionMeta;
1943
1941
  if (skipValidation !== true) {
1944
1942
  transactionMeta.txParams = (0, utils_2.normalizeTransactionParams)(transactionMeta.txParams);
1945
1943
  (0, validation_1.validateTxParams)(transactionMeta.txParams);
1946
1944
  }
1947
- if (__classPrivateFieldGet(this, _TransactionController_isSimulationEnabled, "f").call(this)) {
1948
- resimulateResponse = (0, resimulate_1.shouldResimulate)(originalTransactionMeta, transactionMeta);
1949
- }
1945
+ updatedTransactionParams =
1946
+ __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_checkIfTransactionParamsUpdated).call(this, transactionMeta);
1950
1947
  const shouldSkipHistory = this.isHistoryDisabled || skipHistory;
1951
1948
  if (!shouldSkipHistory) {
1952
1949
  transactionMeta = (0, history_1.updateTransactionHistory)(transactionMeta, note ?? 'Transaction updated');
@@ -1954,17 +1951,30 @@ _TransactionController_internalEvents = new WeakMap(), _TransactionController_in
1954
1951
  state.transactions[index] = transactionMeta;
1955
1952
  });
1956
1953
  const transactionMeta = this.getTransaction(transactionId);
1957
- if (resimulateResponse?.resimulate) {
1958
- __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_updateSimulationData).call(this, transactionMeta, {
1959
- blockTime: resimulateResponse.blockTime,
1960
- }).catch((error) => {
1961
- (0, logger_1.projectLogger)('Error during re-simulation', error);
1954
+ if (updatedTransactionParams.length > 0) {
1955
+ __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_onTransactionParamsUpdated).call(this, transactionMeta, updatedTransactionParams);
1956
+ }
1957
+ return transactionMeta;
1958
+ }, _TransactionController_checkIfTransactionParamsUpdated = function _TransactionController_checkIfTransactionParamsUpdated(newTransactionMeta) {
1959
+ const { id: transactionId, txParams: newParams } = newTransactionMeta;
1960
+ const originalParams = this.getTransaction(transactionId)?.txParams;
1961
+ if (!originalParams || (0, lodash_1.isEqual)(originalParams, newParams)) {
1962
+ return [];
1963
+ }
1964
+ const params = Object.keys(newParams);
1965
+ const updatedProperties = params.filter((param) => newParams[param] !== originalParams[param]);
1966
+ (0, logger_1.projectLogger)('Transaction parameters have been updated', transactionId, updatedProperties, originalParams, newParams);
1967
+ return updatedProperties;
1968
+ }, _TransactionController_onTransactionParamsUpdated = function _TransactionController_onTransactionParamsUpdated(transactionMeta, updatedParams) {
1969
+ if (['to', 'value', 'data'].some((param) => updatedParams.includes(param))) {
1970
+ (0, logger_1.projectLogger)('Updating simulation data due to transaction parameter update');
1971
+ __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_updateSimulationData).call(this, transactionMeta).catch((error) => {
1972
+ (0, logger_1.projectLogger)('Error updating simulation data', error);
1962
1973
  throw error;
1963
1974
  });
1964
1975
  }
1965
- return transactionMeta;
1966
- }, _TransactionController_updateSimulationData = async function _TransactionController_updateSimulationData(transactionMeta, { blockTime, traceContext, } = {}) {
1967
- const { id: transactionId, chainId, txParams, simulationData: prevSimulationData, } = transactionMeta;
1976
+ }, _TransactionController_updateSimulationData = async function _TransactionController_updateSimulationData(transactionMeta, { traceContext } = {}) {
1977
+ const { id: transactionId, chainId, txParams } = transactionMeta;
1968
1978
  const { from, to, value, data } = txParams;
1969
1979
  let simulationData = {
1970
1980
  error: {
@@ -1983,17 +1993,7 @@ _TransactionController_internalEvents = new WeakMap(), _TransactionController_in
1983
1993
  to: to,
1984
1994
  value: value,
1985
1995
  data: data,
1986
- }, {
1987
- blockTime,
1988
1996
  }));
1989
- if (blockTime &&
1990
- prevSimulationData &&
1991
- !(0, lodash_1.isEqual)(simulationData, prevSimulationData)) {
1992
- simulationData = {
1993
- ...simulationData,
1994
- isUpdatedAfterSecurityCheck: true,
1995
- };
1996
- }
1997
1997
  }
1998
1998
  const finalTransactionMeta = this.getTransaction(transactionId);
1999
1999
  /* istanbul ignore if */