{"version":3,"sources":["webpack:///./src/User/PasswordResetCompletion.vue?c5c8","webpack:///./src/User/PasswordResetCompletion.vue?c724","webpack:///./src/User/PasswordResetCompletion.vue?10ea","webpack:///./src/User/PasswordResetCompletion.vue","webpack:///./src/Shared/I18nMixin.ts"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","on","$event","preventDefault","submit","_v","_s","i18nLocal","attrs","directives","name","rawName","value","expression","domProps","target","composing","newPassword","confirmedNewPassword","staticStyle","passwordsMatch","_e","staticRenderFns","PasswordResetCompletion","I18nMixin","extend","props","requestId","type","String","required","data","requestValid","validationErrors","requestFailed","ValidationErrorDirective","computed","i18nPrefix","methods","VatsAPI","post","requestID","result","success","popupToast","redirectTimeSeconds","setTimeout","$router","push","response","status","hasPasswordErrors","hasOwnProperty","passwordErrors","message","Logger","Log","title","$i18n","t","toString","$bvToast","toast","autoHideDelay","component","Error","i18nCommon","key"],"mappings":"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","file":"js/chunk-0d25d23a.3dccbd5b.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('form',{staticClass:\"container login-container\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submit()}}},[_c('div',{staticClass:\"row justify-content-center\"},[_c('div',{staticClass:\"col-3 col-sm-6\"},[_c('h3',[_vm._v(_vm._s(_vm.i18nLocal('resetPasswordHeading')))])])]),_c('div',{staticClass:\"row justify-content-center\"},[_c('div',{staticClass:\"col-3 col-sm-6 form-group\"},[_c('label',{attrs:{\"for\":\"password\"}},[_vm._v(_vm._s(_vm.i18nLocal('newPasswordLabel')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.newPassword),expression:\"newPassword\"},{name:\"validation-error\",rawName:\"v-validation-error\"}],staticClass:\"form-control\",attrs:{\"id\":\"password\",\"type\":\"password\"},domProps:{\"value\":(_vm.newPassword)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.newPassword=$event.target.value}}})])]),_c('div',{staticClass:\"row justify-content-center\"},[_c('div',{staticClass:\"col-3 col-sm-6 form-group\"},[_c('label',{attrs:{\"for\":\"passwordConfirm\"}},[_vm._v(_vm._s(_vm.i18nLocal('newPasswordConfirmLabel')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.confirmedNewPassword),expression:\"confirmedNewPassword\"},{name:\"validation-error\",rawName:\"v-validation-error\"}],staticClass:\"form-control\",attrs:{\"id\":\"passwordConfirm\",\"type\":\"password\"},domProps:{\"value\":(_vm.confirmedNewPassword)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.confirmedNewPassword=$event.target.value}}})])]),_c('div',{staticClass:\"row justify-content-center\",staticStyle:{\"margin-bottom\":\"15px\"}},[_c('div',{staticClass:\"col-3 col-sm-6\"},[_c('button',{staticClass:\"btn btn-primary\",attrs:{\"disabled\":!_vm.passwordsMatch},on:{\"click\":function($event){$event.preventDefault();return _vm.submit()}}},[_vm._v(_vm._s(_vm.i18nLocal('submitText')))])])]),(_vm.requestFailed)?_c('div',{staticClass:\"row justify-content-center\",staticStyle:{\"margin-bottom\":\"15px\"}},[_c('div',{staticClass:\"col-3 col-sm-6\"},[_c('p',[_vm._v(_vm._s(_vm.i18nLocal('retryMessage')))]),_c('router-link',{attrs:{\"to\":\"/vats/reset-password\"}},[_vm._v(_vm._s(_vm.i18nLocal('tryAgain')))])],1)]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue from 'vue';\nimport mixin from 'vue-typed-mixins';\nimport { toastMixin } from '@/Shared/CommonEntityMixins/ToastMixin';\nimport ValidationErrorDirective, { getValidationErrors } from '@/Shared/ValidationErrorDirective';\nimport { Dictionary } from 'vue-router/types/router';\nimport VatsAPI from '@/Shared/VatsAPI';\nimport I18nMixin from '@/Shared/I18nMixin';\nimport {Logger} from '@/Shared/Logger';\n\nconst PasswordResetCompletion = mixin(toastMixin, I18nMixin).extend({\n props: {\n requestId: {\n type: String,\n required: true\n },\n },\n data() {\n return {\n requestValid: null as boolean | null,\n validationErrors: {} as Dictionary,\n newPassword: '',\n confirmedNewPassword: '',\n requestFailed: false\n };\n },\n directives: {\n ValidationErrorDirective\n },\n computed: {\n i18nPrefix(): string {\n return 'passwordResetCompletion';\n },\n passwordsMatch(): boolean {\n return this.newPassword === this.confirmedNewPassword;\n }\n },\n methods: {\n async submit() {\n this.validationErrors = {};\n try {\n const result = await VatsAPI.post(\n `/Account/ResetPassword`,\n { requestID: this.requestId, newPassword: this.newPassword }\n );\n\n const success = result.data;\n\n if (success) {\n this.popupToast('requestSuccessTitle', 'requestSuccessMessage', this.i18nPrefix);\n\n const redirectTimeSeconds = 2;\n setTimeout(() => {\n this.$router.push({ name: 'vatsLogin' });\n }, redirectTimeSeconds * 1000);\n }\n else {\n this.requestFailed = true;\n }\n }\n catch (e) {\n if (!e.response || e.response.status !== 400 || !e.response.data) {\n this.popupToast('requestFailedTitle', 'requestFailedMessage', this.i18nPrefix);\n return;\n }\n\n this.validationErrors = getValidationErrors(e.response);\n\n const hasPasswordErrors = this.validationErrors.hasOwnProperty('Password');\n\n if (hasPasswordErrors) {\n const passwordErrors = this.validationErrors[`Password`];\n\n const message: string = passwordErrors[0];\n\n Logger.Log(message);\n\n const title = this.$i18n.t('passwordResetCompletion.requestFailedTitle').toString();\n\n Logger.Log(title);\n\n this.$bvToast.toast(message, {title, autoHideDelay: 5000});\n }\n }\n },\n },\n});\n\nexport default PasswordResetCompletion;\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/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordResetCompletion.vue?vue&type=script&lang=ts&\"; 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/ts-loader/index.js??ref--13-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PasswordResetCompletion.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PasswordResetCompletion.vue?vue&type=template&id=be3696a8&\"\nimport script from \"./PasswordResetCompletion.vue?vue&type=script&lang=ts&\"\nexport * from \"./PasswordResetCompletion.vue?vue&type=script&lang=ts&\"\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 Vue from 'vue';\r\n\r\nconst I18nMixin = Vue.extend({\r\n computed: {\r\n i18nPrefix() {\r\n throw new Error(`Must override computed property 'i18nPrefix()'`);\r\n }\r\n },\r\n methods: {\r\n i18nCommon(key: string) {\r\n return this.$i18n.t(`common.${key}`);\r\n },\r\n i18nLocal(key: string) {\r\n return this.$i18n.t(`${this.i18nPrefix}.${key}`);\r\n }\r\n }\r\n});\r\n\r\nexport default I18nMixin;\r\n"],"sourceRoot":""}