mirror of
https://github.com/gchq/CyberChef.git
synced 2025-04-20 14:56:19 -04:00
Change run() functions to be async
This commit is contained in:
parent
74c2a2b5cb
commit
a0b94bba4e
3 changed files with 24 additions and 68 deletions
|
@ -36,27 +36,14 @@ class DitherImage extends Operation {
|
|||
* @param {Object[]} args
|
||||
* @returns {byteArray}
|
||||
*/
|
||||
run(input, args) {
|
||||
async run(input, args) {
|
||||
const type = Magic.magicFileType(input);
|
||||
|
||||
if (type && type.mime.indexOf("image") === 0){
|
||||
return new Promise((resolve, reject) => {
|
||||
jimp.read(Buffer.from(input))
|
||||
.then(image => {
|
||||
image
|
||||
.dither565()
|
||||
.getBuffer(jimp.AUTO, (error, result) => {
|
||||
if (error){
|
||||
reject(new OperationError("Error getting the new image buffer"));
|
||||
} else {
|
||||
resolve([...result]);
|
||||
}
|
||||
});
|
||||
})
|
||||
.catch(err => {
|
||||
reject(new OperationError("Error applying a dither effect to the image."));
|
||||
});
|
||||
});
|
||||
const image = await jimp.read(Buffer.from(input));
|
||||
image.dither565();
|
||||
const imageBuffer = await image.getBufferAsync(jimp.AUTO);
|
||||
return [...imageBuffer];
|
||||
} else {
|
||||
throw new OperationError("Invalid file type.");
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue