hermes-web-ui 0.1.4 → 0.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/assets/ChatView-DmXZ5Q3Z.js +18 -0
  2. package/dist/assets/ChatView-cCVO1N9F.css +1 -0
  3. package/dist/assets/Dropdown-8pId5Qsj.js +125 -0
  4. package/dist/assets/Input-BZKSQ403.js +234 -0
  5. package/dist/assets/JobsView-CQf4Y7Mw.js +123 -0
  6. package/dist/assets/{LogsView-BSNn4Rmi.js → LogsView-CKyL3UT5.js} +1 -1
  7. package/dist/assets/{MemoryView-BsGBmN7h.js → MemoryView-BBwqM3vf.js} +1 -1
  8. package/dist/assets/{Modal-CSHJclVU.js → Modal-BtRuxNI4.js} +9 -9
  9. package/dist/assets/Popover-C2CJscsj.js +161 -0
  10. package/dist/assets/Select-CithN5ti.js +410 -0
  11. package/dist/assets/SettingsView-D1hOGA0Z.js +1005 -0
  12. package/dist/assets/{SkillsView-CciuH5wp.js → SkillsView-BfnrX5TQ.js} +1 -1
  13. package/dist/assets/{Spin-DWreY5m0.js → Spin-7g8GCzi5.js} +3 -3
  14. package/dist/assets/Suffix-DI9irQ4f.js +101 -0
  15. package/dist/assets/{Tooltip-BCHslENT.js → Tooltip-BdrvORgU.js} +1 -1
  16. package/dist/assets/_plugin-vue_export-helper-BrYOyDjU.js +47 -0
  17. package/dist/assets/{app-4gFjNUoo.js → app-JRkV5-Ft.js} +1 -1
  18. package/dist/assets/chat-Cgdof9SF.js +6 -0
  19. package/dist/assets/{context-B74FvHiJ.js → context-DW8F1iIn.js} +1 -1
  20. package/dist/assets/{index-Cx8mFF2D.js → index-DP1JeABS.js} +5 -5
  21. package/dist/assets/{jobs-DVxci1LY.js → jobs-DJ8ETzok.js} +1 -1
  22. package/dist/assets/{skills-DgbQAgoB.js → skills-CkDtgKB5.js} +1 -1
  23. package/dist/assets/{use-message-Dz_GbH5h.js → use-message-Btr-O4Ih.js} +1 -1
  24. package/dist/index.html +11 -13
  25. package/dist/server/routes/sessions.js +16 -0
  26. package/dist/server/services/hermes-cli.d.ts +4 -0
  27. package/dist/server/services/hermes-cli.js +25 -1
  28. package/package.json +1 -1
  29. package/dist/assets/ChatView-BCcUaLWg.css +0 -1
  30. package/dist/assets/ChatView-gu2Y-jpZ.js +0 -16
  31. package/dist/assets/Input-yD_s5hp8.js +0 -234
  32. package/dist/assets/JobsView-C1YU-sgU.js +0 -123
  33. package/dist/assets/Popover-blRIsd-8.js +0 -117
  34. package/dist/assets/Scrollbar-CYtpM7mc.js +0 -77
  35. package/dist/assets/Select-DTG-wtu5.js +0 -454
  36. package/dist/assets/SettingsView-CppuSCZA.js +0 -1129
  37. package/dist/assets/Suffix-B828Aenx.js +0 -25
  38. package/dist/assets/Warning-Ba-wYRRB.js +0 -1
  39. package/dist/assets/_plugin-vue_export-helper-CV9qMihF.js +0 -47
  40. package/dist/assets/chat-P2QaPvpZ.js +0 -6
  41. /package/dist/assets/{client-BKiVmpru.js → client-kwQ0ijpp.js} +0 -0
