@metamask-previews/transaction-controller 60.4.0-preview-a5441fae → 60.4.0-preview-b896289e
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 +4 -7
- package/dist/TransactionController.cjs +106 -70
- package/dist/TransactionController.cjs.map +1 -1
- package/dist/TransactionController.d.cts +4 -3
- package/dist/TransactionController.d.cts.map +1 -1
- package/dist/TransactionController.d.mts +4 -3
- package/dist/TransactionController.d.mts.map +1 -1
- package/dist/TransactionController.mjs +107 -71
- package/dist/TransactionController.mjs.map +1 -1
- package/dist/utils/transaction-type.cjs +5 -22
- package/dist/utils/transaction-type.cjs.map +1 -1
- package/dist/utils/transaction-type.d.cts +0 -14
- package/dist/utils/transaction-type.d.cts.map +1 -1
- package/dist/utils/transaction-type.d.mts +0 -14
- package/dist/utils/transaction-type.d.mts.map +1 -1
- package/dist/utils/transaction-type.mjs +4 -20
- package/dist/utils/transaction-type.mjs.map +1 -1
- package/package.json +3 -2
- package/dist/utils/first-time-interaction.cjs +0 -77
- package/dist/utils/first-time-interaction.cjs.map +0 -1
- package/dist/utils/first-time-interaction.d.cts +0 -30
- package/dist/utils/first-time-interaction.d.cts.map +0 -1
- package/dist/utils/first-time-interaction.d.mts +0 -30
- package/dist/utils/first-time-interaction.d.mts.map +0 -1
- package/dist/utils/first-time-interaction.mjs +0 -73
- package/dist/utils/first-time-interaction.mjs.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,17 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
-
### Added
|
|
11
|
-
|
|
12
|
-
- Add `predictBuy`, `predictClaim`, `predictDeposit` and `predictSell` to `TransactionType` ([#6690](https://github.com/MetaMask/core/pull/6690))
|
|
13
|
-
|
|
14
10
|
### Changed
|
|
15
11
|
|
|
16
|
-
-
|
|
12
|
+
- **BREAKING:** Use new `Messenger` from `@metamask/messenger` ([#6386](https://github.com/MetaMask/core/pull/6386))
|
|
13
|
+
- Previously, `TransactionController` accepted a `RestrictedMessenger` instance from `@metamask/base-controller`.
|
|
17
14
|
|
|
18
|
-
###
|
|
15
|
+
### Added
|
|
19
16
|
|
|
20
|
-
-
|
|
17
|
+
- Add `predictBuy`, `predictClaim`, `predictDeposit` and `predictSell` to `TransactionType` ([#6690](https://github.com/MetaMask/core/pull/6690))
|
|
21
18
|
|
|
22
19
|
## [60.4.0]
|
|
23
20
|
|
|
@@ -13,10 +13,10 @@ 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_afterSimulate, _TransactionController_approvingTransactionIds, _TransactionController_beforeCheckPendingTransaction, _TransactionController_beforePublish, _TransactionController_beforeSign, _TransactionController_gasFeeFlows, _TransactionController_getAdditionalSignArguments, _TransactionController_getCurrentAccountEIP1559Compatibility, _TransactionController_getCurrentNetworkEIP1559Compatibility, _TransactionController_getExternalPendingTransactions, _TransactionController_getGasFeeEstimates, _TransactionController_getNetworkState, _TransactionController_getPermittedAccounts, _TransactionController_getSavedGasFees, _TransactionController_getSimulationConfig, _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_skipSimulationTransactionIds, _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_updateSimulationData, _TransactionController_onGasFeePollerTransactionUpdate, _TransactionController_onGasFeePollerTransactionBatchUpdate, _TransactionController_updateTransactionBatch, _TransactionController_getSelectedAccount, _TransactionController_getInternalAccounts, _TransactionController_updateSubmitHistory, _TransactionController_updateGasEstimate, _TransactionController_registerActionHandlers, _TransactionController_deleteTransaction, _TransactionController_isRejectError, _TransactionController_rejectTransactionAndThrow, _TransactionController_failTransaction, _TransactionController_runAfterSimulateHook;
|
|
16
|
+
var _TransactionController_instances, _TransactionController_afterAdd, _TransactionController_afterSign, _TransactionController_afterSimulate, _TransactionController_approvingTransactionIds, _TransactionController_beforeCheckPendingTransaction, _TransactionController_beforePublish, _TransactionController_beforeSign, _TransactionController_gasFeeFlows, _TransactionController_getAdditionalSignArguments, _TransactionController_getCurrentAccountEIP1559Compatibility, _TransactionController_getCurrentNetworkEIP1559Compatibility, _TransactionController_getExternalPendingTransactions, _TransactionController_getGasFeeEstimates, _TransactionController_getNetworkState, _TransactionController_getPermittedAccounts, _TransactionController_getSavedGasFees, _TransactionController_getSimulationConfig, _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_skipSimulationTransactionIds, _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_onGasFeePollerTransactionBatchUpdate, _TransactionController_updateTransactionBatch, _TransactionController_getSelectedAccount, _TransactionController_getInternalAccounts, _TransactionController_updateSubmitHistory, _TransactionController_updateGasEstimate, _TransactionController_registerActionHandlers, _TransactionController_deleteTransaction, _TransactionController_isRejectError, _TransactionController_rejectTransactionAndThrow, _TransactionController_failTransaction, _TransactionController_runAfterSimulateHook;
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.TransactionController = exports.ApprovalState = exports.SPEED_UP_RATE = exports.CANCEL_RATE = void 0;
|
|
19
|
-
const
|
|
19
|
+
const next_1 = require("@metamask/base-controller/next");
|
|
20
20
|
const controller_utils_1 = require("@metamask/controller-utils");
|
|
21
21
|
const eth_query_1 = __importDefault(require("@metamask/eth-query"));
|
|
22
22
|
const network_controller_1 = require("@metamask/network-controller");
|
|
@@ -28,6 +28,7 @@ const utils_1 = require("@metamask/utils");
|
|
|
28
28
|
const events_1 = require("events");
|
|
29
29
|
const lodash_1 = require("lodash");
|
|
30
30
|
const uuid_1 = require("uuid");
|
|
31
|
+
const accounts_api_1 = require("./api/accounts-api.cjs");
|
|
31
32
|
const DefaultGasFeeFlow_1 = require("./gas-flows/DefaultGasFeeFlow.cjs");
|
|
32
33
|
const LineaGasFeeFlow_1 = require("./gas-flows/LineaGasFeeFlow.cjs");
|
|
33
34
|
const OptimismLayer1GasFeeFlow_1 = require("./gas-flows/OptimismLayer1GasFeeFlow.cjs");
|
|
@@ -48,7 +49,6 @@ 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 first_time_interaction_1 = require("./utils/first-time-interaction.cjs");
|
|
52
52
|
const gas_1 = require("./utils/gas.cjs");
|
|
53
53
|
const gas_fee_tokens_1 = require("./utils/gas-fee-tokens.cjs");
|
|
54
54
|
const gas_fees_1 = require("./utils/gas-fees.cjs");
|
|
@@ -70,31 +70,31 @@ const metadata = {
|
|
|
70
70
|
transactions: {
|
|
71
71
|
includeInStateLogs: true,
|
|
72
72
|
persist: true,
|
|
73
|
-
|
|
73
|
+
includeInDebugSnapshot: false,
|
|
74
74
|
usedInUi: true,
|
|
75
75
|
},
|
|
76
76
|
transactionBatches: {
|
|
77
77
|
includeInStateLogs: true,
|
|
78
78
|
persist: true,
|
|
79
|
-
|
|
79
|
+
includeInDebugSnapshot: false,
|
|
80
80
|
usedInUi: true,
|
|
81
81
|
},
|
|
82
82
|
methodData: {
|
|
83
83
|
includeInStateLogs: true,
|
|
84
84
|
persist: true,
|
|
85
|
-
|
|
85
|
+
includeInDebugSnapshot: false,
|
|
86
86
|
usedInUi: true,
|
|
87
87
|
},
|
|
88
88
|
lastFetchedBlockNumbers: {
|
|
89
89
|
includeInStateLogs: true,
|
|
90
90
|
persist: true,
|
|
91
|
-
|
|
91
|
+
includeInDebugSnapshot: false,
|
|
92
92
|
usedInUi: false,
|
|
93
93
|
},
|
|
94
94
|
submitHistory: {
|
|
95
95
|
includeInStateLogs: true,
|
|
96
96
|
persist: true,
|
|
97
|
-
|
|
97
|
+
includeInDebugSnapshot: false,
|
|
98
98
|
usedInUi: false,
|
|
99
99
|
},
|
|
100
100
|
};
|
|
@@ -137,7 +137,7 @@ function getDefaultTransactionControllerState() {
|
|
|
137
137
|
/**
|
|
138
138
|
* Controller responsible for submitting and managing transactions.
|
|
139
139
|
*/
|
|
140
|
-
class TransactionController extends
|
|
140
|
+
class TransactionController extends next_1.BaseController {
|
|
141
141
|
/**
|
|
142
142
|
* Constructs a TransactionController.
|
|
143
143
|
*
|
|
@@ -199,7 +199,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
199
199
|
_TransactionController_checkForPendingTransactionAndStartPolling.set(this, () => {
|
|
200
200
|
__classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").checkForPendingTransactionAndStartPolling();
|
|
201
201
|
});
|
|
202
|
-
this.
|
|
202
|
+
this.messenger = messenger;
|
|
203
203
|
__classPrivateFieldSet(this, _TransactionController_afterAdd, hooks?.afterAdd ?? (() => Promise.resolve({})), "f");
|
|
204
204
|
__classPrivateFieldSet(this, _TransactionController_afterSign, hooks?.afterSign ?? (() => true), "f");
|
|
205
205
|
__classPrivateFieldSet(this, _TransactionController_afterSimulate, hooks?.afterSimulate ?? (() => Promise.resolve({})), "f");
|
|
@@ -235,19 +235,19 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
235
235
|
__classPrivateFieldSet(this, _TransactionController_trace, trace ?? ((_request, fn) => fn?.()), "f");
|
|
236
236
|
__classPrivateFieldSet(this, _TransactionController_transactionHistoryLimit, transactionHistoryLimit, "f");
|
|
237
237
|
const findNetworkClientIdByChainId = (chainId) => {
|
|
238
|
-
return this.
|
|
238
|
+
return this.messenger.call(`NetworkController:findNetworkClientIdByChainId`, chainId);
|
|
239
239
|
};
|
|
240
240
|
__classPrivateFieldSet(this, _TransactionController_multichainTrackingHelper, new MultichainTrackingHelper_1.MultichainTrackingHelper({
|
|
241
241
|
findNetworkClientIdByChainId,
|
|
242
242
|
getNetworkClientById: ((networkClientId) => {
|
|
243
|
-
return this.
|
|
243
|
+
return this.messenger.call(`NetworkController:getNetworkClientById`, networkClientId);
|
|
244
244
|
}),
|
|
245
245
|
getNetworkClientRegistry,
|
|
246
246
|
removePendingTransactionTrackerListeners: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_removePendingTransactionTrackerListeners).bind(this),
|
|
247
247
|
createNonceTracker: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_createNonceTracker).bind(this),
|
|
248
248
|
createPendingTransactionTracker: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_createPendingTransactionTracker).bind(this),
|
|
249
249
|
onNetworkStateChange: (listener) => {
|
|
250
|
-
this.
|
|
250
|
+
this.messenger.subscribe('NetworkController:stateChange', listener);
|
|
251
251
|
},
|
|
252
252
|
}), "f");
|
|
253
253
|
__classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").initialize();
|
|
@@ -261,9 +261,9 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
261
261
|
getTransactions: () => this.state.transactions,
|
|
262
262
|
getTransactionBatches: () => this.state.transactionBatches,
|
|
263
263
|
layer1GasFeeFlows: __classPrivateFieldGet(this, _TransactionController_layer1GasFeeFlows, "f"),
|
|
264
|
-
messenger: this.
|
|
264
|
+
messenger: this.messenger,
|
|
265
265
|
onStateChange: (listener) => {
|
|
266
|
-
this.
|
|
266
|
+
this.messenger.subscribe('TransactionController:stateChange', listener);
|
|
267
267
|
},
|
|
268
268
|
});
|
|
269
269
|
gasFeePoller.hub.on('transaction-updated', __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_onGasFeePollerTransactionUpdate).bind(this));
|
|
@@ -283,7 +283,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
283
283
|
getLocalTransactions: () => this.state.transactions,
|
|
284
284
|
includeTokenTransfers: __classPrivateFieldGet(this, _TransactionController_incomingTransactionOptions, "f").includeTokenTransfers,
|
|
285
285
|
isEnabled: __classPrivateFieldGet(this, _TransactionController_incomingTransactionOptions, "f").isEnabled,
|
|
286
|
-
messenger: this.
|
|
286
|
+
messenger: this.messenger,
|
|
287
287
|
remoteTransactionSource: new AccountsApiRemoteTransactionSource_1.AccountsApiRemoteTransactionSource(),
|
|
288
288
|
trimTransactions: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_trimTransactionsForState).bind(this),
|
|
289
289
|
updateTransactions: __classPrivateFieldGet(this, _TransactionController_incomingTransactionOptions, "f").updateTransactions,
|
|
@@ -291,11 +291,11 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
291
291
|
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_addIncomingTransactionHelperListeners).call(this, __classPrivateFieldGet(this, _TransactionController_incomingTransactionHelper, "f"));
|
|
292
292
|
// when transactionsController state changes
|
|
293
293
|
// check for pending transactions and start polling if there are any
|
|
294
|
-
this.
|
|
294
|
+
this.messenger.subscribe('TransactionController:stateChange', __classPrivateFieldGet(this, _TransactionController_checkForPendingTransactionAndStartPolling, "f"));
|
|
295
295
|
new ResimulateHelper_1.ResimulateHelper({
|
|
296
296
|
simulateTransaction: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_updateSimulationData).bind(this),
|
|
297
297
|
onTransactionsUpdate: (listener) => {
|
|
298
|
-
this.
|
|
298
|
+
this.messenger.subscribe('TransactionController:stateChange', listener, (controllerState) => controllerState.transactions);
|
|
299
299
|
},
|
|
300
300
|
getTransactions: () => this.state.transactions,
|
|
301
301
|
});
|
|
@@ -326,7 +326,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
326
326
|
* @returns Result object containing the generated batch ID.
|
|
327
327
|
*/
|
|
328
328
|
async addTransactionBatch(request) {
|
|
329
|
-
const { blockTracker } = this.
|
|
329
|
+
const { blockTracker } = this.messenger.call(`NetworkController:getNetworkClientById`, request.networkClientId);
|
|
330
330
|
return await (0, batch_1.addTransactionBatch)({
|
|
331
331
|
addTransaction: this.addTransaction.bind(this),
|
|
332
332
|
getChainId: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getChainId).bind(this),
|
|
@@ -342,7 +342,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
342
342
|
}),
|
|
343
343
|
getTransaction: (transactionId) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getTransactionOrThrow).call(this, transactionId),
|
|
344
344
|
isSimulationEnabled: __classPrivateFieldGet(this, _TransactionController_isSimulationEnabled, "f"),
|
|
345
|
-
messenger: this.
|
|
345
|
+
messenger: this.messenger,
|
|
346
346
|
publishBatchHook: __classPrivateFieldGet(this, _TransactionController_publishBatchHook, "f"),
|
|
347
347
|
publicKeyEIP7702: __classPrivateFieldGet(this, _TransactionController_publicKeyEIP7702, "f"),
|
|
348
348
|
publishTransaction: (ethQuery, transactionMeta) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransaction).call(this, ethQuery, transactionMeta),
|
|
@@ -362,7 +362,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
362
362
|
return (0, batch_1.isAtomicBatchSupported)({
|
|
363
363
|
...request,
|
|
364
364
|
getEthQuery: (chainId) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { chainId }),
|
|
365
|
-
messenger: this.
|
|
365
|
+
messenger: this.messenger,
|
|
366
366
|
publicKeyEIP7702: __classPrivateFieldGet(this, _TransactionController_publicKeyEIP7702, "f"),
|
|
367
367
|
});
|
|
368
368
|
}
|
|
@@ -490,7 +490,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
490
490
|
addedTransactionMeta = (0, swaps_1.updateSwapsTransaction)(addedTransactionMeta, transactionType, swaps, {
|
|
491
491
|
isSwapsDisabled: __classPrivateFieldGet(this, _TransactionController_isSwapsDisabled, "f"),
|
|
492
492
|
cancelTransaction: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_rejectTransaction).bind(this),
|
|
493
|
-
messenger: this.
|
|
493
|
+
messenger: this.messenger,
|
|
494
494
|
});
|
|
495
495
|
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_addMetadata).call(this, addedTransactionMeta);
|
|
496
496
|
if (requireApproval !== false) {
|
|
@@ -500,14 +500,8 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
500
500
|
(0, logger_1.projectLogger)('Error while updating simulation data', error);
|
|
501
501
|
throw error;
|
|
502
502
|
});
|
|
503
|
-
(
|
|
504
|
-
existingTransactions: this.state.transactions,
|
|
505
|
-
getTransaction: (transactionId) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getTransaction).call(this, transactionId),
|
|
506
|
-
isFirstTimeInteractionEnabled: __classPrivateFieldGet(this, _TransactionController_isFirstTimeInteractionEnabled, "f"),
|
|
507
|
-
trace: __classPrivateFieldGet(this, _TransactionController_trace, "f"),
|
|
503
|
+
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_updateFirstTimeInteraction).call(this, addedTransactionMeta, {
|
|
508
504
|
traceContext,
|
|
509
|
-
transactionMeta: addedTransactionMeta,
|
|
510
|
-
updateTransaction: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_updateTransactionInternal).bind(this),
|
|
511
505
|
}).catch((error) => {
|
|
512
506
|
(0, logger_1.projectLogger)('Error while updating first interaction properties', error);
|
|
513
507
|
});
|
|
@@ -515,7 +509,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
515
509
|
else {
|
|
516
510
|
(0, logger_1.projectLogger)('Skipping simulation & first interaction update as approval not required');
|
|
517
511
|
}
|
|
518
|
-
this.
|
|
512
|
+
this.messenger.publish(`${controllerName}:unapprovedTransactionAdded`, addedTransactionMeta);
|
|
519
513
|
}
|
|
520
514
|
return {
|
|
521
515
|
result: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_processApproval).call(this, addedTransactionMeta, {
|
|
@@ -568,7 +562,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
568
562
|
txParams.value = '0x0';
|
|
569
563
|
},
|
|
570
564
|
afterSubmit: (newTransactionMeta) => {
|
|
571
|
-
this.
|
|
565
|
+
this.messenger.publish(`${controllerName}:transactionFinished`, newTransactionMeta);
|
|
572
566
|
__classPrivateFieldGet(this, _TransactionController_internalEvents, "f").emit(`${newTransactionMeta.id}:finished`, newTransactionMeta);
|
|
573
567
|
},
|
|
574
568
|
});
|
|
@@ -592,7 +586,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
592
586
|
transactionId,
|
|
593
587
|
transactionType: types_1.TransactionType.retry,
|
|
594
588
|
afterSubmit: (newTransactionMeta) => {
|
|
595
|
-
this.
|
|
589
|
+
this.messenger.publish(`${controllerName}:speedupTransactionAdded`, newTransactionMeta);
|
|
596
590
|
},
|
|
597
591
|
});
|
|
598
592
|
}
|
|
@@ -615,7 +609,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
615
609
|
ignoreDelegationSignatures,
|
|
616
610
|
isSimulationEnabled: __classPrivateFieldGet(this, _TransactionController_isSimulationEnabled, "f").call(this),
|
|
617
611
|
getSimulationConfig: __classPrivateFieldGet(this, _TransactionController_getSimulationConfig, "f"),
|
|
618
|
-
messenger: this.
|
|
612
|
+
messenger: this.messenger,
|
|
619
613
|
txParams: transaction,
|
|
620
614
|
});
|
|
621
615
|
return { gas: estimatedGas, simulationFails };
|
|
@@ -637,7 +631,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
637
631
|
ethQuery,
|
|
638
632
|
isSimulationEnabled: __classPrivateFieldGet(this, _TransactionController_isSimulationEnabled, "f").call(this),
|
|
639
633
|
getSimulationConfig: __classPrivateFieldGet(this, _TransactionController_getSimulationConfig, "f"),
|
|
640
|
-
messenger: this.
|
|
634
|
+
messenger: this.messenger,
|
|
641
635
|
txParams: transaction,
|
|
642
636
|
});
|
|
643
637
|
const gas = (0, gas_1.addGasBuffer)(estimatedGas, blockGasLimit, multiplier);
|
|
@@ -739,7 +733,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
739
733
|
(0, logger_1.projectLogger)('Error while updating post balance', error);
|
|
740
734
|
throw error;
|
|
741
735
|
});
|
|
742
|
-
this.
|
|
736
|
+
this.messenger.publish(`${controllerName}:transactionConfirmed`, updatedTransactionMeta);
|
|
743
737
|
}
|
|
744
738
|
catch (error) {
|
|
745
739
|
console.error('Failed to confirm external transaction', error);
|
|
@@ -936,7 +930,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
936
930
|
}
|
|
937
931
|
await (0, layer1_gas_fee_flow_1.updateTransactionLayer1GasFee)({
|
|
938
932
|
layer1GasFeeFlows: __classPrivateFieldGet(this, _TransactionController_layer1GasFeeFlows, "f"),
|
|
939
|
-
messenger: this.
|
|
933
|
+
messenger: this.messenger,
|
|
940
934
|
provider,
|
|
941
935
|
transactionMeta: updatedTransaction,
|
|
942
936
|
});
|
|
@@ -1064,7 +1058,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
1064
1058
|
this.updateTransaction(updatedTransactionMeta, `${controllerName}:updateCustodialTransaction - Custodial transaction updated`);
|
|
1065
1059
|
if (status &&
|
|
1066
1060
|
[types_1.TransactionStatus.submitted, types_1.TransactionStatus.failed].includes(status)) {
|
|
1067
|
-
this.
|
|
1061
|
+
this.messenger.publish(`${controllerName}:transactionFinished`, updatedTransactionMeta);
|
|
1068
1062
|
__classPrivateFieldGet(this, _TransactionController_internalEvents, "f").emit(`${updatedTransactionMeta.id}:finished`, updatedTransactionMeta);
|
|
1069
1063
|
}
|
|
1070
1064
|
return updatedTransactionMeta;
|
|
@@ -1161,7 +1155,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
1161
1155
|
networkClientId,
|
|
1162
1156
|
};
|
|
1163
1157
|
// Guaranteed as the default gas fee flow matches all transactions.
|
|
1164
|
-
const gasFeeFlow = (0, gas_flow_1.getGasFeeFlow)(transactionMeta, __classPrivateFieldGet(this, _TransactionController_gasFeeFlows, "f"), this.
|
|
1158
|
+
const gasFeeFlow = (0, gas_flow_1.getGasFeeFlow)(transactionMeta, __classPrivateFieldGet(this, _TransactionController_gasFeeFlows, "f"), this.messenger);
|
|
1165
1159
|
const ethQuery = new eth_query_1.default(provider);
|
|
1166
1160
|
const gasFeeControllerData = await __classPrivateFieldGet(this, _TransactionController_getGasFeeEstimates, "f").call(this, {
|
|
1167
1161
|
networkClientId,
|
|
@@ -1169,7 +1163,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
1169
1163
|
return gasFeeFlow.getGasFees({
|
|
1170
1164
|
ethQuery,
|
|
1171
1165
|
gasFeeControllerData,
|
|
1172
|
-
messenger: this.
|
|
1166
|
+
messenger: this.messenger,
|
|
1173
1167
|
transactionMeta,
|
|
1174
1168
|
});
|
|
1175
1169
|
}
|
|
@@ -1189,7 +1183,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
1189
1183
|
});
|
|
1190
1184
|
return await (0, layer1_gas_fee_flow_1.getTransactionLayer1GasFee)({
|
|
1191
1185
|
layer1GasFeeFlows: __classPrivateFieldGet(this, _TransactionController_layer1GasFeeFlows, "f"),
|
|
1192
|
-
messenger: this.
|
|
1186
|
+
messenger: this.messenger,
|
|
1193
1187
|
provider,
|
|
1194
1188
|
transactionMeta: {
|
|
1195
1189
|
txParams: transactionParams,
|
|
@@ -1379,11 +1373,11 @@ _TransactionController_afterAdd = new WeakMap(), _TransactionController_afterSig
|
|
|
1379
1373
|
newTransactionMeta.hash = hash;
|
|
1380
1374
|
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_addMetadata).call(this, newTransactionMeta);
|
|
1381
1375
|
// speedUpTransaction has no approval request, so we assume the user has already approved the transaction
|
|
1382
|
-
this.
|
|
1376
|
+
this.messenger.publish(`${controllerName}:transactionApproved`, {
|
|
1383
1377
|
transactionMeta: newTransactionMeta,
|
|
1384
1378
|
actionId,
|
|
1385
1379
|
});
|
|
1386
|
-
this.
|
|
1380
|
+
this.messenger.publish(`${controllerName}:transactionSubmitted`, {
|
|
1387
1381
|
transactionMeta: newTransactionMeta,
|
|
1388
1382
|
actionId,
|
|
1389
1383
|
});
|
|
@@ -1430,12 +1424,12 @@ _TransactionController_afterAdd = new WeakMap(), _TransactionController_afterSig
|
|
|
1430
1424
|
gasFeeFlows: __classPrivateFieldGet(this, _TransactionController_gasFeeFlows, "f"),
|
|
1431
1425
|
getGasFeeEstimates: __classPrivateFieldGet(this, _TransactionController_getGasFeeEstimates, "f"),
|
|
1432
1426
|
getSavedGasFees: __classPrivateFieldGet(this, _TransactionController_getSavedGasFees, "f").bind(this),
|
|
1433
|
-
messenger: this.
|
|
1427
|
+
messenger: this.messenger,
|
|
1434
1428
|
txMeta: transactionMeta,
|
|
1435
1429
|
}));
|
|
1436
1430
|
await __classPrivateFieldGet(this, _TransactionController_trace, "f").call(this, { name: 'Update Layer 1 Gas Fees', parentContext: traceContext }, async () => await (0, layer1_gas_fee_flow_1.updateTransactionLayer1GasFee)({
|
|
1437
1431
|
layer1GasFeeFlows: __classPrivateFieldGet(this, _TransactionController_layer1GasFeeFlows, "f"),
|
|
1438
|
-
messenger: this.
|
|
1432
|
+
messenger: this.messenger,
|
|
1439
1433
|
provider,
|
|
1440
1434
|
transactionMeta,
|
|
1441
1435
|
}));
|
|
@@ -1480,7 +1474,7 @@ _TransactionController_afterAdd = new WeakMap(), _TransactionController_afterSig
|
|
|
1480
1474
|
resultCallbacks.success();
|
|
1481
1475
|
}
|
|
1482
1476
|
const updatedTransactionMeta = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getTransaction).call(this, transactionId);
|
|
1483
|
-
this.
|
|
1477
|
+
this.messenger.publish(`${controllerName}:transactionApproved`, {
|
|
1484
1478
|
transactionMeta: updatedTransactionMeta,
|
|
1485
1479
|
actionId,
|
|
1486
1480
|
});
|
|
@@ -1568,7 +1562,7 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
1568
1562
|
const rawTx = await __classPrivateFieldGet(this, _TransactionController_trace, "f").call(this, { name: 'Sign', parentContext: traceContext }, () => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_signTransaction).call(this, transactionMeta));
|
|
1569
1563
|
if (!(await __classPrivateFieldGet(this, _TransactionController_beforePublish, "f").call(this, transactionMeta))) {
|
|
1570
1564
|
(0, logger_1.projectLogger)('Skipping publishing transaction based on hook');
|
|
1571
|
-
this.
|
|
1565
|
+
this.messenger.publish(`${controllerName}:transactionPublishingSkipped`, transactionMeta);
|
|
1572
1566
|
return ApprovalState.SkippedViaBeforePublishHook;
|
|
1573
1567
|
}
|
|
1574
1568
|
if (!rawTx && !transactionMeta.isExternalSign) {
|
|
@@ -1618,10 +1612,10 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
1618
1612
|
(0, logger_1.projectLogger)('Updated pre-transaction balance', preTxBalance);
|
|
1619
1613
|
}
|
|
1620
1614
|
});
|
|
1621
|
-
this.
|
|
1615
|
+
this.messenger.publish(`${controllerName}:transactionSubmitted`, {
|
|
1622
1616
|
transactionMeta,
|
|
1623
1617
|
});
|
|
1624
|
-
this.
|
|
1618
|
+
this.messenger.publish(`${controllerName}:transactionFinished`, transactionMeta);
|
|
1625
1619
|
__classPrivateFieldGet(this, _TransactionController_internalEvents, "f").emit(`${transactionId}:finished`, transactionMeta);
|
|
1626
1620
|
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_onTransactionStatusChange).call(this, transactionMeta);
|
|
1627
1621
|
return ApprovalState.Approved;
|
|
@@ -1655,9 +1649,9 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
1655
1649
|
status: types_1.TransactionStatus.rejected,
|
|
1656
1650
|
error: (0, utils_2.normalizeTxError)(error ?? rpc_errors_1.providerErrors.userRejectedRequest()),
|
|
1657
1651
|
};
|
|
1658
|
-
this.
|
|
1652
|
+
this.messenger.publish(`${controllerName}:transactionFinished`, updatedTransactionMeta);
|
|
1659
1653
|
__classPrivateFieldGet(this, _TransactionController_internalEvents, "f").emit(`${transactionMeta.id}:finished`, updatedTransactionMeta);
|
|
1660
|
-
this.
|
|
1654
|
+
this.messenger.publish(`${controllerName}:transactionRejected`, {
|
|
1661
1655
|
transactionMeta: updatedTransactionMeta,
|
|
1662
1656
|
actionId,
|
|
1663
1657
|
});
|
|
@@ -1704,7 +1698,7 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
1704
1698
|
id,
|
|
1705
1699
|
parentContext: traceContext,
|
|
1706
1700
|
});
|
|
1707
|
-
return (await this.
|
|
1701
|
+
return (await this.messenger.call('ApprovalController:addRequest', {
|
|
1708
1702
|
id,
|
|
1709
1703
|
origin: origin || controller_utils_1.ORIGIN_METAMASK,
|
|
1710
1704
|
type,
|
|
@@ -1775,7 +1769,7 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
1775
1769
|
]);
|
|
1776
1770
|
(0, logger_1.projectLogger)('Added incoming transactions to state', finalTransactions.length, finalTransactions);
|
|
1777
1771
|
});
|
|
1778
|
-
this.
|
|
1772
|
+
this.messenger.publish(`${controllerName}:incomingTransactionsReceived`, finalTransactions);
|
|
1779
1773
|
}, _TransactionController_generateDappSuggestedGasFees = function _TransactionController_generateDappSuggestedGasFees(txParams, origin) {
|
|
1780
1774
|
if (!origin || origin === controller_utils_1.ORIGIN_METAMASK) {
|
|
1781
1775
|
return undefined;
|
|
@@ -1857,7 +1851,7 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
1857
1851
|
...transactionMeta,
|
|
1858
1852
|
status: types_1.TransactionStatus.dropped,
|
|
1859
1853
|
};
|
|
1860
|
-
this.
|
|
1854
|
+
this.messenger.publish(`${controllerName}:transactionDropped`, {
|
|
1861
1855
|
transactionMeta: updatedTransactionMeta,
|
|
1862
1856
|
});
|
|
1863
1857
|
this.updateTransaction(updatedTransactionMeta, 'TransactionController#setTransactionStatusDropped - Transaction dropped');
|
|
@@ -1893,7 +1887,7 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
1893
1887
|
const { authorizationList, from } = txParams;
|
|
1894
1888
|
const signedAuthorizationList = await (0, eip7702_1.signAuthorizationList)({
|
|
1895
1889
|
authorizationList,
|
|
1896
|
-
messenger: this.
|
|
1890
|
+
messenger: this.messenger,
|
|
1897
1891
|
transactionMeta,
|
|
1898
1892
|
});
|
|
1899
1893
|
if (signedAuthorizationList) {
|
|
@@ -1941,7 +1935,7 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
1941
1935
|
this.updateTransaction(transactionMetaWithRawTx, 'TransactionController#approveTransaction - RawTransaction added');
|
|
1942
1936
|
return rawTx;
|
|
1943
1937
|
}, _TransactionController_onTransactionStatusChange = function _TransactionController_onTransactionStatusChange(transactionMeta) {
|
|
1944
|
-
this.
|
|
1938
|
+
this.messenger.publish(`${controllerName}:transactionStatusUpdated`, {
|
|
1945
1939
|
transactionMeta,
|
|
1946
1940
|
});
|
|
1947
1941
|
}, _TransactionController_getNonceTrackerTransactions = function _TransactionController_getNonceTrackerTransactions(statuses, address, chainId) {
|
|
@@ -1949,7 +1943,7 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
1949
1943
|
}, _TransactionController_onConfirmedTransaction = function _TransactionController_onConfirmedTransaction(transactionMeta) {
|
|
1950
1944
|
(0, logger_1.projectLogger)('Processing confirmed transaction', transactionMeta.id);
|
|
1951
1945
|
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_markNonceDuplicatesDropped).call(this, transactionMeta.id);
|
|
1952
|
-
this.
|
|
1946
|
+
this.messenger.publish(`${controllerName}:transactionConfirmed`, transactionMeta);
|
|
1953
1947
|
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_onTransactionStatusChange).call(this, transactionMeta);
|
|
1954
1948
|
// Intentional given potential duration of process.
|
|
1955
1949
|
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_updatePostBalance).call(this, transactionMeta).catch((error) => {
|
|
@@ -1968,7 +1962,7 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
1968
1962
|
getTransaction: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getTransaction).bind(this),
|
|
1969
1963
|
updateTransaction: this.updateTransaction.bind(this),
|
|
1970
1964
|
});
|
|
1971
|
-
this.
|
|
1965
|
+
this.messenger.publish(`${controllerName}:postTransactionBalanceUpdated`, {
|
|
1972
1966
|
transactionMeta: updatedTransactionMeta,
|
|
1973
1967
|
approvalTransactionMeta,
|
|
1974
1968
|
});
|
|
@@ -1999,7 +1993,7 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
1999
1993
|
getGlobalLock: () => __classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").acquireNonceLockForChainIdKey({
|
|
2000
1994
|
chainId,
|
|
2001
1995
|
}),
|
|
2002
|
-
messenger: this.
|
|
1996
|
+
messenger: this.messenger,
|
|
2003
1997
|
publishTransaction: (_ethQuery, transactionMeta) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransaction).call(this, _ethQuery, transactionMeta, {
|
|
2004
1998
|
skipSubmitHistory: true,
|
|
2005
1999
|
}),
|
|
@@ -2088,6 +2082,48 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
2088
2082
|
});
|
|
2089
2083
|
}
|
|
2090
2084
|
return transactionMeta;
|
|
2085
|
+
}, _TransactionController_updateFirstTimeInteraction = async function _TransactionController_updateFirstTimeInteraction(transactionMeta, { traceContext, } = {}) {
|
|
2086
|
+
if (!__classPrivateFieldGet(this, _TransactionController_isFirstTimeInteractionEnabled, "f").call(this)) {
|
|
2087
|
+
return;
|
|
2088
|
+
}
|
|
2089
|
+
const { chainId, id: transactionId, txParams: { to, from }, } = transactionMeta;
|
|
2090
|
+
const request = {
|
|
2091
|
+
chainId: (0, utils_1.hexToNumber)(chainId),
|
|
2092
|
+
to: to,
|
|
2093
|
+
from,
|
|
2094
|
+
};
|
|
2095
|
+
(0, validation_1.validateParamTo)(to);
|
|
2096
|
+
const existingTransaction = this.state.transactions.find((tx) => tx.chainId === chainId &&
|
|
2097
|
+
tx.txParams.from === from &&
|
|
2098
|
+
tx.txParams.to === to &&
|
|
2099
|
+
tx.id !== transactionId);
|
|
2100
|
+
// Check if there is an existing transaction with the same from, to, and chainId
|
|
2101
|
+
// else we continue to check the account address relationship from API
|
|
2102
|
+
if (existingTransaction) {
|
|
2103
|
+
return;
|
|
2104
|
+
}
|
|
2105
|
+
try {
|
|
2106
|
+
const { count } = await __classPrivateFieldGet(this, _TransactionController_trace, "f").call(this, { name: 'Account Address Relationship', parentContext: traceContext }, () => (0, accounts_api_1.getAccountAddressRelationship)(request));
|
|
2107
|
+
const isFirstTimeInteraction = count === undefined ? undefined : count === 0;
|
|
2108
|
+
const finalTransactionMeta = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getTransaction).call(this, transactionId);
|
|
2109
|
+
/* istanbul ignore if */
|
|
2110
|
+
if (!finalTransactionMeta) {
|
|
2111
|
+
(0, logger_1.projectLogger)('Cannot update first time interaction as transaction not found', transactionId);
|
|
2112
|
+
return;
|
|
2113
|
+
}
|
|
2114
|
+
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_updateTransactionInternal).call(this, {
|
|
2115
|
+
transactionId,
|
|
2116
|
+
note: 'TransactionController#updateFirstInteraction - Update first time interaction',
|
|
2117
|
+
}, (txMeta) => {
|
|
2118
|
+
txMeta.isFirstTimeInteraction = isFirstTimeInteraction;
|
|
2119
|
+
});
|
|
2120
|
+
(0, logger_1.projectLogger)('Updated first time interaction', transactionId, {
|
|
2121
|
+
isFirstTimeInteraction,
|
|
2122
|
+
});
|
|
2123
|
+
}
|
|
2124
|
+
catch (error) {
|
|
2125
|
+
(0, logger_1.projectLogger)('Error fetching account address relationship, skipping first time interaction update', error);
|
|
2126
|
+
}
|
|
2091
2127
|
}, _TransactionController_updateSimulationData = async function _TransactionController_updateSimulationData(transactionMeta, { blockTime, traceContext, } = {}) {
|
|
2092
2128
|
const { chainId, id: transactionId, nestedTransactions, networkClientId, simulationData: prevSimulationData, txParams, } = transactionMeta;
|
|
2093
2129
|
let simulationData = {
|
|
@@ -2124,7 +2160,7 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
2124
2160
|
chainId,
|
|
2125
2161
|
getSimulationConfig: __classPrivateFieldGet(this, _TransactionController_getSimulationConfig, "f"),
|
|
2126
2162
|
isEIP7702GasFeeTokensEnabled: __classPrivateFieldGet(this, _TransactionController_isEIP7702GasFeeTokensEnabled, "f"),
|
|
2127
|
-
messenger: this.
|
|
2163
|
+
messenger: this.messenger,
|
|
2128
2164
|
publicKeyEIP7702: __classPrivateFieldGet(this, _TransactionController_publicKeyEIP7702, "f"),
|
|
2129
2165
|
transactionMeta,
|
|
2130
2166
|
});
|
|
@@ -2176,9 +2212,9 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
2176
2212
|
state.transactionBatches[index] = updated ?? batch;
|
|
2177
2213
|
});
|
|
2178
2214
|
}, _TransactionController_getSelectedAccount = function _TransactionController_getSelectedAccount() {
|
|
2179
|
-
return this.
|
|
2215
|
+
return this.messenger.call('AccountsController:getSelectedAccount');
|
|
2180
2216
|
}, _TransactionController_getInternalAccounts = function _TransactionController_getInternalAccounts() {
|
|
2181
|
-
const state = this.
|
|
2217
|
+
const state = this.messenger.call('AccountsController:getState');
|
|
2182
2218
|
return Object.values(state.internalAccounts?.accounts ?? {})
|
|
2183
2219
|
.filter((account) => account.type === 'eip155:eoa')
|
|
2184
2220
|
.map((account) => account.address);
|
|
@@ -2218,16 +2254,16 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
2218
2254
|
isCustomNetwork,
|
|
2219
2255
|
isSimulationEnabled: __classPrivateFieldGet(this, _TransactionController_isSimulationEnabled, "f").call(this),
|
|
2220
2256
|
getSimulationConfig: __classPrivateFieldGet(this, _TransactionController_getSimulationConfig, "f"),
|
|
2221
|
-
messenger: this.
|
|
2257
|
+
messenger: this.messenger,
|
|
2222
2258
|
txMeta: transactionMeta,
|
|
2223
2259
|
});
|
|
2224
2260
|
}, _TransactionController_registerActionHandlers = function _TransactionController_registerActionHandlers() {
|
|
2225
|
-
this.
|
|
2226
|
-
this.
|
|
2227
|
-
this.
|
|
2228
|
-
this.
|
|
2229
|
-
this.
|
|
2230
|
-
this.
|
|
2261
|
+
this.messenger.registerActionHandler(`${controllerName}:confirmExternalTransaction`, this.confirmExternalTransaction.bind(this));
|
|
2262
|
+
this.messenger.registerActionHandler(`${controllerName}:estimateGas`, this.estimateGas.bind(this));
|
|
2263
|
+
this.messenger.registerActionHandler(`${controllerName}:getNonceLock`, this.getNonceLock.bind(this));
|
|
2264
|
+
this.messenger.registerActionHandler(`${controllerName}:getTransactions`, this.getTransactions.bind(this));
|
|
2265
|
+
this.messenger.registerActionHandler(`${controllerName}:updateCustodialTransaction`, this.updateCustodialTransaction.bind(this));
|
|
2266
|
+
this.messenger.registerActionHandler(`${controllerName}:updateTransaction`, this.updateTransaction.bind(this));
|
|
2231
2267
|
}, _TransactionController_deleteTransaction = function _TransactionController_deleteTransaction(transactionId) {
|
|
2232
2268
|
this.update((state) => {
|
|
2233
2269
|
const transactions = state.transactions.filter(({ id }) => id !== transactionId);
|
|
@@ -2267,13 +2303,13 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
2267
2303
|
error: (0, utils_2.normalizeTxError)(error),
|
|
2268
2304
|
};
|
|
2269
2305
|
}
|
|
2270
|
-
this.
|
|
2306
|
+
this.messenger.publish(`${controllerName}:transactionFailed`, {
|
|
2271
2307
|
actionId,
|
|
2272
2308
|
error: error.message,
|
|
2273
2309
|
transactionMeta: newTransactionMeta,
|
|
2274
2310
|
});
|
|
2275
2311
|
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_onTransactionStatusChange).call(this, newTransactionMeta);
|
|
2276
|
-
this.
|
|
2312
|
+
this.messenger.publish(`${controllerName}:transactionFinished`, newTransactionMeta);
|
|
2277
2313
|
__classPrivateFieldGet(this, _TransactionController_internalEvents, "f").emit(`${transactionMeta.id}:finished`, newTransactionMeta);
|
|
2278
2314
|
}, _TransactionController_runAfterSimulateHook = async function _TransactionController_runAfterSimulateHook(transactionMeta) {
|
|
2279
2315
|
(0, logger_1.projectLogger)('Calling afterSimulate hook', transactionMeta);
|