Added payload upload feature. Fixes #298

This commit is contained in:
Liyas Thomas
2019-11-13 21:04:49 +05:30
parent ab76afb322
commit dfbb563b6f
2 changed files with 35 additions and 5 deletions

View File

@@ -760,6 +760,7 @@ div.tab {
order: 1;
}
input[type="file"],
input[type="radio"],
div.tab {
display: none;

View File

@@ -116,11 +116,21 @@
</ul>
<ul>
<li>
<span>
<pw-toggle :on="rawInput" @change="rawInput = $event"
>Raw Input {{ rawInput ? "Enabled" : "Disabled" }}</pw-toggle
>
</span>
<div class="flex-wrap">
<span>
<pw-toggle :on="rawInput" @change="rawInput = $event"
>Raw Input {{ rawInput ? "Enabled" : "Disabled" }}</pw-toggle
>
</span>
<div>
<label for="payload">
<button class="icon" @click="$refs.payload.click()" v-tooltip="'Upload file'">
<i class="material-icons">attach_file</i>
</button>
</label>
<input ref="payload" name="payload" type="file" @change="uploadPayload"/>
</div>
</div>
</li>
</ul>
<div v-if="!rawInput">
@@ -1903,6 +1913,25 @@ export default {
this.contentType = ["POST", "PUT", "PATCH"].includes(this.method)
? "application/json"
: "";
},
uploadPayload() {
this.rawInput = true;
let file = this.$refs.payload.files[0];
if (file != null) {
let reader = new FileReader();
reader.onload = (e) => {
this.rawParams = e.target.result;
};
reader.readAsText(file);
this.$toast.info("File imported", {
icon: "attach_file"
});
}
else {
this.$toast.error("Choose a file", {
icon: "attach_file"
});
}
}
},
mounted() {