1import{a as e,n as t,t as n}from"./jsx-runtime-B-hcVAMW.js";import{f as r,o as i}from"./index-C7XkUNph.js";import{n as a}from"./client-BwZKWtWK.js";import{i as o,n as s,r as c,t as l}from"./contact-CpJGWS99.js";var u=e(t(),1),d=n(),f=l({name:s().trim().min(1,{message:`Name is required`}).max(100,{message:`Name must be less than 100 characters`}),email:s().trim().email({message:`Invalid email address`}).max(255,{message:`Email must be less than 255 characters`}),message:s().trim().min(1,{message:`Message is required`}).max(2e3,{message:`Message must be less than 2000 characters`})}),p=()=>{let[e,t]=(0,u.useState)(!1),{register:n,handleSubmit:s,reset:l,formState:{errors:p}}=o({resolver:c(f),defaultValues:{name:``,email:``,message:``}});return(0,d.jsx)(i,{children:(0,d.jsx)(`section`,{className:`section-pad contact`,children:(0,d.jsxs)(`div`,{className:`wrap contact-grid`,children:[(0,d.jsxs)(`div`,{className:`contact-intro reveal`,children:[(0,d.jsx)(`h1`,{children:`Talk to our team`}),(0,d.jsx)(`p`,{className:`lead`,children:`Raily helps data teams make their high-value data relevant and accessible in the AI era. Our team is here to help you enable secure, governed access for AI applications and explore how Raily unlocks new engagement and value.`})]}),(0,d.jsx)(`div`,{className:`contact-card reveal d1`,children:(0,d.jsxs)(`form`,{onSubmit:s(async e=>{t(!0);try{let{error:t}=await a.functions.invoke(`send-contact-email`,{body:{name:e.name,email:e.email,message:e.message}});if(t)throw t;r.success(`Message sent successfully! We'll get back to you soon.`),l()}catch(e){console.error(`Error sending message:`,e),r.error(`Failed to send message. Please try again later.`)}finally{t(!1)}}),noValidate:!0,children:[(0,d.jsxs)(`div`,{className:`contact-field`,children:[(0,d.jsx)(`label`,{htmlFor:`c-name`,children:`Name`}),(0,d.jsx)(`input`,{id:`c-name`,...n(`name`),placeholder:`Your name`,disabled:e,autoComplete:`name`}),p.name&&(0,d.jsx)(`span`,{className:`err`,children:p.name.message})]}),(0,d.jsxs)(`div`,{className:`contact-field`,children:[(0,d.jsx)(`label`,{htmlFor:`c-email`,children:`Work Email`}),(0,d.jsx)(`input`,{id:`c-email`,type:`email`,...n(`email`),placeholder:`[email protected]`,disabled:e,autoComplete:`email`}),p.email&&(0,d.jsx)(`span`,{className:`err`,children:p.email.message})]}),(0,d.jsxs)(`div`,{className:`contact-field`,children:[(0,d.jsx)(`label`,{htmlFor:`c-message`,children:`Tell us about your use case`}),(0,d.jsx)(`textarea`,{id:`c-message`,...n(`message`),placeholder:`Describe your use case and how we can help you...`,disabled:e}),p.message&&(0,d.jsx)(`span`,{className:`err`,children:p.message.message})]}),(0,d.jsx)(`button`,{type:`submit`,className:`btn btn-primary contact-send`,disabled:e,children:e?`Sending...`:`Send message`})]})})]})})})};export{p as component};
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.