1;!function(){try { var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&((e._debugIds|| (e._debugIds={}))[n]="05a886bc-9687-7a92-8869-1a22b4acb44e")}catch(e){}}(); 2(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,917397,e=>{"use strict";var t=e.i(386181),a=e.i(832356);function r(e,t){return"string"==typeof e?"true"===e:t}let n=a.z.object({enableThemeToggle:a.z.boolean({description:"Enable theme toggle in the user interface.",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_THEME_TOGGLE"}),enableAccountDeletion:a.z.boolean({description:"Enable personal account deletion.",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_PERSONAL_ACCOUNT_DELETION"}),enableTeamDeletion:a.z.boolean({description:"Enable team deletion.",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_TEAM_ACCOUNTS_DELETION"}),enableTeamAccounts:a.z.boolean({description:"Enable team accounts.",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_TEAM_ACCOUNTS"}),enableTeamCreation:a.z.boolean({description:"Enable team creation.",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_TEAM_ACCOUNTS_CREATION"}),enablePersonalAccountBilling:a.z.boolean({description:"Enable personal account billing.",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_PERSONAL_ACCOUNT_BILLING"}),enableTeamAccountBilling:a.z.boolean({description:"Enable team account billing.",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_TEAM_ACCOUNTS_BILLING"}),enableUserLanguagePriority:a.z.boolean({description:"When true, use the user's preferred language from the browser when no language cookie is set. When false, use the application's default language.",required_error:"Provide the variable NEXT_PUBLIC_LANGUAGE_PRIORITY"}),enableNotifications:a.z.boolean({description:"Enable notifications functionality",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_NOTIFICATIONS"}),enableRealtimeNotifications:a.z.boolean({description:"Enable realtime for the notifications functionality",required_error:"Provide the variable NEXT_PUBLIC_REALTIME_NOTIFICATIONS"}),enableVersionUpdater:a.z.boolean({description:"Enable version updater",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_VERSION_UPDATER"}),enableVerifiedEmailForAppRoutes:a.z.boolean({description:"When true, block /home, /onboarding, /identities, and /admin until JWT email_verified is true (set in production when using email confirmations).",required_error:"Provide the variable NEXT_PUBLIC_REQUIRE_
2EMAIL_VERIFICATION"}),enableCoursesCatalog:a.z.boolean({description:"Enable the /home/courses catalog route and navigation links.",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_COURSES_CATALOG"}),enableMarketingFeaturePages:a.z.boolean({description:"Enable public /products/features/* pages, header Features nav, footer links, and sitemap entries. Off until the pages are ready to ship.",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_MARKETING_FEATURE_PAGES"}),enableMarketingProductPages:a.z.boolean({description:"Enable public /products hub and audience pages (for-students, for-parents, for-school), header Product nav, and matching footer/sitemap entries. Off until the pages are ready to ship.",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_MARKETING_PRODUCT_PAGES"}),enableUserDocumentation:a.z.boolean({description:"Enable public /user-documentation routes, About/footer documentation links, and sitemap entries. Off until the guides are ready to ship.",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_USER_DOCUMENTATION"}),enableMarketingContentPages:a.z.boolean({description:"Enable public /blogs-resources and /changelog routes, About/footer links, and sitemap entries. Off until those pages are ready to ship.",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_MARKETING_CONTENT_PAGES"}),enableSukraticChat:a.z.boolean({description:"Enable Sukratic Chat navigation and default student landing route.",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_SUKRATIC_CHAT"}),enableStudyCalendar:a.z.boolean({description:"Enable Study Calendar navigation and the /home/study-calendar route.",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_STUDY_CALENDAR"}),enableConceptLecture:a.z.boolean({description:"Enable lecture slides under concept resources (Learn).",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_CONCEPT_LECTURE"}),enableConceptNotes:a.z.boolean({description:"Enable smart notes under concept resources (Learn).",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_CONCEPT_NOTES"}),enableConceptNotesUpload:a.z.boolean({description:"Enable file upload and Airflow processing for smart notes (Learn).",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_CONCEPT_NOTES_UPLOAD"}),enableConceptFlashcards:a.z.boolean({description:"Enable flashcards under concept resources (Learn).",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_CONCEPT_FLASHCARDS"}),enableConceptStudyGuide:a.z.boolean({description:"Enable study guide under concept resources (Learn).",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_CONCEPT_STUDY_GUIDE"}),enableConceptAssessment:a.z.boolean({description:"Enable practice assessments under concept resources (Practice).",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_CONCEPT_ASSESSMENT"}),enableConceptCheatsheet:a.z.boolean({description:"Enable cheatsheet PDF under concept resources (Revise).",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_CONCEPT_CHEATSHEET"}),enableConceptPastPapers:a.z.boolean({description:"Enable past papers resource pages and concept links (Revise).",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_CONCEPT_PAST_PAPERS"}),enableConceptMockExams:a.z.boolean({description:"Enable mock exams resource pages and concept links (Revise).",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_CONCEPT_MOCK_EXAMS"}),enableConceptMap:a.z.boolean({description:"Enable the concept map visualization on topic pages.",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_CONCEPT_MAP"}),enableSchoolAdminCreateCourse:a.z.boolean({description:"Enable the Create Course button and flow for school-admin team dashboards.",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_SCHOOL_ADMIN_CREATE_COURSE"}),enableFeedback:a.z.boolean({description:"Enable the learner sidebar feedback modal.",required_error:"Provide the variable NEXT_PUBLIC_ENABLE_FEEDBACK"})}).parse({enableThemeToggle:r("true",!0),enableAccountDeletion:r("true",!1),enableTeamDeletion:r("true",!1),enableTeamAccounts:r("true",!0),enableTeamCreation:r("true",!0),enablePersonalAccountBilling:r("true",!1),enableTeamAccountBilling:r("true",!1),enableUserLanguagePriority:false,enableNotifications:r("true",!0),enableRealtimeNotifications:r("true",!1),enableVersionUpdater:r(t.default.env.NEXT_PUBLIC_ENABLE_VERSION_UPDATER,!1),enableVerifiedEmailForAppRoutes:r(t.default.env.NEXT_PUBLIC_REQUIRE_
2EMAIL_VERIFICATION,!1),enableCoursesCatalog:r(t.default.env.NEXT_PUBLIC_ENABLE_COURSES_CATALOG,!1),enableMarketingFeaturePages:r(t.default.env.NEXT_PUBLIC_ENABLE_MARKETING_FEATURE_PAGES,!1),enableMarketingProductPages:r(t.default.env.NEXT_PUBLIC_ENABLE_MARKETING_PRODUCT_PAGES,!1),enableUserDocumentation:r(t.default.env.NEXT_PUBLIC_ENABLE_USER_DOCUMENTATION,!1),enableMarketingContentPages:r("true",!1),enableSukraticChat:r(t.default.env.NEXT_PUBLIC_ENABLE_SUKRATIC_CHAT,!0),enableStudyCalendar:r(t.default.env.NEXT_PUBLIC_ENABLE_STUDY_CALENDAR,!0),enableConceptLecture:r(t.default.env.NEXT_PUBLIC_ENABLE_CONCEPT_LECTURE,!0),enableConceptNotes:r(t.default.env.NEXT_PUBLIC_ENABLE_CONCEPT_NOTES,!0),enableConceptNotesUpload:r(t.default.env.NEXT_PUBLIC_ENABLE_CONCEPT_NOTES_UPLOAD,!1),enableConceptFlashcards:r(t.default.env.NEXT_PUBLIC_ENABLE_CONCEPT_FLASHCARDS,!0),enableConceptStudyGuide:r(t.default.env.NEXT_PUBLIC_ENABLE_CONCEPT_STUDY_GUIDE,!0),enableConceptAssessment:r(t.default.env.NEXT_PUBLIC_ENABLE_CONCEPT_ASSESSMENT,!0),enableConceptCheatsheet:r(t.default.env.NEXT_PUBLIC_ENABLE_CONCEPT_CHEATSHEET,!0),enableConceptPastPapers:r(t.default.env.NEXT_PUBLIC_ENABLE_CONCEPT_PAST_PAPERS,!0),enableConceptMockExams:r(t.default.env.NEXT_PUBLIC_ENABLE_CONCEPT_MOCK_EXAMS,!0),enableConceptMap:r(t.default.env.NEXT_PUBLIC_ENABLE_CONCEPT_MAP,!0),enableSchoolAdminCreateCourse:r(t.default.env.NEXT_PUBLIC_ENABLE_SCHOOL_ADMIN_CREATE_COURSE,!1),enableFeedback:r(t.default.env.NEXT_PUBLIC_ENABLE_FEEDBACK,!0)});e.s(["default",0,n])},267913,369158,e=>{"use strict";var t=e.i(939128),a=e.i(43774);let r=["lecture","study-guide","flashcards","notes"],n=["assessment","mock-exams"],i=["cheatsheet","past-papers"],s=["assessment","cheatsheet"];function o(e){let{resourceId:t,isResourcesPage:a,conceptBasePath:r,searchQuerySuffix:n="",linkAllResources:i=!1}=e;return a?"mock-exams"===t?"/home/resources/mock-exams":"past-papers"===t?"/home/resources/past-papers":void 0:!i&&s.includes(t)?void 0:r?`${r}/${t}${n}`:void 0}let l={lecture:"enableConceptLecture",notes:"enableConceptNotes",flashcards:"enableConceptFlashcards","study-guide":"enableConceptStudyGuide",assessment:"enableConceptAssessment",cheatsheet:"enableConceptCheatsheet","past-papers":"enableConceptPastPapers","mock-exams":"enableConceptMockExams"};function u(e,t){let a=l[t],r="flags"in e?e.flags:e,n="flags"in e?e.allFlags:void 0;return n&&a in n?n[a]??!1:!!r[a]}function c(e,t,a){return u(a?{flags:e,allFlags:a}:e,t)}function d(e,t,a){let r=a?{flags:e,allFlags:a}:e;return t.some(e=>u(r,e))}function h(e,t){return d(e,r,t)||d(e,n,t)||d(e,i,t)}e.s(["LEARN_CONCEPT_RESOURCE_IDS",0,r,"PRACTICE_CONCEPT_RESOURCE_IDS",0,n,"REVISE_CONCEPT_RESOURCE_IDS",0,i,"hasAnyConceptResourceEnabled",()=>h,"isConceptResourceEnabled",()=>c,"resolveConceptResourceHref",()=>o],369158);var p=e.i(917397);let f=Object.fromEntries(Object.entries(p.default).filter(([,e])=>"boolean"==typeof e)),E={flags:p.default,allFlags:f},b=(0,a.createContext)(null);function C({state:e,children:a}){return(0,t.jsx)(b.Provider,{value:e,children:a})}function m(){return(0,a.useContext)(b)??E}function _(){return m().flags}function y(){let{flags:e,allFlags:t}=m();return h(e,t)}function g(e){let t=(0,a.useContext)(b)??E;if(e in t.allFlags)return t.allFlags[e]??!1;let r=t.flags[e];return"boolean"==typeof r&&r}e.s(["FeatureFlagsProvider",()=>C,"useFeatureFlag",()=>g,"useFeatureFlags",()=>_,"useResourcesPageEnabled",()=>y,"useRuntimeFeatureFlagsState",()=>m],267913)},93977,(e,t,a)=>{"use strict";function r(e){return e.split("/").map(e=>encodeURIComponent(e)).join("/")}Object.defineProperty(a,"__esModule",{value:!0}),Object.defineProperty(a,"encodeURIPath",{enumerable:!0,get:function(){return r}})},762253,(e,t,a)=>{"use strict";Object.defineProperty(a,"__esModule",{value:!0}),Object.defineProperty(a,"BailoutToCSR",{enumerable:!0,get:function(){return n}});let r=e.r(54864);function n({reason:e,children:t}){if("undefined"==typeof window)throw Object.defineProperty(new r.BailoutToCSRError(e),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return t}},672663,(e,t,a)=>{"use strict";Object.defineProperty(a,"__esModule",{value:!0}),Object.defineProperty(a,"PreloadChunks",{enumerable:!0,get:function(){return o}});let r=e.r(939128),n=e.r(55225),i=e.r(406948),s=e.r(93977);function o({moduleIds:e}){if("undefined"!=typeof window)return null;let t=i.workAsyncStorage.getStore();if(void 0===t)return null;let a=[];if(t.reactLoadableManifest&&e){let r=t.reactLoadableManifest;for(let t of e){if(!r[t])continue;let e=r[t].files;a.push(...e)}}return 0===a.length?null:(0,r.jsx)(r.Fragment,{children:a.map(e=>{let a=`${t.assetPrefix}/_next/${(0,s.encodeURIPath)(e)}?dpl=dpl_2dARhn6CJTKyM3zvgyTBcATC9KEj`;return e.endsWith(".css")?(0,r.jsx)("link",{precedence:"dynamic",href:a,rel:"stylesheet",as:"style",nonce:t.nonce},e):((0,n.preload)(a,{as:"script",fetchPriority:"low",nonce:t.nonce}),null)})})}},718520,(e,t,a)=>{"use strict";Object.defineProperty(a,"__esModule",{value:!0}),Object.defineProperty(a,"default",{enumerable:!0,get:function(){return u}});let r=e.r(939128),n=e.r(43774),i=e.r(762253),s=e.r(672663);function o(e){return{default:e&&"default"in e?e.default:e}}let l={loader:()=>Promise.resolve(o(()=>null)),loading:null,ssr:!0},u=function(e){let t={...l,...e},a=(0,n.lazy)(()=>t.loader().then(o)),u=t.loading;function c(e){let o=u?(0,r.jsx)(u,{isLoading:!0,pastDelay:!0,error:null}):null,l=!t.ssr||!!t.loading,c=l?n.Suspense:n.Fragment,d=t.ssr?(0,r.jsxs)(r.Fragment,{children:["undefined"==typeof window?(0,r.jsx)(s.PreloadChunks,{moduleIds:t.modules}):null,(0,r.jsx)(a,{...e})]}):(0,r.jsx)(i.BailoutToCSR,{reason:"next/dynamic",children:(0,r.jsx)(a,{...e})});return(0,r.jsx)(c,{...l?{fallback:o}:{},children:d})}return c.displayName="LoadableComponent",c}},476734,(e,t,a)=>{"use strict";Object.defineProperty(a,"__esModule",{value:!0}),Object.defineProperty(a,"default",{enumerable:!0,get:function(){return n}});let r=e.r(481258)._(e.r(718520));function n(e,t){let a={};"function"==typeof e&&(a.loader=e);let n={...a,...t};return(0,r.default)({...n,modules:n.loadableGenerated?.modules})}("function"==typeof a.default||"object"==typeof a.default&&null!==a.default)&&void 0===a.default.__esModule&&(Object.defineProperty(a.default,"__esMo
2dule",{value:!0}),Object.assign(a.default,a),t.exports=a.default)},548789,e=>{"use strict";var t=e.i(493284),a=e.i(693350),r=e.i(24727),n=class extends a.Removable{#e;#t;#a;#r;constructor(e){super(),this.#e=e.client,this.mutationId=e.mutationId,this.#a=e.mutationCache,this.#t=[],this.state=e.state||i(),this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options=e,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){this.#t.includes(e)||(this.#t.push(e),this.clearGcTimeout(),this.#a.notify({type:"observerAdded",mutation:this,observer:e}))}removeObserver(e){this.#t=this.#t.filter(t=>t!==e),this.scheduleGc(),this.#a.notify({type:"observerRemoved",mutation:this,observer:e})}optionalRemove(){this.#t.length||("pending"===this.state.status?this.scheduleGc():this.#a.remove(this))}continue(){return this.#r?.continue()??this.execute(this.state.variables)}async execute(e){let t=()=>{this.#n({type:"continue"})},a={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};this.#r=(0,r.createRetryer)({fn:()=>this.options.mutationFn?this.options.mutationFn(e,a):Promise.reject(Error("No mutationFn found")),onFail:(e,t)=>{this.#n({type:"failed",failureCount:e,error:t})},onPause:()=>{this.#n({type:"pause"})},onContinue:t,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#a.canRun(this)});let n="pending"===this.state.status,i=!this.#r.canStart();try{if(n)t();else{this.#n({type:"pending",variables:e,isPaused:i}),await this.#a.config.onMutate?.(e,this,a);let t=await this.options.onMutate?.(e,a);t!==this.state.context&&this.#n({type:"pending",context:t,variables:e,isPaused:i})}let r=await this.#r.start();return await this.#a.config.onSuccess?.(r,e,this.state.context,this,a),await this.options.onSuccess?.(r,e,this.state.context,a),await this.#a.config.onSettled?.(r,null,this.state.variables,this.state.context,this,a),await this.options.onSettled?.(r,null,e,this.state.context,a),this.#n({type:"success",data:r}),r}catch(t){try{throw await this.#a.config.onError?.(t,e,this.state.context,this,a),await this.options.onError?.(t,e,this.state.context,a),await this.#a.config.onSettled?.(void 0,t,this.state.variables,this.state.context,this,a),await this.options.onSettled?.(void 0,t,e,this.state.context,a),t}finally{this.#n({type:"error",error:t})}}finally{this.#a.runNext(this)}}#n(e){this.state=(t=>{switch(e.type){case"failed":return{...t,failureCount:e.failureCount,failureReason:e.error};case"pause":return{...t,isPaused:!0};case"continue":return{...t,isPaused:!1};case"pending":return{...t,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:e.isPaused,status:"pending",variables:e.variables,submittedAt:Date.now()};case"success":return{...t,data:e.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...t,data:void 0,error:e.error,failureCount:t.failureCount+1,failureReason:e.error,isPaused:!1,status:"error"}}})(this.state),t.notifyManager.batch(()=>{this.#t.forEach(t=>{t.onMutationUpdate(e)}),this.#a.notify({mutation:this,type:"updated",action:e})})}};function i(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}e.s(["Mutation",()=>n,"getDefaultState",()=>i])},105255,e=>{"use strict";var t=e.i(939128),a=e.i(43774);let r=(0,a.createContext)(null);function n({children:e}){let n=(0,a.useRef)({}),i=(0,a.useCallback)(e=>{(n.current[e.type]??[]).forEach(t=>t(e))},[n]),s=(0,a.useCallback)((e,t)=>{n.current={...n.current,[e]:[...n.current[e]??[],t]}},[]),o=(0,a.useCallback)((e,t)=>{n.current={...n.current,[e]:(n.current[e]??[]).filter(e=>e!==t)}},[]);return(0,t.jsx)(r.Provider,{value:{emit:i,on:s,off:o},children:e})}function i(){let e=(0,a.useContext)(r);if(!e)throw Error("useAppEvents must be used within an AppEventsProvider");return e}e.s(["AppEventsProvider",()=>n,"useAppEvents",()=>i])},156992,e=>{"use strict";let t=(0,e.i(43774).createContext)(new class{identifyUser(e){console.log("[Console Monitoring] Identified user",e)}captureException(e){console.error(`[Console Monitoring] Caught exception: ${JSON.stringify(e)}`)}captureEvent(e){console.log(`[Console Monitoring] Captured event: ${e}`)}ready(){return Promise.resolve()}});e.s(["MonitoringContext",0,t],156992)},18278,e=>{"use strict";var t=e.i(43774),a=e.i(156992);function r(){return(0,t.useContext)(a.MonitoringContext)}e.s(["useMonitoring",()=>r])},317973,e=>{"use strict";var t=e.i(386181),a=e.i(832356);let r=a.z.object({name:a.z.string({description:'This is the name of your Sa
2aS. Ex. "Makerkit"',required_error:"Please provide the variable NEXT_PUBLIC_PRODUCT_NAME"}).min(1),title:a.z.string({description:"This is the default title tag of your SaaS.",required_error:"Please provide the variable NEXT_PUBLIC_SITE_TITLE"}).min(1),description:a.z.string({description:"This is the default description of your SaaS.",required_error:"Please provide the variable NEXT_PUBLIC_SITE_DESCRIPTION"}),url:a.z.string({required_error:"Please provide the variable NEXT_PUBLIC_SITE_URL"}).url({message:"You are deploying a production build but have entered a NEXT_PUBLIC_SITE_URL variable using http instead of https. It is very likely that you have set the incorrect URL. The build will now fail to prevent you from from deploying a faulty configuration. Please provide the variable NEXT_PUBLIC_SITE_URL with a valid URL, such as: 'https://example.com'"}),locale:a.z.string({description:"This is the default locale of your SaaS.",required_error:"Please provide the variable NEXT_PUBLIC_DEFAULT_LOCALE"}).default("en"),theme:a.z.enum(["light","dark","system"]),production:a.z.boolean(),themeColor:a.z.string(),themeColorDark:a.z.string()}).refine(e=>!!((t.default.env.NEXT_PUBLIC_CI??!e.production)||e.url.includes("localhost"))||!e.url.startsWith("http:"),{message:"Please provide a valid HTTPS URL. Set the variable NEXT_PUBLIC_SITE_URL with a valid URL, such as: 'https://example.com'",path:["url"]}).refine(e=>e.themeColor!==e.themeColorDark,{message:"Please provide different theme colors for light and dark themes.",path:["themeColor"]}).parse({name:"Sukrat AI",title:"Sukrat - Accelerate learning with Adaptive AI approach",description:"Personalized, data-driven courses tailoured to each learner. Our AI spots exactly what you're missing, then builds a path to master it",url:"https://www.sukrat.ai",locale:"en",theme:"system",themeColor:"#ffffff",themeColorDark:"#0a0a0a",production:!0});e.s(["default",0,r])},142669,e=>{"use strict";var t=e.i(615046);function a(e){return{onFetch:(a,i)=>{let s=a.options,o=a.fetchOptions?.meta?.fetchMore?.direction,l=a.state.data?.pages||[],u=a.state.data?.pageParams||[],c={pages:[],pageParams:[]},d=0,h=async()=>{let i=!1,h=(0,t.ensureQueryFn)(a.options,a.fetchOptions),p=async(e,r,n)=>{let s;if(i)return Promise.reject();if(null==r&&e.pages.length)return Promise.resolve(e);let o=(Object.defineProperty(s={client:a.client,queryKey:a.queryKey,pageParam:r,direction:n?"backward":"forward",meta:a.options.meta},"signal",{enumerable:!0,get:()=>(a.signal.aborted?i=!0:a.signal.addEventListener("abort",()=>{i=!0}),a.signal)}),s),l=await h(o),{maxPages:u}=a.options,c=n?t.addToStart:t.addToEnd;return{pages:c(e.pages,l,u),pageParams:c(e.pageParams,r,u)}};if(o&&l.length){let e="backward"===o,t={pages:l,pageParams:u},a=(e?n:r)(s,t);c=await p(t,a,e)}else{let t=e??l.length;do{let e=0===d?u[0]??s.initialPageParam:r(s,c);if(d>0&&null==e)break;c=await p(c,e),d++}while(d<t)}return c};a.options.persister?a.fetchFn=()=>a.options.persister?.(h,{client:a.client,queryKey:a.queryKey,meta:a.options.meta,signal:a.signal},i):a.fetchFn=h}}}function r(e,{pages:t,pageParams:a}){let r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,a[r],a):void 0}function n(e,{pages:t,pageParams:a}){return t.length>0?e.getPreviousPageParam?.(t[0],t,a[0],a):void 0}function i(e,t){return!!t&&null!=r(e,t)}function s(e,t){return!!t&&!!e.getPreviousPageParam&&null!=n(e,t)}e.s(["hasNextPage",()=>i,"hasPreviousPage",()=>s,"infiniteQueryBehavior",()=>a])},268353,e=>{"use strict";var t,a=e.i(939128),r=e.i(43774),n=e.i(514324),i=e.i(385584);let s="cookie_consent_status";var o=((t={}).Accepted="accepted",t.Rejected="rejected",t.Unknown="unknown",t);function l(){let{status:e,accept:t,reject:r}=u();return"unknown"!==e?null:(0,a.jsx)(n.Dialog.Root,{open:!0,modal:!1,children:(0,a.jsx)(n.Dialog.Content,{onOpenAutoFocus:e=>e.preventDefault(),className:"dark:shadow-primary-500/40 bg-background animate-in fade-in zoom-in-95 slide-in-from-bottom-16 fill-mode-both fixed bottom-0 z-100 w-full max-w-lg border p-6 shadow-2xl delay-1000 duration-1000 lg:right-[2rem] lg:bottom-[2rem] lg:h-48 lg:rounded-lg",children:(0,a.jsxs)("div",{className:"flex flex-col space-y-4",children:[(0,a.jsx)(n.Dialog.Title,{asChild:!0,children:(0,a.jsx)("h2",{className:"text-display-xs font-semibold",children:"Hey, we use cookies ðª"})}),(0,a.jsx)(n.Dialog.Description,{asChild:!0,children:(0,a.jsx)("div",{className:"text-secondary",children:"This website uses co
2okies to ensure you get the best experience on our website."})}),(0,a.jsxs)("div",{className:"flex justify-end space-x-2.5",children:[(0,a.jsx)(i.Button,{color:"secondary","data-test":"cookie-banner-reject",onClick:r,children:"Reject"}),(0,a.jsx)(i.Button,{autoFocus:!0,"data-test":"cookie-banner-accept",onClick:t,children:"Accept"})]})]})})})}function u(){let e=(!function(){;}(),localStorage.getItem(s)??"unknown"),[t,a]=(0,r.useState)(e),n=(0,r.useCallback)(()=>{let e="accepted";a(e),c(e)},[]),i=(0,r.useCallback)(()=>{let e="rejected";a(e),c(e)},[]),o=(0,r.useCallback)(()=>{let e="unknown";a(e),c(e)},[]);return(0,r.useMemo)(()=>({clear:o,status:t,accept:n,reject:i}),[o,t,n,i])}function c(e){localStorage.setItem(s,e)}e.s(["ConsentStatus",()=>o,"CookieBanner",()=>l,"useCookieConsent",()=>u])},704743,e=>{"use strict";let t=(0,e.i(643682).default)("rocket",[["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09z",key:"m3kijz"}],["path",{d:"m12 15-3-3a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.35 22.35 0 0 1-4 2z",key:"1fmvmk"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 0 5 0",key:"1f8sc4"}],["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}]]);e.s(["default",()=>t])},697223,e=>{"use strict";var t=e.i(939128),a=e.i(408430),r=e.i(43774);let n=(0,e.i(915811).getMonitoringProvider)(),i=n?(0,r.lazy)(()=>s.get(n)):null,s=function(){let e=new Map,t=new Map,a=new Map,r={register:(t,a)=>(e.set(t,a),r),get:async(...e)=>(await r.setup(),1===e.length)?await n(e[0]):await Promise.all(e.map(e=>n(e))),async setup(e){if(e){if(!a.has(e)){let r=t.get(e)??[];a.set(e,Promise.all(r.map(e=>e())).then(()=>void 0))}return a.get(e)}let n=Array.from(t.keys());await Promise.all(n.map(e=>r.setup(e)))},addSetup:(e,a)=>(t.has(e)||t.set(e,[]),t.get(e).push(a),r)};async function n(t){let a=e.get(t);if(!a)throw Error(`Implementation "${t}" not found`);let r=await a();if(!r)throw Error(`Implementation "${t}" is not available`);return r}return r}();function o(e){return i?(0,t.jsx)(r.Suspense,{fallback:e.children,children:(0,t.jsx)(i,{children:e.children})}):(0,t.jsx)(t.Fragment,{children:e.children})}s.register("sentry",async()=>{let{SentryProvider:a}=await e.A(419750);return{default:function({children:e}){return(0,t.jsx)(a,{children:e})}}}),s.register("posthog",async()=>{let{PostHogProvider:a}=await e.A(974009);return{default:function({children:e}){return(0,t.jsx)(a,{children:e})}}});var l=e.i(105255),u=e.i(431025),c=e.i(386181),d=e.i(227187),h=e.i(704743),h=h,p=e.i(204449),f=e.i(385584);let E=null,b=c.default.env.NEXT_PUBLIC_VERSION_UPDATER_REFETCH_INTERVAL_SECONDS;function C(e){let{data:a}=function(e={}){let t=b?Number(b):120,a=(e.intervalTimeInSecond??t)*1e3,r=a/2;return(0,d.useQuery)({queryKey:["version-updater"],staleTime:r,gcTime:a,refetchIntervalInBackground:!0,refetchInterval:a,initialData:null,queryFn:async()=>{let e=await fetch("/version"),t=await e.text(),a=E;return E=t,{currentVersion:t,oldVersion:a,didChange:null!==a&&t!==a}}})}(e),[n,i]=(0,r.useState)(!1),[s,o]=(0,r.useState)(!1);return(0,r.useEffect)(()=>{a?.didChange&&!n&&o(a?.didChange??!1)},[a?.didChange,n]),(0,t.jsx)(p.AlertDialog,{open:s,onOpenChange:o,children:(0,t.jsxs)(p.AlertDialogContent,{children:[(0,t.jsxs)(p.AlertDialogHeader,{children:[(0,t.jsxs)(p.AlertDialogTitle,{className:"flex items-center gap-x-2",children:[(0,t.jsx)(h.default,{className:"h-4"}),(0,t.jsx)("span",{children:"New version available"})]}),(0,t.jsx)(p.AlertDialogDescription,{children:"A new version of the app is available. It is recommended to refresh the page to get the latest updates and avoid any issues."})]}),(0,t.jsxs)(p.AlertDialogFooter,{children:[(0,t.jsx)(f.Button,{color:"secondary",onClick:()=>{o(!1),i(!0)},children:"Back"}),(0,t.jsx)(f.Button,{onClick:()=>window.location.reload(),children:"Reload and Update"})]})]})})}var m=e.i(332099),_=e.i(545948),y=e.i(268353);let g={"user.signedIn":(e,t)=>{let{userId:a,...r}=e.payload;if(a)return t.identify(a,r)},"user.signedUp":(e,t)=>t.trackEvent(e.type,e.payload),"checkout.started":(e,t)=>
2t.trackEvent(e.type,e.payload),"lecture.started":(e,t)=>t.trackEvent(e.type,e.payload),"lecture.checkpointCompleted":(e,t)=>t.trackEvent(e.type,e.payload),"lecture.completed":(e,t)=>t.trackEvent(e.type,e.payload),"lecture.chatOpened":(e,t)=>t.trackEvent(e.type,e.payload),"lecture.tabChanged":(e,t)=>t.trackEvent(e.type,e.payload),"user.updated":(e,t)=>t.trackEvent(e.type,e.payload)};function v(t){var a,n,i;let s,o,u,c,d,h,{status:p}=(0,y.useCookieConsent)(),f=p===y.ConsentStatus.Accepted,E=function(t){let[a,n]=(0,r.useState)(null);return(0,r.useEffect)(()=>{if(!t)return;let a=!1;return e.A(391024).then(e=>{a||(e.analytics.initialize(),e.setPostHogCapturingEnabled(!0),n(e))}),()=>{a=!0}},[t]),(0,r.useEffect)(()=>{a&&!t&&a.setPostHogCapturingEnabled(!1)},[a,t]),a?.analytics??null}(f);return a=f?g:{},c=(0,l.useAppEvents)(),d=(0,r.useEffectEvent)((e,t)=>{c.on(e,t)}),h=(0,r.useEffectEvent)((e,t)=>{c.off(e,t)}),(0,r.useEffect)(()=>{if(!E)return;let e=Object.entries(a).map(([e,t])=>{let a=e=>t(e,E);return d(e,a),()=>h(e,a)});return()=>{e.forEach(e=>e())}},[E,a]),n=(0,r.useCallback)(e=>{if(E)return E.trackPageView(e)},[E]),i=!!E,s=(0,m.usePathname)(),o=(0,m.useSearchParams)(),u=(0,r.useEffectEvent)(()=>n([s,o.toString()].filter(Boolean).join("?"))),(0,r.useEffect)(()=>{i&&u()},[s,i]),t.children}function P(e){return(0,_.isBrowser)()?(0,t.jsx)(v,{children:e.children}):e.children}var T=e.i(18278),N=e.i(502916);let A=["/home","/admin","/join","/identities","/update-password"],L=["/auth"];function O(e){let t=function(){let{emit:e}=(0,l.useAppEvents)(),t=(0,T.useMonitoring)();return(0,r.useCallback)((a,r,n={})=>{switch(a){case"INITIAL_SESSION":case"SIGNED_IN":r&&(e({type:"user.signedIn",payload:{userId:r,...n}}),t.identifyUser({id:r,...n}));break;case"USER_UPDATED":e({type:"user.updated",payload:{userId:r,...n}})}},[e,t])}();return!function({privatePathPrefixes:e=A,onEvent:t}){let a=(0,N.useSupabase)(),n=(0,r.useEffectEvent)(()=>a.auth.onAuthStateChange((a,r)=>{var n;let i=window.location.pathname;if(t&&t(a,r),!r&&(n=i,e.some(e=>n.startsWith(e))))return void window.location.assign("/");if("SIGNED_OUT"===a){if(L.some(e=>i.startsWith(e)))return;window.location.reload()}}));(0,r.useEffect)(()=>{let e=n();return()=>{e?.data.subscription.unsubscribe()}},[])}({onEvent:(0,r.useCallback)((e,a)=>{t(e,a?.user.id,{email:a?.user.email??""})},[t])}),e.children}let I=(0,e.i(476734).default)(()=>e.A(69509).then(e=>e.CookieBanner),{loadableGenerated:{modules:[977937]},ssr:!1});var S=e.i(267913),B=e.i(317973),U=e.i(615046),R=e.i(432868),k=e.i(493284),x=e.i(881693),M=class extends x.Subscribable{constructor(e={}){super(),this.config=e,this.#i=new Map}#i;build(e,t,a){let r=t.queryKey,n=t.queryHash??(0,U.hashQueryKeyByOptions)(r,t),i=this.get(n);return i||(i=new R.Query({client:e,queryKey:r,queryHash:n,options:e.defaultQueryOptions(t),state:a,defaultOptions:e.getQueryDefaults(r)}),this.add(i)),i}add(e){this.#i.has(e.queryHash)||(this.#i.set(e.queryHash,e),this.notify({type:"added",query:e}))}remove(e){let t=this.#i.get(e.queryHash);t&&(e.destroy(),t===e&&this.#i.delete(e.queryHash),this.notify({type:"removed",query:e}))}clear(){k.notifyManager.batch(()=>{this.getAll().forEach(e=>{this.remove(e)})})}get(e){return this.#i.get(e)}getAll(){return[...this.#i.values()]}find(e){let t={exact:!0,...e};return this.getAll().find(e=>(0,U.matchQuery)(t,e))}findAll(e={}){let t=this.getAll();return Object.keys(e).length>0?t.filter(t=>(0,U.matchQuery)(e,t)):t}notify(e){k.notifyManager.batch(()=>{this.listeners.forEach(t=>{t(e)})})}onFocus(){k.notifyManager.batch(()=>{this.getAll().forEach(e=>{e.onFocus()})})}onOnline(){k.notifyManager.batch(()=>{this.getAll().forEach(e=>{e.onOnline()})})}},w=e.i(548789),q=x,D=class extends q.Subscribable{constructor(e={}){super(),this.config=e,this.#s=new Set,this.#o=new Map,this.#l=0}#s;#o;#l;build(e,t,a){let r=new w.Mutation({client:e,mutationCache:this,mutationId:++this.#l,options:e.defaultMutationOptions(t),state:a});return this.add(r),r}add(e){this.#s.add(e);let t=j(e);if("string"==typeof t){let a=this.#o.get(t);a?a.push(e):this.#o.set(t,[e])}this.notify({type:"added",mutation:e})}remove(e){if(this.#s.delete(e)){let t=j(e);if("string"==typeof t){let a=this.#o.get(t);if(a)if(a.length>1){let t=a.indexOf(e);-1!==t&&a.splice(t,1)}else a[0]===e&&this.#o.delete(t)}}this.notify({type:"removed",mutation:e})}canRun(e){let t=j(e);if("string"!=typeof t)return!0;{let a=this.#o.get(t),r=a?.find(e=>"pending"===e.state.status);return!r||r===e}}runNext(e){let t=j(e);if("string"!=typeof t)return Promise.resolve();{let a=this.#o.get(t)?.find(t=>
2t!==e&&t.state.isPaused);return a?.continue()??Promise.resolve()}}clear(){k.notifyManager.batch(()=>{this.#s.forEach(e=>{this.notify({type:"removed",mutation:e})}),this.#s.clear(),this.#o.clear()})}getAll(){return Array.from(this.#s)}find(e){let t={exact:!0,...e};return this.getAll().find(e=>(0,U.matchMutation)(t,e))}findAll(e={}){return this.getAll().filter(t=>(0,U.matchMutation)(e,t))}notify(e){k.notifyManager.batch(()=>{this.listeners.forEach(t=>{t(e)})})}resumePausedMutations(){let e=this.getAll().filter(e=>e.state.isPaused);return k.notifyManager.batch(()=>Promise.all(e.map(e=>e.continue().catch(U.noop))))}};function j(e){return e.options.scope?.id}var X=e.i(735795),F=e.i(45536),z=e.i(142669),Q=class{#u;#a;#c;#d;#h;#p;#f;#E;constructor(e={}){this.#u=e.queryCache||new M,this.#a=e.mutationCache||new D,this.#c=e.defaultOptions||{},this.#d=new Map,this.#h=new Map,this.#p=0}mount(){this.#p++,1===this.#p&&(this.#f=X.focusManager.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#u.onFocus())}),this.#E=F.onlineManager.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#u.onOnline())}))}unmount(){this.#p--,0===this.#p&&(this.#f?.(),this.#f=void 0,this.#E?.(),this.#E=void 0)}isFetching(e){return this.#u.findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return this.#a.findAll({...e,status:"pending"}).length}getQueryData(e){let t=this.defaultQueryOptions({queryKey:e});return this.#u.get(t.queryHash)?.state.data}ensureQueryData(e){let t=this.defaultQueryOptions(e),a=this.#u.build(this,t),r=a.state.data;return void 0===r?this.fetchQuery(e):(e.revalidateIfStale&&a.isStaleByTime((0,U.resolveStaleTime)(t.staleTime,a))&&this.prefetchQuery(t),Promise.resolve(r))}getQueriesData(e){return this.#u.findAll(e).map(({queryKey:e,state:t})=>[e,t.data])}setQueryData(e,t,a){let r=this.defaultQueryOptions({queryKey:e}),n=this.#u.get(r.queryHash),i=n?.state.data,s=(0,U.functionalUpdate)(t,i);if(void 0!==s)return this.#u.build(this,r).setData(s,{...a,manual:!0})}setQueriesData(e,t,a){return k.notifyManager.batch(()=>this.#u.findAll(e).map(({queryKey:e})=>[e,this.setQueryData(e,t,a)]))}getQueryState(e){let t=this.defaultQueryOptions({queryKey:e});return this.#u.get(t.queryHash)?.state}removeQueries(e){let t=this.#u;k.notifyManager.batch(()=>{t.findAll(e).forEach(e=>{t.remove(e)})})}resetQueries(e,t){let a=this.#u;return k.notifyManager.batch(()=>(a.findAll(e).forEach(e=>{e.reset()}),this.refetchQueries({type:"active",...e},t)))}cancelQueries(e,t={}){let a={revert:!0,...t};return Promise.all(k.notifyManager.batch(()=>this.#u.findAll(e).map(e=>e.cancel(a)))).then(U.noop).catch(U.noop)}invalidateQueries(e,t={}){return k.notifyManager.batch(()=>(this.#u.findAll(e).forEach(e=>{e.invalidate()}),e?.refetchType==="none")?Promise.resolve():this.refetchQueries({...e,type:e?.refetchType??e?.type??"active"},t))}refetchQueries(e,t={}){let a={...t,cancelRefetch:t.cancelRefetch??!0};return Promise.all(k.notifyManager.batch(()=>this.#u.findAll(e).filter(e=>!e.isDisabled()&&!e.isStatic()).map(e=>{let t=e.fetch(void 0,a);return a.throwOnError||(t=t.catch(U.noop)),"paused"===e.state.fetchStatus?Promise.resolve():t}))).then(U.noop)}fetchQuery(e){let t=this.defaultQueryOptions(e);void 0===t.retry&&(t.retry=!1);let a=this.#u.build(this,t);return a.isStaleByTime((0,U.resolveStaleTime)(t.staleTime,a))?a.fetch(t):Promise.resolve(a.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(U.noop).catch(U.noop)}fetchInfiniteQuery(e){return e.behavior=(0,z.infiniteQueryBehavior)(e.pages),this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(U.noop).catch(U.noop)}ensureInfiniteQueryData(e){return e.behavior=(0,z.infiniteQueryBehavior)(e.pages),this.ensureQueryData(e)}resumePausedMutations(){return F.onlineManager.isOnline()?this.#a.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#u}getMutationCache(){return this.#a}getDefaultOptions(){return this.#c}setDefaultOptions(e){this.#c=e}setQueryDefaults(e,t){this.#d.set((0,U.hashKey)(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){let t=[...this.#d.values()],a={};return t.forEach(t=>{(0,U.partialMatchKey)(e,t.queryKey)&&Object.assign(a,t.defaultOptions)}),a}setMutationDefaults(e,t){this.#h.set((0,U.hashKey)(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){let t=[...this.#h.values()],a={};return t.forEach(t=>{(0,U.partialMatchKey)(e,t.mutationKey)&&Object.assign(a,t.defaultOptions)}),a}defaultQueryOptions(e){if(e._defaulted)return e;let t={...this.#c.queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=(0,U.hashQueryKeyByOptions)(t.queryKey,t)),void 0===t.refetchOnReconnect&&(t.refetchOnReconnect="always"!==t.networkMode),void 0===t.throwOnError&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),t.queryFn===U.skipToken&&(t.enabled=!1),t}defaultMutationOptions(e){return e?._defaulted?e:{...this.#c.mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){this.#u.clear(),this.#a.clear()}},K=e.i(764898);function G(e){let[a]=(0,r.useState)(()=>new Q({defaultOptions:{queries:{staleTime:6e4}}}));return(0,t.jsx)(K.QueryClientProvider,{client:a,children:e.children})}function H({theme:e=B.default.theme,nonce:r,children:n}){let{enableVersionUpdater:i}=(0,S.useFeatureFlags)();return(0,t.jsx)(o,{children:(0,t.jsx)(l.AppEventsProvider,{children:(0,t.jsx)(P,{children:(0,t.jsxs)(G,{children:[(0,t.jsx)(O,{children:(0,t.jsx)(a.ThemeProvider,{attribute:"class",enableSystem:!0,disableTransitionOnChange:!0,defaultTheme:e,enableColorScheme:!1,nonce:r,children:n})}),(0,t.jsx)(u.If,{condition:i,children:(0,t.jsx)(C,{})}),(0,t.jsx)(I,{})]})})})})}e.s(["RootProviders",()=>H],697223)},675203,e=>{"use strict";var t=e.i(605366),a=e.i(779342);e.s(["Toaster",()=>t.Toaster,"toast",()=>a.toast])},419750,e=>{e.v(t=>Promise.all(["static/chunks/2d0bcf15f59568b3.js","static/chunks/b85946be9909ad3d.js"].map(t=>e.l(t))).then(()=>t(351674)))},974009,e=>{e.v(t=>Promise.all(["static/chunks/727d014882c6b1fe.js"].map(t=>e.l(t))).then(()=>t(690267)))},391024,e=>{e.v(t=>Promise.all(["static/chunks/7b1251535e11f727.js"].map(t=>e.l(t))).then(()=>t(963704)))}
2,840267,e=>{e.v(e=>Promise.resolve().then(()=>e(337692)))},69509,e=>{e.v(t=>Promise.all(["static/chunks/50bd5a4fd28b7d34.js"].map(t=>e.l(t))).then(()=>t(977937)))}]); 3 4//# debugId=05a886bc-9687-7a92-8869-1a22b4acb44e
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.