{"version":3,"sources":["webpack:///./src/views/auth/ProviderLogin.vue","webpack:///ProviderLogin.vue","webpack:///./src/views/auth/ProviderLogin.vue?eac4","webpack:///./src/views/auth/ProviderLogin.vue?8bc7","webpack:///./src/views/auth/afterLogin.js","webpack:///./src/views/auth/nativeAppFcmHandler.js"],"names":["render","_vm","this","_c","_self","_setup","_setupProxy","BCard","staticClass","BSpinner","staticRenderFns","root","getCurrentInstance","proxy","$root","onMounted","useJwt","loginWithSSoProvider","provider_id","router","currentRoute","query","code","then","response","afterLogin","component","localStorage","clear","getCurrentStudentCharacter","getStudentCharacter","res","data","character","$store","commit","toLowerCase","catch","error","showErrorMessage","userData","setToken","accessToken","setItem","JSON","stringify","language","i18n","locale","getUserData","usertype","USER_TYPE_STUDENT","USER_TYPE_TEACHER","school","district","$router","replace","name","getLandingPageFor","dispatch","showSuccessMessage","themeOn","parseInt","moment","diff","dob","GEC_EVENT_BUS","$emit","location","reload","nativeAppSubscribeTopic","id","nativeAppFcmLogin","window","ReactNativeWebView","postMessage","action","saveNativeMobileAppToken","token","saveFcmToken","userId","unSubscribeTopic"],"mappings":"uHAAA,IAAIA,EAAS,WAAkB,IAAIC,EAAIC,KAAKC,EAAGF,EAAIG,MAAMD,GAAGE,EAAOJ,EAAIG,MAAME,YAAY,OAAOH,EAAG,MAAM,CAACA,EAAGE,EAAOE,MAAM,CAACC,YAAY,mBAAmB,CAACL,EAAGE,EAAOI,WAAW,IAAI,IAEhLC,EAAkB,G,oHCYtB,IAAMC,EAAOC,kCAAqBC,MAAMC,M,OACxCC,wBAAU,WACRC,OAAOC,qBAAqB,CAC1BC,YAAaC,OAAOC,aAAaC,MAAMC,OACtCC,MAAK,SAAAC,GACNC,eAAWD,EAAUb,S,iDCnBuV,I,YCO5We,EAAY,eACd,EACA1B,EACAU,GACA,EACA,KACA,KACA,MAIa,aAAAgB,E,wNCTA,SAASD,EAAWD,EAAUb,GAC3CgB,aAAaC,QACb,IAAMC,EAA6B,WACjCb,OAAOc,sBAAsBP,MAAK,SAAAQ,GAC5BA,EAAIC,KAAKA,KAAKC,WAChBtB,EAAKuB,OAAOC,OAAO,sCAAuCJ,EAAIC,KAAKA,KAAKC,UAAUG,kBAEnFC,OAAM,SAAAC,GACP3B,EAAK4B,iBAAiBD,OAIpBE,EAAWhB,EAASQ,KAAKA,KAC/BhB,OAAOyB,SAASjB,EAASQ,KAAKU,aAC9Bf,aAAagB,QAAQ,WAAYC,KAAKC,UAAUL,IAChDb,aAAagB,QAAQ,SAAUH,EAASM,UACxCC,OAAKC,OAASR,EAASM,SACvBnC,EAAKuB,OAAOC,OAAO,gCACfc,kBAAkBA,iBAAcC,WAAaC,QAAqBF,iBAAcC,WAAaE,SAC/FzC,EAAKuB,OAAOC,OAAO,+BAAgCK,EAASa,QAAU,IACtE1C,EAAKuB,OAAOC,OAAO,iCAAkCK,EAASc,UAAY,IAC1E3C,EAAKuB,OAAOC,OAAO,mCAAmC,IAExDxB,EAAK4C,QAAQC,QAAQ,CAAEC,KAAMC,eAAkBlB,EAASU,YAAa3B,MAAK,WACxEZ,EAAKuB,OAAOyB,SAAS,0BACrBhD,EAAKiD,mBAAmBpC,GACpByB,kBAAiBA,iBAAcC,WAAaC,QAAmBtB,IACnElB,EAAKuB,OAAOC,OAAO,4BAA6BK,EAASqB,SACrDC,SAASC,MAASC,KAAKf,iBAAcgB,IAAK,SAAU,IAAM,IAC5DtD,EAAKuB,OAAOC,OAAO,qCAAqC,GAE1D+B,OAAcC,MAAM,YACQ,OAAxBxC,aAAaqB,QACfoB,SAASC,YAGbC,eAAwB9B,EAAS+B,IACjCC,mB,kKC5CIA,EAAoB,WACxB,OAAKC,OAAOC,oBAGZD,OAAOC,mBAAmBC,YAAY/B,KAAKC,UAAU,CACnD+B,OAAQ,uBAIVH,OAAOI,yBAA2B,SAAAC,GAChCnD,aAAagB,QAAQ,iBAAkBmC,GACvC9D,OAAO+D,aAAa,CAClBD,WAGG,MAbE,MAgBLR,EAA0B,SAAAU,GAC9B,OAAKP,OAAOC,oBAGZD,OAAOC,mBAAmBC,YAAY/B,KAAKC,UAAU,CACnD+B,OAAQ,sBACRI,YAEK,MANE,MASLC,EAAmB,SAAAD,GACvB,OAAKP,OAAOC,oBAGZD,OAAOC,mBAAmBC,YAAY/B,KAAKC,UAAU,CACnD+B,OAAQ,wBACRI,YAEK,MANE","file":"js/chunk-19ec3ae7.2f22d953.js","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c(_setup.BCard,{staticClass:\"text-center p-3\"},[_c(_setup.BSpinner)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProviderLogin.vue?vue&type=script&setup=true&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ProviderLogin.vue?vue&type=script&setup=true&lang=js\"","import { render, staticRenderFns } from \"./ProviderLogin.vue?vue&type=template&id=9c8ca908\"\nimport script from \"./ProviderLogin.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./ProviderLogin.vue?vue&type=script&setup=true&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 { getUserData } from '@/auth/utils'\nimport { USER_TYPE_STUDENT, USER_TYPE_TEACHER } from '@/const/userType'\nimport getLandingPageFor from '@/router/utils'\nimport useJwt from '@/auth/jwt/useJwt'\nimport moment from 'moment'\nimport i18n from '@/libs/i18n'\nimport GEC_EVENT_BUS from '@/utils/eventBus'\nimport { nativeAppFcmLogin, nativeAppSubscribeTopic } from './nativeAppFcmHandler'\n\nexport default function afterLogin(response, root) {\n localStorage.clear()\n const getCurrentStudentCharacter = () => {\n useJwt.getStudentCharacter().then(res => {\n if (res.data.data.character) {\n root.$store.commit('appConfig/UPDATE_SELECTED_CHARACTER', res.data.data.character.toLowerCase())\n }\n }).catch(error => {\n root.showErrorMessage(error)\n })\n }\n\n const userData = response.data.data\n useJwt.setToken(response.data.accessToken)\n localStorage.setItem('userData', JSON.stringify(userData))\n localStorage.setItem('locale', userData.language)\n i18n.locale = userData.language\n root.$store.commit('app/SET_COMPANY_INFORMATION')\n if (getUserData() && (getUserData().usertype === USER_TYPE_STUDENT || getUserData().usertype === USER_TYPE_TEACHER)) {\n root.$store.commit('appConfig/UPDATE_SCHOOL_INFO', userData.school || [])\n root.$store.commit('appConfig/UPDATE_DISTRICT_INFO', userData.district || [])\n root.$store.commit('appConfig/UPDATE_JUST_LOGGED_IN', true)\n }\n root.$router.replace({ name: getLandingPageFor(userData.usertype) }).then(() => {\n root.$store.dispatch('authEvents/onUserLogin')\n root.showSuccessMessage(response)\n if (getUserData() && getUserData().usertype === USER_TYPE_STUDENT) getCurrentStudentCharacter()\n root.$store.commit('appConfig/UPDATE_THEME_ON', userData.themeOn)\n if (parseInt(moment().diff(getUserData().dob, 'years'), 10) < 13) {\n root.$store.commit('appConfig/UPDATE_IS_STUDENT_YOUNG', true)\n }\n GEC_EVENT_BUS.$emit('loggedin')\n if (localStorage.locale !== 'en') {\n location.reload()\n }\n })\n nativeAppSubscribeTopic(userData.id)\n nativeAppFcmLogin()\n // save the mobile web application token here\n}\n","import useJwt from '@/auth/jwt/useJwt'\n\nconst nativeAppFcmLogin = () => {\n if (!window.ReactNativeWebView) {\n return null\n }\n window.ReactNativeWebView.postMessage(JSON.stringify({\n action: 'request_fcm_token',\n }))\n // You can use the userId to perform any necessary actions in your app,\n // such as saving the token to the database or setting up push notifications.\n window.saveNativeMobileAppToken = token => {\n localStorage.setItem('mobileFcmToken', token)\n useJwt.saveFcmToken({\n token,\n })\n }\n return null\n}\n\nconst nativeAppSubscribeTopic = userId => {\n if (!window.ReactNativeWebView) {\n return null\n }\n window.ReactNativeWebView.postMessage(JSON.stringify({\n action: 'subscribe_fcm_topic',\n userId,\n }))\n return null\n}\n\nconst unSubscribeTopic = userId => {\n if (!window.ReactNativeWebView) {\n return null\n }\n window.ReactNativeWebView.postMessage(JSON.stringify({\n action: 'unsubscribe_fcm_topic',\n userId,\n }))\n return null\n}\n\nexport {\n nativeAppSubscribeTopic,\n nativeAppFcmLogin,\n unSubscribeTopic,\n}\n"],"sourceRoot":""}