@bsv/wallet-toolbox
Version:
BRC100 conforming wallet, wallet storage and wallet signer components
45 lines • 1.69 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.asBuffer = asBuffer;
exports.asString = asString;
exports.asArray = asArray;
/**
* Coerce a value to Buffer if currently encoded as a string or
* @param val Buffer or string or number[]. If string, encoding param applies. If number[], Buffer.from constructor is used.
* @param encoding defaults to 'hex'. Only applies to val of type string
* @returns input val if it is a Buffer or new Buffer from string val
* @publicbody
*/
function asBuffer(val, encoding) {
let b;
if (Buffer.isBuffer(val))
b = val;
else if (typeof val === 'string')
b = Buffer.from(val, encoding !== null && encoding !== void 0 ? encoding : 'hex');
else
b = Buffer.from(val);
return b;
}
/**
* Coerce a value to an encoded string if currently a Buffer or number[]
* @param val Buffer or string or number[]. If string, encoding param applies. If number[], Buffer.from constructor is used.
* @param encoding defaults to 'hex'
* @returns input val if it is a string; or if number[], first converted to Buffer then as Buffer; if Buffer encoded using `encoding`
* @publicbody
*/
function asString(val, encoding) {
if (Array.isArray(val))
val = Buffer.from(val);
return Buffer.isBuffer(val) ? val.toString(encoding !== null && encoding !== void 0 ? encoding : 'hex') : val;
}
function asArray(val, encoding) {
let a;
if (Array.isArray(val))
a = val;
else if (Buffer.isBuffer(val))
a = Array.from(val);
else
a = Array.from(Buffer.from(val, encoding || 'hex'));
return a;
}
//# sourceMappingURL=utilityHelpers.buffer.js.map