Add ability to use json from clipboard to upload script

This commit is contained in:
Alexander Fletcher 2022-05-30 19:40:40 +08:00
parent d0a117297c
commit 729869df51
2 changed files with 13 additions and 0 deletions

View File

@ -69,6 +69,9 @@
<div class="button" @click="promptURL"> <div class="button" @click="promptURL">
<font-awesome-icon icon="link" /> Enter URL <font-awesome-icon icon="link" /> Enter URL
</div> </div>
<div class="button" @click="readFromClipboard">
<font-awesome-icon icon="clipboard" /> Use JSON from Clipboard
</div>
<div class="button" @click="isCustom = false"> <div class="button" @click="isCustom = false">
<font-awesome-icon icon="undo" /> Back <font-awesome-icon icon="undo" /> Back
</div> </div>
@ -156,6 +159,15 @@ export default {
} }
} }
}, },
async readFromClipboard() {
const text = await navigator.clipboard.readText();
try {
const roles = JSON.parse(text);
this.parseRoles(roles);
} catch (e) {
alert("Error reading custom script: " + e.message);
}
},
parseRoles(roles) { parseRoles(roles) {
if (!roles || !roles.length) return; if (!roles || !roles.length) return;
const metaIndex = roles.findIndex(({ id }) => id === "_meta"); const metaIndex = roles.findIndex(({ id }) => id === "_meta");

View File

@ -16,6 +16,7 @@ const faIcons = [
"CloudMoon", "CloudMoon",
"Cog", "Cog",
"Copy", "Copy",
"Clipboard",
"Dice", "Dice",
"Dragon", "Dragon",
"ExchangeAlt", "ExchangeAlt",