@xpert-ai/chatkit-ui 0.5.7 → 0.5.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app/assets/{_baseUniq-CLWaYEgB.js → _baseUniq-BLpvr8Li.js} +1 -1
- package/dist/app/assets/{abap-BmIw086p.js → abap-DuWq8-Fa.js} +1 -1
- package/dist/app/assets/{abnf-Chq250EI.js → abnf-BHjR3bmX.js} +1 -1
- package/dist/app/assets/{actionscript-COrRMERh.js → actionscript-DJxrYQDx.js} +1 -1
- package/dist/app/assets/{ada-Bk-Xom8E.js → ada-CbL6tAKZ.js} +1 -1
- package/dist/app/assets/{agda-CqOba_mv.js → agda-Ck6x7eDV.js} +1 -1
- package/dist/app/assets/{al-Cs36z4Zx.js → al-DdXfEkta.js} +1 -1
- package/dist/app/assets/{antlr4-BDwRWkYa.js → antlr4-upUqmaYh.js} +1 -1
- package/dist/app/assets/{apacheconf-DyeF8GiM.js → apacheconf-CupXJx2-.js} +1 -1
- package/dist/app/assets/{apex-Ba7OzTgr.js → apex-0YDHPbgn.js} +1 -1
- package/dist/app/assets/{apl-B_R4FVMi.js → apl-RmSfPwym.js} +1 -1
- package/dist/app/assets/{applescript-Dya3fhGB.js → applescript-COai1tTm.js} +1 -1
- package/dist/app/assets/{aql-Dp0iXsVF.js → aql-CbZi1-r0.js} +1 -1
- package/dist/app/assets/{arc-cvg0TXhv.js → arc-DIn4pjjH.js} +1 -1
- package/dist/app/assets/{architectureDiagram-Q4EWVU46-SzYujqWe.js → architectureDiagram-Q4EWVU46-Dmhp32t-.js} +1 -1
- package/dist/app/assets/{arduino-CqlJ3hCz.js → arduino-CQPi4w3l.js} +1 -1
- package/dist/app/assets/{arff-CX7MFQRO.js → arff-CeuE6lSG.js} +1 -1
- package/dist/app/assets/{asciidoc-ZI4Q-s1q.js → asciidoc-DCNYoRln.js} +1 -1
- package/dist/app/assets/{asm6502-B3FObQ_T.js → asm6502-Pd3JHkRr.js} +1 -1
- package/dist/app/assets/{asmatmel-kCkPLHbr.js → asmatmel-Cc5XZnaJ.js} +1 -1
- package/dist/app/assets/{aspnet-DH6G5Ew1.js → aspnet-C533BcWB.js} +1 -1
- package/dist/app/assets/{autohotkey-oVz8ND3F.js → autohotkey-DKsSzBeu.js} +1 -1
- package/dist/app/assets/{autoit-Dl11lBUq.js → autoit-BBqFqs2I.js} +1 -1
- package/dist/app/assets/{avisynth-DarE5Dg7.js → avisynth-BQhu1vn5.js} +1 -1
- package/dist/app/assets/{avro-idl-D56MDNhv.js → avro-idl-CLl66iQZ.js} +1 -1
- package/dist/app/assets/{bash-B1XwQNyf.js → bash-D-02JHh4.js} +1 -1
- package/dist/app/assets/{basic-DYR2Jwfm.js → basic-D0Z8Jj8l.js} +1 -1
- package/dist/app/assets/{batch-DxAP-2NI.js → batch-B6HFRBhp.js} +1 -1
- package/dist/app/assets/{bbcode-pH3o53ih.js → bbcode-CE7knYbs.js} +1 -1
- package/dist/app/assets/{bicep-C1CpxPZE.js → bicep--WgDi_5T.js} +1 -1
- package/dist/app/assets/{birb-CX87HOYx.js → birb-CRszBx8p.js} +1 -1
- package/dist/app/assets/{bison-DhyP8gg_.js → bison-2yOIavxu.js} +1 -1
- package/dist/app/assets/{blockDiagram-DXYQGD6D-USlgBl6-.js → blockDiagram-DXYQGD6D-CdfVTYe6.js} +1 -1
- package/dist/app/assets/{bnf-DBDHgoDx.js → bnf-Dg8yqReW.js} +1 -1
- package/dist/app/assets/{brainfuck-BGbbW6jD.js → brainfuck-CMcDLgle.js} +1 -1
- package/dist/app/assets/{brightscript-DhiNdhdf.js → brightscript-Cqzcw5aY.js} +1 -1
- package/dist/app/assets/{bro-CI2nlc1k.js → bro-CCYADGfA.js} +1 -1
- package/dist/app/assets/{bsl-Cqfc86Uw.js → bsl-BazS2rLi.js} +1 -1
- package/dist/app/assets/{c-Bcq4TtJR.js → c-CzdIRBJL.js} +1 -1
- package/dist/app/assets/{c4Diagram-AHTNJAMY-BLdJV9Sm.js → c4Diagram-AHTNJAMY-CzWbdT2z.js} +1 -1
- package/dist/app/assets/{cfscript-zugsry85.js → cfscript-BfocvIBZ.js} +1 -1
- package/dist/app/assets/{chaiscript-Dy8MtPY1.js → chaiscript-DEeofdbI.js} +1 -1
- package/dist/app/assets/channel-C-xwEqfR.js +1 -0
- package/dist/app/assets/{chunk-4BX2VUAB-BxD-_SIo.js → chunk-4BX2VUAB-DXvcZJRe.js} +1 -1
- package/dist/app/assets/{chunk-4TB4RGXK-xGQqBHD0.js → chunk-4TB4RGXK-Cvk3MhhJ.js} +1 -1
- package/dist/app/assets/{chunk-55IACEB6-CWaDgSsu.js → chunk-55IACEB6-Om7ibAwr.js} +1 -1
- package/dist/app/assets/{chunk-EDXVE4YY-BSLQHGaz.js → chunk-EDXVE4YY-DbAgli9I.js} +1 -1
- package/dist/app/assets/{chunk-FMBD7UC4-C7DoPpkj.js → chunk-FMBD7UC4-DObpaYUO.js} +1 -1
- package/dist/app/assets/{chunk-OYMX7WX6-CNUKCbYN.js → chunk-OYMX7WX6-rGMgjhKm.js} +1 -1
- package/dist/app/assets/{chunk-QZHKN3VN-CLEOhth0.js → chunk-QZHKN3VN-BtHCPSxj.js} +1 -1
- package/dist/app/assets/{chunk-YZCP3GAM-CrgW5GzR.js → chunk-YZCP3GAM-CDkTBaPo.js} +1 -1
- package/dist/app/assets/{cil-CSQR5L6I.js → cil-BNlTLivw.js} +1 -1
- package/dist/app/assets/classDiagram-6PBFFD2Q-DZxfIDiK.js +1 -0
- package/dist/app/assets/classDiagram-v2-HSJHXN6E-DZxfIDiK.js +1 -0
- package/dist/app/assets/{clike-DreJ-26H.js → clike-BBIPxwPb.js} +1 -1
- package/dist/app/assets/{clojure-C4rI0CNM.js → clojure-SjJCVW3l.js} +1 -1
- package/dist/app/assets/clone-nOTgxCHT.js +1 -0
- package/dist/app/assets/{cmake-D_E8QKZD.js → cmake-DKXTFLeQ.js} +1 -1
- package/dist/app/assets/{cobol-Dd0WgkgL.js → cobol-DDV2T8Ov.js} +1 -1
- package/dist/app/assets/{coffeescript-CKG9eRoI.js → coffeescript-DLlO3-WB.js} +1 -1
- package/dist/app/assets/{concurnas-Cw11QyjG.js → concurnas-Zk22sd4q.js} +1 -1
- package/dist/app/assets/{coq-C3R9mTvc.js → coq-CB49fGLj.js} +1 -1
- package/dist/app/assets/{core-DZ2wHOxY.js → core-GilJv2TY.js} +1 -1
- package/dist/app/assets/{cose-bilkent-S5V4N54A-DmUGr3LM.js → cose-bilkent-S5V4N54A-dCcXah1N.js} +1 -1
- package/dist/app/assets/{cpp-DokiuQJt.js → cpp-_nLYhTeO.js} +1 -1
- package/dist/app/assets/{crystal-CEcE525Q.js → crystal-0uF3fCBY.js} +1 -1
- package/dist/app/assets/{csharp-BEgDNJSm.js → csharp-9a018lXK.js} +1 -1
- package/dist/app/assets/{cshtml-BgqAtQ__.js → cshtml-DeRWrMgA.js} +1 -1
- package/dist/app/assets/{csp-xjpIA0Cl.js → csp-C1JPZRc6.js} +1 -1
- package/dist/app/assets/{css-n5noIfRb.js → css-CtlaCojl.js} +1 -1
- package/dist/app/assets/{css-extras-BcBihPSP.js → css-extras-_r0fSC4K.js} +1 -1
- package/dist/app/assets/{csv-BB3YePGO.js → csv-DEVHAMet.js} +1 -1
- package/dist/app/assets/{cypher-D-HnFmIS.js → cypher-OQlwpa7A.js} +1 -1
- package/dist/app/assets/{d-B6t4xIiC.js → d-CBefACWo.js} +1 -1
- package/dist/app/assets/{dagre-KV5264BT-De0SZKaZ.js → dagre-KV5264BT-BbcR5yFp.js} +1 -1
- package/dist/app/assets/{dart-nDJlvZiq.js → dart-DnZNI7st.js} +1 -1
- package/dist/app/assets/{dataweave-MLevrHXi.js → dataweave-C0KQEfm3.js} +1 -1
- package/dist/app/assets/{dax-D19-PKMy.js → dax-C85xkJS9.js} +1 -1
- package/dist/app/assets/{dhall-CY6aTI2P.js → dhall-Dr7lP2CR.js} +1 -1
- package/dist/app/assets/{diagram-5BDNPKRD-mV_Wn285.js → diagram-5BDNPKRD-CAF6Irol.js} +1 -1
- package/dist/app/assets/{diagram-G4DWMVQ6-DEQ6bw6_.js → diagram-G4DWMVQ6-BjM_224a.js} +1 -1
- package/dist/app/assets/{diagram-MMDJMWI5-saPCqXbt.js → diagram-MMDJMWI5-DLUB15w5.js} +1 -1
- package/dist/app/assets/{diagram-TYMM5635-Bc55PAVD.js → diagram-TYMM5635-DBbpw92w.js} +1 -1
- package/dist/app/assets/{diff-C5owdxCH.js → diff-BMBQT17e.js} +1 -1
- package/dist/app/assets/{django-DX5K_Lf4.js → django-ciXFTeWU.js} +1 -1
- package/dist/app/assets/{dns-zone-file-B8xBiXK4.js → dns-zone-file-DC-B5K-Z.js} +1 -1
- package/dist/app/assets/{docker-B9QI3ZyP.js → docker-A8DlJ91e.js} +1 -1
- package/dist/app/assets/{dot-1jbGtFg0.js → dot-DC8VHvNV.js} +1 -1
- package/dist/app/assets/{ebnf-4zi7pSk1.js → ebnf-92ogoCIr.js} +1 -1
- package/dist/app/assets/{editorconfig-c8-h1UlL.js → editorconfig-D-VWzvau.js} +1 -1
- package/dist/app/assets/{eiffel-DsXpCd2Z.js → eiffel-BQlPy2tR.js} +1 -1
- package/dist/app/assets/{ejs-DDdn5A3i.js → ejs-hYRRXYEf.js} +1 -1
- package/dist/app/assets/{elixir-BHlBm_yU.js → elixir-BQaOfAKO.js} +1 -1
- package/dist/app/assets/{elm-CiDFdPze.js → elm-CMZDaOsd.js} +1 -1
- package/dist/app/assets/{erDiagram-SMLLAGMA-C4yQ0GlF.js → erDiagram-SMLLAGMA-D7RIpy8K.js} +1 -1
- package/dist/app/assets/{erb-DASSxMxt.js → erb-BhUx9oZj.js} +1 -1
- package/dist/app/assets/{erlang-v8JRNRHg.js → erlang-BEE4gQmE.js} +1 -1
- package/dist/app/assets/{etlua-DZD7a7Jf.js → etlua-Do5lhS9I.js} +1 -1
- package/dist/app/assets/{excel-formula-MyC97nAI.js → excel-formula-CmwpMtyy.js} +1 -1
- package/dist/app/assets/{factor-B5PO8-iK.js → factor-B2pJs6O3.js} +1 -1
- package/dist/app/assets/{false-DLfRU1nK.js → false-DvjmZdOv.js} +1 -1
- package/dist/app/assets/{firestore-security-rules-COJVUV0t.js → firestore-security-rules-CFb_h360.js} +1 -1
- package/dist/app/assets/{flow-BNlz-6hX.js → flow-D0Mztv7X.js} +1 -1
- package/dist/app/assets/{flowDiagram-DWJPFMVM-BXHf7HWl.js → flowDiagram-DWJPFMVM-Bs64njF4.js} +1 -1
- package/dist/app/assets/{fortran-DorvQvuU.js → fortran-1pOElj0a.js} +1 -1
- package/dist/app/assets/{fsharp-CMDvOtPz.js → fsharp-B6O1vScF.js} +1 -1
- package/dist/app/assets/{ftl-C0ofQ7Z_.js → ftl-BC1JMSb3.js} +1 -1
- package/dist/app/assets/{ganttDiagram-T4ZO3ILL-CvGkKz8n.js → ganttDiagram-T4ZO3ILL-BaqYXbd5.js} +1 -1
- package/dist/app/assets/{gap-C0gyjgyS.js → gap-DHN_hna1.js} +1 -1
- package/dist/app/assets/{gcode-BtlHTa9V.js → gcode-CYOpCOHU.js} +1 -1
- package/dist/app/assets/{gdscript-DTqe4uwl.js → gdscript-C_fDjtde.js} +1 -1
- package/dist/app/assets/{gedcom-b4_QsalW.js → gedcom-BVEMpxDC.js} +1 -1
- package/dist/app/assets/{gherkin-BRaijNNe.js → gherkin-CbpN6mFf.js} +1 -1
- package/dist/app/assets/{git-CBD5U5DY.js → git-Bf1dI9II.js} +1 -1
- package/dist/app/assets/{gitGraphDiagram-UUTBAWPF-D3WK5u1w.js → gitGraphDiagram-UUTBAWPF-BdL4HwfB.js} +1 -1
- package/dist/app/assets/{glsl-Bs6Epr6a.js → glsl-DHfVVpll.js} +1 -1
- package/dist/app/assets/{gml-DB3_POL9.js → gml-CKW0I1sM.js} +1 -1
- package/dist/app/assets/{gn-CF-QhIKN.js → gn-BolaXeCK.js} +1 -1
- package/dist/app/assets/{go-Bf_9FEdH.js → go-CvNTUNQj.js} +1 -1
- package/dist/app/assets/{go-module-CA_6vLMU.js → go-module-DHNsqTFu.js} +1 -1
- package/dist/app/assets/{graph-BckoiIkc.js → graph-w3lwjjfd.js} +1 -1
- package/dist/app/assets/{graphql-B_EGfqII.js → graphql-CqMPX6Uj.js} +1 -1
- package/dist/app/assets/{groovy-DAndqueF.js → groovy-ric2FEOh.js} +1 -1
- package/dist/app/assets/{haml-BcmULMPT.js → haml-Cxb5CUqP.js} +1 -1
- package/dist/app/assets/{handlebars-y_7_rnDH.js → handlebars-Cn3du5zM.js} +1 -1
- package/dist/app/assets/{haskell-BMVXHQLX.js → haskell-C6_pQzAW.js} +1 -1
- package/dist/app/assets/{haxe-ptOpqykn.js → haxe-ByVxVzJ9.js} +1 -1
- package/dist/app/assets/{hcl-zRdkV3LE.js → hcl-B54wt0UB.js} +1 -1
- package/dist/app/assets/{hlsl-BNXfMvF8.js → hlsl-zd81HZk_.js} +1 -1
- package/dist/app/assets/{hoon-BIBxFt3i.js → hoon-CIsFAweE.js} +1 -1
- package/dist/app/assets/{hpkp-CN1HXIbY.js → hpkp-BjSjLyAt.js} +1 -1
- package/dist/app/assets/{hsts-CoXh-wqv.js → hsts-DYV6IErn.js} +1 -1
- package/dist/app/assets/{http-t-TWhkRr.js → http-vOpsxP66.js} +1 -1
- package/dist/app/assets/{ichigojam-D_FxM4aQ.js → ichigojam-0LTExBpZ.js} +1 -1
- package/dist/app/assets/{icon-CUaZJoCa.js → icon-B-Gp4jiE.js} +1 -1
- package/dist/app/assets/{icu-message-format-By8yja5S.js → icu-message-format-jiNYPlT8.js} +1 -1
- package/dist/app/assets/{idris-4GlvSztz.js → idris-ZMBybD9e.js} +1 -1
- package/dist/app/assets/{iecst-nPP964Az.js → iecst-B3wVu7MT.js} +1 -1
- package/dist/app/assets/{ignore-BFvj9-AN.js → ignore-DCDIFGnd.js} +1 -1
- package/dist/app/assets/index-BAb1mpfo.css +1 -0
- package/dist/app/assets/{index-CN-0zu_D.js → index-Bc4smTvC.js} +183 -182
- package/dist/app/assets/{infoDiagram-42DDH7IO-Bnsy-5bq.js → infoDiagram-42DDH7IO-Bbh4hemk.js} +1 -1
- package/dist/app/assets/{inform7-CF6LgXQQ.js → inform7-BI05xVNw.js} +1 -1
- package/dist/app/assets/{ini-CeigaWPi.js → ini-vxj4aj2b.js} +1 -1
- package/dist/app/assets/{io-CRHhVTrv.js → io-Dv10BjOU.js} +1 -1
- package/dist/app/assets/{ishikawaDiagram-UXIWVN3A-V1PRHvu1.js → ishikawaDiagram-UXIWVN3A-BuEYSyJU.js} +1 -1
- package/dist/app/assets/{j-enwO1Wmz.js → j-BW8yPUOH.js} +1 -1
- package/dist/app/assets/{java-B9QaHcJd.js → java-BkBlxlrY.js} +1 -1
- package/dist/app/assets/{javadoc-DRScKA1N.js → javadoc-Cx6tkfWS.js} +1 -1
- package/dist/app/assets/{javadoclike-DtGAS-cv.js → javadoclike-BBfuCCPL.js} +1 -1
- package/dist/app/assets/{javascript-D3V3g0FJ.js → javascript-CAUiQeA4.js} +1 -1
- package/dist/app/assets/{javastacktrace-B5lApfgX.js → javastacktrace-DVKSc9mr.js} +1 -1
- package/dist/app/assets/{jexl-De4FTViK.js → jexl-Ctv9A-4Y.js} +1 -1
- package/dist/app/assets/{jolie-C6Zkfs3U.js → jolie-8oLOtI3_.js} +1 -1
- package/dist/app/assets/{journeyDiagram-VCZTEJTY--_XuL7C5.js → journeyDiagram-VCZTEJTY-DUm9Kxjg.js} +1 -1
- package/dist/app/assets/{jq-CaVz4Cbo.js → jq-C5TPho8v.js} +1 -1
- package/dist/app/assets/{js-extras-BLR7xlFc.js → js-extras-CvvS7hCP.js} +1 -1
- package/dist/app/assets/{js-templates-S-P3pgZx.js → js-templates-D1ItFqxK.js} +1 -1
- package/dist/app/assets/{jsdoc-DA2TpZo1.js → jsdoc-D0lTE-nD.js} +1 -1
- package/dist/app/assets/{json-DxBWOaJn.js → json-Bj6Xy1YF.js} +1 -1
- package/dist/app/assets/{json5-CO5ViDeP.js → json5-CvDs8NVg.js} +1 -1
- package/dist/app/assets/{jsonp-Wq0QyWa8.js → jsonp-BFor_KVf.js} +1 -1
- package/dist/app/assets/{jsstacktrace-BLR8OluG.js → jsstacktrace-DaDHvFwg.js} +1 -1
- package/dist/app/assets/{jsx-DmJT_QzA.js → jsx-9z5hmKsA.js} +1 -1
- package/dist/app/assets/{julia-Bd7p13_X.js → julia-DwK7_L2k.js} +1 -1
- package/dist/app/assets/{kanban-definition-6JOO6SKY-C8Va8LAw.js → kanban-definition-6JOO6SKY-B4PLi6a2.js} +1 -1
- package/dist/app/assets/{keepalived-D_m2TyIj.js → keepalived-QQAuR044.js} +1 -1
- package/dist/app/assets/{keyman-DjW6nWCS.js → keyman-WSDbwfnX.js} +1 -1
- package/dist/app/assets/{kotlin-BVWvmXl0.js → kotlin-CGASEpWD.js} +1 -1
- package/dist/app/assets/{kumir-CAxuJd34.js → kumir-Doyw9YhD.js} +1 -1
- package/dist/app/assets/{kusto-CuUimFgY.js → kusto-xM5aYCkT.js} +1 -1
- package/dist/app/assets/{latex-d8_VLhf8.js → latex-7t6762ct.js} +1 -1
- package/dist/app/assets/{latte-BmcUd_IB.js → latte-CYYMtaGq.js} +1 -1
- package/dist/app/assets/{layout-DuqNnE4Q.js → layout-Cq9HzFXC.js} +1 -1
- package/dist/app/assets/{less-BkKGTsNG.js → less-B-rkr2Db.js} +1 -1
- package/dist/app/assets/{lilypond-TRnkZO7q.js → lilypond-BJWXSiTf.js} +1 -1
- package/dist/app/assets/{linear-B2fnwI3E.js → linear-DRDsgNmW.js} +1 -1
- package/dist/app/assets/{liquid-3GbzU7nV.js → liquid--20_a0Si.js} +1 -1
- package/dist/app/assets/{lisp-Ctqep9DR.js → lisp-B_0ZteJz.js} +1 -1
- package/dist/app/assets/{livescript-DNwquCT7.js → livescript-1Jx0SETD.js} +1 -1
- package/dist/app/assets/{llvm-8bucivb6.js → llvm-B9HfHMKf.js} +1 -1
- package/dist/app/assets/{log-B4FnkUTm.js → log-CRWfAu0Z.js} +1 -1
- package/dist/app/assets/{lolcode-BLeuVc1E.js → lolcode-DMRD9BNM.js} +1 -1
- package/dist/app/assets/{lua-DwjfNGtz.js → lua-D-hyZPBj.js} +1 -1
- package/dist/app/assets/{magma-hPFFx79G.js → magma-CIgc0Q1n.js} +1 -1
- package/dist/app/assets/{makefile-C2CZD5vB.js → makefile-CBunZoPa.js} +1 -1
- package/dist/app/assets/{markdown-j6Zktjvm.js → markdown-DvJvDbDy.js} +1 -1
- package/dist/app/assets/{markup-DfN4ymw-.js → markup-D3VPet1J.js} +1 -1
- package/dist/app/assets/{markup-templating-BPS4-nAP.js → markup-templating-D7DvUP7P.js} +1 -1
- package/dist/app/assets/{matlab-BGeJv0j8.js → matlab-CjKtwgDT.js} +1 -1
- package/dist/app/assets/{maxscript-CWrTjgBX.js → maxscript-CvzRNTSR.js} +1 -1
- package/dist/app/assets/{mel-DGQaHOGs.js → mel-DVwlWwS1.js} +1 -1
- package/dist/app/assets/{mermaid-CtEMQhrR.js → mermaid-mTOAb9I1.js} +1 -1
- package/dist/app/assets/{min-CuWVuwXA.js → min-6n2-iCAm.js} +1 -1
- package/dist/app/assets/{mindmap-definition-QFDTVHPH-BQCXLcu2.js → mindmap-definition-QFDTVHPH-eTB4aUJ6.js} +1 -1
- package/dist/app/assets/{mizar-DeUk256x.js → mizar-D1v4Nv22.js} +1 -1
- package/dist/app/assets/{mongodb-B5kYMXfv.js → mongodb-B6xPI5vi.js} +1 -1
- package/dist/app/assets/{monkey-8L561opU.js → monkey-8ZQGq2j6.js} +1 -1
- package/dist/app/assets/{moonscript-CDlMWHLd.js → moonscript-qkDyELmz.js} +1 -1
- package/dist/app/assets/{n1ql-a5aTcp96.js → n1ql-7qzjjhYg.js} +1 -1
- package/dist/app/assets/{n4js-B_W2iwdF.js → n4js--0WDRpBj.js} +1 -1
- package/dist/app/assets/{nand2tetris-hdl-5_Ma3Gcs.js → nand2tetris-hdl-zYT29X94.js} +1 -1
- package/dist/app/assets/{naniscript-DwmVzjHV.js → naniscript-BEKVFrJA.js} +1 -1
- package/dist/app/assets/{nasm-BwoisEaQ.js → nasm-BxgE8BWF.js} +1 -1
- package/dist/app/assets/{neon-BI73tyd0.js → neon-CRmkHhWg.js} +1 -1
- package/dist/app/assets/{nevod-D92PDZKZ.js → nevod-DqOKiweO.js} +1 -1
- package/dist/app/assets/{nginx-Dq9r1NIk.js → nginx-BepDunyM.js} +1 -1
- package/dist/app/assets/{nim-xjOEbIAk.js → nim-DOYwB93n.js} +1 -1
- package/dist/app/assets/{nix-EnMJgnc8.js → nix-OcEzpwWS.js} +1 -1
- package/dist/app/assets/{nsis-CH5H0EC_.js → nsis-WQEGbgSb.js} +1 -1
- package/dist/app/assets/{objectivec-BS9YPLvy.js → objectivec-B8PulHhQ.js} +1 -1
- package/dist/app/assets/{ocaml-DeaG5BlB.js → ocaml-DrKpTrGd.js} +1 -1
- package/dist/app/assets/{opencl-O9ymHk7H.js → opencl-DJD4I4Az.js} +1 -1
- package/dist/app/assets/{openqasm-aQT0V46D.js → openqasm-BzLNaS1E.js} +1 -1
- package/dist/app/assets/{oz-B2akcmUR.js → oz-CddQDW4N.js} +1 -1
- package/dist/app/assets/{parigp-xOQhi94u.js → parigp-DL9Pul5Z.js} +1 -1
- package/dist/app/assets/{parser-Bc5Qs2p0.js → parser-BaeyVs6E.js} +1 -1
- package/dist/app/assets/{pascal-DAR8ROsy.js → pascal-DZwRqOCW.js} +1 -1
- package/dist/app/assets/{pascaligo-DftNQckw.js → pascaligo-CglPcMbu.js} +1 -1
- package/dist/app/assets/{pcaxis-BMPF3He-.js → pcaxis-m1flL1nx.js} +1 -1
- package/dist/app/assets/{peoplecode-CC7E3WK2.js → peoplecode-BPZXOWEd.js} +1 -1
- package/dist/app/assets/{perl-BAXHKqGw.js → perl-DEj9sd22.js} +1 -1
- package/dist/app/assets/{php-Cj-RDbjB.js → php-ChAzX5Xy.js} +1 -1
- package/dist/app/assets/{php-extras-BKprAKx3.js → php-extras-BEC2cMHJ.js} +1 -1
- package/dist/app/assets/{phpdoc-bw2dAv0c.js → phpdoc-Efem6iWX.js} +1 -1
- package/dist/app/assets/{pieDiagram-DEJITSTG-8KZu5YaI.js → pieDiagram-DEJITSTG-I2O3vbig.js} +1 -1
- package/dist/app/assets/{plsql-Dw17XioY.js → plsql-Bgiemx8O.js} +1 -1
- package/dist/app/assets/{powerquery-Dj3cf27n.js → powerquery-DoH4a5fD.js} +1 -1
- package/dist/app/assets/{powershell-B_7q1eiT.js → powershell-CXwYZoB9.js} +1 -1
- package/dist/app/assets/{processing-DoFMi-hm.js → processing-BG-k24bE.js} +1 -1
- package/dist/app/assets/{prolog-e5E2hrDl.js → prolog-BQk3s9Cz.js} +1 -1
- package/dist/app/assets/{promql-DemahR4f.js → promql-Cn8XzgOs.js} +1 -1
- package/dist/app/assets/{properties-BMScPOms.js → properties-BzFCc7p8.js} +1 -1
- package/dist/app/assets/{protobuf-ClMTc4op.js → protobuf-DsVZomkz.js} +1 -1
- package/dist/app/assets/{psl-CNOWPWSJ.js → psl-BL1By2Di.js} +1 -1
- package/dist/app/assets/{pug-CN_LkEkF.js → pug-CJXPw-_y.js} +1 -1
- package/dist/app/assets/{puppet-DWy51Ujv.js → puppet-BgLD34yT.js} +1 -1
- package/dist/app/assets/{pure-DpqvZXoD.js → pure-D5KRS3X3.js} +1 -1
- package/dist/app/assets/{purebasic-HuZjA6iK.js → purebasic-BO_zjFwL.js} +1 -1
- package/dist/app/assets/{purescript-B_rypcfi.js → purescript-Ddc7moMi.js} +1 -1
- package/dist/app/assets/{q-DgWLKp8s.js → q-CsHjuzhk.js} +1 -1
- package/dist/app/assets/{qml-CS-KlEUk.js → qml-YbRFzx0z.js} +1 -1
- package/dist/app/assets/{qore-Du1o4lX4.js → qore-BFgUYB1S.js} +1 -1
- package/dist/app/assets/{qsharp-DyC4mLin.js → qsharp-DRh0td2A.js} +1 -1
- package/dist/app/assets/{quadrantDiagram-34T5L4WZ-B8NRWwee.js → quadrantDiagram-34T5L4WZ-sLTzbhk2.js} +1 -1
- package/dist/app/assets/{r-cjlCY8c-.js → r-5gqFGwLd.js} +1 -1
- package/dist/app/assets/{racket-HKASX9J6.js → racket-BgmD87H8.js} +1 -1
- package/dist/app/assets/{reason--QfwxdM6.js → reason-D_tR9ps8.js} +1 -1
- package/dist/app/assets/{regex-LRhyh4CM.js → regex-hcOGgwnQ.js} +1 -1
- package/dist/app/assets/{rego-DTntuhgD.js → rego-C0pl_3VC.js} +1 -1
- package/dist/app/assets/{renpy-Dkrt0VEv.js → renpy-lT_4OszV.js} +1 -1
- package/dist/app/assets/{requirementDiagram-MS252O5E-CaB6KEof.js → requirementDiagram-MS252O5E-CEJ8Rcnr.js} +1 -1
- package/dist/app/assets/{rest-BeNvB5yg.js → rest-BBI-g8mr.js} +1 -1
- package/dist/app/assets/{rip-Cy4A89Kt.js → rip-C3KbnjS_.js} +1 -1
- package/dist/app/assets/{roboconf-DFBsCjrv.js → roboconf-CoZ--fPi.js} +1 -1
- package/dist/app/assets/{robotframework-DvpHCUN3.js → robotframework-DY6-Pswb.js} +1 -1
- package/dist/app/assets/{ruby-C-cly0v1.js → ruby-Bs6f5Nvi.js} +1 -1
- package/dist/app/assets/{rust-ClRZWU0b.js → rust-D0f4oPW4.js} +1 -1
- package/dist/app/assets/{sankeyDiagram-XADWPNL6-DF9Djzs-.js → sankeyDiagram-XADWPNL6-Dx6TM5mU.js} +1 -1
- package/dist/app/assets/{sas-BEyyAboW.js → sas-RrsOkHla.js} +1 -1
- package/dist/app/assets/{sass-nWC6zoS4.js → sass-D3DRkshk.js} +1 -1
- package/dist/app/assets/{scala-DW3gR9J_.js → scala-2yub5Noi.js} +1 -1
- package/dist/app/assets/{scheme-D9mG68D-.js → scheme-DUUET_XL.js} +1 -1
- package/dist/app/assets/{scss-BQt6Rs6_.js → scss-mXwcbbk-.js} +1 -1
- package/dist/app/assets/{sequenceDiagram-FGHM5R23-CdtsuV-5.js → sequenceDiagram-FGHM5R23-9GU2p9Ma.js} +1 -1
- package/dist/app/assets/{shell-session-CS7lePBM.js → shell-session-DoXxry6a.js} +1 -1
- package/dist/app/assets/{smali-Cq5zcu4r.js → smali-BM6j_ZPX.js} +1 -1
- package/dist/app/assets/{smalltalk-B-yBsNi3.js → smalltalk-Bcd172Pc.js} +1 -1
- package/dist/app/assets/{smarty-BVg1RxB6.js → smarty-oKqEpnDS.js} +1 -1
- package/dist/app/assets/{sml-to26KERd.js → sml-B1upkj4b.js} +1 -1
- package/dist/app/assets/{solidity-Cuiioq2j.js → solidity-xeq40f3P.js} +1 -1
- package/dist/app/assets/{solution-file-DgQO4nmb.js → solution-file-DRFXyDTT.js} +1 -1
- package/dist/app/assets/{soy-D_5DFQlV.js → soy-OSBkuqMW.js} +1 -1
- package/dist/app/assets/{sparql-DOqsplC_.js → sparql-D3k_wEdU.js} +1 -1
- package/dist/app/assets/{splunk-spl-CEMVSRXA.js → splunk-spl-FKET7kp7.js} +1 -1
- package/dist/app/assets/{sqf-DTJB2erl.js → sqf-BSn0GDGB.js} +1 -1
- package/dist/app/assets/{sql-CdlOPIn3.js → sql-D6mgKQB5.js} +1 -1
- package/dist/app/assets/{squirrel-DCa0jh5a.js → squirrel-DFu-guJ8.js} +1 -1
- package/dist/app/assets/{stan-BhPssW9W.js → stan-CDr-fjyl.js} +1 -1
- package/dist/app/assets/{stateDiagram-FHFEXIEX-DAFPc-8q.js → stateDiagram-FHFEXIEX-z2DiLwCm.js} +1 -1
- package/dist/app/assets/stateDiagram-v2-QKLJ7IA2-CHMZFZDU.js +1 -0
- package/dist/app/assets/{stylus-DICRhFyA.js → stylus-BFOCUvnx.js} +1 -1
- package/dist/app/assets/{swift-4kCmBqJY.js → swift-uHqpQZ6J.js} +1 -1
- package/dist/app/assets/{systemd-D9e_dugq.js → systemd-CYQNlgLz.js} +1 -1
- package/dist/app/assets/{t4-cs-85UBx4Yk.js → t4-cs-usG5jkwF.js} +1 -1
- package/dist/app/assets/{t4-templating-CRzRcmVy.js → t4-templating-D4wDOtGr.js} +1 -1
- package/dist/app/assets/{t4-vb-Bf2LyvyV.js → t4-vb-C1p1TL0w.js} +1 -1
- package/dist/app/assets/{tap-Th817yuG.js → tap-DFMBztgQ.js} +1 -1
- package/dist/app/assets/{tcl-8DeIll4K.js → tcl-BCt4zqi_.js} +1 -1
- package/dist/app/assets/{textile-BJFgn0rh.js → textile-Bloj03Mi.js} +1 -1
- package/dist/app/assets/{timeline-definition-GMOUNBTQ-Ck9tMTXM.js → timeline-definition-GMOUNBTQ-d06kVX17.js} +1 -1
- package/dist/app/assets/{toml-BaOjU24H.js → toml-BhS4WNxa.js} +1 -1
- package/dist/app/assets/{tremor-Ccd8rcUj.js → tremor-DviIbCpH.js} +1 -1
- package/dist/app/assets/{tt2-DWcil7vv.js → tt2-DE0j1lmS.js} +1 -1
- package/dist/app/assets/{turtle-Cy9j_Gx7.js → turtle-BxCayuSl.js} +1 -1
- package/dist/app/assets/{twig-BJdUKscP.js → twig-DtCkUjxy.js} +1 -1
- package/dist/app/assets/{typescript-CIJqbdNP.js → typescript-3pYqwxJ2.js} +1 -1
- package/dist/app/assets/{typoscript-OHj-fy40.js → typoscript-Dy8ykcri.js} +1 -1
- package/dist/app/assets/{unrealscript-q8qkQiED.js → unrealscript-C4Peef6q.js} +1 -1
- package/dist/app/assets/{uorazor-DdA66vNa.js → uorazor-91g1sfeu.js} +1 -1
- package/dist/app/assets/{uri-BEPzvcKj.js → uri-DDMRMgIp.js} +1 -1
- package/dist/app/assets/{v-CGH7mz4T.js → v-2gwj9f62.js} +1 -1
- package/dist/app/assets/{vala-CR1rbp5k.js → vala-CUiPsFoo.js} +1 -1
- package/dist/app/assets/{vbnet-CYW5csoH.js → vbnet-Zsyt2tdN.js} +1 -1
- package/dist/app/assets/{velocity-DV6L9NOs.js → velocity-CSkxzAQi.js} +1 -1
- package/dist/app/assets/{vennDiagram-DHZGUBPP-DyQ3L9Lf.js → vennDiagram-DHZGUBPP-eRSD5RJQ.js} +1 -1
- package/dist/app/assets/{verilog-BSCSzZqe.js → verilog-BtHxNyJ7.js} +1 -1
- package/dist/app/assets/{vhdl-D2chxwGU.js → vhdl-C0vU6j5h.js} +1 -1
- package/dist/app/assets/{vim-Dl0TZ9xX.js → vim-dvVtnnHy.js} +1 -1
- package/dist/app/assets/{visual-basic-7dTt3oNi.js → visual-basic-B-m3tLsh.js} +1 -1
- package/dist/app/assets/{wardley-RL74JXVD-ahT_LtaL.js → wardley-RL74JXVD-BgTJCIjC.js} +1 -1
- package/dist/app/assets/{wardleyDiagram-NUSXRM2D-MFWazalA.js → wardleyDiagram-NUSXRM2D-B19yXjvI.js} +1 -1
- package/dist/app/assets/{warpscript-PQ2WU7oS.js → warpscript-1YJK0eIR.js} +1 -1
- package/dist/app/assets/{wasm-By1rT3a-.js → wasm-B18nYup5.js} +1 -1
- package/dist/app/assets/{web-idl-BimQaw7Z.js → web-idl-DaaOjvPO.js} +1 -1
- package/dist/app/assets/{wiki-A9kUBHsB.js → wiki-6hqpglgh.js} +1 -1
- package/dist/app/assets/{wolfram-Bd0IwNTD.js → wolfram-uGnnCOiH.js} +1 -1
- package/dist/app/assets/{wren-DbnTzI0M.js → wren-BVgxyvFh.js} +1 -1
- package/dist/app/assets/{xeora-CiuLF24E.js → xeora-BIlCKODO.js} +1 -1
- package/dist/app/assets/{xml-doc-DxVuQAGZ.js → xml-doc-COhD3a_e.js} +1 -1
- package/dist/app/assets/{xojo-edH7Z19S.js → xojo-CffC0OLi.js} +1 -1
- package/dist/app/assets/{xquery-D8cwD4oE.js → xquery-BysER8W6.js} +1 -1
- package/dist/app/assets/{xychartDiagram-5P7HB3ND-nqWbeY47.js → xychartDiagram-5P7HB3ND-Ba1Vo7v6.js} +1 -1
- package/dist/app/assets/{yaml-Dq4ock1r.js → yaml-BjlUOXdf.js} +1 -1
- package/dist/app/assets/{yang-CmRaJ1fi.js → yang-CE61CGXZ.js} +1 -1
- package/dist/app/assets/{zig-mxEIubbp.js → zig-BwDJZvRM.js} +1 -1
- package/dist/app/index.html +2 -2
- package/dist/index.cjs +274 -137
- package/dist/index.js +274 -137
- package/package.json +3 -3
- package/dist/app/assets/channel-DUmZHumk.js +0 -1
- package/dist/app/assets/classDiagram-6PBFFD2Q-C0l0_wYE.js +0 -1
- package/dist/app/assets/classDiagram-v2-HSJHXN6E-C0l0_wYE.js +0 -1
- package/dist/app/assets/clone-BBm_TQET.js +0 -1
- package/dist/app/assets/index-DElrl_bY.css +0 -1
- package/dist/app/assets/stateDiagram-v2-QKLJ7IA2-Btav3HrZ.js +0 -1
package/dist/index.js
CHANGED
|
@@ -1390,12 +1390,23 @@ function countCompletedTodos(items) {
|
|
|
1390
1390
|
|
|
1391
1391
|
// src/lib/task-summary.ts
|
|
1392
1392
|
var PLAN_PATTERN = /<proposed_plan>\s*([\s\S]*?)\s*<\/proposed_plan>/i;
|
|
1393
|
+
var WEB_SEARCH_RESULT_PATTERN = /^Title:\s*(.+?)\r?\nURL:\s*(https?:\/\/\S+)\s*$/gim;
|
|
1394
|
+
var SANDBOX_FILE_OUTPUT_TOOLS = /* @__PURE__ */ new Set([
|
|
1395
|
+
"sandbox_write_file",
|
|
1396
|
+
"sandbox_append_file",
|
|
1397
|
+
"sandbox_edit_file",
|
|
1398
|
+
"sandbox_multi_edit_file"
|
|
1399
|
+
]);
|
|
1393
1400
|
function isObject(value) {
|
|
1394
1401
|
return Boolean(value) && typeof value === "object" && !Array.isArray(value);
|
|
1395
1402
|
}
|
|
1396
1403
|
function stringValue(value) {
|
|
1397
1404
|
return typeof value === "string" && value.trim() ? value.trim() : void 0;
|
|
1398
1405
|
}
|
|
1406
|
+
function compactText(value, maxLength) {
|
|
1407
|
+
const normalized = value.replace(/\s+/g, " ").trim();
|
|
1408
|
+
return normalized.length <= maxLength ? normalized : `${normalized.slice(0, maxLength - 3).trimEnd()}...`;
|
|
1409
|
+
}
|
|
1399
1410
|
function timestamp(value) {
|
|
1400
1411
|
const parsed = value ? Date.parse(value) : 0;
|
|
1401
1412
|
return Number.isNaN(parsed) ? 0 : parsed;
|
|
@@ -1467,19 +1478,29 @@ function normalizeOutput(value) {
|
|
|
1467
1478
|
const id = stringValue(candidate.id);
|
|
1468
1479
|
const title = stringValue(candidate.title);
|
|
1469
1480
|
const kind = artifactKind(candidate.kind);
|
|
1470
|
-
|
|
1471
|
-
const
|
|
1481
|
+
const status = stringValue(candidate.status)?.toLowerCase();
|
|
1482
|
+
const normalizedStatus = status === "success" ? status : void 0;
|
|
1483
|
+
const resource = normalizeResource(candidate.resource);
|
|
1484
|
+
if (!id || !title || !kind || status !== void 0 && status !== "success" || !isOpenableOutputResource(resource)) {
|
|
1485
|
+
return null;
|
|
1486
|
+
}
|
|
1472
1487
|
return {
|
|
1473
1488
|
id,
|
|
1474
1489
|
kind,
|
|
1475
1490
|
title,
|
|
1476
1491
|
description: stringValue(candidate.description),
|
|
1477
|
-
status:
|
|
1478
|
-
resource
|
|
1492
|
+
status: normalizedStatus,
|
|
1493
|
+
resource,
|
|
1479
1494
|
messageId: stringValue(candidate.messageId),
|
|
1480
1495
|
updatedAt: stringValue(candidate.updatedAt)
|
|
1481
1496
|
};
|
|
1482
1497
|
}
|
|
1498
|
+
function isCompletedOpenableOutput(output) {
|
|
1499
|
+
return (output.status === void 0 || output.status === "success") && isOpenableOutputResource(output.resource);
|
|
1500
|
+
}
|
|
1501
|
+
function isOpenableOutputResource(resource) {
|
|
1502
|
+
return resource?.type === "workspace_file" || resource?.type === "artifact" || resource?.type === "url";
|
|
1503
|
+
}
|
|
1483
1504
|
function normalizeSource(value) {
|
|
1484
1505
|
if (!isObject(value)) return null;
|
|
1485
1506
|
const candidate = value;
|
|
@@ -1534,11 +1555,10 @@ function contributionFromPart(part) {
|
|
|
1534
1555
|
if (part.type !== "component" || !isObject(part.data)) return null;
|
|
1535
1556
|
const data = part.data;
|
|
1536
1557
|
const direct = normalizeTaskSummaryContribution(data.taskSummary);
|
|
1537
|
-
|
|
1538
|
-
if (!isObject(data._meta)) return null;
|
|
1539
|
-
return normalizeTaskSummaryContribution(
|
|
1558
|
+
const metadataContribution = isObject(data._meta) ? normalizeTaskSummaryContribution(
|
|
1540
1559
|
data._meta["xpertai/taskSummary"]
|
|
1541
|
-
);
|
|
1560
|
+
) : null;
|
|
1561
|
+
return direct ?? metadataContribution;
|
|
1542
1562
|
}
|
|
1543
1563
|
function extractPlan(message) {
|
|
1544
1564
|
const match = PLAN_PATTERN.exec(messageText(message.content));
|
|
@@ -1606,17 +1626,9 @@ function knownPartOutputs(part, message) {
|
|
|
1606
1626
|
if (part.type !== "component" || !isObject(part.data)) return [];
|
|
1607
1627
|
const data = part.data;
|
|
1608
1628
|
const outputs = [...contributionFromPart(part)?.outputs ?? []];
|
|
1609
|
-
|
|
1610
|
-
|
|
1611
|
-
|
|
1612
|
-
kind: "mcp_app",
|
|
1613
|
-
title: stringValue(data.title) ?? "MCP App",
|
|
1614
|
-
resource: message.id ? { type: "message", messageId: message.id } : void 0,
|
|
1615
|
-
messageId: message.id,
|
|
1616
|
-
updatedAt
|
|
1617
|
-
});
|
|
1618
|
-
}
|
|
1619
|
-
if (isObject(data.artifact)) {
|
|
1629
|
+
const sandboxOutput = sandboxFileOutput(data, message);
|
|
1630
|
+
if (sandboxOutput) outputs.push(sandboxOutput);
|
|
1631
|
+
if (isObject(data.artifact) && isCompletedOutputStatus(data.artifact.status)) {
|
|
1620
1632
|
const artifact = data.artifact;
|
|
1621
1633
|
const artifactId = stringValue(artifact.artifactId) ?? stringValue(artifact.id);
|
|
1622
1634
|
const workspacePath = stringValue(artifact.workspacePath);
|
|
@@ -1642,6 +1654,7 @@ function knownPartOutputs(part, message) {
|
|
|
1642
1654
|
for (const value of [data.artifactLink, data.file]) {
|
|
1643
1655
|
if (!isObject(value)) continue;
|
|
1644
1656
|
const artifact = value;
|
|
1657
|
+
if (!isCompletedOutputStatus(artifact.status)) continue;
|
|
1645
1658
|
const artifactId = stringValue(artifact.artifactId) ?? stringValue(artifact.id);
|
|
1646
1659
|
const workspacePath = stringValue(artifact.workspacePath);
|
|
1647
1660
|
const id = artifactId ?? stringValue(artifact.fileAssetId) ?? workspacePath;
|
|
@@ -1663,6 +1676,52 @@ function knownPartOutputs(part, message) {
|
|
|
1663
1676
|
}
|
|
1664
1677
|
return outputs;
|
|
1665
1678
|
}
|
|
1679
|
+
function sandboxFileOutput(data, message) {
|
|
1680
|
+
const tool = stringValue(data.tool);
|
|
1681
|
+
const status = stringValue(data.status)?.toLowerCase();
|
|
1682
|
+
if (!tool || !SANDBOX_FILE_OUTPUT_TOOLS.has(tool) || status !== "success" || !isObject(data.input)) {
|
|
1683
|
+
return void 0;
|
|
1684
|
+
}
|
|
1685
|
+
const workspacePath = portableWorkspacePath(
|
|
1686
|
+
data.input.file_path
|
|
1687
|
+
);
|
|
1688
|
+
if (!workspacePath) return void 0;
|
|
1689
|
+
return {
|
|
1690
|
+
id: `workspace-file:${workspacePath}`,
|
|
1691
|
+
kind: outputKindFromPath(workspacePath),
|
|
1692
|
+
title: workspacePath.split("/").at(-1) ?? workspacePath,
|
|
1693
|
+
status: "success",
|
|
1694
|
+
resource: { type: "workspace_file", workspacePath },
|
|
1695
|
+
messageId: message.id,
|
|
1696
|
+
updatedAt: message.updatedAt ?? message.createdAt
|
|
1697
|
+
};
|
|
1698
|
+
}
|
|
1699
|
+
function portableWorkspacePath(value) {
|
|
1700
|
+
const path = stringValue(value)?.replace(/\\/g, "/").replace(/^\.\/+/, "").replace(/\/{2,}/g, "/");
|
|
1701
|
+
if (!path || path.startsWith("/") || /^[a-z]:\//i.test(path) || path.split("/").some((segment) => segment === "..")) {
|
|
1702
|
+
return void 0;
|
|
1703
|
+
}
|
|
1704
|
+
return path;
|
|
1705
|
+
}
|
|
1706
|
+
function outputKindFromPath(path) {
|
|
1707
|
+
const extension = path.match(/\.([^./]+)$/)?.[1]?.toLowerCase();
|
|
1708
|
+
if (extension === "html" || extension === "htm") return "site";
|
|
1709
|
+
if (["png", "jpg", "jpeg", "gif", "webp", "svg", "avif"].includes(extension ?? ""))
|
|
1710
|
+
return "image";
|
|
1711
|
+
if (["csv", "xls", "xlsx", "ods"].includes(extension ?? ""))
|
|
1712
|
+
return "spreadsheet";
|
|
1713
|
+
if (["ppt", "pptx", "odp"].includes(extension ?? ""))
|
|
1714
|
+
return "presentation";
|
|
1715
|
+
if (["pdf", "doc", "docx", "md", "markdown", "txt", "rtf", "odt"].includes(
|
|
1716
|
+
extension ?? ""
|
|
1717
|
+
))
|
|
1718
|
+
return "document";
|
|
1719
|
+
return "file";
|
|
1720
|
+
}
|
|
1721
|
+
function isCompletedOutputStatus(value) {
|
|
1722
|
+
const status = stringValue(value)?.toLowerCase();
|
|
1723
|
+
return status === void 0 || status === "success";
|
|
1724
|
+
}
|
|
1666
1725
|
function sourceFromReference(reference, message) {
|
|
1667
1726
|
const updatedAt = message.updatedAt ?? message.createdAt;
|
|
1668
1727
|
const common = {
|
|
@@ -1735,25 +1794,42 @@ function fileSources(files, message) {
|
|
|
1735
1794
|
];
|
|
1736
1795
|
});
|
|
1737
1796
|
}
|
|
1738
|
-
function
|
|
1739
|
-
|
|
1740
|
-
|
|
1797
|
+
function webSearchSources(part, message) {
|
|
1798
|
+
if (part.type !== "component" || !isObject(part.data)) return [];
|
|
1799
|
+
const data = part.data;
|
|
1800
|
+
if (data.tool !== "web_search" || stringValue(data.status)?.toLowerCase() !== "success") {
|
|
1801
|
+
return [];
|
|
1802
|
+
}
|
|
1803
|
+
const output = stringValue(data.output);
|
|
1804
|
+
if (!output) return [];
|
|
1741
1805
|
const updatedAt = message.updatedAt ?? message.createdAt;
|
|
1742
|
-
const
|
|
1743
|
-
|
|
1744
|
-
|
|
1745
|
-
|
|
1746
|
-
|
|
1747
|
-
|
|
1748
|
-
|
|
1749
|
-
|
|
1750
|
-
|
|
1751
|
-
|
|
1752
|
-
|
|
1753
|
-
|
|
1754
|
-
|
|
1755
|
-
|
|
1756
|
-
|
|
1806
|
+
const sources = [];
|
|
1807
|
+
for (const match of output.matchAll(WEB_SEARCH_RESULT_PATTERN)) {
|
|
1808
|
+
const rawTitle = stringValue(match[1]);
|
|
1809
|
+
const url = httpUrl(match[2]);
|
|
1810
|
+
if (!url) continue;
|
|
1811
|
+
const title = rawTitle && rawTitle.toLowerCase() !== "n/a" ? rawTitle : new URL(url).hostname;
|
|
1812
|
+
sources.push({
|
|
1813
|
+
id: `web:${url}`,
|
|
1814
|
+
kind: "web_page",
|
|
1815
|
+
title: compactText(title, 160),
|
|
1816
|
+
description: url,
|
|
1817
|
+
resource: { type: "url", url },
|
|
1818
|
+
messageId: message.id,
|
|
1819
|
+
updatedAt
|
|
1820
|
+
});
|
|
1821
|
+
}
|
|
1822
|
+
return sources;
|
|
1823
|
+
}
|
|
1824
|
+
function httpUrl(value) {
|
|
1825
|
+
const url = stringValue(value);
|
|
1826
|
+
if (!url) return void 0;
|
|
1827
|
+
try {
|
|
1828
|
+
const parsed = new URL(url);
|
|
1829
|
+
return parsed.protocol === "http:" || parsed.protocol === "https:" ? url : void 0;
|
|
1830
|
+
} catch {
|
|
1831
|
+
return void 0;
|
|
1832
|
+
}
|
|
1757
1833
|
}
|
|
1758
1834
|
function collectLiveTaskSummary({
|
|
1759
1835
|
messages,
|
|
@@ -1773,7 +1849,9 @@ function collectLiveTaskSummary({
|
|
|
1773
1849
|
(message) => extractPlan(message) ?? []
|
|
1774
1850
|
);
|
|
1775
1851
|
const agentRuns = messages.flatMap(
|
|
1776
|
-
(message) => (message.agentRuns ?? []).filter(
|
|
1852
|
+
(message) => (message.agentRuns ?? []).filter(
|
|
1853
|
+
(run) => run.category?.trim().toLowerCase() === "agent" && Boolean(run.parentId)
|
|
1854
|
+
).map((run) => ({
|
|
1777
1855
|
id: run.id,
|
|
1778
1856
|
parentId: run.parentId,
|
|
1779
1857
|
level: agentRunLevel(run, messages),
|
|
@@ -1781,7 +1859,7 @@ function collectLiveTaskSummary({
|
|
|
1781
1859
|
title: (run.agentKey ? agentNames?.get(run.agentKey) : void 0) ?? run.title ?? run.xpertName ?? run.agentKey ?? "Agent",
|
|
1782
1860
|
status: taskSummaryAgentStatus(run.status),
|
|
1783
1861
|
elapsedTime: run.elapsedTime,
|
|
1784
|
-
error: typeof run.error === "string" ? run.error : void 0,
|
|
1862
|
+
error: typeof run.error === "string" ? compactText(run.error, 160) : void 0,
|
|
1785
1863
|
messageId: message.id,
|
|
1786
1864
|
updatedAt: run.updatedAt ?? run.endedAt ?? run.startedAt ?? message.updatedAt
|
|
1787
1865
|
}))
|
|
@@ -1805,7 +1883,7 @@ function collectLiveTaskSummary({
|
|
|
1805
1883
|
(part) => knownPartOutputs(part, message)
|
|
1806
1884
|
)
|
|
1807
1885
|
)
|
|
1808
|
-
]),
|
|
1886
|
+
]).filter(isCompletedOpenableOutput),
|
|
1809
1887
|
sources: mergeLatest([
|
|
1810
1888
|
...contributions.flatMap((item) => item.sources ?? []).filter((source) => source.kind !== "sub_agent"),
|
|
1811
1889
|
...messages.flatMap((message) => [
|
|
@@ -1814,7 +1892,9 @@ function collectLiveTaskSummary({
|
|
|
1814
1892
|
),
|
|
1815
1893
|
...fileSources(message.fileAssets, message),
|
|
1816
1894
|
...fileSources(message.attachments, message),
|
|
1817
|
-
...
|
|
1895
|
+
...contentParts(message.content).flatMap(
|
|
1896
|
+
(part) => webSearchSources(part, message)
|
|
1897
|
+
)
|
|
1818
1898
|
])
|
|
1819
1899
|
]),
|
|
1820
1900
|
agents: mergeAgents(agentRuns),
|
|
@@ -1826,17 +1906,21 @@ function mergeTaskSummary(history, live, historySections) {
|
|
|
1826
1906
|
const outputs = mergeLatest([
|
|
1827
1907
|
...historySections?.outputs ?? history?.outputs.items ?? [],
|
|
1828
1908
|
...live.outputs
|
|
1829
|
-
]);
|
|
1909
|
+
]).filter(isCompletedOpenableOutput);
|
|
1830
1910
|
const sources = mergeLatest([
|
|
1831
1911
|
...historySections?.sources ?? history?.sources.items ?? [],
|
|
1832
1912
|
...live.sources
|
|
1833
1913
|
]);
|
|
1834
|
-
const
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1914
|
+
const historyAgents = historySections?.agents ?? history?.agents.items ?? [];
|
|
1915
|
+
const eligibleHistoryAgents = historyAgents.filter(
|
|
1916
|
+
(agent) => Boolean(agent.parentId)
|
|
1917
|
+
);
|
|
1918
|
+
const excludedHistoryAgentCount = historyAgents.length - eligibleHistoryAgents.length;
|
|
1919
|
+
const historyAgentTotal = Math.max(
|
|
1920
|
+
0,
|
|
1921
|
+
(history?.agents.total ?? 0) - excludedHistoryAgentCount
|
|
1922
|
+
);
|
|
1923
|
+
const agents = mergeAgents([...eligibleHistoryAgents, ...live.agents]);
|
|
1840
1924
|
const pending = mergePending([
|
|
1841
1925
|
...historySections?.pending ?? history?.pending.items ?? [],
|
|
1842
1926
|
...live.pending
|
|
@@ -1861,7 +1945,7 @@ function mergeTaskSummary(history, live, historySections) {
|
|
|
1861
1945
|
totals: {
|
|
1862
1946
|
outputs: Math.max(history?.outputs.total ?? 0, outputs.length),
|
|
1863
1947
|
sources: Math.max(history?.sources.total ?? 0, sources.length),
|
|
1864
|
-
agents: agents.length,
|
|
1948
|
+
agents: Math.max(historyAgentTotal, agents.length),
|
|
1865
1949
|
pending: Math.max(history?.pending.total ?? 0, pending.length)
|
|
1866
1950
|
}
|
|
1867
1951
|
};
|
|
@@ -2581,7 +2665,6 @@ var en_US_default = {
|
|
|
2581
2665
|
partial: "Partially ready",
|
|
2582
2666
|
failed: "Failed"
|
|
2583
2667
|
},
|
|
2584
|
-
poweredBy: "Powered by Xpert AI",
|
|
2585
2668
|
followUps: {
|
|
2586
2669
|
pending: "Pending follow-ups",
|
|
2587
2670
|
queue: "Queue",
|
|
@@ -2891,7 +2974,20 @@ var en_US_default = {
|
|
|
2891
2974
|
status: {
|
|
2892
2975
|
pending: "Pending",
|
|
2893
2976
|
in_progress: "In progress",
|
|
2894
|
-
completed: "Completed"
|
|
2977
|
+
completed: "Completed",
|
|
2978
|
+
active: "Active",
|
|
2979
|
+
paused: "Paused",
|
|
2980
|
+
blocked: "Blocked",
|
|
2981
|
+
usage_limited: "Usage limited",
|
|
2982
|
+
budget_limited: "Budget limited",
|
|
2983
|
+
complete: "Completed",
|
|
2984
|
+
success: "Completed",
|
|
2985
|
+
error: "Failed",
|
|
2986
|
+
running: "Running",
|
|
2987
|
+
starting: "Starting",
|
|
2988
|
+
stopping: "Stopping",
|
|
2989
|
+
timeout: "Timed out",
|
|
2990
|
+
interrupted: "Interrupted"
|
|
2895
2991
|
},
|
|
2896
2992
|
pending: {
|
|
2897
2993
|
approval: "Approval required",
|
|
@@ -3157,7 +3253,6 @@ var zh_CN_default = {
|
|
|
3157
3253
|
partial: "\u90E8\u5206\u5C31\u7EEA",
|
|
3158
3254
|
failed: "\u89E3\u6790\u5931\u8D25"
|
|
3159
3255
|
},
|
|
3160
|
-
poweredBy: "\u7531 Xpert AI \u9A71\u52A8",
|
|
3161
3256
|
followUps: {
|
|
3162
3257
|
pending: "\u5F85\u5904\u7406 Follow-up",
|
|
3163
3258
|
queue: "\u6392\u961F",
|
|
@@ -3467,7 +3562,20 @@ var zh_CN_default = {
|
|
|
3467
3562
|
status: {
|
|
3468
3563
|
pending: "\u5F85\u5904\u7406",
|
|
3469
3564
|
in_progress: "\u8FDB\u884C\u4E2D",
|
|
3470
|
-
completed: "\u5DF2\u5B8C\u6210"
|
|
3565
|
+
completed: "\u5DF2\u5B8C\u6210",
|
|
3566
|
+
active: "\u8FDB\u884C\u4E2D",
|
|
3567
|
+
paused: "\u5DF2\u6682\u505C",
|
|
3568
|
+
blocked: "\u5DF2\u963B\u585E",
|
|
3569
|
+
usage_limited: "\u7528\u91CF\u53D7\u9650",
|
|
3570
|
+
budget_limited: "\u9884\u7B97\u53D7\u9650",
|
|
3571
|
+
complete: "\u5DF2\u5B8C\u6210",
|
|
3572
|
+
success: "\u5DF2\u5B8C\u6210",
|
|
3573
|
+
error: "\u5931\u8D25",
|
|
3574
|
+
running: "\u8FD0\u884C\u4E2D",
|
|
3575
|
+
starting: "\u542F\u52A8\u4E2D",
|
|
3576
|
+
stopping: "\u505C\u6B62\u4E2D",
|
|
3577
|
+
timeout: "\u5DF2\u8D85\u65F6",
|
|
3578
|
+
interrupted: "\u5DF2\u4E2D\u65AD"
|
|
3471
3579
|
},
|
|
3472
3580
|
pending: {
|
|
3473
3581
|
approval: "\u9700\u8981\u5BA1\u6279",
|
|
@@ -3907,12 +4015,16 @@ function ThemeProvider({ children, theme: themeProp }) {
|
|
|
3907
4015
|
React2.useEffect(() => {
|
|
3908
4016
|
if (!themeRef.current) return;
|
|
3909
4017
|
const el = themeRef.current;
|
|
4018
|
+
const root = document.documentElement;
|
|
4019
|
+
const rootWasDark = root.classList.contains("dark");
|
|
3910
4020
|
const { colorScheme, radius, density, typography, color } = theme;
|
|
3911
4021
|
const isDarkMode2 = colorScheme === "dark";
|
|
3912
4022
|
if (isDarkMode2) {
|
|
3913
4023
|
el.classList.add("dark");
|
|
4024
|
+
root.classList.add("dark");
|
|
3914
4025
|
} else {
|
|
3915
4026
|
el.classList.remove("dark");
|
|
4027
|
+
root.classList.remove("dark");
|
|
3916
4028
|
}
|
|
3917
4029
|
if (radius) {
|
|
3918
4030
|
el.dataset.radius = radius;
|
|
@@ -3954,7 +4066,6 @@ function ThemeProvider({ children, theme: themeProp }) {
|
|
|
3954
4066
|
}
|
|
3955
4067
|
}
|
|
3956
4068
|
if (color) {
|
|
3957
|
-
const root = document.documentElement;
|
|
3958
4069
|
if (color.grayscale) {
|
|
3959
4070
|
const grayscaleColors = generateGrayscaleColors(color.grayscale, isDarkMode2);
|
|
3960
4071
|
Object.entries(grayscaleColors).forEach(([key, value]) => {
|
|
@@ -4001,8 +4112,8 @@ function ThemeProvider({ children, theme: themeProp }) {
|
|
|
4001
4112
|
}
|
|
4002
4113
|
setThemeRevision((current) => current + 1);
|
|
4003
4114
|
return () => {
|
|
4004
|
-
const root = document.documentElement;
|
|
4005
4115
|
el.classList.remove("dark");
|
|
4116
|
+
root.classList.toggle("dark", rootWasDark);
|
|
4006
4117
|
el.removeAttribute("data-radius");
|
|
4007
4118
|
el.removeAttribute("data-density");
|
|
4008
4119
|
el.style.removeProperty("--density-spacing");
|
|
@@ -20534,7 +20645,8 @@ function useTaskSummary({
|
|
|
20534
20645
|
enabled,
|
|
20535
20646
|
conversationId,
|
|
20536
20647
|
client,
|
|
20537
|
-
live
|
|
20648
|
+
live,
|
|
20649
|
+
refreshVersion = 0
|
|
20538
20650
|
}) {
|
|
20539
20651
|
const [loaded, setLoaded] = React59.useState(null);
|
|
20540
20652
|
const [historySections, setHistorySections] = React59.useState({});
|
|
@@ -20579,7 +20691,14 @@ function useTaskSummary({
|
|
|
20579
20691
|
abortSectionRequests();
|
|
20580
20692
|
requestVersionRef.current += 1;
|
|
20581
20693
|
};
|
|
20582
|
-
}, [
|
|
20694
|
+
}, [
|
|
20695
|
+
abortSectionRequests,
|
|
20696
|
+
client,
|
|
20697
|
+
conversationId,
|
|
20698
|
+
enabled,
|
|
20699
|
+
refreshVersion,
|
|
20700
|
+
retryVersion
|
|
20701
|
+
]);
|
|
20583
20702
|
const snapshot = loaded?.conversationId === conversationId ? loaded.snapshot : null;
|
|
20584
20703
|
const activeHistorySections = React59.useMemo(
|
|
20585
20704
|
() => historySectionsConversationId === conversationId ? historySections : {},
|
|
@@ -20621,13 +20740,7 @@ function useTaskSummary({
|
|
|
20621
20740
|
}
|
|
20622
20741
|
}
|
|
20623
20742
|
},
|
|
20624
|
-
[
|
|
20625
|
-
activeHistorySections,
|
|
20626
|
-
client,
|
|
20627
|
-
conversationId,
|
|
20628
|
-
enabled,
|
|
20629
|
-
loadingSections
|
|
20630
|
-
]
|
|
20743
|
+
[activeHistorySections, client, conversationId, enabled, loadingSections]
|
|
20631
20744
|
);
|
|
20632
20745
|
return {
|
|
20633
20746
|
summary: mergeTaskSummary(snapshot, live, activeHistorySections),
|
|
@@ -20744,6 +20857,7 @@ function TaskSummaryContent({
|
|
|
20744
20857
|
}) {
|
|
20745
20858
|
const { t } = useChatkitTranslation();
|
|
20746
20859
|
const [expanded, setExpanded] = React60.useState({});
|
|
20860
|
+
const [expandedLocal, setExpandedLocal] = React60.useState({});
|
|
20747
20861
|
const hasTask = Boolean(
|
|
20748
20862
|
summary.goal || summary.plan || summary.todos?.items.length
|
|
20749
20863
|
);
|
|
@@ -20758,6 +20872,12 @@ function TaskSummaryContent({
|
|
|
20758
20872
|
}
|
|
20759
20873
|
};
|
|
20760
20874
|
const sectionItems = (section, items) => expanded[section] ? items : items.slice(0, PREVIEW_SIZE);
|
|
20875
|
+
const localSectionItems = (section, items) => expandedLocal[section] ? items : items.slice(0, PREVIEW_SIZE);
|
|
20876
|
+
const localizedStatus = (status) => {
|
|
20877
|
+
if (!status) return void 0;
|
|
20878
|
+
const key = status.trim().toLowerCase().replace(/[\s-]+/g, "_");
|
|
20879
|
+
return t(`taskSummary.status.${key}`, { defaultValue: status });
|
|
20880
|
+
};
|
|
20761
20881
|
const openSummaryItem = (resource, messageId, title) => {
|
|
20762
20882
|
if (resource?.type === "message") {
|
|
20763
20883
|
onNavigateMessage(resource.messageId);
|
|
@@ -20790,6 +20910,25 @@ function TaskSummaryContent({
|
|
|
20790
20910
|
}
|
|
20791
20911
|
);
|
|
20792
20912
|
};
|
|
20913
|
+
const localSectionAction = (section, total2) => {
|
|
20914
|
+
if (total2 <= PREVIEW_SIZE) return null;
|
|
20915
|
+
const isExpanded = Boolean(expandedLocal[section]);
|
|
20916
|
+
return /* @__PURE__ */ jsxs45(
|
|
20917
|
+
"button",
|
|
20918
|
+
{
|
|
20919
|
+
type: "button",
|
|
20920
|
+
className: "mt-1 flex w-full items-center gap-2 rounded-lg px-2 py-1.5 text-left text-sm text-muted-foreground transition-colors hover:bg-muted/60 hover:text-foreground",
|
|
20921
|
+
onClick: () => setExpandedLocal((state) => ({
|
|
20922
|
+
...state,
|
|
20923
|
+
[section]: !isExpanded
|
|
20924
|
+
})),
|
|
20925
|
+
children: [
|
|
20926
|
+
/* @__PURE__ */ jsx64(ListChecks3, { className: "size-3.5" }),
|
|
20927
|
+
isExpanded ? t("taskSummary.collapse") : t("taskSummary.viewAll", { count: total2 })
|
|
20928
|
+
]
|
|
20929
|
+
}
|
|
20930
|
+
);
|
|
20931
|
+
};
|
|
20793
20932
|
return /* @__PURE__ */ jsxs45("div", { className: "divide-y divide-border/70", children: [
|
|
20794
20933
|
Boolean(historyError) && /* @__PURE__ */ jsxs45("div", { className: "m-3 flex items-start justify-between gap-3 rounded-lg border border-destructive/30 bg-destructive/5 px-3 py-2 text-xs text-destructive", children: [
|
|
20795
20934
|
/* @__PURE__ */ jsx64("span", { children: t("taskSummary.historyError") }),
|
|
@@ -20806,52 +20945,41 @@ function TaskSummaryContent({
|
|
|
20806
20945
|
}
|
|
20807
20946
|
)
|
|
20808
20947
|
] }),
|
|
20809
|
-
/* @__PURE__ */ jsxs45(
|
|
20810
|
-
|
|
20811
|
-
|
|
20812
|
-
|
|
20813
|
-
|
|
20814
|
-
|
|
20815
|
-
|
|
20816
|
-
|
|
20817
|
-
|
|
20818
|
-
|
|
20819
|
-
|
|
20820
|
-
|
|
20821
|
-
|
|
20822
|
-
|
|
20823
|
-
|
|
20824
|
-
|
|
20825
|
-
|
|
20826
|
-
|
|
20827
|
-
|
|
20828
|
-
|
|
20829
|
-
|
|
20830
|
-
|
|
20831
|
-
|
|
20832
|
-
|
|
20833
|
-
|
|
20834
|
-
|
|
20835
|
-
|
|
20836
|
-
|
|
20837
|
-
|
|
20838
|
-
description: item.description,
|
|
20839
|
-
leading: /* @__PURE__ */ jsx64(BookOpen3, { className: "size-4" }),
|
|
20840
|
-
trailing: item.resource && item.resource.type !== "message" ? /* @__PURE__ */ jsx64(ExternalLink, { className: "size-3.5" }) : void 0,
|
|
20841
|
-
onClick: () => openSummaryItem(item.resource, item.messageId, item.title)
|
|
20842
|
-
},
|
|
20843
|
-
item.id
|
|
20844
|
-
)),
|
|
20845
|
-
sectionAction("sources", summary.totals.sources)
|
|
20846
|
-
]
|
|
20847
|
-
}
|
|
20848
|
-
),
|
|
20948
|
+
/* @__PURE__ */ jsxs45(SummarySection, { title: t("taskSummary.sections.outputs"), children: [
|
|
20949
|
+
summary.outputs.length === 0 ? /* @__PURE__ */ jsx64(SummaryPrompt, { onClick: onFocusComposer, children: t("taskSummary.createOutput") }) : sectionItems("outputs", summary.outputs).map((item) => /* @__PURE__ */ jsx64(
|
|
20950
|
+
SummaryButton,
|
|
20951
|
+
{
|
|
20952
|
+
title: item.title,
|
|
20953
|
+
metadata: localizedStatus(item.status),
|
|
20954
|
+
description: item.description,
|
|
20955
|
+
leading: /* @__PURE__ */ jsx64(FileOutput, { className: "size-4" }),
|
|
20956
|
+
trailing: item.resource && item.resource.type !== "message" ? /* @__PURE__ */ jsx64(ExternalLink, { className: "size-3.5" }) : void 0,
|
|
20957
|
+
onClick: () => openSummaryItem(item.resource, item.messageId, item.title)
|
|
20958
|
+
},
|
|
20959
|
+
item.id
|
|
20960
|
+
)),
|
|
20961
|
+
sectionAction("outputs", summary.totals.outputs)
|
|
20962
|
+
] }),
|
|
20963
|
+
/* @__PURE__ */ jsxs45(SummarySection, { title: t("taskSummary.sections.sources"), children: [
|
|
20964
|
+
sectionItems("sources", summary.sources).map((item) => /* @__PURE__ */ jsx64(
|
|
20965
|
+
SummaryButton,
|
|
20966
|
+
{
|
|
20967
|
+
title: item.title,
|
|
20968
|
+
description: item.description,
|
|
20969
|
+
leading: /* @__PURE__ */ jsx64(BookOpen3, { className: "size-4" }),
|
|
20970
|
+
trailing: item.resource && item.resource.type !== "message" ? /* @__PURE__ */ jsx64(ExternalLink, { className: "size-3.5" }) : void 0,
|
|
20971
|
+
onClick: () => openSummaryItem(item.resource, item.messageId, item.title)
|
|
20972
|
+
},
|
|
20973
|
+
item.id
|
|
20974
|
+
)),
|
|
20975
|
+
sectionAction("sources", summary.totals.sources)
|
|
20976
|
+
] }),
|
|
20849
20977
|
hasTask && /* @__PURE__ */ jsxs45(SummarySection, { title: t("taskSummary.sections.task"), children: [
|
|
20850
20978
|
summary.goal && /* @__PURE__ */ jsx64(
|
|
20851
20979
|
SummaryButton,
|
|
20852
20980
|
{
|
|
20853
20981
|
title: summary.goal.objective,
|
|
20854
|
-
|
|
20982
|
+
metadata: localizedStatus(summary.goal.status),
|
|
20855
20983
|
leading: /* @__PURE__ */ jsx64(Target2, { className: "size-4" }),
|
|
20856
20984
|
onClick: onFocusComposer
|
|
20857
20985
|
}
|
|
@@ -20865,34 +20993,45 @@ function TaskSummaryContent({
|
|
|
20865
20993
|
onClick: () => summary.plan?.messageId ? onNavigateMessage(summary.plan.messageId) : onFocusComposer()
|
|
20866
20994
|
}
|
|
20867
20995
|
),
|
|
20868
|
-
(summary.todos?.items ?? []).
|
|
20996
|
+
localSectionItems("todos", summary.todos?.items ?? []).map(
|
|
20997
|
+
(todo) => /* @__PURE__ */ jsx64(
|
|
20998
|
+
SummaryButton,
|
|
20999
|
+
{
|
|
21000
|
+
title: todo.content,
|
|
21001
|
+
metadata: localizedStatus(todo.status),
|
|
21002
|
+
leading: todo.status === "completed" ? /* @__PURE__ */ jsx64(CheckCircle25, { className: "size-4 text-muted-foreground" }) : /* @__PURE__ */ jsx64(CircleEllipsis, { className: "size-4 text-muted-foreground" }),
|
|
21003
|
+
onClick: () => summary.todos?.messageId ? onNavigateMessage(summary.todos.messageId) : onFocusComposer()
|
|
21004
|
+
},
|
|
21005
|
+
todo.id
|
|
21006
|
+
)
|
|
21007
|
+
),
|
|
21008
|
+
localSectionAction("todos", summary.todos?.items.length ?? 0)
|
|
21009
|
+
] }),
|
|
21010
|
+
summary.running.length > 0 && /* @__PURE__ */ jsxs45(SummarySection, { title: t("taskSummary.sections.running"), children: [
|
|
21011
|
+
localSectionItems("running", summary.running).map((item) => /* @__PURE__ */ jsx64(
|
|
20869
21012
|
SummaryButton,
|
|
20870
21013
|
{
|
|
20871
|
-
title:
|
|
20872
|
-
|
|
20873
|
-
|
|
20874
|
-
|
|
21014
|
+
title: item.title,
|
|
21015
|
+
metadata: localizedStatus(item.status),
|
|
21016
|
+
description: item.description,
|
|
21017
|
+
leading: /* @__PURE__ */ jsx64(PlayCircle, { className: "size-4" }),
|
|
21018
|
+
trailing: item.resource ? /* @__PURE__ */ jsx64(ExternalLink, { className: "size-3.5" }) : void 0,
|
|
21019
|
+
onClick: () => item.resource && onOpenResource(item.resource, void 0, item.title)
|
|
20875
21020
|
},
|
|
20876
|
-
|
|
20877
|
-
))
|
|
21021
|
+
item.id
|
|
21022
|
+
)),
|
|
21023
|
+
localSectionAction("running", summary.running.length)
|
|
20878
21024
|
] }),
|
|
20879
|
-
summary.running.length > 0 && /* @__PURE__ */ jsx64(SummarySection, { title: t("taskSummary.sections.running"), children: summary.running.slice(0, PREVIEW_SIZE).map((item) => /* @__PURE__ */ jsx64(
|
|
20880
|
-
SummaryButton,
|
|
20881
|
-
{
|
|
20882
|
-
title: item.title,
|
|
20883
|
-
description: item.description ?? item.status,
|
|
20884
|
-
leading: /* @__PURE__ */ jsx64(PlayCircle, { className: "size-4" }),
|
|
20885
|
-
trailing: item.resource ? /* @__PURE__ */ jsx64(ExternalLink, { className: "size-3.5" }) : void 0,
|
|
20886
|
-
onClick: () => item.resource && onOpenResource(item.resource, void 0, item.title)
|
|
20887
|
-
},
|
|
20888
|
-
item.id
|
|
20889
|
-
)) }),
|
|
20890
21025
|
summary.agents.length > 0 && /* @__PURE__ */ jsxs45(SummarySection, { title: t("taskSummary.sections.agents"), children: [
|
|
20891
21026
|
sectionItems("agents", summary.agents).map((item) => /* @__PURE__ */ jsx64(
|
|
20892
21027
|
SummaryButton,
|
|
20893
21028
|
{
|
|
20894
21029
|
title: item.title,
|
|
20895
|
-
|
|
21030
|
+
metadata: [
|
|
21031
|
+
localizedStatus(item.status),
|
|
21032
|
+
formatElapsed(item.elapsedTime)
|
|
21033
|
+
].filter(Boolean).join(" \xB7 "),
|
|
21034
|
+
description: item.error,
|
|
20896
21035
|
leading: /* @__PURE__ */ jsx64(Bot5, { className: "size-4" }),
|
|
20897
21036
|
onClick: () => item.messageId ? onNavigateMessage(item.messageId) : onFocusComposer()
|
|
20898
21037
|
},
|
|
@@ -20940,16 +21079,20 @@ function SummaryPrompt({
|
|
|
20940
21079
|
}
|
|
20941
21080
|
function SummaryButton({
|
|
20942
21081
|
title,
|
|
21082
|
+
metadata,
|
|
20943
21083
|
description,
|
|
20944
21084
|
leading,
|
|
20945
21085
|
trailing,
|
|
20946
21086
|
onClick
|
|
20947
21087
|
}) {
|
|
21088
|
+
const tooltipText = [title, metadata, description].filter(Boolean);
|
|
20948
21089
|
return /* @__PURE__ */ jsxs45(
|
|
20949
21090
|
"button",
|
|
20950
21091
|
{
|
|
20951
21092
|
type: "button",
|
|
20952
|
-
|
|
21093
|
+
title: tooltipText.join("\n"),
|
|
21094
|
+
"aria-disabled": !onClick,
|
|
21095
|
+
tabIndex: onClick ? 0 : -1,
|
|
20953
21096
|
onClick,
|
|
20954
21097
|
className: cn(
|
|
20955
21098
|
"flex w-full min-w-0 items-start gap-2.5 rounded-lg px-2 py-1.5 text-left transition-colors",
|
|
@@ -20960,6 +21103,7 @@ function SummaryButton({
|
|
|
20960
21103
|
leading && /* @__PURE__ */ jsx64("span", { className: "mt-0.5 shrink-0 text-muted-foreground", children: leading }),
|
|
20961
21104
|
/* @__PURE__ */ jsxs45("span", { className: "min-w-0 flex-1", children: [
|
|
20962
21105
|
/* @__PURE__ */ jsx64("span", { className: "block truncate text-sm font-medium leading-5 text-foreground", children: title }),
|
|
21106
|
+
metadata && /* @__PURE__ */ jsx64("span", { className: "mt-0.5 block truncate text-xs text-muted-foreground", children: metadata }),
|
|
20963
21107
|
description && /* @__PURE__ */ jsx64("span", { className: "mt-0.5 block line-clamp-2 text-xs text-muted-foreground", children: description })
|
|
20964
21108
|
] }),
|
|
20965
21109
|
trailing && /* @__PURE__ */ jsx64("span", { className: "mt-0.5 text-muted-foreground", children: trailing })
|
|
@@ -22055,7 +22199,8 @@ function Chat({
|
|
|
22055
22199
|
enabled: taskSummaryEnabled,
|
|
22056
22200
|
conversationId: taskSummaryConversationId,
|
|
22057
22201
|
client: stream.client,
|
|
22058
|
-
live: liveTaskSummary
|
|
22202
|
+
live: liveTaskSummary,
|
|
22203
|
+
refreshVersion: stream.historyMessageLoadVersion
|
|
22059
22204
|
});
|
|
22060
22205
|
const navigateToTaskSummaryMessage = React61.useCallback(
|
|
22061
22206
|
async (messageId) => {
|
|
@@ -23893,7 +24038,7 @@ function Chat({
|
|
|
23893
24038
|
"data-slot": "chatkit-chat-composer",
|
|
23894
24039
|
"data-position": isInitialComposer ? "centered" : "bottom",
|
|
23895
24040
|
className: cn(
|
|
23896
|
-
"mx-auto w-full
|
|
24041
|
+
"mx-auto w-full max-w-2xl px-4 pb-4 pt-2 z-10 bg-background",
|
|
23897
24042
|
isInitialComposer ? "mb-auto" : "sticky bottom-0"
|
|
23898
24043
|
),
|
|
23899
24044
|
style: chatColumnStyle,
|
|
@@ -24170,7 +24315,7 @@ function Chat({
|
|
|
24170
24315
|
{
|
|
24171
24316
|
"data-slot": "composer-editor-surface",
|
|
24172
24317
|
className: cn(
|
|
24173
|
-
"relative flex min-h-[
|
|
24318
|
+
"relative flex min-h-[6.5rem] min-w-0 bg-background px-2 pt-2 pb-14",
|
|
24174
24319
|
"rounded-composer-editor"
|
|
24175
24320
|
),
|
|
24176
24321
|
children: [
|
|
@@ -24191,7 +24336,7 @@ function Chat({
|
|
|
24191
24336
|
onKeyDown: handleComposerKeyDown,
|
|
24192
24337
|
"data-placeholder": inputPlaceholder,
|
|
24193
24338
|
className: cn(
|
|
24194
|
-
"min-h-
|
|
24339
|
+
"min-h-10 max-h-36 w-full overflow-y-auto whitespace-pre-wrap break-words bg-transparent px-2 py-2 text-base leading-6 text-foreground outline-none",
|
|
24195
24340
|
"empty:before:pointer-events-none empty:before:text-muted-foreground empty:before:content-[attr(data-placeholder)]",
|
|
24196
24341
|
(missingConfig || isHistoryLoading || hasPendingInteractiveRequest) && "cursor-not-allowed opacity-50"
|
|
24197
24342
|
),
|
|
@@ -24346,14 +24491,6 @@ function Chat({
|
|
|
24346
24491
|
),
|
|
24347
24492
|
children: disclaimer.text
|
|
24348
24493
|
}
|
|
24349
|
-
),
|
|
24350
|
-
/* @__PURE__ */ jsx65(
|
|
24351
|
-
"div",
|
|
24352
|
-
{
|
|
24353
|
-
"data-slot": "chat-footer",
|
|
24354
|
-
className: "relative mt-2 flex min-h-6 items-center justify-center gap-2 text-xs text-muted-foreground",
|
|
24355
|
-
children: /* @__PURE__ */ jsx65("span", { children: t("chat.poweredBy") })
|
|
24356
|
-
}
|
|
24357
24494
|
)
|
|
24358
24495
|
]
|
|
24359
24496
|
}
|