Files
xrpl-hooks-ide/utils/decodeBinary.ts
2021-12-13 17:16:34 +02:00

15 lines
519 B
TypeScript

import { decodeRestrictedBase64ToBytes } from "./decodeRestrictedBase64ToBytes";
import { isZlibData, decompressZlib } from "./zlib";
import { fromByteArray } from "base64-js";
export async function decodeBinary(input: string): Promise<ArrayBuffer> {
let data = decodeRestrictedBase64ToBytes(input);
if (isZlibData(data)) {
data = await decompressZlib(data);
}
return data.buffer as ArrayBuffer;
}
export function encodeBinary(input: ArrayBuffer): string {
return fromByteArray(new Uint8Array(input));
}