@auto-ai/agent 2.1.132 → 2.1.140
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/404/index.html +1 -1
- package/dist/404.html +1 -1
- package/dist/_next/static/chunks/0ce6504fc10ce408.js +1 -0
- package/dist/_next/static/chunks/0fa3b1f693a23b15.js +1 -0
- package/dist/_next/static/chunks/{b99d7c931432a00e.js → 106955e3cc6a6843.js} +1 -1
- package/dist/_next/static/chunks/14e9e2677e576a10.js +1 -0
- package/dist/_next/static/chunks/1c9321874fea5f0d.js +1 -0
- package/dist/_next/static/chunks/21d1bfb869271a9f.js +1 -0
- package/dist/_next/static/chunks/{c5af60c028e52cf8.js → 270d7571d2eea071.js} +1 -1
- package/dist/_next/static/chunks/2c10ed308692c3a0.js +1 -0
- package/dist/_next/static/chunks/2df3e464b6247e75.js +1 -0
- package/dist/_next/static/chunks/32b9bdd82a961878.js +1 -0
- package/dist/_next/static/chunks/35dbce6fecd1f0ea.css +1 -0
- package/dist/_next/static/chunks/371449b804c846f7.js +1 -0
- package/dist/_next/static/chunks/38b035f49fa68570.js +1 -0
- package/dist/_next/static/chunks/{9aea16dd9db3a8bd.js → 3dcb1dcf23e7ab9c.js} +1 -1
- package/dist/_next/static/chunks/{59baceab6698f9f7.js → 4d129d4e15c8c424.js} +1 -1
- package/dist/_next/static/chunks/4daa80520fa470d9.js +1 -0
- package/dist/_next/static/chunks/5bad5163b6e015f5.js +1 -0
- package/dist/_next/static/chunks/{6c49d19eb7e88b9c.js → 5d79b7f202080232.js} +1 -1
- package/dist/_next/static/chunks/{cbb200599eb3e6d0.js → 63ec034afca4b5d6.js} +1 -1
- package/dist/_next/static/chunks/68142a0bc2fa2b35.js +1 -0
- package/dist/_next/static/chunks/688707d29c1b22a8.js +1 -0
- package/dist/_next/static/chunks/690434349e97572c.js +1 -0
- package/dist/_next/static/chunks/6d1c0d0ee56899fb.js +1 -0
- package/dist/_next/static/chunks/6e61f670898cb297.css +1 -0
- package/dist/_next/static/chunks/6f4460bd0b8a57af.js +1 -0
- package/dist/_next/static/chunks/{fa361913d47fdc14.css → 7bdf0e5b41aeb209.css} +0 -3
- package/dist/_next/static/chunks/{314d4f64173e0e4f.js → 87e12ecbe9521f9b.js} +1 -1
- package/dist/_next/static/chunks/{93102efda2769ba5.js → 8f5be275907dd98c.js} +1 -1
- package/dist/_next/static/chunks/{83e39d76d6f07968.js → 94029062f236cadc.js} +1 -1
- package/dist/_next/static/chunks/9518ddfa15493676.js +1 -0
- package/dist/_next/static/chunks/a6737fc58619eae5.js +1 -0
- package/dist/_next/static/chunks/a7d1ae46740fe1db.js +1 -0
- package/dist/_next/static/chunks/{b929fc868619ccb9.js → b30f1da4e57f459a.js} +1 -1
- package/dist/_next/static/chunks/b3272f80bcfc5de5.js +1 -0
- package/dist/_next/static/chunks/bbcf9daa108b22fb.js +1 -0
- package/dist/_next/static/chunks/bf2c1c402dbcccdf.js +1 -0
- package/dist/_next/static/chunks/bfc6ee42cec583d5.js +1 -0
- package/dist/_next/static/chunks/c933951b3113492f.js +1 -0
- package/dist/_next/static/chunks/{aadf128359998a2d.js → cd5eec7d305aa041.js} +1 -1
- package/dist/_next/static/chunks/cfe5b3f488f0424e.js +1 -0
- package/dist/_next/static/chunks/d2d432a9facf4278.js +1 -0
- package/dist/_next/static/chunks/d43dd46799168929.js +1 -0
- package/dist/_next/static/chunks/d4fd1b2f761be57f.css +7 -0
- package/dist/_next/static/chunks/d5e3d29f769997cc.js +1 -0
- package/dist/_next/static/chunks/e0e34f74c79fccad.js +1 -0
- package/dist/_next/static/chunks/e7bcbeb465fa49cf.js +1 -0
- package/dist/_next/static/chunks/f430e6f74ab444e1.js +1 -0
- package/dist/_next/static/chunks/f88c07614ca15868.js +1 -0
- package/dist/index.html +2 -2
- package/dist/index.txt +21 -21
- package/dist/manage/about/index.html +2 -2
- package/dist/manage/about/index.txt +23 -22
- package/dist/manage/env/index.html +2 -2
- package/dist/manage/env/index.txt +25 -24
- package/dist/manage/general/index.html +2 -2
- package/dist/manage/general/index.txt +23 -22
- package/dist/manage/index.html +2 -2
- package/dist/manage/index.txt +20 -19
- package/dist/manage/mcp/index.html +2 -2
- package/dist/manage/mcp/index.txt +22 -21
- package/dist/manage/permissions/index.html +2 -2
- package/dist/manage/permissions/index.txt +23 -22
- package/dist/manage/skills/index.html +2 -2
- package/dist/manage/skills/index.txt +22 -21
- package/dist/manage/task/index.html +2 -2
- package/dist/manage/task/index.txt +22 -21
- package/dist/manage/teams/index.html +2 -2
- package/dist/manage/teams/index.txt +22 -21
- package/dist/manage/tools/index.html +2 -2
- package/dist/manage/tools/index.txt +22 -21
- package/dist/ws-test.html +373 -53
- package/package.json +6 -6
- package/.env.example +0 -7
- package/dist/_next/static/chunks/0bb72b120dc81a85.js +0 -1
- package/dist/_next/static/chunks/0eeaf05fe8e92617.js +0 -1
- package/dist/_next/static/chunks/14114800ef3e692e.js +0 -1
- package/dist/_next/static/chunks/1d51ed7830318474.js +0 -1
- package/dist/_next/static/chunks/1ffb3acecdbda566.js +0 -1
- package/dist/_next/static/chunks/22d483db0dece6fa.js +0 -1
- package/dist/_next/static/chunks/289e2d5005a099d3.js +0 -1
- package/dist/_next/static/chunks/292d0b687a419387.js +0 -1
- package/dist/_next/static/chunks/2bbdc3c6bbaac93f.js +0 -1
- package/dist/_next/static/chunks/376aaeae24164c1a.js +0 -1
- package/dist/_next/static/chunks/39fed6244d398269.js +0 -1
- package/dist/_next/static/chunks/48bc54794d1c3561.js +0 -1
- package/dist/_next/static/chunks/5534f66638e5a2e8.js +0 -1
- package/dist/_next/static/chunks/5817c66b26ce8538.css +0 -1
- package/dist/_next/static/chunks/5d5fe2c255f43fec.js +0 -1
- package/dist/_next/static/chunks/67bb401596b3c723.js +0 -1
- package/dist/_next/static/chunks/7de1ab3b78f48430.js +0 -1
- package/dist/_next/static/chunks/98a41a7efbe71682.js +0 -1
- package/dist/_next/static/chunks/9e2cffe3c17fd0e7.js +0 -1
- package/dist/_next/static/chunks/a79654d570ac30eb.js +0 -1
- package/dist/_next/static/chunks/a8e06ee8243e3389.js +0 -1
- package/dist/_next/static/chunks/ad419be63e291696.js +0 -1
- package/dist/_next/static/chunks/bcefc2c679f3ada6.js +0 -1
- package/dist/_next/static/chunks/c1cfc60c17638a73.js +0 -1
- package/dist/_next/static/chunks/c26f95ab8ad3dcf0.js +0 -1
- package/dist/_next/static/chunks/cb4dec27441d471a.js +0 -1
- package/dist/_next/static/chunks/d3af8988bf25a7de.js +0 -1
- package/dist/_next/static/chunks/d3ccfb3dcef5974f.js +0 -1
- package/dist/_next/static/chunks/d504c4e2ebc5319a.js +0 -1
- package/dist/_next/static/chunks/e2833182a81cd867.js +0 -1
- package/dist/_next/static/chunks/e520aa06a5014225.js +0 -1
- package/dist/_next/static/chunks/e7bd145455a541af.css +0 -4
- package/dist/_next/static/chunks/eae304701469d3a8.js +0 -1
- package/dist/_next/static/chunks/eba0719a42605421.js +0 -1
- package/dist/_next/static/chunks/f2a87f0c7c1ec9f4.js +0 -1
- package/dist/_next/static/chunks/faaf4e0c2d5cffda.js +0 -1
- package/dist/_next/static/chunks/fc4be3bcf72559a0.js +0 -1
- package/dist/manage/add-account/basic/index.html +0 -2
- package/dist/manage/add-account/basic/index.txt +0 -38
- package/dist/manage/add-account/index.html +0 -2
- package/dist/manage/add-account/index.txt +0 -36
- /package/dist/_next/static/{WYrSrJ9dye9qgdGCYVOpA → sZI1x1K1_Y629iT34mJPT}/_buildManifest.js +0 -0
- /package/dist/_next/static/{WYrSrJ9dye9qgdGCYVOpA → sZI1x1K1_Y629iT34mJPT}/_clientMiddlewareManifest.json +0 -0
- /package/dist/_next/static/{WYrSrJ9dye9qgdGCYVOpA → sZI1x1K1_Y629iT34mJPT}/_ssgManifest.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,31862,e=>{"use strict";let t;e.s(["TeamsView",()=>ea],31862);var a=e.i(18050),s=e.i(71645),r=e.i(56708),l=e.i(19455),n=e.i(72064),i=e.i(53145),o=e.i(74080),d=e.i(94197),c=e.i(13354),m=e.i(24687),x=e.i(75157);let u={expand:!0,copy:!0};function p(e){let{value:t,onChange:r,minLines:l,placeholder:n,readOnly:i,className:o}=e,d=(0,s.useRef)(null),c=(0,s.useRef)(null),u=Math.max(t.split("\n").length,l),p=(0,s.useCallback)(()=>{d.current&&c.current&&(c.current.scrollTop=d.current.scrollTop)},[]);return(0,a.jsxs)("div",{className:(0,x.cn)("flex min-h-0 flex-1",o),children:[(0,a.jsx)("div",{ref:c,"aria-hidden":!0,className:"w-10 shrink-0 overflow-hidden border-r border-[var(--ds-border)] bg-[#fafafa] py-3 text-right font-mono text-xs leading-[1.5] text-[var(--ds-muted)]",children:Array.from({length:u},(e,t)=>(0,a.jsx)("div",{className:"px-2",children:t+1},t))}),(0,a.jsx)(m.Textarea,{ref:d,spellCheck:!1,readOnly:i,value:t,onChange:e=>r(e.target.value),onScroll:p,placeholder:n,className:"agent-md-editor min-h-0 flex-1 resize-none rounded-none border-0 bg-white px-4 py-3 shadow-none focus-visible:ring-0"})]})}function h(e){let{actions:t,copyDisabled:s,onCopy:r,className:l}=e;return t.copy?(0,a.jsx)("div",{className:(0,x.cn)("flex items-center gap-0.5",l),children:(0,a.jsx)(d.IconTooltipButton,{icon:"Copy",label:"复制内容",disabled:s,onClick:r})}):null}function b(e){let{show:t,expanded:s,onToggleExpand:r,className:l}=e;return t?(0,a.jsx)("div",{className:(0,x.cn)("flex items-center",l),children:(0,a.jsx)(d.IconTooltipButton,{icon:s?"Minimize2":"Maximize2",label:s?"收起编辑器":"展开编辑器",onClick:r})}):null}function f(e){let{value:t,onChange:r,minLines:l=20,className:n,placeholder:i="编辑 Markdown 内容",readOnly:d=!1,actions:m,expandTitle:f="编辑 Markdown",copySuccessMessage:v="已复制到剪贴板",copyEmptyMessage:g="暂无内容可复制"}=e,[j,N]=(0,s.useState)(!1),y=!1===m?{expand:!1,copy:!1}:{...u,...m},w=(0,s.useCallback)(()=>{if(!t.trim())return void c.appToast.error(g);("undefined"!=typeof navigator&&navigator.clipboard&&"function"==typeof navigator.clipboard.writeText?navigator.clipboard.writeText(t):"undefined"==typeof document?Promise.reject(Error("Clipboard unavailable")):new Promise((e,a)=>{let s=document.createElement("textarea");s.value=t,s.setAttribute("readonly",""),s.style.position="fixed",s.style.top="-9999px",s.style.opacity="0",document.body.appendChild(s),s.focus(),s.select();let r=document.execCommand("copy");if(document.body.removeChild(s),r)return void e();a(Error("Clipboard copy failed"))})).then(()=>{c.appToast.success(v)},()=>{c.appToast.error("复制失败,请手动选择复制")})},[t,v,g]),C=(0,s.useCallback)(()=>{N(e=>!e)},[]);(0,s.useEffect)(()=>{if(!j)return;let e=e=>{"Escape"===e.key&&N(!1)};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)},[j]);let k=(0,x.cn)("relative flex min-h-[320px] flex-1 flex-col overflow-hidden rounded-lg border border-[var(--ds-border)] bg-white",n),T=!t.trim()||d,A=(0,a.jsxs)("div",{className:k,children:[(0,a.jsx)(h,{actions:y,copyDisabled:T,onCopy:w,className:"absolute right-2 top-2 z-[1]"}),(0,a.jsx)(p,{value:t,onChange:r,minLines:l,placeholder:i,readOnly:d}),(0,a.jsx)(b,{show:y.expand,expanded:!1,onToggleExpand:C,className:"absolute bottom-2 right-2 z-[1]"})]}),S=j&&"undefined"!=typeof document?(0,o.createPortal)((0,a.jsxs)("div",{className:"fixed inset-0 z-[100] flex flex-col bg-[var(--surface-2)]",role:"dialog","aria-modal":"true","aria-label":f,children:[(0,a.jsx)("header",{className:"flex shrink-0 items-center border-b border-[var(--ds-border)] px-5 py-4",children:(0,a.jsx)("h2",{className:"truncate text-lg font-semibold text-[var(--ds-text)]",children:f})}),(0,a.jsx)("div",{className:"flex min-h-0 flex-1 flex-col p-5",children:(0,a.jsxs)("div",{className:"relative flex min-h-0 flex-1 flex-col overflow-hidden rounded-lg border border-[var(--ds-border)] bg-white",children:[(0,a.jsx)(h,{actions:y,copyDisabled:T,onCopy:w,className:"absolute right-2 top-2 z-[1]"}),(0,a.jsx)(p,{value:t,onChange:r,minLines:l,placeholder:i,readOnly:d,className:"min-h-0 flex-1"}),(0,a.jsx)(b,{show:y.expand,expanded:!0,onToggleExpand:C,className:"absolute bottom-2 right-2 z-[1]"})]})})]}),document.body):null;return(0,a.jsxs)(a.Fragment,{children:[A,S]})}var v=e.i(51419),g=e.i(87676),j=e.i(93479),N=e.i(77572),y=e.i(65934),w=e.i(61196),C=e.i(52727);let k=/^[a-zA-Z0-9_-]{1,64}$/,T=[{id:"all",label:"全部"},{id:"joined_other",label:"已加入其他团队"}];function A(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:80,a=String(e||"").replace(/\s+/g," ").trim();return a?a.length<=t?a:"".concat(a.slice(0,t-1),"…"):"暂无使用说明"}var S=e.i(46798),z=e.i(8279);let F={sm:"h-7 w-7 text-xs",md:"h-9 w-9 text-sm"};function E(e){let{label:t,size:s="md",className:r}=e,l=(0,z.initialsFromLabel)(t);return(0,a.jsx)(S.TooltipProvider,{delayDuration:150,children:(0,a.jsxs)(S.Tooltip,{children:[(0,a.jsx)(S.TooltipTrigger,{asChild:!0,children:(0,a.jsx)("span",{className:(0,x.cn)("inline-flex shrink-0 cursor-default items-center justify-center rounded-full font-semibold text-white",F[s],r),style:{background:(0,z.avatarBgForLabel)(t)},"aria-label":t,children:l})}),(0,a.jsx)(S.TooltipContent,{side:"bottom",align:"center",className:"text-base",children:t})]})})}let D=[{value:"basic",label:"基本信息"}],M=[{value:"agents",label:"AGENTS"}];function B(e){let{mode:t,editAgentId:r,onClose:o,onSaved:d}=e,u=(0,y.useAppStore)(e=>e.wsUrl),p=(0,y.useAppStore)(e=>e.apiBase),h=(0,w.useStageThreadFlyoutStore)(e=>e.setFlyoutDirty),b=(0,w.useStageThreadFlyoutStore)(e=>e.requestCloseFlyout),T="edit"===t,[A,S]=(0,s.useState)(!1),[z,F]=(0,s.useState)(T),[B,I]=(0,s.useState)(null),[R,_]=(0,s.useState)("basic"),L=(0,s.useRef)(null),O=(0,i.useForm)({defaultValues:{id:"",whentouse:"",prompt:""},mode:"onChange"}),{isDirty:P}=(0,i.useFormState)({control:O.control}),H=O.watch("id"),U=T?"编辑 Agent · ".concat(null!=r?r:H):"新建Agent",G=A?T?"保存中…":"创建中…":"保存",V=(0,s.useCallback)(async()=>{let e=null==r?void 0:r.trim();if(e){F(!0),I(null);try{let t=await (0,C.getAgentDetail)(u,p,e);L.current=t.config,O.reset({id:t.id,whentouse:t.whentouse,prompt:t.prompt})}catch(t){let e=t instanceof Error?t.message:String(t);I(e),c.appToast.error("加载失败:".concat(e))}finally{F(!1)}}},[r,u,p,O]);(0,s.useEffect)(()=>{T&&V()},[T,V]),(0,s.useEffect)(()=>(h(P),()=>h(!1)),[P,h]);let q=(0,s.useCallback)(()=>{b()},[b]),K=(0,s.useCallback)(async e=>{let t=(T&&null!=r?r:e.id).trim();if(t){if(!T&&!k.test(String(t||"").trim()))return void c.appToast.error("Agent ID 仅支持字母、数字、下划线和中划线,长度 1~64");S(!0);try{T?(await (0,C.updateAgent)(u,p,{id:t,prompt:e.prompt,whentouse:e.whentouse,baseConfig:L.current}),c.appToast.success("已保存")):(await (0,C.createAgent)(u,p,{id:t,whentouse:e.whentouse,prompt:e.prompt}),c.appToast.success("已创建")),await (null==d?void 0:d()),o()}catch(t){let e=T?"保存":"创建";c.appToast.error("".concat(e,"失败:").concat(t instanceof Error?t.message:String(t)))}finally{S(!1)}}},[T,r,u,p,o,d]);return(0,a.jsx)(g.Form,{...O,children:(0,a.jsxs)("form",{className:"flex h-full min-h-0 flex-col bg-[var(--surface-2)]",onSubmit:O.handleSubmit(K),children:[(0,a.jsxs)("header",{className:"shrink-0 border-b border-[var(--ds-border)] bg-[var(--surface-2)] px-5 pb-4 pt-5",children:[(0,a.jsxs)("div",{className:"flex items-start justify-between gap-4",children:[(0,a.jsxs)("div",{className:"flex min-w-0 flex-1 items-center gap-2",children:[(0,a.jsx)(l.Button,{type:"button",variant:"plain",size:"icon",onClick:q,disabled:A,className:"shrink-0 cursor-pointer px-2 text-[var(--ds-text)] hover:bg-transparent hover:text-[color:var(--ds-accent)] [&_svg_path]:!fill-current","aria-label":"返回",children:(0,a.jsx)(n.default,{name:"Back",size:16})}),(0,a.jsx)("h2",{className:"truncate text-lg font-semibold text-[var(--ds-text)]",children:U})]}),(0,a.jsx)(l.Button,{type:"submit",variant:"default",size:"lg",disabled:A||z||!!B,className:"shrink-0 cursor-pointer rounded-lg bg-[#111] px-5 hover:bg-[#333]",children:G})]}),(0,a.jsx)("div",{className:"mt-4 flex items-center gap-3",children:(0,a.jsx)(N.Tabs,{value:R,onValueChange:_,className:"min-w-0 flex-1",children:(0,a.jsx)(N.TabsList,{variant:"pill",className:"mx-auto w-fit",children:D.map(e=>(0,a.jsx)(N.TabsTrigger,{value:e.value,disabled:e.disabled,children:e.label},e.value))})})})]}),(0,a.jsx)("div",{className:"flex min-h-0 flex-1 flex-col overflow-y-auto px-5 py-4",children:z?(0,a.jsx)("div",{className:"flex min-h-[240px] flex-1 items-center justify-center text-sm text-[var(--ds-muted)]",role:"status","aria-live":"polite",children:"加载中…"}):B?(0,a.jsxs)("div",{className:"flex min-h-[240px] flex-1 flex-col items-center justify-center gap-3 text-sm text-destructive",role:"alert",children:[(0,a.jsxs)("span",{children:["加载失败:",B]}),(0,a.jsx)(l.Button,{type:"button",variant:"outline",size:"sm",onClick:()=>void V(),children:"重试"})]}):"basic"===R?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("section",{className:"rounded-xl border border-[var(--ds-border)] bg-white p-4",children:(0,a.jsxs)("div",{className:"flex gap-4",children:[(0,a.jsx)("div",{className:"flex shrink-0 flex-col items-center gap-2",children:(0,a.jsx)("div",{className:"relative",children:(0,a.jsx)(E,{label:H.trim()||"Agent",className:"h-16 w-16 text-lg"})})}),(0,a.jsxs)("div",{className:"min-w-0 flex-1 space-y-3",children:[(0,a.jsx)(g.FormField,{control:O.control,name:"id",render:e=>{let{field:t}=e;return(0,a.jsxs)(g.FormItem,{children:[(0,a.jsx)(g.FormControl,{children:(0,a.jsx)(j.Input,{...t,readOnly:T,spellCheck:!1,placeholder:"例如 my-agent",autoComplete:"off",className:(0,x.cn)("h-10 rounded-md border-[var(--ds-border)] bg-[var(--ds-bg)] text-base",T&&"cursor-default text-[var(--ds-muted)]")})}),(0,a.jsx)(g.FormMessage,{})]})}}),(0,a.jsx)(g.FormField,{control:O.control,name:"whentouse",render:e=>{let{field:t}=e;return(0,a.jsxs)(g.FormItem,{children:[(0,a.jsx)(g.FormControl,{children:(0,a.jsx)(m.Textarea,{...t,spellCheck:!1,placeholder:"用一句话说明它的身份 + 它主要帮你做什么",className:"min-h-[88px] resize-none rounded-md border-[var(--ds-border)] bg-[var(--ds-bg)] text-base leading-relaxed"})}),(0,a.jsx)(g.FormMessage,{})]})}})]})]})}),(0,a.jsx)(v.AppTabs,{tabs:M,defaultValue:"agents",listVariant:"line",listClassName:"mt-4",className:"min-h-0 flex-1",children:(0,a.jsx)(v.AppTabsPanel,{value:"agents",className:"mt-4 flex min-h-0 flex-1 flex-col",children:(0,a.jsx)(g.FormField,{control:O.control,name:"prompt",render:e=>{let{field:t}=e;return(0,a.jsxs)(g.FormItem,{className:"flex min-h-0 flex-1 flex-col",children:[(0,a.jsx)(g.FormControl,{children:(0,a.jsx)(f,{value:t.value,onChange:t.onChange,className:"min-h-[320px]",placeholder:"编辑 Agent 提示词(agent.md)",expandTitle:"编辑 (agent.md)"})}),(0,a.jsx)(g.FormMessage,{})]})}})})})]}):(0,a.jsx)("div",{className:"flex flex-1 items-center justify-center text-sm text-[var(--ds-muted)]",children:"敬请期待"})})]})})}var I=e.i(68499),R=e.i(55146),_=e.i(97249);function L(e){let{label:t,hint:s,icon:r,onClick:l}=e,i=(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(n.default,{name:r,size:14,className:"shrink-0 text-[var(--ds-muted)]"}),(0,a.jsx)("span",{children:s})]}),o=(0,x.cn)("inline-flex min-h-9 w-fit max-w-full items-center justify-center gap-1.5 rounded-lg border border-dashed border-[var(--ds-border)] !bg-transparent px-3 text-base text-[var(--ds-muted)]",l&&"cursor-pointer hover:border-[color:var(--ds-border-hover)] hover:bg-[var(--ds-main-tint)]");return l?(0,a.jsx)("button",{type:"button",className:o,onClick:l,"aria-label":t,children:i}):(0,a.jsx)("div",{className:o,"aria-label":t,children:i})}let O=(0,e.i(75254).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);var P=e.i(57428),H=e.i(76639);let U={captain:null,members:[]};function G(e){return{id:e.id,displayName:e.displayName.trim()||e.id}}function V(e,t,a,s){for(let l of a){var r;if(l.id===t)continue;let a=s(l.id);if((null==(r=a.captain)?void 0:r.id)===e||a.members.some(t=>t.id===e))return l.id}return null}function q(e){let{member:t,subtitle:s,onRemove:r,badge:l}=e;return(0,a.jsxs)("div",{className:"flex items-center gap-2 rounded-lg border border-[var(--ds-border)] bg-[var(--ds-bg)] px-2.5 py-2",children:[(0,a.jsx)(E,{label:t.displayName,size:"sm"}),(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("p",{className:"mb-0 truncate text-sm font-medium text-[var(--ds-text)]",children:t.displayName}),(0,a.jsx)("p",{className:"mb-0 truncate text-xs text-[var(--ds-muted)]",children:s})]}),l?(0,a.jsx)("span",{className:"shrink-0 rounded bg-[var(--green-light)] px-1.5 py-0.5 text-[10px] font-medium text-[var(--green-dark)]",children:l}):null,r?(0,a.jsx)(d.IconTooltipButton,{icon:"Close",label:"移除agent",className:"!h-7 !w-7 shrink-0 bg-transparent text-[var(--ds-muted)] hover:bg-transparent hover:text-[color:var(--ds-accent)]",iconClassName:"!size-3.5",onClick:r}):null]})}function K(e){let{open:t,onOpenChange:r,team:i,allAgents:o,rosters:d,onConfirm:m,onAgentsRefresh:u}=e,p=(0,y.useAppStore)(e=>e.wsUrl),h=(0,y.useAppStore)(e=>e.apiBase),b=i.id,f=d.getRoster,[v,g]=(0,s.useState)(""),[N,w]=(0,s.useState)("all"),[k,S]=(0,s.useState)([]),[z,F]=(0,s.useState)(!1),D=(0,s.useMemo)(()=>G(i),[i]);(0,s.useEffect)(()=>{if(!t)return;let e=f(b);g(""),w("all"),S(e.members.filter(e=>e.id!==b).map(e=>e.id))},[t,b,f]);let M=(0,s.useMemo)(()=>k.map(e=>o.find(t=>t.id===e)).filter(e=>null!=e).map(G),[k,o]),B=(0,s.useMemo)(()=>o.filter(e=>{if(!function(e,t){let a=t.trim().toLowerCase();return!a||"".concat(e.id," ").concat(e.displayName," ").concat(e.whentouse).toLowerCase().includes(a)}(e,v))return!1;let t=e.id===b,a=V(e.id,b,o,f);return"available"===N?!t:"joined_other"===N?!!a:"recommended"!==N||!a&&!t}),[o,v,N,b,f]),I=(0,s.useCallback)((e,t)=>{e!==b&&S(a=>t?a.includes(e)?a:[...a,e]:a.filter(t=>t!==e))},[b]),R=(0,s.useCallback)(()=>{S([])},[]),_=(0,s.useCallback)(()=>{r(!1)},[r]),L=(0,s.useCallback)(()=>{(async()=>{let e=b.trim();if(!e||z)return;let t=f(b).members.map(e=>e.id),a=k.filter(e=>!t.includes(e)),s=t.filter(e=>!k.includes(e));if(0===a.length&&0===s.length)return _();F(!0);try{for(let t of s)await (0,C.removeTeamMember)(p,h,e,t);for(let t of a)await (0,C.addTeamMember)(p,h,e,t);await (null==u?void 0:u()),m({captain:D,members:M}),a.length>0&&0===s.length?c.appToast.success(1===a.length?"已添加队员 ".concat(a[0]):"已添加 ".concat(a.length," 名队员")):c.appToast.success("已更新队员"),_()}catch(e){c.appToast.error("添加队员失败:".concat(e instanceof Error?e.message:String(e)))}finally{F(!1)}})()},[b,z,f,k,p,h,u,m,D,M,_]);return(0,a.jsx)(H.Dialog,{open:t,onOpenChange:r,children:(0,a.jsxs)(H.DialogContent,{className:"max-w-[920px]","aria-labelledby":"add-team-members-title",children:[(0,a.jsxs)(H.DialogHeader,{className:"items-start gap-3",children:[(0,a.jsx)(H.DialogTitle,{id:"add-team-members-title",className:"text-lg",children:"添加队员"}),(0,a.jsx)(H.DialogClose,{"aria-label":"关闭"})]}),(0,a.jsx)(H.DialogBody,{className:"!p-0",children:(0,a.jsxs)("div",{className:"flex h-[min(68vh,520px)] min-h-0 flex-col px-[24px] md:flex-row",children:[(0,a.jsxs)("div",{className:"mr-[16px] flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden border-b border-[var(--ds-border)] md:border-b-0 md:border-r",children:[(0,a.jsxs)("div",{className:"shrink-0 space-y-3 border-b border-[var(--ds-border)] pb-4",children:[(0,a.jsxs)("div",{className:"relative",children:[(0,a.jsx)(O,{className:"pointer-events-none absolute left-2.5 top-1/2 size-4 -translate-y-1/2 text-[var(--ds-muted)]","aria-hidden":!0}),(0,a.jsx)(j.Input,{value:v,onChange:e=>g(e.target.value),placeholder:"搜索成员名称 / 能力 / 标签",className:"h-8 pl-8"})]}),(0,a.jsx)("div",{className:"flex flex-wrap gap-2",children:T.map(e=>{let t=N===e.id;return(0,a.jsx)(l.Button,{type:"button",variant:"plain-outline",size:"sm",className:(0,x.cn)("cursor-pointer rounded-full px-3",t&&"border-[color:var(--ds-accent)] bg-[var(--green-light)] text-[var(--green-dark)] hover:bg-[var(--green-light)]"),onClick:()=>w(e.id),children:e.label},e.id)})})]}),(0,a.jsx)("ul",{className:"m-0 min-h-0 flex-1 list-none space-y-4 overflow-y-auto",role:"listbox","aria-label":"可选队员",children:B.map(e=>{let t=e.id===b,s=k.includes(e.id),r=V(e.id,b,o,f),l=function(e){let t=A(e,24);return"暂无使用说明"===t?[]:t.split(/[,,、\s]+/).filter(Boolean).slice(0,2)}(e.whentouse),i=A(e.whentouse,32);return(0,a.jsx)("li",{children:(0,a.jsxs)("label",{className:(0,x.cn)("flex cursor-pointer items-center gap-3 rounded-lg border border-solid bg-[var(--ds-bg)] px-2 py-2.5 transition-[border-color,background-color]","border-[color:var(--ds-border)]",t?"cursor-not-allowed opacity-60":"hover:border-[color:var(--ds-border-hover)] hover:bg-[var(--ds-main-tint)]",s&&!t&&"bg-[var(--green-light)]/40 border-[color:var(--ds-accent)]"),children:[(0,a.jsx)(P.Checkbox,{checked:!t&&s,disabled:t,onChange:t=>I(e.id,t.target.checked),"aria-label":"选择 ".concat(e.displayName)}),(0,a.jsx)(E,{label:e.displayName,size:"md"}),(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsxs)("p",{className:"mb-0 truncate font-medium text-[var(--ds-text)]",children:[e.displayName,t?(0,a.jsx)("span",{className:"ml-1 text-xs font-normal text-[var(--ds-muted)]",children:"(当前团队)"}):null]}),(0,a.jsx)("p",{className:"mb-0 mt-0.5 truncate text-base text-[var(--ds-muted)]",children:i}),l.length>0?(0,a.jsx)("div",{className:"mt-1 flex flex-wrap gap-1",children:l.map(e=>(0,a.jsx)("span",{className:"rounded bg-[var(--surface-2)] px-1.5 py-0.5 text-[10px] text-[var(--ds-muted)]",children:e},e))}):null]}),(0,a.jsx)("div",{className:"shrink-0 text-right",children:t?(0,a.jsx)("span",{className:"text-xs text-[var(--ds-muted)]",children:"不可选"}):r?(0,a.jsxs)("span",{className:"inline-flex items-center gap-1 text-xs text-amber-600",children:[(0,a.jsx)(n.default,{name:"Info",size:14}),"已加入其他团队"]}):(0,a.jsxs)("span",{className:"inline-flex items-center gap-1 text-xs text-[var(--green-dark)]",children:[(0,a.jsx)("span",{className:"size-1.5 rounded-full bg-[var(--ds-accent)]"}),"可用 Agent"]})})]})},e.id)})}),(0,a.jsxs)("div",{className:"shrink-0 border-t border-[var(--ds-border)] px-4 py-2.5 text-sm text-[var(--ds-muted)]",children:["已选择 ",k.length," 名队员"]})]}),(0,a.jsx)("div",{className:"flex min-h-0 w-full shrink-0 flex-col overflow-hidden bg-[var(--ds-log-bg)] md:w-[300px]",children:(0,a.jsx)("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden p-4",children:(0,a.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:[(0,a.jsxs)("div",{className:"mb-2 flex shrink-0 items-center justify-between gap-2",children:[(0,a.jsxs)("span",{className:"text-sm font-medium text-[var(--ds-text)]",children:["已选成员(",M.length,")"]}),(0,a.jsx)(l.Button,{type:"button",variant:"plain",size:"sm",disabled:0===M.length,className:"h-auto cursor-pointer !px-1 text-xs text-[var(--ds-accent)] hover:bg-transparent hover:text-[var(--ds-text)] disabled:cursor-not-allowed",onClick:R,children:"清空"})]}),(0,a.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto",children:M.length>0?(0,a.jsx)("div",{className:"space-y-4",children:M.map(e=>{let t=o.find(t=>t.id===e.id),s=t?A(t.whentouse,28):e.id;return(0,a.jsx)(q,{member:e,subtitle:s,onRemove:()=>I(e.id,!1)},e.id)})}):(0,a.jsx)("p",{className:"mb-0 text-xs text-[var(--ds-muted)]",children:"请从左侧勾选队员"})})]})})})]})}),(0,a.jsxs)("div",{className:"flex shrink-0 justify-end gap-2 border-t border-[var(--ds-border)] bg-[var(--ds-sidebar)] px-5 py-3",children:[(0,a.jsx)(l.Button,{type:"button",variant:"plain-outline",size:"lg",onClick:_,className:"cursor-pointer",children:"取消"}),(0,a.jsx)(l.Button,{type:"button",variant:"default",size:"lg",onClick:L,disabled:z,className:"cursor-pointer disabled:cursor-not-allowed",children:z?"添加中…":"确认添加"})]})]})})}function W(e){let{open:t,onOpenChange:r,title:n,description:i,candidates:o,onPick:d}=e,[c,m]=(0,s.useState)("");(0,s.useEffect)(()=>{t&&m("")},[t]);let u=(0,s.useCallback)(()=>{r(!1)},[r]),p=(0,s.useCallback)(()=>{let e=o.find(e=>e.id===c);e&&(d(e),u())},[o,c,d,u]),h=(0,s.useMemo)(()=>o.length>0?null:"暂无可选 Agent",[o.length]);return(0,a.jsx)(H.Dialog,{open:t,onOpenChange:r,children:(0,a.jsxs)(H.DialogContent,{className:"max-w-[480px]","aria-labelledby":"pick-team-member-title",children:[(0,a.jsxs)(H.DialogHeader,{className:"items-start gap-3",children:[(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)(H.DialogTitle,{id:"pick-team-member-title",children:n}),(0,a.jsx)(H.DialogDescription,{className:"mt-1",children:i})]}),(0,a.jsx)(H.DialogClose,{"aria-label":"关闭"})]}),(0,a.jsx)(H.DialogBody,{className:"max-h-[min(50vh,360px)] overflow-y-auto !px-5 !py-4",children:h?(0,a.jsx)("p",{className:"mb-0 text-center text-sm text-[var(--ds-muted)]",children:h}):(0,a.jsx)("ul",{className:"m-0 list-none space-y-1 p-0",role:"listbox",children:o.map(e=>{let t=c===e.id,s=G(e);return(0,a.jsx)("li",{children:(0,a.jsxs)("button",{type:"button",role:"option","aria-selected":t,className:(0,x.cn)("flex w-full cursor-pointer items-center gap-3 rounded-lg border border-solid px-3 py-2.5 text-left transition-colors",t?"border-[color:var(--ds-accent)] bg-[var(--green-light)]":"border-[color:var(--ds-border)] bg-[var(--ds-bg)] hover:bg-[var(--ds-main-tint)]"),onClick:()=>m(e.id),children:[(0,a.jsx)(E,{label:s.displayName,size:"md"}),(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("p",{className:"mb-0 truncate text-sm font-medium text-[var(--ds-text)]",children:s.displayName}),(0,a.jsx)("p",{className:"mb-0 mt-0.5 truncate text-xs text-[var(--ds-muted)]",children:e.id})]})]})},e.id)})})}),(0,a.jsxs)("div",{className:"flex shrink-0 justify-end gap-2 border-t border-[var(--ds-border)] bg-[var(--ds-sidebar)] px-5 py-3",children:[(0,a.jsx)(l.Button,{type:"button",variant:"plain-outline",size:"lg",onClick:u,className:"cursor-pointer",children:"取消"}),(0,a.jsx)(l.Button,{type:"button",variant:"default",size:"lg",disabled:!c,onClick:p,className:"cursor-pointer",children:"确定"})]})]})})}function Y(e){let{member:t,onRemove:s}=e;return(0,a.jsxs)("span",{className:(0,x.cn)("] relative inline-flex w-fit items-center rounded-full",s&&"pr-5"),children:[(0,a.jsx)(E,{label:t.displayName,size:"sm"}),s?(0,a.jsx)(d.IconTooltipButton,{icon:"CircleX",label:"移除 ".concat(t.displayName),tone:"muted",className:"absolute -right-3 -top-1.5 !h-4 !w-4 shrink-0",iconClassName:"!size-3.5 !text-[var(--text-secondary)]",onClick:s}):null]})}function $(e){let{members:t,onRemoveMember:r}=e,[l,n]=(0,s.useState)(!1),i=(0,s.useCallback)(e=>()=>{r(e)},[r]);return(0,a.jsxs)("div",{className:"relative shrink-0",onMouseEnter:()=>n(!0),onMouseLeave:()=>n(!1),children:[(0,a.jsxs)("span",{className:"inline-flex cursor-default items-center rounded-full border border-[var(--ds-border)] bg-[var(--surface-2)] px-2.5 py-1 text-sm font-medium text-[var(--ds-muted)]","aria-label":"还有 ".concat(t.length," 名队员"),children:["+",t.length]}),l?(0,a.jsx)("div",{className:"absolute left-0 top-full z-[60] pt-1.5",children:(0,a.jsxs)("div",{className:(0,x.cn)("min-w-[200px] max-w-[min(100vw-32px,320px)]","rounded-xl border border-[var(--ds-border)] bg-[var(--ds-bg)] p-2 shadow-[var(--shadow-float)]"),role:"tooltip",children:[(0,a.jsxs)("p",{className:"mb-2 px-1 text-xs text-[var(--ds-muted)]",children:["其余队员(",t.length,")"]}),(0,a.jsx)("div",{className:"flex max-h-[240px] flex-col gap-2 overflow-y-auto",children:t.map(e=>(0,a.jsx)(Y,{member:e,onRemove:i(e.id)},e.id))})]})}):null]})}function X(e){let{leaderId:t,members:r,onAgentsRefresh:l}=e,n=(0,y.useAppStore)(e=>e.wsUrl),i=(0,y.useAppStore)(e=>e.apiBase),[o,d]=(0,s.useState)(null),m=(0,s.useCallback)(e=>{(async()=>{let a=e.trim(),s=t.trim();if(s&&a&&!o&&await (0,I.confirmAlertDialog)({title:"确定移除队员?",description:"确定移除队员「".concat(a,"」?"),confirmText:"移除",cancelText:"取消"})){d(a);try{await (0,C.removeTeamMember)(n,i,s,a),await (null==l?void 0:l()),c.appToast.success("已移除队员")}catch(e){c.appToast.error("移除队员失败:".concat(e instanceof Error?e.message:String(e)))}finally{d(null)}}})()},[t,o,n,i,l]),x=r.slice(0,8),u=r.slice(8);return(0,a.jsxs)("div",{className:"flex min-w-0 max-w-full flex-wrap items-center gap-2",children:[x.map(e=>(0,a.jsx)(Y,{member:e},e.id)),u.length>0?(0,a.jsx)($,{members:u,onRemoveMember:m}):null]})}function Z(e){let{onEdit:t,onDelete:r,deleting:l=!1}=e,[i,o]=(0,s.useState)(!1);return(0,a.jsxs)(R.DropdownMenu,{open:i,onOpenChange:o,children:[(0,a.jsx)(R.DropdownMenuTrigger,{type:"button",className:"inline-flex h-8 w-8 shrink-0 cursor-pointer items-center justify-center rounded-md border-0 bg-transparent p-0 text-[var(--ds-muted)] hover:bg-transparent hover:text-[color:var(--ds-accent)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ds-accent)]","aria-label":"更多",onClick:e=>{e.stopPropagation()},children:(0,a.jsx)(n.default,{name:"More",size:20})}),(0,a.jsxs)(R.DropdownMenuContent,{align:"end",side:"bottom",sideOffset:6,className:"w-[172px] min-w-[172px] rounded-[var(--ds-radius-sm)] border border-[var(--ds-border)] bg-[var(--ds-bg)] p-1.5",children:[(0,a.jsxs)(R.DropdownMenuItem,{className:"h-9 rounded-xl px-2.5 text-base text-[var(--ds-text)] hover:bg-[var(--ds-item-active)] focus:bg-[var(--ds-item-hover)]",onClick:()=>{o(!1),t()},children:[(0,a.jsx)(n.default,{name:"Edit",size:16,className:"text-[var(--ds-muted)]"}),"编辑 Agent"]}),(0,a.jsx)(R.DropdownMenuSeparator,{className:"mx-1 my-1 bg-[var(--ds-border)]"}),(0,a.jsxs)(R.DropdownMenuItem,{variant:"destructive",disabled:l,className:"h-9 rounded-xl px-2.5 text-base hover:bg-[#fff1f1] focus:bg-[#fff1f1]",onClick:()=>{o(!1),r()},children:[(0,a.jsx)(n.default,{name:"Trash2",size:16}),"删除 Agent"]})]})]})}function J(e){let{team:r,allAgents:l,rosters:n,onAgentSaved:i}=e,o=(0,y.useAppStore)(e=>e.agentId),m=(0,y.useAppStore)(e=>e.wsUrl),u=(0,y.useAppStore)(e=>e.apiBase),p=o.trim()||"qihoo",h=r.id===p,b=n.getRoster(r.id),f=A(r.whentouse),v=(0,z.initialsFromLabel)(r.id).slice(0,1),[g,j]=(0,s.useState)(!1),[N,k]=(0,s.useState)(!1),[T,S]=(0,s.useState)(!1),F=n.getAvailableCandidates(r.id,l),E=(0,s.useCallback)(e=>{n.setCaptain(r.id,G(e))},[n,r.id]),D=(0,s.useCallback)(e=>{n.applyRoster(r.id,e)},[n,r.id]),M=(0,s.useCallback)(()=>{let e=r.id.trim();if(!e||e===p)return;let t=(0,_.buildAppNavHref)("/",{ensureAgent:!0,agent:e}),a=_.BASE_PATH.replace(/\/+$/,""),s="".concat(window.location.origin).concat(a).concat(t);window.open(s,"_blank","noopener")},[r.id,p]),R=(0,s.useCallback)(()=>{!function(e){var s;let r=e.agentId.trim();if(!r)return;let{openFlyout:l,closeFlyout:n}=w.useStageThreadFlyoutStore.getState(),i=null!=(s=e.onSaved)?s:t;l({width:w.CREATE_AGENT_FLYOUT_WIDTH,hideHeader:!0,bodyClassName:"!p-0 overflow-hidden",navigationGuard:!0,content:(0,a.jsx)(B,{mode:"edit",editAgentId:r,onClose:n,onSaved:i})})}({agentId:r.id,onSaved:i})},[r.id,i]),O=(0,s.useCallback)(async()=>{let e=r.id.trim();if(e&&await (0,I.confirmAlertDialog)({title:"确定删除 Agent?",description:"Agent「".concat(e,"」将被永久删除,此操作不可恢复。"),confirmText:"删除",cancelText:"取消"})){S(!0);try{await (0,C.deleteAgentItem)(m,u,e),c.appToast.success("已删除"),await (null==i?void 0:i())}catch(e){c.appToast.error("删除失败:".concat(e instanceof Error?e.message:String(e)))}finally{S(!1)}}},[r.id,m,u,i]);return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{className:(0,x.cn)("flex w-full flex-wrap items-center gap-4 rounded-xl border border-solid bg-[var(--ds-bg)] px-4 py-3 lg:flex-nowrap","border-[color:var(--ds-border)] transition-[border-color,box-shadow]","hover:shadow-[0_2px_12px_rgba(0,0,0,0.06)]"),children:[(0,a.jsxs)("div",{className:"flex min-w-[200px] flex-1 items-center gap-4",children:[(0,a.jsx)("span",{className:"inline-flex h-11 w-11 shrink-0 items-center justify-center rounded-lg text-lg font-semibold text-white",style:{background:(0,z.avatarBgForLabel)(r.id)},"aria-hidden":!0,children:v}),(0,a.jsxs)("div",{className:"min-w-0 flex-1 text-left",children:[(0,a.jsx)("button",{type:"button",onClick:M,disabled:h,className:(0,x.cn)("mb-0 block w-full truncate border-0 bg-transparent p-0 text-left text-base font-semibold text-[var(--ds-text)]",h?"cursor-default":"cursor-pointer hover:text-[color:var(--ds-accent)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ds-accent)]"),"aria-current":h?"true":void 0,"aria-label":h?"当前 Agent:".concat(r.id):"在新标签页切换到 Agent ".concat(r.id),children:r.id}),(0,a.jsx)("p",{className:"mb-0 mt-1 truncate text-sm text-[var(--ds-muted)]",children:f})]})]}),(0,a.jsx)("div",{className:"flex min-w-0 max-w-full flex-1 flex-col gap-1.5",children:(0,a.jsxs)("div",{className:"flex min-w-0 max-w-full flex-wrap items-center gap-2",children:[b.members.length>0?(0,a.jsx)(X,{leaderId:r.id,members:b.members,onAgentsRefresh:i}):(0,a.jsx)(L,{label:"队员列表",hint:"暂无队员",icon:"Team"}),(0,a.jsx)(d.IconTooltipButton,{icon:"Create",label:"添加队员",disabled:l.length<=1,className:(0,x.cn)("h-8 w-8 shrink-0 border border-dashed border-[color:var(--ds-border)] hover:border-[color:var(--ds-accent)] hover:text-[color:var(--ds-accent)]",l.length>1&&"text-[var(--ds-accent)] hover:bg-[var(--green-light)]"),iconClassName:"!size-4",onClick:()=>k(!0)})]})}),(0,a.jsx)(Z,{onEdit:R,onDelete:()=>void O(),deleting:T})]}),(0,a.jsx)(W,{open:g,onOpenChange:j,title:"设置队长",description:"从可选 Agent 中选择一名作为队长",candidates:F,onPick:E}),(0,a.jsx)(K,{open:N,onOpenChange:k,team:r,allAgents:l,rosters:n,onConfirm:D,onAgentsRefresh:i})]})}function Q(e){let{agentsState:t}=e,{agents:r,loading:l,error:n}=t,i=function(e){let[t,a]=(0,s.useState)({});(0,s.useEffect)(()=>{a(t=>{let a={...t};for(let r of e){var s;let l=null!=(s=t[r.id])?s:U;a[r.id]={captain:l.captain,members:function(e,t){return e.agentTeamMembers.map(e=>{let a=t.find(t=>t.id===e.agentType);return{id:e.agentType,displayName:(null==a?void 0:a.displayName.trim())||e.agentType}})}(r,e)}}return a})},[e]);let r=(0,s.useCallback)(e=>{var a;return null!=(a=t[e])?a:U},[t]),l=(0,s.useCallback)((e,t)=>{a(a=>{var s;let r=(null!=(s=a[e])?s:U).members.filter(e=>e.id!==t.id);return{...a,[e]:{captain:t,members:r}}})},[]),n=(0,s.useCallback)(e=>{a(t=>{var a;let s=null!=(a=t[e])?a:U;return{...t,[e]:{...s,captain:null}}})},[]),i=(0,s.useCallback)((e,t)=>{a(a=>{var s,r;let l=null!=(r=a[e])?r:U;return(null==(s=l.captain)?void 0:s.id)===t.id||l.members.some(e=>e.id===t.id)?a:{...a,[e]:{...l,members:[...l.members,t]}}})},[]),o=(0,s.useCallback)((e,t)=>{a(a=>{var s;let r=null!=(s=a[e])?s:U;return{...a,[e]:{...r,members:r.members.filter(e=>e.id!==t)}}})},[]);return{getRoster:r,setCaptain:l,removeCaptain:n,addMember:i,removeMember:o,applyRoster:(0,s.useCallback)((e,t)=>{let s=t.captain,r=t.members.filter(e=>e.id!==(null==s?void 0:s.id));a(t=>({...t,[e]:{captain:s,members:r}}))},[]),getAvailableCandidates:(0,s.useCallback)((e,a)=>{var s;let r=null!=(s=t[e])?s:U,l=new Set([e,...r.captain?[r.captain.id]:[],...r.members.map(e=>e.id)]);return a.filter(e=>!l.has(e.id))},[t])}}(r);return(0,a.jsx)("div",{className:"flex min-h-0 flex-1 flex-col rounded-xl border border-[var(--ds-border)] bg-[var(--ds-bg)] shadow-[var(--shadow-sm)]",children:(0,a.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto p-3",children:l?(0,a.jsx)("div",{className:"flex min-h-[200px] items-center justify-center text-sm text-[var(--ds-muted)]",children:"加载中…"}):n?(0,a.jsxs)("div",{className:"flex min-h-[200px] items-center justify-center px-4 text-center text-sm text-red-600",children:["加载失败:",n]}):0===r.length?(0,a.jsx)("div",{className:"flex min-h-[200px] items-center justify-center px-4 text-center text-sm text-[var(--ds-muted)]",children:"暂无 Agent,点击右上角「新建 Agent」创建"}):(0,a.jsx)("ul",{className:"m-0 list-none space-y-4 p-0",role:"list",children:r.map(e=>(0,a.jsx)("li",{children:(0,a.jsx)(J,{team:e,allAgents:r,rosters:i,onAgentSaved:t.loadAgents})},e.id))})})})}function ee(e){let{label:t,value:s,hint:r,icon:l}=e;return(0,a.jsxs)("div",{className:"mt-2 flex min-w-0 flex-1 items-center gap-4 rounded-xl border border-[var(--ds-border)] bg-white px-4 py-3.5 shadow-[var(--shadow-sm)]",children:[(0,a.jsx)("span",{className:"flex size-10 shrink-0 items-center justify-center rounded-full bg-[var(--ds-border)]","aria-hidden":!0,children:(0,a.jsx)(n.default,{name:l,size:20,className:"text-[var(--ds-text)]"})}),(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("span",{className:"block text-sm text-[var(--ds-muted)]",children:t}),(0,a.jsx)("span",{className:"mt-1 block text-2xl font-semibold leading-none text-[var(--ds-text)]",children:s}),(0,a.jsx)("span",{className:"mt-1 block text-xs text-[var(--ds-muted)]",children:r})]})]})}function et(e){let{agents:t,className:r}=e,l=(0,s.useMemo)(()=>{let e=t.length;return[{label:"团队总数",value:t.filter(e=>e.agentTeamMembers.length>=1).length,icon:"Teams",hint:"队员数大于 1 的 Agent 编组"},{label:"成员总数",value:e,icon:"Agent",hint:"角色、能力和工具的智能执行体"}]},[t]);return(0,a.jsx)("div",{className:(0,x.cn)("flex flex-wrap gap-3",r),children:l.map(e=>(0,a.jsx)(ee,{...e},e.label))})}function ea(){let e=function(){let e=(0,y.useAppStore)(e=>e.wsUrl),t=(0,y.useAppStore)(e=>e.apiBase),[a,r]=(0,s.useState)([]),[l,n]=(0,s.useState)(!0),[i,o]=(0,s.useState)(null),d=(0,s.useCallback)(async()=>{n(!0),o(null);try{let a=await (0,C.listAgentsForManage)(e,t);r(a)}catch(t){let e=t instanceof Error?t.message:String(t);r([]),o(e),c.appToast.error("加载失败:".concat(e))}finally{n(!1)}},[e,t]);return(0,s.useEffect)(()=>{d()},[d]),{agents:a,loading:l,error:i,loadAgents:d}}();(0,s.useEffect)(()=>(t=e.loadAgents,()=>{t=void 0}),[e.loadAgents]);let i=(0,s.useCallback)(()=>{!function(){var e;let s=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{openFlyout:r,closeFlyout:l}=w.useStageThreadFlyoutStore.getState(),n=null!=(e=s.onSaved)?e:t;r({width:w.CREATE_AGENT_FLYOUT_WIDTH,hideHeader:!0,bodyClassName:"!p-0 overflow-hidden",navigationGuard:!0,content:(0,a.jsx)(B,{mode:"create",onClose:l,onSaved:n})})}()},[]);return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(r.ManageChromeHeaderActions,{children:(0,a.jsx)("div",{className:"flex flex-wrap items-center",children:(0,a.jsxs)(l.Button,{type:"button",variant:"default",size:"lg",onClick:i,className:"mr-[12px] cursor-pointer",children:[(0,a.jsx)(n.default,{name:"Create",size:16,className:"align-middle"}),"新建 Agent"]})})}),(0,a.jsx)(et,{agents:e.agents,className:"mb-4"}),(0,a.jsx)(Q,{agentsState:e})]})}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,18566,(e,t,n)=>{t.exports=e.r(76562)},85570,e=>{"use strict";e.s(["WorkspaceRuntimeContext",()=>n,"useWorkspaceRuntime",()=>r]);var t=e.i(71645);let n=(0,t.createContext)(null);function r(){let e=(0,t.useContext)(n);if(!e)throw Error("useWorkspaceRuntime must be used within WorkspaceShell");return e}},18253,e=>{"use strict";e.s(["useGuardedAppNavigation",()=>s]);var t=e.i(71645),n=e.i(18566),r=e.i(61196);function s(){let e=(0,n.useRouter)(),s=(0,r.useStageThreadFlyoutStore)(e=>e.confirmNavigateAway);return{push:(0,t.useCallback)(async t=>{await s(t)&&e.push(t)},[s,e]),router:e}}},67585,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"BailoutToCSR",{enumerable:!0,get:function(){return s}});let r=e.r(32061);function s(e){let{reason:t,children:n}=e;if("undefined"==typeof window)throw Object.defineProperty(new r.BailoutToCSRError(t),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return n}},9885,(e,t,n)=>{"use strict";function r(e){return e.split("/").map(e=>encodeURIComponent(e)).join("/")}Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"encodeURIPath",{enumerable:!0,get:function(){return r}})},52157,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"PreloadChunks",{enumerable:!0,get:function(){return l}});let r=e.r(18050),s=e.r(74080),a=e.r(63599),i=e.r(9885);function l(e){let{moduleIds:t}=e;if("undefined"!=typeof window)return null;let n=a.workAsyncStorage.getStore();if(void 0===n)return null;let l=[];if(n.reactLoadableManifest&&t){let e=n.reactLoadableManifest;for(let n of t){if(!e[n])continue;let t=e[n].files;l.push(...t)}}return 0===l.length?null:(0,r.jsx)(r.Fragment,{children:l.map(e=>{let t=n.assetPrefix+"/_next/"+(0,i.encodeURIPath)(e);return e.endsWith(".css")?(0,r.jsx)("link",{precedence:"dynamic",href:t,rel:"stylesheet",as:"style"},e):((0,s.preload)(t,{as:"script",fetchPriority:"low"}),null)})})}},69093,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"default",{enumerable:!0,get:function(){return u}});let r=e.r(18050),s=e.r(71645),a=e.r(67585),i=e.r(52157);function l(e){return{default:e&&"default"in e?e.default:e}}let o={loader:()=>Promise.resolve(l(()=>null)),loading:null,ssr:!0},u=function(e){let t={...o,...e},n=(0,s.lazy)(()=>t.loader().then(l)),u=t.loading;function d(e){let l=u?(0,r.jsx)(u,{isLoading:!0,pastDelay:!0,error:null}):null,o=!t.ssr||!!t.loading,d=o?s.Suspense:s.Fragment,c=t.ssr?(0,r.jsxs)(r.Fragment,{children:["undefined"==typeof window?(0,r.jsx)(i.PreloadChunks,{moduleIds:t.modules}):null,(0,r.jsx)(n,{...e})]}):(0,r.jsx)(a.BailoutToCSR,{reason:"next/dynamic",children:(0,r.jsx)(n,{...e})});return(0,r.jsx)(d,{...o?{fallback:l}:{},children:c})}return d.displayName="LoadableComponent",d}},70703,(e,t,n)=>{"use strict";Object.defineProperty(n,"__esModule",{value:!0}),Object.defineProperty(n,"default",{enumerable:!0,get:function(){return s}});let r=e.r(55682)._(e.r(69093));function s(e,t){var n;let s={};"function"==typeof e&&(s.loader=e);let a={...s,...t};return(0,r.default)({...a,modules:null==(n=a.loadableGenerated)?void 0:n.modules})}("function"==typeof n.default||"object"==typeof n.default&&null!==n.default)&&void 0===n.default.__esModule&&(Object.defineProperty(n.default,"__esModule",{value:!0}),Object.assign(n.default,n),t.exports=n.default)},82787,87968,e=>{"use strict";e.s(["MANAGE_DEFAULT_HREF",()=>f,"getBridgeSidebarManageRoutes",()=>g,"getManageRoute",()=>m,"isManageRouteEnabled",()=>h,"isManageSideNavPath",()=>v],82787);var t=e.i(70703),n=e.i(71645),r=e.i(18050);e.s(["Spinner",()=>i],87968);var s=e.i(72064),a=e.i(75157);function i(e){let{className:t}=e;return(0,r.jsx)(s.default,{name:"Loader2",size:16,className:(0,a.cn)("animate-spin text-muted-foreground",t)})}function l(e){let{className:t}=e;return(0,r.jsxs)("div",{className:(0,a.cn)("flex min-h-[40vh] flex-1 items-center justify-center gap-2 text-sm text-zinc-500",t),children:[(0,r.jsx)(i,{})," 加载中"]})}function o(){return(0,r.jsx)("div",{className:"flex min-h-0 min-w-0 flex-1 flex-col items-center justify-center text-[var(--ds-muted)]",children:"即将上线"})}var u=e.i(97249);function d(e){return(0,t.default)(e,{loading:()=>(0,n.createElement)(l)})}let c=[{key:"mcp",slug:"mcp",label:"MCP",title:"MCP管理",description:"管理外部工具与数据源。可以导入、编辑、移除或禁用 MCP 服务。",chrome:"feature",icon:"Mcp",headerIcon:"Mcp",enabled:!0,visibleInNav:!1,visibleInBridgeSidebar:!0,Component:d(()=>e.A(72234).then(e=>({default:e.McpManageView})))},{key:"tools",slug:"tools",label:"工具",title:"工具管理",description:"管理当前 Agent 已挂载的工具列表",chrome:"feature",icon:"Tool",headerIcon:"Tool",enabled:!0,visibleInNav:!1,visibleInBridgeSidebar:!0,Component:d(()=>e.A(58332).then(e=>({default:e.ToolsManageView})))},{key:"skills",slug:"skills",label:"技能",title:"技能管理",description:"管理当前 Agent 已挂载的技能",chrome:"feature",icon:"Skill",enabled:!0,headerIcon:"Skill",visibleInNav:!1,visibleInBridgeSidebar:!0,Component:d(()=>e.A(48583).then(e=>({default:e.SkillsManageView})))},{key:"teams",slug:"teams",label:"agent / teams",title:"agent / teams 管理",description:"管理 Agent 团队与协作编排。",chrome:"feature",icon:"Teams",enabled:!0,visibleInNav:!1,headerIcon:"Agent2",visibleInBridgeSidebar:!0,Component:d(()=>e.A(2578).then(e=>({default:e.TeamsView})))},{key:"task",slug:"task",label:"定时任务",title:"定时任务",description:"管理计划执行的任务与触发记录。",chrome:"feature",icon:"Task",enabled:!0,headerIcon:"Calendar",visibleInNav:!1,visibleInBridgeSidebar:!0,Component:d(()=>e.A(94065).then(e=>({default:e.TaskView})))},{key:"add-account",slug:"add-account",label:"账户",title:"账户",description:"",chrome:"side-nav",icon:"Account",enabled:!0,visibleInNav:!0,children:[{key:"basic",slug:"basic",label:"基本信息",title:"基本信息",description:"",chrome:"side-nav",tabVariant:"pill",showTitle:!1,Component:d(()=>e.A(34116).then(e=>({default:e.AddAccountView})))}]},{key:"env",slug:"env",label:"服务商",title:"服务商",description:"管理 API 服务商以访问模型。",chrome:"side-nav",icon:"Server",enabled:!0,visibleInNav:!0,Component:d(()=>e.A(1861).then(e=>({default:e.EnvManageView})))},{key:"permissions",slug:"permissions",label:"权限",title:"权限",description:"管理平台访问权限与角色策略。",chrome:"side-nav",enabled:!1,visibleInNav:!1,Component:o},{key:"general",slug:"general",label:"通用",title:"通用",description:"平台通用配置与偏好设置。",chrome:"side-nav",enabled:!1,visibleInNav:!1,Component:o},{key:"about",slug:"about",label:"关于",title:"关于",description:"版本信息与平台说明。",chrome:"side-nav",enabled:!0,visibleInNav:!1,Component:o}].map(e=>{var t,n;let{children:r,...s}=e;return{...s,href:(0,u.buildSettingsHref)(e.slug),...r?{children:(t=e.slug,n=e.chrome,r.map(e=>{var r,s;let a="".concat(t,"/").concat(e.slug);return{...e,slug:a,href:(0,u.buildSettingsHref)(a),chrome:null!=(r=e.chrome)?r:n,enabled:null==(s=e.enabled)||s,visibleInNav:!1}}))}:{}}});function p(e){return e.Component}let f=function(){var e,t,n,r,s,a;let i=null!=(n=null!=(t=null!=(e=c.find(e=>e.enabled&&e.visibleInNav&&"side-nav"===e.chrome))?e:c.find(e=>e.enabled&&"side-nav"===e.chrome))?t:c.find(e=>"side-nav"===e.chrome))?n:c[0],l=null!=(a=null==(r=i.children)?void 0:r.find(e=>e.enabled))?a:null==(s=i.children)?void 0:s[0];if(l)return l;if(p(i))return i;let o=c.find(e=>p(e));return o||c.flatMap(e=>{var t;return null!=(t=e.children)?t:[]})[0]}().href;function m(e){return c.find(t=>t.key===e)}function g(){return c.filter(e=>e.enabled&&!0===e.visibleInBridgeSidebar&&void 0!==e.icon).map(e=>{let{key:t,label:n,href:r,icon:s,headerIcon:a}=e;return{key:t,label:n,href:r,icon:s,headerIcon:null!=a?a:s}})}function h(e){var t;return(null===(t=(0,u.getSettingsRouteByPathname)(e,function(){let e=[];for(let n of c){var t;p(n)&&e.push(n),(null==(t=n.children)?void 0:t.length)&&e.push(...n.children)}return e}()))||void 0===t?void 0:t.enabled)!==!1}function v(e){if(!e)return!1;let t=c.filter(e=>"side-nav"===e.chrome);return(0,u.isSettingsRoutePath)(e,t)}},21199,41143,e=>{"use strict";e.s(["WorkspaceShell",()=>J],21199);var t=e.i(18050),n=e.i(71645),r=e.i(18566),s=e.i(65934),a=e.i(36845),i=e.i(20090);let l={EVENT:{SESSION_META:"session.meta",SESSION_READY:"session.ready",SESSION_ERROR:"session.error",QUERY_PROGRESS:"query.progress",CONVERSATION_DELTA:"conversation.delta",RUN_LIFECYCLE:"run.lifecycle",HISTORY_REPLAY:"history.replay",TURN_TERMINAL:"turn.terminal",PERMISSION_REQUEST:"permission.request"}};e.s(["SCHEDULE_TOOL_NAME",()=>o,"buildScheduledTaskIndex",()=>f,"parseScheduleToolResult",()=>p,"partitionScheduledSegments",()=>m,"retainScheduledTriggerFlag",()=>d,"withScheduledTriggerMeta",()=>u],41143);let o="ScheduleTool";function u(e,t,n){return e&&"object"==typeof e&&(t||n)?{...e,...t?{__scheduledTrigger:!0}:{},...n?{__turnId:n}:{}}:e}function d(e,t){if(!e||"object"!=typeof e)return t;let n=e.data,r=!!n&&"object"==typeof n&&!0===n.scheduledTrigger,s=!0===e.scheduledTrigger||!0===e.__scheduledTrigger,a="string"==typeof e.turnId?e.turnId:"",i="string"==typeof e.__turnId?e.__turnId:"";return r||s||a||i?{...t,...r||s?{__scheduledTrigger:!0}:{},...a||i?{__turnId:a||i}:{}}:t}function c(e){return!!e&&"object"==typeof e&&!0===e.__scheduledTrigger}function p(e,t){if("string"==typeof e)try{let t=JSON.parse(e);if(t&&"object"==typeof t)return t}catch(e){}if(e&&"object"==typeof e)return e;if(t&&"object"==typeof t){let e=t.toolUseResult;if(e&&"object"==typeof e)return e}return null}function f(e){let t=new Map,n=new Map;for(let c of e){let e=v(c);for(let g of function(e){if(!e||"object"!=typeof e)return[];let t=e.message,n=null==t?void 0:t.content;return Array.isArray(n)?n.filter(e=>!!e&&"object"==typeof e):[]}(c)){var r,s,a,i,l,u,d,f,m,b;if("tool_use"===g.type&&g.name===o){let t="string"==typeof g.id?g.id:"";if(!t)continue;let r=(b=g.input)&&"object"==typeof b?b:{},s=function(e){if(null==e||""===e)return;let t=Number(e);return Number.isFinite(t)?t:void 0}(r.delayMinutes);n.set(t,{toolUseId:t,id:r.id,prompt:null!=(a=r.prompt)?a:"",delayMinutes:s,createdAt:e,status:"cancel"===r.action?"cancelled":"scheduled"});continue}if("tool_result"!==g.type||"string"!=typeof g.tool_use_id)continue;let h=n.get(g.tool_use_id);if(!h)continue;let v=p(g.content,c);if(!v){n.delete(g.tool_use_id);continue}let y=v.id||h.id||"pending-".concat(g.tool_use_id),S={id:y,prompt:null!=(i=h.prompt)?i:"",fireAt:null!=(u=null!=(l=null==(r=v.scheduleClock)?void 0:r.utcIso)?l:null==(s=v.scheduleClock)?void 0:s.localDateTime)?u:"",createdAt:null!=(d=h.createdAt)?d:"",delayMinutes:null!=(f=v.delayMinutes)?f:h.delayMinutes,cron:v.cron,recurring:v.recurring,status:v.error?"failed":null!=(m=h.status)?m:"scheduled"};t.set(y,S),n.delete(g.tool_use_id)}}for(let n of e){if(!c(n)||"user"!==g(n))continue;let e=h(n);if(e){for(let r of t.values())if(r.prompt===e&&"scheduled"===r.status){r.status="fired",r.firedTurnId=function(e){if(!e||"object"!=typeof e)return"";let t=e.__turnId;return"string"==typeof t?t:""}(n);break}}}return t}function m(e,t){let n=new Map,r=new Set,s=0;for(;s<e.length;){var a;if(!c(e[s])){s+=1;continue}let i=s,l=[];for(;s<e.length&&c(e[s]);)l.push(e[s]),s+=1;let o=s-1,u=null!=(a=l.filter(e=>"user"===g(e)).map(e=>h(e)).find(e=>e.trim().length>0))?a:"",d=v(l[0]),p=l.filter(e=>"user"!==g(e)),f=function(e,t){if(e&&t.trim()){for(let n of e.values())if(n.prompt===t)return n.id}}(t,u);n.set(i,{kind:"scheduledTurn",startIndex:i,endIndex:o,dispatchedPrompt:u,triggeredAt:d,taskId:f,assistantMessages:p});for(let e=i+1;e<=o;e+=1)r.add(e)}return{scheduledStarts:n,consumed:r}}function g(e){if(!e||"object"!=typeof e)return"";let t=e.type;if("string"==typeof t)return t;let n=e.message;return"string"==typeof(null==n?void 0:n.role)?n.role:""}function h(e){if(!e||"object"!=typeof e)return"";let t=e.message,n=null==t?void 0:t.content;return"string"==typeof n?n:Array.isArray(n)?n.map(e=>e&&"object"==typeof e?"text"===e.type&&"string"==typeof e.text?e.text:"markdown"===e.type&&"string"==typeof e.content?e.content:"":"").filter(Boolean).join("\n").trim():""}function v(e){var t;if(!e||"object"!=typeof e)return"";let n=e.message,r=n&&"object"==typeof n?n.timestamp:void 0,s=null!=(t=null!=r?r:e.timestamp)?t:e.ts;return"string"==typeof s?s:""}var b=e.i(55227);function y(e){let t=Number(e);return Number.isFinite(t)?Math.max(0,Math.floor(t)):0}function S(e){let t=e&&"object"==typeof e?Number(e.protocolVersion):NaN;return"object"==typeof e&&null!==e&&"protocolVersion"in e&&Number.isFinite(t)&&3===t&&"string"==typeof e.type}let x=new Map;function j(e){if(!e||"object"!=typeof e)return"";if(("string"==typeof e.type?e.type:"unknown")===l.EVENT.TURN_TERMINAL){let t="string"==typeof e.resultText?e.resultText:"",n="string"==typeof e.reason?e.reason:"";return"resolved"==("resolved"===e.status?"resolved":"failed")?t:"turn.terminal failed: ".concat(n||"unknown")}try{return"```json\n".concat(JSON.stringify(e,null,2).slice(0,8e3),"\n```")}catch(t){return String(e)}}var A=e.i(87243),N=e.i(50711);async function k(e,t,n){var r;let a=String(e||"").trim();if(!a)return!1;let i=s.useAppStore.getState();if(a===(i.agentId.trim()||"qihoo"))return!1;let l=(null==n||null==(r=n.displayName)?void 0:r.trim())||a;i.startDraftSession(),i.resetAgentConfig(),i.setAgentId(a),i.setCurrentWorkspaceAgent({id:a,displayName:l});try{await t.loadSessions()}catch(e){}t.loadAgentConfig();let o=s.useAppStore.getState().sessionId.trim();return t.preferReconnect?t.reconnect():t.switchSession(o,a),!0}var I=e.i(92413),w=e.i(55146),C=e.i(72064),E=e.i(46798),T=e.i(85570),R=e.i(97249),_=e.i(75157),M=e.i(8279),P=e.i(52727),L=e.i(18253);function O(e){let{collapsed:r,onGoToSettings:a}=e,{push:i}=(0,L.useGuardedAppNavigation)(),l=(0,s.useAppStore)(e=>e.currentWorkspaceAgent),o=(0,s.useAppStore)(e=>e.agentId),u=(0,s.useAppStore)(e=>e.wsUrl),d=(0,s.useAppStore)(e=>e.apiBase),c=(0,s.useAppStore)(e=>e.setCurrentWorkspaceAgent),{switchWorkspaceAgent:p}=(0,T.useWorkspaceRuntime)(),f=o.trim()||"qihoo",m=(null==l?void 0:l.id)===f&&l.displayName.trim()||f,g=(0,M.initialsFromLabel)(m),[h,v]=(0,n.useState)(!1),[b,y]=(0,n.useState)([]),[S,x]=(0,n.useState)(!1),[j,A]=(0,n.useState)(null),N=(0,n.useRef)(null),k=(0,n.useCallback)(()=>{N.current&&(clearTimeout(N.current),N.current=null)},[]),I=(0,n.useCallback)(()=>{k(),v(!0)},[k]),w=(0,n.useCallback)(()=>{k(),N.current=setTimeout(()=>{v(!1),N.current=null},120)},[k]),O=(0,n.useCallback)(()=>{v(!1),null==a||a()},[a]),D=(0,n.useCallback)(async e=>{let t=e.id.trim();v(!1),t&&t!==f&&await p(t,e.displayName)&&i((0,R.buildAppNavHref)("/",{ensureAgent:!0,agent:t,preserveSessionId:!1}))},[f,i,p]);return(0,n.useEffect)(()=>{if(!h)return;let e=!1;return x(!0),A(null),y([]),(0,P.listAgents)(u,d).then(t=>{e||y(t)}).catch(t=>{e||A(String(t))}).finally(()=>{e||x(!1)}),()=>{e=!0}},[h,u,d]),(0,n.useEffect)(()=>{if(!b.length)return;let e=b.find(e=>e.id===f);e&&((null==l?void 0:l.id)!==e.id||l.displayName!==e.displayName)&&c(e)},[b,f,l,c]),(0,n.useEffect)(()=>()=>{N.current&&clearTimeout(N.current)},[]),(0,t.jsxs)("div",{className:(0,_.cn)("shrink-0 border-t border-solid border-[var(--ds-border)] transition",r?"flex w-full justify-center p-[1rem_.75rem]":"flex items-center gap-2 p-[1rem_.75rem]"),onClick:r?e=>e.stopPropagation():void 0,children:[(0,t.jsxs)("div",{className:(0,_.cn)("relative min-w-0",!r&&"flex-1"),onMouseEnter:I,onMouseLeave:w,children:[(0,t.jsxs)("div",{className:(0,_.cn)("flex min-w-0 cursor-pointer items-center gap-2 rounded-lg px-0.5 py-0.5",r&&"w-full justify-center"),children:[(0,t.jsx)("span",{className:"inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full text-xs font-semibold text-white",style:{background:"var(--avatar-bg)"},children:g}),r?null:(0,t.jsx)("span",{className:"min-w-0 truncate text-base text-[var(--ds-text)]",children:m})]}),h?(0,t.jsx)("div",{className:"absolute bottom-full left-0 z-50 pb-2 shadow-[var(--shadow-float)]",onMouseEnter:I,onMouseLeave:w,children:(0,t.jsx)("div",{className:(0,_.cn)("flex max-h-[300px] w-[260px] max-w-[min(100vw-24px,260px)] flex-col overflow-hidden rounded-[var(--ds-radius-sm)] border border-solid border-[var(--ds-border)] bg-[var(--ds-bg)]","shadow-[var(--shadow-float)]"),children:(0,t.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto p-1.5",role:"listbox","aria-label":"切换 Agent",children:S?(0,t.jsx)("div",{className:"px-2 py-3 text-sm text-[var(--ds-muted)]",children:"加载中…"}):j?(0,t.jsxs)("div",{className:"px-2 py-3 text-sm text-red-600",children:["加载失败: ",j]}):0===b.length?(0,t.jsx)("div",{className:"px-2 py-3 text-sm text-[var(--ds-muted)]",children:"暂无 agent"}):b.map(e=>{let n=e.id===f,r=(0,M.initialsFromLabel)(e.displayName);return(0,t.jsxs)("button",{type:"button",role:"option",className:"flex w-full cursor-pointer items-center gap-2 rounded-xl border-0 bg-transparent px-2 py-2 text-left text-base hover:bg-[var(--ds-item-hover)] focus-visible:outline-none","aria-selected":n,onClick:()=>D(e),children:[(0,t.jsx)("span",{className:"inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-full text-xs font-semibold text-white",style:{background:"var(--avatar-bg)"},children:r}),(0,t.jsxs)("span",{className:"min-w-0 flex-1 leading-tight",children:[(0,t.jsx)("span",{className:"block truncate text-[var(--ds-text)]",children:e.displayName}),e.displayName!==e.id?(0,t.jsx)("span",{className:"block truncate text-xs text-[var(--ds-muted)]",children:e.id}):null]}),n?(0,t.jsx)("span",{className:"shrink-0","aria-label":"当前 Agent",children:(0,t.jsx)(C.default,{name:"Check",size:16,className:"text-[var(--ds-accent)]"})}):null]},e.id)})})})}):null]}),(0,t.jsx)(E.TooltipProvider,{delayDuration:150,children:(0,t.jsxs)(E.Tooltip,{children:[(0,t.jsx)(E.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("button",{type:"button",className:"inline-flex h-7 w-7 shrink-0 cursor-pointer items-center justify-center rounded-md border-0 bg-transparent text-[var(--ds-muted)] hover:bg-[var(--ds-item-hover)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ds-accent)]","aria-label":"设置",onClick:O,children:(0,t.jsx)(C.default,{name:"More",size:16,className:"shrink-0"})})}),(0,t.jsx)(E.TooltipContent,{side:"top",children:(0,t.jsx)("p",{children:"设置"})})]})})]})}var D=e.i(82787);let W="bridge-sidebar-collapsed";function z(e){let{onNewSession:a,onSelectSession:i,deleteSessionById:l}=e,{push:o,router:u}=(0,L.useGuardedAppNavigation)(),d=(0,r.usePathname)(),c=(0,s.useAppStore)(e=>e.lastSessions),p=(0,s.useAppStore)(e=>e.sessionId),f=(0,s.useAppStore)(e=>e.brand),m=(0,s.useAppStore)(e=>e.agentId),[g,h]=(0,n.useState)(!1),v=(0,n.useRef)(!1),[b,y]=(0,n.useState)(null),[S,x]=(0,n.useState)(!0),j=(0,n.useMemo)(()=>(0,D.getBridgeSidebarManageRoutes)(),[]),A=(0,n.useCallback)((e,t)=>(0,R.buildAppNavHref)(e,{ensureAgent:null==t?void 0:t.ensureAgent,agent:m,preserveSessionId:"/"===e&&!(null==t?void 0:t.clearSessionId),sessionId:null==t?void 0:t.sessionId}),[m]),N=(0,n.useCallback)(e=>{let t=(0,R.normalizeAppPathname)(d),n=(0,R.normalizeAppPathname)(e);return t===n||t.startsWith("".concat(n,"/"))},[d]),k=(0,n.useCallback)(e=>{o(A(e,{ensureAgent:!0}))},[o,A]);(0,n.useEffect)(()=>{let e,t,n=[...["env","add-account"].flatMap(e=>{var t;let n=null==(t=(0,D.getManageRoute)(e))?void 0:t.href;return n?[A(n,{ensureAgent:!0})]:[]}),...j.map(e=>A(e.href,{ensureAgent:!0}))],r=()=>{for(let e of n)try{u.prefetch(e)}catch(e){}};return"requestIdleCallback"in window?e=window.requestIdleCallback(r,{timeout:2500}):t=setTimeout(r,200),()=>{void 0!==e&&window.cancelIdleCallback(e),void 0!==t&&clearTimeout(t)}},[u,A,j]),(0,n.useEffect)(()=>{try{let e=window.localStorage.getItem(W);"true"===e&&h(!0)}catch(e){}finally{v.current=!0}},[]),(0,n.useEffect)(()=>{if(v.current)try{window.localStorage.setItem(W,String(g))}catch(e){}},[g]),(0,n.useEffect)(()=>{if(!b)return;let e=e=>{let t=e.target;!(!(t instanceof Element)||t.closest("[data-session-menu-wrap]"))&&(t.closest('[data-slot="dropdown-menu-content"]')||y(null))};return document.addEventListener("pointerdown",e,!0),()=>document.removeEventListener("pointerdown",e,!0)},[b]);let T=(0,n.useCallback)(()=>{o(A(D.MANAGE_DEFAULT_HREF,{ensureAgent:!0}))},[o,A]);return(0,t.jsx)("aside",{className:"sidebar ".concat(g?"is-collapsed h-dvh max-h-dvh min-h-0 self-start":""),"data-region":"sidebar-panels",onClick:()=>{g&&h(!1)},children:g?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"flex min-h-0 flex-1 flex-col items-center gap-[10px] overflow-y-auto overscroll-contain pt-3",children:(0,t.jsxs)(E.TooltipProvider,{side:"right",children:[(0,t.jsx)("div",{className:"group relative flex h-8 w-8 shrink-0 cursor-pointer items-center justify-center",onClick:e=>e.stopPropagation(),children:(0,t.jsx)("div",{className:"pointer-events-none absolute inset-0 flex items-center justify-center transition-opacity group-hover:pointer-events-auto group-hover:opacity-100",children:(0,t.jsxs)(E.Tooltip,{children:[(0,t.jsx)(E.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("button",{type:"button",className:"sidebar-collapsed-icon-btn",title:"展开侧边栏","aria-label":"展开侧边栏",onClick:e=>{e.preventDefault(),e.stopPropagation(),h(!1)},children:(0,t.jsx)(C.default,{name:"Layout",size:17,color:"#8f8f8f"})})}),(0,t.jsx)(E.TooltipContent,{children:(0,t.jsx)("p",{children:"展开侧边栏"})})]})})}),(0,t.jsxs)(E.Tooltip,{children:[(0,t.jsx)(E.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("button",{type:"button",className:"sidebar-collapsed-icon-btn",title:"新聊天","aria-label":"新聊天",onClick:e=>{e.preventDefault(),e.stopPropagation(),a(),o(A("/",{clearSessionId:!0}))},children:(0,t.jsx)(C.default,{name:"Add",size:16,className:"text-zinc-700"})})}),(0,t.jsx)(E.TooltipContent,{children:(0,t.jsx)("p",{children:"新聊天"})})]}),j.map(e=>{let n=N(e.href);return(0,t.jsxs)(E.Tooltip,{children:[(0,t.jsx)(E.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("button",{type:"button",className:"sidebar-collapsed-icon-btn ".concat(n?"bg-[var(--ds-item-active)] text-[var(--ds-accent)]":""),title:e.label,"aria-label":e.label,"aria-current":n?"page":void 0,onClick:t=>{t.preventDefault(),t.stopPropagation(),k(e.href)},children:(0,t.jsx)(C.default,{name:e.icon,size:16,className:n?"text-[var(--ds-accent)]":"text-zinc-700",strokeWidth:1.2})})}),(0,t.jsx)(E.TooltipContent,{children:(0,t.jsx)("p",{children:e.label})})]},e.key)})]})}),(0,t.jsx)("div",{className:"w-full shrink-0",onClick:e=>e.stopPropagation(),children:(0,t.jsx)(O,{collapsed:!0,onGoToSettings:T})})]}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"sidebar-brand",children:(0,t.jsxs)("div",{className:"sidebar-brand-title-row flex items-center justify-between",children:[(0,t.jsx)("div",{className:"logo flex min-w-0 items-center gap-2",children:(0,t.jsx)("span",{className:"truncate text-zinc-900",children:f})}),(0,t.jsx)(E.TooltipProvider,{side:"right",children:(0,t.jsxs)(E.Tooltip,{children:[(0,t.jsx)(E.TooltipTrigger,{asChild:!0,children:(0,t.jsx)("button",{type:"button",className:"sidebar-icon-btn",title:"收起侧边栏","aria-label":"收起侧边栏",onClick:e=>{e.preventDefault(),e.stopPropagation(),h(!0)},children:(0,t.jsx)(C.default,{name:"Layout",size:17,color:"#8f8f8f"})})}),(0,t.jsx)(E.TooltipContent,{children:(0,t.jsx)("p",{children:"收起侧边栏"})})]})})]})}),(0,t.jsx)("div",{className:"new-chat",children:(0,t.jsxs)("div",{className:"mb-4 ml-2 mr-2 mt-2 flex cursor-pointer items-center gap-2.5 rounded-2xl px-2 py-2 text-base text-zinc-700 transition-colors hover:bg-white/70",title:"开启新对话","aria-label":"开启新对话",onClick:e=>{e.preventDefault(),a(),o(A("/",{clearSessionId:!0}))},children:[(0,t.jsx)("span",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-[var(--ds-item-active)] text-[var(--ds-accent)]","aria-hidden":!0,children:(0,t.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",children:(0,t.jsx)("path",{d:"M12 5v14M5 12h14"})})}),(0,t.jsx)("span",{className:"min-w-0 font-medium",children:"新会话"})]})}),(0,t.jsx)("div",{className:"sidebar-drawers",children:j.map(e=>{let n=N(e.href);return(0,t.jsxs)("div",{className:"m-[.35rem_.35rem_0] flex cursor-pointer items-center rounded-[var(--ds-radius-sm)] p-[.45rem_.75rem] ".concat(n?"bg-[var(--ds-item-active)] text-[var(--ds-accent)]":"hover:bg-[var(--ds-item-active)] hover:text-zinc-900"),role:"button",tabIndex:0,"aria-current":n?"page":void 0,onClick:t=>{t.preventDefault(),t.stopPropagation(),k(e.href)},onKeyDown:t=>{("Enter"===t.key||" "===t.key)&&k(e.href)},children:[(0,t.jsx)(C.default,{name:e.icon,size:16,className:"mr-3 text-zinc-700",strokeWidth:1.2}),(0,t.jsx)("span",{className:"text-base text-zinc-900",children:e.label})]},e.key)})}),(0,t.jsx)("div",{className:"sidebar-drawers",children:(0,t.jsxs)("div",{className:"sidebar-drawer m-[.35rem_.35rem_0] mt-4",children:[(0,t.jsxs)("button",{type:"button",className:"flex w-full cursor-pointer items-center !border-none !bg-transparent p-[.45rem_.75rem] text-left text-[12px] font-[600] text-zinc-400 hover:text-zinc-600 focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ds-accent)] focus-visible:ring-offset-2","aria-expanded":S,"aria-controls":"sessionList","aria-label":S?"收起历史会话列表":"展开历史会话列表",onClick:()=>{x(e=>!e)},children:["历史会话",S?(0,t.jsx)(C.default,{name:"ChevronDown",size:12,strokeWidth:1,className:"ml-1 shrink-0 text-[var(--ds-muted)]"}):(0,t.jsx)(C.default,{name:"ChevronRight",size:12,strokeWidth:1,className:"ml-1 shrink-0 text-[var(--ds-muted)]"})]}),S?(0,t.jsx)("div",{className:"sidebar-drawer-body sidebar-drawer-body--sessions",children:(0,t.jsx)("div",{id:"sessionList",children:c.length?(0,I.groupSessionsByMonth)(c).map(e=>(0,t.jsx)("div",{children:e.items.map(e=>{let n=e.sessionId===p.trim();return(0,t.jsxs)("div",{className:"sidebar-drawer-item session-item ".concat(n?"active":""),children:[(0,t.jsx)("button",{type:"button",className:"session-item-main",onClick:t=>{t.stopPropagation(),i(e.sessionId),o(A("/",{sessionId:e.sessionId}))},children:(0,t.jsx)("div",{className:"session-item-title",children:(0,I.sessionTitle)(e)})}),(0,t.jsx)("div",{className:"session-menu-wrap","data-session-menu-wrap":"",onClick:t=>{t.stopPropagation(),t.target===t.currentTarget&&y(t=>t===e.sessionId?null:e.sessionId)},children:(0,t.jsxs)(w.DropdownMenu,{open:b===e.sessionId,onOpenChange:e=>{e||y(null)},children:[(0,t.jsx)(w.DropdownMenuTrigger,{type:"button",className:"session-menu-btn","aria-label":"更多",onClick:t=>{t.stopPropagation(),y(t=>t===e.sessionId?null:e.sessionId)},children:"···"}),(0,t.jsxs)(w.DropdownMenuContent,{align:"end",side:"bottom",sideOffset:6,className:"w-[172px] min-w-[172px] rounded-[var(--ds-radius-sm)] border border-[var(--ds-border)] bg-[var(--ds-bg)] p-1.5",children:[(0,t.jsxs)(w.DropdownMenuItem,{className:"h-9 rounded-xl px-2.5 text-base text-[var(--ds-text)] hover:bg-[var(--ds-item-active)] focus:bg-[var(--ds-item-hover)]",onClick:()=>{navigator.clipboard.writeText(e.sessionId)},children:[(0,t.jsx)(C.default,{name:"Clipboard",size:16,className:"text-[var(--ds-muted)]"}),"复制完整 ID"]}),(0,t.jsx)(w.DropdownMenuSeparator,{className:"mx-1 my-1 bg-[var(--ds-border)]"}),(0,t.jsxs)(w.DropdownMenuItem,{variant:"destructive",className:"h-9 rounded-xl px-2.5 text-base hover:bg-[#fff1f1] focus:bg-[#fff1f1]",onClick:()=>{(async()=>{let t=e.sessionId===p.trim(),n=await l(e.sessionId);t&&n&&o(A("/",{clearSessionId:!0}))})()},children:[(0,t.jsx)(C.default,{name:"Trash2",size:16}),"删除会话"]})]})]})})]},e.sessionId)})},e.key)):(0,t.jsx)("p",{className:"sidebar-drawer-empty",children:"(暂无会话)"})})}):null]})}),(0,t.jsx)(O,{collapsed:!1,onGoToSettings:T})]})})}var B=e.i(19455),F=e.i(61196);function U(){let e=(0,F.useStageThreadFlyoutStore)(e=>e.open),r=(0,F.useStageThreadFlyoutStore)(e=>e.title),s=(0,F.useStageThreadFlyoutStore)(e=>e.content),a=(0,F.useStageThreadFlyoutStore)(e=>e.width),i=(0,F.useStageThreadFlyoutStore)(e=>e.hideHeader),l=(0,F.useStageThreadFlyoutStore)(e=>e.bodyClassName),o=(0,F.useStageThreadFlyoutStore)(e=>e.requestCloseFlyout),[u,d]=(0,n.useState)(a),[c,p]=(0,n.useState)(!1);(0,n.useEffect)(()=>{if(!e)return;let t=e=>{"Escape"===e.key&&o()};return window.addEventListener("keydown",t),()=>{window.removeEventListener("keydown",t)}},[e,o]),(0,n.useEffect)(()=>{e&&d((0,F.clampStageThreadFlyoutWidth)(a))},[e,a]);let f=(0,n.useCallback)(e=>{e.preventDefault();let t=e.currentTarget;t.setPointerCapture(e.pointerId),p(!0);let n=e.clientX,r=e=>{let t=n-e.clientX;d((0,F.clampStageThreadFlyoutWidth)(u+t))},s=()=>{p(!1),t.removeEventListener("pointermove",r),t.removeEventListener("pointerup",s),t.removeEventListener("pointercancel",s),document.body.style.cursor="",document.body.style.userSelect=""};document.body.style.cursor="col-resize",document.body.style.userSelect="none",t.addEventListener("pointermove",r),t.addEventListener("pointerup",s),t.addEventListener("pointercancel",s)},[u]);return(0,t.jsx)("aside",{className:(0,_.cn)("stage-thread-flyout",e&&"is-open",c&&"is-resizing"),"data-region":"stage-thread-flyout","aria-hidden":!e,style:{"--stage-flyout-width":"".concat(u,"px")},children:e?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"stage-thread-flyout-resize",role:"separator","aria-orientation":"vertical","aria-valuenow":u,"aria-valuemin":F.STAGE_THREAD_FLYOUT_MIN_WIDTH,"aria-valuemax":F.STAGE_THREAD_FLYOUT_MAX_WIDTH,"aria-label":"调整面板宽度",onPointerDown:f,children:(0,t.jsx)("span",{className:"stage-thread-flyout-resize-bar","aria-hidden":!0})}),(0,t.jsxs)("div",{className:"stage-thread-flyout-inner",children:[i?null:(0,t.jsxs)("header",{className:"stage-thread-flyout-header",children:[r?(0,t.jsx)("h2",{className:"stage-thread-flyout-title",children:r}):(0,t.jsx)("span",{className:"stage-thread-flyout-title","aria-hidden":!0}),(0,t.jsx)(B.Button,{type:"button",variant:"ghost",size:"icon-sm",className:"stage-thread-flyout-close","aria-label":"关闭",onClick:()=>void o(),children:(0,t.jsx)(C.default,{name:"X",size:16})})]}),(0,t.jsx)("div",{className:(0,_.cn)("stage-thread-flyout-body",l),children:s})]})]}):null})}var V=e.i(94606);function G(){let e=(0,r.usePathname)(),t=(0,r.useRouter)(),s=(0,n.useRef)(null),a=(0,n.useRef)(!1);return(0,n.useEffect)(()=>{if(a.current)return;let n=s.current;if(s.current=e,!n||n===e)return;let{open:r,guardRoute:i,isDirty:l,closeFlyout:o}=F.useStageThreadFlyoutStore.getState();if(r&&(0,V.isLeavingFlyoutGuardRoute)(i,n,e)){if(!(0,V.shouldConfirmFlyoutRouteChange)(i,n,e,l))return void o();a.current=!0,t.replace(n),(0,V.confirmDiscardFlyoutChanges)().then(r=>{a.current=!1,r?(o(),t.push(e),s.current=e):s.current=n})}},[e,t]),null}function q(e){let{children:n,mainClassName:r,mainRegion:s,sidebar:a}=e;return(0,t.jsxs)("div",{className:"app","data-ui-layer":"presentation","data-topology":"local-first",children:[(0,t.jsx)(z,{onNewSession:a.onNewSession,onSelectSession:a.onSelectSession,onSaveAgentConfig:a.onSaveAgentConfig,deleteSessionById:a.deleteSessionById}),(0,t.jsx)("main",{className:(0,_.cn)("main overflow-x-auto",r),"data-region":s,children:(0,t.jsx)("div",{className:"main-content",children:n})}),(0,t.jsx)(U,{}),(0,t.jsx)(G,{})]})}function H(){let e=(0,s.useAppStore)(e=>e.wsUrl),t=(0,s.useAppStore)(e=>e.apiBase),r=(0,s.useAppStore)(e=>e.agentId),i=(0,s.useAppStore)(e=>e.agentSelectionResolved),l=(0,s.useAppStore)(e=>e.setWsUrl),o=(0,s.useAppStore)(e=>e.setAgentId),{loadSessions:u,loadAgentConfig:d}=(0,A.useSession)();return(0,n.useLayoutEffect)(()=>{s.useAppStore.getState().wsUrl.trim()||l((0,a.defaultWsUrl)())},[l]),(0,n.useLayoutEffect)(()=>{(0,R.syncRuntimeAgentWithUrl)(s.useAppStore.getState().agentId,o)},[r,o]),(0,n.useEffect)(()=>{if(!e.trim())return;let t=!1;return(async()=>{let e=s.useAppStore.getState();e.setAgentSelectionResolved(!1),e.setAgentSelectionError(null);let n=(0,R.readAgentFromLocationSearch)().trim()||e.agentId.trim()||"qihoo";try{var r;let s=await (0,P.listAgents)(e.wsUrl,e.apiBase);if(t)return;if(!s.length){e.setAgentSelectionError("暂无可用 Agent"),e.setAgentSelectionResolved(!1);return}let a=null!=(r=s.find(e=>e.id===n))?r:s[0];if(!a){e.setAgentSelectionError("暂无可用 Agent"),e.setAgentSelectionResolved(!1);return}e.agentId.trim()!==a.id&&e.setAgentId(a.id),e.setCurrentWorkspaceAgent(a),(0,R.replaceRuntimeAgentInUrl)(a.id),e.setAgentSelectionResolved(!0)}catch(n){if(t)return;e.setAgentSelectionError(n instanceof Error?n.message:String(n)),e.setAgentSelectionResolved(!1)}})(),()=>{t=!0}},[e,t,r]),(0,n.useEffect)(()=>{i&&(u(),d())},[i,r,e,t,u,d]),null}function Y(){let e=(0,r.useSearchParams)(),t=(0,s.useAppStore)(e=>e.setAgentId),a=(0,s.useAppStore)(e=>e.setAgentSelectionResolved);return(0,n.useLayoutEffect)(()=>{var n;let r=null==(n=e.get("agent"))?void 0:n.trim();r&&r!==s.useAppStore.getState().agentId.trim()&&(a(!1),t(r))},[e,t,a]),null}function Q(){return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(H,{}),(0,t.jsx)(n.Suspense,{fallback:null,children:(0,t.jsx)(Y,{})})]})}function J(e){let{children:o}=e,d=(0,r.usePathname)(),c=function(e){if(!e)return!1;let t=(0,R.normalizeAppPathname)(e);return"/manage"===t||t.startsWith("/manage/")}(d),p=(0,D.isManageSideNavPath)(d),f=(0,s.useAppStore)(e=>e.wsUrl),m=(0,s.useAppStore)(e=>e.apiBase),g=(0,s.useAppStore)(e=>e.agentId),h=(0,s.useAppStore)(e=>e.sessionId),v=(0,s.useAppStore)(e=>e.sessionViewMode),I=(0,s.useAppStore)(e=>e.setSessionId),w=(0,s.useAppStore)(e=>e.setSessionViewMode),C=(0,s.useAppStore)(e=>e.setPendingHistoryRefresh),{loadSessions:E,loadAgentConfig:_,loadSessionOverrides:M,deleteSessionById:P}=(0,A.useSession)(),L=(0,N.usePersistAgentConfig)(),{reconnect:O,switchSession:W,sendPrompt:z,sendAbort:B,sendReloadAgentConfig:F,sendPermissionResponse:U}=function(e){let t=(0,n.useRef)(null),r=(0,n.useRef)(""),o=(0,n.useRef)(0),d=(0,n.useRef)(0),c=(0,n.useRef)(0),p=(0,n.useRef)(new Map),f=(0,n.useRef)(null==e?void 0:e.onSession);f.current=null==e?void 0:e.onSession;let m=(0,s.useAppStore)(e=>e.wsUrl),g=(0,s.useAppStore)(e=>e.agentSelectionResolved),h=(0,n.useCallback)(()=>(o.current+=1,o.current),[]),v=(0,n.useCallback)(()=>{if(t.current){let e=t.current;t.current.close(),(0,i.clearActiveWebSocket)(e),t.current=null}let e=s.useAppStore.getState();e.setWsConnected(!1),e.setBridgeReady(!1),e.resetApiErrorState(),e.setAssistantGenerating(!1),p.current.clear()},[]),A=(0,n.useCallback)((e,t)=>{var n,a,i,o,c,m,g,v;let b=(null==t?void 0:t.httpReplay)===!0,y=s.useAppStore.getState(),S=(e.runId||"main").trim()||"main",N="string"==typeof e.agent_name?e.agent_name.trim():"";N&&p.current.set(S,N);let k=function(t,n){let r=!(arguments.length>2)||void 0===arguments[2]||arguments[2],s=r&&e.data&&"object"==typeof e.data&&"string"==typeof e.data.sourceAgent?e.data.sourceAgent.trim():"",a=p.current.get(S)||"";return t||s||a||n},I=String(null!=(n=e.sessionId)?n:"").trim()||r.current.trim()||y.sessionId.trim()||"unknown",w="".concat(d.current,":").concat(I);if(e.eventId&&function(e,t){var n;let r=t||"default",s=null!=(n=x.get(r))?n:new Set;if(s.has(e))return!0;if(s.add(e),s.size>4096)for(let e of Array.from(s).slice(0,2048))s.delete(e);return x.set(r,s),!1}(e.eventId,w))return void y.appendLog("dedup","eventId=".concat(e.eventId," 已忽略"));switch(y.appendLog(b?"← replay":"←",e),e.type){case l.EVENT.SESSION_META:{let t=e.data,n=String(null!=(i=null!=(a=t.sessionId)?a:e.sessionId)?i:""),s=y.sessionId.trim();if(r.current){if(n&&n!==s)return void y.appendLog("switchSession","忽略过期 session.meta incoming=".concat(n," current=").concat(s));r.current=""}t.agent&&y.setBrandAgent(String(t.agent)),n&&(y.setSessionId(n),null==(o=f.current)||o.call(f,n));break}case l.EVENT.SESSION_READY:{y.resetApiErrorState();let t=e.data;r.current&&y.sessionId.trim()===r.current&&(r.current=""),y.markReady(),t.agent&&y.setBrandAgent(String(t.agent));break}case l.EVENT.SESSION_ERROR:{let t=e.data,n=null!=(c=t.message)?c:JSON.stringify(t);y.setAssistantGenerating(!1),y.setStatus("错误: ".concat(String(n)),"err");break}case l.EVENT.QUERY_PROGRESS:{y.resetApiErrorState();let t=String(null!=(m=e.data.phase)?m:"");"idle"===t?(y.setQueryPhase(""),y.bridgeReady&&y.setStatus("已就绪","ready")):(y.setQueryPhase(t),y.setStatus("查询阶段: ".concat(t,"…"),""));break}case l.EVENT.CONVERSATION_DELTA:{y.resetApiErrorState();let t=e.data;if(!t.action)break;if("message_added"===t.action||"message_updated"===t.action||"message_removed"===t.action||"tool_call"===t.action||"tool_result"===t.action||"message_completed"===t.action){if(!b&&r.current){let t=String(null!=(g=e.sessionId)?g:"").trim(),n=r.current.trim(),s=y.sessionId.trim();if(t&&t!==n&&t!==s){y.appendLog("switchSession","忽略切换过程中的过期 conversation.delta incoming=".concat(t," pending=").concat(n," current=").concat(s));break}}let n={eventId:e.eventId,action:t.action,index:t.index,message:u(t.message,!0===t.scheduledTrigger||!0===e.scheduledTrigger,"string"==typeof e.turnId?e.turnId:"")},s=k("",S),a=h();y.applyRunMessageDelta({...n,runId:S,sourceAgent:s,ts:"string"==typeof e.ts?e.ts:"",arrivalSeq:a})}"message_completed"===t.action&&y.setStreamBuffer("");break}case l.EVENT.RUN_LIFECYCLE:{let t=e.data,n="string"==typeof t.event&&t.event||("string"==typeof t.state?t.state:"");if("replay.start"===n||"replay.end"===n)break;y.setRunLifecycleData({event:n,message:t.message});let r=k("string"==typeof t.sourceAgent?t.sourceAgent.trim():"","system",!1),s=j(t);s.trim()&&y.appendSourceAgentMessage({key:"string"==typeof e.eventId?e.eventId:"lc-".concat(Date.now()),source:r,runId:S,correlationId:"",status:"resolved",text:s,ts:"string"==typeof e.ts?e.ts:"",arrivalSeq:h()}),"configReloaded"===n&&y.setStatus("已重新加载 agent.md / agent.json",y.bridgeReady?"ready":"");break}case l.EVENT.HISTORY_REPLAY:{let n=e.data;if(Array.isArray(n.events))for(let e=0;e<n.events.length;e+=1){let r=n.events[e];r&&"object"==typeof r&&r.type!==l.EVENT.HISTORY_REPLAY&&A(r,t)}break}case l.EVENT.TURN_TERMINAL:{y.resetApiErrorState(),y.setStreamBuffer(""),y.setAssistantGenerating(!1),y.setQueryPhase("");let t=e.data;y.setTurnTerminalData({status:t.status,resultText:t.resultText,reason:t.reason});let n=s.useAppStore.getState();"resolved"===t.status?n.setStatus("本轮结束(可继续发送)",n.bridgeReady?"ready":""):"failed"===t.status?n.setStatus("本轮失败: ".concat(null!=(v=t.reason)?v:"未知错误"),"err"):"cancelled"===t.status?n.setStatus("本轮已取消",n.bridgeReady?"ready":""):n.setStatus("本轮结束(可继续发送)",n.bridgeReady?"ready":"");let r=k("string"==typeof t.sourceAgent?t.sourceAgent.trim():"","main"===S?"main":"unknown-agent",!1),a="string"==typeof t.correlationId?t.correlationId:"",i=j({type:l.EVENT.TURN_TERMINAL,status:t.status,reason:t.reason,resultText:t.resultText});n.appendSourceAgentMessage({key:"string"==typeof e.eventId?e.eventId:"terminal-".concat(Date.now()),source:r,runId:S,correlationId:a,status:"resolved"===t.status?"resolved":"failed",text:i,ts:"string"==typeof e.ts?e.ts:"",arrivalSeq:h()});break}case l.EVENT.PERMISSION_REQUEST:{let t=e.data,n="string"==typeof t.requestId?t.requestId.trim():"";if(!n)break;y.enqueuePermissionRequest({requestId:n,toolName:"string"==typeof t.toolName?t.toolName:"tool",description:"string"==typeof t.description?t.description:"",input:null!=t.input?t.input:{},runId:S})}}},[h]),N=(0,n.useCallback)(e=>{var t,n,a,i,l;let o=s.useAppStore.getState(),u=String(null!=(t=e.type)?t:"");if("system"===u&&"api_error"===e.subtype){let t=y(e.retryAttempt),n=y(e.maxRetries),r=y(e.retryInMs),s=Date.now()+r,a=n>0&&t>=n?"failed":r>=1e4?"retrying":"loading";o.setApiErrorState({phase:a,retryAttempt:t,maxRetries:n,retryInMs:r,retryUntilTs:s}),o.appendLog("api_error",{uuid:"string"==typeof e.uuid?e.uuid:"",retryAttempt:t,maxRetries:n,retryInMs:r});return}switch(u){case"messages":if(r.current)return void o.appendLog("switchSession","忽略切换过程中的 messages 回包");o.resetApiErrorState(),o.setMessages(Array.isArray(e.messages)?e.messages:[]),o.setStreamBuffer("");break;case"queryProgress":{o.resetApiErrorState();let t=String(null!=(n=e.phase)?n:"");"idle"===t?(o.setQueryPhase(""),o.bridgeReady&&o.setStatus("已就绪","ready")):(o.setQueryPhase(t),o.setStatus("查询阶段: ".concat(t,"…"),""));break}case"streamText":{o.resetApiErrorState();let t="string"==typeof e.text?e.text:"";o.setAssistantGenerating(!1),o.setStreamBuffer(t);let n=t.length>160?"".concat(t.slice(0,160),"…"):t;o.appendLog("←",{type:"streamText",len:t.length,preview:n||"(空)"});break}case"ready":o.resetApiErrorState(),r.current&&o.sessionId.trim()===r.current&&(r.current=""),o.markReady(),e.agent&&o.setBrandAgent(String(e.agent));break;case"session":{let t=String(null!=(a=e.sessionId)?a:""),n=o.sessionId.trim();if(r.current){if(t&&t!==n)return void o.appendLog("switchSession","忽略过期 session 回包 incoming=".concat(t," current=").concat(n));r.current=""}e.agent&&o.setBrandAgent(String(e.agent)),t&&(o.setSessionId(t),null==(i=f.current)||i.call(f,t));break}case"error":o.setAssistantGenerating(!1),o.setStatus("错误: ".concat(String(null!=(l=e.message)?l:JSON.stringify(e))),"err");break;case"turnComplete":{o.resetApiErrorState(),o.setStreamBuffer(""),o.setAssistantGenerating(!1),o.setQueryPhase("");let e=s.useAppStore.getState();e.setStatus("本轮结束(可继续发送)",e.bridgeReady?"ready":"");break}case"agentConfigReloaded":{let e=s.useAppStore.getState();e.setStatus("已重新加载 agent.md / agent.json",e.bridgeReady?"ready":"")}}},[]),k=(0,n.useCallback)(async(e,t)=>{let n=e.trim();if(!n)return;let r=s.useAppStore.getState(),a=r.agentId.trim()||"qihoo";try{let{envelopes:e,messageCount:s}=await (0,b.loadSessionReplay)(r.wsUrl,r.apiBase,a,n);if(t!==c.current)return;let i={httpReplay:!0};for(let t=0;t<e.length;t+=1){let n=e[t];n&&S(n)&&A(n,i)}r.appendLog("session-replay-http",{sessionId:n,messageCount:s,envelopeCount:e.length})}catch(e){if(t!==c.current)return;r.appendLog("session-replay-http",String(e)),r.setStatus("历史回放失败: ".concat(e),"err")}},[A]),I=(0,n.useCallback)(()=>{let e,n=s.useAppStore.getState();if(!n.agentSelectionResolved||t.current&&(0,i.isWebSocketOpen)(t.current)&&n.bridgeReady)return;if(t.current){let e=t.current;try{e.close()}catch(e){}(0,i.clearActiveWebSocket)(e),t.current=null}n.markConnecting(),n.resetApiErrorState(),n.resetChat(),n.clearLog(),o.current=0,p.current.clear(),d.current+=1,x.clear();let r=n.agentId.trim()||"qihoo",l=n.sessionId.trim();l&&k(l,++c.current);let u=(0,a.buildWsUrlWithQuery)(n.wsUrl,n.sessionId,r);n.appendLog("connect",u);try{t.current=e=new WebSocket(u),(0,i.setActiveWebSocket)(e)}catch(e){n.markConnectionError("连接失败: ".concat(e)),n.appendLog("error",String(e));return}e.onopen=function(){t.current===this&&s.useAppStore.getState().markConnected()},e.onclose=function(){(null==t.current||t.current===this)&&(s.useAppStore.getState().markDisconnected(),(0,i.clearActiveWebSocket)(this),t.current===this&&(t.current=null))},e.onerror=function(){t.current===this&&(s.useAppStore.getState().markConnectionError("WebSocket 错误"),s.useAppStore.getState().appendLog("error","websocket error"))},e.onmessage=function(e){let n,r=s.useAppStore.getState();try{n=JSON.parse(e.data)}catch(t){r.appendLog("raw",e.data);return}this===t.current&&(S(n)?A(n):null!==n&&"object"==typeof n&&(r.appendLog("←",n),N(n)))}},[A,N,k]),w=(0,n.useCallback)(()=>{v(),I()},[v,I]),C=(0,n.useCallback)((e,n)=>{let a=s.useAppStore.getState(),l=String(e||"").trim(),u=String(n||a.agentId||"").trim()||"qihoo",f=t.current,m=(0,i.isWebSocketOpen)(f);if(a.resetChat(),a.clearLog(),o.current=0,a.setBridgeReady(!1),a.resetApiErrorState(),a.setStatus("正在切换 session…",""),p.current.clear(),d.current+=1,l&&m&&k(l,++c.current),r.current=l,!m)return void w();try{let e={type:"switchSession",sessionId:l,agent:u};f.send(JSON.stringify(e)),a.appendLog("→",e)}catch(e){a.appendLog("error","switchSession 发送失败: ".concat(String(e))),w()}},[w,k]);(0,n.useEffect)(()=>g?(I(),()=>{v()}):void v(),[m,g,I,v]);let E=(0,n.useCallback)(e=>{let n=t.current;(0,i.isWebSocketOpen)(n)&&(n.send(JSON.stringify(e)),s.useAppStore.getState().appendLog("→",e))},[]),T=(0,n.useCallback)(e=>{String(null!=e?e:"").trim()&&s.useAppStore.getState().setAssistantGenerating(!0),E({type:"prompt",text:e})},[E]),R=(0,n.useCallback)(()=>{E({type:"abort"})},[E]),_=(0,n.useCallback)(()=>{E({type:"reloadAgentConfig"})},[E]),M=(0,n.useCallback)(()=>{E({type:"reloadAgentPrompt"})},[E]);return{wsRef:t,disconnectIfOpen:v,connectWebSocket:I,reconnect:w,switchSession:C,sendPrompt:T,sendAbort:R,sendReloadAgentConfig:_,sendReloadAgentPrompt:M,sendPermissionResponse:(0,n.useCallback)((e,t)=>{let n=String(e||"").trim();n&&E({type:"permission.response",requestId:n,behavior:t})},[E]),sendInit:(0,n.useCallback)(e=>{E({type:"init",...e})},[E])}}({onSession:e=>{E(),M(e)}}),V=(0,n.useCallback)((e,t)=>k(e,{switchSession:W,reconnect:O,loadSessions:E,loadAgentConfig:_,preferReconnect:c},{displayName:t}),[W,O,E,_,c]),G=(0,n.useMemo)(()=>({reconnect:O,switchSession:W,switchWorkspaceAgent:V,sendPrompt:z,sendAbort:B,sendReloadAgentConfig:F,sendPermissionResponse:U}),[O,W,V,z,B,F,U]),H=p?"settings-main":c?"manage-main":"draft"===v?"is-draft-session":void 0;return(0,t.jsxs)(T.WorkspaceRuntimeContext.Provider,{value:G,children:[(0,t.jsx)(Q,{}),(0,t.jsxs)("div",{className:"ws-config-hidden","aria-hidden":!0,children:[(0,t.jsx)("input",{readOnly:!0,hidden:!0,value:f}),(0,t.jsx)("input",{readOnly:!0,hidden:!0,value:m}),(0,t.jsx)("input",{readOnly:!0,hidden:!0,value:h}),(0,t.jsx)("input",{readOnly:!0,hidden:!0,value:g})]}),(0,t.jsx)(q,{mainClassName:H,mainRegion:p?"settings-shell":c?"manage-shell":"chat-shell",sidebar:{onNewSession:()=>{I(""),w("draft"),C(!1),c?O():W("",g)},onSelectSession:e=>{I(e),w("history"),C(!1),c?O():W(e,g)},onSaveAgentConfig:()=>void L({silent:!1}),deleteSessionById:async e=>{let t=await P(e);return t&&(c?O():W("",g)),t}},children:o})]})}},41796,e=>{"use strict";e.s(["SideNavShell",()=>d]);var t=e.i(18050),n=e.i(18566),r=e.i(72064),s=e.i(65934),a=e.i(75157),i=e.i(97249),l=e.i(51419),o=e.i(18253);function u(e,t){if(!t)return!1;let n=(0,i.normalizeAppPathname)(t),r=(0,i.normalizeAppPathname)(e);return n===r||n.startsWith("".concat(r,"/"))}function d(e){var d;let{title:c,navGroups:p,tabs:f,activeTabValue:m,tabVariant:g,bottomItems:h,children:v}=e,b=(0,n.usePathname)(),{push:y}=(0,o.useGuardedAppNavigation)(),S=(0,s.useAppStore)(e=>e.agentId),x=e=>{y((0,i.buildAppNavHref)(e,{ensureAgent:!0,agent:S}))},j=!!(g&&(null==f?void 0:f.length)),A=null!=m?m:null==f||null==(d=f[0])?void 0:d.value;return(0,t.jsxs)("div",{className:"side-nav-shell",children:[(0,t.jsxs)("nav",{className:"side-nav","aria-label":null!=c?c:"导航",children:[c?(0,t.jsx)("div",{className:"side-nav-title",children:c}):null,(0,t.jsx)("div",{className:"side-nav-groups",children:p.map((e,n)=>(0,t.jsx)("div",{className:"side-nav-group",children:e.items.map(e=>{let n=u(e.href,b);return(0,t.jsxs)("button",{type:"button",className:(0,a.cn)("side-nav-item",n&&"is-active"),"aria-current":n?"page":void 0,onClick:()=>x(e.href),children:[e.icon?(0,t.jsx)("span",{className:"side-nav-item-icon","aria-hidden":!0,children:(0,t.jsx)(r.default,{name:e.icon,size:16,className:"text-zinc-700",strokeWidth:1})}):null,(0,t.jsx)("span",{className:"side-nav-item-label",children:e.label})]},e.href)})},n))}),h&&h.length>0?(0,t.jsx)("div",{className:"side-nav-bottom",children:h.map(e=>{let n=u(e.href,b);return(0,t.jsxs)("button",{type:"button",className:(0,a.cn)("side-nav-item",n&&"is-active"),"aria-current":n?"page":void 0,onClick:()=>x(e.href),children:[e.icon?(0,t.jsx)("span",{className:"side-nav-item-icon","aria-hidden":!0,children:(0,t.jsx)(r.default,{name:e.icon,size:16,className:"text-zinc-700",strokeWidth:1})}):null,(0,t.jsx)("span",{className:"side-nav-item-label",children:e.label})]},e.href)})}):null]}),(0,t.jsx)("section",{className:"side-nav-content",children:j?(0,t.jsx)(l.AppTabs,{tabs:null!=f?f:[],value:A,onChange:x,listVariant:g,listClassName:"pill"===g?"mx-auto":void 0,contentClassName:"flex min-h-0 min-w-0 flex-1 flex-col",children:v}):v})]})}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,65934,68834,75675,24270,e=>{"use strict";e.s(["useAppStore",()=>g],65934),e.s(["create",()=>s],68834);var t=e.i(71645);let r=e=>{let t,r=new Set,n=(e,n)=>{let o="function"==typeof e?e(t):e;if(!Object.is(o,t)){let e=t;t=(null!=n?n:"object"!=typeof o||null===o)?o:Object.assign({},t,o),r.forEach(r=>r(t,e))}},o=()=>t,s={setState:n,getState:o,getInitialState:()=>a,subscribe:e=>(r.add(e),()=>r.delete(e))},a=t=e(n,o,s);return s},n=e=>e,o=e=>{let o=(e=>e?r(e):r)(e),s=e=>(function(e){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n,o=t.default.useSyncExternalStore(e.subscribe,t.default.useCallback(()=>r(e.getState()),[e,r]),t.default.useCallback(()=>r(e.getInitialState()),[e,r]));return t.default.useDebugValue(o),o})(o,e);return Object.assign(s,o),s},s=e=>e?o(e):o;e.s(["DEFAULT_AGENT_CONFIG",()=>a,"createAgentConfigSlice",()=>i],75675);let a={tools:[],disallowedTools:[],mcpServers:[],skills:[],model:"",agentTeams:[],rules:[],env:{},effort:void 0,background:!1,isolation:"",whentouse:""};function l(){return{...a,tools:[...a.tools],disallowedTools:[...a.disallowedTools],mcpServers:[...a.mcpServers],skills:[...a.skills],agentTeams:[...a.agentTeams],rules:[...a.rules],env:{...a.env}}}let i=e=>({agentConfig:l(),setAgentConfig:t=>e({agentConfig:t}),resetAgentConfig:()=>e({agentConfig:l()}),patchAgentConfig:t=>e(e=>({agentConfig:{...e.agentConfig,...t}}))});function c(e,t){return{message:e,sourceAgent:"main",ts:"",arrivalSeq:t}}let d={phase:"idle",retryAttempt:0,maxRetries:0,retryInMs:0,retryUntilTs:0};function u(e){if(!e||"object"!=typeof e)return;let t=e.skill;return"string"==typeof t&&t.trim()?t.trim():void 0}e.s(["createPermissionSlice",()=>m,"findMatchingPermissionRequest",()=>f,"toolContainerGroupHasPendingPermission",()=>p],24270);let m=e=>({permissionQueue:[],enqueuePermissionRequest:t=>e(e=>{var r;return e.permissionQueue.some(e=>e.requestId===t.requestId)?e:{permissionQueue:[...e.permissionQueue,{...t,skillName:null!=(r=t.skillName)?r:u(t.input),confirmState:"pending"}]}}),setPermissionConfirmState:(t,r)=>e(e=>({permissionQueue:e.permissionQueue.map(e=>e.requestId===t?{...e,confirmState:r}:e)})),dequeuePermissionRequest:t=>e(e=>({permissionQueue:e.permissionQueue.filter(e=>e.requestId!==t)})),clearPermissionQueue:()=>e({permissionQueue:[]})});function f(e,t){var r;let n=e.filter(e=>"pending"===e.confirmState);if(0===n.length)return null;let o=u(t.input),s=t.toolName.trim().toLowerCase();for(let e of n)if(o&&e.skillName&&e.skillName===o||e.toolName.trim().toLowerCase()===s&&(!o||!e.skillName))return e;return null!=(r=n[0])?r:null}function p(e,t){let r=t.filter(e=>"pending"===e.confirmState);if(0===r.length)return!1;for(let t of e.tools)if("pending"===t.status&&f(r,t))return!0;return!1}let g=s()(function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return{...(e=>({wsUrl:"",apiBase:"",sessionId:"",agentId:"qihoo",sessionViewMode:"draft",pendingHistoryRefresh:!1,agentSelectionResolved:!1,agentSelectionError:null,setWsUrl:t=>e({wsUrl:t}),setApiBase:t=>e({apiBase:t}),setSessionId:t=>e({sessionId:t}),setAgentId:t=>e({agentId:t}),setSessionViewMode:t=>e({sessionViewMode:t}),setPendingHistoryRefresh:t=>e({pendingHistoryRefresh:t}),setAgentSelectionResolved:t=>e({agentSelectionResolved:t}),setAgentSelectionError:t=>e({agentSelectionError:t}),selectSession:(t,r)=>e({sessionId:t,sessionViewMode:r,pendingHistoryRefresh:!1}),startDraftSession:()=>e({sessionId:"",sessionViewMode:"draft",pendingHistoryRefresh:!1})}))(...t),...(e=>({bridgeReady:!1,wsConnected:!1,statusText:"未连接",statusClass:"",apiErrorState:{...d},setBridgeReady:t=>e({bridgeReady:t}),setWsConnected:t=>e({wsConnected:t}),setStatus:function(t){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return e({statusText:t,statusClass:r})},setApiErrorState:t=>e({apiErrorState:t}),resetApiErrorState:()=>e({apiErrorState:{...d}}),markConnecting:()=>e({wsConnected:!1,bridgeReady:!1,statusText:"正在连接…",statusClass:""}),markConnected:()=>e({wsConnected:!0,statusText:"已连接,等待 worker ready…",statusClass:""}),markReady:()=>e({bridgeReady:!0,statusText:"已就绪",statusClass:"ready"}),markDisconnected:()=>e({wsConnected:!1,bridgeReady:!1,statusText:"已断开",statusClass:""}),markConnectionError:t=>e({statusText:t,statusClass:"err"})}))(...t),...(e=>({lastSessions:[],sessionsMeta:"加载中…",brandAgent:"agent",brand:"Claude Code测试平台",currentWorkspaceAgent:null,setLastSessions:(t,r)=>e({lastSessions:t,sessionsMeta:r}),setSessionsMeta:t=>e({sessionsMeta:t}),resetSessions:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"加载中…";return e({lastSessions:[],sessionsMeta:t})},setBrandAgent:t=>e({brandAgent:t}),setBrand:t=>e({brand:t}),setCurrentWorkspaceAgent:t=>e({currentWorkspaceAgent:t})}))(...t),...m(...t),...((e,t)=>({assistantGenerating:!1,streamBuffer:"",messagesByRun:{},sourceAgentMessages:[],turnTerminalData:null,runLifecycleData:null,queryPhase:"",setAssistantGenerating:t=>e({assistantGenerating:t}),setStreamBuffer:t=>e({streamBuffer:t}),resetChat:()=>{t().clearPermissionQueue(),e({messagesByRun:{},sourceAgentMessages:[],assistantGenerating:!1,streamBuffer:"",turnTerminalData:null,runLifecycleData:null,queryPhase:""})},applyMessageDelta:t=>e(e=>({messagesByRun:function(e,t){var r;let n=[...null!=(r=e.main)?r:[]],o=n.reduce((e,t)=>Math.max(e,t.arrivalSeq||0),0)+1;switch(t.action){case"message_added":void 0!==t.index&&t.index>=0?n.splice(t.index,0,c(t.message,o)):n.push(c(t.message,o));break;case"message_updated":if(void 0!==t.index&&t.index>=0){let e=n[t.index];n[t.index]=e?{...e,message:t.message}:c(t.message,o)}break;case"message_removed":void 0!==t.index&&t.index>=0&&n.splice(t.index,1)}return{...e,main:n}}(e.messagesByRun,t)})),setMessages:t=>e(e=>({messagesByRun:{...e.messagesByRun,main:t.map((e,t)=>c(e,t+1))},assistantGenerating:!1})),applyRunMessageDelta:t=>e(e=>(function(e,t){let r=(t.runId||"main").trim()||"main",n=[...e.messagesByRun[r]||[]],o={message:t.message,sourceAgent:t.sourceAgent||("main"===r?"main":"unknown-agent"),ts:t.ts||"",arrivalSeq:t.arrivalSeq};switch(t.action){case"message_added":void 0!==t.index&&t.index>=0?t.index>=n.length?n.push(o):n.splice(t.index,0,o):n.push(o);break;case"message_updated":case"tool_call":case"tool_result":case"message_completed":void 0!==t.index&&t.index>=0&&(t.index>=n.length?n.push(o):n[t.index]=o);break;case"message_removed":void 0!==t.index&&t.index>=0&&t.index<n.length&&n.splice(t.index,1)}return{messagesByRun:{...e.messagesByRun,[r]:n},assistantGenerating:!(void 0!==t.message&&function(e){if(!e||"object"!=typeof e)return!1;if("assistant"===e.type)return!0;let t=e.message;return!!t&&"object"==typeof t&&"assistant"===t.role||!1}(t.message))&&e.assistantGenerating}})({messagesByRun:e.messagesByRun,assistantGenerating:e.assistantGenerating},t)),appendSourceAgentMessage:t=>e(e=>({sourceAgentMessages:[...e.sourceAgentMessages,t]})),setTurnTerminalData:t=>e({turnTerminalData:t}),setRunLifecycleData:t=>e({runLifecycleData:t}),setQueryPhase:t=>e({queryPhase:t})}))(...t),...i(...t),...(e=>({rawLog:"",appendLog:(t,r)=>e(e=>{let n=new Date().toISOString().slice(11,23),o="[".concat(n,"] ").concat(t," ")+("string"==typeof r?r:JSON.stringify(r,null,0)),s="".concat(e.rawLog).concat(o,"\n");return{rawLog:s.length>2e5?s.slice(-2e5):s}}),clearLog:()=>e({rawLog:""})}))(...t)}})},36845,e=>{"use strict";e.s(["buildAgentApiUrl",()=>E,"buildAgentItemUrl",()=>j,"buildAgentTeamMemberUrl",()=>_,"buildAgentTeamMembersUrl",()=>I,"buildAgentTeamsListUrl",()=>A,"buildAgentsListUrl",()=>T,"buildBaseSkillMdUrl",()=>S,"buildCloudSkillCatalogUrl",()=>C,"buildCloudSkillInstallUrl",()=>L,"buildMcpRuntimeDeleteUrl",()=>Q,"buildMcpRuntimeExportUrl",()=>q,"buildMcpRuntimeFilesUrl",()=>W,"buildMcpRuntimeImportUrl",()=>$,"buildMcpServersListUrl",()=>z,"buildModelsApiUrl",()=>M,"buildRemoteMcpJsonUrl",()=>F,"buildRuntimeMcpItemConfigUrl",()=>V,"buildScheduleDeleteUrl",()=>X,"buildSchedulesUrl",()=>Y,"buildSessionDeleteUrl",()=>g,"buildSessionOverridesUrl",()=>b,"buildSessionReplayUrl",()=>h,"buildSessionsListUrl",()=>p,"buildSkillBaseListUrl",()=>x,"buildSkillInstalledListUrl",()=>k,"buildSkillsRuntimeDeleteUrl",()=>R,"buildSkillsRuntimeExportUrl",()=>U,"buildSkillsRuntimeImportUrl",()=>P,"buildSystemEnvApiUrl",()=>D,"buildSystemMcpJsonApiUrl",()=>N,"buildToolInstalledListUrl",()=>w,"buildToolsListUrl",()=>v,"buildToolsRuntimeDeleteUrl",()=>H,"buildToolsRuntimeExportUrl",()=>O,"buildToolsRuntimeFilesUrl",()=>B,"buildToolsRuntimeImportUrl",()=>G,"buildWorkspaceFileDownloadUrl",()=>J,"buildWorkspaceFilesListUrl",()=>K,"buildWsUrlWithQuery",()=>Z,"defaultWsUrl",()=>m,"getSkillsList",()=>y]);var t,r,n,o=e.i(47167);let s=void 0!==o.default&&(null==(t=(null==(r=o.default.env.NEXT_PUBLIC_BRIDGE_ORIGIN)?void 0:r.trim())||(null==(n=o.default.env.BACKEND_PROXY_TARGET)?void 0:n.trim()))?void 0:t.replace(/\/+$/,""))||"http://10.224.148.221:8765";function a(){try{return new URL(s).origin}catch(e){return"http://10.224.148.221:8765"}}function l(){let e="1".trim().toLowerCase();return"1"===e||"true"===e||"yes"===e}function i(){var e;let t=null==(e=o.default.env.NEXT_PUBLIC_BRIDGE_ORIGIN)?void 0:e.trim();if(!t)return null;try{return new URL(t).origin}catch(e){return null}}function c(e){let t=new URL(e),r="https:"===t.protocol?"wss:":"ws:";return"".concat(r,"//").concat(t.host,"/ws")}let d=c(a()),u=new Set(["3000","3001","5173","5174","4173","5500","5501","8080","9527","9333"]);function m(){let e=i();if(l()){let e="https:"===window.location.protocol?"wss:":"ws:";return"".concat(e,"//").concat(window.location.host,"/ws")}if(e)return c(e);let{protocol:t,hostname:r,port:n}=window.location;if("http:"===t||"https:"===t){let e=String(n||("https:"===t?"443":"80"));return u.has(e)?d:"".concat("https:"===t?"wss:":"ws:","//").concat(r,":").concat(e,"/ws")}return d}function f(e,t){let r=t.trim().replace(/\/+$/,"");if(r)try{return new URL(r).origin}catch(e){}if(l())return window.location.origin;let n=i();if(n)return n;try{let t=e.trim().replace(/^ws:/i,"http:").replace(/^wss:/i,"https:");return new URL(t).origin}catch(e){}{let{protocol:e,hostname:t,port:r}=window.location;if("http:"===e||"https:"===e)return"".concat(e,"//").concat(t).concat(r?":".concat(r):"")}return a()}function p(e,t,r){let n=new URL("/api/sessions","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function g(e,t,r,n){let o=new URL("/api/sessions","".concat(f(e,t),"/"));return o.searchParams.set("sessionId",n),o.searchParams.set("agent",r),o.toString()}function b(e,t,r,n){let o=new URL("/api/sessions/overrides","".concat(f(e,t),"/"));return o.searchParams.set("agent",r),o.searchParams.set("sessionId",n),o.toString()}function h(e,t,r,n){let o=new URL("/api/sessions/replay","".concat(f(e,t),"/"));return o.searchParams.set("agent",r),o.searchParams.set("sessionId",n),o.toString()}function v(e,t,r){let n=new URL("/api/tools","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function w(e,t,r){let n=new URL("/api/tools/installed-list","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function y(e,t,r){let n=new URL("/api/skills","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function x(e,t,r){let n=new URL("/api/skills/base-list","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function k(e,t,r){let n=new URL("/api/skills/installed-list","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function S(e,t,r,n){let o=new URL("/api/skills/base-skill-md","".concat(f(e,t),"/"));return o.searchParams.set("agent",r),o.searchParams.set("name",n),o.toString()}function R(e,t,r,n){let o=new URL("/api/runtime/skills/file","".concat(f(e,t),"/"));return o.searchParams.set("agent",r),o.searchParams.set("file",n),o.toString()}function U(e,t,r,n){let o=new URL("/api/runtime/skills/export","".concat(f(e,t),"/"));return o.searchParams.set("agent",r),o.searchParams.set("file",n),o.toString()}function P(e,t,r){let n=new URL("/api/runtime/skills/import","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function C(e,t,r,n){let o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:1,s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:10,a=new URL("/api/skills/cloud-catalog","".concat(f(e,t),"/"));return a.searchParams.set("agent",r),n.trim()&&a.searchParams.set("q",n.trim()),a.searchParams.set("page",String(o<1?1:o)),a.searchParams.set("pageSize",String(s<1?10:s)),a.toString()}function L(e,t,r){let n=new URL("/api/skills/cloud-install","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function z(e,t,r){let n=new URL("/api/mcp-servers","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function A(e,t,r){let n=new URL("/api/agent-teams","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function T(e,t){return new URL("/api/agents","".concat(f(e,t),"/")).toString()}function j(e,t,r){return new URL("/api/agents/".concat(encodeURIComponent(String(r||"").trim())),"".concat(f(e,t),"/")).toString()}function E(e,t,r){let n=new URL("/api/agents/".concat(encodeURIComponent(r)),"".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function I(e,t,r){return new URL("/api/agents/".concat(encodeURIComponent(String(r||"").trim()),"/team-members"),"".concat(f(e,t),"/")).toString()}function _(e,t,r,n){return new URL("/api/agents/".concat(encodeURIComponent(String(r||"").trim()),"/team-members/").concat(encodeURIComponent(String(n||"").trim())),"".concat(f(e,t),"/")).toString()}function N(e,t,r){let n=new URL("/api/system/mcp-json","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function D(e,t,r){let n=new URL("/api/system/env","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function M(e,t,r){let n=new URL("/api/models","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function B(e,t,r){let n=new URL("/api/runtime/tools/files","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function O(e,t,r,n){let o=new URL("/api/runtime/tools/export","".concat(f(e,t),"/"));return o.searchParams.set("agent",r),o.searchParams.set("file",n),o.toString()}function G(e,t,r){let n=new URL("/api/runtime/tools/import","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function H(e,t,r,n){let o=new URL("/api/runtime/tools/file","".concat(f(e,t),"/"));return o.searchParams.set("agent",r),o.searchParams.set("file",n),o.toString()}function W(e,t,r){let n=new URL("/api/runtime/mcps/files","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function q(e,t,r,n){let o=new URL("/api/runtime/mcps/export","".concat(f(e,t),"/"));return o.searchParams.set("agent",r),o.searchParams.set("file",n),o.toString()}function $(e,t,r){let n=new URL("/api/runtime/mcps/import","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function Q(e,t,r,n){let o=new URL("/api/runtime/mcps/file","".concat(f(e,t),"/"));return o.searchParams.set("agent",r),o.searchParams.set("file",n),o.toString()}function V(e,t,r,n,o){let s=new URL("/api/runtime/mcps/item-config","".concat(f(e,t),"/"));return s.searchParams.set("agent",r),s.searchParams.set("item",n),s.searchParams.set("source",o),s.toString()}function F(e,t,r){let n=new URL("/api/mcp/remote-json","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function K(e,t,r,n){let o=new URL("/api/workspace/files","".concat(f(e,t),"/"));return o.searchParams.set("agent",r),o.searchParams.set("sessionId",n),o.toString()}function J(e,t,r,n){let o=new URL("/api/workspace/file","".concat(f(e,t),"/"));return o.searchParams.set("agent",r),o.searchParams.set("path",n.replace(/\\/g,"/")),o.toString()}function Y(e,t,r){let n=new URL("/api/schedules","".concat(f(e,t),"/"));return n.searchParams.set("agent",r),n.toString()}function X(e,t,r,n){let o=new URL("/api/schedules","".concat(f(e,t),"/"));return o.searchParams.set("agent",r),o.searchParams.set("id",n),o.toString()}function Z(e,t,r){let n,o=e.trim().replace(/\/+$/,"");o||(o=m());try{n=new URL(o)}catch(e){n=new URL(d)}return n.searchParams.delete("sessionId"),n.searchParams.delete("agent"),t.trim()&&n.searchParams.set("sessionId",t.trim()),n.searchParams.set("agent",r),n.toString()}},99749,e=>{"use strict";function t(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}e.s(["_",()=>t])},29250,e=>{"use strict";e.s(["ApiError",()=>n,"bridgeFetch",()=>s,"del",()=>d,"get",()=>a,"patch",()=>i,"post",()=>l,"put",()=>c],29250);var t=e.i(99749);let r={accessToken:null};class n extends Error{constructor(e,r,n,o){super(e),(0,t._)(this,"status",void 0),(0,t._)(this,"body",void 0),(0,t._)(this,"response",void 0),this.status=r,this.body=n,this.response=o,this.name="ApiError"}}async function o(e){let t=await e.text();if(!t)return null;try{return JSON.parse(t)}catch(e){return t}}async function s(e,t){var s,a,l;let i,c,{json:d,timeout:u=3e4,raw:m=!1,body:f,...p}=null!=t?t:{},g=new Headers(null!=(s=p.headers)?s:void 0);g.has("Accept")||g.set("Accept","application/json, text/plain, */*"),void 0===d||g.has("Content-Type")||g.set("Content-Type","application/json; charset=utf-8");let b=r.accessToken;b&&!g.has("Authorization")&&g.set("Authorization","Bearer ".concat(b));let h=void 0!==d?JSON.stringify(d):f,v=null!=(a=p.signal)?a:void 0;if(!v){let e=new AbortController;v=e.signal,i=setTimeout(()=>e.abort(),u)}try{c=await fetch(e,{...p,headers:g,body:h,credentials:null!=(l=p.credentials)?l:"same-origin",signal:v})}finally{void 0!==i&&clearTimeout(i)}if(m)return c;let w=await o(c);if(!c.ok)throw new n(function(e,t){if(e&&"object"==typeof e){if("string"==typeof e.message&&e.message.trim())return e.message;if("string"==typeof e.error&&e.error.trim())return e.error}return t||"请求失败"}(w,c.statusText),c.status,w,c);return w}async function a(e,t){return s(e,{...t,method:"GET"})}async function l(e,t,r){let{type:n="json",...o}=null!=r?r:{};return"file"===n?s(e,{...o,method:"POST",body:t}):"form"===n?s(e,{...o,method:"POST",body:new URLSearchParams(t)}):s(e,{...o,method:"POST",json:t})}async function i(e,t,r){return s(e,{...r,method:"PATCH",json:t})}async function c(e,t,r){return s(e,{...r,method:"PUT",json:t})}async function d(e,t){return s(e,{...t,method:"DELETE"})}},75157,7670,e=>{"use strict";function t(){for(var e,t,r=0,n="",o=arguments.length;r<o;r++)(e=arguments[r])&&(t=function e(t){var r,n,o="";if("string"==typeof t||"number"==typeof t)o+=t;else if("object"==typeof t)if(Array.isArray(t)){var s=t.length;for(r=0;r<s;r++)t[r]&&(n=e(t[r]))&&(o&&(o+=" "),o+=n)}else for(n in t)t[n]&&(o&&(o+=" "),o+=n);return o}(e))&&(n&&(n+=" "),n+=t);return n}e.s(["cn",()=>ef],75157),e.s(["clsx",()=>t],7670);let r=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new Map,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,r=arguments.length>2?arguments[2]:void 0;return{nextPart:e,validators:t,classGroupId:r}},n=[],o=(e,t,r)=>{if(0==e.length-t)return r.classGroupId;let n=e[t],s=r.nextPart.get(n);if(s){let r=o(e,t+1,s);if(r)return r}let a=r.validators;if(null===a)return;let l=0===t?e.join("-"):e.slice(t).join("-"),i=a.length;for(let e=0;e<i;e++){let t=a[e];if(t.validator(l))return t.classGroupId}},s=(e,t)=>{let n=r();for(let r in e)a(e[r],n,r,t);return n},a=(e,t,r,n)=>{let o=e.length;for(let s=0;s<o;s++)l(e[s],t,r,n)},l=(e,t,r,n)=>"string"==typeof e?void i(e,t,r):"function"==typeof e?void c(e,t,r,n):void d(e,t,r,n),i=(e,t,r)=>{(""===e?t:u(t,e)).classGroupId=r},c=(e,t,r,n)=>{if(m(e))return void a(e(n),t,r,n);null===t.validators&&(t.validators=[]),t.validators.push({classGroupId:r,validator:e})},d=(e,t,r,n)=>{let o=Object.entries(e),s=o.length;for(let e=0;e<s;e++){let[s,l]=o[e];a(l,u(t,s),r,n)}},u=(e,t)=>{let n=e,o=t.split("-"),s=o.length;for(let e=0;e<s;e++){let t=o[e],s=n.nextPart.get(t);s||(s=r(),n.nextPart.set(t,s)),n=s}return n},m=e=>"isThemeGetter"in e&&!0===e.isThemeGetter,f=[],p=(e,t,r,n,o)=>({modifiers:e,hasImportantModifier:t,baseClassName:r,maybePostfixModifierPosition:n,isExternal:o}),g=/\s+/,b=function(){let e,t;for(var r=arguments.length,n=Array(r),o=0;o<r;o++)n[o]=arguments[o];let s=0,a="";for(;s<n.length;)(e=n[s++])&&(t=h(e))&&(a&&(a+=" "),a+=t);return a},h=e=>{let t;if("string"==typeof e)return e;let r="";for(let n=0;n<e.length;n++)e[n]&&(t=h(e[n]))&&(r&&(r+=" "),r+=t);return r},v=[],w=e=>{let t=t=>t[e]||v;return t.isThemeGetter=!0,t},y=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,x=/^\((?:(\w[\w-]*):)?(.+)\)$/i,k=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,S=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,R=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,U=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,P=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,C=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,L=e=>k.test(e),z=e=>!!e&&!Number.isNaN(Number(e)),A=e=>!!e&&Number.isInteger(Number(e)),T=e=>e.endsWith("%")&&z(e.slice(0,-1)),j=e=>S.test(e),E=()=>!0,I=e=>R.test(e)&&!U.test(e),_=()=>!1,N=e=>P.test(e),D=e=>C.test(e),M=e=>!O(e)&&!F(e),B=e=>er(e,ea,_),O=e=>y.test(e),G=e=>er(e,el,I),H=e=>er(e,ei,z),W=e=>er(e,ed,E),q=e=>er(e,ec,_),$=e=>er(e,eo,_),Q=e=>er(e,es,D),V=e=>er(e,eu,N),F=e=>x.test(e),K=e=>en(e,el),J=e=>en(e,ec),Y=e=>en(e,eo),X=e=>en(e,ea),Z=e=>en(e,es),ee=e=>en(e,eu,!0),et=e=>en(e,ed,!0),er=(e,t,r)=>{let n=y.exec(e);return!!n&&(n[1]?t(n[1]):r(n[2]))},en=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=x.exec(e);return!!n&&(n[1]?t(n[1]):r)},eo=e=>"position"===e||"percentage"===e,es=e=>"image"===e||"url"===e,ea=e=>"length"===e||"size"===e||"bg-size"===e,el=e=>"length"===e,ei=e=>"number"===e,ec=e=>"family-name"===e,ed=e=>"number"===e||"weight"===e,eu=e=>"shadow"===e;Symbol.toStringTag;let em=function(e){let t,r,a,l;for(var i=arguments.length,c=Array(i>1?i-1:0),d=1;d<i;d++)c[d-1]=arguments[d];let u=e=>{let n=r(e);if(n)return n;let o=((e,t)=>{let{parseClassName:r,getClassGroupId:n,getConflictingClassGroupIds:o,sortModifiers:s}=t,a=[],l=e.trim().split(g),i="";for(let e=l.length-1;e>=0;e-=1){let t=l[e],{isExternal:c,modifiers:d,hasImportantModifier:u,baseClassName:m,maybePostfixModifierPosition:f}=r(t);if(c){i=t+(i.length>0?" "+i:i);continue}let p=!!f,g=n(p?m.substring(0,f):m);if(!g){if(!p||!(g=n(m))){i=t+(i.length>0?" "+i:i);continue}p=!1}let b=0===d.length?"":1===d.length?d[0]:s(d).join(":"),h=u?b+"!":b,v=h+g;if(a.indexOf(v)>-1)continue;a.push(v);let w=o(g,p);for(let e=0;e<w.length;++e){let t=w[e];a.push(h+t)}i=t+(i.length>0?" "+i:i)}return i})(e,t);return a(e,o),o};return l=i=>{let d;return r=(t={cache:(e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,r=Object.create(null),n=Object.create(null),o=(o,s)=>{r[o]=s,++t>e&&(t=0,n=r,r=Object.create(null))};return{get(e){let t=r[e];return void 0!==t?t:void 0!==(t=n[e])?(o(e,t),t):void 0},set(e,t){e in r?r[e]=t:o(e,t)}}})((d=c.reduce((e,t)=>t(e),e())).cacheSize),parseClassName:(e=>{let{prefix:t,experimentalParseClassName:r}=e,n=e=>{let t,r=[],n=0,o=0,s=0,a=e.length;for(let l=0;l<a;l++){let a=e[l];if(0===n&&0===o){if(":"===a){r.push(e.slice(s,l)),s=l+1;continue}if("/"===a){t=l;continue}}"["===a?n++:"]"===a?n--:"("===a?o++:")"===a&&o--}let l=0===r.length?e:e.slice(s),i=l,c=!1;return l.endsWith("!")?(i=l.slice(0,-1),c=!0):l.startsWith("!")&&(i=l.slice(1),c=!0),p(r,c,i,t&&t>s?t-s:void 0)};if(t){let e=t+":",r=n;n=t=>t.startsWith(e)?r(t.slice(e.length)):p(f,!1,t,void 0,!0)}if(r){let e=n;n=t=>r({className:t,parseClassName:e})}return n})(d),sortModifiers:(e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,r)=>{t.set(e,1e6+r)}),e=>{let r=[],n=[];for(let o=0;o<e.length;o++){let s=e[o],a="["===s[0],l=t.has(s);a||l?(n.length>0&&(n.sort(),r.push(...n),n=[]),r.push(s)):n.push(s)}return n.length>0&&(n.sort(),r.push(...n)),r}})(d),...(e=>{let t=(e=>{let{theme:t,classGroups:r}=e;return s(r,t)})(e),{conflictingClassGroups:r,conflictingClassGroupModifiers:a}=e;return{getClassGroupId:e=>{if(e.startsWith("[")&&e.endsWith("]")){let t;return -1===(t=e).slice(1,-1).indexOf(":")?void 0:(()=>{let e=t.slice(1,-1),r=e.indexOf(":"),n=e.slice(0,r);return n?"arbitrary.."+n:void 0})()}let r=e.split("-"),n=+(""===r[0]&&r.length>1);return o(r,n,t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=a[e],o=r[e];return t?o?((e,t)=>{let r=Array(e.length+t.length);for(let t=0;t<e.length;t++)r[t]=e[t];for(let n=0;n<t.length;n++)r[e.length+n]=t[n];return r})(o,t):t:o||n}return r[e]||n}}})(d)}).cache.get,a=t.cache.set,l=u,u(i)},function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];return l(b(...t))}}(()=>{let e=w("color"),t=w("font"),r=w("text"),n=w("font-weight"),o=w("tracking"),s=w("leading"),a=w("breakpoint"),l=w("container"),i=w("spacing"),c=w("radius"),d=w("shadow"),u=w("inset-shadow"),m=w("text-shadow"),f=w("drop-shadow"),p=w("blur"),g=w("perspective"),b=w("aspect"),h=w("ease"),v=w("animate"),y=()=>["auto","avoid","all","avoid-page","page","left","right","column"],x=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],k=()=>[...x(),F,O],S=()=>["auto","hidden","clip","visible","scroll"],R=()=>["auto","contain","none"],U=()=>[F,O,i],P=()=>[L,"full","auto",...U()],C=()=>[A,"none","subgrid",F,O],I=()=>["auto",{span:["full",A,F,O]},A,F,O],_=()=>[A,"auto",F,O],N=()=>["auto","min","max","fr",F,O],D=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],er=()=>["start","end","center","stretch","center-safe","end-safe"],en=()=>["auto",...U()],eo=()=>[L,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...U()],es=()=>[L,"screen","full","dvw","lvw","svw","min","max","fit",...U()],ea=()=>[L,"screen","full","lh","dvh","lvh","svh","min","max","fit",...U()],el=()=>[e,F,O],ei=()=>[...x(),Y,$,{position:[F,O]}],ec=()=>["no-repeat",{repeat:["","x","y","space","round"]}],ed=()=>["auto","cover","contain",X,B,{size:[F,O]}],eu=()=>[T,K,G],em=()=>["","none","full",c,F,O],ef=()=>["",z,K,G],ep=()=>["solid","dashed","dotted","double"],eg=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],eb=()=>[z,T,Y,$],eh=()=>["","none",p,F,O],ev=()=>["none",z,F,O],ew=()=>["none",z,F,O],ey=()=>[z,F,O],ex=()=>[L,"full",...U()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[j],breakpoint:[j],color:[E],container:[j],"drop-shadow":[j],ease:["in","out","in-out"],font:[M],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[j],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[j],shadow:[j],spacing:["px",z],text:[j],"text-shadow":[j],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",L,O,F,b]}],container:["container"],columns:[{columns:[z,O,F,l]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:k()}],overflow:[{overflow:S()}],"overflow-x":[{"overflow-x":S()}],"overflow-y":[{"overflow-y":S()}],overscroll:[{overscroll:R()}],"overscroll-x":[{"overscroll-x":R()}],"overscroll-y":[{"overscroll-y":R()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:P()}],"inset-x":[{"inset-x":P()}],"inset-y":[{"inset-y":P()}],start:[{"inset-s":P(),start:P()}],end:[{"inset-e":P(),end:P()}],"inset-bs":[{"inset-bs":P()}],"inset-be":[{"inset-be":P()}],top:[{top:P()}],right:[{right:P()}],bottom:[{bottom:P()}],left:[{left:P()}],visibility:["visible","invisible","collapse"],z:[{z:[A,"auto",F,O]}],basis:[{basis:[L,"full","auto",l,...U()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[z,L,"auto","initial","none",O]}],grow:[{grow:["",z,F,O]}],shrink:[{shrink:["",z,F,O]}],order:[{order:[A,"first","last","none",F,O]}],"grid-cols":[{"grid-cols":C()}],"col-start-end":[{col:I()}],"col-start":[{"col-start":_()}],"col-end":[{"col-end":_()}],"grid-rows":[{"grid-rows":C()}],"row-start-end":[{row:I()}],"row-start":[{"row-start":_()}],"row-end":[{"row-end":_()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":N()}],"auto-rows":[{"auto-rows":N()}],gap:[{gap:U()}],"gap-x":[{"gap-x":U()}],"gap-y":[{"gap-y":U()}],"justify-content":[{justify:[...D(),"normal"]}],"justify-items":[{"justify-items":[...er(),"normal"]}],"justify-self":[{"justify-self":["auto",...er()]}],"align-content":[{content:["normal",...D()]}],"align-items":[{items:[...er(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...er(),{baseline:["","last"]}]}],"place-content":[{"place-content":D()}],"place-items":[{"place-items":[...er(),"baseline"]}],"place-self":[{"place-self":["auto",...er()]}],p:[{p:U()}],px:[{px:U()}],py:[{py:U()}],ps:[{ps:U()}],pe:[{pe:U()}],pbs:[{pbs:U()}],pbe:[{pbe:U()}],pt:[{pt:U()}],pr:[{pr:U()}],pb:[{pb:U()}],pl:[{pl:U()}],m:[{m:en()}],mx:[{mx:en()}],my:[{my:en()}],ms:[{ms:en()}],me:[{me:en()}],mbs:[{mbs:en()}],mbe:[{mbe:en()}],mt:[{mt:en()}],mr:[{mr:en()}],mb:[{mb:en()}],ml:[{ml:en()}],"space-x":[{"space-x":U()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":U()}],"space-y-reverse":["space-y-reverse"],size:[{size:eo()}],"inline-size":[{inline:["auto",...es()]}],"min-inline-size":[{"min-inline":["auto",...es()]}],"max-inline-size":[{"max-inline":["none",...es()]}],"block-size":[{block:["auto",...ea()]}],"min-block-size":[{"min-block":["auto",...ea()]}],"max-block-size":[{"max-block":["none",...ea()]}],w:[{w:[l,"screen",...eo()]}],"min-w":[{"min-w":[l,"screen","none",...eo()]}],"max-w":[{"max-w":[l,"screen","none","prose",{screen:[a]},...eo()]}],h:[{h:["screen","lh",...eo()]}],"min-h":[{"min-h":["screen","lh","none",...eo()]}],"max-h":[{"max-h":["screen","lh",...eo()]}],"font-size":[{text:["base",r,K,G]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[n,et,W]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",T,O]}],"font-family":[{font:[J,q,t]}],"font-features":[{"font-features":[O]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[o,F,O]}],"line-clamp":[{"line-clamp":[z,"none",F,H]}],leading:[{leading:[s,...U()]}],"list-image":[{"list-image":["none",F,O]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",F,O]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:el()}],"text-color":[{text:el()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...ep(),"wavy"]}],"text-decoration-thickness":[{decoration:[z,"from-font","auto",F,G]}],"text-decoration-color":[{decoration:el()}],"underline-offset":[{"underline-offset":[z,"auto",F,O]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:U()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",F,O]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",F,O]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:ei()}],"bg-repeat":[{bg:ec()}],"bg-size":[{bg:ed()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},A,F,O],radial:["",F,O],conic:[A,F,O]},Z,Q]}],"bg-color":[{bg:el()}],"gradient-from-pos":[{from:eu()}],"gradient-via-pos":[{via:eu()}],"gradient-to-pos":[{to:eu()}],"gradient-from":[{from:el()}],"gradient-via":[{via:el()}],"gradient-to":[{to:el()}],rounded:[{rounded:em()}],"rounded-s":[{"rounded-s":em()}],"rounded-e":[{"rounded-e":em()}],"rounded-t":[{"rounded-t":em()}],"rounded-r":[{"rounded-r":em()}],"rounded-b":[{"rounded-b":em()}],"rounded-l":[{"rounded-l":em()}],"rounded-ss":[{"rounded-ss":em()}],"rounded-se":[{"rounded-se":em()}],"rounded-ee":[{"rounded-ee":em()}],"rounded-es":[{"rounded-es":em()}],"rounded-tl":[{"rounded-tl":em()}],"rounded-tr":[{"rounded-tr":em()}],"rounded-br":[{"rounded-br":em()}],"rounded-bl":[{"rounded-bl":em()}],"border-w":[{border:ef()}],"border-w-x":[{"border-x":ef()}],"border-w-y":[{"border-y":ef()}],"border-w-s":[{"border-s":ef()}],"border-w-e":[{"border-e":ef()}],"border-w-bs":[{"border-bs":ef()}],"border-w-be":[{"border-be":ef()}],"border-w-t":[{"border-t":ef()}],"border-w-r":[{"border-r":ef()}],"border-w-b":[{"border-b":ef()}],"border-w-l":[{"border-l":ef()}],"divide-x":[{"divide-x":ef()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":ef()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...ep(),"hidden","none"]}],"divide-style":[{divide:[...ep(),"hidden","none"]}],"border-color":[{border:el()}],"border-color-x":[{"border-x":el()}],"border-color-y":[{"border-y":el()}],"border-color-s":[{"border-s":el()}],"border-color-e":[{"border-e":el()}],"border-color-bs":[{"border-bs":el()}],"border-color-be":[{"border-be":el()}],"border-color-t":[{"border-t":el()}],"border-color-r":[{"border-r":el()}],"border-color-b":[{"border-b":el()}],"border-color-l":[{"border-l":el()}],"divide-color":[{divide:el()}],"outline-style":[{outline:[...ep(),"none","hidden"]}],"outline-offset":[{"outline-offset":[z,F,O]}],"outline-w":[{outline:["",z,K,G]}],"outline-color":[{outline:el()}],shadow:[{shadow:["","none",d,ee,V]}],"shadow-color":[{shadow:el()}],"inset-shadow":[{"inset-shadow":["none",u,ee,V]}],"inset-shadow-color":[{"inset-shadow":el()}],"ring-w":[{ring:ef()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:el()}],"ring-offset-w":[{"ring-offset":[z,G]}],"ring-offset-color":[{"ring-offset":el()}],"inset-ring-w":[{"inset-ring":ef()}],"inset-ring-color":[{"inset-ring":el()}],"text-shadow":[{"text-shadow":["none",m,ee,V]}],"text-shadow-color":[{"text-shadow":el()}],opacity:[{opacity:[z,F,O]}],"mix-blend":[{"mix-blend":[...eg(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":eg()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[z]}],"mask-image-linear-from-pos":[{"mask-linear-from":eb()}],"mask-image-linear-to-pos":[{"mask-linear-to":eb()}],"mask-image-linear-from-color":[{"mask-linear-from":el()}],"mask-image-linear-to-color":[{"mask-linear-to":el()}],"mask-image-t-from-pos":[{"mask-t-from":eb()}],"mask-image-t-to-pos":[{"mask-t-to":eb()}],"mask-image-t-from-color":[{"mask-t-from":el()}],"mask-image-t-to-color":[{"mask-t-to":el()}],"mask-image-r-from-pos":[{"mask-r-from":eb()}],"mask-image-r-to-pos":[{"mask-r-to":eb()}],"mask-image-r-from-color":[{"mask-r-from":el()}],"mask-image-r-to-color":[{"mask-r-to":el()}],"mask-image-b-from-pos":[{"mask-b-from":eb()}],"mask-image-b-to-pos":[{"mask-b-to":eb()}],"mask-image-b-from-color":[{"mask-b-from":el()}],"mask-image-b-to-color":[{"mask-b-to":el()}],"mask-image-l-from-pos":[{"mask-l-from":eb()}],"mask-image-l-to-pos":[{"mask-l-to":eb()}],"mask-image-l-from-color":[{"mask-l-from":el()}],"mask-image-l-to-color":[{"mask-l-to":el()}],"mask-image-x-from-pos":[{"mask-x-from":eb()}],"mask-image-x-to-pos":[{"mask-x-to":eb()}],"mask-image-x-from-color":[{"mask-x-from":el()}],"mask-image-x-to-color":[{"mask-x-to":el()}],"mask-image-y-from-pos":[{"mask-y-from":eb()}],"mask-image-y-to-pos":[{"mask-y-to":eb()}],"mask-image-y-from-color":[{"mask-y-from":el()}],"mask-image-y-to-color":[{"mask-y-to":el()}],"mask-image-radial":[{"mask-radial":[F,O]}],"mask-image-radial-from-pos":[{"mask-radial-from":eb()}],"mask-image-radial-to-pos":[{"mask-radial-to":eb()}],"mask-image-radial-from-color":[{"mask-radial-from":el()}],"mask-image-radial-to-color":[{"mask-radial-to":el()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":x()}],"mask-image-conic-pos":[{"mask-conic":[z]}],"mask-image-conic-from-pos":[{"mask-conic-from":eb()}],"mask-image-conic-to-pos":[{"mask-conic-to":eb()}],"mask-image-conic-from-color":[{"mask-conic-from":el()}],"mask-image-conic-to-color":[{"mask-conic-to":el()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:ei()}],"mask-repeat":[{mask:ec()}],"mask-size":[{mask:ed()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",F,O]}],filter:[{filter:["","none",F,O]}],blur:[{blur:eh()}],brightness:[{brightness:[z,F,O]}],contrast:[{contrast:[z,F,O]}],"drop-shadow":[{"drop-shadow":["","none",f,ee,V]}],"drop-shadow-color":[{"drop-shadow":el()}],grayscale:[{grayscale:["",z,F,O]}],"hue-rotate":[{"hue-rotate":[z,F,O]}],invert:[{invert:["",z,F,O]}],saturate:[{saturate:[z,F,O]}],sepia:[{sepia:["",z,F,O]}],"backdrop-filter":[{"backdrop-filter":["","none",F,O]}],"backdrop-blur":[{"backdrop-blur":eh()}],"backdrop-brightness":[{"backdrop-brightness":[z,F,O]}],"backdrop-contrast":[{"backdrop-contrast":[z,F,O]}],"backdrop-grayscale":[{"backdrop-grayscale":["",z,F,O]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[z,F,O]}],"backdrop-invert":[{"backdrop-invert":["",z,F,O]}],"backdrop-opacity":[{"backdrop-opacity":[z,F,O]}],"backdrop-saturate":[{"backdrop-saturate":[z,F,O]}],"backdrop-sepia":[{"backdrop-sepia":["",z,F,O]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":U()}],"border-spacing-x":[{"border-spacing-x":U()}],"border-spacing-y":[{"border-spacing-y":U()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",F,O]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[z,"initial",F,O]}],ease:[{ease:["linear","initial",h,F,O]}],delay:[{delay:[z,F,O]}],animate:[{animate:["none",v,F,O]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[g,F,O]}],"perspective-origin":[{"perspective-origin":k()}],rotate:[{rotate:ev()}],"rotate-x":[{"rotate-x":ev()}],"rotate-y":[{"rotate-y":ev()}],"rotate-z":[{"rotate-z":ev()}],scale:[{scale:ew()}],"scale-x":[{"scale-x":ew()}],"scale-y":[{"scale-y":ew()}],"scale-z":[{"scale-z":ew()}],"scale-3d":["scale-3d"],skew:[{skew:ey()}],"skew-x":[{"skew-x":ey()}],"skew-y":[{"skew-y":ey()}],transform:[{transform:[F,O,"","none","gpu","cpu"]}],"transform-origin":[{origin:k()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:ex()}],"translate-x":[{"translate-x":ex()}],"translate-y":[{"translate-y":ex()}],"translate-z":[{"translate-z":ex()}],"translate-none":["translate-none"],accent:[{accent:el()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:el()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",F,O]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":U()}],"scroll-mx":[{"scroll-mx":U()}],"scroll-my":[{"scroll-my":U()}],"scroll-ms":[{"scroll-ms":U()}],"scroll-me":[{"scroll-me":U()}],"scroll-mbs":[{"scroll-mbs":U()}],"scroll-mbe":[{"scroll-mbe":U()}],"scroll-mt":[{"scroll-mt":U()}],"scroll-mr":[{"scroll-mr":U()}],"scroll-mb":[{"scroll-mb":U()}],"scroll-ml":[{"scroll-ml":U()}],"scroll-p":[{"scroll-p":U()}],"scroll-px":[{"scroll-px":U()}],"scroll-py":[{"scroll-py":U()}],"scroll-ps":[{"scroll-ps":U()}],"scroll-pe":[{"scroll-pe":U()}],"scroll-pbs":[{"scroll-pbs":U()}],"scroll-pbe":[{"scroll-pbe":U()}],"scroll-pt":[{"scroll-pt":U()}],"scroll-pr":[{"scroll-pr":U()}],"scroll-pb":[{"scroll-pb":U()}],"scroll-pl":[{"scroll-pl":U()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",F,O]}],fill:[{fill:["none",...el()]}],"stroke-w":[{stroke:[z,K,G,H]}],stroke:[{stroke:["none",...el()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}});function ef(){for(var e=arguments.length,r=Array(e),n=0;n<e;n++)r[n]=arguments[n];return em(t(r))}},19455,29315,30628,76477,977,19805,67805,54694,91730,26292,35423,17514,27601,e=>{"use strict";let t;e.s(["Button",()=>eh,"buttonVariants",()=>eg],19455);var r=e.i(18050);e.i(47167);var n=e.i(71645);function o(){return"undefined"!=typeof window}function s(e){return i(e)?(e.nodeName||"").toLowerCase():"#document"}function a(e){var t;return(null==e||null==(t=e.ownerDocument)?void 0:t.defaultView)||window}function l(e){var t;return null==(t=(i(e)?e.ownerDocument:e.document)||window.document)?void 0:t.documentElement}function i(e){return!!o()&&(e instanceof Node||e instanceof a(e).Node)}function c(e){return!!o()&&(e instanceof Element||e instanceof a(e).Element)}function d(e){return!!o()&&(e instanceof HTMLElement||e instanceof a(e).HTMLElement)}function u(e){return!!o()&&"undefined"!=typeof ShadowRoot&&(e instanceof ShadowRoot||e instanceof a(e).ShadowRoot)}function m(e){let{overflow:t,overflowX:r,overflowY:n,display:o}=k(e);return/auto|scroll|overlay|hidden|clip/.test(t+n+r)&&"inline"!==o&&"contents"!==o}function f(e){return/^(table|td|th)$/.test(s(e))}function p(e){try{if(e.matches(":popover-open"))return!0}catch(e){}try{return e.matches(":modal")}catch(e){return!1}}e.s(["useButton",()=>J],91730),e.s(["getComputedStyle",()=>k,"getContainingBlock",()=>w,"getDocumentElement",()=>l,"getFrameElement",()=>U,"getNodeName",()=>s,"getNodeScroll",()=>S,"getOverflowAncestors",()=>function e(t,r,n){var o;void 0===r&&(r=[]),void 0===n&&(n=!0);let s=function e(t){let r=R(t);return x(r)?t.ownerDocument?t.ownerDocument.body:t.body:d(r)&&m(r)?r:e(r)}(t),l=s===(null==(o=t.ownerDocument)?void 0:o.body),i=a(s);if(!l)return r.concat(s,e(s,[],n));{let t=U(i);return r.concat(i,i.visualViewport||[],m(s)?s:[],t&&n?e(t):[])}},"getParentNode",()=>R,"getWindow",()=>a,"isContainingBlock",()=>v,"isElement",()=>c,"isHTMLElement",()=>d,"isLastTraversableNode",()=>x,"isNode",()=>i,"isOverflowElement",()=>m,"isShadowRoot",()=>u,"isTableElement",()=>f,"isTopLayer",()=>p,"isWebKit",()=>y],29315);let g=/transform|translate|scale|rotate|perspective|filter/,b=/paint|layout|strict|content/,h=e=>!!e&&"none"!==e;function v(e){let t=c(e)?k(e):e;return h(t.transform)||h(t.translate)||h(t.scale)||h(t.rotate)||h(t.perspective)||!y()&&(h(t.backdropFilter)||h(t.filter))||g.test(t.willChange||"")||b.test(t.contain||"")}function w(e){let t=R(e);for(;d(t)&&!x(t);){if(v(t))return t;if(p(t))break;t=R(t)}return null}function y(){return null==t&&(t="undefined"!=typeof CSS&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),t}function x(e){return/^(html|body|#document)$/.test(s(e))}function k(e){return a(e).getComputedStyle(e)}function S(e){return c(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function R(e){if("html"===s(e))return e;let t=e.assignedSlot||e.parentNode||u(e)&&e.host||l(e);return u(t)?t.host:t}function U(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}e.s(["useStableCallback",()=>A],76477),e.s(["useRefWithInit",()=>C],30628);let P={};function C(e,t){let r=n.useRef(P);return r.current===P&&(r.current=e(t)),r}let L=n["useInsertionEffect".concat(Math.random().toFixed(1)).slice(0,-3)],z=L&&L!==n.useLayoutEffect?L:e=>e();function A(e){let t=C(T).current;return t.next=e,z(t.effect),t.trampoline}function T(){let e={next:void 0,callback:j,trampoline:function(){for(var t,r=arguments.length,n=Array(r),o=0;o<r;o++)n[o]=arguments[o];return null==(t=e.callback)?void 0:t.call(e,...n)},effect:()=>{e.callback=e.next}};return e}function j(){}e.s(["useIsoLayoutEffect",()=>E],977);let E="undefined"!=typeof document?n.useLayoutEffect:()=>{};function I(e,t){return e&&!t?e:!e&&t?t:e||t?{...e,...t}:void 0}e.s(["makeEventPreventable",()=>q,"mergeClassNames",()=>$,"mergeProps",()=>N,"mergePropsN",()=>D],19805);let _={};function N(e,t,r,n,o){if(!r&&!n&&!o&&!e)return M(t);let s=M(e);return t&&(s=B(s,t)),r&&(s=B(s,r)),n&&(s=B(s,n)),o&&(s=B(s,o)),s}function D(e){if(0===e.length)return _;if(1===e.length)return M(e[0]);let t=M(e[0]);for(let r=1;r<e.length;r+=1)t=B(t,e[r]);return t}function M(e){return G(e)?{...H(e,_)}:function(e){let t={...e};for(let e in t){let r=t[e];O(e,r)&&(t[e]=W(r))}return t}(e)}function B(e,t){return G(t)?H(t,e):function(e,t){if(!t)return e;for(let r in t){let n=t[r];switch(r){case"style":e[r]=I(e.style,n);break;case"className":e[r]=$(e.className,n);break;default:O(r,n)?e[r]=function(e,t){return t?e?r=>{if(Q(r)){q(r);let n=t(r);return r.baseUIHandlerPrevented||null==e||e(r),n}let n=t(r);return null==e||e(r),n}:W(t):e}(e[r],n):e[r]=n}}return e}(e,t)}function O(e,t){let r=e.charCodeAt(0),n=e.charCodeAt(1),o=e.charCodeAt(2);return 111===r&&110===n&&o>=65&&o<=90&&("function"==typeof t||void 0===t)}function G(e){return"function"==typeof e}function H(e,t){return G(e)?e(t):null!=e?e:_}function W(e){return e?t=>(Q(t)&&q(t),e(t)):e}function q(e){return e.preventBaseUIHandler=()=>{e.baseUIHandlerPrevented=!0},e}function $(e,t){return t?e?t+" "+e:t:e}function Q(e){return null!=e&&"object"==typeof e&&"nativeEvent"in e}e.s(["CompositeRootContext",()=>F,"useCompositeRootContext",()=>K],54694),e.s(["default",()=>V],67805);let V=function(e){for(var t=arguments.length,r=Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];let o=new URL("https://base-ui.com/production-error");return o.searchParams.set("code",e.toString()),r.forEach(e=>o.searchParams.append("args[]",e)),"".concat("Base UI"," error #").concat(e,"; visit ").concat(o," for the full message.")},F=n.createContext(void 0);function K(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=n.useContext(F);if(void 0===t&&!e)throw Error(V(16));return t}function J(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{disabled:t=!1,focusableWhenDisabled:r,tabIndex:o=0,native:s=!0,composite:a}=e,l=n.useRef(null),i=K(!0),c=null!=a?a:void 0!==i,{props:d}=function(e){let{focusableWhenDisabled:t,disabled:r,composite:o=!1,tabIndex:s=0,isNativeButton:a}=e,l=o&&!1!==t,i=o&&!1===t;return{props:n.useMemo(()=>{let e={onKeyDown(e){r&&t&&"Tab"!==e.key&&e.preventDefault()}};return o||(e.tabIndex=s,!a&&r&&(e.tabIndex=t?s:-1)),(a&&(t||l)||!a&&r)&&(e["aria-disabled"]=r),a&&(!t||i)&&(e.disabled=r),e},[o,r,t,l,i,a,s])}}({focusableWhenDisabled:r,disabled:t,composite:c,tabIndex:o,isNativeButton:s}),u=n.useCallback(()=>{let e=l.current;Y(e)&&c&&t&&void 0===d.disabled&&e.disabled&&(e.disabled=!1)},[t,d.disabled,c]);return E(u,[u]),{getButtonProps:n.useCallback(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{onClick:r,onMouseDown:n,onKeyUp:o,onKeyDown:a,onPointerDown:l,...i}=e;return N({type:s?"button":void 0,onClick(e){if(t)return void e.preventDefault();null==r||r(e)},onMouseDown(e){t||null==n||n(e)},onKeyDown(e){var n;if(t||(q(e),null==a||a(e),e.baseUIHandlerPrevented))return;let o=e.target===e.currentTarget,l=e.currentTarget,i=Y(l),d=!s&&!!((null==(n=l)?void 0:n.tagName)==="A"&&(null==n?void 0:n.href)),u=o&&(s?i:!d),m="Enter"===e.key,f=" "===e.key,p=l.getAttribute("role"),g=(null==p?void 0:p.startsWith("menuitem"))||"option"===p||"gridcell"===p;if(o&&c&&f){if(e.defaultPrevented&&g)return;e.preventDefault(),d||s&&i?(l.click(),e.preventBaseUIHandler()):u&&(null==r||r(e),e.preventBaseUIHandler());return}u&&(!s&&(f||m)&&e.preventDefault(),!s&&m&&(null==r||r(e)))},onKeyUp(e){if(!t){if(q(e),null==o||o(e),e.target===e.currentTarget&&s&&c&&Y(e.currentTarget)&&" "===e.key)return void e.preventDefault();!e.baseUIHandlerPrevented&&(e.target!==e.currentTarget||s||c||" "!==e.key||null==r||r(e))}},onPointerDown(e){if(t)return void e.preventDefault();null==l||l(e)}},s?void 0:{role:"button"},d,i)},[t,d,c,s]),buttonRef:A(e=>{l.current=e,u()})}}function Y(e){return d(e)&&"BUTTON"===e.tagName}function X(e,t,r,n){var o,s,a,l,i;let c=C(ee).current;return o=c,s=e,a=t,l=r,i=n,(o.refs[0]!==s||o.refs[1]!==a||o.refs[2]!==l||o.refs[3]!==i)&&et(c,[e,t,r,n]),c.callback}function Z(e){var t,r;let n=C(ee).current;return t=n,r=e,(t.refs.length!==r.length||t.refs.some((e,t)=>e!==r[t]))&&et(n,e),n.callback}function ee(){return{callback:null,cleanup:null,refs:[]}}function et(e,t){if(e.refs=t,t.every(e=>null==e)){e.callback=null;return}e.callback=r=>{if(e.cleanup&&(e.cleanup(),e.cleanup=null),null!=r){let n=Array(t.length).fill(null);for(let e=0;e<t.length;e+=1){let o=t[e];if(null!=o)switch(typeof o){case"function":{let t=o(r);"function"==typeof t&&(n[e]=t);break}case"object":o.current=r}}e.cleanup=()=>{for(let e=0;e<t.length;e+=1){let r=t[e];if(null!=r)switch(typeof r){case"function":{let t=n[e];"function"==typeof t?t():r(null);break}case"object":r.current=null}}}}}}e.s(["useRenderElement",()=>ei],27601),e.s(["useMergedRefs",()=>X,"useMergedRefsN",()=>Z],26292),e.s(["isReactVersionAtLeast",()=>en],35423);let er=parseInt(n.version,10);function en(e){return er>=e}function eo(e){var t;if(!n.isValidElement(e))return null;let r=e.props;return null!=(t=er>=19?null==r?void 0:r.ref:e.ref)?t:null}function es(){}e.s(["EMPTY_ARRAY",()=>ea,"EMPTY_OBJECT",()=>el,"NOOP",()=>es],17514);let ea=Object.freeze([]),el=Object.freeze({});function ei(e,t){var r;let o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},s=t.render,a=function(e){var t,r;let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{className:o,style:s,render:a}=e,{state:l=el,ref:i,props:c,stateAttributesMapping:d,enabled:u=!0}=n,m=u?"function"==typeof o?o(l):o:void 0,f=u?"function"==typeof s?s(l):s:void 0,p=u?function(e,t){let r={};for(let n in e){let o=e[n];if(null==t?void 0:t.hasOwnProperty(n)){let e=t[n](o);null!=e&&Object.assign(r,e);continue}!0===o?r["data-".concat(n.toLowerCase())]="":o&&(r["data-".concat(n.toLowerCase())]=o.toString())}return r}(l,d):el,g=u&&c?Array.isArray(r=c)?D(r):N(void 0,r):void 0,b=u?null!=(t=I(p,g))?t:{}:el;return("undefined"!=typeof document&&(u?Array.isArray(i)?b.ref=Z([b.ref,eo(a),...i]):b.ref=X(b.ref,eo(a),i):X(null,null)),u)?(void 0!==m&&(b.className=$(b.className,m)),void 0!==f&&(b.style=I(b.style,f)),b):el}(t,o);return!1===o.enabled?null:function(e,t,r,o){if(t){if("function"==typeof t)return t(r,o);let e=N(r,t.props);e.ref=r.ref;let s=t;return(null==s?void 0:s.$$typeof)===ec&&(s=n.Children.toArray(t)[0]),n.cloneElement(s,e)}if(e&&"string"==typeof e){var s,a;return s=e,a=r,"button"===s?(0,n.createElement)("button",{type:"button",...a,key:a.key}):"img"===s?(0,n.createElement)("img",{alt:"",...a,key:a.key}):n.createElement(s,a)}throw Error(V(8))}(e,s,a,null!=(r=o.state)?r:el)}let ec=Symbol.for("react.lazy"),ed=n.forwardRef(function(e,t){let{render:r,className:n,disabled:o=!1,focusableWhenDisabled:s=!1,nativeButton:a=!0,style:l,...i}=e,{getButtonProps:c,buttonRef:d}=J({disabled:o,focusableWhenDisabled:s,native:a});return ei("button",e,{state:{disabled:o},ref:[t,d],props:[i,c]})});var eu=e.i(7670);let em=e=>"boolean"==typeof e?"".concat(e):0===e?"0":e,ef=eu.clsx;var ep=e.i(75157);let eg=((e,t)=>r=>{var n;if((null==t?void 0:t.variants)==null)return ef(e,null==r?void 0:r.class,null==r?void 0:r.className);let{variants:o,defaultVariants:s}=t,a=Object.keys(o).map(e=>{let t=null==r?void 0:r[e],n=null==s?void 0:s[e];if(null===t)return null;let a=em(t)||em(n);return o[e][a]}),l=r&&Object.entries(r).reduce((e,t)=>{let[r,n]=t;return void 0===n||(e[r]=n),e},{});return ef(e,a,null==t||null==(n=t.compoundVariants)?void 0:n.reduce((e,t)=>{let{class:r,className:n,...o}=t;return Object.entries(o).every(e=>{let[t,r]=e;return Array.isArray(r)?r.includes({...s,...l}[t]):({...s,...l})[t]===r})?[...e,r,n]:e},[]),null==r?void 0:r.class,null==r?void 0:r.className)})("group/button inline-flex shrink-0 items-center justify-center rounded cursor-pointer !pl-[16px] !pr-[16px] [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg]:align-middle [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-[var(--ds-accent)] border-0 hover:bg-[var(--ds-accent-hover)]",outline:"!border !border-solid !border-[var(--ds-accent)] !rounded bg-[var(--surface-1)] hover:bg-[var(--surface-1)] hover:border-[var(--ds-accent-hover)] aria-expanded:bg-[var(--surface-1)] aria-expanded:border-[var(--ds-accent-hover)] dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary hover:bg-secondary/80 aria-expanded:bg-secondary",ghost:"hover:bg-muted aria-expanded:bg-muted dark:hover:bg-muted/50",destructive:"bg-destructive/10 hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40",link:"underline-offset-4 hover:underline",plain:"bg-transparent border-0","plain-outline":"bg-[var(--surface-1)] !border !border-solid !border-[var(--border-default)] !rounded hover:bg-[var(--surface-1)] hover:!border-[var(--ds-accent)]"},size:{default:"h-7 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 text-base",xs:"h-6 gap-1 rounded-[min(var(--radius-md),12px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-7 gap-1 rounded-[min(var(--radius-md),14px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5",lg:"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",icon:"size-8 pl-[0] pr-[0]","icon-xs":"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg","icon-lg":"size-9"}},defaultVariants:{variant:"default",size:"default"}}),eb={default:"text-[var(--surface-1)] hover:text-[var(--surface-1)] [&_svg]:stroke-current [&_svg_path]:!fill-current",outline:"text-[var(--ds-accent)] hover:text-[var(--ds-accent-hover)] aria-expanded:text-[var(--ds-accent-hover)] [&_svg]:stroke-current [&_svg_path]:!fill-current",secondary:"text-secondary-foreground aria-expanded:text-secondary-foreground [&_svg]:stroke-current [&_svg_path]:!fill-current",ghost:"hover:text-foreground aria-expanded:text-foreground [&_svg]:stroke-current [&_svg_path]:!fill-current",destructive:"text-destructive [&_svg]:stroke-current [&_svg_path]:!fill-current",link:"text-primary [&_svg]:stroke-current [&_svg_path]:!fill-current",plain:"text-[var(--ds-text)] [&_svg]:stroke-current [&_svg_path]:!fill-current","plain-outline":"text-[var(--ds-text)] hover:text-[var(--ds-accent)] [&_svg]:stroke-current [&_svg_path]:!fill-current"};function eh(e){let{className:t,variant:n="default",size:o="default",...s}=e,a=null!=n?n:"default",l=null!=o?o:"default",i="icon"===l?void 0:eb[a];return(0,r.jsx)(ed,{"data-slot":"button","data-size":l,className:(0,ep.cn)(eg({variant:a,size:l}),i,t),...s})}},76639,e=>{"use strict";e.s(["Dialog",()=>i,"DialogBody",()=>p,"DialogClose",()=>g,"DialogContent",()=>d,"DialogDescription",()=>f,"DialogHeader",()=>u,"DialogTitle",()=>m]);var t=e.i(18050),r=e.i(71645),n=e.i(74080),o=e.i(75157),s=e.i(72064);let a=r.createContext(null);function l(){let e=r.useContext(a);if(!e)throw Error("Dialog components must be used inside <Dialog>.");return e}function i(e){let{open:r,onOpenChange:n,children:o}=e;return(0,t.jsx)(a.Provider,{value:{open:r,onOpenChange:n},children:o})}function c(e){let{children:t}=e;return"undefined"==typeof document?null:(0,n.createPortal)(t,document.body)}function d(e){let{className:n,children:s,"aria-labelledby":a}=e,{open:i,onOpenChange:d}=l();return(r.useEffect(()=>{if(!i)return;let e=e=>{"Escape"===e.key&&d(!1)},t=document.body.style.overflow;return document.body.style.overflow="hidden",window.addEventListener("keydown",e),()=>{document.body.style.overflow=t,window.removeEventListener("keydown",e)}},[i,d]),i)?(0,t.jsxs)(c,{children:[(0,t.jsx)("div",{className:"fixed inset-0 z-[10000] animate-[backdropIn_0.2s_ease-out] bg-black/45",onClick:()=>d(!1),"aria-hidden":!0}),(0,t.jsx)("div",{className:"fixed inset-0 z-[10000] flex items-center justify-center p-4",children:(0,t.jsx)("div",{role:"dialog","aria-modal":"true","aria-labelledby":a,className:(0,o.cn)("flex max-h-[92vh] w-full max-w-[760px] animate-[modalIn_0.2s_ease-out] flex-col overflow-hidden rounded-2xl border border-[var(--ds-border)] bg-[var(--ds-bg)] shadow-[var(--shadow-lg)]",n),onClick:e=>e.stopPropagation(),children:s})})]}):null}function u(e){let{className:r,...n}=e;return(0,t.jsx)("div",{className:(0,o.cn)("flex flex-shrink-0 items-center justify-between gap-3 border-b border-[var(--ds-border)] px-4 py-[.85rem]",r),...n})}function m(e){let{className:r,...n}=e;return(0,t.jsx)("h2",{className:(0,o.cn)("m-[.15rem_.35rem_0] text-lg font-semibold text-[var(--ds-text)]",r),...n})}function f(e){let{className:r,...n}=e;return(0,t.jsx)("p",{className:(0,o.cn)("m-[.35rem_.35rem_0] text-sm text-[var(--ds-muted)]",r),...n})}function p(e){let{className:r,...n}=e;return(0,t.jsx)("div",{className:(0,o.cn)("min-h-0 flex-1 px-4 py-3",r),...n})}function g(e){let{className:r,...n}=e,{onOpenChange:a}=l();return(0,t.jsx)("button",{type:"button",className:(0,o.cn)("cursor-pointer rounded-md border-none bg-transparent px-2 pb-1 pt-2 hover:bg-[var(--ds-item-bg-hover)]",r),onClick:e=>{var t;null==(t=n.onClick)||t.call(n,e),e.defaultPrevented||a(!1)},...n,children:(0,t.jsx)(s.default,{name:"Close",className:"size-4"})})}},68499,e=>{"use strict";e.s(["confirmAlertDialog",()=>a]);var t=e.i(18050),r=e.i(88014),n=e.i(19455),o=e.i(76639);function s(e){let{options:r,onResolve:s}=e,{title:a,description:l="",confirmText:i="确认",cancelText:c="取消"}=r;return(0,t.jsx)(o.Dialog,{open:!0,onOpenChange:e=>!e&&s(!1),children:(0,t.jsxs)(o.DialogContent,{className:"min-h-0 max-w-[460px] overflow-hidden p-0",children:[(0,t.jsx)(o.DialogHeader,{className:"mb-0 border-b border-[var(--ds-border)] px-5 pb-3 pt-5",children:(0,t.jsxs)("div",{children:[(0,t.jsx)(o.DialogTitle,{className:"m-0 text-lg font-semibold text-[var(--ds-text)]",children:a}),l?(0,t.jsx)(o.DialogDescription,{className:"m-0 mt-2 whitespace-pre-wrap text-base leading-5 text-[var(--ds-muted)]",children:l}):null]})}),(0,t.jsxs)("div",{className:"flex justify-end gap-2 px-4 py-3",children:[(0,t.jsx)(n.Button,{type:"button",variant:"plain-outline",size:"lg",onClick:()=>s(!1),children:c}),(0,t.jsx)(n.Button,{type:"button",size:"lg",onClick:()=>s(!0),children:i})]})]})})}function a(e){return"undefined"==typeof document?Promise.resolve(!1):new Promise(n=>{let o=document.createElement("div");document.body.appendChild(o);let a=(0,r.createRoot)(o),l=!1;a.render((0,t.jsx)(s,{options:e,onResolve:e=>{l||(l=!0,a.unmount(),o.remove(),n(e))}}))})}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,93479,e=>{"use strict";e.s(["Input",()=>l]);var a=e.i(18050),t=e.i(75157);function l(e){let{className:l,type:s="text",size:i="default",...n}=e;return(0,a.jsx)("input",{type:s,"data-slot":"input","data-size":i,className:(0,t.cn)("h-9 w-full appearance-none rounded-md border border-solid border-border bg-transparent px-3 text-base outline-none transition-[color,box-shadow,border-color] duration-150 ease-in-out placeholder:text-muted-foreground hover:border-[#e0e0e0] focus-visible:border-[var(--border-focus)] focus-visible:[box-shadow:var(--ring-focus-sm)] read-only:focus-visible:border-border read-only:focus-visible:[box-shadow:none] disabled:cursor-not-allowed disabled:opacity-50 disabled:focus-visible:border-border disabled:focus-visible:[box-shadow:none] data-[size=default]:h-9 data-[size=lg]:h-10 data-[size=sm]:h-7",l),...n})}},55242,e=>{"use strict";e.s(["AppDialog",()=>i]);var a=e.i(18050),t=e.i(71645),l=e.i(76639),s=e.i(75157);function i(e){let{open:i,onOpenChange:n,title:r,children:o,footer:c,width:d="max-w-3xl",minHeight:u}=e,x=(0,t.useId)();return(0,a.jsx)(l.Dialog,{open:i,onOpenChange:n,children:(0,a.jsxs)(l.DialogContent,{"aria-labelledby":x,className:(0,s.cn)(d,u?"!min-h-[--min-h]":""),style:u?{"--min-h":u}:void 0,children:[(0,a.jsxs)(l.DialogHeader,{children:[(0,a.jsx)(l.DialogTitle,{id:x,children:r}),(0,a.jsx)(l.DialogClose,{"aria-label":"关闭"})]}),(0,a.jsx)(l.DialogBody,{className:"!px-4 !py-3",children:o}),c?(0,a.jsx)("div",{className:"flex flex-shrink-0 justify-end gap-2 border-t border-[var(--ds-border)] bg-[var(--ds-sidebar)] px-4 py-3",children:c}):null]})})}},39721,e=>{"use strict";e.s(["SkillsManageView",()=>I],39721);var a=e.i(18050),t=e.i(71645),l=e.i(65934),s=e.i(87243),i=e.i(13354),n=e.i(50711),r=e.i(51419),o=e.i(92715),c=e.i(19455),d=e.i(94055),u=e.i(94197),x=e.i(72064),p=e.i(93479),m=e.i(75157);function b(e){let{className:t,...l}=e;return(0,a.jsx)("nav",{role:"navigation","aria-label":"pagination","data-slot":"pagination",className:(0,m.cn)("flex w-full justify-end",t),...l})}let h=t.forwardRef((e,t)=>{let{className:l,...s}=e;return(0,a.jsx)("ul",{ref:t,"data-slot":"pagination-content",className:(0,m.cn)("flex flex-row flex-wrap items-center justify-end gap-1",l),...s})});h.displayName="PaginationContent";let g=t.forwardRef((e,t)=>{let{className:l,...s}=e;return(0,a.jsx)("li",{ref:t,"data-slot":"pagination-item",className:(0,m.cn)("",l),...s})});g.displayName="PaginationItem",t.forwardRef((e,t)=>{let{className:l,isActive:s,size:i="icon",...n}=e;return(0,a.jsx)("a",{ref:t,"aria-current":s?"page":void 0,"data-slot":"pagination-link","data-active":s?"true":void 0,className:(0,m.cn)((0,c.buttonVariants)({variant:s?"outline":"ghost",size:i}),l),...n})}).displayName="PaginationLink";var f=e.i(62427);function v(e){let{active:l,wsUrl:s,apiBase:n,agent:r,onAfterInstall:d,className:u}=e,[m,v]=(0,t.useState)(""),[y,k]=(0,t.useState)(1),[j,C]=(0,t.useState)(0),[N,w]=(0,t.useState)([]),[S,T]=(0,t.useState)(!1),[A,B]=(0,t.useState)(""),[I,z]=(0,t.useState)({}),R=(0,t.useRef)(0),E=(0,t.useCallback)(async()=>{let e=++R.current;T(!0),B("");try{let a=await (0,f.listCloudSkillCatalog)(s,n,r,m,y,10);if(e!==R.current)return;let t=Array.isArray(a.items)?a.items:[],l=[];for(let e of t)e&&"object"==typeof e&&e.id&&l.push({id:String(e.id),title:String(e.title||""),skillName:String(e.skillName||""),description:"string"==typeof e.description?e.description:"",installed:!!e.installed});w(l),C(a.totalPages)}catch(a){if(e!==R.current)return;w([]),C(0),B(a instanceof Error?a.message:String(a))}finally{e===R.current&&T(!1)}},[s,n,r,m,y]);(0,t.useEffect)(()=>{if(!l){v(""),k(1),C(0),w([]),B(""),z({}),R.current+=1;return}E()},[l,E]);let P=(0,t.useMemo)(()=>{if(S)return"加载中…";if(A)return"加载失败:".concat(A);let e=N.reduce((e,a)=>e+ +!!a.installed,0);return"已安装 ".concat(e," 项")},[S,A,N]),L=(0,t.useCallback)(async(e,a)=>{z(a=>({...a,[e]:!0}));try{await (0,f.installCloudSkill)(s,n,r,e),i.appToast.success("云端技能已安装:".concat(a)),await E(),null==d||d()}catch(e){i.appToast.error("安装失败:".concat(e instanceof Error?e.message:String(e)))}finally{z(a=>{let t={...a};return delete t[e],t})}},[s,n,r,E,d]),D=(0,t.useCallback)(e=>{k(1),v(e)},[]);if(!l)return null;let M=j>0?"第 ".concat(y,"/").concat(j," 页"):"第 0/0 页",U=S||y<=1,K=S||j<=0||y>=j,O=[{key:"name",title:"名称",headerClassName:"text-base",cellClassName:"text-base text-[var(--ds-text)]",render:e=>e.skillName?"".concat(e.skillName):e.id},{key:"description",title:"详情",headerClassName:"text-base",cellClassName:"text-base text-[var(--ds-text)]",render:e=>(0,a.jsxs)(a.Fragment,{children:[e.title,e.description?" — ".concat(e.description):""]})},{key:"status",title:"状态",headerClassName:"text-base",cellClassName:"whitespace-nowrap text-base text-[var(--ds-text)]",render:e=>e.installed?"已安装":"未安装"},{key:"actions",title:"操作",headerClassName:"w-[96px] text-right text-base",cellClassName:"w-[116px] text-right",render:e=>{let t=!!I[e.id],l=!!e.installed;return!t&&l?"-":(0,a.jsx)(c.Button,{type:"button",size:"sm",variant:"outline",disabled:t||l,onClick:()=>void L(e.id,e.title||e.skillName||e.id),children:t?"安装中…":l?"已安装":"安装"})}}];return(0,a.jsx)("div",{className:u,children:(0,a.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,a.jsx)(p.Input,{type:"search",value:m,onChange:e=>D(e.target.value),placeholder:"搜索云端技能…",className:"h-10 border-[var(--ds-border)] bg-[var(--ds-bg)] text-base"}),(0,a.jsx)("div",{className:"text-sm text-[var(--ds-muted)]",children:P}),(0,a.jsx)(o.AppTable,{rows:N,columns:O,getRowKey:e=>e.id,className:"min-h-0 flex-1 rounded-md",bodyProps:{viewportPaginationReserve:64},emptyNode:S?(0,a.jsx)("p",{className:"text-center text-base",children:"加载中…"}):void 0}),(0,a.jsx)(b,{className:"mx-0 w-full",children:(0,a.jsxs)(h,{className:"w-full flex-wrap justify-end gap-2",children:[(0,a.jsx)(g,{children:(0,a.jsxs)(c.Button,{type:"button",variant:"outline",size:"sm",disabled:U,className:"gap-1",onClick:()=>k(e=>Math.max(1,e-1)),"aria-label":"上一页",children:[(0,a.jsx)(x.default,{name:"ChevronLeft",size:16,className:"shrink-0"}),"上一页"]})}),(0,a.jsx)(g,{children:(0,a.jsx)("span",{className:"flex h-9 min-w-[6.5rem] items-center justify-center text-sm text-[var(--ds-muted)]",children:M})}),(0,a.jsx)(g,{children:(0,a.jsxs)(c.Button,{type:"button",variant:"outline",size:"sm",disabled:K,className:"gap-1",onClick:()=>k(e=>e+1),"aria-label":"下一页",children:["下一页",(0,a.jsx)(x.default,{name:"ChevronRight",size:16,className:"shrink-0",strokeWidth:1})]})})]})})]})})}var y=e.i(36845),k=e.i(53925);function j(e){let{open:t,onOpenChange:l,wsUrl:s,apiBase:i,agent:n}=e;return(0,a.jsx)(k.ResourceImportDialog,{open:t,onOpenChange:l,title:"导入 Skill zip",description:"选择一个 zip 文件并导入到 skills-runtime。",uploadUrl:(0,y.buildSkillsRuntimeImportUrl)(s,i,n),resetKey:n})}var C=e.i(55242);function N(e){let{open:l,onOpenChange:s,skillName:n,wsUrl:r,apiBase:o,agent:d,onSaved:u}=e,[x,p]=(0,t.useState)(""),[m,b]=(0,t.useState)(!1),[h,g]=(0,t.useState)(!1);(0,t.useEffect)(()=>{if(!l||!n.trim())return;let e=!1;return b(!0),p(""),(0,f.loadBaseSkillMd)(r,o,d,n).then(a=>{e||p("string"==typeof a.content?a.content:"")}).catch(a=>{e||(i.appToast.error("加载 SKILL.md 失败:".concat(a instanceof Error?a.message:String(a))),s(!1))}).finally(()=>{e||b(!1)}),()=>{e=!0}},[l,n,r,o,d,s]);let v=(0,t.useCallback)(async()=>{if(n.trim()){g(!0);try{await (0,f.saveBaseSkillMd)(r,o,d,n,x),i.appToast.success("SKILL.md 已保存"),s(!1),null==u||u()}catch(e){i.appToast.error("保存失败:".concat(e instanceof Error?e.message:String(e)))}finally{g(!1)}}},[n,r,o,d,x,s,u]);return(0,a.jsx)(C.AppDialog,{open:l,onOpenChange:s,title:"编辑 SKILL.md · /".concat(n),width:"max-w-4xl",minHeight:"420px",footer:(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(c.Button,{type:"button",variant:"plain-outline",size:"lg",disabled:m||h,onClick:()=>s(!1),children:"取消"}),(0,a.jsx)(c.Button,{type:"button",size:"lg",disabled:m||h,onClick:()=>void v(),children:"保存"})]}),children:m?(0,a.jsx)("p",{className:"py-6 text-center text-base text-[var(--ds-muted)]",children:"加载中…"}):(0,a.jsx)("textarea",{className:"focus-visible:ring-[var(--ds-accent)]/30 min-h-[320px] w-full resize-y rounded-md border border-[var(--ds-border)] bg-[var(--ds-bg)] p-3 text-base leading-6 text-[var(--ds-text)] outline-none focus-visible:ring-2",spellCheck:!1,value:x,placeholder:"Markdown 源码…",onChange:e=>p(e.target.value)})})}function w(e){let{items:t,saveBusy:l,onToggleEnabled:s,onExport:i,onRemove:n,className:r}=e,c=[{key:"name",title:"名称",headerClassName:"text-base",cellClassName:"text-base",render:e=>"/".concat(e.name)},{key:"description",title:"详情",headerClassName:"text-base",cellClassName:"text-base",render:e=>e.description||"-"},{key:"status",title:"状态",headerClassName:"w-[160px] text-base",cellClassName:"w-[160px] text-base text-[var(--ds-text)]",render:()=>"已安装"},{key:"enabled",title:"启用/未启用",headerClassName:"w-[160px] text-right text-base",cellClassName:"w-[160px] py-2 text-right align-middle",render:e=>(0,a.jsx)("span",{className:"inline-flex items-center justify-end gap-2",children:(0,a.jsx)(d.AccentSwitch,{checked:e.enabled,disabled:l,onCheckedChange:a=>s(e.name,a),"aria-label":"".concat(e.enabled?"禁用":"启用"," ").concat(e.name)})})},{key:"actions",title:"操作",headerClassName:"w-[128px] text-base",cellClassName:"w-[128px]",render:e=>(0,a.jsxs)("div",{className:"inline-flex items-center justify-end gap-1",children:[(0,a.jsx)(u.IconTooltipButton,{icon:"Download",label:"导出",ariaLabel:"导出 ".concat(e.name),disabled:l,onClick:()=>i(e.name)}),(0,a.jsx)(u.IconTooltipButton,{icon:"Trash2",label:"删除",tone:"danger",ariaLabel:"删除 ".concat(e.name),disabled:l,onClick:()=>{n(e.name)}})]})}];return(0,a.jsx)(o.AppTable,{rows:t,columns:c,getRowKey:e=>"skills:".concat(e.name),className:r})}var S=e.i(68499),T=e.i(56708);function A(e,a){var t,l,s;let i=(s=null!=(l=null!=(t=e.description)?t:e.whenToUse)?l:"")?s.length>100?s.slice(0,100):s:"";return{...e,id:e.name,label:"/".concat(e.name),description:i,isRuntime:a,canManage:e.canManage}}let B=[{value:"basic",label:"基础Skill"},{value:"installed",label:"已安装Skill"},{value:"cloud_catalog",label:"Skill商店"}];function I(){let e=(0,l.useAppStore)(e=>e.wsUrl),p=(0,l.useAppStore)(e=>e.apiBase),m=(0,l.useAppStore)(e=>e.agentConfig),b=(0,l.useAppStore)(e=>e.patchAgentConfig),{currentAgent:h,loadAgentConfig:g}=(0,s.useSession)(),y=(0,n.usePersistAgentConfigField)("skills"),k=m.skills,C=(0,t.useMemo)(()=>[...k].sort().join("\0"),[k]),[I,z]=(0,t.useState)([]),[R,E]=(0,t.useState)([]),[P,L]=(0,t.useState)([]),[D,M]=(0,t.useState)(!1),[U,K]=(0,t.useState)(!1),[O,F]=(0,t.useState)(!1),[_,H]=(0,t.useState)("basic"),[V,W]=(0,t.useState)(!1),[q,G]=(0,t.useState)(""),[J,Q]=(0,t.useState)(!1);(0,t.useEffect)(()=>{g()},[g]);let X=(0,t.useCallback)(async(e,a)=>{F(!0);try{await y(e,{silent:a})}finally{F(!1)}},[y]),Y=(0,t.useCallback)(async()=>{z([]),M(!0);try{var a;let t=await (0,f.listBaseSkills)(e,p,h());z((null!=(a=t.skills)?a:[]).map(e=>A(e,!1)))}catch(e){z([]),i.appToast.error("加载失败:".concat(e instanceof Error?e.message:String(e)))}finally{M(!1)}},[e,p,h]),Z=(0,t.useCallback)(async()=>{E([]),K(!0);try{var a;let t=await (0,f.listInstalledSkills)(e,p,h());E((null!=(a=t.skills)?a:[]).map(e=>A(e,!0)))}catch(e){E([]),i.appToast.error("加载失败:".concat(e instanceof Error?e.message:String(e)))}finally{K(!1)}},[e,p,h]),$=(0,t.useCallback)(async()=>{await Promise.all([Y(),Z()])},[Y,Z]),ee=(0,t.useCallback)(async a=>{if(await (0,S.confirmAlertDialog)({title:"确认删除 Skill 包?",description:"Skill:".concat(a),confirmText:"删除",cancelText:"取消"}))try{await (0,f.deleteRuntimeSkill)(e,p,h(),a);let t=k.filter(e=>e!==a);L(e=>e.filter(e=>e!==a)),b({skills:t}),await X(t,!0),await $()}catch(e){i.appToast.error("删除失败:".concat(e instanceof Error?e.message:String(e)))}},[e,p,h,k,b,X,$]);(0,t.useEffect)(()=>{"basic"===_&&Y(),"installed"===_&&Z()},[_,Y,Z]);let ea=(0,t.useCallback)(()=>{$()},[$]);(0,t.useEffect)(()=>{"basic"===_&&L([...k])},[_,k,C]);let et=(0,t.useCallback)(e=>{let a=[...new Set(e)].sort();b({skills:a}),X(a,!0)},[b,X]),el=(0,t.useMemo)(()=>R.slice().sort((e,a)=>e.label.localeCompare(a.label)).map(e=>({name:e.id,installed:!0,description:e.description||"",enabled:k.includes(e.id)})),[R,k]),es=(0,t.useCallback)((e,a)=>{let t=a?[...new Set([...k,e])].sort():k.filter(a=>a!==e);b({skills:t}),L(t),X(t,!0)},[k,b,X]),ei=(0,t.useCallback)(a=>{window.open((0,f.exportRuntimeSkillUrl)(e,p,h(),a),"_blank","noopener")},[e,p,h]),en=(0,t.useCallback)(e=>{G(e.id),Q(!0)},[]),er=[{key:"name",title:"名称",headerClassName:"text-base text-[var(--ds-muted)]",cellClassName:"text-base text-[var(--ds-text)]",render:e=>e.label},{key:"description",title:"详情",headerClassName:"text-base text-[var(--ds-muted)]",cellClassName:"text-base text-[var(--ds-text)]",render:e=>e.description||"-"},{key:"enabled",title:"启用/未启用",headerClassName:"w-[102px] text-right text-base text-[var(--ds-muted)]",cellClassName:"w-[102px] py-2 text-right align-middle",render:e=>(0,a.jsx)("span",{className:"inline-flex justify-end",children:(0,a.jsx)(d.AccentSwitch,{checked:P.includes(e.id),disabled:O,onCheckedChange:a=>{let t=a?[...new Set([...P,e.id])]:P.filter(a=>a!==e.id);L(t),et(t)},"aria-label":"选择 ".concat(e.label)})})},{key:"actions",title:"操作",headerClassName:"w-[104px] text-right text-base text-[var(--ds-muted)]",cellClassName:"w-[104px] py-2 text-right align-middle",render:e=>(0,a.jsxs)("span",{className:"inline-flex justify-end gap-1",children:[(0,a.jsx)(u.IconTooltipButton,{icon:"Edit",label:"编辑",disabled:O,ariaLabel:"编辑 ".concat(e.label),onClick:()=>en(e)}),(0,a.jsx)(u.IconTooltipButton,{icon:"Trash2",label:"系统技能不可删除",tone:"danger",disabled:!0,ariaLabel:"删除 ".concat(e.label)})]})}];return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(T.ManageChromeHeaderActions,{children:(0,a.jsxs)(c.Button,{id:"btnAgentImportSkill",type:"button",variant:"plain-outline",size:"lg",className:"inline-flex items-center justify-center gap-1.5",onClick:()=>W(!0),children:[(0,a.jsx)(x.default,{name:"Import",size:16,className:"align-middle"}),"导入Skill"]})}),(0,a.jsxs)(r.AppTabs,{tabs:B,value:_,listVariant:"line",onChange:e=>H(e),children:[(0,a.jsx)(r.AppTabsPanel,{value:"basic",children:(0,a.jsx)("div",{className:"flex min-h-0 flex-1 flex-col gap-3",children:(0,a.jsx)("div",{className:"min-h-0",children:D?(0,a.jsx)("p",{className:"px-3 py-6 text-center text-base text-[var(--ds-muted)]",children:"加载中…"}):(0,a.jsx)(o.AppTable,{rows:I,columns:er,getRowKey:e=>e.id})})})}),(0,a.jsx)(r.AppTabsPanel,{value:"installed",children:U?(0,a.jsx)("p",{className:"px-3 py-6 text-center text-base text-[var(--ds-muted)]",children:"加载中…"}):(0,a.jsx)(w,{items:el,saveBusy:O,onToggleEnabled:es,onExport:ei,onRemove:ee})}),(0,a.jsx)(r.AppTabsPanel,{value:"cloud_catalog",className:"flex min-h-0 flex-1 flex-col",children:(0,a.jsx)(v,{active:"cloud_catalog"===_,wsUrl:e,apiBase:p,agent:h(),onAfterInstall:ea,className:"min-h-0 flex-1"})})]}),(0,a.jsx)(j,{open:V,onOpenChange:e=>{W(e),e||$()},wsUrl:e,apiBase:p,agent:h()}),(0,a.jsx)(N,{open:J,onOpenChange:Q,skillName:q,wsUrl:e,apiBase:p,agent:h(),onSaved:()=>void $()})]})}}]);
|