{"version":3,"file":"../../../js/qr-scanner/qr-scanner.umd.min.js","sources":["js/qr-scanner/qr-scanner.umd.min.js"],"sourcesContent":["'use strict';(function(e,a){\"object\"===typeof exports&&\"undefined\"!==typeof module?module.exports=a():\"function\"===typeof define&&define.amd?define(a):(e=\"undefined\"!==typeof globalThis?globalThis:e||self,e.QrScanner=a())})(this,function(){class e{constructor(a,b,c,d,f){this._legacyCanvasSize=e.DEFAULT_CANVAS_SIZE;this._preferredCamera=\"environment\";this._maxScansPerSecond=25;this._lastScanTimestamp=-1;this._destroyed=this._flashOn=this._paused=this._active=!1;this.$video=a;this.$canvas=document.createElement(\"canvas\");\nc&&\"object\"===typeof c?this._onDecode=b:(c||d||f?console.warn(\"You're using a deprecated version of the QrScanner constructor which will be removed in the future\"):console.warn(\"Note that the type of the scan result passed to onDecode will change in the future. To already switch to the new api today, you can pass returnDetailedScanResult: true.\"),this._legacyOnDecode=b);b=\"object\"===typeof c?c:{};this._onDecodeError=b.onDecodeError||(\"function\"===typeof c?c:this._onDecodeError);this._calculateScanRegion=\nb.calculateScanRegion||(\"function\"===typeof d?d:this._calculateScanRegion);this._preferredCamera=b.preferredCamera||f||this._preferredCamera;this._legacyCanvasSize=\"number\"===typeof c?c:\"number\"===typeof d?d:this._legacyCanvasSize;this._maxScansPerSecond=b.maxScansPerSecond||this._maxScansPerSecond;this._onPlay=this._onPlay.bind(this);this._onLoadedMetaData=this._onLoadedMetaData.bind(this);this._onVisibilityChange=this._onVisibilityChange.bind(this);this._updateOverlay=this._updateOverlay.bind(this);\na.disablePictureInPicture=!0;a.playsInline=!0;a.muted=!0;let h=!1;a.hidden&&(a.hidden=!1,h=!0);document.body.contains(a)||(document.body.appendChild(a),h=!0);c=a.parentElement;if(b.highlightScanRegion||b.highlightCodeOutline){d=!!b.overlay;this.$overlay=b.overlay||document.createElement(\"div\");f=this.$overlay.style;f.position=\"absolute\";f.display=\"none\";f.pointerEvents=\"none\";this.$overlay.classList.add(\"scan-region-highlight\");if(!d&&b.highlightScanRegion){this.$overlay.innerHTML='';\ntry{this.$overlay.firstElementChild.animate({transform:[\"scale(.98)\",\"scale(1.01)\"]},{duration:400,iterations:Infinity,direction:\"alternate\",easing:\"ease-in-out\"})}catch(m){}c.insertBefore(this.$overlay,this.$video.nextSibling)}b.highlightCodeOutline&&(this.$overlay.insertAdjacentHTML(\"beforeend\",''),\nthis.$codeOutlineHighlight=this.$overlay.lastElementChild)}this._scanRegion=this._calculateScanRegion(a);requestAnimationFrame(()=>{let m=window.getComputedStyle(a);\"none\"===m.display&&(a.style.setProperty(\"display\",\"block\",\"important\"),h=!0);\"visible\"!==m.visibility&&(a.style.setProperty(\"visibility\",\"visible\",\"important\"),h=!0);h&&(console.warn(\"QrScanner has overwritten the video hiding style to avoid Safari stopping the playback.\"),a.style.opacity=\"0\",a.style.width=\"0\",a.style.height=\"0\",this.$overlay&&\nthis.$overlay.parentElement&&this.$overlay.parentElement.removeChild(this.$overlay),delete this.$overlay,delete this.$codeOutlineHighlight);this.$overlay&&this._updateOverlay()});a.addEventListener(\"play\",this._onPlay);a.addEventListener(\"loadedmetadata\",this._onLoadedMetaData);document.addEventListener(\"visibilitychange\",this._onVisibilityChange);window.addEventListener(\"resize\",this._updateOverlay);this._qrEnginePromise=e.createQrEngine()}static set WORKER_PATH(a){console.warn(\"Setting QrScanner.WORKER_PATH is not required and not supported anymore. Have a look at the README for new setup instructions.\")}static async hasCamera(){try{return!!(await e.listCameras(!1)).length}catch(a){return!1}}static async listCameras(a=\n!1){if(!navigator.mediaDevices)return[];let b=async()=>(await navigator.mediaDevices.enumerateDevices()).filter(d=>\"videoinput\"===d.kind),c;try{a&&(await b()).every(d=>!d.label)&&(c=await navigator.mediaDevices.getUserMedia({audio:!1,video:!0}))}catch(d){}try{return(await b()).map((d,f)=>({id:d.deviceId,label:d.label||(0===f?\"Default Camera\":`Camera ${f+1}`)}))}finally{c&&(console.warn(\"Call listCameras after successfully starting a QR scanner to avoid creating a temporary video stream\"),e._stopVideoStream(c))}}async hasFlash(){let a;\ntry{if(this.$video.srcObject){if(!(this.$video.srcObject instanceof MediaStream))return!1;a=this.$video.srcObject}else a=(await this._getCameraStream()).stream;return\"torch\"in a.getVideoTracks()[0].getSettings()}catch(b){return!1}finally{a&&a!==this.$video.srcObject&&(console.warn(\"Call hasFlash after successfully starting the scanner to avoid creating a temporary video stream\"),e._stopVideoStream(a))}}isFlashOn(){return this._flashOn}async toggleFlash(){this._flashOn?await this.turnFlashOff():await this.turnFlashOn()}async turnFlashOn(){if(!this._flashOn&&\n!this._destroyed&&(this._flashOn=!0,this._active&&!this._paused))try{if(!await this.hasFlash())throw\"No flash available\";await this.$video.srcObject.getVideoTracks()[0].applyConstraints({advanced:[{torch:!0}]})}catch(a){throw this._flashOn=!1,a;}}async turnFlashOff(){this._flashOn&&(this._flashOn=!1,await this._restartVideoStream())}destroy(){this.$video.removeEventListener(\"loadedmetadata\",this._onLoadedMetaData);this.$video.removeEventListener(\"play\",this._onPlay);document.removeEventListener(\"visibilitychange\",\nthis._onVisibilityChange);window.removeEventListener(\"resize\",this._updateOverlay);this._destroyed=!0;this._flashOn=!1;this.stop();e._postWorkerMessage(this._qrEnginePromise,\"close\")}async start(){if(this._destroyed)throw Error(\"The QR scanner can not be started as it had been destroyed.\");if(!this._active||this._paused)if(\"https:\"!==window.location.protocol&&console.warn(\"The camera stream is only accessible if the page is transferred via https.\"),this._active=!0,!document.hidden)if(this._paused=\n!1,this.$video.srcObject)await this.$video.play();else try{let {stream:a,facingMode:b}=await this._getCameraStream();!this._active||this._paused?e._stopVideoStream(a):(this._setVideoMirror(b),this.$video.srcObject=a,await this.$video.play(),this._flashOn&&(this._flashOn=!1,this.turnFlashOn().catch(()=>{})))}catch(a){if(!this._paused)throw this._active=!1,a;}}stop(){this.pause();this._active=!1}async pause(a=!1){this._paused=!0;if(!this._active)return!0;this.$video.pause();this.$overlay&&(this.$overlay.style.display=\n\"none\");let b=()=>{this.$video.srcObject instanceof MediaStream&&(e._stopVideoStream(this.$video.srcObject),this.$video.srcObject=null)};if(a)return b(),!0;await new Promise(c=>setTimeout(c,300));if(!this._paused)return!1;b();return!0}async setCamera(a){a!==this._preferredCamera&&(this._preferredCamera=a,await this._restartVideoStream())}static async scanImage(a,b,c,d,f=!1,h=!1){let m,n=!1;b&&(\"scanRegion\"in b||\"qrEngine\"in b||\"canvas\"in b||\"disallowCanvasResizing\"in b||\"alsoTryWithoutScanRegion\"in\nb||\"returnDetailedScanResult\"in b)?(m=b.scanRegion,c=b.qrEngine,d=b.canvas,f=b.disallowCanvasResizing||!1,h=b.alsoTryWithoutScanRegion||!1,n=!0):b||c||d||f||h?console.warn(\"You're using a deprecated api for scanImage which will be removed in the future.\"):console.warn(\"Note that the return type of scanImage will change in the future. To already switch to the new api today, you can pass returnDetailedScanResult: true.\");b=!!c;try{let p,k;[c,p]=await Promise.all([c||e.createQrEngine(),e._loadImage(a)]);\n[d,k]=e._drawToCanvas(p,m,d,f);let q;if(c instanceof Worker){let g=c;b||e._postWorkerMessageSync(g,\"inversionMode\",\"both\");q=await new Promise((l,v)=>{let w,u,r,y=-1;u=t=>{t.data.id===y&&(g.removeEventListener(\"message\",u),g.removeEventListener(\"error\",r),clearTimeout(w),null!==t.data.data?l({data:t.data.data,cornerPoints:e._convertPoints(t.data.cornerPoints,m)}):v(e.NO_QR_CODE_FOUND))};r=t=>{g.removeEventListener(\"message\",u);g.removeEventListener(\"error\",r);clearTimeout(w);v(\"Scanner error: \"+(t?\nt.message||t:\"Unknown Error\"))};g.addEventListener(\"message\",u);g.addEventListener(\"error\",r);w=setTimeout(()=>r(\"timeout\"),1E4);let x=k.getImageData(0,0,d.width,d.height);y=e._postWorkerMessageSync(g,\"decode\",x,[x.data.buffer])})}else q=await Promise.race([new Promise((g,l)=>window.setTimeout(()=>l(\"Scanner error: timeout\"),1E4)),(async()=>{try{var [g]=await c.detect(d);if(!g)throw e.NO_QR_CODE_FOUND;return{data:g.rawValue,cornerPoints:e._convertPoints(g.cornerPoints,m)}}catch(l){g=l.message||l;\nif(/not implemented|service unavailable/.test(g))return e._disableBarcodeDetector=!0,e.scanImage(a,{scanRegion:m,canvas:d,disallowCanvasResizing:f,alsoTryWithoutScanRegion:h});throw`Scanner error: ${g}`;}})()]);return n?q:q.data}catch(p){if(!m||!h)throw p;let k=await e.scanImage(a,{qrEngine:c,canvas:d,disallowCanvasResizing:f});return n?k:k.data}finally{b||e._postWorkerMessage(c,\"close\")}}setGrayscaleWeights(a,b,c,d=!0){e._postWorkerMessage(this._qrEnginePromise,\"grayscaleWeights\",{red:a,green:b,\nblue:c,useIntegerApproximation:d})}setInversionMode(a){e._postWorkerMessage(this._qrEnginePromise,\"inversionMode\",a)}static async createQrEngine(a){a&&console.warn(\"Specifying a worker path is not required and not supported anymore.\");a=()=>import(\"./qr-scanner-worker.min.js\").then(c=>c.createWorker());if(!(!e._disableBarcodeDetector&&\"BarcodeDetector\"in window&&BarcodeDetector.getSupportedFormats&&(await BarcodeDetector.getSupportedFormats()).includes(\"qr_code\")))return a();let b=navigator.userAgentData;\nreturn b&&b.brands.some(({brand:c})=>/Chromium/i.test(c))&&/mac ?OS/i.test(b.platform)&&await b.getHighEntropyValues([\"architecture\",\"platformVersion\"]).then(({architecture:c,platformVersion:d})=>/arm/i.test(c||\"arm\")&&13<=parseInt(d||\"13\")).catch(()=>!0)?a():new BarcodeDetector({formats:[\"qr_code\"]})}_onPlay(){this._scanRegion=this._calculateScanRegion(this.$video);this._updateOverlay();this.$overlay&&(this.$overlay.style.display=\"\");this._scanFrame()}_onLoadedMetaData(){this._scanRegion=this._calculateScanRegion(this.$video);\nthis._updateOverlay()}_onVisibilityChange(){document.hidden?this.pause():this._active&&this.start()}_calculateScanRegion(a){let b=Math.round(2/3*Math.min(a.videoWidth,a.videoHeight));return{x:Math.round((a.videoWidth-b)/2),y:Math.round((a.videoHeight-b)/2),width:b,height:b,downScaledWidth:this._legacyCanvasSize,downScaledHeight:this._legacyCanvasSize}}_updateOverlay(){requestAnimationFrame(()=>{if(this.$overlay){var a=this.$video,b=a.videoWidth,c=a.videoHeight,d=a.offsetWidth,f=a.offsetHeight,h=a.offsetLeft,\nm=a.offsetTop,n=window.getComputedStyle(a),p=n.objectFit,k=b/c,q=d/f;switch(p){case \"none\":var g=b;var l=c;break;case \"fill\":g=d;l=f;break;default:(\"cover\"===p?k>q:k{const x=parseFloat(r);return r.endsWith(\"%\")?(y?f-l:d-g)*x/100:x});n=this._scanRegion.width||b;q=this._scanRegion.height||c;p=this._scanRegion.x||0;var u=this._scanRegion.y||0;k=this.$overlay.style;k.width=\n`${n/b*g}px`;k.height=`${q/c*l}px`;k.top=`${m+w+u/c*l}px`;c=/scaleX\\(-1\\)/.test(a.style.transform);k.left=`${h+(c?d-v-g:v)+(c?b-p-n:p)/b*g}px`;k.transform=a.style.transform}})}static _convertPoints(a,b){if(!b)return a;let c=b.x||0,d=b.y||0,f=b.width&&b.downScaledWidth?b.width/b.downScaledWidth:1;b=b.height&&b.downScaledHeight?b.height/b.downScaledHeight:1;for(let h of a)h.x=h.x*f+c,h.y=h.y*b+d;return a}_scanFrame(){!this._active||this.$video.paused||this.$video.ended||(\"requestVideoFrameCallback\"in\nthis.$video?this.$video.requestVideoFrameCallback.bind(this.$video):requestAnimationFrame)(async()=>{if(!(1>=this.$video.readyState)){var a=Date.now()-this._lastScanTimestamp,b=1E3/this._maxScansPerSecond;asetTimeout(d,b-a));this._lastScanTimestamp=Date.now();try{var c=await e.scanImage(this.$video,{scanRegion:this._scanRegion,qrEngine:this._qrEnginePromise,canvas:this.$canvas})}catch(d){if(!this._active)return;this._onDecodeError(d)}!e._disableBarcodeDetector||await this._qrEnginePromise instanceof\nWorker||(this._qrEnginePromise=e.createQrEngine());c?(this._onDecode?this._onDecode(c):this._legacyOnDecode&&this._legacyOnDecode(c.data),this.$codeOutlineHighlight&&(clearTimeout(this._codeOutlineHighlightRemovalTimeout),this._codeOutlineHighlightRemovalTimeout=void 0,this.$codeOutlineHighlight.setAttribute(\"viewBox\",`${this._scanRegion.x||0} `+`${this._scanRegion.y||0} `+`${this._scanRegion.width||this.$video.videoWidth} `+`${this._scanRegion.height||this.$video.videoHeight}`),this.$codeOutlineHighlight.firstElementChild.setAttribute(\"points\",\nc.cornerPoints.map(({x:d,y:f})=>`${d},${f}`).join(\" \")),this.$codeOutlineHighlight.style.display=\"\")):this.$codeOutlineHighlight&&!this._codeOutlineHighlightRemovalTimeout&&(this._codeOutlineHighlightRemovalTimeout=setTimeout(()=>this.$codeOutlineHighlight.style.display=\"none\",100))}this._scanFrame()})}_onDecodeError(a){a!==e.NO_QR_CODE_FOUND&&console.log(a)}async _getCameraStream(){if(!navigator.mediaDevices)throw\"Camera not found.\";let a=/^(environment|user)$/.test(this._preferredCamera)?\"facingMode\":\n\"deviceId\",b=[{width:{min:1024}},{width:{min:768}},{}],c=b.map(d=>Object.assign({},d,{[a]:{exact:this._preferredCamera}}));for(let d of[...c,...b])try{let f=await navigator.mediaDevices.getUserMedia({video:d,audio:!1}),h=this._getFacingMode(f)||(d.facingMode?this._preferredCamera:\"environment\"===this._preferredCamera?\"user\":\"environment\");return{stream:f,facingMode:h}}catch(f){}throw\"Camera not found.\";}async _restartVideoStream(){let a=this._paused;await this.pause(!0)&&!a&&this._active&&await this.start()}static _stopVideoStream(a){for(let b of a.getTracks())b.stop(),\na.removeTrack(b)}_setVideoMirror(a){this.$video.style.transform=\"scaleX(\"+(\"user\"===a?-1:1)+\")\"}_getFacingMode(a){return(a=a.getVideoTracks()[0])?/rear|back|environment/i.test(a.label)?\"environment\":/front|user|face/i.test(a.label)?\"user\":null:null}static _drawToCanvas(a,b,c,d=!1){c=c||document.createElement(\"canvas\");let f=b&&b.x?b.x:0,h=b&&b.y?b.y:0,m=b&&b.width?b.width:a.videoWidth||a.width,n=b&&b.height?b.height:a.videoHeight||a.height;d||(d=b&&b.downScaledWidth?b.downScaledWidth:m,b=b&&b.downScaledHeight?\nb.downScaledHeight:n,c.width!==d&&(c.width=d),c.height!==b&&(c.height=b));b=c.getContext(\"2d\",{alpha:!1});b.imageSmoothingEnabled=!1;b.drawImage(a,f,h,m,n,0,0,c.width,c.height);return[c,b]}static async _loadImage(a){if(a instanceof Image)return await e._awaitImageLoad(a),a;if(a instanceof HTMLVideoElement||a instanceof HTMLCanvasElement||a instanceof SVGImageElement||\"OffscreenCanvas\"in window&&a instanceof OffscreenCanvas||\"ImageBitmap\"in window&&a instanceof ImageBitmap)return a;if(a instanceof\nFile||a instanceof Blob||a instanceof URL||\"string\"===typeof a){let b=new Image;b.src=a instanceof File||a instanceof Blob?URL.createObjectURL(a):a.toString();try{return await e._awaitImageLoad(b),b}finally{(a instanceof File||a instanceof Blob)&&URL.revokeObjectURL(b.src)}}else throw\"Unsupported image type.\";}static async _awaitImageLoad(a){a.complete&&0!==a.naturalWidth||await new Promise((b,c)=>{let d=f=>{a.removeEventListener(\"load\",d);a.removeEventListener(\"error\",d);f instanceof ErrorEvent?\nc(\"Image load error\"):b()};a.addEventListener(\"load\",d);a.addEventListener(\"error\",d)})}static async _postWorkerMessage(a,b,c,d){return e._postWorkerMessageSync(await a,b,c,d)}static _postWorkerMessageSync(a,b,c,d){if(!(a instanceof Worker))return-1;let f=e._workerMessageId++;a.postMessage({id:f,type:b,data:c},d);return f}}e.DEFAULT_CANVAS_SIZE=400;e.NO_QR_CODE_FOUND=\"No QR code found\";e._disableBarcodeDetector=!1;e._workerMessageId=0;return e})\n//# sourceMappingURL=qr-scanner.umd.min.js.map\n"],"names":["e","a","exports","module","define","amd","globalThis","self","QrScanner","this","constructor","b","c","d","f","_legacyCanvasSize","DEFAULT_CANVAS_SIZE","_preferredCamera","_maxScansPerSecond","_lastScanTimestamp","_destroyed","_flashOn","_paused","_active","$video","$canvas","document","createElement","_onDecode","console","warn","_legacyOnDecode","_onDecodeError","onDecodeError","_calculateScanRegion","calculateScanRegion","preferredCamera","maxScansPerSecond","_onPlay","bind","_onLoadedMetaData","_onVisibilityChange","_updateOverlay","disablePictureInPicture","playsInline","let","h","muted","hidden","body","contains","appendChild","parentElement","highlightScanRegion","highlightCodeOutline","overlay","$overlay","style","position","display","pointerEvents","classList","add","innerHTML","firstElementChild","animate","transform","duration","iterations","Infinity","direction","easing","m","insertBefore","nextSibling","insertAdjacentHTML","$codeOutlineHighlight","lastElementChild","_scanRegion","requestAnimationFrame","window","getComputedStyle","setProperty","visibility","opacity","width","height","removeChild","addEventListener","_qrEnginePromise","createQrEngine","WORKER_PATH","hasCamera","listCameras","length","navigator","mediaDevices","async","enumerateDevices","filter","kind","every","label","await","getUserMedia","audio","video","map","id","deviceId","_stopVideoStream","hasFlash","srcObject","MediaStream","_getCameraStream","stream","getVideoTracks","getSettings","isFlashOn","toggleFlash","turnFlashOff","turnFlashOn","applyConstraints","advanced","torch","_restartVideoStream","destroy","removeEventListener","stop","_postWorkerMessage","start","Error","location","protocol","play","facingMode","_setVideoMirror","catch","pause","Promise","setTimeout","setCamera","scanImage","n","scanRegion","qrEngine","canvas","disallowCanvasResizing","alsoTryWithoutScanRegion","p","k","all","_loadImage","_drawToCanvas","q","Worker","g","_postWorkerMessageSync","l","v","w","u","r","y","t","data","clearTimeout","cornerPoints","_convertPoints","NO_QR_CODE_FOUND","message","x","getImageData","buffer","race","detect","rawValue","test","_disableBarcodeDetector","setGrayscaleWeights","red","green","blue","useIntegerApproximation","setInversionMode","import","then","createWorker","BarcodeDetector","getSupportedFormats","includes","userAgentData","brands","some","brand","platform","getHighEntropyValues","architecture","platformVersion","parseInt","formats","_scanFrame","Math","round","min","videoWidth","videoHeight","downScaledWidth","downScaledHeight","offsetWidth","offsetHeight","offsetLeft","offsetTop","objectFit","objectPosition","split","parseFloat","endsWith","top","left","paused","ended","requestVideoFrameCallback","readyState","Date","now","_codeOutlineHighlightRemovalTimeout","setAttribute","join","log","Object","assign","exact","_getFacingMode","getTracks","removeTrack","getContext","alpha","imageSmoothingEnabled","drawImage","Image","_awaitImageLoad","HTMLVideoElement","HTMLCanvasElement","SVGImageElement","OffscreenCanvas","ImageBitmap","File","Blob","URL","src","createObjectURL","toString","revokeObjectURL","complete","naturalWidth","ErrorEvent","_workerMessageId","postMessage","type"],"mappings":"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"}