filesafe/public/js/sharex.js

25 lines
865 B
JavaScript
Raw Normal View History

/* global page */
page.prepareShareX = function () {
if (!page.token) return
2018-10-09 19:52:41 +00:00
const origin = (location.hostname + location.pathname).replace(/\/(dashboard)?$/, '')
const originClean = origin.replace(/\//g, '_')
const sharexElement = document.querySelector('#ShareX')
2018-10-09 19:52:41 +00:00
const sharexFile = `{
"Name": "${originClean}",
"DestinationType": "ImageUploader, FileUploader",
"RequestType": "POST",
"RequestURL": "${location.protocol}//${origin}/api/upload",
"FileFormName": "files[]",
"Headers": {
"token": "${page.token}"
},
"ResponseType": "Text",
"URL": "$json:files[0].url$",
"ThumbnailURL": "$json:files[0].url$"
}\n`
const sharexBlob = new Blob([sharexFile], { type: 'application/octet-binary' })
sharexElement.setAttribute('href', URL.createObjectURL(sharexBlob))
2018-10-09 19:52:41 +00:00
sharexElement.setAttribute('download', `${originClean}.sxcu`)
}