UNPKG

send-crypto

Version:

A minimal JavaScript library / wallet for sending crypto assets

43 lines 5.54 kB
import { Blockchair } from "../../common/apis/blockchair"; import { Sochain } from "../../common/apis/sochain"; import { fallback, onlyMainnet } from "../../lib/retry"; import { shuffleArray } from "../../lib/utils"; export const _apiFallbacks = { fetchUTXO: (testnet, txHash, vOut) => [ () => Sochain.fetchUTXO(testnet ? "DOGETEST" : "DOGE")(txHash, vOut), ...shuffleArray(onlyMainnet(() => Blockchair.fetchUTXO(Blockchair.networks.DOGECOIN)(txHash, vOut), true)), ], fetchUTXOs: (testnet, address, confirmations) => [ () => Sochain.fetchUTXOs(testnet ? "DOGETEST" : "DOGE")(address, confirmations), ...shuffleArray(onlyMainnet(() => Blockchair.fetchUTXOs(Blockchair.networks.DOGECOIN)(address, confirmations), testnet)), ], fetchTXs: (testnet, address, confirmations = 0) => [ () => Sochain.fetchTXs(testnet ? "DOGETEST" : "DOGE")(address, confirmations), ...shuffleArray(onlyMainnet(() => Blockchair.fetchTXs(Blockchair.networks.DOGECOIN)(address, confirmations), testnet)), ], broadcastTransaction: (testnet, hex) => [ () => Sochain.broadcastTransaction(testnet ? "DOGETEST" : "DOGE")(hex), ...shuffleArray(onlyMainnet(() => Blockchair.broadcastTransaction(Blockchair.networks.DOGECOIN)(hex), testnet)), ], }; export class DOGEHandler { static getUTXOs = async (testnet, options) => { const confirmations = options && options.confirmations !== undefined ? options.confirmations : 0; const endpoints = _apiFallbacks.fetchUTXOs(testnet, options.address, confirmations); return fallback(endpoints); }; static getUTXO = async (testnet, txHash, vOut) => { const endpoints = _apiFallbacks.fetchUTXO(testnet, txHash, vOut); return fallback(endpoints); }; static getTransactions = async (testnet, options) => { const confirmations = options && options.confirmations !== undefined ? options.confirmations : 0; const endpoints = _apiFallbacks.fetchTXs(testnet, options.address, confirmations); return fallback(endpoints); }; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRE9HRUhhbmRsZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaGFuZGxlcnMvRE9HRS9ET0dFSGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDeEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRy9DLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRztJQUN6QixTQUFTLEVBQUUsQ0FBQyxPQUFnQixFQUFFLE1BQWMsRUFBRSxJQUFZLEVBQUUsRUFBRSxDQUFDO1FBQzNELEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUM7UUFDcEUsR0FBRyxZQUFZLENBQ1gsV0FBVyxDQUNQLEdBQUcsRUFBRSxDQUNELFVBQVUsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FDOUMsTUFBTSxFQUNOLElBQUksQ0FDUCxFQUNMLElBQUksQ0FDUCxDQUNKO0tBQ0o7SUFFRCxVQUFVLEVBQUUsQ0FBQyxPQUFnQixFQUFFLE9BQWUsRUFBRSxhQUFxQixFQUFFLEVBQUUsQ0FBQztRQUN0RSxHQUFHLEVBQUUsQ0FDRCxPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FDN0MsT0FBTyxFQUNQLGFBQWEsQ0FDaEI7UUFDTCxHQUFHLFlBQVksQ0FDWCxXQUFXLENBQ1AsR0FBRyxFQUFFLENBQ0QsVUFB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