{"version":3,"sources":["webpack:///./src/modules/home/views/RedirectView.vue","webpack:///./src/modules/home/views/RedirectView.ts","webpack:///./src/modules/home/views/RedirectView.ts?c65e","webpack:///./src/modules/home/views/RedirectView.vue?96bb","webpack:///./src/modules/home/views/RedirectView.vue?3a82"],"names":["render","_vm","this","_c","_self","_setupProxy","errorMessage","length","attrs","staticClass","_m","_v","_s","errorTitle","$t","_e","staticRenderFns","RedirectView","_Vue","_this2","_classCallCheck","_len","arguments","args","Array","_key","_callSuper","concat","_defineProperty","toString","_inherits","_createClass","key","value","query","$route","eumparam","data","JSON","parse","decodeURIComponent","type","console","log","userid","Error","loginService","returnUrl","err","handleError","_loginService","_asyncToGenerator","_regeneratorRuntime","mark","_callee","user","wrap","_context","prev","next","login","username","password","sent","goToPage","t0","stop","_x","_x2","apply","msg","error","message","url","targetUrl","indexOf","startsWith","location","href","origin","load","Vue","__decorate","Prop","String","default","Component","name","methods","_objectSpread","mapActions","accountTypes","component"],"mappings":"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","file":"assets/js/chunk-6da14c90.67195795.js","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.errorMessage.length)?_c('div',{attrs:{\"id\":\"wrapper-login\"}},[_c('div',{staticClass:\"container-login\"},[_c('div',{staticClass:\"bg-error\"}),_c('div',{staticClass:\"form-login login-bg-white\"},[_c('form',[_vm._m(0),_c('div',{staticClass:\"space-xl\"}),_c('h4',{staticClass:\"align-center ft-darkblue\"},[_vm._v(_vm._s(_vm.errorTitle))]),_c('div',{staticClass:\"space-xl\"}),_vm._m(1),_c('div',{staticClass:\"space-xl\"}),_c('div',{staticClass:\"divide-row divide-gray\"}),_c('div',{staticClass:\"space-xl\"}),_c('div',{staticClass:\"position-relative\"},[_c('div',{staticClass:\"accordion pre-arrow\"},[_c('input',{attrs:{\"id\":\"error-details\",\"type\":\"checkbox\"}}),_c('label',{staticClass:\"ft-gray\",attrs:{\"for\":\"error-details\"}},[_vm._v(_vm._s(_vm.$t('상세보기')))]),_c('div',{staticClass:\"accordion-content\"},[_c('div',{staticClass:\"space-l\"}),_c('span',[_vm._v(_vm._s(_vm.errorMessage))])])])]),_c('div',{staticClass:\"space-m\"})])])])]):_vm._e()\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('h1',{staticClass:\"align-center logo-login\"},[_c('img',{attrs:{\"src\":\"/cm/gres/faux/images/login_logo_company.png\"}})])\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"align-center\"},[_c('img',{attrs:{\"src\":\"/cm/gres/faux/images/error_item.png\"}})])\n}]\n\nexport { render, staticRenderFns }","import Vue from 'vue'\r\nimport { Component, Prop } from 'vue-property-decorator'\r\nimport { mapActions } from 'vuex';\r\n\r\nimport * as accountTypes from '@account/store/types'\r\n\r\nimport { LoginActionPayload } from '@account/store/actions';\r\n\r\n// data type\r\ndeclare type EumParam = {\r\n type: string, // type code (1,2,3 ..)\r\n service: string, // called by\r\n returnUrl: string, // to redirect (encoded value)\r\n userid?: string // personcode or email\r\n}\r\n\r\n@Component({\r\n name: 'RedirectView',\r\n methods: {\r\n ...mapActions({\r\n login: accountTypes.LOGINEX,\r\n })\r\n }\r\n})\r\nexport default class RedirectView extends Vue {\r\n\r\n //\r\n // ────────────────────────────────────────────────── I ──────────\r\n // :::::: P R O P S : : : : : : : :\r\n // ────────────────────────────────────────────────────────────\r\n //\r\n\r\n // return URL\r\n @Prop({ type: String, default: '' }) returnUrl!: string;\r\n\r\n //\r\n // ──────────────────────────────────────────────── I ──────────\r\n // :::::: D A T A : : : : : : : :\r\n // ──────────────────────────────────────────────────────────\r\n //\r\n\r\n errorTitle: string = this.$t('오류').toString();\r\n errorMessage: string = '';\r\n\r\n //\r\n // ────────────────────────────────────────────────────── I ──────────\r\n // :::::: A C T I O N S : : : : : : : :\r\n // ────────────────────────────────────────────────────────────────\r\n //\r\n\r\n login!: (payload: LoginActionPayload) => Promise\r\n\r\n //\r\n // ────────────────────────────────────────────────────── I ──────────\r\n // :::::: M E T H O D S : : : : : : : :\r\n // ────────────────────────────────────────────────────────────────\r\n //\r\n\r\n load(){\r\n const { query } = this.$route;\r\n if(query.eumparam){\r\n try{\r\n const data : EumParam = JSON.parse(decodeURIComponent(query.eumparam.toString()));\r\n switch(data.type){\r\n case '1': // logon -> redirect\r\n console.log('RedirectView', 'data', data);\r\n if(data.userid){\r\n this.loginService(data.userid, data.returnUrl);\r\n }\r\n else{\r\n throw new Error('[NOT FOUND USERID]');\r\n }\r\n break;\r\n default:\r\n throw new Error('[NOT EXIST TYPE]');\r\n }\r\n }\r\n catch(err){\r\n this.handleError(err);\r\n }\r\n }\r\n else{\r\n this.handleError(new Error('[NOT FOUND EUMPARAM]'));\r\n }\r\n \r\n }\r\n\r\n /**\r\n * 로그인 처리 후 returnUrl 로 이동시킵니다.\r\n */\r\n async loginService(userid: string, returnUrl: string){\r\n try{\r\n const user = await this.login({ username: userid, password: ''})\r\n \r\n if(user){\r\n this.goToPage(returnUrl);\r\n }else{\r\n this.handleError(new Error('[NOT FOUND USER] :' + userid), this.$t('로그인에 실패하였습니다').toString());\r\n }\r\n }\r\n catch(err){\r\n this.handleError(err, this.$t('로그인에 실패하였습니다').toString());\r\n }\r\n }\r\n\r\n /**\r\n * 로그인 오류를 처리합니다.\r\n * @param err \r\n */\r\n handleError(err: any, msg?: string){\r\n const _this = this;\r\n console.error(err);\r\n if(msg && msg.length){\r\n this.errorMessage = msg;\r\n }\r\n else{\r\n this.errorMessage = err.message || '';\r\n }\r\n }\r\n\r\n /**\r\n * 해당 URL 로 페이지를 이동시킵니다.\r\n * @param url \r\n */\r\n goToPage(url: string){\r\n try{\r\n var targetUrl = decodeURIComponent(url);\r\n if(targetUrl.indexOf('?') > -1){\r\n targetUrl += '&EumRedirect=1';\r\n }\r\n else{\r\n targetUrl += '?EumRedirect=1';\r\n }\r\n if (targetUrl.startsWith('http://') || targetUrl.startsWith('https://')) {\r\n location.href = targetUrl;\r\n }\r\n else{\r\n location.href = location.origin + targetUrl;\r\n }\r\n }\r\n catch(err){\r\n this.handleError(err);\r\n }\r\n }\r\n\r\n //\r\n // ────────────────────────────────────────────────────────── I ──────────\r\n // :::::: L I F E C Y C L E : : : : : : : :\r\n // ────────────────────────────────────────────────────────────────────\r\n //\r\n\r\n created(){\r\n this.load();\r\n }\r\n \r\n \r\n \r\n}","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!./RedirectView.ts?vue&type=script&lang=ts&external\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!./RedirectView.ts?vue&type=script&lang=ts&external\"","import { render, staticRenderFns } from \"./RedirectView.vue?vue&type=template&id=a081ef2a\"\nimport script from \"./RedirectView.ts?vue&type=script&lang=ts&external\"\nexport * from \"./RedirectView.ts?vue&type=script&lang=ts&external\"\nimport style0 from \"./RedirectView.vue?vue&type=style&index=0&id=a081ef2a&prod&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","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RedirectView.vue?vue&type=style&index=0&id=a081ef2a&prod&lang=scss\""],"sourceRoot":""}