File size: 787 Bytes
c20600f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
async function uploadToTmpFiles(buffer, fileName) {
  const formData = new FormData()
  formData.append('file', new Blob([buffer]), fileName)
  try {
    const response = await fetch('https://tmpfiles.org/api/v1/upload', {
      method: 'POST',
      body: formData
    })
    const data = await response.json()
    if (data.status === 'success' && data.data && data.data.url) {
      let originalUrl = data.data.url
      let parts = originalUrl.split('/')
      let fileId = parts[parts.length - 2]
      let name = parts[parts.length - 1]
      return `https://tmpfiles.org/dl/${fileId}/${name}`
    } else {
      throw new Error('Upload failed - no URL returned')
    }
  } catch (err) {
    throw new Error('Upload failed: ' + err.message)
  }
}

module.exports = uploadToTmpFiles;