filecat
Version:
FileCat Server Manager
2 lines • 13.1 kB
JavaScript
/*! For license information please see 661.a2ef7762262fae92e102.js.LICENSE.txt */
;(self.webpackChunkfilecat=self.webpackChunkfilecat||[]).push([[10,661],{4777(e,t,n){function r(e){return r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(e)}function o(e,t,n){return(t=c(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,c(r.key),r)}}function i(e,t,n){return t&&a(e.prototype,t),n&&a(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function c(e){var t=function(e,t){if("object"!=r(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var o=n.call(e,t||"default");if("object"!=r(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==r(t)?t:t+""}function u(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}n.d(t,{Gd:()=>s,Mu:()=>v,aM:()=>l,jk:()=>m,qq:()=>f});var l=function(e){return e[e.close=0]="close",e[e.length=1]="length",e[e.forver=2]="forver",e}({}),s=i(function e(){u(this,e)}),f=i(function e(){u(this,e),o(this,"tool_error_max",50),o(this,"tool_call_max",300),o(this,"messages_show_max",100),o(this,"messages_current_max",100)}),m=(JSON.stringify({stream:!0,thinking:{type:"disabled"}}),function(e){return e.ffmpeg="ffmpeg",e.smartmontools="smartctl",e.ntfs_3g="ntfs-3g",e}({})),v=function(e){return e[e.auth=0]="auth",e[e.cmd=1]="cmd",e[e.cyc=2]="cyc",e[e.sys_env=3]="sys_env",e[e.private_sys_env=4]="private_sys_env",e}({})},306(e,t,n){n.r(t),n.d(t,{default:()=>M,getMessagesFromLocal:()=>T,learAllMessages:()=>I,pushMessageToLocal:()=>C,setMessagesToLocal:()=>N});var r=n(6540),o=n(4284),a=n(4299),i=n(9844),c=n(7952),u=n(5997),l=n(8247),s=n(3430),f=n(505),m=n(2042),v=n(2389),y=n(5907),d=n(3459),h=n(4777),p=n(7361),g=n(7767);function b(e){return function(e){if(Array.isArray(e))return j(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||A(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _(){var e,t,n="function"==typeof Symbol?Symbol:{},r=n.iterator||"@@iterator",o=n.toStringTag||"@@toStringTag";function a(n,r,o,a){var u=r&&r.prototype instanceof c?r:c,l=Object.create(u.prototype);return w(l,"_invoke",function(n,r,o){var a,c,u,l=0,s=o||[],f=!1,m={p:0,n:0,v:e,a:v,f:v.bind(e,4),d:function(t,n){return a=t,c=0,u=e,m.n=n,i}};function v(n,r){for(c=n,u=r,t=0;!f&&l&&!o&&t<s.length;t++){var o,a=s[t],v=m.p,y=a[2];n>3?(o=y===r)&&(u=a[(c=a[4])?5:(c=3,3)],a[4]=a[5]=e):a[0]<=v&&((o=n<2&&v<a[1])?(c=0,m.v=r,m.n=a[1]):v<y&&(o=n<3||a[0]>r||r>y)&&(a[4]=n,a[5]=r,m.n=y,c=0))}if(o||n>1)return i;throw f=!0,r}return function(o,s,y){if(l>1)throw TypeError("Generator is already running");for(f&&1===s&&v(s,y),c=s,u=y;(t=c<2?e:u)||!f;){a||(c?c<3?(c>1&&(m.n=-1),v(c,u)):m.n=u:m.v=u);try{if(l=2,a){if(c||(o="next"),t=a[o]){if(!(t=t.call(a,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,c<2&&(c=0)}else 1===c&&(t=a.return)&&t.call(a),c<2&&(u=TypeError("The iterator does not provide a '"+o+"' method"),c=1);a=e}else if((t=(f=m.n<0)?u:n.call(r,m))!==i)break}catch(t){a=e,c=1,u=t}finally{l=1}}return{value:t,done:f}}}(n,o,a),!0),l}var i={};function c(){}function u(){}function l(){}t=Object.getPrototypeOf;var s=[][r]?t(t([][r]())):(w(t={},r,function(){return this}),t),f=l.prototype=c.prototype=Object.create(s);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,l):(e.__proto__=l,w(e,o,"GeneratorFunction")),e.prototype=Object.create(f),e}return u.prototype=l,w(f,"constructor",l),w(l,"constructor",u),u.displayName="GeneratorFunction",w(l,o,"GeneratorFunction"),w(f),w(f,o,"Generator"),w(f,r,function(){return this}),w(f,"toString",function(){return"[object Generator]"}),(_=function(){return{w:a,m}})()}function w(e,t,n,r){var o=Object.defineProperty;try{o({},"",{})}catch(e){o=0}w=function(e,t,n,r){function a(t,n){w(e,t,function(e){return this._invoke(t,n,e)})}t?o?o(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(a("next",0),a("throw",1),a("return",2))},w(e,t,n,r)}function S(e,t,n,r,o,a,i){try{var c=e[a](i),u=c.value}catch(e){return void n(e)}c.done?t(u):Promise.resolve(u).then(r,o)}function x(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function i(e){S(a,r,o,i,c,"next",e)}function c(e){S(a,r,o,i,c,"throw",e)}i(void 0)})}}function E(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a,i,c=[],u=!0,l=!1;try{if(a=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=a.call(n)).done)&&(c.push(r.value),c.length!==t);u=!0);}catch(e){l=!0,o=e}finally{try{if(!u&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(l)throw o}}return c}}(e,t)||A(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function A(e,t){if(e){if("string"==typeof e)return j(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?j(e,t):void 0}}function j(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}var O="chat_messages";function k(e){var t=e.onDelete,n=e.onCopy,o=(0,v.Bd)().t;return r.createElement("div",{className:"message-actions"},r.createElement("button",{onClick:t},o("删除")),r.createElement("button",{onClick:n},o("复制")))}function T(){try{var e=localStorage.getItem(O);if(!e)return[];var t=JSON.parse(e);return Array.isArray(t)?t:[]}catch(e){return console.error("读取 messages 失败",e),[]}}function N(e){try{var t=e.slice(-200);localStorage.setItem(O,JSON.stringify(t))}catch(e){console.error("保存 messages 到 localStorage 失败",e)}}function C(e,t){var n=T();if(!((null==n?void 0:n.length)>0&&n[n.length-1].id===e.id)){n.push(e);var r=n;n.length>t&&(r=n.slice(-t)),N(r)}}function I(){N([])}function M(){var e=E((0,r.useState)([]),2),t=e[0],n=e[1],w=(0,v.Bd)(),S=w.t,A=(w.i18n,(0,r.useRef)((0,i.sg)(function(e){var t=e;e.length>B.current.messages_show_max&&(t=e.slice(-B.current.messages_show_max)),n(t),R.current&&V(!1)},50)).current),j=E((0,r.useState)(!1),2),O=j[0],M=j[1],P=(0,l.MH)().check_user_auth,H=E((0,r.useState)(""),2),L=H[0],G=H[1],D=(0,r.useRef)(null),F=(0,r.useRef)(null),q=(0,y.y)(),J=(0,g.Zp)(),R=(0,r.useRef)(!0),B=(0,r.useRef)(new h.qq),V=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=F.current;t&&t.scrollTo({top:t.scrollHeight,behavior:e?"smooth":"auto"})},z=function(){var e=x(_().m(function e(){var t;return _().w(function(e){for(;;)switch(e.n){case 0:return n(T()),e.n=1,o.XO.get("ai_agent_setting/env");case 1:(t=e.v).code===d.m.Success&&(B.current=t.data);case 2:return e.a(2)}},e)}));return function(){return e.apply(this,arguments)}}();(0,r.useEffect)(function(){z(),requestAnimationFrame(function(){V(!1)})},[]),(0,r.useEffect)(function(){var e=F.current;if(e){var t=function(){R.current=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:120,n=e.scrollTop;return e.scrollHeight-(n+e.clientHeight)<t}(e)};return e.addEventListener("scroll",t),function(){return e.removeEventListener("scroll",t)}}},[]),(0,r.useLayoutEffect)(function(){R.current&&V(!1)},[t]);var K=function(){var e=L.trim();if(e){var r={id:Date.now(),sender:"user",text:e},a=[].concat(b(t),[r]);C(r,B.current.messages_show_max),n(a),G(""),M(!0);var c,u,l=(c=a,u=B.current.messages_current_max,(c.length<u?c:c.slice(-u)).map(function(e){return{content:e.text,role:"bot"===e.sender?"system":"user"}})),s={id:r.id+1,sender:"bot",text:"AI思考中..."};a.push(s),n(a);var f=!0;o.jV.sse_post("chat",{messages:l},{onMessage:function(e){f&&(s.text="",f=!1);try{var t,n=JSON.parse(e),r=null==n||null===(t=n.choices[0])||void 0===t?void 0:t.delta.content;r&&(s.text+=r)}catch(t){try{s.text+=JSON.parse(e)}catch(t){s.text+=e}}A(b(a))},onDone:(0,i.nF)(function(){M(!1),C(s,B.current.messages_show_max),V(!0)},100)})}},U=function(){var e=x(_().m(function e(t){return _().w(function(e){for(;;)switch(e.n){case 0:(0,f.lW)(t),(0,m.LW)("复制成功");case 1:return e.a(2)}},e)}));return function(t){return e.apply(this,arguments)}}();return r.createElement(r.Fragment,null,r.createElement(c.A,null,r.createElement(u.rA,{icon:"delete_sweep",title:"清空聊天历史",onClick:function(){q({sub_title:"确认删除全部聊天内容吗",confirm_fun:function(){I(),z()}})}}),P(s.oV.ai_agent_setting)&&r.createElement(u.rA,{icon:"settings",title:"ai setting",onClick:function(){J("/".concat(p.o.ai_agent_setting_page))}})),r.createElement("div",{className:"chat-page"},0===(null==t?void 0:t.length)&&r.createElement("div",{className:"chat-header"},"询问服务器的一切"),r.createElement("div",{className:"chat-messages",ref:F},t.map(function(e){return r.createElement("div",{key:e.id,className:"chat-message ".concat(e.sender)},r.createElement(a.default,{context:e.text}),r.createElement(k,{onDelete:function(){return r=e.id,o=t.filter(function(e){return e.id!==r}),n(o),void N(o);var r,o},onCopy:function(){return U(e.text)}}))}),r.createElement("div",{ref:D})),r.createElement("div",{className:"chat-input-area"},r.createElement("textarea",{value:L,onChange:function(e){var t=e.target;t.style.height="auto",t.style.height=Math.min(t.scrollHeight,200)+"px",G(t.value)},onKeyDown:function(e){"Enter"!==e.key||e.shiftKey||(e.preventDefault(),K())},placeholder:S("输入消息"),className:"chat-input"}),!1===O&&r.createElement("button",{onClick:K},S("发送")))))}},4299(e,t,n){n.r(t),n.d(t,{default:()=>y});var r=n(6540),o=n(3557),a=n(3995),i=n(950),c=n(7979),u=n(8263),l=n(9428),s=n.n(l),f=(n(3775),n(1499)),m=n(9214),v=new o.A({html:!0,highlight:function(e,t){return'<pre class="custom-code-block"><code>'.concat(v.utils.escapeHtml(e),"</code></pre>")}});function y(e){return(0,m.VD)(),r.createElement("div",{dangerouslySetInnerHTML:{__html:v.render(e.context)}})}v.use(a.A).use(i.A).use(c.A).use(u.A).use(s()).use(function(e){e.renderer.rules.fence;e.renderer.rules.fence=function(t,n,r,o,a){var i=t[n].content.trim();return'\n <div class="code-block-with-copy">\n <button class="copy-btn" data-code="'.concat(e.utils.escapeHtml(i),'">复制</button>\n <pre><code>').concat(e.utils.escapeHtml(i),"</code></pre>\n </div>")}}).use(function(e){var t=e.renderer.rules.link_open||function(e,t,n,r,o){return o.renderToken(e,t,n)};e.renderer.rules.link_open=function(e,n,r,o,a){var i=e[n],c=i.attrIndex("href");if(c>=0){var u=i.attrs[c][1];i.attrs[c][1]=(0,f.bi)(window.location.href,u)}return t(e,n,r,o,a)}})},5907(e,t,n){n.d(t,{y:()=>c});var r=n(7444),o=n(6417);function a(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a,i,c=[],u=!0,l=!1;try{if(a=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=a.call(n)).done)&&(c.push(r.value),c.length!==t);u=!0);}catch(e){l=!0,o=e}finally{try{if(!u&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(l)throw o}}return c}}(e,t)||function(e,t){if(e){if("string"==typeof e)return i(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?i(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function c(){var e=a((0,r.L4)(o.AG.confirm),2),t=(e[0],e[1]);return function(e){var n=e.sub_title,r=e.confirm_fun,o=e.title;t({open:!0,sub_title:n,handle:function(){r(),t({open:!1,handle:null})},title:o})}}},840(e){e.exports="data:image/svg+xml,<svg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 version=%271.1%27 aria-hidden=%27true%27><path fill-rule=%27evenodd%27 d=%27M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z%27></path></svg>"}}]);