PageSourceSearch

https://www.maybole.ai/_next/static/chunks/app/login/page-d65785ad…?dpl=dpl_HBjqY75TirLihYJGko5aMagnaD5j

js maybole.ai collected 2026-10-05 15:39:26 UTC 5,494 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4520],{27593:(e,r,s)=>{Promise.resolve().then(s.bind(s,68888))},68888:(e,r,s)=>{"use strict";s.r(r),s.d(r,{default:()=>b});var t=s(9763),i=s(5347),n=s(12334),o=s(35040),a=s(17023),l=s.n(a),d=s(5226),c=s(74878),u=s(60601),m=s(51567),x=s(73160),h=s(17960);function f(){var e;let r=(0,o.useRouter)(),s=(0,o.useSearchParams)(),[a,f]=(0,i.useState)(null),[b,v]=(0,i.useState)(!1),[g,p]=(0,i.useState)(null!=(e=s.get("email"))?e:""),[j,y]=(0,i.useState)(""),[N,w]=(0,i.useState)(!1),k=s.get("verified");(0,i.useEffect)(()=>{try{sessionStorage.removeItem("maybole:finder-result"),sessionStorage.removeItem("maybole:finder-state")}catch(e){}},[]);let S=s.get("next"),C=S&&/^\/(?!\/)/.test(S)?S:"/";async function E(e){e.preventDefault(),f(null),v(!0);try{let e=await (0,n.Jv)("credentials",{email:g,password:j,redirect:!1});if(null==e?void 0:e.error){f("Invalid email or password."),v(!1);return}r.push(C),r.refresh()}catch(e){f("Network error. Please try again."),v(!1)}}return(0,t.jsxs)(h.z,{title:"Sign in to Maybole",subtitle:"Welcome back. Continue where you left off.",footer:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"text-muted-foreground text-sm",children:"No account?"}),(0,t.jsx)(l(),{href:"/register",className:"rounded-sm text-sm font-semibold text-primary transition-colors hover:underline focus-visible:outline-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50",children:"Create one"})]}),children:["1"===k&&(0,t.jsx)("div",{className:"mb-4 rounded-md border border-border bg-muted/30 px-3 py-2 text-sm text-foreground",children:"Email verified. You can sign in now."}),"invalid"===k&&(0,t.jsx)("div",{className:"mb-4 rounded-md border border-border bg-muted/30 px-3 py-2 text-sm text-foreground",children:"That verification link is invalid or expired. Sign in to request a new one."}),(0,t.jsx)(x.F,{error:a}),(0,t.jsxs)("form",{onSubmit:E,className:"space-y-4",children:[(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsx)("label",{htmlFor:"email",className:"block text-sm font-medium text-foreground",children:"Email"}),(0,t.jsx)(u.p,{id:"email",type:"email",required:!0,value:g,onChange:e=>p(e.target.value),placeholder:"[email protected]"})]}),(0,t.jsxs)("div",{className:"space-y-1.5",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsx)("label",{htmlFor:"password",className:"block text-sm font-medium text-foreground",children:"Password"}),(0,t.jsx)(l(),{href:"/forgot-password",className:"rounded-sm text-xs text-muted-foreground transition-colors hover:text-foreground focus-visible:outline-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50",children:"Forgot password?"})]}),(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)(u.p,{id:"password",type:N?"text":"password",required:!0,value:j,onChange:e=>y(e.target.value),placeholder:"••••••••",className:"pr-10"}),(0,t.jsx)("button",{type:"button",onClick:()=>w(e=>!e),"aria-label":N?"Hide password":"Show password",className:"absolute right-3 top-1/2 -translate-y-1/2 text-muted-foreground hover:text-foreground transition-colors min-w-[32px] min-h-[32px] inline-flex items-center justify-center",tabIndex:-1,children:N?(0,t.jsx)(d.A,{className:"h-4 w-4","aria-hidden":!0}):(0,t.jsx)(c.A,{className:"h-4 w-4","aria-hidden":!0})})]})]}),(0,t.jsx)("div",{className:"pt-2",children:(0,t.jsx)(m.$,{type:"submit",disabled:b,className:"w-full",children:b?(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"h-3.5 w-3.5 rounded-full border-2 border-primary-foreground/30 border-t-primary-foreground animate-spin motion-reduce:hidden","aria-hidden":"true"}),"Signing in..."]}):"Sign in"})})]})]})}function b(){return(0,t.jsx)(i.Suspense,{children:(0,t.jsx)(f,{})})}},73160:(e,r,s)=>{"use strict";s.d(r,{F:()=>o});var t=s(9763);s(5347);var i=s(7469),n=s(15308);function o(e){let{error:r,onRetry:s,onDismiss:o,className:a}=e;return r?(0,t.jsxs)("div",{role:"alert","aria-live":"assertive",className:(0,n.cn)("mb-5 px-4 py-3 rounded-lg flex items-start gap-3","bg-paper-sunken border border-border",a),children:[(0,t.jsxs)("svg",{className:"mt-0.5 shrink-0 text-destructive",width:"15",height:"15",viewBox:"0 0 15 15",fill:"none","aria-hidden":"true",children:[(0,t.jsx)("circle",{cx:"7.5",cy:"7.5",r:"6.5",stroke:"currentColor",strokeWidth:"1.2"}),(0,t.jsx)("path",{d:"M7.5 4.5V8",stroke:"currentColor",strokeWidth:"1.4",strokeLinecap:"round"}),(0,t.jsx)("circle",{cx:"7.5",cy:"10.5",r:"0.7",fill:"currentColor"})]}),(0,t.jsx)("span",{className:"text-destructive text-sm flex-1 break-words",children:r}),(0,t.jsxs)("div",{className:"flex items-center gap-2 shrink-0",children:[s&&(0,t.jsx)("button",{type:"button",onClick:s,className:"rounded-sm text-xs text-destructive underline underline-offset-2 transition-opacity hover:opacity-80 focus-visible:outline-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50",children:"Retry"}),o&&(0,t.jsx)("button",{type:"button",onClick:o,"aria-label":"Dismiss error",className:"rounded-sm text-destructive/70 transition-colors hover:text-destructive focus-visible:outline-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50",children:(0,t.jsx)(i.A,{className:"h-4 w-4","aria-hidden":!0})})]})]}):null}}},e=>{e.O(0,[7023,9952,2165,5292,55,408,2272,7154,5349,7358],()=>e(e.s=27593)),_N_E=e.O()}]);

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.