bettertend/frontend/dist/assets/RegisterView-B1dtlGYy.js

2 lines
6.3 KiB
JavaScript

import{_ as B,u as I,r as N,c as n,o as z,a as c,b as l,d as o,w as v,e as r,t as R,f as j,g as m,h as M,i as T,j as D,F as L,k as d,l as O}from"./index-QAlcqU00.js";import{r as p,e as b,p as C,a as P}from"./validators-BsFa-KD7.js";import{F as u}from"./FPInput-D5RURom0.js";import{F as Y}from"./FPCard-AB6NRXg5.js";import{F as G}from"./FPAlert-CZx0ew6-.js";import{F}from"./FPSelect-j7n_x8eB.js";const H={class:"min-h-screen flex items-center justify-center bg-gradient-to-br from-primary-600 to-primary-800 py-12 px-4 sm:px-6 lg:px-8"},J={class:"max-w-lg w-full space-y-8"},$={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},K={class:"grid grid-cols-1 md:grid-cols-2 gap-4"},Q={key:0},W={key:1,class:"flex items-center"},X={class:"text-center"},Z={class:"text-center"},ee={class:"text-primary-100 text-sm"},ae={__name:"RegisterView",setup(le){const{register:k,loading:g,error:y}=I(),{success:E}=O(),e=N({firstName:"",lastName:"",email:"",password:"",phone:"",companyName:"",employeesCount:null,language:"",subscriptionPlanId:null}),i=N(!1),A=[{title:"1-10 employees",value:10},{title:"11-50 employees",value:50},{title:"51-200 employees",value:200},{title:"201-500 employees",value:500},{title:"500+ employees",value:1e3}],_=[{title:"English",value:"en"},{title:"Spanish",value:"es"},{title:"French",value:"fr"},{title:"German",value:"de"},{title:"Portuguese",value:"pt"},{title:"Italian",value:"it"}],f=n(()=>{const t=[];return e.value.firstName&&p(e.value.firstName)!==!0&&t.push(p(e.value.firstName)),t}),h=n(()=>{const t=[];return e.value.lastName&&p(e.value.lastName)!==!0&&t.push(p(e.value.lastName)),t}),x=n(()=>{const t=[];return e.value.email&&b(e.value.email)!==!0&&t.push(b(e.value.email)),t}),w=n(()=>{const t=[];return e.value.password&&C(e.value.password)!==!0&&t.push(C(e.value.password)),t}),V=n(()=>{const t=[];return e.value.phone&&P(e.value.phone)!==!0&&t.push(P(e.value.phone)),t}),S=n(()=>new Date().getFullYear()),U=async()=>{try{await k(e.value),E("Account created successfully!")}catch(t){console.error("Registration error:",t)}};return z(()=>{const t=document.querySelector('input[placeholder="Enter first name"]');t&&t.focus()}),(t,a)=>{const q=j("router-link");return m(),c("div",H,[l("div",J,[a[13]||(a[13]=l("div",{class:"text-center"},[l("h2",{class:"text-3xl font-bold text-white mb-2"}," Create Account "),l("p",{class:"text-primary-100"}," Join Facility Plus to manage your assets ")],-1)),o(r(Y),{padding:"lg",class:"bg-white shadow-2xl"},{default:v(()=>[l("form",{onSubmit:M(U,["prevent"]),class:"space-y-6"},[l("div",$,[o(r(u),{modelValue:e.value.firstName,"onUpdate:modelValue":a[0]||(a[0]=s=>e.value.firstName=s),label:"First Name",placeholder:"Enter first name","error-message":f.value.length>0?f.value[0]:"",required:""},null,8,["modelValue","error-message"]),o(r(u),{modelValue:e.value.lastName,"onUpdate:modelValue":a[1]||(a[1]=s=>e.value.lastName=s),label:"Last Name",placeholder:"Enter last name","error-message":h.value.length>0?h.value[0]:"",required:""},null,8,["modelValue","error-message"])]),o(r(u),{modelValue:e.value.email,"onUpdate:modelValue":a[2]||(a[2]=s=>e.value.email=s),label:"Email Address",type:"email",placeholder:"Enter your email","error-message":x.value.length>0?x.value[0]:"",required:""},null,8,["modelValue","error-message"]),o(r(u),{modelValue:e.value.password,"onUpdate:modelValue":a[3]||(a[3]=s=>e.value.password=s),label:"Password",type:i.value?"text":"password","append-icon":i.value?"mdi-eye":"mdi-eye-off","append-icon-clickable":"",placeholder:"Create a strong password","error-message":w.value.length>0?w.value[0]:"","help-text":"Password must be at least 8 characters with uppercase, lowercase, number and special character",required:"",onAppendIconClick:a[4]||(a[4]=s=>i.value=!i.value)},null,8,["modelValue","type","append-icon","error-message"]),o(r(u),{modelValue:e.value.phone,"onUpdate:modelValue":a[5]||(a[5]=s=>e.value.phone=s),label:"Phone Number",type:"tel",placeholder:"(555) 123-4567","error-message":V.value.length>0?V.value[0]:"",required:""},null,8,["modelValue","error-message"]),o(r(u),{modelValue:e.value.companyName,"onUpdate:modelValue":a[6]||(a[6]=s=>e.value.companyName=s),label:"Company Name",placeholder:"Enter company name (optional)","help-text":"This helps us customize your experience"},null,8,["modelValue"]),l("div",K,[o(r(F),{modelValue:e.value.employeesCount,"onUpdate:modelValue":a[7]||(a[7]=s=>e.value.employeesCount=s),label:"Company Size",placeholder:"Select employee count",options:A},null,8,["modelValue"]),o(r(F),{modelValue:e.value.language,"onUpdate:modelValue":a[8]||(a[8]=s=>e.value.language=s),label:"Preferred Language",placeholder:"Select language",options:_},null,8,["modelValue"])]),r(y)?(m(),T(r(G),{key:0,type:"error",message:r(y)},null,8,["message"])):D("",!0),o(r(L),{type:"submit",variant:"primary",size:"lg",block:"",loading:r(g),class:"w-full"},{default:v(()=>[r(g)?(m(),c("span",W,a[9]||(a[9]=[l("svg",{class:"animate-spin -ml-1 mr-3 h-4 w-4 text-white",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24"},[l("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"}),l("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"})],-1),d(" Creating Account... ",-1)]))):(m(),c("span",Q,"Create Account"))]),_:1},8,["loading"]),a[11]||(a[11]=l("div",{class:"text-center"},[l("p",{class:"text-xs text-gray-500"},[d(" By creating an account, you agree to our "),l("a",{href:"#",class:"text-primary-600 hover:text-primary-700 underline"},"Terms of Service"),d(" and "),l("a",{href:"#",class:"text-primary-600 hover:text-primary-700 underline"},"Privacy Policy")])],-1)),a[12]||(a[12]=l("div",{class:"relative"},[l("div",{class:"absolute inset-0 flex items-center"},[l("div",{class:"w-full border-t border-gray-300"})]),l("div",{class:"relative flex justify-center text-sm"},[l("span",{class:"px-2 bg-white text-gray-500"},"Already have an account?")])],-1)),l("div",X,[o(q,{to:"/login",class:"text-primary-600 hover:text-primary-700 font-medium transition-colors"},{default:v(()=>a[10]||(a[10]=[d(" Sign in to your account ",-1)])),_:1,__:[10]})])],32)]),_:1}),l("div",Z,[l("p",ee," © "+R(S.value)+" Facility Plus. All rights reserved. ",1)])])])}}},ie=B(ae,[["__scopeId","data-v-d44df5a0"]]);export{ie as default};