@tablestore/tablestore-agent-cli 0.2.3 → 0.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (266) hide show
  1. package/dist/commands/kb/create.d.ts.map +1 -1
  2. package/dist/commands/kb/create.js +9 -0
  3. package/dist/commands/kb/create.js.map +1 -1
  4. package/dist/commands/kb/retrieve.d.ts.map +1 -1
  5. package/dist/commands/kb/retrieve.js +40 -3
  6. package/dist/commands/kb/retrieve.js.map +1 -1
  7. package/dist/dashboard-runtime/dashboard/.next/BUILD_ID +1 -1
  8. package/dist/dashboard-runtime/dashboard/.next/build-manifest.json +3 -3
  9. package/dist/dashboard-runtime/dashboard/.next/prerender-manifest.json +3 -3
  10. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/chat/page.js.nft.json +1 -1
  11. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/chat/page_client-reference-manifest.js +1 -1
  12. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/documents/page.js.nft.json +1 -1
  13. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/documents/page_client-reference-manifest.js +1 -1
  14. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/page.js.nft.json +1 -1
  15. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/page_client-reference-manifest.js +1 -1
  16. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/qa/page.js.nft.json +1 -1
  17. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/qa/page_client-reference-manifest.js +1 -1
  18. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/retrieval/page.js.nft.json +1 -1
  19. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/retrieval/page_client-reference-manifest.js +1 -1
  20. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/settings/page.js.nft.json +1 -1
  21. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/[name]/settings/page_client-reference-manifest.js +1 -1
  22. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/create/page.js.nft.json +1 -1
  23. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/create/page_client-reference-manifest.js +1 -1
  24. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/page.js.nft.json +1 -1
  25. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/knowledge-base/page_client-reference-manifest.js +1 -1
  26. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/[id]/page.js.nft.json +1 -1
  27. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/[id]/page_client-reference-manifest.js +1 -1
  28. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/new/page.js.nft.json +1 -1
  29. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/new/page_client-reference-manifest.js +1 -1
  30. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/page.js.nft.json +1 -1
  31. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/llm-providers/page_client-reference-manifest.js +1 -1
  32. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/messages/page.js.nft.json +1 -1
  33. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/messages/page_client-reference-manifest.js +1 -1
  34. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/page.js.nft.json +1 -1
  35. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/page_client-reference-manifest.js +1 -1
  36. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/requests/page.js.nft.json +1 -1
  37. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/requests/page_client-reference-manifest.js +1 -1
  38. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/search/page.js.nft.json +1 -1
  39. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/search/page_client-reference-manifest.js +1 -1
  40. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/settings/page.js.nft.json +1 -1
  41. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/settings/page_client-reference-manifest.js +1 -1
  42. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/units/page.js.nft.json +1 -1
  43. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/[store]/units/page_client-reference-manifest.js +1 -1
  44. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/create/page.js.nft.json +1 -1
  45. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/create/page_client-reference-manifest.js +1 -1
  46. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/page.js.nft.json +1 -1
  47. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/memory/page_client-reference-manifest.js +1 -1
  48. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/projects/page.js.nft.json +1 -1
  49. package/dist/dashboard-runtime/dashboard/.next/server/app/(dashboard)/projects/page_client-reference-manifest.js +1 -1
  50. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.html +1 -1
  51. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.rsc +1 -1
  52. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  53. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  54. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  55. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  56. package/dist/dashboard-runtime/dashboard/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  57. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  58. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.html +1 -1
  59. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.rsc +2 -2
  60. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  61. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  62. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  63. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  64. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  65. package/dist/dashboard-runtime/dashboard/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  66. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/auth/status/route.js.nft.json +1 -1
  67. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/auth/token/route.js.nft.json +1 -1
  68. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/[name]/route.js.nft.json +1 -1
  69. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/[name]/token/route.js.nft.json +1 -1
  70. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/[name]/use/route.js.nft.json +1 -1
  71. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/instances/route.js.nft.json +1 -1
  72. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/chunks/route.js.nft.json +1 -1
  73. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/[docId]/chunks/route.js.nft.json +1 -1
  74. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/[docId]/route.js.nft.json +1 -1
  75. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/route.js.nft.json +1 -1
  76. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/documents/upload/route.js.nft.json +1 -1
  77. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/retrieve/route.js.nft.json +1 -1
  78. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/[name]/route.js.nft.json +1 -1
  79. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/knowledge-bases/route.js.nft.json +1 -1
  80. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/chat/route.js.nft.json +1 -1
  81. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/[id]/models/route.js.nft.json +1 -1
  82. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/[id]/route.js.nft.json +1 -1
  83. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/[id]/test/route.js.nft.json +1 -1
  84. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/llm/providers/route.js.nft.json +1 -1
  85. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/logs/client/route.js.nft.json +1 -1
  86. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/messages/route.js.nft.json +1 -1
  87. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/requests/route.js.nft.json +1 -1
  88. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/route.js.nft.json +1 -1
  89. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/search/route.js.nft.json +1 -1
  90. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/units/[memoryId]/route.js.nft.json +1 -1
  91. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/[store]/units/route.js.nft.json +1 -1
  92. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/memory/stores/route.js.nft.json +1 -1
  93. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/oss/list/route.js.nft.json +1 -1
  94. package/dist/dashboard-runtime/dashboard/.next/server/app/api/v1/runtime/context/route.js.nft.json +1 -1
  95. package/dist/dashboard-runtime/dashboard/.next/server/app/index.html +1 -1
  96. package/dist/dashboard-runtime/dashboard/.next/server/app/index.rsc +2 -2
  97. package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  98. package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_full.segment.rsc +2 -2
  99. package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_head.segment.rsc +1 -1
  100. package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_index.segment.rsc +2 -2
  101. package/dist/dashboard-runtime/dashboard/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  102. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  103. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.html +1 -1
  104. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.rsc +3 -3
  105. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_full.segment.rsc +3 -3
  106. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_head.segment.rsc +1 -1
  107. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_index.segment.rsc +2 -2
  108. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/_tree.segment.rsc +2 -2
  109. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/onboarding/__PAGE__.segment.rsc +2 -2
  110. package/dist/dashboard-runtime/dashboard/.next/server/app/onboarding.segments/onboarding.segment.rsc +1 -1
  111. package/dist/dashboard-runtime/dashboard/.next/server/app/page_client-reference-manifest.js +1 -1
  112. package/dist/dashboard-runtime/dashboard/.next/server/chunks/0p91_next_dist_esm_build_templates_app-route_0n~ec7s.js +6 -6
  113. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/0b1r_app_(dashboard)_knowledge-base_[name]_documents_documents-client_tsx_0g2uxmt._.js +2 -2
  114. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/0e95_src_app_(dashboard)_knowledge-base_[name]_settings_settings-client_tsx_13312zk._.js +1 -1
  115. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__08faq-z._.js +1 -1
  116. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0c94d.y._.js +3 -0
  117. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0jb9ccl._.js +1 -1
  118. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/{[root-of-the-server]__00uh_im._.js → [root-of-the-server]__0lgg04c._.js} +1 -1
  119. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_01-2v37._.js +1 -1
  120. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_01ag-vl._.js +3 -0
  121. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0atzifq._.js +3 -0
  122. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0f4u0.1._.js +1 -1
  123. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0gbt~hy._.js +1 -1
  124. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0gl7kh7._.js +1 -1
  125. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0j-q~ro._.js +1 -1
  126. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0jghj2_._.js +1 -1
  127. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0jlyg05._.js +3 -0
  128. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0n4gd_6._.js +1 -1
  129. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/{_0l~-9i0._.js → _0tdjkbc._.js} +2 -2
  130. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0tej2s.._.js +1 -1
  131. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_10u~-xc._.js +3 -0
  132. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_12r9c8h._.js +1 -1
  133. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0.glq39._.js +3 -0
  134. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_00ofp7q._.js +1 -1
  135. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_05.qn9h._.js +3 -0
  136. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_065m1.j._.js +1 -1
  137. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0xf3ffa._.js +1 -1
  138. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0y49vhd._.js +1 -1
  139. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_10dsqx~._.js +1 -1
  140. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_knowledge-base_create_page_tsx_0916~g-._.js +1 -1
  141. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_app_(dashboard)_memory_[store]_units_page_tsx_0.6xnei._.js +1 -1
  142. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_components_0ls1exu._.js +1 -1
  143. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_components_0ugdjlb._.js +1 -1
  144. package/dist/dashboard-runtime/dashboard/.next/server/middleware-build-manifest.js +3 -3
  145. package/dist/dashboard-runtime/dashboard/.next/server/pages/404.html +1 -1
  146. package/dist/dashboard-runtime/dashboard/.next/server/pages/500.html +1 -1
  147. package/dist/dashboard-runtime/dashboard/.next/server/server-reference-manifest.js +1 -1
  148. package/dist/dashboard-runtime/dashboard/.next/server/server-reference-manifest.json +1 -1
  149. package/dist/dashboard-runtime/dashboard/.next/static/chunks/00wmf85833643.js +1 -0
  150. package/dist/dashboard-runtime/dashboard/.next/static/chunks/02tj1_rhgobzv.js +1 -0
  151. package/dist/dashboard-runtime/dashboard/.next/static/chunks/{0mea2ylxe.umh.js → 02zf3qddfaw~u.js} +1 -1
  152. package/dist/dashboard-runtime/dashboard/.next/static/chunks/039i70t10axdd.css +1 -0
  153. package/dist/dashboard-runtime/dashboard/.next/static/chunks/04bfame9rk.3d.js +5 -0
  154. package/dist/dashboard-runtime/dashboard/.next/static/chunks/07ygw8215kyvc.js +1 -0
  155. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0b5hr027rat4w.js +138 -0
  156. package/dist/dashboard-runtime/dashboard/.next/static/chunks/{0__g1ogrdh412.js → 0bkm-5yza5~d2.js} +1 -1
  157. package/dist/dashboard-runtime/dashboard/.next/static/chunks/{0lrw.bnws62y9.js → 0d7d.b.v9noym.js} +1 -1
  158. package/dist/dashboard-runtime/dashboard/.next/static/chunks/{0cto67_iw~p9z.js → 0fdofp-3kkc4g.js} +1 -1
  159. package/dist/dashboard-runtime/dashboard/.next/static/chunks/{18d_i28~jrf91.js → 0i8hdbek9j-fu.js} +1 -1
  160. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0ioivx4pbmayb.js +1 -0
  161. package/dist/dashboard-runtime/dashboard/.next/static/chunks/{0lp2g_27uyhuz.js → 0je7fmsrz2vok.js} +1 -1
  162. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0jukioxtp1mn3.js +138 -0
  163. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0klidr2i6cd.g.js +1 -0
  164. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0k~bkh1586r2i.js +1 -0
  165. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0nakvv2p1kjnf.js +1 -0
  166. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0un~rqes29pcr.js +1 -0
  167. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0v.u57bsjppd_.js +1 -0
  168. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0x3w~yxvm1xsq.js +4 -0
  169. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0x5gol39unrgb.js +1 -0
  170. package/dist/dashboard-runtime/dashboard/.next/static/chunks/12s59v_sk0q-z.js +1 -0
  171. package/dist/dashboard-runtime/dashboard/.next/static/chunks/{06uuhz24tvdt..js → 14~eqof4660i3.js} +1 -1
  172. package/dist/dashboard-runtime/dashboard/.next/static/chunks/16y3764x-fh1n.js +1 -0
  173. package/dist/dashboard-runtime/dashboard/.next/static/chunks/17mcnyr~1j7ih.js +1 -0
  174. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/knowledge-base/[name]/documents/documents-client.tsx +1 -1
  175. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/knowledge-base/[name]/layout-client.tsx +62 -26
  176. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/messages/page.tsx +8 -4
  177. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/requests/page.tsx +6 -2
  178. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/requests/request-detail-dialog.tsx +9 -9
  179. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/requests/requests-table.tsx +2 -2
  180. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/search/page.tsx +5 -1
  181. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/[store]/units/page.tsx +11 -7
  182. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/create/page.tsx +1 -1
  183. package/dist/dashboard-runtime/dashboard/src/app/(dashboard)/memory/page.tsx +1 -1
  184. package/dist/dashboard-runtime/dashboard/src/app/api/v1/llm/chat/route.ts +124 -13
  185. package/dist/dashboard-runtime/dashboard/src/app/globals.css +23 -0
  186. package/dist/dashboard-runtime/dashboard/src/components/chat/chat-config-context.tsx +39 -17
  187. package/dist/dashboard-runtime/dashboard/src/components/chat/chat-mount-config.tsx +1 -0
  188. package/dist/dashboard-runtime/dashboard/src/components/chat/memory-bind-section.tsx +15 -15
  189. package/dist/dashboard-runtime/dashboard/src/components/chat/mount-retrieval-dialog.tsx +360 -0
  190. package/dist/dashboard-runtime/dashboard/src/components/chat/mount-row.tsx +49 -5
  191. package/dist/dashboard-runtime/dashboard/src/components/chat/unified-retrieval-section.tsx +61 -26
  192. package/dist/dashboard-runtime/dashboard/src/components/documents/doc-chunks-dialog.tsx +72 -20
  193. package/dist/dashboard-runtime/dashboard/src/components/instance/connect-instance-form.tsx +5 -0
  194. package/dist/dashboard-runtime/dashboard/src/components/knowledge-base/embedding-config-form.tsx +16 -2
  195. package/dist/dashboard-runtime/dashboard/src/components/knowledge-base/kb-card.tsx +37 -24
  196. package/dist/dashboard-runtime/dashboard/src/components/knowledge-base/kb-create-form.tsx +173 -86
  197. package/dist/dashboard-runtime/dashboard/src/components/knowledge-base/kb-settings-form.tsx +319 -280
  198. package/dist/dashboard-runtime/dashboard/src/components/layout/detail-sidebar.tsx +47 -18
  199. package/dist/dashboard-runtime/dashboard/src/components/layout/sidebar-instance-card.tsx +2 -2
  200. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-add-dialog.tsx +2 -2
  201. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-edit-dialog.tsx +2 -2
  202. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-messages-table.tsx +3 -3
  203. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-requests-table.tsx +12 -12
  204. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-scope-bar.tsx +20 -11
  205. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-search-form.tsx +7 -7
  206. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-search-results.tsx +6 -6
  207. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-store-card.tsx +1 -1
  208. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-store-list.tsx +1 -1
  209. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-unit-detail-panel.tsx +4 -4
  210. package/dist/dashboard-runtime/dashboard/src/components/memory/memory-unit-table.tsx +2 -2
  211. package/dist/dashboard-runtime/dashboard/src/components/qa/qa-message.tsx +104 -7
  212. package/dist/dashboard-runtime/dashboard/src/components/retrieval/retrieval-form.tsx +241 -24
  213. package/dist/dashboard-runtime/dashboard/src/components/retrieval/retrieval-rerank-fields.tsx +1 -0
  214. package/dist/dashboard-runtime/dashboard/src/components/retrieval/retrieval-result-card.tsx +52 -4
  215. package/dist/dashboard-runtime/dashboard/src/components/shared/status-badge.tsx +10 -5
  216. package/dist/dashboard-runtime/dashboard/src/components/ui/nav-tab-bar.tsx +1 -1
  217. package/dist/dashboard-runtime/dashboard/src/hooks/use-chat-history.ts +9 -5
  218. package/dist/dashboard-runtime/dashboard/src/lib/constants.ts +8 -0
  219. package/dist/dashboard-runtime/dashboard/src/lib/server/llm-client.ts +19 -1
  220. package/dist/dashboard-runtime/dashboard/src/schemas/knowledge-base.ts +6 -0
  221. package/dist/dashboard-runtime/dashboard/src/schemas/retrieval.ts +46 -27
  222. package/dist/dashboard-runtime/dashboard/src/types/knowledge-base.ts +10 -0
  223. package/dist/dashboard-runtime/dashboard/src/types/retrieval.ts +9 -4
  224. package/dist/dashboard-runtime/dashboard/tailwind.config.ts +4 -0
  225. package/dist/dashboard-runtime/dashboard/vitest.config.mjs +5 -2
  226. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-sdk/dist/tsconfig.tsbuildinfo +1 -1
  227. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/tsconfig.tsbuildinfo +1 -1
  228. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/types.d.ts +21 -5
  229. package/dist/dashboard-runtime/node_modules/@tablestore/tablestore-agent-shared/dist/types.d.ts.map +1 -1
  230. package/dist/node_modules/@tablestore/tablestore-agent-sdk/dist/tsconfig.tsbuildinfo +1 -1
  231. package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/tsconfig.tsbuildinfo +1 -1
  232. package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/types.d.ts +21 -5
  233. package/dist/node_modules/@tablestore/tablestore-agent-shared/dist/types.d.ts.map +1 -1
  234. package/dist/utils/read-image-input.d.ts +47 -0
  235. package/dist/utils/read-image-input.d.ts.map +1 -0
  236. package/dist/utils/read-image-input.js +89 -0
  237. package/dist/utils/read-image-input.js.map +1 -0
  238. package/package.json +2 -2
  239. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/[root-of-the-server]__0hozzu6._.js +0 -3
  240. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0tr8-3u._.js +0 -3
  241. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0uu1sjh._.js +0 -3
  242. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_0vasoy6._.js +0 -3
  243. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_12~3vfk._.js +0 -3
  244. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/_13_lb.o._.js +0 -3
  245. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_0ejgygh._.js +0 -3
  246. package/dist/dashboard-runtime/dashboard/.next/server/chunks/ssr/dashboard_src_components_ui_0-tuf-h._.js +0 -3
  247. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0535h0pr4~.-1.js +0 -1
  248. package/dist/dashboard-runtime/dashboard/.next/static/chunks/062k9jbtd9.lv.js +0 -1
  249. package/dist/dashboard-runtime/dashboard/.next/static/chunks/06aj_c5rwvkut.js +0 -4
  250. package/dist/dashboard-runtime/dashboard/.next/static/chunks/07t_2t_-s9aq_.js +0 -5
  251. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0bs_w1~xt92db.js +0 -138
  252. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0d29.l~3ip181.js +0 -1
  253. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0gjg-rd.ybcga.js +0 -1
  254. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0jc31diex030o.js +0 -1
  255. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0m6zpy2h1p2vp.js +0 -138
  256. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0rm8~7jovs879.css +0 -1
  257. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0t0yqi68~eil6.js +0 -1
  258. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0th7u6qvdy3x2.js +0 -1
  259. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0tmwptel_4y0o.js +0 -1
  260. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0u6_s-0w8.yr..js +0 -1
  261. package/dist/dashboard-runtime/dashboard/.next/static/chunks/0v9d5wl9nsva3.js +0 -1
  262. package/dist/dashboard-runtime/dashboard/.next/static/chunks/14.dp0-y_mhjo.js +0 -1
  263. package/dist/dashboard-runtime/dashboard/.next/static/chunks/15bzqpm440jvz.js +0 -1
  264. /package/dist/dashboard-runtime/dashboard/.next/static/{Vhp9IA5UJNqZzEyFxakjw → EIbKHHti0Z1ephKfJzCKH}/_buildManifest.js +0 -0
  265. /package/dist/dashboard-runtime/dashboard/.next/static/{Vhp9IA5UJNqZzEyFxakjw → EIbKHHti0Z1ephKfJzCKH}/_clientMiddlewareManifest.js +0 -0
  266. /package/dist/dashboard-runtime/dashboard/.next/static/{Vhp9IA5UJNqZzEyFxakjw → EIbKHHti0Z1ephKfJzCKH}/_ssgManifest.js +0 -0
