UNPKG

@nuxt/content

Version:

Write your content inside your Nuxt app

16 lines (15 loc) 676 B
export async function decompressSQLDump(base64Str, compressionType = "gzip") { let binaryData; if (typeof Buffer !== "undefined") { const buffer = Buffer.from(base64Str, "base64"); binaryData = Uint8Array.from(buffer); } else if (typeof atob !== "undefined") { binaryData = Uint8Array.from(atob(base64Str), (c) => c.charCodeAt(0)); } else { throw new TypeError("No base64 decoding method available"); } const response = new Response(new Blob([binaryData])); const decompressedStream = response.body?.pipeThrough(new DecompressionStream(compressionType)); const text = await new Response(decompressedStream).text(); return JSON.parse(text); }