yekonga-server
Version:
Yekonga Server
2 lines (1 loc) • 4.05 kB
JavaScript
import{P as s,a6 as t,a7 as a,g as o,o as e,c as r,h as i,t as n,m as l,q as d,n as u,B as m,D as c,v as p,j as h,k as f,x as v}from"./vendor.38a5f540.js";import{u as w}from"./index.esm.ef3672ff.js";const $={name:"AuthChangePassword",setup:()=>({v$:w()}),data:()=>({loading:!1,error:null,message:null,formStatus:!0,submitStatus:null,token:null,isTokenValid:!1,isSuccess:!1,form:{email:null,token:null,password:null,passwordConfirmed:null}}),created(){this.token=this.$route.params.token,this.fetchJson()},validations:{form:{password:{required:s,minLength:t(6)},passwordConfirmed:{required:s,sameAsPassword:a("password")}}},methods:{reset:function(){this.v$.$reset();for(const s in this.form)Object.prototype.hasOwnProperty.call(this.form,s)&&(this.form[s]=null)},fetchJson:async function(){this.loading=!0;var s=await window.ajaxGraphql("mutation ($input:String!) { user:confirmToken(token:$input){token,email,status} }",{iput:{token:this.token}},null,window.baseAuth);console.log(s);var t=s.user;t&&t.token&&t.email&&(this.isTokenValid=!0,this.form.token=t.token,this.form.email=t.email),this.loading=!1},onSubmit:async function(s){if(this.loading=!0,this.formStatus=!0,this.error=null,this.v$.$touch(),this.v$.$invalid)setTimeout((()=>{this.submitStatus="ERROR",this.formStatus=!1}),500);else{var t=await window.ajaxGraphql("mutation ($input:ChangePasswordInput!) { user:changePassword(input:$input){status,message,data} }",this.form,null,"/auth");t.user&&(this.isSuccess=!0,this.reset(),setTimeout((()=>{this.isSuccess=!1,this.isTokenValid=!1,this.$router.push({path:"/auth"})}),5e3)),t.errors&&(this.error=t.errors.error_message)}this.loading=!1}}},k={class:"card-body"},g={class:"card-header-text text-center mb-3"},b={key:1,class:"alert alert-danger"},y={key:2,class:"alert alert-success"},x={class:"input-group"},S=i("span",{class:"input-group-text"},[i("div",{class:"btn form-control"},[i("i",{class:"ye ye-lock"})])],-1),P=["placeholder"],T={key:0,class:"invalid-feedback text-start"},q={class:"input-group"},C=i("span",{class:"input-group-text"},[i("div",{class:"btn form-control"},[i("i",{class:"ye ye-lock"})])],-1),V=["placeholder"],j={key:0,class:"invalid-feedback text-start"},R={key:1,class:"invalid-feedback text-start"},A={class:"row"},O={class:"col"},G={class:"form-group mb-3"},J={type:"submit",class:"btn btn-primary btn-block"},L={class:"form-group text-start mb-0"};$.render=function(s,t,a,w,$,U){const _=o("processing-block"),B=o("router-link");return e(),r("div",k,[i("h5",g,n(s.$t("auth.repeatPassword")),1),s.loading?(e(),l(_,{key:0,height:145})):d("",!0),s.loading||s.isTokenValid?d("",!0):(e(),r("div",b,n(s.$t("auth.invalidToken")),1)),!s.loading&&s.isSuccess?(e(),r("div",y,n(s.$t("auth.resetPasswordSuccess")),1)):d("",!0),!s.loading&&s.isTokenValid?(e(),r("form",{key:3,clas:"form",onSubmit:t[2]||(t[2]=u(((...s)=>U.onSubmit&&U.onSubmit(...s)),["prevent"]))},[i("div",{class:p(["form-group mb-3",{"is-invalid":w.v$.form.password.$error}])},[i("div",x,[S,m(i("input",{"onUpdate:modelValue":t[0]||(t[0]=s=>w.v$.form.password.$model=s),type:"password",class:"form-control",placeholder:s.$t("auth.enterPassword")},null,8,P),[[c,w.v$.form.password.$model]])]),w.v$.form.password.required?d("",!0):(e(),r("div",T,n(s.$t("passwordRequired")),1))],2),i("div",{class:p(["form-group mb-3",{"is-invalid":w.v$.form.passwordConfirmed.$error}])},[i("div",q,[C,m(i("input",{"onUpdate:modelValue":t[1]||(t[1]=s=>w.v$.form.passwordConfirmed.$model=s),type:"password",class:"form-control",placeholder:s.$t("auth.repeatPassword")},null,8,V),[[c,w.v$.form.passwordConfirmed.$model]])]),w.v$.form.passwordConfirmed.required?d("",!0):(e(),r("div",j,n(s.$t("passwordRequired")),1)),w.v$.form.passwordConfirmed.sameAsPassword?d("",!0):(e(),r("div",R,n(s.$t("passwordNotMatch")),1))],2),i("div",A,[i("div",O,[i("div",G,[i("button",J,n(s.$t("auth.changePassword")),1)])])])],32)):d("",!0),i("div",L,[h(B,{to:"/auth",class:"btn btn-link text-primary px-0"},{default:f((()=>[v(n(s.$t("auth.backToLogin")),1)])),_:1})])])};export{$ as default};