@customize-agent/server 3.0.9 → 3.0.11

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 (73) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +54 -36
  3. package/.next/prerender-manifest.json +3 -3
  4. package/.next/routes-manifest.json +6 -0
  5. package/.next/server/chunks/3445.js +6 -6
  6. package/.next/server/chunks/5076.js +1 -1
  7. package/.next/server/chunks/8204.js +1 -1
  8. package/.next/server/middleware-build-manifest.js +1 -1
  9. package/.next/server/pages/404.html +1 -1
  10. package/.next/server/pages/500.html +1 -1
  11. package/.next/server/pages/api/documents/chapter/regenerate.js +1 -1
  12. package/.next/server/pages/api/documents/chapter/regenerate.js.nft.json +1 -1
  13. package/.next/server/pages/api/documents/export.js +1 -1
  14. package/.next/server/pages/api/documents/export.js.nft.json +1 -1
  15. package/.next/server/pages/api/documents/generate.js +1 -1
  16. package/.next/server/pages/api/documents/generate.js.nft.json +1 -1
  17. package/.next/server/pages/api/documents/specs.js +1 -0
  18. package/.next/server/pages/api/documents/specs.js.nft.json +1 -0
  19. package/.next/server/pages/api/documents/templates.js +1 -1
  20. package/.next/server/pages/api/documents/templates.js.nft.json +1 -1
  21. package/.next/server/pages/context/long-term.html +1 -1
  22. package/.next/server/pages/context/short-term.html +1 -1
  23. package/.next/server/pages/document-roles.html +1 -1
  24. package/.next/server/pages/document-specs.html +1 -0
  25. package/.next/server/pages/document-specs.js.nft.json +1 -0
  26. package/.next/server/pages/documents.html +1 -1
  27. package/.next/server/pages/guide.html +1 -1
  28. package/.next/server/pages/guide.js.nft.json +1 -1
  29. package/.next/server/pages/index.html +1 -1
  30. package/.next/server/pages/knowledge/file-detail.html +1 -1
  31. package/.next/server/pages/knowledge/files.html +1 -1
  32. package/.next/server/pages/knowledge/manage.html +1 -1
  33. package/.next/server/pages/knowledge/search.html +1 -1
  34. package/.next/server/pages/knowledge.html +1 -1
  35. package/.next/server/pages/models.html +1 -1
  36. package/.next/server/pages/overview.html +1 -1
  37. package/.next/server/pages/prompt.html +1 -1
  38. package/.next/server/pages/settings.html +1 -1
  39. package/.next/server/pages-manifest.json +21 -19
  40. package/.next/static/chunks/{400-ba996d76e74a7368.js → 400-f06f00619f22421e.js} +1 -1
  41. package/.next/static/chunks/730-727fe4b055c78dc2.js +1 -0
  42. package/.next/static/chunks/740-2bcba39d841f2b16.js +16 -0
  43. package/.next/static/chunks/804-e654a1589d9adc65.js +11 -0
  44. package/.next/static/chunks/846-fed995f7c83fc6c3.js +1 -0
  45. package/.next/static/chunks/958-66e2dcf301fb3c3f.js +1 -0
  46. package/.next/static/chunks/pages/{_app-15fb8428c7126df0.js → _app-49c11d5b0712c7a5.js} +9 -9
  47. package/.next/static/chunks/pages/context/{long-term-9685fc1fd8397807.js → long-term-710aaeb12e378258.js} +1 -1
  48. package/.next/static/chunks/pages/context/{short-term-86f5d204405bb05c.js → short-term-e68f01478e7ed238.js} +1 -1
  49. package/.next/static/chunks/pages/document-roles-caee7af42da4f792.js +1 -0
  50. package/.next/static/chunks/pages/document-specs-7085069b6dcdaee6.js +1 -0
  51. package/.next/static/chunks/pages/documents-b78988e17525927f.js +1 -0
  52. package/.next/static/chunks/pages/guide-b495954d18d56b33.js +1 -0
  53. package/.next/static/chunks/pages/knowledge/{file-detail-21dbc84d04f969ca.js → file-detail-793d12234ccddac1.js} +1 -1
  54. package/.next/static/chunks/pages/knowledge/{files-369d7ccf6a6e4e43.js → files-a3a4bbc49c980b46.js} +1 -1
  55. package/.next/static/chunks/pages/knowledge/manage-64ad6cdce068edb1.js +1 -0
  56. package/.next/static/chunks/pages/knowledge/{search-5a199ff773f7938b.js → search-fe148477dfe05966.js} +1 -1
  57. package/.next/static/chunks/pages/models-6131bc7596604158.js +1 -0
  58. package/.next/static/chunks/pages/overview-db5df4f0bec2a77c.js +1 -0
  59. package/.next/static/yEauW-YU8G-h4UdYFV8_d/_buildManifest.js +1 -0
  60. package/package.json +4 -4
  61. package/.next/static/VXIEr9wT7-PwtFzF1Z4a2/_buildManifest.js +0 -1
  62. package/.next/static/chunks/740-cd38299e151d3ffc.js +0 -16
  63. package/.next/static/chunks/841-3d29160e695d62bc.js +0 -1
  64. package/.next/static/chunks/912-6c4e14cfeb726d91.js +0 -11
  65. package/.next/static/chunks/951-320008e618be7e4f.js +0 -1
  66. package/.next/static/chunks/958-0793922b6b146891.js +0 -1
  67. package/.next/static/chunks/pages/document-roles-1449654aa961426e.js +0 -1
  68. package/.next/static/chunks/pages/documents-214c9e8ba476e90b.js +0 -1
  69. package/.next/static/chunks/pages/guide-b1a75703238c7f77.js +0 -1
  70. package/.next/static/chunks/pages/knowledge/manage-447ce42652c203f4.js +0 -1
  71. package/.next/static/chunks/pages/models-fc67c4147d2aa3cb.js +0 -1
  72. package/.next/static/chunks/pages/overview-558db8205a06d058.js +0 -1
  73. /package/.next/static/{VXIEr9wT7-PwtFzF1Z4a2 → yEauW-YU8G-h4UdYFV8_d}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[414],{423:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>E});var o=n(5321),a=n(7109),i=n(4986),c=n(3014),r=n(7807),s=n(3442),l=n(5114),d=n(2256),u=n(8770),p=n(8787),y=n(4849),h=n(6911),f=n(9400),m=n(1702),g=n(9606),w=n(486),b=n(2192),S=n(6768),k=n(6619),x=n(933),j=n(8740),v=n(6578),T=n(5551);let C=["document","spreadsheet","image","cad","code","data","web","diagram","archive","other"];function E(){var e,t,n;let E=(0,c.Vr)(),{locale:O}=(0,c.x_)(),N=(0,i.useRouter)(),{stats:A,loading:P,reload:R}=function(){let[e,t]=(0,a.useState)(null),[n,o]=(0,a.useState)(!0),i=(0,a.useCallback)(async()=>{o(!0);try{t(await (0,v.hc)())}catch(e){}finally{o(!1)}},[]);return(0,a.useEffect)(()=>{i()},[i]),{stats:e,loading:n,reload:i}}(),D=function(){let[e,t]=(0,a.useState)(null);return(0,a.useEffect)(()=>{(0,v.VW)().then(t).catch(()=>{})},[]),e}(),{reindexing:J,reindex:U}=function(){let[e,t]=(0,a.useState)(!1);return{reindexing:e,reindex:(0,a.useCallback)(async()=>{t(!0);try{return await (0,v.H1)(),!0}catch(e){return!1}finally{t(!1)}},[])}}(),[I,z]=(0,a.useState)("document"),[L,_]=(0,a.useState)({count:0,totalSize:0}),{message:B}=r.A.useApp(),H=(0,a.useCallback)(async e=>{try{let t=await (0,v.HT)({category:e,limit:1e4}),n=0;if(Array.isArray(t.files))for(let e of t.files)n+=e.fileSize||0;_({count:t.total||0,totalSize:n})}catch(e){_({count:0,totalSize:0})}},[]);(0,a.useEffect)(()=>{H(I)},[I,H]);let M=async()=>{await U()?await Promise.all([R(),H(I)]):B.error(E("common.error"))};return(0,o.jsxs)("div",{className:"space-y-6 animateFadeIn",children:[(0,o.jsxs)("div",{className:"flex items-center justify-between",children:[(0,o.jsxs)("div",{children:[(0,o.jsx)("h1",{className:"pageTitle",children:E("knowledge.manageTitle")}),(0,o.jsx)("p",{className:"pageDesc",children:E("knowledge.manageDesc")})]}),(0,o.jsxs)(s.A,{children:[(0,o.jsx)(l.Ay,{icon:(0,o.jsx)(g.A,{}),onClick:()=>N.push("/knowledge/files"),children:E("knowledge.files")}),(0,o.jsx)(l.Ay,{icon:(0,o.jsx)(w.A,{}),onClick:()=>N.push("/knowledge/search"),children:E("knowledge.search")}),(0,o.jsx)(l.Ay,{icon:(0,o.jsx)(b.A,{}),loading:J,onClick:()=>{M()},children:E("knowledge.reindex")})]})]}),(0,o.jsx)(d.A,{gutter:[16,16],children:[{icon:(0,o.jsx)(S.A,{}),label:E("knowledge.totalFiles"),value:null!=(e=null==A?void 0:A.fileCount)?e:0},{icon:(0,o.jsx)(k.A,{}),label:E("knowledge.totalChunks"),value:null!=(t=null==A?void 0:A.chunkCount)?t:0},{icon:(0,o.jsx)(x.A,{}),label:E("knowledge.totalSize"),value:(0,T.z3)(null!=(n=null==A?void 0:A.totalSizeBytes)?n:0)},{icon:(0,o.jsx)(j.A,{}),label:E("knowledge.lastIndexed"),value:(null==A?void 0:A.lastIndexedAt)?(0,T.fw)(A.lastIndexedAt,O):E("common.never")}].map((e,t)=>(0,o.jsx)(u.A,{xs:12,sm:6,children:(0,o.jsx)(p.A,{size:"small",loading:P&&!A,children:(0,o.jsx)(y.A,{title:e.label,value:e.value,prefix:e.icon})})},t))}),(0,o.jsxs)(p.A,{title:E("knowledge.categories"),size:"small",children:[(0,o.jsx)(h.A,{value:I,onChange:e=>z(String(e)),options:C.map(e=>({label:(0,T.Jm)(e,O),value:e})),className:"mb-4"}),(0,o.jsxs)(d.A,{gutter:[16,16],children:[(0,o.jsx)(u.A,{xs:12,sm:8,children:(0,o.jsx)(y.A,{title:E("knowledge.fileCount"),value:L.count,prefix:(0,o.jsx)(S.A,{})})}),(0,o.jsx)(u.A,{xs:12,sm:8,children:(0,o.jsx)(y.A,{title:E("knowledge.totalSize"),value:(0,T.z3)(L.totalSize),prefix:(0,o.jsx)(x.A,{})})})]})]}),D&&(0,o.jsx)(p.A,{title:E("knowledge.features"),size:"small",children:(0,o.jsx)(f.A,{dataSource:[{key:"vectorStore",label:"Vector Store",desc:E("knowledge.featureVectorStoreDesc"),value:D.vectorStore},{key:"embedding",label:"Embedding",desc:E("knowledge.featureEmbeddingDesc"),value:D.embeddingProvider},{key:"dedup",label:E("knowledge.featureDedup"),desc:E("knowledge.featureDedupDesc"),value:D.dedupEngine},{key:"chunker",label:E("knowledge.featureChunker"),desc:E("knowledge.featureChunkerDesc"),value:D.chunker}],columns:[{title:E("knowledge.featureName"),dataIndex:"label",key:"label",width:120},{title:E("knowledge.featureDesc"),dataIndex:"desc",key:"desc"},{title:E("knowledge.featureValue"),dataIndex:"value",key:"value",render:e=>(0,o.jsx)(m.A,{color:"blue",children:e})}],pagination:!1,size:"small"})})]})}},4178:(e,t,n)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/knowledge/manage",function(){return n(423)}])},5551:(e,t,n)=>{"use strict";function o(e){if(0===e)return"0 B";let t=Math.floor(Math.log(e)/Math.log(1024)),n=e/Math.pow(1024,t);return"".concat(n.toFixed(+(0!==t))," ").concat(["B","KB","MB","GB","TB"][t])}function a(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"zh-CN";if(!e||e<=0)return"en-US"===t?"Never":"从未";let n=Math.floor(Math.floor((Date.now()-e)/1e3)/60),o=Math.floor(n/60),a=Math.floor(o/24);return a>30?new Date(e).toLocaleDateString(t):"en-US"===t?a>0?"".concat(a,"d ago"):o>0?"".concat(o,"h ago"):n>0?"".concat(n,"m ago"):"Just now":a>0?"".concat(a," 天前"):o>0?"".concat(o," 小时前"):n>0?"".concat(n," 分钟前"):"刚刚"}n.d(t,{Jm:()=>r,fw:()=>a,z3:()=>o});let i={document:"文档",spreadsheet:"表格",image:"图片",cad:"图纸",code:"代码",data:"数据",web:"网页",diagram:"图表",archive:"压缩包",other:"其他"},c={document:"Document",spreadsheet:"Spreadsheet",image:"Image",cad:"CAD",code:"Code",data:"Data",web:"Web",diagram:"Diagram",archive:"Archive",other:"Other"};function r(e){var t;let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"zh-CN";return null!=(t=("en-US"===n?c:i)[e])?t:e}},6578:(e,t,n)=>{"use strict";async function o(e,t){let n=await fetch(e,t);if(!n.ok){let e=await n.text(),t=e||"HTTP ".concat(n.status);try{let n=JSON.parse(e);t=n.error||n.message||t}catch(e){}throw Error(t)}return n.json()}async function a(e){let t=e?"?projectRoot=".concat(encodeURIComponent(e)):"";return o("/api/kb/stats".concat(t))}async function i(e){var t,n;let a=new URLSearchParams;return(null==e?void 0:e.projectRoot)&&a.set("projectRoot",e.projectRoot),(null==e?void 0:e.category)&&a.set("category",e.category),(null==e?void 0:e.page)&&a.set("page",String(null!=(t=e.page)?t:1)),(null==e?void 0:e.limit)&&a.set("limit",String(null!=(n=e.limit)?n:50)),o("/api/kb/files?".concat(a))}async function c(e,t){let n=new URLSearchParams({relativePath:e});return t&&n.set("projectRoot",t),o("/api/kb/files/detail?".concat(n))}async function r(e,t){return o("/api/kb/files/reindex",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({relativePath:e,projectRoot:t})})}async function s(e,t,n){return o("/api/kb/files/open",{method:"POST",body:JSON.stringify({relativePath:e,target:t,projectRoot:n})})}async function l(e){return new Promise((t,n)=>{let o=new FileReader;o.onload=()=>{let e=o.result,n=e.indexOf(",");t(n>=0?e.slice(n+1):e)},o.onerror=n,o.readAsDataURL(e)})}async function d(e,t,n){return o("/api/kb/upload",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({files:await Promise.all(e.map(async e=>({fileName:e.name,fileData:await l(e),relativePath:e.webkitRelativePath||void 0}))),projectRoot:t,uploadId:n})})}async function u(e){return o("/api/kb/upload/progress?id=".concat(encodeURIComponent(e)))}async function p(e){let t=new URLSearchParams({limit:"50"});return e&&t.set("projectRoot",e),o("/api/kb/operations?".concat(t))}async function y(e){let t=new URLSearchParams;return e&&t.set("projectRoot",e),o("/api/kb/operations?".concat(t),{method:"DELETE"})}async function h(e,t){return o("/api/kb/files",{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({relativePath:e,projectRoot:t})})}async function f(e,t){return o("/api/kb/files",{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({relativePaths:e,projectRoot:t})})}async function m(e){return o("/api/kb/files",{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({all:!0,projectRoot:e})})}async function g(e){return o("/api/kb/reindex",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectRoot:e})})}async function w(){return o("/api/kb/features")}async function b(e,t){var n,a,i,c,r;let s=new URLSearchParams({q:e});return(null==t?void 0:t.projectRoot)&&s.set("projectRoot",t.projectRoot),(null==t?void 0:t.category)&&s.set("category",t.category),(null==t?void 0:t.limit)&&s.set("limit",String(null!=(r=t.limit)?r:20)),(null==t||null==(n=t.weights)?void 0:n.keyword)!=null&&s.set("keywordWeight",String(t.weights.keyword)),(null==t||null==(a=t.weights)?void 0:a.vector)!=null&&s.set("vectorWeight",String(t.weights.vector)),(null==t||null==(i=t.weights)?void 0:i.rewrite)!=null&&s.set("rewriteWeight",String(t.weights.rewrite)),(null==t||null==(c=t.weights)?void 0:c.hybridBonus)!=null&&s.set("hybridBonus",String(t.weights.hybridBonus)),o("/api/kb/search?".concat(s))}async function S(){return o("/api/prompt")}async function k(e){return o("/api/documents/roles".concat(e?"?type=".concat(e):""))}async function x(e){return o("/api/documents/roles",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function j(e,t){return o("/api/documents/roles?type=".concat(e,"&id=").concat(encodeURIComponent(t)),{method:"DELETE"})}async function v(e){return o("/api/documents/roles?mode=config",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function T(e){return o("/api/documents/roles?mode=config&id=".concat(encodeURIComponent(e)),{method:"DELETE"})}async function C(){return o("/api/documents/templates")}async function E(e){return o("/api/documents/templates",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function O(e){return o("/api/documents/templates?templateId=".concat(encodeURIComponent(e)),{method:"DELETE"})}async function N(e){return o("/api/documents/templates",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({templateId:e})})}async function A(e){return o("/api/documents/generate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function P(e){return o("/api/documents/chapter/regenerate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function R(){return o("/api/documents/drafts")}async function D(e,t){return o("/api/documents/drafts",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({draft:e,id:t})})}async function J(e){let t=await fetch("/api/documents/export",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw Error(await t.text());return t.blob()}async function U(){return o("/api/config/providers")}async function I(e,t){return o("/api/config/providers",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:e,...t})})}async function z(e){return o("/api/config/providers/".concat(encodeURIComponent(e)),{method:"DELETE"})}async function L(){return o("/api/config/models")}async function _(e){return o("/api/config/models",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function B(){return o("/api/config/embedding")}async function H(e){return o("/api/config/embedding",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function M(){return o("/api/config/embedding/healthCheck",{method:"POST"})}async function V(e){return o("/api/config/healthCheck",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({provider:e})})}async function W(){return o("/api/system/stats")}async function F(e,t){let n=t?"?type=".concat(e,"&search=").concat(encodeURIComponent(t)):"?type=".concat(e);return o("/api/context".concat(n))}async function X(e){return o("/api/context?type=".concat(e,"&stats=1"))}async function q(e){return o("/api/context",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"compress",type:e})})}async function Q(e){return o("/api/context",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"clear",type:e})})}async function Z(e){return o("/api/context?id=".concat(encodeURIComponent(e)),{method:"DELETE"})}async function G(e,t){return o("/api/context",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:e,...t})})}async function K(e){return o("/api/config/providers/".concat(encodeURIComponent(e)))}n.d(t,{Af:()=>D,Bh:()=>K,Dl:()=>C,E:()=>Q,FC:()=>W,FV:()=>j,H1:()=>g,H7:()=>y,HC:()=>r,HT:()=>i,II:()=>B,NR:()=>v,OX:()=>A,PH:()=>q,QT:()=>u,Qx:()=>p,R1:()=>P,SJ:()=>f,UE:()=>J,VW:()=>w,W2:()=>b,X8:()=>m,Z3:()=>U,_m:()=>I,aP:()=>_,bV:()=>N,bZ:()=>V,c1:()=>d,dd:()=>H,dg:()=>x,dw:()=>T,dx:()=>S,h0:()=>O,h1:()=>z,hc:()=>a,hn:()=>F,l2:()=>E,lv:()=>k,p:()=>X,q7:()=>R,tn:()=>s,u6:()=>M,xC:()=>c,xq:()=>h,xw:()=>Z,zo:()=>G,zr:()=>L})}},e=>{e.O(0,[260,167,382,201,227,740,174,446,400,958,891,636,593,792],()=>e(e.s=4178)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[46],{69:(e,t)=>{"use strict";t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M608 112c-167.9 0-304 136.1-304 304 0 70.3 23.9 135 63.9 186.5L255.8 713.6l-62.3-62.3a8.19 8.19 0 00-11.4 0l-39.8 39.8a8.19 8.19 0 000 11.4l62.3 62.3-44.9 44.9-62.3-62.3a8.19 8.19 0 00-11.4 0l-39.8 39.8a8.19 8.19 0 000 11.4l110.3 111.2c3.1 3.1 8.2 3.1 11.3 0l253.6-253.6A304.1 304.1 0 00608 720c167.9 0 304-136.1 304-304S775.9 112 608 112m161.2 465.2C726.2 620.3 668.9 644 608 644s-118.2-23.7-161.2-66.8C403.7 534.2 380 476.9 380 416s23.7-118.2 66.8-161.2c43-43.1 100.3-66.8 161.2-66.8s118.2 23.7 161.2 66.8c43.1 43 66.8 100.3 66.8 161.2s-23.7 118.2-66.8 161.2"}}]},name:"key",theme:"outlined"}},289:(e,t)=>{"use strict";t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M854.4 800.9c.2-.3.5-.6.7-.9C920.6 722.1 960 621.7 960 512s-39.4-210.1-104.8-288c-.2-.3-.5-.5-.7-.8-1.1-1.3-2.1-2.5-3.2-3.7-.4-.5-.8-.9-1.2-1.4l-4.1-4.7-.1-.1c-1.5-1.7-3.1-3.4-4.6-5.1l-.1-.1c-3.2-3.4-6.4-6.8-9.7-10.1l-.1-.1-4.8-4.8-.3-.3c-1.5-1.5-3-2.9-4.5-4.3-.5-.5-1-1-1.6-1.5-1-1-2-1.9-3-2.8-.3-.3-.7-.6-1-1C736.4 109.2 629.5 64 512 64s-224.4 45.2-304.3 119.2c-.3.3-.7.6-1 1-1 .9-2 1.9-3 2.9-.5.5-1 1-1.6 1.5-1.5 1.4-3 2.9-4.5 4.3l-.3.3-4.8 4.8-.1.1c-3.3 3.3-6.5 6.7-9.7 10.1l-.1.1c-1.6 1.7-3.1 3.4-4.6 5.1l-.1.1c-1.4 1.5-2.8 3.1-4.1 4.7-.4.5-.8.9-1.2 1.4-1.1 1.2-2.1 2.5-3.2 3.7-.2.3-.5.5-.7.8C103.4 301.9 64 402.3 64 512s39.4 210.1 104.8 288c.2.3.5.6.7.9l3.1 3.7c.4.5.8.9 1.2 1.4l4.1 4.7c0 .1.1.1.1.2 1.5 1.7 3 3.4 4.6 5l.1.1c3.2 3.4 6.4 6.8 9.6 10.1l.1.1c1.6 1.6 3.1 3.2 4.7 4.7l.3.3c3.3 3.3 6.7 6.5 10.1 9.6 80.1 74 187 119.2 304.5 119.2s224.4-45.2 304.3-119.2a300 300 0 0010-9.6l.3-.3c1.6-1.6 3.2-3.1 4.7-4.7l.1-.1c3.3-3.3 6.5-6.7 9.6-10.1l.1-.1c1.5-1.7 3.1-3.3 4.6-5 0-.1.1-.1.1-.2 1.4-1.5 2.8-3.1 4.1-4.7.4-.5.8-.9 1.2-1.4a99 99 0 003.3-3.7zm4.1-142.6c-13.8 32.6-32 62.8-54.2 90.2a444.07 444.07 0 00-81.5-55.9c11.6-46.9 18.8-98.4 20.7-152.6H887c-3 40.9-12.6 80.6-28.5 118.3zM887 484H743.5c-1.9-54.2-9.1-105.7-20.7-152.6 29.3-15.6 56.6-34.4 81.5-55.9A373.86 373.86 0 01887 484zM658.3 165.5c39.7 16.8 75.8 40 107.6 69.2a394.72 394.72 0 01-59.4 41.8c-15.7-45-35.8-84.1-59.2-115.4 3.7 1.4 7.4 2.9 11 4.4zm-90.6 700.6c-9.2 7.2-18.4 12.7-27.7 16.4V697a389.1 389.1 0 01115.7 26.2c-8.3 24.6-17.9 47.3-29 67.8-17.4 32.4-37.8 58.3-59 75.1zm59-633.1c11 20.6 20.7 43.3 29 67.8A389.1 389.1 0 01540 327V141.6c9.2 3.7 18.5 9.1 27.7 16.4 21.2 16.7 41.6 42.6 59 75zM540 640.9V540h147.5c-1.6 44.2-7.1 87.1-16.3 127.8l-.3 1.2A445.02 445.02 0 00540 640.9zm0-156.9V383.1c45.8-2.8 89.8-12.5 130.9-28.1l.3 1.2c9.2 40.7 14.7 83.5 16.3 127.8H540zm-56 56v100.9c-45.8 2.8-89.8 12.5-130.9 28.1l-.3-1.2c-9.2-40.7-14.7-83.5-16.3-127.8H484zm-147.5-56c1.6-44.2 7.1-87.1 16.3-127.8l.3-1.2c41.1 15.6 85 25.3 130.9 28.1V484H336.5zM484 697v185.4c-9.2-3.7-18.5-9.1-27.7-16.4-21.2-16.7-41.7-42.7-59.1-75.1-11-20.6-20.7-43.3-29-67.8 37.2-14.6 75.9-23.3 115.8-26.1zm0-370a389.1 389.1 0 01-115.7-26.2c8.3-24.6 17.9-47.3 29-67.8 17.4-32.4 37.8-58.4 59.1-75.1 9.2-7.2 18.4-12.7 27.7-16.4V327zM365.7 165.5c3.7-1.5 7.3-3 11-4.4-23.4 31.3-43.5 70.4-59.2 115.4-21-12-40.9-26-59.4-41.8 31.8-29.2 67.9-52.4 107.6-69.2zM165.5 365.7c13.8-32.6 32-62.8 54.2-90.2 24.9 21.5 52.2 40.3 81.5 55.9-11.6 46.9-18.8 98.4-20.7 152.6H137c3-40.9 12.6-80.6 28.5-118.3zM137 540h143.5c1.9 54.2 9.1 105.7 20.7 152.6a444.07 444.07 0 00-81.5 55.9A373.86 373.86 0 01137 540zm228.7 318.5c-39.7-16.8-75.8-40-107.6-69.2 18.5-15.8 38.4-29.7 59.4-41.8 15.7 45 35.8 84.1 59.2 115.4-3.7-1.4-7.4-2.9-11-4.4zm292.6 0c-3.7 1.5-7.3 3-11 4.4 23.4-31.3 43.5-70.4 59.2-115.4 21 12 40.9 26 59.4 41.8a373.81 373.81 0 01-107.6 69.2z"}}]},name:"global",theme:"outlined"}},2256:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});let o=n(5341).A},2323:e=>{e.exports={cardMeta:"style_cardMeta__6KOa3",cardName:"style_cardName__WcLAf",cardAction:"style_cardAction__XUfPD",cardMain:"style_cardMain__qI1jU",providerCard:"style_providerCard__tLKGs",providerGrid:"style_providerGrid__Gx5GR",urlLine:"style_urlLine__DuMYs",tierDesc:"style_tierDesc__wOd6p",modelTags:"style_modelTags__nmMVj"}},3114:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var o=n(7109),a=n(5450),r=n(8483);function s(){return(s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e}).apply(this,arguments)}let i=o.forwardRef((e,t)=>o.createElement(r.A,s({},e,{ref:t,icon:a.A})))},3214:(e,t)=>{"use strict";t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 00-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z"}}]},name:"check",theme:"outlined"}},4190:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var o=n(7109),a=n(3214),r=n(8483);function s(){return(s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e}).apply(this,arguments)}let i=o.forwardRef((e,t)=>o.createElement(r.A,s({},e,{ref:t,icon:a.A})))},5450:(e,t)=>{"use strict";t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M917.7 148.8l-42.4-42.4c-1.6-1.6-3.6-2.3-5.7-2.3s-4.1.8-5.7 2.3l-76.1 76.1a199.27 199.27 0 00-112.1-34.3c-51.2 0-102.4 19.5-141.5 58.6L432.3 308.7a8.03 8.03 0 000 11.3L704 591.7c1.6 1.6 3.6 2.3 5.7 2.3 2 0 4.1-.8 5.7-2.3l101.9-101.9c68.9-69 77-175.7 24.3-253.5l76.1-76.1c3.1-3.2 3.1-8.3 0-11.4zM769.1 441.7l-59.4 59.4-186.8-186.8 59.4-59.4c24.9-24.9 58.1-38.7 93.4-38.7 35.3 0 68.4 13.7 93.4 38.7 24.9 24.9 38.7 58.1 38.7 93.4 0 35.3-13.8 68.4-38.7 93.4zm-190.2 105a8.03 8.03 0 00-11.3 0L501 613.3 410.7 523l66.7-66.7c3.1-3.1 3.1-8.2 0-11.3L441 408.6a8.03 8.03 0 00-11.3 0L363 475.3l-43-43a7.85 7.85 0 00-5.7-2.3c-2 0-4.1.8-5.7 2.3L206.8 534.2c-68.9 69-77 175.7-24.3 253.5l-76.1 76.1a8.03 8.03 0 000 11.3l42.4 42.4c1.6 1.6 3.6 2.3 5.7 2.3s4.1-.8 5.7-2.3l76.1-76.1c33.7 22.9 72.9 34.3 112.1 34.3 51.2 0 102.4-19.5 141.5-58.6l101.9-101.9c3.1-3.1 3.1-8.2 0-11.3l-43-43 66.7-66.7c3.1-3.1 3.1-8.2 0-11.3l-36.6-36.2zM441.7 769.1a131.32 131.32 0 01-93.4 38.7c-35.3 0-68.4-13.7-93.4-38.7a131.32 131.32 0 01-38.7-93.4c0-35.3 13.7-68.4 38.7-93.4l59.4-59.4 186.8 186.8-59.4 59.4z"}}]},name:"api",theme:"outlined"}},6578:(e,t,n)=>{"use strict";async function o(e,t){let n=await fetch(e,t);if(!n.ok){let e=await n.text(),t=e||"HTTP ".concat(n.status);try{let n=JSON.parse(e);t=n.error||n.message||t}catch(e){}throw Error(t)}return n.json()}async function a(e){let t=e?"?projectRoot=".concat(encodeURIComponent(e)):"";return o("/api/kb/stats".concat(t))}async function r(e){var t,n;let a=new URLSearchParams;return(null==e?void 0:e.projectRoot)&&a.set("projectRoot",e.projectRoot),(null==e?void 0:e.category)&&a.set("category",e.category),(null==e?void 0:e.page)&&a.set("page",String(null!=(t=e.page)?t:1)),(null==e?void 0:e.limit)&&a.set("limit",String(null!=(n=e.limit)?n:50)),o("/api/kb/files?".concat(a))}async function s(e,t){let n=new URLSearchParams({relativePath:e});return t&&n.set("projectRoot",t),o("/api/kb/files/detail?".concat(n))}async function i(e,t){return o("/api/kb/files/reindex",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({relativePath:e,projectRoot:t})})}async function l(e,t,n){return o("/api/kb/files/open",{method:"POST",body:JSON.stringify({relativePath:e,target:t,projectRoot:n})})}async function c(e){return new Promise((t,n)=>{let o=new FileReader;o.onload=()=>{let e=o.result,n=e.indexOf(",");t(n>=0?e.slice(n+1):e)},o.onerror=n,o.readAsDataURL(e)})}async function d(e,t,n){return o("/api/kb/upload",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({files:await Promise.all(e.map(async e=>({fileName:e.name,fileData:await c(e),relativePath:e.webkitRelativePath||void 0}))),projectRoot:t,uploadId:n})})}async function m(e){return o("/api/kb/upload/progress?id=".concat(encodeURIComponent(e)))}async function p(e){let t=new URLSearchParams({limit:"50"});return e&&t.set("projectRoot",e),o("/api/kb/operations?".concat(t))}async function u(e){let t=new URLSearchParams;return e&&t.set("projectRoot",e),o("/api/kb/operations?".concat(t),{method:"DELETE"})}async function h(e,t){return o("/api/kb/files",{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({relativePath:e,projectRoot:t})})}async function y(e,t){return o("/api/kb/files",{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({relativePaths:e,projectRoot:t})})}async function f(e){return o("/api/kb/files",{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({all:!0,projectRoot:e})})}async function g(e){return o("/api/kb/reindex",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectRoot:e})})}async function v(){return o("/api/kb/features")}async function b(e,t){var n,a,r,s,i;let l=new URLSearchParams({q:e});return(null==t?void 0:t.projectRoot)&&l.set("projectRoot",t.projectRoot),(null==t?void 0:t.category)&&l.set("category",t.category),(null==t?void 0:t.limit)&&l.set("limit",String(null!=(i=t.limit)?i:20)),(null==t||null==(n=t.weights)?void 0:n.keyword)!=null&&l.set("keywordWeight",String(t.weights.keyword)),(null==t||null==(a=t.weights)?void 0:a.vector)!=null&&l.set("vectorWeight",String(t.weights.vector)),(null==t||null==(r=t.weights)?void 0:r.rewrite)!=null&&l.set("rewriteWeight",String(t.weights.rewrite)),(null==t||null==(s=t.weights)?void 0:s.hybridBonus)!=null&&l.set("hybridBonus",String(t.weights.hybridBonus)),o("/api/kb/search?".concat(l))}async function x(){return o("/api/prompt")}async function j(e){return o("/api/documents/roles".concat(e?"?type=".concat(e):""))}async function A(e){return o("/api/documents/roles",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function w(e,t){return o("/api/documents/roles?type=".concat(e,"&id=").concat(encodeURIComponent(t)),{method:"DELETE"})}async function C(e){return o("/api/documents/roles?mode=config",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function S(e){return o("/api/documents/roles?mode=config&id=".concat(encodeURIComponent(e)),{method:"DELETE"})}async function N(){return o("/api/documents/templates")}async function E(e){return o("/api/documents/templates",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function O(e){return o("/api/documents/templates?templateId=".concat(encodeURIComponent(e)),{method:"DELETE"})}async function T(e){return o("/api/documents/templates",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({templateId:e})})}async function P(e){return o("/api/documents/generate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function I(e){return o("/api/documents/chapter/regenerate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function k(){return o("/api/documents/drafts")}async function $(e,t){return o("/api/documents/drafts",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({draft:e,id:t})})}async function R(e){let t=await fetch("/api/documents/export",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!t.ok)throw Error(await t.text());return t.blob()}async function z(){return o("/api/config/providers")}async function L(e,t){return o("/api/config/providers",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:e,...t})})}async function _(e){return o("/api/config/providers/".concat(encodeURIComponent(e)),{method:"DELETE"})}async function M(){return o("/api/config/models")}async function U(e){return o("/api/config/models",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function H(){return o("/api/config/embedding")}async function D(e){return o("/api/config/embedding",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function K(){return o("/api/config/embedding/healthCheck",{method:"POST"})}async function J(e){return o("/api/config/healthCheck",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({provider:e})})}async function B(){return o("/api/system/stats")}async function V(e,t){let n=t?"?type=".concat(e,"&search=").concat(encodeURIComponent(t)):"?type=".concat(e);return o("/api/context".concat(n))}async function F(e){return o("/api/context?type=".concat(e,"&stats=1"))}async function G(e){return o("/api/context",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"compress",type:e})})}async function W(e){return o("/api/context",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"clear",type:e})})}async function X(e){return o("/api/context?id=".concat(encodeURIComponent(e)),{method:"DELETE"})}async function Q(e,t){return o("/api/context",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:e,...t})})}async function q(e){return o("/api/config/providers/".concat(encodeURIComponent(e)))}n.d(t,{Af:()=>$,Bh:()=>q,Dl:()=>N,E:()=>W,FC:()=>B,FV:()=>w,H1:()=>g,H7:()=>u,HC:()=>i,HT:()=>r,II:()=>H,NR:()=>C,OX:()=>P,PH:()=>G,QT:()=>m,Qx:()=>p,R1:()=>I,SJ:()=>y,UE:()=>R,VW:()=>v,W2:()=>b,X8:()=>f,Z3:()=>z,_m:()=>L,aP:()=>U,bV:()=>T,bZ:()=>J,c1:()=>d,dd:()=>D,dg:()=>A,dw:()=>S,dx:()=>x,h0:()=>O,h1:()=>_,hc:()=>a,hn:()=>V,l2:()=>E,lv:()=>j,p:()=>F,q7:()=>k,tn:()=>l,u6:()=>K,xC:()=>s,xq:()=>h,xw:()=>X,zo:()=>Q,zr:()=>M})},7305:(e,t,n)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/models",function(){return n(9526)}])},8770:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});let o=n(1916).A},8847:(e,t)=>{"use strict";t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M848 359.3H627.7L825.8 109c4.1-5.3.4-13-6.3-13H436c-2.8 0-5.5 1.5-6.9 4L170 547.5c-3.1 5.3.7 12 6.9 12h174.4l-89.4 357.6c-1.9 7.8 7.5 13.3 13.3 7.7L853.5 373c5.2-4.9 1.7-13.7-5.5-13.7zM378.2 732.5l60.3-241H281.1l189.6-327.4h224.6L487 427.4h211L378.2 732.5z"}}]},name:"thunderbolt",theme:"outlined"}},9071:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var o=n(7109),a=n(8847),r=n(8483);function s(){return(s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e}).apply(this,arguments)}let i=o.forwardRef((e,t)=>o.createElement(r.A,s({},e,{ref:t,icon:a.A})))},9526:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>el});var o=n(5321),a=n(7109),r=n(3014),s=n(7807),i=n(5114),l=n(8787),c=n(2256),d=n(8770),m=n(3442),p=n(6171),u=n(9188),h=n(4216),y=n(5042),f=n(7137),g=n(2188),v=n(7189),b=n(2644),x=n(3638),j=n(2162),A=n(6047),w=n(4567),C=n(5561),S=n(7961),N=n(540);let E=(e,t,n)=>({background:e,[`${n}-icon`]:{color:t}}),O=(0,N.OF)("Alert",e=>[(e=>{let{componentCls:t,motionDurationSlow:n,marginXS:o,marginSM:a,fontSize:r,fontSizeLG:s,lineHeight:i,borderRadiusLG:l,motionEaseInOutCirc:c,withDescriptionIconSize:d,colorText:m,colorTextHeading:p,withDescriptionPadding:u,defaultPadding:h,lineWidth:y,lineType:f,colorSuccessBorder:g,colorWarningBorder:v,colorErrorBorder:b,colorInfoBorder:x}=e;return{[t]:{...(0,S.dF)(e),position:"relative",display:"flex",alignItems:"center",padding:h,wordWrap:"break-word",borderRadius:l,borderWidth:(0,C.zA)(y),borderStyle:f,[`&${t}-success`]:{borderColor:g},[`&${t}-info`]:{borderColor:x},[`&${t}-warning`]:{borderColor:v},[`&${t}-error`]:{borderColor:b},[`&${t}-filled`]:{borderColor:"transparent"},[`&${t}-rtl`]:{direction:"rtl"},[`${t}-section`]:{flex:1,minWidth:0},[`${t}-icon`]:{marginInlineEnd:o,lineHeight:0},"&-description":{display:"none",fontSize:r,lineHeight:i},"&-title":{color:p},[`&${t}-motion-leave`]:{overflow:"hidden",opacity:1,transition:["max-height","opacity","padding-top","padding-bottom","margin-bottom"].map(e=>`${e} ${n} ${c}`).join(", ")},[`&${t}-motion-leave-active`]:{maxHeight:0,marginBottom:"0 !important",paddingTop:0,paddingBottom:0,opacity:0},[`&${t}-with-description`]:{alignItems:"flex-start",padding:u,[`${t}-icon`]:{marginInlineEnd:a,fontSize:d,lineHeight:0},[`${t}-title`]:{display:"block",marginBottom:o,color:p,fontSize:s},[`${t}-description`]:{display:"block",color:m}},[`&${t}-banner`]:{marginBottom:0,border:"0 !important",borderRadius:0}}}})(e),(e=>{let{componentCls:t,colorSuccess:n,colorSuccessBg:o,colorWarning:a,colorWarningBg:r,colorError:s,colorErrorBg:i,colorInfo:l,colorInfoBg:c}=e;return{[t]:{"&-success":E(o,n,t),"&-info":E(c,l,t),"&-warning":E(r,a,t),"&-error":{...E(i,s,t),[`${t}-description > pre`]:{margin:0,padding:0}}}}})(e),(e=>{let{componentCls:t,iconCls:n,motionDurationMid:o,marginXS:a,fontSizeIcon:r,colorIcon:s,colorIconHover:i}=e;return{[t]:{[`${t}-actions`]:{marginInlineStart:a},[`${t}-close-icon`]:{marginInlineStart:a,padding:0,overflow:"hidden",fontSize:r,lineHeight:(0,C.zA)(r),backgroundColor:"transparent",border:"none",cursor:"pointer",...(0,S.K8)(e),[`${n}-close`]:{color:s,transition:`color ${o}`,"&:hover":{color:i}}},"&-close-text":{color:s,transition:`color ${o}`,"&:hover":{color:i}}}}})(e)],e=>({withDescriptionIconSize:e.fontSizeHeading3,defaultPadding:`${e.paddingContentVerticalSM}px 12px`,withDescriptionPadding:`${e.paddingMD}px ${e.paddingContentHorizontalLG}px`})),T=e=>{let{icon:t,type:n,className:o,style:r,successIcon:s,infoIcon:i,warningIcon:l,errorIcon:c}=e,d={success:s??a.createElement(u.A,null),info:i??a.createElement(g.A,null),error:c??a.createElement(h.A,null),warning:l??a.createElement(f.A,null)};return a.createElement("span",{className:o,style:r},t??d[n])},P=e=>{let{isClosable:t,prefixCls:n,closeIcon:o,handleClose:r,ariaProps:s,className:i,style:l}=e,c=!0===o||void 0===o?a.createElement(y.A,null):o;return t?a.createElement("button",{type:"button",onClick:r,className:(0,x.$)(`${n}-close-icon`,i),tabIndex:0,style:l,...s},c):null},I=a.forwardRef((e,t)=>{let{description:n,prefixCls:o,message:r,title:s,banner:i,className:l,rootClassName:c,style:d,onMouseEnter:m,onMouseLeave:p,onClick:u,afterClose:h,showIcon:y,closable:f,closeText:g,closeIcon:C,action:S,id:N,styles:E,classNames:I,...k}=e,$=s??r,[R,z]=a.useState(!1),L=a.useRef(null);a.useImperativeHandle(t,()=>({nativeElement:L.current}));let{getPrefixCls:_,direction:M,variant:U,closable:H,closeIcon:D,className:K,style:J,classNames:B,styles:V,successIcon:F,infoIcon:G,warningIcon:W,errorIcon:X}=(0,w.TP)("alert"),Q=_("alert",o),[q,Z]=O(Q),{onClose:Y,afterClose:ee}=(0,A.Qd)(f)?f:{},et=t=>{z(!0),(Y??e.onClose)?.(t)},en=a.useMemo(()=>void 0!==e.type?e.type:i?"warning":"info",[e.type,i]),eo=e.variant??U??"outlined",ea=a.useMemo(()=>!!(0,A.Qd)(f)&&!!f.closeIcon||!!g||("boolean"==typeof f?f:!!(!1!==C&&(0,A.R)(C))||!!H),[g,C,f,H]),er=!!i&&void 0===y||y,es={...e,prefixCls:Q,variant:eo,type:en,showIcon:er,closable:ea},ei=(0,j.XT)(J),el=(0,j.XT)(d),[ec,ed]=(0,j.AV)([B,I],[V,ei,E,el],{props:es}),em=(0,x.$)(Q,`${Q}-${en}`,`${Q}-${eo}`,{[`${Q}-with-description`]:!!n,[`${Q}-no-icon`]:!er,[`${Q}-banner`]:!!i,[`${Q}-rtl`]:"rtl"===M},K,l,c,ec.root,Z,q),ep=(0,b.KE)(k,{aria:!0,data:!0}),eu=a.useMemo(()=>(0,A.Qd)(f)&&f.closeIcon?f.closeIcon:g||(void 0!==C?C:(0,A.Qd)(H)&&H.closeIcon?H.closeIcon:D),[C,f,H,g,D]),eh=a.useMemo(()=>{let e=f??H;return(0,A.Qd)(e)?(0,b.KE)(e,{data:!0,aria:!0}):{}},[f,H]);return a.createElement(v.Ay,{visible:!R,motionName:`${Q}-motion`,motionAppear:!1,motionEnter:!1,onLeaveStart:e=>({maxHeight:e.offsetHeight}),onLeaveEnd:ee??h},({className:t,style:o},r)=>a.createElement("div",{id:N,ref:(0,b.K4)(L,r),"data-show":!R,className:(0,x.$)(em,t),style:{...ed.root,...o},onMouseEnter:m,onMouseLeave:p,onClick:u,role:"alert",...ep},er?a.createElement(T,{className:(0,x.$)(`${Q}-icon`,ec.icon),style:ed.icon,description:n,icon:e.icon,prefixCls:Q,type:en,successIcon:F,infoIcon:G,warningIcon:W,errorIcon:X}):null,a.createElement("div",{className:(0,x.$)(`${Q}-section`,ec.section),style:ed.section},$?a.createElement("div",{className:(0,x.$)(`${Q}-title`,ec.title),style:ed.title},$):null,n?a.createElement("div",{className:(0,x.$)(`${Q}-description`,ec.description),style:ed.description},n):null),S?a.createElement("div",{className:(0,x.$)(`${Q}-actions`,ec.actions),style:ed.actions},S):null,a.createElement(P,{className:ec.close,style:ed.close,isClosable:ea,prefixCls:Q,closeIcon:eu,handleClose:et,ariaProps:eh})))});var k=n(1113),$=n(9939),R=n(218),z=n(3076),L=n(3784),_=n(5472);let M=function(e){function t(){var e,n,o;return(0,k.A)(this,t),n=t,o=arguments,n=(0,R.A)(n),(e=(0,L.A)(this,(0,z.A)()?Reflect.construct(n,o||[],(0,R.A)(this).constructor):n.apply(this,o))).state={error:void 0,info:{}},e}return(0,_.A)(t,e),(0,$.A)(t,[{key:"componentDidCatch",value:function(e,t){this.setState({error:e,info:t})}},{key:"render",value:function(){let{message:e,title:t,description:n,id:o,children:r}=this.props,{error:s,info:i}=this.state,l=t??e,c=i?.componentStack||null,d=(0,A.R)(l)?l:s?.toString(),m=(0,A.R)(n)?n:c;return s?a.createElement(I,{id:o,type:"error",title:d,description:a.createElement("pre",{style:{fontSize:"0.9em",overflowX:"auto"}},m)}):r}}])}(a.PureComponent);I.ErrorBoundary=M;var U=n(3455),H=n(7271),D=n(4668),K=n(4992),J=n(1702),B=n(5258),V=n(4746),F=n(9071),G=n(3114),W=n(9650),X=n(8209),Q=n(69),q=n(8483);function Z(){return(Z=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e}).apply(this,arguments)}let Y=a.forwardRef((e,t)=>a.createElement(q.A,Z({},e,{ref:t,icon:Q.A})));var ee=n(289);function et(){return(et=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e}).apply(this,arguments)}let en=a.forwardRef((e,t)=>a.createElement(q.A,et({},e,{ref:t,icon:ee.A})));var eo=n(6578),ea=n(2323),er=n.n(ea);let es=[{label:"OpenAI 兼容",value:"openai"},{label:"Anthropic",value:"anthropic"},{label:"Google",value:"google"},{label:"Ollama",value:"ollama"},{label:"OpenRouter",value:"openrouter"}],ei=[{key:"reader",labelKey:"models.tierReader",descKey:"models.tierReaderDesc"},{key:"reasoning",labelKey:"models.tierReasoning",descKey:"models.tierReasoningDesc"},{key:"action",labelKey:"models.tierAction",descKey:"models.tierActionDesc"}];function el(){let e=(0,r.Vr)(),{message:t}=s.A.useApp(),n=[{label:e("models.embeddingProviderHash"),value:"hash"},{label:e("models.embeddingProviderOpenAI"),value:"openai-compatible"}],[y,f]=(0,a.useState)(!0),[g,v]=(0,a.useState)([]),[b,x]=(0,a.useState)(null),[j,A]=(0,a.useState)({provider:"hash",dimensions:384}),[w,C]=(0,a.useState)(!1),[S,N]=(0,a.useState)(!1),[E,O]=(0,a.useState)(null),[T,P]=(0,a.useState)(!1),[k,$]=(0,a.useState)(""),[R,z]=(0,a.useState)(""),[L,_]=(0,a.useState)(""),[M,Q]=(0,a.useState)("openai"),[q,Z]=(0,a.useState)(!1),[ee,et]=(0,a.useState)(!1),[ea,el]=(0,a.useState)(""),[ec,ed]=(0,a.useState)(""),[em,ep]=(0,a.useState)(""),[eu,eh]=(0,a.useState)(""),[ey,ef]=(0,a.useState)("openai"),[eg,ev]=(0,a.useState)(!1),[eb,ex]=(0,a.useState)(null),[ej,eA]=(0,a.useState)({}),ew=async()=>{f(!0);try{let[e,t,n]=await Promise.all([(0,eo.Z3)().catch(()=>[]),(0,eo.zr)().catch(()=>null),(0,eo.II)().catch(()=>({provider:"hash",dimensions:384}))]);v(e),x(t),A(n)}catch(n){t.error(e("common.error"))}finally{f(!1)}};(0,a.useEffect)(()=>{ew()},[]);let eC=async()=>{if(k.trim()){Z(!0);try{await (0,eo._m)(k.trim(),{apiKey:R||void 0,baseUrl:L||void 0,protocol:M}),P(!1),$(""),z(""),_(""),Q("openai"),await ew(),t.success(e("common.success"))}catch(n){t.error(e("common.error"))}finally{Z(!1)}}},eS=async n=>{try{await (0,eo.h1)(n),await ew(),t.success(e("common.success"))}catch(n){t.error(e("common.error"))}},eN=async e=>{el(e.name),ed(e.name),ep("");try{let t=await (0,eo.Bh)(e.name);ep(t.apiKey?"••••••••":""),eh(t.baseUrl||""),ef(t.protocol||t.detectedProtocol||"openai")}catch(t){eh(e.baseUrl||""),ef(e.protocol||e.detectedProtocol||"openai")}et(!0)},eE=async()=>{if(ec.trim()){ev(!0);try{let n=em.includes("•")?void 0:em||void 0;await (0,eo._m)(ec.trim(),{oldName:ea,apiKey:n,baseUrl:eu||void 0,protocol:ey}),et(!1),el(""),ed(""),ep(""),eh(""),ef("openai"),await ew(),t.success(e("common.success"))}catch(n){t.error(e("common.error"))}finally{ev(!1)}}},eO=async n=>{ex(n);try{let o=await (0,eo.bZ)(n);eA(e=>({...e,[n]:o.success})),t[o.success?"success":"error"](o.success?e("models.connected"):e("models.connectionFailed"))}catch(e){eA(e=>({...e,[n]:!1}))}finally{ex(null)}},eT=async()=>{C(!0);try{let n=await (0,eo.dd)(j);A(n),O(null),t.success(e("common.success"))}catch(n){t.error(e("common.error"))}finally{C(!1)}},eP=async()=>{N(!0);try{let n=await (0,eo.u6)();O(n.success),t[n.success?"success":"error"](n.message||(n.success?e("models.connected"):e("models.connectionFailed")))}catch(n){O(!1),t.error(e("common.error"))}finally{N(!1)}},eI=async(n,o)=>{if(!b)return;let a={...b},r=a[n];if(!o){r.active="",x(a);try{await (0,eo.aP)(a)}catch(n){t.error(e("common.error"))}return}let s=o.indexOf(":"),i=s>=0?o.slice(0,s):o,l=s>=0?o.slice(s+1):o;r.active=l,r.list.some(e=>e.name===l&&e.provider===i)||r.list.push({name:l,provider:i}),x(a);try{await (0,eo.aP)(a)}catch(n){t.error(e("common.error"))}};return(0,o.jsxs)("div",{className:"space-y-6 animateFadeIn",children:[(0,o.jsxs)("div",{className:"flex items-center justify-between",children:[(0,o.jsxs)("div",{children:[(0,o.jsx)("h1",{className:"pageTitle",children:e("models.title")}),(0,o.jsx)("p",{className:"pageDesc",children:e("models.description")})]}),(0,o.jsx)(i.Ay,{type:"primary",icon:(0,o.jsx)(V.A,{}),onClick:()=>P(!0),children:e("models.addModel")})]}),(0,o.jsx)(l.A,{title:e("models.modelList"),size:"small",loading:y,children:0===g.length?(0,o.jsx)("span",{className:er().cardMeta,children:e("models.noProviders")}):(0,o.jsx)(c.A,{gutter:[12,12],align:"stretch",children:g.map(t=>(0,o.jsx)(d.A,{xs:24,sm:12,lg:8,xl:6,className:er().providerGrid,children:(0,o.jsxs)(l.A,{size:"small",className:er().providerCard,children:[(0,o.jsxs)("div",{className:er().cardAction,children:[(0,o.jsxs)("div",{className:er().cardMain,children:[(0,o.jsx)("div",{className:er().cardName,title:t.name,children:t.name}),(0,o.jsxs)("div",{className:er().cardMeta,children:[(0,o.jsx)(F.A,{})," ",t.protocol||t.detectedProtocol||"openai"]})]}),(0,o.jsxs)(m.A,{size:2,wrap:!1,children:[(0,o.jsx)(i.Ay,{size:"small",type:"text",loading:eb===t.name,onClick:()=>{eO(t.name)},icon:!0===ej[t.name]?(0,o.jsx)(u.A,{className:"text-[var(--colorOk)]"}):!1===ej[t.name]?(0,o.jsx)(h.A,{className:"text-[var(--colorDanger)]"}):(0,o.jsx)(G.A,{})}),(0,o.jsx)(i.Ay,{size:"small",type:"text",icon:(0,o.jsx)(W.A,{}),onClick:()=>{eN(t)}}),(0,o.jsx)(p.A,{title:e("models.deleteProviderConfirm"),onConfirm:()=>{eS(t.name)},children:(0,o.jsx)(i.Ay,{size:"small",type:"text",danger:!0,icon:(0,o.jsx)(X.A,{})})})]})]}),(0,o.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,o.jsxs)("span",{className:"".concat(er().cardMeta," text-xs"),children:[(0,o.jsx)(Y,{})," ",t.hasApiKey?"••••••••":"—"]}),t.baseUrl&&(0,o.jsxs)("span",{className:"".concat(er().cardMeta," ").concat(er().urlLine," text-xs"),title:t.baseUrl,children:[(0,o.jsx)(en,{})," ",t.baseUrl]})]})]})},t.name))})}),(0,o.jsxs)(l.A,{title:e("models.embeddingConfig"),size:"small",loading:y,children:[(0,o.jsx)(I,{className:"mb-4",type:"info",showIcon:!0,message:e("models.embeddingHint")}),(0,o.jsxs)(U.A,{layout:"vertical",size:"middle",children:[(0,o.jsxs)(c.A,{gutter:[12,12],children:[(0,o.jsx)(d.A,{xs:24,lg:8,children:(0,o.jsx)(U.A.Item,{label:e("models.embeddingProvider"),children:(0,o.jsx)(H.A,{value:j.provider,options:n,onChange:e=>A(t=>({...t,provider:e,dimensions:"hash"===e?384:t.dimensions||1024}))})})}),"openai-compatible"===j.provider&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(d.A,{xs:24,lg:8,children:(0,o.jsx)(U.A.Item,{label:"Base URL",children:(0,o.jsx)(D.A,{value:j.baseUrl,onChange:e=>A(t=>({...t,baseUrl:e.target.value})),placeholder:"http://localhost:11434/v1"})})}),(0,o.jsx)(d.A,{xs:24,lg:8,children:(0,o.jsx)(U.A.Item,{label:e("models.model"),children:(0,o.jsx)(D.A,{value:j.model,onChange:e=>A(t=>({...t,model:e.target.value})),placeholder:"bge-m3"})})}),(0,o.jsx)(d.A,{xs:24,lg:8,children:(0,o.jsx)(U.A.Item,{label:e("models.apiKey"),help:j.hasApiKey?e("models.embeddingApiKeyHint"):void 0,children:(0,o.jsx)(D.A.Password,{value:j.apiKey,onFocus:()=>{var e;(null==(e=j.apiKey)?void 0:e.includes("•"))&&A(e=>({...e,apiKey:""}))},onChange:e=>A(t=>({...t,apiKey:e.target.value})),placeholder:e("models.optional")})})})]}),(0,o.jsx)(d.A,{xs:24,lg:8,children:(0,o.jsx)(U.A.Item,{label:e("models.dimensions"),children:(0,o.jsx)(K.A,{className:"w-full",min:1,value:j.dimensions,onChange:e=>A(t=>({...t,dimensions:Number(e||("hash"===t.provider?384:1024))}))})})}),(0,o.jsx)(d.A,{xs:24,lg:8,children:(0,o.jsx)(U.A.Item,{label:e("models.status"),children:(0,o.jsxs)(m.A,{children:[(0,o.jsx)(J.A,{color:"hash"===j.provider?"default":"blue",children:"hash"===j.provider?e("models.localHash"):e("models.openAICompatible")}),!0===E&&(0,o.jsx)(J.A,{color:"success",children:e("models.connected")}),!1===E&&(0,o.jsx)(J.A,{color:"error",children:e("models.connectionFailed")})]})})})]}),(0,o.jsxs)(m.A,{children:[(0,o.jsx)(i.Ay,{type:"primary",loading:w,onClick:()=>{eT()},children:e("models.saveEmbedding")}),(0,o.jsx)(i.Ay,{icon:(0,o.jsx)(G.A,{}),loading:S,onClick:()=>{eP()},children:e("models.testEmbedding")})]})]})]}),b&&(0,o.jsx)(l.A,{title:e("models.modelTiers"),size:"small",children:(0,o.jsx)(c.A,{gutter:[12,12],children:ei.map(n=>{var a;let{key:r,labelKey:s,descKey:i}=n,c=b[r],m=c.list.map(e=>({label:"".concat(e.provider," / ").concat(e.name),value:"".concat(e.provider,":").concat(e.name)})),p=g.filter(e=>!c.list.some(t=>t.provider===e.name)).map(e=>({label:"".concat(e.name," / ").concat(e.name),value:"".concat(e.name,":").concat(e.name)}));return(0,o.jsx)(d.A,{xs:24,lg:8,children:(0,o.jsxs)(l.A,{size:"small",title:e(s),children:[(0,o.jsx)("span",{className:er().tierDesc,children:e(i)}),(0,o.jsx)(H.A,{value:c.active?"".concat((null==(a=c.list.find(e=>e.name===c.active))?void 0:a.provider)||"",":").concat(c.active):void 0,onChange:e=>{eI(r,e)},allowClear:!0,placeholder:e("models.selectModelPlaceholder"),className:"w-full",options:[...m,...p]}),c.list.length>0&&(0,o.jsx)("div",{className:er().modelTags,children:c.list.map(n=>(0,o.jsxs)(J.A,{color:n.name===c.active?"blue":void 0,closable:!0,onClose:()=>{var o,a;let s={...b},i=s[r];i.list=i.list.filter(e=>e.name!==n.name||e.provider!==n.provider),i.active===n.name&&(i.active=null!=(a=null==(o=i.list[0])?void 0:o.name)?a:""),x(s),(0,eo.aP)(s).catch(()=>t.error(e("common.error")))},children:[n.provider,"/",n.name]},"".concat(n.provider,":").concat(n.name)))})]})},r)})})}),(0,o.jsx)(B.A,{title:e("models.addModel"),open:T,onCancel:()=>{P(!1),$(""),z(""),_(""),Q("openai")},onOk:()=>{eC()},confirmLoading:q,children:(0,o.jsxs)(U.A,{layout:"vertical",size:"middle",children:[(0,o.jsx)(U.A.Item,{label:e("models.modelName"),children:(0,o.jsx)(D.A,{value:k,onChange:e=>$(e.target.value),placeholder:e("models.modelNamePlaceholder")})}),(0,o.jsx)(U.A.Item,{label:e("models.apiKey"),children:(0,o.jsx)(D.A.Password,{value:R,onChange:e=>z(e.target.value),placeholder:"sk-..."})}),(0,o.jsx)(U.A.Item,{label:e("models.baseUrl"),children:(0,o.jsx)(D.A,{value:L,onChange:e=>_(e.target.value),placeholder:"https://api.openai.com/v1"})}),(0,o.jsx)(U.A.Item,{label:e("models.protocol"),children:(0,o.jsx)(H.A,{value:M,onChange:Q,options:es})})]})}),(0,o.jsx)(B.A,{title:e("models.editModel"),open:ee,onCancel:()=>{et(!1),el(""),ed(""),ep(""),eh(""),ef("openai")},onOk:()=>{eE()},confirmLoading:eg,children:(0,o.jsxs)(U.A,{layout:"vertical",size:"middle",children:[(0,o.jsx)(U.A.Item,{label:e("models.modelName"),children:(0,o.jsx)(D.A,{value:ec,onChange:e=>ed(e.target.value),placeholder:e("models.modelNamePlaceholder")})}),(0,o.jsx)(U.A.Item,{label:e("models.apiKey"),help:e("models.apiKeyEditHint"),children:(0,o.jsx)(D.A.Password,{value:em,onFocus:()=>{em.includes("•")&&ep("")},onCopy:e=>e.preventDefault(),onChange:e=>ep(e.target.value),placeholder:e("models.apiKeyEditPlaceholder")})}),(0,o.jsx)(U.A.Item,{label:e("models.baseUrl"),children:(0,o.jsx)(D.A,{value:eu,onChange:e=>eh(e.target.value),placeholder:"https://api.openai.com/v1"})}),(0,o.jsx)(U.A.Item,{label:e("models.protocol"),children:(0,o.jsx)(H.A,{value:ey,onChange:ef,options:es})})]})})]})}}},e=>{e.O(0,[260,167,382,201,668,740,492,455,992,636,593,792],()=>e(e.s=7305)),_N_E=e.O()}]);
@@ -1 +0,0 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[449],{3139:(e,n,t)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/overview",function(){return t(7795)}])},6578:(e,n,t)=>{"use strict";async function o(e,n){let t=await fetch(e,n);if(!t.ok){let e=await t.text(),n=e||"HTTP ".concat(t.status);try{let t=JSON.parse(e);n=t.error||t.message||n}catch(e){}throw Error(n)}return t.json()}async function i(e){let n=e?"?projectRoot=".concat(encodeURIComponent(e)):"";return o("/api/kb/stats".concat(n))}async function s(e){var n,t;let i=new URLSearchParams;return(null==e?void 0:e.projectRoot)&&i.set("projectRoot",e.projectRoot),(null==e?void 0:e.category)&&i.set("category",e.category),(null==e?void 0:e.page)&&i.set("page",String(null!=(n=e.page)?n:1)),(null==e?void 0:e.limit)&&i.set("limit",String(null!=(t=e.limit)?t:50)),o("/api/kb/files?".concat(i))}async function r(e,n){let t=new URLSearchParams({relativePath:e});return n&&t.set("projectRoot",n),o("/api/kb/files/detail?".concat(t))}async function c(e,n){return o("/api/kb/files/reindex",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({relativePath:e,projectRoot:n})})}async function a(e,n,t){return o("/api/kb/files/open",{method:"POST",body:JSON.stringify({relativePath:e,target:n,projectRoot:t})})}async function l(e){return new Promise((n,t)=>{let o=new FileReader;o.onload=()=>{let e=o.result,t=e.indexOf(",");n(t>=0?e.slice(t+1):e)},o.onerror=t,o.readAsDataURL(e)})}async function d(e,n,t){return o("/api/kb/upload",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({files:await Promise.all(e.map(async e=>({fileName:e.name,fileData:await l(e),relativePath:e.webkitRelativePath||void 0}))),projectRoot:n,uploadId:t})})}async function u(e){return o("/api/kb/upload/progress?id=".concat(encodeURIComponent(e)))}async function p(e){let n=new URLSearchParams({limit:"50"});return e&&n.set("projectRoot",e),o("/api/kb/operations?".concat(n))}async function y(e){let n=new URLSearchParams;return e&&n.set("projectRoot",e),o("/api/kb/operations?".concat(n),{method:"DELETE"})}async function h(e,n){return o("/api/kb/files",{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({relativePath:e,projectRoot:n})})}async function m(e,n){return o("/api/kb/files",{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({relativePaths:e,projectRoot:n})})}async function f(e){return o("/api/kb/files",{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({all:!0,projectRoot:e})})}async function v(e){return o("/api/kb/reindex",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectRoot:e})})}async function x(){return o("/api/kb/features")}async function g(e,n){var t,i,s,r,c;let a=new URLSearchParams({q:e});return(null==n?void 0:n.projectRoot)&&a.set("projectRoot",n.projectRoot),(null==n?void 0:n.category)&&a.set("category",n.category),(null==n?void 0:n.limit)&&a.set("limit",String(null!=(c=n.limit)?c:20)),(null==n||null==(t=n.weights)?void 0:t.keyword)!=null&&a.set("keywordWeight",String(n.weights.keyword)),(null==n||null==(i=n.weights)?void 0:i.vector)!=null&&a.set("vectorWeight",String(n.weights.vector)),(null==n||null==(s=n.weights)?void 0:s.rewrite)!=null&&a.set("rewriteWeight",String(n.weights.rewrite)),(null==n||null==(r=n.weights)?void 0:r.hybridBonus)!=null&&a.set("hybridBonus",String(n.weights.hybridBonus)),o("/api/kb/search?".concat(a))}async function j(){return o("/api/prompt")}async function T(e){return o("/api/documents/roles".concat(e?"?type=".concat(e):""))}async function w(e){return o("/api/documents/roles",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function S(e,n){return o("/api/documents/roles?type=".concat(e,"&id=").concat(encodeURIComponent(n)),{method:"DELETE"})}async function b(e){return o("/api/documents/roles?mode=config",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function A(e){return o("/api/documents/roles?mode=config&id=".concat(encodeURIComponent(e)),{method:"DELETE"})}async function k(){return o("/api/documents/templates")}async function C(e){return o("/api/documents/templates",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function O(e){return o("/api/documents/templates?templateId=".concat(encodeURIComponent(e)),{method:"DELETE"})}async function P(e){return o("/api/documents/templates",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({templateId:e})})}async function N(e){return o("/api/documents/generate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function E(e){return o("/api/documents/chapter/regenerate",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function R(){return o("/api/documents/drafts")}async function J(e,n){return o("/api/documents/drafts",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({draft:e,id:n})})}async function U(e){let n=await fetch("/api/documents/export",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!n.ok)throw Error(await n.text());return n.blob()}async function D(){return o("/api/config/providers")}async function z(e,n){return o("/api/config/providers",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:e,...n})})}async function I(e){return o("/api/config/providers/".concat(encodeURIComponent(e)),{method:"DELETE"})}async function L(){return o("/api/config/models")}async function _(e){return o("/api/config/models",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function B(){return o("/api/config/embedding")}async function F(e){return o("/api/config/embedding",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)})}async function M(){return o("/api/config/embedding/healthCheck",{method:"POST"})}async function H(e){return o("/api/config/healthCheck",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({provider:e})})}async function W(){return o("/api/system/stats")}async function q(e,n){let t=n?"?type=".concat(e,"&search=").concat(encodeURIComponent(n)):"?type=".concat(e);return o("/api/context".concat(t))}async function V(e){return o("/api/context?type=".concat(e,"&stats=1"))}async function X(e){return o("/api/context",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"compress",type:e})})}async function Z(e){return o("/api/context",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"clear",type:e})})}async function Q(e){return o("/api/context?id=".concat(encodeURIComponent(e)),{method:"DELETE"})}async function K(e,n){return o("/api/context",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:e,...n})})}async function G(e){return o("/api/config/providers/".concat(encodeURIComponent(e)))}t.d(n,{Af:()=>J,Bh:()=>G,Dl:()=>k,E:()=>Z,FC:()=>W,FV:()=>S,H1:()=>v,H7:()=>y,HC:()=>c,HT:()=>s,II:()=>B,NR:()=>b,OX:()=>N,PH:()=>X,QT:()=>u,Qx:()=>p,R1:()=>E,SJ:()=>m,UE:()=>U,VW:()=>x,W2:()=>g,X8:()=>f,Z3:()=>D,_m:()=>z,aP:()=>_,bV:()=>P,bZ:()=>H,c1:()=>d,dd:()=>F,dg:()=>w,dw:()=>A,dx:()=>j,h0:()=>O,h1:()=>I,hc:()=>i,hn:()=>q,l2:()=>C,lv:()=>T,p:()=>V,q7:()=>R,tn:()=>a,u6:()=>M,xC:()=>r,xq:()=>h,xw:()=>Q,zo:()=>K,zr:()=>L})},7795:(e,n,t)=>{"use strict";t.r(n),t.d(n,{default:()=>A});var o=t(5321),i=t(7109),s=t(3014),r=t(2700),c=t(5114),a=t(2256),l=t(8770),d=t(8787),u=t(9605),p=t(4849),y=t(3442),h=t(1702),m=t(6109),f=t(2192),v=t(520),x=t(933),g=t(3114),j=t(9071),T=t(6631),w=t(4742),S=t(6381),b=t(6578);function A(){var e,n,t,A,k,C,O,P,N,E,R,J;let U=(0,s.Vr)(),D=(0,m.useRouter)(),[z,I]=(0,i.useState)(null),[L,_]=(0,i.useState)(!0),[B,F]=(0,i.useState)(0),M=(0,i.useCallback)(async()=>{_(!0);try{let[e,n]=await Promise.all([(0,b.FC)(),(0,b.Z3)().catch(()=>[])]);I(e),F(Array.isArray(n)?n.length:0)}catch(e){}finally{_(!1)}},[]);if((0,i.useEffect)(()=>{M();let e=setInterval(()=>{M()},1e4);return()=>clearInterval(e)},[M]),L&&!z)return(0,o.jsx)("div",{className:"flex justify-center py-16",children:(0,o.jsx)(r.A,{size:"large"})});let H=(null!=(n=null==z?void 0:z.cpu.usagePercent)?n:0)>80?"var(--colorDanger)":(null!=(t=null==z?void 0:z.cpu.usagePercent)?t:0)>50?"var(--colorWarning)":"var(--colorOk)",W=(null!=(A=null==z?void 0:z.memory.usagePercent)?A:0)>80?"var(--colorDanger)":(null!=(k=null==z?void 0:z.memory.usagePercent)?k:0)>50?"var(--colorWarning)":"var(--colorOk)",q=(null==z?void 0:z.tasks.total)?Math.round(z.tasks.success/z.tasks.total*100):0,V=null==z||null==(e=z.models)?void 0:e[0];return(0,o.jsxs)("div",{className:"space-y-6 animateFadeIn",children:[(0,o.jsxs)("div",{className:"flex items-center justify-between",children:[(0,o.jsxs)("div",{children:[(0,o.jsx)("h1",{className:"pageTitle",children:U("overview.title")}),(0,o.jsx)("p",{className:"pageDesc",children:U("overview.description")})]}),(0,o.jsx)(c.Ay,{icon:(0,o.jsx)(f.A,{spin:L}),loading:L,onClick:()=>{M()},children:U("common.retry")})]}),(0,o.jsxs)(a.A,{gutter:[16,16],children:[(0,o.jsx)(l.A,{xs:24,sm:12,children:(0,o.jsx)(d.A,{size:"small",title:(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(v.A,{})," CPU"]}),children:(0,o.jsxs)("div",{style:{textAlign:"center"},children:[(0,o.jsx)(u.A,{type:"circle",percent:null!=(C=null==z?void 0:z.cpu.usagePercent)?C:0,size:120,strokeColor:H,format:e=>"".concat(null==e?void 0:e.toFixed(1),"%")}),(0,o.jsxs)("div",{className:"text-xs mt-2",style:{color:"var(--colorTextSecondary)"},children:[null!=(O=null==z?void 0:z.cpu.cores)?O:0," ",U("overview.cores")]})]})})}),(0,o.jsx)(l.A,{xs:24,sm:12,children:(0,o.jsx)(d.A,{size:"small",title:(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(x.A,{})," ",U("overview.memory")]}),children:(0,o.jsxs)("div",{style:{textAlign:"center"},children:[(0,o.jsx)(u.A,{type:"circle",percent:null!=(P=null==z?void 0:z.memory.usagePercent)?P:0,size:120,strokeColor:W,format:e=>"".concat(e,"%")}),(0,o.jsxs)("div",{className:"text-xs mt-2",style:{color:"var(--colorTextSecondary)"},children:[null!=(N=null==z?void 0:z.memory.processMB)?N:0," MB / ",null!=(E=null==z?void 0:z.memory.totalMB)?E:0," MB"]})]})})})]}),(0,o.jsxs)(a.A,{gutter:[16,16],children:[(0,o.jsx)(l.A,{xs:12,sm:6,children:(0,o.jsx)(d.A,{size:"small",children:(0,o.jsx)(p.A,{title:U("overview.providersCount"),value:B,prefix:(0,o.jsx)(g.A,{})})})}),(0,o.jsx)(l.A,{xs:12,sm:6,children:(0,o.jsx)(d.A,{size:"small",children:(0,o.jsx)(p.A,{title:U("overview.tokensUsed"),value:null!=(R=null==z?void 0:z.tokens.total)?R:0,prefix:(0,o.jsx)(j.A,{})})})}),(0,o.jsx)(l.A,{xs:12,sm:6,children:(0,o.jsx)(d.A,{size:"small",children:(0,o.jsx)(p.A,{title:U("overview.tasksTotal"),value:null!=(J=null==z?void 0:z.tasks.total)?J:0,prefix:(0,o.jsx)(T.A,{})})})}),(0,o.jsx)(l.A,{xs:12,sm:6,children:(0,o.jsx)(d.A,{size:"small",children:(0,o.jsx)(p.A,{title:U("overview.successRate"),value:q,suffix:"%",prefix:q>80?(0,o.jsx)(w.A,{style:{color:"var(--colorOk)"}}):(0,o.jsx)(S.A,{style:{color:"var(--colorDanger)"}})})})})]}),(0,o.jsxs)(a.A,{gutter:[16,16],children:[(0,o.jsx)(l.A,{xs:24,sm:12,children:(0,o.jsx)(d.A,{size:"small",title:U("overview.topModel"),children:V?(0,o.jsxs)("div",{className:"flex items-center gap-4",children:[(0,o.jsx)(g.A,{style:{fontSize:24,color:"var(--colorAccent)"}}),(0,o.jsxs)("div",{children:[(0,o.jsx)("div",{className:"font-semibold",children:V.model}),(0,o.jsxs)("div",{style:{color:"var(--colorTextSecondary)",fontSize:12},children:["@",V.provider," — ",V.count," ",U("overview.calls")]})]})]}):(0,o.jsx)("span",{style:{color:"var(--colorTextSecondary)"},children:U("common.noData")})})}),(0,o.jsx)(l.A,{xs:24,sm:12,children:(0,o.jsx)(d.A,{size:"small",title:U("overview.taskTypes"),children:(null==z?void 0:z.tasks.types)&&Object.keys(z.tasks.types).length>0?(0,o.jsx)(y.A,{wrap:!0,children:Object.entries(z.tasks.types).map(e=>{let[n,t]=e;return(0,o.jsxs)(h.A,{children:[n.slice(0,30),": ",t]},n)})}):(0,o.jsx)("span",{style:{color:"var(--colorTextSecondary)"},children:U("common.noData")})})})]}),(0,o.jsx)(d.A,{title:U("overview.quickActions"),size:"small",children:(0,o.jsxs)(y.A,{wrap:!0,children:[(0,o.jsx)(c.Ay,{onClick:()=>{D.push("/knowledge/manage")},children:U("overview.goToKnowledge")}),(0,o.jsx)(c.Ay,{onClick:()=>{D.push("/models")},children:U("overview.goToModels")}),(0,o.jsx)(c.Ay,{onClick:()=>{D.push("/settings")},children:U("overview.goToSettings")}),(0,o.jsx)(c.Ay,{onClick:()=>{D.push("/prompt")},children:U("nav.promptManagement")}),(0,o.jsx)(c.Ay,{onClick:()=>{D.push("/context/long-term")},children:U("nav.contextEngineering")})]})})]})}}},e=>{e.O(0,[260,167,227,15,958,851,636,593,792],()=>e(e.s=3139)),_N_E=e.O()}]);