1import{r as g,j as e}from"./vendor-react-DpJo2rX4.js";import{a as y,t as x,L as d}from"./index-CW5lWpUf.js";import{c as w,R as N,u as E}from"./AppRoutes-DWRZnAK0.js";import{D as v}from"./DashboardLayout-uWWeINxs.js";import{e as C}from"./editorialAssets-BoNiU_Ll.js";import{S as j,A as u,aa as k,a as A,b as f,n as L,i as F,m as z,j as q}from"./vendor-icons-2DXNqN0x.js";import"./vendor-data-BHpyMrnE.js";import"./vendor-ui-B4dteUDH.js";const T={legalFullName:"",displayName:"",age:"",country:"",city:"",placeStaying:"",email:"",phone:"",experienceLevel:"prefer_not_to_say",interestTypes:"",lookingFor:"",preferredProfessional:"",preferredDate:"",preferredTime:"",preferredLocation:"",contactPreference:"platform_message",howHeard:"",additionalNotes:"",password:"",confirmPassword:"",ageConfirmed:!1,accuracyConfirmed:!1,termsAccepted:!1,privacyAccepted:!1,marketingConsent:!1};function D({eyebrow:c,title:r,body:l,children:s}){return e.jsx("main",{"data-loc":"client/src/pages/RegisterPage.tsx:25",className:"account-page",children:e.jsxs("div",{"data-loc":"client/src/pages/RegisterPage.tsx:25",className:"account-frame",children:[e.jsx("div",{"data-loc":"client/src/pages/RegisterPage.tsx:25",className:"account-editorial","aria-hidden":"true",children:e.jsx("img",{"data-loc":"client/src/pages/RegisterPage.tsx:25",src:C.doorLeather,alt:"",loading:"lazy",decoding:"async"})}),e.jsxs(d,{"data-loc":"client/src/pages/RegisterPage.tsx:25",href:"/",className:"account-back",children:[e.jsx(k,{"data-loc":"client/src/pages/RegisterPage.tsx:25",size:15})," Back to public site"]}),e.jsx(N,{"data-loc":"client/src/pages/RegisterPage.tsx:25"}),e.jsxs("div",{"data-loc":"client/src/pages/RegisterPage.tsx:25",className:"account-card",children:[e.jsxs("div",{"data-loc":"client/src/pages/RegisterPage.tsx:25",className:"account-card-heading",children:[e.jsx("span",{"data-loc":"client/src/pages/RegisterPage.tsx:25",className:"eyebrow",children:c}),e.jsx("h1",{"data-loc":"client/src/pages/RegisterPage.tsx:25",children:r}),e.jsx("p",{"data-loc":"client/src/pages/RegisterPage.tsx:25",children:l})]}),s]}),e.jsxs("p",{"data-loc":"client/src/pages/RegisterPage.tsx:25",className:"account-footnote",children:["GODDESS PLEASURE CONNECT · Private by design. ",e.jsx(d,{"data-loc":"client/src/pages/RegisterPage.tsx:25",href:"/trust",children:"Privacy & Trust Centre"})]})]})})}function M({error:c}){return c?e.jsxs("div",{"data-loc":"client/src/pages/RegisterPage.tsx:29",className:"account-message is-error",role:"alert",children:[e.jsx(A,{"data-loc":"client/src/pages/RegisterPage.tsx:29",size:16}),e.jsx("span",{"data-loc":"client/src/pages/RegisterPage.tsx:29",children:c})]}):null}function m({complete:c,required:r="Required before submitting"}){return e.jsx("small",{"data-loc":"client/src/pages/RegisterPage.tsx:33",className:`field-completion-hint ${c?"is-complete":""}`,children:c?"Added":r})}function $(){const[,c]=y(),[r,l]=g.useState(""),[s,p]=g.useState(T),t=(a,P)=>p(S=>({...S,[a]:P})),o=x.registration.submit.useMutation({onSuccess:a=>c(`/registration-success?reference=${encodeURIComponent(a.registrationReference)}`),onError:a=>l(a.message)}),i=()=>!s.displayName||!s.age||Number(s.age)<18||!s.email?"Enter your display name, age, and email, then confirm that you are 18 or older.":!s.password||s.password.length<12||!s.password.match(/[A-Za-z]/)||!s.password.match(/\d/)||s.password!==s.confirmPassword||!s.ageConfirmed||!s.accuracyConfirmed||!s.termsAccepted||!s.privacyAccepted?"Confirm your password and each required acknowledgement before creating your account.":"",n=s.ageConfirmed&&s.accuracyConfirmed&&s.termsAccepted&&s.privacyAccepted;return e.jsxs(D,{"data-loc":"client/src/pages/RegisterPage.tsx:48",eyebrow:"Register / become a member",title:e.jsxs(e.Fragment,{children:["Begin with",e.jsx("br",{"data-loc":"client/src/pages/RegisterPage.tsx:48"}),e.jsx("em",{"data-loc":"client/src/pages/RegisterPage.tsx:48",children:"intention."})]}),body:"Complete the essentials in one short form. Your account begins in review and does not activate membership or bookings on its own.",children:[e.jsxs("section",{"data-loc":"client/src/pages/RegisterPage.tsx:49",className:"registration-simple-intro","aria-label":"Simple registration",children:[e.jsx(j,{"data-loc":"client/src/pages/RegisterPage.tsx:49",size:18,"aria-hidden":"true"}),e.jsxs("div",{"data-loc":"client/src/pages/RegisterPage.tsx:49",children:[e.jsx("strong",{"data-loc":"client/src/pages/RegisterPage.tsx:49",children:"One short registration form"}),e.jsx("p",{"data-loc":"client/src/pages/RegisterPage.tsx:49",children:"Enter the required account details, then create your account once you are ready."})]})]}),e.jsxs("form",{"data-loc":"client/src/pages/RegisterPage.tsx:50",className:"account-form registration-form registration-one-step-form",onSubmit:a=>{a.preventDefault(),l("");const P=i();if(P){l(P);return}o.mutate({...s,legalFullName:s.legalFullName||void 0,country:s.country||void 0,city:s.city||void 0,placeStaying:s.placeStaying||void 0,phone:s.phone||void 0,experienceLevel:s.experienceLevel==="prefer_not_to_say"?void 0:s.experienceLevel,interestTypes:s.interestTypes||void 0,lookingFor:s.lookingFor||void 0,preferredProfessional:s.preferredProfessional||void 0,preferredDate:s.preferredDate||void 0,preferredTime:s.preferredTime||void 0,preferredLocation:s.preferredLocation||void 0,howHeard:s.howHeard||void 0,additionalNotes:s.additionalNotes||void 0,age:Number(s.age)})},children:[e.jsxs("section",{"data-loc":"client/src/pages/RegisterPage.tsx:51",className:"registration-single-section","aria-labelledby":"registration-essential-title",children:[e.jsxs("div",{"data-loc":"client/src/pages/RegisterPage.tsx:51",className:"registration-single-section-heading",children:[e.jsx("span",{"data-loc":"client/src/pages/RegisterPage.tsx:51",className:"eyebrow",children:"Required"}),e.jsx("h2",{"data-loc":"client/src/pages/RegisterPage.tsx:51",id:"registration-essential-title",children:"Create your account"}),e.jsx("p",{"data-loc":"client/src/pages/RegisterPage.tsx:51",children:"We collect an age value, not your date of birth."})]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:51",children:["Preferred / display name",e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:51",value:s.displayName,onChange:a=>t("displayName",a.target.value),required:!0}),e.jsx(m,{"data-loc":"client/src/pages/RegisterPage.tsx:51",complete:!!s.displayName.trim()})]}),e.jsxs("div",{"data-loc":"client/src/pages/RegisterPage.tsx:51",className:"account-form-grid",children:[e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:51",children:["Age",e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:51",type:"number",min:"18",max:"130",value:s.age,onChange:a=>t("age",a.target.value),required:!0}),e.jsx(m,{"data-loc":"client/src/pages/RegisterPage.tsx:51",complete:Number(s.age)>=18,required:"18+ required"})]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:51",children:["Email address",e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:51",autoComplete:"email",type:"email",value:s.email,onChange:a=>t("email",a.target.value),required:!0}),e.jsx(m,{"data-loc":"client/src/pages/RegisterPage.tsx:51",complete:!!s.email.trim()})]})]})]}),e.jsxs("details",{"data-loc":"client/src/pages/RegisterPage.tsx:52",className:"registration-optional-details",children:[e.jsx("summary",{"data-loc":"client/src/pages/RegisterPage.tsx:52",children:"Optional preferences and contact details"}),e.jsxs("div",{"data-loc":"client/src/pages/RegisterPage.tsx:52",className:"registration-optional-details-content",children:[e.jsx("p",{"data-loc":"client/src/pages/RegisterPage.tsx:52",children:"Only add these details if they are useful for your future request."}),e.jsxs("div",{"data-loc":"client/src/pages/RegisterPage.tsx:52",className:"account-form-grid",children:[e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:52",children:["Full name",e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:52",autoComplete:"name",value:s.legalFullName,onChange:a=>t("legalFullName",a.target.value)})]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:52",children:["Phone number",e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:52",autoComplete:"tel",value:s.phone,onChange:a=>t("phone",a.target.value)})]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:52",children:["Country",e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:s.country,onChange:a=>t("country",a.target.value)})]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:52",children:["City / town",e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:s.city,onChange:a=>t("city",a.target.value)})]})]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:52",children:["Place currently staying",e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:s.placeStaying,onChange:a=>t("placeStaying",a.target.value)})]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:52",children:["Experience level",e.jsxs("select",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:s.experienceLevel,onChange:a=>t("experienceLevel",a.target.value),children:[e.jsx("option",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:"prefer_not_to_say",children:"Prefer not to say"}),e.jsx("option",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:"new",children:"New to this"}),e.jsx("option",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:"beginner",children:"Beginner"}),e.jsx("option",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:"some_experience",children:"Some experience"}),e.jsx("option",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:"experienced",children:"Experienced"}),e.jsx("option",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:"very_experienced",children:"Very experienced"})]})]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:52",children:["Interest categories",e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:s.interestTypes,onChange:a=>t("interestTypes",a.target.value),placeholder:"Membership, meeting a professionalâ¦"})]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:52",children:["What are you looking for?",e.jsx("textarea",{"data-loc":"client/src/pages/RegisterPage.tsx:52",rows:3,value:s.lookingFor,onChange:a=>t("lookingFor",a.target.value)})]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:52",children:["Preferred professional",e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:s.preferredProfessional,onCh
1ange:a=>t("preferredProfessional",a.target.value),placeholder:"No preference"})]}),e.jsxs("div",{"data-loc":"client/src/pages/RegisterPage.tsx:52",className:"account-form-grid",children:[e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:52",children:["Preferred date",e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:52",type:"date",value:s.preferredDate,onChange:a=>t("preferredDate",a.target.value)})]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:52",children:["Preferred time",e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:52",type:"time",value:s.preferredTime,onChange:a=>t("preferredTime",a.target.value)})]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:52",children:["Preferred city",e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:s.preferredLocation,onChange:a=>t("preferredLocation",a.target.value)})]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:52",children:["How did you hear about us?",e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:s.howHeard,onChange:a=>t("howHeard",a.target.value)})]})]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:52",children:["Preferred contact method",e.jsxs("select",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:s.contactPreference,onChange:a=>t("contactPreference",a.target.value),children:[e.jsx("option",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:"platform_message",children:"Platform messaging"}),e.jsx("option",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:"email",children:"Email"}),e.jsx("option",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:"phone",children:"Phone"}),e.jsx("option",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:"sms",children:"SMS"}),e.jsx("option",{"data-loc":"client/src/pages/RegisterPage.tsx:52",value:"whatsapp",children:"WhatsApp (only if later supported)"})]})]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:52",children:["Additional notes",e.jsx("textarea",{"data-loc":"client/src/pages/RegisterPage.tsx:52",rows:3,value:s.additionalNotes,onChange:a=>t("additionalNotes",a.target.value)})]})]})]}),e.jsxs("section",{"data-loc":"client/src/pages/RegisterPage.tsx:53",className:"registration-single-section","aria-labelledby":"registration-security-title",children:[e.jsxs("div",{"data-loc":"client/src/pages/RegisterPage.tsx:53",className:"registration-single-section-heading",children:[e.jsx("span",{"data-loc":"client/src/pages/RegisterPage.tsx:53",className:"eyebrow",children:"Required"}),e.jsx("h2",{"data-loc":"client/src/pages/RegisterPage.tsx:53",id:"registration-security-title",children:"Secure your account"})]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:53",children:["Password",e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:53",autoComplete:"new-password",type:"password",minLength:12,value:s.password,onChange:a=>t("password",a.target.value),required:!0}),e.jsx("small",{"data-loc":"client/src/pages/RegisterPage.tsx:53",className:"field-hint",children:"At least 12 characters, including a letter and a number."}),e.jsx(m,{"data-loc":"client/src/pages/RegisterPage.tsx:53",complete:s.password.length>=12&&/[A-Za-z]/.test(s.password)&&/\d/.test(s.password),required:"12+ characters, a letter, and a number"})]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:53",children:["Confirm password",e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:53",autoComplete:"new-password",type:"password",minLength:12,value:s.confirmPassword,onChange:a=>t("confirmPassword",a.target.value),required:!0}),e.jsx(m,{"data-loc":"client/src/pages/RegisterPage.tsx:53",complete:!!s.password&&s.password===s.confirmPassword,required:"Must match your password"})]}),e.jsxs("div",{"data-loc":"client/src/pages/RegisterPage.tsx:53",className:"consent-stack",children:[e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:53",children:[e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:53",type:"checkbox",checked:s.ageConfirmed,onChange:a=>t("ageConfirmed",a.target.checked)})," I confirm that I am 18 years of age or older."]}
1),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:53",children:[e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:53",type:"checkbox",checked:s.accuracyConfirmed,onChange:a=>t("accuracyConfirmed",a.target.checked)})," I confirm that my information is accurate."]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:53",children:[e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:53",type:"checkbox",checked:s.termsAccepted,onChange:a=>t("termsAccepted",a.target.checked)})," I agree to the ",e.jsx(d,{"data-loc":"client/src/pages/RegisterPage.tsx:53",href:"/terms",children:"Terms of Service"}),"."]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:53",children:[e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:53",type:"checkbox",checked:s.privacyAccepted,onChange:a=>t("privacyAccepted",a.target.checked)})," I acknowledge the ",e.jsx(d,{"data-loc":"client/src/pages/RegisterPage.tsx:53",href:"/privacy",children:"Privacy Policy"}),"."]}),e.jsxs("label",{"data-loc":"client/src/pages/RegisterPage.tsx:53",children:[e.jsx("input",{"data-loc":"client/src/pages/RegisterPage.tsx:53",type:"checkbox",checked:s.marketingConsent,onChange:a=>t("marketingConsent",a.target.checked)})," I would like optional marketing communications."]}),e.jsx(m,{"data-loc":"client/src/pages/RegisterPage.tsx:53",complete:n,required:"Four required acknowledgements remain"})]})]}),e.jsx("p",{"data-loc":"client/src/pages/RegisterPage.tsx:54",className:"registration-simple-note",children:"After submission, your account starts in pending review. Membership, bookings, and payments remain inactive until separately reviewed."}),e.jsx("div",{"data-loc":"client/src/pages/RegisterPage.tsx:54",className:"account-form-row",children:e.jsxs("button",{"data-loc":"client/src/pages/RegisterPage.tsx:54",className:"btn btn-primary",disabled:o.isPending,type:"submit",children:[o.isPending?"Submittingâ¦":"Create my account"," ",e.jsx(u,{"data-loc":"client/src/pages/RegisterPage.tsx:54",size:16})]})}),e.jsx(M,{"data-loc":"client/src/pages/RegisterPage.tsx:54",error:r||o.error?.message})]}),e.jsxs("p",{"data-loc":"client/src/pages/RegisterPage.tsx:55",className:"account-switch",children:["Already registered? ",e.jsx(d,{"data-loc":"client/src/pages/RegisterPage.tsx:55",href:"/login",className:"account-link",children:"Sign in"})," · Professionals may ",e.jsx("a",{"data-loc":"client/src/pages/RegisterPage.tsx:55",href:w,className:"account-link",children:"contact booking management on Telegram"}),"."]})]})}function b(c){return typeof window>"u"?"":new URLSearchParams(window.location.search).get(c)??""}function h({eyebrow:c,title:r,body:l,children:s}){return e.jsx("main",{"data-loc":"client/src/pages/AccountPages.tsx:16",className:"account-page",children:e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:16",className:"account-frame",children:[e.jsx("div",{"data-loc":"client/src/pages/AccountPages.tsx:16",className:"account-editorial","aria-hidden":"true",children:e.jsx("img",{"data-loc":"client/src/pages/AccountPages.tsx:16",src:C.doorLeather,alt:"",loading:"lazy",decoding:"async"})}),e.jsxs(d,{"data-loc":"client/src/pages/AccountPages.tsx:16",href:"/",className:"account-back",children:[e.jsx(k,{"data-loc":"client/src/pages/AccountPages.tsx:16",size:15})," Back to public site"]}),e.jsx(N,{"data-loc":"client/src/pages/AccountPages.tsx:16"}),e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:16",className:"account-card",children:[e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:16",className:"account-card-heading",children:[e.jsx("span",{"data-loc":"client/src/pages/AccountPages.tsx:16",className:"eyebrow",children:c}),e.jsx("h1",{"data-loc":"client/src/pages/AccountPages.tsx:16",children:r}),e.jsx("p",{"data-loc":"client/src/pages/AccountPages.tsx:16",children:l})]}),s]}),e.jsxs("p",{"data-loc":"client/src/pages/AccountPages.tsx:16",className:"account-footnote",children:["GODDESS PLEASURE CONNECT · Private by design. ",e.jsx(d,{"data-loc":"client/src/pages/AccountPages.tsx:16",href:"/trust",children:"Privacy & Trust Centre"})]})]})})}function R({message:c,error:r}){return c||r?e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:19",className:`account-message ${r?"is-error":"is-success"}`,role:r?"alert":"status",children:[r?e.jsx(A,{"data-loc":"client/src/pages/AccountPages.tsx:19",size:16}):e.jsx(q,{"data-loc":"client/src/pages/AccountPages.tsx:19",size:16}),e.jsx("span",{"data-loc":"client/src/pages/AccountPages.tsx:19",children:r||c})]}):null}function V(){const[,c]=y(),[r,l]=g.useState(""),[s,p]=g.useState(""),[t,o]=g.useState(""),i=x.auth.login.useMutation({onSuccess:n=>{c(n.role==="admin"?"/admin":"/welcome")},onError:n=>o(n.message)});return e.jsxs(h,{"data-loc":"client/src/pages/AccountPages.tsx:33",eyebrow:"Welcome back",title:e.jsxs(e.Fragment,{children:["Enter",e.jsx("br",{"data-loc":"client/src/pages/AccountPages.tsx:33"}),e.jsx("em",{"data-loc":"client/src/pages/AccountPages.tsx:33",children:"privately."})]}),body:"Sign in to continue to your account. Client accounts and administrator access are separated by role and session.",children:[e.jsxs("form",{"data-loc":"client/src/pages/AccountPages.tsx:33",className:"account-form",onSubmit:n=>{n.preventDefault(),o(""),i.mutate({email:r,password:s})},children:[e.jsxs("label",{"data-loc":"client/src/pages/AccountPages.tsx:33",children:["Email address",e.jsx("input",{"data-loc":"client/src/pages/AccountPages.tsx:33",autoComplete:"email",type:"email",value:r,onChange:n=>l(n.target.value),required:!0})]}),e.jsxs("label",{"data-loc":"client/src/pages/AccountPages.tsx:33",children:["Password",e.jsx("input",{"data-loc":"client/src/pages/AccountPages.tsx:33",autoComplete:"current-password",type:"password",value:s,onChange:n=>p(n.target.value),required:!0})]}),e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:33",className:"account-form-row",children:[e.jsx(d,{"data-loc":"client/src/pages/AccountPages.tsx:33",href:"/forgot-password",className:"account-link",children:"Forgot password?"}),e.jsxs("button",{"data-loc":"client/src/pages/AccountPages.tsx:33",className:"btn btn-primary",disabled:i.isPending,type:"submit",children:[i.isPending?"Signing inâ¦":"Sign in"," ",e.jsx(f,{"data-loc":"client/src/pages/AccountPages.tsx:33",size:16})]})]}),e.jsx(R,{"data-loc":"client/src/pages/AccountPages.tsx:33",error:t})]}),e.jsx("div",{"data-loc":"client/src/pages/AccountPages.tsx:33",className:"account-divider",children:e.jsx("span",{"data-loc":"client/src/pages/AccountPages.tsx:33",children:"New to the circle?"})}),e.jsxs(d,{"data-loc":"client/src/pages/AccountPages.tsx:33",href:"/register",className:"btn btn-outline account-full-button",children:["Create a client account ",e.jsx(u,{"data-loc":"client/src/pages/AccountPages.tsx:33",size:16})]})]})}function G(){const c=b("reference"),r=/^[A-Z0-9-]{4,48}$/i.test(c)?c.toUpperCase():"Recorded privately",l=[{icon:f,title:"Sign in to your private view",body:"Use the email and password you just created. Your Private Welcome and dashboard keep account updates in one place.",href:"/login",action:"Sign in"},{icon:L,title:"Plan a considered request",body:"Bookings and private dining requests remain subject to account review and availability. Nothing is reserved by registration alone.",href:"/welcome",action:"Open Private Welcome"},{icon:F,title:"Review membership thoughtfully",body:"Membership choices and payment-support steps remain review-led. A registration never activates membership or creates a digital credential.",href:"/login",action:"Sign in to review membership"}];return e.jsxs(h,{"data-loc":"client/src/pages/AccountPages.tsx:55",eyebrow:"Registration received",title:e.jsxs(e.Fragment,{children:["Welcome,",e.jsx("br",{"data-loc":"client/src/pages/AccountPages.tsx:55"}),e.jsx("em",{"data-loc":"client/src/pages/AccountPages.tsx:55",children:"privately."})]}),body:"Your account has been created and your registration is now in private review. The next steps below explain what you can do safely without implying an approval or automatic outcome.",children:[e.jsxs("section",{"data-loc":"client/src/pages/AccountPages.tsx:55",className:"registration-success-reference",children:[e.jsx(j,{"data-loc":"client/src/pages/AccountPages.tsx:55",size:22}),e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:55",children:[e.jsx("span",{"data-loc":"client/src/pages/AccountPages.tsx:55",children:"Your private reference"}),e.jsx("strong",{"data-loc":"client/src/pages/AccountPages.tsx:55",children:r}),e.jsx("small",{"data-loc":"client/src/pages/AccountPages.tsx:55",children:"Keep this only for a support conversation if you need it. Do not post it publicly."})]})]}),e.jsx("section",{"data-loc":"client/src/pages/AccountPages.tsx:55",className:"registration-success-steps","aria-label":"Private account next steps",children:l.map(({icon:s,title:p,body:t,href:o,action:i})=>e.jsxs("article",{"data-loc":"client/src/pages/AccountPages.tsx:55",children:[e.jsx("span",{"data-loc":"client/src/pages/AccountPages.tsx:55",children:e.jsx(s,{"data-loc":"client/src/pages/AccountPages.tsx:55",size:18})}),e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:55",children:[e.jsx("h2",{"data-loc":"client/src/pages/AccountPages.tsx:55",children:p}),e.jsx("p",{"data-loc":"client/src/pages/AccountPages.tsx:55",children:t}),e.jsxs(d,{"data-loc":"client/src/pages/AccountPages.tsx:55",href:o,className:"account-link",children:[i," ",e.jsx(u,{"data-loc":"client/src/pages/AccountPages.tsx:55",size:14})]})]})]},p))}),e.jsxs("section",{"data-loc":"client/src/pages/AccountPages.tsx:55",className:"registration-success-note",children:[e.jsx(z,{"data-loc":"client/src/pages/AccountPages.tsx:55",size:18}),e.jsxs("p",{"data-loc":"client/src/pages/AccountPages.tsx:55",children:[e.jsx("strong",{"data-loc":"client/src/pages/AccountPages.tsx:55",children:"Need to share an identity document?"})," Use the protected Document Support page only after the support team asks you to. Do not email or paste document numbers, passwords, payment details, or other credentials."]})]}),e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:55",className:"account-form-row",children:[e.jsxs(d,{"data-loc":"client/src/pages/AccountPages.tsx:55",href:"/login",className:"btn btn-primary",children:["Sign in privately ",e.jsx(f,{"data-loc":"client/src/pages/AccountPages.tsx:55",size:16})]}),e.jsxs(d,{"data-loc":"client/src/pages/AccountPages.tsx:55",href:"/trust",className:"btn btn-outline",children:["Read privacy & trust ",e.jsx(j,{"data-loc":"client/src/pages/AccountPages.tsx:55",size:16})]})]})]})}function K(){const c=g.useMemo(()=>b("token"),[]),[r,l]=g.useState(""),[s,p]=g.useState(""),[t,o]=g.useState(""),i=x.auth.verifyEmail.useMutation({onSuccess:a=>p(a.message),onError:a=>o(a.message)});g.useEffect(()=>{c&&i.mutate({token:c})},[c]);const n=c||r;return e.jsx(h,{"data-loc":"client/src/pages/AccountPages.tsx:63",eyebrow:"Email confirmation",title:e.jsxs(e.Fragment,{children:["Confirm",e.jsx("br",{"data-loc":"client/src/pages/AccountPages.tsx:63"}),e.jsx("em",{"data-loc":"client/src/pages/AccountPages.tsx:63",children:"your email."})]}),body:"Email confirmation is optional and is not required to sign in. Any confirmation token remains single-use and expires automatically.",children:e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:63",className:"verification-panel",children:[e.jsx(j,{"data-loc":"client/src/pages/AccountPages.tsx:63",size:30}),e.jsx("p",{"data-loc":"client/src/pages/AccountPages.tsx:63",children:i.isPending?"Checking your confirmation linkâ¦":s||t||"Enter an existing confirmation token, or sign in normally."}),!c&&!s&&e.jsxs("form",{"data-loc":"client/src/pages/AccountPages.tsx:63",className:"verification-form",onSubmit:a=>{a.preventDefault(),o(""),i.mutate({token:n})},children:[e.jsxs("label",{"data-loc":"client/src/pages/AccountPages.tsx:63",children:["Confirmation token",e.jsx("input",{"data-loc":"client/src/pages/AccountPages.tsx:63",value:r,placeholder:"64-character token",onChange:a=>l(a.target.value),required:!0,pattern:"[a-fA-F0-9]{64}"})]}),e.jsxs("button",{"data-loc":"client/src/pages/AccountPages.tsx:63",className:"btn btn-primary",disabled:i.isPending||n.length!==64,type:"submit",children:[i.isPending?"Checkingâ¦":"Confirm email"," ",e.jsx(u,{"data-loc":"client/src/pages/AccountPages.tsx:63",size:16})]})]}),e.jsxs(d,{"data-loc":"client/src/pages/AccountPages.tsx:63",href:"/login",className:"btn btn-outline",children:["Continue to sign in ",e.jsx(f,{"data-loc":"client/src/pages/AccountPages.tsx:63",size:16})]})]})})}function Z(){const[c,r]=g.useState(""),[l,s]=g.useState(""),[p,t]=g.useState(""),[o,i]=g.useState(""),n=x.auth.forgotPassword.useMutation({onSuccess:a=>{s(a.message),i(a.resetToken??"")},onError:a=>t(a.message)});return e.jsxs(h,{"data-loc":"client/src/pages/AccountPages.tsx:69",eyebrow:"Account recovery",t
1itle:e.jsxs(e.Fragment,{children:["Find your",e.jsx("br",{"data-loc":"client/src/pages/AccountPages.tsx:69"}),e.jsx("em",{"data-loc":"client/src/pages/AccountPages.tsx:69",children:"way back."})]}),body:"Enter the email associated with your account. Reset links are short-lived and single-use.",children:[e.jsxs("form",{"data-loc":"client/src/pages/AccountPages.tsx:69",className:"account-form",onSubmit:a=>{a.preventDefault(),n.mutate({email:c})},children:[e.jsxs("label",{"data-loc":"client/src/pages/AccountPages.tsx:69",children:["Email address",e.jsx("input",{"data-loc":"client/src/pages/AccountPages.tsx:69",autoComplete:"email",type:"email",value:c,onChange:a=>r(a.target.value),required:!0})]}),e.jsxs("button",{"data-loc":"client/src/pages/AccountPages.tsx:69",className:"btn btn-primary",disabled:n.isPending,type:"submit",children:[n.isPending?"Preparingâ¦":"Send reset instructions"," ",e.jsx(u,{"data-loc":"client/src/pages/AccountPages.tsx:69",size:16})]}),e.jsx(R,{"data-loc":"client/src/pages/AccountPages.tsx:69",message:l,error:p}),o&&e.jsxs(d,{"data-loc":"client/src/pages/AccountPages.tsx:69",className:"dev-link",href:`/reset-password?token=${o}`,children:["Development reset link · continue securely ",e.jsx(u,{"data-loc":"client/src/pages/AccountPages.tsx:69",size:14})]})]}),e.jsx("p",{"data-loc":"client/src/pages/AccountPages.tsx:69",className:"account-switch",children:e.jsx(d,{"data-loc":"client/src/pages/AccountPages.tsx:69",href:"/login",className:"account-link",children:"Back to sign in"})})]})}function Q(){const c=g.useMemo(()=>b("token"),[]),[r,l]=g.useState(""),[s,p]=g.useState(""),[t,o]=g.useState(""),i=x.auth.resetPassword.useMutation({onSuccess:n=>p(n.message),onError:n=>o(n.message)});return e.jsx(h,{"data-loc":"client/src/pages/AccountPages.tsx:75",eyebrow:"Set a new password",title:e.jsxs(e.Fragment,{children:["Start",e.jsx("br",{"data-loc":"client/src/pages/AccountPages.tsx:75"}),e.jsx("em",{"data-loc":"client/src/pages/AccountPages.tsx:75",children:"fresh."})]}),body:"Choose a new password. Existing sessions are revoked after a successful reset.",children:e.jsxs("form",{"data-loc":"client/src/pages/AccountPages.tsx:75",className:"account-form",onSubmit:n=>{n.preventDefault(),i.mutate({token:c,password:r})},children:[e.jsxs("label",{"data-loc":"client/src/pages/AccountPages.tsx:75",children:["New password",e.jsx("input",{"data-loc":"client/src/pages/AccountPages.tsx:75",autoComplete:"new-password",type:"password",minLength:12,value:r,onChange:n=>l(n.target.value),required:!0}),e.jsx("small",{"data-loc":"client/src/pages/AccountPages.tsx:75",className:"field-hint",children:"At least 12 characters, including a letter and a number."})]}),e.jsxs("button",{"data-loc":"client/src/pages/AccountPages.tsx:75",className:"btn btn-primary",disabled:i.isPending||!c,type:"submit",children:[i.isPending?"Updatingâ¦":"Update password"," ",e.jsx(u,{"data-loc":"client/src/pages/AccountPages.tsx:75",size:16})]}),e.jsx(R,{"data-loc":"client/src/pages/AccountPages.tsx:75",message:s,error:t}),s&&e.jsx(d,{"data-loc":"client/src/pages/AccountPages.tsx:75",href:"/login",className:"account-link",children:"Return to sign in"})]})})}function J({area:c,requiredRole:r,title:l,eyebrow:s,body:p}){const{user:t,loading:o}=E(),[,i]=y(),n=c==="clientArea"?x.clientArea.useQuery(void 0,{enabled:!!t&&(t.role==="client"||t.role==="user")}):x.adminArea.useQuery(void 0,{enabled:!!t&&t.role==="admin"});if(g.useEffect(()=>{!o&&!t&&i("/login")},[o,t,i]),o||n.isLoading)return e.jsx(v,{"data-loc":"client/src/pages/AccountPages.tsx:82",children:e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:82",className:"dashboard-state",children:[e.jsx("div",{"data-loc":"client/src/pages/AccountPages.tsx:82",className:"account-spinner"}),e.jsx("p",{"data-loc":"client/src/pages/AccountPages.tsx:82",children:"Preparing your private dashboardâ¦"})]})});if(!t)return null;const a=t.role==="user"?"client":t.role;return a!==r?e.jsx(v,{"data-loc":"client/src/pages/AccountPages.tsx:85",children:e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:85",className:"dashboard-state",children:[e.jsx(A,{"data-loc":"client/src/pages/AccountPages.tsx:85",size:28}),e.jsx("h1",{"data-loc":"client/src/pages/AccountPages.tsx:85",children:"Access is restricted"}),e.jsx("p",{"data-loc":"client/src/pages/AccountPages.tsx:85",children:"This account does not have access to this dashboard."}),e.jsxs(d,{"data-loc":"client/src/pages/AccountPages.tsx:85",href:a==="admin"?"/admin":"/dashboard",className:"btn btn-primary",children:["Continue ",e.jsx(u,{"data-loc":"client/src/pages/AccountPages.tsx:85",size:16})]})]})}):e.jsx(v,{"data-loc":"client/src/pages/AccountPages.tsx:86",children:e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:86",className:"dashboard-page",children:[e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:86",className:"dashboard-heading",children:[e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:86",children:[e.jsx("span",{"data-loc":"client/src/pages/AccountPages.tsx:86",className:"eyebrow",children:s}),e.jsx("h1",{"data-loc":"client/src/pages/AccountPages.tsx:86",children:l}),e.jsx("p",{"data-loc":"client/src/pages/AccountPages.tsx:86",children:p})]}),e.jsxs("span",{"data-loc":"client/src/pages/AccountPages.tsx:86",className:"dashboard-role",children:[a," account"]})]}),e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:86",className:"dashboard-grid",children:[e.jsxs("section",{"data-loc":"client/src/pages/AccountPages.tsx:86",className:"dashboard-panel",children:[e.jsx("span",{"data-loc":"client/src/pages/AccountPages.tsx:86",className:"eyebrow",children:"Account overview"}),e.jsxs("h2",{"data-loc":"client/src/pages/AccountPages.tsx:86",children:["Welcome, ",t.name||"there","."]}),e.jsx("p",{"data-loc":"client/src/pages/AccountPages.tsx:86",children:"Your authenticated session is active. Future stages can add the role-specific tools beneath this stable boundary."}),e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:86",className:"dashboard-stat-row",children:[e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:86",children:[e.jsx("strong",{"data-loc":"client/src/pages/AccountPages.tsx:86",children:"Active"}),e.jsx("span",{"data-loc":"client/src/pages/AccountPages.tsx:86",children:"Session status"})]}),e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:86",children:[e.jsx("strong",{"data-loc":"client/src/pages/AccountPages.tsx:86",children:t.emailVerifiedAt?"Verified":"Pending"}),e.jsx("span",{"data-loc":"client/src/pages/AccountPages.tsx:86",children:"Email status"})]}),e.jsxs("div",{"data-loc":"client/src/pages/AccountPages.tsx:86",children:[e.jsx("strong",{"data-loc":"client/src/pages/AccountPages.tsx:86",children:"Protected"}),e.jsx("span",{"data-loc":"client/src/pages/AccountPages.tsx:86",children:"Access layer"})]})]})]}),e.jsxs("section",{"data-loc":"client/src/pages/AccountPages.tsx:86",className:"dashboard-panel dashboard-panel-accent",children:[e.jsx("span",{"data-loc":"client/src/pages/AccountPages.tsx:86",className:"eyebrow",children:"Next layer"}),e.jsx("h2",{"data-loc":"client/src/pages/AccountPages.tsx:86",children:a==="client"?"Your considered connections.":"Your platform overview."}),e.jsx("p",{"data-loc":"client/src/pages/AccountPages.tsx:86",children:"Navigation is intentionally ready for future bookings, profiles, administration, and secure account management."}),e.jsxs("a",{"data-loc":"client/src/pages/AccountPages.tsx:86",href:w,className:"btn btn-outline",children:["Contact the team on Telegram ",e.jsx(u,{"data-loc":"client/src/pages/AccountPages.tsx:86",size:16})]})]})]})]})})}export{Z as ForgotPasswordPage,V as LoginPage,J as ProtectedDashboard,$ as RegisterPage,G as RegistrationSuccessPage,Q as ResetPasswordPage,K as VerifyEmailPage};
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.