@metamask/bridge-status-controller 67.0.0 → 68.0.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.
Files changed (44) hide show
  1. package/CHANGELOG.md +30 -1
  2. package/dist/bridge-status-controller.cjs +43 -24
  3. package/dist/bridge-status-controller.cjs.map +1 -1
  4. package/dist/bridge-status-controller.d.cts +8 -7
  5. package/dist/bridge-status-controller.d.cts.map +1 -1
  6. package/dist/bridge-status-controller.d.mts +8 -7
  7. package/dist/bridge-status-controller.d.mts.map +1 -1
  8. package/dist/bridge-status-controller.intent.cjs +80 -18
  9. package/dist/bridge-status-controller.intent.cjs.map +1 -1
  10. package/dist/bridge-status-controller.intent.d.cts +38 -5
  11. package/dist/bridge-status-controller.intent.d.cts.map +1 -1
  12. package/dist/bridge-status-controller.intent.d.mts +38 -5
  13. package/dist/bridge-status-controller.intent.d.mts.map +1 -1
  14. package/dist/bridge-status-controller.intent.mjs +78 -16
  15. package/dist/bridge-status-controller.intent.mjs.map +1 -1
  16. package/dist/bridge-status-controller.mjs +45 -26
  17. package/dist/bridge-status-controller.mjs.map +1 -1
  18. package/dist/types.cjs.map +1 -1
  19. package/dist/types.d.cts +9 -2
  20. package/dist/types.d.cts.map +1 -1
  21. package/dist/types.d.mts +9 -2
  22. package/dist/types.d.mts.map +1 -1
  23. package/dist/types.mjs.map +1 -1
  24. package/dist/utils/intent-api.cjs +10 -6
  25. package/dist/utils/intent-api.cjs.map +1 -1
  26. package/dist/utils/intent-api.d.cts +8 -7
  27. package/dist/utils/intent-api.d.cts.map +1 -1
  28. package/dist/utils/intent-api.d.mts +8 -7
  29. package/dist/utils/intent-api.d.mts.map +1 -1
  30. package/dist/utils/intent-api.mjs +10 -6
  31. package/dist/utils/intent-api.mjs.map +1 -1
  32. package/dist/utils/metrics.cjs +3 -1
  33. package/dist/utils/metrics.cjs.map +1 -1
  34. package/dist/utils/metrics.d.cts +3 -1
  35. package/dist/utils/metrics.d.cts.map +1 -1
  36. package/dist/utils/metrics.d.mts +3 -1
  37. package/dist/utils/metrics.d.mts.map +1 -1
  38. package/dist/utils/metrics.mjs +3 -1
  39. package/dist/utils/metrics.mjs.map +1 -1
  40. package/dist/utils/transaction.d.cts +11 -1
  41. package/dist/utils/transaction.d.cts.map +1 -1
  42. package/dist/utils/transaction.d.mts +11 -1
  43. package/dist/utils/transaction.d.mts.map +1 -1
  44. package/package.json +9 -9
@@ -9,18 +9,19 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
9
9
  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");
10
10
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
11
  };
