1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1976],{31976:(e,t,a)=>{a.d(t,{default:()=>_});var r=a(95155),l=a(23327),s=a(12115),n=a(90235),i=a(73959),o=a(7935),u=a(54128),d=a(15653);let c=RegExp("^(?![\\s\\S]*(?:https?:\\/\\/|www\\.|(?:[\\p{L}\\p{N}-]+\\.)+[A-Za-z]{2,}|<[^>]+>))","u"),p=(e,t)=>t?e:e.or(d.z.literal("")).optional();function m(e){var t,a,r,l,s,n,i,o,u,m,f,y,h,x,v,b,g,N,w,j;switch(e.type){case"checkbox":return e.required?(a={required:null==(t=e.errorMessages)?void 0:t.required},d.z.boolean().refine(e=>!0===e,{message:null!=(r=null==a?void 0:a.required)?r:"This field is required"})):d.z.boolean().optional();case"email":return p((l=e.errorMessages,d.z.string().email(null!=(s=null==l?void 0:l.invalid)?s:"Invalid email address").min(1,null!=(n=null==l?void 0:l.required)?n:"Email is required").max(254,null!=(i=null==l?void 0:l.tooLong)?i:"Email is too long")),!!e.required);case"firstName":case"lastName":case"name":return p((o=e.errorMessages,d.z.string().trim().min(1,null!=(u=null==o?void 0:o.required)?u:"Name is required").max(60,null!=(m=null==o?void 0:o.tooLong)?m:"Name is too long").regex(RegExp("^[\\p{L}\\p{M}\\s'-]+$","u"),null!=(f=null==o?void 0:o.invalid)?f:"Invalid characters in name")),!!e.required);case"company":case"subject":case"text":default:return p((y=e.errorMessages,d.z.string().trim().min(1,null!=(h=null==y?void 0:y.required)?h:"Field is required").max(255,null!=(x=null==y?void 0:y.tooLong)?x:"Too long").regex(RegExp("^[\\p{L}\\p{M}\\p{N}\\s.,&()'â\\-\\/]+$","u"),null!=(v=null==y?void 0:y.invalid)?v:"Invalid characters").regex(c,null!=(b=null==y?void 0:y.invalid)?b:"Links or HTML are not allowed")),!!e.required);case"long-text":case"message":return p((g=e.errorMessages,d.z.string().trim().min(1,null!=(N=null==g?void 0:g.required)?N:"Message is required").max(2e3,null!=(w=null==g?void 0:g.tooLong)?w:"Message is too long").regex(c,null!=(j=null==g?void 0:g.invali
1d)?j:"Links or HTML are not allowed")),!!e.required)}}var f=a(84916),y=a(71710),h=a(47507),x=a(34724);let v=s.forwardRef((e,t)=>{let{label:a,value:n,options:i,error:o,className:d,required:c,disabled:p,onValueChange:m,id:f}=e,[y,v]=(0,s.useState)(!1);return(0,r.jsxs)("div",{className:(0,u.cn)("w-full h-10 relative",d),children:[(0,r.jsxs)(h.l6,{onValueChange:m,value:n,onOpenChange:v,required:c,disabled:p,children:[(0,r.jsx)(h.bq,{ref:t,className:(0,u.cn)("w-full h-full py-2 pl-0 border-b bg-transparent text-sm focus:border-primary focus:outline-none shadow-none !ring-0 items-center",y||o?"border-primary":"border-secondary-foreground"),children:(0,r.jsx)(h.yv,{placeholder:""})}),(0,r.jsx)(h.gC,{children:i.map(e=>(0,r.jsx)(h.eb,{className:"data-[highlighted]:text-primary hover:cursor-pointer",value:e.value,children:e.label},e.value))})]}),(0,r.jsx)(x.A,{label:a,value:n,isSelect:!0,isActive:!!n||y,required:c}),o&&(0,r.jsxs)("p",{className:"mt-2 text-sm text-primary flex items-center gap-1",children:[(0,r.jsx)(l.A,{className:"w-4 h-4"}),o]})]},f)});v.displayName="FloatingLabelSelect";let b=s.forwardRef((e,t)=>{let{className:a,...l}=e,n=s.useRef(null);s.useImperativeHandle(t,()=>n.current);let i=s.useCallback(()=>{let e=n.current;e&&(e.style.height="auto",e.style.height="".concat(e.scrollHeight,"px"))},[]);return s.useEffect(()=>{let e=n.current;if(!e)return;i();let t=()=>i();return e.addEventListener("input",t),()=>{e.removeEventListener("input",t)}},[i]),(0,r.jsx)("textarea",{className:(0,u.cn)("flex w-full bg-transparent px-0 pt-0 pb-1 text-base placeholder:text-muted-foreground focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 overflow-hidden",a),ref:n,rows:1,...l})});b.displayName="Textarea";let g=s.forwardRef((e,t)=>{let{id:a,className:n,name:i,value:o,label:d,required:c,error:p,disabled:m,onChange:f,...y}=e,[h,v]=(0,s.useState)(!1),g=h||o.length>0;return(0,r.jsxs)("div",{className:(0,u.cn)("w-full min-h-10 relative",n),children:[(0,r.jsx)(b,{id:a,name:i,className:(0,u.cn)("peer w-full h-full p-2 pl-0 text-sm border-b bg-transparent placeholder-transparent focus:outline-none",p?"border-primary focus:border-primary":"border-secondary-foreground focus:border-primary"),rows:1,value:o,disabled:m,onFocus:()=>v(!0),onBlur:()=>v(!1),onChange:f,required:c,ref:t,...y}),(0,r.jsx)(x.A,{label:d,value:o,highlight:h||!!p,isTextarea:!0,isActive:g,required:c}),p&&(0,r.jsxs)("p",{className:"absolute mt-2 text-sm text-primary flex items-center gap-1",children:[(0,r.jsx)(l.A,{className:"w-4 h-4"}),p]})]})});g.displayName="FloatingLabelTextarea";var N=a(65229),w=a(5917),j=a(35299),q=a(97003);function T(e){let{className:t,submitButton:a,isValid:l,isSubmitting:s,isSuccess:n,isError:i}=e;return(0,r.jsxs)(q.$,{className:(0,u.cn)("shrink-0 w-full md:w-fit py-6 px-6 text-lg bg-white relative",t),type:"submit","aria-label":a,disabled:!l||s||n||i,children:[(0,r.jsx)("span",{className:"h-0 invisible",children:a}),(0,r.jsx)("span",{className:(0,u.cn)("absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 transition-opacity duration-200",s||n||i?"opacity-0":"opacity-100"),children:a}),s&&(0,r.jsx)("span",{className:"absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 transition-opacity duration-200 opacity-100",children:(0,r.jsx)(j.A,{className:"h-4 w-4 animate-spin"})}),n&&(0,r.jsx)("span",{className:"absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 transition-opacity duration-200 opacity-100",children:(0,r.jsx)(w.A,{className:"h-4 w-4 text-green-600"})}),i&&(0,r.jsx)("span",{className:"absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 transition-opacity duration-200 opacity-100",children:(0,r.jsx)(N.A,{className:"h-4 w-4 text-destructive"})})]})}let S=e=>(null==e?void 0:e.__typename)==="InputField"&&"checkbox"===e.type&&("4C8WPuE49TcLLtdU10aXnB"===e.sys.id||"other"===e.name);function _(e){let{className:t,type:a="contact",inputFieldsCollection:d,successMessage:c,successMessageTitle:p,errorMessages:h,submitButton:x,locale:b,sys:{id:N},requestTypeTranslations:w}=e,{ref:j,isInView:q}
1=(0,o.A)(),[_,A]=(0,s.useState)(!1),[E,I]=(0,s.useState)(!1),[k,F]=(0,s.useState)(!1),[L,M]=(0,s.useState)({}),[O,R]=(0,s.useState)(!1),[C,D]=(0,s.useState)({}),[z,P]=(0,s.useState)(null),V=Object.values(L).every(e=>""===e),[B,H]=(0,s.useState)("mailgun"),{toast:$}=(0,i.dj)(),J=(0,s.useMemo)(()=>{var e;return(null!=(e=null==d?void 0:d.items)?e:[]).map(e=>S(e)?{...e,required:!1}:e)},[d]);(0,s.useEffect)(()=>{"download"===a&&(H("salesforce"),D(e=>({...e,other:"download"})))},[a]),(0,s.useEffect)(()=>{if(!(null==d?void 0:d.items))return void R(!1);R(J.every(e=>{if(!e)return!0;if("InputField"===e.__typename&&e.required){var t;let a=C[null!=(t=e.name)?t:""];return"checkbox"===e.type?!0===a:null!=a&&""!==a}if("RequestTypeInputField"===e.__typename&&e.required){let e=C.requestType;return null!=e&&""!==e}return!0}))},[C,J,d]);let U=async e=>{try{var t;if(e.preventDefault(),A(!0),F(!1),!(()=>{let e={},t=!0;return J.forEach(a=>{if(!a)return;let r=C["RequestTypeInputField"===a.__typename?"requestType":a.name||""];if("InputField"===a.__typename){let l=m(a).safeParse(r);l.success||(e[a.name||""]=l.error.errors[0].message,t=!1)}else"RequestTypeInputField"===a.__typename&&a.required&&!r&&(e.requestType=(null==a?void 0:a.requiredErrorMessage)||"Please select an option",t=!1)}),M(e),t})())return void F(!0);let a=d.items.find(e=>S(e)),r=a?{...C,optOutNewsletter:!0===C[null!=(t=a.name)?t:""]}:C;if(!(await fetch("/api/contact",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({formData:r,service:B,locale:b,formId:N})})).ok)throw Error("Failed to submit form");P(null),D({}),I(!0),W({title:p||"Form submitted successfully",description:c||"We will get back to you as soon as possible"}),setTimeout(()=>I(!1),2e3)}catch(e){e instanceof Error&&P((null==h?void 0:h.unknown)||"An error occurred, please try again later"),F(!0)}finally{A(!1),setTimeout(()=>F(!1),2e3)}},W=e=>{let{title:t,description:a,variant:r="default"}=e;$({variant:r||"default",title:t,description:a})},X=(e,t,a)=>{if("InputField"===a.__typename){let r=m(a).safeParse(t);if(!r.success)return M(t=>({...t,[e]:r.error.errors[0].message})),!1;M(t=>({...t,[e]:""}))}return!0},G=(e,t)=>{if("string"==typeof e||"boolean"==typeof e){var a,r;if("RequestTypeInputField"===t.__typename){let r=null==(a=t.values)?void 0:a.find(t=>t.value===e);(null==r?void 0:r.service)&&H(r.service)}D(a=>{var r;return{...a,[null!=(r=t.name)?r:""]:e}}),X(null!=(r=t.name)?r:"",e,t);return}if("InputField"===t.__typename&&"phone"===t.type){let t=e.target.value;if(!/^[0-9+\s\-()]*$/.test(t))return}D(t=>({...t,[e.target.name]:e.target.value})),X(e.target.name,e.target.value,t)};return(0,r.jsxs)("form",{className:(0,u.cn)("md:px-2 gap-x-4 gap-y-10 md:gap-y-12",t,q?"fade-md-in":"fade-md-out"),ref:j,onSubmit:U,children:[J.map(e=>(e=>{var t,a,l,i,o,d,c,p,m,h,x,N,j,q,T;if((null==e?void 0:e.__typename)==="InputField"&&(null==e?void 0:e.type)==="checkbox"){let o=S(e);return(0,r.jsx)(s.Fragment,{children:(0,r.jsxs)("div",{className:"flex items-end gap-[10px]",children:[(0,r.jsx)(f.S,{id:null!=(t=e.name)?t:"",checked:!!C[null!=(a=e.name)?a:""],required:!o&&!!e.required,onCheckedChange:t=>G(t,e),className:(0,u.cn)(o&&"border-black data-[state=checked]:bg-black data-[state=checked]:text-white")}),(0,r.jsxs)(n.J,{htmlFor:null!=(l=e.name)?l:"",className:(0,u.cn)("font-normal text-lg leading-none peer-disabled:opacity-70 cursor-pointer",o?"text-black":"text-primary"),children:[null!=(i=e.label)?i:"",e.required&&!o&&(0,r.jsx)("span",{children:"*"})]})]})},e.sys.id)}if((null==e?void 0:e.__typename)==="InputField"&&(null==e?void 0:e.type)==="long-text")return(0,r.jsx)(g,{id:e.sys.id,className:"col-span-2",name:null!=(o=e.name)?o:"",value:C[null!=(d=e.name)?d:""]||"",label:null!=(c=e.label)?c:"",required:!!e.required,error:L[null!=(p=e.name)?p:""],onChange:t=>G(t,e)},e.sys.id);if((null==e?void 0:e.__typename)==="InputField")return(0,r.jsx)(y.A,{id:e.sys.id,className:"mt-0 md:mt-0 lg:mt-0",type:null!=(m=e.type)?m:"text",name:null!=(h=e.name)?h:"",value:C[null!=(x=e.name)?x:""]||"",label:null!=(N=e.label)?N:"",required:!!e.required,error:L[null!=(j=e.name)?j:""],onChange:t=>G(t,e)},e.sys.id);if((null==e?void 0:e.__typename)==="RequestTypeInputField"){let t=e.valuesDropdown,a=Array.isArray(t)?t:void 0,l=null==w?void 0:w[b],s=(null!=(q=e.values)?q:[]).map((e,t)=>{var r,s;return{label:null!=(s=null!=(r=null==l?void 0:l[e.value])?r:null==a?void 0:a[t])?s:e.label,value:e.value}});return(0,r.jsx)(v,{id:e.sys.id,className:"h-10",name:"requestType",value:C.requestType||"",label:null!=(T=e.label)?T:"",options:s,required:!!e.required,error:L.requestType,onValueChange:t=>G(t,{...e,name:"requestType"})},e.sys.id)}return null})(e)),(0,r.jsxs)("div",{className:(0,u.cn)("w-full flex flex-col col-span-2",{"items-center":"download"===a}),children:[(0,r.jsx)(T,{className:"w-full md:w-fit !mt-0",submitButton:x||"",isValid:V&&O,isSubmitting:_,isSuccess:E,isError:k}),z&&(0,r.jsxs)("p",{className:"mt-xl font-primary font-normal text-lg flex items-center gap-2",children:[(0,r.jsx)(l.A,{className:"w-4 h-4"}),z]})]})]})}},34724:(e,t,a)=>{a.d(t,{A:()=>s});var r=a(95155),l=a(54128);function s(e){let{value:t,label:a,isActive:s,isSelect:n,isTextarea:i,highlight:o,required:u}=e;return(0,r.jsxs)("label",{className:(0,l.cn)("text-sm absolute left-0 top-2 transition-all duration-300",o&&"text-primary",s||t?[(!n||n&&t)&&"-translate-y-5",i&&"-translate-y-5"]:["peer-placeholder-shown:translate-y-0","pointer-events-none",n&&"top-2"]),children:[a,u&&(0,r.jsx)("span",{children:"*"})]})}},71710:(e,t,a)=>{a.d(t,{A:()=>u});var r=a(95155),l=a(23327),s=a(12115),n=a(54128),i=a(34724);let o=s.forwardRef((e,t)=>
1{let{id:a,label:o,type:u="text",error:d,className:c,value:p="",disabled:m,required:f,onChange:y,...h}=e,[x,v]=(0,s.useState)(!1),b=x||"".concat(p).length>0;return(0,r.jsxs)("div",{className:(0,n.cn)("w-full h-10 relative",c),children:[(0,r.jsx)("input",{id:a,className:(0,n.cn)("peer w-full h-full py-2 text-sm bg-transparent border-b placeholder-transparent focus:outline-none",d?"border-primary focus:border-primary":"border-secondary-foreground focus:border-primary"),type:u,value:p,placeholder:o,disabled:m,required:f,onChange:y,onFocus:()=>v(!0),onBlur:()=>v(!1),ref:t,...h}),(0,r.jsx)(i.A,{label:o,highlight:x||!!d,isActive:b,required:f}),d&&(0,r.jsxs)("span",{className:"absolute mt-2 text-sm text-primary flex items-center gap-1",children:[(0,r.jsx)(l.A,{className:"w-4 h-4"}),d]})]})});o.displayName="FloatingLabelInput";let u=o},73959:(e,t,a)=>{a.d(t,{dj:()=>c});var r=a(12115);let l=0,s=new Map,n=e=>{if(s.has(e))return;let t=setTimeout(()=>{s.delete(e),u({type:"REMOVE_TOAST",toastId:e})},1e6);s.set(e,t)},i=[],o={toasts:[]};function u(e){o=((e,t)=>{switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,1)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(e=>e.id===t.toast.id?{...e,...t.toast}:e)};case"DISMISS_TOAST":{let{toastId:a}=t;return a?n(a):e.toasts.forEach(e=>{n(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===a||void 0===a?{...e,open:!1}:e)}}case"REMOVE_TOAST":if(void 0===t.toastId)return{...e,toasts:[]};return{...e,toasts:e.toasts.filter(e=>e.id!==t.toastId)}}})(o,e),i.forEach(e=>{e(o)})}function d(e){let{...t}=e,a=(l=(l+1)%Number.MAX_SAFE_INTEGER).toString(),r=()=>u({type:"DISMISS_TOAST",toastId:a});return u({type:"ADD_TOAST",toast:{...t,id:a,open:!0,onOpenChange:e=>{e||r()}}}),{id:a,dismiss:r,update:e=>u({type:"UPDATE_TOAST",toast:{...e,id:a}})}}function c(){let[e,t]=r.useState(o);return r.useEffect(()=>(i.push(t),()=>{let e=i.indexOf(t);e>-1&&i.splice(e,1)}),[e]),{...e,toast:d,dismiss:e=>u({type:"DISMISS_TOAST",toastId:e})}}},84916:(e,t,a)=>{a.d(t,{S:()=>o});var r=a(95155),l=a(38162),s=a(5917),n=a(12115),i=a(54128);let o=n.forwardRef((e,t)=>{let{className:a,...n}=e;return(0,r.jsx)(l.bL,{ref:t,className:(0,i.cn)("peer h-4 w-4 shrink-0 border border-primary shadow focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground",a),...n,children:(0,r.jsx)(l.C1,{className:(0,i.cn)("flex items-center justify-center text-current"),children:(0,r.jsx)(s.A,{className:"h-4 w-4 text-white"})})})});o.displayName=l.bL.displayName},90235:(e,t,a)=>{a.d(t,{J:()=>u});var r=a(95155),l=a(10489),s=a(83101),n=a(12115),i=a(54128);let o=(0,s.F)("font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),u=n.forwardRef((e,t)=>{let{className:a,...s}=e;return(0,r.jsx)(l.b,{ref:t,className:(0,i.cn)(o(),a),...s})});u.displayName=l.b.displayName}}]);
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.