refactor: simplify data resolution logic in readData function

This commit is contained in:
Flummi 2025-03-18 13:23:46 +01:00
parent 68f345d396
commit 694c2336b3
2 changed files with 10 additions and 16 deletions

12
dist/index.js vendored
View File

@ -18,14 +18,10 @@ const readData = (res, mode) => new Promise((resolve, reject) => {
.on("end", () => {
try {
const data = decompress(Buffer.concat(chunks), res.headers["content-encoding"]);
if (mode === "json")
resolve(JSON.parse(data.toString("utf8")));
else if (mode === "buffer")
resolve(data);
else if (mode === "arraybuffer")
resolve(new Uint8Array(data).buffer);
else
resolve(data.toString("utf8"));
resolve((mode === "json" ? JSON.parse(data.toString("utf8")) :
mode === "buffer" ? data :
mode === "arraybuffer" ? new Uint8Array(data).buffer :
data.toString("utf8")));
}
catch (err) {
reject(err);

View File

@ -41,14 +41,12 @@ const readData = <T>(
.on("end", () => {
try {
const data = decompress(Buffer.concat(chunks), res.headers["content-encoding"]);
if(mode === "json")
resolve(JSON.parse(data.toString("utf8")));
else if(mode === "buffer")
resolve(data as T);
else if(mode === "arraybuffer")
resolve(new Uint8Array(data).buffer as T);
else
resolve(data.toString("utf8") as T);
resolve((
mode === "json" ? JSON.parse(data.toString("utf8")) :
mode === "buffer" ? data :
mode === "arraybuffer" ? new Uint8Array(data).buffer :
data.toString("utf8")
)) as T;
}
catch(err: any) {
reject(err);