@metamask-previews/transaction-controller 37.3.0-preview-8518e617 → 37.3.0-preview-5b0b6ae7
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.
- package/dist/TransactionController.cjs +19 -75
- package/dist/TransactionController.cjs.map +1 -1
- package/dist/TransactionController.d.cts.map +1 -1
- package/dist/TransactionController.d.mts.map +1 -1
- package/dist/TransactionController.mjs +21 -77
- package/dist/TransactionController.mjs.map +1 -1
- package/dist/types.cjs +1 -2
- package/dist/types.cjs.map +1 -1
- package/dist/types.d.cts +0 -3
- package/dist/types.d.cts.map +1 -1
- package/dist/types.d.mts +0 -3
- package/dist/types.d.mts.map +1 -1
- package/dist/types.mjs +0 -1
- package/dist/types.mjs.map +1 -1
- package/dist/utils/simulation-api.cjs.map +1 -1
- package/dist/utils/simulation-api.d.cts +0 -3
- package/dist/utils/simulation-api.d.cts.map +1 -1
- package/dist/utils/simulation-api.d.mts +0 -3
- package/dist/utils/simulation-api.d.mts.map +1 -1
- package/dist/utils/simulation-api.mjs.map +1 -1
- package/dist/utils/simulation.cjs +1 -10
- package/dist/utils/simulation.cjs.map +1 -1
- package/dist/utils/simulation.d.cts +1 -5
- package/dist/utils/simulation.d.cts.map +1 -1
- package/dist/utils/simulation.d.mts +1 -5
- package/dist/utils/simulation.d.mts.map +1 -1
- package/dist/utils/simulation.mjs +1 -10
- package/dist/utils/simulation.mjs.map +1 -1
- package/dist/utils/utils.cjs +1 -25
- package/dist/utils/utils.cjs.map +1 -1
- package/dist/utils/utils.d.cts +0 -10
- package/dist/utils/utils.d.cts.map +1 -1
- package/dist/utils/utils.d.mts +0 -10
- package/dist/utils/utils.d.mts.map +1 -1
- package/dist/utils/utils.mjs +0 -20
- package/dist/utils/utils.mjs.map +1 -1
- package/package.json +3 -4
|
@@ -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,
|
|
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");
|
|
@@ -1932,9 +1932,7 @@ _TransactionController_internalEvents = new WeakMap(), _TransactionController_in
|
|
|
1932
1932
|
}, _TransactionController_getLayer1GasFeeFlows = function _TransactionController_getLayer1GasFeeFlows() {
|
|
1933
1933
|
return [new OptimismLayer1GasFeeFlow_1.OptimismLayer1GasFeeFlow(), new ScrollLayer1GasFeeFlow_1.ScrollLayer1GasFeeFlow()];
|
|
1934
1934
|
}, _TransactionController_updateTransactionInternal = function _TransactionController_updateTransactionInternal({ transactionId, note, skipHistory, skipValidation, }, callback) {
|
|
1935
|
-
let
|
|
1936
|
-
let isReSimulateNeedDueToSecurityAlert = false;
|
|
1937
|
-
let isReSimulateNeedDueToThreshold = false;
|
|
1935
|
+
let updatedTransactionParams = [];
|
|
1938
1936
|
this.update((state) => {
|
|
1939
1937
|
const index = state.transactions.findIndex(({ id }) => id === transactionId);
|
|
1940
1938
|
let transactionMeta = state.transactions[index];
|
|
@@ -1944,12 +1942,8 @@ _TransactionController_internalEvents = new WeakMap(), _TransactionController_in
|
|
|
1944
1942
|
transactionMeta.txParams = (0, utils_2.normalizeTransactionParams)(transactionMeta.txParams);
|
|
1945
1943
|
(0, validation_1.validateTxParams)(transactionMeta.txParams);
|
|
1946
1944
|
}
|
|
1947
|
-
|
|
1948
|
-
__classPrivateFieldGet(this, _TransactionController_instances, "m",
|
|
1949
|
-
isReSimulateNeedDueToSecurityAlert =
|
|
1950
|
-
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_shouldReSimulateDueToSecurityAlert).call(this, transactionMeta);
|
|
1951
|
-
isReSimulateNeedDueToThreshold =
|
|
1952
|
-
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_shouldReSimulateDueToThreshold).call(this, transactionMeta);
|
|
1945
|
+
updatedTransactionParams =
|
|
1946
|
+
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_checkIfTransactionParamsUpdated).call(this, transactionMeta);
|
|
1953
1947
|
const shouldSkipHistory = this.isHistoryDisabled || skipHistory;
|
|
1954
1948
|
if (!shouldSkipHistory) {
|
|
1955
1949
|
transactionMeta = (0, history_1.updateTransactionHistory)(transactionMeta, note ?? 'Transaction updated');
|
|
@@ -1957,73 +1951,31 @@ _TransactionController_internalEvents = new WeakMap(), _TransactionController_in
|
|
|
1957
1951
|
state.transactions[index] = transactionMeta;
|
|
1958
1952
|
});
|
|
1959
1953
|
const transactionMeta = this.getTransaction(transactionId);
|
|
1960
|
-
if (
|
|
1961
|
-
|
|
1962
|
-
isReSimulateNeedDueToThreshold) {
|
|
1963
|
-
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_updateSimulationData).call(this, transactionMeta, {
|
|
1964
|
-
isReSimulatedDueToSecurityAlert: isReSimulateNeedDueToSecurityAlert,
|
|
1965
|
-
isReSimulatedDueToThreshold: isReSimulateNeedDueToThreshold,
|
|
1966
|
-
}).catch((error) => {
|
|
1967
|
-
(0, logger_1.projectLogger)('Error updating simulation data', error);
|
|
1968
|
-
throw error;
|
|
1969
|
-
});
|
|
1954
|
+
if (updatedTransactionParams.length > 0) {
|
|
1955
|
+
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_onTransactionParamsUpdated).call(this, transactionMeta, updatedTransactionParams);
|
|
1970
1956
|
}
|
|
1971
1957
|
return transactionMeta;
|
|
1972
|
-
},
|
|
1973
|
-
const isSimulationUpdated = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_isSimulationUpdated).call(this, transactionMeta);
|
|
1974
|
-
if (!isSimulationUpdated) {
|
|
1975
|
-
return false;
|
|
1976
|
-
}
|
|
1977
|
-
const { simulationData, txParams: { value }, } = transactionMeta;
|
|
1978
|
-
const isSimulationDataAvailable = Boolean(simulationData);
|
|
1979
|
-
const simulationNativeBalanceDifference = simulationData?.nativeBalanceChange?.difference;
|
|
1980
|
-
const isTxValueAndSimulationNativeBalanceDefined = value !== undefined && simulationNativeBalanceDifference !== undefined;
|
|
1981
|
-
const isTxValueVsBalanceAbovePercentageThreshold = isTxValueAndSimulationNativeBalanceDefined &&
|
|
1982
|
-
!(0, utils_2.isPercentageDifferenceWithinThreshold)(simulationNativeBalanceDifference, value, 5);
|
|
1983
|
-
return (isSimulationDataAvailable && isTxValueVsBalanceAbovePercentageThreshold);
|
|
1984
|
-
}, _TransactionController_shouldReSimulateDueToSecurityAlert = function _TransactionController_shouldReSimulateDueToSecurityAlert(transactionMeta) {
|
|
1985
|
-
const isSecurityAlertUpdated = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_isSecurityAlertUpdated).call(this, transactionMeta);
|
|
1986
|
-
if (!isSecurityAlertUpdated) {
|
|
1987
|
-
return false;
|
|
1988
|
-
}
|
|
1989
|
-
const { securityAlertResponse } = transactionMeta;
|
|
1990
|
-
const isMaliciousTransfer = securityAlertResponse?.result_type === types_1.BLOCKAID_RESULT_TYPE_MALICIOUS;
|
|
1991
|
-
return isMaliciousTransfer;
|
|
1992
|
-
}, _TransactionController_isSecurityAlertUpdated = function _TransactionController_isSecurityAlertUpdated(newTransactionMeta) {
|
|
1993
|
-
const { id: transactionId, securityAlertResponse: newSecurityAlertResponse, } = (0, lodash_1.cloneDeep)(newTransactionMeta);
|
|
1994
|
-
const { securityAlertResponse: originalSecurityAlertResponse } = (0, lodash_1.cloneDeep)(this.getTransaction(transactionId));
|
|
1995
|
-
return !(0, lodash_1.isEqual)(originalSecurityAlertResponse, newSecurityAlertResponse);
|
|
1996
|
-
}, _TransactionController_isSimulationUpdated = function _TransactionController_isSimulationUpdated(newTransactionMeta) {
|
|
1997
|
-
const { id: transactionId, simulationData: newSimulationData } = (0, lodash_1.cloneDeep)(newTransactionMeta);
|
|
1998
|
-
const newTransactionProps = {
|
|
1999
|
-
simulationData: newSimulationData,
|
|
2000
|
-
simulationNativeBalanceDifference: newSimulationData?.nativeBalanceChange?.difference,
|
|
2001
|
-
};
|
|
2002
|
-
const { simulationData: originalSimulationData } = (0, lodash_1.cloneDeep)(this.getTransaction(transactionId));
|
|
2003
|
-
const originalTransactionProps = {
|
|
2004
|
-
simulationData: originalSimulationData,
|
|
2005
|
-
simulationNativeBalanceDifference: originalSimulationData?.nativeBalanceChange?.difference,
|
|
2006
|
-
};
|
|
2007
|
-
// Skip the case where simulationData fetch started
|
|
2008
|
-
const shouldSkip = !newTransactionProps.simulationData;
|
|
2009
|
-
if (shouldSkip) {
|
|
2010
|
-
return false;
|
|
2011
|
-
}
|
|
2012
|
-
return !(0, lodash_1.isEqual)(originalTransactionProps, newTransactionProps);
|
|
2013
|
-
}, _TransactionController_shouldReSimulateDueToTxParamUpdate = function _TransactionController_shouldReSimulateDueToTxParamUpdate(newTransactionMeta) {
|
|
1958
|
+
}, _TransactionController_checkIfTransactionParamsUpdated = function _TransactionController_checkIfTransactionParamsUpdated(newTransactionMeta) {
|
|
2014
1959
|
const { id: transactionId, txParams: newParams } = newTransactionMeta;
|
|
2015
1960
|
const originalParams = this.getTransaction(transactionId)?.txParams;
|
|
2016
1961
|
if (!originalParams || (0, lodash_1.isEqual)(originalParams, newParams)) {
|
|
2017
|
-
return
|
|
1962
|
+
return [];
|
|
2018
1963
|
}
|
|
2019
1964
|
const params = Object.keys(newParams);
|
|
2020
1965
|
const updatedProperties = params.filter((param) => newParams[param] !== originalParams[param]);
|
|
2021
1966
|
(0, logger_1.projectLogger)('Transaction parameters have been updated', transactionId, updatedProperties, originalParams, newParams);
|
|
2022
|
-
return
|
|
2023
|
-
},
|
|
2024
|
-
|
|
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);
|
|
1973
|
+
throw error;
|
|
1974
|
+
});
|
|
1975
|
+
}
|
|
1976
|
+
}, _TransactionController_updateSimulationData = async function _TransactionController_updateSimulationData(transactionMeta, { traceContext } = {}) {
|
|
1977
|
+
const { id: transactionId, chainId, txParams } = transactionMeta;
|
|
2025
1978
|
const { from, to, value, data } = txParams;
|
|
2026
|
-
const isReSimulatedDueToSecurity = Boolean(isReSimulatedDueToSecurityAlert || isReSimulatedDueToThreshold);
|
|
2027
1979
|
let simulationData = {
|
|
2028
1980
|
error: {
|
|
2029
1981
|
code: types_1.SimulationErrorCode.Disabled,
|
|
@@ -2041,15 +1993,7 @@ _TransactionController_internalEvents = new WeakMap(), _TransactionController_in
|
|
|
2041
1993
|
to: to,
|
|
2042
1994
|
value: value,
|
|
2043
1995
|
data: data,
|
|
2044
|
-
}, {
|
|
2045
|
-
isReSimulatedDueToSecurity,
|
|
2046
1996
|
}));
|
|
2047
|
-
if (prevSimulationData && !(0, lodash_1.isEqual)(simulationData, prevSimulationData)) {
|
|
2048
|
-
simulationData = {
|
|
2049
|
-
...simulationData,
|
|
2050
|
-
isReSimulatedDueToSecurity,
|
|
2051
|
-
};
|
|
2052
|
-
}
|
|
2053
1997
|
}
|
|
2054
1998
|
const finalTransactionMeta = this.getTransaction(transactionId);
|
|
2055
1999
|
/* istanbul ignore if */
|