@paperkite/plugin-runtime-console 0.1.0

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 (75) hide show
  1. package/README.md +28 -0
  2. package/dist/console/errors.d.ts +5 -0
  3. package/dist/console/errors.js +11 -0
  4. package/dist/console/errors.js.map +1 -0
  5. package/dist/console/logs.d.ts +1 -0
  6. package/dist/console/logs.js +27 -0
  7. package/dist/console/logs.js.map +1 -0
  8. package/dist/console/server.d.ts +6 -0
  9. package/dist/console/server.js +182 -0
  10. package/dist/console/server.js.map +1 -0
  11. package/dist/index.d.ts +10 -0
  12. package/dist/index.js +83 -0
  13. package/dist/index.js.map +1 -0
  14. package/package.json +68 -0
  15. package/public/_app/immutable/assets/0.DtIwIIdd.css +1 -0
  16. package/public/_app/immutable/assets/5.DqLcCl3W.css +1 -0
  17. package/public/_app/immutable/assets/collapsible-json.Cl9aN9ty.css +1 -0
  18. package/public/_app/immutable/assets/inter-cyrillic-ext-wght-normal.BOeWTOD4.woff2 +0 -0
  19. package/public/_app/immutable/assets/inter-cyrillic-wght-normal.DqGufNeO.woff2 +0 -0
  20. package/public/_app/immutable/assets/inter-greek-ext-wght-normal.DlzME5K_.woff2 +0 -0
  21. package/public/_app/immutable/assets/inter-greek-wght-normal.CkhJZR-_.woff2 +0 -0
  22. package/public/_app/immutable/assets/inter-latin-ext-wght-normal.DO1Apj_S.woff2 +0 -0
  23. package/public/_app/immutable/assets/inter-latin-wght-normal.Dx4kXJAl.woff2 +0 -0
  24. package/public/_app/immutable/assets/inter-vietnamese-wght-normal.CBcvBZtf.woff2 +0 -0
  25. package/public/_app/immutable/assets/jetbrains-mono-cyrillic-wght-normal.D73BlboJ.woff2 +0 -0
  26. package/public/_app/immutable/assets/jetbrains-mono-greek-wght-normal.Bw9x6K1M.woff2 +0 -0
  27. package/public/_app/immutable/assets/jetbrains-mono-latin-ext-wght-normal.DBQx-q_a.woff2 +0 -0
  28. package/public/_app/immutable/assets/jetbrains-mono-latin-wght-normal.B9CIFXIH.woff2 +0 -0
  29. package/public/_app/immutable/assets/jetbrains-mono-vietnamese-wght-normal.Bt-aOZkq.woff2 +0 -0
  30. package/public/_app/immutable/assets/select.CV-KWLNP.css +1 -0
  31. package/public/_app/immutable/assets/space-grotesk-latin-ext-wght-normal.D9tNdqV9.woff2 +0 -0
  32. package/public/_app/immutable/assets/space-grotesk-latin-wght-normal.BhU9QXUp.woff2 +0 -0
  33. package/public/_app/immutable/assets/space-grotesk-vietnamese-wght-normal.D0rl6rjA.woff2 +0 -0
  34. package/public/_app/immutable/chunks/-MWhb9c-.js +1 -0
  35. package/public/_app/immutable/chunks/1mqgODEB.js +1 -0
  36. package/public/_app/immutable/chunks/4FxxAFXN.js +1 -0
  37. package/public/_app/immutable/chunks/B1VSXVja.js +1 -0
  38. package/public/_app/immutable/chunks/B36KvkWl.js +1 -0
  39. package/public/_app/immutable/chunks/B8_hs9R4.js +1 -0
  40. package/public/_app/immutable/chunks/BHsjJ8bF.js +1 -0
  41. package/public/_app/immutable/chunks/BKgPCz3n.js +1 -0
  42. package/public/_app/immutable/chunks/BM-d1iyU.js +1 -0
  43. package/public/_app/immutable/chunks/BkeJCmZR.js +1 -0
  44. package/public/_app/immutable/chunks/BpJGvxOD.js +1 -0
  45. package/public/_app/immutable/chunks/C1_V7OdN.js +1 -0
  46. package/public/_app/immutable/chunks/C1dm7snI.js +2 -0
  47. package/public/_app/immutable/chunks/C3IMQzMn.js +1 -0
  48. package/public/_app/immutable/chunks/C59Htmoo.js +1 -0
  49. package/public/_app/immutable/chunks/CBkgBsl2.js +1 -0
  50. package/public/_app/immutable/chunks/CXE75xOj.js +1 -0
  51. package/public/_app/immutable/chunks/Cl3lhUWL.js +1 -0
  52. package/public/_app/immutable/chunks/D3H57P1T.js +1 -0
  53. package/public/_app/immutable/chunks/D4TYZfw1.js +10 -0
  54. package/public/_app/immutable/chunks/DLXc3MsS.js +1 -0
  55. package/public/_app/immutable/chunks/DVEB1r5D.js +1 -0
  56. package/public/_app/immutable/chunks/Dk_FALGi.js +1 -0
  57. package/public/_app/immutable/chunks/DpIbH5kQ.js +1 -0
  58. package/public/_app/immutable/chunks/DwNr-XJb.js +1 -0
  59. package/public/_app/immutable/chunks/JYomMW8A.js +1 -0
  60. package/public/_app/immutable/chunks/u9x_yOz5.js +5 -0
  61. package/public/_app/immutable/chunks/wbPk3Yxo.js +81 -0
  62. package/public/_app/immutable/chunks/ywqHnl7S.js +2 -0
  63. package/public/_app/immutable/entry/app.xGcxUCtq.js +2 -0
  64. package/public/_app/immutable/entry/start.BfgCqfOg.js +1 -0
  65. package/public/_app/immutable/nodes/0.6NyaEHme.js +1 -0
  66. package/public/_app/immutable/nodes/1.BuZaC350.js +1 -0
  67. package/public/_app/immutable/nodes/2.B86h23eK.js +1 -0
  68. package/public/_app/immutable/nodes/3.Bkc35OBN.js +4 -0
  69. package/public/_app/immutable/nodes/4.DTipQFjn.js +1 -0
  70. package/public/_app/immutable/nodes/5.CcLKuLYX.js +1 -0
  71. package/public/_app/immutable/nodes/6.DPrxF31w.js +2 -0
  72. package/public/_app/immutable/nodes/7.HhYOLA1h.js +1 -0
  73. package/public/_app/immutable/nodes/8.b5y1XVkv.js +1 -0
  74. package/public/_app/version.json +1 -0
  75. package/public/index.html +59 -0
