PageSourceSearch

https://app.jungleai.com/assets/LearningJourneyOverviewPage-CLog2kyV.js

js jungleai.com collected 2026-10-01 15:36:17 UTC 16,400 bytes, 2 lines download raw bytes

1import{C as J,a as ct,u as lt,r as x,D as _t,J as gt,aw as mt,j as f,B as qe,T as ft}from"./MarketingSiteLoadingFallback-DfYAzeIM.js";import{a as pt,u as Qe,n as j,c as Z,b as U,au as ht,s as yt,p as St,b4 as Gt,H as bt,J as Ct,F as At,bp as ee,bq as te,br as R,bs as ne,t as Ne,av as We,e as It,j as xt,h as Le,B as Be,g as De,bt as je,aw as Ft,bu as Tt,bv as vt,bw as Et,bx as Ot}from"./renderJungleWebApp-DZgne_TB.js";import{F as kt}from"./landingHandoffUploadClaim-B2LBwAI7.js";import{addSentryDiagnosticBreadcrumb as wt}from"./track-error-DEre5AXz.js";import{u as Pt}from"./CardItemForListViewComponent-hNw9h5nK.js";import{Q as Mt}from"./QuestionPruningScreen-Bu8rJp6Y.js";import qt from"./GratitudeWallScreen-qsSLBd6q.js";import{h as Qt,a as Je,i as ae,b as v}from"./question-generation-progress-qYTkLe83.js";import{g as Nt,s as Wt}from"./ShareButton-CKZSs89j.js";import{u as Lt}from"./use-deck-status-polling-fallback-C3iqtaTF.js";import{reportMetaActivation as Bt}from"./meta-conversion-tracking-CCayowUa.js";import"./frontend-release-BHg_hj9G.js";import"./hub-D89kKFfg.js";import"./index-rQLcFmgX.js";import"./legacy-referrer-id-43tytWzp.js";import"./main-YoYAMf6n.js";import"./stripe-price-details-DClgIPIw.js";import"./document-upload-sentry-Dl2_Y04U.js";import"./sentry-init-BRm8Bcin.js";import"./client-environment-BMTHOZAb.js";import"./MarkdownWithMath-CLxXCppZ.js";import"./remark-gfm-for-older-webkit-QGdm8VJ7.js";import"./sounds-6VEiAGrS.js";import"./CardNavigatorComponent-ChYOG7my.js";import"./ContinueButtonNavigationComponent-Dxp62Ylk.js";import"./AssessmentUnitStimulus-QQwBCY5a.js";import"./table-container-DUtXz6uD.js";import"./tr-CyLZ54p3.js";import"./h-stack-DUqnmM8O.js";import"./IconCheckmarkSuccess-BdZDW5vA.js";import"./acquisition-attribution-CZ5vcMnZ.js";const N=2e4,$=3e4,Dt=300*1e3,jt=480*1e3,re=120*1e3,Ue=5700*1e3,Ut=new Set([J.Video,J.Audio,J.YouTubeVideo]);function Rt({routeDeckId:r,currentDeckId:t,generationAttemptId:n,fileProcessingTaskId:a}){return!r||t!==r?!1:!!(n||a)}function He({isPageGenerationInProgress:r,activeNumberOfQuestionGenerationRequests:t}){return r===!0||typeof t=="number"&&t>0}function H({didGenerationSucceed:r,isPageGenerationInProgress:t,activeNumberOfQuestionGenerationRequests:n}){return He({isPageGenerationInProgress:t,activeNumberOfQuestionGenerationRequests:n})||r===!0?!1:r===!1||t===!1}function ie(r){return r&&Ut.has(r)?jt:Dt}function Re({contentMediumType:r,didGenerationSucceed:t,isPageGenerationInProgress:n,activeNumberOfQuestionGenerationRequests:a}){return H({didGenerationSucceed:t,isPageGenerationInProgress:n,activeNumberOfQuestionGenerationRequests:a})?N:ie(r)}function $e({contentMediumType:r,elapsedMonitoringMs:t}){return t>=ie(r)}function $t({contentMediumType:r,didGenerationSucceed:t,isPageGenerationInProgress:n,activeNumberOfQuestionGenerationRequests:a,elapsedMonitoringMs:p}){if(H({didGenerationSucceed:t,isPageGenerationInProgress:n,activeNumberOfQuestionGenerationRequests:a}))return null;const S=ie(r)-Math.max(0,p);return S>0?S:null}function Jt({didGenerationSucceed:r,isPageGenerationInProgress:t,activeNumberOfQuestionGenerationRequests:n,elapsedMonitoringMs:a}){return He({isPageGenerationInProgress:t,activeNumberOfQuestionGenerationRequests:n})?re:null}function Ve(r){const t=r.generation_metadata,n=t==null?void 0:t.question_generation_lifecycle;if(Qt(r)||Je(n))return!0;const a=!!(n!=null&&n.status),p=typeof(t==null?void 0:t.active_number_of_question_generation_requests)=="number"&&t.active_number_of_question_generation_requests>0;return!a&&(t==null?void 0:t.is_page_generation_in_progress)!==!0&&!p&&(t==null?void 0:t.did_generation_succeed)===!0}function Ht(r){if(Ve(r))return!1;const t=r.generation_metadata,n=t==null?void 0:t.question_generation_lifecycle;return ae(n)?!1:(n==null?void 0:n.status)==="partial_success"&&n.questions_persisted===0||v(t==null?void 0:t.question_generation_lifecycle)||H({didGenerationSucceed:t==null?void 0:t.did_generation_succeed,isPageGenerationInProgress:t==null?void 0:t.is_page_generation_in_progress,activeNumberOfQuestionGenerationRequests:t==null?void 0:t.active_number_of_question_generation_requests})}function Vt(r){const t=r.filter(a=>!!a);return t.some(Ve)?"delivered_questions":r.length>0&&t.length===r.length&&t.every(Ht)?"every_document_failed":"still_generating"}var W=(r=>(r.StopMonitoring="stop_monitoring",r.RecheckSoon="recheck_soon",r.WaitOutFailureGrace="wait_out_failure_grace",r.ShowFailureRecovery="show_failure_recovery",r))(W||{});async function zt({documentDeckIds:r,readDocumentDeck:t,hasWaitedOutFailureGrace:n}){const a=await Promise.all(r.map(E=>t(E))),p=Vt(a);return p==="delivered_questions"?"stop_monitoring":p==="still_generating"?"recheck_soon":n?"show_failure_recovery":"wait_out_failure_grace"}function vn(){var Se,Ge,be,Ce,Ae,Ie,xe,Fe,Te;const r=ct(),{t}=pt(),{deckId:n}=lt(),a=Qe(i=>i.currentUser),p=j(i=>i.areFlashcardsBeingGenerated),{snapshotsForGeneratingCards:E}=Pt(),{setCardsData:S,cardsData:oe,currentUserInteractionForPageGeneration:se,allCardsForCurrentDeckAndSubdecks:b,setAllCardsForCurrentDeckAndSubdecks:ze,understandingRatingsStateForNonAuthenticatedUser:V,setIndexOfCurrentCard:Ke}=Z(i=>i),{setSummaryOutlinesForDeckAndSubdecks:Ye,shouldShowQuestionPruningScreen:de,shouldShowGratitudeWallScreen:ue,setShouldShowQuestionPruningScreen:ce}=U(i=>i),le=ht(i=>i.shouldShowAllCardsInDeckAfterCreatingAccount),{modalActivatedReason:_e}=yt(i=>i),ge=St(i=>i.setPageSetup),{setFileUploadErrorMessage:O}=Gt(i=>i),{currentReviewDeck:e,setCurrentReviewDeck:L,setStartStudyingDeckReviewAlgorithmType:Xe}=U(i=>
1i),Ze=(e==null?void 0:e.generation_metadata)&&(e==null?void 0:e.is_deck_generated_from_document),F=oe?oe.length:0,et=((Se=e==null?void 0:e.generation_metadata)==null?void 0:Se.atomic_staging_status)==="generating"&&!!((Ge=e==null?void 0:e.generation_metadata)!=null&&Ge.atomic_staging_preview),z=(e==null?void 0:e.cards_count)||0,me=Math.max(F,z),tt=Nt(e==null?void 0:e.generation_metadata,me),fe=Wt(e==null?void 0:e.generation_metadata,me,p),pe=Math.max(F,z,tt,et?1:0),nt=z>F,at=!!(n&&((e==null?void 0:e.id)!==n||fe||nt)),he=((Ce=(be=e==null?void 0:e.generation_metadata)==null?void 0:be.pdf_images_object_list)==null?void 0:Ce.length)||0,rt=!(a&&(a!=null&&a.number_of_sets_of_cards_generated)&&(a==null?void 0:a.number_of_sets_of_cards_generated)>0);x.useEffect(()=>{var _;const i=(_=e==null?void 0:e.generation_metadata)==null?void 0:_.atomic_staging_status,c=i==="generating"||i==="ready"||i==="published",l=(b==null?void 0:b.length)||0;!n||!c||l===0||l>F&&S(b)},[b,(Ae=e==null?void 0:e.generation_metadata)==null?void 0:Ae.atomic_staging_status,n,F,S]),Lt({deckId:n,isPollingEnabled:at,onLatestDeckLoaded:async i=>{var C,k,w;L(i),j.getState().setAreFlashcardsBeingGenerated(We(i));const c=i.cards_count||0,l=((C=Z.getState().cardsData)==null?void 0:C.length)||0;if(!n||c<=l)return;const{allCardsForCurrentDeckAndSubdecks:_}=await Ot(n,a);_.length&&((k=U.getState().currentReviewDeck)==null?void 0:k.id)===n&&(_.length<(((w=Z.getState().cardsData)==null?void 0:w.length)||0)||(ze(_),S(_)))},user:a}),x.useEffect(()=>{if(!n){r("/");return}let i,c,l=!1,_=!1,C=!1,k=!1,w=!1,ve=!1,B=!1,u=e,K,Ee;const Y=(o,s)=>{O("the generation failed :( you can try again with the same content or a different one."),!l&&(l=!0,ee({error:new te({message:"Question generation finished or stalled without creating any cards",stage:ne.AwaitWorker,code:s?R.WorkerFailed:R.WorkerStalled,retryable:!0}),attemptId:P(o),deck:u,user:a,generatedDeckId:n}))},D=()=>{i!==void 0&&clearTimeout(i),i=void 0,c=void 0},P=o=>{var s;return((s=o==null?void 0:o.generation_metadata)==null?void 0:s.question_generation_attempt_id)||`legacy-deck-${n}`},g=o=>{B||i!==void 0&&c!==void 0&&c<=o||(D(),c=o,i=setTimeout(st,o))},it=o=>{w||(w=!0,ee({error:new te({message:"The generated deck status could not be retrieved",stage:ne.AwaitWorker,code:R.InvalidResponse,retryable:!0}),attemptId:P(o),deck:o,user:a,generatedDeckId:n}))};async function ot(o){const s=await zt({documentDeckIds:o.children_deck_ids??[],readDocumentDeck:d=>De(d,a),hasWaitedOutFailureGrace:C});if(!B)switch(s){case W.StopMonitoring:k=!0,O(null);return;case W.RecheckSoon:g($);return;case W.WaitOutFailureGrace:C=!0,g(N);return;case W.ShowFailureRecovery:Y(o,!0);return}}async function st(){var Q,m,y,X,Oe,ke,we,Pe,Me;i=void 0,c=void 0;const o=await De(n,a);if(B)return;if(!o){it(u),g($);return}if(u={...o,id:n},L(u),(o.cards_count||0)>0){O(null);return}if((Q=o.generation_metadata)!=null&&Q.has_been_generated_from_multiple_documents){await ot(u);return}if(!o.is_deck_generated_from_document&&!v((m=o.generation_metadata)==null?void 0:m.question_generation_lifecycle)){g($);return}K??(K=performance.now());const d=(y=o.generation_metadata)==null?void 0:y.did_generation_succeed,A=(X=o.generation_metadata)==null?void 0:X.is_page_generation_in_progress,G=(Oe=o.generation_metadata)==null?void 0:Oe.active_number_of_question_generation_requests,I=(ke=o.generation_metadata)==null?void 0:ke.question_generation_lifecycle;if(Je(I))return;const M=v(I)||H({didGenerationSucceed:d,isPageGenerationInProgress:A,activeNumberOfQuestionGenerationRequests:G}),h=Math.max(0,performance.now()-K);if(v(I)){if(!C){C=!0,g(N);return}Y(o,M);return}if(ae(I)){!_&&$e({contentMediumType:(we=o.generation_metadata)==null?void 0:we.content_medium_type,elapsedMonitoringMs:h})&&(_=!0,je({attemptId:P(o),deck:u,user:a,generatedDeckId:n,elapsedMonitoringMs:h,nextStatusCheckDelayMs:re,maximumMonitoringMs:Ue})),g(re);return}const q=$t({contentMediumType:(Pe=o.generation_metadata)==null?void 0:Pe.content_medium_type,didGenerationSucceed:d,isPageGenerationInProgress:A,activeNumberOfQuestionGenerationRequests:G,elapsedMonitoringMs:h});if(q!==null){g(q);return}const T=Jt({didGenerationSucceed:d,isPageGenerationInProgress:A,activeNumberOfQuestionGenerationRequests:G,elapsedMonitoringMs:h});if(T!==null){!_&&$e({contentMediumType:(Me=o.generation_metadata)==null?void 0:Me.content_medium_type,elapsedMonitoringMs:h})&&(_=!0,je({attemptId:P(o),deck:u,user:a,generatedDeckId:n,elapsedMonitoringMs:h,nextStatusCheckDelayMs:T,maximumMonitoringMs:Ue})),g(T);return}Y(o,M)}const dt=bt(Ct,_t,n),ut=At(dt,o=>{var I,M,h,q,T,Q;if(!o.exists()){D();const m=U.getState().currentReviewDeck,y=m==null?void 0:m.generation_metadata;if(Rt({routeDeckId:n,currentDeckId:m==null?void 0:m.id,generationAttemptId:y==null?void 0:y.question_generation_attempt_id,fileProcessingTaskId:y==null?void 0:y.get_data_from_file_processing_status_doc_id})){g($);return}wt({category:"deck-load",message:"Learning journey route referenced an unavailable deck",data:{generatedDeckId:n,hasCurrentReviewDeck:!!m}}),O("this deck is unavailable. it may have been deleted or the link may be invalid.");return}const s=o.data();if(!s)return;s.id=o.id,u=s;const d=(I=s.generation_metadata)==null?void 0:I.question_generation_lifecycle;if(d!=null&&d.stage&&d.stage!==Ee&&(Ee=d.stage,Ne("Question Generation Lifecycle Stage Observed",{lifecycle_schema_version:d.schema_version,lifecycle_status:d.status,lifecycle_stage:d.stage,lifecycle_stage_sequence:d.stage_sequence,generation_pipeline:d.pipeline,operational_state:d.operational_state,modal_worker_queue_delay_ms:d.modal_worker_queue_delay_ms,time_to_first_content_ms:d.time_to_first_content_ms,questions_persisted:d.questions_persisted,concepts_persisted:d.concepts_persisted},Qe.getState().currentUser,s)),(M=s.generation_metadata)!=null&&M.has_been_generated_from_multiple_documents&&(L(s),k||g(N)),s.is_deck_generated_from_document||ae(d)||v(d))if(L(s),s.cards_count>0)D(),O(null);else{s.is_deck_generated_from_document&&(K??(K=performance.now()));const m=v(d)?N:Re({contentMediumType:(h=s.generation_metadata)==null?void 0:h.content_medium_type,didGenerationSucceed:(q=s.generation_metadata)==null?void 0:q.did_generation_succeed,isPageGenerationInProgress:(T
1=s.generation_metadata)==null?void 0:T.is_page_generation_in_progress,activeNumberOfQuestionGenerationRequests:(Q=s.generation_metadata)==null?void 0:Q.active_number_of_question_generation_requests});g(m)}const G=We(s);j.getState().setAreFlashcardsBeingGenerated(G)},o=>{var s,d,A,G;ve||(ve=!0,ee({error:new te({message:"The generated deck listener stopped before generation completed",stage:ne.AwaitWorker,code:R.Network,retryable:!0,cause:o}),attemptId:P(u),deck:u,user:a,generatedDeckId:n})),g(Re({contentMediumType:(s=u==null?void 0:u.generation_metadata)==null?void 0:s.content_medium_type,didGenerationSucceed:(d=u==null?void 0:u.generation_metadata)==null?void 0:d.did_generation_succeed,isPageGenerationInProgress:(A=u==null?void 0:u.generation_metadata)==null?void 0:A.is_page_generation_in_progress,activeNumberOfQuestionGenerationRequests:(G=u==null?void 0:u.generation_metadata)==null?void 0:G.active_number_of_question_generation_requests}))});return()=>{B=!0,ut(),D()}},[n]),x.useEffect(()=>{if(!(e!=null&&e.id))return;const i=Ft();return(async()=>{!de&&!ue&&ge({headerType:"jungleLogoAndProfileMenu",showJungleBackground:!0}),Ne("Learning Journey Overview Page Visited",{isFirstTimeGeneratingCards:rt},a,e),window.scrollTo(0,0),S(null),j.getState().setShouldShowFreeResponseAnswerFeedbackView(!1);const{unsubscribeAll:l}=await E(n,!1,null);i.setCleanup(l)})().catch(l=>{console.error("Error setting up generated-deck listeners:",l)}),i.cleanup},[e==null?void 0:e.id]),x.useEffect(()=>{V&&se&&fetch(`${gt}/cards/add_understanding_ratings_from_state_for_a_set_of_cards`,{method:"POST",body:JSON.stringify({user_id:a.id,card_understanding_ratings_from_state:V}),headers:{"Content-Type":"application/json"}})},[V,se]),x.useEffect(()=>{e&&a&&(a==null?void 0:a.number_of_sets_of_cards_generated)===0&&_e===mt.UserWantsToStartLearningJourney&&(e==null?void 0:e.user_id)===a.id&&(It(a.id,{number_of_sets_of_cards_generated:1}),Bt({userId:a.id,deckId:e==null?void 0:e.id}))},[a,_e]),x.useEffect(()=>{!(a!=null&&a.id)||!n||!le||(ce(!1),r(`/review-deck/${n}`))},[a==null?void 0:a.id,n,le,r,ce]);const ye=async()=>{const i=Tt(b,a),{cardsData:c,indexOfCardToStartReviewingFrom:l}=await vt({deckId:n,user:a,currentReviewDeck:e,allCardsForCurrentDeckAndSubdecks:b,filteredCardsForReviewAllMistakes:i,setStartStudyingDeckReviewAlgorithmType:Xe});S(c),Ke(l),r(`/review-deck/${n}`)};return x.useEffect(()=>{const i=c=>{Et()||c.key==="ArrowRight"&&ye()};return document.addEventListener("keydown",i,!0),()=>{document.removeEventListener("keydown",i,!0)}},[]),n||r("/"),de?f.jsx(Mt,{}):ue?f.jsx(qt,{}):f.jsxs(f.Fragment,{children:[f.jsx(xt,{title:`Learning Journey Overview for ${(Ie=e==null?void 0:e.generation_metadata)==null?void 0:Ie.page_title} - Jungle`,pageDescription:`View an overview of your learning journey for ${(xe=e==null?void 0:e.generation_metadata)==null?void 0:xe.page_title}.`,robots:"noindex"}),f.jsx(kt,{width:{md:"600px",base:"100%"},direction:"column",height:"100vh",justify:"center",margin:"0 auto",padding:{md:"52px 48px",base:"28px 24px"},bg:Le.surface.offWhite,flex:1,children:f.jsxs(qe,{display:"flex",flexDirection:"column",alignItems:{md:"flex-start",base:"center"},gap:{md:"32px",base:"40px"},alignSelf:"stretch",flexShrink:{md:void 0,base:0},children:[f.jsx(ft,{color:Le.text.header,fontFamily:"Outfit",fontSize:{md:"24px",base:"20px"},fontStyle:"normal",fontWeight:"600",lineHeight:{md:"32px",base:"28px"},children:`${t("you_now_have","you now have")} ${fe?`${pe+he}+`:`${pe+he}`} ${t("questions_to_help_master","questions to help you master the core concepts in")} ${((Fe=e==null?void 0:e.generation_metadata)==null?void 0:Fe.page_title)||(e==null?void 0:e.name)}`}),f.jsxs(qe,{display:"flex",flexDir:"column",gap:"16px",alignSelf:"stretch",mt:"24px",children:[F>0&&f.jsx(Be,{title:t("start_studying","start studying"),buttonPrimaryOrSecondaryType:"primary",size:"large",fontSize:{md:"20px",base:"16px"},width:"100%",onClick:ye}),Ze&&((Te=e==null?void 0:e.generation_metadata)==null?void 0:Te.content_medium_type)!==J.AnkiTxt&&f.jsx(Be,{title:t("review_summary_outline_first","review a summary outline first"),buttonPrimaryOrSecondaryType:"primary",buttonStyleType:"ghost",size:"large",textAlign:"center",fontSize:{md:"20px",base:"16px"},width:"100%",onClick:()=>
1{Ye(null),ge({headerType:"noHeader",showJungleBackground:!1}),setTimeout(()=>{r(`/summary-outline/${n}`)},10)},sx:{justifyContent:"center"}})]})]})})]})}export{vn as default};
2//# sourceMappingURL=LearningJourneyOverviewPage-CLog2kyV.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.