1import{g as Be,u as ga,a as ha,o as ya,n as Me,w as ba}from"./index-BhwxxRdE.js";import{a as ka,u as _a}from"./useQuery-DiAFZXrA.js";import{useCurrentUser as Qe}from"./useCurrentUser-CCnYqwLd.js";import{a as Wt}from"./useAdaptiveScreenSize-D5gN907q.js";import{u as rt,a as Ut}from"./useNextUpCases-YcoC7rwC.js";import{d as xa,f as Tt,u as wa,v as $a,s as Ca,m as Aa}from"./CaseSelectionBottomSheet.vue_vue_type_script_setup_true_lang-BeZ1BLDz.js";import{C as Sa}from"./CaseModeSheet-M4bl9ZKT.js";import{ItemMode as Ta,DoctorSpeakCategory as Ae}from"./types.gen-jmbGIUKX.js";import{getMyWardPersonasOptions as Ea,createVocabItemsFromLiveTalkMutation as Ia,createVocabItemsFromLiveTalkUnifiedMutation as La,getMyAchievementsQueryKey as Ma}from"./vue-query.gen-Bz35qKMH.js";import{u as Gt}from"./useOrgTerminology-BC44GyJk.js";import{_ as Ra,w as Et,F as st,a as Da,L as It,b as Lt,u as jt,c as Pa,d as Va,e as Na,V as Oa}from"./RecapTranscriptSheet.vue_vue_type_script_setup_true_lang-BKWshklr.js";import{d as he,r as m,o as qe,h as y,Q as nt,l as Fa,b as s,c,g as a,n as x,u as t,t as g,f as z,F as X,M as ke,J as pe,e as k,a9 as za,bb as Ba,a as Ht,w as Se,B as Wa,A as Kt,I as Ye,D as Ua,aW as ut,cf as Ga,k as G,G as ge,cw as Mt,e8 as ja,bg as Ha,a_ as qt,V as Rt,L as Ze,cI as Zt,bk as Dt,j as Ka,aF as qa,i as Pt,aD as Za,bu as Qa,aC as Ya,e9 as Xa,aq as Ja,$ as es,cn as ts}from"./main-icons-BlWfgvjm.js";import{_ as Xe}from"./_plugin-vue_export-helper-C8tdCacw.js";import{B as as}from"./BottomNavLegacy-BZBlPhTV.js";import{u as Vt}from"./useMutation-DNBJ-pVJ.js";import{evaluateCaseLiveInteractionFinal as ss}from"./sdk.gen-CMuDM-TE.js";import{u as ns,a as os,b as is}from"./useConversationAnalysis-Cz6lOp1J.js";import{_ as ls,u as rs,a as us,b as cs}from"./ConversationAnalysisModal.vue_vue_type_script_setup_true_lang-CshNhlNQ.js";import{u as ds}from"./useCourseHidesJournaling-B0t4Oguu.js";import{u as vs}from"./useVocabEnrichmentPolling-CT6MxpY8.js";import{u as ms}from"./useUserVocabLists-BbnTiB0W.js";import{R as fs}from"./constants-D_kHi1T9.js";import"./purify.es-W9dNFw4b.js";import{V as ps}from"./VocabDashboardList-D9NrdZ8Z.js";import{V as gs}from"./VocabDetail-DJt_jttO.js";import{B as ct}from"./BottomSheet-DqzNGbPK.js";import{U as hs}from"./UserConfirmationModal-CTn27NVB.js";import{S as ys}from"./useGeminiLiveChat-BnKoLvVd.js";import{T as bs}from"./ThinkingIndicator-Cu0NpoM3.js";import{_ as ks}from"./AudioPlayerIcon.vue_vue_type_script_setup_true_lang-BF_Dj82k.js";import{v as _s}from"./useVocabImageGeneration-BCUyZk_A.js";import{M as xs}from"./Modal-BCjIwQm4.js";import{g as ws}from"./timeGrouping-B1T3ijIF.js";import{a as $s}from"./various-BLbJBw0L.js";import{_ as Cs}from"./StreakFlowSheet.vue_vue_type_script_setup_true_lang-DFioLvDZ.js";import{u as As}from"./useFullViewportHeight-vNPXNTZv.js";import{useCasuuPlausible as Ss}from"./useCasuuPlausible-v6Dkebys.js";import{u as Ts}from"./ActivityDayIcon-rZDNEvBv.js";import{C as Es}from"./CaseService-CrVSFv-0.js";import{u as Is}from"./useCaseService-IuwbZ3lX.js";import"./infiniteQueryOptions-bv2Il1Cn.js";import"./_commonjsHelpers-Be8gKYfH.js";import"./ResponsiveDetailDialog.vue_vue_type_script_setup_true_lang-Z7T2AMjv.js";import"./HoldToSpeakMicButton-D0cxgmo3.js";import"./useContentItemCompletion-DPLzVze1.js";import"./generatedQueryKeys.helpers-ZZ9cISvG.js";import"./AmbientBackground-Ck2MZtBw.js";import"./PriorConversationSeed.vue_vue_type_script_setup_true_lang-DRDwrhvT.js";import"./client-B_X1kNaK.js";import"./CaseInteractionPreview-rNXB6IM4.js";import"./ProfileImage.vue_vue_type_script_setup_true_lang-CTL66LS7.js";import"./useOrganizationMembership-CT2FxVxB.js";import"./errors-CrsldOhW.js";import"./CourseCtaButton-BncJW1VM.js";import"./liveInteractionGoals-Cwa0ZPHy.js";import"./index-Bi8gWjLH.js";import"./index-BpaE4vId.js";import"./useLearnerPreviewMode-CF5oUUVh.js";import"./useIsPaApp-CKhivVhp.js";import"./useUserHasOrgRole-CxOrrAhI.js";import"./useSubscriptionScopes-BSZEE76Z.js";import"./useInfiniteQuery-DCzbe08N.js";import"./infiniteQueryBehavior-CWtUvRJB.js";import"./useViewChapter-SIzY5B0m.js";import"./useViewCourse-DfKGYzLu.js";import"./VocabImageGeneratingIcon-XQFUdW1w.js";import"./useVocabItemEntranceStagger-D_LNCxy7.js";import"./useAutosave-CdAS4Xqh.js";import"./imageOrientation-tn5i_j71.js";import"./vocab-CPyLXyMM.js";import"./textarea-BRa_VE_l.js";import"./EditUsageExamples.vue_vue_type_script_setup_true_lang-DQ3f8hLy.js";import"./GroupPillsManager.vue_vue_type_script_setup_true_lang-FYFJcgRb.js";import"./DropdownItem.vue_vue_type_script_setup_true_lang-DLIjiKfE.js";/* empty css */import"./micPermission-7q21O3ky.js";import"./telephoneFilter-y-90H44b.js";import"./case.store-CkPi5Do4.js";import"./useQueries-CD_84Cct.js";import"./patientInteraction.store-pt4OKZ20.js";import"./streamingclient-koekfmif.js";import"./audioBlob.store-CaGxAqrF.js";(function(){try{var T=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},i=new T.Error().stack;i&&(T._sentryDebugIds=T._sentryDebugIds||{},T._sentryDebugIds[i]="63b492b0-432c-489c-9f3f-c5794908611e",T._sentryDebugIdIdentifier="sentry-dbid-63b492b0-432c-489c-9f3f-c5794908611e")}catch{}})();const Ls={class:"flex flex-col h-full"},Ms={key:0,class:"text-2xl font-normal text-ink mb-4 animate-fade-up"},Rs={key:1,"data-testid":"speak-audience-toggle",class:"inline-flex items-center gap-1 p-1 mb-4 rounded-full bg-surface border-2 border-gray animate-fade-up"},Ds=["data-testid","onClick"],Ps=["data-testid","onClick"],Vs=["poster","onLoadeddata","onEmptied","onPause","onEnded"],Ns=["src"],Os=["src","onError"],Fs={key:1,class:"absolute inset-0 flex"},zs=["src","alt"],Bs={key:2,class:"dashboard-card-grid mt-4"},Ws={class:"flex-1 text-sm md:text-base font-semibold text-ink"},ot="https://assets-prd.data.casuu.com/live-talk-feature/speak-modes",it="case-conversation",lt="ward-persona:",Us="fsp-simulation",Gs=3e3,je="doctor-case:",js=4e3,Hs=6e4,Ks=5*6e4,qs=he({__name:"SpeakModeSelection",props:{restoreMode:{},autoOpenCasePicker:{type:Boolean}}
1,emits:["start-conversation","case-picker-opened","show-history"],setup(T,{emit:i}){var re;const n=T,f=i,u=m(!1),p=m(!1),b=m("free-case-interaction");qe(()=>{n.autoOpenCasePicker&&(n.restoreMode==="free-case-interaction"||n.restoreMode==="guided-case-interaction")&&(b.value=n.restoreMode,setTimeout(()=>{Ie(),f("case-picker-opened")},100))});const{nextUpCasesQuery:v,nextUpCasesFetched:L,availableCases:M}=rt(),{t:_}=Be(),{isAdmin:E,isInternal:R,userQuery:j}=Qe(),{audience:J,canChooseAudience:te,setAudience:ee,speakAsDoctor:S}=Ut(),P=[{value:"arzt",label:"Arzt"},{value:"pflege",label:"Pflege"}],{terms:_e}=Gt(),xe=ga();function H(o,d=1){const l=`?v=${d}`;return{webm:`${ot}/${o}.webm${l}`,mp4:`${ot}/${o}.mp4${l}`,poster:`${ot}/${o}-poster.jpg${l}`}}const ce=m(null);let de=null;function ye(o){var l;if(!((l=o.state.data)!=null&&l.seeding))return de=null,!1;de??(de=Date.now());const d=Date.now()-de;return d>=Ks?!1:Math.min(Math.max(js,d/2),Hs)}const ae=ka(y(()=>({...Ea(),enabled:xe.isSignedIn,refetchInterval:ye}))),le=y(()=>{var o;return((o=ae.data.value)==null?void 0:o.personas)??[]}),we=y(()=>({PATIENT:`Patient:in ${_e.value.yourWardGenitive}`,RELATIVE:`Angehörige:r · ${_e.value.wardCompound}-Gespräch`,COLLEAGUE:"Dein geduldiger Kollege"}));function ne(o){var d;return((d=o.tagline)==null?void 0:d.trim())||we.value[o.kind]||`${_e.value.wardCompound}-Gespräch`}function ve(o){const d=`${o.first_name} ${o.last_name??""}`.trim(),l=o.kind==="COLLEAGUE";return{id:`${lt}${o.id}`,renderKey:l?"smalltalk-david":void 0,title:l?`Smalltalk mit ${o.first_name}`:d,subtitle:ne(o),imageUrl:Et(o),videos:l?[H("free-speaking-simple",3)]:void 0,badge:{label:"Frei reden",kind:"frei"}}}function $e(){return[{id:`${je}${Ae.ANAMNESE}`,renderKey:it,title:"Anamnese",subtitle:"Patient:in strukturiert befragen",imageUrl:It,videos:[H("free-case-interaction",2),H("free-case-interaction-2")],badge:{label:"Mit Zielen",kind:"fall"}},{id:`${je}${Ae.ARZT_ARZT}`,renderKey:"smalltalk-david",title:"Arzt-Arzt-Gespräch",subtitle:"Fälle bei Oberärzt:innen vorstellen",imageUrl:Lt,videos:[H("free-speaking-simple",3)],badge:{label:"Mit Zielen",kind:"fall"}}]}const K=y(()=>
1{if(!j.isFetched.value)return[];if(S.value){const d=[{id:Us,title:"FSP-Simulation",subtitle:"Prüfungssimulation · 3 Teile",imageUrl:st.patientPortraits[0],portraits:[{sources:st.patientPortraits,alt:"Patientin oder Patient"},{sources:[st.oberarztPortrait],alt:Da}],badge:{label:"Prüfung",kind:"fall"}},...$e()];return E.value&&d.push(B()),d}const o=[{id:it,title:"Patient:in oder Kolleg:in",subtitle:"Zufälliges Gespräch · mit Aufgaben",imageUrl:It,videos:[H("free-case-interaction",2),H("free-case-interaction-2")],badge:{label:"Mit Zielen",kind:"fall"}}];if(le.value.length>0){const d={COLLEAGUE:0,PATIENT:1,RELATIVE:2},l=[...le.value].sort((D,O)=>(d[D.kind]??9)-(d[O.kind]??9));o.push(...l.map(ve))}else o.push({id:"free-speaking-simple",renderKey:"smalltalk-david",title:"Smalltalk mit David",subtitle:"Dein geduldiger Kollege",imageUrl:Lt,videos:[H("free-speaking-simple",3)],badge:{label:"Frei reden",kind:"frei"}});return E.value&&o.push(B()),o});function B(){return{id:"textbook-coach",title:"Cornelsen Coach",subtitle:"Lernen mit dem Lehrwerk",imageUrl:"https://assets-prd.data.casuu.com/live-talk-feature/livetalk-vocab.png"}}const{isLargeScreen:h}=Wt(),A=h,V=nt(new Set),W=nt(new Set),be=nt(new Map),Pe=((re=window.matchMedia)==null?void 0:re.call(window,"(prefers-reduced-motion: reduce)").matches)??!1;function Re(o,d){return`${o}:${d}`}function Te(o){return be.get(o)??0}function oe(o){return o.renderKey??o.id}const me=new Map,Ee=new Map,$=new Set;let w=null;const I=typeof IntersectionObserver>"u"?null:new IntersectionObserver(o=>{var d;for(const l of o){const D=l.target.dataset.modeId;D&&(l.isIntersecting?$.add(D):$.delete(D))}w&&!$.has(w)&&((d=N(w))==null||d.pause(),w=null),w||q()},{threshold:.5});qe(()=>document.addEventListener("visibilitychange",Ve)),Fa(()=>{I==null||I.disconnect(),document.removeEventListener("visibilitychange",Ve)});function U(o,d){if(d instanceof HTMLElement){d.dataset.modeId=o,Ee.set(o,d),I==null||I.observe(d);return}const l=Ee.get(o);l&&(I==null||I.unobserve(l)),Ee.delete(o),$.delete(o),w===o&&(w=null,q(o))}function se(o,d,l){if(l instanceof HTMLVideoElement){let O=me.get(o);O||(O=new Map,me.set(o,O)),O.set(d,l);return}const D=me.get(o);
1D==null||D.delete(d),D&&D.size===0&&me.delete(o)}function N(o){var d;return(d=me.get(o))==null?void 0:d.get(Te(o))}function q(o=null){if(Pe)return;const d=[...$].filter(ue=>me.has(ue)),l=d.filter(ue=>ue!==o),D=l.length>0?l:d;if(D.length===0)return;const O=D[Math.floor(Math.random()*D.length)],Q=N(O);Q&&(w=O,Q.readyState>0&&(Q.currentTime=0),Q.play().catch(()=>{w===O&&(w=null)}))}function ie(o,d){var l,D;o!==w||d!==Te(o)||(D=(l=me.get(o))==null?void 0:l.get(d))!=null&&D.ended||(w=null)}function Ve(){if(document.visibilityState!=="visible")return;const o=w?N(w):void 0;o&&!o.paused||(w=null,q())}function Ne(o,d,l){o!==w||d!==Te(o)||(l>1&&be.set(o,(d+1)%l),w=null,q(o))}function We(o){if(o===it){ce.value=null,u.value=!0;return}if(o.startsWith(je)){ce.value=o.slice(je.length),u.value=!0;return}if(o.startsWith(lt)){const d=o.slice(lt.length),l=le.value.find(O=>O.id===d);if(!l)return;const D={id:l.id,name:`${l.first_name} ${l.last_name??""}`.trim(),subtitle:ne(l),imageUrl:Et(l)};f("start-conversation","ward-persona",null,null,[],D);return}f("start-conversation",o,null,null)}function Oe(o){const d=o===Ta.TURN_BASED_CASE?"guided-case-interaction":"free-case-interaction";f("start-conversation",d,null,null,[],null,ce.value)}function Ie(){L.value||v.refetch(),p.value=!0}function De(){p.value=!1}function Ce(o){De(),f("start-conversation",b.value,o,null)}function Ue(o){return`${50+o*100}ms`}return(o,d)=>(s(),c("div",Ls,[a("div",{class:x(["flex-1 overflow-y-auto",{"dashboard-page-scroll":t(A)}])},[a("div",{class:x(t(A)?"dashboard-page-content pb-16":"w-full max-w-lg mx-auto p-4 pb-32")},[t(j).isFetched.value?(s(),c("h1",Ms,g(t(S)?t(_)("speak.whichConversationDoYouWantToPractice"):t(_)("speak.withWhomDoYouWantToSpeak")),1)):z("",!0),t(te)?(s(),c("div",Rs,[(s(),c(X,null,ke(P,l=>a("button",{key:l.value,type:"button","data-testid":`speak-audience-${l.value}`,class:x(["px-4 py-1.5 rounded-full text-sm font-semibold transition-colors duration-200",t(J)===l.value?"bg-surface-inverse text-ink-inverse":"text-ink-body-alt hover:text-ink"]),onClick:D=>t(ee)(l.value)},g(l.label),11,Ds)),64))])):z("",!0),a("div",{class:x(t(A)?"dashboard-card-grid":"space-y-3")},[(s(!0),c(X,null,ke(K.value,(l,D)=>(s(),c("button",{key:l.renderKey??l.id,"data-testid":`mode-card-${l.id}`,onClick:O=>We(l.id),class:"animate-fade-up w-full text-left",style:pe({animationDelay:Ue(D)})},[a("div",{class:x(["relative bg-surface overflow-hidden transition-all duration-300 active:scale-[0.985]",t(A)?"h-80 rounded-[32px] p-2 flex flex-col hover:scale-[101%]":"rounded-3xl pb-3"])},[a("div",{class:x(["flex flex-col",{"flex-1 min-h-0":t(A)}])},[a("div",{ref_for:!0,ref:O=>U(oe(l),O),class:x(["relative w-full overflow-hidden bg-surface",t(A)?"flex-1 min-h-0 rounded-3xl":"aspect-video rounded-2xl"])},[l.videos&&!V.has(oe(l))?(s(!0),c(X,{key:0},ke(l.videos,(O,Q)=>(s(),c("video",{key:Q,ref_for:!0,ref:ue=>se(oe(l),Q,ue),poster:W.has(Re(oe(l),Q))?void 0:O.poster,class:x(["absolute inset-0 w-full h-full object-cover transition-opacity duration-1000 ease-in-out",Q===Te(oe(l))?"opacity-100":"opacity-0"]),muted:"",playsinline:"",disablepictureinpicture:"",preload:"auto",onLoadeddata:ue=>W.add(Re(oe(l),Q)),onEmptied:ue=>W.delete(Re(oe(l),Q)),onPause:ue=>ie(oe(l),Q),onEnded:ue=>Ne(oe(l),Q,l.videos.length)},[a("source",{src:O.webm,type:"video/webm"},null,8,Ns),a("source",{src:O.mp4,type:"video/mp4",onError:ue=>V.add(oe(l))},null,40,Os)],42,Vs))),128)):l.portraits?(s(),c("div",Fs,[(s(!0),c(X,null,ke(l.portraits,(O,Q)=>(s(),c("div",{key:Q,class:"relative h-full w-1/2"},[k(Ra,{sources:O.sources,alt:O.alt,"img-class":"object-cover object-[50%_60%]","phase-ms":Q*Gs},null,8,["sources","alt","phase-ms"])]))),128))])):(s(),c("img",{key:2,src:l.imageUrl,alt:l.title,class:"absolute inset-0 w-full h-full object-cover"},null,8,zs)),d[2]||(d[2]=a("div",{class:"absolute inset-x-0 -bottom-px h-1/2 bg-gradient-to-t from-surface pointer-events-none"},null,-1)),z("",!0)],2),a("div",{class:x(t(A)?"p-2 h-24 flex-shrink-0 flex flex-col justify-center gap-y-1 min-w-0":"px-4 pt-2.5 text-center")},[a("h3",{class:x(["font-semibold text-ink leading-tight",t(A)?"text-lg line-clamp-2":"text-2xl"])},g(l.title),3),a("p",{class:x(t(A)?"text-sm font-medium text-ink-secondary-alt truncate":"text-sm text-ink-body-alt mt-0.5")}
1,g(l.subtitle),3)],2)],2)],2)],12,Ps))),128))],2),t(R)?(s(),c("div",Bs,[a("button",{type:"button","data-testid":"speak-past-conversations",class:"animate-fade-up w-full flex items-center gap-3 px-4 py-3.5 rounded-2xl bg-surface border-2 border-gray text-left transition-all duration-200 hover:border-edge-strong active:scale-[0.985]",style:pe({animationDelay:Ue(K.value.length)}),onClick:d[0]||(d[0]=l=>f("show-history"))},[k(t(za),{size:20,class:"text-ink flex-shrink-0"}),a("span",Ws,g(t(_)("conversationAnalysis.historyTitle")),1),k(t(Ba),{size:18,class:"text-ink-muted flex-shrink-0"})],4)])):z("",!0)],2)],2),k(Sa,{show:u.value,onClose:d[1]||(d[1]=l=>u.value=!1),onSelect:Oe},null,8,["show"]),k(xa,{show:p.value,"available-cases":t(M),"is-loading":t(v).isLoading.value,"is-fetched":t(L),onClose:De,onConfirm:Ce},null,8,["show","available-cases","is-loading","is-fetched"])]))}}),Zs=Xe(qs,[["__scopeId","data-v-62f17117"]]),Qs=520;function He(){const T=m(0);let i=null,n=null;const f=v=>1-Math.pow(1-v,3);function u(){i!==null&&cancelAnimationFrame(i),n!==null&&clearTimeout(n),i=null,n=null}function p(v){u(),T.value=v}function b(v,L=0){u(),n=setTimeout(()=>{let M=null;const _=E=>{M===null&&(M=E);const R=Math.min(1,(E-M)/Qs);T.value=v*f(R),R<1?i=requestAnimationFrame(_):i=null};i=requestAnimationFrame(_)},L)}return Ht(u),{value:T,run:b,set:p}}const Ys=2e3;function Xs(T){const i=m(!1),n=m(!1),f=m(!1);let u=null,p=null,b=!1,v=!1;const L=y(()=>!T.value||f.value?"unavailable":i.value?"playing":n.value?"done":"idle");function M(){i.value=!0,v=!1}function _(){i.value=!1,n.value=!0}function E(){i.value=!1,n.value=!0}function R(){if(i.value=!1,!b){b=!0,p=setTimeout(()=>{p=null,u==null||u.load()},Ys);return}f.value=!0}function j(){v&&(u!=null&&u.paused)&&te()}function J(){p&&clearTimeout(p),p=null,u&&(u.removeEventListener("play",M),u.removeEventListener("pause",_),u.removeEventListener("ended",E),u.removeEventListener("error",R),u.removeEventListener("canplay",j),u.pause(),u.removeAttribute("src"),u=null)}Se(T,P=>{J(),i.value=!1,n.value=!1,f.value=!1,b=!1,v=!1,!(!P||typeof Audio>"u")&&(u=new Audio(P),u.preload="auto",u.addEventListener("play",M),u.addEventListener("pause",_),u.addEventListener("ended",E),u.addEventListener("error",R),u.addEventListener("canplay",j))},{immediate:!0});function te(){const P=u;P&&(P.currentTime=0,P.play().catch(()=>{}))}function ee(){!u||!u.paused||(v=!0,te())}function S(){if(u){if(v=!1,!u.paused){u.pause();return}te()}}return Wa(J),{status:L,tryAutoplay:ee,toggle:S}}
1const Js={class:"flex flex-col items-start gap-4 rounded-2xl border border-surface-subtle bg-surface-sunken p-4"},en={class:"flex items-center gap-2 text-base font-semibold text-ink"},tn={key:0,class:"flex w-full flex-col gap-2"},an={class:"text-xs font-medium text-ink-secondary"},sn={class:"text-base font-semibold leading-[150%] text-ink"},nn={key:1,class:"flex w-full flex-col gap-2"},on={class:"text-xs font-medium text-ink-secondary"},ln={class:"text-base font-semibold leading-[150%] text-teal-deepVivid"},rn={key:2,class:"text-sm leading-[150%] text-ink"},un=he({__name:"RecapAnnotationCard",props:{annotation:{}},setup(T){return(i,n)=>(s(),c("div",Js,[a("h3",en,[k(t(Kt),{size:18,class:"flex-shrink-0"}),Ye(" "+g(i.annotation.title),1)]),i.annotation.quote?(s(),c("div",tn,[a("span",an,g(i.$t("conversationAnalysis.saidLabel")),1),a("p",sn,g(t(Tt)(i.annotation.quote)),1)])):z("",!0),i.annotation.suggestion?(s(),c("div",nn,[a("span",on,g(i.$t("conversationAnalysis.betterLabel")),1),a("p",ln,g(t(Tt)(i.annotation.suggestion)),1)])):z("",!0),!i.annotation.quote&&!i.annotation.suggestion?(s(),c("p",rn,g(i.annotation.explanation),1)):z("",!0)]))}}),cn={class:"flex w-full items-center justify-between gap-3 rounded-xl bg-surface py-2 pl-2 pr-2"},dn={class:"flex min-w-0 items-center gap-4"},vn={class:"h-12 w-12 flex-shrink-0 overflow-hidden rounded-lg"},mn=["src","alt"],fn={key:1,class:"flex h-full w-full items-center justify-center bg-surface-subtle-alt"},pn={class:"min-w-0"},gn={class:"truncate text-xl font-medium text-ink"},hn={key:0,class:"truncate text-sm text-ink-secondary-alt"},yn={key:0,"data-testid":"pronunciation-no-audio",class:"flex h-10 w-10 flex-shrink-0 items-center justify-center rounded-full bg-surface-sunken"},bn=he({__name:"RecapPronunciationRow",props:{term:{}},setup(T){const i=T,{userNativeLanguage:n}=Qe(),{vocabItem:f,isPreparingAudio:u,hasNoAudio:p,healAudio:b}=wa(Ua(i,"term")),v=y(()=>f.value?_s(f.value,n.value):null);return(L,M)=>{var _,E,R;return s(),c("div",cn,[a("div",dn,[a("div",vn,[(_=t(f))!=null&&_.image_url?(s(),c("img",{key:0,src:t(f).image_url,alt:t(f).term,class:"h-full w-full object-cover"},null,8,mn)):(s(),c("div",fn,[k(t(ut),{size:18,class:"text-ink-secondary-alt"})]))]),a("div",pn,[a("p",gn,g(((E=t(f))==null?void 0:E.term)??L.term),1),v.value?(s(),c("p",hn,g(v.value),1)):z("",!0)])]),t(p)?(s(),c("div",yn,[k(t(Ga),{size:20,class:"text-ink-muted"})])):(s(),G(ks,{key:1,class:"flex-shrink-0","audio-url":((R=t(f))==null?void 0:R.audio_url)??null,"is-generating":t(u),size:"medium",onMissingAudio:t(b)},null,8,["audio-url","is-generating","onMissingAudio"]))])}}}
1),kn={class:"flex flex-col gap-4 rounded-2xl bg-surface-sunken p-4"},_n={class:"flex flex-col gap-2"},xn={class:"flex items-center gap-2 text-base font-semibold text-ink"},wn={class:"text-xs font-medium leading-[140%] text-ink-secondary"},$n=he({__name:"RecapPronunciationCard",props:{terms:{}},setup(T){return(i,n)=>(s(),c("div",kn,[a("div",_n,[a("h3",xn,[k(t(Kt),{size:18,class:"flex-shrink-0"}),Ye(" "+g(i.$t("conversationAnalysis.pronunciationTitle")),1)]),a("p",wn,g(i.$t("conversationAnalysis.pronunciationHint",i.terms.length)),1)]),(s(!0),c(X,null,ke(i.terms,f=>(s(),G(bn,{key:f,term:f},null,8,["term"]))),128))]))}}),Cn={class:"flex items-center gap-2"},An={key:"thinking",class:"flex h-10 w-10 items-center justify-center"},Sn=["aria-label"],Tn={key:"speaker",class:"flex h-10 w-10 items-center justify-center rounded-full border border-ink/5","aria-hidden":"true"},En={key:0,class:"mt-4"},In={class:"text-sm text-ink"},Ln={class:"text-base font-semibold text-ink"},Mn={class:"mt-3 flex flex-col gap-4"},Rn=2200,Dn=45,Pn=550,Nt=300,Vn=700,Ot=220,Ft=250,Nn=he({__name:"RecapFeedbackSection",props:{analysis:{},loading:{type:Boolean},failed:{type:Boolean}},emits:["openTranscript","retry","revealed"],setup(T,{emit:i}){const n=T,f=i,{t:u}=Be(),{prefersReducedMotion:p}=jt(),b=y(()=>$a(n.analysis)),v=y(()=>Ca(b.value.annotations)),L=y(()=>{var h,A;return(((A=(h=n.analysis)==null?void 0:h.transcript_turns)==null?void 0:A.length)??0)>0}),M=y(()=>{var h;return((h=n.analysis)==null?void 0:h.overall)??""}),_=y(()=>!!n.analysis),E=y(()=>!_.value&&!n.failed),R=y(()=>{var h;return((h=n.analysis)==null?void 0:h.feedback_audio_url)??null}),{status:j,tryAutoplay:J,toggle:te}=Xs(R),ee=y(()=>j.value==="playing"?u("conversationAnalysis.feedbackAudioStop"):j.value==="done"?u("conversationAnalysis.feedbackAudioReplay"):u("conversationAnalysis.feedbackAudioPlay")),S=y(()=>{const h=v.value.remaining;return h>0?u("conversationAnalysis.moreAnnotations",h,{count:h}):u("conversationAnalysis.viewTranscript")}),P=["conversationAnalysis.thinkingAnalyzing","conversationAnalysis.thinkingListening","conversationAnalysis.thinkingReflecting","conversationAnalysis.thinkingPhrasing","conversationAnalysis.thinkingWriting"];function _e(h){const A=[...h];for(let V=A.length-1;V>0;V--){const W=Math.floor(Math.random()*(V+1));[A[V],A[W]]=[A[W],A[V]]}return A}const xe=_e(P),H=m(0);let ce=setInterval(()=>{H.value=(H.value+1)%xe.length},Rn);function de(){ce&&clearInterval(ce),ce=null}const ye=m(!1),ae=m(!1),le=m(!1),we=[];function ne(h,A){we.push(setTimeout(h,A))}function ve(){ye.value=!0,ae.value=!0,le.value=!0,J(),f("revealed")}function $e(){if(p.value){ve();return}const h=M.value.split(/\s+/).filter(Boolean).length,A=Nt+h*Dn+Pn,V=v.value.cards.length,W=A+Vn,be=W+(V?V*Ot+420:0);ne(()=>{ye.value=!0,J()},Nt),ne(()=>ae.value=!0,W),ne(()=>le.value=!0,be+Ft),ne(()=>f("revealed"),be+Ft+400)}Se(_,h=>{h&&(de(),$e())},{immediate:!0}),Se(()=>n.failed,h=>{h&&!_.value&&f("revealed")},{immediate:!0}),Ht(()=>{de(),we.forEach(clearTimeout)});function K(h){return h?p.value?"":"animate-fade-up":"opacity-0 pointer-events-none"}function B(h){if(!p.value)return{animationDelay:`${h*Ot}ms`}}return(h,A)=>(s(),c("section",null,[a("div",Cn,[k(Mt,{name:"recap-badge-swap",mode:"out-in"},{default:ge(()=>[E.value?(s(),c("span",An,[k(bs,{size:26})])):t(j)!=="unavailable"?(s(),c("button",{key:"speaker-button",type:"button","data-testid":"recap-feedback-audio",class:"flex h-10 w-10 items-center justify-center rounded-full border border-ink/5 text-ink transition-colors hover:bg-surface-hover active:scale-[0.97] focus-visible:ring-2 focus-visible:ring-ink focus-visible:ring-offset-2","aria-label":ee.value,onClick:A[0]||(A[0]=(...V)=>t(te)&&t(te)(...V))},[t(j)==="done"?(s(),G(t(qt),{key:0,size:18})):(s(),G(t(Rt),{key:1,size:20,class:x(t(j)==="playing"?"recap-audio-speaking":"")},null,8,["class"]))],8,Sn)):(s(),c("span",Tn,[k(t(Rt),{size:20,class:"text-ink"})]))]),_:1}),k(Mt,{name:"recap-title-swap",mode:"out-in"},{default:ge(()=>[(s(),c("h2",{key:E.value?t(xe)[H.value]:"title",class:"text-2xl font-semibold text-ink"},g(E.value?h.$t(t(xe)[H.value]):h.$t("conversationAnalysis.feedbackTitle")),1))]),_:1})]),!_.value&&h.failed?(s(),c("div",En,[a("p",In,g(h.$t("conversationAnalysis.errorTitle")),1),a("button",{type:"button",class:"mt-3 rounded-full bg-surface-inverse px-4 py-2 text-sm font-medium text-ink-inverse transition-transform hover:opacity-90 active:scale-[0.97] focus-visible:ring-2 focus-visible:ring-ink focus-visible:ring-offset-2",onClick:A[1]||(A[1]=V=>f("retry"))},g(h.$t("conversationAnalysis.retry")),1)])):_.value?(s(),c(X,{key:1},[M.value&&ye.value?(s(),G(ys,{key:0,class:"mt-4 text-base leading-[150%] text-ink",text:M.value,animate:!t(p)},null,8,["text","animate"])):z("",!0),v.value.cards.length?(s(),c(X,{key:1},[a("div",{class:x(["mt-6 flex items-center gap-2",K(ae.value)])},[k(t(ja),{size:20,class:"flex-shrink-0 text-ink"}),a("h3",Ln,g(h.$t("conversationAnalysis.watchOutTitle")),1)],2),a("div",Mn,[(s(!0),c(X,null,ke(v.value.cards,(V,W)=>(s(),c(X,{key:W},[V.kind==="pronunciation"?(s(),G($n,{key:0,terms:V.terms,class:x(K(ae.value)),style:pe(ae.value?B(W+1):void 0)},null,8,["terms","class","style"])):(s(),G(un,{key:1,annotation:V.annotation,class:x(K(ae.value)),style:pe(ae.value?B(W+1):void 0)},null,8,["annotation","class","style"]))],64))),128))])],64)):z("",!0),L.value?(s(),c("button",{key:2,type:"button","data-testid":"recap-open-transcript",class:x(["mt-4 flex h-12 w-full items-center justify-center gap-2 rounded-full border border-ink/5 text-base font-semibold text-ink transition-colors hover:bg-surface-hover active:scale-[0.97] focus-visible:ring-2 focus-visible:ring-ink focus-visible:ring-offset-2",K(le.value)]),onClick:A[2]||(A[2]=V=>f("openTranscript"))},[k(t(Ha),{size:16}),Ye(" "+g(S.value),1)],2)):z("",!0)],64)):z("",!0)]))}}),On=Xe(Nn,[["__scopeId","data-v-e09102ae"]]),Fn={class:"flex w-full items-center gap-4"},zn={class:"flex flex-col"},Bn={class:"text-xl font-semibold leading-tight text-dark-ink"},Wn={class:"text-sm text-gray-500"},Un={class:"overflow-y-auto px-4 pb-8 lg:min-w-[400px]",style:{"max-height":"calc(85vh - 120px)"}},Gn={key:0,class:"flex items-center gap-3 py-2"},jn={class:"text-sm text-dark-ink"}
1,Hn={key:1,class:"py-2"},Kn={class:"mb-3 text-sm text-dark-ink"},qn=he({__name:"RecapGoalsSheet",props:{show:{type:Boolean},results:{},loading:{type:Boolean},failed:{type:Boolean},solvedLabel:{}},emits:["close","retry"],setup(T){return(i,n)=>(s(),G(ct,{show:i.show,"active-backdrop":!0,"backdrop-opacity":.3,"show-header-bar":!0,"show-header-border":!1,"show-close-button":!0,"bottom-padding-px":0,"max-height":"85vh",onClose:n[1]||(n[1]=f=>i.$emit("close"))},{"header-bar":ge(()=>[a("div",Fn,[k(t(Zt),{size:28,class:"flex-shrink-0 text-dark-ink"}),a("div",zn,[a("span",Bn,g(i.$t("message.goals")),1),a("span",Wn,g(i.solvedLabel),1)])])]),content:ge(()=>[a("div",Un,[i.loading&&!i.results.length?(s(),c("div",Gn,[k(t(Ze),{size:20,class:"flex-shrink-0 animate-spin text-dark-ink"}),a("span",jn,g(i.$t("caseInteractionSummary.evaluating")),1)])):i.failed&&!i.results.length?(s(),c("div",Hn,[a("p",Kn,g(i.$t("caseInteractionSummary.evaluationFailed")),1),a("button",{type:"button",class:"rounded-full bg-dark-ink px-4 py-2 text-sm font-medium text-white transition-transform hover:opacity-90 active:scale-[0.97] focus-visible:ring-2 focus-visible:ring-dark-ink focus-visible:ring-offset-2",onClick:n[0]||(n[0]=f=>i.$emit("retry"))},g(i.$t("caseInteractionSummary.retryEvaluation")),1)])):(s(),G(ls,{key:2,results:i.results},null,8,["results"]))])]),_:1},8,["show"]))}}),Zn=["role","tabindex"],Qn={class:"flex w-full items-center justify-between gap-2"},Ke=he({__name:"RecapStatCard",props:{value:{},label:{},tone:{default:"default"},loading:{type:Boolean,default:!1},interactive:{type:Boolean,default:!1}},emits:["open"],setup(T,{emit:i}){const n={default:{card:"bg-surface-sunken border border-surface-subtle",value:"text-ink",label:"text-ink-secondary",icon:"text-ink"},lime:{card:"bg-lime-bright",value:"text-ink-on-accent",label:"font-medium text-ink-on-accent",icon:"text-ink-on-accent"},teal:{card:"bg-teal-deep",value:"text-ink-inverse",label:"font-medium text-ink-inverse",icon:"text-ink-inverse"},parchment:{card:"bg-surface-editorial",value:"text-ink-on-accent",label:"font-medium text-ink-on-accent",icon:"text-ink-on-accent"},blue:{card:"bg-blue-soft",value:"text-ink-on-accent",label:"font-medium text-ink-on-accent",icon:"text-ink-on-accent"}},f=T,u=i,p=y(()=>n[f.tone]);return(b,v)=>(s(),c("div",{role:b.interactive?"button":void 0,tabindex:b.interactive?0:void 0,class:x(["flex flex-col items-start justify-end gap-4 rounded-2xl px-4 py-3 text-left transition-[background-color,transform] duration-200",[p.value.card,b.interactive?"cursor-pointer active:scale-[0.985] focus-visible:ring-2 focus-visible:ring-ink focus-visible:ring-offset-2":""]]),onClick:v[0]||(v[0]=L=>b.interactive&&u("open")),onKeydown:[v[1]||(v[1]=Dt(L=>b.interactive&&u("open"),["enter"])),v[2]||(v[2]=Dt(Ka(L=>b.interactive&&u("open"),["prevent"]),["space"]))]},[a("div",Qn,[b.loading?(s(),G(t(Ze),{key:0,size:20,class:x(["animate-spin",p.value.icon])},null,8,["class"])):(s(),c("span",{key:1,class:x(["truncate text-xl font-semibold leading-[1.3] tabular-nums",p.value.value])},g(b.value),3)),a("span",{class:x(["flex-shrink-0",p.value.icon]),"aria-hidden":"true"},[qa(b.$slots,"icon")],2)]),a("span",{class:x(["w-full truncate text-sm leading-tight",p.value.label])},g(b.label),3)],42,Zn))}}),Yn={class:"relative flex h-full flex-col bg-white"},Xn={class:"mx-auto w-full max-w-xl"},Jn={class:"text-[32px] font-medium leading-[1.1] tracking-[-0.02em] text-dark-ink"},eo={class:"inline-block whitespace-nowrap"},to={key:0},ao={class:"mt-4 grid grid-cols-2 gap-2"},so={class:"mb-4 text-base font-normal text-dark-ink transition-colors duration-300"},no={class:"flex items-center justify-center space-x-1 sm:space-x-2"},oo=["onClick"],io={class:"mx-auto flex w-full max-w-xl space-x-3"},lo={class:"flex items-center gap-4 w-full"},ro={class:"flex flex-col"},uo={class:"font-semibold text-ink text-xl leading-tight"},co={class:"text-sm text-ink-secondary-alt"},vo={class:"relative h-full"},mo={class:"overflow-y-auto px-2 pb-20 lg:min-w-[400px] vocab-sheet-list",style:{"max-height":"calc(60vh - 140px)"}},fo={class:"absolute bottom-0 left-0 right-0 p-4 flex space-x-3 bg-white"},zt=30,po=500,go=900,fe=180,ho=1700,yo=he({__name:"VoiceChatSummary",props:{mode:{},conversationData:{},personaName:{}},emits:["back-to-home","restart-conversation"],setup(T,{emit:i}){var St;const n=T,f=i,u=ya(),{t:p}=Be(),{user:b}=Qe(),{terms:v}=Gt(),{copyVocabsToWortschatzkiste:L}=ms(),M=ha(),{prefersReducedMotion:_}=jt(),E=Pa(),R=m("intro"),j=m(!1),J=m(!1),{value:te,run:ee,set:S}=He(),{value:P,run:_e,set:xe}=He(),{value:H,run:ce,set:de}=He(),{value:ye,run:ae,set:le}=He(),we=m(!1),ne=m(!1),ve=m(!1),$e=m(null),K=m([]),B=m({}),h=m(null),A=m(!1),{startEnrichmentPolling:V}=vs(B),{analysis:W,isPending:be,hasFailed:Pe,isNothingToAnalyze:Re,startAnalysis:Te,retryAnalysis:oe}=ns(),me=m(!1),Ee=Vt({...Ia(),onSuccess:e=>{K.value=e,B.value={vocab_items:e},V(),console.log("Generated vocabs:",e)},onError:e=>{console.error("Failed to generate vocabulary:",e),M.error(p("speak.errorGeneratingVocab"),p("vocabDashboard.errorTitle"),e)}}),$=m(!0),w=Vt({...La(),onSuccess:e=>{K.value=e,B.value={vocab_items:e},V(),console.log("Generated unified vocabs:",e)},onError:e=>{console.error("Failed to generate unified vocabs:",e),M.error(p("speak.errorGeneratingVocab"),p("vocabDashboard.errorTitle"),e)}}),I=m(!1),U=y(()=>$.value?w.isPending.value:Ee.isPending.value),se=m(!1),N=m(!1),q=m(!1),ie=m(null),Ve=y(()=>n.mode==="free-case-interaction"?p("conversationAnalysis.waitBodyCase"):p("conversationAnalysis.waitBodyFree")),Ne=y(()=>
1{if(n.conversationData){const e=n.conversationData.stats.duration,r=Math.floor(e/60),C=e%60;return console.log("ð Full conversation transcript available for post-processing:",{transcript:n.conversationData.transcript,metadata:n.conversationData.metadata,totalEntries:n.conversationData.transcript.length}),{duration:{minutes:r,seconds:C},wordsSpoken:n.conversationData.stats.userWordCount,avgResponseTime:2.3,subtasksCompleted:n.conversationData.subtasksCompleted,totalSubtasks:n.conversationData.totalSubtasks}}else return{duration:{minutes:4,seconds:32},wordsSpoken:127,avgResponseTime:2.3,subtasksCompleted:void 0,totalSubtasks:void 0}}),We=y(()=>{var e,r;return n.mode==="free-case-interaction"&&((e=n.conversationData)==null?void 0:e.metadata.caseEvalMode)==="end_of_conversation"&&!!((r=n.conversationData)!=null&&r.metadata.caseLiveInteractionId)}),Oe=m(null),Ie=m(!1),De=m(!1),Ce=y(()=>{var F,Y;const e=(F=Oe.value)==null?void 0:F.results;if(e!=null&&e.length)return{completed:e.filter(Z=>Z.completed).length,total:e.length};if((Y=W.value)!=null&&Y.goals_total)return{completed:W.value.goals_completed??0,total:W.value.goals_total};const{subtasksCompleted:r,totalSubtasks:C}=Ne.value;return!We.value&&C?{completed:r??0,total:C}:null}),Ue=y(()=>Ce.value===null&&Ie.value),re=y(()=>n.mode!=="free-case-interaction"?!1:Ce.value!==null||Ie.value||De.value),o=y(()=>Ce.value?`${Math.round(te.value)}/${Ce.value.total}`:"â"),d=y(()=>{var r,C;const e=(r=Oe.value)==null?void 0:r.results;return e!=null&&e.length?e:((C=W.value)==null?void 0:C.goal_results)??[]}),l=y(()=>Ie.value||d.value.length===0&&be.value),D=y(()=>De.value&&d.value.length===0),O=y(()=>{const e=Ce.value;return`${e?`${e.completed}/${e.total}`:"â"} ${p("voiceChatSummary.tasksSolved")}`});async function Q(){var C,F,Y;const e=(C=n.conversationData)==null?void 0:C.metadata.caseLiveInteractionId;if(!e||Ie.value||Oe.value)return;const r=(((F=n.conversationData)==null?void 0:F.transcript)??[]).map(Z=>`[${new Date(Z.timestamp).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}] ${Z.speaker}: ${Z.text}`).join(` 2`);Ie.value=!0,De.value=!1;try{const{data:Z,error:Le}=await ss({body:{case_live_interaction_id:e,transcript:r,task_live_interaction_index:((Y=n.conversationData)==null?void 0:Y.metadata.currentTaskIndex)??0}});if(Le||!Z)throw Le??new Error("Empty final evaluation response");Oe.value=Z}catch(Z){console.error("Final evaluation failed:",Z),De.value=!0}finally{Ie.value=!1}}const ue=y(()=>{var r;return{vocabulary:p("message.vocabCoach"),"free-speaking-simple":"Smalltalk mit David","ward-persona":n.personaName?`Gespräch mit ${n.personaName}`:`${v.value.wardCompound}-Gespräch`,"free-case-interaction":((r=n.conversationData)==null?void 0:r.metadata.caseHeading)??p("caseInteractionSummary.guidedConversationDefault")}[n.mode]||p("caseInteractionSummary.guidedConversationDefault")}),{overallRating:Ge,hasRated:dt,triggerStarAnimation:vt,setRating:Qt,validateRating:Yt}=rs({learningObjectiveDescription:ue.value+" (live)",caseId:(St=n.conversationData)==null?void 0:St.metadata.caseId,mode:n.mode}),mt=ds({contentItemId:y(()=>{var e;return(e=n.conversationData)==null?void 0:e.metadata.caseContentItemId})}),Je=y(()=>!mt.value&&(!dt.value||Ge.value===0)),ft=m(0),Xt=y(()=>{const e=Math.round(P.value);return`${Math.floor(e/60)}m ${e%60}s`}),Jt=y(()=>`${Math.round(H.value)}`),ea=y(()=>K.value.length>0?`${Math.round(ye.value)}`:"â");let pt=!1,gt=!1;function ht(e=0){const r=Ce.value;pt||R.value!=="content"||!r||(pt=!0,_.value?S(r.completed):ee(r.completed,e))}function yt(e=0){const r=K.value.length;gt||R.value!=="content"||U.value||r===0||(gt=!0,_.value?le(r):ae(r,e))}Se(Ce,()=>ht()),Se([()=>K.value.length,U],()=>yt());function bt(){const e=Ne.value,r=e.duration.minutes*60+e.duration.seconds;_.value?(xe(r),de(e.wordsSpoken)):(_e(r,re.value?2*fe:fe),setTimeout(()=>we.value=!0,re.value?2*fe:fe),ce(e.wordsSpoken,re.value?3*fe:2*fe)),ht(fe),yt(re.value?4*fe:3*fe)}const kt=y(()=>{var r;const e=(r=b.value)==null?void 0:r.first_name;return e?p("voiceChatSummary.doneNamed",{name:e}):p("voiceChatSummary.done")}),_t=Va(kt),xt=y(()=>{var e;return h.value&&((e=B.value.vocab_items)==null?void 0:e.find(r=>r.id===h.value))||null}),et=y(()=>me.value&&!Re.value),wt=y(()=>et.value&&be.value);Se(wt,e=>{var r;e||(r=ie.value)==null||r.dismiss()}),Se([R,et],([e,r])=>{ve.value||e!=="content"||r||setTimeout(()=>ve.value=!0,_.value?0:5*fe)});const Fe=y(()=>R.value!=="content"?"opacity-0 pointer-events-none":_.value?"":"animate-fade-up");function ze(e){if(!(R.value!=="content"||_.value))return{animationDelay:`${e*fe}ms`}}async function ta(){await tt(),await Pt(),f("restart-conversation")}function aa(){var C;if(!((C=n.conversationData)!=null&&C.transcript)){console.log("No transcript available for vocabulary generation");return}const e=n.conversationData.transcript.map(F=>`[${new Date(F.timestamp).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}] ${F.speaker}: ${F.text}`).join(` 3`);console.log("Generating vocabulary from transcript...");const r=n.mode==="vocabulary";$.value?w.mutate({body:{transcript:e,is_vocab_trainer_interaction:r}}):Ee.mutate({body:{transcript:e,n_vocab_items:r?void 0:3,is_vocab_trainer_interaction:r}})}function $t(){var C,F,Y,Z;const e=(C=n.conversationData)==null?void 0:C.metadata.caseLiveInteractionId,r=(F=n.conversationData)==null?void 0:F.metadata.freeLiveInteractionId;if(!e&&!r){console.log("No live interaction id available for conversation analysis");return}if(!((Z=(Y=n.conversationData)==null?void 0:Y.stats)!=null&&Z.userWordCount)){console.log("No spoken words; skipping conversation analysis");return}me.value=!0,Te(e?{caseLiveInteractionId:e}:{freeLiveInteractionId:r})}function sa(e){B.value.vocab_items=B.value.vocab_items.filter(r=>r.id!==e),h.value===e&&(h.value=null)}function na(e){h.value=e,A.value=!0}function Ct(){A.value=!1,h.value=null}function oa(e){h.value=e}async function ia(e,r){const C=B.value.vocab_items.findIndex(F=>F.id===e);C!==-1&&(B.value.vocab_items[C]=r)}function la(e,r){var F;const C=(F=B.value.vocab_items)==null?void 0:F.find(Y=>Y.id===e);C&&(C.translations=r)}async function ra(e){sa(e),Ct()}function ua(){var e;if(wt.value){(e=ie.value)==null||e.promptUserConformation(null);return}if(ve.value&&Je.value&&(ft.value+=1,ft.value<fs)){fa();return}At()}function At(){f("back-to-home"),tt()}async function tt(){var F,Y;if(I.value||!B.value.vocab_items||B.value.vocab_items.length===0)return;const e=B.value.vocab_items,r=[...new Set(e.map(Z=>Z.id))];if(r.length===0)return;I.value=!0;let C=!1;
3try{const Z=(F=n.conversationData)==null?void 0:F.metadata.caseLiveInteractionId,Le=(Y=n.conversationData)==null?void 0:Y.metadata.freeLiveInteractionId,pa=n.mode==="vocabulary";await L(r,Z?{source:"CASE_LIVE_INTERACTION",case_live_interaction_id:Z}:pa&&Le?{source:"VOCAB_COACH",free_live_interaction_id:Le}:Le?{source:"FREE_LIVE_INTERACTION",free_live_interaction_id:Le}:void 0)}catch(Z){M.error(p("vocabDashboard.errorAddingToWortschatzkiste"),p("vocabDashboard.errorTitle"),Z),C=!0}finally{I.value=!1}C||M.success(p("message.addedVocab",r.length,{count:r.length}))}function ca(){!U.value&&K.value.length>0&&(se.value=!0)}function at(){se.value=!1}function da(){at(),u.push({name:"vocab-dashboard"}),tt()}qe(async()=>{if(await Pt(),aa(),We.value?Q().finally($t):$t(),_.value){j.value=!0,J.value=!0,R.value="content",ne.value=!0,bt();return}const e=100+kt.value.length*zt+po;setTimeout(()=>j.value=!0,100),setTimeout(()=>J.value=!0,e-200),setTimeout(()=>{R.value="content",va(),bt(),setTimeout(()=>ne.value=!0,ho)},e+go)});function va(){E.thud();const e=re.value?4:3;for(let r=0;r<e;r++)setTimeout(E.tick,150+r*fe)}function ma(e){E.tap(),Qt(e)}function fa(){var e;(e=$e.value)==null||e.scrollIntoView({behavior:_.value?"auto":"smooth",block:"center"}),setTimeout(()=>{E.tap(),Yt()},_.value?0:350)}return(e,r)=>(s(),c("div",Yn,[a("div",{"data-testid":"recap-scroll",class:x(["min-h-0 flex-1 px-4 pb-32",R.value==="intro"?"overflow-hidden":"overflow-y-auto"])},[a("div",Xn,[a("div",{class:x(["hero-group flex flex-col items-start gap-3 pt-16",{"is-intro":R.value==="intro"}])},[k(t(Za),{size:32,class:x(["text-dark-ink",t(_)?"":"animate-fade-up"])},null,8,["class"]),a("h1",Jn,[(s(!0),c(X,null,ke(t(_t),(C,F)=>(s(),c(X,{key:F},[a("span",eo,[(s(!0),c(X,null,ke(C,Y=>(s(),c("span",{key:Y.index,class:x(["title-char inline-block",{"animate-char-in":j.value}]),style:pe({animationDelay:`${Y.index*zt}ms`})},g(Y.char),7))),128))]),F<t(_t).length-1?(s(),c("span",to,g(" "))):z("",!0)],64))),128))]),a("p",{class:x(["text-base tracking-[-0.02em] text-dark-ink",J.value?t(_)?"":"animate-fade-up":"opacity-0"])}," â"+g(ue.value)+"â ",3)],2),a("div",ao,[re.value?(s(),G(Ke,{key:0,tone:"teal",value:o.value,label:e.$t("voiceChatSummary.tasksSolved"),loading:Ue.value,interactive:"",class:x(Fe.value),style:pe(ze(1)),onOpen:r[0]||(r[0]=C=>N.value=!0)},{icon:ge(()=>[k(t(Zt),{size:20})]),_:1},8,["value","label","loading","class","style"])):z("",!0),k(Ke,{tone:"parchment",value:Xt.value,label:e.$t("speak.duration"),class:x(Fe.value),style:pe(ze(re.value?2:1))},{icon:ge(()=>[k(t(Ya),{size:20,class:x({"recap-clock-spin":we.value})},null,8,["class"])]),_:1},8,["value","label","class","style"]),k(Ke,{tone:"blue",value:Jt.value,label:e.$t("speak.spokenWords"),class:x(Fe.value),style:pe(ze(re.value?3:2))},{icon:ge(()=>[k(t(Xa),{size:20})]),_:1},8,["value","label","class","style"]),k(Ke,{tone:K.value.length>0?"lime":"default",value:ea.value,label:!U.value&&K.value.length===0?e.$t("speak.noNewTerms"):e.$t("speak.newTerms"),loading:U.value,interactive:!U.value&&K.value.length>0,class:x([Fe.value,re.value?"":"col-span-2"]),style:pe(ze(re.value?4:3)),onOpen:ca},{icon:ge(()=>[k(t(ut),{size:20})]),_:1},8,["tone","value","label","loading","interactive","class","style"])]),et.value&&ne.value?(s(),G(On,{key:0,class:x(["mt-6",t(_)?"":"animate-fade-up"]),analysis:t(W),loading:t(be),failed:t(Pe),onOpenTranscript:r[1]||(r[1]=C=>q.value=!0),onRetry:t(oe),onRevealed:r[2]||(r[2]=C=>ve.value=!0)},null,8,["class","analysis","loading","failed","onRetry"])):z("",!0),t(mt)?z("",!0):(s(),c("div",{key:1,ref_key:"ratingSectionEl",ref:$e,class:x(["mt-8 pb-4 text-center",ve.value?t(_)?"":"animate-fade-up":"opacity-0 pointer-events-none"])},[a("h3",so,g(t(dt)?e.$t("speak.thanks"):e.$t("speak.howConfidentDidYouFeel")),1),a("div",no,[(s(),c(X,null,ke(5,C=>a("button",{key:C,onClick:F=>ma(C),class:x(["star-button flex h-12 w-12 items-center justify-center transition-colors",{"text-yellow-400":C<=t(Ge),"text-gray-200 hover:text-yellow-300":C>t(Ge),"animate-star-bounce":t(vt)}]),style:pe(t(vt)?{animationDelay:`${(C-1)*100}ms`}:{})},[k(t(Ja),{size:24,class:x(["h-10 w-10",{"fill-current":C<=t(Ge)}])},null,8,["class"])],14,oo)),64))])],2))])],2),a("div",{class:x(["absolute inset-x-0 bottom-0 z-10 bg-gradient-to-t from-white via-white/90 to-transparent px-4 pb-4 pt-10",Fe.value]),style:pe(ze(7))},[a("div",io,[a("button",{onClick:ta,class:"flex-1 bg-gray-100 text-dark-ink py-3.5 rounded-full text-base font-semibold hover:bg-gray-200 active:scale-[101%] transition-all ease-out duration-200 flex items-center justify-center space-x-2"},[k(t(qt),{size:18}
3),a("span",null,g(e.$t("speak.practiceAgain")),1)]),a("button",{onClick:ua,class:x(["flex-1 py-3.5 rounded-full text-base font-semibold active:scale-[101%] transition-all ease-out duration-200",{"bg-dark-ink text-white hover:bg-gray-800":!Je.value,"bg-gray-200 text-gray-500 hover:bg-gray-300":Je.value}])},g(e.$t("message.complete")),3)])],6),k(qn,{show:N.value,results:d.value,loading:l.value,failed:D.value,"solved-label":O.value,onClose:r[3]||(r[3]=C=>N.value=!1),onRetry:Q},null,8,["show","results","loading","failed","solved-label"]),k(Na,{show:q.value,analysis:t(W),onClose:r[4]||(r[4]=C=>q.value=!1)},null,8,["show","analysis"]),k(hs,{ref_key:"feedbackWaitModal",ref:ie,"overlay-id":"confirmLeaveWithoutFeedback",heading:e.$t("conversationAnalysis.waitTitle"),prompt_message:Ve.value,approve_message:e.$t("conversationAnalysis.waitButton"),discard_message:e.$t("conversationAnalysis.skipButton"),"backdrop-cancels":!0,onDeclined:At},null,8,["heading","prompt_message","approve_message","discard_message"]),k(ct,{show:se.value,"active-backdrop":!0,"backdrop-opacity":.3,"show-header-bar":!0,"show-header-border":!1,"show-close-button":!0,"bottom-padding-px":0,"max-height":"60vh",onClose:at},{"header-bar":ge(()=>[a("div",lo,[k(t(ut),{size:32,class:"text-ink flex-shrink-0"}),a("div",ro,[a("span",uo,g(K.value.length)+" "+g(e.$t("speak.newTerms")),1),a("span",co,g(e.$t("speak.addedToVocab")),1)])])]),content:ge(()=>[a("div",vo,[a("div",mo,[k(ps,{vocabList:B.value,"enable-scroll":!1,"hide-title":!0,onOpenDetail:na},null,8,["vocabList"])]),a("div",fo,[a("button",{class:"flex-1 bg-gray-100 text-dark-ink py-3.5 rounded-full text-base font-semibold hover:bg-gray-200 active:scale-[0.98] transition-all",onClick:da},g(e.$t("message.goToVocab")),1),a("button",{onClick:at,class:"flex-1 bg-dark-ink text-white py-3.5 rounded-full text-base font-semibold hover:bg-gray-800 active:scale-[0.98] transition-all"},g(e.$t("message.close")),1)])])]),_:1},8,["show"]),(s(),G(Qa,{to:"body"},[xt.value&&B.value.vocab_items?(s(),G(gs,{key:0,show:A.value,"vocab-item":xt.value,"all-vocab-items":B.value.vocab_items,"z-index":100,onClose:Ct,onUpdate:ia,onTranslationAdded:la,onDelete:ra,onNavigate:oa},null,8,["show","vocab-item","all-vocab-items"])):z("",!0)]))]))}}),bo=Xe(yo,[["__scopeId","data-v-e3b3a4f6"]]),ko={class:"flex items-center justify-between gap-2"},_o={class:"text-xs text-ink-secondary-alt truncate"},xo={class:"text-xs text-ink-muted flex-shrink-0"},wo={class:"text-[15px] font-semibold text-ink leading-snug line-clamp-2"},$o={key:0,class:"text-sm text-ink-secondary-alt leading-snug line-clamp-2"},Co="free_live",Ao=he({__name:"ConversationAnalysisHistoryCard",props:{analysis:{}},emits:["select"],setup(T,{emit:i}){const n=T,f=i,{t:u}=Be(),p=y(()=>{const v=[];return n.analysis.mode!==Co&&v.push(u(Aa(n.analysis.mode))),n.analysis.partner_name&&v.push(u("conversationAnalysis.withPartner",{name:n.analysis.partner_name})),v.join(" · ")}),b=y(()=>$s(n.analysis.created_at,!0,!1,!1));return(v,L)=>(s(),c("button",{type:"button","data-testid":"conversation-analysis-history-item",class:"w-full text-left rounded-3xl border bg-surface-sunken-alt border-edge-subtle px-4 py-3.5 flex flex-col gap-1.5 transition-[transform,box-shadow] duration-150 active:scale-[0.97] md:hover:scale-[1.01] md:hover:shadow-md",onClick:L[0]||(L[0]=M=>f("select"))},[a("div",ko,[a("span",_o,g(p.value),1),a("span",xo,g(b.value),1)]),a("span",wo,g(v.anal
3ysis.title),1),v.analysis.headline?(s(),c("span",$o,g(v.analysis.headline),1)):z("",!0),k(us,{class:"pt-1",compact:"","grammar-rating":v.analysis.grammar_rating,"effectiveness-rating":v.analysis.effectiveness_rating,"goals-completed":v.analysis.goals_completed,"goals-total":v.analysis.goals_total,solved:v.analysis.solved||null},null,8,["grammar-rating","effectiveness-rating","goals-completed","goals-total","solved"])]))}}),So={class:"text-[26px] font-semibold text-ink leading-tight"},To={key:0,class:"flex items-center justify-center py-12"},Eo={key:1,class:"flex flex-col items-center text-center gap-1 py-12"},Io={class:"text-sm font-medium text-ink"},Lo={class:"text-sm text-ink-muted max-w-xs"},Mo={class:"text-base font-normal text-ink-secondary-alt mb-3"},Ro={key:0,class:"pt-6 flex justify-center"},Do=["disabled"],Bt=he({__name:"ConversationAnalysisHistoryList",props:{analyses:{},isLoading:{type:Boolean},hasMore:{type:Boolean},isLoadingMore:{type:Boolean},columns:{default:1}},emits:["select","loadMore"],setup(T,{emit:i}){const n=T,f=i,{t:u}=Be(),p=y(()=>ws(n.analyses,b=>b.created_at));return(b,v)=>(s(),c("div",null,[a("h2",So,g(t(u)("conversationAnalysis.historyTitle")),1),b.isLoading&&!b.analyses.length?(s(),c("div",To,[k(t(Ze),{size:24,class:"text-ink-muted animate-spin"})])):b.analyses.length?(s(),c(X,{key:2},[(s(!0),c(X,null,ke(p.value,(L,M)=>(s(),c("div",{key:L.label,class:x(M===0?"pt-4":"pt-6")},[a("div",Mo,g(L.label),1),a("div",{class:x(["grid gap-3",b.columns>1?"grid-cols-2":"grid-cols-1"])},[(s(!0),c(X,null,ke(L.items,_=>(s(),G(Ao,{key:_.id,analysis:_,onSelect:E=>f("select",_.id)},null,8,["analysis","onSelect"]))),128))],2)],2))),128)),b.hasMore?(s(),c("div",Ro,[a("button",{type:"button","data-testid":"conversation-analysis-load-more",disabled:b.isLoadingMore,class:"px-5 py-2.5 rounded-full bg-surface-sunken text-sm font-semibold text-ink hover:bg-surface-hover-strong active:scale-[0.98] transition-all flex items-center gap-2",onClick:v[0]||(v[0]=L=>f("loadMore"))},[b.isLoadingMore?(s(),G(t(Ze),{key:0,size:16,class:"animate-spin"})):z("",!0),Ye(" "+g(t(u)("conversationAnalysis.loadMore")),1)],8,Do)])):z("",!0)],64)):(s(),c("div",Eo,[a("span",Io,g(t(u)("conversationAnalysis.historyEmpty")),1),a("span",Lo,g(t(u)("conversationAnalysis.historyEmptyHint")),1)]))]))}}),Po={key:0,class:"px-4 pt-5 pb-10"},Vo={class:"relative flex flex-col h-[80vh]"},No={class:"sr-only"},Oo={class:"flex-1 overflow-y-auto px-6 py-6"},Fo=he({__name:"ConversationAnalysisHistory",props:{show:{type:Boolean}},emits:["close"],setup(T,{emit:i}){const n=T,f=i,{isDesktopWidth:u}=Wt(),p=y(()=>n.show),{analyses:b,isLoading:v,hasMore:L,isLoadingMore:M,loadMore:_}=os(p),E=m(null),{analysis:R,isLoading:j,isError:J}=is(E);function te(){E.value=null}return(ee,S)=>(s(),c(X,null,[t(u)?(s(),G(xs,{key:1,id:"conversation-analysis-history-modal",size:"custom","custom-width":"lg:max-w-3xl",show:ee.show,"show-close-button":!1,onClose:S[4]||(S[4]=P=>f("close"))},{default:ge(()=>[a("div",Vo,[a("button",{type:"button",class:"absolute top-5 right-5 z-10 cursor-pointer p-2 rounded-full bg-surface/80 hover:bg-surface-hover transition-colors",onClick:S[2]||(S[2]=P=>f("close"))},[a("span",No,g(ee.$t("message.close")),1),k(t(es),{color:"black",size:20})]),a("div",Oo,[k(Bt,{analyses:t(b),"is-loading":t(v),"has-more":t(L),"is-loading-more":t(M),columns:2,onSelect:S[3]||(S[3]=P=>E.value=P),onLoadMore:t(_)},null,8,["analyses","is-loading","has-more","is-loading-more","onLoadMore"])])])]),_:1},8,["show"])):(s(),G(ct,{key:0,show:ee.show,"active-backdrop":!0,"backdrop-opacity":.3,"show-header-bar":!1,"show-close-button":!1,"bottom-padding-px":0,"max-height":"90vh","min-height":"90vh",onClose:S[1]||(S[1]=P=>f("close"))},{content:ge(()=>[ee.show?(s(),c("div",Po,[k(Bt,{analyses:t(b),"is-loading":t(v),"has-more":t(L),"is-loading-more":t(M),columns:1,onSelect:S[0]||(S[0]=P=>E.value=P),onLoadMore:t(_)},null,8,["analyses","is-loading","has-more","is-loading-more","onLoadMore"])])):z("",!0)]),_:1},8,["show"])),k(cs,{show:!!E.value,analysis:t(R),loading:t(j),error:t(J)?ee.$t("conversationAnalysis.errorTitle"):null,onClose:te,onRetry:te},null,8,["show","analysis","loading","error"])],64))}}),zo={key:0,class:"absolute top-0 left-0 right-0 z-50 px-3 py-4 pointer-events-none"},Bo={class:"flex-1 relative min-h-0"}
3,Wo=he({__name:"Speak",setup(T){const i=ba(),{fullViewportHeightStyle:n}=As(),{trackPlausibleEvent:f}=Ss(),{screen:u,streakWeeklyActivity:p,tryShowAfterActivity:b,goToSetGoal:v,dismissCelebration:L,commitGoal:M,closeStreakFlow:_,loadStreak:E}=Ts(),R=_a(),{allCases:j}=Is(),{isPhysician:J}=Qe(),{speakAsDoctor:te}=Ut(),ee={[Ae.ANAMNESE]:rt({category:Ae.ANAMNESE,enabled:J}),[Ae.ARZT_ARZT]:rt({category:Ae.ARZT_ARZT,enabled:J})},S=m("mode-selection"),P=m(""),_e=m(null),xe=m([]),H=m(null),ce=m(null),de=m(null),ye=m(!1),ae=m(!1),le=m(null),we=m(null),ne=m(!1),ve=m(null),$e=m(!1);qe(()=>{E();const $=i.query.returnPath;typeof $=="string"&&$.length>0&&(le.value=$);const w=i.query.caseContentItemId;typeof w=="string"&&w.length>0&&(we.value=w);const I=i.query.liveCaseInteractionId;typeof I=="string"&&I.length>0&&(ve.value=I),$e.value=i.query.autostart==="true";const U=i.query.mode,se=i.query.caseId,N=i.query.vocabId,q=Array.isArray(N)?N.filter(Ne=>typeof Ne=="string"):typeof N=="string"&&N.length>0?[N]:[];if(U==="companion"){Me.replace({name:"learner-companion"});return}const ie=i.query.speakCategory,Ve=ie===Ae.ANAMNESE||ie===Ae.ARZT_ARZT?ie:null;U&&Pe(U,se||null,null,q,null,Ve)});function K(){if(!le.value)return!1;const $=new URL(le.value,window.location.origin),w=Object.fromEntries($.searchParams.entries());return Me.push({path:$.pathname,query:w,state:{caseCompleted:ne.value}}),!0}function B(){ne.value=!0}function h(){if(S.value==="conversation"){if(K())return;ye.value=!0,S.value="mode-selection"}else S.value==="summary"?S.value="conversation":Me.push({name:"user-home"})}function A(){ye.value=!1}function V($=1e4){return j.value.length>0?Promise.resolve():new Promise(w=>{const I=Se(j,U=>{U.length>0&&(I(),w())});setTimeout(()=>{I(),w()},$)})}function W($,w=1e4){const{nextUpCasesQuery:I}=ee[$],U=()=>I.isSuccess.value||I.isError.value;return U()?Promise.resolve():new Promise(se=>{const N=Se(U,q=>{q&&(N(),se())});setTimeout(()=>{N(),se()},w)})}async function be($){return await W($),ee[$].getRandomCaseId()}async function Pe($,w=null,I=null,U=[],se=null,N=null){if($==="fsp-simulation"){Me.push("/fsp-simulation");return}if($==="guided-case-interaction"){f("startSpeakGuided");const q=N??(te.value?Ae.ANAMNESE:null);if(I)Me.push({path:`/case-interactions/${I}`,query:{returnPath:"/voice-chat"}});else if(w)Me.push({path:"/case-interactions/new",query:{returnPath:"/voice-chat",caseId:w,...N?{speakCategory:N}:{}}});else if(q){const ie=await be(q);if(!ie){console.warn(`â ï¸ No cases available in doctor pool "${q}"`);return}Me.push({path:"/case-interactions/new",query:{returnPath:"/voice-chat",caseId:ie,speakCategory:q}})}else await V(),await Es.playRandomCase(j.value,!1,!1,{returnPath:"/voice-chat"});return}f("startSpeakLiveTalk"),P.value=$,_e.value=w,xe.value=U,H.value=$==="ward-persona"?se:null,ce.value=$==="free-case-interaction"?N:null,S.value="conversation",de.value=null}function Re($){de.value=$,console.log("ð Conversation ended with full transcript:",{mode:$.metadata.mode,duration:`${$.stats.duration}s`,userWords:$.stats.userWordCount,aiResponses:$.stats.aiResponses,transcriptEntries:$.transcript.length,startTime:$.metadata.startTime,endTime:$.metadata.endTime}),$.stats.userWordCount>0&&R.invalidateQueries({queryKey:Ma()}),S.value="summary"}function Te(){b(oe)}function oe(){if(K()){E();return}Me.push({name:"user-home"}),E()}function me(){S.value="mode-selection"}const Ee=y(()=>S.value==="conversation");return($,w)=>{var I,U,se,N,q;return s(),c("div",{class:"bg-canvas flex flex-col",style:pe(t(n))},[a("div",{class:x(["flex flex-col flex-1 w-full min-h-0",S.value!=="mode-selection"?"max-w-[85rem] lg:p-4":""])},[a("div",{class:x(["flex flex-col flex-1 relative overflow-hidden min-h-0",S.value!=="mode-selection"?"lg:bg-surface lg:rounded-3xl":""])},[Ee.value?(s(),c("div",zo,[a("button",{onClick:h,class:"w-10 h-10 rounded-full bg-glass/80 backdrop-blur-sm flex items-center justify-center hover:bg-surface transition-colors pointer-events-auto"},[k(t(ts),{size:20,class:"text-ink"})])])):z("",!0),a("div",Bo,[S.value==="mode-selection"?(s(),G(Zs,{key:0,"restore-mode":ye.value?P.value:"vocabulary",onStartConversation:Pe,onShowHistory:w[0]||(w[0]=ie=>ae.value=!0),onVnodeMounted:A},null,8,["restore-mode"])):S.value==="conversation"?(s(),G(Oa,{key:1,mode:P.value,"preselected-case-id":_e.value,"preselected-vocab-ids":xe.value,"case-category":ce.value,"case-content-item-id":we.value,"resume-live-interaction-id":ve.value,autostart:$e.value,"ward-persona-id":(I=H.value)==null?void 0:I.id,"ward-persona-name":(U=H.value)==null?void 0:U.name,"ward-persona-subtitle":(se=H.value)==null?void 0:se.subtitle,"ward-persona-image-url":(N=H.value)==null?void 0:N.imageUrl,onExitConversation:Re,onCaseSolved:B,class:"h-full"},null,8,["mode","preselected-case-id","preselected-vocab-ids","case-category","case-content-item-id","resume-live-interaction-id","autostart","ward-persona-id","ward-persona-name","ward-persona-subtitle","ward-persona-image-url"])):S.value==="summary"?(s(),G(bo,{key:2,mode:P.value,"conversation-data":de.value,"persona-name":(q=H.value)==null?void 0:q.name,onBackToHome:Te,onRestartConversation:me},null,8,["mode","conversation-data","persona-name"])):z("",!0)])],2)],2),S.value==="mode-selection"?(s(),G(as,{key:0})):z("",!0),k(Fo,{show:ae.value,onClose:w[1]||(w[1]=ie=>ae.value=!1)},null,8,["show"]),k(Cs,{screen:t(u),"weekly-activity":t(p),onSetStreakGoal:t(v),onDismiss:t(L),onCommit:t(M),onClose:t(_)},null,8,["screen","weekly-activity","onSetStreakGoal","onDismiss","onCommit","onClose"])],4)}}}),hl=Xe(Wo,[["__scopeId","data-v-a236c3bc"]]);export{hl as default};
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.