@xpert-ai/chatkit-ui 0.3.13 → 0.3.15

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 (336) hide show
  1. package/dist/app/assets/{_baseUniq-CvONysm3.js → _baseUniq-Dwx-HPDz.js} +1 -1
  2. package/dist/app/assets/{abap-D0PmjeYp.js → abap-DIeDKodg.js} +1 -1
  3. package/dist/app/assets/{abnf-BOKaYw8z.js → abnf-DIn9Metm.js} +1 -1
  4. package/dist/app/assets/{actionscript-oedcs05j.js → actionscript-DTdR88xP.js} +1 -1
  5. package/dist/app/assets/{ada-DTslPS_X.js → ada-DKEQhmKf.js} +1 -1
  6. package/dist/app/assets/{agda-DyIPFvgY.js → agda-Bxj7aDBR.js} +1 -1
  7. package/dist/app/assets/{al-JhNzL42i.js → al-BjJq08kJ.js} +1 -1
  8. package/dist/app/assets/{antlr4-C-0Ut0bd.js → antlr4-BSgWdBlW.js} +1 -1
  9. package/dist/app/assets/{apacheconf-EFdrrvMh.js → apacheconf-B1ZZfBXH.js} +1 -1
  10. package/dist/app/assets/{apex-BK1Yi3gT.js → apex-D-v72en7.js} +1 -1
  11. package/dist/app/assets/{apl-CHOws7Yd.js → apl-CtPcVQfy.js} +1 -1
  12. package/dist/app/assets/{applescript-CaZLRm7r.js → applescript-BFQ5uGA3.js} +1 -1
  13. package/dist/app/assets/{aql-BjEOqP5L.js → aql-yNBD6qSq.js} +1 -1
  14. package/dist/app/assets/{arc-BMasGuP9.js → arc-B9qFH0cT.js} +1 -1
  15. package/dist/app/assets/{architectureDiagram-Q4EWVU46-B6eAqAul.js → architectureDiagram-Q4EWVU46-B7gpiTuv.js} +1 -1
  16. package/dist/app/assets/{arduino-DR77CmPb.js → arduino-gYhpCyhM.js} +1 -1
  17. package/dist/app/assets/{arff-Cq42nzUN.js → arff-DCp1TfqT.js} +1 -1
  18. package/dist/app/assets/{asciidoc-D8n9IYex.js → asciidoc-Blgk_faf.js} +1 -1
  19. package/dist/app/assets/{asm6502-B6bHtPuY.js → asm6502-CLEoDQdL.js} +1 -1
  20. package/dist/app/assets/{asmatmel-CooszWWJ.js → asmatmel-Cv4T3fyi.js} +1 -1
  21. package/dist/app/assets/{aspnet-CX0-h1MZ.js → aspnet-XJwwUfVO.js} +1 -1
  22. package/dist/app/assets/{autohotkey-CHtIhjCF.js → autohotkey-CsSmqmTW.js} +1 -1
  23. package/dist/app/assets/{autoit-DcksqFoK.js → autoit-BijwcWtQ.js} +1 -1
  24. package/dist/app/assets/{avisynth-CtsFuCNj.js → avisynth-CSw_0qgS.js} +1 -1
  25. package/dist/app/assets/{avro-idl-BNfYi2Dh.js → avro-idl-l3ZB3ntV.js} +1 -1
  26. package/dist/app/assets/{bash-3S4c0WHd.js → bash-CaEKIfif.js} +1 -1
  27. package/dist/app/assets/{basic-_uhMDh0B.js → basic-Dn0I8N1b.js} +1 -1
  28. package/dist/app/assets/{batch-C_-ETunx.js → batch-BEfRU9co.js} +1 -1
  29. package/dist/app/assets/{bbcode-Ba0czJNb.js → bbcode-DegzbLDZ.js} +1 -1
  30. package/dist/app/assets/{bicep-By_QuI3J.js → bicep-7g2bbiSC.js} +1 -1
  31. package/dist/app/assets/{birb-D5W_4t7e.js → birb-DWOvZxbC.js} +1 -1
  32. package/dist/app/assets/{bison-Dtt2PWL_.js → bison-Bykkq2mA.js} +1 -1
  33. package/dist/app/assets/{blockDiagram-DXYQGD6D-lg_Jl28M.js → blockDiagram-DXYQGD6D-CnbxcXq8.js} +1 -1
  34. package/dist/app/assets/{bnf-DQe8pZVg.js → bnf-D_XpS7Xo.js} +1 -1
  35. package/dist/app/assets/{brainfuck-BIYXJ7sN.js → brainfuck-B_775h1R.js} +1 -1
  36. package/dist/app/assets/{brightscript-BBCeseWd.js → brightscript-JQOQw-iv.js} +1 -1
  37. package/dist/app/assets/{bro-Dyt8VOvH.js → bro-B5Cv3Jyh.js} +1 -1
  38. package/dist/app/assets/{bsl-Cy-qTbmy.js → bsl-YhS0JFp3.js} +1 -1
  39. package/dist/app/assets/{c-B9t9Sy6r.js → c-C2eFmVlf.js} +1 -1
  40. package/dist/app/assets/{c4Diagram-AHTNJAMY-HamHya8d.js → c4Diagram-AHTNJAMY-CbLoWVuf.js} +1 -1
  41. package/dist/app/assets/{cfscript-B7tkoim0.js → cfscript-DpOIwxk3.js} +1 -1
  42. package/dist/app/assets/{chaiscript-BXsoW5BE.js → chaiscript-Dpnqk70c.js} +1 -1
  43. package/dist/app/assets/channel-AX8JVBdb.js +1 -0
  44. package/dist/app/assets/{chunk-4BX2VUAB-bFSsv7Ln.js → chunk-4BX2VUAB-B6jgtBVU.js} +1 -1
  45. package/dist/app/assets/{chunk-4TB4RGXK-Cdsd7ZCo.js → chunk-4TB4RGXK-C7wQHiWM.js} +1 -1
  46. package/dist/app/assets/{chunk-55IACEB6-ZTsQ3wyw.js → chunk-55IACEB6-Dlc7c7uj.js} +1 -1
  47. package/dist/app/assets/{chunk-EDXVE4YY-isVJYuaP.js → chunk-EDXVE4YY-Cx9e7TCL.js} +1 -1
  48. package/dist/app/assets/{chunk-FMBD7UC4-C63-DQH9.js → chunk-FMBD7UC4-DTnm85KK.js} +1 -1
  49. package/dist/app/assets/{chunk-OYMX7WX6-BTttzFGm.js → chunk-OYMX7WX6-DPZTpM4y.js} +1 -1
  50. package/dist/app/assets/{chunk-QZHKN3VN-CDwAyIOt.js → chunk-QZHKN3VN-DlL6zzUD.js} +1 -1
  51. package/dist/app/assets/{chunk-YZCP3GAM-Bx3_k3Zo.js → chunk-YZCP3GAM-ChSMsX86.js} +1 -1
  52. package/dist/app/assets/{cil-BLTa56Y5.js → cil-BCA2DpDR.js} +1 -1
  53. package/dist/app/assets/classDiagram-6PBFFD2Q-PBhrLSez.js +1 -0
  54. package/dist/app/assets/classDiagram-v2-HSJHXN6E-PBhrLSez.js +1 -0
  55. package/dist/app/assets/{clike-BIDFl0fT.js → clike-BufEkM59.js} +1 -1
  56. package/dist/app/assets/{clojure-Dpd5h1BA.js → clojure-DUh-_Jir.js} +1 -1
  57. package/dist/app/assets/clone-dCCVXzwX.js +1 -0
  58. package/dist/app/assets/{cmake-DjUqp9u8.js → cmake-CtdfiL_A.js} +1 -1
  59. package/dist/app/assets/{cobol-Dgx17sMr.js → cobol-LsbwIgid.js} +1 -1
  60. package/dist/app/assets/{coffeescript-B9wL5-Va.js → coffeescript-DLvxuFZ4.js} +1 -1
  61. package/dist/app/assets/{concurnas-mF1tuHyA.js → concurnas-CAZffEpv.js} +1 -1
  62. package/dist/app/assets/{coq-RHagnzin.js → coq-_yzybr4K.js} +1 -1
  63. package/dist/app/assets/{core-DCCJ-C0q.js → core-CcPJCrNh.js} +1 -1
  64. package/dist/app/assets/{cose-bilkent-S5V4N54A-Cb0_atLY.js → cose-bilkent-S5V4N54A-6Ab2u-0D.js} +1 -1
  65. package/dist/app/assets/{cpp-DTIt5dAl.js → cpp-j3u_xwzh.js} +1 -1
  66. package/dist/app/assets/{crystal-DVA5GCDX.js → crystal-CkMU8DVp.js} +1 -1
  67. package/dist/app/assets/{csharp-NOj19G2H.js → csharp-9en1AzWQ.js} +1 -1
  68. package/dist/app/assets/{cshtml-CD3z7IxG.js → cshtml-BDW6ODOt.js} +1 -1
  69. package/dist/app/assets/{csp-jVwEgPNj.js → csp-CddFr_1b.js} +1 -1
  70. package/dist/app/assets/{css-aJF3Q48Q.js → css-D8Ga5ydC.js} +1 -1
  71. package/dist/app/assets/{css-extras-C-U4h-Z3.js → css-extras-CZ54lavS.js} +1 -1
  72. package/dist/app/assets/{csv-B3FtP7a3.js → csv-CYL_TC-v.js} +1 -1
  73. package/dist/app/assets/{cypher-Jelt7i1F.js → cypher-Cd2nx8Yr.js} +1 -1
  74. package/dist/app/assets/{d-ijfOZ2or.js → d-DTKZuxdf.js} +1 -1
  75. package/dist/app/assets/{dagre-KV5264BT-DF_s1Fnc.js → dagre-KV5264BT-D86ed7eU.js} +1 -1
  76. package/dist/app/assets/{dart-CTYpy6Bc.js → dart-DRBE2Nh2.js} +1 -1
  77. package/dist/app/assets/{dataweave-D1exHB4s.js → dataweave-DU_f3tT8.js} +1 -1
  78. package/dist/app/assets/{dax-JqPdegf6.js → dax-CV-tJW79.js} +1 -1
  79. package/dist/app/assets/{dhall-DLi-OuCE.js → dhall-DPT7mX0Z.js} +1 -1
  80. package/dist/app/assets/{diagram-5BDNPKRD-C7H0RboA.js → diagram-5BDNPKRD-BktvC8QK.js} +1 -1
  81. package/dist/app/assets/{diagram-G4DWMVQ6-CMdy8B-k.js → diagram-G4DWMVQ6-BbLscMgc.js} +1 -1
  82. package/dist/app/assets/{diagram-MMDJMWI5-Dkb4OujG.js → diagram-MMDJMWI5-C-Uuih0d.js} +1 -1
  83. package/dist/app/assets/{diagram-TYMM5635-C6nwxn_A.js → diagram-TYMM5635-2In6aWxo.js} +1 -1
  84. package/dist/app/assets/{diff-BT54-KV8.js → diff-D0ivotGV.js} +1 -1
  85. package/dist/app/assets/{django-RAer7vZH.js → django-C6cozzad.js} +1 -1
  86. package/dist/app/assets/{dns-zone-file-Ctz907jU.js → dns-zone-file-DfxvP1pj.js} +1 -1
  87. package/dist/app/assets/{docker-DQMF0Heg.js → docker-p4zCXGxO.js} +1 -1
  88. package/dist/app/assets/{dot-DRM01oM7.js → dot-7eBZEIRJ.js} +1 -1
  89. package/dist/app/assets/{ebnf-BoXaxGMy.js → ebnf-BoFQ_HS3.js} +1 -1
  90. package/dist/app/assets/{editorconfig-COefETIr.js → editorconfig-Dhv7NWre.js} +1 -1
  91. package/dist/app/assets/{eiffel-DtiXpw62.js → eiffel-CzowCkRG.js} +1 -1
  92. package/dist/app/assets/{ejs-CPjGZkv_.js → ejs-Y3B0HI8w.js} +1 -1
  93. package/dist/app/assets/{elixir-DoBN8UeH.js → elixir-9bFzJRbW.js} +1 -1
  94. package/dist/app/assets/{elm-B62i2ybA.js → elm-DbBwwkot.js} +1 -1
  95. package/dist/app/assets/{erDiagram-SMLLAGMA-B4OO8MsP.js → erDiagram-SMLLAGMA-BXQjAyI3.js} +1 -1
  96. package/dist/app/assets/{erb-C9ckQs5i.js → erb-CFPJ2H1c.js} +1 -1
  97. package/dist/app/assets/{erlang-DrTNnJnm.js → erlang-JrCgn_Vj.js} +1 -1
  98. package/dist/app/assets/{etlua-B9YWlzUb.js → etlua-ehoFr_h3.js} +1 -1
  99. package/dist/app/assets/{excel-formula-C2YGQfQt.js → excel-formula-E1wInVew.js} +1 -1
  100. package/dist/app/assets/{factor-CQEBDNb2.js → factor-D-e1z70G.js} +1 -1
  101. package/dist/app/assets/{false-aj0fVJxM.js → false-BfpRHR9H.js} +1 -1
  102. package/dist/app/assets/{firestore-security-rules-CDG1Fy4c.js → firestore-security-rules-feBeFWUm.js} +1 -1
  103. package/dist/app/assets/{flow-DpfOp8Q1.js → flow-IwK-SNBk.js} +1 -1
  104. package/dist/app/assets/{flowDiagram-DWJPFMVM-dKziAkNZ.js → flowDiagram-DWJPFMVM-CFW8urfl.js} +1 -1
  105. package/dist/app/assets/{fortran-B6dEgcNp.js → fortran-DkbSWkw0.js} +1 -1
  106. package/dist/app/assets/{fsharp-CKzEOQJi.js → fsharp-B-uMa1vx.js} +1 -1
  107. package/dist/app/assets/{ftl-0jDsA_YP.js → ftl-DgNAGF7C.js} +1 -1
  108. package/dist/app/assets/{ganttDiagram-T4ZO3ILL-CxPsDkXF.js → ganttDiagram-T4ZO3ILL-DOWuXTPz.js} +1 -1
  109. package/dist/app/assets/{gap-DDX0qjW3.js → gap-BQRQ3u9V.js} +1 -1
  110. package/dist/app/assets/{gcode-BpIri7up.js → gcode-CXqXcX-4.js} +1 -1
  111. package/dist/app/assets/{gdscript-C04N9JVO.js → gdscript-DrGAM5cI.js} +1 -1
  112. package/dist/app/assets/{gedcom-DvtepZde.js → gedcom-DtAEeZHX.js} +1 -1
  113. package/dist/app/assets/{gherkin-BsAX23_T.js → gherkin-mVRWnKHl.js} +1 -1
  114. package/dist/app/assets/{git-CJNx4Xo6.js → git-BcHBSxI2.js} +1 -1
  115. package/dist/app/assets/{gitGraphDiagram-UUTBAWPF-DiSvgj0u.js → gitGraphDiagram-UUTBAWPF-BMih60L2.js} +1 -1
  116. package/dist/app/assets/{glsl-D-54R-AO.js → glsl-BTn51vrQ.js} +1 -1
  117. package/dist/app/assets/{gml-B0X-Mxkw.js → gml-cqb28Oc-.js} +1 -1
  118. package/dist/app/assets/{gn-CWmpfEaG.js → gn-BMWOs41n.js} +1 -1
  119. package/dist/app/assets/{go-C_2hF6ro.js → go-Dd2uMAQ7.js} +1 -1
  120. package/dist/app/assets/{go-module-vMtGZodQ.js → go-module-CDSbunNT.js} +1 -1
  121. package/dist/app/assets/{graph-Cq9YMAYz.js → graph-DvCDbvJR.js} +1 -1
  122. package/dist/app/assets/{graphql-DrrIeY06.js → graphql-BTmguCF9.js} +1 -1
  123. package/dist/app/assets/{groovy-BMn_67fe.js → groovy-DE9kCYoR.js} +1 -1
  124. package/dist/app/assets/{haml-Ci-7VFqq.js → haml-D0WW023S.js} +1 -1
  125. package/dist/app/assets/{handlebars-BJlC_vgB.js → handlebars-CACoI5Y2.js} +1 -1
  126. package/dist/app/assets/{haskell-Bfe0YQeZ.js → haskell-Nl3mvsuC.js} +1 -1
  127. package/dist/app/assets/{haxe-BHjIvHwX.js → haxe-kX2dLZFW.js} +1 -1
  128. package/dist/app/assets/{hcl-oPGkwxVh.js → hcl-BuKrvQA7.js} +1 -1
  129. package/dist/app/assets/{hlsl-KfasWwmv.js → hlsl-BcZ41y_t.js} +1 -1
  130. package/dist/app/assets/{hoon-OBQG5VLk.js → hoon-k3LOrZ8l.js} +1 -1
  131. package/dist/app/assets/{hpkp-zyYCSn0s.js → hpkp-CSkrIElJ.js} +1 -1
  132. package/dist/app/assets/{hsts-BMBBwqU0.js → hsts-CUFvLcT6.js} +1 -1
  133. package/dist/app/assets/{http-CCSDlbLo.js → http-BP_2SPTh.js} +1 -1
  134. package/dist/app/assets/{ichigojam-DdhQX3SK.js → ichigojam-B6_OaTrE.js} +1 -1
  135. package/dist/app/assets/{icon-B7p5YPMg.js → icon-MHFrlAgf.js} +1 -1
  136. package/dist/app/assets/{icu-message-format-UOBEOoHS.js → icu-message-format-Cwgm4Wks.js} +1 -1
  137. package/dist/app/assets/{idris-CdhiOKCO.js → idris-CZX3trlS.js} +1 -1
  138. package/dist/app/assets/{iecst-DXPMKwX6.js → iecst-DZK2Uzj-.js} +1 -1
  139. package/dist/app/assets/{ignore-BVa755Kc.js → ignore-Bhgwrr0s.js} +1 -1
  140. package/dist/app/assets/index-CYj11nKH.css +1 -0
  141. package/dist/app/assets/{index-BEJfqOrB.js → index-IKCBcqeB.js} +137 -137
  142. package/dist/app/assets/{infoDiagram-42DDH7IO-BB_Um6R6.js → infoDiagram-42DDH7IO-u0b7-V8p.js} +1 -1
  143. package/dist/app/assets/{inform7-mq-OIbmJ.js → inform7-C4utAIT9.js} +1 -1
  144. package/dist/app/assets/{ini-BXIIaxsj.js → ini-y39-Bv9Q.js} +1 -1
  145. package/dist/app/assets/{io-CkhJ-e49.js → io-Bms_pPBq.js} +1 -1
  146. package/dist/app/assets/{ishikawaDiagram-UXIWVN3A-BNzRWQMS.js → ishikawaDiagram-UXIWVN3A-COYxI4gB.js} +1 -1
  147. package/dist/app/assets/{j-C0CAN9XN.js → j-CXeF3zjE.js} +1 -1
  148. package/dist/app/assets/{java-CgSYFksp.js → java-C8ABn4fS.js} +1 -1
  149. package/dist/app/assets/{javadoc-BmBI86rZ.js → javadoc-QRGI5yv7.js} +1 -1
  150. package/dist/app/assets/{javadoclike-D4vqwJX5.js → javadoclike-DxJ1hCZF.js} +1 -1
  151. package/dist/app/assets/{javascript-CC8_K6vT.js → javascript-D_ZzBLZY.js} +1 -1
  152. package/dist/app/assets/{javastacktrace-B0T5_L5h.js → javastacktrace-DiFGvXhG.js} +1 -1
  153. package/dist/app/assets/{jexl-BzBj2ekh.js → jexl-BBoeeU8R.js} +1 -1
  154. package/dist/app/assets/{jolie-PcQu5Qal.js → jolie-D0X4_9gR.js} +1 -1
  155. package/dist/app/assets/{journeyDiagram-VCZTEJTY-YbGxquTC.js → journeyDiagram-VCZTEJTY-CRfqz0kA.js} +1 -1
  156. package/dist/app/assets/{jq-BIlSIJBC.js → jq-DcHtGiO8.js} +1 -1
  157. package/dist/app/assets/{js-extras-CrkjSQXw.js → js-extras-duq_pWxP.js} +1 -1
  158. package/dist/app/assets/{js-templates-BdsRT61p.js → js-templates-D5UXyOpO.js} +1 -1
  159. package/dist/app/assets/{jsdoc-BGPbyhWt.js → jsdoc-CLUv_j71.js} +1 -1
  160. package/dist/app/assets/{json-C8O9rn_F.js → json-CuqkKzHM.js} +1 -1
  161. package/dist/app/assets/{json5-DNnHL8bJ.js → json5-D9tI2t-3.js} +1 -1
  162. package/dist/app/assets/{jsonp-CBoW4Wzv.js → jsonp-G_j_0lAN.js} +1 -1
  163. package/dist/app/assets/{jsstacktrace-YRTCG2qE.js → jsstacktrace-COcnx2ke.js} +1 -1
  164. package/dist/app/assets/{jsx-Cvmg8Qc0.js → jsx-CqQbpV1L.js} +1 -1
  165. package/dist/app/assets/{julia-C6GEw5Kx.js → julia-dO4zIuaR.js} +1 -1
  166. package/dist/app/assets/{kanban-definition-6JOO6SKY-Dlqu8obb.js → kanban-definition-6JOO6SKY-B9po352t.js} +1 -1
  167. package/dist/app/assets/{keepalived-D2mav9II.js → keepalived-j2rY9APl.js} +1 -1
  168. package/dist/app/assets/{keyman-DDZgfq0u.js → keyman-COgoOwJN.js} +1 -1
  169. package/dist/app/assets/{kotlin-CrYc_wtA.js → kotlin-B7HuJxGt.js} +1 -1
  170. package/dist/app/assets/{kumir-B_VS6AVj.js → kumir-BsbBXrDc.js} +1 -1
  171. package/dist/app/assets/{kusto-CP_9UovW.js → kusto-DBn0I2Rq.js} +1 -1
  172. package/dist/app/assets/{latex-QgAbXGsS.js → latex-U1WK18vg.js} +1 -1
  173. package/dist/app/assets/{latte-DUpGulNe.js → latte-sFvDJnfZ.js} +1 -1
  174. package/dist/app/assets/{layout-BTwqxbTv.js → layout-D2YmyTG9.js} +1 -1
  175. package/dist/app/assets/{less-BLrdBrWF.js → less-BlaKhA3X.js} +1 -1
  176. package/dist/app/assets/{lilypond-BDTzAMhd.js → lilypond-DDGcZVfx.js} +1 -1
  177. package/dist/app/assets/{linear-DkWSa105.js → linear-DleRHjo-.js} +1 -1
  178. package/dist/app/assets/{liquid-Dy291YjU.js → liquid-c2pjEQwB.js} +1 -1
  179. package/dist/app/assets/{lisp-BfnyURQK.js → lisp-CG-Cg6EZ.js} +1 -1
  180. package/dist/app/assets/{livescript-CDMj4WP6.js → livescript-DSZ6AZ2e.js} +1 -1
  181. package/dist/app/assets/{llvm-CQPEUNLB.js → llvm-jAv7-MwN.js} +1 -1
  182. package/dist/app/assets/{log-DS0VJgjd.js → log-B7MoaZXp.js} +1 -1
  183. package/dist/app/assets/{lolcode-B2MbftYe.js → lolcode-B_E0zl48.js} +1 -1
  184. package/dist/app/assets/{lua-C-7j_5ne.js → lua-BWt80jRi.js} +1 -1
  185. package/dist/app/assets/{magma-BBFpD5aY.js → magma-DMMun7cE.js} +1 -1
  186. package/dist/app/assets/{makefile-CzEmFT7o.js → makefile-D_Q8-_up.js} +1 -1
  187. package/dist/app/assets/{markdown-BLlnxB-K.js → markdown-0UThuvxK.js} +1 -1
  188. package/dist/app/assets/{markup-D7eCVjbF.js → markup-daDqaRCy.js} +1 -1
  189. package/dist/app/assets/{markup-templating-8Z6sScHe.js → markup-templating-DHJBn-7w.js} +1 -1
  190. package/dist/app/assets/{matlab-uhLBPgTB.js → matlab-DGRwjZyM.js} +1 -1
  191. package/dist/app/assets/{maxscript-Bkndg0OF.js → maxscript-n86WVZSE.js} +1 -1
  192. package/dist/app/assets/{mel-By4Q6ZsA.js → mel-DaZ5bSka.js} +1 -1
  193. package/dist/app/assets/{mermaid-CbChcMmC.js → mermaid-CZiocNs6.js} +1 -1
  194. package/dist/app/assets/{min-5A3EmlAd.js → min-DAq8pTUz.js} +1 -1
  195. package/dist/app/assets/{mindmap-definition-QFDTVHPH-BzbhOcGv.js → mindmap-definition-QFDTVHPH-CJIQL1LY.js} +1 -1
  196. package/dist/app/assets/{mizar-Boa07XhI.js → mizar-Dsfoa2TW.js} +1 -1
  197. package/dist/app/assets/{mongodb-Dx1noqnV.js → mongodb-C0W6bSq3.js} +1 -1
  198. package/dist/app/assets/{monkey-BeXPWhV3.js → monkey-BHbCk7dN.js} +1 -1
  199. package/dist/app/assets/{moonscript-1thH6xrI.js → moonscript-BCL9x3ob.js} +1 -1
  200. package/dist/app/assets/{n1ql-BulKbT01.js → n1ql-BKyFM7QZ.js} +1 -1
  201. package/dist/app/assets/{n4js-BOzYMeOt.js → n4js-WCyJC7Bo.js} +1 -1
  202. package/dist/app/assets/{nand2tetris-hdl-BIyeRQVK.js → nand2tetris-hdl-CH1s1Y91.js} +1 -1
  203. package/dist/app/assets/{naniscript-CAfgrASy.js → naniscript-DIzPrC7n.js} +1 -1
  204. package/dist/app/assets/{nasm-pf-h63vT.js → nasm-DPXaN7jb.js} +1 -1
  205. package/dist/app/assets/{neon-x4Rgd4bZ.js → neon-qRsLNUO7.js} +1 -1
  206. package/dist/app/assets/{nevod-Cdc3uw7C.js → nevod-BjdyrSI_.js} +1 -1
  207. package/dist/app/assets/{nginx-BTHrB1wh.js → nginx-BSHuVt8F.js} +1 -1
  208. package/dist/app/assets/{nim-CM1DVIbF.js → nim-cqnkoCx6.js} +1 -1
  209. package/dist/app/assets/{nix-BPK2kQ5C.js → nix-CTbMcoHL.js} +1 -1
  210. package/dist/app/assets/{nsis-CRyjntvc.js → nsis-BAvC-EAi.js} +1 -1
  211. package/dist/app/assets/{objectivec-CDDtF0zH.js → objectivec-CO9107BT.js} +1 -1
  212. package/dist/app/assets/{ocaml-DZcit9Vn.js → ocaml-DVL5Quhs.js} +1 -1
  213. package/dist/app/assets/{opencl-cc0R5DUM.js → opencl-Czvd_tc8.js} +1 -1
  214. package/dist/app/assets/{openqasm-c2pwesjj.js → openqasm-CTfaDNnI.js} +1 -1
  215. package/dist/app/assets/{oz-DyrsesLt.js → oz-A34jCYcs.js} +1 -1
  216. package/dist/app/assets/{parigp-7_V5KdI6.js → parigp-bNsWnzY0.js} +1 -1
  217. package/dist/app/assets/{parser-D6eGtoRN.js → parser-CQufjMLY.js} +1 -1
  218. package/dist/app/assets/{pascal-DzeBw5qN.js → pascal-CtgxLAws.js} +1 -1
  219. package/dist/app/assets/{pascaligo-Dbb-AhC2.js → pascaligo-BNmI5VSc.js} +1 -1
  220. package/dist/app/assets/{pcaxis-idJM1h2x.js → pcaxis-CHBlLodu.js} +1 -1
  221. package/dist/app/assets/{peoplecode-BFxdNkx7.js → peoplecode-Blq8Ygpu.js} +1 -1
  222. package/dist/app/assets/{perl-DMMKXc6L.js → perl-DgBjiM1Y.js} +1 -1
  223. package/dist/app/assets/{php-GE2qlcWl.js → php-CNV6jO7M.js} +1 -1
  224. package/dist/app/assets/{php-extras-D0h3euWn.js → php-extras-B01XfFcL.js} +1 -1
  225. package/dist/app/assets/{phpdoc-Aj9K_9VA.js → phpdoc-C_4DPhE1.js} +1 -1
  226. package/dist/app/assets/{pieDiagram-DEJITSTG-euy__LIt.js → pieDiagram-DEJITSTG-CMbbWMol.js} +1 -1
  227. package/dist/app/assets/{plsql-a8FhcqVr.js → plsql-BW6nSlRL.js} +1 -1
  228. package/dist/app/assets/{powerquery-DN1sTZNS.js → powerquery-C3XOTDFB.js} +1 -1
  229. package/dist/app/assets/{powershell-DMt014c-.js → powershell-JGKW4-tw.js} +1 -1
  230. package/dist/app/assets/{processing-DchAVn2G.js → processing-ZHNXal98.js} +1 -1
  231. package/dist/app/assets/{prolog-BYbcb0nT.js → prolog-BMsuv0cG.js} +1 -1
  232. package/dist/app/assets/{promql-BfevPKN7.js → promql-C_g3d_7R.js} +1 -1
  233. package/dist/app/assets/{properties-DxkwWeRR.js → properties-DpmEoLcP.js} +1 -1
  234. package/dist/app/assets/{protobuf-CChhTutV.js → protobuf-C-Fjg46q.js} +1 -1
  235. package/dist/app/assets/{psl-C2_pLcpA.js → psl-D-1rPw5x.js} +1 -1
  236. package/dist/app/assets/{pug-B-sQ4OSc.js → pug-DEbAAirp.js} +1 -1
  237. package/dist/app/assets/{puppet-vcyz-j7I.js → puppet-KUhDZSk7.js} +1 -1
  238. package/dist/app/assets/{pure-C0W7EfBD.js → pure-Qgwr_KRm.js} +1 -1
  239. package/dist/app/assets/{purebasic-FcKgSuqo.js → purebasic-BVt-pmKE.js} +1 -1
  240. package/dist/app/assets/{purescript-C_ltNiXx.js → purescript-DmHmFB-m.js} +1 -1
  241. package/dist/app/assets/{q-CmN7H41m.js → q-B5CS08FF.js} +1 -1
  242. package/dist/app/assets/{qml-BBK77TJq.js → qml-tf88sjzb.js} +1 -1
  243. package/dist/app/assets/{qore-BRjQrygC.js → qore-zNsy357U.js} +1 -1
  244. package/dist/app/assets/{qsharp-DUFroSj9.js → qsharp-DPNEvv2J.js} +1 -1
  245. package/dist/app/assets/{quadrantDiagram-34T5L4WZ-BGqai1hN.js → quadrantDiagram-34T5L4WZ-ClFur5-V.js} +1 -1
  246. package/dist/app/assets/{r-BtLInYIq.js → r-D5KcwHHa.js} +1 -1
  247. package/dist/app/assets/{racket-DSLIke9j.js → racket-B6uwIxip.js} +1 -1
  248. package/dist/app/assets/{reason-BN_bXQ-1.js → reason-_dX3JLx9.js} +1 -1
  249. package/dist/app/assets/{regex-Fls3JQwM.js → regex-DbMRi-94.js} +1 -1
  250. package/dist/app/assets/{rego-LWOfAlAR.js → rego-Cf2F2DC4.js} +1 -1
  251. package/dist/app/assets/{renpy-BnxGO9ok.js → renpy-C-VDq6V6.js} +1 -1
  252. package/dist/app/assets/{requirementDiagram-MS252O5E-DTiW7nXX.js → requirementDiagram-MS252O5E-BpQ-omuZ.js} +1 -1
  253. package/dist/app/assets/{rest-Dzyy_awZ.js → rest-CA22hdgR.js} +1 -1
  254. package/dist/app/assets/{rip-BHRZITuS.js → rip-DK3rtmET.js} +1 -1
  255. package/dist/app/assets/{roboconf-BB7SqKLx.js → roboconf-BOpNqPMU.js} +1 -1
  256. package/dist/app/assets/{robotframework-CbbiHJ_l.js → robotframework-CH4RxPgY.js} +1 -1
  257. package/dist/app/assets/{ruby-UNNH3SH_.js → ruby-CGCFULSV.js} +1 -1
  258. package/dist/app/assets/{rust-fivntoob.js → rust-DkkgE8X_.js} +1 -1
  259. package/dist/app/assets/{sankeyDiagram-XADWPNL6-Cg_WnhP6.js → sankeyDiagram-XADWPNL6-Ju_lyr-D.js} +1 -1
  260. package/dist/app/assets/{sas-Bawf1d6-.js → sas-6-gDm0mo.js} +1 -1
  261. package/dist/app/assets/{sass-Q4vPpiny.js → sass-BBjxiBJN.js} +1 -1
  262. package/dist/app/assets/{scala-CtMDsbPt.js → scala-BhtoqplM.js} +1 -1
  263. package/dist/app/assets/{scheme-DiND4h1E.js → scheme-owZBmqBz.js} +1 -1
  264. package/dist/app/assets/{scss-BpxRS9T1.js → scss-B1P7XM47.js} +1 -1
  265. package/dist/app/assets/{sequenceDiagram-FGHM5R23-DLIccWX-.js → sequenceDiagram-FGHM5R23-BBI3QipK.js} +1 -1
  266. package/dist/app/assets/{shell-session-DE5VxnzZ.js → shell-session-C5mJYTWa.js} +1 -1
  267. package/dist/app/assets/{smali-D2y9x0Hn.js → smali-CT6I3kd0.js} +1 -1
  268. package/dist/app/assets/{smalltalk-D90_h2xX.js → smalltalk-BLA1W016.js} +1 -1
  269. package/dist/app/assets/{smarty-Ci02BnOV.js → smarty-DqZHre4a.js} +1 -1
  270. package/dist/app/assets/{sml-qZ9IVAdA.js → sml-srBnLTl8.js} +1 -1
  271. package/dist/app/assets/{solidity-Ld1X52bE.js → solidity-BXsj8t92.js} +1 -1
  272. package/dist/app/assets/{solution-file-I128_x79.js → solution-file-_9Fhjewn.js} +1 -1
  273. package/dist/app/assets/{soy-CL8SHdlV.js → soy-CCnzp3kh.js} +1 -1
  274. package/dist/app/assets/{sparql-9UibhZzT.js → sparql-vwNKnPLg.js} +1 -1
  275. package/dist/app/assets/{splunk-spl-DmuQo_Z-.js → splunk-spl-DVlOazFu.js} +1 -1
  276. package/dist/app/assets/{sqf-DYapkK6k.js → sqf-CP2_gVJJ.js} +1 -1
  277. package/dist/app/assets/{sql-0G77DN1e.js → sql-WLOhJjMq.js} +1 -1
  278. package/dist/app/assets/{squirrel-DDRb89LY.js → squirrel-lzry6i_S.js} +1 -1
  279. package/dist/app/assets/{stan-BglK2xWh.js → stan-DHE8PfhM.js} +1 -1
  280. package/dist/app/assets/{stateDiagram-FHFEXIEX-VBMagnLo.js → stateDiagram-FHFEXIEX-B2gf68Iu.js} +1 -1
  281. package/dist/app/assets/stateDiagram-v2-QKLJ7IA2-t6UggfbM.js +1 -0
  282. package/dist/app/assets/{stylus-BzCzKORP.js → stylus-Ca25DSh_.js} +1 -1
  283. package/dist/app/assets/{swift-DzGGhUfC.js → swift-8U7tg2Zc.js} +1 -1
  284. package/dist/app/assets/{systemd-CKRopl3u.js → systemd-Cyxg6ttX.js} +1 -1
  285. package/dist/app/assets/{t4-cs-CBX4HWWS.js → t4-cs-Cr4ePgZl.js} +1 -1
  286. package/dist/app/assets/{t4-templating-T0C2gZZ5.js → t4-templating-B6BqF4S0.js} +1 -1
  287. package/dist/app/assets/{t4-vb-B3zSPzaZ.js → t4-vb-vhLnjym9.js} +1 -1
  288. package/dist/app/assets/{tap-CAe8OF_b.js → tap-CLBnfB35.js} +1 -1
  289. package/dist/app/assets/{tcl-CGagKhb1.js → tcl-CRp-Hz3c.js} +1 -1
  290. package/dist/app/assets/{textile-CueycoY7.js → textile-DvW_voJ4.js} +1 -1
  291. package/dist/app/assets/{timeline-definition-GMOUNBTQ-BR8w0YIC.js → timeline-definition-GMOUNBTQ-UwHnCPoi.js} +1 -1
  292. package/dist/app/assets/{toml-D3xWlWq-.js → toml-X5T5K9J1.js} +1 -1
  293. package/dist/app/assets/{tremor-Cpf7QHkZ.js → tremor-CHLCNjjM.js} +1 -1
  294. package/dist/app/assets/{tt2-CAC91Rlw.js → tt2-CXiTzzDK.js} +1 -1
  295. package/dist/app/assets/{turtle-QHsxVOjz.js → turtle-CyrruX5i.js} +1 -1
  296. package/dist/app/assets/{twig-DFrh0LJU.js → twig-B_rjK9hN.js} +1 -1
  297. package/dist/app/assets/{typescript-B9pE0jdB.js → typescript-BLk3BPZ6.js} +1 -1
  298. package/dist/app/assets/{typoscript-0mp-YLa-.js → typoscript-CZwPGuMe.js} +1 -1
  299. package/dist/app/assets/{unrealscript-ClO5RmCe.js → unrealscript-qemROe0B.js} +1 -1
  300. package/dist/app/assets/{uorazor-DOBr2GLb.js → uorazor-D3o4BLbd.js} +1 -1
  301. package/dist/app/assets/{uri-BfuI8rBD.js → uri-BxHDhgNT.js} +1 -1
  302. package/dist/app/assets/{v-DnbjWteW.js → v-CIe2ZJUL.js} +1 -1
  303. package/dist/app/assets/{vala-DSpcVXUB.js → vala-SPfHZV3e.js} +1 -1
  304. package/dist/app/assets/{vbnet-BnOKOgHJ.js → vbnet-CNceaJsd.js} +1 -1
  305. package/dist/app/assets/{velocity-lvbSLJ-r.js → velocity-Dgg2GxJo.js} +1 -1
  306. package/dist/app/assets/{vennDiagram-DHZGUBPP-BiCE3euu.js → vennDiagram-DHZGUBPP-BPcURIIu.js} +1 -1
  307. package/dist/app/assets/{verilog-DkYzNfBh.js → verilog-COB7rM4l.js} +1 -1
  308. package/dist/app/assets/{vhdl-D_YywZA8.js → vhdl-D6WrIYUy.js} +1 -1
  309. package/dist/app/assets/{vim-pGXhp0rg.js → vim-CqPhOvVX.js} +1 -1
  310. package/dist/app/assets/{visual-basic-BhtyQkXP.js → visual-basic-BsUhhQ9r.js} +1 -1
  311. package/dist/app/assets/{wardley-RL74JXVD-B2V57Q2E.js → wardley-RL74JXVD-D1W40KmI.js} +1 -1
  312. package/dist/app/assets/{wardleyDiagram-NUSXRM2D-Cp8D-xvV.js → wardleyDiagram-NUSXRM2D-CJ5Ib4lx.js} +1 -1
  313. package/dist/app/assets/{warpscript-CoTVqDn1.js → warpscript-CdZ540nJ.js} +1 -1
  314. package/dist/app/assets/{wasm-CMFJzAkq.js → wasm-Bj1P6qAr.js} +1 -1
  315. package/dist/app/assets/{web-idl-C-lZ_t1T.js → web-idl-IbhwUHnQ.js} +1 -1
  316. package/dist/app/assets/{wiki-BOedWAnh.js → wiki-BpH7naBz.js} +1 -1
  317. package/dist/app/assets/{wolfram-CYOMd2Zo.js → wolfram-CDFOY36L.js} +1 -1
  318. package/dist/app/assets/{wren-DupAeqRZ.js → wren-BFmrXwdF.js} +1 -1
  319. package/dist/app/assets/{xeora-CbXv4PDs.js → xeora-Qi2mMM6Y.js} +1 -1
  320. package/dist/app/assets/{xml-doc-B7Sbddxh.js → xml-doc-Bm5tGTk1.js} +1 -1
  321. package/dist/app/assets/{xojo-D1qtWt5Q.js → xojo-BBnPKHU9.js} +1 -1
  322. package/dist/app/assets/{xquery-DoggQfJM.js → xquery-CoU4Gfkn.js} +1 -1
  323. package/dist/app/assets/{xychartDiagram-5P7HB3ND-D1aj1N3W.js → xychartDiagram-5P7HB3ND-D2ZFFyQC.js} +1 -1
  324. package/dist/app/assets/{yaml-DQR4TEX3.js → yaml-v7_6w9Vp.js} +1 -1
  325. package/dist/app/assets/{yang-Cq-mC04g.js → yang-BqietwSJ.js} +1 -1
  326. package/dist/app/assets/{zig-BFW3ALkQ.js → zig-Dl0-8WsC.js} +1 -1
  327. package/dist/app/index.html +2 -2
  328. package/dist/index.cjs +150 -2
  329. package/dist/index.js +155 -7
  330. package/package.json +3 -3
  331. package/dist/app/assets/channel-BsY2pq9p.js +0 -1
  332. package/dist/app/assets/classDiagram-6PBFFD2Q-DpJB1PZu.js +0 -1
  333. package/dist/app/assets/classDiagram-v2-HSJHXN6E-DpJB1PZu.js +0 -1
  334. package/dist/app/assets/clone-CiMLCRAd.js +0 -1
  335. package/dist/app/assets/index-CtZ-BBEn.css +0 -1
  336. package/dist/app/assets/stateDiagram-v2-QKLJ7IA2-ceSH7UY2.js +0 -1
