@metamask-previews/transaction-controller 62.6.0-preview-565dfca2 → 62.7.0-preview-c208c1a
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 +10 -2
- package/dist/TransactionController.cjs +3 -41
- 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 +3 -41
- package/dist/TransactionController.mjs.map +1 -1
- package/dist/helpers/PendingTransactionTracker.cjs +1 -3
- package/dist/helpers/PendingTransactionTracker.cjs.map +1 -1
- package/dist/helpers/PendingTransactionTracker.d.cts.map +1 -1
- package/dist/helpers/PendingTransactionTracker.d.mts.map +1 -1
- package/dist/helpers/PendingTransactionTracker.mjs +1 -3
- package/dist/helpers/PendingTransactionTracker.mjs.map +1 -1
- package/dist/types.cjs.map +1 -1
- package/dist/types.d.cts +12 -0
- package/dist/types.d.cts.map +1 -1
- package/dist/types.d.mts +12 -0
- package/dist/types.d.mts.map +1 -1
- package/dist/types.mjs.map +1 -1
- package/dist/utils/batch.cjs +2 -1
- package/dist/utils/batch.cjs.map +1 -1
- package/dist/utils/batch.d.cts +1 -0
- package/dist/utils/batch.d.cts.map +1 -1
- package/dist/utils/batch.d.mts +1 -0
- package/dist/utils/batch.d.mts.map +1 -1
- package/dist/utils/batch.mjs +2 -1
- package/dist/utils/batch.mjs.map +1 -1
- package/dist/utils/nonce.cjs +10 -6
- package/dist/utils/nonce.cjs.map +1 -1
- package/dist/utils/nonce.d.cts.map +1 -1
- package/dist/utils/nonce.d.mts.map +1 -1
- package/dist/utils/nonce.mjs +10 -6
- package/dist/utils/nonce.mjs.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,9 +7,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
### Fixed
|
|
11
|
+
|
|
12
|
+
- Include pending authorizations in nonce calculation ([#7446](https://github.com/MetaMask/core/pull/7446))
|
|
13
|
+
|
|
14
|
+
## [62.7.0]
|
|
15
|
+
|
|
10
16
|
### Added
|
|
11
17
|
|
|
12
|
-
-
|
|
18
|
+
- Adding a new transaction meta property `requestId`. It is supported for both simple and batched transactions ([#7415](https://github.com/MetaMask/core/pull/7415))
|
|
13
19
|
|
|
14
20
|
## [62.6.0]
|
|
15
21
|
|
|
@@ -21,6 +27,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
21
27
|
- Add optional `isTimeoutEnabled` callback to disable for specific transactions.
|
|
22
28
|
- Ignores transactions with future nonce.
|
|
23
29
|
- Threshold determined by feature flag.
|
|
30
|
+
- Adding a new transaction meta property `requestId`. It is supported for both simple and batched transactions ([#7415](https://github.com/MetaMask/core/pull/7415))
|
|
24
31
|
|
|
25
32
|
### Changed
|
|
26
33
|
|
|
@@ -2032,7 +2039,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
2032
2039
|
|
|
2033
2040
|
All changes listed after this point were applied to this package following the monorepo conversion.
|
|
2034
2041
|
|
|
2035
|
-
[Unreleased]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@62.
|
|
2042
|
+
[Unreleased]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@62.7.0...HEAD
|
|
2043
|
+
[62.7.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@62.6.0...@metamask/transaction-controller@62.7.0
|
|
2036
2044
|
[62.6.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@62.5.0...@metamask/transaction-controller@62.6.0
|
|
2037
2045
|
[62.5.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@62.4.0...@metamask/transaction-controller@62.5.0
|
|
2038
2046
|
[62.4.0]: https://github.com/MetaMask/core/compare/@metamask/transaction-controller@62.3.1...@metamask/transaction-controller@62.4.0
|
|
@@ -391,7 +391,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
391
391
|
*/
|
|
392
392
|
async addTransaction(txParams, options) {
|
|
393
393
|
(0, logger_1.projectLogger)('Adding transaction', txParams, options);
|
|
394
|
-
const { actionId, assetsFiatValues, batchId, deviceConfirmedOn, disableGasBuffer, gasFeeToken, isGasFeeIncluded, isGasFeeSponsored, method, nestedTransactions, networkClientId, origin, publishHook, requireApproval, securityAlertResponse, sendFlowHistory, skipInitialGasEstimate, swaps = {}, traceContext, type, } = options;
|
|
394
|
+
const { actionId, assetsFiatValues, batchId, deviceConfirmedOn, disableGasBuffer, gasFeeToken, isGasFeeIncluded, isGasFeeSponsored, method, nestedTransactions, networkClientId, origin, publishHook, requestId, requireApproval, securityAlertResponse, sendFlowHistory, skipInitialGasEstimate, swaps = {}, traceContext, type, } = options;
|
|
395
395
|
// eslint-disable-next-line no-param-reassign
|
|
396
396
|
txParams = (0, utils_2.normalizeTransactionParams)(txParams);
|
|
397
397
|
if (!__classPrivateFieldGet(this, _TransactionController_multichainTrackingHelper, "f").has(networkClientId)) {
|
|
@@ -449,6 +449,7 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
449
449
|
nestedTransactions,
|
|
450
450
|
networkClientId,
|
|
451
451
|
origin,
|
|
452
|
+
requestId,
|
|
452
453
|
securityAlertResponse,
|
|
453
454
|
selectedGasFeeToken: gasFeeToken,
|
|
454
455
|
status: types_1.TransactionStatus.unapproved,
|
|
@@ -466,26 +467,12 @@ class TransactionController extends base_controller_1.BaseController {
|
|
|
466
467
|
addedTransactionMeta.txParamsOriginal = (0, lodash_1.cloneDeep)(addedTransactionMeta.txParams);
|
|
467
468
|
updateTransaction(addedTransactionMeta);
|
|
468
469
|
}
|
|
470
|
+
// eslint-disable-next-line no-negated-condition
|
|
469
471
|
if (!skipInitialGasEstimate) {
|
|
470
472
|
await __classPrivateFieldGet(this, _TransactionController_trace, "f").call(this, { name: 'Estimate Gas Properties', parentContext: traceContext }, (context) => __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_updateGasProperties).call(this, addedTransactionMeta, {
|
|
471
473
|
traceContext: context,
|
|
472
474
|
}));
|
|
473
475
|
}
|
|
474
|
-
else if (isEIP1559Compatible &&
|
|
475
|
-
addedTransactionMeta.txParams.gasPrice &&
|
|
476
|
-
!addedTransactionMeta.txParams.maxFeePerGas) {
|
|
477
|
-
// Convert legacy gasPrice to EIP-1559 fees for intent transactions on EIP-1559 networks
|
|
478
|
-
addedTransactionMeta.txParams.maxFeePerGas =
|
|
479
|
-
addedTransactionMeta.txParams.gasPrice;
|
|
480
|
-
addedTransactionMeta.txParams.maxPriorityFeePerGas =
|
|
481
|
-
addedTransactionMeta.txParams.gasPrice;
|
|
482
|
-
addedTransactionMeta.txParams.type = types_1.TransactionEnvelopeType.feeMarket;
|
|
483
|
-
delete addedTransactionMeta.txParams.gasPrice; // Remove legacy gas price
|
|
484
|
-
}
|
|
485
|
-
else if (!isEIP1559Compatible && addedTransactionMeta.txParams.gasPrice) {
|
|
486
|
-
// Ensure legacy type for non-EIP-1559 networks
|
|
487
|
-
addedTransactionMeta.txParams.type = types_1.TransactionEnvelopeType.legacy;
|
|
488
|
-
}
|
|
489
476
|
else {
|
|
490
477
|
const newTransactionMeta = (0, lodash_1.cloneDeep)(addedTransactionMeta);
|
|
491
478
|
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_updateGasProperties).call(this, newTransactionMeta)
|
|
@@ -1600,31 +1587,6 @@ _TransactionController_afterAdd = new WeakMap(), _TransactionController_afterSig
|
|
|
1600
1587
|
this.updateTransaction(updatedTransaction, 'TransactionController#processApproval - Updated with approval data');
|
|
1601
1588
|
}
|
|
1602
1589
|
}
|
|
1603
|
-
// For intent-based transactions (e.g., CoW intents) that are not meant to be
|
|
1604
|
-
// published on-chain by the TransactionController, skip the approve/publish flow.
|
|
1605
|
-
// These are tracked externally and should not be signed or sent.
|
|
1606
|
-
const isIntentTransaction = Boolean(
|
|
1607
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
1608
|
-
__classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_getTransaction).call(this, transactionId)?.swapMetaData
|
|
1609
|
-
?.isIntentTx === true);
|
|
1610
|
-
if (requireApproval === false && isIntentTransaction) {
|
|
1611
|
-
const submittedTxMeta = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_updateTransactionInternal).call(this, {
|
|
1612
|
-
transactionId,
|
|
1613
|
-
note: 'TransactionController#processApproval - Intent transaction auto-submitted',
|
|
1614
|
-
skipValidation: true,
|
|
1615
|
-
}, (draftTxMeta) => {
|
|
1616
|
-
draftTxMeta.status = types_1.TransactionStatus.submitted;
|
|
1617
|
-
draftTxMeta.submittedTime = new Date().getTime();
|
|
1618
|
-
});
|
|
1619
|
-
this.messenger.publish(`${controllerName}:transactionSubmitted`, {
|
|
1620
|
-
transactionMeta: submittedTxMeta,
|
|
1621
|
-
});
|
|
1622
|
-
this.messenger.publish(`${controllerName}:transactionFinished`, submittedTxMeta);
|
|
1623
|
-
__classPrivateFieldGet(this, _TransactionController_internalEvents, "f").emit(`${transactionId}:finished`, submittedTxMeta);
|
|
1624
|
-
// Short-circuit normal flow; result callbacks will be handled by the
|
|
1625
|
-
// finished promise below.
|
|
1626
|
-
return ApprovalState.Approved;
|
|
1627
|
-
}
|
|
1628
1590
|
const { isCompleted: isTxCompleted } = __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_isTransactionCompleted).call(this, transactionId);
|
|
1629
1591
|
if (!isTxCompleted) {
|
|
1630
1592
|
const approvalResult = await __classPrivateFieldGet(this, _TransactionController_instances, "m", _TransactionController_approveTransaction).call(this, transactionId, traceContext, publishHook);
|