1!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},i=(new e.Error).stack;i&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[i]="d36c7b0c-04ce-4d8f-bd9a-1d600897308d",e._sentryDebugIdIdentifier="sentry-dbid-d36c7b0c-04ce-4d8f-bd9a-1d600897308d")}catch(e){}}();"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[95208],{39162:(e,i,t)=>{t.r(i),t.d(i,{create:()=>l,deleteById:()=>_,findAnchorForMission:()=>d,findByMissionId:()=>r,getById:()=>n,getBySubject:()=>a,getBySubjectAndType:()=>o,getFirstSessionLists:()=>u,getOnRampItems:()=>m,getOnRampMissions:()=>y,updateMetadata:()=>c});var s=t(41924);async function n(e,i){let t=(0,s.AG)(i),{data:n,error:a}=await t.from("question_lists").select("*").eq("id",e).maybeSingle();if(a)throw new s.ug(a.message,"question_lists","getById",a);return n?g(n):null}async function a(e,i){let t=(0,s.AG)(i),{data:n,error:a}=await t.from("question_lists").select("*").eq("subject_id",e).order("created_at",{ascending:!1});if(a)throw new s.ug(a.message,"question_lists","getBySubject",a);return(n||[]).map(g)}async function o(e,i,t){let n=(0,s.AG)(t),{data:a,error:o}=await n.from("question_lists").select("*").eq("subject_id",e).eq("list_type",i).order("created_at",{ascending:!1});if(o)throw new s.ug(o.message,"question_lists","getBySubjectAndType",o);return(a||[]).map(g)}async function r(e,i,t){let n=(0,s.AG)(t),{data:a,error:o}=await n.from("question_lists").select("*").eq("subject_id",e).eq("list_type","mission").eq("metadata->>mission_id",i).order("created_at",{ascending:!1}).limit(1).maybeSingle();if(o)throw new s.ug(o.message,"question_lists","findByMissionId",o);return a?g(a):null}async function d(e,i,t){let n=(0,s.AG)(t),{data:a,error:o}=await n.from("question_lists").select("*").eq("subject_id",e).eq("list_type","anchor").eq("metadata->>mission_id",i).limit(1).maybeSingle();if(o)throw new s.ug(o.message,"question_lists","findAnchorForMission",o);return a?g(a):null}async function u(e){let i=(0,s.AG)(e),{data:t,error:n}=await i.from("question_lists").select("*, subjects!inner(slug)").eq("list_type","first_session");if(n)throw new s.ug(n.message,"question_lists","getFirstSessionLists",n);return(t||[]).map(e=>{var i;let t=g(e),s=Array.isArray(t.metadata.spares)?t.metadata.spares.map(String):[],n=e.subjects;return{...t,subject_slug:null!=(i=null==n?void 0:n.slug)?i:"",spares:s}})}async function l(e,i){let t=(0,s.AG)(i),{data:n,error:a}=await t.from("question_lists").insert([{subject_id:e.subject_id,name:e.name,list_type:e.list_type,question_ids:e.question_ids,metadata:e.metadata||{}}]).select().single();if(a)throw new s.ug(a.message,"question_lists","create",a);return g(n)}async function c(e,i,t){let n=(0,s.AG)(t),{data:a,error:o}=await n.from("question_lists").update({metadata:i,updated_at:new Date().toISOString()}).eq("id",e).select().single();if(o)throw new s.ug(o.message,"question_lists","updateMetadata",o);return g(a)}async function _(e,i){let t=(0,s.AG)(i),{error:n}=await t.from("question_lists").delete().eq("id",e);if(n)throw new s.ug(n.message,"question_lists","deleteById",n)}function g(e){let i=e=>String(e).replace(/\s+/g,""),t=[],s=e.question_ids;if(Array.isArray(s))t=s.map(i);else if("string"==typeof s)try{let e=JSON.parse(s);t=Array.isArray(e)?e.map(i):[]}catch(e){t=[]}return{id:e.id,subject_id:e.subject_id,name:e.name,list_type:e.list_type,question_ids:t,question_count:e.question_count,metadata:e.metadata||{},created_at:e.created_at,updated_at:e.updated_at}}async function m(e,i,t){let n=(0,s.AG)(t),{data:a,error:o}=await n.rpc("on_ramp_items",{p_user_id:e,p_session_id:i});if(o)throw new s.ug(o.message,"question_lists","getOnRampItems",o);return new Set(null!=a?a:[])}async function y(e,i){let t=(0,s.AG)(i),{data:n,error:a}=await t.rpc("on_ramp_missions",{p_subject_id:e});if(a)throw new s.ug(a.message,"question_lists","getOnRampMissions",a);return(null!=n?n:[]).map(e=>({missionId:e.mission_id,questionTypes:Array.isArray(e.question_types)?e.question_types.filter(e=>"string"==typeof e):[]}))}},46604:(e,i,t)=>{t.d(i,{BE:()=>n});var s=t(41924);async function n(e,i,t,n){let o=(0,s.AG)(n),{data:r,error:d}=await o.from("session_questions").select("id").eq("session_id",e).limit(1).maybeSingle();if(r)return console.log("[sessionQuestions] Session ".concat(e," already recorded, returning existing")),a(e,n);let u=i.map((i,s)=>({session_id:e,question_id:i,position:s+1,selection_metadata:t})),{data:l,error:c}=await o.from("session_questions").insert(u).select();if(c){if("23505"===c.code)return console.log("[sessionQuestions] Race condition detected for session ".concat(e,", returning existing")),a(e,n);throw new s.ug(c.message,"session_questions","recordSessionQuestions",c)}return l||[]}async function a(e,i){let t=(0,s.AG)(i),{data:n,error:a}=await t.from("session_questions").select("*").eq("session_id",e).order("position",{ascending:!0});if(a)throw new s.ug(a.message,"session_questions","getSessionQuestions",a);return n||[]}},72735:(e,i,t)=>{t.d(i,{TH:()=>s,l5:()=>n,sj:()=>a,vI:()=>o});let s={mcq_text:{isBundled:!1,requiresLLMGrading:!1,showNavigation:!0},mcq_image:{isBundled:!1,requiresLLMGrading:!1,showNavigation:!0},mcq_math:{isBundled:!1,requiresLLMGrading:!1,showNavigation:!0},formula_reconstruct:{isBundled:!1,requiresLLMGrading:!1,showNavigation:!0},audio_mcq:{isBundled:!0,requiresLLMGrading:!1,showNavigation:!0},mcq_text_analysis:{isBundled:!0,requiresLLMGrading:!1,showNavigation:!0},matching_paragraphs:{isBundled:!0,requiresLLMGrading:!1,showNavigation:!0},dialogue_matching:{isBundled:!0,requiresLLMGrading:!1,showNavigation:!0},mcq_cloze:{isBundled:!0,requiresLLMGrading:!1,showNavigation:!0},word_bank_cloze:{isBundled:!0,requiresLLMGrading:!1,showNavigation:!0},open_text:{isBundled:!1,requiresLLMGrading:!0,showNavigation:!1},open_text_analysis:{isBundled:!0,requiresLLMGrading:!0,showNavigation:!1},open_fact_analysis:{isBundled:!0,requiresLLMGrading:!0,showNavigation:!1},open_math:{isBundled:!1,requiresLLMGrading:!0,showNavigation:!1},essay:{isBundled:!1,requiresLLMGrading:!0,showNavigation:!1},georgian_essay:{isBundled:!1,requiresLLMGrading:!0,showNavigation:!1},magistry_essay1:{isBundled:!1,requiresLLMGrading:!0,showNavigation:!1},magistry_essay2:{isBundled:!1,requiresLLMGrading:!0,showNavigation:!1},text_correction:{isBundled:!1,requiresLLMGrading:!0,showNavigation:!1}};function n(e){var i,t;return null!=(t=null==(i=s[e])?void 0:i.isBundled)&&t}function a(e){var i,t;return null!=(t=null==(i=s[e])?void 0:i.requiresLLMGrading)&&t}function o(e){var i,t;return null==(t=null==(i=s[e])?void 0:i.showNavigation)||t}},95208:(e,i,t)=>{t.d(i,{M4:()=>r,getQuestionDisplayDataByIds:()=>
1d,Cd:()=>o});var s=t(41924);t(39162);var n=t(46604),a=t(72735);function o(e){let i;if((0,a.l5)(e.question_type))return{id:e.id,question:e.question_text,options:[],correctOptionId:e.correct_answer||"",hint:e.hint||void 0,explanation:e.explanation||"",question_type:e.question_type,media:e.media||void 0,grading_guide:e.grading_guide||void 0,group_id:e.group_id||void 0,extended_content:e.extended_content||void 0,exercise_instructions:e.exercise_instructions||void 0,wrongOptions:e.wrong_answers||void 0,max_score:e.max_score||void 0};if(!["mcq_text","mcq_image","mcq_math"].includes(e.question_type))return{id:e.id,question:e.question_text,options:[{id:"0",text:e.correct_answer||""}],correctOptionId:"0",hint:e.hint||void 0,explanation:e.explanation||"",question_type:e.question_type,media:e.media||void 0,grading_guide:e.grading_guide||void 0,group_id:e.group_id||void 0,extended_content:e.extended_content||void 0,exercise_instructions:e.exercise_instructions||void 0,wrongOptions:e.wrong_answers||void 0,max_score:e.max_score||void 0,answers:"text_correction"===e.question_type?[e.correct_answer||""]:void 0};let t=(function(e){let i=[...e];for(let e=i.length-1;e>0;e--){let t=Math.floor(Math.random()*(e+1));[i[e],i[t]]=[i[t],i[e]]}return i})([e.correct_answer,...Array.isArray(e.wrong_answers)?e.wrong_answers:[]]).map(e=>({id:e.trim(),text:e.trim()})),s=e.correct_answer.trim();if(e.explanation)try{let t=JSON.parse(e.explanation);Array.isArray(t)&&t.length>=2&&((i={})[s]=t[0],(Array.isArray(e.wrong_answers)?e.wrong_answers:[]).forEach((e,s)=>{t[s+1]&&(i[e.trim()]=t[s+1])}))}catch(e){}return{id:e.id,question:e.question_text,options:t,correctOptionId:s,hint:e.hint||void 0,explanation:e.explanation||"",optionExplanations:i,question_type:e.question_type,media:(()=>{if(e.media&&null!==e.media){if(Array.isArray(e.media)&&e.media.length>0)return e.media.map(e=>({type:"image",url:"object"==typeof e&&e.url?String(e.url):"",alt:"object"==typeof e&&e.alt?String(e.alt):void 0}));if("object"==typeof e.media&&e.media.imageUrl)return[{type:"image",url:String(e.media.imageUrl),alt:void 0}];if("object"==typeof e.media){var i;let t=null!=(i=e.media.image)?i:e.media.audio;if(t&&t.url)return[{type:"image",url:String(t.url),alt:"string"==typeof t.alt?t.alt:void 0}]}}})(),grading_guide:e.grading_guide||void 0,group_id:e.group_id||void 0,extended_content:e.extended_content||void 0,exercise_instructions:e.exercise_instructions||void 0,max_score:e.max_score||void 0}}async function r(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},i=arguments.length>1?arguments[1]:void 0,t=(0,s.AG)(i).from("questions_display").select("id",{count:"exact",head:!0});e.subjectId&&(t=t.eq("subject_id",e.subjectId)),e.level4&&(t=t.eq("level_4",e.level4)),e.difficulty&&(t=t.eq("difficulty_level",e.difficulty)),e.level1&&(t=t.eq("level_1",e.level1)),e.level2&&(t=t.eq("level_2",e.level2)),e.level3&&(t=t.eq("level_3",e.level3)),e.questionType&&(t=t.eq("question_type",e.questionType)),e.questionTypes&&e.questionTypes.length>0&&(t=t.in("question_type",e.questionTypes)),t=void 0!==e.isLegacy?t.eq("is_legacy",e.isLegacy):t.eq("is_legacy",!1),e.search&&(t=t.ilike("question_text","%".concat(e.search,"%")));let{count:n,error:a}=await t;if(a)throw new s.ug(a.message,"questions","getQuestionCount",a);return n||0}async function d(e,i){let n=(0,s.AG)(i),{batchFetchQuestionsDisplay:a}=await t.e(37988).then(t.bind(t,37988)),o=await a(n,e,"id, question_text, question_type, extended_content, max_score, subject_id, is_legacy, media, exercise_instructions",e=>e.eq("is_legacy",!1));if(!o)throw new s.ug("Failed to fetch","questions_display","getQuestionDisplayDataByIds");return o||[]}t(43974)}}]);
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.