File size: 555 Bytes
8aa943e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
export const downloadFileAsBase64URL = async (remoteUrl: string): Promise<string> => {
  const controller = new AbortController()

  // download the file
  const response = await fetch(remoteUrl, {
    signal: controller.signal
  })

  // get as Buffer
  const arrayBuffer = await response.arrayBuffer()
  const buffer = Buffer.from(arrayBuffer)

  // convert it to base64
  const base64 = buffer.toString('base64')

  const contentType = response.headers.get('content-type')

  const assetUrl = `data:${contentType};base64,${base64}`
  return assetUrl
};