This commit is contained in:
Thomas Hobson 2021-02-21 03:13:56 +13:00
parent d8239c2703
commit 91420c39d7
No known key found for this signature in database
GPG key ID: 9F1FD9D87950DB6F
18 changed files with 2328 additions and 0 deletions

34
api/src/helpers.js Normal file
View file

@ -0,0 +1,34 @@
const fs = require("fs"),
path= require("path"),
util = require("util"),
fetch = require("node-fetch"),
urlp = require("url")
module.exports = {
async buffer_from_u_r_l(url){
if(!(url instanceof URL))
url = new URL(url)
if(url.protocol == "file:"){
//eslint-disable-next-line snakecasejs/snakecasejs
return await util.promisify(fs.read_file)(urlp.fileURLToPath(url))
}else{
return await fetch({
url: url.toString()
})
}
},
add_url_base_if_required(url, base){
try{
return new URL(url)
}catch{
//Assume this is a file name
return new URL(url, base + "/")
}
},
url_basename(url){
return path.basename(url.pathname)
},
}