@shumai-one/shumai 0.1.7 → 0.1.8
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/bin/chunk-08hwazz9.js +3 -0
- package/bin/chunk-0b7pt74x.js +2 -0
- package/bin/chunk-0hp6t0q3.js +3 -0
- package/bin/chunk-0kkyb1qj.js +2 -0
- package/bin/chunk-0zpc9pkt.js +4 -0
- package/bin/chunk-1dvam047.js +3 -0
- package/bin/chunk-1saz0r74.js +2 -0
- package/bin/chunk-1w2ewnxj.js +2 -0
- package/bin/chunk-23ps0bkk.js +24 -0
- package/bin/chunk-24bbrqy7.js +2 -0
- package/bin/chunk-2hbxxtna.js +3 -0
- package/bin/chunk-2nvc9af3.js +2 -0
- package/bin/chunk-2r9dzbmv.js +2 -0
- package/bin/chunk-30jjvb4k.js +4 -0
- package/bin/chunk-32ptm61p.js +3 -0
- package/bin/chunk-3cre4tc5.js +11 -0
- package/bin/chunk-3f8h4ny6.js +1 -0
- package/bin/chunk-3xqy7myz.js +6 -0
- package/bin/chunk-4fsbzhr2.js +2 -0
- package/bin/chunk-4g68cqhk.js +2 -0
- package/bin/chunk-4jnv6j35.js +2 -0
- package/bin/chunk-5ev6gvcw.js +4 -0
- package/bin/chunk-5fcq8frp.js +2 -0
- package/bin/chunk-5mfrg15w.js +2 -0
- package/bin/chunk-5mvvjqcp.js +3 -0
- package/bin/chunk-5n525czh.js +1 -0
- package/bin/chunk-5qtqgx87.js +2 -0
- package/bin/chunk-5wcyvbqg.js +7 -0
- package/bin/chunk-5wppe329.js +2 -0
- package/bin/chunk-6ftb22yh.js +3 -0
- package/bin/chunk-7a2gg16x.js +2 -0
- package/bin/chunk-7qm716wz.js +2 -0
- package/bin/chunk-7yh2nbmq.js +3 -0
- package/bin/chunk-7ypz776w.js +2 -0
- package/bin/chunk-8e4d80kp.js +3 -0
- package/bin/chunk-8fe6c473.js +67 -0
- package/bin/chunk-8g69rftv.js +14 -0
- package/bin/chunk-8jmnfqt9.js +3 -0
- package/bin/chunk-8k17tr3j.js +2 -0
- package/bin/chunk-8re7vwwx.js +1 -0
- package/bin/chunk-8swcdgg3.js +2 -0
- package/bin/chunk-9x12d447.js +3 -0
- package/bin/chunk-9z155z22.js +2 -0
- package/bin/chunk-a70x1w8e.js +12 -0
- package/bin/chunk-b6ay38ns.js +3 -0
- package/bin/chunk-c8t4yzjs.js +5 -0
- package/bin/chunk-cmv4axyg.js +2 -0
- package/bin/chunk-cr4jkqng.js +1 -0
- package/bin/chunk-d3bx7aew.js +1 -0
- package/bin/chunk-d9haskf5.js +3 -0
- package/bin/chunk-dvgxj01x.js +3 -0
- package/bin/chunk-eagsj1vb.js +2 -0
- package/bin/chunk-ehgc7x4w.js +3 -0
- package/bin/chunk-eqjxqzxw.js +2 -0
- package/bin/chunk-f35s32xy.js +8 -0
- package/bin/chunk-f3vj8mrh.js +44 -0
- package/bin/chunk-f8xx6rcr.js +2 -0
- package/bin/chunk-fseg9mh8.js +2 -0
- package/bin/chunk-g460bbnk.js +71 -0
- package/bin/chunk-gda70q5n.js +3 -0
- package/bin/chunk-h2v02d67.js +1 -0
- package/bin/chunk-h6qkpxtj.js +3 -0
- package/bin/chunk-h90tm6j4.js +2 -0
- package/bin/chunk-jkhyp3kp.js +1 -0
- package/bin/chunk-k4pa97ny.js +3 -0
- package/bin/chunk-k9m47xba.js +4 -0
- package/bin/chunk-kb7egkm8.js +2 -0
- package/bin/chunk-kc7vcfch.js +14 -0
- package/bin/chunk-kv62xcad.js +2 -0
- package/bin/chunk-map94w8n.js +2 -0
- package/bin/chunk-mfmry62q.js +2 -0
- package/bin/chunk-nz95b2c5.js +3 -0
- package/bin/chunk-p2xqn9ks.js +1 -0
- package/bin/chunk-p8hzvaqv.js +1 -0
- package/bin/chunk-q1zr85gb.js +4 -0
- package/bin/chunk-qb5qfw71.js +4 -0
- package/bin/chunk-qbtsq2mp.js +3 -0
- package/bin/chunk-qggykya7.js +3 -0
- package/bin/chunk-qk2ff4nz.js +6 -0
- package/bin/chunk-qsbmjs1a.js +2 -0
- package/bin/chunk-qvkqjgtt.js +2 -0
- package/bin/chunk-r673a3wt.js +62 -0
- package/bin/chunk-redk7r63.js +41 -0
- package/bin/chunk-rfx3y5re.js +1 -0
- package/bin/chunk-rp5kkkb2.js +2 -0
- package/bin/chunk-rz9pz59y.js +2 -0
- package/bin/chunk-sqpaynb6.js +2 -0
- package/bin/chunk-t6ettw1q.js +4 -0
- package/bin/chunk-tjzrhp6f.js +2 -0
- package/bin/chunk-tqtms9ft.js +2 -0
- package/bin/chunk-v159ppmt.js +2 -0
- package/bin/chunk-vfn5aygx.js +3 -0
- package/bin/chunk-vqfm1spm.js +13 -0
- package/bin/chunk-vw02zbwa.js +1 -0
- package/bin/chunk-vwgb2q3b.js +1 -0
- package/bin/chunk-w3t6tpgg.js +2 -0
- package/bin/chunk-wdg3m7ck.js +266 -0
- package/bin/chunk-wndb0rc7.js +11 -0
- package/bin/chunk-wp51h5mn.js +8 -0
- package/bin/chunk-ww62rpxv.js +65 -0
- package/bin/chunk-wyp6md07.js +2 -0
- package/bin/chunk-x1178p5d.js +2 -0
- package/bin/chunk-x9q1k4kw.js +2 -0
- package/bin/chunk-xg9xscqz.js +1 -0
- package/bin/chunk-xj8ss02x.js +2 -0
- package/bin/chunk-xs7cpj25.js +2 -0
- package/bin/chunk-xy33vxtv.js +6 -0
- package/bin/chunk-yadp1e44.js +7 -0
- package/bin/chunk-ypada0jh.js +2 -0
- package/bin/chunk-yz7fdcqe.js +2 -0
- package/bin/chunk-zqbsbxz7.js +2 -0
- package/bin/shumai-app.html +16 -16
- package/bin/shumai-app.js +355 -595
- package/package.json +7 -7
- package/bin/chunk-c7jvrp38.js +0 -473
- /package/bin/{chunk-3jda3496.css → chunk-jk0x7225.css} +0 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{O as S0,P as F0,Q as g0,R as m0,S as w0}from"./chunk-0kkyb1qj.js";import{T as w6,V as a6,W as s6,X as i6,Y as f0}from"./chunk-5mfrg15w.js";import{$ as UN,_ as WN,aa as PN,ba as d4,ca as E4,da as T4}from"./chunk-f8xx6rcr.js";import{Va as L0}from"./chunk-cmv4axyg.js";import{$a as J4,Xa as i0,Ya as r0,Za as e0,_a as N4,ab as B4,bb as X4,cb as z4}from"./chunk-rz9pz59y.js";import{db as U0}from"./chunk-1saz0r74.js";import{Ae as l,we as o,xe as z0,ye as Y0,ze as Q0}from"./chunk-x9q1k4kw.js";import{Hf as VN}from"./chunk-yz7fdcqe.js";import{If as v4}from"./chunk-xj8ss02x.js";import{Mf as a}from"./chunk-ww62rpxv.js";import{Nf as T0}from"./chunk-2nvc9af3.js";import{$f as J,$g as j4,$h as G6,Ag as F,Bh as t6,Cg as S,Ch as AN,Hg as T6,Jg as U4,Lg as x,Lh as l6,Li as j,Ni as m,Oh as HN,Oi as DN,Ph as D4,Pi as EN,Qi as yN,Ri as P4,Sg as YN,Sh as KN,Ti as w4,Ui as K4,Vi as G4,Xg as QN,Xh as K0,Yh as b0,Zf as N0,Zg as p4,_f as X0,ag as Z,bg as s,bj as bN,ci as e6,cj as ON,dg as u,dh as u4,di as CN,dj as q,eh as n6,ej as $,fg as n,fj as _0,gh as o6,gj as x0,hj as c0,ig as m6,ij as v0,ji as P0,jj as j0,kj as l0,mh as BN,mi as XN,nh as ZN,oh as s0,oi as hN,ph as K6,qg as RN,si as n4,ti as $4,uh as LN,ui as GN,vi as TN,wi as L6,xh as f4}from"./chunk-r673a3wt.js";import{Tj as e}from"./chunk-nz95b2c5.js";var a0=e(N0(),1);var A6=e(N0(),1);var MN=L6("group/field flex w-full gap-3 data-[invalid=true]:text-destructive",{variants:{orientation:{vertical:["flex-col [&>*]:w-full [&>.sr-only]:w-auto"],horizontal:["flex-row items-center","[&>[data-slot=field-label]]:flex-auto","has-[>[data-slot=field-content]]:items-start has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px"],responsive:["flex-col @md/field-group:flex-row @md/field-group:items-center [&>*]:w-full @md/field-group:[&>*]:w-auto [&>.sr-only]:w-auto","@md/field-group:[&>[data-slot=field-label]]:flex-auto","@md/field-group:has-[>[data-slot=field-content]]:items-start @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px"]}},defaultVariants:{orientation:"vertical"}});function p({className:N,orientation:B="vertical",...z}){return J("div",{role:"group","data-slot":"field","data-orientation":B,className:j(MN({orientation:B}),N),...z})}function d({className:N,...B}){return J(T0,{"data-slot":"field-label",className:j("group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50","has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col has-[>[data-slot=field]]:rounded-md has-[>[data-slot=field]]:border [&>*]:data-[slot=field]:p-4","has-data-[state=checked]:border-primary has-data-[state=checked]:bg-primary/5 dark:has-data-[state=checked]:bg-primary/10",N),...B})}function l4({className:N,...B}){return J("p",{"data-slot":"field-description",className:j("text-sm leading-normal font-normal text-muted-foreground group-has-[[data-orientation=horizontal]]/field:text-balance","last:mt-0 nth-last-2:-mt-1 [[data-variant=legend]+&]:-mt-1.5","[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",N),...B})}function B0({className:N,children:B,errors:z,...Y}){let X=A6.useMemo(()=>{if(B)return B;if(!z?.length)return null;let Q=[...new Map(z.map((H)=>[H?.message,H])).values()];if(Q?.length==1)return Q[0]?.message;return J("ul",{className:"ml-4 flex list-disc flex-col gap-1",children:Q.map((H,P)=>H?.message&&J("li",{children:H.message},P))})},[B,z]);if(!X)return null;return J("div",{role:"alert","data-slot":"field-error",className:j("text-sm font-normal text-destructive",N),...Y,children:X})}var O=function(N){return N[N.None=0]="None",N[N.Mutable=1]="Mutable",N[N.Watching=2]="Watching",N[N.RecursedCheck=4]="RecursedCheck",N[N.Recursed=8]="Recursed",N[N.Dirty=16]="Dirty",N[N.Pending=32]="Pending",N}({});function C6({update:N,notify:B,unwatched:z}){return{link:Y,unlink:X,propagate:Q,checkDirty:H,shallowPropagate:P};function Y(G,T,K){let U=T.depsTail;if(U!==void 0&&U.dep===G)return;let W=U!==void 0?U.nextDep:T.deps;if(W!==void 0&&W.dep===G){W.version=K,T.depsTail=W;return}let w=G.subsTail;if(w!==void 0&&w.version===K&&w.sub===T)return;let C=T.depsTail=G.subsTail={version:K,dep:G,sub:T,prevDep:U,nextDep:W,prevSub:w,nextSub:void 0};if(W!==void 0)W.prevDep=C;if(U!==void 0)U.nextDep=C;else T.deps=C;if(w!==void 0)w.nextSub=C;else G.subs=C}function X(G,T=G.sub){let{dep:K,prevDep:U,nextDep:W,nextSub:w,prevSub:C}=G;if(W!==void 0)W.prevDep=U;else T.depsTail=U;if(U!==void 0)U.nextDep=W;else T.deps=W;if(w!==void 0)w.prevSub=C;else K.subsTail=C;if(C!==void 0)C.nextSub=w;else if((K.subs=w)===void 0)z(K);return W}function Q(G){let T=G.nextSub,K;N:do{let U=G.sub,W=U.flags;if(!(W&(O.RecursedCheck|O.Recursed|O.Dirty|O.Pending)))U.flags=W|O.Pending;else if(!(W&(O.RecursedCheck|O.Recursed)))W=O.None;else if(!(W&O.RecursedCheck))U.flags=W&~O.Recursed|O.Pending;else if(!(W&(O.Dirty|O.Pending))&&k(G,U))U.flags=W|(O.Recursed|O.Pending),W&=O.Mutable;else W=O.None;if(W&O.Watching)B(U);if(W&O.Mutable){let w=U.subs;if(w!==void 0){let C=(G=w).nextSub;if(C!==void 0)K={value:T,prev:K},T=C;continue}}if((G=T)!==void 0){T=G.nextSub;continue}while(K!==void 0)if(G=K.value,K=K.prev,G!==void 0){T=G.nextSub;continue N}break}while(!0)}function H(G,T){let K,U=0,W=!1;N:do{let w=G.dep,C=w.flags;if(T.flags&O.Dirty)W=!0;else if((C&(O.Mutable|O.Dirty))===(O.Mutable|O.Dirty)){if(N(w)){let h=w.subs;if(h.nextSub!==void 0)P(h);W=!0}}else if((C&(O.Mutable|O.Pending))===(O.Mutable|O.Pending)){if(G.nextSub!==void 0||G.prevSub!==void 0)K={value:G,prev:K};G=w.deps,T=w,++U;continue}if(!W){let h=G.nextDep;if(h!==void 0){G=h;continue}}while(U--){let h=T.subs,A=h.nextSub!==void 0;if(A)G=K.value,K=K.prev;else G=h;if(W){if(N(T)){if(A)P(h);T=G.sub;continue}W=!1}else T.flags&=~O.Pending;T=G.sub;let E=G.nextDep;if(E!==void 0){G=E;continue N}}return W}while(!0)}function P(G){do{let T=G.sub,K=T.flags;if((K&(O.Pending|O.Dirty))===O.Pending){if(T.flags=K|O.Dirty,(K&(O.Watching|O.RecursedCheck))===O.Watching)B(T)}}while((G=G.nextSub)!==void 0)}function k(G,T){let K=T.depsTail;while(K!==void 0){if(K===G)return!0;K=K.prevDep}return!1}}function k4(N,B,z){let Y=typeof N==="object",X=Y?N:void 0;return{next:(Y?N.next:N)?.bind(X),error:(Y?N.error:B)?.bind(X),complete:(Y?N.complete:z)?.bind(X)}}var a4=[],b4=0,{link:h6,unlink:IN,propagate:SN,checkDirty:E6,shallowPropagate:D6}=C6({update(N){return N._update()},notify(N){a4[s4++]=N,N.flags&=~O.Watching},unwatched(N){if(N.depsTail!==void 0)N.depsTail=void 0,N.flags=O.Mutable|O.Dirty,O4(N)}}),y4=0,s4=0,h0,i4=0;function f(N){try{++i4,N()}finally{if(!--i4)r4()}}function O4(N){let B=N.depsTail,z=B!==void 0?B.nextDep:N.deps;while(z!==void 0)z=IN(z,N)}function r4(){if(i4>0)return;while(y4<s4){let N=a4[y4];a4[y4++]=void 0,N.notify()}y4=0,s4=0}function V4(N,B){let z=typeof N==="function",Y=N,X={_snapshot:z?void 0:N,subs:void 0,subsTail:void 0,deps:void 0,depsTail:void 0,flags:z?O.None:O.Mutable,get(){if(h0!==void 0)h6(X,h0,b4);return X._snapshot},subscribe(Q){let H=k4(Q),P={current:!1},k=FN(()=>{if(X.get(),!P.current)P.current=!0;else H.next?.(X._snapshot)});return{unsubscribe:()=>{k.stop()}}},_update(Q){let H=h0,P=B?.compare??Object.is;if(z)h0=X,++b4,X.depsTail=void 0;else if(Q===void 0)return!1;if(z)X.flags=O.Mutable|O.RecursedCheck;try{let k=X._snapshot,G=typeof Q==="function"?Q(k):Q===void 0&&z?Y(k):Q;if(k===void 0||!P(k,G))return X._snapshot=G,!0;return!1}finally{if(h0=H,z)X.flags&=~O.RecursedCheck;O4(X)}}};if(z)X.flags=O.Mutable|O.Dirty,X.get=function(){let Q=X.flags;if(Q&O.Dirty||Q&O.Pending&&E6(X.deps,X)){if(X._update()){let H=X.subs;if(H!==void 0)D6(H)}}else if(Q&O.Pending)X.flags=Q&~O.Pending;if(h0!==void 0)h6(X,h0,b4);return X._snapshot};else X.set=function(Q){if(X._update(Q)){let H=X.subs;if(H!==void 0)SN(H),D6(H),r4()}};return X}function FN(N){let B=()=>{let Y=h0;h0=z,++b4,z.depsTail=void 0,z.flags=O.Watching|O.RecursedCheck;try{return N()}finally{h0=Y,z.flags&=~O.RecursedCheck,O4(z)}},z={deps:void 0,depsTail:void 0,subs:void 0,subsTail:void 0,flags:O.Watching|O.RecursedCheck,notify(){let Y=this.flags;if(Y&O.Dirty||Y&O.Pending&&E6(this.deps,this))B();else this.flags=O.Watching},stop(){this.flags=O.None,this.depsTail=void 0,O4(this)}};return B(),z}var e4=class{constructor(N,B){if(this.atom=V4(N),this.get=this.get.bind(this),this.setState=this.setState.bind(this),this.subscribe=this.subscribe.bind(this),B)this.actions=B(this)}setState(N){this.atom.set(N)}get state(){return this.atom.get()}get(){return this.state}subscribe(N){return this.atom.subscribe(k4(N))}},y6=class{constructor(N){this.atom=V4(N)}get state(){return this.atom.get()}get(){return this.state}subscribe(N){return this.atom.subscribe(k4(N))}};function D0(N,B){if(typeof N==="function")return new y6(N);if(B)return new e4(N,B);return new e4(N)}var b6=class{constructor(N,B){if(this.fn=N,this.options=B,this.lastExecutionTime=0,this.isPending=!1,this.maybeExecute=(...z)=>{let Y=Date.now()-this.lastExecutionTime;if(this.options.leading&&Y>=this.options.wait)this.execute(...z);else if(this.lastArgs=z,!this.timeoutId&&this.options.trailing){let X=this.options.wait-Y;this.isPending=!0,this.timeoutId=setTimeout(()=>{if(this.lastArgs!==void 0)this.execute(...this.lastArgs)},X)}},this.execute=(...z)=>{this.fn(...z),this.options.onExecute?.(z,this),this.lastExecutionTime=Date.now(),this.clearTimeout(),this.lastArgs=void 0,this.isPending=!1},this.flush=()=>{if(this.isPending&&this.lastArgs)this.execute(...this.lastArgs)},this.cancel=()=>{this.clearTimeout(),this.lastArgs=void 0,this.isPending=!1},this.clearTimeout=()=>{if(this.timeoutId)clearTimeout(this.timeoutId),this.timeoutId=void 0},this.options.leading===void 0&&this.options.trailing===void 0)this.options.leading=!0,this.options.trailing=!0}};function N6(N,B){return new b6(N,B).maybeExecute}class M4{#Y=!0;#J;#N;#U;#B;#H;#X;#q;#P=0;#K=5;#Q=!1;#Z=!1;#z=null;#w=()=>{this.debugLog("Connected to event bus"),this.#H=!0,this.#Q=!1,this.debugLog("Emitting queued events",this.#B),this.#B.forEach((N)=>this.emitEventToBus(N)),this.#B=[],this.stopConnectLoop(),this.#N().removeEventListener("tanstack-connect-success",this.#w)};#W=()=>{if(this.#P<this.#K){this.#P++,this.dispatchCustomEvent("tanstack-connect",{});return}this.#N().removeEventListener("tanstack-connect",this.#W),this.#Z=!0,this.debugLog("Max retries reached, giving up on connection"),this.stopConnectLoop()};#G=()=>{if(this.#Q)return;this.#Q=!0,this.#N().addEventListener("tanstack-connect-success",this.#w),this.#W()};constructor({pluginId:N,debug:B=!1,enabled:z=!0,reconnectEveryMs:Y=300}){this.#J=N,this.#Y=z,this.#N=this.getGlobalTarget,this.#U=B,this.debugLog(" Initializing event subscription for plugin",this.#J),this.#B=[],this.#H=!1,this.#Z=!1,this.#X=null,this.#q=Y}startConnectLoop(){if(this.#X!==null||this.#H)return;this.debugLog(`Starting connect loop (every ${this.#q}ms)`),this.#X=setInterval(this.#W,this.#q)}stopConnectLoop(){if(this.#Q=!1,this.#X===null)return;clearInterval(this.#X),this.#X=null,this.#B=[],this.debugLog("Stopped connect loop")}debugLog(...N){if(this.#U)console.log(`\uD83C\uDF34 [tanstack-devtools:${this.#J}-plugin]`,...N)}getGlobalTarget(){if(typeof globalThis<"u"&&globalThis.__TANSTACK_EVENT_TARGET__)return this.debugLog("Using global event target"),globalThis.__TANSTACK_EVENT_TARGET__;if(typeof window<"u"&&typeof window.addEventListener<"u")return this.debugLog("Using window as event target"),window;let N=typeof EventTarget<"u"?new EventTarget:void 0;if(typeof N>"u"||typeof N.addEventListener>"u")return this.debugLog("No event mechanism available, running in non-web environment"),{addEventListener:()=>{},removeEventListener:()=>{},dispatchEvent:()=>!1};return this.debugLog("Using new EventTarget as fallback"),N}getPluginId(){return this.#J}dispatchCustomEventShim(N,B){try{let z=new Event(N,{detail:B});this.#N().dispatchEvent(z)}catch(z){this.debugLog("Failed to dispatch shim event")}}dispatchCustomEvent(N,B){try{this.#N().dispatchEvent(new CustomEvent(N,{detail:B}))}catch(z){this.dispatchCustomEventShim(N,B)}}emitEventToBus(N){this.debugLog("Emitting event to client bus",N),this.dispatchCustomEvent("tanstack-dispatch-event",N)}createEventPayload(N,B){return{type:`${this.#J}:${N}`,payload:B,pluginId:this.#J}}emit(N,B){if(!this.#Y){this.debugLog("Event bus client is disabled, not emitting event",N,B);return}if(this.#z)this.debugLog("Emitting event to internal event target",N,B),this.#z.dispatchEvent(new CustomEvent(`${this.#J}:${N}`,{detail:this.createEventPayload(N,B)}));if(this.#Z){this.debugLog("Previously failed to connect, not emitting to bus");return}if(!this.#H){if(this.debugLog("Bus not available, will be pushed as soon as connected"),this.#B.push(this.createEventPayload(N,B)),typeof CustomEvent<"u"&&!this.#Q)this.#G(),this.startConnectLoop();return}return this.emitEventToBus(this.createEventPayload(N,B))}on(N,B,z){let Y=z?.withEventTarget??!1,X=`${this.#J}:${N}`;if(Y){if(!this.#z)this.#z=new EventTarget;this.#z.addEventListener(X,(H)=>{B(H.detail)})}if(!this.#Y)return this.debugLog("Event bus client is disabled, not registering event",X),()=>{};let Q=(H)=>{this.debugLog("Received event from bus",H.detail),B(H.detail)};return this.#N().addEventListener(X,Q),this.debugLog("Registered event to bus",X),()=>{if(Y)this.#z?.removeEventListener(X,Q);this.#N().removeEventListener(X,Q)}}onAll(N){if(!this.#Y)return this.debugLog("Event bus client is disabled, not registering event"),()=>{};let B=(z)=>{let Y=z.detail;N(Y)};return this.#N().addEventListener("tanstack-devtools-global",B),()=>this.#N().removeEventListener("tanstack-devtools-global",B)}onAllPluginEvents(N){if(!this.#Y)return this.debugLog("Event bus client is disabled, not registering event"),()=>{};let B=(z)=>{let Y=z.detail;if(this.#J&&Y.pluginId!==this.#J)return;N(Y)};return this.#N().addEventListener("tanstack-devtools-global",B),()=>this.#N().removeEventListener("tanstack-devtools-global",B)}}class O6 extends M4{constructor(){super({pluginId:"form-devtools",reconnectEveryMs:1000})}}var H0=new O6;function E0(N,B){return typeof N==="function"?N(B):N}function Y4(N,B){return F4(B).reduce((Y,X)=>{if(Y===null)return null;if(typeof Y<"u")return Y[X];return},N)}function p0(N,B,z){let Y=F4(B);function X(Q){if(!Y.length)return E0(z,Q);let H=Y.shift();if(typeof H==="string"||typeof H==="number"&&!Array.isArray(Q)){if(typeof Q==="object"){if(Q===null)Q={};return{...Q,[H]:X(Q[H])}}return{[H]:X()}}if(Array.isArray(Q)&&typeof H==="number"){let P=Q.slice(0,H);return[...P.length?P:Array(H),X(Q[H]),...Q.slice(H+1)]}return[...Array(H),X()]}return X(N)}function X6(N,B){let z=F4(B);function Y(X){if(!X)return;if(z.length===1){let H=z[0];if(Array.isArray(X)&&typeof H==="number")return X.filter((G,T)=>T!==H);let{[H]:P,...k}=X;return k}let Q=z.shift();if(typeof Q==="string"||typeof Q==="number"&&!Array.isArray(X)){if(typeof X==="object")return{...X,[Q]:Y(X[Q])}}if(typeof Q==="number"){if(Array.isArray(X)){if(Q>=X.length)return X;let H=X.slice(0,Q);return[...H.length?H:Array(Q),Y(X[Q]),...X.slice(Q+1)]}}throw Error("It seems we have created an infinite loop in deleteBy. ")}return Y(N)}var V6=46,J6=91,B6=93,M6=48,gN=57;function F4(N){if(Array.isArray(N))return[...N];if(typeof N!=="string")throw Error("Path must be a string.");let B=N.length,z=[],Y=B>0&&N.charCodeAt(0)===J6?1:0,X=!0,Q=-1;for(let H=Y;H<=B;H++){let P=H<B?N.charCodeAt(H):-1;if(H===B||P===V6||P===J6||P===B6){let k=H-Y;if(k>0){let G=X&&(k===1||N.charCodeAt(Y)!==M6),T=N.slice(Y,H);if(G){let K=parseInt(T,10);if(k<=15||String(K)===T)z.push(K);else z.push(T)}else z.push(T)}else if(Q!==B6&&!(Q===-1&&P===B6)&&!(Q===P&&(P===V6||P===J6)))z.push("");Y=H+1,X=!0}else if(P<M6||P>gN)X=!1;Q=P}if(!z.length)z.push("");return z}function z6(N){return!(Array.isArray(N)&&N.length===0)}function V0(N,B){let z=(Y)=>{return Y.validators.filter(Boolean).map((X)=>{return{cause:X.cause,validate:X.fn}})};return B.validationLogic({form:B.form,group:B.group,validators:B.validators,event:{type:N,fieldName:B.fieldName,async:!1},runValidation:z})}function M0(N,B){let{asyncDebounceMs:z}=B,{onBlurAsyncDebounceMs:Y,onChangeAsyncDebounceMs:X,onDynamicAsyncDebounceMs:Q}=B.validators||{},H=z??0,P=(k)=>{return k.validators.filter(Boolean).map((G)=>{let T=G?.cause||N,K=H;switch(T){case"change":K=X??H;break;case"blur":K=Y??H;break;case"dynamic":K=Q??H;break;case"submit":K=0;break}if(N==="submit")K=0;return{cause:T,validate:G.fn,debounceMs:K}})};return B.validationLogic({form:B.form,group:B.group,validators:B.validators,event:{type:N,fieldName:B.fieldName,async:!0},runValidation:P})}var Q4=(N)=>{return!!N&&typeof N==="object"&&"fields"in N};function Z0(N,B){if(Object.is(N,B))return!0;if(typeof N!=="object"||N===null||typeof B!=="object"||B===null)return!1;if(N instanceof Date&&B instanceof Date)return N.getTime()===B.getTime();if(N instanceof Map&&B instanceof Map){if(N.size!==B.size)return!1;for(let[X,Q]of N)if(!B.has(X)||!Object.is(Q,B.get(X)))return!1;return!0}if(N instanceof Set&&B instanceof Set){if(N.size!==B.size)return!1;for(let X of N)if(!B.has(X))return!1;return!0}let z=Object.keys(N),Y=Object.keys(B);if(z.length!==Y.length)return!1;if(z.length===0&&!Array.isArray(N)&&!Array.isArray(B)&&(Object.getPrototypeOf(N)!==Object.prototype||Object.getPrototypeOf(B)!==Object.prototype))return!1;for(let X of z)if(!Y.includes(X)||!Z0(N[X],B[X]))return!1;return!0}var H4=({newFormValidatorError:N,isPreviousErrorFromFormValidator:B,previousErrorValue:z})=>{if(N)return{newErrorValue:N,newSource:"form"};if(B)return{newErrorValue:void 0,newSource:void 0};if(z)return{newErrorValue:z,newSource:"field"};return{newErrorValue:void 0,newSource:void 0}},d0=({formLevelError:N,fieldLevelError:B})=>{if(B)return{newErrorValue:B,newSource:"field"};if(N)return{newErrorValue:N,newSource:"form"};return{newErrorValue:void 0,newSource:void 0}};function t(N,B){if(N===void 0||N===null)return B;return{...N,...B}}var u0=256,S4=[],I4;while(u0--)S4[u0]=(u0+256).toString(16).substring(1);function R4(){let N=0,B,z="";if(!I4||u0+16>256){I4=Array(256),N=256;while(N--)I4[N]=256*Math.random()|0;N=0,u0=0}for(;N<16;N++){if(B=I4[u0+N],N===6)z+=S4[B&15|64];else if(N===8)z+=S4[B&63|128];else z+=S4[B];if(N&1&&N>1&&N<11)z+="-"}return u0++,z}var Y6=N6((N)=>H0.emit("form-state",{id:N.formId,state:N.store.state}),{wait:300});function n0(N){if(N===null||typeof N!=="object")return N;if(N instanceof Date)return new Date(N.getTime());if(Array.isArray(N)){let z=[];for(let Y=0;Y<N.length;Y++)z[Y]=n0(N[Y]);return z}if(N instanceof Map){let z=new Map;return N.forEach((Y,X)=>{z.set(X,n0(Y))}),z}if(N instanceof Set){let z=new Set;return N.forEach((Y)=>{z.add(n0(Y))}),z}let B={};for(let z in N)if(Object.prototype.hasOwnProperty.call(N,z))B[z]=n0(N[z]);return B}function k0(N,B){return B===N||B.startsWith(`${N}.`)||B.startsWith(`${N}[`)}var W0=(N)=>{if(!N.validators)return N.runValidation({validators:[],form:N.form});let B=N.event.async,z=B?void 0:{fn:N.validators.onMount,cause:"mount"},Y={fn:B?N.validators.onChangeAsync:N.validators.onChange,cause:"change"},X={fn:B?N.validators.onBlurAsync:N.validators.onBlur,cause:"blur"},Q={fn:B?N.validators.onSubmitAsync:N.validators.onSubmit,cause:"submit"},H=B?void 0:{fn:()=>{return},cause:"server"};switch(N.event.type){case"mount":return N.runValidation({validators:[z],form:N.form});case"submit":return N.runValidation({validators:[Y,X,Q,H],form:N.form});case"server":return N.runValidation({validators:[],form:N.form});case"blur":return N.runValidation({validators:[X,H],form:N.form});case"change":return N.runValidation({validators:[Y,H],form:N.form});default:throw Error(`Unknown validation event type: ${N.event.type}`)}};function mN(N,B){let z=new Map;for(let Y of N){let X=Y.path??[],Q=B,H="";for(let P=0;P<X.length;P++){let k=X[P];if(k===void 0)continue;let G=typeof k==="object"?k.key:k,T=Number(G);if(Array.isArray(Q)&&!Number.isNaN(T))H+=`[${T}]`;else H+=(P>0?".":"")+String(G);if(typeof Q==="object"&&Q!==null)Q=Q[G];else Q=void 0}z.set(H,(z.get(H)??[]).concat(Y))}return Object.fromEntries(z)}var I6=(N,B)=>{let z=mN(N,B);return{form:z,fields:z}},y0={validate({value:N,validationSource:B},z){let Y=z["~standard"].validate(N);if(Y instanceof Promise)throw Error("async function passed to sync validator");if(!Y.issues)return;if(B==="field")return Y.issues;return I6(Y.issues,N)},async validateAsync({value:N,validationSource:B},z){let Y=await z["~standard"].validate(N);if(!Y.issues)return;if(B==="field")return Y.issues;return I6(Y.issues,N)}},q4=(N)=>!!N&&("~standard"in N);var J0={isValidating:!1,isTouched:!1,isBlurred:!1,isDirty:!1,isPristine:!0,isValid:!0,isDefaultValue:!0,errors:[],errorMap:{},errorSourceMap:{},_arrayVersion:0};function I0(N){function B(K){let U=N.getFieldMeta(K)??J0;N.setFieldMeta(K,{...U,_arrayVersion:(U._arrayVersion||0)+1})}function z(K,U,W){B(K);let w=P(K,U,"move",W),C=Math.min(U,W),h=Math.max(U,W);for(let E=C;E<=h;E++)w.push(H(K,E));let A=Object.keys(N.fieldInfo).reduce((E,b)=>{if(b.startsWith(H(K,U)))E.set(b,N.getFieldMeta(b));return E},new Map);G(w,U<W?"up":"down"),Object.keys(N.fieldInfo).filter((E)=>E.startsWith(H(K,W))).forEach((E)=>{let b=E.replace(H(K,W),H(K,U)),R=A.get(b);if(R)N.setFieldMeta(E,R)})}function Y(K,U){B(K);let W=P(K,U,"remove");G(W,"up")}function X(K,U,W){B(K),P(K,U,"swap",W).forEach((C)=>{if(!C.toString().startsWith(H(K,U)))return;let h=C.toString().replace(H(K,U),H(K,W)),[A,E]=[N.getFieldMeta(C),N.getFieldMeta(h)];if(A)N.setFieldMeta(h,A);if(E)N.setFieldMeta(C,E)})}function Q(K,U){B(K);let W=P(K,U,"insert");G(W,"down"),W.forEach((w)=>{if(w.toString().startsWith(H(K,U)))N.setFieldMeta(w,T())})}function H(K,U){return`${K}[${U}]`}function P(K,U,W,w){let C=[H(K,U)];switch(W){case"swap":C.push(H(K,w));break;case"move":{let[h,A]=[Math.min(U,w),Math.max(U,w)];for(let E=h;E<=A;E++)C.push(H(K,E));break}default:{let h=N.getFieldValue(K),A=Array.isArray(h)?h.length:0;for(let E=U+1;E<A;E++)C.push(H(K,E));break}}return Object.keys(N.fieldInfo).filter((h)=>C.some((A)=>h.startsWith(A)))}function k(K,U){return K.replace(/\[(\d+)\]/,(W,w)=>{let C=parseInt(w,10);return`[${U==="up"?C+1:Math.max(0,C-1)}]`})}function G(K,U){(U==="up"?K:[...K].reverse()).forEach((w)=>{let C=k(w.toString(),U),h=N.getFieldMeta(C);if(h)N.setFieldMeta(w,h);else N.setFieldMeta(w,T())})}let T=()=>J0;return{bumpArrayVersion:B,handleArrayMove:z,handleArrayRemove:Y,handleArraySwap:X,handleArrayInsert:Q}}function Q6(N){return{values:N.values??{},errorMap:N.errorMap??{},fieldMetaBase:N.fieldMetaBase??{},formGroupStateBase:N.formGroupStateBase??{},isSubmitted:N.isSubmitted??!1,isSubmitting:N.isSubmitting??!1,isValidating:N.isValidating??!1,submissionAttempts:N.submissionAttempts??0,isSubmitSuccessful:N.isSubmitSuccessful??!1,validationMetaMap:N.validationMetaMap??{onChange:void 0,onBlur:void 0,onSubmit:void 0,onMount:void 0,onServer:void 0,onDynamic:void 0}}}class A4{constructor(N){this.options={},this.fieldInfo={},this.formGroupApis=new Set,this.mount=()=>{let X=this.store.subscribe(()=>{Y6(this)}),Q=H0.on("request-form-state",(T)=>{if(T.payload.id===this._formId)H0.emit("form-api",{id:this._formId,state:this.store.state,options:this.options})}),H=H0.on("request-form-reset",(T)=>{if(T.payload.id===this._formId)this.reset()}),P=H0.on("request-form-force-submit",(T)=>{if(T.payload.id===this._formId)this._devtoolsSubmissionOverride=!0,this.handleSubmit(),this._devtoolsSubmissionOverride=!1}),k=()=>{P(),H(),Q(),X.unsubscribe(),H0.emit("form-unmounted",{id:this._formId})};this.options.listeners?.onMount?.({formApi:this});let{onMount:G}=this.options.validators||{};if(H0.emit("form-api",{id:this._formId,state:this.store.state,options:this.options}),!G)return k;return this.validateSync("mount"),k},this.update=(X)=>{if(!X)return;let Q=this.options;this.options=X;let H=X.defaultValues&&!Z0(X.defaultValues,Q.defaultValues)&&!this.state.isTouched,P=!Z0(X.defaultState,Q.defaultState)&&!this.state.isTouched;if(!H&&!P)return;if(f(()=>{this.baseStore.setState(()=>Q6(Object.assign({},this.state,P?X.defaultState:{},H?{values:X.defaultValues}:{})))}),H){let k=I0(this);for(let G of Object.keys(this.fieldInfo))if(Array.isArray(this.getFieldValue(G)))k.bumpArrayVersion(G)}H0.emit("form-api",{id:this._formId,state:this.store.state,options:this.options})},this.reset=(X,Q)=>{let{fieldMeta:H}=this.state,P=this.resetFieldMeta(H);if(X&&!Q?.keepDefaultValues)this.options={...this.options,defaultValues:X};this.baseStore.setState(()=>{let k=X??this.options.defaultValues??this.options.defaultState?.values;if(!X)Object.values(this.fieldInfo).forEach((G)=>{if(G.instance&&G.instance.options.defaultValue!==void 0)k=p0(k,G.instance.name,G.instance.options.defaultValue)});return Q6({...this.options.defaultState,values:k,fieldMetaBase:P})})},this.validateAllFields=async(X)=>{let Q=[];return f(()=>{Object.values(this.fieldInfo).forEach((P)=>{if(!P.instance)return;let k=P.instance;if(Q.push(Promise.resolve().then(()=>k.validate(X,{skipFormValidation:!0,skipGroupValidation:!0}))),!P.instance.store.state.meta.isTouched)P.instance.setMeta((G)=>({...G,isTouched:!0}))})}),(await Promise.all(Q)).flat()},this.validateArrayFieldsStartingFrom=async(X,Q,H)=>{let P=this.getFieldValue(X),k=Array.isArray(P)?Math.max(P.length-1,0):null,G=[`${X}[${Q}]`];for(let W=Q+1;W<=(k??0);W++)G.push(`${X}[${W}]`);let T=Object.keys(this.fieldInfo).filter((W)=>G.some((w)=>W.startsWith(w))),K=[];return f(()=>{T.forEach((W)=>{K.push(Promise.resolve().then(()=>this.validateField(W,H)))})}),(await Promise.all(K)).flat()},this.validateField=(X,Q)=>{let H=this.fieldInfo[X]?.instance;if(!H){let{hasErrored:P}=this.validateSync(Q);if(P&&!this.options.asyncAlways)return this.getFieldMeta(X)?.errors??[];return this.validateAsync(Q).then(()=>{return this.getFieldMeta(X)?.errors??[]})}if(!H.store.state.meta.isTouched)H.setMeta((P)=>({...P,isTouched:!0}));return H.validate(Q)},this.validateSync=(X,Q)=>{let H=V0(X,{...this.options,form:this,group:Q?.group,validationLogic:this.options.validationLogic||W0}),P=!1,k={};return f(()=>{for(let K of H){if(!K.validate)continue;let U=this.runValidator({validate:K.validate,value:{value:this.state.values,formApi:this,validationSource:"form"},type:"validate"}),{formError:W,fieldErrors:w}=g4(U),C=L4(K.cause),h=new Set([...Object.keys(this.state.fieldMeta),...Object.keys(w||{})]);if(Q?.filterFieldNames)h=new Set([...h].filter(Q.filterFieldNames));for(let A of h){if(this.baseStore.state.fieldMetaBase[A]===void 0&&!w?.[A])continue;let E=this.getFieldMeta(A)??J0,{errorMap:b,errorSourceMap:R}=E,D=w?.[A],{newErrorValue:L,newSource:y}=H4({newFormValidatorError:D,isPreviousErrorFromFormValidator:R?.[C]==="form",previousErrorValue:b?.[C]});if(y==="form")k[A]={...k[A],[C]:D};if(b?.[C]!==L)this.setFieldMeta(A,(V=J0)=>({...V,errorMap:{...V.errorMap,[C]:L},errorSourceMap:{...V.errorSourceMap,[C]:y}}))}if(!Q?.dontUpdateFormErrorMap){if(this.state.errorMap?.[C]!==W)this.baseStore.setState((A)=>({...A,errorMap:{...A.errorMap,[C]:W}}))}if(W||w)P=!0}if(Q?.dontUpdateFormErrorMap)return;let G=L4("submit");if(this.state.errorMap?.[G]&&X!=="submit"&&!P)this.baseStore.setState((K)=>({...K,errorMap:{...K.errorMap,[G]:void 0}}));let T=L4("server");if(this.state.errorMap?.[T]&&X!=="server"&&!P)this.baseStore.setState((K)=>({...K,errorMap:{...K.errorMap,[T]:void 0}}))}),{hasErrored:P,fieldsErrorMap:k}},this.validateAsync=async(X,Q)=>{let H=M0(X,{...this.options,form:this,group:Q?.group,validationLogic:this.options.validationLogic||W0});if(!this.state.isFormValidating)this.baseStore.setState((K)=>({...K,isFormValidating:!0}));let P=[],k;for(let K of H){if(!K.validate)continue;let U=L4(K.cause);this.state.validationMetaMap[U]?.lastAbortController.abort();let w=new AbortController;this.state.validationMetaMap[U]={lastAbortController:w},P.push(new Promise(async(C)=>{let h;try{h=await new Promise((D,L)=>{setTimeout(async()=>{if(w.signal.aborted)return D(void 0);try{D(await this.runValidator({validate:K.validate,value:{value:this.state.values,formApi:this,validationSource:"form",signal:w.signal},type:"validateAsync"}))}catch(y){L(y)}},K.debounceMs)})}catch(D){h=D}let{formError:A,fieldErrors:E}=g4(h);if(E)k=k?{...k,...E}:E;let b=L4(K.cause),R=Object.keys(this.state.fieldMeta);if(Q?.filterFieldNames)R=R.filter(Q.filterFieldNames);for(let D of R){if(this.baseStore.state.fieldMetaBase[D]===void 0)continue;let L=this.getFieldMeta(D);if(!L)continue;let{errorMap:y,errorSourceMap:V}=L,I=k?.[D],{newErrorValue:c,newSource:i}=H4({newFormValidatorError:I,isPreviousErrorFromFormValidator:V?.[b]==="form",previousErrorValue:y?.[b]});if(y?.[b]!==c)this.setFieldMeta(D,(r)=>({...r,errorMap:{...r.errorMap,[b]:c},errorSourceMap:{...r.errorSourceMap,[b]:i}}))}if(!Q?.dontUpdateFormErrorMap)this.baseStore.setState((D)=>({...D,errorMap:{...D.errorMap,[b]:A}}));C(k?{fieldErrors:k,errorMapKey:b}:void 0)}))}let G=[],T={};if(P.length){G=await Promise.all(P);for(let K of G)if(K?.fieldErrors){let{errorMapKey:U}=K;for(let[W,w]of Object.entries(K.fieldErrors)){let h={...T[W]||{},[U]:w};T[W]=h}}}return this.baseStore.setState((K)=>({...K,isFormValidating:!1})),T},this.validate=(X,Q)=>{let{hasErrored:H,fieldsErrorMap:P}=this.validateSync(X,Q);if(H&&!this.options.asyncAlways)return P;return this.validateAsync(X,Q)},this._handleSubmit=async(X)=>{this.baseStore.setState((P)=>({...P,isSubmitted:!1,submissionAttempts:P.submissionAttempts+1,isSubmitSuccessful:!1})),f(()=>{Object.values(this.fieldInfo).forEach((P)=>{if(!P.instance)return;if(!P.instance.store.state.meta.isTouched)P.instance.setMeta((k)=>({...k,isTouched:!0}))})});let Q=X??this.options.onSubmitMeta;if(!this.state.canSubmit&&!this._devtoolsSubmissionOverride){this.options.onSubmitInvalid?.({value:this.state.values,formApi:this,meta:Q});return}this.baseStore.setState((P)=>({...P,isSubmitting:!0}));let H=()=>{this.baseStore.setState((P)=>({...P,isSubmitting:!1}))};if(await this.validateAllFields("submit"),!this.state.isFieldsValid){H(),this.options.onSubmitInvalid?.({value:this.state.values,formApi:this,meta:Q}),H0.emit("form-submission",{id:this._formId,submissionAttempt:this.state.submissionAttempts,successful:!1,stage:"validateAllFields",errors:Object.values(this.state.fieldMeta).map((P)=>P.errors).flat()});return}if(await this.validate("submit"),!this.state.isValid){H(),this.options.onSubmitInvalid?.({value:this.state.values,formApi:this,meta:Q}),H0.emit("form-submission",{id:this._formId,submissionAttempt:this.state.submissionAttempts,successful:!1,stage:"validate",errors:this.state.errors});return}f(()=>{Object.values(this.fieldInfo).forEach((P)=>{P.instance?.triggerOnSubmitListener()})}),this.options.listeners?.onSubmit?.({formApi:this,meta:Q});try{await this.options.onSubmit?.({value:this.state.values,formApi:this,meta:Q}),f(()=>{this.baseStore.setState((P)=>({...P,isSubmitted:!0,isSubmitSuccessful:!0})),H0.emit("form-submission",{id:this._formId,submissionAttempt:this.state.submissionAttempts,successful:!0}),H()})}catch(P){throw this.baseStore.setState((k)=>({...k,isSubmitSuccessful:!1})),H0.emit("form-submission",{id:this._formId,submissionAttempt:this.state.submissionAttempts,successful:!1,stage:"inflight",onError:P}),H(),P}},this.getFieldValue=(X)=>Y4(this.state.values,X),this.getFieldMeta=(X)=>{return this.state.fieldMeta[X]},this.getFormGroupMeta=(X)=>{return this.formGroupMetaDerived.state[X]},this.getFieldInfo=(X)=>{return this.fieldInfo[X]||={instance:null,validationMetaMap:{onChange:void 0,onBlur:void 0,onSubmit:void 0,onMount:void 0,onServer:void 0,onDynamic:void 0}}},this.setFieldMeta=(X,Q)=>{this.baseStore.setState((H)=>{return{...H,fieldMetaBase:{...H.fieldMetaBase,[X]:E0(Q,H.fieldMetaBase[X])}}})},this.resetFieldMeta=(X)=>{return Object.keys(X).reduce((Q,H)=>{let P=H;return Q[P]=J0,Q},{})},this.setFieldValue=(X,Q,H)=>{let P=H?.dontUpdateMeta??!1,k=H?.dontRunListeners??!1,G=H?.dontValidate??!1;if(f(()=>{if(!P)this.setFieldMeta(X,(T)=>({...T,isTouched:!0,isDirty:!0,errorMap:{...T?.errorMap,onMount:void 0}}));this.baseStore.setState((T)=>{return{...T,values:p0(T.values,X,Q)}})}),!k)this.getFieldInfo(X).instance?.triggerOnChangeListener();if(!G)this.validateField(X,"change")},this.deleteField=(X)=>{let H=[...Object.keys(this.fieldInfo).filter((P)=>{let k=X.toString();return P!==k&&P.startsWith(k)}),X];this.baseStore.setState((P)=>{let k={...P};return H.forEach((G)=>{k.values=X6(k.values,G),delete this.fieldInfo[G],delete k.fieldMetaBase[G]}),k})},this.pushFieldValue=(X,Q,H)=>{this.setFieldValue(X,(P)=>[...Array.isArray(P)?P:[],Q],H),I0(this).bumpArrayVersion(X)},this.insertFieldValue=async(X,Q,H,P)=>{this.setFieldValue(X,(G)=>{return[...G.slice(0,Q),H,...G.slice(Q)]},t(P,{dontValidate:!0}));let k=P?.dontValidate??!1;if(!k)await this.validateField(X,"change");if(I0(this).handleArrayInsert(X,Q),!k)await this.validateArrayFieldsStartingFrom(X,Q,"change")},this.replaceFieldValue=async(X,Q,H,P)=>{if(this.setFieldValue(X,(G)=>{return G.map((T,K)=>K===Q?H:T)},t(P,{dontValidate:!0})),I0(this).bumpArrayVersion(X),!(P?.dontValidate??!1))await this.validateField(X,"change"),await this.validateArrayFieldsStartingFrom(X,Q,"change")},this.removeFieldValue=async(X,Q,H)=>{let P=this.getFieldValue(X),k=Array.isArray(P)?Math.max(P.length-1,0):null;if(this.setFieldValue(X,(T)=>{return T.filter((K,U)=>U!==Q)},t(H,{dontValidate:!0})),I0(this).handleArrayRemove(X,Q),k!==null){let T=`${X}[${k}]`;this.deleteField(T)}if(!(H?.dontValidate??!1))await this.validateField(X,"change"),await this.validateArrayFieldsStartingFrom(X,Q,"change")},this.swapFieldValues=(X,Q,H,P)=>{if(this.setFieldValue(X,(G)=>{let T=G[Q],K=G[H];return p0(p0(G,`${Q}`,K),`${H}`,T)},t(P,{dontValidate:!0})),I0(this).handleArraySwap(X,Q,H),!(P?.dontValidate??!1))this.validateField(X,"change"),this.validateField(`${X}[${Q}]`,"change"),this.validateField(`${X}[${H}]`,"change")},this.moveFieldValues=(X,Q,H,P)=>{if(this.setFieldValue(X,(G)=>{let T=[...G];return T.splice(H,0,T.splice(Q,1)[0]),T},t(P,{dontValidate:!0})),I0(this).handleArrayMove(X,Q,H),!(P?.dontValidate??!1))this.validateField(X,"change"),this.validateField(`${X}[${Q}]`,"change"),this.validateField(`${X}[${H}]`,"change")},this.clearFieldValues=(X,Q)=>{let H=this.getFieldValue(X),P=Array.isArray(H)?Math.max(H.length-1,0):null;if(this.setFieldValue(X,[],t(Q,{dontValidate:!0})),I0(this).bumpArrayVersion(X),P!==null)for(let G=0;G<=P;G++){let T=`${X}[${G}]`;this.deleteField(T)}if(!(Q?.dontValidate??!1))this.validateField(X,"change")},this.resetField=(X)=>{this.baseStore.setState((Q)=>{let H=this.getFieldInfo(X).instance?.options.defaultValue,P=Y4(this.options.defaultValues,X),k=H??P;return{...Q,fieldMetaBase:{...Q.fieldMetaBase,[X]:J0},values:k!==void 0?p0(Q.values,X,k):Q.values}})},this.setErrorMap=(X)=>{f(()=>{Object.entries(X).forEach(([Q,H])=>{let P=Q;if(Q4(H)){let{formError:k,fieldErrors:G}=g4(H);for(let T of Object.keys(this.fieldInfo)){if(!this.getFieldMeta(T))continue;this.setFieldMeta(T,(U)=>({...U,errorMap:{...U.errorMap,[P]:G?.[T]},errorSourceMap:{...U.errorSourceMap,[P]:"form"}}))}this.baseStore.setState((T)=>({...T,errorMap:{...T.errorMap,[P]:k}}))}else this.baseStore.setState((k)=>({...k,errorMap:{...k.errorMap,[P]:H}}))})})},this.getAllErrors=()=>{return{form:{errors:this.state.errors,errorMap:this.state.errorMap},fields:Object.entries(this.state.fieldMeta).reduce((X,[Q,H])=>{if(Object.keys(H).length&&H.errors.length)X[Q]={errors:H.errors,errorMap:H.errorMap};return X},{})}},this.parseValuesWithSchema=(X)=>{return y0.validate({value:this.state.values,validationSource:"form"},X)},this.parseValuesWithSchemaAsync=(X)=>{return y0.validateAsync({value:this.state.values,validationSource:"form"},X)},this.timeoutIds={validations:{},listeners:{},formListeners:{}},this._formId=N?.formId??R4(),this._devtoolsSubmissionOverride=!1;let B=Q6({...N?.defaultState,values:N?.defaultValues??N?.defaultState?.values});if(N?.transform){B=N.transform({state:B}).state;for(let X of Object.keys(B.errorMap)){let Q=B.errorMap[X];if(Q===void 0||!Q4(Q))continue;for(let H of Object.keys(Q.fields)){let P=Q.fields[H];if(P===void 0)continue;let k=B.fieldMetaBase[H];B.fieldMetaBase[H]={isTouched:!1,isValidating:!1,isBlurred:!1,isDirty:!1,_arrayVersion:0,...k??{},errorSourceMap:{...k?.errorSourceMap??{},onChange:"form"},errorMap:{...k?.errorMap??{},[X]:P}}}}}this.baseStore=D0(B);let z=void 0;this.fieldMetaDerived=D0((X)=>{let Q=this.baseStore.get(),H=0,P={};for(let k of Object.keys(Q.fieldMetaBase)){let G=Q.fieldMetaBase[k],T=z?.fieldMetaBase[k],K=X?.[k],U=Y4(Q.values,k),W=K?.errors;if(!T||G.errorMap!==T.errorMap){W=Object.values(G.errorMap??{}).filter((E)=>E!==void 0);let A=this.getFieldInfo(k)?.instance;if(!A||!A.options.disableErrorFlat)W=W.flat(1)}let w=!z6(W),C=!G.isDirty,h=Z0(U,this.getFieldInfo(k)?.instance?.options.defaultValue??Y4(this.options.defaultValues,k));if(K&&K.isPristine===C&&K.isValid===w&&K.isDefaultValue===h&&K.errors===W&&G===T){P[k]=K,H++;continue}P[k]={...G,errors:W??[],isPristine:C,isValid:w,isDefaultValue:h}}if(!Object.keys(Q.fieldMetaBase).length)return P;if(X&&H===Object.keys(Q.fieldMetaBase).length)return X;return z=this.baseStore.get(),P}),this.formGroupMetaDerived=D0((X)=>{let Q=this.baseStore.get(),H=this.fieldMetaDerived.get(),P={};for(let k of this.formGroupApis){let G=k.name,T=Q.formGroupStateBase[G]??{isSubmitted:!1,isSubmitting:!1,isValidating:!1,submissionAttempts:0,isSubmitSuccessful:!1},K=H[G],U=!1,W=!0,w=!1,C=!1,h=!0,A=!1;for(let M in H){if(M===G)continue;if(!k0(G,M))continue;let g=H[M];if(!g)continue;if(g.isValidating)U=!0;if(!g.isValid)W=!1;if(g.isTouched)w=!0;if(g.isBlurred)C=!0;if(!g.isDefaultValue)h=!1;if(g.isDirty)A=!0}let E=!A,b=!!U||T.isValidating,R=K?.errorMap??{},D=K?.errorSourceMap??{},L=Boolean(R.onMount||Object.entries(H).some(([M,g])=>g&&M!==G&&k0(G,M)&&g.errorMap.onMount)),y=X?.[G],V=y?.errors??[];if(!y||y.__srcErrorMap!==R)V=Object.values(R).reduce((M,g)=>{if(g===void 0)return M;if(g&&typeof g==="object"&&"fields"in g){let G0=g.group;if(G0!==void 0)M.push(G0);return M}return M.push(g),M},[]);let I=V.length===0,c=W&&I,i=k.options.canSubmitWhenInvalid??!1,r=T.submissionAttempts===0&&!w&&!L||!b&&!T.isSubmitting&&c||i;if(y&&y.errorMap===R&&y.errorSourceMap===D&&y.errors===V&&y.isFieldsValidating===U&&y.isFieldsValid===W&&y.isGroupValid===I&&y.isValid===c&&y.canSubmit===r&&y.isTouched===w&&y.isBlurred===C&&y.isPristine===E&&y.isDefaultValue===h&&y.isDirty===A&&y.isValidating===b&&y.isSubmitting===T.isSubmitting&&y.isSubmitted===T.isSubmitted&&y.submissionAttempts===T.submissionAttempts&&y.isSubmitSuccessful===T.isSubmitSuccessful){P[G]=y;continue}let v={...T,errorMap:R,errorSourceMap:D,_arrayVersion:K?._arrayVersion??0,isTouched:w,isBlurred:C,isDirty:A,isPristine:E,isDefaultValue:h,isValid:c,errors:V,isValidating:b,isFieldsValidating:U,isFieldsValid:W,isGroupValid:I,canSubmit:r};Object.defineProperty(v,"__srcErrorMap",{value:R,enumerable:!1,configurable:!0}),P[G]=v}return P});let Y=void 0;this.store=D0((X)=>{let Q=this.baseStore.get(),H=this.fieldMetaDerived.get(),P=Object.values(H).filter(Boolean),k=P.some((I)=>I.isValidating),G=P.every((I)=>I.isValid),T=P.some((I)=>I.isTouched),K=P.some((I)=>I.isBlurred),U=P.every((I)=>I.isDefaultValue),W=T&&Q.errorMap?.onMount,w=P.some((I)=>I.isDirty),C=!w,h=Boolean(Q.errorMap?.onMount||P.some((I)=>I?.errorMap?.onMount)),A=!!k,E=X?.errors??[];if(!Y||Q.errorMap!==Y.errorMap)E=Object.values(Q.errorMap).reduce((I,c)=>{if(c===void 0)return I;if(c&&Q4(c))return I.push(c.form),I;return I.push(c),I},[]);let b=E.length===0,R=G&&b,D=this.options.canSubmitWhenInvalid??!1,L=Q.submissionAttempts===0&&!T&&!h||!A&&!Q.isSubmitting&&R||D,y=Q.errorMap;if(W)E=E.filter((I)=>I!==Q.errorMap.onMount),y=Object.assign(y,{onMount:void 0});if(X&&Y&&X.errorMap===y&&X.fieldMeta===this.fieldMetaDerived.state&&X.errors===E&&X.isFieldsValidating===k&&X.isFieldsValid===G&&X.isFormValid===b&&X.isValid===R&&X.canSubmit===L&&X.isTouched===T&&X.isBlurred===K&&X.isPristine===C&&X.isDefaultValue===U&&X.isDirty===w&&Z0(Y,Q))return X;let V={...Q,errorMap:y,fieldMeta:this.fieldMetaDerived.state,errors:E,isFieldsValidating:k,isFieldsValid:G,isFormValid:b,isValid:R,canSubmit:L,isTouched:T,isBlurred:K,isPristine:C,isDefaultValue:U,isDirty:w};return Y=this.baseStore.get(),V}),this.handleSubmit=this.handleSubmit.bind(this),this.update(N||{})}get state(){return this.store.state}get formId(){return this._formId}runValidator(N){if(q4(N.validate))return y0[N.type](N.value,N.validate);return N.validate(N.value)}handleSubmit(N){return this._handleSubmit(N)}}function g4(N){if(N){if(Q4(N)){let B=g4(N.form).formError,z=N.fields;return{formError:B,fieldErrors:z}}return{formError:N}}return{formError:void 0}}function L4(N){switch(N){case"submit":return"onSubmit";case"blur":return"onBlur";case"mount":return"onMount";case"server":return"onServer";case"dynamic":return"onDynamic";case"change":default:return"onChange"}}class $0{constructor(N){this.options={},this.mount=()=>{if(this.options.defaultValue!==void 0&&!this.getMeta().isTouched)this.form.setFieldValue(this.name,this.options.defaultValue,{dontUpdateMeta:!0});let B=this.getInfo();B.instance=this,this.update(this.options);let{onMount:z}=this.options.validators||{};if(z){let Y=this.runValidator({validate:z,value:{value:this.state.value,fieldApi:this,validationSource:"field"},type:"validate"});if(Y)this.setMeta((X)=>({...X,errorMap:{...X?.errorMap,onMount:Y},errorSourceMap:{...X?.errorSourceMap,onMount:"field"}}))}return this.options.listeners?.onMount?.({value:this.state.value,fieldApi:this}),()=>{for(let[X,Q]of Object.entries(this.timeoutIds.validations))if(Q)clearTimeout(Q),this.timeoutIds.validations[X]=null;for(let[X,Q]of Object.entries(this.timeoutIds.listeners))if(Q)clearTimeout(Q),this.timeoutIds.listeners[X]=null;for(let[X,Q]of Object.entries(this.timeoutIds.formListeners))if(Q)clearTimeout(Q),this.timeoutIds.formListeners[X]=null;let Y=this.form.fieldInfo[this.name];if(!Y)return;if(Y.instance!==this)return;for(let[X,Q]of Object.entries(Y.validationMetaMap))Q?.lastAbortController.abort(),Y.validationMetaMap[X]=void 0;this.form.baseStore.setState((X)=>({...X,fieldMetaBase:{...X.fieldMetaBase,[this.name]:{...J0,isTouched:X.fieldMetaBase[this.name]?.isTouched??J0.isTouched,isBlurred:X.fieldMetaBase[this.name]?.isBlurred??J0.isBlurred,isDirty:X.fieldMetaBase[this.name]?.isDirty??J0.isDirty}}})),Y.instance=null,this.options.listeners?.onUnmount?.({value:this.state.value,fieldApi:this}),this.form.options.listeners?.onFieldUnmount?.({formApi:this.form,fieldApi:this})}},this.update=(B)=>{if(this.options=B,this.name=B.name,!this.state.meta.isTouched&&this.options.defaultValue!==void 0){let z=this.form.getFieldValue(this.name);if(!Z0(z,B.defaultValue))this.form.setFieldValue(this.name,B.defaultValue,{dontUpdateMeta:!0,dontValidate:!0,dontRunListeners:!0})}if(!this.form.getFieldMeta(this.name))this.form.setFieldMeta(this.name,this.state.meta)},this.getValue=()=>{return this.form.getFieldValue(this.name)},this.setValue=(B,z)=>{if(this.form.setFieldValue(this.name,B,t(z,{dontRunListeners:!0,dontValidate:!0})),!z?.dontRunListeners)this.triggerOnChangeListener();if(!z?.dontValidate)this.validate("change")},this.getMeta=()=>this.store.state.meta,this.setMeta=(B)=>this.form.setFieldMeta(this.name,B),this.getInfo=()=>this.form.getFieldInfo(this.name),this.pushValue=(B,z)=>{if(this.form.pushFieldValue(this.name,B,t(z,{dontRunListeners:!0})),!z?.dontRunListeners)this.triggerOnChangeListener()},this.insertValue=(B,z,Y)=>{if(this.form.insertFieldValue(this.name,B,z,t(Y,{dontRunListeners:!0})),!Y?.dontRunListeners)this.triggerOnChangeListener()},this.replaceValue=(B,z,Y)=>{if(this.form.replaceFieldValue(this.name,B,z,t(Y,{dontRunListeners:!0})),!Y?.dontRunListeners)this.triggerOnChangeListener()},this.removeValue=(B,z)=>{if(this.form.removeFieldValue(this.name,B,t(z,{dontRunListeners:!0})),!z?.dontRunListeners)this.triggerOnChangeListener()},this.swapValues=(B,z,Y)=>{if(this.form.swapFieldValues(this.name,B,z,t(Y,{dontRunListeners:!0})),!Y?.dontRunListeners)this.triggerOnChangeListener()},this.moveValue=(B,z,Y)=>{if(this.form.moveFieldValues(this.name,B,z,t(Y,{dontRunListeners:!0})),!Y?.dontRunListeners)this.triggerOnChangeListener()},this.clearValues=(B)=>{if(this.form.clearFieldValues(this.name,t(B,{dontRunListeners:!0})),!B?.dontRunListeners)this.triggerOnChangeListener()},this.getLinkedFields=(B)=>{let z=Object.values(this.form.fieldInfo),Y=[];for(let X of z){if(!X.instance)continue;if(!(X.instance instanceof $0))continue;let{onChangeListenTo:Q,onBlurListenTo:H}=X.instance.options.validators||{};if(B==="change"&&Q?.includes(this.name))Y.push(X.instance);if(B==="blur"&&H?.includes(this.name))Y.push(X.instance)}return Y},this.validateSync=(B,z)=>{let Y=V0(B,{...this.options,form:this.form,fieldName:this.name,validationLogic:this.form.options.validationLogic||W0}),Q=this.getLinkedFields(B).reduce((k,G)=>{let T=V0(B,{...G.options,form:G.form,fieldName:G.name,validationLogic:G.form.options.validationLogic||W0});return T.forEach((K)=>{K.field=G}),k.concat(T)},[]),H=!1;f(()=>{let k=(G,T)=>{let K=C4(T.cause),U=T.validate?S6(G.runValidator({validate:T.validate,value:{value:G.store.state.value,validationSource:"field",fieldApi:G},type:"validate"})):void 0,W=z[K],{newErrorValue:w,newSource:C}=d0({formLevelError:W,fieldLevelError:U});if(G.state.meta.errorMap?.[K]!==w)G.setMeta((h)=>({...h,errorMap:{...h.errorMap,[K]:w},errorSourceMap:{...h.errorSourceMap,[K]:C}}));if(w)H=!0};for(let G of Y)k(this,G);for(let G of Q){if(!G.validate)continue;k(G.field,G)}});let P=C4("submit");if(this.state.meta.errorMap?.[P]&&B!=="submit"&&!H)this.setMeta((k)=>({...k,errorMap:{...k.errorMap,[P]:void 0},errorSourceMap:{...k.errorSourceMap,[P]:void 0}}));return{hasErrored:H}},this.validateAsync=async(B,z)=>{let Y=M0(B,{...this.options,form:this.form,fieldName:this.name,validationLogic:this.form.options.validationLogic||W0}),X=await z,Q=this.getLinkedFields(B),H=Q.reduce((U,W)=>{let w=M0(B,{...W.options,form:W.form,fieldName:W.name,validationLogic:W.form.options.validationLogic||W0});return w.forEach((C)=>{C.field=W}),U.concat(w)},[]),P=[],k=[],G=Y.some((U)=>U.validate)||H.some((U)=>U.validate);if(G){if(!this.state.meta.isValidating)this.setMeta((U)=>({...U,isValidating:!0}));for(let U of Q)U.setMeta((W)=>({...W,isValidating:!0}))}let T=(U,W,w)=>{let C=C4(W.cause),h=U.getInfo();h.validationMetaMap[C]?.lastAbortController.abort();let E=new AbortController;h.validationMetaMap[C]={lastAbortController:E},w.push(new Promise(async(b)=>{let R;try{R=await new Promise((I,c)=>{if(U.timeoutIds.validations[W.cause])clearTimeout(U.timeoutIds.validations[W.cause]);U.timeoutIds.validations[W.cause]=setTimeout(async()=>{if(E.signal.aborted)return I(void 0);try{I(await this.runValidator({validate:W.validate,value:{value:U.store.state.value,fieldApi:U,signal:E.signal,validationSource:"field"},type:"validateAsync"}))}catch(i){c(i)}},W.debounceMs)})}catch(I){R=I}if(E.signal.aborted)return b(void 0);let D=S6(R),L=X[U.name]?.[C],{newErrorValue:y,newSource:V}=d0({formLevelError:L,fieldLevelError:D});if(U.getInfo().instance!==U)return b(void 0);U.setMeta((I)=>{return{...I,errorMap:{...I?.errorMap,[C]:y},errorSourceMap:{...I.errorSourceMap,[C]:V}}}),b(y)}))};for(let U of Y){if(!U.validate)continue;T(this,U,P)}for(let U of H){if(!U.validate)continue;T(U.field,U,k)}let K=[];if(P.length||k.length)K=await Promise.all(P),await Promise.all(k);if(G){this.setMeta((U)=>({...U,isValidating:!1}));for(let U of Q)U.setMeta((W)=>({...W,isValidating:!1}))}return K.filter(Boolean)},this.validate=(B,z)=>{if(!this.state.meta.isTouched)return[];let Y=z?.skipGroupValidation?[]:Array.from(this.form.formGroupApis).filter((K)=>this.name.startsWith(K.name)),Q=((z?.skipFormValidation)?{fieldsErrorMap:{}}:this.form.validateSync(B)).fieldsErrorMap[this.name]??{};if(!z?.skipFormValidation)for(let K of Y){if(K.state.meta.submissionAttempts===0)continue;let{fieldsErrorMap:U}=this.form.validateSync(B,{group:K,dontUpdateFormErrorMap:!0,filterFieldNames:(W)=>k0(K.name,W)});Q={...Q,...U[this.name]??{}}}let{hasErrored:H}=this.validateSync(B,Q),P=new WeakMap;for(let K of Y){let{hasErrored:U}=K.validateSync(B,{},{skipRelatedFieldValidation:!0});P.set(K,U)}if(H&&!this.options.asyncAlways){this.getInfo().validationMetaMap[C4(B)]?.lastAbortController.abort();let K=[];for(let U of Y)U.getInfo().validationMetaMap[C4(B)]?.lastAbortController.abort(),K.push(U.state.meta.errors);return[...this.state.meta.errors,...K.flat()]}let k=z?.skipFormValidation?Promise.resolve({}):this.form.validateAsync(B),G=this.validateAsync(B,k),T=[];for(let K of Y){if(P.get(K)&&!K.options.asyncAlways)continue;T.push(K.validateAsync(B,k,{skipRelatedFieldValidation:!0}))}if(T.length===0)return G;return Promise.all([G,...T]).then((K)=>K.flat())},this.handleChange=(B)=>{this.setValue(B)},this.handleBlur=()=>{if(!this.state.meta.isTouched)this.setMeta((z)=>({...z,isTouched:!0}));if(!this.state.meta.isBlurred)this.setMeta((z)=>({...z,isBlurred:!0}));this.validate("blur"),this.triggerOnBlurListener()},this.setErrorMap=(B)=>{this.setMeta((z)=>({...z,errorMap:{...z.errorMap,...B}}))},this.parseValueWithSchema=(B)=>{return y0.validate({value:this.state.value,validationSource:"field"},B)},this.parseValueWithSchemaAsync=(B)=>{return y0.validateAsync({value:this.state.value,validationSource:"field"},B)},this.triggerOnBlurListener=()=>{let B=this.form.options.listeners?.onBlurDebounceMs;if(B&&B>0){if(this.timeoutIds.formListeners.blur)clearTimeout(this.timeoutIds.formListeners.blur);this.timeoutIds.formListeners.blur=setTimeout(()=>{this.form.options.listeners?.onBlur?.({formApi:this.form,fieldApi:this})},B)}else this.form.options.listeners?.onBlur?.({formApi:this.form,fieldApi:this});let z=this.options.listeners?.onBlurDebounceMs;if(z&&z>0){if(this.timeoutIds.listeners.blur)clearTimeout(this.timeoutIds.listeners.blur);this.timeoutIds.listeners.blur=setTimeout(()=>{this.options.listeners?.onBlur?.({value:this.state.value,fieldApi:this})},z)}else this.options.listeners?.onBlur?.({value:this.state.value,fieldApi:this})},this.triggerOnChangeListener=()=>{let B=this.form.options.listeners?.onChangeDebounceMs;if(B&&B>0){if(this.timeoutIds.formListeners.change)clearTimeout(this.timeoutIds.formListeners.change);this.timeoutIds.formListeners.change=setTimeout(()=>{this.form.options.listeners?.onChange?.({formApi:this.form,fieldApi:this})},B)}else this.form.options.listeners?.onChange?.({formApi:this.form,fieldApi:this});let z=this.options.listeners?.onChangeDebounceMs;if(z&&z>0){if(this.timeoutIds.listeners.change)clearTimeout(this.timeoutIds.listeners.change);this.timeoutIds.listeners.change=setTimeout(()=>{this.options.listeners?.onChange?.({value:this.state.value,fieldApi:this})},z)}else this.options.listeners?.onChange?.({value:this.state.value,fieldApi:this});for(let Y of this.form.formGroupApis)if(k0(Y.name,this.name))Y.triggerOnChangeListener()},this.triggerOnSubmitListener=()=>{this.options.listeners?.onSubmit?.({value:this.state.value,fieldApi:this})},this.form=N.form,this.name=N.name,this.options=N,this.timeoutIds={validations:{},listeners:{},formListeners:{}},this.store=D0((B)=>{this.form.store.get();let z=this.form.getFieldMeta(this.name)??{...J0,...N.defaultMeta},Y=this.form.getFieldValue(this.name);if(!z.isTouched&&Y===void 0&&this.options.defaultValue!==void 0&&!Z0(Y,this.options.defaultValue))Y=this.options.defaultValue;if(B&&B.value===Y&&B.meta===z)return B;return{value:Y,meta:z}})}get state(){return this.store.state}runValidator(N){if(q4(N.validate))return y0[N.type](N.value,N.validate);return N.validate(N.value)}}function S6(N){if(N)return N;return}function C4(N){switch(N){case"submit":return"onSubmit";case"blur":return"onBlur";case"mount":return"onMount";case"server":return"onServer";case"dynamic":return"onDynamic";case"change":default:return"onChange"}}function H6(N){return{isSubmitted:N.isSubmitted??!1,isSubmitting:N.isSubmitting??!1,isValidating:N.isValidating??!1,submissionAttempts:N.submissionAttempts??0,isSubmitSuccessful:N.isSubmitSuccessful??!1}}function g6(N){return{...J0,...N,errors:[],isPristine:!0,isValid:!0,isDefaultValue:!0,isFieldsValidating:!1,isFieldsValid:!0,isGroupValid:!0,canSubmit:!0,isSubmitting:!1,isSubmitted:!1,isValidating:!1,submissionAttempts:0,isSubmitSuccessful:!1}}class o0{constructor(N){this.options={},this.setFormGroupState=(B)=>{this.form.baseStore.setState((z)=>{let Y=z.formGroupStateBase[this.name]??H6({});return{...z,formGroupStateBase:{...z.formGroupStateBase,[this.name]:B(Y)}}})},this._lastDistributedFieldNames={},this.update=(B)=>{if(this.options=B,this.name=B.name,!this.state.meta.isTouched&&this.options.defaultValue!==void 0){let z=this.form.getFieldValue(this.name);if(!Z0(z,B.defaultValue))this.form.setFieldValue(this.name,B.defaultValue,{dontUpdateMeta:!0,dontValidate:!0,dontRunListeners:!0})}if(!this.form.getFieldMeta(this.name))this.form.setFieldMeta(this.name,{...J0,...this.options.defaultMeta})},this.mount=()=>{this.update(this.options),this.form.formGroupApis.add(this),this.fieldInfo.instance=this,this.form.baseStore.setState((z)=>({...z,formGroupStateBase:{...z.formGroupStateBase,[this.name]:z.formGroupStateBase[this.name]??H6({...this.options.defaultState})}}));let{onMount:B}=this.options.validators||{};if(B){let z=this.runValidator({validate:B,value:{value:this.state.value,groupApi:this,validationSource:"form"},type:"validate"}),Y=z,X=void 0;if(Z6(z))Y=z.group,X=z.fields;let Q=q6(Y);if(Q)this.setMeta((H)=>({...H,errorMap:{...H.errorMap,onMount:Q},errorSourceMap:{...H.errorSourceMap,onMount:"field"}}));this.distributeFieldErrors("onMount",X)}return this.options.listeners?.onMount?.({value:this.state.value,groupApi:this}),()=>{for(let[z,Y]of Object.entries(this.timeoutIds.validations))if(Y)clearTimeout(Y),this.timeoutIds.validations[z]=null;for(let[z,Y]of Object.entries(this.timeoutIds.listeners))if(Y)clearTimeout(Y),this.timeoutIds.listeners[z]=null;for(let[z,Y]of Object.entries(this.timeoutIds.formListeners))if(Y)clearTimeout(Y),this.timeoutIds.formListeners[z]=null;if(this.fieldInfo.instance!==this)return;for(let[z,Y]of Object.entries(this.fieldInfo.validationMetaMap))Y?.lastAbortController.abort(),this.fieldInfo.validationMetaMap[z]=void 0;this.form.formGroupApis.delete(this),this.form.baseStore.setState((z)=>({...z,formGroupStateBase:{...z.formGroupStateBase,[this.name]:H6({})}})),this.fieldInfo.instance=null,this.options.listeners?.onUnmount?.({value:this.state.value,groupApi:this})}},this.setValue=(B,z)=>{if(this.form.setFieldValue(this.name,B,t(z,{dontRunListeners:!0,dontValidate:!0})),!z?.dontRunListeners)this.triggerOnChangeListener();if(!z?.dontValidate)this.validate("change")},this.getMeta=()=>this.store.state.meta,this.setMeta=(B)=>this.form.setFieldMeta(this.name,B),this.getInfo=()=>this.fieldInfo,this.getRelatedFields=()=>{let B=Object.values(this.form.fieldInfo),z=[];for(let Y of B){if(!Y.instance)continue;if(!(Y.instance instanceof $0))continue;if(Y.instance.name.startsWith(this.name))z.push(Y.instance)}return z},this.getRelatedFieldMetasDerived=()=>{let B=Object.entries(this.form.fieldMetaDerived.state),z=[];for(let[Y,X]of B){if(Y===this.name)continue;if(k0(this.name,Y))z.push({...X,name:Y})}return z},this.buildChildFieldName=(B)=>{if(B==="")return this.name;if(B.startsWith("["))return`${this.name}${B}`;return`${this.name}.${B}`},this.distributeFieldErrors=(B,z)=>{let Y=this._lastDistributedFieldNames[B]??new Set,X=new Set;if(z)for(let[P,k]of Object.entries(z)){if(k===void 0||k===null||k===!1)continue;X.add(this.buildChildFieldName(P))}let Q=new Set([...Y,...X]),H=!1;for(let P of Q){let k=P.startsWith(this.name+"[")?P.slice(this.name.length):P.slice(this.name.length+1),G=z?.[k],T=this.form.getFieldMeta(P);if(!T&&!G)continue;let K=T?.errorMap[B],U=T?.errorSourceMap[B]==="form",{newErrorValue:W,newSource:w}=H4({newFormValidatorError:G,isPreviousErrorFromFormValidator:U,previousErrorValue:K});if(W)H=!0;if(K===W&&T?.errorSourceMap[B]===w)continue;this.form.setFieldMeta(P,(C)=>({...C,errorMap:{...C.errorMap,[B]:W},errorSourceMap:{...C.errorSourceMap,[B]:w}}))}return this._lastDistributedFieldNames[B]=X,H},this.validateSync=(B,z,Y={})=>{let X=V0(B,{...this.options,form:this.form,group:this,validationLogic:this.options.validationLogic||this.form.options.validationLogic||W0}),H=(Y.skipRelatedFieldValidation?[]:this.getRelatedFields()).reduce((G,T)=>{let K=V0(B,{...T.options,form:T.form,validationLogic:T.form.options.validationLogic||W0});return K.forEach((U)=>{U.field=T}),G.concat(K)},[]),P=!1;f(()=>{let G=(T,K)=>{let U=m4(K.cause),W=T===this,w=void 0;if(K.validate)w=T.runValidator({validate:K.validate,value:{value:T.store.state.value,validationSource:W?"form":"field",...T instanceof o0?{groupApi:T}:{fieldApi:T}},type:"validate"});let C=w,h=void 0;if(W&&Z6(w))C=w.group,h=w.fields;let A=q6(C),E=z[U],{newErrorValue:b,newSource:R}=d0({formLevelError:E,fieldLevelError:A});if(T.state.meta.errorMap?.[U]!==b)T.setMeta((D)=>({...D,errorMap:{...D.errorMap,[U]:b},errorSourceMap:{...D.errorSourceMap,[U]:R}}));if(b)P=!0;if(W){if(this.distributeFieldErrors(U,h))P=!0}};for(let T of X)G(this,T);for(let T of H){if(!T.validate)continue;G(T.field,T)}});let k=m4("submit");if(this.state.meta.errorMap?.[k]&&B!=="submit"&&!P)this.setMeta((G)=>({...G,errorMap:{...G.errorMap,[k]:void 0},errorSourceMap:{...G.errorSourceMap,[k]:void 0}}));return{hasErrored:P}},this.validateAsync=async(B,z,Y={})=>{let X=M0(B,{...this.options,form:this.form,group:this,validationLogic:this.options.validationLogic||this.form.options.validationLogic||W0}),Q=await z,H=Y.skipRelatedFieldValidation?[]:this.getRelatedFields(),P=H.reduce((W,w)=>{let C=M0(B,{...w.options,form:w.form,validationLogic:w.form.options.validationLogic||W0});return C.forEach((h)=>{h.field=w}),W.concat(C)},[]),k=[],G=[],T=X.some((W)=>W.validate)||P.some((W)=>W.validate);if(T){if(!this.state.meta.isValidating)this.setMeta((W)=>({...W,isValidating:!0}));for(let W of H)W.setMeta((w)=>({...w,isValidating:!0}))}let K=(W,w,C)=>{let h=m4(w.cause),A=W.getInfo();A.validationMetaMap[h]?.lastAbortController.abort();let b=new AbortController;A.validationMetaMap[h]={lastAbortController:b};let R=W===this;C.push(new Promise(async(D)=>{let L;try{L=await new Promise((v,M)=>{if(W.timeoutIds.validations[w.cause])clearTimeout(W.timeoutIds.validations[w.cause]);W.timeoutIds.validations[w.cause]=setTimeout(async()=>{if(b.signal.aborted)return v(void 0);try{v(await this.runValidator({validate:w.validate,value:{value:W.store.state.value,signal:b.signal,validationSource:R?"form":"field",...W instanceof o0?{groupApi:W}:{fieldApi:W}},type:"validateAsync"}))}catch(g){M(g)}},w.debounceMs)})}catch(v){L=v}if(b.signal.aborted)return D(void 0);let y=L,V=void 0;if(R&&Z6(L))y=L.group,V=L.fields;let I=q6(y),c=Q[W.name]?.[h],{newErrorValue:i,newSource:r}=d0({formLevelError:c,fieldLevelError:I});if(W.getInfo().instance!==W)return D(void 0);if(W.setMeta((v)=>{return{...v,errorMap:{...v?.errorMap,[h]:i},errorSourceMap:{...v.errorSourceMap,[h]:r}}}),R)this.distributeFieldErrors(h,V);D(i)}))};for(let W of X){if(!W.validate)continue;K(this,W,k)}for(let W of P){if(!W.validate)continue;K(W.field,W,G)}let U=[];if(k.length||G.length)U=await Promise.all(k),await Promise.all(G);if(T){this.setMeta((W)=>({...W,isValidating:!1}));for(let W of H)W.setMeta((w)=>({...w,isValidating:!1}))}return U.filter(Boolean)},this.validateAllFields=async(B)=>{let z=[];return f(()=>{Object.values(this.getRelatedFields()).forEach((X)=>{if(z.push(Promise.resolve().then(()=>X.validate(B,{skipFormValidation:!0,skipGroupValidation:!0}))),!X.store.state.meta.isTouched)X.setMeta((Q)=>({...Q,isTouched:!0}))})}),(await Promise.all(z)).flat()},this.validateArrayFieldsStartingFrom=(B,z,Y)=>{return this.form.validateArrayFieldsStartingFrom(B,z,Y)},this.validateField=(B,z)=>{return this.form.validateField(B,z)},this.getFieldValue=(B)=>{return this.form.getFieldValue(B)},this.getFieldMeta=(B)=>{return this.form.getFieldMeta(B)},this.setFieldMeta=(B,z)=>{return this.form.setFieldMeta(B,z)},this.setFieldValue=(B,z)=>{return this.form.setFieldValue(B,z)},this.deleteField=(B)=>{return this.form.deleteField(B)},this.pushFieldValue=(B,z)=>{return this.form.pushFieldValue(B,z)},this.insertFieldValue=(B,z,Y)=>{return this.form.insertFieldValue(B,z,Y)},this.replaceFieldValue=(B,z,Y)=>{return this.form.replaceFieldValue(B,z,Y)},this.swapFieldValues=(B,z,Y)=>{return this.form.swapFieldValues(B,z,Y)},this.moveFieldValues=(B,z,Y)=>{return this.form.moveFieldValues(B,z,Y)},this.clearFieldValues=(B)=>{return this.form.clearFieldValues(B)},this.resetField=(B)=>{return this.form.resetField(B)},this.removeFieldValue=(B,z)=>{return this.form.removeFieldValue(B,z)},this.areRelatedFieldsValid=()=>{return Object.values(this.getRelatedFields()).every((B)=>B.state.meta.isValid)},this.validate=(B,z)=>{let{fieldsErrorMap:Y}=z?.skipFormValidation?{fieldsErrorMap:{}}:this.form.validateSync(B,{dontUpdateFormErrorMap:!0,filterFieldNames:(H)=>k0(this.name,H)}),{hasErrored:X}=this.validateSync(B,Y[this.name]??{},{skipRelatedFieldValidation:z?.skipRelatedFieldValidation});if(X&&!this.options.asyncAlways)return this.getInfo().validationMetaMap[m4(B)]?.lastAbortController.abort(),this.state.meta.errors;let Q=z?.skipFormValidation?Promise.resolve({}):this.form.validateAsync(B,{dontUpdateFormErrorMap:!0,filterFieldNames:(H)=>k0(this.name,H)});return this.validateAsync(B,Q,{skipRelatedFieldValidation:z?.skipRelatedFieldValidation})},this.triggerOnChangeListener=()=>{let B=this.form.options.listeners?.onChangeGroupDebounceMs;if(B&&B>0){if(this.timeoutIds.formListeners.change)clearTimeout(this.timeoutIds.formListeners.change);this.timeoutIds.formListeners.change=setTimeout(()=>{this.form.options.listeners?.onChangeGroup?.({formApi:this.form,groupApi:this})},B)}else this.form.options.listeners?.onChangeGroup?.({formApi:this.form,groupApi:this});let z=this.options.listeners?.onChangeDebounceMs;if(z&&z>0){if(this.timeoutIds.listeners.change)clearTimeout(this.timeoutIds.listeners.change);this.timeoutIds.listeners.change=setTimeout(()=>{this.options.listeners?.onChange?.({value:this.state.value,groupApi:this})},z)}else this.options.listeners?.onChange?.({value:this.state.value,groupApi:this})},this.triggerOnSubmitListener=()=>{this.options.listeners?.onSubmit?.({value:this.state.value,groupApi:this})},this._handleSubmit=async(B)=>{this.setFormGroupState((X)=>({...X,isSubmitted:!1,submissionAttempts:X.submissionAttempts+1,isSubmitSuccessful:!1})),f(()=>{Object.values(this.getRelatedFields()).forEach((X)=>{if(!X.state.meta.isTouched)X.setMeta((Q)=>({...Q,isTouched:!0}))})});let z=B??this.options.onSubmitMeta;this.setFormGroupState((X)=>({...X,isSubmitting:!0}));let Y=()=>{this.setFormGroupState((X)=>({...X,isSubmitting:!1}))};if(await this.validateAllFields("submit"),!this.areRelatedFieldsValid()){Y(),this.options.onGroupSubmitInvalid?.({value:this.state.value,groupApi:this,meta:z});return}if(await this.validate("submit",{skipRelatedFieldValidation:!0}),!this.areRelatedFieldsValid()||!this.state.meta.isValid){Y(),this.options.onGroupSubmitInvalid?.({value:this.state.value,groupApi:this,meta:z});return}f(()=>{Object.values(this.getRelatedFields()).forEach((X)=>{X.options.listeners?.onGroupSubmit?.({value:X.state.value,fieldApi:X})})}),this.options.listeners?.onSubmit?.({groupApi:this,value:this.state.value});try{await this.options.onGroupSubmit?.({value:this.state.value,groupApi:this,meta:z}),f(()=>{this.setFormGroupState((X)=>({...X,isSubmitted:!0,isSubmitSuccessful:!0})),Y()})}catch(X){throw this.setFormGroupState((Q)=>({...Q,isSubmitSuccessful:!1})),Y(),X}},this.form=N.form,this.name=N.name,this.options=N,this.timeoutIds={validations:{},listeners:{},formListeners:{}},this.fieldInfo={instance:null,validationMetaMap:{onChange:void 0,onBlur:void 0,onSubmit:void 0,onMount:void 0,onServer:void 0,onDynamic:void 0}},this.store=D0((B)=>{this.form.formGroupMetaDerived.get(),this.form.baseStore.get();let z=this.form.getFormGroupMeta(this.name)??g6(N.defaultMeta),Y=this.form.getFieldValue(this.name);if(!z.isTouched&&Y===void 0&&this.options.defaultValue!==void 0&&!Z0(Y,this.options.defaultValue))Y=this.options.defaultValue;if(B&&B.value===Y&&B.meta===z)return B;return{value:Y,meta:z}}),this.handleSubmit=this.handleSubmit.bind(this)}get state(){return this.store.state}runValidator(N){if(q4(N.validate)){let B=y0[N.type](N.value,N.validate);if(N.type==="validate")return F6(B);return B.then(F6)}return N.validate(N.value)}handleSubmit(N){return this._handleSubmit(N)}}function q6(N){if(N)return N;return}function Z6(N){return!!N&&typeof N==="object"&&"fields"in N}function F6(N){if(!N||typeof N!=="object")return N;if(!("form"in N)&&!("fields"in N))return N;let{form:B,fields:z,...Y}=N;return{...Y,group:B,fields:z}}function m4(N){switch(N){case"submit":return"onSubmit";case"blur":return"onBlur";case"mount":return"onMount";case"server":return"onServer";case"dynamic":return"onDynamic";case"change":default:return"onChange"}}function W6(N,B){if(!B)return;let z=Object.assign({},N,{state:n0(N.state)});if(B(z),z.fieldInfo!==N.fieldInfo)N.fieldInfo=z.fieldInfo;if(z.options!==N.options)N.options=z.options;let X=Object.keys({values:null,validationMetaMap:null,fieldMetaBase:null,formGroupStateBase:null,isSubmitting:null,isSubmitted:null,isValidating:null,submissionAttempts:null,isSubmitSuccessful:null,_force_re_eval:null}).reduce((Q,H)=>{if(N.state[H]!==z.state[H])Q[H]=z.state[H];return Q},{});return f(()=>{if(Object.keys(X).length)N.baseStore.setState((Q)=>({...Q,...X}));if(z.state.errorMap!==N.state.errorMap)N.setErrorMap(z.state.errorMap)}),z}var U6=e(N0(),1);function _N(N,B){return N===B}function _6(N,B=(Y)=>Y,z){let Y=z?.compare??_N,X=U6.useCallback((H)=>{let{unsubscribe:P}=N.subscribe(H);return P},[N]),Q=U6.useCallback(()=>N.get(),[N]);return m6(X,Q,Q,B,Y)}var _=(N,B=(Y)=>Y,z)=>_6(N,B,{compare:z});var t0=e(N0(),1);var Z4=e(N0(),1);var _4=e(N0(),1),R0=typeof window<"u"?_4.useLayoutEffect:_4.useEffect;function xN(N){let[B,z]=Z4.useState(()=>({form:N.form,name:N.name})),[Y,X]=Z4.useState(()=>{return new $0({...N})});if(B.form!==N.form||B.name!==N.name)X(new $0({...N})),z({form:N.form,name:N.name});let Q=_(Y.store,N.mode==="array"?(W)=>W.meta._arrayVersion||0:(W)=>W.value),H=_(Y.store,(W)=>W.meta.isTouched),P=_(Y.store,(W)=>W.meta.isBlurred),k=_(Y.store,(W)=>W.meta.isDirty),G=_(Y.store,(W)=>W.meta.errorMap),T=_(Y.store,(W)=>W.meta.errorSourceMap),K=_(Y.store,(W)=>W.meta.isValidating),U=Z4.useMemo(()=>{return{...Y,get state(){return{value:N.mode==="array"?Y.state.value:Q,get meta(){return{...Y.state.meta,isTouched:H,isBlurred:P,isDirty:k,errorMap:G,errorSourceMap:T,isValidating:K}}}}}},[Y,N.mode,Q,H,P,k,G,T,K]);return R0(Y.mount,[Y]),R0(()=>{Y.update(N)}),U}var x6=({children:N,...B})=>{let z=xN(B),Y=Z4.useMemo(()=>E0(N,z),[N,z]);return J(X0,{children:Y})};var P6=e(N0(),1);var c6=e(N0(),1);function j6(){return c6.useState(()=>R4())[0]}var cN=P6,$6=P6.version.split(".")[0]==="17"?j6:cN.useId;var W4=e(N0(),1);function jN(N){let[B,z]=W4.useState(()=>({form:N.form,name:N.name})),[Y,X]=W4.useState(()=>{return new o0({...N})});if(B.form!==N.form||B.name!==N.name)X(new o0({...N})),z({form:N.form,name:N.name});let Q=_(Y.store,(L)=>L.value),H=_(Y.store,(L)=>L.meta.isTouched),P=_(Y.store,(L)=>L.meta.isBlurred),k=_(Y.store,(L)=>L.meta.isDirty),G=_(Y.store,(L)=>L.meta.errorMap),T=_(Y.store,(L)=>L.meta.errorSourceMap),K=_(Y.store,(L)=>L.meta.isValidating),U=_(Y.store,(L)=>L.meta.isSubmitting),W=_(Y.store,(L)=>L.meta.isSubmitted),w=_(Y.store,(L)=>L.meta.submissionAttempts),C=_(Y.store,(L)=>L.meta.isSubmitSuccessful),h=_(Y.store,(L)=>L.meta.canSubmit),A=_(Y.store,(L)=>L.meta.isValid),E=_(Y.store,(L)=>L.meta.isFieldsValid),b=_(Y.store,(L)=>L.meta.isFieldsValidating),R=_(Y.store,(L)=>L.meta.isGroupValid),D=W4.useMemo(()=>{return{...Y,handleSubmit:(...V)=>{return Y._handleSubmit(...V)},get state(){return{...Y.state,value:Q,get meta(){return{...Y.state.meta,isTouched:H,isBlurred:P,isDirty:k,errorMap:G,errorSourceMap:T,isValidating:K,isSubmitting:U,isSubmitted:W,submissionAttempts:w,isSubmitSuccessful:C,canSubmit:h,isValid:A,isFieldsValid:E,isFieldsValidating:b,isGroupValid:R}}}}}},[Y,Q,H,P,k,G,T,K,U,W,w,C,h,A,E,b,R]);return R0(Y.mount,[Y]),R0(()=>{Y.update(N)}),D}var v6=({children:N,...B})=>{let z=jN(B),Y=W4.useMemo(()=>E0(N,z),[N,z]);return J(X0,{children:Y})};function $N({form:N,selector:B=(Y)=>Y,children:z}){let Y=_(N.store,B);return J(X0,{children:E0(z,Y)})}function h4(N){let B=$6(),[z,Y]=t0.useState(N?.formId),[X,Q]=t0.useState(()=>{return new A4({...N,formId:N?.formId??B})});if(z!==N?.formId){let k=N?.formId??B;Q(new A4({...N,formId:k})),Y(k)}let H=t0.useMemo(()=>{let k={...X,handleSubmit:(...G)=>{return X._handleSubmit(...G)},get formId(){return X._formId},get state(){return X.store.state}};return k.Field=function(T){return J(x6,{...T,form:X})},k.FormGroup=function(T){return J(v6,{...T,form:X})},k.Subscribe=function(T){return J($N,{form:X,selector:T.selector,children:T.children})},k},[X]);R0(X.mount,[]),R0(()=>{X.update(N)});let P=t0.useRef(!1);return R0(()=>{if(!P.current)return;if(!N?.transform)return;W6(X,N.transform)},[X,N?.transform]),R0(()=>{P.current=!0}),H}var c4=e(N0(),1);function f6({className:N,...B}){return J("textarea",{"data-slot":"textarea",className:j("flex field-sizing-content min-h-16 w-full rounded-md border border-input bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:aria-invalid:ring-destructive/40",N),...B})}var x4=["data:image/webp;base64,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","data:image/webp;base64,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","data:image/webp;base64,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","data:image/webp;base64,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"];var vN=a.object({name:a.string().min(1,q.name_is_required()),type:a.enum(["chat","autofill","embedding"]),avatar:a.string().optional(),providerId:a.string().optional(),modelId:a.string().optional(),soul:a.string().optional(),thinkingLevel:w6.optional(),systemPrompt:a.string().optional(),skills:a.array(a.string()).optional()});function u6({isOpen:N,onClose:B,teamId:z,type:Y,initialValues:X,title:Q}){let H=s(),{data:P}=u({queryKey:["teams",z,"providers"],queryFn:async()=>{let R=await S.api.teams[":teamId"].providers.$get({param:{teamId:z}});if(!R.ok)throw Error("Failed to fetch providers");return await R.json()},enabled:N}),{data:k}=u({queryKey:["teams",z,"skills"],queryFn:async()=>{let R=await S.api.teams[":teamId"].skills.$get({param:{teamId:z}});if(!R.ok)throw Error("Failed to fetch skills");return await R.json()},enabled:N}),G=k?.skills||[],T=c4.useMemo(()=>{return vN.superRefine((R,D)=>{if(R.type==="chat"||R.type==="autofill"){if(!R.providerId)D.addIssue({code:a.ZodIssueCode.custom,message:q.provider_is_required(),path:["providerId"]});if(!R.modelId)D.addIssue({code:a.ZodIssueCode.custom,message:q.model_is_required(),path:["modelId"]})}})},[]),K=h4({defaultValues:{name:X?.name||"",type:X?.type||Y||"chat",avatar:X?.avatar||x4[0],providerId:X?.providerId||"",modelId:X?.modelId||"",soul:X?.soul||"",thinkingLevel:X?.thinkingLevel||"off",systemPrompt:X?.systemPrompt||"",skills:X?.skills?.map((R)=>R.skillId)||[]},validators:{onChange:T},onSubmit:async({value:R})=>{try{if(X?.id)await h.mutateAsync({id:X.id,values:R});else await C.mutateAsync(R)}catch{}}}),U=_(K.store,(R)=>R.values.providerId),{data:W,isLoading:w}=u({queryKey:["teams",z,"providers",U,"models"],queryFn:async()=>{let R=await S.api.providers[":id"].models.$get({param:{id:U}});if(!R.ok)throw Error("Failed to fetch models");return await R.json()},enabled:!!U&&N}),C=n({mutationFn:async(R)=>{let D=await S.api.teams[":teamId"].agents.$post({param:{teamId:z},json:R});if(!D.ok)throw Error("Failed to create agent");return await D.json()},onSuccess:()=>{B(),H.invalidateQueries({queryKey:["agents",z]}),F.success(q.agent_created_successfully())},onError:(R)=>{F.error(q.error_message({message:R.message}))}}),h=n({mutationFn:async({id:R,values:D})=>{let L=await S.api.agents[":agentId"].$put({param:{agentId:R},json:D});if(!L.ok)throw Error("Failed to update agent");return await L.json()},onSuccess:()=>{B(),H.invalidateQueries({queryKey:["agents",z]}),F.success(q.agent_updated_successfully())},onError:(R)=>{F.error(q.error_message({message:R.message}))}});c4.useEffect(()=>{if(N)K.reset()},[N,X,Y]);let A=_(K.store,(R)=>R.values.type),E=A==="chat"||A==="autofill",b=(R)=>{return R.map((D)=>{if(typeof D==="string")return{message:D};if(D&&typeof D==="object"&&"message"in D)return{message:String(D.message)};return{message:String(D||"")}})};return J(_0,{open:N,onOpenChange:B,children:Z(x0,{className:"sm:max-w-3xl h-[90vh] flex flex-col p-0 overflow-hidden",children:[Z(c0,{className:"p-6 pb-2 flex-shrink-0",children:[J(j0,{children:Q}),J(l0,{children:q.configure_agent_description()})]}),Z("form",{onSubmit:(R)=>{R.preventDefault(),R.stopPropagation(),K.handleSubmit()},className:"flex-1 flex flex-col min-h-0 overflow-hidden",children:[J(L0,{className:"flex-1 min-h-0",children:Z("div",{className:"p-6 pt-2 space-y-6",children:[Z("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6",children:[J(K.Field,{name:"name",children:(R)=>{let D=!!R.state.meta.errors.length&&R.state.meta.isTouched;return Z(p,{"data-invalid":D,children:[J(d,{children:q.agent_name()}),J($,{value:R.state.value,onBlur:R.handleBlur,onChange:(L)=>R.handleChange(L.target.value),placeholder:q.agent_name_placeholder(),"aria-invalid":D}),D&&J(B0,{errors:b(R.state.meta.errors)})]})}}),J(K.Field,{name:"type",children:(R)=>Z(p,{children:[J(d,{children:q.agent_type()}),Z(S0,{value:R.state.value,onValueChange:(D)=>R.handleChange(D),disabled:!0,children:[J(g0,{className:"bg-muted/50",children:J(F0,{})}),Z(m0,{children:[J(w0,{value:"chat",children:q.agent_type_chat()}),J(w0,{value:"autofill",children:q.agent_type_autofill()}),J(w0,{value:"embedding",children:q.agent_type_embedding()})]})]})]})}),J(K.Field,{name:"avatar",children:(R)=>Z(p,{className:"md:col-span-2",children:[J(d,{children:q.agent_avatar()}),Z("div",{className:"flex gap-4 mt-2",children:[x4.map((D)=>{let L=R.state.value===D;return J("button",{type:"button",onClick:()=>R.handleChange(D),className:j("relative w-14 h-14 rounded-full overflow-hidden border-2 transition-all hover:scale-105",L?"border-primary ring-2 ring-primary ring-offset-2":"border-border hover:border-muted-foreground"),children:J("img",{src:D,className:"w-full h-full object-cover",alt:q.preset_avatar_option()})},D)}),R.state.value&&!x4.includes(R.state.value)&&J("button",{type:"button",className:"relative w-14 h-14 rounded-full overflow-hidden border-2 border-primary ring-2 ring-primary ring-offset-2 scale-105",children:J("img",{src:R.state.value,className:"w-full h-full object-cover",alt:q.current_custom_avatar()})})]})]})})]}),E&&Z(X0,{children:[Z("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6 p-4 bg-muted/50 rounded-xl border border-border",children:[J(K.Field,{name:"providerId",children:(R)=>{let D=!!R.state.meta.errors.length&&R.state.meta.isTouched;return Z(p,{"data-invalid":D,children:[J(d,{children:q.provider()}),Z(S0,{value:R.state.value,onValueChange:(L)=>{R.handleChange(L),K.setFieldValue("modelId","")},children:[J(g0,{"aria-invalid":D,children:J(F0,{placeholder:q.select_provider()})}),J(m0,{children:P?.map((L)=>J(w0,{value:L.id,children:L.name},L.id))})]}),D&&J(B0,{errors:b(R.state.meta.errors)})]})}}),J(K.Field,{name:"modelId",children:(R)=>{let D=!!R.state.meta.errors.length&&R.state.meta.isTouched;return Z(p,{"data-invalid":D,children:[Z(d,{className:"flex items-center gap-2",children:[q.model(),w&&J(x,{className:"w-3 h-3 animate-spin"})]}),Z(S0,{value:R.state.value,onValueChange:R.handleChange,disabled:!U||w,children:[J(g0,{"aria-invalid":D,children:J(F0,{placeholder:q.select_model()})}),J(m0,{children:W?.map((L)=>J(w0,{value:L.id,children:L.name||L.modelId},L.id))})]}),D&&J(B0,{errors:b(R.state.meta.errors)})]})}}),J("div",{className:"md:col-span-2",children:J(K.Field,{name:"thinkingLevel",children:(R)=>{let D={off:q.thinking_disable(),low:q.thinking_low(),medium:q.thinking_medium(),high:q.thinking_high()};return Z(p,{children:[J(d,{children:q.thinking_level()}),Z(S0,{value:R.state.value,onValueChange:(L)=>R.handleChange(L),children:[J(g0,{children:J(F0,{})}),J(m0,{children:w6.options.map((L)=>J(w0,{value:L,children:D[L]||L},L))})]})]})}})})]}),J(K.Field,{name:"soul",children:(R)=>Z(p,{children:[J(d,{children:q.agent_soul()}),J(f6,{value:R.state.value,onBlur:R.handleBlur,onChange:(D)=>R.handleChange(D.target.value),placeholder:q.agent_soul_placeholder(),className:"min-h-[120px]"})]})}),Z("div",{className:"space-y-4",children:[Z(T0,{className:"text-base font-bold flex items-center gap-2",children:[J(b0,{className:"w-5 h-5 text-primary"}),q.skills()]}),J("div",{className:"space-y-2",children:J(K.Field,{name:"skills",children:(R)=>Z(X0,{children:[G.map((D)=>{let L=R.state.value?.includes(D.id)||!1;return Z("div",{className:"flex items-center justify-between p-3 bg-muted/30 border border-border rounded-lg",children:[Z("div",{className:"flex items-center gap-3",children:[J(b0,{className:"w-4 h-4 text-muted-foreground"}),Z("div",{className:"flex flex-col",children:[J("span",{className:"text-sm font-medium",children:D.name}),D.description&&J("span",{className:"text-[10px] text-muted-foreground line-clamp-1",children:D.description})]})]}),Z("div",{className:"flex items-center gap-2",children:[J("span",{className:"text-xs text-muted-foreground",children:L?q.enabled():q.disabled()}),J(U0,{checked:L,onCheckedChange:(y)=>{if(y)R.handleChange([...R.state.value||[],D.id]);else R.handleChange((R.state.value||[]).filter((V)=>V!==D.id))}})]})]},D.id)}),G.length===0&&J("div",{className:"text-center py-8 border-2 border-dashed border-border rounded-xl",children:J("p",{className:"text-sm text-muted-foreground",children:q.no_skills_available()})})]})})})]})]})]})}),Z(v0,{className:"p-6 pt-4 border-t border-border flex-shrink-0",children:[J(m,{variant:"outline",onClick:B,type:"button",children:q.cancel()}),J(K.Subscribe,{selector:(R)=>[R.canSubmit,R.isSubmitting],children:([R,D])=>Z(m,{type:"submit",className:"bg-primary hover:bg-primary/90 text-primary-foreground min-w-[120px]",disabled:!R||D||C.isPending||h.isPending,children:[(D||C.isPending||h.isPending)&&J(x,{className:"w-4 h-4 animate-spin mr-2"}),X?q.save_changes():q.create_agent()]})})]})]})]})})}var fN=[{type:"chat",label:"Chat",icon:D4},{type:"autofill",label:"Autofill",icon:$4},{type:"embedding",label:"Embedding",icon:s0}];function p6({teamId:N}){let B=s(),[z,Y]=a0.useState(!1),[X,Q]=a0.useState("chat"),[H,P]=a0.useState(null),[k,G]=a0.useState(null),[T,K]=a0.useState(!1),[U,W]=a0.useState({chat:!0,autofill:!0,embedding:!0}),w=(R)=>{if(R==="chat")return q.agent_type_chat();if(R==="autofill")return q.agent_type_autofill();return q.agent_type_embedding()},{data:C=[],isLoading:h}=u({queryKey:["agents",N],queryFn:async()=>{let R=await S.api.teams[":teamId"].agents.$get({param:{teamId:N}});if(!R.ok)throw Error("failed to fetch agents");return[...await R.json()].sort((L,y)=>y.id.localeCompare(L.id))}}),A=n({mutationFn:async(R)=>{if(!(await S.api.agents[":agentId"].$delete({param:{agentId:R}})).ok)throw Error("failed to delete agent")},onSuccess:()=>{K(!1),B.invalidateQueries({queryKey:["agents",N]}),F.success(q.agent_deleted_successfully())},onError:(R)=>{F.error(R.message)}}),E=n({mutationFn:async(R)=>{let D=await S.api.agents[":agentId"].$put({param:{agentId:R.agentId},json:{name:R.name,type:R.type,enabled:R.enabled,avatar:R.avatar,providerId:R.providerId,modelId:R.modelId,thinkingLevel:R.thinkingLevel,systemPrompt:R.systemPrompt,soul:R.soul,skills:R.skills}});if(!D.ok)throw Error("failed to update agent");return D.json()},onSuccess:()=>{B.invalidateQueries({queryKey:["agents",N]}),F.success(q.agent_updated_successfully())},onError:(R)=>{F.error(R.message)}}),b=(R)=>{W((D)=>({...D,[R]:!D[R]}))};return Z(X0,{children:[(z||H)&&J(u6,{isOpen:!0,title:H?q.edit_item({name:H.name}):q.create_type_agent({type:w(X)}),onClose:()=>{Y(!1),P(null)},teamId:N,type:X,initialValues:H||void 0}),J(i0,{open:T,onOpenChange:K,children:Z(r0,{children:[Z(e0,{children:[J(J4,{children:q.are_you_absolutely_sure()}),J(B4,{children:q.delete_agent_confirmation({name:k?.name??""})})]}),Z(N4,{children:[J(z4,{children:q.cancel()}),J(X4,{className:"bg-destructive hover:bg-destructive/90 text-white",onClick:(R)=>{if(A.isPending){R.preventDefault();return}if(k)A.mutate(k.id)},children:A.isPending?J(x,{className:"w-4 h-4 animate-spin"}):q.delete_agent()})]})]})}),h&&C.length===0?J("div",{className:"flex items-center justify-center p-12",children:J(x,{className:"w-8 h-8 animate-spin text-muted-foreground"})}):Z("div",{className:"space-y-6 max-w-5xl mx-auto relative",children:[h&&J("div",{className:"absolute top-0 right-0 p-2",children:J(x,{className:"w-4 h-4 animate-spin text-muted-foreground"})}),fN.map((R)=>{let D=C.filter((V)=>V.type===R.type),L=R.icon,y=R.type==="autofill"||R.type==="embedding";return Z("div",{className:"bg-card rounded-xl border border-border overflow-hidden",children:[Z("div",{className:j("px-6 py-4 flex items-center justify-between",!y&&"cursor-pointer hover:bg-muted/50 transition-colors"),onClick:!y?()=>b(R.type):void 0,children:[Z("div",{className:"flex items-center gap-2",children:[J("h3",{className:"font-semibold text-foreground",children:R.type==="chat"?q.chat_agents():R.type==="autofill"?q.autofill_agent():q.embedding_agent()}),!y&&J(v4,{variant:"secondary",className:"h-5 px-1.5 min-w-[1.25rem] text-[10px]",children:D.length})]}),Z("div",{className:"flex items-center gap-2",children:[!(y&&D.length>0)&&J(m,{variant:"ghost",size:"icon",className:"h-8 w-8 rounded-full bg-primary/10 text-primary hover:bg-primary/20",onClick:(V)=>{V.stopPropagation(),Q(R.type),Y(!0)},children:J(K0,{className:"w-4 h-4"})}),!y&&J(n6,{className:j("w-5 h-5 text-muted-foreground transition-transform duration-200",U[R.type]?"rotate-180":"")})]})]}),(y||U[R.type])&&J("div",{className:"px-6 pb-6 pt-2 space-y-3",children:Z("div",{className:"grid grid-cols-1 gap-4",children:[D.map((V)=>J(o,{className:"group relative overflow-hidden border-border hover:border-primary/50 transition-all duration-200 cursor-pointer",onClick:()=>P(V),children:Z(l,{className:"p-4 flex items-center justify-between",children:[Z("div",{className:"flex items-center gap-3 min-w-0 flex-1",children:[J("div",{className:"w-10 h-10 rounded-full bg-muted flex items-center justify-center overflow-hidden",children:V.avatar?J("img",{src:V.avatar,className:"w-full h-full object-cover",alt:""}):J(j4,{className:"w-6 h-6 text-muted-foreground"})}),Z("div",{className:"min-w-0 flex-1",children:[J("span",{className:"font-bold text-foreground block truncate",children:V.name}),J("div",{className:"flex items-center gap-2 text-xs text-muted-foreground mt-0.5",children:Z("span",{className:"flex items-center gap-1",children:[J(b0,{className:"w-3 h-3"}),q.skills_count_value({count:V.skills?.length||0})]})})]})]}),Z("div",{className:"flex items-center gap-1",children:[J("div",{className:"mr-2",onClick:(I)=>I.stopPropagation(),children:J(U0,{checked:V.enabled,onCheckedChange:(I)=>{E.mutate({teamId:N,agentId:V.id,name:V.name,type:V.type,enabled:I,avatar:V.avatar,providerId:V.providerId,modelId:V.modelId,thinkingLevel:V.thinkingLevel,systemPrompt:V.systemPrompt,soul:V.soul,skills:V.skills?.map((c)=>c.skillId)})}})}),Z(P4,{modal:!1,children:[J(w4,{asChild:!0,onClick:(I)=>I.stopPropagation(),children:J(m,{variant:"ghost",size:"icon",className:"h-8 w-8 text-muted-foreground hover:text-foreground",children:J(U4,{className:"w-4 h-4"})})}),J(K4,{align:"end",className:"w-32",children:Z(G4,{onClick:(I)=>{I.stopPropagation(),G(V),K(!0)},className:"text-red-500 focus:text-red-500 gap-2 cursor-pointer",children:[J(P0,{className:"w-4 h-4"})," ",q.delete()]})})]})," "]})]})},V.id)),D.length===0&&Z("div",{className:"col-span-full py-8 flex flex-col items-center justify-center border-2 border-dashed border-border rounded-xl bg-muted/30",children:[J("div",{className:"w-10 h-10 rounded-full bg-card flex items-center justify-center shadow-sm mb-3",children:J(L,{className:"w-5 h-5 text-muted-foreground"})}),J("p",{className:"text-sm text-muted-foreground",children:q.no_agents_found({type:w(R.type)})}),J(m,{variant:"link",size:"sm",className:"text-primary font-medium h-auto p-0 mt-1",onClick:()=>{Q(R.type),Y(!0)},children:q.create_one_now()})]})]})})]},R.type)})]})]})}var q0=e(N0(),1);var uN={"openai-completions":"OpenAI Completions","mistral-conversations":"Mistral Conversations","openai-responses":"OpenAI Responses","azure-openai-responses":"Azure OpenAI Responses","openai-codex-responses":"OpenAI Codex Responses","anthropic-messages":"Anthropic Messages","bedrock-converse-stream":"AWS Bedrock","google-generative-ai":"Google Generative AI","google-vertex":"Google Vertex"},nN=a.object({name:a.string().min(1,q.provider_name_is_required()),config:i6,models:a.array(s6).min(1,q.at_least_one_model_required())});function r6({teamId:N}){let B=s(),[z,Y]=q0.useState(null),[X,Q]=q0.useState(!1),[H,P]=q0.useState(""),[k,G]=q0.useState(!1),[T,K]=q0.useState(null),{data:U,isLoading:W}=u({queryKey:["teams",N,"providers"],queryFn:async()=>{let L=await S.api.teams[":teamId"].providers.$get({param:{teamId:N}});if(!L.ok)throw Error("Failed to fetch providers");return await L.json()}}),w=q0.useMemo(()=>U?.find((L)=>L.id===z)||null,[U,z]),{data:C,isLoading:h}=u({queryKey:["teams",N,"providers",z,"models"],queryFn:async()=>{let L=await S.api.providers[":id"].models.$get({param:{id:z}});if(!L.ok)throw Error("Failed to fetch models");return await L.json()},enabled:!!z}),A=q0.useMemo(()=>U?.map((L)=>L.name)||[],[U]),E=q0.useMemo(()=>{if(!U)return[];if(!H.trim())return U;let L=H.toLowerCase();return U.filter((y)=>y.name.toLowerCase().includes(L))},[U,H]),b=n({mutationFn:async(L)=>{let y=await S.api.teams[":teamId"].providers.$post({param:{teamId:N},json:{name:L.name,config:L.config,models:L.models}});if(!y.ok)throw Error("Failed to create provider");return await y.json()},onSuccess:()=>{B.invalidateQueries({queryKey:["teams",N,"providers"]}),Q(!1),F.success(q.provider_created_successfully())},onError:(L)=>{F.error(q.error_message({message:L.message}))}}),R=n({mutationFn:async({id:L,values:y})=>{let V=await S.api.providers[":id"].$put({param:{id:L},json:{config:y.config,models:y.models}});if(!V.ok)throw Error("Failed to update provider");return await V.json()},onSuccess:()=>{B.invalidateQueries({queryKey:["teams",N,"providers"]}),Y(null),F.success(q.provider_updated_successfully())},onError:(L)=>{F.error(q.error_message({message:L.message}))}}),D=n({mutationFn:async(L)=>{let y=await S.api.providers[":id"].$delete({param:{id:L}});if(!y.ok)throw Error("Failed to delete provider");return await y.json()},onSuccess:()=>{B.invalidateQueries({queryKey:["teams",N,"providers"]}),Y(null),G(!1),K(null),F.success(q.provider_deleted_successfully())},onError:(L)=>{F.error(q.error_message({message:L.message}))}});if(W)return J("div",{className:"flex h-64 items-center justify-center",children:J(x,{className:"h-8 w-8 animate-spin text-primary"})});return Z("div",{className:"h-full flex flex-col space-y-0",children:[Z("div",{className:"flex-none space-y-4 pb-4",children:[Z("div",{className:"flex items-center justify-between",children:[Z("h3",{className:"text-lg font-semibold text-foreground flex items-center gap-2",children:[J(s0,{className:"w-5 h-5 text-primary"}),q.configured_ai_providers()]}),Z(m,{onClick:()=>Q(!0),className:"bg-primary hover:bg-primary/90 text-primary-foreground gap-2",children:[J(K0,{className:"w-4 h-4"}),q.add_provider()]})]}),Z("div",{className:"relative px-0.5",children:[J(G6,{className:"absolute left-3.5 top-1/2 -translate-y-1/2 w-4 h-4 text-muted-foreground"}),J($,{placeholder:q.search_providers_placeholder(),value:H,onChange:(L)=>P(L.target.value),className:"pl-10 bg-card border-border focus-visible:ring-2 focus-visible:ring-primary focus-visible:ring-offset-0"})]})]}),J(L0,{className:"flex-1 min-h-0",children:Z("div",{className:"pr-4 py-2 grid grid-cols-1 gap-4",children:[E.map((L)=>J(o,{className:"group cursor-pointer hover:border-primary/50 transition-all hover:shadow-md overflow-hidden",onClick:()=>Y(L.id),children:Z(l,{className:"p-5 flex items-center justify-between gap-4",children:[Z("div",{className:"flex items-center gap-4 min-w-0 flex-1",children:[J("div",{className:"flex-none p-3 bg-muted rounded-xl group-hover:bg-primary/10 transition-colors",children:J(f4,{className:"w-6 h-6 text-muted-foreground group-hover:text-primary"})}),Z("div",{className:"min-w-0 flex-1",children:[Z("div",{className:"flex items-center gap-2",children:[J("span",{className:"font-bold text-foreground truncate",children:L.name}),L.isBuiltin&&J(v4,{variant:"secondary",className:"flex-none text-[10px] uppercase tracking-wider font-bold h-5",children:q.built_in()})]}),Z("div",{className:"flex flex-wrap items-center gap-x-3 gap-y-1.5 text-xs text-muted-foreground mt-1",children:[Z("span",{className:"flex items-center gap-1 flex-none",children:[J($4,{className:"w-3 h-3"}),L.config.api]}),L.config.baseUrl&&Z("span",{className:"flex items-center gap-1 min-w-0",children:[J("span",{className:"h-1 w-1 rounded-full bg-muted-foreground/30 flex-none"}),J(t6,{className:"w-3 h-3 flex-none"}),J("span",{className:"truncate max-w-[200px] md:max-w-[300px]",children:L.config.baseUrl})]}),Z("span",{className:"flex items-center gap-1 flex-none",children:[J("span",{className:"h-1 w-1 rounded-full bg-muted-foreground/30 flex-none"}),J(l6,{className:"w-3 h-3"}),q.n_models_count({count:L.modelsCount}),z===L.id&&h&&J(x,{className:"w-3 h-3 animate-spin ml-1"})]})]})]})]}),Z("div",{className:"flex items-center gap-1",children:[Z(P4,{children:[J(w4,{asChild:!0,onClick:(y)=>y.stopPropagation(),children:J(m,{variant:"ghost",size:"icon",className:"h-8 w-8 text-muted-foreground hover:text-foreground",children:J(U4,{className:"w-4 h-4"})})}),J(K4,{align:"end",className:"w-32",children:Z(G4,{onClick:(y)=>{y.stopPropagation(),K(L),G(!0)},className:"text-destructive focus:text-destructive gap-2 cursor-pointer",children:[J(P0,{className:"w-4 h-4"})," ",q.delete()]})})]}),J(o6,{className:"flex-none w-5 h-5 text-muted-foreground/50 group-hover:text-primary transition-colors"})]})]})},L.id)),U?.length===0&&Z("div",{className:"text-center py-12 bg-muted/30 rounded-2xl border-2 border-dashed border-border",children:[J(s0,{className:"w-12 h-12 text-muted-foreground/50 mx-auto mb-4"}),J("h4",{className:"text-foreground font-medium",children:q.no_providers_configured()}),J("p",{className:"text-sm text-muted-foreground mt-1",children:q.add_first_provider()})]}),U&&U.length>0&&E.length===0&&Z("div",{className:"text-center py-12",children:[J(G6,{className:"w-12 h-12 text-muted-foreground/50 mx-auto mb-4"}),J("h4",{className:"text-foreground font-medium",children:q.no_matches_found()}),J("p",{className:"text-sm text-muted-foreground mt-1",children:q.try_adjusting_search({query:H})}),J(m,{variant:"ghost",size:"sm",onClick:()=>P(""),className:"mt-4 text-primary hover:text-primary/90 hover:bg-primary/10",children:q.clear_search()})]})]})}),J(d6,{isOpen:X,onClose:()=>Q(!1),onSubmit:(L)=>b.mutate(L),isLoading:b.isPending,title:q.add_new_provider(),existingProviderNames:A}),J(d6,{isOpen:!!w&&!h&&!!C,onClose:()=>Y(null),onSubmit:(L)=>R.mutate({id:w.id,values:L}),onDelete:()=>D.mutate(w.id),isLoading:R.isPending||D.isPending,initialValues:w&&C?{name:w.name,config:w.config,models:C}:void 0,isBuiltin:w?.isBuiltin,title:w?q.edit_item({name:w.name}):"",existingProviderNames:A}),J(i0,{open:k,onOpenChange:G,children:Z(r0,{children:[Z(e0,{children:[J(J4,{children:q.are_you_absolutely_sure()}),J(B4,{children:q.delete_provider_confirmation({name:T?.name??""})})]}),Z(N4,{children:[J(z4,{onClick:()=>K(null),children:q.cancel()}),Z(X4,{className:"bg-destructive hover:bg-destructive/90 text-destructive-foreground",onClick:()=>{if(T)D.mutate(T.id)},children:[D.isPending?J(x,{className:"w-4 h-4 animate-spin mr-2"}):J(P0,{className:"w-4 h-4 mr-2"}),q.delete()]})]})]})})]})}function d6({isOpen:N,onClose:B,onSubmit:z,onDelete:Y,isLoading:X,initialValues:Q,isBuiltin:H,title:P,existingProviderNames:k}){let[G,T]=q0.useState(!1),K=q0.useMemo(()=>{return nN.extend({name:a.string().min(1,"Provider name is required").refine((w)=>{if(Q?.name===w)return!0;return!k.includes(w)},{message:"Provider name must be unique"})})},[k,Q]),U=h4({defaultValues:Q||{name:"",config:{api:"openai-completions",baseUrl:"",apiKey:""},models:[{modelId:"",name:"",config:{api:"openai-completions",reasoning:!1,input:["text"],contextWindow:128000,maxTokens:4096,cost:{input:0,output:0,cacheRead:0,cacheWrite:0}}}]},validators:{onChange:K},onSubmit:async({value:w})=>{z(w)}});q0.useEffect(()=>{if(N)U.reset()},[N,U]);let W=(w)=>{return w.map((C)=>{if(typeof C==="string")return{message:C};if(C&&typeof C==="object"&&"message"in C)return{message:String(C.message)};return{message:String(C||"")}})};return Z(_0,{open:N,onOpenChange:B,children:[Z(x0,{className:"sm:max-w-4xl h-[90vh] flex flex-col p-0 overflow-hidden",children:[Z(c0,{className:"p-6 pb-2 shrink-0",children:[J(j0,{className:"text-xl",children:P}),J(l0,{children:q.configure_provider_description()})]}),Z("form",{onSubmit:(w)=>{w.preventDefault(),w.stopPropagation(),U.handleSubmit()},className:"flex-1 flex flex-col min-h-0 overflow-hidden",children:[J("div",{className:"flex-1 min-h-0",children:J(L0,{className:"h-full",children:Z("div",{className:"p-6 pt-2 space-y-8 pr-6",children:[Z("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6 p-6 rounded-2xl border",children:[J(U.Field,{name:"name",children:(w)=>{let C=!!w.state.meta.errors.length&&w.state.meta.isTouched;return Z(p,{"data-invalid":C,children:[J(d,{htmlFor:w.name,children:q.provider_name()}),J($,{id:w.name,name:w.name,value:w.state.value,onBlur:w.handleBlur,onChange:(h)=>w.handleChange(h.target.value),placeholder:q.provider_name_placeholder(),disabled:H,"aria-invalid":C}),C&&J(B0,{errors:W(w.state.meta.errors)})]})}}),J(U.Field,{name:"config.api",children:(w)=>{let C=!!w.state.meta.errors.length&&w.state.meta.isTouched;return Z(p,{"data-invalid":C,children:[J(d,{htmlFor:w.name,children:q.global_api_protocol()}),Z(S0,{onValueChange:w.handleChange,value:w.state.value,disabled:H,children:[J(g0,{id:w.name,"aria-invalid":C,children:J(F0,{placeholder:q.select_api_protocol()})}),J(m0,{children:a6.map((h)=>J(w0,{value:h,children:uN[h]},h))})]}),C&&J(B0,{errors:W(w.state.meta.errors)})]})}}),J("div",{className:"md:col-span-2",children:J(U.Field,{name:"config.baseUrl",children:(w)=>{let C=!!w.state.meta.errors.length&&w.state.meta.isTouched;return Z(p,{"data-invalid":C,children:[J(d,{htmlFor:w.name,children:q.base_url_optional()}),J($,{id:w.name,name:w.name,value:w.state.value||"",onBlur:w.handleBlur,onChange:(h)=>w.handleChange(h.target.value),placeholder:"https://api.openai.com/v1","aria-invalid":C}),J(l4,{children:q.override_default_endpoint()}),C&&J(B0,{errors:W(w.state.meta.errors)})]})}})})]}),J(o,{className:"rounded-2xl border bg-transparent",children:J(l,{className:"p-6 pt-2",children:J(U.Field,{name:"config.apiKey",children:(w)=>{let C=!!w.state.meta.errors.length&&w.state.meta.isTouched;return Z(p,{"data-invalid":C,children:[J(d,{htmlFor:w.name,className:"text-base font-semibold",children:q.api_key()}),J($,{id:w.name,name:w.name,type:"text",value:w.state.value||"",onBlur:w.handleBlur,onChange:(h)=>w.handleChange(h.target.value),placeholder:q.api_key_placeholder(),"aria-invalid":C}),J(l4,{className:"text-xs mt-2",children:q.api_key_description()}),C&&J(B0,{errors:W(w.state.meta.errors)})]})}})})}),J("div",{className:"space-y-4",children:J(U.Field,{name:"models",mode:"array",children:(w)=>Z("div",{className:"space-y-4",children:[Z("div",{className:"flex items-center justify-between",children:[J(T0,{className:"text-lg font-bold",children:q.models_configuration()}),Z(m,{type:"button",variant:"outline",size:"sm",onClick:()=>w.pushValue({modelId:"",name:"",config:{api:U.getFieldValue("config.api"),reasoning:!1,input:["text"],contextWindow:128000,maxTokens:4096,cost:{input:0,output:0,cacheRead:0,cacheWrite:0}}}),className:"gap-2",children:[J(K0,{className:"w-4 h-4"}),q.add_model()]})]}),J("div",{className:"space-y-6",children:w.state.value.map((C,h)=>Z("div",{className:"group relative p-6 bg-transparent rounded-2xl border shadow-sm animate-in fade-in zoom-in-95 duration-300",children:[Z("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6",children:[J(U.Field,{name:`models[${h}].modelId`,children:(A)=>{let E=!!A.state.meta.errors.length&&A.state.meta.isTouched;return Z(p,{"data-invalid":E,children:[J(d,{htmlFor:A.name,children:q.model_id()}),J($,{id:A.name,name:A.name,value:A.state.value,onBlur:A.handleBlur,onChange:(b)=>A.handleChange(b.target.value),placeholder:"gpt-4o","aria-invalid":E}),E&&J(B0,{errors:W(A.state.meta.errors)})]})}}),J(U.Field,{name:`models[${h}].name`,children:(A)=>{let E=!!A.state.meta.errors.length&&A.state.meta.isTouched;return Z(p,{"data-invalid":E,children:[J(d,{htmlFor:A.name,children:q.display_name_optional()}),J($,{id:A.name,name:A.name,value:A.state.value,onBlur:A.handleBlur,onChange:(b)=>A.handleChange(b.target.value),placeholder:"e.g., GPT-4o","aria-invalid":E,disabled:H}),E&&J(B0,{errors:W(A.state.meta.errors)})]})}})]}),Z("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6 mt-6",children:[J(U.Field,{name:`models[${h}].config.reasoning`,children:(A)=>Z(p,{orientation:"horizontal",className:"rounded-lg border border-border p-3 shadow-sm bg-muted/50 justify-between",children:[J(d,{htmlFor:A.name,children:q.reasoning_support()}),J(U0,{id:A.name,checked:A.state.value,onCheckedChange:A.handleChange,disabled:H})]})}),J(U.Field,{name:`models[${h}].config.contextWindow`,children:(A)=>{let E=!!A.state.meta.errors.length&&A.state.meta.isTouched;return Z(p,{"data-invalid":E,children:[J(d,{htmlFor:A.name,className:"text-xs",children:q.context_window_tokens()}),J($,{id:A.name,name:A.name,type:"number",value:A.state.value,onBlur:A.handleBlur,onChange:(b)=>A.handleChange(parseInt(b.target.value)||0),"aria-invalid":E,disabled:H}),E&&J(B0,{errors:W(A.state.meta.errors)})]})}})]}),Z("div",{className:"grid grid-cols-1 md:grid-cols-3 gap-4 mt-6",children:[J(U.Field,{name:`models[${h}].config.maxTokens`,children:(A)=>{let E=!!A.state.meta.errors.length&&A.state.meta.isTouched;return Z(p,{"data-invalid":E,children:[J(d,{htmlFor:A.name,className:"text-xs",children:q.max_output_tokens()}),J($,{id:A.name,name:A.name,type:"number",value:A.state.value,onBlur:A.handleBlur,onChange:(b)=>A.handleChange(parseInt(b.target.value)||0),"aria-invalid":E,disabled:H}),E&&J(B0,{errors:W(A.state.meta.errors)})]})}}),J(U.Field,{name:`models[${h}].config.cost.input`,children:(A)=>{let E=!!A.state.meta.errors.length&&A.state.meta.isTouched;return Z(p,{"data-invalid":E,children:[Z(d,{htmlFor:A.name,className:"text-xs flex items-center gap-1",children:[J(K6,{className:"w-3 h-3"})," ",q.input_cost_1m()]}),J($,{id:A.name,name:A.name,type:"number",step:"0.01",value:A.state.value,onBlur:A.handleBlur,onChange:(b)=>A.handleChange(parseFloat(b.target.value)||0),"aria-invalid":E,disabled:H}),E&&J(B0,{errors:W(A.state.meta.errors)})]})}}),J(U.Field,{name:`models[${h}].config.cost.output`,children:(A)=>{let E=!!A.state.meta.errors.length&&A.state.meta.isTouched;return Z(p,{"data-invalid":E,children:[Z(d,{htmlFor:A.name,className:"text-xs flex items-center gap-1",children:[J(K6,{className:"w-3 h-3"})," ",q.output_cost_1m()]}),J($,{id:A.name,name:A.name,type:"number",step:"0.01",value:A.state.value,onBlur:A.handleBlur,onChange:(b)=>A.handleChange(parseFloat(b.target.value)||0),"aria-invalid":E,disabled:H}),E&&J(B0,{errors:W(A.state.meta.errors)})]})}})]}),J(m,{type:"button",variant:"ghost",size:"icon",className:"absolute -top-2 -right-2 h-8 w-8 rounded-full bg-background border border-border text-muted-foreground hover:text-destructive transition-colors shadow-sm",onClick:()=>w.removeValue(h),children:J(P0,{className:"h-4 w-4"})})]},h))})]})})})]})})}),Z(v0,{className:"p-6 pt-4 border-t border-border gap-2 shrink-0",children:[J(m,{type:"button",variant:"outline",onClick:B,disabled:X,children:q.cancel()}),J(U.Subscribe,{selector:(w)=>[w.canSubmit,w.isSubmitting],children:([w,C])=>J(m,{type:"submit",className:"min-w-[120px]",disabled:!w||C||X,children:C||X?J(x,{className:"w-4 h-4 animate-spin"}):q.save_configuration()})})]})]})]}),J(i0,{open:G,onOpenChange:T,children:Z(r0,{children:[Z(e0,{children:[J(J4,{children:q.are_you_absolutely_sure()}),J(B4,{children:q.delete_provider_confirmation({name:Q?.name??""})})]}),Z(N4,{children:[J(z4,{onClick:()=>T(!1),children:q.cancel()}),J(X4,{className:"bg-destructive hover:bg-destructive/90 text-destructive-foreground",onClick:()=>{Y?.(),T(!1)},children:q.delete()})]})]})})]})}var NN=e(N0(),1);function JN({teamId:N}){let B=s(),[z,Y]=NN.useState(""),{data:X,isLoading:Q}=u({queryKey:["teams",N,"sandbox"],queryFn:async()=>{let U=await S.api.teams[":teamId"].sandbox.$get({param:{teamId:N}});if(!U.ok)throw Error(q.failed_load_settings());return await U.json()}}),{mutate:H,isPending:P}=n({mutationFn:async(U)=>{let W=await S.api.teams[":teamId"].sandbox.$put({param:{teamId:N},json:U});if(!W.ok)throw Error(q.failed_to_update_sandbox_settings());return await W.json()},onSuccess:()=>{B.invalidateQueries({queryKey:["teams",N,"sandbox"]}),F.success(q.sandbox_settings_updated())},onError:(U)=>{F.error(U instanceof Error?U.message:q.failed_to_update_sandbox_settings())}}),k=(U)=>{if(U.preventDefault(),!z.trim())return;if(X?.allowedDomains.includes(z.trim())){F.error(q.domain_already_exists());return}let W=[...X?.allowedDomains||[],z.trim()],w=X?.pendingDomains||[];H({allowedDomains:W,pendingDomains:w}),Y("")},G=(U)=>{let W=(X?.allowedDomains||[]).filter((C)=>C!==U),w=X?.pendingDomains||[];H({allowedDomains:W,pendingDomains:w})},T=(U)=>{let W=[...X?.allowedDomains||[],U],w=(X?.pendingDomains||[]).filter((C)=>C!==U);H({allowedDomains:W,pendingDomains:w})},K=(U)=>{let W=(X?.pendingDomains||[]).filter((w)=>w!==U);H({allowedDomains:X?.allowedDomains||[],pendingDomains:W})};if(Q)return J("div",{className:"flex items-center justify-center p-8",children:J(x,{className:"h-8 w-8 animate-spin text-muted-foreground"})});return J(L0,{className:"h-full",children:Z("div",{className:"space-y-6 pr-4 pb-8",children:[Z(o,{children:[Z(z0,{children:[Z("div",{className:"flex items-center gap-2",children:[J(f4,{className:"w-5 h-5 text-primary"}),J(Y0,{children:q.network_sandbox()})]}),J(Q0,{children:q.network_sandbox_description()})]}),Z(l,{children:[Z("form",{onSubmit:k,className:"flex gap-2 mb-6",children:[J($,{placeholder:"e.g. api.openai.com",value:z,onChange:(U)=>Y(U.target.value),disabled:P}),Z(m,{type:"submit",disabled:P,children:[P?J(x,{className:"w-4 h-4 animate-spin"}):J(K0,{className:"w-4 h-4 mr-2"}),q.add_domain()]})]}),Z("div",{className:"space-y-2",children:[J("h4",{className:"text-sm font-medium text-muted-foreground mb-3",children:q.allowed_domains()}),Z("div",{className:"flex flex-wrap gap-2",children:[X?.allowedDomains.map((U)=>Z("div",{className:"flex items-center gap-1 px-3 py-1.5 bg-muted rounded-full text-sm border border-border transition-all hover:border-muted-foreground/50",children:[J("span",{className:"font-medium text-foreground",children:U}),J("button",{onClick:()=>G(U),className:"ml-1 text-muted-foreground hover:text-destructive transition-colors",disabled:P,children:J(n4,{className:"w-3.5 h-3.5"})})]},U)),X?.allowedDomains.length===0&&J("div",{className:"text-sm text-muted-foreground italic",children:q.no_custom_domains_allowed()})]})]})]})]}),Z(o,{className:"border-orange-500/20 bg-orange-500/5",children:[Z(z0,{children:[Z("div",{className:"flex items-center gap-2",children:[J(e6,{className:"w-5 h-5 text-orange-500"}),J(Y0,{children:q.pending_domain_approvals()})]}),J(Q0,{children:q.pending_domains_description()})]}),J(l,{children:J("div",{className:"space-y-3",children:X?.pendingDomains&&X.pendingDomains.length>0?J("div",{className:"divide-y divide-border",children:X.pendingDomains.map((U)=>Z("div",{className:"flex items-center justify-between py-2.5 first:pt-0 last:pb-0",children:[J("span",{className:"font-mono text-sm text-foreground bg-muted px-2 py-1 rounded break-all",children:U}),Z("div",{className:"flex items-center gap-2",children:[Z(m,{size:"sm",variant:"outline",className:"h-8 border-emerald-500/20 text-emerald-600 hover:bg-emerald-500/10 hover:text-emerald-600 dark:text-emerald-400 dark:hover:bg-emerald-500/20",onClick:()=>T(U),disabled:P,children:[J(u4,{className:"w-4 h-4 mr-1.5"}),q.approve()]}),Z(m,{size:"sm",variant:"outline",className:"h-8 border-destructive/20 text-destructive hover:bg-destructive/10",onClick:()=>K(U),disabled:P,children:[J(P0,{className:"w-4 h-4 mr-1.5"}),q.delete()]})]})]},U))}):J("div",{className:"text-sm text-muted-foreground italic py-2",children:q.no_pending_domains()})})})]}),J(o,{children:Z(z0,{children:[J(Y0,{children:q.filesystem_restriction()}),J(Q0,{children:q.filesystem_restriction_description()})]})})]})})}var A0=e(N0(),1);var pN=(N)=>Z("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",...N,children:[J("path",{d:"M15 22v-4a4.8 4.8 0 0 0-1-3.5c3 0 6-2 6-5.5.08-1.25-.27-2.48-1-3.5.28-1.15.28-2.35 0-3.5 0 0-1 0-3 1.5-2.64-.5-5.36-.5-8 0C6 2 5 2 5 2c-.3 1.15-.3 2.35 0 3.5A5.403 5.403 0 0 0 4 9c0 3.5 3 5.5 6 5.5-.39.49-.68 1.05-.85 1.65-.17.6-.22 1.23-.15 1.85v4"}),J("path",{d:"M9 18c-4.51 2-5-2-7-2"})]}),zN=({teamId:N})=>{let B=s(),[z,Y]=A0.useState(!1),[X,Q]=A0.useState(!1),[H,P]=A0.useState(!1),[k,G]=A0.useState(null),{data:T,isLoading:K}=u({queryKey:["teams",N,"skills"],queryFn:async()=>{let w=await S.api.teams[":teamId"].skills.$get({param:{teamId:N}});if(!w.ok)throw Error(q.failed_load_settings());return await w.json()}}),U=n({mutationFn:async(w)=>{if(!(await S.api.skills[":id"].$delete({param:{id:w}})).ok)throw Error(q.failed_to_delete())},onSuccess:()=>{B.invalidateQueries({queryKey:["teams",N,"skills"]}),P(!1)}}),W=T?.skills||[];return Z(o,{children:[Z(z0,{className:"flex flex-row items-center justify-between space-y-0 pb-7",children:[Z("div",{className:"flex items-center gap-3",children:[J("div",{className:"p-2 bg-primary/10 text-primary rounded-lg",children:J(b0,{className:"w-6 h-6"})}),Z("div",{children:[J(Y0,{className:"text-xl font-bold",children:q.skills_management()}),J(Q0,{children:q.skills_management_description()})]})]}),Z(m,{onClick:()=>Y(!0),className:"gap-2",children:[J(K0,{className:"w-4 h-4"})," ",q.add_skill()]})]}),J(l,{children:K?J("div",{className:"flex justify-center py-10",children:J(x,{className:"w-8 h-8 animate-spin text-primary"})}):W.length===0?Z("div",{className:"text-center py-12 border-2 border-dashed border-border rounded-xl",children:[J("div",{className:"mx-auto w-12 h-12 bg-muted rounded-full flex items-center justify-center mb-4 text-muted-foreground",children:J(b0,{className:"w-6 h-6"})}),J("h3",{className:"text-lg font-medium text-foreground",children:q.no_skills_installed()}),J("p",{className:"text-muted-foreground mt-1 max-w-xs mx-auto",children:q.add_skill_to_get_started()})]}):J("div",{className:"space-y-4",children:W.map((w)=>J(dN,{skill:w,onDelete:()=>{G(w),P(!0)},onConfigure:()=>{G(w),Q(!0)}},w.id))})}),J(oN,{open:z,onOpenChange:Y,teamId:N}),k&&J(tN,{open:X,onOpenChange:(w)=>{if(Q(w),!w)setTimeout(()=>{document.body.style.pointerEvents="auto"},100)},teamId:N,skill:k}),J(i0,{open:H,onOpenChange:P,children:Z(r0,{children:[Z(e0,{children:[J(J4,{children:q.are_you_absolutely_sure()}),J(B4,{children:q.delete_skill_confirmation({name:k?.name??""})})]}),Z(N4,{children:[J(z4,{children:q.cancel()}),Z(X4,{className:"bg-destructive hover:bg-destructive/90 text-destructive-foreground",onClick:()=>{if(k)U.mutate(k.id)},children:[U.isPending?J(x,{className:"w-4 h-4 animate-spin mr-2"}):J(P0,{className:"w-4 h-4 mr-2"}),q.delete()]})]})]})})]})},dN=({skill:N,onDelete:B,onConfigure:z})=>{return Z("div",{className:"p-4 bg-card rounded-xl border border-border flex flex-col justify-between hover:shadow-md transition-all group cursor-pointer",onClick:z,children:[Z("div",{children:[Z("div",{className:"flex items-start justify-between mb-2",children:[J("h4",{className:"font-bold text-foreground flex items-center gap-2",children:N.name}),Z(P4,{children:[J(w4,{asChild:!0,onClick:(Y)=>Y.stopPropagation(),children:J(m,{variant:"ghost",size:"icon",className:"h-8 w-8",children:J(U4,{className:"w-4 h-4"})})}),J(K4,{align:"end",className:"w-32",children:Z(G4,{onClick:(Y)=>{Y.stopPropagation(),B()},className:"text-destructive focus:text-destructive gap-2 cursor-pointer",children:[J(P0,{className:"w-4 h-4"})," ",q.delete()]})})]})]}),J("p",{className:"text-sm text-muted-foreground line-clamp-2",children:N.description||q.no_description_provided()})]}),Z("div",{className:"mt-4 flex items-center justify-between text-[10px] text-muted-foreground uppercase tracking-wider font-semibold",children:[Z("span",{children:[q.updated_date()," ",new Date(N.updatedAt).toLocaleDateString()]}),J("div",{className:"px-2 py-0.5 rounded-full bg-primary/10 text-primary",children:q.installed()})]})]})},oN=({open:N,onOpenChange:B,teamId:z})=>{let Y=s(),[X,Q]=A0.useState(""),[H,P]=A0.useState(!1),k=A0.useRef(null),{data:G}=u({queryKey:["teams",z,"projects"],queryFn:async()=>{let U=await S.api.teams[":teamId"].projects.$get({param:{teamId:z},query:{first:"1"}});if(!U.ok)throw Error("Failed to fetch projects");return await U.json()},enabled:N}),T=async(U)=>{P(!0);try{let W=await S.api.teams[":teamId"].skills.$post({param:{teamId:z},json:U});if(W.status===409){let w=await W.json();if(window.confirm(`${w.error}
|
|
2
|
+
|
|
3
|
+
${q.override_existing_skill()}`)){await T({...U,override:!0});return}}else if(!W.ok){let w=await W.json().catch(()=>({}));throw Error(w.error||q.failed_to_install_skill())}else Y.invalidateQueries({queryKey:["teams",z,"skills"]}),B(!1),Q("")}catch(W){if(W instanceof Error)alert(W.message);else alert(q.an_unknown_error_occurred())}finally{P(!1)}},K=async(U)=>{if(!U||U.length===0)return;let W=G?.data?.[0]?.id;if(!W){alert(q.need_project_to_upload_skills());return}let w=U[0];if(!w.name.toLowerCase().endsWith(".zip")){alert(q.only_zip_files_supported());return}P(!0);try{let C=w.name,h=w.type||"application/zip",A=await S.api.projects[":projectId"].attachments.$post({param:{projectId:W},json:{fileName:C,size:w.size,contentType:h}});if(!A.ok)throw Error("Failed to get upload URL");let{id:E,uploadUrl:b}=await A.json();if(!(await fetch(b,{method:"PUT",body:w,headers:{"Content-Type":h}})).ok)throw Error("Failed to upload file to storage");await T({assetId:E})}catch(C){if(C instanceof Error)alert(C.message);else alert(q.an_unknown_error_occurred())}finally{P(!1)}};return J(_0,{open:N,onOpenChange:B,children:Z(x0,{className:"sm:max-w-[450px]",children:[Z(c0,{children:[J(j0,{children:q.add_new_skill()}),J(l0,{children:q.import_skill_description()})]}),Z("div",{className:"space-y-6 pt-4",children:[Z("div",{className:"space-y-3",children:[J(T0,{children:q.package_upload()}),Z("div",{onClick:()=>!H&&k.current?.click(),className:j("group relative h-32 border-2 border-dashed rounded-xl flex flex-col items-center justify-center transition-all cursor-pointer",H?"opacity-50 cursor-not-allowed bg-muted/50 border-border":"hover:bg-primary/5 hover:border-primary/50 border-border"),children:[J("input",{type:"file",ref:k,className:"hidden",accept:".zip",onChange:(U)=>K(U.target.files)}),J("div",{className:"p-3 bg-muted rounded-full group-hover:bg-primary/10 transition-colors",children:J(XN,{className:"w-6 h-6 text-muted-foreground group-hover:text-primary"})}),Z("div",{className:"mt-3 text-center",children:[J("p",{className:"text-sm font-medium text-foreground",children:q.select_zip_file()}),J("p",{className:"text-[10px] text-muted-foreground mt-1 uppercase tracking-wider font-semibold",children:q.packages_must_contain_skill_md()})]})]}),H&&!X&&Z("div",{className:"flex items-center gap-2 text-sm text-primary justify-center bg-primary/10 py-2 rounded-lg animate-pulse",children:[J(x,{className:"w-4 h-4 animate-spin"}),q.processing_package()]})]}),Z("div",{className:"relative",children:[J("div",{className:"absolute inset-0 flex items-center",children:J("span",{className:"w-full border-t border-border"})}),J("div",{className:"relative flex justify-center text-xs uppercase",children:J("span",{className:"bg-background px-2 text-muted-foreground font-bold",children:q.or()})})]}),J("div",{className:"space-y-4",children:Z("div",{className:"space-y-2",children:[J(T0,{htmlFor:"githubUrl",children:q.github_repository_url()}),Z("div",{className:"flex gap-2",children:[Z("div",{className:"relative flex-1",children:[J(pN,{className:"absolute left-3 top-2.5 w-4 h-4 text-muted-foreground"}),J($,{id:"githubUrl",placeholder:"https://github.com/owner/repo",value:X,onChange:(U)=>Q(U.target.value),disabled:H,className:"pl-9"})]}),J(m,{onClick:()=>T({githubUrl:X}),disabled:!X||H,className:"px-6",children:H&&X?J(x,{className:"w-4 h-4 animate-spin"}):q.install()})]}),J("p",{className:"text-[10px] text-muted-foreground italic",children:q.github_url_example()})]})})]})]})})},tN=({open:N,onOpenChange:B,teamId:z,skill:Y})=>{let X=s(),[Q,H]=A0.useState({...Y.config||{},environmentVariables:Y.config?.environmentVariables||[]}),[P,k]=A0.useState(!1),G=(C,h)=>{let A=[...Q.environmentVariables];A[C]={...A[C],default:h},H({...Q,environmentVariables:A})},T=(C,h)=>{let A=[...Q.environmentVariables];A[C]={...A[C],name:h},H({...Q,environmentVariables:A})},K=()=>{H({...Q,environmentVariables:[...Q.environmentVariables,{name:"",default:""}]})},U=(C)=>{let h=[...Q.environmentVariables];h.splice(C,1),H({...Q,environmentVariables:h})},W=async()=>{let C=Q.environmentVariables.filter((A)=>A.name.trim()!==""),h={...Q,environmentVariables:C};k(!0);try{let A=await S.api.skills[":id"].config.$patch({param:{id:Y.id},json:{config:h}});if(!A.ok){let E=await A.json().catch(()=>({}));throw Error(E.error||"Failed to update config")}X.invalidateQueries({queryKey:["teams",z,"skills"]}),B(!1)}catch(A){if(A instanceof Error)alert(A.message);else alert(q.an_unknown_error_occurred())}finally{k(!1)}},w=Q?.environmentVariables||[];return J(_0,{open:N,onOpenChange:B,children:Z(x0,{className:"sm:max-w-[500px]",children:[Z(c0,{children:[J("div",{className:"flex items-center justify-between",children:Z(j0,{className:"flex items-center gap-2",children:[J(BN,{className:"w-5 h-5 text-primary"}),q.configure_skill({name:Y.name})]})}),J(l0,{children:q.manage_env_vars_description()})]}),J(L0,{className:"max-h-[60vh]",children:J("div",{className:"py-4 space-y-4 pr-4",children:w.length===0?J("div",{className:"text-center py-10 bg-muted/50 rounded-xl border border-dashed border-border",children:J("p",{className:"text-muted-foreground text-sm italic",children:q.no_env_vars_found()})}):w.map((C,h)=>Z("div",{className:"p-4 bg-muted/50 rounded-xl border border-border space-y-3 relative group",children:[J("button",{onClick:()=>U(h),className:"absolute top-2 right-2 p-1 text-muted-foreground hover:text-destructive hover:bg-destructive/10 rounded-md transition-colors opacity-0 group-hover:opacity-100",children:J(n4,{className:"w-4 h-4"})}),Z("div",{className:"space-y-1.5",children:[J(T0,{className:"text-[10px] uppercase tracking-wider font-bold text-muted-foreground",children:q.variable_name()}),J($,{value:C.name,onChange:(A)=>T(h,A.target.value),placeholder:"e.g. API_KEY",className:"h-8 bg-background border-border text-sm font-mono"})]}),Z("div",{className:"space-y-1.5",children:[J(T0,{className:"text-[10px] uppercase tracking-wider font-bold text-muted-foreground",children:q.default_value()}),J($,{value:C.default||"",onChange:(A)=>G(h,A.target.value),placeholder:q.optional_default_value_placeholder(),className:"h-8 bg-background border-border text-sm"}),J("p",{className:"text-[10px] text-muted-foreground italic",children:q.env_var_empty_note()})]})]},h))})}),Z(v0,{className:"flex items-center justify-between sm:justify-between w-full pt-2 border-t border-border",children:[Z(m,{variant:"ghost",size:"sm",onClick:K,className:"h-8 gap-1.5 text-primary hover:text-primary hover:bg-primary/10",children:[J(K0,{className:"w-3.5 h-3.5"})," ",q.add_variable()]}),Z("div",{className:"flex gap-2",children:[J(m,{variant:"ghost",onClick:()=>B(!1),children:q.cancel()}),Z(m,{onClick:W,disabled:P,className:"px-8",children:[P?J(x,{className:"w-4 h-4 animate-spin mr-2"}):null,q.save_changes()]})]})]})]})})};function qN({teamId:N}){let B=s(),{data:z,isLoading:Y}=u({queryKey:["teams",N,"notification-settings"],queryFn:async()=>{let P=await S.api.teams[":teamId"].notifications.settings.$get({param:{teamId:N}});if(!P.ok)throw Error(q.failed_load_settings());return await P.json()}}),{mutate:X,isPending:Q}=n({mutationFn:async(P)=>{let k=await S.api.teams[":teamId"].notifications.settings.$post({param:{teamId:N},json:P});if(!k.ok)throw Error(q.failed_to_update_notification_settings());return await k.json()},onSuccess:()=>{B.invalidateQueries({queryKey:["teams",N,"notification-settings"]}),B.invalidateQueries({queryKey:["teams",N,"notifications"]}),F.success(q.notification_settings_updated())},onError:(P)=>{F.error(P instanceof Error?P.message:q.failed_to_update_notification_settings())}}),H=(P)=>{if(!z)return;let k={...z,[P]:!z[P]};X(k)};if(Y)return J("div",{className:"flex items-center justify-center p-8",children:J(x,{className:"h-8 w-8 animate-spin text-muted-foreground"})});return J(L0,{className:"h-full",children:Z("div",{className:"space-y-6 pr-4 pb-8",children:[Z(o,{className:"border border-slate-200 dark:border-slate-800",children:[Z(z0,{className:"border-b border-slate-100 dark:border-slate-800 bg-slate-50/50 dark:bg-slate-900/50",children:[Z("div",{className:"flex items-center gap-2",children:[J(D4,{className:"w-5 h-5 text-blue-500"}),J(Y0,{className:"text-lg",children:q.comments_and_replies()})]}),J(Q0,{children:q.comments_notification_description()})]}),Z(l,{className:"divide-y divide-slate-100 dark:divide-slate-800 p-0",children:[Z("div",{className:"flex items-center justify-between p-6",children:[Z("div",{className:"flex gap-4",children:[J("div",{className:"mt-1 flex items-center justify-center w-8 h-8 rounded-lg bg-blue-50 dark:bg-blue-900/20 text-blue-600 dark:text-blue-400",children:J(D4,{className:"w-4 h-4"})}),Z("div",{className:"space-y-0.5",children:[J("h4",{className:"text-sm font-semibold text-slate-900 dark:text-white",children:q.general_comments()}),J("p",{className:"text-sm text-slate-500 dark:text-slate-400",children:q.when_someone_comments()})]})]}),J(U0,{checked:z?.comments??!0,onCheckedChange:()=>H("comments"),disabled:Q})]}),Z("div",{className:"flex items-center justify-between p-6",children:[Z("div",{className:"flex gap-4",children:[J("div",{className:"mt-1 flex items-center justify-center w-8 h-8 rounded-lg bg-purple-50 dark:bg-purple-900/20 text-purple-600 dark:text-purple-400",children:J(HN,{className:"w-4 h-4"})}),Z("div",{className:"space-y-0.5",children:[J("h4",{className:"text-sm font-semibold text-slate-900 dark:text-white",children:q.comment_replies()}),J("p",{className:"text-sm text-slate-500 dark:text-slate-400",children:q.when_someone_replies()})]})]}),J(U0,{checked:z?.replies??!0,onCheckedChange:()=>H("replies"),disabled:Q})]}),Z("div",{className:"flex items-center justify-between p-6",children:[Z("div",{className:"flex gap-4",children:[J("div",{className:"mt-1 flex items-center justify-center w-8 h-8 rounded-lg bg-pink-50 dark:bg-pink-900/20 text-pink-600 dark:text-pink-400",children:J(QN,{className:"w-4 h-4"})}),Z("div",{className:"space-y-0.5",children:[J("h4",{className:"text-sm font-semibold text-slate-900 dark:text-white",children:q.at_mentions()}),J("p",{className:"text-sm text-slate-500 dark:text-slate-400",children:q.when_someone_mentions()})]})]}),J(U0,{checked:z?.mentions??!0,onCheckedChange:()=>H("mentions"),disabled:Q})]})]})]}),Z(o,{className:"border border-slate-200 dark:border-slate-800",children:[Z(z0,{className:"border-b border-slate-100 dark:border-slate-800 bg-slate-50/50 dark:bg-slate-900/50",children:[Z("div",{className:"flex items-center gap-2",children:[J(T6,{className:"w-5 h-5 text-emerald-500"}),J(Y0,{className:"text-lg",children:q.assets_and_statuses()})]}),J(Q0,{children:q.assets_notification_description()})]}),Z(l,{className:"divide-y divide-slate-100 dark:divide-slate-800 p-0",children:[Z("div",{className:"flex items-center justify-between p-6",children:[Z("div",{className:"flex gap-4",children:[J("div",{className:"mt-1 flex items-center justify-center w-8 h-8 rounded-lg bg-slate-100 dark:bg-slate-800 text-slate-600 dark:text-slate-400",children:J(p4,{className:"w-4 h-4"})}),Z("div",{className:"space-y-0.5",children:[J("h4",{className:"text-sm font-semibold text-slate-900 dark:text-white",children:q.your_uploads()}),J("p",{className:"text-sm text-slate-500 dark:text-slate-400",children:q.when_you_upload_assets()})]})]}),J(U0,{checked:z?.yourUploads??!1,onCheckedChange:()=>H("yourUploads"),disabled:Q})]}),Z("div",{className:"flex items-center justify-between p-6",children:[Z("div",{className:"flex gap-4",children:[J("div",{className:"mt-1 flex items-center justify-center w-8 h-8 rounded-lg bg-emerald-50 dark:bg-emerald-900/20 text-emerald-600 dark:text-emerald-400",children:J(T6,{className:"w-4 h-4"})}),Z("div",{className:"space-y-0.5",children:[J("h4",{className:"text-sm font-semibold text-slate-900 dark:text-white",children:q.other_uploads()}),J("p",{className:"text-sm text-slate-500 dark:text-slate-400",children:q.when_other_users_upload_assets()})]})]}),J(U0,{checked:z?.otherUploads??!0,onCheckedChange:()=>H("otherUploads"),disabled:Q})]}),Z("div",{className:"flex items-center justify-between p-6",children:[Z("div",{className:"flex gap-4",children:[J("div",{className:"mt-1 flex items-center justify-center w-8 h-8 rounded-lg bg-amber-50 dark:bg-amber-900/20 text-amber-600 dark:text-amber-400",children:J(YN,{className:"w-4 h-4"})}),Z("div",{className:"space-y-0.5",children:[J("h4",{className:"text-sm font-semibold text-slate-900 dark:text-white",children:q.status_updates()}),J("p",{className:"text-sm text-slate-500 dark:text-slate-400",children:q.when_someone_changes_status()})]})]}),J(U0,{checked:z?.statusUpdates??!0,onCheckedChange:()=>H("statusUpdates"),disabled:Q})]})]})]})]})})}var k6=e(N0(),1);function wN({teamId:N}){let B=s(),[z,Y]=k6.useState(""),[X,Q]=k6.useState(null),{data:H,isLoading:P}=u({queryKey:["teams",N,"api-tokens"],queryFn:async()=>{let W=await S.api.teams[":teamId"]["api-tokens"].$get({param:{teamId:N}});if(!W.ok)throw Error("Failed to fetch API tokens");return await W.json()}}),{mutate:k,isPending:G}=n({mutationFn:async(W)=>{let w=await S.api.teams[":teamId"]["api-tokens"].$post({param:{teamId:N},json:{name:W}});if(!w.ok)throw Error("Failed to create API token");return await w.json()},onSuccess:()=>{B.invalidateQueries({queryKey:["teams",N,"api-tokens"]}),Y(""),F.success(q.api_token_generated_successfully())},onError:(W)=>{F.error(W instanceof Error?W.message:q.failed_to_generate_token())}}),{mutate:T}=n({mutationFn:async(W)=>{let w=await S.api.teams[":teamId"]["api-tokens"][":tokenId"].$delete({param:{teamId:N,tokenId:W}});if(!w.ok)throw Error("Failed to delete API token");return await w.json()},onSuccess:()=>{B.invalidateQueries({queryKey:["teams",N,"api-tokens"]}),F.success(q.api_token_revoked_successfully())},onError:(W)=>{F.error(W instanceof Error?W.message:q.failed_to_revoke_token())}}),K=(W)=>{if(W.preventDefault(),!z.trim())return;k(z.trim())},U=(W,w)=>{navigator.clipboard.writeText(w),Q(W),F.success(q.copied_api_token_to_clipboard()),setTimeout(()=>Q(null),2000)};if(P)return J("div",{className:"flex justify-center items-center p-8",children:J(x,{className:"w-8 h-8 animate-spin text-muted-foreground"})});return J("div",{className:"space-y-6",children:Z(o,{children:[Z(z0,{children:[J(Y0,{children:q.api_tokens()}),J(Q0,{children:q.api_tokens_description()})]}),Z(l,{className:"space-y-6",children:[Z("form",{onSubmit:K,className:"flex gap-4 items-end max-w-md",children:[Z("div",{className:"flex-1 space-y-2",children:[J("label",{htmlFor:"tokenName",className:"text-sm font-medium text-muted-foreground",children:q.token_name()}),J($,{id:"tokenName",value:z,onChange:(W)=>Y(W.target.value),placeholder:q.token_name_placeholder(),required:!0})]}),Z(m,{type:"submit",disabled:G||!z.trim(),children:[G?J(x,{className:"w-4 h-4 animate-spin mr-2"}):J(K0,{className:"w-4 h-4 mr-2"}),q.generate()]})]}),J("div",{className:"border rounded-lg overflow-hidden",children:Z(WN,{children:[J(UN,{children:Z(d4,{children:[J(E4,{children:q.name()}),J(E4,{children:q.token()}),J(E4,{children:q.created_at()}),J(E4,{className:"w-[100px] text-right",children:q.actions()})]})}),J(PN,{children:!H||H.length===0?J(d4,{children:J(T4,{colSpan:4,className:"text-center py-6 text-muted-foreground text-sm",children:q.no_api_tokens_found()})}):H.map((W)=>Z(d4,{children:[J(T4,{className:"font-medium",children:W.name}),J(T4,{className:"font-mono text-sm max-w-[200px] truncate",children:Z("div",{className:"flex items-center gap-2",children:[Z("span",{children:[W.token.substring(0,8),"..."]}),J(m,{variant:"ghost",size:"icon",className:"h-7 w-7",onClick:()=>U(W.id,W.token),children:X===W.id?J(u4,{className:"h-3.5 w-3.5 text-green-500"}):J(ZN,{className:"h-3.5 w-3.5"})})]})}),J(T4,{className:"text-muted-foreground",children:new Date(W.createdAt).toLocaleDateString()}),J(T4,{className:"text-right",children:J(m,{variant:"ghost",size:"icon",className:"h-8 w-8 text-red-500 hover:text-red-600 hover:bg-red-50",onClick:()=>T(W.id),children:J(P0,{className:"h-4 w-4"})})})]},W.id))})]})})]})]})})}var O0=e(N0(),1);var C0=e(N0(),1);function kN({isOpen:N,onClose:B,imageSrc:z,onConfirm:Y}){let[X,Q]=C0.useState(1),[H,P]=C0.useState({x:0,y:0}),[k,G]=C0.useState(!1),[T,K]=C0.useState(!1),U=C0.useRef({x:0,y:0}),W=C0.useRef(null),w=C0.useRef(null),C=250;C0.useEffect(()=>{if(N)Q(1),P({x:0,y:0}),K(!1)},[N,z]);let h=(L)=>{L.preventDefault(),G(!0),U.current={x:L.clientX-H.x,y:L.clientY-H.y}},A=(L)=>{if(!k)return;P({x:L.clientX-U.current.x,y:L.clientY-U.current.y})},E=()=>{G(!1)},b=(L)=>{if(L.touches.length!==1)return;G(!0);let y=L.touches[0];U.current={x:y.clientX-H.x,y:y.clientY-H.y}},R=(L)=>{if(!k||L.touches.length!==1)return;let y=L.touches[0];P({x:y.clientX-U.current.x,y:y.clientY-U.current.y})},D=async()=>{let L=W.current,y=w.current;if(!L||!y)return;K(!0);try{let V=L.getBoundingClientRect(),I=512,c=document.createElement("canvas");c.width=512,c.height=512;let i=c.getContext("2d");if(i){i.clearRect(0,0,512,512);let r=2.048,v=V.width/X,M=V.height/X,g=256+H.x*r,G0=256+H.y*r;i.translate(g,G0),i.scale(X*r,X*r),i.drawImage(L,-v/2,-M/2,v,M);let o4=await new Promise((t4)=>{c.toBlob((R6)=>t4(R6),"image/jpeg",0.9)});if(o4)await Y(o4)}}catch(V){console.error("Failed to crop image",V)}finally{K(!1)}};return J(_0,{open:N,onOpenChange:(L)=>!L&&B(),children:Z(x0,{className:"sm:max-w-[420px] rounded-2xl border border-border bg-background/95 backdrop-blur-md shadow-2xl p-0 overflow-hidden gap-0",children:[J(c0,{className:"p-6 border-b border-border/40 bg-gradient-to-br from-primary/5 to-transparent",children:Z(j0,{className:"text-xl font-bold flex items-center gap-2",children:[J(KN,{className:"w-5 h-5 text-primary"}),q.position_and_resize()]})}),Z("div",{className:"p-6 flex flex-col items-center gap-6",children:[Z("div",{ref:w,className:"relative overflow-hidden bg-muted select-none border border-border/40 rounded-xl cursor-move shadow-inner",style:{width:250,height:250},onMouseDown:h,onMouseMove:A,onMouseUp:E,onMouseLeave:E,onTouchStart:b,onTouchMove:R,onTouchEnd:E,children:[z&&J("img",{ref:W,src:z,alt:q.avatar_source(),crossOrigin:"anonymous",className:"absolute origin-center max-w-none pointer-events-none transition-transform duration-75 select-none",style:{top:"50%",left:"50%",transform:`translate(-50%, -50%) translate(${H.x}px, ${H.y}px) scale(${X})`,maxHeight:"100%"}}),J("div",{className:"absolute inset-0 pointer-events-none border-[3px] border-primary/90 rounded-full"}),J("div",{className:"absolute inset-0 pointer-events-none bg-black/40",style:{clipPath:"polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%)",maskImage:"radial-gradient(circle, transparent 122px, black 123px)",WebkitMaskImage:"radial-gradient(circle, transparent 122px, black 123px)"}})]}),Z("div",{className:"w-full flex items-center gap-3 px-2",children:[J(TN,{className:"w-4 h-4 text-muted-foreground"}),J("input",{type:"range",min:"1.0",max:"3.0",step:"0.01",value:X,onChange:(L)=>Q(parseFloat(L.target.value)),className:"flex-1 h-1.5 bg-muted rounded-lg appearance-none cursor-pointer accent-primary focus:outline-none"}),J(GN,{className:"w-4 h-4 text-muted-foreground"})]})]}),Z(v0,{className:"p-6 border-t border-border/40 bg-muted/20 flex flex-row justify-end gap-3",children:[J(m,{variant:"outline",onClick:B,disabled:T,children:q.cancel()}),J(m,{onClick:D,disabled:T||!z,className:"min-w-[80px]",children:T?Z(X0,{children:[J(x,{className:"w-4 h-4 animate-spin mr-2"}),q.saving()]}):q.save()})]})]})})}function lN(){let{teamId:N}=aN.useParams(),B=s(),[z,Y]=O0.useState("general"),[X,Q]=O0.useState(""),[H,P]=O0.useState(!1),[k,G]=O0.useState(null),T=O0.useRef(null),[K,U]=O0.useState(!1),{setMetadata:W,getMetadata:w}=VN(),C=w("locale")||bN(),h=async(M)=>{if(M==="en"||M==="zh")try{await W(N,"locale",M),ON(M),F.success(q.language_updated())}catch(g){console.error(g),F.error(q.failed_update_language())}},{data:A,isLoading:E,error:b}=u({queryKey:["teams",N,"settings"],queryFn:async()=>{let M=await S.api.teams[":teamId"].settings.$get({param:{teamId:N}});if(!M.ok)throw Error("Failed to fetch settings");return await M.json()}}),{data:R,isLoading:D}=u({queryKey:["teams",N,"me"],queryFn:async()=>{let M=await S.api.teams[":teamId"].me.$get({param:{teamId:N}});if(!M.ok)throw Error("Failed to fetch me");return await M.json()},enabled:!!N});O0.useEffect(()=>{if(R?.name)Q(R.name)},[R]);let L=(M)=>{if(!M)return"U";let g=M.split(" ");if(g.length>1)return`${g[0][0]}${g[g.length-1][0]}`.toUpperCase();return M.substring(0,2).toUpperCase()},y=(M)=>{let g=M.target.files?.[0];if(g){let G0=new FileReader;G0.onload=()=>{G(G0.result),P(!0)},G0.readAsDataURL(g),M.target.value=""}},V=async(M)=>{U(!0);try{let g=new File([M],"avatar.jpg",{type:"image/jpeg"}),G0=await S.api.teams[":teamId"].files.$post({param:{teamId:N},form:{file:g}});if(!G0.ok)throw Error("Failed to upload avatar");let t4=(await G0.json()).key;if(!(await S.api.teams[":teamId"].me.$patch({param:{teamId:N},json:{imageKey:t4}})).ok)throw Error("Failed to save profile");F.success(q.avatar_updated()),B.invalidateQueries({queryKey:["teams",N,"me"]}),P(!1)}catch(g){console.error(g),F.error(q.failed_update_avatar())}finally{U(!1)}},I=async()=>{U(!0);try{if(!(await S.api.teams[":teamId"].me.$patch({param:{teamId:N},json:{imageKey:null}})).ok)throw Error("Failed to remove avatar");F.success(q.avatar_removed()),B.invalidateQueries({queryKey:["teams",N,"me"]})}catch(M){console.error(M),F.error(q.failed_remove_avatar())}finally{U(!1)}},c=async()=>{if(!X.trim())return;U(!0);try{if(!(await S.api.teams[":teamId"].me.$patch({param:{teamId:N},json:{name:X.trim()}})).ok)throw Error("Failed to update name");F.success(q.profile_updated()),B.invalidateQueries({queryKey:["teams",N,"me"]})}catch(M){console.error(M),F.error(q.failed_update_profile())}finally{U(!1)}},{mutate:i}=n({mutationFn:async(M)=>{let g=await S.api.teams[":teamId"].settings.$patch({param:{teamId:M.teamId},json:M.data});if(!g.ok)throw Error("Failed to update settings");return await g.json()},onSuccess:()=>{B.invalidateQueries({queryKey:["teams",N,"settings"]})}}),r=(M)=>{i({teamId:N,data:{key:"transcode.videoStrategy",value:M}})};if(E||D)return J("div",{className:"flex h-screen items-center justify-center",children:J(x,{className:"h-8 w-8 animate-spin text-muted-foreground"})});if(b)return J("div",{className:"p-8 text-center text-red-500",children:q.failed_load_settings()});let v=A?.transcode?.videoStrategy||f0.best_match;if(v==="single"||v==="disable")v=f0.best_match;else if(v==="full")v=f0.all;return J("div",{className:"h-full bg-background font-sans selection:bg-primary/20 transition-colors duration-300",children:Z("div",{className:"flex flex-col md:flex-row h-full",children:[J("div",{className:"w-full h-full md:w-72 bg-sidebar border-b md:border-b-0 md:border-r border-sidebar-border z-10 md:left-16 overflow-y-auto transition-colors duration-300",children:Z("nav",{className:"p-4 space-y-1 mt-4",children:[J("div",{className:"mb-2 px-4 text-xs font-semibold text-sidebar-foreground/60 uppercase tracking-wider",children:q.settings()}),Z("button",{onClick:()=>Y("general"),className:j("w-full flex items-center gap-3 px-4 py-3 text-sm font-medium rounded-lg transition-all",z==="general"?"bg-sidebar-accent text-sidebar-accent-foreground ring-1 ring-sidebar-border":"text-sidebar-foreground/75 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground"),children:[J(hN,{className:"w-5 h-5"}),q.general(),z==="general"&&J("div",{className:"ml-auto w-1.5 h-1.5 rounded-full bg-sidebar-primary"})]}),R?.role==="owner"&&Z("button",{onClick:()=>Y("transcode"),className:j("w-full flex items-center gap-3 px-4 py-3 text-sm font-medium rounded-lg transition-all",z==="transcode"?"bg-sidebar-accent text-sidebar-accent-foreground ring-1 ring-sidebar-border":"text-sidebar-foreground/75 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground"),children:[J(LN,{className:"w-5 h-5"}),q.media_processing(),z==="transcode"&&J("div",{className:"ml-auto w-1.5 h-1.5 rounded-full bg-sidebar-primary"})]}),Z("button",{onClick:()=>Y("notifications"),className:j("w-full flex items-center gap-3 px-4 py-3 text-sm font-medium rounded-lg transition-all",z==="notifications"?"bg-sidebar-accent text-sidebar-accent-foreground ring-1 ring-sidebar-border":"text-sidebar-foreground/75 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground"),children:[J(p4,{className:"w-5 h-5"}),q.notifications(),z==="notifications"&&J("div",{className:"ml-auto w-1.5 h-1.5 rounded-full bg-sidebar-primary"})]}),Z("button",{onClick:()=>Y("developer"),className:j("w-full flex items-center gap-3 px-4 py-3 text-sm font-medium rounded-lg transition-all",z==="developer"?"bg-sidebar-accent text-sidebar-accent-foreground ring-1 ring-sidebar-border":"text-sidebar-foreground/75 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground"),children:[J(AN,{className:"w-5 h-5"}),q.api_tokens(),z==="developer"&&J("div",{className:"ml-auto w-1.5 h-1.5 rounded-full bg-sidebar-primary"})]}),R?.role==="owner"&&Z(X0,{children:[J("div",{className:"mt-6 mb-2 px-4 text-xs font-semibold text-sidebar-foreground/60 uppercase tracking-wider pt-4 border-t border-sidebar-border",children:q.ai()}),Z("button",{onClick:()=>Y("providers"),className:j("w-full flex items-center gap-3 px-4 py-3 text-sm font-medium rounded-lg transition-all",z==="providers"?"bg-sidebar-accent text-sidebar-accent-foreground ring-1 ring-sidebar-border":"text-sidebar-foreground/75 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground"),children:[J(s0,{className:"w-5 h-5"}),q.providers(),z==="providers"&&J("div",{className:"ml-auto w-1.5 h-1.5 rounded-full bg-sidebar-primary"})]}),Z("button",{onClick:()=>Y("skills"),className:j("w-full flex items-center gap-3 px-4 py-3 text-sm font-medium rounded-lg transition-all",z==="skills"?"bg-sidebar-accent text-sidebar-accent-foreground ring-1 ring-sidebar-border":"text-sidebar-foreground/75 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground"),children:[J(b0,{className:"w-5 h-5"}),q.skills(),z==="skills"&&J("div",{className:"ml-auto w-1.5 h-1.5 rounded-full bg-sidebar-primary"})]}),Z("button",{onClick:()=>Y("agents"),className:j("w-full flex items-center gap-3 px-4 py-3 text-sm font-medium rounded-lg transition-all",z==="agents"?"bg-sidebar-accent text-sidebar-accent-foreground ring-1 ring-sidebar-border":"text-sidebar-foreground/75 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground"),children:[J(j4,{className:"w-5 h-5"}),q.agents(),z==="agents"&&J("div",{className:"ml-auto w-1.5 h-1.5 rounded-full bg-sidebar-primary"})]}),Z("button",{onClick:()=>Y("sandbox"),className:j("w-full flex items-center gap-3 px-4 py-3 text-sm font-medium rounded-lg transition-all",z==="sandbox"?"bg-sidebar-accent text-sidebar-accent-foreground ring-1 ring-sidebar-border":"text-sidebar-foreground/75 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground"),children:[J(CN,{className:"w-5 h-5"}),q.agent_sandbox(),z==="sandbox"&&J("div",{className:"ml-auto w-1.5 h-1.5 rounded-full bg-sidebar-primary"})]})]})]})}),J("main",{className:"flex-1 bg-background/50 h-full flex flex-col transition-colors duration-300 overflow-y-hidden",children:Z("div",{className:"flex-1 flex flex-col max-w-4xl w-full mx-auto p-6 md:p-10 overflow-hidden",children:[J("div",{className:"flex-none flex items-center justify-between mb-6",children:Z("div",{children:[Z("h2",{className:"text-2xl font-bold text-foreground",children:[z==="general"&&q.general_settings(),z==="transcode"&&q.media_processing(),z==="skills"&&q.skills_management(),z==="providers"&&q.ai_providers(),z==="agents"&&q.ai_agents(),z==="sandbox"&&q.agent_sandbox_settings(),z==="notifications"&&q.notification_settings(),z==="developer"&&q.developer_settings()]}),Z("p",{className:"text-sm text-muted-foreground mt-1",children:[z==="general"&&q.general_settings_description(),z==="transcode"&&q.transcode_description(),z==="skills"&&q.skills_description(),z==="providers"&&q.providers_description(),z==="agents"&&q.agents_description(),z==="sandbox"&&q.sandbox_description(),z==="notifications"&&q.notifications_description(),z==="developer"&&q.developer_description()]})]})}),Z("div",{className:"flex-1 overflow-hidden animate-in fade-in slide-in-from-bottom-4 duration-500",children:[z==="general"&&Z("div",{className:"h-full overflow-y-auto space-y-6 pr-1",children:[Z(o,{children:[Z(z0,{children:[J(Y0,{children:q.personal_info()}),J(Q0,{children:q.personal_info_description()})]}),J(l,{className:"space-y-6",children:Z("div",{className:"flex flex-col md:flex-row gap-8 items-start",children:[Z("div",{className:"flex flex-col items-center gap-3",children:[J("span",{className:"text-sm font-medium text-muted-foreground",children:q.avatar()}),Z("div",{className:"group relative cursor-pointer overflow-hidden rounded-full w-24 h-24 border border-border/60 shadow-md transition-all hover:opacity-90",onClick:()=>T.current?.click(),children:[Z(DN,{className:"w-24 h-24",children:[R?.image&&J(EN,{src:R.image,alt:R.name,className:"object-cover w-24 h-24"}),J(yN,{className:"text-2xl bg-primary/40 text-foreground",children:L(R?.name)})]}),J("div",{className:"absolute inset-0 bg-black/40 flex items-center justify-center opacity-0 group-hover:opacity-100 transition-opacity",children:J("span",{className:"text-white text-xs font-semibold",children:q.change()})})]}),Z("div",{className:"flex gap-2",children:[J(m,{variant:"outline",size:"sm",onClick:()=>T.current?.click(),children:q.upload()}),R?.image&&J(m,{variant:"ghost",size:"sm",className:"text-red-500 hover:text-red-600",onClick:I,children:q.remove()})]}),J("input",{type:"file",ref:T,className:"hidden",accept:"image/*",onChange:y})]}),Z("div",{className:"flex-1 space-y-4 w-full",children:[Z("div",{className:"space-y-2",children:[J("label",{className:"text-sm font-medium text-muted-foreground",children:q.name()}),J($,{value:X,onChange:(M)=>Q(M.target.value),placeholder:q.enter_your_name(),className:"max-w-md"})]}),Z("div",{className:"space-y-2",children:[J("label",{className:"text-sm font-medium text-muted-foreground",children:q.email()}),J($,{value:R?.email||"",disabled:!0,className:"max-w-md bg-muted/50 cursor-not-allowed"}),J("p",{className:"text-xs text-muted-foreground",children:q.email_managed_by_auth()})]}),Z(m,{onClick:c,disabled:K||!X.trim(),className:"mt-2",children:[K&&J(x,{className:"w-4 h-4 animate-spin mr-2"}),q.save_changes()]})]})]})})]}),Z(o,{className:"border border-slate-200 dark:border-slate-800 mt-6",children:[Z(z0,{children:[J(Y0,{children:q.language_settings()}),J(Q0,{children:q.select_preferred_language()})]}),J(l,{className:"space-y-4",children:J("div",{className:"max-w-xs",children:Z(S0,{value:C,onValueChange:h,children:[J(g0,{children:J(F0,{placeholder:q.select_language()})}),Z(m0,{children:[J(w0,{value:"en",children:q.english()}),J(w0,{value:"zh",children:q.chinese()})]})]})})})]}),J(kN,{isOpen:H,onClose:()=>P(!1),imageSrc:k,onConfirm:V})]}),z==="transcode"&&J("div",{className:"h-full overflow-y-auto pr-1",children:Z(o,{children:[Z(z0,{children:[J(Y0,{children:q.transcode_settings()}),Z(Q0,{children:[J("span",{className:"block mb-2",children:q.transcode_description()}),J("span",{className:"block",children:q.transcode_strategy_note()})]})]}),J(l,{className:"space-y-6",children:Z("div",{className:"space-y-3",children:[J("h3",{className:"text-lg font-medium",children:q.video_strategy()}),Z("div",{className:"space-y-3",children:[Z("div",{className:j("cursor-pointer rounded-lg border p-4 transition-all hover:border-primary",v===f0.best_match?"border-primary bg-primary/5":"border-border"),onClick:()=>r(f0.best_match),children:[J("div",{className:"font-semibold",children:q.best_match()}),J("div",{className:"text-sm text-muted-foreground",children:q.best_match_description()})]}),Z("div",{className:j("cursor-pointer rounded-lg border p-4 transition-all hover:border-primary",v===f0.all?"border-primary bg-primary/5":"border-border"),onClick:()=>r(f0.all),children:[J("div",{className:"font-semibold",children:q.all_resolutions()}),J("div",{className:"text-sm text-muted-foreground",children:q.all_resolutions_description()})]})]})]})})]})}),z==="skills"&&J("div",{className:"h-full overflow-y-auto pr-1",children:J(zN,{teamId:N})}),z==="providers"&&J(r6,{teamId:N}),z==="agents"&&J("div",{className:"h-full overflow-y-auto pr-1",children:J(p6,{teamId:N})}),z==="sandbox"&&J("div",{className:"h-full overflow-y-auto pr-1",children:J(JN,{teamId:N})}),z==="notifications"&&J(qN,{teamId:N}),z==="developer"&&J(wN,{teamId:N})]})]})})]})})}var aN=RN("/teams/$teamId/settings")({component:lN});export{aN as Route};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{$f as e,Bi as o,Li as t}from"./chunk-r673a3wt.js";function n({className:a,...r}){return e(o.Root,{"data-slot":"label",className:t("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",a),...r})}
|
|
2
|
+
export{n as Nf};
|