@metamask-previews/transaction-controller 69.6.1-preview-4f4c98e → 69.6.1-preview-eb263b0ee
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 +0 -5
- package/dist/TransactionController-method-action-types.cjs +7 -0
- package/dist/TransactionController-method-action-types.cjs.map +1 -0
- package/dist/{TransactionController-method-action-types.d.ts → TransactionController-method-action-types.d.cts} +2 -2
- package/dist/TransactionController-method-action-types.d.cts.map +1 -0
- package/dist/TransactionController-method-action-types.d.mts +413 -0
- package/dist/TransactionController-method-action-types.d.mts.map +1 -0
- package/dist/{TransactionController-method-action-types.js → TransactionController-method-action-types.mjs} +1 -1
- package/dist/TransactionController-method-action-types.mjs.map +1 -0
- package/dist/TransactionController.cjs +2444 -0
- package/dist/TransactionController.cjs.map +1 -0
- package/dist/{TransactionController.d.ts → TransactionController.d.cts} +18 -18
- package/dist/TransactionController.d.cts.map +1 -0
- package/dist/TransactionController.d.mts +751 -0
- package/dist/TransactionController.d.mts.map +1 -0
- package/dist/{TransactionController.js → TransactionController.mjs} +50 -49
- package/dist/TransactionController.mjs.map +1 -0
- package/dist/api/accounts-api.cjs +57 -0
- package/dist/api/accounts-api.cjs.map +1 -0
- package/dist/api/{accounts-api.d.ts → accounts-api.d.cts} +1 -1
- package/dist/api/accounts-api.d.cts.map +1 -0
- package/dist/api/accounts-api.d.mts +44 -0
- package/dist/api/accounts-api.d.mts.map +1 -0
- package/dist/api/{accounts-api.js → accounts-api.mjs} +5 -5
- package/dist/api/accounts-api.mjs.map +1 -0
- package/dist/api/simulation-api.cjs +116 -0
- package/dist/api/simulation-api.cjs.map +1 -0
- package/dist/api/{simulation-api.d.ts → simulation-api.d.cts} +3 -3
- package/dist/api/simulation-api.d.cts.map +1 -0
- package/dist/api/simulation-api.d.mts +196 -0
- package/dist/api/simulation-api.d.mts.map +1 -0
- package/dist/api/{simulation-api.js → simulation-api.mjs} +8 -7
- package/dist/api/simulation-api.mjs.map +1 -0
- package/dist/constants.cjs +111 -0
- package/dist/constants.cjs.map +1 -0
- package/dist/{constants.d.ts → constants.d.cts} +37 -37
- package/dist/constants.d.cts.map +1 -0
- package/dist/constants.d.mts +78 -0
- package/dist/constants.d.mts.map +1 -0
- package/dist/{constants.js → constants.mjs} +1 -1
- package/dist/constants.mjs.map +1 -0
- package/dist/errors.cjs +37 -0
- package/dist/errors.cjs.map +1 -0
- package/dist/{errors.d.ts → errors.d.cts} +2 -2
- package/dist/errors.d.cts.map +1 -0
- package/dist/errors.d.mts +19 -0
- package/dist/errors.d.mts.map +1 -0
- package/dist/{errors.js → errors.mjs} +2 -2
- package/dist/errors.mjs.map +1 -0
- package/dist/gas-flows/DefaultGasFeeFlow.cjs +85 -0
- package/dist/gas-flows/{DefaultGasFeeFlow.js.map → DefaultGasFeeFlow.cjs.map} +1 -1
- package/dist/gas-flows/{DefaultGasFeeFlow.d.ts → DefaultGasFeeFlow.d.cts} +2 -2
- package/dist/gas-flows/DefaultGasFeeFlow.d.cts.map +1 -0
- package/dist/gas-flows/DefaultGasFeeFlow.d.mts +10 -0
- package/dist/gas-flows/DefaultGasFeeFlow.d.mts.map +1 -0
- package/dist/gas-flows/{DefaultGasFeeFlow.js → DefaultGasFeeFlow.mjs} +6 -6
- package/dist/gas-flows/DefaultGasFeeFlow.mjs.map +1 -0
- package/dist/gas-flows/LineaGasFeeFlow.cjs +111 -0
- package/dist/gas-flows/LineaGasFeeFlow.cjs.map +1 -0
- package/dist/gas-flows/{LineaGasFeeFlow.d.ts → LineaGasFeeFlow.d.cts} +3 -3
- package/dist/gas-flows/LineaGasFeeFlow.d.cts.map +1 -0
- package/dist/gas-flows/LineaGasFeeFlow.d.mts +16 -0
- package/dist/gas-flows/LineaGasFeeFlow.d.mts.map +1 -0
- package/dist/gas-flows/{LineaGasFeeFlow.js → LineaGasFeeFlow.mjs} +7 -7
- package/dist/gas-flows/LineaGasFeeFlow.mjs.map +1 -0
- package/dist/gas-flows/MantleLayer1GasFeeFlow.cjs +66 -0
- package/dist/gas-flows/MantleLayer1GasFeeFlow.cjs.map +1 -0
- package/dist/gas-flows/{MantleLayer1GasFeeFlow.d.ts → MantleLayer1GasFeeFlow.d.cts} +5 -5
- package/dist/gas-flows/MantleLayer1GasFeeFlow.d.cts.map +1 -0
- package/dist/gas-flows/MantleLayer1GasFeeFlow.d.mts +21 -0
- package/dist/gas-flows/MantleLayer1GasFeeFlow.d.mts.map +1 -0
- package/dist/gas-flows/{MantleLayer1GasFeeFlow.js → MantleLayer1GasFeeFlow.mjs} +6 -6
- package/dist/gas-flows/MantleLayer1GasFeeFlow.mjs.map +1 -0
- package/dist/gas-flows/OptimismLayer1GasFeeFlow.cjs +59 -0
- package/dist/gas-flows/OptimismLayer1GasFeeFlow.cjs.map +1 -0
- package/dist/gas-flows/{OptimismLayer1GasFeeFlow.d.ts → OptimismLayer1GasFeeFlow.d.cts} +4 -4
- package/dist/gas-flows/OptimismLayer1GasFeeFlow.d.cts.map +1 -0
- package/dist/gas-flows/OptimismLayer1GasFeeFlow.d.mts +14 -0
- package/dist/gas-flows/OptimismLayer1GasFeeFlow.d.mts.map +1 -0
- package/dist/gas-flows/{OptimismLayer1GasFeeFlow.js → OptimismLayer1GasFeeFlow.mjs} +5 -5
- package/dist/gas-flows/OptimismLayer1GasFeeFlow.mjs.map +1 -0
- package/dist/gas-flows/OracleLayer1GasFeeFlow.cjs +201 -0
- package/dist/gas-flows/OracleLayer1GasFeeFlow.cjs.map +1 -0
- package/dist/gas-flows/{OracleLayer1GasFeeFlow.d.ts → OracleLayer1GasFeeFlow.d.cts} +5 -5
- package/dist/gas-flows/OracleLayer1GasFeeFlow.d.cts.map +1 -0
- package/dist/gas-flows/OracleLayer1GasFeeFlow.d.mts +57 -0
- package/dist/gas-flows/OracleLayer1GasFeeFlow.d.mts.map +1 -0
- package/dist/gas-flows/{OracleLayer1GasFeeFlow.js → OracleLayer1GasFeeFlow.mjs} +15 -8
- package/dist/gas-flows/OracleLayer1GasFeeFlow.mjs.map +1 -0
- package/dist/gas-flows/RandomisedEstimationsGasFeeFlow.cjs +123 -0
- package/dist/gas-flows/RandomisedEstimationsGasFeeFlow.cjs.map +1 -0
- package/dist/gas-flows/{RandomisedEstimationsGasFeeFlow.d.ts → RandomisedEstimationsGasFeeFlow.d.cts} +4 -4
- package/dist/gas-flows/RandomisedEstimationsGasFeeFlow.d.cts.map +1 -0
- package/dist/gas-flows/RandomisedEstimationsGasFeeFlow.d.mts +28 -0
- package/dist/gas-flows/RandomisedEstimationsGasFeeFlow.d.mts.map +1 -0
- package/dist/gas-flows/{RandomisedEstimationsGasFeeFlow.js → RandomisedEstimationsGasFeeFlow.mjs} +8 -8
- package/dist/gas-flows/RandomisedEstimationsGasFeeFlow.mjs.map +1 -0
- package/dist/gas-flows/ScrollLayer1GasFeeFlow.cjs +24 -0
- package/dist/gas-flows/ScrollLayer1GasFeeFlow.cjs.map +1 -0
- package/dist/gas-flows/{ScrollLayer1GasFeeFlow.d.ts → ScrollLayer1GasFeeFlow.d.cts} +5 -5
- package/dist/gas-flows/ScrollLayer1GasFeeFlow.d.cts.map +1 -0
- package/dist/gas-flows/ScrollLayer1GasFeeFlow.d.mts +16 -0
- package/dist/gas-flows/ScrollLayer1GasFeeFlow.d.mts.map +1 -0
- package/dist/gas-flows/{ScrollLayer1GasFeeFlow.js → ScrollLayer1GasFeeFlow.mjs} +3 -3
- package/dist/gas-flows/ScrollLayer1GasFeeFlow.mjs.map +1 -0
- package/dist/gas-flows/TestGasFeeFlow.cjs +73 -0
- package/dist/gas-flows/TestGasFeeFlow.cjs.map +1 -0
- package/dist/gas-flows/{TestGasFeeFlow.d.ts → TestGasFeeFlow.d.cts} +2 -2
- package/dist/gas-flows/TestGasFeeFlow.d.cts.map +1 -0
- package/dist/gas-flows/TestGasFeeFlow.d.mts +12 -0
- package/dist/gas-flows/TestGasFeeFlow.d.mts.map +1 -0
- package/dist/gas-flows/{TestGasFeeFlow.js → TestGasFeeFlow.mjs} +3 -3
- package/dist/gas-flows/TestGasFeeFlow.mjs.map +1 -0
- package/dist/helpers/GasFeePoller.cjs +334 -0
- package/dist/helpers/GasFeePoller.cjs.map +1 -0
- package/dist/helpers/{GasFeePoller.d.ts → GasFeePoller.d.cts} +10 -7
- package/dist/helpers/GasFeePoller.d.cts.map +1 -0
- package/dist/helpers/GasFeePoller.d.mts +66 -0
- package/dist/helpers/GasFeePoller.d.mts.map +1 -0
- package/dist/helpers/{GasFeePoller.js → GasFeePoller.mjs} +9 -9
- package/dist/helpers/GasFeePoller.mjs.map +1 -0
- package/dist/helpers/MethodDataHelper.cjs +84 -0
- package/dist/helpers/MethodDataHelper.cjs.map +1 -0
- package/dist/helpers/{MethodDataHelper.d.ts → MethodDataHelper.d.cts} +7 -4
- package/dist/helpers/MethodDataHelper.d.cts.map +1 -0
- package/dist/helpers/MethodDataHelper.d.mts +16 -0
- package/dist/helpers/MethodDataHelper.d.mts.map +1 -0
- package/dist/helpers/{MethodDataHelper.js → MethodDataHelper.mjs} +7 -7
- package/dist/helpers/MethodDataHelper.mjs.map +1 -0
- package/dist/helpers/MultichainTrackingHelper.cjs +231 -0
- package/dist/helpers/MultichainTrackingHelper.cjs.map +1 -0
- package/dist/helpers/{MultichainTrackingHelper.d.ts → MultichainTrackingHelper.d.cts} +5 -5
- package/dist/helpers/MultichainTrackingHelper.d.cts.map +1 -0
- package/dist/helpers/MultichainTrackingHelper.d.mts +56 -0
- package/dist/helpers/MultichainTrackingHelper.d.mts.map +1 -0
- package/dist/helpers/{MultichainTrackingHelper.js → MultichainTrackingHelper.mjs} +8 -8
- package/dist/helpers/MultichainTrackingHelper.mjs.map +1 -0
- package/dist/helpers/PendingTransactionTracker.cjs +407 -0
- package/dist/helpers/PendingTransactionTracker.cjs.map +1 -0
- package/dist/helpers/{PendingTransactionTracker.d.ts → PendingTransactionTracker.d.cts} +8 -5
- package/dist/helpers/PendingTransactionTracker.d.cts.map +1 -0
- package/dist/helpers/PendingTransactionTracker.d.mts +54 -0
- package/dist/helpers/PendingTransactionTracker.d.mts.map +1 -0
- package/dist/helpers/{PendingTransactionTracker.js → PendingTransactionTracker.mjs} +15 -14
- package/dist/helpers/PendingTransactionTracker.mjs.map +1 -0
- package/dist/helpers/ResimulateHelper.cjs +274 -0
- package/dist/helpers/ResimulateHelper.cjs.map +1 -0
- package/dist/helpers/{ResimulateHelper.d.ts → ResimulateHelper.d.cts} +3 -3
- package/dist/helpers/ResimulateHelper.d.cts.map +1 -0
- package/dist/helpers/ResimulateHelper.d.mts +36 -0
- package/dist/helpers/ResimulateHelper.d.mts.map +1 -0
- package/dist/helpers/{ResimulateHelper.js → ResimulateHelper.mjs} +8 -7
- package/dist/helpers/ResimulateHelper.mjs.map +1 -0
- package/dist/helpers/TransactionPoller.cjs +175 -0
- package/dist/helpers/TransactionPoller.cjs.map +1 -0
- package/dist/helpers/{TransactionPoller.d.ts → TransactionPoller.d.cts} +5 -5
- package/dist/helpers/TransactionPoller.d.cts.map +1 -0
- package/dist/helpers/TransactionPoller.d.mts +37 -0
- package/dist/helpers/TransactionPoller.d.mts.map +1 -0
- package/dist/helpers/{TransactionPoller.js → TransactionPoller.mjs} +11 -10
- package/dist/helpers/TransactionPoller.mjs.map +1 -0
- package/dist/hooks/CollectPublishHook.cjs +94 -0
- package/dist/hooks/CollectPublishHook.cjs.map +1 -0
- package/dist/hooks/{CollectPublishHook.d.ts → CollectPublishHook.d.cts} +3 -3
- package/dist/hooks/CollectPublishHook.d.cts.map +1 -0
- package/dist/hooks/CollectPublishHook.d.mts +29 -0
- package/dist/hooks/CollectPublishHook.d.mts.map +1 -0
- package/dist/hooks/{CollectPublishHook.js → CollectPublishHook.mjs} +5 -4
- package/dist/hooks/CollectPublishHook.mjs.map +1 -0
- package/dist/hooks/ExtraTransactionsPublishHook.cjs +126 -0
- package/dist/hooks/ExtraTransactionsPublishHook.cjs.map +1 -0
- package/dist/hooks/{ExtraTransactionsPublishHook.d.ts → ExtraTransactionsPublishHook.d.cts} +3 -3
- package/dist/hooks/ExtraTransactionsPublishHook.d.cts.map +1 -0
- package/dist/hooks/ExtraTransactionsPublishHook.d.mts +19 -0
- package/dist/hooks/ExtraTransactionsPublishHook.d.mts.map +1 -0
- package/dist/hooks/{ExtraTransactionsPublishHook.js → ExtraTransactionsPublishHook.mjs} +3 -3
- package/dist/hooks/ExtraTransactionsPublishHook.mjs.map +1 -0
- package/dist/hooks/SequentialPublishBatchHook.cjs +112 -0
- package/dist/hooks/SequentialPublishBatchHook.cjs.map +1 -0
- package/dist/hooks/{SequentialPublishBatchHook.d.ts → SequentialPublishBatchHook.d.cts} +4 -4
- package/dist/hooks/SequentialPublishBatchHook.d.cts.map +1 -0
- package/dist/hooks/SequentialPublishBatchHook.d.mts +22 -0
- package/dist/hooks/SequentialPublishBatchHook.d.mts.map +1 -0
- package/dist/hooks/{SequentialPublishBatchHook.js → SequentialPublishBatchHook.mjs} +4 -4
- package/dist/hooks/SequentialPublishBatchHook.mjs.map +1 -0
- package/dist/index.cjs +40 -0
- package/dist/index.cjs.map +1 -0
- package/dist/{index.d.ts → index.d.cts} +16 -16
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.mts +16 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +12 -0
- package/dist/index.mjs.map +1 -0
- package/dist/logger.cjs +9 -0
- package/dist/logger.cjs.map +1 -0
- package/dist/{logger.d.ts → logger.d.cts} +3 -2
- package/dist/logger.d.cts.map +1 -0
- package/dist/logger.d.mts +6 -0
- package/dist/logger.d.mts.map +1 -0
- package/dist/{logger.js → logger.mjs} +2 -2
- package/dist/logger.mjs.map +1 -0
- package/dist/types.cjs +382 -0
- package/dist/types.cjs.map +1 -0
- package/dist/{types.d.ts → types.d.cts} +8 -8
- package/dist/types.d.cts.map +1 -0
- package/dist/types.d.mts +1887 -0
- package/dist/types.d.mts.map +1 -0
- package/dist/{types.js → types.mjs} +1 -1
- package/dist/types.mjs.map +1 -0
- package/dist/utils/balance-changes.cjs +592 -0
- package/dist/utils/balance-changes.cjs.map +1 -0
- package/dist/utils/{balance-changes.d.ts → balance-changes.d.cts} +5 -5
- package/dist/utils/balance-changes.d.cts.map +1 -0
- package/dist/utils/balance-changes.d.mts +38 -0
- package/dist/utils/balance-changes.d.mts.map +1 -0
- package/dist/utils/{balance-changes.js → balance-changes.mjs} +20 -13
- package/dist/utils/balance-changes.mjs.map +1 -0
- package/dist/utils/balance.cjs +44 -0
- package/dist/utils/balance.cjs.map +1 -0
- package/dist/utils/{balance.d.ts → balance.d.cts} +5 -5
- package/dist/utils/balance.d.cts.map +1 -0
- package/dist/utils/balance.d.mts +26 -0
- package/dist/utils/balance.d.mts.map +1 -0
- package/dist/utils/{balance.js → balance.mjs} +3 -3
- package/dist/utils/balance.mjs.map +1 -0
- package/dist/utils/batch.cjs +712 -0
- package/dist/utils/batch.cjs.map +1 -0
- package/dist/utils/{batch.d.ts → batch.d.cts} +8 -8
- package/dist/utils/batch.d.cts.map +1 -0
- package/dist/utils/batch.d.mts +58 -0
- package/dist/utils/batch.d.mts.map +1 -0
- package/dist/utils/{batch.js → batch.mjs} +18 -18
- package/dist/utils/batch.mjs.map +1 -0
- package/dist/utils/eip7702.cjs +354 -0
- package/dist/utils/eip7702.cjs.map +1 -0
- package/dist/utils/{eip7702.d.ts → eip7702.d.cts} +5 -5
- package/dist/utils/eip7702.d.cts.map +1 -0
- package/dist/utils/eip7702.d.mts +137 -0
- package/dist/utils/eip7702.d.mts.map +1 -0
- package/dist/utils/{eip7702.js → eip7702.mjs} +12 -12
- package/dist/utils/eip7702.mjs.map +1 -0
- package/dist/utils/external-transactions.cjs +36 -0
- package/dist/utils/external-transactions.cjs.map +1 -0
- package/dist/utils/{external-transactions.d.ts → external-transactions.d.cts} +2 -2
- package/dist/utils/external-transactions.d.cts.map +1 -0
- package/dist/utils/external-transactions.d.mts +10 -0
- package/dist/utils/external-transactions.d.mts.map +1 -0
- package/dist/utils/{external-transactions.js → external-transactions.mjs} +3 -3
- package/dist/utils/external-transactions.mjs.map +1 -0
- package/dist/utils/feature-flags.cjs +255 -0
- package/dist/utils/feature-flags.cjs.map +1 -0
- package/dist/utils/{feature-flags.d.ts → feature-flags.d.cts} +3 -3
- package/dist/utils/feature-flags.d.cts.map +1 -0
- package/dist/utils/feature-flags.d.mts +313 -0
- package/dist/utils/feature-flags.d.mts.map +1 -0
- package/dist/utils/{feature-flags.js → feature-flags.mjs} +5 -5
- package/dist/utils/feature-flags.mjs.map +1 -0
- package/dist/utils/first-time-interaction.cjs +69 -0
- package/dist/utils/first-time-interaction.cjs.map +1 -0
- package/dist/utils/{first-time-interaction.d.ts → first-time-interaction.d.cts} +3 -3
- package/dist/utils/first-time-interaction.d.cts.map +1 -0
- package/dist/utils/first-time-interaction.d.mts +30 -0
- package/dist/utils/first-time-interaction.d.mts.map +1 -0
- package/dist/utils/{first-time-interaction.js → first-time-interaction.mjs} +6 -6
- package/dist/utils/first-time-interaction.mjs.map +1 -0
- package/dist/utils/gas-fee-tokens.cjs +174 -0
- package/dist/utils/gas-fee-tokens.cjs.map +1 -0
- package/dist/utils/{gas-fee-tokens.d.ts → gas-fee-tokens.d.cts} +5 -5
- package/dist/utils/gas-fee-tokens.d.cts.map +1 -0
- package/dist/utils/gas-fee-tokens.d.mts +46 -0
- package/dist/utils/gas-fee-tokens.d.mts.map +1 -0
- package/dist/utils/{gas-fee-tokens.js → gas-fee-tokens.mjs} +9 -9
- package/dist/utils/gas-fee-tokens.mjs.map +1 -0
- package/dist/utils/gas-fees.cjs +424 -0
- package/dist/utils/gas-fees.cjs.map +1 -0
- package/dist/utils/{gas-fees.d.ts → gas-fees.d.cts} +5 -5
- package/dist/utils/gas-fees.d.cts.map +1 -0
- package/dist/utils/gas-fees.d.mts +57 -0
- package/dist/utils/gas-fees.d.mts.map +1 -0
- package/dist/utils/{gas-fees.js → gas-fees.mjs} +9 -9
- package/dist/utils/gas-fees.mjs.map +1 -0
- package/dist/utils/gas-flow.cjs +81 -0
- package/dist/utils/gas-flow.cjs.map +1 -0
- package/dist/utils/{gas-flow.d.ts → gas-flow.d.cts} +6 -6
- package/dist/utils/gas-flow.d.cts.map +1 -0
- package/dist/utils/gas-flow.d.mts +29 -0
- package/dist/utils/gas-flow.d.mts.map +1 -0
- package/dist/utils/{gas-flow.js → gas-flow.mjs} +3 -3
- package/dist/utils/gas-flow.mjs.map +1 -0
- package/dist/utils/gas.cjs +545 -0
- package/dist/utils/gas.cjs.map +1 -0
- package/dist/utils/{gas.d.ts → gas.d.cts} +6 -5
- package/dist/utils/gas.d.cts.map +1 -0
- package/dist/utils/gas.d.mts +116 -0
- package/dist/utils/gas.d.mts.map +1 -0
- package/dist/utils/{gas.js → gas.mjs} +11 -11
- package/dist/utils/gas.mjs.map +1 -0
- package/dist/utils/layer1-gas-fee-flow.cjs +73 -0
- package/dist/utils/layer1-gas-fee-flow.cjs.map +1 -0
- package/dist/utils/{layer1-gas-fee-flow.d.ts → layer1-gas-fee-flow.d.cts} +4 -4
- package/dist/utils/layer1-gas-fee-flow.d.cts.map +1 -0
- package/dist/utils/layer1-gas-fee-flow.d.mts +28 -0
- package/dist/utils/layer1-gas-fee-flow.d.mts.map +1 -0
- package/dist/utils/{layer1-gas-fee-flow.js → layer1-gas-fee-flow.mjs} +3 -3
- package/dist/utils/layer1-gas-fee-flow.mjs.map +1 -0
- package/dist/utils/nonce.cjs +93 -0
- package/dist/utils/nonce.cjs.map +1 -0
- package/dist/utils/{nonce.d.ts → nonce.d.cts} +3 -3
- package/dist/utils/nonce.d.cts.map +1 -0
- package/dist/utils/nonce.d.mts +26 -0
- package/dist/utils/nonce.d.mts.map +1 -0
- package/dist/utils/{nonce.js → nonce.mjs} +4 -4
- package/dist/utils/nonce.mjs.map +1 -0
- package/dist/utils/prepare.cjs +97 -0
- package/dist/utils/prepare.cjs.map +1 -0
- package/dist/utils/{prepare.d.ts → prepare.d.cts} +5 -5
- package/dist/utils/prepare.d.cts.map +1 -0
- package/dist/utils/prepare.d.mts +22 -0
- package/dist/utils/prepare.d.mts.map +1 -0
- package/dist/utils/{prepare.js → prepare.mjs} +6 -5
- package/dist/utils/prepare.mjs.map +1 -0
- package/dist/utils/provider.cjs +106 -0
- package/dist/utils/provider.cjs.map +1 -0
- package/dist/utils/{provider.d.ts → provider.d.cts} +4 -4
- 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.js → provider.mjs} +3 -3
- package/dist/utils/provider.mjs.map +1 -0
- package/dist/utils/recipient.cjs +31 -0
- package/dist/utils/recipient.cjs.map +1 -0
- package/dist/utils/{recipient.d.ts → recipient.d.cts} +2 -2
- package/dist/utils/recipient.d.cts.map +1 -0
- package/dist/utils/recipient.d.mts +13 -0
- package/dist/utils/recipient.d.mts.map +1 -0
- package/dist/utils/{recipient.js → recipient.mjs} +3 -3
- package/dist/utils/recipient.mjs.map +1 -0
- package/dist/utils/retry.cjs +93 -0
- package/dist/utils/retry.cjs.map +1 -0
- package/dist/utils/{retry.d.ts → retry.d.cts} +2 -2
- package/dist/utils/retry.d.cts.map +1 -0
- package/dist/utils/retry.d.mts +11 -0
- package/dist/utils/retry.d.mts.map +1 -0
- package/dist/utils/{retry.js → retry.mjs} +3 -3
- package/dist/utils/retry.mjs.map +1 -0
- package/dist/utils/revert-reason.cjs +192 -0
- package/dist/utils/revert-reason.cjs.map +1 -0
- package/dist/utils/{revert-reason.d.ts → revert-reason.d.cts} +5 -5
- package/dist/utils/revert-reason.d.cts.map +1 -0
- package/dist/utils/revert-reason.d.mts +57 -0
- package/dist/utils/revert-reason.d.mts.map +1 -0
- package/dist/utils/{revert-reason.js → revert-reason.mjs} +4 -4
- package/dist/utils/revert-reason.mjs.map +1 -0
- package/dist/utils/signature.cjs +26 -0
- package/dist/utils/signature.cjs.map +1 -0
- package/dist/utils/{signature.d.ts → signature.d.cts} +2 -2
- package/dist/utils/signature.d.cts.map +1 -0
- package/dist/utils/signature.d.mts +11 -0
- package/dist/utils/signature.d.mts.map +1 -0
- package/dist/utils/{signature.js → signature.mjs} +3 -3
- package/dist/utils/signature.mjs.map +1 -0
- package/dist/utils/swaps.cjs +332 -0
- package/dist/utils/swaps.cjs.map +1 -0
- package/dist/utils/{swaps.d.ts → swaps.d.cts} +5 -5
- package/dist/utils/swaps.d.cts.map +1 -0
- package/dist/utils/swaps.d.mts +90 -0
- package/dist/utils/swaps.d.mts.map +1 -0
- package/dist/utils/{swaps.js → swaps.mjs} +8 -7
- package/dist/utils/swaps.mjs.map +1 -0
- package/dist/utils/transaction-type.cjs +159 -0
- package/dist/utils/transaction-type.cjs.map +1 -0
- package/dist/utils/{transaction-type.d.ts → transaction-type.d.cts} +6 -6
- package/dist/utils/transaction-type.d.cts.map +1 -0
- package/dist/utils/transaction-type.d.mts +44 -0
- package/dist/utils/transaction-type.d.mts.map +1 -0
- package/dist/utils/{transaction-type.js → transaction-type.mjs} +6 -6
- package/dist/utils/transaction-type.mjs.map +1 -0
- package/dist/utils/utils.cjs +287 -0
- package/dist/utils/utils.cjs.map +1 -0
- package/dist/utils/{utils.d.ts → utils.d.cts} +4 -4
- package/dist/utils/utils.d.cts.map +1 -0
- package/dist/utils/utils.d.mts +101 -0
- package/dist/utils/utils.d.mts.map +1 -0
- package/dist/utils/{utils.js → utils.mjs} +12 -5
- package/dist/utils/utils.mjs.map +1 -0
- package/dist/utils/validation.cjs +389 -0
- package/dist/utils/validation.cjs.map +1 -0
- package/dist/utils/{validation.d.ts → validation.d.cts} +4 -4
- package/dist/utils/validation.d.cts.map +1 -0
- package/dist/utils/validation.d.mts +66 -0
- package/dist/utils/validation.d.mts.map +1 -0
- package/dist/utils/{validation.js → validation.mjs} +8 -8
- package/dist/utils/validation.mjs.map +1 -0
- package/package.json +19 -15
- package/dist/TransactionController-method-action-types.d.ts.map +0 -1
- package/dist/TransactionController-method-action-types.js.map +0 -1
- package/dist/TransactionController.d.ts.map +0 -1
- package/dist/TransactionController.js.map +0 -1
- package/dist/api/accounts-api.d.ts.map +0 -1
- package/dist/api/accounts-api.js.map +0 -1
- package/dist/api/simulation-api.d.ts.map +0 -1
- package/dist/api/simulation-api.js.map +0 -1
- package/dist/constants.d.ts.map +0 -1
- package/dist/constants.js.map +0 -1
- package/dist/errors.d.ts.map +0 -1
- package/dist/errors.js.map +0 -1
- package/dist/gas-flows/DefaultGasFeeFlow.d.ts.map +0 -1
- package/dist/gas-flows/LineaGasFeeFlow.d.ts.map +0 -1
- package/dist/gas-flows/LineaGasFeeFlow.js.map +0 -1
- package/dist/gas-flows/MantleLayer1GasFeeFlow.d.ts.map +0 -1
- package/dist/gas-flows/MantleLayer1GasFeeFlow.js.map +0 -1
- package/dist/gas-flows/OptimismLayer1GasFeeFlow.d.ts.map +0 -1
- package/dist/gas-flows/OptimismLayer1GasFeeFlow.js.map +0 -1
- package/dist/gas-flows/OracleLayer1GasFeeFlow.d.ts.map +0 -1
- package/dist/gas-flows/OracleLayer1GasFeeFlow.js.map +0 -1
- package/dist/gas-flows/RandomisedEstimationsGasFeeFlow.d.ts.map +0 -1
- package/dist/gas-flows/RandomisedEstimationsGasFeeFlow.js.map +0 -1
- package/dist/gas-flows/ScrollLayer1GasFeeFlow.d.ts.map +0 -1
- package/dist/gas-flows/ScrollLayer1GasFeeFlow.js.map +0 -1
- package/dist/gas-flows/TestGasFeeFlow.d.ts.map +0 -1
- package/dist/gas-flows/TestGasFeeFlow.js.map +0 -1
- package/dist/helpers/GasFeePoller.d.ts.map +0 -1
- package/dist/helpers/GasFeePoller.js.map +0 -1
- package/dist/helpers/MethodDataHelper.d.ts.map +0 -1
- package/dist/helpers/MethodDataHelper.js.map +0 -1
- package/dist/helpers/MultichainTrackingHelper.d.ts.map +0 -1
- package/dist/helpers/MultichainTrackingHelper.js.map +0 -1
- package/dist/helpers/PendingTransactionTracker.d.ts.map +0 -1
- package/dist/helpers/PendingTransactionTracker.js.map +0 -1
- package/dist/helpers/ResimulateHelper.d.ts.map +0 -1
- package/dist/helpers/ResimulateHelper.js.map +0 -1
- package/dist/helpers/TransactionPoller.d.ts.map +0 -1
- package/dist/helpers/TransactionPoller.js.map +0 -1
- package/dist/hooks/CollectPublishHook.d.ts.map +0 -1
- package/dist/hooks/CollectPublishHook.js.map +0 -1
- package/dist/hooks/ExtraTransactionsPublishHook.d.ts.map +0 -1
- package/dist/hooks/ExtraTransactionsPublishHook.js.map +0 -1
- package/dist/hooks/SequentialPublishBatchHook.d.ts.map +0 -1
- package/dist/hooks/SequentialPublishBatchHook.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -12
- package/dist/index.js.map +0 -1
- package/dist/logger.d.ts.map +0 -1
- package/dist/logger.js.map +0 -1
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js.map +0 -1
- package/dist/utils/balance-changes.d.ts.map +0 -1
- package/dist/utils/balance-changes.js.map +0 -1
- package/dist/utils/balance.d.ts.map +0 -1
- package/dist/utils/balance.js.map +0 -1
- package/dist/utils/batch.d.ts.map +0 -1
- package/dist/utils/batch.js.map +0 -1
- package/dist/utils/eip7702.d.ts.map +0 -1
- package/dist/utils/eip7702.js.map +0 -1
- package/dist/utils/external-transactions.d.ts.map +0 -1
- package/dist/utils/external-transactions.js.map +0 -1
- package/dist/utils/feature-flags.d.ts.map +0 -1
- package/dist/utils/feature-flags.js.map +0 -1
- package/dist/utils/first-time-interaction.d.ts.map +0 -1
- package/dist/utils/first-time-interaction.js.map +0 -1
- package/dist/utils/gas-fee-tokens.d.ts.map +0 -1
- package/dist/utils/gas-fee-tokens.js.map +0 -1
- package/dist/utils/gas-fees.d.ts.map +0 -1
- package/dist/utils/gas-fees.js.map +0 -1
- package/dist/utils/gas-flow.d.ts.map +0 -1
- package/dist/utils/gas-flow.js.map +0 -1
- package/dist/utils/gas.d.ts.map +0 -1
- package/dist/utils/gas.js.map +0 -1
- package/dist/utils/layer1-gas-fee-flow.d.ts.map +0 -1
- package/dist/utils/layer1-gas-fee-flow.js.map +0 -1
- package/dist/utils/nonce.d.ts.map +0 -1
- package/dist/utils/nonce.js.map +0 -1
- package/dist/utils/prepare.d.ts.map +0 -1
- package/dist/utils/prepare.js.map +0 -1
- package/dist/utils/provider.d.ts.map +0 -1
- package/dist/utils/provider.js.map +0 -1
- package/dist/utils/recipient.d.ts.map +0 -1
- package/dist/utils/recipient.js.map +0 -1
- package/dist/utils/retry.d.ts.map +0 -1
- package/dist/utils/retry.js.map +0 -1
- package/dist/utils/revert-reason.d.ts.map +0 -1
- package/dist/utils/revert-reason.js.map +0 -1
- package/dist/utils/signature.d.ts.map +0 -1
- package/dist/utils/signature.js.map +0 -1
- package/dist/utils/swaps.d.ts.map +0 -1
- package/dist/utils/swaps.js.map +0 -1
- package/dist/utils/transaction-type.d.ts.map +0 -1
- package/dist/utils/transaction-type.js.map +0 -1
- package/dist/utils/utils.d.ts.map +0 -1
- package/dist/utils/utils.js.map +0 -1
- package/dist/utils/validation.d.ts.map +0 -1
- package/dist/utils/validation.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.d.cts","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,GAAG,EAAE,wBAAwB;AAG3C,OAAO,EAA2B,eAAe,EAAE,qBAAoB;AACvE,OAAO,KAAK,EAEV,uBAAuB,EACvB,iBAAiB,EAClB,qBAAoB;AAGrB,oBAAY,SAAS;IACnB,iBAAiB,OAAO;IACxB,cAAc,OAAO;IACrB,eAAe,OAAO;CACvB;AAcD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,yBAAyB,CAAC,EAC9C,IAAI,EACJ,IAAI,EACJ,gBAAgB,EAChB,UAAU,EACV,MAAM,EACN,kBAAkB,EAClB,QAAQ,EACR,IAAI,GACL,EAAE;IACD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,IAAI,CAAC,EAAE,eAAe,CAAC;CACxB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiChB;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,iBAAiB,EAC3B,mBAAmB,UAAO,EAC1B,OAAO,CAAC,EAAE,GAAG,GACZ,IAAI,CAUN;AAuID;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAIjD;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,gBAAgB,EAChB,UAAU,EACV,OAAO,EACP,SAAS,GACV,EAAE;IACD,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,uBAAuB,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,IAAI,CAmCP"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import type { Hex } from "@metamask/utils";
|
|
2
|
+
import { TransactionType } from "../types.mjs";
|
|
3
|
+
import type { TransactionBatchRequest, TransactionParams } from "../types.mjs";
|
|
4
|
+
export declare enum ErrorCode {
|
|
5
|
+
DuplicateBundleId = 5720,
|
|
6
|
+
BundleTooLarge = 5740,
|
|
7
|
+
RejectedUpgrade = 5750
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Validates whether a transaction initiated by a specific 'from' address is permitted by the origin.
|
|
11
|
+
*
|
|
12
|
+
* @param options - Options bag.
|
|
13
|
+
* @param options.data - The data included in the transaction.
|
|
14
|
+
* @param options.from - The address from which the transaction is initiated.
|
|
15
|
+
* @param options.internalAccounts - The internal accounts added to the wallet.
|
|
16
|
+
* @param options.isInternal - Whether the transaction was added by trusted internal MetaMask code.
|
|
17
|
+
* @param options.origin - The origin or source of the transaction.
|
|
18
|
+
* @param options.permittedAddresses - The permitted accounts for the given origin.
|
|
19
|
+
* @param options.selectedAddress - The currently selected Ethereum address in the wallet.
|
|
20
|
+
* @param options.txParams - The transaction parameters.
|
|
21
|
+
* @param options.type - The transaction type.
|
|
22
|
+
* @throws Throws an error if the transaction is not permitted.
|
|
23
|
+
*/
|
|
24
|
+
export declare function validateTransactionOrigin({ data, from, internalAccounts, isInternal, origin, permittedAddresses, txParams, type, }: {
|
|
25
|
+
data?: string;
|
|
26
|
+
from: string;
|
|
27
|
+
internalAccounts?: string[];
|
|
28
|
+
isInternal?: boolean;
|
|
29
|
+
origin?: string;
|
|
30
|
+
permittedAddresses?: string[];
|
|
31
|
+
selectedAddress?: string;
|
|
32
|
+
txParams: TransactionParams;
|
|
33
|
+
type?: TransactionType;
|
|
34
|
+
}): Promise<void>;
|
|
35
|
+
/**
|
|
36
|
+
* Validates the transaction params for required properties and throws in
|
|
37
|
+
* the event of any validation error.
|
|
38
|
+
*
|
|
39
|
+
* @param txParams - Transaction params object to validate.
|
|
40
|
+
* @param isEIP1559Compatible - whether or not the current network supports EIP-1559 transactions.
|
|
41
|
+
* @param chainId - The chain ID of the transaction.
|
|
42
|
+
*/
|
|
43
|
+
export declare function validateTxParams(txParams: TransactionParams, isEIP1559Compatible?: boolean, chainId?: Hex): void;
|
|
44
|
+
/**
|
|
45
|
+
* Validates the recipient address in a transaction's parameters.
|
|
46
|
+
*
|
|
47
|
+
* @param to - The to property to validate.
|
|
48
|
+
* @throws Throws an error if the recipient address is invalid.
|
|
49
|
+
*/
|
|
50
|
+
export declare function validateParamTo(to?: string): void;
|
|
51
|
+
/**
|
|
52
|
+
* Validates a transaction batch request.
|
|
53
|
+
*
|
|
54
|
+
* @param options - Options bag.
|
|
55
|
+
* @param options.internalAccounts - The internal accounts added to the wallet.
|
|
56
|
+
* @param options.isInternal - Whether the batch was added by trusted internal MetaMask code.
|
|
57
|
+
* @param options.request - The batch request object.
|
|
58
|
+
* @param options.sizeLimit - The maximum number of calls allowed in a batch request.
|
|
59
|
+
*/
|
|
60
|
+
export declare function validateBatchRequest({ internalAccounts, isInternal, request, sizeLimit, }: {
|
|
61
|
+
internalAccounts: string[];
|
|
62
|
+
isInternal?: boolean;
|
|
63
|
+
request: TransactionBatchRequest;
|
|
64
|
+
sizeLimit: number;
|
|
65
|
+
}): void;
|
|
66
|
+
//# sourceMappingURL=validation.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.d.mts","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,GAAG,EAAE,wBAAwB;AAG3C,OAAO,EAA2B,eAAe,EAAE,qBAAoB;AACvE,OAAO,KAAK,EAEV,uBAAuB,EACvB,iBAAiB,EAClB,qBAAoB;AAGrB,oBAAY,SAAS;IACnB,iBAAiB,OAAO;IACxB,cAAc,OAAO;IACrB,eAAe,OAAO;CACvB;AAcD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,yBAAyB,CAAC,EAC9C,IAAI,EACJ,IAAI,EACJ,gBAAgB,EAChB,UAAU,EACV,MAAM,EACN,kBAAkB,EAClB,QAAQ,EACR,IAAI,GACL,EAAE;IACD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,IAAI,CAAC,EAAE,eAAe,CAAC;CACxB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiChB;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,iBAAiB,EAC3B,mBAAmB,UAAO,EAC1B,OAAO,CAAC,EAAE,GAAG,GACZ,IAAI,CAUN;AAuID;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAIjD;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,gBAAgB,EAChB,UAAU,EACV,OAAO,EACP,SAAS,GACV,EAAE;IACD,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,uBAAuB,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,IAAI,CAmCP"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { Interface } from
|
|
2
|
-
import { isValidHexAddress } from
|
|
3
|
-
import { abiERC20 } from
|
|
4
|
-
import { JsonRpcError, providerErrors, rpcErrors } from
|
|
5
|
-
import { isStrictHexString, remove0x } from
|
|
6
|
-
import { TransactionEnvelopeType, TransactionType } from
|
|
7
|
-
import { isEIP1559Transaction } from
|
|
1
|
+
import { Interface } from "@ethersproject/abi";
|
|
2
|
+
import { isValidHexAddress } from "@metamask/controller-utils";
|
|
3
|
+
import { abiERC20 } from "@metamask/metamask-eth-abis";
|
|
4
|
+
import { JsonRpcError, providerErrors, rpcErrors } from "@metamask/rpc-errors";
|
|
5
|
+
import { isStrictHexString, remove0x } from "@metamask/utils";
|
|
6
|
+
import { TransactionEnvelopeType, TransactionType } from "../types.mjs";
|
|
7
|
+
import { isEIP1559Transaction } from "./utils.mjs";
|
|
8
8
|
export var ErrorCode;
|
|
9
9
|
(function (ErrorCode) {
|
|
10
10
|
ErrorCode[ErrorCode["DuplicateBundleId"] = 5720] = "DuplicateBundleId";
|
|
@@ -379,4 +379,4 @@ function validateHexLength(value, lengthBytes, fieldName) {
|
|
|
379
379
|
throw rpcErrors.invalidParams(`Invalid transaction params: ${fieldName} must be ${lengthBytes} bytes. got: ${actualLengthBytes} bytes`);
|
|
380
380
|
}
|
|
381
381
|
}
|
|
382
|
-
//# sourceMappingURL=validation.
|
|
382
|
+
//# sourceMappingURL=validation.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.mjs","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Interface } from '@ethersproject/abi';\nimport { isValidHexAddress } from '@metamask/controller-utils';\nimport { abiERC20 } from '@metamask/metamask-eth-abis';\nimport { JsonRpcError, providerErrors, rpcErrors } from '@metamask/rpc-errors';\nimport type { Hex } from '@metamask/utils';\nimport { isStrictHexString, remove0x } from '@metamask/utils';\n\nimport { TransactionEnvelopeType, TransactionType } from '../types.js';\nimport type {\n Authorization,\n TransactionBatchRequest,\n TransactionParams,\n} from '../types.js';\nimport { isEIP1559Transaction } from './utils.js';\n\nexport enum ErrorCode {\n DuplicateBundleId = 5720,\n BundleTooLarge = 5740,\n RejectedUpgrade = 5750,\n}\n\nconst TRANSACTION_ENVELOPE_TYPES_FEE_MARKET = [\n TransactionEnvelopeType.feeMarket,\n TransactionEnvelopeType.setCode,\n];\n\ntype GasFieldsToValidate =\n | 'gasPrice'\n | 'maxFeePerGas'\n | 'maxPriorityFeePerGas'\n | 'gas'\n | 'gasLimit';\n\n/**\n * Validates whether a transaction initiated by a specific 'from' address is permitted by the origin.\n *\n * @param options - Options bag.\n * @param options.data - The data included in the transaction.\n * @param options.from - The address from which the transaction is initiated.\n * @param options.internalAccounts - The internal accounts added to the wallet.\n * @param options.isInternal - Whether the transaction was added by trusted internal MetaMask code.\n * @param options.origin - The origin or source of the transaction.\n * @param options.permittedAddresses - The permitted accounts for the given origin.\n * @param options.selectedAddress - The currently selected Ethereum address in the wallet.\n * @param options.txParams - The transaction parameters.\n * @param options.type - The transaction type.\n * @throws Throws an error if the transaction is not permitted.\n */\nexport async function validateTransactionOrigin({\n data,\n from,\n internalAccounts,\n isInternal,\n origin,\n permittedAddresses,\n txParams,\n type,\n}: {\n data?: string;\n from: string;\n internalAccounts?: string[];\n isInternal?: boolean;\n origin?: string;\n permittedAddresses?: string[];\n selectedAddress?: string;\n txParams: TransactionParams;\n type?: TransactionType;\n}): Promise<void> {\n if (isInternal) {\n return;\n }\n\n const { authorizationList, to, type: envelopeType } = txParams;\n\n if (permittedAddresses && !permittedAddresses.includes(from)) {\n throw providerErrors.unauthorized({ data: { origin } });\n }\n\n if (type === TransactionType.batch) {\n return;\n }\n\n if (authorizationList || envelopeType === TransactionEnvelopeType.setCode) {\n throw rpcErrors.invalidParams(\n 'External EIP-7702 transactions are not supported',\n );\n }\n\n const hasData = Boolean(data && data !== '0x');\n\n if (\n hasData &&\n internalAccounts?.some(\n (account) => account.toLowerCase() === to?.toLowerCase(),\n )\n ) {\n throw rpcErrors.invalidParams(\n 'External transactions to internal accounts cannot include data',\n );\n }\n}\n\n/**\n * Validates the transaction params for required properties and throws in\n * the event of any validation error.\n *\n * @param txParams - Transaction params object to validate.\n * @param isEIP1559Compatible - whether or not the current network supports EIP-1559 transactions.\n * @param chainId - The chain ID of the transaction.\n */\nexport function validateTxParams(\n txParams: TransactionParams,\n isEIP1559Compatible = true,\n chainId?: Hex,\n): void {\n validateEnvelopeType(txParams.type);\n validateEIP1559Compatibility(txParams, isEIP1559Compatible);\n validateParamFrom(txParams.from);\n validateParamRecipient(txParams);\n validateParamValue(txParams.value);\n validateParamData(txParams.data);\n validateParamChainId(txParams.chainId, chainId);\n validateGasFeeParams(txParams);\n validateAuthorizationList(txParams);\n}\n\n/**\n * Validates the `type` property, ensuring that if it is specified, it is a valid transaction envelope type.\n *\n * @param type - The transaction envelope type to validate.\n * @throws Throws invalid params if the type is not a valid transaction envelope type.\n */\nfunction validateEnvelopeType(type: string | undefined): void {\n if (\n type &&\n !Object.values(TransactionEnvelopeType).includes(\n type as TransactionEnvelopeType,\n )\n ) {\n throw rpcErrors.invalidParams(\n `Invalid transaction envelope type: \"${type}\". Must be one of: ${Object.values(\n TransactionEnvelopeType,\n ).join(', ')}`,\n );\n }\n}\n\n/**\n * Validates EIP-1559 compatibility for transaction creation.\n *\n * @param txParams - The transaction parameters to validate.\n * @param isEIP1559Compatible - Indicates if the current network supports EIP-1559.\n * @throws Throws invalid params if the transaction specifies EIP-1559 but the network does not support it.\n */\nfunction validateEIP1559Compatibility(\n txParams: TransactionParams,\n isEIP1559Compatible: boolean,\n): void {\n if (isEIP1559Transaction(txParams) && !isEIP1559Compatible) {\n throw rpcErrors.invalidParams(\n 'Invalid transaction params: params specify an EIP-1559 transaction but the current network does not support EIP-1559',\n );\n }\n}\n\n/**\n * Validates value property, ensuring it is a valid positive integer number\n * denominated in wei.\n *\n * @param value - The value to validate, expressed as a string.\n * @throws Throws an error if the value is not a valid positive integer\n * number denominated in wei.\n * - If the value contains a hyphen (-), it is considered invalid.\n * - If the value contains a decimal point (.), it is considered invalid.\n * - If the value is not a finite number, is NaN, or is not a safe integer, it is considered invalid.\n */\nfunction validateParamValue(value?: string): void {\n if (value !== undefined) {\n if (value.includes('-')) {\n throw rpcErrors.invalidParams(\n `Invalid transaction value \"${value}\": not a positive number.`,\n );\n }\n\n if (value.includes('.')) {\n throw rpcErrors.invalidParams(\n `Invalid transaction value \"${value}\": number must be in wei.`,\n );\n }\n const intValue = parseInt(value, 10);\n const isValid =\n Number.isFinite(intValue) &&\n !Number.isNaN(intValue) &&\n !isNaN(Number(value)) &&\n Number.isSafeInteger(intValue);\n if (!isValid) {\n throw rpcErrors.invalidParams(\n `Invalid transaction value ${value}: number must be a valid number.`,\n );\n }\n }\n}\n\n/**\n * Validates the recipient address in a transaction's parameters.\n *\n * @param txParams - The transaction parameters object to validate.\n * @throws Throws an error if the recipient address is invalid:\n * - If the recipient address is missing (empty string, '0x', or undefined) and the\n * transaction does not contain real bytecode (data must be longer than `0x`),\n * an error is thrown. This prevents accidental contract deployments with empty\n * `to` and empty `data` from locking funds.\n * - If the recipient address is missing and the transaction contains real\n * bytecode (data longer than `0x`), the \"to\" field is removed from the\n * transaction parameters (legitimate contract deployment).\n * - If the recipient address is not a valid hexadecimal Ethereum address, an\n * error is thrown.\n */\nfunction validateParamRecipient(txParams: TransactionParams): void {\n const isMissingRecipient =\n txParams.to === '0x' || txParams.to === '' || txParams.to === undefined;\n\n if (isMissingRecipient) {\n const hasRealBytecode = Boolean(\n txParams.data && txParams.data !== '0x' && txParams.data.length > 2,\n );\n\n if (hasRealBytecode) {\n delete txParams.to;\n } else {\n throw rpcErrors.invalidParams(\n `Invalid \"to\" address: must be specified for transactions without contract deployment bytecode.`,\n );\n }\n } else if (txParams.to !== undefined && !isValidHexAddress(txParams.to)) {\n throw rpcErrors.invalidParams(`Invalid \"to\" address.`);\n }\n}\n\n/**\n * Validates the recipient address in a transaction's parameters.\n *\n * @param from - The from property to validate.\n * @throws Throws an error if the recipient address is invalid:\n * - If the recipient address is an empty string ('0x') or undefined and the transaction contains data,\n * the \"to\" field is removed from the transaction parameters.\n * - If the recipient address is not a valid hexadecimal Ethereum address, an error is thrown.\n */\nfunction validateParamFrom(from: string): void {\n if (!from || typeof from !== 'string') {\n throw rpcErrors.invalidParams(\n `Invalid \"from\" address ${from}: not a string.`,\n );\n }\n if (!isValidHexAddress(from)) {\n throw rpcErrors.invalidParams('Invalid \"from\" address.');\n }\n}\n\n/**\n * Validates the recipient address in a transaction's parameters.\n *\n * @param to - The to property to validate.\n * @throws Throws an error if the recipient address is invalid.\n */\nexport function validateParamTo(to?: string): void {\n if (!to || typeof to !== 'string') {\n throw rpcErrors.invalidParams(`Invalid \"to\" address`);\n }\n}\n\n/**\n * Validates a transaction batch request.\n *\n * @param options - Options bag.\n * @param options.internalAccounts - The internal accounts added to the wallet.\n * @param options.isInternal - Whether the batch was added by trusted internal MetaMask code.\n * @param options.request - The batch request object.\n * @param options.sizeLimit - The maximum number of calls allowed in a batch request.\n */\nexport function validateBatchRequest({\n internalAccounts,\n isInternal,\n request,\n sizeLimit,\n}: {\n internalAccounts: string[];\n isInternal?: boolean;\n request: TransactionBatchRequest;\n sizeLimit: number;\n}): void {\n if (isInternal) {\n return;\n }\n\n const internalAccountsNormalized = internalAccounts.map((account) =>\n account.toLowerCase(),\n );\n\n if (\n request.transactions.some((nestedTransaction) => {\n const normalizedCallTo =\n nestedTransaction.params.to?.toLowerCase() as string;\n\n const callData = nestedTransaction.params.data;\n\n const isInternalAccount =\n internalAccountsNormalized.includes(normalizedCallTo);\n\n const hasData = Boolean(callData && callData !== '0x');\n\n return isInternalAccount && hasData;\n })\n ) {\n throw rpcErrors.invalidParams(\n 'External calls to internal accounts cannot include data',\n );\n }\n\n if (request.transactions.length > sizeLimit) {\n throw new JsonRpcError(\n ErrorCode.BundleTooLarge,\n `Batch size cannot exceed ${sizeLimit}. got: ${request.transactions.length}`,\n );\n }\n}\n\n/**\n * Validates input data for transactions.\n *\n * @param value - The input data to validate.\n * @throws Throws invalid params if the input data is invalid.\n */\nfunction validateParamData(value?: string): void {\n if (value) {\n const ERC20Interface = new Interface(abiERC20);\n try {\n ERC20Interface.parseTransaction({ data: value });\n // TODO: Replace `any` with type\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (error: any) {\n if (error.message.match(/BUFFER_OVERRUN/u)) {\n throw rpcErrors.invalidParams(\n 'Invalid transaction params: data out-of-bounds, BUFFER_OVERRUN.',\n );\n }\n }\n }\n}\n\n/**\n * Validates chainId type.\n *\n * @param chainIdParams - The chain ID to validate.\n * @param chainIdNetworkClient - The chain ID of the network client.\n */\nfunction validateParamChainId(\n chainIdParams?: Hex,\n chainIdNetworkClient?: Hex,\n): void {\n if (\n chainIdParams &&\n chainIdNetworkClient &&\n chainIdParams.toLowerCase?.() !== chainIdNetworkClient.toLowerCase()\n ) {\n throw rpcErrors.invalidParams(\n `Invalid transaction params: chainId must match the network client, got: ${chainIdParams}, expected: ${chainIdNetworkClient}`,\n );\n }\n}\n\n/**\n * Validates gas values.\n *\n * @param txParams - The transaction parameters to validate.\n */\nfunction validateGasFeeParams(txParams: TransactionParams): void {\n if (txParams.gasPrice) {\n ensureProperTransactionEnvelopeTypeProvided(txParams, 'gasPrice');\n ensureMutuallyExclusiveFieldsNotProvided(\n txParams,\n 'gasPrice',\n 'maxFeePerGas',\n );\n ensureMutuallyExclusiveFieldsNotProvided(\n txParams,\n 'gasPrice',\n 'maxPriorityFeePerGas',\n );\n ensureFieldIsValidHex(txParams, 'gasPrice');\n }\n\n if (txParams.maxFeePerGas) {\n ensureProperTransactionEnvelopeTypeProvided(txParams, 'maxFeePerGas');\n ensureMutuallyExclusiveFieldsNotProvided(\n txParams,\n 'maxFeePerGas',\n 'gasPrice',\n );\n ensureFieldIsValidHex(txParams, 'maxFeePerGas');\n }\n\n if (txParams.maxPriorityFeePerGas) {\n ensureProperTransactionEnvelopeTypeProvided(\n txParams,\n 'maxPriorityFeePerGas',\n );\n ensureMutuallyExclusiveFieldsNotProvided(\n txParams,\n 'maxPriorityFeePerGas',\n 'gasPrice',\n );\n ensureFieldIsValidHex(txParams, 'maxPriorityFeePerGas');\n }\n\n if (txParams.gasLimit) {\n ensureFieldIsValidHex(txParams, 'gasLimit');\n }\n\n if (txParams.gas) {\n ensureFieldIsValidHex(txParams, 'gas');\n }\n}\n\n/**\n * Ensures that the provided txParams has the proper 'type' specified for the\n * given field, if it is provided. If types do not match throws an\n * invalidParams error.\n *\n * @param txParams - The transaction parameters object\n * @param field - The current field being validated\n * @throws {ethErrors.rpc.invalidParams} Throws if type does not match the\n * expectations for provided field.\n */\nfunction ensureProperTransactionEnvelopeTypeProvided(\n txParams: TransactionParams,\n field: keyof TransactionParams,\n): void {\n const type = txParams.type as TransactionEnvelopeType | undefined;\n\n switch (field) {\n case 'authorizationList':\n if (type && type !== TransactionEnvelopeType.setCode) {\n throw rpcErrors.invalidParams(\n `Invalid transaction envelope type: specified type \"${type}\" but including authorizationList requires type: \"${TransactionEnvelopeType.setCode}\"`,\n );\n }\n break;\n case 'maxFeePerGas':\n case 'maxPriorityFeePerGas':\n if (type && !TRANSACTION_ENVELOPE_TYPES_FEE_MARKET.includes(type)) {\n throw rpcErrors.invalidParams(\n `Invalid transaction envelope type: specified type \"${type}\" but including maxFeePerGas and maxPriorityFeePerGas requires type: \"${TRANSACTION_ENVELOPE_TYPES_FEE_MARKET.join(', ')}\"`,\n );\n }\n break;\n case 'gasPrice':\n default:\n if (type && TRANSACTION_ENVELOPE_TYPES_FEE_MARKET.includes(type)) {\n throw rpcErrors.invalidParams(\n `Invalid transaction envelope type: specified type \"${type}\" but included a gasPrice instead of maxFeePerGas and maxPriorityFeePerGas`,\n );\n }\n }\n}\n\n/**\n * Given two fields, ensure that the second field is not included in txParams,\n * and if it is throw an invalidParams error.\n *\n * @param txParams - The transaction parameters object\n * @param fieldBeingValidated - The current field being validated\n * @param mutuallyExclusiveField - The field to ensure is not provided\n * @throws {ethErrors.rpc.invalidParams} Throws if mutuallyExclusiveField is\n * present in txParams.\n */\nfunction ensureMutuallyExclusiveFieldsNotProvided(\n txParams: TransactionParams,\n fieldBeingValidated: GasFieldsToValidate,\n mutuallyExclusiveField: GasFieldsToValidate,\n): void {\n if (typeof txParams[mutuallyExclusiveField] !== 'undefined') {\n throw rpcErrors.invalidParams(\n `Invalid transaction params: specified ${fieldBeingValidated} but also included ${mutuallyExclusiveField}, these cannot be mixed`,\n );\n }\n}\n\n/**\n * Ensures that the provided value for field is a valid hexadecimal.\n * Throws an invalidParams error if field is not a valid hexadecimal.\n *\n * @param data - The object containing the field\n * @param field - The current field being validated\n * @throws {rpcErrors.invalidParams} Throws if field is not a valid hexadecimal\n */\nfunction ensureFieldIsValidHex<DataType>(\n data: DataType,\n field: keyof DataType,\n): void {\n const value = data[field];\n if (typeof value !== 'string' || !isStrictHexString(value)) {\n throw rpcErrors.invalidParams(\n `Invalid transaction params: ${String(field)} is not a valid hexadecimal string. got: (${String(\n value,\n )})`,\n );\n }\n}\n\n/**\n * Validate the authorization list property in the transaction parameters.\n *\n * @param txParams - The transaction parameters containing the authorization list to validate.\n */\nfunction validateAuthorizationList(txParams: TransactionParams): void {\n const { authorizationList } = txParams;\n\n if (!authorizationList) {\n return;\n }\n\n ensureProperTransactionEnvelopeTypeProvided(txParams, 'authorizationList');\n\n if (!Array.isArray(authorizationList)) {\n throw rpcErrors.invalidParams(\n `Invalid transaction params: authorizationList must be an array`,\n );\n }\n\n for (const authorization of authorizationList) {\n validateAuthorization(authorization);\n }\n}\n\n/**\n * Validate an authorization object.\n *\n * @param authorization - The authorization object to validate.\n */\nfunction validateAuthorization(authorization: Authorization): void {\n ensureFieldIsValidHex(authorization, 'address');\n validateHexLength(authorization.address, 20, 'address');\n\n for (const field of ['chainId', 'nonce', 'r', 's'] as const) {\n if (authorization[field]) {\n ensureFieldIsValidHex(authorization, field);\n }\n }\n\n const { yParity } = authorization;\n\n if (yParity && !['0x0', '0x1'].includes(yParity)) {\n throw rpcErrors.invalidParams(\n `Invalid transaction params: yParity must be '0x0' or '0x1'. got: ${yParity}`,\n );\n }\n}\n\n/**\n * Validate the number of bytes in a hex string.\n *\n * @param value - The hex string to validate.\n * @param lengthBytes - The expected length in bytes.\n * @param fieldName - The name of the field being validated.\n */\nfunction validateHexLength(\n value: string,\n lengthBytes: number,\n fieldName: string,\n): void {\n const actualLengthBytes = remove0x(value).length / 2;\n\n if (actualLengthBytes !== lengthBytes) {\n throw rpcErrors.invalidParams(\n `Invalid transaction params: ${fieldName} must be ${lengthBytes} bytes. got: ${actualLengthBytes} bytes`,\n );\n }\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@metamask-previews/transaction-controller",
|
|
3
|
-
"version": "69.6.1-preview-
|
|
3
|
+
"version": "69.6.1-preview-eb263b0ee",
|
|
4
4
|
"description": "Stores transactions alongside their periodically updated statuses and manages interactions such as approval and cancellation",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"Ethereum",
|
|
@@ -18,12 +18,19 @@
|
|
|
18
18
|
"files": [
|
|
19
19
|
"dist/"
|
|
20
20
|
],
|
|
21
|
-
"type": "module",
|
|
22
21
|
"sideEffects": false,
|
|
22
|
+
"main": "./dist/index.cjs",
|
|
23
|
+
"types": "./dist/index.d.cts",
|
|
23
24
|
"exports": {
|
|
24
25
|
".": {
|
|
25
|
-
"
|
|
26
|
-
|
|
26
|
+
"import": {
|
|
27
|
+
"types": "./dist/index.d.mts",
|
|
28
|
+
"default": "./dist/index.mjs"
|
|
29
|
+
},
|
|
30
|
+
"require": {
|
|
31
|
+
"types": "./dist/index.d.cts",
|
|
32
|
+
"default": "./dist/index.cjs"
|
|
33
|
+
}
|
|
27
34
|
},
|
|
28
35
|
"./package.json": "./package.json"
|
|
29
36
|
},
|
|
@@ -32,11 +39,9 @@
|
|
|
32
39
|
"registry": "https://registry.npmjs.org/"
|
|
33
40
|
},
|
|
34
41
|
"scripts": {
|
|
35
|
-
"build": "
|
|
36
|
-
"build:all": "
|
|
37
|
-
"build:clean": "yarn build:only-clean && yarn build",
|
|
42
|
+
"build": "ts-bridge --project tsconfig.build.json --verbose --clean --no-references",
|
|
43
|
+
"build:all": "ts-bridge --project tsconfig.build.json --verbose --clean",
|
|
38
44
|
"build:docs": "typedoc",
|
|
39
|
-
"build:only-clean": "rimraf './dist' './tsconfig.build.tsbuildinfo'",
|
|
40
45
|
"changelog:update": "../../scripts/update-changelog.sh @metamask/transaction-controller",
|
|
41
46
|
"changelog:validate": "../../scripts/validate-changelog.sh @metamask/transaction-controller",
|
|
42
47
|
"lint:tsconfigs": "tsx ../../scripts/lint-tsconfigs/lint-tsconfigs.mts",
|
|
@@ -67,7 +72,7 @@
|
|
|
67
72
|
"@metamask/metamask-eth-abis": "^3.1.1",
|
|
68
73
|
"@metamask/network-controller": "^36.0.0",
|
|
69
74
|
"@metamask/nonce-tracker": "^6.0.0",
|
|
70
|
-
"@metamask/remote-feature-flag-controller": "^6.
|
|
75
|
+
"@metamask/remote-feature-flag-controller": "^6.0.0",
|
|
71
76
|
"@metamask/rpc-errors": "^7.0.2",
|
|
72
77
|
"@metamask/utils": "^11.11.0",
|
|
73
78
|
"async-mutex": "^0.5.0",
|
|
@@ -76,7 +81,7 @@
|
|
|
76
81
|
"eth-method-registry": "^4.0.0",
|
|
77
82
|
"ethereum-cryptography": "^2.1.2",
|
|
78
83
|
"fast-json-patch": "^3.1.1",
|
|
79
|
-
"lodash
|
|
84
|
+
"lodash": "^4.17.21",
|
|
80
85
|
"uuid": "^8.3.2"
|
|
81
86
|
},
|
|
82
87
|
"devDependencies": {
|
|
@@ -86,27 +91,26 @@
|
|
|
86
91
|
"@metamask/eth-block-tracker": "^15.0.0",
|
|
87
92
|
"@metamask/eth-json-rpc-provider": "^6.0.1",
|
|
88
93
|
"@metamask/ethjs-provider-http": "^0.3.0",
|
|
94
|
+
"@ts-bridge/cli": "^0.6.4",
|
|
89
95
|
"@types/bn.js": "^5.1.5",
|
|
90
96
|
"@types/jest": "^30.0.0",
|
|
91
|
-
"@types/node": "^
|
|
92
|
-
"@typescript/native": "npm:typescript@^7.0.2",
|
|
97
|
+
"@types/node": "^16.18.54",
|
|
93
98
|
"deepmerge": "^4.2.2",
|
|
94
99
|
"immer": "^9.0.6",
|
|
95
100
|
"jest": "^30.4.2",
|
|
96
101
|
"jest-environment-jsdom": "^30.4.1",
|
|
97
102
|
"nock": "^13.3.1",
|
|
98
|
-
"rimraf": "^5.0.5",
|
|
99
103
|
"ts-jest": "^29.4.11",
|
|
100
104
|
"tsx": "^4.20.5",
|
|
101
105
|
"typedoc": "^0.25.13",
|
|
102
106
|
"typedoc-plugin-missing-exports": "^2.0.0",
|
|
103
|
-
"typescript": "
|
|
107
|
+
"typescript": "~5.3.3"
|
|
104
108
|
},
|
|
105
109
|
"peerDependencies": {
|
|
106
110
|
"@babel/runtime": "^7.0.0",
|
|
107
111
|
"@metamask/eth-block-tracker": ">=9"
|
|
108
112
|
},
|
|
109
113
|
"engines": {
|
|
110
|
-
"node": "^
|
|
114
|
+
"node": "^18.18 || >=20"
|
|
111
115
|
}
|
|
112
116
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TransactionController-method-action-types.d.ts","sourceRoot":"","sources":["../src/TransactionController-method-action-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TransactionController-method-action-types.js","sourceRoot":"","sources":["../src/TransactionController-method-action-types.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/**\n * This file is auto generated.\n * Do not edit manually.\n */\n\nimport type { TransactionController } from './TransactionController.js';\n\n/**\n * Handle new method data request.\n *\n * @param fourBytePrefix - The method prefix.\n * @param networkClientId - The ID of the network client used to fetch the method data.\n * @returns The method data object corresponding to the given signature prefix.\n */\nexport type TransactionControllerHandleMethodDataAction = {\n type: `TransactionController:handleMethodData`;\n handler: TransactionController['handleMethodData'];\n};\n\n/**\n * Add a batch of transactions to be submitted after approval.\n *\n * @param request - Request object containing the transactions to add.\n * @returns Result object containing the generated batch ID.\n */\nexport type TransactionControllerAddTransactionBatchAction = {\n type: `TransactionController:addTransactionBatch`;\n handler: TransactionController['addTransactionBatch'];\n};\n\n/**\n * Determine which chains support atomic batch transactions with the given account address.\n *\n * @param request - Request object containing the account address and other parameters.\n * @returns Result object containing the supported chains and related information.\n */\nexport type TransactionControllerIsAtomicBatchSupportedAction = {\n type: `TransactionController:isAtomicBatchSupported`;\n handler: TransactionController['isAtomicBatchSupported'];\n};\n\n/**\n * Add a new unapproved transaction to state. Parameters will be validated, a\n * unique transaction ID will be generated, and `gas` and `gasPrice` will be calculated\n * if not provided. A `<tx.id>:unapproved` hub event will be emitted once added.\n *\n * @param txParams - Standard parameters for an Ethereum transaction.\n * @param options - Additional options to control how the transaction is added.\n * @returns Object containing a promise resolving to the transaction hash if approved.\n */\nexport type TransactionControllerAddTransactionAction = {\n type: `TransactionController:addTransaction`;\n handler: TransactionController['addTransaction'];\n};\n\n/**\n * Attempts to cancel a transaction based on its ID by setting its status to \"rejected\"\n * and emitting a `<tx.id>:finished` hub event.\n *\n * @param transactionId - The ID of the transaction to cancel.\n * @param gasValues - The gas values to use for the cancellation transaction.\n * @param options - The options for the cancellation transaction.\n * @param options.actionId - Unique ID persisted on transaction metadata.\n * @param options.estimatedBaseFee - The estimated base fee of the transaction.\n */\nexport type TransactionControllerStopTransactionAction = {\n type: `TransactionController:stopTransaction`;\n handler: TransactionController['stopTransaction'];\n};\n\n/**\n * Attempts to speed up a transaction increasing transaction gasPrice by ten percent.\n *\n * @param transactionId - The ID of the transaction to speed up.\n * @param gasValues - The gas values to use for the speed up transaction.\n * @param options - The options for the speed up transaction.\n * @param options.actionId - Unique ID persisted on transaction metadata.\n * @param options.estimatedBaseFee - The estimated base fee of the transaction.\n */\nexport type TransactionControllerSpeedUpTransactionAction = {\n type: `TransactionController:speedUpTransaction`;\n handler: TransactionController['speedUpTransaction'];\n};\n\n/**\n * Estimates required gas for a given transaction.\n *\n * @param transaction - The transaction to estimate gas for.\n * @param networkClientId - The network client id to use for the estimate.\n * @param options - Additional options for the estimate.\n * @param options.ignoreDelegationSignatures - Ignore signature errors if submitting delegations to the DelegationManager.\n * @returns The gas and gas price.\n */\nexport type TransactionControllerEstimateGasAction = {\n type: `TransactionController:estimateGas`;\n handler: TransactionController['estimateGas'];\n};\n\n/**\n * Estimates required gas for a batch of transactions.\n *\n * @param request - Request object.\n * @param request.chainId - Chain ID of the transactions.\n * @param request.from - Address of the sender.\n * @param request.transactions - Array of transactions within a batch request.\n * @returns Object containing the gas limit.\n */\nexport type TransactionControllerEstimateGasBatchAction = {\n type: `TransactionController:estimateGasBatch`;\n handler: TransactionController['estimateGasBatch'];\n};\n\n/**\n * Estimates required gas for a given transaction and add additional gas buffer with the given multiplier.\n *\n * @param transaction - The transaction params to estimate gas for.\n * @param multiplier - The multiplier to use for the gas buffer.\n * @param networkClientId - The network client id to use for the estimate.\n * @returns The buffered estimated gas and whether the estimation failed.\n */\nexport type TransactionControllerEstimateGasBufferedAction = {\n type: `TransactionController:estimateGasBuffered`;\n handler: TransactionController['estimateGasBuffered'];\n};\n\n/**\n * Updates an existing transaction in state.\n *\n * @param transactionMeta - The new transaction to store in state.\n * @param note - A note or update reason to be logged.\n */\nexport type TransactionControllerUpdateTransactionAction = {\n type: `TransactionController:updateTransaction`;\n handler: TransactionController['updateTransaction'];\n};\n\n/**\n * Updates transaction metadata.\n *\n * @param options - Update options.\n * @param options.transactionId - ID of the transaction to update.\n * @param options.callback - Function that mutates the transaction metadata.\n * @param options.skipResimulate - Whether to skip automatic re-simulation.\n * @returns The updated transaction metadata.\n */\nexport type TransactionControllerUpdateTransactionMetadataAction = {\n type: `TransactionController:updateTransactionMetadata`;\n handler: TransactionController['updateTransactionMetadata'];\n};\n\n/**\n * Mark a transaction as failed, transitioning it through the standard failure\n * path.\n *\n * Unlike `updateTransaction`, this emits the transaction lifecycle events\n * (`transactionFailed`, `transactionStatusUpdated`, `transactionFinished`), so\n * downstream subscribers such as the bridge status controller and metrics are\n * notified. Intended for callers that finalize a transaction out-of-band, for\n * example the smart transactions controller when the relay cancels a smart\n * transaction that never landed on chain.\n *\n * @param transactionId - The ID of the transaction to mark as failed.\n * @param error - The error describing why the transaction failed.\n */\nexport type TransactionControllerFailTransactionAction = {\n type: `TransactionController:failTransaction`;\n handler: TransactionController['failTransaction'];\n};\n\n/**\n * Update the security alert response for a transaction.\n *\n * @param transactionId - ID of the transaction.\n * @param securityAlertResponse - The new security alert response for the transaction.\n */\nexport type TransactionControllerUpdateSecurityAlertResponseAction = {\n type: `TransactionController:updateSecurityAlertResponse`;\n handler: TransactionController['updateSecurityAlertResponse'];\n};\n\n/**\n * Remove transactions from state.\n *\n * @param options - The options bag.\n * @param options.address - Remove transactions from this account only. Defaults to all accounts.\n * @param options.chainId - Remove transactions for the specified chain only. Defaults to all chains.\n */\nexport type TransactionControllerWipeTransactionsAction = {\n type: `TransactionController:wipeTransactions`;\n handler: TransactionController['wipeTransactions'];\n};\n\n/**\n * Adds external provided transaction to state as confirmed transaction.\n *\n * @param transactionMeta - TransactionMeta to add transactions.\n * @param transactionReceipt - TransactionReceipt of the external transaction.\n * @param baseFeePerGas - Base fee per gas of the external transaction.\n */\nexport type TransactionControllerConfirmExternalTransactionAction = {\n type: `TransactionController:confirmExternalTransaction`;\n handler: TransactionController['confirmExternalTransaction'];\n};\n\n/**\n * Update the gas values of a transaction.\n *\n * @param transactionId - The ID of the transaction to update.\n * @param gasValues - Gas values to update.\n * @param gasValues.gas - Same as transaction.gasLimit.\n * @param gasValues.gasLimit - Maxmimum number of units of gas to use for this transaction.\n * @param gasValues.gasPrice - Price per gas for legacy transactions.\n * @param gasValues.maxPriorityFeePerGas - Maximum amount per gas to give to validator as incentive.\n * @param gasValues.maxFeePerGas - Maximum amount per gas to pay for the transaction, including the priority fee.\n * @param gasValues.estimateUsed - Which estimate level was used.\n * @param gasValues.estimateSuggested - Which estimate level that the API suggested.\n * @param gasValues.defaultGasEstimates - The default estimate for gas.\n * @param gasValues.originalGasEstimate - Original estimate for gas.\n * @param gasValues.userEditedGasLimit - The gas limit supplied by user.\n * @param gasValues.userFeeLevel - Estimate level user selected.\n * @returns The updated transactionMeta.\n */\nexport type TransactionControllerUpdateTransactionGasFeesAction = {\n type: `TransactionController:updateTransactionGasFees`;\n handler: TransactionController['updateTransactionGasFees'];\n};\n\n/**\n * Update the previous gas values of a transaction.\n *\n * @param transactionId - The ID of the transaction to update.\n * @param previousGas - Previous gas values to update.\n * @param previousGas.gasLimit - Maximum number of units of gas to use for this transaction.\n * @param previousGas.maxFeePerGas - Maximum amount per gas to pay for the transaction, including the priority fee.\n * @param previousGas.maxPriorityFeePerGas - Maximum amount per gas to give to validator as incentive.\n * @returns The updated transactionMeta.\n */\nexport type TransactionControllerUpdatePreviousGasParamsAction = {\n type: `TransactionController:updatePreviousGasParams`;\n handler: TransactionController['updatePreviousGasParams'];\n};\n\n/**\n * Acquires a nonce lock for the given address on the specified network,\n * ensuring that nonces are assigned sequentially without conflicts.\n *\n * @param address - The account address for which to acquire the nonce lock.\n * @param networkClientId - The ID of the network client to use.\n * @returns A promise that resolves to a nonce lock containing the next nonce and a release function.\n */\nexport type TransactionControllerGetNonceLockAction = {\n type: `TransactionController:getNonceLock`;\n handler: TransactionController['getNonceLock'];\n};\n\n/**\n * Updates the editable parameters of a transaction.\n *\n * @param txId - The ID of the transaction to update.\n * @param params - The editable parameters to update.\n * @param params.containerTypes - Container types applied to the parameters.\n * @param params.data - Data to pass with the transaction.\n * @param params.from - Address to send the transaction from.\n * @param params.gas - Maximum number of units of gas to use for the transaction.\n * @param params.gasPrice - Price per gas for legacy transactions.\n * @param params.maxFeePerGas - Maximum amount per gas to pay for the transaction, including the priority fee.\n * @param params.maxPriorityFeePerGas - Maximum amount per gas to give to validator as incentive.\n * @param params.updateType - Whether to update the transaction type. Defaults to `true`.\n * @param params.to - Address to send the transaction to.\n * @param params.value - Value associated with the transaction.\n * @returns The updated transaction metadata.\n */\nexport type TransactionControllerUpdateEditableParamsAction = {\n type: `TransactionController:updateEditableParams`;\n handler: TransactionController['updateEditableParams'];\n};\n\n/**\n * Update the isActive state of a transaction.\n *\n * @param transactionId - The ID of the transaction to update.\n * @param isActive - The active state.\n */\nexport type TransactionControllerSetTransactionActiveAction = {\n type: `TransactionController:setTransactionActive`;\n handler: TransactionController['setTransactionActive'];\n};\n\n/**\n * Signs and returns the raw transaction data for provided transaction params list.\n *\n * @param listOfTxParams - The list of transaction params to approve.\n * @param opts - Options bag.\n * @param opts.hasNonce - Whether the transactions already have a nonce.\n * @returns The raw transactions.\n */\nexport type TransactionControllerApproveTransactionsWithSameNonceAction = {\n type: `TransactionController:approveTransactionsWithSameNonce`;\n handler: TransactionController['approveTransactionsWithSameNonce'];\n};\n\n/**\n * Update a custodial transaction.\n *\n * @param request - The custodial transaction update request.\n *\n * @returns The updated transaction metadata.\n */\nexport type TransactionControllerUpdateCustodialTransactionAction = {\n type: `TransactionController:updateCustodialTransaction`;\n handler: TransactionController['updateCustodialTransaction'];\n};\n\n/**\n * Search transaction metadata for matching entries.\n *\n * @param opts - Options bag.\n * @param opts.initialList - The transactions to search. Defaults to the current state.\n * @param opts.limit - The maximum number of transactions to return. No limit by default.\n * @param opts.searchCriteria - An object containing values or functions for transaction properties to filter transactions with.\n * @returns An array of transactions matching the provided options.\n */\nexport type TransactionControllerGetTransactionsAction = {\n type: `TransactionController:getTransactions`;\n handler: TransactionController['getTransactions'];\n};\n\n/**\n * Estimates the gas fees for a transaction.\n *\n * @param args - The arguments for estimating gas fees.\n * @param args.transactionParams - The transaction parameters to estimate fees for.\n * @param args.chainId - The chain ID to use. If not provided, the network client ID is used to determine the chain.\n * @param args.networkClientId - The network client ID to use for the estimation.\n * @returns A promise that resolves to the estimated gas fee response.\n */\nexport type TransactionControllerEstimateGasFeeAction = {\n type: `TransactionController:estimateGasFee`;\n handler: TransactionController['estimateGasFee'];\n};\n\n/**\n * Determine the layer 1 gas fee for the given transaction parameters.\n *\n * @param request - The request object.\n * @param request.transactionParams - The transaction parameters to estimate the layer 1 gas fee for.\n * @param request.chainId - The ID of the chain where the transaction will be executed.\n * @param request.networkClientId - The ID of a specific network client to process the transaction.\n * @returns The layer 1 gas fee.\n */\nexport type TransactionControllerGetLayer1GasFeeAction = {\n type: `TransactionController:getLayer1GasFee`;\n handler: TransactionController['getLayer1GasFee'];\n};\n\n/**\n * Removes unapproved transactions from state.\n */\nexport type TransactionControllerClearUnapprovedTransactionsAction = {\n type: `TransactionController:clearUnapprovedTransactions`;\n handler: TransactionController['clearUnapprovedTransactions'];\n};\n\n/**\n * Stop the signing process for a specific transaction.\n * Throws an error causing the transaction status to be set to failed.\n *\n * @param transactionId - The ID of the transaction to stop signing.\n */\nexport type TransactionControllerAbortTransactionSigningAction = {\n type: `TransactionController:abortTransactionSigning`;\n handler: TransactionController['abortTransactionSigning'];\n};\n\n/**\n * Update the transaction data of a single nested transaction within an atomic batch transaction.\n *\n * @param options - The options bag.\n * @param options.transactionId - ID of the atomic batch transaction.\n * @param options.transactionIndex - Index of the nested transaction within the atomic batch transaction.\n * @param options.transactionData - New data to set for the nested transaction.\n * @returns The updated data for the atomic batch transaction.\n */\nexport type TransactionControllerUpdateAtomicBatchDataAction = {\n type: `TransactionController:updateAtomicBatchData`;\n handler: TransactionController['updateAtomicBatchData'];\n};\n\n/**\n * Update the selected gas fee token for a transaction.\n *\n * @param transactionId - The ID of the transaction to update.\n * @param contractAddress - The contract address of the selected gas fee token.\n */\nexport type TransactionControllerUpdateSelectedGasFeeTokenAction = {\n type: `TransactionController:updateSelectedGasFeeToken`;\n handler: TransactionController['updateSelectedGasFeeToken'];\n};\n\n/**\n * Update the required transaction IDs for a transaction.\n *\n * @param request - The request object.\n * @param request.transactionId - The ID of the transaction to update.\n * @param request.requiredTransactionIds - The additional required transaction IDs.\n * @param request.append - Whether to append the IDs to any existing values. Defaults to true.\n */\nexport type TransactionControllerUpdateRequiredTransactionIdsAction = {\n type: `TransactionController:updateRequiredTransactionIds`;\n handler: TransactionController['updateRequiredTransactionIds'];\n};\n\n/**\n * Emulate a new transaction.\n *\n * @param transactionId - The transaction ID.\n */\nexport type TransactionControllerEmulateNewTransactionAction = {\n type: `TransactionController:emulateNewTransaction`;\n handler: TransactionController['emulateNewTransaction'];\n};\n\n/**\n * Emulate a transaction update.\n *\n * @param transactionMeta - Transaction metadata.\n */\nexport type TransactionControllerEmulateTransactionUpdateAction = {\n type: `TransactionController:emulateTransactionUpdate`;\n handler: TransactionController['emulateTransactionUpdate'];\n};\n\n/**\n * Retrieve available gas fee tokens for a transaction.\n *\n * @param request - The request object containing transaction details.\n * @returns The list of available gas fee tokens.\n */\nexport type TransactionControllerGetGasFeeTokensAction = {\n type: `TransactionController:getGasFeeTokens`;\n handler: TransactionController['getGasFeeTokens'];\n};\n\n/**\n * Union of all TransactionController action types.\n */\nexport type TransactionControllerMethodActions =\n | TransactionControllerHandleMethodDataAction\n | TransactionControllerAddTransactionBatchAction\n | TransactionControllerIsAtomicBatchSupportedAction\n | TransactionControllerAddTransactionAction\n | TransactionControllerStopTransactionAction\n | TransactionControllerSpeedUpTransactionAction\n | TransactionControllerEstimateGasAction\n | TransactionControllerEstimateGasBatchAction\n | TransactionControllerEstimateGasBufferedAction\n | TransactionControllerUpdateTransactionAction\n | TransactionControllerUpdateTransactionMetadataAction\n | TransactionControllerFailTransactionAction\n | TransactionControllerUpdateSecurityAlertResponseAction\n | TransactionControllerWipeTransactionsAction\n | TransactionControllerConfirmExternalTransactionAction\n | TransactionControllerUpdateTransactionGasFeesAction\n | TransactionControllerUpdatePreviousGasParamsAction\n | TransactionControllerGetNonceLockAction\n | TransactionControllerUpdateEditableParamsAction\n | TransactionControllerSetTransactionActiveAction\n | TransactionControllerApproveTransactionsWithSameNonceAction\n | TransactionControllerUpdateCustodialTransactionAction\n | TransactionControllerGetTransactionsAction\n | TransactionControllerEstimateGasFeeAction\n | TransactionControllerGetLayer1GasFeeAction\n | TransactionControllerClearUnapprovedTransactionsAction\n | TransactionControllerAbortTransactionSigningAction\n | TransactionControllerUpdateAtomicBatchDataAction\n | TransactionControllerUpdateSelectedGasFeeTokenAction\n | TransactionControllerUpdateRequiredTransactionIdsAction\n | TransactionControllerEmulateNewTransactionAction\n | TransactionControllerEmulateTransactionUpdateAction\n | TransactionControllerGetGasFeeTokensAction;\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TransactionController.d.ts","sourceRoot":"","sources":["../src/TransactionController.ts"],"names":[],"mappings":"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"}
|