mirror of
https://github.com/lnbits/lnbits-legend.git
synced 2025-02-23 14:40:47 +01:00
36 lines
No EOL
968 B
JavaScript
36 lines
No EOL
968 B
JavaScript
var app = new Vue({
|
|
el: '#app',
|
|
data: {
|
|
scanner: null,
|
|
activeCameraId: null,
|
|
cameras: [],
|
|
scans: []
|
|
},
|
|
mounted: function () {
|
|
var self = this;
|
|
self.scanner = new Instascan.Scanner({ video: document.getElementById('preview'), scanPeriod: 5 });
|
|
self.scanner.addListener('scan', function (content, image) {
|
|
self.scans.unshift({ date: +(Date.now()), content: content });
|
|
});
|
|
Instascan.Camera.getCameras().then(function (cameras) {
|
|
self.cameras = cameras;
|
|
if (cameras.length > 0) {
|
|
self.activeCameraId = cameras[0].id;
|
|
self.scanner.start(cameras[0]);
|
|
} else {
|
|
console.error('No cameras found.');
|
|
}
|
|
}).catch(function (e) {
|
|
console.error(e);
|
|
});
|
|
},
|
|
methods: {
|
|
formatName: function (name) {
|
|
return name || '(unknown)';
|
|
},
|
|
selectCamera: function (camera) {
|
|
this.activeCameraId = camera.id;
|
|
this.scanner.start(camera);
|
|
}
|
|
}
|
|
}); |