@wandox/sdk 0.1.41 → 0.1.42

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 (102) hide show
  1. package/dist/{V1Workbench-CSWAs8if.cjs → V1Workbench-BMtwxYV1.cjs} +1 -1
  2. package/dist/{V1Workbench-CP3wV-c1.js → V1Workbench-BPM2Hyia.js} +3 -3
  3. package/dist/{V2Workbench-DMv_Z7vB.cjs → V2Workbench-Dldh6IwR.cjs} +2 -2
  4. package/dist/{V2Workbench-DhrB5d7J.js → V2Workbench-SLCyuz0m.js} +4 -4
  5. package/dist/{WorkbenchRuntime-BnajfcXd.cjs → WorkbenchRuntime-Bw3YVJyj.cjs} +1 -1
  6. package/dist/{WorkbenchRuntime-C9kjZwyO.js → WorkbenchRuntime-D4TX08P0.js} +2 -2
  7. package/dist/{arc-BJDwB8ND.js → arc-CTFudHUx.js} +1 -1
  8. package/dist/{arc-CcCkDJie.cjs → arc-TMt-ELu0.cjs} +1 -1
  9. package/dist/{architectureDiagram-3BPJPVTR-SExnrabd.js → architectureDiagram-3BPJPVTR-D0nzJigQ.js} +3 -3
  10. package/dist/{architectureDiagram-3BPJPVTR-5jWBgtFE.cjs → architectureDiagram-3BPJPVTR-ma8wVb-G.cjs} +1 -1
  11. package/dist/{blockDiagram-GPEHLZMM-CeCbSSza.cjs → blockDiagram-GPEHLZMM-B9SG48zF.cjs} +1 -1
  12. package/dist/{blockDiagram-GPEHLZMM-BLX6E1I-.js → blockDiagram-GPEHLZMM-CrLMJpgy.js} +3 -3
  13. package/dist/{c4Diagram-AAUBKEIU-bgvJcI3i.cjs → c4Diagram-AAUBKEIU-DYLkOb29.cjs} +1 -1
  14. package/dist/{c4Diagram-AAUBKEIU-C67tZOPI.js → c4Diagram-AAUBKEIU-jGpmbYup.js} +2 -2
  15. package/dist/{channel-Eu6ezMoY.cjs → channel-D9aXObDg.cjs} +1 -1
  16. package/dist/{channel-S6LTLWoj.js → channel-xuGF2XHi.js} +1 -1
  17. package/dist/{chunk-2J33WTMH-DsYCXMv3.cjs → chunk-2J33WTMH-Bb7r3UsS.cjs} +1 -1
  18. package/dist/{chunk-2J33WTMH-B-ARhXPv.js → chunk-2J33WTMH-DfCPx4TK.js} +1 -1
  19. package/dist/{chunk-4BX2VUAB-Beq723qE.js → chunk-4BX2VUAB-BVBFGazg.js} +1 -1
  20. package/dist/{chunk-4BX2VUAB-CPEU7epT.cjs → chunk-4BX2VUAB-Ujuys49Z.cjs} +1 -1
  21. package/dist/{chunk-55IACEB6-B9jUu5Wa.cjs → chunk-55IACEB6-CCHNm8Tr.cjs} +1 -1
  22. package/dist/{chunk-55IACEB6-P-FbSjSI.js → chunk-55IACEB6-D2bCK212.js} +1 -1
  23. package/dist/{chunk-727SXJPM-BvY4Bjsk.cjs → chunk-727SXJPM-C72XbFAd.cjs} +1 -1
  24. package/dist/{chunk-727SXJPM-CbUGO6Vr.js → chunk-727SXJPM-Cio-wglM.js} +5 -5
  25. package/dist/{chunk-AQP2D5EJ-CqQkDtws.cjs → chunk-AQP2D5EJ-B3kQBTIw.cjs} +1 -1
  26. package/dist/{chunk-AQP2D5EJ-Bj4CCHfJ.js → chunk-AQP2D5EJ-Ba8JlV7E.js} +3 -3
  27. package/dist/{chunk-FMBD7UC4-EFPIhB49.js → chunk-FMBD7UC4-B8AkbgCj.js} +1 -1
  28. package/dist/{chunk-FMBD7UC4---RQRn4P.cjs → chunk-FMBD7UC4-CYbGgPkz.cjs} +1 -1
  29. package/dist/{chunk-ND2GUHAM-C3xptcJh.cjs → chunk-ND2GUHAM-BgCWhBGM.cjs} +1 -1
  30. package/dist/{chunk-ND2GUHAM-BYrk1QYb.js → chunk-ND2GUHAM-CHUVXZay.js} +1 -1
  31. package/dist/{chunk-QZHKN3VN-DVK3U2CZ.cjs → chunk-QZHKN3VN-CvOSWDrJ.cjs} +1 -1
  32. package/dist/{chunk-QZHKN3VN-BrQPz_N0.js → chunk-QZHKN3VN-D8pfWLL2.js} +1 -1
  33. package/dist/{classDiagram-4FO5ZUOK-CBdeGq1l.cjs → classDiagram-4FO5ZUOK-BgajT1MN.cjs} +1 -1
  34. package/dist/{classDiagram-4FO5ZUOK-nDtNcIxc.js → classDiagram-4FO5ZUOK-BpqWK41p.js} +2 -2
  35. package/dist/{classDiagram-v2-Q7XG4LA2-CBdeGq1l.cjs → classDiagram-v2-Q7XG4LA2-BgajT1MN.cjs} +1 -1
  36. package/dist/{classDiagram-v2-Q7XG4LA2-BtTOYzV2.js → classDiagram-v2-Q7XG4LA2-DIpkOsLT.js} +2 -2
  37. package/dist/{cose-bilkent-S5V4N54A-C8k9n869.cjs → cose-bilkent-S5V4N54A-CpfHDS3L.cjs} +1 -1
  38. package/dist/{cose-bilkent-S5V4N54A-DGrQEb3Q.js → cose-bilkent-S5V4N54A-Cqi01qNn.js} +2 -2
  39. package/dist/{dagre-BM42HDAG-BGV4bq8l.js → dagre-BM42HDAG-C23jgWGl.js} +1 -1
  40. package/dist/{dagre-BM42HDAG-Cn5l_d1_.cjs → dagre-BM42HDAG-CLDIPr-X.cjs} +1 -1
  41. package/dist/{diagram-2AECGRRQ-CVbCsKYR.js → diagram-2AECGRRQ-Cj24Od-u.js} +2 -2
  42. package/dist/{diagram-2AECGRRQ-f-wPoGbP.cjs → diagram-2AECGRRQ-CjnokWsQ.cjs} +1 -1
  43. package/dist/{diagram-5GNKFQAL-BcPPVnK9.js → diagram-5GNKFQAL-BbiEdciY.js} +3 -3
  44. package/dist/{diagram-5GNKFQAL-BU_e144b.cjs → diagram-5GNKFQAL-BfV9uMUl.cjs} +1 -1
  45. package/dist/{diagram-KO2AKTUF-C16rc6vm.js → diagram-KO2AKTUF-D9v2ooVA.js} +2 -2
  46. package/dist/{diagram-KO2AKTUF-CtUvgIef.cjs → diagram-KO2AKTUF-DrZSS2Gv.cjs} +1 -1
  47. package/dist/{diagram-LMA3HP47-C8ktw86U.cjs → diagram-LMA3HP47-eMKAwWlp.cjs} +1 -1
  48. package/dist/{diagram-LMA3HP47-B2Uv1Qbr.js → diagram-LMA3HP47-rD-lWG_r.js} +2 -2
  49. package/dist/{diagram-OG6HWLK6-DKJHEwFf.cjs → diagram-OG6HWLK6-50-uYAg9.cjs} +1 -1
  50. package/dist/{diagram-OG6HWLK6-Dure4KV_.js → diagram-OG6HWLK6-CflRan99.js} +3 -3
  51. package/dist/{erDiagram-TEJ5UH35-CujhrhN0.cjs → erDiagram-TEJ5UH35-BTriOcqX.cjs} +1 -1
  52. package/dist/{erDiagram-TEJ5UH35-CFScdfYK.js → erDiagram-TEJ5UH35-CEHO-wXV.js} +4 -4
  53. package/dist/{flowDiagram-I6XJVG4X-Ddb0Wm1d.cjs → flowDiagram-I6XJVG4X-BLp2Bhui.cjs} +1 -1
  54. package/dist/{flowDiagram-I6XJVG4X-iub1QTB5.js → flowDiagram-I6XJVG4X-BvOBJzbt.js} +6 -6
  55. package/dist/{ganttDiagram-6RSMTGT7-kcsx9w9K.js → ganttDiagram-6RSMTGT7-9be6okZP.js} +3 -3
  56. package/dist/{ganttDiagram-6RSMTGT7-DGcUMvsS.cjs → ganttDiagram-6RSMTGT7-DHYCnTZk.cjs} +1 -1
  57. package/dist/{gitGraphDiagram-PVQCEYII-Czsy3JTc.js → gitGraphDiagram-PVQCEYII-DysW3J76.js} +3 -3
  58. package/dist/{gitGraphDiagram-PVQCEYII-DJmSGjtx.cjs → gitGraphDiagram-PVQCEYII-fuLhNOZJ.cjs} +1 -1
  59. package/dist/{index-hHpUeDFD.js → index-BjGp64i-.js} +2 -2
  60. package/dist/{index-CXm2gGUB.js → index-CN7b3cbE.js} +8 -8
  61. package/dist/{index-BD9ZXoeZ.cjs → index-DCt5j5lC.cjs} +6 -6
  62. package/dist/{index-BGpSOs23.cjs → index-QIZEllkT.cjs} +1 -1
  63. package/dist/{infoDiagram-5YYISTIA-NkY5ZUG9.js → infoDiagram-5YYISTIA-BKiJ4C1R.js} +1 -1
  64. package/dist/{infoDiagram-5YYISTIA-_8U65P7O.cjs → infoDiagram-5YYISTIA-BQB8CM7E.cjs} +1 -1
  65. package/dist/{ishikawaDiagram-YF4QCWOH-BPksAvWc.js → ishikawaDiagram-YF4QCWOH-Cm3nbVdr.js} +1 -1
  66. package/dist/{ishikawaDiagram-YF4QCWOH-CSeTyT44.cjs → ishikawaDiagram-YF4QCWOH-CmWN_962.cjs} +1 -1
  67. package/dist/{journeyDiagram-JHISSGLW-D7oi3RTD.js → journeyDiagram-JHISSGLW-BH3kUnoi.js} +4 -4
  68. package/dist/{journeyDiagram-JHISSGLW-DMpMTVl3.cjs → journeyDiagram-JHISSGLW-Qeh_6e_n.cjs} +1 -1
  69. package/dist/{kanban-definition-UN3LZRKU-D8dtSllO.cjs → kanban-definition-UN3LZRKU-BQVFSEa2.cjs} +1 -1
  70. package/dist/{kanban-definition-UN3LZRKU-CFCXbiPA.js → kanban-definition-UN3LZRKU-BcNQilMv.js} +2 -2
  71. package/dist/{linear-ntQXd-4I.cjs → linear-TarjbgsN.cjs} +1 -1
  72. package/dist/{linear-I_ZVqYbo.js → linear-xl1chASq.js} +1 -1
  73. package/dist/{mermaid.core-DtLXHPrP.cjs → mermaid.core-CD8W-83J.cjs} +3 -3
  74. package/dist/{mermaid.core-8Gquzh_R.js → mermaid.core-VImUQ-y-.js} +35 -35
  75. package/dist/{mindmap-definition-RKZ34NQL-BMH-f9PV.js → mindmap-definition-RKZ34NQL-BJl71t4P.js} +3 -3
  76. package/dist/{mindmap-definition-RKZ34NQL-CJVJWhdf.cjs → mindmap-definition-RKZ34NQL-DCRQT10I.cjs} +1 -1
  77. package/dist/{pieDiagram-4H26LBE5-B5xBwvCx.cjs → pieDiagram-4H26LBE5--tW4dEtH.cjs} +1 -1
  78. package/dist/{pieDiagram-4H26LBE5-FlNWJpi3.js → pieDiagram-4H26LBE5-DwQkQmdD.js} +3 -3
  79. package/dist/{quadrantDiagram-W4KKPZXB-CQCVf4DA.js → quadrantDiagram-W4KKPZXB-D41uKlpw.js} +2 -2
  80. package/dist/{quadrantDiagram-W4KKPZXB-g-4XOqv2.cjs → quadrantDiagram-W4KKPZXB-WFcfZghI.cjs} +1 -1
  81. package/dist/{requirementDiagram-4Y6WPE33-DfGjNiIg.cjs → requirementDiagram-4Y6WPE33-ChLKzwEb.cjs} +1 -1
  82. package/dist/{requirementDiagram-4Y6WPE33-B5aruz9C.js → requirementDiagram-4Y6WPE33-npAxQTol.js} +3 -3
  83. package/dist/{sankeyDiagram-5OEKKPKP-DLP301L9.cjs → sankeyDiagram-5OEKKPKP-BvcPTB2N.cjs} +1 -1
  84. package/dist/{sankeyDiagram-5OEKKPKP-5H9pwhNn.js → sankeyDiagram-5OEKKPKP-fKgres6H.js} +1 -1
  85. package/dist/{sequenceDiagram-3UESZ5HK-ylAs5M1c.js → sequenceDiagram-3UESZ5HK-CpEUV9gb.js} +3 -3
  86. package/dist/{sequenceDiagram-3UESZ5HK-CfVEw2Ii.cjs → sequenceDiagram-3UESZ5HK-LGRgMkGi.cjs} +1 -1
  87. package/dist/{stateDiagram-AJRCARHV-Cdmp_n0l.js → stateDiagram-AJRCARHV-CHqQN0ix.js} +2 -2
  88. package/dist/{stateDiagram-AJRCARHV-CWaqLFHY.cjs → stateDiagram-AJRCARHV-XBb-Dtow.cjs} +1 -1
  89. package/dist/{stateDiagram-v2-BHNVJYJU-Ysa_UT54.cjs → stateDiagram-v2-BHNVJYJU-C14xhWxp.cjs} +1 -1
  90. package/dist/{stateDiagram-v2-BHNVJYJU-CZoUztfC.js → stateDiagram-v2-BHNVJYJU-Z8Pi0Y3W.js} +2 -2
  91. package/dist/{timeline-definition-PNZ67QCA-Czgl2Dc7.js → timeline-definition-PNZ67QCA-CQlKM_xI.js} +2 -2
  92. package/dist/{timeline-definition-PNZ67QCA-D0CalUFb.cjs → timeline-definition-PNZ67QCA-D6BDxDF0.cjs} +1 -1
  93. package/dist/{vennDiagram-CIIHVFJN-DYW68cHu.cjs → vennDiagram-CIIHVFJN-BNuzvov-.cjs} +1 -1
  94. package/dist/{vennDiagram-CIIHVFJN-CGsnAMe8.js → vennDiagram-CIIHVFJN-CQuhupzV.js} +1 -1
  95. package/dist/wandox.cjs +1 -1
  96. package/dist/wandox.js +1 -1
  97. package/dist/wandox.umd.js +1 -1
  98. package/dist/{wardleyDiagram-YWT4CUSO-C4dJJn5t.js → wardleyDiagram-YWT4CUSO-22zzwPUn.js} +2 -2
  99. package/dist/{wardleyDiagram-YWT4CUSO-DWDQK38X.cjs → wardleyDiagram-YWT4CUSO-MHRvjUGT.cjs} +1 -1
  100. package/dist/{xychartDiagram-2RQKCTM6-CUB3kDZ2.js → xychartDiagram-2RQKCTM6-BLOMoiAI.js} +2 -2
  101. package/dist/{xychartDiagram-2RQKCTM6-6vxLHAyO.cjs → xychartDiagram-2RQKCTM6-CUe-G5Nn.cjs} +1 -1
  102. package/package.json +1 -1
@@ -1098,7 +1098,7 @@ Please report this to https://github.com/markedjs/marked.`,t){let i="<p>An error
1098
1098
  `)?`"${L.replace(/"/g,'""')}"`:L}).join(",")),k="\uFEFF"+[_,...T].join(`
1099
1099
  `),A=new Blob([k],{type:"text/csv;charset=utf-8;"}),$=URL.createObjectURL(A),I=document.createElement("a");I.href=$,I.download=`${b}_${w}.csv`,I.click(),URL.revokeObjectURL($)}else{const _=JSON.stringify(h??l,null,2),T=new Blob([_],{type:"application/json;charset=utf-8;"}),k=URL.createObjectURL(T),A=document.createElement("a");A.href=k,A.download=`${b}_${w}.json`,A.click(),URL.revokeObjectURL(k)}},[e,t,v,h,d]);return E.jsxs("div",{className:`rdd-step${o?" rdd-step--fail":""}`,children:[E.jsxs("button",{type:"button",className:"rdd-step-header",onClick:()=>i(x=>!x),children:[E.jsx("span",{className:"rdd-step-idx",children:t+1}),s?E.jsx(Yb,{style:{color:"#52c41a",fontSize:14}}):o?E.jsx(jv,{style:{color:"#ef4444",fontSize:14}}):E.jsx(Wo,{style:{color:"#9ca3af",fontSize:14}}),E.jsx("span",{className:"rdd-step-name",children:e.step_name}),e.duration_ms!=null&&E.jsx("span",{className:"rdd-step-dur",children:N3e(e.duration_ms)}),g&&E.jsx(ri,{title:v?"导出 CSV":"导出 JSON",children:E.jsx("span",{className:"rdd-step-export",onClick:y,role:"button",tabIndex:0,onKeyDown:x=>{x.key==="Enter"&&y(x)},children:E.jsx(jA,{style:{fontSize:12}})})}),E.jsx("span",{className:"rdd-step-arrow",children:n?E.jsx(Ome,{}):E.jsx(zA,{})})]}),n&&m&&E.jsx("div",{className:"rdd-step-body",ref:a,children:p?E.jsx("div",{className:"rdd-step-error-text",children:p}):E.jsx(To,{payload:f})})]})}function a4n({lineage:e}){return e.length===0?E.jsx("div",{className:"rdd-empty",children:"暂无流转记录"}):E.jsx("div",{className:"rdd-lineage",children:e.map((t,r)=>E.jsxs("div",{className:"rdd-lineage-item",children:[E.jsx("div",{className:"rdd-lineage-dot",style:{background:t.status==="accepted"?"#52c41a":"#faad14"}}),r<e.length-1&&E.jsx("div",{className:"rdd-lineage-line"}),E.jsxs("div",{className:`rdd-lineage-card${t.status==="accepted"?" rdd-lineage-card--ok":""}`,children:[E.jsxs("div",{className:"rdd-lineage-row",children:[E.jsx(hZe,{style:{color:"#9ca3af",fontSize:11}}),E.jsxs("span",{children:["流转给 ",E.jsx("strong",{children:t.target_nick_name??t.target_user_id})]}),E.jsx(vs,{color:t.status==="accepted"?"success":t.status==="pending"?"warning":"default",style:{fontSize:10,margin:0},children:t.status==="accepted"?"已接受":t.status==="pending"?"待处理":t.status}),E.jsx("span",{className:"rdd-lineage-time",children:EAt(t.created_at)})]}),t.transfer_message&&E.jsxs("div",{className:"rdd-lineage-msg",children:["💬 ",t.transfer_message]})]})]},r))})}function s4n(){const{activeResult:e,showResultModal:t,setShowResultModal:r,setActiveResult:n}=Ta(),[i,a]=S.useState(null),[s,o]=S.useState(!1),[l,u]=S.useState(!1),[d,h]=S.useState("x1"),f=d==="full"?"100vw":d==="x2"?1400:900,p=[{key:"x1",label:"x1"},{key:"x2",label:"x2"},{key:"full",label:"全屏"}];S.useEffect(()=>{if(!(e!=null&&e.execution_id)){a(null);return}o(!0),cJe(e.execution_id).then(M=>a(t4n(M))).catch(()=>a(null)).finally(()=>o(!1))},[e==null?void 0:e.execution_id]);const g=()=>{r(!1),n(null),a(null)},m=i==null?void 0:i.execution,v=i==null?void 0:i.result,y=((i==null?void 0:i.steps)??[]).filter(M=>M.status!=="skipped"),x=(i==null?void 0:i.transfers)??[],b=v==null?void 0:v.result_data,w=b==null?void 0:b.output,C=b==null?void 0:b.output_type,_=b==null?void 0:b.output_fields_map,T=C?Jy(C==="debug"?"card":C,w,_,b==null?void 0:b.title):VB(b),k=C?null:ez(b)??ez(w)??r4n(y)??JF(m==null?void 0:m.error_message)??JF(e==null?void 0:e.error_message),A=(v==null?void 0:v.result_summary)??(m==null?void 0:m.result_summary)??(e==null?void 0:e.result_summary)??"",$=(v==null?void 0:v.id)??(e==null?void 0:e.id),I=(m==null?void 0:m.status)==="completed",P=(m==null?void 0:m.status)==="failed",N=y.findIndex(M=>M.status==="failed"),R=y.find(M=>R3e(M))??(N>=0?y[N]:void 0),L=(R==null?void 0:R.duration_ms)!=null?N3e(R.duration_ms):void 0;return E.jsx(qS,{className:"wandox-root",title:"执行结果详情",closable:{placement:"end"},open:t&&!!e,onClose:g,size:f,extra:E.jsx("div",{className:"rdd-size-switch",children:p.map(({key:M,label:O})=>E.jsx("button",{type:"button",className:`rdd-size-btn${d===M?" rdd-size-btn--active":""}`,onClick:()=>h(M),children:O},M))}),styles:{header:{paddingBottom:0,border:0},body:{padding:0}},children:s?E.jsx("div",{style:{textAlign:"center",padding:"80px 0"},children:E.jsx(Oi,{})}):e&&E.jsxs(E.Fragment,{children:[E.jsx("div",{className:"rdd-header",children:m&&E.jsx("div",{className:"rdd-header-row2",children:E.jsxs("div",{className:"rdd-meta",children:[E.jsx(vs,{color:I?"success":P?"error":"processing",style:{fontSize:11,margin:0,borderRadius:4},children:I?"成功":P?"失败":m.status}),E.jsx("span",{className:"rdd-meta-sep"}),E.jsxs("span",{className:"rdd-meta-item",children:[E.jsx(Wo,{})," ",EAt(m.started_at)]}),m.duration_ms!=null&&E.jsxs("span",{className:"rdd-meta-item",children:["耗时 ",N3e(m.duration_ms)]}),E.jsx(vs,{color:m.trigger_type==="scheduled"?"orange":"blue",style:{fontSize:10,margin:0,borderRadius:4},children:m.trigger_type==="scheduled"?"定时":"手动"})]})})}),E.jsx("div",{className:"rdd-tabs-wrap",children:E.jsx(MU,{size:"small",className:"rdd-tabs",items:[{key:"result",label:"执行结果",children:E.jsxs("div",{className:"rdd-tab-content",children:[E.jsx("div",{className:"rdd-result-output",children:C==="card"&&w&&typeof w=="object"&&!Array.isArray(w)&&w.content?E.jsx(To,{payload:w.content}):C?E.jsx(To,{payload:T}):w!=null&&w.content?E.jsx(To,{payload:w.content}):typeof w=="string"?E.jsx(To,{payload:w}):k?E.jsx(n4n,{message:k,stepName:R==null?void 0:R.step_name,duration:L}):A?E.jsx(To,{payload:A}):E.jsx(e4n,{type:"secondary",children:"暂无结果内容"})}),E.jsx(A3e,{open:l,onClose:()=>u(!1),resultId:$})]})},{key:"steps",label:`执行步骤${y.length?` (${y.length})`:""}`,children:E.jsx("div",{className:"rdd-tab-content",children:y.length>0?y.map((M,O)=>E.jsx(i4n,{step:M,index:O,defaultExpanded:O===N},M.step_id)):E.jsx("div",{className:"rdd-empty",children:"暂无步骤记录"})})},{key:"lineage",label:`推送记录${x.length?` (${x.length})`:""}`,children:E.jsx("div",{className:"rdd-tab-content",children:E.jsx(a4n,{lineage:x})})}]})})]})})}const L3e="0 9 * * *",o4n=["周日","周一","周二","周三","周四","周五","周六"];function g$(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function tz(e,t){return e instanceof Error||g$(e)&&typeof e.message=="string"?e.message:t}function P3e(e){return g$(e)?e.data??e.result??e.results??e:e}function m$(e){return e?String(e.schedule_id??e.schedule_code??e.task_id??e.id??""):""}function kAt(e){return(e==null?void 0:e.name)||(e==null?void 0:e.schedule_name)||(e==null?void 0:e.title)||"未命名任务"}function l4n(e){return(e==null?void 0:e.schedule_params)??(e==null?void 0:e.playbook_params)??(e==null?void 0:e.params)??(e==null?void 0:e.input_data)??{}}function AAt(e,t){return(e==null?void 0:e.schedule_cron)||(e==null?void 0:e.cron_expression)||t||L3e}function IAt(e){return e?typeof e.is_enabled=="boolean"?e.is_enabled:typeof e.enabled=="boolean"?e.enabled:typeof e.is_active=="boolean"?e.is_active:!0:!0}function $At(e){return!!(e&&e.trim().split(/\s+/).length>=5)}function c4n(e){if(!e||!$At(e))return"未设置频率";const t=GQ(e),r=`${String(t.hour).padStart(2,"0")}:${String(t.minute).padStart(2,"0")}`;switch(t.unit){case"hour":return t.minute>0?`每 ${t.interval} 小时第 ${t.minute} 分执行`:`每 ${t.interval} 小时执行一次`;case"day":return t.interval===1?`每天 ${r} 执行`:`每 ${t.interval} 天 ${r} 执行`;case"week":return`每周 ${t.weekDays.length?t.weekDays.map(i=>o4n[i]||`周${i}`).join("、"):"周一"} ${r} 执行`;case"month":return t.interval===1?`每月第 ${t.monthDay} 天 ${r} 执行`:`每 ${t.interval} 个月第 ${t.monthDay} 天 ${r} 执行`;case"year":return`每年 ${t.yearMonth} 月 ${t.yearDay} 日 ${r} 执行`;case"custom":return"自定义高级规则";default:return"未设置频率"}}function u4n(e){var r;const t=(r=e.schedule_display)==null?void 0:r.trim();return t&&!$At(t)?t:c4n(AAt(e,t))}function d4n(e){if(!e)return"";const t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString("zh-CN",{month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"})}function h4n(e){const t=P3e(e),r=g$(t)?t.items??t.records??t.rows??t.schedules??t.list??t.data:t;return Array.isArray(r)?r.filter(g$).map(n=>n):[]}function RAt(e){if(!g$(e))return null;const t=e.webhook_id??e.id;if(!t)return null;const r=typeof e.name=="string"&&e.name.trim()?e.name:String(t);return{webhook_id:String(t),name:r,platform:typeof e.platform=="string"?e.platform:void 0,is_active:typeof e.is_active=="boolean"?e.is_active:void 0,is_default:typeof e.is_default=="boolean"?e.is_default:void 0}}function f4n(e){const t=P3e(e),r=g$(t)?t.items??t.records??t.rows??t.webhooks??t.list??t.data:t;return Array.isArray(r)?r.map(RAt).filter(n=>!!n):[]}function p4n(e){switch(e){case"dingtalk":return"钉钉";case"feishu":case"lark":return"飞书";case"wecom":case"wechat_work":return"企微";default:return e||""}}function NAt(e){const t=p4n(e.platform);return t?`${e.name} (${t})`:e.name}function g4n(e,t){var r;return e!=null&&e.webhook_id?e.webhook_id:((r=t.find(n=>n.is_default&&n.is_active!==!1))==null?void 0:r.webhook_id)||""}function LAt(e,t,r){return{mode:"create",activeScheduleId:"",taskName:e!=null&&e.name?`${e.name} 定时任务`:"定时任务",enabled:!0,webhookId:g4n(e,r),cron:(e==null?void 0:e.schedule_cron)||L3e,values:hw(t,(e==null?void 0:e.schedule_params)??{})}}function m4n(e,t,r){return{mode:"edit",activeScheduleId:m$(e),taskName:kAt(e),enabled:IAt(e),webhookId:e.webhook_id||"",cron:AAt(e,t==null?void 0:t.schedule_cron),values:hw(r,l4n(e))}}function v4n(e,t){if(!e.taskName.trim())return"请输入任务名称";if(!e.webhookId)return"请选择通知地址";if(e.enabled&&!e.cron.trim())return"请设置调度频率";const r=Fy(t,e.values);for(const n of r){const i=e.values[n.name];if(n.required&&i!==0&&i!==!1&&up(i))return`请填写「${n.label||n.name}」`;if(tJ(n)&&!up(i)){const a=eyt(i,n.address_validation);if(a)return`${n.label||n.name}:${a}`}}return""}function y4n(e,t){const r=e.cron||L3e,n=Fy(t,e.values);return{name:e.taskName.trim(),is_enabled:e.enabled,schedule_type:GQ(r).unit,schedule_cron:r,schedule_params:t.length>0?ayt(n,e.values):void 0,webhook_id:e.webhookId}}function b4n(){return{draft:LAt(null,[],[]),editorRevision:0,quickAddWebhookOpen:!1}}function x4n(e,t){switch(t.type){case"apply_draft":return{...e,draft:t.draft,editorRevision:e.editorRevision+1};case"patch_draft":return{...e,draft:{...e.draft,...t.patch}};case"set_values":{const r=typeof t.next=="function"?t.next(e.draft.values):t.next;return{...e,draft:{...e.draft,values:r}}}case"set_quick_add_open":return{...e,quickAddWebhookOpen:t.open};default:return e}}function w4n(e,t){const[r,n]=S.useReducer(x4n,void 0,b4n),i=S.useRef(""),a=S.useRef((e==null?void 0:e.id)??null);S.useEffect(()=>{a.current!==((e==null?void 0:e.id)??null)&&(a.current=(e==null?void 0:e.id)??null,i.current="")},[e==null?void 0:e.id]),S.useEffect(()=>{i.current=r.draft.activeScheduleId},[r.draft.activeScheduleId]);const s=S.useCallback(w=>{i.current=w.activeScheduleId,n({type:"apply_draft",draft:w})},[]),o=S.useCallback(w=>{s(LAt(e,t,w))},[e,s,t]),l=S.useCallback(w=>{s(m4n(w,e,t))},[e,s,t]),u=S.useCallback((w,C,_)=>{const T=_?w.find($=>m$($)===_):null,k=i.current?w.find($=>m$($)===i.current):null,A=T||k||w[0];A?l(A):o(C)},[l,o]),d=S.useCallback(w=>{i.current===w&&(i.current="")},[]),h=S.useCallback(w=>{n({type:"patch_draft",patch:{taskName:w}})},[]),f=S.useCallback(w=>{n({type:"patch_draft",patch:{enabled:w}})},[]),p=S.useCallback(w=>{n({type:"patch_draft",patch:{webhookId:w}})},[]),g=S.useCallback(w=>{n({type:"patch_draft",patch:{cron:w}})},[]),m=S.useCallback(w=>{n({type:"set_values",next:w})},[]),v=S.useCallback((w,C)=>{n({type:"set_values",next:_=>({..._,[w]:C})})},[]),y=S.useCallback((w,C)=>{n({type:"set_values",next:_=>{const T=Array.isArray(_[w])?_[w]:_[w]?[_[w]]:[];return{..._,[w]:[...T,C]}}})},[]),x=S.useCallback(()=>{n({type:"set_quick_add_open",open:!0})},[]),b=S.useCallback(()=>{n({type:"set_quick_add_open",open:!1})},[]);return{...r,startCreate:o,editSchedule:l,selectScheduleList:u,clearActiveSchedule:d,updateTaskName:h,updateEnabled:f,updateWebhook:p,updateCron:g,updateValues:m,updateField:v,appendFieldValue:y,openQuickAddWebhook:x,closeQuickAddWebhook:b}}const PAt={saving:!1,deletingId:"",saveError:"",uploading:{},fileNameMap:{}};function S4n(e,t){switch(t.type){case"reset":return PAt;case"set_saving":return{...e,saving:t.saving};case"set_deleting":return{...e,deletingId:t.scheduleId};case"set_save_error":return{...e,saveError:t.error};case"set_uploading":return{...e,uploading:{...e.uploading,[t.fieldName]:t.uploading}};case"remember_file_name":return{...e,fileNameMap:{...e.fileNameMap,[t.url]:t.name}};default:return e}}function C4n({agent:e,open:t,draft:r,draftRevision:n,inputFields:i,refreshSchedules:a,clearActiveSchedule:s,updateField:o,appendFieldValue:l}){const u=bl(),d=jf({...xp.schedules.create(),onSuccess:(w,{agentId:C})=>Xh(u,{type:"schedule-saved",agentId:C})}),h=jf({...xp.schedules.update(),onSuccess:(w,{agentId:C})=>Xh(u,{type:"schedule-saved",agentId:C})}),f=jf({...xp.schedules.delete(),onSuccess:(w,{agentId:C})=>Xh(u,{type:"schedule-deleted",agentId:C})}),[p,g]=S.useReducer(S4n,PAt),m=t?(e==null?void 0:e.id)??null:null,v=S.useRef(n);S.useEffect(()=>{m!==null&&g({type:"reset"})},[m]),S.useEffect(()=>{v.current!==n&&(v.current=n,g({type:"set_save_error",error:""}))},[n]);const y=S.useCallback((w,C)=>async({file:_,onSuccess:T,onError:k})=>{var A,$;g({type:"set_uploading",fieldName:w,uploading:!0});try{const I=_,P=await ny(I),N=(A=P==null?void 0:P.data)==null?void 0:A.url;if(!N)throw new Error("上传失败");const R=(($=P==null?void 0:P.data)==null?void 0:$.name)||I.name||N.split("/").pop()||"未知文件";g({type:"remember_file_name",url:N,name:R}),C<=1?o(w,N):l(w,N),T==null||T(P),Et.success("文件上传成功")}catch(I){k==null||k(I instanceof Error?I:new Error("文件上传失败")),Et.error(tz(I,"文件上传失败"))}finally{g({type:"set_uploading",fieldName:w,uploading:!1})}},[l,o]),x=S.useCallback(async()=>{if(!e)return;const w=v4n(r,i);if(w){Et.warning(w);return}g({type:"set_save_error",error:""}),g({type:"set_saving",saving:!0});try{const C=y4n(r,i);if(r.mode==="edit"&&r.activeScheduleId)await h.mutateAsync({agentId:e.id,scheduleId:r.activeScheduleId,data:C}),Et.success("定时任务已更新"),a(r.activeScheduleId);else{const _=await d.mutateAsync({agentId:e.id,data:C}),T=P3e(_),k=T&&typeof T=="object"&&!Array.isArray(T)?m$(T):"";Et.success("定时任务已创建"),a(k||void 0)}}catch(C){g({type:"set_save_error",error:tz(C,"保存失败")})}finally{g({type:"set_saving",saving:!1})}},[e,d,r,i,a,h]),b=S.useCallback(async w=>{const C=m$(w);if(C){g({type:"set_deleting",scheduleId:C});try{if(!e)return;await f.mutateAsync({agentId:e.id,scheduleId:C}),Et.success("定时任务已删除"),s(C),a()}catch(_){Et.error(tz(_,"删除失败"))}finally{g({type:"set_deleting",scheduleId:""})}}},[e,s,f,a]);return{...p,handleFileUpload:y,save:x,deleteSchedule:b}}const _4n={includeDisabled:!0},T4n={},E4n={getSchedules:I3r,getWebhooks:x8};function k4n(e){return{includeDisabled:e.includeDisabled}}function A4n(e){return{platform:e.platform,domain:e.domain}}function I4n(e=E4n){return{schedules:{list:(t,r)=>{const n=t,i=k4n(r);return{queryKey:Ci.schedules.list(n,i),queryFn:async()=>{const a=await e.getSchedules(n,{include_disabled:i.includeDisabled});return h4n(a)}}}},webhooks:{list:(t={})=>{const r=A4n(t);return{queryKey:Ci.webhooks.list(r),queryFn:async()=>{const n=await e.getWebhooks({platform:r.platform,domain:r.domain});return f4n(n)}}}}}}function $4n(e,t){return[t,...(e??[]).filter(r=>r.webhook_id!==t.webhook_id)]}const MAt=I4n(),R4n=0,N4n=[],L4n=[];function P4n(e,t){const r=bl(),[n,i]=S.useState(0),a=S.useRef(null),s=t&&e!==null,o=S.useMemo(()=>MAt.schedules.list(e??R4n,_4n),[e]),l=S.useMemo(()=>MAt.webhooks.list(T4n),[]),u=ty({...o,enabled:s}),d=ty({...l,enabled:s});S.useEffect(()=>{if(!s||e===null){a.current=null;return}if(u.isFetching||d.isFetching)return;const p=String(e);a.current!==p&&(a.current=p,i(g=>g+1))},[e,s,u.isFetching,d.isFetching]);const h=S.useCallback(()=>r.getQueryData(o.queryKey)??[],[r,o.queryKey]),f=S.useCallback(p=>{r.setQueryData(l.queryKey,g=>$4n(g,p))},[r,l.queryKey]);return{schedules:u.data??N4n,webhooks:d.data??L4n,listLoading:s&&u.isFetching,webhookLoading:s&&d.isFetching,scheduleError:u.error?tz(u.error,"获取定时任务失败"):"",webhookError:d.error?tz(d.error,"获取通知地址失败"):"",initialLoadRevision:n,getCachedSchedules:h,prependWebhook:f}}function M4n(e,t){const r=S.useMemo(()=>rB(e==null?void 0:e.input_params),[e==null?void 0:e.input_params]),n=P4n((e==null?void 0:e.id)??null,t),i=w4n(e,r),a=S.useRef(0);S.useEffect(()=>{n.webhookError&&Et.error(n.webhookError)},[n.webhookError]),S.useEffect(()=>{n.scheduleError&&Et.error(n.scheduleError)},[n.scheduleError]),S.useEffect(()=>{n.initialLoadRevision===0||a.current===n.initialLoadRevision||(a.current=n.initialLoadRevision,i.selectScheduleList(n.schedules,n.webhooks))},[i.selectScheduleList,n.initialLoadRevision,n.schedules,n.webhooks]);const s=S.useCallback(()=>{i.startCreate(n.webhooks)},[i.startCreate,n.webhooks]),o=S.useCallback(g=>{i.selectScheduleList(n.getCachedSchedules(),n.webhooks,g)},[i.selectScheduleList,n.getCachedSchedules,n.webhooks]),l=Q5(r,i.draft.values,i.updateValues),u=S.useMemo(()=>Fy(r,i.draft.values),[r,i.draft.values]),d=C4n({agent:e,open:t,draft:i.draft,draftRevision:i.editorRevision,inputFields:r,refreshSchedules:o,clearActiveSchedule:i.clearActiveSchedule,updateField:i.updateField,appendFieldValue:i.appendFieldValue}),h=S.useCallback(g=>{const m=RAt(g);m&&(n.prependWebhook(m),i.updateWebhook(m.webhook_id))},[i.updateWebhook,n.prependWebhook]),f=S.useMemo(()=>new Map(n.webhooks.map(g=>[g.webhook_id,NAt(g)])),[n.webhooks]),p=S.useMemo(()=>{const g=new Set,m=n.webhooks.map(v=>(g.add(v.webhook_id),{value:v.webhook_id,label:`${NAt(v)}${v.is_default?" · 默认":""}`,disabled:v.is_active===!1}));return i.draft.webhookId&&!g.has(i.draft.webhookId)&&m.unshift({value:i.draft.webhookId,label:`当前通知地址 (${i.draft.webhookId})`,disabled:!1}),m},[i.draft.webhookId,n.webhooks]);return{schedules:n.schedules,webhooks:n.webhooks,listLoading:n.listLoading,webhookLoading:n.webhookLoading,draft:i.draft,editorRevision:i.editorRevision,quickAddWebhookOpen:i.quickAddWebhookOpen,saving:d.saving,deletingId:d.deletingId,saveError:d.saveError,uploading:d.uploading,fileNameMap:d.fileNameMap,inputFields:r,visibleInputFields:u,dynamicOptions:l,webhookNameById:f,webhookOptions:p,startCreate:s,editSchedule:i.editSchedule,updateTaskName:i.updateTaskName,updateEnabled:i.updateEnabled,updateWebhook:i.updateWebhook,updateCron:i.updateCron,updateField:i.updateField,handleFileUpload:d.handleFileUpload,save:d.save,deleteSchedule:d.deleteSchedule,openQuickAddWebhook:i.openQuickAddWebhook,closeQuickAddWebhook:i.closeQuickAddWebhook,addCreatedWebhook:h}}const{Text:DAt}=Of;function D4n({agent:e,open:t,onClose:r}){const n=M4n(e,t),{schedules:i,webhooks:a,draft:s,editorRevision:o,listLoading:l,webhookLoading:u,quickAddWebhookOpen:d,saving:h,deletingId:f,saveError:p,uploading:g,fileNameMap:m,inputFields:v,visibleInputFields:y,dynamicOptions:x,webhookNameById:b,webhookOptions:w,startCreate:C,editSchedule:_,updateTaskName:T,updateEnabled:k,updateWebhook:A,updateCron:$,updateField:I,handleFileUpload:P,save:N,deleteSchedule:R,openQuickAddWebhook:L,closeQuickAddWebhook:M,addCreatedWebhook:O}=n,D=F=>{const B=u4n(F),j=d4n(F.next_run_at),H=F.webhook_id?F.webhook_name||b.get(F.webhook_id)||F.webhook_id:"";return E.jsxs(E.Fragment,{children:[E.jsx("span",{className:"sm-task-item-frequency",children:B}),(j||H)&&E.jsxs("span",{className:"sm-task-item-extra",children:[j&&E.jsxs("span",{children:["下次执行 ",j]}),H&&E.jsxs("span",{children:["通知 ",H]})]})]})};return E.jsxs(ki,{title:null,open:t,onCancel:r,width:920,centered:!0,footer:E.jsxs("div",{className:"sm-footer",children:[E.jsx(ir,{onClick:r,children:"关闭"}),E.jsx(ir,{type:"primary",loading:h,onClick:N,children:s.mode==="edit"?"保存修改":"创建任务"})]}),className:"schedule-modal",closable:!1,styles:{container:{padding:0}},children:[E.jsxs("div",{className:"sm-header",children:[E.jsx(Wo,{className:"sm-header-icon"}),E.jsxs("div",{children:[E.jsx("div",{className:"sm-header-title",children:"定时触发配置"}),E.jsx("div",{className:"sm-header-sub",children:(e==null?void 0:e.name)||"当前智能体"})]}),E.jsx(ir,{type:"primary",icon:E.jsx(Ul,{}),onClick:()=>C(),children:"创建任务"})]}),E.jsxs("div",{className:"sm-layout",children:[E.jsxs("aside",{className:"sm-task-panel",children:[E.jsx("div",{className:"sm-task-panel-head",children:E.jsxs("div",{children:[E.jsx("div",{className:"sm-task-panel-title",children:"已创建任务"}),E.jsxs("div",{className:"sm-task-panel-count",children:[i.length," 个定时任务"]})]})}),E.jsx(Oi,{spinning:l,children:i.length===0?E.jsx("div",{className:"sm-task-empty",children:E.jsx(Ja,{image:Ja.PRESENTED_IMAGE_SIMPLE,description:"暂无定时任务"})}):E.jsx("div",{className:"sm-task-list",children:i.map(F=>{const B=m$(F),j=s.mode==="edit"&&s.activeScheduleId===B,H=IAt(F);return E.jsxs("div",{className:`sm-task-item${j?" sm-task-item--active":""}`,children:[E.jsx("button",{type:"button",className:"sm-task-select",onClick:()=>_(F),children:E.jsxs("div",{className:"sm-task-item-main",children:[E.jsxs("div",{className:"sm-task-item-title",children:[E.jsx("span",{children:kAt(F)}),E.jsx(vs,{color:H?"green":"default",children:H?"启用":"停用"})]}),E.jsx("div",{className:"sm-task-item-meta",children:D(F)})]})}),E.jsx("div",{className:"sm-task-actions",children:E.jsx(JU,{title:"删除定时任务",description:"删除后不可恢复,确认删除?",okText:"删除",cancelText:"取消",okButtonProps:{danger:!0,loading:f===B},onConfirm:z=>{z==null||z.stopPropagation(),R(F)},onCancel:z=>z==null?void 0:z.stopPropagation(),children:E.jsx(ir,{type:"text",size:"small",danger:!0,icon:E.jsx(Qv,{}),onClick:z=>z.stopPropagation()})})})]},B||F.name)})})})]}),E.jsxs("section",{className:"sm-editor",children:[E.jsxs("div",{className:"sm-editor-head",children:[E.jsxs("div",{children:[E.jsx("div",{className:"sm-editor-title",children:s.mode==="edit"?"编辑任务定时器":"创建任务定时器"}),E.jsx("div",{className:"sm-editor-sub",children:"频率和执行参数沿用当前智能体的配置表单"})]}),E.jsxs("div",{className:"sm-header-switch",children:[E.jsx(DAt,{type:"secondary",style:{fontSize:12},children:s.enabled?"已启用":"已停用"}),E.jsx(Kc,{size:"small",checked:s.enabled,onChange:k})]})]}),E.jsxs("div",{className:"sm-body",children:[E.jsxs("div",{className:"sm-section",children:[E.jsxs("div",{className:"sm-label",children:["任务名称",E.jsx("span",{style:{color:"#ef4444",marginLeft:2},children:"*"})]}),E.jsx(zr,{value:s.taskName,onChange:F=>T(F.target.value),placeholder:"例如:每日店铺表现分析"})]}),E.jsxs("div",{className:"sm-section",children:[E.jsxs("div",{className:"sm-field-head",children:[E.jsxs("div",{children:[E.jsxs("div",{className:"sm-label",children:["通知地址",E.jsx("span",{style:{color:"#ef4444",marginLeft:2},children:"*"})]}),E.jsx("div",{className:"sm-param-hint",children:"任务触发后的消息通知地址"})]}),E.jsx(ir,{size:"small",onClick:L,children:"添加通知地址"})]}),E.jsx(xn,{allowClear:!0,showSearch:!0,loading:u,disabled:u,value:s.webhookId||void 0,onChange:F=>A(F||""),placeholder:"请选择通知 Webhook",optionFilterProp:"label",options:w}),!u&&a.length===0&&E.jsx("div",{className:"sm-inline-alert",children:"暂无可用通知地址,请添加一个通知地址。"})]}),s.enabled?E.jsxs(E.Fragment,{children:[E.jsxs("div",{className:"sm-section",children:[E.jsx("div",{className:"sm-label",children:"调度频率"}),E.jsx("div",{className:"sm-param-hint",children:"设置智能体自动执行的时间间隔和触发时间"}),E.jsx(K_e,{defaultValue:s.cron,onChange:$},o)]}),v.length>0&&E.jsxs("div",{className:"sm-section",children:[E.jsx("div",{className:"sm-label",children:"执行参数"}),E.jsx("div",{className:"sm-param-hint",children:"定时执行时使用的参数,与手动执行时填写的参数一致"}),E.jsx("div",{className:"sm-form-panel",children:E.jsx("div",{className:"sm-dynamic-fields",children:y.map(F=>E.jsxs("div",{className:"sm-field-item",children:[E.jsxs("div",{className:"sm-field-label",children:[E.jsx("span",{children:F.label||F.name}),F.required&&E.jsx("span",{style:{color:"#ef4444",marginLeft:2},children:"*"}),F.description&&E.jsx(ri,{title:F.description,children:E.jsx(KS,{className:"sm-field-label__hint","aria-label":`${F.label||F.name}说明`})})]}),E.jsx(nJ,{field:F,value:s.values[F.name],size:"middle",imageUploadMode:"dragger",uploading:!!g[F.name],fileNameMap:m,getOptionState:x.getFieldState,onChange:I,onUpload:P})]},F.name))})})]})]}):E.jsxs("div",{className:"sm-disabled-hint",children:[E.jsx(Wo,{style:{fontSize:28,color:"#d1d5db"}}),E.jsx(DAt,{type:"secondary",style:{fontSize:13},children:"任务已停用,保存后不会自动触发"})]}),p&&E.jsx("div",{className:"sm-save-error",children:p})]})]})]}),E.jsx(pTe,{open:d,onClose:M,onSuccess:O})]})}function O4n({agentsCount:e,error:t,onOpenMarket:r}){return E.jsx("section",{className:"automation-empty-state",children:E.jsxs("div",{children:[E.jsx("span",{className:`automation-badge automation-badge--${t?"red":"blue"}`,children:t?"加载失败":"空状态"}),E.jsx("h2",{children:t?"智能体列表读取失败":e>0?"请选择一个智能体":"还没有启用智能体"}),E.jsx("p",{children:t||(e>0?"从智能体中心选择一个智能体后,再进入驾驶舱运行。":"先到智能体中心启用一个模板,系统会创建用户专属智能体,再进入驾驶舱。")}),E.jsx("button",{type:"button",className:"automation-action-button automation-action-button--primary",onClick:r,children:"去智能体中心"})]})})}function B4n({embedded:e,agentName:t,cockpitTransitionLoading:r,historyPanel:n,workbenchPanel:i,onReturnToAgentSelection:a}){return E.jsxs(E.Fragment,{children:[!e&&E.jsx("header",{className:"wandox-automation-page-header",children:E.jsxs("div",{className:"automation-workbench-head",children:[E.jsx("div",{children:E.jsx("h2",{children:t})}),E.jsx(ir,{className:"wandox-automation-page-header__back",icon:E.jsx(eC,{}),onClick:a,children:"返回智能体选择"})]})}),E.jsxs("section",{className:`automation-workspace${r?" is-loading":""}`,children:[r&&E.jsx(HB,{className:"automation-workspace-loading"}),n,i]})]})}function F4n(e){const t=ext(e);if(t)return`${gp(t.getMonth()+1)}/${gp(t.getDate())} ${gp(t.getHours())}:${gp(t.getMinutes())}`;const r=e.time.match(/(\d{1,2}):(\d{2})/);return r?`--/-- ${gp(Number(r[1]))}:${r[2]}`:e.time}function M3e(e){if(e.status==="waiting"||e.status==="failed")return"attention";const t=aee(e.businessStatus);return t==="waiting"||t==="failed"?"attention":e.status==="running"||t==="running"?"running":"completed"}function D3e(e){const t=M3e(e),r=aee(e.businessStatus);return e.status==="failed"||r==="failed"?"failed":e.status==="waiting"?"waiting":t==="attention"?r==="waiting"?"waiting":"failed":t==="running"?"running":r??"completed"}function z4n(e){var i;const t=D3e(e);if((i=e.businessStatus)!=null&&i.trim()&&aee(e.businessStatus)===t)return e.businessStatus.trim();if(t==="waiting")return"待确认";if(t==="failed")return"失败";if(t==="completed")return"已完成";const r=e.steps.find(a=>a.status==="running"),n=(r==null?void 0:r.title)??"";return/(?:AI|生成|仿写|分析)/i.test(n)?"AI 生成中":/(?:提交|刊登)/.test(n)?"刊登中":/(?:查询|异步)/.test(n)?"查询中":"进行中"}function j4n(e,t){return["automation-history-task-card",`automation-history-task-card--${D3e(e)}`,t?"automation-history-task-card--active":""].filter(Boolean).join(" ")}function V4n(e,t){const r=e.title.trim(),n=r===String(e.id)||/^(?:agent[_-])?exec(?:ution)?[_-]/i.test(r);return r&&!n?r:t}function H4n(e){var n,i;const t=((n=e.listErrorMessage)==null?void 0:n.trim())||((i=e.listResultSummary)==null?void 0:i.trim());if(t)return t;const r=e.steps.find(a=>["waiting","running","failed"].includes(a.status));return(r==null?void 0:r.description)||e.resultTitle||(r==null?void 0:r.title)||e.summary||"执行任务"}function W4n(e){return[e.triggerType==="scheduled"||e.trigger==="定时运行"?"定时执行":"手动执行",F4n(e)].filter(Boolean).join(" · ")}function G4n({children:e,tone:t="gray"}){return E.jsx("span",{className:`automation-badge automation-badge--${t}`,children:e})}function U4n({model:e,actions:t,footer:r}){const{agentName:n,hasSchedule:i,mode:a,error:s,loading:o,filteredRunCount:l,runCount:u,statusFilter:d,groups:h,recordTotal:f,pagination:{page:p,pageCount:g},deletingExecutionId:m,activeRunId:v}=e,{createRun:y,configureSchedule:x,changeStatusFilter:b,reload:w,openRun:C,openWaitingRun:_,removeRun:T,changePage:k}=t,A=$=>{const I=a!=="run"&&v===$.id,P=j4n($,I),N=D3e($),R=$.recordId!=null&&m===$.recordId;return E.jsxs("div",{className:"automation-history-task-card-shell",children:[E.jsxs("button",{type:"button",className:P,title:$.summary,onClick:()=>$.status==="waiting"?_($):C($.id),children:[E.jsxs("div",{className:"automation-history-task-card__head",children:[E.jsx("strong",{children:V4n($,n)}),E.jsxs("span",{className:`automation-history-task-card__state automation-history-task-card__state--${N}`,children:[E.jsx("i",{}),z4n($)]})]}),E.jsx("span",{className:"automation-history-task-card__subtitle",children:H4n($)}),E.jsx("small",{children:W4n($)})]}),E.jsx(ri,{title:R?"正在删除":"删除执行记录",placement:"top",children:E.jsx("button",{type:"button",className:"automation-history-task-card__delete","aria-label":`删除执行记录:${$.title}`,disabled:m!=null||$.recordId==null,onClick:()=>T($),children:R?E.jsx(Oi,{size:"small"}):E.jsx(Qv,{"aria-hidden":"true"})})})]},$.id)};return E.jsxs("section",{className:"automation-panel automation-history-panel",children:[!s&&E.jsxs("div",{className:"wandox-automation-cockpit-actions",children:[E.jsxs("button",{type:"button",className:"wandox-automation-cockpit-action",onClick:y,children:[E.jsx(Ul,{"aria-hidden":"true"}),E.jsx("strong",{children:"新建任务"})]}),E.jsx(ri,{title:i?"已配置定时触发":"配置定时触发",placement:"right",children:E.jsxs("button",{type:"button",className:`wandox-automation-cockpit-action wandox-automation-cockpit-action--schedule-${i?"active":"idle"}`,onClick:x,"aria-label":i?"已配置定时触发":"配置定时触发",children:[E.jsx(Wo,{"aria-hidden":"true"}),E.jsx("strong",{children:"定时触发"})]})})]}),!s&&E.jsx("div",{className:"automation-history-status-filters",role:"tablist","aria-label":"任务状态筛选",children:[["all","全部"],["attention","待处理"],["running","进行中"],["completed","已完成"]].map(([$,I])=>E.jsx("button",{type:"button",role:"tab","aria-selected":d===$,className:d===$?"is-active":"",onClick:()=>b($),children:I},$))}),E.jsxs("div",{className:`automation-history-list${!s&&!o&&l===0?" is-empty":""}`,children:[s&&E.jsxs("button",{type:"button",className:"automation-memory-card automation-memory-card--failed",onClick:w,children:[E.jsxs("span",{className:"automation-memory-card__contacts","aria-hidden":"true",children:[E.jsx("i",{}),E.jsx("i",{}),E.jsx("i",{})]}),E.jsxs("div",{className:"automation-memory-card__head",children:[E.jsx("span",{className:"automation-memory-card__status",children:"失败"}),E.jsx(G4n,{tone:"red",children:"重试"})]}),E.jsx("strong",{children:"执行历史读取失败"}),E.jsx("small",{children:s}),E.jsx("span",{className:"automation-memory-card__action",children:"重新读取"})]}),!s&&!o&&l===0&&E.jsxs("div",{className:"automation-history-empty",children:[E.jsx("span",{className:"automation-history-empty-icon",children:E.jsx(Wo,{})}),E.jsxs("div",{children:[E.jsx("strong",{children:u>0?"当前筛选暂无任务":"暂无执行历史"}),E.jsx("small",{children:u>0?"切换状态筛选查看其他任务。":"首次运行后,记录会显示在这里。"})]})]}),!s&&h.map($=>E.jsxs("section",{className:`automation-history-task-group automation-history-task-group--${$.key}`,children:[E.jsxs("div",{className:"automation-history-task-group__head",children:[E.jsx("span",{children:$.label}),E.jsx("em",{children:" · "}),E.jsx("em",{children:$.runs.length})]}),E.jsx("div",{className:"automation-history-task-group__stack",children:$.runs.map(A)})]},$.key))]}),!s&&!o&&f>0&&E.jsxs("nav",{className:"automation-history-pagination","aria-label":"执行任务分页",children:[E.jsx("button",{type:"button","aria-label":"上一页",disabled:p<=1,onClick:()=>k(Math.max(1,p-1)),children:"‹"}),E.jsxs("span",{className:"automation-history-pagination__summary",children:[p," / ",g]}),E.jsx("button",{type:"button","aria-label":"下一页",disabled:p>=g,onClick:()=>k(Math.min(g,p+1)),children:"›"})]}),r]})}const OAt="wandox-automation-live-execution-traces-v1",O3e=12;function q4n(){if(typeof window>"u")return[];try{const e=JSON.parse(window.sessionStorage.getItem(OAt)||"[]");return Array.isArray(e)?e.filter(t=>qt(t)&&typeof t.executionId=="string"&&typeof t.agentId=="number"&&typeof t.agentName=="string"&&typeof t.updatedAt=="string"&&Array.isArray(t.steps)).slice(0,O3e):[]}catch{return[]}}function Y4n(e){if(!(typeof window>"u"))try{window.sessionStorage.setItem(OAt,JSON.stringify(e.slice(0,O3e)))}catch{}}function K4n(e){return e.replace(/\s*·\s*(待执行|执行中|等待确认|已完成|执行失败)$/,"").trim()}function X4n(e){return e==="running"?"RUN":e==="waiting"?"HOLD":e==="completed"?"DONE":e==="failed"?"ERR":"QUEUE"}function Z4n(e){return e==="running"?"LIVE":e==="waiting"?"PAUSED":e==="completed"?"SYNCED":e==="failed"?"HALTED":"STANDBY"}function Q4n(e){if(!e)return"--:--:--";const t=new Date(e);return Number.isNaN(t.getTime())?"--:--:--":`${gp(t.getHours())}:${gp(t.getMinutes())}:${gp(t.getSeconds())}`}function J4n(e,t,r,n){const i=new Map(t.map(a=>[a.id,a]));return e.map(a=>{const s=i.get(a.id);if(a.status==="pending")return{...a,occurredAt:s==null?void 0:s.occurredAt};const o=!s||s.status!==a.status||s.title!==a.title||s.detail!==a.detail;return{...a,occurredAt:o?r:s.occurredAt??n??r}})}function eAn(e,t){const r=e.find(i=>i.executionId===t.executionId);return[{...t,steps:J4n(t.steps,(r==null?void 0:r.steps)??[],t.updatedAt,r==null?void 0:r.updatedAt)},...e.filter(i=>i.executionId!==t.executionId)].slice(0,O3e)}function tAn(e){return e==="running"?"执行中":e==="waiting"?"等待确认":e==="completed"?"已完成":e==="failed"?"执行失败":"待执行"}function rAn({trace:e,steps:t,stepsRef:r}){const n=(e==null?void 0:e.status)??"empty";return E.jsxs("section",{className:`wandox-automation-live-trace wandox-automation-live-trace--${n}`,"aria-label":"实时执行动态",children:[E.jsxs("div",{className:"wandox-automation-live-trace__terminal-bar","aria-hidden":"true",children:[E.jsxs("span",{className:"wandox-automation-live-trace__terminal-lights",children:[E.jsx("i",{}),E.jsx("i",{}),E.jsx("i",{})]}),E.jsx("strong",{children:"实时执行动态"}),E.jsx("em",{className:`wandox-automation-live-trace__stream-status wandox-automation-live-trace__stream-status--${n}`,children:Z4n(n)})]}),t.length>0?E.jsx("div",{ref:r,className:"wandox-automation-live-trace__steps",role:"log","aria-live":"polite",children:t.map(i=>{const a=K4n(i.detail);return E.jsxs("div",{className:`wandox-automation-live-trace__step wandox-automation-live-trace__step--${i.status} wandox-automation-live-trace__step--${i.kind??"step"}`,children:[E.jsx("time",{dateTime:i.occurredAt,children:Q4n(i.status==="pending"?void 0:i.occurredAt??(e==null?void 0:e.updatedAt))}),E.jsxs("div",{className:"wandox-automation-live-trace__copy",children:[E.jsxs("strong",{title:i.title,children:[E.jsx("b",{children:"$"})," ",i.title]}),E.jsxs("span",{className:"wandox-automation-live-trace__state","aria-label":tAn(i.status),children:["[",X4n(i.status),"]"]}),a&&E.jsxs("small",{children:[E.jsx("b",{children:"›"}),a]})]})]},i.id)})}):E.jsxs("div",{className:"wandox-automation-live-trace__empty",children:[E.jsx("time",{children:"--:--:--"}),E.jsxs("div",{children:[E.jsxs("strong",{children:[E.jsx("b",{children:"$"})," waiting_for_substep_events"]}),E.jsx("small",{children:"监听后台执行流..."})]}),E.jsx("span",{"aria-hidden":"true",children:"[IDLE]"})]})]})}function nAn({embedded:e,agentName:t,cockpitTransitionLoading:r,history:n,activeLiveExecutionTrace:i,activeLiveExecutionSubsteps:a,liveTraceStepsRef:s,workbenchMode:o,activeRunFailed:l,activeWorkbenchStageKey:u,waitingActiveStageKey:d,selectedWorkbenchStepHasConfirmPreview:h,renderWorkbenchFlow:f,renderFailedTaskRerunAction:p,onReturnToAgentSelection:g}){return E.jsx(B4n,{embedded:e,agentName:t,cockpitTransitionLoading:r,onReturnToAgentSelection:g,historyPanel:E.jsx(U4n,{...n,footer:E.jsx(rAn,{trace:i,steps:a,stepsRef:s})}),workbenchPanel:E.jsx("section",{className:`automation-workbench automation-workbench--flow automation-workbench--${o}${o==="detail"&&l?" is-failed":""}`,children:E.jsx("div",{className:`automation-workbench-body automation-workbench-body--flow${o==="waiting"&&u.startsWith("step:")&&u===d?" is-waiting-step":""}${u.startsWith("step:")?" is-step-stage":""}${h?" is-confirm-preview-stage":""}${u==="params"?" is-params-stage":""}${u==="complete"?" is-complete-stage":""}`,children:o==="run"?f():E.jsxs("div",{className:"wandox-automation-flow-layout",children:[f(),p()]})})})})}function iAn({model:e,actions:t,slots:r}){return E.jsx(nAn,{embedded:e.embedded,agentName:e.agentName,cockpitTransitionLoading:e.transitionLoading,onReturnToAgentSelection:t.back,history:{model:e.history,actions:t.history},activeLiveExecutionTrace:e.liveTrace.active,activeLiveExecutionSubsteps:e.liveTrace.substeps,liveTraceStepsRef:e.liveTrace.stepsRef,workbenchMode:e.workbench.mode,activeRunFailed:e.workbench.activeRunFailed,activeWorkbenchStageKey:e.workbench.activeStageKey,waitingActiveStageKey:e.workbench.waitingActiveStageKey,selectedWorkbenchStepHasConfirmPreview:e.workbench.selectedStepHasConfirmPreview,renderWorkbenchFlow:r.renderWorkbenchFlow,renderFailedTaskRerunAction:r.renderFailedTaskRerunAction})}function aAn({open:e,agents:t,loading:r=!1,sender:n,summary:i,onClose:a,onConfirm:s,onCreateAgent:o}){const[l,u]=S.useState(null),[d,h]=S.useState("");S.useEffect(()=>{e&&(u(null),h(""))},[e]);const f=S.useMemo(()=>{const g=d.trim().toLowerCase();return g?t.filter(m=>{var v;return m.name.toLowerCase().includes(g)||((v=m.description)==null?void 0:v.toLowerCase().includes(g))}):t},[t,d]),p=S.useMemo(()=>t.find(g=>g.id===l)??null,[t,l]);return E.jsxs(ki,{className:"wandox-inbox-process",open:e,title:null,footer:null,width:680,centered:!0,destroyOnHidden:!0,onCancel:a,children:[E.jsxs("div",{className:"wandox-inbox-process__header",children:[E.jsx("span",{className:"wandox-inbox-process__eyebrow",children:"收件箱流转"}),E.jsx("h2",{className:"wandox-inbox-process__title",children:"选择承接智能体"}),E.jsx("p",{className:"wandox-inbox-process__description",children:"选择后进入驾驶舱,继续配置本次任务并查看完整执行过程。"})]}),E.jsxs("div",{className:"wandox-inbox-process__steps","aria-label":"流转处理步骤",children:[E.jsxs("div",{className:"wandox-inbox-process__step wandox-inbox-process__step--active",children:[E.jsx("span",{className:"wandox-inbox-process__step-number",children:"1"}),E.jsx("span",{className:"wandox-inbox-process__step-copy",children:"选择智能体"})]}),E.jsx("span",{className:"wandox-inbox-process__step-line","aria-hidden":"true"}),E.jsxs("div",{className:"wandox-inbox-process__step",children:[E.jsx("span",{className:"wandox-inbox-process__step-number",children:"2"}),E.jsx("span",{className:"wandox-inbox-process__step-copy",children:"配置任务"})]}),E.jsx("span",{className:"wandox-inbox-process__step-line","aria-hidden":"true"}),E.jsxs("div",{className:"wandox-inbox-process__step",children:[E.jsx("span",{className:"wandox-inbox-process__step-number",children:"3"}),E.jsx("span",{className:"wandox-inbox-process__step-copy",children:"执行并记录"})]})]}),E.jsxs("div",{className:"wandox-inbox-process__source",children:[E.jsx("span",{className:"wandox-inbox-process__source-avatar","aria-hidden":"true",children:(n||"同事").slice(0,1)}),E.jsxs("div",{className:"wandox-inbox-process__source-copy",children:[E.jsxs("span",{className:"wandox-inbox-process__source-label",children:[n||"同事"," 转交的执行结果"]}),E.jsx("strong",{className:"wandox-inbox-process__source-summary",children:i||"当前执行结果将作为本次任务的上游数据"})]})]}),E.jsx(zr,{className:"wandox-inbox-process__search",value:d,prefix:E.jsx(tg,{}),placeholder:"搜索智能体",allowClear:!0,onChange:g=>h(g.target.value)}),E.jsx("div",{className:"wandox-inbox-process__agent-list",children:r?E.jsxs("div",{className:"wandox-inbox-process__state",children:[E.jsx(Oi,{size:"small"}),E.jsx("span",{className:"wandox-inbox-process__state-text",children:"正在读取智能体"})]}):f.length>0?f.map(g=>{const m=l===g.id;return E.jsxs("button",{type:"button",className:`wandox-inbox-process__agent${m?" wandox-inbox-process__agent--selected":""}`,"aria-pressed":m,onClick:()=>u(g.id),children:[E.jsx("span",{className:"wandox-inbox-process__agent-avatar","aria-hidden":"true",children:g.name.slice(0,1)}),E.jsxs("span",{className:"wandox-inbox-process__agent-copy",children:[E.jsx("strong",{className:"wandox-inbox-process__agent-name",children:g.name}),E.jsx("span",{className:"wandox-inbox-process__agent-description",children:g.description||"进入驾驶舱后配置本次运行参数"})]}),E.jsx("span",{className:"wandox-inbox-process__agent-check","aria-hidden":"true",children:m&&E.jsx(Tm,{})})]},g.id)}):E.jsxs("div",{className:"wandox-inbox-process__empty",children:[E.jsx(Ja,{image:Ja.PRESENTED_IMAGE_SIMPLE,description:d?"没有匹配的智能体":"暂无可用智能体"}),!d&&E.jsxs("button",{type:"button",className:"wandox-inbox-process__create-link",onClick:o,children:[E.jsx(Ul,{}),"创建智能体承接"]})]})}),E.jsxs("div",{className:"wandox-inbox-process__footer",children:[E.jsx("span",{className:"wandox-inbox-process__footer-note",children:"流转来源会自动关联到新的执行记忆。"}),E.jsxs("div",{className:"wandox-inbox-process__footer-actions",children:[E.jsx("button",{type:"button",className:"wandox-inbox-process__button wandox-inbox-process__button--secondary",onClick:a,children:"取消"}),E.jsx("button",{type:"button",className:"wandox-inbox-process__button wandox-inbox-process__button--primary",disabled:!p,onClick:()=>p&&s(p),children:"下一步:配置任务"})]})]})]})}function BAt(e){const t=Uh(e);return qt(t)?qt(t.result)?t.result:t:{}}function sAn(e){const t=Uh(e),r=BAt(e);return r.result_data??r.output_data??r.output??r.data??(qt(t)?t.result_data??t.output_data??t.output??t.data:t)}function oAn(e){const t=Uh(e),r=BAt(e);return qt(t)?String(r.result_summary??t.result_summary??""):""}function lAn({loading:e,error:t,detail:r,onRetry:n}){if(e)return E.jsxs("div",{className:"automation-inbox-result-empty",children:[E.jsx(Oi,{size:"small"}),E.jsx("span",{children:"正在读取执行结果"})]});if(t)return E.jsxs("div",{className:"automation-inbox-result-empty is-error",children:[E.jsx(d4r,{}),E.jsx("span",{children:t}),E.jsx("button",{type:"button",className:"automation-action-button automation-action-button--compact automation-action-button--danger",onClick:n,children:"重试"})]});if(!r)return E.jsxs("div",{className:"automation-inbox-result-empty",children:[E.jsx(dx,{}),E.jsx("span",{children:"暂无执行结果"})]});const i=sAn(r),a=oAn(r),s=Cs(i)?CT(i):a;return Cs(s)?E.jsx(To,{payload:s}):E.jsxs("div",{className:"automation-inbox-result-empty",children:[E.jsx(dx,{}),E.jsx("span",{children:"暂无执行结果内容"})]})}function cAn({model:e,actions:t}){const{embedded:r,transferCount:n,loading:i,groups:a,active:s,rejectingTransferId:o}=e,l=(s==null?void 0:s.transfer)??null,u=(s==null?void 0:s.pending)??!1,d=(s==null?void 0:s.sender)??"",h=(s==null?void 0:s.time)??"",f=s==null?void 0:s.resultContent,{back:p,refresh:g,selectTransfer:m,process:v,createAgent:y,reject:x}=t;return E.jsxs(E.Fragment,{children:[!r&&E.jsx("header",{className:"wandox-automation-page-header",children:E.jsxs("div",{className:"automation-workbench-head",children:[E.jsx("div",{children:E.jsx("h2",{children:"结果收件箱"})}),E.jsx(ir,{className:"wandox-automation-page-header__back",icon:E.jsx(eC,{}),onClick:p,children:"返回智能体选择"})]})}),E.jsxs("section",{className:"automation-workspace automation-workspace--inbox",children:[E.jsxs("section",{className:"automation-panel automation-history-panel automation-history-panel--inbox",children:[E.jsxs("div",{className:"automation-panel-head",children:[E.jsx("div",{children:E.jsx("h2",{children:"收件记录"})}),E.jsx("button",{type:"button",className:"wandox-automation-inbox-refresh","aria-label":"刷新收件",title:"刷新收件",onClick:g,disabled:i,children:i?E.jsx(Oi,{size:"small"}):E.jsx(Xv,{})})]}),E.jsx("div",{className:`automation-history-list automation-inbox-memory-list${!i&&n===0?" is-empty":""}`,children:i&&n===0?E.jsxs("div",{className:"automation-history-empty",children:[E.jsx("span",{className:"automation-history-empty-icon",children:E.jsx(Oi,{size:"small"})}),E.jsxs("div",{children:[E.jsx("strong",{children:"正在读取收件"}),E.jsx("small",{children:"收件列表会按转交时间展示。"})]})]}):n===0?E.jsxs("div",{className:"automation-history-empty",children:[E.jsx("span",{className:"automation-history-empty-icon",children:E.jsx(dx,{})}),E.jsxs("div",{children:[E.jsx("strong",{children:"暂无收件"}),E.jsx("small",{children:"同事转交执行结果后,会出现在这里。"})]})]}):a.map(b=>E.jsxs("div",{className:"automation-memory-group",children:[E.jsx("div",{className:"automation-memory-date",children:E.jsx("span",{children:b.label})}),E.jsx("div",{className:"automation-memory-stack",children:b.items.map(w=>{const C=(l==null?void 0:l.id)===w.id;return E.jsxs("button",{type:"button",className:`automation-inbox-memory-card automation-inbox-memory-card--${w.runStatus}${C?" automation-inbox-memory-card--active":""}`,title:w.summary,onClick:()=>m(w.id),children:[E.jsx("span",{className:"automation-inbox-memory-card__icon","aria-hidden":"true",children:E.jsx(dx,{})}),E.jsxs("div",{className:"automation-inbox-memory-card__main",children:[E.jsx("strong",{children:w.primaryText}),E.jsx("small",{children:w.time})]}),E.jsx("span",{className:"automation-inbox-memory-card__state",children:w.statusText})]},w.id)})})]},b.key))})]}),E.jsx("section",{className:`automation-workbench automation-workbench--inbox${(l==null?void 0:l.status)==="rejected"?" is-failed":""}${l&&u?" has-footer":""}`,children:E.jsxs("div",{className:"wandox-automation-inbox-detail",children:[E.jsx("div",{className:"automation-workbench-body wandox-automation-inbox-detail__body",children:i&&!l?E.jsxs("section",{className:"automation-workbench-empty wandox-automation-inbox-detail__empty",children:[E.jsx(Oi,{}),E.jsx("strong",{children:"正在读取收件详情"}),E.jsx("span",{children:"读取完成后会显示当前收件。"})]}):l?E.jsxs("section",{className:"wandox-automation-inbox-bubble",children:[E.jsxs("div",{className:"wandox-automation-inbox-bubble__head",children:[E.jsx("span",{className:"wandox-automation-inbox-bubble__avatar","aria-hidden":"true",children:(d||"同事").slice(0,1)}),E.jsxs("div",{className:"wandox-automation-inbox-bubble__meta",children:[E.jsx("span",{className:"wandox-automation-inbox-bubble__sender",children:d||"同事"}),E.jsx("span",{className:"wandox-automation-inbox-bubble__action",children:"转交"}),h&&E.jsx("span",{className:"wandox-automation-inbox-bubble__time",children:h})]})]}),E.jsx("div",{className:"wandox-automation-inbox-bubble__content",children:E.jsx("div",{className:"automation-inbox-result-content",children:f})})]}):E.jsxs("section",{className:"automation-workbench-empty wandox-automation-inbox-detail__empty",children:[E.jsx(dx,{}),E.jsx("strong",{children:"暂无收件"}),E.jsx("span",{children:"有新的结果流转时,这里会显示处理入口。"})]})}),l&&u&&E.jsxs("div",{className:"automation-workbench-footer wandox-automation-inbox-detail__footer",children:[E.jsx("div",{className:"wandox-automation-inbox-detail__footer-note",children:"处理当前流转结果,或创建一个新智能体承接后续执行。"}),E.jsxs("div",{className:"wandox-automation-inbox-detail__footer-actions",children:[E.jsxs("button",{type:"button",className:"automation-inbox-action-button automation-inbox-action-button--process",onClick:()=>v(l),children:[E.jsx(Bf,{}),"处理"]}),E.jsxs("button",{type:"button",className:"automation-inbox-action-button automation-inbox-action-button--create",onClick:()=>y(l),children:[E.jsx(Ul,{}),"创建智能体"]}),E.jsxs("button",{type:"button",className:"automation-inbox-action-button automation-inbox-action-button--reject",disabled:o===l.id,onClick:()=>x(l),children:[E.jsx(gs,{}),o===l.id?"拒绝中":"拒绝"]})]})]})]})})]})]})}function uAn({model:e,actions:t}){return E.jsxs(E.Fragment,{children:[E.jsx(cAn,{model:{embedded:e.embedded,transferCount:e.transferCount,loading:e.loading,groups:e.groups,active:e.active?{...e.active,resultContent:E.jsx(lAn,{loading:e.result.loading,error:e.result.error,detail:e.result.detail,onRetry:t.retryResult})}:null,rejectingTransferId:e.rejectingTransferId},actions:{back:t.back,refresh:t.refresh,selectTransfer:t.selectTransfer,process:t.process,createAgent:t.createAgent,reject:t.reject}}),E.jsx(aAn,{open:!!e.process.transfer,agents:e.process.agents,loading:e.process.loading,sender:e.process.sender,summary:e.process.summary,onClose:t.closeProcess,onConfirm:t.continueProcess,onCreateAgent:t.createAgentFromProcess})]})}function B3e(e){return e?typeof e.has_schedule=="boolean"?e.has_schedule:!!(e.schedule_enabled||e.schedule_cron||e.next_run_at):!1}function dAn(e){if(!B3e(e))return"未设置定时";if(e.schedule_display)return e.schedule_display;if(e.schedule_cron)return e.schedule_cron;const t=Cw(e.next_run_at);return t?`下次 ${t}`:"已设置定时"}function hAn(e){const t=e.execution_count??0,r=Cw(e.last_executed_at);return!r&&t===0?{time:"尚未运行",detail:"暂无运行记录"}:e.last_result_status==="failed"?{time:r||"最近一次",detail:"上次运行失败"}:e.last_result_status==="completed"?{time:r||"最近一次",detail:"上次运行成功"}:{time:r||"已有运行记录",detail:`已运行 ${t} 次`}}function fAn(e){const t=e.input_data_schema,r=Array.isArray(t)?t.length:0,n=Array.isArray(e.tags)?e.tags.slice(0,2).join(" · "):"";return r>0?`${r} 个运行参数`:n||e.category||"可直接启用"}function pAn(e){const t=`${e.name} ${e.scene_name||""}`.toLowerCase();return t.includes("广告")?E.jsx(Ckr,{}):t.includes("listing")||t.includes("标题")?E.jsx(gge,{}):t.includes("刊登")||t.includes("商品")||t.includes("库存")?E.jsx(qkr,{}):t.includes("关键词")||t.includes("选品")||t.includes("竞品")?E.jsx(tg,{}):E.jsx(U0e,{})}function FAt({loading:e,error:t,empty:r,onReload:n}){return e?E.jsxs("div",{className:"automation-market-state",children:[E.jsx(Oi,{size:"small"}),E.jsx("span",{children:"正在读取自动化列表"})]}):t?E.jsxs("div",{className:"automation-market-state automation-market-state--error",children:[E.jsx("strong",{children:"列表读取失败"}),E.jsx("span",{children:t}),n&&E.jsx(ir,{onClick:n,children:"重新加载"})]}):E.jsxs("div",{className:"automation-market-state",children:[E.jsx(Tq,{}),E.jsx("strong",{children:r}),E.jsx("span",{children:"从下方模板启用后,会显示在这里。"})]})}function gAn({embedded:e,agentsLoading:t,agentsError:r,marketLoading:n,marketError:i,marketTemplates:a,availableAgents:s,subscribingTemplateId:o,deletingAgentId:l,pendingInboxCount:u,onReloadMarket:d,onEnableMarketTemplate:h,onSelectAgent:f,onConfigureSchedule:p,onDeleteCustomAgent:g,onOpenInbox:m,onCreateAgent:v}){const y=a.filter(b=>b.my_status!=="enabled"),x=s.filter(B3e).length;return E.jsx("section",{className:"automation-market",children:E.jsxs("div",{className:"automation-market__content",children:[E.jsxs("header",{className:"automation-market-intro",children:[E.jsxs("div",{className:"automation-market-intro__copy",children:[E.jsx("h1",{children:"我的自动化"}),E.jsx("p",{children:"进入工作台手动执行,或为重复工作设置定时触发。"})]}),E.jsxs("div",{className:"automation-market-intro__aside",children:[E.jsxs("div",{className:"automation-market-summary","aria-label":"自动化概览",children:[E.jsxs("span",{"aria-label":`${s.length} 个`,children:[E.jsx("strong",{children:s.length})," 个自动化"]}),E.jsxs("span",{children:[E.jsx("strong",{children:x})," 个已设置定时"]})]}),!e&&E.jsxs("div",{className:"automation-market-tools",children:[E.jsx(ri,{title:u>0?`收件箱 · ${u} 条待处理`:"收件箱",children:E.jsx(gA,{dot:u>0,children:E.jsx(ir,{className:"automation-market-tools__button",icon:E.jsx(dx,{}),"aria-label":"收件箱",onClick:m})})}),E.jsx(ri,{title:"创建自动化",children:E.jsx(ir,{className:"automation-market-tools__button",icon:E.jsx(Ul,{}),"aria-label":"创建自动化",onClick:v})})]})]})]}),E.jsxs("table",{className:"automation-market-list","aria-label":"我的自动化列表",children:[E.jsx("thead",{children:E.jsxs("tr",{className:"automation-market-list__columns",children:[E.jsx("th",{scope:"col",children:"自动化与用途"}),E.jsx("th",{scope:"col",children:"运行状态"}),E.jsx("th",{scope:"col",children:"最近运行"}),E.jsx("th",{scope:"col","aria-label":"操作"})]})}),E.jsx("tbody",{children:s.length>0?s.map(b=>{const w=l===b.id,C=b.is_from_market?"移除":"删除",_=B3e(b),T=hAn(b),k=[{key:"schedule",label:_?"管理定时":"设置定时",icon:E.jsx(Wo,{})},{type:"divider"},{key:"remove",label:w?`${C}中`:C,danger:!0,disabled:w}];return E.jsxs("tr",{className:"automation-market-row",children:[E.jsxs("td",{className:"automation-market-row__agent",children:[E.jsx("span",{className:"automation-market-row__avatar",children:pAn(b)}),E.jsxs("div",{className:"automation-market-row__copy",children:[E.jsx("strong",{title:b.name,children:b.name}),E.jsx("span",{title:b.description||b.scene_name||void 0,children:b.description||b.scene_name||"运行、查看记录并配置定时任务"})]})]}),E.jsxs("td",{className:`automation-market-row__state${_?" automation-market-row__state--active":""}`,children:[E.jsx("i",{}),E.jsx("span",{children:dAn(b)})]}),E.jsxs("td",{className:"automation-market-row__last",children:[E.jsx("strong",{children:T.time}),E.jsx("span",{children:T.detail})]}),E.jsxs("td",{className:"automation-market-row__actions",children:[E.jsx(ir,{className:"automation-market-row__enter",onClick:()=>f(b),children:"进入工作台"}),E.jsx(Kv,{trigger:["click"],placement:"bottomRight",menu:{items:k,onClick:({key:A})=>{A==="schedule"&&p(b),A==="history"&&f(b),A==="remove"&&g(b)}},children:E.jsx(ir,{type:"text",className:"automation-market-row__more",icon:E.jsx(aU,{}),"aria-label":`${b.name}的更多操作`})})]})]},`agent-${b.id}`)}):E.jsx("tr",{children:E.jsx("td",{className:"automation-market-state-cell",colSpan:4,children:E.jsx(FAt,{loading:t,error:r,empty:"暂无可用自动化",onReload:d})})})})]}),(n||i||y.length>0)&&E.jsxs("section",{className:"automation-market-discovery",children:[E.jsxs("div",{className:"automation-market-discovery__head",children:[E.jsxs("div",{children:[E.jsx("h2",{children:"可启用自动化"}),E.jsx("p",{children:"启用后会添加到“我的自动化”。"})]}),y.length>0&&E.jsxs("span",{children:[y.length," 个模板"]})]}),E.jsxs("table",{className:"automation-market-list automation-market-list--templates","aria-label":"可启用自动化列表",children:[E.jsx("thead",{children:E.jsxs("tr",{className:"automation-market-list__columns",children:[E.jsx("th",{scope:"col",children:"自动化与用途"}),E.jsx("th",{scope:"col",children:"配置"}),E.jsx("th",{scope:"col",children:"分类"}),E.jsx("th",{scope:"col","aria-label":"操作"})]})}),E.jsx("tbody",{children:y.length>0?y.map(b=>{const w=o===b.id;return E.jsxs("tr",{className:"automation-market-row automation-market-row--template",children:[E.jsxs("td",{className:"automation-market-row__agent",children:[E.jsx("span",{className:"automation-market-row__avatar",children:E.jsx(Tq,{})}),E.jsxs("div",{className:"automation-market-row__copy",children:[E.jsx("strong",{title:b.name,children:b.name}),E.jsx("span",{title:b.description||void 0,children:b.description||"启用后即可进入工作台运行"})]})]}),E.jsx("td",{className:"automation-market-row__meta",children:fAn(b)}),E.jsx("td",{className:"automation-market-row__meta",children:b.category||"通用"}),E.jsx("td",{className:"automation-market-row__actions",children:E.jsx(ir,{className:"automation-market-row__enter",loading:w,disabled:o!==null,onClick:()=>h(b),children:w?"启用中":"启用"})})]},`market-${b.id}`)}):E.jsx("tr",{children:E.jsx("td",{className:"automation-market-state-cell",colSpan:4,children:E.jsx(FAt,{loading:n,error:i,empty:"暂无可启用模板",onReload:d})})})})]})]})]})})}function mAn({model:e,actions:t}){return E.jsx(gAn,{...e,onReloadMarket:t.reload,onEnableMarketTemplate:t.enableTemplate,onSelectAgent:t.selectAgent,onConfigureSchedule:t.configureSchedule,onDeleteCustomAgent:t.deleteAgent,onOpenInbox:t.openInbox,onCreateAgent:t.createAgent})}function vAn({text:e}){return e?E.jsx("div",{className:"automation-toast",children:e}):null}function yAn({view:e,market:t,inbox:r,cockpit:n,empty:i,transferModal:a,scheduleModal:s,toast:o}){return E.jsxs("main",{className:"automation",children:[e==="market"?E.jsx(mAn,{...t}):e==="inbox"?E.jsx(uAn,{...r}):n?E.jsx(iAn,{...n}):E.jsx(O4n,{...i}),E.jsx(A3e,{...a}),E.jsx(D4n,{...s}),E.jsx(Jkn,{}),E.jsx(s4n,{}),E.jsx(vAn,{text:o})]})}function bAn(e){const t=typeof e=="number"?e:Number(e);return Number.isFinite(t)&&t>0?t:null}function xAn(e,t){return bAn(t??e.execution_record_id??e.execution_id)}function wAn(e,{selectedAgentId:t,recommendedAgentId:r}){return e.agent_id?e.agent_id===t||e.agent_id===r&&r!=null:!0}function SAn(){const e=S.useRef(""),t=S.useRef(""),r=S.useCallback(()=>{e.current="",t.current=""},[]),n=S.useCallback((a,s)=>{const o=`${a}:${s||""}`;return e.current===o?!1:(e.current=o,!0)},[]),i=S.useCallback((a,s,o)=>{const l=`${a}:${s}:${String(o??"")}`;return t.current===l?!1:(t.current=l,!0)},[]);return{reset:r,shouldHandleWaiting:n,shouldHandleFinished:i}}const F3e={phase:"idle",drawer:null,waitingRunId:"",waitingInfo:null,waitingLoading:!1,waitingSubmitting:!1};function CAn(e,t){if(t.type==="execution_started")return{...e,phase:"running",waitingRunId:"",waitingInfo:null,drawer:e.drawer==="run"||e.drawer==="waiting"?null:e.drawer};if(t.type==="execution_finished")return{...e,phase:t.phase,waitingRunId:"",waitingInfo:null,waitingLoading:!1,waitingSubmitting:!1,drawer:"detail"};if(t.type==="execution_cancelled")return{...F3e};const r=typeof t.update=="function"?t.update(e):t.update;return{...e,...r}}function v$(e,t){return r=>{e({type:"update",update:n=>({[t]:typeof r=="function"?r(n[t]):r})})}}function _An(){const[e,t]=S.useReducer(CAn,F3e),r=S.useMemo(()=>v$(t,"phase"),[]),n=S.useMemo(()=>v$(t,"drawer"),[]),i=S.useMemo(()=>v$(t,"waitingRunId"),[]),a=S.useMemo(()=>v$(t,"waitingInfo"),[]),s=S.useMemo(()=>v$(t,"waitingLoading"),[]),o=S.useMemo(()=>v$(t,"waitingSubmitting"),[]),l=S.useCallback(()=>t({type:"update",update:{drawer:"detail"}}),[]),u=S.useCallback(($=!1)=>t({type:"update",update:I=>({drawer:"run",phase:$?I.phase:"idle"})}),[]),d=S.useCallback($=>t({type:"update",update:{waitingRunId:$,waitingInfo:null,waitingLoading:!0,drawer:"waiting"}}),[]),h=S.useCallback(()=>t({type:"update",update:{waitingRunId:"",waitingInfo:null,waitingLoading:!1,waitingSubmitting:!1,drawer:null}}),[]),f=S.useCallback(()=>t({type:"update",update:F3e}),[]),p=S.useCallback(()=>t({type:"execution_cancelled"}),[]),g=S.useCallback(($,I)=>t({type:"update",update:P=>({waitingInfo:$,waitingRunId:I??P.waitingRunId,waitingLoading:!1,drawer:"waiting"})}),[]),m=S.useCallback(()=>t({type:"execution_started"}),[]),v=S.useCallback(()=>t({type:"update",update:{phase:"running",drawer:"run",waitingRunId:"",waitingInfo:null}}),[]),y=S.useCallback(()=>t({type:"update",update:{phase:"idle",drawer:"run"}}),[]),x=S.useCallback(()=>t({type:"update",update:{phase:"failed"}}),[]),b=S.useCallback(()=>t({type:"update",update:{phase:"running"}}),[]),w=S.useCallback(()=>t({type:"update",update:{phase:"idle"}}),[]),C=S.useCallback(()=>t({type:"update",update:{phase:"review_content"}}),[]),_=S.useCallback(()=>t({type:"update",update:{phase:"review_submit"}}),[]),T=S.useCallback(()=>t({type:"update",update:{phase:"polling"}}),[]),k=S.useCallback(()=>t({type:"update",update:{phase:"completed"}}),[]),A=S.useCallback($=>t({type:"execution_finished",phase:$}),[]);return{...e,setPhase:r,setDrawer:n,setWaitingRunId:i,setWaitingInfo:a,setWaitingLoading:s,setWaitingSubmitting:o,openDetailDrawer:l,openRunDrawer:u,beginWaiting:d,clearWaiting:h,resetExecution:f,cancelExecution:p,advanceWaiting:g,executionStarted:m,beginExecution:v,prepareRun:y,failExecution:x,setRunningPhase:b,setIdlePhase:w,setReviewContentPhase:C,setReviewSubmitPhase:_,setPollingPhase:T,setCompletedPhase:k,executionFinished:A}}function TAn(){const[e,t]=S.useState(q4n);S.useEffect(()=>{Y4n(e)},[e]);const r=S.useCallback(n=>{t(i=>eAn(i,n))},[]);return{traces:e,recordEvent:r}}function zAt(...e){return e.find(Cs)}function jAt(e,t){const r=e.result_data,n=xke(r),i=Ske(r,n,3);if(i.length>0)return i;const s=[["处理状态",DB(e.status)==="completed"&&t?`已完成 ${t} 个步骤`:ST(e)],["触发方式",e.trigger_display||(e.trigger_type==="scheduled"?"定时运行":"手动运行")]];return e.duration_ms&&s.push(["耗时",`${Math.round(Number(e.duration_ms)/1e3)} 秒`]),s.filter(([,o])=>Cs(o)).slice(0,3)}function VAt(e,t,r,n=new Map){return see(t,n)}function z3e(e){if(!qt(e))return;const t=qt(e.execution)?e.execution:{},r=qt(e.workflow)?e.workflow:{},n=qt(e.chain)?e.chain:{};return zAt(e.steps,e.workflow_steps,e.execution_steps,e.playbooks,t.steps,t.workflow_steps,t.execution_steps,t.playbooks,r.steps,r.playbooks,n.steps,n.playbooks)}function are(e){const t=Uh(e);if(!qt(t))return;const r=qt(t.execution)?t.execution:{},n=qt(t.result)?t.result:{},i=z3e(t),a=Array.isArray(i)?i.flatMap(s=>qt(s)?[s.input_data,s.input]:[]):[];return hxt(r.input_data,r.params,r.input_params,r.input,r.run_params,r.execution_params,t.input_data,t.params,t.input_params,t.input,n.input_data,n.params,n.input_params,n.input,...a)}function sre(e,t){const r=Uh(e),n=qt(r)&&qt(r.execution)?r.execution:{};return Lfn(t,qt(r)?r.input_params:void 0,n.input_params)}function HAt(e){return Cs(e)?typeof e=="string"?e.trim():_w(e):""}function EAn(e){const t=Rg(e.execution_title,e.agent_name)||"智能体执行",r=e,n=e.started_at??r.created_at??e.completed_at??r.updated_at,i=e.execution_steps??e.workflow_steps??e.steps,a=Sxt(e.result_data,e,i),s=DB(e.status),o=vke(i),l=e,u=hxt(l.input_data,l.params,l.input_params,l.input,l.run_params,l.execution_params),d=qt(l.result)?l.result:{},h=l.result_id??l.resultId??d.id??d.result_id,f=Zy(l.current_step_index);return{id:String(e.id??e.execution_id),recordId:Number.isFinite(Number(e.id))?Number(e.id):void 0,currentStepIndex:f,currentStepId:mxt(i,f),resultId:h?String(h):void 0,title:t,time:Cw(n)||"未知时间",occurredAt:n,trigger:e.trigger_type==="scheduled"?"定时运行":"手动运行",triggerType:e.trigger_type,status:s,businessStatus:e.business_status??void 0,summary:a.subtitle||(s==="completed"?"":ST(e)),resultTitle:a.title||Ng(t,e.result_summary,e.error_message),listResultSummary:HAt(e.result_summary),listErrorMessage:HAt(e.error_message),resultContent:a.content,resultPayload:a.payload,params:VAt(e,u),inputValues:FB(u),steps:mke({...e,summary:ST(e)}),outputs:a.meta.length>0?a.meta:jAt(e,o),detailData:a.detailData}}function WAt(e){const t=Uh(e);if(!qt(t))return;const r=qt(t.execution)?t.execution:{},n=qt(t.result)?t.result:{};return iee(n.id??n.result_id??r.result_id??t.result_id)}function kAn(e,t){return lke([t,...e.filter(r=>r.id!==t.id)])}function AAn(e,t,r){let n=!1;const i=e.map(a=>{if(a.id!==t)return a;const s=r(a);return s!==a&&(n=!0),s});return n?i:e}function IAn(e,t){const r=e.filter(n=>n.id!==t);return r.length===e.length?e:r}function $An(e,t){return e>1&&t<=1?e-1:e}function RAn({selectedAgent:e,setActiveRunId:t,beginWaiting:r,advanceWaiting:n,clearWaiting:i,setWaitingLoading:a,getExecutionDetail:s,updateRun:o,notify:l,getErrorMessage:u}){return S.useCallback(async d=>{t(d.id);const h=Number(d.id);if(!Number.isFinite(h)){Et.error("无法定位执行记录");return}r(d.id);try{const[f,p]=await Promise.allSettled([kI(h),s(h)]);if(p.status==="fulfilled"){const m=p.value,v=are(m),y=sre(m,e==null?void 0:e.input_params);Lg(v)&&o(d.id,x=>gke(x,v,y))}if(f.status==="rejected")throw f.reason;const g=f.value;if(!g){Et.info("当前执行记录暂无待处理步骤"),i();return}n(g,d.id),l("已读取待处理表单")}catch(f){Et.error(u(f,"加载待处理表单失败")),i()}finally{a(!1)}},[n,r,i,u,s,l,e,t,a,o])}function NAn({isExecuting:e,currentExecutionId:t,selectedAgentId:r,cancelledExecutionRef:n,abort:i,cancelExecution:a,resetLiveExecutionState:s,setActiveRunSnapshot:o,notify:l,refreshLiveRuns:u}){const d=bl(),h=jf({...xp.executions.cancel(),onSuccess:(f,p)=>Xh(d,{type:"execution-cancelled",executionId:p,agentId:r??void 0},{refetchType:"none"})});return S.useCallback(async()=>{if(e){n.current=!0,i(),a(),s(),o(f=>f&&f.status==="running"?{...f,status:"failed",summary:"执行已取消"}:f);try{t!=null&&Number.isFinite(Number(t))&&await h.mutateAsync(Number(t)),l("执行已取消"),r&&u()}catch(f){Et.error(Ao(f,"取消执行失败"))}}},[i,a,h,n,t,e,l,u,s,r,o])}function LAn({isExecuting:e,reExecutingStepId:t,setReExecutingStepId:r,resetExecutionEvents:n,clearExecutionDetail:i,setActiveRunId:a,executionStarted:s,failExecution:o,reExecuteStep:l,notify:u,refreshLiveRuns:d}){return S.useCallback(async(h,f)=>{if(e||t||!II(f))return;const p=Number(f.id);if(!Number.isFinite(p)){Et.error("无法定位执行记录");return}const g=rpn(h,f.currentStepIndex,f.currentStepId);r(h.id);try{const m=Ta.getState(),v=f.steps.length>0?f.steps:[h];m.setCurrentExecutionId(p),m.setExecutionSteps(_xt(v,p)),m.setLatestSSEEvent(null),n(),i(p),a(f.id),s(),u(`正在重新执行步骤:${h.title}`),await l(p,g),d()}catch(m){o(),Et.error(Ao(m,"步骤重新执行失败"))}finally{r("")}},[i,s,o,e,u,l,t,d,n,a,r])}function PAn({isExecuting:e,rerunningRunId:t,reExecutingStepId:r,selectedAgentId:n,resolveRetryRunFormValues:i,resetLiveExecutionState:a,pendingExecutionTitleRef:s,setRerunningRunId:o,applyRetryValues:l,prepareRun:u,setSelectedWorkbenchStageKey:d,setExpandedWorkbenchStageKeys:h,notify:f}){return S.useCallback(async p=>{if(!(e||t||r)&&n&&II(p)){o(p.id);try{const g=await i(p);a(),s.current="",l(g),u(),d("params"),h(["params"]),f("已回填本次参数,确认后开始执行")}catch(g){Et.error(Ao(g,"读取本次任务参数失败"))}finally{o("")}}},[l,e,f,s,u,r,a,i,t,n,h,o,d])}function MAn({runInputFields:e,selectedAgentInputParams:t,getExecutionDetail:r,updateRun:n}){return S.useCallback(async i=>{let a=Lg(i.inputValues)?i.inputValues:void 0;const s=Number(i.id);if(!a&&Number.isFinite(s)){const u=await r(s);a=are(u);const d=sre(u,t);Lg(a)&&n(i.id,h=>gke(h,a,d))}const o=FB(a)??i.inputValues??{};if(e.length===0)return Lg(o)?{...o}:{};const l=fxt(e,{...i,inputValues:Lg(o)?o:i.inputValues});return{...hw(e,l),...l,...qt(o)?o:{}}},[r,e,t,n])}function DAn({waitingInfo:e,waitingRun:t,waitingPreviewSteps:r,runPreviewSteps:n,selectedAgentId:i,setWaitingSubmitting:a,resumeExecution:s,clearExecutionDetail:o,advanceWaiting:l,clearWaiting:u,notify:d,refreshLiveRuns:h}){return S.useCallback(async f=>{if(!e||!t)return;const p=Number(t.id);if(!Number.isFinite(p)){Et.error("无法定位执行记录");return}const g=t.steps.map(v=>({step_id:v.id})),m=f.action==="return_previous"?wT(e,g):e.step_id;if(!m){Et.error("无法定位需要继续的步骤");return}a(!0);try{const v=Cxt(t,e,(r==null?void 0:r.runId)===t.id?r.steps:n),y=Ta.getState();if(y.setCurrentExecutionId(p),y.setExecutionSteps(_xt(v.length>0?v:t.steps,p)),y.setExecutionProgress(v.length>0?Math.round(v.filter(b=>b.status==="completed").length/v.length*100):0),y.setLatestSSEEvent(null),await s(p,m,f.inputData,{action:f.action,confirmedInput:f.confirmedInput,modifiedParams:f.modifiedParams}),o(p),f.action==="return_previous"){const b=await kI(p,m);b?(l(b),d("已返回上一步,请继续处理")):(u(),d("已返回上一步")),i&&h();return}const x=Ta.getState().latestSSEEvent;if((x==null?void 0:x.type)==="waiting_input"){const b=await kI(p,x.step_id);b?(l(b,t.id),d("执行已到下一处人工确认")):u()}else u(),f.action==="cancel"?d("执行已取消"):["execution_failed","step_failed","timeout"].includes((x==null?void 0:x.type)??"")?d("继续执行失败,请查看执行详情"):d("已提交,执行记录正在刷新");i&&h()}catch(v){Et.error(Ao(v,"继续执行失败"))}finally{a(!1)}},[l,o,u,d,h,s,n,i,a,e,r,t])}function OAn({selectedAgentId:e,currentExecutionId:t,execution:r,executions:n,runForm:i,cockpit:a,recommendations:s,agentExecution:o,resetExecutionEvents:l,pendingExecutionTitleRef:u,recommendedExecutionRef:d,setActiveRunId:h,setDeletingExecutionId:f,setModal:p,inboxRunTransfer:g,setInboxRunTransfer:m,refreshInboxTransfers:v,loadAgents:y,waitingPreviewSteps:x,notify:b}){const w=bl(),C=jf({...xp.executions.delete(),onSuccess:(Je,{executionId:et})=>Xh(w,{type:"execution-deleted",executionId:et,agentId:e??void 0},{refetchType:"none"})}),[_,T]=S.useState(""),[k,A]=S.useState(""),[$,I]=S.useState(void 0),P=S.useRef(!1),{phase:N,setWaitingRunId:R,setWaitingInfo:L,setWaitingLoading:M,setWaitingSubmitting:O,openDetailDrawer:D,openRunDrawer:F,beginWaiting:B,clearWaiting:j,resetExecution:H,cancelExecution:z,advanceWaiting:W,executionStarted:G,beginExecution:q,prepareRun:Y,failExecution:K,setIdlePhase:Z}=r,{runInputFields:X,runFormValues:Q,applyRetryValues:J,resetForExecution:re,getVisibleFields:te,persistCurrentRunValues:oe,setInputSnapshot:le,clearInputSnapshot:ce}=i,{selectedAgent:ie,isLiveAgent:ue,runPreviewSteps:we,activeRun:ve,waitingRun:$e,runParametersLoading:Te,isExecuting:Le,historyPage:Ne}=a.state,{refreshHistory:de,changeHistoryPage:se,setSelectedWorkbenchStageKey:he,setExpandedWorkbenchStageKeys:me}=a.actions,{realRuns:ye,setActiveRunSnapshot:ee,loadExecutions:pe,getExecutionDetail:ae,clearExecutionDetail:fe,updateRun:ne,removeRun:ke}=n,{load:ge,enable:Oe,setActionId:Re}=s,{startExecution:Fe,startRecommendedExecution:Be,resumeExecution:Xe,reExecuteStep:je,acceptTransfer:ot,abort:Ce}=o,it=S.useCallback(()=>{Ce(),H(),l(),d.current=null;const Je=Ta.getState();Je.setExecutionSteps([]),Je.setExecutionProgress(0),Je.setCurrentExecutionId(null),Je.setLatestSSEEvent(null)},[Ce,d,H,l]),xe=S.useCallback(()=>{re(e),u.current="",R(""),L(null),M(!1),O(!1),he("params")},[u,re,e,he,L,M,R,O]),Pe=S.useCallback(()=>{Le||(Z(),it(),xe()),F(Le),b(Le?"执行过程正在更新":"确认参数后开始执行")},[Le,b,F,it,xe,Z]),Ie=RAn({selectedAgent:ie,setActiveRunId:h,beginWaiting:B,advanceWaiting:W,clearWaiting:j,setWaitingLoading:M,getExecutionDetail:ae,updateRun:ne,notify:b,getErrorMessage:Ao}),De=DAn({waitingInfo:r.waitingInfo,waitingRun:$e,waitingPreviewSteps:x,runPreviewSteps:we,selectedAgentId:e,setWaitingSubmitting:O,resumeExecution:(Je,et,ht,nt)=>Xe(Je,et,ht,nt),clearExecutionDetail:fe,advanceWaiting:W,clearWaiting:j,notify:b,refreshLiveRuns:de}),tt=MAn({runInputFields:X,selectedAgentInputParams:ie==null?void 0:ie.input_params,getExecutionDetail:ae,updateRun:ne});function Ue(){if(!ue||!e||N==="running")return;if(Te){b("正在读取运行参数");return}const Je=te(),et=Je.filter(Pt=>Pt.required&&up(Q[Pt.name]));if(et.length>0){Et.warning(`请填写必填参数: ${et.map(Pt=>Pt.label||Pt.name).join(", ")}`);return}const ht=Je.map(Pt=>({field:Pt,error:tJ(Pt)?eyt(Q[Pt.name],Pt.address_validation):""})).find(Pt=>Pt.error);if(ht){Et.warning(`${ht.field.label||ht.field.name}: ${ht.error}`);return}const nt=oe(e,Je),yt=Rfn(nt);u.current=yt??"",le(nt),P.current=!1,it(),q();const xt=g;b(xt?"已承接流转结果,正在创建新的执行记忆":Je.length>0?"已开始执行,参数会自动复用到再次执行":"已开始执行,这个智能体无需运行参数"),(xt?ot(xt.id,{action:"use_existing_agent",agent_id:e,input_data:nt,create_execution_chain:!0,fan_out_enabled:!1}):Fe(e,nt,{executionTitle:yt})).then(()=>{xt&&(m(null),v(),de())}).catch(Pt=>{P.current||(K(),Et.error(Ao(Pt,xt?"承接流转执行失败":"执行失败")))})}const Ke=PAn({isExecuting:Le,rerunningRunId:_,reExecutingStepId:k,selectedAgentId:e,resolveRetryRunFormValues:tt,resetLiveExecutionState:it,pendingExecutionTitleRef:u,setRerunningRunId:T,applyRetryValues:J,prepareRun:Y,setSelectedWorkbenchStageKey:he,setExpandedWorkbenchStageKeys:me,notify:b}),Se=LAn({isExecuting:Le,reExecutingStepId:k,setReExecutingStepId:A,resetExecutionEvents:l,clearExecutionDetail:fe,setActiveRunId:h,executionStarted:G,failExecution:K,reExecuteStep:je,notify:b,refreshLiveRuns:de}),vt=NAn({isExecuting:Le,currentExecutionId:t,selectedAgentId:e,cancelledExecutionRef:P,abort:Ce,cancelExecution:z,resetLiveExecutionState:it,setActiveRunSnapshot:ee,notify:b,refreshLiveRuns:de}),pt=S.useCallback(async Je=>{const et=Zy(Je.resultId);if(et)return et;const ht=Number(Je.id);if(!Number.isFinite(ht))return;const nt=await ae(ht),yt=WAt(nt);if(yt)return ne(Je.id,xt=>({...xt,resultId:yt})),Zy(yt)},[ae,ne]),bt=S.useCallback(()=>{p(null),I(void 0)},[p]),Ye=S.useCallback(async Je=>{if(Je.status==="completed"){h(Je.id),D();try{const et=await pt(Je);et||Et.warning("当前执行记录缺少结果 ID,提交时无法流转"),I(et),p("share")}catch(et){Et.error(Ao(et,"结果详情读取失败")),I(void 0),p("share")}}},[D,pt,h,p]),st=S.useCallback(Je=>{if(!e||Je.recordId==null){Et.error("缺少执行记录ID,无法删除");return}const et=Je.recordId,ht=Je.status==="running"||Je.status==="waiting";ki.confirm({title:ht?"取消并删除这条执行记录?":"删除这条执行记录?",content:ht?"当前任务仍在进行。系统将先取消执行,再删除记录。":`删除「${Je.title}」后,该记录将从执行历史中移除。`,okText:ht?"取消并删除":"删除",cancelText:"保留",okButtonProps:{danger:!0},centered:!0,onOk:async()=>{f(et);try{await C.mutateAsync({executionId:et,cancelFirst:ht}),ke(Je.id),ht&&t===et&&(Ce(),z());const nt=$An(Ne,ye.length);se(nt),await pe(e,nt),Et.success("执行记录已删除")}catch(nt){throw Et.error(Ao(nt,"删除执行记录失败")),nt}finally{f(null)}}})},[Ce,z,se,t,C,Ne,pe,ye.length,ke,e,f]),Me=S.useCallback(async Je=>{try{await Oe(Je.id),await ge(ie==null?void 0:ie.market_template_id),await y(null,!1),Et.success("已启用智能体")}catch(et){await ge(ie==null?void 0:ie.market_template_id),Et.error(Ao(et,"启用推荐智能体失败"))}finally{Re(null)}},[Oe,y,ge,ie==null?void 0:ie.market_template_id,Re]),rt=S.useCallback(async Je=>{if(!ve||ve.status!=="completed"){Et.warning("当前结果完成后才能执行推荐智能体");return}const et=await pt(ve);if(!et){Et.warning("当前结果还在同步,请稍后再试");return}const ht=`${Je.name} · 推荐执行`;Re(Je.id),it(),d.current={templateId:Je.id,templateName:Je.name,agentId:Je.my_agent_id},u.current=ht,ce(),q(),b("已开始执行推荐智能体");try{await Be(et,Je.id,{inputData:{},executionTitle:ht})}catch(nt){d.current=null,K(),Et.error(Ao(nt,"推荐智能体执行失败"))}finally{Re(null)}},[ve,q,ce,K,b,u,d,it,pt,Re,Be]);return{state:{rerunningRunId:_,reExecutingStepId:k,transferModalResultId:$},actions:{openRunDrawer:Pe,openWaitingRun:Ie,submitWaitingInput:De,rerunFailedExecution:Ke,reExecuteFailedStep:Se,startRun:Ue,cancelCurrentExecution:vt,closeTransferModal:bt,openShareForRun:Ye,deleteExecutionRecord:st,enableRecommendedTemplate:Me,executeRecommendedTemplate:rt}}}const BAn=new Set(["re_executing","step_running","step_awaiting_async","step_pending_async","substep_running","substep_completed","step_completed","step_failed","waiting_input","execution_completed","execution_failed","timeout"]),FAn=new Set(["execution_failed","step_failed","timeout"]);function zAn(e){const t=e.type==="waiting_input",r=e.type==="execution_completed",n=FAn.has(e.type),i=r||n;return{status:t?"waiting":r?"completed":n?"failed":"running",phase:t?"idle":r?"completed":n?"failed":"running",waitingStepId:t&&e.step_id||null,isWaiting:t,isTerminal:i,isTerminalFailure:n,shouldCaptureLiveTrace:BAn.has(e.type)}}function jAn({event:e,transition:t,executionSteps:r,runPreviewSteps:n}){const i=t.waitingStepId;return{nextSteps:r.length>0?yxt(r,i):n.map((s,o)=>({...s,status:i&&o===0?"waiting":s.status,humanConfirm:i&&o===0?!0:s.humanConfirm,humanConfirmTriggered:i&&o===0?!0:s.humanConfirmTriggered})),nextStatus:t.status,nextStepError:Ao(e.error||e.error_message,"执行失败")}}function VAn(e){const t=Ta(n=>n.latestSSEEvent),r=S.useRef(e);r.current=e,S.useEffect(()=>{var B;if(!t)return;const{enabled:n,selectedAgent:i,currentExecutionId:a,executionSteps:s,runPreviewSteps:o,runInputData:l,recommendedExecutionRef:u,pendingExecutionTitleRef:d,shouldHandleWaiting:h,shouldHandleFinished:f,recordLiveTraceEvent:p,upsertRun:g,setActiveRunId:m,executionStarted:v,setIdlePhase:y,beginWaiting:x,setWaitingInfo:b,setWaitingLoading:w,clearExecutionDetail:C,setWaitingPreviewSteps:_,executionFinished:T,refreshLiveRuns:k,notify:A}=r.current;if(!n||!i)return;const $=u.current;if(!wAn(t,{selectedAgentId:i.id,recommendedAgentId:$==null?void 0:$.agentId}))return;$&&t.agent_id&&(u.current={...$,agentId:t.agent_id});const I=t.agent_id??i.id,P=((B=t.agent_name)==null?void 0:B.trim())||($==null?void 0:$.templateName)||i.name,N=xAn(t,a);if(!N)return;const R=String(N),L=zAn(t),{nextSteps:M,nextStatus:O,nextStepError:D}=jAn({event:t,transition:L,executionSteps:s,runPreviewSteps:o}),F=new Date().toISOString();if(L.shouldCaptureLiveTrace&&s.length>0&&p({executionId:R,agentId:I,agentName:P,status:O,updatedAt:F,steps:Ffn(s)}),g(j=>Dfn({event:t,existing:j.find(H=>H.id===R),eventExecutionId:N,eventAgentName:P,isRecommended:!!$,pendingExecutionTitle:d.current,runInputData:l,nextSteps:M,nextStatus:O,nextStepError:D,eventTime:F})),m(R),O==="running"&&v(),t.type==="waiting_input"){if(!h(R,t.step_id))return;const j=EI(t),H=M.map(W=>({step_id:W.id}));y(),x(R),b({...j,return_step_id:wT(j,H)});let z=!1;return kI(N,t.step_id).then(W=>{z||!W||b({...W,return_step_id:wT(W,H)})}).catch(()=>{}).finally(()=>{z||w(!1)}),()=>{z=!0}}L.isTerminal&&f(t.type,R,t.result_id||t.error||t.error_message||"")&&(C(N),_(null),T(t.type==="execution_completed"?"completed":"failed"),k(),A(t.type==="execution_completed"?"执行完成,已进入详情":"执行失败,请查看详情"),u.current=null)},[t])}function rz(e,t){const r=Uh(e),n=[],i=s=>{if(!qt(s))return;const o=qt(s.execution)?s.execution:{},l=qt(s.workflow)?s.workflow:{},u=qt(s.chain)?s.chain:{},d=qt(s.agent_config)?s.agent_config:{};n.push(s.steps,s.workflow_steps,s.execution_steps,s.playbooks,o.steps,o.workflow_steps,o.execution_steps,o.playbooks,l.steps,l.playbooks,u.steps,u.playbooks,d.steps,d.playbooks,qt(s.config)?s.config.steps:void 0,qt(s.agent)?s.agent.steps:void 0,qt(s.agent)?s.agent.playbooks:void 0,qt(s.custom_agent)?s.custom_agent.steps:void 0,qt(s.custom_agent)?s.custom_agent.playbooks:void 0,qt(s.detail)?s.detail.steps:void 0,qt(s.detail)?s.detail.playbooks:void 0)};i(r),i(e);const a=n.find(Array.isArray);return!Array.isArray(a)||a.length===0?[]:a.map((s,o)=>{const l=qt(s)?s:{},u=qt(l.playbook)?l.playbook:{},d=qt(l.workflow)?l.workflow:{},h=l.step_id??l.id??l.playbook_id??`step_${o+1}`,f=Rg(l.step_name,l.playbook_name,l.name,l.title,l.skill_name,u.name,d.name);return{id:String(h),title:f||(a.length===1?Rg(t):"")||`步骤 ${o+1}`,description:Rg(l.description,u.description,d.description)||"执行配置的流程",event:"pending",humanConfirm:!!(l.requires_human_confirm??l.requires_human_input??l.human_confirm),status:"pending"}})}function y$(e){return e.some(t=>!/^步骤 \d+$/.test(t.title))}function j3e(e){return rz(e,e==null?void 0:e.name)}function ore(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function V3e(e){if(typeof e=="number"&&Number.isFinite(e))return String(e);if(typeof e=="string"&&e.trim())return e.trim()}function HAn(e,t=0){const r=ore(e)?e:{},n=ore(r.target_user)?r.target_user:{},i=ore(r.source_result)?r.source_result:{},a=ore(r.source_execution)?r.source_execution:{},s=V3e(r.source_result_id??r.result_id??i.id??i.result_id),o=V3e(r.source_execution_id??r.execution_id??a.id??a.execution_id);return{id:V3e(r.id??r.transfer_code)??`transfer-${t}`,target:String(r.target_nickname??r.target_username??r.target_name??n.display_name??n.nickname??n.username??r.target_user_id??"接收人"),runId:o??s??"-",executionId:o,resultId:s,time:Cw(r.created_at)||"未知时间",status:String(r.status??"pending")}}function WAn(e,t){const r=new Set([t.id,t.resultId].filter(n=>!!n));return!!(e.executionId&&r.has(e.executionId))||!!(e.resultId&&r.has(e.resultId))||r.has(e.runId)}const GAn={page:1,pageSize:100},UAn={page:1,pageSize:24},H3e=10,qAn={page:1,pageSize:100},YAn={page:1,pageSize:50},KAn={getAgents:Gve,getAgentDetail:E3r,getMarketTemplates:z3r,getMarketTemplateRecommendations:V3r,getExecutions:Uve,getExecutionDetail:cJe,getResultDetail:D3r,getPendingTransfers:uJe,getSentTransfers:B3r};function XAn(e){return{page:e.page,pageSize:e.pageSize,sceneId:e.sceneId,isTemplate:e.isTemplate}}function ZAn(e){return{page:e.page,pageSize:e.pageSize,category:e.category,keyword:e.keyword}}function QAn(e){return{agentId:e.agentId,page:e.page,pageSize:e.pageSize,status:e.status,statuses:GAt(e.statuses),businessStatuses:GAt(e.businessStatuses),triggerType:e.triggerType,startDate:e.startDate,endDate:e.endDate}}function GAt(e){if(!e)return;const t=e.map(r=>r.trim()).filter(Boolean);return t.length?Array.from(new Set(t)):void 0}function UAt(e){return{page:e.page,pageSize:e.pageSize}}function JAn(e=KAn){return{agents:{list:t=>{const r=XAn(t);return{queryKey:Ci.agents.list(r),queryFn:async()=>{const n=await e.getAgents({page:r.page,page_size:r.pageSize,scene_id:r.sceneId,is_template:r.isTemplate});return AI(n)}}},detail:t=>{const r=t;return{queryKey:Ci.agents.detail(r),queryFn:()=>e.getAgentDetail(r)}}},market:{templates:{list:t=>{const r=ZAn(t);return{queryKey:Ci.market.templates.list(r),queryFn:async()=>{const n=await e.getMarketTemplates({page:r.page,page_size:r.pageSize,category:r.category,keyword:r.keyword});return AI(n)}}}},recommendations:{byTemplate:t=>{const r=t;return{queryKey:Ci.market.recommendations.byTemplate(r),queryFn:async()=>{const n=await e.getMarketTemplateRecommendations({market_template_id:r});return AI(n)}}}}},executions:{list:t=>{const r=QAn(t);return{queryKey:Ci.executions.list(r),queryFn:async()=>{const n=await e.getExecutions({agent_id:r.agentId,page:r.page,page_size:r.pageSize,status:r.status,"status[]":r.statuses,"business_status[]":r.businessStatuses,trigger_type:r.triggerType,start_date:r.startDate,end_date:r.endDate}),i=AI(n),a=lke(i.map(EAn));return{runs:a,total:ffn(n,a.length)}}}},detail:t=>{const r=t;return{queryKey:Ci.executions.detail(r),queryFn:()=>e.getExecutionDetail(r)}}},results:{detail:t=>{const r=t;return{queryKey:Ci.results.detail(r),queryFn:async()=>Uh(await e.getResultDetail(r))}}},transfers:{sent:t=>{const r=UAt(t);return{queryKey:Ci.transfers.sent(r),queryFn:async()=>{const n=await e.getSentTransfers({page:r.page,page_size:r.pageSize});return AI(n).map(HAn)}}},inbox:t=>{const r=UAt(t);return{queryKey:Ci.transfers.inbox(r),queryFn:async()=>{const n=await e.getPendingTransfers({page:r.page,page_size:r.pageSize});return AI(n)}}}}}}const Jd=JAn();function e3n({enabled:e,selectedAgent:t,phase:r,runConfigAgentId:n,applyInputConfig:i,setRunPreviewStepItems:a,beginInputConfigLoading:s,onInputFieldsLoaded:o,notify:l,getErrorMessage:u}){const d=bl();S.useEffect(()=>{if(!e||!t||r==="running"||n===t.id)return;let h=!1;const f=g=>{h||i(t.id,g)},p=cke(t);return a(j3e(t)),s(p),d.fetchQuery(Jd.agents.detail(t.id)).then(g=>{if(h)return;const m=rz(g,t.name);m.length>0&&a(m);const v=cke(g);v.fields.length>0?(o(t.id,v.fields),f(v)):f(p)}).catch(g=>{h||(f(p),p.fields.length===0&&l(u(g,"运行参数读取失败")))}),()=>{h=!0}},[i,s,e,u,l,o,r,d,n,t,a])}function t3n({enabled:e,isLiveAgent:t,activeRunId:r,realRuns:n,selectedAgent:i,selectedAgentName:a,selectedAgentInputParams:s,getExecutionDetail:o,updateRun:l,drawer:u,phase:d,activeRun:h,runPreviewStepItems:f,setRunPreviewStepItems:p,workspaceMode:g,waitingRunIdForPreview:m,waitingRunStatusForPreview:v,waitingRunSummaryForPreview:y,setWaitingPreviewSteps:x}){const b=bl();S.useEffect(()=>{if(!e||!t||!r)return;const w=n.find(k=>k.id===r),C=pke(w==null?void 0:w.params)||Lg(w==null?void 0:w.inputValues);if(!w||C&&(w.resultId||w.status!=="completed"))return;const _=Number(w.id);if(!Number.isFinite(_))return;let T=!1;return o(_).then(k=>{if(T)return;const A=WAt(k),$=are(k);if(!A&&!Lg($))return;const I=sre(k,s);l(w.id,P=>{const N=A&&P.resultId!==String(A)?{...P,resultId:String(A)}:P;return gke(N,$,I)})}).catch(()=>{}),()=>{T=!0}},[r,e,o,t,n,s,l]),S.useEffect(()=>{if(!e||u!=="run"||!a||d==="running"||y$(f))return;const w=[h,n[0]].find(T=>T&&Number.isFinite(Number(T.id))),C=w?Number(w.id):null;if(!C)return;let _=!1;return o(C).then(T=>{if(_)return;const k=rz(T,a);k.length>0&&y$(k)&&p(k)}).catch(()=>{}),()=>{_=!0}},[h,u,e,o,d,n,f,a,p]),S.useEffect(()=>{if(!e||g!=="waiting"||!i||y$(f)&&f.length>1)return;let w=!1;const C=T=>T.length>0&&(T.length!==f.length||T.some((k,A)=>{var $,I;return k.id!==(($=f[A])==null?void 0:$.id)||k.title!==((I=f[A])==null?void 0:I.title)})),_=j3e(i);return C(_)&&p(_),b.fetchQuery(Jd.agents.detail(i.id)).then(T=>{if(w)return;const k=rz(T,i.name);C(k)&&p(k)}).catch(()=>{}),()=>{w=!0}},[e,f,i,b,p,g]),S.useEffect(()=>{if(!e)return;if(g!=="waiting"||!t||!m){x(null);return}const w=Number(m);if(!Number.isFinite(w)){x(null);return}let C=!1;return x(_=>(_==null?void 0:_.runId)===m?_:null),o(w).then(_=>{if(C)return;const T=Uh(_);if(!qt(T))return;const k=qt(T.execution)?T.execution:{},A=qt(T.result)?T.result:{},$=z3e(T),I=v==="waiting"?"waiting_input":v,P={...k,id:k.id??w,execution_id:k.execution_id??m,status:k.status??A.status??I,result_summary:A.result_summary??k.result_summary??y},N=gxt($,P),R=rz(T,a),L=N.length>0&&y$(N)?N:R;L.length>0&&y$(L)&&x({runId:m,steps:L}),N.length>0&&y$(N)&&l(m,M=>({...M,steps:N}))}).catch(()=>{}),()=>{C=!0}},[e,o,t,a,x,l,m,v,y,g])}function r3n({runs:e,isLiveAgent:t,selectedAgentName:r,selectedAgentInputParams:n,setActiveRunId:i,openDetailDrawer:a,getExecutionDetail:s,clearExecutionDetail:o,updateRun:l}){return S.useCallback(async u=>{const d=e.find(f=>f.id===u);if(i(u),a(),!t)return;const h=Number(u);if(Number.isFinite(h)){II(d)&&o(h);try{const f=await s(h),p=Uh(f);if(!qt(p))return;const g=qt(p.execution)?p.execution:{},m=qt(p.result)?p.result:{},v=z3e(p),y=m.id??m.result_id??g.result_id,x=are(p),b=zAt(m.result_data,m.output_data,m.final_output,g.result_data,g.output_data,p.output_data,p.result_data),w=pxt(v),C=(d==null?void 0:d.status)==="waiting"?"waiting_input":d==null?void 0:d.status,_=(d==null?void 0:d.status)==="completed"?"completed":g.status??m.status??C,T={...g,id:g.id??h,execution_id:g.execution_id??u,agent_name:g.agent_name??p.agent_name??r,status:_,result_summary:m.result_summary??g.result_summary,result_data:b,error_message:g.error_message??m.error_message??w},k=xke(m.output_data,m.result_data,g.result_data,p.output_data,p.result_data),A=sre(p,n),$=Ske(b,k,3),I=Sxt(b,T,v),P=DB(T.status),N=gxt(v,T),R=vke(v),L=Zy(g.current_step_index)??(d==null?void 0:d.currentStepIndex);l(u,M=>{var O;return{...M,currentStepIndex:L??M.currentStepIndex,currentStepId:mxt(v,L)??M.currentStepId,resultId:y?String(y):M.resultId,title:((O=T.execution_title)==null?void 0:O.trim())||M.title,status:P,businessStatus:T.business_status??M.businessStatus,resultTitle:I.title||Ng(M.resultTitle,T.result_summary,T.error_message),summary:I.subtitle||(P==="completed"?"":ST(T)),resultContent:I.content,resultPayload:I.payload,params:VAt(T,x,y,A),inputValues:FB(x),steps:N,outputs:I.meta.length>0?I.meta:$.length>0?$:jAt(T,R),detailData:I.detailData}})}catch{}}},[o,s,t,a,e,n,r,i,l])}function n3n({enabled:e,activeRunId:t,agentsRef:r,setAgents:n,execution:i,executions:a,runForm:s,cockpit:o,recommendations:l,executionEvents:u,runPreviewStepItems:d,setRunPreviewStepItems:h,pendingExecutionTitleRef:f,recommendedExecutionRef:p,recordLiveTraceEvent:g,setActiveRunId:m,setWaitingPreviewSteps:v,notify:y}){const x=Ta(ce=>ce.currentExecutionId),b=Ta(ce=>ce.executionSteps),{drawer:w,phase:C,openDetailDrawer:_,executionStarted:T,setIdlePhase:k,beginWaiting:A,setWaitingInfo:$,setWaitingLoading:I,executionFinished:P}=i,{realRuns:N,getExecutionDetail:R,clearExecutionDetail:L,updateRun:M,upsertRun:O}=a,{runInputData:D,runConfigAgentId:F,beginInputConfigLoading:B,applyInputConfig:j}=s,{state:{selectedAgent:H,isLiveAgent:z,runPreviewSteps:W,runs:G,activeRun:q,waitingRunIdForPreview:Y,waitingRunStatusForPreview:K,waitingRunSummaryForPreview:Z,workspaceMode:X},actions:{refreshHistory:Q}}=o,{activate:J}=l,{shouldHandleWaiting:re,shouldHandleFinished:te}=u,oe=r3n({runs:G,isLiveAgent:z,selectedAgentName:H==null?void 0:H.name,selectedAgentInputParams:H==null?void 0:H.input_params,setActiveRunId:m,openDetailDrawer:_,getExecutionDetail:R,clearExecutionDetail:L,updateRun:M});t3n({enabled:e,isLiveAgent:z,activeRunId:t,realRuns:N,selectedAgent:H,selectedAgentName:H==null?void 0:H.name,selectedAgentInputParams:H==null?void 0:H.input_params,getExecutionDetail:R,updateRun:M,drawer:w,phase:C,activeRun:q,runPreviewStepItems:d,setRunPreviewStepItems:h,workspaceMode:X,waitingRunIdForPreview:Y,waitingRunStatusForPreview:K,waitingRunSummaryForPreview:Z,setWaitingPreviewSteps:v});const le=S.useCallback((ce,ie)=>{n(ue=>{const we=ue.map(ve=>ve.id===ce?{...ve,input_params:ie}:ve);return r.current=we,we})},[r,n]);return e3n({enabled:e,selectedAgent:H,phase:C,runConfigAgentId:F,applyInputConfig:j,setRunPreviewStepItems:h,beginInputConfigLoading:B,onInputFieldsLoaded:le,notify:y,getErrorMessage:Ao}),S.useEffect(()=>{J(e?H==null?void 0:H.market_template_id:null)},[J,e,H==null?void 0:H.market_template_id]),VAn({enabled:z,selectedAgent:H,currentExecutionId:x,executionSteps:b,runPreviewSteps:W,runInputData:D,recommendedExecutionRef:p,pendingExecutionTitleRef:f,shouldHandleWaiting:re,shouldHandleFinished:te,recordLiveTraceEvent:g,upsertRun:O,setActiveRunId:m,executionStarted:T,setIdlePhase:k,beginWaiting:A,setWaitingInfo:$,setWaitingLoading:I,clearExecutionDetail:L,setWaitingPreviewSteps:v,executionFinished:P,refreshLiveRuns:Q,notify:y}),{currentExecutionId:x,openRun:oe}}const i3n={agentId:0,page:1,pageSize:H3e};function qAt(e,t){return(e==null?void 0:e.agentId)===t.agentId&&e.page===t.page&&e.pageSize===t.pageSize}function a3n({enabled:e,selectedAgentIdRef:t}){var _,T;const r=bl(),[n,i]=S.useState(null),[a,s]=S.useState(null),o=S.useRef(null),l=S.useMemo(()=>Jd.executions.list(a??i3n),[a]),u=ty({...l,enabled:e&&a!==null}),d=((_=u.data)==null?void 0:_.runs)??[],h=((T=u.data)==null?void 0:T.total)??0,f=S.useCallback(k=>{const A={agentId:k.agentId,page:k.page,pageSize:k.pageSize},$=!qAt(o.current,A);o.current=A,$&&i(null),s(I=>qAt(I,A)?I:A)},[]),p=S.useCallback((k,A=1)=>{f({agentId:k,page:A,pageSize:H3e})},[f]),g=S.useCallback(k=>{const A=o.current;if(!A)return;const $=Jd.executions.list(A);r.setQueryData($.queryKey,k)},[r]),m=S.useCallback(k=>r.fetchQuery(Jd.executions.detail(k)),[r]),v=S.useCallback(k=>{if(k==null){r.removeQueries({queryKey:Ci.executions.details});return}r.removeQueries({queryKey:Ci.executions.detail(k),exact:!0})},[r]),y=S.useCallback((k,A)=>{g($=>{if(!$)return $;const I=AAn($.runs,k,A);return I===$.runs?$:{...$,runs:I}})},[g]),x=S.useCallback((k=!1)=>{i(null);const A=k?t.current:null;if(A!=null){p(A);return}o.current=null,s(null)},[p,t]),b=S.useCallback(k=>{g(A=>{if(!A)return A;const $=IAn(A.runs,k);return $===A.runs?A:{runs:$,total:Math.max(0,A.total-1)}}),i(A=>(A==null?void 0:A.id)===k?null:A)},[g]),w=S.useCallback(k=>{g(A=>{const $=(A==null?void 0:A.runs)??[],I=k($),P=$.some(R=>R.id===I.id),N=kAn($,I);return{runs:N,total:A?A.total+(P?0:1):N.length}})},[g]),C=S.useCallback(async(k,A=1)=>{const $={agentId:k,page:A,pageSize:H3e};f($);try{const I=await r.fetchQuery({...Jd.executions.list($),staleTime:0});return t.current===k?I.runs:[]}catch{return[]}},[f,r,t]);return{realRuns:d,activeRunSnapshot:n,setActiveRunSnapshot:i,historyTotal:h,historyLoading:e&&a!==null&&u.isFetching,historyError:u.error?Ao(u.error,"加载执行历史失败"):"",loadExecutions:C,activateHistory:p,getExecutionDetail:m,clearExecutionDetail:v,updateRun:y,upsertRun:w,resetHistory:x,removeRun:b}}function s3n({embedded:e,view:t,setView:r,selectedAgentName:n,agentsCount:i,agentsError:a,pendingInboxCount:s,openInbox:o,reloadAgents:l,setDrawer:u,setModal:d,notify:h,onHeaderChange:f,onCockpitExit:p}){const[g,m]=S.useState(!1),v=S.useCallback(_=>{if(!n&&!_){Et.info("请先选择一个智能体");return}m(!0)},[n]),y=S.useCallback(()=>{m(!1),l()},[l]),x=S.useCallback(()=>{const _=Ta.getState();_.resetForm(),_.setEditingAgent(null),_.setShowAgentDrawer(!0),h("开始创建自定义智能体")},[h]),b=S.useCallback(()=>{u(null),d(null),m(!1),r("market"),p==null||p()},[p,u,d,r]),w=S.useMemo(()=>E.jsxs("div",{className:"automation-header-actions",children:[E.jsx(ri,{title:s>0?`收件箱 · ${s} 条待处理`:"收件箱",children:E.jsx(gA,{dot:s>0,children:E.jsx(ir,{className:"automation-header-icon-button",icon:E.jsx(dx,{}),"aria-label":"收件箱",onClick:o})})}),E.jsx(ri,{title:"创建自动化",children:E.jsx(ir,{className:"automation-header-icon-button",icon:E.jsx(Ul,{}),"aria-label":"创建自动化",onClick:x})})]}),[x,o,s]),C=S.useMemo(()=>t==="market"?{title:"自动化工作台",subtitle:"选择一个自动化进入工作台",actions:w}:t==="inbox"?{title:"结果收件箱",subtitle:"查看同事转交的执行结果和后续处理入口",actions:E.jsx(ir,{icon:E.jsx(eC,{}),onClick:b,children:"返回智能体选择"})}:n?{title:n,subtitle:"切换阶段查看本次执行的参数、过程和结果",actions:E.jsx(ir,{icon:E.jsx(eC,{}),onClick:b,children:"返回智能体选择"})}:{title:a?"智能体列表读取失败":i>0?"请选择一个智能体":"还没有启用智能体",subtitle:a||(i>0?"从智能体中心选择一个智能体后,再进入驾驶舱运行。":"先到智能体中心启用一个模板,系统会创建用户专属智能体,再进入驾驶舱。")},[i,a,w,b,n,t]);return S.useEffect(()=>{e&&(f==null||f(C))},[e,C,f]),{state:{scheduleModalOpen:g},actions:{openScheduleModal:v,closeScheduleModal:y,openCreateAgent:x,returnToAgentSelection:b}}}const o3n=0,l3n=[];function c3n(){const e=bl(),[t,r]=S.useState(null),[n,i]=S.useState(null),a=S.useRef(null),s=S.useMemo(()=>Jd.market.recommendations.byTemplate(t??o3n),[t]),o=ty({...s,enabled:t!==null}),l=jf({...xp.market.enableRecommendedTemplate()}),u=S.useCallback(p=>{r(p||null)},[]),d=S.useCallback(p=>{a.current=p,i(p)},[]),h=S.useCallback(async p=>{if(!p)return u(null),[];u(p);try{return await e.fetchQuery({...Jd.market.recommendations.byTemplate(p),staleTime:0})}catch{return[]}},[u,e]),f=S.useCallback(async p=>{if(a.current!==null)return;const g=t;d(p);try{const m=await l.mutateAsync(p);return await Xh(e,{type:"market-template-enabled",sourceTemplateId:g},{refetchType:"none"}),m}finally{d(null)}},[t,l,e,d]);return{templates:o.data??l3n,loading:t!==null&&o.isFetching,actionId:n,setActionId:d,activate:u,load:h,enable:f}}const u3n=[];function d3n({active:e}){const t=bl(),r=S.useMemo(()=>Jd.transfers.sent(qAn),[]),n=ty({...r,enabled:e}),i=S.useCallback(s=>{t.setQueryData(r.queryKey,(o=[])=>typeof s=="function"?s(o):s)},[t,r.queryKey]),a=S.useCallback(async()=>{try{return await t.fetchQuery({...r,staleTime:0})}catch{return[]}},[t,r]);return{transfers:n.data??u3n,setTransfers:i,transfersLoading:e&&n.isFetching,loadTransfers:a}}const YAt={runInputFields:[],runInputGroups:[],runInputFormUi:{},runFormValues:{},runFormInstanceKey:0,rememberedRunGroupKeys:[],runSelectSearchValues:{},runTextDraftValues:{},runInputData:{},runConfigAgentId:null,runFormLoading:!1,runUploading:{},runFileNameMap:{}};function h3n(e,t){return typeof t=="function"?t(e):t}function f3n(e,t){switch(t.type){case"begin_config_loading":return{...e,runInputFields:t.config.fields,runInputGroups:t.config.formGroups,runInputFormUi:t.config.formUi,runFormLoading:!0};case"apply_config":return{...e,runInputFields:t.config.fields,runInputGroups:t.config.formGroups,runInputFormUi:t.config.formUi,runFormValues:t.values,rememberedRunGroupKeys:t.rememberedGroupKeys,runTextDraftValues:{},runConfigAgentId:t.agentId,runFormLoading:!1};case"replace_values":{const r=h3n(e.runFormValues,t.next);return r===e.runFormValues?e:{...e,runFormValues:r}}case"update_field":return{...e,runFormValues:{...e.runFormValues,[t.name]:t.value}};case"update_text_draft":return e.runTextDraftValues[t.name]===t.value?e:{...e,runTextDraftValues:{...e.runTextDraftValues,[t.name]:t.value}};case"commit_text_field":{const r={...e.runTextDraftValues};return delete r[t.name],{...e,runTextDraftValues:r,runFormValues:{...e.runFormValues,[t.name]:t.value}}}case"update_select_search":{const r=e.runSelectSearchValues[t.name];if(!t.value&&r&&!t.allowEmpty)return e;if(!t.value){if(!r)return e;const n={...e.runSelectSearchValues};return delete n[t.name],{...e,runSelectSearchValues:n}}return r===t.value?e:{...e,runSelectSearchValues:{...e.runSelectSearchValues,[t.name]:t.value}}}case"set_input_snapshot":return{...e,runInputData:t.values};case"apply_retry_values":return{...e,runInputData:{},runFormValues:t.values,runTextDraftValues:{},runSelectSearchValues:{},runFormInstanceKey:e.runFormInstanceKey+1};case"set_remembered_group_keys":return{...e,rememberedRunGroupKeys:t.groupKeys};case"reset_execution":return{...e,runFormValues:t.values,rememberedRunGroupKeys:t.rememberedGroupKeys,runTextDraftValues:{},runInputData:{},runSelectSearchValues:{},runUploading:{},runFileNameMap:{},runFormInstanceKey:e.runFormInstanceKey+1};case"reset_agent":return{...YAt,runFormInstanceKey:e.runFormInstanceKey};case"set_uploading":return{...e,runUploading:{...e.runUploading,[t.fieldName]:t.uploading}};case"remember_file_name":return{...e,runFileNameMap:{...e.runFileNameMap,[t.url]:t.name}}}}function p3n(){const[e,t]=S.useReducer(f3n,YAt),r=S.useRef({}),{runInputFields:n,runInputGroups:i,runInputFormUi:a,runFormValues:s,runFormInstanceKey:o,rememberedRunGroupKeys:l,runSelectSearchValues:u,runTextDraftValues:d,runInputData:h,runConfigAgentId:f,runFormLoading:p,runUploading:g,runFileNameMap:m}=e,v=S.useCallback(M=>{t({type:"replace_values",next:M})},[]),y=S.useCallback((M,O)=>{t({type:"update_field",name:M,value:O})},[]),x=S.useCallback((M,O)=>{t({type:"update_text_draft",name:M,value:O})},[]),b=S.useCallback((M,O)=>{t({type:"commit_text_field",name:M,value:O})},[]),w=S.useCallback(M=>{r.current[M]=!0},[]),C=S.useCallback((M,O)=>{const D=r.current[M]===!0;r.current[M]=!1,t({type:"update_select_search",name:M,value:O,allowEmpty:D})},[]),_=S.useCallback((M,O)=>async({file:D,onSuccess:F,onError:B})=>{var j,H,z;t({type:"set_uploading",fieldName:M,uploading:!0});try{const W=D,G=await ny(W),q=(j=G==null?void 0:G.data)==null?void 0:j.url,Y=((H=G==null?void 0:G.data)==null?void 0:H.name)||W.name||(q==null?void 0:q.split("/").pop())||"未知文件";if(!q)throw new Error(((z=G==null?void 0:G.data)==null?void 0:z.message)||"上传失败");t({type:"remember_file_name",url:q,name:Y}),O<=1?y(M,q):v(K=>{const Z=Array.isArray(K[M])?K[M]:K[M]?[K[M]]:[];return{...K,[M]:[...Z,q]}}),F==null||F(G),Et.success("上传成功")}catch(W){B==null||B(W instanceof Error?W:new Error(Ao(W,"文件上传失败"))),Et.error(Ao(W,"文件上传失败"))}finally{t({type:"set_uploading",fieldName:M,uploading:!1})}},[v,y]),T=S.useCallback(M=>{t({type:"begin_config_loading",config:M})},[]),k=S.useCallback((M,O)=>{const D=lxt(M,O.fields,O.formGroups);t({type:"apply_config",agentId:M,config:O,values:hw(O.fields,D.values),rememberedGroupKeys:D.groupKeys})},[]),A=S.useCallback(M=>{const O=M?lxt(M,n,i):{values:{},groupKeys:[]};r.current={},t({type:"reset_execution",values:hw(n,O.values),rememberedGroupKeys:O.groupKeys})},[n,i]),$=S.useCallback(()=>{r.current={},t({type:"reset_agent"})},[]),I=S.useCallback((M=n,O=s)=>axt(M,O),[s,n]),P=S.useCallback((M,O=I())=>{const D=ayt(O,s),F=Efn(M,O,i,D);return t({type:"set_remembered_group_keys",groupKeys:F}),D},[I,s,i]),N=S.useCallback(M=>{t({type:"set_input_snapshot",values:M})},[]),R=S.useCallback(()=>{t({type:"set_input_snapshot",values:{}})},[]),L=S.useCallback(M=>{r.current={},t({type:"apply_retry_values",values:M})},[]);return{runInputFields:n,runInputGroups:i,runInputFormUi:a,runFormValues:s,runFormInstanceKey:o,rememberedRunGroupKeys:l,runSelectSearchValues:u,runTextDraftValues:d,runInputData:h,runConfigAgentId:f,runFormLoading:p,runUploading:g,runFileNameMap:m,replaceRunFormValues:v,updateRunField:y,updateRunTextDraftField:x,commitRunTextField:b,allowEmptyRunSelectSearch:w,updateRunSelectSearch:C,handleRunFileUpload:_,beginInputConfigLoading:T,applyInputConfig:k,resetForExecution:A,getVisibleFields:I,persistCurrentRunValues:P,setInputSnapshot:N,clearInputSnapshot:R,applyRetryValues:L,resetForAgent:$}}const g3n=[{key:"attention",label:"需要你处理"},{key:"running",label:"进行中"},{key:"completed",label:"已完成"}],m3n={id:"",kind:"custom",name:"",source:"",description:"",status:"",schedule:"",nextRun:""};function v3n(e){return e?{id:String(e.id),kind:e.name.toLowerCase().includes("amazon")?"amazon":"custom",name:e.name,source:e.is_from_market?"来自智能体市场":e.origin_type==="from_transfer"?"来自结果流转":"自定义智能体",description:e.description||e.scene_name||"这个智能体已启用,可以运行、查看历史、配置定时任务。",status:e.status==="active"?"已启用":e.status==="draft"?"草稿可运行":"已归档",schedule:e.schedule_display||e.schedule_cron||"",nextRun:e.next_run_at?Cw(e.next_run_at):"暂无定时"}:m3n}function y3n(e){return e?typeof e.has_schedule=="boolean"?e.has_schedule:!!(e.schedule_enabled||e.schedule_cron||e.next_run_at):!1}function b3n({runs:e,activeRunId:t,activeRunSnapshot:r}){return e.find(n=>n.id===t)??r??e[0]}function x3n(e,t){return(e==="schedule"?null:e)??((t==null?void 0:t.status)==="waiting"?"waiting":t?"detail":"run")}function w3n({runs:e,statusFilter:t,historyTotal:r,page:n,pageSize:i}){const a=lke(e),s=t==="all"?a:a.filter(h=>M3e(h)===t),o=r,l=Math.max(1,Math.ceil(o/i)),u=Math.min(n,l),d=g3n.map(h=>({...h,runs:s.filter(f=>M3e(f)===h.key)})).filter(h=>h.runs.length>0);return{sortedRuns:a,filteredRuns:s,recordTotal:o,pageCount:l,activePage:u,groups:d}}const S3n=10;function C3n({view:e,agents:t,selectedAgentId:r,agentKind:n,realRuns:i,activeRunId:a,setActiveRunId:s,activeRunSnapshot:o,setActiveRunSnapshot:l,historyTotal:u,historyLoading:d,historyError:h,loadExecutions:f,activateHistory:p,deletingExecutionId:g,agentTransitionId:m,setAgentTransitionId:v,runFormLoading:y,runConfigAgentId:x,runPreviewStepItems:b,liveExecutionTraces:w,drawer:C,phase:_,transfers:T,waitingRunId:k,waitingInfo:A,waitingPreviewSteps:$}){const[I,P]=S.useState("all"),[N,R]=S.useState(1),[L,M]=S.useState("params"),[O,D]=S.useState(["params"]),[F,B]=S.useState(!1),j=S.useRef(""),H=S.useRef(null),z=S.useRef(""),W=S.useRef(null),G=S.useRef(null),q=S.useMemo(()=>t.find(Re=>Re.id===r)??null,[t,r]),Y=S.useMemo(()=>v3n(q),[q]),K=!!q,Z=S.useMemo(()=>b.length>0?b:j3e(q),[b,q]),X=i,Q=S.useMemo(()=>b3n({runs:X,activeRunId:a,activeRunSnapshot:o}),[a,o,X]),J=S.useMemo(()=>X.find(Re=>Re.id===k)??Q,[Q,X,k]),re=x3n(C,Q),te=_==="running"||_==="review_content"||_==="review_submit"||_==="polling",oe=II(Q),le=mfn(Q),ce=S.useMemo(()=>Q?T.filter(Re=>WAn(Re,Q)):[],[Q,T]),ie=y||!!(K&&re==="run"&&q&&x!==q.id),ue=!!(e==="cockpit"&&q&&m===q.id),we=S.useMemo(()=>w.find(Re=>Re.agentId===r&&Re.steps.length>0)??null,[w,r]),ve=S.useMemo(()=>(we==null?void 0:we.steps.filter(Re=>Re.kind==="substep"||Re.id.startsWith("substep:")))??[],[we]),$e=S.useMemo(()=>w3n({runs:X,statusFilter:I,historyTotal:u,page:N,pageSize:S3n}),[N,I,u,X]),{workbenchSteps:Te,waitingActiveStageKey:Le,workbenchIsCompleted:Ne,defaultWorkbenchStageKey:de,accessibleWorkbenchStageKeys:se,activeWorkbenchStageKey:he,selectedWorkbenchStepHasConfirmPreview:me,workbenchFlowStages:ye}=Txt({workspaceMode:re,isExecuting:te,phase:_,activeRun:Q,activeRunFailed:oe,runPreviewSteps:Z,waitingRun:J,waitingInfo:A,waitingPreviewSteps:$,selectedWorkbenchStageKey:L}),{selectStage:ee,collapseStage:pe}=Ext({agentKind:n,activeRunId:a,workspaceMode:re,defaultStageKey:de,accessibleStageKeys:se,activeStageKey:he,expandedStageKeys:O,setSelectedStageKey:M,setExpandedStageKeys:D,setTransitioning:B,stageContextRef:z,transitionTimerRef:W,switchTimerRef:G}),ae=`${n}:${r??""}`;S.useEffect(()=>{if(e==="cockpit"&&r){if(j.current!==ae&&(j.current=ae,N!==1)){R(1);return}p(r,N)}},[p,ae,N,r,e]),S.useEffect(()=>{i.length!==0&&s(Re=>{var Fe;return i.some(Be=>Be.id===Re)?Re:((Fe=i[0])==null?void 0:Fe.id)??""})},[i,s]),S.useEffect(()=>{if(!K||!a)return;const Re=i.find(Fe=>Fe.id===a);Re&&l(Re)},[a,K,i,l]),S.useEffect(()=>{!r||m!==r||d||y||x!==r||v(null)},[m,d,x,y,r,v]),S.useEffect(()=>{if(ve.length===0&&!(we!=null&&we.updatedAt))return;const Re=H.current;if(!Re)return;const Fe=window.requestAnimationFrame(()=>{Re.scrollTop=Re.scrollHeight});return()=>window.cancelAnimationFrame(Fe)},[ve.length,we==null?void 0:we.updatedAt]),S.useEffect(()=>()=>{G.current!=null&&window.clearTimeout(G.current),W.current!=null&&window.clearTimeout(W.current)},[]);const fe=S.useCallback(Re=>{P(Re),R(1)},[]),ne=S.useCallback(Re=>{R(Re)},[]),ke=S.useCallback(()=>{r&&f(r,N)},[N,f,r]),ge=S.useCallback(()=>{if(r){if(N===1){f(r,1);return}R(1)}},[N,f,r]);return{model:{agentName:Y.name,transitionLoading:ue,history:{agentName:Y.name,hasSchedule:y3n(q),mode:re,error:h,loading:d,filteredRunCount:$e.filteredRuns.length,runCount:X.length,statusFilter:I,groups:$e.groups,recordTotal:$e.recordTotal,pagination:{page:$e.activePage,pageCount:$e.pageCount},deletingExecutionId:g,activeRunId:a},liveTrace:{active:we,substeps:ve,stepsRef:H},workbench:{mode:re,activeRunFailed:oe,activeStageKey:he,waitingActiveStageKey:Le,selectedStepHasConfirmPreview:me}},state:{selectedAgent:q,agent:Y,isLiveAgent:K,runPreviewSteps:Z,runs:X,activeRun:Q,waitingRun:J,waitingRunIdForPreview:(J==null?void 0:J.id)??"",waitingRunStatusForPreview:J==null?void 0:J.status,waitingRunSummaryForPreview:J==null?void 0:J.summary,workspaceMode:re,runParametersLoading:ie,isExecuting:te,activeRunTransfers:ce,activeRunFailed:oe,canShareActiveRun:le,historyPage:N,workbenchSteps:Te,waitingActiveStageKey:Le,workbenchIsCompleted:Ne,activeWorkbenchStageKey:he,workbenchFlowStages:ye,expandedWorkbenchStageKeys:O,workbenchStageTransitioning:F},actions:{changeHistoryStatusFilter:fe,changeHistoryPage:ne,reloadHistory:ke,refreshHistory:ge,selectWorkbenchStage:ee,collapseWorkbenchStage:pe,setSelectedWorkbenchStageKey:M,setExpandedWorkbenchStageKeys:D}}}const _3n=new Set(["string","text","textarea","url","boolean","number","integer","float","date","datetime","time","select","array","list","tags","multi_select","multiselect","file"]),KAt=new Set(["segmented","source","address","daterange","datetimerange","timerange"]);function T3n(e){var r,n;const t=e.type.toLowerCase();return["string","text","textarea","url"].includes(t)&&!((r=e.enum)!=null&&r.length)&&!((n=e.options)!=null&&n.length)&&!e.options_from_skill}function XAt(e,t){const r=t.split(".")[0];return e.find(n=>n.name===t||n.name===r)}function E3n(e){var t;return(t=e.options)!=null&&t.length?e.options:(e.enum||[]).map(r=>({label:r,value:r}))}function ZAt(e,t,r=e){const n=E3n(t);n.length!==0&&(r.enum=n.map(i=>i.value),r.enumNames=n.map(i=>i.label))}function k3n(e,t,r){if(!t.options_from_skill)return;const n=kTe(t.options_params||{});e.options_from_skill=t.options_from_skill,e.options_params=t.options_params||{},e["x-options-blocking-dependencies"]=n.filter(i=>{var a;return((a=XAt(r,i))==null?void 0:a.required)??!0}),e["x-clear-on-options-change"]=!0}function A3n(e,t){var i,a;const r=e.type.toLowerCase(),n={title:e.label||e.name,...e.placeholder?{placeholder:e.placeholder}:{},...e.hint||e.description?{description:e.hint||e.description}:{},...e.default!==void 0?{default:e.default}:{},...(e.span??1)>1||["text","textarea","url","file"].includes(r)?{"x-full-width":!0}:{}};if(r==="boolean")n.type="boolean";else if(r==="integer")n.type="integer";else if(r==="number"||r==="float")n.type="number";else if(r==="date"||r==="datetime"||r==="time")n.type="string",n.widget=r,e.format&&(n["x-temporal-format"]=e.format),e.picker&&(n["x-temporal-picker"]=e.picker),e.show_time!==void 0&&(n["x-temporal-show-time"]=e.show_time);else if(r==="file"){const s=Math.max(e.max_files??1,1);s>1?(n.type="array",n.items={type:"string",format:"uri"},n.maxItems=s):(n.type="string",n.format="uri"),n.widget="file",n.file_type=e.file_type,n.max_files=s}else if(Z5(r)){const s={type:"string"};n.type="array",n.items=s,ZAt(n,e,s)}else n.type="string",(r==="text"||r==="textarea"||r==="url")&&(n.widget="textarea"),ZAt(n,e);return(r==="select"||(i=e.enum)!=null&&i.length||(a=e.options)!=null&&a.length||e.options_from_skill)&&(n.widget="select"),k3n(n,e,t),n}function I3n(e){var t;for(const r of e){const n=r.type.toLowerCase(),i=rJ(r);if(r.visible_when!==void 0)return"conditional-visibility";if(r.range||nyt(r)||tJ(r)||KAt.has(n)||KAt.has(i))return"special-control";if(!_3n.has(n))return"unsupported-type";if((t=r.file_templates)!=null&&t.length)return"file-templates"}for(const r of e)if(r.options_from_skill)for(const n of kTe(r.options_params||{})){const i=XAt(e,n);if(i&&T3n(i))return"draft-dependency"}}function $3n(e,t){return Object.fromEntries(e.map(r=>{const n=BB(r.remember_last)&&t.includes(r.key);return[r.key,{title:`${r.title.replace(/(已记住上次选择)$/,"")}${n?"(已记住上次选择)":""}`,description:r.description,propertyNames:r.fields,columns:Math.min(Math.max(r.columns??1,1),3)}]}))}function R3n({fields:e,groups:t=[],rememberedGroupKeys:r=[]}){if(e.length===0)return{eligible:!1,reason:"missing-fields"};const n=I3n(e);if(n)return{eligible:!1,reason:n};const i=Object.fromEntries(e.map(o=>[o.name,A3n(o,e)])),a=e.filter(o=>o.required).map(o=>o.name);return{eligible:!0,schema:{type:"object",properties:i,...a.length?{required:a}:{},...t.length?{propertyGroups:$3n(t,r)}:{}},hasGroups:t.length>0}}function N3n({stepCount:e,isExecuting:t,runParametersLoading:r,onStartRun:n}){const i=t?"执行中":r?"读取参数":"直接开始执行";return E.jsxs("div",{className:"wandox-automation-direct-run",children:[E.jsxs("div",{className:"wandox-automation-direct-run__hero",children:[E.jsx("span",{className:"wandox-automation-direct-run__icon","aria-hidden":"true",children:E.jsx(Bf,{})}),E.jsxs("div",{className:"wandox-automation-direct-run__copy",children:[E.jsx("span",{className:"wandox-automation-direct-run__eyebrow",children:"直接执行"}),E.jsx("strong",{className:"wandox-automation-direct-run__title",children:"这个智能体无需填写运行参数"}),E.jsx("p",{className:"wandox-automation-direct-run__description",children:"系统会使用智能体默认配置运行,执行过程和最终结果会在当前页面持续更新。"})]}),E.jsx("span",{className:"wandox-automation-direct-run__badge",children:e>0?`${e} 个步骤`:"自动执行"})]}),E.jsxs("div",{className:"wandox-automation-direct-run__footer",children:[E.jsx("span",{className:"wandox-automation-direct-run__hint",children:"无需补充信息,开始后可在左侧历史记录中追踪本次运行。"}),E.jsxs("button",{type:"button",className:"automation-action-button automation-action-button--primary wandox-automation-direct-run__button",onClick:n,disabled:t||r,children:[E.jsx(Bf,{}),i]})]})]})}function QAt({status:e}){return E.jsx("span",{className:`automation-step-dot automation-step-dot--${e}`})}function L3n({value:e}){const t=wxt(e);if(!Cs(t))return null;if(typeof t=="object"&&t!==null&&!Array.isArray(t)){const r=Object.entries(t).filter(([n,i])=>!["execution_steps","output_fields_map","output_type"].includes(n)&&Cs(i)).slice(0,16);return r.length===0?null:E.jsx("div",{className:"automation-detail-data-grid",children:r.map(([n,i])=>E.jsxs("div",{children:[E.jsx("span",{children:n}),E.jsx("pre",{children:rxt(i)})]},n))})}return E.jsx("pre",{className:"automation-detail-json",children:rxt(t)})}function P3n({steps:e,className:t}){return E.jsx("div",{className:["automation-mini-steps",t].filter(Boolean).join(" "),children:e.map(r=>{var n;return E.jsxs("div",{className:"automation-mini-step",children:[E.jsx(QAt,{status:r.status}),E.jsxs("div",{children:[E.jsx("span",{children:r.title}),(n=r.substeps)!=null&&n.length?E.jsx("div",{className:"wandox-automation-mini-substeps",children:r.substeps.map(i=>E.jsxs("div",{className:`wandox-automation-mini-substeps__item wandox-automation-mini-substeps__item--${i.status}`,children:[E.jsx(QAt,{status:i.status}),E.jsx("span",{children:i.title})]},i.id))}):null]})]},r.id)})})}function M3n({run:e}){return E.jsx(P3n,{steps:e.steps})}function D3n({run:e,isExecuting:t,rerunningRunId:r,reExecutingStepId:n,onRerun:i}){const a=r===e.id;return E.jsxs("div",{className:"wandox-automation-task-rerun",children:[E.jsxs("div",{className:"wandox-automation-task-rerun__copy",children:[E.jsx("strong",{children:"重新执行整个任务"}),E.jsx("span",{children:"沿用本次参数,确认后创建新的执行记录"})]}),E.jsxs("button",{type:"button",className:"automation-action-button automation-action-button--primary",onClick:()=>i(e),disabled:t||!!r||!!n,children:[E.jsx(Xv,{}),a?"读取参数":"重新执行"]})]})}function O3n({sender:e,isExecuting:t,onReturn:r}){return E.jsxs("div",{className:"wandox-inbox-run-context",children:[E.jsx("span",{className:"wandox-inbox-run-context__icon","aria-hidden":"true",children:E.jsx(dx,{})}),E.jsxs("div",{className:"wandox-inbox-run-context__copy",children:[E.jsx("span",{className:"wandox-inbox-run-context__eyebrow",children:"承接流转结果"}),E.jsxs("strong",{className:"wandox-inbox-run-context__title",children:["来自 ",e||"同事"," 的执行结果"]}),E.jsx("p",{className:"wandox-inbox-run-context__description",children:"填写本次运行参数后,系统会创建新的执行记忆并保留流转来源。"})]}),!t&&E.jsx("button",{type:"button",className:"wandox-inbox-run-context__back",onClick:r,children:"返回收件箱"})]})}function B3n({templates:e,loading:t,canExecute:r,actionTemplateId:n,onExecute:i,onEnable:a}){return t&&e.length===0?E.jsx("section",{className:"wandox-automation-recommendations",children:E.jsxs("div",{className:"wandox-automation-recommendations__empty",children:[E.jsx(Oi,{size:"small"}),E.jsx("span",{children:"正在读取推荐智能体"})]})}):e.length===0?null:E.jsxs("section",{className:"wandox-automation-recommendations",children:[E.jsx("div",{className:"wandox-automation-recommendations__head",children:E.jsxs("div",{children:[E.jsx("h3",{children:"推荐下一步"}),E.jsx("p",{children:"基于当前执行结果继续处理。"})]})}),E.jsx("div",{className:"wandox-automation-recommendations__list",children:e.map(s=>{var f,p;const o=s.my_status||"not_enabled",l=n===s.id,u=n!==null,d=o==="disabled_by_offline",h=o==="enabled";return E.jsxs("article",{className:"wandox-automation-recommendation-card",children:[E.jsxs("div",{className:"wandox-automation-recommendation-card__main",children:[E.jsx("div",{className:"wandox-automation-recommendation-card__icon",children:s.icon?E.jsx("img",{src:s.icon,alt:""}):E.jsx(Bf,{})}),E.jsxs("div",{className:"wandox-automation-recommendation-card__content",children:[E.jsx("h4",{children:s.name}),s.description&&E.jsx("p",{children:s.description}),(s.category||((f=s.tags)==null?void 0:f.length))&&E.jsxs("div",{className:"wandox-automation-recommendation-card__tags",children:[s.category&&E.jsx("span",{children:s.category}),(p=s.tags)==null?void 0:p.slice(0,3).map(g=>E.jsx("span",{children:g},g))]})]})]}),E.jsx("div",{className:"wandox-automation-recommendation-card__action",children:d?E.jsx("button",{type:"button",className:"automation-action-button automation-action-button--compact",disabled:!0,children:"已下线"}):h?E.jsxs("button",{type:"button",className:"automation-action-button automation-action-button--primary automation-action-button--compact",disabled:!r||u,onClick:()=>i(s),children:[E.jsx(Bf,{}),l?"执行中":"使用当前结果执行"]}):E.jsxs("button",{type:"button",className:"automation-action-button automation-action-button--compact",disabled:u,onClick:()=>a(s),children:[E.jsx(Ul,{}),l?"启用中":"启用"]})})]},s.id)})})]})}function F3n({fields:e,values:t,readOnly:r,loading:n,readOnlyLoading:i,groups:a,rememberedGroupKeys:s,formInstanceKey:o,renderFieldLabel:l,getFormItemClassName:u,renderField:d}){if(n||r&&i&&e.length===0)return E.jsx(HB,{className:"automation-run-loading"});if(e.length===0)return E.jsxs("div",{className:"automation-no-params",children:[E.jsx(VA,{}),E.jsxs("div",{children:[E.jsx("strong",{children:r?"本次执行无需额外参数":"这个智能体无需填写运行参数"}),E.jsx("p",{children:r?"智能体使用默认配置进入执行步骤。":"点击开始执行后,系统会直接创建执行记录并进入流程。"})]})]});if(!r&&a.length>0){const h=new Map(e.map(f=>[f.name,f]));return E.jsx("div",{className:"automation-run-form-groups",children:a.map(f=>{const p=f.fields.map(v=>h.get(v)).filter(v=>!!v);if(p.length===0)return null;const g=Math.min(Math.max(f.columns??1,1),3),m=BB(f.remember_last)&&s.includes(f.key);return E.jsxs("section",{className:"automation-run-form-group-card",children:[E.jsxs("div",{className:"automation-run-form-group-card__head",children:[E.jsxs("strong",{className:"automation-run-form-group-card__title",children:[vfn(f),m&&E.jsx("span",{className:"automation-run-form-group-card__remembered",children:"(已记住上次选择)"})]}),f.description&&E.jsx("span",{className:"automation-run-form-group-card__description",children:f.description})]}),E.jsx(kn,{layout:"vertical",colon:!1,className:"automation-run-form automation-run-form--group-card",style:{gridTemplateColumns:`repeat(${g}, minmax(0, 1fr))`},children:p.map(v=>E.jsx(kn.Item,{label:l(v,!0),className:u(v),children:d(v,t,r)},v.name))},`${f.key}-${o}`)]},f.key)})})}return E.jsx(kn,{layout:"horizontal",colon:!1,labelAlign:"left",labelCol:{flex:"152px"},wrapperCol:{flex:1},className:`automation-run-form automation-run-form--live${r?" wandox-automation-run-form--readonly":""}`,children:e.map(h=>E.jsx(kn.Item,{label:l(h),className:u(h),children:d(h,t,r)},h.name))},r?"readonly-run-form":`editable-run-form-${o}`)}const z3n=S.forwardRef(function({hasGroups:t,presentation:r="sections",expandedGroupKeys:n,onExpandedGroupKeysChange:i,className:a,...s},o){const l=t&&r==="sections",u=t&&r==="collapse";return E.jsx(MEe,{ref:o,...s,groupDisplay:r,groupAccordion:!1,destroyInactiveGroups:!1,expandedGroupKeys:u?n:void 0,onExpandedGroupKeysChange:u?i:void 0,formLayout:t?"vertical":"horizontal",formLabelAlign:t?void 0:"left",formLabelCol:t?void 0:{flex:"152px"},formWrapperCol:t?void 0:{flex:1},showArrayControls:!1,className:["wandox-automation-schema-form","wandox-automation-schema-run-form",l?"wandox-automation-schema-form--grouped":void 0,l?"wandox-automation-schema-run-form--grouped":void 0,u?"wandox-automation-schema-form--collapsible":void 0,u?"wandox-automation-schema-run-form--collapsible":void 0,a].filter(Boolean).join(" ")})});function j3n({schema:e,value:t,hasGroups:r,formInstanceKey:n,onChange:i}){return E.jsx(z3n,{schema:e,value:t,formSize:"middle",onChange:i,loadOptions:VEe,uploadFile:HEe,hasGroups:r,presentation:"sections"},`automation-schema-run-form-${n}`)}const lre=(...e)=>["automation-action-button",...e.filter(Boolean)].join(" ");function V3n({model:e,actions:t}){const{formFooter:r=!1,footerNote:n,phase:i,executing:a,parametersLoading:s,visibleFieldCount:o,submitLabel:l,showDraft:u,draftLabel:d}=e,{openDetail:h,saveDraft:f,startRun:p,cancelExecution:g}=t,m=s?"读取参数":o===0?"直接开始执行":i==="failed"?"重新执行":a?"执行中":r?l:"开始执行";return E.jsxs("div",{className:`automation-workbench-inline-actions${r?" automation-workbench-inline-actions--form-footer":""}`,children:[r&&n&&E.jsx("span",{className:"automation-workbench-inline-actions__note",children:n}),E.jsx("div",{className:"automation-workbench-inline-actions__buttons",children:i==="completed"?E.jsx("button",{type:"button",className:lre("automation-action-button--primary"),onClick:h,children:"查看结果详情"}):E.jsxs(E.Fragment,{children:[a&&E.jsxs("button",{type:"button",className:lre("automation-action-button--danger"),onClick:g,children:[E.jsx(mZe,{}),"取消执行"]}),r&&u&&!a&&E.jsx("button",{type:"button",className:lre("automation-action-button--form-secondary"),onClick:f,children:d}),E.jsxs("button",{type:"button",className:lre("automation-action-button--primary",r&&"automation-action-button--form-primary"),onClick:p,disabled:a||s,children:[!r&&E.jsx(Bf,{}),m]})]})})]})}function H3n({children:e,tone:t="gray"}){return E.jsx("span",{className:`automation-badge automation-badge--${t}`,children:e})}function W3n(e){const t=document.createElement("a");t.href=e.path,t.download=e.name,t.target="_blank",document.body.appendChild(t),t.click(),document.body.removeChild(t)}function G3n({cockpit:e,execution:t,runForm:r,recommendations:n,waitingOnlyMissing:i,setWaitingOnlyMissing:a,reExecutingStepId:s,rerunningRunId:o,inboxRunTransfer:l,inboxRunTransferSender:u,actions:d}){const{runInputFields:h,runInputGroups:f,runInputFormUi:p,runFormValues:g,runFormInstanceKey:m,rememberedRunGroupKeys:v,runSelectSearchValues:y,runTextDraftValues:x,runFormLoading:b,runUploading:w,runFileNameMap:C,replaceRunFormValues:_,updateRunField:T,updateRunTextDraftField:k,commitRunTextField:A,allowEmptyRunSelectSearch:$,updateRunSelectSearch:I,handleRunFileUpload:P,getVisibleFields:N,persistCurrentRunValues:R}=r,{phase:L,waitingInfo:M,waitingLoading:O,waitingSubmitting:D}=t,{templates:F,loading:B,actionId:j}=n,{selectedAgent:H,runPreviewSteps:z,activeRun:W,workspaceMode:G,runParametersLoading:q,isExecuting:Y,activeRunTransfers:K,activeRunFailed:Z,canShareActiveRun:X,workbenchSteps:Q,waitingActiveStageKey:J,workbenchIsCompleted:re,activeWorkbenchStageKey:te,workbenchFlowStages:oe,expandedWorkbenchStageKeys:le,workbenchStageTransitioning:ce}=e.state,{collapseWorkbenchStage:ie,selectWorkbenchStage:ue}=e.actions,we=S.useMemo(()=>R3n({fields:h,groups:f,rememberedGroupKeys:v}),[h,f,v]),ve=Q5(we.eligible?[]:h,g,_),$e=new Set(h.map(xe=>xe.name)),Te=["store_account","product_sku","publish_mode"].every(xe=>$e.has(xe)),Le=f.length>0,Ne={title:p.title||(Te?"新建刊登任务":"新建任务"),description:p.description||(Te?"填写产品信息后,AI 将自动生成 Listing 文案并完成亚马逊模版映射":Le?"填写任务信息后,系统将自动执行后续流程":""),footerNote:p.footerNote||(Te?"两种来源拿到基本信息后,AI 统一做亚马逊模版映射,后续流程一致":Le?"确认参数后,系统将按当前配置执行后续流程":""),submitLabel:p.submitLabel||(Te?"开始生成 Listing →":"开始执行 →"),draftLabel:p.draftLabel||"存为草稿",showDraft:p.showDraft??Le},de=xe=>{if(xe.hint||xe.description)return xe.hint||xe.description;if(Te){if(xe.name==="category")return"决定亚马逊模版";if(xe.name==="source_skill")return"列表可扩展";if(xe.name==="competitor_refs")return"支持多个,回车添加"}},se=(xe,Pe=!1)=>{const Ie=de(xe);return E.jsxs("span",{className:"wandox-automation-run-field-label",children:[E.jsxs("span",{children:[xe.label||xe.name,xe.required&&E.jsx("span",{className:"automation-required",children:"*"}),Pe&&Ie&&E.jsxs("span",{className:"wandox-automation-run-field-label__inline-hint",children:["(",Ie,")"]})]}),!Pe&&Ie&&E.jsx(ri,{title:Ie,children:E.jsx("span",{className:"wandox-automation-run-field-label__hint","aria-label":`${xe.label||xe.name}说明`,children:E.jsx(KS,{})})})]})},he=xe=>{var Ke,Se;const Pe=xe.type.toLowerCase(),Ie=rJ(xe),De=["automation-run-form-item"],Ue=!!!((Ke=xe.enum)!=null&&Ke.length||(Se=xe.options)!=null&&Se.length||xe.options_from_skill||["select","array","list","tags","segmented"].includes(Pe)||["select","segmented"].includes(Ie))&&["textarea","text","url"].includes(Pe);return Pe==="file"&&De.push("automation-run-form-item--file"),Pe==="file"&&ryt(xe.file_type)&&De.push("automation-run-form-item--image"),(Ue||(xe.span??1)>1)&&De.push("automation-run-form-item--wide"),De.join(" ")},me=(xe,Pe=g,Ie=!1)=>E.jsx(nJ,{field:xe,value:Pe[xe.name],readOnly:Ie,uploading:!!w[xe.name],fileNameMap:C,getOptionState:ve.getFieldState,onChange:T,onUpload:P,onDownloadTemplate:W3n,draftValue:!Ie&&Object.prototype.hasOwnProperty.call(x,xe.name)?x[xe.name]:void 0,onDraftChange:Ie?void 0:k,onDraftCommit:Ie?void 0:A,selectSearchValue:y[xe.name]||"",onSelectAllowEmptySearch:De=>{$(De)},onSelectSearchChange:I}),ye=({fields:xe=h,values:Pe=g,readOnly:Ie=!1}={})=>{const De=axt(xe,Pe),tt=Ie?[]:_fn(De,f);return!Ie&&xe===h&&Pe===g&&!q&&we.eligible&&we.schema?E.jsx(j3n,{schema:we.schema,value:g,hasGroups:!!we.hasGroups,formInstanceKey:m,onChange:_}):E.jsx(F3n,{fields:De,values:Pe,readOnly:Ie,loading:!Ie&&q,readOnlyLoading:b,groups:tt,rememberedGroupKeys:v,formInstanceKey:m,renderFieldLabel:se,getFormItemClassName:he,renderField:me})},ee=()=>ye(),pe=()=>E.jsx(N3n,{stepCount:z.length,isExecuting:Y,runParametersLoading:q,onStartRun:d.startRun}),ae=()=>!l||G!=="run"?null:E.jsx(O3n,{sender:u,isExecuting:Y,onReturn:d.returnToInbox}),fe=xe=>{var Ke,Se;const Pe=xe.steps.findIndex(vt=>vt.status==="running"||vt.status==="waiting"),Ie=Pe>=0?xe.steps[Pe]:xe.steps[0],De=((Ke=Ie==null?void 0:Ie.substeps)==null?void 0:Ke.find(vt=>vt.status==="running"))??((Se=Ie==null?void 0:Ie.substeps)==null?void 0:Se[Ie.substeps.length-1]),tt=xe.steps.filter(vt=>vt.status==="completed").length,Ue=xe.steps.length||1;return E.jsxs("div",{className:"wandox-automation-running-state",children:[E.jsxs("div",{className:"wandox-automation-running-state__hero",children:[E.jsx("span",{className:"wandox-automation-running-state__pulse","aria-hidden":"true",children:E.jsx("span",{})}),E.jsxs("div",{children:[E.jsx("strong",{children:"生成中"}),E.jsx("p",{children:De?`正在处理:${De.title}`:Ie?`正在处理:${Ie.title}`:"正在创建执行记录"})]}),E.jsx(H3n,{tone:"blue",children:`${tt}/${Ue}`})]}),E.jsx(M3n,{run:xe})]})},ne=W?E.jsx(L3n,{value:W.detailData}):null,ke=!!(W!=null&&W.resultPayload||W!=null&&W.resultContent||ne),ge=(W==null?void 0:W.status)==="running",Oe=()=>{const xe=N();H!=null&&H.id&&R(H.id,xe),d.notify("草稿已保存,已记住启用记忆的分组")},Re=(xe=!1)=>{const Pe=N().length;return E.jsx(V3n,{model:{formFooter:xe,footerNote:Ne.footerNote,phase:L,executing:Y,parametersLoading:q,visibleFieldCount:Pe,submitLabel:Ne.submitLabel,showDraft:!!Ne.showDraft,draftLabel:Ne.draftLabel},actions:{openDetail:d.openDetail,saveDraft:Oe,startRun:d.startRun,cancelExecution:d.cancelExecution}})},Fe=(xe=!1)=>{const Pe=h.length>0?h:((W==null?void 0:W.params)??[]).map(([Ue],Ke)=>({name:`history_param_${Ke}`,label:Ue,type:"string",required:!1})),Ie=h.length>0?fxt(h,W):Pe.reduce((Ue,Ke,Se)=>{var vt;return Ue[Ke.name]=((vt=W==null?void 0:W.params[Se])==null?void 0:vt[1])??"",Ue},{}),De=N(),tt=G==="run"&&!q&&De.length===0;return E.jsx($xt,{workspaceMode:G,isTransitioning:xe,showDirectRunPanel:tt,formUi:Ne,historicalFields:Pe,historicalValues:Ie,historicalEmptyBody:ye({fields:Pe,values:Ie,readOnly:!0}),runBody:tt?pe():E.jsxs(E.Fragment,{children:[ee(),Re(!0)]}),inboxContext:ae(),renderFieldLabel:se,formatValue:fke,stringifyValue:_w,onCollapseStage:ie})},Be=(xe,Pe=!1)=>{const Ie=Cke(xe),De=`step:${xe.id}`,tt=G==="waiting"&&De===J,Ue=!!(W&&G!=="run"&&II(W));return E.jsx(Rxt,{model:{step:xe,transitioning:Pe,waiting:{current:tt,info:M,loading:O,onlyMissing:i,submitting:D},completedConfirmData:Ie,activeRun:W,executing:Y,retry:{reExecutingStepId:s,rerunningRunId:o,canReExecute:Ue}},actions:{collapse:ie,changeWaitingOnlyMissing:a,submitWaitingInput:d.submitWaitingInput,openWaitingRun:d.openWaitingRun,reExecute:(Ke,Se)=>void d.reExecuteFailedStep(Ke,Se)}})},Xe=()=>{if(!(H!=null&&H.market_template_id))return null;const xe=!!(W&&W.status==="completed"&&!Z);return E.jsx(B3n,{templates:F,loading:B,canExecute:xe,actionTemplateId:j,onExecute:Pe=>void d.executeRecommendedTemplate(Pe),onEnable:Pe=>void d.enableRecommendedTemplate(Pe)})},je=()=>{const xe=ge?"生成中":ke&&lee(W==null?void 0:W.resultTitle)||"执行结果",Pe=wke((W==null?void 0:W.resultPayload)??(W==null?void 0:W.resultContent),xe),Ie=(W==null?void 0:W.summary.trim())??"",De=!!(ke&&Ie&&!/^(执行完成|已完成(?:\s*\d+\s*个步骤)?)$/.test(Ie)&&Ie!==xe);return E.jsx(Axt,{model:{completed:re,run:W,failed:Z,running:ge,hasResult:ke,shareable:X,transfers:K,phase:L,mode:G,progress:{completedSteps:Q.filter(tt=>tt.status==="completed").length,stepCount:Q.length},result:{heading:xe,bodyPayload:Pe,summary:Ie,showSummary:De},content:{runningTransition:W?fe(W):null,recommendedTemplates:Xe(),runActions:Re()}},actions:{share:tt=>void d.shareRun(tt)}})},ot=(xe,Pe=!1)=>xe.kind==="params"?Fe(Pe):xe.kind==="complete"?je():xe.step?Be(xe.step,Pe):null;return{renderWorkbenchFlow:()=>E.jsx(Ixt,{workspaceMode:G,stages:oe,activeStageKey:te,expandedStageKeys:le,transitioning:ce,renderStageContent:ot,onSelectStage:ue}),renderFailedTaskRerunAction:()=>G==="run"||!W||!Z?null:E.jsx(D3n,{run:W,isExecuting:Y,rerunningRunId:o,reExecutingStepId:s,onRerun:()=>void d.rerunFailedExecution(W)})}}function W3e(e){return e.transferred_nickname||e.transferred_username||e.transferred_by||"同事"}function cre(e){return e.agent_name?`流转了「${e.agent_name}」的执行结果`:"流转了一份执行结果"}function U3n(e){var r;const t=((r=e==null?void 0:e.transfer_message)==null?void 0:r.trim())??"";return t&&t!=="-"?t:""}function q3n(e){return e?U3n(e)||cre(e):"暂无待处理结果"}function Y3n(e){return e==="accepted"?"已接收":e==="rejected"?"已拒绝":"待处理"}function K3n(e){return e==="accepted"?"completed":e==="rejected"?"failed":"waiting"}function X3n(e){return Cw(e.created_at)||e.created_at||"未知时间"}function Z3n(e){const t=new Date,r=new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime(),n=new Date(e.getFullYear(),e.getMonth(),e.getDate()).getTime();if(n===r)return"今天";if(n===r-24*60*60*1e3)return"昨天";const i=`${gp(e.getMonth()+1)}/${gp(e.getDate())}`;return e.getFullYear()===t.getFullYear()?i:`${e.getFullYear()}/${i}`}function Q3n(e){return{id:e.id,transfer:e,primaryText:q3n(e),statusText:Y3n(e.status),runStatus:K3n(e.status),summary:cre(e),time:Cw(e.created_at)||"未知时间"}}function J3n(e){return e.map((t,r)=>({item:t,index:r,date:Qbt(t.created_at)})).sort((t,r)=>{var n,i;return(((n=r.date)==null?void 0:n.getTime())??0)-(((i=t.date)==null?void 0:i.getTime())??0)||t.index-r.index}).reduce((t,r)=>{const n=r.date?gfn(r.date):"unknown",i=r.date?Z3n(r.date):"未知日期",a=Q3n(r.item),s=t[t.length-1];return(s==null?void 0:s.key)===n?(s.items.push(a),t):(t.push({key:n,label:i,items:[a]}),t)},[])}function e5n({inboxProcessTransfer:e,agentsRef:t,loadAgents:r,setInboxProcessTransfer:n,setInboxRunTransfer:i,setRejectingTransferId:a,selectAgent:s,notify:o,resetAgentStoreForm:l,setAgentStoreFormName:u,setPendingTransferId:d,setShowAgentDrawer:h}){const f=bl(),p=jf({...xp.transfers.reject(),onSuccess:()=>Xh(f,{type:"transfer-rejected"})}),g=S.useCallback(async b=>{n(b),t.current.length===0&&await r(null,!1)},[t,r,n]),m=S.useCallback(b=>{const w=e;w&&(n(null),s(b),i(w),o("已进入承接任务配置"))},[e,o,s,n,i]),v=S.useCallback(b=>{n(null),l(),u(b.agent_name?`${b.agent_name}-处理`:""),d(b.id),h(!0)},[l,u,n,d,h]),y=S.useCallback(()=>{e&&v(e)},[v,e]),x=S.useCallback(b=>{ki.confirm({title:"拒绝这条流转?",content:cre(b),okText:"拒绝",okButtonProps:{danger:!0},cancelText:"取消",centered:!0,onOk:async()=>{a(b.id);try{await p.mutateAsync(b.id),Et.success("已拒绝")}catch(w){Et.error(Ao(w,"操作失败"))}finally{a(null)}}})},[p,a]);return{executeInboxTransfer:g,continueInboxTransfer:m,createAgentFromInbox:v,createAgentFromInboxProcess:y,rejectInboxTransfer:x}}const t5n=0;function r5n({view:e,activeTransfer:t}){const r=bl(),n=e==="inbox"?(t==null?void 0:t.source_result_id)??null:null,i=S.useMemo(()=>Jd.results.detail(n??t5n),[n]),a=ty({...i,enabled:n!==null}),s=S.useCallback(async()=>{if(n===null)return null;try{return await r.fetchQuery({...Jd.results.detail(n),staleTime:0})}catch{return null}},[r,n]);return{detail:a.data??null,loading:n!==null&&a.isFetching,error:a.error?Ao(a.error,"结果详情读取失败"):"",load:s}}const n5n=[];function JAt(e,t){Ta.setState({transfers:e,transfersLoading:t})}function i5n({active:e}){const t=bl(),r=S.useMemo(()=>Jd.transfers.inbox(YAn),[]),n=ty({...r,enabled:e}),i=n.data??n5n,a=e&&n.isFetching;S.useEffect(()=>{!e&&n.data===void 0||JAt(i,a)},[e,n.data,a,i]);const s=S.useCallback(async()=>{Ta.setState({transfersLoading:!0});try{const o=await t.fetchQuery({...r,staleTime:0});return JAt(o,!1),o}catch{return Ta.setState({transfersLoading:!1}),[]}},[r,t]);return{transfers:i,transfersLoading:a,loadTransfers:s}}function G3e(e,t){return e.find(r=>r.id===t)??e[0]??null}function a5n(e,t){const r=G3e(e,t);return{groups:J3n(e),pendingCount:e.filter(n=>n.status==="pending").length,activeTransfer:r,active:r?{transfer:r,pending:r.status==="pending",sender:W3e(r),time:X3n(r)}:null}}function s5n({view:e,agents:t,agentsLoading:r,agentsRef:n,loadAgents:i,selectAgent:a,notify:s,inboxRunTransfer:o,setInboxRunTransfer:l,setView:u,setDrawer:d,setModal:h,setAgentTransitionId:f}){const[p,g]=S.useState(null),[m,v]=S.useState(null),[y,x]=S.useState(null),{transfers:b,transfersLoading:w,loadTransfers:C}=i5n({active:e==="inbox"}),_=Ta(H=>H.resetForm),T=Ta(H=>H.setFormName),k=Ta(H=>H.setPendingTransferId),A=Ta(H=>H.setShowAgentDrawer),$=S.useMemo(()=>a5n(b,p),[p,b]),I=r5n({view:e,activeTransfer:$.activeTransfer}),{executeInboxTransfer:P,continueInboxTransfer:N,createAgentFromInbox:R,createAgentFromInboxProcess:L,rejectInboxTransfer:M}=e5n({inboxProcessTransfer:m,agentsRef:n,loadAgents:i,setInboxProcessTransfer:v,setInboxRunTransfer:l,setRejectingTransferId:x,selectAgent:a,notify:s,resetAgentStoreForm:_,setAgentStoreFormName:T,setPendingTransferId:k,setShowAgentDrawer:A});S.useEffect(()=>{e==="inbox"&&g(H=>{var z;return((z=G3e(b,H))==null?void 0:z.id)??null})},[b,e]);const O=S.useCallback(()=>{C()},[C]),D=S.useCallback(()=>{u("inbox"),d(null),h(null),g(H=>{var z;return((z=G3e(b,H))==null?void 0:z.id)??null})},[d,h,u,b]),F=S.useCallback(()=>{l(null),d(null),f(null),u("inbox")},[f,d,l,u]),B=S.useMemo(()=>({transferCount:b.length,loading:w,groups:$.groups,active:$.active,rejectingTransferId:y,result:{detail:I.detail,loading:I.loading,error:I.error},process:{transfer:m,agents:t,loading:r,sender:m?W3e(m):"",summary:m?cre(m):""}}),[t,r,I.detail,I.error,I.loading,m,$.active,$.groups,y,b.length,w]),j=S.useMemo(()=>({refresh:O,selectTransfer:g,process:P,createAgent:R,reject:M,retryResult:()=>{I.load()},closeProcess:()=>v(null),continueProcess:N,createAgentFromProcess:L}),[N,R,L,P,I.load,O,M]);return{model:B,state:{pendingCount:$.pendingCount,runTransferSender:o?W3e(o):""},actions:{workspace:j,openInbox:D,refreshTransfers:O,returnToInboxFromTransfer:F}}}function o5n({active:e,agentsRef:t,selectedAgentIdRef:r,selectAgent:n,setSelectedAgentId:i,setActiveRunId:a,setView:s,resetHistory:o,setIdlePhase:l}){const u=bl(),d=S.useMemo(()=>Jd.agents.list(GAn),[]),h=S.useMemo(()=>Jd.market.templates.list(UAn),[]),f=ty({...d,enabled:e}),p=ty({...h,enabled:e}),g=f.data??[],m=p.data??[],v=S.useCallback((w,C,_=!1)=>{t.current=w,Ta.setState({agents:w,agentsLoading:!1});const T=C?w.find(P=>P.id===C):null,k=r.current,A=k?w.find(P=>P.id===k):null,$=T||A||null;if($&&(T||_)&&n($),$)return;r.current=null,i(null),o(),a(""),l();const I=Ta.getState();I.setExecutionSteps([]),I.setExecutionProgress(0),I.setCurrentExecutionId(null),I.setLatestSSEEvent(null),s(P=>P==="inbox"?"inbox":"market")},[t,o,n,r,a,l,i,s]);S.useEffect(()=>{f.data&&v(f.data)},[f.data,v]);const y=S.useCallback(w=>{u.setQueryData(d.queryKey,(C=[])=>{const _=typeof w=="function"?w(C):w;return t.current=_,Ta.setState({agents:_,agentsLoading:!1}),_})},[d.queryKey,t,u]),x=S.useCallback(async()=>{try{return await u.fetchQuery({...h,staleTime:0})}catch{return[]}},[h,u]),b=S.useCallback(async(w,C=!1,_=!1)=>{try{const T=await u.fetchQuery({...d,..._?{staleTime:0}:{}});return v(T,w,C),T}catch{return t.current.length===0&&Ta.setState({agents:[],agentsLoading:!1}),[]}},[d,t,u,v]);return{agents:g,setAgents:y,agentsLoading:g.length===0&&f.isFetching,agentsError:f.error?Ao(f.error,"加载智能体列表失败"):"",marketTemplates:m,marketLoading:p.isFetching,marketError:p.error?Ao(p.error,"加载市场模板失败"):"",loadAgents:b,loadMarketTemplates:x}}function l5n(e){const t=[],r=new Map;for(const n of e)r.set(n.id,n),!n.is_template&&n.status==="active"&&t.push(n);return{availableAgents:t,agentById:r}}function c5n({active:e,agentsRef:t,selectedAgentIdRef:r,selectAgent:n,setSelectedAgentId:i,setActiveRunId:a,setView:s,resetHistory:o,setIdlePhase:l}){const u=bl(),d=jf({...xp.agents.delete(),onSuccess:(N,R)=>Xh(u,{type:"agent-deleted",agentId:R},{refetchType:"none"})}),h=jf({...xp.market.enableTemplate(),onSuccess:()=>Xh(u,{type:"market-template-enabled"},{refetchType:"none"})}),f=h.isPending?h.variables??null:null,p=d.isPending?d.variables??null:null,{agents:g,setAgents:m,agentsLoading:v,agentsError:y,marketTemplates:x,marketLoading:b,marketError:w,loadAgents:C,loadMarketTemplates:_}=o5n({active:e,agentsRef:t,selectedAgentIdRef:r,selectAgent:n,setSelectedAgentId:i,setActiveRunId:a,setView:s,resetHistory:o,setIdlePhase:l}),{availableAgents:T}=S.useMemo(()=>l5n(g),[g]),k=S.useCallback(N=>{const R=N.is_from_market?"移除":"删除";ki.confirm({title:`${R}「${N.name}」?`,content:N.is_from_market?"移除后可从市场重新启用。":"删除后需要重新创建。",okText:R,cancelText:"取消",okButtonProps:{danger:!0},onOk:async()=>{try{await d.mutateAsync(N.id),Et.success(`智能体已${R}`),r.current===N.id&&(r.current=null,i(null),o()),s("market"),await C(null,!1),await _()}catch(L){throw Et.error(Ao(L,`${R}智能体失败`)),L}}})},[d,C,_,o,r,i,s]),A=S.useCallback(async N=>{try{await h.mutateAsync(N.id),await _(),await C(null,!1),s("market"),Et.success("已启用智能体")}catch(R){Et.error(Ao(R,"启用模板失败"))}},[h,C,_,s]),$=S.useMemo(()=>({agentsLoading:v,agentsError:y,marketLoading:b,marketError:w,marketTemplates:x,availableAgents:T,subscribingTemplateId:f,deletingAgentId:p}),[v,y,T,p,w,b,x,f]),I=S.useCallback(()=>{Promise.all([C(null,!1,!0),_()])},[C,_]),P=S.useMemo(()=>({reload:I,enableTemplate:A,selectAgent:n,deleteAgent:k}),[k,A,I,n]);return{agents:g,setAgents:m,agentsLoading:v,agentsError:y,loadAgents:C,loadMarketTemplates:_,model:$,actions:P}}function e3t({embedded:e=!1,onHeaderChange:t,onCockpitEnter:r,onCockpitExit:n,onInboxEnter:i}){const[a,s]=S.useState("market"),o=_An(),{drawer:l,setDrawer:u,phase:d,waitingRunId:h,setWaitingRunId:f,waitingInfo:p,setWaitingInfo:g,setWaitingLoading:m,setWaitingSubmitting:v,openDetailDrawer:y,setIdlePhase:x}=o,[b,w]=S.useState(null),[C,_]=S.useState(null),T=S.useRef([]),[k,A]=S.useState(null),[$,I]=S.useState(null),P=S.useRef(null),N=p3n(),R=a3n({enabled:a==="cockpit",selectedAgentIdRef:P}),{realRuns:L,activeRunSnapshot:M,setActiveRunSnapshot:O,historyTotal:D,historyLoading:F,historyError:B,loadExecutions:j,activateHistory:H,resetHistory:z}=R,[W,G]=S.useState(null),q=d3n({active:a==="cockpit"}),{transfers:Y}=q,[K,Z]=S.useState("amazon"),[X,Q]=S.useState(""),[J,re]=S.useState(null),[te,oe]=S.useState(""),le=S.useCallback(wr=>{oe(wr),window.setTimeout(()=>oe(""),1900)},[]),{runConfigAgentId:ce,runFormLoading:ie,resetForAgent:ue}=N,[we,ve]=S.useState([]),{traces:$e,recordEvent:Te}=TAn(),[Le,Ne]=S.useState(null),[de,se]=S.useState(!1),he=c3n(),me=SAn(),{reset:ye}=me,ee=S.useRef(""),pe=S.useRef(null),ae=E3e(),{abort:fe}=ae,ne=S.useCallback(wr=>{fe(),re(null);const at=Ta.getState();at.setExecutionSteps([]),at.setExecutionProgress(0),at.setCurrentExecutionId(null),at.setLatestSSEEvent(null),ye();const Yn=wr.name.toLowerCase().includes("amazon")?"amazon":"custom";P.current=wr.id,G(wr.id),A(wr.id),Z(Yn),Q(""),z(!0),x(),ue(),ve([]),f(""),g(null),m(!1),v(!1),s("cockpit"),u("run"),w(null),r==null||r()},[fe,r,ye,ue,z,u,x,g,m,f,v]),{agents:ke,setAgents:ge,agentsLoading:Oe,agentsError:Re,loadAgents:Fe,model:Be,actions:Xe}=c5n({active:a==="market",agentsRef:T,selectedAgentIdRef:P,selectAgent:ne,setSelectedAgentId:A,setActiveRunId:Q,setView:s,resetHistory:z,setIdlePhase:x}),je=C3n({view:a,agents:ke,selectedAgentId:k,agentKind:K,realRuns:L,activeRunId:X,setActiveRunId:Q,activeRunSnapshot:M,setActiveRunSnapshot:O,historyTotal:D,historyLoading:F,historyError:B,loadExecutions:j,activateHistory:H,deletingExecutionId:C,agentTransitionId:W,setAgentTransitionId:G,runFormLoading:ie,runConfigAgentId:ce,runPreviewStepItems:we,liveExecutionTraces:$e,drawer:l,phase:d,transfers:Y,waitingRunId:h,waitingInfo:p,waitingPreviewSteps:Le}),{model:ot,state:{selectedAgent:Ce,agent:it},actions:{changeHistoryStatusFilter:xe,changeHistoryPage:Pe,reloadHistory:Ie}}=je,{model:De,state:{pendingCount:tt,runTransferSender:Ue},actions:{workspace:Ke,openInbox:Se,refreshTransfers:vt,returnToInboxFromTransfer:pt}}=s5n({view:a,agents:ke,agentsLoading:Oe,agentsRef:T,loadAgents:Fe,selectAgent:ne,notify:le,inboxRunTransfer:J,setInboxRunTransfer:re,setView:s,setDrawer:u,setModal:w,setAgentTransitionId:G}),bt=S.useCallback(()=>{Se(),i==null||i()},[i,Se]);S.useEffect(()=>{se(!1)},[h]);const{currentExecutionId:Ye,openRun:st}=n3n({enabled:a==="cockpit",activeRunId:X,agentsRef:T,setAgents:ge,execution:o,executions:R,runForm:N,cockpit:je,recommendations:he,executionEvents:me,runPreviewStepItems:we,setRunPreviewStepItems:ve,pendingExecutionTitleRef:ee,recommendedExecutionRef:pe,recordLiveTraceEvent:Te,setActiveRunId:Q,setWaitingPreviewSteps:Ne,notify:le}),{state:{rerunningRunId:Me,reExecutingStepId:rt,transferModalResultId:Je},actions:{openRunDrawer:et,openWaitingRun:ht,submitWaitingInput:nt,rerunFailedExecution:yt,reExecuteFailedStep:xt,startRun:At,cancelCurrentExecution:Pt,closeTransferModal:Bt,openShareForRun:dr,deleteExecutionRecord:Cr,enableRecommendedTemplate:zt,executeRecommendedTemplate:Ze}}=OAn({selectedAgentId:k,currentExecutionId:Ye,execution:o,executions:R,runForm:N,cockpit:je,recommendations:he,agentExecution:ae,resetExecutionEvents:ye,pendingExecutionTitleRef:ee,recommendedExecutionRef:pe,setActiveRunId:Q,setDeletingExecutionId:_,setModal:w,inboxRunTransfer:J,setInboxRunTransfer:re,refreshInboxTransfers:vt,loadAgents:Fe,waitingPreviewSteps:Le,notify:le}),{state:{scheduleModalOpen:Nt},actions:{openScheduleModal:Ut,closeScheduleModal:vr,openCreateAgent:jt,returnToAgentSelection:$t}}=s3n({embedded:e,view:a,setView:s,selectedAgentName:Ce?it.name:null,agentsCount:ke.length,agentsError:Re,pendingInboxCount:tt,openInbox:bt,reloadAgents:()=>void Fe(null,!1),setDrawer:u,setModal:w,notify:le,onHeaderChange:t,onCockpitExit:n}),Mt=S.useCallback(wr=>{I(wr),Ut(wr.name)},[Ut]),lt=S.useCallback(()=>{I(null),Ut()},[Ut]),Lt=S.useCallback(()=>{I(null),vr()},[vr]),We=G3n({cockpit:je,execution:o,runForm:N,recommendations:he,waitingOnlyMissing:de,setWaitingOnlyMissing:se,reExecutingStepId:rt,rerunningRunId:Me,inboxRunTransfer:J,inboxRunTransferSender:Ue,actions:{startRun:At,cancelExecution:()=>void Pt(),openDetail:y,notify:le,openWaitingRun:ht,submitWaitingInput:nt,reExecuteFailedStep:xt,rerunFailedExecution:yt,returnToInbox:pt,shareRun:dr,executeRecommendedTemplate:Ze,enableRecommendedTemplate:zt}});return E.jsx(yAn,{view:a,market:{model:{embedded:e,pendingInboxCount:tt,...Be},actions:{...Xe,configureSchedule:Mt,openInbox:bt,createAgent:jt}},inbox:{model:{embedded:e,...De},actions:{back:$t,...Ke}},cockpit:Ce?{model:{embedded:e,...ot},actions:{back:$t,history:{createRun:et,configureSchedule:lt,changeStatusFilter:xe,reload:Ie,openRun:st,openWaitingRun:ht,removeRun:Cr,changePage:Pe}},slots:We}:null,empty:{agentsCount:ke.length,error:Re,onOpenMarket:()=>s("market")},transferModal:{open:b==="share",onClose:Bt,resultId:Je},scheduleModal:{agent:$||Ce,open:Nt,onClose:Lt},toast:te})}function u5n({queueStatus:e}){if(!e)return null;const t=e.status==="waiting";return E.jsx("div",{className:"wandox-queue-overlay",children:E.jsx("div",{className:"wandox-queue-modal",children:t?E.jsxs(E.Fragment,{children:[E.jsx("div",{className:"wandox-queue-icon wandox-queue-icon--waiting",children:E.jsxs("svg",{viewBox:"0 0 64 64",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",children:[E.jsx("circle",{cx:"32",cy:"32",r:"28",stroke:"#E5E7EB",strokeWidth:"4"}),E.jsx("path",{d:"M32 16V32L44 38",stroke:"#8B5CF6",strokeWidth:"4",strokeLinecap:"round",strokeLinejoin:"round"})]})}),E.jsx("div",{className:"wandox-queue-title",children:"当前使用人数较多,正在排队中..."}),E.jsxs("div",{className:"wandox-queue-stats",children:[E.jsxs("div",{className:"wandox-queue-stat",children:[E.jsx("div",{className:"wandox-queue-stat-value",children:e.position}),E.jsx("div",{className:"wandox-queue-stat-label",children:"前面还有"})]}),E.jsxs("div",{className:"wandox-queue-stat",children:[E.jsxs("div",{className:"wandox-queue-stat-value",children:["~",e.estimated_wait,"s"]}),E.jsx("div",{className:"wandox-queue-stat-label",children:"预计等待"})]})]}),E.jsxs("div",{className:"wandox-queue-tip",children:[E.jsx("span",{className:"wandox-queue-tip-icon",children:"💡"}),E.jsx("span",{children:"小贴士:等待期间可先查看其他功能模块"})]})]}):E.jsxs(E.Fragment,{children:[E.jsx("div",{className:"wandox-queue-icon wandox-queue-icon--ready",children:E.jsxs("svg",{viewBox:"0 0 64 64",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",children:[E.jsx("rect",{x:"4",y:"4",width:"56",height:"56",rx:"8",fill:"#10B981"}),E.jsx("path",{d:"M18 32L28 42L46 22",stroke:"white",strokeWidth:"5",strokeLinecap:"round",strokeLinejoin:"round"})]})}),E.jsx("div",{className:"wandox-queue-title wandox-queue-title--ready",children:"轮到您了!"}),E.jsx("div",{className:"wandox-queue-subtitle",children:"正在处理您的请求..."})]})})})}function d5n({open:e,actionName:t,defaultParams:r={},onCancel:n,onExecute:i}){const[a,s]=S.useState({});S.useEffect(()=>{if(e){const h={};for(const f of Object.keys(r)){const p=r[f];(typeof p=="string"||typeof p=="number")&&(h[f]=String(p))}s(h)}},[e,r]);const o=(h,f)=>{s(p=>({...p,[h]:f}))},l=h=>{h.preventDefault();const f={...r};for(const p of Object.keys(a))f[p]=a[p];i(f)},u=h=>{h.target===h.currentTarget&&n()},d=(h,f)=>typeof f=="object"&&f!==null?null:E.jsxs("div",{className:"wandox-form-item",children:[E.jsx("span",{className:"wandox-form-label",children:h}),E.jsx("input",{type:"text",className:"wandox-form-input",placeholder:`请输入 ${h}`,value:a[h]||"",onChange:p=>o(h,p.target.value)})]},h);return e?E.jsx("div",{className:"wandox-modal-overlay",onClick:u,children:E.jsxs("div",{className:"wandox-modal",style:{width:600},children:[E.jsxs("div",{className:"wandox-modal-header",children:[E.jsxs("h3",{className:"wandox-modal-title",children:["执行 Action: ",t]}),E.jsx("button",{type:"button",className:"wandox-modal-close",onClick:n,"aria-label":"关闭",children:E.jsx("svg",{width:"24",height:"24",viewBox:"0 0 16 16",fill:"currentColor",children:E.jsx("path",{d:"M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708z"})})})]}),E.jsxs("div",{className:"wandox-modal-body",children:[E.jsx("div",{className:"wandox-modal-description",children:"以下是默认参数,您可以修改后执行,或直接使用默认值执行"}),E.jsxs("form",{onSubmit:l,children:[Object.keys(r).map(h=>d(h,r[h])),Object.keys(r).length===0&&E.jsx("div",{className:"wandox-empty-params",children:"该 Action 无需参数"})]})]}),E.jsxs("div",{className:"wandox-modal-footer",children:[E.jsx("button",{type:"button",className:"wandox-button wandox-button-default",onClick:n,children:"取消"}),E.jsx("button",{type:"button",className:"wandox-button wandox-button-primary",onClick:l,children:"执行"})]})]})}):null}const t3t=["要努力呀,为了想要的生活,为了人间的烟火气,为了今天的风和月。","欣赏不来别人视若珍宝的,就该保持沉默。","日子总是有意思的,了无生趣的是打不起精神的你。","我们终其一生,就是要摆脱他人的期待,找到真正的自己。","别在最好的年纪选择了安逸,那是对自己最大的辜负。","你现在的气质里,藏着你走过的路、读过的书和爱过的人。","成长就是,你终于明白有些路只能一个人走。","不是每一次努力都有收获,但每一次收获都需要努力。","生活从不眷顾因循守旧、满足现状的人,而将更多机遇留给勇于探索的人。","所有的困难都是暂时的,熬过去就是晴天。","你若盛开,清风自来。","别人笑我太疯癫,我笑他人看不穿。","走慢一点,是为了走得更远。","不必羡慕别人,你的故事才刚刚开始。","心若向阳,何惧忧伤。","人生没有白走的路,每一步都算数。","你不是在浪费时间,你是在积蓄力量。","别让昨天的遗憾,占满今天的时间。","深夜的努力,终将照亮黎明。","只要路是对的,就不怕遥远。","生活不会辜负每一个认真的人。","做一个有温度的人,遇见有光的事。","你所经历的每一次失败,都是未来成功的伏笔。","不要因为走得太远,而忘记为什么出发。","把每一天当作礼物,而不是任务。","越努力,越幸运。","你值得拥有你所渴望的一切。","别把时间花在你不喜欢的事情上,除非它能带你去你喜欢的地方。","有些事现在不做,一辈子都不会做了。","你的潜力,远比你想象的要大。","不要等到准备好了才开始,开始了才会准备好。","慢慢来,比较快。","善待自己,你已经很努力了。","每一个你讨厌的早晨,都是别人求之不得的机会。","世界上只有一种真正的英雄主义,那就是认清生活的真相后仍然热爱它。","人生不是等待风暴过去,而是学会在雨中起舞。","别总想着逃离,先想想能不能改变。","你无法控制风向,但可以调整帆的方向。","没有人能替你走你该走的路。","不要因为没有掌声而停止歌唱。","把抱怨环境的心情,用来改善环境吧。","你今天的懒惰,是明天后悔的源头。","没有人永远年轻,但永远有人正在年轻。","读书破万卷,不如行路十里。","人生最大的遗憾,是轻易放弃了本不该放弃的。","你不是失败了,你只是还没成功。","今天的苦,是明天的底气。","别把别人的看法,活成自己的枷锁。","有一种勇敢,叫做即使害怕也要继续走。","生活是场修行,凡事皆有意义。","不要和自己过不去,人生很短,开心最重要。","你现在偷的懒,都是以后还的债。","最好的时机,就是现在。","你不必完美,但你必须真实。","与其等待一个完美的开始,不如从不完美中开始。","成功不是终点,失败也不是终结,重要的是继续的勇气。","每一个坚持的背后,都有一个不为人知的故事。","改变不了环境,就改变自己。","别用你的忙来掩盖你的懒,也别用你的懒来消耗你的忙。","人生就像骑自行车,要保持平衡就必须不断前行。","昨天已经过去,明天还未到来,今天才是你拥有的全部。","宁可辛苦一阵子,不要痛苦一辈子。","不要让今日的懒惰,成为明日的遗憾。","你的态度,决定了你人生的高度。","路是走出来的,不是想出来的。","做你自己,别人的角色已经有人在演了。","年轻时以为不读书不足惜,后来方知书中有乾坤。","你若想要,便去追;你若已得,便珍惜。","最怕你一生碌碌无为,还安慰自己平凡可贵。","人生没有捷径,弯路也是路。","种一棵树最好的时间是十年前,其次是现在。","每天进步一点点,人生就会不一样。","不要只是看,要有所感悟;不要只是听,要有所行动。","心态好了,一切都好了。","你的未来,取决于你现在的决定。","好好爱自己,才有能力去爱别人。","人生路上,勿忘初心。","有梦想就去追,别给自己的平庸找借口。","世界是你的,但首先你要努力。","坚持不一定成功,但放弃一定失败。","你比你想象的更坚强,比你感觉的更勇敢。","把每一次失败都当成学费,你就赚了。","选择了远方,便只顾风雨兼程。","人生的意义不在于拿一手好牌,而在于打好一手烂牌。","不要在还可以冲刺的年纪,选择散步。","钱不是万能的,但没有钱是万万不能的。努力赚钱,才是对自己最大的尊重。","所谓天才,不过是比别人多了一点坚持。","你改变不了昨天,但你可以决定明天。","做最好的自己,才能遇见最好的别人。","不要因为懒惰而失去了本来可以拥有的东西。","人生没有返回键,但有暂停和前进。","别等别人为你喝彩,先为自己鼓掌。","与其焦虑,不如行动。","每一个优秀的人,都曾经历过一段无人问津的岁月。","你的每一步努力,都在为未来的自己铺路。","不想当将军的士兵不是好士兵,但当不了将军的士兵也可以是好士兵。","生活的艺术,就是把每一个平凡的日子过得不平凡。","人生就是一场旅行,在乎的不是目的地,而是沿途的风景。","不要因为别人的否定,而放弃对自己的肯定。","勇敢不是不害怕,而是即使害怕也还是去做。","命运给了你一手烂牌,你要做的是把它打好。","真正的强大,是内心的平静。","你所不能击垮的,终将使你更强大。","成功的人找方法,失败的人找借口。","不要总是想着明天,今天就是你最年轻的一天。","人生最重要的不是你站在哪里,而是你朝哪个方向走。","每个人都是自己人生的主角,不要沦为配角。","你现在付出的努力,都是在为未来的幸福买单。","心宽了,路才宽。","你所拥有的,比你想要的更多。","不要用战术上的勤奋,掩盖战略上的懒惰。","很多人看起来很忙,实际上只是在低水平上勤奋。","格局大了,烦恼就少了。","你的圈子,决定了你的见识;你的见识,决定了你的未来。","别总是看别人的生活,好好经营自己的就够了。","脚踏实地,仰望星空,这才是人生的正确打开方式。","吃一堑,长一智;受一挫,强一分。","每一次跌倒,都是一次重新出发的机会。","低谷的时候,沉得住气;高峰的时候,守得住心。","你一定要过得很好,这样才不辜负自己受过的苦。","少说多做,是成功的捷径。","人生苦短,别把时间浪费在不值得的人和事上。","越是艰难处,越是修心时。","机会都是留给有准备的人的。","爱拼才会赢,努力才会赢。","人生就像一杯茶,不会苦一辈子,但总会苦一阵子。","不要轻言放弃,你不知道下一秒会发生什么奇迹。","真正的成熟,是能与不完美的自己握手言和。","你所走过的弯路,都是你成长的印记。","别人可以成功,你也可以。","只有不断超越自己,才能不断创造可能。","努力不一定成功,不努力一定不成功。","当你觉得累的时候,说明你在走上坡路。","不经历风雨,怎能见彩虹。","比起抱怨,不如改变。","年轻没有失败,试错才是成长。","你的样子,将决定你世界的样子。","愿你出走半生,归来仍是少年。","有时候你以为的终点,不过是下一段旅程的起点。","今天努力工作,明天努力生活。","不要总是活在别人的评价里,你自己最清楚自己是谁。","无论多难,都要坚持做你认为对的事。","你不需要变成别人,你只需要成为更好的自己。","凡事提前准备,才能游刃有余。","没有什么是理所当然的,感恩才能幸福。","不要把安全感建立在别人身上,那是一种危险的依赖。","清醒的认识自己,是成功的第一步。","沉默是金,但行动是钻石。","用行动证明,而不是用嘴巴解释。","最终你会明白,一切都是值得的。","把目光放长远,眼前的得失不算什么。","不要让自己的懒惰成为别人勤奋的舞台。","你的每一次选择,都在塑造未来的你。","有时候沉默不是因为没话说,而是因为懂得珍惜。","你今天的努力,是明天底气的来源。","先成为你想成为的人,其他的顺其自然。","把握现在,才能拥有未来。","越简单越快乐,越复杂越烦恼。","人生没有真正的绝境,除非你自己放弃。","你比你想象的更有力量。","把每一件平凡的事做好,就是不平凡。","那些没能打败你的,终将使你更强大。","做事情要有始有终,这是对自己最基本的尊重。","不在沉默中爆发,就在沉默中消亡。","不要害怕慢,就怕站。","只要还在走,就没有到不了的地方。","自律的人,才有资格谈自由。","与其等风来,不如追风去。","你有多自律,就有多自由。","凡是过往,皆为序章。","不要在该奋斗的年纪选择了安逸。","人生难得几回搏,此时不搏何时搏。","成长的代价是失去一些幼稚,但获得了更多可能。","有梦想的人,睡觉都是在充电。","不要辜负每一个认真的早晨。","生命的意义,在于不断地自我超越。","你有权利选择,但选择了就要承担。","最大的风险,是不冒任何风险。","生活会奖励那些敢于尝试的人。","不要拿别人的错误惩罚自己。","学会放下,才能腾出手来拥抱新的可能。","所有的天才都曾是努力的凡人。","比别人优秀不是目的,成为更好的自己才是。","你不需要被所有人喜欢,但你必须喜欢自己。","保持好奇心,世界就不会无聊。","每一个平静的背后,都有一颗强大的内心。","把抱怨的时间用来思考,把悲伤的时间用来行动。","只要心里有光,哪里都是出路。","你的奋斗轨迹,就是你最好的简历。","成功不是偶然的,它是努力、坚持和学习的结果。","不要小看自己,宇宙都是从一个点开始的。","真正的自由,是不依赖任何人的底气。","你的努力,终有一天会让你站在阳光下。","生活不在别处,就在此时此刻。","每一段经历,都是人生最好的礼物。"];function h5n(){return E.jsxs("div",{className:"wandox-hub-skeleton-card",children:[E.jsxs("div",{className:"wandox-hub-skeleton-row",children:[E.jsx(xo.Avatar,{active:!0,size:28,shape:"circle"}),E.jsx(xo.Input,{active:!0,style:{width:120,height:18}})]}),E.jsxs("div",{style:{display:"flex",gap:8},children:[E.jsx(xo.Input,{active:!0,block:!0,style:{height:40,borderRadius:10}}),E.jsx(xo.Button,{active:!0,style:{width:80,height:40,borderRadius:10}})]})]})}function f5n(){return E.jsx("div",{className:"wandox-hub-skeleton-insights",children:[1,2,3].map(e=>E.jsx("div",{className:"wandox-hub-skeleton-insight-card",children:E.jsxs("div",{className:"wandox-hub-skeleton-insight-inner",children:[E.jsx(xo.Input,{active:!0,style:{width:52,height:22,borderRadius:100}}),E.jsxs("div",{style:{flex:1},children:[E.jsx(xo.Input,{active:!0,block:!0,style:{height:16,marginBottom:6}}),E.jsx(xo.Input,{active:!0,style:{width:"70%",height:12}})]})]})},e))})}function p5n(e){return!!e&&/^https?:\/\//.test(e)}function U3e(e){if(!e)return"✦";if(p5n(e))return E.jsx("img",{src:e,alt:""});const t=Ekn.get(e);return t?t.component:e}function g5n(e,t){const r=`${e||""} ${t||""}`.toLowerCase();return r.includes("red")||r.includes("critical")?"wandox-insight-severity--red":r.includes("orange")||r.includes("high")?"wandox-insight-severity--orange":r.includes("yellow")||r.includes("medium")?"wandox-insight-severity--yellow":"wandox-insight-severity--gray"}function m5n(e){const t=e.match(new RegExp("^\\p{Extended_Pictographic}","u"));return(t==null?void 0:t[0])||"📌"}function r3t(e){return e.replace(new RegExp("^\\p{Extended_Pictographic}\\s*","u"),"")}function n3t(e){var t;return e.bind_type==="playbook"&&e.bind_playbook_id&&((t=e.playbook_args)!=null&&t.length)?"执行":e.bind_type==="agent"?"找智能体聊聊":e.bind_type==="chat"?"分析一下":"查看详情"}function v5n(e,t){const r=e.asin||e.ASIN||e.sku||e.seller_sku,n=e.site||e.marketplace||e.country;if(r||n)return[r,n&&`(${n})`].filter(Boolean).join(" ");const i=Object.values(e).find(a=>a!=null&&String(a).trim());return i?String(i):`参数 ${t+1}`}function y5n(e,t){var n;const r=(n=e.query_template)==null?void 0:n.trim();return!r||!t?e.title:r.replace(/\{\{?\s*([\w.-]+)\s*\}?\}/g,(i,a)=>{const s=t[a];return s==null?i:String(s)})}function b5n(e){return!e||e.status==="disabled"||e.status==="error"||!e.scenes?[]:Object.entries(e.scenes).map(([t,r])=>({name:t,total_affected:r.total_affected,suggestions_count:r.suggestions_count,cards:Array.isArray(r.cards)?r.cards:[]})).filter(t=>t.cards.length>0)}function x5n({agentLoading:e,mainAgentForHub:t,mainAgentQuestions:r,agents:n,hubChatOpen:i,setHubChatOpen:a,hubChatInput:s,setHubChatInput:o,hubScrollIdx:l,hubScrollFading:u,onHubChatSend:d,onHubInputFocus:h,onHubInputBlur:f,messages:p,executing:g,hubInlineChatInput:m,setHubInlineChatInput:v,onHubInlineSend:y,onEnterProfessional:x,playbooks:b,executePlaybook:w,onRequestPlaybookParams:C,onAbort:_,onRespondToProposal:T,ssoToken:k,ssoDomain:A,ssoCompany:$}){var me,ye,ee,pe,ae;const I=e&&!t,P=localStorage.getItem("sso_username")||"",N=localStorage.getItem("sso_user_id")||"",R=S.useRef(null),L=S.useRef(null),M=S.useMemo(()=>[],[]),[O,D]=S.useState(""),[F,B]=S.useState([]),[j,H]=S.useState(!1),[z,W]=S.useState("idle"),[G,q]=S.useState(0),[Y,K]=S.useState(null),[Z,X]=S.useState(!1),Q=n[0],J=(Q==null?void 0:Q.agent_code)||(Q==null?void 0:Q.agent_id)||"",re=(me=Q==null?void 0:Q.questions)!=null&&me.length?Q.questions:r,te=A!=="yunduo"&&re[l%Math.max(re.length,1)]||"今天仓库订单处理的怎么样了?",oe=S.useMemo(()=>t3t[Math.floor(Math.random()*t3t.length)],[]),le=S.useMemo(()=>({Authorization:`Bearer ${k}`,"X-Tenant-ID":$,"X-Domain":A,"Content-Type":"application/json"}),[k,$,A]),ce=S.useCallback(async(fe=!1)=>{if(!(!k||!A)){H(!0);try{const ne=await fetch(`${Ms()}/api/v1/insights/${fe?"refresh":"recommendations"}`,{method:fe?"POST":"GET",headers:le});if(!ne.ok)throw new Error(`HTTP ${ne.status}`);const ke=await ne.json(),ge=ke==null?void 0:ke.data;W((ge==null?void 0:ge.status)||"error"),q((ge==null?void 0:ge.total_cards)||0),B(b5n(ge))}catch{W("error"),q(0),B([])}finally{H(!1)}}},[le,A,k]);S.useEffect(()=>{ce()},[ce]),S.useEffect(()=>{!O&&J&&D(J)},[J,O]);const ie=F,ue=O||J||((ye=M[0])==null?void 0:ye.agent_id)||(t==null?void 0:t.agent_id),we=Rvt({token:k,domain:A,tenantId:$,agentId:ue||"",limit:5});S.useEffect(()=>{if(!Z||i){we.clear();return}we.search(s)},[Z,s,i,we.search,we.clear]);const ve=ie.length>0&&ie.every(fe=>fe.cards.length===1),$e=M.slice(0,3),Te=M.slice(3),Le=ue===J?Q==null?void 0:Q.name:(ee=M.find(fe=>fe.agent_id===ue))==null?void 0:ee.name,Ne=ue===J?Q!=null&&Q.icon?Bw(Q.icon):Bw("robot"):U3e((pe=M.find(fe=>fe.agent_id===ue))==null?void 0:pe.icon),de=ue===J?Q==null?void 0:Q.description:(ae=M.find(fe=>fe.agent_id===ue))==null?void 0:ae.description,se=(fe,ne)=>{if(fe.bind_type==="agent"&&fe.bind_agent_code){x(fe.bind_agent_code);return}if(fe.bind_type==="playbook"&&fe.bind_playbook_id&&ne){a(!0),w({message:y5n(fe,ne),playbook_id:fe.bind_playbook_id,playbook_params:ne});return}d(ue,fe.title)},he=(fe,ne,ke,ge=!1,Oe=!1)=>{const Re=Array.isArray(ne.playbook_args)?ne.playbook_args:[],Fe=ne.bind_type==="playbook"&&!!ne.bind_playbook_id&&Re.length>0;return E.jsxs("article",{className:`wandox-insight-card${ge?" wandox-insight-card--modal":""}${Oe?" wandox-insight-card--featured":""}`,children:[E.jsxs("button",{type:"button",className:"wandox-insight-card-main",onClick:()=>{ge&&K(null),se(ne,Re[0])},children:[E.jsxs("div",{className:"wandox-insight-card-top",children:[E.jsx("span",{className:`wandox-insight-severity ${g5n(ne.severity_color,ne.priority)}`,children:ne.severity_label||"观察"}),ne.affected_count&&E.jsx("span",{children:ne.affected_count})]}),E.jsx("h4",{children:ne.title}),ne.description&&E.jsx("p",{children:ne.description}),E.jsxs("div",{className:"wandox-insight-card-foot",children:[E.jsx("span",{children:ne.value_hint||"建议进一步确认"}),!Fe&&E.jsxs("strong",{children:[n3t(ne)," →"]})]})]}),Fe&&E.jsxs("div",{className:"wandox-insight-arg-list",children:[Re.slice(0,ge?10:3).map((Be,Xe)=>E.jsxs("button",{type:"button",className:"wandox-insight-arg-action",onClick:()=>{ge&&K(null),se(ne,Be)},children:[E.jsx("span",{children:v5n(Be,Xe)}),E.jsx("strong",{children:n3t(ne)})]},`${ne.title}-${Xe}`)),!ge&&Re.length>3&&E.jsxs("button",{type:"button",className:"wandox-insight-arg-more",onClick:()=>K(ie.find(Be=>Be.name===fe)||null),children:["还有 ",Re.length-3," 项可执行"]})]})]},`${fe}-${ne.title}-${ke}`)};return E.jsx("div",{className:"wandox-view-scroll",children:E.jsxs("div",{className:"wandox-view-content wandox-hub-v2",children:[E.jsxs("div",{className:"wandox-hub-v2-header",children:[E.jsxs("div",{children:[E.jsxs("h1",{className:"wandox-hub-v2-title",children:["您好,",P||"欢迎回来"]}),E.jsx("p",{className:"wandox-hub-v2-subtitle",children:oe})]}),A!=="yunduo"&&E.jsxs("button",{type:"button",className:"wandox-hub-v2-report",onClick:()=>{const fe=new URLSearchParams;k&&fe.append("authorization",k),A&&fe.append("x-domain",A),$&&fe.append("x-tenant-id",$),N&&fe.append("user_id",N),P&&fe.append("username",P),window.open(`https://ai.wandox.com/trend-report/trend-report-6.html${fe.toString()?`?${fe.toString()}`:""}`,"_blank")},children:[E.jsx("span",{className:"wandox-hub-v2-report-logo",children:"麦"}),E.jsxs("span",{children:[E.jsx("strong",{children:"麦多趋势报告"}),E.jsx("small",{children:"第六期 已更新 →"})]})]})]}),I?E.jsx(h5n,{}):E.jsxs("div",{ref:R,className:`wandox-hub-main-card${i?" wandox-hub-main-card--open":""}`,children:[E.jsx("div",{className:"wandox-hub-main-card-search",style:{opacity:i?0:1,maxHeight:i?0:520,transition:"opacity 0.2s ease, max-height 0.35s cubic-bezier(0.4,0,0.2,1)"},children:E.jsxs("div",{className:"wandox-hub-v2-input-panel",children:[E.jsxs("div",{className:"wandox-hub-v2-input-head",children:[E.jsxs("div",{className:"wandox-hub-v2-agent-title",children:[E.jsx("span",{className:"wandox-hub-v2-agent-mark",children:Ne}),E.jsxs("div",{children:[E.jsx("strong",{children:Le||(t==null?void 0:t.name)||"通用问答"}),E.jsx("span",{children:de||"问什么都行,系统会自动分流到对应的专业能力"})]})]}),E.jsxs("div",{className:"wandox-hub-v2-chip-row",style:{display:"none"},children:[J&&E.jsxs("button",{type:"button",className:`wandox-hub-v2-chip${ue===J?" wandox-hub-v2-chip--active":""}`,onClick:()=>D(J),title:(Q==null?void 0:Q.description)||(Q==null?void 0:Q.name)||"全部",children:[E.jsx("span",{className:"wandox-hub-v2-chip-icon",children:Q!=null&&Q.icon?Bw(Q.icon):"✦"}),"全部"]}),$e.map(fe=>E.jsxs("button",{type:"button",className:`wandox-hub-v2-chip${fe.agent_id===ue?" wandox-hub-v2-chip--active":""}`,onClick:()=>D(fe.agent_id),title:fe.description||fe.name,children:[E.jsx("span",{className:"wandox-hub-v2-chip-icon",children:U3e(fe.icon)}),fe.name]},fe.agent_id)),Te.length>0&&E.jsx(Kv,{menu:{items:Te.map(fe=>({key:fe.agent_id,label:E.jsxs("span",{className:"wandox-hub-v2-more-item",children:[E.jsx("span",{className:"wandox-hub-v2-chip-icon",children:U3e(fe.icon)}),E.jsx("span",{children:fe.name})]})})),onClick:({key:fe})=>D(String(fe))},placement:"bottomRight",children:E.jsxs("button",{type:"button",className:"wandox-hub-v2-chip wandox-hub-v2-chip--more",children:["更多 ",E.jsx(cA,{})]})})]})]}),E.jsxs("div",{className:"wandox-hub-v2-input-wrap",children:[E.jsx(zr.TextArea,{value:s,onChange:fe=>o(fe.target.value),onPressEnter:fe=>{fe.shiftKey||(fe.preventDefault(),d(ue))},onFocus:()=>{X(!0),h==null||h()},onBlur:()=>{window.setTimeout(()=>X(!1),120),f==null||f()},placeholder:"请随便问,看看 AI 搭子怎么帮你避坑",autoSize:{minRows:3,maxRows:7},variant:"borderless",className:"wandox-hub-v2-textarea"}),E.jsx(Uvt,{open:Z,rewrittenQuestion:we.rewrittenQuestion,questions:we.questions,loading:we.loading,placement:"bottom",onSelectRewrite:fe=>{o(fe),we.clear()},onSelectQuestion:fe=>{o(""),we.clear(),d(ue,fe.title)}})]}),E.jsxs("div",{className:"wandox-hub-v2-input-bottom",children:[E.jsxs("div",{className:"wandox-hub-v2-example",children:[E.jsx("span",{className:"wandox-hub-v2-example-label",children:"示例:"}),E.jsx("button",{type:"button",className:"wandox-hub-v2-example-text",onClick:()=>{o(te)},style:{opacity:u?0:1,transform:u?"translateY(-4px)":"translateY(0)"},children:te})]}),E.jsx(ir,{type:"primary",icon:E.jsx(yZe,{}),className:"wandox-hub-v2-send",onClick:()=>d(ue),children:"发送问题"})]})]})}),E.jsxs("div",{style:{height:i?"100%":0,display:"flex",flexDirection:"column",opacity:i?1:0,overflow:"hidden",transition:"opacity 0.3s ease 0.1s, max-height 0.4s cubic-bezier(0.4,0,0.2,1)",position:"relative",zIndex:i?1:-1},children:[E.jsxs("div",{className:"wandox-hub-chat-header",children:[t&&E.jsxs("div",{className:"wandox-hub-chat-agent-avatar",children:[Bw(t.icon),t.is_main&&E.jsx("div",{className:"wandox-hub-chat-agent-badge"})]}),E.jsx("span",{className:"wandox-hub-chat-agent-name",children:t==null?void 0:t.name}),E.jsx("span",{className:"wandox-hub-chat-status",children:"对话中"}),E.jsx("button",{type:"button",className:"wandox-hub-chat-close",onClick:()=>{_(),a(!1)},children:"×"})]}),E.jsxs("div",{className:"wandox-chat-section__body wandox-chat-section__body--hub",children:[E.jsx(Z_e,{messages:p,executing:g,ssoToken:k,ssoDomain:A,ssoCompany:$,onExecutePlaybook:fe=>w(fe),onFillPlaybookParams:fe=>C({playbook_id:fe.playbookId,name:fe.playbookName,input_fields:fe.inputFields,initial_params:fe.initialParams,playbook_type:fe.playbookType}),onRespondToProposal:T,containerRef:L,className:"wandox-hub-messages"}),E.jsx(eTe,{messages:p,scrollContainerRef:L})]}),E.jsx("div",{className:"wandox-hub-chat-input-row",children:E.jsx(eJ,{executing:g,onSend:y,playbooks:b,value:m,onValueChange:v,placeholder:"继续提问…",ssoToken:k,ssoDomain:A,ssoCompany:$,onRequestPlaybookParams:C})}),E.jsx("div",{className:"wandox-hub-chat-footer",children:E.jsx("button",{type:"button",className:"wandox-hub-chat-enter-link",onClick:()=>x(),children:"进入完整对话视图 →"})})]})]}),(j||z==="error"||z==="success"&&G>=0)&&z!=="disabled"&&E.jsxs("div",{className:"wandox-hub-section wandox-hub-v2-insights",children:[E.jsxs("div",{className:"wandox-hub-v2-section-heading",children:[E.jsxs("div",{children:[E.jsxs("div",{className:"wandox-hub-v2-section-kicker",children:[E.jsx("span",{}),E.jsx("strong",{children:"基于你的数据,建议先看"})]}),E.jsx("p",{children:"系统每天扫描你的店铺数据,自动识别出值得处理的场景"})]}),E.jsx(ir,{type:"text",size:"small",icon:E.jsx(Xv,{}),className:"wandox-hub-v2-refresh",onClick:()=>ce(!0),children:"换一批"})]}),j?E.jsx(f5n,{}):z==="error"?E.jsxs("div",{className:"wandox-insight-empty",children:[E.jsx("strong",{children:"数据获取失败,请稍后重试"}),E.jsx(ir,{type:"link",size:"small",onClick:()=>ce(),children:"重试"})]}):ie.length===0?E.jsxs("div",{className:"wandox-insight-empty",children:[E.jsx("strong",{children:"暂无场景推荐,数据正常"}),E.jsx("span",{children:"当前没有扫描到需要优先处理的运营场景"})]}):E.jsx("div",{className:`wandox-insight-scene-list${ve?" wandox-insight-scene-list--single-cards":""}${ie.length===1?" wandox-insight-scene-list--one-scene":""}`,children:ie.map(fe=>E.jsxs("section",{className:"wandox-insight-scene",children:[E.jsx("div",{className:"wandox-insight-scene-head",children:E.jsxs("div",{children:[E.jsx("strong",{children:r3t(fe.name)}),E.jsxs("span",{children:["扫描到"," ",fe.suggestions_count??fe.cards.length," ","条建议"]})]})}),E.jsx("div",{className:`wandox-insight-card-row${fe.cards.length===1?" wandox-insight-card-row--single":""}`,children:fe.cards.slice(0,4).map((ne,ke)=>he(fe.name,ne,ke,!1,fe.cards.length===1))}),fe.cards.length>4&&E.jsxs("button",{type:"button",className:"wandox-insight-view-all",onClick:()=>K(fe),children:["查看全部 ",fe.cards.length," 条建议 →"]})]},fe.name))})]}),E.jsxs("div",{className:"wandox-hub-section",children:[E.jsxs("div",{className:"wandox-hub-v2-section-heading",children:[E.jsxs("div",{children:[E.jsxs("div",{className:"wandox-hub-v2-section-kicker",children:[E.jsx("span",{}),E.jsx("strong",{children:"需要执行更专业的任务?"})]}),E.jsx("p",{children:"直接进入对应专家,按业务流程一步步处理"})]}),E.jsx(ir,{type:"link",size:"small",className:"wandox-hub-v2-refresh",onClick:()=>x(),children:"全部 →"})]}),I?E.jsx("div",{className:"wandox-agent-grid",children:[1,2,3].map(fe=>E.jsxs("div",{className:"wandox-agent-entry-card",style:{pointerEvents:"none"},children:[E.jsx(xo.Avatar,{active:!0,size:36,shape:"square",style:{borderRadius:8,flexShrink:0}}),E.jsxs("div",{style:{flex:1},children:[E.jsx(xo.Input,{active:!0,block:!0,style:{height:14,marginBottom:6}}),E.jsx(xo.Input,{active:!0,style:{width:"80%",height:11}})]})]},fe))}):E.jsx("div",{className:"wandox-agent-grid",children:n.filter(fe=>!fe.is_main).slice(0,4).map(fe=>{const ne=iJ(fe);return E.jsxs("button",{type:"button",className:`wandox-agent-entry-card${ne?" wandox-agent-entry-card--with-badge":""}`,onClick:()=>x(fe.agent_id||void 0),children:[E.jsx("div",{className:"wandox-agent-entry-icon",children:Bw(fe.icon)}),E.jsxs("div",{className:"wandox-agent-entry-info",children:[E.jsx("div",{className:"wandox-agent-entry-name",children:fe.name}),E.jsx("div",{className:"wandox-agent-entry-desc",children:fe.description})]}),E.jsx(Wv,{className:"wandox-agent-entry-arrow"}),ne&&E.jsx("span",{className:`wandox-agent-entry-badge wandox-agent-entry-badge--${ne.kind}`,style:{background:ne.badgeColor,color:ne.badgeTextColor},children:ne.badgeText})]},fe.agent_id)})})]}),E.jsx(ki,{open:!!Y,onCancel:()=>K(null),footer:null,width:920,centered:!0,className:"wandox-insight-modal",title:Y?E.jsxs("div",{className:"wandox-insight-modal-title",children:[E.jsx("span",{children:m5n(Y.name)}),E.jsxs("div",{children:[E.jsx("strong",{children:r3t(Y.name)}),E.jsxs("small",{children:[Y.cards.length," 条数据建议"]})]})]}):null,styles:{container:{padding:0}},children:Y&&E.jsx("div",{className:"wandox-insight-modal-grid",children:Y.cards.map((fe,ne)=>he(Y.name,fe,ne,!0))})})]})})}function w5n(e){const t=e.toLocaleDateString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit"}),r=e.toLocaleTimeString("zh-CN",{hour:"2-digit",minute:"2-digit"});return`${t}
1100
1100
  ${r}`}function q3e(e,t){return e.activeAgent===t.activeAgent&&e.webhookId===t.webhookId&&e.ssoToken===t.ssoToken&&e.ssoDomain===t.ssoDomain&&e.ssoCompany===t.ssoCompany}function S5n(e){const{activeAgent:t,webhookId:r="",ssoToken:n="",ssoDomain:i="",ssoCompany:a=""}=e,[s,o]=S.useState([]),l=S.useRef({activeAgent:t,webhookId:r,ssoToken:n,ssoDomain:i,ssoCompany:a});S.useEffect(()=>{l.current={activeAgent:t,webhookId:r,ssoToken:n,ssoDomain:i,ssoCompany:a},o([])},[t,r,n,i,a]);const u=S.useCallback(async()=>{if(!t)return;const d={activeAgent:t,webhookId:r,ssoToken:n,ssoDomain:i,ssoCompany:a};if(q3e(l.current,d))try{const h=await KQe({agent_id:t,limit:10,use_cache:!1});if(!q3e(l.current,d))return;if(h!=null&&h.data&&Array.isArray(h.data)){const f=h.data.map(p=>{const g=Array.isArray(p.actions)?p.actions||[]:[],m=p.ui_payload,v=m==null?void 0:m.actions,y=Array.isArray(v)?v:[],b=[...g,...y].map(C=>{const _=C;return{label:_.display_name||_.label||"执行",action_id:_.action_id,playbook_id:_.playbook_id,display_name:_.display_name,display_icon:_.display_icon,params:_.params,params_fields_map:_.params_fields_map,type:_.type,url:_.url,style:_.style,status:_.action_status||_.status||void 0,sort_order:_.sort_order,executed_job_id:_.executed_job_id,supports_batch:_.supports_batch===!0,batch_max_items:_.batch_max_items,batch_id:_.batch_id,outputs:_.outputs}}),w=p.outputs;return{type:p.widget_type||"daily_report",priority:p.priority||"medium",title:p.title||"每日战报",summary:p.summary||"",timestamp:p.created_at?w5n(new Date(p.created_at||"")):"",data:p.card_data||{},actions:b,id:p.inbox_id||"",agent_id:p.agent_id||"",read:!!p.is_read,ui_payload:w||m||{}}});if(f.length>0){const p=f.sort((g,m)=>{const v=g.timestamp?new Date(g.timestamp.replace(/\n/g," ")).getTime():0;return(m.timestamp?new Date(m.timestamp.replace(/\n/g," ")).getTime():0)-v});o(p)}else o([])}else o([])}catch(h){if(!q3e(l.current,d))return;throw o([]),h}},[t,r,n,i,a]);return{widgets:s,setWidgets:o,loadDailyReports:u}}function C5n(){const[e,t]=S.useState([]),[r,n]=S.useState(!1),[i,a]=S.useState(!1),[s,o]=S.useState(""),[l,u]=S.useState([]),[d,h]=S.useState(!1),[f,p]=S.useState(null),[g,m]=S.useState(!0),v=S.useRef(null),y=S.useCallback(async()=>{if(v.current)return v.current;const $=(async()=>{n(!0);try{const I=await d3r({page:1,page_size:20});return Array.isArray(I==null?void 0:I.data)?(t(I.data),a(!0),!0):(a(!1),!1)}catch{return a(!1),!1}finally{n(!1),v.current=null}})();return v.current=$,$},[]),x=S.useCallback(()=>i?Promise.resolve(!0):y(),[y,i]),b=S.useCallback($=>{o($),p({session_id:$,type:"dashboard_intent",intents:[],data:{}}),m(!1),(async(P={})=>{h(!0);try{const N=await QQe($,{params:P});N.success&&N.data&&(p(N.data),N.data.input_params&&u(N.data.input_params))}catch{}finally{h(!1)}})()},[]),w=S.useCallback($=>{if(!s)return;(async()=>{h(!0);try{const P=await QQe(s,{params:$});P.success&&P.data&&p(P.data)}catch{}finally{h(!1)}})()},[s]),C=S.useCallback($=>{s===$&&(o(""),p(null),u([])),y()},[s,y]),_=S.useCallback(()=>{if(!s)return null;const $=e.find(I=>I.playbook_id===s);return($==null?void 0:$.name)||null},[s,e]),T=S.useCallback(($,I)=>{p($),m(I!==void 0?I:!0)},[]),k=S.useCallback(()=>{},[]),A=S.useCallback(()=>{o(""),p(null),u([])},[]);return{solidifiedPlaybooks:e,solidifiedPlaybooksLoading:r,solidifiedPlaybooksLoaded:i,activeSolidifiedPlaybook:s,setActiveSolidifiedPlaybook:o,solidifyInputParams:l,solidifyLoading:d,dashboardData:f,setDashboardData:p,dashboardShowSaveButton:g,setDashboardShowSaveButton:m,loadSolidifiedPlaybooks:y,ensureSolidifiedPlaybooksLoaded:x,handleSolidifiedPlaybookClick:b,handleSolidifyParamsSearch:w,handleSolidifiedPlaybookDelete:C,getCurrentSolidifiedPlaybookName:_,handleDashboardPreview:T,handleSolidifyComplete:k,clearDashboard:A}}function _5n(){const{allQuestions:e,setCurrentQuestion:t}=rTe();S.useEffect(()=>{if(e.length===0)return;const r=Math.floor(Math.random()*e.length);t(e[r]);const n=setInterval(()=>{const i=Math.floor(Math.random()*e.length);t(e[i])},1e4);return()=>{clearInterval(n)}},[e,t])}function i3t(e){const{activeAgent:t,onRecommendationsUpdate:r,...n}=e,i=S.useRef(null),a=xTe({activeAgent:t,...n,onMessagesUpdate:u=>{var d;return(d=i.current)==null?void 0:d.setMessages(u)},onRecommendationsUpdate:r}),s=byt({...n,activeAgent:t,executePlaybook:a.executePlaybook,isExecutingRef:a.executingRef});i.current=s;const o=S.useCallback(()=>{s.setMessages([])},[s.setMessages]),l=S.useMemo(()=>({sendMessage:a.sendMessage,executePlaybook:a.executePlaybook,respondToProposal:a.respondToProposal,stopCurrent:a.stopCurrent,retrigger:a.retrigger,abort:a.abort,clearMessages:o}),[a.abort,a.executePlaybook,a.respondToProposal,a.retrigger,a.sendMessage,a.stopCurrent,o]);return{...a,messageData:s,actions:l}}const T5n=99;function E5n(e){return{id:e.agent_id||e.agent_code||"",agentId:e.agent_id,agentCode:e.agent_code,name:e.name||"未命名智能体",description:e.description||"",icon:Bw(e.icon),current:e.is_main===!0,packageBenefit:iJ(e)}}function Y3e(e){const t=E5n(e);return{id:t.id,agentId:t.agentId,agentCode:t.agentCode,name:t.name,desc:t.description,icon:t.icon,current:t.current,packageBenefit:t.packageBenefit}}function a3t(e){return{...e,name:e.name||"未命名智能体"}}function s3t(e){const t=[];for(const r of e){Array.isArray(r.questions)&&t.push(...r.questions);const n=r.children;for(const i of n||[])Array.isArray(i.questions)&&t.push(...i.questions)}return t}function ure(e,t){return t?e.id===t||e.agentId===t||e.agentCode===t:!1}function k5n({presetAgents:e}={}){const{setAllQuestions:t}=rTe(),[r,n]=S.useState(()=>e&&e.length>0?e.filter(m=>!m.hidden).map(Y3e):[]),[i,a]=S.useState(()=>e&&e.length>0?e.filter(m=>!m.hidden):[]),[s,o]=S.useState(0),[l,u]=S.useState(0),[d,h]=S.useState(!0),[f,p]=S.useState(null),g=S.useCallback(async()=>{var m;h(!0),p(null);try{if(e&&e.length>0){const w=e.filter(_=>!_.hidden);n(w.map(Y3e));const C=w.map(a3t);a(C),t(s3t(C)),o(w.length),u(w.length);return}const v=await oY({page:1,page_size:T5n}),y=v.data||[],x=y.filter(w=>!w.hidden);!x.some(w=>w.is_main)&&x.length>0&&(x[0]={...x[0],is_main:!0}),n(x.map(Y3e));const b=x.map(a3t);a(b),t(s3t(b)),o(typeof((m=v.meta)==null?void 0:m.total)=="number"?v.meta.total:x.length),u(y.length)}catch{p("智能体列表加载失败"),n([]),a([]),t([]),o(0),u(0)}finally{h(!1)}},[e,t]);return S.useEffect(()=>{g()},[g]),{agents:r,sourceAgents:i,total:s,hasMore:l<s,loading:d,error:f,reload:g}}function A5n(e){const t=e||{};return{playbooks:wyt(t),playbookGroups:Array.isArray(t.playbook_groups)?t.playbook_groups:[],childAgents:Array.isArray(t.children)?t.children:[]}}function I5n(e){return Array.isArray(e)?e.reduce((t,r)=>{const n=typeof(r==null?void 0:r.name)=="string"?r.name.trim():"";return n&&t.push({...r,name:n}),t},[]):[]}function $5n(e){var s,o,l,u,d,h,f,p,g,m;const t=e,r=(t==null?void 0:t.roles)??((s=t==null?void 0:t.data)==null?void 0:s.roles)??[];if(!Array.isArray(r))return{categories:[],scenes:[],totalCount:0};const n=[],i=[];let a=0;for(const v of r){const y=v.name||v.role_code||"";for(const x of v.goals||[]){const b=x.items||[],w=String(x.id);b.length>0&&n.push({key:w,name:x.name||"未命名分类",count:b.length});for(const C of b){const _=C.playbook_id||((o=C.playbook)==null?void 0:o.playbook_id);_&&i.push({key:`${w}-${_}`,title:C.title||C.name||((l=C.playbook)==null?void 0:l.name)||"未命名场景",description:C.subtitle||C.description||((u=C.playbook)==null?void 0:u.description)||"",sourceLabel:y,tags:I5n(C.tags),playbookId:_,inputFields:C.input_fields||((d=C.playbook)==null?void 0:d.input_fields)||[],categoryKey:w,videoUrl:C.video_url||((h=C.playbook)==null?void 0:h.video_url)||void 0,videoDuration:C.video_duration||((f=C.playbook)==null?void 0:f.video_duration)||void 0,viewCount:C.view_count??((p=C.playbook)==null?void 0:p.view_count),isFeatured:C.is_featured??((g=C.playbook)==null?void 0:g.is_featured)??!1,badge:C.badge||((m=C.playbook)==null?void 0:m.badge)||null})}a+=b.length}}return{categories:n,scenes:i,totalCount:a}}const R5n="默认场景";function o3t(e){return e.category_name||e.category||e.type||R5n}function N5n(e){const t=new Map;for(const r of e){const n=o3t(r);t.set(n,(t.get(n)??0)+1)}return Array.from(t,([r,n])=>({key:r,name:r,count:n}))}function L5n(e){return e.map(t=>{const r=o3t(t);return{key:`default:${t.playbook_id}`,title:t.name||"未命名场景",description:t.description||"",sourceLabel:r,tags:[],playbookId:t.playbook_id,inputFields:t.input_fields||[],categoryKey:r,videoUrl:t.video_url,videoDuration:t.video_duration,viewCount:t.view_count,isFeatured:!1,badge:t.badge||null}})}function l3t(e){return e}function c3t(e){return{key:e.key,title:e.title,desc:e.description,reason:e.sourceLabel,tags:e.tags,playbook_id:e.playbookId,input_fields:e.inputFields,categoryKey:e.categoryKey,video_url:e.videoUrl,video_duration:e.videoDuration,view_count:e.viewCount,is_featured:e.isFeatured,badge:e.badge}}function P5n(e){return N5n(e).map(l3t)}function M5n(e){return L5n(e).map(c3t)}function D5n(e){if(Array.isArray(e))return e;const t=e;return Array.isArray(t==null?void 0:t.user_playbooks)?t.user_playbooks:[]}function O5n(e){const t=e==="default"?"":e,[r,n]=S.useState([]),[i,a]=S.useState([]),[s,o]=S.useState([]),[l,u]=S.useState([]),[d,h]=S.useState(!1),[f,p]=S.useState([]),[g,m]=S.useState([]),[v,y]=S.useState(0),[x,b]=S.useState(!1),[w,C]=S.useState(!1),[_,T]=S.useState(null),[k,A]=S.useState(null),[$,I]=S.useState(null),P=S.useRef(0),N=S.useRef(0),R=S.useCallback(async()=>{const D=++P.current;if(!t){n([]),a([]),o([]),u([]),p([]),m([]),y(0),b(!1),h(!1),C(!0),N.current+=1;return}b(!0),C(!1),T(null),A(null),I(null),u([]),N.current+=1;const F=[(async()=>{try{const{data:B}=await lY({agent_id:t});if(D!==P.current)return;const j=A5n(B);n(j.playbooks),a(j.playbookGroups),o(j.childAgents)}catch{if(D!==P.current)return;T("场景加载失败"),n([]),a([]),o([])}finally{D===P.current&&C(!0)}})(),(async()=>{try{const B=await dJe({agent_id:t,role_id:null});if(D!==P.current)return;const j=$5n(B);p(j.categories),m(j.scenes),y(j.totalCount)}catch{if(D!==P.current)return;I("使用地图加载失败"),p([]),m([]),y(0)}})()];await Promise.allSettled(F),D===P.current&&b(!1)},[t]),L=S.useCallback(async()=>{const D=++N.current;if(!t){u([]);return}h(!0),A(null);try{const{data:F}=await qQe({agent_id:t});if(D!==N.current)return;u(D5n(F))}catch{if(D!==N.current)return;A("我的场景加载失败"),u([])}finally{D===N.current&&h(!1)}},[t]);S.useEffect(()=>(R(),()=>{P.current+=1}),[R]);const M=S.useMemo(()=>f.map(l3t),[f]),O=S.useMemo(()=>g.map(c3t),[g]);return{playbooks:r,playbookGroups:i,childAgents:s,userPlaybooks:l,userPlaybooksLoading:d,loadUserPlaybooks:L,playbooksLoaded:w,sceneCategories:f,scenes:g,sceneTotalCount:v,loading:x,detailError:_,userPlaybooksError:k,sceneMapError:$,reload:R,useMapCategories:M,useMapCards:O,useMapTotalCount:v,useMapError:$}}function u3t({presetAgents:e,initialAgentId:t}={}){const r=k5n({presetAgents:e}),[n,i]=S.useState(()=>{if(!t)return"";const h=e==null?void 0:e.find(f=>ure({id:f.agent_id||f.agent_code||"",agentId:f.agent_id,agentCode:f.agent_code},t));return(h==null?void 0:h.agent_id)||(h==null?void 0:h.agent_code)||t}),a=S.useRef(null);S.useEffect(()=>{if(r.agents.length!==0){if(t&&a.current!==t){a.current=t;const f=r.agents.find(p=>ure(p,t))||r.agents.find(p=>p.current)||r.agents[0];n!==f.id&&i(f.id);return}if(n!=="default"&&!r.agents.some(h=>h.id===n)){const h=r.agents.find(f=>f.current)||r.agents[0];i(h.id)}}},[r.agents,t,n]);const s=S.useCallback(h=>{i(h)},[]),o=s,l=S.useMemo(()=>r.agents.find(h=>h.id===n),[r.agents,n]),u=S.useMemo(()=>r.sourceAgents.find(h=>h.agent_id===n||h.agent_code===n),[r.sourceAgents,n]),d=O5n(n);return{...r,agentLoading:r.loading,...d,sceneLoading:d.loading,selectedAgentId:n,selectedAgent:l,sourceAgents:r.sourceAgents,sourceSelectedAgent:u,activeAgent:n,setActiveAgent:o,selectAgent:s}}const d3t={chat:{title:"对话",subtitle:""},plan:{title:"自动化",subtitle:"创建、管理并追踪自动化智能体的执行结果,支持定时触发与对内流转"},professional:{title:"专业智能体",subtitle:"深度分析与专业领域对话"},goals:{title:"目标追踪",subtitle:"跟踪关键业务指标和目标进展"},settings:{title:"通知配置",subtitle:"配置 Webhook 通知,实时接收系统重要事件"}},B5n=5*60*1e3,F5n=3;function z5n(e={}){const{showAside:t=!0,showLogout:r=!1,onLogout:n,presetAgents:i,webhookId:a,onReady:s,initialAgentId:o,initialPlaybookId:l,initialPlaybookParams:u}=e,d=localStorage.getItem("sso_token")||"",h=localStorage.getItem("sso_domain")||"maiduo",f=localStorage.getItem("sso_company")||"",g=`${Ms()}/api/v1/oss/upload2`,m=S.useCallback(async lt=>{const{data:Lt}=await ry({playbook_id:lt});return Lt},[]),v=S.useCallback(lt=>f3r({session_id:lt.session_id||"",name:lt.name,description:lt.description}),[]),y=S.useCallback(lt=>ZQe({session_id:lt.session_id||"",user_hint:lt.user_hint||""}),[]),{activeAgent:x,setActiveAgent:b,sourceAgents:w,playbooks:C,userPlaybooks:_,userPlaybooksLoading:T,childAgents:k,agentLoading:A,sceneLoading:$,loadUserPlaybooks:I,playbooksLoaded:P}=u3t({presetAgents:i,initialAgentId:o}),N=A||$,[R,L]=S.useState(()=>!!o),[M,O]=S.useState(!1),[D,F]=S.useState(!1),[B,j]=S.useState([]),[H,z]=S.useState(0),W=S.useRef(!1),{executing:G,stopping:q,executingRef:Y,queueStatus:K,messageData:Z,actions:X}=i3t({activeAgent:x,webhookId:a,ssoToken:d,ssoDomain:h,ssoCompany:f,onRecommendationsUpdate:j}),{sendMessage:Q,executePlaybook:J,respondToProposal:re,stopCurrent:te,retrigger:oe,abort:le,clearMessages:ce}=X;S.useEffect(()=>{W.current&&!G&&z(lt=>lt+1),W.current=G},[G]);const{widgets:ie,setWidgets:ue,loadDailyReports:we}=S5n({activeAgent:x,webhookId:a,ssoToken:d,ssoDomain:h,ssoCompany:f}),ve=C5n();_5n();const[$e,Te]=S.useState(()=>localStorage.getItem("wandox_sidebar_agent_mode")==="true"),Le=S.useCallback(()=>{Te(lt=>{const Lt=!lt;return localStorage.setItem("wandox_sidebar_agent_mode",String(Lt)),Lt})},[]),[Ne,de]=S.useState(!1),[se,he]=S.useState(!1),[me,ye]=S.useState(!1),[ee,pe]=S.useState(!1),[ae,fe]=S.useState(null),[ne,ke]=S.useState(!1),[ge,Oe]=S.useState(null),[Re,Fe]=S.useState(""),[Be,Xe]=S.useState(null),[je,ot]=S.useState("chat"),[Ce,it]=S.useState(null),xe=S.useCallback(()=>{de(!0),he(!1)},[]),Pe=S.useCallback(()=>{de(!1),he(!1)},[]),[Ie,De]=S.useState(""),[tt,Ue]=S.useState(0),[Ke,Se]=S.useState(!1),[vt,pt]=S.useState(!1),[bt,Ye]=S.useState(!1),[st,Me]=S.useState(""),rt=S.useRef(null),Je=S.useRef(!1),[et,ht]=S.useState(null),[nt,yt]=S.useState(!1),xt=N||Z.loading,At=S.useCallback(lt=>{fe(()=>lt)},[]);S.useEffect(()=>{s&&s({showInspectionResults:lt=>{ht(lt||null),yt(!0)}})},[s]),S.useEffect(()=>{L(!!o),O(!1),F(!1)},[o,l,u]),S.useEffect(()=>{if(x)return j([]),()=>{Y.current&&le()}},[x,a,d,h,f]),S.useEffect(()=>{if(je!=="professional"){Je.current=!1;return}if(!x)return;Je.current||(Z.loadMessagesAndDailyReport(),we()),Je.current=!1;let lt=0,Lt=null;return Lt=setInterval(async()=>{try{await we(),lt=0}catch{lt++,lt>=F5n&&Lt&&(clearInterval(Lt),Lt=null)}},B5n),()=>{Lt&&clearInterval(Lt)}},[je,x,a,d,h,f]);const Pt=w.find(lt=>lt.is_main)??w[0],Bt=(Pt==null?void 0:Pt.questions)||[];S.useEffect(()=>{Ue(0),Se(!1)},[Pt==null?void 0:Pt.agent_id]),S.useEffect(()=>{if(Bt.length<=1||vt)return;let lt;const Lt=setInterval(()=>{Se(!0),lt=setTimeout(()=>{Ue(We=>(We+1)%Bt.length),Se(!1)},350)},3500);return()=>{clearInterval(Lt),clearTimeout(lt)}},[Bt.length,vt]),S.useEffect(()=>{if(rt.current&&x&&x!=="default"){const lt=rt.current;rt.current=null,Q(lt)}},[x,Q]),S.useEffect(()=>{if(!o||!R||!x||x==="default"||w.length===0)return;!!wTe(w,o)||L(!1)},[o,R,x,w]),S.useEffect(()=>{!o||l||M||!x||x==="default"||!w.find(Lt=>Wh(Lt,x)&&Wh(Lt,o))||(O(!0),ot("professional"),ve.clearDashboard(),L(!1))},[o,l,M,x,w,ve]),S.useEffect(()=>{var Yn;if(!o||!l||D||!x||x==="default"||!P||!w.find(ha=>Wh(ha,x)&&Wh(ha,o)))return;const Lt=C.find(ha=>xyt(ha,l));if(!Lt){ot("professional"),Et.error(`指定的场景(${l})不存在,已切换到智能体界面`),F(!0),L(!1);return}F(!0),ot("professional"),Je.current=!0,ce(),ve.clearDashboard(),Xe(null),Fe("");const We=u||{},wr=Object.keys(We).length>0,at=(Lt.input_fields??[]).filter(ha=>{if(!ha.required)return!1;const Ps=We[ha.name];return Ps==null||Ps===""});if((((Yn=Lt.input_fields)==null?void 0:Yn.length)??0)>0&&(!wr||at.length>0)){Xe(Lt),L(!1);return}J({message:Lt.name,playbook_id:l,playbook_params:We}),L(!1)},[o,l,D,x,P,w,C,u]);const dr=S.useCallback(lt=>{Asn(w,x,lt)||(Y.current&&(le(),Et.info("已中止当前场景,切换智能体")),b(lt),Fe(""),Xe(null),ve.clearDashboard(),ce(),ue([]))},[le,x,w,ce,Y,b,ve,ue]),Cr=(lt,Lt)=>{const We=(Lt??Ie).trim()||Bt[tt%Bt.length]||"",wr=lt||(Pt==null?void 0:Pt.agent_id);!We||!wr||(De(""),Ye(!0),ce(),x===wr?Q(We):(Je.current=!0,rt.current=We,b(wr)))},zt=(lt,Lt)=>{ve.handleDashboardPreview(lt,Lt),ot("chat"),b("default")},Ze=()=>{ve.handleSolidifyComplete(),ot("chat"),b("default")},Nt=lt=>{ot(lt),(lt==="goals"||lt==="settings"||lt==="plan"||lt==="chat")&&ve.clearDashboard()},Ut=()=>{he(!1),pe(!0),ve.ensureSolidifiedPlaybooksLoaded()},vr=lt=>{pe(!1),ve.handleSolidifiedPlaybookClick(lt),ot("chat"),b("default"),Fe(""),Xe(null)},jt=()=>{var lt,Lt;if(ve.dashboardData)return E.jsx(Igt,{data:ve.dashboardData,showSaveButton:ve.dashboardShowSaveButton,onSaveSuccess:ve.loadSolidifiedPlaybooks,onSaveDashboard:v,onPreviewDashboard:y,title:ve.getCurrentSolidifiedPlaybookName()||void 0,customParamsForm:ve.solidifyInputParams.length>0?E.jsx(Kan,{inputParams:ve.solidifyInputParams,onSearch:ve.handleSolidifyParamsSearch,loading:ve.solidifyLoading}):void 0,showGlobalFilter:ve.solidifyInputParams.length>0});switch(je){case"chat":return E.jsx(P_e.Provider,{value:{onExecutePlaybook:J,getPlaybookDetail:m,ossUploadUrl:g,ssoToken:d,ssoDomain:h,ssoCompany:f,onFillPlaybookParams:We=>{const wr={playbook_id:We.playbookId,name:We.playbookName,input_fields:We.inputFields,initial_params:We.initialParams,playbook_type:We.playbookType};Xe(wr),ot("professional")}},children:E.jsx(x5n,{agentLoading:N,mainAgentForHub:Pt,mainAgentQuestions:Bt,agents:w,hubChatOpen:bt,setHubChatOpen:Ye,hubChatInput:Ie,setHubChatInput:De,hubScrollIdx:tt,hubScrollFading:Ke,onHubChatSend:Cr,onHubInputFocus:()=>pt(!0),onHubInputBlur:()=>pt(!1),messages:Z.messages,executing:G,hubInlineChatInput:st,setHubInlineChatInput:Me,onHubInlineSend:(We,wr,at)=>{Pt!=null&&Pt.agent_id&&(x!==Pt.agent_id&&b(Pt.agent_id),Q(We,wr,at))},onEnterProfessional:We=>{We&&b(We),Fe(""),Xe(null),ve.clearDashboard(),ue([]),ot("professional")},playbooks:C,executePlaybook:J,onRequestPlaybookParams:Xe,clearMessages:ce,onAbort:le,onRespondToProposal:re,ssoToken:d,ssoDomain:h,ssoCompany:f})});case"goals":return E.jsx(s5r,{});case"settings":return E.jsx(uyt,{});case"plan":return E.jsx(e3t,{embedded:!0,onHeaderChange:it,onCockpitEnter:xe,onCockpitExit:Pe});case"professional":return E.jsxs(E.Fragment,{children:[E.jsx(lsn,{title:((lt=w.find(We=>Wh(We,x)))==null?void 0:lt.name)||"Wandox智能体",agentSwitcher:$e?void 0:E.jsxs("div",{style:{display:"inline-flex",alignItems:"center",height:34,background:"#fff",border:"1px solid #e5e0f0",borderRadius:10,boxSizing:"border-box",overflow:"hidden"},children:[E.jsxs("div",{style:{display:"flex",alignItems:"center",padding:"0 0 0 8px"},children:[E.jsx("div",{style:{width:22,height:22,flexShrink:0},children:Bw((Lt=w.find(We=>Wh(We,x)))==null?void 0:Lt.icon)}),E.jsx(xn,{value:x,onChange:We=>dr(We),options:w.map(We=>({value:We.agent_id,label:We.name})),variant:"borderless",suffixIcon:E.jsx(zA,{style:{color:"#9275ff",verticalAlign:"middle"}}),style:{fontWeight:600,fontSize:14,minWidth:100,color:"#4a3a6a"},popupMatchSelectWidth:!1})]}),E.jsx("button",{type:"button",onClick:Le,title:"切换为侧边栏选择",style:{display:"flex",alignItems:"center",justifyContent:"center",width:34,height:"100%",cursor:"pointer",color:"#b0a0c8",borderLeft:"1px solid #e5e0f0",transition:"all 0.15s",background:"none",border:"none",padding:0},onMouseEnter:We=>{We.currentTarget.style.color="#7c3aed",We.currentTarget.style.background="#f5f0ff"},onMouseLeave:We=>{We.currentTarget.style.color="#b0a0c8",We.currentTarget.style.background="transparent"},children:E.jsx(vZe,{style:{fontSize:13}})})]}),count:ie.length,widgets:ie,activeAgent:x,agents:w,childAgents:k,ssoDomain:h,ssoToken:d,ssoCompany:f,onWidgetsUpdate:ue,onExecuteComplete:()=>{we()},externalRobotName:et,externalShowPanel:nt}),E.jsx($vt,{messages:Z.messages,playbooks:C,messagesTotal:Z.messagesTotal,loadMoreMessages:Z.loadMoreMessages,loading:xt,executing:G,ssoToken:d,ssoDomain:h,ssoCompany:f,activeAgent:x,webhookId:a,onExecutePlaybook:J,onSolidifySuccess:ve.loadSolidifiedPlaybooks,onDashboardPreview:zt,onSolidifyComplete:Ze,onFillPlaybookParams:We=>{const wr={playbook_id:We.playbookId,name:We.playbookName,input_fields:We.inputFields,initial_params:We.initialParams,playbook_type:We.playbookType};Xe(wr)},onActionClick:We=>{We.action_id?(ye(!0),ae&&ae({action_id:We.action_id,action_params:We.params})):We.playbook_id&&J({message:We.display_name||"执行",playbook_id:We.playbook_id,...We.params?{playbook_params:We.params}:{}})},onExecuteComplete:()=>{we()},onRespondToProposal:re,onRetrigger:oe}),E.jsxs("div",{className:"chat-input-area",children:[E.jsx(Zvt,{playbooks:C,playbookLoading:N,onPlaybookClick:J,onSelectPlaybook:We=>{Xe(We)},recommendations:B,userPlaybooks:_,userPlaybooksLoading:T,onLoadUserPlaybooks:I,agentId:iI(w.find(We=>Wh(We,x)))||x,recentRefreshKey:H}),E.jsx(eJ,{executing:G,stopping:q,onStop:te,onSend:Q,playbooks:C,recommendations:B,value:Re,onValueChange:Fe,onRequestPlaybookParams:Xe,ssoToken:d,ssoDomain:h,ssoCompany:f})]})]});default:return null}},$t=je==="plan"?Ce??d3t.plan:d3t[je],Mt=(je==="plan"||!ve.dashboardData)&&je!=="professional"&&je!=="chat";return E.jsx(q3r,{children:E.jsxs(Akn,{children:[E.jsx("div",{className:`wandox-aside-overlay ${se?"wandox-aside-overlay--visible":""}`,onClick:()=>he(!1),onKeyDown:lt=>lt.key==="Escape"&&he(!1),role:"button",tabIndex:0,"aria-label":"关闭侧边栏"}),t&&E.jsx(kkn,{active:x,agents:w,onChange:lt=>{he(!1),dr(lt)},collapsed:Ne,onToggle:()=>de(lt=>!lt),className:se?"wandox-aside--mobile-open":"",activeView:je,onViewChange:Nt,onToolboxOpen:Ut,showLogout:r,onLogout:n,sidebarAgentMode:$e,onToggleSidebarMode:Le,onAgentSelect:lt=>dr(lt)}),t&&Ne&&E.jsx("button",{type:"button",className:"wandox-aside-floating-open",onClick:()=>de(!1),"aria-label":"展开侧边栏",title:"展开侧边栏",children:E.jsx(vZe,{})}),E.jsxs("div",{className:"wandox-workspace",children:[E.jsxs("div",{className:"wandox-mobile-header",children:[E.jsx("button",{type:"button",className:"wandox-mobile-menu-btn",onClick:()=>{de(!1),he(!0)},children:"☰"}),E.jsx("h1",{className:"wandox-mobile-title",children:"Wandox"}),r&&n?E.jsx("button",{type:"button",onClick:n,style:{width:40,height:40,background:"transparent",border:"none",cursor:"pointer"},children:"退出"}):E.jsx("div",{style:{width:40}})]}),Mt&&E.jsxs("div",{className:"wandox-workspace-topbar",children:[E.jsxs("div",{className:"wandox-workspace-topbar-info",children:[E.jsx("h1",{className:"wandox-workspace-topbar-title",children:($t==null?void 0:$t.title)??"您好,欢迎使用 AI 智能体"}),E.jsx("p",{className:"wandox-workspace-topbar-subtitle",children:($t==null?void 0:$t.subtitle)??""})]}),E.jsx("div",{className:"wandox-workspace-topbar-actions",children:je==="plan"?Ce==null?void 0:Ce.actions:null})]}),E.jsx("div",{className:`wandox-workspace-container${je==="plan"?" wandox-workspace-container--automation":""}`,children:jt()})]}),E.jsx(Xan,{open:ee,loading:ve.solidifiedPlaybooksLoading,playbooks:ve.solidifiedPlaybooks,activePlaybookId:ve.activeSolidifiedPlaybook,onClose:()=>pe(!1),onPlaybookClick:vr,onPlaybookDelete:ve.handleSolidifiedPlaybookDelete}),E.jsx(cvt,{open:me,ssoToken:d,ssoDomain:h,ssoCompany:f,onClose:()=>ye(!1),onExecuteAction:At,onExecuteComplete:()=>{setTimeout(()=>{we()},1e3)}}),E.jsx(d5n,{open:ne,actionId:(ge==null?void 0:ge.action_id)||"",actionName:(ge==null?void 0:ge.display_name)||"",defaultParams:ge==null?void 0:ge.params,onCancel:()=>{ke(!1),Oe(null)},onExecute:lt=>{ke(!1),ye(!0),ae&&ge&&ae({action_id:ge.action_id,action_params:lt}),Oe(null)}}),E.jsx(qan,{open:!!Be,playbook:Be,onClose:()=>Xe(null),onSubmit:(lt,Lt)=>{Xe(null),J({message:lt.name,playbook_id:lt.playbook_id,playbook_params:Lt})}}),R&&E.jsx(dyt,{}),E.jsx(u5n,{queueStatus:K})]})})}const j5n=Object.freeze(Object.defineProperty({__proto__:null,default:z5n},Symbol.toStringTag,{value:"Module"}));function h3t(e){return{category:null,description:e.desc,domain:"",id:0,name:e.title,playbook_id:e.playbook_id,scope:"",status:"",sub_category:null,tags:null,type:"",version:"",video_url:e.video_url,video_duration:e.video_duration,view_count:e.view_count}}function f3t(e){if(!e||e<=0)return"0:00";const t=Math.floor(e/60),r=String(Math.floor(e%60)).padStart(2,"0");return`${t}:${r}`}const K3e="__all__",p3t="__my__",X3e="__library_all__",V5n="__library__:",H5n=[{key:"all",label:"全部场景"},{key:"my",label:"我的场景"},{key:"map",label:"使用地图"}];function W5n(e){return e==="map"?"搜索当前地图下的场景":e==="my"?"搜索我的场景":"搜索全部场景"}function G5n({open:e,source:t,categories:r,categoryKey:n,search:i,cards:a,executing:s,loadingPlaybookId:o,onClose:l,onSourceChange:u,onCategoryChange:d,onSearchChange:h,onSelectScene:f}){const[p,g]=S.useState(null),m=S.useMemo(()=>p?h3t(p):null,[p]),v=S.useCallback((y,x)=>{y.stopPropagation(),g(x)},[]);return E.jsxs(qS,{open:e,onClose:l,placement:"bottom",height:"min(82vh, 780px)",destroyOnClose:!1,styles:{body:{padding:0,background:"var(--wc-bg)"},header:{display:"none"}},getContainer:!1,title:null,closeIcon:null,push:!1,children:[E.jsxs("div",{className:"wandox-console-chat__drawer",children:[E.jsxs("header",{className:"wandox-console-chat__drawer-top",children:[E.jsx("div",{className:"wandox-console-chat__drawer-title",children:E.jsx("nav",{className:"wandox-console-chat__drawer-tabs","aria-label":"场景来源",children:H5n.map(y=>E.jsx("button",{type:"button",className:t===y.key?"is-active":"",onClick:()=>u(y.key),children:y.label},y.key))})}),E.jsx("button",{type:"button",className:"wandox-console-chat__drawer-close",onClick:l,"aria-label":"关闭",children:E.jsx(gs,{})})]}),E.jsxs("div",{className:"wandox-console-chat__drawer-middle",children:[t!=="my"&&E.jsxs("aside",{className:"wandox-console-chat__drawer-cats",children:[E.jsx("div",{className:"wandox-console-chat__drawer-catslabel",children:"场景分类"}),r.map(y=>{const x=y.key===n;return E.jsxs("button",{type:"button",className:`wandox-console-chat__drawer-cat${x?" wandox-console-chat__drawer-cat--active":""}`,onClick:()=>d(y.key),children:[E.jsx("span",{className:"wandox-console-chat__drawer-cat-name",children:y.name}),E.jsx("span",{className:"wandox-console-chat__drawer-cat-count",children:y.count})]},y.key)})]}),E.jsxs("div",{className:"wandox-console-chat__drawer-body",children:[E.jsx("div",{className:"wandox-console-chat__drawer-toolbar",children:E.jsx(zr,{allowClear:!0,prefix:E.jsx(tg,{}),placeholder:W5n(t),value:i,onChange:y=>h(y.target.value)})}),a.length===0?E.jsx("div",{className:"wandox-console-chat__drawer-empty",children:i?"没有匹配的场景":"暂无可用场景"}):E.jsx("div",{className:"wandox-console-scenes",children:a.map(y=>{const x=o===y.playbook_id;return E.jsxs("div",{className:"wandox-console-scene-wrap",children:[E.jsx("button",{type:"button",className:"wandox-console-scene",disabled:s||!!o,"aria-busy":x,onClick:()=>void f(y),children:E.jsxs("div",{className:"wandox-console-scene__body",children:[E.jsx("strong",{title:y.title,children:y.title}),y.desc&&E.jsx("span",{className:"wandox-console-scene__desc",title:y.desc,children:y.desc}),x&&E.jsx("span",{className:"wandox-console-scene__loading",children:"正在读取场景..."})]})}),y.video_url&&E.jsxs("button",{type:"button",className:"wandox-console-scene__video","aria-label":`播放${y.title}演示视频`,onClick:b=>v(b,y),children:["▶ ",f3t(y.video_duration)," 演示"]})]},y.key)})})]})]})]}),E.jsx(QQ,{playbook:m,onClose:()=>g(null)})]})}const U5n=e=>{const{onError:t}=e;t==null||t(new Error("该场景暂不支持文件上传"))};function g3t({field:e,value:t,uploading:r,fileNameMap:n,getOptionState:i,onChange:a,onUpload:s}){const o=Z5(e.type),l=s??((u,d)=>U5n);return E.jsxs("div",{className:"wandox-console-field",children:[E.jsxs("label",{htmlFor:`wc-param-${e.name}`,children:[E.jsx("span",{className:"wandox-console-field__label-text",children:e.label||e.name}),e.description||e.hint?E.jsx(ri,{title:e.description||e.hint,children:E.jsx(KS,{"aria-label":`${e.label||e.name}说明`})}):null,e.required&&E.jsx("span",{className:"wandox-console-field__required",children:"必填"}),o&&E.jsx("span",{className:"wandox-console-field__required",children:"多值"})]}),E.jsx(nJ,{field:e,value:t,uploading:r,fileNameMap:n,getOptionState:i,onChange:a,onUpload:l,onDownloadTemplate:u=>window.open(u.path,"_blank","noopener,noreferrer")})]})}function q5n(e){const t=Array.isArray(e.actions)?e.actions:[],r=e.ui_payload,n=Array.isArray(r==null?void 0:r.actions)?r.actions:[];return[...t,...n].map(a=>{const s=a??{};return{label:s.display_name||s.label||"执行",action_id:s.action_id,playbook_id:s.playbook_id,display_name:s.display_name,display_icon:s.display_icon??void 0,params:s.params,params_fields_map:s.params_fields_map,type:s.type,url:s.url,style:s.style,status:s.action_status||s.status||void 0,sort_order:s.sort_order,executed_job_id:s.executed_job_id,supports_batch:s.supports_batch===!0,batch_max_items:s.batch_max_items,batch_id:s.batch_id,outputs:s.outputs}})}function Y5n(e){if(Array.isArray(e))return e;const t=e;return Array.isArray(t==null?void 0:t.user_playbooks)?t.user_playbooks:[]}function K5n({agentId:e,agentName:t,playbookId:r,playbookParams:n,initialMessage:i,initialAttachments:a,useMapCards:s=[],useMapCategories:o=[],playbooks:l=[],userPlaybooks:u=[],agents:d=[],onChangeAgent:h,onBack:f,onSelectScene:p,onReady:g}){const m=localStorage.getItem("sso_token")||"",v=localStorage.getItem("sso_domain")||"maiduo",y=localStorage.getItem("sso_company")||"",x=S.useRef(null),b=S.useRef(!1),[w,C]=S.useState(!1),[_,T]=S.useState(""),[k,A]=S.useState(""),[$,I]=S.useState("map"),[P,N]=S.useState(K3e),[R,L]=S.useState(null),M=S.useRef(null),O=S.useRef(null),[D,F]=S.useState(!1),[B,j]=S.useState([]),[H,z]=S.useState("");S.useEffect(()=>{if(!R||w)return;const ct=setTimeout(()=>{var Ht;(Ht=M.current)==null||Ht.focus()},120);return()=>clearTimeout(ct)},[R,w]),S.useEffect(()=>{if(!R||w)return;const ct=Ht=>{const yr=O.current,Mr=Ht.target;!yr||!(Mr instanceof Node)||yr.contains(Mr)||Mr instanceof Element&&Mr.closest(".ant-select-dropdown, .ant-picker-dropdown, .ant-tooltip, .ant-dropdown, .ant-popover, .ant-modal-wrap, .ant-drawer-content-wrapper, .ant-message, .ant-notification")||(L(null),G([]),Y({}))};return document.addEventListener("mousedown",ct),()=>document.removeEventListener("mousedown",ct)},[R,w]);const[W,G]=S.useState([]),[q,Y]=S.useState({}),K=Q5(W,q,Y),Z=S.useMemo(()=>Fy(W,q).filter(ct=>ct.required&&up(q[ct.name])),[W,q]),[X,Q]=S.useState("chat"),[J,re]=S.useState([]),[te,oe]=S.useState(null),[le,ce]=S.useState("results"),[ie,ue]=S.useState(!1),[we,ve]=S.useState([]),[$e,Te]=S.useState(!1),[Le,Ne]=S.useState([]),[de,se]=S.useState([]),[he,me]=S.useState({}),[ye,ee]=S.useState(!1),[pe,ae]=S.useState(null),[fe,ne]=S.useState(void 0),[ke,ge]=S.useState(!1),[Oe,Re]=S.useState(!1);S.useEffect(()=>{g==null||g({showInspectionResults:ct=>{Q("robot"),ce("results"),oe(ct||null)}})},[g]);const[Fe,Be]=S.useState([]),[Xe,je]=S.useState(!1),[ot,Ce]=S.useState(void 0),[it,xe]=S.useState([]),[Pe,Ie]=S.useState(""),[De,tt]=S.useState("map"),[Ue,Ke]=S.useState(void 0),Se=S.useRef(0),vt=S.useRef(0),[pt,bt]=S.useState(XQ),[Ye,st]=S.useState({}),[Me,rt]=S.useState(()=>new Set),Je=S.useCallback((ct,Ht,yr)=>({key:`${Ht}-${ct.playbook_id}`,title:ct.name||"未命名场景",desc:ct.description||"",reason:yr,tags:[],playbook_id:ct.playbook_id,input_fields:ct.input_fields||[],categoryKey:Ht,video_url:ct.video_url,video_duration:ct.video_duration,view_count:ct.view_count}),[]),et=S.useMemo(()=>{const ct=u.map(Kn=>Je(Kn,p3t,"我的场景")),Ht=new Map;for(const Kn of l){const fs=Kn.category_name||Kn.category||Kn.type||"默认场景",Ma=`${V5n}${fs}`,yb=Ht.get(Ma)||[];yb.push(Je(Kn,Ma,fs)),Ht.set(Ma,yb)}const yr=Array.from(Ht.values()).flat(),Mr=[{key:X3e,name:"全部场景",count:yr.length,cards:yr},...Array.from(Ht,([Kn,fs])=>{var Ma;return{key:Kn,name:((Ma=fs[0])==null?void 0:Ma.reason)||"默认场景",count:fs.length,cards:fs}})],jn=[{key:K3e,name:"全部场景",count:s.length,cards:s},...o.map(Kn=>({key:Kn.key,name:Kn.name,count:Kn.count,cards:s.filter(fs=>fs.categoryKey===Kn.key)}))];return{allCategories:Mr,mapCategories:jn,myCards:ct}},[t,l,Je,s,o,u]),ht=S.useMemo(()=>$==="all"?et.allCategories:$==="map"?et.mapCategories:[],[et,$]),nt=S.useMemo(()=>s.map(ct=>({category:null,category_name:ct.reason,description:ct.desc,domain:"",id:0,name:ct.title,playbook_id:ct.playbook_id,scope:"usemap",status:"available",sub_category:null,tags:ct.tags.map(Ht=>Ht.name),input_fields:ct.input_fields,video_url:ct.video_url,video_duration:ct.video_duration,view_count:ct.view_count,type:"",version:""})),[s]),yt=S.useMemo(()=>{const ct=new Map;for(const Ht of[...l,...u,...nt])Ht.playbook_id&&ct.set(Ht.playbook_id,Ht);return Array.from(ct.values())},[l,u,nt]),xt=S.useMemo(()=>{const ct=new Map;for(const Ht of l){const yr=Ht.category_name||Ht.category||Ht.type||"默认场景",Mr=ct.get(yr)||[];Mr.push(Ht),ct.set(yr,Mr)}return[{key:"__my__",label:"我的场景",playbooks:[]},...Array.from(ct,([Ht,yr])=>({key:`all:${Ht}`,label:Ht,playbooks:yr}))]},[l]),At=S.useMemo(()=>{const ct=new Map(nt.map(Ht=>[Ht.playbook_id,Ht]));return o.map(Ht=>({key:`map:${Ht.key}`,label:Ht.name,playbooks:s.filter(yr=>yr.categoryKey===Ht.key).map(yr=>ct.get(yr.playbook_id)).filter(yr=>!!yr)}))},[s,o,nt]),Pt=De==="map"?At:xt,Bt=S.useMemo(()=>{var yr;const ct=k.trim().toLowerCase(),Ht=$==="my"?et.myCards:((yr=ht.find(Mr=>Mr.key===P))==null?void 0:yr.cards)||[];return ct?Ht.filter(Mr=>Mr.title.toLowerCase().includes(ct)||Mr.desc.toLowerCase().includes(ct)):Ht},[ht,P,et.myCards,$,k]),dr=S.useCallback(ct=>{const Ht=Array.isArray(ct)?ct:[];Be(Ht),je(Ht.length>0)},[]),Cr=S.useMemo(()=>d.find(ct=>ct.id===e),[d,e]),{messageData:zt,executing:Ze,stopping:Nt,actions:Ut}=i3t({activeAgent:e,ssoToken:m,ssoDomain:v,ssoCompany:y,onRecommendationsUpdate:dr}),{sendMessage:vr,executePlaybook:jt,respondToProposal:$t,stopCurrent:Mt,retrigger:lt}=Ut,{messages:Lt,messagesTotal:We,loading:wr,loadMessages:at,loadMoreMessages:Yn}=zt,ha=S.useMemo(()=>{for(let ct=Lt.length-1;ct>=0;ct--)if(Lt[ct].role==="assistant")return Lt[ct].id},[Lt]),Ps=S.useCallback(async()=>{if(!e||!m){xe([]);return}try{const ct=await JQe({agent_id:e,limit:8});xe(Array.isArray(ct.data)?ct.data:[])}catch{}},[e,m]);S.useEffect(()=>{Ps()},[Ps]);const ra=S.useCallback(async ct=>{await jt(ct),Ps()},[jt,Ps]),fr=S.useCallback(async ct=>{const Ht=String(ct.playbook_id||"").trim();if(!Ht)throw new Error("场景缺少 playbook_id");const{data:yr}=await ry({playbook_id:Ht});return JQ(ct,yr)},[]);S.useEffect(()=>{b.current||(b.current=!0,(async()=>{if(await at(),r){const ct=(i==null?void 0:i.trim())||"执行场景";ra({message:ct,playbook_id:r,playbook_params:n||{}})}else i!=null&&i.trim()&&vr(i.trim(),void 0,a)})())},[r,i,a,n,ra,at,vr]),S.useEffect(()=>{if(!e)return;let ct=!1;return(async()=>{try{const{data:Ht}=await lY({agent_id:e});if(ct)return;const yr=(Ht==null?void 0:Ht.children)||[];re(yr),oe(null)}catch{re([])}})(),()=>{ct=!0}},[e]),S.useEffect(()=>{ha&&ha!==ot&&Ce(ha)},[ha,ot]),S.useEffect(()=>{if(X!=="robot"||le!=="history"||!te){ve([]);return}const ct=J.find(yr=>yr.name===te);if(!ct)return;let Ht=!1;return ue(!0),(async()=>{try{const yr=await YQe({agent_id:ct.agent_id,limit:50});if(Ht)return;const jn=(Array.isArray(yr==null?void 0:yr.data)?yr.data:[]).map((Kn,fs)=>({id:Kn.id||Kn.execute_id||`record_${fs}`,action_name:Kn.action_name||Kn.display_name||"未知动作",status:Kn.status||"pending",created_at:Kn.created_at||"",completed_at:Kn.completed_at,output_data:Kn.output_data,error:Kn.error}));ve(jn)}catch{ve([])}finally{Ht||ue(!1)}})(),()=>{Ht=!0}},[X,le,te,J]);const Ur=S.useCallback(async()=>{try{const ct=await x8({});Array.isArray(ct==null?void 0:ct.data)&&se(ct.data.map(Ht=>({webhook_id:Ht.webhook_id||"",name:Ht.name||"未命名渠道",platform:Ht.platform||""})))}catch{}},[]),Gi=S.useCallback(async()=>{try{const ct={};await Promise.all(J.map(async Ht=>{var yr;try{const Mr=await nJe(Ht.agent_id,{}),jn=(yr=Mr==null?void 0:Mr.data)==null?void 0:yr.webhook_id;jn&&(ct[Ht.agent_id]=jn)}catch{}})),me(ct)}catch{}},[J]),Bc=S.useCallback(async()=>{if(e){Te(!0);try{const ct=await KQe({agent_id:e,limit:20,use_cache:!1}),yr=(Array.isArray(ct==null?void 0:ct.data)?ct.data:[]).map(Mr=>{const jn=Mr.ui_payload||Mr.outputs||void 0;return{id:Mr.inbox_id||Mr.id||"",title:Mr.title||"巡检结果",summary:Mr.summary||"",priority:Mr.priority||"medium",timestamp:Mr.created_at||"",ui_payload:jn,agent_name:Mr.agent_name||Mr.agent_id||"",actions:q5n(Mr)}}).sort((Mr,jn)=>new Date(jn.timestamp||0).getTime()-new Date(Mr.timestamp||0).getTime());Ne(yr)}catch{Ne([])}finally{Te(!1)}}},[e]);S.useEffect(()=>{Ur(),J.length>0&&Gi()},[J,Ur,Gi]),S.useEffect(()=>{X==="robot"&&le==="results"&&Bc()},[X,le,Bc]);const Fc=ct=>{ae(ct),ne(he[ct.agent_id]),ee(!0)},Sv=async()=>{if(!pe||!fe){Et.warning("请选择通知渠道");return}try{ge(!0),await rJe({},{agent_id:pe.agent_id,webhook_id:fe}),Et.success("绑定成功"),ee(!1),await Gi()}catch(ct){Et.error((ct==null?void 0:ct.message)||"绑定失败")}finally{ge(!1)}},vb=async()=>{if(pe)try{ge(!0),await iJe(pe.agent_id,{}),Et.success("解绑成功"),ee(!1),ne(void 0),await Gi()}catch(ct){Et.error((ct==null?void 0:ct.message)||"解绑失败")}finally{ge(!1)}},xf=S.useMemo(()=>te?Le.filter(ct=>{var Mr;const Ht=(Mr=ct.title)==null?void 0:Mr.match(/^(.+?)\s*巡检结果$/);return(Ht?Ht[1]:ct.agent_name)===te}):Le,[Le,te]),ul=ct=>{if(!ct)return"";try{return new Date(ct).toLocaleString("zh-CN",{month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"})}catch{return ct}},fn=S.useCallback((ct,Ht,yr)=>{if(je(!1),Ht){ra({message:ct,playbook_id:Ht});return}vr(ct,void 0,yr)},[ra,vr]),qr=S.useCallback(ct=>{I(ct),N(ct==="all"?X3e:ct==="map"?K3e:p3t),A(""),L(null),G([]),Y({})},[]),go=S.useCallback(()=>{I("all"),N(X3e),A(""),L(null),G([]),Y({}),C(!0)},[]),Bl=S.useCallback(()=>{C(!1),L(null),G([]),Y({})},[]),Fl=S.useCallback((ct,Ht={})=>{L({key:ct.playbook_id,playbook_id:ct.playbook_id,title:ct.name,desc:ct.description??"",reason:"",tags:[],categoryKey:"",input_fields:ct.input_fields||[]});const yr=rB(ct.input_fields||[]);G(yr),Y(hw(yr,Ht))},[]),wf=S.useCallback(async ct=>{var yr;if(Ze||_)return;const Ht=String(ct.playbook_id||"").trim();if(!Ht){Et.error("场景缺少 playbook_id");return}T(Ht);try{const Mr={category:null,category_name:ct.reason||void 0,description:ct.desc,domain:"",id:0,name:ct.title,playbook_id:Ht,scope:"",status:"available",sub_category:null,tags:ct.tags.map(fs=>fs.name),type:"",version:"",input_fields:ct.input_fields,video_url:ct.video_url,video_duration:ct.video_duration,view_count:ct.view_count},{data:jn}=await ry({playbook_id:Ht});if(!jn||typeof jn!="object"||Array.isArray(jn))throw new Error("场景详情为空");const Kn=JQ(Mr,jn);if(C(!1),(yr=Kn.input_fields)!=null&&yr.length){Fl(Kn);return}fn(Kn.name,Kn.playbook_id),p==null||p(ct)}catch(Mr){const jn=Mr instanceof Error?Mr.message:"场景加载失败";Et.error(jn)}finally{T("")}},[Ze,Fl,fn,p,_]),r4=S.useCallback(async ct=>{if(!Ze){if(je(!1),ct.input_fields&&ct.input_fields.length>0){Fl(ct);return}try{await ra({message:ct.name,playbook_id:ct.playbook_id})}catch(Ht){const yr=Ht instanceof Error?Ht.message:"执行失败";Et.error(yr)}}},[Ze,ra,Fl]),X2=S.useCallback(async ct=>{var yr;if(Ze||Pe)return;const Ht=String(ct.playbook_id||"").trim();if(Ht){Ie(Ht),je(!1);try{const Mr=han(ct),jn=await fr(ct);if((yr=jn.input_fields)!=null&&yr.length){Fl(jn,Mr);return}await ra({message:jn.name,playbook_id:jn.playbook_id})}catch(Mr){const jn=Mr instanceof Error?Mr.message:"场景参数加载失败";Et.error(jn)}finally{Ie("")}}},[Ze,ra,Fl,fr,Pe]),ui=S.useCallback(async()=>{if(!R||Ze)return;const Ht=Fy(W,q).filter(jn=>jn.required&&up(q[jn.name]));if(Ht.length>0){Et.warning(`请先填写 ${Ht.length} 项必填参数`);return}C(!1),je(!1);const yr=R,Mr=q;L(null),G([]),Y({});try{const jn=yr.title||(i==null?void 0:i.trim())||"执行场景";await ra({message:jn,playbook_id:yr.playbook_id,playbook_params:Mr}),p==null||p(yr)}catch(jn){const Kn=jn instanceof Error?jn.message:"执行失败";Et.error(Kn)}},[R,W,q,Ze,ra,i,p]),Zr=S.useCallback(ct=>{vt.current+=1,Ke({requestId:++Se.current,playbooks:ct})},[]),ai=S.useCallback(()=>{const ct=++vt.current;Ke({requestId:++Se.current,playbooks:[],loading:!0}),(async()=>{await new Promise(Ht=>{window.requestAnimationFrame(()=>Ht())});try{const{data:Ht}=await qQe({agent_id:e});if(ct!==vt.current)return;Ke({requestId:++Se.current,playbooks:Y5n(Ht)})}catch{if(ct!==vt.current)return;Et.error("我的场景加载失败"),Ke({requestId:++Se.current,playbooks:[]})}})()},[e]),hs=S.useCallback(ct=>{Ke(Ht=>(Ht==null?void 0:Ht.requestId)===ct?void 0:Ht)},[]),zl=E.jsxs("div",{className:"wandox-console-chat__scene-quick",children:[E.jsx(Kv,{menu:{selectedKeys:[De],items:[{key:"all",label:"全部场景"},{key:"map",label:"使用地图"}],onClick:({key:ct})=>{vt.current+=1,tt(ct)}},trigger:["click"],placement:"topLeft",children:E.jsxs("button",{type:"button",className:"wandox-console-chat__scene-source",disabled:Ze,children:[E.jsx("span",{children:De==="map"?"使用地图":"全部场景"}),E.jsx("svg",{className:"wandox-console-chat__scene-source-arrow",width:"12",height:"12",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true",focusable:"false",children:E.jsx("path",{d:"M8.413 0.963a2 2 0 0 1 2.738.712l4.872 8.301a4 4 0 0 1 0 4.049l-4.872 8.3a2 2 0 1 1-3.45-2.025L12.574 12 7.701 3.7A2 2 0 0 1 8.413.963Z"})})]})}),E.jsx("span",{className:"wandox-console-chat__scene-separator","aria-hidden":!0,children:"|"}),E.jsx("div",{className:"wandox-console-chat__scene-categories",children:Pt.map(ct=>E.jsx("button",{type:"button",className:"wandox-console-chat__choose-scene",disabled:Ze,onClick:()=>ct.key==="__my__"?ai():Zr(ct.playbooks),children:ct.label},ct.key))})]}),Goe=S.useCallback(async ct=>{var Kn;const Ht=(Kn=ct.meta_content)!=null&&Kn.playbook_id?"数据报表":"对话内容",yr=new Date().toISOString().slice(0,10);if(J_e(ct)){const fs=Tvt(ct);if(!fs){Et.warning("没有可导出的表格数据");return}const Ma=fs.fields.map(S8e=>S8e.label).join(","),yb=fs.rows.map(S8e=>fs.fields.map(ppi=>Evt(S8e[ppi.name])).join(",")),fpi=`\uFEFF${[Ma,...yb].join(`
1101
- `)}`;kvt(new Blob([fpi],{type:"text/csv;charset=utf-8;"}),`${Ht}_${yr}.csv`);return}const Mr=document.querySelector(`[data-message-id="${ct.message_id||ct.id}"] .wandox-message-content`);if(!Mr){Et.warning("无法定位消息内容");return}const jn=window.open("","_blank");if(!jn){Et.warning("请允许弹出窗口");return}jn.document.write(`<!DOCTYPE html><html><head><meta charset="utf-8"><title>${Ht}_${yr}</title><style>body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;padding:20px;color:#333}table{border-collapse:collapse;width:100%}th,td{border:1px solid #d9d9d9;padding:6px 8px;font-size:13px;text-align:left}th{background:#fafafa}img{max-width:100%}pre{white-space:pre-wrap;word-break:break-all;font-size:12px;background:#f5f5f5;padding:12px;border-radius:4px}button,.ant-btn,.ant-tooltip-open{display:none!important}</style></head><body>${Mr.innerHTML}</body></html>`),jn.document.close(),jn.onload=()=>{jn.print(),jn.close()}},[]),EXt=S.useCallback(ct=>{var jn,Kn,fs;const Ht=Lt.find(Ma=>Ma.message_id===ct||Ma.id===ct),yr=Q_e(Ht);if(!yr){Et.warning("缺少场景 ID,无法配置定时触发");return}const Mr=((Kn=(jn=Ht==null?void 0:Ht.actions)==null?void 0:jn.find(Ma=>Ma.playbook_id===yr))==null?void 0:Kn.display_name)||((fs=Ht==null?void 0:Ht.meta_content)==null?void 0:fs.playbook_name)||yr;bt({visible:!0,messageId:ct,agentId:e,playbookId:yr,playbookName:Mr})},[e,Lt]),dpi=S.useCallback(()=>{bt(XQ)},[]),Uoe=S.useCallback(ct=>{const Ht=ct.message_id;return Ht&&Object.prototype.hasOwnProperty.call(Ye,Ht)?Ye[Ht]:uvt(ct)},[Ye]),kXt=S.useCallback(async(ct,Ht,yr)=>{var fs;const Mr=ct.message_id;if(!Mr||Me.has(Mr))return!1;const jn=Uoe(ct),Kn=dvt(jn,Ht);st(Ma=>({...Ma,[Mr]:Kn})),rt(Ma=>new Set(Ma).add(Mr));try{const Ma=await UQe({domain:v},{message_id:Mr,rating:Kn,tags:(fs=yr==null?void 0:yr.tags)!=null&&fs.length?yr.tags:void 0,text:(yr==null?void 0:yr.text)||void 0});if((Ma==null?void 0:Ma.success)===!1)throw new Error(Ma.message||"反馈提交失败");return!0}catch(Ma){return st(yb=>({...yb,[Mr]:jn})),Et.error(Ma instanceof Error?Ma.message:"反馈提交失败,请稍后重试"),!1}finally{rt(Ma=>{const yb=new Set(Ma);return yb.delete(Mr),yb})}},[Me,Uoe,v]),AXt=S.useCallback(async ct=>{je(!1);try{await lt(ct)}catch(Ht){const yr=Ht instanceof Error?Ht.message:"重新生成失败";Et.error(yr)}},[lt]),IXt=S.useCallback(()=>{je(ct=>!ct)},[]),$Xt=S.useCallback((ct,Ht)=>{if(ct.role!=="assistant"||ct.execution_status==="executing")return null;const Mr=Ht&&ct.id===ot&&Fe.length>0,jn=Xe?"隐藏推荐":Mr?`显示推荐(${Fe.length})`:"推荐";return E.jsxs(E.Fragment,{children:[E.jsx(Ivt,{msg:ct,domain:v,onExportMessage:Goe,exportIcon:"copy",showSolidify:!1,onOpenScheduleDialog:EXt,onRetrigger:AXt,feedbackRating:Uoe(ct),feedbackPending:!!ct.message_id&&Me.has(ct.message_id),onFeedback:kXt,extraActions:Mr?E.jsx(ri,{title:jn,children:E.jsxs("button",{type:"button",className:`wandox-console-chat__toolbar-toggle${Xe?" is-active":""}`,"aria-label":jn,"aria-expanded":Xe,onClick:IXt,children:[E.jsx(n4r,{}),E.jsx("span",{className:"wandox-console-chat__toolbar-toggle-count",children:Fe.length})]})}):null}),Mr&&Xe&&E.jsx("ul",{className:"wandox-console-chat__recommendations","aria-label":"推荐场景",children:Fe.map((Kn,fs)=>E.jsx("li",{className:"wandox-console-chat__recommendations-item",children:E.jsxs("button",{type:"button",className:"wandox-console-chat__recommendations-pill",disabled:Ze,onClick:()=>{r4(Kn)},title:Kn.description||Kn.name,children:[E.jsx("span",{className:"wandox-console-chat__recommendations-pill-label",children:Kn.name}),E.jsx("span",{className:"wandox-console-chat__recommendations-pill-arrow",children:E.jsx(Eq,{})})]})},`${Kn.playbook_id||Kn.name}-${fs}`))})]})},[Ze,Me,Uoe,r4,Goe,kXt,EXt,AXt,Fe,ot,Xe,v,IXt]),w8e=S.useCallback((ct,Ht)=>{z(ct),j(Ht),F(!0)},[]),hpi=S.useMemo(()=>E.jsxs("div",{className:"wandox-console-chat__body",children:[E.jsx(Z_e,{messages:Lt,executing:Ze,ssoToken:m,ssoDomain:v,ssoCompany:y,onExecutePlaybook:ra,onFillPlaybookParams:ct=>Fl({category:null,domain:"",id:0,name:ct.playbookName,playbook_id:ct.playbookId,scope:"",status:"available",sub_category:null,tags:null,type:"",version:"",input_fields:ct.inputFields,playbook_type:ct.playbookType},ct.initialParams??{}),onRespondToProposal:$t,containerRef:x,messagesTotal:We,loadMoreMessages:Yn,loading:wr,initialLoadingContent:E.jsx(Avt,{}),conversationKey:e,messageToolbar:$Xt,onOpenActionDrawer:w8e}),E.jsx(eTe,{messages:Lt,scrollContainerRef:x,mode:"deepseek"})]}),[e,ra,Ze,Fl,Yn,Lt,wr,We,w8e,$Xt,$t,y,v,m]);return E.jsxs("div",{className:"wandox-root wandox-console-chat",children:[E.jsxs("header",{className:"wandox-console-chat__top",children:[E.jsxs("button",{type:"button",className:"wandox-console-chat__back",onClick:f,children:[E.jsx(eC,{}),E.jsx("span",{children:"返回"})]}),E.jsx("div",{className:"wandox-console-chat__agent-selector",children:E.jsx(Kv,{menu:{items:d.map(ct=>({key:ct.id,disabled:ct.id===e,label:E.jsxs("span",{className:"wandox-console-agent-menu-item",children:[E.jsx("span",{className:"wandox-console-agent-menu-item__icon",children:ct.icon}),E.jsx("span",{className:"wandox-console-agent-menu-item__name",children:ct.name}),ct.id===e&&E.jsx(Tm,{className:"wandox-console-agent-menu-item__check"})]})})),onClick:({key:ct})=>h==null?void 0:h(ct)},trigger:["click"],placement:"bottomLeft",children:E.jsxs("button",{type:"button",className:"wandox-console-chat__title","aria-label":"切换智能体",title:"切换智能体",children:[(Cr==null?void 0:Cr.icon)&&E.jsx("span",{className:"wandox-console-chat__title-icon",children:Cr.icon}),E.jsx("span",{className:"wandox-console-chat__title-name",children:t||(Cr==null?void 0:Cr.name)||"智能体"}),E.jsx(cA,{className:"wandox-console-chat__title-arrow"})]})})}),E.jsxs("button",{type:"button",className:"wandox-console-chat__all-scenes",disabled:Ze,onClick:go,children:[E.jsx(dEr,{}),E.jsx("span",{children:"全部场景"})]}),E.jsx(fTe,{benefit:Cr==null?void 0:Cr.packageBenefit})]}),E.jsxs("nav",{className:"wandox-console-chat__topbar",children:[E.jsx("button",{type:"button",className:`wandox-console-chat__topbar-tab ${X==="chat"?"active":""}`,onClick:()=>Q("chat"),children:"智能体会话"}),E.jsx("button",{type:"button",className:`wandox-console-chat__topbar-tab ${X==="robot"?"active":""}`,onClick:()=>{Q("robot"),oe(null)},children:E.jsx("span",{children:"巡检机器人"})})]}),X==="chat"?hpi:E.jsxs("div",{className:"wandox-console-chat__robot",children:[E.jsx("div",{className:"wandox-console-chat__robot-chips",children:J.length===0?E.jsx("div",{className:"wandox-console-chat__robot-empty",children:"该智能体暂无巡检机器人"}):E.jsxs(E.Fragment,{children:[J.length>0&&E.jsx("button",{type:"button",className:`wandox-console-chat__robot-chip ${te===null?"active":""}`,onClick:()=>oe(null),children:"全部"}),J.map(ct=>{const Ht=!!he[ct.agent_id];return E.jsxs("div",{className:`wandox-console-chat__robot-chip-compound ${te===ct.name?"active":""}`,children:[E.jsx("button",{type:"button",className:"wandox-console-chat__robot-chip-name",onClick:()=>oe(ct.name),children:ct.name}),E.jsx("button",{type:"button",className:`wandox-console-chat__robot-chip-bind ${Ht?"bound":""}`,onClick:()=>Fc(ct),title:Ht?"已绑定通知渠道,点击修改":"绑定通知渠道",children:Ht?E.jsxs(E.Fragment,{children:[E.jsx("span",{className:"wandox-console-chat__robot-chip-bind-dot","aria-hidden":"true"}),E.jsx("span",{children:"已通知"})]}):E.jsxs(E.Fragment,{children:[E.jsx(kq,{}),E.jsx("span",{children:"通知"})]})})]},ct.agent_id)})]})}),E.jsxs("div",{className:"wandox-console-chat__robot-tabs",children:[E.jsx("button",{type:"button",className:`wandox-console-chat__robot-tab ${le==="results"?"active":""}`,onClick:()=>ce("results"),children:"巡检结果"}),E.jsxs("button",{type:"button",className:`wandox-console-chat__robot-tab ${le==="history"?"active":""}`,onClick:()=>ce("history"),children:["执行记录",le==="history"&&te&&we.length>0&&E.jsx("span",{className:"wandox-console-chat__robot-tab-badge",children:we.length})]})]}),E.jsx("div",{className:"wandox-console-chat__robot-content",children:le==="results"?$e?E.jsxs("div",{className:"wandox-console-chat__robot-loading",children:[E.jsx(Oi,{size:"small"}),E.jsx("span",{children:"加载中..."})]}):xf.length===0?E.jsxs("div",{className:"wandox-console-chat__robot-empty",children:[E.jsx("div",{className:"wandox-console-chat__robot-empty-icon",children:E.jsx(U0e,{})}),E.jsx("div",{className:"wandox-console-chat__robot-empty-title",children:te?`${te} 暂无巡检结果`:"暂无巡检结果"}),E.jsx("div",{className:"wandox-console-chat__robot-empty-desc",children:"巡检结果会在机器人执行后展示在这里"})]}):E.jsx("ul",{className:"wandox-console-chat__robot-timeline",children:xf.map((ct,Ht)=>{const yr={high:"#ff4d4f",medium:"#faad14",low:"#52c41a"},Mr=Ht===xf.length-1;return E.jsxs("li",{className:"wandox-console-chat__robot-timeline-item",children:[E.jsxs("div",{className:"wandox-console-chat__robot-timeline-axis",children:[E.jsx("span",{className:"wandox-console-chat__robot-timeline-time",children:ul(ct.timestamp)}),E.jsx("span",{className:"wandox-console-chat__robot-timeline-dot",style:{background:yr[ct.priority]}}),!Mr&&E.jsx("span",{className:"wandox-console-chat__robot-timeline-line"})]}),E.jsxs("div",{className:"wandox-console-chat__robot-timeline-card",children:[E.jsx("div",{className:"wandox-console-chat__robot-timeline-title",children:ct.title}),ct.summary&&E.jsx("div",{className:"wandox-console-chat__robot-timeline-summary",children:ct.summary}),ct.ui_payload&&E.jsx("div",{className:"wandox-console-chat__robot-timeline-content wandox-markdown-content",children:E.jsx(To,{payload:ct.ui_payload})}),ct.actions&&ct.actions.length>0&&E.jsx("div",{className:"wandox-console-chat__robot-timeline-actions",children:E.jsxs("button",{type:"button",className:"wandox-console-chat__robot-timeline-action-btn",onClick:()=>w8e(ct.title,ct.actions??[]),children:[E.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",role:"img",children:[E.jsx("title",{children:"快速执行"}),E.jsx("path",{d:"M13 2L3 14H12L11 22L21 10H12L13 2Z",fill:"currentColor"})]}),E.jsxs("span",{children:["快速执行 (",ct.actions.length,")"]})]})})]})]},ct.id||`result_${Ht}`)})}):te?ie?E.jsxs("div",{className:"wandox-console-chat__robot-loading",children:[E.jsx(Oi,{size:"small"}),E.jsx("span",{children:"加载中..."})]}):we.length===0?E.jsx("div",{className:"wandox-console-chat__robot-empty",children:E.jsx("div",{className:"wandox-console-chat__robot-empty-title",children:"暂无执行记录"})}):E.jsx("ul",{className:"wandox-console-chat__robot-history",children:we.map(ct=>E.jsxs("li",{className:`wandox-console-chat__robot-history-item wandox-console-chat__robot-history-item--${ct.status}`,children:[E.jsxs("div",{className:"wandox-console-chat__robot-history-info",children:[E.jsx("span",{className:"wandox-console-chat__robot-history-name",children:ct.action_name}),E.jsx("span",{className:"wandox-console-chat__robot-history-time",children:ct.created_at?new Date(ct.created_at).toLocaleString("zh-CN",{month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"}):""})]}),E.jsx("span",{className:`wandox-console-chat__robot-history-status wandox-console-chat__robot-history-status--${ct.status}`,children:{pending:"等待中",running:"执行中",success:"成功",failed:"失败"}[ct.status]||ct.status})]},ct.id))}):E.jsxs("div",{className:"wandox-console-chat__robot-empty",children:[E.jsx("div",{className:"wandox-console-chat__robot-empty-icon",children:E.jsx(U0e,{})}),E.jsx("div",{className:"wandox-console-chat__robot-empty-title",children:"请先选择机器人"}),E.jsx("div",{className:"wandox-console-chat__robot-empty-desc",children:"在上方选择机器人以查看其执行记录"})]})})]}),X==="chat"&&it.length>0&&!(R&&!w)&&E.jsx("div",{className:"wandox-console-chat__recent",children:E.jsx("div",{className:"wandox-console-chat__recent-bar",children:it.map((ct,Ht)=>E.jsx("button",{type:"button",className:"wandox-console-chat__recent-chip",disabled:Ze||!!Pe,title:ct.description||ct.name,onClick:()=>{X2(ct)},children:ct.name},`${ct.playbook_id||ct.name}-${Ht}`))})}),X==="chat"&&E.jsx("div",{className:"wandox-console-chat__input",children:R&&!w?E.jsxs("div",{ref:O,className:"wandox-console-input-playbook wandox-console-prompt",children:[E.jsxs("div",{className:"wandox-console-prompt__head",children:[E.jsxs("div",{className:"wandox-console-scenechoice",children:[E.jsx("span",{children:"已选择场景"}),E.jsx("strong",{children:R.title})]}),E.jsx("button",{type:"button",className:"wandox-console-changescene",onClick:()=>{L(null),G([]),Y({})},children:"重新选择"})]}),E.jsx("div",{ref:M,tabIndex:-1,className:"wandox-console-taskarea wandox-console-taskarea--static",children:R.desc||R.title}),W.length>0&&E.jsxs("div",{className:"wandox-console-paramarea",children:[E.jsxs("div",{className:"wandox-console-paramhead",children:[E.jsx(bZe,{}),E.jsx("strong",{children:"确认分析范围"}),E.jsxs("span",{className:"wandox-console-paramhead__status",children:[E.jsx(VA,{})," ",Z.length>0?`待填 ${Z.length} 项必填参数`:"参数已就绪"]})]}),E.jsx("div",{className:"wandox-console-params",children:Fy(W,q).map(ct=>E.jsx(g3t,{field:ct,value:q[ct.name],uploading:!1,fileNameMap:{},getOptionState:K.getFieldState,onChange:(Ht,yr)=>Y(Mr=>({...Mr,[Ht]:yr}))},ct.name))})]}),E.jsxs("div",{className:"wandox-console-prompt__foot",children:[E.jsx("span",{className:"wandox-console-input-playbook__tip",children:"· 已继承当前上下文"}),E.jsxs("button",{type:"button",className:"wandox-console-start",disabled:!R||Ze||Z.length>0,onClick:ui,children:["开始执行",E.jsx(Eq,{})]})]})]}):E.jsx(eJ,{onSend:fn,executing:Ze,stopping:Nt,onStop:Mt,placeholder:" / 快速调用场景",ssoToken:m,ssoDomain:v,ssoCompany:y,leadingActions:zl,uploadButtonAsLeading:!0,uploadButtonLabel:"添加文件",mentionTriggerChar:"/",mentionListRequest:Ue,onMentionListRequestHandled:hs,autoFocusInput:!R,playbooks:yt,onRequestPlaybookParams:Fl})}),E.jsx(G5n,{open:w,source:$,categories:ht,categoryKey:P,search:k,cards:Bt,executing:Ze,loadingPlaybookId:_,onClose:Bl,onSourceChange:qr,onCategoryChange:N,onSearchChange:A,onSelectScene:wf}),E.jsx(vvt,{open:pt.visible,agentId:pt.agentId,playbookId:pt.playbookId,playbookName:pt.playbookName,onClose:dpi}),m&&v&&y&&E.jsx(Y_e,{open:D,title:H,actions:B,ssoToken:m,ssoDomain:v,ssoCompany:y,onClose:()=>F(!1)}),E.jsx(ki,{title:"配置通知渠道",open:ye,onCancel:()=>{ee(!1),ae(null),ne(void 0)},width:520,centered:!0,footer:[he[(pe==null?void 0:pe.agent_id)||""]?E.jsx(ir,{danger:!0,loading:ke,style:{marginRight:"auto"},onClick:vb,children:"解除绑定"},"unbind"):null,E.jsx(ir,{disabled:ke,onClick:()=>{ee(!1),ae(null),ne(void 0)},children:"取消"},"cancel"),E.jsx(ir,{type:"primary",loading:ke,disabled:!fe,onClick:Sv,children:"保存"},"ok")],children:E.jsxs("div",{style:{padding:"8px 0"},children:[E.jsxs("div",{style:{marginBottom:16,padding:"12px 16px",background:"#f5f7fa",borderRadius:8,display:"flex",alignItems:"center",justifyContent:"space-between"},children:[E.jsx("div",{style:{fontSize:13,color:"#666"},children:"巡检机器人"}),E.jsx("div",{style:{fontSize:15,color:"#1a1a1a",fontWeight:500},children:pe==null?void 0:pe.name})]}),E.jsx("div",{style:{marginBottom:8,fontSize:14,color:"#333",fontWeight:500},children:"选择通知渠道"}),E.jsx(xn,{style:{width:"100%"},placeholder:"请选择通知渠道",value:fe,onChange:ne,disabled:ke,options:de.map(ct=>({label:`${ct.name}(${ct.platform==="dingtalk"?"钉钉":ct.platform==="feishu"?"飞书":"企业微信"})`,value:ct.webhook_id})),popupRender:ct=>E.jsxs(E.Fragment,{children:[ct,E.jsx(Zpe,{style:{margin:"8px 0"}}),E.jsx(Go,{style:{padding:"0 8px 4px"},children:E.jsx(ir,{type:"text",icon:E.jsx("span",{children:"+"}),onClick:()=>Re(!0),children:"添加新的通知渠道"})})]})}),de.length===0&&E.jsx("div",{style:{marginTop:8,padding:"8px 12px",background:"#fff7e6",border:"1px solid #ffd591",borderRadius:4,fontSize:13,color:"#d46b08"},children:"暂无可用的通知渠道,请先在「通知配置」中创建"})]})}),E.jsx(pTe,{open:Oe,onClose:()=>Re(!1),onSuccess:ct=>{se(Ht=>[...Ht,ct]),ne(ct.webhook_id)}})]})}const{TextArea:X5n}=zr,nz=5;function Z5n({useMapCards:e,useMapCategories:t,playbooks:r=[],selectedCategoryKey:n,onCategorySelect:i,loading:a,useMapError:s,onRetry:o,onStartAnalysis:l,agents:u,selectedAgentId:d,onAgentSelect:h,onOpenAgentChat:f}){const[p,g]=S.useState(""),[m,v]=S.useState(""),[y,x]=S.useState(null),b=S.useRef(null),[w,C]=S.useState([]),[_,T]=S.useState(!1),[k,A]=S.useState(""),$=S.useRef(0),[I,P]=S.useState({}),[N,R]=S.useState({}),[L,M]=S.useState({}),[O,D]=S.useState([]),[F,B]=S.useState(!1),j=S.useRef(null),[H,z]=S.useState(0),W=Math.max(1,Math.ceil(t.length/nz)),G=Math.min(H,W-1),q=t.length>nz,Y=S.useMemo(()=>t.slice(G*nz,G*nz+nz),[t,G]);S.useEffect(()=>{z(0)},[d]);const K=S.useMemo(()=>e.length>0?e:M5n(r),[e,r]),Z=S.useMemo(()=>n?K.filter(se=>se.categoryKey===n):K,[K,n]),X=S.useMemo(()=>{const se=m.trim().toLowerCase();return se?Z.filter(he=>he.title.toLowerCase().includes(se)||he.desc.toLowerCase().includes(se)):Z},[Z,m]),Q=a||s&&K.length===0||X.length>0,[J,re]=S.useState("");S.useEffect(()=>{$.current+=1,re(""),g(""),C([]),P({}),T(!1),A("")},[n]),S.useEffect(()=>{J&&!K.some(se=>se.playbook_id===J)&&($.current+=1,re(""),g(""),C([]),P({}),T(!1),A(""))},[J,K]);const te=S.useMemo(()=>K.find(se=>se.playbook_id===J)??null,[K,J]),oe=S.useMemo(()=>y?h3t(y):null,[y]),le=S.useCallback((se,he)=>{se.stopPropagation(),x(he)},[]);S.useEffect(()=>{if(a||te)return;const se=window.setTimeout(()=>{var me,ye;const he=(ye=(me=b.current)==null?void 0:me.resizableTextArea)==null?void 0:ye.textArea;he==null||he.focus()},0);return()=>window.clearTimeout(se)},[a,te]);const ce=S.useCallback(async se=>{const he=String(se.playbook_id||"").trim();if(!he){Et.error("场景缺少 playbook_id");return}const me=++$.current;re(he),C([]),P({}),R({}),M({}),T(!0),A("");try{const{data:ye}=await ry({playbook_id:he});if(me!==$.current)return;if(!ye||typeof ye!="object"||Array.isArray(ye))throw new Error("场景详情为空");const ee=rB(Gvt(ye));C(ee),P(hw(ee))}catch(ye){if(me!==$.current)return;const ee=ye instanceof Error?ye.message:"场景参数加载失败";A(ee),Et.error("场景参数加载失败,请稍后重试")}finally{me===$.current&&T(!1)}},[]),ie=()=>{$.current+=1,re(""),g(""),C([]),P({}),T(!1),A("")},ue=Q5(w,I,P),we=S.useMemo(()=>Fy(w,I),[w,I]),ve=S.useCallback((se,he)=>{P(me=>({...me,[se]:he}))},[]),$e=S.useCallback((se,he)=>async({file:me,onSuccess:ye,onError:ee})=>{var pe,ae;R(fe=>({...fe,[se]:!0}));try{const fe=me,ne=await ny(fe),ke=(pe=ne==null?void 0:ne.data)==null?void 0:pe.url,ge=((ae=ne==null?void 0:ne.data)==null?void 0:ae.name)||fe.name;if(!ke)throw new Error("上传结果缺少文件地址");M(Oe=>({...Oe,[ke]:ge})),P(Oe=>{if(he<=1)return{...Oe,[se]:ke};const Re=Array.isArray(Oe[se])?Oe[se]:Oe[se]?[Oe[se]]:[];return{...Oe,[se]:[...Re,ke]}}),ye==null||ye(ne),Et.success("上传成功")}catch(fe){const ne=fe instanceof Error?fe:new Error("上传失败");ee==null||ee(ne),Et.error(ne.message)}finally{R(fe=>({...fe,[se]:!1}))}},[]),Te=S.useCallback(async se=>{const he=Array.from(se.target.files??[]);if(se.target.value="",he.length!==0){B(!0);try{const me=await Promise.all(he.map(async ye=>{var fe,ne;const ee=await ny(ye),pe=(fe=ee==null?void 0:ee.data)==null?void 0:fe.url,ae=((ne=ee==null?void 0:ee.data)==null?void 0:ne.name)||ye.name;if(!pe)throw new Error("上传结果缺少文件地址");return{type:ye.type.startsWith("image/")?"image":"file",url:pe,name:ae,mime_type:ye.type}}));D(ye=>[...ye,...me]),Et.success(`已添加 ${me.length} 个附件`)}catch(me){Et.error(me instanceof Error?me.message:"上传失败")}finally{B(!1)}}},[]),Le=S.useCallback(se=>{D(he=>he.filter(me=>me.url!==se))},[]),Ne=S.useMemo(()=>we.filter(se=>se.required&&up(I[se.name])),[we,I]),de=S.useMemo(()=>u.find(se=>se.id===d)??u.find(se=>se.current)??u[0],[u,d]);return E.jsxs("div",{className:"wandox-console-view",children:[E.jsxs("div",{className:"wandox-console-homecenter",children:[E.jsxs("div",{className:"wandox-console-homecenter-hero",children:[de&&E.jsxs("div",{className:"wandox-console-home-header",children:[E.jsxs("div",{className:"wandox-console-home-header__agent",children:[E.jsx("span",{className:"wandox-console-home-header__avatar",children:de.icon}),E.jsxs("div",{className:"wandox-console-home-header__identity",children:[E.jsxs("div",{className:"wandox-console-home-header__selector-row",children:[E.jsx(Kv,{menu:{items:u.map(se=>({key:se.id,disabled:se.id===de.id,label:E.jsxs("span",{className:"wandox-console-agent-menu-item",children:[E.jsx("span",{className:"wandox-console-agent-menu-item__icon",children:se.icon}),E.jsx("span",{className:"wandox-console-agent-menu-item__name",children:se.name}),se.id===de.id&&E.jsx(VA,{className:"wandox-console-agent-menu-item__check"})]})})),onClick:({key:se})=>h==null?void 0:h(se)},trigger:["click"],placement:"bottomLeft",children:E.jsxs("button",{type:"button",className:"wandox-console-home-header__selector","aria-label":"切换智能体",children:[E.jsx("span",{className:"wandox-console-home-header__name",children:de.name}),E.jsx(cA,{className:"wandox-console-home-header__arrow"})]})}),E.jsx(fTe,{benefit:de.packageBenefit})]}),de.desc&&E.jsx("p",{className:"wandox-console-home-header__description",title:de.desc,children:de.desc})]})]}),E.jsxs("button",{type:"button",className:"wandox-console-home-header__history",onClick:()=>f==null?void 0:f(),children:[E.jsx("span",{children:"会话记录"}),E.jsx(Wv,{className:"wandox-console-home-header__history-arrow"})]})]}),E.jsxs("div",{className:"wandox-console-prompt",children:[te&&E.jsxs("div",{className:"wandox-console-prompt__head",children:[E.jsxs("div",{className:"wandox-console-scenechoice",children:[E.jsx("span",{children:"已选择场景"}),E.jsx("strong",{children:te.title})]}),E.jsx("button",{type:"button",className:"wandox-console-changescene",onClick:ie,children:"重新选择"})]}),te?E.jsx("div",{className:"wandox-console-taskarea wandox-console-taskarea--static",children:te.desc||te.title}):E.jsx("div",{className:"wandox-console-taskarea",children:E.jsx(X5n,{ref:b,value:p,onChange:se=>g(se.target.value),autoSize:{minRows:2},variant:"borderless",placeholder:"直接描述你的问题,或选择一个场景开始"})}),te&&_&&E.jsxs("div",{className:"wandox-console-paramarea wandox-console-paramarea--state",children:[E.jsx(jvt,{}),E.jsx("span",{children:"正在读取场景参数..."})]}),te&&!_&&k&&E.jsxs("div",{className:"wandox-console-paramarea wandox-console-paramarea--state",children:[E.jsx("span",{children:"场景参数加载失败"}),E.jsxs("button",{type:"button",className:"wandox-console-paramarea__retry",onClick:()=>void ce(te),children:[E.jsx(Xv,{}),"重试"]})]}),te&&!_&&!k&&we.length>0&&E.jsxs("div",{className:"wandox-console-paramarea",children:[E.jsxs("div",{className:"wandox-console-paramhead",children:[E.jsx(bZe,{}),E.jsx("strong",{children:"确认分析范围"}),E.jsxs("span",{className:"wandox-console-paramhead__status",children:[E.jsx(VA,{})," ",Ne.length>0?`待填 ${Ne.length} 项必填参数`:"参数已就绪"]})]}),E.jsx("div",{className:"wandox-console-params",children:we.map(se=>E.jsx(g3t,{field:se,value:I[se.name],uploading:!!N[se.name],fileNameMap:L,getOptionState:ue.getFieldState,onChange:ve,onUpload:$e},se.name))})]}),E.jsxs("div",{className:`wandox-console-prompt__foot${te?" wandox-console-prompt__foot--scene":""}`,children:[!te&&E.jsx("button",{type:"button",className:"wandox-console-attach",onClick:()=>{var se;return(se=j.current)==null?void 0:se.click()},disabled:F,title:F?"上传中…":"附件",children:E.jsx(Ul,{})}),E.jsx("input",{ref:j,type:"file",multiple:!0,accept:"image/*,.pdf,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.txt,.csv,.zip",hidden:!0,onChange:Te}),te?E.jsxs("button",{type:"button",className:"wandox-console-start",disabled:_||!!k||Ne.length>0,onClick:()=>{l==null||l({playbookId:te.playbook_id,playbookParams:I,message:te.title,attachments:O})},children:["开始执行",E.jsx(Eq,{})]}):E.jsx("div",{className:"wandox-console-prompt__foot-right",children:E.jsx("button",{type:"button",className:"wandox-console-prompt__send",disabled:!p.trim(),onClick:()=>{l==null||l({playbookParams:{},message:p.trim(),attachments:O})},"aria-label":"发送",children:E.jsx(fZe,{})})})]})]}),O.length>0&&E.jsx("div",{className:"wandox-console-attachments",children:O.map(se=>E.jsxs("span",{className:"wandox-console-attach-item",children:[se.type==="image"?E.jsx("img",{src:se.url,alt:se.name,className:"wandox-console-attach-item__thumb"}):E.jsx(s0e,{className:"wandox-console-attach-item__icon"}),E.jsx("span",{className:"wandox-console-attach-item__name",title:se.name,children:se.name}),E.jsx("button",{type:"button",className:"wandox-console-attach-item__remove","aria-label":"移除附件",onClick:()=>Le(se.url),children:E.jsx(gs,{})})]},se.url))}),E.jsxs("div",{className:"wandox-console-scenehead",children:[q&&E.jsx("button",{type:"button",className:"wandox-console-chipnav","aria-label":"上一页分类",disabled:G===0,onClick:()=>z(se=>Math.max(0,se-1)),children:E.jsx(NEr,{})}),E.jsx("div",{className:"wandox-console-chips",role:"tablist","aria-label":"场景分类",children:Y.map(se=>E.jsx("button",{type:"button",role:"tab","aria-selected":n===se.key,className:`wandox-console-chip${n===se.key?" wandox-console-chip--active":""}`,onClick:()=>i==null?void 0:i(se.key),children:E.jsx("span",{children:se.name})},se.key))}),q&&E.jsx("button",{type:"button",className:"wandox-console-chipnav","aria-label":"下一页分类",disabled:G===W-1,onClick:()=>z(se=>Math.min(W-1,se+1)),children:E.jsx(MEr,{})}),E.jsx("div",{className:"wandox-console-scenesearch",children:E.jsx(zr,{allowClear:!0,prefix:E.jsx(tg,{}),placeholder:"搜索当前地图下的场景",value:m,onChange:se=>v(se.target.value)})})]})]}),Q&&E.jsxs("section",{className:"wandox-console-scene-section","aria-label":"个性化场景",children:[E.jsx("div",{className:"wandox-console-scene-section__header",children:E.jsx("div",{children:E.jsx("h2",{children:"为你推荐"})})}),a?E.jsxs("div",{className:"wandox-console-agents__loading",style:{justifyContent:"center",padding:"40px 0"},children:[E.jsx(Oi,{size:"small"}),E.jsx("span",{children:"正在加载场景..."})]}):s&&K.length===0?E.jsxs("div",{className:"wandox-console-agents__error",style:{alignItems:"center",padding:"32px 0"},children:[E.jsx("span",{children:s}),E.jsxs("button",{type:"button",onClick:o,children:[E.jsx(Xv,{}),"重试"]})]}):X.length===0?E.jsxs("div",{className:"wandox-console-scene-section__empty",children:[E.jsx(tg,{}),E.jsx("span",{children:m?"没有匹配的场景":"当前分类暂无场景"})]}):E.jsx("div",{className:"wandox-console-scenes-wrap",children:E.jsx("div",{className:"wandox-console-scenes",children:X.map(se=>{const he=J5n(se),me=Q5n(se),ye=eIn(se.tags);return E.jsxs("div",{className:"wandox-console-scene-wrap",children:[E.jsx("button",{type:"button",className:`wandox-console-scene${me?" wandox-console-scene--featured":""}${J===se.playbook_id?" wandox-console-scene--selected":""}`,onClick:()=>ce(se),children:E.jsxs("div",{className:"wandox-console-scene__body",children:[E.jsxs("div",{className:"wandox-console-scene__head",children:[E.jsx("strong",{title:se.title,children:se.title}),he&&E.jsx("span",{className:`wandox-console-scene__badge wandox-console-scene__badge--${he.kind}`,children:he.text})]}),se.desc&&E.jsx("span",{className:"wandox-console-scene__desc",title:se.desc,children:se.desc}),(me||ye.length>0)&&E.jsxs("div",{className:"wandox-console-scene__tags",children:[me&&E.jsx("span",{className:"wandox-console-scene__tag wandox-console-scene__tag--featured",children:"精品"}),ye.map((ee,pe)=>E.jsx("span",{className:"wandox-console-scene__tag",style:tIn(ee),children:ee.name},`${ee.name}-${pe}`))]})]})}),se.video_url&&E.jsxs("button",{type:"button",className:"wandox-console-scene__video","aria-label":`播放${se.title}演示视频`,onClick:ee=>le(ee,se),children:["▶ ",f3t(se.video_duration)," 演示"]})]},se.key)})})})]})]}),E.jsx(QQ,{playbook:oe,onClose:()=>x(null)})]})}function Q5n(e){return e.is_featured===!0||e.badge==="featured"}function J5n(e){return e.badge==="recommend"?{text:"推荐",kind:"recommend"}:e.badge==="new"?{text:"New",kind:"new"}:null}function eIn(e){return Array.isArray(e)?e.filter(t=>typeof(t==null?void 0:t.name)=="string"&&t.name.trim()!==""):[]}function tIn(e){if(!(e.variant!=="soft"||!e.color))return{color:e.color,borderColor:m3t(e.color,.28),backgroundColor:m3t(e.color,.08)}}function m3t(e,t){const r=e.trim().replace("#","");if(!/^[0-9a-fA-F]{6}$/.test(r))return e;const n=Number.parseInt(r.slice(0,2),16),i=Number.parseInt(r.slice(2,4),16),a=Number.parseInt(r.slice(4,6),16);return`rgba(${n}, ${i}, ${a}, ${t})`}const rIn=[{id:"conversation",title:"智能体",desc:"与智能体自由对话或选择场景执行任务",icon:E.jsx(B0e,{}),accent:"#4f46e5"},{id:"automation",title:"自动化",desc:"管理与执行自动化流程、定时任务与驾驶舱",icon:E.jsx(Aq,{}),accent:"#4f46e5"}],iz={id:"notification",title:"通知配置",icon:E.jsx(kq,{}),accent:"#e0730c"};function nIn({features:e,onOpenFeature:t,activeId:r}){return E.jsxs("header",{className:"wandox-console-topnav","aria-label":"控制台顶部导航",children:[E.jsx("nav",{className:"wandox-console-topnav__pill","aria-label":"工作台",children:e.map(n=>{const i=r===n.id;return E.jsxs("button",{type:"button",className:`wandox-console-topnav__pill-btn${i?" wandox-console-topnav__pill-btn--active":""}`,title:n.title,"aria-label":n.title,"aria-current":i?"page":void 0,onClick:()=>t(n.id),children:[E.jsx("span",{className:"wandox-console-topnav__pill-icon",children:n.icon}),E.jsx("span",{className:"wandox-console-topnav__pill-text",children:n.title})]},n.id)})}),E.jsx("button",{type:"button",className:"wandox-console-topnav__notify",style:{"--notify-accent":iz.accent},title:iz.title,"aria-label":iz.title,onClick:()=>t(iz.id),children:E.jsx("span",{className:"wandox-console-topnav__notify-icon",children:iz.icon})})]})}function iIn({className:e="",state:t="idle"}){return E.jsx("img",{className:`wandox-console-companion${e?` ${e}`:""}`,"data-state":t,src:sY,alt:"","aria-hidden":"true"})}function v3t({fading:e}){return E.jsxs("div",{className:`wandox-console-init${e?" wandox-console-init--fading":""}`,"aria-hidden":!0,children:[E.jsx("div",{className:"wandox-console-init__halo wandox-console-init__halo--a"}),E.jsx("div",{className:"wandox-console-init__halo wandox-console-init__halo--b"}),E.jsxs("div",{className:"wandox-console-init__inner",children:[E.jsx(iIn,{className:"wandox-console-init__companion",state:"thinking"}),E.jsxs("div",{children:[E.jsx("div",{className:"wandox-console-init__title",children:"正在准备你的控制台"}),E.jsx("div",{className:"wandox-console-init__subtitle",children:"正在加载智能体与场景数据…"})]}),E.jsxs("div",{className:"wandox-console-init__dots","aria-hidden":!0,children:[E.jsx("span",{}),E.jsx("span",{}),E.jsx("span",{}),E.jsx("span",{}),E.jsx("span",{})]})]}),E.jsx("div",{className:"wandox-console-init__footnote",children:"由 Wandox AI 提供动力"})]})}function y3t({title:e,onBack:t,hideHeader:r=!1,className:n,children:i}){return E.jsxs("div",{className:`wandox-console-featureview${n?` ${n}`:""}`,children:[!r&&E.jsxs("div",{className:"wandox-console-featureview__bar",children:[E.jsxs("button",{type:"button",className:"wandox-console-featureview__back",onClick:t,children:[E.jsx(eC,{}),"返回控制台"]}),E.jsx("span",{className:"wandox-console-featureview__title",children:e})]}),E.jsx("div",{className:"wandox-console-featureview__body",children:i})]})}function aIn({agents:e,initialAgentId:t,initialPlaybookId:r,initialPlaybookParams:n,onReady:i}={}){const{agents:a,agentLoading:s,selectedAgentId:o,selectedAgent:l,selectAgent:u,...d}=u3t({presetAgents:e,initialAgentId:t}),[h,f]=S.useState(null),p=S.useRef(null),g=S.useRef(!1),[m,v]=S.useState("home"),[y,x]=S.useState(null),[b,w]=S.useState(!1),[C,_]=S.useState(null),[T,k]=S.useState(""),A=l==null?void 0:l.name,$=S.useCallback(Q=>{if(p.current){p.current.showInspectionResults(Q);return}f({robotName:Q})},[]);S.useEffect(()=>{i==null||i({showInspectionResults:$})},[$,i]),S.useEffect(()=>{!h||p.current||!o||m==="chat"||(_({agentId:o,agentName:A,playbookParams:{},message:""}),v("chat"))},[m,h,o,A]),S.useEffect(()=>{k("")},[o]);const{playbooks:I,userPlaybooks:P,useMapCategories:N,useMapCards:R,sceneLoading:L,useMapError:M,reload:O}=d,D=S.useMemo(()=>N.length>0?N:P5n(I),[N,I]);S.useEffect(()=>{if(D.length===0)return;D.some(J=>J.key===T)||k(D[0].key)},[D]);const F=S.useRef(!1);S.useEffect(()=>{if(F.current||!r||!o||L)return;const Q=a.find(J=>J.id===o&&ure(J,t));Q&&(F.current=!0,_({agentId:o,agentName:Q.name,playbookId:r,playbookParams:n||{},message:""}),v("chat"))},[L,a,t,r,n,o,A]),S.useEffect(()=>{if(g.current||!t||r||!o||L)return;const Q=a.find(J=>J.id===o&&ure(J,t));Q&&(g.current=!0,_({agentId:Q.id,agentName:Q.name,playbookParams:{},message:""}),v("chat"))},[a,L,t,r,o]);const[B,j]=S.useState(!0),[H,z]=S.useState(!1);S.useEffect(()=>{if(!B||!(!s&&a.length>0&&!!o&&!L))return;z(!0);const re=setTimeout(()=>j(!1),280);return()=>clearTimeout(re)},[s,a.length,o,L,B]);const W=S.useCallback(()=>{v("home"),x(null),w(!1)},[]),G=S.useCallback(Q=>{if(Q==="conversation"){W();return}w(!1),x(Q)},[W]),q=Q=>{u(Q),v("home")},Y=Q=>{if(Q===o)return;const J=a.find(re=>re.id===Q);u(Q),_({agentId:Q,agentName:J==null?void 0:J.name,playbookParams:{},message:""})},K=()=>{o&&(_({agentId:o,agentName:A,playbookParams:{},message:""}),v("chat"))},Z=Q=>{_({agentId:o,agentName:A,playbookId:Q.playbookId,playbookParams:Q.playbookParams,message:Q.message,attachments:Q.attachments}),v("chat")};return m==="chat"&&C?E.jsxs("div",{className:"wandox-console-chat-shell",children:[E.jsx(K5n,{agentId:C.agentId,agentName:C.agentName,playbookId:C.playbookId,playbookParams:C.playbookParams,initialMessage:C.message,initialAttachments:C.attachments,useMapCards:R,useMapCategories:N,playbooks:I,userPlaybooks:P,agents:a,onReady:Q=>{p.current=Q,h&&(Q.showInspectionResults(h.robotName),f(null))},onChangeAgent:Y,onBack:()=>{p.current=null,v("home")},onSelectScene:()=>{}},`${C.agentId}:${C.playbookId||"free-chat"}`),B&&E.jsx(v3t,{fading:H})]}):E.jsxs("div",{className:`wandox-console${b?" wandox-console--secondary":""}`,children:[B&&E.jsx(v3t,{fading:H}),!b&&E.jsx(nIn,{features:rIn,activeId:y??"conversation",onOpenFeature:G}),E.jsxs("main",{className:"wandox-console-main",children:[y==="automation"&&E.jsx(y3t,{title:"自动化",onBack:()=>x(null),hideHeader:!0,className:"wandox-console-featureview--automation",children:E.jsx(e3t,{onCockpitEnter:()=>w(!0),onCockpitExit:()=>w(!1),onInboxEnter:()=>w(!0)})}),y==="notification"&&E.jsx(y3t,{title:"通知配置",onBack:()=>x(null),hideHeader:!0,children:E.jsx(uyt,{})}),!y&&E.jsx(Z5n,{useMapCards:R,useMapCategories:D,playbooks:I,selectedCategoryKey:T,onCategorySelect:k,loading:L,useMapError:M,onRetry:O,onStartAnalysis:Z,agents:a,selectedAgentId:o,onAgentSelect:q,onOpenAgentChat:K})]})]})}const sIn=Object.freeze(Object.defineProperty({__proto__:null,default:aIn},Symbol.toStringTag,{value:"Module"}));class or extends Error{constructor(t,r){var n="KaTeX parse error: "+t,i,a,s=r&&r.loc;if(s&&s.start<=s.end){var o=s.lexer.input;i=s.start,a=s.end,i===o.length?n+=" at end of input: ":n+=" at position "+(i+1)+": ";var l=o.slice(i,a).replace(/[^]/g,"$&̲"),u;i>15?u="…"+o.slice(i-15,i):u=o.slice(0,i);var d;a+15<o.length?d=o.slice(a,a+15)+"…":d=o.slice(a),n+=u+l+d}super(n),this.name="ParseError",this.position=void 0,this.length=void 0,this.rawMessage=void 0,Object.setPrototypeOf(this,or.prototype),this.position=i,i!=null&&a!=null&&(this.length=a-i),this.rawMessage=t}}var oIn=/([A-Z])/g,lIn=e=>e.replace(oIn,"-$1").toLowerCase(),cIn={"&":"&amp;",">":"&gt;","<":"&lt;",'"':"&quot;","'":"&#x27;"},uIn=/[&><"']/g,bu=e=>String(e).replace(uIn,t=>cIn[t]),dre=e=>e.type==="ordgroup"||e.type==="color"?e.body.length===1?dre(e.body[0]):e:e.type==="font"?dre(e.body):e,dIn=new Set(["mathord","textord","atom"]),m1=e=>dIn.has(dre(e).type),hIn=e=>{var t=/^[\x00-\x20]*([^\\/#?]*?)(:|&#0*58|&#x0*3a|&colon)/i.exec(e);return t?t[2]!==":"||!/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(t[1])?null:t[1].toLowerCase():"_relative"},hre={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format <type>"},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color <color>",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:e=>"#"+e},macros:{type:"object",cli:"-m, --macro <def>",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:(e,t)=>(t.push(e),t)},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:e=>Math.max(0,e),cli:"--min-rule-thickness <size>",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:e=>Math.max(0,e),cli:"-s, --max-size <n>",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:e=>Math.max(0,e),cli:"-e, --max-expand <n>",cliProcessor:e=>e==="Infinity"?1/0:parseInt(e)},globalGroup:{type:"boolean",cli:!1}};function fIn(e){if(typeof e!="string")return e.enum[0];switch(e){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{};default:throw new Error("Unexpected schema type; settings must declare an explicit default.")}}function pIn(e){if(e.default!==void 0)return e.default;var t=Array.isArray(e.type)?e.type[0]:e.type;return fIn(t)}function gIn(e,t,r,n){var i=r[t];e[t]=i!==void 0?n.processor?n.processor(i):i:pIn(n)}class Z3e{constructor(t){t===void 0&&(t={}),this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0,this.errorColor=void 0,this.macros=void 0,this.minRuleThickness=void 0,this.colorIsTextColor=void 0,this.strict=void 0,this.trust=void 0,this.maxSize=void 0,this.maxExpand=void 0,this.globalGroup=void 0,t=t||{};for(var r of Object.keys(hre)){var n=hre[r];n&&gIn(this,r,t,n)}}reportNonstrict(t,r,n){var i=this.strict;if(typeof i=="function"&&(i=i(t,r,n)),!(!i||i==="ignore")){if(i===!0||i==="error")throw new or("LaTeX-incompatible input and strict mode is set to 'error': "+(r+" ["+t+"]"),n);typeof console<"u"}}useStrictBehavior(t,r,n){var i=this.strict;if(typeof i=="function")try{i=i(t,r,n)}catch{i="error"}return!i||i==="ignore"?!1:i===!0||i==="error"?!0:(typeof console<"u",!1)}isTrusted(t){if("url"in t&&t.url&&!t.protocol){var r=hIn(t.url);if(r==null)return!1;t.protocol=r}var n=typeof this.trust=="function"?this.trust(t):this.trust;return!!n}}class Fw{constructor(t,r,n){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=t,this.size=r,this.cramped=n}sup(){return P0[mIn[this.id]]}sub(){return P0[vIn[this.id]]}fracNum(){return P0[yIn[this.id]]}fracDen(){return P0[bIn[this.id]]}cramp(){return P0[xIn[this.id]]}text(){return P0[wIn[this.id]]}isTight(){return this.size>=2}}var Q3e=0,fre=1,b$=2,v1=3,az=4,wp=5,x$=6,ad=7,P0=[new Fw(Q3e,0,!1),new Fw(fre,0,!0),new Fw(b$,1,!1),new Fw(v1,1,!0),new Fw(az,2,!1),new Fw(wp,2,!0),new Fw(x$,3,!1),new Fw(ad,3,!0)],mIn=[az,wp,az,wp,x$,ad,x$,ad],vIn=[wp,wp,wp,wp,ad,ad,ad,ad],yIn=[b$,v1,az,wp,x$,ad,x$,ad],bIn=[v1,v1,wp,wp,ad,ad,ad,ad],xIn=[fre,fre,v1,v1,wp,wp,ad,ad],wIn=[Q3e,fre,b$,v1,b$,v1,b$,v1],Qn={DISPLAY:P0[Q3e],TEXT:P0[b$],SCRIPT:P0[az],SCRIPTSCRIPT:P0[x$]},J3e=[{name:"latin",blocks:[[256,591],[768,879]]},{name:"cyrillic",blocks:[[1024,1279]]},{name:"armenian",blocks:[[1328,1423]]},{name:"brahmic",blocks:[[2304,4255]]},{name:"georgian",blocks:[[4256,4351]]},{name:"cjk",blocks:[[12288,12543],[19968,40879],[65280,65376]]},{name:"hangul",blocks:[[44032,55215]]}];function SIn(e){for(var t=0;t<J3e.length;t++)for(var r=J3e[t],n=0;n<r.blocks.length;n++){var i=r.blocks[n];if(e>=i[0]&&e<=i[1])return r.name}return null}var pre=[];J3e.forEach(e=>e.blocks.forEach(t=>pre.push(...t)));function b3t(e){for(var t=0;t<pre.length;t+=2)if(e>=pre[t]&&e<=pre[t+1])return!0;return!1}var kl=e=>e+" "+e,w$=80,CIn=function(t,r){return"M95,"+(622+t+r)+`
1101
+ `)}`;kvt(new Blob([fpi],{type:"text/csv;charset=utf-8;"}),`${Ht}_${yr}.csv`);return}const Mr=document.querySelector(`[data-message-id="${ct.message_id||ct.id}"] .wandox-message-content`);if(!Mr){Et.warning("无法定位消息内容");return}const jn=window.open("","_blank");if(!jn){Et.warning("请允许弹出窗口");return}jn.document.write(`<!DOCTYPE html><html><head><meta charset="utf-8"><title>${Ht}_${yr}</title><style>body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;padding:20px;color:#333}table{border-collapse:collapse;width:100%}th,td{border:1px solid #d9d9d9;padding:6px 8px;font-size:13px;text-align:left}th{background:#fafafa}img{max-width:100%}pre{white-space:pre-wrap;word-break:break-all;font-size:12px;background:#f5f5f5;padding:12px;border-radius:4px}button,.ant-btn,.ant-tooltip-open{display:none!important}</style></head><body>${Mr.innerHTML}</body></html>`),jn.document.close(),jn.onload=()=>{jn.print(),jn.close()}},[]),EXt=S.useCallback(ct=>{var jn,Kn,fs;const Ht=Lt.find(Ma=>Ma.message_id===ct||Ma.id===ct),yr=Q_e(Ht);if(!yr){Et.warning("缺少场景 ID,无法配置定时触发");return}const Mr=((Kn=(jn=Ht==null?void 0:Ht.actions)==null?void 0:jn.find(Ma=>Ma.playbook_id===yr))==null?void 0:Kn.display_name)||((fs=Ht==null?void 0:Ht.meta_content)==null?void 0:fs.playbook_name)||yr;bt({visible:!0,messageId:ct,agentId:e,playbookId:yr,playbookName:Mr})},[e,Lt]),dpi=S.useCallback(()=>{bt(XQ)},[]),Uoe=S.useCallback(ct=>{const Ht=ct.message_id;return Ht&&Object.prototype.hasOwnProperty.call(Ye,Ht)?Ye[Ht]:uvt(ct)},[Ye]),kXt=S.useCallback(async(ct,Ht,yr)=>{var fs;const Mr=ct.message_id;if(!Mr||Me.has(Mr))return!1;const jn=Uoe(ct),Kn=dvt(jn,Ht);st(Ma=>({...Ma,[Mr]:Kn})),rt(Ma=>new Set(Ma).add(Mr));try{const Ma=await UQe({domain:v},{message_id:Mr,rating:Kn,tags:(fs=yr==null?void 0:yr.tags)!=null&&fs.length?yr.tags:void 0,text:(yr==null?void 0:yr.text)||void 0});if((Ma==null?void 0:Ma.success)===!1)throw new Error(Ma.message||"反馈提交失败");return!0}catch(Ma){return st(yb=>({...yb,[Mr]:jn})),Et.error(Ma instanceof Error?Ma.message:"反馈提交失败,请稍后重试"),!1}finally{rt(Ma=>{const yb=new Set(Ma);return yb.delete(Mr),yb})}},[Me,Uoe,v]),AXt=S.useCallback(async ct=>{je(!1);try{await lt(ct)}catch(Ht){const yr=Ht instanceof Error?Ht.message:"重新生成失败";Et.error(yr)}},[lt]),IXt=S.useCallback(()=>{je(ct=>!ct)},[]),$Xt=S.useCallback((ct,Ht)=>{if(ct.role!=="assistant"||ct.execution_status==="executing")return null;const Mr=Ht&&ct.id===ot&&Fe.length>0,jn=Xe?"隐藏推荐":Mr?`显示推荐(${Fe.length})`:"推荐";return E.jsxs(E.Fragment,{children:[E.jsx(Ivt,{msg:ct,domain:v,onExportMessage:Goe,exportIcon:"copy",showSolidify:!1,onOpenScheduleDialog:EXt,onRetrigger:AXt,feedbackRating:Uoe(ct),feedbackPending:!!ct.message_id&&Me.has(ct.message_id),onFeedback:kXt,extraActions:Mr?E.jsx(ri,{title:jn,children:E.jsxs("button",{type:"button",className:`wandox-console-chat__toolbar-toggle${Xe?" is-active":""}`,"aria-label":jn,"aria-expanded":Xe,onClick:IXt,children:[E.jsx(n4r,{}),E.jsx("span",{className:"wandox-console-chat__toolbar-toggle-count",children:Fe.length})]})}):null}),Mr&&Xe&&E.jsx("ul",{className:"wandox-console-chat__recommendations","aria-label":"推荐场景",children:Fe.map((Kn,fs)=>E.jsx("li",{className:"wandox-console-chat__recommendations-item",children:E.jsxs("button",{type:"button",className:"wandox-console-chat__recommendations-pill",disabled:Ze,onClick:()=>{r4(Kn)},title:Kn.description||Kn.name,children:[E.jsx("span",{className:"wandox-console-chat__recommendations-pill-label",children:Kn.name}),E.jsx("span",{className:"wandox-console-chat__recommendations-pill-arrow",children:E.jsx(Eq,{})})]})},`${Kn.playbook_id||Kn.name}-${fs}`))})]})},[Ze,Me,Uoe,r4,Goe,kXt,EXt,AXt,Fe,ot,Xe,v,IXt]),w8e=S.useCallback((ct,Ht)=>{z(ct),j(Ht),F(!0)},[]),hpi=S.useMemo(()=>E.jsxs("div",{className:"wandox-console-chat__body",children:[E.jsx(Z_e,{messages:Lt,executing:Ze,ssoToken:m,ssoDomain:v,ssoCompany:y,onExecutePlaybook:ra,onFillPlaybookParams:ct=>Fl({category:null,domain:"",id:0,name:ct.playbookName,playbook_id:ct.playbookId,scope:"",status:"available",sub_category:null,tags:null,type:"",version:"",input_fields:ct.inputFields,playbook_type:ct.playbookType},ct.initialParams??{}),onRespondToProposal:$t,containerRef:x,messagesTotal:We,loadMoreMessages:Yn,loading:wr,initialLoadingContent:E.jsx(Avt,{}),conversationKey:e,messageToolbar:$Xt,onOpenActionDrawer:w8e}),E.jsx(eTe,{messages:Lt,scrollContainerRef:x,mode:"deepseek"})]}),[e,ra,Ze,Fl,Yn,Lt,wr,We,w8e,$Xt,$t,y,v,m]);return E.jsxs("div",{className:"wandox-root wandox-console-chat",children:[E.jsxs("header",{className:"wandox-console-chat__top",children:[E.jsxs("button",{type:"button",className:"wandox-console-chat__back",onClick:f,children:[E.jsx(eC,{}),E.jsx("span",{children:"返回"})]}),E.jsx("div",{className:"wandox-console-chat__agent-selector",children:E.jsx(Kv,{menu:{items:d.map(ct=>({key:ct.id,disabled:ct.id===e,label:E.jsxs("span",{className:"wandox-console-agent-menu-item",children:[E.jsx("span",{className:"wandox-console-agent-menu-item__icon",children:ct.icon}),E.jsx("span",{className:"wandox-console-agent-menu-item__name",children:ct.name}),ct.id===e&&E.jsx(Tm,{className:"wandox-console-agent-menu-item__check"})]})})),onClick:({key:ct})=>h==null?void 0:h(ct)},trigger:["click"],placement:"bottomLeft",children:E.jsxs("button",{type:"button",className:"wandox-console-chat__title","aria-label":"切换智能体",title:"切换智能体",children:[(Cr==null?void 0:Cr.icon)&&E.jsx("span",{className:"wandox-console-chat__title-icon",children:Cr.icon}),E.jsx("span",{className:"wandox-console-chat__title-name",children:t||(Cr==null?void 0:Cr.name)||"智能体"}),E.jsx(cA,{className:"wandox-console-chat__title-arrow"})]})})}),E.jsxs("button",{type:"button",className:"wandox-console-chat__all-scenes",disabled:Ze,onClick:go,children:[E.jsx(dEr,{}),E.jsx("span",{children:"全部场景"})]}),E.jsx(fTe,{benefit:Cr==null?void 0:Cr.packageBenefit})]}),E.jsxs("nav",{className:"wandox-console-chat__topbar",children:[E.jsx("button",{type:"button",className:`wandox-console-chat__topbar-tab ${X==="chat"?"active":""}`,onClick:()=>Q("chat"),children:"智能体会话"}),E.jsx("button",{type:"button",className:`wandox-console-chat__topbar-tab ${X==="robot"?"active":""}`,onClick:()=>{Q("robot"),oe(null)},children:E.jsx("span",{children:"巡检机器人"})})]}),X==="chat"?hpi:E.jsxs("div",{className:"wandox-console-chat__robot",children:[E.jsx("div",{className:"wandox-console-chat__robot-chips",children:J.length===0?E.jsx("div",{className:"wandox-console-chat__robot-empty",children:"该智能体暂无巡检机器人"}):E.jsxs(E.Fragment,{children:[J.length>0&&E.jsx("button",{type:"button",className:`wandox-console-chat__robot-chip ${te===null?"active":""}`,onClick:()=>oe(null),children:"全部"}),J.map(ct=>{const Ht=!!he[ct.agent_id];return E.jsxs("div",{className:`wandox-console-chat__robot-chip-compound ${te===ct.name?"active":""}`,children:[E.jsx("button",{type:"button",className:"wandox-console-chat__robot-chip-name",onClick:()=>oe(ct.name),children:ct.name}),E.jsx("button",{type:"button",className:`wandox-console-chat__robot-chip-bind ${Ht?"bound":""}`,onClick:()=>Fc(ct),title:Ht?"已绑定通知渠道,点击修改":"绑定通知渠道",children:Ht?E.jsxs(E.Fragment,{children:[E.jsx("span",{className:"wandox-console-chat__robot-chip-bind-dot","aria-hidden":"true"}),E.jsx("span",{children:"已通知"})]}):E.jsxs(E.Fragment,{children:[E.jsx(kq,{}),E.jsx("span",{children:"通知"})]})})]},ct.agent_id)})]})}),E.jsxs("div",{className:"wandox-console-chat__robot-tabs",children:[E.jsx("button",{type:"button",className:`wandox-console-chat__robot-tab ${le==="results"?"active":""}`,onClick:()=>ce("results"),children:"巡检结果"}),E.jsxs("button",{type:"button",className:`wandox-console-chat__robot-tab ${le==="history"?"active":""}`,onClick:()=>ce("history"),children:["执行记录",le==="history"&&te&&we.length>0&&E.jsx("span",{className:"wandox-console-chat__robot-tab-badge",children:we.length})]})]}),E.jsx("div",{className:"wandox-console-chat__robot-content",children:le==="results"?$e?E.jsxs("div",{className:"wandox-console-chat__robot-loading",children:[E.jsx(Oi,{size:"small"}),E.jsx("span",{children:"加载中..."})]}):xf.length===0?E.jsxs("div",{className:"wandox-console-chat__robot-empty",children:[E.jsx("div",{className:"wandox-console-chat__robot-empty-icon",children:E.jsx(U0e,{})}),E.jsx("div",{className:"wandox-console-chat__robot-empty-title",children:te?`${te} 暂无巡检结果`:"暂无巡检结果"}),E.jsx("div",{className:"wandox-console-chat__robot-empty-desc",children:"巡检结果会在机器人执行后展示在这里"})]}):E.jsx("ul",{className:"wandox-console-chat__robot-timeline",children:xf.map((ct,Ht)=>{const yr={high:"#ff4d4f",medium:"#faad14",low:"#52c41a"},Mr=Ht===xf.length-1;return E.jsxs("li",{className:"wandox-console-chat__robot-timeline-item",children:[E.jsxs("div",{className:"wandox-console-chat__robot-timeline-axis",children:[E.jsx("span",{className:"wandox-console-chat__robot-timeline-time",children:ul(ct.timestamp)}),E.jsx("span",{className:"wandox-console-chat__robot-timeline-dot",style:{background:yr[ct.priority]}}),!Mr&&E.jsx("span",{className:"wandox-console-chat__robot-timeline-line"})]}),E.jsxs("div",{className:"wandox-console-chat__robot-timeline-card",children:[E.jsx("div",{className:"wandox-console-chat__robot-timeline-title",children:ct.title}),ct.summary&&E.jsx("div",{className:"wandox-console-chat__robot-timeline-summary",children:ct.summary}),ct.ui_payload&&E.jsx("div",{className:"wandox-console-chat__robot-timeline-content wandox-markdown-content",children:E.jsx(To,{payload:ct.ui_payload})}),ct.actions&&ct.actions.length>0&&E.jsx("div",{className:"wandox-console-chat__robot-timeline-actions",children:E.jsxs("button",{type:"button",className:"wandox-console-chat__robot-timeline-action-btn",onClick:()=>w8e(ct.title,ct.actions??[]),children:[E.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",role:"img",children:[E.jsx("title",{children:"快速执行"}),E.jsx("path",{d:"M13 2L3 14H12L11 22L21 10H12L13 2Z",fill:"currentColor"})]}),E.jsxs("span",{children:["快速执行 (",ct.actions.length,")"]})]})})]})]},ct.id||`result_${Ht}`)})}):te?ie?E.jsxs("div",{className:"wandox-console-chat__robot-loading",children:[E.jsx(Oi,{size:"small"}),E.jsx("span",{children:"加载中..."})]}):we.length===0?E.jsx("div",{className:"wandox-console-chat__robot-empty",children:E.jsx("div",{className:"wandox-console-chat__robot-empty-title",children:"暂无执行记录"})}):E.jsx("ul",{className:"wandox-console-chat__robot-history",children:we.map(ct=>E.jsxs("li",{className:`wandox-console-chat__robot-history-item wandox-console-chat__robot-history-item--${ct.status}`,children:[E.jsxs("div",{className:"wandox-console-chat__robot-history-info",children:[E.jsx("span",{className:"wandox-console-chat__robot-history-name",children:ct.action_name}),E.jsx("span",{className:"wandox-console-chat__robot-history-time",children:ct.created_at?new Date(ct.created_at).toLocaleString("zh-CN",{month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"}):""})]}),E.jsx("span",{className:`wandox-console-chat__robot-history-status wandox-console-chat__robot-history-status--${ct.status}`,children:{pending:"等待中",running:"执行中",success:"成功",failed:"失败"}[ct.status]||ct.status})]},ct.id))}):E.jsxs("div",{className:"wandox-console-chat__robot-empty",children:[E.jsx("div",{className:"wandox-console-chat__robot-empty-icon",children:E.jsx(U0e,{})}),E.jsx("div",{className:"wandox-console-chat__robot-empty-title",children:"请先选择机器人"}),E.jsx("div",{className:"wandox-console-chat__robot-empty-desc",children:"在上方选择机器人以查看其执行记录"})]})})]}),X==="chat"&&it.length>0&&!(R&&!w)&&E.jsx("div",{className:"wandox-console-chat__recent",children:E.jsx("div",{className:"wandox-console-chat__recent-bar",children:it.map((ct,Ht)=>E.jsx("button",{type:"button",className:"wandox-console-chat__recent-chip",disabled:Ze||!!Pe,title:ct.description||ct.name,onClick:()=>{X2(ct)},children:ct.name},`${ct.playbook_id||ct.name}-${Ht}`))})}),X==="chat"&&E.jsx("div",{className:"wandox-console-chat__input",children:R&&!w?E.jsxs("div",{ref:O,className:"wandox-console-input-playbook wandox-console-prompt",children:[E.jsxs("div",{className:"wandox-console-prompt__head",children:[E.jsxs("div",{className:"wandox-console-scenechoice",children:[E.jsx("span",{children:"已选择场景"}),E.jsx("strong",{children:R.title})]}),E.jsx("button",{type:"button",className:"wandox-console-changescene",onClick:()=>{L(null),G([]),Y({})},children:"重新选择"})]}),E.jsx("div",{ref:M,tabIndex:-1,className:"wandox-console-taskarea wandox-console-taskarea--static",children:R.desc||R.title}),W.length>0&&E.jsxs("div",{className:"wandox-console-paramarea",children:[E.jsxs("div",{className:"wandox-console-paramhead",children:[E.jsx(bZe,{}),E.jsx("strong",{children:"确认分析范围"}),E.jsxs("span",{className:"wandox-console-paramhead__status",children:[E.jsx(VA,{})," ",Z.length>0?`待填 ${Z.length} 项必填参数`:"参数已就绪"]})]}),E.jsx("div",{className:"wandox-console-params",children:Fy(W,q).map(ct=>E.jsx(g3t,{field:ct,value:q[ct.name],uploading:!1,fileNameMap:{},getOptionState:K.getFieldState,onChange:(Ht,yr)=>Y(Mr=>({...Mr,[Ht]:yr}))},ct.name))})]}),E.jsxs("div",{className:"wandox-console-prompt__foot",children:[E.jsx("span",{className:"wandox-console-input-playbook__tip",children:"· 已继承当前上下文"}),E.jsxs("button",{type:"button",className:"wandox-console-start",disabled:!R||Ze||Z.length>0,onClick:ui,children:["开始执行",E.jsx(Eq,{})]})]})]}):E.jsx(eJ,{onSend:fn,executing:Ze,stopping:Nt,onStop:Mt,placeholder:" / 快速搜索场景",ssoToken:m,ssoDomain:v,ssoCompany:y,leadingActions:zl,uploadButtonAsLeading:!0,uploadButtonLabel:"添加文件",mentionTriggerChar:"/",mentionListRequest:Ue,onMentionListRequestHandled:hs,autoFocusInput:!R,playbooks:yt,onRequestPlaybookParams:Fl})}),E.jsx(G5n,{open:w,source:$,categories:ht,categoryKey:P,search:k,cards:Bt,executing:Ze,loadingPlaybookId:_,onClose:Bl,onSourceChange:qr,onCategoryChange:N,onSearchChange:A,onSelectScene:wf}),E.jsx(vvt,{open:pt.visible,agentId:pt.agentId,playbookId:pt.playbookId,playbookName:pt.playbookName,onClose:dpi}),m&&v&&y&&E.jsx(Y_e,{open:D,title:H,actions:B,ssoToken:m,ssoDomain:v,ssoCompany:y,onClose:()=>F(!1)}),E.jsx(ki,{title:"配置通知渠道",open:ye,onCancel:()=>{ee(!1),ae(null),ne(void 0)},width:520,centered:!0,footer:[he[(pe==null?void 0:pe.agent_id)||""]?E.jsx(ir,{danger:!0,loading:ke,style:{marginRight:"auto"},onClick:vb,children:"解除绑定"},"unbind"):null,E.jsx(ir,{disabled:ke,onClick:()=>{ee(!1),ae(null),ne(void 0)},children:"取消"},"cancel"),E.jsx(ir,{type:"primary",loading:ke,disabled:!fe,onClick:Sv,children:"保存"},"ok")],children:E.jsxs("div",{style:{padding:"8px 0"},children:[E.jsxs("div",{style:{marginBottom:16,padding:"12px 16px",background:"#f5f7fa",borderRadius:8,display:"flex",alignItems:"center",justifyContent:"space-between"},children:[E.jsx("div",{style:{fontSize:13,color:"#666"},children:"巡检机器人"}),E.jsx("div",{style:{fontSize:15,color:"#1a1a1a",fontWeight:500},children:pe==null?void 0:pe.name})]}),E.jsx("div",{style:{marginBottom:8,fontSize:14,color:"#333",fontWeight:500},children:"选择通知渠道"}),E.jsx(xn,{style:{width:"100%"},placeholder:"请选择通知渠道",value:fe,onChange:ne,disabled:ke,options:de.map(ct=>({label:`${ct.name}(${ct.platform==="dingtalk"?"钉钉":ct.platform==="feishu"?"飞书":"企业微信"})`,value:ct.webhook_id})),popupRender:ct=>E.jsxs(E.Fragment,{children:[ct,E.jsx(Zpe,{style:{margin:"8px 0"}}),E.jsx(Go,{style:{padding:"0 8px 4px"},children:E.jsx(ir,{type:"text",icon:E.jsx("span",{children:"+"}),onClick:()=>Re(!0),children:"添加新的通知渠道"})})]})}),de.length===0&&E.jsx("div",{style:{marginTop:8,padding:"8px 12px",background:"#fff7e6",border:"1px solid #ffd591",borderRadius:4,fontSize:13,color:"#d46b08"},children:"暂无可用的通知渠道,请先在「通知配置」中创建"})]})}),E.jsx(pTe,{open:Oe,onClose:()=>Re(!1),onSuccess:ct=>{se(Ht=>[...Ht,ct]),ne(ct.webhook_id)}})]})}const{TextArea:X5n}=zr,nz=5;function Z5n({useMapCards:e,useMapCategories:t,playbooks:r=[],selectedCategoryKey:n,onCategorySelect:i,loading:a,useMapError:s,onRetry:o,onStartAnalysis:l,agents:u,selectedAgentId:d,onAgentSelect:h,onOpenAgentChat:f}){const[p,g]=S.useState(""),[m,v]=S.useState(""),[y,x]=S.useState(null),b=S.useRef(null),[w,C]=S.useState([]),[_,T]=S.useState(!1),[k,A]=S.useState(""),$=S.useRef(0),[I,P]=S.useState({}),[N,R]=S.useState({}),[L,M]=S.useState({}),[O,D]=S.useState([]),[F,B]=S.useState(!1),j=S.useRef(null),[H,z]=S.useState(0),W=Math.max(1,Math.ceil(t.length/nz)),G=Math.min(H,W-1),q=t.length>nz,Y=S.useMemo(()=>t.slice(G*nz,G*nz+nz),[t,G]);S.useEffect(()=>{z(0)},[d]);const K=S.useMemo(()=>e.length>0?e:M5n(r),[e,r]),Z=S.useMemo(()=>n?K.filter(se=>se.categoryKey===n):K,[K,n]),X=S.useMemo(()=>{const se=m.trim().toLowerCase();return se?Z.filter(he=>he.title.toLowerCase().includes(se)||he.desc.toLowerCase().includes(se)):Z},[Z,m]),Q=a||s&&K.length===0||X.length>0,[J,re]=S.useState("");S.useEffect(()=>{$.current+=1,re(""),g(""),C([]),P({}),T(!1),A("")},[n]),S.useEffect(()=>{J&&!K.some(se=>se.playbook_id===J)&&($.current+=1,re(""),g(""),C([]),P({}),T(!1),A(""))},[J,K]);const te=S.useMemo(()=>K.find(se=>se.playbook_id===J)??null,[K,J]),oe=S.useMemo(()=>y?h3t(y):null,[y]),le=S.useCallback((se,he)=>{se.stopPropagation(),x(he)},[]);S.useEffect(()=>{if(a||te)return;const se=window.setTimeout(()=>{var me,ye;const he=(ye=(me=b.current)==null?void 0:me.resizableTextArea)==null?void 0:ye.textArea;he==null||he.focus()},0);return()=>window.clearTimeout(se)},[a,te]);const ce=S.useCallback(async se=>{const he=String(se.playbook_id||"").trim();if(!he){Et.error("场景缺少 playbook_id");return}const me=++$.current;re(he),C([]),P({}),R({}),M({}),T(!0),A("");try{const{data:ye}=await ry({playbook_id:he});if(me!==$.current)return;if(!ye||typeof ye!="object"||Array.isArray(ye))throw new Error("场景详情为空");const ee=rB(Gvt(ye));C(ee),P(hw(ee))}catch(ye){if(me!==$.current)return;const ee=ye instanceof Error?ye.message:"场景参数加载失败";A(ee),Et.error("场景参数加载失败,请稍后重试")}finally{me===$.current&&T(!1)}},[]),ie=()=>{$.current+=1,re(""),g(""),C([]),P({}),T(!1),A("")},ue=Q5(w,I,P),we=S.useMemo(()=>Fy(w,I),[w,I]),ve=S.useCallback((se,he)=>{P(me=>({...me,[se]:he}))},[]),$e=S.useCallback((se,he)=>async({file:me,onSuccess:ye,onError:ee})=>{var pe,ae;R(fe=>({...fe,[se]:!0}));try{const fe=me,ne=await ny(fe),ke=(pe=ne==null?void 0:ne.data)==null?void 0:pe.url,ge=((ae=ne==null?void 0:ne.data)==null?void 0:ae.name)||fe.name;if(!ke)throw new Error("上传结果缺少文件地址");M(Oe=>({...Oe,[ke]:ge})),P(Oe=>{if(he<=1)return{...Oe,[se]:ke};const Re=Array.isArray(Oe[se])?Oe[se]:Oe[se]?[Oe[se]]:[];return{...Oe,[se]:[...Re,ke]}}),ye==null||ye(ne),Et.success("上传成功")}catch(fe){const ne=fe instanceof Error?fe:new Error("上传失败");ee==null||ee(ne),Et.error(ne.message)}finally{R(fe=>({...fe,[se]:!1}))}},[]),Te=S.useCallback(async se=>{const he=Array.from(se.target.files??[]);if(se.target.value="",he.length!==0){B(!0);try{const me=await Promise.all(he.map(async ye=>{var fe,ne;const ee=await ny(ye),pe=(fe=ee==null?void 0:ee.data)==null?void 0:fe.url,ae=((ne=ee==null?void 0:ee.data)==null?void 0:ne.name)||ye.name;if(!pe)throw new Error("上传结果缺少文件地址");return{type:ye.type.startsWith("image/")?"image":"file",url:pe,name:ae,mime_type:ye.type}}));D(ye=>[...ye,...me]),Et.success(`已添加 ${me.length} 个附件`)}catch(me){Et.error(me instanceof Error?me.message:"上传失败")}finally{B(!1)}}},[]),Le=S.useCallback(se=>{D(he=>he.filter(me=>me.url!==se))},[]),Ne=S.useMemo(()=>we.filter(se=>se.required&&up(I[se.name])),[we,I]),de=S.useMemo(()=>u.find(se=>se.id===d)??u.find(se=>se.current)??u[0],[u,d]);return E.jsxs("div",{className:"wandox-console-view",children:[E.jsxs("div",{className:"wandox-console-homecenter",children:[E.jsxs("div",{className:"wandox-console-homecenter-hero",children:[de&&E.jsxs("div",{className:"wandox-console-home-header",children:[E.jsxs("div",{className:"wandox-console-home-header__agent",children:[E.jsx("span",{className:"wandox-console-home-header__avatar",children:de.icon}),E.jsxs("div",{className:"wandox-console-home-header__identity",children:[E.jsxs("div",{className:"wandox-console-home-header__selector-row",children:[E.jsx(Kv,{menu:{items:u.map(se=>({key:se.id,disabled:se.id===de.id,label:E.jsxs("span",{className:"wandox-console-agent-menu-item",children:[E.jsx("span",{className:"wandox-console-agent-menu-item__icon",children:se.icon}),E.jsx("span",{className:"wandox-console-agent-menu-item__name",children:se.name}),se.id===de.id&&E.jsx(VA,{className:"wandox-console-agent-menu-item__check"})]})})),onClick:({key:se})=>h==null?void 0:h(se)},trigger:["click"],placement:"bottomLeft",children:E.jsxs("button",{type:"button",className:"wandox-console-home-header__selector","aria-label":"切换智能体",children:[E.jsx("span",{className:"wandox-console-home-header__name",children:de.name}),E.jsx(cA,{className:"wandox-console-home-header__arrow"})]})}),E.jsx(fTe,{benefit:de.packageBenefit})]}),de.desc&&E.jsx("p",{className:"wandox-console-home-header__description",title:de.desc,children:de.desc})]})]}),E.jsxs("button",{type:"button",className:"wandox-console-home-header__history",onClick:()=>f==null?void 0:f(),children:[E.jsx("span",{children:"会话记录"}),E.jsx(Wv,{className:"wandox-console-home-header__history-arrow"})]})]}),E.jsxs("div",{className:"wandox-console-prompt",children:[te&&E.jsxs("div",{className:"wandox-console-prompt__head",children:[E.jsxs("div",{className:"wandox-console-scenechoice",children:[E.jsx("span",{children:"已选择场景"}),E.jsx("strong",{children:te.title})]}),E.jsx("button",{type:"button",className:"wandox-console-changescene",onClick:ie,children:"重新选择"})]}),te?E.jsx("div",{className:"wandox-console-taskarea wandox-console-taskarea--static",children:te.desc||te.title}):E.jsx("div",{className:"wandox-console-taskarea",children:E.jsx(X5n,{ref:b,value:p,onChange:se=>g(se.target.value),autoSize:{minRows:2},variant:"borderless",placeholder:"直接描述你的问题,或选择一个场景开始"})}),te&&_&&E.jsxs("div",{className:"wandox-console-paramarea wandox-console-paramarea--state",children:[E.jsx(jvt,{}),E.jsx("span",{children:"正在读取场景参数..."})]}),te&&!_&&k&&E.jsxs("div",{className:"wandox-console-paramarea wandox-console-paramarea--state",children:[E.jsx("span",{children:"场景参数加载失败"}),E.jsxs("button",{type:"button",className:"wandox-console-paramarea__retry",onClick:()=>void ce(te),children:[E.jsx(Xv,{}),"重试"]})]}),te&&!_&&!k&&we.length>0&&E.jsxs("div",{className:"wandox-console-paramarea",children:[E.jsxs("div",{className:"wandox-console-paramhead",children:[E.jsx(bZe,{}),E.jsx("strong",{children:"确认分析范围"}),E.jsxs("span",{className:"wandox-console-paramhead__status",children:[E.jsx(VA,{})," ",Ne.length>0?`待填 ${Ne.length} 项必填参数`:"参数已就绪"]})]}),E.jsx("div",{className:"wandox-console-params",children:we.map(se=>E.jsx(g3t,{field:se,value:I[se.name],uploading:!!N[se.name],fileNameMap:L,getOptionState:ue.getFieldState,onChange:ve,onUpload:$e},se.name))})]}),E.jsxs("div",{className:`wandox-console-prompt__foot${te?" wandox-console-prompt__foot--scene":""}`,children:[!te&&E.jsx("button",{type:"button",className:"wandox-console-attach",onClick:()=>{var se;return(se=j.current)==null?void 0:se.click()},disabled:F,title:F?"上传中…":"附件",children:E.jsx(Ul,{})}),E.jsx("input",{ref:j,type:"file",multiple:!0,accept:"image/*,.pdf,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.txt,.csv,.zip",hidden:!0,onChange:Te}),te?E.jsxs("button",{type:"button",className:"wandox-console-start",disabled:_||!!k||Ne.length>0,onClick:()=>{l==null||l({playbookId:te.playbook_id,playbookParams:I,message:te.title,attachments:O})},children:["开始执行",E.jsx(Eq,{})]}):E.jsx("div",{className:"wandox-console-prompt__foot-right",children:E.jsx("button",{type:"button",className:"wandox-console-prompt__send",disabled:!p.trim(),onClick:()=>{l==null||l({playbookParams:{},message:p.trim(),attachments:O})},"aria-label":"发送",children:E.jsx(fZe,{})})})]})]}),O.length>0&&E.jsx("div",{className:"wandox-console-attachments",children:O.map(se=>E.jsxs("span",{className:"wandox-console-attach-item",children:[se.type==="image"?E.jsx("img",{src:se.url,alt:se.name,className:"wandox-console-attach-item__thumb"}):E.jsx(s0e,{className:"wandox-console-attach-item__icon"}),E.jsx("span",{className:"wandox-console-attach-item__name",title:se.name,children:se.name}),E.jsx("button",{type:"button",className:"wandox-console-attach-item__remove","aria-label":"移除附件",onClick:()=>Le(se.url),children:E.jsx(gs,{})})]},se.url))}),E.jsxs("div",{className:"wandox-console-scenehead",children:[q&&E.jsx("button",{type:"button",className:"wandox-console-chipnav","aria-label":"上一页分类",disabled:G===0,onClick:()=>z(se=>Math.max(0,se-1)),children:E.jsx(NEr,{})}),E.jsx("div",{className:"wandox-console-chips",role:"tablist","aria-label":"场景分类",children:Y.map(se=>E.jsx("button",{type:"button",role:"tab","aria-selected":n===se.key,className:`wandox-console-chip${n===se.key?" wandox-console-chip--active":""}`,onClick:()=>i==null?void 0:i(se.key),children:E.jsx("span",{children:se.name})},se.key))}),q&&E.jsx("button",{type:"button",className:"wandox-console-chipnav","aria-label":"下一页分类",disabled:G===W-1,onClick:()=>z(se=>Math.min(W-1,se+1)),children:E.jsx(MEr,{})}),E.jsx("div",{className:"wandox-console-scenesearch",children:E.jsx(zr,{allowClear:!0,prefix:E.jsx(tg,{}),placeholder:"搜索当前地图下的场景",value:m,onChange:se=>v(se.target.value)})})]})]}),Q&&E.jsxs("section",{className:"wandox-console-scene-section","aria-label":"个性化场景",children:[E.jsx("div",{className:"wandox-console-scene-section__header",children:E.jsx("div",{children:E.jsx("h2",{children:"为你推荐"})})}),a?E.jsxs("div",{className:"wandox-console-agents__loading",style:{justifyContent:"center",padding:"40px 0"},children:[E.jsx(Oi,{size:"small"}),E.jsx("span",{children:"正在加载场景..."})]}):s&&K.length===0?E.jsxs("div",{className:"wandox-console-agents__error",style:{alignItems:"center",padding:"32px 0"},children:[E.jsx("span",{children:s}),E.jsxs("button",{type:"button",onClick:o,children:[E.jsx(Xv,{}),"重试"]})]}):X.length===0?E.jsxs("div",{className:"wandox-console-scene-section__empty",children:[E.jsx(tg,{}),E.jsx("span",{children:m?"没有匹配的场景":"当前分类暂无场景"})]}):E.jsx("div",{className:"wandox-console-scenes-wrap",children:E.jsx("div",{className:"wandox-console-scenes",children:X.map(se=>{const he=J5n(se),me=Q5n(se),ye=eIn(se.tags);return E.jsxs("div",{className:"wandox-console-scene-wrap",children:[E.jsx("button",{type:"button",className:`wandox-console-scene${me?" wandox-console-scene--featured":""}${J===se.playbook_id?" wandox-console-scene--selected":""}`,onClick:()=>ce(se),children:E.jsxs("div",{className:"wandox-console-scene__body",children:[E.jsxs("div",{className:"wandox-console-scene__head",children:[E.jsx("strong",{title:se.title,children:se.title}),he&&E.jsx("span",{className:`wandox-console-scene__badge wandox-console-scene__badge--${he.kind}`,children:he.text})]}),se.desc&&E.jsx("span",{className:"wandox-console-scene__desc",title:se.desc,children:se.desc}),(me||ye.length>0)&&E.jsxs("div",{className:"wandox-console-scene__tags",children:[me&&E.jsx("span",{className:"wandox-console-scene__tag wandox-console-scene__tag--featured",children:"精品"}),ye.map((ee,pe)=>E.jsx("span",{className:"wandox-console-scene__tag",style:tIn(ee),children:ee.name},`${ee.name}-${pe}`))]})]})}),se.video_url&&E.jsxs("button",{type:"button",className:"wandox-console-scene__video","aria-label":`播放${se.title}演示视频`,onClick:ee=>le(ee,se),children:["▶ ",f3t(se.video_duration)," 演示"]})]},se.key)})})})]})]}),E.jsx(QQ,{playbook:oe,onClose:()=>x(null)})]})}function Q5n(e){return e.is_featured===!0||e.badge==="featured"}function J5n(e){return e.badge==="recommend"?{text:"推荐",kind:"recommend"}:e.badge==="new"?{text:"New",kind:"new"}:null}function eIn(e){return Array.isArray(e)?e.filter(t=>typeof(t==null?void 0:t.name)=="string"&&t.name.trim()!==""):[]}function tIn(e){if(!(e.variant!=="soft"||!e.color))return{color:e.color,borderColor:m3t(e.color,.28),backgroundColor:m3t(e.color,.08)}}function m3t(e,t){const r=e.trim().replace("#","");if(!/^[0-9a-fA-F]{6}$/.test(r))return e;const n=Number.parseInt(r.slice(0,2),16),i=Number.parseInt(r.slice(2,4),16),a=Number.parseInt(r.slice(4,6),16);return`rgba(${n}, ${i}, ${a}, ${t})`}const rIn=[{id:"conversation",title:"智能体",desc:"与智能体自由对话或选择场景执行任务",icon:E.jsx(B0e,{}),accent:"#4f46e5"},{id:"automation",title:"自动化",desc:"管理与执行自动化流程、定时任务与驾驶舱",icon:E.jsx(Aq,{}),accent:"#4f46e5"}],iz={id:"notification",title:"通知配置",icon:E.jsx(kq,{}),accent:"#e0730c"};function nIn({features:e,onOpenFeature:t,activeId:r}){return E.jsxs("header",{className:"wandox-console-topnav","aria-label":"控制台顶部导航",children:[E.jsx("nav",{className:"wandox-console-topnav__pill","aria-label":"工作台",children:e.map(n=>{const i=r===n.id;return E.jsxs("button",{type:"button",className:`wandox-console-topnav__pill-btn${i?" wandox-console-topnav__pill-btn--active":""}`,title:n.title,"aria-label":n.title,"aria-current":i?"page":void 0,onClick:()=>t(n.id),children:[E.jsx("span",{className:"wandox-console-topnav__pill-icon",children:n.icon}),E.jsx("span",{className:"wandox-console-topnav__pill-text",children:n.title})]},n.id)})}),E.jsx("button",{type:"button",className:"wandox-console-topnav__notify",style:{"--notify-accent":iz.accent},title:iz.title,"aria-label":iz.title,onClick:()=>t(iz.id),children:E.jsx("span",{className:"wandox-console-topnav__notify-icon",children:iz.icon})})]})}function iIn({className:e="",state:t="idle"}){return E.jsx("img",{className:`wandox-console-companion${e?` ${e}`:""}`,"data-state":t,src:sY,alt:"","aria-hidden":"true"})}function v3t({fading:e}){return E.jsxs("div",{className:`wandox-console-init${e?" wandox-console-init--fading":""}`,"aria-hidden":!0,children:[E.jsx("div",{className:"wandox-console-init__halo wandox-console-init__halo--a"}),E.jsx("div",{className:"wandox-console-init__halo wandox-console-init__halo--b"}),E.jsxs("div",{className:"wandox-console-init__inner",children:[E.jsx(iIn,{className:"wandox-console-init__companion",state:"thinking"}),E.jsxs("div",{children:[E.jsx("div",{className:"wandox-console-init__title",children:"正在准备你的控制台"}),E.jsx("div",{className:"wandox-console-init__subtitle",children:"正在加载智能体与场景数据…"})]}),E.jsxs("div",{className:"wandox-console-init__dots","aria-hidden":!0,children:[E.jsx("span",{}),E.jsx("span",{}),E.jsx("span",{}),E.jsx("span",{}),E.jsx("span",{})]})]}),E.jsx("div",{className:"wandox-console-init__footnote",children:"由 Wandox AI 提供动力"})]})}function y3t({title:e,onBack:t,hideHeader:r=!1,className:n,children:i}){return E.jsxs("div",{className:`wandox-console-featureview${n?` ${n}`:""}`,children:[!r&&E.jsxs("div",{className:"wandox-console-featureview__bar",children:[E.jsxs("button",{type:"button",className:"wandox-console-featureview__back",onClick:t,children:[E.jsx(eC,{}),"返回控制台"]}),E.jsx("span",{className:"wandox-console-featureview__title",children:e})]}),E.jsx("div",{className:"wandox-console-featureview__body",children:i})]})}function aIn({agents:e,initialAgentId:t,initialPlaybookId:r,initialPlaybookParams:n,onReady:i}={}){const{agents:a,agentLoading:s,selectedAgentId:o,selectedAgent:l,selectAgent:u,...d}=u3t({presetAgents:e,initialAgentId:t}),[h,f]=S.useState(null),p=S.useRef(null),g=S.useRef(!1),[m,v]=S.useState("home"),[y,x]=S.useState(null),[b,w]=S.useState(!1),[C,_]=S.useState(null),[T,k]=S.useState(""),A=l==null?void 0:l.name,$=S.useCallback(Q=>{if(p.current){p.current.showInspectionResults(Q);return}f({robotName:Q})},[]);S.useEffect(()=>{i==null||i({showInspectionResults:$})},[$,i]),S.useEffect(()=>{!h||p.current||!o||m==="chat"||(_({agentId:o,agentName:A,playbookParams:{},message:""}),v("chat"))},[m,h,o,A]),S.useEffect(()=>{k("")},[o]);const{playbooks:I,userPlaybooks:P,useMapCategories:N,useMapCards:R,sceneLoading:L,useMapError:M,reload:O}=d,D=S.useMemo(()=>N.length>0?N:P5n(I),[N,I]);S.useEffect(()=>{if(D.length===0)return;D.some(J=>J.key===T)||k(D[0].key)},[D]);const F=S.useRef(!1);S.useEffect(()=>{if(F.current||!r||!o||L)return;const Q=a.find(J=>J.id===o&&ure(J,t));Q&&(F.current=!0,_({agentId:o,agentName:Q.name,playbookId:r,playbookParams:n||{},message:""}),v("chat"))},[L,a,t,r,n,o,A]),S.useEffect(()=>{if(g.current||!t||r||!o||L)return;const Q=a.find(J=>J.id===o&&ure(J,t));Q&&(g.current=!0,_({agentId:Q.id,agentName:Q.name,playbookParams:{},message:""}),v("chat"))},[a,L,t,r,o]);const[B,j]=S.useState(!0),[H,z]=S.useState(!1);S.useEffect(()=>{if(!B||!(!s&&a.length>0&&!!o&&!L))return;z(!0);const re=setTimeout(()=>j(!1),280);return()=>clearTimeout(re)},[s,a.length,o,L,B]);const W=S.useCallback(()=>{v("home"),x(null),w(!1)},[]),G=S.useCallback(Q=>{if(Q==="conversation"){W();return}w(!1),x(Q)},[W]),q=Q=>{u(Q),v("home")},Y=Q=>{if(Q===o)return;const J=a.find(re=>re.id===Q);u(Q),_({agentId:Q,agentName:J==null?void 0:J.name,playbookParams:{},message:""})},K=()=>{o&&(_({agentId:o,agentName:A,playbookParams:{},message:""}),v("chat"))},Z=Q=>{_({agentId:o,agentName:A,playbookId:Q.playbookId,playbookParams:Q.playbookParams,message:Q.message,attachments:Q.attachments}),v("chat")};return m==="chat"&&C?E.jsxs("div",{className:"wandox-console-chat-shell",children:[E.jsx(K5n,{agentId:C.agentId,agentName:C.agentName,playbookId:C.playbookId,playbookParams:C.playbookParams,initialMessage:C.message,initialAttachments:C.attachments,useMapCards:R,useMapCategories:N,playbooks:I,userPlaybooks:P,agents:a,onReady:Q=>{p.current=Q,h&&(Q.showInspectionResults(h.robotName),f(null))},onChangeAgent:Y,onBack:()=>{p.current=null,v("home")},onSelectScene:()=>{}},`${C.agentId}:${C.playbookId||"free-chat"}`),B&&E.jsx(v3t,{fading:H})]}):E.jsxs("div",{className:`wandox-console${b?" wandox-console--secondary":""}`,children:[B&&E.jsx(v3t,{fading:H}),!b&&E.jsx(nIn,{features:rIn,activeId:y??"conversation",onOpenFeature:G}),E.jsxs("main",{className:"wandox-console-main",children:[y==="automation"&&E.jsx(y3t,{title:"自动化",onBack:()=>x(null),hideHeader:!0,className:"wandox-console-featureview--automation",children:E.jsx(e3t,{onCockpitEnter:()=>w(!0),onCockpitExit:()=>w(!1),onInboxEnter:()=>w(!0)})}),y==="notification"&&E.jsx(y3t,{title:"通知配置",onBack:()=>x(null),hideHeader:!0,children:E.jsx(uyt,{})}),!y&&E.jsx(Z5n,{useMapCards:R,useMapCategories:D,playbooks:I,selectedCategoryKey:T,onCategorySelect:k,loading:L,useMapError:M,onRetry:O,onStartAnalysis:Z,agents:a,selectedAgentId:o,onAgentSelect:q,onOpenAgentChat:K})]})]})}const sIn=Object.freeze(Object.defineProperty({__proto__:null,default:aIn},Symbol.toStringTag,{value:"Module"}));class or extends Error{constructor(t,r){var n="KaTeX parse error: "+t,i,a,s=r&&r.loc;if(s&&s.start<=s.end){var o=s.lexer.input;i=s.start,a=s.end,i===o.length?n+=" at end of input: ":n+=" at position "+(i+1)+": ";var l=o.slice(i,a).replace(/[^]/g,"$&̲"),u;i>15?u="…"+o.slice(i-15,i):u=o.slice(0,i);var d;a+15<o.length?d=o.slice(a,a+15)+"…":d=o.slice(a),n+=u+l+d}super(n),this.name="ParseError",this.position=void 0,this.length=void 0,this.rawMessage=void 0,Object.setPrototypeOf(this,or.prototype),this.position=i,i!=null&&a!=null&&(this.length=a-i),this.rawMessage=t}}var oIn=/([A-Z])/g,lIn=e=>e.replace(oIn,"-$1").toLowerCase(),cIn={"&":"&amp;",">":"&gt;","<":"&lt;",'"':"&quot;","'":"&#x27;"},uIn=/[&><"']/g,bu=e=>String(e).replace(uIn,t=>cIn[t]),dre=e=>e.type==="ordgroup"||e.type==="color"?e.body.length===1?dre(e.body[0]):e:e.type==="font"?dre(e.body):e,dIn=new Set(["mathord","textord","atom"]),m1=e=>dIn.has(dre(e).type),hIn=e=>{var t=/^[\x00-\x20]*([^\\/#?]*?)(:|&#0*58|&#x0*3a|&colon)/i.exec(e);return t?t[2]!==":"||!/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(t[1])?null:t[1].toLowerCase():"_relative"},hre={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format <type>"},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color <color>",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:e=>"#"+e},macros:{type:"object",cli:"-m, --macro <def>",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:(e,t)=>(t.push(e),t)},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:e=>Math.max(0,e),cli:"--min-rule-thickness <size>",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:e=>Math.max(0,e),cli:"-s, --max-size <n>",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:e=>Math.max(0,e),cli:"-e, --max-expand <n>",cliProcessor:e=>e==="Infinity"?1/0:parseInt(e)},globalGroup:{type:"boolean",cli:!1}};function fIn(e){if(typeof e!="string")return e.enum[0];switch(e){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{};default:throw new Error("Unexpected schema type; settings must declare an explicit default.")}}function pIn(e){if(e.default!==void 0)return e.default;var t=Array.isArray(e.type)?e.type[0]:e.type;return fIn(t)}function gIn(e,t,r,n){var i=r[t];e[t]=i!==void 0?n.processor?n.processor(i):i:pIn(n)}class Z3e{constructor(t){t===void 0&&(t={}),this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0,this.errorColor=void 0,this.macros=void 0,this.minRuleThickness=void 0,this.colorIsTextColor=void 0,this.strict=void 0,this.trust=void 0,this.maxSize=void 0,this.maxExpand=void 0,this.globalGroup=void 0,t=t||{};for(var r of Object.keys(hre)){var n=hre[r];n&&gIn(this,r,t,n)}}reportNonstrict(t,r,n){var i=this.strict;if(typeof i=="function"&&(i=i(t,r,n)),!(!i||i==="ignore")){if(i===!0||i==="error")throw new or("LaTeX-incompatible input and strict mode is set to 'error': "+(r+" ["+t+"]"),n);typeof console<"u"}}useStrictBehavior(t,r,n){var i=this.strict;if(typeof i=="function")try{i=i(t,r,n)}catch{i="error"}return!i||i==="ignore"?!1:i===!0||i==="error"?!0:(typeof console<"u",!1)}isTrusted(t){if("url"in t&&t.url&&!t.protocol){var r=hIn(t.url);if(r==null)return!1;t.protocol=r}var n=typeof this.trust=="function"?this.trust(t):this.trust;return!!n}}class Fw{constructor(t,r,n){this.id=void 0,this.size=void 0,this.cramped=void 0,this.id=t,this.size=r,this.cramped=n}sup(){return P0[mIn[this.id]]}sub(){return P0[vIn[this.id]]}fracNum(){return P0[yIn[this.id]]}fracDen(){return P0[bIn[this.id]]}cramp(){return P0[xIn[this.id]]}text(){return P0[wIn[this.id]]}isTight(){return this.size>=2}}var Q3e=0,fre=1,b$=2,v1=3,az=4,wp=5,x$=6,ad=7,P0=[new Fw(Q3e,0,!1),new Fw(fre,0,!0),new Fw(b$,1,!1),new Fw(v1,1,!0),new Fw(az,2,!1),new Fw(wp,2,!0),new Fw(x$,3,!1),new Fw(ad,3,!0)],mIn=[az,wp,az,wp,x$,ad,x$,ad],vIn=[wp,wp,wp,wp,ad,ad,ad,ad],yIn=[b$,v1,az,wp,x$,ad,x$,ad],bIn=[v1,v1,wp,wp,ad,ad,ad,ad],xIn=[fre,fre,v1,v1,wp,wp,ad,ad],wIn=[Q3e,fre,b$,v1,b$,v1,b$,v1],Qn={DISPLAY:P0[Q3e],TEXT:P0[b$],SCRIPT:P0[az],SCRIPTSCRIPT:P0[x$]},J3e=[{name:"latin",blocks:[[256,591],[768,879]]},{name:"cyrillic",blocks:[[1024,1279]]},{name:"armenian",blocks:[[1328,1423]]},{name:"brahmic",blocks:[[2304,4255]]},{name:"georgian",blocks:[[4256,4351]]},{name:"cjk",blocks:[[12288,12543],[19968,40879],[65280,65376]]},{name:"hangul",blocks:[[44032,55215]]}];function SIn(e){for(var t=0;t<J3e.length;t++)for(var r=J3e[t],n=0;n<r.blocks.length;n++){var i=r.blocks[n];if(e>=i[0]&&e<=i[1])return r.name}return null}var pre=[];J3e.forEach(e=>e.blocks.forEach(t=>pre.push(...t)));function b3t(e){for(var t=0;t<pre.length;t+=2)if(e>=pre[t]&&e<=pre[t+1])return!0;return!1}var kl=e=>e+" "+e,w$=80,CIn=function(t,r){return"M95,"+(622+t+r)+`
1102
1102
  c-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14
1103
1103
  c0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54
1104
1104
  c44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10