@xpert-ai/chatkit-ui 0.4.0 → 0.4.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 (334) hide show
  1. package/dist/app/assets/{_baseUniq-DgIHlkQm.js → _baseUniq-DhcCNE2L.js} +1 -1
  2. package/dist/app/assets/{abap-lB8VLppN.js → abap-_IjCfpBS.js} +1 -1
  3. package/dist/app/assets/{abnf-CMm-FA7V.js → abnf-CekkQUy9.js} +1 -1
  4. package/dist/app/assets/{actionscript-C44LZKx4.js → actionscript-C9XSSYhb.js} +1 -1
  5. package/dist/app/assets/{ada-BL4d2yHl.js → ada-4vLfjsZX.js} +1 -1
  6. package/dist/app/assets/{agda-DUeBOfao.js → agda-CER1MQer.js} +1 -1
  7. package/dist/app/assets/{al-r379MYUc.js → al-DVApc0ak.js} +1 -1
  8. package/dist/app/assets/{antlr4-BhepIW3H.js → antlr4-CTOuYhug.js} +1 -1
  9. package/dist/app/assets/{apacheconf-ZblTvauv.js → apacheconf-Cx3fh3do.js} +1 -1
  10. package/dist/app/assets/{apex-DXCjRfej.js → apex-CQChIoUK.js} +1 -1
  11. package/dist/app/assets/{apl-0mvw9LXG.js → apl-rqEDU7gi.js} +1 -1
  12. package/dist/app/assets/{applescript-s8Oxmrfz.js → applescript-SibyzsWq.js} +1 -1
  13. package/dist/app/assets/{aql-BMN4x1O3.js → aql-D5s-oH6r.js} +1 -1
  14. package/dist/app/assets/{arc-xNYJT0Sf.js → arc-CqOJzRv3.js} +1 -1
  15. package/dist/app/assets/{architectureDiagram-Q4EWVU46-B3lvRgUo.js → architectureDiagram-Q4EWVU46-Sc4cdTS9.js} +1 -1
  16. package/dist/app/assets/{arduino-daTjF253.js → arduino-CAvcLJph.js} +1 -1
  17. package/dist/app/assets/{arff-DxxxOwyy.js → arff-DXHd3IWb.js} +1 -1
  18. package/dist/app/assets/{asciidoc-B0aClqCc.js → asciidoc-D1qamWMF.js} +1 -1
  19. package/dist/app/assets/{asm6502-BsfejLyD.js → asm6502-CLD-Uamm.js} +1 -1
  20. package/dist/app/assets/{asmatmel-BQPOdk6m.js → asmatmel-CTTTETEh.js} +1 -1
  21. package/dist/app/assets/{aspnet-CI7Ah4u1.js → aspnet-gANAeiiI.js} +1 -1
  22. package/dist/app/assets/{autohotkey-IQAyKsEZ.js → autohotkey-DZzEICDN.js} +1 -1
  23. package/dist/app/assets/{autoit-Cc50euDJ.js → autoit-DU2qU7yP.js} +1 -1
  24. package/dist/app/assets/{avisynth-D_3k61Mh.js → avisynth-CW7VMs_l.js} +1 -1
  25. package/dist/app/assets/{avro-idl-Dakyv0EK.js → avro-idl-m7lwvLZF.js} +1 -1
  26. package/dist/app/assets/{bash-CK4ls-uk.js → bash-DhNYFOgQ.js} +1 -1
  27. package/dist/app/assets/{basic-sAy-3U_-.js → basic-CBgclVFD.js} +1 -1
  28. package/dist/app/assets/{batch-BULEa0VP.js → batch-_m1D2SzT.js} +1 -1
  29. package/dist/app/assets/{bbcode-mxGKgZDu.js → bbcode-BuWXKUuN.js} +1 -1
  30. package/dist/app/assets/{bicep-DxUd9L5w.js → bicep-CNNhU7qf.js} +1 -1
  31. package/dist/app/assets/{birb-CT9d0Hfg.js → birb-Df15PWNN.js} +1 -1
  32. package/dist/app/assets/{bison-CJWctWOI.js → bison-pTGuYt5R.js} +1 -1
  33. package/dist/app/assets/{blockDiagram-DXYQGD6D-D-AjcpQ4.js → blockDiagram-DXYQGD6D-COmjjfPf.js} +1 -1
  34. package/dist/app/assets/{bnf-BfiH5qUl.js → bnf-5rjVHg1A.js} +1 -1
  35. package/dist/app/assets/{brainfuck-BXCfmtpc.js → brainfuck-2M-a_fzt.js} +1 -1
  36. package/dist/app/assets/{brightscript-B8Se3L7d.js → brightscript-BUcx3Uan.js} +1 -1
  37. package/dist/app/assets/{bro-BYNaGskD.js → bro-BtT_dXGd.js} +1 -1
  38. package/dist/app/assets/{bsl-rAkCQZce.js → bsl-C1h-9jbB.js} +1 -1
  39. package/dist/app/assets/{c-BLwhDOSO.js → c-Cn84DM0m.js} +1 -1
  40. package/dist/app/assets/{c4Diagram-AHTNJAMY-CqDIUKeo.js → c4Diagram-AHTNJAMY-BE1kXuuS.js} +1 -1
  41. package/dist/app/assets/{cfscript-BEVtIJMz.js → cfscript-2H4o-JIw.js} +1 -1
  42. package/dist/app/assets/{chaiscript-DcH2srx5.js → chaiscript-C1Bjxsfh.js} +1 -1
  43. package/dist/app/assets/channel-BVeXXlex.js +1 -0
  44. package/dist/app/assets/{chunk-4BX2VUAB-m_kyuUbe.js → chunk-4BX2VUAB-DZ_C_iKC.js} +1 -1
  45. package/dist/app/assets/{chunk-4TB4RGXK-BjqYS6Yy.js → chunk-4TB4RGXK-DApXi72F.js} +1 -1
  46. package/dist/app/assets/{chunk-55IACEB6-oWAL2kJR.js → chunk-55IACEB6-Dk5pcDDA.js} +1 -1
  47. package/dist/app/assets/{chunk-EDXVE4YY-BR40heM4.js → chunk-EDXVE4YY-C3768OfQ.js} +1 -1
  48. package/dist/app/assets/{chunk-FMBD7UC4-Bv7-5Ls-.js → chunk-FMBD7UC4-BvglBVER.js} +1 -1
  49. package/dist/app/assets/{chunk-OYMX7WX6-CIKeB20i.js → chunk-OYMX7WX6-DMLEPpZh.js} +1 -1
  50. package/dist/app/assets/{chunk-QZHKN3VN-CBk_nqgS.js → chunk-QZHKN3VN-_kOwjXni.js} +1 -1
  51. package/dist/app/assets/{chunk-YZCP3GAM-DbrAyIeM.js → chunk-YZCP3GAM-BofXuboV.js} +1 -1
  52. package/dist/app/assets/{cil-HIWN64iA.js → cil-DHyrqdX_.js} +1 -1
  53. package/dist/app/assets/classDiagram-6PBFFD2Q-Bx9mt6fp.js +1 -0
  54. package/dist/app/assets/classDiagram-v2-HSJHXN6E-Bx9mt6fp.js +1 -0
  55. package/dist/app/assets/{clike-DWwvlcID.js → clike-Bf02ej9F.js} +1 -1
  56. package/dist/app/assets/{clojure-m5aYwMVY.js → clojure-LoSvb9pa.js} +1 -1
  57. package/dist/app/assets/clone-C3qA4Qv-.js +1 -0
  58. package/dist/app/assets/{cmake-D1AphalP.js → cmake-BkWc04wT.js} +1 -1
  59. package/dist/app/assets/{cobol-DfRj-gRZ.js → cobol-_nZTdMgt.js} +1 -1
  60. package/dist/app/assets/{coffeescript-DBVw6hft.js → coffeescript-DT5ySztk.js} +1 -1
  61. package/dist/app/assets/{concurnas-p-HBsubn.js → concurnas-DSAYXuEZ.js} +1 -1
  62. package/dist/app/assets/{coq-DpEsabSd.js → coq-CrgIrANd.js} +1 -1
  63. package/dist/app/assets/{core-Bu1sMhBI.js → core-C27f_Wct.js} +1 -1
  64. package/dist/app/assets/{cose-bilkent-S5V4N54A-Bu1oc34k.js → cose-bilkent-S5V4N54A-BqnGiR9q.js} +1 -1
  65. package/dist/app/assets/{cpp-DWOjniRs.js → cpp-DNsF-Kz_.js} +1 -1
  66. package/dist/app/assets/{crystal-CQJ7kmd6.js → crystal-yRp-Ck4J.js} +1 -1
  67. package/dist/app/assets/{csharp-D7MPpOcK.js → csharp-Dh8DUZOE.js} +1 -1
  68. package/dist/app/assets/{cshtml-DKqAFWTy.js → cshtml-CuaqD5vI.js} +1 -1
  69. package/dist/app/assets/{csp-CdccqHH0.js → csp-TuU29N7c.js} +1 -1
  70. package/dist/app/assets/{css-CF8Mhm8t.js → css-DfThiGDT.js} +1 -1
  71. package/dist/app/assets/{css-extras-BzYoJo_2.js → css-extras-DN46Xx9D.js} +1 -1
  72. package/dist/app/assets/{csv-BkNUxNGN.js → csv-BEpZMNNd.js} +1 -1
  73. package/dist/app/assets/{cypher-B6Ago4_f.js → cypher-CXuYSM3m.js} +1 -1
  74. package/dist/app/assets/{d-0OD8he-p.js → d-DBLRM2HM.js} +1 -1
  75. package/dist/app/assets/{dagre-KV5264BT-CtnwN-Dh.js → dagre-KV5264BT-YbfphbKk.js} +1 -1
  76. package/dist/app/assets/{dart-CRBezsEJ.js → dart-ClooZxtE.js} +1 -1
  77. package/dist/app/assets/{dataweave-C5NSsb9T.js → dataweave-iLNtOM4o.js} +1 -1
  78. package/dist/app/assets/{dax-DA_08-S-.js → dax-OQ4SKQyZ.js} +1 -1
  79. package/dist/app/assets/{dhall-B5eyKfIX.js → dhall-BcEs9_Il.js} +1 -1
  80. package/dist/app/assets/{diagram-5BDNPKRD-BWMmYkfv.js → diagram-5BDNPKRD-CrSfz4ol.js} +1 -1
  81. package/dist/app/assets/{diagram-G4DWMVQ6-BZqIfTTc.js → diagram-G4DWMVQ6-COOuGquM.js} +1 -1
  82. package/dist/app/assets/{diagram-MMDJMWI5--lVSAtvL.js → diagram-MMDJMWI5-CLudV92t.js} +1 -1
  83. package/dist/app/assets/{diagram-TYMM5635-CAdX-pMH.js → diagram-TYMM5635-7hK6dmHH.js} +1 -1
  84. package/dist/app/assets/{diff-BcQ3lgLg.js → diff-C3sAjilP.js} +1 -1
  85. package/dist/app/assets/{django-C_tw_AYj.js → django-DWDamL3u.js} +1 -1
  86. package/dist/app/assets/{dns-zone-file-CyqP1EvD.js → dns-zone-file-Bs-k24AT.js} +1 -1
  87. package/dist/app/assets/{docker-wz3Lj9Db.js → docker-CbsxZOR_.js} +1 -1
  88. package/dist/app/assets/{dot-B-DDY2H8.js → dot-cmPUgJiw.js} +1 -1
  89. package/dist/app/assets/{ebnf-X2ewhLUy.js → ebnf-B20H8M5E.js} +1 -1
  90. package/dist/app/assets/{editorconfig-qcUVBPkT.js → editorconfig-CD8ZN3N0.js} +1 -1
  91. package/dist/app/assets/{eiffel-BAqW7pbE.js → eiffel-A2f55FY2.js} +1 -1
  92. package/dist/app/assets/{ejs-61WKLTYk.js → ejs-DFRIdoGh.js} +1 -1
  93. package/dist/app/assets/{elixir-EzFqXZk2.js → elixir-_kwd_REn.js} +1 -1
  94. package/dist/app/assets/{elm-DmnpDBDa.js → elm-DQY_1HmV.js} +1 -1
  95. package/dist/app/assets/{erDiagram-SMLLAGMA-D-t806Qt.js → erDiagram-SMLLAGMA-S51NLIRq.js} +1 -1
  96. package/dist/app/assets/{erb-CcQKm2oQ.js → erb-Dhn1_rOy.js} +1 -1
  97. package/dist/app/assets/{erlang-DW-WXopd.js → erlang-X69_IFoF.js} +1 -1
  98. package/dist/app/assets/{etlua-BJxhJpxy.js → etlua-KG8BhZyB.js} +1 -1
  99. package/dist/app/assets/{excel-formula-7oXshpg3.js → excel-formula-CNlbsFIR.js} +1 -1
  100. package/dist/app/assets/{factor-BC8WW8Od.js → factor-B3wH4xq3.js} +1 -1
  101. package/dist/app/assets/{false-C6lXY4VC.js → false-CgytrAC7.js} +1 -1
  102. package/dist/app/assets/{firestore-security-rules-B4dcnH7G.js → firestore-security-rules-Coo0DWR5.js} +1 -1
  103. package/dist/app/assets/{flow-CFpX3faq.js → flow-Cy8AbL-B.js} +1 -1
  104. package/dist/app/assets/{flowDiagram-DWJPFMVM-BjTXVIWo.js → flowDiagram-DWJPFMVM-3gGb45g_.js} +1 -1
  105. package/dist/app/assets/{fortran-RwIGxqZ9.js → fortran-h5riSewD.js} +1 -1
  106. package/dist/app/assets/{fsharp-C5S6wt_8.js → fsharp-CkvWu7RS.js} +1 -1
  107. package/dist/app/assets/{ftl-DXTedmzK.js → ftl-A8LPSp4k.js} +1 -1
  108. package/dist/app/assets/{ganttDiagram-T4ZO3ILL-DPqZs20S.js → ganttDiagram-T4ZO3ILL-LEeFMCzh.js} +1 -1
  109. package/dist/app/assets/{gap-C0KFM8Sn.js → gap-Db8FJjp9.js} +1 -1
  110. package/dist/app/assets/{gcode-Ck54RmDV.js → gcode-CmfDqUKZ.js} +1 -1
  111. package/dist/app/assets/{gdscript-DX_Bezt8.js → gdscript-DJWWbktQ.js} +1 -1
  112. package/dist/app/assets/{gedcom-54x_GC3_.js → gedcom-DZLZnv4o.js} +1 -1
  113. package/dist/app/assets/{gherkin-DpY70MhW.js → gherkin-dhrCyYj5.js} +1 -1
  114. package/dist/app/assets/{git-Bg40h27U.js → git-Dee4nqm_.js} +1 -1
  115. package/dist/app/assets/{gitGraphDiagram-UUTBAWPF-CMuB9NDh.js → gitGraphDiagram-UUTBAWPF-Cx0_OfVi.js} +1 -1
  116. package/dist/app/assets/{glsl-BcqYx_6I.js → glsl-CGkGtKvP.js} +1 -1
  117. package/dist/app/assets/{gml-DJePf9E6.js → gml-Cyovha5T.js} +1 -1
  118. package/dist/app/assets/{gn-hOkcYKt5.js → gn-CZZWsczF.js} +1 -1
  119. package/dist/app/assets/{go-CBdX4RKq.js → go-TELCDRfl.js} +1 -1
  120. package/dist/app/assets/{go-module-8CqpJAjn.js → go-module-DwdrJQUt.js} +1 -1
  121. package/dist/app/assets/{graph-DiXdxCpd.js → graph-Def3Ff6O.js} +1 -1
  122. package/dist/app/assets/{graphql-DzkHa_Lt.js → graphql-BQkD7E1b.js} +1 -1
  123. package/dist/app/assets/{groovy-CuKAytl9.js → groovy-DSpGF2Ks.js} +1 -1
  124. package/dist/app/assets/{haml-BHlOO4D-.js → haml-VPtmscyv.js} +1 -1
  125. package/dist/app/assets/{handlebars-DgTuPlRj.js → handlebars-B6tGrDNr.js} +1 -1
  126. package/dist/app/assets/{haskell-BYOS6zzQ.js → haskell-sD0oStLn.js} +1 -1
  127. package/dist/app/assets/{haxe-QCi0Miq5.js → haxe-CHQlINJc.js} +1 -1
  128. package/dist/app/assets/{hcl-DCUWHECM.js → hcl-B8fn6CLE.js} +1 -1
  129. package/dist/app/assets/{hlsl-Bp2hwiJd.js → hlsl-BRt3KlBi.js} +1 -1
  130. package/dist/app/assets/{hoon-BzW-9-xp.js → hoon-Y1tyBFu_.js} +1 -1
  131. package/dist/app/assets/{hpkp-BWPv-cBm.js → hpkp-B6tkTng1.js} +1 -1
  132. package/dist/app/assets/{hsts-CJiK6uQM.js → hsts-BT0gpx-A.js} +1 -1
  133. package/dist/app/assets/{http-DQlaEk07.js → http-Vi5xN3SQ.js} +1 -1
  134. package/dist/app/assets/{ichigojam-K2-54W_i.js → ichigojam-DwzjQwUK.js} +1 -1
  135. package/dist/app/assets/{icon-DtDq4nwU.js → icon-CpNOZuom.js} +1 -1
  136. package/dist/app/assets/{icu-message-format-CzUzfEvD.js → icu-message-format-E7DXI-1d.js} +1 -1
  137. package/dist/app/assets/{idris-CZStDvUu.js → idris-Z32VP4RM.js} +1 -1
  138. package/dist/app/assets/{iecst-BJn6mRZC.js → iecst-CN5WMb2J.js} +1 -1
  139. package/dist/app/assets/{ignore-BZ9E9rMx.js → ignore-BPsyPKDL.js} +1 -1
  140. package/dist/app/assets/{index-BCZfU1mO.js → index-t-7uVNvT.js} +163 -163
  141. package/dist/app/assets/{infoDiagram-42DDH7IO-BVqN5Cf-.js → infoDiagram-42DDH7IO-CloBfZbd.js} +1 -1
  142. package/dist/app/assets/{inform7-C64PxE5P.js → inform7-DGLBlAGK.js} +1 -1
  143. package/dist/app/assets/{ini-D6uyClxM.js → ini-BV3KOH-Q.js} +1 -1
  144. package/dist/app/assets/{io-BEddoOXw.js → io-CRo9k3OJ.js} +1 -1
  145. package/dist/app/assets/{ishikawaDiagram-UXIWVN3A-DMCnYQDL.js → ishikawaDiagram-UXIWVN3A-CYPPbF3l.js} +1 -1
  146. package/dist/app/assets/{j-BZjnLaoD.js → j-CHGRxEkV.js} +1 -1
  147. package/dist/app/assets/{java-C16BQXmJ.js → java-DcCc37S9.js} +1 -1
  148. package/dist/app/assets/{javadoc-Bp_K_1w9.js → javadoc-BajT0oRQ.js} +1 -1
  149. package/dist/app/assets/{javadoclike-CCL57XT3.js → javadoclike-BMMsIcdV.js} +1 -1
  150. package/dist/app/assets/{javascript-UKmanPpI.js → javascript-DyXwMbB3.js} +1 -1
  151. package/dist/app/assets/{javastacktrace-Bt6MmvHK.js → javastacktrace-DTvR039l.js} +1 -1
  152. package/dist/app/assets/{jexl-BSIE3NAS.js → jexl-Ot_nPhCk.js} +1 -1
  153. package/dist/app/assets/{jolie-DwAozljt.js → jolie-BUy51jNj.js} +1 -1
  154. package/dist/app/assets/{journeyDiagram-VCZTEJTY-hfkm8x7F.js → journeyDiagram-VCZTEJTY-Brna5vzp.js} +1 -1
  155. package/dist/app/assets/{jq-B6HQblEc.js → jq-5mmxZEvV.js} +1 -1
  156. package/dist/app/assets/{js-extras-C4kJ0q_P.js → js-extras-zVUUAKO_.js} +1 -1
  157. package/dist/app/assets/{js-templates-BF0RGSgj.js → js-templates-iJxD_2Sa.js} +1 -1
  158. package/dist/app/assets/{jsdoc-BaH_CjIP.js → jsdoc-DJ_m_yCh.js} +1 -1
  159. package/dist/app/assets/{json-JpTWEtLR.js → json-CZjhVgPK.js} +1 -1
  160. package/dist/app/assets/{json5-DJHj-rXR.js → json5-BNvFsIbI.js} +1 -1
  161. package/dist/app/assets/{jsonp-DpjTc_na.js → jsonp-gRo4PPGN.js} +1 -1
  162. package/dist/app/assets/{jsstacktrace-DnLa9vhb.js → jsstacktrace-CT2oLlCK.js} +1 -1
  163. package/dist/app/assets/{jsx-BRHrY2BL.js → jsx-d0efg1vk.js} +1 -1
  164. package/dist/app/assets/{julia-9zZ-iwP_.js → julia-Dqs_RiDo.js} +1 -1
  165. package/dist/app/assets/{kanban-definition-6JOO6SKY-DE3YihJJ.js → kanban-definition-6JOO6SKY-tE-1j_ia.js} +1 -1
  166. package/dist/app/assets/{keepalived-Uu89aoXa.js → keepalived-Ber37oOF.js} +1 -1
  167. package/dist/app/assets/{keyman-DFGcwqDK.js → keyman-C5bFTeeI.js} +1 -1
  168. package/dist/app/assets/{kotlin-LTPAm-Va.js → kotlin-DBq0G8Hn.js} +1 -1
  169. package/dist/app/assets/{kumir-BcPP82e-.js → kumir-_r-igbu1.js} +1 -1
  170. package/dist/app/assets/{kusto-CxK7uEBf.js → kusto-Dnrek9TI.js} +1 -1
  171. package/dist/app/assets/{latex-CJOru6Xl.js → latex-B78lTwvc.js} +1 -1
  172. package/dist/app/assets/{latte-yocJ797x.js → latte-CaSKAGnv.js} +1 -1
  173. package/dist/app/assets/{layout-CXEXCcrp.js → layout-BZiHvIMv.js} +1 -1
  174. package/dist/app/assets/{less-BmacGfdt.js → less-C0gq5vaY.js} +1 -1
  175. package/dist/app/assets/{lilypond-XADZqv26.js → lilypond-GMV-kxfc.js} +1 -1
  176. package/dist/app/assets/{linear-BoHhQExU.js → linear-sCxwL64x.js} +1 -1
  177. package/dist/app/assets/{liquid-DrXu3I4o.js → liquid-Bjcywher.js} +1 -1
  178. package/dist/app/assets/{lisp-D7GBOEAq.js → lisp-Di4LOhy9.js} +1 -1
  179. package/dist/app/assets/{livescript-CYEGDtxo.js → livescript-CgOnolfS.js} +1 -1
  180. package/dist/app/assets/{llvm-Cg59OFV5.js → llvm-BGjbbrCi.js} +1 -1
  181. package/dist/app/assets/{log-Dgz6RJ76.js → log-D7n8H9fm.js} +1 -1
  182. package/dist/app/assets/{lolcode-BiaQuLMI.js → lolcode-Cu9-2TFS.js} +1 -1
  183. package/dist/app/assets/{lua-A_5_hnzN.js → lua-lccF9r61.js} +1 -1
  184. package/dist/app/assets/{magma-vL3dHSsW.js → magma-DcqQ1hwM.js} +1 -1
  185. package/dist/app/assets/{makefile-C1iS0HiM.js → makefile-kISpU6yQ.js} +1 -1
  186. package/dist/app/assets/{markdown-B2oYsnLL.js → markdown-ClsPn-UJ.js} +1 -1
  187. package/dist/app/assets/{markup-DfTA_BVw.js → markup-GKEZzmxD.js} +1 -1
  188. package/dist/app/assets/{markup-templating-Cuy4LPLx.js → markup-templating-CWO2xZeJ.js} +1 -1
  189. package/dist/app/assets/{matlab-D6BnQC4u.js → matlab-gPoR8X9J.js} +1 -1
  190. package/dist/app/assets/{maxscript-C6TABA1u.js → maxscript-BHY3xiu7.js} +1 -1
  191. package/dist/app/assets/{mel-4rfx7Bfv.js → mel-rpDPR1uL.js} +1 -1
  192. package/dist/app/assets/{mermaid-C9zerIka.js → mermaid-BuzahRsL.js} +1 -1
  193. package/dist/app/assets/{min-CYeWfD_S.js → min-qX6PyCsg.js} +1 -1
  194. package/dist/app/assets/{mindmap-definition-QFDTVHPH-DEJyZ1TS.js → mindmap-definition-QFDTVHPH-ssFAYwGj.js} +1 -1
  195. package/dist/app/assets/{mizar-DRgDOhTN.js → mizar-uCD34iKQ.js} +1 -1
  196. package/dist/app/assets/{mongodb-Bz5t1Kri.js → mongodb-BHQiMgqu.js} +1 -1
  197. package/dist/app/assets/{monkey-DmpKIE8A.js → monkey-DgUxfqRD.js} +1 -1
  198. package/dist/app/assets/{moonscript-Detay_Aq.js → moonscript-jEu2rBFy.js} +1 -1
  199. package/dist/app/assets/{n1ql-BmgXbS-M.js → n1ql-Dt-1d48e.js} +1 -1
  200. package/dist/app/assets/{n4js-DmTPdCqi.js → n4js-DhUX1sWN.js} +1 -1
  201. package/dist/app/assets/{nand2tetris-hdl-DXraXq65.js → nand2tetris-hdl-B1sxYngv.js} +1 -1
  202. package/dist/app/assets/{naniscript-B261gwHF.js → naniscript-CLirJ9GC.js} +1 -1
  203. package/dist/app/assets/{nasm-DjgP63mx.js → nasm-DFO6i9-v.js} +1 -1
  204. package/dist/app/assets/{neon-BkyLss_j.js → neon-CJVuQ87S.js} +1 -1
  205. package/dist/app/assets/{nevod-D3AIDy_-.js → nevod-BKKiVTjs.js} +1 -1
  206. package/dist/app/assets/{nginx-x6qaHbn6.js → nginx-B_LEBTut.js} +1 -1
  207. package/dist/app/assets/{nim-DEkLs6r2.js → nim-DgvJ6hOl.js} +1 -1
  208. package/dist/app/assets/{nix-DKfH6GYJ.js → nix-CJ0KPl9Q.js} +1 -1
  209. package/dist/app/assets/{nsis-DdaElZTp.js → nsis-C6JwEFTE.js} +1 -1
  210. package/dist/app/assets/{objectivec-D-GvlelH.js → objectivec-B9B-kBxR.js} +1 -1
  211. package/dist/app/assets/{ocaml-Bh8mdwPO.js → ocaml-SkFdro3L.js} +1 -1
  212. package/dist/app/assets/{opencl-DqbqQpJ8.js → opencl-DSfJf34E.js} +1 -1
  213. package/dist/app/assets/{openqasm-BzHZ1geL.js → openqasm-CDzDtizQ.js} +1 -1
  214. package/dist/app/assets/{oz-CAffbl5h.js → oz-BWs_ndEf.js} +1 -1
  215. package/dist/app/assets/{parigp-CKqiqq8G.js → parigp-_-pO98W4.js} +1 -1
  216. package/dist/app/assets/{parser-Cg00t7Mb.js → parser-BwdpGZPJ.js} +1 -1
  217. package/dist/app/assets/{pascal--toS4iGX.js → pascal-AEdKVQZ6.js} +1 -1
  218. package/dist/app/assets/{pascaligo-DkkGDPuY.js → pascaligo-B3FRz8ot.js} +1 -1
  219. package/dist/app/assets/{pcaxis-YW2drt9P.js → pcaxis-5fq3uU8R.js} +1 -1
  220. package/dist/app/assets/{peoplecode-DcSxF5p-.js → peoplecode-DZ4fk8ON.js} +1 -1
  221. package/dist/app/assets/{perl-YKp_XolM.js → perl-B3MXzetZ.js} +1 -1
  222. package/dist/app/assets/{php-extras-CiYXDTjg.js → php-extras-DLRpD8nq.js} +1 -1
  223. package/dist/app/assets/{php-IihSyd58.js → php-vEB1iVno.js} +1 -1
  224. package/dist/app/assets/{phpdoc-CTwGmVuh.js → phpdoc-BCqSfVX6.js} +1 -1
  225. package/dist/app/assets/{pieDiagram-DEJITSTG-CYgrtYQD.js → pieDiagram-DEJITSTG-DxXi7DQ2.js} +1 -1
  226. package/dist/app/assets/{plsql-BLbbnpCf.js → plsql-DPtxfxuA.js} +1 -1
  227. package/dist/app/assets/{powerquery-CW3t8EHf.js → powerquery-BOfyovx0.js} +1 -1
  228. package/dist/app/assets/{powershell-Dy-20mWQ.js → powershell-DxVo8OSN.js} +1 -1
  229. package/dist/app/assets/{processing-DfOUJsGU.js → processing-ijqSDZY0.js} +1 -1
  230. package/dist/app/assets/{prolog-Bt7umQZ_.js → prolog-DlYEmyH_.js} +1 -1
  231. package/dist/app/assets/{promql-BsbEgNrg.js → promql-BjVFHQmv.js} +1 -1
  232. package/dist/app/assets/{properties-0VtNy_J8.js → properties-bwk71nw-.js} +1 -1
  233. package/dist/app/assets/{protobuf-CnepKVtX.js → protobuf-Cih2akTP.js} +1 -1
  234. package/dist/app/assets/{psl-OGz4CFKI.js → psl-Cw1dOcRa.js} +1 -1
  235. package/dist/app/assets/{pug-BUMiCGsa.js → pug-DwJYMQlV.js} +1 -1
  236. package/dist/app/assets/{puppet-BpwvYCrA.js → puppet-Caud_s-m.js} +1 -1
  237. package/dist/app/assets/{pure-u9lIjKsQ.js → pure-B5oj-gCx.js} +1 -1
  238. package/dist/app/assets/{purebasic-BsE8kKSG.js → purebasic-BgeP5DDD.js} +1 -1
  239. package/dist/app/assets/{purescript-D4DGIRwN.js → purescript-CsHryjK3.js} +1 -1
  240. package/dist/app/assets/{q-Dd4Y9jTu.js → q-BP8bBuGv.js} +1 -1
  241. package/dist/app/assets/{qml-IZqRvexj.js → qml-BgY-HmDG.js} +1 -1
  242. package/dist/app/assets/{qore-CVgOeY5j.js → qore-uOYNMdCg.js} +1 -1
  243. package/dist/app/assets/{qsharp-C1ibrSjI.js → qsharp-Cmp5vMRr.js} +1 -1
  244. package/dist/app/assets/{quadrantDiagram-34T5L4WZ-Hy_efLgq.js → quadrantDiagram-34T5L4WZ-f7twVcyL.js} +1 -1
  245. package/dist/app/assets/{r-CO3iHGES.js → r-BPMuS20T.js} +1 -1
  246. package/dist/app/assets/{racket-CDsoIwWb.js → racket-qc2-NKzR.js} +1 -1
  247. package/dist/app/assets/{reason-BXp7TkTV.js → reason-Rphq4wU8.js} +1 -1
  248. package/dist/app/assets/{regex-C8d4nMD-.js → regex-lUJxQlEc.js} +1 -1
  249. package/dist/app/assets/{rego-CnCdTWPv.js → rego-CgRMQR4R.js} +1 -1
  250. package/dist/app/assets/{renpy-BCpztAT2.js → renpy-O53RZ3yB.js} +1 -1
  251. package/dist/app/assets/{requirementDiagram-MS252O5E-BI0Kue_K.js → requirementDiagram-MS252O5E-C-2UwVat.js} +1 -1
  252. package/dist/app/assets/{rest-DRU6Mo0N.js → rest-lCVyRpHi.js} +1 -1
  253. package/dist/app/assets/{rip-DGcSsuJR.js → rip-Cb9MAixU.js} +1 -1
  254. package/dist/app/assets/{roboconf-D84u_D2h.js → roboconf-p--JilwP.js} +1 -1
  255. package/dist/app/assets/{robotframework-B55NHCrN.js → robotframework-CJWG7axQ.js} +1 -1
  256. package/dist/app/assets/{ruby-byKCK-dY.js → ruby-DgHGg4xu.js} +1 -1
  257. package/dist/app/assets/{rust-DafX95DJ.js → rust-mfoZutVO.js} +1 -1
  258. package/dist/app/assets/{sankeyDiagram-XADWPNL6-D6MJ50Pq.js → sankeyDiagram-XADWPNL6-DtWni1zR.js} +1 -1
  259. package/dist/app/assets/{sas-DTVLhrey.js → sas-hkuUJbuO.js} +1 -1
  260. package/dist/app/assets/{sass-rDhfj9yl.js → sass-DdYTeGYi.js} +1 -1
  261. package/dist/app/assets/{scala-BrKTyUsE.js → scala-BmqlMvBk.js} +1 -1
  262. package/dist/app/assets/{scheme-B_eu29xA.js → scheme-DGuanVCO.js} +1 -1
  263. package/dist/app/assets/{scss-kgRahDzu.js → scss-CQnillil.js} +1 -1
  264. package/dist/app/assets/{sequenceDiagram-FGHM5R23-BtFJlKLA.js → sequenceDiagram-FGHM5R23-V1Ofbw_p.js} +1 -1
  265. package/dist/app/assets/{shell-session-CF0mJgux.js → shell-session-DCSmJkzu.js} +1 -1
  266. package/dist/app/assets/{smali-cYYyD8tY.js → smali-ffxofes2.js} +1 -1
  267. package/dist/app/assets/{smalltalk-C0P2MRK9.js → smalltalk-B3WSwake.js} +1 -1
  268. package/dist/app/assets/{smarty-bSAEKlze.js → smarty-TkH0F2ZR.js} +1 -1
  269. package/dist/app/assets/{sml-CVkWiohq.js → sml-Dn0OaBIX.js} +1 -1
  270. package/dist/app/assets/{solidity-DBmi5l50.js → solidity-X5AVGR0y.js} +1 -1
  271. package/dist/app/assets/{solution-file-CnTT-bB0.js → solution-file-CPrmt5Hs.js} +1 -1
  272. package/dist/app/assets/{soy-D6Pv-4-M.js → soy-BWtqIhQj.js} +1 -1
  273. package/dist/app/assets/{sparql-C_FSzEBv.js → sparql-B3dCbOij.js} +1 -1
  274. package/dist/app/assets/{splunk-spl-BY7Iqglg.js → splunk-spl-DFme2x2-.js} +1 -1
  275. package/dist/app/assets/{sqf-CPktPAhH.js → sqf-B6O1kNSS.js} +1 -1
  276. package/dist/app/assets/{sql-o4K_-hAR.js → sql-CJQw5AKW.js} +1 -1
  277. package/dist/app/assets/{squirrel-C7nc0I9a.js → squirrel-CzQsXTWv.js} +1 -1
  278. package/dist/app/assets/{stan-BaHsDAPv.js → stan-lf0anrTR.js} +1 -1
  279. package/dist/app/assets/{stateDiagram-FHFEXIEX-Jt84X8Km.js → stateDiagram-FHFEXIEX-DCCf5FXE.js} +1 -1
  280. package/dist/app/assets/stateDiagram-v2-QKLJ7IA2-CWJp5A97.js +1 -0
  281. package/dist/app/assets/{stylus-LrKOfqx1.js → stylus-COiHJR5i.js} +1 -1
  282. package/dist/app/assets/{swift-Du5HvL9Z.js → swift-DkkKYkZS.js} +1 -1
  283. package/dist/app/assets/{systemd-B9G8EDGS.js → systemd-yMlv02T9.js} +1 -1
  284. package/dist/app/assets/{t4-cs-Cx16HVWP.js → t4-cs-rnhIAIrb.js} +1 -1
  285. package/dist/app/assets/{t4-templating-8EFI9hGP.js → t4-templating-DMWX9YhQ.js} +1 -1
  286. package/dist/app/assets/{t4-vb-DY4dRQ0Y.js → t4-vb-ftpXLDQa.js} +1 -1
  287. package/dist/app/assets/{tap-CnPjcybx.js → tap-BPZr3MHO.js} +1 -1
  288. package/dist/app/assets/{tcl-CyN53FjG.js → tcl-Da5z37GP.js} +1 -1
  289. package/dist/app/assets/{textile-CcaFbMIR.js → textile-D_cVONZR.js} +1 -1
  290. package/dist/app/assets/{timeline-definition-GMOUNBTQ-BIX9PrwR.js → timeline-definition-GMOUNBTQ-BUqjHP-0.js} +1 -1
  291. package/dist/app/assets/{toml-Dsv-Gf-x.js → toml-DKAIAUDo.js} +1 -1
  292. package/dist/app/assets/{tremor-CFgQf23a.js → tremor-UPWxEF30.js} +1 -1
  293. package/dist/app/assets/{tt2-C35x8-ln.js → tt2-F3kwqgAK.js} +1 -1
  294. package/dist/app/assets/{turtle-mi4wNaqz.js → turtle-BGEC3Tea.js} +1 -1
  295. package/dist/app/assets/{twig--0LWYrgK.js → twig-BF1UtTiF.js} +1 -1
  296. package/dist/app/assets/{typescript-TITb6K2H.js → typescript-0Q55yGyu.js} +1 -1
  297. package/dist/app/assets/{typoscript-D9-RVwIo.js → typoscript-BZzT6IZ0.js} +1 -1
  298. package/dist/app/assets/{unrealscript-CEl7HM5o.js → unrealscript-CRZUJaDf.js} +1 -1
  299. package/dist/app/assets/{uorazor-D_Rffmzi.js → uorazor-DQbuUO_0.js} +1 -1
  300. package/dist/app/assets/{uri-BrG_tFHQ.js → uri-DaYUWj2f.js} +1 -1
  301. package/dist/app/assets/{v-CSrNrMZT.js → v-B_keUXs0.js} +1 -1
  302. package/dist/app/assets/{vala-lXeoxFEf.js → vala-C280zAuu.js} +1 -1
  303. package/dist/app/assets/{vbnet-CDvW0IYg.js → vbnet-BP5k7ovm.js} +1 -1
  304. package/dist/app/assets/{velocity-CsuMf7zZ.js → velocity-Cpzxjvpc.js} +1 -1
  305. package/dist/app/assets/{vennDiagram-DHZGUBPP-Bd1_DGNK.js → vennDiagram-DHZGUBPP-DMBYuFGJ.js} +1 -1
  306. package/dist/app/assets/{verilog-Ba1kXwcH.js → verilog-CsCWJCKK.js} +1 -1
  307. package/dist/app/assets/{vhdl-DC7iDUsg.js → vhdl-CnOBMJDT.js} +1 -1
  308. package/dist/app/assets/{vim-m5sIDmbL.js → vim-BHrvXFGg.js} +1 -1
  309. package/dist/app/assets/{visual-basic-CZAxZhXd.js → visual-basic-DVMUkaLe.js} +1 -1
  310. package/dist/app/assets/{wardley-RL74JXVD-Bi7eSfh4.js → wardley-RL74JXVD-D39mFmVb.js} +1 -1
  311. package/dist/app/assets/{wardleyDiagram-NUSXRM2D-C5W1iA0y.js → wardleyDiagram-NUSXRM2D-tYKT99K6.js} +1 -1
  312. package/dist/app/assets/{warpscript-YqE12jpR.js → warpscript-D6-BbIHr.js} +1 -1
  313. package/dist/app/assets/{wasm-Cqk0NwrL.js → wasm-Bi73rb7-.js} +1 -1
  314. package/dist/app/assets/{web-idl-BBz8nwvE.js → web-idl-D5ZtoJL_.js} +1 -1
  315. package/dist/app/assets/{wiki-DTaDNr2a.js → wiki-CorqGblj.js} +1 -1
  316. package/dist/app/assets/{wolfram-D_dyKsVO.js → wolfram-CfD99H8b.js} +1 -1
  317. package/dist/app/assets/{wren-VhlSRnur.js → wren-Bxtd03-U.js} +1 -1
  318. package/dist/app/assets/{xeora-C3d3uHWl.js → xeora-CK88z6DA.js} +1 -1
  319. package/dist/app/assets/{xml-doc-Dn8dXLkg.js → xml-doc-CG1bthfs.js} +1 -1
  320. package/dist/app/assets/{xojo-D7cO_F-x.js → xojo-ClNCxa3l.js} +1 -1
  321. package/dist/app/assets/{xquery-C1brqcan.js → xquery-KJgwBO7a.js} +1 -1
  322. package/dist/app/assets/{xychartDiagram-5P7HB3ND-CPn62Rvn.js → xychartDiagram-5P7HB3ND-Cpkqm7JZ.js} +1 -1
  323. package/dist/app/assets/{yaml-CucHvpnq.js → yaml-BN5ddz6N.js} +1 -1
  324. package/dist/app/assets/{yang-BwF0d5Qn.js → yang-wM3Tqav1.js} +1 -1
  325. package/dist/app/assets/{zig-Bi_ZcakP.js → zig-At4jiVd0.js} +1 -1
  326. package/dist/app/index.html +1 -1
  327. package/dist/index.cjs +250 -74
  328. package/dist/index.js +250 -74
  329. package/package.json +3 -3
  330. package/dist/app/assets/channel-CI-ehimI.js +0 -1
  331. package/dist/app/assets/classDiagram-6PBFFD2Q-kNq98FtJ.js +0 -1
  332. package/dist/app/assets/classDiagram-v2-HSJHXN6E-kNq98FtJ.js +0 -1
  333. package/dist/app/assets/clone-70-rkKhs.js +0 -1
  334. package/dist/app/assets/stateDiagram-v2-QKLJ7IA2-2fuYX60f.js +0 -1
