chatlab-cli 0.31.1 → 0.31.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chat-command-MOETAGU5.mjs → chat-command-QPL4GNHP.mjs} +8 -8
- package/dist/{chunk-VOVLPSG6.mjs → chunk-3SZWD7UM.mjs} +4 -4
- package/dist/{chunk-2IXPWPLR.mjs → chunk-64FKPYPJ.mjs} +11 -11
- package/dist/{chunk-3VMKS7PU.mjs → chunk-6JKKHPXY.mjs} +2 -2
- package/dist/{chunk-SZEBCNBB.mjs → chunk-BSSR4ZYW.mjs} +10 -10
- package/dist/{chunk-7HBVGVOB.mjs → chunk-F2NZ7HAY.mjs} +2 -2
- package/dist/{chunk-KCPGEILH.mjs → chunk-GYPBWKAU.mjs} +4 -4
- package/dist/{chunk-DQ45LDKZ.mjs → chunk-IK7GJTGY.mjs} +9 -6
- package/dist/chunk-IK7GJTGY.mjs.map +1 -0
- package/dist/{chunk-LJXSUN25.mjs → chunk-OAXVKNPN.mjs} +2 -2
- package/dist/{chunk-ZVWUR7ET.mjs → chunk-OQ6N4PDD.mjs} +2 -2
- package/dist/{chunk-E6W2RURS.mjs → chunk-S5PQM5J4.mjs} +3 -3
- package/dist/{chunk-N5AGDT7I.mjs → chunk-ZCXCHKQV.mjs} +3 -3
- package/dist/cli.mjs +8 -8
- package/dist/contacts-worker.mjs +2 -2
- package/dist/global-insight-worker.mjs +1 -1
- package/dist/{http-M6NHWJZD.mjs → http-NOEWVWCP.mjs} +11 -11
- package/dist/{import-SEYHFXS5.mjs → import-RS3HW7ZM.mjs} +7 -7
- package/dist/index.mjs +11 -11
- package/dist/{mcp-MIPFYRLV.mjs → mcp-7F3G47Z4.mjs} +8 -8
- package/dist/people-relationships-worker.mjs +2 -2
- package/dist/semantic-index-worker.mjs +1 -1
- package/dist/{src-7OD6RD5V.mjs → src-MNH5S423.mjs} +6 -6
- package/dist/{stream-import-AWEHGQJY.mjs → stream-import-BPCHGRAN.mjs} +7 -7
- package/dist/{worker-runtime-TGYMASIE.mjs → worker-runtime-TTAXGQ5R.mjs} +5 -5
- package/dist-web/assets/{ActionToolsPanel-fAio70bI.css → ActionToolsPanel-CbWhu_Uv.css} +1 -1
- package/dist-web/assets/ActionToolsPanel.vue_vue_type_script_setup_true_lang-CvvNqXuh.js +110 -0
- package/dist-web/assets/{BufferResource-CHI62pIA.js → BufferResource-Dh2kaMuP.js} +1 -1
- package/dist-web/assets/{CanvasRenderer-OZRoiF0j.js → CanvasRenderer-B8hHywwz.js} +1 -1
- package/dist-web/assets/EChartWordcloud-BXC_4nUP.js +1 -0
- package/dist-web/assets/{Filter-DNb5VErW.js → Filter-Bap1KMW6.js} +1 -1
- package/dist-web/assets/LoadingState.vue_vue_type_script_setup_true_lang-B2KAoiMG.js +1 -0
- package/dist-web/assets/MessageExportModal-H3-LAaXY.js +1 -0
- package/dist-web/assets/PageHeader-CzTV_lyM.js +1 -0
- package/dist-web/assets/{RelationshipGalaxyCanvas-ioRNObb5.js → RelationshipGalaxyCanvas-C6ZoUZNc.js} +4 -4
- package/dist-web/assets/{RelationshipGalaxyThreeCanvas-L1Y43p1A.js → RelationshipGalaxyThreeCanvas-DV6B-7XB.js} +1 -1
- package/dist-web/assets/{RenderTargetSystem-fJ7D7Chv.js → RenderTargetSystem-Dpgyoac_.js} +1 -1
- package/dist-web/assets/ThemeCard.vue_vue_type_script_setup_true_lang-BWJ6kuSC.js +1 -0
- package/dist-web/assets/TimeSelect.vue_vue_type_script_setup_true_lang--Tbo7p-l.js +1 -0
- package/dist-web/assets/{WebGLRenderer-BD3ZUtxH.js → WebGLRenderer-DICnsAm5.js} +1 -1
- package/dist-web/assets/{WebGPURenderer-DZXYsT6D.js → WebGPURenderer-Bf0gkRK9.js} +1 -1
- package/dist-web/assets/annual-summary-time-range-CK0IIPsY.js +1 -0
- package/dist-web/assets/{base-DTElkJcC.js → base-D5T8QZ8b.js} +1 -1
- package/dist-web/assets/{browserAll-ChT6N6a9.js → browserAll-DcoCy7xY.js} +1 -1
- package/dist-web/assets/dateFormat-BDOkdsCR.js +1 -0
- package/dist-web/assets/{electron-CIzyGxH_.js → electron-CmhzSjaH.js} +1 -1
- package/dist-web/assets/{fetch-DnGx-1_t.js → fetch-BJka-sCN.js} +1 -1
- package/dist-web/assets/{fetch-wSSfDBdV.js → fetch-BddgpyKJ.js} +1 -1
- package/dist-web/assets/{fetch-C9rx2isC.js → fetch-C1mlq5VY.js} +1 -1
- package/dist-web/assets/{fetch-BFnrBahy.js → fetch-CNz28Lv5.js} +1 -1
- package/dist-web/assets/{fetch-CyKILLnB.js → fetch-D71bG6Fc.js} +1 -1
- package/dist-web/assets/{fetch-qC7om4QG.js → fetch-D8xv4lgE.js} +1 -1
- package/dist-web/assets/{fetch-CuiQUcO_.js → fetch-DfTM4Dah.js} +1 -1
- package/dist-web/assets/{fetch-Avtnh8cJ.js → fetch-DtcNaN3d.js} +1 -1
- package/dist-web/assets/{fetch-Ccq_0ecb.js → fetch-TATpgXht.js} +1 -1
- package/dist-web/assets/{fetch-Dd6t3p1r.js → fetch-dI5w8lYN.js} +1 -1
- package/dist-web/assets/index-Bs4ZX2-v.js +24 -0
- package/dist-web/assets/index-CAjUCtGD.css +1 -0
- package/dist-web/assets/index-CF59LLOG.js +25 -0
- package/dist-web/assets/index-CJ3WtSLo.js +173 -0
- package/dist-web/assets/index-CJS6FVuj.js +64 -0
- package/dist-web/assets/index-CY5yJhCJ.js +1 -0
- package/dist-web/assets/{index-y7cxH1Et.css → index-CsqMIyA9.css} +1 -1
- package/dist-web/assets/index-CtmXho1w.css +1 -0
- package/dist-web/assets/index-DClxj4T2.js +2 -0
- package/dist-web/assets/index-De3ImZb9.js +1 -0
- package/dist-web/assets/{index-DXHYzIIj.js → index-Dp3gCHpK.js} +1 -1
- package/dist-web/assets/index-DphjBwbA.js +1 -0
- package/dist-web/assets/index-Dtbu8m1o.js +1 -0
- package/dist-web/assets/index-a1ZrlsKo.js +1 -0
- package/dist-web/assets/index-qZ7jnIna.js +2 -0
- package/dist-web/assets/index-soX5gDgh.js +1 -0
- package/dist-web/assets/people-page-header-D93GTPBO.js +1 -0
- package/dist-web/assets/vendor-nuxt-ui-DUpPmItD.js +15 -0
- package/dist-web/assets/vendor-reka-ui-BLnO2MqY.js +15 -0
- package/dist-web/assets/vendor-snapdom--nZvo8Sg.js +8 -0
- package/dist-web/assets/web-H9T1dZys.js +1 -0
- package/dist-web/assets/{webworkerAll-C3dAOQj4.js → webworkerAll-D1Kui8G8.js} +1 -1
- package/dist-web/index.html +5 -5
- package/package.json +1 -1
- package/dist/chunk-DQ45LDKZ.mjs.map +0 -1
- package/dist-web/assets/ActionToolsPanel.vue_vue_type_script_setup_true_lang-CkDGVRXe.js +0 -110
- package/dist-web/assets/EChartWordcloud-DU3ZYdgz.js +0 -1
- package/dist-web/assets/LoadingState.vue_vue_type_script_setup_true_lang-DACMroOe.js +0 -1
- package/dist-web/assets/MessageExportModal-CqP-w7HP.js +0 -1
- package/dist-web/assets/PageHeader-Ck8ULyZH.js +0 -1
- package/dist-web/assets/ThemeCard.vue_vue_type_script_setup_true_lang-BoZyssJF.js +0 -1
- package/dist-web/assets/TimeSelect.vue_vue_type_script_setup_true_lang-7SEaCxDL.js +0 -1
- package/dist-web/assets/annual-summary-time-range-DVLXK1r4.js +0 -1
- package/dist-web/assets/dateFormat-D9WibwOu.js +0 -1
- package/dist-web/assets/index-BH9jI5kV.js +0 -173
- package/dist-web/assets/index-BWtNqcYK.js +0 -22
- package/dist-web/assets/index-Bkq7-GBp.js +0 -1
- package/dist-web/assets/index-Bqr-LkS1.css +0 -1
- package/dist-web/assets/index-C6qtsaP7.js +0 -1
- package/dist-web/assets/index-C_0GHEcb.css +0 -1
- package/dist-web/assets/index-ChFGuu70.js +0 -1
- package/dist-web/assets/index-CiS20iAR.js +0 -24
- package/dist-web/assets/index-CqD6u57u.js +0 -1
- package/dist-web/assets/index-CzDG8LVr.js +0 -2
- package/dist-web/assets/index-D0Euk-vQ.js +0 -1
- package/dist-web/assets/index-D26BWhHz.js +0 -1
- package/dist-web/assets/index-Dq8u7gMb.js +0 -2
- package/dist-web/assets/index-u_UH6rDY.js +0 -64
- package/dist-web/assets/people-page-header-BdKM1qhX.js +0 -1
- package/dist-web/assets/vendor-nuxt-ui-CS1uxE9C.js +0 -15
- package/dist-web/assets/vendor-reka-ui-Cta6JPvN.js +0 -11
- package/dist-web/assets/vendor-snapdom-XnBoh1gd.js +0 -8
- package/dist-web/assets/web-BDBdpdK7.js +0 -1
- /package/dist/{chat-command-MOETAGU5.mjs.map → chat-command-QPL4GNHP.mjs.map} +0 -0
- /package/dist/{chunk-VOVLPSG6.mjs.map → chunk-3SZWD7UM.mjs.map} +0 -0
- /package/dist/{chunk-2IXPWPLR.mjs.map → chunk-64FKPYPJ.mjs.map} +0 -0
- /package/dist/{chunk-3VMKS7PU.mjs.map → chunk-6JKKHPXY.mjs.map} +0 -0
- /package/dist/{chunk-SZEBCNBB.mjs.map → chunk-BSSR4ZYW.mjs.map} +0 -0
- /package/dist/{chunk-7HBVGVOB.mjs.map → chunk-F2NZ7HAY.mjs.map} +0 -0
- /package/dist/{chunk-KCPGEILH.mjs.map → chunk-GYPBWKAU.mjs.map} +0 -0
- /package/dist/{chunk-LJXSUN25.mjs.map → chunk-OAXVKNPN.mjs.map} +0 -0
- /package/dist/{chunk-ZVWUR7ET.mjs.map → chunk-OQ6N4PDD.mjs.map} +0 -0
- /package/dist/{chunk-E6W2RURS.mjs.map → chunk-S5PQM5J4.mjs.map} +0 -0
- /package/dist/{chunk-N5AGDT7I.mjs.map → chunk-ZCXCHKQV.mjs.map} +0 -0
- /package/dist/{http-M6NHWJZD.mjs.map → http-NOEWVWCP.mjs.map} +0 -0
- /package/dist/{import-SEYHFXS5.mjs.map → import-RS3HW7ZM.mjs.map} +0 -0
- /package/dist/{mcp-MIPFYRLV.mjs.map → mcp-7F3G47Z4.mjs.map} +0 -0
- /package/dist/{src-7OD6RD5V.mjs.map → src-MNH5S423.mjs.map} +0 -0
- /package/dist/{stream-import-AWEHGQJY.mjs.map → stream-import-BPCHGRAN.mjs.map} +0 -0
- /package/dist/{worker-runtime-TGYMASIE.mjs.map → worker-runtime-TTAXGQ5R.mjs.map} +0 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/MessageExportModal-H3-LAaXY.js","assets/vendor-nuxt-ui-DUpPmItD.js","assets/vendor-reka-ui-BLnO2MqY.js","assets/index-CF59LLOG.js","assets/vendor-snapdom--nZvo8Sg.js","assets/index-CAjUCtGD.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{u as J,z as ce,T as Te,s as ke,k as we,y as qe,m as Ce,o as Re,A as Ae,t as je,B as Le,w as Ve}from"./index-CF59LLOG.js";import{_ as X,f as De,g as ze,e as Be,u as Oe,d as Ne}from"./vendor-nuxt-ui-DUpPmItD.js";import{d as Q,w as Z,x as ue,O as de,P as n,Q as V,u as t,T as H,Z as f,ag as e,a0 as a,ad as E,ae as Y,_ as z,a1 as L,U as w,aa as ne,c as q,r as U,a9 as Ue,Y as Fe,bS as $e,A as ye,bW as Ee}from"./vendor-reka-ui-BLnO2MqY.js";import{_ as Se,a as Pe,b as We,c as he,d as _e,e as Ke,u as He,f as Ge,g as Ye,h as Qe,i as Ze,j as Je,k as Xe,l as et,m as tt,n as st,C as at,o as nt,A as it,D as lt,M as ot}from"./ActionToolsPanel.vue_vue_type_script_setup_true_lang-CvvNqXuh.js";import{g as rt,a as ct}from"./base-D5T8QZ8b.js";import"./vendor-echarts-wordcloud-Ca8n6qS6.js";import{_ as re}from"./LoadingState.vue_vue_type_script_setup_true_lang-B2KAoiMG.js";import{u as me,x as ut,j as ge,i as pe,k as se,n as Ie,t as Me,s as dt,m as mt}from"./vendor-echarts-B-i_56Av.js";import{_ as fe}from"./ThemeCard.vue_vue_type_script_setup_true_lang-BWJ6kuSC.js";import"./vendor-snapdom--nZvo8Sg.js";import"./index-Bs4ZX2-v.js";import"./dateFormat-BDOkdsCR.js";import"./TimeSelect.vue_vue_type_script_setup_true_lang--Tbo7p-l.js";import"./PageHeader-CzTV_lyM.js";import"./vendor-zrender-5DcYjSZk.js";const gt={key:0,class:"relative z-10 flex flex-col h-full"},pt={class:"flex flex-col sm:flex-row items-center sm:items-start gap-6 px-6 pt-8 pb-4 sm:px-8"},ft={class:"w-full flex-1 min-w-0"},xt={class:"flex items-center gap-x-2 sm:gap-x-3 mb-6 sm:mb-8"},vt={class:"text-2xl sm:text-4xl font-black tracking-tight text-blue-600 dark:text-blue-400 truncate"},bt={class:"text-2xl sm:text-4xl font-black tracking-tight text-pink-600 dark:text-pink-400 truncate"},ht={class:"grid grid-cols-2 gap-4 sm:gap-10"},yt={class:"text-[10px] font-bold uppercase tracking-widest text-gray-400 dark:text-gray-500"},_t={class:"flex flex-col gap-2.5"},kt=["title","onClick"],wt={class:"shrink-0 text-[10px] sm:text-xs font-semibold tabular-nums text-gray-400/80"},Ct={key:0,class:"text-xs sm:text-sm font-medium text-gray-400"},$t={class:"hidden shrink-0 sm:block"},St={class:"px-6 pb-6 pt-2 sm:px-8 mt-auto"},Pt={class:"mb-3 flex items-center justify-between"},It={class:"text-[10px] font-bold uppercase tracking-widest text-gray-400 dark:text-gray-500"},Mt={class:"grid grid-cols-1 sm:grid-cols-3 gap-4"},Tt={class:"mb-4 flex items-center gap-2.5"},qt={class:"text-sm font-bold tracking-wide text-gray-900 dark:text-white"},Rt={class:"flex items-center justify-between mb-4 w-full"},At={class:"flex flex-col flex-1 min-w-0"},jt={class:"truncate text-[10px] font-bold uppercase tracking-wider text-gray-400 mb-1"},Lt={class:"flex flex-col flex-1 min-w-0 items-end text-right"},Vt={class:"truncate text-[10px] font-bold uppercase tracking-wider text-gray-400 mb-1"},Dt={class:"mt-auto pt-3 border-t border-gray-100 dark:border-white/5 flex flex-col"},zt={key:0,class:"flex items-start justify-between gap-2 mb-2 min-h-[24px]"},Bt={class:"flex flex-1 flex-nowrap overflow-hidden gap-1"},Ot={key:0,class:"text-[11px] text-gray-400"},Nt={class:"flex flex-1 flex-nowrap overflow-hidden gap-1 justify-end"},Ut={key:0,class:"text-[11px] text-gray-400"},Ft={key:1,class:"flex flex-nowrap overflow-hidden items-center gap-x-1.5 mb-2 min-h-[24px]"},Et=["onClick"],Wt={key:0,class:"shrink-0 text-gray-300 dark:text-gray-600 font-normal"},Kt={key:0,class:"text-[11px] text-gray-400"},Ht={class:"text-[10px] leading-relaxed text-gray-500 dark:text-gray-400"},Gt={class:"flex items-center justify-between px-6 pb-4 opacity-40 mix-blend-luminosity dark:opacity-30 sm:px-8 sm:pb-5"},Yt={class:"flex items-center gap-1.5"},Qt={class:"text-[9px] font-medium uppercase tracking-widest"},Zt=Q({__name:"LanguagePreferenceCard",props:{data:{}},emits:["wordClick"],setup(y,{emit:s}){me([ut,ge,pe]);const{t:c}=J(),C=ce(),o=y,g=s,P=q(()=>o.data.members[0]),_=q(()=>o.data.members[1]);function u(d,i){return d.length<=i?d:d.slice(0,i)+"…"}function j(d){const i=d.posDistribution,b=i.noun+i.verb+i.adjective+i.adverb+i.modalParticle+i.interjection+i.other;return b===0?c("quotes.languagePreference.pos.styleBalanced"):i.noun/b>.5?c("quotes.languagePreference.pos.styleEncyclopedia"):i.verb/b>.45?c("quotes.languagePreference.pos.styleAction"):i.adjective/b>.3?c("quotes.languagePreference.pos.styleExpressive"):c("quotes.languagePreference.pos.styleBalanced")}function D(d){const b=[["ellipsis",d.ellipsis],["exclamation",d.exclamation],["question",d.question],["tilde",d.tilde],["noPunct",d.noPunct],["period",d.period]].reduce((M,B)=>M[1]>=B[1]?M:B);return{ellipsis:c("quotes.languagePreference.punctuation.personalityDeep"),exclamation:c("quotes.languagePreference.punctuation.personalityPassionate"),question:c("quotes.languagePreference.punctuation.personalityCurious"),tilde:c("quotes.languagePreference.punctuation.personalityCheerful"),noPunct:c("quotes.languagePreference.punctuation.personalityFreeflow"),period:c("quotes.languagePreference.punctuation.personalityPrecise")}[b[0]]||"-"}function I(d,i=5){return[["...",d.ellipsis],["!",d.exclamation],["?",d.question],["~",d.tilde],["。",d.period]].filter(([,x])=>x>0).sort((x,M)=>M[1]-x[1]).slice(0,i).map(([x])=>x)}const R=["#6366f1","#ec4899","#f97316","#22c55e","#3b82f6","#8b5cf6","#14b8a6","#f43f5e","#eab308","#06b6d4"],v=q(()=>{const d=P.value,i=_.value;if(!d||!i)return[];const b=o.data.sharedWords.slice(0,6).map((x,M)=>({word:x.word,color:R[M%R.length]}));return[{icon:"i-heroicons-book-open",iconBgClass:"bg-blue-100 dark:bg-blue-500/20",iconColorClass:"text-blue-600 dark:text-blue-400",title:c("quotes.languagePreference.card.diversityTitle"),leftName:d.name,leftValue:`${d.lexicalDiversity}%`,rightName:i.name,rightValue:`${i.lexicalDiversity}%`,valueClass:"text-lg text-blue-600 dark:text-blue-400",detail:{kind:"tags-single",tags:b},desc:c("quotes.languagePreference.card.diversityDesc")},{icon:"i-heroicons-sparkles",iconBgClass:"bg-violet-100 dark:bg-violet-500/20",iconColorClass:"text-violet-600 dark:text-violet-400",title:c("quotes.languagePreference.card.styleTitle"),leftName:d.name,leftValue:j(d),rightName:i.name,rightValue:j(i),valueClass:"text-xs text-violet-600 dark:text-violet-400",detail:{kind:"tags-vs",leftTags:d.modalParticles.slice(0,4).map(x=>x.word),rightTags:i.modalParticles.slice(0,4).map(x=>x.word)},desc:c("quotes.languagePreference.card.styleDesc")},{icon:"i-heroicons-finger-print",iconBgClass:"bg-orange-100 dark:bg-orange-500/20",iconColorClass:"text-orange-600 dark:text-orange-400",title:c("quotes.languagePreference.card.punctTitle"),leftName:d.name,leftValue:D(d.punctuation),rightName:i.name,rightValue:D(i.punctuation),valueClass:"text-xs text-orange-600 dark:text-orange-400",detail:{kind:"tags-vs",leftTags:I(d.punctuation,4),rightTags:I(i.punctuation,4)},desc:c("quotes.languagePreference.card.punctDesc")}]}),A=U(null);let r=null;function p(){A.value&&(r=se(A.value,void 0,{renderer:"canvas"}),k())}function k(){if(!r||!P.value||!_.value)return;const d=P.value.posDistribution,i=_.value.posDistribution,b=[{name:c("quotes.languagePreference.card.radarFactual"),max:0},{name:c("quotes.languagePreference.card.radarActive"),max:0},{name:c("quotes.languagePreference.card.radarDescriptive"),max:0},{name:c("quotes.languagePreference.card.radarAffable"),max:0},{name:c("quotes.languagePreference.card.radarIntense"),max:0}],x=[d.noun,d.verb,d.adjective,d.modalParticle+d.interjection,d.adverb],M=[i.noun,i.verb,i.adjective,i.modalParticle+i.interjection,i.adverb];for(let N=0;N<b.length;N++)b[N].max=Math.max(x[N],M[N],1)*1.3;const B=C.value?"#9ca3af":"#6b7280";r.setOption({backgroundColor:"transparent",tooltip:{trigger:"item"},legend:{bottom:0,itemWidth:10,itemHeight:10,textStyle:{fontSize:10,color:B},data:[P.value.name,_.value.name]},radar:{indicator:b,radius:"60%",center:["50%","50%"],splitArea:{areaStyle:{color:C.value?["rgba(255,255,255,0.02)","rgba(255,255,255,0.04)"]:["rgba(0,0,0,0.01)","rgba(0,0,0,0.03)"]}},axisName:{color:B,fontSize:10},splitLine:{lineStyle:{color:C.value?"rgba(255,255,255,0.08)":"rgba(0,0,0,0.06)"}},axisLine:{lineStyle:{color:C.value?"rgba(255,255,255,0.1)":"rgba(0,0,0,0.08)"}}},series:[{type:"radar",data:[{value:x,name:P.value.name,lineStyle:{color:"#3b82f6",width:2},areaStyle:{color:"rgba(59,130,246,0.15)"},itemStyle:{color:"#3b82f6"},symbol:"circle",symbolSize:4},{value:M,name:_.value.name,lineStyle:{color:"#ec4899",width:2},areaStyle:{color:"rgba(236,72,153,0.15)"},itemStyle:{color:"#ec4899"},symbol:"circle",symbolSize:4}]}]},{notMerge:!0})}function $(){r?.resize()}return Z(()=>o.data,()=>k(),{deep:!0}),Z(C,()=>{r?.dispose(),p()}),ue(()=>{p(),window.addEventListener("resize",$)}),de(()=>{window.removeEventListener("resize",$),r?.dispose()}),(d,i)=>{const b=X;return n(),V(t(Se),null,{default:H(()=>[P.value&&_.value?(n(),f("div",gt,[e("div",pt,[e("div",ft,[e("div",xt,[e("span",vt,a(P.value.name),1),i[0]||(i[0]=e("span",{class:"text-sm sm:text-lg font-black text-gray-300 dark:text-gray-600 italic px-1 sm:px-2 shrink-0"}," VS ",-1)),e("span",bt,a(_.value.name),1)]),e("div",ht,[(n(!0),f(E,null,Y([P.value,_.value],(x,M)=>(n(),f("div",{key:x.memberId,class:"flex flex-col gap-3"},[e("div",yt,a(t(c)("quotes.languagePreference.card.topCatchphrases")),1),e("div",_t,[(n(!0),f(E,null,Y(x.catchphrases.slice(0,3),(B,N)=>(n(),f("div",{key:N,class:"flex items-center gap-2 group"},[e("span",{class:z(["text-xs sm:text-sm font-black font-mono opacity-40 transition-opacity group-hover:opacity-100",M===0?"text-blue-600 dark:text-blue-400":"text-pink-600 dark:text-pink-400"])}," #"+a(N+1),3),e("span",{class:"truncate text-sm sm:text-base font-bold text-gray-700 dark:text-gray-200 cursor-pointer hover:opacity-70 transition-opacity",title:B.content,onClick:W=>g("wordClick",B.content)}," 「"+a(u(B.content,12))+"」 ",9,kt),e("span",wt," ×"+a(B.count),1)]))),128)),x.catchphrases.length===0?(n(),f("div",Ct,"-")):L("",!0)])]))),128))])]),e("div",$t,[e("div",{ref_key:"radarRef",ref:A,style:{width:"250px",height:"230px"},class:"-mt-4 sm:-mr-4"},null,512)])]),e("div",St,[e("div",Pt,[e("span",It,a(t(c)("quotes.languagePreference.card.languageProfiles")),1)]),e("div",Mt,[(n(!0),f(E,null,Y(v.value,x=>(n(),f("div",{key:x.title,class:"flex min-w-0 flex-col p-4"},[e("div",Tt,[e("div",{class:z(["flex h-8 w-8 shrink-0 items-center justify-center rounded-lg",x.iconBgClass])},[w(b,{name:x.icon,class:z(["h-4 w-4",x.iconColorClass])},null,8,["name","class"])],2),e("span",qt,a(x.title),1)]),e("div",Rt,[e("div",At,[e("span",jt,a(x.leftName),1),e("span",{class:z(["truncate text-xl font-black font-mono leading-none",x.valueClass])},a(x.leftValue),3)]),i[1]||(i[1]=e("div",{class:"px-2 shrink-0"},[e("span",{class:"text-[10px] font-black text-gray-300 dark:text-gray-600 italic"},"VS")],-1)),e("div",Lt,[e("span",Vt,a(x.rightName),1),e("span",{class:z(["truncate text-xl font-black font-mono leading-none",x.valueClass])},a(x.rightValue),3)])]),e("div",Dt,[x.detail.kind==="tags-vs"?(n(),f("div",zt,[e("div",Bt,[(n(!0),f(E,null,Y(x.detail.leftTags,M=>(n(),f("span",{key:M,class:"shrink-0 px-1.5 py-0.5 rounded-md text-[10px] font-semibold font-mono bg-blue-50 text-blue-600 dark:bg-blue-500/10 dark:text-blue-400"},a(M),1))),128)),x.detail.leftTags.length===0?(n(),f("span",Ot,"-")):L("",!0)]),e("div",Nt,[(n(!0),f(E,null,Y(x.detail.rightTags,M=>(n(),f("span",{key:M,class:"shrink-0 px-1.5 py-0.5 rounded-md text-[10px] font-semibold font-mono bg-pink-50 text-pink-600 dark:bg-pink-500/10 dark:text-pink-400"},a(M),1))),128)),x.detail.rightTags.length===0?(n(),f("span",Ut,"-")):L("",!0)])])):x.detail.kind==="tags-single"?(n(),f("div",Ft,[(n(!0),f(E,null,Y(x.detail.tags.slice(0,6),(M,B)=>(n(),f(E,{key:M.word},[e("span",{class:"shrink-0 cursor-pointer text-[11px] font-bold transition-opacity hover:opacity-80",style:ne({color:M.color}),onClick:N=>g("wordClick",M.word)},a(M.word),13,Et),B<x.detail.tags.slice(0,6).length-1?(n(),f("span",Wt," · ")):L("",!0)],64))),128)),x.detail.tags.length===0?(n(),f("span",Kt,"-")):L("",!0)])):L("",!0),e("p",Ht,a(x.desc),1)])]))),128))])]),e("div",Gt,[e("div",Yt,[w(b,{name:"i-heroicons-chat-bubble-left-right-solid",class:"h-3.5 w-3.5"}),i[2]||(i[2]=e("span",{class:"text-[10px] font-bold uppercase tracking-wider"},"ChatLab",-1))]),e("span",Qt,a(t(c)("quotes.languagePreference.card.watermark")),1)])])):L("",!0)]),_:1})}}}),Jt={class:"px-5 py-4 sm:px-6"},Xt={class:"mb-4 flex items-center justify-between"},es={class:"flex items-center gap-2"},ts={class:"text-[15px] font-black tracking-tight text-gray-900 dark:text-white"},ss={key:0,class:"rounded-full bg-pink-100 px-2 py-0.5 text-[10px] font-bold text-pink-600 dark:bg-pink-900/30 dark:text-pink-400"},as={key:0,class:"grid grid-cols-2 gap-6"},ns={class:"mb-3 text-center"},is={class:"text-sm font-semibold text-blue-600 dark:text-blue-400"},ls={class:"flex flex-wrap gap-2"},os=["title","onClick"],rs={class:"text-[10px] font-semibold opacity-60"},cs={class:"mb-3 text-center"},us={class:"text-sm font-semibold text-pink-600 dark:text-pink-400"},ds={class:"flex flex-wrap gap-2"},ms=["title","onClick"],gs={class:"text-[10px] font-semibold opacity-60"},ps={class:"mt-4 text-center text-xs text-gray-500 dark:text-gray-400"},fs=Q({__name:"CatchphrasePKSection",props:{members:{}},emits:["wordClick"],setup(y,{emit:s}){const{t:c}=J(),C=y,o=s,g=U(20),P=[{label:"10",value:10},{label:"20",value:20},{label:"30",value:30}],_=q(()=>C.members[0]),u=q(()=>C.members[1]),j=q(()=>_.value?.catchphrases.slice(0,g.value)??[]),D=q(()=>u.value?.catchphrases.slice(0,g.value)??[]),I=q(()=>{if(!_.value||!u.value)return new Set;const r=new Set(_.value.catchphrases.map(k=>k.content)),p=new Set(u.value.catchphrases.map(k=>k.content));return new Set([...r].filter(k=>p.has(k)))}),R=[{bg:"bg-amber-50 text-amber-600 ring-1 ring-amber-500/20 dark:bg-amber-500/10 dark:text-amber-400 dark:ring-amber-500/30",text:"text-amber-700 dark:text-amber-400 font-bold",badge:"bg-amber-500 text-white dark:bg-amber-600"},{bg:"bg-slate-50 text-slate-600 ring-1 ring-slate-500/20 dark:bg-slate-500/10 dark:text-slate-400 dark:ring-slate-500/30",text:"text-slate-700 dark:text-slate-300 font-bold",badge:"bg-slate-400 text-white dark:bg-slate-500"},{bg:"bg-orange-50 text-orange-600 ring-1 ring-orange-500/20 dark:bg-orange-500/10 dark:text-orange-400 dark:ring-orange-500/30",text:"text-orange-700 dark:text-orange-400 font-bold",badge:"bg-orange-400 text-white dark:bg-orange-500"}];function v(r){return r<R.length?R[r]:{bg:"bg-gray-50/50 text-gray-600 ring-1 ring-gray-900/5 dark:bg-gray-800/30 dark:text-gray-400 dark:ring-white/10",text:"text-gray-600 dark:text-gray-400",badge:"bg-transparent text-gray-400"}}function A(r,p=20){return r.length<=p?r:r.slice(0,p)+"..."}return(r,p)=>{const k=X;return n(),V(t(fe),null,{default:H(()=>[e("div",Jt,[e("div",Xt,[e("div",es,[w(k,{name:"i-heroicons-chat-bubble-bottom-center-text",class:"h-4 w-4 text-indigo-500"}),e("span",ts,a(t(c)("quotes.languagePreference.catchphrasePK.title")),1),I.value.size>0?(n(),f("span",ss,a(t(c)("quotes.languagePreference.catchphrasePK.sharedCount",{count:I.value.size})),1)):L("",!0)]),w(t(Te),{modelValue:g.value,"onUpdate:modelValue":p[0]||(p[0]=$=>g.value=$),size:"xs",items:P},null,8,["modelValue"])]),_.value&&u.value?(n(),f("div",as,[e("div",null,[e("div",ns,[e("span",is,a(_.value.name),1)]),e("div",ls,[(n(!0),f(E,null,Y(j.value,($,d)=>(n(),f("div",{key:$.content,class:z(["inline-flex cursor-pointer items-center gap-1.5 rounded-full px-3 py-1 transition-opacity hover:opacity-75",[I.value.has($.content)?"bg-pink-50 text-pink-600 ring-1 ring-pink-500/20 dark:bg-pink-500/10 dark:text-pink-400 dark:ring-pink-500/30 shadow-sm":v(d).bg]]),title:$.content,onClick:i=>o("wordClick",$.content)},[d<3?(n(),f("span",{key:0,class:z(["flex h-4 w-4 shrink-0 items-center justify-center rounded-full text-[10px] font-bold",v(d).badge])},a(d+1),3)):L("",!0),e("span",{class:z(["text-[13px] font-medium",I.value.has($.content)?"font-bold":v(d).text])},a(A($.content)),3),e("span",rs,"×"+a($.count),1)],10,os))),128))])]),e("div",null,[e("div",cs,[e("span",us,a(u.value.name),1)]),e("div",ds,[(n(!0),f(E,null,Y(D.value,($,d)=>(n(),f("div",{key:$.content,class:z(["inline-flex cursor-pointer items-center gap-1.5 rounded-full px-3 py-1 transition-opacity hover:opacity-75",[I.value.has($.content)?"bg-pink-50 text-pink-600 ring-1 ring-pink-500/20 dark:bg-pink-500/10 dark:text-pink-400 dark:ring-pink-500/30 shadow-sm":v(d).bg]]),title:$.content,onClick:i=>o("wordClick",$.content)},[d<3?(n(),f("span",{key:0,class:z(["flex h-4 w-4 shrink-0 items-center justify-center rounded-full text-[10px] font-bold",v(d).badge])},a(d+1),3)):L("",!0),e("span",{class:z(["text-[13px] font-medium",I.value.has($.content)?"font-bold":v(d).text])},a(A($.content)),3),e("span",gs,"×"+a($.count),1)],10,ms))),128))])])])):L("",!0),e("p",ps,a(t(c)("quotes.languagePreference.catchphrasePK.hint")),1)])]),_:1})}}}),xs={class:"px-5 py-4 sm:px-6"},vs={class:"mb-4 flex items-center gap-2"},bs={class:"text-[15px] font-black tracking-tight text-gray-900 dark:text-white"},hs={class:"flex flex-col gap-4 lg:flex-row lg:gap-6"},ys={class:"flex-1"},_s={key:0,class:"flex shrink-0 flex-col gap-3 lg:w-48"},ks={class:"min-w-0"},ws={class:"truncate text-xs font-semibold text-gray-500 dark:text-gray-400"},Cs=Q({__name:"PosPortraitSection",props:{members:{}},setup(y){me([Ie,Me,ge,dt,pe]);const{t:s}=J(),c=ce(),C=y,o=q(()=>C.members[0]),g=q(()=>C.members[1]);function P(R){const v=R.posDistribution,A=v.noun+v.verb+v.adjective+v.adverb+v.modalParticle+v.interjection+v.other;if(A===0)return{label:s("quotes.languagePreference.pos.styleBalanced"),icon:"i-heroicons-scale-solid",colorClass:"text-cyan-600 dark:text-cyan-400"};const r=v.noun/A,p=v.verb/A,k=v.adjective/A;return r>.5?{label:s("quotes.languagePreference.pos.styleEncyclopedia"),icon:"i-heroicons-book-open-solid",colorClass:"text-indigo-600 dark:text-indigo-400"}:p>.45?{label:s("quotes.languagePreference.pos.styleAction"),icon:"i-heroicons-rocket-launch-solid",colorClass:"text-orange-600 dark:text-orange-400"}:k>.3?{label:s("quotes.languagePreference.pos.styleExpressive"),icon:"i-heroicons-paint-brush-solid",colorClass:"text-pink-600 dark:text-pink-400"}:{label:s("quotes.languagePreference.pos.styleBalanced"),icon:"i-heroicons-scale-solid",colorClass:"text-cyan-600 dark:text-cyan-400"}}const _=U(null);let u=null;function j(){_.value&&(u=se(_.value,void 0,{renderer:"canvas"}),D())}function D(){if(!u||!o.value||!g.value)return;const R=o.value.posDistribution,v=g.value.posDistribution,A=[s("quotes.languagePreference.card.radarNoun"),s("quotes.languagePreference.card.radarVerb"),s("quotes.languagePreference.card.radarAdj"),s("quotes.languagePreference.card.radarModal"),s("quotes.languagePreference.card.radarAdv")],r=[R.noun,R.verb,R.adjective,R.modalParticle+R.interjection,R.adverb],p=[v.noun,v.verb,v.adjective,v.modalParticle+v.interjection,v.adverb],k=c.value?"#9ca3af":"#6b7280";u.setOption({backgroundColor:"transparent",tooltip:{trigger:"axis",axisPointer:{type:"shadow"}},legend:{data:[o.value.name,g.value.name],top:0,textStyle:{fontSize:11,color:k}},grid:{left:80,right:20,top:36,bottom:10},xAxis:{type:"value",show:!1},yAxis:{type:"category",data:A,axisLine:{show:!1},axisTick:{show:!1},axisLabel:{fontSize:11,color:k}},series:[{name:o.value.name,type:"bar",data:r,itemStyle:{color:"#3b82f6",borderRadius:[0,4,4,0]},barGap:"20%",barCategoryGap:"40%"},{name:g.value.name,type:"bar",data:p,itemStyle:{color:"#ec4899",borderRadius:[0,4,4,0]}}]},{notMerge:!0})}function I(){u?.resize()}return Z(()=>C.members,()=>D(),{deep:!0}),Z(c,()=>{u?.dispose(),j()}),ue(()=>{j(),window.addEventListener("resize",I)}),de(()=>{window.removeEventListener("resize",I),u?.dispose()}),(R,v)=>{const A=X;return n(),V(t(fe),null,{default:H(()=>[e("div",xs,[e("div",vs,[w(A,{name:"i-heroicons-chart-bar",class:"h-4 w-4 text-violet-500"}),e("span",bs,a(t(s)("quotes.languagePreference.pos.title")),1)]),e("div",hs,[e("div",ys,[e("div",{ref_key:"chartRef",ref:_,style:{width:"100%",height:"220px"}},null,512)]),o.value&&g.value?(n(),f("div",_s,[(n(!0),f(E,null,Y([o.value,g.value],r=>(n(),f("div",{key:r.memberId,class:"flex min-w-0 items-center gap-3 px-1 py-3"},[w(A,{name:P(r).icon,class:z(["h-5 w-5 shrink-0",P(r).colorClass])},null,8,["name","class"]),e("div",ks,[e("div",ws,a(r.name),1),e("div",{class:z(["truncate text-sm font-bold",P(r).colorClass])},a(P(r).label),3)])]))),128))])):L("",!0)])])]),_:1})}}}),$s={class:"px-5 py-4 sm:px-6"},Ss={class:"mb-4 flex items-center gap-2"},Ps={class:"text-[15px] font-black tracking-tight text-gray-900 dark:text-white"},Is={key:0,class:"grid grid-cols-1 gap-6 md:grid-cols-2"},Ms={class:"mb-2 flex items-center justify-between"},Ts={key:1,class:"flex h-[200px] items-center justify-center text-sm text-gray-400"},qs=Q({__name:"ModalParticleSection",props:{members:{}},setup(y){me([Ie,Me,ge,pe]);const{t:s}=J(),c=ce(),C=y,o=q(()=>C.members[0]),g=q(()=>C.members[1]),P=new Set(["呀","哒","滴","啦","哇","耶"]),_=new Set(["呢","吗","嘛"]),u=new Set(["吧","喔","噢","嘛"]),j=new Set(["嗯","哦","额","呃"]);function D($){const d={label:s("quotes.languagePreference.modal.toneMixed"),colorClass:"bg-gray-50 text-gray-600 ring-1 ring-gray-900/5 dark:bg-gray-800/50 dark:text-gray-400 dark:ring-white/10"};if($.modalParticles.length===0)return d;let i=0,b=0,x=0,M=0,B=0;for(const W of $.modalParticles)B+=W.count,P.has(W.word)&&(i+=W.count),_.has(W.word)&&(b+=W.count),u.has(W.word)&&(x+=W.count),j.has(W.word)&&(M+=W.count);if(B===0)return d;const N=Math.max(i,b,x,M);return N===i&&i/B>.3?{label:s("quotes.languagePreference.modal.toneSoft"),colorClass:"bg-pink-50 text-pink-600 ring-1 ring-pink-500/20 dark:bg-pink-500/10 dark:text-pink-400 dark:ring-pink-500/30"}:N===b&&b/B>.3?{label:s("quotes.languagePreference.modal.toneCurious"),colorClass:"bg-violet-50 text-violet-600 ring-1 ring-violet-500/20 dark:bg-violet-500/10 dark:text-violet-400 dark:ring-violet-500/30"}:N===x&&x/B>.3?{label:s("quotes.languagePreference.modal.toneCasual"),colorClass:"bg-emerald-50 text-emerald-600 ring-1 ring-emerald-500/20 dark:bg-emerald-500/10 dark:text-emerald-400 dark:ring-emerald-500/30"}:N===M&&M/B>.3?{label:s("quotes.languagePreference.modal.toneCalm"),colorClass:"bg-blue-50 text-blue-600 ring-1 ring-blue-500/20 dark:bg-blue-500/10 dark:text-blue-400 dark:ring-blue-500/30"}:d}const I=U(null),R=U(null);let v=null,A=null;function r($,d){const i=$.modalParticles.slice(0,8),b=c.value?"#9ca3af":"#6b7280";return{backgroundColor:"transparent",tooltip:{trigger:"axis",axisPointer:{type:"shadow"}},grid:{left:40,right:20,top:4,bottom:4},xAxis:{type:"value",show:!1},yAxis:{type:"category",data:i.map(x=>x.word).reverse(),axisLine:{show:!1},axisTick:{show:!1},axisLabel:{fontSize:12,color:b},inverse:!1},series:[{type:"bar",data:i.map(x=>x.count).reverse(),itemStyle:{color:d,borderRadius:[0,4,4,0]},barWidth:"50%",label:{show:!0,position:"right",fontSize:10,color:b,formatter:"{c}"}}]}}function p(){I.value&&o.value&&(v=se(I.value,void 0,{renderer:"canvas"}),v.setOption(r(o.value,"#3b82f6"),{notMerge:!0})),R.value&&g.value&&(A=se(R.value,void 0,{renderer:"canvas"}),A.setOption(r(g.value,"#ec4899"),{notMerge:!0}))}function k(){v?.resize(),A?.resize()}return Z(()=>C.members,()=>{v&&o.value&&v.setOption(r(o.value,"#3b82f6"),{notMerge:!0}),A&&g.value&&A.setOption(r(g.value,"#ec4899"),{notMerge:!0})},{deep:!0}),Z(c,()=>{v?.dispose(),A?.dispose(),p()}),ue(()=>{p(),window.addEventListener("resize",k)}),de(()=>{window.removeEventListener("resize",k),v?.dispose(),A?.dispose()}),($,d)=>{const i=X;return n(),V(t(fe),null,{default:H(()=>[e("div",$s,[e("div",Ss,[w(i,{name:"i-heroicons-chat-bubble-oval-left-ellipsis",class:"h-4 w-4 text-pink-500"}),e("span",Ps,a(t(s)("quotes.languagePreference.modal.title")),1)]),o.value&&g.value?(n(),f("div",Is,[(n(!0),f(E,null,Y([o.value,g.value],(b,x)=>(n(),f("div",{key:b.memberId},[e("div",Ms,[e("span",{class:z(["text-sm font-semibold",x===0?"text-blue-600 dark:text-blue-400":"text-pink-600 dark:text-pink-400"])},a(b.name),3),e("span",{class:z(["rounded-full px-2 py-0.5 text-[10px] font-bold",D(b).colorClass])},a(D(b).label),3)]),b.modalParticles.length>0?(n(),f("div",{key:0,ref_for:!0,ref:M=>{x===0?I.value=M:R.value=M},style:{width:"100%",height:"200px"}},null,512)):(n(),f("div",Ts,a(t(s)("quotes.languagePreference.modal.empty")),1))]))),128))])):L("",!0)])]),_:1})}}}),Rs={class:"px-5 py-4 sm:px-6"},As={class:"mb-4 flex items-center gap-2"},js={class:"text-[15px] font-black tracking-tight text-gray-900 dark:text-white"},Ls={key:0,class:"grid grid-cols-1 gap-6 md:grid-cols-2"},Vs={class:"mb-2 flex items-center gap-2"},Ds={key:1,class:"flex h-[200px] items-center justify-center text-sm text-gray-400"},zs=Q({__name:"PunctuationSection",props:{members:{}},setup(y){me([mt,ge,pe]);const{t:s}=J(),c=ce(),C=y,o=q(()=>C.members[0]),g=q(()=>C.members[1]),P=["#6366f1","#ec4899","#f97316","#22c55e","#06b6d4","#8b5cf6"];function _(p){const $=[["ellipsis",p.ellipsis],["exclamation",p.exclamation],["question",p.question],["tilde",p.tilde],["noPunct",p.noPunct],["period",p.period]].reduce((i,b)=>i[1]>=b[1]?i:b);return{ellipsis:{label:s("quotes.languagePreference.punctuation.personalityDeep"),colorClass:"bg-indigo-50 text-indigo-600 ring-1 ring-indigo-500/20 dark:bg-indigo-500/10 dark:text-indigo-400 dark:ring-indigo-500/30"},exclamation:{label:s("quotes.languagePreference.punctuation.personalityPassionate"),colorClass:"bg-rose-50 text-rose-600 ring-1 ring-rose-500/20 dark:bg-rose-500/10 dark:text-rose-400 dark:ring-rose-500/30"},question:{label:s("quotes.languagePreference.punctuation.personalityCurious"),colorClass:"bg-amber-50 text-amber-600 ring-1 ring-amber-500/20 dark:bg-amber-500/10 dark:text-amber-400 dark:ring-amber-500/30"},tilde:{label:s("quotes.languagePreference.punctuation.personalityCheerful"),colorClass:"bg-pink-50 text-pink-600 ring-1 ring-pink-500/20 dark:bg-pink-500/10 dark:text-pink-400 dark:ring-pink-500/30"},noPunct:{label:s("quotes.languagePreference.punctuation.personalityFreeflow"),colorClass:"bg-emerald-50 text-emerald-600 ring-1 ring-emerald-500/20 dark:bg-emerald-500/10 dark:text-emerald-400 dark:ring-emerald-500/30"},period:{label:s("quotes.languagePreference.punctuation.personalityPrecise"),colorClass:"bg-blue-50 text-blue-600 ring-1 ring-blue-500/20 dark:bg-blue-500/10 dark:text-blue-400 dark:ring-blue-500/30"}}[$[0]]||{label:"-",colorClass:"bg-gray-50 text-gray-600 ring-1 ring-gray-900/5 dark:bg-gray-800/50 dark:text-gray-400 dark:ring-white/10"}}function u(p){return[{name:"...",value:p.ellipsis},{name:"!",value:p.exclamation},{name:"?",value:p.question},{name:"~",value:p.tilde},{name:"。",value:p.period},{name:s("quotes.languagePreference.punctuation.none"),value:p.noPunct}].filter(k=>k.value>0)}const j=U(null),D=U(null);let I=null,R=null;function v(p){return{backgroundColor:"transparent",tooltip:{trigger:"item",formatter:"{b}: {c} ({d}%)"},series:[{type:"pie",radius:["45%","75%"],center:["50%","50%"],avoidLabelOverlap:!1,padAngle:2,itemStyle:{borderRadius:4},label:{show:!0,fontSize:10,color:c.value?"#9ca3af":"#6b7280",formatter:"{b}"},emphasis:{label:{show:!0,fontWeight:"bold"},scaleSize:4},data:p.map((k,$)=>({...k,itemStyle:{color:P[$%P.length]}}))}]}}function A(){j.value&&o.value&&(I=se(j.value,void 0,{renderer:"canvas"}),I.setOption(v(u(o.value.punctuation)),{notMerge:!0})),D.value&&g.value&&(R=se(D.value,void 0,{renderer:"canvas"}),R.setOption(v(u(g.value.punctuation)),{notMerge:!0}))}function r(){I?.resize(),R?.resize()}return Z(()=>C.members,()=>{I&&o.value&&I.setOption(v(u(o.value.punctuation)),{notMerge:!0}),R&&g.value&&R.setOption(v(u(g.value.punctuation)),{notMerge:!0})},{deep:!0}),Z(c,()=>{I?.dispose(),R?.dispose(),A()}),ue(()=>{A(),window.addEventListener("resize",r)}),de(()=>{window.removeEventListener("resize",r),I?.dispose(),R?.dispose()}),(p,k)=>{const $=X;return n(),V(t(fe),null,{default:H(()=>[e("div",Rs,[e("div",As,[w($,{name:"i-heroicons-ellipsis-horizontal",class:"h-4 w-4 text-orange-500"}),e("span",js,a(t(s)("quotes.languagePreference.punctuation.title")),1)]),o.value&&g.value?(n(),f("div",Ls,[(n(!0),f(E,null,Y([o.value,g.value],(d,i)=>(n(),f("div",{key:d.memberId,class:"flex flex-col items-center"},[e("div",Vs,[e("span",{class:z(["text-sm font-semibold",i===0?"text-blue-600 dark:text-blue-400":"text-pink-600 dark:text-pink-400"])},a(d.name),3),e("span",{class:z(["rounded-full px-2 py-0.5 text-[10px] font-bold",_(d.punctuation).colorClass])},a(_(d.punctuation).label),3)]),d.punctuation.total>0?(n(),f("div",{key:0,ref_for:!0,ref:b=>{i===0?j.value=b:D.value=b},style:{width:"100%",height:"200px"}},null,512)):(n(),f("div",Ds,a(t(s)("quotes.languagePreference.punctuation.empty")),1))]))),128))])):L("",!0)])]),_:1})}}}),Bs={class:"main-content mx-auto max-w-[920px] space-y-6 p-6"},Os=Q({__name:"LanguagePreferenceTab",props:{sessionId:{},timeFilter:{}},setup(y){const{t:s,locale:c}=J(),C=ke(),o=y,g=U(null),P=U(!1),_=q(()=>g.value&&g.value.members.length>=2);async function u(){if(o.sessionId){P.value=!0;try{g.value=await we().getLanguagePreferenceAnalysis(o.sessionId,c.value,o.timeFilter)}catch(D){console.error("[LanguagePreferenceTab] Failed to load:",D)}finally{P.value=!1}}}function j(D){C.openChatRecordDrawer({keywords:[D]})}return Z(()=>[o.sessionId,o.timeFilter],()=>u(),{immediate:!0,deep:!0}),(D,I)=>(n(),f("div",Bs,[P.value?(n(),V(t(re),{key:0,text:t(s)("quotes.languagePreference.loading")},null,8,["text"])):_.value?g.value?(n(),f(E,{key:2},[w(Zt,{data:g.value,onWordClick:j},null,8,["data"]),w(fs,{members:g.value.members,onWordClick:j},null,8,["members"]),w(Cs,{members:g.value.members},null,8,["members"]),w(qs,{members:g.value.members},null,8,["members"]),w(zs,{members:g.value.members},null,8,["members"])],64)):L("",!0):(n(),V(t(Pe),{key:1,text:t(s)("quotes.languagePreference.empty")},null,8,["text"]))]))}}),Ns={class:"main-content mx-auto max-w-[920px] space-y-6 p-6"},Us={class:"grid grid-cols-1 gap-6 lg:grid-cols-2"},Fs={class:"p-5"},Es={class:"p-5"},Ws=Q({__name:"OverviewTab",props:{session:{},memberActivity:{},messageTypes:{},hourlyActivity:{},dailyActivity:{},timeRange:{},filteredMessageCount:{},filteredMemberCount:{},timeFilter:{}},setup(y){const{t:s}=J(),c=y,{dailyChartData:C}=He(()=>c.dailyActivity),o=q(()=>({labels:c.messageTypes.map(_=>rt(_.type,s)),values:c.messageTypes.map(_=>_.count)})),g=q(()=>{if(c.memberActivity.length<2)return null;const u=[...c.memberActivity].sort((D,I)=>I.messageCount-D.messageCount).slice(0,2),j=u[0].messageCount+u[1].messageCount;return{member1:{name:u[0].name,avatar:u[0].avatar,count:u[0].messageCount,percentage:j>0?Math.round(u[0].messageCount/j*100):0},member2:{name:u[1].name,avatar:u[1].avatar,count:u[1].messageCount,percentage:j>0?Math.round(u[1].messageCount/j*100):0},total:j}}),P=q(()=>g.value?{labels:[g.value.member1.name,g.value.member2.name],values:[g.value.member1.count,g.value.member2.count]}:{labels:[],values:[]});return(_,u)=>(n(),f("div",Ns,[w(We,{session:y.session,"daily-activity":y.dailyActivity,"message-types":y.messageTypes,"hourly-activity":y.hourlyActivity,"time-range":y.timeRange,"filtered-message-count":y.filteredMessageCount,"filtered-member-count":y.filteredMemberCount,"time-filter":y.timeFilter},null,8,["session","daily-activity","message-types","hourly-activity","time-range","filtered-message-count","filtered-member-count","time-filter"]),e("div",Us,[w(t(he),{title:t(s)("analysis.overview.messageTypeDistribution"),"show-divider":!1},{default:H(()=>[e("div",Fs,[w(t(_e),{data:o.value,height:280},null,8,["data"])])]),_:1},8,["title"]),g.value?(n(),V(t(he),{key:0,title:t(s)("analysis.overview.memberComparison"),"show-divider":!1},{default:H(()=>[e("div",Es,[w(t(_e),{data:P.value,height:280},null,8,["data"])])]),_:1},8,["title"])):L("",!0)]),w(Ke,{"daily-activity":y.dailyActivity,"daily-chart-data":t(C)},null,8,["daily-activity","daily-chart-data"])]))}}),Ks={class:"flex min-w-0 flex-col p-4"},Hs={class:"mb-2 min-h-8"},Gs={class:"flex items-center justify-between gap-2"},Ys={class:"flex min-w-0 items-center gap-2"},Qs={class:"truncate text-xs font-bold tracking-wide text-gray-900 dark:text-white"},Zs={key:0,class:"shrink-0"},Js={class:"flex h-full flex-col"},Xs={class:"grid grid-cols-2 gap-2"},ea={class:"flex min-w-0 flex-col items-center px-1 py-1.5 text-center"},ta=["title"],sa={class:"flex min-w-0 flex-col items-center px-1 py-1.5 text-center"},aa=["title"],na={class:"mt-auto pt-3 min-h-8 text-[10px] leading-relaxed text-gray-500 dark:text-gray-400 sm:min-h-6"},oe=Q({__name:"RelationshipMetricCard",props:{title:{},iconName:{},iconBgClass:{},iconColorClass:{},leftName:{default:"—"},leftValue:{default:"--"},rightName:{default:"—"},rightValue:{default:"--"},valueClass:{default:"text-gray-700 dark:text-gray-200"},description:{default:""}},setup(y){const s=Ue(),c=q(()=>!!s["header-extra"]);return(C,o)=>{const g=X;return n(),f("div",Ks,[e("div",Hs,[e("div",Gs,[e("div",Ys,[e("div",{class:z(["flex h-6 w-6 shrink-0 items-center justify-center rounded-full",y.iconBgClass])},[w(g,{name:y.iconName,class:z(["h-3.5 w-3.5",y.iconColorClass])},null,8,["name","class"])],2),e("span",Qs,a(y.title),1)]),c.value?(n(),f("div",Zs,[Fe(C.$slots,"header-extra")])):L("",!0)])]),e("div",Js,[e("div",Xs,[e("div",ea,[e("div",{class:"w-full truncate text-[10px] font-semibold tracking-wide text-gray-500 dark:text-gray-400",title:y.leftName},a(y.leftName),9,ta),e("div",{class:z(["mt-2 font-black font-mono leading-none tabular-nums",y.valueClass])},a(y.leftValue),3)]),e("div",sa,[e("div",{class:"w-full truncate text-[10px] font-semibold tracking-wide text-gray-500 dark:text-gray-400",title:y.rightName},a(y.rightName),9,aa),e("div",{class:z(["mt-2 font-black font-mono leading-none tabular-nums",y.valueClass])},a(y.rightValue),3)])]),e("p",na,a(y.description),1)])])}}}),ia={key:1,class:"main-content mx-auto max-w-[920px] space-y-6 p-6"},la={class:"space-y-6"},oa={class:"relative z-10 flex flex-col items-center justify-center gap-10 px-6 pt-10 pb-6 sm:px-8 lg:flex-row lg:items-start lg:justify-between lg:gap-8 xl:gap-12"},ra={class:"flex min-w-0 max-w-full flex-1 flex-col items-center justify-center lg:items-start"},ca={class:"flex flex-col text-[15px] leading-relaxed text-gray-600 dark:text-gray-300"},ua={class:"mb-2 text-sm font-medium tracking-wide text-gray-500 dark:text-gray-400"},da={class:"mb-4 flex min-w-0 flex-wrap items-baseline gap-2"},ma={class:"text-xl font-medium text-gray-700 dark:text-gray-300"},ga={class:"font-black text-5xl tracking-tight text-gray-900 dark:text-white"},pa={class:"text-xl font-medium text-gray-700 dark:text-gray-300"},fa={class:"flex min-w-0 max-w-full flex-wrap items-baseline gap-x-1.5 gap-y-1"},xa={class:"text-base font-medium text-gray-600 dark:text-gray-300"},va={class:"font-black text-3xl text-pink-500 dark:text-pink-400"},ba={class:"text-base font-medium text-gray-600 dark:text-gray-300"},ha={class:"max-w-full break-all text-xl font-bold leading-snug text-gray-900 dark:text-white"},ya={class:"text-base font-medium text-gray-600 dark:text-gray-300"},_a={class:"mt-8 flex w-full max-w-[320px] items-center justify-between gap-4"},ka={class:"flex flex-1 flex-col items-center overflow-hidden"},wa=["title"],Ca={class:"mt-1 text-2xl font-black text-blue-500 dark:text-blue-400"},$a={class:"mt-0.5 text-[10px] font-medium text-gray-400"},Sa={class:"flex flex-1 flex-col items-center overflow-hidden"},Pa=["title"],Ia={class:"mt-1 text-2xl font-black text-pink-500 dark:text-pink-400"},Ma={class:"mt-0.5 text-[10px] font-medium text-gray-400"},Ta={key:0,class:"flex min-w-0 w-full max-w-[400px] flex-1 flex-col justify-center lg:max-w-[460px]"},qa={class:"mb-2 flex items-center justify-between px-1"},Ra={class:"text-sm font-bold text-gray-900 dark:text-white"},Aa={class:"text-[10px] font-medium text-gray-500 dark:text-gray-400"},ja={class:"w-full"},La={class:"h-[200px] w-full"},Va={class:"relative z-10 grid grid-cols-2 gap-3 p-4 pt-2 sm:p-6 sm:pt-2 lg:grid-cols-4"},Da={class:"relative z-10 flex items-center justify-between px-6 pb-4 opacity-40 mix-blend-luminosity dark:opacity-30 sm:px-8 sm:pb-5"},za={class:"flex items-center gap-1.5"},Ba={class:"text-[9px] font-medium uppercase tracking-widest"},Oa={class:"p-6 sm:p-8"},Na={class:"relative ml-4 border-l-2 border-gray-100/80 py-4 dark:border-gray-800/80"},Ua={class:"absolute -left-[11px] top-1 flex h-5 w-5 items-center justify-center rounded-full bg-white ring-4 ring-white dark:bg-page-dark dark:ring-page-dark"},Fa={class:"group relative overflow-hidden border-b border-gray-200/60 dark:border-white/5"},Ea={key:0,class:"pointer-events-none absolute inset-0 overflow-hidden opacity-30 transition-opacity group-hover:opacity-50"},Wa={class:"relative z-10 p-4 sm:p-5"},Ka={class:"flex items-center gap-3"},Ha={class:"text-xl font-bold tracking-tight text-gray-900 dark:text-white"},Ga={key:0,class:"flex items-baseline gap-1.5"},Ya={class:"text-xs font-medium text-gray-500 dark:text-gray-400"},Qa={class:"text-2xl font-black leading-none text-gray-900 dark:text-white"},Za={class:"text-xs font-medium text-gray-500 dark:text-gray-400"},Ja={key:0,class:"grid grid-cols-2 gap-3 lg:grid-cols-4"},Xa={class:"flex min-w-0 flex-col p-3"},en={class:"mb-2.5 flex items-center gap-1.5"},tn={class:"text-xs font-bold text-gray-700 dark:text-gray-300"},sn={class:"flex flex-col gap-1.5"},an={class:"flex items-center justify-between text-xs"},nn={class:"w-12 truncate font-medium text-gray-500 dark:text-gray-400"},ln={class:"font-black tabular-nums text-blue-600 dark:text-blue-400"},on={class:"flex items-center justify-between text-xs"},rn={class:"w-12 truncate font-medium text-gray-500 dark:text-gray-400"},cn={class:"font-black tabular-nums text-pink-500 dark:text-pink-400"},un={class:"mt-3 flex h-1 w-full overflow-hidden rounded-full bg-gray-200 dark:bg-gray-700"},dn={class:"flex min-w-0 flex-col p-3"},mn={class:"mb-2.5 flex items-center gap-1.5"},gn={class:"text-xs font-bold text-gray-700 dark:text-gray-300"},pn={class:"flex flex-col gap-1.5"},fn={class:"flex items-center justify-between text-xs"},xn={class:"w-12 truncate font-medium text-gray-500 dark:text-gray-400"},vn={class:"font-black tabular-nums text-indigo-600 dark:text-indigo-400"},bn={class:"flex items-center justify-between text-xs"},hn={class:"w-12 truncate font-medium text-gray-500 dark:text-gray-400"},yn={class:"font-black tabular-nums text-pink-500 dark:text-pink-400"},_n={class:"mt-3 flex h-1 w-full overflow-hidden rounded-full bg-gray-200 dark:bg-gray-700"},kn={class:"flex min-w-0 flex-col p-3"},wn={class:"mb-2.5 flex items-center gap-1.5"},Cn={class:"text-xs font-bold text-gray-700 dark:text-gray-300"},$n={class:"flex flex-col gap-1.5"},Sn={class:"flex items-center justify-between text-xs"},Pn={class:"w-12 truncate font-medium text-gray-500 dark:text-gray-400"},In={class:"font-black tabular-nums text-amber-600 dark:text-amber-500"},Mn={class:"flex items-center justify-between text-xs"},Tn={class:"w-12 truncate font-medium text-gray-500 dark:text-gray-400"},qn={class:"font-black tabular-nums text-amber-600 dark:text-amber-500"},Rn={class:"flex min-w-0 flex-col p-3"},An={class:"mb-2.5 flex items-center gap-1.5"},jn={class:"text-xs font-bold text-gray-700 dark:text-gray-300"},Ln={class:"flex flex-col gap-1.5"},Vn={class:"flex items-center justify-between text-xs"},Dn={class:"w-12 truncate font-medium text-gray-500 dark:text-gray-400"},zn={class:"font-black tabular-nums text-purple-600 dark:text-purple-400"},Bn={class:"flex items-center justify-between text-xs"},On={class:"w-12 truncate font-medium text-gray-500 dark:text-gray-400"},Nn={class:"font-black tabular-nums text-purple-600 dark:text-purple-400"},Un={key:1,class:"flex h-24 items-center justify-center text-sm font-medium text-gray-400 dark:text-gray-500"},Fn=Q({__name:"RelationshipView",props:{sessionId:{},timeFilter:{}},setup(y){const{t:s,locale:c}=J(),C=y,o=U(null),g=U(!1),P=U(!1),_=U(300);async function u(m){if(!C.sessionId)return;const l=m?.localOnly==="perseverance";l?P.value=!0:g.value=!0;try{o.value=await we().getRelationshipStats(C.sessionId,C.timeFilter,{perseveranceThreshold:_.value})}catch(T){console.error("Failed to load relationship stats:",T)}finally{l?P.value=!1:g.value=!1}}Z(()=>[C.sessionId,C.timeFilter],()=>u(),{immediate:!0,deep:!0});const j=[{label:"1m",value:60},{label:"3m",value:180},{label:"5m",value:300},{label:"10m",value:600},{label:"30m",value:1800}];function D(m){_.value!==m&&(_.value=m,u({localOnly:"perseverance"}))}const I=q({get:()=>_.value,set:m=>D(m)});function R(m){return s("views.relationship.perseverance.thresholdMinutes",{n:Math.round(m/60)})}const v=q(()=>s("views.relationship.perseverance.hintWithThreshold",{threshold:R(_.value)})),A=q(()=>o.value?.hasSessionIndex&&o.value.totalSessions>0),r=q(()=>o.value?.members[0]),p=q(()=>o.value?.members[1]),k=q(()=>{if(!r.value||!o.value)return 50;const m=(r.value.totalInitiateCount??0)+(p.value?.totalInitiateCount??0);return m===0?50:Math.round(r.value.totalInitiateCount/m*100)}),$=q(()=>{if(!o.value||o.value.months.length===0)return"";const m=[...o.value.months].sort((O,S)=>O.month.localeCompare(S.month)),l=m[0].month.replace("-","/"),T=m[m.length-1].month.replace("-","/");return l===T?l:`${l} – ${T}`}),d=q(()=>c.value.startsWith("en")?"max-w-[420px]":"max-w-[320px]");function i(m){return m<=0?0:m>=100?100:Math.max(5,Math.min(95,m))}const b=q(()=>{if(!o.value||o.value.months.length===0||!r.value)return{};const m=[...o.value.months].sort((F,K)=>F.month.localeCompare(K.month)),l=m.map(F=>W(F.month)),T=r.value.name,O=p.value?.name??"—",S=m.map(F=>{const K=F.members.find(le=>le.memberId===r.value.memberId);return!K||F.totalSessions===0?50:Math.round(K.initiateCount/F.totalSessions*100)});return{tooltip:{trigger:"axis",formatter(F){const K=F[0],le=K.value;return`${K.axisValue}<br/>${T}: ${le}%<br/>${O}: ${100-le}%`}},grid:{left:40,right:20,top:20,bottom:30},xAxis:{type:"category",data:l,axisLabel:{fontSize:11}},yAxis:{type:"value",min:0,max:100,axisLabel:{formatter:"{value}%",fontSize:11},splitLine:{lineStyle:{type:"dashed"}}},series:[{type:"line",data:S,smooth:!0,symbol:"circle",symbolSize:6,lineStyle:{width:2,color:"#3b82f6"},itemStyle:{color:"#3b82f6"},areaStyle:{color:{type:"linear",x:0,y:0,x2:0,y2:1,colorStops:[{offset:0,color:"rgba(59, 130, 246, 0.15)"},{offset:1,color:"rgba(59, 130, 246, 0)"}]}},markLine:{silent:!0,data:[{yAxis:50,lineStyle:{type:"dashed",color:"#9ca3af"}}],label:{show:!1},symbol:"none"}}]}});function x(m){if(m.totalSessions===0)return s("views.relationship.labels.peacefulSilence");if(m.totalSessions<=2)return s("views.relationship.labels.fleetingThoughts");const T=[...m.members].sort((S,F)=>F.initiateCount-S.initiateCount)[0];if(!T||m.totalSessions===0)return"";const O=Math.round(T.initiateCount/m.totalSessions*100);return O>=40&&O<=60?s("views.relationship.labels.wellMatched"):O>=80?s("views.relationship.labels.monologue",{name:T.name}):s("views.relationship.labels.missingYou",{name:T.name})}function M(m){if(!r.value||m.totalSessions===0)return 50;const l=m.members.find(T=>T.memberId===r.value.memberId);return Math.round((l?.initiateCount??0)/m.totalSessions*100)}function B(m){if(!r.value)return 50;const T=m.members.find(S=>S.memberId===r.value.memberId)?.closeCount??0,O=m.members.reduce((S,F)=>S+(F.closeCount??0),0);return O===0?50:Math.round(T/O*100)}function N(m){const[l,T]=m.split("-");return s("views.relationship.monthFormat",{year:l,month:Number.parseInt(T,10)})}function W(m){const l=m.split("-");return s("views.relationship.monthShortFormat",{month:Number.parseInt(l[1],10)})}function ee(m){return!m||!o.value?.iceBreakers?.length?0:o.value.iceBreakers.filter(l=>l.memberId===m).reduce((l,T)=>l+T.count,0)}function xe(m){if(!m||!o.value?.responseLatency?.length)return null;const l=o.value.responseLatency.find(T=>T.memberId===m);return l?l.avgResponseTime:null}function ae(m){return!m||!o.value?.perseverance?.length?0:o.value.perseverance.find(T=>T.memberId===m)?.totalDoubleTexts??0}function ie(m){const l=xe(m);return l!=null?te(l):"--"}function ve(m){return o.value?.monthlyResponseLatency?.find(l=>l.month===m)?.members??[]}function be(m){return o.value?.monthlyPerseverance?.find(l=>l.month===m)?.members??[]}function G(m,l){if(!l)return"--";const T=ve(m).find(O=>O.memberId===l);return T?te(T.avgResponseTime):"--"}function h(m,l){if(!l)return"--";const T=be(m).find(O=>O.memberId===l);return T?T.doubleTextCount.toString():"--"}function te(m){const l=Math.max(0,Math.round(m));if(l<60)return s("views.relationship.responseLatency.seconds",{n:l});if(l<3600){const S=Math.floor(l/60),F=l%60;return s("views.relationship.responseLatency.minutesSeconds",{m:S,s:F})}const T=Math.floor(l/3600),O=Math.floor(l%3600/60);return O===0?s("views.relationship.responseLatency.hours",{n:T}):s("views.relationship.responseLatency.hoursMinutes",{h:T,m:O})}return(m,l)=>{const T=De,O=X;return n(),f("div",{class:z(g.value?"h-full":"")},[g.value?(n(),V(t(re),{key:0,variant:"page",text:t(s)("common.loading")},null,8,["text"])):(n(),f("div",ia,[o.value&&!A.value?(n(),V(t(Pe),{key:0,icon:"i-heroicons-heart",title:t(s)("views.relationship.empty.title"),description:t(s)("views.relationship.empty.description")},null,8,["title","description"])):o.value&&A.value?(n(),f(E,{key:1},[e("div",la,[w(t(Se),{id:"shareable-poster"},{default:H(()=>[e("div",oa,[e("div",ra,[e("div",{class:z(["flex w-fit min-w-0 flex-col items-start text-left",d.value])},[e("div",ca,[e("p",ua,a($.value),1),e("div",da,[e("span",ma,a(t(s)("views.relationship.hero.totalSessionsPrefix")),1),e("span",ga,a(o.value.totalSessions),1),e("span",pa,a(t(s)("views.relationship.hero.totalSessionsSuffix")),1)]),e("div",fa,[e("span",xa,a(t(s)("views.relationship.hero.initiativePrefix")),1),e("span",va,a(k.value>=50?k.value:100-k.value)+"% ",1),e("span",ba,a(t(s)("views.relationship.hero.initiativeByPrefix")),1),e("span",ha,a(k.value>=50?r.value?.name:p.value?.name),1),e("span",ya,a(t(s)("views.relationship.hero.initiativeBySuffix")),1)])]),e("div",_a,[e("div",ka,[e("div",{class:"w-full truncate text-center text-xs font-bold text-gray-500 dark:text-gray-400",title:r.value?.name},a(r.value?.name),9,wa),e("div",Ca,a(r.value?.totalInitiateCount),1),e("div",$a,a(t(s)("views.relationship.hero.initiateTimes")),1)]),l[1]||(l[1]=e("div",{class:"flex h-6 w-6 shrink-0 items-center justify-center rounded-full bg-gray-100 font-black text-[10px] italic text-gray-400 shadow-inner dark:bg-page-dark/80 dark:text-gray-500"}," VS ",-1)),e("div",Sa,[e("div",{class:"w-full truncate text-center text-xs font-bold text-gray-500 dark:text-gray-400",title:p.value?.name},a(p.value?.name),9,Pa),e("div",Ia,a(p.value?.totalInitiateCount),1),e("div",Ma,a(t(s)("views.relationship.hero.initiateTimes")),1)])])],2)]),o.value.months.length>=2?(n(),f("div",Ta,[e("div",qa,[e("span",Ra,a(t(s)("views.relationship.trend.title")),1),e("span",Aa,a(t(s)("views.relationship.trend.hint",{name:r.value?.name??""})),1)]),e("div",ja,[e("div",La,[w(t(ct),{option:b.value,height:200},null,8,["option"])])])])):L("",!0)]),e("div",Va,[w(oe,{title:t(s)("views.relationship.closerTitle"),"icon-name":"i-heroicons-hand-raised-solid","icon-bg-class":"bg-blue-100 dark:bg-blue-500/20","icon-color-class":"text-blue-600 dark:text-blue-400","left-name":r.value?.name,"left-value":r.value?.totalCloseCount??0,"right-name":p.value?.name,"right-value":p.value?.totalCloseCount??0,"value-class":"text-lg text-blue-600 dark:text-blue-400",description:t(s)("views.relationship.closerHint")},null,8,["title","left-name","left-value","right-name","right-value","description"]),w(oe,{title:t(s)("views.relationship.iceBreaker.title"),"icon-name":"i-heroicons-fire-solid","icon-bg-class":"bg-pink-100 dark:bg-pink-500/20","icon-color-class":"text-pink-600 dark:text-pink-400","left-name":r.value?.name,"left-value":ee(r.value?.memberId),"right-name":p.value?.name,"right-value":ee(p.value?.memberId),"value-class":"text-lg text-pink-600 dark:text-pink-400",description:t(s)("views.relationship.iceBreaker.hint")},null,8,["title","left-name","left-value","right-name","right-value","description"]),w(oe,{title:t(s)("views.relationship.responseLatency.title"),"icon-name":"i-heroicons-clock-solid","icon-bg-class":"bg-amber-100 dark:bg-amber-500/20","icon-color-class":"text-amber-600 dark:text-amber-400","left-name":r.value?.name,"left-value":ie(r.value?.memberId),"right-name":p.value?.name,"right-value":ie(p.value?.memberId),"value-class":"text-base text-amber-600 dark:text-amber-400",description:t(s)("views.relationship.responseLatency.hint")},null,8,["title","left-name","left-value","right-name","right-value","description"]),w(oe,{title:t(s)("views.relationship.perseverance.title"),"icon-name":"i-heroicons-arrow-path-solid","icon-bg-class":"bg-purple-100 dark:bg-purple-500/20","icon-color-class":"text-purple-600 dark:text-purple-400","left-name":r.value?.name,"left-value":ae(r.value?.memberId),"right-name":p.value?.name,"right-value":ae(p.value?.memberId),"value-class":"text-lg text-purple-600 dark:text-purple-400",description:v.value},{"header-extra":H(()=>[w(T,{modelValue:I.value,"onUpdate:modelValue":l[0]||(l[0]=S=>I.value=S),items:j,"value-key":"value",size:"xs",class:"relative z-[120] w-16",ui:{content:"z-[121]"},disabled:P.value},null,8,["modelValue","disabled"])]),_:1},8,["title","left-name","left-value","right-name","right-value","description"])]),e("div",Da,[e("div",za,[w(O,{name:"i-heroicons-chat-bubble-left-right-solid",class:"h-3.5 w-3.5"}),l[2]||(l[2]=e("span",{class:"text-[10px] font-bold uppercase tracking-wider"},"ChatLab",-1))]),e("span",Ba,a(t(s)("views.relationship.watermarkReport")),1)])]),_:1})]),w(t(he),{title:t(s)("views.relationship.monthly.title"),"show-divider":!1},{default:H(()=>[e("div",Oa,[e("div",Na,[(n(!0),f(E,null,Y(o.value.months,(S,F)=>(n(),f("div",{key:S.month,class:"relative pb-12 pl-10 last:pb-0"},[e("div",Ua,[e("div",{class:z(["h-2.5 w-2.5 rounded-full shadow-sm",S.totalSessions>0?F===0?"bg-pink-500 animate-pulse":"bg-pink-400":"bg-gray-300 dark:bg-gray-600"])},null,2)]),e("div",Fa,[S.totalSessions>0?(n(),f("div",Ea,[...l[3]||(l[3]=[e("div",{class:"absolute -left-[10%] top-[20%] h-[60%] w-[40%] rounded-full bg-blue-400/10 blur-[40px] dark:bg-blue-500/20"},null,-1),e("div",{class:"absolute -right-[10%] bottom-[20%] h-[60%] w-[40%] rounded-full bg-pink-400/10 blur-[40px] dark:bg-pink-500/20"},null,-1)])])):L("",!0),e("div",Wa,[e("div",{class:z(["flex items-center justify-between",S.totalSessions>0?"mb-4":""])},[e("div",Ka,[e("span",Ha,a(N(S.month)),1),e("span",{class:z(["rounded-lg px-2.5 py-1 text-xs font-semibold",S.totalSessions===0?"bg-gray-50 text-gray-500 dark:bg-gray-800/50 dark:text-gray-400":"bg-pink-50 text-pink-600 dark:bg-pink-500/10 dark:text-pink-400"])},a(x(S)),3)]),S.totalSessions>0?(n(),f("div",Ga,[e("span",Ya,a(t(s)("views.relationship.monthly.totalSessionsPrefix")),1),e("span",Qa,a(S.totalSessions),1),e("span",Za,a(t(s)("views.relationship.monthly.totalSessionsSuffix")),1)])):L("",!0)],2),S.totalSessions>0?(n(),f("div",Ja,[e("div",Xa,[e("div",en,[w(O,{name:"i-heroicons-chat-bubble-bottom-center-text-solid",class:"h-3.5 w-3.5 text-blue-500 dark:text-blue-400"}),e("span",tn,a(t(s)("views.relationship.initiator")),1)]),e("div",sn,[e("div",an,[e("span",nn,a(r.value?.name),1),e("span",ln,a(S.members.find(K=>K.memberId===r.value?.memberId)?.initiateCount??0),1)]),e("div",on,[e("span",rn,a(p.value?.name),1),e("span",cn,a(S.members.find(K=>K.memberId===p.value?.memberId)?.initiateCount??0),1)])]),e("div",un,[e("div",{class:"bg-blue-500 dark:bg-blue-400",style:ne({width:i(M(S))+"%"})},null,4),e("div",{class:"bg-pink-500 dark:bg-pink-400",style:ne({width:i(100-M(S))+"%"})},null,4)])]),e("div",dn,[e("div",mn,[w(O,{name:"i-heroicons-hand-raised-solid",class:"h-3.5 w-3.5 text-indigo-500 dark:text-indigo-400"}),e("span",gn,a(t(s)("views.relationship.closer")),1)]),e("div",pn,[e("div",fn,[e("span",xn,a(r.value?.name),1),e("span",vn,a(S.members.find(K=>K.memberId===r.value?.memberId)?.closeCount??0),1)]),e("div",bn,[e("span",hn,a(p.value?.name),1),e("span",yn,a(S.members.find(K=>K.memberId===p.value?.memberId)?.closeCount??0),1)])]),e("div",_n,[e("div",{class:"bg-indigo-500 dark:bg-indigo-400",style:ne({width:i(B(S))+"%"})},null,4),e("div",{class:"bg-pink-500 dark:bg-pink-400",style:ne({width:i(100-B(S))+"%"})},null,4)])]),e("div",kn,[e("div",wn,[w(O,{name:"i-heroicons-clock-solid",class:"h-3.5 w-3.5 text-amber-500 dark:text-amber-400"}),e("span",Cn,a(t(s)("views.relationship.responseLatency.title")),1)]),e("div",$n,[e("div",Sn,[e("span",Pn,a(r.value?.name),1),e("span",In,a(G(S.month,r.value?.memberId)),1)]),e("div",Mn,[e("span",Tn,a(p.value?.name),1),e("span",qn,a(G(S.month,p.value?.memberId)),1)])])]),e("div",Rn,[e("div",An,[w(O,{name:"i-heroicons-arrow-path-solid",class:"h-3.5 w-3.5 text-purple-500 dark:text-purple-400"}),e("span",jn,a(t(s)("views.relationship.perseverance.title")),1)]),e("div",Ln,[e("div",Vn,[e("span",Dn,a(r.value?.name),1),e("span",zn,a(h(S.month,r.value?.memberId)),1)]),e("div",Bn,[e("span",On,a(p.value?.name),1),e("span",Nn,a(h(S.month,p.value?.memberId)),1)])])])])):(n(),f("div",Un,a(t(s)("views.relationship.noActivity")),1))])])]))),128))])])]),_:1},8,["title"])],64)):L("",!0)]))],2)}}}),En={class:"flex h-full flex-col"},Wn={class:"flex-1 min-h-0 overflow-auto"},Kn=Q({__name:"ViewTab",props:{sessionId:{},sessionName:{},timeFilter:{}},setup(y){const{t:s}=J(),c=y,C=q(()=>[{id:"relationship",label:s("analysis.subTabs.view.relationship"),icon:"i-heroicons-heart"},{id:"type-analysis",label:s("analysis.subTabs.view.typeAnalysis"),icon:"i-heroicons-chart-pie"},{id:"time-analysis",label:s("analysis.subTabs.view.timeAnalysis"),icon:"i-heroicons-clock"},{id:"topic",label:s("analysis.subTabs.view.topic"),icon:"i-heroicons-cloud"},{id:"language-preference",label:s("analysis.subTabs.view.languagePreference"),icon:"i-heroicons-language"}]),o=U("relationship"),g=U(null),P=q(()=>({...c.timeFilter,memberId:g.value}));return(_,u)=>(n(),f("div",En,[w(t(qe),{modelValue:o.value,"onUpdate:modelValue":u[1]||(u[1]=j=>o.value=j),items:C.value,"persist-key":"privateViewTab"},{right:H(()=>[o.value==="type-analysis"||o.value==="time-analysis"?(n(),V(Ge,{key:0,modelValue:g.value,"onUpdate:modelValue":u[0]||(u[0]=j=>g.value=j),"session-id":c.sessionId},null,8,["modelValue","session-id"])):L("",!0)]),_:1},8,["modelValue","items"]),e("div",Wn,[w($e,{name:"fade",mode:"out-in"},{default:H(()=>[o.value==="type-analysis"?(n(),V(Ye,{key:0,"session-id":c.sessionId,"session-name":c.sessionName,"time-filter":P.value},null,8,["session-id","session-name","time-filter"])):o.value==="time-analysis"?(n(),V(Qe,{key:1,"session-id":c.sessionId,"session-name":c.sessionName,"time-filter":P.value},null,8,["session-id","session-name","time-filter"])):o.value==="relationship"?(n(),V(Fn,{key:2,"session-id":c.sessionId,"time-filter":c.timeFilter},null,8,["session-id","time-filter"])):o.value==="topic"?(n(),V(t(Ze),{key:3,"session-id":c.sessionId,"time-filter":c.timeFilter,"show-shared-topics":!0},null,8,["session-id","time-filter"])):o.value==="language-preference"?(n(),V(t(Os),{key:4,"session-id":c.sessionId,"time-filter":c.timeFilter},null,8,["session-id","time-filter"])):L("",!0)]),_:1})])]))}}),Hn=Ce(Kn,[["__scopeId","data-v-0605fe3d"]]),Gn={class:"flex h-full flex-col dark:bg-page-dark",style:{"padding-top":"var(--titlebar-area-height)"}},Yn={class:"relative flex-1 overflow-y-auto"},Qn={class:"h-full"},Zn={key:2,class:"flex h-full items-center justify-center"},Jn={class:"text-gray-500"},Xn={class:"flex h-full flex-col overflow-hidden bg-white dark:bg-page-dark"},ei={class:"flex flex-none items-center justify-between border-b border-gray-200 px-5 py-3 dark:border-gray-700"},ti={class:"text-lg font-semibold text-gray-900 dark:text-white"},si={class:"text-sm text-gray-500 dark:text-gray-400"},ai={class:"flex-1 overflow-hidden"},ni=Q({__name:"index",setup(y){const s=Ee(()=>Ve(()=>import("./MessageExportModal-H3-LAaXY.js"),__vite__mapDeps([0,1,2,3,4,5]))),{t:c}=J(),C=Be(),o=Oe(),g=Re(),P=ke(),_=Ae(),{currentSessionId:u}=je(g),j=U(!1),D=U(!1),I=U(!1),R=U(!1),v=U(!1);function A(){P.openChatRecordDrawer({})}const r=[{id:"overview",labelKey:"analysis.tabs.overview",icon:"i-heroicons-chart-pie"},{id:"view",labelKey:"analysis.tabs.view",icon:"i-heroicons-presentation-chart-bar"},{id:"ai-chat",labelKey:"analysis.tabs.aiChat",icon:"i-heroicons-chat-bubble-left-ellipsis"},{id:"lab",labelKey:"analysis.tabs.lab",icon:"i-heroicons-beaker"}],p=q(()=>_.debugMode?[...r,{id:"debug",labelKey:"analysis.tabs.debug",icon:"i-heroicons-bug-ant"}]:r),{activeTab:k,isLoading:$,isInitialLoad:d,session:i,memberActivity:b,hourlyActivity:x,dailyActivity:M,messageTypes:B,timeRangeValue:N,fullTimeRange:W,timeFilter:ee,initialTimeState:xe,loadAnalysisData:ae}=Je({route:C,router:o,currentSessionId:u,selectSession:g.selectSession,defaultTab:_.defaultSessionTab,validTabIds:p.value.map(G=>G.id)}),ie=q(()=>b.value.reduce((G,h)=>G+h.messageCount,0)),ve=q(()=>b.value.filter(G=>G.messageCount>0).length),be=q(()=>{if(!i.value||b.value.length===0)return null;if(i.value.ownerId){const h=b.value.find(te=>te.platformId!==i.value?.ownerId);if(h?.avatar)return h.avatar}const G=b.value.find(h=>h.name===i.value?.name);return G?.avatar?G.avatar:(b.value.length,null)});return(G,h)=>{const te=Ne,m=ze;return n(),f("div",Gn,[t(d)?(n(),V(re,{key:0,variant:"page",text:t(c)("analysis.privateChat.loading")},null,8,["text"])):t(i)?(n(),f(E,{key:1},[w(Xe,{"active-tab":t(k),"onUpdate:activeTab":h[0]||(h[0]=l=>ye(k)?k.value=l:null),"time-range-value":t(N),"onUpdate:timeRangeValue":h[1]||(h[1]=l=>ye(N)?N.value=l:null),title:t(i).name,avatar:be.value,icon:"i-heroicons-user","icon-class":"bg-pink-600 text-white dark:bg-pink-500 dark:text-white",tabs:p.value,"current-session-id":t(u),"initial-time-state":t(xe),onOpenIncrementalImport:h[2]||(h[2]=l=>I.value=!0),onOpenMemberManagement:h[3]||(h[3]=l=>v.value=!0),onOpenChatRecord:A,"onUpdate:fullRange":h[4]||(h[4]=l=>W.value=l)},null,8,["active-tab","time-range-value","title","avatar","tabs","current-session-id","initial-time-state"]),e("div",Yn,[t($)?(n(),V(re,{key:0,variant:"overlay",text:t(c)("common.loading")},null,8,["text"])):L("",!0),e("div",Qn,[w($e,{name:"tab-slide",mode:"out-in"},{default:H(()=>[t(k)==="overview"?(n(),V(Ws,{key:"overview-"+t(u),session:t(i),"member-activity":t(b),"message-types":t(B),"hourly-activity":t(x),"daily-activity":t(M),"time-range":t(W),"filtered-message-count":ie.value,"filtered-member-count":ve.value,"time-filter":t(ee)},null,8,["session","member-activity","message-types","hourly-activity","daily-activity","time-range","filtered-message-count","filtered-member-count","time-filter"])):t(k)==="view"?(n(),V(Hn,{key:"view-"+t(u),"session-id":t(u),"session-name":t(i).name,"time-filter":t(ee)},null,8,["session-id","session-name","time-filter"])):t(k)==="ai-chat"?(n(),V(t(at),{key:"ai-chat-"+t(u),"session-id":t(u),"session-name":t(i).name,"chat-type":"private"},null,8,["session-id","session-name"])):t(k)==="memory"?(n(),V(nt,{key:"memory-"+t(u),"session-id":t(u),"session-name":t(i).name},null,8,["session-id","session-name"])):t(k)==="lab"?(n(),V(it,{key:"lab-"+t(u),"session-id":t(u),"session-name":t(i).name,"time-filter":t(ee),"chat-type":"private",mode:"sql-only"},null,8,["session-id","session-name","time-filter"])):t(k)==="debug"?(n(),V(t(lt),{key:"debug-"+t(u),"session-id":t(u)},null,8,["session-id"])):L("",!0)]),_:1})])]),w(et,{onOpenIncrementalImport:h[5]||(h[5]=l=>I.value=!0),onOpenSemanticIndex:h[6]||(h[6]=l=>j.value=!0),onOpenMemberManagement:h[7]||(h[7]=l=>v.value=!0),onOpenChatRecord:A,onOpenMessageExport:h[8]||(h[8]=l=>R.value=!0)})],64)):(n(),f("div",Zn,[e("p",Jn,a(t(c)("analysis.privateChat.loadError")),1)])),t(u)&&t(i)?(n(),V(tt,{key:3,modelValue:j.value,"onUpdate:modelValue":h[9]||(h[9]=l=>j.value=l),"session-id":t(u),"message-count":t(i).messageCount},null,8,["modelValue","session-id","message-count"])):L("",!0),t(u)&&t(i)?(n(),V(Le,{key:4,modelValue:D.value,"onUpdate:modelValue":h[10]||(h[10]=l=>D.value=l),"session-id":t(u),"chat-type":"private","auto-check":""},null,8,["modelValue","session-id"])):L("",!0),t(u)&&t(i)?(n(),V(st,{key:5,modelValue:I.value,"onUpdate:modelValue":h[11]||(h[11]=l=>I.value=l),"session-id":t(u),"session-name":t(i).name,onImported:h[12]||(h[12]=()=>{t(ae)(),t(g).loadSessions()})},null,8,["modelValue","session-id","session-name"])):L("",!0),t(u)?(n(),V(t(s),{key:6,modelValue:R.value,"onUpdate:modelValue":h[13]||(h[13]=l=>R.value=l)},null,8,["modelValue"])):L("",!0),t(u)?(n(),V(m,{key:7,open:v.value,"onUpdate:open":h[15]||(h[15]=l=>v.value=l),ui:{content:"max-w-6xl h-[85vh]"}},{content:H(()=>[e("div",Xn,[e("div",ei,[e("div",null,[e("h2",ti,a(t(c)("analysis.tooltip.memberManagement")),1),e("p",si,a(t(c)("members.private.description",{count:t(i)?.memberCount??0})),1)]),w(te,{variant:"ghost",icon:"i-heroicons-x-mark",size:"sm",onClick:h[14]||(h[14]=l=>v.value=!1)})]),e("div",ai,[w(ot,{"session-id":t(u),"show-header":!1,"chat-type":"private",onDataChanged:t(ae)},null,8,["session-id","onDataChanged"])])])]),_:1},8,["open"])):L("",!0)])}}}),yi=Ce(ni,[["__scopeId","data-v-74176220"]]);export{yi as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{_ as Z,d as J}from"./vendor-nuxt-ui-DUpPmItD.js";import{u as V,M as Q,s as W,t as X,k as E,r as H}from"./index-CF59LLOG.js";import{_ as tt}from"./LoadingState.vue_vue_type_script_setup_true_lang-B2KAoiMG.js";import{u as et,w as st}from"./annual-summary-time-range-CK0IIPsY.js";import{_ as at,C as nt,g as it}from"./base-D5T8QZ8b.js";import{f as ot}from"./dateFormat-BDOkdsCR.js";import{_ as B}from"./ThemeCard.vue_vue_type_script_setup_true_lang-BWJ6kuSC.js";import{d as P,P as r,Z as l,ad as z,ae as R,ag as t,a0 as s,u as n,_ as rt,c,Q as q,U as p,T as A,aa as G,w as lt,F as ct,a1 as N,$ as U,r as K}from"./vendor-reka-ui-BLnO2MqY.js";import"./vendor-echarts-wordcloud-Ca8n6qS6.js";import"./vendor-snapdom--nZvo8Sg.js";import"./vendor-echarts-B-i_56Av.js";import"./vendor-zrender-5DcYjSZk.js";const dt={class:"grid grid-cols-2 gap-x-3 gap-y-4 sm:grid-cols-3 lg:grid-cols-4"},ut={class:"mb-1.5 text-[10px] font-semibold text-gray-500 dark:text-zinc-400"},gt={class:"grid grid-cols-7 gap-0.5","aria-hidden":"true"},mt=["title"],ht=P({__name:"AnnualCalendarGrid",props:{range:{},data:{}},setup(h){const e=h,{t:o}=V(),Y=c(()=>Math.max(...e.data.map(u=>u.messageCount),1)),k=c(()=>new Map(e.data.map(u=>[u.date,u.messageCount]))),b=c(()=>new Date(e.range.startTs*1e3)),i=c(()=>new Date(e.range.endTs*1e3)),$=c(()=>{const u=b.value,D=i.value,f=[],m=e.range.year??u.getFullYear(),M=e.range.mode==="year"?new Date(m,0,1):new Date(u.getFullYear(),u.getMonth(),1),L=e.range.mode==="year"?new Date(m,11,1):new Date(D.getFullYear(),D.getMonth(),1);for(;M<=L;){const _=M.getFullYear(),S=M.getMonth(),C=`${_}-${String(S+1).padStart(2,"0")}`,a=new Date(_,S+1,0).getDate(),g=Array.from({length:a},(j,d)=>{const F=d+1,I=`${C}-${String(F).padStart(2,"0")}`,x=new Date(_,S,F),v=k.value.get(I)??0,T=x>=w(u)&&x<=w(D);return{key:I,day:F,count:v,inRange:T,level:T&&v>0?Math.max(1,Math.ceil(v/Y.value*4)):0}});f.push({key:C,label:e.range.mode==="year"?o("insight.monthLabel",{month:S+1}):C.replace("-","/"),leadingDays:(new Date(_,S,1).getDay()+6)%7,days:g}),M.setMonth(M.getMonth()+1)}return f});function w(u){return new Date(u.getFullYear(),u.getMonth(),u.getDate())}return(u,D)=>(r(),l("div",dt,[(r(!0),l(z,null,R($.value,f=>(r(),l("div",{key:f.key,class:"min-w-0"},[t("div",ut,s(f.label),1),t("div",gt,[(r(!0),l(z,null,R(f.leadingDays,m=>(r(),l("span",{key:`blank-${m}`,class:"aspect-square"}))),128)),(r(!0),l(z,null,R(f.days,m=>(r(),l("span",{key:m.key,class:rt(["aspect-square min-h-[5px] rounded-[2px] bg-gray-100 dark:bg-zinc-800",{"opacity-30":!m.inRange,"bg-pink-200 dark:bg-pink-950":m.level===1,"bg-pink-300 dark:bg-pink-800":m.level===2,"bg-pink-500 dark:bg-pink-600":m.level===3,"bg-pink-700 dark:bg-pink-400":m.level===4}]),title:`${m.key}: ${m.count} ${n(o)("insight.messages")}`},null,10,mt))),128))])]))),128))]))}}),xt=P({__name:"AnnualMessageTrend",props:{range:{},data:{},height:{}},setup(h){const e=h,{t:o}=V(),Y=c(()=>({labels:e.data.map(k=>e.range.mode==="year"?o("insight.monthLabel",{month:Number(k.month.slice(5))}):k.month.replace("-","/")),values:e.data.map(k=>k.messageCount)}));return(k,b)=>(r(),q(n(at),{data:Y.value,height:h.height??260,"border-radius":3},null,8,["data","height"]))}}),vt={class:"grid gap-4 lg:grid-cols-12"},pt={class:"relative z-10 min-w-0 p-5 sm:p-6"},yt={class:"flex flex-col gap-5 xl:flex-row xl:items-start xl:justify-between"},_t={class:"min-w-0"},kt={class:"text-2xl font-bold text-gray-900 dark:text-white sm:text-3xl"},ft={class:"mt-3 space-y-1.5 text-xs font-medium text-gray-500 dark:text-zinc-400"},bt={class:"flex items-center gap-2"},wt={class:"font-mono"},Dt={class:"flex flex-wrap items-center gap-x-2 gap-y-1"},Ct={class:"grid grid-cols-2 gap-x-6 gap-y-4 sm:grid-cols-4 xl:shrink-0"},$t={class:"font-mono text-xl font-black tabular-nums text-gray-900 dark:text-white"},Mt={class:"mt-1 truncate text-[10px] font-medium text-gray-500 dark:text-zinc-400"},St={class:"mt-7 flex items-center justify-between gap-3"},Tt={class:"text-[11px] font-bold uppercase text-pink-600 dark:text-pink-400"},zt={class:"text-[10px] text-gray-400 dark:text-zinc-500"},Yt={class:"mt-2"},Lt={class:"min-w-0 p-5 sm:p-6"},At={class:"flex items-start justify-between gap-4"},Rt={class:"text-[11px] font-bold uppercase text-pink-600 dark:text-pink-400"},Nt={class:"mt-1 text-[10px] text-gray-400 dark:text-zinc-500"},jt={class:"shrink-0 text-right"},Ft={class:"font-mono text-lg font-black tabular-nums text-gray-900 dark:text-white"},Bt={class:"text-[9px] text-gray-400 dark:text-zinc-500"},It={class:"mt-5"},Vt={class:"min-w-0 p-5 sm:p-6"},Pt={class:"text-[11px] font-bold uppercase text-pink-600 dark:text-pink-400"},Ot={class:"mt-1 text-[10px] text-gray-400 dark:text-zinc-500"},Ut={key:0,class:"mt-5 grid grid-cols-2 gap-x-5 gap-y-4 sm:grid-cols-3"},qt={class:"flex items-end justify-between gap-2"},Et={class:"truncate text-xs font-medium text-gray-600 dark:text-zinc-300"},Gt={class:"font-mono text-xs font-black tabular-nums text-gray-900 dark:text-white"},Kt={class:"mt-2 h-1 overflow-hidden rounded-full bg-gray-100 dark:bg-zinc-800"},Zt={class:"mt-1.5 font-mono text-[9px] text-gray-400 dark:text-zinc-500"},Jt={key:1,class:"flex h-28 items-center justify-center text-xs text-gray-400 dark:text-zinc-600"},Qt={class:"min-w-0 p-5 sm:p-6"},Wt={class:"flex items-start justify-between gap-3"},Xt={class:"text-[11px] font-bold uppercase text-pink-600 dark:text-pink-400"},Ht={class:"mt-1 text-[10px] text-gray-400 dark:text-zinc-500"},te={class:"flex shrink-0 gap-3 text-right"},ee={class:"font-mono text-sm font-black text-gray-900 dark:text-white"},se={class:"text-[9px] text-gray-400 dark:text-zinc-500"},ae={class:"font-mono text-sm font-black text-gray-900 dark:text-white"},ne={key:0,class:"mt-5 flex h-24 items-end gap-2"},ie={class:"flex h-16 w-full items-end rounded-sm bg-gray-100 dark:bg-zinc-800"},oe=["title"],re={class:"w-full truncate text-center font-mono text-[8px] text-gray-400 dark:text-zinc-500"},le={key:1,class:"flex h-24 items-center justify-center text-xs text-gray-400 dark:text-zinc-600"},ce={class:"min-w-0 p-5 sm:p-6"},de={class:"text-[11px] font-bold uppercase text-pink-600 dark:text-pink-400"},ue={class:"mt-4 grid grid-cols-3 divide-x divide-gray-200 dark:divide-white/10"},ge={class:"truncate font-mono text-sm font-black tabular-nums text-gray-900 dark:text-white"},me={class:"mt-1 truncate text-[9px] font-medium text-gray-500 dark:text-zinc-400"},he={class:"mt-0.5 truncate text-[8px] text-gray-400 dark:text-zinc-500"},xe=P({__name:"AnnualInsightBoard",props:{range:{},metrics:{},coverage:{},monthlyActivity:{},dailyActivity:{},messageTypes:{},textLength:{}},setup(h){const e=h,{t:o}=V(),Y=c(()=>e.range.mode==="year"?o("insight.overviewCard.yearTitle",{year:e.range.year}):o("insight.overviewCard.recentTitle")),k=c(()=>ot(e.range.startTs,e.range.endTs,"YYYY/MM/DD")),b=c(()=>[{key:"messages",value:e.metrics.sentMessageCount},{key:"activeDays",value:e.metrics.activeDayCount},{key:"contacts",value:e.metrics.directContactCount},{key:"dailyMessages",value:e.metrics.averageMessagesPerDay}]),i=c(()=>e.monthlyActivity.reduce((a,g)=>!a||g.messageCount>a.messageCount?g:a,null)),$=c(()=>e.dailyActivity.reduce((a,g)=>!a||g.messageCount>a.messageCount?g:a,null)),w=c(()=>[...e.messageTypes].sort((a,g)=>g.count-a.count).slice(0,6)),u=c(()=>e.messageTypes.reduce((a,g)=>a+g.count,0)),D=c(()=>e.messageTypes.find(a=>a.type===Q.TEXT)?.count??0),f=c(()=>C(D.value,u.value)),m=c(()=>Math.max(...e.textLength.buckets.map(a=>a.count),1)),M=c(()=>{const a=Math.max(1,Math.round((e.range.endTs-e.range.startTs)/86400)+1);return C(e.metrics.activeDayCount,a)}),L=c(()=>[{key:"dailyContacts",value:_(e.metrics.averageDirectContactsPerDay),detail:o("insight.overviewCard.perDay")},{key:"peakMonth",value:S(i.value?.month),detail:o("insight.overviewCard.messagesCount",{count:_(i.value?.messageCount??0)})},{key:"peakDay",value:$.value?.date.slice(5).replace("-","/")??"-",detail:o("insight.overviewCard.messagesCount",{count:_($.value?.messageCount??0)})}]);function _(a){return Number.isInteger(a)?a.toLocaleString():a.toLocaleString(void 0,{maximumFractionDigits:1})}function S(a){return a?e.range.mode==="year"?o("insight.monthLabel",{month:Number(a.slice(5))}):a.replace("-","/"):"-"}function C(a,g){return g>0?Math.round(a/g*100):0}return(a,g)=>{const j=Z;return r(),l("div",vt,[p(n(B),{class:"relative isolate lg:col-span-8"},{default:A(()=>[p(n(nt)),t("section",pt,[t("div",yt,[t("div",_t,[t("h2",kt,s(Y.value),1),t("div",ft,[t("div",bt,[p(j,{name:"i-heroicons-calendar",class:"h-4 w-4 opacity-70"}),t("span",wt,s(k.value),1)]),t("div",Dt,[p(j,{name:"i-heroicons-circle-stack",class:"h-4 w-4 opacity-70"}),t("span",null,s(n(o)("insight.status.coverage",{analyzed:h.coverage.analyzedSessions,total:h.coverage.totalSessions})),1)])])]),t("div",Ct,[(r(!0),l(z,null,R(b.value,d=>(r(),l("div",{key:d.key,class:"min-w-0"},[t("div",$t,s(_(d.value)),1),t("div",Mt,s(n(o)(`insight.kpis.${d.key}`)),1)]))),128))])]),t("div",St,[t("h3",Tt,s(n(o)("insight.sections.overview")),1),t("span",zt,s(n(o)("insight.sections.overviewDescription")),1)]),t("div",Yt,[p(xt,{range:h.range,data:h.monthlyActivity,height:210},null,8,["range","data"])])])]),_:1}),p(n(B),{class:"lg:col-span-4"},{default:A(()=>[t("section",Lt,[t("div",At,[t("div",null,[t("h3",Rt,s(n(o)("insight.overviewCard.activity")),1),t("p",Nt,s(n(o)("insight.sections.activityDescription")),1)]),t("div",jt,[t("div",Ft,s(h.metrics.activeDayCount),1),t("div",Bt,s(n(o)("insight.overviewCard.activeRate",{rate:M.value})),1)])]),t("div",It,[p(ht,{range:h.range,data:h.dailyActivity},null,8,["range","data"])])])]),_:1}),p(n(B),{class:"lg:col-span-5"},{default:A(()=>[t("section",Vt,[t("h3",Pt,s(n(o)("insight.sections.messageTypes")),1),t("p",Ot,s(n(o)("insight.sections.messageTypesDescription")),1),w.value.length?(r(),l("div",Ut,[(r(!0),l(z,null,R(w.value,d=>(r(),l("div",{key:d.type,class:"min-w-0"},[t("div",qt,[t("span",Et,s(n(it)(d.type,n(o))),1),t("span",Gt,s(C(d.count,u.value))+"% ",1)]),t("div",Kt,[t("div",{class:"h-full rounded-full bg-pink-500",style:G({width:`${C(d.count,u.value)}%`})},null,4)]),t("div",Zt,s(_(d.count)),1)]))),128))])):(r(),l("div",Jt,s(n(o)("insight.noData")),1))])]),_:1}),p(n(B),{class:"lg:col-span-3"},{default:A(()=>[t("section",Qt,[t("div",Wt,[t("div",null,[t("h3",Xt,s(n(o)("insight.sections.textLength")),1),t("p",Ht,s(n(o)("insight.overviewCard.textRatio"))+" "+s(f.value)+"% ",1)]),t("div",te,[t("div",null,[t("div",ee,s(h.textLength.median??"-"),1),t("div",se,s(n(o)("insight.length.median")),1)]),t("div",null,[t("div",ae,s(h.textLength.p90??"-"),1),g[0]||(g[0]=t("div",{class:"text-[9px] text-gray-400 dark:text-zinc-500"},"P90",-1))])])]),h.textLength.textMessageCount?(r(),l("div",ne,[(r(!0),l(z,null,R(h.textLength.buckets,d=>(r(),l("div",{key:d.key,class:"flex min-w-0 flex-1 flex-col items-center gap-2"},[t("div",ie,[t("div",{class:"w-full rounded-sm bg-blue-500/80 dark:bg-blue-400/80",style:G({height:`${Math.max(4,d.count/m.value*100)}%`}),title:`${d.key}: ${d.count}`},null,12,oe)]),t("span",re,s(d.key),1)]))),128))])):(r(),l("div",le,s(n(o)("insight.noTextData")),1))])]),_:1}),p(n(B),{class:"lg:col-span-4"},{default:A(()=>[t("section",ce,[t("h3",de,s(n(o)("insight.overviewCard.keyMetrics")),1),t("div",ue,[(r(!0),l(z,null,R(L.value,d=>(r(),l("div",{key:d.key,class:"min-w-0 px-3 first:pl-0 last:pr-0"},[t("div",ge,s(d.value),1),t("div",me,s(n(o)(`insight.overviewCard.${d.key}`)),1),t("div",he,s(d.detail),1)]))),128))])])]),_:1})])}}}),ve={class:"min-h-0 flex-1 overflow-y-auto"},pe={class:"mx-auto w-full max-w-[1120px] space-y-6 px-4 py-5 sm:px-6 sm:py-6"},ye={class:"min-w-0"},_e={key:1,class:"flex items-center gap-2 rounded-xl border border-amber-100 bg-amber-50/50 px-4 py-2.5 text-xs text-amber-800 backdrop-blur-sm dark:border-amber-950/40 dark:bg-amber-950/20 dark:text-amber-300"},ke={key:2,class:"flex flex-wrap items-center justify-between gap-3 rounded-xl border border-red-200 bg-red-50/50 px-4 py-2.5 text-xs text-red-800 backdrop-blur-sm dark:border-red-950/40 dark:bg-red-950/20 dark:text-red-300"},fe={key:0,class:"flex flex-wrap items-center justify-between gap-3 rounded-xl border border-gray-200 bg-white p-4 text-xs text-gray-600 dark:border-zinc-800 dark:bg-zinc-900/50 dark:text-zinc-300"},be={key:0},we={key:1},je=P({__name:"index",setup(h){const{t:e}=V(),o=W(),{showSettings:Y}=X(o),k=new Date().getFullYear(),b=et(),i=K(null),$=K("");let w=null,u=0;const D=c(()=>{const x=b.modelValue.value?.state;return x?x.mode==="recent"?{mode:"recent",days:365,acceptStale:!0}:{mode:"year",year:x.year??k,acceptStale:!0}:null}),f=c(()=>JSON.stringify(D.value)),m=c(()=>(i.value?.coverage.missingOwnerSessions??0)+(i.value?.coverage.unresolvedOwnerSessions??0)),M=c(()=>i.value?.task.status==="running"),L=c(()=>i.value?.metrics!==null&&i.value?.metrics!==void 0),_=c(()=>L.value&&i.value?.metrics?.sentMessageCount===0),S=c(()=>(i.value?.coverage.totalSessions??0)>0&&i.value?.coverage.analyzedSessions===0&&m.value>0),C=c(()=>b.modelValue.value?.state.mode==="year"?b.modelValue.value.state.year:void 0),a=c(()=>{const x=C.value,v=i.value?.latestDataYear;return x===void 0||v===null||v===void 0||x===v?null:{year:x,latestYear:v}});lt(f,()=>{d(),D.value&&(i.value=null,g(!1))},{immediate:!0}),st(Y,()=>{g(!1)}),ct(d);async function g(x){const v=D.value;if(!v)return;const T=++u;$.value="";try{const y=x?await E().recomputeAnnualSummary(v):await E().getAnnualSummary(v);if(T!==u)return;i.value=y,y.metrics&&b.setAvailableYears(y.availableDataYears),y.task.status==="running"&&j()}catch(y){if(T!==u)return;const O=y instanceof Error?y.message:String(y);$.value=O,H(`Global insight annual summary failed: ${O}`,y instanceof Error?y.stack:void 0)}}function j(){d(),w=setTimeout(()=>{g(!1)},900)}function d(){w&&(clearTimeout(w),w=null)}function F(){const x=i.value?.latestDataYear;x&&b.switchToYear(x)}function I(){o.openSettings("data","missing-owner")}return(x,v)=>{const T=Z,y=J;return r(),l("main",ve,[t("div",pe,[m.value>0?(r(),l("button",{key:0,type:"button",class:"inline-flex w-fit max-w-full items-center gap-2 rounded-lg bg-amber-50 px-3 py-2 text-left text-xs text-amber-800 transition-colors hover:bg-amber-100 dark:bg-amber-950/20 dark:text-amber-300 dark:hover:bg-amber-950/30",onClick:I},[p(T,{name:"i-heroicons-user-circle",class:"h-4 w-4 shrink-0"}),t("span",ye,s(n(e)("insight.status.ownerIssues",{count:m.value})),1),p(T,{name:"i-heroicons-arrow-right",class:"h-3.5 w-3.5 shrink-0 opacity-70"})])):N("",!0),i.value?.cache.status==="stale"||M.value&&L.value?(r(),l("div",_e,[p(T,{name:"i-heroicons-arrow-path",class:"h-4 w-4 shrink-0 animate-spin text-amber-600 dark:text-amber-400"}),U(" "+s(n(e)("insight.status.updating")),1)])):N("",!0),$.value||i.value?.task.status==="failed"?(r(),l("div",ke,[t("span",null,s(n(e)("insight.status.failed")),1),p(y,{size:"xs",color:"error",variant:"soft",icon:"i-heroicons-arrow-path",onClick:v[0]||(v[0]=O=>g(!0))},{default:A(()=>[U(s(n(e)("insight.actions.retry")),1)]),_:1})])):N("",!0),!L.value&&!$.value&&i.value?.task.status!=="failed"?(r(),q(tt,{key:3,height:"min(52vh, 420px)",text:i.value?.task.status==="running"?n(e)("insight.status.computingProgress",{processed:i.value.task.processedSessions,total:i.value.task.totalSessions}):n(e)("insight.status.loading")},null,8,["text"])):i.value?.metrics&&i.value.textLength?(r(),l(z,{key:4},[_.value&&!S.value?(r(),l("div",fe,[a.value?(r(),l("span",be,s(n(e)("insight.status.noDataWithLatest",a.value)),1)):(r(),l("span",we,s(n(e)("insight.noData")),1)),a.value?(r(),q(y,{key:2,size:"xs",variant:"soft",color:"neutral",icon:"i-heroicons-arrow-right",onClick:F},{default:A(()=>[U(s(n(e)("insight.actions.switchYear",{year:a.value.latestYear})),1)]),_:1})):N("",!0)])):N("",!0),p(xe,{range:i.value.range,metrics:i.value.metrics,coverage:i.value.coverage,"monthly-activity":i.value.monthlyActivity,"daily-activity":i.value.dailyActivity,"message-types":i.value.messageTypes,"text-length":i.value.textLength},null,8,["range","metrics","coverage","monthly-activity","daily-activity","message-types","text-length"])],64)):N("",!0)])])}}});export{je as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{E as l,c as n,s as u,L as d}from"./vendor-reka-ui-BLnO2MqY.js";const o=Symbol("PeoplePageHeader");function p(e){const a=u(null),r=n(()=>a.value?.value??e.value);function s(t){a.value=t}return d(o,{setHeader:s}),{header:r}}function P(e){l(o)?.setHeader(e)}export{p,P as u};
|