{"version":3,"sources":["init.js"],"names":["window","visitFormInit","this","_screenWebWorker","initScreenWebWorker","stopScreenWebWorker","Worker","URL","import","meta","url","onmessage","DotNet","invokeMethodAsync","msg","data","e","console","warn","log","terminate","callMethodOnObject","el","func","args","callFunct","error","mediaPicker","capturePhoto","async","stream","navigator","mediaDevices","getUserMedia","video","track","getVideoTracks","imageCapture","ImageCapture","photoBlob","takePhoto","Promise","reader","FileReader","onloadend","resolve","result","split","readAsDataURL","checkCameraSupport"],"mappings":"AACAA,OAAOC,cAAgB,IAAI,WAEvBC,KAAKC,iBAAmB,KAExBD,KAAKE,oBAAsB,IACvBF,KAAKG,sBAELH,KAAKC,iBAAmB,IAAIG,OAAO,IAAIC,IAAI,oBAAqBC,OAAOC,KAAKC,MAE5ER,KAAKC,iBAAiBQ,UAAY,IAI9B,IACIC,OAAOC,kBAAkB,4BAA6B,2BAA4BC,EAAIC,MAExF,MAAOC,GACLC,QAAQC,KAAK,sCAAwCF,MAUjEd,KAAKG,oBAAsB,KACnBH,KAAKC,mBACLc,QAAQE,IAAI,uBACZjB,KAAKC,iBAAiBiB,YACtBlB,KAAKC,iBAAmB,QAKpCH,OAAOqB,mBAAqB,CAACC,EAAIC,KAASC,KACtCF,EAAGC,MAASC,IAGhBxB,OAAOyB,UAAY,CAACF,KAASC,KACzB,GAAIxB,OAAOC,cAAcsB,GACrB,IACI,OAAOvB,OAAOC,cAAcsB,MAASC,GACvC,MAAOR,GACLC,QAAQC,KAAKF,QAGjBC,QAAQS,MAAM,6BAA+BH,IAIrDvB,OAAO2B,YAAc,CACjBC,aAAcC,iBACV,IACI,MAAMC,QAAeC,UAAUC,aAAaC,aAAa,CAAEC,OAAO,IAClE,IAAMC,EAAQL,EAAOM,iBAAiB,GACtC,MAAMC,EAAe,IAAIC,aAAaH,GAEhCI,QAAkBF,EAAaG,YAQrC,aAL2B,IAAIC,QAAQ,IACnC,MAAMC,EAAS,IAAIC,WACnBD,EAAOE,UAAY,IAAMC,EAAQH,EAAOI,OAAOC,MAAM,KAAK,IAC1DL,EAAOM,cAAcT,KAI7B,OAEA,MAAO,IAGXU,mBAAoBpB,iBAChB,UACyBE,UAAUC,aAAaC,aAAa,CAAEC,OAAO,IAElE,OAAO,EAEX,MACI,OAAO","file":"vfgi.min.js","sourcesContent":["\r\nwindow.visitFormInit = new (function () {\r\n\r\n this._screenWebWorker = null;\r\n\r\n this.initScreenWebWorker = (arg) => {\r\n this.stopScreenWebWorker();\r\n\r\n this._screenWebWorker = new Worker(new URL(\"./screenWorker.js\", import.meta.url));\r\n\r\n this._screenWebWorker.onmessage = (msg) => {\r\n\r\n // \r\n\r\n try {\r\n DotNet.invokeMethodAsync('VisitForm.Client.UI.Guard', 'OnWebWorkerMessageScreen', msg.data);\r\n //handler.invokeMethodAsync(method, msg.data);\r\n } catch (e) {\r\n console.warn(\"Failed to call WebWorker callback: \" + e);\r\n }\r\n\r\n //const accessToken = localStorage.getItem(\"accessToken\");\r\n //if (accessToken) {\r\n \r\n //}\r\n };\r\n };\r\n\r\n this.stopScreenWebWorker = () => {\r\n if (this._screenWebWorker) {\r\n console.log(\"Stopping WebWorker.\");\r\n this._screenWebWorker.terminate();\r\n this._screenWebWorker = null;\r\n }\r\n };\r\n})();\r\n\r\nwindow.callMethodOnObject = (el, func, ...args) => {\r\n el[func](...args);\r\n};\r\n\r\nwindow.callFunct = (func, ...args) => {\r\n if (window.visitFormInit[func]) {\r\n try {\r\n return window.visitFormInit[func](...args);\r\n } catch (e) {\r\n console.warn(e);\r\n }\r\n } else {\r\n console.error(\"interop func not defined: \" + func);\r\n }\r\n};\r\n\r\nwindow.mediaPicker = {\r\n capturePhoto: async function () {\r\n try {\r\n const stream = await navigator.mediaDevices.getUserMedia({ video: true });\r\n const track = stream.getVideoTracks()[0];\r\n const imageCapture = new ImageCapture(track);\r\n\r\n const photoBlob = await imageCapture.takePhoto();\r\n\r\n // Convert the Blob to a base64-encoded string\r\n const base64String = await new Promise((resolve) => {\r\n const reader = new FileReader();\r\n reader.onloadend = () => resolve(reader.result.split(',')[1]);\r\n reader.readAsDataURL(photoBlob);\r\n });\r\n return base64String;\r\n }\r\n catch { }\r\n\r\n return \"\";\r\n },\r\n\r\n checkCameraSupport: async function () {\r\n try {\r\n const stream = await navigator.mediaDevices.getUserMedia({ video: true });\r\n\r\n return true;\r\n }\r\n catch {\r\n return false;\r\n }\r\n }\r\n};\r\n\r\n"]}