package/dist/index.cjs CHANGED
@@ -211,6 +211,9 @@ function readContentAgentKey(content) {
211
211
  if (!content || typeof content === "string") return void 0;
212
212
  return typeof content.agentKey === "string" && content.agentKey.trim() ? content.agentKey.trim() : void 0;
213
213
  }
214
+ function isMiddlewareAgentRunInfo(info) {
215
+ return info?.nodeType?.trim().toLowerCase() === "middleware";
216
+ }
214
217
 
215
218
  // src/lib/api-config.ts
216
219
  function hasConfiguredValue(value) {
@@ -1708,6 +1711,22 @@ var en_US_default = {
1708
1711
  }
1709
1712
  }
1710
1713
  },
1714
+ middlewareEvent: {
1715
+ title: {
1716
+ default: "Middleware",
1717
+ ModelFallbackMiddleware: "Model fallback",
1718
+ ModelRetryMiddleware: "Model retry"
1719
+ },
1720
+ phase: {
1721
+ fallback_started: "Trying fallback model {{attempt}}/{{total}}",
1722
+ fallback_succeeded: "Fallback model succeeded {{attempt}}/{{total}}",
1723
+ fallback_failed: "Fallback model failed {{attempt}}/{{total}}",
1724
+ retry_scheduled: "Scheduling model retry {{attempt}}/{{total}}",
1725
+ retry_started: "Retrying model call {{attempt}}/{{total}}",
1726
+ retry_succeeded: "Model retry succeeded {{attempt}}/{{total}}",
1727
+ retry_failed: "Model retry failed {{attempt}}/{{total}}"
1728
+ }
1729
+ },
1711
1730
  toolGroup: {
1712
1731
  status: {
1713
1732
  running: "Processing",
@@ -2088,6 +2107,22 @@ var zh_CN_default = {
2088
2107
  }
2089
2108
  }
2090
2109
  },
