@tablestore/tablestore-agent-cli 0.1.9 → 0.2.0
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/dashboard-runtime/dashboard/.next/BUILD_ID +1 -1
- package/dist/dashboard-runtime/dashboard/.next/build-manifest.json +3 -3
- package/dist/dashboard-runtime/dashboard/.next/prerender-manifest.json +3 -3
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/chat/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/documents/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/documents/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/documents/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/qa/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/qa/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/qa/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/retrieval/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/retrieval/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/retrieval/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/settings/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/settings/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/settings/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/create/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/create/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/create/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/[id]/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/[id]/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/[id]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/new/page.js +2 -2
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/new/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/new/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/messages/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/messages/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/messages/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/requests/page/react-loadable-manifest.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/requests/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/requests/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/requests/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/search/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/search/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/search/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/settings/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/settings/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/settings/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/units/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/units/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/units/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/create/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/create/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/create/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/projects/page.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/projects/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.html +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.rsc +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.html +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.rsc +3 -3
- package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
- package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
- package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/auth/status/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/auth/token/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/[name]/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/[name]/token/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/[name]/use/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/chunks/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/[docId]/chunks/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/[docId]/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/upload/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/retrieve/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/chat/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/[id]/models/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/[id]/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/[id]/test/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/logs/client/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/messages/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/requests/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/search/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/units/[memoryId]/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/units/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/runtime/context/route.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/index.html +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/index.rsc +3 -3
- package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_index.segment.rsc +3 -3
- package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding/page.js.nft.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.html +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.rsc +5 -5
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_full.segment.rsc +5 -5
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_head.segment.rsc +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_index.segment.rsc +3 -3
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_tree.segment.rsc +2 -2
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/onboarding/__PAGE__.segment.rsc +2 -2
- package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/onboarding.segment.rsc +2 -2
- package/dist/dashboard-runtime/dashboard/.next/server/app/page_client-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/0b1r_app_(dashboard)_knowledge-base_[name]_documents_documents-client_tsx_0g2uxmt._.js +2 -2
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0aqzu8w._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0id.4_g._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0jb9ccl._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0jhpb-b._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0p7j-9i._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0.1szyw._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_01-2v37._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0251rsp._.js +7 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_038vjn1._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_04f2u4t._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_06tznmj._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_09y~hs8._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0_ow0x1._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0ddbh97._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0f4u0.1._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0fj8l5g._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0hnw-ok._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0j-q~ro._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0jghj2_._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0l~-9i0._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0mtqe24._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0n4gd_6._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0o665bf._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0q748rf._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0t373jc._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0u4elhp._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0vtm7dh._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0xdioxg._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_12guzbo._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_12r9c8h._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_00ofp7q._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_065m1.j._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0ejgygh._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0jns2ew._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0o9jhcn._.js +9 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0xf3ffa._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_error_tsx_01x7ppm._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_components_0ls1exu._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_components_0ugdjlb._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_components_shared_relative-time_tsx_0b7s9rc._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_components_ui_dropdown-menu_tsx_0c~d-fd._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_components_ui_select_tsx_0ys.i47._.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/node_modules__pnpm_0ld4qfm._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/node_modules__pnpm_125b4co._.js +3 -0
- package/dist/dashboard-runtime/dashboard/.next/server/middleware-build-manifest.js +3 -3
- package/dist/dashboard-runtime/dashboard/.next/server/pages/404.html +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/pages/500.html +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/server-reference-manifest.js +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/server-reference-manifest.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0-2yqm.ft6yzy.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0-ov0wxgu5b65.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0.2e8ciiogw04.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/00-qnlax_4630.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/03zdsc.dicedw.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/069zf4m5f.se2.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/08e9vvmr~0bqr.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/08i99xsvs8o5s.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/08tdws.ontiw1.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0azwigiwuhh08.css +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0b54rtt1-cxht.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/{154aheeo3m6bg.js → 0bpginsuceywq.js} +1 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/{0ai8f~-9ig.gz.js → 0cdo38.8y_jr2.js} +5 -5
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0cto67_iw~p9z.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0cy.fvgx7dgqx.js +4 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0fa.nak91jfo-.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0fv6q06wgazh_.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0g9y74cipd10n.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0ga6neugwmh.1.js +5 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0h77.bqx5ltem.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0ix_suxk3spjj.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0k-x6_7dhqb~c.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0lrw.bnws62y9.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0mea2ylxe.umh.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/{0yzz97.2e6if6.js → 0n42fh.zwyk35.js} +5 -5
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/{0dqag6qsw7xv8.js → 0px2r0l_3kp2t.js} +1 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0q6lk_p74rti7.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0t0yqi68~eil6.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0td9nhfbpbmyt.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0u39cc6mmeqb3.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0u6_s-0w8.yr..js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0uay29z9qqouw.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0v0e.nl_9fjba.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0wd0_x8u.jzur.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0wf-nssu2qd_2.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0x7pw1zo7nxno.js +1 -0
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/{05_578ka0ga8d.js → 12pz6ag1s~te_.js} +1 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/15bzqpm440jvz.js +1 -0
- package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/chat/page.tsx +39 -38
- package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/error.tsx +1 -1
- package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/knowledge-base/[name]/documents/documents-client.tsx +0 -1
- package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/knowledge-base/[name]/layout-client.tsx +191 -40
- package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/knowledge-base/[name]/qa/page.tsx +18 -19
- package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/knowledge-base/[name]/retrieval/retrieval-client.tsx +8 -7
- package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/layout.tsx +3 -10
- package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/layout.tsx +128 -22
- package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/search/page.tsx +15 -8
- package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/projects/page.tsx +1 -1
- package/dist/dashboard-runtime/dashboard/src/app/error.tsx +1 -1
- package/dist/dashboard-runtime/dashboard/src/app/globals.css +115 -95
- package/dist/dashboard-runtime/dashboard/src/app/not-found.tsx +1 -1
- package/dist/dashboard-runtime/dashboard/src/app/onboarding/page.tsx +2 -2
- package/dist/dashboard-runtime/dashboard/src/components/chat/add-mount-row.tsx +48 -39
- package/dist/dashboard-runtime/dashboard/src/components/documents/doc-chunks-dialog.tsx +49 -25
- package/dist/dashboard-runtime/dashboard/src/components/documents/doc-columns.tsx +57 -46
- package/dist/dashboard-runtime/dashboard/src/components/documents/doc-table.tsx +2 -4
- package/dist/dashboard-runtime/dashboard/src/components/documents/doc-toolbar.tsx +1 -1
- package/dist/dashboard-runtime/dashboard/src/components/layout/detail-sidebar.tsx +331 -0
- package/dist/dashboard-runtime/dashboard/src/components/layout/help-link.tsx +58 -0
- package/dist/dashboard-runtime/dashboard/src/components/layout/page-header.tsx +130 -11
- package/dist/dashboard-runtime/dashboard/src/components/layout/sidebar-instance-card.tsx +203 -0
- package/dist/dashboard-runtime/dashboard/src/components/layout/sidebar-item.tsx +14 -11
- package/dist/dashboard-runtime/dashboard/src/components/layout/sidebar-mobile.tsx +37 -29
- package/dist/dashboard-runtime/dashboard/src/components/layout/sidebar-usage-stats.tsx +26 -0
- package/dist/dashboard-runtime/dashboard/src/components/layout/sidebar.tsx +94 -46
- package/dist/dashboard-runtime/dashboard/src/components/layout/theme-toggle.tsx +161 -41
- package/dist/dashboard-runtime/dashboard/src/components/memory/requests-histogram-chart.tsx +2 -2
- package/dist/dashboard-runtime/dashboard/src/components/qa/qa-chat-panel.tsx +1 -1
- package/dist/dashboard-runtime/dashboard/src/components/retrieval/retrieval-form.tsx +100 -17
- package/dist/dashboard-runtime/dashboard/src/components/retrieval/retrieval-rerank-fields.tsx +60 -23
- package/dist/dashboard-runtime/dashboard/src/components/shared/empty-state.tsx +1 -1
- package/dist/dashboard-runtime/dashboard/src/components/shared/error-state.tsx +1 -1
- package/dist/dashboard-runtime/dashboard/src/components/shared/llm-model-selector.tsx +160 -70
- package/dist/dashboard-runtime/dashboard/src/components/shared/relative-time.tsx +30 -6
- package/dist/dashboard-runtime/dashboard/src/components/ui/badge.tsx +16 -5
- package/dist/dashboard-runtime/dashboard/src/components/ui/button.tsx +9 -8
- package/dist/dashboard-runtime/dashboard/src/components/ui/card.tsx +14 -8
- package/dist/dashboard-runtime/dashboard/src/components/ui/chat-bubble.tsx +60 -0
- package/dist/dashboard-runtime/dashboard/src/components/ui/command.tsx +1 -1
- package/dist/dashboard-runtime/dashboard/src/components/ui/data-card.tsx +57 -0
- package/dist/dashboard-runtime/dashboard/src/components/ui/detail-section.tsx +40 -0
- package/dist/dashboard-runtime/dashboard/src/components/ui/dialog.tsx +7 -7
- package/dist/dashboard-runtime/dashboard/src/components/ui/dropdown-menu.tsx +6 -6
- package/dist/dashboard-runtime/dashboard/src/components/ui/empty-state.tsx +42 -0
- package/dist/dashboard-runtime/dashboard/src/components/ui/filter-pill.tsx +90 -0
- package/dist/dashboard-runtime/dashboard/src/components/ui/form.tsx +3 -3
- package/dist/dashboard-runtime/dashboard/src/components/ui/input.tsx +5 -1
- package/dist/dashboard-runtime/dashboard/src/components/ui/item-card.tsx +88 -0
- package/dist/dashboard-runtime/dashboard/src/components/ui/label.tsx +1 -1
- package/dist/dashboard-runtime/dashboard/src/components/ui/memory-row.tsx +63 -0
- package/dist/dashboard-runtime/dashboard/src/components/ui/mini-stat.tsx +48 -0
- package/dist/dashboard-runtime/dashboard/src/components/ui/nav-tab-bar.tsx +60 -0
- package/dist/dashboard-runtime/dashboard/src/components/ui/playground-shell.tsx +69 -0
- package/dist/dashboard-runtime/dashboard/src/components/ui/popover.tsx +1 -1
- package/dist/dashboard-runtime/dashboard/src/components/ui/result-row.tsx +37 -0
- package/dist/dashboard-runtime/dashboard/src/components/ui/scope-tag.tsx +30 -0
- package/dist/dashboard-runtime/dashboard/src/components/ui/select.tsx +6 -5
- package/dist/dashboard-runtime/dashboard/src/components/ui/sheet.tsx +4 -4
- package/dist/dashboard-runtime/dashboard/src/components/ui/sonner.tsx +1 -1
- package/dist/dashboard-runtime/dashboard/src/components/ui/stat-card.tsx +58 -0
- package/dist/dashboard-runtime/dashboard/src/components/ui/table.tsx +13 -6
- package/dist/dashboard-runtime/dashboard/src/components/ui/textarea.tsx +4 -1
- package/dist/dashboard-runtime/dashboard/src/components/ui/tooltip.tsx +1 -1
- package/dist/dashboard-runtime/dashboard/src/components/ui/usage-card.tsx +43 -0
- package/dist/dashboard-runtime/dashboard/src/config/navigation.ts +50 -9
- package/dist/dashboard-runtime/dashboard/tailwind.config.ts +47 -12
- package/package.json +1 -1
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0-kiaf5._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0_r24-c._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__11yei-s._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0303qx7._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_06l.12l._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_09eom0_._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0cd.__9._.js +0 -7
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0dqi8bq._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0e9y.xc._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0f9u8i2._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0fbjpet._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0i8py_a._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0jlt.cx._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0n5uozy._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0o32d.y._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0suxzcc._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0tyxwr3._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0u9md36._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0v4jb2q._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0vzw0pw._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0z0rlpq._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0zn.ayc._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_13l7w34._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0o4a.29._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0suis9l._.js +0 -9
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_10mc58z._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_knowledge-base_[name]_layout-client_tsx_05momc5._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_components_retrieval_02c2uck._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/node_modules__pnpm_0qdd37m._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/node_modules__pnpm_11mc1z9._.js +0 -3
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0-etecbti5x22.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0-xqk6wfme5fu.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0.yj.t1hbwkg4.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/031-scv-8sah9.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/05ow1qzcjz3pz.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/07iqor2nl~iqc.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/087x52iesmpfe.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/08an3157he_ad.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0aak.679si-3m.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0c5tcbhzpwen7.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0dheju1t18upn.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0ffr1_o~ss8r8.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0h38qfpz-dmiu.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0l1fmyhvp-k49.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0pcp6pjjz7o49.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0pdq-gljpy7gd.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0q6-s11w9.sgo.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0rnm58mg0whfk.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0rxp5ykl1_lyb.js +0 -4
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0sg6z8.ci0l2b.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0v_~favugkv_a.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0x3ysmon_~xsv.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0x7sjde5wit~i.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0~alekqkiwwaq.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0~e2n9bhosscr.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0~i4llb9-utpp.css +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/0~n-y9cstar6b.js +0 -5
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/14z_j1qzycpe1.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/17k4h5zgalxqj.js +0 -1
- package/dist/dashboard-runtime/dashboard/.next/static/chunks/17m1wc_o0.5iz.js +0 -1
- package/dist/dashboard-runtime/dashboard/src/components/knowledge-base/kb-header.tsx +0 -91
- package/dist/dashboard-runtime/dashboard/src/components/knowledge-base/kb-tab-nav.tsx +0 -62
- package/dist/dashboard-runtime/dashboard/src/components/layout/breadcrumb-bar.tsx +0 -115
- package/dist/dashboard-runtime/dashboard/src/components/memory/memory-header.tsx +0 -46
- package/dist/dashboard-runtime/dashboard/src/components/memory/memory-tab-nav.tsx +0 -54
- /package/dist/dashboard-runtime/dashboard/.next/static/{nPPow7lCVx1fYDGH2XCxQ → uYteIiFtKdPhUhmILps5X}/_buildManifest.js +0 -0
- /package/dist/dashboard-runtime/dashboard/.next/static/{nPPow7lCVx1fYDGH2XCxQ → uYteIiFtKdPhUhmILps5X}/_clientMiddlewareManifest.js +0 -0
- /package/dist/dashboard-runtime/dashboard/.next/static/{nPPow7lCVx1fYDGH2XCxQ → uYteIiFtKdPhUhmILps5X}/_ssgManifest.js +0 -0
package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0aqzu8w._.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[98018,a=>{"use strict";let b=(0,a.i(50053).default)("send",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]]);a.s(["Send",0,b],98018)},31710,a=>{"use strict";let b=(0,a.i(50053).default)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);a.s(["Square",0,b],31710)},31687,a=>{"use strict";let b=(0,a.i(50053).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);a.s(["AlertCircle",0,b],31687)},42210,a=>{"use strict";let b=(0,a.i(50053).default)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);a.s(["BookOpen",0,b],42210)},42216,a=>a.a(async(b,c)=>{try{let b=await a.y("shiki-2963fa3a20578463");a.n(b),c()}catch(a){c(a)}},!0),23195,a=>a.a(async(b,c)=>{try{let b=await a.y("shiki-2963fa3a20578463/engine/javascript");a.n(b),c()}catch(a){c(a)}},!0),28778,a=>a.a(async(b,c)=>{try{var d=a.i(42216),e=a.i(23195),f=b([d,e]);[d,e]=f.then?(await f)():f;var g=(0,e.createJavaScriptRegexEngine)({forgiving:!0}),h=Object.fromEntries(d.bundledLanguagesInfo.flatMap(a=>{var b;return(null!=(b=a.aliases)?b:[]).map(b=>[b,a.id])})),i=new Set(Object.keys(d.bundledLanguages)),j=a=>{let b=a.trim().toLowerCase();return h[b]||(i.has(b),b)},k=new Map,l=new Map,m=new Map,n=a=>{var b;return"string"==typeof a?a:null!=(b=a.name)?b:"custom"},o=function(a={}){var b;let c=null!=(b=a.themes)?b:["github-light","github-dark"];return{name:"shiki",type:"code-highlighter",supportsLanguage(a){let b=j(a);return i.has(b)},getSupportedLanguages:()=>Array.from(i),getThemes:()=>c,highlight({code:a,language:b,themes:c},e){let f,h,o=j(b),p=[n(c[0]),n(c[1])],q=(f=a.slice(0,100),h=a.length>100?a.slice(-100):"",`${o}:${p[0]}:${p[1]}:${a.length}:${f}:${h}`);if(l.has(q))return l.get(q);e&&(m.has(q)||m.set(q,new Set),m.get(q).add(e));let r=i.has(o)?o:"text";return((a,b)=>{let c=`${a}-${n(b[0])}-${n(b[1])}`;if(k.has(c))return k.get(c);let e=(0,d.createHighlighter)({themes:b,langs:[a],engine:g});return k.set(c,e),e})(r,c).then(b=>{let c=b.getLoadedLanguages().includes(o)?o:"text",d=b.codeToTokens(a,{lang:c,themes:{light:p[0],dark:p[1]}});l.set(q,d);let e=m.get(q);if(e){for(let a of e)a(d);m.delete(q)}}).catch(a=>{console.error("[Streamdown Code] Failed to highlight code:",a),m.delete(q)}),null}}}();a.s(["code",0,o]),c()}catch(a){c(a)}},!1),26925,a=>{"use strict";a.i(2617),a.s([])},46400,a=>{"use strict";var b=a.i(2617);a.s(["Streamdown",()=>b.C])},93280,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(53520),e=a.i(16772),f=a.i(64565);a.s(["CodeBlock",0,function({className:a,children:g,node:h,...i}){let j=(0,c.useRef)(null),[k,l]=(0,c.useState)(!1),m=function(a){for(let b of c.Children.toArray(a)){if(!(0,c.isValidElement)(b))continue;let a=b.props;if("string"!=typeof a?.className)continue;let d=a.className.match(/language-([a-z0-9+#-]+)/i);if(d)return d[1]}}(g)??"",n=(0,c.useCallback)(async()=>{let a=j.current?.innerText??"";if(a)try{await navigator.clipboard.writeText(a),l(!0),window.setTimeout(()=>l(!1),2e3)}catch{}},[]);return(0,b.jsxs)("div",{className:"group relative my-2 overflow-hidden rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--muted)/0.5)]",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between border-b border-[hsl(var(--border))] bg-[hsl(var(--muted)/0.8)] px-3 py-1.5",children:[(0,b.jsx)("span",{className:"font-mono text-[11px] uppercase tracking-wide text-muted-foreground",children:m||"text"}),(0,b.jsx)("button",{type:"button",onClick:n,className:(0,f.cn)("inline-flex items-center gap-1 rounded px-2 py-0.5 text-[11px] text-muted-foreground","opacity-0 transition-opacity hover:bg-[hsl(var(--accent))] hover:text-foreground","group-hover:opacity-100 focus-visible:opacity-100",k&&"opacity-100 text-primary"),"aria-label":"复制代码",children:k?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(d.Check,{className:"h-3 w-3"}),"已复制"]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(e.Copy,{className:"h-3 w-3"}),"复制"]})})]}),(0,b.jsx)("pre",{ref:j,className:(0,f.cn)("overflow-x-auto p-3 text-xs leading-relaxed","[&_code]:bg-transparent [&_code]:p-0",a),...i,children:g})]})}])},13562,a=>a.a(async(b,c)=>{try{var d=a.i(34020),e=a.i(28778);a.i(26925);var f=a.i(46400),g=a.i(64565),h=a.i(93280),i=b([e]);[e]=i.then?(await i)():i;let j=["https://","http://","mailto:","#","/"],k=["https://","data:image/"],l=(a,b)=>{let c=a.toLowerCase();return("src"===b?k:j).some(a=>c.startsWith(a))?a:""};a.s(["Markdown",0,function({children:a,className:b}){return(0,d.jsx)("div",{className:(0,g.cn)("text-sm leading-relaxed text-foreground/90","[&_p]:my-2 [&_ul]:my-2 [&_ol]:my-2 [&_li]:my-0.5","[&_ul]:list-disc [&_ul]:pl-5 [&_ol]:list-decimal [&_ol]:pl-5","[&_h1]:mt-4 [&_h1]:mb-2 [&_h1]:text-lg [&_h1]:font-semibold","[&_h2]:mt-3 [&_h2]:mb-2 [&_h2]:text-base [&_h2]:font-semibold","[&_h3]:mt-3 [&_h3]:mb-1.5 [&_h3]:text-sm [&_h3]:font-semibold","[&_a]:text-primary [&_a]:underline [&_a]:underline-offset-2","[&_:not(pre)>code]:rounded [&_:not(pre)>code]:bg-[hsl(var(--muted))] [&_:not(pre)>code]:px-1 [&_:not(pre)>code]:py-0.5 [&_:not(pre)>code]:text-[0.85em]","[&_table]:my-2 [&_table]:w-full [&_table]:border-collapse","[&_th]:border [&_th]:border-[hsl(var(--border))] [&_th]:px-2 [&_th]:py-1 [&_th]:text-left [&_th]:font-semibold","[&_td]:border [&_td]:border-[hsl(var(--border))] [&_td]:px-2 [&_td]:py-1","[&_blockquote]:my-2 [&_blockquote]:border-l-2 [&_blockquote]:border-[hsl(var(--border))] [&_blockquote]:pl-3 [&_blockquote]:text-muted-foreground","[&_hr]:my-3 [&_hr]:border-[hsl(var(--border))]",b),children:(0,d.jsx)(f.Streamdown,{parseIncompleteMarkdown:!0,skipHtml:!0,urlTransform:l,plugins:{code:e.code},components:{pre:h.CodeBlock},controls:{code:!1,table:!1,mermaid:!1},children:a})})}]),c()}catch(a){c(a)}},!1),73570,a=>a.a(async(b,c)=>{try{var d=a.i(34020),e=a.i(71938),f=a.i(31687),g=a.i(37102),h=a.i(42210),i=a.i(47845),j=a.i(1927),k=a.i(16772),l=a.i(12537),m=a.i(16106),n=a.i(9380),o=a.i(98018),p=a.i(55295),q=a.i(63265),r=a.i(76192),s=a.i(36890),t=a.i(27692),u=a.i(70535),v=a.i(24567),w=a.i(64565),x=a.i(13562),y=b([x]);[x]=y.then?(await y)():y;let J=(0,e.memo)(function({message:a,busy:b,onDelete:c,onResend:e,onRegenerate:f,onEditSave:g}){return"user"===a.role?(0,d.jsx)(D,{message:a,busy:b,onDelete:c,onResend:e,onEditSave:g}):(0,d.jsx)(E,{message:a,busy:b,onDelete:c,onRegenerate:f})},(a,b)=>a.message===b.message&&a.busy===b.busy);function z({align:a,disabled:b,onCopy:c,onDelete:e,onEdit:f,onResend:g,onRegenerate:h}){return(0,d.jsxs)("div",{className:(0,w.cn)("mt-1 flex items-center gap-0.5 opacity-0 transition-opacity duration-150","group-hover:opacity-100 group-focus-within:opacity-100","group-data-[touched=true]:opacity-100","right"===a?"justify-end":"justify-start"),children:[(0,d.jsx)(A,{title:"复制",disabled:b,onClick:c,children:(0,d.jsx)(k.Copy,{className:"h-3.5 w-3.5"})}),f&&(0,d.jsx)(A,{title:"编辑",disabled:b,onClick:f,children:(0,d.jsx)(l.Pencil,{className:"h-3.5 w-3.5"})}),g&&(0,d.jsx)(A,{title:"重新发送",disabled:b,onClick:g,children:(0,d.jsx)(o.Send,{className:"h-3.5 w-3.5"})}),h&&(0,d.jsx)(A,{title:"重新生成",disabled:b,onClick:h,children:(0,d.jsx)(m.RotateCcw,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(A,{title:"删除",disabled:b,onClick:e,destructive:!0,children:(0,d.jsx)(p.Trash2,{className:"h-3.5 w-3.5"})})]})}function A({title:a,disabled:b,destructive:c,onClick:e,children:f}){return(0,d.jsx)(r.Button,{type:"button",variant:"ghost",size:"icon",title:a,"aria-label":a,disabled:b,onClick:e,className:(0,w.cn)("h-7 w-7 text-muted-foreground hover:text-foreground",c&&"hover:text-[hsl(var(--destructive))] hover:bg-[hsl(var(--destructive))]/10"),children:f})}function B({rewriteFailed:a,rewriteError:b,failedKbCount:c,failedKbDetails:e}){let f=!!a,g=(c??0)>0;return f||g?(0,d.jsxs)("div",{className:"space-y-1.5",children:[f&&(0,d.jsx)(C,{label:"意图重写失败 · 已回退到原问题",detail:b??"rewriter 返回空结果或抛错"}),g&&e&&(0,d.jsx)(C,{label:`${c} 个知识库检索失败`,detail:e.map(a=>`• ${a.name}: ${a.reason}`).join("\n")})]}):null}function C({label:a,detail:b}){let[c,f]=(0,e.useState)(!1);return(0,d.jsxs)("div",{className:"rounded-md border border-amber-500/30 bg-amber-500/5",children:[(0,d.jsxs)("button",{type:"button",onClick:()=>f(a=>!a),className:(0,w.cn)("flex w-full items-center gap-1.5 px-2 py-1 text-xs","text-amber-700 hover:bg-amber-500/10 dark:text-amber-300"),children:[(0,d.jsx)(g.AlertTriangle,{className:"h-3.5 w-3.5 shrink-0"}),(0,d.jsx)("span",{className:"flex-1 text-left",children:a}),(0,d.jsx)(j.ChevronDown,{className:(0,w.cn)("h-3 w-3 opacity-60 transition-transform duration-150",c&&"rotate-180")})]}),c&&(0,d.jsx)("pre",{className:"border-t border-amber-500/20 px-2 py-1.5 text-[11px] leading-relaxed text-amber-700/80 dark:text-amber-300/80 whitespace-pre-wrap font-mono",children:b})]})}function D({message:a,busy:b,onDelete:c,onResend:f,onEditSave:g}){let[h,i]=(0,e.useState)(!1),[j,k]=(0,e.useState)(!1),[l,m]=(0,e.useState)(a.content),[n,o]=(0,e.useState)(!1),[p,t]=(0,e.useState)(!1),[w,x]=(0,e.useState)(!0),y=(0,e.useCallback)(()=>{navigator.clipboard.writeText(a.content),q.toast.success("已复制")},[a.content]),A=(0,e.useCallback)(()=>{let b=l.trim();if(!b||b===a.content){k(!1),m(a.content);return}k(!1),g(a.id,b)},[l,a.content,a.id,g]),B=(0,e.useCallback)(()=>{m(a.content),k(!1)},[a.content]),C=(0,e.useCallback)(a=>{"Escape"===a.key?(a.preventDefault(),B()):"Enter"===a.key&&(a.metaKey||a.ctrlKey)&&(a.preventDefault(),A())},[A,B]);return(0,d.jsxs)("div",{className:"group flex justify-end","data-touched":h?"true":void 0,onClickCapture:()=>i(!0),children:[(0,d.jsxs)("div",{className:"flex max-w-[85%] flex-col items-end",children:[j?(0,d.jsxs)("div",{className:"w-full max-w-2xl rounded-2xl border border-[hsl(var(--primary))] bg-[hsl(var(--background))] p-2",children:[(0,d.jsx)(u.Textarea,{autoFocus:!0,value:l,onChange:a=>m(a.target.value),onKeyDown:C,className:"min-h-[80px] resize-y border-0 p-2 text-sm shadow-none focus-visible:ring-0"}),(0,d.jsxs)("div",{className:"mt-1 flex justify-end gap-2",children:[(0,d.jsx)(r.Button,{type:"button",variant:"ghost",size:"sm",onClick:B,children:"取消"}),(0,d.jsx)(r.Button,{type:"button",size:"sm",disabled:!l.trim()||l.trim()===a.content,onClick:A,children:"保存并重发"})]})]}):(0,d.jsx)("div",{className:"rounded-2xl rounded-tr-sm bg-[hsl(var(--muted)/0.7)] px-4 py-2.5 text-sm leading-relaxed text-foreground whitespace-pre-wrap",children:a.content}),!j&&(0,d.jsx)(z,{align:"right",disabled:b,onCopy:y,onEdit:()=>{m(a.content),k(!0)},onResend:()=>t(!0),onDelete:()=>o(!0)})]}),(0,d.jsx)(v.ConfirmDialog,{open:n,onOpenChange:o,title:"删除此消息?",description:"该操作不可撤销。",confirmText:"删除",variant:"danger",onConfirm:()=>{c(a.id,{withNextAssistant:w}),o(!1)},children:(0,d.jsxs)("label",{className:"flex items-center gap-2 text-sm text-foreground",children:[(0,d.jsx)(s.Checkbox,{checked:w,onCheckedChange:a=>x(!0===a)}),"同时删除下方的 AI 回复"]})}),(0,d.jsx)(v.ConfirmDialog,{open:p,onOpenChange:t,title:"重新发送此消息?",description:"将丢弃下方所有消息并重新生成回答。",confirmText:"重新发送",onConfirm:()=>{t(!1),f(a.id)}})]})}function E({message:a,busy:b,onDelete:c,onRegenerate:g}){let[h,i]=(0,e.useState)(!1),[j,k]=(0,e.useState)(!1),[l,m]=(0,e.useState)(!1),o="streaming"===a.status,p="error"===a.status,r=(a.reasoning?.length??0)>0,s=(a.content?.length??0)>0,t=r||o&&!s,u=!!a.usingRag&&!a.retrievalQuery,w=!!a.retrievalQuery&&!a.retrievedChunks,y=(a.retrievalGroups??[]).filter(a=>a.error).map(a=>({name:a.knowledgeBaseName,reason:a.error??""})),A=(0,e.useCallback)(()=>{navigator.clipboard.writeText(a.content),q.toast.success("已复制")},[a.content]);return(0,d.jsxs)("div",{className:"group space-y-3 text-sm leading-relaxed","data-touched":h?"true":void 0,onClickCapture:()=>i(!0),children:[t?(0,d.jsx)(F,{reasoning:a.reasoning??"",streaming:o,startedAt:a.reasoningStartedAt,completedAt:a.reasoningCompletedAt,intentExtracting:u,retrievalInFlight:w}):null,(0,d.jsx)(B,{rewriteFailed:a.queryRewriteFailed,rewriteError:a.queryRewriteError,failedKbCount:y.length,failedKbDetails:y}),a.retrievalQueryRewritten&&a.retrievalQuery?(0,d.jsxs)("div",{className:"inline-flex max-w-full items-center gap-1.5 rounded-md bg-[hsl(var(--muted)/0.4)] px-2 py-1 text-xs text-muted-foreground",children:[(0,d.jsx)(n.Search,{className:"h-3 w-3 shrink-0"}),(0,d.jsx)("span",{className:"font-medium shrink-0",children:"检索关键词:"}),(0,d.jsx)("span",{className:"truncate font-mono text-foreground/80",children:a.retrievalQuery})]}):null,a.retrievedChunks&&a.retrievedChunks.length>0?(0,d.jsx)(G,{chunks:a.retrievedChunks,groups:a.retrievalGroups}):null,p?(0,d.jsxs)("div",{className:"flex items-start gap-2 rounded-md border border-[hsl(var(--destructive))/0.3] bg-[hsl(var(--destructive))/0.05] px-3 py-2 text-[hsl(var(--destructive))]",children:[(0,d.jsx)(f.AlertCircle,{className:"mt-0.5 h-4 w-4 shrink-0"}),(0,d.jsx)("span",{className:"text-xs",children:a.errorMessage??"生成失败"})]}):(0,d.jsxs)("div",{className:"text-foreground/90",children:[(0,d.jsx)(x.Markdown,{children:a.content}),o?(0,d.jsx)("span",{className:"ml-0.5 inline-block h-3.5 w-1.5 animate-pulse bg-foreground align-baseline"}):null]}),(0,d.jsx)(z,{align:"left",disabled:b||o,onCopy:A,onRegenerate:()=>m(!0),onDelete:()=>k(!0)}),(0,d.jsx)(v.ConfirmDialog,{open:j,onOpenChange:k,title:"删除此回复?",description:"该操作不可撤销。",confirmText:"删除",variant:"danger",onConfirm:()=>{c(a.id),k(!1)}}),(0,d.jsx)(v.ConfirmDialog,{open:l,onOpenChange:m,title:"重新生成此回复?",description:"将丢弃下方所有消息并重新生成。",confirmText:"重新生成",onConfirm:()=>{m(!1),g(a.id)}})]})}function F({reasoning:a,streaming:b,startedAt:c,completedAt:f,intentExtracting:g,retrievalInFlight:h}){var k,l;let m,n,o,[p,q]=(0,e.useState)(!1),r=function(a,b){let[c,d]=(0,e.useState)(()=>Date.now());return((0,e.useEffect)(()=>{if(!a||b)return;let c=window.setInterval(()=>d(Date.now()),250);return()=>window.clearInterval(c)},[a,b]),a)?Math.max(0,(b??c)-a):null}(c,f),s=null!=r?(k=r,l=!b||!!f,m=Math.floor(k/1e3),n=Math.floor(m/60),o=m%60,l?0===n?`用时 ${o} 秒`:`用时 ${n} 分 ${o} 秒`:`${n}:${String(o).padStart(2,"0")}`):null,u=b&&!f,v=a.length>0,x="正在思考";return v?x="深度思考中":h?x="正在检索知识库":g&&(x="检索意图提取"),(0,d.jsxs)(t.Collapsible,{open:p,onOpenChange:q,children:[(0,d.jsx)(t.CollapsibleTrigger,{asChild:!0,children:(0,d.jsxs)("button",{type:"button",disabled:!v,className:(0,w.cn)("group inline-flex items-center gap-2 rounded-full pl-1.5 pr-2.5 py-1 text-xs font-medium transition-all duration-200",u?"bg-[hsl(var(--primary)/0.08)] text-[hsl(var(--primary))] ring-1 ring-[hsl(var(--primary)/0.25)] shadow-[0_0_0_4px_hsl(var(--primary)/0.06)]":"bg-[hsl(var(--muted)/0.6)] text-muted-foreground hover:bg-[hsl(var(--accent))] hover:text-foreground",!v&&"cursor-default"),"aria-live":u?"polite":"off",children:[(0,d.jsxs)("span",{className:"relative inline-flex h-5 w-5 items-center justify-center",children:[u&&(0,d.jsx)("span",{"aria-hidden":!0,className:"absolute inset-0 rounded-full bg-[hsl(var(--primary))] opacity-40 blur-[6px] animate-thinking-aurora"}),(0,d.jsx)(i.Brain,{className:(0,w.cn)("relative h-3.5 w-3.5",u&&"animate-thinking-icon text-[hsl(var(--primary))]")})]}),u?(0,d.jsx)("span",{className:"animate-text-shimmer bg-[linear-gradient(90deg,hsl(var(--primary)/0.55)_0%,hsl(var(--primary))_50%,hsl(var(--primary)/0.55)_100%)] bg-[length:200%_100%] bg-clip-text text-transparent",children:x}):(0,d.jsx)("span",{children:"已深度思考"}),s&&(0,d.jsxs)("span",{className:(0,w.cn)("tabular-nums text-[11px]",u?"text-[hsl(var(--primary)/0.75)]":"text-muted-foreground/80"),children:["· ",s]}),v&&(0,d.jsx)(j.ChevronDown,{className:(0,w.cn)("h-3 w-3 opacity-60 transition-transform duration-200",p&&"rotate-180",u&&"text-[hsl(var(--primary))]")})]})}),v&&(0,d.jsx)(t.CollapsibleContent,{children:(0,d.jsx)("div",{className:"mt-2 border-l-2 border-[hsl(var(--border))] pl-3 text-xs leading-relaxed text-muted-foreground whitespace-pre-wrap",children:a})})]})}function G({chunks:a,groups:b}){let[c,f]=(0,e.useState)(!1),g=new Map;a.forEach((a,b)=>{g.set(`${a.docId}#${a.chunkId}`,b+1)});let i=(b??[]).filter(a=>!a.error),k=(b??[]).filter(a=>a.error),l=i.length>=2||k.length>0;return(0,d.jsxs)(t.Collapsible,{open:c,onOpenChange:f,children:[(0,d.jsx)(t.CollapsibleTrigger,{asChild:!0,children:(0,d.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1.5 rounded-md px-2 py-1 text-xs text-muted-foreground transition-colors hover:bg-[hsl(var(--accent))] hover:text-foreground",children:[(0,d.jsx)(h.BookOpen,{className:"h-3.5 w-3.5"}),"查看 ",a.length," 个引用",l?(0,d.jsxs)("span",{className:"text-muted-foreground/70",children:["· ",i.length," 个知识库",k.length>0?`(${k.length} 失败)`:""]}):null,(0,d.jsx)(j.ChevronDown,{className:(0,w.cn)("h-3 w-3 transition-transform duration-200",c&&"rotate-180")})]})}),(0,d.jsx)(t.CollapsibleContent,{children:(0,d.jsx)("div",{className:"mt-2 space-y-3",children:l?(0,d.jsxs)(d.Fragment,{children:[i.map(a=>(0,d.jsx)(H,{group:a,indexByKey:g},`ok-${a.knowledgeBaseName}`)),k.map(a=>(0,d.jsxs)("div",{className:"rounded-md border border-[hsl(var(--destructive))/0.3] bg-[hsl(var(--destructive))/0.05] px-3 py-2 text-xs text-[hsl(var(--destructive))]",children:[(0,d.jsx)("span",{className:"font-medium",children:a.knowledgeBaseName}),(0,d.jsxs)("span",{className:"ml-2 text-[hsl(var(--destructive))/0.8]",children:["检索失败:",a.error]})]},`err-${a.knowledgeBaseName}`))]}):(0,d.jsx)("div",{className:"space-y-2",children:a.map((a,b)=>(0,d.jsx)(I,{chunk:a,index:b+1},`${a.docId}-${a.chunkId}`))})})})]})}function H({group:a,indexByKey:b}){return(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 text-xs font-medium text-muted-foreground",children:[(0,d.jsx)("span",{className:"text-foreground/80",children:a.knowledgeBaseName}),(0,d.jsxs)("span",{children:["· ",a.chunks.length," 条"]})]}),(0,d.jsx)("div",{className:"space-y-2 border-l-2 border-[hsl(var(--border))] pl-3",children:a.chunks.map(a=>{let c=`${a.docId}#${a.chunkId}`,e=b.get(c)??0;return(0,d.jsx)(I,{chunk:a,index:e},`${a.docId}-${a.chunkId}`)})})]})}function I({chunk:a,index:b}){let c=a.ossKey?.split("/").pop()||a.ossKey||"未知文件";return(0,d.jsxs)("div",{className:"rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--muted)/0.3)] p-3",children:[(0,d.jsxs)("div",{className:"mb-1.5 flex items-center gap-2 text-xs text-muted-foreground",children:[(0,d.jsx)("span",{className:"inline-flex h-5 w-5 items-center justify-center rounded-full bg-[hsl(var(--primary-50))] font-semibold text-primary",children:b>0?b:"–"}),(0,d.jsx)("span",{className:"font-medium text-foreground/80",children:c}),(0,d.jsxs)("span",{children:["Chunk #",a.chunkId]}),(0,d.jsx)("span",{className:"ml-auto font-mono",children:a.score.toFixed(4)})]}),(0,d.jsx)("p",{className:"line-clamp-4 whitespace-pre-wrap text-xs text-foreground/80",children:a.content})]})}J.displayName="QaMessage",a.s(["QaMessage",0,J]),c()}catch(a){c(a)}},!1),57900,a=>a.a(async(b,c)=>{try{var d=a.i(34020),e=a.i(71938),f=a.i(88189),g=a.i(98018),h=a.i(31710),i=a.i(76192),j=a.i(70535),k=a.i(10215),l=a.i(64565),m=a.i(73570),n=b([m]);[m]=n.then?(await n)():n,a.s(["QaChatPanel",0,function({messages:a,isStreaming:b,canSend:c,error:n,onSend:o,onStop:p,onDelete:q,onResend:r,onRegenerate:s,onEditSave:t,emptyState:u,disabledPlaceholder:v}){let[w,x]=(0,e.useState)(""),y=(0,e.useRef)(null),z=(0,e.useRef)(a.length);(0,e.useEffect)(()=>{let b=y.current;if(!b)return;let c=a.length>z.current;(z.current=a.length,c)?requestAnimationFrame(()=>{b.scrollTo({top:b.scrollHeight,behavior:"smooth"})}):b.scrollHeight-b.scrollTop-b.clientHeight<120&&b.scrollTo({top:b.scrollHeight,behavior:"smooth"})},[a]);let A=()=>{let a=w.trim();a&&c&&!b&&(o(a),x(""))};return(0,d.jsxs)("div",{className:"flex h-full flex-col rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--surface))]",children:[(0,d.jsx)("div",{ref:y,role:"log","aria-live":"polite","aria-relevant":"additions text","aria-busy":b,className:"flex-1 space-y-6 overflow-y-auto px-6 py-5",children:0===a.length?(0,d.jsx)("div",{className:"flex h-full min-h-[320px] items-center justify-center",children:(0,d.jsx)(k.EmptyState,{icon:f.MessageSquare,title:u?.title??"开始对话",description:u?.description??"输入问题,系统会先从知识库检索相关内容,再让大模型基于检索结果回答",action:u?.actionLabel&&u?.onAction?(0,d.jsx)(i.Button,{type:"button",onClick:u.onAction,children:u.actionLabel}):void 0})}):a.map(a=>(0,d.jsx)(m.QaMessage,{message:a,busy:b,onDelete:q,onResend:r,onRegenerate:s,onEditSave:t},a.id))}),(0,d.jsxs)("div",{className:"border-t border-[hsl(var(--border))] bg-[hsl(var(--surface)/0.6)] px-4 py-3",children:[n&&(0,d.jsx)("p",{className:"mb-2 text-xs text-[hsl(var(--destructive))]",children:n}),(0,d.jsxs)("div",{className:"flex items-end gap-2",children:[(0,d.jsx)(j.Textarea,{value:w,onChange:a=>x(a.target.value),onKeyDown:a=>{"Enter"!==a.key||a.shiftKey||a.nativeEvent.isComposing||(a.preventDefault(),A())},placeholder:c?"输入问题,Enter 发送,Shift+Enter 换行":v??"请先在左侧选择模型...",disabled:!c,className:(0,l.cn)("min-h-[44px] max-h-40 resize-none text-sm"),rows:1}),b?(0,d.jsx)(i.Button,{type:"button",variant:"outline",size:"icon",onClick:p,title:"停止",children:(0,d.jsx)(h.Square,{className:"h-4 w-4 fill-current"})}):(0,d.jsx)(i.Button,{type:"button",size:"icon",disabled:!c||!w.trim(),onClick:A,title:"发送",children:(0,d.jsx)(g.Send,{className:"h-4 w-4"})})]})]})]})}]),c()}catch(a){c(a)}},!1),64363,32191,87951,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(81619),e=a.i(68826),f=a.i(76192),g=a.i(72518),h=a.i(62491),i=a.i(63525),j=a.i(37255),k=a.i(83366),l=a.i(83917),m=a.i(25377),n=a.i(39096);a.s(["LLMModelSelector",0,function({providerId:a,model:o,onProviderChange:p,onModelChange:q,allowFreeText:r=!1,autoSelectFirst:s=!1,providerLabel:t="Provider",modelLabel:u="Model"}){let{data:v=[],isLoading:w}=(0,j.useLLMProviders)(),{data:x,isFetching:y,refetch:z}=function(a,b={}){let{context:c,ready:d}=(0,n.useRuntimeContext)();return(0,k.useQuery)({queryKey:m.queryKeys.llmProviderModels(c.dataScopeKey,a),queryFn:()=>(0,l.fetchProviderModels)(a),enabled:d&&!!a&&(b.enabled??!0),staleTime:3e5,retry:!1})}(a||void 0,{enabled:!!a});(0,c.useEffect)(()=>{if(!s||a||0===v.length)return;let b=v[0];p(b.id,b.defaultModel??"")},[s,a,v]);let A=(0,c.useMemo)(()=>{let b=new Set;for(let a of(o&&b.add(o),x??[]))b.add(a.id);let c=v.find(b=>b.id===a);return c?.defaultModel&&b.add(c.defaultModel),Array.from(b)},[o,x,v,a]);return(0,b.jsxs)("div",{className:"space-y-4",children:[(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)(h.Label,{className:"text-sm font-medium",children:t}),(0,b.jsxs)(i.Select,{value:a,onValueChange:a=>{let b=v.find(b=>b.id===a);p(a,b?.defaultModel??"")},disabled:w||0===v.length,children:[(0,b.jsx)(i.SelectTrigger,{children:(0,b.jsx)(i.SelectValue,{placeholder:w?"加载中...":0===v.length?"请先在「大模型」中创建配置":"选择 Provider"})}),(0,b.jsx)(i.SelectContent,{children:v.map(a=>(0,b.jsx)(i.SelectItem,{value:a.id,children:a.name},a.id))})]})]}),(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsx)(h.Label,{className:"text-sm font-medium",children:u}),(0,b.jsxs)(f.Button,{type:"button",variant:"ghost",size:"sm",className:"h-6 px-2 text-xs",disabled:!a||y,onClick:()=>z(),children:[y?(0,b.jsx)(d.Loader2,{className:"mr-1 h-3 w-3 animate-spin"}):(0,b.jsx)(e.RefreshCw,{className:"mr-1 h-3 w-3"}),"刷新列表"]})]}),r?(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsxs)(i.Select,{value:A.includes(o)?o:"",onValueChange:q,disabled:!a,children:[(0,b.jsx)(i.SelectTrigger,{className:"flex-1",children:(0,b.jsx)(i.SelectValue,{placeholder:"选择或输入模型名"})}),(0,b.jsx)(i.SelectContent,{children:0===A.length?(0,b.jsx)("div",{className:"px-3 py-2 text-xs text-muted-foreground",children:"点击「刷新列表」拉取可用模型"}):A.map(a=>(0,b.jsx)(i.SelectItem,{value:a,children:a},a))})]}),(0,b.jsx)(g.Input,{placeholder:"或手动输入",value:o,onChange:a=>q(a.target.value),className:"flex-1"})]}):(0,b.jsxs)(i.Select,{value:o,onValueChange:q,disabled:!a,children:[(0,b.jsx)(i.SelectTrigger,{children:(0,b.jsx)(i.SelectValue,{placeholder:"选择模型"})}),(0,b.jsx)(i.SelectContent,{children:0===A.length?(0,b.jsx)(i.SelectItem,{value:"__empty",disabled:!0,children:"无可用模型"}):A.map(a=>(0,b.jsx)(i.SelectItem,{value:a,children:a},a))})]})]})]})}],64363);var o=a.i(70535);a.s(["SystemPromptInput",0,function({value:a,onChange:c,placeholder:d,helperText:e,rows:f=3,label:g="系统提示词"}){return(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)(h.Label,{className:"text-sm font-medium",children:g}),(0,b.jsx)(o.Textarea,{rows:f,value:a,onChange:a=>c(a.target.value),placeholder:d,className:"text-sm"}),e&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:e})]})}],32191);var p=a.i(48972),q=a.i(59653),r=a.i(68189),s=a.i(84694),t=a.i(83370),u=a.i(74974),v=a.i(20251),w=a.i(66394),x=a.i(58036),y=a.i(17021),z=["PageUp","PageDown"],A=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],B={"from-left":["Home","PageDown","ArrowDown","ArrowLeft"],"from-right":["Home","PageDown","ArrowDown","ArrowRight"],"from-bottom":["Home","PageDown","ArrowDown","ArrowLeft"],"from-top":["Home","PageDown","ArrowUp","ArrowLeft"]},C="Slider",[D,E,F]=(0,y.createCollection)(C),[G,H]=(0,s.createContextScope)(C,[F]),[I,J]=G(C),K=c.forwardRef((a,d)=>{let{name:e,min:f=0,max:g=100,step:h=1,orientation:i="horizontal",disabled:j=!1,minStepsBetweenThumbs:k=0,defaultValue:l=[f],value:m,onValueChange:n=()=>{},onValueCommit:o=()=>{},inverted:r=!1,form:s,...u}=a,v=c.useRef(new Set),w=c.useRef(0),x="horizontal"===i,[y=[],B]=(0,t.useControllableState)({prop:m,defaultProp:l,onChange:a=>{let b=[...v.current];b[w.current]?.focus(),n(a)}}),C=c.useRef(y);function E(a,b,{commit:c}={commit:!1}){let d,e=(String(h).split(".")[1]||"").length,i=Math.round((Math.round((a-f)/h)*h+f)*(d=Math.pow(10,e)))/d,j=(0,p.clamp)(i,[f,g]);B((a=[])=>{let d=function(a=[],b,c){let d=[...a];return d[c]=b,d.sort((a,b)=>a-b)}(a,j,b);if(!function(a,b){if(b>0)return Math.min(...a.slice(0,-1).map((b,c)=>a[c+1]-b))>=b;return!0}(d,k*h))return a;{w.current=d.indexOf(j);let b=String(d)!==String(a);return b&&c&&o(d),b?d:a}})}return(0,b.jsx)(I,{scope:a.__scopeSlider,name:e,disabled:j,min:f,max:g,valueIndexToChangeRef:w,thumbs:v.current,values:y,orientation:i,form:s,children:(0,b.jsx)(D.Provider,{scope:a.__scopeSlider,children:(0,b.jsx)(D.Slot,{scope:a.__scopeSlider,children:(0,b.jsx)(x?N:O,{"aria-disabled":j,"data-disabled":j?"":void 0,...u,ref:d,onPointerDown:(0,q.composeEventHandlers)(u.onPointerDown,()=>{j||(C.current=y)}),min:f,max:g,inverted:r,onSlideStart:j?void 0:function(a){let b=function(a,b){if(1===a.length)return 0;let c=a.map(a=>Math.abs(a-b)),d=Math.min(...c);return c.indexOf(d)}(y,a);E(a,b)},onSlideMove:j?void 0:function(a){E(a,w.current)},onSlideEnd:j?void 0:function(){let a=C.current[w.current];y[w.current]!==a&&o(y)},onHomeKeyDown:()=>!j&&E(f,0,{commit:!0}),onEndKeyDown:()=>!j&&E(g,y.length-1,{commit:!0}),onStepKeyDown:({event:a,direction:b})=>{if(!j){let c=z.includes(a.key)||a.shiftKey&&A.includes(a.key),d=w.current;E(y[d]+h*(c?10:1)*b,d,{commit:!0})}}})})})})});K.displayName=C;var[L,M]=G(C,{startEdge:"left",endEdge:"right",size:"width",direction:1}),N=c.forwardRef((a,d)=>{let{min:e,max:f,dir:g,inverted:h,onSlideStart:i,onSlideMove:j,onSlideEnd:k,onStepKeyDown:l,...m}=a,[n,o]=c.useState(null),p=(0,r.useComposedRefs)(d,a=>o(a)),q=c.useRef(void 0),s=(0,u.useDirection)(g),t="ltr"===s,v=t&&!h||!t&&h;function w(a){let b=q.current||n.getBoundingClientRect(),c=Z([0,b.width],v?[e,f]:[f,e]);return q.current=b,c(a-b.left)}return(0,b.jsx)(L,{scope:a.__scopeSlider,startEdge:v?"left":"right",endEdge:v?"right":"left",direction:v?1:-1,size:"width",children:(0,b.jsx)(P,{dir:s,"data-orientation":"horizontal",...m,ref:p,style:{...m.style,"--radix-slider-thumb-transform":"translateX(-50%)"},onSlideStart:a=>{let b=w(a.clientX);i?.(b)},onSlideMove:a=>{let b=w(a.clientX);j?.(b)},onSlideEnd:()=>{q.current=void 0,k?.()},onStepKeyDown:a=>{let b=B[v?"from-left":"from-right"].includes(a.key);l?.({event:a,direction:b?-1:1})}})})}),O=c.forwardRef((a,d)=>{let{min:e,max:f,inverted:g,onSlideStart:h,onSlideMove:i,onSlideEnd:j,onStepKeyDown:k,...l}=a,m=c.useRef(null),n=(0,r.useComposedRefs)(d,m),o=c.useRef(void 0),p=!g;function q(a){let b=o.current||m.current.getBoundingClientRect(),c=Z([0,b.height],p?[f,e]:[e,f]);return o.current=b,c(a-b.top)}return(0,b.jsx)(L,{scope:a.__scopeSlider,startEdge:p?"bottom":"top",endEdge:p?"top":"bottom",size:"height",direction:p?1:-1,children:(0,b.jsx)(P,{"data-orientation":"vertical",...l,ref:n,style:{...l.style,"--radix-slider-thumb-transform":"translateY(50%)"},onSlideStart:a=>{let b=q(a.clientY);h?.(b)},onSlideMove:a=>{let b=q(a.clientY);i?.(b)},onSlideEnd:()=>{o.current=void 0,j?.()},onStepKeyDown:a=>{let b=B[p?"from-bottom":"from-top"].includes(a.key);k?.({event:a,direction:b?-1:1})}})})}),P=c.forwardRef((a,c)=>{let{__scopeSlider:d,onSlideStart:e,onSlideMove:f,onSlideEnd:g,onHomeKeyDown:h,onEndKeyDown:i,onStepKeyDown:j,...k}=a,l=J(C,d);return(0,b.jsx)(x.Primitive.span,{...k,ref:c,onKeyDown:(0,q.composeEventHandlers)(a.onKeyDown,a=>{"Home"===a.key?(h(a),a.preventDefault()):"End"===a.key?(i(a),a.preventDefault()):z.concat(A).includes(a.key)&&(j(a),a.preventDefault())}),onPointerDown:(0,q.composeEventHandlers)(a.onPointerDown,a=>{let b=a.target;b.setPointerCapture(a.pointerId),a.preventDefault(),l.thumbs.has(b)?b.focus():e(a)}),onPointerMove:(0,q.composeEventHandlers)(a.onPointerMove,a=>{a.target.hasPointerCapture(a.pointerId)&&f(a)}),onPointerUp:(0,q.composeEventHandlers)(a.onPointerUp,a=>{let b=a.target;b.hasPointerCapture(a.pointerId)&&(b.releasePointerCapture(a.pointerId),g(a))})})}),Q="SliderTrack",R=c.forwardRef((a,c)=>{let{__scopeSlider:d,...e}=a,f=J(Q,d);return(0,b.jsx)(x.Primitive.span,{"data-disabled":f.disabled?"":void 0,"data-orientation":f.orientation,...e,ref:c})});R.displayName=Q;var S="SliderRange",T=c.forwardRef((a,d)=>{let{__scopeSlider:e,...f}=a,g=J(S,e),h=M(S,e),i=c.useRef(null),j=(0,r.useComposedRefs)(d,i),k=g.values.length,l=g.values.map(a=>Y(a,g.min,g.max)),m=k>1?Math.min(...l):0,n=100-Math.max(...l);return(0,b.jsx)(x.Primitive.span,{"data-orientation":g.orientation,"data-disabled":g.disabled?"":void 0,...f,ref:j,style:{...a.style,[h.startEdge]:m+"%",[h.endEdge]:n+"%"}})});T.displayName=S;var U="SliderThumb",V=c.forwardRef((a,d)=>{let e=E(a.__scopeSlider),[f,g]=c.useState(null),h=(0,r.useComposedRefs)(d,a=>g(a)),i=c.useMemo(()=>f?e().findIndex(a=>a.ref.current===f):-1,[e,f]);return(0,b.jsx)(W,{...a,ref:h,index:i})}),W=c.forwardRef((a,d)=>{var e,f,g,h,i;let j,k,{__scopeSlider:l,index:m,name:n,...o}=a,p=J(U,l),s=M(U,l),[t,u]=c.useState(null),v=(0,r.useComposedRefs)(d,a=>u(a)),y=!t||p.form||!!t.closest("form"),z=(0,w.useSize)(t),A=p.values[m],B=void 0===A?0:Y(A,p.min,p.max),C=(e=m,(f=p.values.length)>2?`Value ${e+1} of ${f}`:2===f?["Minimum","Maximum"][e]:void 0),E=z?.[s.size],F=E?(g=E,h=B,i=s.direction,k=Z([0,50],[0,j=g/2]),(j-k(h)*i)*i):0;return c.useEffect(()=>{if(t)return p.thumbs.add(t),()=>{p.thumbs.delete(t)}},[t,p.thumbs]),(0,b.jsxs)("span",{style:{transform:"var(--radix-slider-thumb-transform)",position:"absolute",[s.startEdge]:`calc(${B}% + ${F}px)`},children:[(0,b.jsx)(D.ItemSlot,{scope:a.__scopeSlider,children:(0,b.jsx)(x.Primitive.span,{role:"slider","aria-label":a["aria-label"]||C,"aria-valuemin":p.min,"aria-valuenow":A,"aria-valuemax":p.max,"aria-orientation":p.orientation,"data-orientation":p.orientation,"data-disabled":p.disabled?"":void 0,tabIndex:p.disabled?void 0:0,...o,ref:v,style:void 0===A?{display:"none"}:a.style,onFocus:(0,q.composeEventHandlers)(a.onFocus,()=>{p.valueIndexToChangeRef.current=m})})}),y&&(0,b.jsx)(X,{name:n??(p.name?p.name+(p.values.length>1?"[]":""):void 0),form:p.form,value:A},m)]})});V.displayName=U;var X=c.forwardRef(({__scopeSlider:a,value:d,...e},f)=>{let g=c.useRef(null),h=(0,r.useComposedRefs)(g,f),i=(0,v.usePrevious)(d);return c.useEffect(()=>{let a=g.current;if(!a)return;let b=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"value").set;if(i!==d&&b){let c=new Event("input",{bubbles:!0});b.call(a,d),a.dispatchEvent(c)}},[i,d]),(0,b.jsx)(x.Primitive.input,{style:{display:"none"},...e,ref:h,defaultValue:d})});function Y(a,b,c){return(0,p.clamp)(100/(c-b)*(a-b),[0,100])}function Z(a,b){return c=>{if(a[0]===a[1]||b[0]===b[1])return b[0];let d=(b[1]-b[0])/(a[1]-a[0]);return b[0]+d*(c-a[0])}}X.displayName="RadioBubbleInput";var $=a.i(64565);let _=c.forwardRef(({className:a,...c},d)=>(0,b.jsxs)(K,{ref:d,className:(0,$.cn)("relative flex w-full touch-none select-none items-center",a),...c,children:[(0,b.jsx)(R,{className:"relative h-1.5 w-full grow overflow-hidden rounded-full bg-[hsl(var(--muted))]",children:(0,b.jsx)(T,{className:"absolute h-full bg-[hsl(var(--primary))]"})}),(0,b.jsx)(V,{className:"block h-4 w-4 rounded-full border border-[hsl(var(--primary))] bg-[hsl(var(--background))] shadow-sm ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50"})]}));_.displayName=K.displayName,a.s(["TemperatureSlider",0,function({value:a,onChange:c,min:d=0,max:e=2,step:f=.05,fallback:g=.7,label:h="温度"}){let i=(a??g).toFixed(2);return(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between text-sm",children:[(0,b.jsx)("span",{className:"font-medium",children:h}),(0,b.jsx)("span",{className:"font-mono text-xs text-muted-foreground",children:i})]}),(0,b.jsx)(_,{value:[a??g],min:d,max:e,step:f,onValueChange:a=>c(a[0]??g)})]})}],87951)},83643,a=>{"use strict";a.s(["newId",0,function(a="id"){return"u">typeof crypto&&"randomUUID"in crypto?crypto.randomUUID():`${a}_${Date.now()}_${Math.random().toString(36).slice(2)}`}])},76446,a=>{"use strict";a.s(["findUserAnchorAbove",0,function(a,b){let c=a.findIndex(a=>a.id===b);if(c<0)return null;for(let b=c-1;b>=0;b-=1)if("user"===a[b].role)return a[b];return null},"removeAt",0,function(a,b){let c=a.findIndex(a=>a.id===b);if(c<0)return a;let d=a.slice();return d.splice(c,1),d},"removePair",0,function(a,b){let c=a.findIndex(a=>a.id===b);if(c<0)return a;let d=a.slice(),e=a[c+1]&&"assistant"===a[c+1].role?2:1;return d.splice(c,e),d},"truncateUpToAndIncluding",0,function(a,b){let c=a.findIndex(a=>a.id===b);return c<0?a:a.slice(0,c+1)}])},9135,a=>{"use strict";var b=a.i(71938);async function*c(a,b){let c=await fetch("/api/v1/llm/chat",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a),signal:b});if(!c.ok||!c.body){let a=`Chat request failed with status ${c.status}`,b="STREAM_ERROR";try{let d=await c.json();a=d.message??a,b=d.code??b}catch{}yield{type:"error",code:b,message:a};return}let e=c.body.getReader(),f=new TextDecoder("utf-8"),g="";for(;;){let{value:a,done:b}=await e.read();if(b)break;let c=(g+=f.decode(a,{stream:!0})).indexOf("\n\n");for(;-1!==c;){let a=g.slice(0,c);g=g.slice(c+2);let b=d(a);b&&(yield b),c=g.indexOf("\n\n")}}if(g.trim()){let a=d(g);a&&(yield a)}}function d(a){let b=a.split("\n"),c=[];for(let a of b)!(!a||a.startsWith(":"))&&a.startsWith("data:")&&c.push(a.slice(5).trimStart());if(0===c.length)return null;try{return JSON.parse(c.join("\n"))}catch{return null}}var e=a.i(83643),f=a.i(76446);a.s(["useQaChat",0,function(a){let[d,g]=(0,b.useState)([]),[h,i]=(0,b.useState)(!1),[j,k]=(0,b.useState)(null),l=(0,b.useRef)(null),m=(0,b.useRef)(a.onPersist);m.current=a.onPersist;let n=(0,b.useRef)(d);n.current=d;let o=(0,b.useRef)(a);o.current=a;let p=(0,b.useRef)(h);p.current=h;let q=(0,b.useRef)(new Map),r=(0,b.useRef)(null),s=(0,b.useCallback)(()=>{r.current=null;let a=q.current;if(0===a.size)return;let b=new Map(a);a.clear(),g(a=>a.map(a=>{let c=b.get(a.id);return c?{...a,...c.content?{content:a.content+c.content}:null,...c.reasoning?{reasoning:(a.reasoning??"")+c.reasoning}:null}:a}))},[]),t=(0,b.useCallback)(()=>{if(null===r.current){if("u"<typeof requestAnimationFrame)return void s();r.current=requestAnimationFrame(s)}},[s]),u=(0,b.useCallback)(()=>{null!==r.current&&"u">typeof cancelAnimationFrame&&cancelAnimationFrame(r.current),r.current=null},[]);(0,b.useEffect)(()=>u,[u]);let v=(0,b.useCallback)(()=>{l.current?.abort()},[]),w=(0,b.useCallback)(()=>{l.current?.abort(),n.current=[],g([]),k(null)},[]),x=(0,b.useCallback)(a=>{l.current?.abort(),n.current=a,g(a),k(null)},[]),y=(0,b.useCallback)(async(a,b)=>{let d=o.current,e=new AbortController;l.current=e;let f={current:!1},h={current:!1},j=b=>{g(c=>c.map(c=>c.id===a?{...c,...b}:c))};try{let g={activeInstance:d.activeInstance,providerId:d.providerId,model:d.model,messages:b,systemPrompt:d.systemPrompt,temperature:d.temperature,rag:d.rag};for await(let b of c(g,e.signal))if("query.rewritten"===b.type)j({retrievalQuery:b.query,retrievalQueryRewritten:b.query!==b.original});else if("query.fallback"===b.type)j({retrievalQuery:b.original,retrievalQueryRewritten:!1,queryRewriteFailed:!0,queryRewriteError:b.reason});else if("retrieval.done"===b.type)j({retrievedChunks:b.chunks,retrievalGroups:b.byKnowledgeBase});else if("reasoning.delta"===b.type){let c=q.current.get(a)??{};c.reasoning=(c.reasoning??"")+b.delta,q.current.set(a,c),f.current||(f.current=!0,j({reasoningStartedAt:Date.now()})),t()}else if("content.delta"===b.type){let c=q.current.get(a)??{};c.content=(c.content??"")+b.delta,q.current.set(a,c),f.current&&!h.current&&(h.current=!0,j({reasoningCompletedAt:Date.now()})),t()}else if("error"===b.type){u(),s();let a={status:"error",errorMessage:`${b.code}: ${b.message}`};f.current&&!h.current&&(a.reasoningCompletedAt=Date.now()),j(a),k(b.message);break}else if("done"===b.type){u(),s();let a={status:"done"};f.current&&!h.current&&(a.reasoningCompletedAt=Date.now()),j(a);break}}catch(c){u(),s();let a=c instanceof DOMException&&"AbortError"===c.name,b=f.current&&!h.current?{reasoningCompletedAt:Date.now()}:void 0;if(a)j({status:"done",...b});else{let a=c instanceof Error?c.message:String(c);j({status:"error",errorMessage:a,...b}),k(a)}}finally{i(!1),l.current=null;let a=m.current;a&&g(b=>(a(b),b))}},[t,s,u]),z=(0,b.useCallback)(async a=>{let b=a.trim();if(!b||p.current)return;let c=o.current;if(!c.providerId||!c.model)return void k("请先选择模型与 Provider");k(null);let d={id:(0,e.newId)(),role:"user",content:b,createdAt:Date.now(),status:"done"},f=(0,e.newId)(),h=(c.rag?.knowledgeBases?.length??0)>0,j={id:f,role:"assistant",content:"",reasoning:"",createdAt:Date.now(),status:"streaming",usingRag:h},l=[...n.current,d].map(a=>({role:a.role,content:a.content})),m=[...n.current,d,j];n.current=m,g(m),i(!0),await y(f,l)},[y]),A=(0,b.useCallback)(async a=>{if(p.current)return;let b=o.current;if(!b.providerId||!b.model)return void k("请先选择模型与 Provider");let c=(0,f.truncateUpToAndIncluding)(n.current,a),d=c[c.length-1];if(!d||"user"!==d.role)return;k(null);let h=(0,e.newId)(),j=(b.rag?.knowledgeBases?.length??0)>0,l={id:h,role:"assistant",content:"",reasoning:"",createdAt:Date.now(),status:"streaming",usingRag:j},m=c.map(a=>({role:a.role,content:a.content})),q=[...c,l];n.current=q,g(q),i(!0),await y(h,m)},[y]);return{messages:d,isStreaming:h,error:j,send:z,reissueTurn:A,deleteMessage:(0,b.useCallback)((a,b)=>{if(p.current)return;let c=n.current,d=c.find(b=>b.id===a);if(!d)return;let e="user"===d.role&&b?.withNextAssistant?(0,f.removePair)(c,a):(0,f.removeAt)(c,a);n.current=e,g(e),m.current?.(e)},[]),editUserMessage:(0,b.useCallback)((a,b)=>{let c=n.current,d=c.findIndex(b=>b.id===a);if(d<0||"user"!==c[d].role)return null;let e=c.slice();return e[d]={...c[d],content:b},n.current=e,g(e),a},[]),stop:v,clear:w,setMessages:x}}],9135)},82424,a=>{"use strict";var b=a.i(39096);a.s(["useActiveInstance",0,function(){let{context:a,ready:c}=(0,b.useRuntimeContext)();return{activeInstance:a.activeInstance,ready:c,dataScopeKey:a.dataScopeKey,configRevision:a.configRevision}}])}];
|
|
1
|
+
module.exports=[98018,a=>{"use strict";let b=(0,a.i(50053).default)("send",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]]);a.s(["Send",0,b],98018)},31710,a=>{"use strict";let b=(0,a.i(50053).default)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);a.s(["Square",0,b],31710)},31687,a=>{"use strict";let b=(0,a.i(50053).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);a.s(["AlertCircle",0,b],31687)},42210,a=>{"use strict";let b=(0,a.i(50053).default)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);a.s(["BookOpen",0,b],42210)},42216,a=>a.a(async(b,c)=>{try{let b=await a.y("shiki-2963fa3a20578463");a.n(b),c()}catch(a){c(a)}},!0),23195,a=>a.a(async(b,c)=>{try{let b=await a.y("shiki-2963fa3a20578463/engine/javascript");a.n(b),c()}catch(a){c(a)}},!0),28778,a=>a.a(async(b,c)=>{try{var d=a.i(42216),e=a.i(23195),f=b([d,e]);[d,e]=f.then?(await f)():f;var g=(0,e.createJavaScriptRegexEngine)({forgiving:!0}),h=Object.fromEntries(d.bundledLanguagesInfo.flatMap(a=>{var b;return(null!=(b=a.aliases)?b:[]).map(b=>[b,a.id])})),i=new Set(Object.keys(d.bundledLanguages)),j=a=>{let b=a.trim().toLowerCase();return h[b]||(i.has(b),b)},k=new Map,l=new Map,m=new Map,n=a=>{var b;return"string"==typeof a?a:null!=(b=a.name)?b:"custom"},o=function(a={}){var b;let c=null!=(b=a.themes)?b:["github-light","github-dark"];return{name:"shiki",type:"code-highlighter",supportsLanguage(a){let b=j(a);return i.has(b)},getSupportedLanguages:()=>Array.from(i),getThemes:()=>c,highlight({code:a,language:b,themes:c},e){let f,h,o=j(b),p=[n(c[0]),n(c[1])],q=(f=a.slice(0,100),h=a.length>100?a.slice(-100):"",`${o}:${p[0]}:${p[1]}:${a.length}:${f}:${h}`);if(l.has(q))return l.get(q);e&&(m.has(q)||m.set(q,new Set),m.get(q).add(e));let r=i.has(o)?o:"text";return((a,b)=>{let c=`${a}-${n(b[0])}-${n(b[1])}`;if(k.has(c))return k.get(c);let e=(0,d.createHighlighter)({themes:b,langs:[a],engine:g});return k.set(c,e),e})(r,c).then(b=>{let c=b.getLoadedLanguages().includes(o)?o:"text",d=b.codeToTokens(a,{lang:c,themes:{light:p[0],dark:p[1]}});l.set(q,d);let e=m.get(q);if(e){for(let a of e)a(d);m.delete(q)}}).catch(a=>{console.error("[Streamdown Code] Failed to highlight code:",a),m.delete(q)}),null}}}();a.s(["code",0,o]),c()}catch(a){c(a)}},!1),26925,a=>{"use strict";a.i(2617),a.s([])},46400,a=>{"use strict";var b=a.i(2617);a.s(["Streamdown",()=>b.C])},93280,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(53520),e=a.i(16772),f=a.i(64565);a.s(["CodeBlock",0,function({className:a,children:g,node:h,...i}){let j=(0,c.useRef)(null),[k,l]=(0,c.useState)(!1),m=function(a){for(let b of c.Children.toArray(a)){if(!(0,c.isValidElement)(b))continue;let a=b.props;if("string"!=typeof a?.className)continue;let d=a.className.match(/language-([a-z0-9+#-]+)/i);if(d)return d[1]}}(g)??"",n=(0,c.useCallback)(async()=>{let a=j.current?.innerText??"";if(a)try{await navigator.clipboard.writeText(a),l(!0),window.setTimeout(()=>l(!1),2e3)}catch{}},[]);return(0,b.jsxs)("div",{className:"group relative my-2 overflow-hidden rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--muted)/0.5)]",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between border-b border-[hsl(var(--border))] bg-[hsl(var(--muted)/0.8)] px-3 py-1.5",children:[(0,b.jsx)("span",{className:"font-mono text-[11px] uppercase tracking-wide text-muted-foreground",children:m||"text"}),(0,b.jsx)("button",{type:"button",onClick:n,className:(0,f.cn)("inline-flex items-center gap-1 rounded px-2 py-0.5 text-[11px] text-muted-foreground","opacity-0 transition-opacity hover:bg-[hsl(var(--accent))] hover:text-foreground","group-hover:opacity-100 focus-visible:opacity-100",k&&"opacity-100 text-primary"),"aria-label":"复制代码",children:k?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(d.Check,{className:"h-3 w-3"}),"已复制"]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(e.Copy,{className:"h-3 w-3"}),"复制"]})})]}),(0,b.jsx)("pre",{ref:j,className:(0,f.cn)("overflow-x-auto p-3 text-xs leading-relaxed","[&_code]:bg-transparent [&_code]:p-0",a),...i,children:g})]})}])},13562,a=>a.a(async(b,c)=>{try{var d=a.i(34020),e=a.i(28778);a.i(26925);var f=a.i(46400),g=a.i(64565),h=a.i(93280),i=b([e]);[e]=i.then?(await i)():i;let j=["https://","http://","mailto:","#","/"],k=["https://","data:image/"],l=(a,b)=>{let c=a.toLowerCase();return("src"===b?k:j).some(a=>c.startsWith(a))?a:""};a.s(["Markdown",0,function({children:a,className:b}){return(0,d.jsx)("div",{className:(0,g.cn)("text-sm leading-relaxed text-foreground/90","[&_p]:my-2 [&_ul]:my-2 [&_ol]:my-2 [&_li]:my-0.5","[&_ul]:list-disc [&_ul]:pl-5 [&_ol]:list-decimal [&_ol]:pl-5","[&_h1]:mt-4 [&_h1]:mb-2 [&_h1]:text-lg [&_h1]:font-semibold","[&_h2]:mt-3 [&_h2]:mb-2 [&_h2]:text-base [&_h2]:font-semibold","[&_h3]:mt-3 [&_h3]:mb-1.5 [&_h3]:text-sm [&_h3]:font-semibold","[&_a]:text-primary [&_a]:underline [&_a]:underline-offset-2","[&_:not(pre)>code]:rounded [&_:not(pre)>code]:bg-[hsl(var(--muted))] [&_:not(pre)>code]:px-1 [&_:not(pre)>code]:py-0.5 [&_:not(pre)>code]:text-[0.85em]","[&_table]:my-2 [&_table]:w-full [&_table]:border-collapse","[&_th]:border [&_th]:border-[hsl(var(--border))] [&_th]:px-2 [&_th]:py-1 [&_th]:text-left [&_th]:font-semibold","[&_td]:border [&_td]:border-[hsl(var(--border))] [&_td]:px-2 [&_td]:py-1","[&_blockquote]:my-2 [&_blockquote]:border-l-2 [&_blockquote]:border-[hsl(var(--border))] [&_blockquote]:pl-3 [&_blockquote]:text-muted-foreground","[&_hr]:my-3 [&_hr]:border-[hsl(var(--border))]",b),children:(0,d.jsx)(f.Streamdown,{parseIncompleteMarkdown:!0,skipHtml:!0,urlTransform:l,plugins:{code:e.code},components:{pre:h.CodeBlock},controls:{code:!1,table:!1,mermaid:!1},children:a})})}]),c()}catch(a){c(a)}},!1),73570,a=>a.a(async(b,c)=>{try{var d=a.i(34020),e=a.i(71938),f=a.i(31687),g=a.i(37102),h=a.i(42210),i=a.i(47845),j=a.i(1927),k=a.i(16772),l=a.i(12537),m=a.i(16106),n=a.i(9380),o=a.i(98018),p=a.i(55295),q=a.i(63265),r=a.i(76192),s=a.i(36890),t=a.i(27692),u=a.i(70535),v=a.i(24567),w=a.i(64565),x=a.i(13562),y=b([x]);[x]=y.then?(await y)():y;let J=(0,e.memo)(function({message:a,busy:b,onDelete:c,onResend:e,onRegenerate:f,onEditSave:g}){return"user"===a.role?(0,d.jsx)(D,{message:a,busy:b,onDelete:c,onResend:e,onEditSave:g}):(0,d.jsx)(E,{message:a,busy:b,onDelete:c,onRegenerate:f})},(a,b)=>a.message===b.message&&a.busy===b.busy);function z({align:a,disabled:b,onCopy:c,onDelete:e,onEdit:f,onResend:g,onRegenerate:h}){return(0,d.jsxs)("div",{className:(0,w.cn)("mt-1 flex items-center gap-0.5 opacity-0 transition-opacity duration-150","group-hover:opacity-100 group-focus-within:opacity-100","group-data-[touched=true]:opacity-100","right"===a?"justify-end":"justify-start"),children:[(0,d.jsx)(A,{title:"复制",disabled:b,onClick:c,children:(0,d.jsx)(k.Copy,{className:"h-3.5 w-3.5"})}),f&&(0,d.jsx)(A,{title:"编辑",disabled:b,onClick:f,children:(0,d.jsx)(l.Pencil,{className:"h-3.5 w-3.5"})}),g&&(0,d.jsx)(A,{title:"重新发送",disabled:b,onClick:g,children:(0,d.jsx)(o.Send,{className:"h-3.5 w-3.5"})}),h&&(0,d.jsx)(A,{title:"重新生成",disabled:b,onClick:h,children:(0,d.jsx)(m.RotateCcw,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(A,{title:"删除",disabled:b,onClick:e,destructive:!0,children:(0,d.jsx)(p.Trash2,{className:"h-3.5 w-3.5"})})]})}function A({title:a,disabled:b,destructive:c,onClick:e,children:f}){return(0,d.jsx)(r.Button,{type:"button",variant:"ghost",size:"icon",title:a,"aria-label":a,disabled:b,onClick:e,className:(0,w.cn)("h-7 w-7 text-muted-foreground hover:text-foreground",c&&"hover:text-[hsl(var(--destructive))] hover:bg-[hsl(var(--destructive))]/10"),children:f})}function B({rewriteFailed:a,rewriteError:b,failedKbCount:c,failedKbDetails:e}){let f=!!a,g=(c??0)>0;return f||g?(0,d.jsxs)("div",{className:"space-y-1.5",children:[f&&(0,d.jsx)(C,{label:"意图重写失败 · 已回退到原问题",detail:b??"rewriter 返回空结果或抛错"}),g&&e&&(0,d.jsx)(C,{label:`${c} 个知识库检索失败`,detail:e.map(a=>`• ${a.name}: ${a.reason}`).join("\n")})]}):null}function C({label:a,detail:b}){let[c,f]=(0,e.useState)(!1);return(0,d.jsxs)("div",{className:"rounded-md border border-amber-500/30 bg-amber-500/5",children:[(0,d.jsxs)("button",{type:"button",onClick:()=>f(a=>!a),className:(0,w.cn)("flex w-full items-center gap-1.5 px-2 py-1 text-xs","text-amber-700 hover:bg-amber-500/10 dark:text-amber-300"),children:[(0,d.jsx)(g.AlertTriangle,{className:"h-3.5 w-3.5 shrink-0"}),(0,d.jsx)("span",{className:"flex-1 text-left",children:a}),(0,d.jsx)(j.ChevronDown,{className:(0,w.cn)("h-3 w-3 opacity-60 transition-transform duration-150",c&&"rotate-180")})]}),c&&(0,d.jsx)("pre",{className:"border-t border-amber-500/20 px-2 py-1.5 text-[11px] leading-relaxed text-amber-700/80 dark:text-amber-300/80 whitespace-pre-wrap font-mono",children:b})]})}function D({message:a,busy:b,onDelete:c,onResend:f,onEditSave:g}){let[h,i]=(0,e.useState)(!1),[j,k]=(0,e.useState)(!1),[l,m]=(0,e.useState)(a.content),[n,o]=(0,e.useState)(!1),[p,t]=(0,e.useState)(!1),[w,x]=(0,e.useState)(!0),y=(0,e.useCallback)(()=>{navigator.clipboard.writeText(a.content),q.toast.success("已复制")},[a.content]),A=(0,e.useCallback)(()=>{let b=l.trim();if(!b||b===a.content){k(!1),m(a.content);return}k(!1),g(a.id,b)},[l,a.content,a.id,g]),B=(0,e.useCallback)(()=>{m(a.content),k(!1)},[a.content]),C=(0,e.useCallback)(a=>{"Escape"===a.key?(a.preventDefault(),B()):"Enter"===a.key&&(a.metaKey||a.ctrlKey)&&(a.preventDefault(),A())},[A,B]);return(0,d.jsxs)("div",{className:"group flex justify-end","data-touched":h?"true":void 0,onClickCapture:()=>i(!0),children:[(0,d.jsxs)("div",{className:"flex max-w-[85%] flex-col items-end",children:[j?(0,d.jsxs)("div",{className:"w-full max-w-2xl rounded-2xl border border-[hsl(var(--primary))] bg-[hsl(var(--background))] p-2",children:[(0,d.jsx)(u.Textarea,{autoFocus:!0,value:l,onChange:a=>m(a.target.value),onKeyDown:C,className:"min-h-[80px] resize-y border-0 p-2 text-sm shadow-none focus-visible:ring-0"}),(0,d.jsxs)("div",{className:"mt-1 flex justify-end gap-2",children:[(0,d.jsx)(r.Button,{type:"button",variant:"ghost",size:"sm",onClick:B,children:"取消"}),(0,d.jsx)(r.Button,{type:"button",size:"sm",disabled:!l.trim()||l.trim()===a.content,onClick:A,children:"保存并重发"})]})]}):(0,d.jsx)("div",{className:"rounded-2xl rounded-tr-sm bg-[hsl(var(--muted)/0.7)] px-4 py-2.5 text-sm leading-relaxed text-foreground whitespace-pre-wrap",children:a.content}),!j&&(0,d.jsx)(z,{align:"right",disabled:b,onCopy:y,onEdit:()=>{m(a.content),k(!0)},onResend:()=>t(!0),onDelete:()=>o(!0)})]}),(0,d.jsx)(v.ConfirmDialog,{open:n,onOpenChange:o,title:"删除此消息?",description:"该操作不可撤销。",confirmText:"删除",variant:"danger",onConfirm:()=>{c(a.id,{withNextAssistant:w}),o(!1)},children:(0,d.jsxs)("label",{className:"flex items-center gap-2 text-sm text-foreground",children:[(0,d.jsx)(s.Checkbox,{checked:w,onCheckedChange:a=>x(!0===a)}),"同时删除下方的 AI 回复"]})}),(0,d.jsx)(v.ConfirmDialog,{open:p,onOpenChange:t,title:"重新发送此消息?",description:"将丢弃下方所有消息并重新生成回答。",confirmText:"重新发送",onConfirm:()=>{t(!1),f(a.id)}})]})}function E({message:a,busy:b,onDelete:c,onRegenerate:g}){let[h,i]=(0,e.useState)(!1),[j,k]=(0,e.useState)(!1),[l,m]=(0,e.useState)(!1),o="streaming"===a.status,p="error"===a.status,r=(a.reasoning?.length??0)>0,s=(a.content?.length??0)>0,t=r||o&&!s,u=!!a.usingRag&&!a.retrievalQuery,w=!!a.retrievalQuery&&!a.retrievedChunks,y=(a.retrievalGroups??[]).filter(a=>a.error).map(a=>({name:a.knowledgeBaseName,reason:a.error??""})),A=(0,e.useCallback)(()=>{navigator.clipboard.writeText(a.content),q.toast.success("已复制")},[a.content]);return(0,d.jsxs)("div",{className:"group space-y-3 text-sm leading-relaxed","data-touched":h?"true":void 0,onClickCapture:()=>i(!0),children:[t?(0,d.jsx)(F,{reasoning:a.reasoning??"",streaming:o,startedAt:a.reasoningStartedAt,completedAt:a.reasoningCompletedAt,intentExtracting:u,retrievalInFlight:w}):null,(0,d.jsx)(B,{rewriteFailed:a.queryRewriteFailed,rewriteError:a.queryRewriteError,failedKbCount:y.length,failedKbDetails:y}),a.retrievalQueryRewritten&&a.retrievalQuery?(0,d.jsxs)("div",{className:"inline-flex max-w-full items-center gap-1.5 rounded-md bg-[hsl(var(--muted)/0.4)] px-2 py-1 text-xs text-muted-foreground",children:[(0,d.jsx)(n.Search,{className:"h-3 w-3 shrink-0"}),(0,d.jsx)("span",{className:"font-medium shrink-0",children:"检索关键词:"}),(0,d.jsx)("span",{className:"truncate font-mono text-foreground/80",children:a.retrievalQuery})]}):null,a.retrievedChunks&&a.retrievedChunks.length>0?(0,d.jsx)(G,{chunks:a.retrievedChunks,groups:a.retrievalGroups}):null,p?(0,d.jsxs)("div",{className:"flex items-start gap-2 rounded-md border border-[hsl(var(--destructive))/0.3] bg-[hsl(var(--destructive))/0.05] px-3 py-2 text-[hsl(var(--destructive))]",children:[(0,d.jsx)(f.AlertCircle,{className:"mt-0.5 h-4 w-4 shrink-0"}),(0,d.jsx)("span",{className:"text-xs",children:a.errorMessage??"生成失败"})]}):(0,d.jsxs)("div",{className:"text-foreground/90",children:[(0,d.jsx)(x.Markdown,{children:a.content}),o?(0,d.jsx)("span",{className:"ml-0.5 inline-block h-3.5 w-1.5 animate-pulse bg-foreground align-baseline"}):null]}),(0,d.jsx)(z,{align:"left",disabled:b||o,onCopy:A,onRegenerate:()=>m(!0),onDelete:()=>k(!0)}),(0,d.jsx)(v.ConfirmDialog,{open:j,onOpenChange:k,title:"删除此回复?",description:"该操作不可撤销。",confirmText:"删除",variant:"danger",onConfirm:()=>{c(a.id),k(!1)}}),(0,d.jsx)(v.ConfirmDialog,{open:l,onOpenChange:m,title:"重新生成此回复?",description:"将丢弃下方所有消息并重新生成。",confirmText:"重新生成",onConfirm:()=>{m(!1),g(a.id)}})]})}function F({reasoning:a,streaming:b,startedAt:c,completedAt:f,intentExtracting:g,retrievalInFlight:h}){var k,l;let m,n,o,[p,q]=(0,e.useState)(!1),r=function(a,b){let[c,d]=(0,e.useState)(()=>Date.now());return((0,e.useEffect)(()=>{if(!a||b)return;let c=window.setInterval(()=>d(Date.now()),250);return()=>window.clearInterval(c)},[a,b]),a)?Math.max(0,(b??c)-a):null}(c,f),s=null!=r?(k=r,l=!b||!!f,m=Math.floor(k/1e3),n=Math.floor(m/60),o=m%60,l?0===n?`用时 ${o} 秒`:`用时 ${n} 分 ${o} 秒`:`${n}:${String(o).padStart(2,"0")}`):null,u=b&&!f,v=a.length>0,x="正在思考";return v?x="深度思考中":h?x="正在检索知识库":g&&(x="检索意图提取"),(0,d.jsxs)(t.Collapsible,{open:p,onOpenChange:q,children:[(0,d.jsx)(t.CollapsibleTrigger,{asChild:!0,children:(0,d.jsxs)("button",{type:"button",disabled:!v,className:(0,w.cn)("group inline-flex items-center gap-2 rounded-full pl-1.5 pr-2.5 py-1 text-xs font-medium transition-all duration-200",u?"bg-[hsl(var(--primary)/0.08)] text-[hsl(var(--primary))] ring-1 ring-[hsl(var(--primary)/0.25)] shadow-[0_0_0_4px_hsl(var(--primary)/0.06)]":"bg-[hsl(var(--muted)/0.6)] text-muted-foreground hover:bg-[hsl(var(--accent))] hover:text-foreground",!v&&"cursor-default"),"aria-live":u?"polite":"off",children:[(0,d.jsxs)("span",{className:"relative inline-flex h-5 w-5 items-center justify-center",children:[u&&(0,d.jsx)("span",{"aria-hidden":!0,className:"absolute inset-0 rounded-full bg-[hsl(var(--primary))] opacity-40 blur-[6px] animate-thinking-aurora"}),(0,d.jsx)(i.Brain,{className:(0,w.cn)("relative h-3.5 w-3.5",u&&"animate-thinking-icon text-[hsl(var(--primary))]")})]}),u?(0,d.jsx)("span",{className:"animate-text-shimmer bg-[linear-gradient(90deg,hsl(var(--primary)/0.55)_0%,hsl(var(--primary))_50%,hsl(var(--primary)/0.55)_100%)] bg-[length:200%_100%] bg-clip-text text-transparent",children:x}):(0,d.jsx)("span",{children:"已深度思考"}),s&&(0,d.jsxs)("span",{className:(0,w.cn)("tabular-nums text-[11px]",u?"text-[hsl(var(--primary)/0.75)]":"text-muted-foreground/80"),children:["· ",s]}),v&&(0,d.jsx)(j.ChevronDown,{className:(0,w.cn)("h-3 w-3 opacity-60 transition-transform duration-200",p&&"rotate-180",u&&"text-[hsl(var(--primary))]")})]})}),v&&(0,d.jsx)(t.CollapsibleContent,{children:(0,d.jsx)("div",{className:"mt-2 border-l-2 border-[hsl(var(--border))] pl-3 text-xs leading-relaxed text-muted-foreground whitespace-pre-wrap",children:a})})]})}function G({chunks:a,groups:b}){let[c,f]=(0,e.useState)(!1),g=new Map;a.forEach((a,b)=>{g.set(`${a.docId}#${a.chunkId}`,b+1)});let i=(b??[]).filter(a=>!a.error),k=(b??[]).filter(a=>a.error),l=i.length>=2||k.length>0;return(0,d.jsxs)(t.Collapsible,{open:c,onOpenChange:f,children:[(0,d.jsx)(t.CollapsibleTrigger,{asChild:!0,children:(0,d.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1.5 rounded-md px-2 py-1 text-xs text-muted-foreground transition-colors hover:bg-[hsl(var(--accent))] hover:text-foreground",children:[(0,d.jsx)(h.BookOpen,{className:"h-3.5 w-3.5"}),"查看 ",a.length," 个引用",l?(0,d.jsxs)("span",{className:"text-muted-foreground/70",children:["· ",i.length," 个知识库",k.length>0?`(${k.length} 失败)`:""]}):null,(0,d.jsx)(j.ChevronDown,{className:(0,w.cn)("h-3 w-3 transition-transform duration-200",c&&"rotate-180")})]})}),(0,d.jsx)(t.CollapsibleContent,{children:(0,d.jsx)("div",{className:"mt-2 space-y-3",children:l?(0,d.jsxs)(d.Fragment,{children:[i.map(a=>(0,d.jsx)(H,{group:a,indexByKey:g},`ok-${a.knowledgeBaseName}`)),k.map(a=>(0,d.jsxs)("div",{className:"rounded-md border border-[hsl(var(--destructive))/0.3] bg-[hsl(var(--destructive))/0.05] px-3 py-2 text-xs text-[hsl(var(--destructive))]",children:[(0,d.jsx)("span",{className:"font-medium",children:a.knowledgeBaseName}),(0,d.jsxs)("span",{className:"ml-2 text-[hsl(var(--destructive))/0.8]",children:["检索失败:",a.error]})]},`err-${a.knowledgeBaseName}`))]}):(0,d.jsx)("div",{className:"space-y-2",children:a.map((a,b)=>(0,d.jsx)(I,{chunk:a,index:b+1},`${a.docId}-${a.chunkId}`))})})})]})}function H({group:a,indexByKey:b}){return(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 text-xs font-medium text-muted-foreground",children:[(0,d.jsx)("span",{className:"text-foreground/80",children:a.knowledgeBaseName}),(0,d.jsxs)("span",{children:["· ",a.chunks.length," 条"]})]}),(0,d.jsx)("div",{className:"space-y-2 border-l-2 border-[hsl(var(--border))] pl-3",children:a.chunks.map(a=>{let c=`${a.docId}#${a.chunkId}`,e=b.get(c)??0;return(0,d.jsx)(I,{chunk:a,index:e},`${a.docId}-${a.chunkId}`)})})]})}function I({chunk:a,index:b}){let c=a.ossKey?.split("/").pop()||a.ossKey||"未知文件";return(0,d.jsxs)("div",{className:"rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--muted)/0.3)] p-3",children:[(0,d.jsxs)("div",{className:"mb-1.5 flex items-center gap-2 text-xs text-muted-foreground",children:[(0,d.jsx)("span",{className:"inline-flex h-5 w-5 items-center justify-center rounded-full bg-[hsl(var(--primary-50))] font-semibold text-primary",children:b>0?b:"–"}),(0,d.jsx)("span",{className:"font-medium text-foreground/80",children:c}),(0,d.jsxs)("span",{children:["Chunk #",a.chunkId]}),(0,d.jsx)("span",{className:"ml-auto font-mono",children:a.score.toFixed(4)})]}),(0,d.jsx)("p",{className:"line-clamp-4 whitespace-pre-wrap text-xs text-foreground/80",children:a.content})]})}J.displayName="QaMessage",a.s(["QaMessage",0,J]),c()}catch(a){c(a)}},!1),57900,a=>a.a(async(b,c)=>{try{var d=a.i(34020),e=a.i(71938),f=a.i(88189),g=a.i(98018),h=a.i(31710),i=a.i(76192),j=a.i(70535),k=a.i(10215),l=a.i(64565),m=a.i(73570),n=b([m]);[m]=n.then?(await n)():n,a.s(["QaChatPanel",0,function({messages:a,isStreaming:b,canSend:c,error:n,onSend:o,onStop:p,onDelete:q,onResend:r,onRegenerate:s,onEditSave:t,emptyState:u,disabledPlaceholder:v}){let[w,x]=(0,e.useState)(""),y=(0,e.useRef)(null),z=(0,e.useRef)(a.length);(0,e.useEffect)(()=>{let b=y.current;if(!b)return;let c=a.length>z.current;(z.current=a.length,c)?requestAnimationFrame(()=>{b.scrollTo({top:b.scrollHeight,behavior:"smooth"})}):b.scrollHeight-b.scrollTop-b.clientHeight<120&&b.scrollTo({top:b.scrollHeight,behavior:"smooth"})},[a]);let A=()=>{let a=w.trim();a&&c&&!b&&(o(a),x(""))};return(0,d.jsxs)("div",{className:"flex h-full min-h-0 flex-1 flex-col bg-[hsl(var(--card))]",children:[(0,d.jsx)("div",{ref:y,role:"log","aria-live":"polite","aria-relevant":"additions text","aria-busy":b,className:"flex-1 space-y-6 overflow-y-auto px-6 py-5",children:0===a.length?(0,d.jsx)("div",{className:"flex h-full min-h-[320px] items-center justify-center",children:(0,d.jsx)(k.EmptyState,{icon:f.MessageSquare,title:u?.title??"开始对话",description:u?.description??"输入问题,系统会先从知识库检索相关内容,再让大模型基于检索结果回答",action:u?.actionLabel&&u?.onAction?(0,d.jsx)(i.Button,{type:"button",onClick:u.onAction,children:u.actionLabel}):void 0})}):a.map(a=>(0,d.jsx)(m.QaMessage,{message:a,busy:b,onDelete:q,onResend:r,onRegenerate:s,onEditSave:t},a.id))}),(0,d.jsxs)("div",{className:"border-t border-[hsl(var(--border))] bg-[hsl(var(--surface)/0.6)] px-4 py-3",children:[n&&(0,d.jsx)("p",{className:"mb-2 text-xs text-[hsl(var(--destructive))]",children:n}),(0,d.jsxs)("div",{className:"flex items-end gap-2",children:[(0,d.jsx)(j.Textarea,{value:w,onChange:a=>x(a.target.value),onKeyDown:a=>{"Enter"!==a.key||a.shiftKey||a.nativeEvent.isComposing||(a.preventDefault(),A())},placeholder:c?"输入问题,Enter 发送,Shift+Enter 换行":v??"请先在左侧选择模型...",disabled:!c,className:(0,l.cn)("min-h-[44px] max-h-40 resize-none text-sm"),rows:1}),b?(0,d.jsx)(i.Button,{type:"button",variant:"outline",size:"icon",onClick:p,title:"停止",children:(0,d.jsx)(h.Square,{className:"h-4 w-4 fill-current"})}):(0,d.jsx)(i.Button,{type:"button",size:"icon",disabled:!c||!w.trim(),onClick:A,title:"发送",children:(0,d.jsx)(g.Send,{className:"h-4 w-4"})})]})]})]})}]),c()}catch(a){c(a)}},!1),64363,32191,87951,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(53520),e=a.i(82725),f=a.i(81619),g=a.i(25825),h=a.i(68826),i=a.i(76192),j=/[\\\/_+.#"@\[\(\{&]/,k=/[\\\/_+.#"@\[\(\{&]/g,l=/[\s-]/,m=/[\s-]/g;function n(a){return a.toLowerCase().replace(m," ")}var o=a.i(88619),p=a.i(5305),q=a.i(59231),r=a.i(68189),s='[cmdk-group=""]',t='[cmdk-group-items=""]',u='[cmdk-item=""]',v=`${u}:not([aria-disabled="true"])`,w="cmdk-item-select",x="data-value",y=(a,b,c)=>{var d;return d=a,function a(b,c,d,e,f,g,h){if(g===c.length)return f===b.length?1:.99;var i=`${f},${g}`;if(void 0!==h[i])return h[i];for(var n,o,p,q,r=e.charAt(g),s=d.indexOf(r,f),t=0;s>=0;)(n=a(b,c,d,e,s+1,g+1,h))>t&&(s===f?n*=1:j.test(b.charAt(s-1))?(n*=.8,(p=b.slice(f,s-1).match(k))&&f>0&&(n*=Math.pow(.999,p.length))):l.test(b.charAt(s-1))?(n*=.9,(q=b.slice(f,s-1).match(m))&&f>0&&(n*=Math.pow(.999,q.length))):(n*=.17,f>0&&(n*=Math.pow(.999,s-f))),b.charAt(s)!==c.charAt(g)&&(n*=.9999)),(n<.1&&d.charAt(s-1)===e.charAt(g+1)||e.charAt(g+1)===e.charAt(g)&&d.charAt(s-1)!==e.charAt(g))&&.1*(o=a(b,c,d,e,s+1,g+2,h))>n&&(n=.1*o),n>t&&(t=n),s=d.indexOf(r,s+1);return h[i]=t,t}(d=c&&c.length>0?`${d+" "+c.join(" ")}`:d,b,n(d),n(b),0,0,{})},z=c.createContext(void 0),A=c.createContext(void 0),B=c.createContext(void 0),C=c.forwardRef((a,b)=>{let d=M(()=>{var b,c;return{search:"",value:null!=(c=null!=(b=a.value)?b:a.defaultValue)?c:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),e=M(()=>new Set),f=M(()=>new Map),g=M(()=>new Map),h=M(()=>new Set),i=K(a),{label:j,children:k,value:l,onValueChange:m,filter:n,shouldFilter:o,loop:r,disablePointerSelection:B=!1,vimBindings:C=!0,...D}=a,E=(0,q.useId)(),F=(0,q.useId)(),G=(0,q.useId)(),H=c.useRef(null),I=P();L(()=>{if(void 0!==l){let a=l.trim();d.current.value=a,J.emit()}},[l]),L(()=>{I(6,V)},[]);let J=c.useMemo(()=>({subscribe:a=>(h.current.add(a),()=>h.current.delete(a)),snapshot:()=>d.current,setState:(a,b,c)=>{var e,f,g,h;if(!Object.is(d.current[a],b)){if(d.current[a]=b,"search"===a)U(),S(),I(1,T);else if("value"===a){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let a=document.getElementById(G);a?a.focus():null==(e=document.getElementById(E))||e.focus()}if(I(7,()=>{var a;d.current.selectedItemId=null==(a=W())?void 0:a.id,J.emit()}),c||I(5,V),(null==(f=i.current)?void 0:f.value)!==void 0){null==(h=(g=i.current).onValueChange)||h.call(g,null!=b?b:"");return}}J.emit()}},emit:()=>{h.current.forEach(a=>a())}}),[]),N=c.useMemo(()=>({value:(a,b,c)=>{var e;b!==(null==(e=g.current.get(a))?void 0:e.value)&&(g.current.set(a,{value:b,keywords:c}),d.current.filtered.items.set(a,O(b,c)),I(2,()=>{S(),J.emit()}))},item:(a,b)=>(e.current.add(a),b&&(f.current.has(b)?f.current.get(b).add(a):f.current.set(b,new Set([a]))),I(3,()=>{U(),S(),d.current.value||T(),J.emit()}),()=>{g.current.delete(a),e.current.delete(a),d.current.filtered.items.delete(a);let b=W();I(4,()=>{U(),(null==b?void 0:b.getAttribute("id"))===a&&T(),J.emit()})}),group:a=>(f.current.has(a)||f.current.set(a,new Set),()=>{g.current.delete(a),f.current.delete(a)}),filter:()=>i.current.shouldFilter,label:j||a["aria-label"],getDisablePointerSelection:()=>i.current.disablePointerSelection,listId:E,inputId:G,labelId:F,listInnerRef:H}),[]);function O(a,b){var c,e;let f=null!=(e=null==(c=i.current)?void 0:c.filter)?e:y;return a?f(a,d.current.search,b):0}function S(){if(!d.current.search||!1===i.current.shouldFilter)return;let a=d.current.filtered.items,b=[];d.current.filtered.groups.forEach(c=>{let d=f.current.get(c),e=0;d.forEach(b=>{e=Math.max(a.get(b),e)}),b.push([c,e])});let c=H.current;X().sort((b,c)=>{var d,e;let f=b.getAttribute("id"),g=c.getAttribute("id");return(null!=(d=a.get(g))?d:0)-(null!=(e=a.get(f))?e:0)}).forEach(a=>{let b=a.closest(t);b?b.appendChild(a.parentElement===b?a:a.closest(`${t} > *`)):c.appendChild(a.parentElement===c?a:a.closest(`${t} > *`))}),b.sort((a,b)=>b[1]-a[1]).forEach(a=>{var b;let c=null==(b=H.current)?void 0:b.querySelector(`${s}[${x}="${encodeURIComponent(a[0])}"]`);null==c||c.parentElement.appendChild(c)})}function T(){let a=X().find(a=>"true"!==a.getAttribute("aria-disabled")),b=null==a?void 0:a.getAttribute(x);J.setState("value",b||void 0)}function U(){var a,b,c,h;if(!d.current.search||!1===i.current.shouldFilter){d.current.filtered.count=e.current.size;return}d.current.filtered.groups=new Set;let j=0;for(let f of e.current){let e=O(null!=(b=null==(a=g.current.get(f))?void 0:a.value)?b:"",null!=(h=null==(c=g.current.get(f))?void 0:c.keywords)?h:[]);d.current.filtered.items.set(f,e),e>0&&j++}for(let[a,b]of f.current)for(let c of b)if(d.current.filtered.items.get(c)>0){d.current.filtered.groups.add(a);break}d.current.filtered.count=j}function V(){var a,b,c;let d=W();d&&((null==(a=d.parentElement)?void 0:a.firstChild)===d&&(null==(c=null==(b=d.closest(s))?void 0:b.querySelector('[cmdk-group-heading=""]'))||c.scrollIntoView({block:"nearest"})),d.scrollIntoView({block:"nearest"}))}function W(){var a;return null==(a=H.current)?void 0:a.querySelector(`${u}[aria-selected="true"]`)}function X(){var a;return Array.from((null==(a=H.current)?void 0:a.querySelectorAll(v))||[])}function Y(a){let b=X()[a];b&&J.setState("value",b.getAttribute(x))}function Z(a){var b;let c=W(),d=X(),e=d.findIndex(a=>a===c),f=d[e+a];null!=(b=i.current)&&b.loop&&(f=e+a<0?d[d.length-1]:e+a===d.length?d[0]:d[e+a]),f&&J.setState("value",f.getAttribute(x))}function $(a){let b=W(),c=null==b?void 0:b.closest(s),d;for(;c&&!d;)d=null==(c=a>0?function(a,b){let c=a.nextElementSibling;for(;c;){if(c.matches(b))return c;c=c.nextElementSibling}}(c,s):function(a,b){let c=a.previousElementSibling;for(;c;){if(c.matches(b))return c;c=c.previousElementSibling}}(c,s))?void 0:c.querySelector(v);d?J.setState("value",d.getAttribute(x)):Z(a)}let _=()=>Y(X().length-1),aa=a=>{a.preventDefault(),a.metaKey?_():a.altKey?$(1):Z(1)},ab=a=>{a.preventDefault(),a.metaKey?Y(0):a.altKey?$(-1):Z(-1)};return c.createElement(p.Primitive.div,{ref:b,tabIndex:-1,...D,"cmdk-root":"",onKeyDown:a=>{var b;null==(b=D.onKeyDown)||b.call(D,a);let c=a.nativeEvent.isComposing||229===a.keyCode;if(!(a.defaultPrevented||c))switch(a.key){case"n":case"j":C&&a.ctrlKey&&aa(a);break;case"ArrowDown":aa(a);break;case"p":case"k":C&&a.ctrlKey&&ab(a);break;case"ArrowUp":ab(a);break;case"Home":a.preventDefault(),Y(0);break;case"End":a.preventDefault(),_();break;case"Enter":{a.preventDefault();let b=W();if(b){let a=new Event(w);b.dispatchEvent(a)}}}}},c.createElement("label",{"cmdk-label":"",htmlFor:N.inputId,id:N.labelId,style:R},j),Q(a,a=>c.createElement(A.Provider,{value:J},c.createElement(z.Provider,{value:N},a))))}),D=c.forwardRef((a,b)=>{var d,e;let f=(0,q.useId)(),g=c.useRef(null),h=c.useContext(B),i=c.useContext(z),j=K(a),k=null!=(e=null==(d=j.current)?void 0:d.forceMount)?e:null==h?void 0:h.forceMount;L(()=>{if(!k)return i.item(f,null==h?void 0:h.id)},[k]);let l=O(f,g,[a.value,a.children,g],a.keywords),m=c.useContext(A),n=N(a=>a.value&&a.value===l.current),o=N(a=>!!k||!1===i.filter()||!a.search||a.filtered.items.get(f)>0);function s(){var a,b;t(),null==(b=(a=j.current).onSelect)||b.call(a,l.current)}function t(){m.setState("value",l.current,!0)}if(c.useEffect(()=>{let b=g.current;if(!(!b||a.disabled))return b.addEventListener(w,s),()=>b.removeEventListener(w,s)},[o,a.onSelect,a.disabled]),!o)return null;let{disabled:u,value:v,onSelect:x,forceMount:y,keywords:C,...D}=a;return c.createElement(p.Primitive.div,{ref:(0,r.composeRefs)(g,b),...D,id:f,"cmdk-item":"",role:"option","aria-disabled":!!u,"aria-selected":!!n,"data-disabled":!!u,"data-selected":!!n,onPointerMove:u||i.getDisablePointerSelection()?void 0:t,onClick:u?void 0:s},a.children)}),E=c.forwardRef((a,b)=>{let{heading:d,children:e,forceMount:f,...g}=a,h=(0,q.useId)(),i=c.useRef(null),j=c.useRef(null),k=(0,q.useId)(),l=c.useContext(z),m=N(a=>!!f||!1===l.filter()||!a.search||a.filtered.groups.has(h));L(()=>l.group(h),[]),O(h,i,[a.value,a.heading,j]);let n=c.useMemo(()=>({id:h,forceMount:f}),[f]);return c.createElement(p.Primitive.div,{ref:(0,r.composeRefs)(i,b),...g,"cmdk-group":"",role:"presentation",hidden:!m||void 0},d&&c.createElement("div",{ref:j,"cmdk-group-heading":"","aria-hidden":!0,id:k},d),Q(a,a=>c.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":d?k:void 0},c.createElement(B.Provider,{value:n},a))))}),F=c.forwardRef((a,b)=>{let{alwaysRender:d,...e}=a,f=c.useRef(null),g=N(a=>!a.search);return d||g?c.createElement(p.Primitive.div,{ref:(0,r.composeRefs)(f,b),...e,"cmdk-separator":"",role:"separator"}):null}),G=c.forwardRef((a,b)=>{let{onValueChange:d,...e}=a,f=null!=a.value,g=c.useContext(A),h=N(a=>a.search),i=N(a=>a.selectedItemId),j=c.useContext(z);return c.useEffect(()=>{null!=a.value&&g.setState("search",a.value)},[a.value]),c.createElement(p.Primitive.input,{ref:b,...e,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"aria-autocomplete":"list",role:"combobox","aria-expanded":!0,"aria-controls":j.listId,"aria-labelledby":j.labelId,"aria-activedescendant":i,id:j.inputId,type:"text",value:f?a.value:h,onChange:a=>{f||g.setState("search",a.target.value),null==d||d(a.target.value)}})}),H=c.forwardRef((a,b)=>{let{children:d,label:e="Suggestions",...f}=a,g=c.useRef(null),h=c.useRef(null),i=N(a=>a.selectedItemId),j=c.useContext(z);return c.useEffect(()=>{if(h.current&&g.current){let a=h.current,b=g.current,c,d=new ResizeObserver(()=>{c=requestAnimationFrame(()=>{let c=a.offsetHeight;b.style.setProperty("--cmdk-list-height",c.toFixed(1)+"px")})});return d.observe(a),()=>{cancelAnimationFrame(c),d.unobserve(a)}}},[]),c.createElement(p.Primitive.div,{ref:(0,r.composeRefs)(g,b),...f,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":i,"aria-label":e,id:j.listId},Q(a,a=>c.createElement("div",{ref:(0,r.composeRefs)(h,j.listInnerRef),"cmdk-list-sizer":""},a)))}),I=c.forwardRef((a,b)=>{let{open:d,onOpenChange:e,overlayClassName:f,contentClassName:g,container:h,...i}=a;return c.createElement(o.Root,{open:d,onOpenChange:e},c.createElement(o.Portal,{container:h},c.createElement(o.Overlay,{"cmdk-overlay":"",className:f}),c.createElement(o.Content,{"aria-label":a.label,"cmdk-dialog":"",className:g},c.createElement(C,{ref:b,...i}))))}),J=Object.assign(C,{List:H,Item:D,Input:G,Group:E,Separator:F,Dialog:I,Empty:c.forwardRef((a,b)=>N(a=>0===a.filtered.count)?c.createElement(p.Primitive.div,{ref:b,...a,"cmdk-empty":"",role:"presentation"}):null),Loading:c.forwardRef((a,b)=>{let{progress:d,children:e,label:f="Loading...",...g}=a;return c.createElement(p.Primitive.div,{ref:b,...g,"cmdk-loading":"",role:"progressbar","aria-valuenow":d,"aria-valuemin":0,"aria-valuemax":100,"aria-label":f},Q(a,a=>c.createElement("div",{"aria-hidden":!0},a)))})});function K(a){let b=c.useRef(a);return L(()=>{b.current=a}),b}var L=c.useEffect;function M(a){let b=c.useRef();return void 0===b.current&&(b.current=a()),b}function N(a){let b=c.useContext(A),d=()=>a(b.snapshot());return c.useSyncExternalStore(b.subscribe,d,d)}function O(a,b,d,e=[]){let f=c.useRef(),g=c.useContext(z);return L(()=>{var c;let h=(()=>{var a;for(let b of d){if("string"==typeof b)return b.trim();if("object"==typeof b&&"current"in b)return b.current?null==(a=b.current.textContent)?void 0:a.trim():f.current}})(),i=e.map(a=>a.trim());g.value(a,h,i),null==(c=b.current)||c.setAttribute(x,h),f.current=h}),f}var P=()=>{let[a,b]=c.useState(),d=M(()=>new Map);return L(()=>{d.current.forEach(a=>a()),d.current=new Map},[a]),(a,c)=>{d.current.set(a,c),b({})}};function Q({asChild:a,children:b},d){let e;return a&&c.isValidElement(b)?c.cloneElement("function"==typeof(e=b.type)?e(b.props):"render"in e?e.render(b.props):b,{ref:b.ref},d(b.props.children)):d(b)}var R={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"},S=a.i(9380),T=a.i(64565);a.i(43836);let U=c.forwardRef(({className:a,...c},d)=>(0,b.jsx)(J,{ref:d,className:(0,T.cn)("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",a),...c}));U.displayName=J.displayName;let V=c.forwardRef(({className:a,...c},d)=>(0,b.jsxs)("div",{className:"flex items-center border-b px-3","cmdk-input-wrapper":"",children:[(0,b.jsx)(S.Search,{className:"mr-2 h-4 w-4 shrink-0 opacity-50"}),(0,b.jsx)(J.Input,{ref:d,className:(0,T.cn)("flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",a),...c})]}));V.displayName=J.Input.displayName;let W=c.forwardRef(({className:a,...c},d)=>(0,b.jsx)(J.List,{ref:d,className:(0,T.cn)("max-h-[300px] overflow-y-auto overflow-x-hidden",a),...c}));W.displayName=J.List.displayName;let X=c.forwardRef((a,c)=>(0,b.jsx)(J.Empty,{ref:c,className:"py-6 text-center text-sm",...a}));X.displayName=J.Empty.displayName;let Y=c.forwardRef(({className:a,...c},d)=>(0,b.jsx)(J.Group,{ref:d,className:(0,T.cn)("overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",a),...c}));Y.displayName=J.Group.displayName,c.forwardRef(({className:a,...c},d)=>(0,b.jsx)(J.Separator,{ref:d,className:(0,T.cn)("-mx-1 h-px bg-border",a),...c})).displayName=J.Separator.displayName;let Z=c.forwardRef(({className:a,...c},d)=>(0,b.jsx)(J.Item,{ref:d,className:(0,T.cn)("relative flex cursor-pointer gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors data-[disabled=true]:pointer-events-none data-[selected=true]:bg-[hsl(var(--primary-soft))] data-[selected=true]:text-[hsl(var(--primary))] data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",a),...c}));Z.displayName=J.Item.displayName;var $=a.i(62491),_=a.i(84252),aa=a.i(63525),ab=a.i(37255),ac=a.i(83366),ad=a.i(83917),ae=a.i(25377),af=a.i(39096);function ag({value:a,options:f,onChange:h,disabled:j,fetching:k}){let[l,m]=(0,c.useState)(!1),[n,o]=(0,c.useState)(""),p=n.trim(),q=(0,c.useMemo)(()=>{if(!p)return f;let a=p.toLowerCase();return f.filter(b=>b.toLowerCase().includes(a))},[f,p]),r=f.some(a=>a.toLowerCase()===p.toLowerCase()),s=p.length>0&&!r,t=a=>{h(a),o(""),m(!1)};return(0,b.jsxs)(_.Popover,{open:l,onOpenChange:m,children:[(0,b.jsx)(_.PopoverTrigger,{asChild:!0,children:(0,b.jsxs)(i.Button,{type:"button",variant:"outline",role:"combobox","aria-expanded":l,disabled:j,className:"w-full justify-between font-normal",children:[(0,b.jsx)("span",{className:(0,T.cn)("truncate text-left",!a&&"text-[hsl(var(--subtle))]"),children:a||"选择或输入模型名"}),(0,b.jsx)(e.ChevronsUpDown,{className:"h-4 w-4 shrink-0 opacity-50"})]})}),(0,b.jsx)(_.PopoverContent,{align:"start",className:"w-[var(--radix-popover-trigger-width)] p-0",children:(0,b.jsxs)(U,{shouldFilter:!1,children:[(0,b.jsx)(V,{placeholder:"搜索或输入模型名",value:n,onValueChange:o}),(0,b.jsxs)(W,{children:[0!==q.length||s?null:(0,b.jsx)(X,{children:k?"正在拉取模型列表...":0===f.length?"点击「刷新列表」拉取可用模型":"无匹配结果"}),q.length>0&&(0,b.jsx)(Y,{heading:s?"可选模型":void 0,children:q.map(c=>(0,b.jsxs)(Z,{value:c,onSelect:()=>t(c),children:[(0,b.jsx)(d.Check,{className:(0,T.cn)("h-4 w-4",a===c?"opacity-100":"opacity-0")}),(0,b.jsx)("span",{className:"truncate",children:c})]},c))}),s&&(0,b.jsx)(Y,{heading:"使用自定义",children:(0,b.jsxs)(Z,{value:`__custom__${p}`,onSelect:()=>t(p),children:[(0,b.jsx)(g.Plus,{className:"h-4 w-4 text-[hsl(var(--primary))]"}),(0,b.jsxs)("span",{className:"truncate",children:['使用 "',p,'"']})]})})]})]})})]})}a.s(["LLMModelSelector",0,function({providerId:a,model:d,onProviderChange:e,onModelChange:g,autoSelectFirst:j=!1,providerLabel:k="Provider",modelLabel:l="Model"}){let{data:m=[],isLoading:n}=(0,ab.useLLMProviders)(),{data:o,isFetching:p,refetch:q}=function(a,b={}){let{context:c,ready:d}=(0,af.useRuntimeContext)();return(0,ac.useQuery)({queryKey:ae.queryKeys.llmProviderModels(c.dataScopeKey,a),queryFn:()=>(0,ad.fetchProviderModels)(a),enabled:d&&!!a&&(b.enabled??!0),staleTime:3e5,retry:!1})}(a||void 0,{enabled:!!a});(0,c.useEffect)(()=>{if(!j||a||0===m.length)return;let b=m[0];e(b.id,b.defaultModel??"")},[j,a,m]);let r=(0,c.useMemo)(()=>{let b=new Set;for(let a of(d&&b.add(d),o??[]))b.add(a.id);let c=m.find(b=>b.id===a);return c?.defaultModel&&b.add(c.defaultModel),Array.from(b)},[d,o,m,a]);return(0,b.jsxs)("div",{className:"space-y-4",children:[(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)($.Label,{className:"text-sm font-medium",children:k}),(0,b.jsxs)(aa.Select,{value:a,onValueChange:a=>{let b=m.find(b=>b.id===a);e(a,b?.defaultModel??"")},disabled:n||0===m.length,children:[(0,b.jsx)(aa.SelectTrigger,{children:(0,b.jsx)(aa.SelectValue,{placeholder:n?"加载中...":0===m.length?"请先在「模型提供商」中创建配置":"选择 Provider"})}),(0,b.jsx)(aa.SelectContent,{children:m.map(a=>(0,b.jsx)(aa.SelectItem,{value:a.id,children:a.name},a.id))})]})]}),(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsx)($.Label,{className:"text-sm font-medium",children:l}),(0,b.jsxs)(i.Button,{type:"button",variant:"ghost",size:"sm",className:"h-6 px-2 text-xs",disabled:!a||p,onClick:()=>q(),children:[p?(0,b.jsx)(f.Loader2,{className:"mr-1 h-3 w-3 animate-spin"}):(0,b.jsx)(h.RefreshCw,{className:"mr-1 h-3 w-3"}),"刷新列表"]})]}),(0,b.jsx)(ag,{value:d,options:r,onChange:g,disabled:!a,fetching:p})]})]})}],64363);var ah=a.i(70535);a.s(["SystemPromptInput",0,function({value:a,onChange:c,placeholder:d,helperText:e,rows:f=3,label:g="系统提示词"}){return(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)($.Label,{className:"text-sm font-medium",children:g}),(0,b.jsx)(ah.Textarea,{rows:f,value:a,onChange:a=>c(a.target.value),placeholder:d,className:"text-sm"}),e&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:e})]})}],32191);var ai=a.i(50681);a.s(["TemperatureSlider",0,function({value:a,onChange:c,min:d=0,max:e=2,step:f=.05,fallback:g=.7,label:h="温度"}){let i=(a??g).toFixed(2);return(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between text-sm",children:[(0,b.jsx)("span",{className:"font-medium",children:h}),(0,b.jsx)("span",{className:"font-mono text-xs text-muted-foreground",children:i})]}),(0,b.jsx)(ai.Slider,{value:[a??g],min:d,max:e,step:f,onValueChange:a=>c(a[0]??g)})]})}],87951)},83643,a=>{"use strict";a.s(["newId",0,function(a="id"){return"u">typeof crypto&&"randomUUID"in crypto?crypto.randomUUID():`${a}_${Date.now()}_${Math.random().toString(36).slice(2)}`}])},76446,a=>{"use strict";a.s(["findUserAnchorAbove",0,function(a,b){let c=a.findIndex(a=>a.id===b);if(c<0)return null;for(let b=c-1;b>=0;b-=1)if("user"===a[b].role)return a[b];return null},"removeAt",0,function(a,b){let c=a.findIndex(a=>a.id===b);if(c<0)return a;let d=a.slice();return d.splice(c,1),d},"removePair",0,function(a,b){let c=a.findIndex(a=>a.id===b);if(c<0)return a;let d=a.slice(),e=a[c+1]&&"assistant"===a[c+1].role?2:1;return d.splice(c,e),d},"truncateUpToAndIncluding",0,function(a,b){let c=a.findIndex(a=>a.id===b);return c<0?a:a.slice(0,c+1)}])},9135,a=>{"use strict";var b=a.i(71938);async function*c(a,b){let c=await fetch("/api/v1/llm/chat",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a),signal:b});if(!c.ok||!c.body){let a=`Chat request failed with status ${c.status}`,b="STREAM_ERROR";try{let d=await c.json();a=d.message??a,b=d.code??b}catch{}yield{type:"error",code:b,message:a};return}let e=c.body.getReader(),f=new TextDecoder("utf-8"),g="";for(;;){let{value:a,done:b}=await e.read();if(b)break;let c=(g+=f.decode(a,{stream:!0})).indexOf("\n\n");for(;-1!==c;){let a=g.slice(0,c);g=g.slice(c+2);let b=d(a);b&&(yield b),c=g.indexOf("\n\n")}}if(g.trim()){let a=d(g);a&&(yield a)}}function d(a){let b=a.split("\n"),c=[];for(let a of b)!(!a||a.startsWith(":"))&&a.startsWith("data:")&&c.push(a.slice(5).trimStart());if(0===c.length)return null;try{return JSON.parse(c.join("\n"))}catch{return null}}var e=a.i(83643),f=a.i(76446);a.s(["useQaChat",0,function(a){let[d,g]=(0,b.useState)([]),[h,i]=(0,b.useState)(!1),[j,k]=(0,b.useState)(null),l=(0,b.useRef)(null),m=(0,b.useRef)(a.onPersist);m.current=a.onPersist;let n=(0,b.useRef)(d);n.current=d;let o=(0,b.useRef)(a);o.current=a;let p=(0,b.useRef)(h);p.current=h;let q=(0,b.useRef)(new Map),r=(0,b.useRef)(null),s=(0,b.useCallback)(()=>{r.current=null;let a=q.current;if(0===a.size)return;let b=new Map(a);a.clear(),g(a=>a.map(a=>{let c=b.get(a.id);return c?{...a,...c.content?{content:a.content+c.content}:null,...c.reasoning?{reasoning:(a.reasoning??"")+c.reasoning}:null}:a}))},[]),t=(0,b.useCallback)(()=>{if(null===r.current){if("u"<typeof requestAnimationFrame)return void s();r.current=requestAnimationFrame(s)}},[s]),u=(0,b.useCallback)(()=>{null!==r.current&&"u">typeof cancelAnimationFrame&&cancelAnimationFrame(r.current),r.current=null},[]);(0,b.useEffect)(()=>u,[u]);let v=(0,b.useCallback)(()=>{l.current?.abort()},[]),w=(0,b.useCallback)(()=>{l.current?.abort(),n.current=[],g([]),k(null)},[]),x=(0,b.useCallback)(a=>{l.current?.abort(),n.current=a,g(a),k(null)},[]),y=(0,b.useCallback)(async(a,b)=>{let d=o.current,e=new AbortController;l.current=e;let f={current:!1},h={current:!1},j=b=>{g(c=>c.map(c=>c.id===a?{...c,...b}:c))};try{let g={activeInstance:d.activeInstance,providerId:d.providerId,model:d.model,messages:b,systemPrompt:d.systemPrompt,temperature:d.temperature,rag:d.rag};for await(let b of c(g,e.signal))if("query.rewritten"===b.type)j({retrievalQuery:b.query,retrievalQueryRewritten:b.query!==b.original});else if("query.fallback"===b.type)j({retrievalQuery:b.original,retrievalQueryRewritten:!1,queryRewriteFailed:!0,queryRewriteError:b.reason});else if("retrieval.done"===b.type)j({retrievedChunks:b.chunks,retrievalGroups:b.byKnowledgeBase});else if("reasoning.delta"===b.type){let c=q.current.get(a)??{};c.reasoning=(c.reasoning??"")+b.delta,q.current.set(a,c),f.current||(f.current=!0,j({reasoningStartedAt:Date.now()})),t()}else if("content.delta"===b.type){let c=q.current.get(a)??{};c.content=(c.content??"")+b.delta,q.current.set(a,c),f.current&&!h.current&&(h.current=!0,j({reasoningCompletedAt:Date.now()})),t()}else if("error"===b.type){u(),s();let a={status:"error",errorMessage:`${b.code}: ${b.message}`};f.current&&!h.current&&(a.reasoningCompletedAt=Date.now()),j(a),k(b.message);break}else if("done"===b.type){u(),s();let a={status:"done"};f.current&&!h.current&&(a.reasoningCompletedAt=Date.now()),j(a);break}}catch(c){u(),s();let a=c instanceof DOMException&&"AbortError"===c.name,b=f.current&&!h.current?{reasoningCompletedAt:Date.now()}:void 0;if(a)j({status:"done",...b});else{let a=c instanceof Error?c.message:String(c);j({status:"error",errorMessage:a,...b}),k(a)}}finally{i(!1),l.current=null;let a=m.current;a&&g(b=>(a(b),b))}},[t,s,u]),z=(0,b.useCallback)(async a=>{let b=a.trim();if(!b||p.current)return;let c=o.current;if(!c.providerId||!c.model)return void k("请先选择模型与 Provider");k(null);let d={id:(0,e.newId)(),role:"user",content:b,createdAt:Date.now(),status:"done"},f=(0,e.newId)(),h=(c.rag?.knowledgeBases?.length??0)>0,j={id:f,role:"assistant",content:"",reasoning:"",createdAt:Date.now(),status:"streaming",usingRag:h},l=[...n.current,d].map(a=>({role:a.role,content:a.content})),m=[...n.current,d,j];n.current=m,g(m),i(!0),await y(f,l)},[y]),A=(0,b.useCallback)(async a=>{if(p.current)return;let b=o.current;if(!b.providerId||!b.model)return void k("请先选择模型与 Provider");let c=(0,f.truncateUpToAndIncluding)(n.current,a),d=c[c.length-1];if(!d||"user"!==d.role)return;k(null);let h=(0,e.newId)(),j=(b.rag?.knowledgeBases?.length??0)>0,l={id:h,role:"assistant",content:"",reasoning:"",createdAt:Date.now(),status:"streaming",usingRag:j},m=c.map(a=>({role:a.role,content:a.content})),q=[...c,l];n.current=q,g(q),i(!0),await y(h,m)},[y]);return{messages:d,isStreaming:h,error:j,send:z,reissueTurn:A,deleteMessage:(0,b.useCallback)((a,b)=>{if(p.current)return;let c=n.current,d=c.find(b=>b.id===a);if(!d)return;let e="user"===d.role&&b?.withNextAssistant?(0,f.removePair)(c,a):(0,f.removeAt)(c,a);n.current=e,g(e),m.current?.(e)},[]),editUserMessage:(0,b.useCallback)((a,b)=>{let c=n.current,d=c.findIndex(b=>b.id===a);if(d<0||"user"!==c[d].role)return null;let e=c.slice();return e[d]={...c[d],content:b},n.current=e,g(e),a},[]),stop:v,clear:w,setMessages:x}}],9135)},82424,a=>{"use strict";var b=a.i(39096);a.s(["useActiveInstance",0,function(){let{context:a,ready:c}=(0,b.useRuntimeContext)();return{activeInstance:a.activeInstance,ready:c,dataScopeKey:a.dataScopeKey,configRevision:a.configRevision}}])}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=%5Broot-of-the-server%5D__0aqzu8w._.js.map
|
package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0id.4_g._.js
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},68826,a=>{"use strict";let b=(0,a.i(50053).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);a.s(["RefreshCw",0,b],68826)},36890,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(68189),e=a.i(84694),f=a.i(59653),g=a.i(83370),h=a.i(20251),i=a.i(66394),j=a.i(98392),k=a.i(58036),l="Checkbox",[m,n]=(0,e.createContextScope)(l),[o,p]=m(l);function q(a){let{__scopeCheckbox:d,checked:e,children:f,defaultChecked:h,disabled:i,form:j,name:k,onCheckedChange:m,required:n,value:p="on",internal_do_not_use_render:q}=a,[r,s]=(0,g.useControllableState)({prop:e,defaultProp:h??!1,onChange:m,caller:l}),[t,u]=c.useState(null),[v,w]=c.useState(null),x=c.useRef(!1),z=!t||!!j||!!t.closest("form"),A={checked:r,disabled:i,setChecked:s,control:t,setControl:u,name:k,form:j,value:p,hasConsumerStoppedPropagationRef:x,required:n,defaultChecked:!y(h)&&h,isFormControl:z,bubbleInput:v,setBubbleInput:w};return(0,b.jsx)(o,{scope:d,...A,children:"function"==typeof q?q(A):f})}var r="CheckboxTrigger",s=c.forwardRef(({__scopeCheckbox:a,onKeyDown:e,onClick:g,...h},i)=>{let{control:j,value:l,disabled:m,checked:n,required:o,setControl:q,setChecked:s,hasConsumerStoppedPropagationRef:t,isFormControl:u,bubbleInput:v}=p(r,a),w=(0,d.useComposedRefs)(i,q),x=c.useRef(n);return c.useEffect(()=>{let a=j?.form;if(a){let b=()=>s(x.current);return a.addEventListener("reset",b),()=>a.removeEventListener("reset",b)}},[j,s]),(0,b.jsx)(k.Primitive.button,{type:"button",role:"checkbox","aria-checked":y(n)?"mixed":n,"aria-required":o,"data-state":z(n),"data-disabled":m?"":void 0,disabled:m,value:l,...h,ref:w,onKeyDown:(0,f.composeEventHandlers)(e,a=>{"Enter"===a.key&&a.preventDefault()}),onClick:(0,f.composeEventHandlers)(g,a=>{s(a=>!!y(a)||!a),v&&u&&(t.current=a.isPropagationStopped(),t.current||a.stopPropagation())})})});s.displayName=r;var t=c.forwardRef((a,c)=>{let{__scopeCheckbox:d,name:e,checked:f,defaultChecked:g,required:h,disabled:i,value:j,onCheckedChange:k,form:l,...m}=a;return(0,b.jsx)(q,{__scopeCheckbox:d,checked:f,defaultChecked:g,disabled:i,required:h,onCheckedChange:k,name:e,form:l,value:j,internal_do_not_use_render:({isFormControl:a})=>(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(s,{...m,ref:c,__scopeCheckbox:d}),a&&(0,b.jsx)(x,{__scopeCheckbox:d})]})})});t.displayName=l;var u="CheckboxIndicator",v=c.forwardRef((a,c)=>{let{__scopeCheckbox:d,forceMount:e,...f}=a,g=p(u,d);return(0,b.jsx)(j.Presence,{present:e||y(g.checked)||!0===g.checked,children:(0,b.jsx)(k.Primitive.span,{"data-state":z(g.checked),"data-disabled":g.disabled?"":void 0,...f,ref:c,style:{pointerEvents:"none",...a.style}})})});v.displayName=u;var w="CheckboxBubbleInput",x=c.forwardRef(({__scopeCheckbox:a,...e},f)=>{let{control:g,hasConsumerStoppedPropagationRef:j,checked:l,defaultChecked:m,required:n,disabled:o,name:q,value:r,form:s,bubbleInput:t,setBubbleInput:u}=p(w,a),v=(0,d.useComposedRefs)(f,u),x=(0,h.usePrevious)(l),z=(0,i.useSize)(g);c.useEffect(()=>{if(!t)return;let a=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set,b=!j.current;if(x!==l&&a){let c=new Event("click",{bubbles:b});t.indeterminate=y(l),a.call(t,!y(l)&&l),t.dispatchEvent(c)}},[t,x,l,j]);let A=c.useRef(!y(l)&&l);return(0,b.jsx)(k.Primitive.input,{type:"checkbox","aria-hidden":!0,defaultChecked:m??A.current,required:n,disabled:o,name:q,value:r,form:s,...e,tabIndex:-1,ref:v,style:{...e.style,...z,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});function y(a){return"indeterminate"===a}function z(a){return y(a)?"indeterminate":a?"checked":"unchecked"}x.displayName=w;var A=a.i(53520),B=a.i(64565);let C=c.forwardRef(({className:a,...c},d)=>(0,b.jsx)(t,{ref:d,className:(0,B.cn)("grid place-content-center peer h-4 w-4 shrink-0 rounded-sm border border-primary shadow focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground",a),...c,children:(0,b.jsx)(v,{className:(0,B.cn)("grid place-content-center text-current"),children:(0,b.jsx)(A.Check,{className:"h-4 w-4"})})}));C.displayName=t.displayName,a.s(["Checkbox",0,C],36890)},12537,a=>{"use strict";let b=(0,a.i(50053).default)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);a.s(["Pencil",0,b],12537)},81619,a=>{"use strict";let b=(0,a.i(50053).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);a.s(["Loader2",0,b],81619)},83917,a=>{"use strict";var b=a.i(53141);async function c(){return(await (0,b.apiGet)("/api/v1/llm/providers")).providers}async function d(a){return(await (0,b.apiGet)(`/api/v1/llm/providers/${encodeURIComponent(a)}`)).provider}async function e(a){return(await (0,b.apiPost)("/api/v1/llm/providers",a)).provider}async function f(a,c){return(await (0,b.apiPut)(`/api/v1/llm/providers/${encodeURIComponent(a)}`,c)).provider}async function g(a){await (0,b.apiDelete)(`/api/v1/llm/providers/${encodeURIComponent(a)}`)}async function h(a){return(await (0,b.apiGet)(`/api/v1/llm/providers/${encodeURIComponent(a)}/models`)).models}async function i(a){return(await (0,b.apiPost)(`/api/v1/llm/providers/${encodeURIComponent(a)}/test`)).result}a.s(["createProvider",0,e,"deleteProvider",0,g,"fetchProviderModels",0,h,"getProvider",0,d,"listProviders",0,c,"testProviderConnectivity",0,i,"updateProvider",0,f])},37255,a=>{"use strict";var b=a.i(83366),c=a.i(83917),d=a.i(25377),e=a.i(39096);a.s(["useLLMProviders",0,function(){let{context:a,ready:f}=(0,e.useRuntimeContext)();return(0,b.useQuery)({queryKey:d.queryKeys.llmProviders(a.dataScopeKey),queryFn:c.listProviders,enabled:f,staleTime:3e4})}])},24567,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(43836),e=a.i(76192),f=a.i(72518);a.s(["ConfirmDialog",0,function({open:a,onOpenChange:g,title:h,description:i,confirmText:j="确认",cancelText:k="取消",variant:l="default",onConfirm:m,confirmInput:n,children:o}){let[p,q]=(0,c.useState)(""),r=void 0!==n&&""!==n,s=r&&p!==n,t=(0,c.useCallback)(()=>{s||(m(),q(""))},[s,m]),u=(0,c.useCallback)(a=>{a||q(""),g(a)},[g]);return(0,b.jsx)(d.Dialog,{open:a,onOpenChange:u,children:(0,b.jsxs)(d.DialogContent,{className:"sm:max-w-120",children:[(0,b.jsxs)(d.DialogHeader,{children:[(0,b.jsx)(d.DialogTitle,{children:h}),(0,b.jsx)(d.DialogDescription,{className:"break-all",children:i})]}),r&&(0,b.jsxs)("div",{className:"py-2",children:[(0,b.jsxs)("p",{className:"mb-2 text-sm text-muted-foreground",children:["请输入 ",(0,b.jsx)("strong",{children:n})," 以确认操作"]}),(0,b.jsx)(f.Input,{value:p,onChange:a=>q(a.target.value),placeholder:n,autoFocus:!0})]}),o&&(0,b.jsx)("div",{className:"py-1",children:o}),(0,b.jsxs)(d.DialogFooter,{children:[(0,b.jsx)(e.Button,{variant:"outline",onClick:()=>u(!1),children:k}),(0,b.jsx)(e.Button,{variant:"danger"===l?"destructive":"default",onClick:t,disabled:s,children:j})]})]})})}])},16106,a=>{"use strict";let b=(0,a.i(50053).default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);a.s(["RotateCcw",0,b],16106)},89104,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(71562),e=a.i(71071),f=a.i(9380),g=a.i(76192),h=a.i(72518),i=a.i(92942),j=a.i(18236),k=a.i(99016),l=a.i(15325),m=a.i(64363),n=a.i(32191),o=a.i(87951);let p="你是基于知识库回答问题的助手。请严格依据下方「检索结果」作答;若检索结果未涵盖相关信息,请如实说明未在知识库中找到,不要编造。";a.s(["QaForm",0,function({knowledgeBaseName:a,knowledgeBase:q,onChange:r,onClearConversation:s,disabled:t}){let u=(0,c.useRef)(null),v=(0,d.useForm)({resolver:(0,e.zodResolver)(l.retrievalSchema),defaultValues:{...(0,k.retrievalDefaultsFromKB)(a,q),query:"__qa_placeholder__"}}),[w,x]=(0,c.useState)(""),[y,z]=(0,c.useState)(""),[A,B]=(0,c.useState)(.7),[C,D]=(0,c.useState)(p),E=v.watch(),F=JSON.stringify(E);return(0,c.useEffect)(()=>{if(!w||!y)return;let b=u.current?.getFilter(),c=(0,k.assembleRetrievalRequest)(a,{...E,query:"placeholder"},b);r({providerId:w,model:y,temperature:A,systemPrompt:C,rag:{knowledgeBases:[{knowledgeBaseName:a,...c.subspace?.length?{subspace:c.subspace}:{},...c.retrievalConfiguration?{retrievalConfiguration:c.retrievalConfiguration}:{}}]}})},[w,y,A,C,F,a]),(0,b.jsx)(i.Form,{...v,children:(0,b.jsxs)("form",{className:"space-y-5",onSubmit:a=>a.preventDefault(),children:[(0,b.jsxs)("div",{className:"space-y-4 rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--muted)/0.25)] p-4",children:[(0,b.jsx)(m.LLMModelSelector,{providerId:w,model:y,onProviderChange:(a,b)=>{x(a),z(b??"")},onModelChange:z,allowFreeText:!0,autoSelectFirst:!0,providerLabel:"大模型",modelLabel:"模型"}),(0,b.jsx)(o.TemperatureSlider,{value:A,onChange:B})]}),(0,b.jsx)(n.SystemPromptInput,{value:C,onChange:D,placeholder:p,helperText:"检索到的 chunks 会自动拼接在提示词之后作为上下文",rows:4}),(0,b.jsx)(i.FormField,{control:v.control,name:"query",render:()=>(0,b.jsxs)(i.FormItem,{className:"sr-only",children:[(0,b.jsx)(i.FormLabel,{children:"query placeholder"}),(0,b.jsx)(i.FormControl,{children:(0,b.jsx)(h.Input,{})}),(0,b.jsx)(i.FormMessage,{})]})}),(0,b.jsx)("div",{className:"space-y-5",children:(0,b.jsx)(j.RetrievalParamsFields,{form:v,knowledgeBase:q,filterRef:u,topKLabel:"检索 TopK"})}),(0,b.jsxs)("p",{className:"flex items-center gap-1 text-xs text-muted-foreground",children:[(0,b.jsx)(f.Search,{className:"h-3 w-3"}),"每轮用户消息都会触发一次检索,结果注入系统提示词"]}),(0,b.jsx)(g.Button,{type:"button",variant:"outline",className:"w-full",disabled:t,onClick:s,children:"清空对话"})]})})}])},93693,a=>a.a(async(b,c)=>{try{var d=a.i(34020),e=a.i(71938),f=a.i(99443),g=a.i(57900),h=a.i(89104),i=a.i(33280),j=a.i(82424),k=a.i(9135),l=a.i(76446),m=b([g]);[g]=m.then?(await m)():m,a.s(["default",0,function({params:a}){let{name:b}=(0,e.use)(a),c=decodeURIComponent(b),{data:m}=(0,i.useKnowledgeBase)(c),n=(0,j.useActiveInstance)(),[o,p]=(0,e.useState)(null),q=(0,k.useQaChat)({activeInstance:n.activeInstance,providerId:o?.providerId??"",model:o?.model??"",systemPrompt:o?.systemPrompt??"",temperature:o?.temperature??.7,rag:o?.rag}),r=n.ready&&!!(o?.providerId&&o?.model),s=(0,e.useCallback)((a,b)=>{q.editUserMessage(a,b),q.reissueTurn(a)},[q]),t=(0,e.useCallback)(a=>{let b=(0,l.findUserAnchorAbove)(q.messages,a);b&&q.reissueTurn(b.id)},[q]);return(0,d.jsx)(f.WorkbenchLayout,{aside:(0,d.jsx)(h.QaForm,{knowledgeBaseName:c,knowledgeBase:m,onChange:p,onClearConversation:q.clear,disabled:q.isStreaming}),children:(0,d.jsx)(g.QaChatPanel,{messages:q.messages,isStreaming:q.isStreaming,canSend:r,error:q.error,onSend:q.send,onStop:q.stop,onDelete:q.deleteMessage,onResend:q.reissueTurn,onRegenerate:t,onEditSave:s})})}]),c()}catch(a){c(a)}},!1),11097,a=>{a.v(b=>Promise.all(["server/chunks/ssr/0w08_streamdown_dist_highlighted-body-OFNGDK62_03c0toy.js"].map(b=>a.l(b))).then(()=>b(37971)))},91275,a=>{a.v(b=>Promise.all(["server/chunks/ssr/0w08_streamdown_dist_mermaid-GHXKKRXX_03ew1fz.js"].map(b=>a.l(b))).then(()=>b(91395)))}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0id.4_g._.js.map
|
package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0jb9ccl._.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[98018,a=>{"use strict";let b=(0,a.i(50053).default)("send",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]]);a.s(["Send",0,b],98018)},31710,a=>{"use strict";let b=(0,a.i(50053).default)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);a.s(["Square",0,b],31710)},31687,a=>{"use strict";let b=(0,a.i(50053).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);a.s(["AlertCircle",0,b],31687)},42210,a=>{"use strict";let b=(0,a.i(50053).default)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);a.s(["BookOpen",0,b],42210)},42216,a=>a.a(async(b,c)=>{try{let b=await a.y("shiki-2963fa3a20578463");a.n(b),c()}catch(a){c(a)}},!0),23195,a=>a.a(async(b,c)=>{try{let b=await a.y("shiki-2963fa3a20578463/engine/javascript");a.n(b),c()}catch(a){c(a)}},!0),28778,a=>a.a(async(b,c)=>{try{var d=a.i(42216),e=a.i(23195),f=b([d,e]);[d,e]=f.then?(await f)():f;var g=(0,e.createJavaScriptRegexEngine)({forgiving:!0}),h=Object.fromEntries(d.bundledLanguagesInfo.flatMap(a=>{var b;return(null!=(b=a.aliases)?b:[]).map(b=>[b,a.id])})),i=new Set(Object.keys(d.bundledLanguages)),j=a=>{let b=a.trim().toLowerCase();return h[b]||(i.has(b),b)},k=new Map,l=new Map,m=new Map,n=a=>{var b;return"string"==typeof a?a:null!=(b=a.name)?b:"custom"},o=function(a={}){var b;let c=null!=(b=a.themes)?b:["github-light","github-dark"];return{name:"shiki",type:"code-highlighter",supportsLanguage(a){let b=j(a);return i.has(b)},getSupportedLanguages:()=>Array.from(i),getThemes:()=>c,highlight({code:a,language:b,themes:c},e){let f,h,o=j(b),p=[n(c[0]),n(c[1])],q=(f=a.slice(0,100),h=a.length>100?a.slice(-100):"",`${o}:${p[0]}:${p[1]}:${a.length}:${f}:${h}`);if(l.has(q))return l.get(q);e&&(m.has(q)||m.set(q,new Set),m.get(q).add(e));let r=i.has(o)?o:"text";return((a,b)=>{let c=`${a}-${n(b[0])}-${n(b[1])}`;if(k.has(c))return k.get(c);let e=(0,d.createHighlighter)({themes:b,langs:[a],engine:g});return k.set(c,e),e})(r,c).then(b=>{let c=b.getLoadedLanguages().includes(o)?o:"text",d=b.codeToTokens(a,{lang:c,themes:{light:p[0],dark:p[1]}});l.set(q,d);let e=m.get(q);if(e){for(let a of e)a(d);m.delete(q)}}).catch(a=>{console.error("[Streamdown Code] Failed to highlight code:",a),m.delete(q)}),null}}}();a.s(["code",0,o]),c()}catch(a){c(a)}},!1),26925,a=>{"use strict";a.i(2617),a.s([])},46400,a=>{"use strict";var b=a.i(2617);a.s(["Streamdown",()=>b.C])},93280,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(53520),e=a.i(16772),f=a.i(64565);a.s(["CodeBlock",0,function({className:a,children:g,node:h,...i}){let j=(0,c.useRef)(null),[k,l]=(0,c.useState)(!1),m=function(a){for(let b of c.Children.toArray(a)){if(!(0,c.isValidElement)(b))continue;let a=b.props;if("string"!=typeof a?.className)continue;let d=a.className.match(/language-([a-z0-9+#-]+)/i);if(d)return d[1]}}(g)??"",n=(0,c.useCallback)(async()=>{let a=j.current?.innerText??"";if(a)try{await navigator.clipboard.writeText(a),l(!0),window.setTimeout(()=>l(!1),2e3)}catch{}},[]);return(0,b.jsxs)("div",{className:"group relative my-2 overflow-hidden rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--muted)/0.5)]",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between border-b border-[hsl(var(--border))] bg-[hsl(var(--muted)/0.8)] px-3 py-1.5",children:[(0,b.jsx)("span",{className:"font-mono text-[11px] uppercase tracking-wide text-muted-foreground",children:m||"text"}),(0,b.jsx)("button",{type:"button",onClick:n,className:(0,f.cn)("inline-flex items-center gap-1 rounded px-2 py-0.5 text-[11px] text-muted-foreground","opacity-0 transition-opacity hover:bg-[hsl(var(--accent))] hover:text-foreground","group-hover:opacity-100 focus-visible:opacity-100",k&&"opacity-100 text-primary"),"aria-label":"复制代码",children:k?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(d.Check,{className:"h-3 w-3"}),"已复制"]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(e.Copy,{className:"h-3 w-3"}),"复制"]})})]}),(0,b.jsx)("pre",{ref:j,className:(0,f.cn)("overflow-x-auto p-3 text-xs leading-relaxed","[&_code]:bg-transparent [&_code]:p-0",a),...i,children:g})]})}])},13562,a=>a.a(async(b,c)=>{try{var d=a.i(34020),e=a.i(28778);a.i(26925);var f=a.i(46400),g=a.i(64565),h=a.i(93280),i=b([e]);[e]=i.then?(await i)():i;let j=["https://","http://","mailto:","#","/"],k=["https://","data:image/"],l=(a,b)=>{let c=a.toLowerCase();return("src"===b?k:j).some(a=>c.startsWith(a))?a:""};a.s(["Markdown",0,function({children:a,className:b}){return(0,d.jsx)("div",{className:(0,g.cn)("text-sm leading-relaxed text-foreground/90","[&_p]:my-2 [&_ul]:my-2 [&_ol]:my-2 [&_li]:my-0.5","[&_ul]:list-disc [&_ul]:pl-5 [&_ol]:list-decimal [&_ol]:pl-5","[&_h1]:mt-4 [&_h1]:mb-2 [&_h1]:text-lg [&_h1]:font-semibold","[&_h2]:mt-3 [&_h2]:mb-2 [&_h2]:text-base [&_h2]:font-semibold","[&_h3]:mt-3 [&_h3]:mb-1.5 [&_h3]:text-sm [&_h3]:font-semibold","[&_a]:text-primary [&_a]:underline [&_a]:underline-offset-2","[&_:not(pre)>code]:rounded [&_:not(pre)>code]:bg-[hsl(var(--muted))] [&_:not(pre)>code]:px-1 [&_:not(pre)>code]:py-0.5 [&_:not(pre)>code]:text-[0.85em]","[&_table]:my-2 [&_table]:w-full [&_table]:border-collapse","[&_th]:border [&_th]:border-[hsl(var(--border))] [&_th]:px-2 [&_th]:py-1 [&_th]:text-left [&_th]:font-semibold","[&_td]:border [&_td]:border-[hsl(var(--border))] [&_td]:px-2 [&_td]:py-1","[&_blockquote]:my-2 [&_blockquote]:border-l-2 [&_blockquote]:border-[hsl(var(--border))] [&_blockquote]:pl-3 [&_blockquote]:text-muted-foreground","[&_hr]:my-3 [&_hr]:border-[hsl(var(--border))]",b),children:(0,d.jsx)(f.Streamdown,{parseIncompleteMarkdown:!0,skipHtml:!0,urlTransform:l,plugins:{code:e.code},components:{pre:h.CodeBlock},controls:{code:!1,table:!1,mermaid:!1},children:a})})}]),c()}catch(a){c(a)}},!1),73570,a=>a.a(async(b,c)=>{try{var d=a.i(34020),e=a.i(71938),f=a.i(31687),g=a.i(37102),h=a.i(42210),i=a.i(47845),j=a.i(1927),k=a.i(16772),l=a.i(12537),m=a.i(16106),n=a.i(9380),o=a.i(98018),p=a.i(55295),q=a.i(63265),r=a.i(76192),s=a.i(36890),t=a.i(27692),u=a.i(70535),v=a.i(24567),w=a.i(64565),x=a.i(13562),y=b([x]);[x]=y.then?(await y)():y;let J=(0,e.memo)(function({message:a,busy:b,onDelete:c,onResend:e,onRegenerate:f,onEditSave:g}){return"user"===a.role?(0,d.jsx)(D,{message:a,busy:b,onDelete:c,onResend:e,onEditSave:g}):(0,d.jsx)(E,{message:a,busy:b,onDelete:c,onRegenerate:f})},(a,b)=>a.message===b.message&&a.busy===b.busy);function z({align:a,disabled:b,onCopy:c,onDelete:e,onEdit:f,onResend:g,onRegenerate:h}){return(0,d.jsxs)("div",{className:(0,w.cn)("mt-1 flex items-center gap-0.5 opacity-0 transition-opacity duration-150","group-hover:opacity-100 group-focus-within:opacity-100","group-data-[touched=true]:opacity-100","right"===a?"justify-end":"justify-start"),children:[(0,d.jsx)(A,{title:"复制",disabled:b,onClick:c,children:(0,d.jsx)(k.Copy,{className:"h-3.5 w-3.5"})}),f&&(0,d.jsx)(A,{title:"编辑",disabled:b,onClick:f,children:(0,d.jsx)(l.Pencil,{className:"h-3.5 w-3.5"})}),g&&(0,d.jsx)(A,{title:"重新发送",disabled:b,onClick:g,children:(0,d.jsx)(o.Send,{className:"h-3.5 w-3.5"})}),h&&(0,d.jsx)(A,{title:"重新生成",disabled:b,onClick:h,children:(0,d.jsx)(m.RotateCcw,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(A,{title:"删除",disabled:b,onClick:e,destructive:!0,children:(0,d.jsx)(p.Trash2,{className:"h-3.5 w-3.5"})})]})}function A({title:a,disabled:b,destructive:c,onClick:e,children:f}){return(0,d.jsx)(r.Button,{type:"button",variant:"ghost",size:"icon",title:a,"aria-label":a,disabled:b,onClick:e,className:(0,w.cn)("h-7 w-7 text-muted-foreground hover:text-foreground",c&&"hover:text-[hsl(var(--destructive))] hover:bg-[hsl(var(--destructive))]/10"),children:f})}function B({rewriteFailed:a,rewriteError:b,failedKbCount:c,failedKbDetails:e}){let f=!!a,g=(c??0)>0;return f||g?(0,d.jsxs)("div",{className:"space-y-1.5",children:[f&&(0,d.jsx)(C,{label:"意图重写失败 · 已回退到原问题",detail:b??"rewriter 返回空结果或抛错"}),g&&e&&(0,d.jsx)(C,{label:`${c} 个知识库检索失败`,detail:e.map(a=>`• ${a.name}: ${a.reason}`).join("\n")})]}):null}function C({label:a,detail:b}){let[c,f]=(0,e.useState)(!1);return(0,d.jsxs)("div",{className:"rounded-md border border-amber-500/30 bg-amber-500/5",children:[(0,d.jsxs)("button",{type:"button",onClick:()=>f(a=>!a),className:(0,w.cn)("flex w-full items-center gap-1.5 px-2 py-1 text-xs","text-amber-700 hover:bg-amber-500/10 dark:text-amber-300"),children:[(0,d.jsx)(g.AlertTriangle,{className:"h-3.5 w-3.5 shrink-0"}),(0,d.jsx)("span",{className:"flex-1 text-left",children:a}),(0,d.jsx)(j.ChevronDown,{className:(0,w.cn)("h-3 w-3 opacity-60 transition-transform duration-150",c&&"rotate-180")})]}),c&&(0,d.jsx)("pre",{className:"border-t border-amber-500/20 px-2 py-1.5 text-[11px] leading-relaxed text-amber-700/80 dark:text-amber-300/80 whitespace-pre-wrap font-mono",children:b})]})}function D({message:a,busy:b,onDelete:c,onResend:f,onEditSave:g}){let[h,i]=(0,e.useState)(!1),[j,k]=(0,e.useState)(!1),[l,m]=(0,e.useState)(a.content),[n,o]=(0,e.useState)(!1),[p,t]=(0,e.useState)(!1),[w,x]=(0,e.useState)(!0),y=(0,e.useCallback)(()=>{navigator.clipboard.writeText(a.content),q.toast.success("已复制")},[a.content]),A=(0,e.useCallback)(()=>{let b=l.trim();if(!b||b===a.content){k(!1),m(a.content);return}k(!1),g(a.id,b)},[l,a.content,a.id,g]),B=(0,e.useCallback)(()=>{m(a.content),k(!1)},[a.content]),C=(0,e.useCallback)(a=>{"Escape"===a.key?(a.preventDefault(),B()):"Enter"===a.key&&(a.metaKey||a.ctrlKey)&&(a.preventDefault(),A())},[A,B]);return(0,d.jsxs)("div",{className:"group flex justify-end","data-touched":h?"true":void 0,onClickCapture:()=>i(!0),children:[(0,d.jsxs)("div",{className:"flex max-w-[85%] flex-col items-end",children:[j?(0,d.jsxs)("div",{className:"w-full max-w-2xl rounded-2xl border border-[hsl(var(--primary))] bg-[hsl(var(--background))] p-2",children:[(0,d.jsx)(u.Textarea,{autoFocus:!0,value:l,onChange:a=>m(a.target.value),onKeyDown:C,className:"min-h-[80px] resize-y border-0 p-2 text-sm shadow-none focus-visible:ring-0"}),(0,d.jsxs)("div",{className:"mt-1 flex justify-end gap-2",children:[(0,d.jsx)(r.Button,{type:"button",variant:"ghost",size:"sm",onClick:B,children:"取消"}),(0,d.jsx)(r.Button,{type:"button",size:"sm",disabled:!l.trim()||l.trim()===a.content,onClick:A,children:"保存并重发"})]})]}):(0,d.jsx)("div",{className:"rounded-2xl rounded-tr-sm bg-[hsl(var(--muted)/0.7)] px-4 py-2.5 text-sm leading-relaxed text-foreground whitespace-pre-wrap",children:a.content}),!j&&(0,d.jsx)(z,{align:"right",disabled:b,onCopy:y,onEdit:()=>{m(a.content),k(!0)},onResend:()=>t(!0),onDelete:()=>o(!0)})]}),(0,d.jsx)(v.ConfirmDialog,{open:n,onOpenChange:o,title:"删除此消息?",description:"该操作不可撤销。",confirmText:"删除",variant:"danger",onConfirm:()=>{c(a.id,{withNextAssistant:w}),o(!1)},children:(0,d.jsxs)("label",{className:"flex items-center gap-2 text-sm text-foreground",children:[(0,d.jsx)(s.Checkbox,{checked:w,onCheckedChange:a=>x(!0===a)}),"同时删除下方的 AI 回复"]})}),(0,d.jsx)(v.ConfirmDialog,{open:p,onOpenChange:t,title:"重新发送此消息?",description:"将丢弃下方所有消息并重新生成回答。",confirmText:"重新发送",onConfirm:()=>{t(!1),f(a.id)}})]})}function E({message:a,busy:b,onDelete:c,onRegenerate:g}){let[h,i]=(0,e.useState)(!1),[j,k]=(0,e.useState)(!1),[l,m]=(0,e.useState)(!1),o="streaming"===a.status,p="error"===a.status,r=(a.reasoning?.length??0)>0,s=(a.content?.length??0)>0,t=r||o&&!s,u=!!a.usingRag&&!a.retrievalQuery,w=!!a.retrievalQuery&&!a.retrievedChunks,y=(a.retrievalGroups??[]).filter(a=>a.error).map(a=>({name:a.knowledgeBaseName,reason:a.error??""})),A=(0,e.useCallback)(()=>{navigator.clipboard.writeText(a.content),q.toast.success("已复制")},[a.content]);return(0,d.jsxs)("div",{className:"group space-y-3 text-sm leading-relaxed","data-touched":h?"true":void 0,onClickCapture:()=>i(!0),children:[t?(0,d.jsx)(F,{reasoning:a.reasoning??"",streaming:o,startedAt:a.reasoningStartedAt,completedAt:a.reasoningCompletedAt,intentExtracting:u,retrievalInFlight:w}):null,(0,d.jsx)(B,{rewriteFailed:a.queryRewriteFailed,rewriteError:a.queryRewriteError,failedKbCount:y.length,failedKbDetails:y}),a.retrievalQueryRewritten&&a.retrievalQuery?(0,d.jsxs)("div",{className:"inline-flex max-w-full items-center gap-1.5 rounded-md bg-[hsl(var(--muted)/0.4)] px-2 py-1 text-xs text-muted-foreground",children:[(0,d.jsx)(n.Search,{className:"h-3 w-3 shrink-0"}),(0,d.jsx)("span",{className:"font-medium shrink-0",children:"检索关键词:"}),(0,d.jsx)("span",{className:"truncate font-mono text-foreground/80",children:a.retrievalQuery})]}):null,a.retrievedChunks&&a.retrievedChunks.length>0?(0,d.jsx)(G,{chunks:a.retrievedChunks,groups:a.retrievalGroups}):null,p?(0,d.jsxs)("div",{className:"flex items-start gap-2 rounded-md border border-[hsl(var(--destructive))/0.3] bg-[hsl(var(--destructive))/0.05] px-3 py-2 text-[hsl(var(--destructive))]",children:[(0,d.jsx)(f.AlertCircle,{className:"mt-0.5 h-4 w-4 shrink-0"}),(0,d.jsx)("span",{className:"text-xs",children:a.errorMessage??"生成失败"})]}):(0,d.jsxs)("div",{className:"text-foreground/90",children:[(0,d.jsx)(x.Markdown,{children:a.content}),o?(0,d.jsx)("span",{className:"ml-0.5 inline-block h-3.5 w-1.5 animate-pulse bg-foreground align-baseline"}):null]}),(0,d.jsx)(z,{align:"left",disabled:b||o,onCopy:A,onRegenerate:()=>m(!0),onDelete:()=>k(!0)}),(0,d.jsx)(v.ConfirmDialog,{open:j,onOpenChange:k,title:"删除此回复?",description:"该操作不可撤销。",confirmText:"删除",variant:"danger",onConfirm:()=>{c(a.id),k(!1)}}),(0,d.jsx)(v.ConfirmDialog,{open:l,onOpenChange:m,title:"重新生成此回复?",description:"将丢弃下方所有消息并重新生成。",confirmText:"重新生成",onConfirm:()=>{m(!1),g(a.id)}})]})}function F({reasoning:a,streaming:b,startedAt:c,completedAt:f,intentExtracting:g,retrievalInFlight:h}){var k,l;let m,n,o,[p,q]=(0,e.useState)(!1),r=function(a,b){let[c,d]=(0,e.useState)(()=>Date.now());return((0,e.useEffect)(()=>{if(!a||b)return;let c=window.setInterval(()=>d(Date.now()),250);return()=>window.clearInterval(c)},[a,b]),a)?Math.max(0,(b??c)-a):null}(c,f),s=null!=r?(k=r,l=!b||!!f,m=Math.floor(k/1e3),n=Math.floor(m/60),o=m%60,l?0===n?`用时 ${o} 秒`:`用时 ${n} 分 ${o} 秒`:`${n}:${String(o).padStart(2,"0")}`):null,u=b&&!f,v=a.length>0,x="正在思考";return v?x="深度思考中":h?x="正在检索知识库":g&&(x="检索意图提取"),(0,d.jsxs)(t.Collapsible,{open:p,onOpenChange:q,children:[(0,d.jsx)(t.CollapsibleTrigger,{asChild:!0,children:(0,d.jsxs)("button",{type:"button",disabled:!v,className:(0,w.cn)("group inline-flex items-center gap-2 rounded-full pl-1.5 pr-2.5 py-1 text-xs font-medium transition-all duration-200",u?"bg-[hsl(var(--primary)/0.08)] text-[hsl(var(--primary))] ring-1 ring-[hsl(var(--primary)/0.25)] shadow-[0_0_0_4px_hsl(var(--primary)/0.06)]":"bg-[hsl(var(--muted)/0.6)] text-muted-foreground hover:bg-[hsl(var(--accent))] hover:text-foreground",!v&&"cursor-default"),"aria-live":u?"polite":"off",children:[(0,d.jsxs)("span",{className:"relative inline-flex h-5 w-5 items-center justify-center",children:[u&&(0,d.jsx)("span",{"aria-hidden":!0,className:"absolute inset-0 rounded-full bg-[hsl(var(--primary))] opacity-40 blur-[6px] animate-thinking-aurora"}),(0,d.jsx)(i.Brain,{className:(0,w.cn)("relative h-3.5 w-3.5",u&&"animate-thinking-icon text-[hsl(var(--primary))]")})]}),u?(0,d.jsx)("span",{className:"animate-text-shimmer bg-[linear-gradient(90deg,hsl(var(--primary)/0.55)_0%,hsl(var(--primary))_50%,hsl(var(--primary)/0.55)_100%)] bg-[length:200%_100%] bg-clip-text text-transparent",children:x}):(0,d.jsx)("span",{children:"已深度思考"}),s&&(0,d.jsxs)("span",{className:(0,w.cn)("tabular-nums text-[11px]",u?"text-[hsl(var(--primary)/0.75)]":"text-muted-foreground/80"),children:["· ",s]}),v&&(0,d.jsx)(j.ChevronDown,{className:(0,w.cn)("h-3 w-3 opacity-60 transition-transform duration-200",p&&"rotate-180",u&&"text-[hsl(var(--primary))]")})]})}),v&&(0,d.jsx)(t.CollapsibleContent,{children:(0,d.jsx)("div",{className:"mt-2 border-l-2 border-[hsl(var(--border))] pl-3 text-xs leading-relaxed text-muted-foreground whitespace-pre-wrap",children:a})})]})}function G({chunks:a,groups:b}){let[c,f]=(0,e.useState)(!1),g=new Map;a.forEach((a,b)=>{g.set(`${a.docId}#${a.chunkId}`,b+1)});let i=(b??[]).filter(a=>!a.error),k=(b??[]).filter(a=>a.error),l=i.length>=2||k.length>0;return(0,d.jsxs)(t.Collapsible,{open:c,onOpenChange:f,children:[(0,d.jsx)(t.CollapsibleTrigger,{asChild:!0,children:(0,d.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1.5 rounded-md px-2 py-1 text-xs text-muted-foreground transition-colors hover:bg-[hsl(var(--accent))] hover:text-foreground",children:[(0,d.jsx)(h.BookOpen,{className:"h-3.5 w-3.5"}),"查看 ",a.length," 个引用",l?(0,d.jsxs)("span",{className:"text-muted-foreground/70",children:["· ",i.length," 个知识库",k.length>0?`(${k.length} 失败)`:""]}):null,(0,d.jsx)(j.ChevronDown,{className:(0,w.cn)("h-3 w-3 transition-transform duration-200",c&&"rotate-180")})]})}),(0,d.jsx)(t.CollapsibleContent,{children:(0,d.jsx)("div",{className:"mt-2 space-y-3",children:l?(0,d.jsxs)(d.Fragment,{children:[i.map(a=>(0,d.jsx)(H,{group:a,indexByKey:g},`ok-${a.knowledgeBaseName}`)),k.map(a=>(0,d.jsxs)("div",{className:"rounded-md border border-[hsl(var(--destructive))/0.3] bg-[hsl(var(--destructive))/0.05] px-3 py-2 text-xs text-[hsl(var(--destructive))]",children:[(0,d.jsx)("span",{className:"font-medium",children:a.knowledgeBaseName}),(0,d.jsxs)("span",{className:"ml-2 text-[hsl(var(--destructive))/0.8]",children:["检索失败:",a.error]})]},`err-${a.knowledgeBaseName}`))]}):(0,d.jsx)("div",{className:"space-y-2",children:a.map((a,b)=>(0,d.jsx)(I,{chunk:a,index:b+1},`${a.docId}-${a.chunkId}`))})})})]})}function H({group:a,indexByKey:b}){return(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 text-xs font-medium text-muted-foreground",children:[(0,d.jsx)("span",{className:"text-foreground/80",children:a.knowledgeBaseName}),(0,d.jsxs)("span",{children:["· ",a.chunks.length," 条"]})]}),(0,d.jsx)("div",{className:"space-y-2 border-l-2 border-[hsl(var(--border))] pl-3",children:a.chunks.map(a=>{let c=`${a.docId}#${a.chunkId}`,e=b.get(c)??0;return(0,d.jsx)(I,{chunk:a,index:e},`${a.docId}-${a.chunkId}`)})})]})}function I({chunk:a,index:b}){let c=a.ossKey?.split("/").pop()||a.ossKey||"未知文件";return(0,d.jsxs)("div",{className:"rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--muted)/0.3)] p-3",children:[(0,d.jsxs)("div",{className:"mb-1.5 flex items-center gap-2 text-xs text-muted-foreground",children:[(0,d.jsx)("span",{className:"inline-flex h-5 w-5 items-center justify-center rounded-full bg-[hsl(var(--primary-50))] font-semibold text-primary",children:b>0?b:"–"}),(0,d.jsx)("span",{className:"font-medium text-foreground/80",children:c}),(0,d.jsxs)("span",{children:["Chunk #",a.chunkId]}),(0,d.jsx)("span",{className:"ml-auto font-mono",children:a.score.toFixed(4)})]}),(0,d.jsx)("p",{className:"line-clamp-4 whitespace-pre-wrap text-xs text-foreground/80",children:a.content})]})}J.displayName="QaMessage",a.s(["QaMessage",0,J]),c()}catch(a){c(a)}},!1),57900,a=>a.a(async(b,c)=>{try{var d=a.i(34020),e=a.i(71938),f=a.i(88189),g=a.i(98018),h=a.i(31710),i=a.i(76192),j=a.i(70535),k=a.i(10215),l=a.i(64565),m=a.i(73570),n=b([m]);[m]=n.then?(await n)():n,a.s(["QaChatPanel",0,function({messages:a,isStreaming:b,canSend:c,error:n,onSend:o,onStop:p,onDelete:q,onResend:r,onRegenerate:s,onEditSave:t,emptyState:u,disabledPlaceholder:v}){let[w,x]=(0,e.useState)(""),y=(0,e.useRef)(null),z=(0,e.useRef)(a.length);(0,e.useEffect)(()=>{let b=y.current;if(!b)return;let c=a.length>z.current;(z.current=a.length,c)?requestAnimationFrame(()=>{b.scrollTo({top:b.scrollHeight,behavior:"smooth"})}):b.scrollHeight-b.scrollTop-b.clientHeight<120&&b.scrollTo({top:b.scrollHeight,behavior:"smooth"})},[a]);let A=()=>{let a=w.trim();a&&c&&!b&&(o(a),x(""))};return(0,d.jsxs)("div",{className:"flex h-full flex-col rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--surface))]",children:[(0,d.jsx)("div",{ref:y,role:"log","aria-live":"polite","aria-relevant":"additions text","aria-busy":b,className:"flex-1 space-y-6 overflow-y-auto px-6 py-5",children:0===a.length?(0,d.jsx)("div",{className:"flex h-full min-h-[320px] items-center justify-center",children:(0,d.jsx)(k.EmptyState,{icon:f.MessageSquare,title:u?.title??"开始对话",description:u?.description??"输入问题,系统会先从知识库检索相关内容,再让大模型基于检索结果回答",action:u?.actionLabel&&u?.onAction?(0,d.jsx)(i.Button,{type:"button",onClick:u.onAction,children:u.actionLabel}):void 0})}):a.map(a=>(0,d.jsx)(m.QaMessage,{message:a,busy:b,onDelete:q,onResend:r,onRegenerate:s,onEditSave:t},a.id))}),(0,d.jsxs)("div",{className:"border-t border-[hsl(var(--border))] bg-[hsl(var(--surface)/0.6)] px-4 py-3",children:[n&&(0,d.jsx)("p",{className:"mb-2 text-xs text-[hsl(var(--destructive))]",children:n}),(0,d.jsxs)("div",{className:"flex items-end gap-2",children:[(0,d.jsx)(j.Textarea,{value:w,onChange:a=>x(a.target.value),onKeyDown:a=>{"Enter"!==a.key||a.shiftKey||a.nativeEvent.isComposing||(a.preventDefault(),A())},placeholder:c?"输入问题,Enter 发送,Shift+Enter 换行":v??"请先在左侧选择模型...",disabled:!c,className:(0,l.cn)("min-h-[44px] max-h-40 resize-none text-sm"),rows:1}),b?(0,d.jsx)(i.Button,{type:"button",variant:"outline",size:"icon",onClick:p,title:"停止",children:(0,d.jsx)(h.Square,{className:"h-4 w-4 fill-current"})}):(0,d.jsx)(i.Button,{type:"button",size:"icon",disabled:!c||!w.trim(),onClick:A,title:"发送",children:(0,d.jsx)(g.Send,{className:"h-4 w-4"})})]})]})]})}]),c()}catch(a){c(a)}},!1),64363,32191,87951,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(81619),e=a.i(68826),f=a.i(76192),g=a.i(72518),h=a.i(62491),i=a.i(63525),j=a.i(37255),k=a.i(83366),l=a.i(83917),m=a.i(25377),n=a.i(39096);a.s(["LLMModelSelector",0,function({providerId:a,model:o,onProviderChange:p,onModelChange:q,allowFreeText:r=!1,autoSelectFirst:s=!1,providerLabel:t="Provider",modelLabel:u="Model"}){let{data:v=[],isLoading:w}=(0,j.useLLMProviders)(),{data:x,isFetching:y,refetch:z}=function(a,b={}){let{context:c,ready:d}=(0,n.useRuntimeContext)();return(0,k.useQuery)({queryKey:m.queryKeys.llmProviderModels(c.dataScopeKey,a),queryFn:()=>(0,l.fetchProviderModels)(a),enabled:d&&!!a&&(b.enabled??!0),staleTime:3e5,retry:!1})}(a||void 0,{enabled:!!a});(0,c.useEffect)(()=>{if(!s||a||0===v.length)return;let b=v[0];p(b.id,b.defaultModel??"")},[s,a,v]);let A=(0,c.useMemo)(()=>{let b=new Set;for(let a of(o&&b.add(o),x??[]))b.add(a.id);let c=v.find(b=>b.id===a);return c?.defaultModel&&b.add(c.defaultModel),Array.from(b)},[o,x,v,a]);return(0,b.jsxs)("div",{className:"space-y-4",children:[(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)(h.Label,{className:"text-sm font-medium",children:t}),(0,b.jsxs)(i.Select,{value:a,onValueChange:a=>{let b=v.find(b=>b.id===a);p(a,b?.defaultModel??"")},disabled:w||0===v.length,children:[(0,b.jsx)(i.SelectTrigger,{children:(0,b.jsx)(i.SelectValue,{placeholder:w?"加载中...":0===v.length?"请先在「大模型」中创建配置":"选择 Provider"})}),(0,b.jsx)(i.SelectContent,{children:v.map(a=>(0,b.jsx)(i.SelectItem,{value:a.id,children:a.name},a.id))})]})]}),(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsx)(h.Label,{className:"text-sm font-medium",children:u}),(0,b.jsxs)(f.Button,{type:"button",variant:"ghost",size:"sm",className:"h-6 px-2 text-xs",disabled:!a||y,onClick:()=>z(),children:[y?(0,b.jsx)(d.Loader2,{className:"mr-1 h-3 w-3 animate-spin"}):(0,b.jsx)(e.RefreshCw,{className:"mr-1 h-3 w-3"}),"刷新列表"]})]}),r?(0,b.jsxs)("div",{className:"flex gap-2",children:[(0,b.jsxs)(i.Select,{value:A.includes(o)?o:"",onValueChange:q,disabled:!a,children:[(0,b.jsx)(i.SelectTrigger,{className:"flex-1",children:(0,b.jsx)(i.SelectValue,{placeholder:"选择或输入模型名"})}),(0,b.jsx)(i.SelectContent,{children:0===A.length?(0,b.jsx)("div",{className:"px-3 py-2 text-xs text-muted-foreground",children:"点击「刷新列表」拉取可用模型"}):A.map(a=>(0,b.jsx)(i.SelectItem,{value:a,children:a},a))})]}),(0,b.jsx)(g.Input,{placeholder:"或手动输入",value:o,onChange:a=>q(a.target.value),className:"flex-1"})]}):(0,b.jsxs)(i.Select,{value:o,onValueChange:q,disabled:!a,children:[(0,b.jsx)(i.SelectTrigger,{children:(0,b.jsx)(i.SelectValue,{placeholder:"选择模型"})}),(0,b.jsx)(i.SelectContent,{children:0===A.length?(0,b.jsx)(i.SelectItem,{value:"__empty",disabled:!0,children:"无可用模型"}):A.map(a=>(0,b.jsx)(i.SelectItem,{value:a,children:a},a))})]})]})]})}],64363);var o=a.i(70535);a.s(["SystemPromptInput",0,function({value:a,onChange:c,placeholder:d,helperText:e,rows:f=3,label:g="系统提示词"}){return(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)(h.Label,{className:"text-sm font-medium",children:g}),(0,b.jsx)(o.Textarea,{rows:f,value:a,onChange:a=>c(a.target.value),placeholder:d,className:"text-sm"}),e&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:e})]})}],32191);var p=a.i(48972),q=a.i(59653),r=a.i(68189),s=a.i(84694),t=a.i(83370),u=a.i(74974),v=a.i(20251),w=a.i(66394),x=a.i(58036),y=a.i(17021),z=["PageUp","PageDown"],A=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"],B={"from-left":["Home","PageDown","ArrowDown","ArrowLeft"],"from-right":["Home","PageDown","ArrowDown","ArrowRight"],"from-bottom":["Home","PageDown","ArrowDown","ArrowLeft"],"from-top":["Home","PageDown","ArrowUp","ArrowLeft"]},C="Slider",[D,E,F]=(0,y.createCollection)(C),[G,H]=(0,s.createContextScope)(C,[F]),[I,J]=G(C),K=c.forwardRef((a,d)=>{let{name:e,min:f=0,max:g=100,step:h=1,orientation:i="horizontal",disabled:j=!1,minStepsBetweenThumbs:k=0,defaultValue:l=[f],value:m,onValueChange:n=()=>{},onValueCommit:o=()=>{},inverted:r=!1,form:s,...u}=a,v=c.useRef(new Set),w=c.useRef(0),x="horizontal"===i,[y=[],B]=(0,t.useControllableState)({prop:m,defaultProp:l,onChange:a=>{let b=[...v.current];b[w.current]?.focus(),n(a)}}),C=c.useRef(y);function E(a,b,{commit:c}={commit:!1}){let d,e=(String(h).split(".")[1]||"").length,i=Math.round((Math.round((a-f)/h)*h+f)*(d=Math.pow(10,e)))/d,j=(0,p.clamp)(i,[f,g]);B((a=[])=>{let d=function(a=[],b,c){let d=[...a];return d[c]=b,d.sort((a,b)=>a-b)}(a,j,b);if(!function(a,b){if(b>0)return Math.min(...a.slice(0,-1).map((b,c)=>a[c+1]-b))>=b;return!0}(d,k*h))return a;{w.current=d.indexOf(j);let b=String(d)!==String(a);return b&&c&&o(d),b?d:a}})}return(0,b.jsx)(I,{scope:a.__scopeSlider,name:e,disabled:j,min:f,max:g,valueIndexToChangeRef:w,thumbs:v.current,values:y,orientation:i,form:s,children:(0,b.jsx)(D.Provider,{scope:a.__scopeSlider,children:(0,b.jsx)(D.Slot,{scope:a.__scopeSlider,children:(0,b.jsx)(x?N:O,{"aria-disabled":j,"data-disabled":j?"":void 0,...u,ref:d,onPointerDown:(0,q.composeEventHandlers)(u.onPointerDown,()=>{j||(C.current=y)}),min:f,max:g,inverted:r,onSlideStart:j?void 0:function(a){let b=function(a,b){if(1===a.length)return 0;let c=a.map(a=>Math.abs(a-b)),d=Math.min(...c);return c.indexOf(d)}(y,a);E(a,b)},onSlideMove:j?void 0:function(a){E(a,w.current)},onSlideEnd:j?void 0:function(){let a=C.current[w.current];y[w.current]!==a&&o(y)},onHomeKeyDown:()=>!j&&E(f,0,{commit:!0}),onEndKeyDown:()=>!j&&E(g,y.length-1,{commit:!0}),onStepKeyDown:({event:a,direction:b})=>{if(!j){let c=z.includes(a.key)||a.shiftKey&&A.includes(a.key),d=w.current;E(y[d]+h*(c?10:1)*b,d,{commit:!0})}}})})})})});K.displayName=C;var[L,M]=G(C,{startEdge:"left",endEdge:"right",size:"width",direction:1}),N=c.forwardRef((a,d)=>{let{min:e,max:f,dir:g,inverted:h,onSlideStart:i,onSlideMove:j,onSlideEnd:k,onStepKeyDown:l,...m}=a,[n,o]=c.useState(null),p=(0,r.useComposedRefs)(d,a=>o(a)),q=c.useRef(void 0),s=(0,u.useDirection)(g),t="ltr"===s,v=t&&!h||!t&&h;function w(a){let b=q.current||n.getBoundingClientRect(),c=Z([0,b.width],v?[e,f]:[f,e]);return q.current=b,c(a-b.left)}return(0,b.jsx)(L,{scope:a.__scopeSlider,startEdge:v?"left":"right",endEdge:v?"right":"left",direction:v?1:-1,size:"width",children:(0,b.jsx)(P,{dir:s,"data-orientation":"horizontal",...m,ref:p,style:{...m.style,"--radix-slider-thumb-transform":"translateX(-50%)"},onSlideStart:a=>{let b=w(a.clientX);i?.(b)},onSlideMove:a=>{let b=w(a.clientX);j?.(b)},onSlideEnd:()=>{q.current=void 0,k?.()},onStepKeyDown:a=>{let b=B[v?"from-left":"from-right"].includes(a.key);l?.({event:a,direction:b?-1:1})}})})}),O=c.forwardRef((a,d)=>{let{min:e,max:f,inverted:g,onSlideStart:h,onSlideMove:i,onSlideEnd:j,onStepKeyDown:k,...l}=a,m=c.useRef(null),n=(0,r.useComposedRefs)(d,m),o=c.useRef(void 0),p=!g;function q(a){let b=o.current||m.current.getBoundingClientRect(),c=Z([0,b.height],p?[f,e]:[e,f]);return o.current=b,c(a-b.top)}return(0,b.jsx)(L,{scope:a.__scopeSlider,startEdge:p?"bottom":"top",endEdge:p?"top":"bottom",size:"height",direction:p?1:-1,children:(0,b.jsx)(P,{"data-orientation":"vertical",...l,ref:n,style:{...l.style,"--radix-slider-thumb-transform":"translateY(50%)"},onSlideStart:a=>{let b=q(a.clientY);h?.(b)},onSlideMove:a=>{let b=q(a.clientY);i?.(b)},onSlideEnd:()=>{o.current=void 0,j?.()},onStepKeyDown:a=>{let b=B[p?"from-bottom":"from-top"].includes(a.key);k?.({event:a,direction:b?-1:1})}})})}),P=c.forwardRef((a,c)=>{let{__scopeSlider:d,onSlideStart:e,onSlideMove:f,onSlideEnd:g,onHomeKeyDown:h,onEndKeyDown:i,onStepKeyDown:j,...k}=a,l=J(C,d);return(0,b.jsx)(x.Primitive.span,{...k,ref:c,onKeyDown:(0,q.composeEventHandlers)(a.onKeyDown,a=>{"Home"===a.key?(h(a),a.preventDefault()):"End"===a.key?(i(a),a.preventDefault()):z.concat(A).includes(a.key)&&(j(a),a.preventDefault())}),onPointerDown:(0,q.composeEventHandlers)(a.onPointerDown,a=>{let b=a.target;b.setPointerCapture(a.pointerId),a.preventDefault(),l.thumbs.has(b)?b.focus():e(a)}),onPointerMove:(0,q.composeEventHandlers)(a.onPointerMove,a=>{a.target.hasPointerCapture(a.pointerId)&&f(a)}),onPointerUp:(0,q.composeEventHandlers)(a.onPointerUp,a=>{let b=a.target;b.hasPointerCapture(a.pointerId)&&(b.releasePointerCapture(a.pointerId),g(a))})})}),Q="SliderTrack",R=c.forwardRef((a,c)=>{let{__scopeSlider:d,...e}=a,f=J(Q,d);return(0,b.jsx)(x.Primitive.span,{"data-disabled":f.disabled?"":void 0,"data-orientation":f.orientation,...e,ref:c})});R.displayName=Q;var S="SliderRange",T=c.forwardRef((a,d)=>{let{__scopeSlider:e,...f}=a,g=J(S,e),h=M(S,e),i=c.useRef(null),j=(0,r.useComposedRefs)(d,i),k=g.values.length,l=g.values.map(a=>Y(a,g.min,g.max)),m=k>1?Math.min(...l):0,n=100-Math.max(...l);return(0,b.jsx)(x.Primitive.span,{"data-orientation":g.orientation,"data-disabled":g.disabled?"":void 0,...f,ref:j,style:{...a.style,[h.startEdge]:m+"%",[h.endEdge]:n+"%"}})});T.displayName=S;var U="SliderThumb",V=c.forwardRef((a,d)=>{let e=E(a.__scopeSlider),[f,g]=c.useState(null),h=(0,r.useComposedRefs)(d,a=>g(a)),i=c.useMemo(()=>f?e().findIndex(a=>a.ref.current===f):-1,[e,f]);return(0,b.jsx)(W,{...a,ref:h,index:i})}),W=c.forwardRef((a,d)=>{var e,f,g,h,i;let j,k,{__scopeSlider:l,index:m,name:n,...o}=a,p=J(U,l),s=M(U,l),[t,u]=c.useState(null),v=(0,r.useComposedRefs)(d,a=>u(a)),y=!t||p.form||!!t.closest("form"),z=(0,w.useSize)(t),A=p.values[m],B=void 0===A?0:Y(A,p.min,p.max),C=(e=m,(f=p.values.length)>2?`Value ${e+1} of ${f}`:2===f?["Minimum","Maximum"][e]:void 0),E=z?.[s.size],F=E?(g=E,h=B,i=s.direction,k=Z([0,50],[0,j=g/2]),(j-k(h)*i)*i):0;return c.useEffect(()=>{if(t)return p.thumbs.add(t),()=>{p.thumbs.delete(t)}},[t,p.thumbs]),(0,b.jsxs)("span",{style:{transform:"var(--radix-slider-thumb-transform)",position:"absolute",[s.startEdge]:`calc(${B}% + ${F}px)`},children:[(0,b.jsx)(D.ItemSlot,{scope:a.__scopeSlider,children:(0,b.jsx)(x.Primitive.span,{role:"slider","aria-label":a["aria-label"]||C,"aria-valuemin":p.min,"aria-valuenow":A,"aria-valuemax":p.max,"aria-orientation":p.orientation,"data-orientation":p.orientation,"data-disabled":p.disabled?"":void 0,tabIndex:p.disabled?void 0:0,...o,ref:v,style:void 0===A?{display:"none"}:a.style,onFocus:(0,q.composeEventHandlers)(a.onFocus,()=>{p.valueIndexToChangeRef.current=m})})}),y&&(0,b.jsx)(X,{name:n??(p.name?p.name+(p.values.length>1?"[]":""):void 0),form:p.form,value:A},m)]})});V.displayName=U;var X=c.forwardRef(({__scopeSlider:a,value:d,...e},f)=>{let g=c.useRef(null),h=(0,r.useComposedRefs)(g,f),i=(0,v.usePrevious)(d);return c.useEffect(()=>{let a=g.current;if(!a)return;let b=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"value").set;if(i!==d&&b){let c=new Event("input",{bubbles:!0});b.call(a,d),a.dispatchEvent(c)}},[i,d]),(0,b.jsx)(x.Primitive.input,{style:{display:"none"},...e,ref:h,defaultValue:d})});function Y(a,b,c){return(0,p.clamp)(100/(c-b)*(a-b),[0,100])}function Z(a,b){return c=>{if(a[0]===a[1]||b[0]===b[1])return b[0];let d=(b[1]-b[0])/(a[1]-a[0]);return b[0]+d*(c-a[0])}}X.displayName="RadioBubbleInput";var $=a.i(64565);let _=c.forwardRef(({className:a,...c},d)=>(0,b.jsxs)(K,{ref:d,className:(0,$.cn)("relative flex w-full touch-none select-none items-center",a),...c,children:[(0,b.jsx)(R,{className:"relative h-1.5 w-full grow overflow-hidden rounded-full bg-[hsl(var(--muted))]",children:(0,b.jsx)(T,{className:"absolute h-full bg-[hsl(var(--primary))]"})}),(0,b.jsx)(V,{className:"block h-4 w-4 rounded-full border border-[hsl(var(--primary))] bg-[hsl(var(--background))] shadow-sm ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50"})]}));_.displayName=K.displayName,a.s(["TemperatureSlider",0,function({value:a,onChange:c,min:d=0,max:e=2,step:f=.05,fallback:g=.7,label:h="温度"}){let i=(a??g).toFixed(2);return(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between text-sm",children:[(0,b.jsx)("span",{className:"font-medium",children:h}),(0,b.jsx)("span",{className:"font-mono text-xs text-muted-foreground",children:i})]}),(0,b.jsx)(_,{value:[a??g],min:d,max:e,step:f,onValueChange:a=>c(a[0]??g)})]})}],87951)},82424,a=>{"use strict";var b=a.i(39096);a.s(["useActiveInstance",0,function(){let{context:a,ready:c}=(0,b.useRuntimeContext)();return{activeInstance:a.activeInstance,ready:c,dataScopeKey:a.dataScopeKey,configRevision:a.configRevision}}])},83643,a=>{"use strict";a.s(["newId",0,function(a="id"){return"u">typeof crypto&&"randomUUID"in crypto?crypto.randomUUID():`${a}_${Date.now()}_${Math.random().toString(36).slice(2)}`}])},76446,a=>{"use strict";a.s(["findUserAnchorAbove",0,function(a,b){let c=a.findIndex(a=>a.id===b);if(c<0)return null;for(let b=c-1;b>=0;b-=1)if("user"===a[b].role)return a[b];return null},"removeAt",0,function(a,b){let c=a.findIndex(a=>a.id===b);if(c<0)return a;let d=a.slice();return d.splice(c,1),d},"removePair",0,function(a,b){let c=a.findIndex(a=>a.id===b);if(c<0)return a;let d=a.slice(),e=a[c+1]&&"assistant"===a[c+1].role?2:1;return d.splice(c,e),d},"truncateUpToAndIncluding",0,function(a,b){let c=a.findIndex(a=>a.id===b);return c<0?a:a.slice(0,c+1)}])},9135,a=>{"use strict";var b=a.i(71938);async function*c(a,b){let c=await fetch("/api/v1/llm/chat",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a),signal:b});if(!c.ok||!c.body){let a=`Chat request failed with status ${c.status}`,b="STREAM_ERROR";try{let d=await c.json();a=d.message??a,b=d.code??b}catch{}yield{type:"error",code:b,message:a};return}let e=c.body.getReader(),f=new TextDecoder("utf-8"),g="";for(;;){let{value:a,done:b}=await e.read();if(b)break;let c=(g+=f.decode(a,{stream:!0})).indexOf("\n\n");for(;-1!==c;){let a=g.slice(0,c);g=g.slice(c+2);let b=d(a);b&&(yield b),c=g.indexOf("\n\n")}}if(g.trim()){let a=d(g);a&&(yield a)}}function d(a){let b=a.split("\n"),c=[];for(let a of b)!(!a||a.startsWith(":"))&&a.startsWith("data:")&&c.push(a.slice(5).trimStart());if(0===c.length)return null;try{return JSON.parse(c.join("\n"))}catch{return null}}var e=a.i(83643),f=a.i(76446);a.s(["useQaChat",0,function(a){let[d,g]=(0,b.useState)([]),[h,i]=(0,b.useState)(!1),[j,k]=(0,b.useState)(null),l=(0,b.useRef)(null),m=(0,b.useRef)(a.onPersist);m.current=a.onPersist;let n=(0,b.useRef)(d);n.current=d;let o=(0,b.useRef)(a);o.current=a;let p=(0,b.useRef)(h);p.current=h;let q=(0,b.useRef)(new Map),r=(0,b.useRef)(null),s=(0,b.useCallback)(()=>{r.current=null;let a=q.current;if(0===a.size)return;let b=new Map(a);a.clear(),g(a=>a.map(a=>{let c=b.get(a.id);return c?{...a,...c.content?{content:a.content+c.content}:null,...c.reasoning?{reasoning:(a.reasoning??"")+c.reasoning}:null}:a}))},[]),t=(0,b.useCallback)(()=>{if(null===r.current){if("u"<typeof requestAnimationFrame)return void s();r.current=requestAnimationFrame(s)}},[s]),u=(0,b.useCallback)(()=>{null!==r.current&&"u">typeof cancelAnimationFrame&&cancelAnimationFrame(r.current),r.current=null},[]);(0,b.useEffect)(()=>u,[u]);let v=(0,b.useCallback)(()=>{l.current?.abort()},[]),w=(0,b.useCallback)(()=>{l.current?.abort(),n.current=[],g([]),k(null)},[]),x=(0,b.useCallback)(a=>{l.current?.abort(),n.current=a,g(a),k(null)},[]),y=(0,b.useCallback)(async(a,b)=>{let d=o.current,e=new AbortController;l.current=e;let f={current:!1},h={current:!1},j=b=>{g(c=>c.map(c=>c.id===a?{...c,...b}:c))};try{let g={activeInstance:d.activeInstance,providerId:d.providerId,model:d.model,messages:b,systemPrompt:d.systemPrompt,temperature:d.temperature,rag:d.rag};for await(let b of c(g,e.signal))if("query.rewritten"===b.type)j({retrievalQuery:b.query,retrievalQueryRewritten:b.query!==b.original});else if("query.fallback"===b.type)j({retrievalQuery:b.original,retrievalQueryRewritten:!1,queryRewriteFailed:!0,queryRewriteError:b.reason});else if("retrieval.done"===b.type)j({retrievedChunks:b.chunks,retrievalGroups:b.byKnowledgeBase});else if("reasoning.delta"===b.type){let c=q.current.get(a)??{};c.reasoning=(c.reasoning??"")+b.delta,q.current.set(a,c),f.current||(f.current=!0,j({reasoningStartedAt:Date.now()})),t()}else if("content.delta"===b.type){let c=q.current.get(a)??{};c.content=(c.content??"")+b.delta,q.current.set(a,c),f.current&&!h.current&&(h.current=!0,j({reasoningCompletedAt:Date.now()})),t()}else if("error"===b.type){u(),s();let a={status:"error",errorMessage:`${b.code}: ${b.message}`};f.current&&!h.current&&(a.reasoningCompletedAt=Date.now()),j(a),k(b.message);break}else if("done"===b.type){u(),s();let a={status:"done"};f.current&&!h.current&&(a.reasoningCompletedAt=Date.now()),j(a);break}}catch(c){u(),s();let a=c instanceof DOMException&&"AbortError"===c.name,b=f.current&&!h.current?{reasoningCompletedAt:Date.now()}:void 0;if(a)j({status:"done",...b});else{let a=c instanceof Error?c.message:String(c);j({status:"error",errorMessage:a,...b}),k(a)}}finally{i(!1),l.current=null;let a=m.current;a&&g(b=>(a(b),b))}},[t,s,u]),z=(0,b.useCallback)(async a=>{let b=a.trim();if(!b||p.current)return;let c=o.current;if(!c.providerId||!c.model)return void k("请先选择模型与 Provider");k(null);let d={id:(0,e.newId)(),role:"user",content:b,createdAt:Date.now(),status:"done"},f=(0,e.newId)(),h=(c.rag?.knowledgeBases?.length??0)>0,j={id:f,role:"assistant",content:"",reasoning:"",createdAt:Date.now(),status:"streaming",usingRag:h},l=[...n.current,d].map(a=>({role:a.role,content:a.content})),m=[...n.current,d,j];n.current=m,g(m),i(!0),await y(f,l)},[y]),A=(0,b.useCallback)(async a=>{if(p.current)return;let b=o.current;if(!b.providerId||!b.model)return void k("请先选择模型与 Provider");let c=(0,f.truncateUpToAndIncluding)(n.current,a),d=c[c.length-1];if(!d||"user"!==d.role)return;k(null);let h=(0,e.newId)(),j=(b.rag?.knowledgeBases?.length??0)>0,l={id:h,role:"assistant",content:"",reasoning:"",createdAt:Date.now(),status:"streaming",usingRag:j},m=c.map(a=>({role:a.role,content:a.content})),q=[...c,l];n.current=q,g(q),i(!0),await y(h,m)},[y]);return{messages:d,isStreaming:h,error:j,send:z,reissueTurn:A,deleteMessage:(0,b.useCallback)((a,b)=>{if(p.current)return;let c=n.current,d=c.find(b=>b.id===a);if(!d)return;let e="user"===d.role&&b?.withNextAssistant?(0,f.removePair)(c,a):(0,f.removeAt)(c,a);n.current=e,g(e),m.current?.(e)},[]),editUserMessage:(0,b.useCallback)((a,b)=>{let c=n.current,d=c.findIndex(b=>b.id===a);if(d<0||"user"!==c[d].role)return null;let e=c.slice();return e[d]={...c[d],content:b},n.current=e,g(e),a},[]),stop:v,clear:w,setMessages:x}}],9135)}];
|
|
1
|
+
module.exports=[98018,a=>{"use strict";let b=(0,a.i(50053).default)("send",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]]);a.s(["Send",0,b],98018)},31710,a=>{"use strict";let b=(0,a.i(50053).default)("square",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]]);a.s(["Square",0,b],31710)},31687,a=>{"use strict";let b=(0,a.i(50053).default)("circle-alert",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]]);a.s(["AlertCircle",0,b],31687)},42210,a=>{"use strict";let b=(0,a.i(50053).default)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);a.s(["BookOpen",0,b],42210)},42216,a=>a.a(async(b,c)=>{try{let b=await a.y("shiki-2963fa3a20578463");a.n(b),c()}catch(a){c(a)}},!0),23195,a=>a.a(async(b,c)=>{try{let b=await a.y("shiki-2963fa3a20578463/engine/javascript");a.n(b),c()}catch(a){c(a)}},!0),28778,a=>a.a(async(b,c)=>{try{var d=a.i(42216),e=a.i(23195),f=b([d,e]);[d,e]=f.then?(await f)():f;var g=(0,e.createJavaScriptRegexEngine)({forgiving:!0}),h=Object.fromEntries(d.bundledLanguagesInfo.flatMap(a=>{var b;return(null!=(b=a.aliases)?b:[]).map(b=>[b,a.id])})),i=new Set(Object.keys(d.bundledLanguages)),j=a=>{let b=a.trim().toLowerCase();return h[b]||(i.has(b),b)},k=new Map,l=new Map,m=new Map,n=a=>{var b;return"string"==typeof a?a:null!=(b=a.name)?b:"custom"},o=function(a={}){var b;let c=null!=(b=a.themes)?b:["github-light","github-dark"];return{name:"shiki",type:"code-highlighter",supportsLanguage(a){let b=j(a);return i.has(b)},getSupportedLanguages:()=>Array.from(i),getThemes:()=>c,highlight({code:a,language:b,themes:c},e){let f,h,o=j(b),p=[n(c[0]),n(c[1])],q=(f=a.slice(0,100),h=a.length>100?a.slice(-100):"",`${o}:${p[0]}:${p[1]}:${a.length}:${f}:${h}`);if(l.has(q))return l.get(q);e&&(m.has(q)||m.set(q,new Set),m.get(q).add(e));let r=i.has(o)?o:"text";return((a,b)=>{let c=`${a}-${n(b[0])}-${n(b[1])}`;if(k.has(c))return k.get(c);let e=(0,d.createHighlighter)({themes:b,langs:[a],engine:g});return k.set(c,e),e})(r,c).then(b=>{let c=b.getLoadedLanguages().includes(o)?o:"text",d=b.codeToTokens(a,{lang:c,themes:{light:p[0],dark:p[1]}});l.set(q,d);let e=m.get(q);if(e){for(let a of e)a(d);m.delete(q)}}).catch(a=>{console.error("[Streamdown Code] Failed to highlight code:",a),m.delete(q)}),null}}}();a.s(["code",0,o]),c()}catch(a){c(a)}},!1),26925,a=>{"use strict";a.i(2617),a.s([])},46400,a=>{"use strict";var b=a.i(2617);a.s(["Streamdown",()=>b.C])},93280,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(53520),e=a.i(16772),f=a.i(64565);a.s(["CodeBlock",0,function({className:a,children:g,node:h,...i}){let j=(0,c.useRef)(null),[k,l]=(0,c.useState)(!1),m=function(a){for(let b of c.Children.toArray(a)){if(!(0,c.isValidElement)(b))continue;let a=b.props;if("string"!=typeof a?.className)continue;let d=a.className.match(/language-([a-z0-9+#-]+)/i);if(d)return d[1]}}(g)??"",n=(0,c.useCallback)(async()=>{let a=j.current?.innerText??"";if(a)try{await navigator.clipboard.writeText(a),l(!0),window.setTimeout(()=>l(!1),2e3)}catch{}},[]);return(0,b.jsxs)("div",{className:"group relative my-2 overflow-hidden rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--muted)/0.5)]",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between border-b border-[hsl(var(--border))] bg-[hsl(var(--muted)/0.8)] px-3 py-1.5",children:[(0,b.jsx)("span",{className:"font-mono text-[11px] uppercase tracking-wide text-muted-foreground",children:m||"text"}),(0,b.jsx)("button",{type:"button",onClick:n,className:(0,f.cn)("inline-flex items-center gap-1 rounded px-2 py-0.5 text-[11px] text-muted-foreground","opacity-0 transition-opacity hover:bg-[hsl(var(--accent))] hover:text-foreground","group-hover:opacity-100 focus-visible:opacity-100",k&&"opacity-100 text-primary"),"aria-label":"复制代码",children:k?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(d.Check,{className:"h-3 w-3"}),"已复制"]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(e.Copy,{className:"h-3 w-3"}),"复制"]})})]}),(0,b.jsx)("pre",{ref:j,className:(0,f.cn)("overflow-x-auto p-3 text-xs leading-relaxed","[&_code]:bg-transparent [&_code]:p-0",a),...i,children:g})]})}])},13562,a=>a.a(async(b,c)=>{try{var d=a.i(34020),e=a.i(28778);a.i(26925);var f=a.i(46400),g=a.i(64565),h=a.i(93280),i=b([e]);[e]=i.then?(await i)():i;let j=["https://","http://","mailto:","#","/"],k=["https://","data:image/"],l=(a,b)=>{let c=a.toLowerCase();return("src"===b?k:j).some(a=>c.startsWith(a))?a:""};a.s(["Markdown",0,function({children:a,className:b}){return(0,d.jsx)("div",{className:(0,g.cn)("text-sm leading-relaxed text-foreground/90","[&_p]:my-2 [&_ul]:my-2 [&_ol]:my-2 [&_li]:my-0.5","[&_ul]:list-disc [&_ul]:pl-5 [&_ol]:list-decimal [&_ol]:pl-5","[&_h1]:mt-4 [&_h1]:mb-2 [&_h1]:text-lg [&_h1]:font-semibold","[&_h2]:mt-3 [&_h2]:mb-2 [&_h2]:text-base [&_h2]:font-semibold","[&_h3]:mt-3 [&_h3]:mb-1.5 [&_h3]:text-sm [&_h3]:font-semibold","[&_a]:text-primary [&_a]:underline [&_a]:underline-offset-2","[&_:not(pre)>code]:rounded [&_:not(pre)>code]:bg-[hsl(var(--muted))] [&_:not(pre)>code]:px-1 [&_:not(pre)>code]:py-0.5 [&_:not(pre)>code]:text-[0.85em]","[&_table]:my-2 [&_table]:w-full [&_table]:border-collapse","[&_th]:border [&_th]:border-[hsl(var(--border))] [&_th]:px-2 [&_th]:py-1 [&_th]:text-left [&_th]:font-semibold","[&_td]:border [&_td]:border-[hsl(var(--border))] [&_td]:px-2 [&_td]:py-1","[&_blockquote]:my-2 [&_blockquote]:border-l-2 [&_blockquote]:border-[hsl(var(--border))] [&_blockquote]:pl-3 [&_blockquote]:text-muted-foreground","[&_hr]:my-3 [&_hr]:border-[hsl(var(--border))]",b),children:(0,d.jsx)(f.Streamdown,{parseIncompleteMarkdown:!0,skipHtml:!0,urlTransform:l,plugins:{code:e.code},components:{pre:h.CodeBlock},controls:{code:!1,table:!1,mermaid:!1},children:a})})}]),c()}catch(a){c(a)}},!1),73570,a=>a.a(async(b,c)=>{try{var d=a.i(34020),e=a.i(71938),f=a.i(31687),g=a.i(37102),h=a.i(42210),i=a.i(47845),j=a.i(1927),k=a.i(16772),l=a.i(12537),m=a.i(16106),n=a.i(9380),o=a.i(98018),p=a.i(55295),q=a.i(63265),r=a.i(76192),s=a.i(36890),t=a.i(27692),u=a.i(70535),v=a.i(24567),w=a.i(64565),x=a.i(13562),y=b([x]);[x]=y.then?(await y)():y;let J=(0,e.memo)(function({message:a,busy:b,onDelete:c,onResend:e,onRegenerate:f,onEditSave:g}){return"user"===a.role?(0,d.jsx)(D,{message:a,busy:b,onDelete:c,onResend:e,onEditSave:g}):(0,d.jsx)(E,{message:a,busy:b,onDelete:c,onRegenerate:f})},(a,b)=>a.message===b.message&&a.busy===b.busy);function z({align:a,disabled:b,onCopy:c,onDelete:e,onEdit:f,onResend:g,onRegenerate:h}){return(0,d.jsxs)("div",{className:(0,w.cn)("mt-1 flex items-center gap-0.5 opacity-0 transition-opacity duration-150","group-hover:opacity-100 group-focus-within:opacity-100","group-data-[touched=true]:opacity-100","right"===a?"justify-end":"justify-start"),children:[(0,d.jsx)(A,{title:"复制",disabled:b,onClick:c,children:(0,d.jsx)(k.Copy,{className:"h-3.5 w-3.5"})}),f&&(0,d.jsx)(A,{title:"编辑",disabled:b,onClick:f,children:(0,d.jsx)(l.Pencil,{className:"h-3.5 w-3.5"})}),g&&(0,d.jsx)(A,{title:"重新发送",disabled:b,onClick:g,children:(0,d.jsx)(o.Send,{className:"h-3.5 w-3.5"})}),h&&(0,d.jsx)(A,{title:"重新生成",disabled:b,onClick:h,children:(0,d.jsx)(m.RotateCcw,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(A,{title:"删除",disabled:b,onClick:e,destructive:!0,children:(0,d.jsx)(p.Trash2,{className:"h-3.5 w-3.5"})})]})}function A({title:a,disabled:b,destructive:c,onClick:e,children:f}){return(0,d.jsx)(r.Button,{type:"button",variant:"ghost",size:"icon",title:a,"aria-label":a,disabled:b,onClick:e,className:(0,w.cn)("h-7 w-7 text-muted-foreground hover:text-foreground",c&&"hover:text-[hsl(var(--destructive))] hover:bg-[hsl(var(--destructive))]/10"),children:f})}function B({rewriteFailed:a,rewriteError:b,failedKbCount:c,failedKbDetails:e}){let f=!!a,g=(c??0)>0;return f||g?(0,d.jsxs)("div",{className:"space-y-1.5",children:[f&&(0,d.jsx)(C,{label:"意图重写失败 · 已回退到原问题",detail:b??"rewriter 返回空结果或抛错"}),g&&e&&(0,d.jsx)(C,{label:`${c} 个知识库检索失败`,detail:e.map(a=>`• ${a.name}: ${a.reason}`).join("\n")})]}):null}function C({label:a,detail:b}){let[c,f]=(0,e.useState)(!1);return(0,d.jsxs)("div",{className:"rounded-md border border-amber-500/30 bg-amber-500/5",children:[(0,d.jsxs)("button",{type:"button",onClick:()=>f(a=>!a),className:(0,w.cn)("flex w-full items-center gap-1.5 px-2 py-1 text-xs","text-amber-700 hover:bg-amber-500/10 dark:text-amber-300"),children:[(0,d.jsx)(g.AlertTriangle,{className:"h-3.5 w-3.5 shrink-0"}),(0,d.jsx)("span",{className:"flex-1 text-left",children:a}),(0,d.jsx)(j.ChevronDown,{className:(0,w.cn)("h-3 w-3 opacity-60 transition-transform duration-150",c&&"rotate-180")})]}),c&&(0,d.jsx)("pre",{className:"border-t border-amber-500/20 px-2 py-1.5 text-[11px] leading-relaxed text-amber-700/80 dark:text-amber-300/80 whitespace-pre-wrap font-mono",children:b})]})}function D({message:a,busy:b,onDelete:c,onResend:f,onEditSave:g}){let[h,i]=(0,e.useState)(!1),[j,k]=(0,e.useState)(!1),[l,m]=(0,e.useState)(a.content),[n,o]=(0,e.useState)(!1),[p,t]=(0,e.useState)(!1),[w,x]=(0,e.useState)(!0),y=(0,e.useCallback)(()=>{navigator.clipboard.writeText(a.content),q.toast.success("已复制")},[a.content]),A=(0,e.useCallback)(()=>{let b=l.trim();if(!b||b===a.content){k(!1),m(a.content);return}k(!1),g(a.id,b)},[l,a.content,a.id,g]),B=(0,e.useCallback)(()=>{m(a.content),k(!1)},[a.content]),C=(0,e.useCallback)(a=>{"Escape"===a.key?(a.preventDefault(),B()):"Enter"===a.key&&(a.metaKey||a.ctrlKey)&&(a.preventDefault(),A())},[A,B]);return(0,d.jsxs)("div",{className:"group flex justify-end","data-touched":h?"true":void 0,onClickCapture:()=>i(!0),children:[(0,d.jsxs)("div",{className:"flex max-w-[85%] flex-col items-end",children:[j?(0,d.jsxs)("div",{className:"w-full max-w-2xl rounded-2xl border border-[hsl(var(--primary))] bg-[hsl(var(--background))] p-2",children:[(0,d.jsx)(u.Textarea,{autoFocus:!0,value:l,onChange:a=>m(a.target.value),onKeyDown:C,className:"min-h-[80px] resize-y border-0 p-2 text-sm shadow-none focus-visible:ring-0"}),(0,d.jsxs)("div",{className:"mt-1 flex justify-end gap-2",children:[(0,d.jsx)(r.Button,{type:"button",variant:"ghost",size:"sm",onClick:B,children:"取消"}),(0,d.jsx)(r.Button,{type:"button",size:"sm",disabled:!l.trim()||l.trim()===a.content,onClick:A,children:"保存并重发"})]})]}):(0,d.jsx)("div",{className:"rounded-2xl rounded-tr-sm bg-[hsl(var(--muted)/0.7)] px-4 py-2.5 text-sm leading-relaxed text-foreground whitespace-pre-wrap",children:a.content}),!j&&(0,d.jsx)(z,{align:"right",disabled:b,onCopy:y,onEdit:()=>{m(a.content),k(!0)},onResend:()=>t(!0),onDelete:()=>o(!0)})]}),(0,d.jsx)(v.ConfirmDialog,{open:n,onOpenChange:o,title:"删除此消息?",description:"该操作不可撤销。",confirmText:"删除",variant:"danger",onConfirm:()=>{c(a.id,{withNextAssistant:w}),o(!1)},children:(0,d.jsxs)("label",{className:"flex items-center gap-2 text-sm text-foreground",children:[(0,d.jsx)(s.Checkbox,{checked:w,onCheckedChange:a=>x(!0===a)}),"同时删除下方的 AI 回复"]})}),(0,d.jsx)(v.ConfirmDialog,{open:p,onOpenChange:t,title:"重新发送此消息?",description:"将丢弃下方所有消息并重新生成回答。",confirmText:"重新发送",onConfirm:()=>{t(!1),f(a.id)}})]})}function E({message:a,busy:b,onDelete:c,onRegenerate:g}){let[h,i]=(0,e.useState)(!1),[j,k]=(0,e.useState)(!1),[l,m]=(0,e.useState)(!1),o="streaming"===a.status,p="error"===a.status,r=(a.reasoning?.length??0)>0,s=(a.content?.length??0)>0,t=r||o&&!s,u=!!a.usingRag&&!a.retrievalQuery,w=!!a.retrievalQuery&&!a.retrievedChunks,y=(a.retrievalGroups??[]).filter(a=>a.error).map(a=>({name:a.knowledgeBaseName,reason:a.error??""})),A=(0,e.useCallback)(()=>{navigator.clipboard.writeText(a.content),q.toast.success("已复制")},[a.content]);return(0,d.jsxs)("div",{className:"group space-y-3 text-sm leading-relaxed","data-touched":h?"true":void 0,onClickCapture:()=>i(!0),children:[t?(0,d.jsx)(F,{reasoning:a.reasoning??"",streaming:o,startedAt:a.reasoningStartedAt,completedAt:a.reasoningCompletedAt,intentExtracting:u,retrievalInFlight:w}):null,(0,d.jsx)(B,{rewriteFailed:a.queryRewriteFailed,rewriteError:a.queryRewriteError,failedKbCount:y.length,failedKbDetails:y}),a.retrievalQueryRewritten&&a.retrievalQuery?(0,d.jsxs)("div",{className:"inline-flex max-w-full items-center gap-1.5 rounded-md bg-[hsl(var(--muted)/0.4)] px-2 py-1 text-xs text-muted-foreground",children:[(0,d.jsx)(n.Search,{className:"h-3 w-3 shrink-0"}),(0,d.jsx)("span",{className:"font-medium shrink-0",children:"检索关键词:"}),(0,d.jsx)("span",{className:"truncate font-mono text-foreground/80",children:a.retrievalQuery})]}):null,a.retrievedChunks&&a.retrievedChunks.length>0?(0,d.jsx)(G,{chunks:a.retrievedChunks,groups:a.retrievalGroups}):null,p?(0,d.jsxs)("div",{className:"flex items-start gap-2 rounded-md border border-[hsl(var(--destructive))/0.3] bg-[hsl(var(--destructive))/0.05] px-3 py-2 text-[hsl(var(--destructive))]",children:[(0,d.jsx)(f.AlertCircle,{className:"mt-0.5 h-4 w-4 shrink-0"}),(0,d.jsx)("span",{className:"text-xs",children:a.errorMessage??"生成失败"})]}):(0,d.jsxs)("div",{className:"text-foreground/90",children:[(0,d.jsx)(x.Markdown,{children:a.content}),o?(0,d.jsx)("span",{className:"ml-0.5 inline-block h-3.5 w-1.5 animate-pulse bg-foreground align-baseline"}):null]}),(0,d.jsx)(z,{align:"left",disabled:b||o,onCopy:A,onRegenerate:()=>m(!0),onDelete:()=>k(!0)}),(0,d.jsx)(v.ConfirmDialog,{open:j,onOpenChange:k,title:"删除此回复?",description:"该操作不可撤销。",confirmText:"删除",variant:"danger",onConfirm:()=>{c(a.id),k(!1)}}),(0,d.jsx)(v.ConfirmDialog,{open:l,onOpenChange:m,title:"重新生成此回复?",description:"将丢弃下方所有消息并重新生成。",confirmText:"重新生成",onConfirm:()=>{m(!1),g(a.id)}})]})}function F({reasoning:a,streaming:b,startedAt:c,completedAt:f,intentExtracting:g,retrievalInFlight:h}){var k,l;let m,n,o,[p,q]=(0,e.useState)(!1),r=function(a,b){let[c,d]=(0,e.useState)(()=>Date.now());return((0,e.useEffect)(()=>{if(!a||b)return;let c=window.setInterval(()=>d(Date.now()),250);return()=>window.clearInterval(c)},[a,b]),a)?Math.max(0,(b??c)-a):null}(c,f),s=null!=r?(k=r,l=!b||!!f,m=Math.floor(k/1e3),n=Math.floor(m/60),o=m%60,l?0===n?`用时 ${o} 秒`:`用时 ${n} 分 ${o} 秒`:`${n}:${String(o).padStart(2,"0")}`):null,u=b&&!f,v=a.length>0,x="正在思考";return v?x="深度思考中":h?x="正在检索知识库":g&&(x="检索意图提取"),(0,d.jsxs)(t.Collapsible,{open:p,onOpenChange:q,children:[(0,d.jsx)(t.CollapsibleTrigger,{asChild:!0,children:(0,d.jsxs)("button",{type:"button",disabled:!v,className:(0,w.cn)("group inline-flex items-center gap-2 rounded-full pl-1.5 pr-2.5 py-1 text-xs font-medium transition-all duration-200",u?"bg-[hsl(var(--primary)/0.08)] text-[hsl(var(--primary))] ring-1 ring-[hsl(var(--primary)/0.25)] shadow-[0_0_0_4px_hsl(var(--primary)/0.06)]":"bg-[hsl(var(--muted)/0.6)] text-muted-foreground hover:bg-[hsl(var(--accent))] hover:text-foreground",!v&&"cursor-default"),"aria-live":u?"polite":"off",children:[(0,d.jsxs)("span",{className:"relative inline-flex h-5 w-5 items-center justify-center",children:[u&&(0,d.jsx)("span",{"aria-hidden":!0,className:"absolute inset-0 rounded-full bg-[hsl(var(--primary))] opacity-40 blur-[6px] animate-thinking-aurora"}),(0,d.jsx)(i.Brain,{className:(0,w.cn)("relative h-3.5 w-3.5",u&&"animate-thinking-icon text-[hsl(var(--primary))]")})]}),u?(0,d.jsx)("span",{className:"animate-text-shimmer bg-[linear-gradient(90deg,hsl(var(--primary)/0.55)_0%,hsl(var(--primary))_50%,hsl(var(--primary)/0.55)_100%)] bg-[length:200%_100%] bg-clip-text text-transparent",children:x}):(0,d.jsx)("span",{children:"已深度思考"}),s&&(0,d.jsxs)("span",{className:(0,w.cn)("tabular-nums text-[11px]",u?"text-[hsl(var(--primary)/0.75)]":"text-muted-foreground/80"),children:["· ",s]}),v&&(0,d.jsx)(j.ChevronDown,{className:(0,w.cn)("h-3 w-3 opacity-60 transition-transform duration-200",p&&"rotate-180",u&&"text-[hsl(var(--primary))]")})]})}),v&&(0,d.jsx)(t.CollapsibleContent,{children:(0,d.jsx)("div",{className:"mt-2 border-l-2 border-[hsl(var(--border))] pl-3 text-xs leading-relaxed text-muted-foreground whitespace-pre-wrap",children:a})})]})}function G({chunks:a,groups:b}){let[c,f]=(0,e.useState)(!1),g=new Map;a.forEach((a,b)=>{g.set(`${a.docId}#${a.chunkId}`,b+1)});let i=(b??[]).filter(a=>!a.error),k=(b??[]).filter(a=>a.error),l=i.length>=2||k.length>0;return(0,d.jsxs)(t.Collapsible,{open:c,onOpenChange:f,children:[(0,d.jsx)(t.CollapsibleTrigger,{asChild:!0,children:(0,d.jsxs)("button",{type:"button",className:"inline-flex items-center gap-1.5 rounded-md px-2 py-1 text-xs text-muted-foreground transition-colors hover:bg-[hsl(var(--accent))] hover:text-foreground",children:[(0,d.jsx)(h.BookOpen,{className:"h-3.5 w-3.5"}),"查看 ",a.length," 个引用",l?(0,d.jsxs)("span",{className:"text-muted-foreground/70",children:["· ",i.length," 个知识库",k.length>0?`(${k.length} 失败)`:""]}):null,(0,d.jsx)(j.ChevronDown,{className:(0,w.cn)("h-3 w-3 transition-transform duration-200",c&&"rotate-180")})]})}),(0,d.jsx)(t.CollapsibleContent,{children:(0,d.jsx)("div",{className:"mt-2 space-y-3",children:l?(0,d.jsxs)(d.Fragment,{children:[i.map(a=>(0,d.jsx)(H,{group:a,indexByKey:g},`ok-${a.knowledgeBaseName}`)),k.map(a=>(0,d.jsxs)("div",{className:"rounded-md border border-[hsl(var(--destructive))/0.3] bg-[hsl(var(--destructive))/0.05] px-3 py-2 text-xs text-[hsl(var(--destructive))]",children:[(0,d.jsx)("span",{className:"font-medium",children:a.knowledgeBaseName}),(0,d.jsxs)("span",{className:"ml-2 text-[hsl(var(--destructive))/0.8]",children:["检索失败:",a.error]})]},`err-${a.knowledgeBaseName}`))]}):(0,d.jsx)("div",{className:"space-y-2",children:a.map((a,b)=>(0,d.jsx)(I,{chunk:a,index:b+1},`${a.docId}-${a.chunkId}`))})})})]})}function H({group:a,indexByKey:b}){return(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 text-xs font-medium text-muted-foreground",children:[(0,d.jsx)("span",{className:"text-foreground/80",children:a.knowledgeBaseName}),(0,d.jsxs)("span",{children:["· ",a.chunks.length," 条"]})]}),(0,d.jsx)("div",{className:"space-y-2 border-l-2 border-[hsl(var(--border))] pl-3",children:a.chunks.map(a=>{let c=`${a.docId}#${a.chunkId}`,e=b.get(c)??0;return(0,d.jsx)(I,{chunk:a,index:e},`${a.docId}-${a.chunkId}`)})})]})}function I({chunk:a,index:b}){let c=a.ossKey?.split("/").pop()||a.ossKey||"未知文件";return(0,d.jsxs)("div",{className:"rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--muted)/0.3)] p-3",children:[(0,d.jsxs)("div",{className:"mb-1.5 flex items-center gap-2 text-xs text-muted-foreground",children:[(0,d.jsx)("span",{className:"inline-flex h-5 w-5 items-center justify-center rounded-full bg-[hsl(var(--primary-50))] font-semibold text-primary",children:b>0?b:"–"}),(0,d.jsx)("span",{className:"font-medium text-foreground/80",children:c}),(0,d.jsxs)("span",{children:["Chunk #",a.chunkId]}),(0,d.jsx)("span",{className:"ml-auto font-mono",children:a.score.toFixed(4)})]}),(0,d.jsx)("p",{className:"line-clamp-4 whitespace-pre-wrap text-xs text-foreground/80",children:a.content})]})}J.displayName="QaMessage",a.s(["QaMessage",0,J]),c()}catch(a){c(a)}},!1),57900,a=>a.a(async(b,c)=>{try{var d=a.i(34020),e=a.i(71938),f=a.i(88189),g=a.i(98018),h=a.i(31710),i=a.i(76192),j=a.i(70535),k=a.i(10215),l=a.i(64565),m=a.i(73570),n=b([m]);[m]=n.then?(await n)():n,a.s(["QaChatPanel",0,function({messages:a,isStreaming:b,canSend:c,error:n,onSend:o,onStop:p,onDelete:q,onResend:r,onRegenerate:s,onEditSave:t,emptyState:u,disabledPlaceholder:v}){let[w,x]=(0,e.useState)(""),y=(0,e.useRef)(null),z=(0,e.useRef)(a.length);(0,e.useEffect)(()=>{let b=y.current;if(!b)return;let c=a.length>z.current;(z.current=a.length,c)?requestAnimationFrame(()=>{b.scrollTo({top:b.scrollHeight,behavior:"smooth"})}):b.scrollHeight-b.scrollTop-b.clientHeight<120&&b.scrollTo({top:b.scrollHeight,behavior:"smooth"})},[a]);let A=()=>{let a=w.trim();a&&c&&!b&&(o(a),x(""))};return(0,d.jsxs)("div",{className:"flex h-full min-h-0 flex-1 flex-col bg-[hsl(var(--card))]",children:[(0,d.jsx)("div",{ref:y,role:"log","aria-live":"polite","aria-relevant":"additions text","aria-busy":b,className:"flex-1 space-y-6 overflow-y-auto px-6 py-5",children:0===a.length?(0,d.jsx)("div",{className:"flex h-full min-h-[320px] items-center justify-center",children:(0,d.jsx)(k.EmptyState,{icon:f.MessageSquare,title:u?.title??"开始对话",description:u?.description??"输入问题,系统会先从知识库检索相关内容,再让大模型基于检索结果回答",action:u?.actionLabel&&u?.onAction?(0,d.jsx)(i.Button,{type:"button",onClick:u.onAction,children:u.actionLabel}):void 0})}):a.map(a=>(0,d.jsx)(m.QaMessage,{message:a,busy:b,onDelete:q,onResend:r,onRegenerate:s,onEditSave:t},a.id))}),(0,d.jsxs)("div",{className:"border-t border-[hsl(var(--border))] bg-[hsl(var(--surface)/0.6)] px-4 py-3",children:[n&&(0,d.jsx)("p",{className:"mb-2 text-xs text-[hsl(var(--destructive))]",children:n}),(0,d.jsxs)("div",{className:"flex items-end gap-2",children:[(0,d.jsx)(j.Textarea,{value:w,onChange:a=>x(a.target.value),onKeyDown:a=>{"Enter"!==a.key||a.shiftKey||a.nativeEvent.isComposing||(a.preventDefault(),A())},placeholder:c?"输入问题,Enter 发送,Shift+Enter 换行":v??"请先在左侧选择模型...",disabled:!c,className:(0,l.cn)("min-h-[44px] max-h-40 resize-none text-sm"),rows:1}),b?(0,d.jsx)(i.Button,{type:"button",variant:"outline",size:"icon",onClick:p,title:"停止",children:(0,d.jsx)(h.Square,{className:"h-4 w-4 fill-current"})}):(0,d.jsx)(i.Button,{type:"button",size:"icon",disabled:!c||!w.trim(),onClick:A,title:"发送",children:(0,d.jsx)(g.Send,{className:"h-4 w-4"})})]})]})]})}]),c()}catch(a){c(a)}},!1),64363,32191,87951,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(53520),e=a.i(82725),f=a.i(81619),g=a.i(25825),h=a.i(68826),i=a.i(76192),j=/[\\\/_+.#"@\[\(\{&]/,k=/[\\\/_+.#"@\[\(\{&]/g,l=/[\s-]/,m=/[\s-]/g;function n(a){return a.toLowerCase().replace(m," ")}var o=a.i(88619),p=a.i(5305),q=a.i(59231),r=a.i(68189),s='[cmdk-group=""]',t='[cmdk-group-items=""]',u='[cmdk-item=""]',v=`${u}:not([aria-disabled="true"])`,w="cmdk-item-select",x="data-value",y=(a,b,c)=>{var d;return d=a,function a(b,c,d,e,f,g,h){if(g===c.length)return f===b.length?1:.99;var i=`${f},${g}`;if(void 0!==h[i])return h[i];for(var n,o,p,q,r=e.charAt(g),s=d.indexOf(r,f),t=0;s>=0;)(n=a(b,c,d,e,s+1,g+1,h))>t&&(s===f?n*=1:j.test(b.charAt(s-1))?(n*=.8,(p=b.slice(f,s-1).match(k))&&f>0&&(n*=Math.pow(.999,p.length))):l.test(b.charAt(s-1))?(n*=.9,(q=b.slice(f,s-1).match(m))&&f>0&&(n*=Math.pow(.999,q.length))):(n*=.17,f>0&&(n*=Math.pow(.999,s-f))),b.charAt(s)!==c.charAt(g)&&(n*=.9999)),(n<.1&&d.charAt(s-1)===e.charAt(g+1)||e.charAt(g+1)===e.charAt(g)&&d.charAt(s-1)!==e.charAt(g))&&.1*(o=a(b,c,d,e,s+1,g+2,h))>n&&(n=.1*o),n>t&&(t=n),s=d.indexOf(r,s+1);return h[i]=t,t}(d=c&&c.length>0?`${d+" "+c.join(" ")}`:d,b,n(d),n(b),0,0,{})},z=c.createContext(void 0),A=c.createContext(void 0),B=c.createContext(void 0),C=c.forwardRef((a,b)=>{let d=M(()=>{var b,c;return{search:"",value:null!=(c=null!=(b=a.value)?b:a.defaultValue)?c:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),e=M(()=>new Set),f=M(()=>new Map),g=M(()=>new Map),h=M(()=>new Set),i=K(a),{label:j,children:k,value:l,onValueChange:m,filter:n,shouldFilter:o,loop:r,disablePointerSelection:B=!1,vimBindings:C=!0,...D}=a,E=(0,q.useId)(),F=(0,q.useId)(),G=(0,q.useId)(),H=c.useRef(null),I=P();L(()=>{if(void 0!==l){let a=l.trim();d.current.value=a,J.emit()}},[l]),L(()=>{I(6,V)},[]);let J=c.useMemo(()=>({subscribe:a=>(h.current.add(a),()=>h.current.delete(a)),snapshot:()=>d.current,setState:(a,b,c)=>{var e,f,g,h;if(!Object.is(d.current[a],b)){if(d.current[a]=b,"search"===a)U(),S(),I(1,T);else if("value"===a){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let a=document.getElementById(G);a?a.focus():null==(e=document.getElementById(E))||e.focus()}if(I(7,()=>{var a;d.current.selectedItemId=null==(a=W())?void 0:a.id,J.emit()}),c||I(5,V),(null==(f=i.current)?void 0:f.value)!==void 0){null==(h=(g=i.current).onValueChange)||h.call(g,null!=b?b:"");return}}J.emit()}},emit:()=>{h.current.forEach(a=>a())}}),[]),N=c.useMemo(()=>({value:(a,b,c)=>{var e;b!==(null==(e=g.current.get(a))?void 0:e.value)&&(g.current.set(a,{value:b,keywords:c}),d.current.filtered.items.set(a,O(b,c)),I(2,()=>{S(),J.emit()}))},item:(a,b)=>(e.current.add(a),b&&(f.current.has(b)?f.current.get(b).add(a):f.current.set(b,new Set([a]))),I(3,()=>{U(),S(),d.current.value||T(),J.emit()}),()=>{g.current.delete(a),e.current.delete(a),d.current.filtered.items.delete(a);let b=W();I(4,()=>{U(),(null==b?void 0:b.getAttribute("id"))===a&&T(),J.emit()})}),group:a=>(f.current.has(a)||f.current.set(a,new Set),()=>{g.current.delete(a),f.current.delete(a)}),filter:()=>i.current.shouldFilter,label:j||a["aria-label"],getDisablePointerSelection:()=>i.current.disablePointerSelection,listId:E,inputId:G,labelId:F,listInnerRef:H}),[]);function O(a,b){var c,e;let f=null!=(e=null==(c=i.current)?void 0:c.filter)?e:y;return a?f(a,d.current.search,b):0}function S(){if(!d.current.search||!1===i.current.shouldFilter)return;let a=d.current.filtered.items,b=[];d.current.filtered.groups.forEach(c=>{let d=f.current.get(c),e=0;d.forEach(b=>{e=Math.max(a.get(b),e)}),b.push([c,e])});let c=H.current;X().sort((b,c)=>{var d,e;let f=b.getAttribute("id"),g=c.getAttribute("id");return(null!=(d=a.get(g))?d:0)-(null!=(e=a.get(f))?e:0)}).forEach(a=>{let b=a.closest(t);b?b.appendChild(a.parentElement===b?a:a.closest(`${t} > *`)):c.appendChild(a.parentElement===c?a:a.closest(`${t} > *`))}),b.sort((a,b)=>b[1]-a[1]).forEach(a=>{var b;let c=null==(b=H.current)?void 0:b.querySelector(`${s}[${x}="${encodeURIComponent(a[0])}"]`);null==c||c.parentElement.appendChild(c)})}function T(){let a=X().find(a=>"true"!==a.getAttribute("aria-disabled")),b=null==a?void 0:a.getAttribute(x);J.setState("value",b||void 0)}function U(){var a,b,c,h;if(!d.current.search||!1===i.current.shouldFilter){d.current.filtered.count=e.current.size;return}d.current.filtered.groups=new Set;let j=0;for(let f of e.current){let e=O(null!=(b=null==(a=g.current.get(f))?void 0:a.value)?b:"",null!=(h=null==(c=g.current.get(f))?void 0:c.keywords)?h:[]);d.current.filtered.items.set(f,e),e>0&&j++}for(let[a,b]of f.current)for(let c of b)if(d.current.filtered.items.get(c)>0){d.current.filtered.groups.add(a);break}d.current.filtered.count=j}function V(){var a,b,c;let d=W();d&&((null==(a=d.parentElement)?void 0:a.firstChild)===d&&(null==(c=null==(b=d.closest(s))?void 0:b.querySelector('[cmdk-group-heading=""]'))||c.scrollIntoView({block:"nearest"})),d.scrollIntoView({block:"nearest"}))}function W(){var a;return null==(a=H.current)?void 0:a.querySelector(`${u}[aria-selected="true"]`)}function X(){var a;return Array.from((null==(a=H.current)?void 0:a.querySelectorAll(v))||[])}function Y(a){let b=X()[a];b&&J.setState("value",b.getAttribute(x))}function Z(a){var b;let c=W(),d=X(),e=d.findIndex(a=>a===c),f=d[e+a];null!=(b=i.current)&&b.loop&&(f=e+a<0?d[d.length-1]:e+a===d.length?d[0]:d[e+a]),f&&J.setState("value",f.getAttribute(x))}function $(a){let b=W(),c=null==b?void 0:b.closest(s),d;for(;c&&!d;)d=null==(c=a>0?function(a,b){let c=a.nextElementSibling;for(;c;){if(c.matches(b))return c;c=c.nextElementSibling}}(c,s):function(a,b){let c=a.previousElementSibling;for(;c;){if(c.matches(b))return c;c=c.previousElementSibling}}(c,s))?void 0:c.querySelector(v);d?J.setState("value",d.getAttribute(x)):Z(a)}let _=()=>Y(X().length-1),aa=a=>{a.preventDefault(),a.metaKey?_():a.altKey?$(1):Z(1)},ab=a=>{a.preventDefault(),a.metaKey?Y(0):a.altKey?$(-1):Z(-1)};return c.createElement(p.Primitive.div,{ref:b,tabIndex:-1,...D,"cmdk-root":"",onKeyDown:a=>{var b;null==(b=D.onKeyDown)||b.call(D,a);let c=a.nativeEvent.isComposing||229===a.keyCode;if(!(a.defaultPrevented||c))switch(a.key){case"n":case"j":C&&a.ctrlKey&&aa(a);break;case"ArrowDown":aa(a);break;case"p":case"k":C&&a.ctrlKey&&ab(a);break;case"ArrowUp":ab(a);break;case"Home":a.preventDefault(),Y(0);break;case"End":a.preventDefault(),_();break;case"Enter":{a.preventDefault();let b=W();if(b){let a=new Event(w);b.dispatchEvent(a)}}}}},c.createElement("label",{"cmdk-label":"",htmlFor:N.inputId,id:N.labelId,style:R},j),Q(a,a=>c.createElement(A.Provider,{value:J},c.createElement(z.Provider,{value:N},a))))}),D=c.forwardRef((a,b)=>{var d,e;let f=(0,q.useId)(),g=c.useRef(null),h=c.useContext(B),i=c.useContext(z),j=K(a),k=null!=(e=null==(d=j.current)?void 0:d.forceMount)?e:null==h?void 0:h.forceMount;L(()=>{if(!k)return i.item(f,null==h?void 0:h.id)},[k]);let l=O(f,g,[a.value,a.children,g],a.keywords),m=c.useContext(A),n=N(a=>a.value&&a.value===l.current),o=N(a=>!!k||!1===i.filter()||!a.search||a.filtered.items.get(f)>0);function s(){var a,b;t(),null==(b=(a=j.current).onSelect)||b.call(a,l.current)}function t(){m.setState("value",l.current,!0)}if(c.useEffect(()=>{let b=g.current;if(!(!b||a.disabled))return b.addEventListener(w,s),()=>b.removeEventListener(w,s)},[o,a.onSelect,a.disabled]),!o)return null;let{disabled:u,value:v,onSelect:x,forceMount:y,keywords:C,...D}=a;return c.createElement(p.Primitive.div,{ref:(0,r.composeRefs)(g,b),...D,id:f,"cmdk-item":"",role:"option","aria-disabled":!!u,"aria-selected":!!n,"data-disabled":!!u,"data-selected":!!n,onPointerMove:u||i.getDisablePointerSelection()?void 0:t,onClick:u?void 0:s},a.children)}),E=c.forwardRef((a,b)=>{let{heading:d,children:e,forceMount:f,...g}=a,h=(0,q.useId)(),i=c.useRef(null),j=c.useRef(null),k=(0,q.useId)(),l=c.useContext(z),m=N(a=>!!f||!1===l.filter()||!a.search||a.filtered.groups.has(h));L(()=>l.group(h),[]),O(h,i,[a.value,a.heading,j]);let n=c.useMemo(()=>({id:h,forceMount:f}),[f]);return c.createElement(p.Primitive.div,{ref:(0,r.composeRefs)(i,b),...g,"cmdk-group":"",role:"presentation",hidden:!m||void 0},d&&c.createElement("div",{ref:j,"cmdk-group-heading":"","aria-hidden":!0,id:k},d),Q(a,a=>c.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":d?k:void 0},c.createElement(B.Provider,{value:n},a))))}),F=c.forwardRef((a,b)=>{let{alwaysRender:d,...e}=a,f=c.useRef(null),g=N(a=>!a.search);return d||g?c.createElement(p.Primitive.div,{ref:(0,r.composeRefs)(f,b),...e,"cmdk-separator":"",role:"separator"}):null}),G=c.forwardRef((a,b)=>{let{onValueChange:d,...e}=a,f=null!=a.value,g=c.useContext(A),h=N(a=>a.search),i=N(a=>a.selectedItemId),j=c.useContext(z);return c.useEffect(()=>{null!=a.value&&g.setState("search",a.value)},[a.value]),c.createElement(p.Primitive.input,{ref:b,...e,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"aria-autocomplete":"list",role:"combobox","aria-expanded":!0,"aria-controls":j.listId,"aria-labelledby":j.labelId,"aria-activedescendant":i,id:j.inputId,type:"text",value:f?a.value:h,onChange:a=>{f||g.setState("search",a.target.value),null==d||d(a.target.value)}})}),H=c.forwardRef((a,b)=>{let{children:d,label:e="Suggestions",...f}=a,g=c.useRef(null),h=c.useRef(null),i=N(a=>a.selectedItemId),j=c.useContext(z);return c.useEffect(()=>{if(h.current&&g.current){let a=h.current,b=g.current,c,d=new ResizeObserver(()=>{c=requestAnimationFrame(()=>{let c=a.offsetHeight;b.style.setProperty("--cmdk-list-height",c.toFixed(1)+"px")})});return d.observe(a),()=>{cancelAnimationFrame(c),d.unobserve(a)}}},[]),c.createElement(p.Primitive.div,{ref:(0,r.composeRefs)(g,b),...f,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":i,"aria-label":e,id:j.listId},Q(a,a=>c.createElement("div",{ref:(0,r.composeRefs)(h,j.listInnerRef),"cmdk-list-sizer":""},a)))}),I=c.forwardRef((a,b)=>{let{open:d,onOpenChange:e,overlayClassName:f,contentClassName:g,container:h,...i}=a;return c.createElement(o.Root,{open:d,onOpenChange:e},c.createElement(o.Portal,{container:h},c.createElement(o.Overlay,{"cmdk-overlay":"",className:f}),c.createElement(o.Content,{"aria-label":a.label,"cmdk-dialog":"",className:g},c.createElement(C,{ref:b,...i}))))}),J=Object.assign(C,{List:H,Item:D,Input:G,Group:E,Separator:F,Dialog:I,Empty:c.forwardRef((a,b)=>N(a=>0===a.filtered.count)?c.createElement(p.Primitive.div,{ref:b,...a,"cmdk-empty":"",role:"presentation"}):null),Loading:c.forwardRef((a,b)=>{let{progress:d,children:e,label:f="Loading...",...g}=a;return c.createElement(p.Primitive.div,{ref:b,...g,"cmdk-loading":"",role:"progressbar","aria-valuenow":d,"aria-valuemin":0,"aria-valuemax":100,"aria-label":f},Q(a,a=>c.createElement("div",{"aria-hidden":!0},a)))})});function K(a){let b=c.useRef(a);return L(()=>{b.current=a}),b}var L=c.useEffect;function M(a){let b=c.useRef();return void 0===b.current&&(b.current=a()),b}function N(a){let b=c.useContext(A),d=()=>a(b.snapshot());return c.useSyncExternalStore(b.subscribe,d,d)}function O(a,b,d,e=[]){let f=c.useRef(),g=c.useContext(z);return L(()=>{var c;let h=(()=>{var a;for(let b of d){if("string"==typeof b)return b.trim();if("object"==typeof b&&"current"in b)return b.current?null==(a=b.current.textContent)?void 0:a.trim():f.current}})(),i=e.map(a=>a.trim());g.value(a,h,i),null==(c=b.current)||c.setAttribute(x,h),f.current=h}),f}var P=()=>{let[a,b]=c.useState(),d=M(()=>new Map);return L(()=>{d.current.forEach(a=>a()),d.current=new Map},[a]),(a,c)=>{d.current.set(a,c),b({})}};function Q({asChild:a,children:b},d){let e;return a&&c.isValidElement(b)?c.cloneElement("function"==typeof(e=b.type)?e(b.props):"render"in e?e.render(b.props):b,{ref:b.ref},d(b.props.children)):d(b)}var R={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"},S=a.i(9380),T=a.i(64565);a.i(43836);let U=c.forwardRef(({className:a,...c},d)=>(0,b.jsx)(J,{ref:d,className:(0,T.cn)("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",a),...c}));U.displayName=J.displayName;let V=c.forwardRef(({className:a,...c},d)=>(0,b.jsxs)("div",{className:"flex items-center border-b px-3","cmdk-input-wrapper":"",children:[(0,b.jsx)(S.Search,{className:"mr-2 h-4 w-4 shrink-0 opacity-50"}),(0,b.jsx)(J.Input,{ref:d,className:(0,T.cn)("flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",a),...c})]}));V.displayName=J.Input.displayName;let W=c.forwardRef(({className:a,...c},d)=>(0,b.jsx)(J.List,{ref:d,className:(0,T.cn)("max-h-[300px] overflow-y-auto overflow-x-hidden",a),...c}));W.displayName=J.List.displayName;let X=c.forwardRef((a,c)=>(0,b.jsx)(J.Empty,{ref:c,className:"py-6 text-center text-sm",...a}));X.displayName=J.Empty.displayName;let Y=c.forwardRef(({className:a,...c},d)=>(0,b.jsx)(J.Group,{ref:d,className:(0,T.cn)("overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",a),...c}));Y.displayName=J.Group.displayName,c.forwardRef(({className:a,...c},d)=>(0,b.jsx)(J.Separator,{ref:d,className:(0,T.cn)("-mx-1 h-px bg-border",a),...c})).displayName=J.Separator.displayName;let Z=c.forwardRef(({className:a,...c},d)=>(0,b.jsx)(J.Item,{ref:d,className:(0,T.cn)("relative flex cursor-pointer gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors data-[disabled=true]:pointer-events-none data-[selected=true]:bg-[hsl(var(--primary-soft))] data-[selected=true]:text-[hsl(var(--primary))] data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",a),...c}));Z.displayName=J.Item.displayName;var $=a.i(62491),_=a.i(84252),aa=a.i(63525),ab=a.i(37255),ac=a.i(83366),ad=a.i(83917),ae=a.i(25377),af=a.i(39096);function ag({value:a,options:f,onChange:h,disabled:j,fetching:k}){let[l,m]=(0,c.useState)(!1),[n,o]=(0,c.useState)(""),p=n.trim(),q=(0,c.useMemo)(()=>{if(!p)return f;let a=p.toLowerCase();return f.filter(b=>b.toLowerCase().includes(a))},[f,p]),r=f.some(a=>a.toLowerCase()===p.toLowerCase()),s=p.length>0&&!r,t=a=>{h(a),o(""),m(!1)};return(0,b.jsxs)(_.Popover,{open:l,onOpenChange:m,children:[(0,b.jsx)(_.PopoverTrigger,{asChild:!0,children:(0,b.jsxs)(i.Button,{type:"button",variant:"outline",role:"combobox","aria-expanded":l,disabled:j,className:"w-full justify-between font-normal",children:[(0,b.jsx)("span",{className:(0,T.cn)("truncate text-left",!a&&"text-[hsl(var(--subtle))]"),children:a||"选择或输入模型名"}),(0,b.jsx)(e.ChevronsUpDown,{className:"h-4 w-4 shrink-0 opacity-50"})]})}),(0,b.jsx)(_.PopoverContent,{align:"start",className:"w-[var(--radix-popover-trigger-width)] p-0",children:(0,b.jsxs)(U,{shouldFilter:!1,children:[(0,b.jsx)(V,{placeholder:"搜索或输入模型名",value:n,onValueChange:o}),(0,b.jsxs)(W,{children:[0!==q.length||s?null:(0,b.jsx)(X,{children:k?"正在拉取模型列表...":0===f.length?"点击「刷新列表」拉取可用模型":"无匹配结果"}),q.length>0&&(0,b.jsx)(Y,{heading:s?"可选模型":void 0,children:q.map(c=>(0,b.jsxs)(Z,{value:c,onSelect:()=>t(c),children:[(0,b.jsx)(d.Check,{className:(0,T.cn)("h-4 w-4",a===c?"opacity-100":"opacity-0")}),(0,b.jsx)("span",{className:"truncate",children:c})]},c))}),s&&(0,b.jsx)(Y,{heading:"使用自定义",children:(0,b.jsxs)(Z,{value:`__custom__${p}`,onSelect:()=>t(p),children:[(0,b.jsx)(g.Plus,{className:"h-4 w-4 text-[hsl(var(--primary))]"}),(0,b.jsxs)("span",{className:"truncate",children:['使用 "',p,'"']})]})})]})]})})]})}a.s(["LLMModelSelector",0,function({providerId:a,model:d,onProviderChange:e,onModelChange:g,autoSelectFirst:j=!1,providerLabel:k="Provider",modelLabel:l="Model"}){let{data:m=[],isLoading:n}=(0,ab.useLLMProviders)(),{data:o,isFetching:p,refetch:q}=function(a,b={}){let{context:c,ready:d}=(0,af.useRuntimeContext)();return(0,ac.useQuery)({queryKey:ae.queryKeys.llmProviderModels(c.dataScopeKey,a),queryFn:()=>(0,ad.fetchProviderModels)(a),enabled:d&&!!a&&(b.enabled??!0),staleTime:3e5,retry:!1})}(a||void 0,{enabled:!!a});(0,c.useEffect)(()=>{if(!j||a||0===m.length)return;let b=m[0];e(b.id,b.defaultModel??"")},[j,a,m]);let r=(0,c.useMemo)(()=>{let b=new Set;for(let a of(d&&b.add(d),o??[]))b.add(a.id);let c=m.find(b=>b.id===a);return c?.defaultModel&&b.add(c.defaultModel),Array.from(b)},[d,o,m,a]);return(0,b.jsxs)("div",{className:"space-y-4",children:[(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)($.Label,{className:"text-sm font-medium",children:k}),(0,b.jsxs)(aa.Select,{value:a,onValueChange:a=>{let b=m.find(b=>b.id===a);e(a,b?.defaultModel??"")},disabled:n||0===m.length,children:[(0,b.jsx)(aa.SelectTrigger,{children:(0,b.jsx)(aa.SelectValue,{placeholder:n?"加载中...":0===m.length?"请先在「模型提供商」中创建配置":"选择 Provider"})}),(0,b.jsx)(aa.SelectContent,{children:m.map(a=>(0,b.jsx)(aa.SelectItem,{value:a.id,children:a.name},a.id))})]})]}),(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between",children:[(0,b.jsx)($.Label,{className:"text-sm font-medium",children:l}),(0,b.jsxs)(i.Button,{type:"button",variant:"ghost",size:"sm",className:"h-6 px-2 text-xs",disabled:!a||p,onClick:()=>q(),children:[p?(0,b.jsx)(f.Loader2,{className:"mr-1 h-3 w-3 animate-spin"}):(0,b.jsx)(h.RefreshCw,{className:"mr-1 h-3 w-3"}),"刷新列表"]})]}),(0,b.jsx)(ag,{value:d,options:r,onChange:g,disabled:!a,fetching:p})]})]})}],64363);var ah=a.i(70535);a.s(["SystemPromptInput",0,function({value:a,onChange:c,placeholder:d,helperText:e,rows:f=3,label:g="系统提示词"}){return(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsx)($.Label,{className:"text-sm font-medium",children:g}),(0,b.jsx)(ah.Textarea,{rows:f,value:a,onChange:a=>c(a.target.value),placeholder:d,className:"text-sm"}),e&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground",children:e})]})}],32191);var ai=a.i(50681);a.s(["TemperatureSlider",0,function({value:a,onChange:c,min:d=0,max:e=2,step:f=.05,fallback:g=.7,label:h="温度"}){let i=(a??g).toFixed(2);return(0,b.jsxs)("div",{className:"space-y-2",children:[(0,b.jsxs)("div",{className:"flex items-center justify-between text-sm",children:[(0,b.jsx)("span",{className:"font-medium",children:h}),(0,b.jsx)("span",{className:"font-mono text-xs text-muted-foreground",children:i})]}),(0,b.jsx)(ai.Slider,{value:[a??g],min:d,max:e,step:f,onValueChange:a=>c(a[0]??g)})]})}],87951)},82424,a=>{"use strict";var b=a.i(39096);a.s(["useActiveInstance",0,function(){let{context:a,ready:c}=(0,b.useRuntimeContext)();return{activeInstance:a.activeInstance,ready:c,dataScopeKey:a.dataScopeKey,configRevision:a.configRevision}}])},83643,a=>{"use strict";a.s(["newId",0,function(a="id"){return"u">typeof crypto&&"randomUUID"in crypto?crypto.randomUUID():`${a}_${Date.now()}_${Math.random().toString(36).slice(2)}`}])},76446,a=>{"use strict";a.s(["findUserAnchorAbove",0,function(a,b){let c=a.findIndex(a=>a.id===b);if(c<0)return null;for(let b=c-1;b>=0;b-=1)if("user"===a[b].role)return a[b];return null},"removeAt",0,function(a,b){let c=a.findIndex(a=>a.id===b);if(c<0)return a;let d=a.slice();return d.splice(c,1),d},"removePair",0,function(a,b){let c=a.findIndex(a=>a.id===b);if(c<0)return a;let d=a.slice(),e=a[c+1]&&"assistant"===a[c+1].role?2:1;return d.splice(c,e),d},"truncateUpToAndIncluding",0,function(a,b){let c=a.findIndex(a=>a.id===b);return c<0?a:a.slice(0,c+1)}])},9135,a=>{"use strict";var b=a.i(71938);async function*c(a,b){let c=await fetch("/api/v1/llm/chat",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a),signal:b});if(!c.ok||!c.body){let a=`Chat request failed with status ${c.status}`,b="STREAM_ERROR";try{let d=await c.json();a=d.message??a,b=d.code??b}catch{}yield{type:"error",code:b,message:a};return}let e=c.body.getReader(),f=new TextDecoder("utf-8"),g="";for(;;){let{value:a,done:b}=await e.read();if(b)break;let c=(g+=f.decode(a,{stream:!0})).indexOf("\n\n");for(;-1!==c;){let a=g.slice(0,c);g=g.slice(c+2);let b=d(a);b&&(yield b),c=g.indexOf("\n\n")}}if(g.trim()){let a=d(g);a&&(yield a)}}function d(a){let b=a.split("\n"),c=[];for(let a of b)!(!a||a.startsWith(":"))&&a.startsWith("data:")&&c.push(a.slice(5).trimStart());if(0===c.length)return null;try{return JSON.parse(c.join("\n"))}catch{return null}}var e=a.i(83643),f=a.i(76446);a.s(["useQaChat",0,function(a){let[d,g]=(0,b.useState)([]),[h,i]=(0,b.useState)(!1),[j,k]=(0,b.useState)(null),l=(0,b.useRef)(null),m=(0,b.useRef)(a.onPersist);m.current=a.onPersist;let n=(0,b.useRef)(d);n.current=d;let o=(0,b.useRef)(a);o.current=a;let p=(0,b.useRef)(h);p.current=h;let q=(0,b.useRef)(new Map),r=(0,b.useRef)(null),s=(0,b.useCallback)(()=>{r.current=null;let a=q.current;if(0===a.size)return;let b=new Map(a);a.clear(),g(a=>a.map(a=>{let c=b.get(a.id);return c?{...a,...c.content?{content:a.content+c.content}:null,...c.reasoning?{reasoning:(a.reasoning??"")+c.reasoning}:null}:a}))},[]),t=(0,b.useCallback)(()=>{if(null===r.current){if("u"<typeof requestAnimationFrame)return void s();r.current=requestAnimationFrame(s)}},[s]),u=(0,b.useCallback)(()=>{null!==r.current&&"u">typeof cancelAnimationFrame&&cancelAnimationFrame(r.current),r.current=null},[]);(0,b.useEffect)(()=>u,[u]);let v=(0,b.useCallback)(()=>{l.current?.abort()},[]),w=(0,b.useCallback)(()=>{l.current?.abort(),n.current=[],g([]),k(null)},[]),x=(0,b.useCallback)(a=>{l.current?.abort(),n.current=a,g(a),k(null)},[]),y=(0,b.useCallback)(async(a,b)=>{let d=o.current,e=new AbortController;l.current=e;let f={current:!1},h={current:!1},j=b=>{g(c=>c.map(c=>c.id===a?{...c,...b}:c))};try{let g={activeInstance:d.activeInstance,providerId:d.providerId,model:d.model,messages:b,systemPrompt:d.systemPrompt,temperature:d.temperature,rag:d.rag};for await(let b of c(g,e.signal))if("query.rewritten"===b.type)j({retrievalQuery:b.query,retrievalQueryRewritten:b.query!==b.original});else if("query.fallback"===b.type)j({retrievalQuery:b.original,retrievalQueryRewritten:!1,queryRewriteFailed:!0,queryRewriteError:b.reason});else if("retrieval.done"===b.type)j({retrievedChunks:b.chunks,retrievalGroups:b.byKnowledgeBase});else if("reasoning.delta"===b.type){let c=q.current.get(a)??{};c.reasoning=(c.reasoning??"")+b.delta,q.current.set(a,c),f.current||(f.current=!0,j({reasoningStartedAt:Date.now()})),t()}else if("content.delta"===b.type){let c=q.current.get(a)??{};c.content=(c.content??"")+b.delta,q.current.set(a,c),f.current&&!h.current&&(h.current=!0,j({reasoningCompletedAt:Date.now()})),t()}else if("error"===b.type){u(),s();let a={status:"error",errorMessage:`${b.code}: ${b.message}`};f.current&&!h.current&&(a.reasoningCompletedAt=Date.now()),j(a),k(b.message);break}else if("done"===b.type){u(),s();let a={status:"done"};f.current&&!h.current&&(a.reasoningCompletedAt=Date.now()),j(a);break}}catch(c){u(),s();let a=c instanceof DOMException&&"AbortError"===c.name,b=f.current&&!h.current?{reasoningCompletedAt:Date.now()}:void 0;if(a)j({status:"done",...b});else{let a=c instanceof Error?c.message:String(c);j({status:"error",errorMessage:a,...b}),k(a)}}finally{i(!1),l.current=null;let a=m.current;a&&g(b=>(a(b),b))}},[t,s,u]),z=(0,b.useCallback)(async a=>{let b=a.trim();if(!b||p.current)return;let c=o.current;if(!c.providerId||!c.model)return void k("请先选择模型与 Provider");k(null);let d={id:(0,e.newId)(),role:"user",content:b,createdAt:Date.now(),status:"done"},f=(0,e.newId)(),h=(c.rag?.knowledgeBases?.length??0)>0,j={id:f,role:"assistant",content:"",reasoning:"",createdAt:Date.now(),status:"streaming",usingRag:h},l=[...n.current,d].map(a=>({role:a.role,content:a.content})),m=[...n.current,d,j];n.current=m,g(m),i(!0),await y(f,l)},[y]),A=(0,b.useCallback)(async a=>{if(p.current)return;let b=o.current;if(!b.providerId||!b.model)return void k("请先选择模型与 Provider");let c=(0,f.truncateUpToAndIncluding)(n.current,a),d=c[c.length-1];if(!d||"user"!==d.role)return;k(null);let h=(0,e.newId)(),j=(b.rag?.knowledgeBases?.length??0)>0,l={id:h,role:"assistant",content:"",reasoning:"",createdAt:Date.now(),status:"streaming",usingRag:j},m=c.map(a=>({role:a.role,content:a.content})),q=[...c,l];n.current=q,g(q),i(!0),await y(h,m)},[y]);return{messages:d,isStreaming:h,error:j,send:z,reissueTurn:A,deleteMessage:(0,b.useCallback)((a,b)=>{if(p.current)return;let c=n.current,d=c.find(b=>b.id===a);if(!d)return;let e="user"===d.role&&b?.withNextAssistant?(0,f.removePair)(c,a):(0,f.removeAt)(c,a);n.current=e,g(e),m.current?.(e)},[]),editUserMessage:(0,b.useCallback)((a,b)=>{let c=n.current,d=c.findIndex(b=>b.id===a);if(d<0||"user"!==c[d].role)return null;let e=c.slice();return e[d]={...c[d],content:b},n.current=e,g(e),a},[]),stop:v,clear:w,setMessages:x}}],9135)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=%5Broot-of-the-server%5D__0jb9ccl._.js.map
|
package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0jhpb-b._.js
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},62430,(a,b,c)=>{b.exports=a.r(18622)},5659,a=>{a.n(a.i(46861))},39653,a=>{a.n(a.i(1832))},49043,a=>{a.n(a.i(12506))},99902,a=>{a.n(a.i(45083))},86405,a=>{a.n(a.i(1686))},48298,a=>{a.n(a.i(80239))},77425,a=>{a.n(a.i(36833))},76920,a=>{a.n(a.i(91088))},56415,a=>{a.n(a.i(51943))},81482,a=>{a.n(a.i(78486))},8392,a=>{a.n(a.i(42492))},51819,a=>{a.n(a.i(15498))},21447,a=>{a.n(a.i(24457))},78681,a=>{a.n(a.i(29868))},96401,a=>{a.n(a.i(73667))},89117,a=>{a.n(a.i(54177))},62798,a=>{a.n(a.i(13232))},57340,a=>{a.n(a.i(26357))},10276,a=>{a.n(a.i(89049))},18021,a=>{a.n(a.i(57553))},53279,a=>{a.n(a.i(33775))},76780,a=>{a.n(a.i(15072))},68186,a=>{a.n(a.i(25630))},38099,a=>{a.n(a.i(2827))},77453,a=>{a.n(a.i(98469))},23976,a=>{a.n(a.i(58652))},48927,a=>{a.n(a.i(19824))},80524,a=>{a.n(a.i(31300))},52501,a=>{a.n(a.i(22118))},57287,a=>{a.n(a.i(63497))},25381,a=>{a.n(a.i(89785))},98316,a=>{a.n(a.i(49897))},63441,a=>{a.n(a.i(29576))},20467,a=>{"use strict";a.s(["PageHeader",()=>b]);let b=(0,a.i(13981).registerClientReference)(function(){throw Error("Attempted to call PageHeader() from the server but PageHeader is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/dashboard/src/components/layout/page-header.tsx <module evaluation>","PageHeader")},90060,a=>{"use strict";a.s(["PageHeader",()=>b]);let b=(0,a.i(13981).registerClientReference)(function(){throw Error("Attempted to call PageHeader() from the server but PageHeader is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/dashboard/src/components/layout/page-header.tsx","PageHeader")},53028,a=>{"use strict";a.i(20467);var b=a.i(90060);a.n(b)},28176,a=>{"use strict";a.s(["LLMProviderForm",()=>b]);let b=(0,a.i(13981).registerClientReference)(function(){throw Error("Attempted to call LLMProviderForm() from the server but LLMProviderForm is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/dashboard/src/components/llm-providers/llm-provider-form.tsx <module evaluation>","LLMProviderForm")},82332,a=>{"use strict";a.s(["LLMProviderForm",()=>b]);let b=(0,a.i(13981).registerClientReference)(function(){throw Error("Attempted to call LLMProviderForm() from the server but LLMProviderForm is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/dashboard/src/components/llm-providers/llm-provider-form.tsx","LLMProviderForm")},51085,a=>{"use strict";a.i(28176);var b=a.i(82332);a.n(b)},90515,a=>{"use strict";var b=a.i(16842),c=a.i(53028),d=a.i(51085);a.s(["default",0,function(){return(0,b.jsxs)("div",{className:"mx-auto max-w-2xl space-y-6",children:[(0,b.jsx)(c.PageHeader,{title:"新建大模型配置",description:"输入 OpenAI 兼容的 Base URL 与 API Key;保存后可拉取模型列表并测试连通性"}),(0,b.jsx)(d.LLMProviderForm,{})]})}])},80030,a=>{a.n(a.i(90515))}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0jhpb-b._.js.map
|
package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0p7j-9i._.js
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[50227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},37102,a=>{"use strict";let b=(0,a.i(50053).default)("triangle-alert",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);a.s(["AlertTriangle",0,b],37102)},68826,a=>{"use strict";let b=(0,a.i(50053).default)("refresh-cw",[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]]);a.s(["RefreshCw",0,b],68826)},36890,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(68189),e=a.i(84694),f=a.i(59653),g=a.i(83370),h=a.i(20251),i=a.i(66394),j=a.i(98392),k=a.i(58036),l="Checkbox",[m,n]=(0,e.createContextScope)(l),[o,p]=m(l);function q(a){let{__scopeCheckbox:d,checked:e,children:f,defaultChecked:h,disabled:i,form:j,name:k,onCheckedChange:m,required:n,value:p="on",internal_do_not_use_render:q}=a,[r,s]=(0,g.useControllableState)({prop:e,defaultProp:h??!1,onChange:m,caller:l}),[t,u]=c.useState(null),[v,w]=c.useState(null),x=c.useRef(!1),z=!t||!!j||!!t.closest("form"),A={checked:r,disabled:i,setChecked:s,control:t,setControl:u,name:k,form:j,value:p,hasConsumerStoppedPropagationRef:x,required:n,defaultChecked:!y(h)&&h,isFormControl:z,bubbleInput:v,setBubbleInput:w};return(0,b.jsx)(o,{scope:d,...A,children:"function"==typeof q?q(A):f})}var r="CheckboxTrigger",s=c.forwardRef(({__scopeCheckbox:a,onKeyDown:e,onClick:g,...h},i)=>{let{control:j,value:l,disabled:m,checked:n,required:o,setControl:q,setChecked:s,hasConsumerStoppedPropagationRef:t,isFormControl:u,bubbleInput:v}=p(r,a),w=(0,d.useComposedRefs)(i,q),x=c.useRef(n);return c.useEffect(()=>{let a=j?.form;if(a){let b=()=>s(x.current);return a.addEventListener("reset",b),()=>a.removeEventListener("reset",b)}},[j,s]),(0,b.jsx)(k.Primitive.button,{type:"button",role:"checkbox","aria-checked":y(n)?"mixed":n,"aria-required":o,"data-state":z(n),"data-disabled":m?"":void 0,disabled:m,value:l,...h,ref:w,onKeyDown:(0,f.composeEventHandlers)(e,a=>{"Enter"===a.key&&a.preventDefault()}),onClick:(0,f.composeEventHandlers)(g,a=>{s(a=>!!y(a)||!a),v&&u&&(t.current=a.isPropagationStopped(),t.current||a.stopPropagation())})})});s.displayName=r;var t=c.forwardRef((a,c)=>{let{__scopeCheckbox:d,name:e,checked:f,defaultChecked:g,required:h,disabled:i,value:j,onCheckedChange:k,form:l,...m}=a;return(0,b.jsx)(q,{__scopeCheckbox:d,checked:f,defaultChecked:g,disabled:i,required:h,onCheckedChange:k,name:e,form:l,value:j,internal_do_not_use_render:({isFormControl:a})=>(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(s,{...m,ref:c,__scopeCheckbox:d}),a&&(0,b.jsx)(x,{__scopeCheckbox:d})]})})});t.displayName=l;var u="CheckboxIndicator",v=c.forwardRef((a,c)=>{let{__scopeCheckbox:d,forceMount:e,...f}=a,g=p(u,d);return(0,b.jsx)(j.Presence,{present:e||y(g.checked)||!0===g.checked,children:(0,b.jsx)(k.Primitive.span,{"data-state":z(g.checked),"data-disabled":g.disabled?"":void 0,...f,ref:c,style:{pointerEvents:"none",...a.style}})})});v.displayName=u;var w="CheckboxBubbleInput",x=c.forwardRef(({__scopeCheckbox:a,...e},f)=>{let{control:g,hasConsumerStoppedPropagationRef:j,checked:l,defaultChecked:m,required:n,disabled:o,name:q,value:r,form:s,bubbleInput:t,setBubbleInput:u}=p(w,a),v=(0,d.useComposedRefs)(f,u),x=(0,h.usePrevious)(l),z=(0,i.useSize)(g);c.useEffect(()=>{if(!t)return;let a=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set,b=!j.current;if(x!==l&&a){let c=new Event("click",{bubbles:b});t.indeterminate=y(l),a.call(t,!y(l)&&l),t.dispatchEvent(c)}},[t,x,l,j]);let A=c.useRef(!y(l)&&l);return(0,b.jsx)(k.Primitive.input,{type:"checkbox","aria-hidden":!0,defaultChecked:m??A.current,required:n,disabled:o,name:q,value:r,form:s,...e,tabIndex:-1,ref:v,style:{...e.style,...z,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});function y(a){return"indeterminate"===a}function z(a){return y(a)?"indeterminate":a?"checked":"unchecked"}x.displayName=w;var A=a.i(53520),B=a.i(64565);let C=c.forwardRef(({className:a,...c},d)=>(0,b.jsx)(t,{ref:d,className:(0,B.cn)("grid place-content-center peer h-4 w-4 shrink-0 rounded-sm border border-primary shadow focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground",a),...c,children:(0,b.jsx)(v,{className:(0,B.cn)("grid place-content-center text-current"),children:(0,b.jsx)(A.Check,{className:"h-4 w-4"})})}));C.displayName=t.displayName,a.s(["Checkbox",0,C],36890)},12537,a=>{"use strict";let b=(0,a.i(50053).default)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);a.s(["Pencil",0,b],12537)},81619,a=>{"use strict";let b=(0,a.i(50053).default)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]]);a.s(["Loader2",0,b],81619)},83917,a=>{"use strict";var b=a.i(53141);async function c(){return(await (0,b.apiGet)("/api/v1/llm/providers")).providers}async function d(a){return(await (0,b.apiGet)(`/api/v1/llm/providers/${encodeURIComponent(a)}`)).provider}async function e(a){return(await (0,b.apiPost)("/api/v1/llm/providers",a)).provider}async function f(a,c){return(await (0,b.apiPut)(`/api/v1/llm/providers/${encodeURIComponent(a)}`,c)).provider}async function g(a){await (0,b.apiDelete)(`/api/v1/llm/providers/${encodeURIComponent(a)}`)}async function h(a){return(await (0,b.apiGet)(`/api/v1/llm/providers/${encodeURIComponent(a)}/models`)).models}async function i(a){return(await (0,b.apiPost)(`/api/v1/llm/providers/${encodeURIComponent(a)}/test`)).result}a.s(["createProvider",0,e,"deleteProvider",0,g,"fetchProviderModels",0,h,"getProvider",0,d,"listProviders",0,c,"testProviderConnectivity",0,i,"updateProvider",0,f])},37255,a=>{"use strict";var b=a.i(83366),c=a.i(83917),d=a.i(25377),e=a.i(39096);a.s(["useLLMProviders",0,function(){let{context:a,ready:f}=(0,e.useRuntimeContext)();return(0,b.useQuery)({queryKey:d.queryKeys.llmProviders(a.dataScopeKey),queryFn:c.listProviders,enabled:f,staleTime:3e4})}])},55295,a=>{"use strict";let b=(0,a.i(50053).default)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);a.s(["Trash2",0,b],55295)},9380,a=>{"use strict";let b=(0,a.i(50053).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);a.s(["Search",0,b],9380)},24567,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(43836),e=a.i(76192),f=a.i(72518);a.s(["ConfirmDialog",0,function({open:a,onOpenChange:g,title:h,description:i,confirmText:j="确认",cancelText:k="取消",variant:l="default",onConfirm:m,confirmInput:n,children:o}){let[p,q]=(0,c.useState)(""),r=void 0!==n&&""!==n,s=r&&p!==n,t=(0,c.useCallback)(()=>{s||(m(),q(""))},[s,m]),u=(0,c.useCallback)(a=>{a||q(""),g(a)},[g]);return(0,b.jsx)(d.Dialog,{open:a,onOpenChange:u,children:(0,b.jsxs)(d.DialogContent,{className:"sm:max-w-120",children:[(0,b.jsxs)(d.DialogHeader,{children:[(0,b.jsx)(d.DialogTitle,{children:h}),(0,b.jsx)(d.DialogDescription,{className:"break-all",children:i})]}),r&&(0,b.jsxs)("div",{className:"py-2",children:[(0,b.jsxs)("p",{className:"mb-2 text-sm text-muted-foreground",children:["请输入 ",(0,b.jsx)("strong",{children:n})," 以确认操作"]}),(0,b.jsx)(f.Input,{value:p,onChange:a=>q(a.target.value),placeholder:n,autoFocus:!0})]}),o&&(0,b.jsx)("div",{className:"py-1",children:o}),(0,b.jsxs)(d.DialogFooter,{children:[(0,b.jsx)(e.Button,{variant:"outline",onClick:()=>u(!1),children:k}),(0,b.jsx)(e.Button,{variant:"danger"===l?"destructive":"default",onClick:t,disabled:s,children:j})]})]})})}])},16106,a=>{"use strict";let b=(0,a.i(50053).default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);a.s(["RotateCcw",0,b],16106)},10215,a=>{"use strict";var b=a.i(34020);a.s(["EmptyState",0,function({icon:a,title:c,description:d,action:e,illustration:f}){return(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center py-16 px-4 text-center",children:[f??(0,b.jsx)("div",{className:"mb-5 flex h-20 w-20 items-center justify-center rounded-full bg-[hsl(var(--primary)/0.08)] ring-8 ring-[hsl(var(--primary)/0.04)]",children:(0,b.jsx)(a,{className:"text-primary",size:36,strokeWidth:1.75})}),(0,b.jsx)("h3",{className:"mb-2 text-base font-semibold text-foreground",children:c}),(0,b.jsx)("p",{className:"mb-6 max-w-sm text-sm text-muted-foreground",children:d}),e&&(0,b.jsx)("div",{children:e})]})}])},16772,a=>{"use strict";let b=(0,a.i(50053).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);a.s(["Copy",0,b],16772)},36965,23331,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(84694),e=a.i(58036),f=a.i(56620),g=a.i(59653),h=a.i(83370),i="Toggle",j=c.forwardRef((a,c)=>{let{pressed:d,defaultPressed:f,onPressedChange:j,...k}=a,[l,m]=(0,h.useControllableState)({prop:d,onChange:j,defaultProp:f??!1,caller:i});return(0,b.jsx)(e.Primitive.button,{type:"button","aria-pressed":l,"data-state":l?"on":"off","data-disabled":a.disabled?"":void 0,...k,ref:c,onClick:(0,g.composeEventHandlers)(a.onClick,()=>{a.disabled||m(!l)})})});j.displayName=i;var k=a.i(74974),l="ToggleGroup",[m,n]=(0,d.createContextScope)(l,[f.createRovingFocusGroupScope]),o=(0,f.createRovingFocusGroupScope)(),p=c.default.forwardRef((a,c)=>{let{type:d,...e}=a;if("single"===d)return(0,b.jsx)(s,{...e,ref:c});if("multiple"===d)return(0,b.jsx)(t,{...e,ref:c});throw Error(`Missing prop \`type\` expected on \`${l}\``)});p.displayName=l;var[q,r]=m(l),s=c.default.forwardRef((a,d)=>{let{value:e,defaultValue:f,onValueChange:g=()=>{},...i}=a,[j,k]=(0,h.useControllableState)({prop:e,defaultProp:f??"",onChange:g,caller:l});return(0,b.jsx)(q,{scope:a.__scopeToggleGroup,type:"single",value:c.default.useMemo(()=>j?[j]:[],[j]),onItemActivate:k,onItemDeactivate:c.default.useCallback(()=>k(""),[k]),children:(0,b.jsx)(w,{...i,ref:d})})}),t=c.default.forwardRef((a,d)=>{let{value:e,defaultValue:f,onValueChange:g=()=>{},...i}=a,[j,k]=(0,h.useControllableState)({prop:e,defaultProp:f??[],onChange:g,caller:l}),m=c.default.useCallback(a=>k((b=[])=>[...b,a]),[k]),n=c.default.useCallback(a=>k((b=[])=>b.filter(b=>b!==a)),[k]);return(0,b.jsx)(q,{scope:a.__scopeToggleGroup,type:"multiple",value:j,onItemActivate:m,onItemDeactivate:n,children:(0,b.jsx)(w,{...i,ref:d})})});p.displayName=l;var[u,v]=m(l),w=c.default.forwardRef((a,c)=>{let{__scopeToggleGroup:d,disabled:g=!1,rovingFocus:h=!0,orientation:i,dir:j,loop:l=!0,...m}=a,n=o(d),p=(0,k.useDirection)(j),q={role:"group",dir:p,...m};return(0,b.jsx)(u,{scope:d,rovingFocus:h,disabled:g,children:h?(0,b.jsx)(f.Root,{asChild:!0,...n,orientation:i,dir:p,loop:l,children:(0,b.jsx)(e.Primitive.div,{...q,ref:c})}):(0,b.jsx)(e.Primitive.div,{...q,ref:c})})}),x="ToggleGroupItem",y=c.default.forwardRef((a,d)=>{let e=r(x,a.__scopeToggleGroup),g=v(x,a.__scopeToggleGroup),h=o(a.__scopeToggleGroup),i=e.value.includes(a.value),j=g.disabled||a.disabled,k={...a,pressed:i,disabled:j},l=c.default.useRef(null);return g.rovingFocus?(0,b.jsx)(f.Item,{asChild:!0,...h,focusable:!j,active:i,ref:l,children:(0,b.jsx)(z,{...k,ref:d})}):(0,b.jsx)(z,{...k,ref:d})});y.displayName=x;var z=c.default.forwardRef((a,c)=>{let{__scopeToggleGroup:d,value:e,...f}=a,g=r(x,d),h={role:"radio","aria-checked":a.pressed,"aria-pressed":void 0},i="single"===g.type?h:void 0;return(0,b.jsx)(j,{...i,...f,ref:c,onPressedChange:a=>{a?g.onItemActivate(e):g.onItemDeactivate(e)}})}),A=a.i(64565);let B=c.createContext({size:"default",variant:"default"}),C=c.forwardRef(({className:a,variant:c="default",size:d="default",children:e,...f},g)=>(0,b.jsx)(p,{ref:g,className:(0,A.cn)("inline-flex items-center justify-center gap-1",a),...f,children:(0,b.jsx)(B.Provider,{value:{variant:c,size:d},children:e})}));C.displayName=p.displayName;let D=c.forwardRef(({className:a,children:c,...d},e)=>(0,b.jsx)(y,{ref:e,className:(0,A.cn)("relative inline-flex items-center justify-center whitespace-nowrap","text-sm font-medium transition-all","first:rounded-l-[7px] last:rounded-r-[7px]","border-l border-[hsl(var(--border)/0.6)]","first:border-l-0","data-[state=on]:border-l-transparent","[&[data-state=on]+*]:border-l-transparent","ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2","disabled:pointer-events-none disabled:opacity-50","hover:bg-[hsl(var(--muted)/0.6)] hover:text-[hsl(var(--foreground))]","data-[state=on]:bg-[hsl(var(--background))] data-[state=on]:text-[hsl(var(--foreground))] data-[state=on]:shadow-sm",a),...d,children:c}));D.displayName=y.displayName,a.s(["ToggleGroup",0,C,"ToggleGroupItem",0,D],36965);var E=a.i(14151);a.s(["TagInput",0,function({value:a,onChange:d,placeholder:e="输入后按回车添加"}){let[f,g]=(0,c.useState)(""),h=(0,c.useCallback)(b=>{let c=b.trim();c&&!a.includes(c)&&d([...a,c]),g("")},[a,d]),i=(0,c.useCallback)(b=>{d(a.filter((a,c)=>c!==b))},[a,d]);return(0,b.jsxs)("div",{className:(0,A.cn)("flex flex-wrap items-center gap-1.5 rounded-md border border-[hsl(var(--input))] bg-background px-3 py-2","focus-within:border-[hsl(var(--ring))] focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-0","min-h-10 transition-colors"),children:[a.map((a,c)=>(0,b.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-full border border-primary-200 bg-primary-100 px-2 py-0.5 text-xs font-medium text-primary-700",children:[a,(0,b.jsx)("button",{type:"button",onClick:()=>i(c),className:"inline-flex items-center justify-center rounded-full p-0.5 hover:opacity-70 transition-opacity","aria-label":`删除标签 ${a}`,children:(0,b.jsx)(E.X,{size:12})})]},`${a}-${c}`)),(0,b.jsx)("input",{type:"text",value:f,onChange:a=>g(a.target.value),onKeyDown:b=>{("Enter"===b.key||","===b.key)&&(b.preventDefault(),h(f)),"Backspace"===b.key&&""===f&&a.length>0&&i(a.length-1)},placeholder:0===a.length?e:"",className:"flex-1 min-w-20 bg-transparent text-sm outline-none placeholder:text-muted-foreground"})]})}],23331)},27692,a=>{"use strict";var b=a.i(71938),c=a.i(59653),d=a.i(84694),e=a.i(83370),f=a.i(39166),g=a.i(68189),h=a.i(58036),i=a.i(98392),j=a.i(59231),k=a.i(34020),l="Collapsible",[m,n]=(0,d.createContextScope)(l),[o,p]=m(l),q=b.forwardRef((a,c)=>{let{__scopeCollapsible:d,open:f,defaultOpen:g,disabled:i,onOpenChange:m,...n}=a,[p,q]=(0,e.useControllableState)({prop:f,defaultProp:g??!1,onChange:m,caller:l});return(0,k.jsx)(o,{scope:d,disabled:i,contentId:(0,j.useId)(),open:p,onOpenToggle:b.useCallback(()=>q(a=>!a),[q]),children:(0,k.jsx)(h.Primitive.div,{"data-state":w(p),"data-disabled":i?"":void 0,...n,ref:c})})});q.displayName=l;var r="CollapsibleTrigger",s=b.forwardRef((a,b)=>{let{__scopeCollapsible:d,...e}=a,f=p(r,d);return(0,k.jsx)(h.Primitive.button,{type:"button","aria-controls":f.contentId,"aria-expanded":f.open||!1,"data-state":w(f.open),"data-disabled":f.disabled?"":void 0,disabled:f.disabled,...e,ref:b,onClick:(0,c.composeEventHandlers)(a.onClick,f.onOpenToggle)})});s.displayName=r;var t="CollapsibleContent",u=b.forwardRef((a,b)=>{let{forceMount:c,...d}=a,e=p(t,a.__scopeCollapsible);return(0,k.jsx)(i.Presence,{present:c||e.open,children:({present:a})=>(0,k.jsx)(v,{...d,ref:b,present:a})})});u.displayName=t;var v=b.forwardRef((a,c)=>{let{__scopeCollapsible:d,present:e,children:i,...j}=a,l=p(t,d),[m,n]=b.useState(e),o=b.useRef(null),q=(0,g.useComposedRefs)(c,o),r=b.useRef(0),s=r.current,u=b.useRef(0),v=u.current,x=l.open||m,y=b.useRef(x),z=b.useRef(void 0);return b.useEffect(()=>{let a=requestAnimationFrame(()=>y.current=!1);return()=>cancelAnimationFrame(a)},[]),(0,f.useLayoutEffect)(()=>{let a=o.current;if(a){z.current=z.current||{transitionDuration:a.style.transitionDuration,animationName:a.style.animationName},a.style.transitionDuration="0s",a.style.animationName="none";let b=a.getBoundingClientRect();r.current=b.height,u.current=b.width,y.current||(a.style.transitionDuration=z.current.transitionDuration,a.style.animationName=z.current.animationName),n(e)}},[l.open,e]),(0,k.jsx)(h.Primitive.div,{"data-state":w(l.open),"data-disabled":l.disabled?"":void 0,id:l.contentId,hidden:!x,...j,ref:q,style:{"--radix-collapsible-content-height":s?`${s}px`:void 0,"--radix-collapsible-content-width":v?`${v}px`:void 0,...a.style},children:x&&i})});function w(a){return a?"open":"closed"}a.s(["Collapsible",0,q,"CollapsibleContent",0,u,"CollapsibleTrigger",0,s],27692)},11097,a=>{a.v(b=>Promise.all(["server/chunks/ssr/0w08_streamdown_dist_highlighted-body-OFNGDK62_03c0toy.js"].map(b=>a.l(b))).then(()=>b(37971)))},91275,a=>{a.v(b=>Promise.all(["server/chunks/ssr/0w08_streamdown_dist_mermaid-GHXKKRXX_03ew1fz.js"].map(b=>a.l(b))).then(()=>b(91395)))}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__0p7j-9i._.js.map
|