@composedb/devtools
Version:
Development tools for ComposeDB projects.
36 lines (35 loc) • 1.12 kB
JavaScript
import { CID } from 'multiformats/cid';
import { fromString, toString } from 'uint8arrays';
import { applyMap } from '../utils.js';
/** @internal */ export function decodeDagJWS({ payload, signatures, link }) {
return {
payload,
signatures,
link: link ? CID.parse(link) : undefined
};
}
/** @internal */ export function encodeDagJWS({ payload, signatures, link }) {
return {
payload,
signatures,
link: link?.toString()
};
}
/** @internal */ export function decodeDagJWSResult({ jws, linkedBlock }) {
return {
jws: decodeDagJWS(jws),
linkedBlock: fromString(linkedBlock, 'base64pad')
};
}
/** @internal */ export function encodeDagJWSResult({ jws, linkedBlock }) {
return {
jws: encodeDagJWS(jws),
linkedBlock: toString(linkedBlock, 'base64pad')
};
}
/** @internal */ export function decodeSignedMap(data) {
return applyMap(data, (records)=>records.map(decodeDagJWSResult));
}
/** @internal */ export function encodeSignedMap(data) {
return applyMap(data, (records)=>records.map(encodeDagJWSResult));
}