2110
+ middlewareEvent: {
2111
+ title: {
2112
+ default: "\u4E2D\u95F4\u4EF6",
2113
+ ModelFallbackMiddleware: "\u6A21\u578B\u56DE\u9000",
2114
+ ModelRetryMiddleware: "\u6A21\u578B\u91CD\u8BD5"
2115
+ },
2116
+ phase: {
2117
+ fallback_started: "\u6B63\u5728\u5C1D\u8BD5\u5907\u7528\u6A21\u578B {{attempt}}/{{total}}",
2118
+ fallback_succeeded: "\u5907\u7528\u6A21\u578B\u8C03\u7528\u6210\u529F {{attempt}}/{{total}}",
2119
+ fallback_failed: "\u5907\u7528\u6A21\u578B\u8C03\u7528\u5931\u8D25 {{attempt}}/{{total}}",
2120
+ retry_scheduled: "\u51C6\u5907\u91CD\u8BD5\u6A21\u578B\u8C03\u7528 {{attempt}}/{{total}}",
2121
+ retry_started: "\u6B63\u5728\u91CD\u8BD5\u6A21\u578B\u8C03\u7528 {{attempt}}/{{total}}",
2122
+ retry_succeeded: "\u6A21\u578B\u91CD\u8BD5\u6210\u529F {{attempt}}/{{total}}",
2123
+ retry_failed: "\u6A21\u578B\u91CD\u8BD5\u5931\u8D25 {{attempt}}/{{total}}"
2124
+ }
2125
+ },
2091
2126
  toolGroup: {
2092
2127
  status: {
2093
2128
  running: "\u6B63\u5728\u5904\u7406",
@@ -7814,6 +7849,9 @@ function findFallbackRunByAgentKey(runs, agentKey, rootExecutionId) {
7814
7849
  }
7815
7850
  function getEntryRunTarget(entry, runs, rootExecutionId) {
7816
7851
  const item = entry.item;
7852
+ if (typeof item !== "string" && isAgentEventContent(item) && item.event === "middleware_event") {
7853
+ return null;
7854
+ }
7817
7855
  const executionId = readContentExecutionId(item);
7818
7856
  const parentExecutionId = readContentParentExecutionId(item);
7819
7857
  const agentKey = readContentAgentKey(item);
@@ -7888,7 +7926,9 @@ function refreshAgentNodeOrder(node) {
7888
7926
  }
7889
7927
  function buildAssistantRenderTree(message) {
7890
7928
  const rootExecutionId = message.executionId;
7891
- const runs = message.agentRuns ?? [];
7929
+ const runs = (message.agentRuns ?? []).filter(
7930
+ (run) => !isMiddlewareAgentRunInfo(run)
7931
+ );
7892
7932
  const entries = normalizeAssistantEntries(message);
7893
7933
  const nodes = /* @__PURE__ */ new Map();
7894
7934
  const rootEntries = [];
@@ -9166,6 +9206,87 @@ function safeJson2(value) {
9166
9206
  function formatDisplayValue2(value) {
9167
9207
  return typeof value === "string" ? value : safeJson2(value);
9168
9208
  }
9209
+ function getAgentEventData(content) {
9210
+ return content.data && typeof content.data === "object" ? content.data : {};
9211
+ }
9212
+ function readTrimmedString(value) {
9213
+ if (typeof value !== "string") return null;
9214
+ const trimmed = value.trim();
9215
+ return trimmed ? trimmed : null;
9216
+ }
9217
+ function readDisplayToken(value) {
9218
+ if (typeof value === "number" && Number.isFinite(value)) {
9219
+ return String(value);
9220
+ }
9221
+ return readTrimmedString(value);
9222
+ }
9223
+ function getMiddlewareEventDetailData(data) {
9224
+ return data.data && typeof data.data === "object" && !Array.isArray(data.data) ? data.data : {};
9225
+ }
9226
+ function isMiddlewareEventContent(content) {
9227
+ return content.event === "middleware_event";
9228
+ }
9229
+ function getMiddlewareEventIcon(status) {
9230
+ const normalized = normalizeRunStatus(status);
9231
+ if (normalized === "running") {
9232
+ return { icon: import_lucide_react18.Loader2, spin: true };
9233
+ }
9234
+ if (isFailedRunStatus(status)) {
9235
+ return { icon: import_lucide_react18.XCircle, spin: false };
9236
+ }
9237
+ return { icon: import_lucide_react18.CheckCircle2, spin: false };
9238
+ }
9239
+ function MiddlewareEventRow({ content }) {
9240
+ const { t } = useChatkitTranslation();
9241
+ const eventData = getAgentEventData(content);
9242
+ const detailData = getMiddlewareEventDetailData(eventData);
9243
+ const middlewareName = readTrimmedString(eventData.middlewareName);
9244
+ const phase = readTrimmedString(eventData.phase);
9245
+ const fallbackTitle = readTrimmedString(content.title) || middlewareName || t("message.middlewareEvent.title.default");
9246
+ const label = middlewareName ? t(`message.middlewareEvent.title.${middlewareName}`, {
9247
+ defaultValue: fallbackTitle
9248
+ }) : fallbackTitle;
9249
+ const fallbackMessage = readTrimmedString(content.message) || phase || null;
9250
+ const attempt = readDisplayToken(detailData.attempt) ?? readDisplayToken(eventData.attempt);
9251
+ const total2 = readDisplayToken(detailData.totalAttempts) ?? readDisplayToken(detailData.total) ?? readDisplayToken(eventData.totalAttempts) ?? readDisplayToken(eventData.total);
9252
+ const detail = phase && attempt && total2 ? t(`message.middlewareEvent.phase.${phase}`, {
9253
+ attempt,
9254
+ total: total2,
9255
+ defaultValue: fallbackMessage ?? phase
9256
+ }) : fallbackMessage;
9257
+ const isError = content.error !== void 0 || isFailedRunStatus(content.status);
9258
+ const isRunning = isRunningRunStatus(content.status);
9259
+ const statusIcon = getMiddlewareEventIcon(content.status);
9260
+ const StatusIcon = statusIcon.icon;
9261
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
9262
+ "div",
9263
+ {
9264
+ "data-testid": "middleware-event-row",
9265
+ className: cn(
9266
+ "my-1 inline-flex max-w-full items-center gap-1.5 rounded-full border px-2 py-1 text-[11px] leading-4",
9267
+ isError ? "border-destructive/20 bg-destructive/5 text-destructive" : isRunning ? "border-border/60 bg-muted/20 text-muted-foreground" : "border-emerald-500/20 bg-emerald-500/5 text-muted-foreground"
9268
+ ),
9269
+ children: [
9270
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
9271
+ StatusIcon,
9272
+ {
9273
+ className: cn(
9274
+ "h-3.5 w-3.5 shrink-0",
9275
+ isRunning && "text-blue-700",
9276
+ !isRunning && !isError && "text-emerald-600",
9277
+ statusIcon.spin && "animate-spin"
9278
+ )
9279
+ }
9280
+ ),
9281
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: "min-w-0 truncate font-medium", children: label }),
9282
+ detail ? /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(import_jsx_runtime33.Fragment, { children: [
9283
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: "text-muted-foreground/50", children: "\xB7" }),
9284
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: "min-w-0 truncate", children: detail })
9285
+ ] }) : null
9286
+ ]
9287
+ }
9288
+ );
9289
+ }
9169
9290
  function formatStepDuration(durationMs) {
9170
9291
  if (durationMs < 1e3) {
9171
9292
  return `${durationMs}ms`;
@@ -9261,6 +9382,9 @@ function getAgentNodeUnits(node) {
9261
9382
  ].sort((a, b) => a.order - b.order);
9262
9383
  }
9263
9384
  function AgentEventRow({ content }) {
9385
+ if (isMiddlewareEventContent(content)) {
9386
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(MiddlewareEventRow, { content });
9387
+ }
9264
9388
  const label = content.title?.trim() || content.message?.trim() || content.event?.trim() || "Event";
9265
9389
  const detail = content.title?.trim() && content.message?.trim() ? content.message.trim() : null;
9266
9390
  const isError = content.error !== void 0 || isFailedRunStatus(content.status);
@@ -11121,19 +11245,43 @@ function FlatWidgetSurface({
11121
11245
  surfaceId
11122
11246
  }) {
11123
11247
  const { processMessages } = (0, import_a2ui_react.useA2UI)();
11248
+ const [renderError, setRenderError] = (0, import_react7.useState)(false);
11124
11249
  const normalizedMessages = (0, import_react7.useMemo)(
11125
11250
  () => normalizeFlatWidgetMessages(messages, surfaceId),
11126
11251
  [messages, surfaceId]
11127
11252
  );
11128
11253
  (0, import_react7.useEffect)(() => {
11129
11254
  if (normalizedMessages.length === 0) return;
11130
- processMessages(normalizedMessages);
11255
+ setRenderError(false);
11256
+ try {
11257
+ processMessages(normalizedMessages);
11258
+ } catch (error) {
11259
+ console.warn("[chatkit-ui] Failed to render widget surface", {
11260
+ surfaceId,
11261
+ error
11262
+ });
11263
+ setRenderError(true);
11264
+ return;
11265
+ }
11131
11266
  return () => {
11132
11267
  processMessages([{ deleteSurface: { surfaceId } }]);
11133
11268
  };
11134
11269
  }, [normalizedMessages, processMessages, surfaceId]);
11270
+ if (renderError) {
11271
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(WidgetRenderErrorFallback, {});
11272
+ }
11135
11273
  return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_a2ui_react.A2UIRenderer, { surfaceId });
11136
11274
  }
11275
+ function WidgetRenderErrorFallback() {
11276
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
11277
+ "div",
11278
+ {
11279
+ role: "alert",
11280
+ className: "rounded-md border border-destructive/20 bg-destructive/5 px-3 py-2 text-xs text-destructive",
11281
+ children: "Widget failed to render."
11282
+ }
11283
+ );
11284
+ }
11137
11285
  function normalizeFlatWidgetMessages(messages, surfaceId) {
11138
11286
  const generatedTemplateDataPaths = collectTemplateDataPaths(messages);
11139
11287
  const indexedRowsByPath = collectIndexedRowsByPath(
package/dist/index.js CHANGED
@@ -180,6 +180,9 @@ function readContentAgentKey(content) {
180
180
  if (!content || typeof content === "string") return void 0;
181
181
  return typeof content.agentKey === "string" && content.agentKey.trim() ? content.agentKey.trim() : void 0;
182
182
  }
183
+ function isMiddlewareAgentRunInfo(info) {
184
+ return info?.nodeType?.trim().toLowerCase() === "middleware";
185
+ }
183
186
 
184
187
  // src/lib/api-config.ts
185
188
  function hasConfiguredValue(value) {
@@ -1708,6 +1711,22 @@ var en_US_default = {
1708
1711
  }
1709
1712
  }
1710
1713
  },
1714
+ middlewareEvent: {
1715
+ title: {
1716
+ default: "Middleware",
1717
+ ModelFallbackMiddleware: "Model fallback",
1718
+ ModelRetryMiddleware: "Model retry"
1719
+ },
1720
+ phase: {
1721
+ fallback_started: "Trying fallback model {{attempt}}/{{total}}",
1722
+ fallback_succeeded: "Fallback model succeeded {{attempt}}/{{total}}",
1723
+ fallback_failed: "Fallback model failed {{attempt}}/{{total}}",
1724
+ retry_scheduled: "Scheduling model retry {{attempt}}/{{total}}",
1725
+ retry_started: "Retrying model call {{attempt}}/{{total}}",
1726
+ retry_succeeded: "Model retry succeeded {{attempt}}/{{total}}",
1727
+ retry_failed: "Model retry failed {{attempt}}/{{total}}"
1728
+ }
1729
+ },
1711
1730
  toolGroup: {
1712
1731
  status: {
1713
1732
  running: "Processing",
@@ -2088,6 +2107,22 @@ var zh_CN_default = {
2088
2107
  }
2089
2108
  }
2090
2109
  },
2110
+ middlewareEvent: {
2111
+ title: {
2112
+ default: "\u4E2D\u95F4\u4EF6",
2113
+ ModelFallbackMiddleware: "\u6A21\u578B\u56DE\u9000",
2114
+ ModelRetryMiddleware: "\u6A21\u578B\u91CD\u8BD5"
2115
+ },
2116
+ phase: {
2117
+ fallback_started: "\u6B63\u5728\u5C1D\u8BD5\u5907\u7528\u6A21\u578B {{attempt}}/{{total}}",
2118
+ fallback_succeeded: "\u5907\u7528\u6A21\u578B\u8C03\u7528\u6210\u529F {{attempt}}/{{total}}",
2119
+ fallback_failed: "\u5907\u7528\u6A21\u578B\u8C03\u7528\u5931\u8D25 {{attempt}}/{{total}}",
2120
+ retry_scheduled: "\u51C6\u5907\u91CD\u8BD5\u6A21\u578B\u8C03\u7528 {{attempt}}/{{total}}",
2121
+ retry_started: "\u6B63\u5728\u91CD\u8BD5\u6A21\u578B\u8C03\u7528 {{attempt}}/{{total}}",
2122
+ retry_succeeded: "\u6A21\u578B\u91CD\u8BD5\u6210\u529F {{attempt}}/{{total}}",
2123
+ retry_failed: "\u6A21\u578B\u91CD\u8BD5\u5931\u8D25 {{attempt}}/{{total}}"
2124
+ }
2125
+ },
2091
2126
  toolGroup: {
2092
2127
  status: {
2093
2128
  running: "\u6B63\u5728\u5904\u7406",
@@ -7858,6 +7893,9 @@ function findFallbackRunByAgentKey(runs, agentKey, rootExecutionId) {
7858
7893
  }
7859
7894
  function getEntryRunTarget(entry, runs, rootExecutionId) {
7860
7895
  const item = entry.item;
7896
+ if (typeof item !== "string" && isAgentEventContent(item) && item.event === "middleware_event") {
7897
+ return null;
7898
+ }
7861
7899
  const executionId = readContentExecutionId(item);
7862
7900
  const parentExecutionId = readContentParentExecutionId(item);
7863
7901
  const agentKey = readContentAgentKey(item);
@@ -7932,7 +7970,9 @@ function refreshAgentNodeOrder(node) {
7932
7970
  }
7933
7971
  function buildAssistantRenderTree(message) {
7934
7972
  const rootExecutionId = message.executionId;
7935
- const runs = message.agentRuns ?? [];
7973
+ const runs = (message.agentRuns ?? []).filter(
7974
+ (run) => !isMiddlewareAgentRunInfo(run)
7975
+ );
7936
7976
  const entries = normalizeAssistantEntries(message);
7937
7977
  const nodes = /* @__PURE__ */ new Map();
7938
7978
  const rootEntries = [];
@@ -9226,7 +9266,7 @@ import {
9226
9266
  Wrench,
9227
9267
  XCircle
9228
9268
  } from "lucide-react";
9229
- import { jsx as jsx33, jsxs as jsxs21 } from "react/jsx-runtime";
9269
+ import { Fragment as Fragment6, jsx as jsx33, jsxs as jsxs21 } from "react/jsx-runtime";
9230
9270
  function safeJson2(value) {
9231
9271
  try {
9232
9272
  return JSON.stringify(value, null, 2);
@@ -9237,6 +9277,87 @@ function safeJson2(value) {
9237
9277
  function formatDisplayValue2(value) {
9238
9278
  return typeof value === "string" ? value : safeJson2(value);
9239
9279
  }
9280
+ function getAgentEventData(content) {
9281
+ return content.data && typeof content.data === "object" ? content.data : {};
9282
+ }
9283
+ function readTrimmedString(value) {
9284
+ if (typeof value !== "string") return null;
9285
+ const trimmed = value.trim();
9286
+ return trimmed ? trimmed : null;
9287
+ }
9288
+ function readDisplayToken(value) {
9289
+ if (typeof value === "number" && Number.isFinite(value)) {
9290
+ return String(value);
9291
+ }
9292
+ return readTrimmedString(value);
9293
+ }
9294
+ function getMiddlewareEventDetailData(data) {
9295
+ return data.data && typeof data.data === "object" && !Array.isArray(data.data) ? data.data : {};
9296
+ }
9297
+ function isMiddlewareEventContent(content) {
9298
+ return content.event === "middleware_event";
9299
+ }
9300
+ function getMiddlewareEventIcon(status) {
9301
+ const normalized = normalizeRunStatus(status);
9302
+ if (normalized === "running") {
9303
+ return { icon: Loader24, spin: true };
9304
+ }
9305
+ if (isFailedRunStatus(status)) {
9306
+ return { icon: XCircle, spin: false };
9307
+ }
9308
+ return { icon: CheckCircle22, spin: false };
9309
+ }
9310
+ function MiddlewareEventRow({ content }) {
9311
+ const { t } = useChatkitTranslation();
9312
+ const eventData = getAgentEventData(content);
9313
+ const detailData = getMiddlewareEventDetailData(eventData);
9314
+ const middlewareName = readTrimmedString(eventData.middlewareName);
9315
+ const phase = readTrimmedString(eventData.phase);
9316
+ const fallbackTitle = readTrimmedString(content.title) || middlewareName || t("message.middlewareEvent.title.default");
9317
+ const label = middlewareName ? t(`message.middlewareEvent.title.${middlewareName}`, {
9318
+ defaultValue: fallbackTitle
9319
+ }) : fallbackTitle;
9320
+ const fallbackMessage = readTrimmedString(content.message) || phase || null;
9321
+ const attempt = readDisplayToken(detailData.attempt) ?? readDisplayToken(eventData.attempt);
9322
+ const total2 = readDisplayToken(detailData.totalAttempts) ?? readDisplayToken(detailData.total) ?? readDisplayToken(eventData.totalAttempts) ?? readDisplayToken(eventData.total);
9323
+ const detail = phase && attempt && total2 ? t(`message.middlewareEvent.phase.${phase}`, {
9324
+ attempt,
9325
+ total: total2,
9326
+ defaultValue: fallbackMessage ?? phase
9327
+ }) : fallbackMessage;
9328
+ const isError = content.error !== void 0 || isFailedRunStatus(content.status);
9329
+ const isRunning = isRunningRunStatus(content.status);
9330
+ const statusIcon = getMiddlewareEventIcon(content.status);
9331
+ const StatusIcon = statusIcon.icon;
9332
+ return /* @__PURE__ */ jsxs21(
9333
+ "div",
9334
+ {
9335
+ "data-testid": "middleware-event-row",
9336
+ className: cn(
9337
+ "my-1 inline-flex max-w-full items-center gap-1.5 rounded-full border px-2 py-1 text-[11px] leading-4",
9338
+ isError ? "border-destructive/20 bg-destructive/5 text-destructive" : isRunning ? "border-border/60 bg-muted/20 text-muted-foreground" : "border-emerald-500/20 bg-emerald-500/5 text-muted-foreground"
9339
+ ),
9340
+ children: [
9341
+ /* @__PURE__ */ jsx33(
9342
+ StatusIcon,
9343
+ {
9344
+ className: cn(
9345
+ "h-3.5 w-3.5 shrink-0",
9346
+ isRunning && "text-blue-700",
9347
+ !isRunning && !isError && "text-emerald-600",
9348
+ statusIcon.spin && "animate-spin"
9349
+ )
9350
+ }
9351
+ ),
9352
+ /* @__PURE__ */ jsx33("span", { className: "min-w-0 truncate font-medium", children: label }),
9353
+ detail ? /* @__PURE__ */ jsxs21(Fragment6, { children: [
9354
+ /* @__PURE__ */ jsx33("span", { className: "text-muted-foreground/50", children: "\xB7" }),
9355
+ /* @__PURE__ */ jsx33("span", { className: "min-w-0 truncate", children: detail })
9356
+ ] }) : null
9357
+ ]
9358
+ }
9359
+ );
9360
+ }
9240
9361
  function formatStepDuration(durationMs) {
9241
9362
  if (durationMs < 1e3) {
9242
9363
  return `${durationMs}ms`;
@@ -9332,6 +9453,9 @@ function getAgentNodeUnits(node) {
9332
9453
  ].sort((a, b) => a.order - b.order);
9333
9454
  }
9334
9455
  function AgentEventRow({ content }) {
9456
+ if (isMiddlewareEventContent(content)) {
9457
+ return /* @__PURE__ */ jsx33(MiddlewareEventRow, { content });
9458
+ }
9335
9459
  const label = content.title?.trim() || content.message?.trim() || content.event?.trim() || "Event";
9336
9460
  const detail = content.title?.trim() && content.message?.trim() ? content.message.trim() : null;
9337
9461
  const isError = content.error !== void 0 || isFailedRunStatus(content.status);
@@ -11177,7 +11301,7 @@ function RequestUserInputResultCard({
11177
11301
  }
11178
11302
 
11179
11303
  // src/components/thread/messages/widget.tsx
11180
- import { useEffect as useEffect17, useMemo as useMemo10 } from "react";
11304
+ import { useEffect as useEffect17, useMemo as useMemo10, useState as useState18 } from "react";
11181
11305
  import {
11182
11306
  A2UIRenderer,
11183
11307
  SurfaceRenderer,
@@ -11220,19 +11344,43 @@ function FlatWidgetSurface({
11220
11344
  surfaceId
11221
11345
  }) {
11222
11346
  const { processMessages } = useA2UI();
11347
+ const [renderError, setRenderError] = useState18(false);
11223
11348
  const normalizedMessages = useMemo10(
11224
11349
  () => normalizeFlatWidgetMessages(messages, surfaceId),
11225
11350
  [messages, surfaceId]
11226
11351
  );
11227
11352
  useEffect17(() => {
11228
11353
  if (normalizedMessages.length === 0) return;
11229
- processMessages(normalizedMessages);
11354
+ setRenderError(false);
11355
+ try {
11356
+ processMessages(normalizedMessages);
11357
+ } catch (error) {
11358
+ console.warn("[chatkit-ui] Failed to render widget surface", {
11359
+ surfaceId,
11360
+ error
11361
+ });
11362
+ setRenderError(true);
11363
+ return;
11364
+ }
11230
11365
  return () => {
11231
11366
  processMessages([{ deleteSurface: { surfaceId } }]);
11232
11367
  };
11233
11368
  }, [normalizedMessages, processMessages, surfaceId]);
11369
+ if (renderError) {
11370
+ return /* @__PURE__ */ jsx40(WidgetRenderErrorFallback, {});
11371
+ }
11234
11372
  return /* @__PURE__ */ jsx40(A2UIRenderer, { surfaceId });
11235
11373
  }
11374
+ function WidgetRenderErrorFallback() {
11375
+ return /* @__PURE__ */ jsx40(
11376
+ "div",
11377
+ {
11378
+ role: "alert",
11379
+ className: "rounded-md border border-destructive/20 bg-destructive/5 px-3 py-2 text-xs text-destructive",
11380
+ children: "Widget failed to render."
11381
+ }
11382
+ );
11383
+ }
11236
11384
  function normalizeFlatWidgetMessages(messages, surfaceId) {
11237
11385
  const generatedTemplateDataPaths = collectTemplateDataPaths(messages);
11238
11386
  const indexedRowsByPath = collectIndexedRowsByPath(
@@ -13989,7 +14137,7 @@ function findDomPointForComposerOffset(root, offset) {
13989
14137
  }
13990
14138
 
13991
14139
  // src/components/chat.tsx
13992
- import { Fragment as Fragment8, jsx as jsx53, jsxs as jsxs36 } from "react/jsx-runtime";
14140
+ import { Fragment as Fragment9, jsx as jsx53, jsxs as jsxs36 } from "react/jsx-runtime";
13993
14141
  var defaultApiUrl2 = import.meta.env.VITE_XPERTAI_API_URL;
13994
14142
  var COMPOSER_INPUT_MAX_HEIGHT = 128;
13995
14143
  var LONG_TEXT_REFERENCE_THRESHOLD = 5e3;
@@ -16104,7 +16252,7 @@ function Chat({
16104
16252
  ) }) }),
16105
16253
  /* @__PURE__ */ jsx53(TooltipContent, { side: "bottom", children: t("settings.open") })
16106
16254
  ] }),
16107
- history?.enabled !== false && /* @__PURE__ */ jsxs36(Fragment8, { children: [
16255
+ history?.enabled !== false && /* @__PURE__ */ jsxs36(Fragment9, { children: [
16108
16256
  /* @__PURE__ */ jsxs36(Tooltip, { children: [
16109
16257
  /* @__PURE__ */ jsx53(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsx53("span", { className: "inline-flex h-8 w-8", children: /* @__PURE__ */ jsx53(
16110
16258
  "button",
@@ -16249,7 +16397,7 @@ function Chat({
16249
16397
  organizationId: stream.organizationId,
16250
16398
  apiUrl: stream.apiUrl
16251
16399
  }
16252
- ) : /* @__PURE__ */ jsxs36(Fragment8, { children: [
16400
+ ) : /* @__PURE__ */ jsxs36(Fragment9, { children: [
16253
16401
  message.type === "human" && humanRuntimeCapabilityOptions.length > 0 && /* @__PURE__ */ jsx53("div", { className: "mb-2 flex flex-wrap gap-1.5", children: humanRuntimeCapabilityOptions.map((option) => /* @__PURE__ */ jsxs36(
16254
16402
  "span",
16255
16403
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xpert-ai/chatkit-ui",
3
- "version": "0.3.13",
3
+ "version": "0.3.15",
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.3",
64
- "@xpert-ai/chatkit-types": "~0.3.11"
63
+ "@xpert-ai/chatkit-types": "~0.3.11",
64
+ "@xpert-ai/chatkit-web-shared": "~0.3.3"
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-BEJfqOrB.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-Cdsd7ZCo.js";import{_ as i}from"./index-BEJfqOrB.js";import"./chunk-FMBD7UC4-C63-DQH9.js";import"./chunk-YZCP3GAM-Bx3_k3Zo.js";import"./chunk-55IACEB6-ZTsQ3wyw.js";import"./chunk-EDXVE4YY-isVJYuaP.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-Cdsd7ZCo.js";import{_ as i}from"./index-BEJfqOrB.js";import"./chunk-FMBD7UC4-C63-DQH9.js";import"./chunk-YZCP3GAM-Bx3_k3Zo.js";import"./chunk-55IACEB6-ZTsQ3wyw.js";import"./chunk-EDXVE4YY-isVJYuaP.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-Cq9YMAYz.js";var e=4;function a(o){return r(o,e)}export{a as c};