package/dist/index.js CHANGED
@@ -1680,6 +1680,9 @@ var en_US_default = {
1680
1680
  loading: "Loading",
1681
1681
  thinking: "Thinking",
1682
1682
  answering: "Answering",
1683
+ mcpApp: {
1684
+ loading: "Loading MCP App"
1685
+ },
1683
1686
  contextCompression: {
1684
1687
  running: "Automatically compressing context",
1685
1688
  success: "Context automatically compressed",
@@ -2070,6 +2073,9 @@ var zh_CN_default = {
2070
2073
  loading: "\u6B63\u5728\u52A0\u8F7D",
2071
2074
  thinking: "\u6B63\u5728\u601D\u8003",
2072
2075
  answering: "\u6B63\u5728\u751F\u6210",
2076
+ mcpApp: {
2077
+ loading: "\u6B63\u5728\u52A0\u8F7D MCP App"
2078
+ },
2073
2079
  contextCompression: {
2074
2080
  running: "\u6B63\u5728\u81EA\u52A8\u538B\u7F29\u4E0A\u4E0B\u6587",
2075
2081
  success: "\u4E0A\u4E0B\u6587\u5DF2\u81EA\u52A8\u538B\u7F29",
@@ -11668,9 +11674,40 @@ import {
11668
11674
  } from "@xpert-ai/chatkit-types";
11669
11675
  import { AlertCircle as AlertCircle2, Loader2 as Loader27 } from "lucide-react";
11670
11676
  import { jsx as jsx41, jsxs as jsxs28 } from "react/jsx-runtime";
11677
+ var EMPTY_INPUT_SCHEMA = {
11678
+ type: "object",
11679
+ properties: {}
11680
+ };
11671
11681
  function isRecord5(value) {
11672
11682
  return Boolean(value) && typeof value === "object" && !Array.isArray(value);
11673
11683
  }
11684
+ function readRecord(value) {
11685
+ return isRecord5(value) ? value : void 0;
11686
+ }
11687
+ function readNonEmptyRecord(value) {
11688
+ const record = readRecord(value);
11689
+ return record && Object.keys(record).length ? record : void 0;
11690
+ }
11691
+ function readString3(value) {
11692
+ return typeof value === "string" ? value : void 0;
11693
+ }
11694
+ function readBoolean(value) {
11695
+ return typeof value === "boolean" ? value : void 0;
11696
+ }
11697
+ function readLocalizedText(value) {
11698
+ if (typeof value === "string") return value;
11699
+ if (isRecord5(value)) return value;
11700
+ return void 0;
11701
+ }
11702
+ function readIconDefinition(value) {
11703
+ if (!isRecord5(value)) return void 0;
11704
+ return typeof value.type === "string" && typeof value.value === "string" ? value : void 0;
11705
+ }
11706
+ function readStringList(value) {
11707
+ if (!Array.isArray(value)) return void 0;
11708
+ const strings = value.filter((item) => typeof item === "string");
11709
+ return strings.length ? strings : void 0;
11710
+ }
11674
11711
  function buildXpertApiUrl(apiUrl, path) {
11675
11712
  const normalizedApiUrl = apiUrl.trim();
11676
11713
  if (!normalizedApiUrl) return path;
@@ -11685,7 +11722,7 @@ function appendQuery(path, params) {
11685
11722
  const query = params.toString();
11686
11723
  return query ? `${path}?${query}` : path;
11687
11724
  }
11688
- function buildMcpAppReviveParams(data) {
11725
+ function buildMcpAppReviveParams(data, options) {
11689
11726
  const params = new URLSearchParams();
11690
11727
  const add = (key, value) => {
11691
11728
  if (value) {
@@ -11698,15 +11735,16 @@ function buildMcpAppReviveParams(data) {
11698
11735
  add("toolCallId", data.toolCallId);
11699
11736
  add("resourceUri", data.resourceUri);
11700
11737
  add("title", typeof data.title === "string" ? data.title : void 0);
11701
- add("token", data.appInstanceToken);
11738
+ add("messageId", options?.messageId);
11739
+ add("token", options?.appInstanceToken ?? data.appInstanceToken);
11702
11740
  return params;
11703
11741
  }
11704
- function buildMcpAppEndpointPath(data, endpoint) {
11742
+ function buildMcpAppEndpointPath(data, endpoint, options) {
11705
11743
  return appendQuery(
11706
11744
  `/api/xpert-toolset/mcp-apps/${encodeURIComponent(
11707
11745
  data.appInstanceId
11708
11746
  )}/${endpoint}`,
11709
- buildMcpAppReviveParams(data)
11747
+ buildMcpAppReviveParams(data, options)
11710
11748
  );
11711
11749
  }
11712
11750
  function escapeHtmlAttribute(value) {
@@ -11763,6 +11801,37 @@ function decodeResourceHtml(resource) {
11763
11801
  }
11764
11802
  }
11765
11803
  }
11804
+ function normalizeCspMetadata(value) {
11805
+ const raw = readRecord(value);
11806
+ if (!raw) return void 0;
11807
+ const csp = {};
11808
+ const connectDomains = readStringList(raw.connectDomains);
11809
+ const resourceDomains = readStringList(raw.resourceDomains);
11810
+ const frameDomains = readStringList(raw.frameDomains);
11811
+ const baseUriDomains = readStringList(raw.baseUriDomains);
11812
+ if (connectDomains) csp.connectDomains = connectDomains;
11813
+ if (resourceDomains) csp.resourceDomains = resourceDomains;
11814
+ if (frameDomains) csp.frameDomains = frameDomains;
11815
+ if (baseUriDomains) csp.baseUriDomains = baseUriDomains;
11816
+ return Object.keys(csp).length ? csp : void 0;
11817
+ }
11818
+ function normalizePermissionGrant(value) {
11819
+ return value === true || isRecord5(value) ? value : void 0;
11820
+ }
11821
+ function normalizePermissionsMetadata(value) {
11822
+ const raw = readRecord(value);
11823
+ if (!raw) return void 0;
11824
+ const permissions = {};
11825
+ const camera = normalizePermissionGrant(raw.camera);
11826
+ const microphone = normalizePermissionGrant(raw.microphone);
11827
+ const geolocation = normalizePermissionGrant(raw.geolocation);
11828
+ const clipboardWrite = normalizePermissionGrant(raw.clipboardWrite);
11829
+ if (camera !== void 0) permissions.camera = camera;
11830
+ if (microphone !== void 0) permissions.microphone = microphone;
11831
+ if (geolocation !== void 0) permissions.geolocation = geolocation;
11832
+ if (clipboardWrite !== void 0) permissions.clipboardWrite = clipboardWrite;
11833
+ return Object.keys(permissions).length ? permissions : void 0;
11834
+ }
11766
11835
  function normalizeJsonRpcMessage(value) {
11767
11836
  const data = typeof value === "string" ? (() => {
11768
11837
  try {
@@ -11958,23 +12027,48 @@ function injectMcpAppTheme(html, theme) {
11958
12027
  const style = `<style id="mcp-app-host-theme">:root{color-scheme:${theme.mode};${declarations}}</style>`;
11959
12028
  return injectHeadContent(html, style);
11960
12029
  }
11961
- function buildStandardToolInfo(data, resource) {
11962
- const raw = resource?.toolInfo ?? {};
11963
- const rawTitle = isRecord5(raw) && (raw.title !== void 0 || raw.name !== void 0) ? raw.title ?? raw.name : void 0;
11964
- const rawDescription = isRecord5(raw) && raw.description !== void 0 ? raw.description : void 0;
11965
- const rawIcon = isRecord5(raw) && raw.icon !== void 0 ? raw.icon : void 0;
11966
- const originalName = isRecord5(raw) && typeof raw.originalName === "string" ? raw.originalName : data.toolName;
11967
- const title = rawTitle ?? resource?.title ?? data.title ?? data.toolName;
11968
- const description = rawDescription ?? resource?.description ?? data.description;
11969
- const icon = rawIcon ?? resource?.icon ?? data.icon;
12030
+ function normalizeInputSchema(value) {
12031
+ const raw = readRecord(value);
12032
+ if (!raw || raw.type !== void 0 && raw.type !== "object") {
12033
+ return EMPTY_INPUT_SCHEMA;
12034
+ }
12035
+ return {
12036
+ ...raw,
12037
+ type: "object",
12038
+ properties: readRecord(raw.properties) ?? {},
12039
+ ...Array.isArray(raw.required) && raw.required.every((item) => typeof item === "string") ? { required: raw.required } : {}
12040
+ };
12041
+ }
12042
+ function normalizeMcpAppToolInfo(value, data, resource = {}) {
12043
+ const raw = readRecord(value) ?? {};
12044
+ const rawTool = readRecord(raw.tool) ?? {};
12045
+ const rawName = readString3(raw.name);
12046
+ const originalName = readString3(rawTool.name) ?? readString3(raw.originalName) ?? data.toolName;
12047
+ const title = readLocalizedText(rawTool.title) ?? readLocalizedText(raw.title) ?? resource.title ?? data.title ?? data.toolName;
12048
+ const description = readLocalizedText(rawTool.description) ?? readLocalizedText(raw.description) ?? resource.description ?? data.description;
12049
+ const icon = readIconDefinition(rawTool.icon) ?? readIconDefinition(raw.icon) ?? resource.icon ?? data.icon;
11970
12050
  return {
11971
12051
  ...raw,
11972
12052
  id: data.toolCallId,
12053
+ name: rawName ?? data.toolName,
12054
+ originalName,
12055
+ title,
12056
+ ...description ? { description } : {},
12057
+ ...icon ? { icon } : {},
12058
+ serverName: readString3(raw.serverName) ?? data.serverName,
12059
+ toolCallId: readString3(raw.toolCallId) ?? data.toolCallId,
12060
+ toolsetId: readString3(raw.toolsetId) ?? data.toolsetId,
11973
12061
  tool: {
12062
+ ...rawTool,
11974
12063
  name: originalName,
11975
- title,
11976
- ...description ? { description } : {},
11977
- ...icon ? { icon } : {}
12064
+ title: readLocalizedText(rawTool.title) ?? title,
12065
+ inputSchema: normalizeInputSchema(
12066
+ rawTool.inputSchema ?? raw.inputSchema
12067
+ ),
12068
+ ...description ? {
12069
+ description: readLocalizedText(rawTool.description) ?? description
12070
+ } : {},
12071
+ ...icon ? { icon: readIconDefinition(rawTool.icon) ?? icon } : {}
11978
12072
  }
11979
12073
  };
11980
12074
  }
@@ -12011,47 +12105,118 @@ function stringifyToolResult(value) {
12011
12105
  return String(value);
12012
12106
  }
12013
12107
  }
12108
+ function createTextContentBlock(text) {
12109
+ return {
12110
+ type: "text",
12111
+ text
12112
+ };
12113
+ }
12114
+ function normalizeContentBlocks(value) {
12115
+ if (!Array.isArray(value)) return [];
12116
+ return value.filter(
12117
+ (item) => isRecord5(item) && typeof item.type === "string"
12118
+ );
12119
+ }
12120
+ function extractLegacyArtifactMeta(value) {
12121
+ const meta = readRecord(value._meta);
12122
+ if (meta) return meta;
12123
+ const entries = Object.entries(value).filter(
12124
+ ([key]) => key !== "structuredContent" && key !== "isError"
12125
+ );
12126
+ return entries.length ? Object.fromEntries(entries) : void 0;
12127
+ }
12128
+ function normalizeToolArtifact(value) {
12129
+ if (isRecord5(value)) {
12130
+ return {
12131
+ ...readRecord(value.structuredContent) ? { structuredContent: readRecord(value.structuredContent) } : {},
12132
+ ...readBoolean(value.isError) !== void 0 ? { isError: readBoolean(value.isError) } : {},
12133
+ ...extractLegacyArtifactMeta(value) ? { _meta: extractLegacyArtifactMeta(value) } : {}
12134
+ };
12135
+ }
12136
+ if (!Array.isArray(value)) return {};
12137
+ return value.reduce((result, item) => {
12138
+ const normalized = normalizeToolArtifact(item);
12139
+ return {
12140
+ ...result,
12141
+ ...normalized,
12142
+ _meta: result._meta ?? normalized._meta,
12143
+ structuredContent: result.structuredContent ?? normalized.structuredContent,
12144
+ isError: result.isError ?? normalized.isError
12145
+ };
12146
+ }, {});
12147
+ }
12014
12148
  function normalizeCallToolResult(value) {
12015
- if (isRecord5(value) && Array.isArray(value.content)) {
12016
- return value;
12149
+ if (value === void 0) {
12150
+ return {
12151
+ content: []
12152
+ };
12153
+ }
12154
+ if (isRecord5(value)) {
12155
+ if (value.toolResult !== void 0 && !Array.isArray(value.content)) {
12156
+ return normalizeCallToolResult(value.toolResult);
12157
+ }
12158
+ const content = normalizeContentBlocks(value.content);
12159
+ const result = {
12160
+ content: content.length ? content : []
12161
+ };
12162
+ const structuredContent = readRecord(value.structuredContent);
12163
+ const isError = readBoolean(value.isError);
12164
+ const meta = readRecord(value._meta);
12165
+ if (structuredContent) result.structuredContent = structuredContent;
12166
+ if (isError !== void 0) result.isError = isError;
12167
+ if (meta) result._meta = meta;
12168
+ return result;
12017
12169
  }
12018
12170
  if (Array.isArray(value) && value.length >= 2) {
12019
12171
  const [content, artifact] = value;
12020
- const text = typeof content === "string" ? content : stringifyToolResult(content);
12021
- const normalized = {
12172
+ const artifactFields = normalizeToolArtifact(artifact);
12173
+ return {
12022
12174
  content: [
12023
- {
12024
- type: "text",
12025
- text
12026
- }
12027
- ]
12175
+ createTextContentBlock(
12176
+ typeof content === "string" ? content : stringifyToolResult(content)
12177
+ )
12178
+ ],
12179
+ ...artifactFields
12028
12180
  };
12029
- if (isRecord5(artifact)) {
12030
- normalized._meta = artifact;
12031
- if (isRecord5(artifact.structuredContent)) {
12032
- normalized.structuredContent = artifact.structuredContent;
12033
- }
12034
- } else if (Array.isArray(artifact)) {
12035
- const structured = artifact.find(
12036
- (item) => isRecord5(item) && isRecord5(item.structuredContent)
12037
- );
12038
- const meta = artifact.find(isRecord5);
12039
- if (structured?.structuredContent) {
12040
- normalized.structuredContent = structured.structuredContent;
12041
- }
12042
- if (meta) {
12043
- normalized._meta = meta;
12044
- }
12045
- }
12046
- return normalized;
12047
12181
  }
12048
12182
  return {
12049
- content: [
12050
- {
12051
- type: "text",
12052
- text: stringifyToolResult(value)
12053
- }
12054
- ]
12183
+ content: [createTextContentBlock(stringifyToolResult(value))]
12184
+ };
12185
+ }
12186
+ function normalizeMcpAppResourceResponse(value, data) {
12187
+ const raw = readRecord(value);
12188
+ if (!raw) {
12189
+ throw new Error("MCP App resource response must be an object");
12190
+ }
12191
+ const html = decodeResourceHtml(raw);
12192
+ if (!html) {
12193
+ throw new Error("MCP App resource did not include HTML content");
12194
+ }
12195
+ const resourceInfo = {
12196
+ title: readLocalizedText(raw.title),
12197
+ description: readLocalizedText(raw.description),
12198
+ icon: readIconDefinition(raw.icon)
12199
+ };
12200
+ const toolInput = readNonEmptyRecord(raw.toolInput) ?? data.toolInput ?? readRecord(raw.toolInput) ?? {};
12201
+ const rawToolResult = raw.toolResult ?? data.toolResult;
12202
+ return {
12203
+ uri: readString3(raw.uri),
12204
+ mimeType: readString3(raw.mimeType),
12205
+ html,
12206
+ appInstanceToken: readString3(raw.appInstanceToken),
12207
+ resourceUri: readString3(raw.resourceUri),
12208
+ title: resourceInfo.title,
12209
+ description: resourceInfo.description,
12210
+ icon: resourceInfo.icon,
12211
+ csp: normalizeCspMetadata(raw.csp),
12212
+ permissions: normalizePermissionsMetadata(raw.permissions),
12213
+ domain: readString3(raw.domain),
12214
+ prefersBorder: readBoolean(raw.prefersBorder),
12215
+ toolInfo: normalizeMcpAppToolInfo(raw.toolInfo, data, resourceInfo),
12216
+ toolInput,
12217
+ hasToolResult: rawToolResult !== void 0,
12218
+ toolResult: normalizeCallToolResult(rawToolResult),
12219
+ rawToolResult
12055
12220
  };
12056
12221
  }
12057
12222
  function isHttpUrl(value) {
@@ -12084,6 +12249,7 @@ function isMcpAppComponentData(data) {
12084
12249
  }
12085
12250
  function McpAppMessage({
12086
12251
  data,
12252
+ messageId,
12087
12253
  className
12088
12254
  }) {
12089
12255
  const { i18n: i18n2 } = useChatkitTranslation();
@@ -12098,9 +12264,8 @@ function McpAppMessage({
12098
12264
  const initializedRef = React35.useRef(false);
12099
12265
  const sentInitialResultRef = React35.useRef(false);
12100
12266
  const modelContextRef = React35.useRef(null);
12101
- const [resource, setResource] = React35.useState(
12102
- null
12103
- );
12267
+ const [resource, setResource] = React35.useState(null);
12268
+ const [runtimeAppInstanceToken, setRuntimeAppInstanceToken] = React35.useState(data.appInstanceToken);
12104
12269
  const [srcDoc, setSrcDoc] = React35.useState(null);
12105
12270
  const [height, setHeight] = React35.useState(420);
12106
12271
  const [error, setError] = React35.useState(null);
@@ -12108,16 +12273,21 @@ function McpAppMessage({
12108
12273
  const resourceUrl = React35.useMemo(
12109
12274
  () => buildXpertApiUrl(
12110
12275
  apiUrl,
12111
- buildMcpAppEndpointPath(data, "resource")
12276
+ buildMcpAppEndpointPath(data, "resource", {
12277
+ messageId
12278
+ })
12112
12279
  ),
12113
- [apiUrl, data]
12280
+ [apiUrl, data, messageId]
12114
12281
  );
12115
12282
  const rpcUrl = React35.useMemo(
12116
12283
  () => buildXpertApiUrl(
12117
12284
  apiUrl,
12118
- buildMcpAppEndpointPath(data, "rpc")
12285
+ buildMcpAppEndpointPath(data, "rpc", {
12286
+ appInstanceToken: runtimeAppInstanceToken,
12287
+ messageId
12288
+ })
12119
12289
  ),
12120
- [apiUrl, data]
12290
+ [apiUrl, data, messageId, runtimeAppInstanceToken]
12121
12291
  );
12122
12292
  const postToApp = React35.useCallback((message) => {
12123
12293
  iframeRef.current?.contentWindow?.postMessage(message, "*");
@@ -12152,25 +12322,29 @@ function McpAppMessage({
12152
12322
  jsonrpc: "2.0",
12153
12323
  method: "ui/notifications/tool-input",
12154
12324
  params: {
12155
- arguments: resource.toolInput ?? data.toolInput ?? {}
12325
+ arguments: resource.toolInput
12156
12326
  }
12157
12327
  });
12328
+ if (!resource.hasToolResult) {
12329
+ return;
12330
+ }
12158
12331
  postToApp({
12159
12332
  jsonrpc: "2.0",
12160
12333
  method: "ui/notifications/tool-result",
12161
12334
  params: {
12162
- ...normalizeCallToolResult(resource.toolResult),
12335
+ ...resource.toolResult,
12163
12336
  toolCallId: data.toolCallId,
12164
12337
  toolName: data.toolName,
12165
12338
  // Legacy compatibility for apps written before the 2026-01-26 notification shape.
12166
- result: resource.toolResult
12339
+ result: resource.rawToolResult
12167
12340
  }
12168
12341
  });
12169
- }, [data.toolCallId, data.toolInput, data.toolName, postToApp, resource]);
12342
+ }, [data.toolCallId, data.toolName, postToApp, resource]);
12170
12343
  React35.useEffect(() => {
12171
12344
  const controller = new AbortController();
12172
12345
  initializedRef.current = false;
12173
12346
  sentInitialResultRef.current = false;
12347
+ setRuntimeAppInstanceToken(data.appInstanceToken);
12174
12348
  setIsLoading(true);
12175
12349
  setError(null);
12176
12350
  setResource(null);
@@ -12184,17 +12358,20 @@ function McpAppMessage({
12184
12358
  throw new Error(`MCP App resource failed with ${response.status}`);
12185
12359
  }
12186
12360
  const payload = await response.json();
12187
- const html = decodeResourceHtml(payload);
12188
- if (!html) {
12189
- throw new Error("MCP App resource did not include HTML content");
12190
- }
12191
- setResource(payload);
12361
+ const normalizedResource = normalizeMcpAppResourceResponse(
12362
+ payload,
12363
+ data
12364
+ );
12365
+ setResource(normalizedResource);
12366
+ setRuntimeAppInstanceToken(
12367
+ normalizedResource.appInstanceToken ?? data.appInstanceToken
12368
+ );
12192
12369
  const hostLocale = normalizeHostLocale(i18n2.language);
12193
12370
  setSrcDoc(
12194
12371
  injectMcpAppTheme(
12195
12372
  injectCsp(
12196
- injectMcpAppLocale(html, hostLocale),
12197
- payload.csp ?? data.csp
12373
+ injectMcpAppLocale(normalizedResource.html, hostLocale),
12374
+ normalizedResource.csp ?? data.csp
12198
12375
  ),
12199
12376
  buildMcpAppTheme(containerRef.current)
12200
12377
  )
@@ -12214,7 +12391,9 @@ function McpAppMessage({
12214
12391
  };
12215
12392
  }, [
12216
12393
  authenticatedFetch,
12394
+ data,
12217
12395
  data.appInstanceId,
12396
+ data.appInstanceToken,
12218
12397
  data.csp,
12219
12398
  i18n2.language,
12220
12399
  resourceUrl
@@ -12247,7 +12426,7 @@ function McpAppMessage({
12247
12426
  initializedRef.current = true;
12248
12427
  const permissions = resource?.permissions ?? data.permissions;
12249
12428
  const csp = resource?.csp ?? data.csp;
12250
- const toolInfo = buildStandardToolInfo(data, resource);
12429
+ const toolInfo = resource?.toolInfo ?? normalizeMcpAppToolInfo(void 0, data);
12251
12430
  const theme = buildMcpAppTheme(containerRef.current);
12252
12431
  const hostLocale = normalizeHostLocale(i18n2.language);
12253
12432
  const hostLanguage = getLocaleLanguage(hostLocale);
@@ -12303,10 +12482,7 @@ function McpAppMessage({
12303
12482
  openLinks: true
12304
12483
  },
12305
12484
  context: {
12306
- toolInfo: resource?.toolInfo ?? {
12307
- name: data.toolName,
12308
- toolCallId: data.toolCallId
12309
- },
12485
+ toolInfo,
12310
12486
  theme: theme.mode,
12311
12487
  themeCssVariables: theme.cssVariables,
12312
12488
  locale: hostLocale,
@@ -12460,7 +12636,7 @@ function McpAppMessage({
12460
12636
  ] }),
12461
12637
  isLoading ? /* @__PURE__ */ jsxs28("div", { className: "flex h-40 items-center justify-center gap-2 text-sm text-muted-foreground", children: [
12462
12638
  /* @__PURE__ */ jsx41(Loader27, { className: "h-4 w-4 animate-spin" }),
12463
- /* @__PURE__ */ jsx41("span", { children: "Loading MCP App" })
12639
+ /* @__PURE__ */ jsx41("span", { children: i18n2.t("message.mcpApp.loading") })
12464
12640
  ] }) : error ? /* @__PURE__ */ jsxs28("div", { className: "flex h-40 items-center justify-center gap-2 px-4 text-sm text-destructive", children: [
12465
12641
  /* @__PURE__ */ jsx41(AlertCircle2, { className: "h-4 w-4 shrink-0" }),
12466
12642
  /* @__PURE__ */ jsx41("span", { className: "min-w-0 break-words", children: error })
@@ -12764,7 +12940,7 @@ function renderContentItem(content, index, message, lookupMessages, options) {
12764
12940
  return /* @__PURE__ */ jsx42("div", { children: /* @__PURE__ */ jsx42(WidgetMessage, { messageId, data: content.data }) }, content.id ?? `widget-${index}`);
12765
12941
  }
12766
12942
  if (isMcpAppComponent(content)) {
12767
- return /* @__PURE__ */ jsx42("div", { children: /* @__PURE__ */ jsx42(McpAppMessage, { data: content.data }) }, content.id ?? `mcp-app-${index}`);
12943
+ return /* @__PURE__ */ jsx42("div", { children: /* @__PURE__ */ jsx42(McpAppMessage, { messageId, data: content.data }) }, content.id ?? `mcp-app-${index}`);
12768
12944
  }
12769
12945
  if (getComponentMessagePresentation(content, getToolStepData(content)) === "grouped-step") {
12770
12946
  return /* @__PURE__ */ jsx42("div", { children: /* @__PURE__ */ jsx42(
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xpert-ai/chatkit-ui",
3
- "version": "0.4.0",
3
+ "version": "0.4.2",
4
4
  "description": "ChatKit UI.",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -59,9 +59,9 @@
59
59
  "tw-animate-css": "^1.4.0",
60
60
  "uuid": "^11.1.0",
61
61
  "zod": "^4.1.12",
62
- "@xpert-ai/a2ui-react": "~0.1.0",
62
+ "@xpert-ai/chatkit-types": "~0.4.1",
63
63
  "@xpert-ai/chatkit-web-shared": "~0.3.4",
64
- "@xpert-ai/chatkit-types": "~0.4.0"
64
+ "@xpert-ai/a2ui-react": "~0.1.0"
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-BCZfU1mO.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-BjqYS6Yy.js";import{_ as i}from"./index-BCZfU1mO.js";import"./chunk-FMBD7UC4-Bv7-5Ls-.js";import"./chunk-YZCP3GAM-DbrAyIeM.js";import"./chunk-55IACEB6-oWAL2kJR.js";import"./chunk-EDXVE4YY-BR40heM4.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-BjqYS6Yy.js";import{_ as i}from"./index-BCZfU1mO.js";import"./chunk-FMBD7UC4-Bv7-5Ls-.js";import"./chunk-YZCP3GAM-DbrAyIeM.js";import"./chunk-55IACEB6-oWAL2kJR.js";import"./chunk-EDXVE4YY-BR40heM4.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-DiXdxCpd.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-CIKeB20i.js";import{_ as i}from"./index-BCZfU1mO.js";import"./chunk-55IACEB6-oWAL2kJR.js";import"./chunk-EDXVE4YY-BR40heM4.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};