chatlab-cli 0.37.3 → 0.37.4

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.
Files changed (141) hide show
  1. package/LICENSE +661 -0
  2. package/dist/{chat-command-RQC44FPF.mjs → chat-command-DJKSQP6Y.mjs} +8 -8
  3. package/dist/{chunk-E6IRRNBQ.mjs → chunk-3K7F2SRZ.mjs} +3 -3
  4. package/dist/{chunk-GDKQKHJT.mjs → chunk-ARRFRJOH.mjs} +2 -2
  5. package/dist/{chunk-HJWBFHNR.mjs → chunk-D6BRSG3V.mjs} +4 -4
  6. package/dist/{chunk-4FAEB4C2.mjs → chunk-DJ7QEJNO.mjs} +12 -12
  7. package/dist/{chunk-O57SQSCO.mjs → chunk-JWWWLW5G.mjs} +2 -2
  8. package/dist/{chunk-ZOHSWBD2.mjs → chunk-NKSPJN6X.mjs} +108 -7
  9. package/dist/chunk-NKSPJN6X.mjs.map +1 -0
  10. package/dist/{chunk-5OA4QI3Q.mjs → chunk-NVW3ZCYD.mjs} +3 -3
  11. package/dist/{chunk-LUENE6L7.mjs → chunk-OXRS2UPE.mjs} +4 -4
  12. package/dist/{chunk-ZGXXAPLX.mjs → chunk-QP77JL6O.mjs} +2 -2
  13. package/dist/{chunk-E2ZFGNZQ.mjs → chunk-VCKF7RYB.mjs} +11 -11
  14. package/dist/{chunk-IDDTW5JN.mjs → chunk-WBPOMYBE.mjs} +8 -6
  15. package/dist/{chunk-IDDTW5JN.mjs.map → chunk-WBPOMYBE.mjs.map} +1 -1
  16. package/dist/{chunk-IMJVOODY.mjs → chunk-YPP3N2AX.mjs} +2 -2
  17. package/dist/cli.mjs +9 -9
  18. package/dist/contacts-worker.mjs +2 -2
  19. package/dist/global-insight-worker.mjs +1 -1
  20. package/dist/{http-QJDZKDNJ.mjs → http-O4AZUIOD.mjs} +12 -12
  21. package/dist/{import-XK6YM26A.mjs → import-IALJQB7V.mjs} +7 -7
  22. package/dist/index.mjs +12 -12
  23. package/dist/{mcp-DMGZFSYN.mjs → mcp-VNBL4WMM.mjs} +8 -8
  24. package/dist/people-relationships-worker.mjs +2 -2
  25. package/dist/semantic-index-worker.mjs +1 -1
  26. package/dist/{src-4AHJUFCW.mjs → src-6ICLBMOR.mjs} +6 -6
  27. package/dist/{stream-import-7VQVT5ST.mjs → stream-import-NKQYYSGZ.mjs} +7 -7
  28. package/dist/{worker-runtime-PQBAV75N.mjs → worker-runtime-AE2I6U2G.mjs} +5 -5
  29. package/dist-cli-web/assets/{AISettingsTab-qS3XKnvh.js → AISettingsTab-mecu-HsX.js} +1 -1
  30. package/dist-cli-web/assets/{AboutTab-K-i40dPv.js → AboutTab-CgXYD50w.js} +1 -1
  31. package/dist-cli-web/assets/{Alert-GSvA5B7J.js → Alert-DR892gaV.js} +1 -1
  32. package/dist-cli-web/assets/{ApiSettingsTab-DIVGTR3g.js → ApiSettingsTab-Cvw8gStg.js} +1 -1
  33. package/dist-cli-web/assets/{BatchManageTab-CJhwvYWV.js → BatchManageTab-DqSEzAtr.js} +1 -1
  34. package/dist-cli-web/assets/{BufferResource-Cjm0m7sF.js → BufferResource-rydt5j-b.js} +1 -1
  35. package/dist-cli-web/assets/{CanvasRenderer-C-fmrahh.js → CanvasRenderer-Ci5IaFxW.js} +1 -1
  36. package/dist-cli-web/assets/{CardDecoration-Cz54ZPyh.js → CardDecoration-8F4sZO4v.js} +1 -1
  37. package/dist-cli-web/assets/{ChatRecordDrawer-Cst8zTUv.js → ChatRecordDrawer-D3LzSRkL.js} +1 -1
  38. package/dist-cli-web/assets/{ChatRecordWorkspace-DKVKaimw.js → ChatRecordWorkspace-BDCIAjm3.js} +1 -1
  39. package/dist-cli-web/assets/{Checkbox-CrlY3jiJ.js → Checkbox-I1cjN4s_.js} +1 -1
  40. package/dist-cli-web/assets/{DataDirCleanupNotice-Cjqiub4e.js → DataDirCleanupNotice-8zcIOyGl.js} +1 -1
  41. package/dist-cli-web/assets/{DatePicker.vue_vue_type_script_setup_true_lang-BYY2UmPA.js → DatePicker.vue_vue_type_script_setup_true_lang-DWWzQOTU.js} +1 -1
  42. package/dist-cli-web/assets/{DebugToolsPanel-I00RV_Lr.js → DebugToolsPanel-CiGd5ttA.js} +1 -1
  43. package/dist-cli-web/assets/{EChart.vue_vue_type_script_setup_true_lang-CRTZh9kh.js → EChart.vue_vue_type_script_setup_true_lang-Rk-Bu-rv.js} +1 -1
  44. package/dist-cli-web/assets/{EChartBar.vue_vue_type_script_setup_true_lang-DjDFhnN9.js → EChartBar.vue_vue_type_script_setup_true_lang-CB_KuKt4.js} +1 -1
  45. package/dist-cli-web/assets/{EChartLine.vue_vue_type_script_setup_true_lang-BLqlW9E4.js → EChartLine.vue_vue_type_script_setup_true_lang-5iW9KPRe.js} +1 -1
  46. package/dist-cli-web/assets/{EChartWordcloud-ChKJM8bU.js → EChartWordcloud-BiN68kpp.js} +1 -1
  47. package/dist-cli-web/assets/{FileDropZone.vue_vue_type_script_setup_true_lang-CsRmQhVQ.js → FileDropZone.vue_vue_type_script_setup_true_lang-DpK_xXUN.js} +1 -1
  48. package/dist-cli-web/assets/{Filter-Duzxgudo.js → Filter-Tmam9FK9.js} +1 -1
  49. package/dist-cli-web/assets/{GlobalTaskBar-DL0IJxlt.js → GlobalTaskBar-B77auVn7.js} +1 -1
  50. package/dist-cli-web/assets/{GroupRelationshipGalaxyView-BZrB2o2g.js → GroupRelationshipGalaxyView-DAmdqVxU.js} +1 -1
  51. package/dist-cli-web/assets/{Label-CaVKlQnJ.js → Label-DTrL45eR.js} +1 -1
  52. package/dist-cli-web/assets/{LoadingState.vue_vue_type_script_setup_true_lang-uF54r-dT.js → LoadingState.vue_vue_type_script_setup_true_lang-DH0zYa8f.js} +1 -1
  53. package/dist-cli-web/assets/{MessageExportModal-JpurBsUW.js → MessageExportModal-DgvQvcc5.js} +1 -1
  54. package/dist-cli-web/assets/{PageHeader-BciykZ_-.js → PageHeader-C-UYITO9.js} +1 -1
  55. package/dist-cli-web/assets/{PageTabs.vue_vue_type_script_setup_true_lang-2Xe2iUFO.js → PageTabs.vue_vue_type_script_setup_true_lang-BV344PR7.js} +1 -1
  56. package/dist-cli-web/assets/{RelationshipGalaxyCanvas-BO5-MowG.js → RelationshipGalaxyCanvas-Bzh-vQI8.js} +3 -3
  57. package/dist-cli-web/assets/{RelationshipGalaxyThreeCanvas-Dp4CcWU5.js → RelationshipGalaxyThreeCanvas--DDkxCCc.js} +1 -1
  58. package/dist-cli-web/assets/{RenderTargetSystem-CfuoUG_y.js → RenderTargetSystem-BP0KBa7R.js} +1 -1
  59. package/dist-cli-web/assets/{RovingFocusItem-FpYwYEP_.js → RovingFocusItem-BAQO8BlG.js} +1 -1
  60. package/dist-cli-web/assets/{ScreenCaptureModal-cElYPaSj.js → ScreenCaptureModal-DtAB4lyN.js} +1 -1
  61. package/dist-cli-web/assets/{SectionTabs.vue_vue_type_script_setup_true_lang-pVQMbTsj.js → SectionTabs.vue_vue_type_script_setup_true_lang-DjUq1i7-.js} +1 -1
  62. package/dist-cli-web/assets/{Select-H8Fz6RkU.js → Select-CaRAtYOu.js} +1 -1
  63. package/dist-cli-web/assets/{SettingsModal-52Fw4fVW.js → SettingsModal-BKu9l7vR.js} +2 -2
  64. package/dist-cli-web/assets/{StorageTab-BnugE5BO.js → StorageTab-DWUzStD4.js} +1 -1
  65. package/dist-cli-web/assets/{Switch-K4aqYC4Y.js → Switch-mMuTJ87v.js} +1 -1
  66. package/dist-cli-web/assets/{Tabs-DJ5p8gb6.js → Tabs-B0DXvZn9.js} +1 -1
  67. package/dist-cli-web/assets/{Tabs-BXjD45rO.js → Tabs-Bw65ChMB.js} +1 -1
  68. package/dist-cli-web/assets/{ThemeCard.vue_vue_type_script_setup_true_lang-BLmTpx4f.js → ThemeCard.vue_vue_type_script_setup_true_lang-CFSCaL65.js} +1 -1
  69. package/dist-cli-web/assets/{TimeSelect.vue_vue_type_script_setup_true_lang-geQAlopO.js → TimeSelect.vue_vue_type_script_setup_true_lang-sP4Z2nbi.js} +1 -1
  70. package/dist-cli-web/assets/{VisuallyHiddenInput-J2KEIQBX.js → VisuallyHiddenInput-Cy3d6wW5.js} +1 -1
  71. package/dist-cli-web/assets/{WebGLRenderer-BDFzRniS.js → WebGLRenderer-C86bSgXH.js} +1 -1
  72. package/dist-cli-web/assets/{WebGPURenderer-BKYZyUCZ.js → WebGPURenderer-EcnRVF_C.js} +1 -1
  73. package/dist-cli-web/assets/{aiChat-CdJzpNYW.js → aiChat-ZrHuq9Eb.js} +3 -3
  74. package/dist-cli-web/assets/{base-129JztT1.js → base-DwqzgeyP.js} +1 -1
  75. package/dist-cli-web/assets/{browserAll-CZNZDK1i.js → browserAll-DUX8qJC8.js} +1 -1
  76. package/dist-cli-web/assets/{chatMessages-zmzHCUCy.js → chatMessages-By6kR5_1.js} +3 -3
  77. package/dist-cli-web/assets/{cli-web-_WGCg-ZY.js → cli-web-JlckDfz0.js} +1 -1
  78. package/dist-cli-web/assets/{fetch-Dw33HaVP.js → fetch-Bhl8mtJ2.js} +1 -1
  79. package/dist-cli-web/assets/{fetch-B7Tdp7Uo.js → fetch-BjtwVVBg.js} +1 -1
  80. package/dist-cli-web/assets/{fetch-DaeoNUip.js → fetch-BpoJa14b.js} +1 -1
  81. package/dist-cli-web/assets/{fetch-DTPDtL38.js → fetch-CY5yJNTL.js} +1 -1
  82. package/dist-cli-web/assets/{fetch-DOsmgros.js → fetch-ChSI9rRd.js} +1 -1
  83. package/dist-cli-web/assets/{fetch-BBdyPNj3.js → fetch-CuySZ9TW.js} +1 -1
  84. package/dist-cli-web/assets/{fetch-C4W6tD-D.js → fetch-DS-lTLBb.js} +1 -1
  85. package/dist-cli-web/assets/{fetch-Di4QpfqL.js → fetch-Dkyidev6.js} +1 -1
  86. package/dist-cli-web/assets/{fetch-sbr95ipd.js → fetch-DtqHZHIT.js} +1 -1
  87. package/dist-cli-web/assets/{fetch-DgHdAlO7.js → fetch-GYzy1nua.js} +1 -1
  88. package/dist-cli-web/assets/{fetch-Bafz8jLM.js → fetch-LZAcmdq3.js} +1 -1
  89. package/dist-cli-web/assets/{fetch-IP6i-mtr.js → fetch-w66ywFn5.js} +1 -1
  90. package/dist-cli-web/assets/{host-CMnAiJSx.js → host-CBXwW7_e.js} +1 -1
  91. package/dist-cli-web/assets/{host-CuuNLUWx.js → host-CDCKLdfF.js} +1 -1
  92. package/dist-cli-web/assets/{index-DhRaZS6z.js → index-3KDkw8sV.js} +1 -1
  93. package/dist-cli-web/assets/{index-fsLAooCi.js → index-BAjafcRU.js} +1 -1
  94. package/dist-cli-web/assets/{index-BOXh7X5Y.js → index-BLO0CYvx.js} +1 -1
  95. package/dist-cli-web/assets/{index-BepItDCQ.js → index-BVoFqt2r.js} +4 -4
  96. package/dist-cli-web/assets/{index-Dz4yfeg6.js → index-CYmoNVAj.js} +1 -1
  97. package/dist-cli-web/assets/{index-bQ9oj54q.js → index-D07viL9P.js} +4 -4
  98. package/dist-cli-web/assets/{index-CN9WMxb3.js → index-DD7RFB6N.js} +2 -2
  99. package/dist-cli-web/assets/index-DEafpen2.js +137 -0
  100. package/dist-cli-web/assets/{index-BmGA3geF.js → index-D_CX3gzo.js} +1 -1
  101. package/dist-cli-web/assets/{index-EtteazuD.js → index-D_SJKdur.js} +1 -1
  102. package/dist-cli-web/assets/{index-DgCXdbsG.js → index-RqQZ2vvr.js} +2 -2
  103. package/dist-cli-web/assets/{index-BBYtZa7g.js → index-T_aveLoS.js} +1 -1
  104. package/dist-cli-web/assets/{index-BZpR015e.css → index-XC-s67UA.css} +1 -1
  105. package/dist-cli-web/assets/{index-Chh0gCp7.js → index-fhyFEtxF.js} +1 -1
  106. package/dist-cli-web/assets/{index-C-u3l4Uh.js → index-sMeHjrc9.js} +1 -1
  107. package/dist-cli-web/assets/{people-page-header-CKXRSnpl.js → people-page-header-DPOKmbHG.js} +1 -1
  108. package/dist-cli-web/assets/{prompt-DNxAd1Bj.js → prompt-ipERjPzE.js} +1 -1
  109. package/dist-cli-web/assets/{semantic-index-config-builder-CQ27G4TK.js → semantic-index-config-builder-CjJ4q8PF.js} +1 -1
  110. package/dist-cli-web/assets/service-2UJZvVpa.js +1 -0
  111. package/dist-cli-web/assets/{service-BwbGKwDn.js → service-CAdsM9Hy.js} +1 -1
  112. package/dist-cli-web/assets/service-i_PJfTaR.js +1 -0
  113. package/dist-cli-web/assets/useFormControl-BPt9mIxj.js +1 -0
  114. package/dist-cli-web/assets/{useInsightTabAnalytics-DaU_ADbQ.js → useInsightTabAnalytics-s3wcN9Eo.js} +4 -4
  115. package/dist-cli-web/assets/{useTable-BYXxnZMd.js → useTable-DOM-gqX0.js} +1 -1
  116. package/dist-cli-web/assets/{useToast-DPkgv34s.js → useToast-BzK6i1Tk.js} +1 -1
  117. package/dist-cli-web/assets/{webworkerAll-Um4PrCaA.js → webworkerAll-ClkzpxNT.js} +1 -1
  118. package/dist-cli-web/index.html +2 -2
  119. package/package.json +1 -1
  120. package/dist/chunk-ZOHSWBD2.mjs.map +0 -1
  121. package/dist-cli-web/assets/index-GNMlsoVH.js +0 -137
  122. package/dist-cli-web/assets/service-DQjyjQZx.js +0 -1
  123. package/dist-cli-web/assets/service-Dtve_40X.js +0 -1
  124. package/dist-cli-web/assets/useFormControl-CNmp_2bd.js +0 -1
  125. /package/dist/{chat-command-RQC44FPF.mjs.map → chat-command-DJKSQP6Y.mjs.map} +0 -0
  126. /package/dist/{chunk-E6IRRNBQ.mjs.map → chunk-3K7F2SRZ.mjs.map} +0 -0
  127. /package/dist/{chunk-GDKQKHJT.mjs.map → chunk-ARRFRJOH.mjs.map} +0 -0
  128. /package/dist/{chunk-HJWBFHNR.mjs.map → chunk-D6BRSG3V.mjs.map} +0 -0
  129. /package/dist/{chunk-4FAEB4C2.mjs.map → chunk-DJ7QEJNO.mjs.map} +0 -0
  130. /package/dist/{chunk-O57SQSCO.mjs.map → chunk-JWWWLW5G.mjs.map} +0 -0
  131. /package/dist/{chunk-5OA4QI3Q.mjs.map → chunk-NVW3ZCYD.mjs.map} +0 -0
  132. /package/dist/{chunk-LUENE6L7.mjs.map → chunk-OXRS2UPE.mjs.map} +0 -0
  133. /package/dist/{chunk-ZGXXAPLX.mjs.map → chunk-QP77JL6O.mjs.map} +0 -0
  134. /package/dist/{chunk-E2ZFGNZQ.mjs.map → chunk-VCKF7RYB.mjs.map} +0 -0
  135. /package/dist/{chunk-IMJVOODY.mjs.map → chunk-YPP3N2AX.mjs.map} +0 -0
  136. /package/dist/{http-QJDZKDNJ.mjs.map → http-O4AZUIOD.mjs.map} +0 -0
  137. /package/dist/{import-XK6YM26A.mjs.map → import-IALJQB7V.mjs.map} +0 -0
  138. /package/dist/{mcp-DMGZFSYN.mjs.map → mcp-VNBL4WMM.mjs.map} +0 -0
  139. /package/dist/{src-4AHJUFCW.mjs.map → src-6ICLBMOR.mjs.map} +0 -0
  140. /package/dist/{stream-import-7VQVT5ST.mjs.map → stream-import-NKQYYSGZ.mjs.map} +0 -0
  141. /package/dist/{worker-runtime-PQBAV75N.mjs.map → worker-runtime-AE2I6U2G.mjs.map} +0 -0
