{"version":3,"file":"BridgeStrategy.mjs","sourceRoot":"","sources":["../../../src/strategy/bridge/BridgeStrategy.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,0BAA0B,EAC1B,eAAe,EACf,wBAAwB,EACzB,4BAAwB;AACzB,OAAO,EAAE,kBAAkB,EAAE,4BAAwB;AAUrD,MAAM,OAAO,cAAc;IACzB,KAAK,CAAC,SAAS,CAAC,OAAoC;QAClD,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,OAA8D;QAE9D,OAAO,0BAA0B,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,OAA6C;QACpE,OAAO,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAA6D;QACzE,MAAM,EAAE,kBAAkB,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;QACvE,MAAM,IAAI,GAAG,WAAW,CAAC,QAAQ,CAAC,IAAW,CAAC;QAE9C,MAAM,kBAAkB,CAAC;YACvB,IAAI;YACJ,kBAAkB;YAClB,SAAS;YACT,MAAM;YACN,WAAW;SACZ,CAAC,CAAC;QAEH,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,CAAC;IACxC,CAAC;CACF","sourcesContent":["import type { Hex } from '@metamask/utils';\n\nimport {\n  getBridgeBatchTransactions,\n  getBridgeQuotes,\n  getBridgeRefreshInterval,\n} from './bridge-quotes';\nimport { submitBridgeQuotes } from './bridge-submit';\nimport type { TransactionPayBridgeQuote } from './types';\nimport type {\n  PayStrategy,\n  PayStrategyExecuteRequest,\n  PayStrategyGetBatchRequest,\n  PayStrategyGetQuotesRequest,\n  PayStrategyGetRefreshIntervalRequest,\n} from '../../types';\n\nexport class BridgeStrategy implements PayStrategy<TransactionPayBridgeQuote> {\n  async getQuotes(request: PayStrategyGetQuotesRequest) {\n    return getBridgeQuotes(request);\n  }\n\n  async getBatchTransactions(\n    request: PayStrategyGetBatchRequest<TransactionPayBridgeQuote>,\n  ) {\n    return getBridgeBatchTransactions(request);\n  }\n\n  async getRefreshInterval(request: PayStrategyGetRefreshIntervalRequest) {\n    return getBridgeRefreshInterval(request);\n  }\n\n  async execute(request: PayStrategyExecuteRequest<TransactionPayBridgeQuote>) {\n    const { isSmartTransaction, quotes, messenger, transaction } = request;\n    const from = transaction.txParams.from as Hex;\n\n    await submitBridgeQuotes({\n      from,\n      isSmartTransaction,\n      messenger,\n      quotes,\n      transaction,\n    });\n\n    return { transactionHash: undefined };\n  }\n}\n"]}