UNPKG

local-id-scan-journey

Version:

A React component for GBG ID verification and document scanning with bundled SDK

3 lines 21.9 kB
/*! For license information please see idscan-jcs-6b882012.93839b50b8a7df33fef9.js.LICENSE.txt */ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.GBG=t():(e.GBG=e.GBG||{},e.GBG.Idscan=t())}(this,(()=>(()=>{"use strict";var e,t={2444:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Helper=void 0;class i{}t.Helper=i,i.isValidIntNumber=e=>i.isDefined(e)&&isFinite(e)&&isFinite(parseInt(e,10))&&i.isNumber(parseInt(e,10)),i.isValidFloatNumber=e=>i.isDefined(e)&&isFinite(e)&&isFinite(parseFloat(e))&&i.isNumber(parseFloat(e)),i.isNumber=e=>"number"==typeof e,i.isDefined=e=>void 0!==e,i.boundValue=(e,t=0,i=1)=>e<=t?t:e>=i?i:e,i.newGuid=()=>{function e(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return e()+e()+"-"+e()+"-"+e()+"-"+e()+"-"+e()+e()+e()},i.getCurrentTime=()=>{const e=new Date;return e.getHours()+":"+e.getMinutes()+":"+e.getSeconds()+":"+e.getMilliseconds()},i.mediaDevicesimplementationForOlderBrowsers=()=>{const e=navigator;void 0===e.mediaDevices&&(e.mediaDevices={}),void 0===e.mediaDevices.getUserMedia&&(e.mediaDevices.getUserMedia=t=>{const i=e.getUserMedia||e.webkitGetUserMedia||e.mozGetUserMedia||e.msGetUserMedia;return i?new Promise(((n,a)=>{i.call(e,t,n,a)})):Promise.reject(new Error("getUserMedia is not implemented in this browser"))})},i.setWebSocketPort=e=>{let t=e;e.endsWith("/")&&(t=e.slice(0,e.length-1));let i=t.split(":")[0];return i+=":8088/",i},i.checkCameraCompatibility=()=>{const e="camera media channel: ";if(!i.isCanvasSupported())throw new Error(e+' Canvas is not supported or at least getContext("2d") is not.');if(!i.isBolbSupported())throw new Error(e+"toBolb is not supported.");if(!i.isWebsocketsSupported())throw new Error(e+"Websockets is not supported in the current browser.");return!0},i.isCanvasSupported=()=>{const e=document.createElement("canvas");return!(!e.getContext||!e.getContext("2d"))},i.isBolbSupported=()=>{const e=HTMLCanvasElement&&HTMLCanvasElement.prototype;return!(!HTMLCanvasElement||!e.toBlob)},i.isWebsocketsSupported=()=>"WebSocket"in window||"MozWebSocket"in window},3667:(e,t)=>{var i,n,a,s,r,o,c,u;Object.defineProperty(t,"__esModule",{value:!0}),t.MediaSource=t.MediaType=t.StillImageRequiredAction=t.LivenessFinalResult=t.LivenessActionType=t.CortixResponseAction=t.WebCamRequiredAction=t.MediaChannelType=void 0,function(e){e[e.None=-1]="None",e[e.Camera=0]="Camera",e[e.FileUpload=1]="FileUpload"}(i||(t.MediaChannelType=i={})),function(e){e[e.StopCapturing=1]="StopCapturing",e[e.PauseCapturing=2]="PauseCapturing",e[e.KeepCapturing=3]="KeepCapturing"}(n||(t.WebCamRequiredAction=n={})),function(e){e.KeepCapturing="KeepCapturing",e.StopCapturing="StopCapturing",e.PauseCapturing="PauseCapturing",e.FinishLivenessCapturing="FinishLivenessCapturing",e.Close="Close",e.Error="Error"}(a||(t.CortixResponseAction=a={})),function(e){e.Smile="Smile",e.Frown="Frown",e.TiltLeft="Tilt Left",e.TiltRight="Tilt Right",e.TiltUp="Tilt Up",e.TiltDown="Tilt Down",e.TiltStraight="Look Straight",e.NoAction="No Action",e.ProcessingLiveness="Processing Liveness"}(s||(t.LivenessActionType=s={})),function(e){e.Failed="Thank you!.Failed",e.Passed="Thank you!.Passed",e.ActionTimedOut="Thank you!.ActionTimedOut",e.Interrupted="Thank you!.Interrupted",e.Undefined="Thank you!.Undefined"}(r||(t.LivenessFinalResult=r={})),function(e){e[e.KeepCapturing=1]="KeepCapturing",e[e.StopCapturing=2]="StopCapturing",e[e.ManualCroppingRequired=3]="ManualCroppingRequired"}(o||(t.StillImageRequiredAction=o={})),function(e){e[e.WhiteImage=1]="WhiteImage",e[e.UltravioletAImage=2]="UltravioletAImage",e[e.UltravioletBImage=2]="UltravioletBImage",e[e.InfraredImage=3]="InfraredImage",e[e.RFIDPhoto=4]="RFIDPhoto",e[e.RFIDMrz=5]="RFIDMrz",e[e.RFIDRawData=6]="RFIDRawData",e[e.FacePhoto=7]="FacePhoto",e[e.VideoStream=9]="VideoStream",e[e.HologramFootage=11]="HologramFootage",e[e.FingerPrint=15]="FingerPrint"}(c||(t.MediaType=c={})),function(e){e[e.Undetermined=0]="Undetermined",e[e.PassportScanner=1]="PassportScanner",e[e.A4Scanner=2]="A4Scanner",e[e.Webcam=3]="Webcam",e[e.MobileCam=4]="MobileCam",e[e.IDScanImageCaptureService=5]="IDScanImageCaptureService"}(u||(t.MediaSource=u={}))},3908:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Helper=void 0;class i{}t.Helper=i,i.defaultRetinaSettings={cortexApiPath:"http://localhost/VisionCortex/",cortexApiController:"LivenessStreamingSocket",autoRun:!1},i.extend=(e,t)=>{e=e||{};for(const n in t)"object"==typeof t[n]?e[n]=i.extend(e[n],t[n]):e[n]=t[n];return e}},5828:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.RetinaFactory=void 0;const n=i(7824),a=i(9652);class s{constructor(){this.getService=(e,t,i,n)=>this._service?Promise.resolve(this._service):this.getNewService(e,t,i,n),this.getNewService=(e,t,i,s)=>(n.HttpRequestService.authenticationToken=i,this.terminateService().then((()=>this._service=new a.RetinaService(e,t,s))).then((t=>t.reset(e)))),this.terminateService=()=>this._service?this._service.terminate():Promise.resolve()}}t.RetinaFactory=s,t.default=new s},6565:(e,t,i)=>{i.r(t)},6619:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.SendingFramesManager=void 0;const n=i(7007),a=i(7824),s=i(3667);class r extends n.EventEmitter{constructor(e,t,i){super(),this._stepNumber=1,this.connect=()=>{const e=`?journeyId=${this._journeyId}&stepNumber=${this.stepNumber}&authenticationToken=${a.HttpRequestService.authenticationToken}`;return new Promise(((t,i)=>{try{this._socket=new WebSocket(this._host+e),this._socket.addEventListener("open",(e=>t(this))),this._socket.addEventListener("message",(e=>{e.data&&this.onCaptureResponse(JSON.parse(e.data))})),this._socket.addEventListener("error",this.onCaptureError),this._socket.addEventListener("close",this.onCaptureTerminate)}catch(e){return i("Camera Media Channel: Can not establish connection to the server")}}))},this.send=e=>{if(void 0!==this._socket&&this._socket.readyState===WebSocket.OPEN)return this._socket.send(e)},this.close=()=>{if(this._socket&&this._socket.readyState!==WebSocket.CLOSED)return this._socket.close()},this.runTestResponse=e=>this.onCaptureResponse(e),this.onCaptureError=e=>this.emit(s.CortixResponseAction.Error,e),this.onCaptureTerminate=e=>this.emit(s.CortixResponseAction.Close,e),this.onCaptureResponse=e=>this.emit(e.requiredAction,e),this._journeyId=e;const n="80"===t.split(":")[1].split("/")[0]?"ws://":"wss://";this._host=n+t+i}get stepNumber(){return this._stepNumber++}}t.SendingFramesManager=r},7057:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseImageCaptureService=void 0;const n=i(3667);t.BaseImageCaptureService=class{get channelType(){return n.MediaChannelType[this._mediaType]}constructor(e,t){this.finish=()=>{throw new Error("Not Implemented")},this.start=()=>{throw new Error("Not Implemented")},this.runTestResponse=e=>{throw new Error("Not Implemented")},this._mediaType=t,this.journeyId=e}}},7824:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.HttpRequestService=void 0;t.HttpRequestService=class{}},7838:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CameraCaptureService=void 0;const n=i(7057),a=i(3667),s=i(9573);class r extends n.BaseImageCaptureService{get emitter(){return this._camera.emitter}constructor(e,t){super(e,a.MediaChannelType.Camera),this.init=()=>this._camera.init().then((()=>(this._autoRun&&setTimeout((()=>this._camera.start()),1e3),this))),this.start=()=>this._camera.start(),this.finish=()=>this._camera.finish(),this.runTestResponse=e=>{if(this._camera)return this._camera.runTestResponse(e)},this._autoRun=!!t.autoRun,this._camera=new s.CameraCapture(t,this.journeyId)}}t.CameraCaptureService=r},9573:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CameraCapture=void 0;const n=i(3123),a=i(2538),s=i(1216),r=i(7338),o=i(192),c=i(8137),u=i(642),h=i(6871),d=i(3667),l=i(2444),m=i(6619);t.CameraCapture=class{get emitter(){return this._sendingFramesManager}constructor(e,t){this._SENDING_REQUESTS_DELAY_MILLISECOND=10,this._CAPTURING_DELAY_MILLISECOND=100,this._MAX_AVAILABLE_CAPTURED_IMAGES_COUNT=1,this._SEND_REQUEST_TIMEOUT_SECOND=.001,this._capturedImagesQueue=[],this._lastSentRequestTime=(new Date).getTime(),this._isLastFrameConfirmed=!1,this._currentStep=8,this.init=()=>this.cleanHtmlContent().then(this.renderStatus).then((()=>o.default.getElements(this._container,{cameraSelect:'[data-jcs-element="camera__select"]',cameraStatus:'[data-jcs-element="camera__status"]',start:'[data-jcs-element="retina__start"]'}).then((({cameraSelect:e,cameraStatus:t,start:i})=>{r.default.setEnabled(e,!1),r.default.hideObject(e),r.default.setEnabled(i,!1),this.changeCameraStream(void 0,c.ReticleType.PORTRAIT).then((()=>this.renderAvailableCameras(e))).then((()=>{r.default.setEnabled(e,!0),r.default.setEnabled(i,!0),r.default.hideObject(t)})).then(this.attachEvents).catch((i=>{r.default.hideObject(e),r.default.showObject(t),r.default.setText(t,s.default.getTranslation(i.message))}))})))),this.start=()=>{this._sendingFramesManager.connect().then((()=>{this.startCapturingTimer(),a.default.publish(u.JourneyEvent.CAMERA_START,{camera:n.default.currentDeviceId})}))},this.finish=()=>{this.stopPausingTimers(),this.stopCapturingTimer(),this.stopSendingFramesTimer(),n.default.stopStreaming().then((()=>this._sendingFramesManager.close()))},this.runTestResponse=e=>{this._sendingFramesManager.runTestResponse(e)},this.changeCameraStream=(e,t=c.ReticleType.NONE)=>o.default.getElements(this._container,{cameraViewfinder:'[data-jcs-element="camera__viewfinder"]'}).then((({cameraViewfinder:i})=>i instanceof HTMLCanvasElement?n.default.stopStreaming().then((()=>n.default.clearCanvas(i))).then((()=>a.default.publish(u.JourneyEvent.CAMERA_CHANGE,{camera:e}))).then((()=>n.default.getStream(e,void 0,{horizontal:800,vertical:480},{horizontal:640,vertical:480}))).then((e=>n.default.renderStreamToElement(e,i,{reticleType:t,mirror:!0}))):Promise.resolve())).then((()=>n.default.currentDeviceId)),this.attachEvents=()=>o.default.getElements(this._container,{cameraSelect:'[data-jcs-element="camera__select"]',cameraStatus:'[data-jcs-element="camera__status"]',cameraViewfinder:'[data-jcs-element="camera__viewfinder"]',start:'[data-jcs-element="retina__start"]'}).then((({cameraSelect:e,cameraStatus:t,cameraViewfinder:i,start:o})=>{o instanceof HTMLElement&&o.addEventListener("click",(()=>{this.start(),r.default.setEnabled(e,!1),r.default.setEnabled(o,!1)})),e instanceof HTMLSelectElement&&(r.default.setEnabled(e,!0),e.addEventListener("change",(()=>{r.default.hideObject(t),r.default.setEnabled(e,!1),r.default.setEnabled(o,!1),n.default.stopStreaming().then((()=>n.default.clearCanvas(i))).then((()=>a.default.publish(u.JourneyEvent.CAMERA_CHANGE,{camera:e.value}))).then((()=>this.changeCameraStream(e.value,c.ReticleType.PORTRAIT))).then((()=>this.renderAvailableCameras(e))).then((()=>{r.default.setEnabled(e,!0),r.default.setEnabled(o,!0)})).catch((i=>{r.default.setEnabled(e,!0),r.default.showObject(t),r.default.setText(t,s.default.getTranslation(i.message))}))})))})),this.cleanHtmlContent=()=>o.default.getElements(this._container,{cameraNotification:'[data-jcs-element="retina__notifications"]',timeCounterContainer:'[data-jcs-element="retina__timer"]',messageContainer:'[data-jcs-element="retina__message"]',start:'[data-jcs-element="retina__start"]'}).then((({cameraNotification:e,timeCounterContainer:t,messageContainer:i,start:n})=>{r.default.setEnabled(n,!1),r.default.hideObject(i),r.default.hideObject(e),r.default.hideObject(t),r.default.setText(t),r.default.setText(i)})),this.startCapturingTimer=()=>{this.stopCapturingTimer(),this._capturingTimer=setInterval(this.captureAndSendFrame,this._CAPTURING_DELAY_MILLISECOND)},this.stopCapturingTimer=()=>{clearInterval(this._capturingTimer),this._capturingTimer=void 0,this._capturedImagesQueue.length=0,this._capturedImagesQueue=[]},this.captureAndSendFrame=()=>{const e=this._currentStep;return n.default.getLivenessBlobFromCurrentStream().then((t=>{new Response(t).arrayBuffer().then((t=>{const i=new Uint8Array(2);if(i[0]=e,i[1]=2,t){const n=this._appendBuffer(i,t),a=new Blob([new Uint8Array(n)]);this._currentStep===e&&this._sendingFramesManager.send(a)}}))}))},this.startSendingFramesTimer=()=>{this.stopSendingFramesTimer(),this._sendingFramesTimer=setInterval((()=>{this.sendNewFrame();((new Date).getTime()-this._lastSentRequestTime)/1e3>=this._SEND_REQUEST_TIMEOUT_SECOND&&this.sendNewFrame()}),this._SENDING_REQUESTS_DELAY_MILLISECOND)},this.stopSendingFramesTimer=()=>{l.Helper.isDefined(this._sendingFramesTimer)&&(clearInterval(this._sendingFramesTimer),this._sendingFramesTimer=void 0)},this.pauseCapturing=e=>{this.showDownCounter(e),e+=2,this.stopPausingTimers(),this.stopCapturingTimer(),this.stopSendingFramesTimer(),this._sendingFramesManager.close(),this._pauseTimer=setTimeout((()=>{this._sendingFramesManager.connect().then((()=>{this.startCapturingTimer(),this._pauseTimer=void 0}))}),1e3*e)},this.stopPausingTimers=()=>{l.Helper.isDefined(this._pauseTimer)&&clearTimeout(this._pauseTimer)},this.sendNewFrame=()=>{if(!this._capturingTimer||0===this._capturedImagesQueue.length)return;const e=this._capturedImagesQueue.shift();this._lastSentRequestTime=(new Date).getTime(),this._sendingFramesManager&&e&&this._sendingFramesManager.send(e)},this._appendBuffer=(e,t)=>{if(!e)return t;if(!t)return e;const i=new Uint8Array(e.byteLength+t.byteLength);return i.set(new Uint8Array(e),0),i.set(new Uint8Array(t),e.byteLength),i.buffer},this._updateCurrentActionEnum=e=>{switch(e){case d.LivenessActionType.Smile:this._currentStep=0;break;case d.LivenessActionType.Frown:this._currentStep=1;break;case d.LivenessActionType.TiltLeft:this._currentStep=2;break;case d.LivenessActionType.TiltRight:this._currentStep=3;break;case d.LivenessActionType.TiltUp:this._currentStep=4;break;case d.LivenessActionType.TiltDown:this._currentStep=5;break;case d.LivenessActionType.TiltStraight:this._currentStep=6;break;case d.LivenessActionType.NoAction:this._currentStep=7;break;default:this._currentStep=8}},this.showMessage=(e="")=>o.default.getElements(this._container,{cameraNotification:'[data-jcs-element="retina__notifications"]',messageContainer:'[data-jcs-element="retina__message"]'}).then((({cameraNotification:t,messageContainer:i})=>{switch(this._updateCurrentActionEnum(e),e){case d.LivenessActionType.Smile:case d.LivenessActionType.Frown:case d.LivenessActionType.TiltLeft:case d.LivenessActionType.TiltRight:case d.LivenessActionType.TiltUp:case d.LivenessActionType.TiltDown:case d.LivenessActionType.TiltStraight:case d.LivenessActionType.NoAction:case d.LivenessActionType.ProcessingLiveness:r.default.setText(i,s.default.getTranslation(`LIVENESS_ACTION_${e}`)),r.default.showObject(i),r.default.showObject(t);break;case d.LivenessFinalResult.Failed:case d.LivenessFinalResult.Passed:case d.LivenessFinalResult.ActionTimedOut:case d.LivenessFinalResult.Interrupted:case d.LivenessFinalResult.Undefined:r.default.setText(i,s.default.getTranslation(`LIVENESS_RESULT_${e}`)),r.default.showObject(i),r.default.showObject(t)}})),this.showDownCounter=e=>o.default.getElements(this._container,{cameraNotification:'[data-jcs-element="retina__notifications"]',messageContainer:'[data-jcs-element="retina__message"]',timeCounterContainer:'[data-jcs-element="retina__timer"]'}).then((({cameraNotification:t,timeCounterContainer:i,messageContainer:n})=>{void 0!==e&&(l.Helper.isDefined(this._downCounterTimer)&&clearInterval(this._downCounterTimer),r.default.setText(i,e.toString()),r.default.showObject(i),r.default.showObject(t),r.default.showObject(n),this._downCounterTimer=setInterval((()=>{e>=0?(i&&(i.innerHTML=e.toString()),e--):(clearInterval(this._downCounterTimer),r.default.hideObject(i),r.default.hideObject(t),r.default.hideObject(n),r.default.setText(i),r.default.setText(n))}),1e3))})),this.renderStatus=()=>o.default.getElements(this._container,{cameraStatus:'[data-jcs-element="camera__status"]'}).then((({cameraStatus:e})=>n.default.getCameraPermission().then((t=>{switch(t){case n.CameraPermissionState.GRANTED:return r.default.hideObject(e);case n.CameraPermissionState.DENIED:case n.CameraPermissionState.PROMPT:return r.default.setText(e,s.default.getTranslation(h.TranslationKey.EXCEPTION_PLATFORM_CAMERA_PERMISSION_DENIED));default:return r.default.setText(e,s.default.getTranslation(h.TranslationKey.EXCEPTION_PLATFORM_CAMERA_PERMISSION_UNAVAILABLE))}})))),this.renderAvailableCameras=e=>n.default.getVideoCameras().then((e=>e.map((e=>({name:e.label,value:e.deviceId,selected:n.default.currentDeviceId===e.deviceId}))))).then((t=>r.default.updateSelect(e,t)));const{imageQuality:i=85,frameSubmissionDelay:p=.001,grayscale:g=!1,cortexApiPath:_,cortexApiController:f,container:v}=e;this.journeyId=t,this._container=v,this.imageQuality=l.Helper.boundValue(i,0,100),this._SEND_REQUEST_TIMEOUT_SECOND=.001,this.grayscale=g,this.cortexApiPath=_,this.cortexApiController=f,this._sendingFramesManager=new m.SendingFramesManager(this.journeyId,this.cortexApiPath,this.cortexApiController),this._sendingFramesManager.on(d.CortixResponseAction.KeepCapturing,(({message:e,requiredAction:t})=>{this._isLastFrameConfirmed=!0,a.default.publish(u.JourneyEvent.CAMERA_POSE,{pose:e,requiredAction:t}).then((()=>{window.navigator&&window.navigator.vibrate&&window.navigator.vibrate(300),this.showMessage(e)}))})),this._sendingFramesManager.on(d.CortixResponseAction.PauseCapturing,(({message:e,pauseDuration:t})=>{a.default.publish(u.JourneyEvent.CAMERA_PAUSE).then((()=>this.showMessage(e))).then((()=>this.pauseCapturing(t)))})),this._sendingFramesManager.on(d.CortixResponseAction.StopCapturing,(({message:e})=>{a.default.publish(u.JourneyEvent.CAMERA_DONE).then((()=>this.showMessage(e))).then((()=>this.finish()))})),this._sendingFramesManager.on(d.CortixResponseAction.FinishLivenessCapturing,(({message:e})=>{a.default.publish(u.JourneyEvent.CAMERA_DONE).then((()=>this.showMessage(e)))})),this._sendingFramesManager.on(d.CortixResponseAction.Close,(({code:e,reason:t,wasClean:i})=>{1e3!==e?a.default.publish(u.JourneyEvent.ERROR,{code:e,reason:t,wasClean:i}).then((()=>this.finish())):this.finish()})),this._sendingFramesManager.on(d.CortixResponseAction.Error,(e=>{a.default.publish(u.JourneyEvent.ERROR,{event:e}).then((()=>this.finish()))}))}}},9652:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.RetinaService=void 0;const n=i(3908),a=i(7838),s=i(3667);t.RetinaService=class{get emitter(){return this._currentImageCaptureService.emitter}constructor(e,t,i){this.start=()=>{if(!this._currentImageCaptureService)throw new Error("The current image capture service is undefined");return this._currentImageCaptureService.start()},this.reset=e=>(this._journeyId=e,this.create().then((()=>this))),this.terminate=()=>new Promise((e=>(this._currentImageCaptureService&&(this._currentImageCaptureService.finish(),this._currentImageCaptureService=void 0),e()))),this.runTestResponse=e=>{if(!this._currentImageCaptureService)throw new Error("The current image capture service is undefined");return this._currentImageCaptureService.runTestResponse(e)},this.create=(e=this._retinaSettings)=>this.getMediaInstance({channelType:s.MediaChannelType.Camera,options:Object.assign({container:this._container,journeyId:this._journeyId},e)}).then((e=>this._currentImageCaptureService=e)),this.getMediaInstance=e=>{const{channelType:t=s.MediaChannelType.None,options:i={}}=e||{};return t===s.MediaChannelType.Camera?new a.CameraCaptureService(this._journeyId,i).init():Promise.reject()},this._journeyId=e,this._container=t,this._retinaSettings=Object.assign(Object.assign({},n.Helper.defaultRetinaSettings),i)}}}},i={};function n(e){var a=i[e];if(void 0!==a)return a.exports;var s=i[e]={id:e,loaded:!1,exports:{}};return t[e].call(s.exports,s,s.exports,n),s.loaded=!0,s.exports}n.m=t,n.amdO={},e=[],n.O=(t,i,a,s)=>{if(!i){var r=1/0;for(h=0;h<e.length;h++){for(var[i,a,s]=e[h],o=!0,c=0;c<i.length;c++)(!1&s||r>=s)&&Object.keys(n.O).every((e=>n.O[e](i[c])))?i.splice(c--,1):(o=!1,s<r&&(r=s));if(o){e.splice(h--,1);var u=a();void 0!==u&&(t=u)}}return t}s=s||0;for(var h=e.length;h>0&&e[h-1][2]>s;h--)e[h]=e[h-1];e[h]=[i,a,s]},n.d=(e,t)=>{for(var i in t)n.o(t,i)&&!n.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),(()=>{var e;n.g.importScripts&&(e=n.g.location+"");var t=n.g.document;if(!e&&t&&(t.currentScript&&"SCRIPT"===t.currentScript.tagName.toUpperCase()&&(e=t.currentScript.src),!e)){var i=t.getElementsByTagName("script");if(i.length)for(var a=i.length-1;a>-1&&(!e||!/^http(s?):/.test(e));)e=i[a--].src}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),n.p=e})(),(()=>{var e={474:0};n.O.j=t=>0===e[t];var t=(t,i)=>{var a,s,[r,o,c]=i,u=0;if(r.some((t=>0!==e[t]))){for(a in o)n.o(o,a)&&(n.m[a]=o[a]);if(c)var h=c(n)}for(t&&t(i);u<r.length;u++)s=r[u],n.o(e,s)&&e[s]&&e[s][0](),e[s]=0;return n.O(h)},i=this.webpackChunkGBG_Idscan=this.webpackChunkGBG_Idscan||[];i.forEach(t.bind(null,0)),i.push=t.bind(null,i.push.bind(i))})();var a=n.O(void 0,[277,515,51,729,748,841,112,702,666,302,235,990,423,835,722,193,183,436,430,0,595,77,686,285,822,159],(()=>n(6339)));return a=n.O(a)})())); //# sourceMappingURL=idscan-jcs-6b882012.93839b50b8a7df33fef9.js.map