12
- var _BridgeStatusController_instances, _BridgeStatusController_pollingTokensByTxMetaId, _BridgeStatusController_intentStatusManager, _BridgeStatusController_clientId, _BridgeStatusController_fetchFn, _BridgeStatusController_config, _BridgeStatusController_addTransactionFn, _BridgeStatusController_addTransactionBatchFn, _BridgeStatusController_updateTransactionFn, _BridgeStatusController_estimateGasFeeFn, _BridgeStatusController_trace, _BridgeStatusController_markTxAsFailed, _BridgeStatusController_restartPollingForIncompleteHistoryItems, _BridgeStatusController_addTxToHistory, _BridgeStatusController_rekeyHistoryItem, _BridgeStatusController_startPollingForTxId, _BridgeStatusController_shouldPollHistoryItem, _BridgeStatusController_getMultichainSelectedAccount, _BridgeStatusController_handleFetchFailure, _BridgeStatusController_fetchBridgeTxStatus, _BridgeStatusController_getJwt, _BridgeStatusController_getSrcTxHash, _BridgeStatusController_updateSrcTxHash, _BridgeStatusController_wipeBridgeStatusByChainId, _BridgeStatusController_handleNonEvmTx, _BridgeStatusController_waitForHashAndReturnFinalTxMeta, _BridgeStatusController_waitForTxConfirmation, _BridgeStatusController_handleApprovalTx, _BridgeStatusController_handleEvmTransaction, _BridgeStatusController_handleUSDTAllowanceReset, _BridgeStatusController_calculateGasFees, _BridgeStatusController_handleEvmTransactionBatch, _BridgeStatusController_trackUnifiedSwapBridgeEvent;
12
+ var _BridgeStatusController_instances, _BridgeStatusController_pollingTokensByTxMetaId, _BridgeStatusController_intentManager, _BridgeStatusController_clientId, _BridgeStatusController_fetchFn, _BridgeStatusController_config, _BridgeStatusController_addTransactionFn, _BridgeStatusController_addTransactionBatchFn, _BridgeStatusController_updateTransactionFn, _BridgeStatusController_estimateGasFeeFn, _BridgeStatusController_trace, _BridgeStatusController_markTxAsFailed, _BridgeStatusController_restartPollingForIncompleteHistoryItems, _BridgeStatusController_addTxToHistory, _BridgeStatusController_rekeyHistoryItem, _BridgeStatusController_startPollingForTxId, _BridgeStatusController_shouldPollHistoryItem, _BridgeStatusController_getMultichainSelectedAccount, _BridgeStatusController_handleFetchFailure, _BridgeStatusController_fetchBridgeTxStatus, _BridgeStatusController_getJwt, _BridgeStatusController_getSrcTxHash, _BridgeStatusController_updateSrcTxHash, _BridgeStatusController_wipeBridgeStatusByChainId, _BridgeStatusController_handleNonEvmTx, _BridgeStatusController_waitForHashAndReturnFinalTxMeta, _BridgeStatusController_waitForTxConfirmation, _BridgeStatusController_handleApprovalTx, _BridgeStatusController_handleEvmTransaction, _BridgeStatusController_handleUSDTAllowanceReset, _BridgeStatusController_calculateGasFees, _BridgeStatusController_handleEvmTransactionBatch, _BridgeStatusController_trackUnifiedSwapBridgeEvent;
13
13
  import { formatChainIdToHex, isNonEvmChainId, StatusTypes, UnifiedSwapBridgeEventName, formatChainIdToCaip, isCrossChain, isTronChainId, isEvmTxData, isHardwareWallet, MetricsActionType, MetaMetricsSwapsEventSource, isBitcoinTrade, isTronTrade, AbortReason, PollingStatus } from "@metamask/bridge-controller";
14
14
  import { toHex } from "@metamask/controller-utils";
15
+ import { SignTypedDataVersion } from "@metamask/keyring-controller";
15
16
  import { StaticIntervalPollingController } from "@metamask/polling-controller";
16
17
  import { TransactionStatus, TransactionType } from "@metamask/transaction-controller";
17
18
  import { numberToHex } from "@metamask/utils";
18
- import { IntentStatusManager } from "./bridge-status-controller.intent.mjs";
19
+ import { IntentManager } from "./bridge-status-controller.intent.mjs";
19
20
  import { BRIDGE_PROD_API_BASE_URL, BRIDGE_STATUS_CONTROLLER_NAME, DEFAULT_BRIDGE_STATUS_CONTROLLER_STATE, MAX_ATTEMPTS, REFRESH_INTERVAL_MS, TraceName } from "./constants.mjs";
20
21
  import { BridgeClientId } from "./types.mjs";
21
22
  import { fetchBridgeTxStatus, getStatusRequestWithSrcTxHash, shouldSkipFetchDueToFetchFailures } from "./utils/bridge-status.mjs";
22
23
  import { getTxGasEstimates } from "./utils/gas.mjs";
23
- import { IntentApiImpl, mapIntentOrderStatusToTransactionStatus, translateIntentOrderToBridgeStatus } from "./utils/intent-api.mjs";
24
+ import { mapIntentOrderStatusToTransactionStatus } from "./utils/intent-api.mjs";
24
25
  import { getFinalizedTxProperties, getPriceImpactFromQuote, getRequestMetadataFromHistory, getRequestParamFromHistory, getTradeDataFromHistory, getEVMTxPropertiesFromTransactionMeta, getTxStatusesFromHistory, getPreConfirmationPropertiesFromQuote } from "./utils/metrics.mjs";
