Reverted qrread native module

This commit is contained in:
TheEssem 2020-09-11 15:22:25 -05:00
parent 81c291ffa7
commit 17b347761d
8 changed files with 511 additions and 80 deletions

View file

@ -1,10 +1,10 @@
const qrcode = require("qrcode");
const { PassThrough } = require("stream");
const stream = require("stream");
exports.run = async (message, args, content) => {
if (args.length === 0) return `${message.author.mention}, you need to provide some text to generate a QR code!`;
message.channel.sendTyping();
const writable = new PassThrough();
const writable = new stream.PassThrough();
qrcode.toFileStream(writable, content, { margin: 1 });
const file = await streamToBuf(writable);
return {

View file

@ -1,16 +1,14 @@
const magick = require("../utils/image.js");
const { clean } = require("../utils/misc.js");
const jsqr = require("jsqr");
const sharp = require("sharp");
exports.run = async (message) => {
const image = await require("../utils/imagedetect.js")(message);
if (image === undefined) return `${message.author.mention}, you need to provide an image with a QR code to read!`;
message.channel.sendTyping();
const {qrText, missing} = await magick({
cmd: "qrread",
path: image.path
});
if (missing) return `${message.author.mention}, I couldn't find a QR code!`;
return `\`\`\`\n${await clean(qrText)}\n\`\`\``;
const rawData = await sharp(image.path).ensureAlpha().raw().toBuffer({ resolveWithObject: true });
const qrBuffer = jsqr(rawData.data, rawData.info.width, rawData.info.height);
if (!qrBuffer) return `${message.author.mention}, I couldn't find a QR code!`;
return `\`\`\`\n${qrBuffer.data}\n\`\`\``;
};
exports.category = 1;