@auto-ai/agent 2.1.113 → 2.1.120

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/dist/404/index.html +1 -0
  2. package/dist/404.html +1 -1
  3. package/dist/_next/static/chunks/17e79ae7309781d6.js +1 -0
  4. package/dist/_next/static/chunks/249606605eed1993.js +1 -0
  5. package/dist/_next/static/chunks/40268f8e3ff0314e.js +1 -0
  6. package/dist/_next/static/chunks/424d3f3f176d43d7.js +1 -0
  7. package/dist/_next/static/chunks/4302af16b34bf750.js +1 -0
  8. package/dist/_next/static/chunks/4a073924e062c459.css +1 -0
  9. package/dist/_next/static/chunks/{709b3b8b804968f9.js → 52e2164e45febae6.js} +1 -1
  10. package/dist/_next/static/chunks/53977130ef33592f.js +1 -0
  11. package/dist/_next/static/chunks/67acc15b8a448e1a.js +1 -0
  12. package/dist/_next/static/chunks/{84694f69e82cbdaf.js → 76a71d344cc15a9f.js} +1 -1
  13. package/dist/_next/static/chunks/{ecac6101bc7f0ad9.css → 83bf6e4bc0aad48b.css} +1 -1
  14. package/dist/_next/static/chunks/8b34d657c6bbb8df.js +1 -0
  15. package/dist/_next/static/chunks/904ad158fd721117.js +1 -0
  16. package/dist/_next/static/chunks/99063f8d79783308.js +1 -0
  17. package/dist/_next/static/chunks/9cd912a1967f10df.js +1 -0
  18. package/dist/_next/static/chunks/9dc241c9b2aa0f91.js +1 -0
  19. package/dist/_next/static/chunks/ad4ba491cf12423f.js +5 -0
  20. package/dist/_next/static/chunks/c1cfc60c17638a73.js +1 -0
  21. package/dist/_next/static/chunks/c52dcbe269bb02d0.js +1 -0
  22. package/dist/_next/static/chunks/d01957b1055b357a.js +1 -0
  23. package/dist/_next/static/chunks/d3e2070a86378cfb.js +1 -0
  24. package/dist/_next/static/chunks/d9a278a2a26e8ee5.js +1 -0
  25. package/dist/_next/static/chunks/dacc94cf10289334.js +1 -0
  26. package/dist/_next/static/chunks/eba0719a42605421.js +1 -0
  27. package/dist/_next/static/chunks/ebcd85ff4a1db0dc.js +5 -0
  28. package/dist/_next/static/chunks/f2a87f0c7c1ec9f4.js +1 -0
  29. package/dist/_next/static/chunks/fa677aa06f1c0539.js +1 -0
  30. package/dist/_next/static/chunks/fff9d250e482f00e.js +1 -0
  31. package/dist/_next/static/chunks/{turbopack-fd992622892ef26f.js → turbopack-030a42d60560a927.js} +1 -1
  32. package/dist/_next/static/chunks/{turbopack-d89adea5a8b1dc47.js → turbopack-3d84668fefd38b4b.js} +1 -1
  33. package/dist/_next/static/chunks/{turbopack-c6738ed405f889d3.js → turbopack-8b41433c9a94981f.js} +1 -1
  34. package/dist/_next/static/{sZLdRgbBZICVvq28FwOCR → fg4nA8liSSLEgWV4WTZDt}/_buildManifest.js +1 -1
  35. package/dist/index.html +1 -1
  36. package/dist/index.txt +27 -26
  37. package/dist/manage/about/index.html +2 -0
  38. package/dist/manage/about/index.txt +34 -0
  39. package/dist/manage/add-account/basic/index.html +2 -0
  40. package/dist/manage/add-account/basic/index.txt +37 -0
  41. package/dist/manage/add-account/index.html +2 -0
  42. package/dist/manage/add-account/index.txt +37 -0
  43. package/dist/manage/agent-teams/index.html +2 -0
  44. package/dist/manage/agent-teams/index.txt +37 -0
  45. package/dist/manage/env/index.html +2 -0
  46. package/dist/manage/env/index.txt +37 -0
  47. package/dist/manage/general/index.html +2 -0
  48. package/dist/manage/general/index.txt +34 -0
  49. package/dist/manage/index.html +1 -0
  50. package/dist/manage/index.txt +31 -0
  51. package/dist/manage/mcp/index.html +2 -0
  52. package/dist/manage/mcp/index.txt +37 -0
  53. package/dist/manage/permissions/index.html +2 -0
  54. package/dist/manage/permissions/index.txt +34 -0
  55. package/dist/manage/skills/index.html +2 -0
  56. package/dist/manage/skills/index.txt +37 -0
  57. package/dist/manage/task/index.html +2 -0
  58. package/dist/manage/task/index.txt +35 -0
  59. package/dist/manage/teams/index.html +2 -0
  60. package/dist/manage/teams/index.txt +35 -0
  61. package/dist/manage/tools/index.html +2 -0
  62. package/dist/manage/tools/index.txt +37 -0
  63. package/package.json +6 -6
  64. package/dist/_next/static/chunks/144582c34365b4a3.js +0 -1
  65. package/dist/_next/static/chunks/28e0ccfb90ce8236.js +0 -1
  66. package/dist/_next/static/chunks/32f1e2403e2f19ad.js +0 -1
  67. package/dist/_next/static/chunks/3e9de8191bf84a21.js +0 -1
  68. package/dist/_next/static/chunks/44cc31591bdf5683.js +0 -1
  69. package/dist/_next/static/chunks/52464e6ba324e8ed.js +0 -1
  70. package/dist/_next/static/chunks/61a0a3d64729e396.js +0 -5
  71. package/dist/_next/static/chunks/69c7407ef6f8340c.js +0 -1
  72. package/dist/_next/static/chunks/8c0da143ceae2767.js +0 -1
  73. package/dist/_next/static/chunks/8fe28f6505d26d57.js +0 -1
  74. package/dist/_next/static/chunks/91c478c455e6fe7d.js +0 -1
  75. package/dist/_next/static/chunks/b0c54f44d770ac39.js +0 -1
  76. package/dist/_next/static/chunks/b23f3d1216dcec54.js +0 -1
  77. package/dist/_next/static/chunks/b5241f9943854a05.js +0 -1
  78. package/dist/_next/static/chunks/bb79d02feaef9576.js +0 -1
  79. package/dist/_next/static/chunks/ca9f8762dcc69f96.js +0 -1
  80. package/dist/_next/static/chunks/cc5b7f377dc3de45.css +0 -1
  81. package/dist/_next/static/chunks/cd622961f697016c.js +0 -1
  82. package/dist/_next/static/chunks/da9e5c89b442680d.js +0 -1
  83. package/dist/_next/static/chunks/e070f5d18cd33b41.js +0 -5
  84. package/dist/_next/static/chunks/e3cd46a9e9e97850.js +0 -1
  85. package/dist/_next/static/chunks/ef1e3e3691ffdba4.js +0 -1
  86. package/dist/_next/static/chunks/f2835908a39a5ecd.js +0 -1
  87. package/dist/_next/static/chunks/fedb1cd789e83a36.js +0 -1
  88. package/dist/manage/about.html +0 -2
  89. package/dist/manage/about.txt +0 -38
  90. package/dist/manage/add-account/basic.html +0 -2
  91. package/dist/manage/add-account/basic.txt +0 -36
  92. package/dist/manage/add-account/prompt.html +0 -2
  93. package/dist/manage/add-account/prompt.txt +0 -37
  94. package/dist/manage/add-account.html +0 -2
  95. package/dist/manage/add-account.txt +0 -42
  96. package/dist/manage/agent-teams.html +0 -2
  97. package/dist/manage/agent-teams.txt +0 -42
  98. package/dist/manage/env.html +0 -2
  99. package/dist/manage/env.txt +0 -41
  100. package/dist/manage/general.html +0 -2
  101. package/dist/manage/general.txt +0 -39
  102. package/dist/manage/mcp.html +0 -2
  103. package/dist/manage/mcp.txt +0 -41
  104. package/dist/manage/permissions.html +0 -2
  105. package/dist/manage/permissions.txt +0 -39
  106. package/dist/manage/skills.html +0 -2
  107. package/dist/manage/skills.txt +0 -41
  108. package/dist/manage/task.html +0 -2
  109. package/dist/manage/task.txt +0 -39
  110. package/dist/manage/teams.html +0 -1
  111. package/dist/manage/teams.txt +0 -38
  112. package/dist/manage/tools.html +0 -2
  113. package/dist/manage/tools.txt +0 -41
  114. package/dist/manage.html +0 -1
  115. package/dist/manage.txt +0 -35
  116. /package/dist/_next/static/{sZLdRgbBZICVvq28FwOCR → fg4nA8liSSLEgWV4WTZDt}/_clientMiddlewareManifest.json +0 -0
  117. /package/dist/_next/static/{sZLdRgbBZICVvq28FwOCR → fg4nA8liSSLEgWV4WTZDt}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,31862,e=>{"use strict";let t;e.s(["TeamsView",()=>et],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),d=e.i(74080),o=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:d}=e,o=(0,s.useRef)(null),c=(0,s.useRef)(null),u=Math.max(t.split("\n").length,l),p=(0,s.useCallback)(()=>{o.current&&c.current&&(c.current.scrollTop=o.current.scrollTop)},[]);return(0,a.jsxs)("div",{className:(0,x.cn)("flex min-h-0 flex-1",d),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:o,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)(o.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)(o.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:o=!1,actions:m,expandTitle:f="编辑 Markdown",copySuccessMessage:v="已复制到剪贴板",copyEmptyMessage:g="暂无内容可复制"}=e,[j,N]=(0,s.useState)(!1),w=!1===m?{expand:!1,copy:!1}:{...u,...m},y=(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()||o,A=(0,a.jsxs)("div",{className:k,children:[(0,a.jsx)(h,{actions:w,copyDisabled:T,onCopy:y,className:"absolute right-2 top-2 z-[1]"}),(0,a.jsx)(p,{value:t,onChange:r,minLines:l,placeholder:i,readOnly:o}),(0,a.jsx)(b,{show:w.expand,expanded:!1,onToggleExpand:C,className:"absolute bottom-2 right-2 z-[1]"})]}),S=j&&"undefined"!=typeof document?(0,d.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:w,copyDisabled:T,onCopy:y,className:"absolute right-2 top-2 z-[1]"}),(0,a.jsx)(p,{value:t,onChange:r,minLines:l,placeholder:i,readOnly:o,className:"min-h-0 flex-1"}),(0,a.jsx)(b,{show:w.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),w=e.i(65934),y=e.i(61196),C=e.i(52727);let k=/^[a-zA-Z0-9_-]{1,64}$/,T=[{id:"all",label:"全部"},{id:"available",label:"可用 Agent"},{id:"joined_other",label:"已加入其他团队"},{id:"recommended",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(8279);let z={sm:"h-7 w-7 text-xs",md:"h-9 w-9 text-sm"};function F(e){let{label:t,size:s="md",className:r}=e,l=(0,S.initialsFromLabel)(t);return(0,a.jsx)("span",{className:(0,x.cn)("inline-flex shrink-0 items-center justify-center rounded-full font-semibold text-white",z[s],r),style:{background:(0,S.avatarBgForLabel)(t)},"aria-hidden":!0,children:l})}let E=[{value:"basic",label:"基本信息"}],M=[{value:"agents",label:"AGENTS"}];function D(e){let{mode:t,editAgentId:r,onClose:d,onSaved:o}=e,u=(0,w.useAppStore)(e=>e.wsUrl),p=(0,w.useAppStore)(e=>e.apiBase),h=(0,y.useStageThreadFlyoutStore)(e=>e.setFlyoutDirty),b=(0,y.useStageThreadFlyoutStore)(e=>e.requestCloseFlyout),T="edit"===t,[A,S]=(0,s.useState)(!1),[z,D]=(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:U}=(0,i.useFormState)({control:O.control}),H=O.watch("id"),P=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){D(!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{D(!1)}}},[r,u,p,O]);(0,s.useEffect)(()=>{T&&V()},[T,V]),(0,s.useEffect)(()=>(h(U),()=>h(!1)),[U,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==o?void 0:o()),d()}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,d,o]);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:P})]}),(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:E.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)(F,{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 h-auto gap-0 border-0 bg-transparent p-0",triggerClassName:"px-0 pb-2 text-base font-semibold uppercase tracking-wide text-[var(--ds-muted)] data-[active]:text-[var(--ds-text)] data-[active]:after:h-[3px] data-[active]:after:bg-[#111]",className:"min-h-0 flex-1",children:(0,a.jsxs)(v.AppTabsPanel,{value:"agents",className:"mt-0 flex min-h-0 flex-1 flex-col",children:[(0,a.jsx)("div",{className:"mb-3 mt-3",children:(0,a.jsx)("h3",{className:"text-base font-semibold text-[var(--ds-text)]",children:"编辑 (agent.md)"})}),(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 B=e.i(68499),I=e.i(55146),R=e.i(97249);function _(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})]}),d=(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:d,onClick:l,"aria-label":t,children:i}):(0,a.jsx)("div",{className:d,"aria-label":t,children:i})}let L=(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 O=e.i(57428),U=e.i(76639);let H={captain:null,members:[]};function P(e){return{id:e.id,displayName:e.displayName.trim()||e.id}}function G(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 V(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)(F,{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)(o.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 q(e){let{open:t,onOpenChange:r,team:i,allAgents:d,rosters:o,onConfirm:m,onAgentsRefresh:u}=e,p=(0,w.useAppStore)(e=>e.wsUrl),h=(0,w.useAppStore)(e=>e.apiBase),b=i.id,f=o.getRoster,[v,g]=(0,s.useState)(""),[N,y]=(0,s.useState)("all"),[k,S]=(0,s.useState)([]),[z,E]=(0,s.useState)(!1),M=(0,s.useMemo)(()=>P(i),[i]);(0,s.useEffect)(()=>{if(!t)return;let e=f(b);g(""),y("all"),S(e.members.filter(e=>e.id!==b).map(e=>e.id))},[t,b,f]);let D=(0,s.useMemo)(()=>k.map(e=>d.find(t=>t.id===e)).filter(e=>null!=e).map(P),[k,d]);(0,s.useMemo)(()=>k.some(e=>null!=G(e,b,d,f)),[k,b,d,f]);let B=(0,s.useMemo)(()=>d.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=G(e.id,b,d,f);return"available"===N?!t:"joined_other"===N?!!a:"recommended"!==N||!a&&!t}),[d,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]),H=(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 _();E(!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:M,members:D}),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{E(!1)}})()},[b,z,f,k,p,h,u,m,M,D,_]),q=A(i.whentouse,28);return(0,a.jsx)(U.Dialog,{open:t,onOpenChange:r,children:(0,a.jsxs)(U.DialogContent,{className:"max-w-[920px]","aria-labelledby":"add-team-members-title",children:[(0,a.jsxs)(U.DialogHeader,{className:"items-start gap-3",children:[(0,a.jsx)(U.DialogTitle,{id:"add-team-members-title",className:"text-lg",children:"添加队员"}),(0,a.jsx)(U.DialogClose,{"aria-label":"关闭"})]}),(0,a.jsx)(U.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)(L,{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:()=>y(e.id),children:e.label},e.id)})})]}),(0,a.jsx)("ul",{className:"m-0 min-h-0 flex-1 list-none space-y-2 overflow-y-auto",role:"listbox","aria-label":"可选队员",children:B.map(e=>{let t=e.id===b,s=k.includes(e.id),r=G(e.id,b,d,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)(O.Checkbox,{checked:!t&&s,disabled:t,onChange:t=>I(e.id,t.target.checked),"aria-label":"选择 ".concat(e.displayName)}),(0,a.jsx)(F,{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.jsxs)("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:["已选成员(",D.length,")"]}),(0,a.jsx)(l.Button,{type:"button",variant:"plain",size:"sm",disabled:0===D.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:D.length>0?(0,a.jsx)("div",{className:"space-y-2",children:D.map(e=>{let t=d.find(t=>t.id===e.id),s=t?A(t.whentouse,28):e.id;return(0,a.jsx)(V,{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:"mt-4 shrink-0 border-t border-[var(--ds-border)] pt-4",children:[(0,a.jsx)("p",{className:"mb-1 text-sm font-medium text-[var(--ds-text)]",children:"队长"}),(0,a.jsx)("p",{className:"mb-2 text-xs text-[var(--ds-muted)]",children:"队长负责协作编排与成员管理。"}),(0,a.jsx)(V,{member:M,subtitle:q,badge:"队长"})]})]})})]})}),(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:H,disabled:z,className:"cursor-pointer disabled:cursor-not-allowed",children:z?"添加中…":"确认添加"})]})]})})}function K(e){let{open:t,onOpenChange:r,title:n,description:i,candidates:d,onPick:o}=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=d.find(e=>e.id===c);e&&(o(e),u())},[d,c,o,u]),h=(0,s.useMemo)(()=>d.length>0?null:"暂无可选 Agent",[d.length]);return(0,a.jsx)(U.Dialog,{open:t,onOpenChange:r,children:(0,a.jsxs)(U.DialogContent,{className:"max-w-[480px]","aria-labelledby":"pick-team-member-title",children:[(0,a.jsxs)(U.DialogHeader,{className:"items-start gap-3",children:[(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)(U.DialogTitle,{id:"pick-team-member-title",children:n}),(0,a.jsx)(U.DialogDescription,{className:"mt-1",children:i})]}),(0,a.jsx)(U.DialogClose,{"aria-label":"关闭"})]}),(0,a.jsx)(U.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:d.map(e=>{let t=c===e.id,s=P(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)(F,{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 W(e){let{member:t,onRemove:s}=e;return(0,a.jsxs)("span",{className:"inline-flex w-fit items-center gap-1.5 rounded-full border border-[var(--ds-border)] bg-[var(--surface-2)] px-3 py-1",children:[(0,a.jsx)("span",{className:"whitespace-nowrap text-sm text-[var(--ds-text)]",children:t.displayName}),s?(0,a.jsx)(o.IconTooltipButton,{icon:"Close",label:"移除 ".concat(t.displayName),tone:"muted",className:"!h-4 !w-4 shrink-0",iconClassName:"!size-3.5",onClick:s}):null]})}function Y(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)(W,{member:e,onRemove:i(e.id)},e.id))})]})}):null]})}function $(e){let{leaderId:t,members:r,onAgentsRefresh:l}=e,n=(0,w.useAppStore)(e=>e.wsUrl),i=(0,w.useAppStore)(e=>e.apiBase),[d,o]=(0,s.useState)(null),m=(0,s.useCallback)(e=>{(async()=>{let a=e.trim(),s=t.trim();if(s&&a&&!d&&await (0,B.confirmAlertDialog)({title:"确定移除队员?",description:"确定移除队员「".concat(a,"」?"),confirmText:"移除",cancelText:"取消"})){o(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{o(null)}}})()},[t,d,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)(W,{member:e,onRemove:d===e.id?void 0:()=>m(e.id)},e.id)),u.length>0?(0,a.jsx)(Y,{members:u,onRemoveMember:m}):null]})}function Z(e){let{onEdit:t,onDelete:r,deleting:l=!1}=e,[i,d]=(0,s.useState)(!1);return(0,a.jsxs)(I.DropdownMenu,{open:i,onOpenChange:d,children:[(0,a.jsx)(I.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)(I.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)(I.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:()=>{d(!1),t()},children:[(0,a.jsx)(n.default,{name:"Edit",size:16,className:"text-[var(--ds-muted)]"}),"编辑 Agent"]}),(0,a.jsx)(I.DropdownMenuSeparator,{className:"mx-1 my-1 bg-[var(--ds-border)]"}),(0,a.jsxs)(I.DropdownMenuItem,{variant:"destructive",disabled:l,className:"h-9 rounded-xl px-2.5 text-base hover:bg-[#fff1f1] focus:bg-[#fff1f1]",onClick:()=>{d(!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,d=(0,w.useAppStore)(e=>e.agentId),m=(0,w.useAppStore)(e=>e.wsUrl),u=(0,w.useAppStore)(e=>e.apiBase),p=d.trim()||"qihoo",h=r.id===p,b=n.getRoster(r.id),f=b.members.length>0?P(r):null,v=A(r.whentouse),g=(0,S.initialsFromLabel)(r.id).slice(0,1),[j,N]=(0,s.useState)(!1),[k,T]=(0,s.useState)(!1),[z,F]=(0,s.useState)(!1),E=n.getAvailableCandidates(r.id,l),M=(0,s.useCallback)(e=>{n.setCaptain(r.id,P(e))},[n,r.id]),I=(0,s.useCallback)(e=>{n.applyRoster(r.id,e)},[n,r.id]),L=(0,s.useCallback)(()=>{let e=r.id.trim();if(!e||e===p)return;let t=(0,R.buildAppNavHref)("/",{ensureAgent:!0,agent:e}),a=R.BASE_PATH.replace(/\/+$/,""),s="".concat(window.location.origin).concat(a).concat(t);window.open(s,"_blank","noopener")},[r.id,p]),O=(0,s.useCallback)(()=>{!function(e){var s;let r=e.agentId.trim();if(!r)return;let{openFlyout:l,closeFlyout:n}=y.useStageThreadFlyoutStore.getState(),i=null!=(s=e.onSaved)?s:t;l({width:y.CREATE_AGENT_FLYOUT_WIDTH,hideHeader:!0,bodyClassName:"!p-0 overflow-hidden",navigationGuard:!0,content:(0,a.jsx)(D,{mode:"edit",editAgentId:r,onClose:n,onSaved:i})})}({agentId:r.id,onSaved:i})},[r.id,i]),U=(0,s.useCallback)(async()=>{let e=r.id.trim();if(e&&await (0,B.confirmAlertDialog)({title:"确定删除 Agent?",description:"Agent「".concat(e,"」将被永久删除,此操作不可恢复。"),confirmText:"删除",cancelText:"取消"})){F(!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{F(!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.5 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-3",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,S.avatarBgForLabel)(r.id)},"aria-hidden":!0,children:g}),(0,a.jsxs)("div",{className:"min-w-0 flex-1 text-left",children:[(0,a.jsx)("button",{type:"button",onClick:L,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:v})]})]}),(0,a.jsxs)("div",{className:"flex min-w-0 max-w-full shrink-0 flex-col gap-1.5 sm:min-w-[140px]",children:[(0,a.jsx)("span",{className:"text-base text-[var(--ds-muted)]",children:"队长"}),f?(0,a.jsx)(W,{member:f,badge:"队长"}):(0,a.jsx)(_,{label:"设置队长",hint:"暂无队长",icon:"User"})]}),(0,a.jsxs)("div",{className:"flex min-w-0 max-w-full flex-1 flex-col gap-1.5",children:[(0,a.jsx)("span",{className:"text-base text-[var(--ds-muted)]",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)($,{leaderId:r.id,members:b.members,onAgentsRefresh:i}):(0,a.jsx)(_,{label:"队员列表",hint:"暂无队员",icon:"Team"}),(0,a.jsx)(o.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:()=>T(!0)})]})]}),(0,a.jsx)(Z,{onEdit:O,onDelete:()=>void U(),deleting:z})]}),(0,a.jsx)(K,{open:j,onOpenChange:N,title:"设置队长",description:"从可选 Agent 中选择一名作为队长",candidates:E,onPick:M}),(0,a.jsx)(q,{open:k,onOpenChange:T,team:r,allAgents:l,rosters:n,onConfirm:I,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:H;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:H},[t]),l=(0,s.useCallback)((e,t)=>{a(a=>{var s;let r=(null!=(s=a[e])?s:H).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:H;return{...t,[e]:{...s,captain:null}}})},[]),i=(0,s.useCallback)((e,t)=>{a(a=>{var s,r;let l=null!=(r=a[e])?r:H;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]}}})},[]),d=(0,s.useCallback)((e,t)=>{a(a=>{var s;let r=null!=(s=a[e])?s:H;return{...a,[e]:{...r,members:r.members.filter(e=>e.id!==t)}}})},[]);return{getRoster:r,setCaptain:l,removeCaptain:n,addMember:i,removeMember:d,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:H,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-2 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 X(e){let{label:t,value:s,hint:r,icon:l}=e;return(0,a.jsxs)("div",{className:"flex min-w-0 flex-1 items-center gap-3 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-0.5 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 ee(e){let{agents:t,className:r}=e,l=(0,s.useMemo)(()=>{let e=t.length;return console.log(t),[{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)(X,{...e},e.label))})}function et(){let e=function(){let e=(0,w.useAppStore)(e=>e.wsUrl),t=(0,w.useAppStore)(e=>e.apiBase),[a,r]=(0,s.useState)([]),[l,n]=(0,s.useState)(!0),[i,d]=(0,s.useState)(null),o=(0,s.useCallback)(async()=>{n(!0),d(null);try{let a=await (0,C.listAgentsForManage)(e,t);r(a)}catch(t){let e=t instanceof Error?t.message:String(t);r([]),d(e),c.appToast.error("加载失败:".concat(e))}finally{n(!1)}},[e,t]);return(0,s.useEffect)(()=>{o()},[o]),{agents:a,loading:l,error:i,loadAgents:o}}();(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}=y.useStageThreadFlyoutStore.getState(),n=null!=(e=s.onSaved)?e:t;r({width:y.CREATE_AGENT_FLYOUT_WIDTH,hideHeader:!0,bodyClassName:"!p-0 overflow-hidden",navigationGuard:!0,content:(0,a.jsx)(D,{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)(ee,{agents:e.agents,className:"mb-4"}),(0,a.jsx)(Q,{agentsState:e})]})}}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,94197,e=>{"use strict";e.s(["IconTooltipButton",()=>o]);var t=e.i(18050),r=e.i(72064),l=e.i(19455),n=e.i(46798),a=e.i(75157);let s={muted:"text-[var(--ds-muted)] hover:text-[var(--ds-text)]",danger:"text-red-600 hover:text-red-800 [&_svg]:!text-red-600 hover:[&_svg]:!text-red-800"};function o(e){let{icon:o,label:i,ariaLabel:d,tone:c="muted",disabled:u,className:p,iconClassName:f,onClick:g}=e;return(0,t.jsx)(n.TooltipProvider,{delayDuration:150,children:(0,t.jsxs)(n.Tooltip,{children:[(0,t.jsx)(n.TooltipTrigger,{asChild:!0,children:(0,t.jsx)(l.Button,{type:"button",variant:"plain",size:"icon",className:(0,a.cn)("h-4 w-4",s[c],p),disabled:u,"aria-label":null!=d?d:i,onClick:g,children:(0,t.jsx)(r.default,{name:o,size:16,className:f})})}),(0,t.jsx)(n.TooltipContent,{side:"bottom",align:"center",className:"text-base",children:i})]})})}},93479,e=>{"use strict";e.s(["Input",()=>l]);var t=e.i(18050),r=e.i(75157);function l(e){let{className:l,type:n="text",size:a="default",...s}=e;return(0,t.jsx)("input",{type:n,"data-slot":"input","data-size":a,className:(0,r.cn)("h-8 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-8 data-[size=lg]:h-10 data-[size=sm]:h-7",l),...s})}},20783,e=>{"use strict";e.s(["composeRefs",()=>l,"useComposedRefs",()=>n]);var t=e.i(71645);function r(e,t){if("function"==typeof e)return e(t);null!=e&&(e.current=t)}function l(){for(var e=arguments.length,t=Array(e),l=0;l<e;l++)t[l]=arguments[l];return e=>{let l=!1,n=t.map(t=>{let n=r(t,e);return l||"function"!=typeof n||(l=!0),n});if(l)return()=>{for(let e=0;e<n.length;e++){let l=n[e];"function"==typeof l?l():r(t[e],null)}}}}function n(){for(var e=arguments.length,r=Array(e),n=0;n<e;n++)r[n]=arguments[n];return t.useCallback(l(...r),r)}},18900,69051,e=>{"use strict";function t(e){let t=null==e?"":String(e);return""===t?'""':/[\s#"'\\\n]/.test(t)||t!==t.trim()?'"'.concat(t.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n"),'"'):t}function r(e){let t=String(e).split(/\r?\n/),r={},l=/^\s*(?:export\s+)?([A-Za-z_][A-Za-z0-9_]*)\s*=\s*(.*)$/;for(let e=0;e<t.length;e++){let n=t[e],a=l.exec(n);a&&(r[a[1]]=function(e){let t=e.trimEnd();return t.length>=2&&'"'===t[0]&&'"'===t[t.length-1]?t.slice(1,-1).replace(/\\(.)/g,(e,t)=>"n"===t?"\n":'"'===t?'"':"\\"===t?"\\":"\\".concat(t)):t.length>=2&&"'"===t[0]&&"'"===t[t.length-1]?t.slice(1,-1):e}(a[2]))}return r}function l(e,r){let l=Array.isArray(e)?e:[],n=new Set;for(let e=0;e<l.length;e++){let t=l[e];t&&"object"==typeof t&&"string"==typeof t.key&&n.add(t.key)}let a=[];for(let e=0;e<l.length;e++){let n=l[e];if(!n||"object"!=typeof n||"string"!=typeof n.key)continue;let s=n.key;if(!Object.prototype.hasOwnProperty.call(r,s))continue;let o=r[s];null!=o&&""!==String(o).trim()&&a.push("".concat(s,"=").concat(t(String(o))))}let s=Object.keys(r).filter(e=>!n.has(e)).sort();for(let e=0;e<s.length;e++){let l=s[e],n=r[l];null!=n&&""!==String(n).trim()&&a.push("".concat(l,"=").concat(t(String(n))))}let o=a.join("\n");return o.length>0?"".concat(o,"\n"):""}e.s(["buildEnvFileContentFromForm",()=>l,"parseEnvContentToMap",()=>r],18900),e.s(["loadDemoSingleMessage",()=>d,"loadSystemEnv",()=>s,"saveSystemEnv",()=>o,"saveSystemMcpJson",()=>i],69051);var n=e.i(29250),a=e.i(36845);async function s(e,t,r){return(0,n.get)((0,a.buildSystemEnvApiUrl)(e,t,r))}async function o(e,t,r,l){await (0,n.patch)((0,a.buildSystemEnvApiUrl)(e,t,r),{content:l})}async function i(e,t,r,l){await (0,n.patch)((0,a.buildSystemMcpJsonApiUrl)(e,t,r),{content:l})}async function d(){return(0,n.get)("/api/demo/single-message")}},62849,e=>{"use strict";e.s(["EnvManageView",()=>k],62849);var t=e.i(18050),r=e.i(71645),l=e.i(65934),n=e.i(87243),a=e.i(19455),s=e.i(94197),o=e.i(93479),i=e.i(67489),d=e.i(67327);let c=["llm","git","geelib","tutui","system"],u={llm:"llm设置",git:"git设置",geelib:"geelib设置",tutui:"tutui设置",system:"系统设置"};function p(e){let t={...u};if(!e||"object"!=typeof e)return t;for(let r of c){let l=e[r];"string"==typeof l&&l.trim()&&(t[r]=l.trim())}return t}var f=e.i(18900),g=e.i(13354),m=e.i(82136),b=e.i(69051),h=e.i(75157);let v="__empty__",x=[{value:"anthropic",label:"anthropic"},{value:"openai",label:"openai"}];function y(){return"undefined"!=typeof crypto&&"randomUUID"in crypto?crypto.randomUUID():"r-".concat(Date.now(),"-").concat(Math.random())}function k(){let e=(0,l.useAppStore)(e=>e.wsUrl),u=(0,l.useAppStore)(e=>e.apiBase),k=(0,l.useAppStore)(e=>e.agentConfig),j=(0,l.useAppStore)(e=>e.setAgentConfig),S=(0,l.useAppStore)(e=>e.bridgeReady),C=(0,l.useAppStore)(e=>e.setStatus),{currentAgent:w,loadAgentConfig:A}=(0,n.useSession)(),{sendReloadAgentConfig:N}=(0,d.useWebSocketSender)(),[T,E]=(0,r.useState)(!0),[z,I]=(0,r.useState)(!1),[_,U]=(0,r.useState)([]),[M,O]=(0,r.useState)(p(void 0)),[B,P]=(0,r.useState)({}),[F,R]=(0,r.useState)({}),[D,L]=(0,r.useState)([]),V=(0,r.useMemo)(()=>new Set(_.map(e=>e.key)),[_]),K=(0,r.useMemo)(()=>(function(e){let t={};for(let e of c)t[e]=[];for(let r of e)c.includes(r.group)&&t[r.group].push(r);return t})(_),[_]),Z=(0,r.useCallback)(e=>{R(function(e,t,r){let l={};for(let n of t){let t=e[n.key];if("string"==typeof t&&t.length>0){l[n.key]=t;continue}let a=r[n.key];l[n.key]="string"==typeof a?a:""}return l}(e,_,B));let t={};for(let[r,l]of Object.entries(e))V.has(r)||(t[r]=l);L(Object.keys(t).sort().map(e=>{var r;return{id:y(),key:e,value:null!=(r=t[e])?r:""}}))},[_,B,V]),J=(0,r.useCallback)(async()=>{try{let t=await (0,b.loadSystemEnv)(e,u,w()),r="string"==typeof t.content?t.content:"",l=function(e){if(!Array.isArray(e))return[];let t=[];for(let r of e){if(!r||"object"!=typeof r)continue;let e="string"==typeof r.key?r.key.trim():"",l="string"==typeof r.group?r.group.trim():"";e&&c.includes(l)&&t.push({key:e,group:l,label:"string"==typeof r.label&&r.label.trim()?r.label.trim():e,placeholder:"string"==typeof r.placeholder?r.placeholder:""})}return t}(t.schema),n=(0,f.parseEnvContentToMap)(r);U(l),O(p(t.groupLabels)),P(function(e,t){let r={};for(let n of e){var l;r[n.key]=null!=(l=t[n.key])?l:""}return r}(l,n))}catch(e){g.appToast.error("加载环境变量表单配置失败:".concat(e instanceof Error?e.message:String(e))),U([]),P({})}},[e,u,w]);(0,r.useEffect)(()=>{E(!0),Promise.all([A(),J()]).finally(()=>{E(!1)})},[A,J]),(0,r.useEffect)(()=>{Z({...k.env})},[k.env,Z]);let W=(0,r.useCallback)((e,t)=>{R(r=>({...r,[e]:t}))},[]),Y=(0,r.useCallback)((e,t)=>{L(r=>r.map(r=>r.id===e?{...r,...t}:r))},[]),$=(0,r.useCallback)(e=>{L(t=>t.filter(t=>t.id!==e))},[]),q=(0,r.useCallback)(()=>{L(e=>[...e,{id:y(),key:"",value:""}])},[]),G=(0,r.useCallback)(()=>{Z({...k.env})},[k.env,Z]),H=(0,r.useCallback)(async()=>{let t=function(e,t){let r={};for(let l of t){let t=Object.prototype.hasOwnProperty.call(e,l.key)?e[l.key]:"",n=String(null!=t?t:"").trim();n&&(r[l.key]=n)}return r}(F,_),r=function(e,t){let r={},l=new Set;for(let a of e){var n;let e=String(a.key||"").trim(),s=String(null!=(n=a.value)?n:"");if(s.trim()||e){if(!/^[A-Za-z_][A-Za-z0-9_]*$/.test(e))return{ok:!1,message:"环境变量名不合法:".concat(e,"(仅允许字母/数字/下划线,且不能数字开头)")};if(t.has(e))return{ok:!1,message:"自定义变量不能与固定表单重复:".concat(e)};if(l.has(e))return{ok:!1,message:"存在重复环境变量名:".concat(e)};l.add(e),r[e]=s}}return{ok:!0,env:r}}(D,V);if(!r.ok)return void g.appToast.info(r.message);let n={...t,...r.env};I(!0);try{var a,s,o,i;let t=l.useAppStore.getState();await (0,m.saveAgentConfig)(e,u,w(),{tools:t.agentConfig.tools.slice(),disallowedTools:t.agentConfig.disallowedTools.slice(),mcpServers:t.agentConfig.mcpServers.slice(),skills:t.agentConfig.skills.slice(),agentTeams:t.agentConfig.agentTeams.slice(),model:t.agentConfig.model,rules:t.agentConfig.rules.slice(),effort:null!=(a=t.agentConfig.effort)?a:null,background:null!=(s=t.agentConfig.background)&&s,isolation:null!=(o=t.agentConfig.isolation)?o:"",whentouse:null!=(i=t.agentConfig.whentouse)?i:"",env:n}),j({...t.agentConfig,env:{...n}}),l.useAppStore.getState().wsConnected&&N(),C("环境变量已保存"+(l.useAppStore.getState().wsConnected?",已请求 worker 重新加载配置":""),S?"ready":""),g.appToast.success(l.useAppStore.getState().wsConnected?"已保存到 agent.json,并已请求 worker 重新加载配置。":"已保存到 agent.json。重连 WebSocket 后子进程环境将同步。")}catch(e){g.appToast.error("保存环境变量失败:".concat(e instanceof Error?e.message:String(e)))}finally{I(!1)}},[F,_,D,V,e,u,w,j,N,C,S]);return(0,t.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden rounded-xl border border-[var(--ds-border)] bg-[#fff] shadow-[var(--shadow-md)]",children:[(0,t.jsx)("div",{className:"shrink-0 border-b border-[var(--ds-border)] px-4 py-4",children:(0,t.jsx)("p",{className:"mt-1 text-sm text-[var(--ds-muted)]",children:"仅影响当前 agent 的 session 子进程环境"})}),(0,t.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto px-4 py-4",children:T?(0,t.jsx)("div",{className:"py-8 text-center text-base text-[var(--ds-muted)]",children:"加载中…"}):(0,t.jsxs)(t.Fragment,{children:[_.length?(0,t.jsx)(t.Fragment,{children:c.map(e=>{let r=K[e];return r.length?(0,t.jsxs)("section",{className:"mt-6 first:mt-0",children:[(0,t.jsx)("h3",{className:"text-base font-semibold text-[var(--ds-text)]",children:M[e]}),(0,t.jsx)("div",{className:"mt-1 divide-y divide-[var(--ds-border)]",children:r.map(e=>(e=>{let r="agent-env-field-".concat(e.key),l="string"==typeof F[e.key]?F[e.key]:"";if("LLM_PROVIDER"===e.key){let n="anthropic"===l||"openai"===l?l:"";return(0,t.jsxs)("div",{className:"grid items-center gap-3 py-3",style:{gridTemplateColumns:"240px 1fr"},children:[(0,t.jsx)("label",{className:"inline-flex h-10 items-center rounded-md border border-[var(--ds-border)] px-3 text-base text-[var(--ds-text)]",htmlFor:r,children:e.label}),(0,t.jsxs)(i.Select,{value:n||v,onValueChange:t=>W(e.key,t===v?"":t),children:[(0,t.jsx)(i.SelectTrigger,{id:r,className:(0,h.cn)("h-10 w-full border-[var(--ds-border)] bg-[var(--ds-bg)] text-base",!n&&"text-[var(--text-placeholder)]"),children:(0,t.jsx)(i.SelectValue,{placeholder:"请选择"})}),(0,t.jsxs)(i.SelectContent,{children:[(0,t.jsx)(i.SelectItem,{value:v,children:"请选择"}),x.map(e=>(0,t.jsx)(i.SelectItem,{value:e.value,children:e.label},e.value))]})]})]},e.key)}return(0,t.jsxs)("div",{className:"grid items-center gap-3 py-3",style:{gridTemplateColumns:"240px 1fr"},children:[(0,t.jsx)("label",{className:"inline-flex h-10 items-center rounded-md border border-[var(--ds-border)] px-3 text-base text-[var(--ds-text)]",htmlFor:r,children:e.label}),(0,t.jsx)(o.Input,{id:r,type:"text",spellCheck:!1,autoComplete:"off",placeholder:e.placeholder,className:"h-10 border-[var(--ds-border)] bg-[var(--ds-bg)] text-base placeholder:text-[var(--text-placeholder)]",value:l,onChange:t=>W(e.key,t.target.value)})]},e.key)})(e))})]},e):null})}):(0,t.jsx)("div",{className:"rounded-md border border-dashed border-[var(--ds-border)] py-8 text-center text-base text-[var(--ds-muted)]",children:"未加载到环境变量表单配置"}),(0,t.jsx)("h3",{className:"mb-4 mt-8 text-base font-semibold text-[var(--ds-text)]",children:"自定义设置"}),(0,t.jsx)("div",{className:"mt-5",children:(0,t.jsx)(a.Button,{type:"button",variant:"outline",size:"lg",disabled:T||z,onClick:q,children:"新增变量"})}),(0,t.jsxs)("div",{className:"mb-2 mt-5 grid gap-2 text-sm text-[var(--ds-muted)]",style:{gridTemplateColumns:"1fr 1fr auto"},children:[(0,t.jsx)("span",{children:"KEY"}),(0,t.jsx)("span",{children:"VALUE"}),(0,t.jsx)("span",{children:"操作"})]}),(0,t.jsx)("div",{className:"flex flex-col gap-2",children:D.length?D.map(e=>(0,t.jsxs)("div",{className:"grid gap-2",style:{gridTemplateColumns:"1fr 1fr auto"},children:[(0,t.jsx)(o.Input,{type:"text",spellCheck:!1,autoComplete:"off",placeholder:"例如 API_KEY",className:"h-10 border-[var(--ds-border)] bg-[var(--ds-bg)] text-base placeholder:text-[var(--text-placeholder)]",value:e.key,onChange:t=>Y(e.id,{key:t.target.value})}),(0,t.jsx)(o.Input,{type:"text",spellCheck:!1,autoComplete:"off",placeholder:"value",className:"h-10 border-[var(--ds-border)] bg-[var(--ds-bg)] text-base placeholder:text-[var(--text-placeholder)]",value:e.value,onChange:t=>Y(e.id,{value:t.target.value})}),(0,t.jsx)(s.IconTooltipButton,{icon:"Trash2",label:"删除",tone:"danger",ariaLabel:"删除 ".concat(e.key),onClick:()=>$(e.id)})]},e.id)):(0,t.jsx)("div",{className:"rounded-md border border-dashed border-[var(--ds-border)] py-8 text-center text-base text-[var(--ds-muted)]",children:"(暂无变量,点击「新增变量」)"})})]})}),(0,t.jsxs)("div",{className:"flex shrink-0 justify-end gap-[12px] border-t border-[var(--ds-border)] px-4 py-3",children:[(0,t.jsx)(a.Button,{type:"button",variant:"plain-outline",size:"lg",disabled:T||z,onClick:G,children:"取消"}),(0,t.jsx)(a.Button,{type:"button",size:"lg",disabled:T||z,onClick:()=>void H(),children:"保存"})]})]})}}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,67327,20090,e=>{"use strict";e.s(["useWebSocketSender",()=>l],67327);var t=e.i(71645),n=e.i(65934);e.s(["clearActiveWebSocket",()=>i,"isWebSocketOpen",()=>r,"sendActiveWebSocketJson",()=>a,"setActiveWebSocket",()=>o],20090);let s=null;function r(e){return null!==e&&e.readyState===WebSocket.OPEN}function o(e){s=e}function i(e){s===e&&(s=null)}function a(e){let t=s;return!!r(t)&&(t.send(JSON.stringify(e)),!0)}function l(){let e=(0,t.useCallback)(e=>{let t=a(e);return t&&n.useAppStore.getState().appendLog("→",e),t},[]),s=(0,t.useCallback)(()=>e({type:"reloadAgentConfig"}),[e]),r=(0,t.useCallback)(()=>e({type:"reloadAgentPrompt"}),[e]),o=(0,t.useCallback)((t,n)=>{let s=String(t||"").trim();return!!s&&e({type:"permission.response",requestId:s,behavior:n})},[e]);return{sendJson:e,sendReloadAgentConfig:s,sendReloadAgentPrompt:r,sendPermissionResponse:o}}},43084,e=>{"use strict";e.s(["clamp",()=>c,"createCoords",()=>a,"evaluate",()=>u,"floor",()=>i,"getAlignment",()=>d,"getAlignmentAxis",()=>v,"getAlignmentSides",()=>h,"getAxisLength",()=>f,"getExpandedPlacements",()=>S,"getOppositeAlignmentPlacement",()=>A,"getOppositeAxis",()=>p,"getOppositeAxisPlacements",()=>k,"getOppositePlacement",()=>T,"getPaddingObject",()=>P,"getSide",()=>g,"getSideAxis",()=>m,"max",()=>r,"min",()=>s,"placements",()=>n,"rectToClientRect",()=>E,"round",()=>o,"sides",()=>t]);let t=["top","right","bottom","left"],n=t.reduce((e,t)=>e.concat(t,t+"-start",t+"-end"),[]),s=Math.min,r=Math.max,o=Math.round,i=Math.floor,a=e=>({x:e,y:e}),l={left:"right",right:"left",bottom:"top",top:"bottom"};function c(e,t,n){return r(e,s(t,n))}function u(e,t){return"function"==typeof e?e(t):e}function g(e){return e.split("-")[0]}function d(e){return e.split("-")[1]}function p(e){return"x"===e?"y":"x"}function f(e){return"y"===e?"height":"width"}function m(e){let t=e[0];return"t"===t||"b"===t?"y":"x"}function v(e){return p(m(e))}function h(e,t,n){void 0===n&&(n=!1);let s=d(e),r=v(e),o=f(r),i="x"===r?s===(n?"end":"start")?"right":"left":"start"===s?"bottom":"top";return t.reference[o]>t.floating[o]&&(i=T(i)),[i,T(i)]}function S(e){let t=T(e);return[A(e),t,A(t)]}function A(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}let y=["left","right"],b=["right","left"],w=["top","bottom"],C=["bottom","top"];function k(e,t,n,s){let r=d(e),o=function(e,t,n){switch(e){case"top":case"bottom":if(n)return t?b:y;return t?y:b;case"left":case"right":return t?w:C;default:return[]}}(g(e),"start"===n,s);return r&&(o=o.map(e=>e+"-"+r),t&&(o=o.concat(o.map(A)))),o}function T(e){let t=g(e);return l[t]+e.slice(t.length)}function P(e){return"number"!=typeof e?{top:0,right:0,bottom:0,left:0,...e}:{top:e,right:e,bottom:e,left:e}}function E(e){let{x:t,y:n,width:s,height:r}=e;return{width:s,height:r,top:n,left:t,right:t+s,bottom:n+r,x:t,y:n}}},55227,e=>{"use strict";e.s(["deleteSession",()=>r,"listSessions",()=>s,"listWorkspaceFiles",()=>l,"loadSessionOverrides",()=>o,"loadSessionReplay",()=>i,"saveSessionOverrides",()=>a]);var t=e.i(29250),n=e.i(36845);async function s(e,s,r){return(0,t.get)((0,n.buildSessionsListUrl)(e,s,r))}async function r(e,s,r,o){return(0,t.del)((0,n.buildSessionDeleteUrl)(e,s,r,o))}async function o(e,s,r,o){return(0,t.get)((0,n.buildSessionOverridesUrl)(e,s,r,o))}async function i(e,s,r,o){let i=await (0,t.get)((0,n.buildSessionReplayUrl)(e,s,r,o));return{envelopes:Array.isArray(i.envelopes)?i.envelopes:[],messageCount:"number"==typeof i.messageCount?i.messageCount:void 0}}async function a(e,s,r,o,i){await (0,t.patch)((0,n.buildSessionOverridesUrl)(e,s,r,o),i)}async function l(e,s,r,o){return(0,t.get)((0,n.buildWorkspaceFilesListUrl)(e,s,r,o))}},82136,e=>{"use strict";e.s(["loadAgentConfig",()=>r,"saveAgentConfig",()=>o]);var t=e.i(29250),n=e.i(36845),s=e.i(75675);async function r(e,r,o){var i,a,l;let c=await (0,t.get)((0,n.buildAgentApiUrl)(e,r,o));return{agentType:"string"==typeof(null==(i=c.agent)?void 0:i.agentType)&&c.agent.agentType.trim()?c.agent.agentType.trim():"string"==typeof(null==(a=c.agent)?void 0:a.name)?c.agent.name.trim():"",config:function(e){var t;let n={},r=null==e?void 0:e.env;if(r&&"object"==typeof r&&!Array.isArray(r))for(let[e,t]of Object.entries(r))"string"==typeof e&&e.trim()&&(n[e]=null==t?"":String(t));return{tools:Array.isArray(null==e?void 0:e.tools)?e.tools.map(String):[...s.DEFAULT_AGENT_CONFIG.tools],disallowedTools:Array.isArray(null==e?void 0:e.disallowedTools)?e.disallowedTools.map(String):[...s.DEFAULT_AGENT_CONFIG.disallowedTools],mcpServers:Array.isArray(null==e?void 0:e.mcpServers)?e.mcpServers.map(String):[...s.DEFAULT_AGENT_CONFIG.mcpServers],skills:Array.isArray(null==e?void 0:e.skills)?e.skills.map(String):[...s.DEFAULT_AGENT_CONFIG.skills],model:"string"==typeof(null==e?void 0:e.model)?e.model:s.DEFAULT_AGENT_CONFIG.model,agentTeams:Array.isArray(null==e?void 0:e.agentTeams)?e.agentTeams.map(String):[...s.DEFAULT_AGENT_CONFIG.agentTeams],rules:Array.isArray(null==e?void 0:e.rules)?e.rules.map(String):[...s.DEFAULT_AGENT_CONFIG.rules],env:n,effort:"string"==typeof(t=null==e?void 0:e.effort)||"number"==typeof t||null==t?t:s.DEFAULT_AGENT_CONFIG.effort,background:(null==e?void 0:e.background)===!0||s.DEFAULT_AGENT_CONFIG.background,isolation:(null==e?void 0:e.isolation)==="worktree"||(null==e?void 0:e.isolation)==="remote"?e.isolation:"",whentouse:"string"==typeof(null==e?void 0:e.whentouse)?e.whentouse:s.DEFAULT_AGENT_CONFIG.whentouse}}(null==(l=c.agent)?void 0:l.config)}}async function o(e,s,r,o){await (0,t.patch)((0,n.buildAgentApiUrl)(e,s,r),{config:{...o,tools:o.tools.slice(),disallowedTools:o.disallowedTools.slice(),mcpServers:o.mcpServers.slice(),skills:o.skills.slice(),agentTeams:o.agentTeams.slice(),rules:o.rules.slice(),env:{...o.env}}})}},87243,e=>{"use strict";e.s(["useSession",()=>c]);var t=e.i(71645),n=e.i(29250),s=e.i(68499),r=e.i(13354),o=e.i(65934),i=e.i(82136),a=e.i(52727),l=e.i(55227);function c(){let e=(0,o.useAppStore)(e=>e.wsUrl),c=(0,o.useAppStore)(e=>e.apiBase),u=(0,o.useAppStore)(e=>e.agentId),g=(0,t.useCallback)(async t=>{let n=o.useAppStore.getState(),s=n.agentId.trim()||"qihoo";n.setSessionsMeta("加载中…");try{let u=await (0,l.listSessions)(e,c,s),g=u.sessions||[],d=null!=u.agent?String(u.agent):s;if(n.setBrandAgent(d),n.setLastSessions(g,"".concat(g.length,"个会话 · agent: ").concat(d)),(0,a.listAgents)(e,c).then(e=>{let t=(0,a.findAgentInList)(e,s);if(t)return void o.useAppStore.getState().setCurrentWorkspaceAgent(t);let n=o.useAppStore.getState().currentWorkspaceAgent;n&&n.id===s||o.useAppStore.getState().setCurrentWorkspaceAgent({id:s,displayName:s})}).catch(()=>{let e=o.useAppStore.getState().currentWorkspaceAgent;e&&e.id===s||o.useAppStore.getState().setCurrentWorkspaceAgent({id:s,displayName:s})}),(null==t?void 0:t.activateFirstIfEmpty)&&!o.useAppStore.getState().sessionId.trim()&&g.length>0){var r,i;let e=null==(i=g[0])||null==(r=i.sessionId)?void 0:r.trim();e&&o.useAppStore.getState().selectSession(e,"history")}}catch(e){n.resetSessions("加载失败: ".concat(e)),n.appendLog("sessions",String(e))}},[e,c]),d=(0,t.useCallback)(async()=>{let t=o.useAppStore.getState(),s=t.agentId.trim()||"qihoo";try{let n=await (0,i.loadAgentConfig)(e,c,s);t.setAgentConfig(n.config)}catch(e){t.resetAgentConfig(),t.appendLog("agent-config","load failed ".concat(e instanceof n.ApiError?e.message:String(e)))}},[e,c]),p=(0,t.useCallback)(async t=>{let s=String(t||"").trim();if(!s)return;let r=o.useAppStore.getState(),i=u.trim()||"qihoo";try{let t=await (0,l.loadSessionOverrides)(e,c,i,s),n=t.overrides&&"object"==typeof t.overrides?t.overrides:{};if("string"==typeof n.model){let e={...r.agentConfig,model:n.model};r.setAgentConfig(e)}}catch(e){r.appendLog("session-overrides","load failed ".concat(e instanceof n.ApiError?e.message||e.status:String(e)))}},[e,c,u]),f=(0,t.useCallback)(async t=>{if(!t||!await (0,s.confirmAlertDialog)({title:"确认删除会话?",description:"将删除磁盘上的 transcript 与相关目录,不可恢复。\n\n".concat(t),confirmText:"删除",cancelText:"取消"}))return!1;let i=o.useAppStore.getState().sessionId.trim()===t,a=u.trim()||"qihoo";try{let n=await (0,l.deleteSession)(e,c,a,t);if(o.useAppStore.getState().appendLog("sessions-delete",n),i){let e=o.useAppStore.getState();e.startDraftSession(),e.resetChat(),e.clearLog()}return await g(),i}catch(e){return e instanceof n.ApiError?(o.useAppStore.getState().appendLog("sessions-delete",{error:!0,status:e.status,body:e.body}),r.appToast.error("删除失败: ".concat(e.message))):(o.useAppStore.getState().appendLog("sessions-delete",String(e)),r.appToast.error("删除请求失败: ".concat(e))),!1}},[e,c,u,g]);return{loadSessions:g,loadAgentConfig:d,loadSessionOverrides:p,deleteSessionById:f,currentAgent:(0,t.useCallback)(()=>u.trim()||"qihoo",[u])}}},50711,e=>{"use strict";e.s(["usePersistAgentConfig",()=>i,"usePersistAgentConfigField",()=>a]);var t=e.i(71645),n=e.i(65934),s=e.i(67327),r=e.i(13354),o=e.i(82136);function i(){let e=(0,n.useAppStore)(e=>e.wsUrl),i=(0,n.useAppStore)(e=>e.apiBase),{sendReloadAgentConfig:a}=(0,s.useWebSocketSender)(),l=(0,t.useCallback)(()=>n.useAppStore.getState().agentId.trim()||"qihoo",[]);return(0,t.useCallback)(async t=>{let s=!!(null==t?void 0:t.silent),c=n.useAppStore.getState(),u={config:{tools:c.agentConfig.tools.slice(),mcpServers:c.agentConfig.mcpServers.slice(),skills:c.agentConfig.skills.slice(),model:c.agentConfig.model,agentTeams:c.agentConfig.agentTeams.slice(),rules:c.agentConfig.rules,env:{...c.agentConfig.env}}};try{await (0,o.saveAgentConfig)(e,i,l(),u.config);let t=n.useAppStore.getState();t.wsConnected&&a(),s?(t.appendLog("agent-config","已写入 agent.json"),t.setStatus("agent.json 已保存".concat(t.wsConnected?",已请求同步 worker":"(未连接 WS 则下次连上后 reload)"),t.bridgeReady?"ready":"")):r.appToast.success(t.wsConnected?"已保存并已请求 worker 重新加载 agent.md + agent.json。":"已保存。重连 WebSocket 后生效。")}catch(e){r.appToast.error("保存失败:".concat(e instanceof Error?e.message:String(e)))}},[e,i,a,l])}function a(e){let i=(0,n.useAppStore)(e=>e.wsUrl),a=(0,n.useAppStore)(e=>e.apiBase),{sendReloadAgentConfig:l}=(0,s.useWebSocketSender)(),c=(0,t.useCallback)(()=>n.useAppStore.getState().agentId.trim()||"qihoo",[]);return(0,t.useCallback)(async(t,s)=>{let u=!!(null==s?void 0:s.silent),g=n.useAppStore.getState(),d={config:{tools:g.agentConfig.tools.slice(),mcpServers:g.agentConfig.mcpServers.slice(),skills:g.agentConfig.skills.slice(),model:g.agentConfig.model,agentTeams:g.agentConfig.agentTeams.slice(),rules:g.agentConfig.rules.slice(),env:{...g.agentConfig.env},[e]:t}};try{await (0,o.saveAgentConfig)(i,a,c(),d.config);let e=n.useAppStore.getState();e.wsConnected&&l(),u?(e.appendLog("agent-config","已写入 agent.json"),e.setStatus("agent.json 已保存".concat(e.wsConnected?",已请求同步 worker":"(未连接 WS 则下次连上后 reload)"),e.bridgeReady?"ready":"")):r.appToast.success(e.wsConnected?"已保存并已请求 worker 重新加载 agent.md + agent.json。":"已保存。重连 WebSocket 后生效。")}catch(e){r.appToast.error("保存失败:".concat(e instanceof Error?e.message:String(e)))}},[i,a,l,c,e])}},46798,e=>{"use strict";e.s(["Tooltip",()=>c,"TooltipContent",()=>g,"TooltipProvider",()=>l,"TooltipTrigger",()=>u]);var t=e.i(18050),n=e.i(71645),s=e.i(74080),r=e.i(75157);let o=n.createContext(null),i=n.createContext({delayDuration:0,side:"bottom",align:"center"});function a(){let e=n.useContext(o);if(!e)throw Error("Tooltip components must be used inside <Tooltip>.");return e}function l(e){let{delayDuration:n=0,side:s="bottom",align:r="center",children:o}=e;return(0,t.jsx)(i.Provider,{value:{delayDuration:n,side:s,align:r},children:o})}function c(e){let{children:s}=e,{delayDuration:r}=n.useContext(i),[a,l]=n.useState(!1),c=n.useRef(null),u=n.useRef(null),g=n.useId(),d=n.useCallback(()=>{null!==c.current&&(window.clearTimeout(c.current),c.current=null),l(!1)},[]),p=n.useCallback(()=>{if(null!==c.current&&(window.clearTimeout(c.current),c.current=null),r<=0)return void l(!0);c.current=window.setTimeout(()=>{l(!0),c.current=null},r)},[r]);return n.useEffect(()=>()=>{null!==c.current&&window.clearTimeout(c.current)},[]),(0,t.jsx)(o.Provider,{value:{open:a,delayDuration:r,contentId:g,triggerRef:u,openWithDelay:p,close:d},children:(0,t.jsx)("span",{ref:u,"data-slot":"tooltip",className:"relative inline-flex",children:s})})}function u(e){let{asChild:s,children:r,...o}=e,{open:i,contentId:l,openWithDelay:c,close:u}=a(),g={"aria-describedby":i?l:void 0};if(s&&n.isValidElement(r)){let e=r.props;return n.cloneElement(r,{...o,...e,...g,onMouseEnter:t=>{var n,s;null==(n=e.onMouseEnter)||n.call(e,t),null==(s=o.onMouseEnter)||s.call(o,t),t.defaultPrevented||c()},onMouseLeave:t=>{var n,s;null==(n=e.onMouseLeave)||n.call(e,t),null==(s=o.onMouseLeave)||s.call(o,t),t.defaultPrevented||u()},onFocus:t=>{var n,s;null==(n=e.onFocus)||n.call(e,t),null==(s=o.onFocus)||s.call(o,t),t.defaultPrevented||c()},onBlur:t=>{var n,s;null==(n=e.onBlur)||n.call(e,t),null==(s=o.onBlur)||s.call(o,t),t.defaultPrevented||u()}})}return(0,t.jsx)("span",{"data-slot":"tooltip-trigger",...o,...g,onMouseEnter:e=>{var t;null==(t=o.onMouseEnter)||t.call(o,e),e.defaultPrevented||c()},onMouseLeave:e=>{var t;null==(t=o.onMouseLeave)||t.call(o,e),e.defaultPrevented||u()},onFocus:e=>{var t;null==(t=o.onFocus)||t.call(o,e),e.defaultPrevented||c()},onBlur:e=>{var t;null==(t=o.onBlur)||t.call(o,e),e.defaultPrevented||u()},children:r})}function g(e){let{className:o,side:l,align:c,sideOffset:u=8,...g}=e,{open:d,contentId:p,triggerRef:f}=a(),{side:m,align:v}=n.useContext(i),h=null!=l?l:m,S=null!=c?c:v,[A,y]=n.useState({});return(n.useLayoutEffect(()=>{let e=()=>{let e=f.current;if(!e)return;let t=e.getBoundingClientRect(),n=0,s=0,r="",o="";"top"===h||"bottom"===h?("start"===S&&(s=t.left),"center"===S&&(s=t.left+t.width/2,r="-50%"),"end"===S&&(s=t.right)):("start"===S&&(n=t.top),"center"===S&&(n=t.top+t.height/2,o="-50%"),"end"===S&&(n=t.bottom)),"bottom"===h&&(n=t.bottom+u),"top"===h&&(n=t.top-u,o="-100%"),"right"===h&&(s=t.right+u),"left"===h&&(s=t.left-u,r="-100%"),y({position:"fixed",top:n,left:s,transform:[r&&"translateX(".concat(r,")"),o&&"translateY(".concat(o,")")].filter(Boolean).join(" ")||void 0})};return e(),window.addEventListener("resize",e),window.addEventListener("scroll",e,!0),()=>{window.removeEventListener("resize",e),window.removeEventListener("scroll",e,!0)}},[d,h,S,u,f]),d&&"undefined"!=typeof document)?(0,s.createPortal)((0,t.jsx)("div",{id:p,role:"tooltip","data-slot":"tooltip-content",className:(0,r.cn)("pointer-events-none z-[10050]","w-max max-w-[300px] rounded-md bg-black/70 px-3 py-1 text-xs text-white shadow-md","animate-in fade-in-0 zoom-in-95",o),style:A,...g}),document.body):null}},3404,e=>{"use strict";e.s(["REASONS",()=>_],3404),e.s(["cancelOpen",()=>L,"chipRemovePress",()=>u,"clearPress",()=>c,"closePress",()=>a,"closeWatcher",()=>b,"dayPress",()=>O,"decrementPress",()=>p,"disabled",()=>x,"drag",()=>T,"escapeKey",()=>y,"focusOut",()=>A,"imperativeAction",()=>I,"incrementPress",()=>d,"inputBlur",()=>v,"inputChange",()=>f,"inputClear",()=>m,"inputPaste",()=>h,"inputPress",()=>S,"itemPress",()=>i,"keyboard",()=>C,"linkPress",()=>l,"listNavigation",()=>w,"monthChange",()=>N,"none",()=>t,"outsidePress",()=>o,"pointer",()=>k,"scrub",()=>E,"siblingOpen",()=>j,"swipe",()=>F,"trackPress",()=>g,"triggerFocus",()=>r,"triggerHover",()=>s,"triggerPress",()=>n,"valuePropChange",()=>W,"wheel",()=>P,"windowResize",()=>U],16162);let t="none",n="trigger-press",s="trigger-hover",r="trigger-focus",o="outside-press",i="item-press",a="close-press",l="link-press",c="clear-press",u="chip-remove-press",g="track-press",d="increment-press",p="decrement-press",f="input-change",m="input-clear",v="input-blur",h="input-paste",S="input-press",A="focus-out",y="escape-key",b="close-watcher",w="list-navigation",C="keyboard",k="pointer",T="drag",P="wheel",E="scrub",L="cancel-open",j="sibling-open",x="disabled",I="imperative-action",F="swipe",U="window-resize",O="day-press",N="month-change",W="value-prop-change";var _=e.i(16162)},94349,83799,89879,5963,e=>{"use strict";e.s(["useControlled",()=>n],94349),e.i(47167);var t=e.i(71645);function n(e){let{controlled:n,default:s,name:r,state:o="value"}=e,{current:i}=t.useRef(void 0!==n),[a,l]=t.useState(s),c=t.useCallback(e=>{i||l(e)},[]);return[i?n:a,c]}e.s(["useBaseUiId",()=>a],89879),e.s(["useId",()=>i],83799);let s={...t},r=0,o=s.useId;function i(e,n){if(void 0!==o){let t=o();return null!=e?e:n?"".concat(n,"-").concat(t):t}return function(e){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"mui",[s,o]=t.useState(e),i=e||s;return t.useEffect(()=>{null==s&&(r+=1,o("".concat(n,"-").concat(r)))},[s,n]),i}(e,n)}function a(e){return i(e,"base-ui")}e.s(["createChangeEventDetails",()=>c],5963);var l=e.i(17514);function c(e,t,n,s){let r=!1,o=!1,i=null!=s?s:l.EMPTY_OBJECT;return{reason:e,event:null!=t?t:new Event("base-ui"),cancel(){r=!0},allowPropagation(){o=!0},get isCanceled(){return r},get isPropagationAllowed(){return o},trigger:n,...i}}},62372,19904,e=>{"use strict";e.s(["visuallyHidden",()=>n,"visuallyHiddenInput",()=>s],62372);let t={clipPath:"inset(50%)",overflow:"hidden",whiteSpace:"nowrap",border:0,padding:0,width:1,height:1,margin:-1},n={...t,position:"fixed",top:0,left:0},s={...t,position:"absolute"};e.s(["useValueChanged",()=>a],19904);var r=e.i(71645),o=e.i(977),i=e.i(76477);function a(e,t){let n=r.useRef(e),s=(0,i.useStableCallback)(t);(0,o.useIsoLayoutEffect)(()=>{n.current!==e&&s(n.current)},[e,s]),(0,o.useIsoLayoutEffect)(()=>{n.current=e},[e])}},97249,e=>{"use strict";e.s(["BASE_PATH",()=>n,"buildAppNavHref",()=>c,"buildSettingsHref",()=>g,"getSettingsRouteByPathname",()=>f,"getSettingsSlugFromSegments",()=>p,"isAgentUrlStoreSyncPending",()=>o,"isSettingsRoutePath",()=>m,"normalizeAppPathname",()=>l,"syncRuntimeAgentWithUrl",()=>i],97249);var t=e.i(47167);let n=function(){var e;let n=null==(e=t.default.env.NEXT_PUBLIC_BASE_PATH)?void 0:e.trim();return n&&n.length>0?n.replace(/\/+$/,"")||"":"/app"}(),s="qihoo";function r(){var e,t;let n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.location.search;return null!=(t=null==(e=new URLSearchParams(n).get("agent"))?void 0:e.trim())?t:""}function o(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:r(),n=t.trim();return!!n&&n!==(e.trim()||s)}function i(e,t){try{let n=r(),o=e.trim();if(n){n!==o&&t(n);return}let i=o||s,a=new URL(window.location.href);if(a.searchParams.get("agent")===i)return;a.searchParams.set("agent",i),window.history.replaceState(window.history.state,"","".concat(a.pathname).concat(a.search).concat(a.hash))}catch(e){}}let a="/index.html";function l(e){let t=function(e){let t=d(e);return t.endsWith(a)?t.slice(0,-a.length)||"/":t}(e);return"/"===t?"/":d(t.split("/").map((e,t)=>0!==t&&e&&e.replace(/\.[A-Za-z0-9]+$/,"")||e).join("/"))}function c(e,t,n){var s,r,o,i,a,l;let c=function(e){var t;if(!e||"/"===e)return e;let n="/manage";return!(e===n||e.startsWith("".concat(n,"/")))||e.endsWith("/")||(null!=(t=e.split("/").pop())?t:"").includes(".")?e:"".concat(e,"/")}(function(e,t){let n="/"===e?"/":e.startsWith("/")?e:"/".concat(e);return n}(e)),u=function(e){if(e instanceof URLSearchParams||"string"==typeof e)return new URLSearchParams(e);if(e){let t=new URLSearchParams;return Object.entries(e).forEach(e=>{let[n,s]=e;"string"==typeof s&&s?t.set(n,s):Array.isArray(s)&&s[0]&&t.set(n,s[0])}),t}return new URLSearchParams(window.location.search)}(n),g="/"===e||""===e;if(null==t?void 0:t.ensureAgent){let e=(null!=(r=null!=(s=t.agent)?s:u.get("agent"))?r:"").trim()||"qihoo";u.set("agent",e)}else{let e=(null!=(i=null!=(o=null==t?void 0:t.agent)?o:u.get("agent"))?i:"").trim();e?u.set("agent",e):u.delete("agent")}if(g&&(null==t?void 0:t.preserveSessionId)!==!1){let e=(null!=(l=null!=(a=null==t?void 0:t.sessionId)?a:u.get("sessionId"))?l:"").trim();e?u.set("sessionId",e):u.delete("sessionId")}else u.delete("sessionId");let d=u.toString();return d?"".concat(c,"?").concat(d):c}let u="/manage";function g(e){return"".concat(u,"/").concat(e)}function d(e){return e.replace(/\/+$/,"")||"/"}function p(e){if(!(null==e?void 0:e.length))return null;let t="index.html"===e.at(-1)?e.slice(0,-1):e;return t.length?t.join("/"):null}function f(e,t){let n=l(e);return t.find(e=>d(e.href)===n)}function m(e,t){if(!e)return!1;let n=l(e);return n===u||t.some(e=>{let t=d(e.href);return n===t||n.startsWith("".concat(t,"/"))})}},92413,e=>{"use strict";function t(e){return(e.summary||e.firstPrompt||e.sessionId||"(无标题)").slice(0,120)}function n(e){let t=new Map;for(let n of e){let e=function(e){let t=new Date(e.lastModified||e.createdAt||0);if(!Number.isFinite(t.getTime()))return"未知日期";let n=t.getFullYear(),s=String(t.getMonth()+1).padStart(2,"0");return"".concat(n,"-").concat(s)}(n),s=t.get(e);s?s.push(n):t.set(e,[n])}return[...t.keys()].sort((e,t)=>t.localeCompare(e)).map(e=>{var n;return{key:e,items:null!=(n=t.get(e))?n:[]}})}function s(e){let t=e.split("-"),n=t[0]&&/^[0-9a-fA-F]{8}$/.test(t[0])?t[0]:e.slice(0,8);return"".concat(n,"...")}function r(e){return String(e).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;")}e.s(["escapeHtml",()=>r,"groupSessionsByMonth",()=>n,"sessionTitle",()=>t,"shortUuidTitle",()=>s])},2578,e=>{e.v(t=>Promise.all(["static/chunks/4302af16b34bf750.js","static/chunks/eba0719a42605421.js","static/chunks/904ad158fd721117.js"].map(t=>e.l(t))).then(()=>t(31862)))},94065,e=>{e.v(t=>Promise.all(["static/chunks/d3e2070a86378cfb.js","static/chunks/fa677aa06f1c0539.js","static/chunks/c1cfc60c17638a73.js","static/chunks/17e79ae7309781d6.js"].map(t=>e.l(t))).then(()=>t(20291)))},34116,e=>{e.v(t=>Promise.all(["static/chunks/9dc241c9b2aa0f91.js","static/chunks/c1cfc60c17638a73.js","static/chunks/a79654d570ac30eb.js","static/chunks/17e79ae7309781d6.js"].map(t=>e.l(t))).then(()=>t(86404)))},1861,e=>{e.v(t=>Promise.all(["static/chunks/99063f8d79783308.js","static/chunks/17e79ae7309781d6.js"].map(t=>e.l(t))).then(()=>t(62849)))},18963,e=>{e.v(t=>Promise.all(["static/chunks/424d3f3f176d43d7.js"].map(t=>e.l(t))).then(()=>t(89530)))},9803,e=>{e.v(t=>Promise.all(["static/chunks/dacc94cf10289334.js"].map(t=>e.l(t))).then(()=>t(28583)))},69496,e=>{e.v(t=>Promise.all(["static/chunks/d01957b1055b357a.js"].map(t=>e.l(t))).then(()=>t(47079)))},56149,e=>{e.v(t=>Promise.all(["static/chunks/6209b42cbfcf288a.js"].map(t=>e.l(t))).then(()=>t(51459)))}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,93479,e=>{"use strict";e.s(["Input",()=>t]);var o=e.i(18050),r=e.i(75157);function t(e){let{className:t,type:n="text",size:s="default",...a}=e;return(0,o.jsx)("input",{type:n,"data-slot":"input","data-size":s,className:(0,r.cn)("h-8 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-8 data-[size=lg]:h-10 data-[size=sm]:h-7",t),...a})}},20783,e=>{"use strict";e.s(["composeRefs",()=>t,"useComposedRefs",()=>n]);var o=e.i(71645);function r(e,o){if("function"==typeof e)return e(o);null!=e&&(e.current=o)}function t(){for(var e=arguments.length,o=Array(e),t=0;t<e;t++)o[t]=arguments[t];return e=>{let t=!1,n=o.map(o=>{let n=r(o,e);return t||"function"!=typeof n||(t=!0),n});if(t)return()=>{for(let e=0;e<n.length;e++){let t=n[e];"function"==typeof t?t():r(o[e],null)}}}}function n(){for(var e=arguments.length,r=Array(e),n=0;n<e;n++)r[n]=arguments[n];return o.useCallback(t(...r),r)}}]);
@@ -0,0 +1,5 @@
1
+ __turbopack_load_page_chunks__("/_error", [
2
+ "static/chunks/17722e3ac4e00587.js",
3
+ "static/chunks/52e2164e45febae6.js",
4
+ "static/chunks/turbopack-3d84668fefd38b4b.js"
5
+ ])
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,53145,e=>{"use strict";e.s(["Controller",()=>O,"FormProvider",()=>N,"appendErrors",()=>j,"get",()=>m,"set",()=>p,"useForm",()=>eu,"useFormContext",()=>R,"useFormState",()=>S]);var t=e.i(71645),r=e=>e instanceof Date,a=e=>null==e,l=e=>!a(e)&&!Array.isArray(e)&&"object"==typeof e&&!r(e),i=e=>l(e)&&e.target?"checkbox"===e.target.type?e.target.checked:e.target.value:e,s=(e,t)=>t.split(".").some((t,r,a)=>!isNaN(Number(t))&&e.has(a.slice(0,r).join("."))),n="undefined"!=typeof window&&void 0!==window.HTMLElement&&"undefined"!=typeof document;function o(e){if(e instanceof Date)return new Date(e);let t="undefined"!=typeof FileList&&e instanceof FileList;if(n&&(e instanceof Blob||t))return e;let r=Array.isArray(e);if(!r&&!(l(e)&&(e=>{let t=e.constructor&&e.constructor.prototype;return l(t)&&t.hasOwnProperty("isPrototypeOf")})(e)))return e;let a=r?[]:Object.create(Object.getPrototypeOf(e));for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(a[t]=o(e[t]));return a}var u=e=>/^\w*$/.test(e),d=e=>void 0===e,f=e=>Array.isArray(e)?e.filter(Boolean):[],c=e=>f(e.replace(/["|']|\]/g,"").split(/\.|\[/)),m=(e,t,r)=>{if(!t||!l(e))return r;let i=(u(t)?[t]:c(t)).reduce((e,t)=>a(e)?void 0:e[t],e);return d(i)||i===e?d(e[t])?r:e[t]:i},y=e=>"function"==typeof e,p=(e,t,r)=>{let a=-1,i=u(t)?[t]:c(t),s=i.length,n=s-1;for(;++a<s;){let t=i[a],s=r;if(a!==n){let r=e[t];s=l(r)||Array.isArray(r)?r:isNaN(+i[a+1])?{}:[]}if("__proto__"===t||"constructor"===t||"prototype"===t)return;e[t]=s,e=e[t]}};let v={BLUR:"blur",FOCUS_OUT:"focusout",CHANGE:"change",SUBMIT:"submit",TRIGGER:"trigger",VALID:"valid"},b={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},h={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},g="form",_="root",V=t.default.createContext(null);V.displayName="HookFormControlContext";let x=()=>t.default.useContext(V);var F=function(e,t,r){let a=!(arguments.length>3)||void 0===arguments[3]||arguments[3],l={defaultValues:t._defaultValues};for(let i in e)Object.defineProperty(l,i,{get:()=>(t._proxyFormState[i]!==b.all&&(t._proxyFormState[i]=!a||b.all),r&&(r[i]=!0),e[i])});return l};let w="undefined"!=typeof window?t.default.useLayoutEffect:t.default.useEffect;function S(e){let r=x(),{control:a=r,disabled:l,name:i,exact:s}=e||{},[n,o]=t.default.useState(a._formState),u=t.default.useRef({isDirty:!1,isLoading:!1,dirtyFields:!1,touchedFields:!1,validatingFields:!1,isValidating:!1,isValid:!1,errors:!1});return w(()=>a._subscribe({name:i,formState:u.current,exact:s,callback:e=>{l||o({...a._formState,...e})}}),[i,l,s]),t.default.useEffect(()=>{u.current.isValid&&a._setValid(!0)},[a]),t.default.useMemo(()=>F(n,a,u.current,!1),[n,a])}var A=e=>"string"==typeof e,k=(e,t,r,a,l)=>A(e)?(a&&t.watch.add(e),m(r,e,l)):Array.isArray(e)?e.map(e=>(a&&t.watch.add(e),m(r,e))):(a&&(t.watchAll=!0),r),D=e=>a(e)||"object"!=typeof e;function C(e,t){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:new WeakSet;if(e===t)return!0;if(D(e)||D(t))return Object.is(e,t);if(r(e)&&r(t))return Object.is(e.getTime(),t.getTime());let i=Object.keys(e),s=Object.keys(t);if(i.length!==s.length)return!1;if(a.has(e)||a.has(t))return!0;for(let s of(a.add(e),a.add(t),i)){let i=e[s];if(!(s in t))return!1;if("ref"!==s){let e=t[s];if(r(i)&&r(e)||(l(i)||Array.isArray(i))&&(l(e)||Array.isArray(e))?!C(i,e,a):!Object.is(i,e))return!1}}return!0}let O=e=>e.render(function(e){let r=x(),{name:a,disabled:l,control:n=r,shouldUnregister:u,defaultValue:f,exact:c=!0}=e,b=s(n._names.array,a),h=t.default.useMemo(()=>m(n._formValues,a,m(n._defaultValues,a,f)),[n,a,f]),g=function(e){let r=x(),{control:a=r,name:l,defaultValue:i,disabled:s,exact:n,compute:o}=e||{},u=t.default.useRef(i),d=t.default.useRef(o),f=t.default.useRef(void 0),c=t.default.useRef(a),m=t.default.useRef(l);d.current=o;let[y,p]=t.default.useState(()=>{let e=a._getWatch(l,u.current);return d.current?d.current(e):e}),v=t.default.useCallback(e=>{let t=k(l,a._names,e||a._formValues,!1,u.current);return d.current?d.current(t):t},[a._formValues,a._names,l]),b=t.default.useCallback(e=>{if(!s){let t=k(l,a._names,e||a._formValues,!1,u.current);if(d.current){let e=d.current(t);C(e,f.current)||(p(e),f.current=e)}else p(t)}},[a._formValues,a._names,s,l]);w(()=>(c.current===a&&C(m.current,l)||(c.current=a,m.current=l,b()),a._subscribe({name:l,formState:{values:!0},exact:n,callback:e=>{b(e.values)}})),[a,n,l,b]),t.default.useEffect(()=>a._removeUnmounted());let h=c.current!==a,g=m.current,_=t.default.useMemo(()=>{if(s)return null;let e=!h&&!C(g,l);return h||e?v():null},[s,h,l,g,v]);return null!==_?_:y}({control:n,name:a,defaultValue:h,exact:c}),_=S({control:n,name:a,exact:c}),V=t.default.useRef(e),F=t.default.useRef(n.register(a,{...e.rules,value:g,..."boolean"==typeof e.disabled?{disabled:e.disabled}:{}}));V.current=e;let A=t.default.useMemo(()=>Object.defineProperties({},{invalid:{enumerable:!0,get:()=>!!m(_.errors,a)},isDirty:{enumerable:!0,get:()=>!!m(_.dirtyFields,a)},isTouched:{enumerable:!0,get:()=>!!m(_.touchedFields,a)},isValidating:{enumerable:!0,get:()=>!!m(_.validatingFields,a)},error:{enumerable:!0,get:()=>m(_.errors,a)}}),[_,a]),D=t.default.useCallback(e=>F.current.onChange({target:{value:i(e),name:a},type:v.CHANGE}),[a]),O=t.default.useCallback(()=>F.current.onBlur({target:{value:m(n._formValues,a),name:a},type:v.BLUR}),[a,n._formValues]),E=t.default.useCallback(e=>{let t=m(n._fields,a);t&&t._f&&e&&(t._f.ref={focus:()=>y(e.focus)&&e.focus(),select:()=>y(e.select)&&e.select(),setCustomValidity:t=>y(e.setCustomValidity)&&e.setCustomValidity(t),reportValidity:()=>y(e.reportValidity)&&e.reportValidity()})},[n._fields,a]),R=t.default.useMemo(()=>({name:a,value:g,..."boolean"==typeof l||_.disabled?{disabled:_.disabled||l}:{},onChange:D,onBlur:O,ref:E}),[a,l,_.disabled,D,O,E,g]);return t.default.useEffect(()=>{let e=n._options.shouldUnregister||u;n.register(a,{...V.current.rules,..."boolean"==typeof V.current.disabled?{disabled:V.current.disabled}:{}});let t=(e,t)=>{let r=m(n._fields,e);r&&r._f&&(r._f.mount=t)};if(t(a,!0),e){let e=o(m(n._options.defaultValues,a,V.current.defaultValue));p(n._defaultValues,a,e),d(m(n._formValues,a))&&p(n._formValues,a,e)}return b||n.register(a),()=>{(b?e&&!n._state.action:e)?n.unregister(a):t(a,!1)}},[a,n,b,u]),t.default.useEffect(()=>{n._setDisabledField({disabled:l,name:a})},[l,a,n]),t.default.useMemo(()=>({field:R,formState:_,fieldState:A}),[R,_,A])}(e)),E=t.default.createContext(null);E.displayName="HookFormContext";let R=()=>t.default.useContext(E),N=e=>{let{children:r,watch:a,getValues:l,getFieldState:i,setError:s,clearErrors:n,setValue:o,trigger:u,formState:d,resetField:f,reset:c,handleSubmit:m,unregister:y,control:p,register:v,setFocus:b,subscribe:h}=e,g=t.default.useMemo(()=>({watch:a,getValues:l,getFieldState:i,setError:s,clearErrors:n,setValue:o,trigger:u,formState:d,resetField:f,reset:c,handleSubmit:m,unregister:y,control:p,register:v,setFocus:b,subscribe:h}),[n,p,d,i,l,m,v,c,f,s,b,o,h,u,y,a]);return t.default.createElement(E.Provider,{value:g},t.default.createElement(V.Provider,{value:g.control},r))};var j=(e,t,r,a,l)=>t?{...r[e],types:{...r[e]&&r[e].types?r[e].types:{},[a]:l||!0}}:{},T=e=>Array.isArray(e)?e:[e],L=()=>{let e=[];return{get observers(){return e},next:t=>{for(let r of e)r.next&&r.next(t)},subscribe:t=>(e.push(t),{unsubscribe:()=>{e=e.filter(e=>e!==t)}}),unsubscribe:()=>{e=[]}}},M=e=>l(e)&&!Object.keys(e).length,U=e=>{if(!n)return!1;let t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},I=e=>U(e)&&e.isConnected;function B(e,t){if(A(t)&&Object.prototype.hasOwnProperty.call(e,t))return delete e[t],e;let r=Array.isArray(t)?t:u(t)?[t]:c(t),i=1===r.length?e:function(e,t){let r=t.slice(0,-1).length,l=0;for(;l<r;){if(a(e)){e=void 0;break}e=e[t[l]],l++}return e}(e,r),s=r.length-1,n=r[s];return i&&delete i[n],0!==s&&(l(i)&&M(i)||Array.isArray(i)&&function(e){for(let t in e)if(e.hasOwnProperty(t)&&!d(e[t]))return!1;return!0}(i))&&B(e,r.slice(0,-1)),e}function P(e){return Array.isArray(e)||l(e)&&!(e=>{for(let t in e)if(y(e[t]))return!0;return!1})(e)}function W(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};for(let r in e){let a=e[r];P(a)?(t[r]=Array.isArray(a)?[]:{},W(a,t[r])):d(a)||(t[r]=!0)}return t}function q(e,t,r){for(let l in r||(r=W(t)),e){let i=e[l];if(P(i))d(t)||D(r[l])?r[l]=W(i,Array.isArray(i)?[]:{}):q(i,a(t)?{}:t[l],r[l]);else{let e=t[l];r[l]=!C(i,e)}}return r}let G={value:!1,isValid:!1},H={value:!0,isValid:!0};var $=e=>{if(Array.isArray(e)){if(e.length>1){let t=e.filter(e=>e&&e.checked&&!e.disabled).map(e=>e.value);return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!d(e[0].attributes.value)?d(e[0].value)||""===e[0].value?H:{value:e[0].value,isValid:!0}:H:G}return G},z=(e,t)=>{let{valueAsNumber:r,valueAsDate:a,setValueAs:l}=t;return d(e)?e:r?""===e?NaN:e?+e:e:a&&A(e)?new Date(e):l?l(e):e};let K={isValid:!1,value:null};var Z=e=>Array.isArray(e)?e.reduce((e,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:e,K):K;function J(e){let t=e.ref;return"file"===t.type?t.files:"radio"===t.type?Z(e.refs).value:"select-multiple"===t.type?[...t.selectedOptions].map(e=>{let{value:t}=e;return t}):"checkbox"===t.type?$(e.refs).value:z(d(t.value)?e.ref.value:t.value,e)}var Q=e=>d(e)?e:e instanceof RegExp?e.source:l(e)?e.value instanceof RegExp?e.value.source:e.value:e,X=e=>({isOnSubmit:!e||e===b.onSubmit,isOnBlur:e===b.onBlur,isOnChange:e===b.onChange,isOnAll:e===b.all,isOnTouch:e===b.onTouched});let Y="AsyncFunction";var ee=e=>!!e&&!!e.validate&&!!(y(e.validate)&&e.validate.constructor.name===Y||l(e.validate)&&Object.values(e.validate).find(e=>e.constructor.name===Y)),et=(e,t,r)=>!r&&(t.watchAll||t.watch.has(e)||[...t.watch].some(t=>e.startsWith(t)&&/^\.\w+/.test(e.slice(t.length))));let er=(e,t,r,a)=>{for(let i of r||Object.keys(e)){let r=m(e,i);if(r){let{_f:e,...s}=r;if(e){if(e.refs&&e.refs[0]&&t(e.refs[0],i)&&!a)return!0;else if(e.ref&&t(e.ref,e.name)&&!a)return!0;else if(er(s,t))break}else if(l(s)&&er(s,t))break}}};function ea(e,t,r){let a=m(e,r);if(a||u(r))return{error:a,name:r};let l=r.split(".");for(;l.length;){let a=l.join("."),i=m(t,a),s=m(e,a);if(i&&!Array.isArray(i)&&r!==a)break;if(s&&s.type)return{name:a,error:s};if(s&&s.root&&s.root.type)return{name:"".concat(a,".root"),error:s.root};l.pop()}return{name:r}}var el=(e,t,r)=>{let a=T(m(e,r));return p(a,_,t[r]),p(e,r,a),e};function ei(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"validate";if(A(e)||Array.isArray(e)&&e.every(A)||"boolean"==typeof e&&!e)return{type:r,message:A(e)?e:"",ref:t}}var es=e=>!l(e)||e instanceof RegExp?{value:e,message:""}:e,en=async(e,t,r,i,s,n)=>{let{ref:o,refs:u,required:f,maxLength:c,minLength:p,min:v,max:b,pattern:g,validate:_,name:V,valueAsNumber:x,mount:F}=e._f,w=m(r,V);if(!F||t.has(V))return{};let S=u?u[0]:o,k=e=>{s&&S.reportValidity&&(S.setCustomValidity("boolean"==typeof e?"":e||""),S.reportValidity())},D={},C="radio"===o.type,O="checkbox"===o.type,E=(x||"file"===o.type)&&d(o.value)&&d(w)||U(o)&&""===o.value||""===w||Array.isArray(w)&&!w.length||x&&"number"==typeof w&&isNaN(w),R=j.bind(null,V,i,D),N=function(e,t,r){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:h.maxLength,l=arguments.length>4&&void 0!==arguments[4]?arguments[4]:h.minLength,i=e?t:r;D[V]={type:e?a:l,message:i,ref:o,...R(e?a:l,i)}};if(n?!Array.isArray(w)||!w.length:f&&(!(C||O)&&(E||a(w))||"boolean"==typeof w&&!w||O&&!$(u).isValid||C&&!Z(u).isValid)){let{value:e,message:t}=A(f)?{value:!!f,message:f}:es(f);if(e&&(D[V]={type:h.required,message:t,ref:S,...R(h.required,t)},!i))return k(t),D}if(!E&&(!a(v)||!a(b))){let e,t,r=es(b),l=es(v);if(a(w)||isNaN(w)){let a=o.valueAsDate||new Date(w),i=e=>new Date(new Date().toDateString()+" "+e),s="time"==o.type,n="week"==o.type;A(r.value)&&w&&(e=s?i(w)>i(r.value):n?w>r.value:a>new Date(r.value)),A(l.value)&&w&&(t=s?i(w)<i(l.value):n?w<l.value:a<new Date(l.value))}else{let i=o.valueAsNumber||(w?+w:w);a(r.value)||(e=i>r.value),a(l.value)||(t=i<l.value)}if((e||t)&&(N(!!e,r.message,l.message,h.max,h.min),!i))return k(D[V].message),D}if((c||p)&&!E&&(A(w)||n&&Array.isArray(w))){let e=es(c),t=es(p),r=!a(e.value)&&w.length>+e.value,l=!a(t.value)&&w.length<+t.value;if((r||l)&&(N(r,e.message,t.message),!i))return k(D[V].message),D}if(g&&!E&&A(w)){let{value:e,message:t}=es(g);if(e instanceof RegExp&&!w.match(e)&&(D[V]={type:h.pattern,message:t,ref:o,...R(h.pattern,t)},!i))return k(t),D}if(_){if(y(_)){let e=ei(await _(w,r),S);if(e&&(D[V]={...e,...R(h.validate,e.message)},!i))return k(e.message),D}else if(l(_)){let e={};for(let t in _){if(!M(e)&&!i)break;let a=ei(await _[t](w,r),S,t);a&&(e={...a,...R(t,a.message)},k(a.message),i&&(D[V]=e))}if(!M(e)&&(D[V]={ref:S,...e},!i))return D}}return k(!0),D};let eo={mode:b.onSubmit,reValidateMode:b.onChange,shouldFocusError:!0};function eu(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},u=t.default.useRef(void 0),c=t.default.useRef(void 0),[V,x]=t.default.useState({isDirty:!1,isValidating:!1,isLoading:y(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1,isReady:!1,defaultValues:y(e.defaultValues)?void 0:e.defaultValues});if(!u.current)if(e.formControl)u.current={...e.formControl,formState:V},e.defaultValues&&!y(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{let{formControl:t,...c}=function(){let e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},u={...eo,...t},c={submitCount:0,isDirty:!1,isReady:!1,isLoading:y(u.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:u.errors||{},disabled:u.disabled||!1},V={},x=(l(u.defaultValues)||l(u.values))&&o(u.defaultValues||u.values)||{},F=u.shouldUnregister?{}:o(x),w={action:!1,mount:!1,watch:!1,keepIsValid:!1},S={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set,registerName:new Set},D=0,O={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},E={...O},R={...E},N={array:L(),state:L()},j=u.criteriaMode===b.all,P=async e=>{if(!w.keepIsValid&&!u.disabled&&(E.isValid||R.isValid||e)){let e;u.resolver?(e=M((await K()).errors),W()):e=await ei({fields:V,onlyCheckValid:!0,eventType:v.VALID}),e!==c.isValid&&N.state.next({isValid:e})}},W=(e,t)=>{!u.disabled&&(E.isValidating||E.validatingFields||R.isValidating||R.validatingFields)&&((e||Array.from(S.mount)).forEach(e=>{e&&(t?p(c.validatingFields,e,t):B(c.validatingFields,e))}),N.state.next({validatingFields:c.validatingFields,isValidating:!M(c.validatingFields)}))},G=e=>{let t=q(x,F),r=e.substring(0,e.search(/\.\d+(\.|$)/))||e;p(c.dirtyFields,r,m(t,r))},H=(e,t,r,a)=>{let l=m(V,e);if(l){let i=m(F,e,d(r)?m(x,e):r);d(i)||a&&a.defaultChecked||t?p(F,e,t?i:J(l._f)):ed(e,i),w.mount&&!w.action&&P()}},$=(e,t,r,a,l)=>{let i=!1,s=!1,n={name:e};if(!u.disabled){if(!r||a){(E.isDirty||R.isDirty)&&(s=c.isDirty,c.isDirty=n.isDirty=es(),i=s!==n.isDirty);let r=C(m(x,e),t);s=!!m(c.dirtyFields,e),r?B(c.dirtyFields,e):p(c.dirtyFields,e,!0),n.dirtyFields=c.dirtyFields,i=i||(E.dirtyFields||R.dirtyFields)&&!r!==s}if(r){let t=m(c.touchedFields,e);t||(p(c.touchedFields,e,r),n.touchedFields=c.touchedFields,i=i||(E.touchedFields||R.touchedFields)&&t!==r)}i&&l&&N.state.next(n)}return i?n:{}},K=async e=>(W(e,!0),await u.resolver(F,u.context,((e,t,r,a)=>{let l={};for(let r of e){let e=m(t,r);e&&p(l,r,e._f)}return{criteriaMode:r,names:[...e],fields:l,shouldUseNativeValidation:a}})(e||S.mount,V,u.criteriaMode,u.shouldUseNativeValidation))),Z=async e=>{let{errors:t}=await K(e);if(W(e),e)for(let r of e){let e=m(t,r);e?p(c.errors,r,e):B(c.errors,r)}else c.errors=t;return t},Y=async e=>{let{name:r,eventType:a}=e;if(t.validate){let e=await t.validate({formValues:F,formState:c,name:r,eventType:a});if(l(e))for(let t in e)e[t]&&eg("".concat(g,".").concat(t),{message:A(e.message)?e.message:"",type:h.validate});else A(e)||!e?eg(g,{message:e||"",type:h.validate}):eh(g);return e}return!0},ei=async e=>{let{fields:r,onlyCheckValid:a,name:l,eventType:i,context:s={valid:!0,runRootValidation:!1}}=e;if(t.validate&&(s.runRootValidation=!0,!await Y({name:l,eventType:i}))&&(s.valid=!1,a))return s.valid;for(let e in r){let l=r[e];if(l){let{_f:r,...n}=l;if(r){let e=S.array.has(r.name),i=l._f&&ee(l._f);i&&E.validatingFields&&W([r.name],!0);let n=await en(l,S.disabled,F,j,u.shouldUseNativeValidation&&!a,e);if(i&&E.validatingFields&&W([r.name]),n[r.name]&&(s.valid=!1,a)||(a||(m(n,r.name)?e?el(c.errors,n,r.name):p(c.errors,r.name,n[r.name]):B(c.errors,r.name)),t.shouldUseNativeValidation&&n[r.name]))break}M(n)||await ei({context:s,onlyCheckValid:a,fields:n,name:e,eventType:i})}}return s.valid},es=(e,t)=>!u.disabled&&(e&&t&&p(F,e,t),!C(ev(),x)),eu=(e,t,r)=>k(e,S,{...w.mount?F:d(t)?x:A(e)?{[e]:t}:t},r,t),ed=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},l=m(V,e),i=t;if(l){let r=l._f;r&&(r.disabled||p(F,e,z(t,r)),i=U(r.ref)&&a(t)?"":t,"select-multiple"===r.ref.type?[...r.ref.options].forEach(e=>e.selected=i.includes(e.value)):r.refs?"checkbox"===r.ref.type?r.refs.forEach(e=>{e.defaultChecked&&e.disabled||(Array.isArray(i)?e.checked=!!i.find(t=>t===e.value):e.checked=i===e.value||!!i)}):r.refs.forEach(e=>e.checked=e.value===i):"file"===r.ref.type?r.ref.value="":(r.ref.value=i,r.ref.type||N.state.next({name:e,values:o(F)})))}(r.shouldDirty||r.shouldTouch)&&$(e,i,r.shouldTouch,r.shouldDirty,!0),r.shouldValidate&&ep(e)},ef=(e,t,a)=>{for(let i in t){if(!t.hasOwnProperty(i))return;let s=t[i],n=e+"."+i,o=m(V,n);(S.array.has(e)||l(s)||o&&!o._f)&&!r(s)?ef(n,s,a):ed(n,s,a)}},ec=function(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},l=m(V,e),i=S.array.has(e),s=o(t),n=C(m(F,e),s);if(p(F,e,s),i)N.array.next({name:e,values:o(F)}),r.shouldDirty&&(G(e),N.state.next({name:e,dirtyFields:c.dirtyFields,isDirty:es(e,s)}));else{let t=Array.isArray(s)&&!s.length||M(s);!l||l._f||a(s)||t?ed(e,s,r):ef(e,s,r)}n||(et(e,S)?N.state.next({...c,name:e,values:o(F)}):N.state.next({name:w.mount?e:void 0,values:o(F)}))},em=async a=>{w.mount=!0;let l=a.target,s=l.name,n=!0,d=m(V,s),f=e=>{n=Number.isNaN(e)||r(e)&&isNaN(e.getTime())||C(e,m(F,s,e))},y=X(u.mode),b=X(u.reValidateMode);if(d){let r,w,L,U=l.type?J(d._f):i(a),I=a.type===v.BLUR||a.type===v.FOCUS_OUT,q=!((L=d._f).mount&&(L.required||L.min||L.max||L.maxLength||L.minLength||L.pattern||L.validate))&&!t.validate&&!u.resolver&&!m(c.errors,s)&&!d._f.deps||(h=I,g=m(c.touchedFields,s),_=c.isSubmitted,x=b,!(A=y).isOnAll&&(!_&&A.isOnTouch?!(g||h):(_?x.isOnBlur:A.isOnBlur)?!h:(_?!x.isOnChange:!A.isOnChange)||h)),G=et(s,S,I);p(F,s,U),I?l&&l.readOnly||(d._f.onBlur&&d._f.onBlur(a),e&&e(0)):d._f.onChange&&d._f.onChange(a);let H=$(s,U,I),z=!M(H)||G;if(I||N.state.next({name:s,type:a.type,values:o(F)}),q)return(E.isValid||R.isValid)&&("onBlur"===u.mode?I&&P():I||P()),z&&N.state.next({name:s,...G?{}:H});if(!u.resolver&&t.validate&&await Y({name:s,eventType:a.type}),!I&&G&&N.state.next({...c}),u.resolver){let{errors:e}=await K([s]);if(W([s]),f(U),n){let t=ea(c.errors,V,s),a=ea(e,V,t.name||s);r=a.error,s=a.name,w=M(e)}}else W([s],!0),r=(await en(d,S.disabled,F,j,u.shouldUseNativeValidation))[s],W([s]),f(U),n&&(r?w=!1:(E.isValid||R.isValid)&&(w=await ei({fields:V,onlyCheckValid:!0,name:s,eventType:a.type})));if(n){d._f.deps&&(!Array.isArray(d._f.deps)||d._f.deps.length>0)&&ep(d._f.deps);var h,g,_,x,A,k=s,O=w,T=r;let t=m(c.errors,k),a=(E.isValid||R.isValid)&&"boolean"==typeof O&&c.isValid!==O;if(u.delayError&&T){let t;t=()=>{p(c.errors,k,T),N.state.next({errors:c.errors})},(e=e=>{clearTimeout(D),D=setTimeout(t,e)})(u.delayError)}else clearTimeout(D),e=null,T?p(c.errors,k,T):B(c.errors,k);if((T?!C(t,T):t)||!M(H)||a){let e={...H,...a&&"boolean"==typeof O?{isValid:O}:{},errors:c.errors,name:k};c={...c,...e},N.state.next(e)}}}},ey=(e,t)=>{if(m(c.errors,t)&&e.focus)return e.focus(),1},ep=async function(e){let t,r,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},l=T(e);if(u.resolver){let a=await Z(d(e)?e:l);t=M(a),r=e?!l.some(e=>m(a,e)):t}else e?((r=(await Promise.all(l.map(async e=>{let t=m(V,e);return await ei({fields:t&&t._f?{[e]:t}:t,eventType:v.TRIGGER})}))).every(Boolean))||c.isValid)&&P():r=t=await ei({fields:V,name:e,eventType:v.TRIGGER});return N.state.next({...!A(e)||(E.isValid||R.isValid)&&t!==c.isValid?{}:{name:e},...u.resolver||!e?{isValid:t}:{},errors:c.errors}),a.shouldFocus&&!r&&er(V,ey,e?l:S.mount),r},ev=(e,t)=>{let r={...w.mount?F:x};return t&&(r=function e(t,r){let a={};for(let i in t)if(t.hasOwnProperty(i)){let s=t[i],n=r[i];if(s&&l(s)&&n){let t=e(s,n);l(t)&&(a[i]=t)}else t[i]&&(a[i]=n)}return a}(t.dirtyFields?c.dirtyFields:c.touchedFields,r)),d(e)?r:A(e)?m(r,e):e.map(e=>m(r,e))},eb=(e,t)=>({invalid:!!m((t||c).errors,e),isDirty:!!m((t||c).dirtyFields,e),error:m((t||c).errors,e),isValidating:!!m(c.validatingFields,e),isTouched:!!m((t||c).touchedFields,e)}),eh=e=>{let t=e?T(e):void 0;null==t||t.forEach(e=>B(c.errors,e)),t?t.forEach(e=>{N.state.next({name:e,errors:c.errors})}):N.state.next({errors:{}})},eg=(e,t,r)=>{let a=(m(V,e,{_f:{}})._f||{}).ref,{ref:l,message:i,type:s,...n}=m(c.errors,e)||{};p(c.errors,e,{...n,...t,ref:a}),N.state.next({name:e,errors:c.errors,isValid:!1}),r&&r.shouldFocus&&a&&a.focus&&a.focus()},e_=e=>N.state.subscribe({next:t=>{let r,a,l;if(r=e.name,a=t.name,l=e.exact,(!r||!a||r===a||T(r).some(e=>e&&(l?e===a:e.startsWith(a)||a.startsWith(e))))&&((e,t,r,a)=>{r(e);let{name:l,...i}=e;return M(i)||Object.keys(i).length>=Object.keys(t).length||Object.keys(i).find(e=>t[e]===(!a||b.all))})(t,e.formState||E,eD,e.reRenderRoot)){let r={...F};e.callback({values:r,...c,...t,defaultValues:x})}}}).unsubscribe,eV=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};for(let r of e?T(e):S.mount)S.mount.delete(r),S.array.delete(r),t.keepValue||(B(V,r),B(F,r)),t.keepError||B(c.errors,r),t.keepDirty||B(c.dirtyFields,r),t.keepTouched||B(c.touchedFields,r),t.keepIsValidating||B(c.validatingFields,r),u.shouldUnregister||t.keepDefaultValue||B(x,r);N.state.next({values:o(F)}),N.state.next({...c,...!t.keepDirty?{}:{isDirty:es()}}),t.keepIsValid||P()},ex=e=>{let{disabled:t,name:r}=e;if("boolean"==typeof t&&w.mount||t||S.disabled.has(r)){let e=S.disabled.has(r);t?S.disabled.add(r):S.disabled.delete(r),!!t!==e&&w.mount&&!w.action&&P()}},eF=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=m(V,e),a="boolean"==typeof t.disabled||"boolean"==typeof u.disabled,l=!S.registerName.has(e)&&r&&r._f&&!r._f.mount;return(p(V,e,{...r||{},_f:{...r&&r._f?r._f:{ref:{name:e}},name:e,mount:!0,...t}}),S.mount.add(e),r&&!l)?ex({disabled:"boolean"==typeof t.disabled?t.disabled:u.disabled,name:e}):H(e,!0,t.value),{...a?{disabled:t.disabled||u.disabled}:{},...u.progressive?{required:!!t.required,min:Q(t.min),max:Q(t.max),minLength:Q(t.minLength),maxLength:Q(t.maxLength),pattern:Q(t.pattern)}:{},name:e,onChange:em,onBlur:em,ref:a=>{if(a){let l;S.registerName.add(e),eF(e,t),S.registerName.delete(e),r=m(V,e);let i=d(a.value)&&a.querySelectorAll&&a.querySelectorAll("input,select,textarea")[0]||a,s="radio"===(l=i).type||"checkbox"===l.type,n=r._f.refs||[];(s?n.find(e=>e===i):i===r._f.ref)||(p(V,e,{_f:{...r._f,...s?{refs:[...n.filter(I),i,...Array.isArray(m(x,e))?[{}]:[]],ref:{type:i.type,name:e}}:{ref:i}}}),H(e,!1,void 0,i))}else(r=m(V,e,{}))._f&&(r._f.mount=!1),(u.shouldUnregister||t.shouldUnregister)&&!(s(S.array,e)&&w.action)&&S.unMount.add(e)}}},ew=()=>u.shouldFocusError&&er(V,ey,S.mount),eS=(e,t)=>async r=>{let a;r&&(r.preventDefault&&r.preventDefault(),r.persist&&r.persist());let l=o(F);if(N.state.next({isSubmitting:!0}),u.resolver){let{errors:e,values:t}=await K();W(),c.errors=e,l=o(t)}else await ei({fields:V,eventType:v.SUBMIT});if(S.disabled.size)for(let e of S.disabled)B(l,e);if(B(c.errors,_),M(c.errors)){N.state.next({errors:{}});try{await e(l,r)}catch(e){a=e}}else t&&await t({...c.errors},r),ew(),setTimeout(ew);if(N.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:M(c.errors)&&!a,submitCount:c.submitCount+1,errors:c.errors}),a)throw a},eA=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=e?o(e):x,a=o(r),l=M(e),i=l?x:a;if(t.keepDefaultValues||(x=r),!t.keepValues){if(t.keepDirtyValues)for(let e of Array.from(new Set([...S.mount,...Object.keys(q(x,F))]))){let t=m(c.dirtyFields,e),r=m(F,e),a=m(i,e);t&&!d(r)?p(i,e,r):t||d(a)||ec(e,a)}else{if(n&&d(e))for(let e of S.mount){let t=m(V,e);if(t&&t._f){let e=Array.isArray(t._f.refs)?t._f.refs[0]:t._f.ref;if(U(e)){let t=e.closest("form");if(t){t.reset();break}}}}if(t.keepFieldsRef)for(let e of S.mount)ec(e,m(i,e));else V={}}F=u.shouldUnregister?t.keepDefaultValues?o(x):{}:o(i),N.array.next({values:{...i}}),N.state.next({values:{...i}})}S={mount:t.keepDirtyValues?S.mount:new Set,unMount:new Set,array:new Set,registerName:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},w.mount=!E.isValid||!!t.keepIsValid||!!t.keepDirtyValues||!u.shouldUnregister&&!M(i),w.watch=!!u.shouldUnregister,w.keepIsValid=!!t.keepIsValid,w.action=!1,t.keepErrors||(c.errors={}),N.state.next({submitCount:t.keepSubmitCount?c.submitCount:0,isDirty:!l&&(t.keepDirty?c.isDirty:!!(t.keepDefaultValues&&!C(e,x))),isSubmitted:!!t.keepIsSubmitted&&c.isSubmitted,dirtyFields:l?{}:t.keepDirtyValues?t.keepDefaultValues&&F?q(x,F):c.dirtyFields:t.keepDefaultValues&&e?q(x,e):t.keepDirty?c.dirtyFields:{},touchedFields:t.keepTouched?c.touchedFields:{},errors:t.keepErrors?c.errors:{},isSubmitSuccessful:!!t.keepIsSubmitSuccessful&&c.isSubmitSuccessful,isSubmitting:!1,defaultValues:x})},ek=(e,t)=>eA(y(e)?e(F):e,{...u.resetOptions,...t}),eD=e=>{c={...c,...e}},eC={control:{register:eF,unregister:eV,getFieldState:eb,handleSubmit:eS,setError:eg,_subscribe:e_,_runSchema:K,_updateIsValidating:W,_focusError:ew,_getWatch:eu,_getDirty:es,_setValid:P,_setFieldArray:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0,a=arguments.length>3?arguments[3]:void 0,l=!(arguments.length>4)||void 0===arguments[4]||arguments[4],i=!(arguments.length>5)||void 0===arguments[5]||arguments[5];if(a&&r&&!u.disabled){if(w.action=!0,i&&Array.isArray(m(V,e))){let t=r(m(V,e),a.argA,a.argB);l&&p(V,e,t)}if(i&&Array.isArray(m(c.errors,e))){let t,i=r(m(c.errors,e),a.argA,a.argB);l&&p(c.errors,e,i),f(m(t=c.errors,e)).length||B(t,e)}if((E.touchedFields||R.touchedFields)&&i&&Array.isArray(m(c.touchedFields,e))){let t=r(m(c.touchedFields,e),a.argA,a.argB);l&&p(c.touchedFields,e,t)}(E.dirtyFields||R.dirtyFields)&&G(e),N.state.next({name:e,isDirty:es(e,t),dirtyFields:c.dirtyFields,errors:c.errors,isValid:c.isValid})}else p(F,e,t)},_setDisabledField:ex,_setErrors:e=>{c.errors=e,N.state.next({errors:c.errors,isValid:!1})},_getFieldArray:e=>f(m(w.mount?F:x,e,u.shouldUnregister?m(x,e,[]):[])),_reset:eA,_resetDefaultValues:()=>y(u.defaultValues)&&u.defaultValues().then(e=>{ek(e,u.resetOptions),N.state.next({isLoading:!1})}),_removeUnmounted:()=>{for(let e of S.unMount){let t=m(V,e);t&&(t._f.refs?t._f.refs.every(e=>!I(e)):!I(t._f.ref))&&eV(e)}S.unMount=new Set},_disableForm:e=>{"boolean"==typeof e&&(N.state.next({disabled:e}),er(V,(t,r)=>{let a=m(V,r);a&&(t.disabled=a._f.disabled||e,Array.isArray(a._f.refs)&&a._f.refs.forEach(t=>{t.disabled=a._f.disabled||e}))},0,!1))},_subjects:N,_proxyFormState:E,get _fields(){return V},get _formValues(){return F},get _state(){return w},set _state(value){w=value},get _defaultValues(){return x},get _names(){return S},set _names(value){S=value},get _formState(){return c},get _options(){return u},set _options(value){u={...u,...value}}},subscribe:e=>(w.mount=!0,R={...R,...e.formState},e_({...e,formState:{...O,...e.formState}})),trigger:ep,register:eF,handleSubmit:eS,watch:(e,t)=>y(e)?N.state.subscribe({next:r=>"values"in r&&e(r.values||eu(void 0,t),r)}):eu(e,t,!0),setValue:ec,setValues:e=>{let t=y(e)?e(F):e;C(F,t)||(F={...F,...t},N.state.next({...c,values:F}))},getValues:ev,reset:ek,resetField:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};m(V,e)&&(d(t.defaultValue)?ec(e,o(m(x,e))):(ec(e,t.defaultValue),p(x,e,o(t.defaultValue))),t.keepTouched||B(c.touchedFields,e),t.keepDirty||(B(c.dirtyFields,e),c.isDirty=t.defaultValue?es(e,o(m(x,e))):es()),!t.keepError&&(B(c.errors,e),E.isValid&&P()),N.state.next({...c}))},clearErrors:eh,unregister:eV,setError:eg,setFocus:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=m(V,e),a=r&&r._f;if(a){let e=a.refs?a.refs[0]:a.ref;e.focus&&setTimeout(()=>{e.focus(),t.shouldSelect&&y(e.select)&&e.select()})}},getFieldState:eb};return{...eC,formControl:eC}}(e);u.current={...c,formState:V}}let S=u.current.control;return S._options=e,w(()=>{let e=S._subscribe({formState:S._proxyFormState,callback:()=>x({...S._formState}),reRenderRoot:!0});return x(e=>({...e,isReady:!0})),S._formState.isReady=!0,e},[S]),t.default.useEffect(()=>S._disableForm(e.disabled),[S,e.disabled]),t.default.useEffect(()=>{e.mode&&(S._options.mode=e.mode),e.reValidateMode&&(S._options.reValidateMode=e.reValidateMode)},[S,e.mode,e.reValidateMode]),t.default.useEffect(()=>{e.errors&&(S._setErrors(e.errors),S._focusError())},[S,e.errors]),t.default.useEffect(()=>{e.shouldUnregister&&S._subjects.state.next({values:S._getWatch()})},[S,e.shouldUnregister]),t.default.useEffect(()=>{if(S._proxyFormState.isDirty){let e=S._getDirty();e!==V.isDirty&&S._subjects.state.next({isDirty:e})}},[S,V.isDirty]),t.default.useEffect(()=>{var t;e.values&&!C(e.values,c.current)?(S._reset(e.values,{keepFieldsRef:!0,...S._options.resetOptions}),(null==(t=S._options.resetOptions)?void 0:t.keepIsValid)||S._setValid(),c.current=e.values,x(e=>({...e}))):S._resetDefaultValues()},[S,e.values]),t.default.useEffect(()=>{S._state.mount||(S._setValid(),S._state.mount=!0),S._state.watch&&(S._state.watch=!1,S._subjects.state.next({...S._formState})),S._removeUnmounted()}),u.current.formState=t.default.useMemo(()=>F(V,S),[S,V]),u.current}},87676,10204,e=>{"use strict";e.s(["Form",()=>v,"FormControl",()=>F,"FormField",()=>h,"FormItem",()=>V,"FormLabel",()=>x,"FormMessage",()=>w],87676);var t=e.i(18050),r=e.i(71645),a=e.i(20783),l=Symbol.for("react.lazy"),i=r[" use ".trim().toString()];function s(e){var t;return null!=e&&"object"==typeof e&&"$$typeof"in e&&e.$$typeof===l&&"_payload"in e&&"object"==typeof(t=e._payload)&&null!==t&&"then"in t}function n(e){let l=function(e){let t=r.forwardRef((e,t)=>{let{children:l,...n}=e;if(s(l)&&"function"==typeof i&&(l=i(l._payload)),r.isValidElement(l)){var o,u,d;let e,i,s=(i=(e=null==(u=Object.getOwnPropertyDescriptor((o=l).props,"ref"))?void 0:u.get)&&"isReactWarning"in e&&e.isReactWarning)?o.ref:(i=(e=null==(d=Object.getOwnPropertyDescriptor(o,"ref"))?void 0:d.get)&&"isReactWarning"in e&&e.isReactWarning)?o.props.ref:o.props.ref||o.ref,f=function(e,t){let r={...t};for(let a in t){let l=e[a],i=t[a];/^on[A-Z]/.test(a)?l&&i?r[a]=function(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];let a=i(...t);return l(...t),a}:l&&(r[a]=l):"style"===a?r[a]={...l,...i}:"className"===a&&(r[a]=[l,i].filter(Boolean).join(" "))}return{...e,...r}}(n,l.props);return l.type!==r.Fragment&&(f.ref=t?(0,a.composeRefs)(t,s):s),r.cloneElement(l,f)}return r.Children.count(l)>1?r.Children.only(null):null});return t.displayName="".concat(e,".SlotClone"),t}(e),n=r.forwardRef((e,a)=>{let{children:n,...o}=e;s(n)&&"function"==typeof i&&(n=i(n._payload));let u=r.Children.toArray(n),f=u.find(d);if(f){let e=f.props.children,i=u.map(t=>t!==f?t:r.Children.count(e)>1?r.Children.only(null):r.isValidElement(e)?e.props.children:null);return(0,t.jsx)(l,{...o,ref:a,children:r.isValidElement(e)?r.cloneElement(e,void 0,i):null})}return(0,t.jsx)(l,{...o,ref:a,children:n})});return n.displayName="".concat(e,".Slot"),n}var o=n("Slot"),u=Symbol("radix.slottable");function d(e){return r.isValidElement(e)&&"function"==typeof e.type&&"__radixId"in e.type&&e.type.__radixId===u}var f=e.i(53145),c=e.i(75157);e.s(["Label",()=>p],10204),e.i(74080);var m=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((e,a)=>{let l=n("Primitive.".concat(a)),i=r.forwardRef((e,r)=>{let{asChild:i,...s}=e;return"undefined"!=typeof window&&(window[Symbol.for("radix-ui")]=!0),(0,t.jsx)(i?l:a,{...s,ref:r})});return i.displayName="Primitive.".concat(a),{...e,[a]:i}},{}),y=r.forwardRef((e,r)=>(0,t.jsx)(m.label,{...e,ref:r,onMouseDown:t=>{var r;t.target.closest("button, input, select, textarea")||(null==(r=e.onMouseDown)||r.call(e,t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));y.displayName="Label";let p=r.forwardRef((e,r)=>{let{className:a,...l}=e;return(0,t.jsx)(y,{ref:r,"data-slot":"label",className:(0,c.cn)("text-sm font-medium leading-none text-foreground peer-disabled:cursor-not-allowed peer-disabled:opacity-70",a),...l})});p.displayName=y.displayName;let v=f.FormProvider,b=r.createContext({});function h(e){let{...r}=e;return(0,t.jsx)(b.Provider,{value:{name:r.name},children:(0,t.jsx)(f.Controller,{...r})})}let g=r.createContext({});function _(){let e=r.useContext(b),t=r.useContext(g),{getFieldState:a,formState:l}=(0,f.useFormContext)(),i=a(e.name,l);if(!e.name)throw Error("useFormField must be used within <FormField>");let{id:s}=t;return{id:s,name:e.name,formItemId:"".concat(s,"-form-item"),formDescriptionId:"".concat(s,"-form-item-description"),formMessageId:"".concat(s,"-form-item-message"),...i}}let V=r.forwardRef((e,a)=>{let{className:l,...i}=e,s=r.useId();return(0,t.jsx)(g.Provider,{value:{id:s},children:(0,t.jsx)("div",{ref:a,"data-slot":"form-item",className:(0,c.cn)("space-y-2",l),...i})})});V.displayName="FormItem";let x=r.forwardRef((e,r)=>{let{className:a,...l}=e,{error:i,formItemId:s}=_();return(0,t.jsx)(p,{ref:r,className:(0,c.cn)(i&&"text-destructive",a),htmlFor:s,...l})});x.displayName="FormLabel";let F=r.forwardRef((e,r)=>{let{...a}=e,{error:l,formItemId:i,formDescriptionId:s,formMessageId:n}=_();return(0,t.jsx)(o,{ref:r,id:i,"aria-describedby":l?"".concat(s," ").concat(n):"".concat(s),"aria-invalid":!!l,...a})});F.displayName="FormControl",r.forwardRef((e,r)=>{let{className:a,...l}=e,{formDescriptionId:i}=_();return(0,t.jsx)("p",{ref:r,id:i,"data-slot":"form-description",className:(0,c.cn)("text-sm text-muted-foreground",a),...l})}).displayName="FormDescription";let w=r.forwardRef((e,r)=>{var a;let{className:l,children:i,...s}=e,{error:n,formMessageId:o}=_(),u=n?String(null!=(a=null==n?void 0:n.message)?a:""):i;return u?(0,t.jsx)("p",{ref:r,id:o,"data-slot":"form-message",className:(0,c.cn)("text-sm font-medium text-destructive",l),...s,children:u}):null});w.displayName="FormMessage"},24687,e=>{"use strict";e.s(["Textarea",()=>a]);var t=e.i(18050),r=e.i(75157);function a(e){let{className:a,...l}=e;return(0,t.jsx)("textarea",{"data-slot":"textarea",className:(0,r.cn)("flex min-h-20 w-full rounded-md border border-solid border-border bg-transparent px-3 py-2 text-sm 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]",a),...l})}}]);
@@ -0,0 +1 @@
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",()=>m,"getBridgeSidebarManageRoutes",()=>g,"getManageRoute",()=>f,"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:"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:"mcp",slug:"mcp",label:"MCP",title:"MCP管理",description:"管理外部工具与数据源。可以导入、编辑、移除或禁用 MCP 服务。",chrome:"side-nav",icon:"Mcp",enabled:!0,visibleInNav:!0,Component:d(()=>e.A(18963).then(e=>({default:e.McpManageView})))},{key:"tools",slug:"tools",label:"工具",title:"工具管理",description:"管理当前 Agent 已挂载的工具列表",chrome:"side-nav",icon:"Tool",enabled:!0,visibleInNav:!0,Component:d(()=>e.A(9803).then(e=>({default:e.ToolsManageView})))},{key:"skills",slug:"skills",label:"技能",title:"技能管理",description:"管理当前 Agent 已挂载的技能",chrome:"side-nav",icon:"Skill",enabled:!0,visibleInNav:!0,Component:d(()=>e.A(69496).then(e=>({default:e.SkillsManageView})))},{key:"agent-teams",slug:"agent-teams",label:"agents",title:"Agent 团队管理",description:"管理当前 Agent 可调度的子 Agent 团队",chrome:"side-nav",icon:"Agent",enabled:!0,visibleInNav:!0,Component:d(()=>e.A(56149).then(e=>({default:e.AgentTeamsManageView})))},{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 m=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 f(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",()=>X],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",()=>m,"parseScheduleToolResult",()=>p,"partitionScheduledSegments",()=>f,"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 m(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,m,f,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 x=v.id||h.id||"pending-".concat(g.tool_use_id),y={id:x,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!=(m=v.delayMinutes)?m:h.delayMinutes,cron:v.cron,recurring:v.recurring,status:v.error?"failed":null!=(f=h.status)?f:"scheduled"};t.set(x,y),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 f(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)),m=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:m,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 x(e){let t=Number(e);return Number.isFinite(t)?Math.max(0,Math.floor(t)):0}function y(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 S=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 N=e.i(87243),A=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 w=e.i(92413),I=e.i(55146),C=e.i(72064),E=e.i(46798);let T=(0,e.i(75254).default)("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);var R=e.i(85570),_=e.i(97249),M=e.i(75157),P=e.i(8279),L=e.i(52727),O=e.i(18253);function z(e){let{collapsed:r,onGoToSettings:a}=e,{push:i}=(0,O.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,R.useWorkspaceRuntime)(),m=o.trim()||"qihoo",f=(null==l?void 0:l.id)===m&&l.displayName.trim()||m,g=(0,P.initialsFromLabel)(f),[h,v]=(0,n.useState)(!1),[b,x]=(0,n.useState)(!1),[y,S]=(0,n.useState)([]),[j,N]=(0,n.useState)(!1),[A,k]=(0,n.useState)(null),w=(0,n.useRef)(null),I=(0,n.useRef)(null),E=(0,n.useCallback)(()=>{w.current&&(clearTimeout(w.current),w.current=null)},[]),z=(0,n.useCallback)(()=>{I.current&&(clearTimeout(I.current),I.current=null)},[]),D=(0,n.useCallback)(()=>{E(),v(!0)},[E]),W=(0,n.useCallback)(()=>{E(),w.current=setTimeout(()=>{v(!1),x(!1),w.current=null},120)},[E]),F=(0,n.useCallback)(()=>{z(),x(!0)},[z]),B=(0,n.useCallback)(()=>{z(),I.current=setTimeout(()=>{x(!1),I.current=null},120)},[z]),U=(0,n.useCallback)(()=>{v(!1),x(!1),null==a||a()},[a]),V=(0,n.useCallback)(async e=>{let t=e.id.trim();v(!1),x(!1),t&&t!==m&&await p(t,e.displayName)&&i((0,_.buildAppNavHref)("/",{ensureAgent:!0,agent:t,preserveSessionId:!1}))},[m,i,p]);return(0,n.useEffect)(()=>{if(!b)return;let e=!1;return N(!0),k(null),S([]),(0,L.listAgents)(u,d).then(t=>{e||S(t)}).catch(t=>{e||k(String(t))}).finally(()=>{e||N(!1)}),()=>{e=!0}},[b,u,d]),(0,n.useEffect)(()=>{if(!y.length)return;let e=y.find(e=>e.id===m);e&&((null==l?void 0:l.id)!==e.id||l.displayName!==e.displayName)&&c(e)},[y,m,l,c]),(0,n.useEffect)(()=>()=>{w.current&&clearTimeout(w.current),I.current&&clearTimeout(I.current)},[]),(0,t.jsx)("div",{className:(0,M.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,M.cn)("relative min-w-0",!r&&"flex-1"),onMouseEnter:D,onMouseLeave:W,children:[(0,t.jsxs)("div",{className:(0,M.cn)("flex min-w-0 cursor-default 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:f})]}),h?(0,t.jsx)("div",{className:"absolute bottom-full left-0 z-50 w-[288px] max-w-[min(100vw-24px,288px)] cursor-pointer pb-2 shadow-[var(--shadow-float)]",onMouseEnter:D,onMouseLeave:W,children:(0,t.jsxs)("div",{className:(0,M.cn)("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:"px-1.5 pt-1.5",children:(0,t.jsxs)("div",{className:"relative w-full",onMouseLeave:()=>{b&&B()},children:[(0,t.jsxs)("div",{className:(0,M.cn)("flex cursor-pointer items-center gap-2 rounded-xl px-2 py-2 transition-colors",b?"bg-[var(--ds-item-hover)]":"hover:bg-[var(--ds-item-hover)]"),onMouseEnter:()=>{D(),F()},children:[(0,t.jsx)("span",{className:"inline-flex h-9 w-9 shrink-0 items-center justify-center rounded-full text-sm font-semibold text-white",style:{background:"var(--avatar-bg)"},children:g}),(0,t.jsx)("div",{className:"min-w-0 flex-1 leading-tight",children:(0,t.jsx)("div",{className:"truncate text-base font-medium text-[var(--ds-text)]",children:f})}),(0,t.jsx)(C.default,{name:"ChevronRight",size:16,className:"shrink-0 text-[var(--ds-muted)]"})]}),b?(0,t.jsx)("div",{className:"absolute bottom-0 left-full z-[60] -ml-2 pl-2 shadow-[var(--shadow-float)]",onMouseEnter:()=>{D(),F()},onMouseLeave:B,children:(0,t.jsx)("div",{className:(0,M.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:j?(0,t.jsx)("div",{className:"px-2 py-3 text-sm text-[var(--ds-muted)]",children:"加载中…"}):A?(0,t.jsxs)("div",{className:"px-2 py-3 text-sm text-red-600",children:["加载失败: ",A]}):0===y.length?(0,t.jsx)("div",{className:"px-2 py-3 text-sm text-[var(--ds-muted)]",children:"暂无 agent"}):y.map(e=>{let n=e.id===m,r=(0,P.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:()=>V(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)("div",{className:"mx-2 h-px bg-[var(--ds-border)]"}),(0,t.jsx)("div",{className:"p-1.5",children:(0,t.jsxs)("button",{type:"button",className:(0,M.cn)("flex h-9 w-full cursor-pointer items-center gap-2 rounded-[var(--ds-radius-sm)] border-0 bg-transparent px-2.5 text-left text-base text-[var(--ds-text)]","hover:bg-[var(--ds-item-hover)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ds-accent)]"),onClick:U,children:[(0,t.jsx)(T,{size:16,className:"shrink-0 text-[var(--icon-color)]"}),"设置"]})})]})}):null]})})}var D=e.i(82787);let W="bridge-sidebar-collapsed";function F(e){let{onNewSession:a,onSelectSession:i,deleteSessionById:l}=e,{push:o,router:u}=(0,O.useGuardedAppNavigation)(),d=(0,r.usePathname)(),c=(0,s.useAppStore)(e=>e.lastSessions),p=(0,s.useAppStore)(e=>e.sessionId),m=(0,s.useAppStore)(e=>e.brand),f=(0,s.useAppStore)(e=>e.agentId),[g,h]=(0,n.useState)(!1),v=(0,n.useRef)(!1),[b,x]=(0,n.useState)(null),[y,S]=(0,n.useState)(!0),j=(0,n.useMemo)(()=>(0,D.getBridgeSidebarManageRoutes)(),[]),N=(0,n.useCallback)((e,t)=>(0,_.buildAppNavHref)(e,{ensureAgent:null==t?void 0:t.ensureAgent,agent:f,preserveSessionId:"/"===e&&!(null==t?void 0:t.clearSessionId),sessionId:null==t?void 0:t.sessionId}),[f]),A=(0,n.useCallback)(e=>{let t=(0,_.normalizeAppPathname)(d),n=(0,_.normalizeAppPathname)(e);return t===n||t.startsWith("".concat(n,"/"))},[d]),k=(0,n.useCallback)(e=>{o(N(e,{ensureAgent:!0}))},[o,N]);(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?[N(n,{ensureAgent:!0})]:[]}),...j.map(e=>N(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,N,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"]')||x(null))};return document.addEventListener("pointerdown",e,!0),()=>document.removeEventListener("pointerdown",e,!0)},[b]);let T=(0,n.useCallback)(()=>{o(N(D.MANAGE_DEFAULT_HREF,{ensureAgent:!0}))},[o,N]);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(N("/",{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=A(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)(z,{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:m})}),(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(N("/",{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=A(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":y,"aria-controls":"sessionList","aria-label":y?"收起历史会话列表":"展开历史会话列表",onClick:()=>{S(e=>!e)},children:["历史会话",y?(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)]"})]}),y?(0,t.jsx)("div",{className:"sidebar-drawer-body sidebar-drawer-body--sessions",children:(0,t.jsx)("div",{id:"sessionList",children:c.length?(0,w.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(N("/",{sessionId:e.sessionId}))},children:(0,t.jsx)("div",{className:"session-item-title",children:(0,w.sessionTitle)(e)})}),(0,t.jsx)("div",{className:"session-menu-wrap","data-session-menu-wrap":"",onClick:t=>{t.stopPropagation(),t.target===t.currentTarget&&x(t=>t===e.sessionId?null:e.sessionId)},children:(0,t.jsxs)(I.DropdownMenu,{open:b===e.sessionId,onOpenChange:e=>{e||x(null)},children:[(0,t.jsx)(I.DropdownMenuTrigger,{type:"button",className:"session-menu-btn","aria-label":"更多",onClick:t=>{t.stopPropagation(),x(t=>t===e.sessionId?null:e.sessionId)},children:"···"}),(0,t.jsxs)(I.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)(I.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)(I.DropdownMenuSeparator,{className:"mx-1 my-1 bg-[var(--ds-border)]"}),(0,t.jsxs)(I.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(N("/",{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)(z,{collapsed:!1,onGoToSettings:T})]})})}var B=e.i(19455),U=e.i(61196);function V(){let e=(0,U.useStageThreadFlyoutStore)(e=>e.open),r=(0,U.useStageThreadFlyoutStore)(e=>e.title),s=(0,U.useStageThreadFlyoutStore)(e=>e.content),a=(0,U.useStageThreadFlyoutStore)(e=>e.width),i=(0,U.useStageThreadFlyoutStore)(e=>e.hideHeader),l=(0,U.useStageThreadFlyoutStore)(e=>e.bodyClassName),o=(0,U.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,U.clampStageThreadFlyoutWidth)(a))},[e,a]);let m=(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,U.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,M.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":U.STAGE_THREAD_FLYOUT_MIN_WIDTH,"aria-valuemax":U.STAGE_THREAD_FLYOUT_MAX_WIDTH,"aria-label":"调整面板宽度",onPointerDown:m,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,M.cn)("stage-thread-flyout-body",l),children:s})]})]}):null})}var G=e.i(94606);function q(){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}=U.useStageThreadFlyoutStore.getState();if(r&&(0,G.isLeavingFlyoutGuardRoute)(i,n,e)){if(!(0,G.shouldConfirmFlyoutRouteChange)(i,n,e,l))return void o();a.current=!0,t.replace(n),(0,G.confirmDiscardFlyoutChanges)().then(r=>{a.current=!1,r?(o(),t.push(e),s.current=e):s.current=n})}},[e,t]),null}function H(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)(F,{onNewSession:a.onNewSession,onSelectSession:a.onSelectSession,onSaveAgentConfig:a.onSaveAgentConfig,deleteSessionById:a.deleteSessionById}),(0,t.jsx)("main",{className:(0,M.cn)("main overflow-x-auto",r),"data-region":s,children:(0,t.jsx)("div",{className:"main-content",children:n})}),(0,t.jsx)(V,{}),(0,t.jsx)(q,{})]})}function Y(){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.setWsUrl),l=(0,s.useAppStore)(e=>e.setAgentId),{loadSessions:o,loadAgentConfig:u}=(0,N.useSession)();return(0,n.useLayoutEffect)(()=>{s.useAppStore.getState().wsUrl.trim()||i((0,a.defaultWsUrl)())},[i]),(0,n.useLayoutEffect)(()=>{(0,_.syncRuntimeAgentWithUrl)(s.useAppStore.getState().agentId,l)},[r,l]),(0,n.useEffect)(()=>{o(),u()},[r,e,t,o,u]),null}function Q(){let e=(0,r.useSearchParams)(),t=(0,s.useAppStore)(e=>e.setAgentId);return(0,n.useLayoutEffect)(()=>{var n;let r=null==(n=e.get("agent"))?void 0:n.trim();r&&r!==s.useAppStore.getState().agentId.trim()&&t(r)},[e,t]),null}function J(){return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(Y,{}),(0,t.jsx)(n.Suspense,{fallback:null,children:(0,t.jsx)(Q,{})})]})}function X(e){let{children:o}=e,d=(0,r.usePathname)(),c=function(e){if(!e)return!1;let t=(0,_.normalizeAppPathname)(e);return"/manage"===t||t.startsWith("/manage/")}(d),p=(0,D.isManageSideNavPath)(d),m=(0,s.useAppStore)(e=>e.wsUrl),f=(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),w=(0,s.useAppStore)(e=>e.setSessionId),I=(0,s.useAppStore)(e=>e.setSessionViewMode),C=(0,s.useAppStore)(e=>e.setPendingHistoryRefresh),{loadSessions:E,loadAgentConfig:T,loadSessionOverrides:M,deleteSessionById:P}=(0,N.useSession)(),L=(0,A.usePersistAgentConfig)(),{reconnect:O,switchSession:z,sendPrompt:W,sendAbort:F,sendReloadAgentConfig:B,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),m=(0,n.useRef)(null==e?void 0:e.onSession);m.current=null==e?void 0:e.onSession;let f=(0,s.useAppStore)(e=>e.wsUrl),g=(0,n.useCallback)(()=>(o.current+=1,o.current),[]),h=(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()},[]),v=(0,n.useCallback)((e,t)=>{var n,a,i,o,c,f,h,b;let x=(null==t?void 0:t.httpReplay)===!0,y=s.useAppStore.getState(),N=(e.runId||"main").trim()||"main",A="string"==typeof e.agent_name?e.agent_name.trim():"";A&&p.current.set(N,A);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(N)||"";return t||s||a||n},w=String(null!=(n=e.sessionId)?n:"").trim()||r.current.trim()||y.sessionId.trim()||"unknown",I="".concat(d.current,":").concat(w);if(e.eventId&&function(e,t){var n;let r=t||"default",s=null!=(n=S.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 S.set(r,s),!1}(e.eventId,I))return void y.appendLog("dedup","eventId=".concat(e.eventId," 已忽略"));switch(!x&&y.appendLog("←",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=m.current)||o.call(m,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!=(f=e.data.phase)?f:"");"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(!x&&r.current){let t=String(null!=(h=e.sessionId)?h:"").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("",N),a=g();y.applyRunMessageDelta({...n,runId:N,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:N,correlationId:"",status:"resolved",text:s,ts:"string"==typeof e.ts?e.ts:"",arrivalSeq:g()}),"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&&v(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!=(b=t.reason)?b:"未知错误"),"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"===N?"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:N,correlationId:a,status:"resolved"===t.status?"resolved":"failed",text:i,ts:"string"==typeof e.ts?e.ts:"",arrivalSeq:g()});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:N})}}},[g]),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=x(e.retryAttempt),n=x(e.maxRetries),r=x(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=m.current)||i.call(m,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":"")}}},[]),A=(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&&y(n)&&v(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")}},[v]),k=(0,n.useCallback)(()=>{let e,n=s.useAppStore.getState();if(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,S.clear();let r=n.agentId.trim()||"qihoo",l=n.sessionId.trim();l&&A(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&&(y(n)?v(n):null!==n&&"object"==typeof n&&(r.appendLog("←",n),N(n)))}},[v,N,A]),w=(0,n.useCallback)(()=>{h(),k()},[h,k]),I=(0,n.useCallback)((e,n)=>{let a=s.useAppStore.getState(),l=String(e||"").trim(),u=String(n||a.agentId||"").trim()||"qihoo",m=t.current,f=(0,i.isWebSocketOpen)(m);if(a.resetChat(),a.clearLog(),o.current=0,a.setBridgeReady(!1),a.resetApiErrorState(),a.setStatus("正在切换 session…",""),p.current.clear(),d.current+=1,l&&f&&A(l,++c.current),r.current=l,!f)return void w();try{let e={type:"switchSession",sessionId:l,agent:u};m.send(JSON.stringify(e)),a.appendLog("→",e)}catch(e){a.appendLog("error","switchSession 发送失败: ".concat(String(e))),w()}},[w,A]);(0,n.useEffect)(()=>(k(),()=>{h()}),[f,k,h]);let C=(0,n.useCallback)(e=>{let n=t.current;(0,i.isWebSocketOpen)(n)&&(n.send(JSON.stringify(e)),s.useAppStore.getState().appendLog("→",e))},[]),E=(0,n.useCallback)(e=>{String(null!=e?e:"").trim()&&s.useAppStore.getState().setAssistantGenerating(!0),C({type:"prompt",text:e})},[C]),T=(0,n.useCallback)(()=>{C({type:"abort"})},[C]),R=(0,n.useCallback)(()=>{C({type:"reloadAgentConfig"})},[C]),_=(0,n.useCallback)(()=>{C({type:"reloadAgentPrompt"})},[C]);return{wsRef:t,disconnectIfOpen:h,connectWebSocket:k,reconnect:w,switchSession:I,sendPrompt:E,sendAbort:T,sendReloadAgentConfig:R,sendReloadAgentPrompt:_,sendPermissionResponse:(0,n.useCallback)((e,t)=>{let n=String(e||"").trim();n&&C({type:"permission.response",requestId:n,behavior:t})},[C]),sendInit:(0,n.useCallback)(e=>{C({type:"init",...e})},[C])}}({onSession:e=>{E(),M(e)}}),V=(0,n.useCallback)((e,t)=>k(e,{switchSession:z,reconnect:O,loadSessions:E,loadAgentConfig:T,preferReconnect:c},{displayName:t}),[z,O,E,T,c]),G=(0,n.useMemo)(()=>({reconnect:O,switchSession:z,switchWorkspaceAgent:V,sendPrompt:W,sendAbort:F,sendReloadAgentConfig:B,sendPermissionResponse:U}),[O,z,V,W,F,B,U]),q=p?"settings-main":c?"manage-main":"draft"===v?"is-draft-session":void 0;return(0,t.jsxs)(R.WorkspaceRuntimeContext.Provider,{value:G,children:[(0,t.jsx)(J,{}),(0,t.jsxs)("div",{className:"ws-config-hidden","aria-hidden":!0,children:[(0,t.jsx)("input",{readOnly:!0,hidden:!0,value:m}),(0,t.jsx)("input",{readOnly:!0,hidden:!0,value:f}),(0,t.jsx)("input",{readOnly:!0,hidden:!0,value:h}),(0,t.jsx)("input",{readOnly:!0,hidden:!0,value:g})]}),(0,t.jsx)(H,{mainClassName:q,mainRegion:p?"settings-shell":c?"manage-shell":"chat-shell",sidebar:{onNewSession:()=>{w(""),I("draft"),C(!1),c?O():z("",g)},onSelectSession:e=>{w(e),I("history"),C(!1),c?O():z(e,g)},onSaveAgentConfig:()=>void L({silent:!1}),deleteSessionById:async e=>{let t=await P(e);return t&&(c?O():z("",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:m,activeTabValue:f,tabVariant:g,bottomItems:h,children:v}=e,b=(0,n.usePathname)(),{push:x}=(0,o.useGuardedAppNavigation)(),y=(0,s.useAppStore)(e=>e.agentId),S=e=>{x((0,i.buildAppNavHref)(e,{ensureAgent:!0,agent:y}))},j=!!(g&&(null==m?void 0:m.length)),N=null!=f?f:null==m||null==(d=m[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:()=>S(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:()=>S(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!=m?m:[],value:N,onChange:S,listVariant:g,listClassName:"pill"===g?"mx-auto":void 0,contentClassName:"flex min-h-0 min-w-0 flex-1 flex-col",children:v}):v})]})}}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,93479,e=>{"use strict";e.s(["Input",()=>l]);var t=e.i(18050),a=e.i(75157);function l(e){let{className:l,type:r="text",size:s="default",...i}=e;return(0,t.jsx)("input",{type:r,"data-slot":"input","data-size":s,className:(0,a.cn)("h-8 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-8 data-[size=lg]:h-10 data-[size=sm]:h-7",l),...i})}},53925,e=>{"use strict";e.s(["ResourceImportDialog",()=>u],53925);var t=e.i(18050),a=e.i(71645),l=e.i(72064),r=e.i(75157),s=e.i(19455);function i(e){return e<1024?"".concat(e," B"):e<1048576?"".concat((e/1024).toFixed(1)," KB"):"".concat((e/1048576).toFixed(1)," MB")}function n(e){let{uploadUrl:n,accept:o,disabled:d=!1,multiple:c=!1,maxFileSize:u=0x3200000,autoUpload:m=!1,method:f="POST",transport:p="xhr",fieldName:x="file",headers:b,extraFormData:h,autoRetryTimes:v=0,autoRetryDelayMs:g=800,selectionOnly:y=!1,className:w,emptyTitle:j="点击或拖拽文件到此处",emptyHint:N="支持上传文件",onFilesChange:k,onUploadSuccess:C,onUploadError:R,onValidationError:S}=e,T=a.useId(),E=a.useRef(null),A=a.useRef(new Map),O=a.useRef(new Map),M=a.useRef([]),[P,U]=a.useState(!1),[D,z]=a.useState([]),B=a.useMemo(()=>o?o.split(",").map(e=>e.trim().toLowerCase()).filter(Boolean):[],[o]);a.useEffect(()=>{M.current=D,null==k||k(D)},[D,k]),a.useEffect(()=>()=>{for(let e of A.current.values())e.abort();for(let e of O.current.values())e.abort();for(let e of M.current)e.previewUrl&&URL.revokeObjectURL(e.previewUrl)},[]);let L=a.useCallback((e,t)=>{z(a=>a.map(a=>a.id===e?{...a,...t}:a))},[]),I=a.useCallback(async(e,t)=>{let a=M.current.find(t=>t.id===e);if(!a||d)return;L(e,{status:t>0?"retrying":"uploading",progress:0,error:"",retryCount:t});let l=new FormData;if(h)for(let[e,t]of Object.entries(h))l.append(e,t);l.append(x,a.file);try{let t="";if("fetch"===p){let a=new AbortController;O.current.set(e,a);let r=await fetch(n,{method:f,headers:b,body:l,signal:a.signal}),s=await r.text();try{t=s?JSON.parse(s):""}catch(e){t=s}if(!r.ok)throw Error("上传失败:".concat(r.status," ").concat(r.statusText))}else t=await new Promise((t,a)=>{let r=new XMLHttpRequest;if(A.current.set(e,r),r.open(f,n,!0),b)for(let[e,t]of Object.entries(b))r.setRequestHeader(e,t);r.upload.onprogress=t=>{if(!t.lengthComputable)return;let a=Math.min(100,Math.round(t.loaded/t.total*100));L(e,{progress:a})},r.onerror=()=>a(Error("网络异常,上传失败")),r.onabort=()=>a(Error("__ABORTED__")),r.onload=()=>{r.status>=200&&r.status<300?t(function(e){let t=e.responseText||"";try{return JSON.parse(t)}catch(e){return t}}(r)):a(Error("上传失败:".concat(r.status," ").concat(r.statusText)))},r.send(l)});L(e,{status:"success",progress:100,error:""});let a=M.current.find(t=>t.id===e);a&&(null==C||C(a,t))}catch(r){let a=r instanceof Error?r.message:String(r);if("__ABORTED__"===a)return void L(e,{status:"selected",progress:0,error:""});if(t<v){L(e,{status:"retrying",error:"重试中(".concat(t+1,"/").concat(v,")")}),await new Promise(e=>window.setTimeout(e,g)),await I(e,t+1);return}L(e,{status:"error",error:a});let l=M.current.find(t=>t.id===e);l&&(null==R||R(l,a))}finally{A.current.delete(e),O.current.delete(e)}},[g,v,d,h,x,b,f,R,C,p,L,n]),_=a.useCallback(e=>{I(e,0)},[I]),F=a.useCallback(e=>{var t,a;null==(t=A.current.get(e))||t.abort(),null==(a=O.current.get(e))||a.abort()},[]),V=a.useCallback(()=>{for(let e of M.current)("selected"===e.status||"error"===e.status)&&_(e.id)},[_]),K=a.useCallback(e=>{if(d||!e.length)return;let t=new Set(M.current.map(e=>"".concat(e.file.name,"::").concat(e.file.size))),a=[];for(let l of e){let e="".concat(l.name,"::").concat(l.size);if(!t.has(e)){if(!function(e,t){if(!t.length)return!0;let a=e.name.toLowerCase(),l=(e.type||"").toLowerCase();return t.some(e=>e.startsWith(".")?a.endsWith(e):e.endsWith("/*")?l.startsWith("".concat(e.slice(0,-1))):l===e)}(l,B)){null==S||S("文件类型不支持:".concat(l.name));continue}if(l.size>u){null==S||S("文件过大(最大 ".concat(i(u),"):").concat(l.name));continue}t.add(e),a.push({id:"".concat(Date.now(),"-").concat(Math.random().toString(36).slice(2,8)),file:l,status:"selected",progress:0,error:"",retryCount:0,previewUrl:l.type.startsWith("image/")?URL.createObjectURL(l):""})}}if(!a.length)return;let l=c?[...M.current,...a]:[a[a.length-1]];if(!c)for(let e of M.current)e.previewUrl&&URL.revokeObjectURL(e.previewUrl);if(z(l),m&&!y)for(let e of a)_(e.id)},[B,m,d,u,c,S,y,_]),H=a.useCallback(e=>{let t=e.target.files;t&&(K(Array.from(t)),e.target.value="")},[K]),J=a.useCallback(e=>{var t;e.preventDefault(),e.stopPropagation(),U(!1),d||K(Array.from(null!=(t=e.dataTransfer.files)?t:[]))},[K,d]);return(0,t.jsxs)("div",{className:(0,r.cn)("flex min-h-0 w-full flex-col gap-3",w),children:[(0,t.jsx)("input",{ref:E,id:T,type:"file",hidden:!0,accept:o,multiple:c,disabled:d,onChange:H}),(0,t.jsxs)("label",{htmlFor:T,onDragOver:e=>{e.preventDefault(),d||U(!0)},onDragLeave:e=>{e.preventDefault(),U(!1)},onDrop:J,className:(0,r.cn)("flex min-h-[124px] cursor-pointer flex-col items-center justify-center gap-1 rounded-lg border border-dashed border-[var(--ds-border)] px-4 py-6 text-center transition-colors hover:border-[var(--ds-border-hover)] hover:bg-[var(--ds-main-tint)]",P&&"bg-[var(--ds-accent)]/5 border-[var(--ds-accent)]",d&&"cursor-not-allowed opacity-60"),children:[(0,t.jsx)(l.default,{name:"Upload",size:20,className:"text-[var(--ds-muted)]"}),(0,t.jsx)("div",{className:"text-base text-[var(--ds-text)]",children:j}),(0,t.jsx)("div",{className:"text-sm text-[var(--ds-muted)]",children:N})]}),D.length?(0,t.jsx)("div",{className:"space-y-2",children:D.map(e=>(0,t.jsx)("div",{className:"rounded-md border border-[var(--ds-border)] p-2.5",children:(0,t.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,t.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,t.jsx)("div",{className:"truncate text-base text-[var(--ds-text)]",children:e.file.name}),(0,t.jsx)("div",{className:"text-sm text-[var(--ds-muted)]",children:i(e.file.size)}),e.previewUrl?(0,t.jsx)("img",{src:e.previewUrl,alt:e.file.name,className:"mt-2 h-14 w-14 rounded object-cover"}):null,"uploading"===e.status||"retrying"===e.status?(0,t.jsx)("div",{className:"mt-2 h-1.5 w-full overflow-hidden rounded bg-[var(--ds-main-tint)]",children:(0,t.jsx)("div",{className:"h-full bg-[var(--ds-accent)] transition-all",style:{width:"".concat(e.progress,"%")}})}):null,"error"===e.status?(0,t.jsx)("div",{className:"mt-1 text-sm text-[var(--ds-danger)]",children:e.error||"上传失败"}):null]}),y?null:(0,t.jsxs)("div",{className:"flex items-center gap-1",children:["success"===e.status?(0,t.jsx)(l.default,{name:"CheckCircle2",size:16,className:"text-[var(--ds-accent)]"}):null,"selected"===e.status||"error"===e.status?(0,t.jsxs)(s.Button,{type:"button",size:"sm",variant:"outline",disabled:d,onClick:()=>_(e.id),children:["error"===e.status?(0,t.jsx)(l.default,{name:"RefreshCw",size:14,className:"mr-1"}):null,"error"===e.status?"重试":"上传"]}):null,"uploading"===e.status||"retrying"===e.status?(0,t.jsxs)(s.Button,{type:"button",size:"sm",variant:"outline",onClick:()=>F(e.id),children:[(0,t.jsx)(l.default,{name:"XCircle",size:14,className:"mr-1"}),"取消"]}):null]})]})},e.id))}):null,!y&&!m&&D.some(e=>"selected"===e.status||"error"===e.status)?(0,t.jsx)("div",{className:"flex justify-end",children:(0,t.jsx)(s.Button,{type:"button",size:"sm",onClick:V,disabled:d,children:"上传"})}):null]})}var o=e.i(76639),d=e.i(13354),c=e.i(29250);function u(e){let{open:l,onOpenChange:r,title:i,description:u,uploadUrl:m,resetKey:f}=e,[p,x]=(0,a.useState)(!1),[b,h]=(0,a.useState)(null),v=(0,a.useCallback)(()=>{r(!1),h(null)},[r]),g=(0,a.useCallback)(async()=>{if(!b)return void d.appToast.info("请先选择 zip 文件");let e=new FormData;e.append("file",b),x(!0);try{let t=await (0,c.bridgeFetch)(m,{method:"POST",body:e}),a=Number(t.imported||0),l=Number(t.overwritten||0),r=Array.isArray(t.rejected)?t.rejected.length:0;d.appToast.success("导入完成:导入 ".concat(a,",覆盖 ").concat(l)+(r>0?",拒绝 ".concat(r):"")),v()}catch(e){d.appToast.error("导入失败:".concat(e instanceof Error?e.message:String(e)))}finally{x(!1)}},[v,b,m]);return(0,t.jsx)(o.Dialog,{open:l,onOpenChange:e=>{r(e),e||h(null)},children:(0,t.jsxs)(o.DialogContent,{className:"flex min-h-[320px] max-w-[560px] flex-col",children:[(0,t.jsxs)(o.DialogHeader,{children:[(0,t.jsxs)("div",{children:[(0,t.jsx)(o.DialogTitle,{children:i}),(0,t.jsx)(o.DialogDescription,{children:u})]}),(0,t.jsx)(o.DialogClose,{className:"sidebar-icon-btn","aria-label":"关闭",onClick:v,children:"✕"})]}),(0,t.jsxs)("div",{className:"m-3 flex flex-1 flex-col gap-3",children:[(0,t.jsx)(n,{uploadUrl:m,accept:".zip,application/zip",maxFileSize:0x3200000,multiple:!1,disabled:p,selectionOnly:!0,emptyTitle:"点击或拖拽 zip 文件到此处",emptyHint:"支持 .zip 格式,最大 50MB",onFilesChange:e=>{var t,a;h(null!=(a=null==(t=e[0])?void 0:t.file)?a:null)},onValidationError:e=>{d.appToast.info(e)}},"".concat(l?"open":"closed","-").concat(null!=f?f:m)),(0,t.jsxs)("div",{className:"mt-auto flex justify-end pt-2",children:[(0,t.jsx)(s.Button,{className:"mr-[12px]",type:"button",variant:"plain-outline",size:"lg",onClick:v,children:"取消"}),(0,t.jsx)(s.Button,{type:"button",size:"lg",variant:"default",disabled:p||null==b,onClick:()=>void g(),children:p?"导入中…":"确定"})]})]})]})})}},94197,e=>{"use strict";e.s(["IconTooltipButton",()=>n]);var t=e.i(18050),a=e.i(72064),l=e.i(19455),r=e.i(46798),s=e.i(75157);let i={muted:"text-[var(--ds-muted)] hover:text-[var(--ds-text)]",danger:"text-red-600 hover:text-red-800 [&_svg]:!text-red-600 hover:[&_svg]:!text-red-800"};function n(e){let{icon:n,label:o,ariaLabel:d,tone:c="muted",disabled:u,className:m,iconClassName:f,onClick:p}=e;return(0,t.jsx)(r.TooltipProvider,{delayDuration:150,children:(0,t.jsxs)(r.Tooltip,{children:[(0,t.jsx)(r.TooltipTrigger,{asChild:!0,children:(0,t.jsx)(l.Button,{type:"button",variant:"plain",size:"icon",className:(0,s.cn)("h-4 w-4",i[c],m),disabled:u,"aria-label":null!=d?d:o,onClick:p,children:(0,t.jsx)(a.default,{name:n,size:16,className:f})})}),(0,t.jsx)(r.TooltipContent,{side:"bottom",align:"center",className:"text-base",children:o})]})})}},56708,e=>{"use strict";e.s(["ManageChromeHeaderActions",()=>n,"ManageFeatureChrome",()=>i]);var t=e.i(18050),a=e.i(71645),l=e.i(74080),r=e.i(72064);let s=(0,a.createContext)(null);function i(e){let{title:l,description:i,children:n,showTitle:o=!0,headerIcon:d}=e,[c,u]=(0,a.useState)(null);return(0,t.jsxs)("div",{className:"manage-page-wrap flex min-h-0 flex-1 flex-col",children:[(0,t.jsxs)("div",{className:"manage-page-header flex shrink-0 items-start justify-between gap-[var(--space-4)] pb-[var(--space-4)]",children:[o?(0,t.jsxs)("div",{className:"manage-page-title-block flex items-center",children:[d&&(0,t.jsx)("div",{className:"mr-3 rounded-md bg-[var(--green-light)] px-4 py-3",children:(0,t.jsx)(r.default,{name:d,size:24,className:"text-[var(--green-dark)]",strokeWidth:1.5})}),(0,t.jsxs)("div",{className:"pt-3",children:[(0,t.jsx)("h1",{className:"manage-page-title",children:l}),(0,t.jsx)("p",{className:"manage-page-desc",children:i})]})]}):null,(0,t.jsx)("div",{ref:u,className:"manage-page-header-actions self-start"})]}),(0,t.jsx)("div",{className:"manage-page-body flex min-h-0 min-w-0 flex-1 flex-col",children:(0,t.jsx)(s.Provider,{value:c,children:n})})]})}function n(e){let{children:t}=e,r=(0,a.useContext)(s);return(0,a.useSyncExternalStore)(()=>()=>{},()=>!0,()=>!1)&&r?(0,l.createPortal)(t,r):null}},92715,85413,e=>{"use strict";e.s(["AppTable",()=>m],92715);var t=e.i(18050);e.s(["Empty",()=>r],85413);var a=e.i(75157),l=e.i(72064);function r(e){let{text:r="暂无数据",className:s}=e;return(0,t.jsxs)("div",{className:(0,a.cn)("flex min-h-[180px] w-full flex-col items-center justify-center gap-2 py-4 text-base text-[var(--ds-muted)]",s),role:"status","aria-live":"polite",children:[(0,t.jsx)(l.default,{name:"NoData",size:80,color:"var(--ds-muted)",className:"opacity-90"}),(0,t.jsx)("span",{children:r})]})}var s=e.i(71645);let i=s.forwardRef((e,l)=>{let{className:r,...s}=e;return(0,t.jsx)("div",{className:"relative w-full overflow-auto",children:(0,t.jsx)("table",{ref:l,className:(0,a.cn)("w-full caption-bottom border-collapse text-sm",r),...s})})});i.displayName="Table";let n=s.forwardRef((e,l)=>{let{className:r,...s}=e;return(0,t.jsx)("thead",{ref:l,className:(0,a.cn)("[&_tr]:table [&_tr]:w-full [&_tr]:table-fixed [&_tr]:border-b",r),...s})});n.displayName="TableHeader";let o=s.forwardRef((e,l)=>{let{className:r,viewportFit:i=!0,viewportReserveBottom:n=16,viewportPaginationReserve:o=0,style:d,...c}=e,u=s.useRef(null),m=s.useCallback(e=>{u.current=e,"function"==typeof l?l(e):l&&(l.current=e)},[l]),[f,p]=s.useState(void 0);return s.useLayoutEffect(()=>{var e,t;if(!i)return void p(void 0);let a=()=>{var e,t;let a=u.current;if(!a)return;let l=a.getBoundingClientRect().top;p(Math.max(80,Math.floor((null!=(t=null==(e=window.visualViewport)?void 0:e.height)?t:window.innerHeight)-l-(n+o))))};a();let l=new ResizeObserver(()=>{a()});try{l.observe(document.body)}catch(e){}return window.addEventListener("resize",a),null==(e=window.visualViewport)||e.addEventListener("resize",a),null==(t=window.visualViewport)||t.addEventListener("scroll",a),window.addEventListener("scroll",a,!0),()=>{var e,t;l.disconnect(),window.removeEventListener("resize",a),null==(e=window.visualViewport)||e.removeEventListener("resize",a),null==(t=window.visualViewport)||t.removeEventListener("scroll",a),window.removeEventListener("scroll",a,!0)}},[i,n,o]),(0,t.jsx)("tbody",{ref:m,className:(0,a.cn)("block overflow-y-auto [&_tr:last-child]:border-b-0 [&_tr:last-child_td]:border-b-0 [&_tr]:table [&_tr]:w-full [&_tr]:table-fixed",r),style:i&&void 0!==f?{...d,maxHeight:f}:d,...c})});o.displayName="TableBody";let d=s.forwardRef((e,l)=>{let{className:r,hoverable:s=!0,...i}=e;return(0,t.jsx)("tr",{ref:l,className:(0,a.cn)("border-b transition-colors [&>td]:transition-colors data-[state=selected]:[&>td]:!bg-[var(--ds-item-active)]",s&&"group/table-row",r),...i})});d.displayName="TableRow";let c=s.forwardRef((e,l)=>{let{className:r,...s}=e;return(0,t.jsx)("th",{ref:l,className:(0,a.cn)("h-10 border-b border-[var(--border-subtle)] bg-[var(--surface-2)] px-3 text-left align-middle text-[14px] font-medium !text-[var(--ds-text)] text-muted-foreground",r),...s})});c.displayName="TableHead";let u=s.forwardRef((e,l)=>{let{className:r,...s}=e;return(0,t.jsx)("td",{ref:l,className:(0,a.cn)("border-x-0 border-b border-t-0 border-solid border-[var(--border-subtle)] p-3 align-middle text-base transition-colors group-has-[td:hover]/table-row:!bg-[var(--ds-item-hover)]",r),...s})});function m(e){let{rows:l,columns:s,getRowKey:m,className:f,rowClassName:p,headerRowClassName:x,emptyText:b,emptyNode:h,bodyProps:v}=e;return(0,t.jsx)("div",{className:(0,a.cn)("overflow-hidden border border-[var(--ds-border)]",f),children:(0,t.jsxs)(i,{children:[(0,t.jsx)(n,{children:(0,t.jsx)(d,{className:(0,a.cn)("bg-[var(--ds-main-tint)] hover:bg-[var(--ds-main-tint)]",x),children:s.map(e=>(0,t.jsx)(c,{className:e.headerClassName,children:e.title},e.key))})}),(0,t.jsx)(o,{...v,children:l.length?l.map(e=>(0,t.jsx)(d,{className:"function"==typeof p?p(e):p,children:s.map(a=>(0,t.jsx)(u,{className:a.cellClassName,children:a.render(e)},a.key))},m(e))):(0,t.jsx)(d,{hoverable:!1,children:(0,t.jsx)(u,{colSpan:s.length,className:"py-6",children:null!=h?h:(0,t.jsx)(r,{text:b})})})})]})})}u.displayName="TableCell"},62427,e=>{"use strict";e.s(["deleteRuntimeMcp",()=>c,"deleteRuntimeSkill",()=>h,"deleteRuntimeTool",()=>d,"exportRuntimeMcpUrl",()=>m,"exportRuntimeSkillUrl",()=>v,"exportRuntimeToolUrl",()=>u,"importRuntimeMcp",()=>p,"importRuntimeTool",()=>f,"installCloudSkill",()=>y,"listAgentTeams",()=>i,"listCloudSkillCatalog",()=>g,"listMcpServers",()=>l,"listRuntimeMcpPackages",()=>o,"listRuntimeTools",()=>n,"listSkills",()=>s,"listTools",()=>r,"loadRemoteMcpJson",()=>x,"saveRemoteMcpJson",()=>b]);var t=e.i(29250),a=e.i(36845);async function l(e,l,r){let s=await (0,t.get)((0,a.buildMcpServersListUrl)(e,l,r));return{servers:Array.isArray(s.servers)?s.servers:[]}}async function r(e,l,r){let s=await (0,t.get)((0,a.buildToolsListUrl)(e,l,r));return{tools:Array.isArray(s.tools)?s.tools:[]}}async function s(e,l,r){let s=await (0,t.get)((0,a.getSkillsList)(e,l,r));return{skills:Array.isArray(s.skills)?s.skills:[]}}async function i(e,l,r){let s=await (0,t.get)((0,a.buildAgentTeamsListUrl)(e,l,r));return{teamAgentTypes:Array.isArray(s.teamAgentTypes)?s.teamAgentTypes:[],agentTeams:Array.isArray(s.agentTeams)?s.agentTeams:[]}}async function n(e,l,r){let s=await (0,t.get)((0,a.buildToolsRuntimeFilesUrl)(e,l,r));return{runtimeToolsDir:"string"==typeof s.runtimeToolsDir?s.runtimeToolsDir:"",items:Array.isArray(s.items)?s.items.filter(e=>!!(e&&e.id)):[]}}async function o(e,l,r){let s=await (0,t.get)((0,a.buildMcpRuntimeFilesUrl)(e,l,r));return{mcpRuntimeDir:"string"==typeof s.mcpRuntimeDir?s.mcpRuntimeDir:"",items:Array.isArray(s.items)?s.items.filter(e=>!!(e&&e.id)):[]}}async function d(e,l,r,s){return(0,t.del)((0,a.buildToolsRuntimeDeleteUrl)(e,l,r,s))}async function c(e,l,r,s){return(0,t.del)((0,a.buildMcpRuntimeDeleteUrl)(e,l,r,s))}function u(e,t,l,r){return(0,a.buildToolsRuntimeExportUrl)(e,t,l,r)}function m(e,t,l,r){return(0,a.buildMcpRuntimeExportUrl)(e,t,l,r)}async function f(e,l,r,s){let i=new FormData;return i.append("file",s),(0,t.post)((0,a.buildToolsRuntimeImportUrl)(e,l,r),i,{type:"file"})}async function p(e,l,r,s){let i=new FormData;return i.append("file",s),(0,t.post)((0,a.buildMcpRuntimeImportUrl)(e,l,r),i,{type:"file"})}async function x(e,l,r){return(0,t.get)((0,a.buildRemoteMcpJsonUrl)(e,l,r))}async function b(e,l,r,s){await (0,t.post)((0,a.buildRemoteMcpJsonUrl)(e,l,r),{content:s})}async function h(e,l,r,s){return(0,t.del)((0,a.buildSkillsRuntimeDeleteUrl)(e,l,r,s))}function v(e,t,l,r){return(0,a.buildSkillsRuntimeExportUrl)(e,t,l,r)}async function g(e,l,r,s,i,n){let o=await (0,t.get)((0,a.buildCloudSkillCatalogUrl)(e,l,r,s,i,n));return{items:Array.isArray(o.items)?o.items:[],totalPages:Number(o.totalPages||0)}}async function y(e,l,r,s){await (0,t.post)((0,a.buildCloudSkillInstallUrl)(e,l,r),{id:s})}},94055,e=>{"use strict";e.s(["AccentSwitch",()=>D],94055);var t=e.i(18050);e.s(["Root",()=>A,"Thumb",()=>O],39606),e.s([],37751),e.i(37751),e.i(47167);var a=e.i(71645),l=e.i(94349),r=e.i(76477),s=e.i(26292),i=e.i(977),n=e.i(62372),o=e.i(17514),d=e.i(27601),c=e.i(19805),u=e.i(89879),m=e.i(91730),f=e.i(67805);let p=a.createContext(void 0),x=function(e){return e.disabled="data-disabled",e.valid="data-valid",e.invalid="data-invalid",e.touched="data-touched",e.dirty="data-dirty",e.filled="data-filled",e.focused="data-focused",e}({}),b={valid:null,touched:!1,dirty:!1,filled:!1,focused:!1},h={disabled:!1,...b},v=function(e){return e.checked="data-checked",e.unchecked="data-unchecked",e.disabled="data-disabled",e.readonly="data-readonly",e.required="data-required",e.valid="data-valid",e.invalid="data-invalid",e.touched="data-touched",e.dirty="data-dirty",e.filled="data-filled",e.focused="data-focused",e}({}),g={valid:e=>null===e?null:e?{[x.valid]:""}:{[x.invalid]:""},checked:e=>e?{[v.checked]:""}:{[v.unchecked]:""}},y=a.createContext({invalid:void 0,name:void 0,validityData:{state:{badInput:!1,customError:!1,patternMismatch:!1,rangeOverflow:!1,rangeUnderflow:!1,stepMismatch:!1,tooLong:!1,tooShort:!1,typeMismatch:!1,valid:null,valueMissing:!1},errors:[],error:"",value:"",initialValue:null},setValidityData:o.NOOP,disabled:void 0,touched:b.touched,setTouched:o.NOOP,dirty:b.dirty,setDirty:o.NOOP,filled:b.filled,setFilled:o.NOOP,focused:b.focused,setFocused:o.NOOP,validate:()=>null,validationMode:"onSubmit",validationDebounceTime:0,shouldValidateOnChange:()=>!1,state:h,markedDirtyRef:{current:!1},registerFieldControl:o.NOOP,validation:{getValidationProps:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.EMPTY_OBJECT;return e},getInputValidationProps:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:o.EMPTY_OBJECT;return e},inputRef:{current:null},commit:async()=>{}}});function w(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0],t=a.useContext(y);if(t.setValidityData===o.NOOP&&!e)throw Error((0,f.default)(28));return t}let j=a.createContext({formRef:{current:{fields:new Map}},errors:{},clearErrors:o.NOOP,validationMode:"onSubmit",submitAttemptedRef:{current:!1}}),N=a.createContext({controlId:void 0,registerControlId:o.NOOP,labelId:void 0,setLabelId:o.NOOP,messageIds:[],setMessageIds:o.NOOP,getDescriptionProps:e=>e});function k(){return a.useContext(N)}var C=e.i(30628),R=e.i(29315),S=e.i(5963),T=e.i(3404),E=e.i(19904);let A=a.forwardRef(function(e,f){let{checked:x,className:b,defaultChecked:h,"aria-labelledby":v,form:y,id:N,inputRef:A,name:O,nativeButton:M=!1,onCheckedChange:P,readOnly:U=!1,required:D=!1,disabled:z=!1,render:B,uncheckedValue:L,value:I,style:_,...F}=e,{clearErrors:V}=a.useContext(j),{state:K,setTouched:H,setDirty:J,validityData:W,setFilled:q,setFocused:Y,shouldValidateOnChange:X,validationMode:G,disabled:Q,name:Z,validation:$}=w(),{labelId:ee}=k(),et=Q||z,ea=null!=Z?Z:O,el=(0,r.useStableCallback)(P),er=a.useRef(null),es=(0,s.useMergedRefs)(er,A,$.inputRef),ei=a.useRef(null),en=(0,u.useBaseUiId)(),eo=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{id:t,implicit:l=!1,controlRef:s}=e,{controlId:n,registerControlId:d}=k(),c=(0,u.useBaseUiId)(t),m=l?n:void 0,f=(0,C.useRefWithInit)(()=>Symbol("labelable-control")),p=a.useRef(!1),x=a.useRef(null!=t),b=(0,r.useStableCallback)(()=>{p.current&&d!==o.NOOP&&(p.current=!1,d(f.current,void 0))});return(0,i.useIsoLayoutEffect)(()=>{let e;if(d!==o.NOOP){if(l){let a=null==s?void 0:s.current;e=(0,R.isElement)(a)&&null!=a.closest("label")?null!=t?t:null:null!=m?m:c}else if(null!=t)x.current=!0,e=t;else{if(!x.current)return void b();e=c}if(void 0===e)return void b();p.current=!0,d(f.current,e)}},[t,s,m,d,l,c,f,b]),a.useEffect(()=>b,[b]),null!=n?n:c}({id:N,implicit:!1,controlRef:ei}),ed=M?void 0:eo,[ec,eu]=(0,l.useControlled)({controlled:x,default:!!h,name:"Switch",state:"checked"});!function(e,t){let{enabled:l=!0,getValue:r,id:s,value:n}=t,{registerFieldControl:o}=w(),d=a.useRef(null);d.current||(d.current=Symbol()),(0,i.useIsoLayoutEffect)(()=>{let t=d.current;if(t&&l)return o(t,{controlRef:e,getValue:r,id:s,value:n}),()=>{o(t,void 0)}},[e,l,r,s,o,n])}(ei,{id:en,value:ec}),(0,i.useIsoLayoutEffect)(()=>{er.current&&q(er.current.checked)},[er,q]),(0,E.useValueChanged)(ec,()=>{V(ea),J(ec!==W.initialValue),q(ec),X()?$.commit(ec):$.commit(ec,!0)});let{getButtonProps:em,buttonRef:ef}=(0,m.useButton)({disabled:et,native:M}),ep=function(e,t,l){var r;let s=!(arguments.length>3)||void 0===arguments[3]||arguments[3],n=arguments.length>4?arguments[4]:void 0,[o,d]=a.useState(),c=(0,u.useBaseUiId)(n?"".concat(n,"-label"):void 0),m=null!=(r=null!=e?e:t)?r:o;return(0,i.useIsoLayoutEffect)(()=>{let a=e||t||!s?void 0:function(e,t){let a=function(e){if(!e)return;let t=e.parentElement;if(t&&"LABEL"===t.tagName)return t;let a=e.id;if(a){let t=e.nextElementSibling;if(t&&t.htmlFor===a)return t}let l=e.labels;return l&&l[0]}(e);if(a)return!a.id&&t&&(a.id=t),a.id||void 0}(l.current,c);o!==a&&d(a)}),m}(v,ee,er,!M,ed),ex=a.useMemo(()=>(0,c.mergeProps)({checked:ec,disabled:et,form:y,id:ed,name:ea,required:D,style:ea?n.visuallyHiddenInput:n.visuallyHidden,tabIndex:-1,type:"checkbox","aria-hidden":!0,ref:es,onChange(e){if(e.nativeEvent.defaultPrevented)return;if(U)return void e.preventDefault();let t=e.currentTarget.checked,a=(0,S.createChangeEventDetails)(T.REASONS.none,e.nativeEvent);null==el||el(t,a),a.isCanceled||eu(t)},onFocus(){var e;null==(e=ei.current)||e.focus()}},$.getInputValidationProps,void 0!==I?{value:I}:o.EMPTY_OBJECT),[ec,et,y,es,ed,ea,el,U,D,eu,$,I]),eb=a.useMemo(()=>({...K,checked:ec,disabled:et,readOnly:U,required:D}),[K,ec,et,U,D]),eh=(0,d.useRenderElement)("span",e,{state:eb,ref:[f,ei,ef],props:[{id:M?eo:en,role:"switch","aria-checked":ec,"aria-readonly":U||void 0,"aria-required":D||void 0,"aria-labelledby":ep,onFocus(){et||Y(!0)},onBlur(){let e=er.current;e&&!et&&(H(!0),Y(!1),"onBlur"===G&&$.commit(e.checked))},onClick(e){var t;U||et||(e.preventDefault(),null==(t=er.current)||t.dispatchEvent(new PointerEvent("click",{bubbles:!0,shiftKey:e.shiftKey,ctrlKey:e.ctrlKey,altKey:e.altKey,metaKey:e.metaKey})))}},$.getValidationProps,F,em],stateAttributesMapping:g});return(0,t.jsxs)(p.Provider,{value:eb,children:[eh,!ec&&ea&&void 0!==L&&(0,t.jsx)("input",{type:"hidden",form:y,name:ea,value:L}),(0,t.jsx)("input",{...ex,suppressHydrationWarning:!0})]})}),O=a.forwardRef(function(e,t){let{render:l,className:r,style:s,...i}=e,{state:n}=w(),o=function(){let e=a.useContext(p);if(void 0===e)throw Error((0,f.default)(63));return e}(),c={...n,...o};return(0,d.useRenderElement)("span",e,{state:c,ref:t,stateAttributesMapping:g,props:i})});var M=e.i(39606),M=M,P=e.i(75157);function U(e){let{className:a,thumbClassName:l,...r}=e;return(0,t.jsx)(M.Root,{"data-slot":"switch",className:(0,P.cn)("shadow-xs focus-visible:ring-ring/50 dark:data-[unchecked]:bg-input/80 peer inline-flex h-5 w-9 shrink-0 cursor-pointer items-center rounded-full border border-transparent bg-input outline-none transition-colors focus-visible:border-ring focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[checked]:bg-primary",a),...r,children:(0,t.jsx)(M.Thumb,{className:(0,P.cn)("pointer-events-none block size-4 rounded-full bg-background ring-0 transition-transform will-change-transform data-[checked]:translate-x-4 data-[unchecked]:translate-x-0.5 data-[checked]:bg-primary-foreground",l)})})}function D(e){let{className:a,thumbClassName:l,...r}=e;return(0,t.jsx)(U,{className:(0,P.cn)("focus-visible:border-[var(--ds-accent)]/50 focus-visible:ring-[var(--ds-accent)]/35 data-[checked]:border-[var(--ds-accent)] data-[checked]:bg-[var(--ds-accent)]",a),thumbClassName:(0,P.cn)("data-[checked]:bg-white",l),...r})}},47079,e=>{"use strict";e.s(["SkillsManageView",()=>S],47079);var t=e.i(18050),a=e.i(71645),l=e.i(65934),r=e.i(87243),s=e.i(13354),i=e.i(50711),n=e.i(51419),o=e.i(92715),d=e.i(19455),c=e.i(94055),u=e.i(94197),m=e.i(72064),f=e.i(93479),p=e.i(75157);function x(e){let{className:a,...l}=e;return(0,t.jsx)("nav",{role:"navigation","aria-label":"pagination","data-slot":"pagination",className:(0,p.cn)("flex w-full justify-end",a),...l})}let b=a.forwardRef((e,a)=>{let{className:l,...r}=e;return(0,t.jsx)("ul",{ref:a,"data-slot":"pagination-content",className:(0,p.cn)("flex flex-row flex-wrap items-center justify-end gap-1",l),...r})});b.displayName="PaginationContent";let h=a.forwardRef((e,a)=>{let{className:l,...r}=e;return(0,t.jsx)("li",{ref:a,"data-slot":"pagination-item",className:(0,p.cn)("",l),...r})});h.displayName="PaginationItem",a.forwardRef((e,a)=>{let{className:l,isActive:r,size:s="icon",...i}=e;return(0,t.jsx)("a",{ref:a,"aria-current":r?"page":void 0,"data-slot":"pagination-link","data-active":r?"true":void 0,className:(0,p.cn)((0,d.buttonVariants)({variant:r?"outline":"ghost",size:s}),l),...i})}).displayName="PaginationLink";var v=e.i(62427);function g(e){let{active:l,wsUrl:r,apiBase:i,agent:n,onAfterInstall:c,className:u}=e,[p,g]=(0,a.useState)(""),[y,w]=(0,a.useState)(1),[j,N]=(0,a.useState)(0),[k,C]=(0,a.useState)([]),[R,S]=(0,a.useState)(!1),[T,E]=(0,a.useState)(""),[A,O]=(0,a.useState)({}),M=(0,a.useRef)(0),P=(0,a.useCallback)(async()=>{let e=++M.current;S(!0),E("");try{let t=await (0,v.listCloudSkillCatalog)(r,i,n,p,y,10);if(e!==M.current)return;let a=Array.isArray(t.items)?t.items:[],l=[];for(let e of a)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});C(l),N(t.totalPages)}catch(t){if(e!==M.current)return;C([]),N(0),E(t instanceof Error?t.message:String(t))}finally{e===M.current&&S(!1)}},[r,i,n,p,y]);(0,a.useEffect)(()=>{if(!l){g(""),w(1),N(0),C([]),E(""),O({}),M.current+=1;return}P()},[l,P]);let U=(0,a.useMemo)(()=>{if(R)return"加载中…";if(T)return"加载失败:".concat(T);let e=k.reduce((e,t)=>e+ +!!t.installed,0);return"已安装 ".concat(e," 项")},[R,T,k]),D=(0,a.useCallback)(async(e,t)=>{O(t=>({...t,[e]:!0}));try{await (0,v.installCloudSkill)(r,i,n,e),s.appToast.success("云端技能已安装:".concat(t)),await P(),null==c||c()}catch(e){s.appToast.error("安装失败:".concat(e instanceof Error?e.message:String(e)))}finally{O(t=>{let a={...t};return delete a[e],a})}},[r,i,n,P,c]),z=(0,a.useCallback)(e=>{w(1),g(e)},[]);if(!l)return null;let B=j>0?"第 ".concat(y,"/").concat(j," 页"):"第 0/0 页",L=R||y<=1,I=R||j<=0||y>=j,_=[{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,t.jsxs)(t.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 a=!!A[e.id],l=!!e.installed;return!a&&l?"-":(0,t.jsx)(d.Button,{type:"button",size:"sm",variant:"outline",disabled:a||l,onClick:()=>void D(e.id,e.title||e.skillName||e.id),children:a?"安装中…":l?"已安装":"安装"})}}];return(0,t.jsx)("div",{className:u,children:(0,t.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,t.jsx)(f.Input,{type:"search",value:p,onChange:e=>z(e.target.value),placeholder:"搜索云端技能…",className:"h-10 border-[var(--ds-border)] bg-[var(--ds-bg)] text-base"}),(0,t.jsx)("div",{className:"text-sm text-[var(--ds-muted)]",children:U}),(0,t.jsx)(o.AppTable,{rows:k,columns:_,getRowKey:e=>e.id,className:"min-h-0 flex-1 rounded-md",bodyProps:{viewportPaginationReserve:64},emptyNode:R?(0,t.jsx)("p",{className:"text-center text-base",children:"加载中…"}):void 0}),(0,t.jsx)(x,{className:"mx-0 w-full",children:(0,t.jsxs)(b,{className:"w-full flex-wrap justify-end gap-2",children:[(0,t.jsx)(h,{children:(0,t.jsxs)(d.Button,{type:"button",variant:"outline",size:"sm",disabled:L,className:"gap-1",onClick:()=>w(e=>Math.max(1,e-1)),"aria-label":"上一页",children:[(0,t.jsx)(m.default,{name:"ChevronLeft",size:16,className:"shrink-0"}),"上一页"]})}),(0,t.jsx)(h,{children:(0,t.jsx)("span",{className:"flex h-9 min-w-[6.5rem] items-center justify-center text-sm text-[var(--ds-muted)]",children:B})}),(0,t.jsx)(h,{children:(0,t.jsxs)(d.Button,{type:"button",variant:"outline",size:"sm",disabled:I,className:"gap-1",onClick:()=>w(e=>e+1),"aria-label":"下一页",children:["下一页",(0,t.jsx)(m.default,{name:"ChevronRight",size:16,className:"shrink-0",strokeWidth:1})]})})]})})]})})}var y=e.i(36845),w=e.i(53925);function j(e){let{open:a,onOpenChange:l,wsUrl:r,apiBase:s,agent:i}=e;return(0,t.jsx)(w.ResourceImportDialog,{open:a,onOpenChange:l,title:"导入 Skill zip",description:"选择一个 zip 文件并导入到 skills-runtime。",uploadUrl:(0,y.buildSkillsRuntimeImportUrl)(r,s,i),resetKey:i})}function N(e){let{items:a,saveBusy:l,onToggleEnabled:r,onExport:s,onRemove:i,className:n}=e,d=[{key:"name",title:"名称",headerClassName:"text-base",cellClassName:"text-base",render:e=>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,t.jsx)("span",{className:"inline-flex items-center justify-end gap-2",children:(0,t.jsx)(c.AccentSwitch,{checked:e.enabled,disabled:l,onCheckedChange:t=>r(e.name,t),"aria-label":"".concat(e.enabled?"禁用":"启用"," ").concat(e.name)})})},{key:"actions",title:"操作",headerClassName:"w-[128px] text-base",cellClassName:"w-[128px]",render:e=>(0,t.jsxs)("div",{className:"inline-flex items-center justify-end gap-1",children:[(0,t.jsx)(u.IconTooltipButton,{icon:"Download",label:"导出",ariaLabel:"导出 ".concat(e.name),disabled:l,onClick:()=>s(e.name)}),(0,t.jsx)(u.IconTooltipButton,{icon:"Trash2",label:"删除",tone:"danger",ariaLabel:"删除 ".concat(e.name),disabled:l,onClick:()=>{i(e.name)}})]})}];return(0,t.jsx)(o.AppTable,{rows:a,columns:d,getRowKey:e=>"skills:".concat(e.name),className:n})}var k=e.i(68499),C=e.i(56708);let R=[{value:"basic",label:"基础Skill"},{value:"installed",label:"已安装Skill"},{value:"cloud_catalog",label:"Skill商店"}];function S(){let e=(0,l.useAppStore)(e=>e.wsUrl),f=(0,l.useAppStore)(e=>e.apiBase),p=(0,l.useAppStore)(e=>e.agentConfig),x=(0,l.useAppStore)(e=>e.setAgentConfig),{currentAgent:b,loadAgentConfig:h}=(0,r.useSession)(),y=(0,i.usePersistAgentConfigField)("skills"),w=p.skills,S=(0,a.useMemo)(()=>[...w].sort().join("\0"),[w]),[T,E]=(0,a.useState)([]),[A,O]=(0,a.useState)([]),[M,P]=(0,a.useState)(!1),[U,D]=(0,a.useState)(!1),[z,B]=(0,a.useState)("basic"),[L,I]=(0,a.useState)(!1);(0,a.useEffect)(()=>{h()},[h]);let _=(0,a.useCallback)(async(e,t)=>{D(!0);try{await y(e,{silent:t})}finally{D(!1)}},[y]),F=(0,a.useCallback)(async()=>{E([]),P(!0);try{var t;let a=null!=(t=(await (0,v.listSkills)(e,f,b())).skills)?t:[];E(a.map(e=>{var t,a;return{...e,id:e.name,label:"".concat(e.name),description:null!=(a=null!=(t=e.description)?t:e.whenToUse)?a:"",isRuntime:!!e.isRuntime}}))}catch(e){E([]),s.appToast.error("加载失败:".concat(e instanceof Error?e.message:String(e)))}finally{P(!1)}},[e,f,b]),V=(0,a.useCallback)(async t=>{let a=T.find(e=>e.id===t);if(!(null==a?void 0:a.isRuntime))return void s.appToast.info("仅 skills-runtime 中的技能可删除");if(await (0,k.confirmAlertDialog)({title:"确认删除 Skill 包?",description:"Skill:".concat(t),confirmText:"删除",cancelText:"取消"}))try{await (0,v.deleteRuntimeSkill)(e,f,b(),t);let a=w.filter(e=>e!==t);O(e=>e.filter(e=>e!==t)),x({...p,skills:a}),await _(a,!0),await F()}catch(e){s.appToast.error("删除失败:".concat(e instanceof Error?e.message:String(e)))}},[T,e,f,b,w,p,x,_,F]);(0,a.useEffect)(()=>{("basic"===z||"installed"===z)&&F()},[z,F]);let K=(0,a.useCallback)(()=>{F()},[F]);(0,a.useEffect)(()=>{"basic"===z&&O([...w])},[z,w,S]);let H=(0,a.useCallback)(e=>{let t=[...new Set(e)].sort();x({...p,skills:t}),_(t,!0)},[p,x,_]),J=(0,a.useMemo)(()=>T.filter(e=>!e.isRuntime),[T]),W=(0,a.useMemo)(()=>T.filter(e=>!0===e.isRuntime).slice().sort((e,t)=>e.label.localeCompare(t.label)).map(e=>({name:e.id,installed:!0,description:e.description||"",enabled:w.includes(e.id)})),[T,w]),q=(0,a.useCallback)((e,t)=>{let a=t?[...new Set([...w,e])].sort():w.filter(t=>t!==e);x({...p,skills:a}),O(a),_(a,!0)},[w,p,x,_]),Y=(0,a.useCallback)(t=>{window.open((0,v.exportRuntimeSkillUrl)(e,f,b(),t),"_blank","noopener")},[e,f,b]),X=[{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-[72px] text-right text-base text-[var(--ds-muted)]",cellClassName:"w-[72px] py-2 text-right align-middle",render:e=>(0,t.jsx)("span",{className:"inline-flex justify-end",children:(0,t.jsx)(c.AccentSwitch,{checked:A.includes(e.id),disabled:U,onCheckedChange:t=>{let a=t?[...new Set([...A,e.id])]:A.filter(t=>t!==e.id);O(a),H(a)},"aria-label":"选择 ".concat(e.label)})})},{key:"actions",title:"操作",headerClassName:"w-[72px] text-right text-base text-[var(--ds-muted)]",cellClassName:"w-[72px] py-2 text-right align-middle",render:e=>(0,t.jsx)("span",{className:"inline-flex justify-end",children:(0,t.jsx)(u.IconTooltipButton,{icon:"Trash2",label:"删除",tone:"danger",disabled:U,ariaLabel:"删除 ".concat(e.label),onClick:()=>{V(e.id)}})})}];return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(C.ManageChromeHeaderActions,{children:(0,t.jsxs)(d.Button,{id:"btnAgentImportSkill",type:"button",variant:"plain-outline",size:"lg",className:"inline-flex items-center justify-center gap-1.5",onClick:()=>I(!0),children:[(0,t.jsx)(m.default,{name:"Import",size:16,className:"align-middle"}),"导入Skill"]})}),(0,t.jsxs)(n.AppTabs,{tabs:R,value:z,listVariant:"line",onChange:e=>B(e),children:[(0,t.jsx)(n.AppTabsPanel,{value:"basic",children:(0,t.jsx)("div",{className:"flex min-h-0 flex-1 flex-col gap-3",children:(0,t.jsx)("div",{className:"min-h-0",children:M?(0,t.jsx)("p",{className:"px-3 py-6 text-center text-base text-[var(--ds-muted)]",children:"加载中…"}):(0,t.jsx)(o.AppTable,{rows:J,columns:X,getRowKey:e=>e.id})})})}),(0,t.jsx)(n.AppTabsPanel,{value:"installed",children:(0,t.jsx)(N,{items:W,saveBusy:U,onToggleEnabled:q,onExport:Y,onRemove:V})}),(0,t.jsx)(n.AppTabsPanel,{value:"cloud_catalog",className:"flex min-h-0 flex-1 flex-col",children:(0,t.jsx)(g,{active:"cloud_catalog"===z,wsUrl:e,apiBase:f,agent:b(),onAfterInstall:K,className:"min-h-0 flex-1"})})]}),(0,t.jsx)(j,{open:L,onOpenChange:e=>{I(e),e||F()},wsUrl:e,apiBase:f,agent:b()})]})}}]);
@@ -0,0 +1 @@
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,92715,85413,e=>{"use strict";e.s(["AppTable",()=>b],92715);var r=e.i(18050);e.s(["Empty",()=>s],85413);var t=e.i(75157),a=e.i(72064);function s(e){let{text:s="暂无数据",className:l}=e;return(0,r.jsxs)("div",{className:(0,t.cn)("flex min-h-[180px] w-full flex-col items-center justify-center gap-2 py-4 text-base text-[var(--ds-muted)]",l),role:"status","aria-live":"polite",children:[(0,r.jsx)(a.default,{name:"NoData",size:80,color:"var(--ds-muted)",className:"opacity-90"}),(0,r.jsx)("span",{children:s})]})}var l=e.i(71645);let o=l.forwardRef((e,a)=>{let{className:s,...l}=e;return(0,r.jsx)("div",{className:"relative w-full overflow-auto",children:(0,r.jsx)("table",{ref:a,className:(0,t.cn)("w-full caption-bottom border-collapse text-sm",s),...l})})});o.displayName="Table";let n=l.forwardRef((e,a)=>{let{className:s,...l}=e;return(0,r.jsx)("thead",{ref:a,className:(0,t.cn)("[&_tr]:table [&_tr]:w-full [&_tr]:table-fixed [&_tr]:border-b",s),...l})});n.displayName="TableHeader";let i=l.forwardRef((e,a)=>{let{className:s,viewportFit:o=!0,viewportReserveBottom:n=16,viewportPaginationReserve:i=0,style:d,...c}=e,u=l.useRef(null),b=l.useCallback(e=>{u.current=e,"function"==typeof a?a(e):a&&(a.current=e)},[a]),[f,m]=l.useState(void 0);return l.useLayoutEffect(()=>{var e,r;if(!o)return void m(void 0);let t=()=>{var e,r;let t=u.current;if(!t)return;let a=t.getBoundingClientRect().top;m(Math.max(80,Math.floor((null!=(r=null==(e=window.visualViewport)?void 0:e.height)?r:window.innerHeight)-a-(n+i))))};t();let a=new ResizeObserver(()=>{t()});try{a.observe(document.body)}catch(e){}return window.addEventListener("resize",t),null==(e=window.visualViewport)||e.addEventListener("resize",t),null==(r=window.visualViewport)||r.addEventListener("scroll",t),window.addEventListener("scroll",t,!0),()=>{var e,r;a.disconnect(),window.removeEventListener("resize",t),null==(e=window.visualViewport)||e.removeEventListener("resize",t),null==(r=window.visualViewport)||r.removeEventListener("scroll",t),window.removeEventListener("scroll",t,!0)}},[o,n,i]),(0,r.jsx)("tbody",{ref:b,className:(0,t.cn)("block overflow-y-auto [&_tr:last-child]:border-b-0 [&_tr:last-child_td]:border-b-0 [&_tr]:table [&_tr]:w-full [&_tr]:table-fixed",s),style:o&&void 0!==f?{...d,maxHeight:f}:d,...c})});i.displayName="TableBody";let d=l.forwardRef((e,a)=>{let{className:s,hoverable:l=!0,...o}=e;return(0,r.jsx)("tr",{ref:a,className:(0,t.cn)("border-b transition-colors [&>td]:transition-colors data-[state=selected]:[&>td]:!bg-[var(--ds-item-active)]",l&&"group/table-row",s),...o})});d.displayName="TableRow";let c=l.forwardRef((e,a)=>{let{className:s,...l}=e;return(0,r.jsx)("th",{ref:a,className:(0,t.cn)("h-10 border-b border-[var(--border-subtle)] bg-[var(--surface-2)] px-3 text-left align-middle text-[14px] font-medium !text-[var(--ds-text)] text-muted-foreground",s),...l})});c.displayName="TableHead";let u=l.forwardRef((e,a)=>{let{className:s,...l}=e;return(0,r.jsx)("td",{ref:a,className:(0,t.cn)("border-x-0 border-b border-t-0 border-solid border-[var(--border-subtle)] p-3 align-middle text-base transition-colors group-has-[td:hover]/table-row:!bg-[var(--ds-item-hover)]",s),...l})});function b(e){let{rows:a,columns:l,getRowKey:b,className:f,rowClassName:m,headerRowClassName:v,emptyText:h,emptyNode:x,bodyProps:p}=e;return(0,r.jsx)("div",{className:(0,t.cn)("overflow-hidden border border-[var(--ds-border)]",f),children:(0,r.jsxs)(o,{children:[(0,r.jsx)(n,{children:(0,r.jsx)(d,{className:(0,t.cn)("bg-[var(--ds-main-tint)] hover:bg-[var(--ds-main-tint)]",v),children:l.map(e=>(0,r.jsx)(c,{className:e.headerClassName,children:e.title},e.key))})}),(0,r.jsx)(i,{...p,children:a.length?a.map(e=>(0,r.jsx)(d,{className:"function"==typeof m?m(e):m,children:l.map(t=>(0,r.jsx)(u,{className:t.cellClassName,children:t.render(e)},t.key))},b(e))):(0,r.jsx)(d,{hoverable:!1,children:(0,r.jsx)(u,{colSpan:l.length,className:"py-6",children:null!=x?x:(0,r.jsx)(s,{text:h})})})})]})})}u.displayName="TableCell"},94197,e=>{"use strict";e.s(["IconTooltipButton",()=>n]);var r=e.i(18050),t=e.i(72064),a=e.i(19455),s=e.i(46798),l=e.i(75157);let o={muted:"text-[var(--ds-muted)] hover:text-[var(--ds-text)]",danger:"text-red-600 hover:text-red-800 [&_svg]:!text-red-600 hover:[&_svg]:!text-red-800"};function n(e){let{icon:n,label:i,ariaLabel:d,tone:c="muted",disabled:u,className:b,iconClassName:f,onClick:m}=e;return(0,r.jsx)(s.TooltipProvider,{delayDuration:150,children:(0,r.jsxs)(s.Tooltip,{children:[(0,r.jsx)(s.TooltipTrigger,{asChild:!0,children:(0,r.jsx)(a.Button,{type:"button",variant:"plain",size:"icon",className:(0,l.cn)("h-4 w-4",o[c],b),disabled:u,"aria-label":null!=d?d:i,onClick:m,children:(0,r.jsx)(t.default,{name:n,size:16,className:f})})}),(0,r.jsx)(s.TooltipContent,{side:"bottom",align:"center",className:"text-base",children:i})]})})}},56708,e=>{"use strict";e.s(["ManageChromeHeaderActions",()=>n,"ManageFeatureChrome",()=>o]);var r=e.i(18050),t=e.i(71645),a=e.i(74080),s=e.i(72064);let l=(0,t.createContext)(null);function o(e){let{title:a,description:o,children:n,showTitle:i=!0,headerIcon:d}=e,[c,u]=(0,t.useState)(null);return(0,r.jsxs)("div",{className:"manage-page-wrap flex min-h-0 flex-1 flex-col",children:[(0,r.jsxs)("div",{className:"manage-page-header flex shrink-0 items-start justify-between gap-[var(--space-4)] pb-[var(--space-4)]",children:[i?(0,r.jsxs)("div",{className:"manage-page-title-block flex items-center",children:[d&&(0,r.jsx)("div",{className:"mr-3 rounded-md bg-[var(--green-light)] px-4 py-3",children:(0,r.jsx)(s.default,{name:d,size:24,className:"text-[var(--green-dark)]",strokeWidth:1.5})}),(0,r.jsxs)("div",{className:"pt-3",children:[(0,r.jsx)("h1",{className:"manage-page-title",children:a}),(0,r.jsx)("p",{className:"manage-page-desc",children:o})]})]}):null,(0,r.jsx)("div",{ref:u,className:"manage-page-header-actions self-start"})]}),(0,r.jsx)("div",{className:"manage-page-body flex min-h-0 min-w-0 flex-1 flex-col",children:(0,r.jsx)(l.Provider,{value:c,children:n})})]})}function n(e){let{children:r}=e,s=(0,t.useContext)(l);return(0,t.useSyncExternalStore)(()=>()=>{},()=>!0,()=>!1)&&s?(0,a.createPortal)(r,s):null}},93479,e=>{"use strict";e.s(["Input",()=>a]);var r=e.i(18050),t=e.i(75157);function a(e){let{className:a,type:s="text",size:l="default",...o}=e;return(0,r.jsx)("input",{type:s,"data-slot":"input","data-size":l,className:(0,t.cn)("h-8 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-8 data-[size=lg]:h-10 data-[size=sm]:h-7",a),...o})}},20783,e=>{"use strict";e.s(["composeRefs",()=>a,"useComposedRefs",()=>s]);var r=e.i(71645);function t(e,r){if("function"==typeof e)return e(r);null!=e&&(e.current=r)}function a(){for(var e=arguments.length,r=Array(e),a=0;a<e;a++)r[a]=arguments[a];return e=>{let a=!1,s=r.map(r=>{let s=t(r,e);return a||"function"!=typeof s||(a=!0),s});if(a)return()=>{for(let e=0;e<s.length;e++){let a=s[e];"function"==typeof a?a():t(r[e],null)}}}}function s(){for(var e=arguments.length,t=Array(e),s=0;s<e;s++)t[s]=arguments[s];return r.useCallback(a(...t),t)}},57428,e=>{"use strict";e.s(["Checkbox",()=>l]);var r=e.i(18050),t=e.i(71645),a=e.i(72064),s=e.i(75157);let l=t.forwardRef(function(e,l){let{className:o,size:n="default",checked:i,defaultChecked:d,disabled:c,id:u,onChange:b,...f}=e,m=void 0!==i,[v,h]=t.useState(!!d),x=m?!!i:v;return(0,r.jsxs)("span",{"data-slot":"checkbox","data-size":n,"data-checked":x?"true":"false",className:(0,s.cn)("relative inline-flex shrink-0 items-center justify-center rounded-sm border border-solid border-border bg-transparent outline-none transition-[color,box-shadow,border-color,background-color] duration-150 ease-in-out","has-[:focus-visible]:border-[var(--border-focus)] has-[:focus-visible]:[box-shadow:var(--ring-focus-sm)]","has-[:disabled]:cursor-not-allowed has-[:disabled]:opacity-50","data-[size=default]:size-4 data-[size=sm]:size-3.5",x?"border-[var(--ds-accent)] bg-[var(--ds-accent)]":"bg-transparent",o),children:[x?(0,r.jsx)(a.default,{name:"Check",className:(0,s.cn)("pointer-events-none text-[var(--surface-1)] [&_path]:!fill-none","sm"===n?"size-3":"size-3.5"),strokeWidth:2.25,"aria-hidden":"true"}):null,(0,r.jsx)("input",{ref:l,id:u,type:"checkbox",checked:m?i:void 0,defaultChecked:m?void 0:d,disabled:c,className:"absolute inset-0 m-0 size-full cursor-pointer opacity-0 disabled:cursor-not-allowed",onChange:e=>{m||h(e.target.checked),null==b||b(e)},...f})]})})}]);