UNPKG

@lifi/sdk

Version:

LI.FI Any-to-Any Cross-Chain-Swap SDK

29 lines 1.16 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.isBatchingSupported = isBatchingSupported; const types_1 = require("@lifi/types"); const actions_1 = require("viem/actions"); const utils_1 = require("viem/utils"); const config_js_1 = require("../../config.js"); const sleep_js_1 = require("../../utils/sleep.js"); async function isBatchingSupported({ client, chainId, skipReady = false, }) { const _client = client ?? (await config_js_1.config.getProvider(types_1.ChainType.EVM)?.getWalletClient?.()); if (!_client) { throw new Error('WalletClient is not provided.'); } try { const capabilities = await Promise.race([ (0, utils_1.getAction)(_client, actions_1.getCapabilities, 'getCapabilities')({ chainId }), (0, sleep_js_1.sleep)(2_000), ]); return (capabilities?.atomicBatch?.supported || capabilities?.atomic?.status === 'supported' || (!skipReady && capabilities?.atomic?.status === 'ready') || false); } catch { return false; } } //# sourceMappingURL=isBatchingSupported.js.map