UNPKG

@harmoniclabs/buildooor

Version:

Cardano transaction builder in typescript

35 lines (34 loc) 1.6 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.numberFromRational = exports.tryCborFromRational = exports.cborFromRational = exports.isRationalOrUndefined = exports.isRational = exports.canBeCborPostiveRational = void 0; var cbor_1 = require("@harmoniclabs/cbor"); function canBeCborPostiveRational(cbor) { return cbor instanceof cbor_1.CborPositiveRational || (cbor instanceof cbor_1.CborTag && Number(cbor.tag) === 30 && cbor.data instanceof cbor_1.CborArray && cbor.data.array.length === 2 && cbor.data.array[0] instanceof cbor_1.CborUInt && cbor.data.array[1] instanceof cbor_1.CborUInt); } exports.canBeCborPostiveRational = canBeCborPostiveRational; function isRational(n) { return typeof n === "number" || n instanceof cbor_1.CborPositiveRational; } exports.isRational = isRational; function isRationalOrUndefined(n) { return typeof n == "undefined" || isRational(n); } exports.isRationalOrUndefined = isRationalOrUndefined; function cborFromRational(n) { return n instanceof cbor_1.CborPositiveRational ? n : cbor_1.CborPositiveRational.fromNumber(n); } exports.cborFromRational = cborFromRational; function tryCborFromRational(n) { return n instanceof cbor_1.CborPositiveRational ? n : (typeof n === "number" ? cbor_1.CborPositiveRational.fromNumber(n) : undefined); } exports.tryCborFromRational = tryCborFromRational; function numberFromRational(n) { return n instanceof cbor_1.CborPositiveRational ? n.toNumber() : Number(n); } exports.numberFromRational = numberFromRational;