(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[7177],{66175:()=>{},23561:(e,t,r)=>{Promise.resolve().then(r.bind(r,91989)),Promise.resolve().then(r.bind(r,3606)),Promise.resolve().then(r.bind(r,29312)),Promise.resolve().then(r.bind(r,43506)),Promise.resolve().then(r.bind(r,87977)),Promise.resolve().then(r.bind(r,74609)),Promise.resolve().then(r.bind(r,95335)),Promise.resolve().then(r.t.bind(r,67821,23)),Promise.resolve().then(r.t.bind(r,32922,23)),Promise.resolve().then(r.bind(r,95836)),Promise.resolve().then(r.t.bind(r,97404,23))},91989:(e,t,r)=>{"use strict";r.d(t,{Providers:()=>d});var a=r(19002);r(52114);var n=r(31336),s=r(64555),i=r(68832),l=r(7828),o=r(73003);function d(e){let{children:t}=e;return(0,a.jsx)(s.N,{children:(0,a.jsx)(l.N,{attribute:"class",defaultTheme:o.C.theme.defaultTheme,enableSystem:!0,disableTransitionOnChange:!0,children:(0,a.jsx)(i.Bc,{children:(0,a.jsx)(n.Ay.Provider,{children:t})})})})}},3606:(e,t,r)=>{"use strict";r.d(t,{UpdatesModal:()=>E});var a=r(19002),n=r(52114),s=r(40315),i=r(64406),l=r.n(i),o=r(34302),d=r(31055),c=r(1459),u=r(36526),m=r(40570),h=r(94336),x=r(41181);function f(e){let{date:t,text:r,imageUrl:n}=e,s=new Date(t).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"});return(0,a.jsx)(x.Zp,{className:"border-2 shadow-lg transition-all hover:shadow-xl",children:(0,a.jsx)(x.Wu,{className:"p-6",children:(0,a.jsxs)("div",{className:"flex flex-col sm:flex-row items-start gap-4",children:[(0,a.jsx)("div",{className:"relative h-[150px] w-full sm:w-auto sm:flex-shrink-0 overflow-hidden rounded-lg bg-muted flex items-center justify-center",children:n?(0,a.jsx)(m.default,{src:n,alt:"Changelog image",width:150,height:150,className:"h-[150px] w-full sm:w-[200px] object-contain"}):(0,a.jsx)(m.default,{src:"/logos/scale-academy-mark.svg",alt:"".concat(o.C," Logo"),width:150,height:150,className:"h-[150px] w-full sm:w-[200px] object-contain opacity-60 p-5"})}),(0,a.jsxs)("div",{className:"flex-1 min-w-0 w-full",children:[(0,a.jsx)("div",{className:"mb-3",children:(0,a.jsx)("time",{dateTime:t.toISOString(),className:"text-sm font-semibold text-primary",children:s})}),(0,a.jsx)("div",{className:"prose prose-sm max-w-none dark:prose-invert",children:(0,a.jsx)(h.oz,{components:{h1:e=>{let{children:t}=e;return(0,a.jsx)("h1",{className:"text-2xl font-bold mt-6 mb-4",children:t})},h2:e=>{let{children:t}=e;return(0,a.jsx)("h2",{className:"text-xl font-semibold mt-5 mb-3",children:t})},h3:e=>{let{children:t}=e;return(0,a.jsx)("h3",{className:"text-lg font-semibold mt-4 mb-2",children:t})},p:e=>{let{children:t}=e;return(0,a.jsx)("p",{className:"text-foreground mb-4 leading-relaxed",children:t})},ul:e=>{let{children:t}=e;return(0,a.jsx)("ul",{className:"list-disc pl-6 mb-4 space-y-2",children:t})},ol:e=>{let{children:t}=e;return(0,a.jsx)("ol",{className:"list-decimal pl-6 mb-4 space-y-2",children:t})},li:e=>{let{children:t}=e;return(0,a.jsx)("li",{className:"text-foreground",children:t})},a:e=>{let{href:t,children:r}=e;return(null==t?void 0:t.startsWith("/"))?(0,a.jsx)(l(),{href:t,className:"text-primary underline decoration-2 underline-offset-2 hover:text-primary/80 hover:decoration-primary/80 transition-colors",children:r}):(0,a.jsx)("a",{href:t,target:"_blank",rel:"noopener noreferrer",className:"text-primary underline decoration-2 underline-offset-2 hover:text-primary/80 hover:decoration-primary/80 transition-colors",children:r})},strong:e=>{let{children:t}=e;return(0,a.jsx)("strong",{className:"font-semibold",children:t})},em:e=>{let{children:t}=e;return(0,a.jsx)("em",{className:"italic",children:t})},code:e=>{let{children:t,className:r}=e;return r?(0,a.jsx)("code",{className:r,children:t}):(0,a.jsx)("code",{className:"bg-muted px-1.5 py-0.5 rounded text-sm font-mono",children:t})},blockquote:e=>{let{children:t}=e;return(0,a.jsx)("blockquote",{className:"border-l-4 border-primary/20 pl-4 italic my-4 text-muted-foreground",children:t})}},children:r})})]})]})})})}var p=r(12569);let g=(0,p.createServerReference)("00c807f4d39f6f060a0d0986ca324b401ad0282165",p.callServer,void 0,p.findSourceMapURL,"getRecentUpdates"),b="changelog_last_seen",v="changelog_dont_show";function E(){let[e,t]=n.useState(!1),[r,i]=n.useState([]),[m,h]=n.useState(!0),[x,p]=n.useState(0),E=(0,s.usePathname)(),N=null==E?void 0:E.match(/^\/dashboard\/([^/]+)/),w=N?N[1]:null,_=w?"/dashboard/".concat(w,"/changelog"):"/dashboard";n.useEffect(()=>{!async function(){if((null==E?void 0:E.startsWith("/auth"))||void 0!==document.cookie.split("; ").find(e=>e.startsWith("".concat(v,"=")))){h(!1);return}try{let e=await g();if(0===e.length){h(!1);return}let r=function(){let e=document.cookie.split("; ").find(e=>e.startsWith("".concat(b,"=")));if(!e)return null;let t=parseInt(e.split("=")[1],10);return isNaN(t)?null:t}(),a=function(e,t){if(!t)return e;let r=new Date(t);return e.filter(e=>e.date>r||e.updatedAt>r)}(e,r);a.length>0&&(i(a),t(!0))}catch(e){console.error("Error fetching updates:",e)}finally{h(!1)}}()},[E]);let j=()=>{!function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Date.now(),t=new Date;t.setFullYear(t.getFullYear()+1),document.cookie="".concat(b,"=").concat(e,"; expires=").concat(t.toUTCString(),"; path=/; SameSite=Strict")}(),t(!1),p(0)},y=r[x];return m||!e||0===r.length?null:(0,a.jsx)(c.lG,{open:e,onOpenChange:e=>!e&&j(),children:(0,a.jsxs)(c.Cf,{className:"max-w-4xl max-h-[90vh] flex flex-col p-0 w-[95vw] sm:w-full",children:[(0,a.jsxs)(c.c7,{className:"px-4 sm:px-6 pt-4 sm:pt-6 pb-4 relative",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)(c.L3,{className:"text-lg sm:text-xl",children:"Recent Updates"}),(0,a.jsxs)(c.rr,{className:"text-xs sm:text-sm",children:["Here's what's new at ",o.C," in the last 14 days"]})]}),w&&(0,a.jsx)(l(),{href:_,onClick:j,className:"absolute top-4 sm:top-6 right-10 sm:right-12 text-xs sm:text-sm text-muted-foreground hover:text-foreground underline underline-offset-2 transition-colors",children:"See all updates"})]}),(0,a.jsx)(u.ScrollArea,{className:"flex-1 px-4 sm:px-6",children:(0,a.jsx)("div",{className:"pb-4",children:y&&(0,a.jsx)(f,{id:y.id,date:y.date,text:y.text,imageUrl:y.imageUrl},y.id)})}),(0,a.jsxs)(c.Es,{className:"px-4 sm:px-6 pb-4 sm:pb-6 pt-4 border-t flex flex-col gap-4",children:[r.length>1&&(0,a.jsxs)("div",{className:"flex items-center justify-center gap-2 sm:gap-4 w-full",children:[(0,a.jsx)(d.$,{variant:"outline",onClick:()=>{x>0&&p(x-1)},disabled:0===x,className:"flex-1 sm:flex-initial min-w-[80px]",children:"Previous"}),(0,a.jsxs)("span",{className:"text-xs sm:text-sm text-muted-foreground whitespace-nowrap px-2",children:[x+1," of ",r.length]}),(0,a.jsx)(d.$,{variant:"outline",onClick:()=>{x{!function(){let e=new Date;e.setFullYear(e.getFullYear()+365),document.cookie="".concat(v,"=true; expires=").concat(e.toUTCString(),"; path=/; SameSite=Strict")}(),t(!1),p(0)},className:"text-left text-muted-foreground hover:text-foreground text-xs sm:text-sm underline underline-offset-2 transition-colors flex-shrink-0",children:"Don't show me updates like this"}),(0,a.jsx)(d.$,{onClick:j,className:"ml-auto flex-shrink-0",children:"Got it"})]})]})]})})}},29312:(e,t,r)=>{"use strict";r.d(t,{GoogleAnalytics:()=>b});var a=r(19002),n=r(52114),s=r(4822),i=r(17943),l=r(93379),o=r.n(l),d=r(30091),c=r(31001),u=r(37811),m=r(45598),h=r(37811),x=r(13401),f=r(37811);if(!f.env.GITHUB_SOURCES_TOKEN||!f.env.GITHUB_SOURCES_REPO){let e=f.cwd(),t=e.endsWith("apps/dashboard")||e.endsWith("apps\\dashboard")?o().resolve(e,"..","..",".env"):o().resolve(e,".env");(0,d.config)({path:t})}let p=(0,i.w)({extends:[(0,i.w)({server:{AUTH_SECRET:c.z.string(),AUTH_GOOGLE_CLIENT_ID:c.z.string().optional(),AUTH_GOOGLE_CLIENT_SECRET:c.z.string().optional(),AUTH_ENABLED_PROVIDERS:c.z.string().optional(),AUTH_DISCORD_CLIENT_ID:c.z.string().optional(),AUTH_DISCORD_CLIENT_SECRET:c.z.string().optional(),AUTH_GITHUB_CLIENT_ID:c.z.string().optional(),AUTH_GITHUB_CLIENT_SECRET:c.z.string().optional(),AUTH_MICROSOFT_ENTRA_ID_CLIENT_ID:c.z.string().optional(),AUTH_MICROSOFT_ENTRA_ID_CLIENT_SECRET:c.z.string().optional()},client:{},runtimeEnv:{AUTH_SECRET:u.env.AUTH_SECRET,AUTH_GOOGLE_CLIENT_ID:u.env.AUTH_GOOGLE_CLIENT_ID,AUTH_GOOGLE_CLIENT_SECRET:u.env.AUTH_GOOGLE_CLIENT_SECRET,AUTH_ENABLED_PROVIDERS:u.env.AUTH_ENABLED_PROVIDERS,AUTH_DISCORD_CLIENT_ID:u.env.AUTH_DISCORD_CLIENT_ID,AUTH_DISCORD_CLIENT_SECRET:u.env.AUTH_DISCORD_CLIENT_SECRET,AUTH_GITHUB_CLIENT_ID:u.env.AUTH_GITHUB_CLIENT_ID,AUTH_GITHUB_CLIENT_SECRET:u.env.AUTH_GITHUB_CLIENT_SECRET,AUTH_MICROSOFT_ENTRA_ID_CLIENT_ID:u.env.AUTH_MICROSOFT_ENTRA_ID_CLIENT_ID,AUTH_MICROSOFT_ENTRA_ID_CLIENT_SECRET:u.env.AUTH_MICROSOFT_ENTRA_ID_CLIENT_SECRET}}),(0,m.H)(),(0,i.w)({server:{EMAIL_FROM:c.z.string(),EMAIL_MAILER:c.z.enum(["NodeMailer","Resend"]),EMAIL_NODEMAILER_URL:c.z.string().optional(),EMAIL_RESEND_API_KEY:c.z.string().optional(),EMAIL_RESEND_RECEIVING_API_KEY:c.z.string().optional(),EMAIL_RESEND_WEBHOOK_SECRET:c.z.string().optional()},runtimeEnv:{EMAIL_FROM:h.env.EMAIL_FROM,EMAIL_MAILER:h.env.EMAIL_MAILER,EMAIL_NODEMAILER_URL:h.env.EMAIL_NODEMAILER_URL,EMAIL_RESEND_API_KEY:h.env.EMAIL_RESEND_API_KEY,EMAIL_RESEND_RECEIVING_API_KEY:h.env.EMAIL_RESEND_RECEIVING_API_KEY,EMAIL_RESEND_WEBHOOK_SECRET:h.env.EMAIL_RESEND_WEBHOOK_SECRET}}),(0,x.H)()],server:{DATABASE_URL:c.z.string().min(1).url(),OPENAI_API_KEY:c.z.string().min(1).optional(),ELEVENLABS_API_KEY:c.z.string().min(1).optional(),AWS_ACCESS_KEY_ID:c.z.string().min(1).optional(),AWS_SECRET_ACCESS_KEY:c.z.string().min(1).optional(),AWS_REGION:c.z.string().min(1).optional(),AWS_BUCKET_NAME:c.z.string().min(1).optional(),DASHBOARD_LOCAL_SKIP_AUTH:c.z.enum(["true","false"]).optional(),DASHBOARD_LOCAL_AUTH_EMAIL:c.z.string().min(1).optional(),DEV_AUTH_BYPASS_ADMIN:c.z.enum(["true","false"]).optional(),GITHUB_SOURCES_TOKEN:c.z.string().min(1).optional(),GITHUB_SOURCES_REPO:c.z.string().min(1).optional()},client:{NEXT_PUBLIC_APP_GOOGLE_ANALYTICS_ID:c.z.string().min(1).optional()},runtimeEnv:{DATABASE_URL:f.env.DATABASE_URL,OPENAI_API_KEY:f.env.OPENAI_API_KEY,ELEVENLABS_API_KEY:f.env.ELEVENLABS_API_KEY,AWS_ACCESS_KEY_ID:f.env.AWS_ACCESS_KEY_ID,AWS_SECRET_ACCESS_KEY:f.env.AWS_SECRET_ACCESS_KEY,AWS_REGION:f.env.AWS_REGION,AWS_BUCKET_NAME:f.env.AWS_BUCKET_NAME,DASHBOARD_LOCAL_SKIP_AUTH:f.env.DASHBOARD_LOCAL_SKIP_AUTH,DASHBOARD_LOCAL_AUTH_EMAIL:f.env.DASHBOARD_LOCAL_AUTH_EMAIL,DEV_AUTH_BYPASS_ADMIN:f.env.DEV_AUTH_BYPASS_ADMIN,GITHUB_SOURCES_TOKEN:f.env.GITHUB_SOURCES_TOKEN,GITHUB_SOURCES_REPO:f.env.GITHUB_SOURCES_REPO,NEXT_PUBLIC_APP_GOOGLE_ANALYTICS_ID:"G-8LYGTG2J03"}});var g=r(53620);function b(){let[e,t]=n.useState(!1),r=n.useRef(!1),i=p.NEXT_PUBLIC_APP_GOOGLE_ANALYTICS_ID;return(n.useEffect(()=>{let e=()=>{let e="accepted"===(0,g.F0)();i&&(0,g.LD)(i,!e),e||(r.current=!1,(0,g.nP)()),t(e)},a=t=>{(t.key===g.Ov||null===t.key)&&e()};return e(),window.addEventListener(g.Dn,e),window.addEventListener("storage",a),()=>{window.removeEventListener(g.Dn,e),window.removeEventListener("storage",a)}},[i]),i&&e)?(0,a.jsx)(s.default,{id:"google-analytics",src:"https://www.googletagmanager.com/gtag/js?id=".concat(i),strategy:"afterInteractive",onReady:()=>{"accepted"!==(0,g.F0)()||r.current||(r.current=!0,(0,g.LD)(i,!1),window.dataLayer=window.dataLayer||[],window.gtag=function(){window.dataLayer.push(arguments)},window.gtag("js",new Date),window.gtag("config",i,{allow_google_signals:!1,allow_ad_personalization_signals:!1}))}}):null}},43506:(e,t,r)=>{"use strict";r.d(t,{HydratedNavbar:()=>e_});var a=r(19002),n=r(52114),s=r(40315),i=r(64406),l=r.n(i),o=r(46675),d=r(94336),c=r(40399),u=r(73003);let m="landing-announcement-dismissed",h={p(e){let{children:t}=e;return(0,a.jsx)("span",{children:t})},a(e){let{href:t,children:r}=e;return t?t.startsWith("/")?(0,a.jsx)(l(),{href:t,className:"underline decoration-white/70 underline-offset-2 transition-colors hover:decoration-white",children:r}):(0,a.jsx)("a",{href:t,target:"_blank",rel:"noreferrer",className:"underline decoration-white/70 underline-offset-2 transition-colors hover:decoration-white",children:r}):(0,a.jsx)(a.Fragment,{children:r})}};function x(e){let{className:t}=e,r=u.C.landing.announcement,[s,i]=n.useState(!1);return(n.useEffect(()=>{r.dismissible&&i("true"===window.sessionStorage.getItem(m))},[r.dismissible]),!r.enabled||s)?null:(0,a.jsxs)("div",{className:(0,c.cn)("relative z-[60] flex min-h-9 items-center overflow-hidden border-b border-[#2f7bf9] bg-[#3F8CFF] px-4 text-center text-[13px] font-normal leading-5 text-white dark:border-[#1F5EBB] dark:bg-[#0F56C8]",t),children:[(0,a.jsx)("div",{className:"pointer-events-none absolute inset-0 opacity-20 [background-image:linear-gradient(60deg,transparent_0,transparent_48%,rgba(255,255,255,0.45)_49%,rgba(255,255,255,0.45)_51%,transparent_52%,transparent_100%)] [background-size:88px_88px]"}),(0,a.jsx)("div",{className:"relative mx-auto flex min-w-0 items-center justify-center px-8",children:(0,a.jsx)(d.oz,{components:h,allowedElements:["p","a","strong","em","code","text"],unwrapDisallowed:!0,children:r.text})}),r.dismissible?(0,a.jsx)("button",{type:"button","aria-label":"Dismiss announcement",className:"absolute right-3 top-1/2 flex h-7 w-7 -translate-y-1/2 items-center justify-center text-white/85 transition-colors hover:text-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/80",onClick:()=>{r.dismissible&&window.sessionStorage.setItem(m,"true"),i(!0)},children:(0,a.jsx)(o.A,{className:"h-4 w-4"})}):null]})}var f=r(95335),p=r(630),g=r(30257),b=r(73412),v=r(13968),E=r(24151),N=r(21704),w=r(50436),_=r(32719),j=r(73844),y=r(89285),I=r(8639),k=r(75030),A=r(36587),C=r(82402),L=r(42328),T=r(96306),S=r(31055),R=r(96519),B=r(42030),D=r(47659);let O=n.forwardRef((e,t)=>{let{className:r,children:n,...s}=e;return(0,a.jsxs)(R.bL,{ref:t,className:(0,c.cn)("relative z-10 flex max-w-max flex-1 items-center justify-center",r),...s,children:[n,(0,a.jsx)(M,{})]})});O.displayName=R.bL.displayName;let U=n.forwardRef((e,t)=>{let{className:r,...n}=e;return(0,a.jsx)(R.B8,{ref:t,className:(0,c.cn)("group flex flex-1 list-none items-center justify-center space-x-1",r),...n})});U.displayName=R.B8.displayName;let P=R.q7,F=(0,B.F)("group inline-flex h-9 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus:outline-none disabled:pointer-events-none disabled:opacity-50 data-[active]:bg-accent/50 data-[state=open]:bg-accent/50"),z=n.forwardRef((e,t)=>{let{className:r,children:n,...s}=e;return(0,a.jsxs)(R.l9,{ref:t,className:(0,c.cn)(F(),"group",r),...s,children:[n," ",(0,a.jsx)(D.A,{className:"relative top-px ml-1 size-3 transition duration-300 group-data-[state=open]:rotate-180","aria-hidden":"true"})]})});z.displayName=R.l9.displayName;let G=n.forwardRef((e,t)=>{let{className:r,...n}=e;return(0,a.jsx)(R.UC,{ref:t,className:(0,c.cn)("left-0 top-0 w-full data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 md:absolute md:w-auto",r),...n})});G.displayName=R.UC.displayName;let H=R.N_,M=n.forwardRef((e,t)=>{let{className:r,...n}=e;return(0,a.jsx)("div",{className:(0,c.cn)("absolute left-0 top-full flex justify-center"),children:(0,a.jsx)(R.LM,{className:(0,c.cn)("origin-top-center relative mt-1.5 h-[var(--radix-navigation-menu-viewport-height)] w-full overflow-hidden rounded-md border bg-popover text-popover-foreground shadow data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-90 md:w-[var(--radix-navigation-menu-viewport-width)]",r),ref:t,...n})})});M.displayName=R.LM.displayName,n.forwardRef((e,t)=>{let{className:r,...n}=e;return(0,a.jsx)(R.C1,{ref:t,className:(0,c.cn)("top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden data-[state=visible]:animate-in data-[state=hidden]:animate-out data-[state=hidden]:fade-out data-[state=visible]:fade-in",r),...n,children:(0,a.jsx)("div",{className:"relative top-[60%] size-2 rotate-45 rounded-tl-sm bg-border shadow-md"})})}).displayName=R.C1.displayName;var W=r(68803);function Y(e){let t=[{title:"Dashboard",href:"/dashboard/app",external:!1},{title:"Learn",href:T.JZ.dashboard.courses.Index,external:!1,items:[{title:"Learning Paths",href:"/courses?type=learning-paths",description:"Structured multi-course journeys to build skills in sequence.",icon:"route"},{title:"Courses",href:"/courses?type=courses",description:"Individual courses for focused learning on a specific topic.",icon:"book"},{title:"Certificates",href:"/courses?type=certificates",description:"Certificate-track offerings and credential-oriented content.",icon:"award"}]},{title:"Explore",href:"/chat",external:!1,items:[{title:"Chat",href:"/chat",description:"Ask questions and get guidance from the academy assistant.",icon:"chat"},{title:"Examples",href:"/templates",description:"Runnable workspace templates to try Ray and Anyscale patterns.",icon:"lightbulb"},...u.C.features.resourcesNavEnabled?[{title:"Resources",href:"/all-examples",description:"Curated notebooks, blogs, and reference material in one place.",icon:"library"}]:[],{title:"AI Infra Cookbook",href:"/ai-infra-cookbook",description:"Map runnable AI infrastructure examples and their dependencies.",icon:"route"}]}];return t.push({title:"Analytics",href:"".concat(T.pc.Dashboard,"/analytics"),external:!1,items:[{title:"Progress",href:"/analytics",description:"Your current learning progress, streaks, and academy rank.",icon:"chart"},...u.C.features.leaderboardNavEnabled?[{title:"Leaderboard",href:"/leaderboard",description:"Compare academy XP, current streaks, and completion momentum.",icon:"flame"}]:[],{title:"Trophies",href:"/trophies",description:"Milestone trophies earned across learning activity and completions.",icon:"trophy"}]}),t.push({title:"Roadmap",href:T.JZ.marketing.Roadmap,external:!0}),t}Y();var K=r(23189),V=r(54848),J=r(37088),Z=r(2071),$=r(81815);let q=$.bL,X=$.l9,Q=n.forwardRef((e,t)=>{let{className:r,align:n="center",sideOffset:s=4,...i}=e;return(0,a.jsx)($.ZL,{children:(0,a.jsx)($.UC,{ref:t,align:n,sideOffset:s,className:(0,c.cn)("z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",r),...i})})});Q.displayName=$.UC.displayName,$.bm;var ee=r(52623);let et="dashboard-dev-mode-overrides",er=["free","tier-1","tier-1-pending-cancel","tier-2","tier-2-pending-cancel","tier-3","tier-3-pending-cancel","testing"],ea={tier:null,visibilityGroupIds:[],mockCertificatePass:!1};function en(e){if("undefined"==typeof document)return;if(!(e.tier||e.visibilityGroupIds.length>0||e.mockCertificatePass)){document.cookie="".concat(et,"=; Max-Age=0; Path=/; SameSite=Lax");return}let t=encodeURIComponent(JSON.stringify({tier:e.tier,visibilityGroupIds:e.visibilityGroupIds,mockCertificatePass:e.mockCertificatePass}));document.cookie="".concat(et,"=").concat(t,"; Max-Age=604800; Path=/; SameSite=Lax")}function es(e){let{className:t}=e,r=(0,s.useRouter)(),[i,l]=(0,n.useState)(!1),[o,d]=(0,n.useState)(null),[u,m]=(0,n.useState)([]),[h,x]=(0,n.useState)(!1),[f,p]=(0,n.useState)([]);return((0,n.useEffect)(()=>{if("localhost:3000"!==window.location.host)return;l(!0);let e=function(){if("undefined"==typeof document)return ea;let e=document.cookie.split("; ").find(e=>e.startsWith("".concat(et,"=")));if(!e)return ea;let t=e.slice(et.length+1);try{let e=JSON.parse(decodeURIComponent(t)),r="string"==typeof e.tier?e.tier:null,a=Array.isArray(e.visibilityGroupIds)?e.visibilityGroupIds.filter(e=>"string"==typeof e):[];return{tier:er.includes(r)?r:null,visibilityGroupIds:[...new Set(a)],mockCertificatePass:!0===e.mockCertificatePass}}catch(e){return ea}}();d(e.tier),m(e.visibilityGroupIds),x(e.mockCertificatePass),fetch("/api/dev-mode/visibility-groups").then(e=>e.ok?e.json():{groups:[]}).then(e=>{p(Array.isArray(e.groups)?e.groups:[])}).catch(()=>{p([])})},[]),i)?(0,a.jsx)("div",{"data-dev-mode-pill":!0,className:(0,c.cn)("hidden lg:block",t),children:(0,a.jsxs)(q,{children:[(0,a.jsx)(X,{asChild:!0,children:(0,a.jsx)(S.$,{variant:"outline",size:"icon","aria-label":"Open dev mode controls",className:"h-9 w-9 rounded-none border-[#D4D4D4] text-[#222222] shadow-none hover:border-[#BEB9B6] hover:bg-transparent hover:text-[#4D4D4D] dark:border-white/20 dark:text-white dark:hover:border-white/40 dark:hover:text-white/80",children:(0,a.jsx)(K.A,{className:"h-4 w-4"})})}),(0,a.jsxs)(Q,{align:"end",className:"w-80 space-y-4",children:[(0,a.jsxs)("div",{className:"space-y-1",children:[(0,a.jsx)("p",{className:"text-sm font-semibold",children:"Assume role state"}),(0,a.jsx)("p",{className:"text-xs text-muted-foreground",children:"Localhost-only overrides for tier and visibility groups."})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(Z.J,{htmlFor:"dev-mode-tier",children:"Tier"}),(0,a.jsxs)(ee.l6,{value:null!=o?o:"none",onValueChange:e=>d("none"===e?null:e),children:[(0,a.jsx)(ee.bq,{id:"dev-mode-tier",children:(0,a.jsx)(ee.yv,{placeholder:"Use real tier"})}),(0,a.jsxs)(ee.gC,{children:[(0,a.jsx)(ee.eb,{value:"none",children:"Use real tier"}),er.map(e=>(0,a.jsx)(ee.eb,{value:e,children:e},e))]})]})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(Z.J,{children:"Visibility groups"}),(0,a.jsx)("div",{className:"max-h-40 space-y-2 overflow-y-auto rounded-md border p-2",children:0===f.length?(0,a.jsx)("p",{className:"text-xs text-muted-foreground",children:"No visibility groups found."}):f.map(e=>(0,a.jsxs)("label",{className:"flex items-center gap-2 text-sm",children:[(0,a.jsx)(J.S,{checked:u.includes(e.id),onCheckedChange:t=>(function(e,t){if(!0!==t){m(t=>t.filter(t=>t!==e));return}m(t=>t.includes(e)?t:[...t,e])})(e.id,t)}),(0,a.jsx)("span",{className:"truncate",children:e.name})]},e.id))})]}),(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsx)(Z.J,{children:"Certificate exams"}),(0,a.jsxs)("label",{className:"flex items-center gap-2 text-sm",children:[(0,a.jsx)(J.S,{checked:h,onCheckedChange:e=>x(!0===e)}),(0,a.jsx)("span",{children:"Enable mock certificate pass"})]}),(0,a.jsx)("p",{className:"text-xs text-muted-foreground",children:'Shows a "Dev: Mock Pass" button on certificate exam lessons.'})]}),(0,a.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,a.jsxs)(S.$,{type:"button",variant:"ghost",size:"sm",onClick:function(){d(null),m([]),x(!1),en(ea),r.refresh()},className:"px-2",children:[(0,a.jsx)(V.A,{className:"mr-1 h-4 w-4"}),"Reset"]}),(0,a.jsx)(S.$,{type:"button",size:"sm",onClick:function(){en({tier:o,visibilityGroupIds:u,mockCertificatePass:h}),r.refresh()},children:"Apply"})]})]})]})}):null}var ei=r(45139),el=r(53369),eo=r(30868),ed=r(23746),ec=r(54995),eu=r(99906),em=r(95298),eh=r(12821),ex=r(89377),ef=r(80823);function ep(e){let{className:t,navItems:r=[],myCourseCount:i=0,...o}=e,[d,u]=n.useState(!1),m=(0,s.usePathname)(),h=(null==m?void 0:m.startsWith("/admin"))||(null==m?void 0:m.startsWith("/manage"));n.useEffect(()=>{document.activeElement instanceof HTMLInputElement&&document.activeElement.blur(),u(!1)},[m]);let x=()=>{let e=window.matchMedia("(min-width: 1024px)");u(t=>!!t&&!e.matches)};n.useEffect(()=>{x();let e=window.matchMedia("(min-width: 1024px)");return e.addEventListener("change",x),()=>e.removeEventListener("change",x)},[]);let f=()=>{u(e=>!e)};return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{className:(0,c.cn)("flex items-center justify-between",t),...o,children:[(0,a.jsx)(l(),{href:h?"/manage":"/",className:"flex items-center gap-2.5 leading-none",children:(0,a.jsx)(el.Logo,{className:"translate-y-[1px]"})}),(0,a.jsxs)(S.$,{variant:"ghost",size:"icon","aria-expanded":d,"aria-label":"Toggle Mobile Menu",onClick:f,className:"flex aspect-square h-10 select-none flex-col items-center justify-center rounded-none hover:bg-[#FAFAFA] dark:hover:bg-white/10",children:[(0,a.jsx)(eo.P.div,{className:"w-5 origin-center border-t-2 border-[#222222] dark:border-white",initial:{translateY:"-3px"},animate:d?{rotate:"45deg",translateY:"1px"}:{translateY:"-3px",rotate:"0deg"},transition:{bounce:0,duration:.1}}),(0,a.jsx)(eo.P.div,{className:"w-5 origin-center border-t-2 border-[#222222] dark:border-white",transition:{bounce:0,duration:.1},initial:{translateY:"3px"},animate:d?{rotate:"-45deg",translateY:"-1px"}:{translateY:"3px",rotate:"0deg",scaleX:1}})]})]}),d&&(0,a.jsx)(eh.Z,{asChild:!0,children:(0,a.jsx)(ex.A,{allowPinchZoom:!0,enabled:!0,children:(0,a.jsx)(eg,{navItems:r,myCourseCount:i,onLinkClicked:f})})})]})}function eg(e){var t;let{navItems:r,myCourseCount:i,onLinkClicked:o}=e,d=(0,s.usePathname)(),{status:u}=(0,f.wV)(),[m,h]=n.useState(null),x="/auth/sign-in"===d;if((null==d?void 0:d.startsWith("/admin"))||(null==d?void 0:d.startsWith("/manage")))return(0,a.jsx)("div",{className:"fixed inset-0 z-50 mt-[77px] overflow-y-auto bg-white animate-in fade-in-0 dark:bg-background",children:(0,a.jsxs)("div",{className:"mx-5 flex min-h-full flex-col border-l border-r border-[#EBEBEB] dark:border-white/15",children:[(0,a.jsx)("ul",{className:"w-full",children:(0,a.jsx)("li",{className:"border-b border-[#EBEBEB] dark:border-white/15",children:(0,a.jsx)(l(),{href:"/manage",className:(0,c.cn)((0,S.r)({variant:"ghost"}),"h-14 w-full justify-start rounded-none px-4 text-[15px] font-medium text-[#222222] hover:bg-[#FAFAFA] dark:text-white dark:hover:bg-white/10"),onClick:o,children:(0,a.jsx)("span",{children:"Manage"})})})}),(0,a.jsxs)("div",{className:"flex w-full items-center justify-between gap-2 border-b border-[#EBEBEB] p-4 dark:border-white/15",children:[(0,a.jsx)("div",{className:"text-[15px] font-medium text-[#222222] dark:text-white",children:"Theme"}),(0,a.jsx)(em.H,{})]}),(0,a.jsx)("div",{className:"p-4",children:(0,a.jsx)(ef.SignOutButton,{type:"button",variant:"default",className:"w-full justify-start rounded-none bg-black text-white dark:bg-white dark:text-black",children:"Sign out"})})]})});let p=[...r];return(0,a.jsx)("div",{className:"fixed inset-0 z-50 mt-[77px] overflow-y-auto bg-white animate-in fade-in-0 dark:bg-background",children:(0,a.jsxs)("div",{className:"mx-5 flex min-h-full flex-col border-l border-r border-[#EBEBEB] dark:border-white/15",children:[m?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("div",{className:"flex h-14 shrink-0 items-center border-b border-[#EBEBEB] px-4 dark:border-white/15",children:(0,a.jsxs)("button",{type:"button",className:"flex items-center gap-1 text-[15px] font-medium text-[#222222] transition-colors hover:text-[#0066FF] dark:text-white dark:hover:text-white/80",onClick:()=>h(null),children:[(0,a.jsx)(ed.A,{className:"h-4 w-4"}),"Back"]})}),(0,a.jsx)("div",{className:"border-b border-[#EBEBEB] px-4 py-5 dark:border-white/15",children:(0,a.jsx)("p",{className:"font-mono text-[11px] uppercase leading-none text-[#727272] dark:text-white/55",children:m.title})}),(0,a.jsxs)("ul",{className:"w-full",children:["Learn"===m.title&&i>0?(0,a.jsx)("li",{className:"border-b border-[#EBEBEB] dark:border-white/15",children:(0,a.jsxs)(l(),{href:"/mycourses",className:"block px-4 py-5 transition-colors hover:bg-[#FAFAFA] dark:hover:bg-white/10",onClick:o,children:[(0,a.jsx)("span",{className:"block text-[15px] font-medium leading-5 text-[#222222] dark:text-white",children:"My Courses"}),(0,a.jsx)("span",{className:"mt-2 block text-[13px] leading-5 text-[#727272] dark:text-white/55",children:1===i?"1 enrolled course":"".concat(i," enrolled courses")})]})}):null,null===(t=m.items)||void 0===t?void 0:t.map(e=>(0,a.jsx)("li",{className:"border-b border-[#EBEBEB] dark:border-white/15",children:(0,a.jsxs)(l(),{href:e.href,target:e.external?"_blank":void 0,rel:e.external?"noopener noreferrer":void 0,className:"block px-4 py-5 transition-colors hover:bg-[#FAFAFA] dark:hover:bg-white/10",onClick:o,children:[(0,a.jsx)("span",{className:"block text-[15px] font-medium leading-5 text-[#222222] dark:text-white",children:e.title}),e.description?(0,a.jsx)("span",{className:"mt-2 block text-[13px] leading-5 text-[#727272] dark:text-white/55",children:e.description}):null]})},e.title))]})]}):(0,a.jsx)("ul",{className:"w-full",children:p.map(e=>{var t;return(0,a.jsx)("li",{className:"border-b border-[#EBEBEB] dark:border-white/15",children:(null===(t=e.items)||void 0===t?void 0:t.length)?(0,a.jsxs)("button",{type:"button",className:"flex h-14 w-full items-center justify-between px-4 text-left text-[15px] font-medium text-[#222222] transition-colors hover:bg-[#FAFAFA] dark:text-white dark:hover:bg-white/10",onClick:()=>h(e),children:[(0,a.jsx)("span",{children:e.title}),(0,a.jsx)(ec.A,{className:"h-4 w-4 text-[#727272] dark:text-white/55"})]}):(0,a.jsx)(l(),{href:e.href,target:e.external?"_blank":void 0,rel:e.external?"noopener noreferrer":void 0,className:(0,c.cn)((0,S.r)({variant:"ghost"}),"h-14 w-full justify-start rounded-none px-4 text-[15px] font-medium text-[#222222] hover:bg-[#FAFAFA] dark:text-white dark:hover:bg-white/10"),onClick:o,children:(0,a.jsx)("span",{children:e.title})})},e.title)})}),(0,a.jsxs)("div",{className:"mt-auto flex w-full items-center justify-between gap-2 border-b border-t border-[#EBEBEB] p-4 dark:border-white/15",children:[(0,a.jsx)("div",{className:"text-[15px] font-medium text-[#222222] dark:text-white",children:"Theme"}),(0,a.jsx)(em.H,{})]}),x||"authenticated"!==u?(0,a.jsxs)("div",{className:"flex w-full flex-col gap-2 p-4",children:[(0,a.jsx)(l(),{href:eu.JZ.dashboard.auth.SignIn,className:(0,c.cn)((0,S.r)({variant:"outline"}),"w-full justify-start rounded-none border-[#D4D4D4] text-[#222222] dark:border-white/20 dark:text-white dark:hover:border-white/40"),onClick:o,children:"Sign in"}),(0,a.jsx)(l(),{href:eu.JZ.dashboard.auth.SignUp,className:(0,c.cn)((0,S.r)({variant:"default"}),"w-full justify-start rounded-none bg-black text-white dark:bg-white dark:text-black"),onClick:o,children:"Create account"})]}):(0,a.jsx)("div",{className:"flex w-full flex-col gap-2 p-4",children:(0,a.jsx)(ef.SignOutButton,{type:"button",variant:"default",className:"w-full justify-start rounded-none bg-black text-white dark:bg-white dark:text-black",children:"Sign out"})})]})})}function eb(e){let{href:t,label:r,value:n,icon:s,className:i}=e;return(0,a.jsxs)(l(),{href:t,"aria-label":r,className:(0,c.cn)("inline-flex h-10 items-center gap-1.5 border border-transparent px-3 text-sm font-medium transition-colors hover:bg-[#FAFAFA] dark:hover:bg-white/10",i),children:[(0,a.jsx)(s,{className:"h-4 w-4"}),(0,a.jsx)("span",{children:n})]})}function ev(e){let{count:t}=e;return 0===t?null:(0,a.jsx)("li",{children:(0,a.jsx)(H,{asChild:!0,children:(0,a.jsxs)(l(),{href:"/mycourses",className:"group flex items-start gap-4 border-b border-[#EBEBEB] bg-[#FAFAFA] px-6 py-5 transition-colors hover:bg-white dark:border-white/15 dark:bg-white/5 dark:hover:bg-white/10",children:[(0,a.jsx)("span",{className:"mt-0.5 flex h-10 w-10 shrink-0 items-center justify-center border border-[#EBEBEB] bg-white dark:border-white/15 dark:bg-background",children:(0,a.jsx)(_.A,{className:"h-5 w-5 text-[#727272] dark:text-white/55"})}),(0,a.jsxs)("span",{className:"min-w-0",children:[(0,a.jsx)("span",{className:"block text-[15px] font-medium leading-5 text-[#222222] transition-colors group-hover:text-[#0066FF] dark:text-white dark:group-hover:text-white/80",children:"My Courses"}),(0,a.jsx)("span",{className:"mt-1.5 block text-[13px] leading-5 text-[#727272] dark:text-white/55",children:1===t?"1 enrolled course":"".concat(t," enrolled courses")})]})]})})})}function eE(e){switch(e){case"Learn":return I.A;case"Dashboard":default:return k.A;case"Analytics":return b.A;case"Explore":return A.A}}function eN(e){return!!("/dashboard"===e||e.startsWith("/dashboard/")||"/manage"===e||e.startsWith("/manage/"))||/^\/courses\/[^/]+\/modules\/[^/]+\/[^/]+/.test(e)}function ew(){var e,t,r;let i=(0,s.usePathname)(),{data:o,status:d,update:u}=(0,f.wV)(),[m,h]=n.useState(!1),I="/auth/sign-in"===i,k=null==i?void 0:i.startsWith("/auth/"),A=m&&!I&&"authenticated"===d,R=A?null==o?void 0:null===(e=o.user)||void 0===e?void 0:e.id:void 0,[B,D]=n.useState(null),[F,M]=n.useState(0),[K,V]=n.useState(0),[J,Z]=n.useState(!1),$=n.useRef(null),q=(null==i?void 0:i.startsWith("/admin"))||(null==i?void 0:i.startsWith("/manage")),X=n.useMemo(()=>Y(),[]);n.useEffect(()=>{h(!0)},[]),n.useEffect(()=>{m&&!k&&"unauthenticated"===d&&$.current!==i&&($.current=i,u())},[m,k,i,d,u]);let Q=n.useMemo(()=>{let e=X.find(e=>"Dashboard"===e.title),t=X.find(e=>"Learn"===e.title),r=X.find(e=>"Explore"===e.title),a=X.find(e=>"Analytics"===e.title),n=[];if(t){var s;let e=[...null!==(s=t.items)&&void 0!==s?s:[]];K>0&&e.push({title:"Private Courses",href:"/private",description:"Courses available through your account or visibility groups.",icon:"shield"}),n.push({title:t.title,href:t.href,external:t.external,icon:eE(t.title),items:e})}return r&&n.push({title:r.title,href:r.href,external:r.external,icon:eE(r.title),items:r.items}),A&&a&&n.push({title:a.title,href:a.href,external:a.external,icon:eE("Analytics"),items:a.items}),A&&e&&n.push({title:e.title,href:e.href,external:e.external,icon:eE(e.title)}),n},[A,X,K]);if(n.useEffect(()=>{if(!A||!R){D(null);return}let e=(0,ei.V9)(R);e&&D(e);let t=async function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];e&&(0,ei.Ye)(R);let t=await (0,ei.XZ)(R,{force:e});t&&D(t)};t(!e);let r=()=>{"visible"===document.visibilityState&&t(!0)},a=(0,ei.BT)(e=>{e&&e!==R||t(!0)});return document.addEventListener("visibilitychange",r),()=>{document.removeEventListener("visibilitychange",r),a()}},[A,R]),n.useEffect(()=>{if(!A||!R){M(0),V(0);return}let e=new AbortController;return(async()=>{try{var t,r;let a=await fetch("/api/user/my-courses",{signal:e.signal});if(!a.ok){M(0);return}let n=await a.json();M(null!==(t=n.count)&&void 0!==t?t:0),V(null!==(r=n.privateCount)&&void 0!==r?r:0)}catch(t){e.signal.aborted||(M(0),V(0))}})(),()=>e.abort()},[A,R]),n.useEffect(()=>{if(!A||!R){Z(!1);return}let e=new AbortController;return(async()=>{try{var t;let r=await fetch("/api/user/manage-access",{signal:e.signal});if(!r.ok){Z(!1);return}let a=await r.json();Z(null!==(t=a.canAccessManage)&&void 0!==t&&t)}catch(t){e.signal.aborted||Z(!1)}})(),()=>e.abort()},[A,R]),q)return(0,a.jsx)("section",{"data-app-navbar":!0,className:"sticky inset-x-0 top-0 z-40 border-b border-[#EBEBEB] bg-white dark:border-white/15 dark:bg-background",children:(0,a.jsxs)("div",{className:"w-full",children:[(0,a.jsxs)("nav",{className:"hidden h-[76px] items-center justify-between px-6 lg:flex",children:[(0,a.jsx)("div",{className:"flex items-center gap-x-6",children:(0,a.jsx)(l(),{href:"/manage",className:"flex items-center gap-2.5 leading-none",children:(0,a.jsx)(el.Logo,{className:"translate-y-[1px]"})})}),(0,a.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,a.jsx)(es,{}),(0,a.jsx)(W.ThemeToggle,{className:"border-none shadow-none"}),(0,a.jsx)(ef.SignOutButton,{type:"button",variant:"outline",size:"icon","aria-label":"Sign out",className:"rounded-none dark:border-white/20 dark:text-white dark:hover:border-white/40",children:(0,a.jsx)(C.A,{className:"h-4 w-4"})})]})]}),(0,a.jsx)(ep,{className:"h-[76px] px-6 lg:hidden"})]})});let ee=eN(i),et="/"===i;return(0,a.jsxs)(a.Fragment,{children:[et?(0,a.jsx)(x,{}):null,(0,a.jsx)("section",{"data-app-navbar":!0,className:"sticky inset-x-0 top-0 z-50 border-b border-[#EBEBEB] bg-white dark:border-white/15 dark:bg-background",children:(0,a.jsxs)("div",{className:(0,c.cn)(ee?"w-full":"mx-5 xl:mx-auto xl:max-w-[1220px]"),children:[(0,a.jsxs)("nav",{className:(0,c.cn)("relative hidden h-[76px] items-center bg-white px-4 dark:bg-background lg:flex xl:px-6",ee?"px-6":"border-l border-r border-[#EBEBEB] dark:border-white/15"),children:[(0,a.jsx)("div",{className:"flex items-center",children:(0,a.jsx)(l(),{href:"/",className:"flex items-center gap-2.5 py-5 pr-8 leading-none",children:(0,a.jsx)(el.Logo,{className:"translate-y-[1px]"})})}),(0,a.jsx)("div",{className:"absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2",children:(0,a.jsx)(O,{className:"[&>div>div]:mt-0 [&>div>div]:rounded-none [&>div>div]:border-[#EBEBEB] [&>div>div]:bg-white [&>div>div]:shadow-[0_4px_16px_0_rgba(0,0,0,0.06)] dark:[&>div>div]:border-white/15 dark:[&>div>div]:bg-background",style:{"--radius":"0rem"},children:(0,a.jsx)(U,{className:"space-x-0",children:Q.map((e,t)=>{let r="Dashboard"===e.title&&(i.startsWith("/dashboard/app")||i.startsWith("/dashboard/")||"/dashboard"===i),n="Learn"===e.title&&(i.startsWith("/courses")||i.startsWith("/mycourses")||i.startsWith("/private")),s="Explore"===e.title&&(i.startsWith("/chat")||i.startsWith("/templates")||i.startsWith("/all-examples")),o="Analytics"===e.title&&(i.startsWith("/analytics")||i.startsWith("/leaderboard")||i.startsWith("/trophies")),d=!e.external&&(r||s||n||o||(e.href.startsWith("/")?i.startsWith(e.href):i.startsWith((0,T.Hm)(e.href,T.pc.Marketing))));return e.items&&e.items.length>0?(0,a.jsxs)(P,{children:[(0,a.jsx)(z,{className:(0,c.cn)("relative h-[76px] rounded-none bg-transparent px-4 text-[15px] font-medium leading-5 text-[#222222] transition-colors hover:bg-transparent hover:text-[#0066FF] focus:bg-transparent focus:text-[#0066FF] data-[active]:bg-transparent data-[active]:text-[#0066FF] data-[state=open]:bg-transparent data-[state=open]:text-[#0066FF] dark:text-white/85 dark:hover:text-white dark:focus:text-white dark:data-[active]:text-white dark:data-[state=open]:text-white",d&&"text-[#0066FF] after:absolute after:bottom-0 after:left-0 after:right-0 after:h-0.5 after:bg-[#0066FF]"),"data-active":d?"":void 0,children:e.title}),(0,a.jsx)(G,{children:(0,a.jsxs)("ul",{className:"w-[420px] space-y-0 p-0",children:["Learn"===e.title?(0,a.jsx)(ev,{count:F}):null,e.items.map(e=>(0,a.jsx)("li",{children:(0,a.jsx)(H,{asChild:!0,children:(0,a.jsxs)(l(),{href:e.href,target:e.external?"_blank":void 0,rel:e.external?"noopener noreferrer":void 0,className:"group flex items-start gap-4 border-b border-[#EBEBEB] px-6 py-5 transition-colors last:border-b-0 hover:bg-[#FAFAFA] dark:border-white/15 dark:hover:bg-white/10",children:[(0,a.jsx)("span",{className:"mt-0.5 flex h-10 w-10 shrink-0 items-center justify-center border border-[#EBEBEB] bg-white dark:border-white/15 dark:bg-background",children:(()=>{let t=function(e){switch(e){case"route":return p.A;case"award":return g.A;case"chart":return b.A;case"flame":return v.A;case"trophy":return E.A;case"chat":return N.A;case"lightbulb":return w.A;case"library":return _.A;case"shield":return j.A;default:return y.A}}(e.icon);return(0,a.jsx)(t,{className:"h-5 w-5 text-[#727272] dark:text-white/55"})})()}),(0,a.jsxs)("span",{className:"min-w-0",children:[(0,a.jsx)("span",{className:"block text-[15px] font-medium leading-5 text-[#222222] transition-colors group-hover:text-[#0066FF] dark:text-white dark:group-hover:text-white/80",children:e.title}),e.description?(0,a.jsx)("span",{className:"mt-2 block text-[13px] leading-5 text-[#727272] dark:text-white/55",children:e.description}):null]})]})})},e.title))]})})]},"".concat(e.title,"-").concat(t)):(0,a.jsx)(P,{children:(0,a.jsx)(H,{asChild:!0,active:d,className:(0,c.cn)("relative h-[76px] rounded-none bg-transparent px-4 text-[15px] font-medium leading-5 text-[#222222] transition-colors hover:bg-transparent hover:text-[#0066FF] focus:bg-transparent focus:text-[#0066FF] data-[active]:bg-transparent data-[active]:text-[#0066FF] dark:text-white/85 dark:hover:text-white dark:focus:text-white dark:data-[active]:text-white",d&&"text-[#0066FF] after:absolute after:bottom-0 after:left-0 after:right-0 after:h-0.5 after:bg-[#0066FF]"),children:(0,a.jsx)(l(),{href:e.href,target:e.external?"_blank":void 0,rel:e.external?"noopener noreferrer":void 0,className:"flex items-center",children:e.title})})},"".concat(e.title,"-").concat(t))})})})}),(0,a.jsx)("div",{className:"ml-auto flex items-center gap-1.5",children:A?(0,a.jsxs)(a.Fragment,{children:[A?(0,a.jsxs)(a.Fragment,{children:[J?(0,a.jsxs)(l(),{href:"/manage",target:"_blank",rel:"noopener noreferrer",className:(0,c.cn)((0,S.r)({variant:"outline"}),"h-9 rounded-none border-[#D4D4D4] px-4 text-[14px] font-medium leading-[17px] text-[#222222] hover:border-[#BEB9B6] hover:bg-transparent hover:text-[#4D4D4D] dark:border-white/20 dark:text-white dark:hover:border-white/40 dark:hover:text-white/80"),children:[(0,a.jsx)(j.A,{className:"mr-2 h-4 w-4"}),"Admin"]}):null,(0,a.jsx)(es,{}),(0,a.jsx)(eb,{href:"/analytics",label:"Open analytics streaks",value:null!==(t=null==B?void 0:B.currentStreak)&&void 0!==t?t:0,icon:v.A,className:"text-[#0066FF]"}),(0,a.jsx)(eb,{href:"/analytics",label:"Open analytics rank",value:null!==(r=null==B?void 0:B.level)&&void 0!==r?r:1,icon:L.A,className:"text-[#222222] dark:text-white"})]}):null,(0,a.jsx)(W.ThemeToggle,{className:"border-none shadow-none"}),(0,a.jsx)(ef.SignOutButton,{type:"button",variant:"outline",size:"icon","aria-label":"Sign out",className:"rounded-none border-[#D4D4D4] dark:border-white/20 dark:text-white dark:hover:border-white/40",children:(0,a.jsx)(C.A,{className:"h-4 w-4"})})]}):(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(W.ThemeToggle,{className:"border-none shadow-none"}),(0,a.jsx)(l(),{href:T.JZ.dashboard.auth.SignIn,className:(0,c.cn)((0,S.r)({variant:"outline"}),"h-9 rounded-none border-[#D4D4D4] px-4 text-[14px] font-medium leading-[17px] text-[#222222] hover:border-[#BEB9B6] hover:bg-transparent hover:text-[#4D4D4D] dark:border-white/20 dark:text-white dark:hover:border-white/40 dark:hover:text-white/80"),children:"Sign in"}),(0,a.jsx)(l(),{href:T.JZ.dashboard.auth.SignUp,className:(0,c.cn)((0,S.r)({variant:"default"}),"h-9 rounded-none bg-black px-4 text-[14px] font-medium leading-[17px] text-white hover:bg-black/85 dark:bg-white dark:text-black dark:hover:bg-white/85"),children:"Create account"})]})})]}),(0,a.jsx)(ep,{className:(0,c.cn)("h-[76px] lg:hidden",ee?"px-6":"border-l border-r border-[#EBEBEB] px-4 dark:border-white/15"),navItems:Q,myCourseCount:F})]})})]})}function e_(){let e=(0,s.usePathname)(),[t,r]=n.useState(!1),i="/"===e,l=eN(e);return(n.useEffect(()=>{r(!0)},[]),t)?(0,a.jsx)(ew,{}):(0,a.jsxs)(a.Fragment,{children:[i?(0,a.jsx)(x,{}):null,(0,a.jsx)("section",{"data-app-navbar":!0,className:"sticky inset-x-0 top-0 z-50 border-b border-[#EBEBEB] bg-white dark:border-white/15 dark:bg-black",children:(0,a.jsx)("div",{className:l?"w-full":"mx-5 xl:mx-auto xl:max-w-[1220px]",children:(0,a.jsx)("div",{className:l?"h-[76px]":"h-[76px] border-l border-r border-[#EBEBEB] dark:border-white/15"})})})]})}},53369:(e,t,r)=>{"use strict";r.d(t,{Logo:()=>l});var a=r(19002),n=r(40570),s=r(40399),i=r(73003);function l(e){let{hideWordmark:t=!1,height:r,width:l,className:o,...d}=e,c=null!=r?r:t?36:32,u=null!=l?l:c,m=Math.round(.68*c);return(0,a.jsx)("div",{className:(0,s.cn)("relative flex items-center gap-2",o),...d,children:(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(n.default,{src:i.C.branding.logos.mark.light,alt:t?i.C.appName:"","aria-hidden":!t,height:c,width:u,className:"object-contain",priority:!0}),t?null:(0,a.jsx)("span",{className:"font-semibold leading-none text-foreground",style:{fontSize:m},children:i.C.appName})]})})}},80823:(e,t,r)=>{"use strict";r.d(t,{SignOutButton:()=>o});var a=r(19002);r(52114);var n=r(95335),s=r(99906),i=r(31055),l=r(95836);function o(e){let t=async()=>{try{await (0,n.CI)({redirect:!0,redirectTo:s.JZ.dashboard.auth.SignIn})}catch(e){l.o.error("Couldn't sign out")}};return(0,a.jsx)(i.$,{...e,onClick:r=>{var a;null===(a=e.onClick)||void 0===a||a.call(e,r),t()}})}},87977:(e,t,r)=>{"use strict";r.d(t,{CookieBanner:()=>u});var a=r(19002),n=r(52114),s=r(64406),i=r.n(s),l=r(63728),o=r(30868),d=r(31055),c=r(53620);function u(){let[e,t]=n.useState(!1);return n.useEffect(()=>{let e=()=>t(null===(0,c.F0)()),r=t=>{(t.key===c.Ov||null===t.key)&&e()};return e(),window.addEventListener(c.Dn,e),window.addEventListener("storage",r),()=>{window.removeEventListener(c.Dn,e),window.removeEventListener("storage",r)}},[]),(0,a.jsxs)(a.Fragment,{children:[!e&&(0,a.jsx)(d.$,{type:"button",variant:"outline",size:"sm",className:"fixed bottom-2 left-2 z-40 shadow-sm",onClick:()=>t(!0),children:"Cookie preferences"}),(0,a.jsx)(l.N,{children:e&&(0,a.jsx)(o.P.div,{initial:{opacity:0,y:50},animate:{opacity:1,y:0,transition:{duration:.3,delay:0}},exit:{opacity:0,y:50,transition:{duration:.3}},role:"region","aria-label":"Analytics cookie preferences",className:"fixed inset-x-2 bottom-2 z-50 rounded-xl sm:bottom-4 sm:left-4 sm:right-auto sm:max-w-md",children:(0,a.jsxs)("div",{className:"rounded-xl border bg-background p-4 shadow-lg",children:[(0,a.jsxs)("p",{className:"mb-3 text-sm",children:["With your permission, we use Google Analytics cookies to understand how this site is used. Analytics stays off unless you accept. Essential cookies for sign-in and site functionality remain enabled. You can change your choice at any time in Cookie preferences."," ",(0,a.jsx)(i(),{href:"/cookie-policy",className:"underline hover:text-primary",children:"Learn more"})]}),(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsx)(d.$,{type:"button",variant:"outline",className:"w-full",onClick:()=>{t(!1),(0,c.T1)("denied")},children:"Reject analytics"}),(0,a.jsx)(d.$,{type:"button",variant:"outline",className:"w-full",onClick:()=>{t(!1),(0,c.T1)("accepted")},children:"Accept analytics"})]})]})})})]})}},73003:(e,t,r)=>{"use strict";r.d(t,{C:()=>n});var a=r(34302);let n={appName:a.C,appDescription:a.$,typography:{sans:{family:"Geist",cssVariable:"--font-sans",tailwindClass:"font-sans",weights:{text:400,heading:600}}},branding:{logos:{full:{light:"/brand/anyscale-logo-blue.png",dark:"/brand/anyscale-logo-blue.png"},mark:{light:"/brand/anyscale-mark.png",dark:"/brand/anyscale-mark.png"}}},theme:{defaultTheme:"light"},landing:{announcement:{enabled:!1,dismissible:!0,text:"Ray Summit returns Aug 24-26, 2026. [Save 50% on your pass now!](https://www.anyscale.com/ray-summit)"},heroStyle:"lottieBackground"},socials:[{name:"X",href:"https://x.com/raydistributed",platform:"x"},{name:"LinkedIn",href:"https://www.linkedin.com/company/joinanyscale/",platform:"linkedin"},{name:"GitHub",href:"https://github.com/ray-project/ray",platform:"github"}],footer:{poweredBy:{name:"Manyfold Labs",href:"https://manyfoldlabs.com",logoSrc:"/manyfold_labs.png"}},external:{primaryDomain:"coursifai.com",marketingOrigin:"https://coursifai.com",supportEmail:"support@coursifai.com",inboundEmailForwardTo:"support@coursifai.com",inboundAcceptedRecipients:["max@coursifai.com","support@coursifai.com"]},features:{blogPublicEnabled:!1,contentTierGatingEnabled:!1,migratedAccountNoticeEnabled:!0,leaderboardNavEnabled:!1,resourcesNavEnabled:!1}}},53620:(e,t,r)=>{"use strict";r.d(t,{Dn:()=>n,F0:()=>i,LD:()=>o,Ov:()=>a,T1:()=>l,nP:()=>d});let a="cookie_consent",n="cookieConsentChanged",s=null;function i(){try{let e=window.localStorage.getItem(a);return"accepted"===e||"denied"===e?e:null}catch(e){return s}}function l(e){s=e;try{window.localStorage.setItem(a,e)}catch(e){}window.dispatchEvent(new Event(n))}function o(e,t){window["ga-disable-".concat(e)]=t}function d(){let e=document.cookie.split(";").map(e=>e.trim().split("=")[0]),t=window.location.hostname.split("."),r=["",...t.map((e,r)=>t.slice(r).join("."))];for(let t of e)if("_ga"===t||t.startsWith("_ga_")||"_gid"===t||t.startsWith("_gat"))for(let e of r)document.cookie="".concat(t,"=; Max-Age=0; Path=/").concat(e?"; Domain=".concat(e):"")}},45139:(e,t,r)=>{"use strict";r.d(t,{BT:()=>d,V9:()=>s,XZ:()=>l,Ye:()=>i,c:()=>o});let a="gamification-mini:refresh";function n(e){return"".concat("gamification-mini",":").concat(e)}function s(e){try{let t=localStorage.getItem(n(e));if(!t)return null;let r=JSON.parse(t);if("number"!=typeof r.currentStreak||"number"!=typeof r.level||"number"!=typeof r.timestamp||Date.now()-r.timestamp>3e5)return localStorage.removeItem(n(e)),null;return{currentStreak:r.currentStreak,level:r.level}}catch(t){return localStorage.removeItem(n(e)),null}}function i(e){try{localStorage.removeItem(n(e))}catch(e){}}async function l(e,t){var r;if(!(null!==(r=null==t?void 0:t.force)&&void 0!==r&&r)){let t=s(e);if(t)return t}try{let t=await fetch("/api/user/gamification-mini",{cache:"no-store"});if(!t.ok)return s(e);let r=await t.json();if("number"!=typeof r.currentStreak||"number"!=typeof r.level)return s(e);let a={currentStreak:r.currentStreak,level:r.level};return!function(e,t){try{localStorage.setItem(n(e),JSON.stringify({...t,timestamp:Date.now()}))}catch(e){}}(e,a),a}catch(t){return s(e)}}async function o(e){i(e);let t=await l(e,{force:!0});return window.dispatchEvent(new CustomEvent(a,{detail:{userId:e}})),t}function d(e){let t=t=>{let r=t.detail;e(null==r?void 0:r.userId)};return window.addEventListener(a,t),()=>{window.removeEventListener(a,t)}}},99906:(e,t,r)=>{"use strict";r.d(t,{JZ:()=>a.JZ});var a=r(96306)},45598:(e,t,r)=>{"use strict";r.d(t,{H:()=>i});var a=r(17943),n=r(31001),s=r(37811);let i=()=>(0,a.w)({server:{BILLING_STRIPE_SECRET_KEY:n.z.string().optional(),BILLING_STRIPE_WEBHOOK_SECRET:n.z.string().optional(),BILLING_TIER_1_PRODUCT_ID:n.z.string().optional(),BILLING_TIER_1_PRODUCT_PRICE_ID:n.z.string().optional(),BILLING_TIER_2_PRODUCT_ID:n.z.string().optional(),BILLING_TIER_2_PRODUCT_PRICE_ID:n.z.string().optional(),BILLING_TIER_3_PRODUCT_ID:n.z.string().optional(),BILLING_TIER_3_PRODUCT_PRICE_ID:n.z.string().optional(),BILLING_UNIT:n.z.enum(["per_seat","per_organization"])},client:{NEXT_PUBLIC_BILLING_STRIPE_PUBLISHABLE_KEY:n.z.string().min(1)},runtimeEnv:{BILLING_STRIPE_SECRET_KEY:s.env.BILLING_STRIPE_SECRET_KEY,BILLING_STRIPE_WEBHOOK_SECRET:s.env.BILLING_STRIPE_WEBHOOK_SECRET,BILLING_TIER_1_PRODUCT_ID:s.env.BILLING_TIER_1_PRODUCT_ID,BILLING_TIER_1_PRODUCT_PRICE_ID:s.env.BILLING_TIER_1_PRODUCT_PRICE_ID,BILLING_TIER_2_PRODUCT_ID:s.env.BILLING_TIER_2_PRODUCT_ID,BILLING_TIER_2_PRODUCT_PRICE_ID:s.env.BILLING_TIER_2_PRODUCT_PRICE_ID,BILLING_TIER_3_PRODUCT_ID:s.env.BILLING_TIER_3_PRODUCT_ID,BILLING_TIER_3_PRODUCT_PRICE_ID:s.env.BILLING_TIER_3_PRODUCT_PRICE_ID,BILLING_UNIT:s.env.BILLING_UNIT,NEXT_PUBLIC_BILLING_STRIPE_PUBLISHABLE_KEY:"TODO"}})},34302:(e,t,r)=>{"use strict";r.d(t,{$:()=>n,C:()=>a});let a="Anyscale Academy",n="Learn to build and deploy AI applications at scale with Ray and Anyscale."},31055:(e,t,r)=>{"use strict";r.d(t,{$:()=>c,r:()=>d});var a=r(19002),n=r(52114),s=r(4302),i=r(42030),l=r(40399),o=r(56130);let d=(0,i.F)("inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-transparent shadow-sm hover:bg-accent hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 rounded-md px-3 text-xs",lg:"h-10 rounded-md px-8",icon:"size-9"}},defaultVariants:{variant:"default",size:"default"}}),c=n.forwardRef((e,t)=>{let{className:r,variant:n,size:i,asChild:c=!1,loading:u=!1,children:m,...h}=e,x=c?s.DX:"button";return(0,a.jsx)(x,{className:(0,l.cn)(d({variant:n,size:i,className:r}),u&&"relative"),ref:t,...h,children:u?(0,a.jsxs)("span",{children:[(0,a.jsx)("span",{className:(0,l.cn)({"opacity-0":u}),children:m}),(0,a.jsx)("span",{className:"absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2",children:(0,a.jsx)(o.y,{className:"text-current size-4"})})]}):m})});c.displayName="Button"},41181:(e,t,r)=>{"use strict";r.d(t,{BT:()=>d,Wu:()=>c,ZB:()=>o,Zp:()=>i,aR:()=>l,wL:()=>u});var a=r(19002),n=r(52114),s=r(40399);let i=n.forwardRef((e,t)=>{let{className:r,...n}=e;return(0,a.jsx)("div",{ref:t,className:(0,s.cn)("rounded-xl border bg-card text-card-foreground shadow",r),...n})});i.displayName="Card";let l=n.forwardRef((e,t)=>{let{className:r,...n}=e;return(0,a.jsx)("div",{ref:t,className:(0,s.cn)("flex flex-col space-y-1.5 p-6",r),...n})});l.displayName="CardHeader";let o=n.forwardRef((e,t)=>{let{className:r,...n}=e;return(0,a.jsx)("h3",{ref:t,className:(0,s.cn)("text-xl font-semibold leading-none tracking-tight",r),...n})});o.displayName="CardTitle";let d=n.forwardRef((e,t)=>{let{className:r,...n}=e;return(0,a.jsx)("p",{ref:t,className:(0,s.cn)("text-sm text-muted-foreground",r),...n})});d.displayName="CardDescription";let c=n.forwardRef((e,t)=>{let{className:r,...n}=e;return(0,a.jsx)("div",{ref:t,className:(0,s.cn)("p-6 pt-0",r),...n})});c.displayName="CardContent";let u=n.forwardRef((e,t)=>{let{className:r,...n}=e;return(0,a.jsx)("div",{ref:t,className:(0,s.cn)("flex items-center p-6 pt-0",r),...n})});u.displayName="CardFooter"},37088:(e,t,r)=>{"use strict";r.d(t,{S:()=>o});var a=r(19002),n=r(52114),s=r(60),i=r(45359),l=r(40399);let o=n.forwardRef((e,t)=>{let{className:r,...n}=e;return(0,a.jsx)(s.bL,{ref:t,className:(0,l.cn)("peer size-4 shrink-0 rounded-sm 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",r),...n,children:(0,a.jsx)(s.C1,{className:(0,l.cn)("flex items-center justify-center text-current"),children:(0,a.jsx)(i.A,{className:"size-4 shrink-0"})})})});o.displayName=s.bL.displayName},2071:(e,t,r)=>{"use strict";r.d(t,{J:()=>d});var a=r(19002),n=r(52114),s=r(71821),i=r(42030),l=r(40399);let o=(0,i.F)("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),d=n.forwardRef((e,t)=>{let{className:r,...n}=e;return(0,a.jsx)(s.b,{ref:t,className:(0,l.cn)(o(),r),...n})});d.displayName=s.b.displayName},52623:(e,t,r)=>{"use strict";r.d(t,{bq:()=>m,eb:()=>p,gC:()=>f,l6:()=>c,mi:()=>g,yv:()=>u});var a=r(19002),n=r(52114),s=r(58342),i=r(47659),l=r(86042),o=r(45359),d=r(40399);let c=s.bL;s.YJ;let u=s.WT,m=n.forwardRef((e,t)=>{let{className:r,children:n,...l}=e;return(0,a.jsxs)(s.l9,{ref:t,className:(0,d.cn)("flex h-9 w-full items-center justify-between rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50",r),...l,children:[n,(0,a.jsx)(s.In,{asChild:!0,children:(0,a.jsx)(i.A,{className:"size-4 shrink-0 opacity-50"})})]})});m.displayName=s.l9.displayName;let h=n.forwardRef((e,t)=>{let{className:r,...n}=e;return(0,a.jsx)(s.PP,{ref:t,className:(0,d.cn)("flex cursor-default items-center justify-center py-1",r),...n,children:(0,a.jsx)(l.A,{className:"h-4 w-4"})})});h.displayName=s.PP.displayName;let x=n.forwardRef((e,t)=>{let{className:r,...n}=e;return(0,a.jsx)(s.wn,{ref:t,className:(0,d.cn)("flex cursor-default items-center justify-center py-1",r),...n,children:(0,a.jsx)(i.A,{className:"h-4 w-4"})})});x.displayName=s.wn.displayName;let f=n.forwardRef((e,t)=>{let{className:r,children:n,position:i="popper",...l}=e;return(0,a.jsx)(s.ZL,{children:(0,a.jsxs)(s.UC,{ref:t,className:(0,d.cn)("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2","popper"===i&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",r),position:i,...l,children:[(0,a.jsx)(h,{}),(0,a.jsx)(s.LM,{className:(0,d.cn)("p-1","popper"===i&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:n}),(0,a.jsx)(x,{})]})})});f.displayName=s.UC.displayName,n.forwardRef((e,t)=>{let{className:r,...n}=e;return(0,a.jsx)(s.JU,{ref:t,className:(0,d.cn)("px-2 py-1.5 text-sm font-semibold",r),...n})}).displayName=s.JU.displayName;let p=n.forwardRef((e,t)=>{let{className:r,children:n,...i}=e;return(0,a.jsxs)(s.q7,{ref:t,className:(0,d.cn)("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",r),...i,children:[(0,a.jsx)("span",{className:"absolute right-2 flex size-3.5 items-center justify-center",children:(0,a.jsx)(s.VF,{children:(0,a.jsx)(o.A,{className:"size-4 shrink-0"})})}),(0,a.jsx)(s.p4,{children:n})]})});p.displayName=s.q7.displayName;let g=n.forwardRef((e,t)=>{let{className:r,...n}=e;return(0,a.jsx)(s.wv,{ref:t,className:(0,d.cn)("-mx-1 my-1 h-px bg-muted",r),...n})});g.displayName=s.wv.displayName},95836:(e,t,r)=>{"use strict";r.d(t,{Toaster:()=>i,o:()=>n.oR});var a=r(19002);r(52114);var n=r(26912),s=r(7828);function i(e){let{theme:t="system"}=(0,s.D)();return(0,a.jsx)(n.l$,{theme:t,className:"toaster group",toastOptions:{classNames:{toast:"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",description:"group-[.toast]:text-muted-foreground",actionButton:"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",cancelButton:"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground"}},...e})}i.displayName="Toaster"},56130:(e,t,r)=>{"use strict";r.d(t,{Y:()=>c,y:()=>d});var a=r(19002);r(52114);var n=r(42030),s=r(2005),i=r(40399);let l=(0,n.F)("flex-col items-center justify-center",{variants:{show:{true:"flex",false:"hidden"}},defaultVariants:{show:!0}}),o=(0,n.F)("animate-spin text-primary",{variants:{size:{small:"size-6 shrink-0",medium:"size-8 shrink-0",large:"size-12 shrink-0"}},defaultVariants:{size:"medium"}});function d(e){let{size:t,show:r,children:n,className:d}=e;return(0,a.jsxs)("span",{className:l({show:r}),children:[(0,a.jsx)(s.A,{className:(0,i.cn)(o({size:t}),d)}),n]})}function c(e){let{containerClassName:t,...r}=e;return(0,a.jsx)("div",{className:(0,i.cn)("pointer-events-none absolute inset-0 flex select-none items-center justify-center opacity-65",t),children:(0,a.jsx)(d,{...r})})}c.displayName="CenteredSpinner"},68803:(e,t,r)=>{"use strict";r.d(t,{ThemeToggle:()=>d});var a=r(19002),n=r(43313),s=r(20468),i=r(7828),l=r(40399),o=r(31055);function d(e){let{className:t,...r}=e,{resolvedTheme:d,setTheme:c}=(0,i.D)();return(0,a.jsxs)(o.$,{variant:"outline",size:"icon",onClick:()=>{c("light"===d?"dark":"light")},className:(0,l.cn)("bg-background",t),...r,children:[(0,a.jsx)(n.A,{className:"size-5 rotate-0 scale-100 transition-all dark:-rotate-90 dark:scale-0","aria-hidden":"true"}),(0,a.jsx)(s.A,{className:"absolute size-5 rotate-90 scale-0 transition-all dark:rotate-0 dark:scale-100","aria-hidden":"true"}),(0,a.jsx)("span",{className:"sr-only",children:"Toggle theme"})]})}},68832:(e,t,r)=>{"use strict";r.d(t,{Bc:()=>l,ZI:()=>c,k$:()=>d,m_:()=>o});var a=r(19002),n=r(52114),s=r(69303),i=r(40399);let l=s.Kq,o=s.bL,d=s.l9,c=n.forwardRef((e,t)=>{let{className:r,sideOffset:n=4,...l}=e;return(0,a.jsx)(s.ZL,{children:(0,a.jsx)(s.UC,{ref:t,sideOffset:n,className:(0,i.cn)("z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",r),...l})})});c.displayName=s.UC.displayName},42553:(e,t,r)=>{"use strict";r.d(t,{U:()=>n});var a=r(52114);function n(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{fallback:r,ssr:n=!0,getWindow:s}=t,i=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=a.useRef(e);return a.useEffect(()=>{r.current=e}),a.useCallback(function(){for(var e,t=arguments.length,a=Array(t),n=0;n{var t,a,s,l;return{media:e,matches:n?!!r:null===(a=(s=null!==(l=i())&&void 0!==l?l:window).matchMedia)||void 0===a?void 0:null===(t=a.call(s,e))||void 0===t?void 0:t.matches}});return a.useEffect(()=>{var t;let r=null!==(t=i())&&void 0!==t?t:window;o(t=>{let a={media:e,matches:r.matchMedia(e).matches};return t.matches===a.matches&&t.media===a.media?t:a});let a=function(e,t){try{return e.addEventListener("change",t),()=>e.removeEventListener("change",t)}catch(r){return e.addListener(t),()=>e.removeListener(t)}}(r.matchMedia(e),e=>{o(t=>t.media===e.media?{...t,matches:e.matches}:t)});return()=>a()},[i]),l.matches}},7828:(e,t,r)=>{"use strict";r.d(t,{D:()=>a.D,N:()=>a.N});var a=r(92335)},40399:(e,t,r)=>{"use strict";r.d(t,{cn:()=>s});var a=r(60236),n=r(40111);function s(){for(var e=arguments.length,t=Array(e),r=0;r{}},e=>{var t=t=>e(e.s=t);e.O(0,[17644,44483,33985,17094,64406,55861,63791,44791,23039,31001,39586,70899,69303,62875,29071,58907,94336,29941,95335,23649,96999,12197,46102,85030,5779,77358],()=>t(23561)),_N_E=e.O()}]);