@clawos-dev/clawd 0.2.420 → 0.2.422
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cli.cjs
CHANGED
|
@@ -62312,7 +62312,7 @@ function computeMethodAccess(args) {
|
|
|
62312
62312
|
}
|
|
62313
62313
|
|
|
62314
62314
|
// src/version.ts
|
|
62315
|
-
var version = "0.2.
|
|
62315
|
+
var version = "0.2.422".length > 0 ? "0.2.422" : "dev";
|
|
62316
62316
|
|
|
62317
62317
|
// src/cli-probe/probe.ts
|
|
62318
62318
|
var fs65 = __toESM(require("fs"), 1);
|
|
@@ -93,7 +93,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
93
93
|
0 -3px 6px -4px rgba(0, 0, 0, 0.12),
|
|
94
94
|
0 -9px 28px 8px rgba(0, 0, 0, 0.05)
|
|
95
95
|
`,boxShadowTabsOverflowLeft:"inset 10px 0 8px -8px rgba(0, 0, 0, 0.08)",boxShadowTabsOverflowRight:"inset -10px 0 8px -8px rgba(0, 0, 0, 0.08)",boxShadowTabsOverflowTop:"inset 0 10px 8px -8px rgba(0, 0, 0, 0.08)",boxShadowTabsOverflowBottom:"inset 0 -10px 8px -8px rgba(0, 0, 0, 0.08)"}),r)}var cw=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n};const JD={lineHeight:!0,lineHeightSM:!0,lineHeightLG:!0,lineHeightHeading1:!0,lineHeightHeading2:!0,lineHeightHeading3:!0,lineHeightHeading4:!0,lineHeightHeading5:!0,opacityLoading:!0,fontWeightStrong:!0,zIndexPopupBase:!0,zIndexBase:!0,opacityImage:!0},eO={motionBase:!0,motionUnit:!0},tO={screenXS:!0,screenXSMin:!0,screenXSMax:!0,screenSM:!0,screenSMMin:!0,screenSMMax:!0,screenMD:!0,screenMDMin:!0,screenMDMax:!0,screenLG:!0,screenLGMin:!0,screenLGMax:!0,screenXL:!0,screenXLMin:!0,screenXLMax:!0,screenXXL:!0,screenXXLMin:!0},hT=(e,t,n)=>{const r=n.getDerivativeToken(e),{override:i}=t,s=cw(t,["override"]);let o=Object.assign(Object.assign({},r),{override:i});return o=dT(o),s&&Object.entries(s).forEach(([a,l])=>{const{theme:c}=l,u=cw(l,["theme"]);let d=u;c&&(d=hT(Object.assign(Object.assign({},o),u),{override:u},c)),o[a]=d}),o};function fT(){const{token:e,hashed:t,theme:n,override:r,cssVar:i}=Ze.useContext(cT),s=`${ZD}-${t||""}`,o=n||lT,[a,l,c]=FL(o,[Wc,e],{salt:s,override:r,getComputedToken:hT,formatToken:dT,cssVar:i&&{prefix:i.prefix,key:i.key,unitless:JD,ignore:eO,preserve:tO}});return[o,c,t?l:"",a,i]}const nO=()=>({display:"inline-flex",alignItems:"center",color:"inherit",fontStyle:"normal",lineHeight:0,textAlign:"center",textTransform:"none",verticalAlign:"-0.125em",textRendering:"optimizeLegibility","-webkit-font-smoothing":"antialiased","-moz-osx-font-smoothing":"grayscale","> *":{lineHeight:1},svg:{display:"inline-block"}}),rO=e=>({[`.${e}`]:Object.assign(Object.assign({},nO()),{[`.${e} .${e}-icon`]:{display:"block"}})}),iO=(e,t)=>{const[n,r]=fT();return mD({token:r,hashId:"",path:["ant-design-icons",e],nonce:()=>t==null?void 0:t.nonce,layer:{name:"antd"}},()=>rO(e))},sO=Object.assign({},el),{useId:uw}=sO,oO=()=>"",aO=typeof uw>"u"?oO:uw;function lO(e,t,n){var r;const i=e||{},s=i.inherit===!1||!t?Object.assign(Object.assign({},zh),{hashed:(r=t==null?void 0:t.hashed)!==null&&r!==void 0?r:zh.hashed,cssVar:t==null?void 0:t.cssVar}):t,o=aO();return RN(()=>{var a,l;if(!e)return t;const c=Object.assign({},s.components);Object.keys(e.components||{}).forEach(f=>{c[f]=Object.assign(Object.assign({},c[f]),e.components[f])});const u=`css-var-${o.replace(/:/g,"")}`,d=((a=i.cssVar)!==null&&a!==void 0?a:s.cssVar)&&Object.assign(Object.assign(Object.assign({prefix:n==null?void 0:n.prefixCls},typeof s.cssVar=="object"?s.cssVar:{}),typeof i.cssVar=="object"?i.cssVar:{}),{key:typeof i.cssVar=="object"&&((l=i.cssVar)===null||l===void 0?void 0:l.key)||u});return Object.assign(Object.assign(Object.assign({},s),i),{token:Object.assign(Object.assign({},s.token),i.token),components:c,cssVar:d})},[i,s],(a,l)=>a.some((c,u)=>{const d=l[u];return!mL(c,d,!0)}))}var cO=["children"],pT=g.createContext({});function uO(e){var t=e.children,n=jv(e,cO);return g.createElement(pT.Provider,{value:n},t)}var dO=function(e){AN(n,e);var t=LN(n);function n(){return il(this,n),t.apply(this,arguments)}return sl(n,[{key:"render",value:function(){return this.props.children}}]),n}(g.Component);function hO(e){var t=g.useReducer(function(a){return a+1},0),n=Je(t,2),r=n[1],i=g.useRef(e),s=n0(function(){return i.current}),o=n0(function(a){i.current=typeof a=="function"?a(i.current):a,r()});return[s,o]}var rs="none",id="appear",sd="enter",od="leave",dw="none",Ir="prepare",pa="start",ma="active",B_="end",mT="prepared";function hw(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit".concat(e)]="webkit".concat(t),n["Moz".concat(e)]="moz".concat(t),n["ms".concat(e)]="MS".concat(t),n["O".concat(e)]="o".concat(t.toLowerCase()),n}function fO(e,t){var n={animationend:hw("Animation","AnimationEnd"),transitionend:hw("Transition","TransitionEnd")};return e&&("AnimationEvent"in t||delete n.animationend.animation,"TransitionEvent"in t||delete n.transitionend.transition),n}var pO=fO(Hi(),typeof window<"u"?window:{}),gT={};if(Hi()){var mO=document.createElement("div");gT=mO.style}var ad={};function vT(e){if(ad[e])return ad[e];var t=pO[e];if(t)for(var n=Object.keys(t),r=n.length,i=0;i<r;i+=1){var s=n[i];if(Object.prototype.hasOwnProperty.call(t,s)&&s in gT)return ad[e]=t[s],ad[e]}return""}var xT=vT("animationend"),_T=vT("transitionend"),yT=!!(xT&&_T),fw=xT||"animationend",pw=_T||"transitionend";function mw(e,t){if(!e)return null;if(Et(e)==="object"){var n=t.replace(/-\w/g,function(r){return r[1].toUpperCase()});return e[n]}return"".concat(e,"-").concat(t)}const gO=function(e){var t=g.useRef();function n(i){i&&(i.removeEventListener(pw,e),i.removeEventListener(fw,e))}function r(i){t.current&&t.current!==i&&n(t.current),i&&i!==t.current&&(i.addEventListener(pw,e),i.addEventListener(fw,e),t.current=i)}return g.useEffect(function(){return function(){n(t.current)}},[]),[r,n]};var bT=Hi()?g.useLayoutEffect:g.useEffect;const vO=function(){var e=g.useRef(null);function t(){Mv.cancel(e.current)}function n(r){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:2;t();var s=Mv(function(){i<=1?r({isCanceled:function(){return s!==e.current}}):n(r,i-1)});e.current=s}return g.useEffect(function(){return function(){t()}},[]),[n,t]};var xO=[Ir,pa,ma,B_],_O=[Ir,mT],wT=!1,yO=!0;function ST(e){return e===ma||e===B_}const bO=function(e,t,n){var r=r0(dw),i=Je(r,2),s=i[0],o=i[1],a=vO(),l=Je(a,2),c=l[0],u=l[1];function d(){o(Ir,!0)}var f=t?_O:xO;return bT(function(){if(s!==dw&&s!==B_){var p=f.indexOf(s),m=f[p+1],v=n(s);v===wT?o(m,!0):m&&c(function(b){function x(){b.isCanceled()||o(m,!0)}v===!0?x():Promise.resolve(v).then(x)})}},[e,s]),g.useEffect(function(){return function(){u()}},[]),[d,s]};function wO(e,t,n,r){var i=r.motionEnter,s=i===void 0?!0:i,o=r.motionAppear,a=o===void 0?!0:o,l=r.motionLeave,c=l===void 0?!0:l,u=r.motionDeadline,d=r.motionLeaveImmediately,f=r.onAppearPrepare,p=r.onEnterPrepare,m=r.onLeavePrepare,v=r.onAppearStart,b=r.onEnterStart,x=r.onLeaveStart,_=r.onAppearActive,y=r.onEnterActive,w=r.onLeaveActive,k=r.onAppearEnd,C=r.onEnterEnd,N=r.onLeaveEnd,T=r.onVisibleChanged,z=r0(),I=Je(z,2),O=I[0],M=I[1],R=hO(rs),A=Je(R,2),L=A[0],$=A[1],F=r0(null),D=Je(F,2),B=D[0],E=D[1],H=L(),q=g.useRef(!1),j=g.useRef(null);function ne(){return n()}var le=g.useRef(!1);function K(){$(rs),E(null,!0)}var ye=n0(function(nt){var st=L();if(st!==rs){var gt=ne();if(!(nt&&!nt.deadline&&nt.target!==gt)){var kn=le.current,Zt;st===id&&kn?Zt=k==null?void 0:k(gt,nt):st===sd&&kn?Zt=C==null?void 0:C(gt,nt):st===od&&kn&&(Zt=N==null?void 0:N(gt,nt)),kn&&Zt!==!1&&K()}}}),Me=gO(ye),ce=Je(Me,1),Ie=ce[0],Ae=function(st){switch(st){case id:return ke(ke(ke({},Ir,f),pa,v),ma,_);case sd:return ke(ke(ke({},Ir,p),pa,b),ma,y);case od:return ke(ke(ke({},Ir,m),pa,x),ma,w);default:return{}}},Ve=g.useMemo(function(){return Ae(H)},[H]),be=bO(H,!e,function(nt){if(nt===Ir){var st=Ve[Ir];return st?st(ne()):wT}if(Qe in Ve){var gt;E(((gt=Ve[Qe])===null||gt===void 0?void 0:gt.call(Ve,ne(),null))||null)}return Qe===ma&&H!==rs&&(Ie(ne()),u>0&&(clearTimeout(j.current),j.current=setTimeout(function(){ye({deadline:!0})},u))),Qe===mT&&K(),yO}),Ye=Je(be,2),Yt=Ye[0],Qe=Ye[1],jt=ST(Qe);le.current=jt;var Ft=g.useRef(null);bT(function(){if(!(q.current&&Ft.current===t)){M(t);var nt=q.current;q.current=!0;var st;!nt&&t&&a&&(st=id),nt&&t&&s&&(st=sd),(nt&&!t&&c||!nt&&d&&!t&&c)&&(st=od);var gt=Ae(st);st&&(e||gt[Ir])?($(st),Yt()):$(rs),Ft.current=t}},[t]),g.useEffect(function(){(H===id&&!a||H===sd&&!s||H===od&&!c)&&$(rs)},[a,s,c]),g.useEffect(function(){return function(){q.current=!1,clearTimeout(j.current)}},[]);var It=g.useRef(!1);g.useEffect(function(){O&&(It.current=!0),O!==void 0&&H===rs&&((It.current||O)&&(T==null||T(O)),It.current=!0)},[O,H]);var ht=B;return Ve[Ir]&&Qe===pa&&(ht=Fe({transition:"none"},ht)),[H,Qe,ht,O??t]}function SO(e){var t=e;Et(e)==="object"&&(t=e.transitionSupport);function n(i,s){return!!(i.motionName&&t&&s!==!1)}var r=g.forwardRef(function(i,s){var o=i.visible,a=o===void 0?!0:o,l=i.removeOnLeave,c=l===void 0?!0:l,u=i.forceRender,d=i.children,f=i.motionName,p=i.leavedClassName,m=i.eventProps,v=g.useContext(pT),b=v.motion,x=n(i,b),_=g.useRef(),y=g.useRef();function w(){try{return _.current instanceof HTMLElement?_.current:Qj(y.current)}catch{return null}}var k=wO(x,a,w,i),C=Je(k,4),N=C[0],T=C[1],z=C[2],I=C[3],O=g.useRef(I);I&&(O.current=!0);var M=g.useCallback(function(D){_.current=D,nL(s,D)},[s]),R,A=Fe(Fe({},m),{},{visible:a});if(!d)R=null;else if(N===rs)I?R=d(Fe({},A),M):!c&&O.current&&p?R=d(Fe(Fe({},A),{},{className:p}),M):u||!c&&!p?R=d(Fe(Fe({},A),{},{style:{display:"none"}}),M):R=null;else{var L;T===Ir?L="prepare":ST(T)?L="active":T===pa&&(L="start");var $=mw(f,"".concat(N,"-").concat(L));R=d(Fe(Fe({},A),{},{className:$j(mw(f,N),ke(ke({},$,$&&L),f,typeof f=="string")),style:z}),M)}if(g.isValidElement(R)&&rL(R)){var F=iL(R);F||(R=g.cloneElement(R,{ref:M}))}return g.createElement(dO,{ref:y},R)});return r.displayName="CSSMotion",r}const kO=SO(yT);var i0="add",s0="keep",o0="remove",Im="removed";function CO(e){var t;return e&&Et(e)==="object"&&"key"in e?t=e:t={key:e},Fe(Fe({},t),{},{key:String(t.key)})}function a0(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];return e.map(CO)}function EO(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],n=[],r=0,i=t.length,s=a0(e),o=a0(t);s.forEach(function(c){for(var u=!1,d=r;d<i;d+=1){var f=o[d];if(f.key===c.key){r<d&&(n=n.concat(o.slice(r,d).map(function(p){return Fe(Fe({},p),{},{status:i0})})),r=d),n.push(Fe(Fe({},f),{},{status:s0})),r+=1,u=!0;break}}u||n.push(Fe(Fe({},c),{},{status:o0}))}),r<i&&(n=n.concat(o.slice(r).map(function(c){return Fe(Fe({},c),{},{status:i0})})));var a={};n.forEach(function(c){var u=c.key;a[u]=(a[u]||0)+1});var l=Object.keys(a).filter(function(c){return a[c]>1});return l.forEach(function(c){n=n.filter(function(u){var d=u.key,f=u.status;return d!==c||f!==o0}),n.forEach(function(u){u.key===c&&(u.status=s0)})}),n}var NO=["component","children","onVisibleChanged","onAllRemoved"],TO=["status"],IO=["eventProps","visible","children","motionName","motionAppear","motionEnter","motionLeave","motionLeaveImmediately","motionDeadline","removeOnLeave","leavedClassName","onAppearPrepare","onAppearStart","onAppearActive","onAppearEnd","onEnterStart","onEnterActive","onEnterEnd","onLeaveStart","onLeaveActive","onLeaveEnd"];function PO(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:kO,n=function(r){AN(s,r);var i=LN(s);function s(){var o;il(this,s);for(var a=arguments.length,l=new Array(a),c=0;c<a;c++)l[c]=arguments[c];return o=i.call.apply(i,[this].concat(l)),ke(Pv(o),"state",{keyEntities:[]}),ke(Pv(o),"removeKey",function(u){o.setState(function(d){var f=d.keyEntities.map(function(p){return p.key!==u?p:Fe(Fe({},p),{},{status:Im})});return{keyEntities:f}},function(){var d=o.state.keyEntities,f=d.filter(function(p){var m=p.status;return m!==Im}).length;f===0&&o.props.onAllRemoved&&o.props.onAllRemoved()})}),o}return sl(s,[{key:"render",value:function(){var a=this,l=this.state.keyEntities,c=this.props,u=c.component,d=c.children,f=c.onVisibleChanged;c.onAllRemoved;var p=jv(c,NO),m=u||g.Fragment,v={};return IO.forEach(function(b){v[b]=p[b],delete p[b]}),delete p.keys,g.createElement(m,p,l.map(function(b,x){var _=b.status,y=jv(b,TO),w=_===i0||_===s0;return g.createElement(t,Dh({},v,{key:y.key,visible:w,eventProps:y,onVisibleChanged:function(C){f==null||f(C,{key:y.key}),C||a.removeKey(y.key)}}),function(k,C){return d(Fe(Fe({},k),{},{index:x}),C)})}))}}],[{key:"getDerivedStateFromProps",value:function(a,l){var c=a.keys,u=l.keyEntities,d=a0(c),f=EO(u,d);return{keyEntities:f.filter(function(p){var m=u.find(function(v){var b=v.key;return p.key===b});return!(m&&m.status===Im&&p.status===o0)})}}}]),s}(g.Component);return ke(n,"defaultProps",{component:"div"}),n}PO(yT);const gw=g.createContext(!0);function RO(e){const t=g.useContext(gw),{children:n}=e,[,r]=fT(),{motion:i}=r,s=g.useRef(!1);return s.current||(s.current=t!==i),s.current?g.createElement(gw.Provider,{value:i},g.createElement(uO,{motion:i},n)):n}const MO=()=>null;var AO=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n};const jO=["getTargetContainer","getPopupContainer","renderEmpty","input","pagination","form","select","button"];let kT;function LO(){return kT||e0}function DO(e){return Object.keys(e).some(t=>t.endsWith("Color"))}const OO=e=>{const{prefixCls:t,iconPrefixCls:n,theme:r,holderRender:i}=e;t!==void 0&&(kT=t),r&&DO(r)&&VD(LO(),r)},BO=e=>{const{children:t,csp:n,autoInsertSpaceInButton:r,alert:i,anchor:s,form:o,locale:a,componentSize:l,direction:c,space:u,splitter:d,virtual:f,dropdownMatchSelectWidth:p,popupMatchSelectWidth:m,popupOverflow:v,legacyLocale:b,parentContext:x,iconPrefixCls:_,theme:y,componentDisabled:w,segmented:k,statistic:C,spin:N,calendar:T,carousel:z,cascader:I,collapse:O,typography:M,checkbox:R,descriptions:A,divider:L,drawer:$,skeleton:F,steps:D,image:B,layout:E,list:H,mentions:q,modal:j,progress:ne,result:le,slider:K,breadcrumb:ye,menu:Me,pagination:ce,input:Ie,textArea:Ae,empty:Ve,badge:be,radio:Ye,rate:Yt,switch:Qe,transfer:jt,avatar:Ft,message:It,tag:ht,table:nt,card:st,tabs:gt,timeline:kn,timePicker:Zt,upload:U,notification:J,tree:xe,colorPicker:Ce,datePicker:$e,rangePicker:Pt,flex:an,wave:Ht,dropdown:oe,warning:G,tour:we,tooltip:ft,popover:ln,popconfirm:yl,floatButton:bl,floatButtonGroup:wl,variant:Up,inputNumber:Du,treeSelect:Wp}=e,Sl=g.useCallback((St,X)=>{const{prefixCls:ge}=e;if(X)return X;const ve=ge||x.getPrefixCls("");return St?`${ve}-${St}`:ve},[x.getPrefixCls,e.prefixCls]),Us=_||x.iconPrefixCls||uT,Fo=n||x.csp;iO(Us,Fo);const Ho=lO(y,x.theme,{prefixCls:Sl("")}),Ws={csp:Fo,autoInsertSpaceInButton:r,alert:i,anchor:s,locale:a||b,direction:c,space:u,splitter:d,virtual:f,popupMatchSelectWidth:m??p,popupOverflow:v,getPrefixCls:Sl,iconPrefixCls:Us,theme:Ho,segmented:k,statistic:C,spin:N,calendar:T,carousel:z,cascader:I,collapse:O,typography:M,checkbox:R,descriptions:A,divider:L,drawer:$,skeleton:F,steps:D,image:B,input:Ie,textArea:Ae,layout:E,list:H,mentions:q,modal:j,progress:ne,result:le,slider:K,breadcrumb:ye,menu:Me,pagination:ce,empty:Ve,badge:be,radio:Ye,rate:Yt,switch:Qe,transfer:jt,avatar:Ft,message:It,tag:ht,table:nt,card:st,tabs:gt,timeline:kn,timePicker:Zt,upload:U,notification:J,tree:xe,colorPicker:Ce,datePicker:$e,rangePicker:Pt,flex:an,wave:Ht,dropdown:oe,warning:G,tour:we,tooltip:ft,popover:ln,popconfirm:yl,floatButton:bl,floatButtonGroup:wl,variant:Up,inputNumber:Du,treeSelect:Wp},Xi=Object.assign({},x);Object.keys(Ws).forEach(St=>{Ws[St]!==void 0&&(Xi[St]=Ws[St])}),jO.forEach(St=>{const X=e[St];X&&(Xi[St]=X)}),typeof r<"u"&&(Xi.button=Object.assign({autoInsertSpace:r},Xi.button));const kr=RN(()=>Xi,Xi,(St,X)=>{const ge=Object.keys(St),ve=Object.keys(X);return ge.length!==ve.length||ge.some(Ke=>St[Ke]!==X[Ke])}),{layer:Ou}=g.useContext(Yf),Vp=g.useMemo(()=>({prefixCls:Us,csp:Fo,layer:Ou?"antd":void 0}),[Us,Fo,Ou]);let Rt=g.createElement(g.Fragment,null,g.createElement(MO,{dropdownMatchSelectWidth:p}),t);const Vs=g.useMemo(()=>{var St,X,ge,ve;return SD(((St=Jf.Form)===null||St===void 0?void 0:St.defaultValidateMessages)||{},((ge=(X=kr.locale)===null||X===void 0?void 0:X.Form)===null||ge===void 0?void 0:ge.defaultValidateMessages)||{},((ve=kr.form)===null||ve===void 0?void 0:ve.validateMessages)||{},(o==null?void 0:o.validateMessages)||{})},[kr,o==null?void 0:o.validateMessages]);Object.keys(Vs).length>0&&(Rt=g.createElement(CD.Provider,{value:Vs},Rt)),a&&(Rt=g.createElement(TD,{locale:a,_ANT_MARK__:ND},Rt)),Rt=g.createElement(_D.Provider,{value:Vp},Rt),l&&(Rt=g.createElement(KD,{size:l},Rt)),Rt=g.createElement(RO,null,Rt);const qp=g.useMemo(()=>{const St=Ho||{},{algorithm:X,token:ge,components:ve,cssVar:Ke}=St,$r=AO(St,["algorithm","token","components","cssVar"]),kl=X&&(!Array.isArray(X)||X.length>0)?Dv(X):lT,Kp={};Object.entries(ve||{}).forEach(([s3,o3])=>{const vi=Object.assign({},o3);"algorithm"in vi&&(vi.algorithm===!0?vi.theme=kl:(Array.isArray(vi.algorithm)||typeof vi.algorithm=="function")&&(vi.theme=Dv(vi.algorithm)),delete vi.algorithm),Kp[s3]=vi});const k1=Object.assign(Object.assign({},Wc),ge);return Object.assign(Object.assign({},$r),{theme:kl,token:k1,components:Kp,override:Object.assign({override:k1},Kp),cssVar:Ke})},[Ho]);return y&&(Rt=g.createElement(cT.Provider,{value:qp},Rt)),kr.warning&&(Rt=g.createElement(kD.Provider,{value:kr.warning},Rt)),w!==void 0&&(Rt=g.createElement(qD,{disabled:w},Rt)),g.createElement(ep.Provider,{value:kr},Rt)},al=e=>{const t=g.useContext(ep),n=g.useContext(iT);return g.createElement(BO,Object.assign({parentContext:t,legacyLocale:n},e))};al.ConfigContext=ep;al.SizeContext=Vc;al.config=OO;al.useConfig=GD;Object.defineProperty(al,"SizeContext",{get:()=>Vc});const lr=(e,t)=>new yt(e).setA(t).toRgbString(),Vo=(e,t)=>new yt(e).lighten(t).toHexString(),zO=e=>{const t=za(e,{theme:"dark"});return{1:t[0],2:t[1],3:t[2],4:t[3],5:t[6],6:t[5],7:t[4],8:t[6],9:t[5],10:t[4]}},$O=(e,t)=>{const n=e||"#000",r=t||"#fff";return{colorBgBase:n,colorTextBase:r,colorText:lr(r,.85),colorTextSecondary:lr(r,.65),colorTextTertiary:lr(r,.45),colorTextQuaternary:lr(r,.25),colorFill:lr(r,.18),colorFillSecondary:lr(r,.12),colorFillTertiary:lr(r,.08),colorFillQuaternary:lr(r,.04),colorBgSolid:lr(r,.95),colorBgSolidHover:lr(r,1),colorBgSolidActive:lr(r,.9),colorBgElevated:Vo(n,12),colorBgContainer:Vo(n,8),colorBgLayout:Vo(n,0),colorBgSpotlight:Vo(n,26),colorBgBlur:lr(r,.04),colorBorder:Vo(n,26),colorBorderSecondary:Vo(n,19)}},FO=(e,t)=>{const n=Object.keys(D_).map(s=>{const o=za(e[s],{theme:"dark"});return Array.from({length:10},()=>1).reduce((a,l,c)=>(a[`${s}-${c+1}`]=o[c],a[`${s}${c+1}`]=o[c],a),{})}).reduce((s,o)=>(s=Object.assign(Object.assign({},s),o),s),{}),r=t??O_(e),i=aT(e,{generateColorPalettes:zO,generateNeutralColorPalettes:$O});return Object.assign(Object.assign(Object.assign(Object.assign({},r),n),i),{colorPrimaryBg:i.colorPrimaryBorder,colorPrimaryBgHover:i.colorPrimaryBorderHover})},vw={defaultSeed:zh.token,defaultAlgorithm:O_,darkAlgorithm:FO};function xw({children:e}){const t=T_(),[n,r]=g.useState(t.theme);return g.useEffect(()=>t.onThemeChange(r),[t]),h.jsx(al,{theme:{algorithm:n.mode==="dark"?vw.darkAlgorithm:vw.defaultAlgorithm,token:{colorPrimary:n.colorPrimary,colorBgContainer:n.colorBgContainer,colorText:n.colorText,colorBorder:n.colorBorder}},children:e})}var Ge;(function(e){e.assertEqual=i=>{};function t(i){}e.assertIs=t;function n(i){throw new Error}e.assertNever=n,e.arrayToEnum=i=>{const s={};for(const o of i)s[o]=o;return s},e.getValidEnumValues=i=>{const s=e.objectKeys(i).filter(a=>typeof i[i[a]]!="number"),o={};for(const a of s)o[a]=i[a];return e.objectValues(o)},e.objectValues=i=>e.objectKeys(i).map(function(s){return i[s]}),e.objectKeys=typeof Object.keys=="function"?i=>Object.keys(i):i=>{const s=[];for(const o in i)Object.prototype.hasOwnProperty.call(i,o)&&s.push(o);return s},e.find=(i,s)=>{for(const o of i)if(s(o))return o},e.isInteger=typeof Number.isInteger=="function"?i=>Number.isInteger(i):i=>typeof i=="number"&&Number.isFinite(i)&&Math.floor(i)===i;function r(i,s=" | "){return i.map(o=>typeof o=="string"?`'${o}'`:o).join(s)}e.joinValues=r,e.jsonStringifyReplacer=(i,s)=>typeof s=="bigint"?s.toString():s})(Ge||(Ge={}));var _w;(function(e){e.mergeShapes=(t,n)=>({...t,...n})})(_w||(_w={}));const de=Ge.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),as=e=>{switch(typeof e){case"undefined":return de.undefined;case"string":return de.string;case"number":return Number.isNaN(e)?de.nan:de.number;case"boolean":return de.boolean;case"function":return de.function;case"bigint":return de.bigint;case"symbol":return de.symbol;case"object":return Array.isArray(e)?de.array:e===null?de.null:e.then&&typeof e.then=="function"&&e.catch&&typeof e.catch=="function"?de.promise:typeof Map<"u"&&e instanceof Map?de.map:typeof Set<"u"&&e instanceof Set?de.set:typeof Date<"u"&&e instanceof Date?de.date:de.object;default:return de.unknown}},Y=Ge.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class Oi extends Error{get errors(){return this.issues}constructor(t){super(),this.issues=[],this.addIssue=r=>{this.issues=[...this.issues,r]},this.addIssues=(r=[])=>{this.issues=[...this.issues,...r]};const n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=t}format(t){const n=t||function(s){return s.message},r={_errors:[]},i=s=>{for(const o of s.issues)if(o.code==="invalid_union")o.unionErrors.map(i);else if(o.code==="invalid_return_type")i(o.returnTypeError);else if(o.code==="invalid_arguments")i(o.argumentsError);else if(o.path.length===0)r._errors.push(n(o));else{let a=r,l=0;for(;l<o.path.length;){const c=o.path[l];l===o.path.length-1?(a[c]=a[c]||{_errors:[]},a[c]._errors.push(n(o))):a[c]=a[c]||{_errors:[]},a=a[c],l++}}};return i(this),r}static assert(t){if(!(t instanceof Oi))throw new Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,Ge.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(t=n=>n.message){const n={},r=[];for(const i of this.issues)if(i.path.length>0){const s=i.path[0];n[s]=n[s]||[],n[s].push(t(i))}else r.push(t(i));return{formErrors:r,fieldErrors:n}}get formErrors(){return this.flatten()}}Oi.create=e=>new Oi(e);const l0=(e,t)=>{let n;switch(e.code){case Y.invalid_type:e.received===de.undefined?n="Required":n=`Expected ${e.expected}, received ${e.received}`;break;case Y.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(e.expected,Ge.jsonStringifyReplacer)}`;break;case Y.unrecognized_keys:n=`Unrecognized key(s) in object: ${Ge.joinValues(e.keys,", ")}`;break;case Y.invalid_union:n="Invalid input";break;case Y.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${Ge.joinValues(e.options)}`;break;case Y.invalid_enum_value:n=`Invalid enum value. Expected ${Ge.joinValues(e.options)}, received '${e.received}'`;break;case Y.invalid_arguments:n="Invalid function arguments";break;case Y.invalid_return_type:n="Invalid function return type";break;case Y.invalid_date:n="Invalid date";break;case Y.invalid_string:typeof e.validation=="object"?"includes"in e.validation?(n=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position=="number"&&(n=`${n} at one or more positions greater than or equal to ${e.validation.position}`)):"startsWith"in e.validation?n=`Invalid input: must start with "${e.validation.startsWith}"`:"endsWith"in e.validation?n=`Invalid input: must end with "${e.validation.endsWith}"`:Ge.assertNever(e.validation):e.validation!=="regex"?n=`Invalid ${e.validation}`:n="Invalid";break;case Y.too_small:e.type==="array"?n=`Array must contain ${e.exact?"exactly":e.inclusive?"at least":"more than"} ${e.minimum} element(s)`:e.type==="string"?n=`String must contain ${e.exact?"exactly":e.inclusive?"at least":"over"} ${e.minimum} character(s)`:e.type==="number"?n=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="bigint"?n=`Number must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${e.minimum}`:e.type==="date"?n=`Date must be ${e.exact?"exactly equal to ":e.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(e.minimum))}`:n="Invalid input";break;case Y.too_big:e.type==="array"?n=`Array must contain ${e.exact?"exactly":e.inclusive?"at most":"less than"} ${e.maximum} element(s)`:e.type==="string"?n=`String must contain ${e.exact?"exactly":e.inclusive?"at most":"under"} ${e.maximum} character(s)`:e.type==="number"?n=`Number must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="bigint"?n=`BigInt must be ${e.exact?"exactly":e.inclusive?"less than or equal to":"less than"} ${e.maximum}`:e.type==="date"?n=`Date must be ${e.exact?"exactly":e.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(e.maximum))}`:n="Invalid input";break;case Y.custom:n="Invalid input";break;case Y.invalid_intersection_types:n="Intersection results could not be merged";break;case Y.not_multiple_of:n=`Number must be a multiple of ${e.multipleOf}`;break;case Y.not_finite:n="Number must be finite";break;default:n=t.defaultError,Ge.assertNever(e)}return{message:n}};let HO=l0;function UO(){return HO}const WO=e=>{const{data:t,path:n,errorMaps:r,issueData:i}=e,s=[...n,...i.path||[]],o={...i,path:s};if(i.message!==void 0)return{...i,path:s,message:i.message};let a="";const l=r.filter(c=>!!c).slice().reverse();for(const c of l)a=c(o,{data:t,defaultError:a}).message;return{...i,path:s,message:a}};function se(e,t){const n=UO(),r=WO({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===l0?void 0:l0].filter(i=>!!i)});e.common.issues.push(r)}class Pn{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(t,n){const r=[];for(const i of n){if(i.status==="aborted")return Ne;i.status==="dirty"&&t.dirty(),r.push(i.value)}return{status:t.value,value:r}}static async mergeObjectAsync(t,n){const r=[];for(const i of n){const s=await i.key,o=await i.value;r.push({key:s,value:o})}return Pn.mergeObjectSync(t,r)}static mergeObjectSync(t,n){const r={};for(const i of n){const{key:s,value:o}=i;if(s.status==="aborted"||o.status==="aborted")return Ne;s.status==="dirty"&&t.dirty(),o.status==="dirty"&&t.dirty(),s.value!=="__proto__"&&(typeof o.value<"u"||i.alwaysSet)&&(r[s.value]=o.value)}return{status:t.value,value:r}}}const Ne=Object.freeze({status:"aborted"}),Yl=e=>({status:"dirty",value:e}),Sr=e=>({status:"valid",value:e}),yw=e=>e.status==="aborted",bw=e=>e.status==="dirty",$a=e=>e.status==="valid",$h=e=>typeof Promise<"u"&&e instanceof Promise;var me;(function(e){e.errToObj=t=>typeof t=="string"?{message:t}:t||{},e.toString=t=>typeof t=="string"?t:t==null?void 0:t.message})(me||(me={}));class ai{constructor(t,n,r,i){this._cachedPath=[],this.parent=t,this.data=n,this._path=r,this._key=i}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}const ww=(e,t)=>{if($a(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;const n=new Oi(e.common.issues);return this._error=n,this._error}}};function Le(e){if(!e)return{};const{errorMap:t,invalid_type_error:n,required_error:r,description:i}=e;if(t&&(n||r))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:i}:{errorMap:(o,a)=>{const{message:l}=e;return o.code==="invalid_enum_value"?{message:l??a.defaultError}:typeof a.data>"u"?{message:l??r??a.defaultError}:o.code!=="invalid_type"?{message:a.defaultError}:{message:l??n??a.defaultError}},description:i}}class We{get description(){return this._def.description}_getType(t){return as(t.data)}_getOrReturnCtx(t,n){return n||{common:t.parent.common,data:t.data,parsedType:as(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}_processInputParams(t){return{status:new Pn,ctx:{common:t.parent.common,data:t.data,parsedType:as(t.data),schemaErrorMap:this._def.errorMap,path:t.path,parent:t.parent}}}_parseSync(t){const n=this._parse(t);if($h(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(t){const n=this._parse(t);return Promise.resolve(n)}parse(t,n){const r=this.safeParse(t,n);if(r.success)return r.data;throw r.error}safeParse(t,n){const r={common:{issues:[],async:(n==null?void 0:n.async)??!1,contextualErrorMap:n==null?void 0:n.errorMap},path:(n==null?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:as(t)},i=this._parseSync({data:t,path:r.path,parent:r});return ww(r,i)}"~validate"(t){var r,i;const n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:as(t)};if(!this["~standard"].async)try{const s=this._parseSync({data:t,path:[],parent:n});return $a(s)?{value:s.value}:{issues:n.common.issues}}catch(s){(i=(r=s==null?void 0:s.message)==null?void 0:r.toLowerCase())!=null&&i.includes("encountered")&&(this["~standard"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:t,path:[],parent:n}).then(s=>$a(s)?{value:s.value}:{issues:n.common.issues})}async parseAsync(t,n){const r=await this.safeParseAsync(t,n);if(r.success)return r.data;throw r.error}async safeParseAsync(t,n){const r={common:{issues:[],contextualErrorMap:n==null?void 0:n.errorMap,async:!0},path:(n==null?void 0:n.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:t,parsedType:as(t)},i=this._parse({data:t,path:r.path,parent:r}),s=await($h(i)?i:Promise.resolve(i));return ww(r,s)}refine(t,n){const r=i=>typeof n=="string"||typeof n>"u"?{message:n}:typeof n=="function"?n(i):n;return this._refinement((i,s)=>{const o=t(i),a=()=>s.addIssue({code:Y.custom,...r(i)});return typeof Promise<"u"&&o instanceof Promise?o.then(l=>l?!0:(a(),!1)):o?!0:(a(),!1)})}refinement(t,n){return this._refinement((r,i)=>t(r)?!0:(i.addIssue(typeof n=="function"?n(r,i):n),!1))}_refinement(t){return new yo({schema:this,typeName:Te.ZodEffects,effect:{type:"refinement",refinement:t}})}superRefine(t){return this._refinement(t)}constructor(t){this.spa=this.safeParseAsync,this._def=t,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:n=>this["~validate"](n)}}optional(){return Ri.create(this,this._def)}nullable(){return bo.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return ri.create(this)}promise(){return qh.create(this,this._def)}or(t){return Hh.create([this,t],this._def)}and(t){return Uh.create(this,t,this._def)}transform(t){return new yo({...Le(this._def),schema:this,typeName:Te.ZodEffects,effect:{type:"transform",transform:t}})}default(t){const n=typeof t=="function"?t:()=>t;return new Kh({...Le(this._def),innerType:this,defaultValue:n,typeName:Te.ZodDefault})}brand(){return new TT({typeName:Te.ZodBranded,type:this,...Le(this._def)})}catch(t){const n=typeof t=="function"?t:()=>t;return new Gh({...Le(this._def),innerType:this,catchValue:n,typeName:Te.ZodCatch})}describe(t){const n=this.constructor;return new n({...this._def,description:t})}pipe(t){return $_.create(this,t)}readonly(){return Xh.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}const VO=/^c[^\s-]{8,}$/i,qO=/^[0-9a-z]+$/,KO=/^[0-9A-HJKMNP-TV-Z]{26}$/i,GO=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,XO=/^[a-z0-9_-]{21}$/i,YO=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,ZO=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,QO=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,JO="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";let Pm;const e6=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,t6=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,n6=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,r6=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,i6=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,s6=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,CT="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",o6=new RegExp(`^${CT}$`);function ET(e){let t="[0-5]\\d";e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision==null&&(t=`${t}(\\.\\d+)?`);const n=e.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${t})${n}`}function a6(e){return new RegExp(`^${ET(e)}$`)}function l6(e){let t=`${CT}T${ET(e)}`;const n=[];return n.push(e.local?"Z?":"Z"),e.offset&&n.push("([+-]\\d{2}:?\\d{2})"),t=`${t}(${n.join("|")})`,new RegExp(`^${t}$`)}function c6(e,t){return!!((t==="v4"||!t)&&e6.test(e)||(t==="v6"||!t)&&n6.test(e))}function u6(e,t){if(!YO.test(e))return!1;try{const[n]=e.split(".");if(!n)return!1;const r=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),i=JSON.parse(atob(r));return!(typeof i!="object"||i===null||"typ"in i&&(i==null?void 0:i.typ)!=="JWT"||!i.alg||t&&i.alg!==t)}catch{return!1}}function d6(e,t){return!!((t==="v4"||!t)&&t6.test(e)||(t==="v6"||!t)&&r6.test(e))}class Ni extends We{_parse(t){if(this._def.coerce&&(t.data=String(t.data)),this._getType(t)!==de.string){const s=this._getOrReturnCtx(t);return se(s,{code:Y.invalid_type,expected:de.string,received:s.parsedType}),Ne}const r=new Pn;let i;for(const s of this._def.checks)if(s.kind==="min")t.data.length<s.value&&(i=this._getOrReturnCtx(t,i),se(i,{code:Y.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),r.dirty());else if(s.kind==="max")t.data.length>s.value&&(i=this._getOrReturnCtx(t,i),se(i,{code:Y.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),r.dirty());else if(s.kind==="length"){const o=t.data.length>s.value,a=t.data.length<s.value;(o||a)&&(i=this._getOrReturnCtx(t,i),o?se(i,{code:Y.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&se(i,{code:Y.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),r.dirty())}else if(s.kind==="email")QO.test(t.data)||(i=this._getOrReturnCtx(t,i),se(i,{validation:"email",code:Y.invalid_string,message:s.message}),r.dirty());else if(s.kind==="emoji")Pm||(Pm=new RegExp(JO,"u")),Pm.test(t.data)||(i=this._getOrReturnCtx(t,i),se(i,{validation:"emoji",code:Y.invalid_string,message:s.message}),r.dirty());else if(s.kind==="uuid")GO.test(t.data)||(i=this._getOrReturnCtx(t,i),se(i,{validation:"uuid",code:Y.invalid_string,message:s.message}),r.dirty());else if(s.kind==="nanoid")XO.test(t.data)||(i=this._getOrReturnCtx(t,i),se(i,{validation:"nanoid",code:Y.invalid_string,message:s.message}),r.dirty());else if(s.kind==="cuid")VO.test(t.data)||(i=this._getOrReturnCtx(t,i),se(i,{validation:"cuid",code:Y.invalid_string,message:s.message}),r.dirty());else if(s.kind==="cuid2")qO.test(t.data)||(i=this._getOrReturnCtx(t,i),se(i,{validation:"cuid2",code:Y.invalid_string,message:s.message}),r.dirty());else if(s.kind==="ulid")KO.test(t.data)||(i=this._getOrReturnCtx(t,i),se(i,{validation:"ulid",code:Y.invalid_string,message:s.message}),r.dirty());else if(s.kind==="url")try{new URL(t.data)}catch{i=this._getOrReturnCtx(t,i),se(i,{validation:"url",code:Y.invalid_string,message:s.message}),r.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(t.data)||(i=this._getOrReturnCtx(t,i),se(i,{validation:"regex",code:Y.invalid_string,message:s.message}),r.dirty())):s.kind==="trim"?t.data=t.data.trim():s.kind==="includes"?t.data.includes(s.value,s.position)||(i=this._getOrReturnCtx(t,i),se(i,{code:Y.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),r.dirty()):s.kind==="toLowerCase"?t.data=t.data.toLowerCase():s.kind==="toUpperCase"?t.data=t.data.toUpperCase():s.kind==="startsWith"?t.data.startsWith(s.value)||(i=this._getOrReturnCtx(t,i),se(i,{code:Y.invalid_string,validation:{startsWith:s.value},message:s.message}),r.dirty()):s.kind==="endsWith"?t.data.endsWith(s.value)||(i=this._getOrReturnCtx(t,i),se(i,{code:Y.invalid_string,validation:{endsWith:s.value},message:s.message}),r.dirty()):s.kind==="datetime"?l6(s).test(t.data)||(i=this._getOrReturnCtx(t,i),se(i,{code:Y.invalid_string,validation:"datetime",message:s.message}),r.dirty()):s.kind==="date"?o6.test(t.data)||(i=this._getOrReturnCtx(t,i),se(i,{code:Y.invalid_string,validation:"date",message:s.message}),r.dirty()):s.kind==="time"?a6(s).test(t.data)||(i=this._getOrReturnCtx(t,i),se(i,{code:Y.invalid_string,validation:"time",message:s.message}),r.dirty()):s.kind==="duration"?ZO.test(t.data)||(i=this._getOrReturnCtx(t,i),se(i,{validation:"duration",code:Y.invalid_string,message:s.message}),r.dirty()):s.kind==="ip"?c6(t.data,s.version)||(i=this._getOrReturnCtx(t,i),se(i,{validation:"ip",code:Y.invalid_string,message:s.message}),r.dirty()):s.kind==="jwt"?u6(t.data,s.alg)||(i=this._getOrReturnCtx(t,i),se(i,{validation:"jwt",code:Y.invalid_string,message:s.message}),r.dirty()):s.kind==="cidr"?d6(t.data,s.version)||(i=this._getOrReturnCtx(t,i),se(i,{validation:"cidr",code:Y.invalid_string,message:s.message}),r.dirty()):s.kind==="base64"?i6.test(t.data)||(i=this._getOrReturnCtx(t,i),se(i,{validation:"base64",code:Y.invalid_string,message:s.message}),r.dirty()):s.kind==="base64url"?s6.test(t.data)||(i=this._getOrReturnCtx(t,i),se(i,{validation:"base64url",code:Y.invalid_string,message:s.message}),r.dirty()):Ge.assertNever(s);return{status:r.value,value:t.data}}_regex(t,n,r){return this.refinement(i=>t.test(i),{validation:n,code:Y.invalid_string,...me.errToObj(r)})}_addCheck(t){return new Ni({...this._def,checks:[...this._def.checks,t]})}email(t){return this._addCheck({kind:"email",...me.errToObj(t)})}url(t){return this._addCheck({kind:"url",...me.errToObj(t)})}emoji(t){return this._addCheck({kind:"emoji",...me.errToObj(t)})}uuid(t){return this._addCheck({kind:"uuid",...me.errToObj(t)})}nanoid(t){return this._addCheck({kind:"nanoid",...me.errToObj(t)})}cuid(t){return this._addCheck({kind:"cuid",...me.errToObj(t)})}cuid2(t){return this._addCheck({kind:"cuid2",...me.errToObj(t)})}ulid(t){return this._addCheck({kind:"ulid",...me.errToObj(t)})}base64(t){return this._addCheck({kind:"base64",...me.errToObj(t)})}base64url(t){return this._addCheck({kind:"base64url",...me.errToObj(t)})}jwt(t){return this._addCheck({kind:"jwt",...me.errToObj(t)})}ip(t){return this._addCheck({kind:"ip",...me.errToObj(t)})}cidr(t){return this._addCheck({kind:"cidr",...me.errToObj(t)})}datetime(t){return typeof t=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:t}):this._addCheck({kind:"datetime",precision:typeof(t==null?void 0:t.precision)>"u"?null:t==null?void 0:t.precision,offset:(t==null?void 0:t.offset)??!1,local:(t==null?void 0:t.local)??!1,...me.errToObj(t==null?void 0:t.message)})}date(t){return this._addCheck({kind:"date",message:t})}time(t){return typeof t=="string"?this._addCheck({kind:"time",precision:null,message:t}):this._addCheck({kind:"time",precision:typeof(t==null?void 0:t.precision)>"u"?null:t==null?void 0:t.precision,...me.errToObj(t==null?void 0:t.message)})}duration(t){return this._addCheck({kind:"duration",...me.errToObj(t)})}regex(t,n){return this._addCheck({kind:"regex",regex:t,...me.errToObj(n)})}includes(t,n){return this._addCheck({kind:"includes",value:t,position:n==null?void 0:n.position,...me.errToObj(n==null?void 0:n.message)})}startsWith(t,n){return this._addCheck({kind:"startsWith",value:t,...me.errToObj(n)})}endsWith(t,n){return this._addCheck({kind:"endsWith",value:t,...me.errToObj(n)})}min(t,n){return this._addCheck({kind:"min",value:t,...me.errToObj(n)})}max(t,n){return this._addCheck({kind:"max",value:t,...me.errToObj(n)})}length(t,n){return this._addCheck({kind:"length",value:t,...me.errToObj(n)})}nonempty(t){return this.min(1,me.errToObj(t))}trim(){return new Ni({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new Ni({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new Ni({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(t=>t.kind==="datetime")}get isDate(){return!!this._def.checks.find(t=>t.kind==="date")}get isTime(){return!!this._def.checks.find(t=>t.kind==="time")}get isDuration(){return!!this._def.checks.find(t=>t.kind==="duration")}get isEmail(){return!!this._def.checks.find(t=>t.kind==="email")}get isURL(){return!!this._def.checks.find(t=>t.kind==="url")}get isEmoji(){return!!this._def.checks.find(t=>t.kind==="emoji")}get isUUID(){return!!this._def.checks.find(t=>t.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(t=>t.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(t=>t.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(t=>t.kind==="cuid2")}get isULID(){return!!this._def.checks.find(t=>t.kind==="ulid")}get isIP(){return!!this._def.checks.find(t=>t.kind==="ip")}get isCIDR(){return!!this._def.checks.find(t=>t.kind==="cidr")}get isBase64(){return!!this._def.checks.find(t=>t.kind==="base64")}get isBase64url(){return!!this._def.checks.find(t=>t.kind==="base64url")}get minLength(){let t=null;for(const n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxLength(){let t=null;for(const n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}}Ni.create=e=>new Ni({checks:[],typeName:Te.ZodString,coerce:(e==null?void 0:e.coerce)??!1,...Le(e)});function h6(e,t){const n=(e.toString().split(".")[1]||"").length,r=(t.toString().split(".")[1]||"").length,i=n>r?n:r,s=Number.parseInt(e.toFixed(i).replace(".","")),o=Number.parseInt(t.toFixed(i).replace(".",""));return s%o/10**i}class Fa extends We{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(t){if(this._def.coerce&&(t.data=Number(t.data)),this._getType(t)!==de.number){const s=this._getOrReturnCtx(t);return se(s,{code:Y.invalid_type,expected:de.number,received:s.parsedType}),Ne}let r;const i=new Pn;for(const s of this._def.checks)s.kind==="int"?Ge.isInteger(t.data)||(r=this._getOrReturnCtx(t,r),se(r,{code:Y.invalid_type,expected:"integer",received:"float",message:s.message}),i.dirty()):s.kind==="min"?(s.inclusive?t.data<s.value:t.data<=s.value)&&(r=this._getOrReturnCtx(t,r),se(r,{code:Y.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),i.dirty()):s.kind==="max"?(s.inclusive?t.data>s.value:t.data>=s.value)&&(r=this._getOrReturnCtx(t,r),se(r,{code:Y.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),i.dirty()):s.kind==="multipleOf"?h6(t.data,s.value)!==0&&(r=this._getOrReturnCtx(t,r),se(r,{code:Y.not_multiple_of,multipleOf:s.value,message:s.message}),i.dirty()):s.kind==="finite"?Number.isFinite(t.data)||(r=this._getOrReturnCtx(t,r),se(r,{code:Y.not_finite,message:s.message}),i.dirty()):Ge.assertNever(s);return{status:i.value,value:t.data}}gte(t,n){return this.setLimit("min",t,!0,me.toString(n))}gt(t,n){return this.setLimit("min",t,!1,me.toString(n))}lte(t,n){return this.setLimit("max",t,!0,me.toString(n))}lt(t,n){return this.setLimit("max",t,!1,me.toString(n))}setLimit(t,n,r,i){return new Fa({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:me.toString(i)}]})}_addCheck(t){return new Fa({...this._def,checks:[...this._def.checks,t]})}int(t){return this._addCheck({kind:"int",message:me.toString(t)})}positive(t){return this._addCheck({kind:"min",value:0,inclusive:!1,message:me.toString(t)})}negative(t){return this._addCheck({kind:"max",value:0,inclusive:!1,message:me.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:0,inclusive:!0,message:me.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:0,inclusive:!0,message:me.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:me.toString(n)})}finite(t){return this._addCheck({kind:"finite",message:me.toString(t)})}safe(t){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:me.toString(t)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:me.toString(t)})}get minValue(){let t=null;for(const n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxValue(){let t=null;for(const n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}get isInt(){return!!this._def.checks.find(t=>t.kind==="int"||t.kind==="multipleOf"&&Ge.isInteger(t.value))}get isFinite(){let t=null,n=null;for(const r of this._def.checks){if(r.kind==="finite"||r.kind==="int"||r.kind==="multipleOf")return!0;r.kind==="min"?(n===null||r.value>n)&&(n=r.value):r.kind==="max"&&(t===null||r.value<t)&&(t=r.value)}return Number.isFinite(n)&&Number.isFinite(t)}}Fa.create=e=>new Fa({checks:[],typeName:Te.ZodNumber,coerce:(e==null?void 0:e.coerce)||!1,...Le(e)});class qc extends We{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(t){if(this._def.coerce)try{t.data=BigInt(t.data)}catch{return this._getInvalidInput(t)}if(this._getType(t)!==de.bigint)return this._getInvalidInput(t);let r;const i=new Pn;for(const s of this._def.checks)s.kind==="min"?(s.inclusive?t.data<s.value:t.data<=s.value)&&(r=this._getOrReturnCtx(t,r),se(r,{code:Y.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),i.dirty()):s.kind==="max"?(s.inclusive?t.data>s.value:t.data>=s.value)&&(r=this._getOrReturnCtx(t,r),se(r,{code:Y.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),i.dirty()):s.kind==="multipleOf"?t.data%s.value!==BigInt(0)&&(r=this._getOrReturnCtx(t,r),se(r,{code:Y.not_multiple_of,multipleOf:s.value,message:s.message}),i.dirty()):Ge.assertNever(s);return{status:i.value,value:t.data}}_getInvalidInput(t){const n=this._getOrReturnCtx(t);return se(n,{code:Y.invalid_type,expected:de.bigint,received:n.parsedType}),Ne}gte(t,n){return this.setLimit("min",t,!0,me.toString(n))}gt(t,n){return this.setLimit("min",t,!1,me.toString(n))}lte(t,n){return this.setLimit("max",t,!0,me.toString(n))}lt(t,n){return this.setLimit("max",t,!1,me.toString(n))}setLimit(t,n,r,i){return new qc({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:me.toString(i)}]})}_addCheck(t){return new qc({...this._def,checks:[...this._def.checks,t]})}positive(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:me.toString(t)})}negative(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:me.toString(t)})}nonpositive(t){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:me.toString(t)})}nonnegative(t){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:me.toString(t)})}multipleOf(t,n){return this._addCheck({kind:"multipleOf",value:t,message:me.toString(n)})}get minValue(){let t=null;for(const n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t}get maxValue(){let t=null;for(const n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t}}qc.create=e=>new qc({checks:[],typeName:Te.ZodBigInt,coerce:(e==null?void 0:e.coerce)??!1,...Le(e)});class c0 extends We{_parse(t){if(this._def.coerce&&(t.data=!!t.data),this._getType(t)!==de.boolean){const r=this._getOrReturnCtx(t);return se(r,{code:Y.invalid_type,expected:de.boolean,received:r.parsedType}),Ne}return Sr(t.data)}}c0.create=e=>new c0({typeName:Te.ZodBoolean,coerce:(e==null?void 0:e.coerce)||!1,...Le(e)});class Fh extends We{_parse(t){if(this._def.coerce&&(t.data=new Date(t.data)),this._getType(t)!==de.date){const s=this._getOrReturnCtx(t);return se(s,{code:Y.invalid_type,expected:de.date,received:s.parsedType}),Ne}if(Number.isNaN(t.data.getTime())){const s=this._getOrReturnCtx(t);return se(s,{code:Y.invalid_date}),Ne}const r=new Pn;let i;for(const s of this._def.checks)s.kind==="min"?t.data.getTime()<s.value&&(i=this._getOrReturnCtx(t,i),se(i,{code:Y.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),r.dirty()):s.kind==="max"?t.data.getTime()>s.value&&(i=this._getOrReturnCtx(t,i),se(i,{code:Y.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),r.dirty()):Ge.assertNever(s);return{status:r.value,value:new Date(t.data.getTime())}}_addCheck(t){return new Fh({...this._def,checks:[...this._def.checks,t]})}min(t,n){return this._addCheck({kind:"min",value:t.getTime(),message:me.toString(n)})}max(t,n){return this._addCheck({kind:"max",value:t.getTime(),message:me.toString(n)})}get minDate(){let t=null;for(const n of this._def.checks)n.kind==="min"&&(t===null||n.value>t)&&(t=n.value);return t!=null?new Date(t):null}get maxDate(){let t=null;for(const n of this._def.checks)n.kind==="max"&&(t===null||n.value<t)&&(t=n.value);return t!=null?new Date(t):null}}Fh.create=e=>new Fh({checks:[],coerce:(e==null?void 0:e.coerce)||!1,typeName:Te.ZodDate,...Le(e)});class Sw extends We{_parse(t){if(this._getType(t)!==de.symbol){const r=this._getOrReturnCtx(t);return se(r,{code:Y.invalid_type,expected:de.symbol,received:r.parsedType}),Ne}return Sr(t.data)}}Sw.create=e=>new Sw({typeName:Te.ZodSymbol,...Le(e)});class u0 extends We{_parse(t){if(this._getType(t)!==de.undefined){const r=this._getOrReturnCtx(t);return se(r,{code:Y.invalid_type,expected:de.undefined,received:r.parsedType}),Ne}return Sr(t.data)}}u0.create=e=>new u0({typeName:Te.ZodUndefined,...Le(e)});class d0 extends We{_parse(t){if(this._getType(t)!==de.null){const r=this._getOrReturnCtx(t);return se(r,{code:Y.invalid_type,expected:de.null,received:r.parsedType}),Ne}return Sr(t.data)}}d0.create=e=>new d0({typeName:Te.ZodNull,...Le(e)});class kw extends We{constructor(){super(...arguments),this._any=!0}_parse(t){return Sr(t.data)}}kw.create=e=>new kw({typeName:Te.ZodAny,...Le(e)});class h0 extends We{constructor(){super(...arguments),this._unknown=!0}_parse(t){return Sr(t.data)}}h0.create=e=>new h0({typeName:Te.ZodUnknown,...Le(e)});class Ps extends We{_parse(t){const n=this._getOrReturnCtx(t);return se(n,{code:Y.invalid_type,expected:de.never,received:n.parsedType}),Ne}}Ps.create=e=>new Ps({typeName:Te.ZodNever,...Le(e)});class Cw extends We{_parse(t){if(this._getType(t)!==de.undefined){const r=this._getOrReturnCtx(t);return se(r,{code:Y.invalid_type,expected:de.void,received:r.parsedType}),Ne}return Sr(t.data)}}Cw.create=e=>new Cw({typeName:Te.ZodVoid,...Le(e)});class ri extends We{_parse(t){const{ctx:n,status:r}=this._processInputParams(t),i=this._def;if(n.parsedType!==de.array)return se(n,{code:Y.invalid_type,expected:de.array,received:n.parsedType}),Ne;if(i.exactLength!==null){const o=n.data.length>i.exactLength.value,a=n.data.length<i.exactLength.value;(o||a)&&(se(n,{code:o?Y.too_big:Y.too_small,minimum:a?i.exactLength.value:void 0,maximum:o?i.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:i.exactLength.message}),r.dirty())}if(i.minLength!==null&&n.data.length<i.minLength.value&&(se(n,{code:Y.too_small,minimum:i.minLength.value,type:"array",inclusive:!0,exact:!1,message:i.minLength.message}),r.dirty()),i.maxLength!==null&&n.data.length>i.maxLength.value&&(se(n,{code:Y.too_big,maximum:i.maxLength.value,type:"array",inclusive:!0,exact:!1,message:i.maxLength.message}),r.dirty()),n.common.async)return Promise.all([...n.data].map((o,a)=>i.type._parseAsync(new ai(n,o,n.path,a)))).then(o=>Pn.mergeArray(r,o));const s=[...n.data].map((o,a)=>i.type._parseSync(new ai(n,o,n.path,a)));return Pn.mergeArray(r,s)}get element(){return this._def.type}min(t,n){return new ri({...this._def,minLength:{value:t,message:me.toString(n)}})}max(t,n){return new ri({...this._def,maxLength:{value:t,message:me.toString(n)}})}length(t,n){return new ri({...this._def,exactLength:{value:t,message:me.toString(n)}})}nonempty(t){return this.min(1,t)}}ri.create=(e,t)=>new ri({type:e,minLength:null,maxLength:null,exactLength:null,typeName:Te.ZodArray,...Le(t)});function ea(e){if(e instanceof Ot){const t={};for(const n in e.shape){const r=e.shape[n];t[n]=Ri.create(ea(r))}return new Ot({...e._def,shape:()=>t})}else return e instanceof ri?new ri({...e._def,type:ea(e.element)}):e instanceof Ri?Ri.create(ea(e.unwrap())):e instanceof bo?bo.create(ea(e.unwrap())):e instanceof xo?xo.create(e.items.map(t=>ea(t))):e}class Ot extends We{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;const t=this._def.shape(),n=Ge.objectKeys(t);return this._cached={shape:t,keys:n},this._cached}_parse(t){if(this._getType(t)!==de.object){const c=this._getOrReturnCtx(t);return se(c,{code:Y.invalid_type,expected:de.object,received:c.parsedType}),Ne}const{status:r,ctx:i}=this._processInputParams(t),{shape:s,keys:o}=this._getCached(),a=[];if(!(this._def.catchall instanceof Ps&&this._def.unknownKeys==="strip"))for(const c in i.data)o.includes(c)||a.push(c);const l=[];for(const c of o){const u=s[c],d=i.data[c];l.push({key:{status:"valid",value:c},value:u._parse(new ai(i,d,i.path,c)),alwaysSet:c in i.data})}if(this._def.catchall instanceof Ps){const c=this._def.unknownKeys;if(c==="passthrough")for(const u of a)l.push({key:{status:"valid",value:u},value:{status:"valid",value:i.data[u]}});else if(c==="strict")a.length>0&&(se(i,{code:Y.unrecognized_keys,keys:a}),r.dirty());else if(c!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{const c=this._def.catchall;for(const u of a){const d=i.data[u];l.push({key:{status:"valid",value:u},value:c._parse(new ai(i,d,i.path,u)),alwaysSet:u in i.data})}}return i.common.async?Promise.resolve().then(async()=>{const c=[];for(const u of l){const d=await u.key,f=await u.value;c.push({key:d,value:f,alwaysSet:u.alwaysSet})}return c}).then(c=>Pn.mergeObjectSync(r,c)):Pn.mergeObjectSync(r,l)}get shape(){return this._def.shape()}strict(t){return me.errToObj,new Ot({...this._def,unknownKeys:"strict",...t!==void 0?{errorMap:(n,r)=>{var s,o;const i=((o=(s=this._def).errorMap)==null?void 0:o.call(s,n,r).message)??r.defaultError;return n.code==="unrecognized_keys"?{message:me.errToObj(t).message??i}:{message:i}}}:{}})}strip(){return new Ot({...this._def,unknownKeys:"strip"})}passthrough(){return new Ot({...this._def,unknownKeys:"passthrough"})}extend(t){return new Ot({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new Ot({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:Te.ZodObject})}setKey(t,n){return this.augment({[t]:n})}catchall(t){return new Ot({...this._def,catchall:t})}pick(t){const n={};for(const r of Ge.objectKeys(t))t[r]&&this.shape[r]&&(n[r]=this.shape[r]);return new Ot({...this._def,shape:()=>n})}omit(t){const n={};for(const r of Ge.objectKeys(this.shape))t[r]||(n[r]=this.shape[r]);return new Ot({...this._def,shape:()=>n})}deepPartial(){return ea(this)}partial(t){const n={};for(const r of Ge.objectKeys(this.shape)){const i=this.shape[r];t&&!t[r]?n[r]=i:n[r]=i.optional()}return new Ot({...this._def,shape:()=>n})}required(t){const n={};for(const r of Ge.objectKeys(this.shape))if(t&&!t[r])n[r]=this.shape[r];else{let s=this.shape[r];for(;s instanceof Ri;)s=s._def.innerType;n[r]=s}return new Ot({...this._def,shape:()=>n})}keyof(){return NT(Ge.objectKeys(this.shape))}}Ot.create=(e,t)=>new Ot({shape:()=>e,unknownKeys:"strip",catchall:Ps.create(),typeName:Te.ZodObject,...Le(t)});Ot.strictCreate=(e,t)=>new Ot({shape:()=>e,unknownKeys:"strict",catchall:Ps.create(),typeName:Te.ZodObject,...Le(t)});Ot.lazycreate=(e,t)=>new Ot({shape:e,unknownKeys:"strip",catchall:Ps.create(),typeName:Te.ZodObject,...Le(t)});class Hh extends We{_parse(t){const{ctx:n}=this._processInputParams(t),r=this._def.options;function i(s){for(const a of s)if(a.result.status==="valid")return a.result;for(const a of s)if(a.result.status==="dirty")return n.common.issues.push(...a.ctx.common.issues),a.result;const o=s.map(a=>new Oi(a.ctx.common.issues));return se(n,{code:Y.invalid_union,unionErrors:o}),Ne}if(n.common.async)return Promise.all(r.map(async s=>{const o={...n,common:{...n.common,issues:[]},parent:null};return{result:await s._parseAsync({data:n.data,path:n.path,parent:o}),ctx:o}})).then(i);{let s;const o=[];for(const l of r){const c={...n,common:{...n.common,issues:[]},parent:null},u=l._parseSync({data:n.data,path:n.path,parent:c});if(u.status==="valid")return u;u.status==="dirty"&&!s&&(s={result:u,ctx:c}),c.common.issues.length&&o.push(c.common.issues)}if(s)return n.common.issues.push(...s.ctx.common.issues),s.result;const a=o.map(l=>new Oi(l));return se(n,{code:Y.invalid_union,unionErrors:a}),Ne}}get options(){return this._def.options}}Hh.create=(e,t)=>new Hh({options:e,typeName:Te.ZodUnion,...Le(t)});const bi=e=>e instanceof p0?bi(e.schema):e instanceof yo?bi(e.innerType()):e instanceof Vh?[e.value]:e instanceof _o?e.options:e instanceof m0?Ge.objectValues(e.enum):e instanceof Kh?bi(e._def.innerType):e instanceof u0?[void 0]:e instanceof d0?[null]:e instanceof Ri?[void 0,...bi(e.unwrap())]:e instanceof bo?[null,...bi(e.unwrap())]:e instanceof TT||e instanceof Xh?bi(e.unwrap()):e instanceof Gh?bi(e._def.innerType):[];class z_ extends We{_parse(t){const{ctx:n}=this._processInputParams(t);if(n.parsedType!==de.object)return se(n,{code:Y.invalid_type,expected:de.object,received:n.parsedType}),Ne;const r=this.discriminator,i=n.data[r],s=this.optionsMap.get(i);return s?n.common.async?s._parseAsync({data:n.data,path:n.path,parent:n}):s._parseSync({data:n.data,path:n.path,parent:n}):(se(n,{code:Y.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[r]}),Ne)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,n,r){const i=new Map;for(const s of n){const o=bi(s.shape[t]);if(!o.length)throw new Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(const a of o){if(i.has(a))throw new Error(`Discriminator property ${String(t)} has duplicate value ${String(a)}`);i.set(a,s)}}return new z_({typeName:Te.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:i,...Le(r)})}}function f0(e,t){const n=as(e),r=as(t);if(e===t)return{valid:!0,data:e};if(n===de.object&&r===de.object){const i=Ge.objectKeys(t),s=Ge.objectKeys(e).filter(a=>i.indexOf(a)!==-1),o={...e,...t};for(const a of s){const l=f0(e[a],t[a]);if(!l.valid)return{valid:!1};o[a]=l.data}return{valid:!0,data:o}}else if(n===de.array&&r===de.array){if(e.length!==t.length)return{valid:!1};const i=[];for(let s=0;s<e.length;s++){const o=e[s],a=t[s],l=f0(o,a);if(!l.valid)return{valid:!1};i.push(l.data)}return{valid:!0,data:i}}else return n===de.date&&r===de.date&&+e==+t?{valid:!0,data:e}:{valid:!1}}class Uh extends We{_parse(t){const{status:n,ctx:r}=this._processInputParams(t),i=(s,o)=>{if(yw(s)||yw(o))return Ne;const a=f0(s.value,o.value);return a.valid?((bw(s)||bw(o))&&n.dirty(),{status:n.value,value:a.data}):(se(r,{code:Y.invalid_intersection_types}),Ne)};return r.common.async?Promise.all([this._def.left._parseAsync({data:r.data,path:r.path,parent:r}),this._def.right._parseAsync({data:r.data,path:r.path,parent:r})]).then(([s,o])=>i(s,o)):i(this._def.left._parseSync({data:r.data,path:r.path,parent:r}),this._def.right._parseSync({data:r.data,path:r.path,parent:r}))}}Uh.create=(e,t,n)=>new Uh({left:e,right:t,typeName:Te.ZodIntersection,...Le(n)});class xo extends We{_parse(t){const{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==de.array)return se(r,{code:Y.invalid_type,expected:de.array,received:r.parsedType}),Ne;if(r.data.length<this._def.items.length)return se(r,{code:Y.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Ne;!this._def.rest&&r.data.length>this._def.items.length&&(se(r,{code:Y.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),n.dirty());const s=[...r.data].map((o,a)=>{const l=this._def.items[a]||this._def.rest;return l?l._parse(new ai(r,o,r.path,a)):null}).filter(o=>!!o);return r.common.async?Promise.all(s).then(o=>Pn.mergeArray(n,o)):Pn.mergeArray(n,s)}get items(){return this._def.items}rest(t){return new xo({...this._def,rest:t})}}xo.create=(e,t)=>{if(!Array.isArray(e))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new xo({items:e,typeName:Te.ZodTuple,rest:null,...Le(t)})};class Wh extends We{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){const{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==de.object)return se(r,{code:Y.invalid_type,expected:de.object,received:r.parsedType}),Ne;const i=[],s=this._def.keyType,o=this._def.valueType;for(const a in r.data)i.push({key:s._parse(new ai(r,a,r.path,a)),value:o._parse(new ai(r,r.data[a],r.path,a)),alwaysSet:a in r.data});return r.common.async?Pn.mergeObjectAsync(n,i):Pn.mergeObjectSync(n,i)}get element(){return this._def.valueType}static create(t,n,r){return n instanceof We?new Wh({keyType:t,valueType:n,typeName:Te.ZodRecord,...Le(r)}):new Wh({keyType:Ni.create(),valueType:t,typeName:Te.ZodRecord,...Le(n)})}}class Ew extends We{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(t){const{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==de.map)return se(r,{code:Y.invalid_type,expected:de.map,received:r.parsedType}),Ne;const i=this._def.keyType,s=this._def.valueType,o=[...r.data.entries()].map(([a,l],c)=>({key:i._parse(new ai(r,a,r.path,[c,"key"])),value:s._parse(new ai(r,l,r.path,[c,"value"]))}));if(r.common.async){const a=new Map;return Promise.resolve().then(async()=>{for(const l of o){const c=await l.key,u=await l.value;if(c.status==="aborted"||u.status==="aborted")return Ne;(c.status==="dirty"||u.status==="dirty")&&n.dirty(),a.set(c.value,u.value)}return{status:n.value,value:a}})}else{const a=new Map;for(const l of o){const c=l.key,u=l.value;if(c.status==="aborted"||u.status==="aborted")return Ne;(c.status==="dirty"||u.status==="dirty")&&n.dirty(),a.set(c.value,u.value)}return{status:n.value,value:a}}}}Ew.create=(e,t,n)=>new Ew({valueType:t,keyType:e,typeName:Te.ZodMap,...Le(n)});class Kc extends We{_parse(t){const{status:n,ctx:r}=this._processInputParams(t);if(r.parsedType!==de.set)return se(r,{code:Y.invalid_type,expected:de.set,received:r.parsedType}),Ne;const i=this._def;i.minSize!==null&&r.data.size<i.minSize.value&&(se(r,{code:Y.too_small,minimum:i.minSize.value,type:"set",inclusive:!0,exact:!1,message:i.minSize.message}),n.dirty()),i.maxSize!==null&&r.data.size>i.maxSize.value&&(se(r,{code:Y.too_big,maximum:i.maxSize.value,type:"set",inclusive:!0,exact:!1,message:i.maxSize.message}),n.dirty());const s=this._def.valueType;function o(l){const c=new Set;for(const u of l){if(u.status==="aborted")return Ne;u.status==="dirty"&&n.dirty(),c.add(u.value)}return{status:n.value,value:c}}const a=[...r.data.values()].map((l,c)=>s._parse(new ai(r,l,r.path,c)));return r.common.async?Promise.all(a).then(l=>o(l)):o(a)}min(t,n){return new Kc({...this._def,minSize:{value:t,message:me.toString(n)}})}max(t,n){return new Kc({...this._def,maxSize:{value:t,message:me.toString(n)}})}size(t,n){return this.min(t,n).max(t,n)}nonempty(t){return this.min(1,t)}}Kc.create=(e,t)=>new Kc({valueType:e,minSize:null,maxSize:null,typeName:Te.ZodSet,...Le(t)});class p0 extends We{get schema(){return this._def.getter()}_parse(t){const{ctx:n}=this._processInputParams(t);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}}p0.create=(e,t)=>new p0({getter:e,typeName:Te.ZodLazy,...Le(t)});class Vh extends We{_parse(t){if(t.data!==this._def.value){const n=this._getOrReturnCtx(t);return se(n,{received:n.data,code:Y.invalid_literal,expected:this._def.value}),Ne}return{status:"valid",value:t.data}}get value(){return this._def.value}}Vh.create=(e,t)=>new Vh({value:e,typeName:Te.ZodLiteral,...Le(t)});function NT(e,t){return new _o({values:e,typeName:Te.ZodEnum,...Le(t)})}class _o extends We{_parse(t){if(typeof t.data!="string"){const n=this._getOrReturnCtx(t),r=this._def.values;return se(n,{expected:Ge.joinValues(r),received:n.parsedType,code:Y.invalid_type}),Ne}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(t.data)){const n=this._getOrReturnCtx(t),r=this._def.values;return se(n,{received:n.data,code:Y.invalid_enum_value,options:r}),Ne}return Sr(t.data)}get options(){return this._def.values}get enum(){const t={};for(const n of this._def.values)t[n]=n;return t}get Values(){const t={};for(const n of this._def.values)t[n]=n;return t}get Enum(){const t={};for(const n of this._def.values)t[n]=n;return t}extract(t,n=this._def){return _o.create(t,{...this._def,...n})}exclude(t,n=this._def){return _o.create(this.options.filter(r=>!t.includes(r)),{...this._def,...n})}}_o.create=NT;class m0 extends We{_parse(t){const n=Ge.getValidEnumValues(this._def.values),r=this._getOrReturnCtx(t);if(r.parsedType!==de.string&&r.parsedType!==de.number){const i=Ge.objectValues(n);return se(r,{expected:Ge.joinValues(i),received:r.parsedType,code:Y.invalid_type}),Ne}if(this._cache||(this._cache=new Set(Ge.getValidEnumValues(this._def.values))),!this._cache.has(t.data)){const i=Ge.objectValues(n);return se(r,{received:r.data,code:Y.invalid_enum_value,options:i}),Ne}return Sr(t.data)}get enum(){return this._def.values}}m0.create=(e,t)=>new m0({values:e,typeName:Te.ZodNativeEnum,...Le(t)});class qh extends We{unwrap(){return this._def.type}_parse(t){const{ctx:n}=this._processInputParams(t);if(n.parsedType!==de.promise&&n.common.async===!1)return se(n,{code:Y.invalid_type,expected:de.promise,received:n.parsedType}),Ne;const r=n.parsedType===de.promise?n.data:Promise.resolve(n.data);return Sr(r.then(i=>this._def.type.parseAsync(i,{path:n.path,errorMap:n.common.contextualErrorMap})))}}qh.create=(e,t)=>new qh({type:e,typeName:Te.ZodPromise,...Le(t)});class yo extends We{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===Te.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(t){const{status:n,ctx:r}=this._processInputParams(t),i=this._def.effect||null,s={addIssue:o=>{se(r,o),o.fatal?n.abort():n.dirty()},get path(){return r.path}};if(s.addIssue=s.addIssue.bind(s),i.type==="preprocess"){const o=i.transform(r.data,s);if(r.common.async)return Promise.resolve(o).then(async a=>{if(n.value==="aborted")return Ne;const l=await this._def.schema._parseAsync({data:a,path:r.path,parent:r});return l.status==="aborted"?Ne:l.status==="dirty"||n.value==="dirty"?Yl(l.value):l});{if(n.value==="aborted")return Ne;const a=this._def.schema._parseSync({data:o,path:r.path,parent:r});return a.status==="aborted"?Ne:a.status==="dirty"||n.value==="dirty"?Yl(a.value):a}}if(i.type==="refinement"){const o=a=>{const l=i.refinement(a,s);if(r.common.async)return Promise.resolve(l);if(l instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(r.common.async===!1){const a=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});return a.status==="aborted"?Ne:(a.status==="dirty"&&n.dirty(),o(a.value),{status:n.value,value:a.value})}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(a=>a.status==="aborted"?Ne:(a.status==="dirty"&&n.dirty(),o(a.value).then(()=>({status:n.value,value:a.value}))))}if(i.type==="transform")if(r.common.async===!1){const o=this._def.schema._parseSync({data:r.data,path:r.path,parent:r});if(!$a(o))return Ne;const a=i.transform(o.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:n.value,value:a}}else return this._def.schema._parseAsync({data:r.data,path:r.path,parent:r}).then(o=>$a(o)?Promise.resolve(i.transform(o.value,s)).then(a=>({status:n.value,value:a})):Ne);Ge.assertNever(i)}}yo.create=(e,t,n)=>new yo({schema:e,typeName:Te.ZodEffects,effect:t,...Le(n)});yo.createWithPreprocess=(e,t,n)=>new yo({schema:t,effect:{type:"preprocess",transform:e},typeName:Te.ZodEffects,...Le(n)});class Ri extends We{_parse(t){return this._getType(t)===de.undefined?Sr(void 0):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}}Ri.create=(e,t)=>new Ri({innerType:e,typeName:Te.ZodOptional,...Le(t)});class bo extends We{_parse(t){return this._getType(t)===de.null?Sr(null):this._def.innerType._parse(t)}unwrap(){return this._def.innerType}}bo.create=(e,t)=>new bo({innerType:e,typeName:Te.ZodNullable,...Le(t)});class Kh extends We{_parse(t){const{ctx:n}=this._processInputParams(t);let r=n.data;return n.parsedType===de.undefined&&(r=this._def.defaultValue()),this._def.innerType._parse({data:r,path:n.path,parent:n})}removeDefault(){return this._def.innerType}}Kh.create=(e,t)=>new Kh({innerType:e,typeName:Te.ZodDefault,defaultValue:typeof t.default=="function"?t.default:()=>t.default,...Le(t)});class Gh extends We{_parse(t){const{ctx:n}=this._processInputParams(t),r={...n,common:{...n.common,issues:[]}},i=this._def.innerType._parse({data:r.data,path:r.path,parent:{...r}});return $h(i)?i.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Oi(r.common.issues)},input:r.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new Oi(r.common.issues)},input:r.data})}}removeCatch(){return this._def.innerType}}Gh.create=(e,t)=>new Gh({innerType:e,typeName:Te.ZodCatch,catchValue:typeof t.catch=="function"?t.catch:()=>t.catch,...Le(t)});class Nw extends We{_parse(t){if(this._getType(t)!==de.nan){const r=this._getOrReturnCtx(t);return se(r,{code:Y.invalid_type,expected:de.nan,received:r.parsedType}),Ne}return{status:"valid",value:t.data}}}Nw.create=e=>new Nw({typeName:Te.ZodNaN,...Le(e)});class TT extends We{_parse(t){const{ctx:n}=this._processInputParams(t),r=n.data;return this._def.type._parse({data:r,path:n.path,parent:n})}unwrap(){return this._def.type}}class $_ extends We{_parse(t){const{status:n,ctx:r}=this._processInputParams(t);if(r.common.async)return(async()=>{const s=await this._def.in._parseAsync({data:r.data,path:r.path,parent:r});return s.status==="aborted"?Ne:s.status==="dirty"?(n.dirty(),Yl(s.value)):this._def.out._parseAsync({data:s.value,path:r.path,parent:r})})();{const i=this._def.in._parseSync({data:r.data,path:r.path,parent:r});return i.status==="aborted"?Ne:i.status==="dirty"?(n.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:r.path,parent:r})}}static create(t,n){return new $_({in:t,out:n,typeName:Te.ZodPipeline})}}class Xh extends We{_parse(t){const n=this._def.innerType._parse(t),r=i=>($a(i)&&(i.value=Object.freeze(i.value)),i);return $h(n)?n.then(i=>r(i)):r(n)}unwrap(){return this._def.innerType}}Xh.create=(e,t)=>new Xh({innerType:e,typeName:Te.ZodReadonly,...Le(t)});var Te;(function(e){e.ZodString="ZodString",e.ZodNumber="ZodNumber",e.ZodNaN="ZodNaN",e.ZodBigInt="ZodBigInt",e.ZodBoolean="ZodBoolean",e.ZodDate="ZodDate",e.ZodSymbol="ZodSymbol",e.ZodUndefined="ZodUndefined",e.ZodNull="ZodNull",e.ZodAny="ZodAny",e.ZodUnknown="ZodUnknown",e.ZodNever="ZodNever",e.ZodVoid="ZodVoid",e.ZodArray="ZodArray",e.ZodObject="ZodObject",e.ZodUnion="ZodUnion",e.ZodDiscriminatedUnion="ZodDiscriminatedUnion",e.ZodIntersection="ZodIntersection",e.ZodTuple="ZodTuple",e.ZodRecord="ZodRecord",e.ZodMap="ZodMap",e.ZodSet="ZodSet",e.ZodFunction="ZodFunction",e.ZodLazy="ZodLazy",e.ZodLiteral="ZodLiteral",e.ZodEnum="ZodEnum",e.ZodEffects="ZodEffects",e.ZodNativeEnum="ZodNativeEnum",e.ZodOptional="ZodOptional",e.ZodNullable="ZodNullable",e.ZodDefault="ZodDefault",e.ZodCatch="ZodCatch",e.ZodPromise="ZodPromise",e.ZodBranded="ZodBranded",e.ZodPipeline="ZodPipeline",e.ZodReadonly="ZodReadonly"})(Te||(Te={}));const S=Ni.create,V=Fa.create,_e=c0.create,Cs=h0.create;Ps.create;const ie=ri.create,P=Ot.create;Hh.create;const hi=z_.create;Uh.create;xo.create;const Bs=Wh.create,ee=Vh.create,De=_o.create;qh.create;Ri.create;bo.create;new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");const f6=["owner"],p6=["agent","owner","user-upload"],IT=P({id:S().min(1),relPath:S().min(1),from:De(p6),label:S().optional(),size:V().int().nonnegative(),mime:S().min(1),addedAt:V().int().nonnegative(),lastEditedAt:V().int().nonnegative().optional(),stale:_e().optional()});P({sessionId:S().min(1),relPath:S().min(1),ttlSeconds:V().int().positive().nullable().optional(),view:De(["raw","md-rendered"]).optional()});P({url:S().min(1),expiresAt:V().int().nonnegative().nullable()});P({sessionId:S().min(1),relPath:S().min(1),label:S().optional(),origin:ee("agent").optional()});P({entry:IT});P({sessionId:S().min(1),relPath:S().min(1)});P({removed:ee(!0)});P({sessionId:S().min(1)});P({entries:ie(IT)});P({attachmentId:S().min(1),url:S().min(1),relPath:S().min(1),sizeBytes:V().int().nonnegative(),mimeType:S().min(1)});const m6=hi("type",[P({type:ee("persona"),id:S().min(1)}).strict(),P({type:ee("chat"),id:S().min(1)}).strict(),P({type:ee("*")}).strict()]),g6=De(["read","send","admin"]),F_=P({resource:m6,actions:ie(g6).min(1)}).strict(),v6=P({id:S().min(1),secretHash:S().regex(/^[a-f0-9]{64}$/),displayName:S(),grants:ie(F_),issuedAt:V().int().nonnegative(),expiresAt:V().int().positive().optional(),maxUses:V().int().positive().optional(),usedCount:V().int().nonnegative(),peerOwnerId:S().min(1).optional(),firstUsedByPeerAt:V().int().positive().optional(),peerDisplayName:S().optional()}).strict(),x6=v6.omit({secretHash:!0});P({type:ee("whoami:ok"),owner:P({id:S(),kind:De(["owner","guest"]),displayName:S(),ownerId:S(),provider:S()}).strict(),capability:x6,grantedPersonas:ie(P({id:S().min(1),displayName:S()}).strict())}).strict();P({selfUrl:S().min(1)});P({type:ee("contact:handshake:ok"),owner:P({id:S(),ownerId:S(),provider:S(),displayName:S()}),grants:ie(F_)});P({deviceId:S().min(1),remoteAccessAllowed:_e()}).strict();P({type:ee("contact:setRemoteAccess:ok"),deviceId:S().min(1),remoteAccessAllowed:_e()}).strict();P({type:ee("contact:remote-access-updated"),deviceId:S().min(1),remoteAccessAllowed:_e()}).strict();const _6=P({deviceId:S().min(1),ownerId:S().min(1),provider:S().min(1),displayName:S(),remoteUrl:S().min(1),connectToken:S(),grants:ie(F_),addedAt:V().int().nonnegative(),pinnedAt:V().int().nullable().default(null),remoteAccessAllowed:_e().default(!1)}).strict(),PT=_6;P({deviceId:S().min(1)}).strict();P({type:ee("contact:remove:ok"),deviceId:S().min(1)}).strict();P({type:ee("contact:list:ok"),contacts:ie(PT)}).strict();P({type:ee("contact:added"),contact:PT}).strict();P({type:ee("contact:removed"),deviceId:S().min(1)}).strict();P({deviceId:S().min(1),pinned:_e()}).strict();P({type:ee("contact:pin:ok"),deviceId:S().min(1),pinnedAt:V().int().nullable()}).strict();P({type:ee("contact:pinned"),deviceId:S().min(1),pinnedAt:V().int().nullable()}).strict();const y6=P({deviceId:S().min(1),name:S().min(1),url:S().min(1)});P({type:ee("device:list:ok"),devices:ie(y6)});P({deviceId:S().min(1),url:S().min(1).optional(),name:S().optional()});P({type:ee("device:connect:ok"),deviceId:S(),name:S(),url:S()});const RT=P({ownerId:S().min(1),provider:S().min(1),displayName:S().min(1),avatarUrl:S().optional(),unionId:S().optional()});P({type:ee("auth:login:start:ok"),authUrl:S().min(1),state:S().min(1)});P({type:ee("auth:getIdentity:ok"),identity:RT.nullable(),deviceId:S().min(1),ttcTokenExpiresAt:V().nullable().optional()});P({type:ee("auth:logout:ok")});P({type:ee("auth:login:done"),identity:RT});P({type:ee("auth:login:failed"),reason:S()});const H_=hi("kind",[P({kind:ee("success"),text:S(),brief:S().optional(),filePaths:ie(S()).optional()}),P({kind:ee("failure"),reason:S(),brief:S().optional()})]);P({targetPersona:S().min(1).optional(),dispatchId:S().min(1).optional(),prompt:S(),brief:S().optional(),targetDeviceId:S().min(1).optional(),model:S().min(1).optional(),tool:S().min(1).optional(),sessionLabel:S().min(1).max(60).optional(),meta:Bs(Cs()).optional()}).refine(e=>e.targetPersona!==void 0||e.dispatchId!==void 0,{message:"either targetPersona (new dispatch) or dispatchId (follow-up) is required"}).refine(e=>!(e.dispatchId!==void 0&&e.targetDeviceId!==void 0),{message:"cross-device dispatch cannot be continued (dispatchId + targetDeviceId are mutually exclusive)"}).refine(e=>!(e.tool!==void 0&&e.targetDeviceId!==void 0),{message:"engine override is not supported for cross-device dispatch (tool + targetDeviceId are mutually exclusive)"}).refine(e=>!(e.dispatchId!==void 0&&(e.tool!==void 0||e.model!==void 0)),{message:"a follow-up dispatch cannot change engine or model (dispatchId excludes tool / model); start a new dispatch instead"});P({dispatchId:S().min(1),outcome:H_});const b6=["running","completed","failed"],U_=De(b6),w6=P({dispatchId:S().min(1),sourceSessionId:S().min(1),sourcePersonaId:S().min(1).optional(),targetPersonaId:S().min(1),workerSessionId:S().min(1).optional(),taskText:S(),taskBrief:S().optional(),round:V().int().positive().optional(),status:U_,outcome:H_.optional(),meta:Bs(Cs()).optional(),createdAt:S().min(1),completedAt:S().min(1).optional(),deliveredAt:S().min(1).optional()});P({sourceSessionId:S().min(1).optional()});P({records:ie(w6)});P({dispatchId:S().min(1)});P({type:ee("personaDispatch:get:ok"),status:U_,outcome:H_.optional()});const S6=/^[a-z0-9][a-z0-9-]*$/;De(["stopped","starting","running","crashed","invalid"]);const k6=new Set(["localhost","127.0.0.1"]);function C6(e){let t;try{t=new URL(e)}catch{return!1}return!!(t.protocol==="https:"||t.protocol==="http:"&&k6.has(t.hostname))}const ld=P({id:S().regex(S6),name:S().min(1),version:S().min(1),apiVersion:ee("1"),runtime:P({startCommand:S().min(1)}).passthrough().optional(),entry:P({url:S().url().refine(C6,{message:"INVALID_URL_SCHEME: only https or http://localhost is allowed"})}).strict().optional()}).passthrough().superRefine((e,t)=>{var i;const n=!!e.runtime,r=!!((i=e.entry)!=null&&i.url);n&&r&&t.addIssue({code:Y.custom,message:"INVALID_MANIFEST: entry.url and runtime cannot coexist"}),!n&&!r&&t.addIssue({code:Y.custom,message:"INVALID_MANIFEST: must have either entry.url or runtime"})}),E6=hi("kind",[P({kind:ee("local"),port:V().int().min(1).max(65535)}),P({kind:ee("hosted"),url:S().url()})]);hi("state",[P({extId:S(),manifest:ld,state:ee("stopped")}),P({extId:S(),manifest:ld,state:ee("starting")}),P({extId:S(),manifest:ld,state:ee("running"),target:E6}),P({extId:S(),manifest:ld,state:ee("crashed")}),P({extId:S(),manifest:Cs().nullable(),state:ee("invalid"),invalidReason:S().min(1)})]);P({snapshotHash:S().min(1),version:S().min(1),publishedAt:V()});const N6=hi("kind",[P({kind:ee("p2p-tunnel"),ownerPrincipalId:S().min(1),extId:S().min(1)})]);hi("kind",[P({kind:ee("p2p-tunnel"),ownerPrincipalId:S().min(1),extId:S().min(1),snapshotHash:S().min(1)})]);P({extId:S().min(1),name:S().min(1),version:S().min(1),contentHash:S().min(1),publishedAt:V()});const T6=hi("kind",[P({kind:ee("clean")}),P({kind:ee("ready-new-version"),fromVersion:S().min(1),toVersion:S().min(1)}),P({kind:ee("error-same-hash"),version:S().min(1)}),P({kind:ee("error-version-not-bumped"),localVersion:S().min(1),publishedVersion:S().min(1)}),P({kind:ee("error-version-regression"),localVersion:S().min(1),publishedVersion:S().min(1)})]);P({localManifest:P({name:S().min(1),version:S().min(1),contentHash:S().min(1)}),publishState:hi("kind",[P({kind:ee("unpublished")}),P({kind:ee("published"),version:S().min(1),contentHash:S().min(1),publishedAt:V()})]),check:T6});P({extId:S().min(1),newVersion:S().min(1).nullish()});P({extId:S().min(1)});P({extId:S().min(1),snapshotHash:S().min(1)});P({channelRef:N6,snapshotHash:S().min(1),zipBase64:S().min(1)});P({id:S().min(1),peerDeviceId:S().min(1),senderDeviceId:S().min(1),text:S().min(1),createdAt:V().int().nonnegative(),readBy:Bs(S().min(1),V().int().positive()).default({}),origin:P({kind:ee("persona"),personaId:S().min(1)}).optional()}).strict();P({peerDeviceId:S().min(1).optional(),id:S().min(1),text:S().min(1),createdAt:V().int().nonnegative(),origin:P({kind:ee("persona"),personaId:S().min(1)}).optional()}).strict();P({peerDeviceId:S().min(1),sinceCreatedAt:V().int().nonnegative().optional()}).strict();P({peerDeviceId:S().min(1),upToCreatedAt:V().int().nonnegative()}).strict();P({peerDeviceId:S().min(1).optional(),text:S().min(1)});P({peerDeviceId:S().min(1).optional(),command:S().min(1),timeoutMs:V().int().positive().optional()}).strict();P({type:ee("peerExec:run:ok"),stdout:S(),stderr:S(),exitCode:V().int().nullable(),timedOut:_e(),stdoutTruncated:_e(),stderrTruncated:_e()}).strict();const MT=hi("kind",[P({kind:ee("at"),at:S().min(1)}),P({kind:ee("every"),everyMs:V().int().positive(),anchorMs:V().int().nonnegative().optional()}),P({kind:ee("cron"),expr:S().min(1),tz:S().min(1).optional()})]),mu=S().trim().min(1);P({personaId:mu,name:S().min(1),schedule:MT,prompt:S().min(1),targetPersona:S().min(1).optional(),timeoutMs:V().int().positive().optional()});P({personaId:mu,onlyMine:_e().optional()});P({personaId:mu,shiftId:S().min(1)});const I6=P({name:S().min(1).optional(),schedule:MT.optional(),prompt:S().min(1).optional(),targetPersona:S().min(1).optional(),timeoutMs:V().int().positive().optional(),enabled:_e().optional()});P({personaId:mu,shiftId:S().min(1),patch:I6});P({personaId:mu,shiftId:S().min(1),limit:V().int().positive().optional()});const P6="persona-master",W_=P({personaId:S().min(1),deviceId:S().min(1).optional()}),AT=P({id:S().min(1),name:S().min(1),memberPersonas:ie(W_),memberContactDeviceIds:ie(S().min(1)),createdAt:S().min(1),updatedAt:S().min(1)}),jT=S().trim().min(1);P({name:jT,memberPersonas:ie(W_).default([]),memberContactDeviceIds:ie(S().min(1)).default([])});P({channelId:S().min(1),name:jT.optional(),memberPersonas:ie(W_).optional(),memberContactDeviceIds:ie(S().min(1)).optional()});P({channelId:S().min(1)});P({channels:ie(AT)});P({channel:AT});P({ok:ee(!0),removedTopics:V().int().min(0)});const _n=S().trim().min(1),R6=["planning","running","done"],M6=De(R6),A6=P({at:S().min(1),actor:S().min(1),action:S().min(1),target:S().optional(),reason:S().min(1),artifacts:ie(_n).optional()}),j6=P({rejectCount:V().int().min(0),accepted:_e().default(!1),ordinal:V().int().min(1).optional(),overrideCount:V().int().min(0).optional()}),V_=P({id:S().min(1),channelId:S().min(1),title:S(),masterSessionId:S().min(1),goal:S(),boundaries:S(),acceptanceCriteria:ie(S()),activity:ie(A6),lineMeta:Bs(j6),nextLineOrdinal:V().int().min(1).optional(),state:M6,createdAt:S().min(1),updatedAt:S().min(1)}),L6=P({lineId:S().min(1),dispatchId:S().min(1),workerSessionId:S().optional(),assignee:S().min(1),focus:S(),status:U_,acceptance:ie(S()),rejectCount:V().int().min(0),accepted:_e(),ordinal:V().int().min(1).nullable()});P({channelId:S().min(1)});P({topicId:S().min(1).optional(),sessionId:S().min(1).optional()}).refine(e=>e.topicId!==void 0||e.sessionId!==void 0,{message:"either topicId or sessionId is required"});P({channelId:S().min(1),title:_n.optional()});P({topicId:S().min(1),title:_n.optional(),goal:_n,boundaries:S(),acceptanceCriteria:ie(_n).min(1)});P({topicId:S().min(1),action:_n,target:_n.optional(),reason:_n,artifacts:ie(_n).optional()});P({topicId:S().min(1),lineId:_n,reason:_n});P({topicId:S().min(1),lineId:_n,reason:_n,artifacts:ie(_n).optional(),watcherVerdict:De(["pass","fail"]),overrideReason:_n.optional()}).refine(e=>e.watcherVerdict!=="fail"||!!e.overrideReason,{message:"watcherVerdict=fail 时必须给 overrideReason(推翻 watcher 的理由)",path:["overrideReason"]});P({topicId:S().min(1),state:De(["done"])});P({topicId:S().min(1),title:_n});P({topicId:S().min(1)});const D6=V_.extend({lineCount:V().int().min(0)});P({topics:ie(D6)});P({topic:V_,lines:ie(L6)});P({topicId:S().min(1),masterSessionId:S().min(1)});P({rejectCount:V().int().min(1),needsOwnerAttention:_e()});P({acceptedLines:V().int().min(1),totalLines:V().int().min(1),allAccepted:_e(),overrides:V().int().min(0),needsOwnerAttention:_e()});P({topic:V_});P({ok:ee(!0),removedMasterSessionId:S().min(1).nullable(),removedWorkerSessionIds:ie(S().min(1))});const O6=["ask","allow","deny"],LT=De(O6),B6=P({id:S().min(1),desc:S().min(1),action:LT});P({rules:ie(B6)});P({ruleId:S().min(1)});P({action:LT,desc:S(),source:S().min(1)});const z6=["created","review-requested"],DT=/^[A-Za-z0-9._-]+$/,ll=S().min(1).regex(DT),cl=S().min(1).regex(DT),gu=V().int().positive();P({role:De(z6)});P({owner:ll,repo:cl,number:gu});P({owner:ll,repo:cl,number:gu,expectedHeadSha:S().min(1)});P({owner:ll,repo:cl,number:gu,body:S().min(1)});P({owner:ll,repo:cl,number:gu,ready:_e()});P({owner:ll,repo:cl});P({owner:ll,repo:cl,number:gu,reviewers:ie(S().min(1)).min(1)});P({personaId:S().min(1)});const $6=["expired","cancelled","access_denied","lark_protocol_error","cloud_unreachable","internal_error"],F6=De($6);P({personaId:S().min(1),appId:S().min(1),appSecret:S().min(1),botName:S().min(1).optional()});const H6=P({chatId:S().min(1),chatName:S().optional(),lastActiveAt:V().int().optional()}),U6=P({state:De(["unbound","provisioning","bound","broken"]),appId:S().optional(),botName:S().optional(),brokenReason:S().optional(),qrUrl:S().optional(),errorReason:F6.optional(),groups:ie(H6)});U6.extend({personaId:S().min(1)});P({});P({onboardingCompletedAt:V()});P({});P({tools:ie(P({id:De(["claude","codex"]),available:_e(),version:S().optional(),path:S().optional()}))});P({});const W6=P({tool:De(["claude","codex"]),cwd:S(),toolSessionId:S(),label:S().optional(),createdAt:S(),updatedAt:S(),turns:V()});P({candidates:ie(W6)});P({});P({registered:_e()});const V6=P({personaId:S(),label:S(),model:S().optional(),effort:S().optional(),public:_e(),iconKey:S().optional(),tool:S().optional(),createdAt:V(),updatedAt:V()}).strict(),q6=P({name:S().min(1),description:S().optional()}),K6=P({id:S().min(1)}),G6=P({permissions:P({defaultMode:S().optional(),allow:ie(S()).optional(),deny:ie(S()).optional()}).optional(),sandbox:P({enabled:_e().optional(),autoAllowBashIfSandboxed:_e().optional(),allowUnsandboxedCommands:_e().optional(),excludedCommands:ie(S()).optional(),filesystem:P({denyRead:ie(S()).optional(),allowRead:ie(S()).optional(),denyWrite:ie(S()).optional(),allowWrite:ie(S()).optional()}).optional(),network:P({allowedDomains:ie(S()).optional(),allowLocalBinding:_e().optional()}).optional()}).optional()});V6.extend({personality:S().optional(),personalityLocal:S().optional(),personalityManaged:_e().optional(),skills:ie(q6).optional(),plugins:ie(K6).optional(),sandboxSettings:G6.nullable().optional()});P({slug:S().regex(/^[a-z0-9]+(-[a-z0-9]+)*$/).max(32),label:S().min(1),personality:S(),model:S().optional(),effort:S().optional(),tool:S().optional(),public:_e().optional(),iconKey:S().optional()}).strict();P({personaId:S().min(1)});P({personaId:S().min(1),patch:P({label:S().min(1).optional(),model:S().optional(),effort:S().optional(),tool:S().optional(),personality:S().optional(),personalityLocal:S().optional(),public:_e().optional(),iconKey:S().nullable().optional()}).strict()}).strict();P({writableRoots:ie(S()).optional(),denyRead:ie(S()).optional(),network:_e().optional()}).strict();const OT=["ready","session:info","session:status","session:event","session:deleted","session:rewound","session:cleared","permission:request","session:question","session:question:cleared","pong","error","subscribed","unsubscribed","auth:ok","tunnel:ready","tunnel:exited","tunnel:unavailable","session:control","session:pty","contact:added","contact:pinned","contact:removed","contact:remote-access-updated","inbox:event","friend:reverseTokenOffered","auth:login:done","auth:login:failed","appBuilder:project-updated","appBuilder:publish-progress","appBuilder:publish-failed","larkBot:state"],BT=["idle","running","running-idle","stopped","error","observing"],X6=["task-notification","slash-command","local-command","system-reminder","skill-hint","meta-text","attachment-skills","attachment-deferred-tools","dispatch-task","dispatch-result"];function tp(e){return e==="dispatch-task"||e==="dispatch-result"}const Y6=["builtin","global","project","plugin"],Z6=["builtin","global","project","policy","plugin"],zT=De(["owner","guest"]);P({id:S().min(1),kind:zT,displayName:S(),feishuUnionId:S().optional()}).strict();const Q6=P({did:S().min(1),displayName:S(),feishuUnionId:S().optional(),principal:zT}).strict(),J6=De(BT),eB=P({inputTokens:V().int().nonnegative(),outputTokens:V().int().nonnegative(),cacheReadTokens:V().int().nonnegative().optional(),cacheCreateTokens:V().int().nonnegative().optional()}),$T={gitBranch:S().optional(),resolvedModel:S().optional(),resolvedEffort:S().optional(),contextUsage:eB.optional(),contextWindowSize:V().int().positive().optional(),aiLabel:S().optional()},tB=P($T),FT=P({value:S(),label:S(),description:S().optional()}),nB=P({id:S().min(1),label:S().min(1),description:S().optional(),contextWindowSize:V().int().positive(),default:_e().optional(),efforts:ie(FT).optional(),defaultEffort:S().optional()}),rB=P({id:S().min(1),label:S().min(1),description:S().optional()}),iB=P({name:S().min(1),type:De(["string","select","toggle"]),label:S().min(1),description:S().optional(),options:ie(FT).optional(),default:Cs().optional(),scope:De(["core","tool-specific"])});P({tool:S().min(1)});const sB=P({rewind:_e(),subagents:_e(),tui:_e(),observe:_e(),fileSharing:_e(),fork:_e()});P({tool:S().min(1),toolSessionIdLabel:S().optional(),models:ie(nB),permissionModes:ie(rB),configSchema:ie(iB),features:sB});const oB=P({tool:S().min(1),pattern:S().min(1),createdAt:S().min(1).optional()});P({sessionId:S().min(1),cwd:S().min(1),tool:ee("claude").or(S().min(1)).default("claude"),toolSessionId:S().optional(),label:S().optional(),model:S().optional(),permissionMode:S().optional(),effort:S().optional(),...$T,aiLabelGeneratedAt:S().optional(),permissionRules:ie(oB).optional(),pinnedAt:V().int().nonnegative().nullable().optional(),archivedAt:V().int().nonnegative().nullable().optional(),pinSortOrder:V().int().nullable().optional(),unreadAt:S().min(1).nullable().optional(),iconKey:S().optional(),forkedFromSessionId:S().min(1).optional(),ephemeral:_e().optional(),ownerPersonaId:S().min(1).optional(),projectPath:S().min(1).optional(),appBuilderProject:S().regex(/^[a-z][a-z0-9-]{0,39}$/).optional(),chatId:S().min(1).optional(),creatorPrincipalId:S().min(1).optional(),creatorDisplayName:S().min(1).optional(),creatorFeishuUnionId:S().min(1).optional(),originOwnerPrincipalId:S().min(1).optional(),originOwnerPersonaId:S().min(1).optional(),dispatchedFromSessionId:S().min(1).optional(),shiftFiredFromSessionId:S().min(1).optional(),larkChatId:S().min(1).optional(),larkChatName:S().min(1).optional(),larkChatType:De(["p2p","group"]).optional(),createdAt:S().min(1),updatedAt:S().min(1)});const On={seq:V().int().nonnegative().optional(),ts:S().optional(),uuid:S().optional()},aB=De(X6),lB=P({readCount:V().int().nonnegative().optional(),searchCount:V().int().nonnegative().optional(),bashCount:V().int().nonnegative().optional(),editFileCount:V().int().nonnegative().optional(),linesAdded:V().int().nonnegative().optional(),linesRemoved:V().int().nonnegative().optional(),otherToolCount:V().int().nonnegative().optional()}),cB=P({oldStart:V().int().nonnegative(),oldLines:V().int().nonnegative(),newStart:V().int().nonnegative(),newLines:V().int().nonnegative(),lines:ie(S())}),uB=P({agentId:S().optional(),agentType:S().optional(),status:S().optional(),prompt:S().optional(),filePath:S().optional(),structuredPatch:ie(cB).optional(),stats:P({durationMs:V().int().nonnegative().optional(),tokens:V().int().nonnegative().optional(),toolUseCount:V().int().nonnegative().optional(),toolStats:lB.optional()}).optional()}),dB=P({path:S(),content:S(),mtimeMs:V().optional()}),hB=P({label:S().min(1),description:S().optional()}),HT=P({question:S().min(1),multiSelect:_e(),options:ie(hB).min(1)}),fB=["completed","interrupted"];hi("kind",[P({...On,kind:ee("session_init"),toolSessionId:S().optional()}),P({...On,kind:ee("thinking"),text:S(),partialId:S().optional()}),P({...On,kind:ee("text"),text:S(),partialId:S().optional()}),P({...On,kind:ee("user_text"),text:S(),meta:aB.optional(),taskId:S().optional(),parentToolUseId:S().optional(),sender:Q6.optional()}),P({...On,kind:ee("tool_call"),toolUseId:S(),tool:S(),toolKind:S().optional(),input:Cs()}),P({...On,kind:ee("tool_result"),toolUseId:S(),output:Cs().optional(),error:S().optional(),toolResultExtra:uB.optional(),sourceToolAssistantUUID:S().optional(),askQuestionAnswers:Bs(S(),S()).optional()}),P({...On,kind:ee("attachment_memories"),memories:ie(dB)}),P({...On,kind:ee("permission_request"),requestId:S(),tool:S(),input:Cs(),toolUseId:S().optional()}),P({...On,kind:ee("ask_user_question"),toolUseId:S(),questions:ie(HT)}),P({...On,kind:ee("turn_end"),durationMs:V().int().nonnegative().optional(),reason:De(fB).optional()}),P({...On,kind:ee("subagent_progress"),toolUseId:S(),agentId:S(),status:De(["started","running","completed","failed"]),description:S().optional(),lastToolName:S().optional(),prompt:S().optional(),stats:P({durationMs:V().int().nonnegative().optional(),tokens:V().int().nonnegative().optional(),toolUseCount:V().int().nonnegative().optional()}).optional()}),P({...On,kind:ee("error"),message:S()}),P({...On,kind:ee("meta_update"),patch:tB}),P({...On,kind:ee("meta-text"),text:S(),metaSource:De(["cc","owner"]).optional()})]);P({cwd:S().min(1).optional(),tool:S().optional(),label:S().optional(),aiLabel:S().optional(),model:S().optional(),permissionMode:S().optional(),effort:S().optional(),iconKey:S().optional(),forkedFromSessionId:S().min(1).optional(),ephemeral:_e().optional(),ownerPersonaId:S().min(1).optional(),projectPath:S().min(1).optional()}).refine(e=>e.cwd!=null||e.ownerPersonaId!=null||e.projectPath!=null,{message:"cwd / ownerPersonaId / projectPath 至少传一个"});P({path:S().min(1),name:S().min(1),createdAt:S().datetime(),pinnedAt:V().optional()});P({path:S().min(1),pinnedAt:V().nullable()});P({path:S().min(1)});P({path:S().min(1).optional(),name:S().min(1).optional()}).refine(e=>e.path!=null||e.name!=null,{message:"path 与 name 至少给一个"});P({cwd:S().min(1),tool:S().min(1),toolSessionId:S().min(1),label:S().optional(),aiLabel:S().optional(),iconKey:S().optional(),createdAt:S().datetime(),updatedAt:S().datetime(),ownerPersonaId:S().min(1).optional()});P({originOnly:_e().optional(),ownerPersonaId:S().min(1).optional(),limit:V().int().positive().optional(),offset:V().int().nonnegative().optional()});P({sessionId:S().min(1)});P({sessionId:S().min(1),patch:P({label:S().optional(),model:S().optional(),permissionMode:S().optional(),effort:S().optional(),cwd:S().optional(),iconKey:S().optional(),ephemeral:ee(!1).optional()})});P({sessionId:S().min(1),text:S()});P({sessionId:S().min(1),userMessageId:S().min(1),dryRun:_e().optional()});P({canRewind:_e(),error:S().optional(),filesChanged:ie(S()).optional(),insertions:V().int().nonnegative().optional(),deletions:V().int().nonnegative().optional()});P({sessionId:S().min(1),userMessageId:S().min(1)});const pB=P({oldStart:V().int().nonnegative(),oldLines:V().int().nonnegative(),newStart:V().int().nonnegative(),newLines:V().int().nonnegative(),lines:ie(S())}),mB=P({filePath:S().min(1),hunks:ie(pB),insertions:V().int().nonnegative(),deletions:V().int().nonnegative(),status:De(["modified","added","deleted"]).optional()});P({canRewind:_e(),error:S().optional(),files:ie(mB),totalInsertions:V().int().nonnegative(),totalDeletions:V().int().nonnegative()});P({userMessageIds:ie(S())});P({sessionId:S().min(1),toolSessionId:S().min(1)});P({cwd:S().min(1),toolSessionId:S().min(1),messageUuid:S().min(1),targetCwd:S().min(1).optional()});P({forkedToolSessionId:S().min(1),forkedFilePath:S().min(1)});P({sessionId:S().min(1),toolSessionId:S().min(1),jsonlPath:S().optional()});P({sessionId:S().min(1),afterSeq:V().int().min(-1)});P({sessionId:S().min(1),permissionRequestId:S().min(1),allow:_e(),permanent:_e().optional(),pattern:S().optional()});P({projectPath:S().min(1)});P({sessionId:S().min(1),limit:V().int().positive().max(5e3).optional(),offset:V().int().nonnegative().optional(),slim:_e().optional()});P({cwd:S().min(1),toolSessionId:S().min(1)});P({cwd:S().min(1),toolSessionId:S().min(1),subagentId:S().min(1)});P({cwd:S().min(1).optional(),path:S().optional(),showHidden:_e().optional()});P({cwd:S().min(1),path:S().min(1)});P({cwd:S().min(1),tool:S().optional()});P({name:S().min(1),source:De(Y6),path:S().optional(),description:S().optional(),plugin:S().optional()});const gB=P({name:S().min(1),source:De(Z6),path:S().optional(),description:S().optional(),whenToUse:S().optional(),plugin:S().optional()});P({cwd:S().min(1),tool:S().optional()});P({agents:ie(gB)});P({sessionId:S().optional()});P({sessionId:S().min(1).optional()});P({sessionId:S().min(1),pinned:_e()});P({sessionId:S().min(1),archived:_e()});P({type:ee("peerSession:upsert:ok")});P({sessionId:S().min(1)});P({type:ee("peerSession:remove:ok")});P({orderedIds:ie(S().min(1)).min(1)});P({cwd:S().min(1)});P({isGitRoot:_e(),gitRoot:S().nullable()});P({cwd:S().min(1)});P({branch:S().nullable()});P({cwd:S().min(1)});P({branches:ie(S()),head:S().nullable()});const vB=P({cwd:S().min(1),updatedAt:S().min(1)});P({dirs:ie(vB)});P({type:ee("session:question"),sessionId:S().min(1),toolUseId:S().min(1),requestId:S().min(1),questions:ie(HT).min(1)});P({type:ee("session:question:cleared"),sessionId:S().min(1),toolUseId:S().min(1),answers:Bs(S(),S()).optional()});P({sessionId:S().min(1),toolUseId:S().min(1),answers:Bs(S(),S())});P({ok:ee(!0)});P({sessionId:S().min(1),toolUseId:S().min(1)});P({ok:ee(!0)});const UT=P({name:S().min(1),version:S().min(1),instanceId:S().min(1),deviceLabel:S().transform(e=>e.trim().slice(0,64)).optional()});P({type:ee("auth"),token:S().min(1),scheme:ee("bearer").optional(),clientInfo:UT.optional()});P({type:ee("auth:ok"),version:S().min(1).optional(),protocolVersion:V().int().nonnegative().optional()});const xB=P({clientId:S().min(1),connectedAt:V().int().nonnegative(),self:_e(),clientInfo:UT.optional()});P({type:ee("device:connections:ok"),connections:ie(xB)});P({type:ee("tunnel:ready"),url:S().min(1),subdomain:S().min(1)});P({type:ee("tunnel:exited"),code:V().int().nullable(),subdomain:S().nullable(),url:S().nullable()});P({type:ee("tunnel:unavailable"),reason:S().min(1),failedAt:S().min(1)});const _B=P({sessionId:S().min(1),status:J6,freshSpawn:_e(),pendingPermissionRequestIds:ie(S().min(1)),pendingQuestionToolUseIds:ie(S().min(1))});P({type:ee("info"),version:S(),protocolVersion:V(),hostname:S(),os:S(),tools:ie(P({id:S(),available:_e()})),runningSessions:ie(_B),tokenRole:De(f6).optional(),isLoopback:_e().optional(),httpBaseUrl:S().optional(),httpToken:S().optional(),daemonSource:De(["ota","packaged"]).optional(),globalCliVersion:S().nullable().optional()});const yB=6173,bB=6272,ul=/^[a-z][a-z0-9-]{0,39}$/,vu=P({name:S().regex(ul,{message:"kebab-case, 小写字母开头,只允许小写字母 / 数字 / -,最长 40 字符"}),port:V().int().min(yB).max(bB),createdAt:S().datetime(),devCommand:S().min(1),prodUrl:S().url().optional(),readyPattern:S().optional(),publishJob:P({jobId:S().min(1),stage:De(["build","deploy","verify"]),startedAt:V().int().nonnegative()}).optional()}),wB=["install-pending","installing","starting-dev-server","running","stopped","failed"],WT=De(wB),q_=vu.extend({isRunning:_e(),boundSessionId:S().nullable(),stage:WT.optional(),stageReason:S().optional(),publishJob:P({jobId:S().min(1),stage:De(["build","deploy","verify"]),startedAt:V().int().nonnegative(),status:De(["in-flight","interrupted"])}).optional()});P({}).strict();P({projects:ie(q_)}).strict();P({sessionId:S().min(1)}).strict();P({project:q_.nullable()}).strict();P({sessionId:S().min(1),name:S().min(1)}).strict();P({project:vu}).strict();P({name:S()}).strict();P({}).strict();P({name:S(),newPort:V().int()}).strict();P({project:vu}).strict();P({name:S().regex(ul),url:S().url()}).strict();P({project:vu}).strict();P({sessionId:S().min(1),force:_e().optional()}).strict();P({project:vu}).strict();const SB=["installing","failed"];P({sessionId:S().min(1),stage:De(SB),reason:S().optional()}).strict();P({ok:ee(!0)}).strict();P({sessionId:S().min(1)}).strict();P({ok:ee(!0)}).strict();P({type:ee("appBuilder:project-updated"),project:q_,stage:WT,stageReason:S().optional()}).strict();P({name:S().regex(ul)});P({jobId:S().min(1),status:De(["started","already-publishing"])}).strict();P({name:S().regex(ul)});P({ok:ee(!0)}).strict();P({type:ee("appBuilder:publish-progress"),name:S().regex(ul),jobId:S().min(1),stage:De(["build","deploy","verify"]),status:De(["started","completed"])}).strict();P({type:ee("appBuilder:publish-failed"),name:S().regex(ul),jobId:S().min(1),stage:De(["build","deploy","verify","unknown"]),errorSummary:S()}).strict();P({});P({method:S().min(1).optional()});const kB=["allowed","conditional","denied"],CB=De(kB),EB=P({name:S().min(1),status:CB,description:S().min(1),args:ie(P({name:S(),required:_e()})).nullable(),argsSchema:Bs(Cs()).optional(),reason:S().optional()});P({type:ee("meta:methods"),methods:ie(EB)});const Tw=1,NB=["daemon","main","renderer"],TB=De(NB),IB=["debug","info","warn","error"],PB=De(IB);P({ts:V().int(),source:TB,level:PB,msg:S(),ownerPrincipalId:S(),deviceId:S(),appVersion:S(),daemonVersion:S().optional(),os:S(),meta_json:S().optional(),sessionId:S().optional()});P({v:ee(1),visitorId:S().min(1),displayName:S(),provider:S(),iat:V(),exp:V()});const RB=P({visitorId:S(),displayName:S(),avatarUrl:S().optional(),provider:S(),firstSeen:V(),lastSeen:V()});P({visitors:ie(RB)});const MB=/<system-reminder>此消息来自飞书群成员 (.+?)<\/system-reminder>\s*$/,AB=/<system-reminder>此消息来自 (owner|guest):(.+?)<\/system-reminder>\s*$/,jB="clawd-dispatch-task",LB="clawd-dispatch-result",Iw=120;function DB(e){if(!e)return[];const t=[];for(const n of["task","result"]){const r=n==="task"?jB:LB,i=new RegExp(`<${r}\\b([^>]*)>([\\s\\S]*?)</${r}>`,"gi");for(let s=i.exec(e);s!==null;s=i.exec(e))t.push({at:s.index,block:OB(n,s[1]??"",s[2]??"")})}return t.sort((n,r)=>n.at-r.at).map(n=>n.block)}function OB(e,t,n){var c;const r=WB(t),i=g0(UB(Rm(n,"detail")??n)),s=(c=Rm(n,"brief"))==null?void 0:c.trim(),o=s&&s.length>0?g0(s):BB(i),a=r.round!==void 0?Number.parseInt(r.round,10):void 0,l=r.status;return{kind:e,dispatchId:r["dispatch-id"]??"",...r.from?{from:r.from}:{},...e==="task"&&a!==void 0&&Number.isFinite(a)?{round:a}:{},...e==="result"&&(l==="success"||l==="failure")?{status:l}:{},brief:o,briefIsDerived:!(s&&s.length>0),detail:i,filePaths:HB(Rm(n,"files"))}}function BB(e){const t=e.split(/\n\s*\n/).map(r=>r.trim()).find(r=>r.length>0);if(!t)return"";const n=t.replace(/\s+/g," ");return n.length>Iw?`${n.slice(0,Iw)}…`:n}const zB="clawd-dispatch-task|clawd-dispatch-result|brief|detail|files",$B=new RegExp(`<\\\\(\\\\*)(/?)(${zB})\\b`,"g");function FB(e){return g0(e)}function g0(e){return e.replace($B,"<$1$2$3")}function Rm(e,t){const n=new RegExp(`<${t}>([\\s\\S]*?)</${t}>`,"i").exec(e);return n?n[1]??"":null}function HB(e){return e?e.split(`
|
|
96
|
-
`).map(t=>t.trim()).filter(t=>t.startsWith("- ")).map(t=>t.slice(2).trim()).filter(t=>t.length>0):[]}function UB(e){return e.replace(/^\n/,"").replace(/\n$/,"")}function WB(e){const t={},n=/([a-z-]+)="([^"]*)"/gi;for(let r=n.exec(e);r!==null;r=n.exec(e))t[r[1]]=VB(r[2]??"");return t}function VB(e){return e.replace(/"/g,'"').replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&")}const qB=new Set(["localhost","127.0.0.1","0.0.0.0","::1"]);let xi=null;function KB(){if(xi!==null)return xi;if(typeof window>"u")return xi=!1,!1;if(qB.has(window.location.hostname)||window.location.protocol==="file:")return xi=!0,!0;if(new URLSearchParams(window.location.search).get("debug")==="1"){xi=!0;try{sessionStorage.setItem("debug","1")}catch{}}else try{xi=sessionStorage.getItem("debug")==="1"}catch{xi=!1}return xi}function Re(e,...t){KB()&&console.log(`[${e}][${new Date().toISOString()}]`,...t)}function cd(e){if(!e)return"<none>";let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n)|0;return`<len:${e.length} hash:${(t>>>0).toString(16)}>`}const GB=e=>{const t=[1e3,2e3,4e3,8e3,16e3,3e4];return t[Math.min(e,t.length-1)]},XB=new Set(["auth:ok","pong","error"]),Pw=new Set(OT.filter(e=>!XB.has(e)));let YB=0;const Rw=()=>`r${++YB}`;function ZB(e){let t=e.url,n=e.authToken,r=e.selfIdentity;const i=e.clientInfo,s=e.requestTimeoutMs??3e4,o=e.pingIntervalMs??3e4,a=e.watchdogMs??6e4,l=e.authTimeoutMs??1e4,c=e.backoffMs??GB;let u=null,d=!1,f=0,p=null,m=null,v=null,b=null,x=!1,_="disconnected";const y=new Map,w=new Map;let k=null;const C=(B,E)=>{var H;B==="ready"&&(k=E),(H=w.get(B))==null||H.forEach(q=>{try{q(E)}catch{}})},N=B=>{_!==B&&(_=B,C("status",B))},T=(B,E)=>{const H=w.get(B)??new Set;if(H.add(E),w.set(B,H),B==="ready"&&k!==null)try{E(k)}catch{}return()=>H.delete(E)},z=()=>{m&&(clearInterval(m),m=null),v&&(clearTimeout(v),v=null),b&&(clearTimeout(b),b=null)},I=()=>{v&&clearTimeout(v),v=setTimeout(()=>{try{u==null||u.close(4e3,"pong watchdog")}catch{}},a)},O=()=>{m&&clearInterval(m),m=setInterval(()=>{(u==null?void 0:u.readyState)===1&&u.send(JSON.stringify({type:"ping",requestId:Rw()}))},o),I()},M=B=>{for(const[,E]of y)clearTimeout(E.timer),E.reject(new Error(B));y.clear()},R=[],A=()=>{if(R.length===0)return;const B=R.splice(0);for(const E of B)(u==null?void 0:u.readyState)===1&&!x?E.doSend():(clearTimeout(E.timer),E.reject(new Error("NOT_CONNECTED")))},L=B=>{if(R.length===0)return;const E=R.splice(0);for(const H of E)clearTimeout(H.timer),H.reject(new Error(B))},$=()=>{if(d)return;const B=c(f);B<0||(C("daemon:reconnecting",{attempt:f+1,nextDelayMs:B,scheduledAt:Date.now()}),p&&clearTimeout(p),p=setTimeout(()=>{f+=1,D()},B))},F=B=>{I();const E=String(B.type??"");if(E==="auth:ok"){Re("daemon-client","auth:ok received → connected",{url:t}),b&&(clearTimeout(b),b=null),x=!1,f=0,N("connected"),C("daemon:connected",{url:t}),O(),A();return}if(E==="pong")return;if(E==="ready"){const q=Number(B.protocolVersion??-1);q!==Tw&&C("daemon:version-mismatch",{daemonProtocol:q,supportedProtocol:Tw}),C("ready",B);return}const H=B.requestId;if(typeof H=="string"&&y.has(H)){const q=y.get(H);if(y.delete(H),clearTimeout(q.timer),E==="error"){const j=String(B.code??"ERR"),ne=String(B.message??"unknown");q.reject(new Error(`${j}: ${ne}`))}else Pw.has(E)&&C(E,B),q.resolve(B);return}Pw.has(E)&&C(E,B)},D=()=>{p&&(clearTimeout(p),p=null),Re("daemon-client","connect →",{url:t,token:cd(n),attempt:f}),N("connecting");let B;try{B=new WebSocket(t)}catch(E){N("disconnected"),C("daemon:disconnected",{reason:(E==null?void 0:E.message)??"ws constructor failed"}),$();return}u=B,x=!!n,B.onopen=()=>{if(B!==u){Re("daemon-client","onopen → stale (replaced before opened), ignore");return}if(n){Re("daemon-client","onopen → send auth frame",{token:cd(n)});const E={type:"auth",token:n};r!=null&&r.principalId&&(E.selfPrincipalId=r.principalId),r!=null&&r.displayName&&(E.selfDisplayName=r.displayName),i&&(E.clientInfo=i),B.send(JSON.stringify(E)),b=setTimeout(()=>{try{B.close(4001,"auth handshake timeout")}catch{}},l)}else Re("daemon-client","onopen → no token, treat as connected (daemon authMode=none)"),f=0,N("connected"),C("daemon:connected",{url:t}),O(),A()},B.onclose=E=>{if(B!==u){Re("daemon-client","onclose → stale, ignore",{code:E.code,reason:E.reason});return}const H=E.reason||(E.code===1008?"auth failed":`close ${E.code}`);if(Re("daemon-client","onclose →",{code:E.code,reason:H,awaitingAuth:x,manualStop:d}),z(),M(`connection closed: ${H}`),u=null,E.code===4401?N("revoked"):N("disconnected"),C("daemon:disconnected",{reason:H}),E.code===1008||E.code===4401){L(`connection closed: ${H}`);return}d?L(`connection closed: ${H}`):$()},B.onerror=()=>{},B.onmessage=E=>{if(B!==u)return;let H;try{H=JSON.parse(String(E.data))}catch{return}F(H)}};return{start(){d=!1,f=0,D()},stop(){d=!0,p&&(clearTimeout(p),p=null),z();try{u==null||u.close(1e3,"shutdown")}catch{}u=null,M("shutdown"),L("shutdown"),N("disconnected")},switchProfile(B){Re("daemon-client","switchProfile →",{url:B.url,token:cd(B.authToken)},"prev:",{url:t,token:cd(n)}),t=B.url,n=B.authToken,B.selfIdentity!==void 0&&(r=B.selfIdentity),f=0,d=!0,p&&(clearTimeout(p),p=null),z(),M("switch profile"),L("switch profile");try{u==null||u.close(1e3,"switch profile")}catch{}u=null,d=!1,D()},request(B,E){return new Promise((H,q)=>{const j=Rw(),ne=setTimeout(()=>{y.delete(j);const K=R.findIndex(ye=>ye.timer===ne);K>=0&&R.splice(K,1),q(new Error(`request timeout: ${B}`))},s),le=()=>{y.set(j,{resolve:K=>H(K),reject:q,timer:ne}),u.send(JSON.stringify({...E,type:B,requestId:j}))};(u==null?void 0:u.readyState)===1&&!x?le():d||u==null&&p==null?(clearTimeout(ne),q(new Error("NOT_CONNECTED"))):R.push({doSend:le,reject:q,timer:ne})})},on:T,get isOpen(){return(u==null?void 0:u.readyState)===1&&!x},get url(){return t},getStatus(){return _}}}function QB(e){if(!e)return"<none>";let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n)|0;return`<len:${e.length} hash:${(t>>>0).toString(16)}>`}function JB(e){return e?{id:e.id,mode:e.mode,url:e.url,token:QB(e.token),name:e.name}:null}function ud(e){return e?Array.isArray(e)?e.map(JB):{_notArray:typeof e,_value:e}:null}function Mw(e){return e==null?null:typeof e=="object"&&"value"in e?e.value:e}const ez="ws://127.0.0.1:18790",Aw="daemon:profiles",jw="daemon:active-profile-id";function tz(){return Math.random().toString(36).slice(2,10)}function nz(e){const t=e.trim(),n=t.indexOf("#");if(n<0)return{url:t};const r=t.slice(0,n),i=new URLSearchParams(t.slice(n+1)).get("token")??void 0;return{url:r,token:i}}function rz(e){if(!e||typeof e!="object")return!1;const t=e;return typeof t.id=="string"&&typeof t.name=="string"&&(t.mode==="localhost"||t.mode==="remote")&&typeof t.url=="string"&&(t.token===void 0||typeof t.token=="string")}function VT(e){let t={profiles:[],activeId:null},n=!1,r=null;const i=new Set,s=()=>{for(const l of i)l(t)},o=async()=>{Re("profile-store","persist →",ud(t.profiles),"active:",t.activeId),await e.kv.set(Aw,t.profiles),await e.kv.set(jw,t.activeId)},a=async()=>{if(!n){if(r){await r;return}r=(async()=>{var l;try{let c=null;try{const d=await e.kv.get(Aw);c=Mw(d)}catch{c=null}let u=null;try{const d=await e.kv.get(jw);u=Mw(d)??null}catch{u=null}if(Re("profile-store","ensureLoaded read kv →","profiles:",ud(c),"activeId:",u),Array.isArray(c)&&c.length>0){const d=c.filter(rz),f=u&&d.some(p=>p.id===u)?u:((l=d[0])==null?void 0:l.id)??null;t={profiles:d,activeId:f},n=!0,Re("profile-store","ensureLoaded → use kv profiles",ud(d),"active:",f);return}t={profiles:[{id:"default",name:"本机",mode:"localhost",url:ez}],activeId:"default"},Re("profile-store","ensureLoaded → fallback synthesized default (NO token)",ud(t.profiles)),n=!0,await o()}finally{r=null}})(),await r}};return{async load(){return await a(),s(),t},async snapshot(){return await a(),t},async upsert(l){var b;await a();let c=l.url,u=l.token;if(c&&c.includes("#")){const x=nz(c);c=x.url,!u&&x.token&&(u=x.token)}const d=l.id?t.profiles.find(x=>x.id===l.id):void 0,f=u!=null&&u.trim()?u.trim():d==null?void 0:d.token;if(l.mode==="remote"&&!f)throw new Error("remote mode requires token");const p=l.id??tz(),m={id:p,name:((b=l.name)==null?void 0:b.trim())||(d==null?void 0:d.name)||(l.mode==="remote"?"远程":"本机"),mode:l.mode,url:c.trim(),token:f};return t={profiles:[...t.profiles.filter(x=>x.id!==p),m],activeId:p},await o(),s(),m},async delete(l){var d;await a();const c=t.profiles.filter(f=>f.id!==l);let u=t.activeId;u===l&&(u=((d=c[0])==null?void 0:d.id)??null),t={profiles:c,activeId:u},await o(),s()},async activate(l){await a(),t.profiles.some(c=>c.id===l)&&(t={...t,activeId:l},await o(),s())},subscribe(l){return i.add(l),()=>i.delete(l)},getActive(){return n?t.profiles.find(l=>l.id===t.activeId)??null:null}}}const Lw="clawd.client-instance-id";let iz={name:"clawd-web",version:"unknown"};function sz(){let e=null;try{e=localStorage.getItem(Lw),e||(e=crypto.randomUUID(),localStorage.setItem(Lw,e))}catch{e=e??crypto.randomUUID()}return{...iz,instanceId:e}}function Dw(e){if(!e)return"<none>";let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n)|0;return`<len:${e.length} hash:${(t>>>0).toString(16)}>`}const qT=g.createContext(null);function oz({host:e,children:t}){const[n,r]=g.useState(null),i=g.useMemo(()=>async()=>{const s=VT(e),o=await s.load(),a=o.profiles.find(c=>c.id===o.activeId)??o.profiles[0];if(!a)throw new Error("DaemonProvider: profile store has no profiles after load");return Re("daemon-context","bootstrap → createDaemonClient",{id:a.id,url:a.url,token:Dw(a.token)}),{client:ZB({url:a.url,authToken:a.token,clientInfo:sz()}),store:s}},[e]);return g.useEffect(()=>{let s=!0,o=null,a=null;return i().then(l=>{s&&(l.client.start(),o=l,r(l),a=l.store.subscribe(()=>{const c=l.store.getActive();if(!c){Re("daemon-context","subscribe → no active profile, skip switchProfile");return}Re("daemon-context","subscribe → switchProfile",{id:c.id,url:c.url,token:Dw(c.token)}),l.client.switchProfile({url:c.url,authToken:c.token})}))}),()=>{s=!1,a==null||a(),o==null||o.client.stop()}},[i]),n?h.jsx(qT.Provider,{value:n,children:t}):null}function fi(){const e=g.useContext(qT);if(!e)throw new Error("useDaemonClient must be used inside <DaemonProvider>");return e.client}function az(){const e=fi(),[t,n]=g.useState(void 0);return g.useEffect(()=>e.on("ready",i=>{const s=i.mode,o=s==="tui"?"tui":"sdk";Re("daemon-context","useDaemonMode ready.mode =",{rawMode:s,resolved:o}),n(o)}),[e]),t}function lz(){const e=fi(),[t,n]=g.useState(void 0);return g.useEffect(()=>e.on("ready",i=>{const s=i;s.version!==void 0&&n(s.principalKind==="guest"?"guest":"owner")}),[e]),t}const KT=g.createContext(null);function cz({cache:e,children:t}){return g.createElement(KT.Provider,{value:e},t)}function Ao(){const e=g.useContext(KT);if(!e)throw new Error("useCache must be used inside <CacheProvider>");return e}function li(e){const t=Ao(),n=g.useCallback(i=>t.observe(e,()=>i()),[t,e]),r=g.useCallback(()=>t.read(e),[t,e]);return g.useSyncExternalStore(n,r,r)}const GT={actionsLevel:"none",httpBaseUrl:null,httpToken:null},XT=g.createContext(GT);function np(){return g.useContext(XT)}function uz(e){return e!=null&&e.httpBaseUrl?{actionsLevel:e.tokenRole==="owner"?"owner":"none",httpBaseUrl:e.httpBaseUrl,httpToken:e.httpToken??null}:GT}function dz(){const e=li("daemon-info");return g.useMemo(()=>uz(e),[e])}function hz({children:e}){const t=dz();return Ze.createElement(XT.Provider,{value:t},e)}function fz(e,t,n){if(!e.httpBaseUrl)return null;const r=encodeURIComponent(n);return`${e.httpBaseUrl}/session/${encodeURIComponent(t.sessionId)}/files?path=${r}`}function pz(e){const t=new Map;return{observe(n,r){let i=t.get(n);i||(i={data:void 0,hasData:!1,listeners:new Set},t.set(n,i));const s=l=>r(l);i.listeners.add(s);const o=i.listeners.size===1;s(i.hasData?i.data:void 0),o&&e.onFirstObserver(n);let a=!1;return()=>{if(a)return;a=!0;const l=t.get(n);l&&(l.listeners.delete(s),l.listeners.size===0&&(t.delete(n),e.onLastObserver(n)))}},read(n){const r=t.get(n);return r!=null&&r.hasData?r.data:void 0},setData(n,r){const i=t.get(n);if(!i)return;const s=i.hasData?i.data:void 0,o=r(s);i.data=o,i.hasData=!0;for(const a of i.listeners)a(o)}}}function mz(){const e=[],t=new Map,n=r=>{for(const i of e)if(i.pattern.test(r))return i.source;return null};return{register(r,i){e.push({pattern:r,source:i})},activate(r){if(t.has(r))return;const i=n(r);if(!i)throw new Error(`no source registered for key: ${r}`);t.set(r,i.start(r))},deactivate(r){const i=t.get(r);i&&(t.delete(r),i())}}}function gz(e){return{request:(t,n)=>e.request(t,n),onFrame(t){const n=[];for(const r of OT)n.push(e.on(r,i=>t(r,i)));return()=>{for(const r of n)r()}},onConnect(t){return e.on("daemon:connected",()=>t())},get isConnected(){return e.isOpen}}}function YT(e){const t=(e??"claude")==="claude";return{rewind:t,subagents:t,tui:t,observe:t,fileSharing:t,fork:t}}const vz=e=>({tool:e,models:[{id:"",label:"未指定",contextWindowSize:2e5,default:!0}],permissionModes:[{id:"",label:"未指定"}],configSchema:[],features:YT(e)});function xz(e,t){return{start(n){const r=n.replace(/^capabilities\//,"");let i=!1;const s=async()=>{try{const a=await e.request("capabilities:get",{tool:r});if(i)return;t(n,()=>a)}catch{if(i)return;t(n,()=>vz(r))}},o=e.onConnect(()=>{s()});return s(),()=>{i=!0,o()}}}}function _z(e,t){return{start(n){let r=!1;const i=async()=>{try{const a=await e.request("session:list",void 0);if(r)return;t(n,()=>a.sessions??[])}catch{}},s=e.onFrame((a,l)=>{if(a==="session:info"){const c=l;if(c.chatId!==void 0)return;t(n,u=>[c,...(u??[]).filter(d=>d.sessionId!==c.sessionId)])}else if(a==="session:deleted"){const c=l;t(n,u=>(u??[]).filter(d=>d.sessionId!==c.sessionId))}}),o=e.onConnect(()=>{i()});return i(),()=>{r=!0,s(),o()}}}}const Gc={sessionId:null,events:[],lastSeq:-1,pendingPermissions:[],status:"idle",pendingQuestions:{}};function Mm(e,t){const n=t;if(n.kind==="permission_request"&&typeof n.requestId=="string"){if(e.some(i=>i.requestId===n.requestId))return e;const r={requestId:n.requestId,tool:typeof n.tool=="string"?n.tool:"",input:n.input,...typeof n.toolUseId=="string"&&n.toolUseId?{toolUseId:n.toolUseId}:{}};return[...e,r]}if(n.kind==="tool_result"&&typeof n.toolUseId=="string"&&n.toolUseId){const r=e.findIndex(i=>i.toolUseId===n.toolUseId);if(r>=0)return e.filter((i,s)=>s!==r)}return e}function ZT(e,t,n){const r=n===void 0?e.sessionId:n;switch(t.type){case"session:change":return{...Gc,sessionId:t.sessionId};case"session:event":{if(!r||t.sessionId!==r)return e;const i=typeof t.event.seq=="number"?t.event.seq:-1,s=[...e.events,t.event],o=i>e.lastSeq?i:e.lastSeq,a=Mm(e.pendingPermissions,t.event);return{...e,events:s,lastSeq:o,pendingPermissions:a}}case"session:status":return!r||t.sessionId!==r?e:{...e,status:t.status};case"session:events":{if(!r||t.sessionId!==r)return e;const i=t.events.map(o=>o.event),s=i.reduce((o,a)=>Mm(o,a),[]);return{...e,sessionId:t.sessionId,events:i,lastSeq:t.latestSeq,pendingPermissions:s}}case"session:events:append":{if(!r||t.sessionId!==r)return e;const i=new Set;for(const c of e.events){const u=c.seq;typeof u=="number"&&i.add(u)}const s=[];for(const c of t.events)typeof c.seq=="number"&&(i.has(c.seq)||s.push(c.event));const o=t.latestSeq>e.lastSeq?t.latestSeq:e.lastSeq;if(s.length===0)return o===e.lastSeq?e:{...e,lastSeq:o};const a=[...e.events,...s].sort((c,u)=>{const d=c.seq??-1,f=u.seq??-1;return d-f}),l=s.reduce((c,u)=>Mm(c,u),e.pendingPermissions);return{...e,events:a,lastSeq:o,pendingPermissions:l}}case"permission:request":{if(!r||t.sessionId!==r||e.pendingPermissions.some(s=>s.requestId===t.requestId))return e;const i={requestId:t.requestId,tool:t.tool,input:t.input,...t.toolUseId?{toolUseId:t.toolUseId}:{}};return{...e,pendingPermissions:[...e.pendingPermissions,i]}}case"permission:clear":{if(!r||r!==t.sessionId)return e;const i=t.requestId,s=e.pendingPermissions.findIndex(c=>c.requestId===i),o=s>=0?e.pendingPermissions.filter((c,u)=>u!==s):e.pendingPermissions;if(e.events.length===0)return o===e.pendingPermissions?e:{...e,pendingPermissions:o};const a=e.events.length-1,l=e.events[a];return l.kind==="permission_request"&&l.requestId===i?{...e,pendingPermissions:o,events:e.events.slice(0,a)}:o===e.pendingPermissions?e:{...e,pendingPermissions:o}}case"session:question":return!r||t.sessionId!==r?e:{...e,pendingQuestions:{...e.pendingQuestions,[t.toolUseId]:{toolUseId:t.toolUseId,requestId:t.requestId,questions:t.questions}}};case"session:question:clear":{if(!r||t.sessionId!==r||!(t.toolUseId in e.pendingQuestions))return e;const{[t.toolUseId]:i,...s}=e.pendingQuestions;return{...e,pendingQuestions:s}}case"session:question:submitted":{if(!r||t.sessionId!==r)return e;const i=e.pendingQuestions[t.toolUseId];return i?{...e,pendingQuestions:{...e.pendingQuestions,[t.toolUseId]:{...i,submittedAnswers:t.answers}}}:e}case"session:rewound":return!r||t.sessionId!==r?e:{...e,pendingPermissions:[],status:"idle"};case"ready":{if(!r)return e;const i=t.runningSessions.find(o=>o.sessionId===r);if(i!=null&&i.freshSpawn)return{...Gc,sessionId:r};const s=(i==null?void 0:i.status)??"idle";return s===e.status?e:{...e,status:s}}case"daemon:disconnected":return{...e,pendingPermissions:[]};default:return e}}const yz="session/";function bz(e){return{sid:e.slice(yz.length)}}const wz=new Set(BT);function QT(e){return wz.has(e)}function Ow(e){return QT(e)?e:"idle"}function Sz(e,t){return{start(n){const{sid:r}=bz(n);let i=!1,s=-1;const o=f=>{t(n,p=>ZT(p??Gc,f,r))},a=async f=>{const p=f==="baseline"?-1:s;try{const m=await e.request("session:events",{sessionId:r,afterSeq:p});if(i)return;const v=m.events??[],b=m.latestSeq??-1;if(f==="baseline")o({type:"session:events",sessionId:r,events:v,latestSeq:b}),s=b;else{const x=m.bufferStartSeq??0,_=b<p||x>p+1;o({type:_?"session:events":"session:events:append",sessionId:r,events:v,latestSeq:b}),s=Math.max(s,b)}}catch{}},l=async()=>{try{const f=await e.request("info");if(i)return;o({type:"ready",runningSessions:(f.runningSessions??[]).map(p=>({sessionId:p.sessionId,freshSpawn:p.freshSpawn,status:Ow(p.status)}))})}catch{}},c=async()=>{try{await e.request("session:subscribe",{sessionId:r})}catch{}i||(await a(s<0?"baseline":"delta"),!i&&await l())},u=e.onFrame((f,p)=>{if(!i)if(f==="session:event"){const m=p;if(m.sessionId!==r)return;const v=m.event.seq;Re("session-events","push session:event",{sid:r,kind:m.event.kind,seq:v,lastSeqBefore:s}),o({type:"session:event",sessionId:m.sessionId,event:m.event}),typeof v=="number"&&v>s&&(s=v)}else if(f==="session:status"){const m=p;if(m.sessionId!==r)return;if(!QT(m.status)){Re("session-events","push session:status drop",{sid:r,status:m.status});return}Re("session-events","push session:status",{sid:r,status:m.status}),o({type:"session:status",sessionId:m.sessionId,status:m.status})}else if(f==="session:cleared"){if(p.sessionId!==r)return;Re("session-events","push session:cleared",{sid:r}),o({type:"session:change",sessionId:r}),s=-1}else if(f==="permission:request"){const m=p;if(m.sessionId!==r)return;o({type:"permission:request",sessionId:m.sessionId,requestId:m.requestId,tool:m.tool,input:m.input,...typeof m.toolUseId=="string"&&m.toolUseId?{toolUseId:m.toolUseId}:{}})}else if(f==="session:question"){const m=p;if(m.sessionId!==r)return;o({type:"session:question",sessionId:m.sessionId,toolUseId:m.toolUseId,requestId:m.requestId,questions:m.questions})}else if(f==="session:question:cleared"){const m=p;if(m.sessionId!==r)return;m.answers&&Object.keys(m.answers).length>0?o({type:"session:question:submitted",sessionId:m.sessionId,toolUseId:m.toolUseId,answers:m.answers}):o({type:"session:question:clear",sessionId:m.sessionId,toolUseId:m.toolUseId})}else if(f==="session:rewound"){const m=p;if(m.sessionId!==r)return;o({type:"session:rewound",sessionId:m.sessionId,userMessageId:m.userMessageId})}else f==="ready"&&o({type:"ready",runningSessions:(p.runningSessions??[]).map(v=>({sessionId:v.sessionId,freshSpawn:v.freshSpawn,status:Ow(v.status)}))})}),d=e.onConnect(()=>{c()});return e.isConnected&&c(),()=>{i=!0,u(),d(),e.request("session:unsubscribe",{sessionId:r}).catch(()=>{})}}}}const kz=new Set(["tunnel:ready","tunnel:exited","tunnel:unavailable"]);function Cz(e,t){return{start(n){let r=!1;const i=async()=>{try{const a=await e.request("info",void 0);if(r)return;t(n,()=>a)}catch{}},s=e.onConnect(()=>{i()}),o=e.onFrame(a=>{kz.has(a)&&i()});return i(),()=>{r=!0,s(),o()}}}}function Ez(){return{start(){return()=>{}}}}function Nz(e,t){return{start(n){let r=!1;const i=async()=>{try{const o=await e.request("persona:list",{});if(r)return;t(n,()=>o.personas??[])}catch{}},s=e.onConnect(()=>{i()});return i(),()=>{r=!0,s()}}}}function Tz(e){const t=gz(e),n=mz();let r=null;const i=(o,a)=>{r==null||r.setData(o,a)};n.register(/^capabilities\//,xz(t,i)),n.register(/^sessions$/,_z(t,i)),n.register(/^session\//,Sz(t,i)),n.register(/^personas$/,Nz(t,i)),n.register(/^persona-detail\//,Ez()),n.register(/^daemon-info$/,Cz(t,i));const s=pz({onFirstObserver:o=>{o&&n.activate(o)},onLastObserver:o=>{o&&n.deactivate(o)}});return r=s,{cache:s,channel:t}}class K_{constructor(t){this.client=t}info(){return this.client.request("info")}attachmentSignUrl(t){return this.client.request("attachment.signUrl",t)}attachmentGroupAdd(t,n,r){return this.client.request("attachment.groupAdd",{sessionId:t,relPath:n,...r?{label:r}:{}})}attachmentGroupRemove(t,n){return this.client.request("attachment.groupRemove",{sessionId:t,relPath:n})}attachmentGroupList(t){return this.client.request("attachment.groupList",{sessionId:t})}sessionCreate(t){return this.client.request("session:create",t)}projectList(){return this.client.request("project:list")}projectCreate(t){return this.client.request("project:create",{...t.path?{path:t.path}:{},...t.name?{name:t.name}:{}})}projectPatch(t){return this.client.request("project:patch",t)}projectReveal(t){return this.client.request("project:reveal",{path:t})}appBuilderListProjects(){return this.client.request("appBuilder:listProjects",{})}appBuilderGetProject(t){return this.client.request("appBuilder:getProject",{sessionId:t})}appBuilderUpdateProjectPort(t,n){return this.client.request("appBuilder:updateProjectPort",{name:t,newPort:n})}appBuilderStartDevServer(t,n){return this.client.request("appBuilder:startDevServer",{sessionId:t,...n!=null&&n.force?{force:!0}:{}})}appBuilderStopDevServer(t){return this.client.request("appBuilder:stopDevServer",{sessionId:t})}appBuilderPublish(t){return this.client.request("appBuilder:publish",{name:t})}appBuilderDismissPublishJob(t){return this.client.request("appBuilder:dismissPublishJob",{name:t})}sessionList(){return this.client.request("session:list")}sessionGet(t){return this.client.request("session:get",{sessionId:t})}sessionUpdate(t,n){return this.client.request("session:update",{sessionId:t,patch:n})}sessionDelete(t){return this.client.request("session:delete",{sessionId:t})}sessionSend(t,n){return this.client.request("session:send",{sessionId:t,text:n})}sessionStop(t){return this.client.request("session:stop",{sessionId:t})}sessionInterrupt(t){return this.client.request("session:interrupt",{sessionId:t})}sessionRewind(t){return this.client.request("session:rewind",t)}sessionRewindableMessageIds(t){return this.client.request("session:rewindable-message-ids",{sessionId:t})}sessionRewindDiff(t){return this.client.request("session:rewind-diff",t)}sessionNew(t){return this.client.request("session:new",{sessionId:t})}sessionFork(t){return this.client.request("session:fork",t)}sessionResume(t,n){return this.client.request("session:resume",{sessionId:t,toolSessionId:n})}sessionObserve(t){return this.client.request("session:observe",t)}sessionEvents(t,n){return this.client.request("session:events",{sessionId:t,afterSeq:n})}sessionSubscribe(t){return this.client.request("session:subscribe",{sessionId:t})}sessionUnsubscribe(t){return this.client.request("session:unsubscribe",{sessionId:t})}pinSession(t,n){return this.client.request("session:pin",{sessionId:t,pinned:n})}archiveSession(t,n){return this.client.request("session:archive",{sessionId:t,archived:n})}markSessionRead(t){return this.client.request("session:markRead",{sessionId:t})}reorderPins(t){return this.client.request("session:reorderPins",{orderedIds:t})}peerSessionUpsert(t){return this.client.request("peerSession:upsert",t)}peerSessionRemove(t){return this.client.request("peerSession:remove",{sessionId:t})}permissionRespond(t){return this.client.request("permission:respond",t)}answerQuestion(t){return this.client.request("session:answerQuestion",t)}cancelQuestion(t){return this.client.request("session:cancelQuestion",t)}historyProjects(){return this.client.request("history:projects")}historyList(t){return this.client.request("history:list",{projectPath:t})}historyRead(t){return this.client.request("history:read",t)}historySubagents(t){return this.client.request("history:subagents",t)}historySubagentRead(t){return this.client.request("history:subagent-read",t)}listRecentDirs(){return this.client.request("history:recentDirs",{})}getGitRoot(t){return this.client.request("git:root",{cwd:t})}getGitBranch(t){return this.client.request("git:branch",{cwd:t})}listGitBranches(t){return this.client.request("git:branches",{cwd:t})}personaCreate(t){return this.client.request("persona:create",t)}personaList(){return this.client.request("persona:list",{})}personaGet(t){return this.client.request("persona:get",{personaId:t})}personaUpdate(t,n){return this.client.request("persona:update",{personaId:t,patch:n})}personaDelete(t){return this.client.request("persona:delete",{personaId:t})}larkBotBindManual(t,n,r){return this.client.request("larkBot:bindManual",{personaId:t,appId:n,appSecret:r})}larkBotUnbind(t){return this.client.request("larkBot:unbind",{personaId:t})}larkBotStatus(t){return this.client.request("larkBot:status",{personaId:t})}toolsProbe(){return this.client.request("tools:probe",{})}sessionExternalScan(){return this.client.request("session:externalScan",{})}sessionImportExternal(t){return this.client.request("session:importExternal",t)}onboardingComplete(){return this.client.request("onboarding:complete",{})}onboardingIosInterest(){return this.client.request("onboarding:iosInterest",{})}visitorList(){return this.client.request("visitor:list",{})}workspaceList(t={}){return this.client.request("workspace:list",t)}workspaceRead(t){return this.client.request("workspace:read",t)}skillsList(t,n){return this.client.request("skills:list",{cwd:t,...n?{tool:n}:{}})}agentsList(t,n){return this.client.request("agents:list",{cwd:t,...n?{tool:n}:{}})}capabilitiesGet(t="claude"){return this.client.request("capabilities:get",{tool:t})}shiftList(){return this.client.request("shift:list")}channelList(){return this.client.request("channel:list")}channelCreate(t){return this.client.request("channel:create",t)}channelUpdate(t){return this.client.request("channel:update",t)}channelDelete(t){return this.client.request("channel:delete",t)}topicList(t){return this.client.request("topic:list",t)}topicGet(t){return this.client.request("topic:get",t)}topicCreate(t){return this.client.request("topic:create",t)}topicClose(t){return this.client.request("topic:close",t)}topicRename(t){return this.client.request("topic:rename",t)}topicDelete(t){return this.client.request("topic:delete",t)}githubStatus(){return this.client.request("github:status")}githubPrList(t){return this.client.request("github:prList",{role:t})}githubPrDetail(t){return this.client.request("github:prDetail",{...t})}githubPrMerge(t){return this.client.request("github:prMerge",{...t})}githubPrComment(t){return this.client.request("github:prComment",{...t})}githubPrSetReady(t){return this.client.request("github:prSetReady",{...t})}githubCollaborators(t){return this.client.request("github:collaborators",{...t})}githubPrRequestReviewers(t){return this.client.request("github:prRequestReviewers",{...t})}}function Iz(e){const[t,n]=g.useState(e.isOpen?{kind:"connected",url:""}:{kind:"connecting"});return g.useEffect(()=>{const r=e.on("ready",l=>{const c=l;n(u=>({kind:"connected",url:u.kind==="connected"?u.url:"",mode:u.kind==="connected"?u.mode:void 0,daemonVersion:c.version,protocolVersion:c.protocolVersion,daemonSource:c.daemonSource,globalCliVersion:c.globalCliVersion,onboardingCompletedAt:c.onboardingCompletedAt}))}),i=e.on("daemon:connected",l=>{const c=l;n(u=>({kind:"connected",url:c.url,mode:c.mode,daemonVersion:u.kind==="connected"?u.daemonVersion:void 0,protocolVersion:u.kind==="connected"?u.protocolVersion:void 0,daemonSource:u.kind==="connected"?u.daemonSource:void 0,globalCliVersion:u.kind==="connected"?u.globalCliVersion:void 0,onboardingCompletedAt:u.kind==="connected"?u.onboardingCompletedAt:void 0}))}),s=e.on("daemon:disconnected",l=>{const c=(l==null?void 0:l.reason)??"";/auth failed|auth timeout|auth required|auth handshake timeout/i.test(c)?n({kind:"auth-failed",reason:c}):n({kind:"disconnected",reason:c})}),o=e.on("daemon:reconnecting",l=>{const c=l;n({kind:"reconnecting",attempt:c.attempt,nextDelayMs:c.nextDelayMs,scheduledAt:c.scheduledAt??Date.now()})}),a=e.on("daemon:version-mismatch",l=>{const c=l;n({kind:"version-mismatch",daemonProtocol:c.daemonProtocol,supportedProtocol:c.supportedProtocol})});return()=>{r(),i(),s(),o(),a()}},[e]),t}function Pz(e){const t=Ao(),n=li(e.kind==="connected"?"sessions":""),r=g.useCallback(async()=>{t.setData("sessions",i=>i??[])},[t]);return{sessions:n??[],loading:!1,loaded:n!==void 0,error:null,refresh:r}}function dl(){const e=fi();return g.useMemo(()=>new K_(e),[e])}function JT(e){return{personaId:e.personaId,label:e.label,model:e.model,effort:e.effort,tool:e.tool,public:e.public,createdAt:e.createdAt,updatedAt:e.updatedAt}}function eI(){const e=Ao(),t=dl(),n=li("personas")??[],r=g.useMemo(()=>n.map(s=>JT(s)),[n]),i=g.useCallback(async()=>{const s=await t.personaList();e.setData("personas",()=>s.personas??[])},[t,e]);return{personas:r,raw:n,loaded:li("personas")!==void 0,refresh:i}}function tI(e){const{raw:t}=eI(),n=Ao(),r=dl(),i=e?t.find(a=>a.personaId===e)??null:null,s=i?JT(i):null,o=g.useCallback(async()=>{if(!e)return;const a=await r.personaList();n.setData("personas",()=>a.personas??[])},[e,r,n]);return{persona:s,raw:i,loaded:!!s,refresh:o}}function Rz(e){const t=dl(),n=Ao(),r=e?`persona-detail/${e}`:"",i=li(r),s=g.useCallback(async()=>{const o={personality:"",personalityLocal:"",personalityManaged:!1,skills:[],plugins:[],sandboxSettings:null};if(!e)return o;let a=null;try{a=await t.personaGet(e)}catch(c){Re("personas","personaGet failed → empty detail",{personaId:e,err:c}),a=null}const l=a?{personality:a.personality??"",personalityLocal:a.personalityLocal??"",personalityManaged:a.personalityManaged??!1,skills:a.skills??[],plugins:a.plugins??[],sandboxSettings:a.sandboxSettings??null}:o;return n.setData(r,()=>l),l},[t,n,e,r]);return g.useEffect(()=>{e&&s()},[e,s]),{personality:(i==null?void 0:i.personality)??"",personalityLocal:(i==null?void 0:i.personalityLocal)??"",personalityManaged:(i==null?void 0:i.personalityManaged)??!1,skills:(i==null?void 0:i.skills)??[],plugins:(i==null?void 0:i.plugins)??[],sandboxSettings:(i==null?void 0:i.sandboxSettings)??null,loaded:i!==void 0,refresh:s}}function nI(){const e=Ao(),t=dl();return g.useCallback(async()=>{const n=await t.personaList();e.setData("personas",()=>n.personas??[])},[e,t])}function Mz(){const e=dl(),t=nI();return g.useCallback(async(n,r)=>{const i=await e.personaUpdate(n,r);return await t(),i},[e,t])}function Az(){const e=dl(),t=nI();return g.useCallback(async n=>{await e.personaDelete(n),await t()},[e,t])}const Bw="clawd:sidebar:tree-collapsed";function jz(e){return e&&typeof e=="object"&&"value"in e?e.value:e}function Lz(e){const t=jz(e);if(!Array.isArray(t))return new Set;const n=new Set;for(const r of t)typeof r=="string"&&n.add(r);return n}function Dz(){const e=T_(),[t,n]=g.useState(()=>new Set),r=g.useRef(t);r.current=t,g.useEffect(()=>{let l=!1;return(async()=>{try{const c=await e.kv.get(Bw);if(l)return;n(Lz(c))}catch{}})(),()=>{l=!0}},[e]);const i=g.useCallback(l=>{e.kv.set(Bw,[...l]).catch(()=>{})},[e]),s=g.useCallback(l=>r.current.has(l),[]),o=g.useCallback(l=>{n(c=>{const u=new Set(c);return u.has(l)?u.delete(l):u.add(l),i(u),u})},[i]),a=g.useCallback(l=>{n(c=>{let u=!1;const d=new Set;for(const f of c)l.has(f)?d.add(f):u=!0;return u?(i(d),d):c})},[i]);return{isCollapsed:s,toggle:o,prune:a}}const G_=g.createContext(null);function Oz(){const e=g.useContext(G_);if(!e)throw new Error("SessionTreeCollapsedContext.Provider missing — wrap SessionTreeNode tree with <SessionTreeCollapsedContext.Provider value={useSessionTreeCollapsed()}>");return e}/**
|
|
96
|
+
`).map(t=>t.trim()).filter(t=>t.startsWith("- ")).map(t=>t.slice(2).trim()).filter(t=>t.length>0):[]}function UB(e){return e.replace(/^\n/,"").replace(/\n$/,"")}function WB(e){const t={},n=/([a-z-]+)="([^"]*)"/gi;for(let r=n.exec(e);r!==null;r=n.exec(e))t[r[1]]=VB(r[2]??"");return t}function VB(e){return e.replace(/"/g,'"').replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&")}const qB=new Set(["localhost","127.0.0.1","0.0.0.0","::1"]);let xi=null;function KB(){if(xi!==null)return xi;if(typeof window>"u")return xi=!1,!1;if(qB.has(window.location.hostname)||window.location.protocol==="file:")return xi=!0,!0;if(new URLSearchParams(window.location.search).get("debug")==="1"){xi=!0;try{sessionStorage.setItem("debug","1")}catch{}}else try{xi=sessionStorage.getItem("debug")==="1"}catch{xi=!1}return xi}function Re(e,...t){KB()&&console.log(`[${e}][${new Date().toISOString()}]`,...t)}function cd(e){if(!e)return"<none>";let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n)|0;return`<len:${e.length} hash:${(t>>>0).toString(16)}>`}const GB=e=>{const t=[1e3,2e3,4e3,8e3,16e3,3e4];return t[Math.min(e,t.length-1)]},XB=new Set(["auth:ok","pong","error"]),Pw=new Set(OT.filter(e=>!XB.has(e)));let YB=0;const Rw=()=>`r${++YB}`;function ZB(e){let t=e.url,n=e.authToken,r=e.selfIdentity;const i=e.clientInfo,s=e.requestTimeoutMs??3e4,o=e.pingIntervalMs??3e4,a=e.watchdogMs??6e4,l=e.authTimeoutMs??1e4,c=e.backoffMs??GB;let u=null,d=!1,f=0,p=null,m=null,v=null,b=null,x=!1,_="disconnected";const y=new Map,w=new Map;let k=null;const C=(B,E)=>{var H;B==="ready"&&(k=E),(H=w.get(B))==null||H.forEach(q=>{try{q(E)}catch{}})},N=B=>{_!==B&&(_=B,C("status",B))},T=(B,E)=>{const H=w.get(B)??new Set;if(H.add(E),w.set(B,H),B==="ready"&&k!==null)try{E(k)}catch{}return()=>H.delete(E)},z=()=>{m&&(clearInterval(m),m=null),v&&(clearTimeout(v),v=null),b&&(clearTimeout(b),b=null)},I=()=>{v&&clearTimeout(v),v=setTimeout(()=>{try{u==null||u.close(4e3,"pong watchdog")}catch{}},a)},O=()=>{m&&clearInterval(m),m=setInterval(()=>{(u==null?void 0:u.readyState)===1&&u.send(JSON.stringify({type:"ping",requestId:Rw()}))},o),I()},M=B=>{for(const[,E]of y)clearTimeout(E.timer),E.reject(new Error(B));y.clear()},R=[],A=()=>{if(R.length===0)return;const B=R.splice(0);for(const E of B)(u==null?void 0:u.readyState)===1&&!x?E.doSend():(clearTimeout(E.timer),E.reject(new Error("NOT_CONNECTED")))},L=B=>{if(R.length===0)return;const E=R.splice(0);for(const H of E)clearTimeout(H.timer),H.reject(new Error(B))},$=()=>{if(d)return;const B=c(f);if(B<0){L("connection closed: not reconnecting");return}C("daemon:reconnecting",{attempt:f+1,nextDelayMs:B,scheduledAt:Date.now()}),p&&clearTimeout(p),p=setTimeout(()=>{f+=1,D()},B)},F=B=>{I();const E=String(B.type??"");if(E==="auth:ok"){Re("daemon-client","auth:ok received → connected",{url:t}),b&&(clearTimeout(b),b=null),x=!1,f=0,N("connected"),C("daemon:connected",{url:t}),O(),A();return}if(E==="pong")return;if(E==="ready"){const q=Number(B.protocolVersion??-1);q!==Tw&&C("daemon:version-mismatch",{daemonProtocol:q,supportedProtocol:Tw}),C("ready",B);return}const H=B.requestId;if(typeof H=="string"&&y.has(H)){const q=y.get(H);if(y.delete(H),clearTimeout(q.timer),E==="error"){const j=String(B.code??"ERR"),ne=String(B.message??"unknown");q.reject(new Error(`${j}: ${ne}`))}else Pw.has(E)&&C(E,B),q.resolve(B);return}Pw.has(E)&&C(E,B)},D=()=>{p&&(clearTimeout(p),p=null),Re("daemon-client","connect →",{url:t,token:cd(n),attempt:f}),N("connecting");let B;try{B=new WebSocket(t)}catch(E){N("disconnected"),C("daemon:disconnected",{reason:(E==null?void 0:E.message)??"ws constructor failed"}),$();return}u=B,x=!!n,B.onopen=()=>{if(B!==u){Re("daemon-client","onopen → stale (replaced before opened), ignore");return}if(n){Re("daemon-client","onopen → send auth frame",{token:cd(n)});const E={type:"auth",token:n};r!=null&&r.principalId&&(E.selfPrincipalId=r.principalId),r!=null&&r.displayName&&(E.selfDisplayName=r.displayName),i&&(E.clientInfo=i),B.send(JSON.stringify(E)),b=setTimeout(()=>{try{B.close(4001,"auth handshake timeout")}catch{}},l)}else Re("daemon-client","onopen → no token, treat as connected (daemon authMode=none)"),f=0,N("connected"),C("daemon:connected",{url:t}),O(),A()},B.onclose=E=>{if(B!==u){Re("daemon-client","onclose → stale, ignore",{code:E.code,reason:E.reason});return}const H=E.reason||(E.code===1008?"auth failed":`close ${E.code}`);if(Re("daemon-client","onclose →",{code:E.code,reason:H,awaitingAuth:x,manualStop:d}),z(),M(`connection closed: ${H}`),u=null,E.code===4401?N("revoked"):N("disconnected"),C("daemon:disconnected",{reason:H}),E.code===1008||E.code===4401){L(`connection closed: ${H}`);return}d?L(`connection closed: ${H}`):$()},B.onerror=()=>{},B.onmessage=E=>{if(B!==u)return;let H;try{H=JSON.parse(String(E.data))}catch{return}F(H)}};return{start(){d=!1,f=0,D()},stop(){d=!0,p&&(clearTimeout(p),p=null),z();try{u==null||u.close(1e3,"shutdown")}catch{}u=null,M("shutdown"),L("shutdown"),N("disconnected")},switchProfile(B){Re("daemon-client","switchProfile →",{url:B.url,token:cd(B.authToken)},"prev:",{url:t,token:cd(n)}),t=B.url,n=B.authToken,B.selfIdentity!==void 0&&(r=B.selfIdentity),f=0,d=!0,p&&(clearTimeout(p),p=null),z(),M("switch profile"),L("switch profile");try{u==null||u.close(1e3,"switch profile")}catch{}u=null,d=!1,D()},request(B,E){return new Promise((H,q)=>{const j=Rw(),ne=setTimeout(()=>{y.delete(j);const K=R.findIndex(ye=>ye.timer===ne);K>=0&&R.splice(K,1),q(new Error(`request timeout: ${B}`))},s),le=()=>{y.set(j,{resolve:K=>H(K),reject:q,timer:ne}),u.send(JSON.stringify({...E,type:B,requestId:j}))};(u==null?void 0:u.readyState)===1&&!x?le():d||u==null&&p==null?(clearTimeout(ne),q(new Error("NOT_CONNECTED"))):R.push({doSend:le,reject:q,timer:ne})})},on:T,get isOpen(){return(u==null?void 0:u.readyState)===1&&!x},get url(){return t},getStatus(){return _}}}function QB(e){if(!e)return"<none>";let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n)|0;return`<len:${e.length} hash:${(t>>>0).toString(16)}>`}function JB(e){return e?{id:e.id,mode:e.mode,url:e.url,token:QB(e.token),name:e.name}:null}function ud(e){return e?Array.isArray(e)?e.map(JB):{_notArray:typeof e,_value:e}:null}function Mw(e){return e==null?null:typeof e=="object"&&"value"in e?e.value:e}const ez="ws://127.0.0.1:18790",Aw="daemon:profiles",jw="daemon:active-profile-id";function tz(){return Math.random().toString(36).slice(2,10)}function nz(e){const t=e.trim(),n=t.indexOf("#");if(n<0)return{url:t};const r=t.slice(0,n),i=new URLSearchParams(t.slice(n+1)).get("token")??void 0;return{url:r,token:i}}function rz(e){if(!e||typeof e!="object")return!1;const t=e;return typeof t.id=="string"&&typeof t.name=="string"&&(t.mode==="localhost"||t.mode==="remote")&&typeof t.url=="string"&&(t.token===void 0||typeof t.token=="string")}function VT(e){let t={profiles:[],activeId:null},n=!1,r=null;const i=new Set,s=()=>{for(const l of i)l(t)},o=async()=>{Re("profile-store","persist →",ud(t.profiles),"active:",t.activeId),await e.kv.set(Aw,t.profiles),await e.kv.set(jw,t.activeId)},a=async()=>{if(!n){if(r){await r;return}r=(async()=>{var l;try{let c=null;try{const d=await e.kv.get(Aw);c=Mw(d)}catch{c=null}let u=null;try{const d=await e.kv.get(jw);u=Mw(d)??null}catch{u=null}if(Re("profile-store","ensureLoaded read kv →","profiles:",ud(c),"activeId:",u),Array.isArray(c)&&c.length>0){const d=c.filter(rz),f=u&&d.some(p=>p.id===u)?u:((l=d[0])==null?void 0:l.id)??null;t={profiles:d,activeId:f},n=!0,Re("profile-store","ensureLoaded → use kv profiles",ud(d),"active:",f);return}t={profiles:[{id:"default",name:"本机",mode:"localhost",url:ez}],activeId:"default"},Re("profile-store","ensureLoaded → fallback synthesized default (NO token)",ud(t.profiles)),n=!0,await o()}finally{r=null}})(),await r}};return{async load(){return await a(),s(),t},async snapshot(){return await a(),t},async upsert(l){var b;await a();let c=l.url,u=l.token;if(c&&c.includes("#")){const x=nz(c);c=x.url,!u&&x.token&&(u=x.token)}const d=l.id?t.profiles.find(x=>x.id===l.id):void 0,f=u!=null&&u.trim()?u.trim():d==null?void 0:d.token;if(l.mode==="remote"&&!f)throw new Error("remote mode requires token");const p=l.id??tz(),m={id:p,name:((b=l.name)==null?void 0:b.trim())||(d==null?void 0:d.name)||(l.mode==="remote"?"远程":"本机"),mode:l.mode,url:c.trim(),token:f};return t={profiles:[...t.profiles.filter(x=>x.id!==p),m],activeId:p},await o(),s(),m},async delete(l){var d;await a();const c=t.profiles.filter(f=>f.id!==l);let u=t.activeId;u===l&&(u=((d=c[0])==null?void 0:d.id)??null),t={profiles:c,activeId:u},await o(),s()},async activate(l){await a(),t.profiles.some(c=>c.id===l)&&(t={...t,activeId:l},await o(),s())},subscribe(l){return i.add(l),()=>i.delete(l)},getActive(){return n?t.profiles.find(l=>l.id===t.activeId)??null:null}}}const Lw="clawd.client-instance-id";let iz={name:"clawd-web",version:"unknown"};function sz(){let e=null;try{e=localStorage.getItem(Lw),e||(e=crypto.randomUUID(),localStorage.setItem(Lw,e))}catch{e=e??crypto.randomUUID()}return{...iz,instanceId:e}}function Dw(e){if(!e)return"<none>";let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n)|0;return`<len:${e.length} hash:${(t>>>0).toString(16)}>`}const qT=g.createContext(null);function oz({host:e,children:t}){const[n,r]=g.useState(null),i=g.useMemo(()=>async()=>{const s=VT(e),o=await s.load(),a=o.profiles.find(c=>c.id===o.activeId)??o.profiles[0];if(!a)throw new Error("DaemonProvider: profile store has no profiles after load");return Re("daemon-context","bootstrap → createDaemonClient",{id:a.id,url:a.url,token:Dw(a.token)}),{client:ZB({url:a.url,authToken:a.token,clientInfo:sz()}),store:s}},[e]);return g.useEffect(()=>{let s=!0,o=null,a=null;return i().then(l=>{s&&(l.client.start(),o=l,r(l),a=l.store.subscribe(()=>{const c=l.store.getActive();if(!c){Re("daemon-context","subscribe → no active profile, skip switchProfile");return}Re("daemon-context","subscribe → switchProfile",{id:c.id,url:c.url,token:Dw(c.token)}),l.client.switchProfile({url:c.url,authToken:c.token})}))}),()=>{s=!1,a==null||a(),o==null||o.client.stop()}},[i]),n?h.jsx(qT.Provider,{value:n,children:t}):null}function fi(){const e=g.useContext(qT);if(!e)throw new Error("useDaemonClient must be used inside <DaemonProvider>");return e.client}function az(){const e=fi(),[t,n]=g.useState(void 0);return g.useEffect(()=>e.on("ready",i=>{const s=i.mode,o=s==="tui"?"tui":"sdk";Re("daemon-context","useDaemonMode ready.mode =",{rawMode:s,resolved:o}),n(o)}),[e]),t}function lz(){const e=fi(),[t,n]=g.useState(void 0);return g.useEffect(()=>e.on("ready",i=>{const s=i;s.version!==void 0&&n(s.principalKind==="guest"?"guest":"owner")}),[e]),t}const KT=g.createContext(null);function cz({cache:e,children:t}){return g.createElement(KT.Provider,{value:e},t)}function Ao(){const e=g.useContext(KT);if(!e)throw new Error("useCache must be used inside <CacheProvider>");return e}function li(e){const t=Ao(),n=g.useCallback(i=>t.observe(e,()=>i()),[t,e]),r=g.useCallback(()=>t.read(e),[t,e]);return g.useSyncExternalStore(n,r,r)}const GT={actionsLevel:"none",httpBaseUrl:null,httpToken:null},XT=g.createContext(GT);function np(){return g.useContext(XT)}function uz(e){return e!=null&&e.httpBaseUrl?{actionsLevel:e.tokenRole==="owner"?"owner":"none",httpBaseUrl:e.httpBaseUrl,httpToken:e.httpToken??null}:GT}function dz(){const e=li("daemon-info");return g.useMemo(()=>uz(e),[e])}function hz({children:e}){const t=dz();return Ze.createElement(XT.Provider,{value:t},e)}function fz(e,t,n){if(!e.httpBaseUrl)return null;const r=encodeURIComponent(n);return`${e.httpBaseUrl}/session/${encodeURIComponent(t.sessionId)}/files?path=${r}`}function pz(e){const t=new Map;return{observe(n,r){let i=t.get(n);i||(i={data:void 0,hasData:!1,listeners:new Set},t.set(n,i));const s=l=>r(l);i.listeners.add(s);const o=i.listeners.size===1;s(i.hasData?i.data:void 0),o&&e.onFirstObserver(n);let a=!1;return()=>{if(a)return;a=!0;const l=t.get(n);l&&(l.listeners.delete(s),l.listeners.size===0&&(t.delete(n),e.onLastObserver(n)))}},read(n){const r=t.get(n);return r!=null&&r.hasData?r.data:void 0},setData(n,r){const i=t.get(n);if(!i)return;const s=i.hasData?i.data:void 0,o=r(s);i.data=o,i.hasData=!0;for(const a of i.listeners)a(o)}}}function mz(){const e=[],t=new Map,n=r=>{for(const i of e)if(i.pattern.test(r))return i.source;return null};return{register(r,i){e.push({pattern:r,source:i})},activate(r){if(t.has(r))return;const i=n(r);if(!i)throw new Error(`no source registered for key: ${r}`);t.set(r,i.start(r))},deactivate(r){const i=t.get(r);i&&(t.delete(r),i())}}}function gz(e){return{request:(t,n)=>e.request(t,n),onFrame(t){const n=[];for(const r of OT)n.push(e.on(r,i=>t(r,i)));return()=>{for(const r of n)r()}},onConnect(t){return e.on("daemon:connected",()=>t())},get isConnected(){return e.isOpen}}}function YT(e){const t=(e??"claude")==="claude";return{rewind:t,subagents:t,tui:t,observe:t,fileSharing:t,fork:t}}const vz=e=>({tool:e,models:[{id:"",label:"未指定",contextWindowSize:2e5,default:!0}],permissionModes:[{id:"",label:"未指定"}],configSchema:[],features:YT(e)});function xz(e,t){return{start(n){const r=n.replace(/^capabilities\//,"");let i=!1;const s=async()=>{try{const a=await e.request("capabilities:get",{tool:r});if(i)return;t(n,()=>a)}catch{if(i)return;t(n,()=>vz(r))}},o=e.onConnect(()=>{s()});return s(),()=>{i=!0,o()}}}}function _z(e,t){return{start(n){let r=!1;const i=async()=>{try{const a=await e.request("session:list",void 0);if(r)return;t(n,()=>a.sessions??[])}catch{}},s=e.onFrame((a,l)=>{if(a==="session:info"){const c=l;if(c.chatId!==void 0)return;t(n,u=>[c,...(u??[]).filter(d=>d.sessionId!==c.sessionId)])}else if(a==="session:deleted"){const c=l;t(n,u=>(u??[]).filter(d=>d.sessionId!==c.sessionId))}}),o=e.onConnect(()=>{i()});return i(),()=>{r=!0,s(),o()}}}}const Gc={sessionId:null,events:[],lastSeq:-1,pendingPermissions:[],status:"idle",pendingQuestions:{}};function Mm(e,t){const n=t;if(n.kind==="permission_request"&&typeof n.requestId=="string"){if(e.some(i=>i.requestId===n.requestId))return e;const r={requestId:n.requestId,tool:typeof n.tool=="string"?n.tool:"",input:n.input,...typeof n.toolUseId=="string"&&n.toolUseId?{toolUseId:n.toolUseId}:{}};return[...e,r]}if(n.kind==="tool_result"&&typeof n.toolUseId=="string"&&n.toolUseId){const r=e.findIndex(i=>i.toolUseId===n.toolUseId);if(r>=0)return e.filter((i,s)=>s!==r)}return e}function ZT(e,t,n){const r=n===void 0?e.sessionId:n;switch(t.type){case"session:change":return{...Gc,sessionId:t.sessionId};case"session:event":{if(!r||t.sessionId!==r)return e;const i=typeof t.event.seq=="number"?t.event.seq:-1,s=[...e.events,t.event],o=i>e.lastSeq?i:e.lastSeq,a=Mm(e.pendingPermissions,t.event);return{...e,events:s,lastSeq:o,pendingPermissions:a}}case"session:status":return!r||t.sessionId!==r?e:{...e,status:t.status};case"session:events":{if(!r||t.sessionId!==r)return e;const i=t.events.map(o=>o.event),s=i.reduce((o,a)=>Mm(o,a),[]);return{...e,sessionId:t.sessionId,events:i,lastSeq:t.latestSeq,pendingPermissions:s}}case"session:events:append":{if(!r||t.sessionId!==r)return e;const i=new Set;for(const c of e.events){const u=c.seq;typeof u=="number"&&i.add(u)}const s=[];for(const c of t.events)typeof c.seq=="number"&&(i.has(c.seq)||s.push(c.event));const o=t.latestSeq>e.lastSeq?t.latestSeq:e.lastSeq;if(s.length===0)return o===e.lastSeq?e:{...e,lastSeq:o};const a=[...e.events,...s].sort((c,u)=>{const d=c.seq??-1,f=u.seq??-1;return d-f}),l=s.reduce((c,u)=>Mm(c,u),e.pendingPermissions);return{...e,events:a,lastSeq:o,pendingPermissions:l}}case"permission:request":{if(!r||t.sessionId!==r||e.pendingPermissions.some(s=>s.requestId===t.requestId))return e;const i={requestId:t.requestId,tool:t.tool,input:t.input,...t.toolUseId?{toolUseId:t.toolUseId}:{}};return{...e,pendingPermissions:[...e.pendingPermissions,i]}}case"permission:clear":{if(!r||r!==t.sessionId)return e;const i=t.requestId,s=e.pendingPermissions.findIndex(c=>c.requestId===i),o=s>=0?e.pendingPermissions.filter((c,u)=>u!==s):e.pendingPermissions;if(e.events.length===0)return o===e.pendingPermissions?e:{...e,pendingPermissions:o};const a=e.events.length-1,l=e.events[a];return l.kind==="permission_request"&&l.requestId===i?{...e,pendingPermissions:o,events:e.events.slice(0,a)}:o===e.pendingPermissions?e:{...e,pendingPermissions:o}}case"session:question":return!r||t.sessionId!==r?e:{...e,pendingQuestions:{...e.pendingQuestions,[t.toolUseId]:{toolUseId:t.toolUseId,requestId:t.requestId,questions:t.questions}}};case"session:question:clear":{if(!r||t.sessionId!==r||!(t.toolUseId in e.pendingQuestions))return e;const{[t.toolUseId]:i,...s}=e.pendingQuestions;return{...e,pendingQuestions:s}}case"session:question:submitted":{if(!r||t.sessionId!==r)return e;const i=e.pendingQuestions[t.toolUseId];return i?{...e,pendingQuestions:{...e.pendingQuestions,[t.toolUseId]:{...i,submittedAnswers:t.answers}}}:e}case"session:rewound":return!r||t.sessionId!==r?e:{...e,pendingPermissions:[],status:"idle"};case"ready":{if(!r)return e;const i=t.runningSessions.find(o=>o.sessionId===r);if(i!=null&&i.freshSpawn)return{...Gc,sessionId:r};const s=(i==null?void 0:i.status)??"idle";return s===e.status?e:{...e,status:s}}case"daemon:disconnected":return{...e,pendingPermissions:[]};default:return e}}const yz="session/";function bz(e){return{sid:e.slice(yz.length)}}const wz=new Set(BT);function QT(e){return wz.has(e)}function Ow(e){return QT(e)?e:"idle"}function Sz(e,t){return{start(n){const{sid:r}=bz(n);let i=!1,s=-1;const o=f=>{t(n,p=>ZT(p??Gc,f,r))},a=async f=>{const p=f==="baseline"?-1:s;try{const m=await e.request("session:events",{sessionId:r,afterSeq:p});if(i)return;const v=m.events??[],b=m.latestSeq??-1;if(f==="baseline")o({type:"session:events",sessionId:r,events:v,latestSeq:b}),s=b;else{const x=m.bufferStartSeq??0,_=b<p||x>p+1;o({type:_?"session:events":"session:events:append",sessionId:r,events:v,latestSeq:b}),s=Math.max(s,b)}}catch{}},l=async()=>{try{const f=await e.request("info");if(i)return;o({type:"ready",runningSessions:(f.runningSessions??[]).map(p=>({sessionId:p.sessionId,freshSpawn:p.freshSpawn,status:Ow(p.status)}))})}catch{}},c=async()=>{try{await e.request("session:subscribe",{sessionId:r})}catch{}i||(await a(s<0?"baseline":"delta"),!i&&await l())},u=e.onFrame((f,p)=>{if(!i)if(f==="session:event"){const m=p;if(m.sessionId!==r)return;const v=m.event.seq;Re("session-events","push session:event",{sid:r,kind:m.event.kind,seq:v,lastSeqBefore:s}),o({type:"session:event",sessionId:m.sessionId,event:m.event}),typeof v=="number"&&v>s&&(s=v)}else if(f==="session:status"){const m=p;if(m.sessionId!==r)return;if(!QT(m.status)){Re("session-events","push session:status drop",{sid:r,status:m.status});return}Re("session-events","push session:status",{sid:r,status:m.status}),o({type:"session:status",sessionId:m.sessionId,status:m.status})}else if(f==="session:cleared"){if(p.sessionId!==r)return;Re("session-events","push session:cleared",{sid:r}),o({type:"session:change",sessionId:r}),s=-1}else if(f==="permission:request"){const m=p;if(m.sessionId!==r)return;o({type:"permission:request",sessionId:m.sessionId,requestId:m.requestId,tool:m.tool,input:m.input,...typeof m.toolUseId=="string"&&m.toolUseId?{toolUseId:m.toolUseId}:{}})}else if(f==="session:question"){const m=p;if(m.sessionId!==r)return;o({type:"session:question",sessionId:m.sessionId,toolUseId:m.toolUseId,requestId:m.requestId,questions:m.questions})}else if(f==="session:question:cleared"){const m=p;if(m.sessionId!==r)return;m.answers&&Object.keys(m.answers).length>0?o({type:"session:question:submitted",sessionId:m.sessionId,toolUseId:m.toolUseId,answers:m.answers}):o({type:"session:question:clear",sessionId:m.sessionId,toolUseId:m.toolUseId})}else if(f==="session:rewound"){const m=p;if(m.sessionId!==r)return;o({type:"session:rewound",sessionId:m.sessionId,userMessageId:m.userMessageId})}else f==="ready"&&o({type:"ready",runningSessions:(p.runningSessions??[]).map(v=>({sessionId:v.sessionId,freshSpawn:v.freshSpawn,status:Ow(v.status)}))})}),d=e.onConnect(()=>{c()});return e.isConnected&&c(),()=>{i=!0,u(),d(),e.request("session:unsubscribe",{sessionId:r}).catch(()=>{})}}}}const kz=new Set(["tunnel:ready","tunnel:exited","tunnel:unavailable"]);function Cz(e,t){return{start(n){let r=!1;const i=async()=>{try{const a=await e.request("info",void 0);if(r)return;t(n,()=>a)}catch{}},s=e.onConnect(()=>{i()}),o=e.onFrame(a=>{kz.has(a)&&i()});return i(),()=>{r=!0,s(),o()}}}}function Ez(){return{start(){return()=>{}}}}function Nz(e,t){return{start(n){let r=!1;const i=async()=>{try{const o=await e.request("persona:list",{});if(r)return;t(n,()=>o.personas??[])}catch{}},s=e.onConnect(()=>{i()});return i(),()=>{r=!0,s()}}}}function Tz(e){const t=gz(e),n=mz();let r=null;const i=(o,a)=>{r==null||r.setData(o,a)};n.register(/^capabilities\//,xz(t,i)),n.register(/^sessions$/,_z(t,i)),n.register(/^session\//,Sz(t,i)),n.register(/^personas$/,Nz(t,i)),n.register(/^persona-detail\//,Ez()),n.register(/^daemon-info$/,Cz(t,i));const s=pz({onFirstObserver:o=>{o&&n.activate(o)},onLastObserver:o=>{o&&n.deactivate(o)}});return r=s,{cache:s,channel:t}}class K_{constructor(t){this.client=t}info(){return this.client.request("info")}attachmentSignUrl(t){return this.client.request("attachment.signUrl",t)}attachmentGroupAdd(t,n,r){return this.client.request("attachment.groupAdd",{sessionId:t,relPath:n,...r?{label:r}:{}})}attachmentGroupRemove(t,n){return this.client.request("attachment.groupRemove",{sessionId:t,relPath:n})}attachmentGroupList(t){return this.client.request("attachment.groupList",{sessionId:t})}sessionCreate(t){return this.client.request("session:create",t)}projectList(){return this.client.request("project:list")}projectCreate(t){return this.client.request("project:create",{...t.path?{path:t.path}:{},...t.name?{name:t.name}:{}})}projectPatch(t){return this.client.request("project:patch",t)}projectReveal(t){return this.client.request("project:reveal",{path:t})}appBuilderListProjects(){return this.client.request("appBuilder:listProjects",{})}appBuilderGetProject(t){return this.client.request("appBuilder:getProject",{sessionId:t})}appBuilderUpdateProjectPort(t,n){return this.client.request("appBuilder:updateProjectPort",{name:t,newPort:n})}appBuilderStartDevServer(t,n){return this.client.request("appBuilder:startDevServer",{sessionId:t,...n!=null&&n.force?{force:!0}:{}})}appBuilderStopDevServer(t){return this.client.request("appBuilder:stopDevServer",{sessionId:t})}appBuilderPublish(t){return this.client.request("appBuilder:publish",{name:t})}appBuilderDismissPublishJob(t){return this.client.request("appBuilder:dismissPublishJob",{name:t})}sessionList(){return this.client.request("session:list")}sessionGet(t){return this.client.request("session:get",{sessionId:t})}sessionUpdate(t,n){return this.client.request("session:update",{sessionId:t,patch:n})}sessionDelete(t){return this.client.request("session:delete",{sessionId:t})}sessionSend(t,n){return this.client.request("session:send",{sessionId:t,text:n})}sessionStop(t){return this.client.request("session:stop",{sessionId:t})}sessionInterrupt(t){return this.client.request("session:interrupt",{sessionId:t})}sessionRewind(t){return this.client.request("session:rewind",t)}sessionRewindableMessageIds(t){return this.client.request("session:rewindable-message-ids",{sessionId:t})}sessionRewindDiff(t){return this.client.request("session:rewind-diff",t)}sessionNew(t){return this.client.request("session:new",{sessionId:t})}sessionFork(t){return this.client.request("session:fork",t)}sessionResume(t,n){return this.client.request("session:resume",{sessionId:t,toolSessionId:n})}sessionObserve(t){return this.client.request("session:observe",t)}sessionEvents(t,n){return this.client.request("session:events",{sessionId:t,afterSeq:n})}sessionSubscribe(t){return this.client.request("session:subscribe",{sessionId:t})}sessionUnsubscribe(t){return this.client.request("session:unsubscribe",{sessionId:t})}pinSession(t,n){return this.client.request("session:pin",{sessionId:t,pinned:n})}archiveSession(t,n){return this.client.request("session:archive",{sessionId:t,archived:n})}markSessionRead(t){return this.client.request("session:markRead",{sessionId:t})}reorderPins(t){return this.client.request("session:reorderPins",{orderedIds:t})}peerSessionUpsert(t){return this.client.request("peerSession:upsert",t)}peerSessionRemove(t){return this.client.request("peerSession:remove",{sessionId:t})}permissionRespond(t){return this.client.request("permission:respond",t)}answerQuestion(t){return this.client.request("session:answerQuestion",t)}cancelQuestion(t){return this.client.request("session:cancelQuestion",t)}historyProjects(){return this.client.request("history:projects")}historyList(t){return this.client.request("history:list",{projectPath:t})}historyRead(t){return this.client.request("history:read",t)}historySubagents(t){return this.client.request("history:subagents",t)}historySubagentRead(t){return this.client.request("history:subagent-read",t)}listRecentDirs(){return this.client.request("history:recentDirs",{})}getGitRoot(t){return this.client.request("git:root",{cwd:t})}getGitBranch(t){return this.client.request("git:branch",{cwd:t})}listGitBranches(t){return this.client.request("git:branches",{cwd:t})}personaCreate(t){return this.client.request("persona:create",t)}personaList(){return this.client.request("persona:list",{})}personaGet(t){return this.client.request("persona:get",{personaId:t})}personaUpdate(t,n){return this.client.request("persona:update",{personaId:t,patch:n})}personaDelete(t){return this.client.request("persona:delete",{personaId:t})}larkBotBindManual(t,n,r){return this.client.request("larkBot:bindManual",{personaId:t,appId:n,appSecret:r})}larkBotUnbind(t){return this.client.request("larkBot:unbind",{personaId:t})}larkBotStatus(t){return this.client.request("larkBot:status",{personaId:t})}toolsProbe(){return this.client.request("tools:probe",{})}sessionExternalScan(){return this.client.request("session:externalScan",{})}sessionImportExternal(t){return this.client.request("session:importExternal",t)}onboardingComplete(){return this.client.request("onboarding:complete",{})}onboardingIosInterest(){return this.client.request("onboarding:iosInterest",{})}visitorList(){return this.client.request("visitor:list",{})}workspaceList(t={}){return this.client.request("workspace:list",t)}workspaceRead(t){return this.client.request("workspace:read",t)}skillsList(t,n){return this.client.request("skills:list",{cwd:t,...n?{tool:n}:{}})}agentsList(t,n){return this.client.request("agents:list",{cwd:t,...n?{tool:n}:{}})}capabilitiesGet(t="claude"){return this.client.request("capabilities:get",{tool:t})}shiftList(){return this.client.request("shift:list")}channelList(){return this.client.request("channel:list")}channelCreate(t){return this.client.request("channel:create",t)}channelUpdate(t){return this.client.request("channel:update",t)}channelDelete(t){return this.client.request("channel:delete",t)}topicList(t){return this.client.request("topic:list",t)}topicGet(t){return this.client.request("topic:get",t)}topicCreate(t){return this.client.request("topic:create",t)}topicClose(t){return this.client.request("topic:close",t)}topicRename(t){return this.client.request("topic:rename",t)}topicDelete(t){return this.client.request("topic:delete",t)}githubStatus(){return this.client.request("github:status")}githubPrList(t){return this.client.request("github:prList",{role:t})}githubPrDetail(t){return this.client.request("github:prDetail",{...t})}githubPrMerge(t){return this.client.request("github:prMerge",{...t})}githubPrComment(t){return this.client.request("github:prComment",{...t})}githubPrSetReady(t){return this.client.request("github:prSetReady",{...t})}githubCollaborators(t){return this.client.request("github:collaborators",{...t})}githubPrRequestReviewers(t){return this.client.request("github:prRequestReviewers",{...t})}}function Iz(e){const[t,n]=g.useState(e.isOpen?{kind:"connected",url:""}:{kind:"connecting"});return g.useEffect(()=>{const r=e.on("ready",l=>{const c=l;n(u=>({kind:"connected",url:u.kind==="connected"?u.url:"",mode:u.kind==="connected"?u.mode:void 0,daemonVersion:c.version,protocolVersion:c.protocolVersion,daemonSource:c.daemonSource,globalCliVersion:c.globalCliVersion,onboardingCompletedAt:c.onboardingCompletedAt}))}),i=e.on("daemon:connected",l=>{const c=l;n(u=>({kind:"connected",url:c.url,mode:c.mode,daemonVersion:u.kind==="connected"?u.daemonVersion:void 0,protocolVersion:u.kind==="connected"?u.protocolVersion:void 0,daemonSource:u.kind==="connected"?u.daemonSource:void 0,globalCliVersion:u.kind==="connected"?u.globalCliVersion:void 0,onboardingCompletedAt:u.kind==="connected"?u.onboardingCompletedAt:void 0}))}),s=e.on("daemon:disconnected",l=>{const c=(l==null?void 0:l.reason)??"";/auth failed|auth timeout|auth required|auth handshake timeout/i.test(c)?n({kind:"auth-failed",reason:c}):n({kind:"disconnected",reason:c})}),o=e.on("daemon:reconnecting",l=>{const c=l;n({kind:"reconnecting",attempt:c.attempt,nextDelayMs:c.nextDelayMs,scheduledAt:c.scheduledAt??Date.now()})}),a=e.on("daemon:version-mismatch",l=>{const c=l;n({kind:"version-mismatch",daemonProtocol:c.daemonProtocol,supportedProtocol:c.supportedProtocol})});return()=>{r(),i(),s(),o(),a()}},[e]),t}function Pz(e){const t=Ao(),n=li(e.kind==="connected"?"sessions":""),r=g.useCallback(async()=>{t.setData("sessions",i=>i??[])},[t]);return{sessions:n??[],loading:!1,loaded:n!==void 0,error:null,refresh:r}}function dl(){const e=fi();return g.useMemo(()=>new K_(e),[e])}function JT(e){return{personaId:e.personaId,label:e.label,model:e.model,effort:e.effort,tool:e.tool,public:e.public,createdAt:e.createdAt,updatedAt:e.updatedAt}}function eI(){const e=Ao(),t=dl(),n=li("personas")??[],r=g.useMemo(()=>n.map(s=>JT(s)),[n]),i=g.useCallback(async()=>{const s=await t.personaList();e.setData("personas",()=>s.personas??[])},[t,e]);return{personas:r,raw:n,loaded:li("personas")!==void 0,refresh:i}}function tI(e){const{raw:t}=eI(),n=Ao(),r=dl(),i=e?t.find(a=>a.personaId===e)??null:null,s=i?JT(i):null,o=g.useCallback(async()=>{if(!e)return;const a=await r.personaList();n.setData("personas",()=>a.personas??[])},[e,r,n]);return{persona:s,raw:i,loaded:!!s,refresh:o}}function Rz(e){const t=dl(),n=Ao(),r=e?`persona-detail/${e}`:"",i=li(r),s=g.useCallback(async()=>{const o={personality:"",personalityLocal:"",personalityManaged:!1,skills:[],plugins:[],sandboxSettings:null};if(!e)return o;let a=null;try{a=await t.personaGet(e)}catch(c){Re("personas","personaGet failed → empty detail",{personaId:e,err:c}),a=null}const l=a?{personality:a.personality??"",personalityLocal:a.personalityLocal??"",personalityManaged:a.personalityManaged??!1,skills:a.skills??[],plugins:a.plugins??[],sandboxSettings:a.sandboxSettings??null}:o;return n.setData(r,()=>l),l},[t,n,e,r]);return g.useEffect(()=>{e&&s()},[e,s]),{personality:(i==null?void 0:i.personality)??"",personalityLocal:(i==null?void 0:i.personalityLocal)??"",personalityManaged:(i==null?void 0:i.personalityManaged)??!1,skills:(i==null?void 0:i.skills)??[],plugins:(i==null?void 0:i.plugins)??[],sandboxSettings:(i==null?void 0:i.sandboxSettings)??null,loaded:i!==void 0,refresh:s}}function nI(){const e=Ao(),t=dl();return g.useCallback(async()=>{const n=await t.personaList();e.setData("personas",()=>n.personas??[])},[e,t])}function Mz(){const e=dl(),t=nI();return g.useCallback(async(n,r)=>{const i=await e.personaUpdate(n,r);return await t(),i},[e,t])}function Az(){const e=dl(),t=nI();return g.useCallback(async n=>{await e.personaDelete(n),await t()},[e,t])}const Bw="clawd:sidebar:tree-collapsed";function jz(e){return e&&typeof e=="object"&&"value"in e?e.value:e}function Lz(e){const t=jz(e);if(!Array.isArray(t))return new Set;const n=new Set;for(const r of t)typeof r=="string"&&n.add(r);return n}function Dz(){const e=T_(),[t,n]=g.useState(()=>new Set),r=g.useRef(t);r.current=t,g.useEffect(()=>{let l=!1;return(async()=>{try{const c=await e.kv.get(Bw);if(l)return;n(Lz(c))}catch{}})(),()=>{l=!0}},[e]);const i=g.useCallback(l=>{e.kv.set(Bw,[...l]).catch(()=>{})},[e]),s=g.useCallback(l=>r.current.has(l),[]),o=g.useCallback(l=>{n(c=>{const u=new Set(c);return u.has(l)?u.delete(l):u.add(l),i(u),u})},[i]),a=g.useCallback(l=>{n(c=>{let u=!1;const d=new Set;for(const f of c)l.has(f)?d.add(f):u=!0;return u?(i(d),d):c})},[i]);return{isCollapsed:s,toggle:o,prune:a}}const G_=g.createContext(null);function Oz(){const e=g.useContext(G_);if(!e)throw new Error("SessionTreeCollapsedContext.Provider missing — wrap SessionTreeNode tree with <SessionTreeCollapsedContext.Provider value={useSessionTreeCollapsed()}>");return e}/**
|
|
97
97
|
* @license lucide-react v0.577.0 - ISC
|
|
98
98
|
*
|
|
99
99
|
* This source code is licensed under the ISC license.
|
package/dist/share-ui/guest.html
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
6
|
<title>Clawd 分享</title>
|
|
7
|
-
<script type="module" crossorigin src="/share-ui/assets/guest-
|
|
7
|
+
<script type="module" crossorigin src="/share-ui/assets/guest-BXBu5IX3.js"></script>
|
|
8
8
|
<link rel="stylesheet" crossorigin href="/share-ui/assets/guest-DQRx2iVe.css">
|
|
9
9
|
</head>
|
|
10
10
|
<body style="margin: 0">
|