cose-kit
Version:
This is an early prototype of a RFC8152 COSE library for node.js.
36 lines (35 loc) • 1.06 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.toUTF8 = exports.fromUTF8 = exports.areEqual = exports.concat = exports.decoder = exports.encoder = void 0;
exports.encoder = new TextEncoder();
exports.decoder = new TextDecoder();
function concat(...buffers) {
const size = buffers.reduce((acc, { length }) => acc + length, 0);
const buf = new Uint8Array(size);
let i = 0;
buffers.forEach((buffer) => {
buf.set(buffer, i);
i += buffer.length;
});
return buf;
}
exports.concat = concat;
function areEqual(buf1, buf2) {
if (buf1 === buf2) {
return true;
}
if (buf1.byteLength !== buf2.byteLength) {
return false;
}
for (let i = 0; i < buf1.byteLength; i++) {
if (buf1[i] !== buf2[i]) {
return false;
}
}
return true;
}
exports.areEqual = areEqual;
const fromUTF8 = (input) => exports.encoder.encode(input);
exports.fromUTF8 = fromUTF8;
const toUTF8 = (input) => exports.decoder.decode(input);
exports.toUTF8 = toUTF8;