@xpert-ai/chatkit-ui 0.3.0 → 0.3.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.
Files changed (337) hide show
  1. package/dist/app/assets/{_baseUniq-lX452MAQ.js → _baseUniq-DxHYvQh5.js} +1 -1
  2. package/dist/app/assets/{abap-gZkopi4F.js → abap-DVajZIEh.js} +1 -1
  3. package/dist/app/assets/{abnf-VMKH7Hc3.js → abnf-46NjTOlf.js} +1 -1
  4. package/dist/app/assets/{actionscript-aQCxCiw_.js → actionscript-CQpj0cg3.js} +1 -1
  5. package/dist/app/assets/{ada-Dc7AfCCm.js → ada-C-kX0zii.js} +1 -1
  6. package/dist/app/assets/{agda-DWZgUpC5.js → agda-CCA_JAgT.js} +1 -1
  7. package/dist/app/assets/{al-CO_9B9lG.js → al-Dnw0hERO.js} +1 -1
  8. package/dist/app/assets/{antlr4-WZaEDMQb.js → antlr4-vIL0hfzJ.js} +1 -1
  9. package/dist/app/assets/{apacheconf-D86MZlbl.js → apacheconf-CsWzUs9D.js} +1 -1
  10. package/dist/app/assets/{apex-Bo9DZc9U.js → apex-QViHF4AC.js} +1 -1
  11. package/dist/app/assets/{apl-CKvY1B3D.js → apl-J2xZukMp.js} +1 -1
  12. package/dist/app/assets/{applescript-C20sAjFT.js → applescript-B3WjGs4M.js} +1 -1
  13. package/dist/app/assets/{aql-Q0v8Nk3u.js → aql-NAU-bvN_.js} +1 -1
  14. package/dist/app/assets/{arc-DK-lzIsz.js → arc-B8hwrBK1.js} +1 -1
  15. package/dist/app/assets/{architectureDiagram-Q4EWVU46-As6A1NCe.js → architectureDiagram-Q4EWVU46-CpVpAf2q.js} +1 -1
  16. package/dist/app/assets/{arduino-BiuyMBbG.js → arduino-CHYJARcG.js} +1 -1
  17. package/dist/app/assets/{arff-CNkbVVzu.js → arff-DqAcq_Jd.js} +1 -1
  18. package/dist/app/assets/{asciidoc-BkzgEUXf.js → asciidoc-DXFN4u3C.js} +1 -1
  19. package/dist/app/assets/{asm6502-QGeBmTJy.js → asm6502-yvmvLNPw.js} +1 -1
  20. package/dist/app/assets/{asmatmel-BpLbiWjL.js → asmatmel-BNt_bXxW.js} +1 -1
  21. package/dist/app/assets/{aspnet-D3wdfwGX.js → aspnet-BMD5jkWc.js} +1 -1
  22. package/dist/app/assets/{autohotkey-DHyy-5TZ.js → autohotkey-CHZS5zbL.js} +1 -1
  23. package/dist/app/assets/{autoit-XcEZF4dU.js → autoit-DLLmQkuM.js} +1 -1
  24. package/dist/app/assets/{avisynth-gNRE3tU7.js → avisynth-C8BxdbSe.js} +1 -1
  25. package/dist/app/assets/{avro-idl-Dgep4UKK.js → avro-idl-C6pwRw5e.js} +1 -1
  26. package/dist/app/assets/{bash-BAG3m259.js → bash-CMOTacbo.js} +1 -1
  27. package/dist/app/assets/{basic-BxrEI_fK.js → basic-TZKBsQ-m.js} +1 -1
  28. package/dist/app/assets/{batch-J6ytHEFj.js → batch-CaE8zhSL.js} +1 -1
  29. package/dist/app/assets/{bbcode-BT1lTDE2.js → bbcode-DcenEstk.js} +1 -1
  30. package/dist/app/assets/{bicep-BypbiVUU.js → bicep-M0WBFGSH.js} +1 -1
  31. package/dist/app/assets/{birb-D3wvqOQv.js → birb-EkEU1ZCa.js} +1 -1
  32. package/dist/app/assets/{bison-D7BCh_Eb.js → bison-M-w8qpdO.js} +1 -1
  33. package/dist/app/assets/{blockDiagram-DXYQGD6D-DQ3qSzlH.js → blockDiagram-DXYQGD6D-Cb71R9Wk.js} +1 -1
  34. package/dist/app/assets/{bnf-a7eHbjgi.js → bnf-BnYdZYNM.js} +1 -1
  35. package/dist/app/assets/{brainfuck-DjGpaoTf.js → brainfuck-BjHrlOp6.js} +1 -1
  36. package/dist/app/assets/{brightscript-DIQmp459.js → brightscript-D2KWeGkG.js} +1 -1
  37. package/dist/app/assets/{bro-DnFXS9GN.js → bro-Cm3J_z1e.js} +1 -1
  38. package/dist/app/assets/{bsl-BSUZbWFh.js → bsl-aaIhCboX.js} +1 -1
  39. package/dist/app/assets/{c-DXBgEU7Z.js → c-Cromo6GX.js} +1 -1
  40. package/dist/app/assets/{c4Diagram-AHTNJAMY-k6xA6WEJ.js → c4Diagram-AHTNJAMY-CzSUyxD_.js} +1 -1
  41. package/dist/app/assets/{cfscript-46wzM6rl.js → cfscript-DjqhIng2.js} +1 -1
  42. package/dist/app/assets/{chaiscript-KsPmzO5D.js → chaiscript-Vo_Ts9eo.js} +1 -1
  43. package/dist/app/assets/channel-B4rIZFfB.js +1 -0
  44. package/dist/app/assets/{chunk-4BX2VUAB-CJqGZwHR.js → chunk-4BX2VUAB-aAUlAQil.js} +1 -1
  45. package/dist/app/assets/{chunk-4TB4RGXK-C_BNMjyo.js → chunk-4TB4RGXK-8S_2Lm6g.js} +1 -1
  46. package/dist/app/assets/{chunk-55IACEB6-D3WNN3Ra.js → chunk-55IACEB6-Dz5quBWg.js} +1 -1
  47. package/dist/app/assets/{chunk-EDXVE4YY-ZQR5cNyF.js → chunk-EDXVE4YY-BhH3k95q.js} +1 -1
  48. package/dist/app/assets/{chunk-FMBD7UC4-CsUUeatk.js → chunk-FMBD7UC4-BYUrcbwm.js} +1 -1
  49. package/dist/app/assets/{chunk-OYMX7WX6-BfC1NUL6.js → chunk-OYMX7WX6-DTytW7cJ.js} +1 -1
  50. package/dist/app/assets/{chunk-QZHKN3VN-CkOZl4MV.js → chunk-QZHKN3VN-DCg0fs-A.js} +1 -1
  51. package/dist/app/assets/{chunk-YZCP3GAM-Dr-QmZua.js → chunk-YZCP3GAM-Ck9WxSs5.js} +1 -1
  52. package/dist/app/assets/{cil-Md5L4xLR.js → cil-Dy9yDCJC.js} +1 -1
  53. package/dist/app/assets/classDiagram-6PBFFD2Q-BOgbMClZ.js +1 -0
  54. package/dist/app/assets/classDiagram-v2-HSJHXN6E-BOgbMClZ.js +1 -0
  55. package/dist/app/assets/{clike-VxCbt93Q.js → clike-B3pqz2AZ.js} +1 -1
  56. package/dist/app/assets/{clojure-ejHNRl1l.js → clojure-DVRtvSwX.js} +1 -1
  57. package/dist/app/assets/clone-Bdj7TN-g.js +1 -0
  58. package/dist/app/assets/{cmake-BgrMzJZh.js → cmake-13muG7rK.js} +1 -1
  59. package/dist/app/assets/{cobol-Bll2T8f1.js → cobol-Jbr347RJ.js} +1 -1
  60. package/dist/app/assets/{coffeescript-B_p1np8F.js → coffeescript-B3DOm1Ne.js} +1 -1
  61. package/dist/app/assets/{concurnas-CMYY6SB9.js → concurnas-CNySoRHf.js} +1 -1
  62. package/dist/app/assets/{coq-ClxxtIcC.js → coq-K-m5AUlH.js} +1 -1
  63. package/dist/app/assets/{core-Bj_xwvdQ.js → core-BPN6CWxM.js} +1 -1
  64. package/dist/app/assets/{cose-bilkent-S5V4N54A-B2_2Z4Vb.js → cose-bilkent-S5V4N54A-Dr0iADox.js} +1 -1
  65. package/dist/app/assets/{cpp-BiIjUvZ5.js → cpp-BCnzQvRU.js} +1 -1
  66. package/dist/app/assets/{crystal-D7sLwnll.js → crystal-PCOcWoSI.js} +1 -1
  67. package/dist/app/assets/{csharp-rfKJeYoP.js → csharp-8stZQY6C.js} +1 -1
  68. package/dist/app/assets/{cshtml-BTJWUpDQ.js → cshtml-DoI3CcDS.js} +1 -1
  69. package/dist/app/assets/{csp-BRgS-RE2.js → csp-BKUbys7F.js} +1 -1
  70. package/dist/app/assets/{css-zB7NhY84.js → css-0jn1p1e6.js} +1 -1
  71. package/dist/app/assets/{css-extras-DC0mgjcV.js → css-extras-BjUA2auB.js} +1 -1
  72. package/dist/app/assets/{csv-xNiGnf8p.js → csv-ChtyJ7Mw.js} +1 -1
  73. package/dist/app/assets/{cypher-D4kMW339.js → cypher-BSoDMy4m.js} +1 -1
  74. package/dist/app/assets/{d-Di8uWWH7.js → d-CAzhRG-Z.js} +1 -1
  75. package/dist/app/assets/{dagre-KV5264BT-CmK7fd4u.js → dagre-KV5264BT-BSVO3dNV.js} +1 -1
  76. package/dist/app/assets/{dart-FqqyXgLb.js → dart-C8bLX20e.js} +1 -1
  77. package/dist/app/assets/{dataweave-Cs1O7AJX.js → dataweave-Dmo6CZIu.js} +1 -1
  78. package/dist/app/assets/{dax-KB1BM7bV.js → dax-CmqnMRUH.js} +1 -1
  79. package/dist/app/assets/{dhall-DCTKp_3z.js → dhall-QKB0WE21.js} +1 -1
  80. package/dist/app/assets/{diagram-5BDNPKRD-BURjCouV.js → diagram-5BDNPKRD-r0Fz26nD.js} +1 -1
  81. package/dist/app/assets/{diagram-G4DWMVQ6-KllsGFmM.js → diagram-G4DWMVQ6-tVV9XZ9V.js} +1 -1
  82. package/dist/app/assets/{diagram-MMDJMWI5-laXUA2ZB.js → diagram-MMDJMWI5-B9rbYdY4.js} +1 -1
  83. package/dist/app/assets/{diagram-TYMM5635-M318vg34.js → diagram-TYMM5635-Dsm73wxz.js} +1 -1
  84. package/dist/app/assets/{diff-Pk_9ieTM.js → diff-PAv23eqQ.js} +1 -1
  85. package/dist/app/assets/{django-CFddaD9b.js → django-BIrl2Lvz.js} +1 -1
  86. package/dist/app/assets/{dns-zone-file-CmJSUcOI.js → dns-zone-file-ClLpdqMT.js} +1 -1
  87. package/dist/app/assets/{docker-fcG0bqun.js → docker-BDozNG3x.js} +1 -1
  88. package/dist/app/assets/{dot-BjaVrB7m.js → dot-I-WZKdgb.js} +1 -1
  89. package/dist/app/assets/{ebnf-DGfhioyM.js → ebnf-DkRUuKnr.js} +1 -1
  90. package/dist/app/assets/{editorconfig-DcSrQyzA.js → editorconfig-BmLG6Etr.js} +1 -1
  91. package/dist/app/assets/{eiffel-CoqFMLud.js → eiffel-Bm2GdSQ2.js} +1 -1
  92. package/dist/app/assets/{ejs-DeMPIqcF.js → ejs-C48N5ZIG.js} +1 -1
  93. package/dist/app/assets/{elixir-B_POc7g4.js → elixir-CdyVGNb8.js} +1 -1
  94. package/dist/app/assets/{elm-BFuCeY0z.js → elm-CkQhPVjT.js} +1 -1
  95. package/dist/app/assets/{erDiagram-SMLLAGMA-B-J0diCA.js → erDiagram-SMLLAGMA-Hyk82Vhv.js} +1 -1
  96. package/dist/app/assets/{erb-si3E3dUV.js → erb-BX1eAGBM.js} +1 -1
  97. package/dist/app/assets/{erlang-Ddy__LPP.js → erlang-Czbnuk55.js} +1 -1
  98. package/dist/app/assets/{etlua-4IXEXuVr.js → etlua-i8hW4tPr.js} +1 -1
  99. package/dist/app/assets/{excel-formula-Dk4CR3Yn.js → excel-formula-CyZOfUTa.js} +1 -1
  100. package/dist/app/assets/{factor-BkDLfQbw.js → factor-AjGk3DF8.js} +1 -1
  101. package/dist/app/assets/{false-BRTKo7ez.js → false-GhEvxGmO.js} +1 -1
  102. package/dist/app/assets/{firestore-security-rules-D_EusYXy.js → firestore-security-rules-BjwnXyDp.js} +1 -1
  103. package/dist/app/assets/{flow-CHzlA5yh.js → flow-h4-WME33.js} +1 -1
  104. package/dist/app/assets/{flowDiagram-DWJPFMVM-DiweDkZz.js → flowDiagram-DWJPFMVM-BHEn2Y5w.js} +1 -1
  105. package/dist/app/assets/{fortran-CYNESaR9.js → fortran-8lcbfijs.js} +1 -1
  106. package/dist/app/assets/{fsharp-NUsx2bG8.js → fsharp-x47H8jRh.js} +1 -1
  107. package/dist/app/assets/{ftl-bQJ0p1-M.js → ftl-DBidAr07.js} +1 -1
  108. package/dist/app/assets/{ganttDiagram-T4ZO3ILL-SVOd2ZjE.js → ganttDiagram-T4ZO3ILL-eZ852Es7.js} +1 -1
  109. package/dist/app/assets/{gap-BQJEDCIC.js → gap-gWkYaxLH.js} +1 -1
  110. package/dist/app/assets/{gcode-BrKlJ6fk.js → gcode-C-XTnxAD.js} +1 -1
  111. package/dist/app/assets/{gdscript-B8lXC579.js → gdscript-D4fLzJ7v.js} +1 -1
  112. package/dist/app/assets/{gedcom-DiZpNcIN.js → gedcom-D1MSjhRT.js} +1 -1
  113. package/dist/app/assets/{gherkin-u_ZFpNjN.js → gherkin-BO4O8Wru.js} +1 -1
  114. package/dist/app/assets/{git-DoOz0Ktu.js → git-ClZL4XcF.js} +1 -1
  115. package/dist/app/assets/{gitGraphDiagram-UUTBAWPF-C984Vn0t.js → gitGraphDiagram-UUTBAWPF-C8frR-gR.js} +1 -1
  116. package/dist/app/assets/{glsl-Bs8RMbFr.js → glsl-BqI-_xG4.js} +1 -1
  117. package/dist/app/assets/{gml-BcBcelB5.js → gml-0_OiiWgt.js} +1 -1
  118. package/dist/app/assets/{gn-CaTP9yrC.js → gn-D1DB4wuu.js} +1 -1
  119. package/dist/app/assets/{go-CKDjw0i5.js → go-DRI0xPfv.js} +1 -1
  120. package/dist/app/assets/{go-module-Dbcb9drk.js → go-module-BPPYgWaf.js} +1 -1
  121. package/dist/app/assets/{graph-Chm-7PyJ.js → graph-jtjuwIYJ.js} +1 -1
  122. package/dist/app/assets/{graphql-0_L_TXLB.js → graphql-B8Ir2w1r.js} +1 -1
  123. package/dist/app/assets/{groovy-BkDh1u52.js → groovy-CmNBOym9.js} +1 -1
  124. package/dist/app/assets/{haml-DQ-LVjjg.js → haml-Bj89_11G.js} +1 -1
  125. package/dist/app/assets/{handlebars-NRhlB2nS.js → handlebars-bpf-b1uX.js} +1 -1
  126. package/dist/app/assets/{haskell-DHC_gBTw.js → haskell-BmbX5r9j.js} +1 -1
  127. package/dist/app/assets/{haxe-tEBlGBlK.js → haxe-KC1m6Yfs.js} +1 -1
  128. package/dist/app/assets/{hcl-BHo9iBBj.js → hcl-CauJ5syT.js} +1 -1
  129. package/dist/app/assets/{hlsl-ClE0N_Vx.js → hlsl-E3IzTavQ.js} +1 -1
  130. package/dist/app/assets/{hoon-Cda9dhK_.js → hoon-DYduWlDF.js} +1 -1
  131. package/dist/app/assets/{hpkp-Bp6_x60i.js → hpkp-CPZobS10.js} +1 -1
  132. package/dist/app/assets/{hsts-Djl3JRc8.js → hsts-CdUv0r9h.js} +1 -1
  133. package/dist/app/assets/{http-CVkvp4-x.js → http-UkfqLxHn.js} +1 -1
  134. package/dist/app/assets/{ichigojam-Cppytidq.js → ichigojam-BXaYi-NN.js} +1 -1
  135. package/dist/app/assets/{icon-C34-QMcW.js → icon-DVY6xV3b.js} +1 -1
  136. package/dist/app/assets/{icu-message-format-Y_JfEO8f.js → icu-message-format-CvZ8c2Q6.js} +1 -1
  137. package/dist/app/assets/{idris-DaU9JJf5.js → idris-BzuUwcAy.js} +1 -1
  138. package/dist/app/assets/{iecst-CxWXOeLW.js → iecst-CIwIsrrB.js} +1 -1
  139. package/dist/app/assets/{ignore-BbOoUJdf.js → ignore-CE_RoV3v.js} +1 -1
  140. package/dist/app/assets/{index-DiAjhyZq.css → index-Cbwlowa6.css} +1 -1
  141. package/dist/app/assets/{index-ymMwuJsf.js → index-K4ACjQ4z.js} +171 -171
  142. package/dist/app/assets/{infoDiagram-42DDH7IO-CHNb6taf.js → infoDiagram-42DDH7IO-jLRXuR7y.js} +1 -1
  143. package/dist/app/assets/{inform7-BDX8VhTQ.js → inform7-2Ky29vPV.js} +1 -1
  144. package/dist/app/assets/{ini-9wU82qZJ.js → ini-pzovWlWw.js} +1 -1
  145. package/dist/app/assets/{io-CwWXtWa9.js → io-DbXj-2n3.js} +1 -1
  146. package/dist/app/assets/{ishikawaDiagram-UXIWVN3A-CGglACCd.js → ishikawaDiagram-UXIWVN3A-CqnaMA1B.js} +1 -1
  147. package/dist/app/assets/{j-CPMI44bk.js → j-BTi0-Ndk.js} +1 -1
  148. package/dist/app/assets/{java-C4i6l9gR.js → java-D3h3eulz.js} +1 -1
  149. package/dist/app/assets/{javadoc-T3ifKgYG.js → javadoc-BcY94P5A.js} +1 -1
  150. package/dist/app/assets/{javadoclike-AggNrc4g.js → javadoclike-B-oibrTg.js} +1 -1
  151. package/dist/app/assets/{javascript-lSKDGXTk.js → javascript-BO58mIYT.js} +1 -1
  152. package/dist/app/assets/{javastacktrace-Y16gyqNF.js → javastacktrace-D4LNuQQI.js} +1 -1
  153. package/dist/app/assets/{jexl-Bo72UAip.js → jexl-BYTP-082.js} +1 -1
  154. package/dist/app/assets/{jolie-DKz_0seL.js → jolie-DT19e3xU.js} +1 -1
  155. package/dist/app/assets/{journeyDiagram-VCZTEJTY-DGqIstdm.js → journeyDiagram-VCZTEJTY-CcMgjqdN.js} +1 -1
  156. package/dist/app/assets/{jq-DCzqUUNO.js → jq-BKWCQVpC.js} +1 -1
  157. package/dist/app/assets/{js-extras-CZY3EvzU.js → js-extras-DpgaBeGa.js} +1 -1
  158. package/dist/app/assets/{js-templates-Dru6DAjB.js → js-templates-xh0zMX88.js} +1 -1
  159. package/dist/app/assets/{jsdoc-BlePeJxo.js → jsdoc-C-GvvPlU.js} +1 -1
  160. package/dist/app/assets/{json-BOAbOGKN.js → json-B-VU32ZP.js} +1 -1
  161. package/dist/app/assets/{json5-CCGjFvgH.js → json5-ghPj_aB9.js} +1 -1
  162. package/dist/app/assets/{jsonp-DqZyYBPg.js → jsonp-CA6i5De0.js} +1 -1
  163. package/dist/app/assets/{jsstacktrace-CQmXJVre.js → jsstacktrace-C7QFMHEB.js} +1 -1
  164. package/dist/app/assets/{jsx-Dw-FQpCK.js → jsx-nL-WQ214.js} +1 -1
  165. package/dist/app/assets/{julia-C7HL27Md.js → julia-Be5ZIobg.js} +1 -1
  166. package/dist/app/assets/{kanban-definition-6JOO6SKY-DiCadGus.js → kanban-definition-6JOO6SKY-Cq35Qt7t.js} +1 -1
  167. package/dist/app/assets/{keepalived-DXqMOn51.js → keepalived-D6qmVKo9.js} +1 -1
  168. package/dist/app/assets/{keyman-Bp9PD3Tz.js → keyman-DnTqkRT5.js} +1 -1
  169. package/dist/app/assets/{kotlin-DZ9Ie0gk.js → kotlin-DB6tjcPY.js} +1 -1
  170. package/dist/app/assets/{kumir-DRRbg1pP.js → kumir-BjeRoKMR.js} +1 -1
  171. package/dist/app/assets/{kusto-BeVGxJH6.js → kusto-kCMj8FOy.js} +1 -1
  172. package/dist/app/assets/{latex-BF4aJKrE.js → latex-BISFNoUQ.js} +1 -1
  173. package/dist/app/assets/{latte-BStXKgae.js → latte-B_3smOZu.js} +1 -1
  174. package/dist/app/assets/{layout-BgBCUpWL.js → layout-UzqCfMri.js} +1 -1
  175. package/dist/app/assets/{less-lPu1lE1m.js → less-qcoyfYC_.js} +1 -1
  176. package/dist/app/assets/{lilypond-BfXR0l7O.js → lilypond-BGKf1i8c.js} +1 -1
  177. package/dist/app/assets/{linear-Bo9BIEME.js → linear-C8-0wxbN.js} +1 -1
  178. package/dist/app/assets/{liquid-2x0wGZMJ.js → liquid-VrWadSAy.js} +1 -1
  179. package/dist/app/assets/{lisp-DiLJFr-l.js → lisp-BTjWqNUW.js} +1 -1
  180. package/dist/app/assets/{livescript-BjaOHA5j.js → livescript-vNFWwp4N.js} +1 -1
  181. package/dist/app/assets/{llvm-Ob7JmRXi.js → llvm-WK7Im8Mx.js} +1 -1
  182. package/dist/app/assets/{log-CWfEUBHz.js → log-DMYT40mt.js} +1 -1
  183. package/dist/app/assets/{lolcode-nF9mrCFS.js → lolcode-CXH2FuUZ.js} +1 -1
  184. package/dist/app/assets/{lua-BVcNRhA8.js → lua-DTO5WHxq.js} +1 -1
  185. package/dist/app/assets/{magma-CaeU9kjL.js → magma-C6sMADdo.js} +1 -1
  186. package/dist/app/assets/{makefile-DNeWgnPN.js → makefile-MHxAMV3D.js} +1 -1
  187. package/dist/app/assets/{markdown-1BG9nloe.js → markdown-DdIbK-8L.js} +1 -1
  188. package/dist/app/assets/{markup-Bt5ZMEau.js → markup-BpeZ9wWy.js} +1 -1
  189. package/dist/app/assets/{markup-templating-BxhrVXJ_.js → markup-templating-XqCbme63.js} +1 -1
  190. package/dist/app/assets/{matlab-BZ3_IER5.js → matlab-CHbXjcdv.js} +1 -1
  191. package/dist/app/assets/{maxscript-DLjkflyE.js → maxscript-BRuyQF1I.js} +1 -1
  192. package/dist/app/assets/{mel-wVg2DQyw.js → mel-BcIjgiPy.js} +1 -1
  193. package/dist/app/assets/{mermaid-BZwlkMd1.js → mermaid-BwSr1PTU.js} +1 -1
  194. package/dist/app/assets/{min-BsBJUJE4.js → min-0Lnqk-bR.js} +1 -1
  195. package/dist/app/assets/{mindmap-definition-QFDTVHPH-68hODMON.js → mindmap-definition-QFDTVHPH-Czt6NaQN.js} +1 -1
  196. package/dist/app/assets/{mizar-DH9yO98O.js → mizar-CJjkeZOv.js} +1 -1
  197. package/dist/app/assets/{mongodb-DmfDmuM3.js → mongodb-Bvun4Ap6.js} +1 -1
  198. package/dist/app/assets/{monkey-DVlxlNhi.js → monkey-DM3r0SVF.js} +1 -1
  199. package/dist/app/assets/{moonscript-GSddtQAI.js → moonscript-D3eFbTEw.js} +1 -1
  200. package/dist/app/assets/{n1ql-k_NE8hC3.js → n1ql-BZE9FAr-.js} +1 -1
  201. package/dist/app/assets/{n4js-BwDnFFd9.js → n4js-CCsMwPzQ.js} +1 -1
  202. package/dist/app/assets/{nand2tetris-hdl-Cn2lv5Ip.js → nand2tetris-hdl-CLHhLnG9.js} +1 -1
  203. package/dist/app/assets/{naniscript-B6_TjFgw.js → naniscript-FORkZo6J.js} +1 -1
  204. package/dist/app/assets/{nasm-DlU5KUhG.js → nasm-BVjxa0dX.js} +1 -1
  205. package/dist/app/assets/{neon-E_cS9Woo.js → neon-BerzZa9H.js} +1 -1
  206. package/dist/app/assets/{nevod-nczmxOic.js → nevod-C36hu5IO.js} +1 -1
  207. package/dist/app/assets/{nginx-DANx2MMx.js → nginx-DLJurC-F.js} +1 -1
  208. package/dist/app/assets/{nim-CqbwPVfg.js → nim-NwqzdBl9.js} +1 -1
  209. package/dist/app/assets/{nix-DesOtpHR.js → nix-BMYba5OL.js} +1 -1
  210. package/dist/app/assets/{nsis-C6ba6obD.js → nsis-Ujsj5qWO.js} +1 -1
  211. package/dist/app/assets/{objectivec-CKln2thf.js → objectivec-D9Q7nqP2.js} +1 -1
  212. package/dist/app/assets/{ocaml-Cqr8LLdp.js → ocaml-0Gb9yc-E.js} +1 -1
  213. package/dist/app/assets/{opencl-gKjcY9hT.js → opencl-d0g4CU-6.js} +1 -1
  214. package/dist/app/assets/{openqasm-CElExuVj.js → openqasm-DNBbFf10.js} +1 -1
  215. package/dist/app/assets/{oz-DiR07U4h.js → oz-DeAjfWVk.js} +1 -1
  216. package/dist/app/assets/{parigp-BqI_0Z4u.js → parigp-Cw6GMagO.js} +1 -1
  217. package/dist/app/assets/{parser-DQqffyku.js → parser-Ba1N4m09.js} +1 -1
  218. package/dist/app/assets/{pascal-BKqIDK3I.js → pascal-BljwjmQz.js} +1 -1
  219. package/dist/app/assets/{pascaligo-B_cza_Nk.js → pascaligo-VB7Esces.js} +1 -1
  220. package/dist/app/assets/{pcaxis-BBVjpPd3.js → pcaxis-DHF2QJXb.js} +1 -1
  221. package/dist/app/assets/{peoplecode-BrVfCrps.js → peoplecode-BQEEpmUe.js} +1 -1
  222. package/dist/app/assets/{perl-CslvbVgc.js → perl-DrBS0LCy.js} +1 -1
  223. package/dist/app/assets/{php-eLgUEO3u.js → php-D370JUMP.js} +1 -1
  224. package/dist/app/assets/{php-extras-DgrUF9-V.js → php-extras-CwDe0jZp.js} +1 -1
  225. package/dist/app/assets/{phpdoc-Bn_cU7Zt.js → phpdoc-CiOrW7MP.js} +1 -1
  226. package/dist/app/assets/{pieDiagram-DEJITSTG-B1V9XgH4.js → pieDiagram-DEJITSTG-BRjK7KVl.js} +1 -1
  227. package/dist/app/assets/{plsql-aZ5qAzIW.js → plsql-xdpA00BW.js} +1 -1
  228. package/dist/app/assets/{powerquery-6ut_0cg6.js → powerquery-jWWzzeeK.js} +1 -1
  229. package/dist/app/assets/{powershell-Cvn-M35X.js → powershell-8uimM5sM.js} +1 -1
  230. package/dist/app/assets/{processing-C0EqzVq5.js → processing-QSbqrBCn.js} +1 -1
  231. package/dist/app/assets/{prolog-DdbK-s1J.js → prolog-DL94VsoQ.js} +1 -1
  232. package/dist/app/assets/{promql-CKikllGH.js → promql-CzzP70Zz.js} +1 -1
  233. package/dist/app/assets/{properties-BoHmw-0e.js → properties-qQG5igrW.js} +1 -1
  234. package/dist/app/assets/{protobuf-DoS6EfWM.js → protobuf-BMTN4S9X.js} +1 -1
  235. package/dist/app/assets/{psl-ck7Quq6y.js → psl-D-6m76lq.js} +1 -1
  236. package/dist/app/assets/{pug-DCgLjPKy.js → pug-DuQ38-Bu.js} +1 -1
  237. package/dist/app/assets/{puppet-B95mBTDC.js → puppet-C9WbrmQV.js} +1 -1
  238. package/dist/app/assets/{pure-Br0PPEHg.js → pure-4TCyYwSK.js} +1 -1
  239. package/dist/app/assets/{purebasic-Bp0169Oo.js → purebasic-CFKj-9Sf.js} +1 -1
  240. package/dist/app/assets/{purescript-ChbDZRTl.js → purescript-C9U7bAYn.js} +1 -1
  241. package/dist/app/assets/{q-CZeqjghc.js → q-CvrKcy9d.js} +1 -1
  242. package/dist/app/assets/{qml-CnNXsAVp.js → qml-BW7AUG_7.js} +1 -1
  243. package/dist/app/assets/{qore-MQwj5SvP.js → qore-DRUD9M-d.js} +1 -1
  244. package/dist/app/assets/{qsharp-CWpN26mj.js → qsharp-D39YPxDq.js} +1 -1
  245. package/dist/app/assets/{quadrantDiagram-34T5L4WZ-BmQKs36f.js → quadrantDiagram-34T5L4WZ-DS1LrnIG.js} +1 -1
  246. package/dist/app/assets/{r-Be5_zxHj.js → r-CEg2k6Yb.js} +1 -1
  247. package/dist/app/assets/{racket-Bf9H-tPb.js → racket-DRPtpMsj.js} +1 -1
  248. package/dist/app/assets/{reason-BEWvE6-s.js → reason-B-qXU4Et.js} +1 -1
  249. package/dist/app/assets/{regex-COSoeExz.js → regex-CsSf1Cfz.js} +1 -1
  250. package/dist/app/assets/{rego-B4uJ_hTe.js → rego-VXXsVyGE.js} +1 -1
  251. package/dist/app/assets/{renpy-D8zzh_VA.js → renpy-DWC5VEN0.js} +1 -1
  252. package/dist/app/assets/{requirementDiagram-MS252O5E-Cm3XmRg8.js → requirementDiagram-MS252O5E-D1yFOIdt.js} +1 -1
  253. package/dist/app/assets/{rest-DCt1gQbM.js → rest-pDe65Ctt.js} +1 -1
  254. package/dist/app/assets/{rip-D5E1cO4r.js → rip-CorRnEGq.js} +1 -1
  255. package/dist/app/assets/{roboconf-CXthek4t.js → roboconf-X3eSl5BY.js} +1 -1
  256. package/dist/app/assets/{robotframework-Bdw0jnG0.js → robotframework-CLWOblVK.js} +1 -1
  257. package/dist/app/assets/{ruby-NqkRFUol.js → ruby-BhHizLUq.js} +1 -1
  258. package/dist/app/assets/{rust-zN9GD3GI.js → rust-KwCeAwDB.js} +1 -1
  259. package/dist/app/assets/{sankeyDiagram-XADWPNL6-W4KL5j5c.js → sankeyDiagram-XADWPNL6-CS4A3riG.js} +1 -1
  260. package/dist/app/assets/{sas-B3IGFzeA.js → sas-BmKpi8uz.js} +1 -1
  261. package/dist/app/assets/{sass-CEnmj2rr.js → sass-CLAJxgWV.js} +1 -1
  262. package/dist/app/assets/{scala-CqLqLLOW.js → scala-4qkXqdFC.js} +1 -1
  263. package/dist/app/assets/{scheme-yWLuYyef.js → scheme-CTDiZrIF.js} +1 -1
  264. package/dist/app/assets/{scss-BIFPPhWy.js → scss-DsALC5OO.js} +1 -1
  265. package/dist/app/assets/{sequenceDiagram-FGHM5R23-r8jD6iso.js → sequenceDiagram-FGHM5R23-DSBN2T81.js} +1 -1
  266. package/dist/app/assets/{shell-session-DcHzDIXT.js → shell-session-CqKsOgW8.js} +1 -1
  267. package/dist/app/assets/{smali-Cr_wFhaG.js → smali-CYK2pUFw.js} +1 -1
  268. package/dist/app/assets/{smalltalk-CNpu072c.js → smalltalk-DISzpnYr.js} +1 -1
  269. package/dist/app/assets/{smarty-DhCkEDm8.js → smarty-B918-r7L.js} +1 -1
  270. package/dist/app/assets/{sml-DKIjwhx1.js → sml-Bw6IzkGv.js} +1 -1
  271. package/dist/app/assets/{solidity-fxU-VywA.js → solidity-DEB3Gm9H.js} +1 -1
  272. package/dist/app/assets/{solution-file-BfORahuz.js → solution-file-D2zyqypa.js} +1 -1
  273. package/dist/app/assets/{soy-Cve0tQ-5.js → soy-CpF2ALZg.js} +1 -1
  274. package/dist/app/assets/{sparql-CabfHjCQ.js → sparql-Dqur228Z.js} +1 -1
  275. package/dist/app/assets/{splunk-spl-DZ9Ad-H7.js → splunk-spl-BO5UN_pw.js} +1 -1
  276. package/dist/app/assets/{sqf-DtxfqFGh.js → sqf-sPq7XmN4.js} +1 -1
  277. package/dist/app/assets/{sql-BVYVpk5v.js → sql-BBIgkG9I.js} +1 -1
  278. package/dist/app/assets/{squirrel-DnsbGi2l.js → squirrel-C3Y2wlu3.js} +1 -1
  279. package/dist/app/assets/{stan-D--0fkdm.js → stan-CkTG-keH.js} +1 -1
  280. package/dist/app/assets/{stateDiagram-FHFEXIEX-CAgHY22a.js → stateDiagram-FHFEXIEX-BYk7Q44w.js} +1 -1
  281. package/dist/app/assets/stateDiagram-v2-QKLJ7IA2-Dr657chO.js +1 -0
  282. package/dist/app/assets/{stylus-CfYWJ_cO.js → stylus-DP6fiucU.js} +1 -1
  283. package/dist/app/assets/{swift-DP--vkQ5.js → swift-BcIJhU7i.js} +1 -1
  284. package/dist/app/assets/{systemd-D0jMVoxw.js → systemd-Bj9qapvn.js} +1 -1
  285. package/dist/app/assets/{t4-cs-DHPo6f3I.js → t4-cs-BTnkg25r.js} +1 -1
  286. package/dist/app/assets/{t4-templating-6umIaX_o.js → t4-templating-DiW6oGqQ.js} +1 -1
  287. package/dist/app/assets/{t4-vb-CArQzxk3.js → t4-vb-UTyjg4tp.js} +1 -1
  288. package/dist/app/assets/{tap-DhJt0sWW.js → tap-Ed_xTklo.js} +1 -1
  289. package/dist/app/assets/{tcl-2F5RnBhP.js → tcl-Bk-ZoOG4.js} +1 -1
  290. package/dist/app/assets/{textile-CU31Sahi.js → textile-CZj_khpd.js} +1 -1
  291. package/dist/app/assets/{timeline-definition-GMOUNBTQ-rqCIcYA2.js → timeline-definition-GMOUNBTQ-CeAunyIF.js} +1 -1
  292. package/dist/app/assets/{toml-DQJkaZUW.js → toml-DYW5oVzI.js} +1 -1
  293. package/dist/app/assets/{tremor-BIlRIpbt.js → tremor-DqPTkwAU.js} +1 -1
  294. package/dist/app/assets/{tt2-B98Pk0Im.js → tt2-BD6llK6C.js} +1 -1
  295. package/dist/app/assets/{turtle-B6pKehBG.js → turtle-D_VxYd_W.js} +1 -1
  296. package/dist/app/assets/{twig-DYsTMffu.js → twig-Dp8VfvZl.js} +1 -1
  297. package/dist/app/assets/{typescript-BSIe5vlA.js → typescript-BflqNmQF.js} +1 -1
  298. package/dist/app/assets/{typoscript-BRyn3coF.js → typoscript-DtJO34ZB.js} +1 -1
  299. package/dist/app/assets/{unrealscript-Cab0Dmc7.js → unrealscript-C8jPXtsj.js} +1 -1
  300. package/dist/app/assets/{uorazor-D2BCp6s7.js → uorazor-CFPzPUXg.js} +1 -1
  301. package/dist/app/assets/{uri-CSpA9BKv.js → uri-DkdlxU1G.js} +1 -1
  302. package/dist/app/assets/{v-B25gPlUU.js → v-DTkby2kG.js} +1 -1
  303. package/dist/app/assets/{vala-mJSPH9gX.js → vala-CMDYTOwJ.js} +1 -1
  304. package/dist/app/assets/{vbnet-DIcvZSu4.js → vbnet-C_hZunWX.js} +1 -1
  305. package/dist/app/assets/{velocity-PLMPdAvL.js → velocity-CnCTb2IA.js} +1 -1
  306. package/dist/app/assets/{vennDiagram-DHZGUBPP-Bp4k68pV.js → vennDiagram-DHZGUBPP-RtCFamqG.js} +1 -1
  307. package/dist/app/assets/{verilog-BSOEqPFx.js → verilog-Czz1q-oU.js} +1 -1
  308. package/dist/app/assets/{vhdl-DyQFBvVR.js → vhdl-BdvfiRn7.js} +1 -1
  309. package/dist/app/assets/{vim-h_HVQhC2.js → vim-BAHRwEe_.js} +1 -1
  310. package/dist/app/assets/{visual-basic-M8p7UsuC.js → visual-basic-ncSLJSP6.js} +1 -1
  311. package/dist/app/assets/{wardley-RL74JXVD-Uu_wX9U3.js → wardley-RL74JXVD-CHg_zFkP.js} +1 -1
  312. package/dist/app/assets/{wardleyDiagram-NUSXRM2D-DPBiCRcK.js → wardleyDiagram-NUSXRM2D-Dqzg24WO.js} +1 -1
  313. package/dist/app/assets/{warpscript-BtDvkyLc.js → warpscript-DCQ764w0.js} +1 -1
  314. package/dist/app/assets/{wasm-r7gKU9qM.js → wasm-DljWD0od.js} +1 -1
  315. package/dist/app/assets/{web-idl-Da30KJkO.js → web-idl-CThAM-QS.js} +1 -1
  316. package/dist/app/assets/{wiki-CVsUGhCh.js → wiki-C3uvDTr2.js} +1 -1
  317. package/dist/app/assets/{wolfram-DXqfNk88.js → wolfram-WsMOhYXr.js} +1 -1
  318. package/dist/app/assets/{wren-CocIgyMY.js → wren-DZHglD0d.js} +1 -1
  319. package/dist/app/assets/{xeora-DLn8PzOU.js → xeora-CAu8qySL.js} +1 -1
  320. package/dist/app/assets/{xml-doc-DHaFMv8h.js → xml-doc-hgEvDErD.js} +1 -1
  321. package/dist/app/assets/{xojo-tZYY9Sxi.js → xojo-DaKqUssi.js} +1 -1
  322. package/dist/app/assets/{xquery-CFQ3SYWL.js → xquery-BHjeD6a0.js} +1 -1
  323. package/dist/app/assets/{xychartDiagram-5P7HB3ND-0a9EFUPt.js → xychartDiagram-5P7HB3ND-DT88cvNy.js} +1 -1
  324. package/dist/app/assets/{yaml-B_Neze7M.js → yaml-BIt0fEmx.js} +1 -1
  325. package/dist/app/assets/{yang-ChaN4AKh.js → yang-DXnDsOeM.js} +1 -1
  326. package/dist/app/assets/{zig-BvXDnoXQ.js → zig-DcqFuGKI.js} +1 -1
  327. package/dist/app/index.html +2 -2
  328. package/dist/index.cjs +199 -57
  329. package/dist/index.d.cts +5 -1
  330. package/dist/index.d.ts +5 -1
  331. package/dist/index.js +199 -57
  332. package/package.json +3 -3
  333. package/dist/app/assets/channel-ByK1S3DD.js +0 -1
  334. package/dist/app/assets/classDiagram-6PBFFD2Q-bIGveE9D.js +0 -1
  335. package/dist/app/assets/classDiagram-v2-HSJHXN6E-bIGveE9D.js +0 -1
  336. package/dist/app/assets/clone-CGhA6PF9.js +0 -1
  337. package/dist/app/assets/stateDiagram-v2-QKLJ7IA2-1yK0SXDF.js +0 -1
