1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2748],{1602:(e,r,t)=>{var a=t(19031);e.exports=function(){return a.Date.now()}},4917:(e,r,t)=>{var a=t(98825),i=t(1602),s=t(52782),n=Math.max,o=Math.min;e.exports=function(e,r,t){var u,l,d,c,m,f,h=0,v=!1,p=!1,g=!0;if("function"!=typeof e)throw TypeError("Expected a function");function _(r){var t=u,a=l;return u=l=void 0,h=r,c=e.apply(a,t)}function w(e){var t=e-f,a=e-h;return void 0===f||t>=r||t<0||p&&a>=d}function q(){var e,t,a,s=i();if(w(s))return Y(s);m=setTimeout(q,(e=s-f,t=s-h,a=r-e,p?o(a,d-t):a))}function Y(e){return(m=void 0,g&&u)?_(e):(u=l=void 0,c)}function b(){var e,t=i(),a=w(t);if(u=arguments,l=this,f=t,a){if(void 0===m)return h=e=f,m=setTimeout(q,r),v?_(e):c;if(p)return clearTimeout(m),m=setTimeout(q,r),_(f)}return void 0===m&&(m=setTimeout(q,r)),c}return r=s(r)||0,a(t)&&(v=!!t.leading,d=(p="maxWait"in t)?n(s(t.maxWait)||0,r):d,g="trailing"in t?!!t.trailing:g),b.cancel=function(){void 0!==m&&clearTimeout(m),h=0,u=f=l=m=void 0},b.flush=function(){return void 0===m?c:Y(i())},b}},18643:(e,r,t)=>{"use strict";t.d(r,{A:()=>Y});var a=t(67684),i=t(62701),s=t(764),n=t(70572),o=t(15039),u=t.n(o),l=t(94622),d=t(4917),c=t.n(d),m=t(88992),f=t(67646),h=t(34356),v=t(46725),p=t(66835),g=t(89815),_=t(47231),w=t(55157),q=t.n(w);let Y=e=>{var r;let{onSuccess:t=p.lQ,onError:o=p.lQ,className:d}=e,[w,Y]=(0,n.useState)(!1),{register:b,handleSubmit:x,setError:y,setValue:E,formState:{errors:P}}=(0,m.mN)((0,a._)({},(0,_.Wu)(["email_autoOff"],void 0,{email:""}))),{mutate:j}=(0,l.n)({mutationFn:async e=>{let{email:r}=e,t=await h.kQ.checkAccount({email:r});if(t.err){var a,i;throw Error(404===t.err.response.status?(null==(i=t.data)||null==(a=i.errors)?void 0:a[0])||"".concat(r," was not found"):"Something went wrong")}return t.data},onSuccess:(e,r)=>{let{email:a}=r,{phone_last_four:i="",user_initials:s=""}=e;t({phoneLastFour:i,userInitials:s,email:a})},onError:e=>{Y(!0),o(e),(0,v.V)("LoginFormPasswordless")(e)}}),T=(0,n.useCallback)(e=>{j({email:e.email_autoOff})},[j]),k=(0,n.useMemo)(()=>c()(x(T),g.Ux),[x,T]),C=(0,n.useCallback)(e=>{let r=e.target.value.replace(/\s/g,"");Y(!1),y("email_autoOff",{type:"manual",message:""}),E("email_autoOff",r,{shouldDirty:!0}),r&&k()},[Y,y,E,k]);return(0,s.FD)("div",{className:d,children:[(0,s.Y)("p",{className:u()("p1 n900",q().subheader),children:"Enter your email to access your HelloTech account"}),(0,s.Y)("form",{autoComplete:"off",children:(0,s.Y)(f.InputField,(0,i._)((0,a._)({id:"passwordless-email",type:"text",label:"Email address",error:null==(r=P.email_autoOff)?void 0:r.message},b("email_autoOff")),{onChange:C,onKeyDown:e=>{"Enter"===e.key&&e.preventDefault()},autoComplete:"off"}))}),w&&(0,s.Y)(f.CalloutBox,{theme:f.CalloutBoxThemes.DEFAULT,header:"We couldn't find an account matching that email address",text:"Want to create an account? Simply book your first service!",className:"marginTop-small2"})]})}},39824:e=>{var r=/\s/;e.exports=function(e){for(var t=e.length;t--&&r.test(e.charAt(t)););return t}},42748:(e,r,t)=>{"use strict";t.r(r),t.d(r,{LoginModalPasswordless:()=>u});var a=t(764),i=t(67646),s=t(79023),n=t(18643),o=t(66904);let u=()=>{let e=(0,s.B2)(),{updateAppLevelModal:r}=(0,o.V4)(),t=(0,o.Tg)(o.PJ),u=()=>{r({name:o.PJ,visible:!1})},l=async t=>{let{phoneLastFour:a="",userInitials:i="",email:s=""}=t;r({name:o.fx,visible:!0,data:{email:s,phoneLastFour:a,userInitials:i}}),u(),await e({email:s})};return(0,a.Y)(i.Modal,{isVisible:null==t?void 0:t.visible,hide:u,header:"Sign in",elementSize:i.ELEMENT_SIZE.MEDIUM,children:(0,a.Y)(n.A,{onSuccess:l})})}},47231:(e,r,t)=>{"use strict";t.d(r,{Bz:()=>m,HK:()=>c,MR:()=>f,Wu:()=>v});var a=t(91408),i=t(96415);let s="Email is required",n="Please enter a valid email address",o="Enter 5-digit ZIP code",u="Please enter a valid number",l="Please enter valid pricing",d="Passcode is required",c=/(^\d+$)/,m=/(?=.*?\d)^\$?(([1-9]\d{0,2}(,\d{3})*)|\d+)?(\.\d{1,2})?$/,f=/\w+/,h={firstName:(0,a.Yj)().required("First name is required").trim(),lastName:(0,a.Yj)().required("Last name is required"),email:(0,a.Yj)().email(n).required(s),email_autoOff:(0,a.Yj)().email(n).required(s),password:a.Yj().required("Password is required").min(6,"Password is too short - should be 6 chars minimum."),passwordConfirmation:(0,a.Yj)().oneOf([(0,a.KR)("password"),void 0],"Passwords must match"),hearAboutUs:(0,a.Yj)().required("Please tell us how you heard about us"),address:(0,a.Yj)().required("Address is required"),phone:(0,a.Yj)().required("Phone is required").matches(new RegExp(/^(\+\d{1,2}\s)?\(?\d{3}\)?[\s.-]\d{3}[\s.-]\d{4}$/),"Phone requires 10 digits"),zipCode:(0,a.Yj)().matches(/(^\d{5}
1$)/,o).max(5).required(o),text:(0,a.Yj)().required("Input is required"),numeric:(0,a.Yj)().matches(c,u).required(u),currency:(0,a.Yj)().matches(m,l).required(l),emptyRequirement:(0,a.Yj)(),addressDetails:(0,a.Yj)(),passcode:(0,a.Yj)().matches(c,d).max(6).required(d)},v=function(e){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"onSubmit",t=arguments.length>2?arguments[2]:void 0,s=[].concat(e).filter(e=>e&&h[e]).reduce((e,r)=>(r&&(e[r]=h[r]),e),{});return{resolver:(0,i.t)((0,a.Ik)().shape(s)),defaultValues:t,reValidateMode:r}}},52782:(e,r,t)=>{var a=t(88046),i=t(98825),s=t(76014),n=0/0,o=/^[-+]0x[0-9a-f]+$/i,u=/^0b[01]+$/i,l=/^0o[0-7]+$/i,d=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(s(e))return n;if(i(e)){var r="function"==typeof e.valueOf?e.valueOf():e;e=i(r)?r+"":r}if("string"!=typeof e)return 0===e?e:+e;e=a(e);var t=u.test(e);return t||l.test(e)?d(e.slice(2),t?2:8):o.test(e)?n:+e}},55157:e=>{e.exports={subheader:"loginPasswordless_subheader__F_f4Q",fadein:"loginPasswordless_fadein__NithT",loading:"loginPasswordless_loading__BtpbX"}},88046:(e,r,t)=>{var a=t(39824),i=/^\s+/;e.exports=function(e){return e?e.slice(0,a(e)+1).replace(i,""):e}}}]); 2//# sourceMappingURL=2748.ed4077deb271ec34.js.map
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.