1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,48425,e=>{"use strict";var t=e.i(71645),a=e.i(74080),s=e.i(91918),i=e.i(43476),r=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,a)=>{let r=(0,s.createSlot)(`Primitive.${a}`),l=t.forwardRef((e,t)=>{let{asChild:s,...l}=e;return"u">typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,i.jsx)(s?r:a,{...l,ref:t})});return l.displayName=`Primitive.${a}`,{...e,[a]:l}},{});function l(e,t){e&&a.flushSync(()=>e.dispatchEvent(t))}e.s(["Primitive",()=>r,"dispatchDiscreteCustomEvent",()=>l])},93479,10204,e=>{"use strict";var t=e.i(43476),a=e.i(75157);function s({className:e,type:s,...i}){return(0,t.jsx)("input",{type:s,"data-slot":"input",className:(0,a.cn)("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent px-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",e),...i})}e.s(["Input",()=>s],93479);var i=e.i(71645),r=e.i(48425),l=i.forwardRef((e,a)=>(0,t.jsx)(r.Primitive.label,{...e,ref:a,onMouseDown:t=>{t.target.closest("button, input, select, textarea")||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));l.displayName="Label",e.s(["Label",()=>l,"Root",()=>l],73741);var n=e.i(73741),n=n;function d({className:e,...s}){return(0,t.jsx)(n.Root,{"data-slot":"label",className:(0,a.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",e),...s})}e.s(["Label",()=>d],10204)},63488,e=>{"use strict";let t=(0,e.i(75254).default)("mail",[["path",{d:"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7",key:"132q7q"}],["rect",{x:"2",y:"4",width:"20",height:"16",rx:"2",key:"izxlao"}]]);e.s(["Mail",()=>t],63488)},59378,e=>{"use strict";var t=e.i(43476),a=e.i(71645),s=e.i(48148),i=e.i(19455),r=e.i(93479),l=e.i(10204),n=e.i(63488);let d=(0,e.i(75254).default)("circle-check-big",[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]]);function o(){let e=(0,s.useTranslations)("contact"),[o,c]=(0,a.useState)(""),[u,m]=(0,a.useState)(""),[x,p]=(0,a.useState)(""),[f,h]=(0,a.useState)(!1),[g,b]=(0,a.useState)(!1),[v,j]=(0,a.useState)("");async function y(t){t.preventDefault(),j(""),h(!0);try{let e=await fetch("/api/contact",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:o,email:u,message:x})});if(!e.ok){let t=await e.json();throw Error(t.error||"Failed to send")}b(!0)}catch(t){j(t instanceof Error?t.message:e("errorMessage"))}finally{h(!1)}}return g?(0,t.jsx)("div",{className:"mx-auto max-w-lg px-4 py-16 sm:px-6",children:(0,t.jsxs)("div",{className:"text-center",children:[(0,t.jsx)("div",{className:"mx-auto flex h-14 w-14 items-center justify-center rounded-full bg-emerald-50",children:(0,t.jsx)(d,{className:"h-6 w-6 text-emerald-500"})}),(0,t.jsx)("h1",{className:"mt-4 text-3xl font-bold",children:e("messageSent")}),(0,t.jsx)("p",{className:"mt-2 text-sm text-muted-foreground",children:e("messageSentDesc")})]})}):(0,t.jsxs)("div",{className:"mx-auto max-w-lg px-4 py-16 sm:px-6",children:[(0,t.jsxs)("div",{className:"text-center",children:[(0,t.jsx)("div",{className:"mx-auto flex h-14 w-14 items-center justify-center rounded-full bg-muted",children:(0,t.jsx)(n.Mail,{className:"h-6 w-6 text-muted-foreground"})}),(0,t.jsx)("h1",{className:"mt-4 text-3xl font-bold",children:e("title")}),(0,t.jsx)("p",{className:"mt-2 text-sm text-muted-foreground",children:e("subtitle")})]}),(0,t.jsxs)("form",{onSubmit:y,className:"mt-8 space-y-4",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(l.Label,{htmlFor:"name",children:e("name")}
1),(0,t.jsx)(r.Input,{id:"name",placeholder:e("namePlaceholder"),value:o,onChange:e=>c(e.target.value),required:!0})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(l.Label,{htmlFor:"email",children:e("email")}),(0,t.jsx)(r.Input,{id:"email",type:"email",placeholder:e("emailPlaceholder"),value:u,onChange:e=>m(e.target.value),required:!0})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(l.Label,{htmlFor:"message",children:e("message")}),(0,t.jsx)("textarea",{id:"message",rows:5,placeholder:e("messagePlaceholder"),value:x,onChange:e=>p(e.target.value),required:!0,className:"w-full rounded-lg border bg-background px-3 py-2 text-sm placeholder:text-muted-foreground focus:border-ring focus:outline-none focus:ring-1 focus:ring-ring"})]}),v&&(0,t.jsx)("p",{className:"text-sm text-red-500",children:v}),(0,t.jsx)(i.Button,{className:"w-full",disabled:f,children:f?e("sending"):e("sendMessage")})]}),(0,t.jsxs)("p",{className:"mt-6 text-center text-sm text-muted-foreground",children:[e("orEmail")," ",(0,t.jsx)("a",{href:"mailto:[email protected]",className:"text-foreground underline",children:"[email protected]"})]})]})}e.s(["default",()=>o],59378)}]);
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.