package/dist/index.js CHANGED
@@ -590,6 +590,7 @@ function ParentMessengerProvider({
590
590
  /* @__PURE__ */ new Map()
591
591
  );
592
592
  const onSetOptionsHandlersRef = useRef(/* @__PURE__ */ new Set());
593
+ const onSetPetEnabledHandlersRef = useRef(/* @__PURE__ */ new Set());
593
594
  const onSetComposerValueHandlersRef = useRef(
594
595
  /* @__PURE__ */ new Set()
595
596
  );
@@ -607,6 +608,15 @@ function ParentMessengerProvider({
607
608
  onSetOptionsHandlersRef.current.delete(handler);
608
609
  };
609
610
  }, []);
611
+ const registerOnSetPetEnabled = useCallback(
612
+ (handler) => {
613
+ onSetPetEnabledHandlersRef.current.add(handler);
614
+ return () => {
615
+ onSetPetEnabledHandlersRef.current.delete(handler);
616
+ };
617
+ },
618
+ []
619
+ );
610
620
  const registerOnSetComposerValue = useCallback(
611
621
  (handler) => {
612
622
  onSetComposerValueHandlersRef.current.add(handler);
@@ -749,6 +759,17 @@ function ParentMessengerProvider({
749
759
  }
750
760
  return;
751
761
  }
762
+ if (payload.type === "command" && payload.command === "onSetPetEnabled") {
763
+ const data = payload.data;
764
+ const enabled = data?.enabled === true;
765
+ onSetPetEnabledHandlersRef.current.forEach((handler2) => {
766
+ handler2(enabled);
767
+ });
768
+ if (payload.nonce) {
769
+ sendResponse(payload.nonce, { ok: true });
770
+ }
771
+ return;
772
+ }
752
773
  if (payload.type === "command" && payload.command === "onFocusComposer") {
753
774
  void Promise.all(
754
775
  [...onFocusComposerHandlersRef.current].map(
@@ -845,6 +866,7 @@ function ParentMessengerProvider({
845
866
  sendCommand,
846
867
  sendEvent,
847
868
  registerOnSetOptions,
869
+ registerOnSetPetEnabled,
848
870
  registerOnSetComposerValue,
849
871
  registerOnFocusComposer
850
872
  }),
@@ -853,6 +875,7 @@ function ParentMessengerProvider({
853
875
  sendCommand,
854
876
  sendEvent,
855
877
  registerOnSetOptions,
878
+ registerOnSetPetEnabled,
856
879
  registerOnSetComposerValue,
857
880
  registerOnFocusComposer
858
881
  ]
@@ -863,6 +886,7 @@ function ParentMessengerProvider({
863
886
  // src/hooks/useParentMessenger.tsx
864
887
  function useParentMessenger({
865
888
  onSetOptions,
889
+ onSetPetEnabled,
866
890
  onSetComposerValue,
867
891
  onFocusComposer
868
892
  } = {}) {
@@ -874,16 +898,21 @@ function useParentMessenger({
874
898
  }
875
899
  const {
876
900
  registerOnSetOptions,
901
+ registerOnSetPetEnabled,
877
902
  registerOnSetComposerValue,
878
903
  registerOnFocusComposer,
879
904
  ...messenger
880
905
  } = context;
881
906
  const onSetOptionsRef = useRef2(onSetOptions);
907
+ const onSetPetEnabledRef = useRef2(onSetPetEnabled);
882
908
  const onSetComposerValueRef = useRef2(onSetComposerValue);
883
909
  const onFocusComposerRef = useRef2(onFocusComposer);
884
910
  useEffect2(() => {
885
911
  onSetOptionsRef.current = onSetOptions;
886
912
  }, [onSetOptions]);
913
+ useEffect2(() => {
914
+ onSetPetEnabledRef.current = onSetPetEnabled;
915
+ }, [onSetPetEnabled]);
887
916
  useEffect2(() => {
888
917
  onSetComposerValueRef.current = onSetComposerValue;
889
918
  }, [onSetComposerValue]);
@@ -891,6 +920,7 @@ function useParentMessenger({
891
920
  onFocusComposerRef.current = onFocusComposer;
892
921
  }, [onFocusComposer]);
893
922
  const hasOnSetOptions = Boolean(onSetOptions);
923
+ const hasOnSetPetEnabled = Boolean(onSetPetEnabled);
894
924
  const hasOnSetComposerValue = Boolean(onSetComposerValue);
895
925
  const hasOnFocusComposer = Boolean(onFocusComposer);
896
926
  useEffect2(() => {
@@ -900,6 +930,13 @@ function useParentMessenger({
900
930
  };
901
931
  return registerOnSetOptions(handler);
902
932
  }, [hasOnSetOptions, registerOnSetOptions]);
933
+ useEffect2(() => {
934
+ if (!hasOnSetPetEnabled) return;
935
+ const handler = (enabled) => {
936
+ onSetPetEnabledRef.current?.(enabled);
937
+ };
938
+ return registerOnSetPetEnabled(handler);
939
+ }, [hasOnSetPetEnabled, registerOnSetPetEnabled]);
903
940
  useEffect2(() => {
904
941
  if (!hasOnSetComposerValue) return;
905
942
  const handler = (payload) => {
@@ -5545,14 +5582,14 @@ function formatUnknownMessageContent(content) {
5545
5582
  function getMessagePlainText(message) {
5546
5583
  return formatUnknownMessageContent(message.content).replace(/\s+/g, " ").trim();
5547
5584
  }
5548
- function findLatestMessageByType(messages, types) {
5585
+ function findLatestMessageMatchByType(messages, types) {
5549
5586
  for (let index = messages.length - 1; index >= 0; index -= 1) {
5550
5587
  const message = messages[index];
5551
5588
  if (!message) {
5552
5589
  continue;
5553
5590
  }
5554
5591
  if (types.includes(String(message.type))) {
5555
- return message;
5592
+ return { message, index };
5556
5593
  }
5557
5594
  }
5558
5595
  return null;
@@ -5567,6 +5604,21 @@ function truncateSummaryText(value, maxLength) {
5567
5604
  }
5568
5605
  return `${value.slice(0, Math.max(0, maxLength - 3)).trimEnd()}...`;
5569
5606
  }
5607
+ function normalizeThreadId(threadId) {
5608
+ const normalized = threadId?.trim();
5609
+ return normalized || null;
5610
+ }
5611
+ function getConversationSummarySourceKey(summary) {
5612
+ if (!summary) {
5613
+ return null;
5614
+ }
5615
+ return [
5616
+ summary.threadId,
5617
+ summary.messageId ?? "",
5618
+ summary.updatedAt ?? "",
5619
+ summary.message
5620
+ ].join("");
5621
+ }
5570
5622
  function buildConversationSummary({
5571
5623
  threadId,
5572
5624
  currentThread,
@@ -5580,22 +5632,33 @@ function buildConversationSummary({
5580
5632
  return null;
5581
5633
  }
5582
5634
  const errorMessage = threadErrorMessage?.trim();
5583
- const assistantMessage = findLatestMessageByType(messages, [
5635
+ const assistantMatch = findLatestMessageMatchByType(messages, [
5584
5636
  "assistant",
5585
5637
  "ai"
5586
5638
  ]);
5587
- if (!assistantMessage && !errorMessage) {
5639
+ const latestUserMatch = findLatestMessageMatchByType(messages, [
5640
+ "user",
5641
+ "human"
5642
+ ]);
5643
+ const assistantMessage = assistantMatch?.message;
5644
+ const latestUserMessage = latestUserMatch?.message;
5645
+ const assistantMessageText = assistantMessage ? getMessagePlainText(assistantMessage) : "";
5646
+ const latestUserMessageText = latestUserMessage ? getMessagePlainText(latestUserMessage) : "";
5647
+ const latestUserIsAfterAssistant = Boolean(
5648
+ latestUserMatch && (!assistantMatch || latestUserMatch.index > assistantMatch.index)
5649
+ );
5650
+ const shouldUseLatestUserMessage = Boolean(
5651
+ currentThreadIsRunning && latestUserMatch && latestUserMessageText && (latestUserIsAfterAssistant || !assistantMessageText)
5652
+ );
5653
+ const summaryMessage = shouldUseLatestUserMessage && latestUserMatch ? latestUserMatch.message : assistantMessageText ? assistantMessage : void 0;
5654
+ if (!summaryMessage && !errorMessage) {
5588
5655
  return null;
5589
5656
  }
5590
- const assistantMessageText = assistantMessage ? getMessagePlainText(assistantMessage) : "";
5591
- const message = errorMessage || assistantMessageText;
5657
+ const summaryMessageText = shouldUseLatestUserMessage ? latestUserMessageText : assistantMessageText;
5658
+ const message = errorMessage || summaryMessageText;
5592
5659
  if (!message) {
5593
5660
  return null;
5594
5661
  }
5595
- const latestUserMessage = findLatestMessageByType(messages, [
5596
- "user",
5597
- "human"
5598
- ]);
5599
5662
  const title = currentThread?.title?.trim() || (latestUserMessage ? truncateSummaryText(
5600
5663
  getMessagePlainText(latestUserMessage),
5601
5664
  CONVERSATION_SUMMARY_TITLE_FALLBACK_MAX_LENGTH
@@ -5606,8 +5669,8 @@ function buildConversationSummary({
5606
5669
  title,
5607
5670
  message,
5608
5671
  status,
5609
- ...assistantMessage && getMessageStringField(assistantMessage, "id") ? { messageId: getMessageStringField(assistantMessage, "id") } : {},
5610
- ...assistantMessage && getMessageStringField(assistantMessage, "updatedAt") ? { updatedAt: getMessageStringField(assistantMessage, "updatedAt") } : assistantMessage && getMessageStringField(assistantMessage, "createdAt") ? { updatedAt: getMessageStringField(assistantMessage, "createdAt") } : {}
5672
+ ...summaryMessage && getMessageStringField(summaryMessage, "id") ? { messageId: getMessageStringField(summaryMessage, "id") } : {},
5673
+ ...summaryMessage && getMessageStringField(summaryMessage, "updatedAt") ? { updatedAt: getMessageStringField(summaryMessage, "updatedAt") } : summaryMessage && getMessageStringField(summaryMessage, "createdAt") ? { updatedAt: getMessageStringField(summaryMessage, "createdAt") } : {}
5611
5674
  };
5612
5675
  }
5613
5676
  function useConversationSummaryEvent({
@@ -5617,6 +5680,7 @@ function useConversationSummaryEvent({
5617
5680
  currentThreadIsRunning,
5618
5681
  threadErrorMessage,
5619
5682
  messages,
5683
+ historyMessageLoadVersion = 0,
5620
5684
  fallbackTitle
5621
5685
  }) {
5622
5686
  const summary = React21.useMemo(
@@ -5639,18 +5703,57 @@ function useConversationSummaryEvent({
5639
5703
  ]
5640
5704
  );
5641
5705
  const sendParentEvent = parentMessenger?.sendEvent;
5706
+ const emissionStateRef = React21.useRef({
5707
+ threadId: null,
5708
+ historyMessageLoadVersion,
5709
+ baselineSourceKey: null,
5710
+ publishedSourceKey: null
5711
+ });
5642
5712
  React21.useEffect(() => {
5643
5713
  if (!sendParentEvent) {
5644
5714
  return;
5645
5715
  }
5646
- sendParentEvent("public_event", [
5647
- "log",
5648
- {
5649
- name: CONVERSATION_SUMMARY_LOG_NAME,
5650
- data: summary
5651
- }
5652
- ]);
5653
- }, [sendParentEvent, summary]);
5716
+ const normalizedThreadId = summary?.threadId ?? normalizeThreadId(threadId);
5717
+ const sourceKey = getConversationSummarySourceKey(summary);
5718
+ const state = emissionStateRef.current;
5719
+ const sendSummary = (data) => {
5720
+ sendParentEvent("public_event", [
5721
+ "log",
5722
+ {
5723
+ name: CONVERSATION_SUMMARY_LOG_NAME,
5724
+ data
5725
+ }
5726
+ ]);
5727
+ };
5728
+ if (state.threadId !== normalizedThreadId) {
5729
+ emissionStateRef.current = {
5730
+ threadId: normalizedThreadId,
5731
+ historyMessageLoadVersion,
5732
+ baselineSourceKey: sourceKey,
5733
+ publishedSourceKey: null
5734
+ };
5735
+ sendSummary(null);
5736
+ return;
5737
+ }
5738
+ if (state.historyMessageLoadVersion !== historyMessageLoadVersion) {
5739
+ state.historyMessageLoadVersion = historyMessageLoadVersion;
5740
+ state.baselineSourceKey = sourceKey;
5741
+ state.publishedSourceKey = null;
5742
+ sendSummary(null);
5743
+ return;
5744
+ }
5745
+ if (!summary || !sourceKey) {
5746
+ state.baselineSourceKey = null;
5747
+ state.publishedSourceKey = null;
5748
+ sendSummary(null);
5749
+ return;
5750
+ }
5751
+ if (!state.publishedSourceKey && state.baselineSourceKey === sourceKey) {
5752
+ return;
5753
+ }
5754
+ state.publishedSourceKey = sourceKey;
5755
+ sendSummary(summary);
5756
+ }, [historyMessageLoadVersion, sendParentEvent, summary, threadId]);
5654
5757
  return summary;
5655
5758
  }
5656
5759
 
@@ -7850,8 +7953,22 @@ var TOOL_GROUP_TOKEN_CATEGORY = {
7850
7953
  tools: "tools"
7851
7954
  };
7852
7955
  var TOOL_CALL_OUTPUT_RENDERERS = {};
7956
+ function normalizeStepCategory(category) {
7957
+ if (typeof category !== "string" || category.trim() === "") {
7958
+ return "Tool";
7959
+ }
7960
+ return category;
7961
+ }
7853
7962
  function getToolStepData(content) {
7854
- return content.data ?? {};
7963
+ const data = content.data ?? {};
7964
+ const category = normalizeStepCategory(data.category);
7965
+ if (category === data.category) {
7966
+ return data;
7967
+ }
7968
+ return {
7969
+ ...data,
7970
+ category
7971
+ };
7855
7972
  }
7856
7973
  function parseStepDate(value) {
7857
7974
  if (value instanceof Date) {
@@ -7941,7 +8058,7 @@ function isWidgetComponent(content) {
7941
8058
  }
7942
8059
  function isGroupableToolComponent(content) {
7943
8060
  if (!content || typeof content === "string") return false;
7944
- return isComponentContent(content) && !isWidgetComponent(content) && content.data?.category === "Tool";
8061
+ return isComponentContent(content) && !isWidgetComponent(content) && getToolStepData(content).category === "Tool";
7945
8062
  }
7946
8063
  function isSkippableToolGroupSeparator(content) {
7947
8064
  if (typeof content === "string") return !content.trim();
@@ -8000,15 +8117,20 @@ function getEffectiveToolGroupDisplayStatus(items, isThreadRunning) {
8000
8117
  }
8001
8118
  function getToolActivityLabel(content, language, statusOverride) {
8002
8119
  const data = getToolStepData(content);
8003
- const runningCandidates = [data.message, data.title, data.tool, data.type];
8004
- const completedCandidates = [data.title, data.message, data.tool, data.type];
8005
8120
  const status = statusOverride ?? data.status;
8006
- const candidates = status === "running" ? runningCandidates : completedCandidates;
8007
- for (const candidate of candidates) {
8008
- const label = resolveLocalizedText(candidate, language);
8009
- if (label) return label;
8121
+ const message = resolveLocalizedText(data.message, language);
8122
+ const title = resolveLocalizedText(data.title, language);
8123
+ const tool = resolveLocalizedText(data.tool, language);
8124
+ const type = resolveLocalizedText(data.type, language);
8125
+ if (status === "running") {
8126
+ return message ?? title ?? tool ?? type ?? "Tool";
8127
+ }
8128
+ const titleToken = normalizeToolToken(title);
8129
+ const genericTitle = titleToken !== null && [tool, type].map((candidate) => normalizeToolToken(candidate)).some((candidate) => candidate === titleToken);
8130
+ if (message && (!title || genericTitle)) {
8131
+ return message;
8010
8132
  }
8011
- return "Tool";
8133
+ return title ?? message ?? tool ?? type ?? "Tool";
8012
8134
  }
8013
8135
  function flushPendingTools(units, pendingTools) {
8014
8136
  if (pendingTools.length === 0) return;
@@ -8214,6 +8336,11 @@ function ToolStepIcon({
8214
8336
  usesToolsetAvatar,
8215
8337
  apiUrl
8216
8338
  );
8339
+ const iconUrl = createToolsetIconUrl(data.toolset, organizationId, apiUrl);
8340
+ const [failedIconUrl, setFailedIconUrl] = React28.useState(null);
8341
+ React28.useEffect(() => {
8342
+ setFailedIconUrl(null);
8343
+ }, [iconUrl]);
8217
8344
  if (avatar) {
8218
8345
  return /* @__PURE__ */ jsx31(
8219
8346
  ToolAvatarIcon,
@@ -8224,6 +8351,19 @@ function ToolStepIcon({
8224
8351
  }
8225
8352
  );
8226
8353
  }
8354
+ if (iconUrl && failedIconUrl !== iconUrl) {
8355
+ return /* @__PURE__ */ jsx31(
8356
+ "img",
8357
+ {
8358
+ alt: "",
8359
+ "aria-hidden": "true",
8360
+ className: cn("rounded-sm object-contain", className),
8361
+ "data-slot": "tool-step-icon",
8362
+ src: iconUrl,
8363
+ onError: () => setFailedIconUrl(iconUrl)
8364
+ }
8365
+ );
8366
+ }
8227
8367
  const TypeIcon = getStepTypeIcon(data.type);
8228
8368
  if (TypeIcon) {
8229
8369
  return /* @__PURE__ */ jsx31(
@@ -8256,19 +8396,6 @@ function ToolStepIcon({
8256
8396
  }
8257
8397
  );
8258
8398
  }
8259
- const iconUrl = createToolsetIconUrl(data.toolset, organizationId, apiUrl);
8260
- if (iconUrl) {
8261
- return /* @__PURE__ */ jsx31(
8262
- "img",
8263
- {
8264
- alt: "",
8265
- "aria-hidden": "true",
8266
- className: cn("rounded-sm object-contain", className),
8267
- "data-slot": "tool-step-icon",
8268
- src: iconUrl
8269
- }
8270
- );
8271
- }
8272
8399
  return /* @__PURE__ */ jsx31(
8273
8400
  CircleHelp,
8274
8401
  {
@@ -8375,7 +8502,10 @@ function ToolCallDetails({ content }) {
8375
8502
  hasOutput ? /* @__PURE__ */ jsx31(OutputRenderer, { content, data }) : null
8376
8503
  ] });
8377
8504
  }
8378
- function ToolCallRow({
8505
+ function areToolCallRowPropsEqual(previous, next) {
8506
+ return previous.content.id === next.content.id && previous.content.data === next.content.data && previous.isThreadRunning === next.isThreadRunning && previous.organizationId === next.organizationId && previous.apiUrl === next.apiUrl;
8507
+ }
8508
+ function ToolCallRowContent({
8379
8509
  content,
8380
8510
  isThreadRunning,
8381
8511
  organizationId,
@@ -8409,7 +8539,7 @@ function ToolCallRow({
8409
8539
  {
8410
8540
  type: "button",
8411
8541
  className: cn(
8412
- "flex w-full min-w-0 items-center gap-2 text-left text-sm leading-6 text-muted-foreground",
8542
+ "group/tool-call flex w-full min-w-0 items-center gap-2 text-left text-sm leading-6 text-muted-foreground",
8413
8543
  hasDetails && "cursor-pointer hover:text-foreground",
8414
8544
  hasError && "text-destructive hover:text-destructive"
8415
8545
  ),
@@ -8441,14 +8571,14 @@ function ToolCallRow({
8441
8571
  )
8442
8572
  }
8443
8573
  ) : /* @__PURE__ */ jsx31("span", { className: "h-3.5 w-3.5 shrink-0", "aria-hidden": "true" }),
8444
- /* @__PURE__ */ jsx31("span", { className: "min-w-0 flex-1 truncate", title: label, children: label }),
8574
+ /* @__PURE__ */ jsx31("span", { className: "min-w-0 truncate", title: label, children: label }),
8445
8575
  durationLabel ? /* @__PURE__ */ jsx31("span", { className: "shrink-0 text-[11px] tabular-nums text-muted-foreground/80", children: durationLabel }) : null,
8446
8576
  hasDetails ? /* @__PURE__ */ jsx31(
8447
8577
  ChevronRight6,
8448
8578
  {
8449
8579
  "aria-hidden": "true",
8450
8580
  className: cn(
8451
- "h-3.5 w-3.5 shrink-0 text-muted-foreground transition-transform",
8581
+ "h-3.5 w-3.5 shrink-0 text-muted-foreground opacity-0 transition-[opacity,transform] group-hover/tool-call:opacity-100 group-focus-visible/tool-call:opacity-100",
8452
8582
  isExpanded && "rotate-90"
8453
8583
  )
8454
8584
  }
@@ -8459,6 +8589,8 @@ function ToolCallRow({
8459
8589
  hasDetails && isExpanded ? /* @__PURE__ */ jsx31("div", { id: detailsId, children: /* @__PURE__ */ jsx31(ToolCallDetails, { content }) }) : null
8460
8590
  ] });
8461
8591
  }
8592
+ var ToolCallRow = React28.memo(ToolCallRowContent, areToolCallRowPropsEqual);
8593
+ ToolCallRow.displayName = "ToolCallRow";
8462
8594
  function ToolComponentGroup({
8463
8595
  items,
8464
8596
  hasFollowingItem,
@@ -11223,15 +11355,12 @@ function Chat({
11223
11355
  }),
11224
11356
  [basePetSettings, petLocalSettings, petRequired]
11225
11357
  );
11226
- const effectivePet = React43.useMemo(
11227
- () => {
11228
- if (petRequired || petLocalSettings) {
11229
- return buildPetOptionsFromLocalSettings(displayedPetSettings);
11230
- }
11231
- return options?.pet ?? null;
11232
- },
11233
- [displayedPetSettings, options?.pet, petLocalSettings, petRequired]
11234
- );
11358
+ const effectivePet = React43.useMemo(() => {
11359
+ if (petRequired || petLocalSettings) {
11360
+ return buildPetOptionsFromLocalSettings(displayedPetSettings);
11361
+ }
11362
+ return options?.pet ?? null;
11363
+ }, [displayedPetSettings, options?.pet, petLocalSettings, petRequired]);
11235
11364
  const savePetLocalSettings = React43.useCallback(
11236
11365
  (settings) => {
11237
11366
  const nextSettings = petRequired ? { ...settings, enabled: true } : settings;
@@ -11441,7 +11570,19 @@ function Chat({
11441
11570
  ),
11442
11571
  onFocusComposer: React43.useCallback(() => {
11443
11572
  composerInputRef.current?.focus();
11444
- }, [])
11573
+ }, []),
11574
+ onSetPetEnabled: React43.useCallback(
11575
+ (enabled) => {
11576
+ if (petRequired) {
11577
+ return;
11578
+ }
11579
+ savePetLocalSettings({
11580
+ ...displayedPetSettings,
11581
+ enabled
11582
+ });
11583
+ },
11584
+ [displayedPetSettings, petRequired, savePetLocalSettings]
11585
+ )
11445
11586
  });
11446
11587
  const syncQuoteSelection = React43.useCallback(() => {
11447
11588
  if (typeof window === "undefined") {
@@ -12674,9 +12815,10 @@ function Chat({
12674
12815
  parentMessenger,
12675
12816
  threadId: stream.threadId,
12676
12817
  currentThread,
12677
- currentThreadIsRunning,
12818
+ currentThreadIsRunning: stream.isLoading,
12678
12819
  threadErrorMessage,
12679
12820
  messages,
12821
+ historyMessageLoadVersion: stream.historyMessageLoadVersion ?? 0,
12680
12822
  fallbackTitle: t("history.threadFallback")
12681
12823
  });
12682
12824
  const assistantTitle = assistantName || resolvedTitle;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xpert-ai/chatkit-ui",
3
- "version": "0.3.0",
3
+ "version": "0.3.2",
4
4
  "description": "ChatKit UI.",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -60,8 +60,8 @@
60
60
  "uuid": "^11.1.0",
61
61
  "zod": "^4.1.12",
62
62
  "@xpert-ai/a2ui-react": "~0.1.0",
63
- "@xpert-ai/chatkit-web-shared": "~0.3.0",
64
- "@xpert-ai/chatkit-types": "~0.3.0"
63
+ "@xpert-ai/chatkit-types": "~0.3.3",
64
+ "@xpert-ai/chatkit-web-shared": "~0.3.2"
65
65
  },
66
66
  "devDependencies": {
67
67
  "@testing-library/jest-dom": "^6.9.1",
@@ -1 +0,0 @@
1
- import{aq as o,ar as n}from"./index-ymMwuJsf.js";const t=(r,a)=>o.lang.round(n.parse(r)[a]);export{t as c};
@@ -1 +0,0 @@
1
- import{s as a,c as s,a as e,C as t}from"./chunk-4TB4RGXK-C_BNMjyo.js";import{_ as i}from"./index-ymMwuJsf.js";import"./chunk-FMBD7UC4-CsUUeatk.js";import"./chunk-YZCP3GAM-Dr-QmZua.js";import"./chunk-55IACEB6-D3WNN3Ra.js";import"./chunk-EDXVE4YY-ZQR5cNyF.js";var u={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{u as diagram};
@@ -1 +0,0 @@
1
- import{s as a,c as s,a as e,C as t}from"./chunk-4TB4RGXK-C_BNMjyo.js";import{_ as i}from"./index-ymMwuJsf.js";import"./chunk-FMBD7UC4-CsUUeatk.js";import"./chunk-YZCP3GAM-Dr-QmZua.js";import"./chunk-55IACEB6-D3WNN3Ra.js";import"./chunk-EDXVE4YY-ZQR5cNyF.js";var u={parser:e,get db(){return new t},renderer:s,styles:a,init:i(r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute},"init")};export{u as diagram};
@@ -1 +0,0 @@
1
- import{b as r}from"./graph-Chm-7PyJ.js";var e=4;function a(o){return r(o,e)}export{a as c};
@@ -1 +0,0 @@
1
- import{s as t,b as r,a,S as s}from"./chunk-OYMX7WX6-BfC1NUL6.js";import{_ as i}from"./index-ymMwuJsf.js";import"./chunk-55IACEB6-D3WNN3Ra.js";import"./chunk-EDXVE4YY-ZQR5cNyF.js";var l={parser:a,get db(){return new s(2)},renderer:r,styles:t,init:i(e=>{e.state||(e.state={}),e.state.arrowMarkerAbsolute=e.arrowMarkerAbsolute},"init")};export{l as diagram};