@metamask-previews/transaction-controller 56.3.0-preview-e9f8bc88 → 57.0.0-preview-39fa8d37
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/CHANGELOG.md +13 -1
- package/dist/TransactionController.cjs +17 -55
- 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 +20 -58
- package/dist/TransactionController.mjs.map +1 -1
- package/dist/api/simulation-api.cjs.map +1 -1
- package/dist/api/simulation-api.d.cts +22 -5
- package/dist/api/simulation-api.d.cts.map +1 -1
- package/dist/api/simulation-api.d.mts +22 -5
- package/dist/api/simulation-api.d.mts.map +1 -1
- package/dist/api/simulation-api.mjs.map +1 -1
- package/dist/types.cjs.map +1 -1
- package/dist/types.d.cts +2 -0
- package/dist/types.d.cts.map +1 -1
- package/dist/types.d.mts +2 -0
- package/dist/types.d.mts.map +1 -1
- package/dist/types.mjs.map +1 -1
- package/dist/utils/{simulation.cjs → balance-changes.cjs} +103 -112
- package/dist/utils/balance-changes.cjs.map +1 -0
- package/dist/utils/balance-changes.d.cts +30 -0
- package/dist/utils/balance-changes.d.cts.map +1 -0
- package/dist/utils/balance-changes.d.mts +30 -0
- package/dist/utils/balance-changes.d.mts.map +1 -0
- package/dist/utils/{simulation.mjs → balance-changes.mjs} +107 -111
- package/dist/utils/balance-changes.mjs.map +1 -0
- package/dist/utils/gas-fee-tokens.cjs +123 -0
- package/dist/utils/gas-fee-tokens.cjs.map +1 -0
- package/dist/utils/gas-fee-tokens.d.cts +22 -0
- package/dist/utils/gas-fee-tokens.d.cts.map +1 -0
- package/dist/utils/gas-fee-tokens.d.mts +22 -0
- package/dist/utils/gas-fee-tokens.d.mts.map +1 -0
- package/dist/utils/gas-fee-tokens.mjs +119 -0
- package/dist/utils/gas-fee-tokens.mjs.map +1 -0
- package/package.json +3 -3
- package/dist/utils/simulation.cjs.map +0 -1
- package/dist/utils/simulation.d.cts +0 -60
- package/dist/utils/simulation.d.cts.map +0 -1
- package/dist/utils/simulation.d.mts +0 -60
- package/dist/utils/simulation.d.mts.map +0 -1
- package/dist/utils/simulation.mjs.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [57.0.0]
|
|
11
|
+
|
|
12
|
+
### Changed
|
|
13
|
+
|
|
14
|
+
- **BREAKING:** bump `@metamask/accounts-controller` peer dependency to `^30.0.0` ([#5888](https://github.com/MetaMask/core/pull/5888))
|
|
15
|
+
|
|
10
16
|
## [56.3.0]
|
|
11
17
|
|
|
12
18
|
### Added
|
|
@@ -18,6 +24,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
18
24
|
- Add `transactionBatches` array to state.
|
|
19
25
|
- Add `TransactionBatchMeta` type.
|
|
20
26
|
|
|
27
|
+
### Changed
|
|
28
|
+
|
|
29
|
+
- Include gas limit and gas fees in simulation requests ([#5754](https://github.com/MetaMask/core/pull/5754))
|
|
30
|
+
- Add optional `fee` property to `GasFeeToken`.
|
|
31
|
+
|
|
21
32
|
### Fixed
|
|
22
33
|
|
|
23
34
|
- Support leading zeroes in `authorizationList` properties ([#5830](https://github.com/MetaMask/core/pull/5830))
|
|
@@ -1628,7 +1639,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
1628
1639
|
|
|
1629
1640
|
All changes listed after this point were applied to this package following the monorepo conversion.
|
|
1630
1641
|
|
|
1631
|
-
[Unreleased]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@
|
|
1642
|
+
[Unreleased]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@57.0.0...HEAD
|
|
1643
|
+
[57.0.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@56.3.0...@metamask/transaction-controller@57.0.0
|
|
1632
1644
|
[56.3.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@56.2.0...@metamask/transaction-controller@56.3.0
|
|
1633
1645
|
[56.2.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@56.1.0...@metamask/transaction-controller@56.2.0
|
|
1634
1646
|
[56.1.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@56.0.0...@metamask/transaction-controller@56.1.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_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
|
|
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;
|
|
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");
|
|
@@ -45,11 +45,12 @@ const ResimulateHelper_1 = require("./helpers/ResimulateHelper.cjs");
|
|
|
45
45
|
const ExtraTransactionsPublishHook_1 = require("./hooks/ExtraTransactionsPublishHook.cjs");
|
|
46
46
|
const logger_1 = require("./logger.cjs");
|
|
47
47
|
const types_1 = require("./types.cjs");
|
|
48
|
+
const balance_changes_1 = require("./utils/balance-changes.cjs");
|
|
48
49
|
const batch_1 = require("./utils/batch.cjs");
|
|
49
50
|
const eip7702_1 = require("./utils/eip7702.cjs");
|
|
50
51
|
const external_transactions_1 = require("./utils/external-transactions.cjs");
|
|
51
|
-
const feature_flags_1 = require("./utils/feature-flags.cjs");
|
|
52
52
|
const gas_1 = require("./utils/gas.cjs");
|
|
53
|
+
const gas_fee_tokens_1 = require("./utils/gas-fee-tokens.cjs");
|
|
53
54
|
const gas_fees_1 = require("./utils/gas-fees.cjs");
|
|
54
55
|
const gas_flow_1 = require("./utils/gas-flow.cjs");
|
|
55
56
|
const history_1 = require("./utils/history.cjs");
|
|
@@ -57,7 +58,6 @@ const layer1_gas_fee_flow_1 = require("./utils/layer1-gas-fee-flow.cjs");
|
|
|
57
58
|
const nonce_1 = require("./utils/nonce.cjs");
|
|
58
59
|
const prepare_1 = require("./utils/prepare.cjs");
|
|
59
60
|
const retry_1 = require("./utils/retry.cjs");
|
|
60
|
-
const simulation_1 = require("./utils/simulation.cjs");
|
|
61
61
|
const swaps_1 = require("./utils/swaps.cjs");
|
|
62
62
|
const transaction_type_1 = require("./utils/transaction-type.cjs");
|
|
63
63
|
const utils_2 = require("./utils/utils.cjs");
|
|
@@ -2051,7 +2051,7 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
2051
2051
|
(0, logger_1.projectLogger)('Error fetching account address relationship, skipping first time interaction update', error);
|
|
2052
2052
|
}
|
|
2053
2053
|
}, _TransactionController_updateSimulationData = async function _TransactionController_updateSimulationData(transactionMeta, { blockTime, traceContext, } = {}) {
|
|
2054
|
-
const { id: transactionId, simulationData: prevSimulationData } = transactionMeta;
|
|
2054
|
+
const { chainId, id: transactionId, nestedTransactions, networkClientId, simulationData: prevSimulationData, txParams, } = transactionMeta;
|
|
2055
2055
|
let simulationData = {
|
|
2056
2056
|
error: {
|
|
2057
2057
|
code: types_1.SimulationErrorCode.Disabled,
|
|
@@ -2061,13 +2061,13 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
2061
2061
|
};
|
|
2062
2062
|
let gasFeeTokens = [];
|
|
2063
2063
|
if (__classPrivateFieldGet(this, _TransactionController_isSimulationEnabled, "f").call(this)) {
|
|
2064
|
-
|
|
2064
|
+
simulationData = await __classPrivateFieldGet(this, _TransactionController_trace, "f").call(this, { name: 'Simulate', parentContext: traceContext }, () => (0, balance_changes_1.getBalanceChanges)({
|
|
2065
2065
|
blockTime,
|
|
2066
|
-
|
|
2067
|
-
|
|
2068
|
-
|
|
2069
|
-
|
|
2070
|
-
|
|
2066
|
+
chainId,
|
|
2067
|
+
ethQuery: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { networkClientId }),
|
|
2068
|
+
nestedTransactions,
|
|
2069
|
+
txParams,
|
|
2070
|
+
}));
|
|
2071
2071
|
if (blockTime &&
|
|
2072
2072
|
prevSimulationData &&
|
|
2073
2073
|
(0, ResimulateHelper_1.hasSimulationDataChanged)(prevSimulationData, simulationData)) {
|
|
@@ -2076,6 +2076,13 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
2076
2076
|
isUpdatedAfterSecurityCheck: true,
|
|
2077
2077
|
};
|
|
2078
2078
|
}
|
|
2079
|
+
gasFeeTokens = await (0, gas_fee_tokens_1.getGasFeeTokens)({
|
|
2080
|
+
chainId,
|
|
2081
|
+
isEIP7702GasFeeTokensEnabled: __classPrivateFieldGet(this, _TransactionController_isEIP7702GasFeeTokensEnabled, "f"),
|
|
2082
|
+
messenger: this.messagingSystem,
|
|
2083
|
+
publicKeyEIP7702: __classPrivateFieldGet(this, _TransactionController_publicKeyEIP7702, "f"),
|
|
2084
|
+
transactionMeta,
|
|
2085
|
+
});
|
|
2079
2086
|
}
|
|
2080
2087
|
const finalTransactionMeta = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getTransaction).call(this, transactionId);
|
|
2081
2088
|
/* istanbul ignore if */
|
|
@@ -2196,50 +2203,5 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
2196
2203
|
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_onTransactionStatusChange).call(this, newTransactionMeta);
|
|
2197
2204
|
this.messagingSystem.publish(`${controllerName}:transactionFinished`, newTransactionMeta);
|
|
2198
2205
|
__classPrivateFieldGet(this, _TransactionController_internalEvents, "f").emit(`${transactionMeta.id}:finished`, newTransactionMeta);
|
|
2199
|
-
}, _TransactionController_getSimulationData = async function _TransactionController_getSimulationData({ blockTime, traceContext, transactionMeta, }) {
|
|
2200
|
-
const { chainId, delegationAddress, txParams } = transactionMeta;
|
|
2201
|
-
const { authorizationList: authorizationListRequest, data, from, to, value, } = txParams;
|
|
2202
|
-
const authorizationAddress = authorizationListRequest?.[0]?.address;
|
|
2203
|
-
const senderCode = authorizationAddress &&
|
|
2204
|
-
(eip7702_1.DELEGATION_PREFIX + (0, utils_1.remove0x)(authorizationAddress));
|
|
2205
|
-
const is7702GasFeeTokensEnabled = await __classPrivateFieldGet(this, _TransactionController_isEIP7702GasFeeTokensEnabled, "f").call(this, transactionMeta);
|
|
2206
|
-
const use7702Fees = is7702GasFeeTokensEnabled &&
|
|
2207
|
-
(0, eip7702_1.doesChainSupportEIP7702)(chainId, this.messagingSystem);
|
|
2208
|
-
let authorizationList = authorizationListRequest?.map((authorization) => ({
|
|
2209
|
-
address: authorization.address,
|
|
2210
|
-
from: from,
|
|
2211
|
-
}));
|
|
2212
|
-
if (use7702Fees && !delegationAddress && !authorizationList) {
|
|
2213
|
-
authorizationList = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getSimulationAuthorizationList).call(this, {
|
|
2214
|
-
chainId,
|
|
2215
|
-
from: from,
|
|
2216
|
-
});
|
|
2217
|
-
}
|
|
2218
|
-
return await __classPrivateFieldGet(this, _TransactionController_trace, "f").call(this, { name: 'Simulate', parentContext: traceContext }, () => (0, simulation_1.getSimulationData)({
|
|
2219
|
-
authorizationList,
|
|
2220
|
-
chainId,
|
|
2221
|
-
data: data,
|
|
2222
|
-
from: from,
|
|
2223
|
-
to: to,
|
|
2224
|
-
value: value,
|
|
2225
|
-
}, {
|
|
2226
|
-
blockTime,
|
|
2227
|
-
senderCode,
|
|
2228
|
-
use7702Fees,
|
|
2229
|
-
}));
|
|
2230
|
-
}, _TransactionController_getSimulationAuthorizationList = function _TransactionController_getSimulationAuthorizationList({ chainId, from, }) {
|
|
2231
|
-
if (!__classPrivateFieldGet(this, _TransactionController_publicKeyEIP7702, "f")) {
|
|
2232
|
-
throw rpc_errors_1.rpcErrors.internal(eip7702_1.ERROR_MESSGE_PUBLIC_KEY);
|
|
2233
|
-
}
|
|
2234
|
-
const upgradeAddress = (0, feature_flags_1.getEIP7702UpgradeContractAddress)(chainId, this.messagingSystem, __classPrivateFieldGet(this, _TransactionController_publicKeyEIP7702, "f"));
|
|
2235
|
-
if (!upgradeAddress) {
|
|
2236
|
-
throw rpc_errors_1.rpcErrors.internal(batch_1.ERROR_MESSAGE_NO_UPGRADE_CONTRACT);
|
|
2237
|
-
}
|
|
2238
|
-
return [
|
|
2239
|
-
{
|
|
2240
|
-
address: upgradeAddress,
|
|
2241
|
-
from: from,
|
|
2242
|
-
},
|
|
2243
|
-
];
|
|
2244
2206
|
};
|
|
2245
2207
|
//# sourceMappingURL=TransactionController.cjs.map
|