@metamask/transaction-controller 63.3.1 → 64.1.0
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 +31 -1
- package/dist/TransactionController.cjs +85 -103
- 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 +86 -108
- package/dist/TransactionController.mjs.map +1 -1
- package/dist/gas-flows/LineaGasFeeFlow.cjs +22 -11
- package/dist/gas-flows/LineaGasFeeFlow.cjs.map +1 -1
- package/dist/gas-flows/LineaGasFeeFlow.d.cts.map +1 -1
- package/dist/gas-flows/LineaGasFeeFlow.d.mts.map +1 -1
- package/dist/gas-flows/LineaGasFeeFlow.mjs +23 -12
- package/dist/gas-flows/LineaGasFeeFlow.mjs.map +1 -1
- package/dist/helpers/AccountsApiRemoteTransactionSource.cjs +2 -2
- package/dist/helpers/AccountsApiRemoteTransactionSource.cjs.map +1 -1
- package/dist/helpers/AccountsApiRemoteTransactionSource.d.cts.map +1 -1
- package/dist/helpers/AccountsApiRemoteTransactionSource.d.mts.map +1 -1
- package/dist/helpers/AccountsApiRemoteTransactionSource.mjs +1 -1
- package/dist/helpers/AccountsApiRemoteTransactionSource.mjs.map +1 -1
- package/dist/helpers/GasFeePoller.cjs +5 -19
- package/dist/helpers/GasFeePoller.cjs.map +1 -1
- package/dist/helpers/GasFeePoller.d.cts +1 -6
- package/dist/helpers/GasFeePoller.d.cts.map +1 -1
- package/dist/helpers/GasFeePoller.d.mts +1 -6
- package/dist/helpers/GasFeePoller.d.mts.map +1 -1
- package/dist/helpers/GasFeePoller.mjs +5 -26
- package/dist/helpers/GasFeePoller.mjs.map +1 -1
- package/dist/helpers/MethodDataHelper.cjs +10 -6
- package/dist/helpers/MethodDataHelper.cjs.map +1 -1
- package/dist/helpers/MethodDataHelper.d.cts +4 -4
- package/dist/helpers/MethodDataHelper.d.cts.map +1 -1
- package/dist/helpers/MethodDataHelper.d.mts +4 -4
- package/dist/helpers/MethodDataHelper.d.mts.map +1 -1
- package/dist/helpers/MethodDataHelper.mjs +10 -6
- package/dist/helpers/MethodDataHelper.mjs.map +1 -1
- package/dist/helpers/MultichainTrackingHelper.cjs +0 -2
- package/dist/helpers/MultichainTrackingHelper.cjs.map +1 -1
- package/dist/helpers/MultichainTrackingHelper.d.cts +0 -2
- package/dist/helpers/MultichainTrackingHelper.d.cts.map +1 -1
- package/dist/helpers/MultichainTrackingHelper.d.mts +0 -2
- package/dist/helpers/MultichainTrackingHelper.d.mts.map +1 -1
- package/dist/helpers/MultichainTrackingHelper.mjs +0 -2
- package/dist/helpers/MultichainTrackingHelper.mjs.map +1 -1
- package/dist/helpers/PendingTransactionTracker.cjs +38 -24
- package/dist/helpers/PendingTransactionTracker.cjs.map +1 -1
- package/dist/helpers/PendingTransactionTracker.d.cts +3 -7
- package/dist/helpers/PendingTransactionTracker.d.cts.map +1 -1
- package/dist/helpers/PendingTransactionTracker.d.mts +3 -7
- package/dist/helpers/PendingTransactionTracker.d.mts.map +1 -1
- package/dist/helpers/PendingTransactionTracker.mjs +38 -24
- package/dist/helpers/PendingTransactionTracker.mjs.map +1 -1
- package/dist/hooks/SequentialPublishBatchHook.cjs +4 -6
- package/dist/hooks/SequentialPublishBatchHook.cjs.map +1 -1
- package/dist/hooks/SequentialPublishBatchHook.d.cts +2 -4
- package/dist/hooks/SequentialPublishBatchHook.d.cts.map +1 -1
- package/dist/hooks/SequentialPublishBatchHook.d.mts +2 -4
- package/dist/hooks/SequentialPublishBatchHook.d.mts.map +1 -1
- package/dist/hooks/SequentialPublishBatchHook.mjs +4 -6
- package/dist/hooks/SequentialPublishBatchHook.mjs.map +1 -1
- package/dist/index.cjs +3 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +2 -1
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +2 -1
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/dist/types.cjs.map +1 -1
- package/dist/types.d.cts +14 -3
- package/dist/types.d.cts.map +1 -1
- package/dist/types.d.mts +14 -3
- package/dist/types.d.mts.map +1 -1
- package/dist/types.mjs.map +1 -1
- package/dist/utils/balance-changes.cjs +2 -2
- package/dist/utils/balance-changes.cjs.map +1 -1
- package/dist/utils/balance-changes.d.cts +4 -2
- package/dist/utils/balance-changes.d.cts.map +1 -1
- package/dist/utils/balance-changes.d.mts +4 -2
- package/dist/utils/balance-changes.d.mts.map +1 -1
- package/dist/utils/balance-changes.mjs +2 -2
- package/dist/utils/balance-changes.mjs.map +1 -1
- package/dist/utils/balance.cjs +14 -10
- package/dist/utils/balance.cjs.map +1 -1
- package/dist/utils/balance.d.cts +8 -5
- package/dist/utils/balance.d.cts.map +1 -1
- package/dist/utils/balance.d.mts +8 -5
- package/dist/utils/balance.d.mts.map +1 -1
- package/dist/utils/balance.mjs +14 -10
- package/dist/utils/balance.mjs.map +1 -1
- package/dist/utils/batch.cjs +19 -19
- package/dist/utils/batch.cjs.map +1 -1
- package/dist/utils/batch.d.cts +1 -5
- package/dist/utils/batch.d.cts.map +1 -1
- package/dist/utils/batch.d.mts +1 -5
- package/dist/utils/batch.d.mts.map +1 -1
- package/dist/utils/batch.mjs +20 -20
- package/dist/utils/batch.mjs.map +1 -1
- package/dist/utils/eip7702.cjs +13 -6
- package/dist/utils/eip7702.cjs.map +1 -1
- package/dist/utils/eip7702.d.cts +6 -5
- package/dist/utils/eip7702.d.cts.map +1 -1
- package/dist/utils/eip7702.d.mts +6 -5
- package/dist/utils/eip7702.d.mts.map +1 -1
- package/dist/utils/eip7702.mjs +14 -7
- package/dist/utils/eip7702.mjs.map +1 -1
- package/dist/utils/gas-fee-tokens.cjs +4 -3
- package/dist/utils/gas-fee-tokens.cjs.map +1 -1
- package/dist/utils/gas-fee-tokens.d.cts +6 -4
- package/dist/utils/gas-fee-tokens.d.cts.map +1 -1
- package/dist/utils/gas-fee-tokens.d.mts +6 -4
- package/dist/utils/gas-fee-tokens.d.mts.map +1 -1
- package/dist/utils/gas-fee-tokens.mjs +4 -3
- package/dist/utils/gas-fee-tokens.mjs.map +1 -1
- package/dist/utils/gas-fees.cjs +8 -6
- package/dist/utils/gas-fees.cjs.map +1 -1
- package/dist/utils/gas-fees.d.cts +0 -2
- package/dist/utils/gas-fees.d.cts.map +1 -1
- package/dist/utils/gas-fees.d.mts +0 -2
- package/dist/utils/gas-fees.d.mts.map +1 -1
- package/dist/utils/gas-fees.mjs +9 -7
- package/dist/utils/gas-fees.mjs.map +1 -1
- package/dist/utils/gas.cjs +60 -34
- package/dist/utils/gas.cjs.map +1 -1
- package/dist/utils/gas.d.cts +6 -11
- package/dist/utils/gas.d.cts.map +1 -1
- package/dist/utils/gas.d.mts +6 -11
- package/dist/utils/gas.d.mts.map +1 -1
- package/dist/utils/gas.mjs +61 -35
- package/dist/utils/gas.mjs.map +1 -1
- package/dist/utils/layer1-gas-fee-flow.cjs +7 -3
- package/dist/utils/layer1-gas-fee-flow.cjs.map +1 -1
- package/dist/utils/layer1-gas-fee-flow.d.cts +2 -5
- package/dist/utils/layer1-gas-fee-flow.d.cts.map +1 -1
- package/dist/utils/layer1-gas-fee-flow.d.mts +2 -5
- package/dist/utils/layer1-gas-fee-flow.d.mts.map +1 -1
- package/dist/utils/layer1-gas-fee-flow.mjs +7 -3
- package/dist/utils/layer1-gas-fee-flow.mjs.map +1 -1
- package/dist/utils/provider.cjs +74 -0
- package/dist/utils/provider.cjs.map +1 -0
- package/dist/utils/provider.d.cts +65 -0
- package/dist/utils/provider.d.cts.map +1 -0
- package/dist/utils/provider.d.mts +65 -0
- package/dist/utils/provider.d.mts.map +1 -0
- package/dist/utils/provider.mjs +67 -0
- package/dist/utils/provider.mjs.map +1 -0
- package/dist/utils/swaps.cjs +11 -7
- package/dist/utils/swaps.cjs.map +1 -1
- package/dist/utils/swaps.d.cts +6 -4
- package/dist/utils/swaps.d.cts.map +1 -1
- package/dist/utils/swaps.d.mts +6 -4
- package/dist/utils/swaps.d.mts.map +1 -1
- package/dist/utils/swaps.mjs +11 -7
- package/dist/utils/swaps.mjs.map +1 -1
- package/dist/utils/transaction-type.cjs +17 -8
- package/dist/utils/transaction-type.cjs.map +1 -1
- package/dist/utils/transaction-type.d.cts +9 -3
- package/dist/utils/transaction-type.d.cts.map +1 -1
- package/dist/utils/transaction-type.d.mts +9 -3
- package/dist/utils/transaction-type.d.mts.map +1 -1
- package/dist/utils/transaction-type.mjs +17 -8
- package/dist/utils/transaction-type.mjs.map +1 -1
- package/package.json +7 -6
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,34 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [64.1.0]
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- Export `getAccountAddressRelationship` function and `GetAccountAddressRelationshipRequest` type from the public API ([#8402](https://github.com/MetaMask/core/pull/8402))
|
|
15
|
+
|
|
16
|
+
### Changed
|
|
17
|
+
|
|
18
|
+
- Bump `@metamask/accounts-controller` from `^37.1.1` to `^37.2.0` ([#8363](https://github.com/MetaMask/core/pull/8363))
|
|
19
|
+
- Bump `@metamask/messenger` from `^1.0.0` to `^1.1.1` ([#8364](https://github.com/MetaMask/core/pull/8364), [#8373](https://github.com/MetaMask/core/pull/8373))
|
|
20
|
+
|
|
21
|
+
## [64.0.0]
|
|
22
|
+
|
|
23
|
+
### Changed
|
|
24
|
+
|
|
25
|
+
- Add extra parameters in types and change `addTransaction` behavior ([#8052](https://github.com/MetaMask/core/pull/8052))
|
|
26
|
+
- Add optional `excludeNativeTokenForFee` in `TransactionMeta` type.
|
|
27
|
+
- Add optional `excludeNativeTokenForFee` in `TransactionBatchRequest` type.
|
|
28
|
+
- Add optional `excludeNativeTokenForFee` to `AddTransactionOptions` type.
|
|
29
|
+
- Changed `isGasFeeTokenIgnoredIfBalance` to be false if `excludeNativeTokenForFee` is passed in `addTransaction`.
|
|
30
|
+
- Bump `@metamask/accounts-controller` from `^37.1.0` to `^37.1.1` ([#8325](https://github.com/MetaMask/core/pull/8325))
|
|
31
|
+
- Bump `@metamask/controller-utils` from `^11.19.0` to `^11.20.0` ([#8344](https://github.com/MetaMask/core/pull/8344))
|
|
32
|
+
|
|
33
|
+
### Removed
|
|
34
|
+
|
|
35
|
+
- **BREAKING:** Remove `@metamask/eth-query` dependency and all `EthQuery` usage in favour of messenger-based provider utilities ([#8273](https://github.com/MetaMask/core/pull/8273))
|
|
36
|
+
- Remove `determineTransactionType` from exported functions.
|
|
37
|
+
|
|
10
38
|
## [63.3.1]
|
|
11
39
|
|
|
12
40
|
### Changed
|
|
@@ -2290,7 +2318,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
2290
2318
|
|
|
2291
2319
|
All changes listed after this point were applied to this package following the monorepo conversion.
|
|
2292
2320
|
|
|
2293
|
-
[Unreleased]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@
|
|
2321
|
+
[Unreleased]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@64.1.0...HEAD
|
|
2322
|
+
[64.1.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@64.0.0...@metamask/transaction-controller@64.1.0
|
|
2323
|
+
[64.0.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@63.3.1...@metamask/transaction-controller@64.0.0
|
|
2294
2324
|
[63.3.1]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@63.3.0...@metamask/transaction-controller@63.3.1
|
|
2295
2325
|
[63.3.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@63.2.0...@metamask/transaction-controller@63.3.0
|
|
2296
2326
|
[63.2.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@63.1.0...@metamask/transaction-controller@63.2.0
|
|
@@ -10,15 +10,11 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
10
10
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
11
11
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
12
|
};
|
|
13
|
-
var
|
|
14
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
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_isSimulationEnabled, _TransactionController_isSwapsDisabled, _TransactionController_isTimeoutEnabled, _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_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_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, _TransactionController_defaultPublishHook, _TransactionController_getGasFeeTokens;
|
|
13
|
+
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_isSimulationEnabled, _TransactionController_isSwapsDisabled, _TransactionController_isTimeoutEnabled, _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_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_onIncomingTransactions, _TransactionController_generateDappSuggestedGasFees, _TransactionController_addExternalTransaction, _TransactionController_markNonceDuplicatesDropped, _TransactionController_setTransactionStatusDropped, _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, _TransactionController_defaultPublishHook, _TransactionController_getGasFeeTokens;
|
|
17
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
15
|
exports.TransactionController = exports.ApprovalState = exports.SPEED_UP_RATE = exports.CANCEL_RATE = void 0;
|
|
19
16
|
const base_controller_1 = require("@metamask/base-controller");
|
|
20
17
|
const controller_utils_1 = require("@metamask/controller-utils");
|
|
21
|
-
const eth_query_1 = __importDefault(require("@metamask/eth-query"));
|
|
22
18
|
const network_controller_1 = require("@metamask/network-controller");
|
|
23
19
|
const nonce_tracker_1 = require("@metamask/nonce-tracker");
|
|
24
20
|
const rpc_errors_1 = require("@metamask/rpc-errors");
|
|
@@ -57,6 +53,7 @@ const gas_flow_1 = require("./utils/gas-flow.cjs");
|
|
|
57
53
|
const layer1_gas_fee_flow_1 = require("./utils/layer1-gas-fee-flow.cjs");
|
|
58
54
|
const nonce_1 = require("./utils/nonce.cjs");
|
|
59
55
|
const prepare_1 = require("./utils/prepare.cjs");
|
|
56
|
+
const provider_1 = require("./utils/provider.cjs");
|
|
60
57
|
const retry_1 = require("./utils/retry.cjs");
|
|
61
58
|
const swaps_1 = require("./utils/swaps.cjs");
|
|
62
59
|
const transaction_type_1 = require("./utils/transaction-type.cjs");
|
|
@@ -290,10 +287,8 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
290
287
|
__classPrivateFieldSet(this, _TransactionController_gasFeeFlows, __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getGasFeeFlows).call(this), "f");
|
|
291
288
|
__classPrivateFieldSet(this, _TransactionController_layer1GasFeeFlows, __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getLayer1GasFeeFlows).call(this), "f");
|
|
292
289
|
const gasFeePoller = new GasFeePoller_1.GasFeePoller({
|
|
293
|
-
findNetworkClientIdByChainId,
|
|
294
290
|
gasFeeFlows: __classPrivateFieldGet(this, _TransactionController_gasFeeFlows, "f"),
|
|
295
291
|
getGasFeeControllerEstimates: __classPrivateFieldGet(this, _TransactionController_getGasFeeEstimates, "f"),
|
|
296
|
-
getProvider: (networkClientId) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getProvider).call(this, { networkClientId }),
|
|
297
292
|
getTransactions: () => this.state.transactions,
|
|
298
293
|
getTransactionBatches: () => this.state.transactionBatches,
|
|
299
294
|
layer1GasFeeFlows: __classPrivateFieldGet(this, _TransactionController_layer1GasFeeFlows, "f"),
|
|
@@ -305,7 +300,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
305
300
|
gasFeePoller.hub.on('transaction-updated', __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_onGasFeePollerTransactionUpdate).bind(this));
|
|
306
301
|
gasFeePoller.hub.on('transaction-batch-updated', __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_onGasFeePollerTransactionBatchUpdate).bind(this));
|
|
307
302
|
__classPrivateFieldSet(this, _TransactionController_methodDataHelper, new MethodDataHelper_1.MethodDataHelper({
|
|
308
|
-
|
|
303
|
+
messenger: this.messenger,
|
|
309
304
|
getState: () => this.state.methodData,
|
|
310
305
|
}), "f");
|
|
311
306
|
__classPrivateFieldGet(this, _TransactionController_methodDataHelper, "f").hub.on('update', ({ fourBytePrefix, methodData }) => {
|
|
@@ -367,15 +362,11 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
367
362
|
return await (0, batch_1.addTransactionBatch)({
|
|
368
363
|
addTransaction: this.addTransaction.bind(this),
|
|
369
364
|
estimateGas: this.estimateGas.bind(this),
|
|
370
|
-
getChainId: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getChainId).bind(this),
|
|
371
|
-
getEthQuery: (networkClientId) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { networkClientId }),
|
|
372
365
|
getGasFeeEstimates: __classPrivateFieldGet(this, _TransactionController_getGasFeeEstimates, "f"),
|
|
373
366
|
getInternalAccounts: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getInternalAccounts).bind(this),
|
|
374
367
|
getSimulationConfig: __classPrivateFieldGet(this, _TransactionController_getSimulationConfig, "f").bind(this),
|
|
375
368
|
getPendingTransactionTracker: (networkClientId) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_createPendingTransactionTracker).call(this, {
|
|
376
|
-
provider: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getProvider).call(this, { networkClientId }),
|
|
377
369
|
blockTracker,
|
|
378
|
-
chainId: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getChainId).call(this, networkClientId),
|
|
379
370
|
networkClientId,
|
|
380
371
|
}),
|
|
381
372
|
getTransaction: (transactionId) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getTransactionOrThrow).call(this, transactionId),
|
|
@@ -383,7 +374,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
383
374
|
messenger: this.messenger,
|
|
384
375
|
publishBatchHook: __classPrivateFieldGet(this, _TransactionController_publishBatchHook, "f"),
|
|
385
376
|
publicKeyEIP7702: __classPrivateFieldGet(this, _TransactionController_publicKeyEIP7702, "f"),
|
|
386
|
-
publishTransaction: (
|
|
377
|
+
publishTransaction: (transactionMeta) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransaction).call(this, transactionMeta),
|
|
387
378
|
request,
|
|
388
379
|
signTransaction: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_signTransaction).bind(this),
|
|
389
380
|
update: this.update.bind(this),
|
|
@@ -399,7 +390,6 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
399
390
|
async isAtomicBatchSupported(request) {
|
|
400
391
|
return (0, batch_1.isAtomicBatchSupported)({
|
|
401
392
|
...request,
|
|
402
|
-
getEthQuery: (chainId) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { chainId }),
|
|
403
393
|
messenger: this.messenger,
|
|
404
394
|
publicKeyEIP7702: __classPrivateFieldGet(this, _TransactionController_publicKeyEIP7702, "f"),
|
|
405
395
|
});
|
|
@@ -415,16 +405,13 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
415
405
|
*/
|
|
416
406
|
async addTransaction(txParams, options) {
|
|
417
407
|
(0, logger_1.projectLogger)('Adding transaction', txParams, options);
|
|
418
|
-
const { actionId, assetsFiatValues, batchId, deviceConfirmedOn, disableGasBuffer, gasFeeToken, isGasFeeIncluded, isGasFeeSponsored, isStateOnly, method, nestedTransactions, networkClientId, origin, publishHook, requestId, requiredAssets, requireApproval, securityAlertResponse, skipInitialGasEstimate, swaps = {}, traceContext, type, } = options;
|
|
408
|
+
const { actionId, assetsFiatValues, batchId, deviceConfirmedOn, disableGasBuffer, gasFeeToken, excludeNativeTokenForFee, isGasFeeIncluded, isGasFeeSponsored, isStateOnly, method, nestedTransactions, networkClientId, origin, publishHook, requestId, requiredAssets, requireApproval, securityAlertResponse, skipInitialGasEstimate, swaps = {}, traceContext, type, } = options;
|
|
419
409
|
// eslint-disable-next-line no-param-reassign
|
|
420
410
|
txParams = (0, utils_2.normalizeTransactionParams)(txParams);
|
|
421
411
|
if (!__classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").has(networkClientId)) {
|
|
422
412
|
throw new Error(`Network client not found - ${networkClientId}`);
|
|
423
413
|
}
|
|
424
|
-
const chainId =
|
|
425
|
-
const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, {
|
|
426
|
-
networkClientId,
|
|
427
|
-
});
|
|
414
|
+
const chainId = (0, provider_1.getChainId)({ messenger: this.messenger, networkClientId });
|
|
428
415
|
const permittedAddresses = origin === undefined
|
|
429
416
|
? undefined
|
|
430
417
|
: await __classPrivateFieldGet(this, _TransactionController_getPermittedAccounts, "f")?.call(this, origin);
|
|
@@ -438,7 +425,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
438
425
|
txParams,
|
|
439
426
|
type,
|
|
440
427
|
});
|
|
441
|
-
const delegationAddressPromise = (0, eip7702_1.getDelegationAddress)(txParams.from,
|
|
428
|
+
const delegationAddressPromise = (0, eip7702_1.getDelegationAddress)(txParams.from, this.messenger, networkClientId).catch(() => undefined);
|
|
442
429
|
const isEIP1559Compatible = await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEIP1559Compatibility).call(this, networkClientId);
|
|
443
430
|
(0, validation_1.validateTxParams)(txParams, isEIP1559Compatible, chainId);
|
|
444
431
|
if (!txParams.type) {
|
|
@@ -451,7 +438,17 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
451
438
|
throw new rpc_errors_1.JsonRpcError(validation_1.ErrorCode.DuplicateBundleId, 'Batch ID already exists');
|
|
452
439
|
}
|
|
453
440
|
const dappSuggestedGasFees = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_generateDappSuggestedGasFees).call(this, txParams, origin);
|
|
454
|
-
const transactionType = type ??
|
|
441
|
+
const transactionType = type ??
|
|
442
|
+
(await (0, transaction_type_1.determineTransactionType)(txParams, {
|
|
443
|
+
messenger: this.messenger,
|
|
444
|
+
networkClientId,
|
|
445
|
+
})).type;
|
|
446
|
+
/**
|
|
447
|
+
* Original behavior was that this was set to 'true' whenever a gasFeeToken was passed.
|
|
448
|
+
* 'excludeNativeTokenForFee' optionally overrides this behavior to prevent native token from
|
|
449
|
+
* being used when another gasFeeToken is set.
|
|
450
|
+
*/
|
|
451
|
+
const isGasFeeTokenIgnoredIfBalance = Boolean(gasFeeToken) && !excludeNativeTokenForFee;
|
|
455
452
|
let addedTransactionMeta = {
|
|
456
453
|
actionId,
|
|
457
454
|
assetsFiatValues,
|
|
@@ -461,9 +458,13 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
461
458
|
deviceConfirmedOn,
|
|
462
459
|
disableGasBuffer,
|
|
463
460
|
id: (0, uuid_1.v1)(),
|
|
464
|
-
isGasFeeTokenIgnoredIfBalance
|
|
461
|
+
isGasFeeTokenIgnoredIfBalance,
|
|
465
462
|
isGasFeeIncluded,
|
|
466
463
|
isGasFeeSponsored,
|
|
464
|
+
// To avoid the property to be set as undefined.
|
|
465
|
+
...(excludeNativeTokenForFee === undefined
|
|
466
|
+
? {}
|
|
467
|
+
: { excludeNativeTokenForFee }),
|
|
467
468
|
isFirstTimeInteraction: undefined,
|
|
468
469
|
isStateOnly,
|
|
469
470
|
nestedTransactions,
|
|
@@ -655,16 +656,12 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
655
656
|
* @returns The gas and gas price.
|
|
656
657
|
*/
|
|
657
658
|
async estimateGas(transaction, networkClientId, { ignoreDelegationSignatures, } = {}) {
|
|
658
|
-
const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, {
|
|
659
|
-
networkClientId,
|
|
660
|
-
});
|
|
661
659
|
const { estimatedGas, simulationFails } = await (0, gas_1.estimateGas)({
|
|
662
|
-
chainId: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getChainId).call(this, networkClientId),
|
|
663
|
-
ethQuery,
|
|
664
660
|
ignoreDelegationSignatures,
|
|
665
661
|
isSimulationEnabled: __classPrivateFieldGet(this, _TransactionController_isSimulationEnabled, "f").call(this),
|
|
666
662
|
getSimulationConfig: __classPrivateFieldGet(this, _TransactionController_getSimulationConfig, "f"),
|
|
667
663
|
messenger: this.messenger,
|
|
664
|
+
networkClientId,
|
|
668
665
|
txParams: transaction,
|
|
669
666
|
});
|
|
670
667
|
return { gas: estimatedGas, simulationFails };
|
|
@@ -679,16 +676,15 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
679
676
|
* @returns Object containing the gas limit.
|
|
680
677
|
*/
|
|
681
678
|
async estimateGasBatch({ chainId, from, transactions, }) {
|
|
682
|
-
const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, {
|
|
683
|
-
chainId,
|
|
684
|
-
});
|
|
685
679
|
return (0, gas_1.estimateGasBatch)({
|
|
686
|
-
chainId,
|
|
687
|
-
ethQuery,
|
|
688
680
|
from,
|
|
689
681
|
getSimulationConfig: __classPrivateFieldGet(this, _TransactionController_getSimulationConfig, "f"),
|
|
690
682
|
isAtomicBatchSupported: this.isAtomicBatchSupported.bind(this),
|
|
691
683
|
messenger: this.messenger,
|
|
684
|
+
networkClientId: (0, provider_1.getNetworkClientId)({
|
|
685
|
+
messenger: this.messenger,
|
|
686
|
+
chainId,
|
|
687
|
+
}),
|
|
692
688
|
transactions,
|
|
693
689
|
});
|
|
694
690
|
}
|
|
@@ -701,15 +697,11 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
701
697
|
* @returns The buffered estimated gas and whether the estimation failed.
|
|
702
698
|
*/
|
|
703
699
|
async estimateGasBuffered(transaction, multiplier, networkClientId) {
|
|
704
|
-
const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, {
|
|
705
|
-
networkClientId,
|
|
706
|
-
});
|
|
707
700
|
const { blockGasLimit, estimatedGas, simulationFails } = await (0, gas_1.estimateGas)({
|
|
708
|
-
chainId: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getChainId).call(this, networkClientId),
|
|
709
|
-
ethQuery,
|
|
710
701
|
isSimulationEnabled: __classPrivateFieldGet(this, _TransactionController_isSimulationEnabled, "f").call(this),
|
|
711
702
|
getSimulationConfig: __classPrivateFieldGet(this, _TransactionController_getSimulationConfig, "f"),
|
|
712
703
|
messenger: this.messenger,
|
|
704
|
+
networkClientId,
|
|
713
705
|
txParams: transaction,
|
|
714
706
|
});
|
|
715
707
|
const gas = (0, gas_1.addGasBuffer)(estimatedGas, blockGasLimit, multiplier);
|
|
@@ -989,10 +981,11 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
989
981
|
editableParams.txParams = (0, lodash_1.pickBy)(editableParams.txParams);
|
|
990
982
|
const updatedTransaction = (0, lodash_1.merge)({}, transactionMeta, editableParams);
|
|
991
983
|
const { networkClientId } = transactionMeta;
|
|
992
|
-
const provider = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getProvider).call(this, { networkClientId });
|
|
993
|
-
const ethQuery = new eth_query_1.default(provider);
|
|
994
984
|
if (updateType !== false) {
|
|
995
|
-
const { type } = await (0, transaction_type_1.determineTransactionType)(updatedTransaction.txParams,
|
|
985
|
+
const { type } = await (0, transaction_type_1.determineTransactionType)(updatedTransaction.txParams, {
|
|
986
|
+
messenger: this.messenger,
|
|
987
|
+
networkClientId,
|
|
988
|
+
});
|
|
996
989
|
updatedTransaction.type = type;
|
|
997
990
|
}
|
|
998
991
|
if (containerTypes) {
|
|
@@ -1001,7 +994,6 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
1001
994
|
await (0, layer1_gas_fee_flow_1.updateTransactionLayer1GasFee)({
|
|
1002
995
|
layer1GasFeeFlows: __classPrivateFieldGet(this, _TransactionController_layer1GasFeeFlows, "f"),
|
|
1003
996
|
messenger: this.messenger,
|
|
1004
|
-
provider,
|
|
1005
997
|
transactionMeta: updatedTransaction,
|
|
1006
998
|
});
|
|
1007
999
|
this.updateTransaction(updatedTransaction, `Update Editable Params for ${txId}`);
|
|
@@ -1043,7 +1035,10 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
1043
1035
|
}
|
|
1044
1036
|
const initialTx = listOfTxParams[0];
|
|
1045
1037
|
const { chainId } = initialTx;
|
|
1046
|
-
const networkClientId =
|
|
1038
|
+
const networkClientId = (0, provider_1.getNetworkClientId)({
|
|
1039
|
+
messenger: this.messenger,
|
|
1040
|
+
chainId,
|
|
1041
|
+
});
|
|
1047
1042
|
const initialTxAsEthTx = (0, prepare_1.prepareTransaction)(chainId, initialTx);
|
|
1048
1043
|
const initialTxAsSerializedHex = (0, prepare_1.serializeTransaction)(initialTxAsEthTx);
|
|
1049
1044
|
if (__classPrivateFieldGet(this, _TransactionController_approvingTransactionIds, "f").has(initialTxAsSerializedHex)) {
|
|
@@ -1222,7 +1217,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
1222
1217
|
* @returns A promise that resolves to the estimated gas fee response.
|
|
1223
1218
|
*/
|
|
1224
1219
|
async estimateGasFee({ transactionParams, chainId, networkClientId: requestNetworkClientId, }) {
|
|
1225
|
-
const { id: networkClientId
|
|
1220
|
+
const { id: networkClientId } = __classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").getNetworkClient({
|
|
1226
1221
|
chainId,
|
|
1227
1222
|
networkClientId: requestNetworkClientId,
|
|
1228
1223
|
});
|
|
@@ -1233,12 +1228,10 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
1233
1228
|
};
|
|
1234
1229
|
// Guaranteed as the default gas fee flow matches all transactions.
|
|
1235
1230
|
const gasFeeFlow = (0, gas_flow_1.getGasFeeFlow)(transactionMeta, __classPrivateFieldGet(this, _TransactionController_gasFeeFlows, "f"), this.messenger);
|
|
1236
|
-
const ethQuery = new eth_query_1.default(provider);
|
|
1237
1231
|
const gasFeeControllerData = await __classPrivateFieldGet(this, _TransactionController_getGasFeeEstimates, "f").call(this, {
|
|
1238
1232
|
networkClientId,
|
|
1239
1233
|
});
|
|
1240
1234
|
return gasFeeFlow.getGasFees({
|
|
1241
|
-
ethQuery,
|
|
1242
1235
|
gasFeeControllerData,
|
|
1243
1236
|
messenger: this.messenger,
|
|
1244
1237
|
transactionMeta,
|
|
@@ -1254,17 +1247,18 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
1254
1247
|
* @returns The layer 1 gas fee.
|
|
1255
1248
|
*/
|
|
1256
1249
|
async getLayer1GasFee({ transactionParams, chainId, networkClientId, }) {
|
|
1257
|
-
const
|
|
1250
|
+
const resolvedNetworkClientId = (0, provider_1.getNetworkClientId)({
|
|
1251
|
+
messenger: this.messenger,
|
|
1258
1252
|
chainId,
|
|
1259
1253
|
networkClientId,
|
|
1260
1254
|
});
|
|
1261
1255
|
return await (0, layer1_gas_fee_flow_1.getTransactionLayer1GasFee)({
|
|
1262
1256
|
layer1GasFeeFlows: __classPrivateFieldGet(this, _TransactionController_layer1GasFeeFlows, "f"),
|
|
1263
1257
|
messenger: this.messenger,
|
|
1264
|
-
provider,
|
|
1265
1258
|
transactionMeta: {
|
|
1266
1259
|
txParams: transactionParams,
|
|
1267
1260
|
chainId,
|
|
1261
|
+
networkClientId: resolvedNetworkClientId,
|
|
1268
1262
|
},
|
|
1269
1263
|
});
|
|
1270
1264
|
}
|
|
@@ -1441,8 +1435,11 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
1441
1435
|
*/
|
|
1442
1436
|
async getGasFeeTokens(request) {
|
|
1443
1437
|
const { chainId, data, from, to, value } = request;
|
|
1444
|
-
const
|
|
1445
|
-
|
|
1438
|
+
const networkClientId = (0, provider_1.getNetworkClientId)({
|
|
1439
|
+
messenger: this.messenger,
|
|
1440
|
+
chainId,
|
|
1441
|
+
});
|
|
1442
|
+
const delegationAddress = await (0, eip7702_1.getDelegationAddress)(from, this.messenger, networkClientId);
|
|
1446
1443
|
const transaction = {
|
|
1447
1444
|
chainId,
|
|
1448
1445
|
delegationAddress,
|
|
@@ -1491,8 +1488,6 @@ _TransactionController_afterAdd = new WeakMap(), _TransactionController_afterSig
|
|
|
1491
1488
|
newFee,
|
|
1492
1489
|
txParams: newTxParams,
|
|
1493
1490
|
});
|
|
1494
|
-
const { networkClientId } = transactionMeta;
|
|
1495
|
-
const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { networkClientId });
|
|
1496
1491
|
const newTransactionMeta = {
|
|
1497
1492
|
...transactionMetaWithRsv,
|
|
1498
1493
|
actionId,
|
|
@@ -1505,7 +1500,7 @@ _TransactionController_afterAdd = new WeakMap(), _TransactionController_afterSig
|
|
|
1505
1500
|
txParams: newTxParams,
|
|
1506
1501
|
type: transactionType,
|
|
1507
1502
|
};
|
|
1508
|
-
const hash = await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransactionForRetry).call(this,
|
|
1503
|
+
const hash = await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransactionForRetry).call(this, {
|
|
1509
1504
|
...newTransactionMeta,
|
|
1510
1505
|
origin: label,
|
|
1511
1506
|
});
|
|
@@ -1551,15 +1546,11 @@ _TransactionController_afterAdd = new WeakMap(), _TransactionController_afterSig
|
|
|
1551
1546
|
}, _TransactionController_updateGasProperties = async function _TransactionController_updateGasProperties(transactionMeta, { traceContext } = {}) {
|
|
1552
1547
|
const isEIP1559Compatible = transactionMeta.txParams.type !== types_1.TransactionEnvelopeType.legacy &&
|
|
1553
1548
|
(await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEIP1559Compatibility).call(this, transactionMeta.networkClientId));
|
|
1554
|
-
const { networkClientId } = transactionMeta;
|
|
1555
|
-
const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { networkClientId });
|
|
1556
|
-
const provider = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getProvider).call(this, { networkClientId });
|
|
1557
1549
|
await __classPrivateFieldGet(this, _TransactionController_trace, "f").call(this, { name: 'Update Gas', parentContext: traceContext }, async () => {
|
|
1558
1550
|
await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_updateGasEstimate).call(this, transactionMeta);
|
|
1559
1551
|
});
|
|
1560
1552
|
await __classPrivateFieldGet(this, _TransactionController_trace, "f").call(this, { name: 'Update Gas Fees', parentContext: traceContext }, async () => await (0, gas_fees_1.updateGasFees)({
|
|
1561
1553
|
eip1559: isEIP1559Compatible,
|
|
1562
|
-
ethQuery,
|
|
1563
1554
|
gasFeeFlows: __classPrivateFieldGet(this, _TransactionController_gasFeeFlows, "f"),
|
|
1564
1555
|
getGasFeeEstimates: __classPrivateFieldGet(this, _TransactionController_getGasFeeEstimates, "f"),
|
|
1565
1556
|
getSavedGasFees: __classPrivateFieldGet(this, _TransactionController_getSavedGasFees, "f").bind(this),
|
|
@@ -1569,7 +1560,6 @@ _TransactionController_afterAdd = new WeakMap(), _TransactionController_afterSig
|
|
|
1569
1560
|
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)({
|
|
1570
1561
|
layer1GasFeeFlows: __classPrivateFieldGet(this, _TransactionController_layer1GasFeeFlows, "f"),
|
|
1571
1562
|
messenger: this.messenger,
|
|
1572
|
-
provider,
|
|
1573
1563
|
transactionMeta,
|
|
1574
1564
|
}));
|
|
1575
1565
|
}, _TransactionController_onBootCleanup = function _TransactionController_onBootCleanup() {
|
|
@@ -1710,7 +1700,6 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
1710
1700
|
__classPrivateFieldGet(this, _TransactionController_approvingTransactionIds, "f").add(transactionId);
|
|
1711
1701
|
clearApprovingTransactionId = () => __classPrivateFieldGet(this, _TransactionController_approvingTransactionIds, "f").delete(transactionId);
|
|
1712
1702
|
const { networkClientId } = transactionMeta;
|
|
1713
|
-
const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { networkClientId });
|
|
1714
1703
|
const [nonce, releaseNonce] = await (0, nonce_1.getNextNonce)(transactionMeta, (address) => __classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").getNonceLock(address, transactionMeta.networkClientId));
|
|
1715
1704
|
clearNonceLock = releaseNonce;
|
|
1716
1705
|
// eslint-disable-next-line require-atomic-updates
|
|
@@ -1743,15 +1732,18 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
1743
1732
|
const shouldUpdatePreTxBalance = transactionMeta.type === types_1.TransactionType.swap;
|
|
1744
1733
|
if (shouldUpdatePreTxBalance) {
|
|
1745
1734
|
(0, logger_1.projectLogger)('Determining pre-transaction balance');
|
|
1746
|
-
preTxBalance = await (0,
|
|
1747
|
-
|
|
1748
|
-
|
|
1735
|
+
preTxBalance = (await (0, provider_1.rpcRequest)({
|
|
1736
|
+
messenger: this.messenger,
|
|
1737
|
+
networkClientId,
|
|
1738
|
+
method: 'eth_getBalance',
|
|
1739
|
+
params: [transactionMeta.txParams.from, 'latest'],
|
|
1740
|
+
}));
|
|
1749
1741
|
}
|
|
1750
1742
|
(0, logger_1.projectLogger)('Publishing transaction', transactionMeta.txParams);
|
|
1751
1743
|
clearNonceLock?.();
|
|
1752
1744
|
clearNonceLock = undefined;
|
|
1753
1745
|
let publishHook = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_defaultPublishHook).bind(this, {
|
|
1754
|
-
|
|
1746
|
+
networkClientId,
|
|
1755
1747
|
publishHookOverride,
|
|
1756
1748
|
traceContext,
|
|
1757
1749
|
});
|
|
@@ -1795,11 +1787,18 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
1795
1787
|
clearApprovingTransactionId?.();
|
|
1796
1788
|
clearNonceLock?.();
|
|
1797
1789
|
}
|
|
1798
|
-
}, _TransactionController_publishTransaction = async function _TransactionController_publishTransaction(
|
|
1790
|
+
}, _TransactionController_publishTransaction = async function _TransactionController_publishTransaction(transactionMeta, { skipSubmitHistory } = {}) {
|
|
1799
1791
|
try {
|
|
1800
|
-
const
|
|
1801
|
-
|
|
1802
|
-
|
|
1792
|
+
const { networkClientId, rawTx } = transactionMeta;
|
|
1793
|
+
if (!rawTx) {
|
|
1794
|
+
throw new Error('Missing raw transaction');
|
|
1795
|
+
}
|
|
1796
|
+
const transactionHash = (await (0, provider_1.rpcRequest)({
|
|
1797
|
+
messenger: this.messenger,
|
|
1798
|
+
networkClientId,
|
|
1799
|
+
method: 'eth_sendRawTransaction',
|
|
1800
|
+
params: [rawTx],
|
|
1801
|
+
}));
|
|
1803
1802
|
if (skipSubmitHistory !== true) {
|
|
1804
1803
|
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_updateSubmitHistory).call(this, transactionMeta, transactionHash);
|
|
1805
1804
|
}
|
|
@@ -1897,23 +1896,6 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
1897
1896
|
}
|
|
1898
1897
|
const isCompleted = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_isLocalFinalState).call(this, transaction.status);
|
|
1899
1898
|
return { meta: transaction, isCompleted };
|
|
1900
|
-
}, _TransactionController_getChainId = function _TransactionController_getChainId(networkClientId) {
|
|
1901
|
-
return __classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").getNetworkClient({ networkClientId })
|
|
1902
|
-
.configuration.chainId;
|
|
1903
|
-
}, _TransactionController_getNetworkClientId = function _TransactionController_getNetworkClientId({ chainId, networkClientId, }) {
|
|
1904
|
-
if (networkClientId) {
|
|
1905
|
-
return networkClientId;
|
|
1906
|
-
}
|
|
1907
|
-
return __classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").getNetworkClient({
|
|
1908
|
-
chainId,
|
|
1909
|
-
}).id;
|
|
1910
|
-
}, _TransactionController_getEthQuery = function _TransactionController_getEthQuery({ chainId, networkClientId, }) {
|
|
1911
|
-
return new eth_query_1.default(__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getProvider).call(this, { chainId, networkClientId }));
|
|
1912
|
-
}, _TransactionController_getProvider = function _TransactionController_getProvider({ chainId, networkClientId, }) {
|
|
1913
|
-
return __classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").getNetworkClient({
|
|
1914
|
-
chainId,
|
|
1915
|
-
networkClientId,
|
|
1916
|
-
}).provider;
|
|
1917
1899
|
}, _TransactionController_onIncomingTransactions = function _TransactionController_onIncomingTransactions(transactions) {
|
|
1918
1900
|
if (!transactions.length) {
|
|
1919
1901
|
return;
|
|
@@ -1922,7 +1904,10 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
1922
1904
|
for (const tx of transactions) {
|
|
1923
1905
|
const { chainId } = tx;
|
|
1924
1906
|
try {
|
|
1925
|
-
const networkClientId =
|
|
1907
|
+
const networkClientId = (0, provider_1.getNetworkClientId)({
|
|
1908
|
+
messenger: this.messenger,
|
|
1909
|
+
chainId,
|
|
1910
|
+
});
|
|
1926
1911
|
finalTransactions.push({
|
|
1927
1912
|
...tx,
|
|
1928
1913
|
networkClientId,
|
|
@@ -2058,9 +2043,9 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
2058
2043
|
}
|
|
2059
2044
|
transactionMeta = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getTransactionOrThrow).call(this, transactionId);
|
|
2060
2045
|
const { networkClientId } = transactionMeta;
|
|
2061
|
-
const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { networkClientId });
|
|
2062
2046
|
await (0, gas_fee_tokens_1.checkGasFeeTokenBeforePublish)({
|
|
2063
|
-
|
|
2047
|
+
messenger: this.messenger,
|
|
2048
|
+
networkClientId,
|
|
2064
2049
|
fetchGasFeeTokens: async (tx) => (await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getGasFeeTokens).call(this, tx)).gasFeeTokens,
|
|
2065
2050
|
transaction: transactionMeta,
|
|
2066
2051
|
updateTransaction: (txId, fn) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_updateTransactionInternal).call(this, { transactionId: txId }, fn),
|
|
@@ -2138,9 +2123,9 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
2138
2123
|
if (type !== types_1.TransactionType.swap) {
|
|
2139
2124
|
return;
|
|
2140
2125
|
}
|
|
2141
|
-
const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { networkClientId });
|
|
2142
2126
|
const { updatedTransactionMeta, approvalTransactionMeta } = await (0, swaps_1.updatePostTransactionBalance)(transactionMeta, {
|
|
2143
|
-
|
|
2127
|
+
messenger: this.messenger,
|
|
2128
|
+
networkClientId,
|
|
2144
2129
|
getTransaction: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getTransaction).bind(this),
|
|
2145
2130
|
updateTransaction: this.updateTransaction.bind(this),
|
|
2146
2131
|
});
|
|
@@ -2163,16 +2148,13 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
2163
2148
|
getPendingTransactions: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getNonceTrackerPendingTransactions).bind(this, chainId),
|
|
2164
2149
|
getConfirmedTransactions: __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getNonceTrackerTransactions).bind(this, [types_1.TransactionStatus.confirmed], chainId),
|
|
2165
2150
|
});
|
|
2166
|
-
}, _TransactionController_createPendingTransactionTracker = function _TransactionController_createPendingTransactionTracker({
|
|
2167
|
-
const
|
|
2151
|
+
}, _TransactionController_createPendingTransactionTracker = function _TransactionController_createPendingTransactionTracker({ blockTracker, networkClientId, }) {
|
|
2152
|
+
const chainId = (0, provider_1.getChainId)({ messenger: this.messenger, networkClientId });
|
|
2168
2153
|
const pendingTransactionTracker = new PendingTransactionTracker_1.PendingTransactionTracker({
|
|
2169
2154
|
blockTracker,
|
|
2170
|
-
getChainId: () => chainId,
|
|
2171
|
-
getEthQuery: () => ethQuery,
|
|
2172
2155
|
getGlobalLock: () => __classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").acquireNonceLockForChainIdKey({
|
|
2173
2156
|
chainId,
|
|
2174
2157
|
}),
|
|
2175
|
-
getNetworkClientId: () => networkClientId,
|
|
2176
2158
|
getTransactions: () => this.state.transactions,
|
|
2177
2159
|
hooks: {
|
|
2178
2160
|
beforeCheckPendingTransaction: __classPrivateFieldGet(this, _TransactionController_beforeCheckPendingTransaction, "f").bind(this),
|
|
@@ -2180,7 +2162,8 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
2180
2162
|
isResubmitEnabled: __classPrivateFieldGet(this, _TransactionController_pendingTransactionOptions, "f").isResubmitEnabled,
|
|
2181
2163
|
isTimeoutEnabled: __classPrivateFieldGet(this, _TransactionController_isTimeoutEnabled, "f"),
|
|
2182
2164
|
messenger: this.messenger,
|
|
2183
|
-
|
|
2165
|
+
networkClientId,
|
|
2166
|
+
publishTransaction: (transactionMeta) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransaction).call(this, transactionMeta, {
|
|
2184
2167
|
skipSubmitHistory: true,
|
|
2185
2168
|
}),
|
|
2186
2169
|
});
|
|
@@ -2208,9 +2191,9 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
2208
2191
|
], address, chainId);
|
|
2209
2192
|
const externalPendingTransactions = __classPrivateFieldGet(this, _TransactionController_getExternalPendingTransactions, "f").call(this, address, chainId);
|
|
2210
2193
|
return [...standardPendingTransactions, ...externalPendingTransactions];
|
|
2211
|
-
}, _TransactionController_publishTransactionForRetry = async function _TransactionController_publishTransactionForRetry(
|
|
2194
|
+
}, _TransactionController_publishTransactionForRetry = async function _TransactionController_publishTransactionForRetry(transactionMeta) {
|
|
2212
2195
|
try {
|
|
2213
|
-
return await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransaction).call(this,
|
|
2196
|
+
return await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransaction).call(this, transactionMeta);
|
|
2214
2197
|
}
|
|
2215
2198
|
catch (error) {
|
|
2216
2199
|
if (__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_isTransactionAlreadyConfirmedError).call(this, error)) {
|
|
@@ -2278,7 +2261,8 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
2278
2261
|
const balanceChangesResult = await __classPrivateFieldGet(this, _TransactionController_trace, "f").call(this, { name: 'Simulate', parentContext: traceContext }, () => (0, balance_changes_1.getBalanceChanges)({
|
|
2279
2262
|
blockTime,
|
|
2280
2263
|
chainId,
|
|
2281
|
-
|
|
2264
|
+
messenger: this.messenger,
|
|
2265
|
+
networkClientId,
|
|
2282
2266
|
getSimulationConfig: (url, opts) => {
|
|
2283
2267
|
return __classPrivateFieldGet(this, _TransactionController_getSimulationConfig, "f").call(this, url, {
|
|
2284
2268
|
txMeta: transactionMeta,
|
|
@@ -2379,13 +2363,10 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
2379
2363
|
submitHistory.unshift(submitHistoryEntry);
|
|
2380
2364
|
});
|
|
2381
2365
|
}, _TransactionController_updateGasEstimate = async function _TransactionController_updateGasEstimate(transactionMeta) {
|
|
2382
|
-
const {
|
|
2366
|
+
const { networkClientId } = transactionMeta;
|
|
2383
2367
|
const isCustomNetwork = __classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").getNetworkClient({ networkClientId })
|
|
2384
2368
|
.configuration.type === network_controller_1.NetworkClientType.Custom;
|
|
2385
|
-
const ethQuery = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getEthQuery).call(this, { networkClientId });
|
|
2386
2369
|
await (0, gas_1.updateGas)({
|
|
2387
|
-
chainId,
|
|
2388
|
-
ethQuery,
|
|
2389
2370
|
isCustomNetwork,
|
|
2390
2371
|
isSimulationEnabled: __classPrivateFieldGet(this, _TransactionController_isSimulationEnabled, "f").call(this),
|
|
2391
2372
|
getSimulationConfig: __classPrivateFieldGet(this, _TransactionController_getSimulationConfig, "f"),
|
|
@@ -2464,14 +2445,15 @@ async function _TransactionController_approveTransaction(transactionId, traceCon
|
|
|
2464
2445
|
updateTransaction(txMeta);
|
|
2465
2446
|
});
|
|
2466
2447
|
(0, logger_1.projectLogger)('Updated transaction with afterSimulate data', updatedTransactionMeta);
|
|
2467
|
-
}, _TransactionController_defaultPublishHook = async function _TransactionController_defaultPublishHook({
|
|
2448
|
+
}, _TransactionController_defaultPublishHook = async function _TransactionController_defaultPublishHook({ networkClientId, publishHookOverride, traceContext, }, transactionMeta, signedTx) {
|
|
2468
2449
|
let transactionHash;
|
|
2469
2450
|
await __classPrivateFieldGet(this, _TransactionController_trace, "f").call(this, { name: 'Publish', parentContext: traceContext }, async () => {
|
|
2470
2451
|
const publishHook = publishHookOverride ?? __classPrivateFieldGet(this, _TransactionController_publish, "f");
|
|
2471
2452
|
({ transactionHash } = await publishHook(transactionMeta, signedTx));
|
|
2472
2453
|
// eslint-disable-next-line require-atomic-updates
|
|
2473
|
-
transactionHash ?? (transactionHash = await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransaction).call(this,
|
|
2454
|
+
transactionHash ?? (transactionHash = await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_publishTransaction).call(this, {
|
|
2474
2455
|
...transactionMeta,
|
|
2456
|
+
networkClientId,
|
|
2475
2457
|
rawTx: signedTx,
|
|
2476
2458
|
}));
|
|
2477
2459
|
});
|