@@ -1,5 +1,5 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ChatView-gu2Y-jpZ.js","assets/_plugin-vue_export-helper-CV9qMihF.js","assets/runtime-core.esm-bundler-yNW65ghW.js","assets/MarkdownRenderer-DNP-kPA8.js","assets/MarkdownRenderer-CrMwC_5d.css","assets/Warning-Ba-wYRRB.js","assets/Scrollbar-CYtpM7mc.js","assets/chat-P2QaPvpZ.js","assets/pinia-tE0RcsDr.js","assets/client-BKiVmpru.js","assets/app-4gFjNUoo.js","assets/Popover-blRIsd-8.js","assets/context-B74FvHiJ.js","assets/keysOf-Dvq9k1rv.js","assets/omit-QZj0aLfU.js","assets/use-message-Dz_GbH5h.js","assets/Tooltip-BCHslENT.js","assets/ChatView-BCcUaLWg.css","assets/JobsView-C1YU-sgU.js","assets/Select-DTG-wtu5.js","assets/Suffix-B828Aenx.js","assets/Modal-CSHJclVU.js","assets/Input-yD_s5hp8.js","assets/Spin-DWreY5m0.js","assets/jobs-DVxci1LY.js","assets/JobsView-BhwwXuLt.css","assets/LogsView-BSNn4Rmi.js","assets/LogsView-BN_TkDPi.css","assets/SkillsView-CciuH5wp.js","assets/skills-DgbQAgoB.js","assets/SkillsView-86Z-HE_X.css","assets/MemoryView-BsGBmN7h.js","assets/MemoryView-CK0PemlP.css","assets/SettingsView-CppuSCZA.js","assets/SettingsView-BzBMKaLz.css"])))=>i.map(i=>d[i]);
2
- import{$ as e,C as t,Ct as n,E as r,F as i,G as a,I as o,M as s,N as c,U as l,W as u,Z as d,_ as f,a as p,d as m,h,i as g,l as _,nt as ee,p as v,rt as te,st as y,tt as b,u as x,v as S,wt as ne,x as C,z as w}from"./runtime-core.esm-bundler-yNW65ghW.js";import{H as T,Q as E,V as D,W as O,c as re,ct as k,d as ie,dt as A,f as ae,ft as j,i as oe,l as se,lt as M,m as ce,mt as N,o as le,r as P,rt as F,s as I,t as ue,tt as de,vt as fe,xt as pe,yt as me}from"./_plugin-vue_export-helper-CV9qMihF.js";import{t as he}from"./pinia-tE0RcsDr.js";import{n as L,t as ge}from"./Warning-Ba-wYRRB.js";import{A as _e,o as ve}from"./Popover-blRIsd-8.js";import{d as R,t as ye,u as be}from"./Select-DTG-wtu5.js";import{o as xe,r as Se,t as Ce,v as we}from"./Scrollbar-CYtpM7mc.js";import{a as Te,c as Ee,d as De,f as Oe,i as ke,l as Ae,n as je,o as Me,r as Ne,s as Pe,t as Fe,u as Ie}from"./Modal-CSHJclVU.js";import{n as Le,o as Re,t as ze}from"./context-B74FvHiJ.js";import{t as Be}from"./keysOf-Dvq9k1rv.js";import{t as Ve}from"./omit-QZj0aLfU.js";import{t as He}from"./chat-P2QaPvpZ.js";import{n as Ue}from"./app-4gFjNUoo.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var z=typeof document<`u`;function We(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function Ge(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&&We(e.default)}var B=Object.assign;function Ke(e,t){let n={};for(let r in t){let i=t[r];n[r]=H(i)?i.map(e):e(i)}return n}var V=()=>{},H=Array.isArray;function qe(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}var Je=/#/g,Ye=/&/g,Xe=/\//g,Ze=/=/g,Qe=/\?/g,$e=/\+/g,et=/%5B/g,tt=/%5D/g,nt=/%5E/g,rt=/%60/g,it=/%7B/g,at=/%7C/g,ot=/%7D/g,st=/%20/g;function ct(e){return e==null?``:encodeURI(``+e).replace(at,`|`).replace(et,`[`).replace(tt,`]`)}function lt(e){return ct(e).replace(it,`{`).replace(ot,`}`).replace(nt,`^`)}function ut(e){return ct(e).replace($e,`%2B`).replace(st,`+`).replace(Je,`%23`).replace(Ye,`%26`).replace(rt,"`").replace(it,`{`).replace(ot,`}`).replace(nt,`^`)}function dt(e){return ut(e).replace(Ze,`%3D`)}function ft(e){return ct(e).replace(Je,`%23`).replace(Qe,`%3F`)}function pt(e){return ft(e).replace(Xe,`%2F`)}function U(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{}return``+e}var mt=/\/$/,ht=e=>e.replace(mt,``);function gt(e,t,n=`/`){let r,i={},a=``,o=``,s=t.indexOf(`#`),c=t.indexOf(`?`);return c=s>=0&&c>s?-1:c,c>=0&&(r=t.slice(0,c),a=t.slice(c,s>0?s:t.length),i=e(a.slice(1))),s>=0&&(r||=t.slice(0,s),o=t.slice(s,t.length)),r=Ct(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:U(o)}}function _t(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function vt(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function yt(e,t,n){let r=t.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&W(t.matched[r],n.matched[i])&&bt(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function W(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function bt(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!xt(e[n],t[n]))return!1;return!0}function xt(e,t){return H(e)?St(e,t):H(t)?St(t,e):e?.valueOf()===t?.valueOf()}function St(e,t){return H(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function Ct(e,t){if(e.startsWith(`/`))return e;if(!e)return t;let n=t.split(`/`),r=e.split(`/`),i=r[r.length-1];(i===`..`||i===`.`)&&r.push(``);let a=n.length-1,o,s;for(o=0;o<r.length;o++)if(s=r[o],s!==`.`)if(s===`..`)a>1&&a--;else break;return n.slice(0,a).join(`/`)+`/`+r.slice(o).join(`/`)}var G={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0},wt=function(e){return e.pop=`pop`,e.push=`push`,e}({}),Tt=function(e){return e.back=`back`,e.forward=`forward`,e.unknown=``,e}({});function Et(e){if(!e)if(z){let t=document.querySelector(`base`);e=t&&t.getAttribute(`href`)||`/`,e=e.replace(/^\w+:\/\/[^\/]+/,``)}else e=`/`;return e[0]!==`/`&&e[0]!==`#`&&(e=`/`+e),ht(e)}var Dt=/^[^#]+#/;function Ot(e,t){return e.replace(Dt,`#`)+t}function kt(e,t){let n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}var At=()=>({left:window.scrollX,top:window.scrollY});function jt(e){let t;if(`el`in e){let n=e.el,r=typeof n==`string`&&n.startsWith(`#`),i=typeof n==`string`?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return;t=kt(i,e)}else t=e;`scrollBehavior`in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left==null?window.scrollX:t.left,t.top==null?window.scrollY:t.top)}function Mt(e,t){return(history.state?history.state.position-t:-1)+e}var Nt=new Map;function Pt(e,t){Nt.set(e,t)}function Ft(e){let t=Nt.get(e);return Nt.delete(e),t}function It(e){return typeof e==`string`||e&&typeof e==`object`}function Lt(e){return typeof e==`string`||typeof e==`symbol`}var K=function(e){return e[e.MATCHER_NOT_FOUND=1]=`MATCHER_NOT_FOUND`,e[e.NAVIGATION_GUARD_REDIRECT=2]=`NAVIGATION_GUARD_REDIRECT`,e[e.NAVIGATION_ABORTED=4]=`NAVIGATION_ABORTED`,e[e.NAVIGATION_CANCELLED=8]=`NAVIGATION_CANCELLED`,e[e.NAVIGATION_DUPLICATED=16]=`NAVIGATION_DUPLICATED`,e}({}),Rt=Symbol(``);K.MATCHER_NOT_FOUND,K.NAVIGATION_GUARD_REDIRECT,K.NAVIGATION_ABORTED,K.NAVIGATION_CANCELLED,K.NAVIGATION_DUPLICATED;function q(e,t){return B(Error(),{type:e,[Rt]:!0},t)}function J(e,t){return e instanceof Error&&Rt in e&&(t==null||!!(e.type&t))}function zt(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;e<n.length;++e){let r=n[e].replace($e,` `),i=r.indexOf(`=`),a=U(i<0?r:r.slice(0,i)),o=i<0?null:U(r.slice(i+1));if(a in t){let e=t[a];H(e)||(e=t[a]=[e]),e.push(o)}else t[a]=o}return t}function Bt(e){let t=``;for(let n in e){let r=e[n];if(n=dt(n),r==null){r!==void 0&&(t+=(t.length?`&`:``)+n);continue}(H(r)?r.map(e=>e&&ut(e)):[r&&ut(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function Vt(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=H(r)?r.map(e=>e==null?null:``+e):r==null?r:``+r)}return t}var Ht=Symbol(``),Ut=Symbol(``),Wt=Symbol(``),Gt=Symbol(``),Kt=Symbol(``);function qt(){let e=[];function t(t){return e.push(t),()=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Y(e,t,n,r,i,a=e=>e()){let o=r&&(r.enterCallbacks[i]=r.enterCallbacks[i]||[]);return()=>new Promise((s,c)=>{let l=e=>{e===!1?c(q(K.NAVIGATION_ABORTED,{from:n,to:t})):e instanceof Error?c(e):It(e)?c(q(K.NAVIGATION_GUARD_REDIRECT,{from:t,to:e})):(o&&r.enterCallbacks[i]===o&&typeof e==`function`&&o.push(e),s())},u=a(()=>e.call(r&&r.instances[i],t,n,l)),d=Promise.resolve(u);e.length<3&&(d=d.then(l)),d.catch(e=>c(e))})}function Jt(e,t,n,r,i=e=>e()){let a=[];for(let o of e)for(let e in o.components){let s=o.components[e];if(!(t!==`beforeRouteEnter`&&!o.instances[e]))if(We(s)){let c=(s.__vccOpts||s)[t];c&&a.push(Y(c,n,r,o,e,i))}else{let c=s();a.push(()=>c.then(a=>{if(!a)throw Error(`Couldn't resolve component "${e}" at "${o.path}"`);let s=Ge(a)?a.default:a;o.mods[e]=a,o.components[e]=s;let c=(s.__vccOpts||s)[t];return c&&Y(c,n,r,o,e,i)()}))}}return a}function Yt(e,t){let n=[],r=[],i=[],a=Math.max(t.matched.length,e.matched.length);for(let o=0;o<a;o++){let a=t.matched[o];a&&(e.matched.find(e=>W(e,a))?r.push(a):n.push(a));let s=e.matched[o];s&&(t.matched.find(e=>W(e,s))||i.push(s))}return[n,r,i]}var Xt=()=>location.protocol+`//`+location.host;function Zt(e,t){let{pathname:n,search:r,hash:i}=t,a=e.indexOf(`#`);if(a>-1){let t=i.includes(e.slice(a))?e.slice(a).length:1,n=i.slice(t);return n[0]!==`/`&&(n=`/`+n),vt(n,``)}return vt(n,e)+r+i}function Qt(e,t,n,r){let i=[],a=[],o=null,s=({state:a})=>{let s=Zt(e,location),c=n.value,l=t.value,u=0;if(a){if(n.value=s,t.value=a,o&&o===c){o=null;return}u=l?a.position-l.position:0}else r(s);i.forEach(e=>{e(n.value,c,{delta:u,type:wt.pop,direction:u?u>0?Tt.forward:Tt.back:Tt.unknown})})};function c(){o=n.value}function l(e){i.push(e);let t=()=>{let t=i.indexOf(e);t>-1&&i.splice(t,1)};return a.push(t),t}function u(){if(document.visibilityState===`hidden`){let{history:e}=window;if(!e.state)return;e.replaceState(B({},e.state,{scroll:At()}),``)}}function d(){for(let e of a)e();a=[],window.removeEventListener(`popstate`,s),window.removeEventListener(`pagehide`,u),document.removeEventListener(`visibilitychange`,u)}return window.addEventListener(`popstate`,s),window.addEventListener(`pagehide`,u),document.addEventListener(`visibilitychange`,u),{pauseListeners:c,listen:l,destroy:d}}function $t(e,t,n,r=!1,i=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:i?At():null}}function en(e){let{history:t,location:n}=window,r={value:Zt(e,n)},i={value:t.state};i.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(r,a,o){let s=e.indexOf(`#`),c=s>-1?(n.host&&document.querySelector(`base`)?e:e.slice(s))+r:Xt()+e+r;try{t[o?`replaceState`:`pushState`](a,``,c),i.value=a}catch(e){console.error(e),n[o?`replace`:`assign`](c)}}function o(e,n){a(e,B({},t.state,$t(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),r.value=e}function s(e,n){let o=B({},i.value,t.state,{forward:e,scroll:At()});a(o.current,o,!0),a(e,B({},$t(r.value,e,null),{position:o.position+1},n),!1),r.value=e}return{location:r,state:i,push:s,replace:o}}function tn(e){e=Et(e);let t=en(e),n=Qt(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=B({location:``,base:e,go:r,createHref:Ot.bind(null,e)},t,n);return Object.defineProperty(i,`location`,{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(i,`state`,{enumerable:!0,get:()=>t.state.value}),i}function nn(e){return e=location.host?e||location.pathname+location.search:``,e.includes(`#`)||(e+=`#`),tn(e)}var X=function(e){return e[e.Static=0]=`Static`,e[e.Param=1]=`Param`,e[e.Group=2]=`Group`,e}({}),Z=function(e){return e[e.Static=0]=`Static`,e[e.Param=1]=`Param`,e[e.ParamRegExp=2]=`ParamRegExp`,e[e.ParamRegExpEnd=3]=`ParamRegExpEnd`,e[e.EscapeNext=4]=`EscapeNext`,e}(Z||{}),rn={type:X.Static,value:``},an=/[a-zA-Z0-9_]/;function on(e){if(!e)return[[]];if(e===`/`)return[[rn]];if(!e.startsWith(`/`))throw Error(`Invalid path "${e}"`);function t(e){throw Error(`ERR (${n})/"${l}": ${e}`)}let n=Z.Static,r=n,i=[],a;function o(){a&&i.push(a),a=[]}let s=0,c,l=``,u=``;function d(){l&&=(n===Z.Static?a.push({type:X.Static,value:l}):n===Z.Param||n===Z.ParamRegExp||n===Z.ParamRegExpEnd?(a.length>1&&(c===`*`||c===`+`)&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),a.push({type:X.Param,value:l,regexp:u,repeatable:c===`*`||c===`+`,optional:c===`*`||c===`?`})):t(`Invalid state to consume buffer`),``)}function f(){l+=c}for(;s<e.length;){if(c=e[s++],c===`\\`&&n!==Z.ParamRegExp){r=n,n=Z.EscapeNext;continue}switch(n){case Z.Static:c===`/`?(l&&d(),o()):c===`:`?(d(),n=Z.Param):f();break;case Z.EscapeNext:f(),n=r;break;case Z.Param:c===`(`?n=Z.ParamRegExp:an.test(c)?f():(d(),n=Z.Static,c!==`*`&&c!==`?`&&c!==`+`&&s--);break;case Z.ParamRegExp:c===`)`?u[u.length-1]==`\\`?u=u.slice(0,-1)+c:n=Z.ParamRegExpEnd:u+=c;break;case Z.ParamRegExpEnd:d(),n=Z.Static,c!==`*`&&c!==`?`&&c!==`+`&&s--,u=``;break;default:t(`Unknown state`);break}}return n===Z.ParamRegExp&&t(`Unfinished custom RegExp for param "${l}"`),d(),o(),i}var sn=`[^/]+?`,cn={sensitive:!1,strict:!1,start:!0,end:!0},Q=function(e){return e[e._multiplier=10]=`_multiplier`,e[e.Root=90]=`Root`,e[e.Segment=40]=`Segment`,e[e.SubSegment=30]=`SubSegment`,e[e.Static=40]=`Static`,e[e.Dynamic=20]=`Dynamic`,e[e.BonusCustomRegExp=10]=`BonusCustomRegExp`,e[e.BonusWildcard=-50]=`BonusWildcard`,e[e.BonusRepeatable=-20]=`BonusRepeatable`,e[e.BonusOptional=-8]=`BonusOptional`,e[e.BonusStrict=.7000000000000001]=`BonusStrict`,e[e.BonusCaseSensitive=.25]=`BonusCaseSensitive`,e}(Q||{}),ln=/[.+*?^${}()[\]/\\]/g;function un(e,t){let n=B({},cn,t),r=[],i=n.start?`^`:``,a=[];for(let t of e){let e=t.length?[]:[Q.Root];n.strict&&!t.length&&(i+=`/`);for(let r=0;r<t.length;r++){let o=t[r],s=Q.Segment+(n.sensitive?Q.BonusCaseSensitive:0);if(o.type===X.Static)r||(i+=`/`),i+=o.value.replace(ln,`\\$&`),s+=Q.Static;else if(o.type===X.Param){let{value:e,repeatable:n,optional:c,regexp:l}=o;a.push({name:e,repeatable:n,optional:c});let u=l||sn;if(u!==sn){s+=Q.BonusCustomRegExp;try{`${u}`}catch(t){throw Error(`Invalid custom RegExp for param "${e}" (${u}): `+t.message)}}let d=n?`((?:${u})(?:/(?:${u}))*)`:`(${u})`;r||(d=c&&t.length<2?`(?:/${d})`:`/`+d),c&&(d+=`?`),i+=d,s+=Q.Dynamic,c&&(s+=Q.BonusOptional),n&&(s+=Q.BonusRepeatable),u===`.*`&&(s+=Q.BonusWildcard)}e.push(s)}r.push(e)}if(n.strict&&n.end){let e=r.length-1;r[e][r[e].length-1]+=Q.BonusStrict}n.strict||(i+=`/?`),n.end?i+=`$`:n.strict&&!i.endsWith(`/`)&&(i+=`(?:/|$)`);let o=new RegExp(i,n.sensitive?``:`i`);function s(e){let t=e.match(o),n={};if(!t)return null;for(let e=1;e<t.length;e++){let r=t[e]||``,i=a[e-1];n[i.name]=r&&i.repeatable?r.split(`/`):r}return n}function c(t){let n=``,r=!1;for(let i of e){(!r||!n.endsWith(`/`))&&(n+=`/`),r=!1;for(let e of i)if(e.type===X.Static)n+=e.value;else if(e.type===X.Param){let{value:a,repeatable:o,optional:s}=e,c=a in t?t[a]:``;if(H(c)&&!o)throw Error(`Provided param "${a}" is an array but it is not repeatable (* or + modifiers)`);let l=H(c)?c.join(`/`):c;if(!l)if(s)i.length<2&&(n.endsWith(`/`)?n=n.slice(0,-1):r=!0);else throw Error(`Missing required param "${a}"`);n+=l}}return n||`/`}return{re:o,score:r,keys:a,parse:s,stringify:c}}function dn(e,t){let n=0;for(;n<e.length&&n<t.length;){let r=t[n]-e[n];if(r)return r;n++}return e.length<t.length?e.length===1&&e[0]===Q.Static+Q.Segment?-1:1:e.length>t.length?t.length===1&&t[0]===Q.Static+Q.Segment?1:-1:0}function fn(e,t){let n=0,r=e.score,i=t.score;for(;n<r.length&&n<i.length;){let e=dn(r[n],i[n]);if(e)return e;n++}if(Math.abs(i.length-r.length)===1){if(pn(r))return 1;if(pn(i))return-1}return i.length-r.length}function pn(e){let t=e[e.length-1];return e.length>0&&t[t.length-1]<0}var mn={strict:!1,end:!0,sensitive:!1};function hn(e,t,n){let r=B(un(on(e.path),n),{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function gn(e,t){let n=[],r=new Map;t=qe(mn,t);function i(e){return r.get(e)}function a(e,n,r){let i=!r,s=vn(e);s.aliasOf=r&&r.record;let l=qe(t,e),u=[s];if(`alias`in e){let t=typeof e.alias==`string`?[e.alias]:e.alias;for(let e of t)u.push(vn(B({},s,{components:r?r.record.components:s.components,path:e,aliasOf:r?r.record:s})))}let d,f;for(let t of u){let{path:u}=t;if(n&&u[0]!==`/`){let e=n.record.path,r=e[e.length-1]===`/`?``:`/`;t.path=n.record.path+(u&&r+u)}if(d=hn(t,n,l),r?r.alias.push(d):(f||=d,f!==d&&f.alias.push(d),i&&e.name&&!bn(d)&&o(e.name)),wn(d)&&c(d),s.children){let e=s.children;for(let t=0;t<e.length;t++)a(e[t],d,r&&r.children[t])}r||=d}return f?()=>{o(f)}:V}function o(e){if(Lt(e)){let t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(o),t.alias.forEach(o))}else{let t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(o),e.alias.forEach(o))}}function s(){return n}function c(e){let t=Sn(e,n);n.splice(t,0,e),e.record.name&&!bn(e)&&r.set(e.record.name,e)}function l(e,t){let i,a={},o,s;if(`name`in e&&e.name){if(i=r.get(e.name),!i)throw q(K.MATCHER_NOT_FOUND,{location:e});s=i.record.name,a=B(_n(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&_n(e.params,i.keys.map(e=>e.name))),o=i.stringify(a)}else if(e.path!=null)o=e.path,i=n.find(e=>e.re.test(o)),i&&(a=i.parse(o),s=i.record.name);else{if(i=t.name?r.get(t.name):n.find(e=>e.re.test(t.path)),!i)throw q(K.MATCHER_NOT_FOUND,{location:e,currentLocation:t});s=i.record.name,a=B({},t.params,e.params),o=i.stringify(a)}let c=[],l=i;for(;l;)c.unshift(l.record),l=l.parent;return{name:s,path:o,params:a,matched:c,meta:xn(c)}}e.forEach(e=>a(e));function u(){n.length=0,r.clear()}return{addRoute:a,resolve:l,removeRoute:o,clearRoutes:u,getRoutes:s,getRecordMatcher:i}}function _n(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function vn(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:yn(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,`mods`,{value:{}}),t}function yn(e){let t={},n=e.props||!1;if(`component`in e)t.default=n;else for(let r in e.components)t[r]=typeof n==`object`?n[r]:n;return t}function bn(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function xn(e){return e.reduce((e,t)=>B(e,t.meta),{})}function Sn(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;fn(e,t[i])<0?r=i:n=i+1}let i=Cn(e);return i&&(r=t.lastIndexOf(i,r-1)),r}function Cn(e){let t=e;for(;t=t.parent;)if(wn(t)&&fn(e,t)===0)return t}function wn({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Tn(e){let n=t(Wt),r=t(Gt),i=_(()=>{let t=y(e.to);return n.resolve(t)}),a=_(()=>{let{matched:e}=i.value,{length:t}=e,n=e[t-1],a=r.matched;if(!n||!a.length)return-1;let o=a.findIndex(W.bind(null,n));if(o>-1)return o;let s=An(e[t-2]);return t>1&&An(n)===s&&a[a.length-1].path!==s?a.findIndex(W.bind(null,e[t-2])):o}),o=_(()=>a.value>-1&&kn(r.params,i.value.params)),s=_(()=>a.value>-1&&a.value===r.matched.length-1&&bt(r.params,i.value.params));function c(t={}){if(On(t)){let t=n[y(e.replace)?`replace`:`push`](y(e.to)).catch(V);return e.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>t),t}return Promise.resolve()}return{route:i,href:_(()=>i.value.href),isActive:o,isExactActive:s,navigate:c}}function En(e){return e.length===1?e[0]:e}var Dn=S({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink:Tn,setup(n,{slots:r}){let i=e(Tn(n)),{options:a}=t(Wt),o=_(()=>({[jn(n.activeClass,a.linkActiveClass,`router-link-active`)]:i.isActive,[jn(n.exactActiveClass,a.linkExactActiveClass,`router-link-exact-active`)]:i.isExactActive}));return()=>{let e=r.default&&En(r.default(i));return n.custom?e:C(`a`,{"aria-current":i.isExactActive?n.ariaCurrentValue:null,href:i.href,onClick:i.navigate,class:o.value},e)}}});function On(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){let t=e.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function kn(e,t){for(let n in t){let r=t[n],i=e[n];if(typeof r==`string`){if(r!==i)return!1}else if(!H(i)||i.length!==r.length||r.some((e,t)=>e.valueOf()!==i[t].valueOf()))return!1}return!0}function An(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}var jn=(e,t,n)=>e??t??n,Mn=S({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(e,{attrs:n,slots:r}){let i=t(Kt),a=_(()=>e.route||i.value),s=t(Ut,0),c=_(()=>{let e=y(s),{matched:t}=a.value,n;for(;(n=t[e])&&!n.components;)e++;return e}),u=_(()=>a.value.matched[c.value]);o(Ut,_(()=>c.value+1)),o(Ht,u),o(Kt,a);let d=b();return l(()=>[d.value,u.value,e.name],([e,t,n],[r,i,a])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),e&&t&&(!i||!W(t,i)||!r)&&(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:`post`}),()=>{let t=a.value,i=e.name,o=u.value,s=o&&o.components[i];if(!s)return Nn(r.default,{Component:s,route:t});let c=o.props[i],l=C(s,B({},c?c===!0?t.params:typeof c==`function`?c(t):c:null,n,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(o.instances[i]=null)},ref:d}));return Nn(r.default,{Component:l,route:t})||l}}});function Nn(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}var Pn=Mn;function Fn(e){let t=gn(e.routes,e),n=e.parseQuery||zt,i=e.stringifyQuery||Bt,a=e.history,o=qt(),s=qt(),c=qt(),l=te(G),u=G;z&&e.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let d=Ke.bind(null,e=>``+e),f=Ke.bind(null,pt),p=Ke.bind(null,U);function m(e,n){let r,i;return Lt(e)?(r=t.getRecordMatcher(e),i=n):i=e,t.addRoute(i,r)}function h(e){let n=t.getRecordMatcher(e);n&&t.removeRoute(n)}function g(){return t.getRoutes().map(e=>e.record)}function _(e){return!!t.getRecordMatcher(e)}function v(e,r){if(r=B({},r||l.value),typeof e==`string`){let i=gt(n,e,r.path),o=t.resolve({path:i.path},r),s=a.createHref(i.fullPath);return B(i,o,{params:p(o.params),hash:U(i.hash),redirectedFrom:void 0,href:s})}let o;if(e.path!=null)o=B({},e,{path:gt(n,e.path,r.path).path});else{let t=B({},e.params);for(let e in t)t[e]??delete t[e];o=B({},e,{params:f(t)}),r.params=f(r.params)}let s=t.resolve(o,r),c=e.hash||``;s.params=d(p(s.params));let u=_t(i,B({},e,{hash:lt(c),path:s.path})),m=a.createHref(u);return B({fullPath:u,hash:c,query:i===Bt?Vt(e.query):e.query||{}},s,{redirectedFrom:void 0,href:m})}function b(e){return typeof e==`string`?gt(n,e,l.value.path):B({},e)}function x(e,t){if(u!==e)return q(K.NAVIGATION_CANCELLED,{from:t,to:e})}function S(e){return w(e)}function ne(e){return S(B(b(e),{replace:!0}))}function C(e,t){let n=e.matched[e.matched.length-1];if(n&&n.redirect){let{redirect:r}=n,i=typeof r==`function`?r(e,t):r;return typeof i==`string`&&(i=i.includes(`?`)||i.includes(`#`)?i=b(i):{path:i},i.params={}),B({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function w(e,t){let n=u=v(e),r=l.value,a=e.state,o=e.force,s=e.replace===!0,c=C(n,r);if(c)return w(B(b(c),{state:typeof c==`object`?B({},a,c.state):a,force:o,replace:s}),t||n);let d=n;d.redirectedFrom=t;let f;return!o&&yt(i,r,n)&&(f=q(K.NAVIGATION_DUPLICATED,{to:d,from:r}),ce(r,r,!0,!1)),(f?Promise.resolve(f):D(d,r)).catch(e=>J(e)?J(e,K.NAVIGATION_GUARD_REDIRECT)?e:M(e):oe(e,d,r)).then(e=>{if(e){if(J(e,K.NAVIGATION_GUARD_REDIRECT))return w(B({replace:s},b(e.to),{state:typeof e.to==`object`?B({},a,e.to.state):a,force:o}),t||d)}else e=re(d,r,!0,s,a);return O(d,r,e),e})}function T(e,t){let n=x(e,t);return n?Promise.reject(n):Promise.resolve()}function E(e){let t=P.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function D(e,t){let n,[r,i,a]=Yt(e,t);n=Jt(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push(Y(r,e,t))});let c=T.bind(null,e,t);return n.push(c),I(n).then(()=>{n=[];for(let r of o.list())n.push(Y(r,e,t));return n.push(c),I(n)}).then(()=>{n=Jt(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push(Y(r,e,t))});return n.push(c),I(n)}).then(()=>{n=[];for(let r of a)if(r.beforeEnter)if(H(r.beforeEnter))for(let i of r.beforeEnter)n.push(Y(i,e,t));else n.push(Y(r.beforeEnter,e,t));return n.push(c),I(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=Jt(a,`beforeRouteEnter`,e,t,E),n.push(c),I(n))).then(()=>{n=[];for(let r of s.list())n.push(Y(r,e,t));return n.push(c),I(n)}).catch(e=>J(e,K.NAVIGATION_CANCELLED)?e:Promise.reject(e))}function O(e,t,n){c.list().forEach(r=>E(()=>r(e,t,n)))}function re(e,t,n,r,i){let o=x(e,t);if(o)return o;let s=t===G,c=z?history.state:{};n&&(r||s?a.replace(e.fullPath,B({scroll:s&&c&&c.scroll},i)):a.push(e.fullPath,i)),l.value=e,ce(e,t,n,s),M()}let k;function ie(){k||=a.listen((e,t,n)=>{if(!F.listening)return;let r=v(e),i=C(r,F.currentRoute.value);if(i){w(B(i,{replace:!0,force:!0}),r).catch(V);return}u=r;let o=l.value;z&&Pt(Mt(o.fullPath,n.delta),At()),D(r,o).catch(e=>J(e,K.NAVIGATION_ABORTED|K.NAVIGATION_CANCELLED)?e:J(e,K.NAVIGATION_GUARD_REDIRECT)?(w(B(b(e.to),{force:!0}),r).then(e=>{J(e,K.NAVIGATION_ABORTED|K.NAVIGATION_DUPLICATED)&&!n.delta&&n.type===wt.pop&&a.go(-1,!1)}).catch(V),Promise.reject()):(n.delta&&a.go(-n.delta,!1),oe(e,r,o))).then(e=>{e||=re(r,o,!1),e&&(n.delta&&!J(e,K.NAVIGATION_CANCELLED)?a.go(-n.delta,!1):n.type===wt.pop&&J(e,K.NAVIGATION_ABORTED|K.NAVIGATION_DUPLICATED)&&a.go(-1,!1)),O(r,o,e)}).catch(V)})}let A=qt(),ae=qt(),j;function oe(e,t,n){M(e);let r=ae.list();return r.length?r.forEach(r=>r(e,t,n)):console.error(e),Promise.reject(e)}function se(){return j&&l.value!==G?Promise.resolve():new Promise((e,t)=>{A.add([e,t])})}function M(e){return j||(j=!e,ie(),A.list().forEach(([t,n])=>e?n(e):t()),A.reset()),e}function ce(t,n,i,a){let{scrollBehavior:o}=e;if(!z||!o)return Promise.resolve();let s=!i&&Ft(Mt(t.fullPath,0))||(a||!i)&&history.state&&history.state.scroll||null;return r().then(()=>o(t,n,s)).then(e=>e&&jt(e)).catch(e=>oe(e,t,n))}let N=e=>a.go(e),le,P=new Set,F={currentRoute:l,listening:!0,addRoute:m,removeRoute:h,clearRoutes:t.clearRoutes,hasRoute:_,getRoutes:g,resolve:v,options:e,push:S,replace:ne,go:N,back:()=>N(-1),forward:()=>N(1),beforeEach:o.add,beforeResolve:s.add,afterEach:c.add,onError:ae.add,isReady:se,install(e){e.component(`RouterLink`,Dn),e.component(`RouterView`,Pn),e.config.globalProperties.$router=F,Object.defineProperty(e.config.globalProperties,`$route`,{enumerable:!0,get:()=>y(l)}),z&&!le&&l.value===G&&(le=!0,S(a.location).catch(e=>{}));let t={};for(let e in G)Object.defineProperty(t,e,{get:()=>l.value[e],enumerable:!0});e.provide(Wt,F),e.provide(Gt,ee(t)),e.provide(Kt,l);let n=e.unmount;P.add(e),e.unmount=function(){P.delete(e),P.size<1&&(u=G,k&&k(),k=null,l.value=G,le=!1,j=!1),n()}}};function I(e){return e.reduce((e,t)=>e.then(()=>E(t)),Promise.resolve())}return F}function In(){return t(Wt)}function Ln(e){return t(Gt)}var Rn=Fn({history:nn(),routes:[{path:`/`,name:`chat`,component:()=>L(()=>import(`./ChatView-gu2Y-jpZ.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]))},{path:`/jobs`,name:`jobs`,component:()=>L(()=>import(`./JobsView-C1YU-sgU.js`),__vite__mapDeps([18,1,2,5,6,11,19,20,12,21,13,22,15,23,16,8,24,3,4,9,25]))},{path:`/logs`,name:`logs`,component:()=>L(()=>import(`./LogsView-BSNn4Rmi.js`),__vite__mapDeps([26,1,2,19,6,11,20,12,15,23,9,27]))},{path:`/skills`,name:`skills`,component:()=>L(()=>import(`./SkillsView-CciuH5wp.js`),__vite__mapDeps([28,1,2,3,4,22,6,20,29,9,30]))},{path:`/memory`,name:`memory`,component:()=>L(()=>import(`./MemoryView-BsGBmN7h.js`),__vite__mapDeps([31,1,2,3,4,12,15,29,9,32]))},{path:`/settings`,name:`settings`,component:()=>L(()=>import(`./SettingsView-CppuSCZA.js`),__vite__mapDeps([33,1,2,6,11,20,19,12,22,13,14,15,16,10,3,4,8,9,34]))}]}),{cubicBezierEaseInOut:$,cubicBezierEaseOut:zn,cubicBezierEaseIn:Bn}=ie;function Vn({overflow:e=`hidden`,duration:t=`.3s`,originalTransition:n=``,leavingDelay:r=`0s`,foldPadding:i=!1,enterToProps:a=void 0,leaveToProps:o=void 0,reverse:s=!1}={}){let c=s?`leave`:`enter`,l=s?`enter`:`leave`;return[k(`&.fade-in-height-expand-transition-${l}-from,
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/ChatView-DmXZ5Q3Z.js","assets/_plugin-vue_export-helper-BrYOyDjU.js","assets/runtime-core.esm-bundler-yNW65ghW.js","assets/MarkdownRenderer-DNP-kPA8.js","assets/MarkdownRenderer-CrMwC_5d.css","assets/Modal-BtRuxNI4.js","assets/Suffix-DI9irQ4f.js","assets/Popover-C2CJscsj.js","assets/context-DW8F1iIn.js","assets/keysOf-Dvq9k1rv.js","assets/chat-Cgdof9SF.js","assets/pinia-tE0RcsDr.js","assets/client-kwQ0ijpp.js","assets/app-JRkV5-Ft.js","assets/Dropdown-8pId5Qsj.js","assets/Input-BZKSQ403.js","assets/omit-QZj0aLfU.js","assets/use-message-Btr-O4Ih.js","assets/Tooltip-BdrvORgU.js","assets/ChatView-cCVO1N9F.css","assets/JobsView-CQf4Y7Mw.js","assets/Select-CithN5ti.js","assets/Spin-7g8GCzi5.js","assets/jobs-DJ8ETzok.js","assets/JobsView-BhwwXuLt.css","assets/LogsView-CKyL3UT5.js","assets/LogsView-BN_TkDPi.css","assets/SkillsView-BfnrX5TQ.js","assets/skills-CkDtgKB5.js","assets/SkillsView-86Z-HE_X.css","assets/MemoryView-BBwqM3vf.js","assets/MemoryView-CK0PemlP.css","assets/SettingsView-D1hOGA0Z.js","assets/SettingsView-BzBMKaLz.css"])))=>i.map(i=>d[i]);
2
+ import{$ as e,C as t,Ct as n,E as r,F as i,G as a,I as o,M as s,N as c,U as l,W as u,Z as d,_ as f,a as p,d as m,h,i as g,l as _,nt as ee,p as v,rt as te,st as y,tt as b,u as x,v as S,wt as ne,x as C,z as w}from"./runtime-core.esm-bundler-yNW65ghW.js";import{H as T,Q as E,V as D,W as O,c as re,ct as k,d as ie,dt as A,f as ae,ft as j,i as oe,l as se,lt as M,m as ce,mt as N,o as le,r as P,rt as F,s as I,t as ue,tt as de,vt as fe,xt as pe,yt as me}from"./_plugin-vue_export-helper-BrYOyDjU.js";import{t as he}from"./pinia-tE0RcsDr.js";import{a as ge,c as _e,d as ve,f as ye,i as be,l as xe,m as L,n as Se,o as Ce,p as we,r as Te,s as Ee,t as De,u as Oe}from"./Modal-BtRuxNI4.js";import{L as ke,c as Ae,d as je,u as R}from"./Popover-C2CJscsj.js";import{i as Me,l as Ne,n as Pe,x as Fe}from"./Suffix-DI9irQ4f.js";import{t as Ie}from"./Select-CithN5ti.js";import{n as Le,o as Re,t as ze}from"./context-DW8F1iIn.js";import{t as Be}from"./keysOf-Dvq9k1rv.js";import{t as Ve}from"./omit-QZj0aLfU.js";import{t as He}from"./chat-Cgdof9SF.js";import{n as Ue}from"./app-JRkV5-Ft.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var z=typeof document<`u`;function We(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function Ge(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&&We(e.default)}var B=Object.assign;function Ke(e,t){let n={};for(let r in t){let i=t[r];n[r]=H(i)?i.map(e):e(i)}return n}var V=()=>{},H=Array.isArray;function qe(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}var Je=/#/g,Ye=/&/g,Xe=/\//g,Ze=/=/g,Qe=/\?/g,$e=/\+/g,et=/%5B/g,tt=/%5D/g,nt=/%5E/g,rt=/%60/g,it=/%7B/g,at=/%7C/g,ot=/%7D/g,st=/%20/g;function ct(e){return e==null?``:encodeURI(``+e).replace(at,`|`).replace(et,`[`).replace(tt,`]`)}function lt(e){return ct(e).replace(it,`{`).replace(ot,`}`).replace(nt,`^`)}function ut(e){return ct(e).replace($e,`%2B`).replace(st,`+`).replace(Je,`%23`).replace(Ye,`%26`).replace(rt,"`").replace(it,`{`).replace(ot,`}`).replace(nt,`^`)}function dt(e){return ut(e).replace(Ze,`%3D`)}function ft(e){return ct(e).replace(Je,`%23`).replace(Qe,`%3F`)}function pt(e){return ft(e).replace(Xe,`%2F`)}function U(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{}return``+e}var mt=/\/$/,ht=e=>e.replace(mt,``);function gt(e,t,n=`/`){let r,i={},a=``,o=``,s=t.indexOf(`#`),c=t.indexOf(`?`);return c=s>=0&&c>s?-1:c,c>=0&&(r=t.slice(0,c),a=t.slice(c,s>0?s:t.length),i=e(a.slice(1))),s>=0&&(r||=t.slice(0,s),o=t.slice(s,t.length)),r=Ct(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:U(o)}}function _t(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function vt(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function yt(e,t,n){let r=t.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&W(t.matched[r],n.matched[i])&&bt(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function W(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function bt(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!xt(e[n],t[n]))return!1;return!0}function xt(e,t){return H(e)?St(e,t):H(t)?St(t,e):e?.valueOf()===t?.valueOf()}function St(e,t){return H(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function Ct(e,t){if(e.startsWith(`/`))return e;if(!e)return t;let n=t.split(`/`),r=e.split(`/`),i=r[r.length-1];(i===`..`||i===`.`)&&r.push(``);let a=n.length-1,o,s;for(o=0;o<r.length;o++)if(s=r[o],s!==`.`)if(s===`..`)a>1&&a--;else break;return n.slice(0,a).join(`/`)+`/`+r.slice(o).join(`/`)}var G={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0},wt=function(e){return e.pop=`pop`,e.push=`push`,e}({}),Tt=function(e){return e.back=`back`,e.forward=`forward`,e.unknown=``,e}({});function Et(e){if(!e)if(z){let t=document.querySelector(`base`);e=t&&t.getAttribute(`href`)||`/`,e=e.replace(/^\w+:\/\/[^\/]+/,``)}else e=`/`;return e[0]!==`/`&&e[0]!==`#`&&(e=`/`+e),ht(e)}var Dt=/^[^#]+#/;function Ot(e,t){return e.replace(Dt,`#`)+t}function kt(e,t){let n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}var At=()=>({left:window.scrollX,top:window.scrollY});function jt(e){let t;if(`el`in e){let n=e.el,r=typeof n==`string`&&n.startsWith(`#`),i=typeof n==`string`?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return;t=kt(i,e)}else t=e;`scrollBehavior`in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left==null?window.scrollX:t.left,t.top==null?window.scrollY:t.top)}function Mt(e,t){return(history.state?history.state.position-t:-1)+e}var Nt=new Map;function Pt(e,t){Nt.set(e,t)}function Ft(e){let t=Nt.get(e);return Nt.delete(e),t}function It(e){return typeof e==`string`||e&&typeof e==`object`}function Lt(e){return typeof e==`string`||typeof e==`symbol`}var K=function(e){return e[e.MATCHER_NOT_FOUND=1]=`MATCHER_NOT_FOUND`,e[e.NAVIGATION_GUARD_REDIRECT=2]=`NAVIGATION_GUARD_REDIRECT`,e[e.NAVIGATION_ABORTED=4]=`NAVIGATION_ABORTED`,e[e.NAVIGATION_CANCELLED=8]=`NAVIGATION_CANCELLED`,e[e.NAVIGATION_DUPLICATED=16]=`NAVIGATION_DUPLICATED`,e}({}),Rt=Symbol(``);K.MATCHER_NOT_FOUND,K.NAVIGATION_GUARD_REDIRECT,K.NAVIGATION_ABORTED,K.NAVIGATION_CANCELLED,K.NAVIGATION_DUPLICATED;function q(e,t){return B(Error(),{type:e,[Rt]:!0},t)}function J(e,t){return e instanceof Error&&Rt in e&&(t==null||!!(e.type&t))}function zt(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;e<n.length;++e){let r=n[e].replace($e,` `),i=r.indexOf(`=`),a=U(i<0?r:r.slice(0,i)),o=i<0?null:U(r.slice(i+1));if(a in t){let e=t[a];H(e)||(e=t[a]=[e]),e.push(o)}else t[a]=o}return t}function Bt(e){let t=``;for(let n in e){let r=e[n];if(n=dt(n),r==null){r!==void 0&&(t+=(t.length?`&`:``)+n);continue}(H(r)?r.map(e=>e&&ut(e)):[r&&ut(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function Vt(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=H(r)?r.map(e=>e==null?null:``+e):r==null?r:``+r)}return t}var Ht=Symbol(``),Ut=Symbol(``),Wt=Symbol(``),Gt=Symbol(``),Kt=Symbol(``);function qt(){let e=[];function t(t){return e.push(t),()=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Y(e,t,n,r,i,a=e=>e()){let o=r&&(r.enterCallbacks[i]=r.enterCallbacks[i]||[]);return()=>new Promise((s,c)=>{let l=e=>{e===!1?c(q(K.NAVIGATION_ABORTED,{from:n,to:t})):e instanceof Error?c(e):It(e)?c(q(K.NAVIGATION_GUARD_REDIRECT,{from:t,to:e})):(o&&r.enterCallbacks[i]===o&&typeof e==`function`&&o.push(e),s())},u=a(()=>e.call(r&&r.instances[i],t,n,l)),d=Promise.resolve(u);e.length<3&&(d=d.then(l)),d.catch(e=>c(e))})}function Jt(e,t,n,r,i=e=>e()){let a=[];for(let o of e)for(let e in o.components){let s=o.components[e];if(!(t!==`beforeRouteEnter`&&!o.instances[e]))if(We(s)){let c=(s.__vccOpts||s)[t];c&&a.push(Y(c,n,r,o,e,i))}else{let c=s();a.push(()=>c.then(a=>{if(!a)throw Error(`Couldn't resolve component "${e}" at "${o.path}"`);let s=Ge(a)?a.default:a;o.mods[e]=a,o.components[e]=s;let c=(s.__vccOpts||s)[t];return c&&Y(c,n,r,o,e,i)()}))}}return a}function Yt(e,t){let n=[],r=[],i=[],a=Math.max(t.matched.length,e.matched.length);for(let o=0;o<a;o++){let a=t.matched[o];a&&(e.matched.find(e=>W(e,a))?r.push(a):n.push(a));let s=e.matched[o];s&&(t.matched.find(e=>W(e,s))||i.push(s))}return[n,r,i]}var Xt=()=>location.protocol+`//`+location.host;function Zt(e,t){let{pathname:n,search:r,hash:i}=t,a=e.indexOf(`#`);if(a>-1){let t=i.includes(e.slice(a))?e.slice(a).length:1,n=i.slice(t);return n[0]!==`/`&&(n=`/`+n),vt(n,``)}return vt(n,e)+r+i}function Qt(e,t,n,r){let i=[],a=[],o=null,s=({state:a})=>{let s=Zt(e,location),c=n.value,l=t.value,u=0;if(a){if(n.value=s,t.value=a,o&&o===c){o=null;return}u=l?a.position-l.position:0}else r(s);i.forEach(e=>{e(n.value,c,{delta:u,type:wt.pop,direction:u?u>0?Tt.forward:Tt.back:Tt.unknown})})};function c(){o=n.value}function l(e){i.push(e);let t=()=>{let t=i.indexOf(e);t>-1&&i.splice(t,1)};return a.push(t),t}function u(){if(document.visibilityState===`hidden`){let{history:e}=window;if(!e.state)return;e.replaceState(B({},e.state,{scroll:At()}),``)}}function d(){for(let e of a)e();a=[],window.removeEventListener(`popstate`,s),window.removeEventListener(`pagehide`,u),document.removeEventListener(`visibilitychange`,u)}return window.addEventListener(`popstate`,s),window.addEventListener(`pagehide`,u),document.addEventListener(`visibilitychange`,u),{pauseListeners:c,listen:l,destroy:d}}function $t(e,t,n,r=!1,i=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:i?At():null}}function en(e){let{history:t,location:n}=window,r={value:Zt(e,n)},i={value:t.state};i.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(r,a,o){let s=e.indexOf(`#`),c=s>-1?(n.host&&document.querySelector(`base`)?e:e.slice(s))+r:Xt()+e+r;try{t[o?`replaceState`:`pushState`](a,``,c),i.value=a}catch(e){console.error(e),n[o?`replace`:`assign`](c)}}function o(e,n){a(e,B({},t.state,$t(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),r.value=e}function s(e,n){let o=B({},i.value,t.state,{forward:e,scroll:At()});a(o.current,o,!0),a(e,B({},$t(r.value,e,null),{position:o.position+1},n),!1),r.value=e}return{location:r,state:i,push:s,replace:o}}function tn(e){e=Et(e);let t=en(e),n=Qt(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=B({location:``,base:e,go:r,createHref:Ot.bind(null,e)},t,n);return Object.defineProperty(i,`location`,{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(i,`state`,{enumerable:!0,get:()=>t.state.value}),i}function nn(e){return e=location.host?e||location.pathname+location.search:``,e.includes(`#`)||(e+=`#`),tn(e)}var X=function(e){return e[e.Static=0]=`Static`,e[e.Param=1]=`Param`,e[e.Group=2]=`Group`,e}({}),Z=function(e){return e[e.Static=0]=`Static`,e[e.Param=1]=`Param`,e[e.ParamRegExp=2]=`ParamRegExp`,e[e.ParamRegExpEnd=3]=`ParamRegExpEnd`,e[e.EscapeNext=4]=`EscapeNext`,e}(Z||{}),rn={type:X.Static,value:``},an=/[a-zA-Z0-9_]/;function on(e){if(!e)return[[]];if(e===`/`)return[[rn]];if(!e.startsWith(`/`))throw Error(`Invalid path "${e}"`);function t(e){throw Error(`ERR (${n})/"${l}": ${e}`)}let n=Z.Static,r=n,i=[],a;function o(){a&&i.push(a),a=[]}let s=0,c,l=``,u=``;function d(){l&&=(n===Z.Static?a.push({type:X.Static,value:l}):n===Z.Param||n===Z.ParamRegExp||n===Z.ParamRegExpEnd?(a.length>1&&(c===`*`||c===`+`)&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),a.push({type:X.Param,value:l,regexp:u,repeatable:c===`*`||c===`+`,optional:c===`*`||c===`?`})):t(`Invalid state to consume buffer`),``)}function f(){l+=c}for(;s<e.length;){if(c=e[s++],c===`\\`&&n!==Z.ParamRegExp){r=n,n=Z.EscapeNext;continue}switch(n){case Z.Static:c===`/`?(l&&d(),o()):c===`:`?(d(),n=Z.Param):f();break;case Z.EscapeNext:f(),n=r;break;case Z.Param:c===`(`?n=Z.ParamRegExp:an.test(c)?f():(d(),n=Z.Static,c!==`*`&&c!==`?`&&c!==`+`&&s--);break;case Z.ParamRegExp:c===`)`?u[u.length-1]==`\\`?u=u.slice(0,-1)+c:n=Z.ParamRegExpEnd:u+=c;break;case Z.ParamRegExpEnd:d(),n=Z.Static,c!==`*`&&c!==`?`&&c!==`+`&&s--,u=``;break;default:t(`Unknown state`);break}}return n===Z.ParamRegExp&&t(`Unfinished custom RegExp for param "${l}"`),d(),o(),i}var sn=`[^/]+?`,cn={sensitive:!1,strict:!1,start:!0,end:!0},Q=function(e){return e[e._multiplier=10]=`_multiplier`,e[e.Root=90]=`Root`,e[e.Segment=40]=`Segment`,e[e.SubSegment=30]=`SubSegment`,e[e.Static=40]=`Static`,e[e.Dynamic=20]=`Dynamic`,e[e.BonusCustomRegExp=10]=`BonusCustomRegExp`,e[e.BonusWildcard=-50]=`BonusWildcard`,e[e.BonusRepeatable=-20]=`BonusRepeatable`,e[e.BonusOptional=-8]=`BonusOptional`,e[e.BonusStrict=.7000000000000001]=`BonusStrict`,e[e.BonusCaseSensitive=.25]=`BonusCaseSensitive`,e}(Q||{}),ln=/[.+*?^${}()[\]/\\]/g;function un(e,t){let n=B({},cn,t),r=[],i=n.start?`^`:``,a=[];for(let t of e){let e=t.length?[]:[Q.Root];n.strict&&!t.length&&(i+=`/`);for(let r=0;r<t.length;r++){let o=t[r],s=Q.Segment+(n.sensitive?Q.BonusCaseSensitive:0);if(o.type===X.Static)r||(i+=`/`),i+=o.value.replace(ln,`\\$&`),s+=Q.Static;else if(o.type===X.Param){let{value:e,repeatable:n,optional:c,regexp:l}=o;a.push({name:e,repeatable:n,optional:c});let u=l||sn;if(u!==sn){s+=Q.BonusCustomRegExp;try{`${u}`}catch(t){throw Error(`Invalid custom RegExp for param "${e}" (${u}): `+t.message)}}let d=n?`((?:${u})(?:/(?:${u}))*)`:`(${u})`;r||(d=c&&t.length<2?`(?:/${d})`:`/`+d),c&&(d+=`?`),i+=d,s+=Q.Dynamic,c&&(s+=Q.BonusOptional),n&&(s+=Q.BonusRepeatable),u===`.*`&&(s+=Q.BonusWildcard)}e.push(s)}r.push(e)}if(n.strict&&n.end){let e=r.length-1;r[e][r[e].length-1]+=Q.BonusStrict}n.strict||(i+=`/?`),n.end?i+=`$`:n.strict&&!i.endsWith(`/`)&&(i+=`(?:/|$)`);let o=new RegExp(i,n.sensitive?``:`i`);function s(e){let t=e.match(o),n={};if(!t)return null;for(let e=1;e<t.length;e++){let r=t[e]||``,i=a[e-1];n[i.name]=r&&i.repeatable?r.split(`/`):r}return n}function c(t){let n=``,r=!1;for(let i of e){(!r||!n.endsWith(`/`))&&(n+=`/`),r=!1;for(let e of i)if(e.type===X.Static)n+=e.value;else if(e.type===X.Param){let{value:a,repeatable:o,optional:s}=e,c=a in t?t[a]:``;if(H(c)&&!o)throw Error(`Provided param "${a}" is an array but it is not repeatable (* or + modifiers)`);let l=H(c)?c.join(`/`):c;if(!l)if(s)i.length<2&&(n.endsWith(`/`)?n=n.slice(0,-1):r=!0);else throw Error(`Missing required param "${a}"`);n+=l}}return n||`/`}return{re:o,score:r,keys:a,parse:s,stringify:c}}function dn(e,t){let n=0;for(;n<e.length&&n<t.length;){let r=t[n]-e[n];if(r)return r;n++}return e.length<t.length?e.length===1&&e[0]===Q.Static+Q.Segment?-1:1:e.length>t.length?t.length===1&&t[0]===Q.Static+Q.Segment?1:-1:0}function fn(e,t){let n=0,r=e.score,i=t.score;for(;n<r.length&&n<i.length;){let e=dn(r[n],i[n]);if(e)return e;n++}if(Math.abs(i.length-r.length)===1){if(pn(r))return 1;if(pn(i))return-1}return i.length-r.length}function pn(e){let t=e[e.length-1];return e.length>0&&t[t.length-1]<0}var mn={strict:!1,end:!0,sensitive:!1};function hn(e,t,n){let r=B(un(on(e.path),n),{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function gn(e,t){let n=[],r=new Map;t=qe(mn,t);function i(e){return r.get(e)}function a(e,n,r){let i=!r,s=vn(e);s.aliasOf=r&&r.record;let l=qe(t,e),u=[s];if(`alias`in e){let t=typeof e.alias==`string`?[e.alias]:e.alias;for(let e of t)u.push(vn(B({},s,{components:r?r.record.components:s.components,path:e,aliasOf:r?r.record:s})))}let d,f;for(let t of u){let{path:u}=t;if(n&&u[0]!==`/`){let e=n.record.path,r=e[e.length-1]===`/`?``:`/`;t.path=n.record.path+(u&&r+u)}if(d=hn(t,n,l),r?r.alias.push(d):(f||=d,f!==d&&f.alias.push(d),i&&e.name&&!bn(d)&&o(e.name)),wn(d)&&c(d),s.children){let e=s.children;for(let t=0;t<e.length;t++)a(e[t],d,r&&r.children[t])}r||=d}return f?()=>{o(f)}:V}function o(e){if(Lt(e)){let t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(o),t.alias.forEach(o))}else{let t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(o),e.alias.forEach(o))}}function s(){return n}function c(e){let t=Sn(e,n);n.splice(t,0,e),e.record.name&&!bn(e)&&r.set(e.record.name,e)}function l(e,t){let i,a={},o,s;if(`name`in e&&e.name){if(i=r.get(e.name),!i)throw q(K.MATCHER_NOT_FOUND,{location:e});s=i.record.name,a=B(_n(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&_n(e.params,i.keys.map(e=>e.name))),o=i.stringify(a)}else if(e.path!=null)o=e.path,i=n.find(e=>e.re.test(o)),i&&(a=i.parse(o),s=i.record.name);else{if(i=t.name?r.get(t.name):n.find(e=>e.re.test(t.path)),!i)throw q(K.MATCHER_NOT_FOUND,{location:e,currentLocation:t});s=i.record.name,a=B({},t.params,e.params),o=i.stringify(a)}let c=[],l=i;for(;l;)c.unshift(l.record),l=l.parent;return{name:s,path:o,params:a,matched:c,meta:xn(c)}}e.forEach(e=>a(e));function u(){n.length=0,r.clear()}return{addRoute:a,resolve:l,removeRoute:o,clearRoutes:u,getRoutes:s,getRecordMatcher:i}}function _n(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function vn(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:yn(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,`mods`,{value:{}}),t}function yn(e){let t={},n=e.props||!1;if(`component`in e)t.default=n;else for(let r in e.components)t[r]=typeof n==`object`?n[r]:n;return t}function bn(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function xn(e){return e.reduce((e,t)=>B(e,t.meta),{})}function Sn(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;fn(e,t[i])<0?r=i:n=i+1}let i=Cn(e);return i&&(r=t.lastIndexOf(i,r-1)),r}function Cn(e){let t=e;for(;t=t.parent;)if(wn(t)&&fn(e,t)===0)return t}function wn({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Tn(e){let n=t(Wt),r=t(Gt),i=_(()=>{let t=y(e.to);return n.resolve(t)}),a=_(()=>{let{matched:e}=i.value,{length:t}=e,n=e[t-1],a=r.matched;if(!n||!a.length)return-1;let o=a.findIndex(W.bind(null,n));if(o>-1)return o;let s=An(e[t-2]);return t>1&&An(n)===s&&a[a.length-1].path!==s?a.findIndex(W.bind(null,e[t-2])):o}),o=_(()=>a.value>-1&&kn(r.params,i.value.params)),s=_(()=>a.value>-1&&a.value===r.matched.length-1&&bt(r.params,i.value.params));function c(t={}){if(On(t)){let t=n[y(e.replace)?`replace`:`push`](y(e.to)).catch(V);return e.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>t),t}return Promise.resolve()}return{route:i,href:_(()=>i.value.href),isActive:o,isExactActive:s,navigate:c}}function En(e){return e.length===1?e[0]:e}var Dn=S({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink:Tn,setup(n,{slots:r}){let i=e(Tn(n)),{options:a}=t(Wt),o=_(()=>({[jn(n.activeClass,a.linkActiveClass,`router-link-active`)]:i.isActive,[jn(n.exactActiveClass,a.linkExactActiveClass,`router-link-exact-active`)]:i.isExactActive}));return()=>{let e=r.default&&En(r.default(i));return n.custom?e:C(`a`,{"aria-current":i.isExactActive?n.ariaCurrentValue:null,href:i.href,onClick:i.navigate,class:o.value},e)}}});function On(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){let t=e.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function kn(e,t){for(let n in t){let r=t[n],i=e[n];if(typeof r==`string`){if(r!==i)return!1}else if(!H(i)||i.length!==r.length||r.some((e,t)=>e.valueOf()!==i[t].valueOf()))return!1}return!0}function An(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}var jn=(e,t,n)=>e??t??n,Mn=S({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(e,{attrs:n,slots:r}){let i=t(Kt),a=_(()=>e.route||i.value),s=t(Ut,0),c=_(()=>{let e=y(s),{matched:t}=a.value,n;for(;(n=t[e])&&!n.components;)e++;return e}),u=_(()=>a.value.matched[c.value]);o(Ut,_(()=>c.value+1)),o(Ht,u),o(Kt,a);let d=b();return l(()=>[d.value,u.value,e.name],([e,t,n],[r,i,a])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),e&&t&&(!i||!W(t,i)||!r)&&(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:`post`}),()=>{let t=a.value,i=e.name,o=u.value,s=o&&o.components[i];if(!s)return Nn(r.default,{Component:s,route:t});let c=o.props[i],l=C(s,B({},c?c===!0?t.params:typeof c==`function`?c(t):c:null,n,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(o.instances[i]=null)},ref:d}));return Nn(r.default,{Component:l,route:t})||l}}});function Nn(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}var Pn=Mn;function Fn(e){let t=gn(e.routes,e),n=e.parseQuery||zt,i=e.stringifyQuery||Bt,a=e.history,o=qt(),s=qt(),c=qt(),l=te(G),u=G;z&&e.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let d=Ke.bind(null,e=>``+e),f=Ke.bind(null,pt),p=Ke.bind(null,U);function m(e,n){let r,i;return Lt(e)?(r=t.getRecordMatcher(e),i=n):i=e,t.addRoute(i,r)}function h(e){let n=t.getRecordMatcher(e);n&&t.removeRoute(n)}function g(){return t.getRoutes().map(e=>e.record)}function _(e){return!!t.getRecordMatcher(e)}function v(e,r){if(r=B({},r||l.value),typeof e==`string`){let i=gt(n,e,r.path),o=t.resolve({path:i.path},r),s=a.createHref(i.fullPath);return B(i,o,{params:p(o.params),hash:U(i.hash),redirectedFrom:void 0,href:s})}let o;if(e.path!=null)o=B({},e,{path:gt(n,e.path,r.path).path});else{let t=B({},e.params);for(let e in t)t[e]??delete t[e];o=B({},e,{params:f(t)}),r.params=f(r.params)}let s=t.resolve(o,r),c=e.hash||``;s.params=d(p(s.params));let u=_t(i,B({},e,{hash:lt(c),path:s.path})),m=a.createHref(u);return B({fullPath:u,hash:c,query:i===Bt?Vt(e.query):e.query||{}},s,{redirectedFrom:void 0,href:m})}function b(e){return typeof e==`string`?gt(n,e,l.value.path):B({},e)}function x(e,t){if(u!==e)return q(K.NAVIGATION_CANCELLED,{from:t,to:e})}function S(e){return w(e)}function ne(e){return S(B(b(e),{replace:!0}))}function C(e,t){let n=e.matched[e.matched.length-1];if(n&&n.redirect){let{redirect:r}=n,i=typeof r==`function`?r(e,t):r;return typeof i==`string`&&(i=i.includes(`?`)||i.includes(`#`)?i=b(i):{path:i},i.params={}),B({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function w(e,t){let n=u=v(e),r=l.value,a=e.state,o=e.force,s=e.replace===!0,c=C(n,r);if(c)return w(B(b(c),{state:typeof c==`object`?B({},a,c.state):a,force:o,replace:s}),t||n);let d=n;d.redirectedFrom=t;let f;return!o&&yt(i,r,n)&&(f=q(K.NAVIGATION_DUPLICATED,{to:d,from:r}),ce(r,r,!0,!1)),(f?Promise.resolve(f):D(d,r)).catch(e=>J(e)?J(e,K.NAVIGATION_GUARD_REDIRECT)?e:M(e):oe(e,d,r)).then(e=>{if(e){if(J(e,K.NAVIGATION_GUARD_REDIRECT))return w(B({replace:s},b(e.to),{state:typeof e.to==`object`?B({},a,e.to.state):a,force:o}),t||d)}else e=re(d,r,!0,s,a);return O(d,r,e),e})}function T(e,t){let n=x(e,t);return n?Promise.reject(n):Promise.resolve()}function E(e){let t=P.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function D(e,t){let n,[r,i,a]=Yt(e,t);n=Jt(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push(Y(r,e,t))});let c=T.bind(null,e,t);return n.push(c),I(n).then(()=>{n=[];for(let r of o.list())n.push(Y(r,e,t));return n.push(c),I(n)}).then(()=>{n=Jt(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push(Y(r,e,t))});return n.push(c),I(n)}).then(()=>{n=[];for(let r of a)if(r.beforeEnter)if(H(r.beforeEnter))for(let i of r.beforeEnter)n.push(Y(i,e,t));else n.push(Y(r.beforeEnter,e,t));return n.push(c),I(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=Jt(a,`beforeRouteEnter`,e,t,E),n.push(c),I(n))).then(()=>{n=[];for(let r of s.list())n.push(Y(r,e,t));return n.push(c),I(n)}).catch(e=>J(e,K.NAVIGATION_CANCELLED)?e:Promise.reject(e))}function O(e,t,n){c.list().forEach(r=>E(()=>r(e,t,n)))}function re(e,t,n,r,i){let o=x(e,t);if(o)return o;let s=t===G,c=z?history.state:{};n&&(r||s?a.replace(e.fullPath,B({scroll:s&&c&&c.scroll},i)):a.push(e.fullPath,i)),l.value=e,ce(e,t,n,s),M()}let k;function ie(){k||=a.listen((e,t,n)=>{if(!F.listening)return;let r=v(e),i=C(r,F.currentRoute.value);if(i){w(B(i,{replace:!0,force:!0}),r).catch(V);return}u=r;let o=l.value;z&&Pt(Mt(o.fullPath,n.delta),At()),D(r,o).catch(e=>J(e,K.NAVIGATION_ABORTED|K.NAVIGATION_CANCELLED)?e:J(e,K.NAVIGATION_GUARD_REDIRECT)?(w(B(b(e.to),{force:!0}),r).then(e=>{J(e,K.NAVIGATION_ABORTED|K.NAVIGATION_DUPLICATED)&&!n.delta&&n.type===wt.pop&&a.go(-1,!1)}).catch(V),Promise.reject()):(n.delta&&a.go(-n.delta,!1),oe(e,r,o))).then(e=>{e||=re(r,o,!1),e&&(n.delta&&!J(e,K.NAVIGATION_CANCELLED)?a.go(-n.delta,!1):n.type===wt.pop&&J(e,K.NAVIGATION_ABORTED|K.NAVIGATION_DUPLICATED)&&a.go(-1,!1)),O(r,o,e)}).catch(V)})}let A=qt(),ae=qt(),j;function oe(e,t,n){M(e);let r=ae.list();return r.length?r.forEach(r=>r(e,t,n)):console.error(e),Promise.reject(e)}function se(){return j&&l.value!==G?Promise.resolve():new Promise((e,t)=>{A.add([e,t])})}function M(e){return j||(j=!e,ie(),A.list().forEach(([t,n])=>e?n(e):t()),A.reset()),e}function ce(t,n,i,a){let{scrollBehavior:o}=e;if(!z||!o)return Promise.resolve();let s=!i&&Ft(Mt(t.fullPath,0))||(a||!i)&&history.state&&history.state.scroll||null;return r().then(()=>o(t,n,s)).then(e=>e&&jt(e)).catch(e=>oe(e,t,n))}let N=e=>a.go(e),le,P=new Set,F={currentRoute:l,listening:!0,addRoute:m,removeRoute:h,clearRoutes:t.clearRoutes,hasRoute:_,getRoutes:g,resolve:v,options:e,push:S,replace:ne,go:N,back:()=>N(-1),forward:()=>N(1),beforeEach:o.add,beforeResolve:s.add,afterEach:c.add,onError:ae.add,isReady:se,install(e){e.component(`RouterLink`,Dn),e.component(`RouterView`,Pn),e.config.globalProperties.$router=F,Object.defineProperty(e.config.globalProperties,`$route`,{enumerable:!0,get:()=>y(l)}),z&&!le&&l.value===G&&(le=!0,S(a.location).catch(e=>{}));let t={};for(let e in G)Object.defineProperty(t,e,{get:()=>l.value[e],enumerable:!0});e.provide(Wt,F),e.provide(Gt,ee(t)),e.provide(Kt,l);let n=e.unmount;P.add(e),e.unmount=function(){P.delete(e),P.size<1&&(u=G,k&&k(),k=null,l.value=G,le=!1,j=!1),n()}}};function I(e){return e.reduce((e,t)=>e.then(()=>E(t)),Promise.resolve())}return F}function In(){return t(Wt)}function Ln(e){return t(Gt)}var Rn=Fn({history:nn(),routes:[{path:`/`,name:`chat`,component:()=>L(()=>import(`./ChatView-DmXZ5Q3Z.js`),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19]))},{path:`/jobs`,name:`jobs`,component:()=>L(()=>import(`./JobsView-CQf4Y7Mw.js`),__vite__mapDeps([20,1,2,5,6,7,8,9,21,15,17,22,18,11,23,3,4,12,24]))},{path:`/logs`,name:`logs`,component:()=>L(()=>import(`./LogsView-CKyL3UT5.js`),__vite__mapDeps([25,1,2,8,21,6,7,17,22,12,26]))},{path:`/skills`,name:`skills`,component:()=>L(()=>import(`./SkillsView-BfnrX5TQ.js`),__vite__mapDeps([27,1,2,3,4,15,6,28,12,29]))},{path:`/memory`,name:`memory`,component:()=>L(()=>import(`./MemoryView-BBwqM3vf.js`),__vite__mapDeps([30,1,2,3,4,8,17,28,12,31]))},{path:`/settings`,name:`settings`,component:()=>L(()=>import(`./SettingsView-D1hOGA0Z.js`),__vite__mapDeps([32,1,2,6,7,8,21,14,15,9,16,17,18,13,3,4,11,12,33]))}]}),{cubicBezierEaseInOut:$,cubicBezierEaseOut:zn,cubicBezierEaseIn:Bn}=ie;function Vn({overflow:e=`hidden`,duration:t=`.3s`,originalTransition:n=``,leavingDelay:r=`0s`,foldPadding:i=!1,enterToProps:a=void 0,leaveToProps:o=void 0,reverse:s=!1}={}){let c=s?`leave`:`enter`,l=s?`enter`:`leave`;return[k(`&.fade-in-height-expand-transition-${l}-from,
3
3
  &.fade-in-height-expand-transition-${c}-to`,Object.assign(Object.assign({},a),{opacity:1})),k(`&.fade-in-height-expand-transition-${l}-to,
