PageSourceSearch

https://www.theperfectwedding.nl/build/assets/LoginFormComponent-C45cFZ3m.js

js theperfectwedding.nl collected 2026-10-02 02:22:33 UTC 5,600 bytes, 1 lines download raw bytes

1import{t as B,j as O,b as u,e as p,g as o,n as b,y as k,q as l,f as c,M as g,u as r,v as M,F as w,x as _,i as I,O as P,s as C,r as L}from"./vue.esm-bundler-DScwiokm.js";import{E as R}from"./event-bus-ChBl_s_K.js";import{D as T}from"./DatalayerManager-CYIgI9Zz.js";import{u as $}from"./vuex.esm-bundler-Da81HuIo.js";import{u as H}from"./vue-i18n-C3xC5mDb.js";import"./_commonjsHelpers-CE1G-McA.js";const N={class:"form-label","data-cy":"login-email-label"},z={class:"form-label","data-cy":"login-password-label"},W={class:"text--right"},A={class:"flex--12 pbm"},G={for:"remember-me","data-cy":"login-remember-label"},J=["disabled"],K={key:0,class:"input--error input__error-message",role:"alert","data-cy":"login-form-error"},Q={class:"ptxl pbxl seperator seperator--midline"},X={"data-cy":"login-social-divider"},Y={class:"flex flex--grid"},Z={role:"button",class:"flex--12 button button--facebook",href:"/oauth/facebook/login","data-cy":"login-social-facebook"},ee={role:"button",class:"flex--12 button button--google",href:"/oauth/google/login","data-cy":"login-social-google"},oe={role:"button",class:"flex--12 button button--apple",href:"/oauth/apple/login","data-cy":"login-social-apple"},ie={__name:"LoginFormComponent",props:{lang:{type:Object,required:!1,default:()=>({})},redirect:{type:String,required:!1,default:null},entityId:{type:String,default:null},type:{type:String,default:null},forgotPasswordModal:{type:Boolean,required:!1,default:!1},loginModalHideRegister:{type:Boolean,required:!1,default:!1},contactInfo:{type:Object,required:!1,default:()=>{}}},emits:["close-modal"],setup(D,{emit:E}){const{t:V}=H(),n=D,F=E,h=$();function S(s,t=s){return s.split(".").reduce((e,m)=>{if(e!==null&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,m))return e[m]},n.lang)??t}function d(s){const t=`partials.loginForm.frontend.${s}`,e=V(t);return e!==t?e:S(s,t)}function y(){return{email:[],password:[],remember:[],form:!1}}function x(s){return a.errors[s].length>0||a.formError!==""&&["email","password"].includes(s)}async function U(){a.disabled=!0,a.errors=y(),a.formError="";try{const s={email:a.formData.email,password:a.formData.password,remember:a.formData.remember,redirect:n.redirect,entityId:n.entityId,type:n.type},t=await h.dispatch("authentication/login",s);if(t.status!==200){const e=h.getters["authentication/login"];a.disabled=!1,a.errors=Object.assign(y(),e.errors),a.formError=e.error||(e.errors?"":e.message||"")}t.status===200&&(window.dataLayer.push({ecommerce:null}),window.dataLayer.push({event:"login",source:"email"}),n.loginModalHideRegister?F("close-modal"):window.location.href=t.data.redirectUrl)}catch{a.disabled=!1}}function j(){if(n.forgotPasswordModal)R.$emit("openForgotPasswordModal");else{const s=window.route("auth.forgot_password");window.location.assign(s)}}const a=L({});a.formData={email:"",password:"",remember:!0,redirect:n.redirect,entityId:n.entityId,type:n.type},a.disabled=!1,a.errors=y(),a.formError="",a.datalayerManager=new T;const{formData:i,disabled:q,errors:f,formError:v}=B(a);return O(function(){n.contactInfo!==null&&n.contactInfo!==void 0&&(a.formData.email=n.contactInfo.email)}),(s,t)=>(u(),p("div",null,[o("form",{name:"login",autocomplete:"on",novalidate:"",class:"flex flex--grid","data-cy":"login-form",onSubmit:I(U,["prevent"])},[o("div",{class:b(["flex--12",{"input--error":x("email")}]),"data-cy":"login-email-field"},[o("label",N,[k(l(d("form.email"))+" ",1),c(o("input",{"onUpdate:modelValue":t[0]||(t[0]=e=>r(i).email=e),type:"email",class:"field-medium",autocomplete:"email","data-cy":"login-email"},null,512),[[g,r(i).email,void 0,{trim:!0}]]),c(o("span",null,[(u(!0),p(w,null,_(r(f).email,(e,m)=>(u(),p("p",{key:m,class:"input__error-message","data-cy":"login-email-error"},l(e),1))),128))],512),[[M,r(f).email.length>0]])])],2),o("div",{class:b(["flex--12",{"input--error":x("password")}]),"data-cy":"login-password-field"},[o("label",z,[k(l(d("form.password"))+" ",1),c(o("input",{"onUpdate:modelValue":t[1]||(t[1]=e=>r(i).redirect=e),type:"hidden"},null,512),[[g,r(i).redirect]]),c(o("input",{"onUpdate:modelValue":t[2]||(t[2]=e=>r(i).type=e),type:"hidden"},null,512),[[g,r(i).type]]),c(o("input",{"onUpdate:modelValue":t[3]||(t[3]=e=>r(i).entityId=e),type:"hidden"},null,512),[[g,r(i).entityId]]),c(o("input",{"onUpdate:modelValue":t[4]||(t[4]=e=>r(i).password=e),type:"password",class:"field-medium",autocomplete:"current-password","data-cy":"login-password"},null,512),[[g,r(i).password]]),c(o("span",null,[(u(!0),p(w,null,_(r(f).password,(e,m)=>(u(),p("p",{key:m,class:"input__error-message","data-cy":"login-password-error"},l(e),1))),128))],512),[[M,r(f).password.length>0]])]),o("div",W,[o("a",{class:"text--s","data-cy":"login-forgot-password",onClick:t[5]||(t[5]=I(e=>j(),["prevent"]))},l(d("form.forgotPassword")),1)])],2),o("div",A,[o("div",{class:b(["optiongroup__option",[r(f).remember.length>0?"optiongroup--error":""]])},[c(o("input",{id:"remember-me","onUpdate:modelValue":t[6]||(t[6]=e=>r(i).remember=e),name:"remember",type:"checkbox","data-cy":"login-remember"},null,512),[[P,r(i).remember]]),o("label",G,l(d("form.rememberMe")),1)],2),(u(!0),p(w,null,_(r(f).remember,(e,m)=>(u(),p("p",{key:m,class:"optiongroup__error-message"},l(e),1))),128))]),o("button",{class:"flex--12 button--positive","data-cy":"login-submit",disabled:r(q)},l(d("form.button")),9,J)],32),r(v)?(u(),p("p",K,l(r(v)),1)):C("",!0),o("div",Q,[o("span",X,l(d("form.orLoginWith")),1)]),o("div",Y,[o("a",Z,l(d("form.facebook")),1
1),o("a",ee,l(d("form.google")),1),o("a",oe,l(d("form.apple")),1)])]))}};export{ie as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.