diff --git a/package-lock.json b/package-lock.json index 7fab1e9d..98b0f9ad 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1570,6 +1570,22 @@ "object.assign": "^4.1.0" } }, + "babel-runtime": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "requires": { + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" + }, + "dependencies": { + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + } + } + }, "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", @@ -1991,6 +2007,11 @@ "caller-callsite": "^2.0.0" } }, + "callforth": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/callforth/-/callforth-0.3.1.tgz", + "integrity": "sha512-Q2zPfqnwoKsb1DTVCr4lmhe49wKNBsMmNlbudjleu3/co+Nw1pOqFHYJHrW3VZ253ou9AAr+xauQR0C55NPdzA==" + }, "callsites": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", @@ -2501,6 +2522,11 @@ "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", "dev": true }, + "core-js": { + "version": "2.6.11", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", + "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==" + }, "core-js-compat": { "version": "3.6.2", "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.2.tgz", @@ -5510,6 +5536,11 @@ "graceful-fs": "^4.1.6" } }, + "jsqr": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/jsqr/-/jsqr-1.2.0.tgz", + "integrity": "sha512-wKcQS9QC2VHGk7aphWCp1RrFyC0CM6fMgC5prZZ2KV/Lk6OKNoCod9IR6bao+yx3KPY0gZFC5dc+h+KFzCI0Wg==" + }, "killable": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", @@ -7908,6 +7939,14 @@ "inherits": "^2.0.1" } }, + "rtcpeerconnection-shim": { + "version": "1.2.15", + "resolved": "https://registry.npmjs.org/rtcpeerconnection-shim/-/rtcpeerconnection-shim-1.2.15.tgz", + "integrity": "sha512-C6DxhXt7bssQ1nHb154lqeL0SXz5Dx4RczXZu2Aa/L1NJFnEVDxFwCBo3fqtuljhHIGceg5JKBV4XJ0gW5JKyw==", + "requires": { + "sdp": "^2.6.0" + } + }, "run-queue": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", @@ -7984,6 +8023,11 @@ "ajv-keywords": "^3.1.0" } }, + "sdp": { + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/sdp/-/sdp-2.12.0.tgz", + "integrity": "sha512-jhXqQAQVM+8Xj5EjJGVweuEzgtGWb3tmEEpl3CLP3cStInSbVHSg0QWOGQzNq8pSID4JkpeV2mPqlMDLrm0/Vw==" + }, "select-hose": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", @@ -9289,6 +9333,17 @@ "vue": "^2.0.1" } }, + "vue-qrcode-reader": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/vue-qrcode-reader/-/vue-qrcode-reader-2.1.1.tgz", + "integrity": "sha512-rIxV0RAuiomNi4n03L7XVbCKRtq4sT1LYtIk3osuBdJA/1W6y8yDtP4SvGpBdRCLaurfHaicpAZxQB98mejSCg==", + "requires": { + "babel-runtime": "^6.26.0", + "callforth": "^0.3.0", + "jsqr": "^1.2.0", + "webrtc-adapter": "^6.2.1" + } + }, "vue-router": { "version": "3.1.6", "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.1.6.tgz", @@ -9664,6 +9719,15 @@ } } }, + "webrtc-adapter": { + "version": "6.4.8", + "resolved": "https://registry.npmjs.org/webrtc-adapter/-/webrtc-adapter-6.4.8.tgz", + "integrity": "sha512-YM8yl545c/JhYcjGHgaCoA7jRK/KZuMwEDFeP2AcP0Auv5awEd+gZE0hXy9z7Ed3p9HvAXp8jdbe+4ESb1zxAw==", + "requires": { + "rtcpeerconnection-shim": "^1.2.14", + "sdp": "^2.9.0" + } + }, "websocket-driver": { "version": "0.7.3", "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.3.tgz", diff --git a/package.json b/package.json index 724a63b9..1e9caaf7 100644 --- a/package.json +++ b/package.json @@ -34,6 +34,7 @@ "vue-axios": "^2.1.5", "vue-i18n": "^8.16.0", "vue-pull-refresh": "^0.2.7", + "vue-qrcode-reader": "^2.1.1", "vue-router": "^3.1.6", "vuedraggable": "^2.23.2" } diff --git a/resources/js/app.js b/resources/js/app.js index 9ab6362a..4b3a6fa7 100644 --- a/resources/js/app.js +++ b/resources/js/app.js @@ -4,6 +4,7 @@ import api from './api' import i18n from './langs/i18n' import FontAwesome from './packages/fontawesome' import Clipboard from './packages/clipboard' +import QrcodeReader from './packages/qrcodeReader' import App from './components/App' import './components' diff --git a/resources/js/packages/qrcodeReader.js b/resources/js/packages/qrcodeReader.js new file mode 100644 index 00000000..8b09b879 --- /dev/null +++ b/resources/js/packages/qrcodeReader.js @@ -0,0 +1,4 @@ +import Vue from 'vue' +import QrcodeReader from 'vue-qrcode-reader' + +Vue.use(QrcodeReader) \ No newline at end of file diff --git a/resources/sass/app.scss b/resources/sass/app.scss index c3051b9c..27a9dbae 100644 --- a/resources/sass/app.scss +++ b/resources/sass/app.scss @@ -1,6 +1,7 @@ @import '~bulma'; @import '~bulma-checkradio'; @import '~bulma-switch'; +@import "~vue-qrcode-reader/dist/vue-qrcode-reader.css"; a:hover { color: hsl(204, 86%, 53%);