1
0
mirror of https://github.com/spacebarchat/server.git synced 2024-11-25 03:33:33 +01:00

handleFile() now returns mime_type and size

This commit is contained in:
Flam3rboy 2021-10-09 17:25:26 +02:00
parent d5cdc9198c
commit 0ef82be133

View File

@ -25,15 +25,30 @@ export async function uploadFile(path: string, file: Express.Multer.File) {
return result;
}
export async function handleFile(path: string, body?: string): Promise<string | undefined> {
if (!body || !body.startsWith("data:")) return body;
export async function handleFile(
path: string,
body?: string
): Promise<
| (string & {
id: string;
content_type: string;
size: number;
url: string;
})
| undefined
> {
if (!body || !body.startsWith("data:")) return undefined;
try {
const mimetype = body.split(":")[1].split(";")[0];
const buffer = Buffer.from(body.split(",")[1], "base64");
// @ts-ignore
const { id } = await uploadFile(path, { buffer, mimetype, originalname: "banner" });
return id;
const file = await uploadFile(path, { buffer, mimetype, originalname: "banner" });
const obj = file.id;
for (const key in file) {
obj[key] = file[key];
}
return obj;
} catch (error) {
console.error(error);
throw new HTTPError("Invalid " + path);