{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/views/components/ModalLogs.vue?526b","webpack:///./src/helpers/Meet.js","webpack:///./node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/store/meeting/actions.js","webpack:///./src/helpers/colmedica_huella.js","webpack:///./src/App.vue?f641","webpack:///./src/views/components/ModalLogs.vue?94e5","webpack:///src/views/components/ModalLogs.vue","webpack:///./src/views/components/ModalLogs.vue?029d","webpack:///./src/views/components/ModalLogs.vue","webpack:///src/App.vue","webpack:///./src/App.vue?382d","webpack:///./src/App.vue?a286","webpack:///./src/store/mutations.js","webpack:///./src/store/actions.js","webpack:///./src/store/getters.js","webpack:///./src/store/states.js","webpack:///./src/store/meeting/mutations.js","webpack:///./src/store/meeting/getters.js","webpack:///./src/store/meeting/states.js","webpack:///./src/store/meeting/index.js","webpack:///./src/store/recording/mutations.js","webpack:///./src/helpers/recorder.js","webpack:///./src/store/recording/actions.js","webpack:///./src/store/recording/getters.js","webpack:///./src/store/recording/states.js","webpack:///./src/store/recording/index.js","webpack:///./src/store/autoservice/mutations.js","webpack:///./src/helpers/encryption.js","webpack:///./src/store/autoservice/actions.js","webpack:///./src/helpers/colmedica_fila_virtual.js","webpack:///./src/store/autoservice/getters.js","webpack:///./src/store/autoservice/states.js","webpack:///./src/store/autoservice/index.js","webpack:///./src/store/virtualrow/mutations.js","webpack:///./src/store/virtualrow/CentroDemo.js","webpack:///./src/store/virtualrow/OficinaDemo.js","webpack:///./src/store/virtualrow/CitasDemo.js","webpack:///./src/store/virtualrow/ValidarpagocitaDemo.js","webpack:///./src/store/virtualrow/actions.js","webpack:///./src/store/virtualrow/getters.js","webpack:///./src/store/virtualrow/states.js","webpack:///./src/store/virtualrow/index.js","webpack:///./src/store/turn/mutations.js","webpack:///./src/helpers/clientInfo.js","webpack:///./src/store/turn/actions.js","webpack:///./src/store/turn/getters.js","webpack:///./src/store/turn/states.js","webpack:///./src/store/turn/index.js","webpack:///./src/store/log/mutations.js","webpack:///./src/store/log/actions.js","webpack:///./src/store/log/getters.js","webpack:///./src/store/log/states.js","webpack:///./src/store/log/index.js","webpack:///./src/store/index.js","webpack:///./src/router/index.js","webpack:///./src/externals/progress/Progress.vue?e3fe","webpack:///./src/externals/progress/constants.js","webpack:///./src/externals/progress/utils.js","webpack:///src/externals/progress/Progress.vue","webpack:///./src/externals/progress/Progress.vue?b3d9","webpack:///./src/externals/progress/Progress.vue","webpack:///./src/externals/progress/index.js","webpack:///./src/directives/openLog.js","webpack:///./src/main.js","webpack:///./src/App.vue?595f","webpack:///./src/helpers/gtm.service.js","webpack:///./src/helpers/localStorage.js","webpack:///./src/utils/decoder.js"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","envGlobal","JSON","parse","stringify","process","tries","promiseEnv","requestedEnvironments","passphrase","token","LS","getItem","refresh","time","requester","ctx","headers","url","body","env","getEnvOnly","fetch","VUE_APP_AWS_API_URL","_omit","VUE_APP_AWS_API_KEY","response","status","json","windowDispatchEvent","detail","CustomEvent","dispatchEvent","join","info","title","getToken","method","Authorization","getCompany","company","getBranch","branch","getEnqueueTurn","tramiteId","branchId","log","getTurnInfo","turnCode","cancelTurn","sendFile","element","call_id","turn_code","b64","getEnvironments","res","rej","nameSplitted","split","mom","moment","utc","nameOfUuidfile","kuid","hour","format","timedate","xhr","XMLHttpRequest","destiny","VUE_APP_FILE_SERVER","addEventListener","this","readyState","responseText","open","setRequestHeader","VUE_APP_BSI_KEY","encodeURIComponent","send","getCorrelation","kuidId","getQueues","getMenus","code_id","getStyles","recursiveRequest","config","errorEventFunction","executor","Date","now","newTime","location","hash","origin","adviceArea","querySelector","innerHTML","newEnv","setCorrelation","turnId","others","coo","end","meetingId","getOneTimeToken","authentication_engine","setValues","tokenValue","refreshValue","timeValue","setItem","manualKey","keysource","noTimeRefresh","atob","Math","ceil","exp","getOneUseToken","sendRecords","tipide_dni","numide_dni","first_message","second_message","branch_id","tracking","map","webpackContext","req","id","webpackContextResolve","keys","meetingSession","publicKey","LlaveAES","Token","_vm","_h","$createElement","_c","_self","attrs","_m","staticRenderFns","staticClass","scopedSlots","_u","fn","ref","close","_v","staticStyle","on","$event","showModal","model","callback","$$v","show","expression","_l","index","toggleDropDown","class","checked","_s","refInFor","toggleDropDownMore","meeting","connecting","audioId","audioInputDevices","audioOutputDevices","videoInputDevices","attendees","videosIds","myname","videoDevice","speakerDevice","audioDevice","audioEnabled","camEnabled","speakerEnabled","bitrateKbps","stopSuggestionFromActiveCamera","packetsPerSecond","nackCountPerSecond","videoStopSuggestion","connectionIsGood","estimatedBandwidth","requiredBandwidth","m_allow_video","sharingEnabled","isAgent","computed","logListMap","logList","methods","$refs","style","display","logItem__more","component","components","ModalLogs","created","startup","setPosition","state","pay","position","setStarted","started","setCoorelation","turnCoorelation","setEnvironments","VUE_APP_ENV","environment","setState","_get","removeItem","setViewState","commit","GM","eventCategory","eventAction","dispatch","session","forced","sessionCode","checkSession","setFirstElementDatalayer","session_id","version","user_type","user_uuid","person","replaceSession","setLocalization","VUE_APP_GET_LOCATION","navigator","geolocation","getCurrentPosition","lat","long","setVariable","customLocationGPS","companyName","setTramite","setTurnUUID","getTurn","tramite_info","queueId","params","turn","VUE_APP_DEBQ_DIRECT","axios","post","unix","turnInfo","extraFields","Videollamada","catch","getTurnRequest","__","codeToSend","prevResponse","errorResp","RB","error_turn_request_counter","turn_timer","timer","getTurnCoorelation","coorData","cleanTurn","setSessionMaster","options","currentTurn","local","verify_client_data","load_client_data","enclient","json_value","try_json","b64_to_utf8","feclient_data","dt","fdclient_data","setBranchInfo","setTimer","generalTimeout","eventTime","removeTimer","restart","pageForeground","sessionMaster","client_data","turnUUID","catch_error","max_waiting_time","time_received_turn","branchInfo","eclient_data","dclient_data","removeTimeout","Array","isArray","setMeeting","addMessage","messages","toogleCamModal","meetTiming","setMeetType","startMeet","rootState","client_info","assistant","fullname","turn_id","turn_strings","branch_name","queue_id","video_public_path","results","root","JoinInfo","newerror","endMeet","audioVideo","realtimeUnsubscribeFromReceiveDataMessage","stop","ConfirmedendMeeting","warning","setAtendeeName","sendMessage","realtimeSendDataMessage","dataMessage","timestampMs","senderAttendeeId","configuration","credentials","attendeeId","senderExternalUserId","text","chatMessageHandler","timestamp","floor","attendeeName","isSelf","payload","toogleAudioEnabled","realtimeUnmuteLocalAudio","realtimeMuteLocalAudio","toogleSpeakerEnabled","unbindAudioElement","changeSpeakerDevice","audio","deviceId","changeVideoDevice","video","stopLocalVideoTile","startLocalVideoTile","changeAudioDevice","startCamera","toogleCamEnabled","startMeeting","logger","ConsoleLogger","LogLevel","INFO","deviceController","DefaultDeviceController","meetingResponse","Meeting","attendeeResponse","Attendee","MeetingSessionConfiguration","DefaultMeetingSession","start","attendeesObservable","realtimeSubscribeToAttendeeIdPresence","presentAttendeeId","present","findIndex","elm","filter","checkHabilities","listAudioInputDevices","listAudioOutputDevices","selectFirstMedia","checkHabilitiesVideo","chooseVideoInputQuality","listVideoInputDevices","firstVideo","selectVideoDevice","chooseVideoInputDevice","selectSpeakerDevice","chooseAudioOutputDevice","selectAudioDevice","chooseAudioInputDevice","healthChange","bandwidthChange","commonNotification","connectionStatus","bandwidthRequirements","observersChangeOfMedia","observer","audioInputsChanged","freshAudioInputDeviceList","list","forEach","mediaDeviceInfo","label","audioOutputsChanged","freshAudioOutputDeviceList","videoInputsChanged","freshVideoInputDeviceList","addDeviceChangeObserver","observersGlobal","addObserver","connectionDidSuggestStopVideo","connectionDidBecomeGood","estimatedDownlinkBandwidthLessThanRequired","connectionDidBecomePoor","videoSendHealthDidChange","videoSendBandwidthDidChange","newBandwidthKbps","oldBandwidthKbps","audioVideoDidStart","eventValue","videoTileDidUpdate","tileState","tileId","yourAttendeeId","boundAttendeeId","isContent","baseAttendeeId","DefaultModality","base","isMineContent","vid","videoElement","getElementById","bindVideoElement","videoTileWasRemoved","videoIndex","realtimeSubscribeToReceiveDataMessage","toogleSharingEnabled","startContentShareFromScreenCapture","stopContentShare","bindAudio","bindAudioElement","namespaced","mutations","actions","getters","Recorder","routeOfCheck","VUE_APP_RECORDER","recorder","startCheck","setInterval","checkRecorder","sendTurn","setTurn","stopCheck","clearInterval","rsa","System","Security","Cryptography","RSACryptoServiceProvider","configureRSA","FromXmlString","processedKey","ExportParameters","ImportParameters","encryptPublicRSA","bytes","Text","Encoding","UTF8","GetBytes","doOaepPadding","encryptedBytes","Encrypt","Convert","ToBase64String","signRSA","Data","aesKey","keyAscii","ivAscii","encoder","TextEncoder","keyBytes","encode","iv","crypto","subtle","importKey","encryptAES","utf8","encrypt","encrypted","buff","Uint8Array","str","String","fromCharCode","btoa","decryptAES","TextDecoder","ascii","asciiBytes","charCodeAt","decrypt","decrypted","decoded","decode","encryptAESWorker","aesWk","Worker","onmessage","postMessage","getLlavePublica","server","VUE_APP_HUELLA_SERVER","pub","autorizar","TipoIdentificacion","NumeroIdentificacion","keyString","rand","generate","llaveAES","colmedicaDecode","encoded","ivString","substr","encodedString","consultarCliente","Iv","enc","guardarSolicitud","ParametroSolicitudCanal","ArchivoSolicitud","dataToSend","goToView","setService","setExplanation","selecteService","captchaValidation","grecaptcha","ready","execute","VUE_APP_RECAPTCHA_CODE","action","bunitId","VUE_APP_BUNIT","validationErrors","demoValidation","Celular","Correo","Nombres","PrimerApellido","Resultado","SegundoApellido","authAndQueryColmedica","autorizacionColmedica","ti","nu","consultaClienteColmedica","client","guardarSolicitudDemo","guardarSolicitudColmedica","toSend","CanalIngreso","DescripcionCanal","Identificacion","b64final","NombreUsuario","trim","CorreoElectronico","TelefonoCelular","TipoAutorizacionId","servicioSelected","files","file","Archivo","NombreArchivo","errorValidationTemporizer","updateB64Final","currentState","assign","clearDocs","removeFile","keyIndex","currentFiles","addFile","setHorarioOutContinue","view","HorarioOutContinue","charging","service","explanation","servicesAvailable","code_name","tipide","colmedicaRequest","ma","na","ap","tr","VUE_APP_DEBMEDIA_DEFAULT_TRAMITE","so","fu","em","ce","to","su","VUE_APP_DEBMEDIA_DEFAULT_BRANCH","logtail","Logtail","MaxTimeout","Timeout","VUE_APP_HUELLA_FV_SERVER","sw","StopWatch","getTask","timeMills","CodigoOficina","Key","mensaje","LlaveAes","enOficina","_timeout","enCentroMedico","citas","cita","idCita","IdCita","Fecha","validarPago","Prioritario","ConCita","Tipo","PrioridadMarcaValor","NombreCentroMedico","Especialidad","EnCentroMedico","bad","good","changeAuth","setCustomArea","setUserActionDate","getSites","sites","styles","bsix_client","companyColor","secondaryCompanyColor","contrastTextColor","area","menu","customMenu","isAtril","newArray","history","goBack","pop","setCitaCM","validation","sort","a","b","Orden","IdPaso","children","setAction","evaluationComponent","ignorePriority","confirmedAction","selectedAccion","turnCall","getCitaValidation","toReturn","VUE_APP_DEMO_MODE","ValPagoDemo","authenticate","nextComponent","currentUser","message_error","zone","userfinded","userDemo","find","usr","originFinded","currentSite","CentroDemo","OficinaDemo","cm","CitasDemo","authAndQuery","_pay","inSite","citasList","handleSendRecords","handleTracking","cleanCurrentUser","previousView","previousViewTwo","showAuth","tramiteInUserEvaluation","tramiteByDefault","catch_all","priority","citaActual","currentValidation","queueList","customArea","primaryColorBlue","secondColorBlue","threeColorBlueColor","userActionDate","browser","Bowser","getParser","userAgent","sm","bsix","v","PACKAGE_VERSION","br","getBrowser","os","getOS","vn","versionName","pl","getPlatformType","en","getEngine","extrafieldsConverter","source","coorelation_key","showable","in","clientInfo","toPack","firstName","la","lastName","marcacion","cuit","dni","phone","utf8_to_b64","infoOfTurn","onlyGenerate","withVideocall","withAnalitycExtraFields","cuil","cedulaIdentidad","getTurnStatus","infoErrorCount","cancelTurnAction","onlyClean","epoch","put","clear","Vue","use","Vuex","store","Store","recording","autoservice","virtualrow","turns","VueRouter","routes","path","redirect","beforeEnter","from","next","query","props","router","beforeEach","_t","LINE","CIRCLE","PATH","extend","default","validator","val","color","strokeWidth","Number","RE_FLOAT","test","trailColor","trailWidth","duration","RE_INT","easing","svgStyle","fill","step","Function","progress","mounted","init","destroyed","destroy","parseFloat","parseInt","_options","paths","svg","trail","animate","cb","set","setText","VueProgress","install","Progress","clickCounter","el","unbind","removeEventListener","lastUpdate","serviceWorker","getRegistrations","registrations","registration","unregister","setPerson","username","productionTip","BootstrapVue","ToggleButton","defaults","baseURL","VUE_APP_DEBMEDIA_SERVER","Rollbar","accessToken","autoInstrument","maxTelemetryEvents","captureIp","retryInterval","captureUncaught","captureUnhandledRejections","javascript","code_version","host","fingerprint","bsix_version","bsix_server","$rollbar","errorHandler","vm","directive","openLogDirective","render","h","App","$mount","dataLayer","GTM","variable","mdata","__traverse","__sendEvent","extinguishVisibility","eventLabel","timeOfEvent","obj","parn","ky","traverse","parent","keyIntro","GTMService","lsPrefix","VUE_APP_LS_PREFIX","localStorage","encodeUrlComponent","unescape","decodeUrlComponent","decodeURIComponent"],"mappings":"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","file":"app.ef397d01244fafaed1ef.bundle.js?v=5.1.3","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-03648e86\":\"574f357d\",\"chunk-053fa304\":\"88fd2559\",\"chunk-18a6f03a\":\"c1459d90\",\"chunk-1f9d23e0\":\"7232128e\",\"chunk-20e7f32c\":\"e75298b9\",\"chunk-287be6fa\":\"6ca30f23\",\"chunk-2d0aa17c\":\"80e522c9\",\"chunk-2d0aa7c0\":\"dd72b83c\",\"chunk-2d21ee4e\":\"f1cce82e\",\"chunk-2d230075\":\"0a34d510\",\"chunk-31ef75eb\":\"de7efcc0\",\"chunk-64667cca\":\"13370b11\",\"chunk-7dcbb474\":\"e7a6c3df\",\"chunk-7a22d13a\":\"8e997ea1\",\"chunk-c75ce4c6\":\"563efd1e\",\"chunk-34000fd0\":\"3abc6e0a\",\"chunk-553d8298\":\"cd20d263\",\"chunk-06ee996f\":\"d27d9c48\",\"chunk-2d21aebf\":\"9e434103\",\"chunk-77e5707c\":\"f1e3173a\",\"chunk-8b587fce\":\"f50dbc9a\",\"chunk-7f3cd810\":\"0c096b18\",\"chunk-b261d284\":\"9925bdbd\",\"chunk-bb9c4a94\":\"af6fe941\",\"chunk-5b6400a6\":\"b4feafd0\",\"chunk-df808c68\":\"fa3598f3\",\"chunk-ce283402\":\"a3b307bd\",\"chunk-cfe33b5c\":\"5ca8b5ab\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"chunk-03648e86\":1,\"chunk-053fa304\":1,\"chunk-18a6f03a\":1,\"chunk-1f9d23e0\":1,\"chunk-20e7f32c\":1,\"chunk-287be6fa\":1,\"chunk-31ef75eb\":1,\"chunk-64667cca\":1,\"chunk-7dcbb474\":1,\"chunk-7a22d13a\":1,\"chunk-34000fd0\":1,\"chunk-553d8298\":1,\"chunk-06ee996f\":1,\"chunk-77e5707c\":1,\"chunk-8b587fce\":1,\"chunk-7f3cd810\":1,\"chunk-5b6400a6\":1,\"chunk-df808c68\":1,\"chunk-ce283402\":1,\"chunk-cfe33b5c\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-03648e86\":\"b2965ceb\",\"chunk-053fa304\":\"e7ab53bc\",\"chunk-18a6f03a\":\"d312bcb4\",\"chunk-1f9d23e0\":\"1486def3\",\"chunk-20e7f32c\":\"90fcc142\",\"chunk-287be6fa\":\"2f99027e\",\"chunk-2d0aa17c\":\"31d6cfe0\",\"chunk-2d0aa7c0\":\"31d6cfe0\",\"chunk-2d21ee4e\":\"31d6cfe0\",\"chunk-2d230075\":\"31d6cfe0\",\"chunk-31ef75eb\":\"7e90663a\",\"chunk-64667cca\":\"96efe559\",\"chunk-7dcbb474\":\"d71d38e3\",\"chunk-7a22d13a\":\"641be720\",\"chunk-c75ce4c6\":\"31d6cfe0\",\"chunk-34000fd0\":\"3af3e25e\",\"chunk-553d8298\":\"94d6f2d0\",\"chunk-06ee996f\":\"a3f19423\",\"chunk-2d21aebf\":\"31d6cfe0\",\"chunk-77e5707c\":\"ecd0376c\",\"chunk-8b587fce\":\"75e30af1\",\"chunk-7f3cd810\":\"9f4e73d5\",\"chunk-b261d284\":\"31d6cfe0\",\"chunk-bb9c4a94\":\"31d6cfe0\",\"chunk-5b6400a6\":\"dbea738e\",\"chunk-df808c68\":\"2e2df99a\",\"chunk-ce283402\":\"da3b4acc\",\"chunk-cfe33b5c\":\"db3e9ccb\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalLogs.vue?vue&type=style&index=0&id=457bb529&lang=scss&scoped=true&\"","import _omit from \"lodash/omit\";\nimport moment from \"moment\";\nimport kuid from \"kuid\";\nimport LS from \"./localStorage\";\n\nlet envGlobal = JSON.parse(JSON.stringify(process.env));\nlet tries = 0;\nlet promiseEnv = null;\nlet requestedEnvironments = false;\n\nlet passphrase = \"bsiTokenGenerator\";\nvar token = LS.getItem(token);\nvar refresh = LS.getItem(refresh);\nvar time = LS.getItem(time);\n\nasync function requester(ctx) {\n const { headers = {}, url, body } = ctx;\n if (!url) return Promise.reject(new Error(\"URL is required\"));\n let env = getEnvOnly();\n return await fetch(`${env.VUE_APP_AWS_API_URL}${url}`, {\n ..._omit(ctx, [\"headers\", \"url\", \"body\"]),\n body: body ? JSON.stringify(body) : undefined,\n headers: {\n ...{\n \"x-api-key\": env.VUE_APP_AWS_API_KEY,\n \"Content-Type\": \"application/json\"\n },\n ...headers\n },\n mode: \"cors\"\n })\n .then(response => {\n if (\n typeof response.status === \"number\" &&\n response.status >= 200 &&\n response.status < 400\n )\n return response;\n\n if(url == '/meet/meet-coorelation' && response.status == 410) return response;\n \n throw new Error(\n `Invalid request status ${response.status}. ${JSON.stringify(\n response.json()\n )}`\n );\n })\n .then(response => response.json());\n}\n\nfunction windowDispatchEvent(name, detail) {\n let event = new CustomEvent(name, { detail });\n window.dispatchEvent(event);\n}\n\nfunction join(info) {\n if (typeof info !== \"object\" || !info.title || !info.name)\n return Promise.reject(\n new Error(\"Invalid paramethers for meeting creation\")\n );\n return getToken().then(key => {\n return requester({\n url: \"/meet/join\",\n body: info,\n method: \"POST\",\n headers: {\n Authorization: key\n }\n });\n });\n}\n\nfunction getCompany(company) {\n if (!company)\n return Promise.reject(new Error(\"Invalid paramethers for Company request\"));\n return getToken().then(key => {\n return requester({\n url: `/company/${company}`,\n method: \"GET\",\n headers: {\n Authorization: key\n }\n });\n });\n}\n\nfunction getBranch(company, branch) {\n if (!company || !branch)\n return Promise.reject(new Error(\"Invalid paramethers for Branch request\"));\n return getToken().then(key => {\n return requester({\n url: `/company/${company}/branch/${branch}`,\n method: \"GET\",\n headers: {\n Authorization: key\n }\n });\n });\n}\n\nfunction getEnqueueTurn(tramiteId, branchId, info) {\n if (!tramiteId || !branchId || !info) {\n console.log(\"Invalid paramethers for Enqueue turn request\")\n return Promise.reject(\n new Error(\"Invalid paramethers for Enqueue turn request\", {\n tramiteId,\n branchId,\n info\n })\n );\n }\n\n return getToken().then(key => {\n return requester({\n url: `/queue/${tramiteId}/branch/${branchId}/enqueue`,\n method: \"POST\",\n body: info,\n headers: {\n Authorization: key\n }\n });\n });\n}\n\nfunction getTurnInfo(turnCode) {\n if (!turnCode)\n return Promise.reject(new Error(\"Invalid turn code for request\"));\n return getToken().then(key => {\n return requester({\n url: `/turn/${turnCode}`,\n method: \"GET\",\n headers: {\n Authorization: key\n }\n });\n });\n}\n\nfunction cancelTurn(turnCode) {\n if (!turnCode)\n return Promise.reject(new Error(\"Invalid turn code for request\"));\n return getToken().then(key => {\n return requester({\n url: `/turn/${turnCode}/cancel`,\n method: \"POST\",\n headers: {\n Authorization: key\n }\n });\n });\n}\n\nfunction sendFile(element) {\n // eslint-disable-next-line no-constant-condition\n if (\n element.call_id &&\n element.turn_code &&\n element.name &&\n element.type &&\n element.b64\n ) {\n return getEnvironments().then(env => {\n return new Promise((res, rej) => {\n let nameSplitted = element.name.split(\".\");\n let mom = moment().utc();\n let nameOfUuidfile = `${kuid()}.${\n nameSplitted[nameSplitted.length - 1]\n }`;\n let hour = mom.format(\"HH\");\n var timedate = mom.format(\"DDMMYYYY\");\n var data = element.b64;\n var xhr = new XMLHttpRequest();\n const destiny = `${env.VUE_APP_FILE_SERVER}/${timedate}/${hour}/${element.call_id}/chat_files/${nameOfUuidfile}`;\n\n xhr.addEventListener(\"readystatechange\", function() {\n if (this.readyState === 4) {\n if (xhr.status < 400 && xhr.status !== 0)\n res({ url: destiny, response: this.responseText });\n else rej(new Error(\"File upload failed with status \" + xhr.status));\n }\n });\n\n xhr.open(\n \"PUT\",\n destiny\n // \"https://l7hnmujmad.execute-api.us-east-1.amazonaws.com/prod/album1/anotherText.txt\"\n );\n xhr.setRequestHeader(\"x-api-key\", env.VUE_APP_BSI_KEY);\n xhr.setRequestHeader(\n \"x-amz-meta-turn-code\",\n encodeURIComponent(element.turn_code)\n );\n xhr.setRequestHeader(\n \"x-amz-meta-original-name\",\n encodeURIComponent(element.name)\n );\n xhr.setRequestHeader(\"Content-Type\", element.type);\n xhr.onerror = err => rej(err);\n xhr.send(data);\n });\n });\n }\n}\n\nfunction getCorrelation(kuidId) {\n if (!kuidId)\n return Promise.reject(new Error(\"Invalid paramethers for coorelation\"));\n /* eslint-disable */\n return new Promise( resolve => {\n return getToken().then( async key => {\n const response = await requester({\n url: `/meet/meet-coorelation`,\n body: {\n kuid: kuidId\n },\n method: \"PUT\",\n headers: {\n Authorization: key\n }\n });\n resolve(response)\n });\n });\n /* eslint-enable */\n}\n\nfunction getQueues() {\n return getToken().then(key => {\n return requester({\n url: \"/queues\",\n method: \"GET\",\n headers: {\n Authorization: key\n }\n });\n });\n}\n\nfunction getMenus(code_id) {\n return getToken().then(key => {\n return requester({\n url: `/menu${code_id ? \"/\" + code_id : \"\"}`,\n method: \"GET\",\n headers: {\n Authorization: key\n }\n });\n });\n}\n\nfunction getStyles() {\n return getToken().then(key => {\n return requester({\n url: \"/styles\",\n method: \"GET\",\n headers: {\n Authorization: key\n }\n });\n });\n}\n\nfunction recursiveRequest(config, errorEventFunction) {\n return new Promise(resolve => {\n executor();\n // eslint-disable-next-line no-unused-vars\n async function executor() {\n let time = Date.now();\n try {\n const response = await requester(config);\n resolve(response);\n } catch (error) {\n console.error(\"Error in recursiveRequest\", error);\n let newTime = Date.now() - time;\n if (typeof errorEventFunction === \"function\")\n errorEventFunction(newTime);\n if (newTime < 2000) setTimeout(() => executor(), 2000 - newTime);\n else executor();\n }\n }\n });\n}\n\nfunction getEnvironments() {\n let code = location.hash.split(\"fv_atril/\");\n if(code.length > 1){\n code = code.length > 1 ? code[1] : null;\n } else {\n code = location.hash.split(\"fv/\");\n code = code.length > 1 ? code[1] : null;\n }\n if (requestedEnvironments) return Promise.resolve(envGlobal);\n promiseEnv = recursiveRequest(\n {\n url: \"/environment\",\n method: \"POST\",\n body: { url: location.origin, code: code }\n },\n () => {\n let adviceArea = document.querySelector(\"#app #messageInternal\");\n if (adviceArea) {\n adviceArea.innerHTML = `Fallo en la conexión. Reintento # ${++tries}.`;\n }\n }\n ).then(newEnv => {\n promiseEnv = null;\n requestedEnvironments = true;\n envGlobal = { ...envGlobal, ...(newEnv?.env || {}) };\n return envGlobal;\n });\n return promiseEnv;\n}\n\nasync function setCorrelation({ kuidId, turnId, ...others }) {\n if (!kuidId && !turnId)\n return Promise.reject(new Error(\"Invalid paramethers for coorelation\"));\n\n // check if existe correlation\n let coo = await getCorrelation(kuidId);\n if(coo && coo.message != \"Can't read title(kuid) in table.\"){\n return coo;\n }\n\n return getToken().then(key => {\n return requester({\n url: \"/meet/meet-coorelation\",\n body: {\n kuid: kuidId,\n title: turnId,\n ...others\n },\n method: \"POST\",\n headers: {\n Authorization: key\n }\n });\n });\n \n\n}\n\nfunction end(info) {\n if (typeof info !== \"object\" || !info.title || !info.meetingId)\n return Promise.reject(new Error(\"Invalid paramethers for meeting ending\"));\n return getToken().then(key => {\n return requester({\n url: \"/meet/end\",\n body: info,\n method: \"POST\",\n headers: {\n Authorization: key\n }\n });\n });\n}\n\nfunction XMLtoPEM(xml) {\n return requester({\n url: \"/key/xml-to-pem\",\n body: {\n xml\n },\n method: \"POST\"\n }).then(key => key.pem);\n}\n\nfunction getOneTimeToken() {\n return getEnvironments(env =>\n requester({\n url: \"/key/one-use-token\",\n body: {\n token: env.VUE_APP_BSI_KEY,\n authentication_engine: \"bsi\",\n passphrase\n },\n method: \"POST\"\n })\n ).then(key => key.token);\n}\n\nfunction clearTokens() {\n token = null;\n refresh = null;\n time = null;\n LS.removeItem(\"token\");\n LS.removeItem(\"refresh\");\n LS.removeItem(\"time\");\n}\n\nfunction setValues({ tokenValue, refreshValue, timeValue }) {\n if (tokenValue) {\n token = tokenValue;\n LS.setItem(\"token\", tokenValue);\n }\n if (refreshValue) {\n refresh = refreshValue;\n LS.setItem(\"token\", refreshValue);\n }\n if (timeValue) {\n time = timeValue;\n LS.setItem(\"time\", timeValue);\n }\n}\n\nfunction getToken(manualKey, keysource, body = {}) {\n let noTimeRefresh = (() => {\n if (token) {\n try {\n let info = JSON.parse(atob(token.split(\".\")[1]));\n let now = Math.ceil(Date.now() / 1000);\n return info.exp > now + 20;\n // eslint-disable-next-line no-empty\n } catch (error) {}\n }\n })();\n if (token && noTimeRefresh) return Promise.resolve(token);\n if (token && refresh) {\n return recursiveRequest(\n {\n url: \"/key/refresh\",\n body: {\n refresh,\n authentication_engine: \"bsi\",\n passphrase\n },\n method: \"POST\"\n },\n () =>\n windowDispatchEvent(\"refreshError\", {\n message: \"Cant resolve refresh in BSIX\"\n })\n ).then(key => {\n setValues({ tokenValue: key.token, timeValue: Date.now() });\n return key.token;\n });\n } else {\n return getEnvironments()\n .then(env =>\n recursiveRequest(\n {\n url: \"/key/token\",\n body: {\n token: manualKey || env.VUE_APP_BSI_KEY,\n authentication_engine: keysource || (manualKey ? \"bsix\" : \"bsi\"),\n passphrase,\n ...body\n },\n method: \"POST\"\n },\n () =>\n windowDispatchEvent(\"tokenError\", {\n message: \"Cant resolve token in BSIX\"\n })\n )\n )\n .then(key => {\n setValues({\n tokenValue: key.token,\n refreshValue: key.refresh,\n timeValue: Date.now()\n });\n return key.token;\n });\n }\n}\n\nfunction getOneUseToken() {\n return getEnvironments()\n .then(env =>\n recursiveRequest(\n {\n url: \"/key/one-use-token\",\n body: {\n token: env.VUE_APP_BSI_KEY,\n authentication_engine: \"bsi\"\n },\n method: \"POST\"\n },\n () =>\n windowDispatchEvent(\"oneUseTokenError\", {\n message: \"Cant resolve one use token in BSIX\"\n })\n )\n )\n .then(key => key.token);\n}\n\nfunction getEnvOnly() {\n return envGlobal;\n}\n\nfunction sendRecords(info){\n if (typeof info !== \"object\" || !info.name || !info.tipide_dni || !info.numide_dni || !info.first_message || !info.second_message || !info.code_id || !info.branch_id || !info.origin)\n return Promise.reject(\n new Error(\"Invalid paramethers for data records\")\n );\n return getToken().then(key => {\n return requester({\n url: \"/virtualTurn\",\n body: info,\n method: \"POST\",\n headers: {\n Authorization: key\n }\n });\n });\n}\n\nfunction tracking(info){\n // if (typeof info !== \"object\" || !info.uuid || !info.accion || !info.debmedia_turn_code || !info.url_origen || !info.origen || !info.mensajes)\n // console.error('Invalid paramethers for data records')\n return getToken().then(key => {\n return requester({\n url: \"/tracking\",\n body: info,\n method: \"POST\",\n headers: {\n Authorization: key\n }\n });\n });\n}\n\nexport {\n join,\n end,\n getCorrelation,\n setCorrelation,\n XMLtoPEM,\n getOneTimeToken,\n getCompany,\n getBranch,\n getEnvironments,\n getEnvOnly,\n sendFile,\n getStyles,\n getEnqueueTurn,\n getTurnInfo,\n cancelTurn,\n getToken,\n getOneUseToken,\n clearTokens,\n getQueues,\n getMenus,\n windowDispatchEvent,\n sendRecords,\n tracking\n};\n","var map = {\n\t\"./af\": \"2bfb\",\n\t\"./af.js\": \"2bfb\",\n\t\"./ar\": \"8e73\",\n\t\"./ar-dz\": \"a356\",\n\t\"./ar-dz.js\": \"a356\",\n\t\"./ar-kw\": \"423e\",\n\t\"./ar-kw.js\": \"423e\",\n\t\"./ar-ly\": \"1cfd\",\n\t\"./ar-ly.js\": \"1cfd\",\n\t\"./ar-ma\": \"0a84\",\n\t\"./ar-ma.js\": \"0a84\",\n\t\"./ar-sa\": \"8230\",\n\t\"./ar-sa.js\": \"8230\",\n\t\"./ar-tn\": \"6d83\",\n\t\"./ar-tn.js\": \"6d83\",\n\t\"./ar.js\": \"8e73\",\n\t\"./az\": \"485c\",\n\t\"./az.js\": \"485c\",\n\t\"./be\": \"1fc1\",\n\t\"./be.js\": \"1fc1\",\n\t\"./bg\": \"84aa\",\n\t\"./bg.js\": \"84aa\",\n\t\"./bm\": \"a7fa\",\n\t\"./bm.js\": \"a7fa\",\n\t\"./bn\": \"9043\",\n\t\"./bn-bd\": \"9686\",\n\t\"./bn-bd.js\": \"9686\",\n\t\"./bn.js\": \"9043\",\n\t\"./bo\": \"d26a\",\n\t\"./bo.js\": \"d26a\",\n\t\"./br\": \"6887\",\n\t\"./br.js\": \"6887\",\n\t\"./bs\": \"2554\",\n\t\"./bs.js\": \"2554\",\n\t\"./ca\": \"d716\",\n\t\"./ca.js\": \"d716\",\n\t\"./cs\": \"3c0d\",\n\t\"./cs.js\": \"3c0d\",\n\t\"./cv\": \"03ec\",\n\t\"./cv.js\": \"03ec\",\n\t\"./cy\": \"9797\",\n\t\"./cy.js\": \"9797\",\n\t\"./da\": \"0f14\",\n\t\"./da.js\": \"0f14\",\n\t\"./de\": \"b469\",\n\t\"./de-at\": \"b3eb\",\n\t\"./de-at.js\": \"b3eb\",\n\t\"./de-ch\": \"bb71\",\n\t\"./de-ch.js\": \"bb71\",\n\t\"./de.js\": \"b469\",\n\t\"./dv\": \"598a\",\n\t\"./dv.js\": \"598a\",\n\t\"./el\": \"8d47\",\n\t\"./el.js\": \"8d47\",\n\t\"./en-au\": \"0e6b\",\n\t\"./en-au.js\": \"0e6b\",\n\t\"./en-ca\": \"3886\",\n\t\"./en-ca.js\": \"3886\",\n\t\"./en-gb\": \"39a6\",\n\t\"./en-gb.js\": \"39a6\",\n\t\"./en-ie\": \"e1d3\",\n\t\"./en-ie.js\": \"e1d3\",\n\t\"./en-il\": \"7333\",\n\t\"./en-il.js\": \"7333\",\n\t\"./en-in\": \"ec2e\",\n\t\"./en-in.js\": \"ec2e\",\n\t\"./en-nz\": \"6f50\",\n\t\"./en-nz.js\": \"6f50\",\n\t\"./en-sg\": \"b7e9\",\n\t\"./en-sg.js\": \"b7e9\",\n\t\"./eo\": \"65db\",\n\t\"./eo.js\": \"65db\",\n\t\"./es\": \"898b\",\n\t\"./es-do\": \"0a3c\",\n\t\"./es-do.js\": \"0a3c\",\n\t\"./es-mx\": \"b5b7\",\n\t\"./es-mx.js\": \"b5b7\",\n\t\"./es-us\": \"55c9\",\n\t\"./es-us.js\": \"55c9\",\n\t\"./es.js\": \"898b\",\n\t\"./et\": \"ec18\",\n\t\"./et.js\": \"ec18\",\n\t\"./eu\": \"0ff2\",\n\t\"./eu.js\": \"0ff2\",\n\t\"./fa\": \"8df4\",\n\t\"./fa.js\": \"8df4\",\n\t\"./fi\": \"81e9\",\n\t\"./fi.js\": \"81e9\",\n\t\"./fil\": \"d69a\",\n\t\"./fil.js\": \"d69a\",\n\t\"./fo\": \"0721\",\n\t\"./fo.js\": \"0721\",\n\t\"./fr\": \"9f26\",\n\t\"./fr-ca\": \"d9f8\",\n\t\"./fr-ca.js\": \"d9f8\",\n\t\"./fr-ch\": \"0e49\",\n\t\"./fr-ch.js\": \"0e49\",\n\t\"./fr.js\": \"9f26\",\n\t\"./fy\": \"7118\",\n\t\"./fy.js\": \"7118\",\n\t\"./ga\": \"5120\",\n\t\"./ga.js\": \"5120\",\n\t\"./gd\": \"f6b4\",\n\t\"./gd.js\": \"f6b4\",\n\t\"./gl\": \"8840\",\n\t\"./gl.js\": \"8840\",\n\t\"./gom-deva\": \"aaf2\",\n\t\"./gom-deva.js\": \"aaf2\",\n\t\"./gom-latn\": \"0caa\",\n\t\"./gom-latn.js\": \"0caa\",\n\t\"./gu\": \"e0c5\",\n\t\"./gu.js\": \"e0c5\",\n\t\"./he\": \"c7aa\",\n\t\"./he.js\": \"c7aa\",\n\t\"./hi\": \"dc4d\",\n\t\"./hi.js\": \"dc4d\",\n\t\"./hr\": \"4ba9\",\n\t\"./hr.js\": \"4ba9\",\n\t\"./hu\": \"5b14\",\n\t\"./hu.js\": \"5b14\",\n\t\"./hy-am\": \"d6b6\",\n\t\"./hy-am.js\": \"d6b6\",\n\t\"./id\": \"5038\",\n\t\"./id.js\": \"5038\",\n\t\"./is\": \"0558\",\n\t\"./is.js\": \"0558\",\n\t\"./it\": \"6e98\",\n\t\"./it-ch\": \"6f12\",\n\t\"./it-ch.js\": \"6f12\",\n\t\"./it.js\": \"6e98\",\n\t\"./ja\": \"079e\",\n\t\"./ja.js\": \"079e\",\n\t\"./jv\": \"b540\",\n\t\"./jv.js\": \"b540\",\n\t\"./ka\": \"201b\",\n\t\"./ka.js\": \"201b\",\n\t\"./kk\": \"6d79\",\n\t\"./kk.js\": \"6d79\",\n\t\"./km\": \"e81d\",\n\t\"./km.js\": \"e81d\",\n\t\"./kn\": \"3e92\",\n\t\"./kn.js\": \"3e92\",\n\t\"./ko\": \"22f8\",\n\t\"./ko.js\": \"22f8\",\n\t\"./ku\": \"2421\",\n\t\"./ku.js\": \"2421\",\n\t\"./ky\": \"9609\",\n\t\"./ky.js\": \"9609\",\n\t\"./lb\": \"440c\",\n\t\"./lb.js\": \"440c\",\n\t\"./lo\": \"b29d\",\n\t\"./lo.js\": \"b29d\",\n\t\"./lt\": \"26f9\",\n\t\"./lt.js\": \"26f9\",\n\t\"./lv\": \"b97c\",\n\t\"./lv.js\": \"b97c\",\n\t\"./me\": \"293c\",\n\t\"./me.js\": \"293c\",\n\t\"./mi\": \"688b\",\n\t\"./mi.js\": \"688b\",\n\t\"./mk\": \"6909\",\n\t\"./mk.js\": \"6909\",\n\t\"./ml\": \"02fb\",\n\t\"./ml.js\": \"02fb\",\n\t\"./mn\": \"958b\",\n\t\"./mn.js\": \"958b\",\n\t\"./mr\": \"39bd\",\n\t\"./mr.js\": \"39bd\",\n\t\"./ms\": \"ebe4\",\n\t\"./ms-my\": \"6403\",\n\t\"./ms-my.js\": \"6403\",\n\t\"./ms.js\": \"ebe4\",\n\t\"./mt\": \"1b45\",\n\t\"./mt.js\": \"1b45\",\n\t\"./my\": \"8689\",\n\t\"./my.js\": \"8689\",\n\t\"./nb\": \"6ce3\",\n\t\"./nb.js\": \"6ce3\",\n\t\"./ne\": \"3a39\",\n\t\"./ne.js\": \"3a39\",\n\t\"./nl\": \"facd\",\n\t\"./nl-be\": \"db29\",\n\t\"./nl-be.js\": \"db29\",\n\t\"./nl.js\": \"facd\",\n\t\"./nn\": \"b84c\",\n\t\"./nn.js\": \"b84c\",\n\t\"./oc-lnc\": \"167b\",\n\t\"./oc-lnc.js\": \"167b\",\n\t\"./pa-in\": \"f3ff\",\n\t\"./pa-in.js\": \"f3ff\",\n\t\"./pl\": \"8d57\",\n\t\"./pl.js\": \"8d57\",\n\t\"./pt\": \"f260\",\n\t\"./pt-br\": \"d2d4\",\n\t\"./pt-br.js\": \"d2d4\",\n\t\"./pt.js\": \"f260\",\n\t\"./ro\": \"972c\",\n\t\"./ro.js\": \"972c\",\n\t\"./ru\": \"957c\",\n\t\"./ru.js\": \"957c\",\n\t\"./sd\": \"6784\",\n\t\"./sd.js\": \"6784\",\n\t\"./se\": \"ffff\",\n\t\"./se.js\": \"ffff\",\n\t\"./si\": \"eda5\",\n\t\"./si.js\": \"eda5\",\n\t\"./sk\": \"7be6\",\n\t\"./sk.js\": \"7be6\",\n\t\"./sl\": \"8155\",\n\t\"./sl.js\": \"8155\",\n\t\"./sq\": \"c8f3\",\n\t\"./sq.js\": \"c8f3\",\n\t\"./sr\": \"cf1e\",\n\t\"./sr-cyrl\": \"13e9\",\n\t\"./sr-cyrl.js\": \"13e9\",\n\t\"./sr.js\": \"cf1e\",\n\t\"./ss\": \"52bd\",\n\t\"./ss.js\": \"52bd\",\n\t\"./sv\": \"5fbd\",\n\t\"./sv.js\": \"5fbd\",\n\t\"./sw\": \"74dc\",\n\t\"./sw.js\": \"74dc\",\n\t\"./ta\": \"3de5\",\n\t\"./ta.js\": \"3de5\",\n\t\"./te\": \"5cbb\",\n\t\"./te.js\": \"5cbb\",\n\t\"./tet\": \"576c\",\n\t\"./tet.js\": \"576c\",\n\t\"./tg\": \"3b1b\",\n\t\"./tg.js\": \"3b1b\",\n\t\"./th\": \"10e8\",\n\t\"./th.js\": \"10e8\",\n\t\"./tk\": \"5aff\",\n\t\"./tk.js\": \"5aff\",\n\t\"./tl-ph\": \"0f38\",\n\t\"./tl-ph.js\": \"0f38\",\n\t\"./tlh\": \"cf75\",\n\t\"./tlh.js\": \"cf75\",\n\t\"./tr\": \"0e81\",\n\t\"./tr.js\": \"0e81\",\n\t\"./tzl\": \"cf51\",\n\t\"./tzl.js\": \"cf51\",\n\t\"./tzm\": \"c109\",\n\t\"./tzm-latn\": \"b53d\",\n\t\"./tzm-latn.js\": \"b53d\",\n\t\"./tzm.js\": \"c109\",\n\t\"./ug-cn\": \"6117\",\n\t\"./ug-cn.js\": \"6117\",\n\t\"./uk\": \"ada2\",\n\t\"./uk.js\": \"ada2\",\n\t\"./ur\": \"5294\",\n\t\"./ur.js\": \"5294\",\n\t\"./uz\": \"2e8c\",\n\t\"./uz-latn\": \"010e\",\n\t\"./uz-latn.js\": \"010e\",\n\t\"./uz.js\": \"2e8c\",\n\t\"./vi\": \"2921\",\n\t\"./vi.js\": \"2921\",\n\t\"./x-pseudo\": \"fd7e\",\n\t\"./x-pseudo.js\": \"fd7e\",\n\t\"./yo\": \"7f33\",\n\t\"./yo.js\": \"7f33\",\n\t\"./zh-cn\": \"5c3a\",\n\t\"./zh-cn.js\": \"5c3a\",\n\t\"./zh-hk\": \"49ab\",\n\t\"./zh-hk.js\": \"49ab\",\n\t\"./zh-mo\": \"3a6c\",\n\t\"./zh-mo.js\": \"3a6c\",\n\t\"./zh-tw\": \"90ea\",\n\t\"./zh-tw.js\": \"90ea\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"4678\";","import { join, end, sendFile } from \"../../helpers/Meet\";\nimport kuid from \"kuid\";\nimport _get from \"lodash/get\";\nimport _omit from \"lodash/omit\";\nimport {\n ConsoleLogger,\n DefaultDeviceController,\n DefaultMeetingSession,\n LogLevel,\n MeetingSessionConfiguration,\n DefaultModality\n} from \"amazon-chime-sdk-js\";\nimport { GTMService as GM } from \"../../helpers/gtm.service\";\n\nlet meetingSession;\nlet meetTiming = 0;\n\nexport default {\n setMeetType({ commit }, status) {\n commit(\"setState\", { key: \"isAgent\", value: !!status });\n },\n async startMeet({ commit, dispatch, rootState }, pay) {\n commit(\"setState\", { key: \"connecting\", value: true });\n let newerror;\n try {\n const title = _get(pay, \"meetId\") || `meet_${kuid()}`;\n const name = _get(pay, \"username\") || `user_${kuid()}`;\n const turn_code = _get(pay, \"turnCode\");\n const client_info = _omit(rootState.client_data, [\n \"token\",\n \"extraFields\"\n ]);\n const results = await join({\n title,\n name,\n turn_code,\n session: rootState.sessionMaster,\n assistant: {\n fullname: name,\n session: rootState.sessionMaster,\n ...client_info,\n version: rootState.version,\n turn_code: _get(rootState.turn, \"code\"),\n turn_id: _get(rootState.turn, \"id\"),\n turn_strings: _get(rootState.turn, \"jsonDetails.turn\"),\n branch_id: _get(rootState.turn, \"branch.id\"),\n branch_name: _get(rootState.turn, \"branch.name\"),\n queue_id: _get(rootState.turn, \"jsonDetails.queue.id\")\n },\n video_public_path: rootState.client_data.extraFields ? rootState.client_data.extraFields[0].Videollamada : null\n });\n dispatch(\n \"log/put\",\n {\n name:\n \"Meeting.actions. Se realizó la solicitud de videollamada con el servidor.\"\n },\n { root: true }\n );\n commit(\"setMeeting\", results.JoinInfo);\n if (results.JoinInfo) dispatch(\"startMeeting\", pay);\n else throw new Error(\"Meeting was rejected\");\n } catch (error) {\n dispatch(\n \"log/put\",\n {\n name:\n \"Meeting.actions. Error restrictivo. No fue posible establecer la videollamada.\",\n checked: false,\n message: error\n },\n { root: true }\n );\n newerror = error;\n }\n commit(\"setState\", { key: \"connecting\", value: false });\n if (newerror) throw newerror;\n },\n\n async endMeet({ commit }) {\n if (!meetingSession) return;\n // console.log(\"ending meet with meeting:\", meetingSession);\n commit(\"setState\", { key: \"connecting\", value: true });\n try {\n meetingSession.audioVideo.realtimeUnsubscribeFromReceiveDataMessage(\n \"chat\"\n );\n meetingSession.audioVideo.stop();\n // FIXME: Require observer to this action https://github.com/aws/amazon-chime-sdk-js#stopping-a-session\n } catch (error) {\n console.error(\"Canceling meet\", error);\n }\n },\n\n async ConfirmedendMeeting({ commit, state }) {\n meetingSession = null;\n try {\n await end({\n title: _get(state.meeting, \"Meeting.Meeting.ExternalMeetingId\"),\n meetingId: _get(state.meeting, \"Meeting.Meeting.MeetingId\")\n });\n commit(\"setMeeting\", null);\n } catch (error) {\n if (window.RB) window.RB.warning(\"Meeting end\", error);\n }\n commit(\"setState\", { key: \"attendees\", value: [] });\n commit(\"setState\", { key: \"videosIds\", value: [] });\n commit(\"setState\", { key: \"connecting\", value: false });\n commit(\"setState\", { key: \"messages\", value: [] });\n commit(\"setState\", { key: \"audioInputDevices\", value: [] });\n commit(\"setState\", { key: \"audioOutputDevices\", value: [] });\n commit(\"setState\", { key: \"videoInputDevices\", value: [] });\n commit(\"setState\", { key: \"videoDevice\", value: null });\n commit(\"setState\", { key: \"speakerDevice\", value: null });\n commit(\"setState\", { key: \"audioDevice\", value: null });\n commit(\"setState\", { key: \"audioEnabled\", value: true });\n commit(\"setState\", { key: \"camEnabled\", value: false });\n commit(\"setState\", { key: \"speakerEnabled\", value: true });\n },\n\n setAtendeeName({ commit }, value) {\n if (typeof value === \"string\") commit(\"setState\", { key: \"myname\", value });\n },\n\n /** chat methods */\n sendMessage({ dispatch, state }, { message, local }) {\n if (!message || !meetingSession) return;\n if (!local)\n meetingSession.audioVideo.realtimeSendDataMessage(\"chat\", message);\n let dataMessage = {\n timestampMs: Date.now(),\n senderAttendeeId: meetingSession.configuration.credentials.attendeeId,\n senderExternalUserId: state.myname,\n text: () => message\n };\n dispatch(\"chatMessageHandler\", dataMessage);\n },\n\n chatMessageHandler({ commit }, dataMessage) {\n if (!meetingSession) return;\n let info = {\n timestamp: Math.floor(dataMessage.timestampMs),\n attendeeName: dataMessage.senderExternalUserId,\n isSelf:\n dataMessage.senderAttendeeId ===\n meetingSession.configuration.credentials.attendeeId,\n text: dataMessage.text()\n };\n commit(\"addMessage\", info);\n },\n\n async sendFile(ctx, payload) {\n const results = await sendFile(payload);\n return results;\n },\n\n /** Methods of control Meet */\n\n toogleAudioEnabled({ state, commit }) {\n if (\n !meetingSession ||\n !Array.isArray(state.audioInputDevices) ||\n !state.audioInputDevices.length\n )\n return;\n commit(\"setState\", { key: \"audioEnabled\", value: !state.audioEnabled });\n if (state.audioEnabled)\n meetingSession.audioVideo.realtimeUnmuteLocalAudio();\n else meetingSession.audioVideo.realtimeMuteLocalAudio();\n },\n\n toogleSpeakerEnabled({ state, commit, dispatch }) {\n if (\n !meetingSession ||\n !Array.isArray(state.audioOutputDevices) ||\n !state.audioOutputDevices.length\n )\n return;\n commit(\"setState\", { key: \"speakerEnabled\", value: !state.speakerEnabled });\n if (state.speakerEnabled) dispatch(\"bindAudio\");\n else meetingSession.audioVideo.unbindAudioElement();\n },\n\n async changeSpeakerDevice({ state, dispatch }, audio) {\n if (\n state.speakerDevice &&\n audio &&\n state.speakerDevice.deviceId &&\n audio.deviceId &&\n state.speakerDevice.deviceId !== audio.deviceId\n ) {\n await dispatch(\"selectSpeakerDevice\", audio);\n }\n },\n\n async changeVideoDevice({ state, dispatch }, video) {\n if (!meetingSession) return;\n if (\n state.videoDevice &&\n video &&\n state.videoDevice.deviceId &&\n video.deviceId &&\n state.videoDevice.deviceId !== video.deviceId\n ) {\n if (state.camEnabled) meetingSession.audioVideo.stopLocalVideoTile();\n await dispatch(\"selectVideoDevice\", video);\n if (state.camEnabled) meetingSession.audioVideo.startLocalVideoTile();\n }\n },\n\n async changeAudioDevice({ state, dispatch }, audio) {\n if (\n state.audioDevice &&\n audio &&\n state.audioDevice.deviceId &&\n audio.deviceId &&\n state.audioDevice.deviceId !== audio.deviceId\n ) {\n await dispatch(\"selectAudioDevice\", audio);\n }\n },\n\n async startCamera({ dispatch, state }) {\n await dispatch(\"checkHabilitiesVideo\");\n await dispatch(\"firstVideo\");\n if (!state.camEnabled) await dispatch(\"toogleCamEnabled\");\n },\n\n async toogleCamEnabled({ commit, state, dispatch }) {\n if (\n !meetingSession ||\n !Array.isArray(state.videoInputDevices) ||\n !state.videoInputDevices.length\n )\n return;\n commit(\"setState\", { key: \"camEnabled\", value: !state.camEnabled });\n if (state.camEnabled) {\n await dispatch(\"selectVideoDevice\", state.videoDevice);\n meetingSession.audioVideo.startLocalVideoTile();\n } else {\n meetingSession.audioVideo.stopLocalVideoTile();\n }\n },\n\n /**\n * Group of first start of meeting. First meet creation\n */\n async startMeeting({ dispatch, state }, pay) {\n GM.event({\n name: \"GTMVideoStartBefore\",\n eventCategory: \"Video_Connection\",\n eventAction: \"Before_Start\"\n });\n meetTiming = Date.now();\n const logger = new ConsoleLogger(\"MyLogger\", LogLevel.INFO);\n const deviceController = new DefaultDeviceController(logger);\n\n // You need responses from server-side Chime API. See below for details.\n const meetingResponse = state.meeting.Meeting.Meeting;\n const attendeeResponse = state.meeting.Attendee.Attendee;\n const configuration = new MeetingSessionConfiguration(\n meetingResponse,\n attendeeResponse\n );\n\n // In the usage examples below, you will use this meetingSession object.\n meetingSession = new DefaultMeetingSession(\n configuration,\n logger,\n deviceController\n );\n return (await dispatch(\"checkHabilities\", pay)) && // TODO: Separate it for best performance?\n (await dispatch(\"selectFirstMedia\")) &&\n (await dispatch(\"observersChangeOfMedia\")) &&\n (await dispatch(\"observersGlobal\")) &&\n (await dispatch(\"attendeesObservable\"))\n ? meetingSession.audioVideo.start()\n : null;\n },\n\n attendeesObservable({ commit, state }) {\n if (!meetingSession) return;\n meetingSession.audioVideo.realtimeSubscribeToAttendeeIdPresence(\n (presentAttendeeId, present) => {\n let index = state.attendees.findIndex(elm => elm === presentAttendeeId);\n if (present) {\n if (index === -1)\n commit(\"setState\", {\n key: \"attendees\",\n value: [...state.attendees, presentAttendeeId]\n });\n } else {\n if (index > -1)\n commit(\"setState\", {\n key: \"attendees\",\n value: state.attendees.filter(elm => elm !== presentAttendeeId)\n });\n }\n if (state.attendees.length > 1)\n GM.event({\n name: \"GTMVideoMeetAssistants\",\n eventCategory: \"Meeting\",\n eventAction: \"Assistants_Arrived\"\n });\n }\n );\n return true;\n },\n\n async checkHabilities({ commit, state, dispatch }) {\n if (!meetingSession) return;\n let audioInputDevices = [];\n try {\n audioInputDevices =\n (await meetingSession.audioVideo.listAudioInputDevices()) || [];\n } catch (error) {\n dispatch(\n \"log/put\",\n {\n name:\n \"Meeting.actions. Error no restrictivo. No se puede conectar el micrófono.\",\n checked: false,\n message: error\n },\n { root: true }\n );\n if (window.RB)\n window.RB.warning(\"Error when obtain Audio input devices\", error);\n }\n commit(\"setState\", { key: \"audioInputDevices\", value: audioInputDevices });\n let audioOutputDevices = [];\n try {\n audioOutputDevices =\n (await meetingSession.audioVideo.listAudioOutputDevices()) || [];\n } catch (error) {\n dispatch(\n \"log/put\",\n {\n name:\n \"Meeting.actions. Error no restrictivo. No se puede conectar el parlante.\",\n checked: false,\n message: error\n },\n { root: true }\n );\n if (window.RB)\n window.RB.warning(\"Error when obtain Audio output devices\", error);\n }\n commit(\"setState\", {\n key: \"audioOutputDevices\",\n value: audioOutputDevices\n });\n if (state.isAgent) await dispatch(\"checkHabilitiesVideo\");\n return true;\n },\n\n async selectFirstMedia({ state, dispatch }) {\n if (!meetingSession) return;\n if (state.isAgent) {\n await dispatch(\"firstVideo\");\n if (!state.camEnabled) await dispatch(\"toogleCamEnabled\");\n }\n if (state.audioInputDevices && state.audioInputDevices.length)\n await dispatch(\"selectAudioDevice\", state.audioInputDevices[0]);\n if (state.audioOutputDevices && state.audioOutputDevices.length)\n await dispatch(\"selectSpeakerDevice\", state.audioOutputDevices[0]);\n return true;\n },\n\n async checkHabilitiesVideo({ commit, dispatch }) {\n meetingSession.audioVideo.chooseVideoInputQuality(320, 180, 15, 150); // Specific modification with Marcelo\n let videoInputDevices = [];\n try {\n videoInputDevices =\n (await meetingSession.audioVideo.listVideoInputDevices()) || [];\n } catch (error) {\n dispatch(\n \"log/put\",\n {\n name:\n \"Meeting.actions. Error no restrictivo. No se puede conectar la cámara.\",\n checked: false,\n message: error\n },\n { root: true }\n );\n if (window.RB)\n window.RB.warning(\"Error when obtain Video devices\", error);\n }\n commit(\"setState\", { key: \"videoInputDevices\", value: videoInputDevices });\n },\n\n async firstVideo({ state, dispatch }) {\n if (state.videoInputDevices && state.videoInputDevices.length) {\n const result = await dispatch(\n \"selectVideoDevice\",\n state.videoInputDevices[0]\n );\n if (result) meetingSession.audioVideo.startLocalVideoTile();\n }\n },\n\n async selectVideoDevice({ commit, dispatch }, video) {\n if (!video || !video.deviceId || !meetingSession) return false;\n commit(\"setState\", { key: \"videoDevice\", value: video });\n try {\n await meetingSession.audioVideo.chooseVideoInputDevice(video.deviceId);\n return true;\n } catch (error) {\n dispatch(\n \"log/put\",\n {\n name:\n \"Meeting.actions. Error no restrictivo. No se puede seleccionar una cámara.\",\n checked: false,\n message: error\n },\n { root: true }\n );\n if (window.RB)\n window.RB.warning(\"Error in selection of video source\", error);\n }\n return false;\n },\n\n async selectSpeakerDevice({ commit, dispatch }, audio) {\n if (!audio || !audio.deviceId || !meetingSession) return false;\n commit(\"setState\", { key: \"speakerDevice\", value: audio });\n try {\n await meetingSession.audioVideo.chooseAudioOutputDevice(audio.deviceId);\n return true;\n } catch (error) {\n dispatch(\n \"log/put\",\n {\n name:\n \"Meeting.actions. Error no restrictivo. No se puede seleccionar un parlante.\",\n checked: false,\n message: error\n },\n { root: true }\n );\n if (window.RB)\n window.RB.warning(\"Error in selection of audio output source\", error);\n }\n return false;\n },\n\n async selectAudioDevice({ commit }, audio) {\n if (!audio || !audio.deviceId || !meetingSession) return false;\n commit(\"setState\", { key: \"audioDevice\", value: audio });\n try {\n await meetingSession.audioVideo.chooseAudioInputDevice(audio.deviceId);\n return true;\n } catch (error) {\n if (window.RB)\n window.RB.warning(\"Error in selection of audio input source\", error);\n }\n return false;\n },\n\n healthChange({ commit, state }, { bitrateKbps, packetsPerSecond }) {\n if (bitrateKbps && bitrateKbps !== state.bitrateKbps)\n commit(\"setState\", { key: \"bitrateKbps\", value: bitrateKbps });\n if (packetsPerSecond && packetsPerSecond !== state.packetsPerSecond)\n commit(\"setState\", { key: \"packetsPerSecond\", value: packetsPerSecond });\n },\n\n bandwidthChange({ commit, state }, { nackCountPerSecond }) {\n if (nackCountPerSecond && nackCountPerSecond !== state.nackCountPerSecond)\n commit(\"setState\", {\n key: \"nackCountPerSecond\",\n value: nackCountPerSecond\n });\n },\n\n videoStopSuggestion({ commit, state, dispatch }, status) {\n if (!state.videoStopSuggestion && status && state.camEnabled) {\n commit(\"setState\", {\n key: \"stopSuggestionFromActiveCamera\",\n value: true\n });\n // dispatch(\"toogleCamEnabled\");\n }\n if (\n state.videoStopSuggestion &&\n !status &&\n state.stopSuggestionFromActiveCamera\n ) {\n // dispatch(\"toogleCamEnabled\");\n }\n commit(\"setState\", { key: \"videoStopSuggestion\", value: status });\n dispatch(\"commonNotification\", \"VideostopSuggestion change detected\");\n },\n\n commonNotification({ state }, message) {\n try {\n if (window.RB)\n window.RB.info(message, {\n bitrateKbps: state.bitrateKbps,\n connectionIsGood: state.connectionIsGood,\n estimatedBandwidth: state.estimatedBandwidth,\n requiredBandwidth: state.requiredBandwidth,\n videoStopSuggestion: state.videoStopSuggestion\n });\n } catch (error) {\n console.error(\"Rollbar not exist\", error);\n }\n },\n\n connectionStatus({ commit, dispatch }, status) {\n commit(\"setState\", { key: \"connectionIsGood\", value: status });\n dispatch(\"commonNotification\", \"Change health of connection\");\n },\n\n bandwidthRequirements(\n { commit, state },\n { estimatedBandwidth, requiredBandwidth }\n ) {\n if (estimatedBandwidth && estimatedBandwidth !== state.estimatedBandwidth)\n commit(\"setState\", {\n key: \"estimatedBandwidth\",\n value: estimatedBandwidth\n });\n if (requiredBandwidth && requiredBandwidth !== state.requiredBandwidth)\n commit(\"setState\", {\n key: \"requiredBandwidth\",\n value: requiredBandwidth\n });\n },\n\n async observersChangeOfMedia() {\n if (!meetingSession) return;\n const observer = {\n audioInputsChanged: freshAudioInputDeviceList => {\n // An array of MediaDeviceInfo objects\n // TODO: What happend when change devices? It could not to be tested\n if (window.RB)\n window.RB.info(\"Audio inputs updated\", {\n list: JSON.stringify(freshAudioInputDeviceList)\n });\n freshAudioInputDeviceList.forEach(mediaDeviceInfo => {\n console.log(\n `Device ID: ${mediaDeviceInfo.deviceId} Microphone: ${mediaDeviceInfo.label}`\n );\n });\n },\n audioOutputsChanged: freshAudioOutputDeviceList => {\n if (window.RB)\n window.RB.info(\"Audio outputs updated\", {\n list: JSON.stringify(freshAudioOutputDeviceList)\n });\n },\n videoInputsChanged: freshVideoInputDeviceList => {\n if (window.RB)\n window.RB.info(\"Video inputs updated\", {\n list: JSON.stringify(freshVideoInputDeviceList)\n });\n }\n };\n\n meetingSession.audioVideo.addDeviceChangeObserver(observer);\n return true;\n },\n\n async observersGlobal({ dispatch, state, commit }) {\n if (!meetingSession) return;\n meetingSession.audioVideo.addObserver({\n connectionDidSuggestStopVideo: () =>\n dispatch(\"videoStopSuggestion\", true),\n connectionDidBecomeGood: () => {\n dispatch(\"connectionStatus\", true);\n dispatch(\"videoStopSuggestion\", false);\n },\n estimatedDownlinkBandwidthLessThanRequired: (\n estimatedBandwidth,\n requiredBandwidth\n ) =>\n dispatch(\"bandwidthRequirements\", {\n estimatedBandwidth,\n requiredBandwidth\n }),\n connectionDidBecomePoor: () => dispatch(\"connectionStatus\", false),\n videoSendHealthDidChange: (bitrateKbps, packetsPerSecond) =>\n dispatch(\"healthChange\", { bitrateKbps, packetsPerSecond }),\n videoSendBandwidthDidChange: (\n newBandwidthKbps,\n oldBandwidthKbps,\n nackCountPerSecond\n ) =>\n dispatch(\"bandwidthChange\", {\n newBandwidthKbps,\n oldBandwidthKbps,\n nackCountPerSecond\n }),\n audioVideoDidStart: () => {\n GM.event({\n name: \"GTMVideoStartOk\",\n eventCategory: \"Video_Connection\",\n eventAction: \"Started\"\n });\n GM.event({\n name: \"GTMVideoStartTimeOk\",\n eventCategory: \"Video_Connection\",\n eventAction: \"Started\",\n eventValue: Date.now() - meetTiming\n });\n dispatch(\"bindAudio\");\n if (!state.isAgent) commit(\"toogleCamModal\");\n else meetingSession.audioVideo.startLocalVideoTile();\n },\n // audioVideoDidStop: () => dispatch(\"ConfirmedendMeeting\"),\n videoTileDidUpdate: tileState => {\n // User updates\n if (!tileState.tileId) return;\n\n if (meetingSession) {\n // Ignore a tile without attendee ID and videos.\n const yourAttendeeId =\n meetingSession.configuration.credentials.attendeeId;\n\n // tileState.boundAttendeeId is formatted as \"attendee-id#content\".\n const boundAttendeeId = tileState.boundAttendeeId;\n\n if (tileState.isContent) {\n // Get the attendee ID from \"attendee-id#content\".\n const baseAttendeeId = new DefaultModality(boundAttendeeId).base();\n if (baseAttendeeId === yourAttendeeId) {\n tileState.isMineContent = true;\n }\n }\n const index = state.videosIds.findIndex(\n vid => vid.tileId === tileState.tileId\n );\n if (index > -1)\n commit(\"setState\", {\n key: \"videosIds\",\n value: state.videosIds.map((vid, i) => {\n if (i === index) return tileState;\n return vid;\n })\n });\n else {\n commit(\"setState\", {\n key: \"videosIds\",\n value: [...state.videosIds, tileState]\n });\n setTimeout(() => {\n // Add video tag correspondence\n const videoElement = document.getElementById(\n `videouser_${tileState.tileId}`\n );\n if (!meetingSession) return;\n if (!videoElement)\n throw new Error(\n \"Not exist video element!. Brilliant seek this problem.\" +\n JSON.stringify(tileState) +\n JSON.stringify(state.videosIds)\n );\n else\n meetingSession.audioVideo.bindVideoElement(\n tileState.tileId,\n videoElement\n );\n }, 500);\n }\n }\n },\n videoTileWasRemoved: tileId => {\n const videoIndex = state.videosIds.findIndex(\n elm => elm.tileId === tileId\n );\n if (videoIndex > -1)\n commit(\"setState\", {\n key: \"videosIds\",\n value: state.videosIds.filter((vid, i) => i !== videoIndex)\n });\n }\n });\n /**Chat observer */\n meetingSession.audioVideo.realtimeSubscribeToReceiveDataMessage(\n \"chat\",\n dataMessage => dispatch(\"chatMessageHandler\", dataMessage)\n );\n return true;\n },\n\n async toogleSharingEnabled({ commit, state }) {\n if (!meetingSession) return;\n commit(\"setState\", { key: \"sharingEnabled\", value: !state.sharingEnabled });\n if (state.sharingEnabled) {\n await meetingSession.audioVideo.startContentShareFromScreenCapture();\n } else {\n await meetingSession.audioVideo.stopContentShare();\n }\n },\n\n async bindAudio({ state }) {\n if (!meetingSession) return;\n meetingSession.audioVideo.bindAudioElement(\n document.getElementById(state.audioId)\n );\n }\n\n /**End of group of basic meeting */\n};\n","/* eslint-disable no-unused-vars */\nimport axios from \"axios\";\nimport rand from \"randomstring\";\nimport {\n encryptAES,\n decryptAES,\n encryptAESWorker,\n signRSA\n} from \"./encryption\";\nimport { getEnvOnly } from \"./Meet\";\n\nlet publicKey;\nlet LlaveAES;\nlet Token;\nconst rsa = new window.System.Security.Cryptography.RSACryptoServiceProvider(\n 4096\n);\n\nfunction getLlavePublica() {\n const server = getEnvOnly()?.VUE_APP_HUELLA_SERVER;\n if (publicKey) return publicKey;\n return axios\n .get(`${server}/REST/LlavePublica`)\n .then(data => data.data)\n .then(pub => {\n publicKey = pub;\n return pub;\n });\n}\n\nasync function autorizar({ TipoIdentificacion, NumeroIdentificacion }) {\n const server = getEnvOnly()?.VUE_APP_HUELLA_SERVER;\n const keyString = rand.generate(32);\n const { data } = await axios.post(\n `${server}/REST/Autorizar`,\n await signRSA(await getLlavePublica(), {\n TipoIdentificacion,\n NumeroIdentificacion,\n LlaveAES: keyString\n })\n );\n Token = data.token;\n LlaveAES = await decryptAES(keyString, data.iv, data.llaveAES);\n}\n\nasync function colmedicaDecode(encoded) {\n let ivString = encoded.substr(0, 16);\n let encodedString = encoded.substr(16);\n const decoded = await decryptAES(LlaveAES, ivString, encodedString);\n return decoded;\n}\n\nasync function consultarCliente({ TipoIdentificacion, NumeroIdentificacion }) {\n // LF Tested OK\n const ivString = rand.generate(16);\n const encoded = await encryptAES(\n LlaveAES,\n ivString,\n JSON.stringify({\n TipoIdentificacion,\n NumeroIdentificacion\n })\n );\n const server = getEnvOnly()?.VUE_APP_HUELLA_SERVER;\n return axios\n .post(\n `${server}/REST/ConsultarCliente`,\n {\n Data: encoded,\n Iv: ivString\n },\n {\n headers: {\n Authorization: `Bearer ${Token}`\n }\n }\n )\n .then(data => {\n console.log(data)\n return data.data\n } )\n .then(enc => colmedicaDecode(enc))\n .then(enc => {\n console.log(enc)\n console.log(JSON.parse(enc))\n return JSON.parse(enc)\n } );\n}\n\nasync function tiposAutorizacion() {\n // LF Tested OK\n const server = getEnvOnly()?.VUE_APP_HUELLA_SERVER;\n return axios\n .get(`${server}/REST/TiposAutorizacion`, {\n headers: {\n Authorization: `Bearer ${Token}`\n }\n })\n .then(data => data.data)\n .then(enc => colmedicaDecode(enc))\n .then(enc => JSON.parse(enc));\n}\n\nasync function guardarSolicitud({ ParametroSolicitudCanal, ArchivoSolicitud }) {\n // LF Tested OK\n const ivString = rand.generate(16);\n let dataToSend = JSON.stringify({\n ParametroSolicitudCanal,\n ArchivoSolicitud\n });\n const encoded = await encryptAESWorker(LlaveAES, ivString, dataToSend);\n const server = getEnvOnly()?.VUE_APP_HUELLA_SERVER;\n return axios\n .post(\n `${server}/REST/GuardarSolicitud`,\n {\n Data: encoded,\n Iv: ivString\n },\n {\n headers: {\n Authorization: `Bearer ${Token}`\n }\n }\n )\n .then(data => data.data)\n .then(enc => colmedicaDecode(enc))\n .then(enc => JSON.parse(enc));\n}\n\nasync function anexarDocumentosSolicitud({ IdSolicitud, ArchivoSolicitud }) {\n const encoded = encryptAES({ IdSolicitud, ArchivoSolicitud });\n const server = getEnvOnly()?.VUE_APP_HUELLA_SERVER;\n return axios\n .post(`${server}/REST/AnexarDocumentosSolicitud`, encoded, {\n headers: {\n Token\n }\n })\n .then(data => data.data); // Continue here. How to decode received?\n}\n\nexport {\n autorizar,\n consultarCliente,\n tiposAutorizacion,\n guardarSolicitud,\n anexarDocumentosSolicitud\n};\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('main',[_c('transition',{attrs:{\"name\":\"fade\",\"mode\":\"out-in\"}},[_c('router-view')],1),_c('ModalLogs'),_vm._m(0)],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"dialogdk\",attrs:{\"id\":\"dialogdk\"}},[_c('section',{attrs:{\"id\":\"dialogdkbox\"}})])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"ModalLogs\"},[_c('b-modal',{staticClass:\"modal-content-dk\",attrs:{\"hide-footer\":\"\",\"no-close-on-backdrop\":\"\",\"centered\":\"\"},scopedSlots:_vm._u([{key:\"modal-header\",fn:function(ref){\nvar close = ref.close;\nreturn [_c('h4',[_vm._v(\"Registro de eventos\")]),_c('div',{staticClass:\"DropDown__Header__title\"},[_c('i',{staticClass:\"fas fa-times\",staticStyle:{\"cursor\":\"pointer\"},on:{\"click\":function($event){return _vm.showModal(false)}}})])]}}]),model:{value:(_vm.show),callback:function ($$v) {_vm.show=$$v},expression:\"show\"}},[_c('div',{staticClass:\"container\"},_vm._l((_vm.logListMap),function(log,index){return _c('div',{key:index,staticClass:\"DropDown\"},[_c('div',{staticClass:\"DropDown__Header\",on:{\"click\":function () { return _vm.toggleDropDown(index); }}},[_c('div',{staticClass:\"DropDown__Header__title\"},[_c('i',{class:log.checked ? 'fas fa-check CHECK' : 'fas fa-times TIMES'}),_c('h6',[_vm._v(_vm._s(log.name))])]),_c('div',{staticClass:\"DropDown__Header__icon\"},[_c('i',{ref:'iconItem__' + index,refInFor:true,staticClass:\"fas fa-sort-down icon\"})])]),_c('div',{ref:'logItem__' + index,refInFor:true,staticClass:\"DropDown__Body\",staticStyle:{\"display\":\"none\"}},[_c('p',[_vm._v(_vm._s(log.message))])])])}),0),_c('hr'),_c('div',{staticClass:\"container\"},[_c('div',{staticClass:\"DropDown\"},[_c('div',{staticClass:\"DropDown__Header\",on:{\"click\":function () { return _vm.toggleDropDownMore(); }}},[_c('div',{staticClass:\"DropDown__Header__title\"},[_c('h6',[_vm._v(\"Datos Vídeo Llamada\")])]),_c('div',{staticClass:\"DropDown__Header__icon\"},[_c('i',{ref:\"iconItem__more\",staticClass:\"fas fa-sort-down icon\"})])]),_c('div',{ref:\"logItem__more\",staticClass:\"DropDown__Body\",staticStyle:{\"display\":\"none\"}},[_c('p',[_c('b',[_vm._v(\"meeting: \")]),_c('pre',[_vm._v(_vm._s(_vm.meeting))])]),_c('p',[_c('b',[_vm._v(\"connecting: \")]),_vm._v(_vm._s(_vm.connecting))]),_c('p',[_c('b',[_vm._v(\"audioId: \")]),_vm._v(_vm._s(_vm.audioId))]),_c('p',[_c('b',[_vm._v(\"audioInputDevices: \")]),_c('pre',[_vm._v(_vm._s(_vm.audioInputDevices))])]),_c('p',[_c('b',[_vm._v(\"audioOutputDevices: \")]),_c('pre',[_vm._v(_vm._s(_vm.audioOutputDevices))])]),_c('p',[_c('b',[_vm._v(\"videoInputDevices: \")]),_c('pre',[_vm._v(_vm._s(_vm.videoInputDevices))])]),_c('p',[_c('b',[_vm._v(\"attendees: \")]),_vm._v(_vm._s(_vm.attendees))]),_c('p',[_c('b',[_vm._v(\"videosIds: \")]),_c('pre',[_vm._v(_vm._s(_vm.videosIds))])]),_c('p',[_c('b',[_vm._v(\"myname: \")]),_vm._v(_vm._s(_vm.myname))]),_c('p',[_c('b',[_vm._v(\"videoDevice: \")]),_c('pre',[_vm._v(_vm._s(JSON.stringify(_vm.videoDevice)))])]),_c('p',[_c('b',[_vm._v(\"speakerDevice: \")]),_c('pre',[_vm._v(_vm._s(JSON.stringify(_vm.speakerDevice)))])]),_c('p',[_c('b',[_vm._v(\"audioDevice: \")]),_c('pre',[_vm._v(_vm._s(JSON.stringify(_vm.audioDevice)))])]),_c('p',[_c('b',[_vm._v(\"audioEnabled: \")]),_vm._v(_vm._s(_vm.audioEnabled))]),_c('p',[_c('b',[_vm._v(\"camEnabled: \")]),_vm._v(_vm._s(_vm.camEnabled))]),_c('p',[_c('b',[_vm._v(\"speakerEnabled: \")]),_vm._v(_vm._s(_vm.speakerEnabled))]),_c('p',[_c('b',[_vm._v(\"bitrateKbps: \")]),_vm._v(_vm._s(_vm.bitrateKbps))]),_c('p',[_c('b',[_vm._v(\"stopSuggestionFromActiveCamera: \")]),_vm._v(_vm._s(_vm.stopSuggestionFromActiveCamera))]),_c('p',[_c('b',[_vm._v(\"packetsPerSecond: \")]),_vm._v(_vm._s(_vm.packetsPerSecond))]),_c('p',[_c('b',[_vm._v(\"nackCountPerSecond: \")]),_vm._v(_vm._s(_vm.nackCountPerSecond))]),_c('p',[_c('b',[_vm._v(\"videoStopSuggestion: \")]),_vm._v(_vm._s(_vm.videoStopSuggestion))]),_c('p',[_c('b',[_vm._v(\"connectionIsGood: \")]),_vm._v(_vm._s(_vm.connectionIsGood))]),_c('p',[_c('b',[_vm._v(\"estimatedBandwidth: \")]),_vm._v(_vm._s(_vm.estimatedBandwidth))]),_c('p',[_c('b',[_vm._v(\"requiredBandwidth: \")]),_vm._v(_vm._s(_vm.requiredBandwidth))]),_c('p',[_c('b',[_vm._v(\"m_allow_video: \")]),_vm._v(_vm._s(_vm.m_allow_video))]),_c('p',[_c('b',[_vm._v(\"sharingEnabled: \")]),_vm._v(_vm._s(_vm.sharingEnabled))]),_c('p',[_c('b',[_vm._v(\"meetingSession: \")]),_vm._v(_vm._s(_vm.meetingSession))]),_c('p',[_c('b',[_vm._v(\"isAgent: \")]),_vm._v(_vm._s(_vm.isAgent))])])])])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n .ModalLogs\n b-modal(\n hide-footer\n no-close-on-backdrop\n centered\n class=\"modal-content-dk\"\n v-model=\"show\")\n template(#modal-header=\"{ close }\")\n h4 Registro de eventos\n .DropDown__Header__title\n i.fas.fa-times(style=\"cursor: pointer\" @click=\"showModal(false)\")\n .container\n .DropDown(v-for=\"(log, index) in logListMap\" :key=\"index\")\n .DropDown__Header(@click=\"() => toggleDropDown(index)\")\n .DropDown__Header__title\n i(:class=\"log.checked ? 'fas fa-check CHECK' : 'fas fa-times TIMES'\")\n h6 {{ log.name }}\n .DropDown__Header__icon\n i.fas.fa-sort-down(:ref=\"'iconItem__' + index\").icon\n .DropDown__Body(:ref=\"'logItem__' + index\" style=\"display: none\")\n p {{ log.message }}\n hr\n .container\n .DropDown\n .DropDown__Header(@click=\"() => toggleDropDownMore()\")\n .DropDown__Header__title\n //- i(:class=\"$refs.logItem__more.checked ? 'fas fa-check CHECK' : 'fas fa-times TIMES'\")\n h6 Datos Vídeo Llamada\n .DropDown__Header__icon\n i.fas.fa-sort-down(ref=\"iconItem__more\").icon\n .DropDown__Body(ref=\"logItem__more\" style=\"display: none\")\n p \n b meeting: \n pre {{meeting}}\n p \n b connecting: \n | {{connecting}}\n p \n b audioId: \n | {{audioId}}\n p \n b audioInputDevices: \n pre {{audioInputDevices}}\n p \n b audioOutputDevices: \n pre {{audioOutputDevices}}\n p \n b videoInputDevices: \n pre {{videoInputDevices}}\n p \n b attendees: \n | {{attendees}}\n p \n b videosIds: \n pre {{videosIds}}\n p \n b myname: \n | {{myname}}\n p \n b videoDevice: \n pre {{JSON.stringify(videoDevice) }}\n p \n b speakerDevice: \n pre {{JSON.stringify(speakerDevice) }}\n p \n b audioDevice: \n pre {{JSON.stringify(audioDevice) }}\n p \n b audioEnabled: \n | {{audioEnabled}}\n p \n b camEnabled: \n | {{camEnabled}}\n p \n b speakerEnabled: \n | {{speakerEnabled}}\n p \n b bitrateKbps: \n | {{bitrateKbps}}\n p \n b stopSuggestionFromActiveCamera: \n | {{stopSuggestionFromActiveCamera}}\n p \n b packetsPerSecond: \n | {{packetsPerSecond}}\n p \n b nackCountPerSecond: \n | {{nackCountPerSecond}}\n p \n b videoStopSuggestion: \n | {{videoStopSuggestion}}\n p \n b connectionIsGood: \n | {{connectionIsGood}}\n p \n b estimatedBandwidth: \n | {{estimatedBandwidth}}\n p \n b requiredBandwidth: \n | {{requiredBandwidth}}\n p \n b m_allow_video: \n | {{m_allow_video}}\n p \n b sharingEnabled: \n | {{sharingEnabled}}\n p \n b meetingSession: \n | {{meetingSession}}\n p \n b isAgent: \n | {{isAgent}}\n\n\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalLogs.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalLogs.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ModalLogs.vue?vue&type=template&id=457bb529&scoped=true&lang=pug&\"\nimport script from \"./ModalLogs.vue?vue&type=script&lang=js&\"\nexport * from \"./ModalLogs.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ModalLogs.vue?vue&type=style&index=0&id=457bb529&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"457bb529\",\n null\n \n)\n\nexport default component.exports","\n main\n transition(name=\"fade\" mode=\"out-in\")\n router-view\n ModalLogs\n #dialogdk.dialogdk\n section#dialogdkbox\n\n\n\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--11-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--11-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=dac465b0&lang=pug&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import LS from \"../helpers/localStorage\";\nimport _get from \"lodash/get\";\n\nexport default {\n setPosition(state, pay) {\n state.position = pay;\n },\n setStarted: (state, pay) => (state.started = pay),\n setCoorelation: (state, pay) => (state.turnCoorelation = pay),\n setEnvironments: (state, pay) => {\n state.env = pay;\n if (pay.VUE_APP_ENV) state.environment = pay.VUE_APP_ENV;\n },\n setState: (state, pay) => {\n Object.prototype.hasOwnProperty.call(state, _get(pay, \"key\", \"NA\"))\n ? (() => {\n let key = _get(pay, \"key\", \"NA\"),\n value = _get(pay, \"value\", null);\n state[key] = value;\n if (key && key !== \"NA\") {\n if (value) LS.setItem(key, value);\n else LS.removeItem(key);\n }\n })()\n : null;\n }\n};\n","/* eslint-disable no-debugger */\nimport {\n getCompany,\n getEnqueueTurn,\n getTurnInfo,\n cancelTurn,\n getEnvironments,\n getEnvOnly\n} from \"../helpers/Meet\";\nimport axios from \"axios\";\nimport kuid from \"kuid\";\nimport _get from \"lodash/get\";\nimport LS from \"../helpers/localStorage\";\nimport { getCorrelation } from \"./../helpers/Meet\";\nimport { b64_to_utf8, try_json } from \"@/utils/decoder\";\nimport { GTMService as GM } from \"../helpers/gtm.service\";\nimport moment from \"moment\";\n\nexport default {\n setViewState({ commit }, value) {\n commit(\"setState\", { key: \"pageForeground\", value });\n GM.event({\n name: value ? \"GTMUserInPage\" : \"GTMUserOutPage\",\n eventCategory: \"Page_Vision\",\n eventAction: value ? \"Enter\" : \"Leave\"\n });\n },\n async startup({ commit, state, dispatch }, pay = {}) {\n if (state.started) return;\n commit(\"setEnvironments\", await getEnvironments());\n let { session, forced } = pay;\n let sessionCode = session || kuid();\n if (!GM.checkSession() || forced)\n GM.setFirstElementDatalayer({\n session_id: sessionCode,\n version: state.version,\n user_type: LS.getItem(\"user_type\") || \"client\",\n user_uuid: window.person.id\n });\n else GM.replaceSession(sessionCode);\n commit(\"setState\", { key: \"sessionMaster\", value: sessionCode });\n commit(\"setStarted\", true);\n dispatch(\"setLocalization\");\n },\n async setLocalization({ commit }) {\n if (getEnvOnly().VUE_APP_GET_LOCATION !== \"true\") return;\n let position;\n try {\n if (\"geolocation\" in navigator) {\n position = await new Promise(res =>\n navigator.geolocation.getCurrentPosition(res)\n );\n commit(\"setPosition\", {\n lat: _get(position, \"coords.latitude\"),\n long: _get(position, \"coords.longitude\")\n });\n GM.setVariable({\n customLocationGPS: `${_get(position, \"coords.latitude\")},${_get(\n position,\n \"coords.longitude\"\n )}`\n });\n }\n } catch (error) {\n console.error(\"Position error\", error);\n }\n },\n getCompany({ commit }, companyName) {\n return getCompany(companyName).then(response => {\n commit(\"setState\", { key: \"company\", value: response });\n return response;\n });\n },\n setTramite({ commit }, value) {\n commit(\"setState\", { key: \"tramite_info\", value });\n },\n setTurnUUID({ commit }) {\n commit(\"setState\", {\n key: \"turnUUID\",\n value: kuid()\n });\n },\n getTurn({ commit, dispatch, state }) {\n if (!state.tramite_info) {\n return Promise.reject(new Error(\"Invalid Tramite\"));\n }\n let { queueId, branchId, params } = state.tramite_info;\n if (state.turn) return dispatch(\"getTurnInfo\", _get(state.turn, \"code\"));\n let promise =\n getEnvOnly()?.VUE_APP_DEBQ_DIRECT == \"true\"\n ? axios.post(`/queue/${queueId}/branch/${branchId}/enqueue`, params)\n : getEnqueueTurn(queueId, branchId, params);\n return promise\n .then(response =>\n getEnvOnly()?.VUE_APP_DEBQ_DIRECT == \"true\" ? response.data : response\n )\n .then(response => {\n commit(\"setState\", {\n key: \"time_received_turn\",\n value: moment.utc().unix()\n });\n response.status = \"WAITING_TO_BE_CALLED\";\n commit(\"setState\", { key: \"turn\", value: response });\n return response;\n })\n .then(turnInfo => {\n dispatch(\"getTurnInfo\", _get(turnInfo, \"code\"));\n if(params.extraFields){\n turnInfo.extraFields = params.extraFields[0].Videollamada || {};\n }\n return turnInfo;\n })\n .catch(err => {\n commit(\"setState\", { key: \"catch_all\", value: err });\n throw new Error(err);\n });\n },\n async getTurnRequest(__, code) {\n return (await axios.get(`/turn/code/${code}`)).data;\n },\n // eslint-disable-next-line no-unused-vars\n async getTurnInfo({ commit, state, dispatch }, code) {\n let codeToSend = code || _get(state.turn, \"code\");\n if (codeToSend) {\n let response = _get(state.turn, \"code\")\n ? JSON.parse(JSON.stringify(state.turn))\n : null;\n try {\n let prevResponse = response;\n response =\n getEnvOnly()?.VUE_APP_DEBQ_DIRECT == \"true\"\n ? await dispatch(\"getTurnRequest\", codeToSend) // FIXME: esto fallará si lo envío con getEnvOnly.VUE_APP_DEBQ_DIRECT y quiero verificar el turno\n : await getTurnInfo(codeToSend);\n commit(\"setState\", {\n key: \"error_turn_request_counter\",\n value: 0\n });\n if (_get(response, \"code\") && _get(response, \"jsonDetails\")) {\n commit(\"setState\", { key: \"turn\", value: response });\n } else {\n let errorResp = JSON.stringify(JSON.parse(response));\n console.error(\"Corrupted response\", errorResp);\n window.RB.error(\"Corrupted response in getTurnInfo\", errorResp);\n response = prevResponse;\n }\n } catch (error) {\n console.error(\"Error in query from DebMedia\", error);\n commit(\"setState\", { key: \"catch_all\", value: error });\n commit(\"setState\", {\n key: \"error_turn_request_counter\",\n value: state.error_turn_request_counter + 1\n });\n if (state.error_turn_request_counter % 5 === 0)\n window.RB.error(\"Many request has failed in getTurnInfo\", error);\n }\n clearTimeout(state.turn_timer);\n commit(\"setState\", { key: \"turn_timer\", value: null });\n let timer = setTimeout(() => dispatch(\"getTurnInfo\", codeToSend), 2000);\n commit(\"setState\", { key: \"turn_timer\", value: timer });\n return response;\n } else {\n console.error(\"Polling is forced to stop. Invalid Turn Code.\");\n window.RB.error(\n \"Polling is forced to stop. Invalid Turn Code.\",\n JSON.stringify({ code, turn: _get(state.turn, \"code\") })\n );\n dispatch(\"cancelTurn\");\n return;\n }\n },\n\n getTurnCoorelation({ commit }, code) {\n if (!code) return Promise.reject(new Error(\"Invalid Coorelation Code\"));\n return getCorrelation(code).then(coorData => {\n commit(\"setCoorelation\", coorData);\n return coorData;\n });\n },\n\n cleanTurn({ commit, state }) {\n clearTimeout(state.turn_timer);\n commit(\"setState\", { key: \"error_turn_request_counter\", value: 0 });\n commit(\"setState\", { key: \"time_received_turn\", value: null });\n commit(\"setState\", { key: \"sessionMaster\", value: null });\n commit(\"setState\", { key: \"turn_timer\", value: null });\n commit(\"setState\", { key: \"tramite_info\", value: null });\n commit(\"setState\", { key: \"client_data\", value: {} });\n commit(\"setState\", { key: \"turn\", value: null });\n commit(\"setState\", { key: \"turnUUID\", value: null });\n commit(\"setState\", { key: \"eclient_data\", value: null });\n commit(\"setState\", { key: \"dclient_data\", value: null });\n LS.removeItem(\"sessionMaster\");\n LS.removeItem(\"rawB64\");\n LS.removeItem(\"marcacion\");\n LS.removeItem(\"token_col\");\n LS.removeItem(\"sucursal\");\n LS.removeItem(\"tramite\");\n LS.removeItem(\"fuente\");\n },\n\n setSessionMaster({ commit }, value) {\n commit(\"setState\", { key: \"sessionMaster\", value });\n },\n\n cancelTurn({ dispatch, state }, options) {\n let currentTurn = JSON.parse(JSON.stringify(state.turn));\n let code = _get(currentTurn, \"code\");\n dispatch(\"cleanTurn\");\n if (!code) return Promise.resolve({ message: \"Turn was canceled before\" });\n if (\n (options && options.local) ||\n (currentTurn &&\n (currentTurn.status === \"REVOKED\" ||\n currentTurn.status === \"FINALIZED\" ||\n currentTurn.status === \"CANCELED_BY_USER\"))\n )\n return Promise.resolve({});\n let promise =\n getEnvOnly()?.VUE_APP_DEBQ_DIRECT == \"true\"\n ? axios.post(`/turn/${code}/cancel`).then(response => response.data)\n : cancelTurn(code);\n return promise.catch(err => console.error(\"Error in cancel turn\", err));\n },\n\n async verify_client_data({ dispatch }) {\n let data = LS.getItem(\"data_b64\") || null;\n if (data) await dispatch(\"load_client_data\", data);\n },\n async load_client_data({ dispatch }, enclient) {\n try {\n let json_value = try_json(b64_to_utf8(enclient));\n if (_get(json_value, \"client.sm\"))\n await dispatch(\"startup\", {\n session: _get(json_value, \"client.sm\"),\n forced: true\n });\n dispatch(\"feclient_data\", enclient);\n dispatch(\"fdclient_data\", json_value);\n } catch (error) {\n console.error(\"Error in load_client_data\", error);\n }\n },\n // function encrypted client data\n feclient_data({ commit }, dt) {\n commit(\"setState\", { key: \"eclient_data\", value: dt });\n },\n // function decrypted client data\n fdclient_data({ commit }, dt) {\n commit(\"setState\", { key: \"dclient_data\", value: dt });\n },\n // Set info of branch\n setBranchInfo({ commit }, value) {\n commit(\"setState\", { key: \"branchInfo\", value });\n },\n setTimer({ commit, state }) {\n if (state.generalTimeout !== null) clearTimeout(state.generalTimeout);\n let timeout = setTimeout(\n () =>\n commit(\"setState\", { key: \"eventTime\", value: state.eventTime + 1 }),\n 16000\n // 90000000\n );\n commit(\"setState\", { key: \"removeTimeout\", value: false });\n commit(\"setState\", { key: \"generalTimeout\", value: timeout });\n },\n removeTimer({ commit, state }) {\n clearTimeout(state.generalTimeout);\n commit(\"setState\", { key: \"removeTimeout\", value: true });\n },\n restart({ commit }, value) {\n commit(\"setState\", { key: \"restart\", value });\n }\n};\n","export default {};\n","import LS from \"../helpers/localStorage\";\nimport kuid from \"kuid\";\n\nexport default {\n env: JSON.parse(JSON.stringify(process.env)),\n pageForeground: true,\n environment: process.env.VUE_APP_ENV || \"develop\",\n version: process.env.PACKAGE_VERSION || \"0\",\n sessionMaster: LS.getItem(\"sessionMaster\") || kuid(),\n started: false,\n company: LS.getItem(\"company\") || null,\n client_data: LS.getItem(\"client_data\") || {},\n tramite_info: LS.getItem(\"tramite_info\") || null,\n turn: LS.getItem(\"turn\") || null,\n turnUUID: LS.getItem(\"turnUUID\") || null,\n turn_timer: null,\n catch_error: null,\n max_waiting_time: 20,\n time_received_turn: LS.getItem(\"time_received_turn\") || null,\n error_turn_request_counter: 0,\n branchInfo: LS.getItem(\"branchInfo\") || null,\n\n // b64 encrypted and decrypted customer data\n eclient_data: null,\n dclient_data: LS.getItem(\"dclient_data\"),\n position: {},\n eventTime: 0,\n timer: 15,\n generalTimeout: null,\n removeTimeout: false,\n restart: false,\n turnCoorelation: null\n};\n","/* eslint-disable no-prototype-builtins */\nimport LS from \"./../../helpers/localStorage\";\n\nexport default {\n setState: (state, pay) =>\n pay &&\n typeof pay === \"object\" &&\n !Array.isArray(pay) &&\n pay.hasOwnProperty(\"key\") &&\n pay.hasOwnProperty(\"value\") &&\n state.hasOwnProperty(pay.key)\n ? (state[pay.key] = pay.value)\n : null,\n\n setMeeting(state, pay) {\n LS.setItem(\"meeting\", pay);\n state.meeting = pay;\n },\n\n addMessage: (state, message) => {\n if (Array.isArray(state.messages) && state.messages.length)\n state.messages = [...state.messages, message];\n else state.messages = [message];\n },\n\n toogleCamModal(state) {\n state.m_allow_video = !state.m_allow_video;\n }\n};\n","export default {};\n","import LS from \"./../../helpers/localStorage\";\nimport kuid from \"kuid\";\n\nexport default {\n meeting: LS.getItem(\"meeting\"),\n connecting: false,\n audioId: `audio_${kuid()}`,\n audioInputDevices: [],\n audioOutputDevices: [],\n videoInputDevices: [],\n attendees: [],\n videosIds: [],\n myname: \"\",\n // current devices\n videoDevice: null,\n speakerDevice: null,\n audioDevice: null,\n // tootles\n audioEnabled: true,\n camEnabled: false,\n speakerEnabled: true,\n\n // Status info\n bitrateKbps: 0,\n stopSuggestionFromActiveCamera: false,\n packetsPerSecond: 0,\n nackCountPerSecond: 0,\n videoStopSuggestion: false,\n connectionIsGood: true,\n estimatedBandwidth: 0,\n requiredBandwidth: 0,\n\n m_allow_video: false,\n\n sharingEnabled: false,\n meetingSession: null,\n messages: [],\n isAgent: false\n};\n","import mutations from \"./mutations\";\nimport actions from \"./actions\";\nimport getters from \"./getters\";\nimport state from \"./states\";\n\nexport default {\n namespaced: true,\n state,\n mutations,\n actions,\n getters\n};\n","/* eslint-disable no-prototype-builtins */\nexport default {\n setState: (state, pay) =>\n pay &&\n typeof pay === \"object\" &&\n !Array.isArray(pay) &&\n pay.hasOwnProperty(\"key\") &&\n pay.hasOwnProperty(\"value\") &&\n state.hasOwnProperty(pay.key)\n ? (state[pay.key] = pay.value)\n : null\n};\n","import axios from \"axios\";\nimport _get from \"lodash/get\";\nimport { getEnvOnly } from \"./Meet\";\n\nclass Recorder {\n checkRecorder() {\n if (!_get(getEnvOnly(), \"VUE_APP_RECORDER\")) return;\n let routeOfCheck = `${getEnvOnly().VUE_APP_RECORDER}/status_call`;\n return axios\n .get(routeOfCheck)\n .then(res => res.data)\n .catch(err => console.error(\"Invalid recorder request Status_call\", err)); // TODO: LF... when recorders will be installed, remove catch\n }\n setTurn(turn_code) {\n if (!_get(getEnvOnly(), \"VUE_APP_RECORDER\")) return;\n let routeOfCheck = `${getEnvOnly().VUE_APP_RECORDER}/load_call`;\n return axios\n .post(routeOfCheck, { turn_id: turn_code, client_data: {} })\n .then(res => res.data)\n .catch(err => console.error(\"Invalid recorder request Load Call\", err)); // TODO: LF... when recorders will be installed, remove catch\n }\n}\n\nexport let recorder = new Recorder();\n","import { recorder } from \"../../helpers/recorder\";\n\nexport default {\n startCheck({ commit, state }) {\n if (state.timer !== null) return;\n let timer = setInterval(async () => {\n let status = await recorder.checkRecorder();\n commit(\"setState\", { key: \"status\", value: status });\n }, 2000);\n commit(\"setState\", { key: \"timer\", value: timer });\n },\n\n sendTurn(ctx, turn_id) {\n return recorder.setTurn(turn_id);\n },\n\n stopCheck({ commit, state }) {\n if (state.timer === null) return;\n clearInterval(state.timer);\n commit(\"setState\", { key: \"timer\", value: null });\n commit(\"setState\", { key: \"status\", value: null });\n }\n};\n","export default {};\n","export default {\n status: null,\n timer: null\n};\n","import mutations from \"./mutations\";\nimport actions from \"./actions\";\nimport getters from \"./getters\";\nimport state from \"./states\";\n\nexport default {\n namespaced: true,\n state,\n mutations,\n actions,\n getters\n};\n","/* eslint-disable */\nimport _get from \"lodash/get\";\n\nexport default {\n setState: (state, pay) => {\n state.hasOwnProperty(_get(pay, \"key\", \"NA\"))\n ? (state[_get(pay, \"key\", \"NA\")] = _get(pay, \"value\", null))\n : null;\n }\n};\n","const rsa = new window.System.Security.Cryptography.RSACryptoServiceProvider(\n 4096\n);\n\nasync function configureRSA(key) {\n rsa.FromXmlString(key);\n const processedKey = rsa.ExportParameters(false);\n rsa.ImportParameters(processedKey);\n return rsa;\n}\n\nasync function encryptPublicRSA(key, data) {\n const rsa = await configureRSA(key);\n const bytes = window.System.Text.Encoding.UTF8.GetBytes(data);\n const doOaepPadding = false;\n var encryptedBytes = rsa.Encrypt(bytes, doOaepPadding);\n return window.System.Convert.ToBase64String(encryptedBytes);\n}\n\n// eslint-disable-next-line no-unused-vars\nasync function signRSA(key, data) {\n const Data = await encryptPublicRSA(key, JSON.stringify(data));\n return { Data };\n}\n\nasync function aesKey(keyAscii, ivAscii) {\n const encoder = new TextEncoder(\"ascii\");\n const keyBytes = encoder.encode(keyAscii);\n const iv = encoder.encode(ivAscii);\n const key = await window.crypto.subtle.importKey(\n \"raw\",\n keyBytes,\n {\n name: \"AES-CBC\"\n },\n false,\n [\"encrypt\", \"decrypt\"]\n );\n return { key, iv };\n}\n\nasync function encryptAES(keyAscii, ivAscii, data) {\n const { key, iv } = await aesKey(keyAscii, ivAscii);\n const utf8 = new TextEncoder(\"utf8\");\n const encrypted = await window.crypto.subtle.encrypt(\n {\n name: \"AES-CBC\",\n iv\n },\n key,\n utf8.encode(data)\n );\n const buff = new Uint8Array(encrypted);\n const str = String.fromCharCode.apply(null, buff);\n const result = btoa(str);\n return result;\n}\n\nasync function decryptAES(keyAscii, ivAscii, encrypted) {\n const utf8 = new TextDecoder(\"utf8\");\n const { key, iv } = await aesKey(keyAscii, ivAscii);\n const ascii = atob(encrypted);\n const asciiBytes = new Uint8Array(ascii.split(\"\").map(c => c.charCodeAt(0)));\n const decrypted = await window.crypto.subtle.decrypt(\n {\n name: \"AES-CBC\",\n iv\n },\n key,\n asciiBytes\n );\n const buff = new Uint8Array(decrypted);\n const decoded = utf8.decode(buff);\n return decoded;\n}\n\nfunction encryptAESWorker(keyAscii, ivAscii, data) {\n return new Promise((res, rej) => {\n const aesWk = new Worker(\"./aeswk.js\");\n aesWk.onmessage = res;\n aesWk.onerror = rej;\n aesWk.postMessage({ type: \"encrypt\", keyAscii, ivAscii, data });\n }).then(data => data.data);\n}\n\nfunction decryptAESWorker(keyAscii, ivAscii, data) {\n return new Promise((res, rej) => {\n const aesWk = new Worker(\"./aeswk.js\");\n aesWk.onmessage = res;\n aesWk.onerror = rej;\n aesWk.postMessage({ type: \"decrypt\", keyAscii, ivAscii, data });\n }).then(data => data.data);\n}\n\nexport { signRSA, encryptAES, decryptAES, encryptAESWorker, decryptAESWorker };\n","import { getToken, getEnvOnly } from \"../../helpers/Meet\";\nimport {\n autorizar,\n consultarCliente,\n guardarSolicitud\n} from \"../../helpers/colmedica_huella\";\nimport _get from \"lodash/get\";\n\nexport default {\n goToView({ commit }, value) {\n commit(\"setState\", { key: \"view\", value });\n },\n setService({ commit }, value) {\n commit(\"setState\", { key: \"service\", value });\n },\n setExplanation({ commit }, value) {\n commit(\"setState\", { key: \"explanation\", value });\n },\n selecteService({ commit }, value) {\n commit(\"setState\", { key: \"servicioSelected\", value });\n },\n captchaValidation({ dispatch, commit, state }) {\n if (window.grecaptcha && window.grecaptcha.ready) {\n return new Promise((res, rej) => {\n window.grecaptcha.ready(() => {\n window.grecaptcha\n .execute(getEnvOnly().VUE_APP_RECAPTCHA_CODE, {\n action: \"submit_identification\"\n })\n .then(token =>\n getToken(token, \"g_recaptcha_v3\", {\n bunitId: getEnvOnly().VUE_APP_BUNIT\n })\n )\n .then(() => res())\n .catch(err => {\n commit(\"setState\", {\n key: \"validationErrors\",\n value: [...state.validationErrors, err]\n });\n dispatch(\"errorValidationTemporizer\");\n console.error(\"error in recaptcha request.\");\n rej(err);\n });\n });\n // throw new Error('aska');\n })\n .then(() => true)\n .catch(error => {\n console.error(error);\n dispatch(\"goToView\", \"ErrorAutenticateVal\");\n });\n }\n return Promise.reject(new Error(\"Recaptcha is not ready\"));\n },\n demoValidation({ commit, dispatch }) {\n commit(\"setState\", { key: \"charging\", value: true });\n return dispatch(\"captchaValidation\")\n .then(\n () =>\n new Promise(res => {\n setTimeout(res, 2000);\n // throw new Error(\"Blña\");\n })\n )\n .then(() => {\n commit(\"setState\", {\n key: \"client\",\n value: {\n Celular: \"3002356201\",\n Correo: \"pperez@test.com\",\n Nombres: \"PEPITO\",\n PrimerApellido: \"PEREZ\",\n Resultado: 1,\n SegundoApellido: \"DEMO\"\n }\n });\n dispatch(\"goToView\", \"VerificationData\");\n commit(\"setState\", { key: \"charging\", value: false });\n })\n .catch(err => {\n commit(\"setState\", { key: \"charging\", value: false });\n console.error(\"Error cached in Autenticate.vue -> demoValidation\", err);\n dispatch(\"goToView\", \"ErrorAutenticateVal\");\n });\n },\n async authAndQueryColmedica({ commit, dispatch }, pay) {\n commit(\"setState\", { key: \"charging\", value: true });\n try {\n const data = await dispatch(\"captchaValidation\");\n dispatch(\n \"log/put\",\n {\n name: \"Autoservice.actions. El captcha se validó bien.\"\n },\n { root: true }\n );\n if (data) {\n await dispatch(\"autorizacionColmedica\", pay);\n dispatch(\n \"log/put\",\n {\n name:\n \"Autoservice.actions. La verificación del usuario fue correcta.\"\n },\n { root: true }\n );\n dispatch(\"consultaClienteColmedica\", pay);\n dispatch(\"goToView\", \"VerificationData\");\n commit(\"setState\", { key: \"charging\", value: false });\n }\n } catch (error) {\n dispatch(\n \"log/put\",\n {\n name: \"Autoservice.actions. Falló la autenticación del usuario.\",\n checked: false,\n message: error\n },\n { root: true }\n );\n console.error(\"ERROR\", error);\n return;\n }\n },\n autorizacionColmedica({ commit, dispatch, state }, pay) {\n return autorizar({\n TipoIdentificacion: pay.ti,\n NumeroIdentificacion: pay.nu\n }).catch(err => {\n commit(\"setState\", {\n key: \"validationErrors\",\n value: [...state.validationErrors, err]\n });\n dispatch(\"errorValidationTemporizer\");\n console.error(\"error in autorizacion colmedica.\");\n commit(\"setState\", { key: \"charging\", value: false });\n console.error(\n \"Error cached in Autenticate.vue -> authAndQueryColmedica\",\n err\n );\n dispatch(\"goToView\", \"ErrorAutenticate\");\n throw err;\n });\n },\n consultaClienteColmedica({ commit, dispatch, state }, pay) {\n return consultarCliente({\n TipoIdentificacion: pay.ti,\n NumeroIdentificacion: pay.nu\n })\n .then(client => commit(\"setState\", { key: \"client\", value: client }))\n .catch(err => {\n commit(\"setState\", {\n key: \"validationErrors\",\n value: [...state.validationErrors, err]\n });\n dispatch(\"errorValidationTemporizer\");\n console.error(\"error in autorizacion colmedica.\");\n throw err;\n });\n },\n guardarSolicitudDemo({ commit }) {\n return new Promise(res => setTimeout(res, 2000))\n .then(() => \"123456789\")\n .then(value => {\n commit(\"setState\", {\n key: \"colmedicaRequest\",\n value\n });\n return value;\n });\n },\n guardarSolicitudColmedica({ state, commit }) {\n let toSend = {\n ParametroSolicitudCanal: {\n CanalIngreso: 6,\n DescripcionCanal: \"Descripcion Canal\",\n\n Identificacion: `${_get(state.b64final, \"ti\") || \"\"}${_get(\n state.b64final,\n \"nu\"\n ) || \"\"}`,\n\n NombreUsuario: `${_get(state.client, \"Nombres\") || \"\"} ${_get(\n state.client,\n \"PrimerApellido\"\n ) || \"\"} ${_get(state.client, \"SegundoApellido\") || \"\"}`.trim(),\n\n CorreoElectronico: _get(state.client, \"Correo\") || \"\",\n TelefonoCelular: _get(state.client, \"Celular\") || \"\",\n TipoAutorizacionId: _get(state.servicioSelected, \"code\")\n },\n ArchivoSolicitud: state.files.map(file => ({\n Archivo: _get(file, \"info.b64\"),\n NombreArchivo: _get(file, \"info.name\")\n }))\n };\n return guardarSolicitud(toSend).then(data => {\n let value = _get(data, \"RespuestaSolicitud.IdSolicitud\");\n commit(\"setState\", {\n key: \"colmedicaRequest\",\n value\n });\n return value;\n });\n },\n errorValidationTemporizer({ commit, state }) {\n if (state.errorValidationTemporizer !== null)\n clearTimeout(state.errorValidationTemporizer);\n if (!state.validationErrors.length) return;\n let timer = setTimeout(() => {\n commit(\"setState\", { key: \"validationErrors\", value: [] });\n commit(\"setState\", { key: \"errorValidationTemporizer\", value: null });\n }, 5000);\n commit(\"setState\", { key: \"errorValidationTemporizer\", value: timer });\n },\n\n updateB64Final({ commit, state }, value) {\n let currentState = state.b64final;\n commit(\"setState\", {\n key: \"b64final\",\n value: Object.assign({}, currentState, value)\n });\n },\n\n // functions documents\n clearDocs({ commit }) {\n commit(\"setState\", { key: \"files\", value: [] });\n },\n removeFile({ state, commit }, keyIndex) {\n let currentFiles = state.files;\n currentFiles.splice(keyIndex, 1);\n commit(\"setState\", { key: \"files\", value: currentFiles });\n },\n addFile({ state, commit }, file) {\n let currentFiles = state.files;\n currentFiles.push(file);\n commit(\"setState\", { key: \"files\", value: currentFiles });\n },\n setHorarioOutContinue({ commit }, value) {\n commit(\"setState\", { key: \"HorarioOutContinue\", value });\n }\n};\n","import axios from \"axios\";\nimport moment from \"moment\";\nimport rand from \"randomstring\";\nimport { encryptAES, decryptAES, signRSA } from \"./encryption\";\nimport { getEnvOnly } from \"./Meet\";\nimport { Logtail } from \"@logtail/browser\";\nimport { StopWatch } from 'stopwatch-node';\n\n\n\nlet publicKey;\nlet LlaveAES;\nlet Token;\nconst logtail = new Logtail(\"3egdE3x8gsYKyaWig9b7WaDq\");\nconst MaxTimeout = 30000;\n\nfunction getLlavePublica(Timeout) {\n const server = getEnvOnly()?.VUE_APP_HUELLA_FV_SERVER;\n if (publicKey) return publicKey;\n \n const sw = new StopWatch('sw');\n sw.start('sw');\n return axios\n .get(`${server}/login/llavepublica`, Timeout ? { timeout: MaxTimeout } : {})\n .then(data => data.data)\n .then(pub => {\n publicKey = pub;\n sw.stop();\n logtail.info(\"request colmedica\", {\n url: `${server}/login/llavepublica`,\n method: \"GET\",\n time: sw.getTask(\"sw\")?.timeMills\n });\n return pub;\n });\n}\n\nasync function colmedicaDecode(encoded) {\n let ivString = encoded.substr(0, 16);\n let encodedString = encoded.substr(16);\n const decoded = await decryptAES(LlaveAES, ivString, encodedString);\n return decoded;\n}\n\nasync function autorizar({\n // LF Tested OK 21-01-20\n TipoIdentificacion,\n NumeroIdentificacion,\n CodigoOficina,\n Timeout = false\n}) {\n const keyString = rand.generate(32);\n const enc = await signRSA(await getLlavePublica(Timeout), {\n TipoIdentificacion,\n NumeroIdentificacion,\n CodigoOficina,\n Key: keyString\n });\n const server = getEnvOnly()?.VUE_APP_HUELLA_FV_SERVER;\n\n const sw = new StopWatch('sw');\n sw.start('sw');\n console.log(\"jas timeout:\", Timeout ? { timeout: MaxTimeout } : {})\n const { data } = await axios.post(`${server}/login/autorizar`, { mensaje: enc.Data }, Timeout ? { timeout: MaxTimeout } : {});\n sw.stop();\n logtail.info(\"request colmedica\", {\n url: `${server}/login/autorizar`,\n method: \"POST\",\n time: sw.getTask(\"sw\")?.timeMills\n });\n\n LlaveAES = keyString;\n\n let results = await colmedicaDecode(data);\n\n console.log(\"****Colmedica Decode***\")\n console.log(results)\n \n results = JSON.parse(results);\n\n console.log(\"****JSON.parse - Colmedica Decode***\")\n console.log(results)\n\n if (results.Resultado === 1) {\n Token = results.Token;\n LlaveAES = results.LlaveAes;\n } else {\n console.error(\"Invalid site auth\", results);\n throw new Error(\"Invalid Authorization in Huella FV\");\n }\n}\n\nasync function enOficina(_timeout = false) {\n \n const sw = new StopWatch('sw');\n sw.start('sw');\n const server = getEnvOnly()?.VUE_APP_HUELLA_FV_SERVER;\n return axios\n .post(`${server}/cliente/oficina`, undefined, {\n headers: {\n Authorization: `Bearer ${Token}`\n }\n },\n _timeout ? { timeout: MaxTimeout } : {})\n .then(data => {\n sw.stop();\n logtail.info(\"request colmedica\", {\n url: `${server}/cliente/oficina`,\n method: \"GET\",\n time: sw.getTask(\"sw\")?.timeMills\n });\n return data.data\n })\n .then(enc => colmedicaDecode(enc))\n .then(enc => JSON.parse(enc));\n}\n\nasync function enCentroMedico(_timeout = false) {\n // LF Tested 21-01-21\n\n const sw = new StopWatch('sw');\n sw.start('sw');\n\n const server = getEnvOnly()?.VUE_APP_HUELLA_FV_SERVER;\n return axios\n .post(`${server}/cliente/centromedico`, undefined, {\n headers: {\n Authorization: `Bearer ${Token}`\n }\n },\n _timeout ? { timeout: MaxTimeout } : {})\n .then(data => { \n sw.stop();\n logtail.info(\"request colmedica\", {\n url: `${server}/cliente/centromedico`,\n method: \"GET\",\n time: sw.getTask(\"sw\")?.timeMills\n });\n return data.data\n })\n .then(enc => colmedicaDecode(enc))\n .then(enc => JSON.parse(enc));\n}\n\nasync function citas(_timeout = false) {\n\n const sw = new StopWatch('sw');\n sw.start('sw');\n\n const server = getEnvOnly()?.VUE_APP_HUELLA_FV_SERVER;\n return axios\n .post(`${server}/cliente/citas`, undefined, {\n headers: {\n Authorization: `Bearer ${Token}`\n }\n },\n _timeout ? { timeout: MaxTimeout } : {})\n .then(data => { \n sw.stop();\n logtail.info(\"request colmedica\", {\n url: `${server}/cliente/citas`,\n method: \"POST\",\n time: sw.getTask(\"sw\")?.timeMills\n });\n return data.data\n })\n .then(enc => colmedicaDecode(enc))\n .then(enc => JSON.parse(enc))\n .then(citas =>\n citas.map(cita => ({\n ...cita,\n idCita: cita.IdCita,\n Fecha: moment(cita.Fecha).format(\"YYYY-MM-DD h:mm a\")\n }))\n );\n}\n\nasync function validarPago({ idCita }) {\n const server = getEnvOnly()?.VUE_APP_HUELLA_FV_SERVER;\n const ivString = rand.generate(16);\n const encoded = await encryptAES(\n LlaveAES,\n ivString,\n JSON.stringify({\n idCita\n })\n );\n\n const sw = new StopWatch('sw');\n sw.start('sw');\n return axios\n .post(\n `${server}/cliente/validarpagocita`,\n {\n mensaje: encoded,\n iv: ivString\n },\n {\n headers: {\n Authorization: `Bearer ${Token}`\n }\n }\n )\n .then(data => { \n sw.stop();\n logtail.info(\"request colmedica\", {\n url: `${server}/cliente/validarpagocita`,\n method: \"POST\",\n time: sw.getTask(\"sw\")?.timeMills\n });\n return data.data\n })\n .then(enc => colmedicaDecode(enc))\n .then(enc => JSON.parse(enc));\n}\n\nexport { autorizar, enCentroMedico, enOficina, citas, validarPago };\n","export default {};\n","import { getEnvOnly } from \"../../helpers/Meet\";\n\nexport default {\n view: \"TurnChecker\",\n HorarioOutContinue: false,\n // autenticacion\n charging: false,\n servicioSelected: null,\n validationErrors: [],\n client: null,\n service: \"\",\n errorValidationTemporizer: null,\n explanation: true,\n servicesAvailable: [\n {\n label: \"Exámenes diagnósticos\",\n code_name: \"examenes_diagnosticos\",\n code: 1\n },\n {\n label: \"Procedimientos quirúrgicos\",\n code_name: \"procedimientos_quirurgicos\",\n code: 2\n },\n {\n label: \"Otros servicios\",\n code_name: \"otros_servicios\",\n code: 3\n }\n ],\n tipide: [\n // { value: null, text: \"Seleccione una opción\" },\n { value: \"CC\", text: \"Cédula de Ciudadanía\" },\n { value: \"TI\", text: \"Tarjeta Identidad\" },\n { value: \"RC\", text: \"Registro Civil\" },\n { value: \"CE\", text: \"Cédula de Extranjería\" },\n { value: \"NU\", text: \"Número Único de Identificación\" },\n { value: \"PA\", text: \"Pasaporte\" },\n { value: \"AS\", text: \"Adulto Sin Identificación\" },\n { value: \"CD\", text: \"Carné Diplomático\" },\n { value: \"CN\", text: \"Certificado de Nacido Vivo\" },\n { value: \"CO\", text: \"Código\" },\n { value: \"IN\", text: \"N.I.T. NATURAL\" },\n { value: \"MS\", text: \"Menor Sin Identificación\" },\n { value: \"NI\", text: \"N.I.T.\" },\n { value: \"PD\", text: \"Pasaporte Diplomático\" },\n { value: \"PE\", text: \"Permanencia Especial\" },\n { value: \"RM\", text: \"Registro Médico\" },\n { value: \"TE\", text: \"Tarjeta de Extranjería\" }\n ],\n\n // documents\n files: [],\n colmedicaRequest: null,\n\n // B64 - enviado a bsix\n b64final: {\n ti: \"\",\n nu: \"\",\n ma: \"\",\n na: \"\",\n ap: \"\",\n tr: getEnvOnly().VUE_APP_DEBMEDIA_DEFAULT_TRAMITE,\n so: \"\",\n fu: \"ad\",\n em: \"\",\n ce: \"\",\n to: \"\",\n su: getEnvOnly().VUE_APP_DEBMEDIA_DEFAULT_BRANCH\n }\n};\n","import mutations from \"./mutations\";\nimport actions from \"./actions\";\nimport getters from \"./getters\";\nimport state from \"./states\";\n\nexport default {\n namespaced: true,\n state,\n mutations,\n actions,\n getters\n};\n","/* eslint-disable */\nimport _get from \"lodash/get\";\n\nexport default {\n setState: (state, pay) => {\n state.hasOwnProperty(_get(pay, \"key\", \"NA\"))\n ? (state[_get(pay, \"key\", \"NA\")] = _get(pay, \"value\", null))\n : null;\n }\n};\n","export default [\n {\n TipoIdentificacion: \"CC\",\n NumeroIdentificacion: \"456\",\n Nombres: \"Pepe Peperoni\",\n Prioritario: false,\n ConCita: false,\n Tipo: \"P\",\n PrioridadMarcaValor: 1\n },\n {\n TipoIdentificacion: \"CC\",\n NumeroIdentificacion: \"789\",\n Nombres: \"Natasha Cox\",\n Prioritario: true,\n ConCita: true,\n Tipo: \"C\",\n PrioridadMarcaValor: 1\n }\n];\n","export default [\n {\n TipoIdentificacion: \"CC\",\n NumeroIdentificacion: \"456\",\n Nombres: \"Pepe Peperoni\",\n Prioritario: false,\n ConCita: false,\n PrioridadMarcaValor: 1\n },\n {\n TipoIdentificacion: \"CC\",\n NumeroIdentificacion: \"789\",\n Nombres: \"Natasha Cox\",\n Prioritario: true,\n ConCita: false,\n PrioridadMarcaValor: 1\n }\n];\n","export default [\n {\n NombreCentroMedico: \"CMC DEMo\",\n Especialidad: \"Odontología\",\n Fecha: \"2024-01-04 12:15 am\",\n idCita: 123456,\n EnCentroMedico: true\n },\n {\n NombreCentroMedico: \"CMC DEMo\",\n Especialidad: \"Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum\",\n Fecha: \"2021-01-15 2:00 pm\",\n idCita: 23423,\n EnCentroMedico: true\n },\n {\n NombreCentroMedico: \"CMC BOCAGRANDE\",\n Especialidad: \"Odontología\",\n Fecha: \"2021-01-16 10:00 am\",\n idCita: 123458,\n EnCentroMedico: true\n },\n {\n NombreCentroMedico: \"CMC BOCAGRANDE\",\n Especialidad: \"Odontología\",\n Fecha: \"2021-01-17 10:00 am\",\n idCita: 123459,\n EnCentroMedico: false\n },\n {\n NombreCentroMedico: \"CMC BOCAGRANDE\",\n Especialidad: \"Odontología\",\n Fecha: \"2021-01-18 10:00 am\",\n idCita: 123460,\n EnCentroMedico: false\n }\n];\n","export default {\n bad: [\n ],\n good: [\n ]\n};\n","/* eslint-disable no-unused-vars */\nimport {\n getToken,\n getQueues,\n getStyles,\n getEnvOnly,\n getMenus,\n sendRecords,\n tracking,\n} from \"../../helpers/Meet\";\nimport {\n autorizar,\n citas,\n enCentroMedico,\n enOficina,\n validarPago\n} from \"../../helpers/colmedica_fila_virtual\";\nimport _get from \"lodash/get\";\nimport LS from \"../../helpers/localStorage\";\n\n/**\n * Data for demo porpouses\n */\nimport CentroDemo from \"./CentroDemo\";\nimport OficinaDemo from \"./OficinaDemo\";\nimport CitasDemo from \"./CitasDemo\";\nimport ValPagoDemo from \"./ValidarpagocitaDemo\";\n\nexport default {\n changeAuth({ commit }, value) {\n commit(\"setState\", { key: \"showAuth\", value });\n },\n\n setCustomArea({ commit }, value) {\n commit(\"setState\", { key: \"customArea\", value });\n },\n\n setUserActionDate({ commit },value){\n commit(\"setState\", { key: \"userActionDate\", value });\n },\n\n async getSites({ commit }) {\n const sites = await getQueues();\n if (sites && sites.length)\n commit(\"setState\", { key: \"sites\", value: sites });\n },\n\n async getStyles({ commit }) {\n try {\n const styles = await getStyles();\n commit(\"setState\", {\n key: \"primaryColorBlue\",\n value: styles?.bsix_client?.companyColor\n });\n commit(\"setState\", {\n key: \"secondColorBlue\",\n value: styles?.bsix_client?.secondaryCompanyColor\n });\n commit(\"setState\", {\n key: \"threeColorBlueColor\",\n value: styles?.bsix_client?.contrastTextColor\n });\n } catch (error) {\n console.error(\"Cant get Styles\", error);\n }\n },\n\n async getMenus({ commit }, { code, area }) {\n const { menu, actions, customMenu } = await getMenus(code);\n commit(\"setState\", { key: \"menu\", value: customMenu[area] || menu });\n commit(\"setState\", { key: \"actions\", value: actions });\n },\n\n goToView({ commit, state, dispatch }, { view }) {\n if (state.isAtril) {\n dispatch(\"setTimer\", true, { root: true, state: { ...state, timer: 98 } });\n }\n commit(\"setState\", { key: \"view\", value: view });\n let newArray = JSON.parse(JSON.stringify(state.history));\n newArray.push(view);\n commit(\"setState\", { key: \"history\", value: newArray });\n },\n\n setExplanation({ commit }, value) {\n commit(\"setState\", { key: \"explanation\", value });\n },\n\n selecteService({ commit }, value) {\n commit(\"setState\", { key: \"servicioSelected\", value });\n },\n\n goBack({ commit, state }) {\n let newArray = JSON.parse(JSON.stringify(state.history));\n newArray.pop();\n commit(\"setState\", { key: \"history\", value: newArray });\n commit(\"setState\", {\n key: \"view\",\n value: state.history[state.history.length - 1]\n });\n },\n\n async setCitaCM({ commit, dispatch, state }, value) {\n // Lf Tested 21-01-21\n commit(\"setState\", { key: \"charging\", value: true });\n commit(\"setState\", { key: \"citaActual\", value });\n commit(\"setState\", { key: \"currentValidation\", value: [] });\n console.log(\"value\")\n console.log(value)\n try {\n const validation = (await dispatch(\"getCitaValidation\", value)).sort(\n (a, b) => a.Orden - b.Orden\n );\n console.log('validation')\n console.log(validation)\n commit(\"setState\", { key: \"currentValidation\", value: validation });\n if (validation.length) {\n if (validation[0]?.IdPaso > -1) {\n dispatch(\"goToView\", { view: \"Pay\" });\n commit(\"setState\", { key: \"charging\", value: false });\n return;\n } else if (validation[0]?.IdPaso === -1) {\n // commit(\"setState\", { key: \"priority\", value: true });\n commit(\"setState\", {\n key: \"selectedAccion\",\n value:\n state.menu[0] && state.menu[0].children // TODO: Only 2 levels. If require multilevel, fix it with a recursive function\n ? state.menu[0].children[0]\n : state.menu[0]\n });\n commit(\"setState\", { key: \"charging\", value: false });\n return dispatch(\"turnCall\", false);\n }\n }\n } catch (error) {\n console.error(\"In setCitaCM action\", error);\n }\n commit(\"setState\", {\n key: \"selectedAccion\",\n value:\n state.menu[0] && state.menu[0].children // TODO: Only 2 levels. If require multilevel, fix it with a recursive function\n ? state.menu[0].children[0]\n : state.menu[0]\n });\n commit(\"setState\", { key: \"charging\", value: false });\n return dispatch(\"turnCall\", false);\n },\n\n setAction({ commit, dispatch }, value) {\n commit(\"setState\", { key: \"selectedAccion\", value });\n if (value?.evaluationComponent)\n return dispatch(\"goToView\", { view: value.evaluationComponent });\n if (value?.ignorePriority) dispatch(\"goToView\", { view: \"Turn\" });\n else dispatch(\"goToView\", { view: \"Normativity\" });\n },\n\n confirmedAction({ state, commit, dispatch }) {\n // / state.selectedaction tiene ignorePriority?\n if (state.selectedAccion?.ignorePriority)\n dispatch(\"goToView\", { view: \"Turn\" });\n else dispatch(\"goToView\", { view: \"Normativity\" });\n },\n\n turnCall({ commit, dispatch }, value) {\n commit(\"setState\", { key: \"priority\", value });\n dispatch(\"goToView\", { view: \"Turn\" });\n },\n\n async getCitaValidation(ctx, { idCita }) {\n let toReturn = [];\n if (getEnvOnly().VUE_APP_DEMO_MODE === \"true\") {\n if (idCita === 23423) return ValPagoDemo.good;\n else return ValPagoDemo.bad;\n } else {\n try {\n toReturn = await validarPago({ idCita });\n } catch (error) {\n console.error(\"In getCitaValidation\", error);\n }\n }\n return toReturn;\n },\n\n captchaValidation({ dispatch, commit, state }) {\n if (window.grecaptcha && window.grecaptcha.ready) {\n return new Promise((res, rej) => {\n window.grecaptcha.ready(() => {\n window.grecaptcha\n .execute(getEnvOnly().VUE_APP_RECAPTCHA_CODE, {\n action: \"submit_identification\"\n })\n .then(token =>\n getToken(token, \"g_recaptcha_v3\", {\n bunitId: getEnvOnly().VUE_APP_BUNIT\n })\n )\n .then(() => res())\n .catch(err => {\n commit(\"setState\", {\n key: \"validationErrors\",\n value: [...state.validationErrors, err]\n });\n dispatch(\"errorValidationTemporizer\");\n console.error(\"error in recaptcha request.\");\n rej(err);\n });\n }); //\n // throw new Error('X ERROR');\n }).catch(err => {\n commit(\"setState\", { key: \"charging\", value: false });\n console.error(\"Error cached in Autenticate.vue -> demoValidation\", err);\n dispatch(\"goToView\", { view: \"ErrorAutenticate\" });\n });\n }\n return Promise.reject(new Error(\"Recaptcha is not ready\"));\n },\n\n async authenticate({ dispatch, commit, state }, toSend) {\n commit(\"setState\", { key: \"charging\", value: true });\n commit(\"setState\", { key: \"error\", value: null });\n let nextComponent = {\n view: \"ErrorAutenticate\"\n };\n try {\n if (!state.isAtril) await dispatch(\"captchaValidation\");\n try {\n await dispatch(\n getEnvOnly().VUE_APP_DEMO_MODE === \"true\"\n ? \"demoValidation\"\n : \"authAndQuery\",\n toSend\n );\n \n if(state.currentUser.Tipo == \"P\") {\n nextComponent.view = \"HelpActive\";\n } else {\n if(state.citas && state.citas.length) {\n nextComponent.view = \"Quote\";\n } else {\n nextComponent.view = \"NoDate\";\n }\n }\n } catch (error) {\n let message_error = error.message;\n if(message_error == \"timeout\") {\n console.error(\"Timeout in authorization\", error)\n nextComponent.view = \"NoDate\";\n } else {\n console.error(\"Error in authorization\", error);\n commit(\"setState\", {\n key: \"error\",\n value: {\n zone: \"authorization\",\n message: \"El usuario no se encuentra registrado en el sistema\"\n }\n });\n dispatch(\"errorValidationTemporizer\");\n nextComponent.view = \"Help\";\n }\n }\n } catch (error) {\n console.error(\"Error in Captcha\", error);\n commit(\"setState\", {\n key: \"error\",\n value: { zone: \"recaptcha\", message: \"La validación del captcha falló\" }\n });\n dispatch(\"errorValidationTemporizer\");\n }\n dispatch(\"goToView\", nextComponent);\n commit(\"setState\", { key: \"charging\", value: false });\n },\n\n async demoValidation({ commit, state }, toSend) {\n let userfinded = state.userDemo.find(\n usr => usr.NumeroIdentificacion == toSend?.NumeroIdentificacion\n );\n await new Promise(res => setTimeout(res, 2000));\n commit(\"setState\", { key: \"currentUser\", value: toSend });\n LS.setItem(\"currentUser\", toSend);\n if (!userfinded) throw new Error(\"Invalid demo User\");\n let originFinded = (state.currentSite?.type === \"cm\"\n ? CentroDemo\n : OficinaDemo\n ).find(\n cm =>\n cm.TipoIdentificacion == toSend?.TipoIdentificacion &&\n cm.NumeroIdentificacion == toSend?.NumeroIdentificacion\n );\n if (!originFinded) throw new Error(\"User not have meetings\");\n toSend = { ...toSend, ...originFinded };\n if (\n state.currentSite?.type === \"cm\" &&\n toSend.NumeroIdentificacion === \"789\"\n )\n commit(\"setState\", { key: \"citas\", value: CitasDemo });\n else commit(\"setState\", { key: \"citas\", value: [] });\n commit(\"setState\", { key: \"currentUser\", value: toSend });\n LS.setItem(\"currentUser\", toSend);\n },\n\n async authAndQuery({ state, commit }, _pay) {\n let pay = {\n ..._pay,\n // Tipo: \"N\", // the type is commented while the api is released\n }\n console.log(\"****DATOS PARA AUTORIZAR***\")\n console.log(pay)\n \n // autentication\n let inSite\n try {\n // remove 99 from migration debmedia\n pay.CodigoOficina = pay.CodigoOficina.length > 5 ? pay.CodigoOficina.slice(2) : pay.CodigoOficina\n \n await autorizar({\n TipoIdentificacion: pay.TipoIdentificacion,\n NumeroIdentificacion: pay.NumeroIdentificacion,\n CodigoOficina: pay.CodigoOficina,\n Timeout: true,\n });\n\n inSite = await (state.currentSite?.type === \"cm\" ? enCentroMedico : enOficina)(true);\n commit(\"setState\", { key: \"currentUser\", value: { ...pay, ...inSite } });\n } catch (error) {\n commit(\"setState\", { key: \"currentUser\", value: pay });\n if(_get(error, 'code', \"not-code\") == \"ECONNABORTED\") {\n throw new Error(\"timeout\")\n }\n throw new Error(error);\n }\n\n // check citas\n try {\n commit(\"setState\", { key: \"citas\", value: [] });\n if (state.currentSite?.type === \"cm\") {\n const citasList = await citas();\n commit(\"setState\", { key: \"citas\", value: citasList });\n }\n } catch (error) {\n if(_get(error, 'code', \"not-code\") == \"ECONNABORTED\") {\n throw new Error(\"timeout\")\n }\n throw new Error(error);\n }\n },\n\n handleSendRecords({ commit }, info){\n return sendRecords(info)\n .then((response) => {\n // commit(\"saveRecord\", response);\n commit(\"setState\", { key: \"saveRecord\", value: response });\n return response;\n })\n .catch((error) => {\n // commit(\"errorRecord\", error);\n commit(\"setState\", { key: \"errorRecord\", value: error });\n return {\n response: false,\n message: error,\n };\n });\n },\n\n handleTracking({ commit }, info){\n return tracking(info)\n .then((response) => {\n commit(\"setState\", { key: \"trackingRecord\", value: response });\n return response;\n })\n .catch((error) => {\n commit(\"setState\", { key: \"errorTrackingRecord\", value: error });\n return {\n response: false,\n message: error,\n };\n });\n },\n\n errorValidationTemporizer({ commit, state }) {\n if (state.errorValidationTemporizer !== null)\n clearTimeout(state.errorValidationTemporizer);\n if (state.error) return;\n let timer = setTimeout(() => {\n commit(\"setState\", { key: \"error\", value: null });\n commit(\"setState\", { key: \"errorValidationTemporizer\", value: null });\n }, 5000);\n commit(\"setState\", { key: \"errorValidationTemporizer\", value: timer });\n },\n\n cleanCurrentUser({ commit }) {\n commit(\"setState\", { key: \"citaActual\", value: null });\n commit(\"setState\", { key: \"currentUser\", value: null });\n LS.removeItem(\"currentUser\");\n }\n};\n","export default {};\n","import LS from \"../../helpers/localStorage\";\n\nexport default {\n view: \"\",\n isAtril: false,\n previousView: \"\",\n previousViewTwo: \"\",\n showAuth: false,\n HorarioOutContinue: false,\n charging: false,\n error: null,\n tramite_info: {\n queueId: \"idSASASASXX2C12\",\n branchId: \"5a46d454da6a6\",\n params: {}\n },\n tramiteInUserEvaluation: null,\n tramiteByDefault: null,\n validationErrors: [],\n errorValidationTemporizer: null,\n currentUser: LS.getItem(\"currentUser\") || null,\n servicioSelected: null,\n selectedAccion: null,\n turn: null,\n time_received_turn: undefined,\n catch_all: null,\n priority: false,\n history: [],\n menu: [],\n actions: null,\n tipide: [\n // { value: null, text: \"Seleccione una opción\" },\n { value: \"CC\", text: \"Cédula de Ciudadanía\" },\n { value: \"TI\", text: \"Tarjeta Identidad\" },\n { value: \"RC\", text: \"Registro Civil\" },\n { value: \"CE\", text: \"Cédula de Extranjería\" },\n { value: \"NU\", text: \"Número Único de Identificación\" },\n { value: \"PA\", text: \"Pasaporte\" },\n { value: \"AS\", text: \"Adulto Sin Identificación\" },\n { value: \"CD\", text: \"Carné Diplomático\" },\n { value: \"CN\", text: \"Certificado de Nacido Vivo\" },\n { value: \"CO\", text: \"Código\" },\n { value: \"IN\", text: \"N.I.T. NATURAL\" },\n { value: \"MS\", text: \"Menor Sin Identificación\" },\n { value: \"NI\", text: \"N.I.T.\" },\n { value: \"PD\", text: \"Pasaporte Diplomático\" },\n { value: \"PE\", text: \"Permanencia Especial\" },\n { value: \"RM\", text: \"Registro Médico\" },\n { value: \"TE\", text: \"Tarjeta de Extranjería\" },\n { value: \"PT\", text: \"Permiso temporal de permanencia\" }\n ],\n citas: [],\n citaActual: null,\n currentValidation: [],\n currentSite: null,\n userDemo: [\n {\n NumeroIdentificacion: \"456\"\n },\n {\n NumeroIdentificacion: \"789\"\n },\n {\n NumeroIdentificacion: \"123456\"\n }\n ],\n queueList: [],\n customArea: null,\n sites: [],\n primaryColorBlue: null,\n secondColorBlue: null,\n threeColorBlueColor: null,\n userActionDate: Date.now(),\n};\n","import mutations from \"./mutations\";\nimport actions from \"./actions\";\nimport getters from \"./getters\";\nimport state from \"./states\";\n\nexport default {\n namespaced: true,\n state,\n mutations,\n actions,\n getters\n};\n","/* eslint-disable no-prototype-builtins */\nexport default {\n setState: (state, pay) =>\n pay &&\n typeof pay === \"object\" &&\n !Array.isArray(pay) &&\n pay.hasOwnProperty(\"key\") &&\n pay.hasOwnProperty(\"value\") &&\n state.hasOwnProperty(pay.key)\n ? (state[pay.key] = pay.value)\n : null\n};\n","import Bowser from \"bowser\";\nimport { getEnvOnly } from \"./Meet\";\n\nexport default function() {\n const browser = Bowser.getParser(window.navigator.userAgent);\n const env = getEnvOnly();\n return {\n sm: null,\n bsix: {\n v: env.PACKAGE_VERSION || \"0\",\n e: env.VUE_APP_ENV || \"develop\"\n },\n br: {\n n: browser.getBrowser().name,\n v: browser.getBrowser().version\n },\n os: {\n n: browser.getOS().name,\n v: browser.getOS().version,\n vn: browser.getOS().versionName\n },\n pl: browser.getPlatformType(),\n en: {\n n: browser.getEngine().name,\n v: browser.getEngine().version\n }\n };\n}\n","import {\n getEnqueueTurn,\n getTurnInfo,\n getCorrelation,\n setCorrelation,\n cancelTurn,\n getEnvOnly\n} from \"../../helpers/Meet\";\nimport axios from \"axios\";\nimport kuid from \"kuid\";\nimport _get from \"lodash/get\";\nimport LS from \"../../helpers/localStorage\";\nimport clientInfo from \"../../helpers/clientInfo\";\nimport { utf8_to_b64 } from \"../../utils/decoder\";\nimport moment from \"moment\";\n\nimport { Logtail } from \"@logtail/browser\";\nimport { StopWatch } from 'stopwatch-node';\nconst logtail = new Logtail(\"3egdE3x8gsYKyaWig9b7WaDq\");\n\n\nexport default {\n extrafieldsConverter(\n { rootState },\n {\n queueId,\n source,\n branchId,\n coorelation_key,\n params,\n showable = [\n {\n in: \"workstation\",\n format: \"both\"\n }\n ]\n }\n ) {\n // dni: this.user_id,\n // cuil: rootState.sessionMaster,\n // cuit: this.tipide,\n // marcacion: marcacion Colmedica,\n // cedulaIdentidad: rootState.sessionMaster,\n // email: this.e_mail,\n // firstName: this.name,\n // lastName: this.last_name,\n // phone: this.phone_number,\n let client = clientInfo();\n client.sm = rootState.sessionMaster;\n let toPack = {\n na: params?.firstName,\n la: params?.lastName,\n ma: params?.marcacion,\n ti: params?.cuit,\n nu: params?.dni,\n ce: params?.phone,\n em: params?.marcacion,\n to: undefined,\n sm: rootState.sessionMaster,\n su: branchId,\n tr: queueId,\n fu: source,\n position: rootState.position,\n client\n };\n return [\n ...(params?.extraFields || []),\n {\n showable,\n Videollamada: `Presiona aquí`\n }\n ];\n },\n\n async getTurn({ commit, dispatch, state, rootState }, infoOfTurn) {\n if (!infoOfTurn) {\n throw new Error(\"Invalid info to create Turn\");\n }\n let {\n source,\n queueId,\n onlyGenerate,\n branchId,\n coorelation_key = kuid(),\n withVideocall,\n withAnalitycExtraFields,\n params\n } = infoOfTurn;\n if (state.info && !onlyGenerate)\n return dispatch(\"getTurnStatus\", _get(state.info, \"code\"));\n params = {\n ...params,\n cuil: rootState.sessionMaster,\n cedulaIdentidad: rootState.sessionMaster\n };\n if (withVideocall || withAnalitycExtraFields) {\n // {\n // in: \"workstation\", // \"workstation / ticket / player / all\",\n // format: \"onlyKey\"\n // }\n let showable = withAnalitycExtraFields ? [] : undefined;\n params = {\n ...params,\n extraFields: await dispatch(\"extrafieldsConverter\", {\n source,\n queueId,\n branchId,\n coorelation_key,\n params,\n showable\n })\n };\n }\n const sw = new StopWatch('sw');\n sw.start('sw');\n let turnInfo = await (getEnvOnly().VUE_APP_DEBQ_DIRECT == \"true\"\n ? axios.post(`/queue/${queueId}/branch/${branchId}/enqueue`, params)\n : getEnqueueTurn(queueId, branchId, params)\n ).then(response => {\n sw.stop();\n logtail.info(\"request debmedia\", {\n url: `/queue/${queueId}/branch/${branchId}/enqueue`,\n method: \"POST\",\n time: sw.getTask(\"sw\")?.timeMills\n });\n return getEnvOnly().VUE_APP_DEBQ_DIRECT == \"true\" ? response.data : response\n });\n \n if (turnInfo.error) throw new Error(\"Request error\");\n turnInfo.status = \"WAITING_TO_BE_CALLED\";\n commit(\"setState\", { key: \"info\", value: turnInfo });\n if (!onlyGenerate) {\n commit(\"setState\", {\n key: \"epoch\",\n value: moment.utc().unix()\n });\n commit(\"setState\", { key: \"info\", value: turnInfo });\n LS.setItem(\"turnInfo\", turnInfo);\n if (withVideocall && turnInfo?.code)\n setCorrelation({ kuidId: coorelation_key, turnId: turnInfo.code });\n dispatch(\"getTurnStatus\", _get(turnInfo, \"code\"));\n }\n return turnInfo;\n },\n\n async getTurnRequest(__, code) {\n return (await axios.get(`/turn/code/${code}`)).data;\n },\n\n async getTurnStatus({ commit, state, dispatch }, code) {\n let codeToSend = code || _get(state.info, \"code\");\n if (codeToSend) {\n let response = _get(state.info, \"code\")\n ? JSON.parse(JSON.stringify(state.info))\n : null;\n try {\n let prevResponse = response;\n response =\n getEnvOnly().VUE_APP_DEBQ_DIRECT == \"true\"\n ? await dispatch(\"getTurnRequest\", codeToSend)\n : await getTurnInfo(codeToSend);\n commit(\"setState\", {\n key: \"infoErrorCount\",\n value: 0\n });\n if (response.error) throw new Error(\"Request error\");\n if (_get(response, \"code\") && _get(response, \"jsonDetails\")) {\n commit(\"setState\", { key: \"info\", value: response });\n } else {\n let errorResp = JSON.stringify(JSON.parse(response));\n console.error(\"Corrupted response\", errorResp);\n window.RB.error(\"Corrupted response in getTurnStatus\", errorResp);\n response = prevResponse;\n }\n } catch (error) {\n console.error(\"Error in query from DebMedia\", error);\n commit(\"setState\", {\n key: \"infoErrorCount\",\n value: state.infoErrorCount + 1\n });\n if (state.infoErrorCount % 5 === 0)\n window.RB.error(\"Many request has failed in getTurnStatus\", error);\n }\n clearTimeout(state.timer);\n commit(\"setState\", { key: \"timer\", value: null });\n let timer = setTimeout(() => dispatch(\"getTurnStatus\", codeToSend), 2000);\n commit(\"setState\", { key: \"timer\", value: timer });\n return response;\n } else {\n console.error(\n \"Polling is forced to stop in Turn component. Invalid Turn Code.\"\n );\n window.RB.error(\n \"Polling is forced to stop in Turn component. Invalid Turn Code.\",\n JSON.stringify({ code, turn: _get(state.info, \"code\") })\n );\n dispatch(\"cancelTurnAction\");\n return;\n }\n },\n\n getTurnCoorelation(ctx, code) {\n if (!code)\n return Promise.reject(\n new Error(\"Invalid Coorelation Code in Turn component.\")\n );\n return getCorrelation(code).then(coorData => _get(coorData, \"code_title\"));\n },\n\n async cancelTurnAction({ state, commit }, onlyClean) {\n let results;\n if (!onlyClean) {\n try {\n if (!state.info?.code)\n results = { message: \"Turn was canceled before\" };\n else if (state.info?.status === \"WAITING_TO_BE_CALLED\")\n results =\n getEnvOnly().VUE_APP_DEBQ_DIRECT == \"true\"\n ? await axios\n .post(`/turn/${state.info.code}/cancel`)\n .then(response => response.data)\n : await cancelTurn(state.info.code);\n // eslint-disable-next-line no-empty\n } catch (error) {}\n }\n LS.removeItem(\"turnInfo\");\n commit(\"setState\", { key: \"info\", value: null });\n return results;\n }\n};\n","export default {};\n","// import LS from \"../../helpers/localStorage\";\n\nexport default {\n info: null, // LS.getItem(\"turnInfo\")\n timer: null,\n epoch: null,\n infoErrorCount: 0\n};\n","import mutations from \"./mutations\";\nimport actions from \"./actions\";\nimport getters from \"./getters\";\nimport state from \"./states\";\n\nexport default {\n namespaced: true,\n state,\n mutations,\n actions,\n getters\n};\n","/* eslint-disable */\nexport default {\n setState: (state, { key, value}) => {\n key && value !== undefined && state.hasOwnProperty(key)\n ? (state[key] = value)\n : null;\n }\n};\n","export default {\n put({ commit, state }, { name, checked = true, message }) {\n commit(\"setState\", {\n key: \"list\",\n value: [...state.list, { name, checked, message }]\n });\n },\n\n showModal({ commit }, value) {\n commit(\"setState\", { key: \"showModal\", value });\n },\n\n clear({ commit }) {\n commit(\"setState\", { key: \"list\", value: [] });\n }\n};\n","export default {};\n","export default {\n showModal: false,\n /** Example\n * {\n name: \"Debugger Animals\",\n checked: false, // true is green check, false is red cross\n message: \"'t' is Not Defined\"\n }\n */\n list: []\n};\n","import mutations from \"./mutations\";\nimport actions from \"./actions\";\nimport getters from \"./getters\";\nimport state from \"./states\";\n\nexport default {\n namespaced: true,\n state,\n mutations,\n actions,\n getters\n};\n","import Vue from \"vue\";\nimport Vuex from \"vuex\";\nimport mutations from \"./mutations\";\nimport actions from \"./actions\";\nimport getters from \"./getters\";\nimport state from \"./states\";\n\n// modules\nimport meeting from \"./meeting\";\nimport recording from \"./recording\";\nimport autoservice from \"./autoservice\";\nimport virtualrow from \"./virtualrow\";\nimport turns from \"./turn\";\nimport log from \"./log\";\n\nVue.use(Vuex);\n\nexport let store = new Vuex.Store({\n namespaced: true,\n state,\n mutations,\n actions,\n getters,\n\n modules: {\n meeting,\n recording,\n autoservice,\n virtualrow,\n turns,\n log\n }\n});\n","// Libraries\nimport _get from \"lodash/get\";\nimport { getEnvironments } from \"../helpers/Meet\";\nimport { store } from \"../store\";\n\n// Routes\nimport Vue from \"vue\";\nimport VueRouter from \"vue-router\";\n\nVue.use(VueRouter);\n\nconst routes = [\n {\n path: \"/home\",\n redirect: \"/\"\n },\n {\n path: \"/\",\n name: \"Home\",\n component: () => import(\"../views/Home\"),\n beforeEnter(to, from, next) {\n if (_get(to, \"query.pr\")) next({ name: \"Decoder\", query: to.query });\n else next({ name: \"SelfService\" });\n }\n },\n {\n path: \"/simulator\",\n name: \"Simulator\",\n component: () => import(\"../views/simulator.vue\")\n },\n {\n path: \"/recorder\",\n name: \"Recorder\",\n component: () => import(\"../views/Recorder.vue\")\n },\n {\n path: \"/turn_assigner/:turnId?\",\n name: \"TurnAssigner\",\n component: () => import(\"../views/TurnAssigner.vue\")\n },\n {\n path: \"/meeting/:meetId?\",\n name: \"Meeting\",\n component: () => import(\"../views/MeetingWrapper.vue\")\n },\n {\n path: \"/meeting_direct/:meetId?\",\n name: \"MeetingDirect\",\n component: () => import(\"../views/MeetingDirect.vue\")\n },\n {\n path: \"/agent\",\n component: () => import(\"../views/Agent.vue\"),\n children: [\n {\n path: \"\",\n name: \"Agent\",\n component: () => import(\"../views/AgentBase.vue\")\n },\n {\n path: \":meetId\",\n name: \"MeetingAgent\",\n component: () => import(\"../views/MeetingWrapper.vue\")\n }\n ]\n },\n {\n path: \"/silver\",\n component: () => import(\"../views/Agent.vue\"),\n children: [\n {\n path: \"\",\n name: \"AgentSilver\",\n component: () => import(\"../views/silver/AgentSilver\")\n }\n ]\n },\n {\n path: \"/out_of_service\",\n name: \"OutService\",\n component: () => import(\"../views/OutOperations\")\n },\n {\n path: \"/before-turn\",\n name: \"BeforeTurn\",\n component: () => import(\"../views/BeforeTurn.vue\"),\n props: true\n },\n {\n path: \"/turno\",\n name: \"Turno\",\n component: () => import(\"../views/Turno.vue\"),\n props: true\n },\n {\n path: \"/canceled\",\n name: \"Canceled\",\n component: () => import(\"../views/Canceled.vue\")\n },\n {\n path: \"/canceled_agent\",\n name: \"CanceledAgent\",\n component: () => import(\"../views/Canceled_agent.vue\")\n },\n {\n path: \"/profile\",\n name: \"Profile\",\n component: () => import(\"../views/ProfilePM.vue\")\n },\n {\n path: \"/profile_dev\",\n name: \"Profile_dev\",\n component: () => import(\"../views/Profile.vue\")\n },\n {\n path: \"/dc\",\n name: \"Decoder\",\n component: () => import(\"../views/Decoder.vue\")\n },\n {\n path: \"/ad\",\n component: () => import(\"../views/components/TypicalRoot\"),\n children: [\n {\n path: \"\",\n name: \"SelfService\",\n component: () => import(\"../views/autoservice/root\")\n }\n ]\n },\n {\n path: \"/fv/:code?\",\n name: \"Virtualrow\",\n component: () => import(\"../views/virtualrow/root\")\n },\n {\n path: \"/fv_atril/:code?\",\n name: \"VirtualrowAtril\",\n component: () => import(\"../views/virtualrow/root\")\n },\n {\n path: \"/fv_print\",\n name: \"TicketPrint\",\n component: () => import(\"../views/virtualrow/TicketPrint\")\n },\n {\n path: \"/fv_print_pay\",\n name: \"InfoPrint\",\n component: () => import(\"../views/virtualrow/InfoPrint\")\n },\n {\n path: \"/environment_error\",\n name: \"EnvironmentError\",\n component: () => import(\"../views/EnvironmentError\")\n }\n];\n\nconst router = new VueRouter({\n routes\n});\n\nrouter.beforeEach(async (to, from, next) => {\n try {\n await getEnvironments();\n store.dispatch(\"log/put\", {\n name: \"Router. Variables de entorno obtenidas\"\n });\n next();\n } catch (error) {\n store.dispatch(\"log/put\", {\n name: \"Router. Error bloqueante. No se obtienen las variables de entorno\",\n checked: false,\n message: error\n });\n console.error(\"Error with environment variables\", error);\n next(\"/environment_error\");\n }\n});\n\nexport default router;\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_vm._t(\"svg\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export const LINE = \"line\";\nexport const CIRCLE = \"circle\";\nexport const PATH = \"path\";\n","export const extend = (target, source) => {\n for (let key in source) {\n target[key] = source[key];\n }\n return target;\n};\n","\n \n \n
\n\n\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Progress.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--11-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Progress.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Progress.vue?vue&type=template&id=0848c73f&\"\nimport script from \"./Progress.vue?vue&type=script&lang=js&\"\nexport * from \"./Progress.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Progress from \"./Progress\";\n\nlet VueProgress = {\n install: function(Vue) {\n Vue.component(\"progress-bar\", Progress);\n }\n};\n\nexport default VueProgress;\n\nif (typeof window !== \"undefined\" && window.Vue) {\n window.Vue.use(VueProgress);\n}\n","import { store } from \"../store\";\nlet clickCounter = 0;\n\nexport default {\n bind(el) {\n el.addEventListener(\"click\", () => {\n if (++clickCounter >= 3) {\n store.dispatch(\"log/showModal\", true);\n clickCounter = 0;\n }\n });\n },\n unbind(el) {\n el.removeEventListener(\"click\", () => {});\n }\n};\n","/* eslint-disable no-unused-vars */\nimport Vue from \"vue\";\nimport App from \"./App.vue\";\n// import \"./registerServiceWorker\";\nimport router from \"./router\";\nimport { store } from \"./store\";\nimport axios from \"axios\";\nimport BootstrapVue from \"bootstrap-vue\";\nimport ToggleButton from \"vue-js-toggle-button\";\nimport Rollbar from \"rollbar\";\nimport LS from \"./helpers/localStorage\";\nimport kuid from \"kuid\";\nimport VueProgress from \"./externals/progress\";\nimport { getEnvironments } from \"./helpers/Meet\";\nimport moment from \"moment\";\n\n// Directives\nimport openLogDirective from \"./directives/openLog\";\n\n// css\nimport \"@fortawesome/fontawesome-free/css/all.css\";\n\nwindow.lastUpdate = moment().format();\n\nif (!LS.getItem(\"person\")) {\n window.person = {\n id: kuid()\n };\n LS.setItem(\"person\", window.person);\n} else {\n window.person = LS.getItem(\"person\");\n}\n\n// Service worker disabler\nif (\"serviceWorker\" in navigator)\n navigator.serviceWorker.getRegistrations().then(function(registrations) {\n for (let registration of registrations) {\n registration.unregister();\n }\n });\n\nwindow.setPerson = function({ username }) {\n window.person = { ...window.person, username };\n LS.setItem(\"person\", window.person);\n};\n\nimport \"./assets/style.scss\";\n\n// default base URL from Axios\n\nVue.config.productionTip = false;\nVue.use(BootstrapVue);\nVue.use(ToggleButton);\nVue.use(VueProgress);\n\ngetEnvironments().then(env => {\n axios.defaults.baseURL = env.VUE_APP_DEBMEDIA_SERVER;\n axios.defaults.timeout = 60000;\n window.RB = new Rollbar({\n accessToken: \"71e1dcf747d3476c99f70a63d0bb106d\",\n autoInstrument: true,\n maxTelemetryEvents: 50,\n captureIp: true,\n retryInterval: 5000,\n captureUncaught: true,\n captureUnhandledRejections: true,\n payload: {\n environment: env.VUE_APP_ENV,\n client: {\n javascript: {\n code_version: env.PACKAGE_VERSION\n }\n },\n server: {\n host: location.host\n },\n fingerprint: env.PACKAGE_VERSION,\n bsix_version: env.PACKAGE_VERSION,\n bsix_server: env.VUE_APP_AWS_API_URL,\n person: window.person\n }\n });\n\n Vue.prototype.$rollbar = window.RB;\n\n Vue.config.errorHandler = (err, vm) => {\n vm.$rollbar.error(err);\n throw err; // rethrow\n };\n\n Vue.directive(\"openlog\", openLogDirective);\n\n new Vue({\n router,\n store,\n render: h => h(App)\n }).$mount(\"#app\");\n});\n","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--7-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=scss&\"","// Tool for custom events for Tag Manager\nwindow.dataLayer = window.dataLayer || [];\n\nclass GTM {\n setFirstElementDatalayer({ session_id, version, user_type, user_uuid }) {\n let index = window.dataLayer.findIndex(elm => elm.session_id);\n if (index === -1) {\n window.dataLayer.push({\n session_id, // Id of session\n version, // BSIX version\n user_type, // agent or client\n user_uuid // unique user identificator\n });\n } else {\n window.dataLayer[index] = {\n ...window.dataLayer[index],\n ...{ session_id, version, user_type, user_uuid }\n };\n }\n }\n checkSession() {\n return window.dataLayer.find(elm => elm.session_id);\n }\n setVariable(variable) {\n if (\n variable &&\n typeof variable === \"object\" &&\n Object.keys(variable).length\n )\n window.dataLayer.push(variable);\n }\n replaceSession(session) {\n let index = window.dataLayer.findIndex(elm => elm.session_id);\n if (session && index > -1) window.dataLayer[index].session_id = session;\n else console.error(\"Not exist session in GTM\", session, window.dataLayer);\n }\n boxOpen(mdata) {\n const data = JSON.parse(JSON.stringify(mdata));\n this.__traverse(data);\n this.__sendEvent(\"GTMBoxOpen\", data);\n }\n\n boxClose(mdata) {\n const data = JSON.parse(JSON.stringify(mdata));\n this.__traverse(data);\n this.__sendEvent(\"GTMBoxClose\", data);\n this.extinguishVisibility(data.view);\n }\n\n event({ name, eventCategory, eventAction, eventLabel, eventValue = 0 }) {\n this.__sendEvent(name, {\n eventCategory,\n eventAction,\n eventLabel,\n eventValue\n });\n }\n\n __sendEvent(name, data = {}) {\n data.timeOfEvent = Date.now();\n window.dataLayer.push({\n event: name,\n data\n });\n }\n\n __traverse(obj, parn, ky) {\n // Internal traverse\n traverse(obj, parn, ky);\n\n // Internal Fnc\n function traverse(o, parent, key) {\n const type = typeof o;\n if (o !== null && type === \"object\") {\n for (const keyIntro in o) {\n // eslint-disable-next-line no-prototype-builtins\n if (o.hasOwnProperty(keyIntro)) {\n traverse(o[keyIntro], o, keyIntro);\n }\n }\n } else {\n if (key === \"html\") {\n delete parent[key];\n }\n }\n }\n }\n}\n\nexport let GTMService = new GTM();\n","import { getEnvOnly } from \"./Meet\";\n\nexport default {\n setItem(name, data) {\n const lsPrefix = getEnvOnly()?.VUE_APP_LS_PREFIX;\n return localStorage.setItem(`${lsPrefix}${name}`, JSON.stringify(data));\n },\n removeItem(name) {\n const lsPrefix = getEnvOnly()?.VUE_APP_LS_PREFIX;\n return localStorage.removeItem(`${lsPrefix}${name}`);\n },\n getItem(name) {\n const lsPrefix = getEnvOnly()?.VUE_APP_LS_PREFIX;\n let value = localStorage.getItem(`${lsPrefix}${name}`);\n try {\n value = JSON.parse(value);\n // eslint-disable-next-line no-empty\n } catch (error) {}\n return value;\n }\n};\n","const utf8_to_b64 = str => encodeUrlComponent(window.btoa(str));\n\nconst encodeUrlComponent = str => unescape(encodeURIComponent(str));\n\nconst decodeUrlComponent = str => decodeURIComponent(unescape(str));\n\nconst b64_to_utf8 = str => window.atob(decodeUrlComponent(str));\n\nconst try_json = str => {\n try {\n return JSON.parse(str);\n } catch (error) {\n return str;\n }\n};\n\nexport {\n utf8_to_b64,\n b64_to_utf8,\n try_json,\n encodeUrlComponent,\n decodeUrlComponent\n};\n"],"sourceRoot":""}