4
4
  &.fade-in-height-expand-transition-${c}-from`,Object.assign(Object.assign({},o),{opacity:0,marginTop:`0 !important`,marginBottom:`0 !important`,paddingTop:i?`0 !important`:void 0,paddingBottom:i?`0 !important`:void 0})),k(`&.fade-in-height-expand-transition-${l}-active`,`
5
5
  overflow: ${e};
@@ -21,7 +21,7 @@ import{$ as e,C as t,Ct as n,E as r,F as i,G as a,I as o,M as s,N as c,U as l,W
21
21
  padding-top ${t} ${$},
22
22
  padding-bottom ${t} ${$}
23
23
  ${n?`,${n}`:``}
24
- `)]}var Hn=S({name:`ConfigProvider`,alias:[`App`],props:{abstract:Boolean,bordered:{type:Boolean,default:void 0},clsPrefix:String,locale:Object,dateLocale:Object,namespace:String,rtl:Array,tag:{type:String,default:`div`},hljs:Object,katex:Object,theme:Object,themeOverrides:Object,componentOptions:Object,icons:Object,breakpoints:Object,preflightStyleDisabled:Boolean,styleMountTarget:Object,inlineThemeDisabled:{type:Boolean,default:void 0},as:{type:String,validator:()=>(E(`config-provider`,"`as` is deprecated, please use `tag` instead."),!0),default:void 0}},setup(e){let n=t(O,null),r=_(()=>{let{theme:t}=e;if(t===null)return;let r=n?.mergedThemeRef.value;return t===void 0?r:r===void 0?t:Object.assign({},r,t)}),i=_(()=>{let{themeOverrides:t}=e;if(t!==null){if(t===void 0)return n?.mergedThemeOverridesRef.value;{let e=n?.mergedThemeOverridesRef.value;return e===void 0?t:ce({},e,t)}}}),a=F(()=>{let{namespace:t}=e;return t===void 0?n?.mergedNamespaceRef.value:t}),s=F(()=>{let{bordered:t}=e;return t===void 0?n?.mergedBorderedRef.value:t}),c=_(()=>{let{icons:t}=e;return t===void 0?n?.mergedIconsRef.value:t}),l=_(()=>{let{componentOptions:t}=e;return t===void 0?n?.mergedComponentPropsRef.value:t}),u=_(()=>{let{clsPrefix:t}=e;return t===void 0?n?n.mergedClsPrefixRef.value:`n`:t}),f=_(()=>{var t;let{rtl:r}=e;if(r===void 0)return n?.mergedRtlRef.value;let i={};for(let e of r)i[e.name]=d(e),(t=e.peers)==null||t.forEach(e=>{e.name in i||(i[e.name]=d(e))});return i}),p=_(()=>e.breakpoints||n?.mergedBreakpointsRef.value),m=e.inlineThemeDisabled||n?.inlineThemeDisabled,h=e.preflightStyleDisabled||n?.preflightStyleDisabled,g=e.styleMountTarget||n?.styleMountTarget;return o(O,{mergedThemeHashRef:_(()=>{let{value:e}=r,{value:t}=i,n=t&&Object.keys(t).length!==0,a=e?.name;return a?n?`${a}-${fe(JSON.stringify(i.value))}`:a:n?fe(JSON.stringify(i.value)):``}),mergedBreakpointsRef:p,mergedRtlRef:f,mergedIconsRef:c,mergedComponentPropsRef:l,mergedBorderedRef:s,mergedNamespaceRef:a,mergedClsPrefixRef:u,mergedLocaleRef:_(()=>{let{locale:t}=e;if(t!==null)return t===void 0?n?.mergedLocaleRef.value:t}),mergedDateLocaleRef:_(()=>{let{dateLocale:t}=e;if(t!==null)return t===void 0?n?.mergedDateLocaleRef.value:t}),mergedHljsRef:_(()=>{let{hljs:t}=e;return t===void 0?n?.mergedHljsRef.value:t}),mergedKatexRef:_(()=>{let{katex:t}=e;return t===void 0?n?.mergedKatexRef.value:t}),mergedThemeRef:r,mergedThemeOverridesRef:i,inlineThemeDisabled:m||!1,preflightStyleDisabled:h||!1,styleMountTarget:g}),{mergedClsPrefix:u,mergedBordered:s,mergedNamespace:a,mergedTheme:r,mergedThemeOverrides:i}},render(){var e,t;return this.abstract?(t=this.$slots).default?.call(t):C(this.as||this.tag,{class:`${this.mergedClsPrefix||`n`}-config-provider`},(e=this.$slots).default?.call(e))}}),Un=Object.assign(Object.assign({},ke),{onAfterEnter:Function,onAfterLeave:Function,transformOrigin:String,blockScroll:{type:Boolean,default:!0},closeOnEsc:{type:Boolean,default:!0},onEsc:Function,autoFocus:{type:Boolean,default:!0},internalStyle:[String,Object],maskClosable:{type:Boolean,default:!0},zIndex:Number,onPositiveClick:Function,onNegativeClick:Function,onClose:Function,onMaskClick:Function,draggable:[Boolean,Object]}),Wn=S({name:`DialogEnvironment`,props:Object.assign(Object.assign({},Un),{internalKey:{type:String,required:!0},to:[String,Object],onInternalAfterLeave:{type:Function,required:!0}}),setup(e){let t=b(!0);function n(){let{onInternalAfterLeave:t,internalKey:n,onAfterLeave:r}=e;t&&t(n),r&&r()}function r(t){let{onPositiveClick:n}=e;n?Promise.resolve(n(t)).then(e=>{e!==!1&&c()}):c()}function i(t){let{onNegativeClick:n}=e;n?Promise.resolve(n(t)).then(e=>{e!==!1&&c()}):c()}function a(){let{onClose:t}=e;t?Promise.resolve(t()).then(e=>{e!==!1&&c()}):c()}function o(t){let{onMaskClick:n,maskClosable:r}=e;n&&(n(t),r&&c())}function s(){let{onEsc:t}=e;t&&t()}function c(){t.value=!1}function l(e){t.value=e}return{show:t,hide:c,handleUpdateShow:l,handleAfterLeave:n,handleCloseClick:a,handleNegativeClick:i,handlePositiveClick:r,handleMaskClick:o,handleEsc:s}},render(){let{handlePositiveClick:e,handleUpdateShow:t,handleNegativeClick:r,handleCloseClick:i,handleAfterLeave:a,handleMaskClick:o,handleEsc:s,to:c,zIndex:l,maskClosable:u,show:d}=this;return C(Fe,{show:d,onUpdateShow:t,onMaskClick:o,onEsc:s,to:c,zIndex:l,maskClosable:u,onAfterEnter:this.onAfterEnter,onAfterLeave:a,closeOnEsc:this.closeOnEsc,blockScroll:this.blockScroll,autoFocus:this.autoFocus,transformOrigin:this.transformOrigin,draggable:this.draggable,internalAppear:!0,internalDialog:!0},{default:({draggableClass:t})=>C(je,Object.assign({},ve(this.$props,Ne),{titleClass:n([this.titleClass,t]),style:this.internalStyle,onClose:i,onNegativeClick:r,onPositiveClick:e}))})}}),Gn=S({name:`DialogProvider`,props:{injectionKey:String,to:[String,Object]},setup(){let t=b([]),n={};function r(r={}){let i=_e(),a=e(Object.assign(Object.assign({},r),{key:i,destroy:()=>{var e;(e=n[`n-dialog-${i}`])==null||e.hide()}}));return t.value.push(a),a}let i=[`info`,`success`,`warning`,`error`].map(e=>t=>r(Object.assign(Object.assign({},t),{type:e})));function a(e){let{value:n}=t;n.splice(n.findIndex(t=>t.key===e),1)}function s(){Object.values(n).forEach(e=>{e?.hide()})}let c={create:r,destroyAll:s,info:i[0],success:i[1],warning:i[2],error:i[3]};return o(Te,c),o(Me,{clickedRef:De(64),clickedPositionRef:Oe()}),o(Pe,t),Object.assign(Object.assign({},c),{dialogList:t,dialogInstRefs:n,handleAfterLeave:a})},render(){var e;return C(g,null,[this.dialogList.map(e=>C(Wn,Ve(e,[`destroy`,`style`],{internalStyle:e.style,to:this.to,ref:t=>{t===null?delete this.dialogInstRefs[`n-dialog-${e.key}`]:this.dialogInstRefs[`n-dialog-${e.key}`]=t},internalKey:e.key,onInternalAfterLeave:this.handleAfterLeave}))),(e=this.$slots).default?.call(e)])}}),Kn={margin:`0 0 8px 0`,padding:`10px 20px`,maxWidth:`720px`,minWidth:`420px`,iconMargin:`0 10px 0 0`,closeMargin:`0 0 0 10px`,closeSize:`20px`,closeIconSize:`16px`,iconSize:`20px`,fontSize:`14px`};function qn(e){let{textColor2:t,closeIconColor:n,closeIconColorHover:r,closeIconColorPressed:i,infoColor:a,successColor:o,errorColor:s,warningColor:c,popoverColor:l,boxShadow2:u,primaryColor:d,lineHeight:f,borderRadius:p,closeColorHover:m,closeColorPressed:h}=e;return Object.assign(Object.assign({},Kn),{closeBorderRadius:p,textColor:t,textColorInfo:t,textColorSuccess:t,textColorError:t,textColorWarning:t,textColorLoading:t,color:l,colorInfo:l,colorSuccess:l,colorError:l,colorWarning:l,colorLoading:l,boxShadow:u,boxShadowInfo:u,boxShadowSuccess:u,boxShadowError:u,boxShadowWarning:u,boxShadowLoading:u,iconColor:t,iconColorInfo:a,iconColorSuccess:o,iconColorWarning:c,iconColorError:s,iconColorLoading:d,closeColorHover:m,closeColorPressed:h,closeIconColor:n,closeIconColorHover:r,closeIconColorPressed:i,closeColorHoverInfo:m,closeColorPressedInfo:h,closeIconColorInfo:n,closeIconColorHoverInfo:r,closeIconColorPressedInfo:i,closeColorHoverSuccess:m,closeColorPressedSuccess:h,closeIconColorSuccess:n,closeIconColorHoverSuccess:r,closeIconColorPressedSuccess:i,closeColorHoverError:m,closeColorPressedError:h,closeIconColorError:n,closeIconColorHoverError:r,closeIconColorPressedError:i,closeColorHoverWarning:m,closeColorPressedWarning:h,closeIconColorWarning:n,closeIconColorHoverWarning:r,closeIconColorPressedWarning:i,closeColorHoverLoading:m,closeColorPressedLoading:h,closeIconColorLoading:n,closeIconColorHoverLoading:r,closeIconColorPressedLoading:i,loadingColor:d,lineHeight:f,borderRadius:p,border:`0`})}var Jn={name:`Message`,common:P,self:qn},Yn={icon:Function,type:{type:String,default:`info`},content:[String,Number,Function],showIcon:{type:Boolean,default:!0},closable:Boolean,keepAliveOnHover:Boolean,spinProps:Object,onClose:Function,onMouseenter:Function,onMouseleave:Function},Xn=k([M(`message-wrapper`,`
24
+ `)]}var Hn=S({name:`ConfigProvider`,alias:[`App`],props:{abstract:Boolean,bordered:{type:Boolean,default:void 0},clsPrefix:String,locale:Object,dateLocale:Object,namespace:String,rtl:Array,tag:{type:String,default:`div`},hljs:Object,katex:Object,theme:Object,themeOverrides:Object,componentOptions:Object,icons:Object,breakpoints:Object,preflightStyleDisabled:Boolean,styleMountTarget:Object,inlineThemeDisabled:{type:Boolean,default:void 0},as:{type:String,validator:()=>(E(`config-provider`,"`as` is deprecated, please use `tag` instead."),!0),default:void 0}},setup(e){let n=t(O,null),r=_(()=>{let{theme:t}=e;if(t===null)return;let r=n?.mergedThemeRef.value;return t===void 0?r:r===void 0?t:Object.assign({},r,t)}),i=_(()=>{let{themeOverrides:t}=e;if(t!==null){if(t===void 0)return n?.mergedThemeOverridesRef.value;{let e=n?.mergedThemeOverridesRef.value;return e===void 0?t:ce({},e,t)}}}),a=F(()=>{let{namespace:t}=e;return t===void 0?n?.mergedNamespaceRef.value:t}),s=F(()=>{let{bordered:t}=e;return t===void 0?n?.mergedBorderedRef.value:t}),c=_(()=>{let{icons:t}=e;return t===void 0?n?.mergedIconsRef.value:t}),l=_(()=>{let{componentOptions:t}=e;return t===void 0?n?.mergedComponentPropsRef.value:t}),u=_(()=>{let{clsPrefix:t}=e;return t===void 0?n?n.mergedClsPrefixRef.value:`n`:t}),f=_(()=>{var t;let{rtl:r}=e;if(r===void 0)return n?.mergedRtlRef.value;let i={};for(let e of r)i[e.name]=d(e),(t=e.peers)==null||t.forEach(e=>{e.name in i||(i[e.name]=d(e))});return i}),p=_(()=>e.breakpoints||n?.mergedBreakpointsRef.value),m=e.inlineThemeDisabled||n?.inlineThemeDisabled,h=e.preflightStyleDisabled||n?.preflightStyleDisabled,g=e.styleMountTarget||n?.styleMountTarget;return o(O,{mergedThemeHashRef:_(()=>{let{value:e}=r,{value:t}=i,n=t&&Object.keys(t).length!==0,a=e?.name;return a?n?`${a}-${fe(JSON.stringify(i.value))}`:a:n?fe(JSON.stringify(i.value)):``}),mergedBreakpointsRef:p,mergedRtlRef:f,mergedIconsRef:c,mergedComponentPropsRef:l,mergedBorderedRef:s,mergedNamespaceRef:a,mergedClsPrefixRef:u,mergedLocaleRef:_(()=>{let{locale:t}=e;if(t!==null)return t===void 0?n?.mergedLocaleRef.value:t}),mergedDateLocaleRef:_(()=>{let{dateLocale:t}=e;if(t!==null)return t===void 0?n?.mergedDateLocaleRef.value:t}),mergedHljsRef:_(()=>{let{hljs:t}=e;return t===void 0?n?.mergedHljsRef.value:t}),mergedKatexRef:_(()=>{let{katex:t}=e;return t===void 0?n?.mergedKatexRef.value:t}),mergedThemeRef:r,mergedThemeOverridesRef:i,inlineThemeDisabled:m||!1,preflightStyleDisabled:h||!1,styleMountTarget:g}),{mergedClsPrefix:u,mergedBordered:s,mergedNamespace:a,mergedTheme:r,mergedThemeOverrides:i}},render(){var e,t;return this.abstract?(t=this.$slots).default?.call(t):C(this.as||this.tag,{class:`${this.mergedClsPrefix||`n`}-config-provider`},(e=this.$slots).default?.call(e))}}),Un=Object.assign(Object.assign({},be),{onAfterEnter:Function,onAfterLeave:Function,transformOrigin:String,blockScroll:{type:Boolean,default:!0},closeOnEsc:{type:Boolean,default:!0},onEsc:Function,autoFocus:{type:Boolean,default:!0},internalStyle:[String,Object],maskClosable:{type:Boolean,default:!0},zIndex:Number,onPositiveClick:Function,onNegativeClick:Function,onClose:Function,onMaskClick:Function,draggable:[Boolean,Object]}),Wn=S({name:`DialogEnvironment`,props:Object.assign(Object.assign({},Un),{internalKey:{type:String,required:!0},to:[String,Object],onInternalAfterLeave:{type:Function,required:!0}}),setup(e){let t=b(!0);function n(){let{onInternalAfterLeave:t,internalKey:n,onAfterLeave:r}=e;t&&t(n),r&&r()}function r(t){let{onPositiveClick:n}=e;n?Promise.resolve(n(t)).then(e=>{e!==!1&&c()}):c()}function i(t){let{onNegativeClick:n}=e;n?Promise.resolve(n(t)).then(e=>{e!==!1&&c()}):c()}function a(){let{onClose:t}=e;t?Promise.resolve(t()).then(e=>{e!==!1&&c()}):c()}function o(t){let{onMaskClick:n,maskClosable:r}=e;n&&(n(t),r&&c())}function s(){let{onEsc:t}=e;t&&t()}function c(){t.value=!1}function l(e){t.value=e}return{show:t,hide:c,handleUpdateShow:l,handleAfterLeave:n,handleCloseClick:a,handleNegativeClick:i,handlePositiveClick:r,handleMaskClick:o,handleEsc:s}},render(){let{handlePositiveClick:e,handleUpdateShow:t,handleNegativeClick:r,handleCloseClick:i,handleAfterLeave:a,handleMaskClick:o,handleEsc:s,to:c,zIndex:l,maskClosable:u,show:d}=this;return C(De,{show:d,onUpdateShow:t,onMaskClick:o,onEsc:s,to:c,zIndex:l,maskClosable:u,onAfterEnter:this.onAfterEnter,onAfterLeave:a,closeOnEsc:this.closeOnEsc,blockScroll:this.blockScroll,autoFocus:this.autoFocus,transformOrigin:this.transformOrigin,draggable:this.draggable,internalAppear:!0,internalDialog:!0},{default:({draggableClass:t})=>C(Se,Object.assign({},je(this.$props,Te),{titleClass:n([this.titleClass,t]),style:this.internalStyle,onClose:i,onNegativeClick:r,onPositiveClick:e}))})}}),Gn=S({name:`DialogProvider`,props:{injectionKey:String,to:[String,Object]},setup(){let t=b([]),n={};function r(r={}){let i=ke(),a=e(Object.assign(Object.assign({},r),{key:i,destroy:()=>{var e;(e=n[`n-dialog-${i}`])==null||e.hide()}}));return t.value.push(a),a}let i=[`info`,`success`,`warning`,`error`].map(e=>t=>r(Object.assign(Object.assign({},t),{type:e})));function a(e){let{value:n}=t;n.splice(n.findIndex(t=>t.key===e),1)}function s(){Object.values(n).forEach(e=>{e?.hide()})}let c={create:r,destroyAll:s,info:i[0],success:i[1],warning:i[2],error:i[3]};return o(ge,c),o(Ce,{clickedRef:ye(64),clickedPositionRef:we()}),o(Ee,t),Object.assign(Object.assign({},c),{dialogList:t,dialogInstRefs:n,handleAfterLeave:a})},render(){var e;return C(g,null,[this.dialogList.map(e=>C(Wn,Ve(e,[`destroy`,`style`],{internalStyle:e.style,to:this.to,ref:t=>{t===null?delete this.dialogInstRefs[`n-dialog-${e.key}`]:this.dialogInstRefs[`n-dialog-${e.key}`]=t},internalKey:e.key,onInternalAfterLeave:this.handleAfterLeave}))),(e=this.$slots).default?.call(e)])}}),Kn={margin:`0 0 8px 0`,padding:`10px 20px`,maxWidth:`720px`,minWidth:`420px`,iconMargin:`0 10px 0 0`,closeMargin:`0 0 0 10px`,closeSize:`20px`,closeIconSize:`16px`,iconSize:`20px`,fontSize:`14px`};function qn(e){let{textColor2:t,closeIconColor:n,closeIconColorHover:r,closeIconColorPressed:i,infoColor:a,successColor:o,errorColor:s,warningColor:c,popoverColor:l,boxShadow2:u,primaryColor:d,lineHeight:f,borderRadius:p,closeColorHover:m,closeColorPressed:h}=e;return Object.assign(Object.assign({},Kn),{closeBorderRadius:p,textColor:t,textColorInfo:t,textColorSuccess:t,textColorError:t,textColorWarning:t,textColorLoading:t,color:l,colorInfo:l,colorSuccess:l,colorError:l,colorWarning:l,colorLoading:l,boxShadow:u,boxShadowInfo:u,boxShadowSuccess:u,boxShadowError:u,boxShadowWarning:u,boxShadowLoading:u,iconColor:t,iconColorInfo:a,iconColorSuccess:o,iconColorWarning:c,iconColorError:s,iconColorLoading:d,closeColorHover:m,closeColorPressed:h,closeIconColor:n,closeIconColorHover:r,closeIconColorPressed:i,closeColorHoverInfo:m,closeColorPressedInfo:h,closeIconColorInfo:n,closeIconColorHoverInfo:r,closeIconColorPressedInfo:i,closeColorHoverSuccess:m,closeColorPressedSuccess:h,closeIconColorSuccess:n,closeIconColorHoverSuccess:r,closeIconColorPressedSuccess:i,closeColorHoverError:m,closeColorPressedError:h,closeIconColorError:n,closeIconColorHoverError:r,closeIconColorPressedError:i,closeColorHoverWarning:m,closeColorPressedWarning:h,closeIconColorWarning:n,closeIconColorHoverWarning:r,closeIconColorPressedWarning:i,closeColorHoverLoading:m,closeColorPressedLoading:h,closeIconColorLoading:n,closeIconColorHoverLoading:r,closeIconColorPressedLoading:i,loadingColor:d,lineHeight:f,borderRadius:p,border:`0`})}var Jn={name:`Message`,common:P,self:qn},Yn={icon:Function,type:{type:String,default:`info`},content:[String,Number,Function],showIcon:{type:Boolean,default:!0},closable:Boolean,keepAliveOnHover:Boolean,spinProps:Object,onClose:Function,onMouseenter:Function,onMouseleave:Function},Xn=k([M(`message-wrapper`,`
25
25
  margin: var(--n-margin);
26
26
  z-index: 0;
27
27
  transform-origin: top center;
@@ -115,7 +115,7 @@ import{$ as e,C as t,Ct as n,E as r,F as i,G as a,I as o,M as s,N as c,U as l,W
115
115
  right: 12px;
116
116
  justify-content: flex-end;
117
117
  align-items: flex-end;
118
- `)])]),Zn={info:()=>C(Ae,null),success:()=>C(Ee,null),warning:()=>C(ge,null),error:()=>C(Ie,null),default:()=>null},Qn=S({name:`Message`,props:Object.assign(Object.assign({},Yn),{render:Function}),setup(e){let{inlineThemeDisabled:n,mergedRtlRef:r}=T(e),{props:i,mergedClsPrefixRef:a}=t(Le),o=ae(`Message`,r,a),s=se(`Message`,`-message`,Xn,Jn,i,a),c=_(()=>{let{type:t}=e,{common:{cubicBezierEaseInOut:n},self:{padding:r,margin:i,maxWidth:a,iconMargin:o,closeMargin:c,closeSize:l,iconSize:u,fontSize:d,lineHeight:f,borderRadius:p,border:m,iconColorInfo:h,iconColorSuccess:g,iconColorWarning:_,iconColorError:ee,iconColorLoading:v,closeIconSize:te,closeBorderRadius:y,[N(`textColor`,t)]:b,[N(`boxShadow`,t)]:x,[N(`color`,t)]:S,[N(`closeColorHover`,t)]:ne,[N(`closeColorPressed`,t)]:C,[N(`closeIconColor`,t)]:w,[N(`closeIconColorPressed`,t)]:T,[N(`closeIconColorHover`,t)]:E}}=s.value;return{"--n-bezier":n,"--n-margin":i,"--n-padding":r,"--n-max-width":a,"--n-font-size":d,"--n-icon-margin":o,"--n-icon-size":u,"--n-close-icon-size":te,"--n-close-border-radius":y,"--n-close-size":l,"--n-close-margin":c,"--n-text-color":b,"--n-color":S,"--n-box-shadow":x,"--n-icon-color-info":h,"--n-icon-color-success":g,"--n-icon-color-warning":_,"--n-icon-color-error":ee,"--n-icon-color-loading":v,"--n-close-color-hover":ne,"--n-close-color-pressed":C,"--n-close-icon-color":w,"--n-close-icon-color-pressed":T,"--n-close-icon-color-hover":E,"--n-line-height":f,"--n-border-radius":p,"--n-border":m}}),l=n?D(`message`,_(()=>e.type[0]),c,{}):void 0;return{mergedClsPrefix:a,rtlEnabled:o,messageProviderProps:i,handleClose(){var t;(t=e.onClose)==null||t.call(e)},cssVars:n?void 0:c,themeClass:l?.themeClass,onRender:l?.onRender,placement:i.placement}},render(){let{render:e,type:t,closable:n,content:r,mergedClsPrefix:i,cssVars:a,themeClass:o,onRender:s,icon:c,handleClose:l,showIcon:u}=this;s?.();let d;return C(`div`,{class:[`${i}-message-wrapper`,o],onMouseenter:this.onMouseenter,onMouseleave:this.onMouseleave,style:[{alignItems:this.placement.startsWith(`top`)?`flex-start`:`flex-end`},a]},e?e(this.$props):C(`div`,{class:[`${i}-message ${i}-message--${t}-type`,this.rtlEnabled&&`${i}-message--rtl`]},(d=$n(c,t,i,this.spinProps))&&u?C(`div`,{class:`${i}-message__icon ${i}-message__icon--${t}-type`},C(I,null,{default:()=>d})):null,C(`div`,{class:`${i}-message__content`},R(r)),n?C(be,{clsPrefix:i,class:`${i}-message__close`,onClick:l,absolute:!0}):null))}});function $n(e,t,n,r){if(typeof e==`function`)return e();{let e=t===`loading`?C(oe,Object.assign({clsPrefix:n,strokeWidth:24,scale:.85},r)):Zn[t]();return e?C(xe,{clsPrefix:n,key:t},{default:()=>e}):null}}var er=S({name:`MessageEnvironment`,props:Object.assign(Object.assign({},Yn),{duration:{type:Number,default:3e3},onAfterLeave:Function,onLeave:Function,internalKey:{type:String,required:!0},onInternalAfterLeave:Function,onHide:Function,onAfterHide:Function}),setup(e){let t=null,n=b(!0);s(()=>{r()});function r(){let{duration:n}=e;n&&(t=window.setTimeout(o,n))}function i(e){e.currentTarget===e.target&&t!==null&&(window.clearTimeout(t),t=null)}function a(e){e.currentTarget===e.target&&r()}function o(){let{onHide:r}=e;n.value=!1,t&&=(window.clearTimeout(t),null),r&&r()}function c(){let{onClose:t}=e;t&&t(),o()}function l(){let{onAfterLeave:t,onInternalAfterLeave:n,onAfterHide:r,internalKey:i}=e;t&&t(),n&&n(i),r&&r()}function u(){o()}return{show:n,hide:o,handleClose:c,handleAfterLeave:l,handleMouseleave:a,handleMouseenter:i,deactivate:u}},render(){return C(Re,{appear:!0,onAfterLeave:this.handleAfterLeave,onLeave:this.onLeave},{default:()=>[this.show?C(Qn,{content:this.content,type:this.type,icon:this.icon,showIcon:this.showIcon,closable:this.closable,spinProps:this.spinProps,onClose:this.handleClose,onMouseenter:this.keepAliveOnHover?this.handleMouseenter:void 0,onMouseleave:this.keepAliveOnHover?this.handleMouseleave:void 0}):null]})}}),tr=S({name:`MessageProvider`,props:Object.assign(Object.assign({},se.props),{to:[String,Object],duration:{type:Number,default:3e3},keepAliveOnHover:Boolean,max:Number,placement:{type:String,default:`top`},closable:Boolean,containerClass:String,containerStyle:[String,Object]}),setup(t){let{mergedClsPrefixRef:n}=T(t),r=b([]),i=b({}),a={create(e,t){return s(e,Object.assign({type:`default`},t))},info(e,t){return s(e,Object.assign(Object.assign({},t),{type:`info`}))},success(e,t){return s(e,Object.assign(Object.assign({},t),{type:`success`}))},warning(e,t){return s(e,Object.assign(Object.assign({},t),{type:`warning`}))},error(e,t){return s(e,Object.assign(Object.assign({},t),{type:`error`}))},loading(e,t){return s(e,Object.assign(Object.assign({},t),{type:`loading`}))},destroyAll:l};o(Le,{props:t,mergedClsPrefixRef:n}),o(ze,a);function s(n,a){let o=_e(),s=e(Object.assign(Object.assign({},a),{content:n,key:o,destroy:()=>{var e;(e=i.value[o])==null||e.hide()}})),{max:c}=t;return c&&r.value.length>=c&&r.value.shift(),r.value.push(s),s}function c(e){r.value.splice(r.value.findIndex(t=>t.key===e),1),delete i.value[e]}function l(){Object.values(i.value).forEach(e=>{e.hide()})}return Object.assign({mergedClsPrefix:n,messageRefs:i,messageList:r,handleAfterLeave:c},a)},render(){var e;return C(g,null,(e=this.$slots).default?.call(e),this.messageList.length?C(p,{to:this.to??`body`},C(`div`,{class:[`${this.mergedClsPrefix}-message-container`,`${this.mergedClsPrefix}-message-container--${this.placement}`,this.containerClass],key:`message-container`,style:this.containerStyle},this.messageList.map(e=>C(er,Object.assign({ref:t=>{t&&(this.messageRefs[e.key]=t)},internalKey:e.key,onInternalAfterLeave:this.handleAfterLeave},Ve(e,[`destroy`],void 0),{duration:e.duration===void 0?this.duration:e.duration,keepAliveOnHover:e.keepAliveOnHover===void 0?this.keepAliveOnHover:e.keepAliveOnHover,closable:e.closable===void 0?this.closable:e.closable}))))):null)}}),nr={closeMargin:`16px 12px`,closeSize:`20px`,closeIconSize:`16px`,width:`365px`,padding:`16px`,titleFontSize:`16px`,metaFontSize:`12px`,descriptionFontSize:`12px`};function rr(e){let{textColor2:t,successColor:n,infoColor:r,warningColor:i,errorColor:a,popoverColor:o,closeIconColor:s,closeIconColorHover:c,closeIconColorPressed:l,closeColorHover:u,closeColorPressed:d,textColor1:f,textColor3:p,borderRadius:m,fontWeightStrong:h,boxShadow2:g,lineHeight:_,fontSize:ee}=e;return Object.assign(Object.assign({},nr),{borderRadius:m,lineHeight:_,fontSize:ee,headerFontWeight:h,iconColor:t,iconColorSuccess:n,iconColorInfo:r,iconColorWarning:i,iconColorError:a,color:o,textColor:t,closeIconColor:s,closeIconColorHover:c,closeIconColorPressed:l,closeBorderRadius:m,closeColorHover:u,closeColorPressed:d,headerTextColor:f,descriptionTextColor:p,actionTextColor:t,boxShadow:g})}var ir=re({name:`Notification`,common:P,peers:{Scrollbar:Se},self:rr}),ar=de(`n-notification-provider`),or=S({name:`NotificationContainer`,props:{scrollable:{type:Boolean,required:!0},placement:{type:String,required:!0}},setup(){let{mergedThemeRef:e,mergedClsPrefixRef:n,wipTransitionCountRef:r}=t(ar),i=b(null);return u(()=>{var e,t;r.value>0?(e=i?.value)==null||e.classList.add(`transitioning`):(t=i?.value)==null||t.classList.remove(`transitioning`)}),{selfRef:i,mergedTheme:e,mergedClsPrefix:n,transitioning:r}},render(){let{$slots:e,scrollable:t,mergedClsPrefix:n,mergedTheme:r,placement:i}=this;return C(`div`,{ref:`selfRef`,class:[`${n}-notification-container`,t&&`${n}-notification-container--scrollable`,`${n}-notification-container--${i}`]},t?C(Ce,{theme:r.peers.Scrollbar,themeOverrides:r.peerOverrides.Scrollbar,contentStyle:{overflow:`hidden`}},e):e)}}),sr={info:()=>C(Ae,null),success:()=>C(Ee,null),warning:()=>C(ge,null),error:()=>C(Ie,null),default:()=>null},cr={closable:{type:Boolean,default:!0},type:{type:String,default:`default`},avatar:Function,title:[String,Function],description:[String,Function],content:[String,Function],meta:[String,Function],action:[String,Function],onClose:{type:Function,required:!0},keepAliveOnHover:Boolean,onMouseenter:Function,onMouseleave:Function},lr=Be(cr),ur=S({name:`Notification`,props:cr,setup(e){let{mergedClsPrefixRef:n,mergedThemeRef:r,props:i}=t(ar),{inlineThemeDisabled:a,mergedRtlRef:o}=T(),s=ae(`Notification`,o,n),c=_(()=>{let{type:t}=e,{self:{color:n,textColor:i,closeIconColor:a,closeIconColorHover:o,closeIconColorPressed:s,headerTextColor:c,descriptionTextColor:l,actionTextColor:u,borderRadius:d,headerFontWeight:f,boxShadow:p,lineHeight:m,fontSize:h,closeMargin:g,closeSize:_,width:ee,padding:v,closeIconSize:te,closeBorderRadius:y,closeColorHover:b,closeColorPressed:x,titleFontSize:S,metaFontSize:ne,descriptionFontSize:C,[N(`iconColor`,t)]:w},common:{cubicBezierEaseOut:T,cubicBezierEaseIn:E,cubicBezierEaseInOut:D}}=r.value,{left:O,right:re,top:k,bottom:ie}=we(v);return{"--n-color":n,"--n-font-size":h,"--n-text-color":i,"--n-description-text-color":l,"--n-action-text-color":u,"--n-title-text-color":c,"--n-title-font-weight":f,"--n-bezier":D,"--n-bezier-ease-out":T,"--n-bezier-ease-in":E,"--n-border-radius":d,"--n-box-shadow":p,"--n-close-border-radius":y,"--n-close-color-hover":b,"--n-close-color-pressed":x,"--n-close-icon-color":a,"--n-close-icon-color-hover":o,"--n-close-icon-color-pressed":s,"--n-line-height":m,"--n-icon-color":w,"--n-close-margin":g,"--n-close-size":_,"--n-close-icon-size":te,"--n-width":ee,"--n-padding-left":O,"--n-padding-right":re,"--n-padding-top":k,"--n-padding-bottom":ie,"--n-title-font-size":S,"--n-meta-font-size":ne,"--n-description-font-size":C}}),l=a?D(`notification`,_(()=>e.type[0]),c,i):void 0;return{mergedClsPrefix:n,showAvatar:_(()=>e.avatar||e.type!==`default`),handleCloseClick(){e.onClose()},rtlEnabled:s,cssVars:a?void 0:c,themeClass:l?.themeClass,onRender:l?.onRender}},render(){var e;let{mergedClsPrefix:t}=this;return(e=this.onRender)==null||e.call(this),C(`div`,{class:[`${t}-notification-wrapper`,this.themeClass],onMouseenter:this.onMouseenter,onMouseleave:this.onMouseleave,style:this.cssVars},C(`div`,{class:[`${t}-notification`,this.rtlEnabled&&`${t}-notification--rtl`,this.themeClass,{[`${t}-notification--closable`]:this.closable,[`${t}-notification--show-avatar`]:this.showAvatar}],style:this.cssVars},this.showAvatar?C(`div`,{class:`${t}-notification__avatar`},this.avatar?R(this.avatar):this.type===`default`?null:C(xe,{clsPrefix:t},{default:()=>sr[this.type]()})):null,this.closable?C(be,{clsPrefix:t,class:`${t}-notification__close`,onClick:this.handleCloseClick}):null,C(`div`,{ref:`bodyRef`,class:`${t}-notification-main`},this.title?C(`div`,{class:`${t}-notification-main__header`},R(this.title)):null,this.description?C(`div`,{class:`${t}-notification-main__description`},R(this.description)):null,this.content?C(`pre`,{class:`${t}-notification-main__content`},R(this.content)):null,this.meta||this.action?C(`div`,{class:`${t}-notification-main-footer`},this.meta?C(`div`,{class:`${t}-notification-main-footer__meta`},R(this.meta)):null,this.action?C(`div`,{class:`${t}-notification-main-footer__action`},R(this.action)):null):null)))}}),dr=Object.assign(Object.assign({},cr),{duration:Number,onClose:Function,onLeave:Function,onAfterEnter:Function,onAfterLeave:Function,onHide:Function,onAfterShow:Function,onAfterHide:Function}),fr=S({name:`NotificationEnvironment`,props:Object.assign(Object.assign({},dr),{internalKey:{type:String,required:!0},onInternalAfterLeave:{type:Function,required:!0}}),setup(e){let{wipTransitionCountRef:n}=t(ar),i=b(!0),a=null;function o(){i.value=!1,a&&window.clearTimeout(a)}function c(e){n.value++,r(()=>{e.style.height=`${e.offsetHeight}px`,e.style.maxHeight=`0`,e.style.transition=`none`,e.offsetHeight,e.style.transition=``,e.style.maxHeight=e.style.height})}function l(t){n.value--,t.style.height=``,t.style.maxHeight=``;let{onAfterEnter:r,onAfterShow:i}=e;r&&r(),i&&i()}function u(e){n.value++,e.style.maxHeight=`${e.offsetHeight}px`,e.style.height=`${e.offsetHeight}px`,e.offsetHeight}function d(t){let{onHide:n}=e;n&&n(),t.style.maxHeight=`0`,t.offsetHeight}function f(){n.value--;let{onAfterLeave:t,onInternalAfterLeave:r,onAfterHide:i,internalKey:a}=e;t&&t(),r(a),i&&i()}function p(){let{duration:t}=e;t&&(a=window.setTimeout(o,t))}function m(e){e.currentTarget===e.target&&a!==null&&(window.clearTimeout(a),a=null)}function h(e){e.currentTarget===e.target&&p()}function g(){let{onClose:t}=e;t?Promise.resolve(t()).then(e=>{e!==!1&&o()}):o()}return s(()=>{e.duration&&(a=window.setTimeout(o,e.duration))}),{show:i,hide:o,handleClose:g,handleAfterLeave:f,handleLeave:d,handleBeforeLeave:u,handleAfterEnter:l,handleBeforeEnter:c,handleMouseenter:m,handleMouseleave:h}},render(){return C(me,{name:`notification-transition`,appear:!0,onBeforeEnter:this.handleBeforeEnter,onAfterEnter:this.handleAfterEnter,onBeforeLeave:this.handleBeforeLeave,onLeave:this.handleLeave,onAfterLeave:this.handleAfterLeave},{default:()=>this.show?C(ur,Object.assign({},ve(this.$props,lr),{onClose:this.handleClose,onMouseenter:this.duration&&this.keepAliveOnHover?this.handleMouseenter:void 0,onMouseleave:this.duration&&this.keepAliveOnHover?this.handleMouseleave:void 0})):null})}}),pr=k([M(`notification-container`,`
118
+ `)])]),Zn={info:()=>C(Oe,null),success:()=>C(xe,null),warning:()=>C(_e,null),error:()=>C(ve,null),default:()=>null},Qn=S({name:`Message`,props:Object.assign(Object.assign({},Yn),{render:Function}),setup(e){let{inlineThemeDisabled:n,mergedRtlRef:r}=T(e),{props:i,mergedClsPrefixRef:a}=t(Le),o=ae(`Message`,r,a),s=se(`Message`,`-message`,Xn,Jn,i,a),c=_(()=>{let{type:t}=e,{common:{cubicBezierEaseInOut:n},self:{padding:r,margin:i,maxWidth:a,iconMargin:o,closeMargin:c,closeSize:l,iconSize:u,fontSize:d,lineHeight:f,borderRadius:p,border:m,iconColorInfo:h,iconColorSuccess:g,iconColorWarning:_,iconColorError:ee,iconColorLoading:v,closeIconSize:te,closeBorderRadius:y,[N(`textColor`,t)]:b,[N(`boxShadow`,t)]:x,[N(`color`,t)]:S,[N(`closeColorHover`,t)]:ne,[N(`closeColorPressed`,t)]:C,[N(`closeIconColor`,t)]:w,[N(`closeIconColorPressed`,t)]:T,[N(`closeIconColorHover`,t)]:E}}=s.value;return{"--n-bezier":n,"--n-margin":i,"--n-padding":r,"--n-max-width":a,"--n-font-size":d,"--n-icon-margin":o,"--n-icon-size":u,"--n-close-icon-size":te,"--n-close-border-radius":y,"--n-close-size":l,"--n-close-margin":c,"--n-text-color":b,"--n-color":S,"--n-box-shadow":x,"--n-icon-color-info":h,"--n-icon-color-success":g,"--n-icon-color-warning":_,"--n-icon-color-error":ee,"--n-icon-color-loading":v,"--n-close-color-hover":ne,"--n-close-color-pressed":C,"--n-close-icon-color":w,"--n-close-icon-color-pressed":T,"--n-close-icon-color-hover":E,"--n-line-height":f,"--n-border-radius":p,"--n-border":m}}),l=n?D(`message`,_(()=>e.type[0]),c,{}):void 0;return{mergedClsPrefix:a,rtlEnabled:o,messageProviderProps:i,handleClose(){var t;(t=e.onClose)==null||t.call(e)},cssVars:n?void 0:c,themeClass:l?.themeClass,onRender:l?.onRender,placement:i.placement}},render(){let{render:e,type:t,closable:n,content:r,mergedClsPrefix:i,cssVars:a,themeClass:o,onRender:s,icon:c,handleClose:l,showIcon:u}=this;s?.();let d;return C(`div`,{class:[`${i}-message-wrapper`,o],onMouseenter:this.onMouseenter,onMouseleave:this.onMouseleave,style:[{alignItems:this.placement.startsWith(`top`)?`flex-start`:`flex-end`},a]},e?e(this.$props):C(`div`,{class:[`${i}-message ${i}-message--${t}-type`,this.rtlEnabled&&`${i}-message--rtl`]},(d=$n(c,t,i,this.spinProps))&&u?C(`div`,{class:`${i}-message__icon ${i}-message__icon--${t}-type`},C(I,null,{default:()=>d})):null,C(`div`,{class:`${i}-message__content`},R(r)),n?C(Ae,{clsPrefix:i,class:`${i}-message__close`,onClick:l,absolute:!0}):null))}});function $n(e,t,n,r){if(typeof e==`function`)return e();{let e=t===`loading`?C(oe,Object.assign({clsPrefix:n,strokeWidth:24,scale:.85},r)):Zn[t]();return e?C(Ne,{clsPrefix:n,key:t},{default:()=>e}):null}}var er=S({name:`MessageEnvironment`,props:Object.assign(Object.assign({},Yn),{duration:{type:Number,default:3e3},onAfterLeave:Function,onLeave:Function,internalKey:{type:String,required:!0},onInternalAfterLeave:Function,onHide:Function,onAfterHide:Function}),setup(e){let t=null,n=b(!0);s(()=>{r()});function r(){let{duration:n}=e;n&&(t=window.setTimeout(o,n))}function i(e){e.currentTarget===e.target&&t!==null&&(window.clearTimeout(t),t=null)}function a(e){e.currentTarget===e.target&&r()}function o(){let{onHide:r}=e;n.value=!1,t&&=(window.clearTimeout(t),null),r&&r()}function c(){let{onClose:t}=e;t&&t(),o()}function l(){let{onAfterLeave:t,onInternalAfterLeave:n,onAfterHide:r,internalKey:i}=e;t&&t(),n&&n(i),r&&r()}function u(){o()}return{show:n,hide:o,handleClose:c,handleAfterLeave:l,handleMouseleave:a,handleMouseenter:i,deactivate:u}},render(){return C(Re,{appear:!0,onAfterLeave:this.handleAfterLeave,onLeave:this.onLeave},{default:()=>[this.show?C(Qn,{content:this.content,type:this.type,icon:this.icon,showIcon:this.showIcon,closable:this.closable,spinProps:this.spinProps,onClose:this.handleClose,onMouseenter:this.keepAliveOnHover?this.handleMouseenter:void 0,onMouseleave:this.keepAliveOnHover?this.handleMouseleave:void 0}):null]})}}),tr=S({name:`MessageProvider`,props:Object.assign(Object.assign({},se.props),{to:[String,Object],duration:{type:Number,default:3e3},keepAliveOnHover:Boolean,max:Number,placement:{type:String,default:`top`},closable:Boolean,containerClass:String,containerStyle:[String,Object]}),setup(t){let{mergedClsPrefixRef:n}=T(t),r=b([]),i=b({}),a={create(e,t){return s(e,Object.assign({type:`default`},t))},info(e,t){return s(e,Object.assign(Object.assign({},t),{type:`info`}))},success(e,t){return s(e,Object.assign(Object.assign({},t),{type:`success`}))},warning(e,t){return s(e,Object.assign(Object.assign({},t),{type:`warning`}))},error(e,t){return s(e,Object.assign(Object.assign({},t),{type:`error`}))},loading(e,t){return s(e,Object.assign(Object.assign({},t),{type:`loading`}))},destroyAll:l};o(Le,{props:t,mergedClsPrefixRef:n}),o(ze,a);function s(n,a){let o=ke(),s=e(Object.assign(Object.assign({},a),{content:n,key:o,destroy:()=>{var e;(e=i.value[o])==null||e.hide()}})),{max:c}=t;return c&&r.value.length>=c&&r.value.shift(),r.value.push(s),s}function c(e){r.value.splice(r.value.findIndex(t=>t.key===e),1),delete i.value[e]}function l(){Object.values(i.value).forEach(e=>{e.hide()})}return Object.assign({mergedClsPrefix:n,messageRefs:i,messageList:r,handleAfterLeave:c},a)},render(){var e;return C(g,null,(e=this.$slots).default?.call(e),this.messageList.length?C(p,{to:this.to??`body`},C(`div`,{class:[`${this.mergedClsPrefix}-message-container`,`${this.mergedClsPrefix}-message-container--${this.placement}`,this.containerClass],key:`message-container`,style:this.containerStyle},this.messageList.map(e=>C(er,Object.assign({ref:t=>{t&&(this.messageRefs[e.key]=t)},internalKey:e.key,onInternalAfterLeave:this.handleAfterLeave},Ve(e,[`destroy`],void 0),{duration:e.duration===void 0?this.duration:e.duration,keepAliveOnHover:e.keepAliveOnHover===void 0?this.keepAliveOnHover:e.keepAliveOnHover,closable:e.closable===void 0?this.closable:e.closable}))))):null)}}),nr={closeMargin:`16px 12px`,closeSize:`20px`,closeIconSize:`16px`,width:`365px`,padding:`16px`,titleFontSize:`16px`,metaFontSize:`12px`,descriptionFontSize:`12px`};function rr(e){let{textColor2:t,successColor:n,infoColor:r,warningColor:i,errorColor:a,popoverColor:o,closeIconColor:s,closeIconColorHover:c,closeIconColorPressed:l,closeColorHover:u,closeColorPressed:d,textColor1:f,textColor3:p,borderRadius:m,fontWeightStrong:h,boxShadow2:g,lineHeight:_,fontSize:ee}=e;return Object.assign(Object.assign({},nr),{borderRadius:m,lineHeight:_,fontSize:ee,headerFontWeight:h,iconColor:t,iconColorSuccess:n,iconColorInfo:r,iconColorWarning:i,iconColorError:a,color:o,textColor:t,closeIconColor:s,closeIconColorHover:c,closeIconColorPressed:l,closeBorderRadius:m,closeColorHover:u,closeColorPressed:d,headerTextColor:f,descriptionTextColor:p,actionTextColor:t,boxShadow:g})}var ir=re({name:`Notification`,common:P,peers:{Scrollbar:Me},self:rr}),ar=de(`n-notification-provider`),or=S({name:`NotificationContainer`,props:{scrollable:{type:Boolean,required:!0},placement:{type:String,required:!0}},setup(){let{mergedThemeRef:e,mergedClsPrefixRef:n,wipTransitionCountRef:r}=t(ar),i=b(null);return u(()=>{var e,t;r.value>0?(e=i?.value)==null||e.classList.add(`transitioning`):(t=i?.value)==null||t.classList.remove(`transitioning`)}),{selfRef:i,mergedTheme:e,mergedClsPrefix:n,transitioning:r}},render(){let{$slots:e,scrollable:t,mergedClsPrefix:n,mergedTheme:r,placement:i}=this;return C(`div`,{ref:`selfRef`,class:[`${n}-notification-container`,t&&`${n}-notification-container--scrollable`,`${n}-notification-container--${i}`]},t?C(Pe,{theme:r.peers.Scrollbar,themeOverrides:r.peerOverrides.Scrollbar,contentStyle:{overflow:`hidden`}},e):e)}}),sr={info:()=>C(Oe,null),success:()=>C(xe,null),warning:()=>C(_e,null),error:()=>C(ve,null),default:()=>null},cr={closable:{type:Boolean,default:!0},type:{type:String,default:`default`},avatar:Function,title:[String,Function],description:[String,Function],content:[String,Function],meta:[String,Function],action:[String,Function],onClose:{type:Function,required:!0},keepAliveOnHover:Boolean,onMouseenter:Function,onMouseleave:Function},lr=Be(cr),ur=S({name:`Notification`,props:cr,setup(e){let{mergedClsPrefixRef:n,mergedThemeRef:r,props:i}=t(ar),{inlineThemeDisabled:a,mergedRtlRef:o}=T(),s=ae(`Notification`,o,n),c=_(()=>{let{type:t}=e,{self:{color:n,textColor:i,closeIconColor:a,closeIconColorHover:o,closeIconColorPressed:s,headerTextColor:c,descriptionTextColor:l,actionTextColor:u,borderRadius:d,headerFontWeight:f,boxShadow:p,lineHeight:m,fontSize:h,closeMargin:g,closeSize:_,width:ee,padding:v,closeIconSize:te,closeBorderRadius:y,closeColorHover:b,closeColorPressed:x,titleFontSize:S,metaFontSize:ne,descriptionFontSize:C,[N(`iconColor`,t)]:w},common:{cubicBezierEaseOut:T,cubicBezierEaseIn:E,cubicBezierEaseInOut:D}}=r.value,{left:O,right:re,top:k,bottom:ie}=Fe(v);return{"--n-color":n,"--n-font-size":h,"--n-text-color":i,"--n-description-text-color":l,"--n-action-text-color":u,"--n-title-text-color":c,"--n-title-font-weight":f,"--n-bezier":D,"--n-bezier-ease-out":T,"--n-bezier-ease-in":E,"--n-border-radius":d,"--n-box-shadow":p,"--n-close-border-radius":y,"--n-close-color-hover":b,"--n-close-color-pressed":x,"--n-close-icon-color":a,"--n-close-icon-color-hover":o,"--n-close-icon-color-pressed":s,"--n-line-height":m,"--n-icon-color":w,"--n-close-margin":g,"--n-close-size":_,"--n-close-icon-size":te,"--n-width":ee,"--n-padding-left":O,"--n-padding-right":re,"--n-padding-top":k,"--n-padding-bottom":ie,"--n-title-font-size":S,"--n-meta-font-size":ne,"--n-description-font-size":C}}),l=a?D(`notification`,_(()=>e.type[0]),c,i):void 0;return{mergedClsPrefix:n,showAvatar:_(()=>e.avatar||e.type!==`default`),handleCloseClick(){e.onClose()},rtlEnabled:s,cssVars:a?void 0:c,themeClass:l?.themeClass,onRender:l?.onRender}},render(){var e;let{mergedClsPrefix:t}=this;return(e=this.onRender)==null||e.call(this),C(`div`,{class:[`${t}-notification-wrapper`,this.themeClass],onMouseenter:this.onMouseenter,onMouseleave:this.onMouseleave,style:this.cssVars},C(`div`,{class:[`${t}-notification`,this.rtlEnabled&&`${t}-notification--rtl`,this.themeClass,{[`${t}-notification--closable`]:this.closable,[`${t}-notification--show-avatar`]:this.showAvatar}],style:this.cssVars},this.showAvatar?C(`div`,{class:`${t}-notification__avatar`},this.avatar?R(this.avatar):this.type===`default`?null:C(Ne,{clsPrefix:t},{default:()=>sr[this.type]()})):null,this.closable?C(Ae,{clsPrefix:t,class:`${t}-notification__close`,onClick:this.handleCloseClick}):null,C(`div`,{ref:`bodyRef`,class:`${t}-notification-main`},this.title?C(`div`,{class:`${t}-notification-main__header`},R(this.title)):null,this.description?C(`div`,{class:`${t}-notification-main__description`},R(this.description)):null,this.content?C(`pre`,{class:`${t}-notification-main__content`},R(this.content)):null,this.meta||this.action?C(`div`,{class:`${t}-notification-main-footer`},this.meta?C(`div`,{class:`${t}-notification-main-footer__meta`},R(this.meta)):null,this.action?C(`div`,{class:`${t}-notification-main-footer__action`},R(this.action)):null):null)))}}),dr=Object.assign(Object.assign({},cr),{duration:Number,onClose:Function,onLeave:Function,onAfterEnter:Function,onAfterLeave:Function,onHide:Function,onAfterShow:Function,onAfterHide:Function}),fr=S({name:`NotificationEnvironment`,props:Object.assign(Object.assign({},dr),{internalKey:{type:String,required:!0},onInternalAfterLeave:{type:Function,required:!0}}),setup(e){let{wipTransitionCountRef:n}=t(ar),i=b(!0),a=null;function o(){i.value=!1,a&&window.clearTimeout(a)}function c(e){n.value++,r(()=>{e.style.height=`${e.offsetHeight}px`,e.style.maxHeight=`0`,e.style.transition=`none`,e.offsetHeight,e.style.transition=``,e.style.maxHeight=e.style.height})}function l(t){n.value--,t.style.height=``,t.style.maxHeight=``;let{onAfterEnter:r,onAfterShow:i}=e;r&&r(),i&&i()}function u(e){n.value++,e.style.maxHeight=`${e.offsetHeight}px`,e.style.height=`${e.offsetHeight}px`,e.offsetHeight}function d(t){let{onHide:n}=e;n&&n(),t.style.maxHeight=`0`,t.offsetHeight}function f(){n.value--;let{onAfterLeave:t,onInternalAfterLeave:r,onAfterHide:i,internalKey:a}=e;t&&t(),r(a),i&&i()}function p(){let{duration:t}=e;t&&(a=window.setTimeout(o,t))}function m(e){e.currentTarget===e.target&&a!==null&&(window.clearTimeout(a),a=null)}function h(e){e.currentTarget===e.target&&p()}function g(){let{onClose:t}=e;t?Promise.resolve(t()).then(e=>{e!==!1&&o()}):o()}return s(()=>{e.duration&&(a=window.setTimeout(o,e.duration))}),{show:i,hide:o,handleClose:g,handleAfterLeave:f,handleLeave:d,handleBeforeLeave:u,handleAfterEnter:l,handleBeforeEnter:c,handleMouseenter:m,handleMouseleave:h}},render(){return C(me,{name:`notification-transition`,appear:!0,onBeforeEnter:this.handleBeforeEnter,onAfterEnter:this.handleAfterEnter,onBeforeLeave:this.handleBeforeLeave,onLeave:this.handleLeave,onAfterLeave:this.handleAfterLeave},{default:()=>this.show?C(ur,Object.assign({},je(this.$props,lr),{onClose:this.handleClose,onMouseenter:this.duration&&this.keepAliveOnHover?this.handleMouseenter:void 0,onMouseleave:this.duration&&this.keepAliveOnHover?this.handleMouseleave:void 0})):null})}}),pr=k([M(`notification-container`,`
119
119
  z-index: 4000;
120
120
  position: fixed;
121
121
  overflow: visible;
@@ -304,4 +304,4 @@ import{$ as e,C as t,Ct as n,E as r,F as i,G as a,I as o,M as s,N as c,U as l,W
304
304
  transform: translate(${e.split(`-`)[1]===`left`?`calc(-100%)`:`calc(100%)`}, 0);
305
305
  `),k(`&.notification-transition-leave-from, &.notification-transition-enter-to`,`
306
306
  transform: translate(0, 0);
307
- `)])}var hr=de(`n-notification-api`),gr=S({name:`NotificationProvider`,props:Object.assign(Object.assign({},se.props),{containerClass:String,containerStyle:[String,Object],to:[String,Object],scrollable:{type:Boolean,default:!0},max:Number,placement:{type:String,default:`top-right`},keepAliveOnHover:Boolean}),setup(t){let{mergedClsPrefixRef:n}=T(t),r=b([]),i={},a=new Set;function s(n){let o=_e(),s=()=>{a.add(o),i[o]&&i[o].hide()},c=e(Object.assign(Object.assign({},n),{key:o,destroy:s,hide:s,deactivate:s})),{max:l}=t;if(l&&r.value.length-a.size>=l){let e=!1,t=0;for(let n of r.value){if(!a.has(n.key)){i[n.key]&&(n.destroy(),e=!0);break}t++}e||r.value.splice(t,1)}return r.value.push(c),c}let c=[`info`,`success`,`warning`,`error`].map(e=>t=>s(Object.assign(Object.assign({},t),{type:e})));function l(e){a.delete(e),r.value.splice(r.value.findIndex(t=>t.key===e),1)}let u=se(`Notification`,`-notification`,pr,ir,t,n),d={create:s,info:c[0],success:c[1],warning:c[2],error:c[3],open:p,destroyAll:m},f=b(0);o(hr,d),o(ar,{props:t,mergedClsPrefixRef:n,mergedThemeRef:u,wipTransitionCountRef:f});function p(e){return s(e)}function m(){Object.values(r.value).forEach(e=>{e.hide()})}return Object.assign({mergedClsPrefix:n,notificationList:r,notificationRefs:i,handleAfterLeave:l},d)},render(){var e;let{placement:t}=this;return C(g,null,(e=this.$slots).default?.call(e),this.notificationList.length?C(p,{to:this.to??`body`},C(or,{class:this.containerClass,style:this.containerStyle,scrollable:this.scrollable&&t!==`top`&&t!==`bottom`,placement:t},{default:()=>this.notificationList.map(e=>C(fr,Object.assign({ref:t=>{let n=e.key;t===null?delete this.notificationRefs[n]:this.notificationRefs[n]=t}},Ve(e,[`destroy`,`hide`,`deactivate`]),{internalKey:e.key,onInternalAfterLeave:this.handleAfterLeave,keepAliveOnHover:e.keepAliveOnHover===void 0?this.keepAliveOnHover:e.keepAliveOnHover})))})):null)}}),_r={common:{primaryColor:`#333333`,primaryColorHover:`#1a1a1a`,primaryColorPressed:`#000000`,primaryColorSuppl:`#333333`,bodyColor:`#fafafa`,cardColor:`#ffffff`,modalColor:`#ffffff`,popoverColor:`#ffffff`,tableColor:`#ffffff`,inputColor:`#ffffff`,actionColor:`#f0f0f0`,textColorBase:`#1a1a1a`,textColor1:`#1a1a1a`,textColor2:`#666666`,textColor3:`#999999`,dividerColor:`#e0e0e0`,borderColor:`#e0e0e0`,hoverColor:`rgba(0, 0, 0, 0.04)`,borderRadius:`8px`,borderRadiusSmall:`6px`,fontSize:`14px`,fontSizeMedium:`14px`,heightMedium:`36px`,fontFamily:`Inter, system-ui, -apple-system, sans-serif`,fontFamilyMono:`JetBrains Mono, Fira Code, Consolas, monospace`},Layout:{color:`#fafafa`,siderColor:`#f5f5f5`,headerColor:`#fafafa`},Menu:{itemTextColorActive:`#1a1a1a`,itemTextColorActiveHover:`#1a1a1a`,itemTextColorChildActive:`#1a1a1a`,itemIconColorActive:`#1a1a1a`,itemIconColorActiveHover:`#000000`,itemColorActive:`rgba(0, 0, 0, 0.06)`,itemColorActiveHover:`rgba(0, 0, 0, 0.1)`,arrowColorActive:`#1a1a1a`},Button:{textColorPrimary:`#ffffff`,colorPrimary:`#333333`,colorHoverPrimary:`#1a1a1a`,colorPressedPrimary:`#000000`},Input:{color:`#ffffff`,colorFocus:`#ffffff`,border:`1px solid #e0e0e0`,borderHover:`1px solid #999999`,borderFocus:`1px solid #333333`,placeholderColor:`#999999`,caretColor:`#1a1a1a`},Card:{color:`#ffffff`,borderColor:`#e0e0e0`},Modal:{color:`#ffffff`},Tag:{borderRadius:`6px`}},vr={class:`model-selector`},yr=ue(S({__name:`ModelSelector`,setup(e){let t=Ue(),n=_(()=>t.modelGroups.map(e=>({label:e.label,type:`group`,key:e.provider,children:e.models.map(e=>({label:e,value:e}))})));function r(e){typeof e==`string`&&t.switchModel(e)}return(e,a)=>(i(),v(`div`,vr,[a[0]||=x(`div`,{class:`model-label`},`Model`,-1),f(y(ye),{value:y(t).selectedModel,options:n.value,size:`small`,"onUpdate:value":r},null,8,[`value`,`options`])]))}}),[[`__scopeId`,`data-v-00830782`]]),br={class:`sidebar`},xr={class:`sidebar-nav`},Sr={class:`sidebar-footer`},Cr={class:`status-row`},wr={class:`status-text`},Tr={class:`version-info`},Er=ue(S({__name:`AppSidebar`,setup(e){let t=Ln(),r=In(),a=Ue(),o=_(()=>t.name);function s(e){r.push({name:e})}return(e,t)=>(i(),v(`aside`,br,[x(`div`,{class:`sidebar-logo`,onClick:t[0]||=e=>y(r).push(`/`)},[...t[6]||=[x(`img`,{src:`/assets/logo-BAarh-tH.png`,alt:`Hermes`,class:`logo-img`},null,-1),x(`span`,{class:`logo-text`},`Hermes`,-1)]]),x(`nav`,xr,[x(`button`,{class:n([`nav-item`,{active:o.value===`chat`}]),onClick:t[1]||=e=>s(`chat`)},[...t[7]||=[x(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[x(`path`,{d:`M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z`})],-1),x(`span`,null,`Chat`,-1)]],2),x(`button`,{class:n([`nav-item`,{active:o.value===`jobs`}]),onClick:t[2]||=e=>s(`jobs`)},[...t[8]||=[h(`<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" data-v-d4f6689d><rect x="3" y="4" width="18" height="18" rx="2" ry="2" data-v-d4f6689d></rect><line x1="16" y1="2" x2="16" y2="6" data-v-d4f6689d></line><line x1="8" y1="2" x2="8" y2="6" data-v-d4f6689d></line><line x1="3" y1="10" x2="21" y2="10" data-v-d4f6689d></line></svg><span data-v-d4f6689d>Jobs</span>`,2)]],2),x(`button`,{class:n([`nav-item`,{active:o.value===`skills`}]),onClick:t[3]||=e=>s(`skills`)},[...t[9]||=[x(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[x(`polygon`,{points:`12 2 2 7 12 12 22 7 12 2`}),x(`polyline`,{points:`2 17 12 22 22 17`}),x(`polyline`,{points:`2 12 12 17 22 12`})],-1),x(`span`,null,`Skills`,-1)]],2),x(`button`,{class:n([`nav-item`,{active:o.value===`memory`}]),onClick:t[4]||=e=>s(`memory`)},[...t[10]||=[x(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[x(`path`,{d:`M9 18h6`}),x(`path`,{d:`M10 22h4`}),x(`path`,{d:`M12 2a7 7 0 0 0-4 12.7V17h8v-2.3A7 7 0 0 0 12 2z`})],-1),x(`span`,null,`Memory`,-1)]],2),x(`button`,{class:n([`nav-item`,{active:o.value===`logs`}]),onClick:t[5]||=e=>s(`logs`)},[...t[11]||=[h(`<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" data-v-d4f6689d><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z" data-v-d4f6689d></path><polyline points="14 2 14 8 20 8" data-v-d4f6689d></polyline><line x1="16" y1="13" x2="8" y2="13" data-v-d4f6689d></line><line x1="16" y1="17" x2="8" y2="17" data-v-d4f6689d></line><polyline points="10 9 9 9 8 9" data-v-d4f6689d></polyline></svg><span data-v-d4f6689d>Logs</span>`,2)]],2)]),f(yr),x(`div`,Sr,[x(`div`,Cr,[x(`div`,{class:n([`status-indicator`,{connected:y(a).connected,disconnected:!y(a).connected}])},[t[12]||=x(`span`,{class:`status-dot`},null,-1),x(`span`,wr,ne(y(a).connected?`Connected`:`Disconnected`),1)],2)]),x(`div`,Tr,`Hermes `+ne(y(a).serverVersion||`v0.1.0`),1)])]))}}),[[`__scopeId`,`data-v-d4f6689d`]]);function Dr(){let e=In(),t=He();function n(n){let r=n.ctrlKey||n.metaKey;if(r&&n.key===`n`&&(n.preventDefault(),t.newChat()),r&&n.key===`j`&&(n.preventDefault(),e.push({name:`jobs`})),n.key===`Escape`){let e=document.querySelector(`.n-modal-mask`);e&&e.querySelector(`.n-base-close`)?.click()}}s(()=>{window.addEventListener(`keydown`,n)}),c(()=>{window.removeEventListener(`keydown`,n)})}var Or={class:`app-layout`},kr={class:`app-main`},Ar=pe(ue(S({__name:`App`,setup(e){let t=Ue();return s(()=>{t.loadModels(),t.startHealthPolling()}),c(()=>{t.stopHealthPolling()}),Dr(),(e,t)=>{let n=w(`router-view`);return i(),m(y(Hn),{"theme-overrides":y(_r)},{default:a(()=>[f(y(tr),null,{default:a(()=>[f(y(Gn),null,{default:a(()=>[f(y(gr),null,{default:a(()=>[x(`div`,Or,[f(Er),x(`main`,kr,[f(n)])])]),_:1})]),_:1})]),_:1})]),_:1},8,[`theme-overrides`])}}}),[[`__scopeId`,`data-v-53c52aee`]]));Ar.use(he()),Ar.use(Rn),Ar.mount(`#app`);
307
+ `)])}var hr=de(`n-notification-api`),gr=S({name:`NotificationProvider`,props:Object.assign(Object.assign({},se.props),{containerClass:String,containerStyle:[String,Object],to:[String,Object],scrollable:{type:Boolean,default:!0},max:Number,placement:{type:String,default:`top-right`},keepAliveOnHover:Boolean}),setup(t){let{mergedClsPrefixRef:n}=T(t),r=b([]),i={},a=new Set;function s(n){let o=ke(),s=()=>{a.add(o),i[o]&&i[o].hide()},c=e(Object.assign(Object.assign({},n),{key:o,destroy:s,hide:s,deactivate:s})),{max:l}=t;if(l&&r.value.length-a.size>=l){let e=!1,t=0;for(let n of r.value){if(!a.has(n.key)){i[n.key]&&(n.destroy(),e=!0);break}t++}e||r.value.splice(t,1)}return r.value.push(c),c}let c=[`info`,`success`,`warning`,`error`].map(e=>t=>s(Object.assign(Object.assign({},t),{type:e})));function l(e){a.delete(e),r.value.splice(r.value.findIndex(t=>t.key===e),1)}let u=se(`Notification`,`-notification`,pr,ir,t,n),d={create:s,info:c[0],success:c[1],warning:c[2],error:c[3],open:p,destroyAll:m},f=b(0);o(hr,d),o(ar,{props:t,mergedClsPrefixRef:n,mergedThemeRef:u,wipTransitionCountRef:f});function p(e){return s(e)}function m(){Object.values(r.value).forEach(e=>{e.hide()})}return Object.assign({mergedClsPrefix:n,notificationList:r,notificationRefs:i,handleAfterLeave:l},d)},render(){var e;let{placement:t}=this;return C(g,null,(e=this.$slots).default?.call(e),this.notificationList.length?C(p,{to:this.to??`body`},C(or,{class:this.containerClass,style:this.containerStyle,scrollable:this.scrollable&&t!==`top`&&t!==`bottom`,placement:t},{default:()=>this.notificationList.map(e=>C(fr,Object.assign({ref:t=>{let n=e.key;t===null?delete this.notificationRefs[n]:this.notificationRefs[n]=t}},Ve(e,[`destroy`,`hide`,`deactivate`]),{internalKey:e.key,onInternalAfterLeave:this.handleAfterLeave,keepAliveOnHover:e.keepAliveOnHover===void 0?this.keepAliveOnHover:e.keepAliveOnHover})))})):null)}}),_r={common:{primaryColor:`#333333`,primaryColorHover:`#1a1a1a`,primaryColorPressed:`#000000`,primaryColorSuppl:`#333333`,bodyColor:`#fafafa`,cardColor:`#ffffff`,modalColor:`#ffffff`,popoverColor:`#ffffff`,tableColor:`#ffffff`,inputColor:`#ffffff`,actionColor:`#f0f0f0`,textColorBase:`#1a1a1a`,textColor1:`#1a1a1a`,textColor2:`#666666`,textColor3:`#999999`,dividerColor:`#e0e0e0`,borderColor:`#e0e0e0`,hoverColor:`rgba(0, 0, 0, 0.04)`,borderRadius:`8px`,borderRadiusSmall:`6px`,fontSize:`14px`,fontSizeMedium:`14px`,heightMedium:`36px`,fontFamily:`Inter, system-ui, -apple-system, sans-serif`,fontFamilyMono:`JetBrains Mono, Fira Code, Consolas, monospace`},Layout:{color:`#fafafa`,siderColor:`#f5f5f5`,headerColor:`#fafafa`},Menu:{itemTextColorActive:`#1a1a1a`,itemTextColorActiveHover:`#1a1a1a`,itemTextColorChildActive:`#1a1a1a`,itemIconColorActive:`#1a1a1a`,itemIconColorActiveHover:`#000000`,itemColorActive:`rgba(0, 0, 0, 0.06)`,itemColorActiveHover:`rgba(0, 0, 0, 0.1)`,arrowColorActive:`#1a1a1a`},Button:{textColorPrimary:`#ffffff`,colorPrimary:`#333333`,colorHoverPrimary:`#1a1a1a`,colorPressedPrimary:`#000000`},Input:{color:`#ffffff`,colorFocus:`#ffffff`,border:`1px solid #e0e0e0`,borderHover:`1px solid #999999`,borderFocus:`1px solid #333333`,placeholderColor:`#999999`,caretColor:`#1a1a1a`},Card:{color:`#ffffff`,borderColor:`#e0e0e0`},Modal:{color:`#ffffff`},Tag:{borderRadius:`6px`}},vr={class:`model-selector`},yr=ue(S({__name:`ModelSelector`,setup(e){let t=Ue(),n=_(()=>t.modelGroups.map(e=>({label:e.label,type:`group`,key:e.provider,children:e.models.map(e=>({label:e,value:e}))})));function r(e){typeof e==`string`&&t.switchModel(e)}return(e,a)=>(i(),v(`div`,vr,[a[0]||=x(`div`,{class:`model-label`},`Model`,-1),f(y(Ie),{value:y(t).selectedModel,options:n.value,size:`small`,"onUpdate:value":r},null,8,[`value`,`options`])]))}}),[[`__scopeId`,`data-v-00830782`]]),br={class:`sidebar`},xr={class:`sidebar-nav`},Sr={class:`sidebar-footer`},Cr={class:`status-row`},wr={class:`status-text`},Tr={class:`version-info`},Er=ue(S({__name:`AppSidebar`,setup(e){let t=Ln(),r=In(),a=Ue(),o=_(()=>t.name);function s(e){r.push({name:e})}return(e,t)=>(i(),v(`aside`,br,[x(`div`,{class:`sidebar-logo`,onClick:t[0]||=e=>y(r).push(`/`)},[...t[6]||=[x(`img`,{src:`/assets/logo-BAarh-tH.png`,alt:`Hermes`,class:`logo-img`},null,-1),x(`span`,{class:`logo-text`},`Hermes`,-1)]]),x(`nav`,xr,[x(`button`,{class:n([`nav-item`,{active:o.value===`chat`}]),onClick:t[1]||=e=>s(`chat`)},[...t[7]||=[x(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[x(`path`,{d:`M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z`})],-1),x(`span`,null,`Chat`,-1)]],2),x(`button`,{class:n([`nav-item`,{active:o.value===`jobs`}]),onClick:t[2]||=e=>s(`jobs`)},[...t[8]||=[h(`<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" data-v-d4f6689d><rect x="3" y="4" width="18" height="18" rx="2" ry="2" data-v-d4f6689d></rect><line x1="16" y1="2" x2="16" y2="6" data-v-d4f6689d></line><line x1="8" y1="2" x2="8" y2="6" data-v-d4f6689d></line><line x1="3" y1="10" x2="21" y2="10" data-v-d4f6689d></line></svg><span data-v-d4f6689d>Jobs</span>`,2)]],2),x(`button`,{class:n([`nav-item`,{active:o.value===`skills`}]),onClick:t[3]||=e=>s(`skills`)},[...t[9]||=[x(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[x(`polygon`,{points:`12 2 2 7 12 12 22 7 12 2`}),x(`polyline`,{points:`2 17 12 22 22 17`}),x(`polyline`,{points:`2 12 12 17 22 12`})],-1),x(`span`,null,`Skills`,-1)]],2),x(`button`,{class:n([`nav-item`,{active:o.value===`memory`}]),onClick:t[4]||=e=>s(`memory`)},[...t[10]||=[x(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,"stroke-linecap":`round`,"stroke-linejoin":`round`},[x(`path`,{d:`M9 18h6`}),x(`path`,{d:`M10 22h4`}),x(`path`,{d:`M12 2a7 7 0 0 0-4 12.7V17h8v-2.3A7 7 0 0 0 12 2z`})],-1),x(`span`,null,`Memory`,-1)]],2),x(`button`,{class:n([`nav-item`,{active:o.value===`logs`}]),onClick:t[5]||=e=>s(`logs`)},[...t[11]||=[h(`<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" data-v-d4f6689d><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z" data-v-d4f6689d></path><polyline points="14 2 14 8 20 8" data-v-d4f6689d></polyline><line x1="16" y1="13" x2="8" y2="13" data-v-d4f6689d></line><line x1="16" y1="17" x2="8" y2="17" data-v-d4f6689d></line><polyline points="10 9 9 9 8 9" data-v-d4f6689d></polyline></svg><span data-v-d4f6689d>Logs</span>`,2)]],2)]),f(yr),x(`div`,Sr,[x(`div`,Cr,[x(`div`,{class:n([`status-indicator`,{connected:y(a).connected,disconnected:!y(a).connected}])},[t[12]||=x(`span`,{class:`status-dot`},null,-1),x(`span`,wr,ne(y(a).connected?`Connected`:`Disconnected`),1)],2)]),x(`div`,Tr,`Hermes `+ne(y(a).serverVersion||`v0.1.0`),1)])]))}}),[[`__scopeId`,`data-v-d4f6689d`]]);function Dr(){let e=In(),t=He();function n(n){let r=n.ctrlKey||n.metaKey;if(r&&n.key===`n`&&(n.preventDefault(),t.newChat()),r&&n.key===`j`&&(n.preventDefault(),e.push({name:`jobs`})),n.key===`Escape`){let e=document.querySelector(`.n-modal-mask`);e&&e.querySelector(`.n-base-close`)?.click()}}s(()=>{window.addEventListener(`keydown`,n)}),c(()=>{window.removeEventListener(`keydown`,n)})}var Or={class:`app-layout`},kr={class:`app-main`},Ar=pe(ue(S({__name:`App`,setup(e){let t=Ue();return s(()=>{t.loadModels(),t.startHealthPolling()}),c(()=>{t.stopHealthPolling()}),Dr(),(e,t)=>{let n=w(`router-view`);return i(),m(y(Hn),{"theme-overrides":y(_r)},{default:a(()=>[f(y(tr),null,{default:a(()=>[f(y(Gn),null,{default:a(()=>[f(y(gr),null,{default:a(()=>[x(`div`,Or,[f(Er),x(`main`,kr,[f(n)])])]),_:1})]),_:1})]),_:1})]),_:1},8,[`theme-overrides`])}}}),[[`__scopeId`,`data-v-53c52aee`]]));Ar.use(he()),Ar.use(Rn),Ar.mount(`#app`);
@@ -1 +1 @@
1
- import{n as e}from"./MarkdownRenderer-DNP-kPA8.js";import{n as t}from"./client-BKiVmpru.js";var n=e({createJob:()=>o,deleteJob:()=>c,getJob:()=>a,listJobs:()=>i,pauseJob:()=>l,resumeJob:()=>u,runJob:()=>d,updateJob:()=>s});function r(e){return e.job}async function i(){return(await t(`/api/jobs?include_disabled=true`)).jobs}async function a(e){return r(await t(`/api/jobs/${e}`))}async function o(e){return r(await t(`/api/jobs`,{method:`POST`,body:JSON.stringify(e)}))}async function s(e,n){return r(await t(`/api/jobs/${e}`,{method:`PATCH`,body:JSON.stringify(n)}))}async function c(e){return t(`/api/jobs/${e}`,{method:`DELETE`})}async function l(e){return r(await t(`/api/jobs/${e}/pause`,{method:`POST`}))}async function u(e){return r(await t(`/api/jobs/${e}/resume`,{method:`POST`}))}async function d(e){return r(await t(`/api/jobs/${e}/run`,{method:`POST`}))}export{l as a,s as c,i,c as n,u as o,n as r,d as s,o as t};
1
+ import{n as e}from"./MarkdownRenderer-DNP-kPA8.js";import{n as t}from"./client-kwQ0ijpp.js";var n=e({createJob:()=>o,deleteJob:()=>c,getJob:()=>a,listJobs:()=>i,pauseJob:()=>l,resumeJob:()=>u,runJob:()=>d,updateJob:()=>s});function r(e){return e.job}async function i(){return(await t(`/api/jobs?include_disabled=true`)).jobs}async function a(e){return r(await t(`/api/jobs/${e}`))}async function o(e){return r(await t(`/api/jobs`,{method:`POST`,body:JSON.stringify(e)}))}async function s(e,n){return r(await t(`/api/jobs/${e}`,{method:`PATCH`,body:JSON.stringify(n)}))}async function c(e){return t(`/api/jobs/${e}`,{method:`DELETE`})}async function l(e){return r(await t(`/api/jobs/${e}/pause`,{method:`POST`}))}async function u(e){return r(await t(`/api/jobs/${e}/resume`,{method:`POST`}))}async function d(e){return r(await t(`/api/jobs/${e}/run`,{method:`POST`}))}export{l as a,s as c,i,c as n,u as o,n as r,d as s,o as t};
@@ -1 +1 @@
1
- import{n as e}from"./client-BKiVmpru.js";async function t(){return(await e(`/api/skills`)).categories}async function n(t){return(await e(`/api/skills/${t}`)).content}async function r(t,n){return(await e(`/api/skills/${t}/${n}/files`)).files}async function i(){return e(`/api/memory`)}async function a(t,n){await e(`/api/memory`,{method:`POST`,body:JSON.stringify({section:t,content:n})})}export{a,t as i,n,r,i as t};
1
+ import{n as e}from"./client-kwQ0ijpp.js";async function t(){return(await e(`/api/skills`)).categories}async function n(t){return(await e(`/api/skills/${t}`)).content}async function r(t,n){return(await e(`/api/skills/${t}/${n}/files`)).files}async function i(){return e(`/api/memory`)}async function a(t,n){await e(`/api/memory`,{method:`POST`,body:JSON.stringify({section:t,content:n})})}export{a,t as i,n,r,i as t};
@@ -1 +1 @@
1
- import{C as e}from"./runtime-core.esm-bundler-yNW65ghW.js";import{Z as t}from"./_plugin-vue_export-helper-CV9qMihF.js";import{t as n}from"./context-B74FvHiJ.js";function r(){let r=e(n,null);return r===null&&t(`use-message`,"No outer <n-message-provider /> founded. See prerequisite in https://www.naiveui.com/en-US/os-theme/components/message for more details. If you want to use `useMessage` outside setup, please check https://www.naiveui.com/zh-CN/os-theme/components/message#Q-&-A."),r}export{r as t};
1
+ import{C as e}from"./runtime-core.esm-bundler-yNW65ghW.js";import{Z as t}from"./_plugin-vue_export-helper-BrYOyDjU.js";import{t as n}from"./context-DW8F1iIn.js";function r(){let r=e(n,null);return r===null&&t(`use-message`,"No outer <n-message-provider /> founded. See prerequisite in https://www.naiveui.com/en-US/os-theme/components/message for more details. If you want to use `useMessage` outside setup, please check https://www.naiveui.com/zh-CN/os-theme/components/message#Q-&-A."),r}export{r as t};
package/dist/index.html CHANGED
@@ -6,22 +6,20 @@
6
6
  <link rel="icon" type="image/svg+xml" href="/favicon.ico" />
7
7
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
8
8
  <title>Hermes</title>
9
- <script type="module" crossorigin src="/assets/index-Cx8mFF2D.js"></script>
9
+ <script type="module" crossorigin src="/assets/index-DP1JeABS.js"></script>
10
10
  <link rel="modulepreload" crossorigin href="/assets/runtime-core.esm-bundler-yNW65ghW.js">
11
- <link rel="modulepreload" crossorigin href="/assets/_plugin-vue_export-helper-CV9qMihF.js">
12
- <link rel="modulepreload" crossorigin href="/assets/Scrollbar-CYtpM7mc.js">
13
- <link rel="modulepreload" crossorigin href="/assets/Warning-Ba-wYRRB.js">
11
+ <link rel="modulepreload" crossorigin href="/assets/_plugin-vue_export-helper-BrYOyDjU.js">
12
+ <link rel="modulepreload" crossorigin href="/assets/Suffix-DI9irQ4f.js">
13
+ <link rel="modulepreload" crossorigin href="/assets/Popover-C2CJscsj.js">
14
+ <link rel="modulepreload" crossorigin href="/assets/context-DW8F1iIn.js">
15
+ <link rel="modulepreload" crossorigin href="/assets/keysOf-Dvq9k1rv.js">
16
+ <link rel="modulepreload" crossorigin href="/assets/Modal-BtRuxNI4.js">
14
17
  <link rel="modulepreload" crossorigin href="/assets/pinia-tE0RcsDr.js">
15
- <link rel="modulepreload" crossorigin href="/assets/client-BKiVmpru.js">
18
+ <link rel="modulepreload" crossorigin href="/assets/client-kwQ0ijpp.js">
16
19
  <link rel="modulepreload" crossorigin href="/assets/MarkdownRenderer-DNP-kPA8.js">
17
- <link rel="modulepreload" crossorigin href="/assets/app-4gFjNUoo.js">
18
- <link rel="modulepreload" crossorigin href="/assets/chat-P2QaPvpZ.js">
19
- <link rel="modulepreload" crossorigin href="/assets/Popover-blRIsd-8.js">
20
- <link rel="modulepreload" crossorigin href="/assets/Suffix-B828Aenx.js">
21
- <link rel="modulepreload" crossorigin href="/assets/context-B74FvHiJ.js">
22
- <link rel="modulepreload" crossorigin href="/assets/Select-DTG-wtu5.js">
23
- <link rel="modulepreload" crossorigin href="/assets/keysOf-Dvq9k1rv.js">
24
- <link rel="modulepreload" crossorigin href="/assets/Modal-CSHJclVU.js">
20
+ <link rel="modulepreload" crossorigin href="/assets/app-JRkV5-Ft.js">
21
+ <link rel="modulepreload" crossorigin href="/assets/chat-Cgdof9SF.js">
22
+ <link rel="modulepreload" crossorigin href="/assets/Select-CithN5ti.js">
25
23
  <link rel="modulepreload" crossorigin href="/assets/omit-QZj0aLfU.js">
26
24
  <link rel="stylesheet" crossorigin href="/assets/MarkdownRenderer-CrMwC_5d.css">
27
25
  <link rel="stylesheet" crossorigin href="/assets/index-DwVgwUIX.css">
@@ -67,3 +67,19 @@ exports.sessionRoutes.delete('/api/sessions/:id', async (ctx) => {
67
67
  }
68
68
  ctx.body = { ok: true };
69
69
  });
70
+ // Rename session
71
+ exports.sessionRoutes.post('/api/sessions/:id/rename', async (ctx) => {
72
+ const { title } = ctx.request.body;
73
+ if (!title || typeof title !== 'string') {
74
+ ctx.status = 400;
75
+ ctx.body = { error: 'title is required' };
76
+ return;
77
+ }
78
+ const ok = await hermesCli.renameSession(ctx.params.id, title.trim());
79
+ if (!ok) {
80
+ ctx.status = 500;
81
+ ctx.body = { error: 'Failed to rename session' };
82
+ return;
83
+ }
84
+ ctx.body = { ok: true };
85
+ });
@@ -27,6 +27,10 @@ export declare function getSession(id: string): Promise<HermesSession | null>;
27
27
  * Delete a session from Hermes CLI
28
28
  */
29
29
  export declare function deleteSession(id: string): Promise<boolean>;
30
+ /**
31
+ * Rename a session title via Hermes CLI
32
+ */
33
+ export declare function renameSession(id: string, title: string): Promise<boolean>;
30
34
  export interface LogFileInfo {
31
35
  name: string;
32
36
  size: string;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.listSessions = listSessions;
4
4
  exports.getSession = getSession;
5
5
  exports.deleteSession = deleteSession;
6
+ exports.renameSession = renameSession;
6
7
  exports.getVersion = getVersion;
7
8
  exports.restartGateway = restartGateway;
8
9
  exports.listLogFiles = listLogFiles;
@@ -27,12 +28,20 @@ async function listSessions(source, limit) {
27
28
  for (const line of lines) {
28
29
  try {
29
30
  const raw = JSON.parse(line);
31
+ let title = raw.title;
32
+ if (!title && raw.messages) {
33
+ const firstUser = raw.messages.find((m) => m.role === 'user');
34
+ if (firstUser?.content) {
35
+ const t = String(firstUser.content).slice(0, 40);
36
+ title = t + (String(firstUser.content).length > 40 ? '...' : '');
37
+ }
38
+ }
30
39
  sessions.push({
31
40
  id: raw.id,
32
41
  source: raw.source,
33
42
  user_id: raw.user_id,
34
43
  model: raw.model,
35
- title: raw.title,
44
+ title,
36
45
  started_at: raw.started_at,
37
46
  ended_at: raw.ended_at,
38
47
  end_reason: raw.end_reason,
@@ -112,6 +121,21 @@ async function deleteSession(id) {
112
121
  return false;
113
122
  }
114
123
  }
124
+ /**
125
+ * Rename a session title via Hermes CLI
126
+ */
127
+ async function renameSession(id, title) {
128
+ try {
129
+ await execFileAsync('hermes', ['sessions', 'rename', id, title], {
130
+ timeout: 10000,
131
+ });
132
+ return true;
133
+ }
134
+ catch (err) {
135
+ console.error('[Hermes CLI] session rename failed:', err.message);
136
+ return false;
137
+ }
138
+ }
115
139
  /**
116
140
  * Get Hermes version
117
141
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hermes-web-ui",
3
- "version": "0.1.4",
3
+ "version": "0.1.6",
4
4
  "description": "Hermes Agent Web UI - Chat and Job Management Dashboard",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1 +0,0 @@
1
- .message[data-v-42b5e195]{flex-direction:column;display:flex}.message.user[data-v-42b5e195]{align-items:flex-end}.message.user .msg-body[data-v-42b5e195]{max-width:75%}.message.user .msg-content.user[data-v-42b5e195]{align-items:flex-end}.message.user .message-bubble[data-v-42b5e195]{background-color:#e8e8e8;border-radius:10px 10px 4px}.message.assistant[data-v-42b5e195]{flex-direction:row;align-items:flex-start;gap:8px}.message.assistant .msg-body[data-v-42b5e195]{max-width:80%}.message.assistant .msg-avatar[data-v-42b5e195]{border-radius:4px;flex-shrink:0;width:28px;height:28px;margin-top:2px}.message.assistant .message-bubble[data-v-42b5e195]{background-color:#f5f5f5;border-radius:10px 10px 10px 4px}.message.tool[data-v-42b5e195],.message.system[data-v-42b5e195]{align-items:flex-start}.message.system .message-bubble.system[data-v-42b5e195]{background-color:#f57f170f;border-left:3px solid #f57f17;border-radius:6px;max-width:80%}.msg-body[data-v-42b5e195]{align-items:flex-start;gap:8px;max-width:85%;display:flex}.msg-content[data-v-42b5e195]{flex-direction:column;min-width:0;display:flex}.message-bubble[data-v-42b5e195]{word-break:break-word;padding:10px 14px;font-size:14px;line-height:1.65}.msg-attachments[data-v-42b5e195]{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.msg-attachment[data-v-42b5e195]{background-color:#0000000a;border:1px solid #ebebeb;border-radius:6px;overflow:hidden}.msg-attachment.image[data-v-42b5e195]{max-width:200px}.msg-attachment-thumb[data-v-42b5e195]{object-fit:contain;max-width:200px;max-height:160px;display:block}.msg-attachment-file[data-v-42b5e195]{color:#666;align-items:center;gap:6px;padding:6px 10px;font-size:12px;display:flex}.msg-attachment-file .att-name[data-v-42b5e195]{white-space:nowrap;text-overflow:ellipsis;max-width:160px;overflow:hidden}.msg-attachment-file .att-size[data-v-42b5e195]{color:#999;flex-shrink:0;font-size:11px}.message-time[data-v-42b5e195]{color:#999;margin-top:4px;padding:0 4px;font-size:11px}.tool-line[data-v-42b5e195]{color:#999;align-items:center;gap:6px;padding:0 4px;font-size:11px;display:flex}.tool-line .tool-name[data-v-42b5e195]{font-family:JetBrains Mono,Fira Code,Consolas,monospace}.tool-line .tool-preview[data-v-42b5e195]{text-overflow:ellipsis;white-space:nowrap;max-width:400px;overflow:hidden}.streaming-cursor[data-v-42b5e195]{vertical-align:text-bottom;background-color:#999;width:2px;height:1em;margin-left:2px;animation:.8s infinite blink-42b5e195;display:inline-block}.streaming-dots[data-v-42b5e195]{gap:4px;padding:4px 0;display:flex}.streaming-dots span[data-v-42b5e195]{background-color:#999;border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite pulse-42b5e195}.streaming-dots span[data-v-42b5e195]:nth-child(2){animation-delay:.2s}.streaming-dots span[data-v-42b5e195]:nth-child(3){animation-delay:.4s}@keyframes blink-42b5e195{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes pulse-42b5e195{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.message-list[data-v-c48f8f02]{flex-direction:column;flex:1;gap:16px;padding:20px;display:flex;overflow-y:auto}.empty-state[data-v-c48f8f02]{color:#999;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.empty-state .empty-logo[data-v-c48f8f02]{opacity:.25;width:48px;height:48px}.empty-state p[data-v-c48f8f02]{font-size:14px}.streaming-indicator[data-v-c48f8f02]{color:#999;align-items:center;gap:4px;padding:4px;display:flex}.streaming-indicator span[data-v-c48f8f02]{background-color:#999;border-radius:50%;width:5px;height:5px;animation:1.4s ease-in-out infinite stream-pulse-c48f8f02}.streaming-indicator span[data-v-c48f8f02]:nth-child(2){animation-delay:.2s}.streaming-indicator span[data-v-c48f8f02]:nth-child(3){animation-delay:.4s}@keyframes stream-pulse-c48f8f02{0%,80%,to{opacity:.2;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.chat-input-area[data-v-38a3b8f9]{border-top:1px solid #e0e0e0;flex-shrink:0;padding:12px 20px 16px}.attachment-previews[data-v-38a3b8f9]{flex-wrap:wrap;gap:8px;padding:0 0 10px;display:flex}.attachment-preview[data-v-38a3b8f9]{background-color:#f0f0f0;border:1px solid #e0e0e0;border-radius:6px;position:relative;overflow:hidden}.attachment-preview.image[data-v-38a3b8f9]{width:64px;height:64px}.attachment-thumb[data-v-38a3b8f9]{object-fit:cover;width:100%;height:100%}.attachment-file[data-v-38a3b8f9]{color:#666;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:80px;max-width:140px;padding:8px 12px;display:flex}.attachment-file .file-name[data-v-38a3b8f9]{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:11px;overflow:hidden}.attachment-file .file-size[data-v-38a3b8f9]{color:#999;font-size:10px}.attachment-remove[data-v-38a3b8f9]{color:#fff;cursor:pointer;opacity:0;background:#00000080;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;transition:opacity .15s;display:flex;position:absolute;top:2px;right:2px}.attachment-preview:hover .attachment-remove[data-v-38a3b8f9]{opacity:1}.file-input-hidden[data-v-38a3b8f9]{display:none}.input-wrapper[data-v-38a3b8f9]{background-color:#fff;border:1px solid #e0e0e0;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;transition:border-color .15s;display:flex}.input-wrapper[data-v-38a3b8f9]:focus-within{border-color:#333}.input-textarea[data-v-38a3b8f9]{color:#1a1a1a;resize:none;background:0 0;border:none;outline:none;flex:1;min-height:20px;max-height:100px;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.5;overflow-y:auto}.input-textarea[data-v-38a3b8f9]::placeholder{color:#999}.input-actions[data-v-38a3b8f9]{flex-shrink:0;align-items:center;gap:6px;display:flex}.input-wrapper.drag-over[data-v-38a3b8f9]{background-color:#4a90d90a;border-style:dashed;border-color:#4a90d9}.chat-panel[data-v-90fbcad1]{height:100%;display:flex}.session-list[data-v-90fbcad1]{border-right:1px solid #e0e0e0;flex-direction:column;flex-shrink:0;width:220px;transition:width .25s,opacity .25s;display:flex;overflow:hidden}.session-list.collapsed[data-v-90fbcad1]{opacity:0;pointer-events:none;border-right:none;width:0}.session-list-header[data-v-90fbcad1]{flex-shrink:0;justify-content:space-between;align-items:center;padding:12px;display:flex}.session-list-title[data-v-90fbcad1]{color:#999;text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600}.session-items[data-v-90fbcad1]{flex:1;padding:0 6px 12px;overflow-y:auto}.session-loading[data-v-90fbcad1],.session-empty[data-v-90fbcad1]{color:#999;text-align:center;padding:16px 10px;font-size:12px}.session-item[data-v-90fbcad1]{cursor:pointer;text-align:left;color:#666;background:0 0;border:none;border-radius:6px;justify-content:space-between;align-items:center;width:100%;margin-bottom:2px;padding:8px 10px;transition:all .15s;display:flex}.session-item[data-v-90fbcad1]:hover{color:#1a1a1a;background:#3333330f}.session-item:hover .session-item-delete[data-v-90fbcad1]{opacity:1}.session-item.active[data-v-90fbcad1]{color:#1a1a1a;background:#3333331a;font-weight:500}.session-item-content[data-v-90fbcad1]{flex:1;overflow:hidden}.session-item-title[data-v-90fbcad1]{white-space:nowrap;text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.session-item-time[data-v-90fbcad1]{color:#999;font-size:11px}.session-item-meta[data-v-90fbcad1]{align-items:center;gap:6px;margin-top:2px;display:flex}.session-item-model[data-v-90fbcad1]{color:#333;text-overflow:ellipsis;white-space:nowrap;background:#33333314;border-radius:3px;flex-shrink:0;max-width:100px;padding:0 5px;font-size:10px;line-height:16px;overflow:hidden}.session-item-delete[data-v-90fbcad1]{opacity:0;color:#999;cursor:pointer;background:0 0;border:none;border-radius:3px;flex-shrink:0;padding:2px;transition:all .15s}.session-item-delete[data-v-90fbcad1]:hover{color:#c62828;background:#c628281a}.chat-main[data-v-90fbcad1]{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.chat-header[data-v-90fbcad1]{border-bottom:1px solid #e0e0e0;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.header-left[data-v-90fbcad1]{flex:1;align-items:center;gap:8px;min-width:0;display:flex;overflow:hidden}.header-center[data-v-90fbcad1]{flex-shrink:0;min-width:140px;max-width:240px}.header-session-title[data-v-90fbcad1]{color:#1a1a1a;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.model-badge[data-v-90fbcad1]{color:#999;background:#3333331a;border:1px solid #e0e0e0;border-radius:10px;flex-shrink:0;padding:2px 8px;font-size:11px}.header-actions[data-v-90fbcad1]{flex-shrink:0;align-items:center;gap:4px;display:flex}.chat-view[data-v-d35d4d9c]{flex-direction:column;height:100vh;display:flex}
@@ -1,16 +0,0 @@
1
- import{t as e}from"./MarkdownRenderer-DNP-kPA8.js";import{C as t,Ct as n,E as r,F as i,G as a,I as o,K as s,L as c,M as l,U as u,_ as d,at as f,d as p,f as m,g as h,i as g,l as _,p as v,st as y,tt as b,u as x,v as S,wt as C,x as w}from"./runtime-core.esm-bundler-yNW65ghW.js";import{H as T,St as E,V as D,X as O,Y as k,c as A,ct as j,dt as M,l as N,lt as P,q as F,r as I,t as L,tt as R,wt as z}from"./_plugin-vue_export-helper-CV9qMihF.js";import{t as ee}from"./Warning-Ba-wYRRB.js";import{i as te,n as B,o as V,t as ne}from"./Popover-blRIsd-8.js";import{o as re,s as H}from"./Scrollbar-CYtpM7mc.js";import{a as ie,r as U}from"./context-B74FvHiJ.js";import{t as ae}from"./keysOf-Dvq9k1rv.js";import{t as W}from"./omit-QZj0aLfU.js";import{t as G}from"./Tooltip-BCHslENT.js";import{t as K}from"./use-message-Dz_GbH5h.js";import{n as q,t as J}from"./chat-P2QaPvpZ.js";import{n as Y}from"./app-4gFjNUoo.js";var oe={iconSize:`22px`};function se(e){let{fontSize:t,warningColor:n}=e;return Object.assign(Object.assign({},oe),{fontSize:t,iconColor:n})}var ce=A({name:`Popconfirm`,common:I,peers:{Button:ie,Popover:te},self:se}),X=R(`n-popconfirm`),Z={positiveText:String,negativeText:String,showIcon:{type:Boolean,default:!0},onPositiveClick:{type:Function,required:!0},onNegativeClick:{type:Function,required:!0}},Q=ae(Z),le=S({name:`NPopconfirmPanel`,props:Z,setup(e){let{localeRef:n}=H(`Popconfirm`),{inlineThemeDisabled:r}=T(),{mergedClsPrefixRef:i,mergedThemeRef:a,props:o}=t(X),s=_(()=>{let{common:{cubicBezierEaseInOut:e},self:{fontSize:t,iconSize:n,iconColor:r}}=a.value;return{"--n-bezier":e,"--n-font-size":t,"--n-icon-size":n,"--n-icon-color":r}}),c=r?D(`popconfirm-panel`,void 0,s,o):void 0;return Object.assign(Object.assign({},H(`Popconfirm`)),{mergedClsPrefix:i,cssVars:r?void 0:s,localizedPositiveText:_(()=>e.positiveText||n.value.positiveText),localizedNegativeText:_(()=>e.negativeText||n.value.negativeText),positiveButtonProps:f(o,`positiveButtonProps`),negativeButtonProps:f(o,`negativeButtonProps`),handlePositiveClick(t){e.onPositiveClick(t)},handleNegativeClick(t){e.onNegativeClick(t)},themeClass:c?.themeClass,onRender:c?.onRender})},render(){var e;let{mergedClsPrefix:t,showIcon:n,$slots:r}=this,i=F(r.action,()=>this.negativeText===null&&this.positiveText===null?[]:[this.negativeText!==null&&w(U,Object.assign({size:`small`,onClick:this.handleNegativeClick},this.negativeButtonProps),{default:()=>this.localizedNegativeText}),this.positiveText!==null&&w(U,Object.assign({size:`small`,type:`primary`,onClick:this.handlePositiveClick},this.positiveButtonProps),{default:()=>this.localizedPositiveText})]);return(e=this.onRender)==null||e.call(this),w(`div`,{class:[`${t}-popconfirm__panel`,this.themeClass],style:this.cssVars},k(r.default,e=>n||e?w(`div`,{class:`${t}-popconfirm__body`},n?w(`div`,{class:`${t}-popconfirm__icon`},F(r.icon,()=>[w(re,{clsPrefix:t},{default:()=>w(ee,null)})])):null,e):null),i?w(`div`,{class:[`${t}-popconfirm__action`]},i):null)}}),ue=P(`popconfirm`,[M(`body`,`
2
- font-size: var(--n-font-size);
3
- display: flex;
4
- align-items: center;
5
- flex-wrap: nowrap;
6
- position: relative;
7
- `,[M(`icon`,`
8
- display: flex;
9
- font-size: var(--n-icon-size);
10
- color: var(--n-icon-color);
11
- transition: color .3s var(--n-bezier);
12
- margin: 0 8px 0 0;
13
- `)]),M(`action`,`
14
- display: flex;
15
- justify-content: flex-end;
16
- `,[j(`&:not(:first-child)`,`margin-top: 8px`),P(`button`,[j(`&:not(:last-child)`,`margin-right: 8px;`)])])]),de=S({name:`Popconfirm`,props:Object.assign(Object.assign(Object.assign({},N.props),B),{positiveText:String,negativeText:String,showIcon:{type:Boolean,default:!0},trigger:{type:String,default:`click`},positiveButtonProps:Object,negativeButtonProps:Object,onPositiveClick:Function,onNegativeClick:Function}),slots:Object,__popover__:!0,setup(e){let{mergedClsPrefixRef:t}=T(),n=N(`Popconfirm`,`-popconfirm`,ue,ce,e,t),r=b(null);function i(t){if(!r.value?.getMergedShow())return;let{onPositiveClick:n,"onUpdate:show":i}=e;Promise.resolve(n?n(t):!0).then(e=>{var t;e!==!1&&((t=r.value)==null||t.setShow(!1),i&&O(i,!1))})}function a(t){if(!r.value?.getMergedShow())return;let{onNegativeClick:n,"onUpdate:show":i}=e;Promise.resolve(n?n(t):!0).then(e=>{var t;e!==!1&&((t=r.value)==null||t.setShow(!1),i&&O(i,!1))})}return o(X,{mergedThemeRef:n,mergedClsPrefixRef:t,props:e}),{setShow(e){var t;(t=r.value)==null||t.setShow(e)},syncPosition(){var e;(e=r.value)==null||e.syncPosition()},mergedTheme:n,popoverInstRef:r,handlePositiveClick:i,handleNegativeClick:a}},render(){let{$slots:e,$props:t,mergedTheme:n}=this;return w(ne,Object.assign({},W(t,Q),{theme:n.peers.Popover,themeOverrides:n.peerOverrides.Popover,internalExtraClass:[`popconfirm`],ref:`popoverInstRef`}),{trigger:e.trigger,default:()=>{let n=V(t,Q);return w(le,Object.assign({},n,{onPositiveClick:this.handlePositiveClick,onNegativeClick:this.handleNegativeClick}),e)}})}}),fe={key:0,class:`tool-line`},pe={class:`tool-name`},me={key:0,class:`tool-preview`},he={key:1,class:`msg-body`},ge={key:0,src:q,alt:`Hermes`,class:`msg-avatar`},_e={key:0,class:`msg-attachments`},ve=[`src`,`alt`],ye={key:1,class:`msg-attachment-file`},be={class:`att-name`},xe={class:`att-size`},Se={key:2,class:`streaming-cursor`},Ce={key:3,class:`streaming-dots`},we={class:`message-time`},Te=L(S({__name:`MessageItem`,props:{message:{}},setup(t){let r=t,a=_(()=>r.message.role===`system`),o=_(()=>new Date(r.message.timestamp).toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`}));function s(e){return e.startsWith(`image/`)}function l(e){return e<1024?e+` B`:e<1024*1024?(e/1024).toFixed(1)+` KB`:(e/(1024*1024)).toFixed(1)+` MB`}let u=_(()=>(r.message.attachments?.length??0)>0);return(r,d)=>(i(),v(`div`,{class:n([`message`,[t.message.role]])},[t.message.role===`tool`?(i(),v(`div`,fe,[d[0]||=x(`svg`,{width:`12`,height:`12`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`,class:`tool-icon`},[x(`path`,{d:`M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z`})],-1),x(`span`,pe,C(t.message.toolName),1),t.message.toolPreview?(i(),v(`span`,me,C(t.message.toolPreview),1)):m(``,!0)])):(i(),v(`div`,he,[t.message.role===`assistant`?(i(),v(`img`,ge)):m(``,!0),x(`div`,{class:n([`msg-content`,t.message.role])},[x(`div`,{class:n([`message-bubble`,{system:a.value}])},[u.value?(i(),v(`div`,_e,[(i(!0),v(g,null,c(t.message.attachments,e=>(i(),v(`div`,{key:e.id,class:n([`msg-attachment`,{image:s(e.type)}])},[s(e.type)&&e.url?(i(),v(`img`,{key:0,src:e.url,alt:e.name,class:`msg-attachment-thumb`},null,8,ve)):(i(),v(`div`,ye,[d[1]||=x(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},[x(`path`,{d:`M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z`}),x(`polyline`,{points:`14 2 14 8 20 8`})],-1),x(`span`,be,C(e.name),1),x(`span`,xe,C(l(e.size)),1)]))],2))),128))])):m(``,!0),t.message.content?(i(),p(e,{key:1,content:t.message.content},null,8,[`content`])):m(``,!0),t.message.isStreaming?(i(),v(`span`,Se)):m(``,!0),t.message.isStreaming&&!t.message.content?(i(),v(`div`,Ce,[...d[2]||=[x(`span`,null,null,-1),x(`span`,null,null,-1),x(`span`,null,null,-1)]])):m(``,!0)],2),x(`div`,we,C(o.value),1)],2)]))],2))}}),[[`__scopeId`,`data-v-42b5e195`]]),Ee={key:0,class:`empty-state`},De={key:1,class:`streaming-indicator`},Oe=L(S({__name:`MessageList`,setup(e){let t=J(),n=b();function a(){r(()=>{n.value&&(n.value.scrollTop=n.value.scrollHeight)})}return u(()=>t.messages.length,a),u(()=>t.messages[t.messages.length-1]?.content,a),u(()=>t.isStreaming,e=>{e&&a()}),(e,r)=>(i(),v(`div`,{ref_key:`listRef`,ref:n,class:`message-list`},[y(t).messages.length===0?(i(),v(`div`,Ee,[...r[0]||=[x(`img`,{src:`/assets/logo-BAarh-tH.png`,alt:`Hermes`,class:`empty-logo`},null,-1),x(`p`,null,`Start a conversation with Hermes Agent`,-1)]])):m(``,!0),(i(!0),v(g,null,c(y(t).messages,e=>(i(),p(Te,{key:e.id,message:e},null,8,[`message`]))),128)),y(t).isStreaming?(i(),v(`div`,De,[...r[1]||=[x(`span`,null,null,-1),x(`span`,null,null,-1),x(`span`,null,null,-1)]])):m(``,!0)],512))}}),[[`__scopeId`,`data-v-c48f8f02`]]),ke={class:`chat-input-area`},Ae={key:0,class:`attachment-previews`},je=[`src`,`alt`],Me={key:1,class:`attachment-file`},Ne={class:`file-name`},Pe={class:`file-size`},Fe=[`onClick`],Ie={class:`input-actions`},Le=L(S({__name:`ChatInput`,setup(e){let t=J(),r=b(``),o=b(),l=b(),u=b([]),f=b(!1),S=b(0),w=_(()=>r.value.trim()||u.value.length>0);function T(e){if(u.value.find(t=>t.name===e.name))return;let t=Date.now().toString(36)+Math.random().toString(36).slice(2,8),n=URL.createObjectURL(e);u.value.push({id:t,name:e.name,type:e.type,size:e.size,url:n,file:e})}function D(){l.value?.click()}function O(e){let t=e.target;if(t.files){for(let e of t.files)T(e);t.value=``}}function k(e){let t=Array.from(e.clipboardData?.items||[]).filter(e=>e.type.startsWith(`image/`));if(t.length){e.preventDefault();for(let e of t){let t=e.getAsFile();if(!t)continue;let n=e.type.split(`/`)[1]||`png`;T(new File([t],`pasted-${Date.now()}.${n}`,{type:e.type}))}}}function A(e){e.preventDefault()}function j(e){e.preventDefault(),e.dataTransfer?.types.includes(`Files`)&&(S.value++,f.value=!0)}function M(){S.value--,S.value<=0&&(S.value=0,f.value=!1)}function N(e){e.preventDefault(),S.value=0,f.value=!1;let t=Array.from(e.dataTransfer?.files||[]);if(t.length){for(let e of t)T(e);o.value?.focus()}}function P(){let e=r.value.trim();!e&&u.value.length===0||(t.sendMessage(e,u.value.length>0?u.value:void 0),r.value=``,u.value=[],o.value&&(o.value.style.height=`auto`))}function F(e){e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),P())}function I(e){let t=e.target;t.style.height=`auto`,t.style.height=Math.min(t.scrollHeight,100)+`px`}function L(e){let t=u.value.findIndex(t=>t.id===e);t!==-1&&(URL.revokeObjectURL(u.value[t].url),u.value.splice(t,1))}function R(e){return e<1024?e+` B`:e<1024*1024?(e/1024).toFixed(1)+` KB`:(e/(1024*1024)).toFixed(1)+` MB`}function z(e){return e.startsWith(`image/`)}return(e,_)=>(i(),v(`div`,ke,[u.value.length>0?(i(),v(`div`,Ae,[(i(!0),v(g,null,c(u.value,e=>(i(),v(`div`,{key:e.id,class:n([`attachment-preview`,{image:z(e.type)}])},[z(e.type)?(i(),v(`img`,{key:0,src:e.url,alt:e.name,class:`attachment-thumb`},null,8,je)):(i(),v(`div`,Me,[_[2]||=x(`svg`,{width:`20`,height:`20`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},[x(`path`,{d:`M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z`}),x(`polyline`,{points:`14 2 14 8 20 8`})],-1),x(`span`,Ne,C(e.name),1),x(`span`,Pe,C(R(e.size)),1)])),x(`button`,{class:`attachment-remove`,onClick:t=>L(e.id)},[..._[3]||=[x(`svg`,{width:`12`,height:`12`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`},[x(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`}),x(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`})],-1)]],8,Fe)],2))),128))])):m(``,!0),x(`div`,{class:n([`input-wrapper`,{"drag-over":f.value}]),onDragover:A,onDragenter:j,onDragleave:M,onDrop:N},[x(`input`,{ref_key:`fileInputRef`,ref:l,type:`file`,multiple:``,class:`file-input-hidden`,onChange:O},null,544),s(x(`textarea`,{ref_key:`textareaRef`,ref:o,"onUpdate:modelValue":_[0]||=e=>r.value=e,class:`input-textarea`,placeholder:`Type a message... (Enter to send, Shift+Enter for new line)`,rows:`1`,onKeydown:F,onInput:I,onPaste:k},null,544),[[E,r.value]]),x(`div`,Ie,[d(y(G),{trigger:`hover`},{trigger:a(()=>[d(y(U),{quaternary:``,size:`small`,onClick:D,circle:``},{icon:a(()=>[..._[4]||=[x(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},[x(`path`,{d:`M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48`})],-1)]]),_:1})]),default:a(()=>[_[5]||=h(` Attach files `,-1)]),_:1}),y(t).isStreaming?(i(),p(y(U),{key:0,size:`small`,type:`error`,onClick:_[1]||=e=>y(t).stopStreaming()},{default:a(()=>[..._[6]||=[h(` Stop `,-1)]]),_:1})):m(``,!0),d(y(U),{size:`small`,type:`primary`,disabled:!w.value||y(t).isStreaming,onClick:P},{icon:a(()=>[..._[7]||=[x(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`},[x(`line`,{x1:`22`,y1:`2`,x2:`11`,y2:`13`}),x(`polygon`,{points:`22 2 15 22 11 13 2 9 22 2`})],-1)]]),default:a(()=>[_[8]||=h(` Send `,-1)]),_:1},8,[`disabled`])])],34)]))}}),[[`__scopeId`,`data-v-38a3b8f9`]]),Re={class:`chat-panel`},ze={class:`session-list-header`},Be={key:0,class:`session-list-title`},Ve={key:0,class:`session-items`},He={key:0,class:`session-loading`},Ue={key:1,class:`session-empty`},We=[`onClick`],Ge={class:`session-item-content`},Ke={class:`session-item-title`},qe={class:`session-item-meta`},Je={key:0,class:`session-item-model`},$={class:`session-item-time`},Ye={class:`chat-main`},Xe={class:`chat-header`},Ze={class:`header-left`},Qe={class:`header-session-title`},$e={class:`header-center`},et={key:0,class:`model-badge`},tt={class:`header-actions`},nt=L(S({__name:`ChatPanel`,setup(e){let t=J(),r=Y(),o=K(),s=b(!0),l=_(()=>[...t.sessions].sort((e,t)=>t.createdAt-e.createdAt)),u=_(()=>t.activeSession?.id||`New Chat`),f=_(()=>t.activeSession?.model||r.selectedModel||``);function S(){t.newChat()}function w(){t.activeSessionId&&(navigator.clipboard.writeText(t.activeSessionId),o.success(`Copied`))}function T(e){t.deleteSession(e),o.success(`Session deleted`)}function E(e){let t=new Date(e),n=new Date;return t.toDateString()===n.toDateString()?t.toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`}):t.toLocaleDateString([],{month:`short`,day:`numeric`})}return(e,r)=>(i(),v(`div`,Re,[x(`aside`,{class:n([`session-list`,{collapsed:!s.value}])},[x(`div`,ze,[s.value?(i(),v(`span`,Be,`Sessions`)):m(``,!0),d(y(U),{quaternary:``,size:`tiny`,onClick:S,circle:``},{icon:a(()=>[...r[2]||=[x(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`},[x(`line`,{x1:`12`,y1:`5`,x2:`12`,y2:`19`}),x(`line`,{x1:`5`,y1:`12`,x2:`19`,y2:`12`})],-1)]]),_:1})]),s.value?(i(),v(`div`,Ve,[y(t).isLoadingSessions&&l.value.length===0?(i(),v(`div`,He,`Loading...`)):l.value.length===0?(i(),v(`div`,Ue,`No sessions`)):m(``,!0),(i(!0),v(g,null,c(l.value,e=>(i(),v(`button`,{key:e.id,class:n([`session-item`,{active:e.id===y(t).activeSessionId}]),onClick:n=>y(t).switchSession(e.id)},[x(`div`,Ge,[x(`span`,Ke,C(e.title),1),x(`span`,qe,[e.model?(i(),v(`span`,Je,C(e.model),1)):m(``,!0),x(`span`,$,C(E(e.createdAt)),1)])]),e.id!==y(t).activeSessionId||l.value.length>1?(i(),p(y(de),{key:0,onPositiveClick:t=>T(e.id)},{trigger:a(()=>[x(`button`,{class:`session-item-delete`,onClick:r[0]||=z(()=>{},[`stop`])},[...r[3]||=[x(`svg`,{width:`12`,height:`12`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`},[x(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`}),x(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`})],-1)]])]),default:a(()=>[r[4]||=h(` Delete this session? `,-1)]),_:1},8,[`onPositiveClick`])):m(``,!0)],10,We))),128))])):m(``,!0)],2),x(`div`,Ye,[x(`header`,Xe,[x(`div`,Ze,[d(y(U),{quaternary:``,size:`small`,onClick:r[1]||=e=>s.value=!s.value,circle:``},{icon:a(()=>[...r[5]||=[x(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},[x(`rect`,{x:`3`,y:`3`,width:`7`,height:`7`}),x(`rect`,{x:`14`,y:`3`,width:`7`,height:`7`}),x(`rect`,{x:`3`,y:`14`,width:`7`,height:`7`}),x(`rect`,{x:`14`,y:`14`,width:`7`,height:`7`})],-1)]]),_:1}),x(`span`,Qe,C(u.value),1)]),x(`div`,$e,[f.value?(i(),v(`span`,et,C(f.value),1)):m(``,!0)]),x(`div`,tt,[d(y(G),{trigger:`hover`},{trigger:a(()=>[d(y(U),{quaternary:``,size:`small`,onClick:w,circle:``},{icon:a(()=>[...r[6]||=[x(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.5`},[x(`rect`,{x:`9`,y:`9`,width:`13`,height:`13`,rx:`2`,ry:`2`}),x(`path`,{d:`M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1`})],-1)]]),_:1})]),default:a(()=>[r[7]||=h(` Copy Session ID `,-1)]),_:1}),d(y(U),{size:`small`,onClick:S},{icon:a(()=>[...r[8]||=[x(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`},[x(`line`,{x1:`12`,y1:`5`,x2:`12`,y2:`19`}),x(`line`,{x1:`5`,y1:`12`,x2:`19`,y2:`12`})],-1)]]),default:a(()=>[r[9]||=h(` New Chat `,-1)]),_:1})])]),d(Oe),d(Le)])]))}}),[[`__scopeId`,`data-v-90fbcad1`]]),rt={class:`chat-view`},it=L(S({__name:`ChatView`,setup(e){let t=Y(),n=J();return l(()=>{t.loadModels(),n.loadSessions()}),(e,t)=>(i(),v(`div`,rt,[d(nt)]))}}),[[`__scopeId`,`data-v-d35d4d9c`]]);export{it as default};