@customize-agent/server 4.57.0 → 4.59.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +132 -143
- package/.next/prerender-manifest.json +3 -3
- package/.next/routes-manifest.json +117 -9
- package/.next/server/chunks/1001.js +56 -0
- package/.next/server/chunks/1928.js +1 -1
- package/.next/server/chunks/1936.js +2 -2
- package/.next/server/chunks/2434.js +4 -0
- package/.next/server/chunks/299.js +50 -0
- package/.next/server/chunks/5547.js +350 -0
- package/.next/server/chunks/6087.js +3 -0
- package/.next/server/chunks/6321.js +3 -0
- package/.next/server/chunks/8204.js +1 -1
- package/.next/server/middleware-build-manifest.js +1 -1
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/pages/api/assets/generated/preview.js +1 -1
- package/.next/server/pages/api/assets/generated/preview.js.nft.json +1 -1
- package/.next/server/pages/api/assets/generated.js +1 -1
- package/.next/server/pages/api/assets/generated.js.nft.json +1 -1
- package/.next/server/pages/api/config/embedding/healthCheck.js.nft.json +1 -1
- package/.next/server/pages/api/config/healthCheck.js +2 -2
- package/.next/server/pages/api/config/providers.js +2 -2
- package/.next/server/pages/api/documents/canvas/[id].js +2 -0
- package/.next/server/pages/api/documents/canvas/[id].js.nft.json +1 -0
- package/.next/server/pages/api/documents/export.js +3 -3
- package/.next/server/pages/api/documents/export.js.nft.json +1 -1
- package/.next/server/pages/api/documents/generate/preview.js +2 -0
- package/.next/server/pages/api/documents/generate/preview.js.nft.json +1 -0
- package/.next/server/pages/api/documents/generate.js +2 -2
- package/.next/server/pages/api/documents/generate.js.nft.json +1 -1
- package/.next/server/pages/api/documents/generated/[id]/events.js +10 -0
- package/.next/server/pages/api/documents/generated/[id]/events.js.nft.json +1 -0
- package/.next/server/pages/api/documents/generated/[id]/figure/[name].js +1 -0
- package/.next/server/pages/api/documents/generated/[id]/figure/[name].js.nft.json +1 -0
- package/.next/server/pages/api/documents/generated/[id]/nodes/[nodeId].js +2 -0
- package/.next/server/pages/api/documents/generated/[id]/nodes/[nodeId].js.nft.json +1 -0
- package/.next/server/pages/api/documents/generated/[id]/nodes.js +2 -0
- package/.next/server/pages/api/documents/generated/[id]/nodes.js.nft.json +1 -0
- package/.next/server/pages/api/documents/generated/[id]/pause.js +2 -0
- package/.next/server/pages/api/documents/generated/[id]/pause.js.nft.json +1 -0
- package/.next/server/pages/api/documents/generated/[id]/preview.js +2 -0
- package/.next/server/pages/api/documents/generated/[id]/preview.js.nft.json +1 -0
- package/.next/server/pages/api/documents/generated/[id]/repair/[rid]/confirm.js +1 -0
- package/.next/server/pages/api/documents/generated/[id]/repair/[rid]/confirm.js.nft.json +1 -0
- package/.next/server/pages/api/documents/generated/[id]/repair/[rid]/rollback.js +1 -0
- package/.next/server/pages/api/documents/generated/[id]/repair/[rid]/rollback.js.nft.json +1 -0
- package/.next/server/pages/api/documents/generated/[id]/repair.js +1 -0
- package/.next/server/pages/api/documents/generated/[id]/repair.js.nft.json +1 -0
- package/.next/server/pages/api/documents/generated/[id]/resume-generate.js +2 -0
- package/.next/server/pages/api/documents/generated/[id]/resume-generate.js.nft.json +1 -0
- package/.next/server/pages/api/documents/generated/[id].js +2 -2
- package/.next/server/pages/api/documents/generated/[id].js.nft.json +1 -1
- package/.next/server/pages/api/documents/generated.js +1 -1
- package/.next/server/pages/api/documents/generated.js.nft.json +1 -1
- package/.next/server/pages/api/jobs/[id].js +1 -1
- package/.next/server/pages/api/jobs/[id].js.nft.json +1 -1
- package/.next/server/pages/api/jobs.js +1 -1
- package/.next/server/pages/api/jobs.js.nft.json +1 -1
- package/.next/server/pages/api/kb/categories.js +2 -2
- package/.next/server/pages/api/kb/categories.js.nft.json +1 -1
- package/.next/server/pages/api/kb/duplicates.js +2 -2
- package/.next/server/pages/api/kb/duplicates.js.nft.json +1 -1
- package/.next/server/pages/api/kb/evaluate.js +3 -3
- package/.next/server/pages/api/kb/evaluate.js.nft.json +1 -1
- package/.next/server/pages/api/kb/files/detail.js +4 -4
- package/.next/server/pages/api/kb/files/detail.js.nft.json +1 -1
- package/.next/server/pages/api/kb/files/export.js +3 -3
- package/.next/server/pages/api/kb/files/export.js.nft.json +1 -1
- package/.next/server/pages/api/kb/files/open.js +2 -2
- package/.next/server/pages/api/kb/files/open.js.nft.json +1 -1
- package/.next/server/pages/api/kb/files/preview-pdf-page.js +1 -1
- package/.next/server/pages/api/kb/files/preview-pdf-page.js.nft.json +1 -1
- package/.next/server/pages/api/kb/files/reindex.js +1 -1
- package/.next/server/pages/api/kb/files/reindex.js.nft.json +1 -1
- package/.next/server/pages/api/kb/files/search.js +3 -3
- package/.next/server/pages/api/kb/files/search.js.nft.json +1 -1
- package/.next/server/pages/api/kb/files/tree.js +3 -3
- package/.next/server/pages/api/kb/files/tree.js.nft.json +1 -1
- package/.next/server/pages/api/kb/files.js +4 -4
- package/.next/server/pages/api/kb/files.js.nft.json +1 -1
- package/.next/server/pages/api/kb/ignore.js +2 -2
- package/.next/server/pages/api/kb/ignore.js.nft.json +1 -1
- package/.next/server/pages/api/kb/intelligence.js +1 -1
- package/.next/server/pages/api/kb/intelligence.js.nft.json +1 -1
- package/.next/server/pages/api/kb/material-groups.js +2 -0
- package/.next/server/pages/api/kb/material-groups.js.nft.json +1 -0
- package/.next/server/pages/api/kb/operations.js +1 -1
- package/.next/server/pages/api/kb/operations.js.nft.json +1 -1
- package/.next/server/pages/api/kb/reindex.js +1 -1
- package/.next/server/pages/api/kb/reindex.js.nft.json +1 -1
- package/.next/server/pages/api/kb/search.js +2 -2
- package/.next/server/pages/api/kb/search.js.nft.json +1 -1
- package/.next/server/pages/api/kb/stats.js +2 -2
- package/.next/server/pages/api/kb/stats.js.nft.json +1 -1
- package/.next/server/pages/api/kb/tags.js +1 -1
- package/.next/server/pages/api/kb/tags.js.nft.json +1 -1
- package/.next/server/pages/api/kb/upload/complete.js +1 -1
- package/.next/server/pages/api/kb/upload/complete.js.nft.json +1 -1
- package/.next/server/pages/api/kb/upload/progress.js +2 -2
- package/.next/server/pages/api/kb/upload/progress.js.nft.json +1 -1
- package/.next/server/pages/api/kb/upload.js +1 -1
- package/.next/server/pages/api/kb/upload.js.nft.json +1 -1
- package/.next/server/pages/api/prompt.js +1 -1
- package/.next/server/pages/api/prompt.js.nft.json +1 -1
- package/.next/server/pages/api/skills/[id].js +1 -0
- package/.next/server/pages/api/skills/[id].js.nft.json +1 -0
- package/.next/server/pages/api/skills/validate.js +1 -0
- package/.next/server/pages/api/skills/validate.js.nft.json +1 -0
- package/.next/server/pages/api/skills.js +1 -0
- package/.next/server/pages/api/skills.js.nft.json +1 -0
- package/.next/server/pages/api/system/logs.js +2 -2
- package/.next/server/pages/api/system/stats.js +1 -1
- package/.next/server/pages/canvas/[id].html +1 -0
- package/.next/server/pages/canvas/[id].js.nft.json +1 -0
- package/.next/server/pages/canvas.html +1 -0
- package/.next/server/pages/canvas.js.nft.json +1 -0
- package/.next/server/pages/documents.html +1 -1
- package/.next/server/pages/documents.js.nft.json +1 -1
- package/.next/server/pages/guide.html +1 -1
- package/.next/server/pages/index.html +1 -1
- package/.next/server/pages/knowledge/file-detail.html +1 -1
- package/.next/server/pages/knowledge/files.html +1 -1
- package/.next/server/pages/knowledge/files.js.nft.json +1 -1
- package/.next/server/pages/knowledge/manage.html +1 -1
- package/.next/server/pages/knowledge/manage.js.nft.json +1 -1
- package/.next/server/pages/knowledge.html +1 -1
- package/.next/server/pages/knowledge.js.nft.json +1 -1
- package/.next/server/pages/models.html +1 -1
- package/.next/server/pages/overview.html +1 -1
- package/.next/server/pages/prompt.html +1 -1
- package/.next/server/pages/settings.html +1 -1
- package/.next/server/pages/skills.html +1 -0
- package/.next/server/pages/system/logs.html +1 -1
- package/.next/server/pages-manifest.json +45 -32
- package/.next/static/Z8psgNSpy4sSg2lIho8Uw/_buildManifest.js +1 -0
- package/.next/static/chunks/127-20f09f6ebe1e6c1f.js +1 -0
- package/.next/static/chunks/174-1bc48f295d7dd075.js +10 -0
- package/.next/static/chunks/189-3f4f4e237056adaf.js +4 -0
- package/.next/static/chunks/243-03eba51d5d737e98.js +1 -0
- package/.next/static/chunks/269-7a3502478bf67fff.js +11 -0
- package/.next/static/chunks/289-136ebb30e0f6723a.js +78 -0
- package/.next/static/chunks/310-6c678cb70e4ba2d6.js +19 -0
- package/.next/static/chunks/422-46f07037c58d2309.js +1 -0
- package/.next/static/chunks/426-90638907336adcb8.js +21 -0
- package/.next/static/chunks/445-d12731f107978b10.js +6 -0
- package/.next/static/chunks/530-1b18bb11570dc44a.js +1 -0
- package/.next/static/chunks/569-2bfdde9e402af5b2.js +16 -0
- package/.next/static/chunks/700-5d29b0475311f590.js +1 -0
- package/.next/static/chunks/709-a7c652953ccd3b4b.js +1 -0
- package/.next/static/chunks/787-207289f4bb577708.js +10 -0
- package/.next/static/chunks/795-9e0cb0bb11e8c89f.js +1 -0
- package/.next/static/chunks/914-292edce0ba2a212d.js +1 -0
- package/.next/static/chunks/{framework-161be364fd69a7ce.js → framework-4b565b3ddc94cdac.js} +1 -1
- package/.next/static/chunks/main-0c91f573696223ca.js +1 -0
- package/.next/static/chunks/pages/_app-74fce107cacfaee7.js +185 -0
- package/.next/static/chunks/pages/canvas/[id]-9f4e9f49e512418b.js +1 -0
- package/.next/static/chunks/pages/canvas-323d44fe56d685a7.js +1 -0
- package/.next/static/chunks/pages/documents-e6a80f2de39c6fd2.js +1 -0
- package/.next/static/chunks/pages/guide-7367305082617e3c.js +1 -0
- package/.next/static/chunks/pages/knowledge/file-detail-aee7c15541d1d130.js +1 -0
- package/.next/static/chunks/pages/knowledge/files-b3ef5324e4b74c4a.js +1 -0
- package/.next/static/chunks/pages/knowledge/manage-d9eaebf3a8307953.js +1 -0
- package/.next/static/chunks/pages/knowledge-ca8ad5501faed486.js +1 -0
- package/.next/static/chunks/pages/models-8b96ba85131d5408.js +1 -0
- package/.next/static/chunks/pages/prompt-dd9a9f9105216e2b.js +1 -0
- package/.next/static/chunks/pages/settings-0a7709bf039a2a4d.js +1 -0
- package/.next/static/chunks/pages/skills-3d77213c3e9ef0b5.js +1 -0
- package/.next/static/chunks/pages/system/logs-9deb1217739490af.js +1 -0
- package/.next/static/chunks/webpack-6224d37324e372cb.js +1 -0
- package/.next/static/css/0e46e39b61e4e262.css +1 -0
- package/messages/en-US.json +108 -344
- package/messages/zh-CN.json +109 -345
- package/package.json +6 -5
- package/scripts/capture-baseline.mjs +541 -0
- package/.next/server/chunks/208.js +0 -136
- package/.next/server/chunks/4435.js +0 -249
- package/.next/server/chunks/5840.js +0 -1
- package/.next/server/pages/api/documents/drafts.js +0 -1
- package/.next/server/pages/api/documents/drafts.js.nft.json +0 -1
- package/.next/server/pages/api/documents/refine.js +0 -13
- package/.next/server/pages/api/documents/refine.js.nft.json +0 -1
- package/.next/server/pages/api/documents/roles.js +0 -1
- package/.next/server/pages/api/documents/roles.js.nft.json +0 -1
- package/.next/server/pages/api/documents/templates.js +0 -1
- package/.next/server/pages/api/documents/templates.js.nft.json +0 -1
- package/.next/server/pages/asset-library.html +0 -1
- package/.next/server/pages/document-roles.html +0 -1
- package/.next/server/pages/document-roles.js.nft.json +0 -1
- package/.next/static/chunks/195-2c0168eacab722d2.js +0 -1
- package/.next/static/chunks/289-12dfcb3abec1c4b4.js +0 -78
- package/.next/static/chunks/44-d3545eedd5c75ef1.js +0 -4
- package/.next/static/chunks/455-e1b41ac4946d2b6f.js +0 -6
- package/.next/static/chunks/563-2b116a2500a97dba.js +0 -1
- package/.next/static/chunks/665-88e20299084b9e73.js +0 -1
- package/.next/static/chunks/7-20bcc985742a9ae1.js +0 -10
- package/.next/static/chunks/717-743b697a417dd5ee.js +0 -4
- package/.next/static/chunks/760-f8bb8e969c5e0d57.js +0 -1
- package/.next/static/chunks/787-c18af810af3433f6.js +0 -25
- package/.next/static/chunks/788-961761f5858f9189.js +0 -1
- package/.next/static/chunks/795-cd94e8d4e9768eb9.js +0 -1
- package/.next/static/chunks/81-c3a7f04d96ea3f7d.js +0 -1
- package/.next/static/chunks/827-a6dc09e42833e6a3.js +0 -1
- package/.next/static/chunks/883-506cbca959974997.js +0 -16
- package/.next/static/chunks/986-49b865de7906320a.js +0 -8
- package/.next/static/chunks/994-241f87efc61005b8.js +0 -4
- package/.next/static/chunks/main-91fb767ebd74c9c1.js +0 -1
- package/.next/static/chunks/pages/_app-66149ba52ad1dc26.js +0 -185
- package/.next/static/chunks/pages/asset-library-a1047694e888e655.js +0 -1
- package/.next/static/chunks/pages/document-roles-5620a98d6312f81c.js +0 -1
- package/.next/static/chunks/pages/documents-8e1a30170e9311b0.js +0 -1
- package/.next/static/chunks/pages/guide-a411c554520b7109.js +0 -1
- package/.next/static/chunks/pages/knowledge/file-detail-fe69eb38d70adea0.js +0 -1
- package/.next/static/chunks/pages/knowledge/files-7b78e962e432d199.js +0 -1
- package/.next/static/chunks/pages/knowledge/manage-7535b873ab505397.js +0 -1
- package/.next/static/chunks/pages/knowledge-905248d8dcb15453.js +0 -1
- package/.next/static/chunks/pages/models-6ef838f3e00ba21e.js +0 -1
- package/.next/static/chunks/pages/prompt-2c242e541f2e77a9.js +0 -1
- package/.next/static/chunks/pages/settings-810eb1a6cf1a6b02.js +0 -1
- package/.next/static/chunks/pages/system/logs-c5a8920c6506a7e8.js +0 -1
- package/.next/static/chunks/webpack-4224e970a97a4a86.js +0 -1
- package/.next/static/css/18018ee565a1deba.css +0 -1
- package/.next/static/uVLt2UAGpslnZIBzcFv3n/_buildManifest.js +0 -1
- /package/.next/server/pages/{asset-library.js.nft.json → skills.js.nft.json} +0 -0
- /package/.next/static/{uVLt2UAGpslnZIBzcFv3n → Z8psgNSpy4sSg2lIho8Uw}/_ssgManifest.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[958],{63806:(e,t,s)=>{"use strict";s.r(t),s.d(t,{default:()=>S});var a=s(65321),n=s(97109),r=s(17807),l=s(25258),o=s(88762),i=s(33442),c=s(85114),d=s(84253),p=s(21289),m=s(384),h=s(11702),x=s(71102),u=s(58209),y=s(75548),g=s(56768),w=s(93051),j=s(81668),v=s(64254),f=s(85855),k=s(48321),A=s(6578);let b={cover:"magenta",reference:"blue",generated:"purple",attachment:"cyan",map:"orange",operator:"geekblue"};function S(){let e=(0,k.Vr)(),{message:t}=r.A.useApp(),s=(t,s)=>e(t).replace("{count}",String(s)),[S,N]=(0,n.useState)([]),[C,T]=(0,n.useState)(new Set),[_,I]=(0,n.useState)(!0),[z,D]=(0,n.useState)(""),E=async function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:z;try{N((await (0,A.f$)(e||void 0)).assets)}catch(e){N([])}};(0,n.useEffect)(()=>{let e=!1;return I(!0),(0,A.dx)().then(t=>{var s,a,n;if(e)return;let r=(null==(s=t.find(e=>e.selected))?void 0:s.projectRoot)||(null==(a=t.find(e=>e.isCurrent))?void 0:a.projectRoot)||(null==(n=t[0])?void 0:n.projectRoot)||"";return D(r),E(r)}).finally(()=>{e||I(!1)}),()=>{e=!0}},[]);let F=async s=>{var a;s&&(await (null==(a=navigator.clipboard)?void 0:a.writeText(s)),t.success(e("assets.copiedPath")))},R=async(s,a)=>{try{"openFile"===a?await (0,A.oS)(s,"file",z||void 0):"openDirectory"===a?await (0,A.oS)(s,"directory",z||void 0):"delete"===a&&(N((await (0,A.JU)(s,z||void 0)).assets),T(e=>{let t=new Set(e);return t.delete(s),t}))}catch(s){t.error(s instanceof Error?s.message:e("assets.operationFailed"))}},P=a=>{let n="selected"===a?[...C]:S.map(e=>e.id);0!==n.length&&l.A.confirm({title:"all"===a?e("assets.deleteAllConfirm"):s("assets.deleteSelectedConfirm",n.length),content:e("assets.deleteIrreversible"),okText:e("common.confirm"),cancelText:e("common.cancel"),okButtonProps:{danger:!0},onOk:async()=>{I(!0);try{await Promise.all(n.map(e=>(0,A.JU)(e,z||void 0))),await E(),T(new Set),t.success(s("assets.deleted",n.length))}catch(s){t.error(e("assets.batchDeleteFailed"))}finally{I(!1)}}})};return _?(0,a.jsx)("div",{className:"space-y-5 animateFadeIn",children:(0,a.jsx)(o.A,{active:!0,title:!0,paragraph:{rows:8}})}):(0,a.jsxs)("div",{className:"space-y-5 animateFadeIn",children:[(0,a.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",flexWrap:"wrap",gap:12},children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("h1",{className:"pageTitle",children:e("nav.assetLibrary")}),(0,a.jsx)("p",{className:"pageDesc",children:e("assets.description")})]}),(0,a.jsxs)(i.A,{size:8,children:[(0,a.jsx)("span",{style:{color:"var(--colorTextSecondary)",fontSize:12},children:s("assets.total",S.length)}),(0,a.jsx)(c.Ay,{danger:!0,size:"small",disabled:0===C.size,icon:(0,a.jsx)(u.A,{}),onClick:()=>P("selected"),children:s("assets.deleteSelected",C.size||"")}),(0,a.jsx)(c.Ay,{danger:!0,size:"small",disabled:0===S.length,onClick:()=>P("all"),children:e("assets.deleteAll")})]})]}),0===S.length?(0,a.jsx)(d.A,{description:e("assets.empty")}):(0,a.jsx)(p.A,{className:"modern-table",rowKey:"id",size:"middle",dataSource:S,pagination:{pageSize:12,showSizeChanger:!0,pageSizeOptions:[12,24,48],showTotal:e=>s("assets.total",e)},rowSelection:{selectedRowKeys:[...C],onChange:e=>T(new Set(e.map(String)))},columns:[{title:e("assets.resource"),dataIndex:"name",key:"name",width:360,render:(e,t)=>{let s="image"===t.type&&t.path?"/api/assets/generated/preview?id=".concat(encodeURIComponent(t.id)).concat(z?"&projectRoot=".concat(encodeURIComponent(z)):""):void 0;return(0,a.jsxs)("div",{className:"flex items-center gap-3 min-w-0",children:[(0,a.jsx)("div",{className:"w-12 h-12 rounded-lg bg-[var(--colorBgHover)] flex items-center justify-center overflow-hidden shrink-0",children:s?(0,a.jsx)(m.A,{src:s,alt:t.name,width:48,height:48,style:{objectFit:"cover"},preview:!1}):"image"===t.type?(0,a.jsx)(y.A,{className:"text-[var(--colorWarning)]"}):(0,a.jsx)(g.A,{className:"text-[var(--colorAccent)]"})}),(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsx)("div",{className:"font-medium text-[var(--colorText)] whitespace-normal break-words leading-snug",children:t.name}),(0,a.jsxs)("div",{className:"mt-1 flex flex-wrap gap-1",children:[(0,a.jsx)(h.A,{color:b[t.role]||"blue",bordered:!1,className:"m-0",children:t.role}),(0,a.jsx)(h.A,{bordered:!1,className:"m-0",children:t.type})]})]})]})}},{title:e("assets.path"),dataIndex:"path",key:"path",render:e=>e?(0,a.jsx)("span",{className:"font-mono text-xs text-[var(--colorTextSecondary)] whitespace-normal break-all",children:e}):(0,a.jsx)("span",{className:"text-[var(--colorTextTertiary)]",children:"-"})},{title:e("assets.source"),dataIndex:"source",key:"source",width:110,render:t=>(0,a.jsx)(h.A,{bordered:!1,className:"m-0",children:{knowledge_base:e("assets.sourceKnowledgeBase"),generated:e("assets.sourceGenerated"),uploaded:e("assets.sourceUploaded"),external_url:e("assets.sourceExternalUrl")}[t]||t})},{title:e("assets.usedDocuments"),dataIndex:"usedByDocumentIds",key:"usedByDocumentIds",width:100,render:e=>(0,a.jsx)("span",{className:"text-[var(--colorTextSecondary)]",children:e.length})},{title:e("assets.updatedAt"),dataIndex:"updatedAt",key:"updatedAt",width:130,render:e=>(0,a.jsx)("span",{className:"text-[var(--colorTextSecondary)]",children:new Date(e).toLocaleDateString()})},{title:e("assets.actions"),key:"actions",width:88,align:"right",render:(t,s)=>{let n=[...s.path?[{key:"copy",icon:(0,a.jsx)(w.A,{}),label:e("assets.copyPath"),onClick:()=>{F(s.path)}}]:[],...s.path?[{key:"open",icon:(0,a.jsx)(j.A,{}),label:e("assets.openFile"),onClick:()=>{R(s.id,"openFile")}}]:[],...s.path?[{key:"folder",icon:(0,a.jsx)(v.A,{}),label:e("assets.openDirectory"),onClick:()=>{R(s.id,"openDirectory")}}]:[],{type:"divider"},{key:"delete",icon:(0,a.jsx)(u.A,{}),label:e("common.delete"),danger:!0,onClick:()=>{R(s.id,"delete")}}];return(0,a.jsx)(x.A,{menu:{items:n},trigger:["click"],placement:"bottomRight",children:(0,a.jsx)(c.Ay,{type:"text",size:"small",icon:(0,a.jsx)(f.A,{}),onClick:e=>e.stopPropagation()})})}}]})]})}},85015:(e,t,s)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/asset-library",function(){return s(63806)}])}},e=>{e.O(0,[717,883,665,563,7,289,994,636,593,792],()=>e(e.s=85015)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[623],{23507:(e,r,s)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/document-roles",function(){return s(26723)}])},24810:(e,r,s)=>{"use strict";s.d(r,{A:()=>i});var l=s(97109),t=s(31738),a=s(88483);function c(){return(c=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var s=arguments[r];for(var l in s)Object.prototype.hasOwnProperty.call(s,l)&&(e[l]=s[l])}return e}).apply(this,arguments)}let i=l.forwardRef((e,r)=>l.createElement(a.A,c({},e,{ref:r,icon:t.A})))},26723:(e,r,s)=>{"use strict";s.r(r),s.d(r,{default:()=>E});var l=s(65321),t=s(97109),a=s(35292),c=s(17807),i=s(63455),n=s(68787),d=s(33442),o=s(11702),x=s(85114),m=s(84253),h=s(21289),u=s(26171),p=s(34052),j=s(7576),y=s(50883),A=s(24810),v=s(84742),g=s(54746),f=s(99650),b=s(58209),w=s(59291),N=s(88483);function I(){return(I=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var s=arguments[r];for(var l in s)Object.prototype.hasOwnProperty.call(s,l)&&(e[l]=s[l])}return e}).apply(this,arguments)}let z=t.forwardRef((e,r)=>t.createElement(N.A,I({},e,{ref:r,icon:w.A})));var C=s(6578);let{Paragraph:k,Text:S}=a.A,_=[{value:"fact_extraction",label:"事实抽取",color:"orange"},{value:"chapter_generation",label:"章节生成",color:"blue"},{value:"llm_review",label:"质量审查",color:"purple"},{value:"validation",label:"校验规则",color:"green"},{value:"formatting",label:"格式控制",color:"magenta"},{value:"reference",label:"参考资料",color:"cyan"}];function F(e){return[...new Set(e.filter(Boolean))]}function T(e){return _.find(r=>r.value===e)||_[_.length-1]}function E(){let{message:e}=c.A.useApp(),[r]=i.A.useForm(),[s]=i.A.useForm(),[a,w]=(0,t.useState)([]),[N,I]=(0,t.useState)([]),[E,M]=(0,t.useState)([]),[O,H]=(0,t.useState)(!1),[P,R]=(0,t.useState)(!1),[V,q]=(0,t.useState)([]),B=async()=>{let[e,r]=await Promise.all([(0,C.lv)("prompt"),(0,C.dx)()]);w(e.roles),I(e.configs),M(r)};(0,t.useEffect)(()=>{B().catch(()=>e.error("加载失败"))},[e]);let D=(0,t.useMemo)(()=>E.map(e=>({label:e.projectName,value:e.id})),[E]),K=(0,t.useMemo)(()=>new Map(a.map(e=>[e.id,e])),[a]),X=V.map(e=>K.get(e)).filter(Boolean),G=e=>{var s;r.resetFields(),r.setFieldsValue(e?{...e,resourceIds:(null==(s=e.resourceIds)?void 0:s.length)?e.resourceIds:e.resourceId?[e.resourceId]:[]}:{id:"role-".concat(Date.now()),name:"",description:"",type:"prompt",resourceIds:[],executionType:"reference"}),H(!0)},J=async()=>{try{let s=await r.validateFields(),l=F(s.resourceIds||[]),t=await (0,C.dg)({...s,type:"prompt",resourceIds:l,resourceId:l[0]});w(t.roles),I(t.configs),H(!1),e.success("保存成功")}catch(r){e.error("保存失败")}},L=async r=>{try{let s=await (0,C.FV)("prompt",r.id);w(s.roles),I(s.configs),q(e=>e.filter(e=>e!==r.id)),e.success("删除成功")}catch(r){e.error(r instanceof Error?r.message:"删除失败")}},Q=e=>{s.resetFields(),s.setFieldsValue(e||{id:"config-".concat(Date.now()),name:"",description:"",promptRoles:[]}),q(((null==e?void 0:e.promptRoles)||[]).sort((e,r)=>e.order-r.order).map(e=>e.roleId)),R(!0)},U=async()=>{try{let r=await s.validateFields(),l=F(V).map((e,r)=>({roleId:e,order:r})),t=await (0,C.NR)({...r,promptRoles:l});w(t.roles),I(t.configs),R(!1),e.success("保存成功")}catch(r){e.error("保存失败")}},W=async r=>{try{let s=await (0,C.dw)(r);w(s.roles),I(s.configs),e.success("删除成功")}catch(r){e.error(r instanceof Error?r.message:"删除失败")}},Y=e=>{var r;let{role:s,selected:t,onClick:a}=e,c=T(s.executionType),i=(null==(r=s.resourceIds)?void 0:r.length)?s.resourceIds:s.resourceId?[s.resourceId]:[];return(0,l.jsxs)(n.A,{size:"small",hoverable:!!a,onClick:a,className:"h-full rounded-2xl transition-all ".concat(t?"border-[var(--colorPrimary)] shadow-md bg-[var(--colorFillTertiary)]":"border-[var(--colorBorderSecondary)]"),styles:{body:{padding:16}},children:[(0,l.jsxs)("div",{className:"flex items-start justify-between gap-3 mb-3",children:[(0,l.jsxs)("div",{className:"flex items-center gap-3 min-w-0",children:[(0,l.jsx)("div",{className:"w-10 h-10 rounded-xl bg-[var(--colorFillSecondary)] flex items-center justify-center text-[var(--colorPrimary)]",children:(0,l.jsx)(A.A,{})}),(0,l.jsxs)("div",{className:"min-w-0",children:[(0,l.jsx)("div",{className:"font-semibold truncate text-[var(--colorText)]",children:s.name}),(0,l.jsx)(S,{type:"secondary",className:"text-xs",children:s.id})]})]}),t&&(0,l.jsx)(v.A,{className:"text-[var(--colorPrimary)] text-lg"})]}),(0,l.jsxs)(d.A,{size:6,wrap:!0,className:"mb-3",children:[(0,l.jsx)(o.A,{color:c.color,children:c.label}),s.builtIn&&(0,l.jsx)(o.A,{children:"内置"}),(0,l.jsxs)(o.A,{children:[i.length," 个提示词"]})]}),s.description&&(0,l.jsx)(k,{ellipsis:{rows:2},className:"text-xs !mb-3 text-[var(--colorTextSecondary)]",children:s.description}),(0,l.jsxs)("div",{className:"flex flex-wrap gap-1",children:[0===i.length?(0,l.jsx)(S,{type:"secondary",className:"text-xs",children:"未绑定提示词资源"}):i.slice(0,3).map(e=>{var r;return(0,l.jsx)(o.A,{title:e,className:"max-w-full truncate",children:(null==(r=E.find(r=>r.id===e))?void 0:r.projectName)||e},e)}),i.length>3&&(0,l.jsxs)(o.A,{children:["+",i.length-3]})]})]})};return(0,l.jsxs)("div",{className:"p-6 max-w-7xl mx-auto",children:[(0,l.jsxs)(n.A,{title:"提示词角色配置",className:"rounded-2xl mb-6",extra:(0,l.jsxs)(d.A,{wrap:!0,children:[(0,l.jsx)(x.Ay,{icon:(0,l.jsx)(g.A,{}),onClick:()=>Q(),className:"rounded-xl",children:"新建编排配置"}),(0,l.jsx)(x.Ay,{type:"primary",icon:(0,l.jsx)(g.A,{}),onClick:()=>G(),className:"rounded-xl",children:"新建提示词角色"})]}),children:[(0,l.jsx)(k,{type:"secondary",className:"!mb-4",children:"项目资料类型由系统自动识别,这里只维护生成链路中使用的提示词角色和编排方案。"}),(0,l.jsxs)("div",{className:"grid grid-cols-3 gap-4",children:[(0,l.jsxs)("div",{className:"rounded-xl bg-[var(--colorFillSecondary)] p-4",children:[(0,l.jsx)(S,{type:"secondary",children:"提示词角色"}),(0,l.jsx)("div",{className:"text-2xl font-semibold mt-1",children:a.length})]}),(0,l.jsxs)("div",{className:"rounded-xl bg-[var(--colorFillSecondary)] p-4",children:[(0,l.jsx)(S,{type:"secondary",children:"编排配置"}),(0,l.jsx)("div",{className:"text-2xl font-semibold mt-1",children:N.length})]}),(0,l.jsxs)("div",{className:"rounded-xl bg-[var(--colorFillSecondary)] p-4",children:[(0,l.jsx)(S,{type:"secondary",children:"项目资料识别"}),(0,l.jsx)("div",{className:"text-2xl font-semibold mt-1",children:"自动"})]})]})]}),(0,l.jsx)(n.A,{title:(0,l.jsxs)(d.A,{children:[(0,l.jsx)(A.A,{}),"提示词角色"]}),className:"rounded-2xl mb-6",extra:(0,l.jsx)(x.Ay,{type:"link",onClick:()=>G(),children:"新增"}),children:0===a.length?(0,l.jsx)(m.A,{description:"暂无提示词角色"}):(0,l.jsx)(h.A,{dataSource:a,rowKey:"id",pagination:!1,columns:[{title:"角色名称",dataIndex:"name",render:e=>(0,l.jsx)(S,{strong:!0,children:e})},{title:"执行阶段",dataIndex:"executionType",width:120,render:e=>{let r=T(e);return(0,l.jsx)(o.A,{color:r.color,children:r.label})}},{title:"提示词",width:100,render:(e,r)=>{var s;let t=(null==(s=r.resourceIds)?void 0:s.length)||+!!r.resourceId;return(0,l.jsxs)(o.A,{children:[t," 个"]})}},{title:"说明",dataIndex:"description",ellipsis:!0,render:e=>e?(0,l.jsx)(S,{type:"secondary",className:"text-xs",children:e}):(0,l.jsx)(S,{type:"secondary",className:"text-xs",children:"-"})},{title:"操作",width:100,render:(e,r)=>(0,l.jsxs)(d.A,{size:0,children:[(0,l.jsx)(x.Ay,{size:"small",type:"text",icon:(0,l.jsx)(f.A,{}),onClick:()=>G(r)}),(0,l.jsx)(u.A,{title:"确认删除该提示词角色?",onConfirm:()=>{L(r)},disabled:r.builtIn,children:(0,l.jsx)(x.Ay,{size:"small",type:"text",danger:!0,icon:(0,l.jsx)(b.A,{}),disabled:r.builtIn})})]})}]})}),(0,l.jsx)(n.A,{title:(0,l.jsxs)(d.A,{children:[(0,l.jsx)(z,{}),"提示词编排配置"]}),className:"rounded-2xl",children:0===N.length?(0,l.jsx)(m.A,{description:"暂无编排配置"}):(0,l.jsx)(h.A,{dataSource:N,rowKey:"id",pagination:!1,columns:[{title:"配置名称",dataIndex:"name",render:e=>(0,l.jsx)(S,{strong:!0,children:e})},{title:"提示词角色编排",render:(e,r)=>0===r.promptRoles.length?(0,l.jsx)(S,{type:"secondary",className:"text-xs",children:"未选择"}):(0,l.jsx)(d.A,{size:4,wrap:!0,children:[...r.promptRoles].sort((e,r)=>e.order-r.order).map((e,r)=>{var s;return(0,l.jsxs)(o.A,{color:"purple",children:["#",r+1," ",(null==(s=K.get(e.roleId))?void 0:s.name)||e.roleId]},"".concat(e.roleId,"-").concat(r))})})},{title:"说明",dataIndex:"description",ellipsis:!0,render:e=>e?(0,l.jsx)(S,{type:"secondary",className:"text-xs",children:e}):(0,l.jsx)(S,{type:"secondary",className:"text-xs",children:"-"})},{title:"操作",width:100,render:(e,r)=>(0,l.jsxs)(d.A,{size:0,children:[(0,l.jsx)(x.Ay,{size:"small",type:"text",icon:(0,l.jsx)(f.A,{}),onClick:()=>Q(r)}),(0,l.jsx)(u.A,{title:"确认删除该编排配置?",onConfirm:()=>{W(r.id)},disabled:r.builtIn,children:(0,l.jsx)(x.Ay,{size:"small",type:"text",danger:!0,icon:(0,l.jsx)(b.A,{}),disabled:r.builtIn})})]})}]})}),(0,l.jsx)(p.A,{title:"提示词角色",open:O,onClose:()=>H(!1),styles:{wrapper:{width:560}},extra:(0,l.jsxs)(d.A,{children:[(0,l.jsx)(x.Ay,{onClick:()=>H(!1),children:"取消"}),(0,l.jsx)(x.Ay,{type:"primary",onClick:()=>{J()},children:"保存"})]}),children:(0,l.jsxs)(i.A,{form:r,layout:"vertical",children:[(0,l.jsx)(i.A.Item,{name:"id",label:"角色 ID",rules:[{required:!0}],children:(0,l.jsx)(j.A,{disabled:!0})}),(0,l.jsx)(i.A.Item,{name:"name",label:"名称",rules:[{required:!0}],children:(0,l.jsx)(j.A,{placeholder:"例如:章节生成专家"})}),(0,l.jsx)(i.A.Item,{name:"description",label:"说明",children:(0,l.jsx)(j.A.TextArea,{rows:3,placeholder:"说明该提示词角色在生成链路中的职责"})}),(0,l.jsx)(i.A.Item,{name:"type",hidden:!0,children:(0,l.jsx)(j.A,{})}),(0,l.jsx)(i.A.Item,{name:"executionType",label:"执行阶段",rules:[{required:!0}],children:(0,l.jsx)(y.A,{options:_})}),(0,l.jsx)(i.A.Item,{name:"resourceIds",label:"绑定提示词资源",children:(0,l.jsx)(y.A,{mode:"multiple",allowClear:!0,options:D,placeholder:"选择一个或多个提示词资源"})})]})}),(0,l.jsxs)(p.A,{title:"提示词编排配置",open:P,onClose:()=>R(!1),styles:{wrapper:{width:720}},extra:(0,l.jsxs)(d.A,{children:[(0,l.jsx)(x.Ay,{onClick:()=>R(!1),children:"取消"}),(0,l.jsx)(x.Ay,{type:"primary",onClick:()=>{U()},children:"保存"})]}),children:[(0,l.jsxs)(i.A,{form:s,layout:"vertical",children:[(0,l.jsx)(i.A.Item,{name:"id",label:"配置 ID",rules:[{required:!0}],children:(0,l.jsx)(j.A,{disabled:!0})}),(0,l.jsx)(i.A.Item,{name:"name",label:"名称",rules:[{required:!0}],children:(0,l.jsx)(j.A,{placeholder:"例如:施工组织设计默认编排"})}),(0,l.jsx)(i.A.Item,{name:"description",label:"说明",children:(0,l.jsx)(j.A.TextArea,{rows:3,placeholder:"说明这组提示词编排适用的文档类型"})})]}),(0,l.jsxs)("div",{className:"mb-3 flex items-center justify-between",children:[(0,l.jsx)(S,{strong:!0,children:"选择提示词角色"}),(0,l.jsxs)(S,{type:"secondary",className:"text-xs",children:["已选择 ",V.length," 个,点击卡片可切换"]})]}),0===a.length?(0,l.jsx)(m.A,{description:"暂无可选提示词角色"}):(0,l.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-3 mb-5",children:a.map(e=>(0,l.jsx)(Y,{role:e,selected:V.includes(e.id),onClick:()=>{var r;return r=e.id,void q(e=>e.includes(r)?e.filter(e=>e!==r):[...e,r])}},e.id))}),X.length>0&&(0,l.jsx)(n.A,{size:"small",title:"当前编排顺序",className:"rounded-2xl",children:(0,l.jsx)("div",{className:"flex flex-wrap gap-2",children:X.map((e,r)=>(0,l.jsxs)(o.A,{color:"purple",className:"px-2 py-1",children:["#",r+1," ",e.name]},e.id))})})]})]})}},31738:(e,r)=>{"use strict";r.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M300 328a60 60 0 10120 0 60 60 0 10-120 0zM852 64H172c-17.7 0-32 14.3-32 32v660c0 17.7 14.3 32 32 32h680c17.7 0 32-14.3 32-32V96c0-17.7-14.3-32-32-32zm-32 660H204V128h616v596zM604 328a60 60 0 10120 0 60 60 0 10-120 0zm250.2 556H169.8c-16.5 0-29.8 14.3-29.8 32v36c0 4.4 3.3 8 7.4 8h729.1c4.1 0 7.4-3.6 7.4-8v-36c.1-17.7-13.2-32-29.7-32zM664 508H360c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h304c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8z"}}]},name:"robot",theme:"outlined"}},59291:(e,r)=>{"use strict";r.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M880 112H144c-17.7 0-32 14.3-32 32v736c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V144c0-17.7-14.3-32-32-32zm-40 728H184V184h656v656zM492 400h184c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8H492c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8zm0 144h184c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8H492c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8zm0 144h184c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8H492c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8zM340 368a40 40 0 1080 0 40 40 0 10-80 0zm0 144a40 40 0 1080 0 40 40 0 10-80 0zm0 144a40 40 0 1080 0 40 40 0 10-80 0z"}}]},name:"profile",theme:"outlined"}}},e=>{e.O(0,[717,883,665,44,563,7,289,787,195,455,636,593,792],()=>e(e.s=23507)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[298],{16403:(e,t,r)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/documents",function(){return r(81865)}])},81865:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>ef});var s=r(65321),l=r(97109),a=r(26171),n=r(25258),o=r(7576),i=r(35292),c=r(33442),d=r(17807),u=r(63455),p=r(11702),m=r(88762),x=r(85114),h=r(58569),g=r(84253),v=r(34052),f=r(68787),j=r(55122),y=r(42700),w=r(2256),b=r(38770),A=r(38332),k=r(76506),S=r(50883),C=r(23718),N=r(23216),T=r(26619),I=r(8263),R=r(16285),E=r(8579),M=r(7851),z=r(29071),D=r(75548),_=r(63552),F=r(26631),B=r(29606),P=r(83914),q=r(84742),L=r(58209),W=r(38762),G=r(8470),O=r(92783),H=r(54746),K=r(93051),U=r(82930),V=r(64068),X=r(64629),Q=r(1310),J=r(67547),Y=r(76830),Z=r(6578),$=r(48321);let ee={"fact-landing-round":"未覆盖重要事实落地","table-repair-round":"表格缺失或格式错误","semantic-choice-conflict":"语义矛盾数值冲突","deterministic-stage5":"确定性缺陷(来源罗列/内部术语/编造日期)","formal-source-clean":"资料来源罗列话术","planned-section-final":"规划小节内容缺失","commercial-strip":"商务数据泄漏","table-deterministic-repair":"表格数据不一致","post-review-surface":"评审后兜底缺陷","terminology-strip":"内部术语泄漏","toc-consistency":"目录与正文不一致"},{TextArea:et}=o.A,{Text:er}=i.A,es=a.A;function el(e){let{type:t="info",title:r,children:l,style:a}=e,n="error"===t?"var(--colorError)":"warning"===t?"var(--colorWarning)":"success"===t?"var(--colorSuccess)":"var(--colorInfo)";return(0,s.jsxs)("div",{style:{border:"1px solid ".concat(n),background:"error"===t?"var(--colorErrorBg)":"warning"===t?"var(--colorWarningBg)":"success"===t?"var(--colorSuccessBg)":"var(--colorInfoBg)",borderRadius:8,padding:"9px 12px",...a},children:[(0,s.jsx)(er,{strong:!0,style:{color:n},children:r}),l&&(0,s.jsx)("div",{style:{marginTop:4,color:"var(--colorTextSecondary)",fontSize:12},children:l})]})}function ea(e){let{children:t,gap:r=12,style:l}=e;return(0,s.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:r,...l},children:t})}let en=null,eo=!1;function ei(){null==en||en.listeners.forEach(e=>e())}let ec={role_binding:(0,s.jsx)(N.A,{}),knowledge_retrieval:(0,s.jsx)(T.A,{}),file_understanding:(0,s.jsx)(I.A,{}),fact_extraction:(0,s.jsx)(R.A,{}),chapter_generation:(0,s.jsx)(E.A,{}),validation:(0,s.jsx)(M.A,{}),llm_review:(0,s.jsx)(z.A,{}),reference:(0,s.jsx)(D.A,{})},ed={施工组织设计:(0,s.jsx)(M.A,{}),投标文件:(0,s.jsx)(_.A,{}),技术方案:(0,s.jsx)(R.A,{}),报告:(0,s.jsx)(F.A,{}),自定义:(0,s.jsx)(E.A,{})};function eu(e){return[...new Set(e.map(e=>e.trim()).filter(Boolean))]}function ep(e){return e.map(e=>({key:e.key,value:e.key,rawTitle:e.title,title:e.isFolder?(0,s.jsxs)("div",{className:"flex items-center justify-between w-full pr-4",children:[(0,s.jsxs)(c.A,{size:4,children:[(0,s.jsx)(B.A,{style:{color:"#faad14"}}),(0,s.jsx)("span",{children:e.title})]}),(0,s.jsxs)("span",{className:"text-xs text-[var(--colorTextTertiary)]",children:[e.fileCount||0," 项"]})]}):(0,s.jsx)("span",{title:e.key,children:e.title}),isFolder:e.isFolder,fileCount:e.fileCount||+!e.isFolder,isLeaf:e.isLeaf}))}let em={role_binding:"角色配置绑定",knowledge_retrieval:"知识库检索",file_understanding:"多模态文件理解",fact_extraction:"LLM 事实抽取",chapter_generation:"LLM 章节生成",validation:"规则校验",llm_review:"LLM 审查优化",reference:"参考资源处理"},ex={"knowledge-base":"知识库","document-readiness":"生成准备度检查"},eh={wait:"common.statusWaiting",process:"common.statusRunning",finish:"common.statusCompleted",warning:"common.statusReview",error:"common.statusAbnormal"},eg={running:"common.statusRunning",success:"common.statusCompleted",skipped:"common.statusSkipped",failed:"common.statusFailed",partial:"common.statusPartial"},ev={error:"common.levelError",warning:"common.levelWarning",info:"common.levelInfo"};function ef(){var e,t,r,a,i,D,_,B;let ef=(0,$.Vr)(),{message:ej}=d.A.useApp(),[ey]=u.A.useForm(),ew=(0,l.useRef)(null),[eb,eA]=(0,l.useState)([]),[ek,eS]=(0,l.useState)("construction-organization-design"),[eC,eN]=(0,l.useState)([]),[eT,eI]=(0,l.useState)([]),[eR,eE]=(0,l.useState)([]),[eM,ez]=(0,l.useState)([]),[eD,e_]=(0,l.useState)(!1),[eF,eB]=(0,l.useState)(!0),[eP,eq]=(0,l.useState)(!1),[eL,eW]=(0,l.useState)(null),[eG,eO]=(0,l.useState)(""),[eH,eK]=(0,l.useState)([]),[eU,eV]=(0,l.useState)(null),[eX,eQ]=(0,l.useState)(null),[eJ,eY]=(0,l.useState)(null),[eZ,e$]=(0,l.useState)(""),[e0,e1]=(0,l.useState)(!1),[e2,e6]=(0,l.useState)("idle"),[e5,e8]=(0,l.useState)(null),[e3,e4]=(0,l.useState)(null),[e7,e9]=(0,l.useState)({start:0,end:0}),[te,tt]=(0,l.useState)([]),[tr,ts]=(0,l.useState)(!1),[tl,ta]=(0,l.useState)(!1),[tn,to]=(0,l.useState)({}),[ti,tc]=(0,l.useState)(null),td=(0,l.useRef)({}),tu=(0,l.useRef)(new Map),[tp,tm]=(0,l.useState)(0),[tx,th]=(0,l.useState)([]),tg=(0,l.useMemo)(()=>{var e,t,r;return(null==(e=eR.find(e=>e.selected))?void 0:e.projectRoot)||(null==(t=eR.find(e=>e.isCurrent))?void 0:t.projectRoot)||(null==(r=eR[0])?void 0:r.projectRoot)||""},[eR]),[tv,tf]=(0,l.useState)([]),[tj,ty]=(0,l.useState)(null),[tw,tb]=(0,l.useState)(null),[tA,tk]=(0,l.useState)("templates"),[tS,tC]=(0,l.useState)(!1),[tN,tT]=(0,l.useState)("workflow"),[tI,tR]=(0,l.useState)(new Set),[tE,tM]=(0,l.useState)(!1),[tz,tD]=(0,l.useState)(!1),[t_,tF]=(0,l.useState)(null),tB=(0,l.useRef)(new Map),tP=(0,l.useRef)(!1),tq=(0,l.useRef)(""),tL=(0,l.useRef)(null),tW=(0,l.useRef)(0),tG=(0,l.useMemo)(()=>"activeGenDocId:".concat(tg||"default"),[tg]),tO=async()=>{try{eK((await (0,Z.cQ)(tg||void 0)).documents)}catch(e){eK([])}};(0,l.useEffect)(()=>{let e=()=>{en&&(tf(en.flowSteps),ty(en.activeFlowKey),eq(en.loading),en.documentId&&eV(en.documentId),en.draft&&eW(en.draft),void 0!==en.content&&eO(en.content))},t=en;return null==t||t.listeners.add(e),e(),()=>{null==t||t.listeners.delete(e)}},[]),(0,l.useEffect)(()=>{eB(!0),Promise.all([(0,Z.Dl)().then(e=>{var t,r;eA(e.templates),eS(null!=(r=null==(t=e.templates[0])?void 0:t.id)?r:"construction-organization-design")}),(0,Z.lv)().then(e=>{eN(e.roles),eI(e.configs)}),(0,Z.dx)().then(e=>eE(e))]).catch(()=>ej.error(ef("common.error"))).finally(()=>eB(!1))},[ej,ef]),(0,l.useEffect)(()=>{if(0===eb.length||!tg)return;let e=!1;return(async()=>{let t=await Promise.all(eb.map(async e=>{try{let{validation:t}=await (0,Z.SM)(e.id,tg);return[e.id,t]}catch(e){return null}}));if(e)return;let r={};for(let e of t)e&&(r[e[0]]=e[1]);to(r)})(),()=>{e=!0}},[eb,tg]),(0,l.useEffect)(()=>{tg&&(localStorage.removeItem("activeGenDocId"),tO())},[tg]),(0,l.useEffect)(()=>{if(0===eH.length)return;let e=localStorage.getItem(tG);if(!e)return;if(!eH.find(t=>t.id===e&&("generating"===t.status||"queued"===t.status)))return void localStorage.removeItem(tG);let t=setInterval(()=>{(async()=>{try{let{document:r}=await (0,Z.v7)(e,!1,tg||void 0);if(!r)return;await tO(),"generating"!==r.status&&"queued"!==r.status&&(localStorage.removeItem(tG),clearInterval(t))}catch(e){clearInterval(t)}})()},3e3);return()=>clearInterval(t)},[eH]);let tH=(0,l.useMemo)(()=>eb.find(e=>e.id===ek),[eb,ek]),tK=eT.map(e=>({label:e.name,value:e.id})),tU=Math.max(0,tv.findIndex(e=>e.key===tj)),tV=e=>{var t;return e?(null==(t=eC.find(t=>t.id===e))?void 0:t.name)||ex[e]||"未知角色":""},tX=e=>e.subtitle||e.roleName||tV(e.roleId)||em[e.type]||e.type,tQ=e=>{var t,r,s;return e.promptName||((t=e.promptId)?(null==(r=eR.find(e=>e.id===t))?void 0:r.projectName)||(null==(s=eC.find(e=>e.id===t))?void 0:s.name)||ex[t]||"未知提示词":"")},tJ=()=>{tW.current+=1,e$(""),e8(null),e4(null),tt([]),ts(!1),e1(!1),e6("idle")},tY=async e=>{eV(e.id),eS(e.templateId);let t=tZ(e.status);if(t||"failed"===e.status||"aborted"===e.status){tJ(),tb(e),eW(null),eO(""),eq(t),tT("workflow"),tC(!0);try{let{document:t}=await (0,Z.v7)(e.id,!1,e.projectRoot||tg||void 0);if(!t)throw Error("文档记录不存在");t2(t),tZ(t.status)?t3(t.id,t.projectRoot||e.projectRoot||tg||void 0):await tO()}catch(t){t2(e)}return}tT("editor"),tf([]),ty(null),tJ();try{let{document:t}=await (0,Z.v7)(e.id,!1,e.projectRoot||tg||void 0);if(!t)throw Error("文档记录不存在");eW(t.draft||null),eO(t.editedMarkdown||t.markdown),th(t.exportReports||[])}catch(e){ej.error(ef("common.error"))}tC(!0)},tZ=e=>"completed"!==e&&"completed_with_issues"!==e&&"warning"!==e&&"failed"!==e&&"aborted"!==e,t$=e=>{var t,r,s,l,a,n;return!!e&&("failed"===e.status||"aborted"===e.status||"completed_with_issues"===e.status||"warning"===e.status&&!!(null==(t=e.checkpointChapters)?void 0:t.length)&&/继续生成|重新生成|中断|卡住|未完成|门禁|阻断/u.test(e.error||(null==(r=e.warningIssues)?void 0:r.join(";"))||(null==(a=e.draft)||null==(l=a.exportGate)||null==(s=l.blockingIssues)?void 0:s.map(e=>e.message).join(";"))||"")||!!((null==(n=e.draft)?void 0:n.exportGate)&&!1===e.draft.exportGate.passed))},t0=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:eP;(null==en?void 0:en.loading)&&(en.flowSteps=e,en.activeFlowKey=t,en.loading=r,ei())},t1=e=>{var t,r,l,a;let n=e.executionStages||(null==(t=e.draft)?void 0:t.executionStages)||[];if(n.length>0){let t=n.map((t,r)=>{var l;let a,n=("failed"===e.status||"aborted"===e.status)&&"running"===t.status||"failed"===(a=t.status)?"error":"partial"===a?"warning":"running"===a?"process":"finish";return{key:"".concat(t.type,"-").concat(r),title:t.title||em[t.type]||t.type,subtitle:tX(t),description:t.message||"",status:n,icon:"role_binding"===(l=t.type)?(0,s.jsx)(N.A,{}):"knowledge_retrieval"===l?(0,s.jsx)(T.A,{}):"file_understanding"===l?(0,s.jsx)(I.A,{}):"fact_extraction"===l?(0,s.jsx)(R.A,{}):"chapter_generation"===l?(0,s.jsx)(E.A,{}):"llm_review"===l?(0,s.jsx)(z.A,{}):"validation"===l?(0,s.jsx)(M.A,{}):(0,s.jsx)(F.A,{}),subSteps:((e,t,r)=>{let s=Array.isArray(e.details)?e.details.filter(Boolean):[],l=e.progress?"".concat(e.progress.label||"进度",":").concat(e.progress.current,"/").concat(e.progress.total):"",a=[...l?[l]:[],...s];return 0===a.length?[{key:"stage-".concat(r),title:tQ(e)?"提示词:".concat(tQ(e)):tX(e),status:t}]:a.map((e,s)=>({key:"stage-".concat(r,"-").concat(s),title:e,status:"process"===t&&0===s?"process":"error"===t&&0===s?"error":"warning"===t?"warning":"process"===t?"finish":t}))})(t,n,r)}});("generating"===e.status||"queued"===e.status)&&t.length>0&&t.every(e=>"process"!==e.status)&&t.push({key:"finishing-".concat(t.length),title:"生成收尾中",subtitle:"",description:"章节已全部生成,正在执行全局一致性审查与质量校验。",status:"process",icon:(0,s.jsx)(P.A,{}),subSteps:[]});let o="generating"===e.status||"queued"===e.status?(null==(r=t.at(-1))?void 0:r.key)||"prepare":"failed"===e.status||"aborted"===e.status?(null==(l=t.find(e=>"error"===e.status))?void 0:l.key)||(null==(a=t.at(-1))?void 0:a.key)||"prepare":"done";return{steps:t,activeKey:o}}return{steps:[],activeKey:null}},t2=e=>{let t=e.executionStages||[],r="".concat(e.id,"|").concat(e.updatedAt,"|").concat(e.status,"|").concat(e.error||"","|").concat(t.length,"|").concat(t.map(e=>{var t,r,s,l;return"".concat(e.status,":").concat(null!=(s=null==(t=e.progress)?void 0:t.current)?s:0,"/").concat(null!=(l=null==(r=e.progress)?void 0:r.total)?l:0)}).join(","));if(tq.current===r)return;tq.current=r,tb(e);let{steps:s,activeKey:l}=t1(e);t6(s),tf(s),ty(l),eq(tZ(e.status)),t0(s,l,tZ(e.status)),("failed"===e.status||"aborted"===e.status)&&tT("workflow"),("completed"===e.status||"completed_with_issues"===e.status||"warning"===e.status)&&e.draft&&(eW(e.draft),eO(e.editedMarkdown||e.markdown),tT("editor"),tf([]),ty(null),th(e.exportReports||[]))},t6=e=>{let t=Date.now();for(let r of e){let e=tu.current.get(r.key);"process"!==r.status||e?("finish"===r.status||"error"===r.status||"warning"===r.status)&&e&&!e.endedAt&&tu.current.set(r.key,{...e,endedAt:t}):tu.current.set(r.key,{startedAt:t})}},t5=e=>{let t=Math.max(0,Math.round(e/1e3));if(t<60)return"".concat(t," 秒");let r=Math.floor(t/60);return r<60?"".concat(r," 分 ").concat(t%60," 秒"):"".concat(Math.floor(r/60)," 小时 ").concat(r%60," 分")},t8=e=>{let t=tB.current.get(e);t&&(clearInterval(t),tB.current.delete(e))},t3=(e,t)=>{t8(e);let r=setInterval(()=>{(async()=>{try{let{document:r}=await (0,Z.v7)(e,!0,t||tg||void 0);if(!r)return;t2(r),await tO(),tZ(r.status)||(t8(e),localStorage.removeItem(tG))}catch(e){}})()},2e3);tB.current.set(e,r)};(0,l.useEffect)(()=>()=>{for(let e of tB.current.values())clearInterval(e);tB.current.clear(),tL.current&&(clearTimeout(tL.current),tL.current=null)},[]),(0,l.useEffect)(()=>{if(!eP||!tj)return;let e=window.setInterval(()=>tf(e=>{let t=e.map(e=>{if(e.key!==tj||"process"!==e.status)return e;let t=e.subSteps.findIndex(e=>"process"===e.status),r=t<0?0:Math.min(t+1,e.subSteps.length-1);return{...e,subSteps:e.subSteps.map((e,t)=>t<r?{...e,status:"finish"}:t===r?{...e,status:"process"}:{...e,status:"wait"})}});return t0(t,tj),t}),1400);return()=>window.clearInterval(e)},[tj,eP]),(0,l.useEffect)(()=>{if(!eP)return;let e=window.setInterval(()=>tm(e=>e+1),1e3);return()=>window.clearInterval(e)},[eP]);let t4=async function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";e_(!0);try{let t=await (0,Z.Fi)(e,tg||void 0);ez(ep(t.nodes))}catch(e){ej.error("知识库文件加载失败")}finally{e_(!1)}},t7=async e=>{var t;let r=String(null!=(t=e.key)?t:"");if(r)try{let e=await (0,Z.Fi)(r,tg||void 0),t=ep(e.nodes),s=e=>e.map(e=>e.key===r?{...e,children:t}:e.children?{...e,children:s(e.children)}:e);ez(e=>s(e))}catch(e){ej.error("加载子文件夹失败")}},t9=e=>{let t=null!=e?e:{id:"tpl-".concat(Date.now()),name:"",description:"",category:"自定义",outputTitle:"",projectRoleConfigId:void 0,chapters:[],projectBindings:[]};ey.resetFields(),ey.setFieldsValue({...t,projectMaterialRoots:eu((t.projectBindings||[]).map(e=>e.materialRootPath).filter(Boolean))}),t4(),ta(!0)},re=async()=>{try{await ey.validateFields();let e=ey.getFieldsValue(!0),t=eu(e.projectMaterialRoots||[]).map(e=>({materialRootPath:e})),{projectMaterialRoots:r,...s}=e,l={...s,chapters:[],projectBindings:t},a=await (0,Z.l2)(l);eA(a.templates),eS(a.template.id),ta(!1),await tO(),ej.success(ef("common.success"))}catch(e){e instanceof Error&&ej.error(e.message)}},rt=async e=>{try{let t=await (0,Z.bV)(e);eA(t.templates),eS(t.template.id),ej.success(ef("common.success"))}catch(e){ej.error(ef("common.error"))}},rr=async e=>{try{var t,r;let s=await (0,Z.h0)(e);eA(s.templates),eS(null!=(r=null==(t=s.templates[0])?void 0:t.id)?r:""),ej.success(ef("common.success"))}catch(e){ej.error(ef("common.error"))}},rs=async e=>{tF(e),eS(e),eV(null),eW(null),eO(""),tJ(),tT("workflow"),tC(!0),tk("drafts"),eq(!0),ty("prepare"),tf([{key:"prepare",title:"正在准备运行模板",description:"正在校验模板绑定的项目资料包、提示词配置和资料索引,校验通过后会自动开始生成。",status:"process",icon:(0,s.jsx)(P.A,{}),subSteps:[{key:"validate",title:"模板运行前检查",status:"process"},{key:"start",title:"准备生成任务",status:"wait"}]}]);try{let{validation:t}=await (0,Z.SM)(e,tg||void 0);to(r=>({...r,[e]:t}));let r=t.issues.filter(e=>"error"===e.level);if(r.length>0){ro.current=!0,eq(!1),ty("prepare"),tf([{key:"prepare",title:"模板运行前检查未通过",description:r.map(e=>e.message).join("\n"),status:"error",icon:(0,s.jsx)(W.A,{}),subSteps:[{key:"validate",title:"模板运行前检查",status:"error"},{key:"start",title:"准备生成任务",status:"wait"}]}]),ej.warning("模板运行前检查未通过,请先处理阻断项");return}t.issues.length>0&&ej.warning("模板存在非阻断警告,已继续运行"),tf([{key:"prepare",title:"模板检查通过,正在创建生成任务",description:"已确认模板绑定资源可用,正在启动后台生成任务。",status:"process",icon:(0,s.jsx)(P.A,{}),subSteps:[{key:"validate",title:"模板运行前检查",status:"finish"},{key:"start",title:"准备生成任务",status:"process"}]}]),await rn(e)}catch(t){ro.current=!0;let e=t instanceof Error?t.message:"模板运行前检查失败";eq(!1),tf([{key:"prepare",title:"模板运行准备失败",description:e,status:"error",icon:(0,s.jsx)(W.A,{}),subSteps:[{key:"validate",title:"模板运行前检查",status:"error"},{key:"start",title:"准备生成任务",status:"wait"}]}]),ej.error(e)}finally{tF(t=>t===e?null:t)}},rl=async e=>{try{await (0,Z.QG)(e.id,e.projectRoot||tg||void 0),eU===e.id&&(eV(null),eW(null),eO("")),await tO(),ej.success(ef("common.success"))}catch(e){ej.error(ef("common.error"))}},ra=async(e,t)=>{let r=Date.now(),s=0,l=Date.now(),a=null,n=0;for(;;){let o,i;if(null==t?void 0:t.aborted)throw Error("用户中止");let c=new AbortController;t&&(t.pollController=c);try{let t=await (0,Z.v7)(e,!0,tg||void 0,c.signal,s||void 0);o=t.document,i=t.status,n=0}catch(e){if((null==t?void 0:t.aborted)||e instanceof DOMException&&"AbortError"===e.name)throw Error("用户中止",{cause:e});if((n+=1)>=3)throw e instanceof Error?e:Error("生成进度获取失败");await new Promise(e=>window.setTimeout(e,2e3*n));continue}finally{(null==t?void 0:t.pollController)===c&&(t.pollController=void 0)}let d=o?"queued"===o.status:"queued"===i;if(d&&(l=Date.now(),Date.now()-r>216e5))throw Error("排队等待超时,请稍后刷新列表查看或取消后重新发起");if(!o){if(!d&&(Date.now()-(null!=a?a:r)>75e5||Date.now()-l>96e4))throw Error("生成任务疑似卡住,请点击继续生成或重新生成(后台任务可能仍在运行,稍后刷新可查看)");await new Promise(e=>window.setTimeout(e,1500));continue}if(t2(o),"generating"===o.status&&null===a&&(a=Date.now()),o.updatedAt!==s&&(s=o.updatedAt,l=Date.now()),("completed"===o.status||"completed_with_issues"===o.status||"warning"===o.status)&&o.draft)return o;if("warning"===o.status&&o.error&&/已中断/u.test(o.error))throw Error(o.error);if("failed"===o.status||"aborted"===o.status)throw Error(o.error||("aborted"===o.status?"生成已中止":"生成失败"));if(!d&&(Date.now()-(null!=a?a:r)>75e5||Date.now()-l>96e4))throw Error("生成任务疑似卡住,请点击继续生成或重新生成(后台任务可能仍在运行,稍后刷新可查看)");await new Promise(e=>window.setTimeout(e,1500))}},rn=async function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:ek;if(!e)return;if((null==en?void 0:en.aborted)&&(en=null),null==en?void 0:en.loading){if(tP.current)return;if(!tg)return void ej.error("未识别当前项目,请先选择或打开项目后再生成文件");tP.current=!0;try{let t=await (0,Z.OX)({templateId:e,projectRoot:tg});await tO(),ej.info(t.queuePosition?"已加入生成队列(第 ".concat(t.queuePosition," 位):前面任务完成后将自动开始"):"生成任务已创建")}catch(e){ej.error(e instanceof Error?e.message:"创建生成任务失败")}finally{tP.current=!1}return}if(!tg)return void ej.error("未识别当前项目,请先选择或打开项目后再生成文件");eq(!0);let t=tv.length>0?tv:[{key:"prepare",title:"正在创建生成任务",description:"系统正在创建后台生成任务,请稍候。",status:"process",icon:(0,s.jsx)(P.A,{}),subSteps:[{key:"start",title:"准备生成任务",status:"process"}]}],r=tj||"prepare";tf(t),ty(r);let l=(0,Z.OX)({templateId:e,projectRoot:tg});en={id:Date.now(),templateId:e,loading:!0,flowSteps:t,activeFlowKey:r,promise:l,listeners:new Set};let a=[];try{let e=await l;e.documentId&&(localStorage.setItem(tG,e.documentId),eV(e.documentId),(null==en?void 0:en.promise)===l&&(en.documentId=e.documentId)),await tO(),e.queuePosition&&ej.info("已加入生成队列(第 ".concat(e.queuePosition," 位):前面任务完成后将自动开始"));let t=e.documentId?await ra(e.documentId,(null==en?void 0:en.promise)===l?en:void 0):void 0,r=e.draft||(null==t?void 0:t.draft);if(!r)throw Error("生成结果为空");(e.documentId||(null==t?void 0:t.id))&&eV(e.documentId||t.id),a.forEach(e=>window.clearTimeout(e)),eW(r),eO((null==t?void 0:t.editedMarkdown)||(null==t?void 0:t.markdown)||r.markdown),(null==en?void 0:en.promise)===l&&(en.draft=r,en.content=(null==t?void 0:t.editedMarkdown)||(null==t?void 0:t.markdown)||r.markdown);let s=t||{id:e.documentId||"draft-".concat(Date.now()),templateId:ek,title:r.title,requirement:r.requirement,projectRoot:r.projectRoot||tg,projectId:r.projectId,markdown:r.markdown,status:r.validationIssues.some(e=>"error"===e.level||"warning"===e.level)||!r.exportGate.passed?"completed_with_issues":"completed",draft:r,executionStages:r.executionStages,assets:r.assets||[],createdAt:r.generatedAt,updatedAt:Date.now()},{steps:n}=t1(s);tf(n),t0(n,"done",!1),ty("done"),(null==en?void 0:en.promise)===l&&(en.activeFlowKey="done",en.loading=!1,ei(),en=null),localStorage.removeItem(tG),await tO(),ej.success(ef("common.success")),window.setTimeout(()=>{var e;return null==(e=ew.current)?void 0:e.scrollIntoView({behavior:"smooth",block:"start"})},200)}catch(s){localStorage.removeItem(tG);let e=s instanceof Error?s.message:ef("common.error"),t=eo;eo=!1;let r=!t&&"用户中止"===e;t||tf(t=>{let r=t.map(t=>"process"===t.status?{...t,status:"error",description:e,subSteps:((e,t)=>{if("wait"===t)return e.subSteps.map(e=>({...e,status:"wait"}));if("finish"===t)return e.subSteps.map(e=>({...e,status:"finish"}));if("error"===t)return e.subSteps.map((e,t)=>({...e,status:0===t?"error":e.status}));let r=e.subSteps.findIndex(e=>"wait"===e.status);return e.subSteps.map((e,t)=>t<r||-1===r?{...e,status:"finish"}:t===r?{...e,status:"process"}:e)})(t,"error")}:t);return t0(r,tj,!1),r}),(null==en?void 0:en.promise)===l&&(en.loading=!1,en.error=e,ei(),en=null),await tO().catch(()=>void 0),r?ej.warning("生成任务已被中止(可能来自其他窗口):可在列表中点击「继续生成」恢复"):t||ej.error(e)}finally{a.forEach(e=>window.clearTimeout(e)),eq(!1),eo=!1,(null==en?void 0:en.promise)===l&&(en.loading=!1,ei())}},ro=(0,l.useRef)(!1);(0,l.useEffect)(()=>(tL.current&&(clearTimeout(tL.current),tL.current=null),!tS||"workflow"!==tN||t_||eU||ro.current||(null==en?void 0:en.loading)||null==tH||!tH.projectRoleConfigId||(ro.current=!0,tL.current=setTimeout(()=>{tL.current=null,tS&&"workflow"===tN&&!eU&&ek==ek&&rn()},300)),tS||(ro.current=!1),()=>{tL.current&&(clearTimeout(tL.current),tL.current=null)}),[tS,tN,t_,eU,tH,ek]);let ri=async e=>{try{eV(e.id),eS(e.templateId),tT("workflow"),tC(!0),eq(!0);let t=await (0,Z.UQ)(e.id,e.projectRoot||tg||void 0);localStorage.setItem(tG,t.documentId),await tO();let r=await ra(t.documentId);r.draft&&(eW(r.draft),eO(r.editedMarkdown||r.markdown||r.draft.markdown),tT("editor")),localStorage.removeItem(tG),await tO(),ej.success("已继续生成并完成")}catch(e){ej.error(e instanceof Error?e.message:"继续生成失败")}finally{eq(!1)}},rc=async e=>{if((null==en?void 0:en.loading)&&en.documentId===e.id){var t;eo=!0,en.aborted=!0,null==(t=en.pollController)||t.abort(),en.loading=!1,en.error="用户中止",ei(),en=null,eq(!1)}localStorage.removeItem(tG),t8(e.id);try{await (0,Z.r)(e.id,e.projectRoot||tg||void 0),ej.success("queued"===e.status?"已取消排队任务":"已中止生成任务")}catch(e){ej.info("任务已不在运行,已刷新状态")}finally{await tO(),eU===e.id&&(eV(null),tb(null),eW(null),eO(""))}},rd=async(e,t,r)=>{let{blob:s,filename:l,notDeliverable:a,gateIssues:n}=await (0,Z.UE)(e);((e,t,r)=>{let s=new Blob([e],{type:r}),l=URL.createObjectURL(s),a=document.createElement("a");a.href=l,a.download=t,a.target="_self",a.rel="noopener",a.style.display="none",document.body.appendChild(a),a.dispatchEvent(new MouseEvent("click",{bubbles:!0,cancelable:!0,view:window})),a.remove(),window.setTimeout(()=>URL.revokeObjectURL(l),1e3)})(s,l||t,r),eY(a?{at:Date.now(),count:n.length,issues:n}:null)},ru=async(e,t)=>{let r=e instanceof Error?e.message:ef("common.error");if(!/导出门禁未通过|EXPORT_GATE_BLOCKED/u.test(r))return void ej.error(r);if(await new Promise(e=>{n.A.confirm({title:ef("documents.exportGateBlockedTitle"),content:"".concat(r,"\n\n").concat(ef("documents.nonDeliverableExportConfirm")),okText:ef("documents.exportAnywayNonDeliverable"),okButtonProps:{danger:!0},cancelText:ef("common.cancel"),onOk:()=>e(!0),onCancel:()=>e(!1)})}))try{await t()}catch(e){ej.error(e instanceof Error?e.message:ef("common.error"))}},rp=async e=>{if(!eL)return;eQ(e);let t={markdown:"text/markdown;charset=utf-8",html:"text/html;charset=utf-8",pdf:"application/pdf",docx:"application/vnd.openxmlformats-officedocument.wordprocessingml.document"},r="markdown"===e?"md":e,s={documentId:eU||void 0,title:eL.title,markdown:eG,format:e,exportGate:eL.exportGate,useClientMarkdown:!0,projectRoot:eL.projectRoot||tg||void 0};try{if(await rd(s,"".concat(eL.title,".").concat(r),t[e]),eU)try{let{document:e}=await (0,Z.v7)(eU,!1,eL.projectRoot||tg||void 0);e&&th(e.exportReports||[])}catch(e){}}catch(l){await ru(l,async()=>{await rd({...s,allowNonDeliverable:!0},"".concat(eL.title,".").concat(r),t[e])})}finally{eQ(null)}},rm=()=>{var e;return!!((null==tw?void 0:tw.editedMarkdown)||(null==tw?void 0:tw.markdown)||(null==tw||null==(e=tw.draft)?void 0:e.markdown)||"").trim()},rx=async e=>{var t;if(!tw)return;let r=tw.editedMarkdown||tw.markdown||(null==(t=tw.draft)?void 0:t.markdown)||"";if(!r.trim())return void ej.warning("该记录暂无可导出的正文内容");eQ(e);try{let t={markdown:"text/markdown;charset=utf-8",html:"text/html;charset=utf-8",pdf:"application/pdf",docx:"application/vnd.openxmlformats-officedocument.wordprocessingml.document"},s="markdown"===e?"md":e,l={documentId:tw.id,title:tw.title,markdown:r,format:e,useClientMarkdown:!0,projectRoot:tw.projectRoot||tg||void 0};try{await rd(l,"".concat(tw.title,".").concat(s),t[e])}catch(r){await ru(r,async()=>{await rd({...l,allowNonDeliverable:!0},"".concat(tw.title,".").concat(s),t[e])})}}finally{eQ(null)}},rh=async()=>{if(eL)try{if(eU)await (0,Z.a6)(eU,{editedMarkdown:eG,markdown:eG},eL.projectRoot||tg||void 0);else{let e=await (0,Z.Af)({...eL,markdown:eG});eW(e.draft)}await tO(),ej.success(ef("common.success"))}catch(e){ej.error(ef("common.error"))}},rg=(e,t)=>{tt(r=>[{id:"".concat(Date.now()),content:e,prompt:t,createdAt:Date.now()},...r].slice(0,12))},rv=function(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];e&&e$(""),e8(null),e4(null),e9({start:0,end:0})},rf=(e,t)=>{var r,s;return{title:(null==eL?void 0:eL.title)||"未命名文档",markdown:t,instruction:e,facts:null==eL||null==(r=eL.structuredFacts)?void 0:r.map(e=>"".concat(e.key,": ").concat(e.value)),chapters:null==eL||null==(s=eL.chapters)?void 0:s.map(e=>e.title),...(()=>{let e=e7.start,t=e7.end;return t>e?{selection:{start:e,end:t,text:eG.slice(e,t)},cursorOffset:e}:{cursorOffset:e}})()}},rj=async()=>{let e=eZ.trim();if(!eL||!e||e0)return;let t=tW.current+1;tW.current=t,e1(!0),e6("planning"),e4(null);try{let r=await (0,Z.Gi)({mode:"plan",...rf(e,eG)});if(tW.current!==t||eU!=eU)return;if(!r.plan)throw Error("AI 未返回修改计划");e8(r.plan)}catch(e){tW.current===t&&ej.error(e instanceof Error?e.message:ef("common.error"))}finally{tW.current===t&&(e1(!1),e6("idle"))}},ry=async e=>{let t=eZ.trim();if(!eL||!t||e0)return;let r=tW.current+1;tW.current=r,e1(!0),e6("applying");try{let s=await (0,Z.Gi)({mode:"apply",...rf(t,eG),plan:e});if(tW.current!==r||eU!=eU)return;if(!s.markdown)throw Error("AI 未返回修改结果");e4({plan:s.plan||e,markdown:s.markdown,beforeSnippet:s.beforeSnippet,afterSnippet:s.afterSnippet,summary:s.summary,changedChars:s.changedChars,prompt:t,before:eG})}catch(e){tW.current===r&&ej.error(e instanceof Error?e.message:ef("common.error"))}finally{tW.current===r&&(e1(!1),e6("idle"))}};if(eF)return(0,s.jsxs)("div",{className:"space-y-5 animateFadeIn",children:[(0,s.jsx)(m.A,{active:!0,title:!0,paragraph:{rows:1}}),(0,s.jsx)(m.A,{active:!0,paragraph:{rows:2}}),(0,s.jsx)(m.A,{active:!0,paragraph:{rows:8}})]});let rw="workflow"===tN?"工作流:".concat((null==tH?void 0:tH.name)||"选择模板"):"编辑:".concat((null==eL?void 0:eL.title)||(null==tH?void 0:tH.outputTitle)||"文档");return(0,s.jsxs)("div",{className:"space-y-5 animateFadeIn",children:[(0,s.jsxs)("div",{className:"flex flex-col sm:flex-row sm:items-end justify-between gap-4 pb-6 mb-2",children:[(0,s.jsxs)("div",{children:[(0,s.jsxs)("h1",{className:"text-3xl font-extrabold tracking-tight text-[var(--colorText)] mb-2.5 flex items-center gap-2",children:[(0,s.jsx)(N.A,{className:"text-[var(--colorAccent)]"}),ef("documents.title")]}),(0,s.jsx)("p",{className:"text-sm text-[var(--colorTextSecondary)]",children:ef("documents.description")})]}),(0,s.jsx)(x.Ay,{type:"primary",icon:(0,s.jsx)(H.A,{}),onClick:()=>t9(),className:"shadow-none rounded-lg",children:ef("documents.newTemplate")})]}),(0,s.jsxs)("div",{className:"bg-[var(--colorBgContainer)] rounded-2xl shadow-sm overflow-hidden",children:[(0,s.jsx)(h.A,{items:[{key:"templates",label:(0,s.jsxs)("span",{className:"px-4",children:["模板库 ",(0,s.jsx)(p.A,{className:"ml-2 border-0 bg-[var(--colorFillAlter)]",children:eb.length})]})},{key:"drafts",label:(0,s.jsxs)("span",{className:"px-4",children:["生成记录 ",(0,s.jsx)(p.A,{className:"ml-2 border-0 bg-[var(--colorFillAlter)]",children:eH.length})]})}],activeKey:tA,onChange:tk,className:"documents-tabs",size:"large",tabBarStyle:{margin:0,padding:"0 16px",background:"var(--colorBgHover)",borderBottom:"1px solid var(--borderColor)"}}),(0,s.jsx)("div",{className:"p-4 bg-[var(--colorFillAlter)] min-h-[500px]",children:"templates"===tA?0===eb.length?(0,s.jsx)("div",{className:"py-32 text-center border border-dashed border-[var(--borderColor)] rounded-2xl bg-[var(--colorBgContainer)]",children:(0,s.jsx)(g.A,{description:(0,s.jsx)("span",{className:"text-[var(--colorTextSecondary)]",children:ef("common.noData")})})}):(0,s.jsx)("div",{className:"grid grid-cols-1 gap-4",children:eb.map(e=>(0,s.jsxs)("div",{ref:t=>{td.current[e.id]=t},className:"group flex items-center p-4 rounded-2xl transition-all cursor-pointer ".concat(ek===e.id?"bg-[var(--colorBgSelected)] shadow-md":"bg-[var(--colorBgContainer)] hover:bg-[var(--colorBgHover)] shadow-sm hover:shadow-md"),onClick:()=>eS(e.id),children:[(0,s.jsxs)("div",{className:"flex-1 min-w-0 pr-4",children:[(0,s.jsxs)("div",{className:"flex items-center gap-3 mb-2 min-w-0",children:[function(e,t){let r=ed[e]||(0,s.jsx)(F.A,{});return(0,s.jsx)("span",{style:{color:t?"var(--colorAccent)":"var(--colorTextSecondary)",fontSize:16,marginTop:2,flexShrink:0},children:r})}(e.category,ek===e.id),(0,s.jsx)("span",{className:"font-bold text-base text-[var(--colorText)] truncate",children:e.name}),ek===e.id&&(0,s.jsx)(p.A,{color:"blue",className:"border-0 m-0 shrink-0",children:"当前选中"}),(0,s.jsx)(p.A,{className:"border-0 bg-[var(--colorFillSecondary)] m-0 shrink-0",children:e.category})]}),e.description&&(0,s.jsx)("div",{className:"text-sm text-[var(--colorTextSecondary)] line-clamp-2 leading-relaxed mb-3",children:e.description}),(e=>{let t=tn[e.id];if(!t)return null;let r=t.issues.filter(e=>"error"===e.level),l=t.issues.filter(e=>"warning"===e.level),a=ti===e.id,n=t.roleDiagnostics||[],o=new Map;for(let e of t.promptDiagnostics){let t=o.get(e.roleId)||[];t.push(e),o.set(e.roleId,t)}let i=t.strategyPreview,c=(null==i?void 0:i.mode)==="strict"?"error":(null==i?void 0:i.mode)==="fast"?"blue":(null==i?void 0:i.mode)==="longform"?"purple":"green";return(0,s.jsxs)("div",{onClick:e=>e.stopPropagation(),className:"flex flex-col items-start gap-2 w-full",children:[(0,s.jsxs)("div",{className:"inline-flex items-center gap-2 p-1.5 px-3 rounded-lg border text-xs ".concat(r.length?"border-red-200 bg-red-50/50":l.length?"border-yellow-200 bg-yellow-50/50":"border-green-200 bg-green-50/50"),children:[(0,s.jsx)("span",{className:"font-medium",children:r.length?"检查未通过(".concat(r.length," 项阻断)"):l.length?"存在警告(".concat(l.length," 项)"):"检查通过"}),(0,s.jsx)("span",{className:"text-[var(--colorTextTertiary)]",children:"|"}),(0,s.jsxs)("span",{children:["项目资料 ",t.fileDiagnostics.length]}),(0,s.jsxs)("span",{children:["提示词 ",t.promptDiagnostics.length]}),(0,s.jsxs)("span",{children:["角色链路 ",n.length]}),i&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"text-[var(--colorTextTertiary)]",children:"|"}),(0,s.jsxs)(p.A,{color:c,className:"border-0 m-0",children:[i.mode," 策略预估"]})]}),!r.length&&l.length>0&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"text-[var(--colorTextTertiary)]",children:"|"}),(0,s.jsx)("span",{className:"text-blue-500 cursor-pointer hover:underline",onClick:()=>{rs(e.id)},children:"忽略警告并运行"})]}),(0,s.jsxs)("span",{className:"text-blue-500 cursor-pointer hover:underline",onClick:()=>tc(a?null:e.id),children:[a?(0,s.jsx)(G.A,{}):(0,s.jsx)(O.A,{}),a?"收起体检":"体检报告"]})]}),a&&(0,s.jsxs)("div",{className:"w-full flex flex-col gap-3 rounded-xl border border-[var(--borderColor)] bg-[var(--colorBgContainer)] p-3",children:[r.length>0&&(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,s.jsxs)("span",{className:"text-xs font-bold text-[var(--colorError)]",children:["阻断项(",r.length,")— 必须修复后才能运行"]}),r.map(t=>{var r;let l=(r=t.message,/资料包|项目资料|知识库|索引/u.test(r)?{label:"配置模板",onClick:()=>t9(e)}:/提示词|绑定/u.test(r)?{label:"提示词库",href:"/prompt"}:/项目角色配置/u.test(r)?{label:"角色配置",href:"/document-roles"}:void 0);return(0,s.jsxs)("div",{className:"flex items-start justify-between gap-2 rounded-lg border border-red-200 bg-red-50/40 px-2.5 py-1.5 text-xs",children:[(0,s.jsx)("span",{className:"text-[var(--colorText)]",children:t.message}),l&&(l.href?(0,s.jsxs)("a",{className:"shrink-0 text-red-500 hover:underline",href:l.href,children:[l.label," ›"]}):(0,s.jsxs)("span",{className:"shrink-0 text-red-500 cursor-pointer hover:underline",onClick:l.onClick,children:[l.label," ›"]}))]},t.message)})]}),l.length>0&&(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,s.jsxs)("span",{className:"text-xs font-bold text-[var(--colorWarning)]",children:["警告项(",l.length,")— 可忽略并继续运行"]}),l.map(e=>(0,s.jsx)("div",{className:"rounded-lg border border-yellow-200 bg-yellow-50/40 px-2.5 py-1.5 text-xs text-[var(--colorTextSecondary)]",children:e.message},e.message))]}),(0,s.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,s.jsxs)("span",{className:"text-xs font-bold text-[var(--colorText)]",children:["绑定链路(",t.configName||"未绑定角色配置",")"]}),0===n.length?(0,s.jsx)("span",{className:"text-xs text-[var(--colorTextTertiary)]",children:"未配置提示词角色链路"}):(0,s.jsx)("div",{className:"flex flex-col gap-1.5",children:n.map(r=>{let l=o.get(r.roleId)||[];return(0,s.jsxs)("div",{className:"flex items-center gap-1.5 text-xs flex-wrap rounded-lg border border-[var(--borderColor)] bg-[var(--colorFillQuaternary)] px-2 py-1",children:[(0,s.jsx)("span",{className:"text-[var(--colorTextSecondary)]",children:e.name}),(0,s.jsx)("span",{className:"text-[var(--colorTextTertiary)]",children:"→"}),(0,s.jsx)("span",{className:"text-[var(--colorTextSecondary)]",children:t.configName||"角色配置"}),(0,s.jsx)("span",{className:"text-[var(--colorTextTertiary)]",children:"→"}),(0,s.jsx)("span",{className:"ok"===r.status?"text-[var(--colorText)]":"text-[var(--colorError)] font-medium",children:r.roleName||r.roleId}),(0,s.jsx)("span",{className:"text-[var(--colorTextTertiary)]",children:"→"}),0===l.length?(0,s.jsx)(p.A,{color:"error",className:"border-0 m-0",children:"missing_resource"===r.status?"角色未绑定资源":"role_missing"===r.status?"角色不存在":"未绑定提示词"}):(0,s.jsx)("span",{className:"flex items-center gap-1 flex-wrap",children:l.map(e=>(0,s.jsx)(p.A,{color:e.exists&&e.contentLength>0?"success":e.exists?"warning":"error",className:"border-0 m-0",title:e.contentPreview||e.promptId,children:e.exists?"".concat(e.promptTitle||e.promptId," ").concat(e.contentLength,"字符"):"".concat(e.promptId," 已删除")},e.promptId))})]},r.roleId)})})]}),i&&(0,s.jsxs)("div",{className:"flex flex-col gap-1 rounded-lg border border-blue-200 bg-blue-50/40 px-2.5 py-2 text-xs",children:[(0,s.jsx)("span",{className:"font-bold text-[var(--colorText)]",children:"生成策略预估(生成前体检)"}),(0,s.jsxs)("span",{className:"text-[var(--colorTextSecondary)]",children:["约 ",i.chapterCount," 章 / 目标 ",i.targetWords>=1e4?"".concat((i.targetWords/1e4).toFixed(1)," 万字"):"".concat(i.targetWords," 字"),";全章节并行(",i.chapterConcurrency," 章同批);审查流水线 ",i.reviewConcurrency," 路;每章证据预算 ",Math.round(i.evidenceFloorChars/1e3),"k-",Math.round(i.evidenceCeilingChars/1e3),"k 字符;修复轮次预算 ",i.repairRoundBudget," 轮",i.globalReviewSamplingRate<1?";全局审查抽检 ".concat(Math.round(100*i.globalReviewSamplingRate),"%"):""]}),i.triggers.map(e=>(0,s.jsxs)("span",{className:"text-[var(--colorTextTertiary)]",children:["\xb7 ",e]},e))]})]})]})})(e)]}),(0,s.jsxs)("div",{className:"flex shrink-0 flex-nowrap items-center gap-2 whitespace-nowrap transition-opacity ".concat(ek===e.id?"opacity-100":"opacity-0 group-hover:opacity-100"),onClick:e=>e.stopPropagation(),children:[(0,s.jsx)(x.Ay,{size:"small",onClick:t=>{t.stopPropagation(),t9(e)},className:"rounded-md",children:"配置"}),(0,s.jsx)(x.Ay,{size:"small",icon:(0,s.jsx)(K.A,{}),onClick:t=>{t.stopPropagation(),rt(e.id)},className:"rounded-md"}),(0,s.jsx)(es,{title:ef("documents.deleteTemplateConfirm"),onConfirm:t=>{null==t||t.stopPropagation(),rr(e.id)},children:(0,s.jsx)(x.Ay,{size:"small",danger:!0,icon:(0,s.jsx)(L.A,{}),onClick:e=>e.stopPropagation(),className:"rounded-md"})}),(()=>{var t;let r=tn[e.id],l=null!=(t=null==r?void 0:r.issues.filter(e=>"error"===e.level).length)?t:0;return l>0?(0,s.jsxs)(x.Ay,{size:"small",danger:!0,icon:(0,s.jsx)(U.A,{}),disabled:!!t_&&t_!==e.id,onClick:t=>{var r;t.stopPropagation(),eS(r=e.id),tc(r),window.setTimeout(()=>{var e;return null==(e=td.current[r])?void 0:e.scrollIntoView({behavior:"smooth",block:"center"})},50)},className:"min-w-[108px] rounded-md justify-center",children:["先修复 ",l," 个问题"]}):(0,s.jsx)(x.Ay,{size:"small",type:"primary",icon:t_===e.id?(0,s.jsx)(P.A,{}):(0,s.jsx)(V.A,{}),loading:t_===e.id,disabled:!!t_&&t_!==e.id,onClick:t=>{t.stopPropagation(),rs(e.id)},className:"min-w-[72px] rounded-md justify-center",children:t_===e.id?"准备中":"运行"})})()]})]},e.id))}):0===eH.length?(0,s.jsx)("div",{className:"py-32 text-center border border-dashed border-[var(--borderColor)] rounded-2xl bg-[var(--colorBgContainer)]",children:(0,s.jsx)(g.A,{description:(0,s.jsx)("span",{className:"text-[var(--colorTextSecondary)]",children:ef("common.noData")})})}):(0,s.jsx)("div",{className:"grid grid-cols-1 gap-4",children:eH.slice(0,15).map((e,t)=>{var r,l,a,n,o,i,c,d,u,m;let h,g;return(0,s.jsxs)("div",{className:"group flex items-center gap-4 p-4 rounded-2xl transition-all cursor-pointer ".concat(eU===e.id?"bg-[var(--colorBgSelected)] shadow-md":"bg-[var(--colorBgContainer)] hover:bg-[var(--colorBgHover)] shadow-sm hover:shadow-md"),onClick:()=>{tY(e)},children:[(0,s.jsx)("div",{className:"mt-1",children:"completed"===e.status?(0,s.jsx)(q.A,{className:"text-xl text-[var(--colorOk)]"}):"failed"===e.status||"aborted"===e.status?(0,s.jsx)(W.A,{className:"text-xl text-[var(--colorDanger)]"}):"warning"===e.status||"completed_with_issues"===e.status?(0,s.jsx)(M.A,{className:"text-xl text-[var(--colorWarning)]"}):(0,s.jsx)(X.A,{spin:!0,className:"text-xl text-blue-500"})}),(0,s.jsxs)("div",{className:"flex-1 min-w-0 pr-4",children:[(0,s.jsxs)("div",{className:"flex items-center gap-3 mb-2",children:[(0,s.jsx)("span",{className:"font-bold text-base text-[var(--colorText)] truncate",children:e.title}),(0,s.jsxs)(p.A,{className:"border-0 bg-[var(--colorFillSecondary)] m-0 shrink-0",children:["#",t+1]}),(0,s.jsxs)(p.A,{color:"completed"===(h=e.status)?"success":"completed_with_issues"===h?"error":"warning"===h?"warning":"failed"===h?"error":"aborted"===h||"queued"===h?"default":"processing",className:"border-0 m-0 shrink-0",children:["completed"===(g=e.status)?"已完成":"completed_with_issues"===g?"已产出\xb7未达交付标准":"warning"===g?"需复核":"failed"===g?"失败":"aborted"===g?"已中止":"queued"===g?"排队中":"生成中","queued"===e.status&&e.queuePosition?"(第 ".concat(e.queuePosition," 位)"):""]})]}),(0,s.jsxs)("div",{className:"flex flex-wrap gap-x-4 gap-y-2 text-xs text-[var(--colorTextSecondary)] mb-3",children:[(0,s.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,s.jsx)(Q.A,{})," ",new Date(e.updatedAt).toLocaleString()]}),(0,s.jsx)("span",{className:"text-[var(--colorTextTertiary)]",children:"|"}),(0,s.jsxs)("span",{children:["耗时 ",(e=>{let t=Math.max(0,Math.round(((e.completedAt||e.updatedAt)-e.createdAt)/1e3));if(t<60)return"".concat(t," 秒");let r=Math.floor(t/60),s=t%60;if(r<60)return s?"".concat(r," 分 ").concat(s," 秒"):"".concat(r," 分");let l=Math.floor(r/60),a=r%60;return a?"".concat(l," 小时 ").concat(a," 分"):"".concat(l," 小时")})(e)]}),e.partialChapters&&e.partialChapters.length>0&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("span",{className:"text-[var(--colorTextTertiary)]",children:"|"}),(0,s.jsxs)("span",{children:["进度 ",e.partialChapters.filter(e=>"completed"===e.status).length,"/",e.partialChapters.length," 章"]}),(0,s.jsx)("span",{className:"text-[var(--colorTextTertiary)]",children:"|"}),(0,s.jsxs)("span",{children:["共 ",e.partialChapters.reduce((e,t)=>e+t.chars,0).toLocaleString()," 字"]})]})]}),("warning"===e.status||"failed"===e.status||"aborted"===e.status||"completed_with_issues"===e.status)&&(0,s.jsxs)("div",{className:"inline-flex items-center gap-2 p-1.5 px-3 rounded-lg border text-xs ".concat("failed"===e.status||"aborted"===e.status?"border-red-200 bg-red-50/50":"border-yellow-200 bg-yellow-50/50"),children:[(0,s.jsx)("span",{className:"font-medium",children:"failed"===e.status?(null==(l=e.draft)||null==(r=l.exportGate)?void 0:r.passed)===!1?"门禁未通过":"生成失败":"aborted"===e.status?"已中止":"需复核"}),(0,s.jsx)("span",{className:"text-[var(--colorTextTertiary)]",children:"|"}),(0,s.jsx)("span",{className:"truncate max-w-[400px]",children:e.error||(null==(a=e.warningIssues)?void 0:a[0])||(null==(o=e.draft)||null==(n=o.validationIssues.find(e=>"error"===e.level||"warning"===e.level))?void 0:n.message)||(null==(d=e.draft)||null==(c=d.exportGate)||null==(i=c.checklist.find(e=>!e.passed))?void 0:i.label)||"需复核"})]})]}),(0,s.jsxs)("div",{className:"flex shrink-0 flex-nowrap items-center gap-2 whitespace-nowrap transition-opacity ".concat(eU===e.id?"opacity-100":"opacity-0 group-hover:opacity-100"),onClick:e=>e.stopPropagation(),children:[(0,s.jsx)(x.Ay,{size:"small",type:"primary",icon:tZ(e.status)?(0,s.jsx)(X.A,{spin:!0}):(0,s.jsx)(V.A,{}),onClick:t=>{t.stopPropagation(),tY(e)},className:"min-w-[72px] rounded-md justify-center",children:"打开"}),tZ(e.status)&&(0,s.jsx)(es,{title:"queued"===e.status?"确定取消此排队任务?":"确定中止此生成任务?",onConfirm:t=>{null==t||t.stopPropagation(),rc(e)},children:(0,s.jsx)(x.Ay,{size:"small",danger:!0,onClick:e=>e.stopPropagation(),className:"rounded-md",children:"queued"===e.status?"取消":"中止"})}),("failed"===e.status||"aborted"===e.status||"warning"===e.status&&!!(null==(u=e.checkpointChapters)?void 0:u.length)&&/继续生成|重新生成|中断|卡住|未完成/u.test(e.error||(null==(m=e.warningIssues)?void 0:m.join(";"))||""))&&(0,s.jsx)(x.Ay,{size:"small",onClick:t=>{t.stopPropagation(),ri(e)},className:"rounded-md",children:"继续"}),(0,s.jsx)(es,{title:"确认删除?",onConfirm:t=>{null==t||t.stopPropagation(),rl(e)},children:(0,s.jsx)(x.Ay,{size:"small",danger:!0,icon:(0,s.jsx)(L.A,{}),onClick:e=>e.stopPropagation(),className:"rounded-md"})})]})]},e.id)})})})]}),(0,s.jsx)(v.A,{title:rw,open:tS,onClose:()=>{for(let e of(tC(!1),tB.current.values()))clearInterval(e);tB.current.clear()},size:"large",mask:{closable:!1},style:{borderRadius:"12px 0 0 12px"},styles:{body:{padding:"16px 24px"},header:{borderRadius:"12px 0 0 0",borderBottom:"1px solid var(--colorBorderSecondary)"}},extra:eL?(0,s.jsxs)(c.A,{wrap:!0,children:[t$(tw)&&(0,s.jsx)(x.Ay,{icon:(0,s.jsx)(V.A,{}),disabled:e0||eP,onClick:()=>{tw&&ri(tw)},children:"继续生成"}),(0,s.jsx)(x.Ay,{icon:(0,s.jsx)(J.A,{}),disabled:e0,onClick:()=>{rh()},children:ef("documents.saveDraft")}),(0,s.jsx)(x.Ay,{icon:(0,s.jsx)(Y.A,{}),disabled:e0,loading:"markdown"===eX,onClick:()=>{rp("markdown")},children:"MD"}),(0,s.jsx)(x.Ay,{disabled:e0,loading:"html"===eX,onClick:()=>{rp("html")},children:"HTML"}),(0,s.jsx)(x.Ay,{disabled:e0,loading:"docx"===eX,onClick:()=>{rp("docx")},children:"DOCX"}),(0,s.jsx)(x.Ay,{type:"primary",disabled:e0,loading:"pdf"===eX,onClick:()=>{rp("pdf")},children:"PDF"})]}):t$(tw)||rm()||eP&&"workflow"===tN?(0,s.jsxs)(c.A,{wrap:!0,children:[t$(tw)&&(0,s.jsx)(x.Ay,{type:"primary",icon:(0,s.jsx)(V.A,{}),loading:eP,onClick:()=>{tw&&ri(tw)},children:"继续生成"}),rm()&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(x.Ay,{icon:(0,s.jsx)(Y.A,{}),loading:"markdown"===eX,onClick:()=>{rx("markdown")},children:"MD"}),(0,s.jsx)(x.Ay,{loading:"html"===eX,onClick:()=>{rx("html")},children:"HTML"}),(0,s.jsx)(x.Ay,{loading:"docx"===eX,onClick:()=>{rx("docx")},children:"DOCX"}),(0,s.jsx)(x.Ay,{type:"primary",loading:"pdf"===eX,onClick:()=>{rx("pdf")},children:"PDF"})]}),eP&&"workflow"===tN&&(0,s.jsx)(x.Ay,{danger:!0,onClick:()=>{(async()=>{if(en&&(eo=!0),eU&&await (0,Z.r)(eU,tg||void 0).catch(()=>void 0),en){var e;en.aborted=!0,null==(e=en.pollController)||e.abort(),en.loading=!1,en.error="用户中止",ei(),en=null}for(let e of(localStorage.removeItem(tG),tB.current.values()))clearInterval(e);tB.current.clear(),eq(!1),tf([]),ty(null),tC(!1),await tO(),ej.info("已中止生成任务")})()},children:"中止任务"})]}):void 0,children:(0,s.jsxs)(ea,{style:{width:"100%"},gap:16,children:[eJ&&(0,s.jsxs)(el,{type:"error",title:ef("documents.nonDeliverableExportTitle"),children:[(0,s.jsx)("div",{children:ef("documents.nonDeliverableExportHint")}),eJ.count>0&&(0,s.jsxs)("div",{style:{marginTop:4,whiteSpace:"pre-wrap"},children:["".concat(ef("documents.nonDeliverableExportIssues"),"(").concat(eJ.count,")"),eJ.issues.slice(0,5).map((e,t)=>(0,s.jsxs)("div",{children:["\xb7 ",e]},t)),eJ.count>5&&(0,s.jsx)("div",{children:ef("documents.nonDeliverableExportTruncated")})]})]}),"workflow"===tN&&tv.length>0&&(0,s.jsx)(ea,{gap:10,children:tv.map((e,t)=>{let r=tI.has(e.key),l=e.subSteps.length>8||e.description.length>240;return(0,s.jsxs)("div",{style:{display:"flex",gap:10,padding:10,border:"1px solid var(--colorBorderSecondary)",borderRadius:10,background:t===tU?"var(--colorFillAlter)":"var(--colorBgContainer)"},children:[(0,s.jsx)("span",{children:"process"===e.status?(0,s.jsx)(P.A,{}):"warning"===e.status?(0,s.jsx)(M.A,{style:{color:"var(--colorWarning)"}}):e.icon}),(0,s.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,s.jsxs)(c.A,{wrap:!0,children:[(0,s.jsx)(er,{strong:!0,children:e.title}),(0,s.jsx)(p.A,{color:"finish"===e.status?"success":"error"===e.status?"error":"warning"===e.status?"warning":"process"===e.status?"processing":"default",children:ef(eh[e.status])}),(e=>{var t;let r=tu.current.get(e.key);if(!r)return null;let l=t5((null!=(t=r.endedAt)?t:Date.now())-r.startedAt);return(0,s.jsx)(p.A,{className:"border-0 bg-[var(--colorFillSecondary)] m-0",children:r.endedAt?l:"".concat(l,"(运行中)")})})(e)]}),(0,s.jsx)("div",{style:{marginTop:4,color:"var(--colorTextSecondary)",fontSize:12,whiteSpace:"pre-wrap"},children:((e,t)=>{let r=e.description.length>240,l=t?e.subSteps:e.subSteps.slice(0,8);return(0,s.jsxs)("div",{children:[e.subtitle&&(0,s.jsx)("div",{style:{marginBottom:4},children:(0,s.jsx)(p.A,{children:e.subtitle})}),(0,s.jsx)("div",{style:!t&&r?{display:"-webkit-box",WebkitLineClamp:3,WebkitBoxOrient:"vertical",overflow:"hidden"}:void 0,children:e.description}),(0,s.jsx)("div",{style:{marginTop:4},children:l.map(e=>{var t;return(0,s.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:4,fontSize:12,color:"process"===e.status?"var(--colorPrimary)":"var(--colorTextSecondary)"},children:["process"===(t=e.status)?(0,s.jsx)(P.A,{}):"finish"===t?(0,s.jsx)(q.A,{}):"warning"===t?(0,s.jsx)(M.A,{style:{color:"var(--colorWarning)"}}):"error"===t?(0,s.jsx)(L.A,{}):(0,s.jsx)("span",{style:{display:"inline-block",height:6,width:6,borderRadius:"50%",background:"var(--colorTextTertiary)"}}),(0,s.jsx)("span",{children:e.title})]},e.key)})})]})})(e,r)}),l&&(0,s.jsx)(x.Ay,{size:"small",type:"link",style:{padding:0,height:"auto",marginTop:6},onClick:()=>{var t;return t=e.key,void tR(e=>{let r=new Set(e);return r.has(t)?r.delete(t):r.add(t),r})},children:r?"收起":e.subSteps.length>8?"更多(".concat(e.subSteps.length," 条详情)"):"更多"})]})]},e.key)})}),"workflow"===tN&&(null==tw?void 0:tw.partialChapters)&&tw.partialChapters.length>0&&(0,s.jsx)(f.A,{size:"small",title:"章节进度",extra:(0,s.jsxs)(p.A,{color:"blue",children:[tw.partialChapters.filter(e=>"completed"===e.status).length,"/",tw.partialChapters.length]}),children:(0,s.jsx)(ea,{gap:6,style:{width:"100%"},children:tw.partialChapters.map(e=>(0,s.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",gap:8,fontSize:12},children:[(0,s.jsx)(er,{ellipsis:!0,style:{maxWidth:480},children:e.title}),(0,s.jsxs)(c.A,{size:6,children:[(0,s.jsx)(p.A,{color:"failed"===e.status?"error":"success",children:"failed"===e.status?"失败":"完成"}),(0,s.jsxs)(er,{type:"secondary",children:[e.chars.toLocaleString()," 字"]})]})]},e.id))})}),"workflow"===tN&&(null==tw||null==(t=tw.draft)||null==(e=t.exportGate)?void 0:e.passed)===!1&&(()=>{var e;let t=(null==(e=tw.draft.exportGate.blockingIssues)?void 0:e.map(e=>e.message))||tw.draft.exportGate.checklist.filter(e=>!e.passed).map(e=>e.label)||["存在阻断级校验错误"],r=tE?t:t.slice(0,6);return(0,s.jsx)(el,{type:"error",title:"生成已完成,但导出门禁未通过",children:(0,s.jsxs)(c.A,{direction:"vertical",size:8,style:{width:"100%"},children:[(0,s.jsx)("span",{children:"阻断项:".concat(r.join(";")).concat(t.length>6&&!tE?"…(共 ".concat(t.length," 项)"):"","。可点击继续生成触发自动修复,或在“校验”页查看完整问题。")}),t.length>6&&(0,s.jsx)(x.Ay,{size:"small",type:"link",style:{padding:0,height:"auto",alignSelf:"flex-start"},onClick:()=>tM(e=>!e),children:tE?"收起":"查看全部 ".concat(t.length," 项")}),t$(tw)&&(0,s.jsx)(x.Ay,{type:"primary",size:"small",icon:(0,s.jsx)(V.A,{}),loading:eP,onClick:()=>{ri(tw)},children:"继续生成 / 自动修复"})]})})})(),"workflow"===tN&&(null==tw||null==(r=tw.reviewMetadata)?void 0:r.diagnostics)&&(0,s.jsx)(el,{type:"info",title:"后台自动优化",children:"策略:".concat(tw.reviewMetadata.diagnostics.strategy.mode,";LLM 调用 ").concat(tw.reviewMetadata.diagnostics.llm.calls," 次;噪声过滤 ").concat((null==(a=tw.reviewMetadata.diagnostics.evidence)?void 0:a.filteredNoise)||0," 条;质量门禁 阻断").concat((null==(i=tw.reviewMetadata.diagnostics.quality)?void 0:i.blockingCount)||0,"/重要").concat((null==(D=tw.reviewMetadata.diagnostics.quality)?void 0:D.importantCount)||0,"/轻微").concat((null==(_=tw.reviewMetadata.diagnostics.quality)?void 0:_.minorCount)||0,";自动限流调整 ").concat(tw.reviewMetadata.diagnostics.llm.limitAdjustments," 次。审查与诊断信息仅用于系统修复,不会写入正文或导出文件。")}),"workflow"===tN&&(null==tw||null==(B=tw.draft)?void 0:B.promptRules)&&(()=>{let e=tw.draft.promptRules,t=e.executionSummary||[],r=Object.entries(e.ruleSources||{}).filter(e=>{let[,t]=e;return t.length>0}),l=r.length>0,a=tz?r:r.slice(0,3);return(0,s.jsx)(f.A,{size:"small",title:(0,s.jsxs)(c.A,{size:6,children:[(0,s.jsx)(M.A,{style:{color:"var(--colorAccent)"}}),"提示词规则生效报告",t.length>0&&(0,s.jsxs)(p.A,{style:{margin:0},children:[t.length," 条"]})]}),styles:{body:{padding:12}},children:(0,s.jsxs)(ea,{gap:6,children:[t.length>0&&t.map((e,t)=>(0,s.jsxs)("div",{style:{display:"flex",gap:6,fontSize:12,color:"var(--colorText)",lineHeight:1.6},children:[(0,s.jsx)(q.A,{style:{color:"var(--colorSuccess)",marginTop:4}}),(0,s.jsx)("span",{children:e})]},t)),l&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(j.A,{style:{margin:"4px 0"}}),(0,s.jsx)(er,{type:"secondary",style:{fontSize:12},children:"规则溯源(自动从以下提示词中抽取):"}),a.map(e=>{let[t,r]=e;return(0,s.jsxs)("div",{style:{fontSize:12,color:"var(--colorTextSecondary)",lineHeight:1.6},children:[(0,s.jsx)(er,{strong:!0,style:{fontSize:12},children:t}),":",r.map(e=>"".concat(e.roleId,"「").concat(e.matchedText.length>24?"".concat(e.matchedText.slice(0,24),"…"):e.matchedText,"」")).join("、")]},t)}),r.length>3&&(0,s.jsx)(x.Ay,{size:"small",type:"link",style:{padding:0,height:"auto",alignSelf:"flex-start"},onClick:()=>tD(e=>!e),children:tz?"收起溯源":"查看全部溯源(".concat(r.length," 类)")})]}),!l&&0===t.length&&(0,s.jsx)(er,{type:"secondary",style:{fontSize:12},children:"未从提示词中识别到额外硬规则,使用系统默认质量规则。"})]})})})(),"workflow"===tN&&eP&&0===tv.length&&(0,s.jsxs)("div",{style:{textAlign:"center",padding:40},children:[(0,s.jsx)(y.A,{}),(0,s.jsx)("div",{style:{marginTop:12,color:"var(--colorTextSecondary)"},children:"正在准备生成…"})]}),"editor"===tN&&(null==eL?void 0:eL.reviewMetadata)&&(()=>{var e;let t=null==(e=eL.reviewMetadata.diagnostics)?void 0:e.quality,r=(eL.executionStages||[]).filter(e=>"llm_review"===e.type).flatMap(e=>(e.details||[]).filter(e=>/修复|补写|补齐|改进|调整/u.test(e))).slice(0,8);return t||0!==r.length?(0,s.jsx)(f.A,{size:"small",title:(0,s.jsxs)(c.A,{size:6,children:[(0,s.jsx)(q.A,{style:{color:"var(--colorSuccess)"}}),"运行质量报告"]}),styles:{body:{padding:12}},children:(0,s.jsxs)(ea,{gap:8,children:[t&&(0,s.jsx)(c.A,{wrap:!0,size:6,children:(0,s.jsxs)(p.A,{color:t.blockingCount>0?"error":"success",className:"border-0 m-0",children:["审查修复 ",t.repairedCount," 项 / 问题 ",t.blockingCount+t.importantCount+t.minorCount," 项"]})}),r.length>0&&(0,s.jsxs)("div",{className:"flex flex-col gap-1 rounded-lg border border-[var(--borderColor)] bg-[var(--colorFillQuaternary)] px-3 py-2",children:[(0,s.jsx)("span",{className:"text-xs font-medium text-[var(--colorText)]",children:"修复记录(审查阶段自动修复的内容)"}),r.map((e,t)=>(0,s.jsxs)("span",{className:"text-xs text-[var(--colorTextSecondary)]",children:["\xb7 ",e]},t))]})]})}):null})(),"editor"===tN&&tx.length>0&&(0,s.jsx)(f.A,{size:"small",title:(0,s.jsxs)(c.A,{size:6,children:[(0,s.jsx)(Y.A,{}),"导出闭环报告",(0,s.jsx)(p.A,{className:"border-0 bg-[var(--colorFillSecondary)] m-0",children:tx.length})]}),styles:{body:{padding:12}},children:(0,s.jsxs)(ea,{gap:6,children:[[...tx].reverse().map((e,t)=>{var r;return(0,s.jsxs)("div",{className:"flex flex-wrap items-center gap-2 rounded-lg border border-[var(--borderColor)] bg-[var(--colorFillQuaternary)] px-3 py-2 text-xs",children:[(0,s.jsx)(er,{strong:!0,children:e.format.toUpperCase()}),(0,s.jsx)(p.A,{color:"blue",className:"border-0 m-0",children:new Date(e.exportedAt).toLocaleString()}),void 0!==e.durationMs&&(0,s.jsxs)("span",{className:"text-[var(--colorTextSecondary)]",children:["总用时 ",t5(e.durationMs)]}),void 0!==e.repairedCount&&(0,s.jsxs)("span",{className:"text-[var(--colorTextSecondary)]",children:["修复 ",e.repairedCount," 项",void 0!==e.blockingCount?"(阻断 ".concat(e.blockingCount,")"):""]}),e.ruleSummary&&e.ruleSummary.length>0&&(0,s.jsxs)("span",{className:"text-[var(--colorTextSecondary)]",children:["规则 ",e.ruleSummary.length," 条"]}),!1===e.gatePassed&&(0,s.jsxs)(p.A,{color:"error",className:"border-0 m-0",children:[ef("documents.nonDeliverableTag")," ",null!=(r=e.gateIssueCount)?r:""]}),e.healthAlerts&&e.healthAlerts.length>0&&(0,s.jsxs)(p.A,{color:"warning",className:"border-0 m-0",children:["健康告警 ",e.healthAlerts.length]})]},"".concat(e.exportedAt,"-").concat(t))}),(()=>{let e=[...tx].reverse().find(e=>e.gateChecklist&&e.gateChecklist.items.length>0);if(!(null==e?void 0:e.gateChecklist))return null;let t=e.gateChecklist.items;return(0,s.jsxs)(el,{type:"warning",title:"".concat(ef("documents.nonDeliverableChecklistTitle"),"(").concat(e.gateChecklist.total,")"),children:[t.slice(0,5).map(e=>(0,s.jsxs)("div",{style:{whiteSpace:"pre-wrap"},children:["".concat(e.index,".【").concat(e.category,"】").concat(e.problem),(0,s.jsx)("div",{style:{color:"var(--colorTextSecondary)"},children:"".concat(e.repairPath).concat(e.detectorId?"|检测器:".concat(e.detectorId):"")})]},e.index)),t.length>5&&(0,s.jsx)("div",{children:ef("documents.nonDeliverableExportTruncated")})]})})(),(()=>{let e=function(e){let t=[],r=[];if(e.length<3)return{retireCandidates:t,constraintSuggestions:r};let s=[...e].sort((e,t)=>e.exportedAt-t.exportedAt),l=s.slice(-3),a=s.slice(0,-3),n=new Set;for(let e of[...a,...l])for(let t of Object.keys(e.repairHeat||{}))n.add(t);for(let e of n){let s=l.map(t=>{var r;return null==(r=t.repairHeat)?void 0:r[e]});if(a.some(t=>{var r,s,l;return(null!=(l=null==(s=t.repairHeat)||null==(r=s[e])?void 0:r.hits)?l:0)>0})&&s.every(e=>void 0!==e&&0===e.hits)&&t.push(e),s.every(e=>void 0!==e&&e.hits>0&&e.failed/e.hits>=.5)){let t=s.reduce((e,t)=>e+(t?t.failed/t.hits:0),0)/s.length;r.push("".concat(e,"|").concat((100*t).toFixed(0),"%|连续").concat(3,"次"))}}return{retireCandidates:t,constraintSuggestions:r}}(tx);return 0===e.retireCandidates.length&&0===e.constraintSuggestions.length?null:(0,s.jsxs)(el,{type:"info",title:"跨文档缺陷热力图",children:[e.retireCandidates.length>0&&(0,s.jsxs)("div",{children:["候选退役(连续 3 次零命中,可评估停用):",e.retireCandidates.map(e=>{let t=e.split("|")[0];return ee[t]?"".concat(ee[t],"(").concat(e,")"):e}).join("、")]}),e.constraintSuggestions.length>0&&(0,s.jsxs)("div",{children:["建议加入写作硬约束(高命中且修复失败率高):",e.constraintSuggestions.map(e=>{let t=e.split("|")[0];return ee[t]?"".concat(ee[t],"(").concat(e,")"):e}).join("、")]})]})})()]})}),eL&&(0,s.jsx)("div",{ref:ew,children:(0,s.jsx)(h.A,{items:[{key:"edit",label:ef("documents.edit"),children:(0,s.jsxs)(ea,{gap:16,style:{width:"100%"},children:[(0,s.jsx)(et,{rows:28,value:eG,disabled:e0,onSelect:e=>{var t,r,s;return e9({start:null!=(t=e.currentTarget.selectionStart)?t:0,end:null!=(s=null!=(r=e.currentTarget.selectionEnd)?r:e.currentTarget.selectionStart)?s:0})},onChange:e=>{var t,r,s;eO(e.target.value),e8(null),e4(null),e9({start:null!=(t=e.target.selectionStart)?t:0,end:null!=(s=null!=(r=e.target.selectionEnd)?r:e.target.selectionStart)?s:0})}}),(0,s.jsx)(f.A,{size:"small",style:{borderRadius:12,background:"linear-gradient(135deg, var(--colorFillAlter), var(--colorBgContainer))"},children:(0,s.jsxs)(ea,{gap:16,style:{width:"100%"},children:[(0,s.jsxs)(c.A,{align:"start",style:{width:"100%",justifyContent:"space-between"},children:[(0,s.jsxs)("div",{children:[(0,s.jsxs)(c.A,{size:6,children:[(0,s.jsx)(z.A,{style:{color:"var(--colorAccent)"}}),(0,s.jsx)(er,{strong:!0,children:"精准修改"}),(0,s.jsx)(p.A,{color:"blue",children:"AI 辅助"})]}),(0,s.jsx)("div",{style:{marginTop:4,color:"var(--colorTextSecondary)",fontSize:12},children:"针对当前编辑内容补充更具体的要求,AI 会保留文档结构并按你的提示细化修改。"})]}),(0,s.jsxs)(x.Ay,{size:"small",icon:(0,s.jsx)(Q.A,{}),onClick:()=>ts(e=>!e),disabled:0===te.length,children:["历史版本 ",te.length>0?te.length:""]})]}),(0,s.jsx)(el,{type:"info",title:"系统只负责识别修改范围,不改写你的提示词;选中文字后优先只改选区,没有选区时按光标所在小节/章节定位。"}),(0,s.jsx)(et,{rows:4,value:eZ,disabled:e0,onChange:e=>{e$(e.target.value),e8(null),e4(null)},placeholder:"例如:写细一点;润色这段;第七章补充高处作业和临电安全措施;把安全检查频次改成每周一次。"}),(0,s.jsxs)(c.A,{wrap:!0,style:{width:"100%",justifyContent:"space-between"},children:[(0,s.jsx)(c.A,{wrap:!0,children:["写细一点","更专业","只润色选区","补充可执行措施"].map(e=>(0,s.jsx)(x.Ay,{size:"small",disabled:e0,onClick:()=>e$(t=>t?"".concat(t,";").concat(e):e),children:e},e))}),(0,s.jsx)(x.Ay,{type:"primary",icon:(0,s.jsx)(z.A,{}),loading:e0&&"planning"===e2,disabled:!eZ.trim()||e0,onClick:()=>{rj()},children:"识别修改范围"})]}),e5&&!e3&&(0,s.jsx)(f.A,{size:"small",style:{borderRadius:10,borderColor:"var(--colorAccent)"},children:(0,s.jsxs)(ea,{gap:8,style:{width:"100%"},children:[(0,s.jsxs)(c.A,{wrap:!0,children:[(0,s.jsx)(p.A,{color:"purple",children:e5.scope}),(0,s.jsx)(p.A,{color:"blue",children:e5.action}),(0,s.jsxs)(p.A,{color:e5.confidence>=.8?"green":"orange",children:["置信度 ",Math.round(100*e5.confidence),"%"]}),e5.targetTitle&&(0,s.jsx)(er,{strong:!0,children:e5.targetTitle})]}),(0,s.jsx)(er,{children:e5.summary}),(0,s.jsx)(er,{type:"secondary",style:{fontSize:12},children:"将按你的原始提示词执行,不添加额外编辑任务。"}),(0,s.jsxs)(c.A,{children:[(0,s.jsx)(x.Ay,{type:"primary",loading:e0&&"applying"===e2,onClick:()=>{ry(e5)},children:"执行并预览"}),(0,s.jsx)(x.Ay,{disabled:e0,onClick:()=>e8(null),children:"取消"})]})]})}),e3&&(0,s.jsx)(f.A,{size:"small",style:{borderRadius:10,borderColor:"var(--colorSuccess)"},children:(0,s.jsxs)(ea,{gap:8,style:{width:"100%"},children:[(0,s.jsxs)(c.A,{wrap:!0,children:[(0,s.jsx)(p.A,{color:"green",children:"修改预览"}),(0,s.jsx)(er,{children:e3.summary||e3.plan.summary}),(0,s.jsxs)(p.A,{children:[e3.changedChars&&e3.changedChars>0?"+".concat(e3.changedChars):e3.changedChars," 字符"]})]}),(0,s.jsxs)(w.A,{gutter:12,children:[(0,s.jsxs)(b.A,{span:12,children:[(0,s.jsx)(er,{strong:!0,children:"修改前"}),(0,s.jsx)("div",{style:{marginTop:6,maxHeight:180,overflow:"auto",padding:10,borderRadius:8,background:"var(--colorFillAlter)",whiteSpace:"pre-wrap",fontSize:12},children:e3.beforeSnippet||"无片段预览"})]}),(0,s.jsxs)(b.A,{span:12,children:[(0,s.jsx)(er,{strong:!0,children:"修改后"}),(0,s.jsx)("div",{style:{marginTop:6,maxHeight:180,overflow:"auto",padding:10,borderRadius:8,background:"var(--colorFillAlter)",whiteSpace:"pre-wrap",fontSize:12},children:e3.afterSnippet||"无片段预览"})]})]}),(0,s.jsxs)(c.A,{children:[(0,s.jsx)(x.Ay,{type:"primary",onClick:()=>{e3&&(rg(e3.before,e3.prompt),eO(e3.markdown),rv(!0),ej.success("已应用精准修改"))},children:"应用到文档"}),(0,s.jsx)(x.Ay,{onClick:()=>e4(null),children:"返回计划"}),(0,s.jsx)(x.Ay,{danger:!0,onClick:()=>{e8(null),e4(null)},children:"放弃"})]})]})}),tr&&(0,s.jsx)("div",{style:{borderTop:"1px solid var(--colorBorderSecondary)",paddingTop:12},children:(0,s.jsx)(A.A,{size:"small",dataSource:te,locale:{emptyText:"暂无历史版本"},renderItem:e=>(0,s.jsx)(A.A.Item,{actions:[(0,s.jsx)(x.Ay,{size:"small",disabled:e0,onClick:()=>{rg(eG,"恢复前版本"),eO(e.content),rv(!0),ej.success("已恢复历史版本")},children:"恢复"},"restore")],children:(0,s.jsx)(A.A.Item.Meta,{title:(0,s.jsxs)(c.A,{children:[(0,s.jsx)(er,{children:new Date(e.createdAt).toLocaleString()}),(0,s.jsx)(p.A,{children:e.prompt})]}),description:(0,s.jsx)(er,{type:"secondary",ellipsis:!0,children:e.content.replace(/\s+/gu," ").slice(0,120)})})})})})]})})]})},{key:"chapters-facts",label:"章节与事实",children:(0,s.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:16},children:[eL.chapters.length>0&&(0,s.jsxs)("div",{children:[(0,s.jsxs)(er,{strong:!0,style:{fontSize:13,marginBottom:8,display:"block"},children:["章节 (",eL.chapters.length,")"]}),(0,s.jsx)(A.A,{size:"small",dataSource:eL.chapters,renderItem:e=>(0,s.jsx)(A.A.Item,{children:(0,s.jsx)(A.A.Item.Meta,{title:e.title,description:"证据: ".concat(e.evidence.length," \xb7 缺失: ").concat(e.missingFacts.length)})})})]}),eL.structuredFacts.length>0&&(0,s.jsxs)("div",{children:[(0,s.jsxs)(er,{strong:!0,style:{fontSize:13,marginBottom:8,display:"block"},children:["结构化事实 (",eL.structuredFacts.length,")"]}),(0,s.jsx)(k.A,{size:"small",column:1,bordered:!0,children:eL.structuredFacts.map((e,t)=>(0,s.jsxs)(k.A.Item,{label:e.key,children:[(0,s.jsx)("span",{children:e.value}),(0,s.jsx)(p.A,{style:{marginLeft:8},children:e.confidence.toFixed(2)}),(0,s.jsx)(er,{type:"secondary",style:{fontSize:11,marginLeft:8},children:e.sourceFile})]},t))})]})]})},{key:"sources-missing",label:"来源与缺失",children:(0,s.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:16},children:[(0,s.jsxs)("div",{children:[(0,s.jsxs)(er,{strong:!0,style:{fontSize:13,marginBottom:8,display:"block"},children:["引用来源 (",eL.sources.length,")"]}),0===eL.sources.length?(0,s.jsx)(g.A,{description:"暂无"}):(0,s.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:4},children:eL.sources.map(e=>(0,s.jsxs)(p.A,{color:"blue",children:[e.filePath," (",e.count,")"]},e.filePath))})]}),(0,s.jsxs)("div",{children:[(0,s.jsxs)(er,{strong:!0,style:{fontSize:13,marginBottom:8,display:"block"},children:["缺失项 (",eL.missingItems.length,")"]}),0===eL.missingItems.length?(0,s.jsx)(g.A,{description:"无缺失"}):(0,s.jsx)(A.A,{size:"small",dataSource:eL.missingItems,renderItem:e=>(0,s.jsx)(A.A.Item,{children:e})})]})]})},{key:"validation",label:"校验 (".concat(eL.validationIssues.length,")"),children:0===eL.validationIssues.length?(0,s.jsx)(g.A,{description:"校验通过"}):(0,s.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[eL.validationIssues.map(e=>(0,s.jsxs)("div",{style:{border:"1px solid var(--colorBorderSecondary)",borderRadius:8,padding:12},children:[(0,s.jsx)(p.A,{color:"error"===e.level?"error":"warning"===e.level?"warning":"blue",children:ef(ev[e.level])}),(0,s.jsx)("div",{style:{marginTop:6,whiteSpace:"pre-wrap",overflowWrap:"anywhere",wordBreak:"break-all",lineHeight:1.6},children:e.message}),e.suggestion&&(0,s.jsx)("div",{style:{marginTop:6,color:"var(--colorTextSecondary)",whiteSpace:"pre-wrap",overflowWrap:"anywhere",wordBreak:"break-all"},children:e.suggestion})]},"".concat(e.level,"-").concat(e.message))),eL.exportGate.checklist.length>0&&(0,s.jsxs)("div",{style:{marginTop:8},children:[(0,s.jsx)(er,{strong:!0,style:{fontSize:13,marginBottom:8,display:"block"},children:"导出门禁"}),(0,s.jsx)(A.A,{size:"small",dataSource:eL.exportGate.checklist,renderItem:e=>(0,s.jsxs)(A.A.Item,{children:[(0,s.jsx)(er,{style:{overflowWrap:"anywhere",wordBreak:"break-word"},children:e.label}),(0,s.jsx)(p.A,{color:e.passed?"success":"error",children:e.passed?"PASS":"FAIL"})]})})]})]})},{key:"stages",label:"执行阶段 (".concat(eL.executionStages.length,")"),children:(0,s.jsx)(A.A,{size:"small",dataSource:eL.executionStages,renderItem:e=>(0,s.jsxs)(A.A.Item,{children:[(0,s.jsx)(A.A.Item.Meta,{avatar:ec[e.type]||(0,s.jsx)(F.A,{}),title:(0,s.jsx)(er,{title:e.roleId,style:{overflowWrap:"anywhere",wordBreak:"break-word"},children:"".concat(e.title||em[e.type]||e.type," \xb7 ").concat(e.roleName||e.subtitle||tV(e.roleId))}),description:(0,s.jsx)(er,{type:"secondary",style:{whiteSpace:"pre-wrap",overflowWrap:"anywhere",wordBreak:"break-word"},children:e.message})}),(0,s.jsx)(p.A,{color:"success"===e.status?"success":"failed"===e.status?"error":"skipped"===e.status?"default":"warning",children:ef(eg[e.status])})]})})}]})})]})}),(0,s.jsx)(v.A,{title:ef("documents.templateEditor"),open:tl,onClose:()=>ta(!1),size:"large",mask:{closable:!1},styles:{body:{padding:20,overflow:"auto"},header:{borderBottom:"1px solid var(--colorBorderSecondary)"}},extra:(0,s.jsxs)(c.A,{children:[(0,s.jsx)(x.Ay,{onClick:()=>ta(!1),children:ef("common.cancel")}),(0,s.jsx)(x.Ay,{type:"primary",onClick:()=>{re()},children:ef("common.save")})]}),children:(0,s.jsxs)(u.A,{form:ey,layout:"vertical",requiredMark:"optional",children:[(0,s.jsxs)(w.A,{gutter:12,children:[(0,s.jsx)(u.A.Item,{name:"id",hidden:!0,children:(0,s.jsx)(o.A,{})}),(0,s.jsx)(b.A,{xs:24,md:8,children:(0,s.jsx)(u.A.Item,{name:"name",label:ef("documents.templateName"),rules:[{required:!0}],children:(0,s.jsx)(o.A,{})})}),(0,s.jsx)(b.A,{xs:24,md:8,children:(0,s.jsx)(u.A.Item,{name:"category",label:ef("documents.templateCategory"),children:(0,s.jsx)(o.A,{})})}),(0,s.jsx)(b.A,{xs:24,md:8,children:(0,s.jsx)(u.A.Item,{name:"outputTitle",label:ef("documents.outputTitle"),children:(0,s.jsx)(o.A,{})})}),(0,s.jsx)(b.A,{xs:24,md:12,children:(0,s.jsx)(u.A.Item,{name:"description",label:ef("documents.templateDescription"),children:(0,s.jsx)(o.A,{})})})]}),(0,s.jsx)(u.A.Item,{name:"projectRoleConfigId",label:ef("documents.projectRoleConfig"),rules:[{required:!0,message:ef("documents.projectRoleConfigRequired")}],children:(0,s.jsx)(S.A,{showSearch:!0,placeholder:ef("documents.projectRoleConfigRequired"),options:tK})}),(0,s.jsxs)("div",{className:"mb-6",children:[(0,s.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)(er,{strong:!0,className:"text-base text-[var(--colorText)] block mb-1",children:"项目资料包绑定"}),(0,s.jsx)("div",{className:"text-xs text-[var(--colorTextSecondary)]",children:"直接选择整个项目文件夹,系统会自动识别招标正文、清单、图纸、补疑等资料类型。"})]}),(0,s.jsx)(p.A,{color:"blue",className:"border-0",children:"按项目资料包"})]}),eD?(0,s.jsxs)("div",{className:"text-center py-8",children:[(0,s.jsx)(y.A,{}),(0,s.jsx)("div",{className:"mt-3 text-[var(--colorTextSecondary)] text-xs",children:"正在加载知识库文件…"})]}):0===eM.length?(0,s.jsx)(g.A,{image:g.A.PRESENTED_IMAGE_SIMPLE,description:"暂无知识库文件"}):(0,s.jsx)(u.A.Item,{name:"projectMaterialRoots",rules:[{required:!0,message:"请选择项目资料包"}],children:(0,s.jsx)(C.A,{treeData:eM,loadData:t7,fieldNames:{label:"rawTitle",value:"value",children:"children"},onChange:e=>{var t;return t=e.map(e=>String(e)),void ey.setFieldValue("projectMaterialRoots",eu(t))},treeCheckable:!0,showCheckedStrategy:C.A.SHOW_PARENT,placeholder:"点击这里选择项目文件夹...",style:{width:"100%"},listHeight:360,showSearch:!0,maxTagCount:"responsive",size:"large"})})]})]})})]})}}},e=>{e.O(0,[717,883,665,44,563,7,787,195,455,506,760,636,593,792],()=>e(e.s=16403)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[920],{2548:(e,l,t)=>{"use strict";t.r(l),t.d(l,{default:()=>T});var s=t(65321),r=t(97109),c=t(35292),o=t(11702),n=t(68787),d=t(33442),a=t(2256),i=t(38770),x=t(55122),m=t(80300),u=t(15622),h=t(26619),j=t(71330),p=t(26631),v=t(64068),g=t(84742),f=t(4527),y=t(95118),b=t(33555),N=t(64629),A=t(6578);let{Title:C,Paragraph:w,Text:k}=c.A,S=[{icon:(0,s.jsx)(h.A,{}),title:"上传项目资料包",goal:"将同一项目的招标正文、清单、图纸、补疑等资料放在同一个项目文件夹下。",checks:["资料已上传","索引完成","可选择项目文件夹"],href:"/knowledge"},{icon:(0,s.jsx)(j.A,{}),title:"维护提示词角色",goal:"只配置写作、事实抽取、质量审查、格式化等提示词角色;项目资料类型由系统自动识别。",checks:["角色已绑定提示词","编排配置已保存"],href:"/prompt"},{icon:(0,s.jsx)(p.A,{}),title:"配置文档模板",goal:"选择项目资料包,配置章节结构、输出标题、页数目标和提示词编排。",checks:["资料包已绑定","章节结构完整","运行前校验通过"],href:"/documents"},{icon:(0,s.jsx)(v.A,{}),title:"运行工作流",goal:"系统构建项目理解,并按章节组合招标正文、清单、图纸、补疑等证据生成文档。",checks:["项目理解完成","章节逐步生成","证据来源可追溯"],href:"/documents"},{icon:(0,s.jsx)(g.A,{}),title:"审查与导出",goal:"查看结构化事实、来源、缺失项和导出门禁,确认文档可交付。",checks:["无阻断问题","正文无后台话术","导出结果可打开"],href:"/documents"}],_=[{title:"招标文件正文",desc:"确定项目边界、响应要求、工期质量安全目标和评审关注点。",color:"blue"},{title:"工程量清单",desc:"确定主要工程内容、分部分项、项目特征、工程量和资源配置依据。",color:"green"},{title:"图纸/设计资料",desc:"确定施工对象、空间关系、构造做法、专业接口和重点难点。",color:"purple"},{title:"补疑/澄清/答疑",desc:"修正招标正文、清单或图纸口径;与原文件冲突时优先采用。",color:"orange"}],R=[{icon:(0,s.jsx)(f.A,{}),title:"自动资料识别",desc:"根据文件名、目录和内容线索识别资料类型。"},{icon:(0,s.jsx)(y.A,{}),title:"项目理解",desc:"建立项目资料包视角,提炼工程范围、招标要求、清单内容、图纸对象和补疑修正项。"},{icon:(0,s.jsx)(b.A,{}),title:"章节证据计划",desc:"不同章节按不同资料组合召回,减少泛化套话和无来源事实。"}];function T(){let[e,l]=(0,r.useState)(null);return(0,r.useEffect)(()=>{let e=!1;return(async()=>{try{var t,s,r;let c=await (0,A.dx)(),o=(null==(t=c.find(e=>e.selected))?void 0:t.projectRoot)||(null==(s=c.find(e=>e.isCurrent))?void 0:s.projectRoot)||(null==(r=c[0])?void 0:r.projectRoot)||"",[n,d,a,i]=await Promise.all([(0,A.lv)("prompt"),(0,A.Dl)(),(0,A.cQ)(o||void 0),(0,A.hc)(o||void 0)]),x=await Promise.all(d.templates.map(async e=>{try{let{validation:l}=await (0,A.SM)(e.id,o||void 0);return l.issues.some(e=>"error"===e.level)}catch(e){return!1}}));if(e)return;l({kbFileCount:i.fileCount,promptRoleCount:n.roles.length,roleConfigCount:n.configs.length,templateCount:d.templates.length,templateBlockedCount:x.filter(e=>e).length,recordCount:a.documents.length,completedRecordCount:a.documents.filter(e=>"completed"===e.status||"completed_with_issues"===e.status||"warning"===e.status).length,exportCount:a.documents.reduce((e,l)=>{var t;return e+((null==(t=l.exportReports)?void 0:t.length)||0)},0)})}catch(e){}})(),()=>{e=!0}},[]),(0,s.jsx)("div",{className:"p-6 max-w-7xl mx-auto",children:(0,s.jsxs)("div",{className:"w-full flex flex-col gap-6",children:[(0,s.jsx)(n.A,{title:(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(b.A,{})," 使用指南"]}),className:"rounded-2xl",extra:(0,s.jsxs)(d.A,{wrap:!0,children:[(0,s.jsx)(o.A,{color:"blue",className:"px-3 py-1",children:"项目资料包"}),(0,s.jsx)(o.A,{color:"green",className:"px-3 py-1",children:"自动识别"}),(0,s.jsx)(o.A,{color:"purple",className:"px-3 py-1",children:"项目理解"})]}),children:(0,s.jsx)(w,{type:"secondary",className:"!mb-0 max-w-3xl",children:"模板直接绑定整个项目资料包,系统自动识别招标正文、工程量清单、图纸、补疑、技术规范等资料类型,并基于项目理解生成专业文档。"})}),(0,s.jsxs)(n.A,{className:"rounded-2xl",styles:{body:{padding:24}},children:[(0,s.jsx)("div",{className:"flex items-center justify-between gap-4 mb-5",children:(0,s.jsxs)("div",{children:[(0,s.jsx)(C,{level:4,className:"!mb-1",children:"推荐操作流程"}),(0,s.jsx)(k,{type:"secondary",children:"从资料入库到文档导出,按以下步骤完成。"})]})}),(0,s.jsx)(a.A,{gutter:[16,16],children:S.map((l,t)=>{let r;return(0,s.jsx)(i.A,{xs:24,md:12,xl:8,children:(0,s.jsxs)(n.A,{className:"h-full rounded-2xl border-[var(--colorBorderSecondary)]",styles:{body:{padding:18}},children:[(0,s.jsxs)("div",{className:"flex items-start gap-3 mb-3",children:[(0,s.jsx)("div",{className:"w-10 h-10 rounded-xl bg-[var(--colorFillSecondary)] text-[var(--colorPrimary)] flex items-center justify-center text-lg",children:l.icon}),(0,s.jsxs)("div",{className:"min-w-0",children:[(0,s.jsxs)(o.A,{color:"blue",className:"mb-2",children:["Step ",t+1]}),(0,s.jsx)("div",{className:"font-semibold text-[var(--colorText)]",children:l.title})]})]}),(0,s.jsx)(w,{className:"text-sm text-[var(--colorTextSecondary)] min-h-[44px] !mb-4",children:l.goal}),(0,s.jsx)("div",{className:"flex flex-wrap gap-1.5",children:l.checks.map(e=>(0,s.jsx)(o.A,{children:e},e))}),(0,s.jsx)(x.A,{className:"!my-3"}),(0,s.jsxs)("div",{className:"flex items-center justify-between gap-2 flex-wrap",children:[(r=(l=>{if(!e)return{text:"加载中…",level:"todo"};switch(l){case 0:return e.kbFileCount>0?{text:"已入库 ".concat(e.kbFileCount," 份资料文件"),level:"done"}:{text:"尚未上传项目资料",level:"progress"};case 1:return e.promptRoleCount>0?{text:"".concat(e.promptRoleCount," 个提示词角色 / ").concat(e.roleConfigCount," 套编排"),level:"done"}:{text:"尚未配置提示词角色",level:"todo"};case 2:return e.templateCount>0?e.templateBlockedCount>0?{text:"".concat(e.templateCount," 个模板,").concat(e.templateBlockedCount," 个存在阻断项"),level:"progress"}:{text:"".concat(e.templateCount," 个模板全部通过运行前校验"),level:"done"}:{text:"尚未创建文档模板",level:"todo"};case 3:return e.recordCount>0?{text:"已生成 ".concat(e.completedRecordCount,"/").concat(e.recordCount," 条有效记录"),level:"done"}:{text:"尚无生成记录",level:"todo"};case 4:return e.exportCount>0?{text:"已导出 ".concat(e.exportCount," 次,报告已归档"),level:"done"}:e.completedRecordCount>0?{text:"有生成记录待导出",level:"progress"}:{text:"等待生成记录后导出",level:"todo"};default:return{text:"",level:"todo"}}})(t),(0,s.jsx)(o.A,{color:"done"===r.level?"success":"progress"===r.level?"processing":"default",icon:null===e?(0,s.jsx)(N.A,{spin:!0}):void 0,className:"border-0",children:r.text})),(0,s.jsx)("a",{className:"text-xs text-[var(--colorPrimary)] hover:underline",href:l.href,children:"去完成 ›"})]})]})},l.title)})})]}),(0,s.jsxs)(a.A,{gutter:[16,16],align:"stretch",children:[(0,s.jsx)(i.A,{xs:24,lg:10,children:(0,s.jsx)(n.A,{title:"项目资料包如何组织",className:"rounded-2xl h-full",styles:{body:{padding:24}},children:(0,s.jsx)(m.A,{items:[{color:"blue",children:(0,s.jsxs)("div",{children:[(0,s.jsx)(k,{strong:!0,children:"一个项目一个文件夹"}),(0,s.jsx)(w,{className:"!mb-0 text-sm text-[var(--colorTextSecondary)]",children:"例如“徽光阁项目/”,模板绑定时直接选择该文件夹。"})]})},{color:"green",children:(0,s.jsxs)("div",{children:[(0,s.jsx)(k,{strong:!0,children:"资料集中放置"}),(0,s.jsx)(w,{className:"!mb-0 text-sm text-[var(--colorTextSecondary)]",children:"招标正文、清单、图纸、补疑、技术规范等资料放在同一个资料包下。"})]})},{color:"purple",children:(0,s.jsxs)("div",{children:[(0,s.jsx)(k,{strong:!0,children:"系统自动理解"}),(0,s.jsx)(w,{className:"!mb-0 text-sm text-[var(--colorTextSecondary)]",children:"生成前构建项目资料画像和项目理解模型。"})]})}]})})}),(0,s.jsx)(i.A,{xs:24,lg:14,children:(0,s.jsx)(n.A,{title:"关键资料职责",className:"rounded-2xl h-full",styles:{body:{padding:24}},children:(0,s.jsx)(a.A,{gutter:[12,12],children:_.map(e=>(0,s.jsx)(i.A,{xs:24,md:12,children:(0,s.jsxs)(n.A,{size:"small",className:"rounded-xl h-full border-[var(--colorBorderSecondary)]",children:[(0,s.jsx)(o.A,{color:e.color,className:"mb-2",children:e.title}),(0,s.jsx)(w,{className:"!mb-0 text-sm text-[var(--colorTextSecondary)]",children:e.desc})]})},e.title))})})})]}),(0,s.jsx)(n.A,{title:"生成链路说明",className:"rounded-2xl",styles:{body:{padding:24}},children:(0,s.jsx)(a.A,{gutter:[16,16],children:R.map((e,l)=>(0,s.jsx)(i.A,{xs:24,md:8,children:(0,s.jsxs)(n.A,{className:"rounded-2xl h-full border-[var(--colorBorderSecondary)]",styles:{body:{padding:18}},children:[(0,s.jsxs)("div",{className:"flex items-center gap-3 mb-3",children:[(0,s.jsx)("div",{className:"w-9 h-9 rounded-xl bg-[var(--colorFillSecondary)] text-[var(--colorPrimary)] flex items-center justify-center",children:e.icon}),(0,s.jsxs)("div",{children:[(0,s.jsx)(o.A,{color:"blue",children:l+1}),(0,s.jsx)(k,{strong:!0,children:e.title})]})]}),(0,s.jsx)(w,{className:"!mb-0 text-sm text-[var(--colorTextSecondary)]",children:e.desc})]})},e.title))})}),(0,s.jsx)(u.A,{className:"rounded-2xl overflow-hidden",items:[{key:"binding",label:"模板为什么只需要绑定项目资料包?",children:(0,s.jsx)(w,{className:"!mb-0",children:"因为资料职责已经由系统自动识别。用户只需要告诉系统“本次生成使用哪个项目”,系统会自动在该项目资料包内组织资料关系。"})},{key:"addendum",label:"补疑/澄清如何处理?",children:(0,s.jsx)(w,{className:"!mb-0",children:"补疑、澄清、答疑属于高优先级资料。如与招标正文、清单或图纸存在冲突,生成时优先采用补疑/澄清口径。"})},{key:"quality",label:"专业性如何保证?",children:(0,s.jsx)(w,{className:"!mb-0",children:"生成链路会结合项目理解、章节证据计划、结构化事实、质量审查和导出门禁,减少泛化套话和无来源事实。"})}]})]})})}},34899:(e,l,t)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/guide",function(){return t(2548)}])}},e=>{e.O(0,[717,665,787,986,636,593,792],()=>e(e.s=34899)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[309],{14569:e=>{e.exports={featureLabel:"style_featureLabel__XFSTX",featureValue:"style_featureValue__I_wMP",filterInput:"style_filterInput__4_Elu",filterSelect:"style_filterSelect__vUBJ9",statusCard:"style_statusCard__H7Mee",statusSummary:"style_statusSummary__7KavF",statusSummaryText:"style_statusSummaryText__Shw3j",statusClearBtn:"style_statusClearBtn__uJ9bE",statusExpandBtn:"style_statusExpandBtn__HhgIj",statusFilters:"style_statusFilters__g_LbG",filterPill:"style_filterPill__1pjFW",filterPillActive:"style_filterPillActive___UZVi",statusPanel:"style_statusPanel__9arTu",statusEmpty:"style_statusEmpty__8LWzH",timelineList:"style_timelineList__dqJrz",timelineItem:"style_timelineItem__dbuL_",timelineStatusIcon:"style_timelineStatusIcon__SkRwb",timelinePercent:"style_timelinePercent__pEyH4",timelineRow:"style_timelineRow__EDOVa",timelineTitle:"style_timelineTitle__Yujr8",timelineClose:"style_timelineClose__Byx_9",timelineDetail:"style_timelineDetail__nALei",timelineDesc:"style_timelineDesc__FMjWE",timelinePath:"style_timelinePath__C9VQI",timelineMeta:"style_timelineMeta__u_pCn",timelineMetaTag:"style_timelineMetaTag__G3jF1",timelineExpandArrow:"style_timelineExpandArrow__xIBdF",timelineExpandArrowOpen:"style_timelineExpandArrowOpen__TWWDC",fileNameCell:"style_fileNameCell__EHsnt",folderName:"style_folderName__VhLXP",folderRow:"style_folderRow__d7k9S",searchResultList:"style_searchResultList__cVKZg",searchResultItem:"style_searchResultItem__boj6D",searchResultHeader:"style_searchResultHeader__meVdJ",searchContent:"style_searchContent__XbUVk",pdfPreviewStrip:"style_pdfPreviewStrip__94_eG",drawingPreview:"style_drawingPreview__lkk_L"}},37690:(e,l,t)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/knowledge/file-detail",function(){return t(48200)}])},45551:(e,l,t)=>{"use strict";function r(e){if(0===e)return"0 B";let l=Math.floor(Math.log(e)/Math.log(1024)),t=e/Math.pow(1024,l);return"".concat(t.toFixed(+(0!==l))," ").concat(["B","KB","MB","GB","TB"][l])}function n(e){let l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"zh-CN";if(!e||e<=0)return"en-US"===l?"Never":"从未";let t=Math.floor(Math.floor((Date.now()-e)/1e3)/60),r=Math.floor(t/60),n=Math.floor(r/24);return n>30?new Date(e).toLocaleDateString(l):"en-US"===l?n>0?"".concat(n,"d ago"):r>0?"".concat(r,"h ago"):t>0?"".concat(t,"m ago"):"Just now":n>0?"".concat(n," 天前"):r>0?"".concat(r," 小时前"):t>0?"".concat(t," 分钟前"):"刚刚"}t.d(l,{Jm:()=>s,fw:()=>n,mc:()=>i,z3:()=>r});let a={document:"文档",spreadsheet:"表格",image:"图片",cad:"图纸",code:"代码",data:"数据",web:"网页",diagram:"图表",archive:"压缩包",other:"其他"},o={document:"Document",spreadsheet:"Spreadsheet",image:"Image",cad:"CAD",code:"Code",data:"Data",web:"Web",diagram:"Diagram",archive:"Archive",other:"Other"};function s(e){var l;let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"zh-CN";return null!=(l=("en-US"===t?o:a)[e])?l:e}let i={active:"common.statusIndexed",outdated:"common.statusOutdated",error:"common.statusAbnormal",deleted:"common.statusDeleted",disk:"common.statusNotIndexed"}},48200:(e,l,t)=>{"use strict";t.r(l),t.d(l,{default:()=>L});var r=t(65321),n=t(97109),a=t(1873),o=t.n(a),s=t(86109),i=t(35292),d=t(76506),c=t(33442),u=t(11702),m=t(9137),g=t(21289),h=t(68787),x=t(56985),p=t(54989),w=t(88762),f=t(85493),k=t(84253),y=t(85114),b=t(58569),v=t(7576),_=t(47210),j=t(6578),A=t(48321),C=t(45551),N=t(14569),S=t.n(N);let{Paragraph:P}=i.A;function I(e){if(!e)return{};try{return JSON.parse(e)}catch(e){return{}}}function z(e){return Array.isArray(e)?e.filter(e=>"string"==typeof e).slice(0,30):[]}function T(e,l){let t=l.trim()?[l.trim(),...l.split(/[\s,,。;;::、]+/u)].filter(Boolean).sort((e,l)=>l.length-e.length):[];if(0===t.length)return e;let n=RegExp("(".concat(t.map(e=>e.replace(/[.*+?^${}()|[\]\\]/gu,"\\$&")).join("|"),")"),"giu");return e.split(n).map((e,l)=>t.some(l=>l.toLowerCase()===e.toLowerCase())?(0,r.jsx)("mark",{children:e},l):e)}function F(e,l,t){return null==l||""===l||Array.isArray(l)&&0===l.length?null:(0,r.jsx)(d.A.Item,{label:e,children:Array.isArray(l)?(0,r.jsx)(c.A,{wrap:!0,children:l.map(e=>(0,r.jsx)(u.A,{className:"cursor-pointer",onClick:()=>null==t?void 0:t(String(e)),children:String(e)},String(e)))}):String(l)})}function R(e){let l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"value";return e.map((e,t)=>({key:"".concat(l,"-").concat(t),name:e}))}function L(){var e,l,t,a,i;let N=(0,A.Vr)(),L=(0,s.useRouter)(),M="string"==typeof L.query.relativePath?L.query.relativePath:"",[D,E]=(0,n.useState)(),[B,O]=(0,n.useState)(!1),[J,K]=(0,n.useState)(""),[H,V]=(0,n.useState)(!1),[U,G]=(0,n.useState)(""),[W,X]=(0,n.useState)([]);(0,n.useEffect)(()=>{M&&(O(!0),K(""),(0,j.xC)(M).then(E).catch(e=>{E(void 0),K(e instanceof Error?e.message:N("knowledge.fileDetailLoadFailed"))}).finally(()=>O(!1)))},[M,N]);let q=(0,n.useMemo)(()=>(function(e){let l=I(null==e?void 0:e.file.metadataJson);return"object"==typeof l.extraction&&l.extraction?l.extraction:l})(D),[D]),$=z(q.layerNames);(0,n.useEffect)(()=>{X($)},[null==D?void 0:D.file.relativePath,$.join("|")]);let Z=U.trim().toLowerCase(),Q=(0,n.useMemo)(()=>{var e;return D&&Z?D.chunks.filter(e=>{let l=I(e.metadataJson);return[e.content,e.sectionTitle,l.rowRange,l.chunkKind,l.parentId,JSON.stringify(l)].some(e=>String(null!=e?e:"").toLowerCase().includes(Z))}):null!=(e=null==D?void 0:D.chunks)?e:[]},[D,Z]),Y=(0,n.useMemo)(()=>{var e;return D&&Z?D.parents.filter(e=>[e.content,e.sectionTitle,e.parentId,e.metadataJson].some(e=>String(null!=e?e:"").toLowerCase().includes(Z))):null!=(e=null==D?void 0:D.parents)?e:[]},[D,Z]),ee=async()=>{if(M){V(!0);try{let e=await (0,j.HC)(M);e.detail&&E(e.detail),m.Ay.success(N("knowledge.fileReindexed"))}finally{V(!1)}}},el=async e=>{e&&(await navigator.clipboard.writeText(e),m.Ay.success(N("knowledge.copied")))},et=async e=>{M&&(await (0,j.tn)(M,e),m.Ay.success("file"===e?N("knowledge.openFileRequested"):N("knowledge.openDirectoryRequested")))},er=(0,n.useMemo)(()=>{var e,l,t,n,a,s;let i=[],m=z(q.sheetNames),w=z(q.columnNames),f=z(q.layerNames),k=z(q.blockNames),y=z(q.entityTypes),b=z(q.productNames),v=z(q.materialNames),_=z(q.entityNames),j=z(q.dataPaths),A=m.length>0||w.length>0||null!=q.rowCount||null!=q.columnCount||null!=q.formulaCount||null!=q.mergeCount,C=R(w,"column"),T=(null!=(e=null==D?void 0:D.chunks)?e:[]).map(e=>I(e.metadataJson).rowRange).filter(e=>"string"==typeof e).map((e,l)=>({key:"row-".concat(l),name:e})),L=(null!=(l=null==D?void 0:D.chunks)?l:[]).flatMap(e=>e.content.split(/\r?\n/u)).map(e=>e.trim()).filter(e=>e.includes("|")).slice(0,80).map((e,l)=>({key:"grid-".concat(l),cells:e.split("|").map(e=>e.trim()).filter(Boolean)}));(A||C.length>0||T.length>0||L.length>0)&&i.push({key:"table",label:N("knowledge.table"),children:(0,r.jsxs)("div",{className:"flex flex-col w-full gap-4",children:[A&&(0,r.jsxs)(d.A,{size:"small",column:2,bordered:!0,children:[F(N("knowledge.sheet"),m,G),F(N("knowledge.header"),w,G),F(N("knowledge.rows"),q.rowCount),F(N("knowledge.columns"),q.columnCount),F(N("knowledge.formulaCount"),q.formulaCount),F(N("knowledge.mergeCount"),q.mergeCount)]}),C.length>0&&(0,r.jsx)(g.A,{size:"small",pagination:!1,rowKey:"key",dataSource:C,columns:[{title:N("knowledge.columnName"),dataIndex:"name",render:e=>(0,r.jsx)(u.A,{className:"cursor-pointer m-0 border-0 bg-[var(--colorFillSecondary)] hover:bg-[var(--colorFillAlter)]",onClick:()=>G(String(e)),children:String(e)})}],className:"custom-table border border-[var(--borderColor)] rounded-xl overflow-hidden"}),T.length>0&&(0,r.jsx)(g.A,{size:"small",pagination:!1,rowKey:"key",dataSource:T,columns:[{title:N("knowledge.rowRange"),dataIndex:"name",render:e=>(0,r.jsxs)(u.A,{color:"gold",className:"cursor-pointer m-0 border-0",onClick:()=>G(String(e)),children:[N("knowledge.rowPrefix")," ",String(e)]})}],className:"custom-table border border-[var(--borderColor)] rounded-xl overflow-hidden"}),L.length>0&&(0,r.jsx)(g.A,{size:"small",rowKey:"key",dataSource:L,pagination:{pageSize:10},columns:[{title:N("knowledge.tableGridPreview"),dataIndex:"cells",render:e=>(0,r.jsx)(c.A,{wrap:!0,children:e.map((e,l)=>(0,r.jsx)(u.A,{className:"m-0 border-0 bg-[var(--colorFillSecondary)]",children:e},"".concat(e,"-").concat(l)))})}],className:"custom-table border border-[var(--borderColor)] rounded-xl overflow-hidden"})]})});let M=f.length>0||k.length>0||y.length>0||b.length>0||v.length>0||_.length>0,E=[...R(f,"layer").map(e=>({...e,type:N("knowledge.layer")})),...R(y,"entity").map(e=>({...e,type:N("knowledge.entityType")})),...R(k,"block").map(e=>({...e,type:N("knowledge.blockSymbol")}))];(M||f.length>0||E.length>0)&&i.push({key:"drawing",label:N("knowledge.drawing"),children:(0,r.jsxs)("div",{className:"flex flex-col w-full gap-4",children:[M&&(0,r.jsxs)(d.A,{size:"small",column:2,bordered:!0,children:[F(N("knowledge.layer"),f,G),F(N("knowledge.blockSymbol"),k,G),F(N("knowledge.entityType"),y,G),F(N("knowledge.productPart"),b,G),F(N("knowledge.material"),v,G),F(N("knowledge.entityName"),_,G)]}),f.length>0&&(0,r.jsxs)(h.A,{size:"small",title:N("knowledge.layerTogglePreview"),className:"rounded-xl border-[var(--borderColor)]",children:[(0,r.jsx)(x.A.Group,{value:W,options:f.map(e=>({label:e,value:e})),onChange:e=>X(e.map(String))}),(0,r.jsx)("div",{className:S().drawingPreview,children:W.map(e=>(0,r.jsx)(u.A,{color:"blue",children:e},e))})]}),E.length>0&&(0,r.jsx)(g.A,{size:"small",pagination:!1,rowKey:"key",dataSource:E,columns:[{title:N("knowledge.type"),dataIndex:"type",width:120},{title:N("knowledge.name"),dataIndex:"name",render:e=>(0,r.jsx)(u.A,{className:"cursor-pointer",onClick:()=>G(String(e)),children:String(e)})}],className:"custom-table border border-[var(--borderColor)] rounded-xl overflow-hidden"})]})});let B=(null!=(t=null==D?void 0:D.chunks)?t:[]).flatMap(e=>e.content.split(/\r?\n/u)).map(e=>e.trim()).filter(e=>/^[\w.[\]-]+\s*[:=]/u.test(e)).slice(0,200).map((e,l)=>{var t,r,n,a;let o=/^([^:=]+)\s*[:=]\s*(.*)$/u.exec(e);return{key:"data-".concat(l),path:null!=(n=null==o||null==(t=o[1])?void 0:t.trim())?n:e,value:null!=(a=null==o||null==(r=o[2])?void 0:r.trim())?a:""}});(j.length>0||B.length>0)&&i.push({key:"data",label:N("knowledge.dataPath"),children:(0,r.jsxs)("div",{className:"flex flex-col w-full gap-4",children:[j.length>0&&(0,r.jsx)("div",{className:"bg-[var(--colorFillAlter)] border border-[var(--colorBorderSecondary)] rounded-xl p-3",children:(0,r.jsx)(p.A,{defaultExpandAll:!0,treeData:function(e){let l=new Map;for(let t of e){let e=l;for(let l of t.replace(/\[(\d+)\]/gu,".$1").split(".").filter(Boolean))e.has(l)||e.set(l,new Map),e=e.get(l)}let t=function(e){let l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return[...e.entries()].map(e=>{let[r,n]=e;return{title:r,key:l?"".concat(l,".").concat(r):r,children:t(n,l?"".concat(l,".").concat(r):r)}})};return t(l)}(j),onSelect:e=>{var l;return G(String(null!=(l=e[0])?l:""))},className:"bg-transparent"})}),B.length>0&&(0,r.jsx)(g.A,{size:"small",rowKey:"key",dataSource:B,pagination:{pageSize:20},columns:[{title:N("knowledge.path"),dataIndex:"path",width:260,render:e=>(0,r.jsx)(u.A,{className:"cursor-pointer",onClick:()=>G(String(e)),children:String(e)})},{title:N("knowledge.value"),dataIndex:"value",render:e=>(0,r.jsx)("span",{className:"break-all",children:String(e)})}],className:"custom-table border border-[var(--borderColor)] rounded-xl overflow-hidden"})]})});let O=[q.ocrRecommended,q.ocrReason,q.ocrProvider,q.ocrLanguages,q.ocrTextLength,q.pdfPageOcrSupported,q.ocrPageCount,q.pdfOcrPageLimit,q.pdfRenderer,q.pdfPageCount,q.textPages,q.ocrAugmented,q.ocrPages,q.failedPages,q.imagePreprocessor].some(e=>null!=e),J=(null!=(n=null==D?void 0:D.chunks)?n:[]).map(e=>e.content).join("\n\n").split(/PDF OCR 第\s*(\d+)\s*页[::]/u).slice(1).reduce((e,l,t,r)=>{var n,a,o;return t%2==0&&e.push({key:"page-".concat(l),page:l,text:null!=(o=null==(a=r[t+1])||null==(n=a.split(/PDF OCR 第\s*\d+\s*页[::]/u)[0])?void 0:n.trim())?o:""}),e},[]),K=(null==D?void 0:D.file.format)==="pdf";return(O||K||J.length>0)&&i.push({key:"ocr",label:N("knowledge.ocrPdf"),children:(0,r.jsxs)("div",{className:"flex flex-col w-full gap-4",children:[O&&(0,r.jsxs)(d.A,{size:"small",column:2,bordered:!0,children:[F(N("knowledge.ocrRecommended"),q.ocrRecommended),F(N("knowledge.ocrReason"),q.ocrReason),F(N("knowledge.ocrProvider"),q.ocrProvider),F(N("knowledge.ocrLanguages"),q.ocrLanguages),F(N("knowledge.ocrTextLength"),q.ocrTextLength),F(N("knowledge.pdfPageCount"),q.pdfPageCount),F(N("knowledge.pdfTextPages"),q.textPages),F(N("knowledge.pdfOcrAugmented"),q.ocrAugmented),F(N("knowledge.pdfOcrPages"),Array.isArray(q.ocrPages)?q.ocrPages.join(", "):q.ocrPages),F(N("knowledge.pdfFailedPages"),Array.isArray(q.failedPages)?q.failedPages.map(e=>JSON.stringify(e)).join("; "):q.failedPages),F(N("knowledge.pdfPageOcrSupported"),q.pdfPageOcrSupported),F(N("knowledge.pdfOcrPageCount"),q.ocrPageCount),F(N("knowledge.pdfOcrPageLimit"),q.pdfOcrPageLimit),F(N("knowledge.pdfRenderer"),q.pdfRenderer),F(N("knowledge.imagePreprocessor"),q.imagePreprocessor)]}),K&&(0,r.jsx)("div",{className:S().pdfPreviewStrip,children:Array.from({length:Math.min(Number(null!=(s=null!=(a=q.pdfPageCount)?a:q.ocrPageCount)?s:1)||1,6)},(e,l)=>(0,r.jsx)(o(),{width:220,height:320,src:"/api/kb/files/preview-pdf-page?relativePath=".concat(encodeURIComponent(D.file.relativePath),"&page=").concat(l+1),alt:"PDF ".concat(N("knowledge.pageNumber")," ").concat(l+1),unoptimized:!0,className:"border border-[var(--borderColor)] rounded object-cover"},l))}),J.length>0&&(0,r.jsx)(g.A,{size:"small",rowKey:"key",dataSource:J,pagination:{pageSize:10},columns:[{title:N("knowledge.pageNumber"),dataIndex:"page",width:90},{title:N("knowledge.ocrText"),dataIndex:"text",render:e=>(0,r.jsx)(P,{ellipsis:{rows:4,expandable:!0,symbol:N("knowledge.openExpand")},children:String(e)})}],className:"custom-table border border-[var(--borderColor)] rounded-xl overflow-hidden"})]})}),i},[q,D,W]),en=[{title:N("knowledge.index"),key:"index",width:70,render:(e,l,t)=>t+1},{title:N("knowledge.chunkIndex"),dataIndex:"chunkIndex",width:90,render:e=>String(e)},{title:N("knowledge.chunkType"),width:110,render:(e,l)=>{var t;return(0,r.jsx)(u.A,{children:String(null!=(t=I(l.metadataJson).chunkKind)?t:l.category)})}},{title:N("knowledge.sectionOrRange"),width:220,render:(e,l)=>{let t=I(l.metadataJson),n="string"==typeof t.rowRange?t.rowRange:void 0;return(0,r.jsxs)(c.A,{wrap:!0,children:[l.sectionTitle?(0,r.jsx)(u.A,{color:"cyan",children:l.sectionTitle}):null,n?(0,r.jsxs)(u.A,{color:"gold",children:[N("knowledge.rowPrefix")," ",n]}):null]})}},{title:N("knowledge.tokens"),dataIndex:"tokenCount",width:90},{title:N("knowledge.chunkContent"),render:(e,l)=>(0,r.jsx)(P,{ellipsis:{rows:3,expandable:!0,symbol:N("knowledge.openExpand")},className:S().searchContent,children:T(l.content,U)})}],ea=[{title:N("knowledge.index"),key:"index",width:70,render:(e,l,t)=>t+1},{title:N("knowledge.parentChunkId"),dataIndex:"parentId",width:260,render:e=>(0,r.jsx)("span",{className:"break-all",children:e})},{title:N("knowledge.chunkCount"),dataIndex:"chunkCount",width:90},{title:N("knowledge.section"),dataIndex:"sectionTitle",width:220},{title:N("knowledge.chunkContent"),render:(e,l)=>(0,r.jsx)(P,{ellipsis:{rows:3,expandable:!0,symbol:N("knowledge.openExpand")},className:S().searchContent,children:T(l.content,U)})}];return B?(0,r.jsxs)("div",{className:"space-y-5 animateFadeIn",children:[(0,r.jsx)(w.A,{active:!0,paragraph:{rows:1}}),(0,r.jsx)(h.A,{size:"small",children:(0,r.jsx)(w.A,{active:!0,paragraph:{rows:6}})}),(0,r.jsx)(h.A,{size:"small",children:(0,r.jsx)(w.A,{active:!0,paragraph:{rows:4}})})]}):J?(0,r.jsx)(f.A,{type:"error",showIcon:!0,description:(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{children:N("knowledge.fileDetailLoadFailed")}),(0,r.jsx)("div",{children:J})]})}):D?(0,r.jsxs)("div",{className:"space-y-5 animateFadeIn",children:[(0,r.jsx)("div",{className:"bg-[var(--colorBgContainer)] rounded-2xl overflow-hidden border border-[var(--borderColor)] p-6 mb-6",children:(0,r.jsxs)("div",{className:"flex flex-col md:flex-row md:items-center justify-between gap-6",children:[(0,r.jsxs)("div",{className:"flex items-center",children:[(0,r.jsx)(y.Ay,{icon:(0,r.jsx)(_.A,{}),href:"/knowledge/files",type:"link",className:"p-0 mr-4 text-[var(--colorTextSecondary)] hover:text-[var(--colorText)] flex items-center h-auto",children:N("knowledge.backToFileList")}),(0,r.jsxs)("div",{children:[(0,r.jsx)("h1",{className:"text-2xl font-bold text-[var(--colorText)] mb-1 flex items-center gap-2",children:N("knowledge.fileDetailTitle")}),(0,r.jsx)("p",{className:"text-sm text-[var(--colorTextSecondary)] m-0",children:N("knowledge.fileDetailDesc")})]})]}),(0,r.jsxs)(c.A,{wrap:!0,className:"shrink-0",children:[(0,r.jsx)(y.Ay,{size:"small",onClick:()=>{el(null==D?void 0:D.absolutePath)},children:N("knowledge.copySourcePath")}),(0,r.jsx)(y.Ay,{size:"small",onClick:()=>{el(null==D?void 0:D.directory)},children:N("knowledge.copyDirectory")}),(0,r.jsx)(y.Ay,{size:"small",onClick:()=>{et("file")},children:N("assets.openFile")}),(0,r.jsx)(y.Ay,{size:"small",onClick:()=>{et("directory")},children:N("assets.openDirectory")}),"pdf"===D.file.format?(0,r.jsx)(y.Ay,{size:"small",loading:H,onClick:()=>{ee()},children:N("knowledge.reOcr")}):null,(0,r.jsx)(y.Ay,{size:"small",type:"primary",loading:H,onClick:()=>{ee()},children:N("knowledge.reindexFile")})]})]})}),(0,r.jsx)(h.A,{size:"small",className:"rounded-2xl border-[var(--borderColor)]",title:(0,r.jsx)("span",{className:"font-semibold",children:N("knowledge.basicInfo")}),children:(0,r.jsxs)(d.A,{size:"small",column:{xxl:3,xl:2,lg:2,md:1,sm:1,xs:1},bordered:!0,styles:{label:{width:"120px",background:"var(--colorFillAlter)",color:"var(--colorTextSecondary)"}},children:[(0,r.jsx)(d.A.Item,{label:N("knowledge.path"),span:3,children:(0,r.jsx)("span",{className:"break-all",children:D.file.relativePath})}),(0,r.jsx)(d.A.Item,{label:N("knowledge.originalFile"),span:3,children:(0,r.jsx)("span",{className:"break-all",children:null!=(e=D.absolutePath)?e:"-"})}),(0,r.jsx)(d.A.Item,{label:N("knowledge.directory"),span:3,children:(0,r.jsx)("span",{className:"break-all",children:null!=(l=D.directory)?l:"-"})}),(0,r.jsx)(d.A.Item,{label:N("knowledge.fileCategory"),children:(0,r.jsxs)(c.A,{size:4,children:[(0,r.jsx)(u.A,{className:"m-0 border-0 bg-[var(--colorFillSecondary)]",children:(0,C.Jm)(D.file.category)})," ",(0,r.jsx)(u.A,{className:"m-0 border-0 bg-[var(--colorFillSecondary)]",children:D.file.format})]})}),(0,r.jsx)(d.A.Item,{label:N("knowledge.fileSize"),children:(0,C.z3)(D.file.fileSize)}),(0,r.jsx)(d.A.Item,{label:N("knowledge.chunkCount"),children:D.file.chunkCount}),(0,r.jsx)(d.A.Item,{label:N("knowledge.status"),children:(0,r.jsx)(u.A,{color:"active"===D.file.status?"success":"error"===D.file.status?"error":"outdated"===D.file.status?"warning":"disk"===D.file.status||"deleted"===D.file.status?"default":"processing",className:"m-0",children:N(C.mc[D.file.status]||"common.unknown")})}),(0,r.jsx)(d.A.Item,{label:N("knowledge.extractionMode"),children:String(null!=(t=q.extractionMode)?t:"-")}),(0,r.jsx)(d.A.Item,{label:N("knowledge.contentCoverage"),children:String(null!=(a=q.contentCoverage)?a:"-")}),(0,r.jsx)(d.A.Item,{label:N("knowledge.textLength"),children:String(null!=(i=q.textLength)?i:"-")})]})}),er.length>0&&(0,r.jsx)(h.A,{size:"small",className:"rounded-2xl border-[var(--borderColor)]",title:(0,r.jsx)("span",{className:"font-semibold",children:N("knowledge.structuredInfo")}),children:(0,r.jsx)(b.A,{items:er,className:"documents-tabs"})}),(0,r.jsx)(h.A,{size:"small",className:"rounded-2xl border-[var(--borderColor)]",title:(0,r.jsx)("span",{className:"font-semibold",children:N("knowledge.detailFilter")}),children:(0,r.jsxs)("div",{className:"flex flex-col w-full gap-4",children:[(0,r.jsx)(v.A,{allowClear:!0,size:"large",value:U,onChange:e=>G(e.target.value),placeholder:N("knowledge.detailFilterPlaceholder"),className:"rounded-xl bg-[var(--colorBgHover)] border-[var(--borderColor)] focus:bg-[var(--colorBgContainer)] hover:bg-[var(--colorBgContainer)] w-full"}),U?(0,r.jsxs)("div",{className:"flex flex-wrap gap-2 items-center bg-[var(--colorFillAlter)] p-3 rounded-xl border border-[var(--colorBorderSecondary)]",children:[(0,r.jsx)("span",{className:"text-sm font-medium text-[var(--colorTextSecondary)] mr-2",children:"过滤结果:"}),(0,r.jsxs)(u.A,{color:"blue",className:"m-0 border-0",children:[N("knowledge.parentMatches")," ",Y.length]}),(0,r.jsxs)(u.A,{color:"green",className:"m-0 border-0",children:[N("knowledge.childMatches")," ",Q.length]}),(0,r.jsx)("div",{className:"w-[1px] h-3 bg-[var(--colorBorderSecondary)] mx-1"}),(0,r.jsxs)("span",{className:"text-xs text-[var(--colorTextTertiary)]",children:[N("knowledge.filterTerm")," ",(0,r.jsx)("strong",{className:"text-[var(--colorText)]",children:U})]})]}):null]})}),(0,r.jsxs)(h.A,{size:"small",className:"rounded-2xl border-[var(--borderColor)]",title:(0,r.jsxs)("span",{className:"font-semibold",children:[N("knowledge.parentChunks")," ",(0,r.jsxs)(u.A,{className:"ml-2 border-0 bg-[var(--colorFillSecondary)] text-xs font-normal",children:[Y.length," / ",D.parents.length]})]}),children:[(0,r.jsx)(f.A,{type:"info",showIcon:!0,description:N("knowledge.parentChunkHint"),className:"mb-4 rounded-xl border-blue-200 bg-blue-50/50"}),(0,r.jsx)(g.A,{rowKey:"id",columns:ea,dataSource:Y,pagination:{pageSize:10},size:"small",className:"custom-table"})]}),(0,r.jsx)(h.A,{size:"small",className:"rounded-2xl border-[var(--borderColor)]",title:(0,r.jsxs)("span",{className:"font-semibold",children:[N("knowledge.childChunks")," ",(0,r.jsxs)(u.A,{className:"ml-2 border-0 bg-[var(--colorFillSecondary)] text-xs font-normal",children:[Q.length," / ",D.chunks.length]})]}),children:(0,r.jsx)(g.A,{rowKey:"id",columns:en,dataSource:Q,pagination:{pageSize:20},size:"small",className:"custom-table"})})]}):(0,r.jsx)(k.A,{description:N("knowledge.selectFile")})}}},e=>{e.O(0,[717,883,665,44,563,7,289,787,506,850,636,593,792],()=>e(e.s=37690)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[28],{1611:(e,t)=>{"use strict";t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M832 64H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V96c0-17.7-14.3-32-32-32zm-600 72h560v208H232V136zm560 480H232V408h560v208zm0 272H232V680h560v208zM304 240a40 40 0 1080 0 40 40 0 10-80 0zm0 272a40 40 0 1080 0 40 40 0 10-80 0zm0 272a40 40 0 1080 0 40 40 0 10-80 0z"}}]},name:"database",theme:"outlined"}},12887:(e,t)=>{"use strict";t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zm1.8 562H232V136h302v216a42 42 0 0042 42h216v494zM504 618H320c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h184c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zM312 490v48c0 4.4 3.6 8 8 8h384c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8H320c-4.4 0-8 3.6-8 8z"}}]},name:"file-text",theme:"outlined"}},13067:(e,t)=>{"use strict";t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zm1.8 562H232V136h302v216a42 42 0 0042 42h216v494zM514.1 580.1l-61.8-102.4c-2.2-3.6-6.1-5.8-10.3-5.8h-38.4c-2.3 0-4.5.6-6.4 1.9-5.6 3.5-7.3 10.9-3.7 16.6l82.3 130.4-83.4 132.8a12.04 12.04 0 0010.2 18.4h34.5c4.2 0 8-2.2 10.2-5.7L510 664.8l62.3 101.4c2.2 3.6 6.1 5.7 10.2 5.7H620c2.3 0 4.5-.7 6.5-1.9 5.6-3.6 7.2-11 3.6-16.6l-84-130.4 85.3-132.5a12.04 12.04 0 00-10.1-18.5h-35.7c-4.2 0-8.1 2.2-10.3 5.8l-61.2 102.3z"}}]},name:"file-excel",theme:"outlined"}},14569:e=>{e.exports={featureLabel:"style_featureLabel__XFSTX",featureValue:"style_featureValue__I_wMP",filterInput:"style_filterInput__4_Elu",filterSelect:"style_filterSelect__vUBJ9",statusCard:"style_statusCard__H7Mee",statusSummary:"style_statusSummary__7KavF",statusSummaryText:"style_statusSummaryText__Shw3j",statusClearBtn:"style_statusClearBtn__uJ9bE",statusExpandBtn:"style_statusExpandBtn__HhgIj",statusFilters:"style_statusFilters__g_LbG",filterPill:"style_filterPill__1pjFW",filterPillActive:"style_filterPillActive___UZVi",statusPanel:"style_statusPanel__9arTu",statusEmpty:"style_statusEmpty__8LWzH",timelineList:"style_timelineList__dqJrz",timelineItem:"style_timelineItem__dbuL_",timelineStatusIcon:"style_timelineStatusIcon__SkRwb",timelinePercent:"style_timelinePercent__pEyH4",timelineRow:"style_timelineRow__EDOVa",timelineTitle:"style_timelineTitle__Yujr8",timelineClose:"style_timelineClose__Byx_9",timelineDetail:"style_timelineDetail__nALei",timelineDesc:"style_timelineDesc__FMjWE",timelinePath:"style_timelinePath__C9VQI",timelineMeta:"style_timelineMeta__u_pCn",timelineMetaTag:"style_timelineMetaTag__G3jF1",timelineExpandArrow:"style_timelineExpandArrow__xIBdF",timelineExpandArrowOpen:"style_timelineExpandArrowOpen__TWWDC",fileNameCell:"style_fileNameCell__EHsnt",folderName:"style_folderName__VhLXP",folderRow:"style_folderRow__d7k9S",searchResultList:"style_searchResultList__cVKZg",searchResultItem:"style_searchResultItem__boj6D",searchResultHeader:"style_searchResultHeader__meVdJ",searchContent:"style_searchContent__XbUVk",pdfPreviewStrip:"style_pdfPreviewStrip__94_eG",drawingPreview:"style_drawingPreview__lkk_L"}},23793:(e,t)=>{"use strict";t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M360 184h-8c4.4 0 8-3.6 8-8v8h304v-8c0 4.4 3.6 8 8 8h-8v72h72v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80h72v-72zm504 72H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zM731.3 840H292.7l-24.2-512h487l-24.2 512z"}}]},name:"delete",theme:"outlined"}},25258:(e,t,r)=>{"use strict";r.d(t,{A:()=>b});var a=r(51541),l=r(61848),n=r(5669),s=r(97109),i=r(72658),c=r(3638),o=r(92162),d=r(82725),u=r(74567),f=r(632),h=r(49517),m=r(79412),p=r(19527);let v=(0,d.U)(e=>{let{prefixCls:t,className:r,closeIcon:a,closable:l,type:n,title:d,children:v,footer:g,classNames:x,styles:y,...b}=e,{getPrefixCls:w}=s.useContext(u.QO),{className:j,style:_,classNames:A,styles:k}=(0,u.TP)("modal"),z=w(),C=t||w("modal"),S=(0,f.A)(z),[P,M]=(0,p.Ay)(C,S),[N,O]=(0,o.AV)([A,x],[k,y],{props:e}),H=`${C}-confirm`,E={};return E=n?{closable:l??!1,title:"",footer:"",children:s.createElement(h.k,{...e,prefixCls:C,confirmPrefixCls:H,rootPrefixCls:z,content:v})}:{closable:l??!0,title:d,footer:null!==g&&s.createElement(m.w,{...e}),children:v},s.createElement(i.Z,{prefixCls:C,className:(0,c.$)(P,`${C}-pure-panel`,n&&H,n&&`${H}-${n}`,r,j,M,S,N.root),style:{..._,...O.root},...b,closeIcon:(0,m.O)(C,a),closable:l,classNames:N,styles:O,...E})});var g=r(99739);function x(e){return(0,a.Ay)((0,a.fp)(e))}let y=n.A;y.useModal=g.A,y.info=function(e){return(0,a.Ay)((0,a.$D)(e))},y.success=function(e){return(0,a.Ay)((0,a.Ej)(e))},y.error=function(e){return(0,a.Ay)((0,a.jT)(e))},y.warning=x,y.warn=x,y.confirm=function(e){return(0,a.Ay)((0,a.lr)(e))},y.destroyAll=function(){for(;l.A.length;){let e=l.A.pop();e&&e()}},y.config=a.FB,y._InternalPanelDoNotUseOrYouWillBeFired=v;let b=y},26619:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});var a=r(97109),l=r(1611),n=r(88483);function s(){return(s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e}).apply(this,arguments)}let i=a.forwardRef((e,t)=>a.createElement(n.A,s({},e,{ref:t,icon:l.A})))},26631:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});var a=r(97109),l=r(12887),n=r(88483);function s(){return(s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e}).apply(this,arguments)}let i=a.forwardRef((e,t)=>a.createElement(n.A,s({},e,{ref:t,icon:l.A})))},30289:(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"}},35311:(e,t)=>{"use strict";t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M456 231a56 56 0 10112 0 56 56 0 10-112 0zm0 280a56 56 0 10112 0 56 56 0 10-112 0zm0 280a56 56 0 10112 0 56 56 0 10-112 0z"}}]},name:"more",theme:"outlined"}},45551:(e,t,r)=>{"use strict";function a(e){if(0===e)return"0 B";let t=Math.floor(Math.log(e)/Math.log(1024)),r=e/Math.pow(1024,t);return"".concat(r.toFixed(+(0!==t))," ").concat(["B","KB","MB","GB","TB"][t])}function l(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"zh-CN";if(!e||e<=0)return"en-US"===t?"Never":"从未";let r=Math.floor(Math.floor((Date.now()-e)/1e3)/60),a=Math.floor(r/60),l=Math.floor(a/24);return l>30?new Date(e).toLocaleDateString(t):"en-US"===t?l>0?"".concat(l,"d ago"):a>0?"".concat(a,"h ago"):r>0?"".concat(r,"m ago"):"Just now":l>0?"".concat(l," 天前"):a>0?"".concat(a," 小时前"):r>0?"".concat(r," 分钟前"):"刚刚"}r.d(t,{Jm:()=>i,fw:()=>l,mc:()=>c,z3:()=>a});let n={document:"文档",spreadsheet:"表格",image:"图片",cad:"图纸",code:"代码",data:"数据",web:"网页",diagram:"图表",archive:"压缩包",other:"其他"},s={document:"Document",spreadsheet:"Spreadsheet",image:"Image",cad:"CAD",code:"Code",data:"Data",web:"Web",diagram:"Diagram",archive:"Archive",other:"Other"};function i(e){var t;let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"zh-CN";return null!=(t=("en-US"===r?s:n)[e])?t:e}let c={active:"common.statusIndexed",outdated:"common.statusOutdated",error:"common.statusAbnormal",deleted:"common.statusDeleted",disk:"common.statusNotIndexed"}},48893:(e,t)=>{"use strict";t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M553.1 509.1l-77.8 99.2-41.1-52.4a8 8 0 00-12.6 0l-99.8 127.2a7.98 7.98 0 006.3 12.9H696c6.7 0 10.4-7.7 6.3-12.9l-136.5-174a8.1 8.1 0 00-12.7 0zM360 442a40 40 0 1080 0 40 40 0 10-80 0zm494.6-153.4L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zm1.8 562H232V136h302v216a42 42 0 0042 42h216v494z"}}]},name:"file-image",theme:"outlined"}},53234:(e,t)=>{"use strict";t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M832 64H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V96c0-17.7-14.3-32-32-32zm-600 72h560v208H232V136zm560 480H232V408h560v208zm0 272H232V680h560v208zM496 208H312c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h184c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8zM312 544h184c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8H312c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8zm328 244a40 40 0 1080 0 40 40 0 10-80 0z"}}]},name:"hdd",theme:"outlined"}},54746:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});var a=r(97109),l=r(71242),n=r(88483);function s(){return(s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e}).apply(this,arguments)}let i=a.forwardRef((e,t)=>a.createElement(n.A,s({},e,{ref:t,icon:l.A})))},56398:(e,t)=>{"use strict";t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M505.7 661a8 8 0 0012.6 0l112-141.7c4.1-5.2.4-12.9-6.3-12.9h-74.1V168c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v338.3H400c-6.7 0-10.4 7.7-6.3 12.9l112 141.8zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z"}}]},name:"download",theme:"outlined"}},58209:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});var a=r(97109),l=r(23793),n=r(88483);function s(){return(s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e}).apply(this,arguments)}let i=a.forwardRef((e,t)=>a.createElement(n.A,s({},e,{ref:t,icon:l.A})))},58520:(e,t)=>{"use strict";t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zm1.8 562H232V136h302v216a42 42 0 0042 42h216v494zM528.1 472h-32.2c-5.5 0-10.3 3.7-11.6 9.1L434.6 680l-46.1-198.7c-1.3-5.4-6.1-9.3-11.7-9.3h-35.4a12.02 12.02 0 00-11.6 15.1l74.2 276c1.4 5.2 6.2 8.9 11.6 8.9h32c5.4 0 10.2-3.6 11.6-8.9l52.8-197 52.8 197c1.4 5.2 6.2 8.9 11.6 8.9h31.8c5.4 0 10.2-3.6 11.6-8.9l74.4-276a12.04 12.04 0 00-11.6-15.1H647c-5.6 0-10.4 3.9-11.7 9.3l-45.8 199.1-49.8-199.3c-1.3-5.4-6.1-9.1-11.6-9.1z"}}]},name:"file-word",theme:"outlined"}},61825:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});var a=r(97109),l=r(30289),n=r(88483);function s(){return(s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e}).apply(this,arguments)}let i=a.forwardRef((e,t)=>a.createElement(n.A,s({},e,{ref:t,icon:l.A})))},64207:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>et});var a=r(65321),l=r(97109),n=r(48321),s=r(43220),i=r.n(s),c=r(86109),o=r(17807),d=r(25258),u=r(11702),f=r(71102),h=r(85114),m=r(7576),p=r(50883),v=r(33442),g=r(21289),x=r(56768),y=r(48893),b=r(88483);function w(){return(w=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e}).apply(this,arguments)}let j=l.forwardRef((e,t)=>l.createElement(b.A,w({},e,{ref:t,icon:y.A})));var _=r(13067);function A(){return(A=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e}).apply(this,arguments)}let k=l.forwardRef((e,t)=>l.createElement(b.A,A({},e,{ref:t,icon:_.A})));var z=r(58520);function C(){return(C=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e}).apply(this,arguments)}let S=l.forwardRef((e,t)=>l.createElement(b.A,C({},e,{ref:t,icon:z.A})));var P=r(90939);function M(){return(M=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e}).apply(this,arguments)}let N=l.forwardRef((e,t)=>l.createElement(b.A,M({},e,{ref:t,icon:P.A})));var O=r(93314),H=r(61825),E=r(26619),T=r(29606),V=r(26631),F=r(64254),B=r(64629),R=r(58209),I=r(85855),L=r(30486),D=r(54746),q=r(84742),U=r(38762),$=r(76830),J=r(39219),Q=r(22931),W=r(6578),X=r(45551),G=r(14569),K=r.n(G);let Z=["document","spreadsheet","image","cad","code","data","web","diagram","other"],Y=/\.(zip|jar|war|apk|tar|gz|tgz|bz2|rar|7z)$/iu,ee=/(^|\/)\.DS_Store$|(^|\/)Thumbs\.db$|(^|\/)__MACOSX\/|\.bak$/iu;function et(){let e=(0,n.Vr)("knowledge"),{locale:t}=(0,n.x_)(),{message:r}=o.A.useApp(),s=(0,c.useRouter)(),y="string"==typeof s.query.category?s.query.category:"",[b,w]=(0,l.useState)([]),[_,A]=(0,l.useState)(!1),[z,C]=(0,l.useState)(""),[P,M]=(0,l.useState)(""),[G,et]=(0,l.useState)(y),[er,ea]=(0,l.useState)(!1),[el,en]=(0,l.useState)(!1),[es,ei]=(0,l.useState)([]),[ec,eo]=(0,l.useState)([]),[ed,eu]=(0,l.useState)([]),ef=(0,l.useRef)(G),eh=(0,l.useRef)(new Set),em=(0,l.useRef)(new Map);(0,l.useEffect)(()=>{ef.current=G},[G]),(0,l.useEffect)(()=>{et("string"==typeof s.query.category?s.query.category:"")},[s.query.category]);let ep=(0,l.useCallback)(async(e,t)=>{let r=null!=e?e:ef.current;(null==t?void 0:t.silent)||(A(!0),C(""));try{let e=await (0,W.HT)({category:r||void 0,limit:5e3});w(e.files||[]),e.initializing&&window.setTimeout(()=>{ep(r,{silent:!0})},3e3)}catch(e){(null==t?void 0:t.silent)||(w([]),C(e instanceof Error?e.message:"文件列表加载失败"))}finally{(null==t?void 0:t.silent)||A(!1)}},[]);(0,l.useEffect)(()=>{ep(G)},[G,ep]);let ev=e=>"document"===e.type?null:{id:e.id,type:e.type,title:e.title,description:e.message,status:e.status,percent:e.percent,filePath:e.filePath,chunkCount:e.chunkCount,textLength:e.textLength,extractionMode:e.extractionMode,error:e.error,createdAt:e.createdAt},eg=(0,l.useCallback)(async()=>{try{let t=await (0,W.Qx)(),r=t.operations.map(ev).filter(e=>!!e);for(let r of[...eh.current]){var e;let a=t.operations.find(e=>e.id===r);if(!a)continue;let l="".concat(a.status,":").concat(a.stage),n=null!=(e=em.current.get(r))?e:"";"success"===a.status||"error"===a.status?(eh.current.delete(r),em.current.delete(r),ep(void 0,{silent:!0})):l!==n&&(em.current.set(r,l),ep(void 0,{silent:!0}))}ei(e=>{let t=new Set(r.map(e=>e.id).filter(Boolean)),a=r.map(t=>{var r;let a=e.find(e=>e.id===t.id);return a?{...a,...t,createdAt:null!=(r=a.createdAt)?r:t.createdAt}:t}),l=e.filter(e=>e.id&&!t.has(e.id)&&"processing"===e.status);return[...a,...l].slice(0,50)})}catch(e){}},[ep]),ex=(0,l.useCallback)(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];ei(r=>{let a=r.findIndex(r=>e.id&&r.id===e.id||t.includes(r.title));if(a>=0){var l;let t=[...r];return t[a]={...r[a],...e,createdAt:null!=(l=r[a].createdAt)?l:e.createdAt},t}return[e,...r].slice(0,50)})},[]);(0,l.useEffect)(()=>{eg()},[eg]);let ey=(0,l.useMemo)(()=>{let e=0,t=0,r=0;for(let a of es)"processing"===a.status?e++:"success"===a.status?t++:("error"===a.status||"warning"===a.status)&&r++;return{processing:e,success:t,error:r}},[es]);(0,l.useEffect)(()=>{if(0===ey.processing)return;let e=window.setInterval(()=>{eg()},2e3),t=window.setInterval(()=>{ep(void 0,{silent:!0})},8e3);return()=>{window.clearInterval(e),window.clearInterval(t)}},[ep,eg,ey.processing]);let eb=async e=>{let t=e.filter(e=>{let t=e.webkitRelativePath||e.name;return e.size>0&&!Y.test(e.name)&&!ee.test(t)}),a=e.length-t.length;if(a>0&&r.warning("已跳过 ".concat(a," 个空文件、系统文件、备份文件或压缩包")),0===t.length)return;let l=1===t.length?t[0].name:"".concat(t.length," 个文件");ea(!0);let n="".concat(Date.now(),"-").concat(Math.random().toString(36).slice(2));eh.current.add(n),em.current.set(n,""),ex({id:n,type:"upload",title:"上传 ".concat(l),description:"等待上传、解析、切片和入库;同路径文件会更新,其他已有文件不会清除",status:"processing",percent:5});try{await (0,W.c1)(t,void 0,n,e=>{ex({id:n,type:"upload",title:"上传 ".concat(l),description:"正在上传文件:".concat(e.uploadedFiles,"/").concat(e.totalFiles,",批次 ").concat(e.batchIndex+1,"/").concat(e.totalBatches),status:"processing",percent:Math.min(5,Math.max(1,Math.round(e.uploadedFiles/Math.max(1,e.totalFiles)*5)))})}),r.info("文件已上传,正在后台解析、切片和入库;同路径文件会更新,其他已有文件不会清除,可在顶部“后台任务”查看进度"),M(""),et(""),eo([]),ef.current="",await eg()}catch(e){if(e instanceof W.NH){let t=e.failures.slice(0,3).map(e=>"批次 ".concat(e.batchIndex+1,"(").concat(e.files.join("、")).concat(e.files.length<5?"":" 等","):").concat(e.message)).join(";");r.warning("".concat(e.message,",失败文件可重新选择上传")),ex({id:n,type:"upload",title:"部分文件上传失败 ".concat(l),description:t||e.message,status:"warning",percent:100,error:t||e.message})}else{eh.current.delete(n),em.current.delete(n);let t=e instanceof Error?e.message:"请重试或检查文件格式";r.error(t||"上传失败"),ex({id:n,type:"error",title:"上传失败 ".concat(l),description:t,status:"error",percent:100})}}finally{ea(!1)}},ew=async()=>{en(!0);let e="reindex-ui-".concat(Date.now());ex({id:e,type:"reindex",title:"重新解析入库",description:"正在提交后台任务",status:"processing",percent:5});try{var t;let a=await (0,W.H1)(),l=a.operationId||e,n=a.job;r.info(a.alreadyRunning?"已有重新解析任务正在后台执行":"已提交重新解析入库任务,可在顶部“后台任务”查看进度"),ex({id:l,type:"reindex",title:(null==n?void 0:n.title)||"重新解析入库",description:(null==n?void 0:n.message)||"后台将重新扫描文件、解析、切片并重建索引",status:(null==n?void 0:n.status)||"processing",percent:null!=(t=null==n?void 0:n.percent)?t:10,error:null==n?void 0:n.error},["重新解析入库"]);for(let e=0;e<360;e++){let e=await (0,W.ax)(l).then(e=>e.job).catch(async()=>(await (0,W.Qx)()).operations.find(e=>e.id===l));if(e){let t="success"===e.status||"error"===e.status;if(ex({id:l,type:"error"===e.status?"error":"reindex",title:"success"===e.status?"重新解析入库完成":"error"===e.status?"重新解析入库失败":e.title,description:e.error||e.message,status:e.status,percent:e.percent,filePath:e.filePath,chunkCount:e.chunkCount,error:e.error}),t){"success"===e.status?r.success(e.message||"重新解析入库完成"):r.error(e.error||e.message||"重新解析入库失败");break}}await new Promise(e=>setTimeout(e,1e3))}await ep(),await eg()}catch(a){let t=a instanceof Error?a.message:"重新解析入库失败";r.error(t),ex({id:e,type:"error",title:"重新解析入库失败",description:t,status:"error",percent:100},["重新解析入库","重新解析入库完成","重新解析入库失败"])}finally{en(!1)}},ej=async function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],a="file-reindex-ui-".concat(Date.now(),"-").concat(Math.random().toString(36).slice(2));ex({id:a,type:"reindex",title:"".concat(t?"重新解析文件夹":"重新解析"," ").concat(e),description:t?"正在提交文件夹后台任务":"正在提交单文件后台任务",status:"processing",percent:5,filePath:e});try{var l;let t=await (0,W.HC)(e),n=t.operationId||a,s=t.job;r.info(t.alreadyRunning?"已有知识库任务正在后台执行":"已提交单文件重新解析任务"),ex({id:n,type:"reindex",title:(null==s?void 0:s.title)||"重新解析 ".concat(e),description:(null==s?void 0:s.message)||"后台将重新解析、分块并入库该文件",status:(null==s?void 0:s.status)||"processing",percent:null!=(l=null==s?void 0:s.percent)?l:10,filePath:(null==s?void 0:s.filePath)||e,chunkCount:null==s?void 0:s.chunkCount,error:null==s?void 0:s.error},["重新解析 ".concat(e)]);for(let t=0;t<240;t++){let t=await (0,W.ax)(n).then(e=>e.job).catch(async()=>(await (0,W.Qx)()).operations.find(e=>e.id===n));if(t){let a="success"===t.status||"error"===t.status;if(ex({id:n,type:"error"===t.status?"error":"reindex",title:"success"===t.status?"重新解析完成 ".concat(e):"error"===t.status?"重新解析失败 ".concat(e):t.title,description:t.error||t.message,status:t.status,percent:t.percent,filePath:t.filePath||e,chunkCount:t.chunkCount,error:t.error}),await ep(),a){"success"===t.status?r.success(t.message||"单文件重新解析完成"):r.error(t.error||t.message||"单文件重新解析失败");break}}await new Promise(e=>setTimeout(e,1e3))}await ep(),await eg()}catch(l){let t=l instanceof Error?l.message:"单文件重新解析失败";r.error(t),ex({id:a,type:"error",title:"重新解析失败 ".concat(e),description:t,status:"error",percent:100,filePath:e},["重新解析 ".concat(e)])}},e_=t=>{let a="selected"===t?eO:"filtered"===t?ek.map(e=>e.relativePath):[],l=b.length;if("all"!==t&&0===a.length||"all"===t&&0===l)return void r.info("没有可删除的文件");let n="all"===t?"删除全部文件 ".concat(l," 个?"):"filtered"===t?"删除当前筛选结果中的文件 ".concat(a.length," 个?"):"删除已选文件 ".concat(a.length," 个?");d.A.confirm({title:n,content:"将同时删除文件、切片、索引和向量记录。此操作不可撤销。",okText:e("common.delete"),cancelText:e("common.cancel"),okButtonProps:{danger:!0},onOk:async()=>{ei(e=>[{type:"delete",title:n,description:"正在批量删除文件和索引",status:"processing",percent:10},...e].slice(0,50));try{var e;let n=null!=(e=("all"===t?await (0,W.X8)():"selected"===t?await (0,W.tZ)(eN,eM):await (0,W.SJ)(a)).deleted)?e:"all"===t?l:a.length;r.success("已删除 ".concat(n," 个文件")),eo([]),ei(e=>[{type:"delete",title:"批量删除完成",description:"已删除 ".concat(n," 个文件、切片和索引"),status:"success"},...e].slice(0,50)),await ep(),await eg()}catch(e){r.error("批量删除失败"),ei(e=>[{type:"error",title:"批量删除失败",description:"请重试",status:"error"},...e].slice(0,50))}}})},eA=async()=>{if(0===eN.length&&0===eM.length)return;let t=r.loading(e("exporting"),0);try{let{blob:t,fileName:a,exported:l,skipped:n}=await (0,W.G8)({relativePaths:eN,folderPaths:eM}),s=URL.createObjectURL(t),i=document.createElement("a");i.href=s,i.download=a,document.body.appendChild(i),i.click(),i.remove(),URL.revokeObjectURL(s),n>0?r.warning(e("exportParsedSkipped").replace("{count}",String(n))):r.success(e("exportParsedSuccess").replace("{count}",String(l)))}catch(t){r.error(t instanceof Error&&t.message?t.message:e("exportParsedFailed"))}finally{t()}},ek=(0,l.useMemo)(()=>P?b.filter(e=>e.relativePath.toLowerCase().includes(P.toLowerCase())):b,[P,b]),ez=(0,l.useMemo)(()=>new Set(ek.map(e=>e.relativePath)),[ek]),eC=(0,l.useMemo)(()=>{let e={};for(let r of[...ek].sort((e,t)=>e.relativePath.localeCompare(t.relativePath))){let a=r.relativePath.split("/"),l="";for(let n=0;n<a.length;n++){let s=a[n],i=l;l=l?"".concat(l,"/").concat(s):s;let c=n===a.length-1;if(e[l])c||e[l].isFolder?c&&(e[l].isFolder=!1,e[l].file=r,e[l].fileCount=1,e[l].totalSize=r.fileSize,e[l].totalChunks=r.chunkCount):(e[l].isFolder=!0,e[l].children=[],e[l].fileCount=0,e[l].totalSize=0,e[l].totalChunks=0);else{var t;e[l]={key:l,name:s,isFolder:!c,...c?{file:r,fileCount:1,totalSize:r.fileSize,totalChunks:r.chunkCount}:{children:[],fileCount:0,totalSize:0,totalChunks:0}},i&&(null==(t=e[i])?void 0:t.children)&&e[i].children.push(e[l])}}}let r=e=>{for(let n of e)if(n.children){r(n.children);let e=0,s=0,i=0;for(let r of n.children){var t,a,l;e+=null!=(t=r.fileCount)?t:0,s+=null!=(a=r.totalSize)?a:0,i+=null!=(l=r.totalChunks)?l:0}n.fileCount=e,n.totalSize=s,n.totalChunks=i}},a=e=>e.map(e=>e.children?{...e,children:a(e.children)}:e).filter(e=>{var t,r,a;return!e.isFolder||(null!=(r=e.fileCount)?r:0)>0&&(null!=(a=null==(t=e.children)?void 0:t.length)?a:0)>0}),l=Object.values(e).filter(e=>!e.key.includes("/"));return r(l),a(l)},[ek]),eS=(0,l.useMemo)(()=>{let e=[],t=r=>{for(let a of r)e.push(a.key),a.children&&t(a.children)};return t(eC),e},[eC]),eP=(0,l.useMemo)(()=>new Set([...ez,...eS]),[eS,ez]),eM=(0,l.useMemo)(()=>ec.map(String).filter(e=>!ez.has(e)&&eS.includes(e)),[eS,ec,ez]),eN=(0,l.useMemo)(()=>ec.map(String).filter(e=>ez.has(e)),[ec,ez]),eO=(0,l.useMemo)(()=>{let e=new Set;for(let t of eN){let r=b.find(e=>e.relativePath===t);r&&e.add(r.relativePath)}for(let t of eM){let r="".concat(t,"/");for(let t of b)t.relativePath.startsWith(r)&&e.add(t.relativePath)}return Array.from(e)},[b,eN,eM]),eH=eO.length;(0,l.useEffect)(()=>{eo(e=>e.filter(e=>eP.has(String(e))))},[eP]);let eE=(0,l.useMemo)(()=>P?eS:[],[P,eS]);(0,l.useEffect)(()=>{eu(eE)},[eE]);let eT=(e,t)=>{eu(r=>e?[...r,t.key]:r.filter(e=>e!==t.key))},eV=[{title:e("fileName"),dataIndex:"name",key:"name",render:(e,t)=>(0,a.jsxs)("span",{className:K().fileNameCell,children:[t.isFolder?(0,a.jsx)("span",{style:{cursor:"pointer"},onClick:e=>{e.stopPropagation(),eT(!ed.includes(t.key),t)},children:(e=>{let t=e.children;return t&&0!==t.length?(0,a.jsx)(F.A,{style:{color:"#fa8c16",fontSize:15}}):(0,a.jsx)(T.A,{style:{color:"#fa8c16",fontSize:15}})})(t)}):(e=>{if(!e)return(0,a.jsx)(x.A,{style:{fontSize:15}});let t=e.category;return"image"===t?(0,a.jsx)(j,{style:{color:"#eb2f96",fontSize:15}}):"spreadsheet"===t?(0,a.jsx)(k,{style:{color:"#52c41a",fontSize:15}}):"document"===t?(0,a.jsx)(S,{style:{color:"#1677ff",fontSize:15}}):"code"===t?(0,a.jsx)(N,{style:{color:"#fa8c16",fontSize:15}}):"archive"===t?(0,a.jsx)(O.A,{style:{color:"#8c8c8c",fontSize:15}}):"web"===t?(0,a.jsx)(H.A,{style:{color:"#13c2c2",fontSize:15}}):"data"===t?(0,a.jsx)(E.A,{style:{color:"#722ed1",fontSize:15}}):"cad"===t?(0,a.jsx)(T.A,{style:{color:"#fa541c",fontSize:15}}):"diagram"===t?(0,a.jsx)(j,{style:{color:"#a0d911",fontSize:15}}):(0,a.jsx)(V.A,{style:{fontSize:15}})})(t.file),t.isFolder?(0,a.jsx)("span",{className:K().folderName,onClick:e=>{e.stopPropagation(),eT(!ed.includes(t.key),t)},children:t.name}):(0,a.jsx)(a.Fragment,{children:(0,a.jsx)(i(),{className:"min-w-0 max-w-[520px] whitespace-normal break-words leading-relaxed",href:"/knowledge/file-detail?relativePath=".concat(encodeURIComponent(t.key)),children:t.name})})]})},{title:e("fileCategory"),dataIndex:"category",key:"cat",width:110,render:(e,r)=>{var l,n;return r.isFolder?(0,a.jsx)("span",{style:{color:"var(--colorTextQuaternary)"},children:"—"}):(0,a.jsx)(u.A,{children:(0,X.Jm)(null!=(n=null==(l=r.file)?void 0:l.category)?n:"",t)})}},{title:e("fileSize"),dataIndex:"fileSize",key:"size",width:90,render:(e,t)=>{var r,a,l;return(0,X.z3)(t.isFolder?null!=(a=t.totalSize)?a:0:null!=(l=null==(r=t.file)?void 0:r.fileSize)?l:0)}},{title:e("chunksCount"),dataIndex:"chunkCount",key:"chunks",width:80,render:(e,t)=>{var r,l,n;let s=t.isFolder?null!=(l=t.totalChunks)?l:0:null!=(n=null==(r=t.file)?void 0:r.chunkCount)?n:0;return(0,a.jsx)(u.A,{color:s>1?"green":"orange",children:s})}},{title:e("parsingStatus"),dataIndex:"status",key:"status",width:100,render:(e,t)=>{var r,l,n,s;return t.isFolder?(0,a.jsx)("span",{style:{color:"var(--colorTextQuaternary)"},children:"—"}):(0,a.jsx)(u.A,{color:"active"===(s=null==(r=t.file)?void 0:r.status)?"green":"processing"===s||"indexing"===s?"blue":"error"===s?"red":"orange",children:(null==(l=t.file)?void 0:l.errorMessage)||(null==(n=t.file)?void 0:n.status)||"—"})}},{title:e("fileDate"),dataIndex:"mtime",key:"date",width:130,render:(e,r)=>{var l;return r.isFolder?(0,a.jsx)("span",{style:{color:"var(--colorTextQuaternary)"},children:"—"}):(null==(l=r.file)?void 0:l.mtime)?new Date(r.file.mtime).toLocaleDateString(t):"—"}},{title:e("source"),key:"source",width:100,render:(t,r)=>r.isFolder?(0,a.jsx)("span",{style:{color:"var(--colorTextQuaternary)"},children:"—"}):(0,a.jsx)(u.A,{color:"cyan",children:e("fileSource")})},{title:"",key:"act",width:80,align:"center",render:(t,l)=>{var n;return(0,a.jsx)(f.A,{menu:{items:l.isFolder?[{key:"reindex-folder",label:"重新索引文件夹",icon:(0,a.jsx)(B.A,{}),disabled:(null!=(n=l.fileCount)?n:0)===0,onClick:()=>{ej(l.key,!0)}}]:[{key:"reindex",label:e("reindex"),icon:(0,a.jsx)(B.A,{}),onClick:()=>{ej(l.file.relativePath)}},{type:"divider"},{key:"delete",label:e("delete"),icon:(0,a.jsx)(R.A,{}),danger:!0,onClick:()=>{var t;return t=l.file,void d.A.confirm({title:e("delete"),content:e("deleteConfirm"),okText:e("common.confirm"),cancelText:e("common.cancel"),okButtonProps:{danger:!0},onOk:async()=>{ei(e=>[{type:"delete",title:"删除 ".concat(t.relativePath),description:"正在删除文件记录",status:"processing"},...e].slice(0,50));try{await (0,W.xq)(t.relativePath),r.success("已删除"),ei(e=>[{type:"delete",title:"删除完成 ".concat(t.relativePath),description:"文件和索引记录已移除",status:"success"},...e].slice(0,50)),eo(e=>e.filter(e=>e!==t.relativePath)),await ep(),await eg()}catch(e){r.error("删除失败"),ei(e=>[{type:"error",title:"删除失败 ".concat(t.relativePath),description:"请重试",status:"error"},...e].slice(0,50))}}})}}]},trigger:["click"],children:(0,a.jsx)(h.Ay,{type:"text",size:"small",icon:(0,a.jsx)(I.A,{})})})}}],eF=(0,a.jsxs)("div",{className:"flex flex-1 md:flex-none w-full md:w-auto items-center gap-3",children:[(0,a.jsx)(m.A,{placeholder:e("searchPlaceholder"),prefix:(0,a.jsx)(L.A,{className:"text-[var(--colorTextTertiary)]"}),value:P,onChange:e=>{M(e.target.value)},allowClear:!0,variant:"borderless",className:"max-w-[300px] flex-1 bg-transparent hover:bg-transparent focus:bg-transparent",style:{borderBottom:"1px solid var(--borderColor)",borderRadius:0,paddingLeft:0,paddingRight:0}}),(0,a.jsx)(p.A,{value:G||void 0,onChange:e=>{et(e||"")},placeholder:e("filterCategory"),allowClear:!0,style:{width:140},variant:"borderless",options:[{label:e("allCategories"),value:""},...Z.map(e=>({label:(0,X.Jm)(e,t),value:e}))]}),(0,a.jsx)("div",{className:"w-[1px] h-6 bg-[var(--borderColor)] mx-1"}),(0,a.jsx)(f.A,{menu:{items:[{key:"file",label:e("uploadFiles"),icon:(0,a.jsx)(x.A,{}),onClick:()=>{var e;return null==(e=document.getElementById("kb-file-upload-input"))?void 0:e.click()}},{key:"folder",label:e("uploadFolder"),icon:(0,a.jsx)(T.A,{}),onClick:()=>{var e;return null==(e=document.getElementById("kb-folder-upload-input"))?void 0:e.click()}},{type:"divider"},{key:"reindex",label:e("reindexAll"),icon:(0,a.jsx)(B.A,{}),onClick:()=>{ew()},danger:!0}]},trigger:["click"],children:(0,a.jsx)(h.Ay,{type:"primary",icon:(0,a.jsx)(D.A,{}),loading:er||el,className:"rounded-md px-4",children:e("new")})}),(0,a.jsx)("input",{id:"kb-file-upload-input",type:"file",multiple:!0,hidden:!0,accept:".pdf,.doc,.docx,.txt,.md,.csv,.tsv,.xls,.xlsx,.png,.jpg,.jpeg,.webp,.svg,.dwg,.dxf,.step,.stp,.iges,.igs,.js,.ts,.tsx,.jsx,.py,.go,.java,.cs,.cpp,.c,.h,.json,.jsonl,.yaml,.yml,.xml,.html,.htm,.drawio,.dio,.vsdx,.vdx,.puml,.plantuml,.mmd,.mermaid,.excalidraw",onChange:e=>{var t;let r=Array.from(null!=(t=e.target.files)?t:[]);e.target.value="",eb(r)}}),(0,a.jsx)("input",{id:"kb-folder-upload-input",type:"file",multiple:!0,hidden:!0,webkitdirectory:"",onChange:e=>{var t;let r=Array.from(null!=(t=e.target.files)?t:[]);e.target.value="",eb(r)}})]});return(0,a.jsxs)("div",{className:"h-[calc(100vh-140px)] flex flex-col",children:[(0,a.jsxs)("div",{className:"bg-[var(--colorBgContainer)] rounded-2xl border border-[var(--borderColor)] p-6 mb-4 shrink-0 animateFadeIn",children:[(0,a.jsxs)("div",{className:"flex flex-col md:flex-row md:items-center justify-between gap-6 pb-6 border-b border-[var(--borderColor)]",children:[(0,a.jsxs)("div",{children:[(0,a.jsxs)("h1",{className:"text-2xl font-bold tracking-tight text-[var(--colorText)] mb-1 flex items-center gap-2",children:[(0,a.jsx)(E.A,{className:"text-[var(--colorAccent)]"}),e("files")]}),(0,a.jsx)("p",{className:"text-sm text-[var(--colorTextSecondary)] m-0",children:e("manageRawFiles")})]}),eF]}),(0,a.jsxs)("div",{className:"grid grid-cols-2 md:grid-cols-4 gap-6 pt-6 stagger-1",children:[(0,a.jsxs)("div",{className:"flex items-center gap-4",children:[(0,a.jsx)("div",{className:"w-12 h-12 rounded-xl bg-[var(--colorBgHover)] flex items-center justify-center text-xl text-[var(--colorTextSecondary)]",children:(0,a.jsx)(F.A,{})}),(0,a.jsxs)("div",{children:[(0,a.jsx)("div",{className:"text-[11px] font-semibold text-[var(--colorTextTertiary)] uppercase tracking-wider mb-1",children:e("totalRootFolders")}),(0,a.jsx)("div",{className:"text-xl font-bold text-[var(--colorText)] leading-none",children:eC.length})]})]}),(0,a.jsxs)("div",{className:"flex items-center gap-4",children:[(0,a.jsx)("div",{className:"w-12 h-12 rounded-xl bg-[var(--colorBgHover)] flex items-center justify-center text-xl text-[var(--colorTextSecondary)]",children:(0,a.jsx)(V.A,{})}),(0,a.jsxs)("div",{children:[(0,a.jsx)("div",{className:"text-[11px] font-semibold text-[var(--colorTextTertiary)] uppercase tracking-wider mb-1",children:e("totalFilesStats")}),(0,a.jsx)("div",{className:"text-xl font-bold text-[var(--colorText)] leading-none",children:b.length})]})]}),(0,a.jsxs)("div",{className:"flex items-center gap-4",children:[(0,a.jsx)("div",{className:"w-12 h-12 rounded-xl bg-green-50 dark:bg-green-900/20 flex items-center justify-center text-xl text-green-600 dark:text-green-500",children:(0,a.jsx)(q.A,{})}),(0,a.jsxs)("div",{children:[(0,a.jsx)("div",{className:"text-[11px] font-semibold text-[var(--colorTextTertiary)] uppercase tracking-wider mb-1",children:e("successfullyParsed")}),(0,a.jsx)("div",{className:"text-xl font-bold text-[var(--colorText)] leading-none",children:b.filter(e=>"success"===e.status).length})]})]}),(0,a.jsxs)("div",{className:"flex items-center gap-4",children:[(0,a.jsx)("div",{className:"w-12 h-12 rounded-xl bg-red-50 dark:bg-red-900/20 flex items-center justify-center text-xl text-red-600 dark:text-red-500",children:(0,a.jsx)(U.A,{})}),(0,a.jsxs)("div",{children:[(0,a.jsx)("div",{className:"text-[11px] font-semibold text-[var(--colorTextTertiary)] uppercase tracking-wider mb-1",children:e("parsingErrors")}),(0,a.jsx)("div",{className:"text-xl font-bold text-[var(--colorText)] leading-none",children:b.filter(e=>"error"===e.status).length})]})]})]})]}),z&&(0,a.jsx)("div",{className:"p-4 mb-4 bg-[var(--colorDanger)]/10 text-[var(--colorDanger)] rounded-xl border border-[var(--colorDanger)]/20",children:z}),(0,a.jsxs)("div",{className:"flex-1 min-h-0 bg-[var(--colorBgContainer)] rounded-2xl border border-[var(--borderColor)] overflow-hidden flex flex-col animateFadeIn stagger-3",style:{opacity:0},children:[(0,a.jsxs)("div",{className:"flex justify-between items-center p-4 bg-[var(--colorBgHover)] border-b border-[var(--borderColor)] shrink-0",children:[(0,a.jsx)("div",{className:"text-xs text-[var(--colorTextSecondary)] font-medium",children:e("showingMatchingFiles").replace("{count}",String(ek.length))}),(0,a.jsxs)(v.A,{size:8,children:[eH>0&&(0,a.jsxs)(h.Ay,{size:"small",icon:(0,a.jsx)($.A,{}),onClick:()=>void eA(),className:"rounded-lg",children:[e("exportParsed")," (",eH,")"]}),eH>0&&(0,a.jsxs)(h.Ay,{danger:!0,size:"small",icon:(0,a.jsx)(R.A,{}),onClick:()=>e_("selected"),className:"rounded-lg",children:[e("deleteSelected")," (",eH,")"]}),(0,a.jsx)(h.Ay,{danger:!0,size:"small",disabled:0===b.length,onClick:()=>e_("all"),className:"rounded-lg",children:e("deleteAll")})]})]}),(0,a.jsx)(g.A,{rowKey:"key",columns:eV,dataSource:eC,loading:_&&!er&&!el,size:"middle",className:"flex-1 custom-table border-0",scroll:{y:"calc(100vh - 460px)"},expandable:{expandedRowKeys:ed,onExpand:eT,expandIcon:e=>{let{expanded:t,onExpand:r,record:l}=e;return l.isFolder?(0,a.jsx)("button",{type:"button",onClick:e=>r(l,e),className:"w-6 h-6 mr-1 inline-flex items-center justify-center align-middle text-[var(--colorTextTertiary)] hover:text-[var(--colorText)] transition-colors bg-transparent border-0 p-0 leading-none",children:t?(0,a.jsx)(J.A,{size:16}):(0,a.jsx)(Q.A,{size:16})}):(0,a.jsx)("span",{className:"w-6 h-6 inline-flex"})}},locale:{emptyText:_?e("common.loading"):P?e("emptySearch"):e("noFiles")},pagination:!1,rowClassName:e=>"hover:bg-[var(--colorBgHover)] transition-colors ".concat(e.isFolder?"font-medium bg-[var(--colorBgSecondary)]/30":""),rowSelection:{selectedRowKeys:ec,onChange:eo,checkStrictly:!1,getCheckboxProps:e=>{var t;return{disabled:!!e.isFolder&&(null!=(t=e.fileCount)?t:0)===0}}}})]})]})}},71242:(e,t)=>{"use strict";t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M482 152h60q8 0 8 8v704q0 8-8 8h-60q-8 0-8-8V160q0-8 8-8z"}},{tag:"path",attrs:{d:"M192 474h672q8 0 8 8v60q0 8-8 8H160q-8 0-8-8v-60q0-8 8-8z"}}]},name:"plus",theme:"outlined"}},76830:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});var a=r(97109),l=r(56398),n=r(88483);function s(){return(s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e}).apply(this,arguments)}let i=a.forwardRef((e,t)=>a.createElement(n.A,s({},e,{ref:t,icon:l.A})))},85855:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});var a=r(97109),l=r(35311),n=r(88483);function s(){return(s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e}).apply(this,arguments)}let i=a.forwardRef((e,t)=>a.createElement(n.A,s({},e,{ref:t,icon:l.A})))},90426:(e,t,r)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/knowledge/files",function(){return r(64207)}])},90939:(e,t)=>{"use strict";t.A={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M516 673c0 4.4 3.4 8 7.5 8h185c4.1 0 7.5-3.6 7.5-8v-48c0-4.4-3.4-8-7.5-8h-185c-4.1 0-7.5 3.6-7.5 8v48zm-194.9 6.1l192-161c3.8-3.2 3.8-9.1 0-12.3l-192-160.9A7.95 7.95 0 00308 351v62.7c0 2.4 1 4.6 2.9 6.1L420.7 512l-109.8 92.2a8.1 8.1 0 00-2.9 6.1V673c0 6.8 7.9 10.5 13.1 6.1zM880 112H144c-17.7 0-32 14.3-32 32v736c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V144c0-17.7-14.3-32-32-32zm-40 728H184V184h656v656z"}}]},name:"code",theme:"outlined"}},93314:(e,t,r)=>{"use strict";r.d(t,{A:()=>i});var a=r(97109),l=r(53234),n=r(88483);function s(){return(s=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e}).apply(this,arguments)}let i=a.forwardRef((e,t)=>a.createElement(n.A,s({},e,{ref:t,icon:l.A})))}},e=>{e.O(0,[717,883,665,44,563,7,289,636,593,792],()=>e(e.s=90426)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[414],{45551:(e,t,l)=>{"use strict";function n(e){if(0===e)return"0 B";let t=Math.floor(Math.log(e)/Math.log(1024)),l=e/Math.pow(1024,t);return"".concat(l.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 l=Math.floor(Math.floor((Date.now()-e)/1e3)/60),n=Math.floor(l/60),a=Math.floor(n/24);return a>30?new Date(e).toLocaleDateString(t):"en-US"===t?a>0?"".concat(a,"d ago"):n>0?"".concat(n,"h ago"):l>0?"".concat(l,"m ago"):"Just now":a>0?"".concat(a," 天前"):n>0?"".concat(n," 小时前"):l>0?"".concat(l," 分钟前"):"刚刚"}l.d(t,{Jm:()=>r,fw:()=>a,mc:()=>c,z3:()=>n});let o={document:"文档",spreadsheet:"表格",image:"图片",cad:"图纸",code:"代码",data:"数据",web:"网页",diagram:"图表",archive:"压缩包",other:"其他"},s={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 l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"zh-CN";return null!=(t=("en-US"===l?s:o)[e])?t:e}let c={active:"common.statusIndexed",outdated:"common.statusOutdated",error:"common.statusAbnormal",deleted:"common.statusDeleted",disk:"common.statusNotIndexed"}},50423:(e,t,l)=>{"use strict";l.r(t),l.d(t,{default:()=>E});var n=l(65321),a=l(97109),o=l(34986),s=l(48321),r=l(17807),c=l(33442),i=l(85114),d=l(2256),u=l(38770),h=l(68787),x=l(54849),m=l(50883),g=l(76506),j=l(11702),A=l(29606),f=l(30486),w=l(99811),k=l(56768),v=l(26619),p=l(93314),y=l(58740),b=l(35459),C=l(23216),S=l(63663),z=l(49484),D=l(6578),N=l(45551);let _=["document","spreadsheet","image","cad","code","data","web","diagram","archive","other"];function E(){var e,t,l,E;let I=(0,s.Vr)(),{locale:T}=(0,s.x_)(),M=(0,o.useRouter)(),{stats:B,loading:F,reload:O}=function(){let[e,t]=(0,a.useState)(null),[l,n]=(0,a.useState)(!1),o=(0,a.useCallback)(async()=>{n(!0);try{t(await (0,D.hc)())}catch(e){}finally{n(!1)}},[]);return(0,a.useEffect)(()=>{o()},[o]),{stats:e,loading:l,reload:o}}(),R=function(){let[e,t]=(0,a.useState)(null);return(0,a.useEffect)(()=>{(0,D.VW)().then(t).catch(()=>{})},[]),e}(),{reindexing:P,reindex:J}=function(){let[e,t]=(0,a.useState)(!1);return{reindexing:e,reindex:(0,a.useCallback)(async()=>{t(!0);try{return await (0,D.H1)(),!0}catch(e){return!1}finally{t(!1)}},[])}}(),[U,W]=(0,a.useState)("document"),[H,V]=(0,a.useState)({count:0,totalSize:0,totalChunks:0}),{message:X}=r.A.useApp(),G=(0,a.useCallback)(async e=>{try{let t=await (0,D.HT)({category:e,limit:1e4}),l=0,n=0;if(Array.isArray(t.files))for(let e of t.files)l+=e.fileSize||0,n+=e.chunkCount||0;V({count:t.total||0,totalSize:l,totalChunks:n})}catch(e){V({count:0,totalSize:0,totalChunks:0})}},[]);(0,a.useEffect)(()=>{G(U)},[U,G]);let K=async()=>{await J()?await Promise.all([O(),G(U)]):X.error(I("common.error"))};return(0,n.jsxs)("div",{className:"space-y-6 animateFadeIn",children:[(0,n.jsxs)("div",{className:"flex items-center justify-between",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("h1",{className:"pageTitle",children:I("knowledge.manageTitle")}),(0,n.jsx)("p",{className:"pageDesc",children:I("knowledge.manageDesc")})]}),(0,n.jsxs)(c.A,{children:[(0,n.jsx)(i.Ay,{icon:(0,n.jsx)(A.A,{}),onClick:()=>M.push("/knowledge/files"),children:I("knowledge.files")}),(0,n.jsx)(i.Ay,{icon:(0,n.jsx)(f.A,{}),onClick:()=>M.push("/knowledge/search"),children:I("knowledge.search")}),(0,n.jsx)(i.Ay,{icon:(0,n.jsx)(w.A,{}),loading:P,onClick:()=>{K()},children:I("knowledge.reindex")})]})]}),(0,n.jsx)(d.A,{gutter:[16,16],children:[{icon:(0,n.jsx)(k.A,{}),label:I("knowledge.totalFiles"),value:null!=(t=null==B?void 0:B.fileCount)?t:0},{icon:(0,n.jsx)(v.A,{}),label:I("knowledge.totalChunks"),value:null!=(l=null==B?void 0:B.chunkCount)?l:0},{icon:(0,n.jsx)(p.A,{}),label:I("knowledge.totalSize"),value:(0,N.z3)(null!=(E=null==B?void 0:B.totalSizeBytes)?E:0)},{icon:(0,n.jsx)(y.A,{}),label:I("knowledge.lastIndexed"),value:(null==B?void 0:B.lastIndexedAt)?(0,N.fw)(B.lastIndexedAt,T):I("common.never")}].map((e,t)=>(0,n.jsx)(u.A,{xs:12,sm:6,children:(0,n.jsx)(h.A,{size:"small",loading:F&&!B,children:(0,n.jsx)(x.A,{title:e.label,value:e.value,prefix:e.icon})})},t))}),(0,n.jsxs)(h.A,{title:I("knowledge.categories"),size:"small",children:[(0,n.jsx)(m.A,{value:U,onChange:e=>W(e),options:_.map(e=>({label:(0,N.Jm)(e,T),value:e})),style:{width:160,marginBottom:16}}),(0,n.jsxs)(d.A,{gutter:[16,16],children:[(0,n.jsx)(u.A,{xs:12,sm:6,children:(0,n.jsx)(x.A,{title:I("knowledge.fileCount"),value:H.count,prefix:(0,n.jsx)(k.A,{style:{color:"var(--colorAccent)"}})})}),(0,n.jsx)(u.A,{xs:12,sm:6,children:(0,n.jsx)(x.A,{title:I("knowledge.totalSize"),value:(0,N.z3)(H.totalSize),prefix:(0,n.jsx)(p.A,{style:{color:"var(--colorWarning)"}})})}),(0,n.jsx)(u.A,{xs:12,sm:6,children:(0,n.jsx)(x.A,{title:I("knowledge.chunksCount"),value:H.totalChunks,prefix:(0,n.jsx)(b.A,{style:{color:"var(--colorOk)"}})})}),(0,n.jsx)(u.A,{xs:12,sm:6,children:(0,n.jsx)(x.A,{title:I("knowledge.averageSize"),value:H.count>0?(0,N.z3)(H.totalSize/H.count):"—",prefix:(0,n.jsx)(v.A,{style:{color:"var(--colorDanger)"}})})})]})]}),R&&(0,n.jsx)(h.A,{title:I("knowledge.features"),size:"small",children:(0,n.jsxs)(g.A,{size:"small",column:{xs:1,sm:2},bordered:!0,children:[(0,n.jsx)(g.A.Item,{label:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(C.A,{style:{marginRight:4}}),I("knowledge.vectorStore")]}),children:(0,n.jsx)(j.A,{color:"blue",children:R.vectorStore})}),(0,n.jsx)(g.A.Item,{label:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(b.A,{style:{marginRight:4}}),I("knowledge.embedding")]}),children:(0,n.jsx)(j.A,{color:"purple",children:R.embeddingProvider})}),(0,n.jsxs)(g.A.Item,{label:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(S.A,{style:{marginRight:4}}),I("knowledge.featureDedup")]}),children:[(0,n.jsx)(j.A,{color:"green",children:R.dedupEngine}),(0,n.jsx)("div",{className:"text-xs",style:{color:"var(--colorTextSecondary)",marginTop:2},children:I("knowledge.featureDedupDesc")})]}),(0,n.jsxs)(g.A.Item,{label:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(z.A,{style:{marginRight:4}}),I("knowledge.featureChunker")]}),children:[(0,n.jsx)(j.A,{color:"orange",children:R.chunker}),(0,n.jsx)("div",{className:"text-xs",style:{color:"var(--colorTextSecondary)",marginTop:2},children:I("knowledge.featureChunkerDesc")})]}),(null==(e=R.builtinExtractors)?void 0:e.length)>0&&(0,n.jsx)(g.A.Item,{label:I("knowledge.builtinExtractors"),span:2,children:(0,n.jsx)(c.A,{wrap:!0,children:R.builtinExtractors.map(e=>(0,n.jsx)(j.A,{color:"cyan",children:e},e))})})]})})]})}},54178:(e,t,l)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/knowledge/manage",function(){return l(50423)}])}},e=>{e.O(0,[717,883,665,787,506,788,636,593,792],()=>e(e.s=54178)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[12],{29735:(e,n,u)=>{"use strict";u.r(n),u.d(n,{default:()=>l});var _=u(97109),t=u(86109);function l(){let e=(0,t.useRouter)();return(0,_.useEffect)(()=>{e.replace("/knowledge/manage")},[e]),null}},74183:(e,n,u)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/knowledge",function(){return u(29735)}])}},e=>{e.O(0,[636,593,792],()=>e(e.s=74183)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[46],{77305:(e,a,l)=>{(window.__NEXT_P=window.__NEXT_P||[]).push(["/models",function(){return l(82744)}])},82744:(e,a,l)=>{"use strict";l.r(a),l.d(a,{default:()=>_});var r=l(65321),s=l(97109),o=l(48321),t=l(35292),i=l(33442);let{Title:n,Text:c}=t.A;function d(e){let{title:a,description:l,extra:s,bottomContent:o}=e;return(0,r.jsxs)("div",{className:"mb-6 animateFadeIn",children:[(0,r.jsxs)("div",{className:"flex flex-col sm:flex-row sm:items-end justify-between gap-4",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)(n,{level:4,style:{margin:0,fontWeight:700,letterSpacing:"-0.01em"},children:a}),l&&(0,r.jsx)(c,{type:"secondary",className:"mt-1 block text-sm",children:l})]}),s&&(0,r.jsx)(i.A,{className:"w-full sm:w-auto overflow-x-auto pb-1 sm:pb-0",size:"middle",wrap:!1,children:s})]}),o&&(0,r.jsx)("div",{className:"mt-4",children:o})]})}var m=l(17807),x=l(88762),v=l(85114),p=l(26171),h=l(11702),b=l(50883),g=l(7576),u=l(94992),y=l(34052),j=l(63455),f=l(56985),N=l(44534),A=l(54746),w=l(29071),k=l(59188),C=l(4216),T=l(13114),S=l(99650),K=l(58209),B=l(76981),E=l(61825),P=l(6578);let I=[{labelKey:"models.openAICompatible",value:"openai"},{labelKey:"models.anthropic",value:"anthropic"},{labelKey:"models.google",value:"google"},{labelKey:"models.ollama",value:"ollama"},{labelKey:"models.openRouter",value:"openrouter"}],H=[{key:"reader",labelKey:"models.tierReader",descKey:"models.tierReaderDesc"},{key:"reasoning",labelKey:"models.tierReasoning",descKey:"models.tierReasoningDesc"},{key:"action",labelKey:"models.tierAction",descKey:"models.tierActionDesc"}],U=[{key:"imageGeneration",labelKey:"models.imageGeneration"},{key:"imageUnderstanding",labelKey:"models.imageUnderstanding"},{key:"fileUnderstanding",labelKey:"models.fileUnderstanding"},{key:"audio",labelKey:"models.audioCapability"},{key:"video",labelKey:"models.videoCapability"}];function _(){let e=(0,o.Vr)(),{message:a}=m.A.useApp(),[l,t]=(0,s.useState)(!0),[n,c]=(0,s.useState)([]),[_,z]=(0,s.useState)(null),[F,R]=(0,s.useState)({provider:"transformers-local",model:"BAAI/bge-small-zh-v1.5",dimensions:512}),[D,M]=(0,s.useState)(!1),[O,G]=(0,s.useState)(!1),[q,L]=(0,s.useState)(null),[X,Z]=(0,s.useState)(null),[V,W]=(0,s.useState)({}),[J,Q]=(0,s.useState)(!1),[Y,$]=(0,s.useState)(!1),[ee,ea]=(0,s.useState)(""),[el,er]=(0,s.useState)(""),[es,eo]=(0,s.useState)(""),[et,ei]=(0,s.useState)(""),[en,ec]=(0,s.useState)("openai"),[ed,em]=(0,s.useState)(!1),[ex,ev]=(0,s.useState)({}),[ep,eh]=(0,s.useState)(!1),[eb,eg]=(0,s.useState)(!1),eu=async()=>{t(!0);try{let[e,a,l]=await Promise.all([(0,P.Z3)().catch(()=>[]),(0,P.zr)().catch(()=>null),(0,P.II)().catch(()=>({provider:"transformers-local",model:"BAAI/bge-small-zh-v1.5",dimensions:512}))]);c(e),z(a),R(l)}catch(l){a.error(e("common.error"))}finally{t(!1)}};(0,s.useEffect)(()=>{eu()},[]);let ey=async e=>{var a,l;$(!0),ea(e.name),er(e.name),eo(""),ei(e.baseUrl||""),ec(e.protocol||e.detectedProtocol||"openai"),ev(e.capabilities||{}),eh(!!(null==(a=e.capabilities)?void 0:a.webSearch));try{let a=await (0,P.Bh)(e.name);eo(a.apiKey?"••••••••":""),ei(a.baseUrl||""),ev(a.capabilities||{}),eh(!!(null==(l=a.capabilities)?void 0:l.webSearch))}catch(e){}Q(!0)},ej=async()=>{if(el.trim()){eg(!0);try{let l=Y&&es.includes("•")?void 0:es||void 0,r={...ex,webSearch:ep};await (0,P._m)(el.trim(),{oldName:Y?ee:void 0,apiKey:l,baseUrl:et||void 0,protocol:en,directEndpoint:ed,capabilities:r}),Q(!1),await eu(),a.success(e("common.success"))}catch(l){a.error(e("common.error"))}finally{eg(!1)}}},ef=async l=>{try{await (0,P.h1)(l),await eu(),a.success(e("common.success"))}catch(l){a.error(e("common.error"))}},eN=async l=>{Z(l);try{let r=await (0,P.bZ)(l);W(e=>({...e,[l]:r.success}));let s=r.success?e("models.connected"):"".concat(e("models.connectionFailed")).concat(r.message?":".concat(r.message):"").concat(r.requestId?" (".concat(r.requestId,")"):"");a[r.success?"success":"error"](s)}catch(r){W(e=>({...e,[l]:!1})),a.error(r instanceof Error?r.message:e("models.connectionFailed"))}finally{Z(null)}},eA=async(l,r)=>{if(!_)return;let s={..._},o=s[l];if(!r){o.active="",z(s);try{await (0,P.aP)(s)}catch(l){a.error(e("common.error"))}return}let[t,i]=r.includes(":")?r.split(":"):[r,r];o.active=i,o.list.some(e=>e.name===i&&e.provider===t)||o.list.push({name:i,provider:t,thinking:"follow-task"}),z(s);try{await (0,P.aP)(s)}catch(l){a.error(e("common.error"))}},ew=async(l,r)=>{if(!_)return;let s={..._},o=s[l],t=o.list.find(e=>e.name===o.active);if(t){t.thinking=r,z(s);try{await (0,P.aP)(s)}catch(l){a.error(e("common.error"))}}},ek=async()=>{M(!0);try{let l=await (0,P.dd)(F);R(l),L(null),a.success(e("common.success"))}catch(l){a.error(e("common.error"))}finally{M(!1)}},eC=async()=>{G(!0);try{let l=await (0,P.u6)();L(l.success),a[l.success?"success":"error"](l.message||(l.success?e("models.connected"):e("models.connectionFailed")))}catch(e){L(!1)}finally{G(!1)}};return l?(0,r.jsxs)("div",{className:"space-y-6",children:[(0,r.jsx)(x.A,{active:!0,title:!0,paragraph:{rows:1}}),(0,r.jsx)("div",{className:"p-4 bg-[var(--colorBgHover)] rounded-xl border border-[var(--borderColor)]",children:(0,r.jsx)(x.A,{active:!0,paragraph:{rows:6}})}),(0,r.jsx)("div",{className:"p-4 bg-[var(--colorBgHover)] rounded-xl border border-[var(--borderColor)]",children:(0,r.jsx)(x.A,{active:!0,paragraph:{rows:4}})}),(0,r.jsx)("div",{className:"p-4 bg-[var(--colorBgHover)] rounded-xl border border-[var(--borderColor)]",children:(0,r.jsx)(x.A,{active:!0,paragraph:{rows:3}})})]}):(0,r.jsxs)("div",{className:"space-y-6",children:[(0,r.jsx)(d,{title:e("models.title"),description:e("models.description"),extra:(0,r.jsx)(v.Ay,{type:"primary",icon:(0,r.jsx)(A.A,{}),onClick:()=>{$(!1),ea(""),er(""),eo(""),ei(""),ec("openai"),em(!1),ev({}),eh(!1),Q(!0)},children:e("models.addModel")})}),(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"flex items-center justify-between mb-6",children:(0,r.jsxs)("h2",{className:"text-base font-semibold text-[var(--colorText)] tracking-wide",children:[e("models.modelList")," ",(0,r.jsxs)("span",{className:"text-[var(--colorTextTertiary)] ml-2 font-normal",children:["(",n.length,")"]})]})}),0===n.length?(0,r.jsx)("div",{className:"text-center py-12 bg-[var(--colorBgHover)] rounded-2xl border border-dashed border-[var(--borderColorStrong)] text-[var(--colorTextTertiary)] text-sm",children:e("models.noProviders")}):(0,r.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6",children:n.map(a=>{var l;return(0,r.jsxs)("div",{className:"group p-5 rounded-2xl border border-transparent hover:border-[var(--borderColorStrong)] bg-[var(--colorBgContainer)] hover:bg-[var(--colorBgHover)] hover:shadow-sm flex flex-col cursor-pointer transition-all duration-300",children:[(0,r.jsxs)("div",{className:"flex items-start justify-between gap-3 mb-4 min-w-0",children:[(0,r.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,r.jsx)("div",{className:"font-bold text-base text-[var(--colorText)] truncate mb-1",children:a.name}),(0,r.jsxs)("div",{className:"text-xs text-[var(--colorTextTertiary)] flex items-center gap-1 uppercase tracking-wider font-semibold",children:[(0,r.jsx)(w.A,{})," ",a.protocol||a.detectedProtocol||"openai"]})]}),(0,r.jsxs)(i.A,{size:0,className:"-mr-2 opacity-0 group-hover:opacity-100 transition-opacity",children:[(0,r.jsx)(v.Ay,{type:"text",size:"small",loading:X===a.name,onClick:e=>{e.stopPropagation(),eN(a.name)},icon:!0===V[a.name]?(0,r.jsx)(k.A,{className:"text-[var(--colorOk)]"}):!1===V[a.name]?(0,r.jsx)(C.A,{className:"text-[var(--colorDanger)]"}):(0,r.jsx)(T.A,{className:"text-[var(--colorTextSecondary)]"})}),(0,r.jsx)(v.Ay,{type:"text",size:"small",icon:(0,r.jsx)(S.A,{className:"text-[var(--colorTextSecondary)]"}),onClick:e=>{e.stopPropagation(),ey(a)}}),(0,r.jsx)(p.A,{title:e("models.deleteProviderConfirm"),onConfirm:e=>{null==e||e.stopPropagation(),ef(a.name)},onCancel:e=>null==e?void 0:e.stopPropagation(),children:(0,r.jsx)(v.Ay,{type:"text",size:"small",danger:!0,icon:(0,r.jsx)(K.A,{}),onClick:e=>e.stopPropagation()})})]})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-3 mt-auto pt-4 border-t border-[var(--borderColor)]",children:[(0,r.jsxs)("div",{className:"flex items-center justify-between text-xs text-[var(--colorTextSecondary)]",children:[(0,r.jsxs)("span",{className:"flex items-center gap-1",children:[(0,r.jsx)(B.A,{})," ",e("models.apiKey")]}),(0,r.jsx)("span",{className:"font-mono text-[var(--colorTextTertiary)]",children:a.hasApiKey?"••••••••":e("models.none")})]}),a.baseUrl&&(0,r.jsxs)("div",{className:"flex items-center justify-between text-xs text-[var(--colorTextSecondary)]",children:[(0,r.jsxs)("span",{className:"flex items-center gap-1",children:[(0,r.jsx)(E.A,{})," URL"]}),(0,r.jsx)("span",{className:"truncate max-w-[120px] font-mono text-[var(--colorTextTertiary)]",title:a.baseUrl,children:a.baseUrl.replace(/^https?:\/\//,"")})]}),(0,r.jsxs)("div",{className:"flex flex-wrap gap-1 mt-2",children:[U.filter(e=>{var l;return null==(l=a.capabilities)?void 0:l[e.key]}).map(a=>(0,r.jsx)(h.A,{color:"blue",bordered:!1,className:"m-0 text-[10px] bg-[var(--colorBrand)]/5 text-[var(--colorBrand)] leading-[18px]",children:e(a.labelKey)},a.key)),(null==(l=a.capabilities)?void 0:l.webSearch)&&(0,r.jsx)(h.A,{color:"green",bordered:!1,className:"m-0 text-[10px] leading-[18px]",children:e("models.webEnhancement")})]})]})]},a.name)})})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("h2",{className:"text-base font-semibold text-[var(--colorText)] tracking-wide mb-6",children:e("models.embeddingConfig")}),(0,r.jsxs)("div",{className:"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-8",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-xs font-semibold uppercase tracking-wider mb-2 text-[var(--colorTextTertiary)]",children:e("models.embeddingProvider")}),(0,r.jsx)(b.A,{value:F.provider,className:"w-full h-10",variant:"borderless",style:{background:"var(--colorBgHover)",borderRadius:"8px"},options:[{label:e("models.localRecommended"),value:"transformers-local"},{label:e("models.externalAdvanced"),value:"openai-compatible"}],onChange:e=>R(a=>({...a,provider:e,model:"transformers-local"===e?a.model||"BAAI/bge-small-zh-v1.5":a.model,dimensions:"transformers-local"===e?512:a.dimensions||1024}))})]}),"openai-compatible"===F.provider&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-xs font-semibold uppercase tracking-wider mb-2 text-[var(--colorTextTertiary)]",children:e("models.baseUrl")}),(0,r.jsx)(g.A,{className:"h-10 px-4 bg-[var(--colorBgHover)]",value:F.baseUrl,onChange:e=>R(a=>({...a,baseUrl:e.target.value})),placeholder:"http://localhost:11434/v1"})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-xs font-semibold uppercase tracking-wider mb-2 text-[var(--colorTextTertiary)]",children:e("models.model")}),(0,r.jsx)(g.A,{className:"h-10 px-4 bg-[var(--colorBgHover)]",value:F.model,onChange:e=>R(a=>({...a,model:e.target.value})),placeholder:"bge-m3"})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-xs font-semibold uppercase tracking-wider mb-2 text-[var(--colorTextTertiary)]",children:e("models.apiKey")}),(0,r.jsx)(g.A.Password,{className:"h-10 px-4 bg-[var(--colorBgHover)]",value:F.apiKey,onFocus:()=>{var e;(null==(e=F.apiKey)?void 0:e.includes("•"))&&R(e=>({...e,apiKey:""}))},onChange:e=>R(a=>({...a,apiKey:e.target.value})),placeholder:e("models.optional")})]})]}),"transformers-local"===F.provider&&(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-xs font-semibold uppercase tracking-wider mb-2 text-[var(--colorTextTertiary)]",children:e("models.model")}),(0,r.jsx)(g.A,{className:"h-10 px-4 bg-[var(--colorBgHover)]",value:F.model,onChange:e=>R(a=>({...a,model:e.target.value})),placeholder:"BAAI/bge-small-zh-v1.5"})]}),(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-xs font-semibold uppercase tracking-wider mb-2 text-[var(--colorTextTertiary)]",children:e("models.dimensions")}),(0,r.jsx)(u.A,{className:"w-full h-10 px-2 bg-[var(--colorBgHover)] border-transparent flex items-center",min:1,value:F.dimensions,onChange:e=>R(a=>({...a,dimensions:Number(e||("transformers-local"===a.provider?512:1024))}))})]})]}),(0,r.jsxs)("div",{className:"mt-8 flex gap-3",children:[(0,r.jsx)(v.Ay,{type:"primary",className:"h-10 px-6 font-medium shadow-none",loading:D,onClick:()=>{ek()},children:e("models.saveEmbedding")}),(0,r.jsx)(v.Ay,{className:"h-10 px-6 font-medium shadow-none bg-[var(--colorBgHover)] border-transparent hover:border-[var(--borderColorStrong)]",loading:O,onClick:()=>{eC()},children:e("models.testEmbedding")}),(0,r.jsxs)("div",{className:"ml-auto flex items-center h-10 gap-2",children:[(0,r.jsx)(h.A,{color:"blue",bordered:!1,className:"m-0 bg-[var(--colorBgHover)] text-[var(--colorTextSecondary)]",children:"transformers-local"===F.provider?e("models.localEmbedding"):e("models.openAICompatible")}),!0===q&&(0,r.jsx)(h.A,{color:"success",bordered:!1,className:"m-0",icon:(0,r.jsx)(k.A,{}),children:e("models.connected")}),!1===q&&(0,r.jsx)(h.A,{color:"error",bordered:!1,className:"m-0",icon:(0,r.jsx)(C.A,{}),children:e("models.connectionFailed")})]})]})]}),_&&(0,r.jsx)(r.Fragment,{children:(0,r.jsxs)("div",{className:"mb-6",children:[(0,r.jsx)("h2",{className:"text-base font-semibold text-[var(--colorText)] tracking-wide mb-6",children:e("models.modelTiers")}),(0,r.jsx)("div",{className:"grid grid-cols-1 lg:grid-cols-3 gap-8",children:H.map(a=>{let{key:l,labelKey:s,descKey:o}=a,t=_[l],i=t.list.map(e=>({label:"".concat(e.provider," / ").concat(e.name),value:"".concat(e.provider,":").concat(e.name)})),c=n.filter(e=>!t.list.some(a=>a.provider===e.name)).map(e=>({label:e.name,value:"".concat(e.name,":").concat(e.name)})),d=t.active?t.list.find(e=>e.name===t.active):null;return(0,r.jsxs)("div",{className:"p-6 bg-[var(--colorBgHover)] rounded-xl flex flex-col transition-colors border border-transparent hover:border-[var(--borderColorStrong)]",children:[(0,r.jsx)("div",{className:"text-sm font-semibold text-[var(--colorText)] uppercase tracking-wider mb-2",children:e(s)}),(0,r.jsx)("div",{className:"text-xs text-[var(--colorTextTertiary)] mb-5 leading-relaxed flex-1",children:e(o)}),(0,r.jsx)(b.A,{value:t.active?"".concat((null==d?void 0:d.provider)||"",":").concat(t.active):void 0,onChange:e=>{eA(l,e)},allowClear:!0,placeholder:e("models.selectModelPlaceholder"),className:"w-full h-10",variant:"borderless",style:{background:"var(--colorBgElevated)",borderRadius:"8px"},options:[...i,...c]}),d&&(()=>{var a;let s=n.find(e=>e.name===d.provider);return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)("div",{className:"mt-4 px-4 py-3 bg-[var(--colorBgElevated)] rounded-lg border border-[var(--borderColor)] flex items-center gap-3 transition-colors",children:[(0,r.jsx)(T.A,{className:"text-[var(--colorBrand)] text-base shrink-0"}),(0,r.jsx)("span",{className:"text-sm font-medium flex-1 min-w-0 truncate text-[var(--colorText)]",children:d.provider}),(null==s?void 0:s.capabilities)&&U.filter(e=>s.capabilities[e.key]).length>0&&(0,r.jsx)("div",{className:"flex gap-1 shrink-0",children:U.filter(e=>s.capabilities[e.key]).slice(0,2).map(a=>(0,r.jsx)(h.A,{color:"blue",bordered:!1,className:"m-0 text-[10px] bg-[var(--colorBrand)]/5 text-[var(--colorBrand)] leading-[18px]",children:e(a.labelKey)},a.key))}),(0,r.jsx)(h.A,{color:"success",bordered:!1,className:"m-0 text-[10px] leading-[18px] shrink-0 uppercase",children:e("models.active")})]}),(0,r.jsxs)("div",{className:"mt-3 flex items-center gap-3",children:[(0,r.jsx)("span",{className:"text-xs text-[var(--colorTextTertiary)] shrink-0",children:e("models.thinkingMode")}),(0,r.jsx)(b.A,{value:null!=(a=d.thinking)?a:"follow-task",size:"small",style:{flex:1},onChange:e=>{ew(l,e)},options:[{label:e("models.thinkingFollowTask"),value:"follow-task"},{label:e("models.thinkingEnabled"),value:"enabled"},{label:e("models.thinkingDisabled"),value:"disabled"}]})]})]})})()]},l)})})]})}),(0,r.jsx)(y.A,{title:Y?e("models.editModel"):e("models.addModel"),open:J,onClose:()=>Q(!1),size:"large",styles:{body:{padding:"24px 32px"},header:{padding:"16px 32px",borderBottom:"1px solid var(--colorBorderSecondary)"}},extra:(0,r.jsx)(v.Ay,{type:"primary",loading:eb,onClick:()=>{ej()},children:e("common.save")}),children:(0,r.jsxs)(j.A,{layout:"vertical",children:[(0,r.jsx)(j.A.Item,{label:e("models.modelName"),children:(0,r.jsx)(g.A,{value:el,onChange:e=>er(e.target.value),placeholder:e("models.modelNamePlaceholder")})}),(0,r.jsx)(j.A.Item,{label:e("models.apiKey"),help:Y?e("models.apiKeyEditHint"):void 0,children:(0,r.jsx)(g.A.Password,{value:es,onFocus:()=>{Y&&es.includes("•")&&eo("")},onChange:e=>eo(e.target.value),placeholder:Y?e("models.apiKeyEditPlaceholder"):"sk-..."})}),(0,r.jsx)(j.A.Item,{label:e("models.baseUrl"),children:(0,r.jsx)(g.A,{value:et,onChange:e=>ei(e.target.value),placeholder:"https://api.openai.com/v1"})}),(0,r.jsx)(j.A.Item,{label:e("models.protocol"),children:(0,r.jsx)(b.A,{value:en,onChange:ec,options:I.map(a=>({label:e(a.labelKey),value:a.value}))})}),(0,r.jsx)(j.A.Item,{label:e("models.directEndpoint"),children:(0,r.jsx)(f.A,{checked:ed,onChange:e=>em(e.target.checked),children:e("models.directEndpointDesc")})}),(0,r.jsxs)(j.A.Item,{label:e("models.webEnhancement"),children:[(0,r.jsx)(N.A,{checked:ep,onChange:eh}),(0,r.jsx)("span",{className:"ml-3 text-xs text-[var(--colorTextSecondary)]",children:e("models.webEnhancementDesc")})]}),(0,r.jsx)(j.A.Item,{label:e("models.capabilities"),children:(0,r.jsx)(f.A.Group,{value:U.filter(e=>ex[e.key]).map(e=>e.key),options:U.map(a=>({label:e(a.labelKey),value:a.key})),onChange:e=>ev(Object.fromEntries(U.map(a=>[a.key,e.includes(a.key)])))})})]})})]})}}},e=>{e.O(0,[717,883,44,195,455,827,636,593,792],()=>e(e.s=77305)),_N_E=e.O()}]);
|