@@ -1 +1 @@
1
- import{d as G,a6 as Q,ap as H,K as z,x as J,o as u,f as N,aa as W,w as V,a as n,n as A,z as S,a7 as X,p as f,g as p,a8 as Y,aq as Z,c as h,F as ee,j as te,l as U,a9 as M,e as j,b as C,L as se,G as L}from"./index-bQ9oj54q.js";import{u as ae}from"./useToast-DPkgv34s.js";const oe={class:"p-6"},ne={class:"mb-4 flex items-center justify-between"},re={class:"flex items-center gap-3"},le={class:"text-lg font-semibold text-gray-900 dark:text-white"},ie={class:"text-sm text-gray-500 dark:text-gray-400"},ce={class:"h-56 overflow-y-auto rounded-lg border border-gray-200 dark:border-gray-700"},ue={key:0,class:"flex h-full items-center justify-center"},de={key:1,class:"flex h-full items-center justify-center"},fe={class:"text-sm text-gray-500 dark:text-gray-400"},me={key:2,class:"divide-y divide-gray-100 dark:divide-gray-800"},ve=["onClick"],pe=["src","alt"],he={key:1,class:"flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-linear-to-br from-gray-300 to-gray-400 text-xs font-medium text-white dark:from-gray-600 dark:to-gray-700"},ye={class:"min-w-0 flex-1"},we={class:"truncate text-sm font-medium text-gray-900 dark:text-white"},ge={class:"truncate text-xs text-gray-500 dark:text-gray-400"},_e={class:"mt-3 text-xs text-gray-500 dark:text-gray-400"},xe={key:0,class:"mt-2"},ke={class:"mt-5 flex items-center justify-between gap-2"},Ie={key:1},be={class:"flex gap-2"},Oe=G({__name:"OwnerPromptModal",props:{sessionId:{},modelValue:{type:Boolean,default:!1},chatType:{default:"group"},autoCheck:{type:Boolean,default:!1}},emits:["update:modelValue","saved","cleared"],setup(y,{emit:c}){const e=y,w=c,{t:a}=Q(),g=ae(),m=H(),i=j({get:()=>e.modelValue,set:t=>w("update:modelValue",t)}),o=C([]),s=C(!1),r=C(!1),P=C(!1),x=C(""),v=C(null),_=j(()=>m.sessions.find(t=>t.id===e.sessionId)?.ownerId??null);function k(t){return t.groupNickname||t.accountName||t.platformId}const O=j(()=>{const t=x.value.trim().toLowerCase(),I=o.value.filter(d=>d.platformId&&d.platformId.trim()!=="");return t?I.filter(d=>[d.platformId,d.accountName??"",d.groupNickname??"",...d.aliases].some(b=>b.toLowerCase().includes(t))):I});async function R(){if(e.sessionId){s.value=!0;try{o.value=await se().getMembers(e.sessionId)}catch(t){console.error("加载成员列表失败:",t)}finally{s.value=!1}}}async function B(){if(!(!e.sessionId||!e.autoCheck)&&!_.value)try{const t=await m.tryApplyOwnerProfile(e.sessionId);if(t.applied||t.reason==="already_set"||t.reason==="missing_session"||t.excluded)return;i.value=!0}catch(t){console.error("检查会话 owner 失败:",t)}}async function $(){if(!(!v.value||!e.sessionId)){r.value=!0;try{const t=await m.setOwnerAndApplyProfile(e.sessionId,v.value);t.updatedSessionIds.length>0?g.success(a("members.ownerPrompt.saved"),{description:a("members.ownerPrompt.appliedToOthers",{count:t.updatedSessionIds.length})}):g.success(a("members.ownerPrompt.saved")),w("saved",t.ownerId),i.value=!1}catch(t){console.error("设置会话 owner 失败:",t),g.fail(a("members.ownerPrompt.saveFailed"))}finally{r.value=!1}}}async function F(){if(!(!e.sessionId||!_.value)){r.value=!0;try{await m.updateSessionOwnerId(e.sessionId,null)&&(v.value=null,w("cleared"),i.value=!1)}catch(t){console.error("清除会话 owner 失败:",t)}finally{r.value=!1}}}async function K(){if(e.sessionId){P.value=!0;try{await m.excludeOwnerSession(e.sessionId),i.value=!1}catch(t){console.error("忽略 owner 提醒失败:",t)}finally{P.value=!1}}}function D(){i.value=!1}function T(){x.value="",v.value=_.value,o.value=[],R()}return z(i,t=>{t&&T()},{immediate:!0}),z(()=>e.sessionId,()=>{i.value&&T(),B()}),J(()=>{B()}),(t,I)=>{const d=X,b=Y,q=Z,E=W;return u(),N(E,{open:i.value,"onUpdate:open":I[1]||(I[1]=l=>i.value=l),ui:{content:"max-w-md z-[111]",overlay:"z-[110]"}},{content:V(()=>[n("div",oe,[n("div",ne,[n("div",re,[n("div",{class:A(["flex h-10 w-10 items-center justify-center rounded-full bg-linear-to-br",y.chatType==="group"?"from-pink-400 to-pink-600":"from-purple-400 to-purple-600"])},[S(d,{name:"i-heroicons-user",class:"h-5 w-5 text-white"})],2),n("div",null,[n("h3",le,f(p(a)("members.ownerPrompt.title")),1),n("p",ie,f(p(a)("members.ownerPrompt.subtitle")),1)])]),S(b,{icon:"i-heroicons-x-mark",color:"neutral",variant:"ghost",size:"sm",onClick:D})]),S(q,{modelValue:x.value,"onUpdate:modelValue":I[0]||(I[0]=l=>x.value=l),placeholder:p(a)("members.ownerPrompt.searchPlaceholder"),icon:"i-heroicons-magnifying-glass",class:"mb-3 w-full"},null,8,["modelValue","placeholder"]),n("div",ce,[s.value?(u(),h("div",ue,[S(d,{name:"i-heroicons-arrow-path",class:"h-5 w-5 animate-spin text-gray-400"})])):O.value.length===0?(u(),h("div",de,[n("p",fe,f(x.value?p(a)("members.ownerPrompt.noMatch"):p(a)("members.ownerPrompt.empty")),1)])):(u(),h("ul",me,[(u(!0),h(ee,null,te(O.value,l=>(u(),h("li",{key:l.id},[n("button",{type:"button",class:A(["flex w-full items-center gap-3 px-3 py-2 text-left hover:bg-gray-50 dark:hover:bg-gray-800/50",v.value===l.platformId?"bg-primary-50 dark:bg-primary-900/20":""]),onClick:Se=>v.value=l.platformId},[l.avatar?(u(),h("img",{key:0,src:l.avatar,alt:k(l),class:"h-8 w-8 shrink-0 rounded-full object-cover"},null,8,pe)):(u(),h("div",he,f(k(l).slice(0,1)),1)),n("div",ye,[n("p",we,f(k(l)),1),n("p",ge,f(l.platformId),1)]),v.value===l.platformId?(u(),N(d,{key:2,name:"i-heroicons-check-circle-solid",class:"h-5 w-5 shrink-0 text-primary-500"})):U("",!0)],10,ve)]))),128))]))]),n("p",_e,f(p(a)("members.ownerPrompt.description")),1),_.value?(u(),h("div",xe,[S(b,{variant:"link",color:"neutral",size:"xs",disabled:r.value,onClick:F},{default:V(()=>[M(f(p(a)("members.ownerPrompt.clear")),1)]),_:1},8,["disabled"])])):U("",!0),n("div",ke,[_.value?(u(),h("span",Ie)):(u(),N(b,{key:0,variant:"soft",color:"primary",size:"sm",loading:P.value,onClick:K},{default:V(()=>[M(f(p(a)("members.ownerPrompt.notInConversation")),1)]),_:1},8,["loading"])),n("div",be,[S(b,{variant:"ghost",color:"neutral",onClick:D},{default:V(()=>[M(f(p(a)("members.ownerPrompt.later")),1)]),_:1}),S(b,{color:"primary",loading:r.value,disabled:!v.value,onClick:$},{default:V(()=>[M(f(p(a)("members.ownerPrompt.save")),1)]),_:1},8,["loading","disabled"])])])])]),_:1},8,["open"])}}});function Ve(y={}){const c=y.initialState??{field:null,direction:null},e=L({...c});function w(o){if(e.value.field!==o){e.value={field:o,direction:"asc"};return}if(e.value.direction==="asc"){e.value={field:o,direction:"desc"};return}if(e.value.direction==="desc"){e.value={field:null,direction:null};return}e.value={field:o,direction:"asc"}}function a(o,s){e.value={field:o,direction:s}}function g(){e.value={...c}}function m(o){return e.value.field===o?e.value.direction:null}function i(o,s){return m(o)===s}return{sortState:e,toggleSort:w,setSort:a,resetSort:g,getSortDirection:m,isSortActive:i}}function Me(y){const c=L(new Set),e=C(null);z(y.rows,()=>{e.value=null});function w(s){c.value=new Set(s)}function a(){w([]),e.value=null}function g(s){const r=new Set(c.value);r.has(s)?r.delete(s):r.add(s),c.value=r}function m(s){return c.value.has(s)}function i(s,r,P){if(P.shiftKey&&e.value!==null){const x=Math.min(e.value,s),v=Math.max(e.value,s),_=new Set(c.value);for(let k=x;k<=v;k+=1){const O=y.rows.value[k];O&&_.add(y.getRowId(O))}c.value=_}else g(r);e.value=s}function o(s){!s.shiftKey||s.target?.closest?.('input, textarea, [contenteditable="true"]')||s.preventDefault()}return{selectedIds:c,setSelection:w,clearSelection:a,toggleSelection:g,isSelected:m,handleRowClick:i,handleRowMouseDown:o}}export{Oe as _,Me as a,Ve as u};
1
+ import{d as G,a6 as Q,ap as H,K as z,x as J,o as u,f as N,aa as W,w as V,a as n,n as A,z as S,a7 as X,p as f,g as p,a8 as Y,aq as Z,c as h,F as ee,j as te,l as U,a9 as M,e as j,b as C,L as se,G as L}from"./index-D07viL9P.js";import{u as ae}from"./useToast-BzK6i1Tk.js";const oe={class:"p-6"},ne={class:"mb-4 flex items-center justify-between"},re={class:"flex items-center gap-3"},le={class:"text-lg font-semibold text-gray-900 dark:text-white"},ie={class:"text-sm text-gray-500 dark:text-gray-400"},ce={class:"h-56 overflow-y-auto rounded-lg border border-gray-200 dark:border-gray-700"},ue={key:0,class:"flex h-full items-center justify-center"},de={key:1,class:"flex h-full items-center justify-center"},fe={class:"text-sm text-gray-500 dark:text-gray-400"},me={key:2,class:"divide-y divide-gray-100 dark:divide-gray-800"},ve=["onClick"],pe=["src","alt"],he={key:1,class:"flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-linear-to-br from-gray-300 to-gray-400 text-xs font-medium text-white dark:from-gray-600 dark:to-gray-700"},ye={class:"min-w-0 flex-1"},we={class:"truncate text-sm font-medium text-gray-900 dark:text-white"},ge={class:"truncate text-xs text-gray-500 dark:text-gray-400"},_e={class:"mt-3 text-xs text-gray-500 dark:text-gray-400"},xe={key:0,class:"mt-2"},ke={class:"mt-5 flex items-center justify-between gap-2"},Ie={key:1},be={class:"flex gap-2"},Oe=G({__name:"OwnerPromptModal",props:{sessionId:{},modelValue:{type:Boolean,default:!1},chatType:{default:"group"},autoCheck:{type:Boolean,default:!1}},emits:["update:modelValue","saved","cleared"],setup(y,{emit:c}){const e=y,w=c,{t:a}=Q(),g=ae(),m=H(),i=j({get:()=>e.modelValue,set:t=>w("update:modelValue",t)}),o=C([]),s=C(!1),r=C(!1),P=C(!1),x=C(""),v=C(null),_=j(()=>m.sessions.find(t=>t.id===e.sessionId)?.ownerId??null);function k(t){return t.groupNickname||t.accountName||t.platformId}const O=j(()=>{const t=x.value.trim().toLowerCase(),I=o.value.filter(d=>d.platformId&&d.platformId.trim()!=="");return t?I.filter(d=>[d.platformId,d.accountName??"",d.groupNickname??"",...d.aliases].some(b=>b.toLowerCase().includes(t))):I});async function R(){if(e.sessionId){s.value=!0;try{o.value=await se().getMembers(e.sessionId)}catch(t){console.error("加载成员列表失败:",t)}finally{s.value=!1}}}async function B(){if(!(!e.sessionId||!e.autoCheck)&&!_.value)try{const t=await m.tryApplyOwnerProfile(e.sessionId);if(t.applied||t.reason==="already_set"||t.reason==="missing_session"||t.excluded)return;i.value=!0}catch(t){console.error("检查会话 owner 失败:",t)}}async function $(){if(!(!v.value||!e.sessionId)){r.value=!0;try{const t=await m.setOwnerAndApplyProfile(e.sessionId,v.value);t.updatedSessionIds.length>0?g.success(a("members.ownerPrompt.saved"),{description:a("members.ownerPrompt.appliedToOthers",{count:t.updatedSessionIds.length})}):g.success(a("members.ownerPrompt.saved")),w("saved",t.ownerId),i.value=!1}catch(t){console.error("设置会话 owner 失败:",t),g.fail(a("members.ownerPrompt.saveFailed"))}finally{r.value=!1}}}async function F(){if(!(!e.sessionId||!_.value)){r.value=!0;try{await m.updateSessionOwnerId(e.sessionId,null)&&(v.value=null,w("cleared"),i.value=!1)}catch(t){console.error("清除会话 owner 失败:",t)}finally{r.value=!1}}}async function K(){if(e.sessionId){P.value=!0;try{await m.excludeOwnerSession(e.sessionId),i.value=!1}catch(t){console.error("忽略 owner 提醒失败:",t)}finally{P.value=!1}}}function D(){i.value=!1}function T(){x.value="",v.value=_.value,o.value=[],R()}return z(i,t=>{t&&T()},{immediate:!0}),z(()=>e.sessionId,()=>{i.value&&T(),B()}),J(()=>{B()}),(t,I)=>{const d=X,b=Y,q=Z,E=W;return u(),N(E,{open:i.value,"onUpdate:open":I[1]||(I[1]=l=>i.value=l),ui:{content:"max-w-md z-[111]",overlay:"z-[110]"}},{content:V(()=>[n("div",oe,[n("div",ne,[n("div",re,[n("div",{class:A(["flex h-10 w-10 items-center justify-center rounded-full bg-linear-to-br",y.chatType==="group"?"from-pink-400 to-pink-600":"from-purple-400 to-purple-600"])},[S(d,{name:"i-heroicons-user",class:"h-5 w-5 text-white"})],2),n("div",null,[n("h3",le,f(p(a)("members.ownerPrompt.title")),1),n("p",ie,f(p(a)("members.ownerPrompt.subtitle")),1)])]),S(b,{icon:"i-heroicons-x-mark",color:"neutral",variant:"ghost",size:"sm",onClick:D})]),S(q,{modelValue:x.value,"onUpdate:modelValue":I[0]||(I[0]=l=>x.value=l),placeholder:p(a)("members.ownerPrompt.searchPlaceholder"),icon:"i-heroicons-magnifying-glass",class:"mb-3 w-full"},null,8,["modelValue","placeholder"]),n("div",ce,[s.value?(u(),h("div",ue,[S(d,{name:"i-heroicons-arrow-path",class:"h-5 w-5 animate-spin text-gray-400"})])):O.value.length===0?(u(),h("div",de,[n("p",fe,f(x.value?p(a)("members.ownerPrompt.noMatch"):p(a)("members.ownerPrompt.empty")),1)])):(u(),h("ul",me,[(u(!0),h(ee,null,te(O.value,l=>(u(),h("li",{key:l.id},[n("button",{type:"button",class:A(["flex w-full items-center gap-3 px-3 py-2 text-left hover:bg-gray-50 dark:hover:bg-gray-800/50",v.value===l.platformId?"bg-primary-50 dark:bg-primary-900/20":""]),onClick:Se=>v.value=l.platformId},[l.avatar?(u(),h("img",{key:0,src:l.avatar,alt:k(l),class:"h-8 w-8 shrink-0 rounded-full object-cover"},null,8,pe)):(u(),h("div",he,f(k(l).slice(0,1)),1)),n("div",ye,[n("p",we,f(k(l)),1),n("p",ge,f(l.platformId),1)]),v.value===l.platformId?(u(),N(d,{key:2,name:"i-heroicons-check-circle-solid",class:"h-5 w-5 shrink-0 text-primary-500"})):U("",!0)],10,ve)]))),128))]))]),n("p",_e,f(p(a)("members.ownerPrompt.description")),1),_.value?(u(),h("div",xe,[S(b,{variant:"link",color:"neutral",size:"xs",disabled:r.value,onClick:F},{default:V(()=>[M(f(p(a)("members.ownerPrompt.clear")),1)]),_:1},8,["disabled"])])):U("",!0),n("div",ke,[_.value?(u(),h("span",Ie)):(u(),N(b,{key:0,variant:"soft",color:"primary",size:"sm",loading:P.value,onClick:K},{default:V(()=>[M(f(p(a)("members.ownerPrompt.notInConversation")),1)]),_:1},8,["loading"])),n("div",be,[S(b,{variant:"ghost",color:"neutral",onClick:D},{default:V(()=>[M(f(p(a)("members.ownerPrompt.later")),1)]),_:1}),S(b,{color:"primary",loading:r.value,disabled:!v.value,onClick:$},{default:V(()=>[M(f(p(a)("members.ownerPrompt.save")),1)]),_:1},8,["loading","disabled"])])])])]),_:1},8,["open"])}}});function Ve(y={}){const c=y.initialState??{field:null,direction:null},e=L({...c});function w(o){if(e.value.field!==o){e.value={field:o,direction:"asc"};return}if(e.value.direction==="asc"){e.value={field:o,direction:"desc"};return}if(e.value.direction==="desc"){e.value={field:null,direction:null};return}e.value={field:o,direction:"asc"}}function a(o,s){e.value={field:o,direction:s}}function g(){e.value={...c}}function m(o){return e.value.field===o?e.value.direction:null}function i(o,s){return m(o)===s}return{sortState:e,toggleSort:w,setSort:a,resetSort:g,getSortDirection:m,isSortActive:i}}function Me(y){const c=L(new Set),e=C(null);z(y.rows,()=>{e.value=null});function w(s){c.value=new Set(s)}function a(){w([]),e.value=null}function g(s){const r=new Set(c.value);r.has(s)?r.delete(s):r.add(s),c.value=r}function m(s){return c.value.has(s)}function i(s,r,P){if(P.shiftKey&&e.value!==null){const x=Math.min(e.value,s),v=Math.max(e.value,s),_=new Set(c.value);for(let k=x;k<=v;k+=1){const O=y.rows.value[k];O&&_.add(y.getRowId(O))}c.value=_}else g(r);e.value=s}function o(s){!s.shiftKey||s.target?.closest?.('input, textarea, [contenteditable="true"]')||s.preventDefault()}return{selectedIds:c,setSelection:w,clearSelection:a,toggleSelection:g,isSelected:m,handleRowClick:i,handleRowMouseDown:o}}export{Oe as _,Me as a,Ve as u};
@@ -1 +1 @@
1
- import{a4 as c}from"./index-bQ9oj54q.js";const t=2e3;function e(){const a=c(),s=o=>a.add({duration:t,...o});return{add:s,success:(o,r={})=>s({title:o,color:"success",...r}),fail:(o,r={})=>s({title:o,color:"error",...r}),info:(o,r={})=>s({title:o,color:"primary",...r}),warn:(o,r={})=>s({title:o,color:"warning",...r})}}export{e as u};
1
+ import{a4 as c}from"./index-D07viL9P.js";const t=2e3;function e(){const a=c(),s=o=>a.add({duration:t,...o});return{add:s,success:(o,r={})=>s({title:o,color:"success",...r}),fail:(o,r={})=>s({title:o,color:"error",...r}),info:(o,r={})=>s({title:o,color:"primary",...r}),warn:(o,r={})=>s({title:o,color:"warning",...r})}}export{e as u};
@@ -1,4 +1,4 @@
1
- import{M as w,f as B,O,ar as A,a0 as k,j as _,G as M,b as U,N as E,I as z,a1 as T,T as b,ak as V,R as Y,w as X,r as P}from"./RelationshipGalaxyCanvas-BO5-MowG.js";import{F as q}from"./Filter-Duzxgudo.js";import"./index-bQ9oj54q.js";import"./vendor-snapdom--nZvo8Sg.js";import"./index-CN9WMxb3.js";import"./Tabs-DJ5p8gb6.js";import"./RovingFocusItem-FpYwYEP_.js";import"./useToast-DPkgv34s.js";import"./LoadingState.vue_vue_type_script_setup_true_lang-uF54r-dT.js";import"./people-page-header-CKXRSnpl.js";import"./relationship-galaxy-connections-Cg4G5yYE.js";import"./relationship-galaxy-viewport-Cwfa51ER.js";const v=new w;function G(g,e){e.clear();const t=e.matrix;for(let r=0;r<g.length;r++){const i=g[r];if(i.globalDisplayStatus<7)continue;const s=i.renderGroup??i.parentRenderGroup;s?.isCachedAsTexture?e.matrix=v.copyFrom(s.textureOffsetInverseTransform).append(i.worldTransform):s?._parentCacheAsTextureRenderGroup?e.matrix=v.copyFrom(s._parentCacheAsTextureRenderGroup.inverseWorldTransform).append(i.groupTransform):e.matrix=i.worldTransform,e.addBounds(i.bounds)}return e.matrix=t,e}function y(g){return typeof g.getCanvasFilterString=="function"}class L{constructor(){this.skip=!1,this.useClip=!1,this.filters=null,this.container=null,this.bounds=new k,this.cssFilterString=""}}class R{constructor(e){this._filterStack=[],this._filterStackIndex=0,this._savedStates=[],this._alphaMultiplier=1,this._warnedFilterTypes=new Set,this.renderer=e}push(e){const t=this._pushFilterFrame(),r=e.filterEffect.filters;if(t.skip=!1,t.useClip=!1,t.filters=r,t.container=e.container,t.cssFilterString="",r.every(o=>!o.enabled)){t.skip=!0;return}const i=[],s=1;for(const o of r){if(!o.enabled)continue;if(!y(o)){this._warnUnsupportedFilter(o);continue}const l=o.getCanvasFilterString();if(l===null){this._warnUnsupportedFilter(o);continue}l&&i.push(l)}if(i.length===0&&s===1){t.skip=!0;return}t.cssFilterString=i.join(" "),this._calculateFilterArea(e,t.bounds),t.useClip=!!e.filterEffect.filterArea;const n=this.renderer.canvasContext.activeContext,a=n.filter||"none";if(this._savedStates.push({filter:a,alphaMultiplier:this._alphaMultiplier}),t.useClip&&Number.isFinite(t.bounds.width)&&Number.isFinite(t.bounds.height)&&t.bounds.width>0&&t.bounds.height>0){const o=this.renderer.canvasContext.activeResolution||1;n.save(),n.setTransform(1,0,0,1,0,0),n.beginPath(),n.rect(t.bounds.x*o,t.bounds.y*o,t.bounds.width*o,t.bounds.height*o),n.clip()}else t.useClip=!1;t.cssFilterString&&(n.filter=a!=="none"?`${a} ${t.cssFilterString}`:t.cssFilterString)}pop(){const e=this._popFilterFrame();if(e.skip)return;const t=this._savedStates.pop();if(!t)return;const r=this.renderer.canvasContext.activeContext;e.useClip?r.restore():r.filter=t.filter,this._alphaMultiplier=t.alphaMultiplier}generateFilteredTexture({texture:e,filters:t}){if(!t?.length||t.every(d=>!d.enabled))return e;const r=[],i=1;for(const d of t){if(!d.enabled)continue;if(!y(d)){this._warnUnsupportedFilter(d);continue}const h=d.getCanvasFilterString();if(h===null){this._warnUnsupportedFilter(d);continue}h&&r.push(h)}if(r.length===0&&i===1)return e;const s=B.getCanvasSource(e);if(!s)return e;const n=e.frame,a=e.source._resolution??e.source.resolution??1,o=n.width,l=n.height,f=O.getOptimalCanvasAndContext(o,l,a),{canvas:c,context:u}=f;u.setTransform(1,0,0,1,0,0),u.clearRect(0,0,c.width,c.height),r.length&&(u.filter=r.join(" "));const p=n.x*a,m=n.y*a,x=o*a,F=l*a;return u.drawImage(s,p,m,x,F,0,0,x,F),u.filter="none",u.globalAlpha=1,A(c,o,l,a)}_calculateFilterArea(e,t){if(e.renderables?G(e.renderables,t):e.filterEffect.filterArea?(t.clear(),t.addRect(e.filterEffect.filterArea),t.applyMatrix(e.container.worldTransform)):e.container.getFastGlobalBounds(!0,t),e.container){const i=(e.container.renderGroup||e.container.parentRenderGroup)?.cacheToLocalTransform;i&&t.applyMatrix(i)}}_warnUnsupportedFilter(e){const t=e?.constructor?.name||"Filter";this._warnedFilterTypes.has(t)||(this._warnedFilterTypes.add(t),console.warn(`CanvasRenderer: filter "${t}" is not supported in Canvas2D and will be skipped.`))}get alphaMultiplier(){return this._alphaMultiplier}_pushFilterFrame(){let e=this._filterStack[this._filterStackIndex];return e||(e=this._filterStack[this._filterStackIndex]=new L),this._filterStackIndex++,e}_popFilterFrame(){return this._filterStackIndex<=0?this._filterStack[0]:(this._filterStackIndex--,this._filterStack[this._filterStackIndex])}destroy(){this._filterStack=null,this._savedStates=null,this._warnedFilterTypes=null,this._alphaMultiplier=1}}R.extension={type:[_.CanvasSystem],name:"filter"};var W=`in vec2 aPosition;
1
+ import{M as w,f as B,O,ar as A,a0 as k,j as _,G as M,b as U,N as E,I as z,a1 as T,T as b,ak as V,R as Y,w as X,r as P}from"./RelationshipGalaxyCanvas-Bzh-vQI8.js";import{F as q}from"./Filter-Tmam9FK9.js";import"./index-D07viL9P.js";import"./vendor-snapdom--nZvo8Sg.js";import"./index-DD7RFB6N.js";import"./Tabs-B0DXvZn9.js";import"./RovingFocusItem-BAQO8BlG.js";import"./useToast-BzK6i1Tk.js";import"./LoadingState.vue_vue_type_script_setup_true_lang-DH0zYa8f.js";import"./people-page-header-DPOKmbHG.js";import"./relationship-galaxy-connections-Cg4G5yYE.js";import"./relationship-galaxy-viewport-Cwfa51ER.js";const v=new w;function G(g,e){e.clear();const t=e.matrix;for(let r=0;r<g.length;r++){const i=g[r];if(i.globalDisplayStatus<7)continue;const s=i.renderGroup??i.parentRenderGroup;s?.isCachedAsTexture?e.matrix=v.copyFrom(s.textureOffsetInverseTransform).append(i.worldTransform):s?._parentCacheAsTextureRenderGroup?e.matrix=v.copyFrom(s._parentCacheAsTextureRenderGroup.inverseWorldTransform).append(i.groupTransform):e.matrix=i.worldTransform,e.addBounds(i.bounds)}return e.matrix=t,e}function y(g){return typeof g.getCanvasFilterString=="function"}class L{constructor(){this.skip=!1,this.useClip=!1,this.filters=null,this.container=null,this.bounds=new k,this.cssFilterString=""}}class R{constructor(e){this._filterStack=[],this._filterStackIndex=0,this._savedStates=[],this._alphaMultiplier=1,this._warnedFilterTypes=new Set,this.renderer=e}push(e){const t=this._pushFilterFrame(),r=e.filterEffect.filters;if(t.skip=!1,t.useClip=!1,t.filters=r,t.container=e.container,t.cssFilterString="",r.every(o=>!o.enabled)){t.skip=!0;return}const i=[],s=1;for(const o of r){if(!o.enabled)continue;if(!y(o)){this._warnUnsupportedFilter(o);continue}const l=o.getCanvasFilterString();if(l===null){this._warnUnsupportedFilter(o);continue}l&&i.push(l)}if(i.length===0&&s===1){t.skip=!0;return}t.cssFilterString=i.join(" "),this._calculateFilterArea(e,t.bounds),t.useClip=!!e.filterEffect.filterArea;const n=this.renderer.canvasContext.activeContext,a=n.filter||"none";if(this._savedStates.push({filter:a,alphaMultiplier:this._alphaMultiplier}),t.useClip&&Number.isFinite(t.bounds.width)&&Number.isFinite(t.bounds.height)&&t.bounds.width>0&&t.bounds.height>0){const o=this.renderer.canvasContext.activeResolution||1;n.save(),n.setTransform(1,0,0,1,0,0),n.beginPath(),n.rect(t.bounds.x*o,t.bounds.y*o,t.bounds.width*o,t.bounds.height*o),n.clip()}else t.useClip=!1;t.cssFilterString&&(n.filter=a!=="none"?`${a} ${t.cssFilterString}`:t.cssFilterString)}pop(){const e=this._popFilterFrame();if(e.skip)return;const t=this._savedStates.pop();if(!t)return;const r=this.renderer.canvasContext.activeContext;e.useClip?r.restore():r.filter=t.filter,this._alphaMultiplier=t.alphaMultiplier}generateFilteredTexture({texture:e,filters:t}){if(!t?.length||t.every(d=>!d.enabled))return e;const r=[],i=1;for(const d of t){if(!d.enabled)continue;if(!y(d)){this._warnUnsupportedFilter(d);continue}const h=d.getCanvasFilterString();if(h===null){this._warnUnsupportedFilter(d);continue}h&&r.push(h)}if(r.length===0&&i===1)return e;const s=B.getCanvasSource(e);if(!s)return e;const n=e.frame,a=e.source._resolution??e.source.resolution??1,o=n.width,l=n.height,f=O.getOptimalCanvasAndContext(o,l,a),{canvas:c,context:u}=f;u.setTransform(1,0,0,1,0,0),u.clearRect(0,0,c.width,c.height),r.length&&(u.filter=r.join(" "));const p=n.x*a,m=n.y*a,x=o*a,F=l*a;return u.drawImage(s,p,m,x,F,0,0,x,F),u.filter="none",u.globalAlpha=1,A(c,o,l,a)}_calculateFilterArea(e,t){if(e.renderables?G(e.renderables,t):e.filterEffect.filterArea?(t.clear(),t.addRect(e.filterEffect.filterArea),t.applyMatrix(e.container.worldTransform)):e.container.getFastGlobalBounds(!0,t),e.container){const i=(e.container.renderGroup||e.container.parentRenderGroup)?.cacheToLocalTransform;i&&t.applyMatrix(i)}}_warnUnsupportedFilter(e){const t=e?.constructor?.name||"Filter";this._warnedFilterTypes.has(t)||(this._warnedFilterTypes.add(t),console.warn(`CanvasRenderer: filter "${t}" is not supported in Canvas2D and will be skipped.`))}get alphaMultiplier(){return this._alphaMultiplier}_pushFilterFrame(){let e=this._filterStack[this._filterStackIndex];return e||(e=this._filterStack[this._filterStackIndex]=new L),this._filterStackIndex++,e}_popFilterFrame(){return this._filterStackIndex<=0?this._filterStack[0]:(this._filterStackIndex--,this._filterStack[this._filterStackIndex])}destroy(){this._filterStack=null,this._savedStates=null,this._warnedFilterTypes=null,this._alphaMultiplier=1}}R.extension={type:[_.CanvasSystem],name:"filter"};var W=`in vec2 aPosition;
2
2
  out vec2 vTextureCoord;
3
3
 
4
4
  uniform vec4 uInputSize;
@@ -5,9 +5,9 @@
5
5
  <title>ChatLab</title>
6
6
  <!-- https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP -->
7
7
  <link rel="icon" href="/favicon.ico" />
8
- <script type="module" crossorigin src="/assets/index-bQ9oj54q.js"></script>
8
+ <script type="module" crossorigin src="/assets/index-D07viL9P.js"></script>
9
9
  <link rel="modulepreload" crossorigin href="/assets/vendor-snapdom--nZvo8Sg.js">
10
- <link rel="stylesheet" crossorigin href="/assets/index-BZpR015e.css">
10
+ <link rel="stylesheet" crossorigin href="/assets/index-XC-s67UA.css">
11
11
  </head>
12
12
 
13
13
  <body>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "chatlab-cli",
3
- "version": "0.37.3",
3
+ "version": "0.37.4",
4
4
  "description": "ChatLab CLI & Service - Chat history analysis tool",
5
5
  "type": "module",
6
6
  "bin": {