@@ -0,0 +1 @@
1
+ import{c as q,a as c,p as sn,f as A,s as ne,t as de,d as ao,b as tn}from"../chunks/ywqHnl7S.js";import{c as R,p as Ne,h as Fe,g as a,j as v,I as Dt,r as g,k as D,i as K,b as nn,a as p,F as mr,e as h,l as fe,D as pe,B as V,E as mi,M as gi}from"../chunks/DLXc3MsS.js";import{l as Xe,s as $e,p as B,i as P,r as an}from"../chunks/B36KvkWl.js";import{I as Qe,s as et,a as De,i as _t,e as $n,c as kn,g as lt,r as xt,b as ct,f as wn,d as Nn,j as $r}from"../chunks/C1dm7snI.js";import{B as Ze,a as Oe,r as Vt}from"../chunks/4FxxAFXN.js";import{c as lo,p as gr,t as co,e as Jt}from"../chunks/C3IMQzMn.js";import{B as sr}from"../chunks/BKgPCz3n.js";import{D as Nr,Z as uo,S as Ut,a as vi,b as pi}from"../chunks/BkeJCmZR.js";import{S as zn}from"../chunks/CXE75xOj.js";import{c as yn}from"../chunks/Cl3lhUWL.js";import{c as ln,n as jt,M as xi,b as Z,m as Mt,a as bi,d as _i,e as yi,D as ki,C as wi,f as wr,w as Si,S as Ai,E as Ci,g as Pi,h as Mi,i as fo,j as Fr,R as Di,k as Bi,P as vr}from"../chunks/u9x_yOz5.js";import{F as Ti,P as Li,a as Ri,g as Vr,c as Oi,S as Ei,b as bt}from"../chunks/CBkgBsl2.js";import{b as ho}from"../chunks/DwNr-XJb.js";import{L as Re,a as Ii}from"../chunks/BpJGvxOD.js";import{o as zi}from"../chunks/D3H57P1T.js";import{E as He,S as mo,T as ar,F as Sr,c as go,a as X,I as vo,b as dn,d as $i,e as Ni,A as po,D as Fi,g as xo,f as Ar,i as Fn,h as bo,s as Cr,m as en,j as Sn,N as pr,k as xr,l as Vi,V as Ji,n as rn,o as Ui,p as ji,R as Hi,W as Gi,q as Ki,r as qi,t as Wi,u as Zi,v as Yi,w as Xi,x as Qi,y as es,z as ts,B as ns,G as rs,C as _o,H as os}from"../chunks/D4TYZfw1.js";import{a as is,D as ss}from"../chunks/1mqgODEB.js";import{C as yo,F as ko,A as as,a as ls,c as ds,b as cs}from"../chunks/C59Htmoo.js";import{R as us}from"../chunks/DVEB1r5D.js";function Jr(t,e){const n=Xe(e,["children","$$slots","$$events","$$legacy"]);const r=[["circle",{cx:"12",cy:"12",r:"10"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16"}]];Qe(t,$e({name:"circle-alert"},()=>n,{get iconNode(){return r},children:(o,i)=>{var s=q(),l=R(s);et(l,e,"default",{}),c(o,s)},$$slots:{default:!0}}))}function Ur(t,e){const n=Xe(e,["children","$$slots","$$events","$$legacy"]);const r=[["path",{d:"M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z"}],["circle",{cx:"12",cy:"12",r:"10"}]];Qe(t,$e({name:"circle-play"},()=>n,{get iconNode(){return r},children:(o,i)=>{var s=q(),l=R(s);et(l,e,"default",{}),c(o,s)},$$slots:{default:!0}}))}function fs(t,e){const n=Xe(e,["children","$$slots","$$events","$$legacy"]);const r=[["circle",{cx:"12",cy:"12",r:"1"}],["circle",{cx:"19",cy:"12",r:"1"}],["circle",{cx:"5",cy:"12",r:"1"}]];Qe(t,$e({name:"ellipsis"},()=>n,{get iconNode(){return r},children:(o,i)=>{var s=q(),l=R(s);et(l,e,"default",{}),c(o,s)},$$slots:{default:!0}}))}function hs(t,e){const n=Xe(e,["children","$$slots","$$events","$$legacy"]);const r=[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0"}],["circle",{cx:"12",cy:"12",r:"3"}]];Qe(t,$e({name:"eye"},()=>n,{get iconNode(){return r},children:(o,i)=>{var s=q(),l=R(s);et(l,e,"default",{}),c(o,s)},$$slots:{default:!0}}))}function ms(t,e){const n=Xe(e,["children","$$slots","$$events","$$legacy"]);const r=[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"}],["path",{d:"m15 5 4 4"}]];Qe(t,$e({name:"pencil"},()=>n,{get iconNode(){return r},children:(o,i)=>{var s=q(),l=R(s);et(l,e,"default",{}),c(o,s)},$$slots:{default:!0}}))}function gs(t,e){const n=Xe(e,["children","$$slots","$$events","$$legacy"]);const r=[["path",{d:"M5 12h14"}],["path",{d:"M12 5v14"}]];Qe(t,$e({name:"plus"},()=>n,{get iconNode(){return r},children:(o,i)=>{var s=q(),l=R(s);et(l,e,"default",{}),c(o,s)},$$slots:{default:!0}}))}function wo(t,e){const n=Xe(e,["children","$$slots","$$events","$$legacy"]);const r=[["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5"}],["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09"}],["path",{d:"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05"}]];Qe(t,$e({name:"rocket"},()=>n,{get iconNode(){return r},children:(o,i)=>{var s=q(),l=R(s);et(l,e,"default",{}),c(o,s)},$$slots:{default:!0}}))}function vs(t,e){const n=Xe(e,["children","$$slots","$$events","$$legacy"]);const r=[["path",{d:"M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8"}],["path",{d:"M21 3v5h-5"}]];Qe(t,$e({name:"rotate-cw"},()=>n,{get iconNode(){return r},children:(o,i)=>{var s=q(),l=R(s);et(l,e,"default",{}),c(o,s)},$$slots:{default:!0}}))}function So(t,e){const n=Xe(e,["children","$$slots","$$events","$$legacy"]);const r=[["path",{d:"M10 11v6"}],["path",{d:"M14 11v6"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6"}],["path",{d:"M3 6h18"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"}]];Qe(t,$e({name:"trash-2"},()=>n,{get iconNode(){return r},children:(o,i)=>{var s=q(),l=R(s);et(l,e,"default",{}),c(o,s)},$$slots:{default:!0}}))}function Ao(t,e){const n=Xe(e,["children","$$slots","$$events","$$legacy"]);const r=[["path",{d:"m21.64 3.64-1.28-1.28a1.21 1.21 0 0 0-1.72 0L2.36 18.64a1.21 1.21 0 0 0 0 1.72l1.28 1.28a1.2 1.2 0 0 0 1.72 0L21.64 5.36a1.2 1.2 0 0 0 0-1.72"}],["path",{d:"m14 7 3 3"}],["path",{d:"M5 6v4"}],["path",{d:"M19 14v4"}],["path",{d:"M10 2v2"}],["path",{d:"M7 8H3"}],["path",{d:"M21 16h-4"}],["path",{d:"M11 3H9"}]];Qe(t,$e({name:"wand-sparkles"},()=>n,{get iconNode(){return r},children:(o,i)=>{var s=q(),l=R(s);et(l,e,"default",{}),c(o,s)},$$slots:{default:!0}}))}function ps(t,e){const n=Xe(e,["children","$$slots","$$events","$$legacy"]);const r=[["path",{d:"M18 6 6 18"}],["path",{d:"m6 6 12 12"}]];Qe(t,$e({name:"x"},()=>n,{get iconNode(){return r},children:(o,i)=>{var s=q(),l=R(s);et(l,e,"default",{}),c(o,s)},$$slots:{default:!0}}))}var xs=new Set(["$$slots","$$events","$$legacy","child","children","ref","id","disabled","onSelect","closeOnSelect"]),bs=A("<div><!></div>");function _s(t,e){const n=sn();Ne(e,!0);let r=B(e,"ref",15,null),o=B(e,"id",19,()=>ln(n)),i=B(e,"disabled",3,!1),s=B(e,"onSelect",3,jt),l=B(e,"closeOnSelect",3,!0),d=an(e,xs);const u=xi.create({id:Z(()=>o()),disabled:Z(()=>i()),onSelect:Z(()=>s()),ref:Z(()=>r(),M=>r(M)),closeOnSelect:Z(()=>l())}),f=D(()=>Mt(d,u.props));var y=q(),m=R(y);{var S=M=>{var C=q(),N=R(C);De(N,()=>e.child,()=>({props:a(f)})),c(M,C)},k=M=>{var C=bs();_t(C,()=>({...a(f)}));var N=v(C);De(N,()=>e.children??Dt),g(C),c(M,C)};P(m,M=>{e.child?M(S):M(k,-1)})}c(t,y),Fe()}function ys(t,e){Ne(e,!0);let n=B(e,"open",15,!1),r=B(e,"dir",3,"ltr"),o=B(e,"onOpenChange",3,jt),i=B(e,"onOpenChangeComplete",3,jt),s=B(e,"_internal_variant",3,"dropdown-menu"),l=B(e,"_internal_should_skip_exit_animation",3,void 0);const d=bi.create({variant:Z(()=>s()),dir:Z(()=>r()),onClose:()=>{n(!1),o()(!1)},shouldSkipExitAnimation:()=>l()?.()??!1});_i.create({open:Z(()=>n(),u=>{n(u),o()(u)}),onOpenChangeComplete:Z(()=>i())},d),Ti(t,{children:(u,f)=>{var y=q(),m=R(y);De(m,()=>e.children??Dt),c(u,y)},$$slots:{default:!0}}),Fe()}var ks=new Set(["$$slots","$$events","$$legacy","id","child","children","ref","loop","onInteractOutside","onEscapeKeydown","onCloseAutoFocus","forceMount","trapFocus","style"]),jr=A("<div><div><!></div></div>");function ws(t,e){const n=sn();Ne(e,!0);let r=B(e,"id",19,()=>ln(n)),o=B(e,"ref",15,null),i=B(e,"loop",3,!0),s=B(e,"onInteractOutside",3,jt),l=B(e,"onEscapeKeydown",3,jt),d=B(e,"onCloseAutoFocus",3,jt),u=B(e,"forceMount",3,!1),f=B(e,"trapFocus",3,!1),y=an(e,ks);const m=yi.create({id:Z(()=>r()),loop:Z(()=>i()),ref:Z(()=>o(),w=>o(w)),onCloseAutoFocus:Z(()=>d())}),S=D(()=>Mt(y,m.props));function k(w){if(m.handleInteractOutside(w),!w.defaultPrevented&&(s()(w),!w.defaultPrevented)){if(w.target&&w.target instanceof Element){const U=`[${m.parentMenu.root.getBitsAttr("sub-content")}]`;if(w.target.closest(U))return}m.parentMenu.onClose()}}function M(w){l()(w),!w.defaultPrevented&&m.parentMenu.onClose()}var C=q(),N=R(C);{var F=w=>{Li(w,$e(()=>a(S),()=>m.popperProps,{get ref(){return m.opts.ref},get enabled(){return m.parentMenu.opts.open.current},onInteractOutside:k,onEscapeKeydown:M,get trapFocus(){return f()},get loop(){return i()},forceMount:!0,get id(){return r()},get shouldRender(){return m.shouldRender},popper:(Q,se)=>{let he=()=>(se?.()).props,ue=()=>(se?.()).wrapperProps;const ee=D(()=>Mt(he(),{style:Vr("dropdown-menu")},{style:e.style}));var re=q(),b=R(re);{var E=I=>{var z=q(),ce=R(z);{let Ke=D(()=>({props:a(ee),wrapperProps:ue(),...m.snippetProps}));De(ce,()=>e.child,()=>a(Ke))}c(I,z)},O=I=>{var z=jr();_t(z,()=>({...ue()}));var ce=v(z);_t(ce,()=>({...a(ee)}));var Ke=v(ce);De(Ke,()=>e.children??Dt),g(ce),g(z),c(I,z)};P(b,I=>{e.child?I(E):I(O,-1)})}c(Q,re)},$$slots:{popper:!0}}))},_=w=>{Ri(w,$e(()=>a(S),()=>m.popperProps,{get ref(){return m.opts.ref},get open(){return m.parentMenu.opts.open.current},onInteractOutside:k,onEscapeKeydown:M,get trapFocus(){return f()},get loop(){return i()},forceMount:!1,get id(){return r()},get shouldRender(){return m.shouldRender},popper:(Q,se)=>{let he=()=>(se?.()).props,ue=()=>(se?.()).wrapperProps;const ee=D(()=>Mt(he(),{style:Vr("dropdown-menu")},{style:e.style}));var re=q(),b=R(re);{var E=I=>{var z=q(),ce=R(z);{let Ke=D(()=>({props:a(ee),wrapperProps:ue(),...m.snippetProps}));De(ce,()=>e.child,()=>a(Ke))}c(I,z)},O=I=>{var z=jr();_t(z,()=>({...ue()}));var ce=v(z);_t(ce,()=>({...a(ee)}));var Ke=v(ce);De(Ke,()=>e.children??Dt),g(ce),g(z),c(I,z)};P(b,I=>{e.child?I(E):I(O,-1)})}c(Q,re)},$$slots:{popper:!0}}))};P(N,w=>{u()?w(F):u()||w(_,1)})}c(t,C),Fe()}var Ss=new Set(["$$slots","$$events","$$legacy","id","ref","child","children","disabled","type"]),As=A("<button><!></button>");function Cs(t,e){const n=sn();Ne(e,!0);let r=B(e,"id",19,()=>ln(n)),o=B(e,"ref",15,null),i=B(e,"disabled",3,!1),s=B(e,"type",3,"button"),l=an(e,Ss);const d=ki.create({id:Z(()=>r()),disabled:Z(()=>i()??!1),ref:Z(()=>o(),f=>o(f))}),u=D(()=>Mt(l,d.props,{type:s()}));Oi(t,{get id(){return r()},get ref(){return d.opts.ref},children:(f,y)=>{var m=q(),S=R(m);{var k=C=>{var N=q(),F=R(N);De(F,()=>e.child,()=>({props:a(u)})),c(C,N)},M=C=>{var N=As();_t(N,()=>({...a(u)}));var F=v(N);De(F,()=>e.children??Dt),g(N),c(C,N)};P(S,C=>{e.child?C(k):C(M,-1)})}c(f,m)},$$slots:{default:!0}}),Fe()}const Vn=Bi({component:"tabs",parts:["root","list","trigger","content"]}),Pr=new wi("Tabs.Root");class Mr{static create(e){return Pr.set(new Mr(e))}opts;attachment;rovingFocusGroup;#t=K(mr([]));get triggerIds(){return a(this.#t)}set triggerIds(e){p(this.#t,e,!0)}valueToTriggerId=new Fr;valueToContentId=new Fr;constructor(e){this.opts=e,this.attachment=wr(e.ref),this.rovingFocusGroup=new Di({candidateAttr:Vn.trigger,rootNode:this.opts.ref,loop:this.opts.loop,orientation:this.opts.orientation})}registerTrigger(e,n){return this.triggerIds.push(e),this.valueToTriggerId.set(n,e),()=>{this.triggerIds=this.triggerIds.filter(r=>r!==e),this.valueToTriggerId.delete(n)}}registerContent(e,n){return this.valueToContentId.set(n,e),()=>{this.valueToContentId.delete(n)}}setValue(e){this.opts.value.current=e}#e=D(()=>({id:this.opts.id.current,"data-orientation":this.opts.orientation.current,[Vn.root]:"",...this.attachment}));get props(){return a(this.#e)}set props(e){p(this.#e,e)}}class Dr{static create(e){return new Dr(e,Pr.get())}opts;root;attachment;#t=D(()=>this.root.opts.disabled.current);constructor(e,n){this.opts=e,this.root=n,this.attachment=wr(e.ref)}#e=D(()=>({id:this.opts.id.current,role:"tablist","aria-orientation":this.root.opts.orientation.current,"data-orientation":this.root.opts.orientation.current,[Vn.list]:"","data-disabled":fo(a(this.#t)),...this.attachment}));get props(){return a(this.#e)}set props(e){p(this.#e,e)}}class Br{static create(e){return new Br(e,Pr.get())}opts;root;attachment;#t=K(0);#e=D(()=>this.root.opts.value.current===this.opts.value.current);#n=D(()=>this.opts.disabled.current||this.root.opts.disabled.current);#i=D(()=>this.root.valueToContentId.get(this.opts.value.current));constructor(e,n){this.opts=e,this.root=n,this.attachment=wr(e.ref),Si([()=>this.opts.id.current,()=>this.opts.value.current],([r,o])=>this.root.registerTrigger(r,o)),nn(()=>{this.root.triggerIds.length,a(this.#e)||!this.root.opts.value.current?p(this.#t,0):p(this.#t,-1)}),this.onfocus=this.onfocus.bind(this),this.onclick=this.onclick.bind(this),this.onkeydown=this.onkeydown.bind(this)}#r(){this.root.opts.value.current!==this.opts.value.current&&this.root.setValue(this.opts.value.current)}onfocus(e){this.root.opts.activationMode.current!=="automatic"||a(this.#n)||this.#r()}onclick(e){a(this.#n)||this.#r()}onkeydown(e){if(!a(this.#n)){if(e.key===Ai||e.key===Ci){e.preventDefault(),this.#r();return}this.root.rovingFocusGroup.handleKeydown(this.opts.ref.current,e)}}#o=D(()=>({id:this.opts.id.current,role:"tab","data-state":Ps(a(this.#e)),"data-value":this.opts.value.current,"data-orientation":this.root.opts.orientation.current,"data-disabled":fo(a(this.#n)),"aria-selected":Mi(a(this.#e)),"aria-controls":a(this.#i),[Vn.trigger]:"",disabled:Pi(a(this.#n)),tabindex:a(this.#t),onclick:this.onclick,onfocus:this.onfocus,onkeydown:this.onkeydown,...this.attachment}));get props(){return a(this.#o)}set props(e){p(this.#o,e)}}function Ps(t){return t?"active":"inactive"}var Ms=new Set(["$$slots","$$events","$$legacy","id","ref","value","onValueChange","orientation","loop","activationMode","disabled","children","child"]),Ds=A("<div><!></div>");function Bs(t,e){const n=sn();Ne(e,!0);let r=B(e,"id",19,()=>ln(n)),o=B(e,"ref",15,null),i=B(e,"value",15,""),s=B(e,"onValueChange",3,jt),l=B(e,"orientation",3,"horizontal"),d=B(e,"loop",3,!0),u=B(e,"activationMode",3,"automatic"),f=B(e,"disabled",3,!1),y=an(e,Ms);const m=Mr.create({id:Z(()=>r()),value:Z(()=>i(),F=>{i(F),s()(F)}),orientation:Z(()=>l()),loop:Z(()=>d()),activationMode:Z(()=>u()),disabled:Z(()=>f()),ref:Z(()=>o(),F=>o(F))}),S=D(()=>Mt(y,m.props));var k=q(),M=R(k);{var C=F=>{var _=q(),w=R(_);De(w,()=>e.child,()=>({props:a(S)})),c(F,_)},N=F=>{var _=Ds();_t(_,()=>({...a(S)}));var w=v(_);De(w,()=>e.children??Dt),g(_),c(F,_)};P(M,F=>{e.child?F(C):F(N,-1)})}c(t,k),Fe()}var Ts=new Set(["$$slots","$$events","$$legacy","child","children","id","ref"]),Ls=A("<div><!></div>");function Rs(t,e){const n=sn();Ne(e,!0);let r=B(e,"id",19,()=>ln(n)),o=B(e,"ref",15,null),i=an(e,Ts);const s=Dr.create({id:Z(()=>r()),ref:Z(()=>o(),m=>o(m))}),l=D(()=>Mt(i,s.props));var d=q(),u=R(d);{var f=m=>{var S=q(),k=R(S);De(k,()=>e.child,()=>({props:a(l)})),c(m,S)},y=m=>{var S=Ls();_t(S,()=>({...a(l)}));var k=v(S);De(k,()=>e.children??Dt),g(S),c(m,S)};P(u,m=>{e.child?m(f):m(y,-1)})}c(t,d),Fe()}var Os=new Set(["$$slots","$$events","$$legacy","child","children","disabled","id","type","value","ref"]),Es=A("<button><!></button>");function Is(t,e){const n=sn();Ne(e,!0);let r=B(e,"disabled",3,!1),o=B(e,"id",19,()=>ln(n)),i=B(e,"type",3,"button"),s=B(e,"ref",15,null),l=an(e,Os);const d=Br.create({id:Z(()=>o()),disabled:Z(()=>r()??!1),value:Z(()=>e.value),ref:Z(()=>s(),k=>s(k))}),u=D(()=>Mt(l,d.props,{type:i()}));var f=q(),y=R(f);{var m=k=>{var M=q(),C=R(M);De(C,()=>e.child,()=>({props:a(u)})),c(k,M)},S=k=>{var M=Es();_t(M,()=>({...a(u)}));var C=v(M);De(C,()=>e.children??Dt),g(M),c(k,M)};P(y,k=>{e.child?k(m):k(S,-1)})}c(t,f),Fe()}const zs=Object.freeze(Object.defineProperty({__proto__:null,List:Rs,Root:Bs,Trigger:Is},Symbol.toStringTag,{value:"Module"}));function dt(){var t=arguments[0];typeof t=="string"&&(t=document.createElement(t));var e=1,n=arguments[1];if(n&&typeof n=="object"&&n.nodeType==null&&!Array.isArray(n)){for(var r in n)if(Object.prototype.hasOwnProperty.call(n,r)){var o=n[r];typeof o=="string"?t.setAttribute(r,o):o!=null&&(t[r]=o)}e++}for(;e<arguments.length;e++)Co(t,arguments[e]);return t}function Co(t,e){if(typeof e=="string")t.appendChild(document.createTextNode(e));else if(e!=null)if(e.nodeType!=null)t.appendChild(e);else if(Array.isArray(e))for(var n=0;n<e.length;n++)Co(t,e[n]);else throw new RangeError("Unsupported child node: "+e)}function lr(t,e,n,r){return{capability:t,session:e??"",hook:n??"",configText:lo(r??{}),configError:null}}function dr(t){const e=t.capability.trim();if(!e)return{error:"动作需要能力名"};let n;try{n=gr(t.configText)}catch{return{error:"config 不是合法 JSON"}}return{spec:{capability:e,session:t.session.trim()||void 0,hook:t.hook.trim()||void 0,config:n}}}function $s(t){return t==null?!0:typeof t=="object"?!1:String(t).trim()===""}var Ns=A('<span class="font-mono text-xs tabular-nums opacity-60"> </span>'),Fs=A("<!> <!>",1);function Vs(t,e){Ne(e,!0);const{Root:n,List:r,Trigger:o}=zs;let i=B(e,"value",15,"all"),s=B(e,"items",19,()=>[]),l=B(e,"listClass",3,"");n(t,{loop:!1,get value(){return i()},set value(d){i(d)},children:(d,u)=>{{let f=D(()=>kn("inline-flex h-9 items-center justify-start gap-1 rounded-lg bg-muted p-1 text-muted-foreground",l()));r(d,{get class(){return a(f)},children:(y,m)=>{var S=q(),k=R(S);$n(k,17,s,M=>M.value,(M,C)=>{const N=D(()=>a(C).icon);o(M,{get value(){return a(C).value},class:"inline-flex items-center gap-1.5 rounded-md px-3 py-1 text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm",children:(F,_)=>{var w=Fs(),U=R(w);{var Q=ee=>{var re=q(),b=R(re);yn(b,()=>a(N),(E,O)=>{O(E,{class:"size-3.5","aria-hidden":"true"})}),c(ee,re)};P(U,ee=>{a(N)&&ee(Q)})}var se=h(U),he=h(se);{var ue=ee=>{var re=Ns(),b=pe(re,!0);fe(()=>ne(b,a(C).count)),c(ee,re)};P(he,ee=>{a(C).count!==void 0&&ee(ue)})}fe(()=>ne(se,` ${a(C).label??""} `)),c(F,w)},$$slots:{default:!0}})}),c(y,S)},$$slots:{default:!0}})}},$$slots:{default:!0}}),Fe()}let cr=null;function Js(){return cr||(cr=lt.plugins()),cr}function Us(t){const e=new Set;for(const n of t)for(const r of n.capabilities)r.kind==="action"&&e.add(r.name);return[...e].sort()}var js=A('<div class="flex items-center gap-2"><input class="flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 font-mono" placeholder="如 notify.bark"/> <!></div>'),Hs=A('<p class="text-xs text-destructive">能力清单读取失败,可手动输入能力名</p>'),Gs=A('<div class="flex flex-col gap-1.5"><!> <!> <!></div>');function Ks(t,e){Ne(e,!0);const n="__manual__";let r=B(e,"value",15,""),o=B(e,"label",3,"能力"),i=B(e,"placeholder",3,"选择能力…"),s=K(null),l=K(!1),d=K("pick"),u=K(null);nn(()=>{let _=!1;return Js().then(w=>{_||p(s,w,!0)}).catch(()=>{_||(p(s,[],!0),p(l,!0))}),()=>{_=!0}});const f=D(()=>Us(a(s)??[]));nn(()=>{r()===n&&(r(""),p(d,"type"),queueMicrotask(()=>a(u)?.focus()))}),nn(()=>{a(f).length>0&&r()!==""&&!a(f).includes(r())&&a(d)==="pick"&&p(d,"type")});const y=D(()=>[...a(f).map(_=>({value:_,label:_})),{value:n,label:"手动输入能力名…"}]);var m=Gs(),S=v(m);Re(S,{get for(){return e.id},children:(_,w)=>{V();var U=de();fe(()=>ne(U,o())),c(_,U)},$$slots:{default:!0}});var k=h(S,2);{var M=_=>{{let w=D(()=>a(s)?i():"读取能力清单…"),U=D(()=>!a(s));Ei(_,{get id(){return e.id},get options(){return a(y)},get placeholder(){return a(w)},triggerClass:"w-full font-mono",get disabled(){return a(U)},get value(){return r()},set value(Q){r(Q)}})}},C=_=>{var w=js(),U=v(w);xt(U),ct(U,"spellcheck",!1),ho(U,se=>p(u,se),()=>a(u));var Q=h(U,2);{let se=D(()=>!a(s));Ze(Q,{variant:"outline",size:"icon",onclick:()=>p(d,"pick"),"aria-label":"从列表选择能力",title:"从列表选择能力",get disabled(){return a(se)},children:(he,ue)=>{Ii(he,{class:"size-4","aria-hidden":"true"})},$$slots:{default:!0}})}g(w),fe(()=>ct(U,"id",e.id)),bt(U,r),c(_,w)};P(k,_=>{a(d)==="pick"?_(M):_(C,-1)})}var N=h(k,2);{var F=_=>{var w=Hs();c(_,w)};P(N,_=>{a(l)&&_(F)})}g(m),c(t,m),Fe()}const qs=t=>{let{state:e}=t,n=e.doc.lineAt(e.selection.main.from),r=Lr(t.state,n.from);return r.line?Ws(t):r.block?Ys(t):!1};function Tr(t,e){return({state:n,dispatch:r})=>{if(n.readOnly)return!1;let o=t(e,n);return o?(r(n.update(o)),!0):!1}}const Ws=Tr(ea,0),Zs=Tr(Po,0),Ys=Tr((t,e)=>Po(t,e,Qs(e)),0);function Lr(t,e){let n=t.languageDataAt("commentTokens",e,1);return n.length?n[0]:{}}const _n=50;function Xs(t,{open:e,close:n},r,o){let i=t.sliceDoc(r-_n,r),s=t.sliceDoc(o,o+_n),l=/\s*$/.exec(i)[0].length,d=/^\s*/.exec(s)[0].length,u=i.length-l;if(i.slice(u-e.length,u)==e&&s.slice(d,d+n.length)==n)return{open:{pos:r-l,margin:l&&1},close:{pos:o+d,margin:d&&1}};let f,y;o-r<=2*_n?f=y=t.sliceDoc(r,o):(f=t.sliceDoc(r,r+_n),y=t.sliceDoc(o-_n,o));let m=/^\s*/.exec(f)[0].length,S=/\s*$/.exec(y)[0].length,k=y.length-S-n.length;return f.slice(m,m+e.length)==e&&y.slice(k,k+n.length)==n?{open:{pos:r+m+e.length,margin:/\s/.test(f.charAt(m+e.length))?1:0},close:{pos:o-S-n.length,margin:/\s/.test(y.charAt(k-1))?1:0}}:null}function Qs(t){let e=[];for(let n of t.selection.ranges){let r=t.doc.lineAt(n.from),o=n.to<=r.to?r:t.doc.lineAt(n.to);o.from>r.from&&o.from==n.to&&(o=n.to==r.to+1?r:t.doc.lineAt(n.to-1));let i=e.length-1;i>=0&&e[i].to>r.from?e[i].to=o.to:e.push({from:r.from+/^\s*/.exec(r.text)[0].length,to:o.to})}return e}function Po(t,e,n=e.selection.ranges){let r=n.map(i=>Lr(e,i.from).block);if(!r.every(i=>i))return null;let o=n.map((i,s)=>Xs(e,r[s],i.from,i.to));if(t!=2&&!o.every(i=>i))return{changes:e.changes(n.map((i,s)=>o[s]?[]:[{from:i.from,insert:r[s].open+" "},{from:i.to,insert:" "+r[s].close}]))};if(t!=1&&o.some(i=>i)){let i=[];for(let s=0,l;s<o.length;s++)if(l=o[s]){let d=r[s],{open:u,close:f}=l;i.push({from:u.pos-d.open.length,to:u.pos+u.margin},{from:f.pos-f.margin,to:f.pos+d.close.length})}return{changes:i}}return null}function ea(t,e,n=e.selection.ranges){let r=[],o=-1;e:for(let{from:i,to:s}of n){let l=r.length,d=1e9,u;for(let f=i;f<=s;){let y=e.doc.lineAt(f);if(u==null&&(u=Lr(e,y.from).line,!u))continue e;if(y.from>o&&(i==s||s>y.from)){o=y.from;let m=/^\s*/.exec(y.text)[0].length,S=m==y.length,k=y.text.slice(m,m+u.length)==u?m:-1;m<y.text.length&&m<d&&(d=m),r.push({line:y,comment:k,token:u,indent:m,empty:S,single:!1})}f=y.to+1}if(d<1e9)for(let f=l;f<r.length;f++)r[f].indent<r[f].line.text.length&&(r[f].indent=d);r.length==l+1&&(r[l].single=!0)}if(t!=2&&r.some(i=>i.comment<0&&(!i.empty||i.single))){let i=[];for(let{line:l,token:d,indent:u,empty:f,single:y}of r)(y||!f)&&i.push({from:l.from+u,insert:d+" "});let s=e.changes(i);return{changes:s,selection:e.selection.map(s,1)}}else if(t!=1&&r.some(i=>i.comment>=0)){let i=[];for(let{line:s,comment:l,token:d}of r)if(l>=0){let u=s.from+l,f=u+d.length;s.text[f-s.from]==" "&&f++,i.push({from:u,to:f})}return{changes:i}}return null}const br=po.define(),ta=po.define(),na=Sr.define(),Mo=Sr.define({combine(t){return go(t,{minDepth:100,newGroupDelay:500,joinToEvent:(e,n)=>n},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,n)=>(r,o)=>e(r,o)||n(r,o)})}}),Do=mo.define({create(){return ut.empty},update(t,e){let n=e.state.facet(Mo),r=e.annotation(br);if(r){let d=Ee.fromTransaction(e,r.selection),u=r.side,f=u==0?t.undone:t.done;return d?f=Jn(f,f.length,n.minDepth,d):f=Lo(f,e.startState.selection),new ut(u==0?r.rest:f,u==0?f:r.rest)}let o=e.annotation(ta);if((o=="full"||o=="before")&&(t=t.isolate()),e.annotation(ar.addToHistory)===!1)return e.changes.empty?t:t.addMapping(e.changes.desc);let i=Ee.fromTransaction(e),s=e.annotation(ar.time),l=e.annotation(ar.userEvent);return i?t=t.addChanges(i,s,l,n,e):e.selection&&(t=t.addSelection(e.startState.selection,s,l,n.newGroupDelay)),(o=="full"||o=="after")&&(t=t.isolate()),t},toJSON(t){return{done:t.done.map(e=>e.toJSON()),undone:t.undone.map(e=>e.toJSON())}},fromJSON(t){return new ut(t.done.map(Ee.fromJSON),t.undone.map(Ee.fromJSON))}});function ra(t={}){return[Do,Mo.of(t),He.domEventHandlers({beforeinput(e,n){let r=e.inputType=="historyUndo"?Bo:e.inputType=="historyRedo"?_r:null;return r?(e.preventDefault(),r(n)):!1}})]}function jn(t,e){return function({state:n,dispatch:r}){if(!e&&n.readOnly)return!1;let o=n.field(Do,!1);if(!o)return!1;let i=o.pop(t,n,e);return i?(r(i),!0):!1}}const Bo=jn(0,!1),_r=jn(1,!1),oa=jn(0,!0),ia=jn(1,!0);class Ee{constructor(e,n,r,o,i){this.changes=e,this.effects=n,this.mapped=r,this.startSelection=o,this.selectionsAfter=i}setSelAfter(e){return new Ee(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,n,r;return{changes:(e=this.changes)===null||e===void 0?void 0:e.toJSON(),mapped:(n=this.mapped)===null||n===void 0?void 0:n.toJSON(),startSelection:(r=this.startSelection)===null||r===void 0?void 0:r.toJSON(),selectionsAfter:this.selectionsAfter.map(o=>o.toJSON())}}static fromJSON(e){return new Ee(e.changes&&$i.fromJSON(e.changes),[],e.mapped&&Ni.fromJSON(e.mapped),e.startSelection&&X.fromJSON(e.startSelection),e.selectionsAfter.map(X.fromJSON))}static fromTransaction(e,n){let r=je;for(let o of e.startState.facet(na)){let i=o(e);i.length&&(r=r.concat(i))}return!r.length&&e.changes.empty?null:new Ee(e.changes.invert(e.startState.doc),r,void 0,n||e.startState.selection,je)}static selection(e){return new Ee(void 0,je,void 0,void 0,e)}}function Jn(t,e,n,r){let o=e+1>n+20?e-n-1:0,i=t.slice(o,e);return i.push(r),i}function sa(t,e){let n=[],r=!1;return t.iterChangedRanges((o,i)=>n.push(o,i)),e.iterChangedRanges((o,i,s,l)=>{for(let d=0;d<n.length;){let u=n[d++],f=n[d++];l>=u&&s<=f&&(r=!0)}}),r}function aa(t,e){return t.ranges.length==e.ranges.length&&t.ranges.filter((n,r)=>n.empty!=e.ranges[r].empty).length===0}function To(t,e){return t.length?e.length?t.concat(e):t:e}const je=[],la=200;function Lo(t,e){if(t.length){let n=t[t.length-1],r=n.selectionsAfter.slice(Math.max(0,n.selectionsAfter.length-la));return r.length&&r[r.length-1].eq(e)?t:(r.push(e),Jn(t,t.length-1,1e9,n.setSelAfter(r)))}else return[Ee.selection([e])]}function da(t){let e=t[t.length-1],n=t.slice();return n[t.length-1]=e.setSelAfter(e.selectionsAfter.slice(0,e.selectionsAfter.length-1)),n}function ur(t,e){if(!t.length)return t;let n=t.length,r=je;for(;n;){let o=ca(t[n-1],e,r);if(o.changes&&!o.changes.empty||o.effects.length){let i=t.slice(0,n);return i[n-1]=o,i}else e=o.mapped,n--,r=o.selectionsAfter}return r.length?[Ee.selection(r)]:je}function ca(t,e,n){let r=To(t.selectionsAfter.length?t.selectionsAfter.map(l=>l.map(e)):je,n);if(!t.changes)return Ee.selection(r);let o=t.changes.map(e),i=e.mapDesc(t.changes,!0),s=t.mapped?t.mapped.composeDesc(i):i;return new Ee(o,dn.mapEffects(t.effects,e),s,t.startSelection.map(i),r)}const ua=/^(input\.type|delete)($|\.)/;class ut{constructor(e,n,r=0,o=void 0){this.done=e,this.undone=n,this.prevTime=r,this.prevUserEvent=o}isolate(){return this.prevTime?new ut(this.done,this.undone):this}addChanges(e,n,r,o,i){let s=this.done,l=s[s.length-1];return l&&l.changes&&!l.changes.empty&&e.changes&&(!r||ua.test(r))&&(!l.selectionsAfter.length&&n-this.prevTime<o.newGroupDelay&&o.joinToEvent(i,sa(l.changes,e.changes))||r=="input.type.compose")?s=Jn(s,s.length-1,o.minDepth,new Ee(e.changes.compose(l.changes),To(dn.mapEffects(e.effects,l.changes),l.effects),l.mapped,l.startSelection,je)):s=Jn(s,s.length,o.minDepth,e),new ut(s,je,n,r)}addSelection(e,n,r,o){let i=this.done.length?this.done[this.done.length-1].selectionsAfter:je;return i.length>0&&n-this.prevTime<o&&r==this.prevUserEvent&&r&&/^select($|\.)/.test(r)&&aa(i[i.length-1],e)?this:new ut(Lo(this.done,e),this.undone,n,r)}addMapping(e){return new ut(ur(this.done,e),ur(this.undone,e),this.prevTime,this.prevUserEvent)}pop(e,n,r){let o=e==0?this.done:this.undone;if(o.length==0)return null;let i=o[o.length-1],s=i.selectionsAfter[0]||(i.startSelection?i.startSelection.map(i.changes.invertedDesc,1):n.selection);if(r&&i.selectionsAfter.length)return n.update({selection:i.selectionsAfter[i.selectionsAfter.length-1],annotations:br.of({side:e,rest:da(o),selection:s}),userEvent:e==0?"select.undo":"select.redo",scrollIntoView:!0});if(i.changes){let l=o.length==1?je:o.slice(0,o.length-1);return i.mapped&&(l=ur(l,i.mapped)),n.update({changes:i.changes,selection:i.startSelection,effects:i.effects,annotations:br.of({side:e,rest:l,selection:s}),filter:!1,userEvent:e==0?"undo":"redo",scrollIntoView:!0})}else return null}}ut.empty=new ut(je,je);const fa=[{key:"Mod-z",run:Bo,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:_r,preventDefault:!0},{linux:"Ctrl-Shift-z",run:_r,preventDefault:!0},{key:"Mod-u",run:oa,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:ia,preventDefault:!0}];function cn(t,e){return X.create(t.ranges.map(e),t.mainIndex)}function tt(t,e){return t.update({selection:e,scrollIntoView:!0,userEvent:"select"})}function nt({state:t,dispatch:e},n){let r=cn(t.selection,n);return r.eq(t.selection,!0)?!1:(e(tt(t,r)),!0)}function Hn(t,e){return X.cursor(e?t.to:t.from)}function Ro(t,e){return nt(t,n=>n.empty?t.moveByChar(n,e):Hn(n,e))}function Ce(t){return t.textDirectionAt(t.state.selection.main.head)==Fi.LTR}const Oo=t=>Ro(t,!Ce(t)),Eo=t=>Ro(t,Ce(t));function Io(t,e){return nt(t,n=>n.empty?t.moveByGroup(n,e):Hn(n,e))}const ha=t=>Io(t,!Ce(t)),ma=t=>Io(t,Ce(t));function ga(t,e,n){if(e.type.prop(n))return!0;let r=e.to-e.from;return r&&(r>2||/[^\s,.;:]/.test(t.sliceDoc(e.from,e.to)))||e.firstChild}function Gn(t,e,n){let r=Cr(t).resolveInner(e.head),o=n?pr.closedBy:pr.openedBy;for(let d=e.head;;){let u=n?r.childAfter(d):r.childBefore(d);if(!u)break;ga(t,u,o)?r=u:d=n?u.to:u.from}let i=r.type.prop(o),s,l;return i&&(s=n?en(t,r.from,1):en(t,r.to,-1))&&s.matched?l=n?s.end.to:s.end.from:l=n?r.to:r.from,X.cursor(l,n?-1:1)}const va=t=>nt(t,e=>Gn(t.state,e,!Ce(t))),pa=t=>nt(t,e=>Gn(t.state,e,Ce(t)));function zo(t,e){return nt(t,n=>{if(!n.empty)return Hn(n,e);let r=t.moveVertically(n,e);return r.head!=n.head?r:t.moveToLineBoundary(n,e)})}const $o=t=>zo(t,!1),No=t=>zo(t,!0);function Fo(t){let e=t.scrollDOM.clientHeight<t.scrollDOM.scrollHeight-2,n=0,r=0,o;if(e){for(let i of t.state.facet(He.scrollMargins)){let s=i(t);s?.top&&(n=Math.max(s?.top,n)),s?.bottom&&(r=Math.max(s?.bottom,r))}o=t.scrollDOM.clientHeight-n-r}else o=(t.dom.ownerDocument.defaultView||window).innerHeight;return{marginTop:n,marginBottom:r,selfScroll:e,height:Math.max(t.defaultLineHeight,o-5)}}function Vo(t,e){let n=Fo(t),{state:r}=t,o=cn(r.selection,s=>s.empty?t.moveVertically(s,e,n.height):Hn(s,e));if(o.eq(r.selection))return!1;let i;if(n.selfScroll){let s=t.coordsAtPos(r.selection.main.head),l=t.scrollDOM.getBoundingClientRect(),d=l.top+n.marginTop,u=l.bottom-n.marginBottom;s&&s.top>d&&s.bottom<u&&(i=He.scrollIntoView(o.main.head,{y:"start",yMargin:s.top-d}))}return t.dispatch(tt(r,o),{effects:i}),!0}const Hr=t=>Vo(t,!1),yr=t=>Vo(t,!0);function Bt(t,e,n){let r=t.lineBlockAt(e.head),o=t.moveToLineBoundary(e,n);if(o.head==e.head&&o.head!=(n?r.to:r.from)&&(o=t.moveToLineBoundary(e,n,!1)),!n&&o.head==r.from&&r.length){let i=/^\s*/.exec(t.state.sliceDoc(r.from,Math.min(r.from+100,r.to)))[0].length;i&&e.head!=r.from+i&&(o=X.cursor(r.from+i))}return o}const xa=t=>nt(t,e=>Bt(t,e,!0)),ba=t=>nt(t,e=>Bt(t,e,!1)),_a=t=>nt(t,e=>Bt(t,e,!Ce(t))),ya=t=>nt(t,e=>Bt(t,e,Ce(t))),ka=t=>nt(t,e=>X.cursor(t.lineBlockAt(e.head).from,1)),wa=t=>nt(t,e=>X.cursor(t.lineBlockAt(e.head).to,-1));function Sa(t,e,n){let r=!1,o=cn(t.selection,i=>{let s=en(t,i.head,-1)||en(t,i.head,1)||i.head>0&&en(t,i.head-1,1)||i.head<t.doc.length&&en(t,i.head+1,-1);if(!s||!s.end)return i;r=!0;let l=s.start.from==i.head?s.end.to:s.end.from;return X.cursor(l)});return r?(e(tt(t,o)),!0):!1}const Aa=({state:t,dispatch:e})=>Sa(t,e);function Ge(t,e,n){let r=cn(t.state.selection,o=>{o.undirectional&&o.head>=o.anchor!=e&&(o=X.range(o.head,o.anchor));let i=n(o);return X.range(o.anchor,i.head,i.goalColumn,i.bidiLevel||void 0,i.assoc)});return r.eq(t.state.selection)?!1:(t.dispatch(tt(t.state,r)),!0)}function Jo(t,e){return Ge(t,e,n=>t.moveByChar(n,e))}const Uo=t=>Jo(t,!Ce(t)),jo=t=>Jo(t,Ce(t));function Ho(t,e){return Ge(t,e,n=>t.moveByGroup(n,e))}const Ca=t=>Ho(t,!Ce(t)),Pa=t=>Ho(t,Ce(t)),Ma=t=>{let e=!Ce(t);return Ge(t,e,n=>Gn(t.state,n,e))},Da=t=>{let e=Ce(t);return Ge(t,e,n=>Gn(t.state,n,e))};function Go(t,e){return Ge(t,e,n=>t.moveVertically(n,e))}const Ko=t=>Go(t,!1),qo=t=>Go(t,!0);function Wo(t,e){return Ge(t,e,n=>t.moveVertically(n,e,Fo(t).height))}const Gr=t=>Wo(t,!1),Kr=t=>Wo(t,!0),Ba=t=>Ge(t,!0,e=>Bt(t,e,!0)),Ta=t=>Ge(t,!1,e=>Bt(t,e,!1)),La=t=>{let e=!Ce(t);return Ge(t,e,n=>Bt(t,n,e))},Ra=t=>{let e=Ce(t);return Ge(t,e,n=>Bt(t,n,e))},Oa=t=>Ge(t,!1,e=>X.cursor(t.lineBlockAt(e.head).from)),Ea=t=>Ge(t,!0,e=>X.cursor(t.lineBlockAt(e.head).to)),qr=({state:t,dispatch:e})=>(e(tt(t,{anchor:0})),!0),Wr=({state:t,dispatch:e})=>(e(tt(t,{anchor:t.doc.length})),!0),Zr=({state:t,dispatch:e})=>(e(tt(t,{anchor:t.selection.main.anchor,head:0})),!0),Yr=({state:t,dispatch:e})=>(e(tt(t,{anchor:t.selection.main.anchor,head:t.doc.length})),!0),Ia=({state:t,dispatch:e})=>(e(t.update({selection:{anchor:0,head:t.doc.length},userEvent:"select"})),!0),za=({state:t,dispatch:e})=>{let n=Kn(t).map(({from:r,to:o})=>X.undirectionalRange(r,Math.min(o+1,t.doc.length)));return e(t.update({selection:X.create(n),userEvent:"select"})),!0},$a=({state:t,dispatch:e})=>{let n=cn(t.selection,r=>{let o=Cr(t),i=o.resolveStack(r.from,1);if(r.empty){let s=o.resolveStack(r.from,-1);s.node.from>=i.node.from&&s.node.to<=i.node.to&&(i=s)}for(let s=i;s;s=s.next){let{node:l}=s;if((l.from<r.from&&l.to>=r.to||l.to>r.to&&l.from<=r.from)&&s.next)return X.undirectionalRange(l.from,l.to)}return r});return n.eq(t.selection)?!1:(e(tt(t,n)),!0)};function Zo(t,e){let{state:n}=t,r=n.selection,o=n.selection.ranges.slice();for(let i of n.selection.ranges){let s=n.doc.lineAt(i.head);if(e?s.to<t.state.doc.length:s.from>0)for(let l=i;;){let d=t.moveVertically(l,e);if(d.head<s.from||d.head>s.to){o.some(u=>u.head==d.head)||o.push(d);break}else{if(d.head==l.head)break;l=d}}}return o.length==r.ranges.length?!1:(t.dispatch(tt(n,X.create(o,o.length-1))),!0)}const Na=t=>Zo(t,!1),Fa=t=>Zo(t,!0),Va=({state:t,dispatch:e})=>{let n=t.selection,r=null;return n.ranges.length>1?r=X.create([n.main]):n.main.empty||(r=X.create([X.cursor(n.main.head)])),r?(e(tt(t,r)),!0):!1};function An(t,e){if(t.state.readOnly)return!1;let n="delete.selection",{state:r}=t,o=r.changeByRange(i=>{let{from:s,to:l}=i;if(s==l){let d=e(i);d<s?(n="delete.backward",d=En(t,d,!1)):d>s&&(n="delete.forward",d=En(t,d,!0)),s=Math.min(s,d),l=Math.max(l,d)}else s=En(t,s,!1),l=En(t,l,!0);return s==l?{range:i}:{changes:{from:s,to:l},range:X.cursor(s,s<i.head?-1:1)}});return o.changes.empty?!1:(t.dispatch(r.update(o,{scrollIntoView:!0,userEvent:n,effects:n=="delete.selection"?He.announce.of(r.phrase("Selection deleted")):void 0})),!0)}function En(t,e,n){if(t instanceof He)for(let r of t.state.facet(He.atomicRanges).map(o=>o(t)))r.between(e,e,(o,i)=>{o<e&&i>e&&(e=n?i:o)});return e}const Yo=(t,e,n)=>An(t,r=>{let o=r.from,{state:i}=t,s=i.doc.lineAt(o),l,d;if(n&&!e&&o>s.from&&o<s.from+200&&!/[^ \t]/.test(l=s.text.slice(0,o-s.from))){if(l[l.length-1]==" ")return o-1;let u=Ar(l,i.tabSize),f=u%xr(i)||xr(i);for(let y=0;y<f&&l[l.length-1-y]==" ";y++)o--;d=o}else d=Sn(s.text,o-s.from,e,e)+s.from,d==o&&s.number!=(e?i.doc.lines:1)?d+=e?1:-1:!e&&/[\ufe00-\ufe0f]/.test(s.text.slice(d-s.from,o-s.from))&&(d=Sn(s.text,d-s.from,!1,!1)+s.from);return d}),kr=t=>Yo(t,!1,!0),Xo=t=>Yo(t,!0,!1),Qo=(t,e)=>An(t,n=>{let r=n.head,{state:o}=t,i=o.doc.lineAt(r),s=o.charCategorizer(r);for(let l=null;;){if(r==(e?i.to:i.from)){r==n.head&&i.number!=(e?o.doc.lines:1)&&(r+=e?1:-1);break}let d=Sn(i.text,r-i.from,e)+i.from,u=i.text.slice(Math.min(r,d)-i.from,Math.max(r,d)-i.from),f=s(u);if(l!=null&&f!=l)break;(u!=" "||r!=n.head)&&(l=f),r=d}return r}),ei=t=>Qo(t,!1),Ja=t=>Qo(t,!0),Ua=t=>An(t,e=>{let n=t.lineBlockAt(e.head).to;return e.head<n?n:Math.min(t.state.doc.length,e.head+1)}),ja=t=>An(t,e=>{let n=t.moveToLineBoundary(e,!1).head;return e.head>n?n:Math.max(0,e.head-1)}),Ha=t=>An(t,e=>{let n=t.moveToLineBoundary(e,!0).head;return e.head<n?n:Math.min(t.state.doc.length,e.head+1)}),Ga=({state:t,dispatch:e})=>{if(t.readOnly)return!1;let n=t.changeByRange(r=>({changes:{from:r.from,to:r.to,insert:bo.of(["",""])},range:X.cursor(r.from)}));return e(t.update(n,{scrollIntoView:!0,userEvent:"input"})),!0},Ka=({state:t,dispatch:e})=>{if(t.readOnly)return!1;let n=t.changeByRange(r=>{if(!r.empty||r.from==0||r.from==t.doc.length)return{range:r};let o=r.from,i=t.doc.lineAt(o),s=o==i.from?o-1:Sn(i.text,o-i.from,!1)+i.from,l=o==i.to?o+1:Sn(i.text,o-i.from,!0)+i.from;return{changes:{from:s,to:l,insert:t.doc.slice(o,l).append(t.doc.slice(s,o))},range:X.cursor(l)}});return n.changes.empty?!1:(e(t.update(n,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function Kn(t){let e=[],n=-1;for(let r of t.selection.ranges){let o=t.doc.lineAt(r.from),i=t.doc.lineAt(r.to);if(!r.empty&&r.to==i.from&&(i=t.doc.lineAt(r.to-1)),n>=o.number){let s=e[e.length-1];s.to=i.to,s.ranges.push(r)}else e.push({from:o.from,to:i.to,ranges:[r]});n=i.number+1}return e}function ti(t,e,n){if(t.readOnly)return!1;let r=[],o=[];for(let i of Kn(t)){if(n?i.to==t.doc.length:i.from==0)continue;let s=t.doc.lineAt(n?i.to+1:i.from-1),l=s.length+1;if(n){r.push({from:i.to,to:s.to},{from:i.from,insert:s.text+t.lineBreak});for(let d of i.ranges)o.push(X.range(Math.min(t.doc.length,d.anchor+l),Math.min(t.doc.length,d.head+l)))}else{r.push({from:s.from,to:i.from},{from:i.to,insert:t.lineBreak+s.text});for(let d of i.ranges)o.push(X.range(d.anchor-l,d.head-l))}}return r.length?(e(t.update({changes:r,scrollIntoView:!0,selection:X.create(o,t.selection.mainIndex),userEvent:"move.line"})),!0):!1}const qa=({state:t,dispatch:e})=>ti(t,e,!1),Wa=({state:t,dispatch:e})=>ti(t,e,!0);function ni(t,e,n){if(t.readOnly)return!1;let r=[];for(let i of Kn(t))n?r.push({from:i.from,insert:t.doc.slice(i.from,i.to)+t.lineBreak}):r.push({from:i.to,insert:t.lineBreak+t.doc.slice(i.from,i.to)});let o=t.changes(r);return e(t.update({changes:o,selection:t.selection.map(o,n?1:-1),scrollIntoView:!0,userEvent:"input.copyline"})),!0}const Za=({state:t,dispatch:e})=>ni(t,e,!1),Ya=({state:t,dispatch:e})=>ni(t,e,!0),Xa=t=>{if(t.state.readOnly)return!1;let{state:e}=t,n=e.changes(Kn(e).map(({from:o,to:i})=>(o>0?o--:i<e.doc.length&&i++,{from:o,to:i}))),r=cn(e.selection,o=>{let i;if(t.lineWrapping){let s=t.lineBlockAt(o.head),l=t.coordsAtPos(o.head,o.assoc||1);l&&(i=s.bottom+t.documentTop-l.bottom+t.defaultLineHeight/2)}return t.moveVertically(o,!0,i)}).map(n);return t.dispatch({changes:n,selection:r,scrollIntoView:!0,userEvent:"delete.line"}),!0};function Qa(t,e){if(/\(\)|\[\]|\{\}/.test(t.sliceDoc(e-1,e+1)))return{from:e,to:e};let n=Cr(t).resolveInner(e),r=n.childBefore(e),o=n.childAfter(e),i;return r&&o&&r.to<=e&&o.from>=e&&(i=r.type.prop(pr.closedBy))&&i.indexOf(o.name)>-1&&t.doc.lineAt(r.to).from==t.doc.lineAt(o.from).from&&!/\S/.test(t.sliceDoc(r.to,o.from))?{from:r.to,to:o.from}:null}const Xr=ri(!1),el=ri(!0);function ri(t){return({state:e,dispatch:n})=>{if(e.readOnly)return!1;let r=e.changeByRange(o=>{let{from:i,to:s}=o,l=e.doc.lineAt(i),d=!t&&i==s&&Qa(e,i);t&&(i=s=(s<=l.to?l:e.doc.lineAt(s)).to);let u=new vo(e,{simulateBreak:i,simulateDoubleBreak:!!d}),f=xo(u,i);for(f==null&&(f=Ar(/^\s*/.exec(e.doc.lineAt(i).text)[0],e.tabSize));s<l.to&&/\s/.test(l.text[s-l.from]);)s++;d?{from:i,to:s}=d:i>l.from&&i<l.from+100&&!/\S/.test(l.text.slice(0,i))&&(i=l.from);let y=["",Fn(e,f)];return d&&y.push(Fn(e,u.lineIndent(l.from,-1))),{changes:{from:i,to:s,insert:bo.of(y)},range:X.cursor(i+1+y[1].length)}});return n(e.update(r,{scrollIntoView:!0,userEvent:"input"})),!0}}function Rr(t,e){let n=-1;return t.changeByRange(r=>{let o=[];for(let s=r.from;s<=r.to;){let l=t.doc.lineAt(s);l.number>n&&(r.empty||r.to>l.from)&&(e(l,o,r),n=l.number),s=l.to+1}let i=t.changes(o);return{changes:o,range:X.range(i.mapPos(r.anchor,1),i.mapPos(r.head,1))}})}const tl=({state:t,dispatch:e})=>{if(t.readOnly)return!1;let n=Object.create(null),r=new vo(t,{overrideIndentation:i=>{let s=n[i];return s??-1}}),o=Rr(t,(i,s,l)=>{let d=xo(r,i.from);if(d==null)return;/\S/.test(i.text)||(d=0);let u=/^\s*/.exec(i.text)[0],f=Fn(t,d);(u!=f||l.from<i.from+u.length)&&(n[i.from]=d,s.push({from:i.from,to:i.from+u.length,insert:f}))});return o.changes.empty||e(t.update(o,{userEvent:"indent"})),!0},nl=({state:t,dispatch:e})=>t.readOnly?!1:(e(t.update(Rr(t,(n,r)=>{r.push({from:n.from,insert:t.facet(Vi)})}),{userEvent:"input.indent"})),!0),rl=({state:t,dispatch:e})=>t.readOnly?!1:(e(t.update(Rr(t,(n,r)=>{let o=/^\s*/.exec(n.text)[0];if(!o)return;let i=Ar(o,t.tabSize),s=0,l=Fn(t,Math.max(0,i-xr(t)));for(;s<o.length&&s<l.length&&o.charCodeAt(s)==l.charCodeAt(s);)s++;r.push({from:n.from+s,to:n.from+o.length,insert:l.slice(s)})}),{userEvent:"delete.dedent"})),!0),ol=t=>(t.setTabFocusMode(),!0),il=[{key:"Ctrl-b",run:Oo,shift:Uo,preventDefault:!0},{key:"Ctrl-f",run:Eo,shift:jo},{key:"Ctrl-p",run:$o,shift:Ko},{key:"Ctrl-n",run:No,shift:qo},{key:"Ctrl-a",run:ka,shift:Oa},{key:"Ctrl-e",run:wa,shift:Ea},{key:"Ctrl-d",run:Xo},{key:"Ctrl-h",run:kr},{key:"Ctrl-k",run:Ua},{key:"Ctrl-Alt-h",run:ei},{key:"Ctrl-o",run:Ga},{key:"Ctrl-t",run:Ka},{key:"Ctrl-v",run:yr}],sl=[{key:"ArrowLeft",run:Oo,shift:Uo,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:ha,shift:Ca,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:_a,shift:La,preventDefault:!0},{key:"ArrowRight",run:Eo,shift:jo,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:ma,shift:Pa,preventDefault:!0},{mac:"Cmd-ArrowRight",run:ya,shift:Ra,preventDefault:!0},{key:"ArrowUp",run:$o,shift:Ko,preventDefault:!0},{mac:"Cmd-ArrowUp",run:qr,shift:Zr},{mac:"Ctrl-ArrowUp",run:Hr,shift:Gr},{key:"ArrowDown",run:No,shift:qo,preventDefault:!0},{mac:"Cmd-ArrowDown",run:Wr,shift:Yr},{mac:"Ctrl-ArrowDown",run:yr,shift:Kr},{key:"PageUp",run:Hr,shift:Gr},{key:"PageDown",run:yr,shift:Kr},{key:"Home",run:ba,shift:Ta,preventDefault:!0},{key:"Mod-Home",run:qr,shift:Zr},{key:"End",run:xa,shift:Ba,preventDefault:!0},{key:"Mod-End",run:Wr,shift:Yr},{key:"Enter",run:Xr,shift:Xr},{key:"Mod-a",run:Ia},{key:"Backspace",run:kr,shift:kr,preventDefault:!0},{key:"Delete",run:Xo,preventDefault:!0},{key:"Mod-Backspace",mac:"Alt-Backspace",run:ei,preventDefault:!0},{key:"Mod-Delete",mac:"Alt-Delete",run:Ja,preventDefault:!0},{mac:"Mod-Backspace",run:ja,preventDefault:!0},{mac:"Mod-Delete",run:Ha,preventDefault:!0}].concat(il.map(t=>({mac:t.key,run:t.run,shift:t.shift}))),al=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:va,shift:Ma},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:pa,shift:Da},{key:"Alt-ArrowUp",run:qa},{key:"Shift-Alt-ArrowUp",run:Za},{key:"Alt-ArrowDown",run:Wa},{key:"Shift-Alt-ArrowDown",run:Ya},{key:"Mod-Alt-ArrowUp",run:Na},{key:"Mod-Alt-ArrowDown",run:Fa},{key:"Escape",run:Va},{key:"Mod-Enter",run:el},{key:"Alt-l",mac:"Ctrl-l",run:za},{key:"Mod-i",run:$a,preventDefault:!0},{key:"Mod-[",run:rl},{key:"Mod-]",run:nl},{key:"Mod-Alt-\\",run:tl},{key:"Shift-Mod-k",run:Xa},{key:"Shift-Mod-\\",run:Aa},{key:"Mod-/",run:qs},{key:"Alt-A",mac:"Ctrl-A",run:Zs},{key:"Ctrl-m",mac:"Shift-Alt-m",run:ol}].concat(sl);class Qr{constructor(e,n,r){this.from=e,this.to=n,this.diagnostic=r}}class Ft{constructor(e,n,r){this.diagnostics=e,this.panel=n,this.selected=r}static init(e,n,r){let o=r.facet(ft).markerFilter;o&&(e=o(e,r));let i=e.slice().sort((S,k)=>S.from-k.from||S.to-k.to),s=new Hi,l=[],d=0,u=r.doc.iter(),f=0,y=r.doc.length;for(let S=0;;){let k=S==i.length?null:i[S];if(!k&&!l.length)break;let M,C;if(l.length)M=d,C=l.reduce((_,w)=>Math.min(_,w.to),k&&k.from>M?k.from:1e8);else{if(M=k.from,M>y)break;C=k.to,l.push(k),S++}for(;S<i.length;){let _=i[S];if(_.from==M&&(_.to>_.from||_.to==M))l.push(_),S++,C=Math.min(_.to,C);else{C=Math.min(_.from,C);break}}C=Math.min(C,y);let N=!1;if(l.some(_=>_.from==M&&(_.to==C||C==y))&&(N=M==C,!N&&C-M<10)){let _=M-(f+u.value.length);_>0&&(u.next(_),f=M);for(let w=M;;){if(w>=C){N=!0;break}if(!u.lineBreak&&f+u.value.length>w)break;w=f+u.value.length,f+=u.value.length,u.next()}}let F=yl(l);if(N)s.add(M,M,rn.widget({widget:new pl(F),diagnostics:l.slice()}));else{let _=l.reduce((w,U)=>U.markClass?w+" "+U.markClass:w,"");s.add(M,C,rn.mark({class:"cm-lintRange cm-lintRange-"+F+_,diagnostics:l.slice(),inclusiveEnd:l.some(w=>w.to>C)}))}if(d=C,d==y)break;for(let _=0;_<l.length;_++)l[_].to<=d&&l.splice(_--,1)}let m=s.finish();return new Ft(m,n,on(m))}}function on(t,e=null,n=0){let r=null;return t.between(n,1e9,(o,i,{spec:s})=>{if(!(e&&s.diagnostics.indexOf(e)<0))if(!r)r=new Qr(o,i,e||s.diagnostics[0]);else{if(s.diagnostics.indexOf(r.diagnostic)<0)return!1;r=new Qr(r.from,i,r.diagnostic)}}),r}function ll(t,e){let n=e.pos,r=e.end||n,o=t.state.facet(ft).hideOn(t,n,r);if(o!=null)return o;let i=t.startState.doc.lineAt(e.pos);return!!(t.effects.some(s=>s.is(Or))||t.changes.touchesRange(i.from,Math.max(i.to,r)))}function dl(t,e){return t.field(Ye,!1)?e:e.concat(dn.appendConfig.of(li))}function cl(t,e){return{effects:dl(t,[Or.of(e)])}}const Or=dn.define(),oi=dn.define(),ii=dn.define(),Ye=mo.define({create(){return new Ft(rn.none,null,null)},update(t,e){if(e.docChanged&&t.diagnostics.size){let n=t.diagnostics.map(e.changes),r=null,o=t.panel;if(t.selected){let i=e.changes.mapPos(t.selected.from,1);r=on(n,t.selected.diagnostic,i)||on(n,null,i)}!n.size&&o&&e.state.facet(ft).autoPanel&&(o=null),t=new Ft(n,o,r)}for(let n of e.effects)if(n.is(Or)){let r=e.state.facet(ft).autoPanel?n.value.length?Un.open:null:t.panel;t=Ft.init(n.value,r,e.state)}else n.is(oi)?t=new Ft(t.diagnostics,n.value?Un.open:null,t.selected):n.is(ii)&&(t=new Ft(t.diagnostics,t.panel,n.value));return t},provide:t=>[Ui.from(t,e=>e.panel),He.decorations.from(t,e=>e.diagnostics)]}),ul=rn.mark({class:"cm-lintRange cm-lintRange-active"});function fl(t,e,n){let{diagnostics:r}=t.state.field(Ye),o,i=-1,s=-1;r.between(e-(n<0?1:0),e+(n>0?1:0),(d,u,{spec:f})=>{if(e>=d&&e<=u&&(d==u||(e>d||n>0)&&(e<u||n<0)))return o=f.diagnostics,i=d,s=u,!1});let l=t.state.facet(ft).tooltipFilter;return o&&l&&(o=l(o,t.state)),o?{pos:i,end:s,above:!0,create(){return{dom:hl(t,o)}}}:null}function hl(t,e){return dt("ul",{class:"cm-tooltip-lint"},e.map(n=>ai(t,n,!1)))}const eo=t=>{let e=t.state.field(Ye,!1);return!e||!e.panel?!1:(t.dispatch({effects:oi.of(!1)}),!0)},ml=Ji.fromClass(class{constructor(t){this.view=t,this.timeout=-1,this.set=!0;let{delay:e}=t.state.facet(ft);this.lintTime=Date.now()+e,this.run=this.run.bind(this),this.timeout=setTimeout(this.run,e)}run(){clearTimeout(this.timeout);let t=Date.now();if(t<this.lintTime-10)this.timeout=setTimeout(this.run,this.lintTime-t);else{this.set=!1;let{state:e}=this.view,{sources:n}=e.facet(ft);n.length&&gl(n.map(r=>Promise.resolve(r(this.view))),r=>{this.view.state.doc==e.doc&&this.view.dispatch(cl(this.view.state,r.reduce((o,i)=>o.concat(i))))},r=>{Ki(this.view.state,r)})}}update(t){let e=t.state.facet(ft);(t.docChanged||e!=t.startState.facet(ft)||e.needsRefresh&&e.needsRefresh(t))&&(this.lintTime=Date.now()+e.delay,this.set||(this.set=!0,this.timeout=setTimeout(this.run,e.delay)))}force(){this.set&&(this.lintTime=Date.now(),this.run())}destroy(){clearTimeout(this.timeout)}});function gl(t,e,n){let r=[],o=-1;for(let i of t)i.then(s=>{r.push(s),clearTimeout(o),r.length==t.length?e(r):o=setTimeout(()=>e(r),200)},n)}const ft=Sr.define({combine(t){return{sources:t.map(e=>e.source).filter(e=>e!=null),...go(t.map(e=>e.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{delay:Math.max,markerFilter:to,tooltipFilter:to,needsRefresh:(e,n)=>e?n?r=>e(r)||n(r):e:n,hideOn:(e,n)=>e?n?(r,o,i)=>e(r,o,i)||n(r,o,i):e:n,autoPanel:(e,n)=>e||n})}}});function to(t,e){return t?e?(n,r)=>e(t(n,r),r):t:e}function vl(t,e={}){return[ft.of({source:t,config:e}),ml,li]}function si(t){let e=[];if(t)e:for(let{name:n}of t){for(let r=0;r<n.length;r++){let o=n[r];if(/[a-zA-Z]/.test(o)&&!e.some(i=>i.toLowerCase()==o.toLowerCase())){e.push(o);continue e}}e.push("")}return e}function ai(t,e,n){var r;let o=n?si(e.actions):[];return dt("li",{class:"cm-diagnostic cm-diagnostic-"+e.severity},dt("span",{class:"cm-diagnosticText"},e.renderMessage?e.renderMessage(t):e.message),(r=e.actions)===null||r===void 0?void 0:r.map((i,s)=>{let l=!1,d=S=>{if(S.preventDefault(),l)return;l=!0;let k=on(t.state.field(Ye).diagnostics,e);k&&i.apply(t,k.from,k.to)},{name:u}=i,f=o[s]?u.indexOf(o[s]):-1,y=f<0?u:[u.slice(0,f),dt("u",u.slice(f,f+1)),u.slice(f+1)],m=i.markClass?" "+i.markClass:"";return dt("button",{type:"button",class:"cm-diagnosticAction"+m,onclick:d,onmousedown:d,"aria-label":` Action: ${u}${f<0?"":` (access key "${o[s]})"`}.`},y)}),e.source&&dt("div",{class:"cm-diagnosticSource"},e.source))}class pl extends Gi{constructor(e){super(),this.sev=e}eq(e){return e.sev==this.sev}toDOM(){return dt("span",{class:"cm-lintPoint cm-lintPoint-"+this.sev})}}class no{constructor(e,n){this.diagnostic=n,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=ai(e,n,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}}class Un{constructor(e){this.view=e,this.items=[];let n=o=>{if(!(o.ctrlKey||o.altKey||o.metaKey)){if(o.keyCode==27)eo(this.view),this.view.focus();else if(o.keyCode==38||o.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(o.keyCode==40||o.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(o.keyCode==36)this.moveSelection(0);else if(o.keyCode==35)this.moveSelection(this.items.length-1);else if(o.keyCode==13)this.view.focus();else if(o.keyCode>=65&&o.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:i}=this.items[this.selectedIndex],s=si(i.actions);for(let l=0;l<s.length;l++)if(s[l].toUpperCase().charCodeAt(0)==o.keyCode){let d=on(this.view.state.field(Ye).diagnostics,i);d&&i.actions[l].apply(e,d.from,d.to)}}else return;o.preventDefault()}},r=o=>{for(let i=0;i<this.items.length;i++)this.items[i].dom.contains(o.target)&&this.moveSelection(i)};this.list=dt("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:n,onclick:r}),this.dom=dt("div",{class:"cm-panel-lint"},this.list,dt("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>eo(this.view)},"×")),this.update()}get selectedIndex(){let e=this.view.state.field(Ye).selected;if(!e)return-1;for(let n=0;n<this.items.length;n++)if(this.items[n].diagnostic==e.diagnostic)return n;return-1}update(){let{diagnostics:e,selected:n}=this.view.state.field(Ye),r=0,o=!1,i=null,s=new Set;for(e.between(0,this.view.state.doc.length,(l,d,{spec:u})=>{for(let f of u.diagnostics){if(s.has(f))continue;s.add(f);let y=-1,m;for(let S=r;S<this.items.length;S++)if(this.items[S].diagnostic==f){y=S;break}y<0?(m=new no(this.view,f),this.items.splice(r,0,m),o=!0):(m=this.items[y],y>r&&(this.items.splice(r,y-r),o=!0)),n&&m.diagnostic==n.diagnostic?m.dom.hasAttribute("aria-selected")||(m.dom.setAttribute("aria-selected","true"),i=m):m.dom.hasAttribute("aria-selected")&&m.dom.removeAttribute("aria-selected"),r++}});r<this.items.length&&!(this.items.length==1&&this.items[0].diagnostic.from<0);)o=!0,this.items.pop();this.items.length==0&&(this.items.push(new no(this.view,{from:-1,to:-1,severity:"info",message:this.view.state.phrase("No diagnostics")})),o=!0),i?(this.list.setAttribute("aria-activedescendant",i.id),this.view.requestMeasure({key:this,read:()=>({sel:i.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:l,panel:d})=>{let u=d.height/this.list.offsetHeight;l.top<d.top?this.list.scrollTop-=(d.top-l.top)/u:l.bottom>d.bottom&&(this.list.scrollTop+=(l.bottom-d.bottom)/u)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),o&&this.sync()}sync(){let e=this.list.firstChild;function n(){let r=e;e=r.nextSibling,r.remove()}for(let r of this.items)if(r.dom.parentNode==this.list){for(;e!=r.dom;)n();e=r.dom.nextSibling}else this.list.insertBefore(r.dom,e);for(;e;)n()}moveSelection(e){if(this.selectedIndex<0)return;let n=this.view.state.field(Ye),r=on(n.diagnostics,this.items[e].diagnostic);r&&this.view.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0,effects:ii.of(r)})}static open(e){return new Un(e)}}function xl(t,e='viewBox="0 0 40 40"'){return`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" ${e}>${encodeURIComponent(t)}</svg>')`}function In(t){return xl(`<path d="m0 2.5 l2 -1.5 l1 0 l2 1.5 l1 0" stroke="${t}" fill="none" stroke-width=".7"/>`,'width="6" height="3"')}const bl=He.baseTheme({".cm-diagnostic":{padding:"3px 6px 3px 8px",marginLeft:"-1px",display:"block",whiteSpace:"pre-wrap"},".cm-diagnostic-error":{borderLeft:"5px solid #d11"},".cm-diagnostic-warning":{borderLeft:"5px solid orange"},".cm-diagnostic-info":{borderLeft:"5px solid #999"},".cm-diagnostic-hint":{borderLeft:"5px solid #66d"},".cm-diagnosticAction":{font:"inherit",border:"none",padding:"2px 4px",backgroundColor:"#444",color:"white",borderRadius:"3px",marginLeft:"8px",cursor:"pointer"},".cm-diagnosticSource":{fontSize:"70%",opacity:.7},".cm-lintRange":{backgroundPosition:"left bottom",backgroundRepeat:"repeat-x",paddingBottom:"0.7px"},".cm-lintRange-error":{backgroundImage:In("#f11")},".cm-lintRange-warning":{backgroundImage:In("orange")},".cm-lintRange-info":{backgroundImage:In("#999")},".cm-lintRange-hint":{backgroundImage:In("#66d")},".cm-lintRange-active":{backgroundColor:"#ffdd9980"},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:"relative","&:after":{content:'""',position:"absolute",bottom:0,left:"-2px",borderLeft:"3px solid transparent",borderRight:"3px solid transparent",borderBottom:"4px solid #d11"}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:"orange"}},".cm-lintPoint-info":{"&:after":{borderBottomColor:"#999"}},".cm-lintPoint-hint":{"&:after":{borderBottomColor:"#66d"}},".cm-panel.cm-panel-lint":{position:"relative","& ul":{maxHeight:"100px",overflowY:"auto","& [aria-selected]":{backgroundColor:"#ddd","& u":{textDecoration:"underline"}},"&:focus [aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"},"& u":{textDecoration:"none"},padding:0,margin:0},"& [name=close]":{position:"absolute",top:"0",right:"2px",background:"inherit",border:"none",font:"inherit",padding:0,margin:0}},"&dark .cm-lintRange-active":{backgroundColor:"#86714a80"},"&dark .cm-panel.cm-panel-lint ul":{"& [aria-selected]":{backgroundColor:"#2e343e"}}});function _l(t){return t=="error"?4:t=="warning"?3:t=="info"?2:1}function yl(t){let e="hint",n=1;for(let r of t){let o=_l(r.severity);o>n&&(n=o,e=r.severity)}return e}const kl=ji(fl,{hideOn:ll}),li=[Ye,He.decorations.compute([Ye],t=>{let{selected:e,panel:n}=t.field(Ye);return!e||!n||e.from==e.to?rn.none:rn.set([ul.range(e.from,e.to)])}),kl,bl];var wl=A('<div style="--cm-bg: var(--background);"></div>');function di(t,e){Ne(e,!0);let n=B(e,"value",15,""),r=B(e,"placeholderText",3,"{}"),o=B(e,"minHeight",3,"min-h-24"),i=B(e,"invalid",3,!1),s=K(void 0),l=K(void 0);const d=vl(f=>{const y=f.state.doc;try{return JSON.parse(y.toString()),[]}catch(m){const S=m instanceof Error?m.message:String(m);return[{from:0,to:y.length,severity:"error",message:S}]}});zi(()=>{if(!a(s))return;const f=qi.create({doc:n(),extensions:[Wi(),Zi(),ra(),Yi.of([...al,...fa]),Xi(),Qi(),es(ts,{fallback:!0}),ns(r()),rs(),d,He.lineWrapping,He.updateListener.of(y=>{y.docChanged&&n(y.state.doc.toString())})]});p(l,new He({state:f,parent:a(s)}),!0)}),nn(()=>{a(l)&&n()!==a(l).state.doc.toString()&&a(l).dispatch({changes:{from:0,to:a(l).state.doc.length,insert:n()}})});var u=wl();ho(u,f=>p(s,f),()=>a(s)),fe(()=>{ct(u,"id",e.id),wn(u,1,`overflow-hidden rounded-md border bg-background ${o()??""} ${i()?"border-destructive":"border-input"}`,"svelte-b0o8hs")}),c(t,u),Fe()}var Sl=A("<!> 格式化",1),Al=A('<p class="text-xs text-destructive"> </p>'),Cl=A('<div><div class="mb-3 flex items-center gap-2"><span class="text-xs font-medium text-muted-foreground"> </span> <span class="flex-1"></span> <!></div> <div class="grid grid-cols-2 gap-3"><div class="col-span-2"><!></div> <div class="flex flex-col gap-1.5"><!> <input class="flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 font-mono" placeholder="留空沿用上层会话"/></div> <div class="flex flex-col gap-1.5"><!> <input class="flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 font-mono" placeholder="hooks/xxx.ts"/></div> <div class="col-span-2 flex flex-col gap-1.5"><div class="flex items-center justify-between"><!> <!></div> <!> <!></div></div></div>');function ro(t,e){Ne(e,!0);let n=B(e,"draft",7),r=B(e,"heading",3,"动作"),o=B(e,"removable",3,!1),i=B(e,"bordered",3,!0);const s=Math.random().toString(36).slice(2,8);function l(){const O=co(n().configText);if(O.error){n().configError=O.error;return}n().configText=O.formatted??"",n().configError=null}var d=Cl(),u=v(d),f=v(u),y=pe(f,!0),m=h(f,4);{var S=O=>{{let I=D(()=>`移除 ${r()}`);Ze(O,{variant:"ghost",size:"icon",class:"size-7",get onclick(){return e.onRemove},get"aria-label"(){return a(I)},title:"移除",children:(z,ce)=>{So(z,{class:"size-3.5","aria-hidden":"true"})},$$slots:{default:!0}})}};P(m,O=>{o()&&O(S)})}g(u);var k=h(u,2),M=v(k),C=v(M);{let O=D(()=>`${s}-cap`);Ks(C,{get id(){return a(O)},label:"能力 *",get value(){return n().capability},set value(I){n().capability=I}})}g(M);var N=h(M,2),F=v(N);{let O=D(()=>`${s}-session`);Re(F,{get for(){return a(O)},children:(I,z)=>{V();var ce=de("会话(可选)");c(I,ce)},$$slots:{default:!0}})}var _=h(F,2);xt(_),ct(_,"spellcheck",!1),g(N);var w=h(N,2),U=v(w);{let O=D(()=>`${s}-hook`);Re(U,{get for(){return a(O)},children:(I,z)=>{V();var ce=de("hook(可选)");c(I,ce)},$$slots:{default:!0}})}var Q=h(U,2);xt(Q),ct(Q,"spellcheck",!1),g(w);var se=h(w,2),he=v(se),ue=v(he);{let O=D(()=>`${s}-config`);Re(ue,{get for(){return a(O)},children:(I,z)=>{V();var ce=de("config(JSON,可选)");c(I,ce)},$$slots:{default:!0}})}var ee=h(ue,2);Ze(ee,{variant:"ghost",size:"sm",class:"h-6 px-2 text-xs",onclick:l,title:"格式化 JSON",children:(O,I)=>{var z=Sl(),ce=R(z);Ao(ce,{class:"size-3","aria-hidden":"true"}),V(),c(O,z)},$$slots:{default:!0}}),g(he);var re=h(he,2);{let O=D(()=>`${s}-config`),I=D(()=>n().configError!==null);di(re,{get id(){return a(O)},placeholderText:"{}",minHeight:"min-h-20",get invalid(){return a(I)},get value(){return n().configText},set value(z){n().configText=z}})}var b=h(re,2);{var E=O=>{var I=Al(),z=pe(I,!0);fe(()=>ne(z,n().configError)),c(O,I)};P(b,O=>{n().configError&&O(E)})}g(se),g(k),g(d),fe(()=>{wn(d,1,Nn(i()?"rounded-lg border bg-muted/20 p-3":"")),ne(y,r()),ct(_,"id",`${s}-session`),ct(Q,"id",`${s}-hook`)}),bt(_,()=>n().session,O=>n().session=O),bt(Q,()=>n().hook,O=>n().hook=O),c(t,d),Fe()}const pt=(t,e)=>{let n=()=>(e?.()).label,r=()=>(e?.()).value,o=mi(()=>gi((e?.()).mono,!1));var i=Pl(),s=v(i),l=pe(s,!0),d=h(s,2),u=pe(d,!0);g(i),fe(f=>{ne(l,n()),wn(d,1,f),ne(u,r())},[()=>Nn(kn("text-right",a(o)&&"font-mono"))]),c(t,i)},oo=(t,e)=>{let n=()=>(e?.()).index,r=()=>(e?.()).capability,o=()=>(e?.()).session,i=()=>(e?.()).hook,s=()=>(e?.()).config;var l=Bl(),d=v(l),u=v(d),f=pe(u,!0),y=h(u,2),m=pe(y,!0);g(d);var S=h(d,2),k=v(S);{var M=_=>{var w=Ml(),U=h(v(w),2),Q=pe(U,!0);g(w),fe(()=>ne(Q,o())),c(_,w)};P(k,_=>{o()&&_(M)})}var C=h(k,2);{var N=_=>{var w=Dl(),U=h(v(w),2),Q=pe(U,!0);g(w),fe(()=>ne(Q,i())),c(_,w)};P(C,_=>{i()&&_(N)})}var F=h(C,2);{let _=D(()=>s()??{});_o(F,{get value(){return a(_)},label:"config"})}g(S),g(l),fe(()=>{ne(f,n()),ne(m,r())}),c(t,l)};var Pl=A('<div class="flex items-start justify-between gap-3 px-3 py-2 text-xs"><span class="shrink-0 text-muted-foreground"> </span> <span> </span></div>'),Ml=A('<div class="flex items-center gap-2 text-xs"><span class="w-16 shrink-0 text-muted-foreground">会话</span> <span class="font-mono"> </span></div>'),Dl=A('<div class="flex items-center gap-2 text-xs"><span class="w-16 shrink-0 text-muted-foreground">hook</span> <span class="font-mono"> </span></div>'),Bl=A('<div class="rounded-lg border bg-background"><div class="flex items-center gap-2 border-b px-3 py-2"><span class="text-xs font-medium text-muted-foreground"> </span> <span class="font-mono text-xs"> </span></div> <div class="flex flex-col gap-1.5 px-3 py-2"><!> <!> <!></div></div>'),Tl=A('<span class="flex items-center gap-1.5 text-xs text-foreground"><!> 运行中</span>'),Ll=A('<span class="flex items-center gap-1.5 text-xs text-muted-foreground"><!> 已启用</span>'),Rl=A('<span class="flex items-center gap-1.5 text-xs text-muted-foreground"><!> 已停用</span>'),Ol=A('<div class="flex flex-col gap-1 overflow-hidden rounded-lg border bg-muted/40"><!> <!> <!> <!> <!> <!> <!> <!> <!></div>'),fr=A('<div class="flex items-center justify-between gap-2 rounded-lg border bg-background px-3 py-2"><!> <!></div>'),El=A('<div class="flex flex-col gap-1.5"><!> <input class="flex h-9 w-full rounded-md border border-input bg-background px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 font-mono" id="flow-session" placeholder="留空则无会话"/></div>'),Il=A('<div class="flex flex-col gap-1.5"><!> <input class="flex h-9 w-full rounded-md border border-input bg-background px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50" id="flow-title"/></div>'),zl=A('<div class="flex flex-col gap-1.5"><!> <input class="flex h-9 w-full rounded-md border border-input bg-background px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 font-mono" id="flow-symbol" placeholder="可选"/></div>'),$l=A('<div class="flex flex-col gap-1.5"><!> <input class="flex h-9 w-full rounded-md border border-input bg-background px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 font-mono" id="flow-maxruns" placeholder="留空无限制"/></div>'),Nl=A('<div class="flex flex-col gap-1.5"><!> <input class="flex h-9 w-full rounded-md border border-input bg-background px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 font-mono" id="flow-cron" placeholder="0 8 * * *"/></div> <div class="flex flex-col gap-1.5"><!> <input class="flex h-9 w-full rounded-md border border-input bg-background px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 font-mono" id="flow-interval" placeholder="每 N 秒"/></div>',1),Fl=A('<div class="flex flex-col gap-4"><section><span class="mb-3 block text-xs font-medium text-muted-foreground">开关</span> <div class="flex flex-col gap-2"><!> <!> <!></div></section> <section><span class="mb-3 block text-xs font-medium text-muted-foreground">字段</span> <div class="flex flex-col gap-3"><!> <!> <!> <!> <!></div></section></div>'),Vl=A('<section class="rounded-lg border bg-muted/20 p-3"><span class="mb-2 block text-xs font-medium text-muted-foreground">动作</span> <!></section>'),Jl=A('<p class="rounded-lg border border-dashed bg-background px-3 py-3 text-xs text-muted-foreground">暂无动作</p>'),io=A('<div class="flex flex-col gap-2"></div>'),Ul=A('<section class="rounded-lg border bg-muted/20 p-3"><div class="mb-2 flex items-center justify-between gap-2"><span class="text-xs font-medium text-muted-foreground">动作链</span> <span class="text-xs text-muted-foreground"> </span></div> <!></section>'),jl=A('<section class="rounded-lg border bg-muted/20 p-3"><span class="mb-2 block text-xs font-medium text-muted-foreground">自身配置</span> <!></section>'),Hl=A('<div class="flex flex-col gap-4"><!> <!> <!></div>'),Gl=A('<section class="rounded-lg border bg-muted/20 p-3"><span class="mb-3 block text-xs font-medium text-muted-foreground">动作配置</span> <!></section>'),Kl=A("<!> 添加动作",1),ql=A('<p class="rounded-lg border border-dashed bg-background px-3 py-3 text-xs text-muted-foreground">暂无动作。添加一个动作,触发后按顺序执行。</p>'),Wl=A('<span class="font-mono text-xs"> </span>'),Zl=A('<span class="text-xs text-destructive">JSON 错误</span>'),Yl=A('<div class="border-t px-3 py-3"><!></div>'),Xl=A('<div class="overflow-hidden rounded-lg border bg-muted/20"><button type="button" class="flex w-full items-center gap-2 px-3 py-2.5 text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring"><!> <span class="text-xs font-medium text-muted-foreground"></span> <!> <span class="flex-1"></span> <!> <!></button> <!></div>'),Ql=A('<section class="rounded-lg border bg-muted/20 p-3"><div class="mb-3 flex items-center justify-between gap-2"><span class="text-xs font-medium text-muted-foreground">动作链</span> <!></div> <!></section>'),ed=A("<!> 格式化",1),so=A('<p class="text-xs text-destructive"> </p>'),td=A('<section class="rounded-lg border bg-muted/20 p-3"><div class="mb-3 flex items-center justify-between gap-2"><span class="text-xs font-medium text-muted-foreground">自身配置</span> <!></div> <div class="flex flex-col gap-1.5"><!> <!> <!></div></section>'),nd=A('<div class="flex flex-col gap-4"><!> <!> <!> <!></div>'),rd=A("<!> 重载此条",1),od=A('<header class="flex shrink-0 flex-wrap items-start gap-x-4 gap-y-2 border-b px-5 py-3 pr-12"><div class="flex min-w-0 flex-col gap-1"><span class="flex items-center gap-1.5 text-[11px] font-medium uppercase tracking-widest text-muted-foreground"><!> </span> <div class="flex flex-wrap items-center gap-x-3 gap-y-1"><span class="font-mono text-lg font-semibold tracking-tight"> </span> <!> <span class="hidden items-center gap-1.5 text-xs text-muted-foreground md:flex">能力 <span class="font-mono tracking-tight"> </span></span></div></div> <div class="ml-auto flex items-center gap-1 rounded-lg border bg-muted/40 p-0.5" role="group" aria-label="视图模式"><button type="button"><!> 查看</button> <button type="button"><!> 编辑</button></div> <!></header> <div class="flex min-h-0 flex-1 flex-col lg:flex-row"><aside class="shrink-0 overflow-y-auto border-b px-5 py-4 lg:w-80 lg:border-b-0 lg:border-r"><!></aside> <main class="min-h-0 flex-1 overflow-y-auto px-5 py-4 lg:px-6"><!></main></div> <footer class="flex shrink-0 flex-wrap items-center justify-between gap-2 border-t bg-muted/20 px-5 py-3"><div class="flex items-center gap-2"><!> <!></div> <div class="flex items-center gap-2"><!> <!></div></footer>',1),hr=A("<!> <!>",1),id=A('<!> <!> <div class="flex justify-end gap-2"><!> <!></div>',1);function sd(t,e){Ne(e,!0);const n=as,r=vr,o=Nr,i=ls,s=vi,l=pi,d=ds,u=cs,f={trigger:"触发器",command:"命令",schedule:"定时任务",service:"服务"},y={trigger:["enabled","config","session","maxRuns","logFile","actions"],command:["title","symbol","run"],schedule:["enabled","session","cron","intervalSeconds","logFile","run"],service:["enabled","config","session","autoStart","logFile"]};let m=B(e,"open",15,!1),S=K(!1),k=K("edit"),M=K(!1),C=K(""),N=K(""),F=K(""),_=K(""),w=K(""),U=K(!1),Q=K(""),se=K(!1),he=K("{}"),ue=K(null),ee=K(null),re=K(null),b=K(mr([])),E=K(mr([])),O=K(!1),I=K(!1);nn(()=>{m()&&!a(O)&&(p(k,"edit"),p(M,e.flow.enabled,!0),p(C,e.flow.session??"",!0),p(N,e.flow.title??"",!0),p(F,e.flow.symbol??"",!0),p(_,e.flow.cron??"",!0),p(w,e.flow.intervalSeconds?String(e.flow.intervalSeconds):"",!0),p(U,e.flow.autoStart??!1,!0),p(Q,e.flow.maxRuns===void 0?"":String(e.flow.maxRuns),!0),p(se,e.flow.logFile,!0),p(he,lo(e.flow.config??{}),!0),p(ue,null),p(ee,null),e.flow.kind==="command"||e.flow.kind==="schedule"?(p(re,lr(e.flow.capability,e.flow.actionSession,e.flow.hook,e.flow.config),!0),p(b,[],!0),p(E,[],!0)):e.flow.kind==="trigger"?(p(re,null),p(b,(e.flow.actions??[]).map(x=>lr(x.capability,x.session,x.hook,x.config)),!0),p(E,a(b).map(()=>!0),!0)):(p(re,null),p(b,[],!0),p(E,[],!0))),p(O,m(),!0)});const z=D(()=>y[e.flow.kind]);function ce(){p(b,[...a(b),lr("",void 0,void 0,{})],!0),p(E,[...a(E),!0],!0)}function Ke(x){p(b,a(b).filter((W,ae)=>ae!==x),!0),p(E,a(E).filter((W,ae)=>ae!==x),!0)}function qn(){const x=co(a(he));if(x.error){p(ue,x.error,!0);return}p(he,x.formatted??"",!0),p(ue,null)}async function Be(){const x={};if(e.flow.kind==="command"){if(!a(re))return;const W=dr(a(re));if(W.error){p(ee,W.error,!0);return}x.title=a(N).trim()||e.flow.id,x.symbol=a(F).trim()||void 0,x.run=W.spec}else if(e.flow.kind==="schedule"){if(!a(re))return;if(a(_).trim()&&a(w).trim()){p(ee,"cron 与 intervalSeconds 只能保留其一");return}if(a(w).trim()){const ae=Number(a(w));if(!Number.isInteger(ae)||ae<=0){p(ee,"intervalSeconds 须为正整数");return}x.intervalSeconds=ae}a(_).trim()&&(x.cron=a(_).trim());const W=dr(a(re));if(W.error){p(ee,W.error,!0);return}x.enabled=a(M),x.session=a(C).trim()||void 0,x.logFile=a(se),x.run=W.spec}else if(e.flow.kind==="trigger"){if(x.enabled=a(M),x.session=a(C).trim()||void 0,x.logFile=a(se),x.maxRuns=a(Q).trim()===""||a(Q).trim()==="-1"?void 0:Number(a(Q)),x.maxRuns!==void 0&&(!Number.isInteger(x.maxRuns)||x.maxRuns<=0)){p(ee,"maxRuns 须为正整数或留空");return}try{const ae=gr(a(he));ae!==void 0&&(x.config=ae)}catch{p(ue,"config 不是合法 JSON");return}const W=[];for(const ae of a(b)){const rt=dr(ae);if(rt.error){p(ee,`动作 ${W.length+1}:${rt.error}`);return}W.push(rt.spec)}x.actions=W}else{x.enabled=a(M),x.session=a(C).trim()||void 0,x.autoStart=a(U),x.logFile=a(se);try{const W=gr(a(he));W!==void 0&&(x.config=W)}catch{p(ue,"config 不是合法 JSON");return}}p(S,!0);try{const W=await lt.updateFlow(e.flow.id,x);Oe.success(W.changed?"已保存并写回 flows.yml":"没有变更"),await Vt.refresh(),W.changed&&e.flow.kind!=="command"&&p(I,!0)}catch(W){Oe.error(Jt(W))}finally{p(S,!1)}}async function Te(){p(S,!0);try{await lt.reloadFlow(e.flow.id),Oe.success("已按最新定义重载"),await Vt.refresh()}catch(x){Oe.error(Jt(x))}finally{p(S,!1)}}async function yt(){await Te(),p(I,!1)}async function Ht(){p(S,!0);try{e.flow.active?await lt.stopService(e.flow.id):await lt.startService(e.flow.id),Oe.success(e.flow.active?"服务已停止":"服务已启动"),await Vt.refresh()}catch(x){Oe.error(Jt(x))}finally{p(S,!1)}}var Tt=hr(),Lt=R(Tt);yn(Lt,()=>ss,(x,W)=>{W(x,{get onOpenChange(){return e.onOpenChange},get open(){return m()},set open(ae){m(ae)},children:(ae,rt)=>{var ht=q(),Gt=R(ht);yn(Gt,()=>vr,(un,fn)=>{fn(un,{children:(Cn,hn)=>{var mt=hr(),gt=R(mt);yn(gt,()=>Nr,(wt,Rt)=>{Rt(wt,{class:"fixed inset-0 z-50 bg-black/45 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=closed]:animate-out data-[state=closed]:fade-out-0"})});var Kt=h(gt,2);{let wt=D(()=>`编辑 ${e.flow.id}`);yn(Kt,()=>is,(Rt,Ie)=>{Ie(Rt,{class:"fixed left-1/2 top-1/2 z-50 flex h-[min(92vh,880px)] w-[min(96vw,1180px)] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden rounded-xl border bg-background text-card-foreground shadow-2xl data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-1/2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95",get"aria-label"(){return a(wt)},"aria-describedby":void 0,children:(Ot,qe)=>{var qt=od(),mn=R(qt),gn=v(mn),vn=v(gn),Wt=v(vn);{var Wn=T=>{uo(T,{class:"size-3","aria-hidden":"true"})},Zn=T=>{wo(T,{class:"size-3","aria-hidden":"true"})},pn=T=>{yo(T,{class:"size-3","aria-hidden":"true"})},Yn=T=>{ko(T,{class:"size-3","aria-hidden":"true"})};P(Wt,T=>{e.flow.kind==="trigger"?T(Wn):e.flow.kind==="command"?T(Zn,1):e.flow.kind==="schedule"?T(pn,2):T(Yn,-1)})}var Xn=h(Wt);g(vn);var Pn=h(vn,2),Zt=v(Pn),Qn=pe(Zt,!0),Mn=h(Zt,2);{var xn=T=>{var J=Tl(),le=v(J);Ut(le,{tone:"ok",pulse:!0}),V(),g(J),c(T,J)},er=T=>{var J=Ll(),le=v(J);Ut(le,{tone:"ok"}),V(),g(J),c(T,J)},$=T=>{var J=Rl(),le=v(J);Ut(le,{tone:"idle"}),V(),g(J),c(T,J)};P(Mn,T=>{e.flow.active?T(xn):e.flow.enabled?T(er,1):T($,-1)})}var Le=h(Mn,2),Pe=h(v(Le)),St=pe(Pe,!0);g(Le),g(Pn),g(gn);var Ve=h(gn,2),Je=v(Ve),ot=v(Je);hs(ot,{class:"size-3.5","aria-hidden":"true"}),V(),g(Je);var it=h(Je,2),tr=v(it);ms(tr,{class:"size-3.5","aria-hidden":"true"}),V(),g(it),g(Ve);var Yt=h(Ve,2);Ze(Yt,{variant:"ghost",size:"icon",class:"absolute right-2 top-2 size-8",onclick:()=>m(!1),"aria-label":"关闭",children:(T,J)=>{ps(T,{class:"size-4","aria-hidden":"true"})},$$slots:{default:!0}}),g(mn);var Xt=h(mn,2),bn=v(Xt),Dn=v(bn);{var nr=T=>{var J=Ol(),le=v(J);pt(le,()=>({label:"类型",value:f[e.flow.kind]}));var we=h(le,2);{var st=L=>{pt(L,()=>({label:"能力",value:e.flow.capability,mono:!0}))};P(we,L=>{e.flow.capability&&L(st)})}var At=h(we,2);{var Ct=L=>{pt(L,()=>({label:"会话",value:e.flow.session,mono:!0}))};P(At,L=>{e.flow.session&&L(Ct)})}var vt=h(At,2);{var zt=L=>{pt(L,()=>({label:"符号",value:e.flow.symbol,mono:!0}))};P(vt,L=>{e.flow.symbol&&L(zt)})}var be=h(vt,2);{var ye=L=>{{let Ae=D(()=>({label:"最多触发次数",value:String(e.flow.maxRuns)}));pt(L,()=>a(Ae))}};P(be,L=>{e.flow.maxRuns!==void 0&&L(ye)})}var Y=h(be,2);{var me=L=>{pt(L,()=>({label:"cron",value:e.flow.cron,mono:!0}))};P(Y,L=>{e.flow.cron&&L(me)})}var xe=h(Y,2);{var Ue=L=>{{let Ae=D(()=>({label:"间隔(秒)",value:String(e.flow.intervalSeconds)}));pt(L,()=>a(Ae))}};P(xe,L=>{e.flow.intervalSeconds&&L(Ue)})}var Se=h(xe,2);pt(Se,()=>({label:"日志文件",value:e.flow.logFile?"记录":"不记录"}));var at=h(Se,2);{var Me=L=>{pt(L,()=>({label:"启动于",value:e.flow.startedAt}))};P(at,L=>{e.flow.startedAt&&L(Me)})}g(J),c(T,J)},rr=T=>{var J=Fl(),le=v(J),we=h(v(le),2),st=v(we);{var At=j=>{var H=fr(),oe=v(H);Re(oe,{for:"flow-enabled",children:(G,te)=>{V();var ie=de("启用");c(G,ie)},$$slots:{default:!0}});var ge=h(oe,2);zn(ge,{id:"flow-enabled",get checked(){return a(M)},set checked(G){p(M,G,!0)}}),g(H),c(j,H)},Ct=D(()=>a(z).includes("enabled"));P(st,j=>{a(Ct)&&j(At)})}var vt=h(st,2);{var zt=j=>{var H=fr(),oe=v(H);Re(oe,{for:"flow-logfile",children:(G,te)=>{V();var ie=de("写入日志文件");c(G,ie)},$$slots:{default:!0}});var ge=h(oe,2);zn(ge,{id:"flow-logfile",get checked(){return a(se)},set checked(G){p(se,G,!0)}}),g(H),c(j,H)},be=D(()=>a(z).includes("logFile"));P(vt,j=>{a(be)&&j(zt)})}var ye=h(vt,2);{var Y=j=>{var H=fr(),oe=v(H);Re(oe,{for:"flow-autostart",children:(G,te)=>{V();var ie=de("随运行时自动启动");c(G,ie)},$$slots:{default:!0}});var ge=h(oe,2);zn(ge,{id:"flow-autostart",get checked(){return a(U)},set checked(G){p(U,G,!0)}}),g(H),c(j,H)},me=D(()=>a(z).includes("autoStart"));P(ye,j=>{a(me)&&j(Y)})}g(we),g(le);var xe=h(le,2),Ue=h(v(xe),2),Se=v(Ue);{var at=j=>{var H=El(),oe=v(H);Re(oe,{for:"flow-session",children:(G,te)=>{V();var ie=de("会话");c(G,ie)},$$slots:{default:!0}});var ge=h(oe,2);xt(ge),g(H),bt(ge,()=>a(C),G=>p(C,G)),c(j,H)},Me=D(()=>a(z).includes("session"));P(Se,j=>{a(Me)&&j(at)})}var L=h(Se,2);{var Ae=j=>{var H=Il(),oe=v(H);Re(oe,{for:"flow-title",children:(G,te)=>{V();var ie=de("标题");c(G,ie)},$$slots:{default:!0}});var ge=h(oe,2);xt(ge),g(H),bt(ge,()=>a(N),G=>p(N,G)),c(j,H)},ve=D(()=>a(z).includes("title"));P(L,j=>{a(ve)&&j(Ae)})}var _e=h(L,2);{var ke=j=>{var H=zl(),oe=v(H);Re(oe,{for:"flow-symbol",children:(G,te)=>{V();var ie=de("符号");c(G,ie)},$$slots:{default:!0}});var ge=h(oe,2);xt(ge),g(H),bt(ge,()=>a(F),G=>p(F,G)),c(j,H)},$t=D(()=>a(z).includes("symbol"));P(_e,j=>{a($t)&&j(ke)})}var Pt=h(_e,2);{var Ln=j=>{var H=$l(),oe=v(H);Re(oe,{for:"flow-maxruns",children:(G,te)=>{V();var ie=de("最多触发次数");c(G,ie)},$$slots:{default:!0}});var ge=h(oe,2);xt(ge),g(H),bt(ge,()=>a(Q),G=>p(Q,G)),c(j,H)},Rn=D(()=>a(z).includes("maxRuns"));P(Pt,j=>{a(Rn)&&j(Ln)})}var On=h(Pt,2);{var or=j=>{var H=Nl(),oe=R(H),ge=v(oe);Re(ge,{for:"flow-cron",children:(Nt,hi)=>{V();var ir=de("cron 表达式");c(Nt,ir)},$$slots:{default:!0}});var G=h(ge,2);xt(G),g(oe);var te=h(oe,2),ie=v(te);Re(ie,{for:"flow-interval",children:(Nt,hi)=>{V();var ir=de("间隔(秒)");c(Nt,ir)},$$slots:{default:!0}});var Qt=h(ie,2);xt(Qt),g(te),bt(G,()=>a(_),Nt=>p(_,Nt)),bt(Qt,()=>a(w),Nt=>p(w,Nt)),c(j,H)};P(On,j=>{e.flow.kind==="schedule"&&j(or)})}g(Ue),g(xe),g(J),c(T,J)};P(Dn,T=>{a(k)==="view"?T(nr):T(rr,-1)})}g(bn);var Bn=h(bn,2),ze=v(Bn);{var Et=T=>{var J=Hl(),le=v(J);{var we=be=>{var ye=Vl(),Y=h(v(ye),2);oo(Y,()=>({index:1,capability:e.flow.capability,session:e.flow.actionSession,hook:e.flow.hook,config:e.flow.config})),g(ye),c(be,ye)};P(le,be=>{(e.flow.kind==="command"||e.flow.kind==="schedule")&&be(we)})}var st=h(le,2);{var At=be=>{var ye=Ul(),Y=v(ye),me=h(v(Y),2),xe=pe(me);g(Y);var Ue=h(Y,2);{var Se=Me=>{var L=Jl();c(Me,L)},at=Me=>{var L=io();$n(L,21,()=>e.flow.actions??[],$r,(Ae,ve,_e)=>{oo(Ae,()=>({index:_e+1,capability:a(ve).capability,session:a(ve).session,hook:a(ve).hook,config:a(ve).config}))}),g(L),c(Me,L)};P(Ue,Me=>{(e.flow.actions?.length??0)===0?Me(Se):Me(at,-1)})}g(ye),fe(()=>ne(xe,`${e.flow.actions?.length??0??""} 个动作`)),c(be,ye)};P(st,be=>{e.flow.kind==="trigger"&&be(At)})}var Ct=h(st,2);{var vt=be=>{var ye=jl(),Y=h(v(ye),2);{let me=D(()=>e.flow.config??{});_o(Y,{get value(){return a(me)},label:"config"})}g(ye),c(be,ye)},zt=D(()=>a(z).includes("config"));P(Ct,be=>{a(zt)&&be(vt)})}g(J),c(T,J)},Tn=T=>{var J=nd(),le=v(J);{var we=Y=>{var me=Gl(),xe=h(v(me),2);{var Ue=Se=>{ro(Se,{get draft(){return a(re)},bordered:!1})};P(xe,Se=>{a(re)&&Se(Ue)})}g(me),c(Y,me)};P(le,Y=>{(e.flow.kind==="command"||e.flow.kind==="schedule")&&Y(we)})}var st=h(le,2);{var At=Y=>{var me=Ql(),xe=v(me),Ue=h(v(xe),2);Ze(Ue,{variant:"outline",size:"sm",onclick:ce,children:(L,Ae)=>{var ve=Kl(),_e=R(ve);gs(_e,{class:"size-3.5","aria-hidden":"true"}),V(),c(L,ve)},$$slots:{default:!0}}),g(xe);var Se=h(xe,2);{var at=L=>{var Ae=ql();c(L,Ae)},Me=L=>{var Ae=io();$n(Ae,21,()=>a(b),$r,(ve,_e,ke)=>{var $t=Xl(),Pt=v($t),Ln=v(Pt);{let te=D(()=>kn("size-3.5 text-muted-foreground transition-transform",a(E)[ke]&&"rotate-90"));os(Ln,{get class(){return a(te)},"aria-hidden":"true"})}var Rn=h(Ln,2);Rn.textContent=`动作 ${ke+1}`;var On=h(Rn,2);{var or=te=>{var ie=Wl(),Qt=pe(ie,!0);fe(()=>ne(Qt,a(_e).capability)),c(te,ie)};P(On,te=>{a(_e).capability&&te(or)})}var j=h(On,4);{var H=te=>{var ie=Zl();c(te,ie)};P(j,te=>{a(_e).configError&&te(H)})}var oe=h(j,2);Ze(oe,{variant:"ghost",size:"icon",class:"size-6",onclick:te=>{te.stopPropagation(),Ke(ke)},"aria-label":`移除动作 ${ke+1}`,title:"移除",children:(te,ie)=>{So(te,{class:"size-3.5","aria-hidden":"true"})},$$slots:{default:!0}}),g(Pt);var ge=h(Pt,2);{var G=te=>{var ie=Yl(),Qt=v(ie);ro(Qt,{get draft(){return a(_e)},heading:"",bordered:!1}),g(ie),c(te,ie)};P(ge,te=>{a(E)[ke]&&te(G)})}g($t),fe(()=>ct(Pt,"aria-expanded",a(E)[ke])),tn("click",Pt,()=>a(E)[ke]=!a(E)[ke]),c(ve,$t)}),g(Ae),c(L,Ae)};P(Se,L=>{a(b).length===0?L(at):L(Me,-1)})}g(me),c(Y,me)};P(st,Y=>{e.flow.kind==="trigger"&&Y(At)})}var Ct=h(st,2);{var vt=Y=>{var me=td(),xe=v(me),Ue=h(v(xe),2);Ze(Ue,{variant:"ghost",size:"sm",class:"h-6 px-2 text-xs",onclick:qn,title:"格式化 JSON",children:(ve,_e)=>{var ke=ed(),$t=R(ke);Ao($t,{class:"size-3","aria-hidden":"true"}),V(),c(ve,ke)},$$slots:{default:!0}}),g(xe);var Se=h(xe,2),at=v(Se);Re(at,{for:"flow-config",children:(ve,_e)=>{V();var ke=de("config(JSON)");c(ve,ke)},$$slots:{default:!0}});var Me=h(at,2);{let ve=D(()=>a(ue)!==null);di(Me,{id:"flow-config",placeholderText:"{}",minHeight:"min-h-28",get invalid(){return a(ve)},get value(){return a(he)},set value(_e){p(he,_e,!0)}})}var L=h(Me,2);{var Ae=ve=>{var _e=so(),ke=pe(_e,!0);fe(()=>ne(ke,a(ue))),c(ve,_e)};P(L,ve=>{a(ue)&&ve(Ae)})}g(Se),g(me),c(Y,me)},zt=D(()=>a(z).includes("config"));P(Ct,Y=>{a(zt)&&Y(vt)})}var be=h(Ct,2);{var ye=Y=>{var me=so(),xe=pe(me,!0);fe(()=>ne(xe,a(ee))),c(Y,me)};P(be,Y=>{a(ee)&&Y(ye)})}g(J),c(T,J)};P(ze,T=>{a(k)==="view"?T(Et):T(Tn,-1)})}g(Bn),g(Xt);var We=h(Xt,2),It=v(We),Er=v(It);{var ci=T=>{Ze(T,{variant:"outline",onclick:Ht,get disabled(){return a(S)},children:(J,le)=>{V();var we=de();fe(()=>ne(we,e.flow.active?"停止服务":"启动服务")),c(J,we)},$$slots:{default:!0}})};P(Er,T=>{e.flow.kind==="service"&&T(ci)})}var ui=h(Er,2);Ze(ui,{variant:"outline",onclick:Te,get disabled(){return a(S)},children:(T,J)=>{var le=rd(),we=R(le);vs(we,{class:"size-3.5","aria-hidden":"true"}),V(),c(T,le)},$$slots:{default:!0}}),g(It);var Ir=h(It,2),zr=v(Ir);Ze(zr,{variant:"ghost",onclick:()=>m(!1),children:(T,J)=>{V();var le=de("关闭");c(T,le)},$$slots:{default:!0}});var fi=h(zr,2);{let T=D(()=>a(S)||a(ue)!==null);Ze(fi,{onclick:Be,get disabled(){return a(T)},children:(J,le)=>{V();var we=de("保存");c(J,we)},$$slots:{default:!0}})}g(Ir),g(We),fe((T,J)=>{ne(Xn,` ${f[e.flow.kind]??""}`),ne(Qn,e.flow.id),ne(St,e.flow.capability),wn(Je,1,T),ct(Je,"aria-pressed",a(k)==="view"),wn(it,1,J),ct(it,"aria-pressed",a(k)==="edit")},[()=>Nn(kn("flex h-7 items-center gap-1 rounded-md px-2.5 text-xs font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",a(k)==="view"?"bg-background shadow-sm text-foreground":"text-muted-foreground hover:text-foreground")),()=>Nn(kn("flex h-7 items-center gap-1 rounded-md px-2.5 text-xs font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",a(k)==="edit"?"bg-background shadow-sm text-foreground":"text-muted-foreground hover:text-foreground"))]),tn("click",Je,()=>p(k,"view")),tn("click",it,()=>p(k,"edit")),c(Ot,qt)},$$slots:{default:!0}})})}c(Cn,mt)},$$slots:{default:!0}})}),c(ae,ht)},$$slots:{default:!0}})});var kt=h(Lt,2);n(kt,{get open(){return a(I)},onOpenChange:x=>p(I,x,!0),children:(x,W)=>{r(x,{children:(ae,rt)=>{var ht=hr(),Gt=R(ht);o(Gt,{class:"fixed inset-0 z-50 bg-black/45 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=closed]:animate-out data-[state=closed]:fade-out-0"});var un=h(Gt,2);i(un,{class:"fixed left-1/2 top-1/2 z-50 grid w-full max-w-lg -translate-x-1/2 -translate-y-1/2 gap-4 rounded-lg border bg-card p-6 shadow-xl data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95 data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-1/2",children:(fn,Cn)=>{var hn=id(),mt=R(hn);s(mt,{class:"font-display text-lg font-semibold leading-none",children:(Ie,Ot)=>{V();var qe=de("配置已保存,立即重载?");c(Ie,qe)},$$slots:{default:!0}});var gt=h(mt,2);l(gt,{class:"text-sm text-muted-foreground",children:(Ie,Ot)=>{V();var qe=de();fe(()=>ne(qe,`${f[e.flow.kind]??""}的改动需要重载才会对运行中的实例生效。`)),c(Ie,qe)},$$slots:{default:!0}});var Kt=h(gt,2),wt=v(Kt);u(wt,{class:"inline-flex h-9 items-center justify-center rounded-md px-4 text-sm font-medium transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:ring-2 focus-visible:ring-ring",children:(Ie,Ot)=>{V();var qe=de("稍后");c(Ie,qe)},$$slots:{default:!0}});var Rt=h(wt,2);d(Rt,{class:"inline-flex h-9 items-center justify-center rounded-md bg-primary px-4 text-sm font-medium text-primary-foreground shadow-sm transition-colors hover:bg-primary/90 focus-visible:ring-2 focus-visible:ring-ring",onclick:()=>{yt()},children:(Ie,Ot)=>{V();var qe=de("立即重载");c(Ie,qe)},$$slots:{default:!0}}),g(Kt),c(fn,hn)},$$slots:{default:!0}}),c(ae,ht)},$$slots:{default:!0}})},$$slots:{default:!0}}),c(t,Tt),Fe()}ao(["click"]);var ad=A('<div class="flex flex-col gap-4"><div class="animate-pulse rounded-md bg-muted h-9 w-48 rounded-lg"></div> <div class="animate-pulse rounded-md bg-muted h-72 rounded-xl"></div></div>'),ld=A('<p class="text-sm font-medium">没有缺配置的流程</p> <p class="max-w-sm text-xs text-muted-foreground">所有流程的自身配置与动作配置都已填写。</p>',1),dd=A('<p class="text-sm font-medium">没有已配置的流程</p> <p class="max-w-sm text-xs text-muted-foreground">在 flows.yml 中声明触发器、命令、定时任务或服务后,这里会出现对应条目。</p>',1),cd=A('<div class="flex flex-col items-center gap-2 rounded-lg border border-dashed px-6 py-12 text-center"><span class="flex size-10 items-center justify-center rounded-full bg-muted"><!></span> <!></div>'),ud=A('<span class="font-mono tracking-tight text-xs text-muted-foreground"> </span> <!>',1),fd=A('<span class="text-xs text-muted-foreground/60">-</span>'),hd=A("<!> 运行一次",1),md=A("<!> 重载此条",1),gd=A("<!> <!> <!>",1),vd=A("<!> <!>",1),pd=A('<tr class="border-b transition-colors hover:bg-muted/40 data-[state=selected]:bg-muted cursor-pointer"><td class="p-4 align-middle [&amp;:has([role=checkbox])]:pr-0"><!></td><td class="p-4 align-middle [&amp;:has([role=checkbox])]:pr-0"><button type="button" class="text-left font-mono text-sm underline-offset-4 hover:underline"> </button> <span class="ml-2 text-xs text-muted-foreground"> </span></td><td class="p-4 align-middle [&amp;:has([role=checkbox])]:pr-0"><span class="font-mono tracking-tight text-xs text-muted-foreground"> </span></td><td class="p-4 align-middle [&amp;:has([role=checkbox])]:pr-0 hidden md:table-cell"><!></td><td class="p-4 align-middle [&amp;:has([role=checkbox])]:pr-0 hidden max-w-56 truncate sm:table-cell"><span class="text-xs text-muted-foreground"> </span></td><td class="p-4 align-middle [&amp;:has([role=checkbox])]:pr-0 hidden lg:table-cell"><!></td><td class="p-4 align-middle [&amp;:has([role=checkbox])]:pr-0 text-center"><!></td><td class="p-4 align-middle [&amp;:has([role=checkbox])]:pr-0"><!></td></tr>'),xd=A('<div class="rounded-lg border bg-card text-card-foreground shadow-sm"><div class="p-0"><div class="relative w-full overflow-auto"><table class="w-full caption-bottom text-sm"><thead class="[&amp;_tr]:border-b"><tr class="border-b transition-colors hover:bg-muted/40 data-[state=selected]:bg-muted"><th class="h-10 px-4 text-left align-middle font-medium text-muted-foreground [&amp;:has([role=checkbox])]:pr-0 w-10"></th><th class="h-10 px-4 text-left align-middle font-medium text-muted-foreground [&amp;:has([role=checkbox])]:pr-0">流程</th><th class="h-10 px-4 text-left align-middle font-medium text-muted-foreground [&amp;:has([role=checkbox])]:pr-0">能力</th><th class="h-10 px-4 text-left align-middle font-medium text-muted-foreground [&amp;:has([role=checkbox])]:pr-0 hidden md:table-cell">会话</th><th class="h-10 px-4 text-left align-middle font-medium text-muted-foreground [&amp;:has([role=checkbox])]:pr-0 hidden sm:table-cell">摘要</th><th class="h-10 px-4 text-left align-middle font-medium text-muted-foreground [&amp;:has([role=checkbox])]:pr-0 hidden lg:table-cell">配置</th><th class="h-10 px-4 text-left align-middle font-medium text-muted-foreground [&amp;:has([role=checkbox])]:pr-0 w-14 text-center">启用</th><th class="h-10 px-4 text-left align-middle font-medium text-muted-foreground [&amp;:has([role=checkbox])]:pr-0 w-12"></th></tr></thead><tbody class="[&amp;_tr:last-child]:border-0"></tbody></table></div></div></div>'),bd=A('<div class="flex flex-col gap-4"><!> <!> <!></div>');function Nd(t,e){Ne(e,!0);const n=ys,r=Cs,o=vr,i=ws,s=_s,l=[{value:"all",label:"全部",icon:Ur},{value:"missing",label:"缺配置",icon:Jr},{value:"trigger",label:"触发器",icon:uo},{value:"command",label:"命令",icon:wo},{value:"schedule",label:"定时任务",icon:yo},{value:"service",label:"服务",icon:ko}],d={trigger:"触发器",command:"命令",schedule:"定时任务",service:"服务"};let u=K("all"),f=K(null),y=K(!1),m=K(null);const S=D(()=>Vt.snapshot),k=D(()=>a(S)?.flows??[]),M=D(()=>a(u)==="all"?a(k):a(u)==="missing"?a(k).filter(b=>F(b).missing>0):a(k).filter(b=>b.kind===a(u))),C=D(()=>l.map(b=>({value:b.value,label:b.label,icon:b.icon,count:b.value==="all"?a(k).length:b.value==="missing"?a(k).filter(E=>F(E).missing>0).length:a(k).filter(E=>E.kind===b.value).length})));function N(b){return b.kind==="command"?b.title??b.id:b.kind==="schedule"?b.cron??`每 ${b.intervalSeconds}s`:b.kind==="service"?b.autoStart?"自启":"手动":`${b.actions?.length??0} 个动作${b.maxRuns?` · 最多 ${b.maxRuns} 次`:""}`}function F(b){const E=b.kind==="trigger"?[{label:"自身",config:b.config},...(b.actions??[]).map((I,z)=>({label:`动作 ${z+1}`,config:I.config}))]:b.kind==="service"?[{label:"自身",config:b.config}]:[{label:"动作",config:b.config}],O=E.filter(I=>$s(I.config)).length;return{filled:E.length-O,total:E.length,missing:O}}async function _(b){p(m,b.id,!0);try{await lt.runFlow(b.id),Oe.success(`已运行 ${b.id}`)}catch(E){Oe.error(Jt(E))}finally{p(m,null)}}async function w(b){p(m,b.id,!0);try{await lt.reloadFlow(b.id),Oe.success(`已重载 ${b.id}`),await Vt.refresh()}catch(E){Oe.error(Jt(E))}finally{p(m,null)}}async function U(b){p(m,b.id,!0);try{b.active?await lt.stopService(b.id):await lt.startService(b.id),Oe.success(b.active?`${b.id} 已停止`:`${b.id} 已启动`),await Vt.refresh()}catch(E){Oe.error(Jt(E))}finally{p(m,null)}}async function Q(b,E){p(m,b.id,!0);try{const O=await lt.updateFlow(b.id,{enabled:E});Oe.success(O.changed?`已${E?"启用":"停用"} ${b.id}`:"没有变更"),await Vt.refresh()}catch(O){Oe.error(Jt(O))}finally{p(m,null)}}function se(b){p(f,b,!0),p(y,!0)}var he=q(),ue=R(he);{var ee=b=>{var E=ad();c(b,E)},re=b=>{var E=bd(),O=v(E);Vs(O,{get items(){return a(C)},get value(){return a(u)},set value(Be){p(u,Be,!0)}});var I=h(O,2);{var z=Be=>{var Te=cd(),yt=v(Te),Ht=v(yt);Jr(Ht,{class:"size-5 text-muted-foreground","aria-hidden":"true"}),g(yt);var Tt=h(yt,2);{var Lt=x=>{var W=ld();V(2),c(x,W)},kt=x=>{var W=dd();V(2),c(x,W)};P(Tt,x=>{a(u)==="missing"?x(Lt):x(kt,-1)})}g(Te),c(Be,Te)},ce=Be=>{var Te=xd(),yt=v(Te),Ht=v(yt),Tt=v(Ht),Lt=h(v(Tt));$n(Lt,21,()=>a(M),kt=>`${kt.kind}:${kt.id}`,(kt,x)=>{const W=D(()=>a(m)===a(x).id),ae=D(()=>F(a(x)));var rt=pd(),ht=v(rt),Gt=v(ht);{var un=$=>{Ut($,{tone:"bad"})},fn=$=>{Ut($,{tone:"ok",pulse:!0})},Cn=$=>{Ut($,{tone:"ok"})},hn=$=>{Ut($,{tone:"idle"})};P(Gt,$=>{a(x).suspended?$(un):a(x).active?$(fn,1):a(x).enabled||a(x).kind==="command"?$(Cn,2):$(hn,-1)})}g(ht);var mt=h(ht),gt=v(mt),Kt=pe(gt,!0),wt=h(gt,2),Rt=pe(wt,!0);g(mt);var Ie=h(mt),Ot=v(Ie),qe=pe(Ot,!0);g(Ie);var qt=h(Ie),mn=v(qt);{var gn=$=>{var Le=ud(),Pe=R(Le),St=pe(Pe,!0),Ve=h(Pe,2);{var Je=ot=>{sr(ot,{variant:"destructive",class:"ml-1",children:(it,tr)=>{V();var Yt=de("会话隔离");c(it,Yt)},$$slots:{default:!0}})};P(Ve,ot=>{a(x).suspended&&ot(Je)})}fe(()=>ne(St,a(x).session)),c($,Le)},vn=$=>{var Le=fd();c($,Le)};P(mn,$=>{a(x).session?$(gn):$(vn,-1)})}g(qt);var Wt=h(qt),Wn=v(Wt),Zn=pe(Wn,!0);g(Wt);var pn=h(Wt),Yn=v(pn);{var Xn=$=>{{let Le=D(()=>`${a(ae).filled}/${a(ae).total} 个配置已填写`);sr($,{variant:"destructive",get title(){return a(Le)},children:(Pe,St)=>{V();var Ve=de();fe(()=>ne(Ve,`缺 ${a(ae).missing??""} 项`)),c(Pe,Ve)},$$slots:{default:!0}})}},Pn=$=>{{let Le=D(()=>`${a(ae).filled}/${a(ae).total} 个配置已填写`);sr($,{variant:"outline",get title(){return a(Le)},children:(Pe,St)=>{V();var Ve=de("已配置");c(Pe,Ve)},$$slots:{default:!0}})}};P(Yn,$=>{a(ae).missing>0?$(Xn):$(Pn,-1)})}g(pn);var Zt=h(pn),Qn=v(Zt);{var Mn=$=>{{let Le=D(()=>`切换 ${a(x).id} 启用状态`);zn($,{get checked(){return a(x).enabled},onCheckedChange:Pe=>{Q(a(x),Pe)},get disabled(){return a(W)},onclick:Pe=>Pe.stopPropagation(),get"aria-label"(){return a(Le)}})}};P(Qn,$=>{a(x).kind!=="command"&&$(Mn)})}g(Zt);var xn=h(Zt),er=v(xn);n(er,{children:($,Le)=>{var Pe=vd(),St=R(Pe);{let Je=D(()=>`${a(x).id} 操作`);r(St,{class:"inline-flex size-8 items-center justify-center rounded-md transition-colors hover:bg-accent hover:text-accent-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",get"aria-label"(){return a(Je)},onclick:ot=>ot.stopPropagation(),children:(ot,it)=>{fs(ot,{class:"size-4","aria-hidden":"true"})},$$slots:{default:!0}})}var Ve=h(St,2);o(Ve,{children:(Je,ot)=>{i(Je,{class:"z-50 min-w-[9rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",sideOffset:4,align:"end",children:(it,tr)=>{var Yt=gd(),Xt=R(Yt);{var bn=ze=>{s(ze,{onSelect:()=>{_(a(x))},class:"flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[highlighted]:bg-accent",children:(Et,Tn)=>{var We=hd(),It=R(We);Ur(It,{class:"size-4","aria-hidden":"true"}),V(),c(Et,We)},$$slots:{default:!0}})};P(Xt,ze=>{(a(x).kind==="command"||a(x).kind==="schedule")&&ze(bn)})}var Dn=h(Xt,2);{var nr=ze=>{s(ze,{onSelect:()=>{U(a(x))},class:"flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[highlighted]:bg-accent",children:(Et,Tn)=>{V();var We=de();fe(()=>ne(We,a(x).active?"停止服务":"启动服务")),c(Et,We)},$$slots:{default:!0}})};P(Dn,ze=>{a(x).kind==="service"&&ze(nr)})}var rr=h(Dn,2);{var Bn=ze=>{s(ze,{onSelect:()=>{w(a(x))},class:"flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[highlighted]:bg-accent",children:(Et,Tn)=>{var We=md(),It=R(We);us(It,{class:"size-4","aria-hidden":"true"}),V(),c(Et,We)},$$slots:{default:!0}})};P(rr,ze=>{a(x).kind!=="command"&&ze(Bn)})}c(it,Yt)},$$slots:{default:!0}})},$$slots:{default:!0}}),c($,Pe)},$$slots:{default:!0}}),g(xn),g(rt),fe($=>{ne(Kt,a(x).id),ne(Rt,d[a(x).kind]),ne(qe,a(x).capability),ne(Zn,$)},[()=>N(a(x))]),tn("click",rt,()=>se(a(x))),tn("click",gt,$=>{$.stopPropagation(),se(a(x))}),tn("click",xn,$=>$.stopPropagation()),c(kt,rt)}),g(Lt),g(Tt),g(Ht),g(yt),g(Te),c(Be,Te)};P(I,Be=>{a(M).length===0?Be(z):Be(ce,-1)})}var Ke=h(I,2);{var qn=Be=>{sd(Be,{get flow(){return a(f)},onOpenChange:Te=>!Te&&p(f,null),get open(){return a(y)},set open(Te){p(y,Te,!0)}})};P(Ke,Be=>{a(f)&&Be(qn)})}g(E),c(b,E)};P(ue,b=>{a(S)?b(re,-1):b(ee)})}c(t,he),Fe()}ao(["click"]);export{Nd as component};
@@ -0,0 +1,2 @@
1
+ import{c as pe,a as l,t as ve,s as L,f as m}from"../chunks/ywqHnl7S.js";import{p as ue,i as u,F as fe,b as P,c as C,h as me,g as e,a as n,k as i,j as s,r as a,B as y,e as d,D as H,l as A}from"../chunks/DLXc3MsS.js";import{i as D}from"../chunks/B36KvkWl.js";import{b as ge}from"../chunks/DwNr-XJb.js";import{a as xe,r as M,B as V}from"../chunks/4FxxAFXN.js";import{S as q}from"../chunks/CBkgBsl2.js";import{S as _e}from"../chunks/CXE75xOj.js";import{g as he,c as be}from"../chunks/C1dm7snI.js";import{e as ye}from"../chunks/C3IMQzMn.js";import{F as G}from"../chunks/JYomMW8A.js";import{R as we}from"../chunks/DVEB1r5D.js";var Se=m('<div class="flex flex-col items-center gap-2 rounded-lg border border-dashed px-6 py-12 text-center"><span class="flex size-10 items-center justify-center rounded-full bg-muted"><!></span> <p class="text-sm font-medium">没有可用的日志文件</p> <p class="max-w-sm text-xs text-muted-foreground">在 settings.yml 中配置 logging.directory 后,运行时会为核心与每个插件写入日志文件。</p></div>'),ke=m("<!> 刷新",1),$e=m('<p class="px-4 py-10 text-center font-mono text-xs text-muted-foreground">暂无日志内容</p>'),ze=m('<pre class="whitespace-pre-wrap break-all px-4 py-3 font-mono text-xs leading-relaxed"> </pre>'),Re=m('<div class="flex flex-col gap-4"><div class="flex flex-wrap items-center gap-2"><!> <!> <label class="flex items-center gap-2 text-sm text-muted-foreground"><!> 自动刷新</label> <span class="flex-1"></span> <!> <!></div> <div class="rounded-lg border bg-card text-card-foreground shadow-sm"><div class="p-0"><div class="flex items-center gap-2 border-b px-4 py-2"><!> <span class="font-mono tracking-tight text-xs text-muted-foreground"> </span></div> <div class="h-[60vh] overflow-auto"><!></div></div></div></div>');function He(J,K){ue(K,!0);const Q=[100,200,500,2e3],U=3e3;let g=u(""),w=u("200"),S=u(!0),k=u(fe([])),x=u(!1),_=u(null);const W=i(()=>Number(e(w))),X=i(()=>M.snapshot),f=i(()=>e(X)?.logs??[]),h=i(()=>e(f).some(r=>r.scope===e(g))?e(g):e(f)[0]?.scope??""),Y=i(()=>e(f).map(r=>({value:r.scope,label:r.scope}))),Z=i(()=>Q.map(r=>({value:String(r),label:`最近 ${r} 行`})));async function $(){if(e(h)){n(x,!0);try{const r=await he.logLines(e(h),e(W));n(k,r.lines,!0),e(_)?.scrollTo({top:e(_).scrollHeight})}catch(r){xe.error(ye(r))}finally{n(x,!1)}}}P(()=>{$()}),P(()=>{if(!e(S)||!e(h))return;const r=setInterval(()=>{$()},U);return()=>clearInterval(r)});var E=pe(),ee=C(E);{var te=r=>{var o=Se(),c=s(o),b=s(c);G(b,{class:"size-5 text-muted-foreground","aria-hidden":"true"}),a(c),y(4),a(o),l(r,o)},re=r=>{var o=Re(),c=s(o),b=s(c);q(b,{get options(){return e(Y)},triggerClass:"w-64","aria-label":"日志来源",get value(){return e(g)},set value(t){n(g,t,!0)}});var F=d(b,2);q(F,{get options(){return e(Z)},triggerClass:"w-28","aria-label":"显示行数",get value(){return e(w)},set value(t){n(w,t,!0)}});var z=d(F,2),se=s(z);_e(se,{"aria-label":"自动刷新",get checked(){return e(S)},set checked(t){n(S,t,!0)}}),y(),a(z);var N=d(z,4);V(N,{variant:"outline",size:"sm",onclick:$,get disabled(){return e(x)},children:(t,p)=>{var v=ke(),T=C(v);{let ce=i(()=>be("size-4",e(x)&&"animate-spin"));we(T,{get class(){return e(ce)},"aria-hidden":"true"})}y(),l(t,v)},$$slots:{default:!0}});var ae=d(N,2);V(ae,{variant:"ghost",size:"sm",onclick:()=>{M.refresh()},children:(t,p)=>{y();var v=ve("更新日志列表");l(t,v)},$$slots:{default:!0}}),a(c);var O=d(c,2),j=s(O),R=s(j),B=s(R);G(B,{class:"size-4 text-muted-foreground","aria-hidden":"true"});var oe=d(B,2),le=H(oe,!0);a(R);var I=d(R,2),ne=s(I);{var ie=t=>{var p=$e();l(t,p)},de=t=>{var p=ze(),v=H(p,!0);A(T=>L(v,T),[()=>e(k).join(`
2
+ `)]),l(t,p)};D(ne,t=>{e(k).length===0?t(ie):t(de,-1)})}a(I),ge(I,t=>n(_,t),()=>e(_)),a(j),a(O),a(o),A(t=>L(le,t),[()=>e(f).find(t=>t.scope===e(h))?.path]),l(r,o)};D(ee,r=>{e(f).length===0?r(te):r(re,-1)})}l(J,E),me()}export{He as component};
@@ -0,0 +1 @@
1
+ import{c as ne,a as l,s as u,t as T,f as m}from"../chunks/ywqHnl7S.js";import{p as ie,b as ce,c as q,h as me,a as C,g as r,i as F,j as s,r as t,e as i,D as v,l as j,B,k as pe}from"../chunks/DLXc3MsS.js";import{i as G}from"../chunks/B36KvkWl.js";import{g as ue,e as H}from"../chunks/C1dm7snI.js";import{B as D}from"../chunks/BKgPCz3n.js";import{e as ve}from"../chunks/C3IMQzMn.js";import{P as J}from"../chunks/B1VSXVja.js";import{P as fe}from"../chunks/C1_V7OdN.js";var xe=m('<div class="flex flex-col gap-4"><div class="animate-pulse rounded-md bg-muted h-9 w-48 rounded-lg"></div> <div class="animate-pulse rounded-md bg-muted h-64 rounded-xl"></div></div>'),he=m('<div class="flex flex-col items-center gap-2 rounded-lg border border-dashed px-6 py-12 text-center"><span class="flex size-10 items-center justify-center rounded-full bg-muted"><!></span> <p class="text-sm font-medium">插件清单读取失败</p> <p class="max-w-sm text-xs text-muted-foreground"> </p></div>'),ge=m('<div class="flex flex-col items-center gap-2 rounded-lg border border-dashed px-6 py-12 text-center"><span class="flex size-10 items-center justify-center rounded-full bg-muted"><!></span> <p class="text-sm font-medium">没有已安装的插件</p> <p class="max-w-sm text-xs text-muted-foreground">通过 paperkite plugin add 安装插件,或在核心 bundles 中声明内置插件。</p></div>'),be=m('<span class="font-mono"> </span> <span class="text-[10px] opacity-70"> </span>',1),_e=m('<tr class="border-b transition-colors hover:bg-muted/40 data-[state=selected]:bg-muted"><td class="p-4 align-middle [&amp;:has([role=checkbox])]:pr-0"><div class="flex items-center gap-2"><span class="flex size-7 items-center justify-center rounded-md border bg-muted/50 text-muted-foreground"><!></span> <span class="font-mono tracking-tight text-sm"> </span></div></td><td class="p-4 align-middle [&amp;:has([role=checkbox])]:pr-0"><span class="font-mono text-xs text-muted-foreground"> </span></td><td class="p-4 align-middle [&amp;:has([role=checkbox])]:pr-0 hidden md:table-cell"><div class="flex flex-wrap gap-1"></div></td><td class="p-4 align-middle [&amp;:has([role=checkbox])]:pr-0 text-center"><!></td></tr>'),ke=m('<div class="rounded-lg border bg-card text-card-foreground shadow-sm"><div class="p-0"><div class="relative w-full overflow-auto"><table class="w-full caption-bottom text-sm"><thead class="[&amp;_tr]:border-b"><tr class="border-b transition-colors hover:bg-muted/40 data-[state=selected]:bg-muted"><th class="h-10 px-4 text-left align-middle font-medium text-muted-foreground [&amp;:has([role=checkbox])]:pr-0">插件</th><th class="h-10 px-4 text-left align-middle font-medium text-muted-foreground [&amp;:has([role=checkbox])]:pr-0">版本</th><th class="h-10 px-4 text-left align-middle font-medium text-muted-foreground [&amp;:has([role=checkbox])]:pr-0 hidden md:table-cell">能力</th><th class="h-10 px-4 text-left align-middle font-medium text-muted-foreground [&amp;:has([role=checkbox])]:pr-0 w-24 text-center">状态</th></tr></thead><tbody class="[&amp;_tr:last-child]:border-0"></tbody></table></div></div></div>');function Ae(M,O){ie(O,!0);const Q={action:"动作",trigger:"触发器",service:"服务"};let f=F(null),x=F(null);ce(()=>{let a=!1;return ue.plugins().then(e=>{a||C(f,e,!0)}).catch(e=>{a||C(x,ve(e),!0)}),()=>{a=!0}});var L=ne(),R=q(L);{var S=a=>{var e=xe();l(a,e)},U=a=>{var e=he(),o=s(e),c=s(o);J(c,{class:"size-5 text-muted-foreground","aria-hidden":"true"}),t(o);var h=i(o,4),g=v(h,!0);t(e),j(()=>u(g,r(x))),l(a,e)},V=a=>{var e=ge(),o=s(e),c=s(o);J(c,{class:"size-5 text-muted-foreground","aria-hidden":"true"}),t(o),B(4),t(e),l(a,e)},W=a=>{var e=ke(),o=s(e),c=s(o),h=s(c),g=i(s(h));H(g,21,()=>r(f),_=>_.name,(_,b)=>{var k=_e(),y=s(k),A=s(y),w=s(A),X=s(w);fe(X,{class:"size-3.5","aria-hidden":"true"}),t(w);var Y=i(w,2),Z=v(Y,!0);t(A),t(y);var z=i(y),ee=s(z),te=v(ee,!0);t(z);var P=i(z),E=s(P);H(E,21,()=>r(b).capabilities,d=>d.name,(d,n)=>{{let $=pe(()=>r(n).kind==="action"?"default":r(n).kind==="trigger"?"outline":"secondary");D(d,{get variant(){return r($)},children:(p,ye)=>{var K=be(),N=q(K),de=v(N,!0),oe=i(N,2),le=v(oe);j(()=>{u(de,r(n).name),u(le,`· ${Q[r(n).kind]??""}`)}),l(p,K)},$$slots:{default:!0}})}}),t(E),t(P);var I=i(P),ae=s(I);{var re=d=>{D(d,{variant:"secondary",children:(n,$)=>{B();var p=T("已加载");l(n,p)},$$slots:{default:!0}})},se=d=>{D(d,{variant:"outline",class:"text-muted-foreground",children:(n,$)=>{B();var p=T("未加载");l(n,p)},$$slots:{default:!0}})};G(ae,d=>{r(b).loaded?d(re):d(se,-1)})}t(I),t(k),j(()=>{u(Z,r(b).name),u(te,r(b).version??"-")}),l(_,k)}),t(g),t(h),t(c),t(o),t(e),l(a,e)};G(R,a=>{!r(f)&&!r(x)?a(S):r(x)?a(U,1):r(f).length===0?a(V,2):a(W,-1)})}l(M,L),me()}export{Ae as component};
@@ -0,0 +1 @@
1
+ import{a as n,f as c,t as nt,s as v}from"../chunks/ywqHnl7S.js";import{p as it,h as ct,e as m,j as s,g as t,r as a,k as g,B as E,D as _,l as P,c as mt,a as V,i as pt}from"../chunks/DLXc3MsS.js";import{i as R}from"../chunks/B36KvkWl.js";import{e as q,g as vt}from"../chunks/C1dm7snI.js";import{r as ut,B as ft,a as C}from"../chunks/4FxxAFXN.js";import{B as F}from"../chunks/BKgPCz3n.js";import{b as xt,e as ht}from"../chunks/C3IMQzMn.js";import{U as gt}from"../chunks/-MWhb9c-.js";import{R as _t}from"../chunks/DVEB1r5D.js";var bt=c('<div class="flex flex-col items-center gap-2 rounded-lg border border-dashed px-6 py-12 text-center"><span class="flex size-10 items-center justify-center rounded-full bg-muted"><!></span> <p class="text-sm font-medium">没有会话</p> <p class="max-w-sm text-xs text-muted-foreground">流程引用哪个会话,运行时启动后这里就会出现对应的状态。</p></div>'),$t=c('<span class="text-xs text-muted-foreground/60">-</span>'),kt=c('<span class="font-mono"> </span>'),wt=c('<div class="flex flex-wrap gap-1"></div>'),yt=c("<!> 立即重试",1),Tt=c('<tr class="border-b transition-colors hover:bg-muted/40 data-[state=selected]:bg-muted"><td class="p-4 align-middle [&amp;:has([role=checkbox])]:pr-0"><div class="flex flex-col gap-0.5"><span class="font-mono tracking-tight text-sm"> </span> <span class="font-mono text-[11px] text-muted-foreground"> </span></div></td><td class="p-4 align-middle [&amp;:has([role=checkbox])]:pr-0"><!></td><td class="p-4 align-middle [&amp;:has([role=checkbox])]:pr-0 hidden max-w-72 md:table-cell"><span class="text-xs text-muted-foreground"> </span></td><td class="p-4 align-middle [&amp;:has([role=checkbox])]:pr-0 hidden md:table-cell"><!></td><td class="p-4 align-middle [&amp;:has([role=checkbox])]:pr-0 text-right"><!></td></tr>'),Bt=c('<div class="rounded-lg border bg-card text-card-foreground shadow-sm"><div class="p-0"><div class="relative w-full overflow-auto"><table class="w-full caption-bottom text-sm"><thead class="[&amp;_tr]:border-b"><tr class="border-b transition-colors hover:bg-muted/40 data-[state=selected]:bg-muted"><th class="h-10 px-4 text-left align-middle font-medium text-muted-foreground [&amp;:has([role=checkbox])]:pr-0">会话</th><th class="h-10 px-4 text-left align-middle font-medium text-muted-foreground [&amp;:has([role=checkbox])]:pr-0">状态</th><th class="h-10 px-4 text-left align-middle font-medium text-muted-foreground [&amp;:has([role=checkbox])]:pr-0 hidden md:table-cell">说明</th><th class="h-10 px-4 text-left align-middle font-medium text-muted-foreground [&amp;:has([role=checkbox])]:pr-0 hidden md:table-cell">受影响流程</th><th class="h-10 px-4 text-left align-middle font-medium text-muted-foreground [&amp;:has([role=checkbox])]:pr-0 w-32"></th></tr></thead><tbody class="[&amp;_tr:last-child]:border-0"></tbody></table></div></div></div>'),At=c('<div class="flex flex-col gap-4"><div class="flex flex-wrap items-center gap-2"><h2 class="font-display text-sm font-semibold tracking-tight">Telegram 会话状态</h2> <span class="flex-1"></span> <span class="text-xs text-muted-foreground">状态变化实时同步,隔离与恢复自动完成</span></div> <!></div>');function It(G,H){it(H,!0);const J={connected:"已连接",starting:"连接中",isolated:"已隔离","waiting-auth":"等待登录"},K={connected:"default",starting:"outline",isolated:"destructive","waiting-auth":"destructive"},S=g(()=>ut.snapshot?.sessions??[]);let u=pt(null);async function M(d){V(u,d.name,!0);try{await vt.reconnectSession(d.name),C.success(`已触发 ${d.name} 重连`)}catch(l){C.error(ht(l))}finally{V(u,null)}}var b=At(),O=m(s(b),2);{var Q=d=>{var l=bt(),p=s(l),f=s(p);gt(f,{class:"size-5 text-muted-foreground","aria-hidden":"true"}),a(p),E(4),a(l),n(d,l)},W=d=>{var l=Bt(),p=s(l),f=s(p),j=s(f),D=m(s(j));q(D,21,()=>t(S),$=>$.name,($,e)=>{var k=Tt(),w=s(k),L=s(w),U=s(L),X=_(U,!0),Y=m(U,2),Z=_(Y);a(L),a(w);var y=m(w),tt=s(y);F(tt,{get variant(){return K[t(e).state]},children:(r,i)=>{E();var o=nt();P(()=>v(o,`${J[t(e).state]??""}${t(e).state==="isolated"&&t(e).attempts>0?` · 第 ${t(e).attempts} 次`:""}`)),n(r,o)},$$slots:{default:!0}}),a(y);var T=m(y),et=s(T),at=_(et,!0);a(T);var B=m(T),rt=s(B);{var st=r=>{var i=$t();n(r,i)},dt=r=>{var i=wt();q(i,21,()=>t(e).flows,o=>o.kind+":"+o.id,(o,x)=>{F(o,{variant:"outline",children:(N,A)=>{var h=kt(),z=_(h);P(()=>v(z,`${t(x).kind??""}:${t(x).id??""}`)),n(N,h)},$$slots:{default:!0}})}),a(i),n(r,i)};R(rt,r=>{t(e).flows.length===0?r(st):r(dt,-1)})}a(B);var I=m(B),lt=s(I);{var ot=r=>{{let i=g(()=>t(u)===t(e).name),o=g(()=>`重连 ${t(e).name}`);ft(r,{variant:"outline",size:"sm",get disabled(){return t(i)},onclick:()=>{M(t(e))},get"aria-label"(){return t(o)},children:(x,N)=>{var A=yt(),h=mt(A);{let z=g(()=>"size-3.5 "+(t(u)===t(e).name?"animate-spin":""));_t(h,{get class(){return t(z)},"aria-hidden":"true"})}E(),n(x,A)},$$slots:{default:!0}})}};R(lt,r=>{(t(e).state==="isolated"||t(e).state==="waiting-auth")&&r(ot)})}a(I),a(k),P(r=>{v(X,t(e).name),v(Z,`自 ${r??""}`),v(at,t(e).reason??"-")},[()=>xt(t(e).since)]),n($,k)}),a(D),a(j),a(f),a(p),a(l),n(d,l)};R(O,d=>{t(S).length===0?d(Q):d(W,-1)})}a(b),n(G,b),ct()}export{It as component};
@@ -0,0 +1 @@
1
+ {"version":"1789005546290"}
@@ -0,0 +1,59 @@
1
+ <!doctype html>
2
+ <html lang="zh-CN">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <meta name="color-scheme" content="light dark" />
7
+ <title>纸鸢 · 运行控制台</title>
8
+ <link href="/_app/immutable/entry/start.BfgCqfOg.js" rel="modulepreload">
9
+ <link href="/_app/immutable/chunks/DLXc3MsS.js" rel="modulepreload">
10
+ <link href="/_app/immutable/chunks/BM-d1iyU.js" rel="modulepreload">
11
+ <link href="/_app/immutable/chunks/D3H57P1T.js" rel="modulepreload">
12
+ <link href="/_app/immutable/entry/app.xGcxUCtq.js" rel="modulepreload">
13
+ <link href="/_app/immutable/chunks/ywqHnl7S.js" rel="modulepreload">
14
+ <link href="/_app/immutable/chunks/B36KvkWl.js" rel="modulepreload">
15
+ <link href="/_app/immutable/chunks/Cl3lhUWL.js" rel="modulepreload">
16
+ <link href="/_app/immutable/chunks/DwNr-XJb.js" rel="modulepreload">
17
+ <link href="/_app/immutable/nodes/0.6NyaEHme.js" rel="modulepreload">
18
+ <link href="/_app/immutable/chunks/C1dm7snI.js" rel="modulepreload">
19
+ <link href="/_app/immutable/chunks/Dk_FALGi.js" rel="modulepreload">
20
+ <link href="/_app/immutable/chunks/4FxxAFXN.js" rel="modulepreload">
21
+ <link href="/_app/immutable/chunks/B8_hs9R4.js" rel="modulepreload">
22
+ <link href="/_app/immutable/chunks/BkeJCmZR.js" rel="modulepreload">
23
+ <link href="/_app/immutable/chunks/u9x_yOz5.js" rel="modulepreload">
24
+ <link href="/_app/immutable/chunks/1mqgODEB.js" rel="modulepreload">
25
+ <link href="/_app/immutable/chunks/BHsjJ8bF.js" rel="modulepreload">
26
+ <link href="/_app/immutable/chunks/-MWhb9c-.js" rel="modulepreload">
27
+ <link href="/_app/immutable/chunks/JYomMW8A.js" rel="modulepreload">
28
+ <link href="/_app/immutable/chunks/B1VSXVja.js" rel="modulepreload">
29
+
30
+ <link href="/_app/immutable/assets/0.DtIwIIdd.css" rel="stylesheet">
31
+ <script>
32
+ (() => {
33
+ const saved = localStorage.getItem("console-web-theme");
34
+ const dark = saved ? saved === "dark" : matchMedia("(prefers-color-scheme: dark)").matches;
35
+ document.documentElement.classList.toggle("dark", dark);
36
+ })();
37
+ </script>
38
+ </head>
39
+ <body>
40
+
41
+ <script>
42
+ {
43
+ __sveltekit_19y9esb = {
44
+ base: ""
45
+ };
46
+
47
+ const element = document.currentScript.parentElement;
48
+
49
+ Promise.all([
50
+ import("/_app/immutable/entry/start.BfgCqfOg.js"),
51
+ import("/_app/immutable/entry/app.xGcxUCtq.js")
52
+ ]).then(([kit, app]) => {
53
+ kit.start(app, element);
54
+ });
55
+ }
56
+ </script>
57
+
58
+ </body>
59
+ </html>