@agent-spaces/server 0.2.3 → 0.2.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/agent-runtime.js +4 -0
- package/dist/adapters/langchain-runtime.js +207 -0
- package/dist/app.js +6 -0
- package/dist/package.json +5 -1
- package/dist/routes/agent-sse.js +201 -0
- package/dist/routes/notification.js +31 -0
- package/dist/routes/search.js +40 -0
- package/dist/services/agent.js +1 -1
- package/dist/services/notification-center.js +52 -0
- package/dist/services/notification-hub/events.js +32 -0
- package/dist/services/search.js +211 -0
- package/dist/web/404.html +1 -1
- package/dist/web/__next.__PAGE__.txt +4 -4
- package/dist/web/__next._full.txt +26 -22
- package/dist/web/__next._head.txt +4 -4
- package/dist/web/__next._index.txt +13 -9
- package/dist/web/__next._tree.txt +2 -2
- package/dist/web/_next/static/chunks/0-a17~4piefz_.js +1 -0
- package/dist/web/_next/static/chunks/0-utii~i2fncd.js +678 -0
- package/dist/web/_next/static/chunks/0-y43ovhjaeo_.js +1 -0
- package/dist/web/_next/static/chunks/0.-4-1p34akka.js +1 -0
- package/dist/web/_next/static/chunks/0.335m_d-cd_g.js +1 -0
- package/dist/web/_next/static/chunks/0.hcqmse3gu~-.js +1 -0
- package/dist/web/_next/static/chunks/0.~n0s82y4zh_.css +1 -0
- package/dist/web/_next/static/chunks/002-dxhags4dj.js +2 -0
- package/dist/web/_next/static/chunks/00n.pmqcipjyd.js +1 -0
- package/dist/web/_next/static/chunks/01pn1cm5v501e.js +1 -0
- package/dist/web/_next/static/chunks/02duknlg3rgjp.js +1 -0
- package/dist/web/_next/static/chunks/02ucy02hzl4vo.js +1 -0
- package/dist/web/_next/static/chunks/02wkg1tjv~_t2.js +1 -0
- package/dist/web/_next/static/chunks/02~6z3ja20ogz.js +1 -0
- package/dist/web/_next/static/chunks/0358_-ep6szf..js +1 -0
- package/dist/web/_next/static/chunks/035l5i6hvxwm4.js +1 -0
- package/dist/web/_next/static/chunks/03jy~o.gx._e-.js +3 -0
- package/dist/web/_next/static/chunks/03sd~wmqw.9gc.js +3 -0
- package/dist/web/_next/static/chunks/04zxh2e-4~-xs.js +1 -0
- package/dist/web/_next/static/chunks/05gu5s~8nh2wc.js +1 -0
- package/dist/web/_next/static/chunks/05irsi.vzfofq.js +1 -0
- package/dist/web/_next/static/chunks/05tbg-zp1~2c_.js +1 -0
- package/dist/web/_next/static/chunks/05tqezrd9jb7y.js +1 -0
- package/dist/web/_next/static/chunks/060_mn7wcaphv.js +1 -0
- package/dist/web/_next/static/chunks/06vb1.5j-tuzp.js +1 -0
- package/dist/web/_next/static/chunks/06xd5s9wkyu0_.js +1 -0
- package/dist/web/_next/static/chunks/07bs5ds68tg38.js +2 -0
- package/dist/web/_next/static/chunks/082lp-xqv7r.-.js +183 -0
- package/dist/web/_next/static/chunks/09j3~tko9ep2k.js +1 -0
- package/dist/web/_next/static/chunks/09qqxs3eg7e46.js +1 -0
- package/dist/web/_next/static/chunks/0_-20qzivafad.js +1 -0
- package/dist/web/_next/static/chunks/0_gm.-h0brxaf.js +1 -0
- package/dist/web/_next/static/chunks/0_yb4aw3n-lks.js +1 -0
- package/dist/web/_next/static/chunks/0ag4p6m9rze~n.js +1 -0
- package/dist/web/_next/static/chunks/0ay4fv-nniykh.css +10 -0
- package/dist/web/_next/static/chunks/0b9oy9dat2g6l.js +1 -0
- package/dist/web/_next/static/chunks/0bm-i9rs31uos.js +1 -0
- package/dist/web/_next/static/chunks/0brr7g0p8esun.js +1 -0
- package/dist/web/_next/static/chunks/0ck3is68a9586.js +1 -0
- package/dist/web/_next/static/chunks/0csqa76ud3h4d.js +1 -0
- package/dist/web/_next/static/chunks/0d4o_4v0-e97a.js +1 -0
- package/dist/web/_next/static/chunks/0d5sgidwe_pcg.js +1 -0
- package/dist/web/_next/static/chunks/0d8lm7uud1uuc.js +1 -0
- package/dist/web/_next/static/chunks/0extjypm.j7dp.js +1 -0
- package/dist/web/_next/static/chunks/0f0-0to._hvah.js +1 -0
- package/dist/web/_next/static/chunks/0f6vrjsdauiwl.js +2 -0
- package/dist/web/_next/static/chunks/0g3ypwmflp2mx.js +1 -0
- package/dist/web/_next/static/chunks/0ggkvx5v53lvc.js +1 -0
- package/dist/web/_next/static/chunks/0ghe5b2-kyi7-.js +1 -0
- package/dist/web/_next/static/chunks/0gkx0n_plricw.js +1 -0
- package/dist/web/_next/static/chunks/0gqhau02~fg83.js +1 -0
- package/dist/web/_next/static/chunks/0gtbd3yt7y1gx.js +1 -0
- package/dist/web/_next/static/chunks/0h5q90v_js2e0.js +1 -0
- package/dist/web/_next/static/chunks/0hu5nx-z4fj7v.js +1 -0
- package/dist/web/_next/static/chunks/0i0psxcvhdp9w.js +1 -0
- package/dist/web/_next/static/chunks/0jm496tvvtjqx.js +1 -0
- package/dist/web/_next/static/chunks/{03jbh7ud0jw~g.js → 0jmsjlawtg6oa.js} +1 -1
- package/dist/web/_next/static/chunks/0ju52ko_nh7gi.js +1 -0
- package/dist/web/_next/static/chunks/0jxj3xh399qcn.js +1 -0
- package/dist/web/_next/static/chunks/0kp1m06cg897x.js +1 -0
- package/dist/web/_next/static/chunks/0ku310xxoin~a.js +1 -0
- package/dist/web/_next/static/chunks/0kyv5yika-41a.js +1 -0
- package/dist/web/_next/static/chunks/0l9n6jio6olx1.js +1 -0
- package/dist/web/_next/static/chunks/0lkfsj~tpr.u8.js +1 -0
- package/dist/web/_next/static/chunks/0m9t_esdrum7w.js +1 -0
- package/dist/web/_next/static/chunks/0n.gs01bd1s_w.js +1 -0
- package/dist/web/_next/static/chunks/0n0j7tw_y1qk2.js +1 -0
- package/dist/web/_next/static/chunks/0n1jhw8ksl5a0.js +1 -0
- package/dist/web/_next/static/chunks/0nq24vo2_9kp4.js +1 -0
- package/dist/web/_next/static/chunks/0p~x_p9pgpnmh.js +1 -0
- package/dist/web/_next/static/chunks/0q01i3ypmm4rg.js +1 -0
- package/dist/web/_next/static/chunks/0q38twk.8uk88.js +1 -0
- package/dist/web/_next/static/chunks/0q7h6v.~-hcln.js +1 -0
- package/dist/web/_next/static/chunks/0qe5wvs8fe9ip.js +1 -0
- package/dist/web/_next/static/chunks/0qtd.b3zhzf38.js +1 -0
- package/dist/web/_next/static/chunks/0qxk21zejhdbm.js +1 -0
- package/dist/web/_next/static/chunks/0rfeqjw8k-viv.js +1 -0
- package/dist/web/_next/static/chunks/0rs7_x_.71x1k.js +1 -0
- package/dist/web/_next/static/chunks/0rx7dmtxo4d6p.js +1 -0
- package/dist/web/_next/static/chunks/0sjpil-vio33w.js +1 -0
- package/dist/web/_next/static/chunks/0ss8hcog1_n1i.js +1 -0
- package/dist/web/_next/static/chunks/0sz5yhrzrrx-_.js +1 -0
- package/dist/web/_next/static/chunks/0t1pc5h0n0y3..js +1 -0
- package/dist/web/_next/static/chunks/0tirraeyj7nqp.js +3 -0
- package/dist/web/_next/static/chunks/0tkii3.lkbu3u.js +1 -0
- package/dist/web/_next/static/chunks/0tl6o7zu1j1r-.css +88 -0
- package/dist/web/_next/static/chunks/0u-29g8eo8dqk.js +7 -0
- package/dist/web/_next/static/chunks/0uiiaq~dh4jdx.js +1 -0
- package/dist/web/_next/static/chunks/0vemm6g3yufzf.js +1 -0
- package/dist/web/_next/static/chunks/0w-ftk2~z_w0f.js +1 -0
- package/dist/web/_next/static/chunks/0w52~a1.76e6y.js +298 -0
- package/dist/web/_next/static/chunks/0wm70l0hod.sw.js +1 -0
- package/dist/web/_next/static/chunks/0wz8~mvztv-vq.js +1 -0
- package/dist/web/_next/static/chunks/0xgw6nacc67av.js +1 -0
- package/dist/web/_next/static/chunks/0y.6d96hu3k6k.js +1 -0
- package/dist/web/_next/static/chunks/0y5ipuqgqfrob.js +8 -0
- package/dist/web/_next/static/chunks/0yuyx75r122y-.js +1 -0
- package/dist/web/_next/static/chunks/0zb1vymmeoc9o.js +1 -0
- package/dist/web/_next/static/chunks/0zj_8cn9~m2~g.js +1 -0
- package/dist/web/_next/static/chunks/0ztjb8i4tqvql.js +1 -0
- package/dist/web/_next/static/chunks/0zxtxecpqyoeh.js +1 -0
- package/dist/web/_next/static/chunks/100t886jj0x0x.js +1 -0
- package/dist/web/_next/static/chunks/11n6upyldh80p.js +1 -0
- package/dist/web/_next/static/chunks/11x5nw_8yy5d0.js +1 -0
- package/dist/web/_next/static/chunks/11~8.35p7_vky.js +1 -0
- package/dist/web/_next/static/chunks/12ae7z-332nqe.js +1 -0
- package/dist/web/_next/static/chunks/12sucjx_z8ftc.js +1 -0
- package/dist/web/_next/static/chunks/13vl889h_tb-~.js +1 -0
- package/dist/web/_next/static/chunks/13w2r5w~ikt_6.js +1 -0
- package/dist/web/_next/static/chunks/14iaqoj9-09g..js +2 -0
- package/dist/web/_next/static/chunks/14j.uts4xnh.u.js +1 -0
- package/dist/web/_next/static/chunks/14qoup0y_1j0t.js +1 -0
- package/dist/web/_next/static/chunks/15_n_khh8cuax.js +5 -0
- package/dist/web/_next/static/chunks/15abz60ucjy3t.js +1 -0
- package/dist/web/_next/static/chunks/15gjlpek9nxo4.js +1 -0
- package/dist/web/_next/static/chunks/15s4k5wdbcagm.js +1 -0
- package/dist/web/_next/static/chunks/178fuwl3hg67c.js +1372 -0
- package/dist/web/_next/static/chunks/17a_qp~nx3_r1.js +1 -0
- package/dist/web/_next/static/chunks/184ukbf139de1.js +1 -0
- package/dist/web/_next/static/chunks/186mu8y9np1sy.js +1 -0
- package/dist/web/_next/static/chunks/turbopack-0-j2hpomozegf.js +1 -0
- package/dist/web/_next/static/chunks/turbopack-0_zn00zg5kmqz.js +1 -0
- package/dist/web/_next/static/chunks/turbopack-0l~pq1hytx49z.js +1 -0
- package/dist/web/_next/static/chunks/turbopack-0rrhp9pbrv0p3.js +1 -0
- package/dist/web/_next/static/chunks/turbopack-worker-0sjn--fhq~1cg.js +1 -0
- package/dist/web/_next/static/media/codicon.0~p3po1x7ylnt.ttf +0 -0
- package/dist/web/_next/static/media/css.worker.0wg41onjsu4l8.js +8 -0
- package/dist/web/_next/static/media/html.worker.13ihv~a-85iob.js +8 -0
- package/dist/web/_next/static/media/json.worker.15xmpow_4mdxu.js +8 -0
- package/dist/web/_next/static/media/ts.worker.05mkk_j-~tju1.js +14 -0
- package/dist/web/_not-found/__next._full.txt +30 -26
- package/dist/web/_not-found/__next._head.txt +4 -4
- package/dist/web/_not-found/__next._index.txt +13 -9
- package/dist/web/_not-found/__next._not-found.__PAGE__.txt +2 -2
- package/dist/web/_not-found/__next._not-found.txt +3 -3
- package/dist/web/_not-found/__next._tree.txt +2 -2
- package/dist/web/_not-found.html +1 -1
- package/dist/web/_not-found.txt +30 -26
- package/dist/web/index.html +1 -1
- package/dist/web/index.txt +26 -22
- package/dist/web/login/__next._full.txt +29 -25
- package/dist/web/login/__next._head.txt +4 -4
- package/dist/web/login/__next._index.txt +13 -9
- package/dist/web/login/__next._tree.txt +2 -2
- package/dist/web/login/__next.login.__PAGE__.txt +4 -4
- package/dist/web/login/__next.login.txt +3 -3
- package/dist/web/login.html +1 -1
- package/dist/web/login.txt +29 -25
- package/dist/web/settings/__next._full.txt +34 -28
- package/dist/web/settings/__next._head.txt +4 -4
- package/dist/web/settings/__next._index.txt +13 -9
- package/dist/web/settings/__next._tree.txt +2 -2
- package/dist/web/settings/__next.settings.__PAGE__.txt +4 -4
- package/dist/web/settings/__next.settings.txt +5 -5
- package/dist/web/settings/agents/__next._full.txt +35 -31
- package/dist/web/settings/agents/__next._head.txt +4 -4
- package/dist/web/settings/agents/__next._index.txt +13 -9
- package/dist/web/settings/agents/__next._tree.txt +2 -2
- package/dist/web/settings/agents/__next.settings.agents.__PAGE__.txt +4 -4
- package/dist/web/settings/agents/__next.settings.agents.txt +3 -3
- package/dist/web/settings/agents/__next.settings.txt +5 -5
- package/dist/web/settings/agents.html +1 -1
- package/dist/web/settings/agents.txt +35 -31
- package/dist/web/settings/mcps/__next._full.txt +35 -31
- package/dist/web/settings/mcps/__next._head.txt +4 -4
- package/dist/web/settings/mcps/__next._index.txt +13 -9
- package/dist/web/settings/mcps/__next._tree.txt +2 -2
- package/dist/web/settings/mcps/__next.settings.mcps.__PAGE__.txt +4 -4
- package/dist/web/settings/mcps/__next.settings.mcps.txt +3 -3
- package/dist/web/settings/mcps/__next.settings.txt +5 -5
- package/dist/web/settings/mcps.html +1 -1
- package/dist/web/settings/mcps.txt +35 -31
- package/dist/web/settings/models/__next._full.txt +35 -31
- package/dist/web/settings/models/__next._head.txt +4 -4
- package/dist/web/settings/models/__next._index.txt +13 -9
- package/dist/web/settings/models/__next._tree.txt +2 -2
- package/dist/web/settings/models/__next.settings.models.__PAGE__.txt +4 -4
- package/dist/web/settings/models/__next.settings.models.txt +3 -3
- package/dist/web/settings/models/__next.settings.txt +5 -5
- package/dist/web/settings/models.html +1 -1
- package/dist/web/settings/models.txt +35 -31
- package/dist/web/settings/providers/__next._full.txt +35 -31
- package/dist/web/settings/providers/__next._head.txt +4 -4
- package/dist/web/settings/providers/__next._index.txt +13 -9
- package/dist/web/settings/providers/__next._tree.txt +2 -2
- package/dist/web/settings/providers/__next.settings.providers.__PAGE__.txt +4 -4
- package/dist/web/settings/providers/__next.settings.providers.txt +3 -3
- package/dist/web/settings/providers/__next.settings.txt +5 -5
- package/dist/web/settings/providers.html +1 -1
- package/dist/web/settings/providers.txt +35 -31
- package/dist/web/settings/skills/__next._full.txt +35 -31
- package/dist/web/settings/skills/__next._head.txt +4 -4
- package/dist/web/settings/skills/__next._index.txt +13 -9
- package/dist/web/settings/skills/__next._tree.txt +2 -2
- package/dist/web/settings/skills/__next.settings.skills.__PAGE__.txt +4 -4
- package/dist/web/settings/skills/__next.settings.skills.txt +3 -3
- package/dist/web/settings/skills/__next.settings.txt +5 -5
- package/dist/web/settings/skills.html +1 -1
- package/dist/web/settings/skills.txt +35 -31
- package/dist/web/settings.html +1 -1
- package/dist/web/settings.txt +34 -28
- package/dist/web/workflows/__next._full.txt +31 -27
- package/dist/web/workflows/__next._head.txt +4 -4
- package/dist/web/workflows/__next._index.txt +13 -9
- package/dist/web/workflows/__next._tree.txt +2 -2
- package/dist/web/workflows/__next.workflows.__PAGE__.txt +4 -4
- package/dist/web/workflows/__next.workflows.txt +3 -3
- package/dist/web/workflows.html +1 -1
- package/dist/web/workflows.txt +31 -27
- package/dist/web/workspace/_/__next._full.txt +36 -25
- package/dist/web/workspace/_/__next._head.txt +4 -4
- package/dist/web/workspace/_/__next._index.txt +13 -9
- package/dist/web/workspace/_/__next._tree.txt +4 -2
- package/dist/web/workspace/_/__next.workspace.$d$id.__PAGE__.txt +5 -3
- package/dist/web/workspace/_/__next.workspace.$d$id.txt +3 -3
- package/dist/web/workspace/_/__next.workspace.txt +3 -3
- package/dist/web/workspace/_.html +1 -1
- package/dist/web/workspace/_.txt +36 -25
- package/dist/web/workspaces/__next._full.txt +30 -25
- package/dist/web/workspaces/__next._head.txt +4 -4
- package/dist/web/workspaces/__next._index.txt +13 -9
- package/dist/web/workspaces/__next._tree.txt +2 -2
- package/dist/web/workspaces/__next.workspaces.__PAGE__.txt +4 -4
- package/dist/web/workspaces/__next.workspaces.txt +3 -3
- package/dist/web/workspaces.html +1 -1
- package/dist/web/workspaces.txt +30 -25
- package/dist/ws/agent-prompt.js +39 -5
- package/package.json +5 -1
- package/dist/web/_next/static/chunks/0-245kun-watp.js +0 -2
- package/dist/web/_next/static/chunks/0.4.g.8yf4rs0.js +0 -3
- package/dist/web/_next/static/chunks/02m_-ngl9w8co.js +0 -1
- package/dist/web/_next/static/chunks/088q-5_51dsrw.js +0 -1
- package/dist/web/_next/static/chunks/08fqgb~~a~4ck.js +0 -1
- package/dist/web/_next/static/chunks/09_ki3dc5cfwv.css +0 -1
- package/dist/web/_next/static/chunks/0amzlgoqe50tv.js +0 -8
- package/dist/web/_next/static/chunks/0car_w834cbb6.js +0 -1
- package/dist/web/_next/static/chunks/0fwvdy-ml8wpk.js +0 -1
- package/dist/web/_next/static/chunks/0g_b4t~000.o~.js +0 -179
- package/dist/web/_next/static/chunks/0ib18ul605e~a.js +0 -1
- package/dist/web/_next/static/chunks/0o4m39hw4fb_j.js +0 -1
- package/dist/web/_next/static/chunks/0q_scqkk9.t53.js +0 -2
- package/dist/web/_next/static/chunks/0qyjxx0y7rzuu.js +0 -1
- package/dist/web/_next/static/chunks/0rrdur.v1a5r7.js +0 -1
- package/dist/web/_next/static/chunks/0spo.tmfeas-o.js +0 -1
- package/dist/web/_next/static/chunks/0u88ij9dqqh~-.js +0 -1
- package/dist/web/_next/static/chunks/11n16hogah-5..js +0 -1
- package/dist/web/_next/static/chunks/160ji-.dfvm20.js +0 -1
- /package/dist/web/_next/static/{7UtFGbIZvN_2yiatRc2g3 → hGfVPALj5nbwettayL9DY}/_buildManifest.js +0 -0
- /package/dist/web/_next/static/{7UtFGbIZvN_2yiatRc2g3 → hGfVPALj5nbwettayL9DY}/_clientMiddlewareManifest.js +0 -0
- /package/dist/web/_next/static/{7UtFGbIZvN_2yiatRc2g3 → hGfVPALj5nbwettayL9DY}/_ssgManifest.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,837121,(e,t,s)=>{"use strict";Object.defineProperty(s,"__esModule",{value:!0}),Object.defineProperty(s,"warnOnce",{enumerable:!0,get:function(){return a}});let a=e=>{}},989484,905724,e=>{"use strict";let t=(0,e.i(433721).default)("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);e.s(["default",0,t],905724),e.s(["FileText",0,t],989484)},517432,e=>{"use strict";var t=e.i(56032),s=e.i(863728);function a(){return s.NOOP}function i(){return!1}function n(){return!0}e.s(["useIsHydrating",0,function(){return(0,t.useSyncExternalStore)(a,i,n)}])},950396,e=>{"use strict";var t=e.i(344180),s=e.i(764556),a=e.i(799543);let i=(0,s.createContext)({theme:"system",setTheme:()=>{},resolvedTheme:"light"}),n="agent-spaces-theme";function l(){return window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"}function r(e){let t="system"===e?l():e,s=document.documentElement;s.classList.remove("light","dark"),s.classList.add(t),s.style.colorScheme=t}e.s(["ThemeProvider",0,function({children:e,defaultTheme:c="system"}){(0,a.useServerInsertedHTML)(()=>(0,t.jsx)("script",{dangerouslySetInnerHTML:{__html:`(function(){try{var t=localStorage.getItem('${n}');var d=t==='dark'||((!t||t==='system')&&matchMedia('(prefers-color-scheme:dark)').matches);document.documentElement.classList.add(d?'dark':'light');document.documentElement.style.colorScheme=d?'dark':'light'}catch(e){}})()`}},"theme-init"));let o=(0,s.useSyncExternalStore)(e=>{let t=window.matchMedia("(prefers-color-scheme: dark)");return t.addEventListener("change",e),()=>t.removeEventListener("change",e)},()=>l(),()=>"light"),d=(0,s.useSyncExternalStore)(e=>(window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)),()=>localStorage.getItem(n)||c,()=>c),m="system"===d?o:d,u=(0,s.useCallback)(e=>{localStorage.setItem(n,e),r(e),window.dispatchEvent(new StorageEvent("storage",{key:n}))},[]);return(0,s.useEffect)(()=>{r(d)},[d,o]),(0,t.jsx)(i.Provider,{value:{theme:d,setTheme:u,resolvedTheme:m},children:e})},"useTheme",0,function(){return(0,s.useContext)(i)}])},799773,e=>{"use strict";let t=(0,e.i(433721).default)("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]]);e.s(["User",0,t],799773)},92457,e=>{"use strict";let t=(0,e.i(433721).default)("monitor",[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]]);e.s(["Monitor",0,t],92457)},267624,e=>{"use strict";let t=(0,e.i(433721).default)("layout-grid",[["rect",{width:"7",height:"7",x:"3",y:"3",rx:"1",key:"1g98yp"}],["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["rect",{width:"7",height:"7",x:"14",y:"14",rx:"1",key:"nxv5o0"}],["rect",{width:"7",height:"7",x:"3",y:"14",rx:"1",key:"1bb6yr"}]]);e.s(["LayoutGrid",0,t],267624)},757106,e=>{"use strict";let t=(0,e.i(433721).default)("brain",[["path",{d:"M12 18V5",key:"adv99a"}],["path",{d:"M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4",key:"1e3is1"}],["path",{d:"M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5",key:"1gqd8o"}],["path",{d:"M17.997 5.125a4 4 0 0 1 2.526 5.77",key:"iwvgf7"}],["path",{d:"M18 18a4 4 0 0 0 2-7.464",key:"efp6ie"}],["path",{d:"M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517",key:"1gq6am"}],["path",{d:"M6 18a4 4 0 0 1-2-7.464",key:"k1g0md"}],["path",{d:"M6.003 5.125a4 4 0 0 0-2.526 5.77",key:"q97ue3"}]]);e.s(["default",0,t])},990336,e=>{"use strict";var t=e.i(757106);e.s(["Brain",()=>t.default])},307858,e=>{"use strict";let t=(0,e.i(433721).default)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]]);e.s(["ExternalLink",0,t],307858)},549705,e=>{"use strict";var t=e.i(344180),s=e.i(764556),a=e.i(244073),i=e.i(209988),n=e.i(260218),l=e.i(681622),r=e.i(562918),c=e.i(767467),o=e.i(100559),d=e.i(953700),m=e.i(137340),u=e.i(990336),x=e.i(307858),h=e.i(368942);let p={vision:"bg-blue-500/10 text-blue-600 border-blue-200",reasoning:"bg-purple-500/10 text-purple-600 border-purple-200",embedding:"bg-green-500/10 text-green-600 border-green-200"};function f({providers:e,providerModels:s,onEdit:i,onDelete:l,onAddModel:c}){let d=(0,a.useTranslations)("providers");return(0,t.jsxs)("div",{className:"flex flex-col p-2",children:[e.map(e=>{let a=s.find(t=>t.id===e.id),h=a?.models??[];return(0,t.jsxs)("div",{className:"group rounded-lg px-3 py-2.5 hover:bg-muted/50 cursor-pointer transition-colors",onClick:()=>i(e),children:[(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[(0,t.jsx)("div",{className:"flex size-8 items-center justify-center rounded-lg bg-primary/10",children:(0,t.jsx)(o.Server,{className:"size-4 text-primary"})}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsx)("span",{className:"text-sm font-medium",children:e.name}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground truncate",children:e.apiBase||d("list.noApiBase")})]}),(0,t.jsxs)(r.Badge,{variant:"outline",className:"text-[10px] h-4 px-1.5",children:[h.length," ",d("list.modelsCount")]}),(0,t.jsx)(n.Button,{variant:"ghost",size:"icon-xs",className:"opacity-0 group-hover:opacity-100 transition-opacity",onClick:t=>{t.stopPropagation(),l(e.id)},children:(0,t.jsx)(m.Trash2,{className:"size-3 text-destructive"})})]}),h.length>0&&(0,t.jsx)("div",{className:"mt-2 ml-11 flex flex-wrap gap-1",children:h.map(e=>(0,t.jsxs)("span",{className:"inline-flex items-center gap-0.5 text-[11px] text-muted-foreground",children:[(0,t.jsx)(u.Brain,{className:"size-3"}),e.name,["vision","reasoning","embedding"].map(s=>e[s]?(0,t.jsx)("span",{className:`inline-block rounded px-1 text-[9px] font-medium border ${p[s]}`,children:s[0].toUpperCase()},s):null)]},e.id))}),(0,t.jsxs)(n.Button,{variant:"ghost",size:"xs",className:"mt-1 ml-11 h-6 text-[11px] text-muted-foreground",onClick:t=>{t.stopPropagation(),c(e.name)},children:[(0,t.jsx)(x.ExternalLink,{className:"size-3"}),d("list.addModel")]})]},e.id)}),0===e.length&&(0,t.jsxs)("div",{className:"flex flex-col items-center justify-center py-12 text-muted-foreground",children:[(0,t.jsx)(o.Server,{className:"size-10 mb-2 opacity-30"}),(0,t.jsx)("p",{className:"text-sm",children:d("list.empty")})]})]})}function g({draft:e,onChange:s}){let i=(0,a.useTranslations)("providers");return(0,t.jsx)("div",{className:"flex flex-col gap-5 p-5",children:(0,t.jsxs)("div",{className:"flex flex-col gap-2.5",children:[(0,t.jsx)("div",{className:"text-xs font-medium text-muted-foreground uppercase tracking-wider",children:i("form.connection")}),(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("label",{className:"text-xs text-muted-foreground",children:i("form.name")}),(0,t.jsx)(l.Input,{value:e.name||"",onChange:e=>s("name",e.target.value),placeholder:i("form.namePlaceholder")})]}),(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("label",{className:"text-xs text-muted-foreground",children:i("form.apiBase")}),(0,t.jsx)(l.Input,{value:e.apiBase||"",onChange:e=>s("apiBase",e.target.value),placeholder:i("form.apiBasePlaceholder")})]}),(0,t.jsxs)("div",{className:"flex flex-col gap-1",children:[(0,t.jsx)("label",{className:"text-xs text-muted-foreground",children:i("form.apiKey")}),(0,t.jsx)(l.Input,{type:"password",value:e.apiKey||"",onChange:e=>s("apiKey",e.target.value),placeholder:i("form.apiKeyPlaceholder")})]})]})})}e.s(["ProvidersDialog",0,function({open:e,onOpenChange:l,onAddModel:r,standalone:o}){let m=(0,a.useTranslations)("providers"),u=(0,a.useTranslations)("common"),{models:x,providers:p,ensure:j,addProvider:v,updateProvider:y,removeProvider:N}=(0,h.useLLMStore)(),[k,w]=(0,s.useState)(null),[b,S]=(0,s.useState)(null),[C,z]=(0,s.useState)(!1),[D,T]=(0,s.useState)(!1),[I,M]=(0,s.useState)(null);(0,s.useEffect)(()=>{e&&(z(!0),M(null),j().finally(()=>z(!1)))},[e,j]);let A=()=>{w(null),S(null)},B=async()=>{if(b&&b.name){T(!0),M(null);try{let e=!k,t=await fetch(e?"/api/providers":`/api/providers/${k.id}`,{method:e?"POST":"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)});if(!t.ok)throw Error();let s=await t.json();e?v(s):y(s),A()}catch{M(m("error.saveFailed"))}finally{T(!1)}}},P=async e=>{if(confirm(m("confirm.delete"))){T(!0);try{if(!(await fetch(`/api/providers/${e}`,{method:"DELETE"})).ok)throw Error();N(e),k?.id===e&&A()}catch{M(m("error.deleteFailed"))}finally{T(!1)}}},$=(0,t.jsxs)(t.Fragment,{children:[!o&&(0,t.jsxs)("div",{className:"flex items-center gap-3 border-b px-5 py-4",children:[b&&(0,t.jsx)(n.Button,{variant:"ghost",size:"icon-sm",onClick:A,children:(0,t.jsx)(c.ArrowLeft,{className:"size-4"})}),(0,t.jsxs)(i.DialogHeader,{className:"flex-1 space-y-0",children:[(0,t.jsx)(i.DialogTitle,{className:"text-base",children:b?k?m("dialog.editTitle"):m("dialog.addTitle"):m("dialog.title")}),(0,t.jsx)(i.DialogDescription,{className:"text-xs",children:b?m("dialog.editDescription"):m("dialog.listDescription")})]}),!b&&(0,t.jsxs)(n.Button,{variant:"outline",size:"sm",onClick:()=>{w(null),S({name:"",apiBase:"",apiKey:""})},className:"mr-6",children:[(0,t.jsx)(d.Plus,{className:"size-3.5"}),m("dialog.add")]})]}),(0,t.jsxs)("div",{className:"flex-1 overflow-y-auto",children:[I&&(0,t.jsx)("div",{className:"mx-5 mt-4 rounded-md border border-destructive/30 bg-destructive/10 px-3 py-2 text-xs text-destructive",children:I}),C?(0,t.jsx)("div",{className:"py-12 text-center text-sm text-muted-foreground",children:m("dialog.loading")}):b?(0,t.jsx)(g,{draft:b,onChange:(e,t)=>{S(s=>s?{...s,[e]:t}:s)}}):(0,t.jsx)(f,{providers:p,providerModels:p.map(e=>{let t;return{id:e.id,models:(t=e.name,x.filter(e=>e.provider===t))}}),onEdit:e=>{w(e),S({...e})},onDelete:P,onAddModel:e=>{o||l(!1),r(e)}})]}),b&&(0,t.jsxs)("div",{className:"flex justify-end gap-2 border-t px-5 py-3",children:[(0,t.jsx)(n.Button,{variant:"outline",size:"sm",onClick:A,disabled:D,children:u("cancel")}),(0,t.jsx)(n.Button,{size:"sm",onClick:B,disabled:D||!b.name,children:u(D?"saving":"save")})]})]});return o?(0,t.jsx)("div",{className:"h-full flex flex-col",children:$}):(0,t.jsx)(i.Dialog,{open:e,onOpenChange:e=>{e||A(),l(e)},children:(0,t.jsx)(i.DialogContent,{className:"sm:max-w-2xl max-h-[85vh] flex flex-col p-0 gap-0",children:$})})}])},437122,515104,233297,286117,e=>{"use strict";var t=e.i(523592);function s(){return"tauri.localhost"===window.location.hostname||"__TAURI_INTERNALS__"in window}async function a(){return s()?c():"Notification"in window?r(Notification.permission):"unsupported"}async function i(){return s()?o():l()}async function n(e,t){var a,i;return s()?d(e,t):(a=e,i=t,void("Notification"in window&&"granted"===Notification.permission&&new Notification(a,{body:i,icon:"/favicon.ico"})))}async function l(){return"Notification"in window?r(await Notification.requestPermission()):"unsupported"}function r(e){switch(e){case"granted":return"granted";case"denied":return"denied";default:return"default"}}async function c(){try{let{isPermissionGranted:t}=await e.A(678001);return await t()?"granted":"default"}catch{return"unsupported"}}async function o(){try{let{requestPermission:t,isPermissionGranted:s}=await e.A(678001),a=await t();if("granted"===a||await s())return"granted";return"denied"}catch{return"unsupported"}}async function d(t,s){try{let{sendNotification:a,isPermissionGranted:i}=await e.A(678001);if(!await i())return;a({title:t,body:s})}catch{}}function m(e){let[t,s=""]=e.split("#",2),[a,i=""]=t.split("?",2);if(!a.startsWith("/")||a.startsWith("/api/"))return e;if("/"===a)return`/${i?`?${i}`:""}${s?`#${s}`:""}`;if(a.startsWith("/workspace/")){let e=a.slice(11).split("/")[0],t=new URLSearchParams(i);return t.set("workspaceId",e),`/workspace/_.html${t.toString()?`?${t.toString()}`:""}${s?`#${s}`:""}`}let n=a.endsWith(".html")?a:`${a}.html`;return`${n}${i?`?${i}`:""}${s?`#${s}`:""}`}function u(e){return"/index.html"===e?"/":e.endsWith(".html")?e.slice(0,-5):e}function x(e){return"/login"===u(e)}e.i(8890),e.s(["getNotificationPermission",0,a,"isTauriEnvironment",0,s,"requestNotificationPermission",0,i,"sendNativeNotification",0,n],515104),e.s(["tauriNavigate",0,function(e,t,s=!1){t=m(t),s?window.location.replace(t):window.location.href=t},"toStaticHref",0,m],233297),e.s(["isLoginPath",0,x,"isWorkspacePath",0,function(e){return u(e).startsWith("/workspace/")},"workspaceIdFromLocation",0,function(e,t){let s=new URLSearchParams(t).get("workspaceId");if(s)return s;let a=u(e).match(/^\/workspace\/([^/]+)/);return a?.[1]??null}],286117);let h="agent-spaces-token",p="agent-spaces-auth-verified";function f(){let e=localStorage.getItem(h);if(null!==e)return e;let s=(0,t.getActiveServer)()?.secret;return void 0!==s?s:null}function g(){localStorage.removeItem(h),localStorage.removeItem(p)}function j(){let e=f();return null===e?{}:{Authorization:`Bearer ${e}`}}async function v(e,s){let a=function(e){if("string"!=typeof e||e.startsWith("http"))return e;let s=(0,t.getActiveServerUrl)();return s?`${s}${e.startsWith("/")?"":"/"}${e}`:e}(e),i={...j(),...s?.headers},n=await fetch(a,{...s,headers:i});return(401===n.status||403===n.status)&&(g(),x(window.location.pathname)||window.location.replace(m("/login"))),n}e.s(["authHeaders",0,j,"fetchWithAuth",0,v,"getToken",0,f,"isAuthenticated",0,function(){return"1"===localStorage.getItem(p)},"removeToken",0,g,"setToken",0,function(e){localStorage.setItem(h,e),localStorage.setItem(p,"1")}],437122)},962562,e=>{"use strict";let t=(0,e.i(433721).default)("pencil",[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]]);e.s(["Pencil",0,t],962562)},210,e=>{"use strict";let t=(0,e.i(433721).default)("settings-2",[["path",{d:"M14 17H5",key:"gfn3mx"}],["path",{d:"M19 7h-9",key:"6i9tg"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]);e.s(["Settings2",0,t],210)},100559,e=>{"use strict";let t=(0,e.i(433721).default)("server",[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]]);e.s(["Server",0,t],100559)},894920,e=>{"use strict";var t=e.i(344180),s=e.i(764556),a=e.i(209988),i=e.i(260218),n=e.i(681622),l=e.i(344118),r=e.i(962562),c=e.i(953700),o=e.i(100559),d=e.i(137340),m=e.i(244073);e.s(["ServerManagerDialog",0,function({open:e,onOpenChange:u,servers:x,activeId:h,onUpdate:p,onRemove:f,onSwitch:g}){let j=(0,m.useTranslations)("sidebar"),v=(0,m.useTranslations)("common"),[y,N]=s.useState(null),[k,w]=s.useState(""),[b,S]=s.useState(""),[C,z]=s.useState(""),[D,T]=s.useState(""),[I,M]=s.useState(""),[A,B]=s.useState(""),P=()=>{N(null),w(""),S(""),z("")},$=()=>{if(!k.trim()||!b.trim())return;let e=b.trim().replace(/\/$/,"");/^https?:\/\//.test(e)||(e="http://"+e),p(x.map(t=>t.id===y?{...t,name:k.trim(),url:e,secret:C.trim()||void 0}:t)),P()};return(0,t.jsx)(a.Dialog,{open:e,onOpenChange:e=>{u(e),e||P()},children:(0,t.jsxs)(a.DialogContent,{className:"max-w-md",children:[(0,t.jsxs)(a.DialogHeader,{children:[(0,t.jsx)(a.DialogTitle,{children:j("server.manageServers")}),(0,t.jsx)(a.DialogDescription,{children:j("server.manageDescription")})]}),(0,t.jsx)("div",{className:"space-y-1",children:x.map(e=>(0,t.jsxs)("div",{className:"flex items-center gap-3 rounded-md border px-3 py-2",children:[(0,t.jsx)(o.Server,{className:"size-4 shrink-0 text-muted-foreground"}),y===e.id?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.Input,{className:"h-7 text-sm flex-1",value:k,onChange:e=>w(e.target.value),placeholder:"Name",autoFocus:!0}),(0,t.jsx)(n.Input,{className:"h-7 text-sm flex-[1.5]",value:b,onChange:e=>S(e.target.value),placeholder:"http://...",onKeyDown:e=>"Enter"===e.key&&e.preventDefault()}),(0,t.jsx)(i.Button,{size:"sm",variant:"ghost",onClick:$,className:"h-7 px-2",children:v("save")}),(0,t.jsx)(i.Button,{size:"sm",variant:"ghost",onClick:P,className:"h-7 px-2",children:v("cancel")})]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsxs)("div",{className:"flex-1 min-w-0 cursor-pointer",onClick:()=>{e.id!==h&&g(e)},children:[(0,t.jsx)("div",{className:"text-sm font-medium truncate",children:e.name}),(0,t.jsx)("div",{className:"text-xs text-muted-foreground truncate",children:e.url})]}),e.id===h?(0,t.jsx)(l.Check,{className:"size-4 shrink-0 text-primary"}):(0,t.jsx)(i.Button,{size:"sm",variant:"ghost",onClick:()=>g(e),className:"h-7 px-2 text-xs shrink-0",children:j("server.switch")}),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(r.Pencil,{className:"size-3.5 shrink-0 text-muted-foreground cursor-pointer hover:text-foreground",onClick:()=>{N(e.id),w(e.name),S(e.url),z(e.secret||"")}}),"default"!==e.id&&(0,t.jsx)(d.Trash2,{className:"size-3.5 shrink-0 text-muted-foreground cursor-pointer hover:text-destructive",onClick:()=>f(e.id)})]})]})]},e.id))}),null===y&&(0,t.jsxs)("div",{className:"border-t pt-3 mt-2 space-y-2",children:[(0,t.jsx)("div",{className:"text-xs font-medium text-muted-foreground mb-2",children:j("server.newServer")}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)(n.Input,{className:"h-8 text-sm",value:D,onChange:e=>T(e.target.value),placeholder:"Name"}),(0,t.jsx)(i.Button,{size:"sm",onClick:()=>{if(!D.trim()||!I.trim())return;let e=I.trim().replace(/\/$/,"");/^https?:\/\//.test(e)||(e="http://"+e),p([...x,{id:Date.now().toString(),name:D.trim(),url:e,secret:A.trim()||void 0}]),T(""),M(""),B("")},disabled:!D.trim()||!I.trim(),children:(0,t.jsx)(c.Plus,{className:"size-4"})})]}),(0,t.jsx)("div",{className:"flex items-center gap-2",children:(0,t.jsx)(n.Input,{className:"h-8 text-sm flex-1",value:I,onChange:e=>M(e.target.value),placeholder:"http://..."})}),(0,t.jsx)("div",{className:"flex items-center gap-2",children:(0,t.jsx)(n.Input,{className:"h-8 text-sm flex-1",type:"password",value:A,onChange:e=>B(e.target.value),placeholder:j("server.secretOptionalPlaceholder"),onKeyDown:e=>"Enter"===e.key&&e.preventDefault()})})]})]})})}])},111343,e=>{"use strict";let t=(0,e.i(433721).default)("save",[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]]);e.s(["Save",0,t],111343)},255742,973767,401058,977694,e=>{"use strict";var t=e.i(433721);let s=(0,t.default)("star",[["path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z",key:"r04s7s"}]]);e.s(["Star",0,s],255742);let a=(0,t.default)("star-off",[["path",{d:"m10.344 4.688 1.181-2.393a.53.53 0 0 1 .95 0l2.31 4.679a2.12 2.12 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.237 3.152",key:"19ctli"}],["path",{d:"m17.945 17.945.43 2.505a.53.53 0 0 1-.771.56l-4.618-2.428a2.12 2.12 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.12 2.12 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a8 8 0 0 0 .4-.099",key:"ptqqvy"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]]);e.s(["StarOff",0,a],973767);let i=(0,t.default)("ellipsis-vertical",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"12",cy:"5",r:"1",key:"gxeob9"}],["circle",{cx:"12",cy:"19",r:"1",key:"lyex9k"}]]);e.s(["MoreVertical",0,i],401058);let n=(0,t.default)("rocket",[["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}],["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09",key:"u4xsad"}],["path",{d:"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z",key:"676m9"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05",key:"92ym6u"}]]);e.s(["Rocket",0,n],977694)},22906,191202,e=>{"use strict";var t=e.i(344180),s=e.i(764556),a=e.i(244073),i=e.i(887836),n=e.i(209988),l=e.i(260218),r=e.i(681622),c=e.i(788010),o=e.i(191118),d=e.i(917955),m=e.i(996652),u=e.i(188815),x=e.i(611176),h=e.i(255742),p=e.i(973767),f=e.i(129981),g=e.i(887354);let j=(0,e.i(433721).default)("plug",[["path",{d:"M12 22v-5",key:"1ega77"}],["path",{d:"M15 8V2",key:"18g5xt"}],["path",{d:"M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z",key:"1xoxul"}],["path",{d:"M9 8V2",key:"14iosj"}]]);e.s(["Plug",0,j],191202);var v=e.i(972846),y=e.i(401058),N=e.i(137340),k=e.i(977694),w=e.i(111343),b=e.i(465458);e.i(462506);let S=(0,i.default)(()=>e.A(863812).then(e=>e.default),{loadableGenerated:{modules:[158480]},ssr:!1,loading:()=>(0,t.jsx)("div",{className:"flex items-center justify-center h-full text-muted-foreground text-sm",children:"Loading editor..."})});e.s(["McpsDialog",0,function({open:e,onOpenChange:i,standalone:C}){let z=(0,a.useTranslations)("mcps"),D=(0,a.useTranslations)("common"),[T,I]=(0,s.useState)([]),[M,A]=(0,s.useState)([]),[B,P]=(0,s.useState)(!1),[$,L]=(0,s.useState)(""),[O,U]=(0,s.useState)("all"),[E,F]=(0,s.useState)(""),[H,R]=(0,s.useState)(!1),[J,q]=(0,s.useState)(""),[W,V]=(0,s.useState)(""),[K,_]=(0,s.useState)(null),[G,X]=(0,s.useState)([]),[Q,Y]=(0,s.useState)(null),[Z,ee]=(0,s.useState)(""),et=(0,s.useCallback)(async()=>{P(!0);try{let e=await fetch("/api/mcps");e.ok&&I(await e.json())}catch{}P(!1)},[]),es=(0,s.useCallback)(async()=>{try{let e=await fetch("/api/agents/presets");if(e.ok){let t=await e.json();A(t.map(e=>({id:e.id,name:e.name,avatarUrl:e.avatarUrl,description:e.description})))}}catch{}},[]);(0,s.useEffect)(()=>{(e||C)&&(et(),es())},[e,C,et,es]);let ea=async e=>{try{let t=await fetch(`/api/mcps/${encodeURIComponent(e.name)}/favorite`,{method:"POST"});if(t.ok){let{favorited:s}=await t.json();I(t=>t.map(t=>t.name===e.name?{...t,favorited:s}:t))}}catch{}},ei=async()=>{V("");try{JSON.parse(J)}catch{V(z("importInvalidJson"));return}try{let e=await fetch("/api/mcps/import",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({jsonText:J})});if(e.ok)q(""),R(!1),et();else{let t=await e.json();V(t.error||z("importFailed"))}}catch{V(z("importFailed"))}},en=async()=>{let e;if(Q){try{e=JSON.parse(Z)}catch{return}try{(await fetch(`/api/mcps/${encodeURIComponent(Q.name)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({config:e})})).ok&&(I(t=>t.map(t=>t.name===Q.name?{...t,config:e}:t)),Y(null))}catch{}}},el=async e=>{try{(await fetch(`/api/mcps/${encodeURIComponent(e.name)}`,{method:"DELETE"})).ok&&I(t=>t.filter(t=>t.name!==e.name))}catch{}},er=async()=>{if(K){for(let e of M){let t=K.boundAgents.some(t=>t.id===e.id),s=G.includes(e.id);if(t&&!s){let t=await fetch(`/api/agents/presets/${e.id}`);if(!t.ok)continue;let s=await t.json(),a=s.mcps||{},i={...a.mcpServers||{}};delete i[K.name],await fetch(`/api/agents/presets/${e.id}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({...s,mcps:{...a,mcpServers:i}})})}else if(!t&&s){let t=await fetch(`/api/agents/presets/${e.id}`);if(!t.ok)continue;let s=await t.json(),a=s.mcps||{},i={...a.mcpServers||{}};K.name in i||(i[K.name]=K.config,await fetch(`/api/agents/presets/${e.id}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({...s,mcps:{...a,mcpServers:i}})}))}}_(null),et()}},ec=e=>{X(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},eo=T.filter(e=>{if($){let t=$.toLowerCase();if(!e.name.toLowerCase().includes(t)&&!e.description.toLowerCase().includes(t))return!1}return("favorites"!==O||!!e.favorited)&&("agent"!==O||!E||!!e.boundAgents.some(e=>e.id===E))}),ed=(C||e)&&!K&&!Q,em=(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.DialogHeader,{children:(0,t.jsxs)("div",{className:"flex items-center justify-end pr-8 pt-2",children:[(0,t.jsxs)("div",{className:"hidden md:block",children:[C?(0,t.jsx)("h2",{className:"text-base font-semibold",children:z("title")}):(0,t.jsx)(n.DialogTitle,{children:z("title")}),C?(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:z("description")}):(0,t.jsx)(n.DialogDescription,{children:z("description")})]}),(0,t.jsx)("div",{className:"flex items-center gap-2",children:(0,t.jsxs)(m.Popover,{open:H,onOpenChange:R,children:[(0,t.jsx)(m.PopoverTrigger,{render:(0,t.jsxs)(l.Button,{variant:"outline",size:"sm",children:[(0,t.jsx)(f.Upload,{className:"size-3.5 mr-1"}),z("import")]})}),(0,t.jsx)(m.PopoverContent,{className:"w-96",align:"end",children:(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsx)("p",{className:"text-sm font-medium",children:z("importTitle")}),(0,t.jsx)(c.Textarea,{value:J,onChange:e=>{q(e.target.value),V("")},placeholder:'{\n "mcpServers": {\n "server-name": {\n "command": "npx",\n "args": ["-y", "package"],\n "env": {}\n }\n }\n}',className:"font-mono text-xs min-h-[180px] resize-none"}),W&&(0,t.jsx)("p",{className:"text-xs text-destructive",children:W}),(0,t.jsx)(l.Button,{size:"sm",onClick:ei,disabled:!J.trim(),className:"w-full",children:z("importConfirm")})]})})]})})]})}),(0,t.jsxs)("div",{className:"flex flex-1 min-h-0 gap-4 pt-2",children:[(0,t.jsxs)("div",{className:"hidden md:flex w-44 shrink-0 flex-col gap-3",children:[(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsxs)(l.Button,{variant:"all"===O?"secondary":"ghost",size:"sm",className:"w-full justify-start",onClick:()=>{U("all"),F("")},children:[(0,t.jsx)(j,{className:"size-3.5 mr-1.5"}),z("filterAll")]}),(0,t.jsxs)(l.Button,{variant:"favorites"===O?"secondary":"ghost",size:"sm",className:"w-full justify-start",onClick:()=>{U("favorites"),F("")},children:[(0,t.jsx)(h.Star,{className:"size-3.5 mr-1.5"}),z("filterFavorites")]})]}),M.length>0&&(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)("p",{className:"text-xs font-medium text-muted-foreground px-2",children:z("filterByAgent")}),(0,t.jsx)(o.ScrollArea,{className:"max-h-48",children:M.map(e=>(0,t.jsxs)(l.Button,{variant:"agent"===O&&E===e.id?"secondary":"ghost",size:"sm",className:"w-full justify-start",onClick:()=>{U("agent"),F(e.id)},children:[(0,t.jsx)(x.AgentIcon,{agentId:e.id,name:e.name,avatarUrl:e.avatarUrl,className:"size-4 mr-1.5 rounded-full"}),(0,t.jsx)("span",{className:"truncate",children:e.name})]},e.id))})]})]}),(0,t.jsxs)("div",{className:"flex-1 min-w-0 flex flex-col gap-3",children:[(0,t.jsxs)("div",{className:"flex md:hidden flex-col gap-2",children:[(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)(g.Search,{className:"size-3.5 absolute left-2.5 top-1/2 -translate-y-1/2 text-muted-foreground"}),(0,t.jsx)(r.Input,{value:$,onChange:e=>L(e.target.value),placeholder:z("search"),className:"pl-8"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsxs)("div",{className:"flex rounded-lg border border-input p-0.5",children:[(0,t.jsx)("button",{type:"button",className:(0,b.cn)("px-2.5 py-1 rounded-md text-xs font-medium transition-colors","all"===O?"bg-muted":"text-muted-foreground hover:text-foreground"),onClick:()=>{U("all"),F("")},children:z("filterAll")}),(0,t.jsxs)("button",{type:"button",className:(0,b.cn)("px-2.5 py-1 rounded-md text-xs font-medium transition-colors","favorites"===O?"bg-muted":"text-muted-foreground hover:text-foreground"),onClick:()=>{U("favorites"),F("")},children:[(0,t.jsx)(h.Star,{className:"size-3 inline-block mr-0.5 -mt-px"}),z("filterFavorites")]})]}),M.length>0&&(0,t.jsx)(u.SearchSelect,{value:"agent"===O?E:"",onChange:e=>{e?(U("agent"),F(e)):(U("all"),F(""))},options:M.map(e=>({value:e.id,label:e.name})),placeholder:z("filterByAgent"),allowCustom:!1,className:"flex-1 min-w-0"})]})]}),(0,t.jsxs)("div",{className:"hidden md:block relative",children:[(0,t.jsx)(g.Search,{className:"size-3.5 absolute left-2.5 top-1/2 -translate-y-1/2 text-muted-foreground"}),(0,t.jsx)(r.Input,{value:$,onChange:e=>L(e.target.value),placeholder:z("search"),className:"pl-8"})]}),(0,t.jsx)(o.ScrollArea,{className:"flex-1",children:B?(0,t.jsx)("div",{className:"flex items-center justify-center py-12 text-muted-foreground text-sm",children:D("loading")}):0===eo.length?(0,t.jsx)("div",{className:"flex items-center justify-center py-12 text-muted-foreground text-sm",children:z("empty")}):(0,t.jsx)("div",{className:"grid grid-cols-1 gap-3 pr-2",children:eo.map(e=>(0,t.jsxs)("div",{className:"rounded-xl border border-border bg-background p-4 hover:bg-accent/30 transition-colors cursor-pointer",onClick:()=>{Y(e),ee(JSON.stringify(e.config,null,2))},children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)(j,{className:"size-3.5 text-muted-foreground"}),(0,t.jsx)("span",{className:"font-medium text-sm",children:e.name}),(0,t.jsx)("button",{type:"button",className:"flex items-center justify-center size-5 rounded hover:bg-accent",onClick:t=>{t.stopPropagation(),ea(e)},children:e.favorited?(0,t.jsx)(h.Star,{className:"size-3.5 text-yellow-500 fill-yellow-500"}):(0,t.jsx)(p.StarOff,{className:"size-3.5 text-muted-foreground"})})]}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground mt-1 line-clamp-2",children:e.description||e.config.command||e.config.url||JSON.stringify(e.config).slice(0,100)})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1 shrink-0",onClick:e=>e.stopPropagation(),children:[(0,t.jsxs)(l.Button,{variant:"outline",size:"sm",onClick:()=>{_(e),X(e.boundAgents.map(e=>e.id))},children:[(0,t.jsx)(k.Rocket,{className:"size-3.5 mr-1"}),z("apply")]}),(0,t.jsxs)(d.DropdownMenu,{children:[(0,t.jsx)(d.DropdownMenuTrigger,{render:(0,t.jsx)(l.Button,{variant:"ghost",size:"icon",className:"size-7"}),children:(0,t.jsx)(y.MoreVertical,{className:"size-3.5"})}),(0,t.jsx)(d.DropdownMenuContent,{align:"end",children:(0,t.jsxs)(d.DropdownMenuItem,{className:"text-destructive focus:text-destructive",onClick:()=>el(e),children:[(0,t.jsx)(N.Trash2,{className:"size-3.5 mr-1.5"}),z("delete")]})})]})]})]}),e.boundAgents.length>0&&(0,t.jsxs)("div",{className:"flex items-center gap-1.5 mt-2.5 pt-2.5 border-t border-border/50",children:[e.boundAgents.map(e=>(0,t.jsx)(x.AgentIcon,{agentId:e.id,name:e.name,avatarUrl:e.avatarUrl,className:"size-5 rounded-full"},e.id)),(0,t.jsx)("span",{className:"text-xs text-muted-foreground ml-1",children:e.boundAgents.length})]})]},e.name))})})]})]})]});return(0,t.jsxs)(t.Fragment,{children:[C&&ed&&(0,t.jsx)("div",{className:"h-full flex flex-col",children:em}),!C&&(0,t.jsx)(n.Dialog,{open:ed,onOpenChange:i,children:(0,t.jsx)(n.DialogContent,{className:"!w-[80vw] !max-w-[80vw] !h-[80vh] flex flex-col",children:em})}),(0,t.jsx)(n.Dialog,{open:!!Q,onOpenChange:e=>{e||Y(null)},children:(0,t.jsxs)(n.DialogContent,{className:"!w-[80vw] !max-w-[80vw] !h-[80vh] flex flex-col",children:[(0,t.jsx)(n.DialogHeader,{children:(0,t.jsxs)("div",{className:"flex items-center justify-between pr-8",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)(n.DialogTitle,{children:z("editTitle",{name:Q?.name||""})}),(0,t.jsx)(n.DialogDescription,{children:z("editDescription")})]}),(0,t.jsxs)(l.Button,{size:"sm",onClick:en,children:[(0,t.jsx)(w.Save,{className:"size-3.5 mr-1"}),D("save")]})]})}),(0,t.jsx)("div",{className:"flex-1 min-h-0 pt-2",children:(0,t.jsx)(S,{height:"100%",language:"json",value:Z,onChange:e=>ee(e||""),theme:"vs-dark",options:{fontSize:13,minimap:{enabled:!1},scrollBeyondLastLine:!1,padding:{top:8},renderLineHighlight:"gutter",wordWrap:"on",formatOnPaste:!0}})})]})}),(0,t.jsx)(n.Dialog,{open:!!K,onOpenChange:e=>{e||_(null)},children:(0,t.jsxs)(n.DialogContent,{className:"sm:max-w-sm",children:[(0,t.jsxs)(n.DialogHeader,{children:[(0,t.jsx)(n.DialogTitle,{children:z("bindTitle",{name:K?.name||""})}),(0,t.jsx)(n.DialogDescription,{children:z("bindDescription")})]}),(0,t.jsxs)("div",{className:"space-y-3 pt-2",children:[(0,t.jsx)("div",{className:"max-h-52 overflow-y-auto space-y-0.5",children:M.map(e=>(0,t.jsxs)("button",{type:"button",onClick:()=>ec(e.id),className:(0,b.cn)("flex items-center gap-2 w-full px-2 py-1.5 rounded-md hover:bg-muted text-left text-sm transition-colors"),children:[(0,t.jsx)(x.AgentIcon,{agentId:e.id,name:e.name,avatarUrl:e.avatarUrl,className:"size-5 rounded-full"}),(0,t.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,t.jsx)("span",{className:"block truncate",children:e.name}),e.description&&(0,t.jsx)("span",{className:"block truncate text-xs text-muted-foreground",children:e.description})]}),(0,t.jsx)("div",{className:(0,b.cn)("flex items-center justify-center size-4 rounded border shrink-0",G.includes(e.id)?"bg-primary border-primary text-primary-foreground":"border-input")})]},e.id))}),G.length>0&&(0,t.jsx)("div",{className:"flex flex-wrap gap-1.5",children:G.map(e=>{let s=M.find(t=>t.id===e);return(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-md bg-muted px-2 py-0.5 text-xs",children:[(0,t.jsx)(x.AgentIcon,{agentId:e,name:s?.name,className:"size-3.5 rounded-full"}),s?.name||e,(0,t.jsx)("button",{type:"button",onClick:()=>ec(e),className:"hover:text-destructive",children:(0,t.jsx)(v.X,{className:"size-3"})})]},e)})}),(0,t.jsxs)("div",{className:"flex justify-end gap-2 pt-1",children:[(0,t.jsx)(l.Button,{variant:"outline",onClick:()=>_(null),children:D("cancel")}),(0,t.jsx)(l.Button,{onClick:er,children:D("confirm")})]})]})]})})]})}],22906)},625873,e=>{"use strict";var t=e.i(344180),s=e.i(764556),a=e.i(244073),i=e.i(887836),n=e.i(209988),l=e.i(260218),r=e.i(681622),c=e.i(191118),o=e.i(917955),d=e.i(996652),m=e.i(898822),u=e.i(129981),x=e.i(972846),h=e.i(984178),p=e.i(465458);let f=0;function g({value:e=[],onChange:a,accept:i,maxFiles:n=0,maxSize:l,disabled:r=!1,className:c,placeholder:o}){let[d,j]=(0,s.useState)(null),v=(0,s.useCallback)((t,s)=>{if(j(null),s.length>0){let e=s[0].errors[0]?.message;e&&j(e)}if(0===t.length)return;let i=t.map(e=>{let t={id:`upload-${++f}`,file:e};return e.type.startsWith("image/")&&(t.preview=URL.createObjectURL(e)),t}),l=n>0?[...e,...i].slice(0,n):[...e,...i];a?.(l)},[e,a,n]),y=(0,s.useCallback)(t=>{let s=e.find(e=>e.id===t);s?.preview&&URL.revokeObjectURL(s.preview),a?.(e.filter(e=>e.id!==t))},[e,a]),{getRootProps:N,getInputProps:k,isDragActive:w,open:b}=(0,m.useDropzone)({onDrop:v,accept:i,maxFiles:n||void 0,maxSize:l,disabled:r,noClick:!1});return(0,t.jsxs)("div",{className:(0,p.cn)("space-y-3",c),children:[(0,t.jsxs)("div",{...N(),className:(0,p.cn)("relative flex flex-col items-center justify-center gap-2 rounded-xl border-2 border-dashed px-6 py-8 transition-colors cursor-pointer",w?"border-primary bg-primary/5":"border-border hover:border-primary/50 hover:bg-accent/50",r&&"pointer-events-none opacity-50"),children:[(0,t.jsx)("input",{...k()}),(0,t.jsx)(u.Upload,{className:"size-8 text-muted-foreground"}),(0,t.jsxs)("div",{className:"text-center",children:[(0,t.jsx)("p",{className:"text-sm font-medium",children:o??(w?"松开即可上传":"拖拽文件到此处,或点击选择")}),!w&&(0,t.jsxs)("p",{className:"mt-1 text-xs text-muted-foreground",children:["支持多文件",l?`,单文件最大 ${(l/1024/1024).toFixed(0)}MB`:""]})]})]}),d&&(0,t.jsx)("p",{className:"text-xs text-destructive",children:d}),e.length>0&&(0,t.jsx)("div",{className:"flex flex-col gap-2",children:e.map(e=>{var s;return(0,t.jsxs)("div",{className:"flex items-center gap-3 rounded-lg border border-border bg-background px-3 py-2",children:[e.preview?(0,t.jsx)("img",{src:e.preview,alt:"",className:"size-10 rounded-md object-cover"}):(0,t.jsx)("div",{className:"flex size-10 items-center justify-center rounded-md bg-muted",children:(0,t.jsx)(h.FileIcon,{className:"size-5 text-muted-foreground"})}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsx)("p",{className:"truncate text-sm",children:e.file.name}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:(s=e.file.size)<1024?`${s} B`:s<1048576?`${(s/1024).toFixed(1)} KB`:`${(s/1024/1024).toFixed(1)} MB`})]}),(0,t.jsx)("button",{type:"button",onClick:t=>{t.stopPropagation(),y(e.id)},className:"flex size-7 items-center justify-center rounded-md hover:bg-accent transition-colors",children:(0,t.jsx)(x.X,{className:"size-4 text-muted-foreground"})})]},e.id)})})]})}var j=e.i(188815),v=e.i(611176),y=e.i(255742),N=e.i(973767),k=e.i(887354),w=e.i(989484),b=e.i(401058),S=e.i(137340),C=e.i(977694),z=e.i(111343),D=e.i(601039);e.i(462506);let T=(0,i.default)(()=>e.A(863812).then(e=>e.default),{loadableGenerated:{modules:[158480]},ssr:!1,loading:()=>(0,t.jsx)("div",{className:"flex items-center justify-center h-full text-muted-foreground text-sm",children:"Loading editor..."})});e.s(["SkillsDialog",0,function({open:e,onOpenChange:i,standalone:m}){let h=(0,a.useTranslations)("skills"),f=(0,a.useTranslations)("common"),[I,M]=(0,s.useState)([]),[A,B]=(0,s.useState)([]),[P,$]=(0,s.useState)(!1),[L,O]=(0,s.useState)(""),[U,E]=(0,s.useState)("all"),[F,H]=(0,s.useState)(""),[R,J]=(0,s.useState)(!1),[q,W]=(0,s.useState)([]),[V,K]=(0,s.useState)(null),[_,G]=(0,s.useState)([]),[X,Q]=(0,s.useState)(null),[Y,Z]=(0,s.useState)(""),[ee,et]=(0,s.useState)([]),[es,ea]=(0,s.useState)(new Set),[ei,en]=(0,s.useState)(!1),[el,er]=(0,s.useState)(!1),ec=(0,s.useCallback)(async()=>{$(!0);try{let e=await fetch("/api/skills");e.ok&&M(await e.json())}catch{}$(!1)},[]),eo=(0,s.useCallback)(async()=>{try{let e=await fetch("/api/agents/presets");if(e.ok){let t=await e.json();B(t.map(e=>({id:e.id,name:e.name,avatarUrl:e.avatarUrl,description:e.description})))}}catch{}},[]);(0,s.useEffect)(()=>{(e||m)&&(ec(),eo())},[e,m,ec,eo]);let ed=async e=>{try{let t=await fetch(`/api/skills/${encodeURIComponent(e.name)}/favorite`,{method:"POST"});if(t.ok){let{favorited:s}=await t.json();M(t=>t.map(t=>t.name===e.name?{...t,favorited:s}:t))}}catch{}},em=async()=>{for(let e of q){let t=await e.file.text();await fetch("/api/skills/import",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({filename:e.file.name,content:t})})}W([]),J(!1),ec()},eu=async()=>{if(X)try{(await fetch(`/api/skills/${encodeURIComponent(X.name)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({content:Y})})).ok&&(M(e=>e.map(e=>e.name===X.name?{...e,content:Y}:e)),Q(null))}catch{}},ex=async e=>{try{(await fetch(`/api/skills/${encodeURIComponent(e.name)}`,{method:"DELETE"})).ok&&M(t=>t.filter(t=>t.name!==e.name))}catch{}},eh=async()=>{if(V){for(let e of A){let t=V.boundAgents.some(t=>t.id===e.id),s=_.includes(e.id);if(t&&!s){let t=await fetch(`/api/agents/presets/${e.id}`);if(!t.ok)continue;let s=await t.json(),a=(s.skills||[]).filter(e=>e.replace(/\.md$/i,"")!==V.name);console.log("[skills] remove skill",V.name,"from agent",e.name,"updatedSkills:",a),await fetch(`/api/agents/presets/${e.id}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({...s,skills:a})})}else if(!t&&s){let t=await fetch(`/api/agents/presets/${e.id}`);if(!t.ok)continue;let s=await t.json();if(!(s.skills||[]).map(e=>e.replace(/\.md$/i,"")).includes(V.name)){let t=[...s.skills||[],`${V.name}.md`];console.log("[skills] add skill",V.name,"to agent",e.name,"updatedSkills:",t),await fetch(`/api/agents/presets/${e.id}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({...s,skills:t})})}}}K(null),ec()}},ep=e=>{G(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},ef=async()=>{er(!0);try{let e=await fetch("/api/skills/sync-check");if(e.ok){let t=await e.json();et(t),ea(new Set(t.map(e=>`${e.agentId}::${e.skillName}`))),en(!0)}}catch{}er(!1)},eg=async()=>{let e=ee.filter(e=>es.has(`${e.agentId}::${e.skillName}`));if(0!==e.length)try{(await fetch("/api/skills/sync",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({items:e.map(e=>({agentId:e.agentId,skillName:e.skillName}))})})).ok&&(en(!1),ec())}catch{}},ej=I.filter(e=>{if(L){let t=L.toLowerCase();if(!e.name.toLowerCase().includes(t)&&!e.content.toLowerCase().includes(t))return!1}return("favorites"!==U||!!e.favorited)&&("agent"!==U||!F||!!e.boundAgents.some(e=>e.id===F))}),ev=(m||e)&&!V&&!X,ey=(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.DialogHeader,{children:(0,t.jsxs)("div",{className:"flex items-center justify-between pr-8",children:[(0,t.jsxs)("div",{className:"hidden md:block",children:[m?(0,t.jsx)("h2",{className:"text-base font-semibold",children:h("title")}):(0,t.jsx)(n.DialogTitle,{children:h("title")}),m?(0,t.jsx)("p",{className:"text-xs text-muted-foreground",children:h("description")}):(0,t.jsx)(n.DialogDescription,{children:h("description")})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2 ml-auto shrink-0 pt-2",children:[(0,t.jsxs)(l.Button,{variant:"outline",size:"sm",onClick:ef,disabled:el,children:[(0,t.jsx)(D.RefreshCw,{className:(0,p.cn)("size-3.5 mr-1",el&&"animate-spin")}),h("syncToAgents")]}),(0,t.jsxs)(d.Popover,{open:R,onOpenChange:J,children:[(0,t.jsx)(d.PopoverTrigger,{render:(0,t.jsxs)(l.Button,{variant:"outline",size:"sm",children:[(0,t.jsx)(u.Upload,{className:"size-3.5 mr-1"}),h("import")]})}),(0,t.jsx)(d.PopoverContent,{className:"w-80",align:"end",children:(0,t.jsxs)("div",{className:"space-y-3",children:[(0,t.jsx)("p",{className:"text-sm font-medium",children:h("importTitle")}),(0,t.jsx)(g,{value:q,onChange:W,accept:{"text/markdown":[".md"],"":[".md"]},placeholder:h("importPlaceholder"),maxFiles:10}),(0,t.jsx)(l.Button,{size:"sm",onClick:em,disabled:0===q.length,className:"w-full",children:h("importConfirm")})]})})]})]})]})}),(0,t.jsxs)("div",{className:"flex flex-1 min-h-0 gap-4 pt-2",children:[(0,t.jsxs)("div",{className:"hidden md:flex w-44 shrink-0 flex-col gap-3",children:[(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsxs)(l.Button,{variant:"all"===U?"secondary":"ghost",size:"sm",className:"w-full justify-start",onClick:()=>{E("all"),H("")},children:[(0,t.jsx)(w.FileText,{className:"size-3.5 mr-1.5"}),h("filterAll")]}),(0,t.jsxs)(l.Button,{variant:"favorites"===U?"secondary":"ghost",size:"sm",className:"w-full justify-start",onClick:()=>{E("favorites"),H("")},children:[(0,t.jsx)(y.Star,{className:"size-3.5 mr-1.5"}),h("filterFavorites")]})]}),A.length>0&&(0,t.jsxs)("div",{className:"space-y-1",children:[(0,t.jsx)("p",{className:"text-xs font-medium text-muted-foreground px-2",children:h("filterByAgent")}),(0,t.jsx)(c.ScrollArea,{className:"max-h-48",children:A.map(e=>(0,t.jsxs)(l.Button,{variant:"agent"===U&&F===e.id?"secondary":"ghost",size:"sm",className:"w-full justify-start",onClick:()=>{E("agent"),H(e.id)},children:[(0,t.jsx)(v.AgentIcon,{agentId:e.id,name:e.name,avatarUrl:e.avatarUrl,className:"size-4 mr-1.5 rounded-full"}),(0,t.jsx)("span",{className:"truncate",children:e.name})]},e.id))})]})]}),(0,t.jsxs)("div",{className:"flex-1 min-w-0 flex flex-col gap-3",children:[(0,t.jsxs)("div",{className:"flex md:hidden flex-col gap-2",children:[(0,t.jsxs)("div",{className:"relative",children:[(0,t.jsx)(k.Search,{className:"size-3.5 absolute left-2.5 top-1/2 -translate-y-1/2 text-muted-foreground"}),(0,t.jsx)(r.Input,{value:L,onChange:e=>O(e.target.value),placeholder:h("search"),className:"pl-8"})]}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsxs)("div",{className:"flex rounded-lg border border-input p-0.5",children:[(0,t.jsx)("button",{type:"button",className:(0,p.cn)("px-2.5 py-1 rounded-md text-xs font-medium transition-colors","all"===U?"bg-muted":"text-muted-foreground hover:text-foreground"),onClick:()=>{E("all"),H("")},children:h("filterAll")}),(0,t.jsxs)("button",{type:"button",className:(0,p.cn)("px-2.5 py-1 rounded-md text-xs font-medium transition-colors","favorites"===U?"bg-muted":"text-muted-foreground hover:text-foreground"),onClick:()=>{E("favorites"),H("")},children:[(0,t.jsx)(y.Star,{className:"size-3 inline-block mr-0.5 -mt-px"}),h("filterFavorites")]})]}),A.length>0&&(0,t.jsx)(j.SearchSelect,{value:"agent"===U?F:"",onChange:e=>{e?(E("agent"),H(e)):(E("all"),H(""))},options:A.map(e=>({value:e.id,label:e.name})),placeholder:h("filterByAgent"),allowCustom:!1,className:"flex-1 min-w-0"})]})]}),(0,t.jsxs)("div",{className:"hidden md:block relative",children:[(0,t.jsx)(k.Search,{className:"size-3.5 absolute left-2.5 top-1/2 -translate-y-1/2 text-muted-foreground"}),(0,t.jsx)(r.Input,{value:L,onChange:e=>O(e.target.value),placeholder:h("search"),className:"pl-8"})]}),(0,t.jsx)(c.ScrollArea,{className:"flex-1",children:P?(0,t.jsx)("div",{className:"flex items-center justify-center py-12 text-muted-foreground text-sm",children:f("loading")}):0===ej.length?(0,t.jsx)("div",{className:"flex items-center justify-center py-12 text-muted-foreground text-sm",children:h("empty")}):(0,t.jsx)("div",{className:"grid grid-cols-1 gap-3 pr-2",children:ej.map(e=>(0,t.jsxs)("div",{className:"rounded-xl border border-border bg-background p-4 hover:bg-accent/30 transition-colors cursor-pointer",onClick:()=>{Q(e),Z(e.content)},children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,t.jsx)("span",{className:"font-medium text-sm",children:e.name}),(0,t.jsx)("button",{type:"button",className:"flex items-center justify-center size-5 rounded hover:bg-accent",onClick:t=>{t.stopPropagation(),ed(e)},children:e.favorited?(0,t.jsx)(y.Star,{className:"size-3.5 text-yellow-500 fill-yellow-500"}):(0,t.jsx)(N.StarOff,{className:"size-3.5 text-muted-foreground"})})]}),(0,t.jsx)("p",{className:"text-xs text-muted-foreground mt-1 line-clamp-2",children:e.description||e.content.slice(0,120).replace(/^#\s+/,"")})]}),(0,t.jsxs)("div",{className:"flex items-center gap-1 shrink-0",onClick:e=>e.stopPropagation(),children:[(0,t.jsxs)(l.Button,{variant:"outline",size:"sm",onClick:()=>{K(e),G(e.boundAgents.map(e=>e.id))},children:[(0,t.jsx)(C.Rocket,{className:"size-3.5 mr-1"}),h("apply")]}),(0,t.jsxs)(o.DropdownMenu,{children:[(0,t.jsx)(o.DropdownMenuTrigger,{render:(0,t.jsx)(l.Button,{variant:"ghost",size:"icon",className:"size-7"}),children:(0,t.jsx)(b.MoreVertical,{className:"size-3.5"})}),(0,t.jsx)(o.DropdownMenuContent,{align:"end",children:(0,t.jsxs)(o.DropdownMenuItem,{className:"text-destructive focus:text-destructive",onClick:()=>ex(e),children:[(0,t.jsx)(S.Trash2,{className:"size-3.5 mr-1.5"}),h("delete")]})})]})]})]}),e.boundAgents.length>0&&(0,t.jsxs)("div",{className:"flex items-center gap-1.5 mt-2.5 pt-2.5 border-t border-border/50",children:[e.boundAgents.map(e=>(0,t.jsx)(v.AgentIcon,{agentId:e.id,name:e.name,avatarUrl:e.avatarUrl,className:"size-5 rounded-full"},e.id)),(0,t.jsx)("span",{className:"text-xs text-muted-foreground ml-1",children:e.boundAgents.length})]})]},e.name))})})]})]})]});return(0,t.jsxs)(t.Fragment,{children:[m&&ev&&(0,t.jsx)("div",{className:"h-full flex flex-col",children:ey}),!m&&(0,t.jsx)(n.Dialog,{open:ev,onOpenChange:i,children:(0,t.jsx)(n.DialogContent,{className:"!w-[80vw] !max-w-[80vw] !h-[80vh] flex flex-col",children:ey})}),(0,t.jsx)(n.Dialog,{open:!!X,onOpenChange:e=>{e||Q(null)},children:(0,t.jsxs)(n.DialogContent,{className:"!w-[80vw] !max-w-[80vw] !h-[80vh] flex flex-col",children:[(0,t.jsx)(n.DialogHeader,{children:(0,t.jsxs)("div",{className:"flex items-center justify-between pr-8",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)(n.DialogTitle,{children:h("editTitle",{name:X?.name||""})}),(0,t.jsx)(n.DialogDescription,{children:h("editDescription")})]}),(0,t.jsxs)(l.Button,{size:"sm",onClick:eu,children:[(0,t.jsx)(z.Save,{className:"size-3.5 mr-1"}),f("save")]})]})}),(0,t.jsx)("div",{className:"flex-1 min-h-0 pt-2",children:(0,t.jsx)(T,{height:"100%",language:"markdown",value:Y,onChange:e=>Z(e||""),theme:"vs-dark",options:{fontSize:13,minimap:{enabled:!1},scrollBeyondLastLine:!1,padding:{top:8},renderLineHighlight:"gutter",wordWrap:"on"}})})]})}),(0,t.jsx)(n.Dialog,{open:!!V,onOpenChange:e=>{e||K(null)},children:(0,t.jsxs)(n.DialogContent,{className:"sm:max-w-sm",children:[(0,t.jsxs)(n.DialogHeader,{children:[(0,t.jsx)(n.DialogTitle,{children:h("bindTitle",{name:V?.name||""})}),(0,t.jsx)(n.DialogDescription,{children:h("bindDescription")})]}),(0,t.jsxs)("div",{className:"space-y-3 pt-2",children:[(0,t.jsx)("div",{className:"max-h-52 overflow-y-auto space-y-0.5",children:A.map(e=>(0,t.jsxs)("button",{type:"button",onClick:()=>ep(e.id),className:(0,p.cn)("flex items-center gap-2 w-full px-2 py-1.5 rounded-md hover:bg-muted text-left text-sm transition-colors"),children:[(0,t.jsx)(v.AgentIcon,{agentId:e.id,name:e.name,avatarUrl:e.avatarUrl,className:"size-5 rounded-full"}),(0,t.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,t.jsx)("span",{className:"block truncate",children:e.name}),e.description&&(0,t.jsx)("span",{className:"block truncate text-xs text-muted-foreground",children:e.description})]}),(0,t.jsx)("div",{className:(0,p.cn)("flex items-center justify-center size-4 rounded border shrink-0",_.includes(e.id)?"bg-primary border-primary text-primary-foreground":"border-input")})]},e.id))}),_.length>0&&(0,t.jsx)("div",{className:"flex flex-wrap gap-1.5",children:_.map(e=>{let s=A.find(t=>t.id===e);return(0,t.jsxs)("span",{className:"inline-flex items-center gap-1 rounded-md bg-muted px-2 py-0.5 text-xs",children:[(0,t.jsx)(v.AgentIcon,{agentId:e,name:s?.name,className:"size-3.5 rounded-full"}),s?.name||e,(0,t.jsx)("button",{type:"button",onClick:()=>ep(e),className:"hover:text-destructive",children:(0,t.jsx)(x.X,{className:"size-3"})})]},e)})}),(0,t.jsxs)("div",{className:"flex justify-end gap-2 pt-1",children:[(0,t.jsx)(l.Button,{variant:"outline",onClick:()=>K(null),children:f("cancel")}),(0,t.jsx)(l.Button,{onClick:eh,children:f("confirm")})]})]})]})}),(0,t.jsx)(n.Dialog,{open:ei,onOpenChange:en,children:(0,t.jsxs)(n.DialogContent,{className:"sm:max-w-lg",children:[(0,t.jsxs)(n.DialogHeader,{children:[(0,t.jsx)(n.DialogTitle,{children:h("syncTitle")}),(0,t.jsx)(n.DialogDescription,{children:h("syncDescription")})]}),(0,t.jsxs)("div",{className:"space-y-3 pt-2",children:[0===ee.length?(0,t.jsx)("div",{className:"flex items-center justify-center py-8 text-muted-foreground text-sm",children:h("syncEmpty")}):(0,t.jsx)(c.ScrollArea,{className:"max-h-72",children:(0,t.jsx)("div",{className:"space-y-1",children:ee.map(e=>{let s=`${e.agentId}::${e.skillName}`;return(0,t.jsxs)("button",{type:"button",onClick:()=>{var t,s;let a;return t=e.agentId,s=e.skillName,a=`${t}::${s}`,void ea(e=>{let t=new Set(e);return t.has(a)?t.delete(a):t.add(a),t})},className:"flex items-center gap-3 w-full px-2 py-1.5 rounded-md hover:bg-muted text-left text-sm transition-colors",children:[(0,t.jsx)("div",{className:(0,p.cn)("flex items-center justify-center size-4 rounded border shrink-0",es.has(s)?"bg-primary border-primary text-primary-foreground":"border-input")}),(0,t.jsx)(v.AgentIcon,{agentId:e.agentId,name:e.agentName,className:"size-5 rounded-full"}),(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate",children:e.agentName}),(0,t.jsxs)("span",{className:"text-muted-foreground text-xs shrink-0",children:[e.skillName,".md"]})]},s)})})}),ee.length>0&&(0,t.jsxs)("div",{className:"flex justify-end gap-2 pt-1",children:[(0,t.jsx)(l.Button,{variant:"outline",onClick:()=>en(!1),children:f("cancel")}),(0,t.jsx)(l.Button,{onClick:eg,disabled:0===es.size,children:h("syncConfirm")})]})]})]})})]})}],625873)},678001,e=>{e.v(t=>Promise.all(["static/chunks/0zl19l5tuoppw.js"].map(t=>e.l(t))).then(()=>t(228394)))},863812,e=>{e.v(t=>Promise.all(["static/chunks/168ojsxhm7ypc.js"].map(t=>e.l(t))).then(()=>t(158480)))}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,177053,e=>{"use strict";var t=e.i(344180),a=e.i(523592);{let e=window.fetch,t="__api_patched__";window[t]||(window[t]=!0,window.fetch=function(t,s){if("string"==typeof t&&t.startsWith("/api/")){let e=(0,a.getActiveServerUrl)();e&&(t=`${e}${t}`)}return e.call(window,t,s)})}var s=e.i(764556),n=e.i(799543),r=e.i(437122),i=e.i(233297),o=e.i(286117);e.s(["AuthGuard",0,function({children:e}){let a=(0,n.usePathname)(),l=(0,n.useRouter)(),[d,c]=(0,s.useState)(!1),u=(0,o.isLoginPath)(a);return((0,s.useEffect)(()=>{if(u)return void c(!0);if(!(0,r.isAuthenticated)())return void(0,i.tauriNavigate)(l,"/login",!0);let e=(0,r.getToken)();fetch("/api/auth/check",{headers:null!==e?{Authorization:`Bearer ${e}`}:{}}).then(e=>401===e.status||403===e.status?((0,r.removeToken)(),(0,i.tauriNavigate)(l,"/login",!0),null):e.ok?e.json():{authenticated:!0}).then(e=>{null!==e&&(e.authenticated?c(!0):((0,r.removeToken)(),(0,i.tauriNavigate)(l,"/login",!0)))}).catch(()=>c(!0))},[u,l]),u||d)?(0,t.jsx)(t.Fragment,{children:e}):null}],177053)},478189,(e,t,a)=>{"use strict";t.exports="/__open-stack-frame-in-editor"},994876,e=>{"use strict";var t=e.i(344180),a=e.i(799543),s=e.i(764556),n=e.i(370383),r=e.i(928542),i=e.i(294237),o=e.i(564822),l=e.i(465458),d=e.i(260218),c=e.i(681622);e.i(362962);var u=e.i(14452),m=e.i(638322),p=e.i(433721);let x=(0,p.default)("panel-left",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}]]),h="sidebar_state",g=s.createContext(null);function f(){let e=s.useContext(g);if(!e)throw Error("useSidebar must be used within a SidebarProvider.");return e}function b({defaultOpen:e=!0,open:a,onOpenChange:n,className:r,style:i,children:d,...c}){let u=(0,o.useIsMobile)(),[m,p]=s.useState(!1),[x,f]=s.useState(e),v=a??x;s.useEffect(()=>{if(void 0!==a)return;let e=document.cookie.match(RegExp(`(?:^|; )${h}=([^;]*)`));e&&f("true"===e[1])},[]);let j=s.useCallback(e=>{let t="function"==typeof e?e(v):e;n?n(t):f(t),document.cookie=`${h}=${t}; path=/; max-age=604800`},[n,v]),w=s.useCallback(()=>u?p(e=>!e):j(e=>!e),[u,j,p]);s.useEffect(()=>{let e=e=>{"b"===e.key&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),w())};return window.addEventListener("keydown",e),()=>window.removeEventListener("keydown",e)},[w]);let k=v||u&&m?"expanded":"collapsed",N=s.useMemo(()=>({state:k,open:v,setOpen:j,isMobile:u,openMobile:m,setOpenMobile:p,toggleSidebar:w}),[k,v,j,u,m,p,w]);return(0,t.jsx)(g.Provider,{value:N,children:(0,t.jsx)("div",{"data-slot":"sidebar-wrapper",style:{"--sidebar-width":"16rem","--sidebar-width-icon":"3rem",...i},className:(0,l.cn)("group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar",r),...c,children:d})})}function v({side:e="left",variant:a="sidebar",collapsible:s="offcanvas",className:n,children:r,dir:i,...o}){let{isMobile:d,state:c,openMobile:m,setOpenMobile:p}=f();return"none"===s?(0,t.jsx)("div",{"data-slot":"sidebar",className:(0,l.cn)("flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground",n),...o,children:r}):d?(0,t.jsx)(u.Sheet,{open:m,onOpenChange:p,...o,children:(0,t.jsxs)(u.SheetContent,{dir:i,"data-sidebar":"sidebar","data-slot":"sidebar","data-mobile":"true",className:"w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden",style:{"--sidebar-width":"18rem"},side:e,children:[(0,t.jsxs)(u.SheetHeader,{className:"sr-only",children:[(0,t.jsx)(u.SheetTitle,{children:"Sidebar"}),(0,t.jsx)(u.SheetDescription,{children:"Displays the mobile sidebar."})]}),(0,t.jsx)("div",{className:"flex h-full w-full flex-col",children:r})]})}):(0,t.jsxs)("div",{className:"group peer hidden text-sidebar-foreground md:block","data-state":c,"data-collapsible":"collapsed"===c?s:"","data-variant":a,"data-side":e,"data-slot":"sidebar",children:[(0,t.jsx)("div",{"data-slot":"sidebar-gap",className:(0,l.cn)("relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear","group-data-[collapsible=offcanvas]:w-0","group-data-[side=right]:rotate-180","floating"===a||"inset"===a?"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]":"group-data-[collapsible=icon]:w-(--sidebar-width-icon)")}),(0,t.jsx)("div",{"data-slot":"sidebar-container","data-side":e,className:(0,l.cn)("fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear data-[side=left]:left-0 data-[side=left]:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)] data-[side=right]:right-0 data-[side=right]:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)] md:flex","floating"===a||"inset"===a?"group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]":"group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l",n),...o,children:(0,t.jsx)("div",{"data-sidebar":"sidebar","data-slot":"sidebar-inner",className:"flex size-full flex-col group-data-[variant=floating]:rounded-xl group-data-[variant=floating]:bg-transparent",children:r})})]})}function j({className:e,onClick:a,...s}){let{toggleSidebar:n}=f();return(0,t.jsxs)(d.Button,{"data-sidebar":"trigger","data-slot":"sidebar-trigger",variant:"ghost",size:"icon-sm",className:(0,l.cn)(e),onClick:e=>{a?.(e),n()},...s,children:[(0,t.jsx)(x,{}),(0,t.jsx)("span",{className:"sr-only",children:"Toggle Sidebar"})]})}function w({className:e,...a}){return(0,t.jsx)("main",{"data-slot":"sidebar-inset",className:(0,l.cn)("relative flex w-full flex-1 flex-col bg-background md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2",e),...a})}function k({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"sidebar-header","data-sidebar":"header",className:(0,l.cn)("flex flex-col gap-2 p-2",e),...a})}function N({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"sidebar-footer","data-sidebar":"footer",className:(0,l.cn)("flex flex-col gap-2 p-2",e),...a})}function y({className:e,...a}){return(0,t.jsx)("div",{"data-slot":"sidebar-content","data-sidebar":"content",className:(0,l.cn)("no-scrollbar flex min-h-0 flex-1 flex-col gap-0 overflow-auto group-data-[collapsible=icon]:overflow-hidden",e),...a})}function S({className:e,...a}){return(0,t.jsx)("ul",{"data-slot":"sidebar-menu","data-sidebar":"menu",className:(0,l.cn)("flex w-full min-w-0 flex-col gap-0",e),...a})}function C({className:e,...a}){return(0,t.jsx)("li",{"data-slot":"sidebar-menu-item","data-sidebar":"menu-item",className:(0,l.cn)("group/menu-item relative",e),...a})}let z=(0,i.cva)("peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm ring-sidebar-ring outline-hidden transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate",{variants:{variant:{default:"hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",outline:"bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]"},size:{default:"h-8 text-sm",sm:"h-7 text-xs",lg:"h-12 text-sm group-data-[collapsible=icon]:p-0!"}},defaultVariants:{variant:"default",size:"default"}});function D({render:e,isActive:a=!1,variant:s="default",size:i="default",tooltip:o,className:d,...c}){let{isMobile:u,state:p}=f(),x=(0,r.useRender)({defaultTagName:"button",props:(0,n.mergeProps)({className:(0,l.cn)(z({variant:s,size:i}),d)},c),render:o?(0,t.jsx)(m.TooltipTrigger,{render:e}):e,state:{slot:"sidebar-menu-button",sidebar:"menu-button",size:i,active:a}});return o?("string"==typeof o&&(o={children:o}),(0,t.jsxs)(m.Tooltip,{children:[x,(0,t.jsx)(m.TooltipContent,{side:"right",align:"center",hidden:"collapsed"!==p||u,...o})]})):x}function T({className:e,...a}){return(0,t.jsx)("ul",{"data-slot":"sidebar-menu-sub","data-sidebar":"menu-sub",className:(0,l.cn)("mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5 group-data-[collapsible=icon]:hidden",e),...a})}function M({render:e,size:t="md",isActive:a=!1,className:s,...i}){return(0,r.useRender)({defaultTagName:"a",props:(0,n.mergeProps)({className:(0,l.cn)("flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground ring-sidebar-ring outline-hidden group-data-[collapsible=icon]:hidden hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[size=md]:text-sm data-[size=sm]:text-xs data-active:bg-sidebar-accent data-active:text-sidebar-accent-foreground [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground",s)},i),render:e,state:{slot:"sidebar-menu-sub-button",sidebar:"menu-sub-button",size:t,active:a}})}var P=e.i(244073),_=e.i(233297),I=e.i(341807),A=e.i(411649),L=e.i(451534);let O=(0,p.default)("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);var $=e.i(325443),E=e.i(990336),R=e.i(100559),W=e.i(962562),B=e.i(137340);let F=(0,p.default)("folder-search",[["path",{d:"M10.7 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v4.1",key:"1bw5m7"}],["path",{d:"m21 21-1.9-1.9",key:"1g2n9r"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}]]);var H=e.i(327962),U=e.i(415360),G=e.i(191202),K=e.i(324216),J=e.i(588591),q=e.i(86477),V=e.i(549705),Q=e.i(238300),X=e.i(625873),Y=e.i(22906),Z=e.i(256186),ee=e.i(917955),et=e.i(996652),ea=e.i(650654),es=e.i(249673),en=e.i(226651),en=en,er=e.i(953700),ei=e.i(267624);function eo({routes:e}){let{state:n,isMobile:r,setOpenMobile:i}=f(),o="collapsed"===n,[d,c]=(0,s.useState)(new Set),u=(0,a.useRouter)(),m=(0,P.useTranslations)("common"),p=e=>{r&&i(!1),(0,_.tauriNavigate)(u,e)};return(0,t.jsx)(S,{children:e.map(e=>{let a=!o&&d.has(e.id),s=!!e.subs?.length,n=s||!!e.onAdd;return(0,t.jsx)(C,{children:n?o?(0,t.jsxs)(et.Popover,{children:[(0,t.jsx)(et.PopoverTrigger,{render:(0,t.jsx)(D,{className:"justify-center text-muted-foreground hover:bg-sidebar-muted hover:text-foreground",tooltip:e.title}),children:e.icon}),(0,t.jsxs)(et.PopoverContent,{side:"right",sideOffset:8,className:"w-56 p-1.5",children:[(0,t.jsx)("div",{className:"px-2 py-1.5 text-xs font-semibold text-muted-foreground mb-1",children:e.title}),e.subs?.map(a=>(0,t.jsxs)("div",{className:"group/sub relative flex items-center",children:[a.onClick?(0,t.jsxs)("button",{type:"button",onClick:a.onClick,className:"flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-sm text-muted-foreground hover:bg-accent hover:text-accent-foreground",children:[a.icon,a.title]}):(0,t.jsxs)("button",{type:"button",onClick:()=>p(a.link),className:"flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-sm text-muted-foreground hover:bg-accent hover:text-accent-foreground",children:[a.icon,a.title]}),a.menuItems&&a.menuItems.length>0&&(0,t.jsxs)(ee.DropdownMenu,{children:[(0,t.jsx)(ee.DropdownMenuTrigger,{className:"absolute right-1 flex items-center justify-center rounded-md p-0.5 opacity-0 group-hover/sub:opacity-100 hover:bg-accent transition-opacity cursor-pointer",onClick:e=>e.stopPropagation(),children:(0,t.jsx)(en.default,{className:"size-3.5 text-muted-foreground"})}),(0,t.jsx)(ee.DropdownMenuContent,{align:"end",side:"right",children:a.menuItems.map(e=>(0,t.jsxs)(ee.DropdownMenuItem,{variant:e.variant,onClick:e.onClick,children:[e.icon,e.label]},e.label))})]})]},`${e.id}-${a.title}`)),e.onAdd&&(0,t.jsxs)("button",{type:"button",onClick:e.onAdd,className:"flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-sm text-muted-foreground hover:bg-accent hover:text-accent-foreground mt-0.5",children:[(0,t.jsx)(er.Plus,{className:"size-3.5"}),e.addLabel??m("add")]}),e.manageLink&&(0,t.jsxs)("button",{type:"button",onClick:()=>p(e.manageLink),className:"flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-sm text-muted-foreground hover:bg-accent hover:text-accent-foreground mt-0.5",children:[(0,t.jsx)(ei.LayoutGrid,{className:"size-3.5"}),m("manage")]})]})]}):(0,t.jsxs)(Z.Collapsible,{open:a,onOpenChange:t=>c(a=>{let s=new Set(a);return t?s.add(e.id):s.delete(e.id),s}),className:"w-full",children:[(0,t.jsxs)(Z.CollapsibleTrigger,{render:(0,t.jsx)(D,{className:(0,l.cn)("group/hdr flex flex-1 items-center rounded-lg px-2 transition-colors",a?"bg-sidebar-muted text-foreground":"text-muted-foreground hover:bg-sidebar-muted hover:text-foreground")}),children:[e.icon,(0,t.jsx)("span",{className:"ml-2 flex-1 text-sm font-medium",children:e.title}),s&&(0,t.jsx)("span",{children:a?(0,t.jsx)(es.ChevronUp,{className:"size-4"}):(0,t.jsx)(ea.ChevronDown,{className:"size-4"})})]}),(0,t.jsx)(Z.CollapsibleContent,{children:(0,t.jsxs)(T,{className:"my-1 ml-3.5",children:[e.subs?.map(a=>(0,t.jsx)(C,{className:"h-auto",children:(0,t.jsxs)("div",{className:"group/sub relative flex items-center",children:[(0,t.jsx)(M,{render:a.onClick?(0,t.jsx)("button",{type:"button",onClick:a.onClick,className:"flex w-full items-center rounded-md px-4 py-1.5 text-sm font-medium text-muted-foreground hover:bg-sidebar-muted hover:text-foreground"}):(0,t.jsx)("button",{type:"button",onClick:()=>p(a.link),className:"flex w-full items-center rounded-md px-4 py-1.5 text-sm font-medium text-muted-foreground hover:bg-sidebar-muted hover:text-foreground"}),children:a.title}),a.menuItems&&a.menuItems.length>0&&(0,t.jsxs)(ee.DropdownMenu,{children:[(0,t.jsx)(ee.DropdownMenuTrigger,{className:"absolute right-1 flex items-center justify-center rounded-md p-0.5 opacity-0 group-hover/sub:opacity-100 hover:bg-sidebar-muted transition-opacity cursor-pointer",onClick:e=>e.stopPropagation(),children:(0,t.jsx)(en.default,{className:"size-3.5 text-muted-foreground"})}),(0,t.jsx)(ee.DropdownMenuContent,{align:"end",side:"right",children:a.menuItems.map(e=>(0,t.jsxs)(ee.DropdownMenuItem,{variant:e.variant,onClick:e.onClick,children:[e.icon,e.label]},e.label))})]})]})},`${e.id}-${a.title}`)),e.onAdd&&(0,t.jsx)(C,{children:(0,t.jsxs)("button",{type:"button",onClick:e.onAdd,className:"flex w-full items-center gap-2 rounded-md px-4 py-1.5 text-sm font-medium text-muted-foreground hover:bg-sidebar-muted hover:text-foreground",children:[(0,t.jsx)(er.Plus,{className:"size-3.5"}),e.addLabel??m("add")]})}),e.manageLink&&(0,t.jsx)(C,{children:(0,t.jsxs)("button",{type:"button",onClick:()=>p(e.manageLink),className:"flex w-full items-center gap-2 rounded-md px-4 py-1.5 text-sm font-medium text-muted-foreground hover:bg-sidebar-muted hover:text-foreground",children:[(0,t.jsx)(ei.LayoutGrid,{className:"size-3.5"}),m("manage")]})})]})})]}):(0,t.jsxs)(D,{tooltip:e.title,render:(0,t.jsx)("button",{type:"button",onClick:()=>p(e.link),className:(0,l.cn)("flex items-center rounded-lg px-2 transition-colors text-muted-foreground hover:bg-sidebar-muted hover:text-foreground",o&&"justify-center")}),children:[e.icon,!o&&(0,t.jsx)("span",{className:"ml-2 text-sm font-medium",children:e.title})]})},e.id)})})}var el=e.i(636288),ed=e.i(36539),ed=ed;function ec({notifications:e}){let a=(0,P.useTranslations)("sidebar");return(0,t.jsxs)(ee.DropdownMenu,{children:[(0,t.jsx)(ee.DropdownMenuTrigger,{render:(0,t.jsx)(d.Button,{variant:"ghost",size:"icon",className:"rounded-full","aria-label":a("notifications.openAriaLabel")}),children:(0,t.jsx)(ed.default,{className:"size-5"})}),(0,t.jsxs)(ee.DropdownMenuContent,{side:"right",className:"w-80 my-6",children:[(0,t.jsx)(ee.DropdownMenuGroup,{children:(0,t.jsx)(ee.DropdownMenuLabel,{children:a("notifications.title")})}),(0,t.jsx)(ee.DropdownMenuSeparator,{}),e.map(({id:e,avatar:a,fallback:s,text:n,time:r})=>(0,t.jsxs)(ee.DropdownMenuItem,{className:"flex items-start gap-3",children:[(0,t.jsxs)(el.Avatar,{className:"size-8",children:[(0,t.jsx)(el.AvatarImage,{src:a,alt:"Avatar"}),(0,t.jsx)(el.AvatarFallback,{children:s})]}),(0,t.jsxs)("div",{className:"flex flex-col",children:[(0,t.jsx)("span",{className:"text-sm font-medium",children:n}),(0,t.jsx)("span",{className:"text-xs text-muted-foreground",children:r})]})]},e)),(0,t.jsx)(ee.DropdownMenuSeparator,{}),(0,t.jsx)(ee.DropdownMenuItem,{className:"justify-center text-sm text-muted-foreground hover:text-primary",children:a("notifications.viewAll")})]})]})}var eu=e.i(344118);let em=(0,p.default)("chevrons-up-down",[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]]);var ep=e.i(210),ex=e.i(523592),eh=e.i(209988);function eg({open:e,onOpenChange:a,editingId:n,servers:r,onSave:i}){let o=(0,P.useTranslations)("sidebar"),l=(0,P.useTranslations)("common"),[u,m]=s.useState(""),[p,x]=s.useState(""),[h,g]=s.useState("");return s.useEffect(()=>{if(e&&n){let e=r.find(e=>e.id===n);e&&(m(e.name),x(e.url),g(e.secret||""))}else e&&(m(""),x(""),g(""))},[e,n,r]),(0,t.jsx)(eh.Dialog,{open:e,onOpenChange:a,children:(0,t.jsxs)(eh.DialogContent,{children:[(0,t.jsxs)(eh.DialogHeader,{children:[(0,t.jsx)(eh.DialogTitle,{children:o(n?"server.editServer":"server.addServer")}),(0,t.jsx)(eh.DialogDescription,{children:o(n?"server.editDescription":"server.addDescription")})]}),(0,t.jsxs)("div",{className:"space-y-4 py-2",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"text-sm font-medium",children:l("name")}),(0,t.jsx)(c.Input,{value:u,onChange:e=>m(e.target.value),placeholder:"My Server"})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"text-sm font-medium",children:o("server.url")}),(0,t.jsx)(c.Input,{value:p,onChange:e=>x(e.target.value),placeholder:"http://192.168.1.100:3100",onKeyDown:e=>"Enter"===e.key&&e.preventDefault()})]}),(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)("label",{className:"text-sm font-medium",children:o("server.secret")}),(0,t.jsx)(c.Input,{type:"password",value:h,onChange:e=>g(e.target.value),placeholder:o("server.secretPlaceholder"),onKeyDown:e=>"Enter"===e.key&&e.preventDefault()})]})]}),(0,t.jsxs)(eh.DialogFooter,{children:[(0,t.jsx)(d.Button,{variant:"outline",onClick:()=>a(!1),children:l("cancel")}),(0,t.jsx)(d.Button,{onClick:()=>{if(!u.trim()||!p.trim())return;let e=p.trim().replace(/\/$/,"");/^https?:\/\//.test(e)||(e="http://"+e),n?i(r.map(t=>t.id===n?{...t,name:u.trim(),url:e,secret:h.trim()||void 0}:t)):i([...r,{id:Date.now().toString(),name:u.trim(),url:e,secret:h.trim()||void 0}]),a(!1)},disabled:!u.trim()||!p.trim(),children:l(n?"save":"add")})]})]})})}var ef=e.i(894920);function eb(){let{isMobile:e}=f(),a=(0,P.useTranslations)("sidebar"),[n,r]=s.useState(ex.loadServers),[i,o]=s.useState(ex.loadActiveId),[l,d]=s.useState(!1),[c,u]=s.useState(null),[m,p]=s.useState(!1),x=n.find(e=>e.id===i)||n[0],h=e=>{o(e.id),(0,ex.saveActiveId)(e.id),(0,ex.setActiveServerCookie)(e.url),window.location.reload()};return x?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(S,{children:(0,t.jsx)(C,{children:(0,t.jsxs)(ee.DropdownMenu,{children:[(0,t.jsxs)(ee.DropdownMenuTrigger,{render:(0,t.jsx)(D,{size:"lg",className:"data-[state=open]:bg-sidebar-accent data-[state=open]:text-sidebar-accent-foreground"}),children:[(0,t.jsx)("div",{className:"flex aspect-square size-8 items-center justify-center rounded-lg bg-background text-foreground",children:(0,t.jsx)(R.Server,{className:"size-4"})}),(0,t.jsxs)("div",{className:"grid flex-1 text-left text-sm leading-tight",children:[(0,t.jsx)("span",{className:"truncate font-semibold",children:x.name}),(0,t.jsx)("span",{className:"truncate text-xs text-muted-foreground",children:x.url.replace(/^https?:\/\//,"")})]}),(0,t.jsx)(em,{className:"ml-auto"})]}),(0,t.jsxs)(ee.DropdownMenuContent,{className:"w-(--radix-dropdown-menu-trigger-width) min-w-56 rounded-lg mb-4",align:"start",side:e?"bottom":"right",sideOffset:4,children:[(0,t.jsx)(ee.DropdownMenuGroup,{children:(0,t.jsx)(ee.DropdownMenuLabel,{className:"text-xs text-muted-foreground",children:a("server.servers")})}),n.map(e=>(0,t.jsxs)(ee.DropdownMenuItem,{onClick:()=>h(e),className:"gap-2 p-2",children:[(0,t.jsx)("div",{className:"flex size-6 items-center justify-center rounded-sm border",children:(0,t.jsx)(R.Server,{className:"size-3.5 shrink-0"})}),(0,t.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,t.jsx)("div",{className:"text-sm truncate",children:e.name}),(0,t.jsx)("div",{className:"text-xs text-muted-foreground truncate",children:e.url})]}),e.id===i&&(0,t.jsx)(eu.Check,{className:"size-4 text-primary shrink-0"})]},e.id)),(0,t.jsx)(ee.DropdownMenuSeparator,{}),(0,t.jsxs)(ee.DropdownMenuItem,{className:"gap-2 p-2",onClick:()=>{u(null),d(!0)},children:[(0,t.jsx)("div",{className:"flex size-6 items-center justify-center rounded-md border bg-background",children:(0,t.jsx)(er.Plus,{className:"size-4"})}),(0,t.jsx)("div",{className:"font-medium text-muted-foreground",children:a("server.addServer")})]}),(0,t.jsxs)(ee.DropdownMenuItem,{className:"gap-2 p-2",onClick:()=>p(!0),children:[(0,t.jsx)("div",{className:"flex size-6 items-center justify-center rounded-md border bg-background",children:(0,t.jsx)(ep.Settings2,{className:"size-4"})}),(0,t.jsx)("div",{className:"font-medium text-muted-foreground",children:a("server.manageServers")})]})]})]})})}),(0,t.jsx)(eg,{open:l,onOpenChange:d,editingId:c,servers:n,onSave:e=>{r(e),(0,ex.saveServers)(e);let t=c?e.find(e=>e.id===c):e[e.length-1];c&&t&&c===i&&(0,ex.setActiveServerCookie)(t.url)}}),(0,t.jsx)(ef.ServerManagerDialog,{open:m,onOpenChange:p,servers:n,activeId:i,onUpdate:e=>{r(e),(0,ex.saveServers)(e);let t=e.find(e=>e.id===i);t&&(0,ex.setActiveServerCookie)(t.url)},onRemove:e=>{if("default"===e)return;let t=n.filter(t=>t.id!==e);if(r(t),(0,ex.saveServers)(t),i===e){let e=t.find(e=>"default"===e.id)||t[0];e&&h(e)}},onSwitch:h})]}):null}var ev=e.i(524),ej=e.i(361031),ew=e.i(286117);function ek(e){return`/workspace/${e}`}function eN(){let{state:e}=f(),n=(0,a.usePathname)(),r=(0,a.useRouter)(),i=(0,P.useTranslations)("sidebar"),d=(0,P.useTranslations)("common"),c=[{id:"1",avatar:"/avatars/01.png",fallback:"OM",text:i("notifications.sample1"),time:i("notifications.sample1Time")},{id:"2",avatar:"/avatars/02.png",fallback:"JL",text:i("notifications.sample2"),time:i("notifications.sample2Time")},{id:"3",avatar:"/avatars/03.png",fallback:"HH",text:i("notifications.sample3"),time:i("notifications.sample3Time")}],u="collapsed"===e,m=(0,ew.isWorkspacePath)(n),p=(0,o.useIsMobile)(),x=(0,ew.workspaceIdFromLocation)(n,window.location.search),h=(0,ej.useWorkspaceStore)(e=>e.workspaces),g=(0,ej.useWorkspaceStore)(e=>e.setWorkspaces),b=(0,ej.useWorkspaceStore)(e=>e.upsertWorkspace),w=(0,ej.useWorkspaceStore)(e=>e.removeWorkspace),[S,C]=(0,s.useState)(!1),[z,D]=(0,s.useState)(!1),[T,M]=(0,s.useState)(!1),[Z,ee]=(0,s.useState)(!1),[et,ea]=(0,s.useState)(!1),[es,en]=(0,s.useState)(!1),[er,ei]=(0,s.useState)(!1),[el,ed]=(0,s.useState)(null),[eu,em]=(0,s.useState)(void 0),ep=(0,s.useCallback)(()=>{fetch("/api/workspaces").then(e=>e.json()).then(g).catch(()=>{})},[g]);(0,s.useEffect)(()=>{ep()},[ep]);let ex=async e=>{if(el){let t=await fetch(`/api/workspaces/${el.id}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});b(await t.json())}else{let t=await fetch("/api/workspaces",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});b(await t.json())}},eh=async e=>{if(await fetch(`/api/workspaces/${e.id}`,{method:"DELETE"}),w(e.id),x===e.id){let t=h.filter(t=>t.id!==e.id);(0,_.tauriNavigate)(r,t.length>0?ek(t[0].id):"/")}},eg=[{id:"home",title:i("nav.home"),icon:(0,t.jsx)(A.Home,{className:"size-4"}),link:"/"},{id:"workspaces",title:i("nav.workspaces"),icon:(0,t.jsx)(L.FolderOpen,{className:"size-4"}),link:"/",onAdd:()=>{ed(null),ei(!0)},addLabel:i("nav.addWorkspace"),manageLink:"/workspaces",subs:[...h.map(e=>({title:e.name,link:ek(e.id),icon:(0,t.jsx)(L.FolderOpen,{className:"size-4"}),menuItems:[{label:d("edit"),icon:(0,t.jsx)(W.Pencil,{className:"size-3.5"}),onClick:()=>{ed(e),ei(!0)}},{label:d("open"),icon:(0,t.jsx)(F,{className:"size-3.5"}),onClick:()=>fetch(`/api/workspaces/${e.id}/reveal`,{method:"POST"})},{label:d("delete"),icon:(0,t.jsx)(B.Trash2,{className:"size-3.5"}),variant:"destructive",onClick:()=>eh(e)}]}))]},{id:"workflows",title:i("nav.workflows"),icon:(0,t.jsx)(H.GitBranch,{className:"size-4"}),link:"/workflows"},{id:"settings",title:i("nav.settings"),icon:(0,t.jsx)(O,{className:"size-4"}),link:"#",subs:p?[{title:i("nav.general"),link:"/settings"},{title:i("nav.agents"),link:"/settings/agents",icon:(0,t.jsx)($.Bot,{className:"size-3.5"})},{title:i("nav.skills"),link:"/settings/skills",icon:(0,t.jsx)(U.Sparkles,{className:"size-3.5"})},{title:i("nav.mcps"),link:"/settings/mcps",icon:(0,t.jsx)(G.Plug,{className:"size-3.5"})},{title:i("nav.models"),link:"/settings/models",icon:(0,t.jsx)(E.Brain,{className:"size-3.5"})},{title:i("nav.providers"),link:"/settings/providers",icon:(0,t.jsx)(R.Server,{className:"size-3.5"})}]:[{title:i("nav.general"),link:"#",onClick:()=>D(!0)},{title:i("nav.agents"),link:"#",icon:(0,t.jsx)($.Bot,{className:"size-3.5"}),onClick:()=>C(!0)},{title:i("nav.skills"),link:"#",icon:(0,t.jsx)(U.Sparkles,{className:"size-3.5"}),onClick:()=>ea(!0)},{title:i("nav.mcps"),link:"#",icon:(0,t.jsx)(G.Plug,{className:"size-3.5"}),onClick:()=>en(!0)},{title:i("nav.models"),link:"#",icon:(0,t.jsx)(E.Brain,{className:"size-3.5"}),onClick:()=>{em(void 0),M(!0)}},{title:i("nav.providers"),link:"#",icon:(0,t.jsx)(R.Server,{className:"size-3.5"}),onClick:()=>ee(!0)}]}];return(0,t.jsxs)(v,{variant:"floating",collapsible:"icon",className:(0,l.cn)(m&&"bg-[#f2f3f5] dark:bg-[#0f1117]"),children:[(0,t.jsxs)(k,{className:(0,l.cn)("flex rounded-xl border border-border bg-card mx-2 mt-2 px-3 py-2.5 shadow-[0_1px_3px_rgba(0,0,0,0.04)]",u?"flex-row items-center justify-between gap-y-4 md:flex-col md:items-center md:justify-center":"flex-row items-center justify-between"),children:[(0,t.jsx)("a",{href:"#",className:"flex items-center gap-2",children:(0,t.jsx)(K.UserIcon,{size:u?"sm":"md"})}),(0,t.jsxs)(I.motion.div,{className:(0,l.cn)("flex items-center gap-2",u?"flex-row md:flex-col-reverse":"flex-row"),initial:{opacity:0},animate:{opacity:1},transition:{duration:.8},children:[(0,t.jsx)(ec,{notifications:c}),(0,t.jsx)(j,{})]},u?"header-collapsed":"header-expanded")]}),(0,t.jsx)(y,{className:"gap-2 mx-2 my-2 rounded-xl border border-border bg-card p-2 shadow-[0_1px_3px_rgba(0,0,0,0.04)]",children:(0,t.jsx)(eo,{routes:eg})}),(0,t.jsx)(N,{className:"mx-2 mb-2 rounded-xl border border-border bg-card p-2 shadow-[0_1px_3px_rgba(0,0,0,0.04)]",children:(0,t.jsx)(eb,{})}),(0,t.jsx)(J.AgentDialog,{open:S,onOpenChange:C}),(0,t.jsx)(X.SkillsDialog,{open:et,onOpenChange:ea}),(0,t.jsx)(Y.McpsDialog,{open:es,onOpenChange:en}),(0,t.jsx)(Q.SettingsDialog,{open:z,onOpenChange:D}),(0,t.jsx)(q.ModelsDialog,{open:T,onOpenChange:M,initialProvider:eu}),(0,t.jsx)(V.ProvidersDialog,{open:Z,onOpenChange:ee,onAddModel:e=>{em(e),M(!0)}}),(0,t.jsx)(ev.WorkspaceDialog,{open:er,onOpenChange:ei,workspace:el,onSubmit:ex})]})}function ey(){let e=(0,ej.useWorkspaceStore)(e=>e.workspaces),{toggleSidebar:s}=f(),n=(0,a.useRouter)(),r=(0,a.usePathname)(),i=(0,a.useSearchParams)(),o=(0,ew.workspaceIdFromLocation)(r,i.toString());return 0===e.length?null:(0,t.jsxs)("div",{className:"flex items-center h-12 px-3 bg-transparent overflow-x-auto shrink-0",children:[(0,t.jsx)("button",{onClick:()=>s(),className:"flex items-center justify-center size-8 rounded-lg text-muted-foreground hover:bg-accent/50 transition-colors shrink-0 md:hidden",children:(0,t.jsx)(x,{size:16})}),(0,t.jsx)("div",{className:"flex items-center gap-1 rounded-xl p-1",children:e.map(e=>(0,t.jsx)("button",{onClick:()=>{var t;return(0,_.tauriNavigate)(n,(t=e.id,`/workspace/${t}`))},className:(0,l.cn)("flex items-center gap-1.5 px-3.5 h-7 text-[13px] font-medium rounded-lg transition-all whitespace-nowrap",o===e.id?"bg-primary text-primary-foreground shadow-[rgba(0,0,0,0.08)_0px_4px_6px]":"text-muted-foreground hover:text-foreground hover:bg-accent/50"),children:(0,t.jsx)("span",{className:"max-w-[160px] truncate",children:e.name})},e.id))})]})}e.i(8890);var eS=e.i(478189);function eC(){let[e,t]=(0,s.useState)(!1),[a,n]=(0,s.useState)(!1);return(0,s.useEffect)(()=>{n(!0)},[]),(0,s.useEffect)(()=>{if(!e)return;let a=e=>{e.preventDefault(),e.stopPropagation();let a=e.target;if(!(a instanceof HTMLElement))return;let s=function(e){let t=e.closest("[data-inspector-relative-path]");if(t?.dataset.inspectorRelativePath)return{relativePath:t.dataset.inspectorRelativePath,lineNumber:t.dataset.inspectorLine??"1",columnNumber:t.dataset.inspectorColumn??"1"};let a=function e(t){if(!t)return;let a=Object.keys(t).find(e=>e.startsWith("__reactFiber$")||e.startsWith("__reactInternalInstance$"));return a?t[a]:e(t.parentElement)}(e);for(;a;){let e=a._debugSource??a._debugOwner?._debugSource;if(e?.fileName&&e.lineNumber)return{absolutePath:e.fileName,lineNumber:String(e.lineNumber),columnNumber:String(e.columnNumber??1)};a=a.return??void 0}}(a);console.debug("[react-dev-inspector] native click",s),t(!1),s?(e=>{if(!e)return;let t="codeInfo"in e?e.codeInfo:e,{lineNumber:a,columnNumber:s,relativePath:n,absolutePath:r}=t,i=!!n,o=i?n:r;if(!o)return console.error("[react-dev-inspector] Cannot open editor without source fileName",t);let l=i?`${eS.default}/relative`:eS.default;fetch(`${l}?${new URLSearchParams({fileName:o,lineNumber:a,colNumber:s})}`)})(s):console.warn("[react-dev-inspector] no React source info found",a)};return window.addEventListener("click",a,!0),()=>window.removeEventListener("click",a,!0)},[e]),null}e.s(["AppShell",0,function({children:e}){let s=(0,a.usePathname)();return(0,ew.isLoginPath)(s)?(0,t.jsx)(t.Fragment,{children:e}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(eC,{}),(0,t.jsxs)(b,{className:"bg-[#f2f3f5] dark:bg-[#0f1117]",children:[(0,t.jsx)(eN,{}),(0,t.jsxs)(w,{className:"!bg-transparent",children:[(0,t.jsx)(ey,{}),e]})]})]})}],994876)}]);
|