'Show Base64 offsets' operation show supports base64 input. Closes #276

This commit is contained in:
n1474335 2018-08-24 00:32:52 +01:00
parent 00058bd5c7
commit 61f2f2d2e3
2 changed files with 11 additions and 1 deletions

View File

@ -81,6 +81,7 @@ export function fromBase64(data, alphabet="A-Za-z0-9+/=", returnType="string", r
return returnType === "string" ? "" : [];
}
alphabet = alphabet || "A-Za-z0-9+/=";
alphabet = Utils.expandAlphRange(alphabet).join("");
const output = [];

View File

@ -36,6 +36,11 @@ class ShowBase64Offsets extends Operation {
name: "Show variable chars and padding",
type: "boolean",
value: true
},
{
name: "Input format",
type: "option",
value: ["Raw", "Base64"]
}
];
}
@ -46,7 +51,11 @@ class ShowBase64Offsets extends Operation {
* @returns {html}
*/
run(input, args) {
const [alphabet, showVariable] = args;
const [alphabet, showVariable, format] = args;
if (format === "Base64") {
input = fromBase64(Utils.byteArrayToUtf8(input), null, "byteArray");
}
let offset0 = toBase64(input, alphabet),
offset1 = toBase64([0].concat(input), alphabet),