UNPKG

@reliverse/rse-sdk

Version:

@reliverse/rse-sdk without cli. @reliverse/rse-sdk allows you to create new plugins for @reliverse/rse CLI, interact with reliverse.org, and even extend your own CLI functionality (you may also try @reliverse/dler-sdk for this case).

32 lines (31 loc) 916 B
import { UTApi } from "uploadthing/server"; export async function uploadToUploadthing(files) { const apiKey = process.env.UPLOADTHING_API_KEY; if (!apiKey) { throw new Error("Missing UPLOADTHING_API_KEY"); } const utapi = new UTApi({ token: apiKey }); const results = []; for (const file of files) { const blob = new Blob([file.data], { type: file.type }); const fileEsque = Object.assign(blob, { name: file.name, lastModified: Date.now() }); const res = await utapi.uploadFiles(fileEsque); const uploadedFile = res; if (!uploadedFile.data) { throw new Error("Failed to upload file"); } results.push({ // @ts-expect-error TODO fix ts url: res.data.ufsUrl, // @ts-expect-error TODO fix ts key: res.data.key, // @ts-expect-error TODO fix ts size: res.data.size, name: file.name }); } return results; }