mirror of
https://gitee.com/270580156/weiyu.git
synced 2026-05-15 11:47:54 +00:00
1 line
189 KiB
JavaScript
1 line
189 KiB
JavaScript
"use strict";(self.webpackChunkadmin=self.webpackChunkadmin||[]).push([[2255,2180],{52202:function(e,t,n){n.d(t,{G9:function(){return k},J$:function(){return S},N6:function(){return w},VM:function(){return d},c8:function(){return p},gF:function(){return x},rg:function(){return m},sF:function(){return y}});var r=n(90819),a=n.n(r),s=n(73193),o=n.n(s),i=n(89933),l=n.n(i),u=n(5488),c=n(14870);function d(e){return f.apply(this,arguments)}function f(){return(f=l()(a()().mark((function e(t){return a()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,c.request)("/api/v1/ollama4j/ping",{method:"GET",params:o()(o()({},t),{},{channel:u.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function p(e){return g.apply(this,arguments)}function g(){return(g=l()(a()().mark((function e(t){return a()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,c.request)("/api/v1/ollama4j/local-models",{method:"GET",params:o()(o()({},t),{},{channel:u.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function m(e){return h.apply(this,arguments)}function h(){return(h=l()(a()().mark((function e(t){return a()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,c.request)("/api/v1/ollama4j/models",{method:"GET",params:o()(o()({},t),{},{channel:u.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function x(e){return v.apply(this,arguments)}function v(){return(v=l()(a()().mark((function e(t){return a()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,c.request)("/api/v1/ollama4j/library/models/details",{method:"GET",params:o()(o()({},t),{},{channel:u.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function y(e){return M.apply(this,arguments)}function M(){return(M=l()(a()().mark((function e(t){return a()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,c.request)("/api/v1/ollama4j/models/details",{method:"GET",params:o()(o()({},t),{},{channel:u.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function w(e){return b.apply(this,arguments)}function b(){return(b=l()(a()().mark((function e(t){return a()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,c.request)("/api/v1/ollama4j/models/pull",{method:"POST",data:o()(o()({},t),{},{channel:u.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function k(e){return j.apply(this,arguments)}function j(){return(j=l()(a()().mark((function e(t){return a()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,c.request)("/api/v1/ollama4j/models/delete",{method:"POST",data:o()(o()({},t),{},{channel:u.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function S(e){return Z.apply(this,arguments)}function Z(){return(Z=l()(a()().mark((function e(t){return a()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,c.request)("/springai/ollama/embedding-model/exists",{method:"GET",params:o()(o()({},t),{},{channel:u.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}},79519:function(e,t,n){var r=n(45332),a=n.n(r),s=n(34599),o=n(5488),i=n(32394),l=n(48821),u=n(47783),c=n(14870),d=n(68349),f=n(44194),p=n(31549);t.Z=function(e){var t=e.open,n=e.onClose,r=e.onSubmit,g=(0,c.useIntl)(),m=i.A.useForm(),h=a()(m,1)[0],x=(0,s.u)((function(e){return e.currentOrg})),v=function(){console.log("handleSaveRobot"),h.validateFields().then((function(e){console.log("handleSaveRobot values:",e);var t={name:e.nickname,nickname:e.nickname,type:e.type,serviceSettings:{showQuickFaqs:!1,quickFaqs:[],showFaqs:!1,faqs:[],showGuessFaqs:!1,guessFaqs:[],showHotFaqs:!1,hotFaqs:[],showShortcutFaqs:!1,shortcutFaqs:[]},kbEnabled:!1,orgUid:null==x?void 0:x.uid};console.log("robotObject:",t),r(t),h.resetFields()})).catch((function(e){console.log("Form errors:",e)}))};return(0,f.useEffect)((function(){console.log("RobotForm useEffect"),t&&(h.resetFields(),h.setFieldsValue({type:o.f4h}))}),[t,h]),(0,p.jsx)("div",{children:(0,p.jsx)(d.Z,{title:g.formatMessage({id:"pages.robot.new",defaultMessage:"New"}),open:t,forceRender:!0,okText:g.formatMessage({id:"save",defaultMessage:"Save"}),onOk:v,onCancel:function(){h.resetFields(),n()},children:(0,p.jsxs)(i.A,{form:h,name:"basic",style:{maxWidth:400},submitter:!1,children:[(0,p.jsx)(l.Z,{label:g.formatMessage({id:"nickname",defaultMessage:"Nickname"}),name:"nickname",rules:[{required:!0,message:g.formatMessage({id:"nickname",defaultMessage:"Nickname"})}],fieldProps:{onPressEnter:function(){return v()}}}),(0,p.jsx)(u.Z,{label:g.formatMessage({id:"type",defaultMessage:"Type"}),name:["type"],options:[{label:g.formatMessage({id:o.f4h,defaultMessage:"Service"}),value:o.f4h},{label:g.formatMessage({id:o.Qeb,defaultMessage:"Chat"}),value:o.Qeb}],rules:[{required:!0,message:g.formatMessage({id:"choose",defaultMessage:"Choose"})}],fieldProps:{placeholder:g.formatMessage({id:"choose",defaultMessage:"Choose"}),onChange:function(e){console.log("onTreeSelectChange:",e)},allowClear:!0}})]})})})}},86181:function(e,t,n){n.r(t),n.d(t,{default:function(){return Cn}});var r=n(66985),a=n(5488),s=n(42699),o=n(44194),i=n(37963),l=n(14870),u=n(84176),c=n.n(u),d=n(73193),f=n.n(d),p=n(86222),g=n.n(p),m=n(90819),h=n.n(m),x=n(89933),v=n.n(x),y=n(45332),M=n.n(y),w=n(5025);function b(e){return k.apply(this,arguments)}function k(){return(k=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/file/query/org",{method:"GET",params:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function j(e){return S.apply(this,arguments)}function S(){return(S=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/file/update",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Z(e){return C.apply(this,arguments)}function C(){return(C=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/file/delete",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function U(e){return A.apply(this,arguments)}function A(){return(A=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/file/delete/all",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function I(e){return T.apply(this,arguments)}function T(){return(T=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/file/rechunk",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var E=n(18751),F=n(68866),P=n(34599),q=n(90033),O=n(18580),D=n(68724),R=n(49616),z=n(5780),L=n(53504),B=n(31549),Y=function(e){var t=e.type,n=e.open,r=e.onClose,a=(0,E.Z)().translateString,s=(0,F.j)((function(e){return e.currentKbase})),i=(0,q.L)((function(e){return e.userInfo})),l=(0,P.u)((function(e){return e.currentOrg})),u=(0,o.useState)(""),c=M()(u,2),d=c[0],f=c[1],p=(0,o.useState)(!1),g=M()(p,2),m=g[0],h=g[1],x=function(){console.log("refresh"),h(!1);var e=(0,O.Cn)()+"?org="+encodeURIComponent(null==l?void 0:l.uid)+"&t="+encodeURIComponent(t)+"&sid="+encodeURIComponent(null==s?void 0:s.uid)+"&uid="+encodeURIComponent(null==i?void 0:i.uid)+"&nickname="+encodeURIComponent(null==i?void 0:i.nickname)+"&avatar="+encodeURIComponent(null==i?void 0:i.avatar)+"&navbar=0&"+(new Date).getTime();f(e)};(0,o.useEffect)((function(){x()}),[s]);return(0,B.jsx)(B.Fragment,{children:(0,B.jsxs)(D.Z,{title:a(null==s?void 0:s.name),onClose:function(){r&&r()},open:n,extra:(0,B.jsxs)(R.Z,{children:[(0,B.jsx)(z.ZP,{onClick:function(){window.open(d)},children:"新窗口"}),(0,B.jsx)(z.ZP,{onClick:function(){console.log("restart"),x()},type:"primary",children:"重新开始"})]}),styles:{body:{padding:0}},children:[(0,B.jsx)(L.Z,{spinning:!m,style:{position:"absolute",width:"100%",zIndex:1001},size:"large"}),(0,B.jsx)("iframe",{id:"chat-iframe",src:d,title:"demo",width:"100%",height:"100%",style:{border:0},"data-loaded":"true",onLoad:function(){h(!0),console.log("Iframe loaded successfully!")}})]})})},N=n(8065),V=n(50456),H=n(71529),J=n(92110),Q=n(59304),X=n(21407),K=n(54881),W=n(10162),G=n(58275),_=n(11090),$=n(2484),ee=n(81084),te=n(68349),ne=n(85817),re=n(88344),ae=n(27473),se=n(67652),oe=n(78359),ie=n(28977),le=n.n(ie),ue=n(76590),ce=n(78323),de=n(93892),fe=n(49260),pe=n(52202),ge=n(46747),me=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(n)fe.ZP.info("正在检查模型状态,请稍后再试");else{var r=ge.A.getState().llmproviderConfigDefault.defaultEmbeddingProvider,a="ollama"===r;a?t?e():(0,pe.J$)().then((function(t){if(404===t.code)return console.log("API 返回 404,不影响操作,直接执行"),void e();var n=ge.A.getState().llmproviderConfigDefault.defaultEmbeddingModel,r="请首先拉取Embedding向量模型".concat(n,",用于知识库向量检索");te.Z.warning({title:"嵌入式模型缺失",content:r,okText:"确定"})})).catch((function(t){console.error("重新检查模型时出错:",t),console.log("API 调用异常,不影响操作,直接执行"),e()})):e()}},he=function(e){var t=e.onModelStatusChange,n=(0,l.useIntl)(),r=(0,o.useState)(!1),a=M()(r,2),s=a[0],i=a[1],u=(0,o.useState)(!1),c=M()(u,2),d=c[0],f=c[1],p=(0,ge.A)((function(e){return e.llmproviderConfigDefault.defaultEmbeddingModel})),g=(0,ge.A)((function(e){return e.llmproviderConfigDefault.defaultEmbeddingProvider})),m=(0,o.useState)(!1),x=M()(m,2),y=x[0],w=x[1],b=function(){return"ollama"===g},k=function(){var e=v()(h()().mark((function e(){var n;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(console.log("检查嵌入式模型是否存在:",{defaultEmbeddingModel:p,defaultEmbeddingProvider:g}),b()){e.next=5;break}return console.log("不需要检查模型:",{defaultEmbeddingModel:p,defaultEmbeddingProvider:g}),null==t||t(!0),e.abrupt("return");case 5:return e.prev=5,f(!0),null==t||t(!1),e.next=10,(0,pe.J$)(p);case 10:n=e.sent,console.log("Embedding model check response:",n),200===n.code?(i(n.data),null==t||t(n.data),w(!1)):404===n.code?(i(!0),null==t||t(!0),w(!1),console.log("接口404,不影响使用,视为模型存在")):(i(!1),null==t||t(!1),w(!1)),e.next=22;break;case 15:e.prev=15,e.t0=e.catch(5),console.error("检查嵌入式模型失败:",e.t0),i(!0),null==t||t(!0),w(!1),console.log("接口异常,不影响使用,视为模型存在");case 22:return e.prev=22,f(!1),e.finish(22);case 25:case"end":return e.stop()}}),e,null,[[5,15,22,25]])})));return function(){return e.apply(this,arguments)}}();return(0,o.useEffect)((function(){k()}),[p,g]),b()?d?(0,B.jsx)(de.Z,{type:"info",showIcon:!0,message:n.formatMessage({id:"embedding.model.checking",defaultMessage:"正在检查Embedding向量模型..."}),style:{marginBottom:16}}):s?y?(0,B.jsx)(de.Z,{type:"warning",showIcon:!0,message:(0,B.jsx)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",width:"100%"},children:(0,B.jsx)("span",{children:"嵌入模型配置警告"})}),description:"嵌入模型 ".concat(p," 不存在或无法访问,可能会影响知识库向量检索功能,请检查配置或联系管理员"),style:{marginBottom:16}}):null:(0,B.jsx)(de.Z,{type:"warning",showIcon:!0,message:(0,B.jsx)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",width:"100%"},children:(0,B.jsx)("span",{children:n.formatMessage({id:"embedding.model.missing.title",defaultMessage:"嵌入式模型缺失"})})}),description:n.formatMessage({id:"embedding.model.missing.content",defaultMessage:"请拉取Embedding向量模型".concat(p,",用于知识库向量检索")}),style:{marginBottom:16}}):null},xe=n(76711),ve=n.n(xe),ye=n(61353),Me=n(33232),we=n(79519),be=n(95660),ke=n(27904),je=n(82373),Se="CREATE_NEW_ROBOT",Ze=function(e){var t=e.visible,n=e.loading,r=e.robotList,a=e.selectedRobotUid,s=e.currentKbaseUid,o=e.onOk,i=e.onCancel,u=e.onChange,c=(0,l.useIntl)();return be.Z.debug("RobotSelectModal rendering with:",{robotList:r,selectedRobotUid:a,currentKbaseUid:s}),(0,B.jsx)(te.Z,{title:c.formatMessage({id:"robot.select.title",defaultMessage:"选择机器人"}),open:t,onOk:o,onCancel:i,okText:c.formatMessage({id:"ok",defaultMessage:"确定"}),cancelText:c.formatMessage({id:"cancel",defaultMessage:"取消"}),okButtonProps:{disabled:!a},children:(0,B.jsx)(L.Z,{spinning:n,children:(0,B.jsxs)("div",{style:{marginBottom:16},children:[(0,B.jsx)("p",{children:c.formatMessage({id:"robot.select.desc",defaultMessage:"选择一个机器人并绑定到当前知识库"})}),(0,B.jsxs)(ke.Z,{style:{width:"100%"},placeholder:c.formatMessage({id:"robot.select.placeholder",defaultMessage:"请选择一个机器人"}),value:a,onChange:u,optionLabelProp:"label",children:[r.map((function(e){console.log("Robot ".concat(e.name||e.nickname,": kbUid=").concat(e.kbUid,", currentKbaseUid=").concat(s));var t=!!e.kbUid&&""!==e.kbUid.trim(),n=t&&e.kbUid===s,r=e.name||e.nickname||e.uid;return t&&(r="".concat(r,n?" (已绑定当前知识库)":" (已绑定其他知识库)")),(0,B.jsx)(ke.Z.Option,{value:e.uid,label:r,children:r},e.uid)})),r.length>0&&(0,B.jsx)(ke.Z.Option,{value:"divider",disabled:!0,children:(0,B.jsx)(je.Z,{style:{margin:"4px 0"}})}),(0,B.jsx)(ke.Z.Option,{value:Se,label:c.formatMessage({id:"robot.create.new",defaultMessage:"创建新机器人"}),children:(0,B.jsxs)("div",{style:{color:"#1890ff"},children:[(0,B.jsx)(W.Z,{})," ",c.formatMessage({id:"robot.create.new",defaultMessage:"创建新机器人"})]})})]})]})})})},Ce=function(e){var t=e.currentKbase,n=e.currentOrg,r=e.embeddingModelExists,s=e.checkingEmbeddingModel,i=(0,l.useIntl)(),u=(0,o.useState)(!1),c=M()(u,2),d=c[0],p=c[1],g=(0,o.useState)(!1),m=M()(g,2),x=m[0],y=m[1],b=(0,o.useState)(!1),k=M()(b,2),j=k[0],S=k[1],Z=(0,o.useState)(),C=M()(Z,2),U=(C[0],C[1]),A=(0,o.useState)([]),I=M()(A,2),T=I[0],E=I[1],F=(0,o.useState)(""),P=M()(F,2),q=P[0],O=P[1],D=function(){var e=v()(h()().mark((function e(r){var s,o,l,u;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return S(!0),e.prev=1,s={pageNumber:0,pageSize:100,kbEnabled:!0,kbUid:r?null==t?void 0:t.uid:"",categoryUid:"",level:a.whQ,type:a.f4h,orgUid:null==n?void 0:n.uid},console.log("Fetching robots with params:",s),e.next=6,(0,Me.p0)(s);case 6:if(o=e.sent,console.log("queryRobotsByOrg response:",o),200!==o.code){e.next=16;break}return l=o.data.content||[],u=l.map((function(e){return console.log("Processing robot: ".concat(e.name||e.nickname,", kbUid: ").concat(e.kbUid)),e})),E(u),r&&u.length>0&&U(u[0]),e.abrupt("return",u);case 16:return w.yw.error(o.message),e.abrupt("return",[]);case 18:e.next=25;break;case 20:return e.prev=20,e.t0=e.catch(1),console.error("获取机器人失败:",e.t0),w.yw.error(i.formatMessage({id:"fetch.robot.error",defaultMessage:"获取机器人失败"})),e.abrupt("return",[]);case 25:return e.prev=25,S(!1),e.finish(25);case 28:case"end":return e.stop()}}),e,null,[[1,20,25,28]])})));return function(t){return e.apply(this,arguments)}}(),R=function(){var e=v()(h()().mark((function e(){var n,r,a;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(q&&null!=t&&t.uid){e.next=3;break}return w.yw.error(i.formatMessage({id:"robot.select.required",defaultMessage:"请先选择一个机器人"})),e.abrupt("return",!1);case 3:return w.yw.loading(i.formatMessage({id:"updating",defaultMessage:"更新中..."})),n={uid:q,kbEnabled:!0,kbUid:null==t?void 0:t.uid},e.prev=5,e.next=8,(0,Me.Xd)(n);case 8:if(r=e.sent,console.log("updateRobotKbUid response:",r),200!==r.code){e.next=18;break}return w.yw.destroy(),w.yw.success(i.formatMessage({id:"update.success",defaultMessage:"更新成功"})),a=r.data,U(a),e.abrupt("return",!0);case 18:return w.yw.destroy(),w.yw.error(r.message),e.abrupt("return",!1);case 21:e.next=29;break;case 23:return e.prev=23,e.t0=e.catch(5),w.yw.destroy(),w.yw.error(i.formatMessage({id:"update.failed",defaultMessage:"更新失败"})),console.error("更新机器人知识库失败:",e.t0),e.abrupt("return",!1);case 29:case"end":return e.stop()}}),e,null,[[5,23]])})));return function(){return e.apply(this,arguments)}}(),L=function(){var e=v()(h()().mark((function e(){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(console.log("handleChatKb"),r){e.next=4;break}return te.Z.confirm({title:i.formatMessage({id:"warning",defaultMessage:"警告"}),content:i.formatMessage({id:"embedding.model.missing.warning",defaultMessage:"嵌入式模型未加载,可能会影响问答质量。是否继续?"}),okText:i.formatMessage({id:"ok",defaultMessage:"确定"}),cancelText:i.formatMessage({id:"cancel",defaultMessage:"取消"}),onOk:function(){var e=v()(h()().mark((function e(){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Y();case 2:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()}),e.abrupt("return");case 4:if(!s){e.next=7;break}return w.yw.info("正在检查模型状态,请稍后再试"),e.abrupt("return");case 7:return e.next=9,Y();case 9:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),Y=function(){var e=v()(h()().mark((function e(){var n,r;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t){e.next=3;break}return w.yw.error(i.formatMessage({id:"kb.select.required",defaultMessage:"请先选择一个知识库"})),e.abrupt("return");case 3:return w.yw.loading(i.formatMessage({id:"loading",defaultMessage:"加载中..."})),e.next=6,D(!0);case 6:if(n=e.sent,w.yw.destroy(),!(n.length>0)){e.next=12;break}n.length>1?(E(n),O(""),p(!0)):N(n[0]),e.next=21;break;case 12:return e.next=14,D(!1);case 14:if(r=e.sent,console.log("All robots without kbase filter:",r),0!==r.length){e.next=19;break}return w.yw.info(i.formatMessage({id:"robot.none",defaultMessage:"没有可用的机器人,请先创建机器人"})),e.abrupt("return");case 19:O(""),p(!0);case 21:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),N=function(e){var t;if(e&&e.uid){var r={chatConfig:{org:null==n?void 0:n.uid,t:a.ACv,sid:e.uid}};null===(t=window.bytedesk)||void 0===t||t.showChat(r)}else w.yw.error(i.formatMessage({id:"robot.invalid",defaultMessage:"无效的机器人"}))},V=function(){var e=v()(h()().mark((function e(){var n;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(q){e.next=3;break}return w.yw.error(i.formatMessage({id:"robot.select.required",defaultMessage:"请先选择一个机器人"})),e.abrupt("return");case 3:if(null==(n=T.find((function(e){return e.uid===q})))||!n.kbUid||n.kbUid===(null==t?void 0:t.uid)){e.next=7;break}return te.Z.confirm({title:i.formatMessage({id:"robot.already.bound",defaultMessage:"机器人已绑定知识库"}),content:i.formatMessage({id:"robot.rebind.confirm",defaultMessage:"该机器人已绑定其他知识库,是否更换绑定到当前知识库?"}),okText:i.formatMessage({id:"ok",defaultMessage:"确定"}),cancelText:i.formatMessage({id:"cancel",defaultMessage:"取消"}),onOk:function(){var e=v()(h()().mark((function e(){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,R();case 2:e.sent&&(p(!1),N(n));case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}()}),e.abrupt("return");case 7:return e.next=9,R();case 9:e.sent&&(p(!1),n&&N(n));case 11:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),H=function(){var e=v()(h()().mark((function e(n){var r,a,s,o;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,w.yw.loading(i.formatMessage({id:"creating",defaultMessage:"创建中..."})),console.log("Current Kbase info:",t),r=f()(f()({},n),{},{kbEnabled:!0,kbUid:null==t?void 0:t.uid}),console.log("Creating robot with data:",r),e.next=7,(0,Me.lg)(r);case 7:if(a=e.sent,console.log("Create robot response:",a),200!==a.code){e.next=29;break}if(w.yw.destroy(),w.yw.success(i.formatMessage({id:"create.success",defaultMessage:"创建成功"})),y(!1),s=a.data,console.log("New robot data:",s),null==s||!s.uid){e.next=23;break}O(s.uid),U(s),E((function(e){var t=[s].concat(ve()(e));return console.log("Updated robot list:",t),t})),p(!1),N(s),e.next=27;break;case 23:return e.next=25,D(!1);case 25:o=e.sent,console.log("Fetched all robots after creation:",o);case 27:e.next=31;break;case 29:w.yw.destroy(),w.yw.error(a.message||i.formatMessage({id:"create.failed",defaultMessage:"创建失败"}));case 31:e.next=38;break;case 33:e.prev=33,e.t0=e.catch(0),w.yw.destroy(),w.yw.error(i.formatMessage({id:"create.error",defaultMessage:"创建过程发生错误"})),console.error("创建机器人错误:",e.t0);case 38:case"end":return e.stop()}}),e,null,[[0,33]])})));return function(t){return e.apply(this,arguments)}}();return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(z.ZP,{icon:(0,B.jsx)(ye.Z,{}),type:"primary",onClick:L,disabled:s,children:i.formatMessage({id:"chat.test"})}),(0,B.jsx)(Ze,{visible:d,loading:j,robotList:T,selectedRobotUid:q,currentKbaseUid:null==t?void 0:t.uid,onOk:V,onCancel:function(){return p(!1)},onChange:function(e){e===Se?(y(!0),O("")):O(e)}}),x&&(0,B.jsx)(we.Z,{open:x,onClose:function(){return y(!1)},onSubmit:H})]})},Ue=n(32394),Ae=n(47783),Ie=n(48821),Te=n(16331),Ee=n(27259),Fe=n(55785),Pe=n(14377),qe=function(e){var t=e.isEdit,n=void 0===t||t,r=e.file,a=e.open,s=e.onClose,i=e.onSubmit,l=Ue.A.useForm(),u=M()(l,1)[0],c=(0,F.j)((function(e){return e.currentKbase})),d=(0,P.u)((function(e){return e.currentOrg})),p=(0,N.v)((function(e){return e.categorySelectOptions})),g=(0,o.useState)(),m=M()(g,2),x=m[0],y=m[1],w=(0,o.useState)([]),b=M()(w,2),k=b[0],j=b[1],S=(0,o.useState)(!1),Z=M()(S,2),C=Z[0],U=Z[1],A=(0,o.useState)(""),I=M()(A,2),T=I[0],E=I[1],q=(0,o.useState)(!1),O=M()(q,2),L=O[0],Y=O[1],V=function(e){return e.filter((function(e){return e&&""!==e.trim()}))},H=function(){var e=v()(h()().mark((function e(){var t,n;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,Y(!0),e.next=4,u.validateFields();case 4:t=e.sent,n=f()(f()(f()({},r),t),{},{categoryUid:x,tagList:V(k),kbUid:null==c?void 0:c.uid,orgUid:null==d?void 0:d.uid}),console.log("submit",n),i(n),e.next=14;break;case 10:e.prev=10,e.t0=e.catch(0),console.error("表单校验失败:",e.t0),fe.ZP.error("请检查表单填写是否正确");case 14:return e.prev=14,Y(!1),e.finish(14);case 17:case"end":return e.stop()}}),e,null,[[0,10,14,17]])})));return function(){return e.apply(this,arguments)}}(),J=function(){var e=T.trim();e&&!k.includes(e)&&j([].concat(ve()(k),[e])),U(!1),E("")},Q=function(){U(!1),E("")};return(0,o.useEffect)((function(){if(n)u.setFieldsValue({uid:null==r?void 0:r.uid,fileName:null==r?void 0:r.fileName,content:null==r?void 0:r.content,categoryUid:null==r?void 0:r.categoryUid,enabled:void 0===(null==r?void 0:r.enabled)||r.enabled}),y(null==r?void 0:r.categoryUid),j(V((null==r?void 0:r.tagList)||[]));else{if(u.setFieldsValue({fileName:"",content:"",enabled:!0}),p&&p.length>0){var e=p[0].value;u.setFieldValue("categoryUid",e),y(e)}j([]),U(!1),E("")}}),[n,r,u,p]),(0,B.jsx)(B.Fragment,{children:(0,B.jsx)(D.Z,{title:n?"编辑文件":"添加文件",onClose:s,open:a,width:600,extra:(0,B.jsxs)(R.Z,{children:[(0,B.jsx)(z.ZP,{onClick:s,children:"取消"}),(0,B.jsx)(z.ZP,{type:"primary",onClick:H,loading:L,children:"提交"})]}),footer:null,children:(0,B.jsxs)(Ue.A,{form:u,name:"fileForm",submitter:!1,children:[(0,B.jsx)(Ae.Z,{label:"分类",name:"categoryUid",rules:[{required:!0,message:"请选择分类"}],options:p,fieldProps:{allowClear:!0,placeholder:"请选择分类",onChange:function(e){console.log("file category selected ".concat(e)),y(e)}}}),(0,B.jsx)(Ie.Z,{label:"文件名称",name:"fileName",rules:[{required:!0,message:"请输入文件名称"}],placeholder:"请输入文件名称"}),(0,B.jsx)(Te.Z,{label:"文件内容",name:"content",rules:[{required:!0,message:"请输入文件内容"}],placeholder:"请输入文件内容",fieldProps:{maxLength:1e4,showCount:!0,rows:8},tooltip:"文件的文本内容,用于知识库检索"}),(0,B.jsx)(Ue.A.Item,{label:"标签",name:"tagList",tooltip:"为文件添加标签,便于分类和检索",children:(0,B.jsxs)("div",{style:{minHeight:"32px"},children:[(0,B.jsx)(R.Z,{wrap:!0,style:{marginBottom:8},children:V(k).map((function(e,t){return(0,B.jsx)(re.Z,{closable:!0,color:"blue",onClose:function(){return t=e,void j(V(k.filter((function(e){return e!==t}))));var t},style:{marginBottom:4},children:e},t)}))}),C?(0,B.jsxs)(R.Z.Compact,{style:{display:"flex",alignItems:"center"},children:[(0,B.jsx)(Ee.Z,{value:T,onChange:function(e){E(e.target.value)},onKeyDown:function(e){"Enter"===e.key?J():"Escape"===e.key&&Q()},placeholder:"输入标签名称",size:"small",style:{width:"120px"},autoFocus:!0}),(0,B.jsx)(z.ZP,{type:"primary",size:"small",icon:(0,B.jsx)(Fe.Z,{}),onClick:J,disabled:!T.trim(),children:"保存"}),(0,B.jsx)(z.ZP,{size:"small",icon:(0,B.jsx)(Pe.Z,{}),onClick:Q,children:"取消"})]}):(0,B.jsx)(z.ZP,{type:"dashed",onClick:function(){U(!0),E("")},icon:(0,B.jsx)(W.Z,{}),size:"small",style:{height:"24px"},children:"添加标签"})]})}),!1]})})})},Oe=["current","pageSize"],De=function(){var e=(0,l.useIntl)(),t=(0,o.useRef)(),n=(0,E.Z)().translateString,r=(0,o.useState)(1),s=M()(r,2),i=s[0],u=s[1],d=(0,o.useState)(10),p=M()(d,2),m=p[0],x=p[1],y=(0,P.u)((function(e){return e.currentOrg})),k=(0,F.j)((function(e){return e.currentKbase})),S=(0,N.v)((function(e){return e.currentCategory})),C=(0,N.v)((function(e){return e.categorySelectOptions})),A=(0,o.useState)(!1),T=M()(A,2),q=T[0],D=T[1],R=(0,o.useState)(!1),L=M()(R,2),ie=L[0],de=L[1],fe=(0,o.useState)([]),pe=M()(fe,2),ge=pe[0],xe=pe[1],ve=(0,o.useState)([]),ye=M()(ve,2),Me=ye[0],we=ye[1],be=(0,o.useState)(!1),ke=M()(be,2),je=ke[0],Se=ke[1],Ze=(0,o.useState)(!1),Ue=M()(Ze,2),Ae=Ue[0],Ie=Ue[1],Te=(0,o.useState)({}),Ee=M()(Te,2),Fe=Ee[0],Pe=Ee[1],De=(0,o.useState)(0),Re=M()(De,2),ze=Re[0],Le=Re[1],Be=te.Z.useModal(),Ye=M()(Be,2),Ne=Ye[0],Ve=Ye[1],He=(0,o.useState)(!1),Je=M()(He,2),Qe=Je[0],Xe=Je[1],Ke=(0,o.useState)(void 0),We=M()(Ke,2),Ge=We[0],_e=We[1],$e=function(){var n=v()(h()().mark((function n(r){return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,Z(r);case 2:200===n.sent.code?(null==t||t.current.reload(),w.yw.success(e.formatMessage({id:"delete.success",defaultMessage:"Delete Success"}))):w.yw.error(e.formatMessage({id:"delete.error",defaultMessage:"Delete Error"}));case 4:case"end":return n.stop()}}),n)})));return function(e){return n.apply(this,arguments)}}(),et=function(){var n=v()(h()().mark((function n(r){return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return console.log("handleFileDrawerSubmit",r),w.yw.success(e.formatMessage({id:"update.success",defaultMessage:"更新成功"})),Xe(!1),_e(void 0),n.next=6,j(r);case 6:200===n.sent.code?(null==t||t.current.reload(),w.yw.success(e.formatMessage({id:"update.success",defaultMessage:"更新成功"}))):w.yw.error(e.formatMessage({id:"update.error",defaultMessage:"更新失败"}));case 8:case"end":return n.stop()}}),n)})));return function(e){return n.apply(this,arguments)}}(),tt=function(){var n=v()(h()().mark((function n(r){var a,s,o;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return w.yw.loading(e.formatMessage({id:"rechunking",defaultMessage:"正在重新切块..."})),n.prev=1,a={uid:r.uid},n.next=5,I(a);case 5:s=n.sent,console.log("rechunk response",s,a),w.yw.destroy(),200===s.code?(w.yw.success(e.formatMessage({id:"rechunk.success",defaultMessage:"重新切块成功"})),null===(o=t.current)||void 0===o||o.reload()):w.yw.error(s.message||e.formatMessage({id:"rechunk.failed",defaultMessage:"重新切块失败"})),n.next=16;break;case 11:n.prev=11,n.t0=n.catch(1),w.yw.destroy(),w.yw.error(e.formatMessage({id:"rechunk.error",defaultMessage:"重新切块过程发生错误"})),console.error("重新切块错误:",n.t0);case 16:case"end":return n.stop()}}),n,null,[[1,11]])})));return function(e){return n.apply(this,arguments)}}(),nt=[{dataIndex:"index",valueType:"indexBorder",width:48,fixed:"left"},{title:(0,B.jsx)(l.FormattedMessage,{id:"fileName",defaultMessage:"fileName"}),dataIndex:"fileName",ellipsis:!0,copyable:!0,fixed:"left",tooltip:e.formatMessage({id:"llm.file.fileName.tooltip"}),render:function(e,t,n,r){var a,s,o=null==t?void 0:t.fileName;null!=t&&null!==(a=t.fileName)&&void 0!==a&&a.includes("_")&&(o=null==t||null===(s=t.fileName)||void 0===s?void 0:s.split("_").slice(1).join("_"));return(0,B.jsxs)("div",{style:{display:"flex",alignItems:"center"},children:[(0,B.jsx)("span",{style:{marginRight:4},children:o}),(0,B.jsx)(ne.Z.Text,{copyable:{text:(null==t?void 0:t.fileName)||""}})]})}},{title:(0,B.jsx)(l.FormattedMessage,{id:"fileUrl",defaultMessage:"File URL"}),dataIndex:"fileUrl",ellipsis:!0,hideInSearch:!0,tooltip:e.formatMessage({id:"llm.file.fileUrl.tooltip"}),render:function(t,n){return n.fileUrl?(0,B.jsxs)("a",{href:n.fileUrl,target:"_blank",rel:"noopener noreferrer",children:[(0,B.jsx)(H.Z,{})," ",e.formatMessage({id:"view.file"})]}):"-"}},{title:(0,B.jsx)(l.FormattedMessage,{id:"tags",defaultMessage:"Tags"}),dataIndex:"tagList",hideInSearch:!0,tooltip:e.formatMessage({id:"llm.file.tags.tooltip"}),render:function(e,t){var n;return null!=t&&t.tagList&&0!==(null==t?void 0:t.tagList.length)?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(J.Z,{})," ",null==t||null===(n=t.tagList)||void 0===n?void 0:n.map((function(e){return(0,B.jsx)(re.Z,{children:e},e)}))]}):"-"}},{title:(0,B.jsx)(l.FormattedMessage,{id:"enabled",defaultMessage:"Enabled"}),dataIndex:"enabled",valueEnum:{true:{text:e.formatMessage({id:"enabled"}),status:"Success"},false:{text:e.formatMessage({id:"disabled"}),status:"Error"}},hideInSearch:!0,tooltip:e.formatMessage({id:"llm.file.enabled.tooltip"})},{title:(0,B.jsx)(l.FormattedMessage,{id:"category",defaultMessage:"Category"}),dataIndex:"categoryUid",ellipsis:!0,hideInSearch:!0,width:120,tooltip:e.formatMessage({id:"llm.file.category.tooltip"}),render:function(e,t){var n=C.find((function(e){return e.value===(null==t?void 0:t.categoryUid)}));return null!=n&&n.label?(0,B.jsx)(re.Z,{color:"blue",children:n.label}):(0,B.jsx)(re.Z,{color:"default",children:"未分类"})}},{title:(0,B.jsx)(l.FormattedMessage,{id:"createdAt",defaultMessage:"createdAt"}),key:"createdAt",dataIndex:"createdAt",sorter:!0,width:200,hideInSearch:!0,tooltip:e.formatMessage({id:"llm.file.createdAt.tooltip"}),render:function(e,t){return le()(t.createdAt).format("YYYY-MM-DD HH:mm:ss")}},{title:(0,B.jsx)(l.FormattedMessage,{id:"updatedAt",defaultMessage:"updatedAt"}),key:"updatedAt",dataIndex:"updatedAt",sorter:!0,width:200,hideInSearch:!0,tooltip:e.formatMessage({id:"llm.file.updatedAt.tooltip"}),render:function(e,t){return t.updatedAt?le()(t.updatedAt).format("YYYY-MM-DD HH:mm:ss"):"-"}},{title:(0,B.jsx)(l.FormattedMessage,{id:"actions",defaultMessage:"Actions"}),key:"option",valueType:"option",width:140,fixed:"right",render:function(t,n){return[(0,B.jsx)(ae.Z,{title:e.formatMessage({id:"edit",defaultMessage:"编辑"}),children:(0,B.jsx)(z.ZP,{type:"text",size:"small",icon:(0,B.jsx)(Q.Z,{}),onClick:function(){return function(e){_e(e),Xe(!0)}(n)}})},"edit"),(0,B.jsx)(ae.Z,{title:e.formatMessage({id:"rechunk",defaultMessage:"重新切块"}),children:(0,B.jsx)(z.ZP,{type:"text",size:"small",icon:(0,B.jsx)(X.Z,{}),onClick:function(){return tt(n)}})},"rechunk"),(0,B.jsx)(se.Z,{title:e.formatMessage({id:"deleteTip"}),description:"".concat(e.formatMessage({id:"deleteAffirm"}),"【").concat(null==n?void 0:n.fileName,"】?"),onConfirm:function(){return $e(n)},okText:e.formatMessage({id:"ok"}),cancelText:e.formatMessage({id:"cancel"}),children:(0,B.jsx)(ae.Z,{title:e.formatMessage({id:"delete",defaultMessage:"删除"}),children:(0,B.jsx)(z.ZP,{type:"text",size:"small",icon:(0,B.jsx)(K.Z,{}),danger:!0})})},"delete")]}}],rt=function(){var n=v()(h()().mark((function n(){var r,a,s,o,i,l;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(0!==Me.length){n.next=3;break}return w.yw.warning(e.formatMessage({id:"batch.delete.noselection",defaultMessage:"Please select items to delete"})),n.abrupt("return");case 3:w.yw.loading(e.formatMessage({id:"deleting",defaultMessage:"Deleting..."})),a=0,s=0,o=g()(Me),n.prev=7,o.s();case 9:if((i=o.n()).done){n.next=23;break}return l=i.value,n.prev=11,n.next=14,Z(l);case 14:200===n.sent.code?a++:s++,n.next=21;break;case 18:n.prev=18,n.t0=n.catch(11),s++;case 21:n.next=9;break;case 23:n.next=28;break;case 25:n.prev=25,n.t1=n.catch(7),o.e(n.t1);case 28:return n.prev=28,o.f(),n.finish(28);case 31:w.yw.destroy(),0===s?w.yw.success(e.formatMessage({id:"batch.delete.success",defaultMessage:"Successfully deleted {count} items"},{count:a})):w.yw.warning(e.formatMessage({id:"batch.delete.partial",defaultMessage:"Deleted {success} items, failed to delete {fail} items"},{success:a,fail:s})),xe([]),we([]),null===(r=t.current)||void 0===r||r.reloadAndRest();case 36:case"end":return n.stop()}}),n,null,[[7,25,28,31],[11,18]])})));return function(){return n.apply(this,arguments)}}(),at=function(){var e=v()(h()().mark((function e(t,n,r){var s,o;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:console.log("handleExportExcel",t,n,r),s=localStorage.getItem(a.LA8),o=f()({categoryUid:(null==S?void 0:S.uid)===a.zBg?"":null==S?void 0:S.uid,kbUid:null==k?void 0:k.uid,orgUid:(null==y?void 0:y.uid)||"",accessToken:s||"",exportType:t},Fe),"current"===t?(o.pageNumber=i-1,o.pageSize=m):"all"===t?(o.pageNumber=0,o.pageSize=1e3):"range"===t&&void 0!==n&&void 0!==r&&(o.pageNumber=n,o.pageSize=r),window.open((0,O.kG)()+"/api/v1/llm/file/export?"+new URLSearchParams(Object.entries(o).reduce((function(e,t){var n=M()(t,2),r=n[0],a=n[1];return e[r]=String(a),e}),{})).toString());case 5:case"end":return e.stop()}}),e)})));return function(t,n,r){return e.apply(this,arguments)}}(),st=function(){var n=v()(h()().mark((function n(){var r,s,o;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(0!==ze){n.next=3;break}return w.yw.warning(e.formatMessage({id:"deleteAll.nodata",defaultMessage:"没有数据可删除"})),n.abrupt("return");case 3:return w.yw.loading(e.formatMessage({id:"deleting.all",defaultMessage:"正在删除所有数据..."})),n.prev=4,r={categoryUid:(null==S?void 0:S.uid)===a.zBg?"":null==S?void 0:S.uid,kbUid:null==k?void 0:k.uid,orgUid:null==y?void 0:y.uid},n.next=8,U(r);case 8:s=n.sent,console.log("handleDeleteAllConfirm response:",s,r),200===s.code?(w.yw.destroy(),w.yw.success(e.formatMessage({id:"deleteAll.success",defaultMessage:"成功删除所有数据"})),null===(o=t.current)||void 0===o||o.reloadAndRest()):(w.yw.destroy(),w.yw.error(s.message||e.formatMessage({id:"deleteAll.failed",defaultMessage:"删除失败"}))),n.next=18;break;case 13:n.prev=13,n.t0=n.catch(4),w.yw.destroy(),w.yw.error(e.formatMessage({id:"deleteAll.error",defaultMessage:"删除过程发生错误"})),console.error("删除全部数据错误:",n.t0);case 18:case"end":return n.stop()}}),n,null,[[4,13]])})));return function(){return n.apply(this,arguments)}}(),ot=function(e){for(var t=[],n=1e3,r=Math.ceil(e/n),a=function(){var r=s,a=s*n+1,o=Math.min((s+1)*n,e);t.push({key:"export-".concat(s),label:"".concat(a,"-").concat(o," (").concat(o-a+1,"条)"),onClick:function(){return at("range",r,n)}})},s=0;s<r;s++)a();return t};(0,o.useEffect)((function(){var e;null==t||null===(e=t.current)||void 0===e||e.reload()}),[k,S]),(0,o.useEffect)((function(){return V.Z.on(a.YwV,(function(e){var n;null==t||null===(n=t.current)||void 0===n||n.reload()})),function(){V.Z.off(a.YwV)}}),[]);var it=function(){var t=v()(h()().mark((function t(){return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,(0,ce.HK)(a.QPQ,null==y?void 0:y.uid,null==k?void 0:k.uid,a.whQ,{showLoading:!0,loadingMessage:e.formatMessage({id:"loading"}),errorMessage:e.formatMessage({id:"fetch.categories.error",defaultMessage:"Failed to fetch categories"})});case 2:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}();return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(he,{onModelStatusChange:function(e){Se(e),Ie(!1)}}),(0,B.jsx)(ee.Z,{columns:nt,actionRef:t,cardBordered:!0,rowSelection:{selectedRowKeys:ge,onChange:function(e,t){xe(e),we(t)}},scroll:{x:1800},request:function(){var e=v()(h()().mark((function e(t,n,r){var s,o,i,l,d,p,g,m;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return s=t.current,o=t.pageSize,i=c()(t,Oe),u(s),x(o),Pe(i),l=void 0,d=void 0,n&&Object.keys(n).length>0&&(p=Object.keys(n)[0],l=p,d="ascend"===n[p]?"ascend":"descend"),g=f()(f()({pageNumber:s-1,pageSize:o,categoryUid:(null==S?void 0:S.uid)===a.zBg?"":null==S?void 0:S.uid,kbUid:null==k?void 0:k.uid,orgUid:null==y?void 0:y.uid},i),{},{sortBy:l,sortDirection:d}),e.next=10,b(g);case 10:return 200===(m=e.sent).code?(console.log("queryFilesByOrg response:",g,m),Le(m.data.totalElements)):w.yw.error(m.message),e.abrupt("return",{data:m.data.content,success:!0,total:m.data.totalElements});case 13:case"end":return e.stop()}}),e)})));return function(t,n,r){return e.apply(this,arguments)}}(),rowKey:"uid",search:{labelWidth:"auto"},pagination:{showQuickJumper:!0,onChange:function(e,t){u(e),x(t)}},dateFormatter:"string",headerTitle:n(null==k?void 0:k.name)+" - 文件上传列表",tooltip:"所上传内容会自动添加到 '拆分' 列表中",toolBarRender:function(){var t=[(0,B.jsx)(z.ZP,{icon:(0,B.jsx)(W.Z,{}),type:"primary",onClick:function(){return me((function(){return D(!0)}),je,Ae)},disabled:Ae||!je,children:e.formatMessage({id:"upload",defaultMessage:"File"})},"upload"),(0,B.jsx)(Ce,{currentKbase:k,currentOrg:y,embeddingModelExists:je,checkingEmbeddingModel:Ae||!je},"chat")],n=[];ge.length>0&&n.push({key:"batchDelete",icon:(0,B.jsx)(K.Z,{}),danger:!0,label:e.formatMessage({id:"batch.delete"})+" (".concat(ge.length,")"),onClick:function(){Ne.confirm({title:e.formatMessage({id:"batch.deleteTip"}),content:"".concat(e.formatMessage({id:"batch.deleteAffirm"})," ").concat(ge.length," ").concat(e.formatMessage({id:"items"}),"?"),onOk:rt,okText:e.formatMessage({id:"ok"}),cancelText:e.formatMessage({id:"cancel"})})}}),n.push({key:"deleteAll",icon:(0,B.jsx)(G.Z,{}),danger:!0,label:e.formatMessage({id:"deleteAll",defaultMessage:"删除所有"}),onClick:function(){Ne.confirm({title:e.formatMessage({id:"deleteAll.tip",defaultMessage:"删除确认"}),content:e.formatMessage({id:"deleteAll.confirm",defaultMessage:"确定要删除所有文件数据吗?此操作不可恢复!"}),onOk:st,okText:e.formatMessage({id:"ok"}),cancelText:e.formatMessage({id:"cancel"})})}});var r=[{key:"export-current",icon:(0,B.jsx)(_.Z,{}),label:e.formatMessage({id:"export.current",defaultMessage:"导出当前页"}),onClick:function(){return at("current")}}];return ze>0&&(ze<=1e3?r.push({key:"export-all",icon:(0,B.jsx)(_.Z,{}),label:e.formatMessage({id:"export.all",defaultMessage:"导出全部"})+" (".concat(ze,"条)"),onClick:function(){return at("all")}}):r.push({key:"export-range",icon:(0,B.jsx)(_.Z,{}),label:e.formatMessage({id:"export.range",defaultMessage:"分段导出"})+" (".concat(ze,"条)"),children:ot(ze)})),t.push((0,B.jsx)(oe.Z,{menu:{items:r},placement:"bottom",children:(0,B.jsxs)(z.ZP,{type:"primary",children:[e.formatMessage({id:"export.options",defaultMessage:"导出"}),(0,B.jsx)($.Z,{})]})},"exportDropdown")),n.length>0&&t.push((0,B.jsx)(oe.Z,{menu:{items:n},placement:"bottom",children:(0,B.jsxs)(z.ZP,{type:ge.length>0?"primary":"default",danger:ge.length>0,children:[ge.length>0?e.formatMessage({id:"batch.operations",defaultMessage:"批量操作"})+" (".concat(ge.length,")"):e.formatMessage({id:"more.operations",defaultMessage:"更多操作"}),(0,B.jsx)($.Z,{})]})},"batchOperations")),t}}),q&&(0,B.jsx)(ue.Z,{type:a.n1c,acceptType:"*",isModalOpen:q,handleSubmit:function(e){D(!1),null==t||t.current.reload(),it()},handleCancel:function(){D(!1),null==t||t.current.reload()}}),ie&&(0,B.jsx)(Y,{type:a.ACv,open:ie,onClose:function(){return de(!1)}}),Qe&&(0,B.jsx)(qe,{file:Ge,open:Qe,onClose:function(){Xe(!1),_e(void 0)},onSubmit:et}),Ve]})};function Re(e){return ze.apply(this,arguments)}function ze(){return(ze=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/text/query/org",{method:"GET",params:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Le(e){return Be.apply(this,arguments)}function Be(){return(Be=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/text/create",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Ye(e){return Ne.apply(this,arguments)}function Ne(){return(Ne=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/text/update",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Ve(e){return He.apply(this,arguments)}function He(){return(He=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/text/delete",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Je(e){return Qe.apply(this,arguments)}function Qe(){return(Qe=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/text/deleteAll",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Xe(e){return Ke.apply(this,arguments)}function Ke(){return(Ke=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/text/updateIndex",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function We(e){return Ge.apply(this,arguments)}function Ge(){return(Ge=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/text/updateVectorIndex",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function _e(e){return $e.apply(this,arguments)}function $e(){return($e=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/text/updateAllIndex",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function et(e){return tt.apply(this,arguments)}function tt(){return(tt=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/text/updateAllVectorIndex",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function nt(e){return rt.apply(this,arguments)}function rt(){return(rt=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/robot/agent/content/generate-faq",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function at(e){return st.apply(this,arguments)}function st(){return(st=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/text/enable",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var ot=n(77274),it=n(15722),lt=n(93689),ut=n(40439),ct=n(30617),dt=n(61107),ft=n(82812),pt=n(58087),gt=n(38197),mt=n(96501),ht=function(e){var t=e.isEdit,n=e.text,r=e.open,s=e.onClose,i=e.onSubmit,l=Ue.A.useForm(),u=M()(l,1)[0],c=(0,o.useState)(""),d=M()(c,2),p=(d[0],d[1]),m=(0,P.u)((function(e){return e.currentOrg})),x=(0,N.v)((function(e){return e.categorySelectOptions})),y=(0,N.v)((function(e){return e.categoryTreeOptions})),b=(0,o.useState)(),k=M()(b,2),j=k[0],S=k[1],Z=(0,F.j)((function(e){return e.currentKbase})),C=(0,o.useState)([]),U=M()(C,2),A=U[0],I=U[1],T=(0,o.useState)(!1),E=M()(T,2),q=E[0],O=E[1],L=(0,o.useState)(""),Y=M()(L,2),V=Y[0],H=Y[1],J=(0,o.useState)([]),Q=M()(J,2),X=Q[0],K=Q[1],G=(0,o.useState)(!1),_=M()(G,2),$=_[0],ee=_[1],te=(0,o.useState)(new Set),se=M()(te,2),oe=se[0],ie=se[1],le=function(e){return e.filter((function(e){return e&&""!==e.trim()}))},ue=function(){var e=v()(h()().mark((function e(){var t,n,r,a;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=u.getFieldValue("title"),n=u.getFieldValue("content"),t&&n){e.next=5;break}return w.yw.warning("请先填写标题和内容"),e.abrupt("return");case 5:return ee(!0),e.prev=6,r={title:t,content:n,orgUid:null==m?void 0:m.uid},e.next=10,nt(r);case 10:a=e.sent,console.log("生成常见问题返回:",a.data,r),200===a.code?(w.yw.success("常见问题生成成功"),K(a.data),ie(new Set)):(K([]),w.yw.warning("生成常见问题失败,请稍后重试")),e.next=19;break;case 15:e.prev=15,e.t0=e.catch(6),console.error("生成常见问题出错:",e.t0),w.yw.error("生成常见问题失败,请稍后重试");case 19:return e.prev=19,ee(!1),e.finish(19);case 22:case"end":return e.stop()}}),e,null,[[6,15,19,22]])})));return function(){return e.apply(this,arguments)}}();(0,o.useEffect)((function(){if(r){if(t)u.setFieldsValue({uid:null==n?void 0:n.uid,title:null==n?void 0:n.title,content:null==n?void 0:n.content,categoryUid:null==n?void 0:n.categoryUid}),p((null==n?void 0:n.content)||""),S(null==n?void 0:n.categoryUid),I(le((null==n?void 0:n.tagList)||[]));else{u.resetFields();var e=function e(t){var n,r=g()(t||[]);try{for(r.s();!(n=r.n()).done;){var s=n.value;if(s.key!==a.zBg)return s.key;var o=e(s.children||[]);if(o)return o}}catch(e){r.e(e)}finally{r.f()}return""}(y||[]);if(e)u.setFieldValue("categoryUid",e),S(e);else if(x&&x.length>0){var s=x[0].value;u.setFieldValue("categoryUid",s),S(s)}I([]),O(!1),H("")}K([]),ie(new Set)}}),[r,t,n,u,x,y]);var ce=function(){var e=V.trim();if(e&&!A.includes(e)){var t=le([].concat(ve()(A),[e]));I(t)}O(!1),H("")},de=function(){O(!1),H("")},fe=function(){var e=v()(h()().mark((function e(t,n){var r,a,s;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(e.prev=0,!oe.has(n)){e.next=4;break}return w.yw.info("该问题已保存"),e.abrupt("return");case 4:return r=f()(f()({},t),{},{categoryUid:j||u.getFieldValue("categoryUid"),kbUid:null==Z?void 0:Z.uid,orgUid:null==m?void 0:m.uid,type:"TEXT"}),w.yw.loading("正在保存常见问题..."),e.next=8,(0,ft.kh)(r);case 8:200===(a=e.sent).code?((s=new Set(oe)).add(n),ie(s),w.yw.success("常见问题保存成功")):w.yw.error(a.message||"保存常见问题失败"),e.next=16;break;case 12:e.prev=12,e.t0=e.catch(0),console.error("保存常见问题出错:",e.t0),w.yw.error("保存常见问题失败,请稍后重试");case 16:case"end":return e.stop()}}),e,null,[[0,12]])})));return function(t,n){return e.apply(this,arguments)}}();return(0,B.jsx)(B.Fragment,{children:(0,B.jsx)(D.Z,{title:t?"修改文本":"新建文本",onClose:s,open:r,width:650,extra:(0,B.jsxs)(R.Z,{children:[(0,B.jsx)(z.ZP,{onClick:s,children:"取消"}),(0,B.jsx)(z.ZP,{onClick:function(){console.log("handleSubmit"),u.validateFields().then((function(e){var t=f()(f()({},e),{},{categoryUid:j,tagList:le(A),kbUid:null==Z?void 0:Z.uid,orgUid:null==m?void 0:m.uid});console.log("submit",t),i(t)}))},type:"primary",children:"保存"}),(0,B.jsx)(z.ZP,{onClick:ue,type:"default",loading:$,icon:(0,B.jsx)(pt.Z,{}),children:"智能生成常见问题"})]}),children:(0,B.jsxs)(Ue.A,{form:u,submitter:{render:function(){return null}},children:[(0,B.jsx)(gt.Z,{label:"分类",name:"categoryUid",rules:[{required:!0,message:"请选择分类"}],fieldProps:{treeData:function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return t.filter((function(e){return e.key!==a.zBg})).map((function(t){return f()(f()({},t),{},{children:e(t.children)})}))}(y||[]),allowClear:!0,showSearch:!0,placeholder:"请选择分类",treeDefaultExpandAll:!1,onChange:function(e){console.log("category selected ".concat(e)),S(e)},fieldNames:{label:"title",value:"key",children:"children"}}}),(0,B.jsx)(Ie.Z,{label:"标题",name:"title",rules:[{required:!0}]}),(0,B.jsx)(Ue.A.Item,{label:"标签",name:"tagList",tooltip:"为文本添加标签,便于分类和检索",children:(0,B.jsxs)("div",{style:{minHeight:"32px"},children:[(0,B.jsx)(R.Z,{wrap:!0,style:{marginBottom:8},children:le(A).map((function(e,t){return(0,B.jsx)(re.Z,{closable:!0,color:"blue",onClose:function(){return t=e,n=le(A.filter((function(e){return e!==t}))),void I(n);var t,n},style:{marginBottom:4},children:e},t)}))}),q?(0,B.jsxs)(R.Z.Compact,{style:{display:"flex",alignItems:"center"},children:[(0,B.jsx)(Ee.Z,{value:V,onChange:function(e){H(e.target.value)},onKeyDown:function(e){"Enter"===e.key?ce():"Escape"===e.key&&de()},placeholder:"输入标签名称",size:"small",style:{width:"120px"},autoFocus:!0}),(0,B.jsx)(z.ZP,{type:"primary",size:"small",icon:(0,B.jsx)(Fe.Z,{}),onClick:ce,disabled:!V.trim(),children:"保存"}),(0,B.jsx)(z.ZP,{size:"small",icon:(0,B.jsx)(Pe.Z,{}),onClick:de,children:"取消"})]}):(0,B.jsx)(z.ZP,{type:"dashed",onClick:function(){O(!0),H("")},icon:(0,B.jsx)(W.Z,{}),size:"small",style:{height:"24px"},children:"添加标签"})]})}),(0,B.jsx)(Te.Z,{label:"内容",name:"content",rules:[{required:!0}]}),X.length>0&&(0,B.jsxs)("div",{style:{marginTop:16},children:[(0,B.jsx)(ne.Z.Title,{level:5,children:"常见问题列表"}),(0,B.jsx)(mt.Z,{bordered:!0,dataSource:X,renderItem:function(e,t){return(0,B.jsx)(mt.Z.Item,{actions:[(0,B.jsx)(ae.Z,{title:oe.has(t)?"已保存":"保存到常见问题库",children:(0,B.jsx)(z.ZP,{type:oe.has(t)?"default":"primary",icon:(0,B.jsx)(Fe.Z,{}),size:"small",disabled:oe.has(t),onClick:function(){return fe(e,t)},children:oe.has(t)?"已保存":"保存"})},"save")],children:(0,B.jsx)(mt.Z.Item.Meta,{title:"".concat(t+1,". ").concat(null==e?void 0:e.question),description:null==e?void 0:e.answer})},t)}})]})]})})})},xt=["current","pageSize"],vt=function(){var e=(0,l.useIntl)(),t=(0,o.useRef)(),n=(0,E.Z)().translateString,r=(0,o.useState)(1),s=M()(r,2),i=s[0],u=s[1],d=(0,o.useState)(10),p=M()(d,2),m=p[0],x=p[1],y=(0,P.u)((function(e){return e.currentOrg})),b=(0,F.j)((function(e){return e.currentKbase})),k=(0,N.v)((function(e){return e.currentCategory})),j=(0,N.v)((function(e){return e.categorySelectOptions})),S=(0,o.useState)(!1),Z=M()(S,2),C=Z[0],U=Z[1],A=(0,o.useState)({}),I=M()(A,2),T=I[0],q=I[1],D=(0,o.useState)(!1),R=M()(D,2),L=R[0],Y=R[1],V=te.Z.useModal(),H=M()(V,2),J=H[0],Q=H[1],X=(0,o.useState)([]),ne=M()(X,2),se=ne[0],ie=ne[1],de=(0,o.useState)([]),fe=M()(de,2),pe=fe[0],ge=fe[1],me=(0,o.useState)(!1),xe=M()(me,2),ve=xe[0],ye=xe[1],Me=(0,o.useState)(!1),we=M()(Me,2),be=we[0],ke=we[1],je=(0,o.useState)({}),Se=M()(je,2),Ze=Se[0],Ue=Se[1],Ae=(0,o.useState)(0),Ie=M()(Ae,2),Te=Ie[0],Ee=Ie[1],Fe=(0,o.useState)(!1),Pe=M()(Fe,2),qe=Pe[0],Oe=Pe[1],De=function(){var n=v()(h()().mark((function n(r){var a;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return console.log("deleteText:",r),n.next=3,Ve(r);case 3:a=n.sent,console.log("deleteMember:",a),200===a.code?(w.yw.success(e.formatMessage({id:"delete.success",defaultMessage:"Delete success"})),t.current.reload()):w.yw.error(a.message);case 6:case"end":return n.stop()}}),n)})));return function(e){return n.apply(this,arguments)}}(),ze=function(){var n=v()(h()().mark((function n(){var r,a,s,o,i,l;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(0!==pe.length){n.next=3;break}return w.yw.warning(e.formatMessage({id:"batch.delete.noselection",defaultMessage:"Please select items to delete"})),n.abrupt("return");case 3:w.yw.loading(e.formatMessage({id:"deleting",defaultMessage:"Deleting..."})),a=0,s=0,o=g()(pe),n.prev=7,o.s();case 9:if((i=o.n()).done){n.next=23;break}return l=i.value,n.prev=11,n.next=14,Ve(l);case 14:200===n.sent.code?a++:s++,n.next=21;break;case 18:n.prev=18,n.t0=n.catch(11),s++;case 21:n.next=9;break;case 23:n.next=28;break;case 25:n.prev=25,n.t1=n.catch(7),o.e(n.t1);case 28:return n.prev=28,o.f(),n.finish(28);case 31:w.yw.destroy(),0===s?w.yw.success(e.formatMessage({id:"batch.delete.success",defaultMessage:"Successfully deleted {count} items"},{count:a})):w.yw.warning(e.formatMessage({id:"batch.delete.partial",defaultMessage:"Deleted {success} items, failed to delete {fail} items"},{success:a,fail:s})),ie([]),ge([]),null===(r=t.current)||void 0===r||r.reloadAndRest();case 36:case"end":return n.stop()}}),n,null,[[7,25,28,31],[11,18]])})));return function(){return n.apply(this,arguments)}}(),Be=[{dataIndex:"index",valueType:"indexBorder",width:48,fixed:"left"},{title:(0,B.jsx)(l.FormattedMessage,{id:"title",defaultMessage:"Title"}),dataIndex:"title",copyable:!0,ellipsis:!0,fixed:"left",tooltip:e.formatMessage({id:"llm.text.title.tooltip",defaultMessage:"文档的标题"})},{title:(0,B.jsx)(l.FormattedMessage,{id:"content",defaultMessage:"Content"}),dataIndex:"content",ellipsis:!0,search:!0,copyable:!0,tooltip:e.formatMessage({id:"llm.text.content.tooltip",defaultMessage:"文档的具体内容"})},{title:(0,B.jsx)(l.FormattedMessage,{id:"status",defaultMessage:"Status"}),dataIndex:"status",hideInSearch:!0,width:120,tooltip:e.formatMessage({id:"llm.text.status.tooltip",defaultMessage:"文档索引处理状态"}),render:function(t,n){var r=n.elasticStatus||"",a="";return"SUCCESS"===r?a="success":"ERROR"===r?a="error":"NEW"===r&&(a="processing"),(0,B.jsx)(re.Z,{color:a,children:e.formatMessage({id:"llm.status.".concat(r.toLowerCase())})})}},{title:(0,B.jsx)(l.FormattedMessage,{id:"vectorStatus",defaultMessage:"Vector Status"}),dataIndex:"vectorStatus",hideInSearch:!0,width:120,tooltip:e.formatMessage({id:"llm.text.vectorStatus.tooltip",defaultMessage:"文档向量化处理状态"}),render:function(t,n){var r=n.vectorStatus||"",a="";return"SUCCESS"===r?a="success":"ERROR"===r?a="error":"NEW"===r?a="processing":"PROCESSING"===r&&(a="warning"),r?(0,B.jsx)(re.Z,{color:a,icon:(0,B.jsx)(ot.Z,{}),children:e.formatMessage({id:"llm.vectorStatus.".concat(r.toLowerCase())})||r}):"-"}},{title:(0,B.jsx)(l.FormattedMessage,{id:"category",defaultMessage:"Category"}),dataIndex:"categoryUid",hideInSearch:!0,width:120,tooltip:e.formatMessage({id:"llm.text.category.tooltip",defaultMessage:"文档所属的分类"}),render:function(e,t){var n=j.find((function(e){return e.value===(null==t?void 0:t.categoryUid)}));return null!=n&&n.label?(0,B.jsx)(re.Z,{color:"blue",children:n.label}):(0,B.jsx)(re.Z,{color:"default",children:"未分类"})}},{title:(0,B.jsx)(l.FormattedMessage,{id:"tags",defaultMessage:"Tags"}),dataIndex:"tagList",hideInSearch:!0,width:150,tooltip:e.formatMessage({id:"llm.text.tags.tooltip",defaultMessage:"文档的标签列表"}),render:function(e,t){if(null==t||!t.tagList||0===(null==t?void 0:t.tagList.length))return"-";var n=(null==t?void 0:t.tagList.length)>3,r=null==t?void 0:t.tagList.slice(0,3);return(0,B.jsxs)("div",{children:[r.map((function(e,t){return(0,B.jsx)(re.Z,{color:"green",style:{marginBottom:4},children:e},t)})),n&&(0,B.jsxs)(re.Z,{color:"orange",children:["+",(null==t?void 0:t.tagList.length)-3]})]})}},{title:(0,B.jsx)(l.FormattedMessage,{id:"createdAt",defaultMessage:"createdAt"}),key:"createdAt",dataIndex:"createdAt",sorter:!0,width:200,hideInSearch:!0,tooltip:e.formatMessage({id:"llm.text.createdAt.tooltip",defaultMessage:"文档创建的时间"}),render:function(e,t){return le()(t.createdAt).format("YYYY-MM-DD HH:mm:ss")}},{title:(0,B.jsx)(l.FormattedMessage,{id:"updatedAt",defaultMessage:"updatedAt"}),key:"updatedAt",dataIndex:"updatedAt",sorter:!0,width:200,hideInSearch:!0,tooltip:e.formatMessage({id:"llm.text.updatedAt.tooltip",defaultMessage:"文档最后更新的时间"}),render:function(e,t){return t.updatedAt?le()(t.updatedAt).format("YYYY-MM-DD HH:mm:ss"):"-"}}],Ne=[].concat(Be,[{title:e.formatMessage({id:"actions",defaultMessage:"Actions"}),valueType:"option",key:"option",width:220,fixed:"right",render:function(t,n,r,a){return[(0,B.jsx)("a",{onClick:function(){q(n),Y(!0),U(!0)},children:e.formatMessage({id:"edit",defaultMessage:"Edit"})},"editable"),(0,B.jsx)(z.ZP,{type:"link",onClick:function(){return function(t){J.confirm({title:e.formatMessage({id:"deleteTip"}),icon:(0,B.jsx)(it.Z,{}),content:"".concat(e.formatMessage({id:"deleteAffirm",defaultMessage:"Delete"}),"【").concat(t.title,"】?"),onOk:function(){De(t)},onCancel:function(){},okText:e.formatMessage({id:"ok"}),cancelText:e.formatMessage({id:"cancel"})})}(n)},danger:!0,children:e.formatMessage({id:"delete",defaultMessage:"Delete"})},"delete"),(0,B.jsx)(oe.Z,{menu:{items:[{key:"updateIndex",label:e.formatMessage({id:"update.index",defaultMessage:"更新索引"}),onClick:function(){return Ke(n)}},{key:"updateVectorIndex",label:e.formatMessage({id:"update.vector.index",defaultMessage:"更新向量索引"}),onClick:function(){return Ge(n)}}]},placement:"bottomRight",children:(0,B.jsxs)(z.ZP,{size:"small",type:"link",children:[e.formatMessage({id:"update.indexes",defaultMessage:"更新索引"}),(0,B.jsx)($.Z,{})]})},"indexOperations")]}}]);(0,o.useEffect)((function(){var e;null==t||null===(e=t.current)||void 0===e||e.reload()}),[b,k]);var He=function(){var e=v()(h()().mark((function e(n){var r,a;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Le(n);case 2:r=e.sent,console.log("handleCreateText response:",r),200===r.code?(null===(a=t.current)||void 0===a||a.reload(),U(!1)):w.yw.error(r.message);case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),Qe=function(){var e=v()(h()().mark((function e(n){var r,a;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n.uid=null==T?void 0:T.uid,e.next=3,Ye(n);case 3:r=e.sent,console.log("handleUpdateText response:",r),200===r.code?(null===(a=t.current)||void 0===a||a.reload(),U(!1)):w.yw.error(r.message);case 6:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),Ke=function(){var n=v()(h()().mark((function n(r){var a,s;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return w.yw.loading(e.formatMessage({id:"updating.index",defaultMessage:"正在更新索引..."})),n.prev=1,n.next=4,Xe({uid:r.uid});case 4:a=n.sent,w.yw.destroy(),200===a.code?(w.yw.success(e.formatMessage({id:"update.index.success",defaultMessage:"索引更新成功"})),null===(s=t.current)||void 0===s||s.reload()):w.yw.error(a.message||e.formatMessage({id:"update.index.failed",defaultMessage:"索引更新失败"})),n.next=14;break;case 9:n.prev=9,n.t0=n.catch(1),w.yw.destroy(),w.yw.error(e.formatMessage({id:"update.index.error",defaultMessage:"更新索引过程发生错误"})),console.error("更新索引错误:",n.t0);case 14:case"end":return n.stop()}}),n,null,[[1,9]])})));return function(e){return n.apply(this,arguments)}}(),Ge=function(){var n=v()(h()().mark((function n(r){var a,s;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return w.yw.loading(e.formatMessage({id:"updating.vector.index",defaultMessage:"正在更新向量索引..."})),n.prev=1,n.next=4,We({uid:r.uid});case 4:a=n.sent,w.yw.destroy(),200===a.code?(w.yw.success(e.formatMessage({id:"update.vector.index.success",defaultMessage:"向量索引更新成功"})),null===(s=t.current)||void 0===s||s.reload()):w.yw.error(a.message||e.formatMessage({id:"update.vector.index.failed",defaultMessage:"向量索引更新失败"})),n.next=14;break;case 9:n.prev=9,n.t0=n.catch(1),w.yw.destroy(),w.yw.error(e.formatMessage({id:"update.vector.index.error",defaultMessage:"更新向量索引过程发生错误"})),console.error("更新向量索引错误:",n.t0);case 14:case"end":return n.stop()}}),n,null,[[1,9]])})));return function(e){return n.apply(this,arguments)}}(),$e=function(){var n=v()(h()().mark((function n(){var r,a,s,o,i,l;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(0!==pe.length){n.next=3;break}return w.yw.warning(e.formatMessage({id:"batch.update.noselection",defaultMessage:"请选择要更新的项目"})),n.abrupt("return");case 3:w.yw.loading(e.formatMessage({id:"updating.index",defaultMessage:"正在更新索引..."})),a=0,s=0,o=g()(pe),n.prev=7,o.s();case 9:if((i=o.n()).done){n.next=23;break}return l=i.value,n.prev=11,n.next=14,Xe({uid:l.uid});case 14:200===n.sent.code?a++:s++,n.next=21;break;case 18:n.prev=18,n.t0=n.catch(11),s++;case 21:n.next=9;break;case 23:n.next=28;break;case 25:n.prev=25,n.t1=n.catch(7),o.e(n.t1);case 28:return n.prev=28,o.f(),n.finish(28);case 31:w.yw.destroy(),0===s?w.yw.success(e.formatMessage({id:"batch.update.index.success"},{defaultMessage:"成功更新 ".concat(a," 条记录的索引")})):w.yw.error(e.formatMessage({id:"batch.update.index.partial"},{defaultMessage:"更新了 ".concat(a," 条记录的索引,").concat(s," 条记录更新失败")})),null===(r=t.current)||void 0===r||r.reload();case 34:case"end":return n.stop()}}),n,null,[[7,25,28,31],[11,18]])})));return function(){return n.apply(this,arguments)}}(),tt=function(){var n=v()(h()().mark((function n(){var r,a,s,o,i,l;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(0!==pe.length){n.next=3;break}return w.yw.warning(e.formatMessage({id:"batch.update.noselection",defaultMessage:"请选择要更新的项目"})),n.abrupt("return");case 3:w.yw.loading(e.formatMessage({id:"updating.vector.index",defaultMessage:"正在更新向量索引..."})),a=0,s=0,o=g()(pe),n.prev=7,o.s();case 9:if((i=o.n()).done){n.next=23;break}return l=i.value,n.prev=11,n.next=14,We({uid:l.uid});case 14:200===n.sent.code?a++:s++,n.next=21;break;case 18:n.prev=18,n.t0=n.catch(11),s++;case 21:n.next=9;break;case 23:n.next=28;break;case 25:n.prev=25,n.t1=n.catch(7),o.e(n.t1);case 28:return n.prev=28,o.f(),n.finish(28);case 31:w.yw.destroy(),0===s?w.yw.success(e.formatMessage({id:"batch.update.vector.index.success"},{defaultMessage:"成功更新 ".concat(a," 条记录的向量索引")})):w.yw.error(e.formatMessage({id:"batch.update.vector.index.partial"},{defaultMessage:"更新了 ".concat(a," 条记录的向量索引,").concat(s," 条记录更新失败")})),null===(r=t.current)||void 0===r||r.reload();case 34:case"end":return n.stop()}}),n,null,[[7,25,28,31],[11,18]])})));return function(){return n.apply(this,arguments)}}(),nt=function(){var n=v()(h()().mark((function n(){return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:te.Z.confirm({title:e.formatMessage({id:"updateAll.index.confirm.title",defaultMessage:"更新全部索引确认"}),content:e.formatMessage({id:"updateAll.index.confirm.content",defaultMessage:"确定要更新所有记录的索引吗?此操作可能需要一些时间。"}),onOk:function(){var n=v()(h()().mark((function n(){var r,s;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return w.yw.loading(e.formatMessage({id:"updating.all.index",defaultMessage:"正在更新所有索引..."})),n.prev=1,n.next=4,_e({kbUid:null==b?void 0:b.uid,categoryUid:(null==k?void 0:k.uid)===a.zBg?"":null==k?void 0:k.uid,orgUid:null==y?void 0:y.uid});case 4:r=n.sent,w.yw.destroy(),200===r.code?(w.yw.success(e.formatMessage({id:"update.all.index.success",defaultMessage:"所有索引更新请求已发送"})),null===(s=t.current)||void 0===s||s.reload()):w.yw.error(r.message||e.formatMessage({id:"update.all.index.failed",defaultMessage:"所有索引更新请求失败"})),n.next=14;break;case 9:n.prev=9,n.t0=n.catch(1),w.yw.destroy(),w.yw.error(e.formatMessage({id:"update.all.index.error",defaultMessage:"更新所有索引过程发生错误"})),console.error("更新所有索引错误:",n.t0);case 14:case"end":return n.stop()}}),n,null,[[1,9]])})));return function(){return n.apply(this,arguments)}}()});case 1:case"end":return n.stop()}}),n)})));return function(){return n.apply(this,arguments)}}(),rt=function(){var n=v()(h()().mark((function n(){return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:te.Z.confirm({title:e.formatMessage({id:"updateAll.vector.index.confirm.title",defaultMessage:"更新全部向量索引确认"}),content:e.formatMessage({id:"updateAll.vector.index.confirm.content",defaultMessage:"确定要更新所有记录的向量索引吗?此操作可能需要一些时间。"}),onOk:function(){var n=v()(h()().mark((function n(){var r,s;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return w.yw.loading(e.formatMessage({id:"updating.all.vector.index",defaultMessage:"正在更新所有向量索引..."})),n.prev=1,n.next=4,et({kbUid:null==b?void 0:b.uid,categoryUid:(null==k?void 0:k.uid)===a.zBg?"":null==k?void 0:k.uid,orgUid:null==y?void 0:y.uid});case 4:r=n.sent,w.yw.destroy(),200===r.code?(w.yw.success(e.formatMessage({id:"update.all.vector.index.success",defaultMessage:"所有向量索引更新请求已发送"})),null===(s=t.current)||void 0===s||s.reload()):w.yw.error(r.message||e.formatMessage({id:"update.all.vector.index.failed",defaultMessage:"所有向量索引更新请求失败"})),n.next=14;break;case 9:n.prev=9,n.t0=n.catch(1),w.yw.destroy(),w.yw.error(e.formatMessage({id:"update.all.vector.index.error",defaultMessage:"更新所有向量索引过程发生错误"})),console.error("更新所有向量索引错误:",n.t0);case 14:case"end":return n.stop()}}),n,null,[[1,9]])})));return function(){return n.apply(this,arguments)}}()});case 1:case"end":return n.stop()}}),n)})));return function(){return n.apply(this,arguments)}}(),st=function(){ve?be?w.yw.info("正在检查模型状态,请稍后再试"):(U(!0),Y(!1),q({})):J.warning({title:"嵌入式模型缺失",content:"请首先拉取Embedding向量模型bge-m3:latest,用于知识库向量检索",okText:"确定"})},ft=function(){var n=v()(h()().mark((function n(){var r,s,o;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(0!==Te){n.next=3;break}return w.yw.warning(e.formatMessage({id:"deleteAll.nodata",defaultMessage:"没有数据可删除"})),n.abrupt("return");case 3:return w.yw.loading(e.formatMessage({id:"deleting.all",defaultMessage:"正在删除所有数据..."})),n.prev=4,r={categoryUid:(null==k?void 0:k.uid)===a.zBg?"":null==k?void 0:k.uid,kbUid:null==b?void 0:b.uid,orgUid:null==y?void 0:y.uid},n.next=8,Je(r);case 8:s=n.sent,console.log("handleDeleteAllConfirm response:",s,r),200===s.code?(w.yw.destroy(),w.yw.success(e.formatMessage({id:"deleteAll.success",defaultMessage:"成功删除所有数据"})),null===(o=t.current)||void 0===o||o.reloadAndRest()):(w.yw.destroy(),w.yw.error(s.message||e.formatMessage({id:"deleteAll.failed",defaultMessage:"删除失败"}))),n.next=18;break;case 13:n.prev=13,n.t0=n.catch(4),w.yw.destroy(),w.yw.error(e.formatMessage({id:"deleteAll.error",defaultMessage:"删除过程发生错误"})),console.error("删除全部数据错误:",n.t0);case 18:case"end":return n.stop()}}),n,null,[[4,13]])})));return function(){return n.apply(this,arguments)}}(),pt=function(){var e=v()(h()().mark((function e(t,n,r){var s,o;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:console.log("handleExportExcel",t,n,r),s=localStorage.getItem(a.LA8),o=f()({categoryUid:(null==k?void 0:k.uid)===a.zBg?"":null==k?void 0:k.uid,kbUid:null==b?void 0:b.uid,orgUid:null==y?void 0:y.uid,accessToken:s||"",exportType:t},Ze),"current"===t?(o.pageNumber=String(i-1),o.pageSize=String(m)):"all"===t?(o.pageNumber="0",o.pageSize="1000"):"range"===t&&void 0!==n&&void 0!==r&&(o.pageNumber=String(n),o.pageSize=String(r)),window.open((0,O.kG)()+"/api/v1/llm/text/export?"+new URLSearchParams(o).toString());case 5:case"end":return e.stop()}}),e)})));return function(t,n,r){return e.apply(this,arguments)}}(),gt=function(){var t=v()(h()().mark((function t(){return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,(0,ce.HK)(a.QPQ,null==y?void 0:y.uid,null==b?void 0:b.uid,a.whQ,{showLoading:!0,loadingMessage:e.formatMessage({id:"loading"}),errorMessage:e.formatMessage({id:"fetch.categories.error",defaultMessage:"Failed to fetch categories"})});case 2:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}(),mt=function(){var t=v()(h()().mark((function t(){return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(ve){t.next=3;break}return J.confirm({title:e.formatMessage({id:"warning",defaultMessage:"警告"}),content:e.formatMessage({id:"embedding.model.missing.warning",defaultMessage:"嵌入式模型未加载,可能会影响向量检索质量。是否继续?"}),okText:e.formatMessage({id:"ok",defaultMessage:"确定"}),cancelText:e.formatMessage({id:"cancel",defaultMessage:"取消"}),onOk:function(){Oe(!0)}}),t.abrupt("return");case 3:if(!be){t.next=6;break}return w.yw.info("正在检查模型状态,请稍后再试"),t.abrupt("return");case 6:Oe(!0);case 7:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}(),vt={selectedRowKeys:se,onChange:function(e,t){ie(e),ge(t)}},yt=function(e){for(var t=[],n=1e3,r=Math.ceil(e/n),a=function(){var r=s,a=s*n+1,o=Math.min((s+1)*n,e);t.push({key:"export-".concat(s),label:"".concat(a,"-").concat(o," (").concat(o-a+1,"条)"),onClick:function(){return pt("range",r,n)}})},s=0;s<r;s++)a();return t},Mt=function(){var n=v()(h()().mark((function n(r){var a,s,o,i,l,u;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(0!==pe.length){n.next=3;break}return w.yw.warning(e.formatMessage({id:"batch.noselection",defaultMessage:"请选择要处理的项目"})),n.abrupt("return");case 3:w.yw.loading(r?e.formatMessage({id:"enabling",defaultMessage:"正在启用..."}):e.formatMessage({id:"disabling",defaultMessage:"正在禁用..."})),s=0,o=0,i=g()(pe),n.prev=7,i.s();case 9:if((l=i.n()).done){n.next=23;break}return u=l.value,n.prev=11,n.next=14,at({uid:u.uid,enabled:r});case 14:200===n.sent.code?s++:o++,n.next=21;break;case 18:n.prev=18,n.t0=n.catch(11),o++;case 21:n.next=9;break;case 23:n.next=28;break;case 25:n.prev=25,n.t1=n.catch(7),i.e(n.t1);case 28:return n.prev=28,i.f(),n.finish(28);case 31:w.yw.destroy(),0===o?w.yw.success(r?e.formatMessage({id:"batch.enable.success",defaultMessage:"成功启用 {count} 条记录"},{count:s}):e.formatMessage({id:"batch.disable.success",defaultMessage:"成功禁用 {count} 条记录"},{count:s})):w.yw.warning(r?e.formatMessage({id:"batch.enable.partial",defaultMessage:"启用了 {success} 条记录,{fail} 条记录启用失败"},{success:s,fail:o}):e.formatMessage({id:"batch.disable.partial",defaultMessage:"禁用了 {success} 条记录,{fail} 条记录禁用失败"},{success:s,fail:o})),ie([]),ge([]),null===(a=t.current)||void 0===a||a.reloadAndRest();case 36:case"end":return n.stop()}}),n,null,[[7,25,28,31],[11,18]])})));return function(e){return n.apply(this,arguments)}}();return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(he,{onModelStatusChange:function(e){ye(e),ke(!1)}}),(0,B.jsx)(ee.Z,{columns:Ne,actionRef:t,cardBordered:!0,rowSelection:vt,scroll:{x:1500},sticky:!0,request:function(){var t=v()(h()().mark((function t(n,r,s){var o,i,l,d,p,g,m,v;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return console.log("request:",n,r,s),w.yw.loading(e.formatMessage({id:"loading",defaultMessage:"Loading"})),o=n.current,i=n.pageSize,l=c()(n,xt),u(o),x(i),Ue(l),d=void 0,p=void 0,r&&Object.keys(r).length>0&&(g=Object.keys(r)[0],d=g,p="ascend"===r[g]?"ascend":"descend"),m=f()(f()({pageNumber:o-1,pageSize:i,categoryUid:(null==k?void 0:k.uid)===a.zBg?"":null==k?void 0:k.uid,kbUid:null==b?void 0:b.uid,orgUid:null==y?void 0:y.uid},l),{},{sortBy:d,sortDirection:p}),t.next=12,Re(m);case 12:return v=t.sent,console.log("queryTextsByOrg response:",m,v),w.yw.destroy(),200===v.code?Ee(v.data.totalElements):w.yw.error(v.message),t.abrupt("return",{data:v.data.content,success:!0,total:v.data.totalElements});case 17:case"end":return t.stop()}}),t)})));return function(e,n,r){return t.apply(this,arguments)}}(),editable:{type:"multiple"},rowKey:"uid",search:{labelWidth:"auto"},pagination:{pageSize:10,onChange:function(e,t){u(e),x(t)}},dateFormatter:"string",headerTitle:n(null==b?void 0:b.name)+" - 文本列表",tooltip:be?"正在检查嵌入式模型...":ve?"所添加文本内容会自动添加到 '拆分' 列表中 ":"请首先拉取Embedding向量模型bge-m3:latest",toolBarRender:function(){return function(){var t=[];(0,O.Ox)()||t.push((0,B.jsx)(z.ZP,{icon:(0,B.jsx)(W.Z,{}),type:"primary",onClick:st,disabled:be,children:e.formatMessage({id:"create"})},"create"),(0,B.jsx)(ae.Z,{title:e.formatMessage({id:"chat.test.tooltip",defaultMessage:"请确认上传内容状态为:处理成功"}),children:(0,B.jsx)(Ce,{currentKbase:b,currentOrg:y,embeddingModelExists:ve,checkingEmbeddingModel:be})},"chat"));var n=[];se.length>0&&n.push({key:"batchDelete",icon:(0,B.jsx)(K.Z,{}),danger:!0,label:e.formatMessage({id:"batch.delete"})+" (".concat(se.length,")"),onClick:function(){te.Z.confirm({title:e.formatMessage({id:"batch.deleteTip"}),content:"".concat(e.formatMessage({id:"batch.deleteAffirm"})," ").concat(se.length," ").concat(e.formatMessage({id:"items"}),"?"),onOk:ze,okText:e.formatMessage({id:"ok"}),cancelText:e.formatMessage({id:"cancel"})})}},{key:"batchEnable",icon:(0,B.jsx)(lt.Z,{}),label:e.formatMessage({id:"batch.enable",defaultMessage:"Enable"})+" (".concat(se.length,")"),onClick:function(){return Mt(!0)}},{key:"batchDisable",icon:(0,B.jsx)(ut.Z,{}),label:e.formatMessage({id:"batch.disable",defaultMessage:"Disable"})+" (".concat(se.length,")"),onClick:function(){return Mt(!1)}},{key:"batchUpdateIndex",icon:(0,B.jsx)(ot.Z,{}),label:e.formatMessage({id:"batch.update.index",defaultMessage:"更新索引"})+" (".concat(se.length,")"),onClick:$e},{key:"batchUpdateVectorIndex",icon:(0,B.jsx)(ot.Z,{}),label:e.formatMessage({id:"batch.update.vector.index",defaultMessage:"更新向量索引"})+" (".concat(se.length,")"),onClick:tt}),n.push({key:"deleteAll",icon:(0,B.jsx)(G.Z,{}),danger:!0,label:e.formatMessage({id:"deleteAll",defaultMessage:"删除所有"}),onClick:function(){te.Z.confirm({title:e.formatMessage({id:"deleteAll.tip",defaultMessage:"删除确认"}),content:e.formatMessage({id:"deleteAll.confirm",defaultMessage:"确定要删除所有文本数据吗?此操作不可恢复!"}),onOk:ft,okText:e.formatMessage({id:"ok"}),cancelText:e.formatMessage({id:"cancel"})})}},{key:"updateAllIndex",icon:(0,B.jsx)(ot.Z,{}),label:e.formatMessage({id:"updateAll.index",defaultMessage:"更新所有索引"}),onClick:nt},{key:"updateAllVectorIndex",icon:(0,B.jsx)(ot.Z,{}),label:e.formatMessage({id:"updateAll.vector.index",defaultMessage:"更新所有向量索引"}),onClick:rt});var r=[{key:"import",icon:(0,B.jsx)(ct.Z,{}),label:e.formatMessage({id:"import"}),onClick:mt,disabled:be},{key:"export-current",icon:(0,B.jsx)(_.Z,{}),label:e.formatMessage({id:"export.current",defaultMessage:"导出当前页"}),onClick:function(){return pt("current")}}];return Te>0&&(Te<=1e3?r.push({key:"export-all",icon:(0,B.jsx)(_.Z,{}),label:e.formatMessage({id:"export.all",defaultMessage:"导出全部"})+" (".concat(Te,"条)"),onClick:function(){return pt("all")}}):r.push({key:"export-range",icon:(0,B.jsx)(_.Z,{}),label:e.formatMessage({id:"export.range",defaultMessage:"分段导出"})+" (".concat(Te,"条)"),children:yt(Te)})),r.push({key:"download",icon:(0,B.jsx)(dt.Z,{}),label:e.formatMessage({id:"download.template",defaultMessage:"下载模板"}),onClick:function(){return(0,O.LG)()}}),t.push((0,B.jsx)(oe.Z,{menu:{items:r},placement:"bottom",children:(0,B.jsxs)(z.ZP,{type:"primary",children:[e.formatMessage({id:"import.export",defaultMessage:"导入导出"}),(0,B.jsx)($.Z,{})]})},"importExport")),n.length>0&&t.push((0,B.jsx)(oe.Z,{menu:{items:n},placement:"bottom",children:(0,B.jsxs)(z.ZP,{type:se.length>0?"primary":"default",danger:se.length>0,children:[se.length>0?e.formatMessage({id:"batch.operations",defaultMessage:"批量操作"})+" (".concat(se.length,")"):e.formatMessage({id:"more.operations",defaultMessage:"更多操作"}),(0,B.jsx)($.Z,{})]})},"batchOperations")),t}()}}),C&&(0,B.jsx)(ht,{isEdit:L,open:C,text:T,onClose:function(){U(!1)},onSubmit:function(e){console.log("onDrawerSubmit:",e),L?Qe(e):He(e)}}),qe&&(0,B.jsx)(ue.Z,{type:a.pBv,acceptType:".xlsx,.xls,.csv",isModalOpen:qe,handleSubmit:function(e){console.log("handleUploadDragSubmit",e),Oe(!1),null==t||t.current.reload(),gt()},handleCancel:function(){console.log("handleUploadDragCancel"),Oe(!1),null==t||t.current.reload()}}),Q]})};function yt(e){return Mt.apply(this,arguments)}function Mt(){return(Mt=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/chunk/query/org",{method:"GET",params:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function wt(e){return bt.apply(this,arguments)}function bt(){return(bt=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/chunk/update",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function kt(e){return jt.apply(this,arguments)}function jt(){return(jt=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/chunk/delete",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function St(e){return Zt.apply(this,arguments)}function Zt(){return(Zt=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/chunk/delete/all",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Ct(e){return Ut.apply(this,arguments)}function Ut(){return(Ut=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/chunk/updateIndex",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function At(e){return It.apply(this,arguments)}function It(){return(It=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/chunk/updateVectorIndex",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Tt(e){return Et.apply(this,arguments)}function Et(){return(Et=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/chunk/updateAllIndex",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Ft(e){return Pt.apply(this,arguments)}function Pt(){return(Pt=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/chunk/updateAllVectorIndex",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function qt(e){return Ot.apply(this,arguments)}function Ot(){return(Ot=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/robot/agent/content/generate-faq",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var Dt=n(26411),Rt=n(33363),zt=n(11137),Lt=function(e){var t=e.isEdit,n=e.chunk,r=e.open,a=e.onClose,s=e.onSubmit,i=Ue.A.useForm(),u=M()(i,1)[0],c=(0,l.useIntl)(),d=(0,P.u)((function(e){return e.currentOrg})),p=(0,F.j)((function(e){return e.currentKbase})),g=(0,N.v)((function(e){return e.currentCategory})),m=(0,N.v)((function(e){return e.categorySelectOptions})),x=(0,o.useState)(),y=M()(x,2),b=y[0],k=y[1],j=(0,o.useState)([]),S=M()(j,2),Z=S[0],C=S[1],U=(0,o.useState)(!1),A=M()(U,2),I=A[0],T=A[1],E=(0,o.useState)(""),q=M()(E,2),O=q[0],L=q[1],Y=(0,o.useState)(!1),V=M()(Y,2),H=V[0],J=V[1],Q=(0,o.useState)([]),X=M()(Q,2),K=X[0],G=X[1],_=(0,o.useState)(new Set),$=M()(_,2),ee=$[0],te=$[1],se=function(e){return e.filter((function(e){return e&&""!==e.trim()}))},oe=function(){var e=v()(h()().mark((function e(){var t,r;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,J(!0),e.next=4,u.validateFields();case 4:t=e.sent,r=f()(f()(f()({},n),t),{},{categoryUid:b,tagList:se(Z),kbUid:null==p?void 0:p.uid,orgUid:null==d?void 0:d.uid}),console.log("submit",r),s(r),e.next=14;break;case 10:e.prev=10,e.t0=e.catch(0),console.error("表单校验失败:",e.t0),w.yw.error("请检查表单填写是否正确");case 14:return e.prev=14,J(!1),e.finish(14);case 17:case"end":return e.stop()}}),e,null,[[0,10,14,17]])})));return function(){return e.apply(this,arguments)}}(),ie=function(){var e=O.trim();e&&!Z.includes(e)&&C([].concat(ve()(Z),[e])),T(!1),L("")},le=function(){T(!1),L("")},ue=function(){var e=v()(h()().mark((function e(){var t,n,r,a;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(t=u.getFieldValue("name"),n=u.getFieldValue("content"),t&&n){e.next=5;break}return w.yw.warning("请先填写名称和内容"),e.abrupt("return");case 5:return J(!0),e.prev=6,r={name:t,content:n,orgUid:null==d?void 0:d.uid},e.next=10,qt(r);case 10:a=e.sent,console.log("生成常见问题返回:",a.data,r),200===a.code?(w.yw.success("常见问题生成成功"),G(a.data),te(new Set)):(G([]),w.yw.warning("生成常见问题失败,请稍后重试")),e.next=19;break;case 15:e.prev=15,e.t0=e.catch(6),console.error("生成常见问题出错:",e.t0),w.yw.error("生成常见问题失败,请稍后重试");case 19:return e.prev=19,J(!1),e.finish(19);case 22:case"end":return e.stop()}}),e,null,[[6,15,19,22]])})));return function(){return e.apply(this,arguments)}}(),ce=function(){var e=v()(h()().mark((function e(t,n){var r,a,s;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(e.prev=0,!ee.has(n)){e.next=4;break}return w.yw.info("该问题已保存"),e.abrupt("return");case 4:return r=f()(f()({},t),{},{categoryUid:null==g?void 0:g.uid,kbUid:null==p?void 0:p.uid,orgUid:null==d?void 0:d.uid,type:"TEXT"}),w.yw.loading("正在保存常见问题..."),e.next=8,(0,ft.kh)(r);case 8:200===(a=e.sent).code?((s=new Set(ee)).add(n),te(s),w.yw.success("常见问题保存成功")):w.yw.error(a.message||"保存常见问题失败"),e.next=16;break;case 12:e.prev=12,e.t0=e.catch(0),console.error("保存常见问题出错:",e.t0),w.yw.error("保存常见问题失败,请稍后重试");case 16:case"end":return e.stop()}}),e,null,[[0,12]])})));return function(t,n){return e.apply(this,arguments)}}();return(0,o.useEffect)((function(){if(t&&n)u.setFieldsValue({uid:null==n?void 0:n.uid,name:null==n?void 0:n.name,content:null==n?void 0:n.content,categoryUid:null==n?void 0:n.categoryUid,enabled:void 0===(null==n?void 0:n.enabled)||n.enabled}),k(null==n?void 0:n.categoryUid),C(se((null==n?void 0:n.tagList)||[]));else{if(u.setFieldsValue({name:"",content:"",enabled:!0}),m&&m.length>0){var e=m[0].value;u.setFieldValue("categoryUid",e),k(e)}C([]),T(!1),L("")}G([]),te(new Set)}),[t,n,u,m]),(0,B.jsx)(D.Z,{title:"编辑拆分文档",onClose:a,open:r,width:600,extra:(0,B.jsxs)(R.Z,{children:[(0,B.jsx)(z.ZP,{onClick:a,children:"取消"}),(0,B.jsx)(z.ZP,{onClick:oe,type:"primary",children:"保存"}),(0,B.jsx)(z.ZP,{onClick:ue,type:"default",loading:H,icon:(0,B.jsx)(pt.Z,{}),children:"智能生成常见问题"})]}),children:(0,B.jsxs)(Ue.A,{form:u,name:"chunkForm",submitter:!1,children:[(0,B.jsx)(Ae.Z,{label:"分类",name:"categoryUid",rules:[{required:!0,message:"请选择分类"}],options:m,fieldProps:{allowClear:!0,placeholder:"请选择分类",onChange:function(e){console.log("chunk category selected ".concat(e)),k(e)}}}),(0,B.jsx)(Ie.Z,{label:c.formatMessage({id:"name",defaultMessage:"Name"}),name:"name",rules:[{required:!0,message:"请输入名称"}],placeholder:"请输入拆分文档名称"}),(0,B.jsx)(zt.Z,{label:"启用状态",name:"enabled",checkedChildren:"启用",unCheckedChildren:"禁用",tooltip:"控制拆分文档是否在知识库中生效",fieldProps:{defaultChecked:!0}}),(0,B.jsx)(Te.Z,{label:c.formatMessage({id:"content",defaultMessage:"Content"}),name:"content",rules:[{required:!0,message:"请输入内容"}],placeholder:"请输入拆分文档内容",fieldProps:{rows:6,maxLength:1e4,showCount:!0},tooltip:"拆分文档的文本内容,用于知识库检索"}),(0,B.jsx)(Ue.A.Item,{label:"标签",name:"tagList",tooltip:"为拆分文档添加标签,便于分类和检索",children:(0,B.jsxs)("div",{style:{minHeight:"32px"},children:[(0,B.jsx)(R.Z,{wrap:!0,style:{marginBottom:8},children:se(Z).map((function(e,t){return(0,B.jsx)(re.Z,{closable:!0,color:"blue",onClose:function(){return t=e,void C(se(Z.filter((function(e){return e!==t}))));var t},style:{marginBottom:4},children:e},t)}))}),I?(0,B.jsxs)(R.Z.Compact,{style:{display:"flex",alignItems:"center"},children:[(0,B.jsx)(Ee.Z,{value:O,onChange:function(e){L(e.target.value)},onKeyDown:function(e){"Enter"===e.key?ie():"Escape"===e.key&&le()},placeholder:"输入标签名称",size:"small",style:{width:"120px"},autoFocus:!0}),(0,B.jsx)(z.ZP,{type:"primary",size:"small",icon:(0,B.jsx)(Fe.Z,{}),onClick:ie,disabled:!O.trim(),children:"保存"}),(0,B.jsx)(z.ZP,{size:"small",icon:(0,B.jsx)(Pe.Z,{}),onClick:le,children:"取消"})]}):(0,B.jsx)(z.ZP,{type:"dashed",onClick:function(){T(!0),L("")},icon:(0,B.jsx)(W.Z,{}),size:"small",style:{height:"24px"},children:"添加标签"})]})}),K.length>0&&(0,B.jsxs)("div",{style:{marginTop:16},children:[(0,B.jsx)(ne.Z.Title,{level:5,children:"常见问题列表"}),(0,B.jsx)(mt.Z,{bordered:!0,dataSource:K,renderItem:function(e,t){return(0,B.jsx)(mt.Z.Item,{actions:[(0,B.jsx)(ae.Z,{title:ee.has(t)?"已保存":"保存到常见问题库",children:(0,B.jsx)(z.ZP,{type:ee.has(t)?"default":"primary",icon:(0,B.jsx)(Fe.Z,{}),size:"small",disabled:ee.has(t),onClick:function(){return ce(e,t)},children:ee.has(t)?"已保存":"保存"})},"save")],children:(0,B.jsx)(mt.Z.Item.Meta,{title:"".concat(t+1,". ").concat(null==e?void 0:e.question),description:null==e?void 0:e.answer})},t)}})]})]})})},Bt=n(7358),Yt=["current","pageSize"],Nt=function(){var e=(0,l.useIntl)(),t=(0,o.useRef)(),n=(0,E.Z)().translateString,r=(0,o.useState)(1),s=M()(r,2),i=s[0],u=s[1],d=(0,o.useState)(10),p=M()(d,2),m=p[0],x=p[1],y=(0,P.u)((function(e){return e.currentOrg})),b=(0,F.j)((function(e){return e.currentKbase})),k=(0,N.v)((function(e){return e.currentCategory})),j=(0,N.v)((function(e){return e.categorySelectOptions})),S=(0,o.useState)(!1),Z=M()(S,2),C=Z[0],U=Z[1],A=(0,o.useState)(!1),I=M()(A,2),T=I[0],q=I[1],D=(0,o.useState)(),R=M()(D,2),L=R[0],H=R[1],J=(0,o.useState)([]),Q=M()(J,2),X=Q[0],W=Q[1],ae=(0,o.useState)([]),ie=M()(ae,2),ue=ie[0],ce=ie[1],de=(0,o.useState)(!1),fe=M()(de,2),pe=fe[0],ge=fe[1],me=(0,o.useState)(!1),xe=M()(me,2),ve=xe[0],ye=xe[1],Me=(0,o.useState)({}),we=M()(Me,2),be=we[0],ke=we[1],je=(0,o.useState)(0),Se=M()(je,2),Ze=Se[0],Ue=Se[1],Ae=te.Z.useModal(),Ie=M()(Ae,2),Te=Ie[0],Ee=Ie[1],Fe=[{dataIndex:"index",valueType:"indexBorder",width:48,hideInSearch:!0,fixed:"left"},{title:(0,B.jsx)(l.FormattedMessage,{id:"name",defaultMessage:"Name"}),dataIndex:"name",ellipsis:!0,copyable:!0,fixed:"left",tooltip:e.formatMessage({id:"llm.chunk.name.tooltip",defaultMessage:"拆分后的内容块名称"}),render:function(e,t,n,r){var a,s,o=null==t?void 0:t.name;null!=t&&null!==(a=t.name)&&void 0!==a&&a.includes("_")&&(o=null==t||null===(s=t.name)||void 0===s?void 0:s.split("_").slice(1).join("_"));return(0,B.jsxs)("div",{style:{display:"flex",alignItems:"center"},children:[(0,B.jsx)("span",{style:{marginRight:4},children:o}),(0,B.jsx)(ne.Z.Text,{copyable:{text:(null==t?void 0:t.name)||""}})]})}},{title:(0,B.jsx)(l.FormattedMessage,{id:"content",defaultMessage:"Content"}),dataIndex:"content",ellipsis:!0,copyable:!0,width:300,tooltip:e.formatMessage({id:"llm.chunk.content.tooltip",defaultMessage:"拆分后的内容块具体内容"}),render:function(t,n){var r=n.content||"-",a=function(){var t=v()(h()().mark((function t(n){return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,(0,Rt.TE)(n);case 2:t.sent.success?w.yw.success(e.formatMessage({id:"copy.success",defaultMessage:"复制成功"})):w.yw.error(e.formatMessage({id:"copy.failed",defaultMessage:"复制失败"}));case 4:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}();return(0,B.jsx)(Dt.Z,{content:(0,B.jsxs)("div",{children:[(0,B.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"8px"},children:[(0,B.jsx)("span",{children:e.formatMessage({id:"chunk.content.preview",defaultMessage:"拆分内容预览"})}),(0,B.jsx)(z.ZP,{type:"text",icon:(0,B.jsx)(Bt.Z,{}),onClick:function(e){e.stopPropagation(),a(r)},title:e.formatMessage({id:"copy.to.clipboard",defaultMessage:"复制到剪贴板"})})]}),(0,B.jsx)("div",{style:{maxWidth:"600px",maxHeight:"400px",overflow:"auto",whiteSpace:"pre-wrap"},children:r})]}),title:e.formatMessage({id:"chunk.content",defaultMessage:"拆分内容"}),trigger:"hover",overlayStyle:{maxWidth:"800px"},children:(0,B.jsx)("span",{style:{cursor:"pointer"},children:r})})}},{title:(0,B.jsx)(l.FormattedMessage,{id:"status",defaultMessage:"Status"}),dataIndex:"status",hideInSearch:!0,width:120,tooltip:e.formatMessage({id:"llm.chunk.status.tooltip",defaultMessage:"拆分内容的处理状态,主要用于全文检索"}),render:function(t,n){var r=n.elasticStatus||"",a="";return"SUCCESS"===r?a="success":"ERROR"===r?a="error":"NEW"===r&&(a="processing"),(0,B.jsx)(re.Z,{color:a,children:e.formatMessage({id:"llm.status.".concat(r.toLowerCase())})})}},{title:(0,B.jsx)(l.FormattedMessage,{id:"vectorStatus",defaultMessage:"Vector Status"}),dataIndex:"vectorStatus",hideInSearch:!0,width:120,tooltip:e.formatMessage({id:"llm.chunk.vectorStatus.tooltip",defaultMessage:"拆分内容的向量化处理状态,主要用于向量存储和检索"}),render:function(t,n){var r=n.vectorStatus||"",a="";return"SUCCESS"===r?a="success":"ERROR"===r?a="error":"NEW"===r?a="processing":"PROCESSING"===r&&(a="warning"),r?(0,B.jsx)(re.Z,{color:a,icon:(0,B.jsx)(ot.Z,{}),children:e.formatMessage({id:"llm.vectorStatus.".concat(r.toLowerCase())})||r}):"-"}},{title:(0,B.jsx)(l.FormattedMessage,{id:"tags",defaultMessage:"Tags"}),dataIndex:"tagList",width:150,tooltip:e.formatMessage({id:"llm.chunk.tags.tooltip",defaultMessage:"拆分内容的标签,用于分类和搜索"}),render:function(e,t){var n;return null!=t&&t.tagList&&0!==(null==t?void 0:t.tagList.length)?(0,B.jsx)(B.Fragment,{children:null==t||null===(n=t.tagList)||void 0===n?void 0:n.map((function(e){return(0,B.jsx)(re.Z,{color:"blue",style:{marginBottom:4},children:e},e)}))}):"-"}},{title:(0,B.jsx)(l.FormattedMessage,{id:"category",defaultMessage:"Category"}),dataIndex:"categoryUid",hideInSearch:!0,width:120,tooltip:e.formatMessage({id:"llm.chunk.category.tooltip",defaultMessage:"拆分内容所属的分类"}),render:function(e,t){var n=j.find((function(e){return e.value===(null==t?void 0:t.categoryUid)}));return null!=n&&n.label?(0,B.jsx)(re.Z,{color:"blue",children:n.label}):(0,B.jsx)(re.Z,{color:"default",children:"未分类"})}},{title:(0,B.jsx)(l.FormattedMessage,{id:"enabled",defaultMessage:"Enabled"}),dataIndex:"enabled",valueEnum:{true:{text:e.formatMessage({id:"enabled"}),status:"Success"},false:{text:e.formatMessage({id:"disabled"}),status:"Error"}},hideInSearch:!0,width:100,tooltip:e.formatMessage({id:"llm.chunk.enabled.tooltip",defaultMessage:"拆分内容是否启用"})},{title:(0,B.jsx)(l.FormattedMessage,{id:"createdAt",defaultMessage:"createdAt"}),key:"createdAt",dataIndex:"createdAt",sorter:!0,width:200,hideInSearch:!0,tooltip:e.formatMessage({id:"llm.chunk.createdAt.tooltip",defaultMessage:"拆分内容创建的时间"}),render:function(e,t){return le()(t.createdAt).format("YYYY-MM-DD HH:mm:ss")}},{title:(0,B.jsx)(l.FormattedMessage,{id:"updatedAt",defaultMessage:"updatedAt"}),key:"updatedAt",dataIndex:"updatedAt",sorter:!0,width:200,hideInSearch:!0,tooltip:e.formatMessage({id:"llm.chunk.updatedAt.tooltip",defaultMessage:"拆分内容最后更新的时间"}),render:function(e,t){return t.updatedAt?le()(t.updatedAt).format("YYYY-MM-DD HH:mm:ss"):"-"}}],Pe=function(){var n=v()(h()().mark((function n(r){var a;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return console.log(r),n.next=3,kt(r);case 3:a=n.sent,console.log("delete response:",a),200===a.code?(null==t||t.current.reload(),w.yw.success(e.formatMessage({id:"delete.success",defaultMessage:"Delete Success"}))):w.yw.error(e.formatMessage({id:"delete.error",defaultMessage:"Delete Error"}));case 6:case"end":return n.stop()}}),n)})));return function(e){return n.apply(this,arguments)}}(),qe=function(){var n=v()(h()().mark((function n(){var r,a,s,o,i,l;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(0!==ue.length){n.next=3;break}return w.yw.warning(e.formatMessage({id:"batch.delete.noselection",defaultMessage:"Please select items to delete"})),n.abrupt("return");case 3:w.yw.loading(e.formatMessage({id:"deleting",defaultMessage:"Deleting..."})),a=0,s=0,o=g()(ue),n.prev=7,o.s();case 9:if((i=o.n()).done){n.next=23;break}return l=i.value,n.prev=11,n.next=14,kt(l);case 14:200===n.sent.code?a++:s++,n.next=21;break;case 18:n.prev=18,n.t0=n.catch(11),s++;case 21:n.next=9;break;case 23:n.next=28;break;case 25:n.prev=25,n.t1=n.catch(7),o.e(n.t1);case 28:return n.prev=28,o.f(),n.finish(28);case 31:w.yw.destroy(),0===s?w.yw.success(e.formatMessage({id:"batch.delete.success",defaultMessage:"Successfully deleted {count} items"},{count:a})):w.yw.warning(e.formatMessage({id:"batch.delete.partial",defaultMessage:"Deleted {success} items, failed to delete {fail} items"},{success:a,fail:s})),W([]),ce([]),null===(r=t.current)||void 0===r||r.reloadAndRest();case 36:case"end":return n.stop()}}),n,null,[[7,25,28,31],[11,18]])})));return function(){return n.apply(this,arguments)}}(),Oe=function(){var n=v()(h()().mark((function n(r){var a,s;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(n.prev=0,!L){n.next=7;break}return n.next=4,wt(f()(f()({},r),{},{uid:L.uid}));case 4:a=n.sent,n.next=7;break;case 7:200===a.code?(w.yw.success(e.formatMessage({id:L?"update.success":"add.success",defaultMessage:L?"Update Success":"Add Success"})),q(!1),null==t||null===(s=t.current)||void 0===s||s.reload()):w.yw.error(a.message),n.next=13;break;case 10:n.prev=10,n.t0=n.catch(0),w.yw.error(e.formatMessage({id:L?"update.error":"add.error",defaultMessage:L?"Update Error":"Add Error"}));case 13:case"end":return n.stop()}}),n,null,[[0,10]])})));return function(e){return n.apply(this,arguments)}}(),De=[].concat(Fe,[{title:e.formatMessage({id:"actions",defaultMessage:"Actions"}),valueType:"option",key:"option",width:220,fixed:"right",render:function(t,n,r,a){return[(0,B.jsx)("a",{onClick:function(){return function(e){H(e),q(!0)}(n)},children:e.formatMessage({id:"edit",defaultMessage:"Edit"})},"edit"),(0,B.jsx)(se.Z,{title:e.formatMessage({id:"deleteTip",defaultMessage:"Delete Tip"}),description:"".concat(e.formatMessage({id:"deleteAffirm",defaultMessage:"Delete"}),"【").concat(null==n?void 0:n.name,"】?"),onConfirm:function(){return Pe(n)},okText:e.formatMessage({id:"ok"}),cancelText:e.formatMessage({id:"cancel"}),children:(0,B.jsx)(z.ZP,{size:"small",type:"link",danger:!0,children:e.formatMessage({id:"delete",defaultMessage:"Delete"})})},"delete"),(0,B.jsx)(oe.Z,{menu:{items:[{key:"updateIndex",label:e.formatMessage({id:"update.index",defaultMessage:"更新索引"}),onClick:function(){return Re(n)}},{key:"updateVectorIndex",label:e.formatMessage({id:"update.vector.index",defaultMessage:"更新向量索引"}),onClick:function(){return ze(n)}}]},placement:"bottomRight",children:(0,B.jsxs)(z.ZP,{size:"small",type:"link",children:[e.formatMessage({id:"update.indexes",defaultMessage:"更新索引"}),(0,B.jsx)($.Z,{})]})},"indexOperations")]}}]),Re=function(){var n=v()(h()().mark((function n(r){var a,s;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return w.yw.loading(e.formatMessage({id:"updating.index",defaultMessage:"正在更新索引..."})),n.prev=1,n.next=4,Ct({uid:r.uid});case 4:a=n.sent,w.yw.destroy(),200===a.code?(w.yw.success(e.formatMessage({id:"update.index.success",defaultMessage:"索引更新成功"})),null===(s=t.current)||void 0===s||s.reload()):w.yw.error(a.message||e.formatMessage({id:"update.index.failed",defaultMessage:"索引更新失败"})),n.next=14;break;case 9:n.prev=9,n.t0=n.catch(1),w.yw.destroy(),w.yw.error(e.formatMessage({id:"update.index.error",defaultMessage:"更新索引过程发生错误"})),console.error("更新索引错误:",n.t0);case 14:case"end":return n.stop()}}),n,null,[[1,9]])})));return function(e){return n.apply(this,arguments)}}(),ze=function(){var n=v()(h()().mark((function n(r){var a,s;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return w.yw.loading(e.formatMessage({id:"updating.vector.index",defaultMessage:"正在更新向量索引..."})),n.prev=1,n.next=4,At({uid:r.uid});case 4:a=n.sent,w.yw.destroy(),200===a.code?(w.yw.success(e.formatMessage({id:"update.vector.index.success",defaultMessage:"向量索引更新成功"})),null===(s=t.current)||void 0===s||s.reload()):w.yw.error(a.message||e.formatMessage({id:"update.vector.index.failed",defaultMessage:"向量索引更新失败"})),n.next=14;break;case 9:n.prev=9,n.t0=n.catch(1),w.yw.destroy(),w.yw.error(e.formatMessage({id:"update.vector.index.error",defaultMessage:"更新向量索引过程发生错误"})),console.error("更新向量索引错误:",n.t0);case 14:case"end":return n.stop()}}),n,null,[[1,9]])})));return function(e){return n.apply(this,arguments)}}(),Le=function(){var n=v()(h()().mark((function n(){var r,a,s,o,i,l;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(0!==ue.length){n.next=3;break}return w.yw.warning(e.formatMessage({id:"batch.update.noselection",defaultMessage:"请选择要更新的项目"})),n.abrupt("return");case 3:w.yw.loading(e.formatMessage({id:"updating.index",defaultMessage:"正在更新索引..."})),a=0,s=0,o=g()(ue),n.prev=7,o.s();case 9:if((i=o.n()).done){n.next=23;break}return l=i.value,n.prev=11,n.next=14,Ct({uid:l.uid});case 14:200===n.sent.code?a++:s++,n.next=21;break;case 18:n.prev=18,n.t0=n.catch(11),s++;case 21:n.next=9;break;case 23:n.next=28;break;case 25:n.prev=25,n.t1=n.catch(7),o.e(n.t1);case 28:return n.prev=28,o.f(),n.finish(28);case 31:w.yw.destroy(),0===s?w.yw.success(e.formatMessage({id:"batch.update.index.success"},{defaultMessage:"成功更新 ".concat(a," 条记录的索引")})):w.yw.error(e.formatMessage({id:"batch.update.index.partial"},{defaultMessage:"更新了 ".concat(a," 条记录的索引,").concat(s," 条记录更新失败")})),null===(r=t.current)||void 0===r||r.reload();case 34:case"end":return n.stop()}}),n,null,[[7,25,28,31],[11,18]])})));return function(){return n.apply(this,arguments)}}(),Be=function(){var n=v()(h()().mark((function n(){var r,a,s,o,i,l;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(0!==ue.length){n.next=3;break}return w.yw.warning(e.formatMessage({id:"batch.update.noselection",defaultMessage:"请选择要更新的项目"})),n.abrupt("return");case 3:w.yw.loading(e.formatMessage({id:"updating.vector.index",defaultMessage:"正在更新向量索引..."})),a=0,s=0,o=g()(ue),n.prev=7,o.s();case 9:if((i=o.n()).done){n.next=23;break}return l=i.value,n.prev=11,n.next=14,At({uid:l.uid});case 14:200===n.sent.code?a++:s++,n.next=21;break;case 18:n.prev=18,n.t0=n.catch(11),s++;case 21:n.next=9;break;case 23:n.next=28;break;case 25:n.prev=25,n.t1=n.catch(7),o.e(n.t1);case 28:return n.prev=28,o.f(),n.finish(28);case 31:w.yw.destroy(),0===s?w.yw.success(e.formatMessage({id:"batch.update.vector.index.success"},{defaultMessage:"成功更新 ".concat(a," 条记录的向量索引")})):w.yw.error(e.formatMessage({id:"batch.update.vector.index.partial"},{defaultMessage:"更新了 ".concat(a," 条记录的向量索引,").concat(s," 条记录更新失败")})),null===(r=t.current)||void 0===r||r.reload();case 34:case"end":return n.stop()}}),n,null,[[7,25,28,31],[11,18]])})));return function(){return n.apply(this,arguments)}}(),Ye=function(){var n=v()(h()().mark((function n(){return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:te.Z.confirm({title:e.formatMessage({id:"updateAll.index.confirm.title",defaultMessage:"更新全部索引确认"}),content:e.formatMessage({id:"updateAll.index.confirm.content",defaultMessage:"确定要更新所有记录的索引吗?此操作可能需要一些时间。"}),onOk:function(){var n=v()(h()().mark((function n(){var r,s;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return w.yw.loading(e.formatMessage({id:"updating.all.index",defaultMessage:"正在更新所有索引..."})),n.prev=1,n.next=4,Tt({kbUid:null==b?void 0:b.uid,categoryUid:(null==k?void 0:k.uid)===a.zBg?"":null==k?void 0:k.uid,orgUid:null==y?void 0:y.uid});case 4:r=n.sent,w.yw.destroy(),200===r.code?(w.yw.success(e.formatMessage({id:"update.all.index.success",defaultMessage:"所有索引更新请求已发送"})),null===(s=t.current)||void 0===s||s.reload()):w.yw.error(r.message||e.formatMessage({id:"update.all.index.failed",defaultMessage:"所有索引更新请求失败"})),n.next=14;break;case 9:n.prev=9,n.t0=n.catch(1),w.yw.destroy(),w.yw.error(e.formatMessage({id:"update.all.index.error",defaultMessage:"更新所有索引过程发生错误"})),console.error("更新所有索引错误:",n.t0);case 14:case"end":return n.stop()}}),n,null,[[1,9]])})));return function(){return n.apply(this,arguments)}}()});case 1:case"end":return n.stop()}}),n)})));return function(){return n.apply(this,arguments)}}(),Ne=function(){var n=v()(h()().mark((function n(){return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:te.Z.confirm({title:e.formatMessage({id:"updateAll.vector.index.confirm.title",defaultMessage:"更新全部向量索引确认"}),content:e.formatMessage({id:"updateAll.vector.index.confirm.content",defaultMessage:"确定要更新所有记录的向量索引吗?此操作可能需要一些时间。"}),onOk:function(){var n=v()(h()().mark((function n(){var r,s;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return w.yw.loading(e.formatMessage({id:"updating.all.vector.index",defaultMessage:"正在更新所有向量索引..."})),n.prev=1,n.next=4,Ft({kbUid:null==b?void 0:b.uid,categoryUid:(null==k?void 0:k.uid)===a.zBg?"":null==k?void 0:k.uid,orgUid:null==y?void 0:y.uid});case 4:r=n.sent,w.yw.destroy(),200===r.code?(w.yw.success(e.formatMessage({id:"update.all.vector.index.success",defaultMessage:"所有向量索引更新请求已发送"})),null===(s=t.current)||void 0===s||s.reload()):w.yw.error(r.message||e.formatMessage({id:"update.all.vector.index.failed",defaultMessage:"所有向量索引更新请求失败"})),n.next=14;break;case 9:n.prev=9,n.t0=n.catch(1),w.yw.destroy(),w.yw.error(e.formatMessage({id:"update.all.vector.index.error",defaultMessage:"更新所有向量索引过程发生错误"})),console.error("更新所有向量索引错误:",n.t0);case 14:case"end":return n.stop()}}),n,null,[[1,9]])})));return function(){return n.apply(this,arguments)}}()});case 1:case"end":return n.stop()}}),n)})));return function(){return n.apply(this,arguments)}}();(0,o.useEffect)((function(){var e;null==t||null===(e=t.current)||void 0===e||e.reload()}),[b,k]),(0,o.useEffect)((function(){return V.Z.on(a.YwV,(function(e){var n;console.log("EVENT_BUS_MQTT_NOTICE",e),null==t||null===(n=t.current)||void 0===n||n.reload()})),function(){V.Z.off(a.YwV)}}),[]);var Ve=function(){var e=v()(h()().mark((function e(t,n,r){var s,o;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:console.log("handleExportExcel",t,n,r),s=localStorage.getItem(a.LA8),o=f()({categoryUid:(null==k?void 0:k.uid)===a.zBg?"":null==k?void 0:k.uid,kbUid:null==b?void 0:b.uid,orgUid:(null==y?void 0:y.uid)||"",accessToken:s||"",exportType:t},be),"current"===t?(o.pageNumber=i-1,o.pageSize=m):"all"===t?(o.pageNumber=0,o.pageSize=1e3):"range"===t&&void 0!==n&&void 0!==r&&(o.pageNumber=n,o.pageSize=r),window.open((0,O.kG)()+"/api/v1/llm/chunk/export?"+new URLSearchParams(Object.entries(o).reduce((function(e,t){var n=M()(t,2),r=n[0],a=n[1];return e[r]=String(a),e}),{})).toString());case 5:case"end":return e.stop()}}),e)})));return function(t,n,r){return e.apply(this,arguments)}}(),He=function(){var n=v()(h()().mark((function n(){var r,s,o;return h()().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(0!==Ze){n.next=3;break}return w.yw.warning(e.formatMessage({id:"deleteAll.nodata",defaultMessage:"没有数据可删除"})),n.abrupt("return");case 3:return w.yw.loading(e.formatMessage({id:"deleting.all",defaultMessage:"正在删除所有数据..."})),n.prev=4,r={categoryUid:(null==k?void 0:k.uid)===a.zBg?"":null==k?void 0:k.uid,kbUid:null==b?void 0:b.uid,orgUid:null==y?void 0:y.uid},n.next=8,St(r);case 8:s=n.sent,console.log("handleDeleteAllConfirm response:",s,r),200===s.code?(w.yw.destroy(),w.yw.success(e.formatMessage({id:"deleteAll.success",defaultMessage:"成功删除所有数据"})),null===(o=t.current)||void 0===o||o.reloadAndRest()):(w.yw.destroy(),w.yw.error(s.message||e.formatMessage({id:"deleteAll.failed",defaultMessage:"删除失败"}))),n.next=18;break;case 13:n.prev=13,n.t0=n.catch(4),w.yw.destroy(),w.yw.error(e.formatMessage({id:"deleteAll.error",defaultMessage:"删除过程发生错误"})),console.error("删除全部数据错误:",n.t0);case 18:case"end":return n.stop()}}),n,null,[[4,13]])})));return function(){return n.apply(this,arguments)}}(),Je=function(e){for(var t=[],n=1e3,r=Math.ceil(e/n),a=function(){var r=s,a=s*n+1,o=Math.min((s+1)*n,e);t.push({key:"export-".concat(s),label:"".concat(a,"-").concat(o," (").concat(o-a+1,"条)"),onClick:function(){return Ve("range",r,n)}})},s=0;s<r;s++)a();return t};return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(he,{onModelStatusChange:function(e){ge(e),ye(!1)}}),(0,B.jsx)(ee.Z,{columns:De,actionRef:t,cardBordered:!0,rowSelection:{selectedRowKeys:X,onChange:function(e,t){W(e),ce(t)}},scroll:{x:2e3},request:function(){var e=v()(h()().mark((function e(t,n,r){var s,o,i,l,d,p,g,m;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return console.log("request:",t,n,r),s=t.current,o=t.pageSize,i=c()(t,Yt),u(s),x(o),ke(i),l=void 0,d=void 0,n&&Object.keys(n).length>0&&(p=Object.keys(n)[0],l=p,d="ascend"===n[p]?"ascend":"descend"),g=f()(f()({pageNumber:s-1,pageSize:o,categoryUid:(null==k?void 0:k.uid)===a.zBg?"":null==k?void 0:k.uid,kbUid:null==b?void 0:b.uid,orgUid:null==y?void 0:y.uid},i),{},{sortBy:l,sortDirection:d}),e.next=11,yt(g);case 11:return m=e.sent,console.log("queryChunksByOrg response:",m,g),200===m.code?Ue(m.data.totalElements):w.yw.error(m.message),e.abrupt("return",{data:m.data.content,success:!0,total:m.data.totalElements});case 15:case"end":return e.stop()}}),e)})));return function(t,n,r){return e.apply(this,arguments)}}(),search:{labelWidth:"auto"},rowKey:"uid",pagination:{showQuickJumper:!0,onChange:function(e,t){u(e),x(t)}},dateFormatter:"string",headerTitle:n(null==b?void 0:b.name)+" - 系统自动拆分内容列表",tooltip:"用于向量检索和存储,如无必要,请不要随便修改",toolBarRender:function(){var t=[(0,B.jsx)(Ce,{currentKbase:b,currentOrg:y,embeddingModelExists:pe,checkingEmbeddingModel:ve||!pe},"chat")],n=[];X.length>0&&n.push({key:"batchDelete",icon:(0,B.jsx)(K.Z,{}),danger:!0,label:e.formatMessage({id:"batch.delete"})+" (".concat(X.length,")"),onClick:function(){Te.confirm({title:e.formatMessage({id:"batch.deleteTip"}),content:"".concat(e.formatMessage({id:"batch.deleteAffirm"})," ").concat(X.length," ").concat(e.formatMessage({id:"items"}),"?"),onOk:qe,okText:e.formatMessage({id:"ok"}),cancelText:e.formatMessage({id:"cancel"})})}},{key:"batchUpdateIndex",icon:(0,B.jsx)(ot.Z,{}),label:e.formatMessage({id:"batch.update.index",defaultMessage:"更新索引"})+" (".concat(X.length,")"),onClick:Le},{key:"batchUpdateVectorIndex",icon:(0,B.jsx)(ot.Z,{}),label:e.formatMessage({id:"batch.update.vector.index",defaultMessage:"更新向量索引"})+" (".concat(X.length,")"),onClick:Be}),n.push({key:"deleteAll",icon:(0,B.jsx)(G.Z,{}),danger:!0,label:e.formatMessage({id:"deleteAll",defaultMessage:"删除所有"}),onClick:function(){Te.confirm({title:e.formatMessage({id:"deleteAll.tip",defaultMessage:"删除确认"}),content:e.formatMessage({id:"deleteAll.confirm",defaultMessage:"确定要删除所有拆分数据吗?此操作不可恢复!"}),onOk:He,okText:e.formatMessage({id:"ok"}),cancelText:e.formatMessage({id:"cancel"})})}},{key:"updateAllIndex",icon:(0,B.jsx)(ot.Z,{}),label:e.formatMessage({id:"updateAll.index",defaultMessage:"更新所有索引"}),onClick:Ye},{key:"updateAllVectorIndex",icon:(0,B.jsx)(ot.Z,{}),label:e.formatMessage({id:"updateAll.vector.index",defaultMessage:"更新所有向量索引"}),onClick:Ne});var r=[{key:"export-current",icon:(0,B.jsx)(_.Z,{}),label:e.formatMessage({id:"export.current",defaultMessage:"导出当前页"}),onClick:function(){return Ve("current")}}];return Ze>0&&(Ze<=1e3?r.push({key:"export-all",icon:(0,B.jsx)(_.Z,{}),label:e.formatMessage({id:"export.all",defaultMessage:"导出全部"})+" (".concat(Ze,"条)"),onClick:function(){return Ve("all")}}):r.push({key:"export-range",icon:(0,B.jsx)(_.Z,{}),label:e.formatMessage({id:"export.range",defaultMessage:"分段导出"})+" (".concat(Ze,"条)"),children:Je(Ze)})),t.push((0,B.jsx)(oe.Z,{menu:{items:r},placement:"bottom",children:(0,B.jsxs)(z.ZP,{type:"primary",children:[e.formatMessage({id:"export.options",defaultMessage:"导出"}),(0,B.jsx)($.Z,{})]})},"exportDropdown")),n.length>0&&t.push((0,B.jsx)(oe.Z,{menu:{items:n},placement:"bottom",children:(0,B.jsxs)(z.ZP,{type:X.length>0?"primary":"default",danger:X.length>0,children:[X.length>0?e.formatMessage({id:"batch.operations",defaultMessage:"批量操作"})+" (".concat(X.length,")"):e.formatMessage({id:"more.operations",defaultMessage:"更多操作"}),(0,B.jsx)($.Z,{})]})},"batchOperations")),t}}),C&&(0,B.jsx)(Y,{type:a.ACv,open:C,onClose:function(){return U(!1)}}),(0,B.jsx)(Lt,{isEdit:!!L,chunk:L,open:T,onClose:function(){return q(!1)},onSubmit:Oe}),Ee]})},Vt=n(21256),Ht=n(80474),Jt=n(59606),Qt=n(13750),Xt=n(28170),Kt=n(15435),Wt=n(90251),Gt=n(79401),_t=n(12624),$t=["key"],en=function(e){var t=e.isEdit,n=e.faq,r=e.open,s=e.onClose,i=e.onSubmit,l=Ue.A.useForm(),u=M()(l,1)[0],d=(0,o.useState)(""),p=M()(d,2),m=p[0],x=p[1],y=(0,o.useState)(""),b=M()(y,2),k=b[0],j=b[1],S=(0,o.useState)(""),Z=M()(S,2),C=Z[0],U=Z[1],A=(0,P.u)((function(e){return e.currentOrg})),I=(0,F.j)((function(e){return e.currentKbase})),T=(0,N.v)((function(e){return e.categorySelectOptions})),E=(0,N.v)((function(e){return e.categoryTreeOptions})),q=(0,N.v)((function(e){return e.currentCategory})),L=(0,o.useState)(),Y=M()(L,2),V=(Y[0],Y[1]),H=(0,o.useState)([]),J=M()(H,2),Q=J[0],X=J[1],K=(0,o.useState)(!1),G=M()(K,2),_=G[0],$=G[1],ee=(0,o.useState)(""),ne=M()(ee,2),se=ne[0],oe=ne[1],ie=(0,o.useRef)(null),ue=(0,o.useState)([]),ce=M()(ue,2),de=(ce[0],ce[1]),fe=(0,o.useState)([]),pe=M()(fe,2),ge=pe[0],me=pe[1],he=(0,o.useState)(!0),xe=M()(he,2),ye=xe[0],Me=xe[1],we=(0,o.useState)("permanent"),be=M()(we,2),ke=be[0],Se=be[1],Ze=(0,o.useState)([]),Ce=M()(Ze,2),Fe=Ce[0],Pe=Ce[1],qe=(0,o.useState)(!1),Oe=M()(qe,2),De=Oe[0],Re=Oe[1],ze=(0,o.useState)([]),Le=M()(ze,2),Be=Le[0],Ye=Le[1],Ne=(0,o.useState)([]),Ve=M()(Ne,2),He=Ve[0],Je=Ve[1],Qe=(0,o.useState)(!1),Xe=M()(Qe,2),Ke=Xe[0],We=Xe[1],Ge=(0,o.useState)(""),_e=M()(Ge,2),$e=_e[0],et=_e[1],tt=(0,o.useState)(""),nt=M()(tt,2),rt=nt[0],at=nt[1],st=(0,o.useState)([]),ot=M()(st,2),it=ot[0],lt=ot[1],ut=(0,o.useState)([]),ct=M()(ut,2),dt=ct[0],mt=ct[1],ht=(0,o.useState)(!1),xt=M()(ht,2),vt=xt[0],yt=xt[1];(0,o.useEffect)((function(){var e=function(){var e=v()(h()().mark((function e(){var t,r,s;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,w.yw.loading("正在加载常见问题列表..."),t={pageNumber:0,pageSize:100,categoryUid:(null==q?void 0:q.uid)===a.zBg?"":null==q?void 0:q.uid,kbUid:null==I?void 0:I.uid,orgUid:null==A?void 0:A.uid},e.next=5,(0,ft.pf)(t);case 5:r=e.sent,w.yw.destroy(),200===r.code?(s=r.data.content.map((function(e){return{label:e.question,value:e.uid}})),me(s.filter((function(e){return e.value!==(null==n?void 0:n.uid)})))):w.yw.error(r.message||"加载常见问题失败"),e.next=15;break;case 10:e.prev=10,e.t0=e.catch(0),w.yw.destroy(),w.yw.error("加载常见问题列表失败"),console.error("获取FAQ列表出错:",e.t0);case 15:case"end":return e.stop()}}),e,null,[[0,10]])})));return function(){return e.apply(this,arguments)}}();r&&e()}),[r,null==I?void 0:I.uid,null==A?void 0:A.uid,null==q?void 0:q.uid,null==n?void 0:n.uid]),(0,o.useEffect)((function(){if(t){var e,r,a,s,o,i=Array.isArray(null==n?void 0:n.similarQuestions)?n.similarQuestions.map((function(e){return"string"==typeof e?e:String(e)})).filter((function(e){return""!==e.trim()})):[];if(u.setFieldsValue({question:null==n?void 0:n.question,similarQuestions:i,answer:null==n?void 0:n.answer,answerHtml:null==n?void 0:n.answerHtml,answerMarkdown:null==n?void 0:n.answerMarkdown,categoryUid:null==n?void 0:n.categoryUid,kbUid:null==I?void 0:I.uid,answerList:(null==n?void 0:n.answerList)||[],enabled:!1!==(null==n?void 0:n.enabled),relatedFaqUids:(null==n||null===(e=n.relatedFaqs)||void 0===e?void 0:e.map((function(e){return e.uid})))||[],dateType:"permanent",dateRange:null!=n&&n.startDate&&null!=n&&n.endDate?[le()(n.startDate),le()(n.endDate)]:void 0}),console.log("edit faq:",n),x((null==n?void 0:n.answer)||""),j((null==n?void 0:n.answerHtml)||(null==n?void 0:n.answer)||""),U((null==n?void 0:n.answerMarkdown)||(null==n?void 0:n.answer)||""),Re(!1),X((null==n||null===(r=n.tagList)||void 0===r?void 0:r.filter((function(e){return e&&""!==e.trim()})))||[]),de((null==n||null===(a=n.relatedFaqs)||void 0===a?void 0:a.map((function(e){return e.uid})))||[]),Me(!1!==(null==n?void 0:n.enabled)),Pe(i),null!=n&&null!==(s=n.images)&&void 0!==s&&s.length&&n.images.some((function(e){return e&&""!==e.trim()}))){var l=n.images.filter((function(e){return e&&""!==e.trim()})),c=l.map((function(e,t){return{uid:"-".concat(t+1),name:"image_".concat(t+1,".jpg"),status:"done",url:e,thumbUrl:e}}));Ye(c),Je(l)}else Ye([]),Je([]);if(null!=n&&null!==(o=n.attachments)&&void 0!==o&&o.length&&n.attachments.some((function(e){return e&&""!==e.trim()}))){var d=n.attachments.filter((function(e){return e&&""!==e.trim()})),f=d.map((function(e,t){var n=e.substring(e.lastIndexOf("/")+1);return{uid:"-".concat(t+1),name:n||"attachment_".concat(t+1),status:"done",url:e}}));lt(f),mt(d)}else lt([]),mt([])}else{var p=Mt(E);u.setFieldsValue({question:"",similarQuestions:[],answer:"",categoryUid:p,kbUid:null==I?void 0:I.uid,answerList:[],enabled:!0,relatedFaqUids:[],dateType:"permanent",dateRange:void 0,autoSyncLlmQa:!1,llmQaKbUid:""}),p&&V(p),x(""),j(""),U(""),Re(!1),X([]),de([]),Me(!0),Pe([]),Ye([]),Je([]),lt([]),mt([])}}),[n,r,T,E]);var Mt=function e(t){var n,r=g()(t||[]);try{for(r.s();!(n=r.n()).done;){var s=n.value;if(s.key!==a.zBg)return s.key;var o=e(s.children||[]);if(o)return o}}catch(e){r.e(e)}finally{r.f()}return""};(0,o.useEffect)((function(){var e;_&&(null===(e=ie.current)||void 0===e||e.focus())}),[_]),(0,o.useEffect)((function(){console.log("editorAnswer",m),console.log("editorAnswerHtml",k)}),[m,k]);var wt=function(){se&&-1===Q.indexOf(se)&&X([].concat(ve()(Q),[se])),$(!1),oe("")},bt=function(){var e=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:et(t.url||t.thumbUrl),We(!0),at(t.name||t.url.substring(t.url.lastIndexOf("/")+1));case 3:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),kt=(0,B.jsx)(z.ZP,{icon:(0,B.jsx)(W.Z,{}),children:"上传图片"}),jt={name:"file",accept:"image/*",action:(0,O.M$)(),headers:{Authorization:"Bearer "+localStorage.getItem(a.LA8)},listType:"picture-card",fileList:Be,onPreview:bt,onChange:function(e){var t=ve()(e.fileList);if("done"===e.file.status)if(200===e.file.response.code){var n=e.file.response.data.fileUrl;Je((function(e){return[].concat(ve()(e),[n])})),w.yw.success("上传 ".concat(e.file.name," 成功"))}else w.yw.error("上传 ".concat(e.file.name," 失败: ").concat(e.file.response.message));else"error"===e.file.status&&w.yw.error("上传 ".concat(e.file.name," 失败"));t=t.map((function(e){return e.response&&200===e.response.code?f()(f()({},e),{},{url:e.response.data.fileUrl,thumbUrl:e.response.data.fileUrl}):e})),Ye(t)},data:function(e){return{file:e,fileName:le()(new Date).format("YYYYMMDDHHmmss")+"_"+e.name,fileType:e.type,isAvatar:"false",kbType:a.IrL,categoryUid:u.getFieldValue("categoryUid")||"",kbUid:(null==I?void 0:I.uid)||"",channel:a.XtJ}},onRemove:function(e){return e.url&&Je((function(t){return t.filter((function(t){return t!==e.url}))})),!0}},St={name:"file",action:(0,O.M$)(),headers:{Authorization:"Bearer "+localStorage.getItem(a.LA8)},fileList:it,onChange:function(e){var t=ve()(e.fileList);if("done"===e.file.status)if(200===e.file.response.code){var n=e.file.response.data.fileUrl;mt((function(e){return[].concat(ve()(e),[n])})),w.yw.success("上传 ".concat(e.file.name," 成功"))}else w.yw.error("上传 ".concat(e.file.name," 失败: ").concat(e.file.response.message));else"error"===e.file.status&&w.yw.error("上传 ".concat(e.file.name," 失败"));t=t.map((function(e){return e.response&&200===e.response.code?f()(f()({},e),{},{url:e.response.data.fileUrl}):e})),lt(t)},data:function(e){return{file:e,fileName:le()(new Date).format("YYYYMMDDHHmmss")+"_"+e.name,fileType:e.type,isAvatar:"false",kbType:a.IrL,categoryUid:u.getFieldValue("categoryUid")||"",kbUid:(null==I?void 0:I.uid)||"",channel:a.XtJ}},onRemove:function(e){return e.url&&mt((function(t){return t.filter((function(t){return t!==e.url}))})),!0}},Zt=function(){var e=v()(h()().mark((function e(){var t,n,r,a,s,o,i;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if((0,O.OJ)()){e.next=3;break}return w.yw.error("生成相似问法功能仅在企业版和平台版可用"),e.abrupt("return");case 3:if((t=u.getFieldValue("question"))&&""!==t.trim()){e.next=7;break}return w.yw.error("请先输入问题后再生成相似问法"),e.abrupt("return");case 7:return e.prev=7,yt(!0),w.yw.loading("正在智能生成相似问法..."),n={question:t,orgUid:null==A?void 0:A.uid},e.next=13,(0,ft.YQ)(n);case 13:r=e.sent,console.log("生成相似问法响应:",n,r),w.yw.destroy(),200===r.code?(a=r.data,console.log("生成的相似问法:",a),s=a.similarQuestions.filter((function(e){return e&&""!==e.trim()})),o=Fe.filter((function(e){return e&&""!==e.trim()})),i=ve()(o),s.forEach((function(e){i.includes(e)||i.push(e)})),Pe(i),u.setFieldValue("similarQuestions",i),w.yw.success("已成功生成 ".concat(s.length," 条相似问法"))):w.yw.error(r.message||"生成相似问法失败"),e.next=24;break;case 19:e.prev=19,e.t0=e.catch(7),console.error("生成相似问法出错:",e.t0),w.yw.destroy(),w.yw.error("生成相似问法失败");case 24:return e.prev=24,yt(!1),e.finish(24);case 27:case"end":return e.stop()}}),e,null,[[7,19,24,27]])})));return function(){return e.apply(this,arguments)}}();return(0,B.jsx)(B.Fragment,{children:(0,B.jsx)(D.Z,{title:t?"修改常见问题":"新建常见问题",width:650,onClose:s,open:r,extra:(0,B.jsxs)(R.Z,{children:[(0,B.jsx)(z.ZP,{onClick:s,children:"取消"}),(0,B.jsx)(z.ZP,{onClick:function(){var e=Fe.map((function(e){return null==e?void 0:e.trim()})).filter((function(e){return e&&""!==e}));u.setFieldValue("similarQuestions",e),u.validateFields().then((function(e){var t,r;if(console.log("handleSubmit values:",e),console.log("handleSubmit edited:",m,k,C),"permanent"===e.dateType)t=le()().format("YYYY-MM-DDTHH:mm:ss"),r=le()().add(100,"years").format("YYYY-MM-DDTHH:mm:ss");else{var s=e.dateRange;t=null!=s&&s[0]?s[0].format("YYYY-MM-DDTHH:mm:ss"):void 0,r=null!=s&&s[1]?s[1].format("YYYY-MM-DDTHH:mm:ss"):void 0}var o=Fe.map((function(e){return null==e?void 0:e.trim()})).filter((function(e){return e&&""!==e})),l=He.filter((function(e){return e&&""!==e.trim()})),u=dt.filter((function(e){return e&&""!==e.trim()})),c=Q.filter((function(e){return e&&""!==e.trim()})),d=f()(f()(f()({},n),e),{},{type:a.PYi,kbUid:null==I?void 0:I.uid,orgUid:null==A?void 0:A.uid,answer:e.answerHtml,answerHtml:e.answerHtml,answerMarkdown:e.answerHtml,similarQuestions:o,answerList:e.answerList||[],tagList:c,relatedFaqUids:e.relatedFaqUids||[],startDate:t,endDate:r,images:l,attachments:u});i(d)})).catch((function(e){console.log("Form errors:",e),w.yw.error("请检查表单填写")}))},type:"primary",children:"保存"})]}),children:(0,B.jsxs)(Ue.A,{form:u,submitter:{render:function(){return null}},children:[(0,B.jsx)(gt.Z,{label:"分类",name:"categoryUid",rules:[{required:!0,message:"请选择分类"}],fieldProps:{treeData:function e(t){return(t||[]).filter((function(e){return e.key!==a.zBg})).map((function(t){return f()(f()({},t),{},{children:t.children?e(t.children):void 0})}))}(E),allowClear:!0,showSearch:!0,placeholder:"请选择分类",treeDefaultExpandAll:!1,onChange:function(e){console.log("category selected ".concat(e)),V(e)},fieldNames:{label:"title",value:"key",children:"children"},treeCheckable:!1}}),(0,B.jsx)(Ie.Z,{label:"问题",name:"question",rules:[{required:!0,message:"请输入问题"}]}),(0,B.jsx)(Vt.u,{name:"similarQuestions",label:(0,B.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%"},children:[(0,B.jsx)("span",{children:"相似问法"}),(0,B.jsxs)(ae.Z,{title:"可在AI助手-》提示词 中搜索名称为:faq_similar_questions 的提示词,修改大模型和编辑提示词",children:[" ",(0,B.jsx)(ae.Z,{title:"可在AI助手-》提示词 中搜索名称为:faq_similar_questions 的提示词,修改大模型和编辑提示词",children:(0,B.jsx)(z.ZP,{type:"primary",icon:(0,B.jsx)(pt.Z,{}),onClick:Zt,loading:vt,size:"small",children:"智能生成"})})]})]}),creatorButtonProps:{creatorButtonText:"添加相似问法",icon:(0,B.jsx)(W.Z,{}),type:"dashed",block:!0,onClick:function(){var e=[].concat(ve()(Fe),[""]);Pe(e),u.setFieldValue("similarQuestions",e)}},copyIconProps:!1,min:0,style:{width:"100%"},initialValue:[],onAfterAdd:function(e,t,n){var r=u.getFieldValue("similarQuestions")||[],a=Array.isArray(r)?r.map((function(e){return"string"==typeof e?e:""})):ve()(Fe);Pe(a)},onAfterRemove:function(e,t){var n=u.getFieldValue("similarQuestions")||[],r=Array.isArray(n)?n.map((function(e){return"string"==typeof e?e:""})):[];Pe(r)},actionRender:function(e,t,n){return[(0,B.jsx)(z.ZP,{type:"link",danger:!0,onClick:function(){var n=e.name,r=ve()(Fe);r.splice(n,1),Pe(r),t.remove(e.name)},children:"删除"},"delete")]},children:function(e,t,n){var r=e.key,a=c()(e,$t);return(0,B.jsx)(Ie.Z,f()(f()({},a),{},{placeholder:"请输入相似问法",rules:[{required:!0,message:"请输入相似问法"}],width:"xl",fieldProps:{maxLength:500,autoComplete:"off",value:Fe[t]||"",onChange:function(e){var n=ve()(Fe);n[t]=e.target.value,Pe(n),u.setFieldValue(["similarQuestions",t],e.target.value)}}}),r)}}),(0,B.jsx)(Ue.A.Item,{name:"answerHtml",label:"文本答案",children:(0,B.jsx)(_t.Z,{defaultValue:k,toolbarKeys:(0,Rt.eD)(),style:{height:"200px",width:"600px"},maxLength:16383,onChange:function(e,t,n){console.log("Editor content changed: html",e),console.log("Editor content changed: markdown",t),console.log("Editor content changed: text",n),x(n),j(e),U(t),De||Re(!0)}})}),(0,B.jsxs)(Ue.A.Item,{label:"图片",tooltip:"可以上传多张图片作为回复内容",children:[(0,B.jsx)(Kt.Z,f()(f()({},jt),{},{children:kt})),(0,B.jsx)(te.Z,{open:Ke,title:rt,footer:null,onCancel:function(){return We(!1)},children:(0,B.jsx)(Wt.Z,{alt:"预览图片",style:{width:"100%"},src:$e})})]}),(0,B.jsx)(Ue.A.Item,{label:"附件",tooltip:"可以上传多个附件作为回复内容",children:(0,B.jsx)(Kt.Z,f()(f()({},St),{},{children:(0,B.jsx)(z.ZP,{icon:(0,B.jsx)(W.Z,{}),children:"上传附件"})}))}),(0,B.jsxs)(je.Z,{orientation:"left",children:["扩展答案列表",(0,B.jsx)(z.ZP,{type:"link",onClick:function(){window.open("https://www.weiyuai.cn/docs/zh-CN/docs/manual/admin/kbase/viplevel")},children:"使用说明"})]}),(0,B.jsx)(Vt.u,{name:"answerList",creatorButtonProps:{creatorButtonText:"添加答案",icon:(0,B.jsx)(W.Z,{}),type:"dashed",block:!0},itemRender:function(e,t){var n=e.listDom,r=e.action,a=t.index;return(0,B.jsx)(Gt.Z,{size:"small",style:{marginBottom:16},extra:r,children:n},a)},initialValue:[],copyIconProps:!1,itemContainerRender:function(e){return(0,B.jsx)("div",{children:e})},children:(0,B.jsxs)(Ht.UW,{children:[(0,B.jsx)(Jt.Z,{name:"vipLevel",label:"VIP等级",rules:[{required:!0,message:"请输入VIP等级"}],placeholder:"输入VIP等级",min:1}),(0,B.jsx)(Te.Z,{name:"answer",label:"答案内容",rules:[{required:!0,message:"请输入答案内容"}],placeholder:"输入答案内容",fieldProps:{rows:3}})]})}),(0,B.jsx)(Ae.Z,{name:"relatedFaqUids",label:"相关问题",mode:"multiple",options:ge,fieldProps:{placeholder:"请选择相关问题"}}),(0,B.jsx)(Ue.A.Item,{label:"标签",children:(0,B.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:"8px"},children:[Q.map((function(e){return(0,B.jsx)(re.Z,{closable:!0,onClose:function(){return t=e,n=Q.filter((function(e){return e!==t})),void X(n);var t,n},children:e},e)})),_?(0,B.jsx)(Ee.Z,{ref:ie,type:"text",size:"small",style:{width:78},value:se,onChange:function(e){oe(e.target.value)},onBlur:wt,onPressEnter:wt}):(0,B.jsxs)(re.Z,{onClick:function(){$(!0)},style:{borderStyle:"dashed",cursor:"pointer"},children:[(0,B.jsx)(W.Z,{})," 新标签"]})]})}),(0,B.jsx)(Qt.Z.Group,{name:"dateType",label:"有效期设置",options:[{label:"永久有效",value:"permanent"},{label:"自定义日期",value:"custom"}],fieldProps:{onChange:function(e){Se(e.target.value),"permanent"===e.target.value&&u.setFieldValue("dateRange",void 0)},value:ke}}),"custom"===ke&&(0,B.jsx)(Xt.Z,{name:"dateRange",label:"有效日期",rules:[{required:"custom"===ke,message:"请选择有效日期范围"}],fieldProps:{style:{width:"100%"}}}),(0,B.jsx)(zt.Z,{name:"enabled",label:"是否启用",fieldProps:{checked:ye,onChange:function(e){Me(e)}}})]})})})},tn=["current","pageSize"],nn=function(){var e=(0,l.useIntl)(),t=(0,E.Z)().translateString,n=(0,o.useRef)(),r=(0,o.useState)(!0),s=M()(r,2),i=s[0],u=s[1],d=(0,o.useState)(),p=M()(d,2),m=p[0],x=p[1],y=(0,o.useState)(!1),b=M()(y,2),k=b[0],j=b[1],S=(0,o.useState)(1),Z=M()(S,2),C=Z[0],U=Z[1],A=(0,o.useState)(10),I=M()(A,2),T=I[0],q=I[1],D=(0,P.u)((function(e){return e.currentOrg})),R=(0,F.j)((function(e){return e.currentKbase})),L=(0,N.v)((function(e){return e.currentCategory})),Y=(0,N.v)((function(e){return e.categorySelectOptions})),V=(0,o.useState)(!1),H=M()(V,2),J=H[0],Q=H[1],X=(0,o.useState)([]),ne=M()(X,2),ie=ne[0],de=ne[1],fe=(0,o.useState)([]),pe=M()(fe,2),ge=pe[0],me=pe[1],xe=(0,o.useState)(0),ve=M()(xe,2),ye=ve[0],Me=ve[1],we=(0,o.useState)(!1),be=M()(we,2),ke=be[0],je=be[1],Se=(0,o.useState)(!1),Ze=M()(Se,2),Ue=Ze[0],Ae=Ze[1],Ie=(0,o.useState)({}),Te=M()(Ie,2),Ee=Te[0],Fe=Te[1],Pe=function(){var t=v()(h()().mark((function t(r){var a;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return console.log(r),t.next=3,(0,ft.Yg)(r);case 3:a=t.sent,console.log("delete response:",a),200===a.code?(null==n||n.current.reload(),w.yw.success(e.formatMessage({id:"delete.success",defaultMessage:"Delete Success"}))):w.yw.error(e.formatMessage({id:"delete.error",defaultMessage:"Delete Error"}));case 6:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),qe=function(){var t=v()(h()().mark((function t(){var r,a,s,o,i,l;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(0!==ge.length){t.next=3;break}return w.yw.warning(e.formatMessage({id:"batch.delete.noselection",defaultMessage:"Please select items to delete"})),t.abrupt("return");case 3:w.yw.loading(e.formatMessage({id:"deleting",defaultMessage:"Deleting..."})),a=0,s=0,o=g()(ge),t.prev=7,o.s();case 9:if((i=o.n()).done){t.next=23;break}return l=i.value,t.prev=11,t.next=14,(0,ft.Yg)(l);case 14:200===t.sent.code?a++:s++,t.next=21;break;case 18:t.prev=18,t.t0=t.catch(11),s++;case 21:t.next=9;break;case 23:t.next=28;break;case 25:t.prev=25,t.t1=t.catch(7),o.e(t.t1);case 28:return t.prev=28,o.f(),t.finish(28);case 31:w.yw.destroy(),0===s?w.yw.success(e.formatMessage({id:"batch.delete.success",defaultMessage:"Successfully deleted {count} items"},{count:a})):w.yw.warning(e.formatMessage({id:"batch.delete.partial",defaultMessage:"Deleted {success} items, failed to delete {fail} items"},{success:a,fail:s})),de([]),me([]),null===(r=n.current)||void 0===r||r.reloadAndRest();case 36:case"end":return t.stop()}}),t,null,[[7,25,28,31],[11,18]])})));return function(){return t.apply(this,arguments)}}(),Oe=function(){var t=v()(h()().mark((function t(r){var a,s,o,i,l,u;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(0!==ge.length){t.next=3;break}return w.yw.warning(e.formatMessage({id:"batch.noselection",defaultMessage:"Please select items to process"})),t.abrupt("return");case 3:w.yw.loading(r?e.formatMessage({id:"enabling",defaultMessage:"Enabling..."}):e.formatMessage({id:"disabling",defaultMessage:"Disabling..."})),s=0,o=0,i=g()(ge),t.prev=7,i.s();case 9:if((l=i.n()).done){t.next=23;break}return u=l.value,t.prev=11,t.next=14,(0,ft.kv)({uid:u.uid,enabled:r});case 14:200===t.sent.code?s++:o++,t.next=21;break;case 18:t.prev=18,t.t0=t.catch(11),o++;case 21:t.next=9;break;case 23:t.next=28;break;case 25:t.prev=25,t.t1=t.catch(7),i.e(t.t1);case 28:return t.prev=28,i.f(),t.finish(28);case 31:w.yw.destroy(),0===o?w.yw.success(r?e.formatMessage({id:"batch.enable.success",defaultMessage:"Successfully enabled {count} items"},{count:s}):e.formatMessage({id:"batch.disable.success",defaultMessage:"Successfully disabled {count} items"},{count:s})):w.yw.warning(r?e.formatMessage({id:"batch.enable.partial",defaultMessage:"Enabled {success} items, failed to enable {fail} items"},{success:s,fail:o}):e.formatMessage({id:"batch.disable.partial",defaultMessage:"Disabled {success} items, failed to disable {fail} items"},{success:s,fail:o})),de([]),me([]),null===(a=n.current)||void 0===a||a.reloadAndRest();case 36:case"end":return t.stop()}}),t,null,[[7,25,28,31],[11,18]])})));return function(e){return t.apply(this,arguments)}}(),De=function(){var t=v()(h()().mark((function t(){var r,s,o;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(0!==ye){t.next=3;break}return w.yw.warning(e.formatMessage({id:"deleteAll.nodata",defaultMessage:"没有数据可删除"})),t.abrupt("return");case 3:return w.yw.loading(e.formatMessage({id:"deleting.all",defaultMessage:"正在删除所有数据..."})),t.prev=4,r={categoryUid:(null==L?void 0:L.uid)===a.zBg?"":null==L?void 0:L.uid,kbUid:null==R?void 0:R.uid,orgUid:null==D?void 0:D.uid},t.next=8,(0,ft.QB)(r);case 8:200===(s=t.sent).code?(w.yw.destroy(),w.yw.success(e.formatMessage({id:"deleteAll.success",defaultMessage:"成功删除所有数据"})),null===(o=n.current)||void 0===o||o.reloadAndRest()):(w.yw.destroy(),w.yw.error(s.message||e.formatMessage({id:"deleteAll.failed",defaultMessage:"删除失败"}))),t.next=17;break;case 12:t.prev=12,t.t0=t.catch(4),w.yw.destroy(),w.yw.error(e.formatMessage({id:"deleteAll.error",defaultMessage:"删除过程发生错误"})),console.error("删除全部数据错误:",t.t0);case 17:case"end":return t.stop()}}),t,null,[[4,12]])})));return function(){return t.apply(this,arguments)}}(),Re=[{dataIndex:"index",valueType:"indexBorder",width:48,fixed:"left"},{title:(0,B.jsx)(l.FormattedMessage,{id:"faq.question"}),dataIndex:"question",copyable:!0,fixed:"left",width:100,ellipsis:!0,search:!0,tooltip:e.formatMessage({id:"faq.question.tooltip",defaultMessage:"常见问题的问题内容"})},{title:(0,B.jsx)(l.FormattedMessage,{id:"faq.similar.questions",defaultMessage:"相似问法"}),dataIndex:"similarQuestions",width:200,ellipsis:!0,search:!1,tooltip:e.formatMessage({id:"faq.similar.questions.tooltip",defaultMessage:"表达相同意思的其他问法"}),render:function(t,n){if(!n.similarQuestions||0===n.similarQuestions.length||1===n.similarQuestions.length&&""===n.similarQuestions[0])return"-";var r=n.similarQuestions.length>3,a=n.similarQuestions.slice(0,3),s=(0,B.jsx)("div",{style:{maxWidth:300,maxHeight:300,overflow:"auto"},children:n.similarQuestions.map((function(e,t){return(0,B.jsxs)("div",{style:{marginBottom:8},children:[(0,B.jsx)(re.Z,{color:"blue",style:{marginRight:4},children:t+1}),e]},t)}))}),o=(0,B.jsxs)("div",{children:[a.map((function(e,t){return(0,B.jsx)(re.Z,{color:"blue",style:{marginBottom:4},children:e},t)})),r&&(0,B.jsxs)(re.Z,{color:"orange",children:["+",n.similarQuestions.length-3]})]});return(0,B.jsx)(Dt.Z,{content:s,title:e.formatMessage({id:"faq.similar.questions",defaultMessage:"所有相似问法"}),placement:"right",trigger:"hover",children:o})}},{title:(0,B.jsx)(l.FormattedMessage,{id:"faq.answer"}),dataIndex:"answer",width:200,ellipsis:!0,search:!0,tooltip:e.formatMessage({id:"faq.answer.tooltip",defaultMessage:"常见问题的回答内容"})},{title:(0,B.jsx)(l.FormattedMessage,{id:"status",defaultMessage:"Status"}),dataIndex:"status",hideInSearch:!0,width:120,tooltip:e.formatMessage({id:"faq.status.tooltip",defaultMessage:"问题处理状态"}),render:function(t,n){var r=n.elasticStatus||"",a="";return"SUCCESS"===r?a="success":"ERROR"===r?a="error":"NEW"===r&&(a="processing"),(0,B.jsx)(re.Z,{color:a,children:e.formatMessage({id:"llm.status.".concat(r.toLowerCase())})})}},{title:(0,B.jsx)(l.FormattedMessage,{id:"vectorStatus",defaultMessage:"Vector Status"}),dataIndex:"vectorStatus",hideInSearch:!0,width:120,tooltip:e.formatMessage({id:"faq.vectorStatus.tooltip",defaultMessage:"向量化处理状态"}),render:function(t,n){var r=n.vectorStatus||"",a="";return"SUCCESS"===r?a="success":"ERROR"===r?a="error":"NEW"===r?a="processing":"PROCESSING"===r&&(a="warning"),r?(0,B.jsx)(re.Z,{color:a,icon:(0,B.jsx)(ot.Z,{}),children:e.formatMessage({id:"llm.vectorStatus.".concat(r.toLowerCase())})||r}):"-"}},{title:(0,B.jsx)(l.FormattedMessage,{id:"faq.clickCount"}),dataIndex:"clickCount",width:100,hideInSearch:!0,sorter:!0,tooltip:e.formatMessage({id:"faq.clickCount.tooltip",defaultMessage:"问题被点击的次数"})},{title:(0,B.jsx)(l.FormattedMessage,{id:"faq.upCount"}),dataIndex:"upCount",width:100,hideInSearch:!0,sorter:!0,tooltip:e.formatMessage({id:"faq.upCount.tooltip",defaultMessage:"问题被点赞的次数"})},{title:(0,B.jsx)(l.FormattedMessage,{id:"faq.downCount"}),dataIndex:"downCount",width:100,hideInSearch:!0,sorter:!0,tooltip:e.formatMessage({id:"faq.downCount.tooltip",defaultMessage:"问题被踩的次数"})},{title:(0,B.jsx)(l.FormattedMessage,{id:"category"}),dataIndex:"categoryUid",hideInSearch:!0,width:120,tooltip:e.formatMessage({id:"faq.category.tooltip",defaultMessage:"问题所属的分类"}),render:function(e,t){var n=Y.find((function(e){return e.value===(null==t?void 0:t.categoryUid)}));return(0,B.jsx)(re.Z,{color:"blue",children:(null==n?void 0:n.label)||"-"})},filters:Y.map((function(e){return{text:e.label,value:e.value}})),filterMode:"tree"},{title:(0,B.jsx)(l.FormattedMessage,{id:"faq.tags",defaultMessage:"标签"}),dataIndex:"tagList",width:150,hideInSearch:!0,tooltip:e.formatMessage({id:"faq.tags.tooltip",defaultMessage:"用于分类和搜索的标签"}),render:function(e,t){if(null==t||!t.tagList||0===(null==t?void 0:t.tagList.length))return"-";var n=(null==t?void 0:t.tagList.length)>3,r=null==t?void 0:t.tagList.slice(0,3);return(0,B.jsxs)("div",{children:[r.map((function(e,t){return(0,B.jsx)(re.Z,{color:"green",style:{marginBottom:4},children:e},t)})),n&&(0,B.jsxs)(re.Z,{color:"orange",children:["+",(null==t?void 0:t.tagList.length)-3]})]})}},{title:(0,B.jsx)(l.FormattedMessage,{id:"faq.isValid"}),dataIndex:"enabled",width:100,hideInSearch:!0,tooltip:e.formatMessage({id:"faq.isValid.tooltip",defaultMessage:"问题是否有效可用"}),valueEnum:{true:{text:"有效",status:"Success"},false:{text:"无效",status:"Error"}}},{title:(0,B.jsx)(l.FormattedMessage,{id:"faq.startDate"}),dataIndex:"startDate",width:160,valueType:"dateTime",hideInSearch:!0,tooltip:e.formatMessage({id:"faq.startDate.tooltip",defaultMessage:"问题生效的开始时间"}),render:function(e,t){return t.startDate?le()(t.startDate).format("YYYY-MM-DD HH:mm:ss"):"-"}},{title:(0,B.jsx)(l.FormattedMessage,{id:"faq.endDate"}),dataIndex:"endDate",width:160,valueType:"dateTime",hideInSearch:!0,tooltip:e.formatMessage({id:"faq.endDate.tooltip",defaultMessage:"问题失效的结束时间"}),render:function(e,t){return t.endDate?le()(t.endDate).format("YYYY-MM-DD HH:mm:ss"):"-"}},{title:(0,B.jsx)(l.FormattedMessage,{id:"createdAt",defaultMessage:"createdAt"}),key:"createdAt",dataIndex:"createdAt",sorter:!0,width:200,hideInSearch:!0,tooltip:e.formatMessage({id:"faq.createdAt.tooltip",defaultMessage:"问题创建的时间"}),render:function(e,t){return le()(t.createdAt).format("YYYY-MM-DD HH:mm:ss")}},{title:(0,B.jsx)(l.FormattedMessage,{id:"updatedAt",defaultMessage:"updatedAt"}),key:"updatedAt",dataIndex:"updatedAt",sorter:!0,width:200,hideInSearch:!0,tooltip:e.formatMessage({id:"faq.updatedAt.tooltip",defaultMessage:"问题最后更新的时间"}),render:function(e,t){return t.updatedAt?le()(t.updatedAt).format("YYYY-MM-DD HH:mm:ss"):"-"}},{title:e.formatMessage({id:"actions"}),valueType:"option",key:"option",width:220,fixed:"right",render:function(t,n,r,a){return[(0,B.jsx)("a",{onClick:function(){!function(e){console.log("showEditDrawer",e),x(e),u(!0),j(!0)}(n)},children:e.formatMessage({id:"edit"})},"editable"),(0,B.jsx)(se.Z,{title:e.formatMessage({id:"deleteTip"}),description:"".concat(e.formatMessage({id:"deleteAffirm"}),"【").concat(null==n?void 0:n.question,"】?"),onConfirm:function(){return Pe(n)},okText:e.formatMessage({id:"ok"}),cancelText:e.formatMessage({id:"cancel"}),children:(0,B.jsx)(z.ZP,{size:"small",type:"link",danger:!0,children:e.formatMessage({id:"delete"})})},"delete"),(0,B.jsx)(oe.Z,{menu:{items:[{key:"updateIndex",label:e.formatMessage({id:"update.index",defaultMessage:"更新索引"}),onClick:function(){return ze(n)}},{key:"updateVectorIndex",label:e.formatMessage({id:"update.vector.index",defaultMessage:"更新向量索引"}),onClick:function(){return Le(n)}}]},placement:"bottomRight",children:(0,B.jsx)(ae.Z,{title:e.formatMessage({id:"update.indexes",defaultMessage:"更新索引"}),children:(0,B.jsxs)(z.ZP,{size:"small",type:"link",children:[e.formatMessage({id:"update.indexes",defaultMessage:"更新索引"}),(0,B.jsx)($.Z,{})]})})},"indexOperations")]}}],ze=function(){var t=v()(h()().mark((function t(r){var a,s;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return w.yw.loading(e.formatMessage({id:"updating.index",defaultMessage:"正在更新索引..."})),t.prev=1,t.next=4,(0,ft.RF)({uid:r.uid});case 4:a=t.sent,w.yw.destroy(),200===a.code?(w.yw.success(e.formatMessage({id:"update.index.success",defaultMessage:"索引更新成功"})),null===(s=n.current)||void 0===s||s.reload()):w.yw.error(a.message||e.formatMessage({id:"update.index.failed",defaultMessage:"索引更新失败"})),t.next=14;break;case 9:t.prev=9,t.t0=t.catch(1),w.yw.destroy(),w.yw.error(e.formatMessage({id:"update.index.error",defaultMessage:"更新索引过程发生错误"})),console.error("更新索引错误:",t.t0);case 14:case"end":return t.stop()}}),t,null,[[1,9]])})));return function(e){return t.apply(this,arguments)}}(),Le=function(){var t=v()(h()().mark((function t(r){var a,s;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return w.yw.loading(e.formatMessage({id:"updating.vector.index",defaultMessage:"正在更新向量索引..."})),t.prev=1,t.next=4,(0,ft.YO)({uid:r.uid});case 4:a=t.sent,w.yw.destroy(),200===a.code?(w.yw.success(e.formatMessage({id:"update.vector.index.success",defaultMessage:"向量索引更新成功"})),null===(s=n.current)||void 0===s||s.reload()):w.yw.error(a.message||e.formatMessage({id:"update.vector.index.failed",defaultMessage:"向量索引更新失败"})),t.next=14;break;case 9:t.prev=9,t.t0=t.catch(1),w.yw.destroy(),w.yw.error(e.formatMessage({id:"update.vector.index.error",defaultMessage:"更新向量索引过程发生错误"})),console.error("更新向量索引错误:",t.t0);case 14:case"end":return t.stop()}}),t,null,[[1,9]])})));return function(e){return t.apply(this,arguments)}}(),Be=function(){ke?Ue?w.yw.info("正在检查模型状态,请稍后再试"):(x(void 0),u(!1),j(!0)):te.Z.confirm({title:e.formatMessage({id:"warning",defaultMessage:"警告"}),content:e.formatMessage({id:"embedding.model.missing.warning",defaultMessage:"嵌入式模型未加载,可能会影响问答质量。是否继续?"}),okText:e.formatMessage({id:"ok",defaultMessage:"确定"}),cancelText:e.formatMessage({id:"cancel",defaultMessage:"取消"}),onOk:function(){x(void 0),u(!1),j(!0)}})},Ye=function(){var t=v()(h()().mark((function t(r){var a,s;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(console.log("handleSubmitDrawer",r),i?w.yw.loading(e.formatMessage({id:"updating"})):w.yw.loading(e.formatMessage({id:"creating"})),!i){t.next=8;break}return t.next=5,(0,ft.y)(r);case 5:t.t0=t.sent,t.next=11;break;case 8:return t.next=10,(0,ft.kh)(r);case 10:t.t0=t.sent;case 11:a=t.t0,console.log("createFaq response:",r,a),200===a.code?(w.yw.destroy(),w.yw.success(e.formatMessage({id:"create.success",defaultMessage:"create success"})),j(!1),null===(s=n.current)||void 0===s||s.reloadAndRest()):(w.yw.destroy(),w.yw.error(a.message));case 14:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),Ne=function(){var t=v()(h()().mark((function t(){return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(ke){t.next=3;break}return te.Z.confirm({title:e.formatMessage({id:"warning",defaultMessage:"警告"}),content:e.formatMessage({id:"embedding.model.missing.warning",defaultMessage:"嵌入式模型未加载,可能会影响问答质量。是否继续?"}),okText:e.formatMessage({id:"ok",defaultMessage:"确定"}),cancelText:e.formatMessage({id:"cancel",defaultMessage:"取消"}),onOk:function(){Q(!0)}}),t.abrupt("return");case 3:if(!Ue){t.next=6;break}return w.yw.info("正在检查模型状态,请稍后再试"),t.abrupt("return");case 6:Q(!0);case 7:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}();(0,o.useEffect)((function(){var e;null===(e=n.current)||void 0===e||e.reloadAndRest()}),[R,L]);var Ve=function(){var t=v()(h()().mark((function t(){return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,(0,ce.HK)(a.QPQ,null==D?void 0:D.uid,null==R?void 0:R.uid,a.whQ,{showLoading:!0,loadingMessage:e.formatMessage({id:"loading"}),errorMessage:e.formatMessage({id:"fetch.categories.error",defaultMessage:"Failed to fetch categories"})});case 2:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}(),He=function(){var t=v()(h()().mark((function t(){var r,a,s,o,i,l;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(0!==ge.length){t.next=3;break}return w.yw.warning(e.formatMessage({id:"batch.update.noselection",defaultMessage:"请选择要更新的项目"})),t.abrupt("return");case 3:w.yw.loading(e.formatMessage({id:"updating.index",defaultMessage:"正在更新索引..."})),a=0,s=0,o=g()(ge),t.prev=7,o.s();case 9:if((i=o.n()).done){t.next=23;break}return l=i.value,t.prev=11,t.next=14,(0,ft.RF)({uid:l.uid});case 14:200===t.sent.code?a++:s++,t.next=21;break;case 18:t.prev=18,t.t0=t.catch(11),s++;case 21:t.next=9;break;case 23:t.next=28;break;case 25:t.prev=25,t.t1=t.catch(7),o.e(t.t1);case 28:return t.prev=28,o.f(),t.finish(28);case 31:w.yw.destroy(),0===s?w.yw.success(e.formatMessage({id:"batch.update.index.success"},{defaultMessage:"成功更新 ".concat(a," 条记录的索引")})):w.yw.error(e.formatMessage({id:"batch.update.index.partial"},{defaultMessage:"更新了 ".concat(a," 条记录的索引,").concat(s," 条记录更新失败")})),null===(r=n.current)||void 0===r||r.reload();case 34:case"end":return t.stop()}}),t,null,[[7,25,28,31],[11,18]])})));return function(){return t.apply(this,arguments)}}(),Je=function(){var t=v()(h()().mark((function t(){var r,a,s,o,i,l;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(0!==ge.length){t.next=3;break}return w.yw.warning(e.formatMessage({id:"batch.update.noselection",defaultMessage:"请选择要更新的项目"})),t.abrupt("return");case 3:w.yw.loading(e.formatMessage({id:"updating.vector.index",defaultMessage:"正在更新向量索引..."})),a=0,s=0,o=g()(ge),t.prev=7,o.s();case 9:if((i=o.n()).done){t.next=23;break}return l=i.value,t.prev=11,t.next=14,(0,ft.YO)({uid:l.uid});case 14:200===t.sent.code?a++:s++,t.next=21;break;case 18:t.prev=18,t.t0=t.catch(11),s++;case 21:t.next=9;break;case 23:t.next=28;break;case 25:t.prev=25,t.t1=t.catch(7),o.e(t.t1);case 28:return t.prev=28,o.f(),t.finish(28);case 31:w.yw.destroy(),0===s?w.yw.success(e.formatMessage({id:"batch.update.vector.index.success"},{defaultMessage:"成功更新 ".concat(a," 条记录的向量索引")})):w.yw.error(e.formatMessage({id:"batch.update.vector.index.partial"},{defaultMessage:"更新了 ".concat(a," 条记录的向量索引,").concat(s," 条记录更新失败")})),null===(r=n.current)||void 0===r||r.reload();case 34:case"end":return t.stop()}}),t,null,[[7,25,28,31],[11,18]])})));return function(){return t.apply(this,arguments)}}(),Qe=function(){var t=v()(h()().mark((function t(){return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:te.Z.confirm({title:e.formatMessage({id:"updateAll.index.confirm.title",defaultMessage:"更新全部索引确认"}),content:e.formatMessage({id:"updateAll.index.confirm.content",defaultMessage:"确定要更新所有记录的索引吗?此操作可能需要一些时间。"}),onOk:function(){var t=v()(h()().mark((function t(){var r,s;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return w.yw.loading(e.formatMessage({id:"updating.all.index",defaultMessage:"正在更新所有索引..."})),t.prev=1,t.next=4,(0,ft.L0)({kbUid:null==R?void 0:R.uid,categoryUid:(null==L?void 0:L.uid)===a.zBg?"":null==L?void 0:L.uid,orgUid:null==D?void 0:D.uid});case 4:r=t.sent,w.yw.destroy(),200===r.code?(w.yw.success(e.formatMessage({id:"update.all.index.success",defaultMessage:"所有索引更新请求已发送"})),null===(s=n.current)||void 0===s||s.reload()):w.yw.error(r.message||e.formatMessage({id:"update.all.index.failed",defaultMessage:"所有索引更新请求失败"})),t.next=14;break;case 9:t.prev=9,t.t0=t.catch(1),w.yw.destroy(),w.yw.error(e.formatMessage({id:"update.all.index.error",defaultMessage:"更新所有索引过程发生错误"})),console.error("更新所有索引错误:",t.t0);case 14:case"end":return t.stop()}}),t,null,[[1,9]])})));return function(){return t.apply(this,arguments)}}()});case 1:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}(),Xe=function(){var t=v()(h()().mark((function t(){return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:te.Z.confirm({title:e.formatMessage({id:"updateAll.vector.index.confirm.title",defaultMessage:"更新全部向量索引确认"}),content:e.formatMessage({id:"updateAll.vector.index.confirm.content",defaultMessage:"确定要更新所有记录的向量索引吗?此操作可能需要一些时间。"}),onOk:function(){var t=v()(h()().mark((function t(){var r,s;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return w.yw.loading(e.formatMessage({id:"updating.all.vector.index",defaultMessage:"正在更新所有向量索引..."})),t.prev=1,t.next=4,(0,ft.Bv)({kbUid:null==R?void 0:R.uid,categoryUid:(null==L?void 0:L.uid)===a.zBg?"":null==L?void 0:L.uid,orgUid:null==D?void 0:D.uid});case 4:r=t.sent,w.yw.destroy(),200===r.code?(w.yw.success(e.formatMessage({id:"update.all.vector.index.success",defaultMessage:"所有向量索引更新请求已发送"})),null===(s=n.current)||void 0===s||s.reload()):w.yw.error(r.message||e.formatMessage({id:"update.all.vector.index.failed",defaultMessage:"所有向量索引更新请求失败"})),t.next=14;break;case 9:t.prev=9,t.t0=t.catch(1),w.yw.destroy(),w.yw.error(e.formatMessage({id:"update.all.vector.index.error",defaultMessage:"更新所有向量索引过程发生错误"})),console.error("更新所有向量索引错误:",t.t0);case 14:case"end":return t.stop()}}),t,null,[[1,9]])})));return function(){return t.apply(this,arguments)}}()});case 1:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}(),Ke=function(){var e=v()(h()().mark((function e(t,n,r){var s,o;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:console.log("handleExportExcel",t,n,r),s=localStorage.getItem(a.LA8),o=f()({categoryUid:(null==L?void 0:L.uid)===a.zBg?"":null==L?void 0:L.uid,kbUid:null==R?void 0:R.uid,orgUid:(null==D?void 0:D.uid)||"",accessToken:s||"",exportType:t},Ee),"current"===t?(o.pageNumber=String(C-1),o.pageSize=String(T)):"all"===t?(o.pageNumber="0",o.pageSize="1000"):"range"===t&&void 0!==n&&void 0!==r&&(o.pageNumber=String(n),o.pageSize=String(r)),window.open((0,O.kG)()+"/api/v1/faq/export?"+new URLSearchParams(o).toString());case 5:case"end":return e.stop()}}),e)})));return function(t,n,r){return e.apply(this,arguments)}}(),We={selectedRowKeys:ie,onChange:function(e,t){de(e),me(t)}},Ge=function(){var t=v()(h()().mark((function t(n,r,s){var o,i,l,u,d,p,g,m;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return console.log("request:",n,r,s),w.yw.loading(e.formatMessage({id:"loading",defaultMessage:"Loading"})),o=n.current,i=n.pageSize,l=c()(n,tn),U(o),q(i),Fe(l),u=void 0,d=void 0,r&&Object.keys(r).length>0&&(p=Object.keys(r)[0],u=p,d="ascend"===r[p]?"ascend":"descend"),g=f()(f()({pageNumber:o-1,pageSize:i,categoryUid:(null==L?void 0:L.uid)===a.zBg?"":null==L?void 0:L.uid,kbUid:null==R?void 0:R.uid,orgUid:null==D?void 0:D.uid},l),{},{sortBy:u,sortDirection:d}),t.next=12,(0,ft.pf)(g);case 12:return m=t.sent,console.log("queryFaqsByOrg response:",g,m),w.yw.destroy(),200===m.code?Me(m.data.totalElements):w.yw.error(m.message),t.abrupt("return",{data:m.data.content,success:!0,total:m.data.totalElements});case 17:case"end":return t.stop()}}),t)})));return function(e,n,r){return t.apply(this,arguments)}}(),_e=function(e){for(var t=[],n=1e3,r=Math.ceil(e/n),a=function(){var r=s,a=s*n+1,o=Math.min((s+1)*n,e);t.push({key:"export-".concat(s),label:"".concat(a,"-").concat(o," (").concat(o-a+1,"条)"),onClick:function(){return Ke("range",r,n)}})},s=0;s<r;s++)a();return t};return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(he,{onModelStatusChange:function(e){je(e),Ae(!1)}}),(0,B.jsx)(ee.Z,{columns:Re,actionRef:n,cardBordered:!0,rowSelection:We,request:Ge,scroll:{x:2300},rowKey:"uid",search:{labelWidth:"auto"},pagination:{pageSize:10,onChange:function(e,t){U(e),q(t)}},dateFormatter:"string",headerTitle:t(null==R?void 0:R.name)+" - 常见问题",tooltip:Ue?"正在检查嵌入式模型...":ke?"所添加FAQ内容会自动添加到 '拆分' 列表中 ":"请首先拉取Embedding向量模型bge-m3:latest",toolBarRender:function(){return function(){var t=[];(0,O.Ox)()||t.push((0,B.jsx)(z.ZP,{icon:(0,B.jsx)(W.Z,{}),type:"primary",onClick:Be,disabled:Ue,children:e.formatMessage({id:"create"})},"create"),(0,B.jsx)(ae.Z,{title:e.formatMessage({id:"chat.test.tooltip",defaultMessage:"请确认上传内容状态为:处理成功"}),children:(0,B.jsx)(Ce,{currentKbase:R,currentOrg:D,embeddingModelExists:ke,checkingEmbeddingModel:Ue})},"chat"));var n=[];ie.length>0&&n.push({key:"batchDelete",icon:(0,B.jsx)(K.Z,{}),danger:!0,label:e.formatMessage({id:"batch.delete"})+" (".concat(ie.length,")"),onClick:function(){te.Z.confirm({title:e.formatMessage({id:"batch.deleteTip"}),content:"".concat(e.formatMessage({id:"batch.deleteAffirm"})," ").concat(ie.length," ").concat(e.formatMessage({id:"items"}),"?"),onOk:qe,okText:e.formatMessage({id:"ok"}),cancelText:e.formatMessage({id:"cancel"})})}},{key:"batchEnable",icon:(0,B.jsx)(lt.Z,{}),label:e.formatMessage({id:"batch.enable",defaultMessage:"Enable"})+" (".concat(ie.length,")"),onClick:function(){return Oe(!0)}},{key:"batchDisable",icon:(0,B.jsx)(ut.Z,{}),label:e.formatMessage({id:"batch.disable",defaultMessage:"Disable"})+" (".concat(ie.length,")"),onClick:function(){return Oe(!1)}},{key:"batchUpdateIndex",icon:(0,B.jsx)(ot.Z,{}),label:e.formatMessage({id:"batch.update.index",defaultMessage:"更新索引"})+" (".concat(ie.length,")"),onClick:He},{key:"batchUpdateVectorIndex",icon:(0,B.jsx)(ot.Z,{}),label:e.formatMessage({id:"batch.update.vector.index",defaultMessage:"更新向量索引"})+" (".concat(ie.length,")"),onClick:Je}),n.push({key:"deleteAll",icon:(0,B.jsx)(G.Z,{}),danger:!0,label:e.formatMessage({id:"deleteAll",defaultMessage:"删除所有"}),onClick:function(){te.Z.confirm({title:e.formatMessage({id:"deleteAll.tip",defaultMessage:"删除确认"}),content:e.formatMessage({id:"deleteAll.confirm",defaultMessage:"确定要删除所有问答对数据吗?此操作不可恢复!"}),onOk:De,okText:e.formatMessage({id:"ok"}),cancelText:e.formatMessage({id:"cancel"})})}},{key:"updateAllIndex",icon:(0,B.jsx)(ot.Z,{}),label:e.formatMessage({id:"updateAll.index",defaultMessage:"更新所有索引"}),onClick:Qe},{key:"updateAllVectorIndex",icon:(0,B.jsx)(ot.Z,{}),label:e.formatMessage({id:"updateAll.vector.index",defaultMessage:"更新所有向量索引"}),onClick:Xe});var r=[{key:"import",icon:(0,B.jsx)(ct.Z,{}),label:e.formatMessage({id:"import"}),onClick:Ne,disabled:Ue},{key:"export-current",icon:(0,B.jsx)(_.Z,{}),label:e.formatMessage({id:"export.current",defaultMessage:"导出当前页"}),onClick:function(){return Ke("current")}}];return ye>0&&(ye<=1e3?r.push({key:"export-all",icon:(0,B.jsx)(_.Z,{}),label:e.formatMessage({id:"export.all",defaultMessage:"导出全部"})+" (".concat(ye,"条)"),onClick:function(){return Ke("all")}}):r.push({key:"export-range",icon:(0,B.jsx)(_.Z,{}),label:e.formatMessage({id:"export.range",defaultMessage:"分段导出"})+" (".concat(ye,"条)"),children:_e(ye)})),r.push({key:"download",icon:(0,B.jsx)(dt.Z,{}),label:e.formatMessage({id:"download.template"}),onClick:function(){return(0,O.IY)()}}),t.push((0,B.jsx)(oe.Z,{menu:{items:r},placement:"bottom",children:(0,B.jsxs)(z.ZP,{type:"primary",children:[e.formatMessage({id:"import.export",defaultMessage:"导入导出"}),(0,B.jsx)($.Z,{})]})},"importExport")),n.length>0&&t.push((0,B.jsx)(oe.Z,{menu:{items:n},placement:"bottom",children:(0,B.jsxs)(z.ZP,{type:ie.length>0?"primary":"default",danger:ie.length>0,children:[ie.length>0?e.formatMessage({id:"batch.operations",defaultMessage:"批量操作"})+" (".concat(ie.length,")"):e.formatMessage({id:"more.operations",defaultMessage:"更多操作"}),(0,B.jsx)($.Z,{})]})},"batchOperations")),t}()}}),(0,B.jsx)(en,{isEdit:i,open:k,faq:m,onClose:function(){return j(!1)},onSubmit:Ye}),J&&(0,B.jsx)(ue.Z,{type:a.hqx,acceptType:".xlsx,.xls,.csv",isModalOpen:J,handleSubmit:function(e){console.log("handleUploadDragSubmit",e),Q(!1),null==n||n.current.reload(),Ve()},handleCancel:function(){console.log("handleUploadDragCancel"),Q(!1),null==n||n.current.reload()}})]})};function rn(e){return an.apply(this,arguments)}function an(){return(an=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/webpage/query/org",{method:"GET",params:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function sn(e){return on.apply(this,arguments)}function on(){return(on=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/webpage/create",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ln(e){return un.apply(this,arguments)}function un(){return(un=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/webpage/update",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function cn(e){return dn.apply(this,arguments)}function dn(){return(dn=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/webpage/delete",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function fn(e){return pn.apply(this,arguments)}function pn(){return(pn=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/webpage/crawl",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function gn(e){return mn.apply(this,arguments)}function mn(){return(mn=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/webpage/updateIndex",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function hn(e){return xn.apply(this,arguments)}function xn(){return(xn=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/webpage/updateVectorIndex",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function vn(e){return yn.apply(this,arguments)}function yn(){return(yn=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/webpage/updateAllIndex",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Mn(e){return wn.apply(this,arguments)}function wn(){return(wn=v()(h()().mark((function e(t){return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",(0,l.request)("/api/v1/llm/webpage/updateAllVectorIndex",{method:"POST",data:f()(f()({},t),{},{channel:a.XtJ})}));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var bn=function(e){var t=e.isEdit,n=e.webpage,r=e.open,s=e.onClose,i=e.onSubmit,l=Ue.A.useForm(),u=M()(l,1)[0],c=(0,F.j)((function(e){return e.currentKbase})),d=(0,P.u)((function(e){return e.currentOrg})),p=(0,N.v)((function(e){return e.categorySelectOptions})),m=(0,N.v)((function(e){return e.categoryTreeOptions})),x=(0,o.useState)(),y=M()(x,2),w=y[0],b=y[1],k=(0,o.useState)([]),j=M()(k,2),S=j[0],Z=j[1],C=(0,o.useState)(!1),U=M()(C,2),A=U[0],I=U[1],T=(0,o.useState)(""),E=M()(T,2),q=E[0],O=E[1],L=(0,o.useState)(!1),Y=M()(L,2),V=Y[0],H=Y[1],J=(0,o.useState)(""),Q=M()(J,2),X=(Q[0],Q[1]),K=function(e){return e.filter((function(e){return e&&""!==e.trim()}))},G=function(){var e=v()(h()().mark((function e(){var t,n,r;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,H(!0),e.next=4,u.validateFields();case 4:t=e.sent,!(n=t.url)||n.startsWith("http://")||n.startsWith("https://")||(n="https://".concat(n)),r=f()(f()({},t),{},{url:n,categoryUid:w,tagList:K(S),kbUid:null==c?void 0:c.uid,orgUid:null==d?void 0:d.uid}),console.log("submit",r),i(r),e.next=16;break;case 12:e.prev=12,e.t0=e.catch(0),console.error("表单校验失败:",e.t0),fe.ZP.error("请检查表单填写是否正确");case 16:return e.prev=16,H(!1),e.finish(16);case 19:case"end":return e.stop()}}),e,null,[[0,12,16,19]])})));return function(){return e.apply(this,arguments)}}(),_=function(){var e=q.trim();e&&!S.includes(e)&&Z([].concat(ve()(S),[e])),I(!1),O("")},$=function(){I(!1),O("")};return(0,o.useEffect)((function(){if(t)u.setFieldsValue({uid:null==n?void 0:n.uid,title:null==n?void 0:n.title,url:null==n?void 0:n.url,content:null==n?void 0:n.content,description:null==n?void 0:n.description,categoryUid:null==n?void 0:n.categoryUid}),b(null==n?void 0:n.categoryUid),Z(K((null==n?void 0:n.tagList)||[]));else{u.setFieldsValue({title:"",url:"",content:"",description:""});var e=function e(t){var n,r=g()(t||[]);try{for(r.s();!(n=r.n()).done;){var s=n.value;if(s.key!==a.zBg)return s.key;var o=e(s.children||[]);if(o)return o}}catch(e){r.e(e)}finally{r.f()}return""}(m||[]);if(e)u.setFieldValue("categoryUid",e),b(e);else if(p&&p.length>0){var r=p[0].value;u.setFieldValue("categoryUid",r),b(r)}Z([]),I(!1),O("")}}),[t,n,u,p,m]),(0,B.jsx)(B.Fragment,{children:(0,B.jsx)(D.Z,{title:t?"编辑网页":"添加网页",onClose:s,open:r,width:600,extra:(0,B.jsxs)(R.Z,{children:[(0,B.jsx)(z.ZP,{onClick:s,children:"取消"}),(0,B.jsx)(z.ZP,{type:"primary",onClick:G,loading:V,children:"提交"})]}),footer:null,children:(0,B.jsxs)(Ue.A,{form:u,name:"webpageForm",submitter:!1,children:[(0,B.jsx)(gt.Z,{label:"分类",name:"categoryUid",rules:[{required:!0,message:"请选择分类"}],fieldProps:{treeData:function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return t.filter((function(e){return e.key!==a.zBg})).map((function(t){return f()(f()({},t),{},{children:e(t.children)})}))}(m||[]),allowClear:!0,showSearch:!0,placeholder:"请选择分类",treeDefaultExpandAll:!1,onChange:function(e){console.log("webpage category selected ".concat(e)),b(e)},fieldNames:{label:"title",value:"key",children:"children"}}}),(0,B.jsx)(Ie.Z,{label:"名称",name:"title",rules:[{required:!0,message:"请输入网页名称"}],placeholder:"请输入网页名称"}),(0,B.jsx)(Ie.Z,{label:"URL",name:"url",rules:[{required:!0,message:"请输入网页地址"},{pattern:/^(https?:\/\/)?([\da-z.-]+)\.([a-z.]{2,6})([/\w .-]*)*\/?$/,message:"请输入有效的网址"}],placeholder:"请输入网址,例如:www.example.com",fieldProps:{addonAfter:(0,B.jsx)(z.ZP,{type:"link",onClick:function(){var e=u.getFieldValue("url");if(e){var t=e;e.startsWith("http://")||e.startsWith("https://")||(t="https://".concat(e)),X(t),window.open(t,"_blank")}else fe.ZP.warning("请输入网址")},children:"预览"})},tooltip:"支持 http 或 https 开头的网址"}),t&&(0,B.jsx)(Te.Z,{label:"内容",name:"content",placeholder:"网页内容",fieldProps:{maxLength:1e4,showCount:!0,rows:8},tooltip:"网页的文本内容,用于知识库检索"}),(0,B.jsx)(Ue.A.Item,{label:"标签",name:"tagList",tooltip:"为网页添加标签,便于分类和检索",children:(0,B.jsxs)("div",{style:{minHeight:"32px"},children:[(0,B.jsx)(R.Z,{wrap:!0,style:{marginBottom:8},children:K(S).map((function(e,t){return(0,B.jsx)(re.Z,{closable:!0,color:"blue",onClose:function(){return t=e,void Z(K(S.filter((function(e){return e!==t}))));var t},style:{marginBottom:4},children:e},t)}))}),A?(0,B.jsxs)(R.Z.Compact,{style:{display:"flex",alignItems:"center"},children:[(0,B.jsx)(Ee.Z,{value:q,onChange:function(e){O(e.target.value)},onKeyDown:function(e){"Enter"===e.key?_():"Escape"===e.key&&$()},placeholder:"输入标签名称",size:"small",style:{width:"120px"},autoFocus:!0}),(0,B.jsx)(z.ZP,{type:"primary",size:"small",icon:(0,B.jsx)(Fe.Z,{}),onClick:_,disabled:!q.trim(),children:"保存"}),(0,B.jsx)(z.ZP,{size:"small",icon:(0,B.jsx)(Pe.Z,{}),onClick:$,children:"取消"})]}):(0,B.jsx)(z.ZP,{type:"dashed",onClick:function(){I(!0),O("")},icon:(0,B.jsx)(W.Z,{}),size:"small",style:{height:"24px"},children:"添加标签"})]})}),(0,B.jsx)(Te.Z,{label:"描述",name:"description",placeholder:"请输入网页描述",fieldProps:{maxLength:500,showCount:!0}})]})})})},kn=["current","pageSize"],jn=function(){var e=(0,l.useIntl)(),t=(0,E.Z)().translateString,n=(0,o.useRef)(),r=(0,o.useState)(1),s=M()(r,2),i=s[0],u=s[1],d=(0,o.useState)(10),p=M()(d,2),m=p[0],x=p[1],y=(0,P.u)((function(e){return e.currentOrg})),b=(0,F.j)((function(e){return e.currentKbase})),k=(0,N.v)((function(e){return e.currentCategory})),j=(0,N.v)((function(e){return e.categorySelectOptions})),S=(0,o.useState)(!1),Z=M()(S,2),C=Z[0],U=Z[1],A=(0,o.useState)({}),I=M()(A,2),T=I[0],q=I[1],D=(0,o.useState)(!1),R=M()(D,2),L=R[0],Y=R[1],V=te.Z.useModal(),H=M()(V,2),J=(H[0],H[1]),Q=(0,o.useState)(!1),X=M()(Q,2),G=X[0],ie=X[1],ue=(0,o.useState)(!1),ce=M()(ue,2),de=ce[0],fe=ce[1],pe=(0,o.useState)({}),ge=M()(pe,2),xe=ge[0],ve=ge[1],ye=(0,o.useState)(0),Me=M()(ye,2),we=Me[0],be=Me[1],ke=(0,o.useState)([]),je=M()(ke,2),Se=je[0],Ze=je[1],Ue=(0,o.useState)([]),Ae=M()(Ue,2),Ie=Ae[0],Te=Ae[1],Ee=function(){var t=v()(h()().mark((function t(r){var a,s,o;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(r.content&&""!==r.content.trim()){t.next=3;break}return w.yw.warning(e.formatMessage({id:"content.empty.crawl.first",defaultMessage:"内容为空,请先抓取内容"})),t.abrupt("return");case 3:return w.yw.loading(e.formatMessage({id:"updating.index",defaultMessage:"正在更新索引..."})),t.prev=4,a={uid:r.uid},t.next=8,gn(a);case 8:s=t.sent,console.log("更新索引响应:",s,a),w.yw.destroy(),200===s.code?(w.yw.success(e.formatMessage({id:"update.index.success",defaultMessage:"索引更新已触发"})),null===(o=n.current)||void 0===o||o.reload()):w.yw.error(s.message||e.formatMessage({id:"update.index.failed",defaultMessage:"索引更新失败"})),t.next=19;break;case 14:t.prev=14,t.t0=t.catch(4),w.yw.destroy(),w.yw.error(e.formatMessage({id:"update.index.error",defaultMessage:"更新索引过程发生错误"})),console.error("更新索引错误:",t.t0);case 19:case"end":return t.stop()}}),t,null,[[4,14]])})));return function(e){return t.apply(this,arguments)}}(),Fe=function(){var t=v()(h()().mark((function t(r){var a,s,o;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(r.content&&""!==r.content.trim()){t.next=3;break}return w.yw.warning(e.formatMessage({id:"content.empty.crawl.first",defaultMessage:"内容为空,请先抓取内容"})),t.abrupt("return");case 3:return w.yw.loading(e.formatMessage({id:"updating.vector.index",defaultMessage:"正在更新向量索引..."})),t.prev=4,a={uid:r.uid},t.next=8,hn(a);case 8:s=t.sent,console.log("更新向量索引响应:",s,a),w.yw.destroy(),200===s.code?(w.yw.success(e.formatMessage({id:"update.vector.index.success",defaultMessage:"向量索引更新已触发"})),null===(o=n.current)||void 0===o||o.reload()):w.yw.error(s.message||e.formatMessage({id:"update.vector.index.failed",defaultMessage:"向量索引更新失败"})),t.next=19;break;case 14:t.prev=14,t.t0=t.catch(4),w.yw.destroy(),w.yw.error(e.formatMessage({id:"update.vector.index.error",defaultMessage:"更新向量索引过程发生错误"})),console.error("更新向量索引错误:",t.t0);case 19:case"end":return t.stop()}}),t,null,[[4,14]])})));return function(e){return t.apply(this,arguments)}}(),Pe=function(){var t=v()(h()().mark((function t(r){var a,s,o;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return w.yw.loading(e.formatMessage({id:"crawling.content",defaultMessage:"正在抓取网页内容..."})),t.prev=1,a={uid:r.uid},t.next=5,fn(a);case 5:s=t.sent,console.log("抓取网页内容响应:",s,a),w.yw.destroy(),200===s.code?(w.yw.success(e.formatMessage({id:"crawl.content.success",defaultMessage:"网页内容抓取已触发"})),null===(o=n.current)||void 0===o||o.reload()):w.yw.error(s.message||e.formatMessage({id:"crawl.content.failed",defaultMessage:"网页内容抓取失败"})),t.next=16;break;case 11:t.prev=11,t.t0=t.catch(1),w.yw.destroy(),w.yw.error(e.formatMessage({id:"crawl.content.error",defaultMessage:"抓取网页内容过程发生错误"})),console.error("抓取网页内容错误:",t.t0);case 16:case"end":return t.stop()}}),t,null,[[1,11]])})));return function(e){return t.apply(this,arguments)}}(),qe=[{dataIndex:"index",valueType:"indexBorder",width:48,fixed:"left"},{title:(0,B.jsx)(l.FormattedMessage,{id:"name",defaultMessage:"Name"}),dataIndex:"title",copyable:!0,tooltip:e.formatMessage({id:"webpage.name.tooltip",defaultMessage:"网页的名称或标识"}),width:200,fixed:"left",render:function(e,t){return(0,B.jsxs)("div",{style:{display:"flex",alignItems:"center"},children:[(0,B.jsx)("span",{style:{marginRight:4},children:null==t?void 0:t.title}),(0,B.jsx)(ne.Z.Text,{copyable:{text:(null==t?void 0:t.title)||""}})]})}},{title:(0,B.jsx)(l.FormattedMessage,{id:"url",defaultMessage:"Url"}),dataIndex:"url",hideInSearch:!0,copyable:!0,width:250,tooltip:e.formatMessage({id:"webpage.url.tooltip",defaultMessage:"网页的URL地址,用于爬取内容"}),render:function(e,t){return(0,B.jsxs)("div",{style:{display:"flex",alignItems:"center"},children:[(0,B.jsx)("span",{style:{marginRight:4},children:null==t?void 0:t.url}),(0,B.jsx)(ne.Z.Text,{copyable:{text:(null==t?void 0:t.url)||""}})]})}},{title:(0,B.jsx)(l.FormattedMessage,{id:"category",defaultMessage:"Category"}),dataIndex:"categoryUid",hideInSearch:!0,width:120,tooltip:e.formatMessage({id:"webpage.category.tooltip",defaultMessage:"网页内容所属的分类"}),render:function(e,t){var n=j.find((function(e){return e.value===(null==t?void 0:t.categoryUid)}));return null!=n&&n.label?(0,B.jsx)(re.Z,{color:"blue",children:n.label}):(0,B.jsx)(re.Z,{color:"default",children:"未分类"})}},{title:(0,B.jsx)(l.FormattedMessage,{id:"status",defaultMessage:"Status"}),dataIndex:"status",hideInSearch:!0,width:120,tooltip:e.formatMessage({id:"webpage.status.tooltip",defaultMessage:"网页索引状态"}),render:function(t,n){var r=n.elasticStatus||"",a="";return"SUCCESS"===r.toUpperCase()?a="success":"ERROR"===r.toUpperCase()||"FAILED"===r.toUpperCase()?a="error":"NEW"===r.toUpperCase()||"PENDING"===r.toUpperCase()?a="default":"PROCESSING"===r.toUpperCase()&&(a="processing"),(0,B.jsx)(re.Z,{color:a,children:e.formatMessage({id:"llm.status.".concat(r.toLowerCase()),defaultMessage:r})})}},{title:(0,B.jsx)(l.FormattedMessage,{id:"vectorStatus",defaultMessage:"Vector Status"}),dataIndex:"vectorStatus",hideInSearch:!0,width:150,tooltip:e.formatMessage({id:"webpage.vectorStatus.tooltip",defaultMessage:"网页内容向量化状态"}),render:function(t,n){var r=n.vectorStatus||"",a="";return"SUCCESS"===r.toUpperCase()?a="success":"ERROR"===r.toUpperCase()||"FAILED"===r.toUpperCase()?a="error":"NEW"===r.toUpperCase()||"PENDING"===r.toUpperCase()?a="default":"PROCESSING"===r.toUpperCase()&&(a="warning"),r?(0,B.jsx)(re.Z,{color:a,icon:(0,B.jsx)(ot.Z,{}),children:e.formatMessage({id:"llm.vectorStatus.".concat(r.toLowerCase()),defaultMessage:r})}):"-"}},{title:(0,B.jsx)(l.FormattedMessage,{id:"description",defaultMessage:"Description"}),dataIndex:"description",hideInSearch:!0,ellipsis:!0,width:200,tooltip:e.formatMessage({id:"webpage.description.tooltip",defaultMessage:"网页的简要描述信息"})},{title:(0,B.jsx)(l.FormattedMessage,{id:"tags",defaultMessage:"Tags"}),dataIndex:"tagList",hideInSearch:!0,width:150,tooltip:e.formatMessage({id:"webpage.tags.tooltip",defaultMessage:"网页的标签列表"}),render:function(e,t){if(null==t||!t.tagList||0===(null==t?void 0:t.tagList.length))return"-";var n=(null==t?void 0:t.tagList.length)>3,r=null==t?void 0:t.tagList.slice(0,3);return(0,B.jsxs)("div",{children:[r.map((function(e,t){return(0,B.jsx)(re.Z,{color:"green",style:{marginBottom:4},children:e},t)})),n&&(0,B.jsxs)(re.Z,{color:"orange",children:["+",(null==t?void 0:t.tagList.length)-3]})]})}},{title:(0,B.jsx)(l.FormattedMessage,{id:"content",defaultMessage:"Content"}),dataIndex:"content",hideInSearch:!0,ellipsis:!0,copyable:!0,width:300,tooltip:e.formatMessage({id:"webpage.content.tooltip",defaultMessage:"爬取的网页内容摘要"}),render:function(t,n){var r=n.content||"-",a=function(){var t=v()(h()().mark((function t(n){return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,(0,Rt.TE)(n);case 2:t.sent.success?w.yw.success(e.formatMessage({id:"copy.success",defaultMessage:"复制成功"})):w.yw.error(e.formatMessage({id:"copy.failed",defaultMessage:"复制失败"}));case 4:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}();return(0,B.jsx)(Dt.Z,{content:(0,B.jsxs)("div",{children:[(0,B.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"8px"},children:[(0,B.jsx)("span",{children:e.formatMessage({id:"webpage.content.preview",defaultMessage:"网页内容预览"})}),(0,B.jsx)(z.ZP,{type:"text",icon:(0,B.jsx)(Bt.Z,{}),onClick:function(e){e.stopPropagation(),a(r)},title:e.formatMessage({id:"copy.to.clipboard",defaultMessage:"复制到剪贴板"})})]}),(0,B.jsx)("div",{style:{maxWidth:"600px",maxHeight:"400px",overflow:"auto",whiteSpace:"pre-wrap"},children:r})]}),title:e.formatMessage({id:"webpage.content",defaultMessage:"网页内容"}),trigger:"hover",overlayStyle:{maxWidth:"800px"},children:(0,B.jsx)("span",{style:{cursor:"pointer"},children:r})})}},{title:(0,B.jsx)(l.FormattedMessage,{id:"createdAt",defaultMessage:"createdAt"}),key:"createdAt",dataIndex:"createdAt",sorter:!0,hideInSearch:!0,width:180,tooltip:e.formatMessage({id:"webpage.createdAt.tooltip",defaultMessage:"网页记录创建的时间"}),render:function(e,t,n,r){return le()(t.createdAt).format("YYYY-MM-DD HH:mm:ss")}},{title:(0,B.jsx)(l.FormattedMessage,{id:"updatedAt",defaultMessage:"updatedAt"}),key:"updatedAt",dataIndex:"updatedAt",sorter:!0,hideInSearch:!0,width:180,tooltip:e.formatMessage({id:"webpage.updatedAt.tooltip",defaultMessage:"网页记录更新的时间"}),render:function(e,t){return t.updatedAt?le()(t.updatedAt).format("YYYY-MM-DD HH:mm:ss"):"-"}}],Oe=[].concat(qe,[{title:e.formatMessage({id:"actions",defaultMessage:"Actions"}),valueType:"option",key:"option",width:220,fixed:"right",render:function(t,n,r,a){return[(0,B.jsx)("a",{onClick:function(){q(n),Y(!0),U(!0)},children:e.formatMessage({id:"edit",defaultMessage:"Edit"})},"editable"),(0,B.jsx)(se.Z,{title:e.formatMessage({id:"deleteTip"}),description:"".concat(e.formatMessage({id:"deleteAffirm",defaultMessage:"Delete"}),"【").concat(n.title,"】?"),onConfirm:function(){return De(n)},okText:e.formatMessage({id:"ok"}),cancelText:e.formatMessage({id:"cancel"}),icon:(0,B.jsx)(it.Z,{style:{color:"red"}}),children:(0,B.jsx)(z.ZP,{type:"link",danger:!0,children:e.formatMessage({id:"delete",defaultMessage:"Delete"})},"delete")},"delete"),(0,B.jsx)(oe.Z,{menu:{items:[{key:"crawlContent",icon:(0,B.jsx)(dt.Z,{}),label:e.formatMessage({id:"crawl.content",defaultMessage:"抓取内容"}),onClick:function(){return Pe(n)}},{key:"updateIndex",icon:(0,B.jsx)(ot.Z,{}),label:e.formatMessage({id:"update.index",defaultMessage:"更新索引"}),onClick:function(){return Ee(n)}},{key:"updateVectorIndex",icon:(0,B.jsx)(ot.Z,{}),label:e.formatMessage({id:"update.vector.index",defaultMessage:"更新向量索引"}),onClick:function(){return Fe(n)}}]},placement:"bottomRight",children:(0,B.jsx)(ae.Z,{title:e.formatMessage({id:"content.operations",defaultMessage:"内容操作"}),children:(0,B.jsxs)(z.ZP,{size:"small",type:"link",children:[e.formatMessage({id:"content.operations",defaultMessage:"内容操作"}),(0,B.jsx)($.Z,{})]})})},"indexOperations")]}}]);(0,o.useEffect)((function(){var e;null==n||null===(e=n.current)||void 0===e||e.reload()}),[b,k]);var De=function(){var t=v()(h()().mark((function t(r){var a;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,cn(r);case 2:200===(a=t.sent).code?(w.yw.success(e.formatMessage({id:"delete.success",defaultMessage:"Delete success"})),n.current.reload()):w.yw.error(a.message);case 4:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),Re=function(){var e=v()(h()().mark((function e(t){var r,a;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,sn(t);case 2:200===(r=e.sent).code?(null===(a=n.current)||void 0===a||a.reload(),U(!1)):w.yw.error(r.message);case 4:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),ze=function(){var e=v()(h()().mark((function e(t){var r,a;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t.uid=null==T?void 0:T.uid,e.next=3,ln(t);case 3:200===(r=e.sent).code?(null===(a=n.current)||void 0===a||a.reload(),U(!1)):w.yw.error(r.message);case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),Le=function(){G?de?w.yw.info("正在检查模型状态,请稍后再试"):(U(!0),Y(!1),q({})):te.Z.warning({title:"嵌入式模型缺失",content:"请首先拉取Embedding向量模型bge-m3:latest,用于知识库向量检索",okText:"确定"})},Be=function(){var t=v()(h()().mark((function t(){var r,a,s,o,i,l;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(0!==Ie.length){t.next=3;break}return w.yw.warning(e.formatMessage({id:"batch.delete.noselection",defaultMessage:"请选择要删除的项目"})),t.abrupt("return");case 3:w.yw.loading(e.formatMessage({id:"deleting",defaultMessage:"正在删除..."})),a=0,s=0,o=g()(Ie),t.prev=7,o.s();case 9:if((i=o.n()).done){t.next=23;break}return l=i.value,t.prev=11,t.next=14,cn(l);case 14:200===t.sent.code?a++:s++,t.next=21;break;case 18:t.prev=18,t.t0=t.catch(11),s++;case 21:t.next=9;break;case 23:t.next=28;break;case 25:t.prev=25,t.t1=t.catch(7),o.e(t.t1);case 28:return t.prev=28,o.f(),t.finish(28);case 31:w.yw.destroy(),0===s?w.yw.success(e.formatMessage({id:"batch.delete.success",defaultMessage:"成功删除 {count} 项"},{count:a})):w.yw.warning(e.formatMessage({id:"batch.delete.partial",defaultMessage:"删除了 {success} 项,但有 {fail} 项删除失败"},{success:a,fail:s})),Ze([]),Te([]),null===(r=n.current)||void 0===r||r.reloadAndRest();case 36:case"end":return t.stop()}}),t,null,[[7,25,28,31],[11,18]])})));return function(){return t.apply(this,arguments)}}(),Ye=function(){var t=v()(h()().mark((function t(){var r,a,s,o,i,l,u;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(0!==Ie.length){t.next=3;break}return w.yw.warning(e.formatMessage({id:"batch.update.noselection",defaultMessage:"请选择要更新的项目"})),t.abrupt("return");case 3:if(a=Ie.filter((function(e){return!e.content||""===e.content.trim()})),!(a.length>0)){t.next=7;break}return w.yw.warning(e.formatMessage({id:"content.empty.crawl.first",defaultMessage:"内容为空,请先抓取内容"})+" (".concat(a.length,"条记录)")),t.abrupt("return");case 7:w.yw.loading(e.formatMessage({id:"updating.index",defaultMessage:"正在更新索引..."})),s=0,o=0,i=g()(Ie),t.prev=11,i.s();case 13:if((l=i.n()).done){t.next=27;break}return u=l.value,t.prev=15,t.next=18,gn({uid:u.uid});case 18:200===t.sent.code?s++:o++,t.next=25;break;case 22:t.prev=22,t.t0=t.catch(15),o++;case 25:t.next=13;break;case 27:t.next=32;break;case 29:t.prev=29,t.t1=t.catch(11),i.e(t.t1);case 32:return t.prev=32,i.f(),t.finish(32);case 35:w.yw.destroy(),0===o?w.yw.success(e.formatMessage({id:"batch.update.index.success"},{defaultMessage:"成功更新 ".concat(s," 条记录的索引")})):w.yw.error(e.formatMessage({id:"batch.update.index.partial"},{defaultMessage:"更新了 ".concat(s," 条记录的索引,").concat(o," 条记录更新失败")})),null===(r=n.current)||void 0===r||r.reload();case 38:case"end":return t.stop()}}),t,null,[[11,29,32,35],[15,22]])})));return function(){return t.apply(this,arguments)}}(),Ne=function(){var t=v()(h()().mark((function t(){var r,a,s,o,i,l,u;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(0!==Ie.length){t.next=3;break}return w.yw.warning(e.formatMessage({id:"batch.update.noselection",defaultMessage:"请选择要更新的项目"})),t.abrupt("return");case 3:if(a=Ie.filter((function(e){return!e.content||""===e.content.trim()})),!(a.length>0)){t.next=7;break}return w.yw.warning(e.formatMessage({id:"content.empty.crawl.first",defaultMessage:"内容为空,请先抓取内容"})+" (".concat(a.length,"条记录)")),t.abrupt("return");case 7:w.yw.loading(e.formatMessage({id:"updating.vector.index",defaultMessage:"正在更新向量索引..."})),s=0,o=0,i=g()(Ie),t.prev=11,i.s();case 13:if((l=i.n()).done){t.next=27;break}return u=l.value,t.prev=15,t.next=18,hn({uid:u.uid});case 18:200===t.sent.code?s++:o++,t.next=25;break;case 22:t.prev=22,t.t0=t.catch(15),o++;case 25:t.next=13;break;case 27:t.next=32;break;case 29:t.prev=29,t.t1=t.catch(11),i.e(t.t1);case 32:return t.prev=32,i.f(),t.finish(32);case 35:w.yw.destroy(),0===o?w.yw.success(e.formatMessage({id:"batch.update.vector.index.success"},{defaultMessage:"成功更新 ".concat(s," 条记录的向量索引")})):w.yw.error(e.formatMessage({id:"batch.update.vector.index.partial"},{defaultMessage:"更新了 ".concat(s," 条记录的向量索引,").concat(o," 条记录更新失败")})),null===(r=n.current)||void 0===r||r.reload();case 38:case"end":return t.stop()}}),t,null,[[11,29,32,35],[15,22]])})));return function(){return t.apply(this,arguments)}}(),Ve=function(){var t=v()(h()().mark((function t(){return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:te.Z.confirm({title:e.formatMessage({id:"updateAll.index.confirm.title",defaultMessage:"更新全部索引确认"}),content:e.formatMessage({id:"updateAll.index.confirm.content",defaultMessage:"确定要更新所有记录的索引吗?此操作可能需要一些时间。"}),onOk:function(){var t=v()(h()().mark((function t(){var r,s;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return w.yw.loading(e.formatMessage({id:"updating.all.index",defaultMessage:"正在更新所有索引..."})),t.prev=1,t.next=4,vn({kbUid:null==b?void 0:b.uid,categoryUid:(null==k?void 0:k.uid)===a.zBg?"":null==k?void 0:k.uid,orgUid:null==y?void 0:y.uid});case 4:r=t.sent,w.yw.destroy(),200===r.code?(w.yw.success(e.formatMessage({id:"update.all.index.success",defaultMessage:"所有索引更新请求已发送"})),null===(s=n.current)||void 0===s||s.reload()):w.yw.error(r.message||e.formatMessage({id:"update.all.index.failed",defaultMessage:"所有索引更新请求失败"})),t.next=14;break;case 9:t.prev=9,t.t0=t.catch(1),w.yw.destroy(),w.yw.error(e.formatMessage({id:"update.all.index.error",defaultMessage:"更新所有索引过程发生错误"})),console.error("更新所有索引错误:",t.t0);case 14:case"end":return t.stop()}}),t,null,[[1,9]])})));return function(){return t.apply(this,arguments)}}()});case 1:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}(),He=function(){var t=v()(h()().mark((function t(){return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:te.Z.confirm({title:e.formatMessage({id:"updateAll.vector.index.confirm.title",defaultMessage:"更新全部向量索引确认"}),content:e.formatMessage({id:"updateAll.vector.index.confirm.content",defaultMessage:"确定要更新所有记录的向量索引吗?此操作可能需要一些时间。"}),onOk:function(){var t=v()(h()().mark((function t(){var r,s;return h()().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return w.yw.loading(e.formatMessage({id:"updating.all.vector.index",defaultMessage:"正在更新所有向量索引..."})),t.prev=1,t.next=4,Mn({kbUid:null==b?void 0:b.uid,categoryUid:(null==k?void 0:k.uid)===a.zBg?"":null==k?void 0:k.uid,orgUid:null==y?void 0:y.uid});case 4:r=t.sent,w.yw.destroy(),200===r.code?(w.yw.success(e.formatMessage({id:"update.all.vector.index.success",defaultMessage:"所有向量索引更新请求已发送"})),null===(s=n.current)||void 0===s||s.reload()):w.yw.error(r.message||e.formatMessage({id:"update.all.vector.index.failed",defaultMessage:"所有向量索引更新请求失败"})),t.next=14;break;case 9:t.prev=9,t.t0=t.catch(1),w.yw.destroy(),w.yw.error(e.formatMessage({id:"update.all.vector.index.error",defaultMessage:"更新所有向量索引过程发生错误"})),console.error("更新所有向量索引错误:",t.t0);case 14:case"end":return t.stop()}}),t,null,[[1,9]])})));return function(){return t.apply(this,arguments)}}()});case 1:case"end":return t.stop()}}),t)})));return function(){return t.apply(this,arguments)}}(),Je=function(){var e=v()(h()().mark((function e(t,n,r){var s,o;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:s=localStorage.getItem(a.LA8),o=f()({categoryUid:(null==k?void 0:k.uid)===a.zBg?"":null==k?void 0:k.uid,kbUid:null==b?void 0:b.uid,orgUid:(null==y?void 0:y.uid)||"",accessToken:s||"",exportType:t},xe),"current"===t?(o.pageNumber=i-1,o.pageSize=m):"all"===t?(o.pageNumber=0,o.pageSize=1e3):"range"===t&&void 0!==n&&void 0!==r&&(o.pageNumber=n,o.pageSize=r),window.open((0,O.kG)()+"/api/v1/webpage/export?"+new URLSearchParams(Object.entries(o).reduce((function(e,t){var n=M()(t,2),r=n[0],a=n[1];return e[r]=String(a),e}),{})).toString());case 4:case"end":return e.stop()}}),e)})));return function(t,n,r){return e.apply(this,arguments)}}(),Qe=function(e){for(var t=[],n=1e3,r=Math.ceil(e/n),a=function(){var r=s,a=s*n+1,o=Math.min((s+1)*n,e);t.push({key:"export-".concat(s),label:"".concat(a,"-").concat(o," (").concat(o-a+1,"条)"),onClick:function(){return Je("range",r,n)}})},s=0;s<r;s++)a();return t};return(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(he,{onModelStatusChange:function(e){ie(e),fe(!1)}}),(0,B.jsx)(ee.Z,{columns:Oe,actionRef:n,cardBordered:!0,scroll:{x:2200},rowSelection:{selectedRowKeys:Se,onChange:function(e,t){Ze(e),Te(t)}},request:function(){var e=v()(h()().mark((function e(t,n,r){var s,o,i,l,d,p,g,m;return h()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return s=t.current,o=t.pageSize,i=c()(t,kn),u(s),x(o),ve(i),l=void 0,d=void 0,n&&Object.keys(n).length>0&&(p=Object.keys(n)[0],l=p,d="ascend"===n[p]?"ascend":"descend"),g=f()(f()({pageNumber:s-1,pageSize:o,categoryUid:(null==k?void 0:k.uid)===a.zBg?"":null==k?void 0:k.uid,kbUid:null==b?void 0:b.uid,orgUid:null==y?void 0:y.uid},i),{},{sortBy:l,sortDirection:d}),e.next=10,rn(g);case 10:return m=e.sent,console.log("queryWebpagesByOrg: ",m,g),200===m.code?be(m.data.totalElements):w.yw.error(m.message),e.abrupt("return",{data:m.data.content,success:!0,total:m.data.totalElements});case 14:case"end":return e.stop()}}),e)})));return function(t,n,r){return e.apply(this,arguments)}}(),editable:{type:"multiple"},rowKey:"uid",search:{labelWidth:"auto"},pagination:{showQuickJumper:!0,onChange:function(e,t){u(e),x(t)}},dateFormatter:"string",headerTitle:t(null==b?void 0:b.name)+" - 网页爬虫",tooltip:de?"正在检查嵌入式模型...":G?"添加网页后会自动爬取内容并添加到知识库":"请首先拉取Embedding向量模型bge-m3:latest",toolBarRender:function(){var t=[(0,B.jsx)(z.ZP,{type:"primary",icon:(0,B.jsx)(W.Z,{}),onClick:function(){return me(Le,G,de)},disabled:de||!G,children:e.formatMessage({id:"create",defaultMessage:"Create"})},"create"),(0,B.jsx)(Ce,{currentKbase:b,currentOrg:y,embeddingModelExists:G,checkingEmbeddingModel:de||!G},"chat")],n=[];Se.length>0&&n.push({key:"batchDelete",icon:(0,B.jsx)(K.Z,{}),danger:!0,label:e.formatMessage({id:"batch.delete",defaultMessage:"批量删除"})+" (".concat(Se.length,")"),onClick:function(){}},{key:"batchUpdateIndex",icon:(0,B.jsx)(ot.Z,{}),label:e.formatMessage({id:"batch.update.index",defaultMessage:"更新索引"})+" (".concat(Se.length,")"),onClick:Ye},{key:"batchUpdateVectorIndex",icon:(0,B.jsx)(ot.Z,{}),label:e.formatMessage({id:"batch.update.vector.index",defaultMessage:"更新向量索引"})+" (".concat(Se.length,")"),onClick:Ne}),n.push({key:"updateAllIndex",icon:(0,B.jsx)(ot.Z,{}),label:e.formatMessage({id:"updateAll.index",defaultMessage:"更新所有索引"}),onClick:Ve},{key:"updateAllVectorIndex",icon:(0,B.jsx)(ot.Z,{}),label:e.formatMessage({id:"updateAll.vector.index",defaultMessage:"更新所有向量索引"}),onClick:He});var r=[{key:"export-current",icon:(0,B.jsx)(_.Z,{}),label:e.formatMessage({id:"export.current",defaultMessage:"导出当前页"}),onClick:function(){return Je("current")}}];return we>0&&(we<=1e3?r.push({key:"export-all",icon:(0,B.jsx)(_.Z,{}),label:e.formatMessage({id:"export.all",defaultMessage:"导出全部"})+" (".concat(we,"条)"),onClick:function(){return Je("all")}}):r.push({key:"export-range",icon:(0,B.jsx)(_.Z,{}),label:e.formatMessage({id:"export.range",defaultMessage:"分段导出"})+" (".concat(we,"条)"),children:Qe(we)})),t.push((0,B.jsx)(oe.Z,{menu:{items:r},placement:"bottom",children:(0,B.jsxs)(z.ZP,{type:"primary",icon:(0,B.jsx)(_.Z,{}),children:[e.formatMessage({id:"export.options",defaultMessage:"导出"}),(0,B.jsx)($.Z,{})]})},"exportDropdown")),n.length>0&&t.push((0,B.jsx)(se.Z,{title:e.formatMessage({id:"batch.deleteTip",defaultMessage:"批量删除确认"}),description:"".concat(e.formatMessage({id:"batch.deleteAffirm",defaultMessage:"确定要删除"})," ").concat(Se.length," ").concat(e.formatMessage({id:"items",defaultMessage:"项"}),"?"),onConfirm:Be,okText:e.formatMessage({id:"ok"}),cancelText:e.formatMessage({id:"cancel"}),icon:(0,B.jsx)(it.Z,{style:{color:"red"}}),disabled:0===Se.length,children:(0,B.jsx)(oe.Z,{menu:{items:n},placement:"bottom",children:(0,B.jsxs)(z.ZP,{type:Se.length>0?"primary":"default",danger:Se.length>0,children:[Se.length>0?e.formatMessage({id:"batch.operations",defaultMessage:"批量操作"})+" (".concat(Se.length,")"):e.formatMessage({id:"more.operations",defaultMessage:"更多操作"}),(0,B.jsx)($.Z,{})]})},"batchOperations")},"batchDeleteConfirm")),t}}),C&&(0,B.jsx)(bn,{isEdit:L,open:C,webpage:T,onClose:function(){U(!1)},onSubmit:function(e){L?ze(e):Re(e)}}),J]})};var Sn=n(74424),Zn=function(){var e=(0,l.useIntl)(),t=(0,Sn.Z)().contentStyle,n=(0,o.useMemo)((function(){var t=[{key:"faq",label:e.formatMessage({id:"pages.robot.kb.faq",defaultMessage:"Q&A"}),children:(0,B.jsx)(nn,{})}];return(0,O.OJ)()&&t.push({key:"text",label:e.formatMessage({id:"pages.robot.kb.text",defaultMessage:"Text"}),children:(0,B.jsx)(vt,{})},{key:"file",label:e.formatMessage({id:"pages.robot.kb.file",defaultMessage:"File"}),children:(0,B.jsx)(De,{})},{key:"split",label:e.formatMessage({id:"pages.robot.kb.split",defaultMessage:"Split"}),children:(0,B.jsx)(Nt,{})},{key:"webpage",label:e.formatMessage({id:"pages.robot.kb.webpage",defaultMessage:"Webpage Crawling"}),children:(0,B.jsx)(jn,{})}),t}),[e]);return(0,B.jsx)("div",{style:t,children:(0,B.jsx)(i.Z,{items:n})})},Cn=function(){return(0,B.jsx)("div",{children:(0,B.jsxs)(r.Z,{children:[(0,B.jsx)(r.Z.Panel,{defaultSize:"20%",min:"10%",max:"40%",children:(0,B.jsx)(s.Z,{type:a.QPQ})}),(0,B.jsx)(r.Z.Panel,{children:(0,B.jsx)(Zn,{})})]})})}},34599:function(e,t,n){n.d(t,{u:function(){return i}});var r=n(5488),a=n(16894),s=n(45034),o=n(47401),i=(0,a.Ue)()((0,s.mW)((0,s.tJ)((0,o.n)((function(e,t){return{currentOrg:{uid:"",name:"",description:""},setCurrentOrg:function(t){e({currentOrg:t})},deleteOrg:function(){return e({},!0)}}})),{name:r.IzN})))}}]); |