@@ -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 L=(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,a.memoryHits&&a.memoryHits.length>0?(0,d.jsx)(J,{hits:a.memoryHits,query:a.memoryQuery}):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})]})}function J({hits:a,query:b}){let[c,f]=(0,e.useState)(!1);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)(i.Brain,{className:"h-3.5 w-3.5"}),"参考 ",a.length," 条记忆",b?(0,d.jsxs)("span",{className:"max-w-[200px] truncate text-muted-foreground/70",children:["· ",b]}):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-2",children:a.map((a,b)=>(0,d.jsx)(K,{hit:a,index:b+1},a.unit.memcell_id??`${b}-${(a.unit.text??"").slice(0,16)}`))})})]})}function K({hit:a,index:b}){let c=a.unit.memcell_id,e="number"==typeof a.score?a.score:void 0;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}),c?(0,d.jsx)("span",{className:"min-w-0 truncate font-mono text-foreground/80",title:c,children:c}):(0,d.jsx)("span",{className:"text-muted-foreground/70",children:"未命名记忆"}),a.source?(0,d.jsx)("span",{className:"rounded bg-[hsl(var(--muted))] px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-muted-foreground",children:a.source}):null,(0,d.jsx)("span",{className:"ml-auto shrink-0 font-mono",children:void 0!==e?e.toFixed(4):"—"})]}),(0,d.jsx)("p",{className:"line-clamp-4 whitespace-pre-wrap text-xs text-foreground/80",children:a.unit.text})]})}L.displayName="QaMessage",a.s(["QaMessage",0,L]),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,55553,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,a.s(["Command",0,U,"CommandEmpty",0,X,"CommandGroup",0,Y,"CommandInput",0,V,"CommandItem",0,Z,"CommandList",0,W],55553);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,d)=>{let e=o.current,f=new AbortController;l.current=f;let h={current:!1},j={current:!1},n=b=>{g(c=>c.map(c=>c.id===a?{...c,...b}:c))};try{let g={activeInstance:e.activeInstance,providerId:e.providerId,model:e.model,messages:b,systemPrompt:e.systemPrompt,temperature:e.temperature,rag:e.rag,...e.memory?{memory:{...e.memory,turnId:d}}:{}};for await(let b of c(g,f.signal))if("query.rewritten"===b.type)n({retrievalQuery:b.query,retrievalQueryRewritten:b.query!==b.original});else if("query.fallback"===b.type)n({retrievalQuery:b.original,retrievalQueryRewritten:!1,queryRewriteFailed:!0,queryRewriteError:b.reason});else if("retrieval.done"===b.type)n({retrievedChunks:b.chunks,retrievalGroups:b.byKnowledgeBase});else if("memory.start"===b.type)n({memoryQuery:b.query});else if("memory.done"===b.type)n({memoryHits:b.hits});else if("memory.save.skipped"===b.type)console.warn("[chat] memory.save.skipped:",b.reason);else if("reasoning.delta"===b.type){let c=q.current.get(a)??{};c.reasoning=(c.reasoning??"")+b.delta,q.current.set(a,c),h.current||(h.current=!0,n({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),h.current&&!j.current&&(j.current=!0,n({reasoningCompletedAt:Date.now()})),t()}else if("error"===b.type){u(),s();let a={status:"error",errorMessage:`${b.code}: ${b.message}`};h.current&&!j.current&&(a.reasoningCompletedAt=Date.now()),n(a),k(b.message);break}else if("done"===b.type){u(),s();let a={status:"done"};h.current&&!j.current&&(a.reasoningCompletedAt=Date.now()),n(a);break}}catch(c){u(),s();let a=c instanceof DOMException&&"AbortError"===c.name,b=h.current&&!j.current?{reasoningCompletedAt:Date.now()}:void 0;if(a)n({status:"done",...b});else{let a=c instanceof Error?c.message:String(c);n({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=(0,e.newId)("turn"),f={id:(0,e.newId)(),role:"user",content:b,createdAt:Date.now(),status:"done",turnId:d},h=(0,e.newId)(),j=(c.rag?.knowledgeBases?.length??0)>0,l={id:h,role:"assistant",content:"",reasoning:"",createdAt:Date.now(),status:"streaming",usingRag:j},m=[...n.current,f].map(a=>({role:a.role,content:a.content})),q=[...n.current,f,l];n.current=q,g(q),i(!0),await y(h,m,d)},[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;let h=d.turnId??(0,e.newId)("turn");if(!d.turnId){let a=c.length-1;c[a]={...d,turnId:h}}k(null);let j=(0,e.newId)(),l=(b.rag?.knowledgeBases?.length??0)>0,m={id:j,role:"assistant",content:"",reasoning:"",createdAt:Date.now(),status:"streaming",usingRag:l},q=c.map(a=>({role:a.role,content:a.content})),r=[...c,m];n.current=r,g(r),i(!0),await y(j,q,h)},[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(43836),w=a.i(24567),x=a.i(64565),y=a.i(67558),z=a.i(13562),A=b([z]);function B(a){try{let b=document.createElement("textarea");b.value=a,b.style.position="fixed",b.style.opacity="0",document.body.appendChild(b),b.select(),document.execCommand("copy"),document.body.removeChild(b),q.toast.success("已复制")}catch{q.toast.error("复制失败")}}[z]=A.then?(await A)():A;let O=(0,e.memo)(function({message:a,busy:b,onDelete:c,onResend:e,onRegenerate:f,onEditSave:g}){return"user"===a.role?(0,d.jsx)(G,{message:a,busy:b,onDelete:c,onResend:e,onEditSave:g}):(0,d.jsx)(H,{message:a,busy:b,onDelete:c,onRegenerate:f})},(a,b)=>a.message===b.message&&a.busy===b.busy);function C({align:a,disabled:b,onCopy:c,onDelete:e,onEdit:f,onResend:g,onRegenerate:h}){return(0,d.jsxs)("div",{className:(0,x.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)(D,{title:"复制",disabled:b,onClick:c,children:(0,d.jsx)(k.Copy,{className:"h-3.5 w-3.5"})}),f&&(0,d.jsx)(D,{title:"编辑",disabled:b,onClick:f,children:(0,d.jsx)(l.Pencil,{className:"h-3.5 w-3.5"})}),g&&(0,d.jsx)(D,{title:"重新发送",disabled:b,onClick:g,children:(0,d.jsx)(o.Send,{className:"h-3.5 w-3.5"})}),h&&(0,d.jsx)(D,{title:"重新生成",disabled:b,onClick:h,children:(0,d.jsx)(m.RotateCcw,{className:"h-3.5 w-3.5"})}),(0,d.jsx)(D,{title:"删除",disabled:b,onClick:e,destructive:!0,children:(0,d.jsx)(p.Trash2,{className:"h-3.5 w-3.5"})})]})}function D({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,x.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 E({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)(F,{label:"意图重写失败 · 已回退到原问题",detail:b??"rewriter 返回空结果或抛错"}),g&&e&&(0,d.jsx)(F,{label:`${c} 个知识库检索失败`,detail:e.map(a=>`• ${a.name}: ${a.reason}`).join("\n")})]}):null}function F({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,x.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,x.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 G({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),[v,x]=(0,e.useState)(!0),y=(0,e.useCallback)(()=>{if(a.content)try{navigator.clipboard&&window.isSecureContext?navigator.clipboard.writeText(a.content).then(()=>q.toast.success("已复制"),()=>{B(a.content)}):B(a.content)}catch{B(a.content)}},[a.content]),z=(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]),A=(0,e.useCallback)(()=>{m(a.content),k(!1)},[a.content]),D=(0,e.useCallback)(a=>{"Escape"===a.key?(a.preventDefault(),A()):"Enter"===a.key&&(a.metaKey||a.ctrlKey)&&(a.preventDefault(),z())},[z,A]);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:D,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:A,children:"取消"}),(0,d.jsx)(r.Button,{type:"button",size:"sm",disabled:!l.trim()||l.trim()===a.content,onClick:z,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)(C,{align:"right",disabled:b,onCopy:y,onEdit:()=>{m(a.content),k(!0)},onResend:()=>t(!0),onDelete:()=>o(!0)})]}),(0,d.jsx)(w.ConfirmDialog,{open:n,onOpenChange:o,title:"删除此消息?",description:"该操作不可撤销。",confirmText:"删除",variant:"danger",onConfirm:()=>{c(a.id,{withNextAssistant:v}),o(!1)},children:(0,d.jsxs)("label",{className:"flex items-center gap-2 text-sm text-foreground",children:[(0,d.jsx)(s.Checkbox,{checked:v,onCheckedChange:a=>x(!0===a)}),"同时删除下方的 AI 回复"]})}),(0,d.jsx)(w.ConfirmDialog,{open:p,onOpenChange:t,title:"重新发送此消息?",description:"将丢弃下方所有消息并重新生成回答。",confirmText:"重新发送",onConfirm:()=>{t(!1),f(a.id)}})]})}function H({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,v=!!a.retrievalQuery&&!a.retrievedChunks,x=(a.retrievalGroups??[]).filter(a=>a.error).map(a=>({name:a.knowledgeBaseName,reason:a.error??""})),y=(0,e.useCallback)(()=>{if(a.content)try{navigator.clipboard&&window.isSecureContext?navigator.clipboard.writeText(a.content).then(()=>q.toast.success("已复制"),()=>{B(a.content)}):B(a.content)}catch{B(a.content)}},[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)(I,{reasoning:a.reasoning??"",streaming:o,startedAt:a.reasoningStartedAt,completedAt:a.reasoningCompletedAt,intentExtracting:u,retrievalInFlight:v}):null,(0,d.jsx)(E,{rewriteFailed:a.queryRewriteFailed,rewriteError:a.queryRewriteError,failedKbCount:x.length,failedKbDetails:x}),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)(J,{chunks:a.retrievedChunks,groups:a.retrievalGroups}):null,a.memoryHits&&a.memoryHits.length>0?(0,d.jsx)(M,{hits:a.memoryHits,query:a.memoryQuery}):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)(z.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)(C,{align:"left",disabled:b||o,onCopy:y,onRegenerate:()=>m(!0),onDelete:()=>k(!0)}),(0,d.jsx)(w.ConfirmDialog,{open:j,onOpenChange:k,title:"删除此回复?",description:"该操作不可撤销。",confirmText:"删除",variant:"danger",onConfirm:()=>{c(a.id),k(!1)}}),(0,d.jsx)(w.ConfirmDialog,{open:l,onOpenChange:m,title:"重新生成此回复?",description:"将丢弃下方所有消息并重新生成。",confirmText:"重新生成",onConfirm:()=>{m(!1),g(a.id)}})]})}function I({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,w="正在思考";return v?w="深度思考中":h?w="正在检索知识库":g&&(w="检索意图提取"),(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,x.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,x.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:w}):(0,d.jsx)("span",{children:"已深度思考"}),s&&(0,d.jsxs)("span",{className:(0,x.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,x.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 J({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,x.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)(K,{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)(L,{chunk:a,index:b+1},`${a.docId}-${a.chunkId}`))})})})]})}function K({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)(L,{chunk:a,index:e},`${a.docId}-${a.chunkId}`)})})]})}function L({chunk:a,index:b}){let[c,f]=(0,e.useState)(null),g=a.ossKey?.split("/").pop()||a.ossKey||"未知文件",h=a.chunkType?.toLowerCase()==="image",i=a.imageBase64?a.imageBase64.startsWith("data:")?a.imageBase64:`${y.IMAGE_FALLBACK_DATA_PREFIX}${a.imageBase64}`:void 0;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:g}),(0,d.jsxs)("span",{children:["Chunk #",a.chunkId]}),h&&(0,d.jsx)("span",{className:"rounded bg-primary/10 px-1 py-0.5 text-[10px] font-medium text-primary",children:"IMAGE"}),(0,d.jsx)("span",{className:"ml-auto font-mono",children:a.score.toFixed(4)})]}),h&&i&&(0,d.jsx)("img",{src:i,alt:`Image chunk #${a.chunkId}`,className:"mt-2 max-w-[180px] max-h-[180px] object-contain rounded border border-border cursor-pointer hover:opacity-80 transition-opacity",onClick:()=>f(i)}),a.content&&(0,d.jsx)("p",{className:(0,x.cn)("line-clamp-4 whitespace-pre-wrap text-xs text-foreground/80",h&&"mt-2"),children:a.content}),(0,d.jsx)(v.Dialog,{open:!!c,onOpenChange:()=>f(null),children:(0,d.jsxs)(v.DialogContent,{className:"max-w-[90vw] max-h-[90vh] p-2 flex items-center justify-center border-none bg-black/90 data-[state=open]:animate-none data-[state=closed]:animate-none duration-0",children:[(0,d.jsx)(v.DialogTitle,{className:"sr-only",children:"图片放大预览"}),c&&(0,d.jsx)("img",{src:c,alt:"放大预览",className:"max-w-full max-h-[85vh] object-contain"})]})})]})}function M({hits:a,query:b}){let[c,f]=(0,e.useState)(!1);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)(i.Brain,{className:"h-3.5 w-3.5"}),"参考 ",a.length," 条记忆",b?(0,d.jsxs)("span",{className:"max-w-[200px] truncate text-muted-foreground/70",children:["· ",b]}):null,(0,d.jsx)(j.ChevronDown,{className:(0,x.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-2",children:a.map((a,b)=>(0,d.jsx)(N,{hit:a,index:b+1},a.unit.memcell_id??`${b}-${(a.unit.text??"").slice(0,16)}`))})})]})}function N({hit:a,index:b}){let c=a.unit.memcell_id,e="number"==typeof a.score?a.score:void 0;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}),c?(0,d.jsx)("span",{className:"min-w-0 truncate font-mono text-foreground/80",title:c,children:c}):(0,d.jsx)("span",{className:"text-muted-foreground/70",children:"未命名记忆"}),a.source?(0,d.jsx)("span",{className:"rounded bg-[hsl(var(--muted))] px-1.5 py-0.5 text-[10px] uppercase tracking-wide text-muted-foreground",children:a.source}):null,(0,d.jsx)("span",{className:"ml-auto shrink-0 font-mono",children:void 0!==e?e.toFixed(4):"—"})]}),(0,d.jsx)("p",{className:"line-clamp-4 whitespace-pre-wrap text-xs text-foreground/80",children:a.unit.text})]})}O.displayName="QaMessage",a.s(["QaMessage",0,O]),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,55553,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,a.s(["Command",0,U,"CommandEmpty",0,X,"CommandGroup",0,Y,"CommandInput",0,V,"CommandItem",0,Z,"CommandList",0,W],55553);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,d)=>{let e=o.current,f=new AbortController;l.current=f;let h={current:!1},j={current:!1},n=b=>{g(c=>c.map(c=>c.id===a?{...c,...b}:c))};try{let g={activeInstance:e.activeInstance,providerId:e.providerId,model:e.model,messages:b,systemPrompt:e.systemPrompt,temperature:e.temperature,rag:e.rag,...e.memory?{memory:{...e.memory,turnId:d}}:{}};for await(let b of c(g,f.signal))if("query.rewritten"===b.type)n({retrievalQuery:b.query,retrievalQueryRewritten:b.query!==b.original});else if("query.fallback"===b.type)n({retrievalQuery:b.original,retrievalQueryRewritten:!1,queryRewriteFailed:!0,queryRewriteError:b.reason});else if("retrieval.done"===b.type)n({retrievedChunks:b.chunks,retrievalGroups:b.byKnowledgeBase});else if("memory.start"===b.type)n({memoryQuery:b.query});else if("memory.done"===b.type)n({memoryHits:b.hits});else if("memory.save.skipped"===b.type)console.warn("[chat] memory.save.skipped:",b.reason);else if("reasoning.delta"===b.type){let c=q.current.get(a)??{};c.reasoning=(c.reasoning??"")+b.delta,q.current.set(a,c),h.current||(h.current=!0,n({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),h.current&&!j.current&&(j.current=!0,n({reasoningCompletedAt:Date.now()})),t()}else if("error"===b.type){u(),s();let a={status:"error",errorMessage:`${b.code}: ${b.message}`};h.current&&!j.current&&(a.reasoningCompletedAt=Date.now()),n(a),k(b.message);break}else if("done"===b.type){u(),s();let a={status:"done"};h.current&&!j.current&&(a.reasoningCompletedAt=Date.now()),n(a);break}}catch(c){u(),s();let a=c instanceof DOMException&&"AbortError"===c.name,b=h.current&&!j.current?{reasoningCompletedAt:Date.now()}:void 0;if(a)n({status:"done",...b});else{let a=c instanceof Error?c.message:String(c);n({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=(0,e.newId)("turn"),f={id:(0,e.newId)(),role:"user",content:b,createdAt:Date.now(),status:"done",turnId:d},h=(0,e.newId)(),j=(c.rag?.knowledgeBases?.length??0)>0,l={id:h,role:"assistant",content:"",reasoning:"",createdAt:Date.now(),status:"streaming",usingRag:j},m=[...n.current,f].map(a=>({role:a.role,content:a.content})),q=[...n.current,f,l];n.current=q,g(q),i(!0),await y(h,m,d)},[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;let h=d.turnId??(0,e.newId)("turn");if(!d.turnId){let a=c.length-1;c[a]={...d,turnId:h}}k(null);let j=(0,e.newId)(),l=(b.rag?.knowledgeBases?.length??0)>0,m={id:j,role:"assistant",content:"",reasoning:"",createdAt:Date.now(),status:"streaming",usingRag:l},q=c.map(a=>({role:a.role,content:a.content})),r=[...c,m];n.current=r,g(r),i(!0),await y(j,q,h)},[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
@@ -1,3 +1,3 @@
1
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)},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)},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)},74024,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(64565);let e=c.forwardRef(({className:a,checked:c=!1,onCheckedChange:e,disabled:f,...g},h)=>(0,b.jsx)("button",{ref:h,type:"button",role:"switch","aria-checked":c,"data-state":c?"checked":"unchecked",disabled:f,onClick:()=>e?.(!c),className:(0,d.cn)("peer inline-flex h-6 w-11 shrink-0 cursor-pointer items-center rounded-full transition-colors duration-200","shadow-[inset_0_0_0_1px_rgba(0,0,0,0.04),inset_0_1px_2px_rgba(0,0,0,0.06)]","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 focus-visible:ring-offset-background","disabled:cursor-not-allowed disabled:opacity-50",c?"bg-[hsl(var(--primary-600))]":"bg-[hsl(var(--muted))] hover:bg-[hsl(var(--muted)/0.8)]",a),...g,children:(0,b.jsx)("span",{"aria-hidden":!0,className:(0,d.cn)("pointer-events-none block h-5 w-5 rounded-full bg-white transition-transform duration-200","shadow-[0_1px_2px_rgba(0,0,0,0.1),0_2px_6px_rgba(0,0,0,0.15)] ring-1 ring-black/4","ease-[cubic-bezier(0.34,1.56,0.64,1)]",c?"translate-x-5":"translate-x-0.5")})}));e.displayName="Switch",a.s(["Switch",0,e])},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
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__00uh_im._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0lgg04c._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[4395,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(64565);a.s(["Skeleton",0,function({className:a,delay:c,style:e,...f}){return(0,b.jsx)("div",{className:(0,d.cn)("animate-pulse rounded-md bg-primary/10",a),style:{animationDelay:c?`${c}ms`:void 0,...e},...f})},"SkeletonGroup",0,function({children:a,stagger:d=80,className:e,...f}){let g=c.Children.toArray(a);return(0,b.jsx)("div",{className:e,...f,children:g.map((a,b)=>{if(!c.isValidElement(a))return a;let e=a.props.delay??0;return c.cloneElement(a,{delay:e+b*d})})})}])},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)},2482,a=>{"use strict";var b=a.i(34020),c=a.i(12583),d=a.i(80470),e=a.i(7704),f=a.i(64565);let g={"knowledge-base":"知识库",memory:"记忆库","llm-providers":"大模型",projects:"项目管理",documents:"文档",retrieval:"检索测试",qa:"问答测试",search:"记忆检索",units:"长期记忆",messages:"短期记忆",requests:"请求审计",settings:"设置",create:"新建",new:"新建",chat:"对话"};a.s(["PageHeader",0,function({title:a,description:h,hideBreadcrumb:i,children:j,className:k}){let l=(0,d.usePathname)()??"/",m=i?[]:function(a){if(/^\/knowledge-base\/[^/]+(?:\/.*)?$/.test(a)||/^\/memory\/[^/]+(?:\/.*)?$/.test(a))return[];let b=a.split("/").filter(Boolean);if(0===b.length)return[];let c=[],d="";return b.forEach((a,e)=>{d+=`/${a}`;let f=decodeURIComponent(a),h=g[f]??f;c.push({label:h,href:e<b.length-1?d:void 0})}),c}(l);return(0,b.jsxs)("div",{className:(0,f.cn)("mb-5 flex flex-col gap-2",k),children:[m.length>1&&(0,b.jsxs)("nav",{"aria-label":"面包屑",className:"flex items-center gap-1 text-[13px] text-[hsl(var(--muted-foreground))]",children:[(0,b.jsx)(c.default,{href:"/",className:"transition-colors hover:text-[hsl(var(--foreground))]",children:"主页"}),m.map((a,d)=>(0,b.jsxs)("span",{className:"flex items-center gap-1",children:[(0,b.jsx)(e.ChevronRight,{className:"h-3 w-3 opacity-60"}),a.href?(0,b.jsx)(c.default,{href:a.href,className:"transition-colors hover:text-[hsl(var(--foreground))]",children:a.label}):(0,b.jsx)("span",{className:"font-medium text-[hsl(var(--foreground))]",children:a.label})]},`${a.label}-${d}`))]}),(0,b.jsxs)("div",{className:"flex items-start justify-between gap-4",children:[(0,b.jsxs)("div",{className:"space-y-1",children:[(0,b.jsx)("h1",{className:"text-xl font-semibold leading-tight text-[hsl(var(--foreground))]",children:a}),h&&(0,b.jsx)("p",{className:"text-[13px] text-[hsl(var(--muted-foreground))]",children:h})]}),j&&(0,b.jsx)("div",{className:"flex shrink-0 items-center gap-2",children:j})]})]})}])},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)},24215,a=>{"use strict";let b=(0,a.i(50053).default)("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Settings",0,b],24215)},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})]})}])},21989,a=>{"use strict";var b=a.i(34020),c=a.i(42261),d=a.i(64565);let e=(0,c.cva)("inline-flex items-center rounded border px-2 py-0.5 text-xs font-medium transition-colors focus:outline-none focus:ring-2 focus:ring-[hsl(var(--primary)/0.3)] focus:ring-offset-1",{variants:{variant:{default:"border-transparent bg-[hsl(var(--primary))] text-[hsl(var(--primary-foreground))] hover:opacity-90",secondary:"border-transparent bg-[hsl(var(--secondary))] text-[hsl(var(--secondary-foreground))] hover:opacity-80",destructive:"border-transparent bg-[hsl(var(--destructive))] text-[hsl(var(--destructive-foreground))] hover:opacity-90",outline:"border-[hsl(var(--border))] text-[hsl(var(--foreground))] bg-[hsl(var(--card))]",primary:"border-transparent bg-[hsl(var(--primary-soft))] text-[hsl(var(--primary))]",success:"border-transparent bg-[hsl(var(--success-soft))] text-[hsl(var(--success))]",warning:"border-transparent bg-[hsl(var(--warning-soft))] text-[hsl(var(--warning))]",danger:"border-transparent bg-[hsl(var(--danger-soft))] text-[hsl(var(--danger))]",purple:"border-transparent bg-[hsl(var(--purple-soft))] text-[hsl(var(--purple))]"}},defaultVariants:{variant:"default"}});a.s(["Badge",0,function({className:a,variant:c,...f}){return(0,b.jsx)("div",{className:(0,d.cn)(e({variant:c}),a),...f})}])},73524,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(64565);let e=c.forwardRef(({className:a,...c},e)=>(0,b.jsx)("div",{ref:e,className:(0,d.cn)("rounded-lg border border-[hsl(var(--border))] bg-[hsl(var(--card))] text-[hsl(var(--card-foreground))] shadow-sm",a),...c}));e.displayName="Card",c.forwardRef(({className:a,...c},e)=>(0,b.jsx)("div",{ref:e,className:(0,d.cn)("flex flex-col space-y-1 px-5 pt-5 pb-3 border-b border-[hsl(var(--border-light))]",a),...c})).displayName="CardHeader",c.forwardRef(({className:a,...c},e)=>(0,b.jsx)("div",{ref:e,className:(0,d.cn)("text-base font-semibold leading-tight",a),...c})).displayName="CardTitle",c.forwardRef(({className:a,...c},e)=>(0,b.jsx)("div",{ref:e,className:(0,d.cn)("text-sm text-[hsl(var(--muted-foreground))]",a),...c})).displayName="CardDescription";let f=c.forwardRef(({className:a,...c},e)=>(0,b.jsx)("div",{ref:e,className:(0,d.cn)("px-5 py-4",a),...c}));f.displayName="CardContent",c.forwardRef(({className:a,...c},e)=>(0,b.jsx)("div",{ref:e,className:(0,d.cn)("flex items-center px-5 py-3 border-t border-[hsl(var(--border-light))]",a),...c})).displayName="CardFooter";let g=c.forwardRef(({className:a,...c},e)=>(0,b.jsx)("div",{ref:e,className:(0,d.cn)("rounded-lg border border-[hsl(var(--border))] bg-[hsl(var(--card))] text-[hsl(var(--card-foreground))] shadow-sm","transition-[transform,box-shadow,border-color] duration-200 ease-[cubic-bezier(0.34,1.56,0.64,1)]","hover:border-[hsl(var(--primary))] hover:shadow-primary-soft",a),...c}));g.displayName="CardInteractive",a.s(["Card",0,e,"CardContent",0,f,"CardInteractive",0,g])},59058,a=>{"use strict";let b=(0,a.i(50053).default)("ellipsis",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]]);a.s(["MoreHorizontal",0,b],59058)},82461,97798,a=>{"use strict";var b=a.i(34020),c=a.i(9380),d=a.i(14151),e=a.i(64565);a.s(["SearchInput",0,function({value:a,onChange:f,placeholder:g="搜索…",className:h}){return(0,b.jsxs)("div",{className:(0,e.cn)("relative flex items-center",h),children:[(0,b.jsx)(c.Search,{className:"absolute left-3 pointer-events-none text-muted-foreground",size:16}),(0,b.jsx)("input",{type:"text",value:a,onChange:a=>f(a.target.value),placeholder:g,className:(0,e.cn)("h-9 w-full rounded-md border border-input bg-background pl-9 pr-8 text-sm","placeholder:text-muted-foreground/60","focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-1")}),a&&(0,b.jsx)("button",{type:"button",onClick:()=>f(""),className:"absolute right-2 inline-flex items-center justify-center rounded-full p-0.5 text-gray-400 hover:text-gray-600 transition-colors","aria-label":"清除搜索",children:(0,b.jsx)(d.X,{size:14})})]})}],82461);var f=a.i(71938);a.s(["useDebounce",0,function(a,b=300){let[c,d]=(0,f.useState)(a);return(0,f.useEffect)(()=>{let c=setTimeout(()=>{d(a)},b);return()=>{clearTimeout(c)}},[a,b]),c}],97798)},54540,a=>{"use strict";var b=a.i(34020),c=a.i(37102),d=a.i(68826),e=a.i(76192),f=a.i(53141);a.s(["ErrorState",0,function({error:a,onRetry:g}){let h=function(a){if(!(a instanceof f.ApiClientError))return null;let{status:b}=a;return 401===b||403===b?"Please check your AccessKey credentials in the project settings.":503===b||"NETWORK_ERROR"===a.code?"The service may be unreachable. Verify the endpoint address and network connectivity.":null}(a);return(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center py-16 px-4 text-center",children:[(0,b.jsx)("div",{className:"mb-5 flex h-20 w-20 items-center justify-center rounded-full bg-destructive/10 ring-8 ring-destructive/5",children:(0,b.jsx)(c.AlertTriangle,{className:"text-destructive",size:36,strokeWidth:1.75})}),(0,b.jsx)("h3",{className:"mb-2 text-base font-semibold text-foreground",children:"Failed to load data"}),(0,b.jsx)("p",{className:"mb-1 max-w-md text-sm text-muted-foreground",children:a.message}),h&&(0,b.jsx)("p",{className:"mb-6 max-w-md text-xs text-muted-foreground/80",children:h}),!h&&(0,b.jsx)("div",{className:"mb-6"}),g&&(0,b.jsxs)(e.Button,{variant:"outline",size:"sm",onClick:g,children:[(0,b.jsx)(d.RefreshCw,{className:"mr-2 h-4 w-4"}),"Retry"]})]})}])},19974,a=>{"use strict";let b=(0,a.i(50053).default)("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);a.s(["FileText",0,b],19974)},47491,13773,a=>{"use strict";let b=(0,a.i(50053).default)("book-open-text",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M16 12h2",key:"7q9ll5"}],["path",{d:"M16 8h2",key:"msurwy"}],["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"}],["path",{d:"M6 12h2",key:"32wvfc"}],["path",{d:"M6 8h2",key:"30oboj"}]]);a.s(["BookOpenText",0,b],47491);var c=a.i(34020),d=a.i(71938),e=a.i(80470),f=a.i(63265),g=a.i(37102),h=a.i(76192),i=a.i(72518),j=a.i(62491),k=a.i(43836),l=a.i(33596),m=a.i(77072),n=a.i(69024),o=a.i(25377);a.s(["KBDeleteDialog",0,function({knowledgeBaseName:a,open:b,onOpenChange:p}){let q,r=(0,e.useRouter)(),s=(q=(0,m.useQueryClient)(),(0,l.useMutation)({mutationFn:a=>(0,n.deleteKnowledgeBase)(a),onSuccess:()=>{(0,o.invalidateKnowledgeBaseQueries)(q)}})),[t,u]=(0,d.useState)(""),v=t===a;async function w(){if(a&&v)try{await s.mutateAsync(a),f.toast.success(`知识库 "${a}" 已删除`),u(""),p(!1),r.push("/knowledge-base")}catch(b){let a=b instanceof Error?b.message:"删除知识库失败";f.toast.error(a)}}return(0,c.jsx)(k.Dialog,{open:b,onOpenChange:a=>{a||u(""),p(a)},children:(0,c.jsxs)(k.DialogContent,{className:"sm:max-w-md",children:[(0,c.jsx)(k.DialogHeader,{children:(0,c.jsx)(k.DialogTitle,{className:"text-xl",children:"删除知识库"})}),(0,c.jsx)("div",{className:"rounded-md border border-[hsl(var(--destructive))] bg-[hsl(var(--destructive))/0.06] px-4 py-3 text-sm leading-relaxed",children:(0,c.jsxs)("p",{children:[(0,c.jsx)(g.AlertTriangle,{className:"inline h-4 w-4 text-destructive mr-1 -mt-0.5"}),"此操作",(0,c.jsx)("strong",{className:"text-[hsl(var(--destructive))] font-semibold",children:"不可撤销"}),"。将永久删除知识库"," ",(0,c.jsx)("strong",{className:"font-semibold",children:a})," ","及其所有文档和数据。"]})}),(0,c.jsxs)("div",{className:"space-y-2 py-2",children:[(0,c.jsxs)(j.Label,{children:["请输入"," ",(0,c.jsx)("code",{className:"rounded bg-[hsl(var(--muted))] px-1 py-px font-mono text-[13px] font-semibold text-[hsl(var(--destructive))]",children:a})," ","以确认删除"]}),(0,c.jsx)(i.Input,{placeholder:a??"",value:t,onChange:a=>u(a.target.value),autoComplete:"off"})]}),(0,c.jsxs)(k.DialogFooter,{children:[(0,c.jsx)(h.Button,{variant:"outline",onClick:()=>{u(""),p(!1)},children:"取消"}),(0,c.jsx)(h.Button,{variant:"destructive",disabled:!v||s.isPending,onClick:w,children:s.isPending?"删除中...":"确认删除"})]})]})})}],13773)},7234,a=>{"use strict";var b=a.i(34020),c=a.i(12583),d=a.i(25825),e=a.i(76192),f=a.i(2482),g=a.i(71938),h=a.i(23028),i=a.i(4395),j=a.i(82461),k=a.i(10215),l=a.i(54540),m=a.i(9367),n=a.i(97798),o=a.i(80470),p=a.i(47491),q=a.i(59058),r=a.i(55295),s=a.i(19974),t=a.i(9380),u=a.i(24215),v=a.i(73524),w=a.i(24666),x=a.i(21989),y=a.i(65271);function z({knowledgeBase:a,onDelete:d}){let f=(0,o.useRouter)(),{knowledgeBaseName:g,description:h,tags:i,subspace:j,updatedAt:k,metadata:l}=a,m=l?.length??0,n=a.retrievalConfiguration?.searchType??[];return(0,b.jsx)(c.default,{href:`/knowledge-base/${encodeURIComponent(g)}`,className:"no-underline",children:(0,b.jsx)(v.CardInteractive,{className:"group relative flex h-full cursor-pointer flex-col",children:(0,b.jsxs)(v.CardContent,{className:"flex flex-col flex-1 p-5",children:[(0,b.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,b.jsxs)("div",{className:"flex min-w-0 items-center gap-2",children:[(0,b.jsx)(p.BookOpenText,{className:"h-4 w-4 shrink-0 text-primary"}),(0,b.jsx)("h3",{className:"truncate text-base font-semibold text-foreground",children:g})]}),(0,b.jsx)("div",{className:"opacity-0 transition-opacity duration-150 delay-75 group-hover:opacity-100 focus-within:opacity-100",onClick:a=>a.stopPropagation(),children:(0,b.jsxs)(w.DropdownMenu,{children:[(0,b.jsx)(w.DropdownMenuTrigger,{asChild:!0,children:(0,b.jsx)(e.Button,{variant:"ghost",size:"icon",className:"h-8 w-8",children:(0,b.jsx)(q.MoreHorizontal,{className:"h-4 w-4"})})}),(0,b.jsxs)(w.DropdownMenuContent,{align:"end",children:[(0,b.jsxs)(w.DropdownMenuItem,{onClick:()=>f.push(`/knowledge-base/${encodeURIComponent(g)}/documents`),children:[(0,b.jsx)(s.FileText,{className:"mr-2 h-4 w-4"}),"查看文档"]}),(0,b.jsxs)(w.DropdownMenuItem,{onClick:()=>f.push(`/knowledge-base/${encodeURIComponent(g)}/retrieval`),children:[(0,b.jsx)(t.Search,{className:"mr-2 h-4 w-4"}),"检索测试"]}),(0,b.jsxs)(w.DropdownMenuItem,{onClick:()=>f.push(`/knowledge-base/${encodeURIComponent(g)}/settings`),children:[(0,b.jsx)(u.Settings,{className:"mr-2 h-4 w-4"}),"设置"]}),(0,b.jsxs)(w.DropdownMenuItem,{className:"text-[hsl(var(--destructive))] focus:text-[hsl(var(--destructive))]",onClick:()=>d?.(g),children:[(0,b.jsx)(r.Trash2,{className:"mr-2 h-4 w-4"}),"删除"]})]})]})})]}),h&&(0,b.jsx)("p",{className:"mt-1.5 text-sm text-muted-foreground line-clamp-2",children:h}),i&&i.length>0&&(0,b.jsx)("div",{className:"mt-3 flex flex-wrap gap-1.5",children:i.map(a=>(0,b.jsx)(x.Badge,{variant:"secondary",className:"rounded-pill border-0 bg-[hsl(var(--primary-50))] text-primary text-xs font-normal",children:a},a))}),(0,b.jsxs)("div",{className:"mt-auto pt-4 flex items-center gap-3 text-xs text-muted-foreground",children:[j&&(0,b.jsxs)("span",{className:"inline-flex items-center gap-1",children:[(0,b.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-green-500"}),"已开启子空间隔离"]}),m>0&&(0,b.jsxs)("span",{children:[m," 个 Metadata 字段"]}),n.length>0&&(0,b.jsx)("span",{children:n.map(a=>"DENSE_VECTOR"===a?"向量":"全文").join(" + ")}),(0,b.jsxs)("span",{className:"ml-auto",children:["更新于 ",(0,b.jsx)(y.RelativeTime,{timestamp:k})]})]})]})})})}var A=a.i(13773);function B(){let{data:a,isLoading:f,error:o,refetch:p}=(0,m.useKnowledgeBases)(),[q,r]=(0,g.useState)(""),[s]=(0,g.useState)("updatedAt"),[t,u]=(0,g.useState)(null),v=(0,n.useDebounce)(q,300),w=(0,g.useMemo)(()=>{let b=a?.items??[];return(v?b.filter(a=>a.knowledgeBaseName.toLowerCase().includes(v.toLowerCase())||a.description?.toLowerCase().includes(v.toLowerCase())||a.tags?.some(a=>a.toLowerCase().includes(v.toLowerCase()))):b).sort((a,b)=>{switch(s){case"updatedAt":return b.updatedAt-a.updatedAt;case"createdAt":return b.createdAt-a.createdAt;case"name":return a.knowledgeBaseName.localeCompare(b.knowledgeBaseName);default:return 0}})},[a?.items,v,s]);return f?(0,b.jsx)("div",{className:"grid gap-4 sm:grid-cols-2 lg:grid-cols-3",children:Array.from({length:6}).map((a,c)=>(0,b.jsx)(i.Skeleton,{className:"h-[180px] rounded-lg",delay:80*c},c))}):o?(0,b.jsx)(l.ErrorState,{error:o,onRetry:()=>p()}):a?.items?.length?(0,b.jsxs)("div",{className:"space-y-6",children:[(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)(j.SearchInput,{placeholder:"搜索知识库...",value:q,onChange:r,className:"max-w-sm"}),(0,b.jsxs)("span",{className:"text-sm text-muted-foreground",children:["共 ",w.length," 个知识库"]})]}),0===w.length?(0,b.jsx)(k.EmptyState,{icon:h.Database,title:"没有匹配的知识库",description:"尝试调整搜索关键词"}):(0,b.jsx)("div",{className:"grid gap-4 sm:grid-cols-2 lg:grid-cols-3",children:w.map(a=>(0,b.jsx)(z,{knowledgeBase:a,onDelete:u},a.knowledgeBaseName))}),(0,b.jsx)(A.KBDeleteDialog,{knowledgeBaseName:t,open:!!t,onOpenChange:a=>{a||u(null)}})]}):(0,b.jsx)(k.EmptyState,{icon:h.Database,title:"还没有知识库",description:"创建你的第一个知识库,开始管理文档和检索",action:(0,b.jsx)(e.Button,{asChild:!0,children:(0,b.jsxs)(c.default,{href:"/knowledge-base/create",children:[(0,b.jsx)(d.Plus,{className:"mr-2 h-4 w-4"}),"创建知识库"]})})})}a.s(["default",0,function(){return(0,b.jsxs)("div",{className:"space-y-6",children:[(0,b.jsx)(f.PageHeader,{title:"知识库",description:"管理你的知识库,上传文档并进行语义检索",children:(0,b.jsx)(e.Button,{asChild:!0,children:(0,b.jsxs)(c.default,{href:"/knowledge-base/create",children:[(0,b.jsx)(d.Plus,{className:"mr-2 h-4 w-4"}),"创建知识库"]})})}),(0,b.jsx)(B,{})]})}],7234)}];
1
+ module.exports=[4395,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(64565);a.s(["Skeleton",0,function({className:a,delay:c,style:e,...f}){return(0,b.jsx)("div",{className:(0,d.cn)("animate-pulse rounded-md bg-primary/10",a),style:{animationDelay:c?`${c}ms`:void 0,...e},...f})},"SkeletonGroup",0,function({children:a,stagger:d=80,className:e,...f}){let g=c.Children.toArray(a);return(0,b.jsx)("div",{className:e,...f,children:g.map((a,b)=>{if(!c.isValidElement(a))return a;let e=a.props.delay??0;return c.cloneElement(a,{delay:e+b*d})})})}])},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)},2482,a=>{"use strict";var b=a.i(34020),c=a.i(12583),d=a.i(80470),e=a.i(7704),f=a.i(64565);let g={"knowledge-base":"知识库",memory:"记忆库","llm-providers":"大模型",projects:"项目管理",documents:"文档",retrieval:"检索测试",qa:"问答测试",search:"记忆检索",units:"长期记忆",messages:"短期记忆",requests:"请求审计",settings:"设置",create:"新建",new:"新建",chat:"对话"};a.s(["PageHeader",0,function({title:a,description:h,hideBreadcrumb:i,children:j,className:k}){let l=(0,d.usePathname)()??"/",m=i?[]:function(a){if(/^\/knowledge-base\/[^/]+(?:\/.*)?$/.test(a)||/^\/memory\/[^/]+(?:\/.*)?$/.test(a))return[];let b=a.split("/").filter(Boolean);if(0===b.length)return[];let c=[],d="";return b.forEach((a,e)=>{d+=`/${a}`;let f=decodeURIComponent(a),h=g[f]??f;c.push({label:h,href:e<b.length-1?d:void 0})}),c}(l);return(0,b.jsxs)("div",{className:(0,f.cn)("mb-5 flex flex-col gap-2",k),children:[m.length>1&&(0,b.jsxs)("nav",{"aria-label":"面包屑",className:"flex items-center gap-1 text-[13px] text-[hsl(var(--muted-foreground))]",children:[(0,b.jsx)(c.default,{href:"/",className:"transition-colors hover:text-[hsl(var(--foreground))]",children:"主页"}),m.map((a,d)=>(0,b.jsxs)("span",{className:"flex items-center gap-1",children:[(0,b.jsx)(e.ChevronRight,{className:"h-3 w-3 opacity-60"}),a.href?(0,b.jsx)(c.default,{href:a.href,className:"transition-colors hover:text-[hsl(var(--foreground))]",children:a.label}):(0,b.jsx)("span",{className:"font-medium text-[hsl(var(--foreground))]",children:a.label})]},`${a.label}-${d}`))]}),(0,b.jsxs)("div",{className:"flex items-start justify-between gap-4",children:[(0,b.jsxs)("div",{className:"space-y-1",children:[(0,b.jsx)("h1",{className:"text-xl font-semibold leading-tight text-[hsl(var(--foreground))]",children:a}),h&&(0,b.jsx)("p",{className:"text-[13px] text-[hsl(var(--muted-foreground))]",children:h})]}),j&&(0,b.jsx)("div",{className:"flex shrink-0 items-center gap-2",children:j})]})]})}])},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)},24215,a=>{"use strict";let b=(0,a.i(50053).default)("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Settings",0,b],24215)},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})]})}])},21989,a=>{"use strict";var b=a.i(34020),c=a.i(42261),d=a.i(64565);let e=(0,c.cva)("inline-flex items-center rounded border px-2 py-0.5 text-xs font-medium transition-colors focus:outline-none focus:ring-2 focus:ring-[hsl(var(--primary)/0.3)] focus:ring-offset-1",{variants:{variant:{default:"border-transparent bg-[hsl(var(--primary))] text-[hsl(var(--primary-foreground))] hover:opacity-90",secondary:"border-transparent bg-[hsl(var(--secondary))] text-[hsl(var(--secondary-foreground))] hover:opacity-80",destructive:"border-transparent bg-[hsl(var(--destructive))] text-[hsl(var(--destructive-foreground))] hover:opacity-90",outline:"border-[hsl(var(--border))] text-[hsl(var(--foreground))] bg-[hsl(var(--card))]",primary:"border-transparent bg-[hsl(var(--primary-soft))] text-[hsl(var(--primary))]",success:"border-transparent bg-[hsl(var(--success-soft))] text-[hsl(var(--success))]",warning:"border-transparent bg-[hsl(var(--warning-soft))] text-[hsl(var(--warning))]",danger:"border-transparent bg-[hsl(var(--danger-soft))] text-[hsl(var(--danger))]",purple:"border-transparent bg-[hsl(var(--purple-soft))] text-[hsl(var(--purple))]"}},defaultVariants:{variant:"default"}});a.s(["Badge",0,function({className:a,variant:c,...f}){return(0,b.jsx)("div",{className:(0,d.cn)(e({variant:c}),a),...f})}])},73524,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(64565);let e=c.forwardRef(({className:a,...c},e)=>(0,b.jsx)("div",{ref:e,className:(0,d.cn)("rounded-lg border border-[hsl(var(--border))] bg-[hsl(var(--card))] text-[hsl(var(--card-foreground))] shadow-sm",a),...c}));e.displayName="Card",c.forwardRef(({className:a,...c},e)=>(0,b.jsx)("div",{ref:e,className:(0,d.cn)("flex flex-col space-y-1 px-5 pt-5 pb-3 border-b border-[hsl(var(--border-light))]",a),...c})).displayName="CardHeader",c.forwardRef(({className:a,...c},e)=>(0,b.jsx)("div",{ref:e,className:(0,d.cn)("text-base font-semibold leading-tight",a),...c})).displayName="CardTitle",c.forwardRef(({className:a,...c},e)=>(0,b.jsx)("div",{ref:e,className:(0,d.cn)("text-sm text-[hsl(var(--muted-foreground))]",a),...c})).displayName="CardDescription";let f=c.forwardRef(({className:a,...c},e)=>(0,b.jsx)("div",{ref:e,className:(0,d.cn)("px-5 py-4",a),...c}));f.displayName="CardContent",c.forwardRef(({className:a,...c},e)=>(0,b.jsx)("div",{ref:e,className:(0,d.cn)("flex items-center px-5 py-3 border-t border-[hsl(var(--border-light))]",a),...c})).displayName="CardFooter";let g=c.forwardRef(({className:a,...c},e)=>(0,b.jsx)("div",{ref:e,className:(0,d.cn)("rounded-lg border border-[hsl(var(--border))] bg-[hsl(var(--card))] text-[hsl(var(--card-foreground))] shadow-sm","transition-[transform,box-shadow,border-color] duration-200 ease-[cubic-bezier(0.34,1.56,0.64,1)]","hover:border-[hsl(var(--primary))] hover:shadow-primary-soft",a),...c}));g.displayName="CardInteractive",a.s(["Card",0,e,"CardContent",0,f,"CardInteractive",0,g])},59058,a=>{"use strict";let b=(0,a.i(50053).default)("ellipsis",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]]);a.s(["MoreHorizontal",0,b],59058)},82461,97798,a=>{"use strict";var b=a.i(34020),c=a.i(9380),d=a.i(14151),e=a.i(64565);a.s(["SearchInput",0,function({value:a,onChange:f,placeholder:g="搜索…",className:h}){return(0,b.jsxs)("div",{className:(0,e.cn)("relative flex items-center",h),children:[(0,b.jsx)(c.Search,{className:"absolute left-3 pointer-events-none text-muted-foreground",size:16}),(0,b.jsx)("input",{type:"text",value:a,onChange:a=>f(a.target.value),placeholder:g,className:(0,e.cn)("h-9 w-full rounded-md border border-input bg-background pl-9 pr-8 text-sm","placeholder:text-muted-foreground/60","focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-1")}),a&&(0,b.jsx)("button",{type:"button",onClick:()=>f(""),className:"absolute right-2 inline-flex items-center justify-center rounded-full p-0.5 text-gray-400 hover:text-gray-600 transition-colors","aria-label":"清除搜索",children:(0,b.jsx)(d.X,{size:14})})]})}],82461);var f=a.i(71938);a.s(["useDebounce",0,function(a,b=300){let[c,d]=(0,f.useState)(a);return(0,f.useEffect)(()=>{let c=setTimeout(()=>{d(a)},b);return()=>{clearTimeout(c)}},[a,b]),c}],97798)},54540,a=>{"use strict";var b=a.i(34020),c=a.i(37102),d=a.i(68826),e=a.i(76192),f=a.i(53141);a.s(["ErrorState",0,function({error:a,onRetry:g}){let h=function(a){if(!(a instanceof f.ApiClientError))return null;let{status:b}=a;return 401===b||403===b?"Please check your AccessKey credentials in the project settings.":503===b||"NETWORK_ERROR"===a.code?"The service may be unreachable. Verify the endpoint address and network connectivity.":null}(a);return(0,b.jsxs)("div",{className:"flex flex-col items-center justify-center py-16 px-4 text-center",children:[(0,b.jsx)("div",{className:"mb-5 flex h-20 w-20 items-center justify-center rounded-full bg-destructive/10 ring-8 ring-destructive/5",children:(0,b.jsx)(c.AlertTriangle,{className:"text-destructive",size:36,strokeWidth:1.75})}),(0,b.jsx)("h3",{className:"mb-2 text-base font-semibold text-foreground",children:"Failed to load data"}),(0,b.jsx)("p",{className:"mb-1 max-w-md text-sm text-muted-foreground",children:a.message}),h&&(0,b.jsx)("p",{className:"mb-6 max-w-md text-xs text-muted-foreground/80",children:h}),!h&&(0,b.jsx)("div",{className:"mb-6"}),g&&(0,b.jsxs)(e.Button,{variant:"outline",size:"sm",onClick:g,children:[(0,b.jsx)(d.RefreshCw,{className:"mr-2 h-4 w-4"}),"Retry"]})]})}])},19974,a=>{"use strict";let b=(0,a.i(50053).default)("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);a.s(["FileText",0,b],19974)},47491,13773,a=>{"use strict";let b=(0,a.i(50053).default)("book-open-text",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M16 12h2",key:"7q9ll5"}],["path",{d:"M16 8h2",key:"msurwy"}],["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"}],["path",{d:"M6 12h2",key:"32wvfc"}],["path",{d:"M6 8h2",key:"30oboj"}]]);a.s(["BookOpenText",0,b],47491);var c=a.i(34020),d=a.i(71938),e=a.i(80470),f=a.i(63265),g=a.i(37102),h=a.i(76192),i=a.i(72518),j=a.i(62491),k=a.i(43836),l=a.i(33596),m=a.i(77072),n=a.i(69024),o=a.i(25377);a.s(["KBDeleteDialog",0,function({knowledgeBaseName:a,open:b,onOpenChange:p}){let q,r=(0,e.useRouter)(),s=(q=(0,m.useQueryClient)(),(0,l.useMutation)({mutationFn:a=>(0,n.deleteKnowledgeBase)(a),onSuccess:()=>{(0,o.invalidateKnowledgeBaseQueries)(q)}})),[t,u]=(0,d.useState)(""),v=t===a;async function w(){if(a&&v)try{await s.mutateAsync(a),f.toast.success(`知识库 "${a}" 已删除`),u(""),p(!1),r.push("/knowledge-base")}catch(b){let a=b instanceof Error?b.message:"删除知识库失败";f.toast.error(a)}}return(0,c.jsx)(k.Dialog,{open:b,onOpenChange:a=>{a||u(""),p(a)},children:(0,c.jsxs)(k.DialogContent,{className:"sm:max-w-md",children:[(0,c.jsx)(k.DialogHeader,{children:(0,c.jsx)(k.DialogTitle,{className:"text-xl",children:"删除知识库"})}),(0,c.jsx)("div",{className:"rounded-md border border-[hsl(var(--destructive))] bg-[hsl(var(--destructive))/0.06] px-4 py-3 text-sm leading-relaxed",children:(0,c.jsxs)("p",{children:[(0,c.jsx)(g.AlertTriangle,{className:"inline h-4 w-4 text-destructive mr-1 -mt-0.5"}),"此操作",(0,c.jsx)("strong",{className:"text-[hsl(var(--destructive))] font-semibold",children:"不可撤销"}),"。将永久删除知识库"," ",(0,c.jsx)("strong",{className:"font-semibold",children:a})," ","及其所有文档和数据。"]})}),(0,c.jsxs)("div",{className:"space-y-2 py-2",children:[(0,c.jsxs)(j.Label,{children:["请输入"," ",(0,c.jsx)("code",{className:"rounded bg-[hsl(var(--muted))] px-1 py-px font-mono text-[13px] font-semibold text-[hsl(var(--destructive))]",children:a})," ","以确认删除"]}),(0,c.jsx)(i.Input,{placeholder:a??"",value:t,onChange:a=>u(a.target.value),autoComplete:"off"})]}),(0,c.jsxs)(k.DialogFooter,{children:[(0,c.jsx)(h.Button,{variant:"outline",onClick:()=>{u(""),p(!1)},children:"取消"}),(0,c.jsx)(h.Button,{variant:"destructive",disabled:!v||s.isPending,onClick:w,children:s.isPending?"删除中...":"确认删除"})]})]})})}],13773)},7234,a=>{"use strict";var b=a.i(34020),c=a.i(12583),d=a.i(25825),e=a.i(76192),f=a.i(2482),g=a.i(71938),h=a.i(23028),i=a.i(4395),j=a.i(82461),k=a.i(10215),l=a.i(54540),m=a.i(9367),n=a.i(97798),o=a.i(80470),p=a.i(47491),q=a.i(59058),r=a.i(55295),s=a.i(19974),t=a.i(9380),u=a.i(24215),v=a.i(73524),w=a.i(24666),x=a.i(21989),y=a.i(65271);function z({knowledgeBase:a,onDelete:d}){let f=(0,o.useRouter)(),{knowledgeBaseName:g,description:h,tags:i,subspace:j,updatedAt:k,metadata:l}=a,m=l?.length??0,n=a.retrievalConfiguration?.searchType??[];return(0,b.jsx)(c.default,{href:`/knowledge-base/${encodeURIComponent(g)}`,className:"no-underline",children:(0,b.jsx)(v.CardInteractive,{className:"group relative flex h-[180px] cursor-pointer flex-col",children:(0,b.jsxs)(v.CardContent,{className:"flex flex-col flex-1 min-h-0 p-5",children:[(0,b.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,b.jsxs)("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:[(0,b.jsx)(p.BookOpenText,{className:"h-4 w-4 shrink-0 text-primary"}),(0,b.jsx)("h3",{className:"min-w-0 truncate text-base font-semibold text-foreground",children:g}),a.multimodal&&(0,b.jsx)("span",{className:"shrink-0 text-[10px] px-1.5 py-0.5 rounded-full bg-emerald-50 text-emerald-700 border border-emerald-200",children:"多模态"}),a.ingestConfiguration?.enableTableFormulaCaption&&(0,b.jsx)("span",{className:"shrink-0 text-[10px] px-1.5 py-0.5 rounded-full bg-emerald-50 text-emerald-700 border border-emerald-200",children:"Caption"}),j&&(0,b.jsx)("span",{className:"shrink-0 text-[10px] px-1.5 py-0.5 rounded-full bg-emerald-50 text-emerald-700 border border-emerald-200",children:"子空间"})]}),(0,b.jsx)("div",{className:"opacity-0 transition-opacity duration-150 delay-75 group-hover:opacity-100 focus-within:opacity-100",onClick:a=>a.stopPropagation(),children:(0,b.jsxs)(w.DropdownMenu,{children:[(0,b.jsx)(w.DropdownMenuTrigger,{asChild:!0,children:(0,b.jsx)(e.Button,{variant:"ghost",size:"icon",className:"h-8 w-8",children:(0,b.jsx)(q.MoreHorizontal,{className:"h-4 w-4"})})}),(0,b.jsxs)(w.DropdownMenuContent,{align:"end",children:[(0,b.jsxs)(w.DropdownMenuItem,{onClick:()=>f.push(`/knowledge-base/${encodeURIComponent(g)}/documents`),children:[(0,b.jsx)(s.FileText,{className:"mr-2 h-4 w-4"}),"查看文档"]}),(0,b.jsxs)(w.DropdownMenuItem,{onClick:()=>f.push(`/knowledge-base/${encodeURIComponent(g)}/retrieval`),children:[(0,b.jsx)(t.Search,{className:"mr-2 h-4 w-4"}),"检索测试"]}),(0,b.jsxs)(w.DropdownMenuItem,{onClick:()=>f.push(`/knowledge-base/${encodeURIComponent(g)}/settings`),children:[(0,b.jsx)(u.Settings,{className:"mr-2 h-4 w-4"}),"设置"]}),(0,b.jsxs)(w.DropdownMenuItem,{className:"text-[hsl(var(--destructive))] focus:text-[hsl(var(--destructive))]",onClick:()=>d?.(g),children:[(0,b.jsx)(r.Trash2,{className:"mr-2 h-4 w-4"}),"删除"]})]})]})})]}),h&&(0,b.jsxs)("div",{className:"mt-2 flex items-baseline gap-1.5 min-w-0",children:[(0,b.jsx)("span",{className:"shrink-0 text-xs text-muted-foreground",children:"Desc:"}),(0,b.jsx)("span",{className:"min-w-0 flex-1 truncate text-xs text-foreground/80",children:h})]}),i&&i.length>0&&(0,b.jsxs)("div",{className:"mt-2 flex items-baseline gap-1.5 min-w-0",children:[(0,b.jsx)("span",{className:"shrink-0 text-xs text-muted-foreground",children:"Tags:"}),(0,b.jsx)("div",{className:"flex flex-1 min-w-0 gap-1.5 max-h-[22px] overflow-hidden",children:i.map(a=>(0,b.jsx)(x.Badge,{variant:"secondary",className:"shrink-0 rounded-pill border-0 bg-[hsl(var(--primary-50))] text-primary text-xs font-normal",children:a},a))})]}),(0,b.jsxs)("div",{className:"mt-auto pt-4 flex items-center gap-3 text-xs text-muted-foreground min-w-0",children:[m>0&&(0,b.jsxs)("span",{children:[m," 个 Metadata 字段"]}),n.length>0&&(0,b.jsx)("span",{children:n.map(a=>"DENSE_VECTOR"===a?"向量":"全文").join(" + ")}),(0,b.jsxs)("span",{className:"ml-auto",children:["更新于 ",(0,b.jsx)(y.RelativeTime,{timestamp:k})]})]})]})})})}var A=a.i(13773);function B(){let{data:a,isLoading:f,error:o,refetch:p}=(0,m.useKnowledgeBases)(),[q,r]=(0,g.useState)(""),[s]=(0,g.useState)("updatedAt"),[t,u]=(0,g.useState)(null),v=(0,n.useDebounce)(q,300),w=(0,g.useMemo)(()=>{let b=a?.items??[];return(v?b.filter(a=>a.knowledgeBaseName.toLowerCase().includes(v.toLowerCase())||a.description?.toLowerCase().includes(v.toLowerCase())||a.tags?.some(a=>a.toLowerCase().includes(v.toLowerCase()))):b).sort((a,b)=>{switch(s){case"updatedAt":return b.updatedAt-a.updatedAt;case"createdAt":return b.createdAt-a.createdAt;case"name":return a.knowledgeBaseName.localeCompare(b.knowledgeBaseName);default:return 0}})},[a?.items,v,s]);return f?(0,b.jsx)("div",{className:"grid gap-4 sm:grid-cols-2 lg:grid-cols-3",children:Array.from({length:6}).map((a,c)=>(0,b.jsx)(i.Skeleton,{className:"h-[180px] rounded-lg",delay:80*c},c))}):o?(0,b.jsx)(l.ErrorState,{error:o,onRetry:()=>p()}):a?.items?.length?(0,b.jsxs)("div",{className:"space-y-6",children:[(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)(j.SearchInput,{placeholder:"搜索知识库...",value:q,onChange:r,className:"max-w-sm"}),(0,b.jsxs)("span",{className:"text-sm text-muted-foreground",children:["共 ",w.length," 个知识库"]})]}),0===w.length?(0,b.jsx)(k.EmptyState,{icon:h.Database,title:"没有匹配的知识库",description:"尝试调整搜索关键词"}):(0,b.jsx)("div",{className:"grid gap-4 sm:grid-cols-2 lg:grid-cols-3",children:w.map(a=>(0,b.jsx)(z,{knowledgeBase:a,onDelete:u},a.knowledgeBaseName))}),(0,b.jsx)(A.KBDeleteDialog,{knowledgeBaseName:t,open:!!t,onOpenChange:a=>{a||u(null)}})]}):(0,b.jsx)(k.EmptyState,{icon:h.Database,title:"还没有知识库",description:"创建你的第一个知识库,开始管理文档和检索",action:(0,b.jsx)(e.Button,{asChild:!0,children:(0,b.jsxs)(c.default,{href:"/knowledge-base/create",children:[(0,b.jsx)(d.Plus,{className:"mr-2 h-4 w-4"}),"创建知识库"]})})})}a.s(["default",0,function(){return(0,b.jsxs)("div",{className:"space-y-6",children:[(0,b.jsx)(f.PageHeader,{title:"知识库",description:"管理你的知识库,上传文档并进行语义检索",children:(0,b.jsx)(e.Button,{asChild:!0,children:(0,b.jsxs)(c.default,{href:"/knowledge-base/create",children:[(0,b.jsx)(d.Plus,{className:"mr-2 h-4 w-4"}),"创建知识库"]})})}),(0,b.jsx)(B,{})]})}],7234)}];
2
2
 
3
3
  //# sourceMappingURL=_01-2v37._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[33596,a=>{"use strict";var b=a.i(71938),c=a.i(91862),d=a.i(64339),e=a.i(56241),f=a.i(35686),g=class extends e.Subscribable{#a;#b=void 0;#c;#d;constructor(a,b){super(),this.#a=a,this.setOptions(b),this.bindMethods(),this.#e()}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(a){let b=this.options;this.options=this.#a.defaultMutationOptions(a),(0,f.shallowEqualObjects)(this.options,b)||this.#a.getMutationCache().notify({type:"observerOptionsUpdated",mutation:this.#c,observer:this}),b?.mutationKey&&this.options.mutationKey&&(0,f.hashKey)(b.mutationKey)!==(0,f.hashKey)(this.options.mutationKey)?this.reset():this.#c?.state.status==="pending"&&this.#c.setOptions(this.options)}onUnsubscribe(){this.hasListeners()||this.#c?.removeObserver(this)}onMutationUpdate(a){this.#e(),this.#f(a)}getCurrentResult(){return this.#b}reset(){this.#c?.removeObserver(this),this.#c=void 0,this.#e(),this.#f()}mutate(a,b){return this.#d=b,this.#c?.removeObserver(this),this.#c=this.#a.getMutationCache().build(this.#a,this.options),this.#c.addObserver(this),this.#c.execute(a)}#e(){let a=this.#c?.state??(0,c.getDefaultState)();this.#b={...a,isPending:"pending"===a.status,isSuccess:"success"===a.status,isError:"error"===a.status,isIdle:"idle"===a.status,mutate:this.mutate,reset:this.reset}}#f(a){d.notifyManager.batch(()=>{if(this.#d&&this.hasListeners()){let b=this.#b.variables,c=this.#b.context,d={client:this.#a,meta:this.options.meta,mutationKey:this.options.mutationKey};if(a?.type==="success"){try{this.#d.onSuccess?.(a.data,b,c,d)}catch(a){Promise.reject(a)}try{this.#d.onSettled?.(a.data,null,b,c,d)}catch(a){Promise.reject(a)}}else if(a?.type==="error"){try{this.#d.onError?.(a.error,b,c,d)}catch(a){Promise.reject(a)}try{this.#d.onSettled?.(void 0,a.error,b,c,d)}catch(a){Promise.reject(a)}}}this.listeners.forEach(a=>{a(this.#b)})})}},h=a.i(77072);a.s(["useMutation",0,function(a,c){let e=(0,h.useQueryClient)(c),[i]=b.useState(()=>new g(e,a));b.useEffect(()=>{i.setOptions(a)},[i,a]);let j=b.useSyncExternalStore(b.useCallback(a=>i.subscribe(d.notifyManager.batchCalls(a)),[i]),()=>i.getCurrentResult(),()=>i.getCurrentResult()),k=b.useCallback((a,b)=>{i.mutate(a,b).catch(f.noop)},[i]);if(j.error&&(0,f.shouldThrowError)(i.options.throwOnError,[j.error]))throw j.error;return{...j,mutate:k,mutateAsync:j.mutate}}],33596)},7704,a=>{"use strict";let b=(0,a.i(50053).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);a.s(["ChevronRight",0,b],7704)},70535,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(64565);let e=c.forwardRef(({className:a,...c},e)=>(0,b.jsx)("textarea",{className:(0,d.cn)("flex min-h-[64px] w-full rounded-md border border-[hsl(var(--border))] bg-[hsl(var(--card))] px-3 py-2 text-sm transition-colors","placeholder:text-[hsl(var(--subtle))]","focus-visible:outline-none focus-visible:border-[hsl(var(--primary))] focus-visible:ring-2 focus-visible:ring-[hsl(var(--primary)/0.2)] focus-visible:ring-offset-0","disabled:cursor-not-allowed disabled:bg-[hsl(var(--secondary))] disabled:text-[hsl(var(--muted-foreground))]",a),ref:e,...c}));e.displayName="Textarea",a.s(["Textarea",0,e])},21347,a=>{"use strict";var b=a.i(53141);function c(a,b){let c=new URLSearchParams;return c.set("appId",a.appId),a.tenantId&&c.set("tenantId",a.tenantId),a.agentId&&c.set("agentId",a.agentId),a.runId&&c.set("runId",a.runId),Object.entries(b??{}).forEach(([a,b])=>{void 0!==b&&""!==b&&c.set(a,String(b))}),c.toString()}async function d(){return(0,b.apiGet)("/api/v1/memory/stores")}async function e(a){return(0,b.apiGet)(`/api/v1/memory/stores/${encodeURIComponent(a)}`)}async function f(a){await (0,b.apiPost)("/api/v1/memory/stores",a)}async function g(a){let{memoryStoreName:c,...d}=a;await (0,b.apiPut)(`/api/v1/memory/stores/${encodeURIComponent(c)}`,d)}async function h(a){await (0,b.apiDelete)(`/api/v1/memory/stores/${encodeURIComponent(a)}`)}async function i(a,d,e){let f=c(d,e);return(0,b.apiGet)(`/api/v1/memory/stores/${encodeURIComponent(a)}/units?${f}`)}async function j(a){let{memoryStoreName:c,...d}=a;return(0,b.apiPost)(`/api/v1/memory/stores/${encodeURIComponent(c)}/units`,d)}async function k(a){let d=c(a.scope);return(0,b.apiGet)(`/api/v1/memory/stores/${encodeURIComponent(a.memoryStoreName)}/units/${encodeURIComponent(a.memoryId)}?${d}`)}async function l(a){let{memoryStoreName:c,memoryId:d,...e}=a;return(0,b.apiPut)(`/api/v1/memory/stores/${encodeURIComponent(c)}/units/${encodeURIComponent(d)}`,e)}async function m(a){let{memoryStoreName:c,memoryId:d,...e}=a;await (0,b.apiDelete)(`/api/v1/memory/stores/${encodeURIComponent(c)}/units/${encodeURIComponent(d)}`,e)}async function n(a){let{memoryStoreName:c,...d}=a;return(0,b.apiPost)(`/api/v1/memory/stores/${encodeURIComponent(c)}/search`,d)}async function o(a,d,e){let f=c(d,e);return(0,b.apiGet)(`/api/v1/memory/stores/${encodeURIComponent(a)}/messages?${f}`)}async function p(a,d,e){let f=c(d,e);return(0,b.apiGet)(`/api/v1/memory/stores/${encodeURIComponent(a)}/requests?${f}`)}a.s(["addMemory",0,j,"createMemoryStore",0,f,"deleteMemoryStore",0,h,"deleteMemoryUnit",0,m,"describeMemoryStore",0,e,"getMemoryUnit",0,k,"listMemoryMessages",0,o,"listMemoryRequests",0,p,"listMemoryStores",0,d,"listMemoryUnits",0,i,"searchMemory",0,n,"updateMemoryStore",0,g,"updateMemoryUnit",0,l])},98437,a=>{"use strict";let b=(0,a.i(50053).default)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);a.s(["Zap",0,b],98437)},1078,a=>{"use strict";let b=(0,a.i(50053).default)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]]);a.s(["Sparkles",0,b],1078)},16038,a=>{"use strict";var b=a.i(34020),c=a.i(71938),d=a.i(59653),e=a.i(84694),f=a.i(56620),g=a.i(98392),h=a.i(58036),i=a.i(74974),j=a.i(83370),k=a.i(59231),l="Tabs",[m,n]=(0,e.createContextScope)(l,[f.createRovingFocusGroupScope]),o=(0,f.createRovingFocusGroupScope)(),[p,q]=m(l),r=c.forwardRef((a,c)=>{let{__scopeTabs:d,value:e,onValueChange:f,defaultValue:g,orientation:m="horizontal",dir:n,activationMode:o="automatic",...q}=a,r=(0,i.useDirection)(n),[s,t]=(0,j.useControllableState)({prop:e,onChange:f,defaultProp:g??"",caller:l});return(0,b.jsx)(p,{scope:d,baseId:(0,k.useId)(),value:s,onValueChange:t,orientation:m,dir:r,activationMode:o,children:(0,b.jsx)(h.Primitive.div,{dir:r,"data-orientation":m,...q,ref:c})})});r.displayName=l;var s="TabsList",t=c.forwardRef((a,c)=>{let{__scopeTabs:d,loop:e=!0,...g}=a,i=q(s,d),j=o(d);return(0,b.jsx)(f.Root,{asChild:!0,...j,orientation:i.orientation,dir:i.dir,loop:e,children:(0,b.jsx)(h.Primitive.div,{role:"tablist","aria-orientation":i.orientation,...g,ref:c})})});t.displayName=s;var u="TabsTrigger",v=c.forwardRef((a,c)=>{let{__scopeTabs:e,value:g,disabled:i=!1,...j}=a,k=q(u,e),l=o(e),m=y(k.baseId,g),n=z(k.baseId,g),p=g===k.value;return(0,b.jsx)(f.Item,{asChild:!0,...l,focusable:!i,active:p,children:(0,b.jsx)(h.Primitive.button,{type:"button",role:"tab","aria-selected":p,"aria-controls":n,"data-state":p?"active":"inactive","data-disabled":i?"":void 0,disabled:i,id:m,...j,ref:c,onMouseDown:(0,d.composeEventHandlers)(a.onMouseDown,a=>{i||0!==a.button||!1!==a.ctrlKey?a.preventDefault():k.onValueChange(g)}),onKeyDown:(0,d.composeEventHandlers)(a.onKeyDown,a=>{[" ","Enter"].includes(a.key)&&k.onValueChange(g)}),onFocus:(0,d.composeEventHandlers)(a.onFocus,()=>{let a="manual"!==k.activationMode;p||i||!a||k.onValueChange(g)})})})});v.displayName=u;var w="TabsContent",x=c.forwardRef((a,d)=>{let{__scopeTabs:e,value:f,forceMount:i,children:j,...k}=a,l=q(w,e),m=y(l.baseId,f),n=z(l.baseId,f),o=f===l.value,p=c.useRef(o);return c.useEffect(()=>{let a=requestAnimationFrame(()=>p.current=!1);return()=>cancelAnimationFrame(a)},[]),(0,b.jsx)(g.Presence,{present:i||o,children:({present:c})=>(0,b.jsx)(h.Primitive.div,{"data-state":o?"active":"inactive","data-orientation":l.orientation,role:"tabpanel","aria-labelledby":m,hidden:!c,id:n,tabIndex:0,...k,ref:d,style:{...a.style,animationDuration:p.current?"0s":void 0},children:c&&j})})});function y(a,b){return`${a}-trigger-${b}`}function z(a,b){return`${a}-content-${b}`}x.displayName=w;var A=a.i(64565);let B=c.forwardRef(({className:a,...c},d)=>(0,b.jsx)(t,{ref:d,className:(0,A.cn)("inline-flex h-10 items-center justify-center rounded-lg border border-[hsl(var(--border))] bg-[hsl(var(--secondary))] p-1 text-muted-foreground shadow-[inset_0_1px_2px_rgba(15,23,42,0.04)]",a),...c}));B.displayName=t.displayName;let C=c.forwardRef(({className:a,...c},d)=>(0,b.jsx)(v,{ref:d,className:(0,A.cn)("inline-flex h-8 items-center justify-center gap-1.5 whitespace-nowrap rounded-md px-3.5 text-sm font-medium","ring-offset-[hsl(var(--background))] transition-all duration-150","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:text-foreground","data-[state=active]:bg-[hsl(var(--background))]","data-[state=active]:text-[hsl(var(--primary))]","data-[state=active]:shadow-[0_1px_2px_rgba(15,23,42,0.08),0_0_0_1px_hsl(var(--border))]","data-[state=active]:font-semibold",a),...c}));C.displayName=v.displayName;let D=c.forwardRef(({className:a,...c},d)=>(0,b.jsx)(x,{ref:d,className:(0,A.cn)("mt-3 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",a),...c}));D.displayName=x.displayName,a.s(["Tabs",0,r,"TabsContent",0,D,"TabsList",0,B,"TabsTrigger",0,C],16038)},65173,a=>{"use strict";let b=(0,a.i(50053).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);a.s(["ChevronLeft",0,b],65173)},10220,a=>{"use strict";var b=a.i(83366),c=a.i(21347),d=a.i(25377),e=a.i(39096);a.s(["useMemoryStores",0,function(){let{context:a,ready:f}=(0,e.useRuntimeContext)();return(0,b.useQuery)({queryKey:d.queryKeys.memoryStores(a.dataScopeKey),queryFn:c.listMemoryStores,enabled:f,staleTime:3e4})}])},23028,a=>{"use strict";let b=(0,a.i(50053).default)("database",[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]]);a.s(["Database",0,b],23028)},9367,a=>{"use strict";var b=a.i(83366),c=a.i(69024),d=a.i(25377),e=a.i(39096);a.s(["useKnowledgeBases",0,function(){let{context:a,ready:f}=(0,e.useRuntimeContext)();return(0,b.useQuery)({queryKey:d.queryKeys.knowledgeBases(a.dataScopeKey),queryFn:c.listKnowledgeBases,enabled:f,staleTime:3e4})}])},44401,a=>{"use strict";let b=(0,a.i(50053).default)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);a.s(["Info",0,b],44401)},69045,a=>{"use strict";let b=(0,a.i(50053).default)("circle-question-mark",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",key:"1u773s"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);a.s(["HelpCircle",0,b],69045)},82725,a=>{"use strict";let b=(0,a.i(50053).default)("chevrons-up-down",[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]]);a.s(["ChevronsUpDown",0,b],82725)},88189,a=>{"use strict";let b=(0,a.i(50053).default)("message-square",[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}]]);a.s(["MessageSquare",0,b],88189)},7378,a=>{"use strict";var b=a.i(71938);let c=null;function d(){return null!==c?c:(c=!1,!1)}function e(a){return()=>{}}function f(){return d()}function g(){return!1}a.s(["useSidebarCollapsed",0,function(){let a=(0,b.useSyncExternalStore)(e,f,g),h=(0,b.useCallback)(a=>{c=a;try{window.localStorage.setItem("sidebar.collapsed",a?"1":"0")}catch{}window.dispatchEvent(new CustomEvent("sidebar-collapsed-change",{detail:a}))},[]),i=(0,b.useCallback)(()=>{h(!d())},[h]);return{collapsed:a,setCollapsed:h,toggle:i}}])},47845,a=>{"use strict";let b=(0,a.i(50053).default)("brain",[["path",{d:"M12 18V5",key:"adv99a"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4",key:"1e3is1"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5",key:"1gqd8o"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77",key:"iwvgf7"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464",key:"efp6ie"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517",key:"1gq6am"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464",key:"k1g0md"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77",key:"q97ue3"}]]);a.s(["Brain",0,b],47845)},10581,a=>{"use strict";let b=(0,a.i(50053).default)("settings-2",[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]);a.s(["Settings2",0,b],10581)},21184,a=>{"use strict";var b=a.i(34020),c=a.i(43836),d=a.i(47161),e=a.i(28974),f=a.i(19446);a.s(["ConnectInstanceDialog",0,function({open:a,onOpenChange:g,onSuccess:h}){let i=(0,d.useConnectInstance)(),j=(0,d.useImportInstance)(),k=i.isPending||j.isPending;async function l(a){let b=(0,e.isImportPayload)(a)?await j.mutateAsync(a):await i.mutateAsync(a);h?.(b),g(!1)}return(0,b.jsx)(c.Dialog,{open:a,onOpenChange:g,children:(0,b.jsxs)(c.DialogContent,{className:"max-w-xl",children:[(0,b.jsxs)(c.DialogHeader,{children:[(0,b.jsx)(c.DialogTitle,{children:"创建新项目"}),(0,b.jsx)(c.DialogDescription,{children:"填写项目的连接凭证,或粘贴已有的项目 Token。"})]}),(0,b.jsx)(f.ConnectInstanceForm,{mode:"create",onSubmit:l,busy:k})]})})}])}];
2
+
3
+ //# sourceMappingURL=_01ag-vl._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[623,a=>{"use strict";let b=(0,a.i(50053).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);a.s(["ArrowLeft",0,b],623)},67558,a=>{"use strict";a.s(["IMAGE_FALLBACK_DATA_PREFIX",0,"data:image/jpeg;base64,","KB_NAME_REGEX",0,/^[a-zA-Z][a-zA-Z0-9_-]{1,62}[a-zA-Z0-9]$/])},36965,23331,69622,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);let F=(0,a.i(50053).default)("list-ordered",[["path",{d:"M11 5h10",key:"1cz7ny"}],["path",{d:"M11 12h10",key:"1438ji"}],["path",{d:"M11 19h10",key:"11t30w"}],["path",{d:"M4 4h1v5",key:"10yrso"}],["path",{d:"M4 9h2",key:"r1h2o0"}],["path",{d:"M6.5 20H3.4c0-1 2.6-1.925 2.6-3.5a1.5 1.5 0 0 0-2.6-1.02",key:"xtkcd5"}]]);var G=a.i(92942),H=a.i(72518);a.s(["RetrievalResultCountField",0,function({control:a,name:c,label:d="返回片段数",description:e="单次检索返回的最多片段数,Rerank 后取前 N 条。",min:f=0,max:g,muted:h=!1,className:i}){return(0,b.jsx)(G.FormField,{control:a,name:c,render:({field:a})=>{let c="number"==typeof a.value&&Number.isFinite(a.value)?String(a.value):"";return(0,b.jsxs)(G.FormItem,{className:(0,A.cn)("mb-0 rounded-md border border-[hsl(var(--border)/0.6)] bg-[hsl(var(--card)/0.72)] p-3 shadow-[0_1px_2px_hsl(var(--foreground)/0.04)]",h&&"opacity-65",i),children:[(0,b.jsxs)("div",{className:"grid gap-3 sm:grid-cols-[minmax(0,1fr)_auto] sm:items-center",children:[(0,b.jsxs)("div",{className:"flex min-w-0 gap-3",children:[(0,b.jsx)("span",{className:"mt-0.5 flex h-7 w-7 shrink-0 items-center justify-center rounded-md bg-[hsl(var(--primary)/0.08)] text-[hsl(var(--primary))]",children:(0,b.jsx)(F,{className:"h-3.5 w-3.5"})}),(0,b.jsxs)("div",{className:"min-w-0 space-y-1",children:[(0,b.jsx)(G.FormLabel,{className:"text-sm font-medium",children:d}),(0,b.jsx)("p",{className:"text-xs leading-relaxed text-[hsl(var(--muted-foreground))]",children:e})]})]}),(0,b.jsxs)("div",{className:"relative w-28 shrink-0",children:[(0,b.jsx)(G.FormControl,{children:(0,b.jsx)(H.Input,{ref:a.ref,name:a.name,type:"number",inputMode:"numeric",min:f,max:g,"aria-label":d,className:"h-9 w-full bg-[hsl(var(--background))] pr-8 text-right font-mono text-sm tabular-nums shadow-sm [appearance:textfield] [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none",value:c,onBlur:a.onBlur,onChange:b=>a.onChange(function(a){let b=a.trim();if(!b)return;let c=Number(b);return Number.isFinite(c)?c:void 0}(b.target.value))})}),(0,b.jsx)("span",{className:"pointer-events-none absolute right-3 top-1/2 -translate-y-1/2 text-xs text-[hsl(var(--muted-foreground))]",children:"条"})]})]}),(0,b.jsx)(G.FormMessage,{className:"pt-1"})]})}})}],69622)},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)}];
2
+
3
+ //# sourceMappingURL=_0atzifq._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[2482,a=>{"use strict";var b=a.i(34020),c=a.i(12583),d=a.i(80470),e=a.i(7704),f=a.i(64565);let g={"knowledge-base":"知识库",memory:"记忆库","llm-providers":"大模型",projects:"项目管理",documents:"文档",retrieval:"检索测试",qa:"问答测试",search:"记忆检索",units:"长期记忆",messages:"短期记忆",requests:"请求审计",settings:"设置",create:"新建",new:"新建",chat:"对话"};a.s(["PageHeader",0,function({title:a,description:h,hideBreadcrumb:i,children:j,className:k}){let l=(0,d.usePathname)()??"/",m=i?[]:function(a){if(/^\/knowledge-base\/[^/]+(?:\/.*)?$/.test(a)||/^\/memory\/[^/]+(?:\/.*)?$/.test(a))return[];let b=a.split("/").filter(Boolean);if(0===b.length)return[];let c=[],d="";return b.forEach((a,e)=>{d+=`/${a}`;let f=decodeURIComponent(a),h=g[f]??f;c.push({label:h,href:e<b.length-1?d:void 0})}),c}(l);return(0,b.jsxs)("div",{className:(0,f.cn)("mb-5 flex flex-col gap-2",k),children:[m.length>1&&(0,b.jsxs)("nav",{"aria-label":"面包屑",className:"flex items-center gap-1 text-[13px] text-[hsl(var(--muted-foreground))]",children:[(0,b.jsx)(c.default,{href:"/",className:"transition-colors hover:text-[hsl(var(--foreground))]",children:"主页"}),m.map((a,d)=>(0,b.jsxs)("span",{className:"flex items-center gap-1",children:[(0,b.jsx)(e.ChevronRight,{className:"h-3 w-3 opacity-60"}),a.href?(0,b.jsx)(c.default,{href:a.href,className:"transition-colors hover:text-[hsl(var(--foreground))]",children:a.label}):(0,b.jsx)("span",{className:"font-medium text-[hsl(var(--foreground))]",children:a.label})]},`${a.label}-${d}`))]}),(0,b.jsxs)("div",{className:"flex items-start justify-between gap-4",children:[(0,b.jsxs)("div",{className:"space-y-1",children:[(0,b.jsx)("h1",{className:"text-xl font-semibold leading-tight text-[hsl(var(--foreground))]",children:a}),h&&(0,b.jsx)("p",{className:"text-[13px] text-[hsl(var(--muted-foreground))]",children:h})]}),j&&(0,b.jsx)("div",{className:"flex shrink-0 items-center gap-2",children:j})]})]})}])},623,a=>{"use strict";let b=(0,a.i(50053).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);a.s(["ArrowLeft",0,b],623)},28303,a=>{"use strict";var b=a.i(34020),c=a.i(12583),d=a.i(623),e=a.i(2482),f=a.i(80470),g=a.i(71562),h=a.i(71071),i=a.i(80904),j=a.i(63265),k=a.i(76192),l=a.i(72518),m=a.i(70535),n=a.i(92942),o=a.i(33596),p=a.i(77072),q=a.i(21347),r=a.i(25377);let s=i.z.object({memoryStoreName:i.z.string().trim().min(1,"名称不能为空").max(32,"名称不能超过 32 个字符").regex(/^[a-zA-Z0-9_]+$/,"只能包含字母、数字和下划线"),description:i.z.string().trim().max(256,"描述不超过 256 字").optional()});function t(){let a,c=(0,f.useRouter)(),d=(a=(0,p.useQueryClient)(),(0,o.useMutation)({mutationFn:a=>(0,q.createMemoryStore)(a),onSuccess:()=>{(0,r.invalidateMemoryQueries)(a)}})),e=(0,g.useForm)({resolver:(0,h.zodResolver)(s),defaultValues:{memoryStoreName:"",description:""}});async function i(a){try{await d.mutateAsync({memoryStoreName:a.memoryStoreName,description:a.description?.length?a.description:void 0}),j.toast.success("记忆库创建成功"),c.push("/memory")}catch(a){j.toast.error(a instanceof Error?a.message:"创建记忆库失败")}}return(0,b.jsx)(n.Form,{...e,children:(0,b.jsxs)("form",{onSubmit:e.handleSubmit(i),className:"space-y-8",children:[(0,b.jsxs)("section",{className:"space-y-4",children:[(0,b.jsx)("h3",{className:"text-lg font-semibold",children:"基本信息"}),(0,b.jsx)(n.FormField,{control:e.control,name:"memoryStoreName",render:({field:a})=>(0,b.jsxs)(n.FormItem,{children:[(0,b.jsxs)(n.FormLabel,{children:["名称 ",(0,b.jsx)("span",{className:"text-[hsl(var(--destructive))]",children:"*"})]}),(0,b.jsx)(n.FormControl,{children:(0,b.jsx)(l.Input,{placeholder:"my_memory_store",...a})}),(0,b.jsx)(n.FormDescription,{children:"用于 memory CLI 的 --store 参数和控制台路由。仅支持字母、数字和下划线,最多 32 个字符。"}),(0,b.jsx)(n.FormMessage,{})]})}),(0,b.jsx)(n.FormField,{control:e.control,name:"description",render:({field:a})=>(0,b.jsxs)(n.FormItem,{children:[(0,b.jsx)(n.FormLabel,{children:"描述"}),(0,b.jsx)(n.FormControl,{children:(0,b.jsx)(m.Textarea,{placeholder:"描述这个记忆库的用途...",className:"resize-none",rows:4,...a})}),(0,b.jsx)(n.FormMessage,{})]})})]}),(0,b.jsxs)("div",{className:"flex justify-end gap-3 border-t border-[hsl(var(--border-light))] pt-4",children:[(0,b.jsx)(k.Button,{type:"button",variant:"outline",onClick:()=>c.push("/memory"),children:"取消"}),(0,b.jsx)(k.Button,{type:"submit",disabled:d.isPending,children:d.isPending?"创建中...":"创建记忆库"})]})]})})}a.s(["default",0,function(){return(0,b.jsxs)("div",{className:"space-y-6",children:[(0,b.jsxs)("div",{children:[(0,b.jsxs)(c.default,{href:"/memory",className:"mb-4 inline-flex items-center gap-1 text-sm text-muted-foreground transition-colors hover:text-foreground",children:[(0,b.jsx)(d.ArrowLeft,{className:"h-4 w-4"}),"返回记忆库列表"]}),(0,b.jsx)(e.PageHeader,{title:"创建记忆库",description:"创建一个新的 Agent Memory store"})]}),(0,b.jsx)("div",{className:"max-w-2xl",children:(0,b.jsx)(t,{})})]})}],28303)}];
1
+ module.exports=[2482,a=>{"use strict";var b=a.i(34020),c=a.i(12583),d=a.i(80470),e=a.i(7704),f=a.i(64565);let g={"knowledge-base":"知识库",memory:"记忆库","llm-providers":"大模型",projects:"项目管理",documents:"文档",retrieval:"检索测试",qa:"问答测试",search:"记忆检索",units:"长期记忆",messages:"短期记忆",requests:"请求审计",settings:"设置",create:"新建",new:"新建",chat:"对话"};a.s(["PageHeader",0,function({title:a,description:h,hideBreadcrumb:i,children:j,className:k}){let l=(0,d.usePathname)()??"/",m=i?[]:function(a){if(/^\/knowledge-base\/[^/]+(?:\/.*)?$/.test(a)||/^\/memory\/[^/]+(?:\/.*)?$/.test(a))return[];let b=a.split("/").filter(Boolean);if(0===b.length)return[];let c=[],d="";return b.forEach((a,e)=>{d+=`/${a}`;let f=decodeURIComponent(a),h=g[f]??f;c.push({label:h,href:e<b.length-1?d:void 0})}),c}(l);return(0,b.jsxs)("div",{className:(0,f.cn)("mb-5 flex flex-col gap-2",k),children:[m.length>1&&(0,b.jsxs)("nav",{"aria-label":"面包屑",className:"flex items-center gap-1 text-[13px] text-[hsl(var(--muted-foreground))]",children:[(0,b.jsx)(c.default,{href:"/",className:"transition-colors hover:text-[hsl(var(--foreground))]",children:"主页"}),m.map((a,d)=>(0,b.jsxs)("span",{className:"flex items-center gap-1",children:[(0,b.jsx)(e.ChevronRight,{className:"h-3 w-3 opacity-60"}),a.href?(0,b.jsx)(c.default,{href:a.href,className:"transition-colors hover:text-[hsl(var(--foreground))]",children:a.label}):(0,b.jsx)("span",{className:"font-medium text-[hsl(var(--foreground))]",children:a.label})]},`${a.label}-${d}`))]}),(0,b.jsxs)("div",{className:"flex items-start justify-between gap-4",children:[(0,b.jsxs)("div",{className:"space-y-1",children:[(0,b.jsx)("h1",{className:"text-xl font-semibold leading-tight text-[hsl(var(--foreground))]",children:a}),h&&(0,b.jsx)("p",{className:"text-[13px] text-[hsl(var(--muted-foreground))]",children:h})]}),j&&(0,b.jsx)("div",{className:"flex shrink-0 items-center gap-2",children:j})]})]})}])},623,a=>{"use strict";let b=(0,a.i(50053).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);a.s(["ArrowLeft",0,b],623)},28303,a=>{"use strict";var b=a.i(34020),c=a.i(12583),d=a.i(623),e=a.i(2482),f=a.i(80470),g=a.i(71562),h=a.i(71071),i=a.i(80904),j=a.i(63265),k=a.i(76192),l=a.i(72518),m=a.i(70535),n=a.i(92942),o=a.i(33596),p=a.i(77072),q=a.i(21347),r=a.i(25377);let s=i.z.object({memoryStoreName:i.z.string().trim().min(1,"名称不能为空").max(32,"名称不能超过 32 个字符").regex(/^[a-zA-Z0-9_]+$/,"只能包含字母、数字和下划线"),description:i.z.string().trim().max(256,"描述不超过 256 字").optional()});function t(){let a,c=(0,f.useRouter)(),d=(a=(0,p.useQueryClient)(),(0,o.useMutation)({mutationFn:a=>(0,q.createMemoryStore)(a),onSuccess:()=>{(0,r.invalidateMemoryQueries)(a)}})),e=(0,g.useForm)({resolver:(0,h.zodResolver)(s),defaultValues:{memoryStoreName:"",description:""}});async function i(a){try{await d.mutateAsync({memoryStoreName:a.memoryStoreName,description:a.description?.length?a.description:void 0}),j.toast.success("记忆库创建成功"),c.push("/memory")}catch(a){j.toast.error(a instanceof Error?a.message:"创建记忆库失败")}}return(0,b.jsx)(n.Form,{...e,children:(0,b.jsxs)("form",{onSubmit:e.handleSubmit(i),className:"space-y-8",children:[(0,b.jsxs)("section",{className:"space-y-4",children:[(0,b.jsx)("h3",{className:"text-lg font-semibold",children:"基本信息"}),(0,b.jsx)(n.FormField,{control:e.control,name:"memoryStoreName",render:({field:a})=>(0,b.jsxs)(n.FormItem,{children:[(0,b.jsxs)(n.FormLabel,{children:["名称 ",(0,b.jsx)("span",{className:"text-[hsl(var(--destructive))]",children:"*"})]}),(0,b.jsx)(n.FormControl,{children:(0,b.jsx)(l.Input,{placeholder:"my_memory_store",...a})}),(0,b.jsx)(n.FormDescription,{children:"用于 memory CLI 的 --store 参数和控制台路由。仅支持字母、数字和下划线,最多 32 个字符。"}),(0,b.jsx)(n.FormMessage,{})]})}),(0,b.jsx)(n.FormField,{control:e.control,name:"description",render:({field:a})=>(0,b.jsxs)(n.FormItem,{children:[(0,b.jsx)(n.FormLabel,{children:"描述"}),(0,b.jsx)(n.FormControl,{children:(0,b.jsx)(m.Textarea,{placeholder:"描述这个记忆库的用途...",className:"resize-none",rows:4,...a})}),(0,b.jsx)(n.FormMessage,{})]})})]}),(0,b.jsxs)("div",{className:"flex justify-end gap-3 border-t border-[hsl(var(--border-light))] pt-4",children:[(0,b.jsx)(k.Button,{type:"button",variant:"outline",onClick:()=>c.push("/memory"),children:"取消"}),(0,b.jsx)(k.Button,{type:"submit",disabled:d.isPending,children:d.isPending?"创建中...":"创建记忆库"})]})]})})}a.s(["default",0,function(){return(0,b.jsxs)("div",{className:"space-y-6",children:[(0,b.jsxs)("div",{children:[(0,b.jsxs)(c.default,{href:"/memory",className:"mb-4 inline-flex items-center gap-1 text-sm text-muted-foreground transition-colors hover:text-foreground",children:[(0,b.jsx)(d.ArrowLeft,{className:"h-4 w-4"}),"返回记忆库列表"]}),(0,b.jsx)(e.PageHeader,{title:"创建记忆库",description:"创建一个新的智能体记忆库"})]}),(0,b.jsx)("div",{className:"max-w-2xl",children:(0,b.jsx)(t,{})})]})}],28303)}];
2
2
 
3
3
  //# sourceMappingURL=_0f4u0.1._.js.map