25
26
  import { findAndUpdateTransactionsInBatch, getAddTransactionBatchParams, getClientRequest, getHistoryKey, getIntentFromQuote, getStatusRequestParams, handleApprovalDelay, handleMobileHardwareWalletDelay, handleNonEvmTxResponse, generateActionId, waitForTxConfirmation, rekeyHistoryItemInState } from "./utils/transaction.mjs";
26
27
  const metadata = {
@@ -47,7 +48,7 @@ export class BridgeStatusController extends StaticIntervalPollingController() {
47
48
  });
48
49
  _BridgeStatusController_instances.add(this);
49
50
  _BridgeStatusController_pollingTokensByTxMetaId.set(this, {});
50
- _BridgeStatusController_intentStatusManager.set(this, void 0);
51
+ _BridgeStatusController_intentManager.set(this, void 0);
51
52
  _BridgeStatusController_clientId.set(this, void 0);
52
53
  _BridgeStatusController_fetchFn.set(this, void 0);
53
54
  _BridgeStatusController_config.set(this, void 0);
@@ -204,7 +205,7 @@ export class BridgeStatusController extends StaticIntervalPollingController() {
204
205
  });
205
206
  });
206
207
  _BridgeStatusController_addTxToHistory.set(this, (startPollingForBridgeTxStatusArgs, actionId) => {
207
- const { bridgeTxMeta, statusRequest, quoteResponse, startTime, slippagePercentage, initialDestAssetBalance, targetContractAddress, approvalTxId, isStxEnabled, location, accountAddress: selectedAddress, } = startPollingForBridgeTxStatusArgs;
208
+ const { bridgeTxMeta, statusRequest, quoteResponse, startTime, slippagePercentage, initialDestAssetBalance, targetContractAddress, approvalTxId, isStxEnabled, location, abTests, accountAddress: selectedAddress, } = startPollingForBridgeTxStatusArgs;
208
209
  // Determine the key for this history item:
209
210
  // - For pre-submission (non-batch EVM): use actionId
210
211
  // - For post-submission or other cases: use bridgeTxMeta.id
@@ -245,6 +246,7 @@ export class BridgeStatusController extends StaticIntervalPollingController() {
245
246
  isStxEnabled: isStxEnabled ?? false,
246
247
  featureId: quoteResponse.featureId,
247
248
  location,
249
+ ...(abTests && { abTests }),
248
250
  };
249
251
  this.update((state) => {
250
252
  // Use actionId as key for pre-submission, or txMeta.id for post-submission
@@ -376,16 +378,14 @@ export class BridgeStatusController extends StaticIntervalPollingController() {
376
378
  try {
377
379
  let status;
378
380
  let validationFailures = [];
379
- let intentTranslation = null;
380
- let intentOrderStatus;
381
381
  const isIntent = Boolean(historyItem.quote.intent);
382
382
  if (isIntent) {
383
- const { srcChainId } = historyItem.quote;
384
- const intentApi = new IntentApiImpl(__classPrivateFieldGet(this, _BridgeStatusController_config, "f").customBridgeApiBaseUrl, __classPrivateFieldGet(this, _BridgeStatusController_fetchFn, "f"));
385
- const intentOrder = await intentApi.getOrderStatus(bridgeTxMetaId, historyItem.quote.intent?.protocol ?? '', srcChainId.toString(), __classPrivateFieldGet(this, _BridgeStatusController_clientId, "f"), await __classPrivateFieldGet(this, _BridgeStatusController_getJwt, "f").call(this));
386
- intentOrderStatus = intentOrder.status;
387
- intentTranslation = translateIntentOrderToBridgeStatus(intentOrder, srcChainId, historyItem.status.srcChain.txHash);
388
- status = intentTranslation.status;
383
+ const intentTxStatus = await __classPrivateFieldGet(this, _BridgeStatusController_intentManager, "f").getIntentTransactionStatus(bridgeTxMetaId, historyItem, __classPrivateFieldGet(this, _BridgeStatusController_clientId, "f"));
384
+ if (intentTxStatus?.bridgeStatus === null ||
385
+ intentTxStatus?.bridgeStatus === undefined) {
386
+ return;
387
+ }
388
+ status = intentTxStatus.bridgeStatus.status;
389
389
  }
390
390
  else {
391
391
  // We try here because we receive 500 errors from Bridge API if we try to fetch immediately after submitting the source tx
@@ -425,8 +425,8 @@ export class BridgeStatusController extends StaticIntervalPollingController() {
425
425
  this.update((state) => {
426
426
  state.txHistory[bridgeTxMetaId] = newBridgeHistoryItem;
427
427
  });
428
- if (isIntent && intentTranslation && intentOrderStatus) {
429
- __classPrivateFieldGet(this, _BridgeStatusController_intentStatusManager, "f").syncTransactionFromIntentStatus(bridgeTxMetaId, historyItem, intentTranslation, intentOrderStatus);
428
+ if (isIntent) {
429
+ __classPrivateFieldGet(this, _BridgeStatusController_intentManager, "f").syncTransactionFromIntentStatus(bridgeTxMetaId, historyItem);
430
430
  }
431
431
  // 5. After effects
432
432
  const pollingToken = __classPrivateFieldGet(this, _BridgeStatusController_pollingTokensByTxMetaId, "f")[bridgeTxMetaId];
@@ -711,9 +711,10 @@ export class BridgeStatusController extends StaticIntervalPollingController() {
711
711
  * @param isStxEnabledOnClient - Whether smart transactions are enabled on the client, for example the getSmartTransactionsEnabled selector value from the extension
712
712
  * @param quotesReceivedContext - The context for the QuotesReceived event
713
713
  * @param location - The entry point from which the user initiated the swap or bridge (e.g. Main View, Token View, Trending Explore)
714
+ * @param abTests - A/B test context to attribute events to specific experiments
714
715
  * @returns The transaction meta
715
716
  */
716
- this.submitTx = async (accountAddress, quoteResponse, isStxEnabledOnClient, quotesReceivedContext, location = MetaMetricsSwapsEventSource.MainView) => {
717
+ this.submitTx = async (accountAddress, quoteResponse, isStxEnabledOnClient, quotesReceivedContext, location = MetaMetricsSwapsEventSource.MainView, abTests) => {
717
718
  this.messenger.call('BridgeController:stopPollingForQuotes', AbortReason.TransactionSubmitted,
718
719
  // If trade is submitted before all quotes are loaded, the QuotesReceived event is published
719
720
  // If the trade has a featureId, it means it was submitted outside of the Unified Swap and Bridge experience, so no QuotesReceived event is published
@@ -723,7 +724,7 @@ export class BridgeStatusController extends StaticIntervalPollingController() {
723
724
  throw new Error('Failed to submit cross-chain swap transaction: undefined multichain account');
724
725
  }
725
726
  const isHardwareAccount = isHardwareWallet(selectedAccount);
726
- const preConfirmationProperties = getPreConfirmationPropertiesFromQuote(quoteResponse, isStxEnabledOnClient, isHardwareAccount, location);
727
+ const preConfirmationProperties = getPreConfirmationPropertiesFromQuote(quoteResponse, isStxEnabledOnClient, isHardwareAccount, location, abTests);
727
728
  // Emit Submitted event after submit button is clicked
728
729
  !quoteResponse.featureId &&
729
730
  __classPrivateFieldGet(this, _BridgeStatusController_trackUnifiedSwapBridgeEvent, "f").call(this, UnifiedSwapBridgeEventName.Submitted, undefined, preConfirmationProperties);
@@ -845,6 +846,7 @@ export class BridgeStatusController extends StaticIntervalPollingController() {
845
846
  startTime,
846
847
  approvalTxId,
847
848
  location,
849
+ abTests,
848
850
  }, actionId);
849
851
  // Pass txFee when gasIncluded is true to use the quote's gas fees
850
852
  // instead of re-estimating (which would fail for max native token swaps)
@@ -885,6 +887,7 @@ export class BridgeStatusController extends StaticIntervalPollingController() {
885
887
  startTime,
886
888
  approvalTxId,
887
889
  location,
890
+ abTests,
888
891
  });
889
892
  }
890
893
  if (isNonEvmChainId(quoteResponse.quote.srcChainId)) {
@@ -902,23 +905,23 @@ export class BridgeStatusController extends StaticIntervalPollingController() {
902
905
  return txMeta;
903
906
  };
904
907
  /**
905
- * UI-signed intent submission (fast path): the UI generates the EIP-712 signature and calls this with the raw signature.
906
- * Here we submit the order to the intent provider and create a synthetic history entry for UX.
908
+ * Submits an intent order and creates a synthetic history entry for UX.
909
+ * The EIP-712 payload is always signed inside this controller via KeyringController.
907
910
  *
908
911
  * @param params - Object containing intent submission parameters
909
912
  * @param params.quoteResponse - Quote carrying intent data
910
- * @param params.signature - Hex signature produced by eth_signTypedData_v4
911
913
  * @param params.accountAddress - The EOA submitting the order
912
914
  * @param params.location - The entry point from which the user initiated the swap or bridge
915
+ * @param params.abTests - A/B test context to attribute events to specific experiments
913
916
  * @returns A lightweight TransactionMeta-like object for history linking
914
917
  */
915
918
  this.submitIntent = async (params) => {
916
- const { quoteResponse, signature, accountAddress, location } = params;
919
+ const { quoteResponse, accountAddress, location, abTests } = params;
917
920
  this.messenger.call('BridgeController:stopPollingForQuotes', AbortReason.TransactionSubmitted);
918
921
  // Build pre-confirmation properties for error tracking parity with submitTx
919
922
  const account = __classPrivateFieldGet(this, _BridgeStatusController_instances, "m", _BridgeStatusController_getMultichainSelectedAccount).call(this, accountAddress);
920
923
  const isHardwareAccount = Boolean(account) && isHardwareWallet(account);
921
- const preConfirmationProperties = getPreConfirmationPropertiesFromQuote(quoteResponse, false, isHardwareAccount, location);
924
+ const preConfirmationProperties = getPreConfirmationPropertiesFromQuote(quoteResponse, false, isHardwareAccount, location, abTests);
922
925
  try {
923
926
  const intent = getIntentFromQuote(quoteResponse);
924
927
  // If backend provided an approval tx for this intent quote, submit it first (on-chain),
@@ -937,6 +940,10 @@ export class BridgeStatusController extends StaticIntervalPollingController() {
937
940
  }
938
941
  }
939
942
  const { srcChainId: chainId, requestId } = quoteResponse.quote;
943
+ const signature = await this.messenger.call('KeyringController:signTypedMessage', {
944
+ from: accountAddress,
945
+ data: intent.typedData,
946
+ }, SignTypedDataVersion.V4);
940
947
  const submissionParams = {
941
948
  srcChainId: chainId.toString(),
942
949
  quoteId: requestId,
@@ -945,8 +952,7 @@ export class BridgeStatusController extends StaticIntervalPollingController() {
945
952
  userAddress: accountAddress,
946
953
  aggregatorId: intent.protocol,
947
954
  };
948
- const intentApi = new IntentApiImpl(__classPrivateFieldGet(this, _BridgeStatusController_config, "f").customBridgeApiBaseUrl, __classPrivateFieldGet(this, _BridgeStatusController_fetchFn, "f"));
949
- const intentOrder = await intentApi.submitIntent(submissionParams, __classPrivateFieldGet(this, _BridgeStatusController_clientId, "f"), await __classPrivateFieldGet(this, _BridgeStatusController_getJwt, "f").call(this));
955
+ const intentOrder = await __classPrivateFieldGet(this, _BridgeStatusController_intentManager, "f").submitIntent(submissionParams, __classPrivateFieldGet(this, _BridgeStatusController_clientId, "f"));
950
956
  const orderUid = intentOrder.id;
951
957
  // Determine transaction type: swap for same-chain, bridge for cross-chain
952
958
  const isCrossChainTx = isCrossChain(quoteResponse.quote.srcChainId, quoteResponse.quote.destChainId);
@@ -1014,6 +1020,7 @@ export class BridgeStatusController extends StaticIntervalPollingController() {
1014
1020
  approvalTxId,
1015
1021
  startTime,
1016
1022
  location,
1023
+ abTests,
1017
1024
  });
1018
1025
  // Start polling using the orderId key to route to intent manager
1019
1026
  __classPrivateFieldGet(this, _BridgeStatusController_startPollingForTxId, "f").call(this, bridgeHistoryKey);
@@ -1040,12 +1047,21 @@ export class BridgeStatusController extends StaticIntervalPollingController() {
1040
1047
  * @param eventProperties - The properties for the event
1041
1048
  */
1042
1049
  _BridgeStatusController_trackUnifiedSwapBridgeEvent.set(this, (eventName, txMetaId, eventProperties) => {
1050
+ const { ab_tests: eventAbTests } = eventProperties ?? {};
1051
+ const historyAbTests = txMetaId
1052
+ ? this.state.txHistory?.[txMetaId]?.abTests
1053
+ : undefined;
1054
+ const resolvedAbTests = eventAbTests ?? historyAbTests ?? undefined;
1043
1055
  const baseProperties = {
1044
1056
  action_type: MetricsActionType.SWAPBRIDGE_V1,
1045
1057
  location: eventProperties?.location ??
1046
1058
  (txMetaId ? this.state.txHistory?.[txMetaId]?.location : undefined) ??
1047
1059
  MetaMetricsSwapsEventSource.MainView,
1048
1060
  ...(eventProperties ?? {}),
1061
+ ...(resolvedAbTests &&
1062
+ Object.keys(resolvedAbTests).length > 0 && {
1063
+ ab_tests: resolvedAbTests,
1064
+ }),
1049
1065
  };
1050
1066
  // This will publish events for PERPS dropped tx failures as well
1051
1067
  if (!txMetaId) {
@@ -1099,9 +1115,12 @@ export class BridgeStatusController extends StaticIntervalPollingController() {
1099
1115
  customBridgeApiBaseUrl: config?.customBridgeApiBaseUrl ?? BRIDGE_PROD_API_BASE_URL,
1100
1116
  }, "f");
1101
1117
  __classPrivateFieldSet(this, _BridgeStatusController_trace, traceFn ?? ((_request, fn) => fn?.()), "f");
1102
- __classPrivateFieldSet(this, _BridgeStatusController_intentStatusManager, new IntentStatusManager({
1118
+ __classPrivateFieldSet(this, _BridgeStatusController_intentManager, new IntentManager({
1103
1119
  messenger: this.messenger,
1104
1120
  updateTransactionFn: __classPrivateFieldGet(this, _BridgeStatusController_updateTransactionFn, "f"),
1121
+ customBridgeApiBaseUrl: __classPrivateFieldGet(this, _BridgeStatusController_config, "f").customBridgeApiBaseUrl,
1122
+ fetchFn: __classPrivateFieldGet(this, _BridgeStatusController_fetchFn, "f"),
1123
+ getJwt: __classPrivateFieldGet(this, _BridgeStatusController_getJwt, "f"),
1105
1124
  }), "f");
1106
1125
  // Register action handlers
1107
1126
  this.messenger.registerActionHandler(`${BRIDGE_STATUS_CONTROLLER_NAME}:startPollingForBridgeTxStatus`, this.startPollingForBridgeTxStatus.bind(this));
@@ -1158,7 +1177,7 @@ export class BridgeStatusController extends StaticIntervalPollingController() {
1158
1177
  __classPrivateFieldGet(this, _BridgeStatusController_restartPollingForIncompleteHistoryItems, "f").call(this);
1159
1178
  }
1160
1179
  }
1161
- _BridgeStatusController_pollingTokensByTxMetaId = new WeakMap(), _BridgeStatusController_intentStatusManager = new WeakMap(), _BridgeStatusController_clientId = new WeakMap(), _BridgeStatusController_fetchFn = new WeakMap(), _BridgeStatusController_config = new WeakMap(), _BridgeStatusController_addTransactionFn = new WeakMap(), _BridgeStatusController_addTransactionBatchFn = new WeakMap(), _BridgeStatusController_updateTransactionFn = new WeakMap(), _BridgeStatusController_estimateGasFeeFn = new WeakMap(), _BridgeStatusController_trace = new WeakMap(), _BridgeStatusController_markTxAsFailed = new WeakMap(), _BridgeStatusController_restartPollingForIncompleteHistoryItems = new WeakMap(), _BridgeStatusController_addTxToHistory = new WeakMap(), _BridgeStatusController_rekeyHistoryItem = new WeakMap(), _BridgeStatusController_startPollingForTxId = new WeakMap(), _BridgeStatusController_shouldPollHistoryItem = new WeakMap(), _BridgeStatusController_handleFetchFailure = new WeakMap(), _BridgeStatusController_fetchBridgeTxStatus = new WeakMap(), _BridgeStatusController_getJwt = new WeakMap(), _BridgeStatusController_getSrcTxHash = new WeakMap(), _BridgeStatusController_updateSrcTxHash = new WeakMap(), _BridgeStatusController_wipeBridgeStatusByChainId = new WeakMap(), _BridgeStatusController_handleNonEvmTx = new WeakMap(), _BridgeStatusController_waitForHashAndReturnFinalTxMeta = new WeakMap(), _BridgeStatusController_waitForTxConfirmation = new WeakMap(), _BridgeStatusController_handleApprovalTx = new WeakMap(), _BridgeStatusController_handleEvmTransaction = new WeakMap(), _BridgeStatusController_handleUSDTAllowanceReset = new WeakMap(), _BridgeStatusController_calculateGasFees = new WeakMap(), _BridgeStatusController_handleEvmTransactionBatch = new WeakMap(), _BridgeStatusController_trackUnifiedSwapBridgeEvent = new WeakMap(), _BridgeStatusController_instances = new WeakSet(), _BridgeStatusController_getMultichainSelectedAccount = function _BridgeStatusController_getMultichainSelectedAccount(accountAddress) {
1180
+ _BridgeStatusController_pollingTokensByTxMetaId = new WeakMap(), _BridgeStatusController_intentManager = new WeakMap(), _BridgeStatusController_clientId = new WeakMap(), _BridgeStatusController_fetchFn = new WeakMap(), _BridgeStatusController_config = new WeakMap(), _BridgeStatusController_addTransactionFn = new WeakMap(), _BridgeStatusController_addTransactionBatchFn = new WeakMap(), _BridgeStatusController_updateTransactionFn = new WeakMap(), _BridgeStatusController_estimateGasFeeFn = new WeakMap(), _BridgeStatusController_trace = new WeakMap(), _BridgeStatusController_markTxAsFailed = new WeakMap(), _BridgeStatusController_restartPollingForIncompleteHistoryItems = new WeakMap(), _BridgeStatusController_addTxToHistory = new WeakMap(), _BridgeStatusController_rekeyHistoryItem = new WeakMap(), _BridgeStatusController_startPollingForTxId = new WeakMap(), _BridgeStatusController_shouldPollHistoryItem = new WeakMap(), _BridgeStatusController_handleFetchFailure = new WeakMap(), _BridgeStatusController_fetchBridgeTxStatus = new WeakMap(), _BridgeStatusController_getJwt = new WeakMap(), _BridgeStatusController_getSrcTxHash = new WeakMap(), _BridgeStatusController_updateSrcTxHash = new WeakMap(), _BridgeStatusController_wipeBridgeStatusByChainId = new WeakMap(), _BridgeStatusController_handleNonEvmTx = new WeakMap(), _BridgeStatusController_waitForHashAndReturnFinalTxMeta = new WeakMap(), _BridgeStatusController_waitForTxConfirmation = new WeakMap(), _BridgeStatusController_handleApprovalTx = new WeakMap(), _BridgeStatusController_handleEvmTransaction = new WeakMap(), _BridgeStatusController_handleUSDTAllowanceReset = new WeakMap(), _BridgeStatusController_calculateGasFees = new WeakMap(), _BridgeStatusController_handleEvmTransactionBatch = new WeakMap(), _BridgeStatusController_trackUnifiedSwapBridgeEvent = new WeakMap(), _BridgeStatusController_instances = new WeakSet(), _BridgeStatusController_getMultichainSelectedAccount = function _BridgeStatusController_getMultichainSelectedAccount(accountAddress) {
1162
1181
  return this.messenger.call('AccountsController:getAccountByAddress', accountAddress);
1163
1182
  };
1164
1183
  //# sourceMappingURL=bridge-status-controller.mjs.map