UNPKG

@atomiqlabs/sdk

Version:

atomiq labs SDK for cross-chain swaps between smart chains and bitcoin

38 lines (37 loc) 1.58 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.timeoutSignal = exports.fromHumanReadableString = exports.toHumanReadableString = void 0; var sdk_lib_1 = require("@atomiqlabs/sdk-lib"); function toHumanReadableString(amount, currencySpec) { if (amount == null) return null; return (0, sdk_lib_1.toDecimal)(amount, currencySpec.decimals, undefined, currencySpec.displayDecimals); } exports.toHumanReadableString = toHumanReadableString; function fromHumanReadableString(amount, currencySpec) { if (amount === "" || amount == null) return null; return (0, sdk_lib_1.fromDecimal)(amount, currencySpec.decimals); } exports.fromHumanReadableString = fromHumanReadableString; /** * Returns an abort signal that aborts after a specified timeout in milliseconds * * @param timeout Milliseconds to wait * @param abortReason Abort with this abort reason * @param abortSignal Abort signal to extend */ function timeoutSignal(timeout, abortReason, abortSignal) { if (timeout == null) return abortSignal; var abortController = new AbortController(); var timeoutHandle = setTimeout(function () { return abortController.abort(abortReason || new Error("Timed out")); }, timeout); if (abortSignal != null) { abortSignal.addEventListener("abort", function () { clearTimeout(timeoutHandle); abortController.abort(abortSignal.reason); }); } return abortController.signal; } exports.timeoutSignal = timeoutSignal;