qrcodedetector.js
749 Bytes
import ARCS from '../build/arcs.js';
let QRCodeDetector;
QRCodeDetector = ARCS.Componenent.create(
function() {
let busy = false;
let dataCache = null;
const worker = new Worker("../deps/jsqr/worker.js");
worker.addEventListener("message", ({data} => {
busy = false;
dataCache = data;
});
this.detect(imageData) {
if (!busy) {
busy = true;
worker.postMessage(imageData);
}
if (dataCache !== null) {
this.emit('onQRCode', dataCache);
}
};
},
['detect'],
['onQRCode']
);
export default {QRCodeDetector: QRCodeDetector};