@ai4b-team/fsaos-gateway-sdk 3.35.1 → 3.37.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,10 +1,10 @@
1
- /* @fsaos/gateway v2.0.0 — Unified FSAOS Edge Runtime — 2026-10-07T03:44:34.187Z */
2
- "use strict";var __FSAOS_GATEWAY__=(()=>{var yu=Object.create;var An=Object.defineProperty;var _u=Object.getOwnPropertyDescriptor;var vu=Object.getOwnPropertyNames;var bu=Object.getPrototypeOf,wu=Object.prototype.hasOwnProperty;var Ri=e=>{throw TypeError(e)};var Su=(e,t,n)=>t in e?An(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var kn=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Ru=(e,t)=>{for(var n in t)An(e,n,{get:t[n],enumerable:!0})},xi=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of vu(t))!wu.call(e,s)&&s!==n&&An(e,s,{get:()=>t[s],enumerable:!(r=_u(t,s))||r.enumerable});return e};var Y=(e,t,n)=>(n=e!=null?yu(bu(e)):{},xi(t||!e||!e.__esModule?An(n,"default",{value:e,enumerable:!0}):n,e)),xu=e=>xi(An({},"__esModule",{value:!0}),e);var X=(e,t,n)=>Su(e,typeof t!="symbol"?t+"":t,n),gs=(e,t,n)=>t.has(e)||Ri("Cannot "+n);var u=(e,t,n)=>(gs(e,t,"read from private field"),n?n.call(e):t.get(e)),w=(e,t,n)=>t.has(e)?Ri("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,n),b=(e,t,n,r)=>(gs(e,t,"write to private field"),r?r.call(e,n):t.set(e,n),n),P=(e,t,n)=>(gs(e,t,"access private method"),n);var Mn=(e,t,n,r)=>({set _(s){b(e,t,s,n)},get _(){return u(e,t,r)}});var ue=kn((Ul,Ci)=>{Ci.exports=React});var Rr=kn((Qf,io)=>{io.exports={jsx:React.createElement,jsxs:React.createElement,Fragment:React.Fragment}});var vo=kn((pp,_o)=>{_o.exports={createClient:window.supabase.createClient}});var Uo=kn((xp,Do)=>{Do.exports=ReactDOM});var jc=kn((vh,Lc)=>{Lc.exports=ReactDOM});var wi={};Ru(wi,{ComponentRenderer:()=>uc,EnforcementDeniedError:()=>et,FormSubmissionError:()=>In,GatewayRequestError:()=>Pe,InteractionTrackingError:()=>Pn,KernelProvider:()=>lc,QueryClientProvider:()=>Bn,auth:()=>Xc,awaitAnchorReady:()=>Yn,awaitScopeReady:()=>Eo,callTool:()=>zc,cancelQueuedTurn:()=>Nc,cancelTurn:()=>Dc,clearCachedToken:()=>Ws,clearSession:()=>Js,createItem:()=>Hc,disconnectSSE:()=>ri,disposeVfsRealtimeWs:()=>oi,electHomeAnchor:()=>Tt,emitEvent:()=>sa,fetchChannelMessages:()=>ha,fetchChannelMessagesPage:()=>ir,fetchChannelMessagesWithCards:()=>Xr,fetchEdgesForItem:()=>Hr,fetchItemHistory:()=>zr,fetchItemVersions:()=>sr,fetchItems:()=>vn,fetchMemberFocus:()=>Jr,fetchOpenEnvelope:()=>Yr,fetchRecentActivity:()=>Gr,fetchResolvedItems:()=>vi,fetchTimelineHistory:()=>bi,fetchTurnQueueEntries:()=>fa,fetchTypeDefinitions:()=>Vr,fetchVfsChildren:()=>rr,fetchVfsChildrenPage:()=>Br,fetchVfsItem:()=>Wr,fetchVfsItemById:()=>jr,fetchVfsTree:()=>$r,gatewayCall:()=>x,getAccessToken:()=>Je,getAnchor:()=>cn,getAnchorRef:()=>he,getAnchorVersion:()=>Hs,getAssetUrl:()=>Yc,getDefaultSort:()=>nu,getHomeAnchor:()=>de,getMountVersion:()=>Xn,getMounts:()=>Ce,getPathSubscriptionState:()=>oa,getQueryClient:()=>T,getRequiredFormFields:()=>ru,getScope:()=>Z,getScopeVersion:()=>ie,getServerClockOffsetMs:()=>Oo,getServerClockSyncedAt:()=>Fo,getSessionEntry:()=>Et,hasServerClock:()=>Mo,initSession:()=>ft,initVfsRealtimeWs:()=>Mt,initializeFsaos:()=>Qc,initializeWorkspace:()=>ls,interpretSchema:()=>_i,invalidateAllVfs:()=>_a,invalidateChannelMessages:()=>ba,invalidateChildren:()=>Lr,invalidateItem:()=>ii,invalidateOpenEnvelope:()=>wa,invalidatePathAndParent:()=>ga,invalidateSubtree:()=>ya,invalidateTypes:()=>va,isAnchorReady:()=>Gs,isChannelPath:()=>Ke,isListableItemsFilter:()=>_n,isScopeReady:()=>kr,itemsFilterFromQueryFilter:()=>pa,listChildren:()=>Vc,loadMounts:()=>Ot,mount:()=>Zc,mountRealtimeScope:()=>wn,normalizeItem:()=>ge,onConnectionStateChange:()=>ua,pathSubscriptionMatches:()=>ei,ping:()=>ia,pushChanges:()=>Gc,queryClient:()=>Vo,readItem:()=>Bc,refreshQuery:()=>Te,registerCleanup:()=>se,replaceMounts:()=>rs,resetAllSdkState:()=>un,resolvePrincipalId:()=>oc,resubscribePath:()=>ca,selectMount:()=>ur,serverDeadlinePassed:()=>qo,serverMsUntil:()=>Qo,serverNow:()=>Mr,setAnchor:()=>Ir,setCachedToken:()=>So,setQueryClient:()=>Bo,setScope:()=>To,setupRequireShim:()=>eu,signal:()=>Jc,startTracking:()=>us,steerTurn:()=>Uc,submitForm:()=>Kc,subscribeAnchor:()=>$s,subscribeArtifactStream:()=>ds,subscribeMounts:()=>Ar,subscribeScope:()=>ke,subscribeToEvents:()=>ne,subscribeToPath:()=>Kr,subscribeToScope:()=>yn,trackAction:()=>Oc,trackEvent:()=>Ft,trackPageView:()=>Mc,unmountRealtimeScope:()=>ts,updateItem:()=>$c,uploadFile:()=>su,useAccounts:()=>Ya,useAgentTimeline:()=>lu,useAllChannels:()=>as,useArrangement:()=>xn,useArtifactStream:()=>uu,useAsset:()=>Za,useAuth:()=>os,useChannelMessages:()=>dc,useChannels:()=>pc,useChildren:()=>qa,useComponent:()=>di,useCreate:()=>gc,useDelete:()=>vc,useDmChannels:()=>mc,useEdges:()=>ja,useEventStream:()=>Rc,useFileUpload:()=>ou,useInfiniteChannelMessages:()=>fc,useInfiniteChildren:()=>La,useInfiniteItems:()=>Ka,useItem:()=>Oa,useItemById:()=>Fa,useItemHistory:()=>Ga,useItemVersions:()=>$a,useItems:()=>Na,useLink:()=>wc,useList:()=>li,useMemberFocus:()=>Ha,useMintedAsset:()=>Cc,useMounts:()=>Xa,useMove:()=>bc,useMutation:()=>Sc,useNotifications:()=>fi,useOpen:()=>Ba,usePermission:()=>rc,usePermissions:()=>sc,usePersonalItemOrder:()=>Pc,usePinnedItems:()=>fu,usePrincipal:()=>ac,useRealtimeQuery:()=>xc,useRecentActivity:()=>za,useResolve:()=>Ua,useResolvedItems:()=>cu,useScope:()=>Ja,useScopeReady:()=>Ma,useSearch:()=>Da,useTheme:()=>nc,useTimelineHistory:()=>du,useTool:()=>cc,useTree:()=>Qa,useType:()=>Wa,useTypeHelpers:()=>Va,useTypes:()=>is,useUnreadCounts:()=>hc,useUpdate:()=>yc,useUpdatePrincipal:()=>_c,vfsKeys:()=>S,waitForPathReady:()=>aa});var et=class e extends Error{constructor(n){let r=n.message||e.fallbackMessage(n);super(r);X(this,"name","EnforcementDeniedError");X(this,"deniedBy");X(this,"ruleKey");X(this,"displayName");this.deniedBy=n.denied_by||n.error_type||n.error||"unknown";let s=n.enforcement;this.ruleKey=s?.rule_key??void 0,this.displayName=s?.display_name??void 0}static fallbackMessage(n){let r=n.error||"",s=n.denied_by||"";return s==="rule"||r==="RULE_DENIED"?"This feature is not enabled for this workspace.":s==="entitlement"||r==="ENTITLEMENT_REQUIRED"?"This feature requires a plan upgrade.":s==="access"||r==="ACCESS_DENIED"||r==="PERMISSION_DENIED"?"You don't have permission to do this.":"This action is not allowed."}get isRuleDenial(){return this.deniedBy==="rule"||this.deniedBy==="RULE_DENIED"}get isAccessDenial(){return this.deniedBy==="access"||this.deniedBy==="ACCESS_DENIED"}get isEntitlementDenial(){return this.deniedBy==="entitlement"||this.deniedBy==="ENTITLEMENT_REQUIRED"}};var Cn=Y(ue(),1);var Se=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}};var gt,tt,Qt,Pi,Cu=(Pi=class extends Se{constructor(){super();w(this,gt);w(this,tt);w(this,Qt);b(this,Qt,t=>{if(typeof window<"u"&&window.addEventListener){let n=()=>t();return window.addEventListener("visibilitychange",n,!1),()=>{window.removeEventListener("visibilitychange",n)}}})}onSubscribe(){u(this,tt)||this.setEventListener(u(this,Qt))}onUnsubscribe(){var t;this.hasListeners()||((t=u(this,tt))==null||t.call(this),b(this,tt,void 0))}setEventListener(t){var n;b(this,Qt,t),(n=u(this,tt))==null||n.call(this),b(this,tt,t(r=>{typeof r=="boolean"?this.setFocused(r):this.onFocus()}))}setFocused(t){u(this,gt)!==t&&(b(this,gt,t),this.onFocus())}onFocus(){let t=this.isFocused();this.listeners.forEach(n=>{n(t)})}isFocused(){return typeof u(this,gt)=="boolean"?u(this,gt):globalThis.document?.visibilityState!=="hidden"}},gt=new WeakMap,tt=new WeakMap,Qt=new WeakMap,Pi),Dt=new Cu;var Pu={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},nt,ys,Ti,Tu=(Ti=class{constructor(){w(this,nt,Pu);w(this,ys,!1)}setTimeoutProvider(e){b(this,nt,e)}setTimeout(e,t){return u(this,nt).setTimeout(e,t)}clearTimeout(e){u(this,nt).clearTimeout(e)}setInterval(e,t){return u(this,nt).setInterval(e,t)}clearInterval(e){u(this,nt).clearInterval(e)}},nt=new WeakMap,ys=new WeakMap,Ti),Fe=new Tu;function Ei(e){setTimeout(e,0)}var vs=typeof window>"u"||"Deno"in globalThis;function $(){}function ki(e,t){return typeof e=="function"?e(t):e}function On(e){return typeof e=="number"&&e>=0&&e!==1/0}function mr(e,t){return Math.max(e+(t||0)-Date.now(),0)}function Ie(e,t){return typeof e=="function"?e(t):e}function fe(e,t){return typeof e=="function"?e(t):e}function hr(e,t){let{type:n="all",exact:r,fetchStatus:s,predicate:i,queryKey:o,stale:c}=e;if(o){if(r){if(t.queryHash!==Fn(o,t.options))return!1}else if(!yt(t.queryKey,o))return!1}if(n!=="all"){let a=t.isActive();if(n==="active"&&!a||n==="inactive"&&a)return!1}return!(typeof c=="boolean"&&t.isStale()!==c||s&&s!==t.state.fetchStatus||i&&!i(t))}function gr(e,t){let{exact:n,status:r,predicate:s,mutationKey:i}=e;if(i){if(!t.options.mutationKey)return!1;if(n){if(qe(t.options.mutationKey)!==qe(i))return!1}else if(!yt(t.options.mutationKey,i))return!1}return!(r&&t.state.status!==r||s&&!s(t))}function Fn(e,t){return(t?.queryKeyHashFn||qe)(e)}function qe(e){return JSON.stringify(e,(t,n)=>_s(n)?Object.keys(n).sort().reduce((r,s)=>(r[s]=n[s],r),{}):n)}function yt(e,t){return e===t?!0:typeof e!=typeof t?!1:e&&t&&typeof e=="object"&&typeof t=="object"?Object.keys(t).every(n=>yt(e[n],t[n])):!1}var Eu=Object.prototype.hasOwnProperty;function bs(e,t,n=0){if(e===t)return e;if(n>500)return t;let r=Ii(e)&&Ii(t);if(!r&&!(_s(e)&&_s(t)))return t;let i=(r?e:Object.keys(e)).length,o=r?t:Object.keys(t),c=o.length,a=r?new Array(c):{},l=0;for(let d=0;d<c;d++){let p=r?d:o[d],m=e[p],f=t[p];if(m===f){a[p]=m,(r?d<i:Eu.call(e,p))&&l++;continue}if(m===null||f===null||typeof m!="object"||typeof f!="object"){a[p]=f;continue}let y=bs(m,f,n+1);a[p]=y,y===m&&l++}return i===c&&l===i?e:a}function Ut(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(e[n]!==t[n])return!1;return!0}function Ii(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function _s(e){if(!Ai(e))return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(!Ai(n)||!n.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(e)!==Object.prototype)}function Ai(e){return Object.prototype.toString.call(e)==="[object Object]"}function Mi(e){return new Promise(t=>{Fe.setTimeout(t,e)})}function qn(e,t,n){return typeof n.structuralSharing=="function"?n.structuralSharing(e,t):n.structuralSharing!==!1?bs(e,t):t}function Oi(e,t,n=0){let r=[...e,t];return n&&r.length>n?r.slice(1):r}function Fi(e,t,n=0){let r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var Nt=Symbol();function yr(e,t){return!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===Nt?()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function Kt(e,t){return typeof e=="function"?e(...t):!!e}function qi(e,t,n){let r=!1,s;return Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(s??(s=t()),r||(r=!0,s.aborted?n():s.addEventListener("abort",n,{once:!0})),s)}),e}var Qe=(()=>{let e=()=>vs;return{isServer(){return e()},setIsServer(t){e=t}}})();function Qn(){let e,t,n=new Promise((s,i)=>{e=s,t=i});n.status="pending",n.catch(()=>{});function r(s){Object.assign(n,s),delete n.resolve,delete n.reject}return n.resolve=s=>{r({status:"fulfilled",value:s}),e(s)},n.reject=s=>{r({status:"rejected",reason:s}),t(s)},n}var Qi=Ei;function Iu(){let e=[],t=0,n=c=>{c()},r=c=>{c()},s=Qi,i=c=>{t?e.push(c):s(()=>{n(c)})},o=()=>{let c=e;e=[],c.length&&s(()=>{r(()=>{c.forEach(a=>{n(a)})})})};return{batch:c=>{let a;t++;try{a=c()}finally{t--,t||o()}return a},batchCalls:c=>(...a)=>{i(()=>{c(...a)})},schedule:i,setNotifyFunction:c=>{n=c},setBatchNotifyFunction:c=>{r=c},setScheduler:c=>{s=c}}}var L=Iu();var Lt,rt,jt,Di,Au=(Di=class extends Se{constructor(){super();w(this,Lt,!0);w(this,rt);w(this,jt);b(this,jt,t=>{if(typeof window<"u"&&window.addEventListener){let n=()=>t(!0),r=()=>t(!1);return window.addEventListener("online",n,!1),window.addEventListener("offline",r,!1),()=>{window.removeEventListener("online",n),window.removeEventListener("offline",r)}}})}onSubscribe(){u(this,rt)||this.setEventListener(u(this,jt))}onUnsubscribe(){var t;this.hasListeners()||((t=u(this,rt))==null||t.call(this),b(this,rt,void 0))}setEventListener(t){var n;b(this,jt,t),(n=u(this,rt))==null||n.call(this),b(this,rt,t(this.setOnline.bind(this)))}setOnline(t){u(this,Lt)!==t&&(b(this,Lt,t),this.listeners.forEach(r=>{r(t)}))}isOnline(){return u(this,Lt)}},Lt=new WeakMap,rt=new WeakMap,jt=new WeakMap,Di),Wt=new Au;function ku(e){return Math.min(1e3*2**e,3e4)}function ws(e){return(e??"online")==="online"?Wt.isOnline():!0}var _r=class extends Error{constructor(e){super("CancelledError"),this.revert=e?.revert,this.silent=e?.silent}};function vr(e){let t=!1,n=0,r,s=Qn(),i=()=>s.status!=="pending",o=h=>{if(!i()){let g=new _r(h);m(g),e.onCancel?.(g)}},c=()=>{t=!0},a=()=>{t=!1},l=()=>Dt.isFocused()&&(e.networkMode==="always"||Wt.isOnline())&&e.canRun(),d=()=>ws(e.networkMode)&&e.canRun(),p=h=>{i()||(r?.(),s.resolve(h))},m=h=>{i()||(r?.(),s.reject(h))},f=()=>new Promise(h=>{r=g=>{(i()||l())&&h(g)},e.onPause?.()}).then(()=>{r=void 0,i()||e.onContinue?.()}),y=()=>{if(i())return;let h,g=n===0?e.initialPromise:void 0;try{h=g??e.fn()}catch(v){h=Promise.reject(v)}Promise.resolve(h).then(p).catch(v=>{if(i())return;let C=e.retry??(Qe.isServer()?0:3),q=e.retryDelay??ku,F=typeof q=="function"?q(n,v):q,R=C===!0||typeof C=="number"&&n<C||typeof C=="function"&&C(n,v);if(t||!R){m(v);return}n++,e.onFail?.(n,v),Mi(F).then(()=>l()?void 0:f()).then(()=>{t?m(v):y()})})};return{promise:s,status:()=>s.status,cancel:o,continue:()=>(r?.(),s),cancelRetry:c,continueRetry:a,canStart:d,start:()=>(d()?y():f().then(y),s)}}var _t,Ui,br=(Ui=class{constructor(){w(this,_t)}destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),On(this.gcTime)&&b(this,_t,Fe.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(Qe.isServer()?1/0:5*60*1e3))}clearGcTimeout(){u(this,_t)!==void 0&&(Fe.clearTimeout(u(this,_t)),b(this,_t,void 0))}},_t=new WeakMap,Ui);var vt,Bt,Re,bt,ee,Dn,wt,_e,Wi,We,Li,ji=(Li=class extends br{constructor(t){super();w(this,_e);w(this,vt);w(this,Bt);w(this,Re);w(this,bt);w(this,ee);w(this,Dn);w(this,wt);b(this,wt,!1),b(this,Dn,t.defaultOptions),this.setOptions(t.options),this.observers=[],b(this,bt,t.client),b(this,Re,u(this,bt).getQueryCache()),this.queryKey=t.queryKey,this.queryHash=t.queryHash,b(this,vt,Ki(this.options)),this.state=t.state??u(this,vt),this.scheduleGc()}get meta(){return this.options.meta}get promise(){return u(this,ee)?.promise}setOptions(t){if(this.options={...u(this,Dn),...t},this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){let n=Ki(this.options);n.data!==void 0&&(this.setState(Ni(n.data,n.dataUpdatedAt)),b(this,vt,n))}}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&u(this,Re).remove(this)}setData(t,n){let r=qn(this.state.data,t,this.options);return P(this,_e,We).call(this,{data:r,type:"success",dataUpdatedAt:n?.updatedAt,manual:n?.manual}),r}setState(t,n){P(this,_e,We).call(this,{type:"setState",state:t,setStateOptions:n})}cancel(t){let n=u(this,ee)?.promise;return u(this,ee)?.cancel(t),n?n.then($).catch($):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return u(this,vt)}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(t=>fe(t.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===Nt||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0?this.observers.some(t=>Ie(t.options.staleTime,this)==="static"):!1}isStale(){return this.getObserversCount()>0?this.observers.some(t=>t.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(t=0){return this.state.data===void 0?!0:t==="static"?!1:this.state.isInvalidated?!0:!mr(this.state.dataUpdatedAt,t)}onFocus(){this.observers.find(n=>n.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),u(this,ee)?.continue()}onOnline(){this.observers.find(n=>n.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),u(this,ee)?.continue()}addObserver(t){this.observers.includes(t)||(this.observers.push(t),this.clearGcTimeout(),u(this,Re).notify({type:"observerAdded",query:this,observer:t}))}removeObserver(t){this.observers.includes(t)&&(this.observers=this.observers.filter(n=>n!==t),this.observers.length||(u(this,ee)&&(u(this,wt)||P(this,_e,Wi).call(this)?u(this,ee).cancel({revert:!0}):u(this,ee).cancelRetry()),this.scheduleGc()),u(this,Re).notify({type:"observerRemoved",query:this,observer:t}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||P(this,_e,We).call(this,{type:"invalidate"})}async fetch(t,n){if(this.state.fetchStatus!=="idle"&&u(this,ee)?.status()!=="rejected"){if(this.state.data!==void 0&&n?.cancelRefetch)this.cancel({silent:!0});else if(u(this,ee))return u(this,ee).continueRetry(),u(this,ee).promise}if(t&&this.setOptions(t),!this.options.queryFn){let a=this.observers.find(l=>l.options.queryFn);a&&this.setOptions(a.options)}let r=new AbortController,s=a=>{Object.defineProperty(a,"signal",{enumerable:!0,get:()=>(b(this,wt,!0),r.signal)})},i=()=>{let a=yr(this.options,n),d=(()=>{let p={client:u(this,bt),queryKey:this.queryKey,meta:this.meta};return s(p),p})();return b(this,wt,!1),this.options.persister?this.options.persister(a,d,this):a(d)},c=(()=>{let a={fetchOptions:n,options:this.options,queryKey:this.queryKey,client:u(this,bt),state:this.state,fetchFn:i};return s(a),a})();this.options.behavior?.onFetch(c,this),b(this,Bt,this.state),(this.state.fetchStatus==="idle"||this.state.fetchMeta!==c.fetchOptions?.meta)&&P(this,_e,We).call(this,{type:"fetch",meta:c.fetchOptions?.meta}),b(this,ee,vr({initialPromise:n?.initialPromise,fn:c.fetchFn,onCancel:a=>{a instanceof _r&&a.revert&&this.setState({...u(this,Bt),fetchStatus:"idle"}),r.abort()},onFail:(a,l)=>{P(this,_e,We).call(this,{type:"failed",failureCount:a,error:l})},onPause:()=>{P(this,_e,We).call(this,{type:"pause"})},onContinue:()=>{P(this,_e,We).call(this,{type:"continue"})},retry:c.options.retry,retryDelay:c.options.retryDelay,networkMode:c.options.networkMode,canRun:()=>!0}));try{let a=await u(this,ee).start();if(a===void 0)throw new Error(`${this.queryHash} data is undefined`);return this.setData(a),u(this,Re).config.onSuccess?.(a,this),u(this,Re).config.onSettled?.(a,this.state.error,this),a}catch(a){if(a instanceof _r){if(a.silent)return u(this,ee).promise;if(a.revert){if(this.state.data===void 0)throw a;return this.state.data}}throw P(this,_e,We).call(this,{type:"error",error:a}),u(this,Re).config.onError?.(a,this),u(this,Re).config.onSettled?.(this.state.data,a,this),a}finally{this.scheduleGc()}}},vt=new WeakMap,Bt=new WeakMap,Re=new WeakMap,bt=new WeakMap,ee=new WeakMap,Dn=new WeakMap,wt=new WeakMap,_e=new WeakSet,Wi=function(){return this.state.fetchStatus==="paused"&&this.state.status==="pending"},We=function(t){let n=r=>{switch(t.type){case"failed":return{...r,fetchFailureCount:t.failureCount,fetchFailureReason:t.error};case"pause":return{...r,fetchStatus:"paused"};case"continue":return{...r,fetchStatus:"fetching"};case"fetch":return{...r,...Ss(r.data,this.options),fetchMeta:t.meta??null};case"success":let s={...r,...Ni(t.data,t.dataUpdatedAt),dataUpdateCount:r.dataUpdateCount+1,...!t.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return b(this,Bt,t.manual?s:void 0),s;case"error":let i=t.error;return{...r,error:i,errorUpdateCount:r.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:r.fetchFailureCount+1,fetchFailureReason:i,fetchStatus:"idle",status:"error",isInvalidated:!0};case"invalidate":return{...r,isInvalidated:!0};case"setState":return{...r,...t.state}}};this.state=n(this.state),L.batch(()=>{this.observers.forEach(r=>{r.onQueryUpdate()}),u(this,Re).notify({query:this,type:"updated",action:t})})},Li);function Ss(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:ws(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}function Ni(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:"success"}}function Ki(e){let t=typeof e.initialData=="function"?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt=="function"?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?"success":"pending",fetchStatus:"idle"}}var pe,D,Nn,le,St,Vt,Be,st,Kn,Ht,$t,Rt,xt,it,Gt,K,Un,Rs,xs,Cs,Ps,Ts,Es,Is,$i,Hi,Ln=(Hi=class extends Se{constructor(t,n){super();w(this,K);w(this,pe);w(this,D);w(this,Nn);w(this,le);w(this,St);w(this,Vt);w(this,Be);w(this,st);w(this,Kn);w(this,Ht);w(this,$t);w(this,Rt);w(this,xt);w(this,it);w(this,Gt,new Set);this.options=n,b(this,pe,t),b(this,st,null),b(this,Be,Qn()),this.bindMethods(),this.setOptions(n)}bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(u(this,D).addObserver(this),Bi(u(this,D),this.options)?P(this,K,Un).call(this):this.updateResult(),P(this,K,Ps).call(this))}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return As(u(this,D),this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return As(u(this,D),this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,P(this,K,Ts).call(this),P(this,K,Es).call(this),u(this,D).removeObserver(this)}setOptions(t){let n=this.options,r=u(this,D);if(this.options=u(this,pe).defaultQueryOptions(t),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof fe(this.options.enabled,u(this,D))!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");P(this,K,Is).call(this),u(this,D).setOptions(this.options),n._defaulted&&!Ut(this.options,n)&&u(this,pe).getQueryCache().notify({type:"observerOptionsUpdated",query:u(this,D),observer:this});let s=this.hasListeners();s&&Vi(u(this,D),r,this.options,n)&&P(this,K,Un).call(this),this.updateResult(),s&&(u(this,D)!==r||fe(this.options.enabled,u(this,D))!==fe(n.enabled,u(this,D))||Ie(this.options.staleTime,u(this,D))!==Ie(n.staleTime,u(this,D)))&&P(this,K,Rs).call(this);let i=P(this,K,xs).call(this);s&&(u(this,D)!==r||fe(this.options.enabled,u(this,D))!==fe(n.enabled,u(this,D))||i!==u(this,it))&&P(this,K,Cs).call(this,i)}getOptimisticResult(t){let n=u(this,pe).getQueryCache().build(u(this,pe),t),r=this.createResult(n,t);return Ou(this,r)&&(b(this,le,r),b(this,Vt,this.options),b(this,St,u(this,D).state)),r}getCurrentResult(){return u(this,le)}trackResult(t,n){return new Proxy(t,{get:(r,s)=>(this.trackProp(s),n?.(s),s==="promise"&&(this.trackProp("data"),!this.options.experimental_prefetchInRender&&u(this,Be).status==="pending"&&u(this,Be).reject(new Error("experimental_prefetchInRender feature flag is not enabled"))),Reflect.get(r,s))})}trackProp(t){u(this,Gt).add(t)}getCurrentQuery(){return u(this,D)}refetch({...t}={}){return this.fetch({...t})}fetchOptimistic(t){let n=u(this,pe).defaultQueryOptions(t),r=u(this,pe).getQueryCache().build(u(this,pe),n);return r.fetch().then(()=>this.createResult(r,n))}fetch(t){return P(this,K,Un).call(this,{...t,cancelRefetch:t.cancelRefetch??!0}).then(()=>(this.updateResult(),u(this,le)))}createResult(t,n){let r=u(this,D),s=this.options,i=u(this,le),o=u(this,St),c=u(this,Vt),l=t!==r?t.state:u(this,Nn),{state:d}=t,p={...d},m=!1,f;if(n._optimisticResults){let I=this.hasListeners(),B=!I&&Bi(t,n),M=I&&Vi(t,r,n,s);(B||M)&&(p={...p,...Ss(d.data,t.options)}),n._optimisticResults==="isRestoring"&&(p.fetchStatus="idle")}let{error:y,errorUpdatedAt:h,status:g}=p;f=p.data;let v=!1;if(n.placeholderData!==void 0&&f===void 0&&g==="pending"){let I;i?.isPlaceholderData&&n.placeholderData===c?.placeholderData?(I=i.data,v=!0):I=typeof n.placeholderData=="function"?n.placeholderData(u(this,$t)?.state.data,u(this,$t)):n.placeholderData,I!==void 0&&(g="success",f=qn(i?.data,I,n),m=!0)}if(n.select&&f!==void 0&&!v)if(i&&f===o?.data&&n.select===u(this,Kn))f=u(this,Ht);else try{b(this,Kn,n.select),f=n.select(f),f=qn(i?.data,f,n),b(this,Ht,f),b(this,st,null)}catch(I){b(this,st,I)}u(this,st)&&(y=u(this,st),f=u(this,Ht),h=Date.now(),g="error");let C=p.fetchStatus==="fetching",q=g==="pending",F=g==="error",R=q&&C,k=f!==void 0,N={status:g,fetchStatus:p.fetchStatus,isPending:q,isSuccess:g==="success",isError:F,isInitialLoading:R,isLoading:R,data:f,dataUpdatedAt:p.dataUpdatedAt,error:y,errorUpdatedAt:h,failureCount:p.fetchFailureCount,failureReason:p.fetchFailureReason,errorUpdateCount:p.errorUpdateCount,isFetched:t.isFetched(),isFetchedAfterMount:p.dataUpdateCount>l.dataUpdateCount||p.errorUpdateCount>l.errorUpdateCount,isFetching:C,isRefetching:C&&!q,isLoadingError:F&&!k,isPaused:p.fetchStatus==="paused",isPlaceholderData:m,isRefetchError:F&&k,isStale:ks(t,n),refetch:this.refetch,promise:u(this,Be),isEnabled:fe(n.enabled,t)!==!1};if(this.options.experimental_prefetchInRender){let I=N.data!==void 0,B=N.status==="error"&&!I,M=O=>{B?O.reject(N.error):I&&O.resolve(N.data)},E=()=>{let O=b(this,Be,N.promise=Qn());M(O)},Q=u(this,Be);switch(Q.status){case"pending":t.queryHash===r.queryHash&&M(Q);break;case"fulfilled":(B||N.data!==Q.value)&&E();break;case"rejected":(!B||N.error!==Q.reason)&&E();break}}return N}updateResult(){let t=u(this,le),n=this.createResult(u(this,D),this.options);if(b(this,St,u(this,D).state),b(this,Vt,this.options),u(this,St).data!==void 0&&b(this,$t,u(this,D)),Ut(n,t))return;b(this,le,n);let r=()=>{if(!t)return!0;let{notifyOnChangeProps:s}=this.options,i=typeof s=="function"?s():s;if(i==="all"||!i&&!u(this,Gt).size)return!0;let o=new Set(i??u(this,Gt));return this.options.throwOnError&&o.add("error"),Object.keys(u(this,le)).some(c=>{let a=c;return u(this,le)[a]!==t[a]&&o.has(a)})};P(this,K,$i).call(this,{listeners:r()})}onQueryUpdate(){this.updateResult(),this.hasListeners()&&P(this,K,Ps).call(this)}},pe=new WeakMap,D=new WeakMap,Nn=new WeakMap,le=new WeakMap,St=new WeakMap,Vt=new WeakMap,Be=new WeakMap,st=new WeakMap,Kn=new WeakMap,Ht=new WeakMap,$t=new WeakMap,Rt=new WeakMap,xt=new WeakMap,it=new WeakMap,Gt=new WeakMap,K=new WeakSet,Un=function(t){P(this,K,Is).call(this);let n=u(this,D).fetch(this.options,t);return t?.throwOnError||(n=n.catch($)),n},Rs=function(){P(this,K,Ts).call(this);let t=Ie(this.options.staleTime,u(this,D));if(Qe.isServer()||u(this,le).isStale||!On(t))return;let r=mr(u(this,le).dataUpdatedAt,t)+1;b(this,Rt,Fe.setTimeout(()=>{u(this,le).isStale||this.updateResult()},r))},xs=function(){return(typeof this.options.refetchInterval=="function"?this.options.refetchInterval(u(this,D)):this.options.refetchInterval)??!1},Cs=function(t){P(this,K,Es).call(this),b(this,it,t),!(Qe.isServer()||fe(this.options.enabled,u(this,D))===!1||!On(u(this,it))||u(this,it)===0)&&b(this,xt,Fe.setInterval(()=>{(this.options.refetchIntervalInBackground||Dt.isFocused())&&P(this,K,Un).call(this)},u(this,it)))},Ps=function(){P(this,K,Rs).call(this),P(this,K,Cs).call(this,P(this,K,xs).call(this))},Ts=function(){u(this,Rt)!==void 0&&(Fe.clearTimeout(u(this,Rt)),b(this,Rt,void 0))},Es=function(){u(this,xt)!==void 0&&(Fe.clearInterval(u(this,xt)),b(this,xt,void 0))},Is=function(){let t=u(this,pe).getQueryCache().build(u(this,pe),this.options);if(t===u(this,D))return;let n=u(this,D);b(this,D,t),b(this,Nn,t.state),this.hasListeners()&&(n?.removeObserver(this),t.addObserver(this))},$i=function(t){L.batch(()=>{t.listeners&&this.listeners.forEach(n=>{n(u(this,le))}),u(this,pe).getQueryCache().notify({query:u(this,D),type:"observerResultsUpdated"})})},Hi);function Mu(e,t){return fe(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status==="error"&&t.retryOnMount===!1)}function Bi(e,t){return Mu(e,t)||e.state.data!==void 0&&As(e,t,t.refetchOnMount)}function As(e,t,n){if(fe(t.enabled,e)!==!1&&Ie(t.staleTime,e)!=="static"){let r=typeof n=="function"?n(e):n;return r==="always"||r!==!1&&ks(e,t)}return!1}function Vi(e,t,n,r){return(e!==t||fe(r.enabled,e)===!1)&&(!n.suspense||e.state.status!=="error")&&ks(e,n)}function ks(e,t){return fe(t.enabled,e)!==!1&&e.isStaleByTime(Ie(t.staleTime,e))}function Ou(e,t){return!Ut(e.getCurrentResult(),t)}function zt(e){return{onFetch:(t,n)=>{let r=t.options,s=t.fetchOptions?.meta?.fetchMore?.direction,i=t.state.data?.pages||[],o=t.state.data?.pageParams||[],c={pages:[],pageParams:[]},a=0,l=async()=>{let d=!1,p=y=>{qi(y,()=>t.signal,()=>d=!0)},m=yr(t.options,t.fetchOptions),f=async(y,h,g)=>{if(d)return Promise.reject();if(h==null&&y.pages.length)return Promise.resolve(y);let C=(()=>{let k={client:t.client,queryKey:t.queryKey,pageParam:h,direction:g?"backward":"forward",meta:t.options.meta};return p(k),k})(),q=await m(C),{maxPages:F}=t.options,R=g?Fi:Oi;return{pages:R(y.pages,q,F),pageParams:R(y.pageParams,h,F)}};if(s&&i.length){let y=s==="backward",h=y?Gi:Ms,g={pages:i,pageParams:o},v=h(r,g);c=await f(g,v,y)}else{let y=e??i.length;do{let h=a===0?o[0]??r.initialPageParam:Ms(r,c);if(a>0&&h==null)break;c=await f(c,h),a++}while(a<y)}return c};t.options.persister?t.fetchFn=()=>t.options.persister?.(l,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n):t.fetchFn=l}}}function Ms(e,{pages:t,pageParams:n}){let r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function Gi(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}function zi(e,t){return t?Ms(e,t)!=null:!1}function Ji(e,t){return!t||!e.getPreviousPageParam?!1:Gi(e,t)!=null}var Os=class extends Ln{constructor(e,t){super(e,t)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(e){super.setOptions({...e,behavior:zt()})}getOptimisticResult(e){return e.behavior=zt(),super.getOptimisticResult(e)}fetchNextPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"forward"}}})}fetchPreviousPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"backward"}}})}createResult(e,t){let{state:n}=e,r=super.createResult(e,t),{isFetching:s,isRefetching:i,isError:o,isRefetchError:c}=r,a=n.fetchMeta?.fetchMore?.direction,l=o&&a==="forward",d=s&&a==="forward",p=o&&a==="backward",m=s&&a==="backward";return{...r,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:zi(t,n.data),hasPreviousPage:Ji(t,n.data),isFetchNextPageError:l,isFetchingNextPage:d,isFetchPreviousPageError:p,isFetchingPreviousPage:m,isRefetchError:c&&!l&&!p,isRefetching:i&&!d&&!m}}};var jn,De,oe,Ct,Ue,ot,Yi,Xi=(Yi=class extends br{constructor(t){super();w(this,Ue);w(this,jn);w(this,De);w(this,oe);w(this,Ct);b(this,jn,t.client),this.mutationId=t.mutationId,b(this,oe,t.mutationCache),b(this,De,[]),this.state=t.state||Fs(),this.setOptions(t.options),this.scheduleGc()}setOptions(t){this.options=t,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(t){u(this,De).includes(t)||(u(this,De).push(t),this.clearGcTimeout(),u(this,oe).notify({type:"observerAdded",mutation:this,observer:t}))}removeObserver(t){b(this,De,u(this,De).filter(n=>n!==t)),this.scheduleGc(),u(this,oe).notify({type:"observerRemoved",mutation:this,observer:t})}optionalRemove(){u(this,De).length||(this.state.status==="pending"?this.scheduleGc():u(this,oe).remove(this))}continue(){return u(this,Ct)?.continue()??this.execute(this.state.variables)}async execute(t){let n=()=>{P(this,Ue,ot).call(this,{type:"continue"})},r={client:u(this,jn),meta:this.options.meta,mutationKey:this.options.mutationKey};b(this,Ct,vr({fn:()=>this.options.mutationFn?this.options.mutationFn(t,r):Promise.reject(new Error("No mutationFn found")),onFail:(o,c)=>{P(this,Ue,ot).call(this,{type:"failed",failureCount:o,error:c})},onPause:()=>{P(this,Ue,ot).call(this,{type:"pause"})},onContinue:n,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>u(this,oe).canRun(this)}));let s=this.state.status==="pending",i=!u(this,Ct).canStart();try{if(s)n();else{P(this,Ue,ot).call(this,{type:"pending",variables:t,isPaused:i}),u(this,oe).config.onMutate&&await u(this,oe).config.onMutate(t,this,r);let c=await this.options.onMutate?.(t,r);c!==this.state.context&&P(this,Ue,ot).call(this,{type:"pending",context:c,variables:t,isPaused:i})}let o=await u(this,Ct).start();return await u(this,oe).config.onSuccess?.(o,t,this.state.context,this,r),await this.options.onSuccess?.(o,t,this.state.context,r),await u(this,oe).config.onSettled?.(o,null,this.state.variables,this.state.context,this,r),await this.options.onSettled?.(o,null,t,this.state.context,r),P(this,Ue,ot).call(this,{type:"success",data:o}),o}catch(o){try{await u(this,oe).config.onError?.(o,t,this.state.context,this,r)}catch(c){Promise.reject(c)}try{await this.options.onError?.(o,t,this.state.context,r)}catch(c){Promise.reject(c)}try{await u(this,oe).config.onSettled?.(void 0,o,this.state.variables,this.state.context,this,r)}catch(c){Promise.reject(c)}try{await this.options.onSettled?.(void 0,o,t,this.state.context,r)}catch(c){Promise.reject(c)}throw P(this,Ue,ot).call(this,{type:"error",error:o}),o}finally{u(this,oe).runNext(this)}}},jn=new WeakMap,De=new WeakMap,oe=new WeakMap,Ct=new WeakMap,Ue=new WeakSet,ot=function(t){let n=r=>{switch(t.type){case"failed":return{...r,failureCount:t.failureCount,failureReason:t.error};case"pause":return{...r,isPaused:!0};case"continue":return{...r,isPaused:!1};case"pending":return{...r,context:t.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:t.isPaused,status:"pending",variables:t.variables,submittedAt:Date.now()};case"success":return{...r,data:t.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...r,data:void 0,error:t.error,failureCount:r.failureCount+1,failureReason:t.error,isPaused:!1,status:"error"}}};this.state=n(this.state),L.batch(()=>{u(this,De).forEach(r=>{r.onMutationUpdate(t)}),u(this,oe).notify({mutation:this,type:"updated",action:t})})},Yi);function Fs(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var Ve,Ae,Wn,Zi,eo=(Zi=class extends Se{constructor(t={}){super();w(this,Ve);w(this,Ae);w(this,Wn);this.config=t,b(this,Ve,new Set),b(this,Ae,new Map),b(this,Wn,0)}build(t,n,r){let s=new Xi({client:t,mutationCache:this,mutationId:++Mn(this,Wn)._,options:t.defaultMutationOptions(n),state:r});return this.add(s),s}add(t){u(this,Ve).add(t);let n=wr(t);if(typeof n=="string"){let r=u(this,Ae).get(n);r?r.push(t):u(this,Ae).set(n,[t])}this.notify({type:"added",mutation:t})}remove(t){if(u(this,Ve).delete(t)){let n=wr(t);if(typeof n=="string"){let r=u(this,Ae).get(n);if(r)if(r.length>1){let s=r.indexOf(t);s!==-1&&r.splice(s,1)}else r[0]===t&&u(this,Ae).delete(n)}}this.notify({type:"removed",mutation:t})}canRun(t){let n=wr(t);if(typeof n=="string"){let s=u(this,Ae).get(n)?.find(i=>i.state.status==="pending");return!s||s===t}else return!0}runNext(t){let n=wr(t);return typeof n=="string"?u(this,Ae).get(n)?.find(s=>s!==t&&s.state.isPaused)?.continue()??Promise.resolve():Promise.resolve()}clear(){L.batch(()=>{u(this,Ve).forEach(t=>{this.notify({type:"removed",mutation:t})}),u(this,Ve).clear(),u(this,Ae).clear()})}getAll(){return Array.from(u(this,Ve))}find(t){let n={exact:!0,...t};return this.getAll().find(r=>gr(n,r))}findAll(t={}){return this.getAll().filter(n=>gr(t,n))}notify(t){L.batch(()=>{this.listeners.forEach(n=>{n(t)})})}resumePausedMutations(){let t=this.getAll().filter(n=>n.state.isPaused);return L.batch(()=>Promise.all(t.map(n=>n.continue().catch($))))}},Ve=new WeakMap,Ae=new WeakMap,Wn=new WeakMap,Zi);function wr(e){return e.options.scope?.id}var He,at,me,$e,Ge,Sr,qs,to,Qs=(to=class extends Se{constructor(t,n){super();w(this,Ge);w(this,He);w(this,at);w(this,me);w(this,$e);b(this,He,t),this.setOptions(n),this.bindMethods(),P(this,Ge,Sr).call(this)}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(t){let n=this.options;this.options=u(this,He).defaultMutationOptions(t),Ut(this.options,n)||u(this,He).getMutationCache().notify({type:"observerOptionsUpdated",mutation:u(this,me),observer:this}),n?.mutationKey&&this.options.mutationKey&&qe(n.mutationKey)!==qe(this.options.mutationKey)?this.reset():u(this,me)?.state.status==="pending"&&u(this,me).setOptions(this.options)}onUnsubscribe(){this.hasListeners()||u(this,me)?.removeObserver(this)}onMutationUpdate(t){P(this,Ge,Sr).call(this),P(this,Ge,qs).call(this,t)}getCurrentResult(){return u(this,at)}reset(){u(this,me)?.removeObserver(this),b(this,me,void 0),P(this,Ge,Sr).call(this),P(this,Ge,qs).call(this)}mutate(t,n){return b(this,$e,n),u(this,me)?.removeObserver(this),b(this,me,u(this,He).getMutationCache().build(u(this,He),this.options)),u(this,me).addObserver(this),u(this,me).execute(t)}},He=new WeakMap,at=new WeakMap,me=new WeakMap,$e=new WeakMap,Ge=new WeakSet,Sr=function(){let t=u(this,me)?.state??Fs();b(this,at,{...t,isPending:t.status==="pending",isSuccess:t.status==="success",isError:t.status==="error",isIdle:t.status==="idle",mutate:this.mutate,reset:this.reset})},qs=function(t){L.batch(()=>{if(u(this,$e)&&this.hasListeners()){let n=u(this,at).variables,r=u(this,at).context,s={client:u(this,He),meta:this.options.meta,mutationKey:this.options.mutationKey};if(t?.type==="success"){try{u(this,$e).onSuccess?.(t.data,n,r,s)}catch(i){Promise.reject(i)}try{u(this,$e).onSettled?.(t.data,null,n,r,s)}catch(i){Promise.reject(i)}}else if(t?.type==="error"){try{u(this,$e).onError?.(t.error,n,r,s)}catch(i){Promise.reject(i)}try{u(this,$e).onSettled?.(void 0,t.error,n,r,s)}catch(i){Promise.reject(i)}}}this.listeners.forEach(n=>{n(u(this,at))})})},to);var Ne,no,ro=(no=class extends Se{constructor(t={}){super();w(this,Ne);this.config=t,b(this,Ne,new Map)}build(t,n,r){let s=n.queryKey,i=n.queryHash??Fn(s,n),o=this.get(i);return o||(o=new ji({client:t,queryKey:s,queryHash:i,options:t.defaultQueryOptions(n),state:r,defaultOptions:t.getQueryDefaults(s)}),this.add(o)),o}add(t){u(this,Ne).has(t.queryHash)||(u(this,Ne).set(t.queryHash,t),this.notify({type:"added",query:t}))}remove(t){let n=u(this,Ne).get(t.queryHash);n&&(t.destroy(),n===t&&u(this,Ne).delete(t.queryHash),this.notify({type:"removed",query:t}))}clear(){L.batch(()=>{this.getAll().forEach(t=>{this.remove(t)})})}get(t){return u(this,Ne).get(t)}getAll(){return[...u(this,Ne).values()]}find(t){let n={exact:!0,...t};return this.getAll().find(r=>hr(n,r))}findAll(t={}){let n=this.getAll();return Object.keys(t).length>0?n.filter(r=>hr(t,r)):n}notify(t){L.batch(()=>{this.listeners.forEach(n=>{n(t)})})}onFocus(){L.batch(()=>{this.getAll().forEach(t=>{t.onFocus()})})}onOnline(){L.batch(()=>{this.getAll().forEach(t=>{t.onOnline()})})}},Ne=new WeakMap,no);var G,ct,ut,Jt,Yt,lt,Xt,Zt,so,Ds=(so=class{constructor(e={}){w(this,G);w(this,ct);w(this,ut);w(this,Jt);w(this,Yt);w(this,lt);w(this,Xt);w(this,Zt);b(this,G,e.queryCache||new ro),b(this,ct,e.mutationCache||new eo),b(this,ut,e.defaultOptions||{}),b(this,Jt,new Map),b(this,Yt,new Map),b(this,lt,0)}mount(){Mn(this,lt)._++,u(this,lt)===1&&(b(this,Xt,Dt.subscribe(async e=>{e&&(await this.resumePausedMutations(),u(this,G).onFocus())})),b(this,Zt,Wt.subscribe(async e=>{e&&(await this.resumePausedMutations(),u(this,G).onOnline())})))}unmount(){var e,t;Mn(this,lt)._--,u(this,lt)===0&&((e=u(this,Xt))==null||e.call(this),b(this,Xt,void 0),(t=u(this,Zt))==null||t.call(this),b(this,Zt,void 0))}isFetching(e){return u(this,G).findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return u(this,ct).findAll({...e,status:"pending"}).length}getQueryData(e){let t=this.defaultQueryOptions({queryKey:e});return u(this,G).get(t.queryHash)?.state.data}ensureQueryData(e){let t=this.defaultQueryOptions(e),n=u(this,G).build(this,t),r=n.state.data;return r===void 0?this.fetchQuery(e):(e.revalidateIfStale&&n.isStaleByTime(Ie(t.staleTime,n))&&this.prefetchQuery(t),Promise.resolve(r))}getQueriesData(e){return u(this,G).findAll(e).map(({queryKey:t,state:n})=>{let r=n.data;return[t,r]})}setQueryData(e,t,n){let r=this.defaultQueryOptions({queryKey:e}),i=u(this,G).get(r.queryHash)?.state.data,o=ki(t,i);if(o!==void 0)return u(this,G).build(this,r).setData(o,{...n,manual:!0})}setQueriesData(e,t,n){return L.batch(()=>u(this,G).findAll(e).map(({queryKey:r})=>[r,this.setQueryData(r,t,n)]))}getQueryState(e){let t=this.defaultQueryOptions({queryKey:e});return u(this,G).get(t.queryHash)?.state}removeQueries(e){let t=u(this,G);L.batch(()=>{t.findAll(e).forEach(n=>{t.remove(n)})})}resetQueries(e,t){let n=u(this,G);return L.batch(()=>(n.findAll(e).forEach(r=>{r.reset()}),this.refetchQueries({type:"active",...e},t)))}cancelQueries(e,t={}){let n={revert:!0,...t},r=L.batch(()=>u(this,G).findAll(e).map(s=>s.cancel(n)));return Promise.all(r).then($).catch($)}invalidateQueries(e,t={}){return L.batch(()=>(u(this,G).findAll(e).forEach(n=>{n.invalidate()}),e?.refetchType==="none"?Promise.resolve():this.refetchQueries({...e,type:e?.refetchType??e?.type??"active"},t)))}refetchQueries(e,t={}){let n={...t,cancelRefetch:t.cancelRefetch??!0},r=L.batch(()=>u(this,G).findAll(e).filter(s=>!s.isDisabled()&&!s.isStatic()).map(s=>{let i=s.fetch(void 0,n);return n.throwOnError||(i=i.catch($)),s.state.fetchStatus==="paused"?Promise.resolve():i}));return Promise.all(r).then($)}fetchQuery(e){let t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);let n=u(this,G).build(this,t);return n.isStaleByTime(Ie(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then($).catch($)}fetchInfiniteQuery(e){return e.behavior=zt(e.pages),this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then($).catch($)}ensureInfiniteQueryData(e){return e.behavior=zt(e.pages),this.ensureQueryData(e)}resumePausedMutations(){return Wt.isOnline()?u(this,ct).resumePausedMutations():Promise.resolve()}getQueryCache(){return u(this,G)}getMutationCache(){return u(this,ct)}getDefaultOptions(){return u(this,ut)}setDefaultOptions(e){b(this,ut,e)}setQueryDefaults(e,t){u(this,Jt).set(qe(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){let t=[...u(this,Jt).values()],n={};return t.forEach(r=>{yt(e,r.queryKey)&&Object.assign(n,r.defaultOptions)}),n}setMutationDefaults(e,t){u(this,Yt).set(qe(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){let t=[...u(this,Yt).values()],n={};return t.forEach(r=>{yt(e,r.mutationKey)&&Object.assign(n,r.defaultOptions)}),n}defaultQueryOptions(e){if(e._defaulted)return e;let t={...u(this,ut).queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=Fn(t.queryKey,t)),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!=="always"),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),t.queryFn===Nt&&(t.enabled=!1),t}defaultMutationOptions(e){return e?._defaulted?e:{...u(this,ut).mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){u(this,G).clear(),u(this,ct).clear()}},G=new WeakMap,ct=new WeakMap,ut=new WeakMap,Jt=new WeakMap,Yt=new WeakMap,lt=new WeakMap,Xt=new WeakMap,Zt=new WeakMap,so);var en=Y(ue(),1),oo=Y(Rr(),1),Us=en.createContext(void 0),V=e=>{let t=en.useContext(Us);if(e)return e;if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t},Bn=({client:e,children:t})=>(en.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),(0,oo.jsx)(Us.Provider,{value:e,children:t}));var xr=Y(ue(),1),ao=xr.createContext(!1),co=()=>xr.useContext(ao),Uf=ao.Provider;var Vn=Y(ue(),1),Fu=Y(Rr(),1);function qu(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var Qu=Vn.createContext(qu()),uo=()=>Vn.useContext(Qu);var lo=Y(ue(),1);var fo=(e,t,n)=>{let r=n?.state.error&&typeof e.throwOnError=="function"?Kt(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||r)&&(t.isReset()||(e.retryOnMount=!1))},po=e=>{lo.useEffect(()=>{e.clearReset()},[e])},mo=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:s})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(s&&e.data===void 0||Kt(n,[e.error,r]));var ho=e=>{if(e.suspense){let n=s=>s==="static"?s:Math.max(s??1e3,1e3),r=e.staleTime;e.staleTime=typeof r=="function"?(...s)=>n(r(...s)):n(r),typeof e.gcTime=="number"&&(e.gcTime=Math.max(e.gcTime,1e3))}},go=(e,t)=>e.isLoading&&e.isFetching&&!t,yo=(e,t)=>e?.suspense&&t.isPending,Ns=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});var dt=Y(ue(),1);function Cr(e,t,n){let r=co(),s=uo(),i=V(n),o=i.defaultQueryOptions(e);i.getDefaultOptions().queries?._experimental_beforeQuery?.(o);let c=i.getQueryCache().get(o.queryHash);o._optimisticResults=r?"isRestoring":"optimistic",ho(o),fo(o,s,c),po(s);let a=!i.getQueryCache().get(o.queryHash),[l]=dt.useState(()=>new t(i,o)),d=l.getOptimisticResult(o),p=!r&&e.subscribed!==!1;if(dt.useSyncExternalStore(dt.useCallback(m=>{let f=p?l.subscribe(L.batchCalls(m)):$;return l.updateResult(),f},[l,p]),()=>l.getCurrentResult(),()=>l.getCurrentResult()),dt.useEffect(()=>{l.setOptions(o)},[o,l]),yo(o,d))throw Ns(o,l,s);if(mo({result:d,errorResetBoundary:s,throwOnError:o.throwOnError,query:c,suspense:o.suspense}))throw d.error;return i.getDefaultOptions().queries?._experimental_afterQuery?.(o,d),o.experimental_prefetchInRender&&!Qe.isServer()&&go(d,r)&&(a?Ns(o,l,s):c?.promise)?.catch($).finally(()=>{l.updateResult()}),o.notifyOnChangeProps?d:l.trackResult(d)}function j(e,t){return Cr(e,Ln,t)}var ze=Y(ue(),1);function ve(e,t){let n=V(t),[r]=ze.useState(()=>new Qs(n,e));ze.useEffect(()=>{r.setOptions(e)},[r,e]);let s=ze.useSyncExternalStore(ze.useCallback(o=>r.subscribe(L.batchCalls(o)),[r]),()=>r.getCurrentResult(),()=>r.getCurrentResult()),i=ze.useCallback((o,c)=>{r.mutate(o,c).catch($)},[r]);if(s.error&&Kt(r.options.throwOnError,[s.error]))throw s.error;return{...s,mutate:i,mutateAsync:s.mutate}}function Hn(e,t){return Cr(e,Os,t)}var bo=Y(vo(),1),$n=typeof window<"u"&&window.__FSAOS_CONFIG__||{},Gn=Array.isArray($n.sources)?$n.sources:[],Du=$n.supabaseUrl||"https://vahbmsslxuustnlvsrkg.supabase.co",Uu=$n.supabaseAnonKey||"sb_publishable_ZjosozAjfpZ4InMNElTr6Q_hHB-f5nc",xe=$n.gatewayUrl||"https://fsaos-mcp-gw-rust.fly.dev",W=(0,bo.createClient)(Du,Uu,{auth:{persistSession:!0,autoRefreshToken:!0,detectSessionInUrl:!1}});var zn=null,Pr=0,wo,js,Tr=!1;wo=new Promise(e=>{js=e});W.auth.onAuthStateChange((e,t)=>{t?.access_token?(zn=t.access_token,Pr=t.expires_at??Math.floor(Date.now()/1e3)+3600):(zn=null,Pr=0),Tr||(Tr=!0,js())});setTimeout(()=>{Tr||(Tr=!0,js())},5e3);function So(e,t){zn=e,Pr=t??Math.floor(Date.now()/1e3)+3600}function Ws(){zn=null,Pr=0}async function Je(){let e=typeof window<"u"&&window.__FSAOS_CONFIG__||{};if(e.embedToken){if(typeof e.embedToken=="function")try{return await e.embedToken()??null}catch{return null}return e.embedToken}return await wo,zn}var sn=null,on=null,Ro=0,Ks=new Set,Bs,Jn,an=!1;Bs=new Promise(e=>{Jn=e});function Vs(){Ro++,Ks.forEach(e=>{try{e()}catch(t){console.warn("[SDK] Anchor listener error:",t)}})}function Ir(e){let t=typeof e=="string"?e:e.path,n=sn!==t||on?.id!==(typeof e=="string"?void 0:e.id);sn=t,on=typeof e=="string"?null:e,typeof e!="string"&&!Pt.some(r=>r.id===e.id)&&(Pt=[...Pt,e],zs()),an||(an=!0,Jn()),n&&Vs()}function cn(){return sn}function he(){return on}function Hs(){return Ro}function $s(e){return Ks.add(e),()=>{Ks.delete(e)}}function Yn(){return Bs}function Gs(){return an}var Er=null;function Tt(e,t={}){if(Er){console.warn("[SDK] electHomeAnchor called twice; ignoring (logout to re-elect).");return}Er=e,t.activate!==!1&&Ir(e)}function de(){return Er}var Pt=[],Ls=new Set,xo=0;function zs(){xo++,Ls.forEach(e=>{try{e()}catch(t){console.warn("[SDK] Mount listener error:",t)}})}function Ce(){return Pt}function Xn(){return xo}function Ar(e){return Ls.add(e),()=>{Ls.delete(e)}}function Co(e,t){let n=JSON.stringify(Pt)!==JSON.stringify(e),r=sn!==t.path||on?.id!==t.id;Pt=e,sn=t.path,on=t,an||(an=!0,Jn()),n&&zs(),r&&Vs()}var nn=null,tn=null,rn=0;function re(){return rn}async function ft(){if(nn)return nn;if(tn)return tn;let e=rn;return tn=(async()=>{let t=It(),n=await Je();if(e!==rn)throw new Error("Session changed during initialization");let r={};n&&(r.Authorization=`Bearer ${n}`);let s=await fetch(`${xe}/d/${t}/init`,{method:"GET",headers:r});if(!s.ok)throw new Error(`Session init failed: ${s.status} ${s.statusText}`);let i=await s.json();if(e!==rn)throw new Error("Session changed during initialization");let o=i.entry||i;return nn={scope_id:o.scope_id,scope_path:o.scope_path,instance_path:o.instance_path||"/root",fractal_id:o.fractal_id||null,instance_name:o.instance_name||null,display_name:o.scope_display_name||o.display_name||null,principal_id:o.principal_id||null},nn})().catch(t=>{throw e===rn&&(tn=null),t}),tn}function Et(){return nn}function Js(){rn++,nn=null,tn=null,sn=null,on=null,Er=null,Pt=[]}var Po=[];function se(e){Po.push(e)}function un(){Js(),Ws(),Jn(),an=!1,Bs=new Promise(e=>{Jn=e}),Vs(),zs();for(let e of Po)try{e()}catch(t){console.warn("[SDK] Cleanup function failed:",t)}}function It(){if(typeof window<"u"){let e=window.__FSAOS_CONFIG__;return e?.hostname?e.hostname:window.location.hostname}return"localhost"}var To=Ir,Z=cn,ie=Hs,ke=$s,Eo=Yn,kr=Gs;var Ys=0,Io=!1,Ao=0;function ko(e){if(typeof e!="string")return;let t=Date.parse(e);Number.isNaN(t)||(Ys=t-Date.now(),Io=!0,Ao=Date.now())}function Mr(){return Date.now()+Ys}function Mo(){return Io}function Oo(){return Ys}function Fo(){return Ao}function qo(e){if(typeof e!="string")return null;let t=Date.parse(e);return Number.isNaN(t)?null:Mr()>=t}function Qo(e){if(typeof e!="string")return null;let t=Date.parse(e);return Number.isNaN(t)?null:Math.max(0,t-Mr())}var Nu=new Set(["list-memberships","init"]),Pe=class extends Error{constructor(n){let r=typeof n.payload?.error=="string"?n.payload.error.trim():"",s=typeof n.payload?.message=="string"?n.payload.message.trim():"",i=n.responseBody.trim()||`Gateway HTTP error: ${n.status} ${n.statusText}`.trim(),o=r&&s?`${r}: ${s}`:s||r||i;super(o);X(this,"name","GatewayRequestError");X(this,"method");X(this,"status");X(this,"statusText");X(this,"payload");X(this,"responseBody");this.method=n.method,this.status=n.status,this.statusText=n.statusText,this.payload=n.payload,this.responseBody=n.responseBody}};async function x(e,t={}){let n=re(),r=cn(),s=It(),i=`${xe}/d/${s}`,o={"Content-Type":"application/json"},c=await Je();if(n!==re())throw new Error("Session changed before gateway request");if(c&&(o.Authorization=`Bearer ${c}`),!Nu.has(e)&&!t._scope_path&&await Yn(),n!==re())throw new Error("Session changed before gateway request");let a={...t},l=Et();!a.domain_scope_id&&l?.scope_id&&(a.domain_scope_id=l.scope_id);let d=r??cn();!a._scope_path&&d&&(a._scope_path=d);let p=await fetch(i,{method:"POST",headers:o,body:JSON.stringify({method:e,params:a})}),m=await p.text();if(n!==re())throw new Error("Session changed during gateway request");let f=null;if(m)try{f=JSON.parse(m)}catch{}if(!p.ok||!f)throw new Pe({method:e,status:p.status,statusText:p.statusText,payload:f,responseBody:m});if(f.success===!1){let y=f.error||"",h=f.denied_by||f.error_type||"";throw h==="rule"||h==="access"||h==="entitlement"||y==="RULE_DENIED"||y==="ACCESS_DENIED"||y==="PERMISSION_DENIED"||y==="ENTITLEMENT_REQUIRED"?new et(f):new Pe({method:e,status:p.status,statusText:p.statusText,payload:f,responseBody:m})}return f&&f.server_now!==void 0&&ko(f.server_now),f}var _=Y(ue(),1),cl=Y(Uo(),1),ul=Y(Rr(),1);var No=new WeakMap;function Te(e,t,n={}){let r=n.exact===!0,s=()=>e.invalidateQueries({queryKey:t,exact:r},{cancelRefetch:!1}),i=e.getQueryCache().findAll({queryKey:t,exact:r,fetchStatus:"fetching"}).flatMap(p=>p.promise?[p.promise]:[]);if(i.length===0)return s();let o=`${r?"=":"^"}${JSON.stringify(t)}`,c=No.get(e);c||(c=new Map,No.set(e,c));let a=c.get(o);if(a)return a;let l=c,d=Promise.allSettled(i).then(()=>(l.delete(o),s()));return l.set(o,d),d}function Ke(e,t){return typeof e=="string"&&(e===t||e.startsWith(`${t}/`))}var Or=new WeakMap,Ko=e=>e.meta?.arrangementRealtime===!0;function ln(e,t){let n=e.getQueryCache().find({queryKey:t,exact:!0});if(!n)return;let r=Or.get(e);r||(r=new Map,Or.set(e,r));let s=r.get(n.queryHash);s&&clearTimeout(s),r.set(n.queryHash,setTimeout(()=>{r.delete(n.queryHash),e.getQueryCache().get(n.queryHash)===n&&Te(e,t,{exact:!0})},250))}function Lo(e,t){if(!(!t||typeof t!="object"))for(let n of e.getQueryCache().getAll()){if(!Ko(n))continue;let r=n.state.data;if(!r?.item_id)continue;let s=(i,o)=>!!(i&&t.item_id===i||o&&(t.path===o||t.old_path===o));(s(r.item_id,r.item_path)||t.parent_id===r.item_id||t.old_parent_id===r.item_id||[t.path,t.old_path].some(i=>typeof i=="string"&&i.slice(0,i.lastIndexOf("/"))===r.item_path)||r.resolved_children?.some(i=>s(i.id,i.symlink_path||i.path)||i.target&&s(i.target.id,i.target.path)))&&ln(e,n.queryKey)}}function jo(e){for(let t of e.getQueryCache().getAll())Ko(t)&&t.state.data!==void 0&&ln(e,t.queryKey)}function Wo(e){Or.get(e)?.forEach(clearTimeout),Or.delete(e)}var Ye=null;se(()=>{Ye&&(Ye.cancelQueries({queryKey:["vfs"]}),Ye.removeQueries({queryKey:["vfs"]}))});function Bo(e){if(Ye&&Ye!==e)throw new Error("[fsaos-gateway-sdk] setQueryClient() called after a QueryClient was already in use. Inject the host client before rendering or starting realtime subscriptions.");Ye=e}function T(){return Ye||(Ye=new Ds({defaultOptions:{queries:{staleTime:1e3*60*2,gcTime:1e3*60*10,refetchOnWindowFocus:!1,retry:1}}})),Ye}var Vo=new Proxy({},{get(e,t,n){let r=T(),s=r[t];return typeof s=="function"?s.bind(r):s}});var Fr=new WeakMap;function Xs(e){return e.meta?.infiniteItemsRealtime?.filter}function Ku(e,t){return e.state.data?.pages?.some(r=>r.items?.some(s=>t.item_id&&s.id===t.item_id||t.path&&s.path===t.path||t.old_path&&s.path===t.old_path))??!1}function Lu(e){if(e.type)return new Set([e.type]);if(!e.any_of?.length)return null;let t=new Set;for(let n of e.any_of){if(!n.item_type)return null;t.add(n.item_type)}return t}function ju(e,t,n){if(Ku(e,n))return!0;if(t.spaceIds!==void 0&&(!t.spaceIds.length||n.space_item_id!==void 0&&!t.spaceIds.includes(n.space_item_id)&&!t.spaceIds.includes(n.old_space_item_id)))return!1;let r=t.scope,s=typeof r=="string"&&r!=="__unscoped__",i=typeof n.path=="string"||typeof n.old_path=="string";if(s&&i&&!Ke(n.path,r)&&!Ke(n.old_path,r))return!1;if(n.item_type==="symlink"&&s&&i)return!0;let o=Lu(t);return n.item_type&&o&&!o.has(n.item_type)||t.parent_id&&n.parent_id!==void 0&&n.parent_id!==t.parent_id&&n.old_parent_id!==t.parent_id?!1:i||!!(t.parent_id&&n.parent_id===t.parent_id)}function Ho(e,t){let n=Fr.get(e);n||(n=new Map,Fr.set(e,n));let r=n.get(t.queryHash);r&&clearTimeout(r),n.set(t.queryHash,setTimeout(()=>{n.delete(t.queryHash),!(e.getQueryCache().get(t.queryHash)!==t||!Xs(t))&&Te(e,t.queryKey,{exact:!0})},500))}function $o(e,t){if(!(!t||typeof t!="object"))for(let n of e.getQueryCache().getAll()){let r=Xs(n);r&&ju(n,r,t)&&Ho(e,n)}}function Go(e){for(let t of e.getQueryCache().getAll())Xs(t)&&t.state.data!==void 0&&Ho(e,t)}function zo(e){Fr.get(e)?.forEach(clearTimeout),Fr.delete(e)}var qr=class extends Error{constructor(){super("The server did not confirm the selected-Space listing contract")}};function Jo(e,t){if(!Array.isArray(t)||t.some(n=>typeof n!="string")||JSON.stringify([...new Set(t)].sort())!==JSON.stringify(e))throw new qr}function At(e){return!e||e.spaceIds===void 0?e:{...e,spaceIds:[...new Set(e.spaceIds.map(t=>t.toLowerCase()))].sort(),...e.limit!==void 0?{limit:Math.max(1,Math.min(e.limit,500))}:{}}}function dn(e){return e instanceof qr||e instanceof et||e instanceof Pe&&(e.payload?.error==="SPACE_SELECTION_UNAVAILABLE"||e.payload?.error==="QUERY_PARAMS_INVALID"||e.status===401||e.status===403)}function te(){return Z()??"__unscoped__"}var S={all:()=>["vfs",te()],item:e=>["vfs",te(),"item",e],itemById:e=>["vfs","item-by-id",e],children:e=>["vfs",te(),"children",e],allChildren:()=>["vfs",te(),"children"],types:e=>["vfs","types",e??"default"],edges:e=>["vfs","edges",e],search:(e,t)=>["vfs",te(),"search",e,...t??[]],items:(e,t)=>["vfs",te(),"items",e,JSON.stringify(At(t??{}))],allItems:()=>["vfs",te(),"items"],tree:(e,t)=>["vfs",te(),"tree",e,t??1],openEnvelope:(e,t)=>["vfs",te(),"open",e,t??"__default__"],allOpenEnvelopes:()=>["vfs",te(),"open"],memberFocus:e=>["vfs","member-focus",e],fractalInstances:()=>["vfs","fractal-instances"],recentActivity:(e,t,n)=>["vfs",te(),"get-activity-feed",e,t,n],itemVersions:(e,t,n,r)=>["vfs","item-versions",e,t,n,r],itemHistory:(e,t,n)=>["vfs","item-history",e,t,n],channelMessages:(e,t)=>["vfs",te(),"channel-messages",e,t??"__top__"],allChannelMessages:()=>["vfs",te(),"channel-messages"],channels:e=>["vfs",te(),"channels",e??"all"],allChannels:()=>["vfs",te(),"channels"],notifications:(e,t)=>["vfs",te(),"notifications",e??"all",t??200],allNotifications:()=>["vfs",te(),"notifications"],unreadCounts:()=>["vfs",te(),"unread-counts"],memberships:e=>["memberships",e]};var Wu=typeof window<"u"&&(window.location?.hostname==="localhost"||window.location?.hostname==="127.0.0.1"||window.__FSAOS_WS_DEBUG__);function z(...e){Wu&&console.log("[WS]",...e)}var A=null,fn=null,mn=null,Zn=0,Bu=3e4,Yo=1e4,gn=!1,Xo=!1,ra=3e4,Vu=ra*2+5e3,Qr=0,Dr=null,Zo=!1;function Hu(){tr(),Qr=Date.now(),Dr=setInterval(()=>{if(A&&A.readyState===WebSocket.OPEN&&Date.now()-Qr>Vu){z("ping: no inbound traffic for",Date.now()-Qr,"ms \u2014 closing half-open socket");try{A.close(4e3,"liveness timeout")}catch{}return}Ze({type:"ping"})},ra)}function tr(){Dr&&(clearInterval(Dr),Dr=null)}function $u(){typeof document>"u"||(document.hidden?tr():er()&&(z("Tab visible, reconnecting..."),kt()))}function Gu(){Zo||typeof document>"u"||(document.addEventListener("visibilitychange",$u),Zo=!0)}var be={};function ei(e,t){let n=e.replace(/\/+$/,""),r=t.replace(/\/+$/,"");return!n||!r?n===r:r===n||r.startsWith(`${n}/`)}var hn=[],Xe=new Map,pn=new Map,Ee=new Map;function zu(e){let t=pn.get(e);return t?Array.from(new Set(Array.from(t.values()).flatMap(n=>n.event_types))).sort():[]}function ea(e,t){return e?e.length===t.length&&e.every((n,r)=>n===t[r]):!1}function ta(e){let t=zu(e);if(t.length===0)return Xe.delete(e),null;let n={scope_id:e,event_types:t};return Xe.set(e,n),n}var Le=new Map,pt=new Map,Zs="disconnected",Ur=[];function Nr(e){if(Zs!==e){Zs=e;for(let t of[...Ur])try{t(e)}catch{}}}function Ju(e){Le.set(e,"ready");let t=pt.get(e);if(t){pt.delete(e);for(let n of t)n()}}function Yu(){for(let e of Le.keys())Le.set(e,"disconnected")}function ti(e,t){Le.set(e,"pending"),Ze({type:"subscribe_path",path:e,event_types:t})}function Xu(){return Object.keys(be).some(t=>be[t]&&be[t].length>0)||hn.length>0}function er(){return Xe.size>0||Ee.size>0}async function kt(){if(!er()){z("ensureConnection: no active subscriptions, skipping");return}if(A&&A.readyState===WebSocket.OPEN){z("ensureConnection: already open");return}if(fn)return z("ensureConnection: connection already in flight, waiting..."),fn;if(A){z("ensureConnection: killing stale WS in state",A.readyState);try{A.close()}catch{}A=null}return gn=!1,fn=(async()=>{try{let e=typeof window<"u"&&window.__FSAOS_CONFIG__||{},t=xe,n=await Je();if(!n){z("ensureConnection: no token available, will retry"),na();return}let r=t.startsWith("https")?"wss":"ws",s=t.replace(/^https?:\/\//,""),i=`${r}://${s}/ws`;i+=`?token=${encodeURIComponent(n)}`,z("ensureConnection: opening WS to",i.substring(0,50)+"..."),Nr("connecting"),A=new WebSocket(i);let o=A;await new Promise((c,a)=>{if(!A)return a(new Error("WebSocket not created"));let l=setTimeout(()=>{if(A===o){if(z("ensureConnection: TIMEOUT after",Yo,"ms"),A&&A.readyState!==WebSocket.OPEN){try{A.close()}catch{}A=null}a(new Error("WebSocket connection timeout"))}},Yo);o.onopen=()=>{if(A!==o)return;clearTimeout(l),z("ensureConnection: CONNECTED");let d=Xo;Xo=!0,Zn=0,Nr("connected"),Zu(d),(typeof document>"u"||!document.hidden)&&Hu(),Gu(),c()},o.onmessage=d=>{A===o&&el(d.data)},o.onerror=()=>{z("ensureConnection: WS error event")},o.onclose=d=>{clearTimeout(l),A===o&&(z("ensureConnection: WS closed, code:",d.code,"reason:",d.reason),A=null,tr(),Yu(),Nr("disconnected"),!gn&&er()&&na(),a(new Error(`WebSocket closed: ${d.code}`)))}})}catch(e){z("ensureConnection: failed -",e?.message||e)}finally{fn=null}})(),fn}function na(){if(mn||typeof document<"u"&&document.hidden)return;let e=Math.min(1e3*Math.pow(2,Zn)+Math.random()*1e3,Bu);Zn++,z("scheduleReconnect: attempt",Zn,"in",Math.round(e),"ms"),mn=setTimeout(()=>{mn=null,er()&&kt()},e)}function Zu(e=!1){for(let t of Xe.values())z("resubscribeAll: scope",t.scope_id),Ze({type:"subscribe",scope_id:t.scope_id,event_types:t.event_types});for(let t of Ee.values())z("resubscribeAll: path",t.path),ti(t.path,t.event_types);if(e)try{let t=T();Go(t),jo(t);for(let n of Ee.values())t.invalidateQueries({queryKey:S.item(n.path)}),t.invalidateQueries({queryKey:S.children(n.path)});z("resubscribeAll: invalidated",Ee.size,"paths after reconnect")}catch(t){z("resubscribeAll: cache invalidation skipped",t)}}function Ze(e){A&&A.readyState===WebSocket.OPEN&&A.send(JSON.stringify(e))}function el(e){Qr=Date.now();try{let t=JSON.parse(e);if(t.type==="subscribed_path"){typeof t.path=="string"&&Ju(t.path);return}if(t.type==="subscribed"||t.type==="unsubscribed"||t.type==="unsubscribed_path"||t.type==="pong")return;if(t.type==="error"){console.warn("[WS] Server error:",t.message);return}if(t.type==="event"||t.event_type){let n=t.event_type||"message",r=t.data||t;if(n==="vfs_change"&&($o(T(),r),Lo(T(),r)),typeof r.path=="string")for(let[s,i]of Object.entries(be))s!=="*"&&ei(s,r.path)&&i.forEach(o=>o(r));be["*"]&&be["*"].forEach(s=>s(r));for(let s of hn)s.eventType!=="*"&&s.eventType!==n||s.filter&&!s.filter(r)||s.callback(r)}}catch{}}function ni(){!Xu()&&Xe.size===0&&Ee.size===0&&A&&(gn=!0,tr(),A.close(),A=null,gn=!1)}function Kr(e,t){return be[e]||(be[e]=[]),be[e].push(t),Ee.has(e)||(Ee.set(e,{path:e,event_types:["token_stream"]}),A&&A.readyState===WebSocket.OPEN?ti(e,["token_stream"]):Le.set(e,"pending")),kt(),()=>{let n=be[e];if(n){let r=n.indexOf(t);r!==-1&&n.splice(r,1),n.length===0&&(delete be[e],Ee.delete(e),Le.delete(e),pt.delete(e),Ze({type:"unsubscribe_path",path:e}))}ni()}}function ne(e,t,n){let s=(Array.isArray(e)?e:[e]).map(i=>({eventType:i,callback:t,filter:n}));return hn.push(...s),er()&&kt(),()=>{for(let i of s){let o=hn.indexOf(i);o!==-1&&hn.splice(o,1)}ni()}}function yn(e,t=["vfs_change","ccm_change"]){let n=Symbol(e),r=Array.from(new Set(t)).sort();if(r.length===0)return()=>{};let s=pn.get(e)??new Map,i=Xe.get(e)?.event_types;s.set(n,{event_types:r}),pn.set(e,s);let o=ta(e);if(!o)return()=>{};z("subscribeToScope:",e,o.event_types),A&&A.readyState===WebSocket.OPEN&&!ea(i,o.event_types)&&Ze({type:"subscribe",scope_id:e,event_types:o.event_types}),kt();let c=!0;return()=>{if(!c)return;c=!1;let a=pn.get(e);if(!a?.delete(n))return;let l=Xe.get(e)?.event_types;if(a.size===0)pn.delete(e),Xe.delete(e),Ze({type:"unsubscribe",scope_id:e});else{let d=ta(e);d&&A&&A.readyState===WebSocket.OPEN&&!ea(l,d.event_types)&&Ze({type:"subscribe",scope_id:e,event_types:d.event_types})}ni()}}function sa(e,t,n={}){Ze({type:"emit",scope_id:e,event_type:t,payload:n})}function ri(){z("disconnectSSE: tearing down"),zo(T()),Wo(T()),gn=!0,tr(),A&&(A.close(),A=null),mn&&(clearTimeout(mn),mn=null),fn=null,gn=!1,Zn=0;for(let e of Object.keys(be))delete be[e];hn.length=0,Xe.clear(),pn.clear(),Ee.clear(),Le.clear(),pt.clear(),Nr("disconnected")}function ia(){Ze({type:"ping"})}function oa(e){return Ee.has(e)?Le.get(e)??"pending":"unsubscribed"}function aa(e,t=5e3){return Ee.has(e)?Le.get(e)==="ready"&&A&&A.readyState===WebSocket.OPEN?Promise.resolve(!0):(kt(),new Promise(n=>{let r=!1,s=pt.get(e)??[],i=()=>{r||(r=!0,clearTimeout(o),n(!0))};s.push(i),pt.set(e,s);let o=setTimeout(()=>{if(r)return;r=!0;let c=pt.get(e);if(c){let a=c.indexOf(i);a!==-1&&c.splice(a,1),c.length===0&&pt.delete(e)}n(!1)},t)})):Promise.resolve(!1)}function ca(e){let t=Ee.get(e);if(!t){z("resubscribePath: no active subscription for",e);return}A&&A.readyState===WebSocket.OPEN?(z("resubscribePath: re-sending frame for",e),ti(t.path,t.event_types)):(Le.set(e,"pending"),kt())}function ua(e){Ur.push(e);try{e(Zs)}catch{}return()=>{let t=Ur.indexOf(e);t!==-1&&Ur.splice(t,1)}}se(ri);function la(){return new Date().toISOString()}function da(){return crypto.randomUUID?crypto.randomUUID():`${Date.now()}-${Math.random().toString(36).slice(2,11)}`}function ge(e){let t=e.path||e.item_path||"",n=t.split("/");n.pop();let r=n.join("/"),s=e.type_data||{};return s.allowed_parent_types&&!s.accepts&&(s.accepts=s.allowed_parent_types),delete s.allowed_parent_types,{id:e.id||e.item_id||"",name:e.name||e.item_name||"",item_type:e.item_type||"unknown",path:t,parent_path:r,is_active:e.is_active!==!1,has_children:e.has_children??!1,created_at:e.created_at||la(),updated_at:e.updated_at||la(),visibility:e.visibility,type_data:s,scope_item_id:e.scope_item_id,fractal_id:e.fractal_id,parent_instance_id:e.parent_instance_id,owner_principal_id:e.owner_principal_id,created_by_principal_id:e.created_by_principal_id,parent_id:e.parent_id,space_item_id:e.space_item_id,account_item_id:e.account_item_id}}function nr(e){return(e.content?.items||e.items||[]).map(ge)}async function jr(e){try{let t=await x("read",{id:e});if(t.item_name||t.item_path){let r=ge(t);return r.path&&T().setQueryData(S.item(r.path),r),r}let n=t.item;if(n){let r=ge(n);return r.path&&T().setQueryData(S.item(r.path),r),r}return null}catch{return null}}async function Wr(e){try{let t=await x("read",{path:e});if(t.item_name||t.item_path)return ge(t);let n=t.item;return n?ge(n):null}catch{return null}}async function rr(e){try{let t=await x("list",{path:e,limit:200}),n=nr(t);for(let r of n)T().setQueryData(S.item(r.path),r);return n}catch(t){return console.error(`[gateway] Failed to fetch children of ${e}:`,t),[]}}async function fa(e,t){let{items:n}=await vn({type:"turn_queue_entry",scope:e,parent_id:t,fields:{state:"queued"},sort_by:"created_at",sort_dir:"asc",limit:100});return n.map(r=>{let s=String(r.type_data?.conversation_anchor_item_id??r.type_data?.conversation_root_id??t);return{id:r.id,path:r.path,content:String(r.type_data?.content??""),state:String(r.type_data?.state??"queued"),queue_seq:Number(r.type_data?.queue_seq??0),created_at:r.created_at,conversation_anchor_item_id:s,conversation_root_id:s,client_request_id:typeof r.type_data?.client_request_id=="string"?r.type_data.client_request_id:void 0,promoted_message_id:typeof r.type_data?.promoted_message_id=="string"?r.type_data.promoted_message_id:void 0,promoted_event_id:typeof r.type_data?.promoted_event_id=="string"?r.type_data.promoted_event_id:void 0}}).sort((r,s)=>r.queue_seq-s.queue_seq||r.created_at.localeCompare(s.created_at))}async function Br(e,t,n){try{let r=await x("list",{path:e,limit:t,offset:n}),s=nr(r);for(let i of s)T().setQueryData(S.item(i.path),i);return{items:s,total_hint:r.total??r.content?.total??s.length}}catch(r){return console.error(`[gateway] Failed to fetch children page of ${e}:`,r),{items:[],total_hint:0}}}async function Vr(e){let n=await x("types-list",e?{scope_id:e}:{}),r=n.content?.items||n.items||[],s=new Map;for(let i of r){let o=i.name,c=i.type_data;!o||!c||s.set(o,{type_key:o,display_name:c.display_name||o,display_name_plural:c.display_name_plural||o+"s",icon:c.icon||"File",color:c.color||"gray",description:c.description||"",input_schema:c.input_schema||{},system_schema:c.system_schema||{},json_schema:c.input_schema||c.json_schema||{},default_data:c.default_data||{},field_defaults:c.field_defaults||{},renderer_config:c.renderer_config||{},is_system:c.is_system??!1,is_active:c.is_active??!0,is_container:c.is_container??!1,is_scope:c.is_scope??!1,render_mode:c.render_mode||"none",placement_mode:c.placement_mode,direct_parent_types:c.direct_parent_types,allowed_parent_types:c.allowed_parent_types,governed_create:c.governed_create,create_method:c.create_method,dedup:c.dedup,edges:c.edges,events:c.events})}return s}async function Hr(e){try{let t=await x("edges",{item_id:e}),n=t.outgoing||[],r=t.incoming||[],s=[];for(let i of n)s.push({id:i.edge_id||da(),source_item_id:e,target_item_id:i.target_id||"",edge_type:i.edge_type||"",weight:i.weight??1,context:i.context||{},is_active:!0,is_bidirectional:i.is_bidirectional});for(let i of r)s.push({id:i.edge_id||da(),source_item_id:i.source_id||"",target_item_id:e,edge_type:i.edge_type||"",weight:i.weight??1,context:i.context||{},is_active:!0,is_bidirectional:i.is_bidirectional});return s}catch(t){return console.warn(`[gateway] Failed to fetch edges for ${e}:`,t),[]}}async function $r(e,t=1,n,r){try{let s={path:e,max_depth:t>0?t:999};n?.length&&(s.item_types=n),r&&(s.limit=r);let i=await x("tree",s),o=nr(i);for(let c of o)T().setQueryData(S.item(c.path),c);return o}catch(s){return console.error(`[gateway] Failed to fetch tree at ${e}:`,s),[]}}async function Gr(e,t=50,n=0){try{let r=await x("get-activity-feed",{scope_path:e,limit:t,offset:n});return r.content?.items||r.items||r.entries||[]}catch(r){return console.error(`[gateway] Failed to fetch recent activity for ${e}:`,r),[]}}async function sr(e,t={}){let{limit:n=50,offset:r=0,include_snapshots:s=!1}=t;try{let i=await x("item-versions",{id:e,limit:n,offset:r,include_snapshots:s});return{versions:i.content?.items||i.versions||[],total:i.total??0}}catch(i){return console.error(`[gateway] Failed to fetch item versions for ${e}:`,i),{versions:[],total:0}}}async function zr(e,t=50,n=0){return sr(e,{limit:t,offset:n})}async function Jr(e,t,n){try{let r={scope_id:e};t?.length&&(r.item_types=t),n&&(r.limit=n);let s=await x("member-focus",r),i=nr(s);for(let o of i)T().setQueryData(S.item(o.path),o);return i}catch(r){return console.error(`[gateway] Failed to fetch member focus for scope ${e}:`,r),[]}}async function Yr(e,t){let n={path:e};t?.mode&&(n.mode=t.mode),t?.strategy&&(n.strategy=t.strategy),t?.arguments&&(n.arguments=t.arguments);let s=await x("open",n);return{item_id:s.item_id,item_path:s.item_path,item_name:s.item_name,item_type:s.item_type,render:s.render,compatible_components:s.compatible_components??[],content:s.content,metadata:s.metadata,instructions:s.instructions}}function _n(e){return!!e&&(!!e.type||Array.isArray(e.any_of)&&e.any_of.length>0)}function tl(e){let t={};e.item_type&&(t.item_type=e.item_type);for(let[n,r]of Object.entries(e.fields??{}))t[`field.${n}`]=String(r);for(let[n,r]of Object.entries(e.field_in??{}))t[`field_in.${n}`]=r.map(String);return t}var nl=["catalog","parent_only","internal"];function pa(e,t={}){if(!e||typeof e!="object")return null;let n=o=>typeof o=="string"||typeof o=="number"||typeof o=="boolean",r=o=>{let c={},a={};for(let[l,d]of Object.entries(o))l.startsWith("field.")&&l.length>6&&n(d)?c[l.slice(6)]=d:l.startsWith("field_in.")&&l.length>9&&Array.isArray(d)&&(a[l.slice(9)]=d.filter(n));return{fields:c,field_in:a}},s={};typeof e.type=="string"&&e.type&&(s.type=e.type),typeof e.sort_by=="string"&&(s.sort_by=e.sort_by),(e.sort_dir==="asc"||e.sort_dir==="desc")&&(s.sort_dir=e.sort_dir),typeof e.name=="string"&&e.name&&(s.name=e.name),typeof e.tag=="string"&&e.tag&&(s.tag=e.tag),typeof e.discovery=="string"&&nl.includes(e.discovery)&&(s.discovery=e.discovery);let i=r(e);if(Object.keys(i.fields).length&&(s.fields=i.fields),Object.keys(i.field_in).length&&(s.field_in=i.field_in),Array.isArray(e.any_of)){let o=[];for(let c of e.any_of){if(!c||typeof c!="object"||Array.isArray(c))continue;let a=c,l={};typeof a.item_type=="string"&&a.item_type&&(l.item_type=a.item_type);let d=r(a);Object.keys(d.fields).length&&(l.fields=d.fields),Object.keys(d.field_in).length&&(l.field_in=d.field_in),Object.keys(l).length&&o.push(l)}o.length&&(s.any_of=o)}return _n(s)?{...s,...t}:null}async function vn(e,t={}){if(e=At(e),e.spaceIds?.length===0)return{items:[],total_hint:0};let n={};e.type&&(n.item_type=e.type),e.scope&&(n.scope_path=e.scope);let r={};if(e.spaceIds!==void 0&&(r.space_ids=e.spaceIds),e.name&&(r.name=e.name),e.tag&&(r.tag=e.tag),e.parent_id&&(r.parent_id=e.parent_id),e.sort_by&&(r.sort_by=e.sort_by),e.sort_dir&&(r.sort_dir=e.sort_dir),e.offset!=null&&(r.offset=e.offset),e.fields)for(let[s,i]of Object.entries(e.fields))r[`field.${s}`]=String(i);if(e.field_in)for(let[s,i]of Object.entries(e.field_in))r[`field_in.${s}`]=i.map(String);e.discovery&&(r.discovery=e.discovery),e.any_of?.length&&(r.any_of=e.any_of.map(tl)),Object.keys(r).length>0&&(n.filters=r),e.limit!=null&&(n.limit=e.limit);try{let s=await x("query",n);e.spaceIds!==void 0&&Jo(e.spaceIds,s.selected_space_ids??s.content?.selected_space_ids);let i=nr(s);for(let o of i)T().setQueryData(S.item(o.path),o);return{items:i,total_hint:s.total??s.content?.total??i.length}}catch(s){if(console.error(`[gateway] Failed to fetch items of type ${e.type??"(any_of)"}:`,s),t.throwOnError||e.spaceIds!==void 0)throw s;return{items:[],total_hint:0}}}function rl(e){if(!e||typeof e!="object")return;let t=e;if(t.version!==1||typeof t.work_id!="string"||!t.work_id)return;let n=r=>{let s=t[r];return typeof s=="string"&&s?s:void 0};return{version:1,workId:t.work_id,threadRootId:n("thread_root_id"),requestMessageId:n("request_message_id"),replyMessageId:n("reply_message_id"),replyMessagePath:n("reply_message_path"),todoListId:n("todo_list_id"),todoListPath:n("todo_list_path"),stepId:n("step_id"),stepPath:n("step_path"),runId:n("run_id"),parentRunId:n("parent_run_id"),toolCallId:n("tool_call_id"),traceId:n("trace_id")}}function ma(e){return e.filter(t=>t.item_type==="card").map(t=>{let n=t.type_data||{},r=n.payload||{};return{id:t.id||"",path:t.path||"",name:t.name||(t.path||"").split("/").pop()||"",createdAt:t.created_at||"",action:n.action||"created",targetId:n.target_id||void 0,targetPath:n.target_path||"",targetDisplayName:n.target_display_name||"",targetDescription:n.target_description||"",targetItemType:n.target_item_type||"",toolId:(t.name||"").startsWith("card-")?(t.name||"").substring(5):void 0,parentMessagePath:t.parent_message_path||void 0,visibility:n.visibility||"private",openWith:r.open_with||void 0,hostBundled:r.host_bundled===!0?!0:void 0,bundleExport:r.bundle_export||void 0,launchArguments:r.launch_arguments||void 0,requiresUserAttention:r.requires_user_attention===!0?!0:void 0,origin:rl(n.origin),presentationRole:r.presentation_role==="user-request"?"user-request":r.presentation_role==="output"?"output":void 0}}).sort((t,n)=>t.createdAt.localeCompare(n.createdAt))}function si(e){return e.filter(t=>t.item_type==="message").map(t=>{let n=t.type_data||{},r="user";n.role==="assistant"?r="assistant":n.role==="system"&&(r="system");let s=n.metadata||{};return{id:t.id||"",path:t.path||"",content:n.message||n.content||"",created_at:t.created_at||"",role:r,status:typeof n.status=="string"?n.status:void 0,delivery_state:typeof n.delivery_state=="string"?n.delivery_state:void 0,cognition_event_id:typeof n.cognition_event_id=="string"?n.cognition_event_id:void 0,seq:n.seq||0,principal_id:n.principal_id,reply_count:n.reply_count||0,parent_message_id:n.parent_message_id,intent_card:s.intent_card,metadata:Object.keys(s).length>0?s:void 0,thread_summary:Array.isArray(n.thread_summary)&&n.thread_summary.length>0?n.thread_summary:void 0}}).sort((t,n)=>t.seq-n.seq)}async function ha(e,t){try{let n={channel_path:e};t&&(n.parent_message_id=t);let s=await x("get-channel-messages",n),i=s.messages||s.content?.items||s.items||[];return si(i)}catch(n){return console.error(`[gateway] Failed to fetch channel messages for ${e}:`,n),[]}}async function Xr(e,t){try{let n={channel_path:e};t&&(n.parent_message_id=t);let s=await x("get-channel-messages",n),i=s.messages||[],o=si(i),c=ma(i),a=new Map,l=[];for(let d of c)if(d.parentMessagePath){let p=a.get(d.parentMessagePath)||[];p.push(d),a.set(d.parentMessagePath,p)}else l.push(d);return{messages:o,messageCards:a,siblingCards:l,mode:s.mode||"top_level"}}catch(n){return console.error(`[gateway] Failed to fetch channel messages with cards for ${e}:`,n),{messages:[],messageCards:new Map,siblingCards:[],mode:"top_level"}}}async function ir(e,t){try{let n={channel_path:e};t?.parentMessageId&&(n.parent_message_id=t.parentMessageId),t?.limit&&(n.limit=t.limit),t?.before_seq!=null&&(n.before_seq=t.before_seq),t?.after_seq!=null&&(n.after_seq=t.after_seq);let s=await x("get-channel-messages",n),i=s.messages||[],o=ma(i),c=new Map,a=[];for(let l of o)if(l.parentMessagePath){let d=c.get(l.parentMessagePath)||[];d.push(l),c.set(l.parentMessagePath,d)}else a.push(l);return{messages:si(i),messageCards:c,siblingCards:a,mode:s.mode||"top_level"}}catch(n){return console.error(`[gateway] Failed to fetch channel messages page for ${e}:`,n),{messages:[],messageCards:new Map,siblingCards:[],mode:"top_level"}}}function Lr(e){T().invalidateQueries({queryKey:S.children(e)})}function ii(e){T().invalidateQueries({queryKey:S.item(e)})}function ga(e,t){ii(e),Lr(e);let n=e.split("/");n.pop();let r=n.join("/")||t;r&&Lr(r)}function ya(e){let t=e+"/";T().invalidateQueries({predicate:n=>{let r=n.queryKey;return r[0]!=="vfs"?!1:r.some(s=>typeof s=="string"&&(s===e||s.startsWith(t)))}})}function _a(){T().invalidateQueries({queryKey:S.all()})}function va(e){T().invalidateQueries({queryKey:S.types(e)})}function ba(e,t){e?T().invalidateQueries({queryKey:S.channelMessages(e,t)}):T().invalidateQueries({queryKey:S.allChannelMessages()})}function wa(e,t){e&&t?T().invalidateQueries({queryKey:S.openEnvelope(e,t)}):e?T().invalidateQueries({predicate:n=>{let r=n.queryKey;return r[0]==="vfs"&&r[2]==="open"&&r[3]===e}}):T().invalidateQueries({queryKey:S.allOpenEnvelopes()})}function je(e){return{id:e.accountId,path:e.path,kind:e.isSpace?"space":"account",name:e.name,grantedUnderAccountId:e.grantedUnderAccountId??void 0}}async function Zr(){return((await x("list-memberships",{})).memberships||[]).map(n=>({accountId:n.account_id,path:n.account_path,name:n.account_name,role:n.role||"member",typeData:n.account_type_data||{},joinedAt:n.joined_at,via:n.via,placement:n.placement,subordinateTo:n.subordinate_to??null,cascadeAnchorId:n.cascade_anchor_id??null,isAccount:n.is_account??void 0,isSpace:n.is_space??void 0,isOwner:n.is_owner??void 0,billingResponsible:n.billing_responsible??void 0,grantedVia:n.granted_via??null,grantedUnderAccountId:n.granted_under_account_id??null,membershipPath:n.membership_path??null,personalSpaceId:n.personal_space_id??null,personalSpacePath:n.personal_space_path??null}))}var bn=new Map,or=null,es=null,mt=new Map,Sa=250;function Mt(e){if(or){wn(e);return}wn(e),or=ne("vfs_change",t=>sl(t)),es=ne("ccm_change",t=>il(t))}function wn(e){if(bn.has(e))return;let t=yn(e,["vfs_change","ccm_change"]);bn.set(e,t)}function ts(e){let t=bn.get(e);t&&(t(),bn.delete(e))}function oi(){for(let[,e]of bn)e();bn.clear(),or&&(or(),or=null),es&&(es(),es=null),mt.forEach(e=>clearTimeout(e)),mt.clear()}se(oi);function sl(e){let t=e.path,n=e.action;if(!t)return;let r=t.split("/");r.pop();let s=r.join("/")||"/root",i=mt.get(s);i&&clearTimeout(i);let o=setTimeout(()=>{mt.delete(s),ol(n,t,e,s)},Sa);mt.set(s,o)}function il(e){if(!e||typeof e!="object")return;let t=e.source_item_id||e.source_id,n=e.target_item_id||e.target_id;if(!(e.edge_type!=null||t!=null||n!=null)||!t&&!n||e.item_type==="message")return;let s=`ccm:${t??""}:${n??""}`,i=mt.get(s);i&&clearTimeout(i);let o=setTimeout(()=>{mt.delete(s),t&&T().invalidateQueries({queryKey:S.edges(t)}),n&&T().invalidateQueries({queryKey:S.edges(n)})},Sa);mt.set(s,o)}function ol(e,t,n,r){if((e||"").toUpperCase()==="DELETE")T().removeQueries({queryKey:S.item(t)}),T().removeQueries({queryKey:S.children(t)}),T().removeQueries({queryKey:S.tree(t)});else if(n.item_id)try{let i={id:n.item_id,path:n.path,name:n.name,item_type:n.item_type,parent_id:n.parent_id,scope_item_id:n.scope_item_id},o=ge(i);o&&o.id&&T().setQueryData(S.item(t),o)}catch{}T().invalidateQueries({queryKey:S.children(r)}),T().invalidateQueries({predicate:i=>{let o=i.queryKey;if(o[0]!=="vfs"||o[1]!=="tree")return!1;let c=o[2];return t.startsWith(c+"/")||t===c}}),n.item_id&&T().invalidateQueries({queryKey:S.itemById(n.item_id)})}var Sn=null;se(()=>{Sn=null});function ht(e){if(e!==Sn||e.generation!==re())throw new Error("Workspace session changed")}function al(e){return e instanceof Pe&&e.payload?.error==="item_not_found"}function ar(e,t){let n=e.resolve(t.id);if(!n||n.path!==t.path||n.kind!==t.kind)throw new Error("Mount is not an available membership");return n}function cr(e){let t=de();if(!t)throw new Error("Elect a home account before loading mounts");return[t,...e.filter((n,r)=>n.id!==t.id&&e.findIndex(s=>s.id===n.id)===r)]}function Ra(e,t){return JSON.stringify({mounts:e.map(n=>n.id),last_anchor:t.id})}async function xa(e,t,n){ht(e);let r=Ra(t,n);if(e.saved===r)return;let s=JSON.parse(r);await x(e.exists?"update":"create",e.exists?{_scope_path:e.scope,path:e.path,type_data:s}:{_scope_path:e.scope,parent_path:e.path.slice(0,e.path.lastIndexOf("/")),name:"mounts",item_type:"file",type_data:s}),ht(e),e.exists=!0,e.saved=r}function Ca(e,t){let n=Ce();Mt(de().id);for(let r of n)e.some(s=>s.id===r.id)||ts(r.id);for(let r of e)wn(r.id);Co(e,t)}async function Ot(e,t,n={}){let r=de();if(!r)throw new Error("Elect a home account before loading mounts");let s=`${e}/settings/mounts`;if(Sn&&Sn.path!==s)throw new Error("Reset the session before changing the mount declaration owner");let i=Sn??(Sn={generation:re(),path:s,scope:r.path,resolve:t,exists:!1,ready:!1,saved:null,queue:Promise.resolve()});return ht(i),i.loading?i.loading:i.ready?Ce():(i.resolve=t,i.loading=(async()=>{let o=null;try{let d=await x("read",{path:s,_scope_path:i.scope});if(ht(i),o=d.type_data??d.item?.type_data,!o||!Array.isArray(o.mounts)||!o.mounts.every(p=>typeof p=="string"))throw new Error("Invalid saved mount declaration");i.exists=!0}catch(d){if(ht(i),!al(d))throw d;i.exists=!1}let c=n.initialAnchor?ar(i,n.initialAnchor):r,a=cr(o?o.mounts.map(t).filter(d=>d!==null):[c]),l=o?a.find(d=>d.id===o.last_anchor)??a.find(d=>d.kind==="space")??r:c;return o?i.saved=Ra(a,l):n.initialAnchor&&await xa(i,a,l),ht(i),i.ready=!0,Ca(a,l),a})().finally(()=>{i.loading=void 0}),i.loading)}function ns(e){let t=Sn;if(!t?.ready)return Promise.reject(new Error("Workspace mounts are not loaded"));let n=t.queue.then(async()=>{ht(t);let{refs:r,anchor:s}=e(t);await xa(t,r,s),ht(t),Ca(r,s)});return t.queue=n.catch(()=>{}),n}function ai(e){return ns(t=>({refs:cr([...Ce(),ar(t,e)]),anchor:he()}))}function Pa(e){return ns(()=>{if(e===de().id)throw new Error("The home account cannot be unmounted");let t=cr(Ce().filter(r=>r.id!==e)),n=t.find(r=>r.id===he()?.id)??t.find(r=>r.kind==="space")??de();return{refs:t,anchor:n}})}function ur(e){return ns(t=>{let n=ar(t,e);return{refs:cr([...Ce(),n]),anchor:n}})}function rs(e,t){return ns(n=>{let r=cr(e.map(i=>ar(n,i))),s=ar(n,t);if(!r.some(i=>i.id===s.id))throw new Error("Selected mount must be in the working set");return{refs:r,anchor:s}})}function ss(e){if(typeof e.path!="string")return!1;let t=[...Ce().map(n=>n.path),he()?.path].filter(n=>!!n);return!t.length&&Z()&&t.push(Z()),t.some(n=>Ke(e.path,n))}function ci(e,t,n,r){return!["message","card"].includes(e?.item_type)||!Ke(e.path,t)?!1:!n||e.item_id===n||e.parent_id===n?!0:r.some(s=>{if(e.item_id===s.id||e.parent_id===s.id)return!0;let i=s.id===n?s.path:s.parent_message_id===n?s.path.slice(0,s.path.lastIndexOf("/")):void 0;return!!i&&Ke(e.path,i)})}var Ta=new WeakMap;function Ea(e,t,n){let r=Ta.get(e);r||(r=new Map,Ta.set(e,r));let s=JSON.stringify(t),i=r.get(s);if(!i){let c=!1,a,l=!1,d=!1,p=new Set,m=new Set,f=()=>e.getQueryData(t)??[],y=()=>{c||l||a||(a=setTimeout(()=>{a=void 0,h()},250))},h=async()=>{if(c)return;l=!0;let F=d;d=!1;let R=[...p],k=new Set(m);m.clear(),p.clear();try{if(F)await Te(e,t,{exact:!0});else{let N=(await Promise.allSettled(R.map(async I=>{let B=e.getQueryCache().find({queryKey:t,exact:!0});if(!B)return;let M=await x("read",{id:I});if(M.success===!1)throw new Error("Channel refresh failed");if(c||!B||e.getQueryCache().find({queryKey:t,exact:!0})!==B)return;let E=ge(M.item??M);if(E.id!==I||E.item_type!=="channel")return;let Q=f().find(H=>H.id===I);if(!Q)return;let O=n({...E}),ce={...Q,path:O.path,name:O.name,displayName:O.displayName,messageCount:O.messageCount,aiMode:O.aiMode,isPrivate:O.isPrivate,isDm:O.isDm,autoPilot:O.autoPilot,updatedAt:O.updatedAt};k.has(I)&&(Q.name!==ce.name||Q.displayName!==ce.displayName||Q.path!==ce.path)&&(d=!0),e.setQueryData(t,H=>H?.map(Oe=>Oe.id===I?ce:Oe))}))).find(I=>I.status==="rejected");if(N?.status==="rejected")throw N.reason}}catch(U){console.warn("[channels] refresh failed",U)}finally{l=!1,(d||p.size)&&y()}},g=F=>f().some(R=>R.id===F.item_id||R.path===F.path)?!0:ss(F),v=F=>{if(!g(F))return;let R=String(F.action??"").toLowerCase();if(["insert","delete","rename","move"].includes(R))d=!0;else if(R==="update"){let k=f().find(U=>U.id===F.item_id||U.path===F.path);k&&(p.add(k.id),m.add(k.id))}(d||p.size)&&y()},C=F=>{let R=f().find(k=>k.id===F.parent_id);R&&(p.add(R.id),y())},q=["vfs_change","ccm_change"].flatMap(F=>[ne(F,v,R=>R.item_type==="channel"),ne(F,C,R=>R.item_type==="message")]);i={users:0,stop:()=>{c=!0,a&&clearTimeout(a),q.forEach(F=>F())}},r.set(s,i)}i.users++;let o=!1;return()=>{o||(o=!0,--i.users===0&&(i.stop(),r.delete(s)))}}function J(){return(0,_.useSyncExternalStore)(ke,ie,ie)}function Ma(){return J(),kr()}function Oa(e){return J(),j({queryKey:S.item(e),queryFn:()=>Wr(e),enabled:!!e,staleTime:1/0})}function Fa(e){return J(),j({queryKey:S.itemById(e),queryFn:()=>jr(e),enabled:!!e,staleTime:1/0})}function li(e){return J(),j({queryKey:S.children(e),queryFn:()=>rr(e),enabled:!!e})}function qa(e){let t=li(e);return{...t,children:t.data??[]}}function Qa(e,t=1){return J(),j({queryKey:S.tree(e,t),queryFn:()=>$r(e,t),enabled:!!e})}function Da(e,t){return J(),j({queryKey:S.search(e,t),queryFn:async()=>{let n={query:e};t?.length&&(n.item_types=t);let r=await x("search",n);return(r.content?.items||r.items||r.results||[]).map(ge)},enabled:!!e&&e.length>0})}function Ua(e){J();let t=(0,_.useMemo)(()=>e,[JSON.stringify(e)]);return j({queryKey:["vfs",Z()??"__unscoped__","resolve",JSON.stringify(t??{})],queryFn:async()=>await x("resolve",t),enabled:!!t?.query&&t.query.length>0})}function Na(e){J();let t=At(e),n=(0,_.useMemo)(()=>t,[JSON.stringify(t)]),r=j({queryKey:S.items(n?.type??"",n),queryFn:()=>vn(n),enabled:_n(n),...n?.spaceIds!==void 0?{retry:(s,i)=>!dn(i)&&s<1}:{},select:s=>s.items});return n?.spaceIds!==void 0&&dn(r.error)?{...r,data:void 0}:r}function Ka(e,t={}){let n=J(),{realtime:r=!1}=t,s=At(e),i=s?.limit??20,o=(0,_.useMemo)(()=>s,[JSON.stringify(s)]),c=(0,_.useMemo)(()=>["vfs",Z()??"__unscoped__","infinite-items",o?.type??"",JSON.stringify(o??{})],[n,o]),a=Hn({queryKey:c,queryFn:async({pageParam:p=0})=>vn({...o,limit:i,offset:p},{throwOnError:!0}),initialPageParam:0,getNextPageParam:(p,m,f)=>{if(!(o?.spaceIds!==void 0&&p.total_hint!==void 0&&f+p.items.length>=p.total_hint)&&!(p.items.length<i))return f+p.items.length},enabled:_n(o),...o?.spaceIds!==void 0?{retry:(p,m)=>!dn(m)&&p<1}:{},staleTime:r?1/0:void 0,meta:r&&o?{infiniteItemsRealtime:{filter:o}}:{}}),l=(0,_.useMemo)(()=>{if(o?.spaceIds!==void 0&&dn(a.error))return[];if(!a.data?.pages)return[];let p=new Set,m=[];for(let f of a.data.pages)for(let y of f.items)y.id&&!p.has(y.id)&&(p.add(y.id),m.push(y));return m},[a.data?.pages,a.error,o]),d=o?.spaceIds!==void 0&&dn(a.error);return{allItems:l,refetch:a.refetch,fetchNextPage:a.fetchNextPage,isFetchingNextPage:a.isFetchingNextPage,isExhausted:d||!a.hasNextPage,isLoading:a.isLoading,isFetching:a.isFetching,error:a.error,totalHint:d?void 0:a.data?.pages?.[0]?.total_hint}}function La(e){J();let t=20,n=Hn({queryKey:["vfs",Z()??"__unscoped__","infinite-children",e??""],queryFn:async({pageParam:s=0})=>Br(e,t,s),initialPageParam:0,getNextPageParam:(s,i,o)=>{if(!(s.items.length<t))return o+s.items.length},enabled:!!e});return{allItems:(0,_.useMemo)(()=>{if(!n.data?.pages)return[];let s=new Set,i=[];for(let o of n.data.pages)for(let c of o.items)c.id&&!s.has(c.id)&&(s.add(c.id),i.push(c));return i},[n.data?.pages]),fetchNextPage:n.fetchNextPage,isFetchingNextPage:n.isFetchingNextPage,isExhausted:!n.hasNextPage,isLoading:n.isLoading,isFetching:n.isFetching,error:n.error,totalHint:n.data?.pages?.[0]?.total_hint}}function ja(e){return J(),j({queryKey:S.edges(e),queryFn:()=>Hr(e),enabled:!!e})}function is(e){return J(),j({queryKey:S.types(e),queryFn:()=>Vr(e)})}function Wa(e,t){let n=is(t);return{...n,data:n.data?.get(e)??void 0}}function Ba(e,t){J();let n=(0,_.useMemo)(()=>t?.arguments,[JSON.stringify(t?.arguments)]),r=t?.mode,s=t?.strategy,i=t?.width;return j({queryKey:[...S.openEnvelope(e,s),i],queryFn:async()=>{let o=await Yr(e,{mode:r,strategy:s,arguments:n});if(i&&o.render?.props?.url){let c=o.render.props.url,a=c.includes("?")?"&":"?";o.render.props.url=`${c}${a}w=${i}`}return o},enabled:!!e})}var Ia={related_to:"Related To",depends_on:"Depends On",blocks:"Blocks",parent_of:"Parent Of",child_of:"Child Of",references:"References",implements:"Implements",extends:"Extends",contains:"Contains",belongs_to:"Belongs To",created_by:"Created By",assigned_to:"Assigned To",tagged_with:"Tagged With",linked_to:"Linked To"};function Va(e){let t=is(e),n=t.data??new Map;return(0,_.useMemo)(()=>({canHaveChildren:f=>n.get(f.item_type)?.is_container??!1,isScope:f=>n.get(f.item_type)?.is_scope??!1,isScopeType:f=>n.get(f)?.is_scope??!1,isContainerType:f=>n.get(f)?.is_container??!1,getTypeDefinition:f=>n.get(f),getTypeColor:f=>n.get(f)?.color??"gray",getTypeIcon:f=>n.get(f)?.icon??"File",getTypeDisplayName:f=>n.get(f)?.display_name??f,getKnownEdgeTypes:()=>Object.entries(Ia).map(([f,y])=>({key:f,label:y})),getEdgeTypeLabel:f=>Ia[f]??f.replace(/_/g," "),allTypes:n,loading:t.isLoading}),[n,t.isLoading])}function Ha(e,t,n){return J(),j({queryKey:S.memberFocus(e),queryFn:()=>Jr(e,t,n),enabled:!!e})}function $a(e,t={}){let{limit:n=50,offset:r=0,include_snapshots:s=!1}=t;return j({queryKey:S.itemVersions(e,String(n),String(r),String(s)),queryFn:()=>sr(e,{limit:n,offset:r,include_snapshots:s}),enabled:!!e})}function Ga(e,t=50,n=0){return j({queryKey:S.itemHistory(e,String(t),String(n)),queryFn:()=>zr(e,t,n),enabled:!!e})}function za(e,t=50,n=0){return J(),j({queryKey:S.recentActivity(e,String(t),String(n)),queryFn:()=>Gr(e,t,n),enabled:!!e})}function Ja(){let[e,t]=(0,_.useState)(null),[n,r]=(0,_.useState)(!0),[s,i]=(0,_.useState)(null);return(0,_.useEffect)(()=>{let o=!1;return ft().then(c=>{if(!o){let a=typeof window<"u"&&window.__FSAOS_CONFIG__||{};t({path:c.scope_path,scope_id:c.scope_id,fractal_id:c.fractal_id,instance_name:c.instance_name,display_name:c.display_name,componentPath:a.componentPath||"",isEmbed:!!a.embedToken}),r(!1)}}).catch(c=>{o||(i(c instanceof Error?c:new Error(String(c))),r(!1))}),()=>{o=!0}},[]),{data:e,loading:n,error:s}}var ll=[];function Ya(){let{user:e}=os(),t=(0,_.useRef)(null),[n,r]=(0,_.useState)(null),s=j({queryKey:S.memberships(e?.id??"anonymous"),queryFn:Zr,enabled:!!e?.id,staleTime:1e3*60*2}),i=s.data??ll,o=(0,_.useMemo)(()=>i.filter(m=>m.isAccount!==!1&&!m.isSpace),[i]),c=(0,_.useMemo)(()=>{let m=new Set(o.map(y=>y.accountId)),f=y=>!y.subordinateTo||!m.has(y.subordinateTo);return[...o].sort((y,h)=>Number(f(h))-Number(f(y)))},[o]),a=(0,_.useSyncExternalStore)(ke,ie,ie),l=(0,_.useMemo)(()=>{let m=he();return m?i.find(f=>f.accountId===m.id)??null:null},[a,i]);(0,_.useEffect)(()=>{if(!e?.id){t.current=null;return}if(t.current!==e.id)if(r(null),c.length===1){let m=c[0];de()||Tt(je(m)),Mt(m.accountId),m.personalSpacePath&&Ot(m.personalSpacePath,f=>{let y=i.find(h=>h.accountId===f);return y?je(y):null}).catch(r),t.current=e.id}else c.length>1&&(t.current=e.id)},[e?.id,c,i]);let d=(0,_.useCallback)(async m=>{let f=i.find(g=>g.path===m);if(!f)throw new Error("Account membership is unavailable");let y=je(f);de()||Tt(y);let h=i.find(g=>g.accountId===de()?.id);if(!h?.personalSpacePath)throw new Error("The home membership has no mount declaration location");await Ot(h.personalSpacePath,g=>{let v=i.find(C=>C.accountId===g);return v?je(v):null}),await ur(y),r(null),Mt(f.accountId)},[i]),p=(0,_.useCallback)(async m=>{let f=i.find(y=>y.path===m);if(!f)throw new Error("Scope membership is unavailable");await ai(je(f))},[i]);return{accounts:c,allMemberships:i,currentAccount:l,mountedScope:null,switchAccount:d,mountScope:p,loading:s.isLoading,error:s.error??n}}function Xa(){J();let e=(0,_.useSyncExternalStore)(Ar,Xn,Xn),t=(0,_.useMemo)(()=>Ce(),[e]),n=he(),r=(0,_.useMemo)(()=>t.filter(i=>i.kind==="space"&&(n?.kind==="account"||i.id===n?.id)),[t,n]),s=(0,_.useMemo)(()=>r.map(i=>i.id).sort(),[r]);return{mounts:t,selectedSpaces:r,readSpaceIds:s,homeAnchor:de(),anchor:n,setAnchor:ur,replaceMounts:rs,mount:ai,unmount:Pa}}function os(){let[e,t]=(0,_.useState)(null),[n,r]=(0,_.useState)(null),[s,i]=(0,_.useState)(!0),o=(0,_.useRef)(null);(0,_.useEffect)(()=>{W.auth.getSession().then(({data:f,error:y})=>{if(y){console.warn("[useAuth] getSession error, clearing stale session:",y.message),W.auth.signOut().catch(()=>{}),r(null),t(null),i(!1);return}r(f?.session??null),t(f?.session?.user??null),i(!1)}).catch(f=>{console.warn("[useAuth] getSession threw, clearing stale session:",f?.message),W.auth.signOut().catch(()=>{}),r(null),t(null),i(!1)});let{data:{subscription:m}}=W.auth.onAuthStateChange((f,y)=>{if(f==="TOKEN_REFRESHED"&&!y){console.warn("[useAuth] TOKEN_REFRESHED with null session \u2014 signing out"),W.auth.signOut().catch(()=>{}),r(null),t(null),i(!1);return}r(y),t(y?.user??null),i(!1)});return o.current=m,()=>{m?.unsubscribe()}},[]);let c=(0,_.useCallback)(async m=>m.provider?W.auth.signInWithOAuth({provider:m.provider,options:m.redirectTo?{redirectTo:m.redirectTo}:{redirectTo:window.location.href}}):W.auth.signInWithPassword({email:m.email,password:m.password}),[]),a=(0,_.useCallback)(async m=>W.auth.signUp({email:m.email,password:m.password,options:{data:m.metadata||{}}}),[]),l=(0,_.useCallback)(async()=>{await W.auth.signOut(),un(),T().clear()},[]),d=(0,_.useCallback)(async m=>{let{error:f}=await W.auth.resetPasswordForEmail(m);if(f)throw f},[]),p=(0,_.useCallback)(async(m,f)=>{let{error:y}=await W.auth.signInWithOtp({email:m,options:f?{emailRedirectTo:f}:{emailRedirectTo:window.location.href}});if(y)throw y},[]);return{user:e,session:n,loading:s,signIn:c,signUp:a,signOut:l,resetPassword:d,signInWithMagicLink:p}}function Za(e){let[t,n]=(0,_.useState)(null),[r,s]=(0,_.useState)(!1),[i,o]=(0,_.useState)(null);return(0,_.useEffect)(()=>{if(!e){n(null),s(!1);return}if(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e))s(!0),x("resolve-asset",{asset_id:e}).then(a=>{a.success&&a.public_url?n({url:a.public_url,id:a.asset_id,name:a.name,mimeType:a.mime_type,width:a.width,height:a.height,sizeBytes:a.size_bytes}):o(new Error(a.error||"Asset not found")),s(!1)}).catch(a=>{o(a instanceof Error?a:new Error(String(a))),s(!1)});else{let l=(typeof window<"u"&&window.__FSAOS_CONFIG__||{}).edgeBaseUrl||"";n({url:l+e}),s(!1)}},[e]),{data:t,loading:r,error:i}}var lr={},Aa={};se(()=>{for(let e of Object.keys(lr))delete lr[e]});var ec=null;function tc(e){ec=e,typeof window<"u"&&!window.__FSAOS_GATEWAY__&&(window.__FSAOS_GATEWAY__=e)}function dl(e){switch(e){case"react":return typeof window<"u"&&window.React||_.default;case"react-dom":case"react-dom/client":return typeof window<"u"&&window.ReactDOM||cl;case"react/jsx-runtime":case"react/jsx-dev-runtime":return typeof window<"u"&&window.React?{jsx:window.React.createElement,jsxs:window.React.createElement,Fragment:window.React.Fragment}:ul;case"@fsaos/gateway":case"@fsaos/react":return typeof window<"u"&&window.__FSAOS_GATEWAY__||ec||{};case"@fsaos/ui":return typeof window<"u"&&window.__FSAOS_UI__||{};case"@fsaos/theme":return{};default:return console.warn(`[useComponent] Unknown module requested: ${e}`),{}}}function fl(e,t){return e.replace(/^(\s*)(:root|body)(\s*[{,])/gm,(n,r,s,i)=>`${r}.${t}${i}`)}async function pl(e,t){if(!Aa[e])try{let n=await fetch(e);if(!n.ok)return;let r=await n.text();if(!r.trim()||r.includes("No CSS bundle for this component"))return;t&&!r.includes(`.fsaos-c-${t}`)&&(r=fl(r,`fsaos-c-${t}`));let s=document.createElement("style");s.setAttribute("data-fsaos-component-css",e),t&&s.setAttribute("data-fsaos-component-id",t),s.textContent=r,document.head.appendChild(s),Aa[e]=s}catch{}}function ml(e){let t=null,n=window.__FSAOS_REGISTER__;window.__FSAOS_REGISTER__=r=>{t=r};try{let r=["var require = arguments[0];",e,"return window.__FSAOS_COMPONENT__;"].join(`
3
- `),i=new Function(r)(dl),o=t??i;return o?o.default||o:null}finally{n!==void 0?window.__FSAOS_REGISTER__=n:delete window.__FSAOS_REGISTER__}}function di(e){let[t,n]=(0,_.useState)(null),[r,s]=(0,_.useState)(!0),[i,o]=(0,_.useState)(null);return(0,_.useEffect)(()=>{if(!e)return;let c=!1;s(!0),o(null);let l=(typeof window<"u"&&window.__FSAOS_CONFIG__||{}).edgeBaseUrl||"";return(async()=>{try{let d=1,p=e+"@v1",m=l+e+"/__bundle.js";try{let v=await fetch(l+e+"/__meta",{cache:"no-store"});v.ok&&(d=(await v.json()).version||1,p=e+"@v"+d,m=l+e+"/__bundle.v"+d+".js")}catch{m=l+e+"/__bundle.js?v="+Date.now()}if(c)return;if(lr[p]){n(()=>lr[p]),s(!1);return}let f=await fetch(m);if(!f.ok)throw new Error(`Failed to fetch bundle: ${f.status} ${f.statusText} (${m})`);let y=await f.text();if(c)return;let h=m.replace(/__bundle(\.v\d+)?\.js(\?.*)?$/,"__bundle$1.css");pl(h).catch(()=>{});let g=ml(y);if(!g)throw new Error("Bundle did not export a component. Expected window.__FSAOS_COMPONENT__ (FSAOS build) or a __FSAOS_REGISTER__(Component) call.");if(typeof g!="function")throw new Error(`Bundle export is not a React component (got ${typeof g})`);lr[p]=g,c||(n(()=>g),s(!1))}catch(d){c||(o(d instanceof Error?d:new Error(String(d))),s(!1))}})(),()=>{c=!0}},[e]),{Component:t,loading:r,error:i}}var hl=["--color-primary","--color-secondary","--color-background","--color-surface","--color-text","--color-text-secondary","--color-border","--color-accent","--color-success","--color-warning","--color-error","--font-family-heading","--font-family-body","--border-radius","--spacing-unit"];function nc(){return{data:(0,_.useMemo)(()=>{if(typeof document>"u")return{tokens:{}};let t={},n=getComputedStyle(document.documentElement);return hl.forEach(r=>{t[r]=n.getPropertyValue(r).trim()}),{tokens:t}},[]),loading:!1,error:null}}function rc(e,t){return{data:{allowed:!0},loading:!1,error:null}}function sc(e,t){let n={};return(t||[]).forEach(r=>{n[r]=!0}),{data:n,loading:!1,error:null}}var ae=null,Rn=null,ui=new Set;function gl(){ui.forEach(e=>e())}se(()=>{ae=null,Rn=null});async function ic(e){let t={principalId:null,displayName:null,createdAt:null,metadata:null,vfsPath:null},n=Et()?.principal_id??null;if(n){if(ae&&ae.principalId===n){let{principalId:s,displayName:i,createdAt:o,metadata:c,vfsPath:a}=ae;return{principalId:s,displayName:i,createdAt:o,metadata:c,vfsPath:a}}return{...t,principalId:n}}let r=e;if(!r){let{data:s}=await W.auth.getSession();r=s?.session?.user?.id}if(!r)return t;if(ae&&ae.authUserId===r){let{principalId:s,displayName:i,createdAt:o,metadata:c,vfsPath:a}=ae;return{principalId:s,displayName:i,createdAt:o,metadata:c,vfsPath:a}}return Rn||(Rn=(async()=>{try{let{data:s,error:i}=await W.from("os_principals").select("id, display_name, created_at, metadata").eq("auth_user_id",r).eq("principal_type","user").maybeSingle();if(i)return console.warn("[SDK] Could not resolve principal:",i.message),t;let o=s?.id??null,c=null;if(o){let{data:l}=await W.from("os_items").select("path").eq("owner_principal_id",o).eq("item_type","principal").eq("is_active",!0).like("path","/root/principals/%"),d=(l??[]).map(p=>p.path);c=d.find(p=>p.split("/").length===4)??d[0]??null}let a={principalId:o,displayName:s?.display_name??null,createdAt:s?.created_at??null,metadata:s?.metadata??null,vfsPath:c};return ae={authUserId:r,...a},a}finally{Rn=null}})(),Rn)}async function oc(e){return(await ic(e)).principalId}function ac(){let e=os(),t=e.user,n=ae?.authUserId===t?.id?ae:null,[r,s]=(0,_.useState)(n),i=(0,_.useRef)(null);return(0,_.useEffect)(()=>{let o=()=>{let c=ae;c&&c.authUserId===t?.id&&s({principalId:c.principalId,displayName:c.displayName,createdAt:c.createdAt,metadata:c.metadata,vfsPath:c.vfsPath})};return ui.add(o),()=>{ui.delete(o)}},[t?.id]),(0,_.useEffect)(()=>{if(!t?.id){s(null),i.current=null;return}i.current===t.id&&r?.principalId!=null||(i.current=t.id,ic(t.id).then(o=>{s(o)}))},[t?.id]),e.loading?{data:null,loading:!0,error:null}:t?{data:{id:t.id,principalId:r?.principalId??null,email:t.email,display_name:r?.displayName??void 0,created_at:r?.createdAt??void 0,vfs_path:r?.vfsPath??void 0,role:t.role||t.app_metadata?.role||"user",authenticated:!0,metadata:r?.metadata??t.user_metadata??{}},loading:!1,error:null}:{data:{id:"anonymous",principalId:null,role:"viewer",authenticated:!1},loading:!1,error:null}}function cc(){return{data:null,loading:!1,error:null}}function uc(e){let{path:t,...n}=e,r=di(t),s=r.Component,{loading:i,error:o}=r;return i?(0,_.createElement)("div",{className:"fsaos-loading"},""):o?(0,_.createElement)("div",{className:"fsaos-error"},"Failed to load component"):s?(0,_.createElement)(s,n):null}function lc(e){return e.children}function dc(e){let t=J(),{channelPath:n,parentMessageId:r,realtime:s=!0,enabled:i}=e,o=i!==void 0?i&&!!n:!!n,c=(0,_.useMemo)(()=>S.channelMessages(n??"",r),[n,r,t]),a=V(),l=(0,_.useRef)(null),d=j({queryKey:c,queryFn:()=>Xr(n,r),enabled:o});(0,_.useEffect)(()=>{if(!s||!o)return;let h=ne("vfs_change",()=>{l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{Te(a,c,{exact:!0})},500)},g=>ci(g,n,r,a.getQueryData(c)?.messages??[]));return()=>{h(),l.current&&clearTimeout(l.current)}},[s,o,n,r,c,a]);let p=d.data,m=p?.messages??[],f=p?.messageCards??new Map,y=p?.siblingCards??[];return{messages:m,messageCards:f,siblingCards:y,threads:(0,_.useMemo)(()=>m.filter(h=>h.reply_count>0),[m]),isLoading:d.isLoading,isFetching:d.isFetching,error:d.error,refetch:d.refetch}}function fc(e){J();let{channelPath:t,parentMessageId:n,limit:r=50,realtime:s=!0,enabled:i=!0}=e,o=!!n,c=i&&!!t,a=Hn({queryKey:[...S.channelMessages(t||"",n),"infinite",r],queryFn:async({pageParam:h})=>ir(t,{parentMessageId:n,limit:r,before_seq:o?void 0:h,after_seq:o?h:void 0}),initialPageParam:void 0,getNextPageParam:h=>!o||h.messages.length<r?void 0:h.messages[h.messages.length-1]?.seq,getPreviousPageParam:h=>o||h.messages.length<r?void 0:h.messages[0]?.seq,enabled:c}),l=(0,_.useMemo)(()=>{if(!a.data?.pages)return[];let h=new Set,g=[];for(let v of a.data.pages)for(let C of v.messages)h.has(C.id)||(h.add(C.id),g.push(C));return g.sort((v,C)=>v.seq-C.seq)},[a.data?.pages]),{messageCards:d,siblingCards:p}=(0,_.useMemo)(()=>{let h=new Map,g=[];if(!a.data?.pages)return{messageCards:h,siblingCards:g};let v=new Set;for(let C of a.data.pages){for(let[q,F]of C.messageCards)for(let R of F){if(v.has(R.id))continue;v.add(R.id);let k=h.get(q)||[];k.push(R),h.set(q,k)}for(let q of C.siblingCards)v.has(q.id)||(v.add(q.id),g.push(q))}return{messageCards:h,siblingCards:g}},[a.data?.pages]),m=V(),f=(0,_.useRef)(null),y=(0,_.useMemo)(()=>[...S.channelMessages(t||"",n),"infinite",r],[t,n,r]);return(0,_.useEffect)(()=>{if(!s||!t||!c)return;let h=()=>void Te(m,y,{exact:!0}),g=!1,v=!1,C=!1,q=async()=>{let k=m.getQueryData(y);if(!k?.pages?.length){h();return}let U=0;for(let N of k.pages)for(let I of N.messages)I.seq>U&&(U=I.seq);if(U===0){h();return}try{let N=await ir(t,{parentMessageId:n,limit:r,after_seq:U});if(N.messages.length===0&&N.siblingCards.length===0){h();return}if(N.messages.length>0){let I=Math.min(...N.messages.map(B=>B.seq));if(I>U+1){console.warn(`[useInfiniteChannelMessages] sequence gap detected: maxSeq=${U}, minNewSeq=${I}. Triggering full refetch.`),h();return}}m.setQueryData(y,I=>{if(!I)return I;let B=[...I.pages],M=B.length-1,E=B[M],Q=new Set(E.messages.map(we=>we.id)),O=N.messages.filter(we=>!Q.has(we.id)),ce=[...E.messages,...O].sort((we,ms)=>we.seq-ms.seq),H=new Map(E.messageCards);for(let[we,ms]of N.messageCards){let Si=H.get(we)||[],hu=new Set(Si.map(hs=>hs.id)),gu=ms.filter(hs=>!hu.has(hs.id));H.set(we,[...Si,...gu])}let Oe=new Set(E.siblingCards.map(we=>we.id)),pu=N.siblingCards.filter(we=>!Oe.has(we.id)),mu=[...E.siblingCards,...pu];return B[M]={...E,messages:ce,messageCards:H,siblingCards:mu},{...I,pages:B}})}catch(N){console.warn("[useInfiniteChannelMessages] live tail fetch failed, falling back to full invalidation:",N),h()}},F=async()=>{if(g){v=!0;return}g=!0;try{do v=!1,await q();while(v&&!C)}finally{g=!1}},R=ne("vfs_change",()=>{f.current&&clearTimeout(f.current),f.current=setTimeout(()=>{F()},500)},k=>ci(k,t,n,m.getQueryData(y)?.pages.flatMap(U=>U.messages)??[]));return()=>{C=!0,R(),f.current&&clearTimeout(f.current)}},[s,t,c,y,m,n,r]),{messages:l,messageCards:d,siblingCards:p,threads:l.filter(h=>h.reply_count>0),isLoading:a.isLoading,isFetching:a.isFetching,error:a.error,refetch:a.refetch,hasPreviousPage:a.hasPreviousPage??!1,fetchPreviousPage:a.fetchPreviousPage,isFetchingPreviousPage:a.isFetchingPreviousPage??!1,hasNextPage:a.hasNextPage??!1,fetchNextPage:a.fetchNextPage,isFetchingNextPage:a.isFetchingNextPage??!1}}function yl(e){return e==="on"||e==="auto"?"on":"off"}function ka(e){let t=e.type_data||{},n=e._reader||{},r=n.context_lineage||{};return{id:e.id||"",path:e.path||"",name:e.name||"",displayName:t.display_name||e.name||"",aiMode:yl(t.ai_mode),isPrivate:t.is_private||!1,isDm:t.is_dm||!1,messageCount:t.message_count||0,createdAt:e.created_at||"",updatedAt:e.updated_at||"",chatScopePath:r.context_path||"",contextId:e.scope_item_id||"",contextPath:r.context_path||"",contextType:r.context_type||"",contextName:r.context_name||"",contextDisplayName:r.context_name||"",contextPrincipalId:void 0,accountId:e.account_item_id||"",accountPath:"",accountDisplayName:"",memberRole:n.member_role||"member",memberPath:"",modePath:"",autoPilot:t.auto_pilot||!1}}function as(e={}){let t=J(),{realtime:n=!0,enabled:r=!0}=e,s=V(),i=(0,_.useMemo)(()=>S.channels("all"),[t]),o=j({queryKey:i,queryFn:async()=>((await x("query",{item_type:"channel",include_reader:!0,limit:500})).items||[]).map(ka),enabled:r});return(0,_.useEffect)(()=>{if(!(!n||!r))return Ea(s,i,ka)},[n,r,i,s]),{channels:o.data??[],isLoading:o.isLoading,isFetching:o.isFetching,error:o.error,refetch:o.refetch}}function pc(e={}){let t=as(e),n=(0,_.useMemo)(()=>t.channels.filter(r=>!r.isDm),[t.channels]);return{...t,channels:n}}function mc(e={}){let t=as(e),n=(0,_.useMemo)(()=>t.channels.filter(r=>r.isDm),[t.channels]);return{...t,channels:n}}function fi(e={}){let t=J(),{filter:n="all",limit:r=200,realtime:s=!0,enabled:i=!0}=e,o=V(),c=(0,_.useRef)(null),a=(0,_.useMemo)(()=>S.notifications(n,r),[n,r,t]),l=j({queryKey:a,queryFn:async()=>{let p={limit:r};return n==="unread"&&(p.filter="unread"),(await x("get-notifications",p)).notifications||[]},enabled:i});return(0,_.useEffect)(()=>{if(!s||!i)return;let p=["vfs_change","ccm_change"].map(m=>ne(m,()=>{c.current&&clearTimeout(c.current),c.current=setTimeout(()=>{o.invalidateQueries({queryKey:a})},2e3)},f=>f.item_type==="notification"&&ss(f)));return()=>{p.forEach(m=>m()),c.current&&clearTimeout(c.current)}},[s,i,a,o]),{notifications:l.data??[],isLoading:l.isLoading,isFetching:l.isFetching,error:l.error,refetch:l.refetch}}function hc(e={}){let{channels:t,realtime:n=!0,enabled:r=!0}=e,{notifications:s,isLoading:i,isFetching:o,error:c,refetch:a}=fi({filter:"unread",limit:200,realtime:n,enabled:r}),l=(0,_.useMemo)(()=>{let f=new Map;for(let y of s)y.is_unread&&y.channel_id&&f.set(y.channel_id,(f.get(y.channel_id)||0)+1);return f},[s]),d=(0,_.useMemo)(()=>{let f=0;return l.forEach(y=>{f+=y}),f},[l]),{dmUnread:p,channelUnread:m}=(0,_.useMemo)(()=>{if(!t)return{dmUnread:0,channelUnread:0};let f=new Set(t.filter(g=>g.isDm).map(g=>g.id)),y=0,h=0;return l.forEach((g,v)=>{f.has(v)?y+=g:h+=g}),{dmUnread:y,channelUnread:h}},[t,l]);return{unreadByChannel:l,totalUnread:d,dmUnread:p,channelUnread:m,isLoading:i,isFetching:o,error:c,refetch:a}}function gc(){let e=V();return ve({mutationFn:t=>x("create",t),onSuccess:(t,n)=>{let r=n.parent_path;r&&e.invalidateQueries({queryKey:S.children(r)})}})}function yc(){let e=V();return ve({mutationFn:t=>x("update",t),onSuccess:(t,n)=>{let r=n.path;if(r){e.invalidateQueries({queryKey:S.item(r)});let s=r.split("/");s.pop();let i=s.join("/");i&&e.invalidateQueries({queryKey:S.children(i)})}}})}function _c(){return ve({mutationFn:e=>x("update-principal",e),onSuccess:(e,t)=>{if(!ae)return;let n=e&&typeof e=="object"&&e.metadata?e.metadata:{...ae.metadata??{},...typeof t.language=="string"?{language:t.language}:{},...typeof t.timezone=="string"?{timezone:t.timezone}:{},..."avatar_file_id"in t?{avatar_file_id:t.avatar_file_id}:{}};ae={...ae,displayName:typeof t.display_name=="string"?t.display_name:ae.displayName,metadata:n},gl()}})}function vc(){let e=V();return ve({mutationFn:t=>x("delete",t),onSuccess:(t,n)=>{let r=n.path;if(r){e.removeQueries({queryKey:S.item(r)});let s=r.split("/");s.pop();let i=s.join("/");i&&e.invalidateQueries({queryKey:S.children(i)})}}})}function bc(){let e=V();return ve({mutationFn:t=>x("move",t),onSuccess:(t,n)=>{let r=n.path,s=n.new_parent_path;if(r){e.invalidateQueries({queryKey:S.item(r)});let i=r.split("/");i.pop();let o=i.join("/");o&&e.invalidateQueries({queryKey:S.children(o)})}s&&e.invalidateQueries({queryKey:S.children(s)})}})}function wc(){let e=V();return ve({mutationFn:t=>x("link",t),onSuccess:(t,n)=>{let r=n.source_id,s=n.target_id;r&&e.invalidateQueries({queryKey:S.edges(r)}),s&&e.invalidateQueries({queryKey:S.edges(s)})}})}function Sc(e,t){let n=V(),{optimistic:r,...s}=t??{};return ve({mutationFn:i=>x(e,i),onMutate:r?async i=>{await n.cancelQueries({queryKey:r.queryKey});let o=n.getQueryData(r.queryKey);return n.setQueryData(r.queryKey,c=>r.update(c,i)),{previous:o}}:void 0,onError:(i,o,c)=>{r&&c?.previous!==void 0&&n.setQueryData(r.queryKey,c.previous),s.onError?.(i)},onSuccess:s.onSuccess,onSettled:r?()=>{n.invalidateQueries({queryKey:r.queryKey})}:void 0})}function Rc(e,t,n){let r,s,i,o=!0;if(typeof e=="string")r=e,s=t,i=n;else{s=e;let l=t;r=l.eventType,i=l.filter,o=l.enabled??!0}let c=(0,_.useRef)(s),a=(0,_.useRef)(i);(0,_.useEffect)(()=>{c.current=s,a.current=i},[s,i]),(0,_.useEffect)(()=>o?ne(r,d=>c.current(d),a.current?d=>a.current(d):void 0):void 0,[r,o])}function xc(e){let{queryKey:t,queryFn:n,eventType:r,filter:s,enabled:i=!0,debounceMs:o=500}=e,c=V(),a=(0,_.useRef)(s);a.current=s;let l=(0,_.useRef)(null),d=j({queryKey:t,queryFn:n,enabled:i});return(0,_.useEffect)(()=>{if(!i)return;let p=ne(r,()=>{l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{Te(c,t,{exact:!0})},o)},m=>a.current?.(m)??!0);return()=>{p(),l.current&&clearTimeout(l.current)}},[r,i,o,c,JSON.stringify(t)]),d}function xn(e){J();let t=Z(),n=(0,_.useMemo)(()=>e?typeof e=="string"?{path:e}:e:null,[typeof e=="string"?e:JSON.stringify(e)]),r=!!t&&!!n&&!!(n.key||n.path||n.item_id),s=n?.key??n?.path??n?.item_id??"",i=["vfs",t??"__unscoped__","arrangement",s,n?.scope_id??""],o=j({queryKey:i,staleTime:1/0,retry:!1,meta:{arrangementRealtime:!0},queryFn:async()=>{if(!n)return null;let m=await x("resolve-arrangement",{...n,_scope_path:t});if(m?.success===!1)throw new Error(m?.error||"Arrangement could not be loaded");return m??null},enabled:r}),c=o.data??null,a=(0,_.useMemo)(()=>c?.resolved_children??[],[c]),l=c?.resolution_level??null,d=(0,_.useMemo)(()=>{let f=(c?.type_data??null)?.order;return Array.isArray(f)?f:null},[c]),p=(0,_.useCallback)(m=>{if(!d||!m?.length)return m??[];let f=v=>v.id??v.name??"",y=new Map(d.map((v,C)=>[v,C])),h=[],g=[];for(let v of m)(y.has(f(v))?h:g).push(v);return h.sort((v,C)=>y.get(f(v))-y.get(f(C))),[...h,...g]},[d]);return{...o,arrangement:c,resolvedChildren:a,resolutionLevel:l,order:d,sourceScopeId:c?.scope_item_id??null,arrangementQueryKey:i,applyTo:p}}function Cc(e){let{origin:t,originField:n,fallbackUrl:r,mintError:s,scopeId:i,scopePath:o}=e,c=J(),a=Et(),l=i??a?.scope_id??null,d=(0,_.useMemo)(()=>{if(!t)return null;let R="/accounts/",k=t.indexOf(R);if(k===-1)return null;let U=t.indexOf("/",k+R.length);return U===-1?t:t.slice(0,U)},[t]),p=o??d??a?.scope_path??null,m=n?.trim()||null,f=`${c}
1
+ /* @fsaos/gateway v2.0.0 — Unified FSAOS Edge Runtime — 2026-10-14T05:04:56.586Z */
2
+ "use strict";var __FSAOS_GATEWAY__=(()=>{var Cu=Object.create;var An=Object.defineProperty;var xu=Object.getOwnPropertyDescriptor;var Pu=Object.getOwnPropertyNames;var Tu=Object.getPrototypeOf,Eu=Object.prototype.hasOwnProperty;var Ti=e=>{throw TypeError(e)};var Iu=(e,t,n)=>t in e?An(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var kn=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Au=(e,t)=>{for(var n in t)An(e,n,{get:t[n],enumerable:!0})},Ei=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of Pu(t))!Eu.call(e,s)&&s!==n&&An(e,s,{get:()=>t[s],enumerable:!(r=xu(t,s))||r.enumerable});return e};var X=(e,t,n)=>(n=e!=null?Cu(Tu(e)):{},Ei(t||!e||!e.__esModule?An(n,"default",{value:e,enumerable:!0}):n,e)),ku=e=>Ei(An({},"__esModule",{value:!0}),e);var ee=(e,t,n)=>Iu(e,typeof t!="symbol"?t+"":t,n),vs=(e,t,n)=>t.has(e)||Ti("Cannot "+n);var u=(e,t,n)=>(vs(e,t,"read from private field"),n?n.call(e):t.get(e)),w=(e,t,n)=>t.has(e)?Ti("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,n),b=(e,t,n,r)=>(vs(e,t,"write to private field"),r?r.call(e,n):t.set(e,n),n),T=(e,t,n)=>(vs(e,t,"access private method"),n);var Mn=(e,t,n,r)=>({set _(s){b(e,t,s,n)},get _(){return u(e,t,r)}});var oe=kn(($l,Ii)=>{Ii.exports=React});var xr=kn((Wf,uo)=>{uo.exports={jsx:React.createElement,jsxs:React.createElement,Fragment:React.Fragment}});var Ro=kn((bp,So)=>{So.exports={createClient:window.supabase.createClient}});var jo=kn((kp,Lo)=>{Lo.exports=ReactDOM});var Vc=kn((Ph,$c)=>{$c.exports=ReactDOM});var xi={};Au(xi,{ComponentRenderer:()=>pc,EnforcementDeniedError:()=>tt,FormSubmissionError:()=>In,GatewayRequestError:()=>Te,InteractionTrackingError:()=>Pn,KernelProvider:()=>mc,QueryClientProvider:()=>Bn,assignPersonalSection:()=>yu,auth:()=>nu,awaitAnchorReady:()=>Yn,awaitScopeReady:()=>Mo,callTool:()=>Zc,cancelQueuedTurn:()=>Wc,cancelTurn:()=>Lc,clearCachedToken:()=>Vs,clearSession:()=>Zs,createItem:()=>Jc,disconnectSSE:()=>oi,disposeVfsRealtimeWs:()=>ci,electHomeAnchor:()=>Et,emitEvent:()=>ca,fetchChannelMessages:()=>va,fetchChannelMessagesPage:()=>or,fetchChannelMessagesWithCards:()=>es,fetchEdgesForItem:()=>Gr,fetchItemHistory:()=>Yr,fetchItemVersions:()=>ir,fetchItems:()=>vn,fetchMemberFocus:()=>Xr,fetchOpenEnvelope:()=>Zr,fetchRecentActivity:()=>Jr,fetchResolvedItems:()=>wi,fetchTimelineHistory:()=>Si,fetchTurnQueueEntries:()=>ga,fetchTypeDefinitions:()=>Hr,fetchVfsChildren:()=>sr,fetchVfsChildrenPage:()=>Vr,fetchVfsItem:()=>$r,fetchVfsItemById:()=>Br,fetchVfsTree:()=>zr,gatewayCall:()=>S,getAccessToken:()=>Je,getAnchor:()=>un,getAnchorRef:()=>ge,getAnchorVersion:()=>zs,getAssetUrl:()=>tu,getDefaultSort:()=>ou,getHomeAnchor:()=>fe,getMountVersion:()=>Xn,getMounts:()=>Pe,getPathSubscriptionState:()=>la,getQueryClient:()=>P,getRequiredFormFields:()=>au,getScope:()=>H,getScopeVersion:()=>Z,getServerClockOffsetMs:()=>Do,getServerClockSyncedAt:()=>Uo,getSessionEntry:()=>It,hasServerClock:()=>Qo,initSession:()=>pt,initVfsRealtimeWs:()=>Ot,initializeFsaos:()=>Kc,initializeWorkspace:()=>fs,interpretSchema:()=>bi,invalidateAllVfs:()=>Sa,invalidateChannelMessages:()=>Ca,invalidateChildren:()=>Wr,invalidateItem:()=>ai,invalidateOpenEnvelope:()=>xa,invalidatePathAndParent:()=>ba,invalidateSubtree:()=>wa,invalidateTypes:()=>Ra,isAnchorReady:()=>Ys,isChannelPath:()=>Ke,isListableItemsFilter:()=>_n,isScopeReady:()=>Or,itemsFilterFromQueryFilter:()=>ya,listChildren:()=>zc,loadMounts:()=>Ft,mount:()=>ru,mountRealtimeScope:()=>wn,normalizeItem:()=>ye,onConnectionStateChange:()=>pa,pathSubscriptionMatches:()=>ri,personalSectionsKey:()=>hr,ping:()=>ua,pushChanges:()=>Xc,queryClient:()=>zo,readItem:()=>Gc,refreshQuery:()=>Ee,registerCleanup:()=>ie,replaceMounts:()=>is,resetAllSdkState:()=>ln,resolvePrincipalId:()=>lc,resubscribePath:()=>fa,selectMount:()=>lr,serverDeadlinePassed:()=>No,serverMsUntil:()=>Ko,serverNow:()=>Fr,setAnchor:()=>kr,setCachedToken:()=>Po,setQueryClient:()=>Go,setScope:()=>ko,setupRequireShim:()=>su,signal:()=>eu,startTracking:()=>ds,steerTurn:()=>jc,submitForm:()=>Bc,subscribeAnchor:()=>Js,subscribeArtifactStream:()=>ps,subscribeMounts:()=>Mr,subscribeScope:()=>be,subscribeToEvents:()=>re,subscribeToPath:()=>jr,subscribeToScope:()=>yn,trackAction:()=>Dc,trackEvent:()=>qt,trackPageView:()=>Qc,unmountRealtimeScope:()=>rs,updateItem:()=>Yc,uploadFile:()=>cu,useAccounts:()=>tc,useAgentTimeline:()=>mu,useAllChannels:()=>us,useArrangement:()=>Cn,useArtifactStream:()=>pu,useAsset:()=>rc,useAuth:()=>cs,useChannelMessages:()=>hc,useChannels:()=>yc,useChildren:()=>Na,useComponent:()=>pi,useCreate:()=>bc,useDelete:()=>Rc,useDmChannels:()=>_c,useEdges:()=>Va,useEventStream:()=>Tc,useFileUpload:()=>lu,useInfiniteChannelMessages:()=>gc,useInfiniteChildren:()=>$a,useInfiniteItems:()=>Ba,useItem:()=>Da,useItemById:()=>Ua,useItemHistory:()=>Xa,useItemVersions:()=>Ya,useItems:()=>Wa,useLink:()=>xc,useList:()=>fi,useMemberFocus:()=>Ja,useMintedAsset:()=>Ic,useMounts:()=>nc,useMove:()=>Cc,useMutation:()=>Pc,useNotifications:()=>mi,useOpen:()=>Ga,usePermission:()=>ac,usePermissions:()=>cc,usePersonalItemOrder:()=>Ac,usePersonalSections:()=>vu,usePinnedItems:()=>gu,usePrincipal:()=>dc,useRealtimeQuery:()=>Ec,useRecentActivity:()=>Za,useResolve:()=>ja,useResolvedItems:()=>fu,useScope:()=>ec,useScopeReady:()=>Qa,useSearch:()=>La,useTheme:()=>oc,useTimelineHistory:()=>hu,useTool:()=>fc,useTree:()=>Ka,useType:()=>Ha,useTypeHelpers:()=>za,useTypes:()=>as,useUnreadCounts:()=>vc,useUpdate:()=>wc,useUpdatePrincipal:()=>Sc,vfsKeys:()=>R,waitForPathReady:()=>da});var tt=class e extends Error{constructor(n){let r=n.message||e.fallbackMessage(n);super(r);ee(this,"name","EnforcementDeniedError");ee(this,"deniedBy");ee(this,"ruleKey");ee(this,"displayName");this.deniedBy=n.denied_by||n.error_type||n.error||"unknown";let s=n.enforcement;this.ruleKey=s?.rule_key??void 0,this.displayName=s?.display_name??void 0}static fallbackMessage(n){let r=n.error||"",s=n.denied_by||"";return s==="rule"||r==="RULE_DENIED"?"This feature is not enabled for this workspace.":s==="entitlement"||r==="ENTITLEMENT_REQUIRED"?"This feature requires a plan upgrade.":s==="access"||r==="ACCESS_DENIED"||r==="PERMISSION_DENIED"?"You don't have permission to do this.":"This action is not allowed."}get isRuleDenial(){return this.deniedBy==="rule"||this.deniedBy==="RULE_DENIED"}get isAccessDenial(){return this.deniedBy==="access"||this.deniedBy==="ACCESS_DENIED"}get isEntitlementDenial(){return this.deniedBy==="entitlement"||this.deniedBy==="ENTITLEMENT_REQUIRED"}};var xn=X(oe(),1);var Re=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}};var yt,nt,Dt,Ai,Mu=(Ai=class extends Re{constructor(){super();w(this,yt);w(this,nt);w(this,Dt);b(this,Dt,t=>{if(typeof window<"u"&&window.addEventListener){let n=()=>t();return window.addEventListener("visibilitychange",n,!1),()=>{window.removeEventListener("visibilitychange",n)}}})}onSubscribe(){u(this,nt)||this.setEventListener(u(this,Dt))}onUnsubscribe(){var t;this.hasListeners()||((t=u(this,nt))==null||t.call(this),b(this,nt,void 0))}setEventListener(t){var n;b(this,Dt,t),(n=u(this,nt))==null||n.call(this),b(this,nt,t(r=>{typeof r=="boolean"?this.setFocused(r):this.onFocus()}))}setFocused(t){u(this,yt)!==t&&(b(this,yt,t),this.onFocus())}onFocus(){let t=this.isFocused();this.listeners.forEach(n=>{n(t)})}isFocused(){return typeof u(this,yt)=="boolean"?u(this,yt):globalThis.document?.visibilityState!=="hidden"}},yt=new WeakMap,nt=new WeakMap,Dt=new WeakMap,Ai),Ut=new Mu;var Ou={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},rt,bs,ki,Fu=(ki=class{constructor(){w(this,rt,Ou);w(this,bs,!1)}setTimeoutProvider(e){b(this,rt,e)}setTimeout(e,t){return u(this,rt).setTimeout(e,t)}clearTimeout(e){u(this,rt).clearTimeout(e)}setInterval(e,t){return u(this,rt).setInterval(e,t)}clearInterval(e){u(this,rt).clearInterval(e)}},rt=new WeakMap,bs=new WeakMap,ki),Fe=new Fu;function Mi(e){setTimeout(e,0)}var Ss=typeof window>"u"||"Deno"in globalThis;function G(){}function qi(e,t){return typeof e=="function"?e(t):e}function On(e){return typeof e=="number"&&e>=0&&e!==1/0}function gr(e,t){return Math.max(e+(t||0)-Date.now(),0)}function Ae(e,t){return typeof e=="function"?e(t):e}function pe(e,t){return typeof e=="function"?e(t):e}function yr(e,t){let{type:n="all",exact:r,fetchStatus:s,predicate:i,queryKey:o,stale:c}=e;if(o){if(r){if(t.queryHash!==Fn(o,t.options))return!1}else if(!_t(t.queryKey,o))return!1}if(n!=="all"){let a=t.isActive();if(n==="active"&&!a||n==="inactive"&&a)return!1}return!(typeof c=="boolean"&&t.isStale()!==c||s&&s!==t.state.fetchStatus||i&&!i(t))}function _r(e,t){let{exact:n,status:r,predicate:s,mutationKey:i}=e;if(i){if(!t.options.mutationKey)return!1;if(n){if(qe(t.options.mutationKey)!==qe(i))return!1}else if(!_t(t.options.mutationKey,i))return!1}return!(r&&t.state.status!==r||s&&!s(t))}function Fn(e,t){return(t?.queryKeyHashFn||qe)(e)}function qe(e){return JSON.stringify(e,(t,n)=>ws(n)?Object.keys(n).sort().reduce((r,s)=>(r[s]=n[s],r),{}):n)}function _t(e,t){return e===t?!0:typeof e!=typeof t?!1:e&&t&&typeof e=="object"&&typeof t=="object"?Object.keys(t).every(n=>_t(e[n],t[n])):!1}var qu=Object.prototype.hasOwnProperty;function Rs(e,t,n=0){if(e===t)return e;if(n>500)return t;let r=Oi(e)&&Oi(t);if(!r&&!(ws(e)&&ws(t)))return t;let i=(r?e:Object.keys(e)).length,o=r?t:Object.keys(t),c=o.length,a=r?new Array(c):{},l=0;for(let d=0;d<c;d++){let p=r?d:o[d],m=e[p],f=t[p];if(m===f){a[p]=m,(r?d<i:qu.call(e,p))&&l++;continue}if(m===null||f===null||typeof m!="object"||typeof f!="object"){a[p]=f;continue}let y=Rs(m,f,n+1);a[p]=y,y===m&&l++}return i===c&&l===i?e:a}function Nt(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(e[n]!==t[n])return!1;return!0}function Oi(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function ws(e){if(!Fi(e))return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(!Fi(n)||!n.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(e)!==Object.prototype)}function Fi(e){return Object.prototype.toString.call(e)==="[object Object]"}function Qi(e){return new Promise(t=>{Fe.setTimeout(t,e)})}function qn(e,t,n){return typeof n.structuralSharing=="function"?n.structuralSharing(e,t):n.structuralSharing!==!1?Rs(e,t):t}function Di(e,t,n=0){let r=[...e,t];return n&&r.length>n?r.slice(1):r}function Ui(e,t,n=0){let r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var Kt=Symbol();function vr(e,t){return!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===Kt?()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function Lt(e,t){return typeof e=="function"?e(...t):!!e}function Ni(e,t,n){let r=!1,s;return Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(s??(s=t()),r||(r=!0,s.aborted?n():s.addEventListener("abort",n,{once:!0})),s)}),e}var Qe=(()=>{let e=()=>Ss;return{isServer(){return e()},setIsServer(t){e=t}}})();function Qn(){let e,t,n=new Promise((s,i)=>{e=s,t=i});n.status="pending",n.catch(()=>{});function r(s){Object.assign(n,s),delete n.resolve,delete n.reject}return n.resolve=s=>{r({status:"fulfilled",value:s}),e(s)},n.reject=s=>{r({status:"rejected",reason:s}),t(s)},n}var Ki=Mi;function Qu(){let e=[],t=0,n=c=>{c()},r=c=>{c()},s=Ki,i=c=>{t?e.push(c):s(()=>{n(c)})},o=()=>{let c=e;e=[],c.length&&s(()=>{r(()=>{c.forEach(a=>{n(a)})})})};return{batch:c=>{let a;t++;try{a=c()}finally{t--,t||o()}return a},batchCalls:c=>(...a)=>{i(()=>{c(...a)})},schedule:i,setNotifyFunction:c=>{n=c},setBatchNotifyFunction:c=>{r=c},setScheduler:c=>{s=c}}}var L=Qu();var jt,st,Wt,Li,Du=(Li=class extends Re{constructor(){super();w(this,jt,!0);w(this,st);w(this,Wt);b(this,Wt,t=>{if(typeof window<"u"&&window.addEventListener){let n=()=>t(!0),r=()=>t(!1);return window.addEventListener("online",n,!1),window.addEventListener("offline",r,!1),()=>{window.removeEventListener("online",n),window.removeEventListener("offline",r)}}})}onSubscribe(){u(this,st)||this.setEventListener(u(this,Wt))}onUnsubscribe(){var t;this.hasListeners()||((t=u(this,st))==null||t.call(this),b(this,st,void 0))}setEventListener(t){var n;b(this,Wt,t),(n=u(this,st))==null||n.call(this),b(this,st,t(this.setOnline.bind(this)))}setOnline(t){u(this,jt)!==t&&(b(this,jt,t),this.listeners.forEach(r=>{r(t)}))}isOnline(){return u(this,jt)}},jt=new WeakMap,st=new WeakMap,Wt=new WeakMap,Li),Bt=new Du;function Uu(e){return Math.min(1e3*2**e,3e4)}function Cs(e){return(e??"online")==="online"?Bt.isOnline():!0}var br=class extends Error{constructor(e){super("CancelledError"),this.revert=e?.revert,this.silent=e?.silent}};function wr(e){let t=!1,n=0,r,s=Qn(),i=()=>s.status!=="pending",o=h=>{if(!i()){let g=new br(h);m(g),e.onCancel?.(g)}},c=()=>{t=!0},a=()=>{t=!1},l=()=>Ut.isFocused()&&(e.networkMode==="always"||Bt.isOnline())&&e.canRun(),d=()=>Cs(e.networkMode)&&e.canRun(),p=h=>{i()||(r?.(),s.resolve(h))},m=h=>{i()||(r?.(),s.reject(h))},f=()=>new Promise(h=>{r=g=>{(i()||l())&&h(g)},e.onPause?.()}).then(()=>{r=void 0,i()||e.onContinue?.()}),y=()=>{if(i())return;let h,g=n===0?e.initialPromise:void 0;try{h=g??e.fn()}catch(v){h=Promise.reject(v)}Promise.resolve(h).then(p).catch(v=>{if(i())return;let x=e.retry??(Qe.isServer()?0:3),q=e.retryDelay??Uu,F=typeof q=="function"?q(n,v):q,C=x===!0||typeof x=="number"&&n<x||typeof x=="function"&&x(n,v);if(t||!C){m(v);return}n++,e.onFail?.(n,v),Qi(F).then(()=>l()?void 0:f()).then(()=>{t?m(v):y()})})};return{promise:s,status:()=>s.status,cancel:o,continue:()=>(r?.(),s),cancelRetry:c,continueRetry:a,canStart:d,start:()=>(d()?y():f().then(y),s)}}var vt,ji,Sr=(ji=class{constructor(){w(this,vt)}destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),On(this.gcTime)&&b(this,vt,Fe.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(Qe.isServer()?1/0:5*60*1e3))}clearGcTimeout(){u(this,vt)!==void 0&&(Fe.clearTimeout(u(this,vt)),b(this,vt,void 0))}},vt=new WeakMap,ji);var bt,$t,Ce,wt,te,Dn,St,ve,Hi,We,$i,Vi=($i=class extends Sr{constructor(t){super();w(this,ve);w(this,bt);w(this,$t);w(this,Ce);w(this,wt);w(this,te);w(this,Dn);w(this,St);b(this,St,!1),b(this,Dn,t.defaultOptions),this.setOptions(t.options),this.observers=[],b(this,wt,t.client),b(this,Ce,u(this,wt).getQueryCache()),this.queryKey=t.queryKey,this.queryHash=t.queryHash,b(this,bt,Bi(this.options)),this.state=t.state??u(this,bt),this.scheduleGc()}get meta(){return this.options.meta}get promise(){return u(this,te)?.promise}setOptions(t){if(this.options={...u(this,Dn),...t},this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){let n=Bi(this.options);n.data!==void 0&&(this.setState(Wi(n.data,n.dataUpdatedAt)),b(this,bt,n))}}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&u(this,Ce).remove(this)}setData(t,n){let r=qn(this.state.data,t,this.options);return T(this,ve,We).call(this,{data:r,type:"success",dataUpdatedAt:n?.updatedAt,manual:n?.manual}),r}setState(t,n){T(this,ve,We).call(this,{type:"setState",state:t,setStateOptions:n})}cancel(t){let n=u(this,te)?.promise;return u(this,te)?.cancel(t),n?n.then(G).catch(G):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return u(this,bt)}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(t=>pe(t.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===Kt||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0?this.observers.some(t=>Ae(t.options.staleTime,this)==="static"):!1}isStale(){return this.getObserversCount()>0?this.observers.some(t=>t.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(t=0){return this.state.data===void 0?!0:t==="static"?!1:this.state.isInvalidated?!0:!gr(this.state.dataUpdatedAt,t)}onFocus(){this.observers.find(n=>n.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),u(this,te)?.continue()}onOnline(){this.observers.find(n=>n.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),u(this,te)?.continue()}addObserver(t){this.observers.includes(t)||(this.observers.push(t),this.clearGcTimeout(),u(this,Ce).notify({type:"observerAdded",query:this,observer:t}))}removeObserver(t){this.observers.includes(t)&&(this.observers=this.observers.filter(n=>n!==t),this.observers.length||(u(this,te)&&(u(this,St)||T(this,ve,Hi).call(this)?u(this,te).cancel({revert:!0}):u(this,te).cancelRetry()),this.scheduleGc()),u(this,Ce).notify({type:"observerRemoved",query:this,observer:t}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||T(this,ve,We).call(this,{type:"invalidate"})}async fetch(t,n){if(this.state.fetchStatus!=="idle"&&u(this,te)?.status()!=="rejected"){if(this.state.data!==void 0&&n?.cancelRefetch)this.cancel({silent:!0});else if(u(this,te))return u(this,te).continueRetry(),u(this,te).promise}if(t&&this.setOptions(t),!this.options.queryFn){let a=this.observers.find(l=>l.options.queryFn);a&&this.setOptions(a.options)}let r=new AbortController,s=a=>{Object.defineProperty(a,"signal",{enumerable:!0,get:()=>(b(this,St,!0),r.signal)})},i=()=>{let a=vr(this.options,n),d=(()=>{let p={client:u(this,wt),queryKey:this.queryKey,meta:this.meta};return s(p),p})();return b(this,St,!1),this.options.persister?this.options.persister(a,d,this):a(d)},c=(()=>{let a={fetchOptions:n,options:this.options,queryKey:this.queryKey,client:u(this,wt),state:this.state,fetchFn:i};return s(a),a})();this.options.behavior?.onFetch(c,this),b(this,$t,this.state),(this.state.fetchStatus==="idle"||this.state.fetchMeta!==c.fetchOptions?.meta)&&T(this,ve,We).call(this,{type:"fetch",meta:c.fetchOptions?.meta}),b(this,te,wr({initialPromise:n?.initialPromise,fn:c.fetchFn,onCancel:a=>{a instanceof br&&a.revert&&this.setState({...u(this,$t),fetchStatus:"idle"}),r.abort()},onFail:(a,l)=>{T(this,ve,We).call(this,{type:"failed",failureCount:a,error:l})},onPause:()=>{T(this,ve,We).call(this,{type:"pause"})},onContinue:()=>{T(this,ve,We).call(this,{type:"continue"})},retry:c.options.retry,retryDelay:c.options.retryDelay,networkMode:c.options.networkMode,canRun:()=>!0}));try{let a=await u(this,te).start();if(a===void 0)throw new Error(`${this.queryHash} data is undefined`);return this.setData(a),u(this,Ce).config.onSuccess?.(a,this),u(this,Ce).config.onSettled?.(a,this.state.error,this),a}catch(a){if(a instanceof br){if(a.silent)return u(this,te).promise;if(a.revert){if(this.state.data===void 0)throw a;return this.state.data}}throw T(this,ve,We).call(this,{type:"error",error:a}),u(this,Ce).config.onError?.(a,this),u(this,Ce).config.onSettled?.(this.state.data,a,this),a}finally{this.scheduleGc()}}},bt=new WeakMap,$t=new WeakMap,Ce=new WeakMap,wt=new WeakMap,te=new WeakMap,Dn=new WeakMap,St=new WeakMap,ve=new WeakSet,Hi=function(){return this.state.fetchStatus==="paused"&&this.state.status==="pending"},We=function(t){let n=r=>{switch(t.type){case"failed":return{...r,fetchFailureCount:t.failureCount,fetchFailureReason:t.error};case"pause":return{...r,fetchStatus:"paused"};case"continue":return{...r,fetchStatus:"fetching"};case"fetch":return{...r,...xs(r.data,this.options),fetchMeta:t.meta??null};case"success":let s={...r,...Wi(t.data,t.dataUpdatedAt),dataUpdateCount:r.dataUpdateCount+1,...!t.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return b(this,$t,t.manual?s:void 0),s;case"error":let i=t.error;return{...r,error:i,errorUpdateCount:r.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:r.fetchFailureCount+1,fetchFailureReason:i,fetchStatus:"idle",status:"error",isInvalidated:!0};case"invalidate":return{...r,isInvalidated:!0};case"setState":return{...r,...t.state}}};this.state=n(this.state),L.batch(()=>{this.observers.forEach(r=>{r.onQueryUpdate()}),u(this,Ce).notify({query:this,type:"updated",action:t})})},$i);function xs(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:Cs(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}function Wi(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:"success"}}function Bi(e){let t=typeof e.initialData=="function"?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt=="function"?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?"success":"pending",fetchStatus:"idle"}}var me,D,Nn,le,Rt,Vt,Be,it,Kn,Ht,Gt,Ct,xt,ot,zt,K,Un,Ps,Ts,Es,Is,As,ks,Ms,Yi,Ji,Ln=(Ji=class extends Re{constructor(t,n){super();w(this,K);w(this,me);w(this,D);w(this,Nn);w(this,le);w(this,Rt);w(this,Vt);w(this,Be);w(this,it);w(this,Kn);w(this,Ht);w(this,Gt);w(this,Ct);w(this,xt);w(this,ot);w(this,zt,new Set);this.options=n,b(this,me,t),b(this,it,null),b(this,Be,Qn()),this.bindMethods(),this.setOptions(n)}bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(u(this,D).addObserver(this),Gi(u(this,D),this.options)?T(this,K,Un).call(this):this.updateResult(),T(this,K,Is).call(this))}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return Os(u(this,D),this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return Os(u(this,D),this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,T(this,K,As).call(this),T(this,K,ks).call(this),u(this,D).removeObserver(this)}setOptions(t){let n=this.options,r=u(this,D);if(this.options=u(this,me).defaultQueryOptions(t),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof pe(this.options.enabled,u(this,D))!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");T(this,K,Ms).call(this),u(this,D).setOptions(this.options),n._defaulted&&!Nt(this.options,n)&&u(this,me).getQueryCache().notify({type:"observerOptionsUpdated",query:u(this,D),observer:this});let s=this.hasListeners();s&&zi(u(this,D),r,this.options,n)&&T(this,K,Un).call(this),this.updateResult(),s&&(u(this,D)!==r||pe(this.options.enabled,u(this,D))!==pe(n.enabled,u(this,D))||Ae(this.options.staleTime,u(this,D))!==Ae(n.staleTime,u(this,D)))&&T(this,K,Ps).call(this);let i=T(this,K,Ts).call(this);s&&(u(this,D)!==r||pe(this.options.enabled,u(this,D))!==pe(n.enabled,u(this,D))||i!==u(this,ot))&&T(this,K,Es).call(this,i)}getOptimisticResult(t){let n=u(this,me).getQueryCache().build(u(this,me),t),r=this.createResult(n,t);return Ku(this,r)&&(b(this,le,r),b(this,Vt,this.options),b(this,Rt,u(this,D).state)),r}getCurrentResult(){return u(this,le)}trackResult(t,n){return new Proxy(t,{get:(r,s)=>(this.trackProp(s),n?.(s),s==="promise"&&(this.trackProp("data"),!this.options.experimental_prefetchInRender&&u(this,Be).status==="pending"&&u(this,Be).reject(new Error("experimental_prefetchInRender feature flag is not enabled"))),Reflect.get(r,s))})}trackProp(t){u(this,zt).add(t)}getCurrentQuery(){return u(this,D)}refetch({...t}={}){return this.fetch({...t})}fetchOptimistic(t){let n=u(this,me).defaultQueryOptions(t),r=u(this,me).getQueryCache().build(u(this,me),n);return r.fetch().then(()=>this.createResult(r,n))}fetch(t){return T(this,K,Un).call(this,{...t,cancelRefetch:t.cancelRefetch??!0}).then(()=>(this.updateResult(),u(this,le)))}createResult(t,n){let r=u(this,D),s=this.options,i=u(this,le),o=u(this,Rt),c=u(this,Vt),l=t!==r?t.state:u(this,Nn),{state:d}=t,p={...d},m=!1,f;if(n._optimisticResults){let I=this.hasListeners(),$=!I&&Gi(t,n),M=I&&zi(t,r,n,s);($||M)&&(p={...p,...xs(d.data,t.options)}),n._optimisticResults==="isRestoring"&&(p.fetchStatus="idle")}let{error:y,errorUpdatedAt:h,status:g}=p;f=p.data;let v=!1;if(n.placeholderData!==void 0&&f===void 0&&g==="pending"){let I;i?.isPlaceholderData&&n.placeholderData===c?.placeholderData?(I=i.data,v=!0):I=typeof n.placeholderData=="function"?n.placeholderData(u(this,Gt)?.state.data,u(this,Gt)):n.placeholderData,I!==void 0&&(g="success",f=qn(i?.data,I,n),m=!0)}if(n.select&&f!==void 0&&!v)if(i&&f===o?.data&&n.select===u(this,Kn))f=u(this,Ht);else try{b(this,Kn,n.select),f=n.select(f),f=qn(i?.data,f,n),b(this,Ht,f),b(this,it,null)}catch(I){b(this,it,I)}u(this,it)&&(y=u(this,it),f=u(this,Ht),h=Date.now(),g="error");let x=p.fetchStatus==="fetching",q=g==="pending",F=g==="error",C=q&&x,k=f!==void 0,N={status:g,fetchStatus:p.fetchStatus,isPending:q,isSuccess:g==="success",isError:F,isInitialLoading:C,isLoading:C,data:f,dataUpdatedAt:p.dataUpdatedAt,error:y,errorUpdatedAt:h,failureCount:p.fetchFailureCount,failureReason:p.fetchFailureReason,errorUpdateCount:p.errorUpdateCount,isFetched:t.isFetched(),isFetchedAfterMount:p.dataUpdateCount>l.dataUpdateCount||p.errorUpdateCount>l.errorUpdateCount,isFetching:x,isRefetching:x&&!q,isLoadingError:F&&!k,isPaused:p.fetchStatus==="paused",isPlaceholderData:m,isRefetchError:F&&k,isStale:Fs(t,n),refetch:this.refetch,promise:u(this,Be),isEnabled:pe(n.enabled,t)!==!1};if(this.options.experimental_prefetchInRender){let I=N.data!==void 0,$=N.status==="error"&&!I,M=O=>{$?O.reject(N.error):I&&O.resolve(N.data)},E=()=>{let O=b(this,Be,N.promise=Qn());M(O)},Q=u(this,Be);switch(Q.status){case"pending":t.queryHash===r.queryHash&&M(Q);break;case"fulfilled":($||N.data!==Q.value)&&E();break;case"rejected":(!$||N.error!==Q.reason)&&E();break}}return N}updateResult(){let t=u(this,le),n=this.createResult(u(this,D),this.options);if(b(this,Rt,u(this,D).state),b(this,Vt,this.options),u(this,Rt).data!==void 0&&b(this,Gt,u(this,D)),Nt(n,t))return;b(this,le,n);let r=()=>{if(!t)return!0;let{notifyOnChangeProps:s}=this.options,i=typeof s=="function"?s():s;if(i==="all"||!i&&!u(this,zt).size)return!0;let o=new Set(i??u(this,zt));return this.options.throwOnError&&o.add("error"),Object.keys(u(this,le)).some(c=>{let a=c;return u(this,le)[a]!==t[a]&&o.has(a)})};T(this,K,Yi).call(this,{listeners:r()})}onQueryUpdate(){this.updateResult(),this.hasListeners()&&T(this,K,Is).call(this)}},me=new WeakMap,D=new WeakMap,Nn=new WeakMap,le=new WeakMap,Rt=new WeakMap,Vt=new WeakMap,Be=new WeakMap,it=new WeakMap,Kn=new WeakMap,Ht=new WeakMap,Gt=new WeakMap,Ct=new WeakMap,xt=new WeakMap,ot=new WeakMap,zt=new WeakMap,K=new WeakSet,Un=function(t){T(this,K,Ms).call(this);let n=u(this,D).fetch(this.options,t);return t?.throwOnError||(n=n.catch(G)),n},Ps=function(){T(this,K,As).call(this);let t=Ae(this.options.staleTime,u(this,D));if(Qe.isServer()||u(this,le).isStale||!On(t))return;let r=gr(u(this,le).dataUpdatedAt,t)+1;b(this,Ct,Fe.setTimeout(()=>{u(this,le).isStale||this.updateResult()},r))},Ts=function(){return(typeof this.options.refetchInterval=="function"?this.options.refetchInterval(u(this,D)):this.options.refetchInterval)??!1},Es=function(t){T(this,K,ks).call(this),b(this,ot,t),!(Qe.isServer()||pe(this.options.enabled,u(this,D))===!1||!On(u(this,ot))||u(this,ot)===0)&&b(this,xt,Fe.setInterval(()=>{(this.options.refetchIntervalInBackground||Ut.isFocused())&&T(this,K,Un).call(this)},u(this,ot)))},Is=function(){T(this,K,Ps).call(this),T(this,K,Es).call(this,T(this,K,Ts).call(this))},As=function(){u(this,Ct)!==void 0&&(Fe.clearTimeout(u(this,Ct)),b(this,Ct,void 0))},ks=function(){u(this,xt)!==void 0&&(Fe.clearInterval(u(this,xt)),b(this,xt,void 0))},Ms=function(){let t=u(this,me).getQueryCache().build(u(this,me),this.options);if(t===u(this,D))return;let n=u(this,D);b(this,D,t),b(this,Nn,t.state),this.hasListeners()&&(n?.removeObserver(this),t.addObserver(this))},Yi=function(t){L.batch(()=>{t.listeners&&this.listeners.forEach(n=>{n(u(this,le))}),u(this,me).getQueryCache().notify({query:u(this,D),type:"observerResultsUpdated"})})},Ji);function Nu(e,t){return pe(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status==="error"&&t.retryOnMount===!1)}function Gi(e,t){return Nu(e,t)||e.state.data!==void 0&&Os(e,t,t.refetchOnMount)}function Os(e,t,n){if(pe(t.enabled,e)!==!1&&Ae(t.staleTime,e)!=="static"){let r=typeof n=="function"?n(e):n;return r==="always"||r!==!1&&Fs(e,t)}return!1}function zi(e,t,n,r){return(e!==t||pe(r.enabled,e)===!1)&&(!n.suspense||e.state.status!=="error")&&Fs(e,n)}function Fs(e,t){return pe(t.enabled,e)!==!1&&e.isStaleByTime(Ae(t.staleTime,e))}function Ku(e,t){return!Nt(e.getCurrentResult(),t)}function Jt(e){return{onFetch:(t,n)=>{let r=t.options,s=t.fetchOptions?.meta?.fetchMore?.direction,i=t.state.data?.pages||[],o=t.state.data?.pageParams||[],c={pages:[],pageParams:[]},a=0,l=async()=>{let d=!1,p=y=>{Ni(y,()=>t.signal,()=>d=!0)},m=vr(t.options,t.fetchOptions),f=async(y,h,g)=>{if(d)return Promise.reject();if(h==null&&y.pages.length)return Promise.resolve(y);let x=(()=>{let k={client:t.client,queryKey:t.queryKey,pageParam:h,direction:g?"backward":"forward",meta:t.options.meta};return p(k),k})(),q=await m(x),{maxPages:F}=t.options,C=g?Ui:Di;return{pages:C(y.pages,q,F),pageParams:C(y.pageParams,h,F)}};if(s&&i.length){let y=s==="backward",h=y?Xi:qs,g={pages:i,pageParams:o},v=h(r,g);c=await f(g,v,y)}else{let y=e??i.length;do{let h=a===0?o[0]??r.initialPageParam:qs(r,c);if(a>0&&h==null)break;c=await f(c,h),a++}while(a<y)}return c};t.options.persister?t.fetchFn=()=>t.options.persister?.(l,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n):t.fetchFn=l}}}function qs(e,{pages:t,pageParams:n}){let r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function Xi(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}function Zi(e,t){return t?qs(e,t)!=null:!1}function eo(e,t){return!t||!e.getPreviousPageParam?!1:Xi(e,t)!=null}var Qs=class extends Ln{constructor(e,t){super(e,t)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(e){super.setOptions({...e,behavior:Jt()})}getOptimisticResult(e){return e.behavior=Jt(),super.getOptimisticResult(e)}fetchNextPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"forward"}}})}fetchPreviousPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"backward"}}})}createResult(e,t){let{state:n}=e,r=super.createResult(e,t),{isFetching:s,isRefetching:i,isError:o,isRefetchError:c}=r,a=n.fetchMeta?.fetchMore?.direction,l=o&&a==="forward",d=s&&a==="forward",p=o&&a==="backward",m=s&&a==="backward";return{...r,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:Zi(t,n.data),hasPreviousPage:eo(t,n.data),isFetchNextPageError:l,isFetchingNextPage:d,isFetchPreviousPageError:p,isFetchingPreviousPage:m,isRefetchError:c&&!l&&!p,isRefetching:i&&!d&&!m}}};var jn,De,ae,Pt,Ue,at,to,no=(to=class extends Sr{constructor(t){super();w(this,Ue);w(this,jn);w(this,De);w(this,ae);w(this,Pt);b(this,jn,t.client),this.mutationId=t.mutationId,b(this,ae,t.mutationCache),b(this,De,[]),this.state=t.state||Ds(),this.setOptions(t.options),this.scheduleGc()}setOptions(t){this.options=t,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(t){u(this,De).includes(t)||(u(this,De).push(t),this.clearGcTimeout(),u(this,ae).notify({type:"observerAdded",mutation:this,observer:t}))}removeObserver(t){b(this,De,u(this,De).filter(n=>n!==t)),this.scheduleGc(),u(this,ae).notify({type:"observerRemoved",mutation:this,observer:t})}optionalRemove(){u(this,De).length||(this.state.status==="pending"?this.scheduleGc():u(this,ae).remove(this))}continue(){return u(this,Pt)?.continue()??this.execute(this.state.variables)}async execute(t){let n=()=>{T(this,Ue,at).call(this,{type:"continue"})},r={client:u(this,jn),meta:this.options.meta,mutationKey:this.options.mutationKey};b(this,Pt,wr({fn:()=>this.options.mutationFn?this.options.mutationFn(t,r):Promise.reject(new Error("No mutationFn found")),onFail:(o,c)=>{T(this,Ue,at).call(this,{type:"failed",failureCount:o,error:c})},onPause:()=>{T(this,Ue,at).call(this,{type:"pause"})},onContinue:n,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>u(this,ae).canRun(this)}));let s=this.state.status==="pending",i=!u(this,Pt).canStart();try{if(s)n();else{T(this,Ue,at).call(this,{type:"pending",variables:t,isPaused:i}),u(this,ae).config.onMutate&&await u(this,ae).config.onMutate(t,this,r);let c=await this.options.onMutate?.(t,r);c!==this.state.context&&T(this,Ue,at).call(this,{type:"pending",context:c,variables:t,isPaused:i})}let o=await u(this,Pt).start();return await u(this,ae).config.onSuccess?.(o,t,this.state.context,this,r),await this.options.onSuccess?.(o,t,this.state.context,r),await u(this,ae).config.onSettled?.(o,null,this.state.variables,this.state.context,this,r),await this.options.onSettled?.(o,null,t,this.state.context,r),T(this,Ue,at).call(this,{type:"success",data:o}),o}catch(o){try{await u(this,ae).config.onError?.(o,t,this.state.context,this,r)}catch(c){Promise.reject(c)}try{await this.options.onError?.(o,t,this.state.context,r)}catch(c){Promise.reject(c)}try{await u(this,ae).config.onSettled?.(void 0,o,this.state.variables,this.state.context,this,r)}catch(c){Promise.reject(c)}try{await this.options.onSettled?.(void 0,o,t,this.state.context,r)}catch(c){Promise.reject(c)}throw T(this,Ue,at).call(this,{type:"error",error:o}),o}finally{u(this,ae).runNext(this)}}},jn=new WeakMap,De=new WeakMap,ae=new WeakMap,Pt=new WeakMap,Ue=new WeakSet,at=function(t){let n=r=>{switch(t.type){case"failed":return{...r,failureCount:t.failureCount,failureReason:t.error};case"pause":return{...r,isPaused:!0};case"continue":return{...r,isPaused:!1};case"pending":return{...r,context:t.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:t.isPaused,status:"pending",variables:t.variables,submittedAt:Date.now()};case"success":return{...r,data:t.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:!1};case"error":return{...r,data:void 0,error:t.error,failureCount:r.failureCount+1,failureReason:t.error,isPaused:!1,status:"error"}}};this.state=n(this.state),L.batch(()=>{u(this,De).forEach(r=>{r.onMutationUpdate(t)}),u(this,ae).notify({mutation:this,type:"updated",action:t})})},to);function Ds(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var $e,ke,Wn,ro,so=(ro=class extends Re{constructor(t={}){super();w(this,$e);w(this,ke);w(this,Wn);this.config=t,b(this,$e,new Set),b(this,ke,new Map),b(this,Wn,0)}build(t,n,r){let s=new no({client:t,mutationCache:this,mutationId:++Mn(this,Wn)._,options:t.defaultMutationOptions(n),state:r});return this.add(s),s}add(t){u(this,$e).add(t);let n=Rr(t);if(typeof n=="string"){let r=u(this,ke).get(n);r?r.push(t):u(this,ke).set(n,[t])}this.notify({type:"added",mutation:t})}remove(t){if(u(this,$e).delete(t)){let n=Rr(t);if(typeof n=="string"){let r=u(this,ke).get(n);if(r)if(r.length>1){let s=r.indexOf(t);s!==-1&&r.splice(s,1)}else r[0]===t&&u(this,ke).delete(n)}}this.notify({type:"removed",mutation:t})}canRun(t){let n=Rr(t);if(typeof n=="string"){let s=u(this,ke).get(n)?.find(i=>i.state.status==="pending");return!s||s===t}else return!0}runNext(t){let n=Rr(t);return typeof n=="string"?u(this,ke).get(n)?.find(s=>s!==t&&s.state.isPaused)?.continue()??Promise.resolve():Promise.resolve()}clear(){L.batch(()=>{u(this,$e).forEach(t=>{this.notify({type:"removed",mutation:t})}),u(this,$e).clear(),u(this,ke).clear()})}getAll(){return Array.from(u(this,$e))}find(t){let n={exact:!0,...t};return this.getAll().find(r=>_r(n,r))}findAll(t={}){return this.getAll().filter(n=>_r(t,n))}notify(t){L.batch(()=>{this.listeners.forEach(n=>{n(t)})})}resumePausedMutations(){let t=this.getAll().filter(n=>n.state.isPaused);return L.batch(()=>Promise.all(t.map(n=>n.continue().catch(G))))}},$e=new WeakMap,ke=new WeakMap,Wn=new WeakMap,ro);function Rr(e){return e.options.scope?.id}var Ve,ct,he,He,Ge,Cr,Us,io,Ns=(io=class extends Re{constructor(t,n){super();w(this,Ge);w(this,Ve);w(this,ct);w(this,he);w(this,He);b(this,Ve,t),this.setOptions(n),this.bindMethods(),T(this,Ge,Cr).call(this)}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(t){let n=this.options;this.options=u(this,Ve).defaultMutationOptions(t),Nt(this.options,n)||u(this,Ve).getMutationCache().notify({type:"observerOptionsUpdated",mutation:u(this,he),observer:this}),n?.mutationKey&&this.options.mutationKey&&qe(n.mutationKey)!==qe(this.options.mutationKey)?this.reset():u(this,he)?.state.status==="pending"&&u(this,he).setOptions(this.options)}onUnsubscribe(){this.hasListeners()||u(this,he)?.removeObserver(this)}onMutationUpdate(t){T(this,Ge,Cr).call(this),T(this,Ge,Us).call(this,t)}getCurrentResult(){return u(this,ct)}reset(){u(this,he)?.removeObserver(this),b(this,he,void 0),T(this,Ge,Cr).call(this),T(this,Ge,Us).call(this)}mutate(t,n){return b(this,He,n),u(this,he)?.removeObserver(this),b(this,he,u(this,Ve).getMutationCache().build(u(this,Ve),this.options)),u(this,he).addObserver(this),u(this,he).execute(t)}},Ve=new WeakMap,ct=new WeakMap,he=new WeakMap,He=new WeakMap,Ge=new WeakSet,Cr=function(){let t=u(this,he)?.state??Ds();b(this,ct,{...t,isPending:t.status==="pending",isSuccess:t.status==="success",isError:t.status==="error",isIdle:t.status==="idle",mutate:this.mutate,reset:this.reset})},Us=function(t){L.batch(()=>{if(u(this,He)&&this.hasListeners()){let n=u(this,ct).variables,r=u(this,ct).context,s={client:u(this,Ve),meta:this.options.meta,mutationKey:this.options.mutationKey};if(t?.type==="success"){try{u(this,He).onSuccess?.(t.data,n,r,s)}catch(i){Promise.reject(i)}try{u(this,He).onSettled?.(t.data,null,n,r,s)}catch(i){Promise.reject(i)}}else if(t?.type==="error"){try{u(this,He).onError?.(t.error,n,r,s)}catch(i){Promise.reject(i)}try{u(this,He).onSettled?.(void 0,t.error,n,r,s)}catch(i){Promise.reject(i)}}}this.listeners.forEach(n=>{n(u(this,ct))})})},io);var Ne,oo,ao=(oo=class extends Re{constructor(t={}){super();w(this,Ne);this.config=t,b(this,Ne,new Map)}build(t,n,r){let s=n.queryKey,i=n.queryHash??Fn(s,n),o=this.get(i);return o||(o=new Vi({client:t,queryKey:s,queryHash:i,options:t.defaultQueryOptions(n),state:r,defaultOptions:t.getQueryDefaults(s)}),this.add(o)),o}add(t){u(this,Ne).has(t.queryHash)||(u(this,Ne).set(t.queryHash,t),this.notify({type:"added",query:t}))}remove(t){let n=u(this,Ne).get(t.queryHash);n&&(t.destroy(),n===t&&u(this,Ne).delete(t.queryHash),this.notify({type:"removed",query:t}))}clear(){L.batch(()=>{this.getAll().forEach(t=>{this.remove(t)})})}get(t){return u(this,Ne).get(t)}getAll(){return[...u(this,Ne).values()]}find(t){let n={exact:!0,...t};return this.getAll().find(r=>yr(n,r))}findAll(t={}){let n=this.getAll();return Object.keys(t).length>0?n.filter(r=>yr(t,r)):n}notify(t){L.batch(()=>{this.listeners.forEach(n=>{n(t)})})}onFocus(){L.batch(()=>{this.getAll().forEach(t=>{t.onFocus()})})}onOnline(){L.batch(()=>{this.getAll().forEach(t=>{t.onOnline()})})}},Ne=new WeakMap,oo);var z,ut,lt,Yt,Xt,dt,Zt,en,co,Ks=(co=class{constructor(e={}){w(this,z);w(this,ut);w(this,lt);w(this,Yt);w(this,Xt);w(this,dt);w(this,Zt);w(this,en);b(this,z,e.queryCache||new ao),b(this,ut,e.mutationCache||new so),b(this,lt,e.defaultOptions||{}),b(this,Yt,new Map),b(this,Xt,new Map),b(this,dt,0)}mount(){Mn(this,dt)._++,u(this,dt)===1&&(b(this,Zt,Ut.subscribe(async e=>{e&&(await this.resumePausedMutations(),u(this,z).onFocus())})),b(this,en,Bt.subscribe(async e=>{e&&(await this.resumePausedMutations(),u(this,z).onOnline())})))}unmount(){var e,t;Mn(this,dt)._--,u(this,dt)===0&&((e=u(this,Zt))==null||e.call(this),b(this,Zt,void 0),(t=u(this,en))==null||t.call(this),b(this,en,void 0))}isFetching(e){return u(this,z).findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return u(this,ut).findAll({...e,status:"pending"}).length}getQueryData(e){let t=this.defaultQueryOptions({queryKey:e});return u(this,z).get(t.queryHash)?.state.data}ensureQueryData(e){let t=this.defaultQueryOptions(e),n=u(this,z).build(this,t),r=n.state.data;return r===void 0?this.fetchQuery(e):(e.revalidateIfStale&&n.isStaleByTime(Ae(t.staleTime,n))&&this.prefetchQuery(t),Promise.resolve(r))}getQueriesData(e){return u(this,z).findAll(e).map(({queryKey:t,state:n})=>{let r=n.data;return[t,r]})}setQueryData(e,t,n){let r=this.defaultQueryOptions({queryKey:e}),i=u(this,z).get(r.queryHash)?.state.data,o=qi(t,i);if(o!==void 0)return u(this,z).build(this,r).setData(o,{...n,manual:!0})}setQueriesData(e,t,n){return L.batch(()=>u(this,z).findAll(e).map(({queryKey:r})=>[r,this.setQueryData(r,t,n)]))}getQueryState(e){let t=this.defaultQueryOptions({queryKey:e});return u(this,z).get(t.queryHash)?.state}removeQueries(e){let t=u(this,z);L.batch(()=>{t.findAll(e).forEach(n=>{t.remove(n)})})}resetQueries(e,t){let n=u(this,z);return L.batch(()=>(n.findAll(e).forEach(r=>{r.reset()}),this.refetchQueries({type:"active",...e},t)))}cancelQueries(e,t={}){let n={revert:!0,...t},r=L.batch(()=>u(this,z).findAll(e).map(s=>s.cancel(n)));return Promise.all(r).then(G).catch(G)}invalidateQueries(e,t={}){return L.batch(()=>(u(this,z).findAll(e).forEach(n=>{n.invalidate()}),e?.refetchType==="none"?Promise.resolve():this.refetchQueries({...e,type:e?.refetchType??e?.type??"active"},t)))}refetchQueries(e,t={}){let n={...t,cancelRefetch:t.cancelRefetch??!0},r=L.batch(()=>u(this,z).findAll(e).filter(s=>!s.isDisabled()&&!s.isStatic()).map(s=>{let i=s.fetch(void 0,n);return n.throwOnError||(i=i.catch(G)),s.state.fetchStatus==="paused"?Promise.resolve():i}));return Promise.all(r).then(G)}fetchQuery(e){let t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);let n=u(this,z).build(this,t);return n.isStaleByTime(Ae(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(G).catch(G)}fetchInfiniteQuery(e){return e.behavior=Jt(e.pages),this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(G).catch(G)}ensureInfiniteQueryData(e){return e.behavior=Jt(e.pages),this.ensureQueryData(e)}resumePausedMutations(){return Bt.isOnline()?u(this,ut).resumePausedMutations():Promise.resolve()}getQueryCache(){return u(this,z)}getMutationCache(){return u(this,ut)}getDefaultOptions(){return u(this,lt)}setDefaultOptions(e){b(this,lt,e)}setQueryDefaults(e,t){u(this,Yt).set(qe(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){let t=[...u(this,Yt).values()],n={};return t.forEach(r=>{_t(e,r.queryKey)&&Object.assign(n,r.defaultOptions)}),n}setMutationDefaults(e,t){u(this,Xt).set(qe(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){let t=[...u(this,Xt).values()],n={};return t.forEach(r=>{_t(e,r.mutationKey)&&Object.assign(n,r.defaultOptions)}),n}defaultQueryOptions(e){if(e._defaulted)return e;let t={...u(this,lt).queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=Fn(t.queryKey,t)),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!=="always"),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),t.queryFn===Kt&&(t.enabled=!1),t}defaultMutationOptions(e){return e?._defaulted?e:{...u(this,lt).mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){u(this,z).clear(),u(this,ut).clear()}},z=new WeakMap,ut=new WeakMap,lt=new WeakMap,Yt=new WeakMap,Xt=new WeakMap,dt=new WeakMap,Zt=new WeakMap,en=new WeakMap,co);var tn=X(oe(),1),lo=X(xr(),1),Ls=tn.createContext(void 0),W=e=>{let t=tn.useContext(Ls);if(e)return e;if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t},Bn=({client:e,children:t})=>(tn.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),(0,lo.jsx)(Ls.Provider,{value:e,children:t}));var Pr=X(oe(),1),fo=Pr.createContext(!1),po=()=>Pr.useContext(fo),$f=fo.Provider;var $n=X(oe(),1),Lu=X(xr(),1);function ju(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var Wu=$n.createContext(ju()),mo=()=>$n.useContext(Wu);var ho=X(oe(),1);var go=(e,t,n)=>{let r=n?.state.error&&typeof e.throwOnError=="function"?Lt(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||r)&&(t.isReset()||(e.retryOnMount=!1))},yo=e=>{ho.useEffect(()=>{e.clearReset()},[e])},_o=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:s})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(s&&e.data===void 0||Lt(n,[e.error,r]));var vo=e=>{if(e.suspense){let n=s=>s==="static"?s:Math.max(s??1e3,1e3),r=e.staleTime;e.staleTime=typeof r=="function"?(...s)=>n(r(...s)):n(r),typeof e.gcTime=="number"&&(e.gcTime=Math.max(e.gcTime,1e3))}},bo=(e,t)=>e.isLoading&&e.isFetching&&!t,wo=(e,t)=>e?.suspense&&t.isPending,js=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});var ft=X(oe(),1);function Tr(e,t,n){let r=po(),s=mo(),i=W(n),o=i.defaultQueryOptions(e);i.getDefaultOptions().queries?._experimental_beforeQuery?.(o);let c=i.getQueryCache().get(o.queryHash);o._optimisticResults=r?"isRestoring":"optimistic",vo(o),go(o,s,c),yo(s);let a=!i.getQueryCache().get(o.queryHash),[l]=ft.useState(()=>new t(i,o)),d=l.getOptimisticResult(o),p=!r&&e.subscribed!==!1;if(ft.useSyncExternalStore(ft.useCallback(m=>{let f=p?l.subscribe(L.batchCalls(m)):G;return l.updateResult(),f},[l,p]),()=>l.getCurrentResult(),()=>l.getCurrentResult()),ft.useEffect(()=>{l.setOptions(o)},[o,l]),wo(o,d))throw js(o,l,s);if(_o({result:d,errorResetBoundary:s,throwOnError:o.throwOnError,query:c,suspense:o.suspense}))throw d.error;return i.getDefaultOptions().queries?._experimental_afterQuery?.(o,d),o.experimental_prefetchInRender&&!Qe.isServer()&&bo(d,r)&&(a?js(o,l,s):c?.promise)?.catch(G).finally(()=>{l.updateResult()}),o.notifyOnChangeProps?d:l.trackResult(d)}function j(e,t){return Tr(e,Ln,t)}var ze=X(oe(),1);function de(e,t){let n=W(t),[r]=ze.useState(()=>new Ns(n,e));ze.useEffect(()=>{r.setOptions(e)},[r,e]);let s=ze.useSyncExternalStore(ze.useCallback(o=>r.subscribe(L.batchCalls(o)),[r]),()=>r.getCurrentResult(),()=>r.getCurrentResult()),i=ze.useCallback((o,c)=>{r.mutate(o,c).catch(G)},[r]);if(s.error&&Lt(r.options.throwOnError,[s.error]))throw s.error;return{...s,mutate:i,mutateAsync:s.mutate}}function Vn(e,t){return Tr(e,Qs,t)}var Co=X(Ro(),1),Hn=typeof window<"u"&&window.__FSAOS_CONFIG__||{},Gn=Array.isArray(Hn.sources)?Hn.sources:[],Bu=Hn.supabaseUrl||"https://vahbmsslxuustnlvsrkg.supabase.co",$u=Hn.supabaseAnonKey||"sb_publishable_ZjosozAjfpZ4InMNElTr6Q_hHB-f5nc",xe=Hn.gatewayUrl||"https://fsaos-mcp-gw-rust.fly.dev",B=(0,Co.createClient)(Bu,$u,{auth:{persistSession:!0,autoRefreshToken:!0,detectSessionInUrl:!1}});var zn=null,Er=0,xo,$s,Ir=!1;xo=new Promise(e=>{$s=e});B.auth.onAuthStateChange((e,t)=>{t?.access_token?(zn=t.access_token,Er=t.expires_at??Math.floor(Date.now()/1e3)+3600):(zn=null,Er=0),Ir||(Ir=!0,$s())});setTimeout(()=>{Ir||(Ir=!0,$s())},5e3);function Po(e,t){zn=e,Er=t??Math.floor(Date.now()/1e3)+3600}function Vs(){zn=null,Er=0}async function Je(){let e=typeof window<"u"&&window.__FSAOS_CONFIG__||{};if(e.embedToken){if(typeof e.embedToken=="function")try{return await e.embedToken()??null}catch{return null}return e.embedToken}return await xo,zn}var on=null,an=null,To=0,Ws=new Set,Hs,Jn,cn=!1;Hs=new Promise(e=>{Jn=e});function Gs(){To++,Ws.forEach(e=>{try{e()}catch(t){console.warn("[SDK] Anchor listener error:",t)}})}function kr(e){let t=typeof e=="string"?e:e.path,n=on!==t||an?.id!==(typeof e=="string"?void 0:e.id);on=t,an=typeof e=="string"?null:e,typeof e!="string"&&!Tt.some(r=>r.id===e.id)&&(Tt=[...Tt,e],Xs()),cn||(cn=!0,Jn()),n&&Gs()}function un(){return on}function ge(){return an}function zs(){return To}function Js(e){return Ws.add(e),()=>{Ws.delete(e)}}function Yn(){return Hs}function Ys(){return cn}var Ar=null;function Et(e,t={}){if(Ar){console.warn("[SDK] electHomeAnchor called twice; ignoring (logout to re-elect).");return}Ar=e,t.activate!==!1&&kr(e)}function fe(){return Ar}var Tt=[],Bs=new Set,Eo=0;function Xs(){Eo++,Bs.forEach(e=>{try{e()}catch(t){console.warn("[SDK] Mount listener error:",t)}})}function Pe(){return Tt}function Xn(){return Eo}function Mr(e){return Bs.add(e),()=>{Bs.delete(e)}}function Io(e,t){let n=JSON.stringify(Tt)!==JSON.stringify(e),r=on!==t.path||an?.id!==t.id;Tt=e,on=t.path,an=t,cn||(cn=!0,Jn()),n&&Xs(),r&&Gs()}var rn=null,nn=null,sn=0;function se(){return sn}async function pt(){if(rn)return rn;if(nn)return nn;let e=sn;return nn=(async()=>{let t=At(),n=await Je();if(e!==sn)throw new Error("Session changed during initialization");let r={};n&&(r.Authorization=`Bearer ${n}`);let s=await fetch(`${xe}/d/${t}/init`,{method:"GET",headers:r});if(!s.ok)throw new Error(`Session init failed: ${s.status} ${s.statusText}`);let i=await s.json();if(e!==sn)throw new Error("Session changed during initialization");let o=i.entry||i;return rn={scope_id:o.scope_id,scope_path:o.scope_path,instance_path:o.instance_path||"/root",fractal_id:o.fractal_id||null,instance_name:o.instance_name||null,display_name:o.scope_display_name||o.display_name||null,principal_id:o.principal_id||null},rn})().catch(t=>{throw e===sn&&(nn=null),t}),nn}function It(){return rn}function Zs(){sn++,rn=null,nn=null,on=null,an=null,Ar=null,Tt=[]}var Ao=[];function ie(e){Ao.push(e)}function ln(){Zs(),Vs(),Jn(),cn=!1,Hs=new Promise(e=>{Jn=e}),Gs(),Xs();for(let e of Ao)try{e()}catch(t){console.warn("[SDK] Cleanup function failed:",t)}}function At(){if(typeof window<"u"){let e=window.__FSAOS_CONFIG__;return e?.hostname?e.hostname:window.location.hostname}return"localhost"}var ko=kr,H=un,Z=zs,be=Js,Mo=Yn,Or=Ys;var ei=0,Oo=!1,Fo=0;function qo(e){if(typeof e!="string")return;let t=Date.parse(e);Number.isNaN(t)||(ei=t-Date.now(),Oo=!0,Fo=Date.now())}function Fr(){return Date.now()+ei}function Qo(){return Oo}function Do(){return ei}function Uo(){return Fo}function No(e){if(typeof e!="string")return null;let t=Date.parse(e);return Number.isNaN(t)?null:Fr()>=t}function Ko(e){if(typeof e!="string")return null;let t=Date.parse(e);return Number.isNaN(t)?null:Math.max(0,t-Fr())}var Vu=new Set(["list-memberships","init"]),Te=class extends Error{constructor(n){let r=typeof n.payload?.error=="string"?n.payload.error.trim():"",s=typeof n.payload?.message=="string"?n.payload.message.trim():"",i=n.responseBody.trim()||`Gateway HTTP error: ${n.status} ${n.statusText}`.trim(),o=r&&s?`${r}: ${s}`:s||r||i;super(o);ee(this,"name","GatewayRequestError");ee(this,"method");ee(this,"status");ee(this,"statusText");ee(this,"payload");ee(this,"responseBody");this.method=n.method,this.status=n.status,this.statusText=n.statusText,this.payload=n.payload,this.responseBody=n.responseBody}};async function S(e,t={}){let n=se(),r=un(),s=At(),i=`${xe}/d/${s}`,o={"Content-Type":"application/json"},c=await Je();if(n!==se())throw new Error("Session changed before gateway request");if(c&&(o.Authorization=`Bearer ${c}`),!Vu.has(e)&&!t._scope_path&&await Yn(),n!==se())throw new Error("Session changed before gateway request");let a={...t},l=It();!a.domain_scope_id&&l?.scope_id&&(a.domain_scope_id=l.scope_id);let d=r??un();!a._scope_path&&d&&(a._scope_path=d);let p=await fetch(i,{method:"POST",headers:o,body:JSON.stringify({method:e,params:a})}),m=await p.text();if(n!==se())throw new Error("Session changed during gateway request");let f=null;if(m)try{f=JSON.parse(m)}catch{}if(!p.ok||!f)throw new Te({method:e,status:p.status,statusText:p.statusText,payload:f,responseBody:m});if(f.success===!1){let y=f.error||"",h=f.denied_by||f.error_type||"";throw h==="rule"||h==="access"||h==="entitlement"||y==="RULE_DENIED"||y==="ACCESS_DENIED"||y==="PERMISSION_DENIED"||y==="ENTITLEMENT_REQUIRED"?new tt(f):new Te({method:e,status:p.status,statusText:p.statusText,payload:f,responseBody:m})}return f&&f.server_now!==void 0&&qo(f.server_now),f}var _=X(oe(),1),hl=X(jo(),1),gl=X(xr(),1);var Wo=new WeakMap;function Ee(e,t,n={}){let r=n.exact===!0,s=()=>e.invalidateQueries({queryKey:t,exact:r},{cancelRefetch:!1}),i=e.getQueryCache().findAll({queryKey:t,exact:r,fetchStatus:"fetching"}).flatMap(p=>p.promise?[p.promise]:[]);if(i.length===0)return s();let o=`${r?"=":"^"}${JSON.stringify(t)}`,c=Wo.get(e);c||(c=new Map,Wo.set(e,c));let a=c.get(o);if(a)return a;let l=c,d=Promise.allSettled(i).then(()=>(l.delete(o),s()));return l.set(o,d),d}function Ke(e,t){return typeof e=="string"&&(e===t||e.startsWith(`${t}/`))}var qr=new WeakMap,Bo=e=>e.meta?.arrangementRealtime===!0;function Ye(e,t){let n=e.getQueryCache().find({queryKey:t,exact:!0});if(!n)return;let r=qr.get(e);r||(r=new Map,qr.set(e,r));let s=r.get(n.queryHash);s&&clearTimeout(s),r.set(n.queryHash,setTimeout(()=>{r.delete(n.queryHash),e.getQueryCache().get(n.queryHash)===n&&Ee(e,t,{exact:!0})},250))}function $o(e,t){if(!(!t||typeof t!="object"))for(let n of e.getQueryCache().getAll()){if(!Bo(n))continue;let r=n.state.data;if(n.meta?.personalSections===!0){(r?.item_path&&[t.path,t.old_path].some(i=>typeof i=="string"&&(i===r.item_path||i.startsWith(r.item_path+"/")))||r?.sections?.some(i=>i.entries?.some(o=>o.target?.id===t.item_id))||!r?.item_id&&t.item_type==="item_arrangement"&&t.name==="sidebar-sections")&&Ye(e,n.queryKey);continue}if(!r?.item_id)continue;let s=(i,o)=>!!(i&&t.item_id===i||o&&(t.path===o||t.old_path===o));(s(r.item_id,r.item_path)||t.parent_id===r.item_id||t.old_parent_id===r.item_id||[t.path,t.old_path].some(i=>typeof i=="string"&&i.slice(0,i.lastIndexOf("/"))===r.item_path)||r.resolved_children?.some(i=>s(i.id,i.symlink_path||i.path)||i.target&&s(i.target.id,i.target.path)))&&Ye(e,n.queryKey)}}function Vo(e){for(let t of e.getQueryCache().getAll())Bo(t)&&t.state.data!==void 0&&Ye(e,t.queryKey)}function Ho(e){qr.get(e)?.forEach(clearTimeout),qr.delete(e)}var Xe=null;ie(()=>{Xe&&(Xe.cancelQueries({queryKey:["vfs"]}),Xe.removeQueries({queryKey:["vfs"]}))});function Go(e){if(Xe&&Xe!==e)throw new Error("[fsaos-gateway-sdk] setQueryClient() called after a QueryClient was already in use. Inject the host client before rendering or starting realtime subscriptions.");Xe=e}function P(){return Xe||(Xe=new Ks({defaultOptions:{queries:{staleTime:1e3*60*2,gcTime:1e3*60*10,refetchOnWindowFocus:!1,retry:1}}})),Xe}var zo=new Proxy({},{get(e,t,n){let r=P(),s=r[t];return typeof s=="function"?s.bind(r):s}});var Qr=new WeakMap;function ti(e){return e.meta?.infiniteItemsRealtime?.filter}function Hu(e,t){return e.state.data?.pages?.some(r=>r.items?.some(s=>t.item_id&&s.id===t.item_id||t.path&&s.path===t.path||t.old_path&&s.path===t.old_path))??!1}function Gu(e){if(e.type)return new Set([e.type]);if(!e.any_of?.length)return null;let t=new Set;for(let n of e.any_of){if(!n.item_type)return null;t.add(n.item_type)}return t}function zu(e,t,n){if(Hu(e,n))return!0;if(t.spaceIds!==void 0&&(!t.spaceIds.length||n.space_item_id!==void 0&&!t.spaceIds.includes(n.space_item_id)&&!t.spaceIds.includes(n.old_space_item_id)))return!1;let r=t.scope,s=typeof r=="string"&&r!=="__unscoped__",i=typeof n.path=="string"||typeof n.old_path=="string";if(s&&i&&!Ke(n.path,r)&&!Ke(n.old_path,r))return!1;if(n.item_type==="symlink"&&s&&i)return!0;let o=Gu(t);return n.item_type&&o&&!o.has(n.item_type)||t.parent_id&&n.parent_id!==void 0&&n.parent_id!==t.parent_id&&n.old_parent_id!==t.parent_id?!1:i||!!(t.parent_id&&n.parent_id===t.parent_id)}function Jo(e,t){let n=Qr.get(e);n||(n=new Map,Qr.set(e,n));let r=n.get(t.queryHash);r&&clearTimeout(r),n.set(t.queryHash,setTimeout(()=>{n.delete(t.queryHash),!(e.getQueryCache().get(t.queryHash)!==t||!ti(t))&&Ee(e,t.queryKey,{exact:!0})},500))}function Yo(e,t){if(!(!t||typeof t!="object"))for(let n of e.getQueryCache().getAll()){let r=ti(n);r&&zu(n,r,t)&&Jo(e,n)}}function Xo(e){for(let t of e.getQueryCache().getAll())ti(t)&&t.state.data!==void 0&&Jo(e,t)}function Zo(e){Qr.get(e)?.forEach(clearTimeout),Qr.delete(e)}var Dr=class extends Error{constructor(){super("The server did not confirm the selected-Space listing contract")}};function ea(e,t){if(!Array.isArray(t)||t.some(n=>typeof n!="string")||JSON.stringify([...new Set(t)].sort())!==JSON.stringify(e))throw new Dr}function kt(e){return!e||e.spaceIds===void 0?e:{...e,spaceIds:[...new Set(e.spaceIds.map(t=>t.toLowerCase()))].sort(),...e.limit!==void 0?{limit:Math.max(1,Math.min(e.limit,500))}:{}}}function dn(e){return e instanceof Dr||e instanceof tt||e instanceof Te&&(e.payload?.error==="SPACE_SELECTION_UNAVAILABLE"||e.payload?.error==="QUERY_PARAMS_INVALID"||e.status===401||e.status===403)}function ne(){return H()??"__unscoped__"}var R={all:()=>["vfs",ne()],item:e=>["vfs",ne(),"item",e],itemById:e=>["vfs","item-by-id",e],children:e=>["vfs",ne(),"children",e],allChildren:()=>["vfs",ne(),"children"],types:e=>["vfs","types",e??"default"],edges:e=>["vfs","edges",e],search:(e,t)=>["vfs",ne(),"search",e,...t??[]],items:(e,t)=>["vfs",ne(),"items",e,JSON.stringify(kt(t??{}))],allItems:()=>["vfs",ne(),"items"],tree:(e,t)=>["vfs",ne(),"tree",e,t??1],openEnvelope:(e,t)=>["vfs",ne(),"open",e,t??"__default__"],allOpenEnvelopes:()=>["vfs",ne(),"open"],memberFocus:e=>["vfs","member-focus",e],fractalInstances:()=>["vfs","fractal-instances"],recentActivity:(e,t,n)=>["vfs",ne(),"get-activity-feed",e,t,n],itemVersions:(e,t,n,r)=>["vfs","item-versions",e,t,n,r],itemHistory:(e,t,n)=>["vfs","item-history",e,t,n],channelMessages:(e,t)=>["vfs",ne(),"channel-messages",e,t??"__top__"],allChannelMessages:()=>["vfs",ne(),"channel-messages"],channels:e=>["vfs",ne(),"channels",e??"all"],allChannels:()=>["vfs",ne(),"channels"],notifications:(e,t)=>["vfs",ne(),"notifications",e??"all",t??200],allNotifications:()=>["vfs",ne(),"notifications"],unreadCounts:()=>["vfs",ne(),"unread-counts"],memberships:e=>["memberships",e]};var Ju=typeof window<"u"&&(window.location?.hostname==="localhost"||window.location?.hostname==="127.0.0.1"||window.__FSAOS_WS_DEBUG__);function J(...e){Ju&&console.log("[WS]",...e)}var A=null,fn=null,mn=null,Zn=0,Yu=3e4,ta=1e4,gn=!1,na=!1,aa=3e4,Xu=aa*2+5e3,Ur=0,Nr=null,ra=!1;function Zu(){tr(),Ur=Date.now(),Nr=setInterval(()=>{if(A&&A.readyState===WebSocket.OPEN&&Date.now()-Ur>Xu){J("ping: no inbound traffic for",Date.now()-Ur,"ms \u2014 closing half-open socket");try{A.close(4e3,"liveness timeout")}catch{}return}et({type:"ping"})},aa)}function tr(){Nr&&(clearInterval(Nr),Nr=null)}function el(){typeof document>"u"||(document.hidden?tr():er()&&(J("Tab visible, reconnecting..."),Mt()))}function tl(){ra||typeof document>"u"||(document.addEventListener("visibilitychange",el),ra=!0)}var we={};function ri(e,t){let n=e.replace(/\/+$/,""),r=t.replace(/\/+$/,"");return!n||!r?n===r:r===n||r.startsWith(`${n}/`)}var hn=[],Ze=new Map,pn=new Map,Ie=new Map;function nl(e){let t=pn.get(e);return t?Array.from(new Set(Array.from(t.values()).flatMap(n=>n.event_types))).sort():[]}function sa(e,t){return e?e.length===t.length&&e.every((n,r)=>n===t[r]):!1}function ia(e){let t=nl(e);if(t.length===0)return Ze.delete(e),null;let n={scope_id:e,event_types:t};return Ze.set(e,n),n}var Le=new Map,mt=new Map,ni="disconnected",Kr=[];function Lr(e){if(ni!==e){ni=e;for(let t of[...Kr])try{t(e)}catch{}}}function rl(e){Le.set(e,"ready");let t=mt.get(e);if(t){mt.delete(e);for(let n of t)n()}}function sl(){for(let e of Le.keys())Le.set(e,"disconnected")}function si(e,t){Le.set(e,"pending"),et({type:"subscribe_path",path:e,event_types:t})}function il(){return Object.keys(we).some(t=>we[t]&&we[t].length>0)||hn.length>0}function er(){return Ze.size>0||Ie.size>0}async function Mt(){if(!er()){J("ensureConnection: no active subscriptions, skipping");return}if(A&&A.readyState===WebSocket.OPEN){J("ensureConnection: already open");return}if(fn)return J("ensureConnection: connection already in flight, waiting..."),fn;if(A){J("ensureConnection: killing stale WS in state",A.readyState);try{A.close()}catch{}A=null}return gn=!1,fn=(async()=>{try{let e=typeof window<"u"&&window.__FSAOS_CONFIG__||{},t=xe,n=await Je();if(!n){J("ensureConnection: no token available, will retry"),oa();return}let r=t.startsWith("https")?"wss":"ws",s=t.replace(/^https?:\/\//,""),i=`${r}://${s}/ws`;i+=`?token=${encodeURIComponent(n)}`,J("ensureConnection: opening WS to",i.substring(0,50)+"..."),Lr("connecting"),A=new WebSocket(i);let o=A;await new Promise((c,a)=>{if(!A)return a(new Error("WebSocket not created"));let l=setTimeout(()=>{if(A===o){if(J("ensureConnection: TIMEOUT after",ta,"ms"),A&&A.readyState!==WebSocket.OPEN){try{A.close()}catch{}A=null}a(new Error("WebSocket connection timeout"))}},ta);o.onopen=()=>{if(A!==o)return;clearTimeout(l),J("ensureConnection: CONNECTED");let d=na;na=!0,Zn=0,Lr("connected"),ol(d),(typeof document>"u"||!document.hidden)&&Zu(),tl(),c()},o.onmessage=d=>{A===o&&al(d.data)},o.onerror=()=>{J("ensureConnection: WS error event")},o.onclose=d=>{clearTimeout(l),A===o&&(J("ensureConnection: WS closed, code:",d.code,"reason:",d.reason),A=null,tr(),sl(),Lr("disconnected"),!gn&&er()&&oa(),a(new Error(`WebSocket closed: ${d.code}`)))}})}catch(e){J("ensureConnection: failed -",e?.message||e)}finally{fn=null}})(),fn}function oa(){if(mn||typeof document<"u"&&document.hidden)return;let e=Math.min(1e3*Math.pow(2,Zn)+Math.random()*1e3,Yu);Zn++,J("scheduleReconnect: attempt",Zn,"in",Math.round(e),"ms"),mn=setTimeout(()=>{mn=null,er()&&Mt()},e)}function ol(e=!1){for(let t of Ze.values())J("resubscribeAll: scope",t.scope_id),et({type:"subscribe",scope_id:t.scope_id,event_types:t.event_types});for(let t of Ie.values())J("resubscribeAll: path",t.path),si(t.path,t.event_types);if(e)try{let t=P();Xo(t),Vo(t);for(let n of Ie.values())t.invalidateQueries({queryKey:R.item(n.path)}),t.invalidateQueries({queryKey:R.children(n.path)});J("resubscribeAll: invalidated",Ie.size,"paths after reconnect")}catch(t){J("resubscribeAll: cache invalidation skipped",t)}}function et(e){A&&A.readyState===WebSocket.OPEN&&A.send(JSON.stringify(e))}function al(e){Ur=Date.now();try{let t=JSON.parse(e);if(t.type==="subscribed_path"){typeof t.path=="string"&&rl(t.path);return}if(t.type==="subscribed"||t.type==="unsubscribed"||t.type==="unsubscribed_path"||t.type==="pong")return;if(t.type==="error"){console.warn("[WS] Server error:",t.message);return}if(t.type==="event"||t.event_type){let n=t.event_type||"message",r=t.data||t;if(n==="vfs_change"&&(Yo(P(),r),$o(P(),r)),typeof r.path=="string")for(let[s,i]of Object.entries(we))s!=="*"&&ri(s,r.path)&&i.forEach(o=>o(r));we["*"]&&we["*"].forEach(s=>s(r));for(let s of hn)s.eventType!=="*"&&s.eventType!==n||s.filter&&!s.filter(r)||s.callback(r)}}catch{}}function ii(){!il()&&Ze.size===0&&Ie.size===0&&A&&(gn=!0,tr(),A.close(),A=null,gn=!1)}function jr(e,t){return we[e]||(we[e]=[]),we[e].push(t),Ie.has(e)||(Ie.set(e,{path:e,event_types:["token_stream"]}),A&&A.readyState===WebSocket.OPEN?si(e,["token_stream"]):Le.set(e,"pending")),Mt(),()=>{let n=we[e];if(n){let r=n.indexOf(t);r!==-1&&n.splice(r,1),n.length===0&&(delete we[e],Ie.delete(e),Le.delete(e),mt.delete(e),et({type:"unsubscribe_path",path:e}))}ii()}}function re(e,t,n){let s=(Array.isArray(e)?e:[e]).map(i=>({eventType:i,callback:t,filter:n}));return hn.push(...s),er()&&Mt(),()=>{for(let i of s){let o=hn.indexOf(i);o!==-1&&hn.splice(o,1)}ii()}}function yn(e,t=["vfs_change","ccm_change"]){let n=Symbol(e),r=Array.from(new Set(t)).sort();if(r.length===0)return()=>{};let s=pn.get(e)??new Map,i=Ze.get(e)?.event_types;s.set(n,{event_types:r}),pn.set(e,s);let o=ia(e);if(!o)return()=>{};J("subscribeToScope:",e,o.event_types),A&&A.readyState===WebSocket.OPEN&&!sa(i,o.event_types)&&et({type:"subscribe",scope_id:e,event_types:o.event_types}),Mt();let c=!0;return()=>{if(!c)return;c=!1;let a=pn.get(e);if(!a?.delete(n))return;let l=Ze.get(e)?.event_types;if(a.size===0)pn.delete(e),Ze.delete(e),et({type:"unsubscribe",scope_id:e});else{let d=ia(e);d&&A&&A.readyState===WebSocket.OPEN&&!sa(l,d.event_types)&&et({type:"subscribe",scope_id:e,event_types:d.event_types})}ii()}}function ca(e,t,n={}){et({type:"emit",scope_id:e,event_type:t,payload:n})}function oi(){J("disconnectSSE: tearing down"),Zo(P()),Ho(P()),gn=!0,tr(),A&&(A.close(),A=null),mn&&(clearTimeout(mn),mn=null),fn=null,gn=!1,Zn=0;for(let e of Object.keys(we))delete we[e];hn.length=0,Ze.clear(),pn.clear(),Ie.clear(),Le.clear(),mt.clear(),Lr("disconnected")}function ua(){et({type:"ping"})}function la(e){return Ie.has(e)?Le.get(e)??"pending":"unsubscribed"}function da(e,t=5e3){return Ie.has(e)?Le.get(e)==="ready"&&A&&A.readyState===WebSocket.OPEN?Promise.resolve(!0):(Mt(),new Promise(n=>{let r=!1,s=mt.get(e)??[],i=()=>{r||(r=!0,clearTimeout(o),n(!0))};s.push(i),mt.set(e,s);let o=setTimeout(()=>{if(r)return;r=!0;let c=mt.get(e);if(c){let a=c.indexOf(i);a!==-1&&c.splice(a,1),c.length===0&&mt.delete(e)}n(!1)},t)})):Promise.resolve(!1)}function fa(e){let t=Ie.get(e);if(!t){J("resubscribePath: no active subscription for",e);return}A&&A.readyState===WebSocket.OPEN?(J("resubscribePath: re-sending frame for",e),si(t.path,t.event_types)):(Le.set(e,"pending"),Mt())}function pa(e){Kr.push(e);try{e(ni)}catch{}return()=>{let t=Kr.indexOf(e);t!==-1&&Kr.splice(t,1)}}ie(oi);function ma(){return new Date().toISOString()}function ha(){return crypto.randomUUID?crypto.randomUUID():`${Date.now()}-${Math.random().toString(36).slice(2,11)}`}function ye(e){let t=e.path||e.item_path||"",n=t.split("/");n.pop();let r=n.join("/"),s=e.type_data||{};return s.allowed_parent_types&&!s.accepts&&(s.accepts=s.allowed_parent_types),delete s.allowed_parent_types,{id:e.id||e.item_id||"",name:e.name||e.item_name||"",item_type:e.item_type||"unknown",path:t,parent_path:r,is_active:e.is_active!==!1,has_children:e.has_children??!1,created_at:e.created_at||ma(),updated_at:e.updated_at||ma(),visibility:e.visibility,type_data:s,scope_item_id:e.scope_item_id,fractal_id:e.fractal_id,parent_instance_id:e.parent_instance_id,owner_principal_id:e.owner_principal_id,created_by_principal_id:e.created_by_principal_id,parent_id:e.parent_id,space_item_id:e.space_item_id,account_item_id:e.account_item_id}}function rr(e){return(e.content?.items||e.items||[]).map(ye)}async function Br(e){try{let t=await S("read",{id:e});if(t.item_name||t.item_path){let r=ye(t);return r.path&&P().setQueryData(R.item(r.path),r),r}let n=t.item;if(n){let r=ye(n);return r.path&&P().setQueryData(R.item(r.path),r),r}return null}catch{return null}}async function $r(e){try{let t=await S("read",{path:e});if(t.item_name||t.item_path)return ye(t);let n=t.item;return n?ye(n):null}catch{return null}}async function sr(e){try{let t=await S("list",{path:e,limit:200}),n=rr(t);for(let r of n)P().setQueryData(R.item(r.path),r);return n}catch(t){return console.error(`[gateway] Failed to fetch children of ${e}:`,t),[]}}async function ga(e,t){let{items:n}=await vn({type:"turn_queue_entry",scope:e,parent_id:t,fields:{state:"queued"},sort_by:"created_at",sort_dir:"asc",limit:100});return n.map(r=>{let s=String(r.type_data?.conversation_anchor_item_id??r.type_data?.conversation_root_id??t);return{id:r.id,path:r.path,content:String(r.type_data?.content??""),state:String(r.type_data?.state??"queued"),queue_seq:Number(r.type_data?.queue_seq??0),created_at:r.created_at,conversation_anchor_item_id:s,conversation_root_id:s,client_request_id:typeof r.type_data?.client_request_id=="string"?r.type_data.client_request_id:void 0,promoted_message_id:typeof r.type_data?.promoted_message_id=="string"?r.type_data.promoted_message_id:void 0,promoted_event_id:typeof r.type_data?.promoted_event_id=="string"?r.type_data.promoted_event_id:void 0}}).sort((r,s)=>r.queue_seq-s.queue_seq||r.created_at.localeCompare(s.created_at))}async function Vr(e,t,n){try{let r=await S("list",{path:e,limit:t,offset:n}),s=rr(r);for(let i of s)P().setQueryData(R.item(i.path),i);return{items:s,total_hint:r.total??r.content?.total??s.length}}catch(r){return console.error(`[gateway] Failed to fetch children page of ${e}:`,r),{items:[],total_hint:0}}}async function Hr(e){let n=await S("types-list",e?{scope_id:e}:{}),r=n.content?.items||n.items||[],s=new Map;for(let i of r){let o=i.name,c=i.type_data;!o||!c||s.set(o,{type_key:o,display_name:c.display_name||o,display_name_plural:c.display_name_plural||o+"s",icon:c.icon||"File",color:c.color||"gray",description:c.description||"",input_schema:c.input_schema||{},system_schema:c.system_schema||{},json_schema:c.input_schema||c.json_schema||{},default_data:c.default_data||{},field_defaults:c.field_defaults||{},renderer_config:c.renderer_config||{},is_system:c.is_system??!1,is_active:c.is_active??!0,is_container:c.is_container??!1,is_scope:c.is_scope??!1,render_mode:c.render_mode||"none",placement_mode:c.placement_mode,direct_parent_types:c.direct_parent_types,allowed_parent_types:c.allowed_parent_types,governed_create:c.governed_create,create_method:c.create_method,dedup:c.dedup,edges:c.edges,events:c.events})}return s}async function Gr(e){try{let t=await S("edges",{item_id:e}),n=t.outgoing||[],r=t.incoming||[],s=[];for(let i of n)s.push({id:i.edge_id||ha(),source_item_id:e,target_item_id:i.target_id||"",edge_type:i.edge_type||"",weight:i.weight??1,context:i.context||{},is_active:!0,is_bidirectional:i.is_bidirectional});for(let i of r)s.push({id:i.edge_id||ha(),source_item_id:i.source_id||"",target_item_id:e,edge_type:i.edge_type||"",weight:i.weight??1,context:i.context||{},is_active:!0,is_bidirectional:i.is_bidirectional});return s}catch(t){return console.warn(`[gateway] Failed to fetch edges for ${e}:`,t),[]}}async function zr(e,t=1,n,r){try{let s={path:e,max_depth:t>0?t:999};n?.length&&(s.item_types=n),r&&(s.limit=r);let i=await S("tree",s),o=rr(i);for(let c of o)P().setQueryData(R.item(c.path),c);return o}catch(s){return console.error(`[gateway] Failed to fetch tree at ${e}:`,s),[]}}async function Jr(e,t=50,n=0){try{let r=await S("get-activity-feed",{scope_path:e,limit:t,offset:n});return r.content?.items||r.items||r.entries||[]}catch(r){return console.error(`[gateway] Failed to fetch recent activity for ${e}:`,r),[]}}async function ir(e,t={}){let{limit:n=50,offset:r=0,include_snapshots:s=!1}=t;try{let i=await S("item-versions",{id:e,limit:n,offset:r,include_snapshots:s});return{versions:i.content?.items||i.versions||[],total:i.total??0}}catch(i){return console.error(`[gateway] Failed to fetch item versions for ${e}:`,i),{versions:[],total:0}}}async function Yr(e,t=50,n=0){return ir(e,{limit:t,offset:n})}async function Xr(e,t,n){try{let r={scope_id:e};t?.length&&(r.item_types=t),n&&(r.limit=n);let s=await S("member-focus",r),i=rr(s);for(let o of i)P().setQueryData(R.item(o.path),o);return i}catch(r){return console.error(`[gateway] Failed to fetch member focus for scope ${e}:`,r),[]}}async function Zr(e,t){let n={path:e};t?.mode&&(n.mode=t.mode),t?.strategy&&(n.strategy=t.strategy),t?.arguments&&(n.arguments=t.arguments);let s=await S("open",n);return{item_id:s.item_id,item_path:s.item_path,item_name:s.item_name,item_type:s.item_type,render:s.render,compatible_components:s.compatible_components??[],content:s.content,metadata:s.metadata,instructions:s.instructions}}function _n(e){return!!e&&(!!e.type||Array.isArray(e.any_of)&&e.any_of.length>0)}function cl(e){let t={};e.item_type&&(t.item_type=e.item_type);for(let[n,r]of Object.entries(e.fields??{}))t[`field.${n}`]=String(r);for(let[n,r]of Object.entries(e.field_in??{}))t[`field_in.${n}`]=r.map(String);return t}var ul=["catalog","parent_only","internal"];function ya(e,t={}){if(!e||typeof e!="object")return null;let n=o=>typeof o=="string"||typeof o=="number"||typeof o=="boolean",r=o=>{let c={},a={};for(let[l,d]of Object.entries(o))l.startsWith("field.")&&l.length>6&&n(d)?c[l.slice(6)]=d:l.startsWith("field_in.")&&l.length>9&&Array.isArray(d)&&(a[l.slice(9)]=d.filter(n));return{fields:c,field_in:a}},s={};typeof e.type=="string"&&e.type&&(s.type=e.type),typeof e.sort_by=="string"&&(s.sort_by=e.sort_by),(e.sort_dir==="asc"||e.sort_dir==="desc")&&(s.sort_dir=e.sort_dir),typeof e.name=="string"&&e.name&&(s.name=e.name),typeof e.tag=="string"&&e.tag&&(s.tag=e.tag),typeof e.discovery=="string"&&ul.includes(e.discovery)&&(s.discovery=e.discovery);let i=r(e);if(Object.keys(i.fields).length&&(s.fields=i.fields),Object.keys(i.field_in).length&&(s.field_in=i.field_in),Array.isArray(e.any_of)){let o=[];for(let c of e.any_of){if(!c||typeof c!="object"||Array.isArray(c))continue;let a=c,l={};typeof a.item_type=="string"&&a.item_type&&(l.item_type=a.item_type);let d=r(a);Object.keys(d.fields).length&&(l.fields=d.fields),Object.keys(d.field_in).length&&(l.field_in=d.field_in),Object.keys(l).length&&o.push(l)}o.length&&(s.any_of=o)}return _n(s)?{...s,...t}:null}async function vn(e,t={}){if(e=kt(e),e.spaceIds?.length===0)return{items:[],total_hint:0};let n={};e.type&&(n.item_type=e.type),e.scope&&(n.scope_path=e.scope);let r={};if(e.spaceIds!==void 0&&(r.space_ids=e.spaceIds),e.name&&(r.name=e.name),e.tag&&(r.tag=e.tag),e.parent_id&&(r.parent_id=e.parent_id),e.sort_by&&(r.sort_by=e.sort_by),e.sort_dir&&(r.sort_dir=e.sort_dir),e.offset!=null&&(r.offset=e.offset),e.fields)for(let[s,i]of Object.entries(e.fields))r[`field.${s}`]=String(i);if(e.field_in)for(let[s,i]of Object.entries(e.field_in))r[`field_in.${s}`]=i.map(String);e.discovery&&(r.discovery=e.discovery),e.any_of?.length&&(r.any_of=e.any_of.map(cl)),Object.keys(r).length>0&&(n.filters=r),e.limit!=null&&(n.limit=e.limit);try{let s=await S("query",n);e.spaceIds!==void 0&&ea(e.spaceIds,s.selected_space_ids??s.content?.selected_space_ids);let i=rr(s);for(let o of i)P().setQueryData(R.item(o.path),o);return{items:i,total_hint:s.total??s.content?.total??i.length}}catch(s){if(console.error(`[gateway] Failed to fetch items of type ${e.type??"(any_of)"}:`,s),t.throwOnError||e.spaceIds!==void 0)throw s;return{items:[],total_hint:0}}}function ll(e){if(!e||typeof e!="object")return;let t=e;if(t.version!==1||typeof t.work_id!="string"||!t.work_id)return;let n=r=>{let s=t[r];return typeof s=="string"&&s?s:void 0};return{version:1,workId:t.work_id,threadRootId:n("thread_root_id"),requestMessageId:n("request_message_id"),replyMessageId:n("reply_message_id"),replyMessagePath:n("reply_message_path"),todoListId:n("todo_list_id"),todoListPath:n("todo_list_path"),stepId:n("step_id"),stepPath:n("step_path"),runId:n("run_id"),parentRunId:n("parent_run_id"),toolCallId:n("tool_call_id"),traceId:n("trace_id")}}function _a(e){return e.filter(t=>t.item_type==="card").map(t=>{let n=t.type_data||{},r=n.payload||{};return{id:t.id||"",path:t.path||"",name:t.name||(t.path||"").split("/").pop()||"",createdAt:t.created_at||"",action:n.action||"created",targetId:n.target_id||void 0,targetPath:n.target_path||"",targetDisplayName:n.target_display_name||"",targetDescription:n.target_description||"",targetItemType:n.target_item_type||"",toolId:(t.name||"").startsWith("card-")?(t.name||"").substring(5):void 0,parentMessagePath:t.parent_message_path||void 0,visibility:n.visibility||"private",openWith:r.open_with||void 0,hostBundled:r.host_bundled===!0?!0:void 0,bundleExport:r.bundle_export||void 0,launchArguments:r.launch_arguments||void 0,requiresUserAttention:r.requires_user_attention===!0?!0:void 0,origin:ll(n.origin),presentationRole:r.presentation_role==="user-request"?"user-request":r.presentation_role==="output"?"output":void 0}}).sort((t,n)=>t.createdAt.localeCompare(n.createdAt))}function nr(e){return e.filter(t=>t.item_type==="message").map(t=>{let n=t.type_data||{},r="user";n.role==="assistant"?r="assistant":n.role==="system"&&(r="system");let s=n.metadata||{};return{id:t.id||"",path:t.path||"",content:n.message||n.content||"",created_at:t.created_at||"",role:r,status:typeof n.status=="string"?n.status:void 0,delivery_state:typeof n.delivery_state=="string"?n.delivery_state:void 0,cognition_event_id:typeof n.cognition_event_id=="string"?n.cognition_event_id:void 0,seq:n.seq||0,principal_id:n.principal_id,reply_count:n.reply_count||0,parent_message_id:n.parent_message_id,intent_card:s.intent_card,metadata:Object.keys(s).length>0?s:void 0,thread_summary:Array.isArray(n.thread_summary)&&n.thread_summary.length>0?n.thread_summary:void 0}}).sort((t,n)=>t.seq-n.seq)}async function va(e,t){try{let n={channel_path:e};t&&(n.parent_message_id=t);let s=await S("get-channel-messages",n),i=s.messages||s.content?.items||s.items||[];return nr(i)}catch(n){return console.error(`[gateway] Failed to fetch channel messages for ${e}:`,n),[]}}async function es(e,t){try{let n={channel_path:e};t&&(n.parent_message_id=t);let s=await S("get-channel-messages",n),i=s.messages||[],o=nr(i),c=_a(i),a=new Map,l=[];for(let d of c)if(d.parentMessagePath){let p=a.get(d.parentMessagePath)||[];p.push(d),a.set(d.parentMessagePath,p)}else l.push(d);return{messages:o,activityMessages:nr(s.activity_messages||[]),messageCards:a,siblingCards:l,mode:s.mode||"top_level"}}catch(n){return console.error(`[gateway] Failed to fetch channel messages with cards for ${e}:`,n),{messages:[],messageCards:new Map,siblingCards:[],mode:"top_level"}}}async function or(e,t){try{let n={channel_path:e};t?.parentMessageId&&(n.parent_message_id=t.parentMessageId),t?.limit&&(n.limit=t.limit),t?.before_seq!=null&&(n.before_seq=t.before_seq),t?.after_seq!=null&&(n.after_seq=t.after_seq);let s=await S("get-channel-messages",n),i=s.messages||[],o=_a(i),c=new Map,a=[];for(let l of o)if(l.parentMessagePath){let d=c.get(l.parentMessagePath)||[];d.push(l),c.set(l.parentMessagePath,d)}else a.push(l);return{messages:nr(i),activityMessages:nr(s.activity_messages||[]),messageCards:c,siblingCards:a,mode:s.mode||"top_level"}}catch(n){return console.error(`[gateway] Failed to fetch channel messages page for ${e}:`,n),{messages:[],messageCards:new Map,siblingCards:[],mode:"top_level"}}}function Wr(e){P().invalidateQueries({queryKey:R.children(e)})}function ai(e){P().invalidateQueries({queryKey:R.item(e)})}function ba(e,t){ai(e),Wr(e);let n=e.split("/");n.pop();let r=n.join("/")||t;r&&Wr(r)}function wa(e){let t=e+"/";P().invalidateQueries({predicate:n=>{let r=n.queryKey;return r[0]!=="vfs"?!1:r.some(s=>typeof s=="string"&&(s===e||s.startsWith(t)))}})}function Sa(){P().invalidateQueries({queryKey:R.all()})}function Ra(e){P().invalidateQueries({queryKey:R.types(e)})}function Ca(e,t){e?P().invalidateQueries({queryKey:R.channelMessages(e,t)}):P().invalidateQueries({queryKey:R.allChannelMessages()})}function xa(e,t){e&&t?P().invalidateQueries({queryKey:R.openEnvelope(e,t)}):e?P().invalidateQueries({predicate:n=>{let r=n.queryKey;return r[0]==="vfs"&&r[2]==="open"&&r[3]===e}}):P().invalidateQueries({queryKey:R.allOpenEnvelopes()})}function je(e){return{id:e.accountId,path:e.path,kind:e.isSpace?"space":"account",name:e.name,grantedUnderAccountId:e.grantedUnderAccountId??void 0}}async function ts(){return((await S("list-memberships",{})).memberships||[]).map(n=>({accountId:n.account_id,path:n.account_path,name:n.account_name,role:n.role||"member",typeData:n.account_type_data||{},joinedAt:n.joined_at,via:n.via,placement:n.placement,subordinateTo:n.subordinate_to??null,cascadeAnchorId:n.cascade_anchor_id??null,isAccount:n.is_account??void 0,isSpace:n.is_space??void 0,isOwner:n.is_owner??void 0,billingResponsible:n.billing_responsible??void 0,grantedVia:n.granted_via??null,grantedUnderAccountId:n.granted_under_account_id??null,membershipPath:n.membership_path??null,personalSpaceId:n.personal_space_id??null,personalSpacePath:n.personal_space_path??null}))}var bn=new Map,ar=null,ns=null,ht=new Map,Pa=250;function Ot(e){if(ar){wn(e);return}wn(e),ar=re("vfs_change",t=>dl(t)),ns=re("ccm_change",t=>fl(t))}function wn(e){if(bn.has(e))return;let t=yn(e,["vfs_change","ccm_change"]);bn.set(e,t)}function rs(e){let t=bn.get(e);t&&(t(),bn.delete(e))}function ci(){for(let[,e]of bn)e();bn.clear(),ar&&(ar(),ar=null),ns&&(ns(),ns=null),ht.forEach(e=>clearTimeout(e)),ht.clear()}ie(ci);function dl(e){let t=e.path,n=e.action;if(!t)return;let r=t.split("/");r.pop();let s=r.join("/")||"/root",i=ht.get(s);i&&clearTimeout(i);let o=setTimeout(()=>{ht.delete(s),pl(n,t,e,s)},Pa);ht.set(s,o)}function fl(e){if(!e||typeof e!="object")return;let t=e.source_item_id||e.source_id,n=e.target_item_id||e.target_id;if(!(e.edge_type!=null||t!=null||n!=null)||!t&&!n||e.item_type==="message")return;let s=`ccm:${t??""}:${n??""}`,i=ht.get(s);i&&clearTimeout(i);let o=setTimeout(()=>{ht.delete(s),t&&P().invalidateQueries({queryKey:R.edges(t)}),n&&P().invalidateQueries({queryKey:R.edges(n)})},Pa);ht.set(s,o)}function pl(e,t,n,r){if((e||"").toUpperCase()==="DELETE")P().removeQueries({queryKey:R.item(t)}),P().removeQueries({queryKey:R.children(t)}),P().removeQueries({queryKey:R.tree(t)});else if(n.item_id)try{let i={id:n.item_id,path:n.path,name:n.name,item_type:n.item_type,parent_id:n.parent_id,scope_item_id:n.scope_item_id},o=ye(i);o&&o.id&&P().setQueryData(R.item(t),o)}catch{}P().invalidateQueries({queryKey:R.children(r)}),P().invalidateQueries({predicate:i=>{let o=i.queryKey;if(o[0]!=="vfs"||o[1]!=="tree")return!1;let c=o[2];return t.startsWith(c+"/")||t===c}}),n.item_id&&P().invalidateQueries({queryKey:R.itemById(n.item_id)})}var Sn=null;ie(()=>{Sn=null});function gt(e){if(e!==Sn||e.generation!==se())throw new Error("Workspace session changed")}function ml(e){return e instanceof Te&&e.payload?.error==="item_not_found"}function cr(e,t){let n=e.resolve(t.id);if(!n||n.path!==t.path||n.kind!==t.kind)throw new Error("Mount is not an available membership");return n}function ur(e){let t=fe();if(!t)throw new Error("Elect a home account before loading mounts");return[t,...e.filter((n,r)=>n.id!==t.id&&e.findIndex(s=>s.id===n.id)===r)]}function Ta(e,t){return JSON.stringify({mounts:e.map(n=>n.id),last_anchor:t.id})}async function Ea(e,t,n){gt(e);let r=Ta(t,n);if(e.saved===r)return;let s=JSON.parse(r);await S(e.exists?"update":"create",e.exists?{_scope_path:e.scope,path:e.path,type_data:s}:{_scope_path:e.scope,parent_path:e.path.slice(0,e.path.lastIndexOf("/")),name:"mounts",item_type:"file",type_data:s}),gt(e),e.exists=!0,e.saved=r}function Ia(e,t){let n=Pe();Ot(fe().id);for(let r of n)e.some(s=>s.id===r.id)||rs(r.id);for(let r of e)wn(r.id);Io(e,t)}async function Ft(e,t,n={}){let r=fe();if(!r)throw new Error("Elect a home account before loading mounts");let s=`${e}/settings/mounts`;if(Sn&&Sn.path!==s)throw new Error("Reset the session before changing the mount declaration owner");let i=Sn??(Sn={generation:se(),path:s,scope:r.path,resolve:t,exists:!1,ready:!1,saved:null,queue:Promise.resolve()});return gt(i),i.loading?i.loading:i.ready?Pe():(i.resolve=t,i.loading=(async()=>{let o=null;try{let d=await S("read",{path:s,_scope_path:i.scope});if(gt(i),o=d.type_data??d.item?.type_data,!o||!Array.isArray(o.mounts)||!o.mounts.every(p=>typeof p=="string"))throw new Error("Invalid saved mount declaration");i.exists=!0}catch(d){if(gt(i),!ml(d))throw d;i.exists=!1}let c=n.initialAnchor?cr(i,n.initialAnchor):r,a=ur(o?o.mounts.map(t).filter(d=>d!==null):[c]),l=o?a.find(d=>d.id===o.last_anchor)??a.find(d=>d.kind==="space")??r:c;return o?i.saved=Ta(a,l):n.initialAnchor&&await Ea(i,a,l),gt(i),i.ready=!0,Ia(a,l),a})().finally(()=>{i.loading=void 0}),i.loading)}function ss(e){let t=Sn;if(!t?.ready)return Promise.reject(new Error("Workspace mounts are not loaded"));let n=t.queue.then(async()=>{gt(t);let{refs:r,anchor:s}=e(t);await Ea(t,r,s),gt(t),Ia(r,s)});return t.queue=n.catch(()=>{}),n}function ui(e){return ss(t=>({refs:ur([...Pe(),cr(t,e)]),anchor:ge()}))}function Aa(e){return ss(()=>{if(e===fe().id)throw new Error("The home account cannot be unmounted");let t=ur(Pe().filter(r=>r.id!==e)),n=t.find(r=>r.id===ge()?.id)??t.find(r=>r.kind==="space")??fe();return{refs:t,anchor:n}})}function lr(e){return ss(t=>{let n=cr(t,e);return{refs:ur([...Pe(),n]),anchor:n}})}function is(e,t){return ss(n=>{let r=ur(e.map(i=>cr(n,i))),s=cr(n,t);if(!r.some(i=>i.id===s.id))throw new Error("Selected mount must be in the working set");return{refs:r,anchor:s}})}function os(e){if(typeof e.path!="string")return!1;let t=[...Pe().map(n=>n.path),ge()?.path].filter(n=>!!n);return!t.length&&H()&&t.push(H()),t.some(n=>Ke(e.path,n))}function li(e,t,n,r){return!["message","card"].includes(e?.item_type)||!Ke(e.path,t)?!1:!n||e.item_id===n||e.parent_id===n?!0:r.some(s=>{if(e.item_id===s.id||e.parent_id===s.id)return!0;let i=s.id===n?s.path:s.parent_message_id===n?s.path.slice(0,s.path.lastIndexOf("/")):void 0;return!!i&&Ke(e.path,i)})}var ka=new WeakMap;function Ma(e,t,n){let r=ka.get(e);r||(r=new Map,ka.set(e,r));let s=JSON.stringify(t),i=r.get(s);if(!i){let c=!1,a,l=!1,d=!1,p=new Set,m=new Set,f=()=>e.getQueryData(t)??[],y=()=>{c||l||a||(a=setTimeout(()=>{a=void 0,h()},250))},h=async()=>{if(c)return;l=!0;let F=d;d=!1;let C=[...p],k=new Set(m);m.clear(),p.clear();try{if(F)await Ee(e,t,{exact:!0});else{let N=(await Promise.allSettled(C.map(async I=>{let $=e.getQueryCache().find({queryKey:t,exact:!0});if(!$)return;let M=await S("read",{id:I});if(M.success===!1)throw new Error("Channel refresh failed");if(c||!$||e.getQueryCache().find({queryKey:t,exact:!0})!==$)return;let E=ye(M.item??M);if(E.id!==I||E.item_type!=="channel")return;let Q=f().find(V=>V.id===I);if(!Q)return;let O=n({...E}),ue={...Q,path:O.path,name:O.name,displayName:O.displayName,messageCount:O.messageCount,aiMode:O.aiMode,isPrivate:O.isPrivate,isDm:O.isDm,autoPilot:O.autoPilot,updatedAt:O.updatedAt};k.has(I)&&(Q.name!==ue.name||Q.displayName!==ue.displayName||Q.path!==ue.path)&&(d=!0),e.setQueryData(t,V=>V?.map(Oe=>Oe.id===I?ue:Oe))}))).find(I=>I.status==="rejected");if(N?.status==="rejected")throw N.reason}}catch(U){console.warn("[channels] refresh failed",U)}finally{l=!1,(d||p.size)&&y()}},g=F=>f().some(C=>C.id===F.item_id||C.path===F.path)?!0:os(F),v=F=>{if(!g(F))return;let C=String(F.action??"").toLowerCase();if(["insert","delete","rename","move"].includes(C))d=!0;else if(C==="update"){let k=f().find(U=>U.id===F.item_id||U.path===F.path);k&&(p.add(k.id),m.add(k.id))}(d||p.size)&&y()},x=F=>{let C=f().find(k=>k.id===F.parent_id);C&&(p.add(C.id),y())},q=["vfs_change","ccm_change"].flatMap(F=>[re(F,v,C=>C.item_type==="channel"),re(F,x,C=>C.item_type==="message")]);i={users:0,stop:()=>{c=!0,a&&clearTimeout(a),q.forEach(F=>F())}},r.set(s,i)}i.users++;let o=!1;return()=>{o||(o=!0,--i.users===0&&(i.stop(),r.delete(s)))}}function Y(){return(0,_.useSyncExternalStore)(be,Z,Z)}function Qa(){return Y(),Or()}function Da(e){return Y(),j({queryKey:R.item(e),queryFn:()=>$r(e),enabled:!!e,staleTime:1/0})}function Ua(e){return Y(),j({queryKey:R.itemById(e),queryFn:()=>Br(e),enabled:!!e,staleTime:1/0})}function fi(e){return Y(),j({queryKey:R.children(e),queryFn:()=>sr(e),enabled:!!e})}function Na(e){let t=fi(e);return{...t,children:t.data??[]}}function Ka(e,t=1){return Y(),j({queryKey:R.tree(e,t),queryFn:()=>zr(e,t),enabled:!!e})}function La(e,t){return Y(),j({queryKey:R.search(e,t),queryFn:async()=>{let n={query:e};t?.length&&(n.item_types=t);let r=await S("search",n);return(r.content?.items||r.items||r.results||[]).map(ye)},enabled:!!e&&e.length>0})}function ja(e){Y();let t=(0,_.useMemo)(()=>e,[JSON.stringify(e)]);return j({queryKey:["vfs",H()??"__unscoped__","resolve",JSON.stringify(t??{})],queryFn:async()=>await S("resolve",t),enabled:!!t?.query&&t.query.length>0})}function Wa(e){Y();let t=kt(e),n=(0,_.useMemo)(()=>t,[JSON.stringify(t)]),r=j({queryKey:R.items(n?.type??"",n),queryFn:()=>vn(n),enabled:_n(n),...n?.spaceIds!==void 0?{retry:(s,i)=>!dn(i)&&s<1}:{},select:s=>s.items});return n?.spaceIds!==void 0&&dn(r.error)?{...r,data:void 0}:r}function Ba(e,t={}){let n=Y(),{realtime:r=!1}=t,s=kt(e),i=s?.limit??20,o=(0,_.useMemo)(()=>s,[JSON.stringify(s)]),c=(0,_.useMemo)(()=>["vfs",H()??"__unscoped__","infinite-items",o?.type??"",JSON.stringify(o??{})],[n,o]),a=Vn({queryKey:c,queryFn:async({pageParam:p=0})=>vn({...o,limit:i,offset:p},{throwOnError:!0}),initialPageParam:0,getNextPageParam:(p,m,f)=>{if(!(o?.spaceIds!==void 0&&p.total_hint!==void 0&&f+p.items.length>=p.total_hint)&&!(p.items.length<i))return f+p.items.length},enabled:_n(o),...o?.spaceIds!==void 0?{retry:(p,m)=>!dn(m)&&p<1}:{},staleTime:r?1/0:void 0,meta:r&&o?{infiniteItemsRealtime:{filter:o}}:{}}),l=(0,_.useMemo)(()=>{if(o?.spaceIds!==void 0&&dn(a.error))return[];if(!a.data?.pages)return[];let p=new Set,m=[];for(let f of a.data.pages)for(let y of f.items)y.id&&!p.has(y.id)&&(p.add(y.id),m.push(y));return m},[a.data?.pages,a.error,o]),d=o?.spaceIds!==void 0&&dn(a.error);return{allItems:l,refetch:a.refetch,fetchNextPage:a.fetchNextPage,isFetchingNextPage:a.isFetchingNextPage,isExhausted:d||!a.hasNextPage,isLoading:a.isLoading,isFetching:a.isFetching,error:a.error,totalHint:d?void 0:a.data?.pages?.[0]?.total_hint}}function $a(e){Y();let t=20,n=Vn({queryKey:["vfs",H()??"__unscoped__","infinite-children",e??""],queryFn:async({pageParam:s=0})=>Vr(e,t,s),initialPageParam:0,getNextPageParam:(s,i,o)=>{if(!(s.items.length<t))return o+s.items.length},enabled:!!e});return{allItems:(0,_.useMemo)(()=>{if(!n.data?.pages)return[];let s=new Set,i=[];for(let o of n.data.pages)for(let c of o.items)c.id&&!s.has(c.id)&&(s.add(c.id),i.push(c));return i},[n.data?.pages]),fetchNextPage:n.fetchNextPage,isFetchingNextPage:n.isFetchingNextPage,isExhausted:!n.hasNextPage,isLoading:n.isLoading,isFetching:n.isFetching,error:n.error,totalHint:n.data?.pages?.[0]?.total_hint}}function Va(e){return Y(),j({queryKey:R.edges(e),queryFn:()=>Gr(e),enabled:!!e})}function as(e){return Y(),j({queryKey:R.types(e),queryFn:()=>Hr(e)})}function Ha(e,t){let n=as(t);return{...n,data:n.data?.get(e)??void 0}}function Ga(e,t){Y();let n=(0,_.useMemo)(()=>t?.arguments,[JSON.stringify(t?.arguments)]),r=t?.mode,s=t?.strategy,i=t?.width;return j({queryKey:[...R.openEnvelope(e,s),i],queryFn:async()=>{let o=await Zr(e,{mode:r,strategy:s,arguments:n});if(i&&o.render?.props?.url){let c=o.render.props.url,a=c.includes("?")?"&":"?";o.render.props.url=`${c}${a}w=${i}`}return o},enabled:!!e})}var Oa={related_to:"Related To",depends_on:"Depends On",blocks:"Blocks",parent_of:"Parent Of",child_of:"Child Of",references:"References",implements:"Implements",extends:"Extends",contains:"Contains",belongs_to:"Belongs To",created_by:"Created By",assigned_to:"Assigned To",tagged_with:"Tagged With",linked_to:"Linked To"};function za(e){let t=as(e),n=t.data??new Map;return(0,_.useMemo)(()=>({canHaveChildren:f=>n.get(f.item_type)?.is_container??!1,isScope:f=>n.get(f.item_type)?.is_scope??!1,isScopeType:f=>n.get(f)?.is_scope??!1,isContainerType:f=>n.get(f)?.is_container??!1,getTypeDefinition:f=>n.get(f),getTypeColor:f=>n.get(f)?.color??"gray",getTypeIcon:f=>n.get(f)?.icon??"File",getTypeDisplayName:f=>n.get(f)?.display_name??f,getKnownEdgeTypes:()=>Object.entries(Oa).map(([f,y])=>({key:f,label:y})),getEdgeTypeLabel:f=>Oa[f]??f.replace(/_/g," "),allTypes:n,loading:t.isLoading}),[n,t.isLoading])}function Ja(e,t,n){return Y(),j({queryKey:R.memberFocus(e),queryFn:()=>Xr(e,t,n),enabled:!!e})}function Ya(e,t={}){let{limit:n=50,offset:r=0,include_snapshots:s=!1}=t;return j({queryKey:R.itemVersions(e,String(n),String(r),String(s)),queryFn:()=>ir(e,{limit:n,offset:r,include_snapshots:s}),enabled:!!e})}function Xa(e,t=50,n=0){return j({queryKey:R.itemHistory(e,String(t),String(n)),queryFn:()=>Yr(e,t,n),enabled:!!e})}function Za(e,t=50,n=0){return Y(),j({queryKey:R.recentActivity(e,String(t),String(n)),queryFn:()=>Jr(e,t,n),enabled:!!e})}function ec(){let[e,t]=(0,_.useState)(null),[n,r]=(0,_.useState)(!0),[s,i]=(0,_.useState)(null);return(0,_.useEffect)(()=>{let o=!1;return pt().then(c=>{if(!o){let a=typeof window<"u"&&window.__FSAOS_CONFIG__||{};t({path:c.scope_path,scope_id:c.scope_id,fractal_id:c.fractal_id,instance_name:c.instance_name,display_name:c.display_name,componentPath:a.componentPath||"",isEmbed:!!a.embedToken}),r(!1)}}).catch(c=>{o||(i(c instanceof Error?c:new Error(String(c))),r(!1))}),()=>{o=!0}},[]),{data:e,loading:n,error:s}}var yl=[];function tc(){let{user:e}=cs(),t=(0,_.useRef)(null),[n,r]=(0,_.useState)(null),s=j({queryKey:R.memberships(e?.id??"anonymous"),queryFn:ts,enabled:!!e?.id,staleTime:1e3*60*2}),i=s.data??yl,o=(0,_.useMemo)(()=>i.filter(m=>m.isAccount!==!1&&!m.isSpace),[i]),c=(0,_.useMemo)(()=>{let m=new Set(o.map(y=>y.accountId)),f=y=>!y.subordinateTo||!m.has(y.subordinateTo);return[...o].sort((y,h)=>Number(f(h))-Number(f(y)))},[o]),a=(0,_.useSyncExternalStore)(be,Z,Z),l=(0,_.useMemo)(()=>{let m=ge();return m?i.find(f=>f.accountId===m.id)??null:null},[a,i]);(0,_.useEffect)(()=>{if(!e?.id){t.current=null;return}if(t.current!==e.id)if(r(null),c.length===1){let m=c[0];fe()||Et(je(m)),Ot(m.accountId),m.personalSpacePath&&Ft(m.personalSpacePath,f=>{let y=i.find(h=>h.accountId===f);return y?je(y):null}).catch(r),t.current=e.id}else c.length>1&&(t.current=e.id)},[e?.id,c,i]);let d=(0,_.useCallback)(async m=>{let f=i.find(g=>g.path===m);if(!f)throw new Error("Account membership is unavailable");let y=je(f);fe()||Et(y);let h=i.find(g=>g.accountId===fe()?.id);if(!h?.personalSpacePath)throw new Error("The home membership has no mount declaration location");await Ft(h.personalSpacePath,g=>{let v=i.find(x=>x.accountId===g);return v?je(v):null}),await lr(y),r(null),Ot(f.accountId)},[i]),p=(0,_.useCallback)(async m=>{let f=i.find(y=>y.path===m);if(!f)throw new Error("Scope membership is unavailable");await ui(je(f))},[i]);return{accounts:c,allMemberships:i,currentAccount:l,mountedScope:null,switchAccount:d,mountScope:p,loading:s.isLoading,error:s.error??n}}function nc(){Y();let e=(0,_.useSyncExternalStore)(Mr,Xn,Xn),t=(0,_.useMemo)(()=>Pe(),[e]),n=ge(),r=(0,_.useMemo)(()=>t.filter(i=>i.kind==="space"&&(n?.kind==="account"||i.id===n?.id)),[t,n]),s=(0,_.useMemo)(()=>r.map(i=>i.id).sort(),[r]);return{mounts:t,selectedSpaces:r,readSpaceIds:s,homeAnchor:fe(),anchor:n,setAnchor:lr,replaceMounts:is,mount:ui,unmount:Aa}}function cs(){let[e,t]=(0,_.useState)(null),[n,r]=(0,_.useState)(null),[s,i]=(0,_.useState)(!0),o=(0,_.useRef)(null);(0,_.useEffect)(()=>{B.auth.getSession().then(({data:f,error:y})=>{if(y){console.warn("[useAuth] getSession error, clearing stale session:",y.message),B.auth.signOut().catch(()=>{}),r(null),t(null),i(!1);return}r(f?.session??null),t(f?.session?.user??null),i(!1)}).catch(f=>{console.warn("[useAuth] getSession threw, clearing stale session:",f?.message),B.auth.signOut().catch(()=>{}),r(null),t(null),i(!1)});let{data:{subscription:m}}=B.auth.onAuthStateChange((f,y)=>{if(f==="TOKEN_REFRESHED"&&!y){console.warn("[useAuth] TOKEN_REFRESHED with null session \u2014 signing out"),B.auth.signOut().catch(()=>{}),r(null),t(null),i(!1);return}r(y),t(y?.user??null),i(!1)});return o.current=m,()=>{m?.unsubscribe()}},[]);let c=(0,_.useCallback)(async m=>m.provider?B.auth.signInWithOAuth({provider:m.provider,options:m.redirectTo?{redirectTo:m.redirectTo}:{redirectTo:window.location.href}}):B.auth.signInWithPassword({email:m.email,password:m.password}),[]),a=(0,_.useCallback)(async m=>B.auth.signUp({email:m.email,password:m.password,options:{data:m.metadata||{}}}),[]),l=(0,_.useCallback)(async()=>{await B.auth.signOut(),ln(),P().clear()},[]),d=(0,_.useCallback)(async m=>{let{error:f}=await B.auth.resetPasswordForEmail(m);if(f)throw f},[]),p=(0,_.useCallback)(async(m,f)=>{let{error:y}=await B.auth.signInWithOtp({email:m,options:f?{emailRedirectTo:f}:{emailRedirectTo:window.location.href}});if(y)throw y},[]);return{user:e,session:n,loading:s,signIn:c,signUp:a,signOut:l,resetPassword:d,signInWithMagicLink:p}}function rc(e){let[t,n]=(0,_.useState)(null),[r,s]=(0,_.useState)(!1),[i,o]=(0,_.useState)(null);return(0,_.useEffect)(()=>{if(!e){n(null),s(!1);return}if(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e))s(!0),S("resolve-asset",{asset_id:e}).then(a=>{a.success&&a.public_url?n({url:a.public_url,id:a.asset_id,name:a.name,mimeType:a.mime_type,width:a.width,height:a.height,sizeBytes:a.size_bytes}):o(new Error(a.error||"Asset not found")),s(!1)}).catch(a=>{o(a instanceof Error?a:new Error(String(a))),s(!1)});else{let l=(typeof window<"u"&&window.__FSAOS_CONFIG__||{}).edgeBaseUrl||"";n({url:l+e}),s(!1)}},[e]),{data:t,loading:r,error:i}}var dr={},Fa={};ie(()=>{for(let e of Object.keys(dr))delete dr[e]});var sc=null;function ic(e){sc=e,typeof window<"u"&&!window.__FSAOS_GATEWAY__&&(window.__FSAOS_GATEWAY__=e)}function _l(e){switch(e){case"react":return typeof window<"u"&&window.React||_.default;case"react-dom":case"react-dom/client":return typeof window<"u"&&window.ReactDOM||hl;case"react/jsx-runtime":case"react/jsx-dev-runtime":return typeof window<"u"&&window.React?{jsx:window.React.createElement,jsxs:window.React.createElement,Fragment:window.React.Fragment}:gl;case"@fsaos/gateway":case"@fsaos/react":return typeof window<"u"&&window.__FSAOS_GATEWAY__||sc||{};case"@fsaos/ui":return typeof window<"u"&&window.__FSAOS_UI__||{};case"@fsaos/theme":return{};default:return console.warn(`[useComponent] Unknown module requested: ${e}`),{}}}function vl(e,t){return e.replace(/^(\s*)(:root|body)(\s*[{,])/gm,(n,r,s,i)=>`${r}.${t}${i}`)}async function bl(e,t){if(!Fa[e])try{let n=await fetch(e);if(!n.ok)return;let r=await n.text();if(!r.trim()||r.includes("No CSS bundle for this component"))return;t&&!r.includes(`.fsaos-c-${t}`)&&(r=vl(r,`fsaos-c-${t}`));let s=document.createElement("style");s.setAttribute("data-fsaos-component-css",e),t&&s.setAttribute("data-fsaos-component-id",t),s.textContent=r,document.head.appendChild(s),Fa[e]=s}catch{}}function wl(e){let t=null,n=window.__FSAOS_REGISTER__;window.__FSAOS_REGISTER__=r=>{t=r};try{let r=["var require = arguments[0];",e,"return window.__FSAOS_COMPONENT__;"].join(`
3
+ `),i=new Function(r)(_l),o=t??i;return o?o.default||o:null}finally{n!==void 0?window.__FSAOS_REGISTER__=n:delete window.__FSAOS_REGISTER__}}function pi(e){let[t,n]=(0,_.useState)(null),[r,s]=(0,_.useState)(!0),[i,o]=(0,_.useState)(null);return(0,_.useEffect)(()=>{if(!e)return;let c=!1;s(!0),o(null);let l=(typeof window<"u"&&window.__FSAOS_CONFIG__||{}).edgeBaseUrl||"";return(async()=>{try{let d=1,p=e+"@v1",m=l+e+"/__bundle.js";try{let v=await fetch(l+e+"/__meta",{cache:"no-store"});v.ok&&(d=(await v.json()).version||1,p=e+"@v"+d,m=l+e+"/__bundle.v"+d+".js")}catch{m=l+e+"/__bundle.js?v="+Date.now()}if(c)return;if(dr[p]){n(()=>dr[p]),s(!1);return}let f=await fetch(m);if(!f.ok)throw new Error(`Failed to fetch bundle: ${f.status} ${f.statusText} (${m})`);let y=await f.text();if(c)return;let h=m.replace(/__bundle(\.v\d+)?\.js(\?.*)?$/,"__bundle$1.css");bl(h).catch(()=>{});let g=wl(y);if(!g)throw new Error("Bundle did not export a component. Expected window.__FSAOS_COMPONENT__ (FSAOS build) or a __FSAOS_REGISTER__(Component) call.");if(typeof g!="function")throw new Error(`Bundle export is not a React component (got ${typeof g})`);dr[p]=g,c||(n(()=>g),s(!1))}catch(d){c||(o(d instanceof Error?d:new Error(String(d))),s(!1))}})(),()=>{c=!0}},[e]),{Component:t,loading:r,error:i}}var Sl=["--color-primary","--color-secondary","--color-background","--color-surface","--color-text","--color-text-secondary","--color-border","--color-accent","--color-success","--color-warning","--color-error","--font-family-heading","--font-family-body","--border-radius","--spacing-unit"];function oc(){return{data:(0,_.useMemo)(()=>{if(typeof document>"u")return{tokens:{}};let t={},n=getComputedStyle(document.documentElement);return Sl.forEach(r=>{t[r]=n.getPropertyValue(r).trim()}),{tokens:t}},[]),loading:!1,error:null}}function ac(e,t){return{data:{allowed:!0},loading:!1,error:null}}function cc(e,t){let n={};return(t||[]).forEach(r=>{n[r]=!0}),{data:n,loading:!1,error:null}}var ce=null,Rn=null,di=new Set;function Rl(){di.forEach(e=>e())}ie(()=>{ce=null,Rn=null});async function uc(e){let t={principalId:null,displayName:null,createdAt:null,metadata:null,vfsPath:null},n=It()?.principal_id??null;if(n){if(ce&&ce.principalId===n){let{principalId:s,displayName:i,createdAt:o,metadata:c,vfsPath:a}=ce;return{principalId:s,displayName:i,createdAt:o,metadata:c,vfsPath:a}}return{...t,principalId:n}}let r=e;if(!r){let{data:s}=await B.auth.getSession();r=s?.session?.user?.id}if(!r)return t;if(ce&&ce.authUserId===r){let{principalId:s,displayName:i,createdAt:o,metadata:c,vfsPath:a}=ce;return{principalId:s,displayName:i,createdAt:o,metadata:c,vfsPath:a}}return Rn||(Rn=(async()=>{try{let{data:s,error:i}=await B.from("os_principals").select("id, display_name, created_at, metadata").eq("auth_user_id",r).eq("principal_type","user").maybeSingle();if(i)return console.warn("[SDK] Could not resolve principal:",i.message),t;let o=s?.id??null,c=null;if(o){let{data:l}=await B.from("os_items").select("path").eq("owner_principal_id",o).eq("item_type","principal").eq("is_active",!0).like("path","/root/principals/%"),d=(l??[]).map(p=>p.path);c=d.find(p=>p.split("/").length===4)??d[0]??null}let a={principalId:o,displayName:s?.display_name??null,createdAt:s?.created_at??null,metadata:s?.metadata??null,vfsPath:c};return ce={authUserId:r,...a},a}finally{Rn=null}})(),Rn)}async function lc(e){return(await uc(e)).principalId}function dc(){let e=cs(),t=e.user,n=ce?.authUserId===t?.id?ce:null,[r,s]=(0,_.useState)(n),i=(0,_.useRef)(null);return(0,_.useEffect)(()=>{let o=()=>{let c=ce;c&&c.authUserId===t?.id&&s({principalId:c.principalId,displayName:c.displayName,createdAt:c.createdAt,metadata:c.metadata,vfsPath:c.vfsPath})};return di.add(o),()=>{di.delete(o)}},[t?.id]),(0,_.useEffect)(()=>{if(!t?.id){s(null),i.current=null;return}i.current===t.id&&r?.principalId!=null||(i.current=t.id,uc(t.id).then(o=>{s(o)}))},[t?.id]),e.loading?{data:null,loading:!0,error:null}:t?{data:{id:t.id,principalId:r?.principalId??null,email:t.email,display_name:r?.displayName??void 0,created_at:r?.createdAt??void 0,vfs_path:r?.vfsPath??void 0,role:t.role||t.app_metadata?.role||"user",authenticated:!0,metadata:r?.metadata??t.user_metadata??{}},loading:!1,error:null}:{data:{id:"anonymous",principalId:null,role:"viewer",authenticated:!1},loading:!1,error:null}}function fc(){return{data:null,loading:!1,error:null}}function pc(e){let{path:t,...n}=e,r=pi(t),s=r.Component,{loading:i,error:o}=r;return i?(0,_.createElement)("div",{className:"fsaos-loading"},""):o?(0,_.createElement)("div",{className:"fsaos-error"},"Failed to load component"):s?(0,_.createElement)(s,n):null}function mc(e){return e.children}function hc(e){let t=Y(),{channelPath:n,parentMessageId:r,realtime:s=!0,enabled:i}=e,o=i!==void 0?i&&!!n:!!n,c=(0,_.useMemo)(()=>R.channelMessages(n??"",r),[n,r,t]),a=W(),l=(0,_.useRef)(null),d=j({queryKey:c,queryFn:()=>es(n,r),enabled:o});(0,_.useEffect)(()=>{if(!s||!o)return;let h=re("vfs_change",()=>{l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{Ee(a,c,{exact:!0})},500)},g=>{let v=a.getQueryData(c);return li(g,n,r,[...v?.messages??[],...v?.activityMessages??[]])});return()=>{h(),l.current&&clearTimeout(l.current)}},[s,o,n,r,c,a]);let p=d.data,m=p?.messages??[],f=p?.messageCards??new Map,y=p?.siblingCards??[];return{messages:m,activityMessages:p?.activityMessages??[],messageCards:f,siblingCards:y,threads:(0,_.useMemo)(()=>m.filter(h=>h.reply_count>0),[m]),isLoading:d.isLoading,isFetching:d.isFetching,error:d.error,refetch:d.refetch}}function gc(e){Y();let{channelPath:t,parentMessageId:n,limit:r=50,realtime:s=!0,enabled:i=!0}=e,o=!!n,c=i&&!!t,a=Vn({queryKey:[...R.channelMessages(t||"",n),"infinite",r],queryFn:async({pageParam:h})=>or(t,{parentMessageId:n,limit:r,before_seq:o?void 0:h,after_seq:o?h:void 0}),initialPageParam:void 0,getNextPageParam:h=>!o||h.messages.length<r?void 0:h.messages[h.messages.length-1]?.seq,getPreviousPageParam:h=>o||h.messages.length<r?void 0:h.messages[0]?.seq,enabled:c}),l=(0,_.useMemo)(()=>{if(!a.data?.pages)return[];let h=new Set,g=[];for(let v of a.data.pages)for(let x of v.messages)h.has(x.id)||(h.add(x.id),g.push(x));return g.sort((v,x)=>v.seq-x.seq)},[a.data?.pages]),{messageCards:d,siblingCards:p}=(0,_.useMemo)(()=>{let h=new Map,g=[];if(!a.data?.pages)return{messageCards:h,siblingCards:g};let v=new Set;for(let x of a.data.pages){for(let[q,F]of x.messageCards)for(let C of F){if(v.has(C.id))continue;v.add(C.id);let k=h.get(q)||[];k.push(C),h.set(q,k)}for(let q of x.siblingCards)v.has(q.id)||(v.add(q.id),g.push(q))}return{messageCards:h,siblingCards:g}},[a.data?.pages]),m=W(),f=(0,_.useRef)(null),y=(0,_.useMemo)(()=>[...R.channelMessages(t||"",n),"infinite",r],[t,n,r]);return(0,_.useEffect)(()=>{if(!s||!t||!c)return;let h=()=>void Ee(m,y,{exact:!0}),g=!1,v=!1,x=!1,q=async()=>{let k=m.getQueryData(y);if(!k?.pages?.length){h();return}let U=0;for(let N of k.pages)for(let I of N.messages)I.seq>U&&(U=I.seq);if(U===0){h();return}try{let N=await or(t,{parentMessageId:n,limit:r,after_seq:U});if(N.messages.length===0&&N.siblingCards.length===0){h();return}if(N.messages.length>0){let I=Math.min(...N.messages.map($=>$.seq));if(I>U+1){console.warn(`[useInfiniteChannelMessages] sequence gap detected: maxSeq=${U}, minNewSeq=${I}. Triggering full refetch.`),h();return}}m.setQueryData(y,I=>{if(!I)return I;let $=[...I.pages],M=$.length-1,E=$[M],Q=new Set(E.messages.map(Se=>Se.id)),O=N.messages.filter(Se=>!Q.has(Se.id)),ue=[...E.messages,...O].sort((Se,ys)=>Se.seq-ys.seq),V=new Map(E.messageCards);for(let[Se,ys]of N.messageCards){let Pi=V.get(Se)||[],Su=new Set(Pi.map(_s=>_s.id)),Ru=ys.filter(_s=>!Su.has(_s.id));V.set(Se,[...Pi,...Ru])}let Oe=new Set(E.siblingCards.map(Se=>Se.id)),bu=N.siblingCards.filter(Se=>!Oe.has(Se.id)),wu=[...E.siblingCards,...bu];return $[M]={...E,activityMessages:N.activityMessages??[],messages:ue,messageCards:V,siblingCards:wu},{...I,pages:$}})}catch(N){console.warn("[useInfiniteChannelMessages] live tail fetch failed, falling back to full invalidation:",N),h()}},F=async()=>{if(g){v=!0;return}g=!0;try{do v=!1,await q();while(v&&!x)}finally{g=!1}},C=re("vfs_change",()=>{f.current&&clearTimeout(f.current),f.current=setTimeout(()=>{F()},500)},k=>li(k,t,n,m.getQueryData(y)?.pages.flatMap(U=>U.messages)??[]));return()=>{x=!0,C(),f.current&&clearTimeout(f.current)}},[s,t,c,y,m,n,r]),{messages:l,activityMessages:a.data?.pages.at(-1)?.activityMessages??[],messageCards:d,siblingCards:p,threads:l.filter(h=>h.reply_count>0),isLoading:a.isLoading,isFetching:a.isFetching,error:a.error,refetch:a.refetch,hasPreviousPage:a.hasPreviousPage??!1,fetchPreviousPage:a.fetchPreviousPage,isFetchingPreviousPage:a.isFetchingPreviousPage??!1,hasNextPage:a.hasNextPage??!1,fetchNextPage:a.fetchNextPage,isFetchingNextPage:a.isFetchingNextPage??!1}}function Cl(e){return e==="on"||e==="auto"?"on":"off"}function qa(e){let t=e.type_data||{},n=e._reader||{},r=n.context_lineage||{};return{id:e.id||"",path:e.path||"",name:e.name||"",displayName:t.display_name||e.name||"",aiMode:Cl(t.ai_mode),isPrivate:t.is_private||!1,isDm:t.is_dm||!1,messageCount:t.message_count||0,createdAt:e.created_at||"",updatedAt:e.updated_at||"",chatScopePath:r.context_path||"",contextId:e.scope_item_id||"",contextPath:r.context_path||"",contextType:r.context_type||"",contextName:r.context_name||"",contextDisplayName:r.context_name||"",contextPrincipalId:void 0,accountId:e.account_item_id||"",accountPath:"",accountDisplayName:"",memberRole:n.member_role||"member",memberPath:"",modePath:"",autoPilot:t.auto_pilot||!1}}function us(e={}){let t=Y(),{realtime:n=!0,enabled:r=!0}=e,s=W(),i=(0,_.useMemo)(()=>R.channels("all"),[t]),o=j({queryKey:i,queryFn:async()=>((await S("query",{item_type:"channel",include_reader:!0,limit:500})).items||[]).map(qa),enabled:r});return(0,_.useEffect)(()=>{if(!(!n||!r))return Ma(s,i,qa)},[n,r,i,s]),{channels:o.data??[],isLoading:o.isLoading,isFetching:o.isFetching,error:o.error,refetch:o.refetch}}function yc(e={}){let t=us(e),n=(0,_.useMemo)(()=>t.channels.filter(r=>!r.isDm),[t.channels]);return{...t,channels:n}}function _c(e={}){let t=us(e),n=(0,_.useMemo)(()=>t.channels.filter(r=>r.isDm),[t.channels]);return{...t,channels:n}}function mi(e={}){let t=Y(),{filter:n="all",limit:r=200,realtime:s=!0,enabled:i=!0}=e,o=W(),c=(0,_.useRef)(null),a=(0,_.useMemo)(()=>R.notifications(n,r),[n,r,t]),l=j({queryKey:a,queryFn:async()=>{let p={limit:r};return n==="unread"&&(p.filter="unread"),(await S("get-notifications",p)).notifications||[]},enabled:i});return(0,_.useEffect)(()=>{if(!s||!i)return;let p=["vfs_change","ccm_change"].map(m=>re(m,()=>{c.current&&clearTimeout(c.current),c.current=setTimeout(()=>{o.invalidateQueries({queryKey:a})},2e3)},f=>f.item_type==="notification"&&os(f)));return()=>{p.forEach(m=>m()),c.current&&clearTimeout(c.current)}},[s,i,a,o]),{notifications:l.data??[],isLoading:l.isLoading,isFetching:l.isFetching,error:l.error,refetch:l.refetch}}function vc(e={}){let{channels:t,realtime:n=!0,enabled:r=!0}=e,{notifications:s,isLoading:i,isFetching:o,error:c,refetch:a}=mi({filter:"unread",limit:200,realtime:n,enabled:r}),l=(0,_.useMemo)(()=>{let f=new Map;for(let y of s)y.is_unread&&y.channel_id&&f.set(y.channel_id,(f.get(y.channel_id)||0)+1);return f},[s]),d=(0,_.useMemo)(()=>{let f=0;return l.forEach(y=>{f+=y}),f},[l]),{dmUnread:p,channelUnread:m}=(0,_.useMemo)(()=>{if(!t)return{dmUnread:0,channelUnread:0};let f=new Set(t.filter(g=>g.isDm).map(g=>g.id)),y=0,h=0;return l.forEach((g,v)=>{f.has(v)?y+=g:h+=g}),{dmUnread:y,channelUnread:h}},[t,l]);return{unreadByChannel:l,totalUnread:d,dmUnread:p,channelUnread:m,isLoading:i,isFetching:o,error:c,refetch:a}}function bc(){let e=W();return de({mutationFn:t=>S("create",t),onSuccess:(t,n)=>{let r=n.parent_path;r&&e.invalidateQueries({queryKey:R.children(r)})}})}function wc(){let e=W();return de({mutationFn:t=>S("update",t),onSuccess:(t,n)=>{let r=n.path;if(r){e.invalidateQueries({queryKey:R.item(r)});let s=r.split("/");s.pop();let i=s.join("/");i&&e.invalidateQueries({queryKey:R.children(i)})}}})}function Sc(){return de({mutationFn:e=>S("update-principal",e),onSuccess:(e,t)=>{if(!ce)return;let n=e&&typeof e=="object"&&e.metadata?e.metadata:{...ce.metadata??{},...typeof t.language=="string"?{language:t.language}:{},...typeof t.timezone=="string"?{timezone:t.timezone}:{},..."avatar_file_id"in t?{avatar_file_id:t.avatar_file_id}:{}};ce={...ce,displayName:typeof t.display_name=="string"?t.display_name:ce.displayName,metadata:n},Rl()}})}function Rc(){let e=W();return de({mutationFn:t=>S("delete",t),onSuccess:(t,n)=>{let r=n.path;if(r){e.removeQueries({queryKey:R.item(r)});let s=r.split("/");s.pop();let i=s.join("/");i&&e.invalidateQueries({queryKey:R.children(i)})}}})}function Cc(){let e=W();return de({mutationFn:t=>S("move",t),onSuccess:(t,n)=>{let r=n.path,s=n.new_parent_path;if(r){e.invalidateQueries({queryKey:R.item(r)});let i=r.split("/");i.pop();let o=i.join("/");o&&e.invalidateQueries({queryKey:R.children(o)})}s&&e.invalidateQueries({queryKey:R.children(s)})}})}function xc(){let e=W();return de({mutationFn:t=>S("link",t),onSuccess:(t,n)=>{let r=n.source_id,s=n.target_id;r&&e.invalidateQueries({queryKey:R.edges(r)}),s&&e.invalidateQueries({queryKey:R.edges(s)})}})}function Pc(e,t){let n=W(),{optimistic:r,...s}=t??{};return de({mutationFn:i=>S(e,i),onMutate:r?async i=>{await n.cancelQueries({queryKey:r.queryKey});let o=n.getQueryData(r.queryKey);return n.setQueryData(r.queryKey,c=>r.update(c,i)),{previous:o}}:void 0,onError:(i,o,c)=>{r&&c?.previous!==void 0&&n.setQueryData(r.queryKey,c.previous),s.onError?.(i)},onSuccess:s.onSuccess,onSettled:r?()=>{n.invalidateQueries({queryKey:r.queryKey})}:void 0})}function Tc(e,t,n){let r,s,i,o=!0;if(typeof e=="string")r=e,s=t,i=n;else{s=e;let l=t;r=l.eventType,i=l.filter,o=l.enabled??!0}let c=(0,_.useRef)(s),a=(0,_.useRef)(i);(0,_.useEffect)(()=>{c.current=s,a.current=i},[s,i]),(0,_.useEffect)(()=>o?re(r,d=>c.current(d),a.current?d=>a.current(d):void 0):void 0,[r,o])}function Ec(e){let{queryKey:t,queryFn:n,eventType:r,filter:s,enabled:i=!0,debounceMs:o=500}=e,c=W(),a=(0,_.useRef)(s);a.current=s;let l=(0,_.useRef)(null),d=j({queryKey:t,queryFn:n,enabled:i});return(0,_.useEffect)(()=>{if(!i)return;let p=re(r,()=>{l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{Ee(c,t,{exact:!0})},o)},m=>a.current?.(m)??!0);return()=>{p(),l.current&&clearTimeout(l.current)}},[r,i,o,c,JSON.stringify(t)]),d}function Cn(e){Y();let t=H(),n=(0,_.useMemo)(()=>e?typeof e=="string"?{path:e}:e:null,[typeof e=="string"?e:JSON.stringify(e)]),r=!!t&&!!n&&!!(n.key||n.path||n.item_id),s=n?.key??n?.path??n?.item_id??"",i=["vfs",t??"__unscoped__","arrangement",s,n?.scope_id??""],o=j({queryKey:i,staleTime:1/0,retry:!1,meta:{arrangementRealtime:!0},queryFn:async()=>{if(!n)return null;let m=await S("resolve-arrangement",{...n,_scope_path:t});if(m?.success===!1)throw new Error(m?.error||"Arrangement could not be loaded");return m??null},enabled:r}),c=o.data??null,a=(0,_.useMemo)(()=>c?.resolved_children??[],[c]),l=c?.resolution_level??null,d=(0,_.useMemo)(()=>{let f=(c?.type_data??null)?.order;return Array.isArray(f)?f:null},[c]),p=(0,_.useCallback)(m=>{if(!d||!m?.length)return m??[];let f=v=>v.id??v.name??"",y=new Map(d.map((v,x)=>[v,x])),h=[],g=[];for(let v of m)(y.has(f(v))?h:g).push(v);return h.sort((v,x)=>y.get(f(v))-y.get(f(x))),[...h,...g]},[d]);return{...o,arrangement:c,resolvedChildren:a,resolutionLevel:l,order:d,sourceScopeId:c?.scope_item_id??null,arrangementQueryKey:i,applyTo:p}}function Ic(e){let{origin:t,originField:n,fallbackUrl:r,mintError:s,scopeId:i,scopePath:o}=e,c=Y(),a=It(),l=i??a?.scope_id??null,d=(0,_.useMemo)(()=>{if(!t)return null;let C="/accounts/",k=t.indexOf(C);if(k===-1)return null;let U=t.indexOf("/",k+C.length);return U===-1?t:t.slice(0,U)},[t]),p=o??d??a?.scope_path??null,m=n?.trim()||null,f=`${c}
4
4
  ${l??""}
5
5
  ${p??""}
6
6
  ${m??""}
7
- ${t??""}`,[y,h]=(0,_.useState)(null),g=(0,_.useRef)({key:f,found:null,earlyContentPaths:new Set}),v=y?.key===f?y:null;(0,_.useLayoutEffect)(()=>{g.current={key:f,found:v,earlyContentPaths:new Set}},[f]);let C=j({queryKey:["vfs",p??"__unscoped__","minted-asset",m??"",t??""],queryFn:async()=>{let R=await x("query",{scope_path:p,filters:{[`field.${m}`]:t},limit:1}),k=R.content?.items??R.items??[],U=k[0]?ge(k[0]):null;if(!U)return null;let I=(await rr(U.path)).some(B=>B.item_type==="file"&&!!B.type_data?.file_ref);return{asset:U,hasBytes:I}},enabled:!!(t&&p&&m&&!s),refetchInterval:R=>g.current.key===f&&g.current.found?.hasBytes||R.state.data?.hasBytes?!1:1500});(0,_.useEffect)(()=>{let R=C.data;if(!R||g.current.key!==f)return;let k=g.current.found,U={key:f,itemId:R.asset.id,itemPath:R.asset.path,displayName:typeof R.asset.type_data?.display_name=="string"?R.asset.type_data.display_name:R.asset.name,hasBytes:R.hasBytes||!!(k?.itemId===R.asset.id&&k.hasBytes)};g.current.found=U,h(U)},[C.data,f]);let q=!!(t&&l)&&!s&&!v?.hasBytes;return(0,_.useEffect)(()=>{if(!(!q||!l))return yn(l,["asset.materialized","content.written"])},[q,l]),(0,_.useEffect)(()=>{if(!q||!t||!l)return;let R=f,k=M=>M?.payload??M,U=M=>{let Q=k(M)?.scope_id??M?.scope_id;return typeof Q=="string"?Q:void 0},N=M=>{let Q=k(M)?.item_path??M?.item_path;return typeof Q=="string"&&Q?Q:void 0},I=(M,E)=>{let Q=E.replace(/\/+$/,"");return M===Q||M.startsWith(`${Q}/`)},B=[ne("asset.materialized",M=>{if(g.current.key!==R)return;let E=k(M);if(typeof E?.item_id!="string"||!E.item_id)return;let Q=g.current.found,O=typeof E.item_path=="string"?E.item_path:void 0,ce=!!E.has_bytes||!!(O&&Array.from(g.current.earlyContentPaths).some(Oe=>I(Oe,O)))||!!(Q&&Q.itemId===E.item_id&&Q.hasBytes),H={key:R,itemId:E.item_id,itemPath:O,displayName:typeof E.display_name=="string"?E.display_name:void 0,hasBytes:ce};g.current.found=H,h(H)},M=>{let E=U(M);return(!E||E===l)&&k(M)?.origin===t}),ne("content.written",M=>{if(g.current.key!==R)return;let E=N(M);if(!E)return;let Q=g.current.found;if(!Q?.itemPath||!I(E,Q.itemPath)){if(g.current.earlyContentPaths.add(E),g.current.earlyContentPaths.size>128){let ce=g.current.earlyContentPaths.values().next().value;ce&&g.current.earlyContentPaths.delete(ce)}return}if(Q.hasBytes)return;let O={...Q,hasBytes:!0};g.current.found=O,h(O)},M=>{let E=U(M);return(!E||E===l)&&!!N(M)})];return()=>B.forEach(M=>M())},[q,t,l,f]),{state:s?"failed":t?v?v.hasBytes?"ready":"materializing":"pending":"idle",itemId:v?.itemId,itemPath:v?.itemPath,displayName:v?.displayName,fallbackUrl:r??void 0,error:s??void 0}}function Pc(e,t){let n=(0,Cn.useSyncExternalStore)(ke,ie,ie),r=he(),s=Z(),i=r?.kind==="space",o=xn(i&&s?{key:e,scope_id:r.id}:null),c=(0,Cn.useMemo)(()=>{let f=o.applyTo([...t]);if(e!=="channel-order")return f;let y=new Set(o.order??[]),h=f.filter(v=>!y.has(v.id)),g=v=>Date.parse(v.createdAt??"")||0;return h.sort((v,C)=>g(C)-g(v)),[...h,...f.filter(v=>y.has(v.id))]},[e,t,o.applyTo,o.order]),a=V(),l=(0,Cn.useRef)(!1),d=!!(i&&!o.error&&o.arrangement?.item_id&&o.resolutionLevel==="member"&&o.arrangement.write_target_id===o.arrangement.item_id),p=ve({mutationFn:async f=>{let y=await x("update",{_scope_path:f.scopePath,id:f.arrangementId,type_data:{order:f.ids}});if(y?.success===!1)throw new Error(y.error||"Order could not be saved");return y},onSettled:(f,y,h)=>ln(a,h.queryKey)});async function m(f){if(!d||!s||n!==ie()||Z()!==s)throw new Error("Personal order is not available in this Space");if(l.current)throw new Error("An order change is already being saved");let y=t.map(R=>R.id);if(f.length!==y.length||new Set(f).size!==y.length||y.some(R=>!f.includes(R)))throw new Error("Order must include each displayed item exactly once");let h=a.getQueryData(o.arrangementQueryKey);if(h?.item_id!==o.arrangement.item_id||JSON.stringify(h?.type_data?.order??[])!==JSON.stringify(o.order??[]))throw new Error("The saved order changed. Try dragging again");let g=c.map(R=>R.id);if(f.every((R,k)=>g[k]===R))return;let v=new Set(y),C=0,F=[...(o.order??[]).map(R=>v.has(R)?f[C++]:R),...f.slice(C)];l.current=!0;try{return await p.mutateAsync({ids:F,scopePath:s,arrangementId:o.arrangement.item_id,queryKey:o.arrangementQueryKey})}finally{l.current=!1}}return{items:c,ready:d,supported:i,contextKey:`${n}:${s}:${e}`,isLoading:i&&o.isLoading,error:o.error,refetch:o.refetch,isSaving:p.isPending,saveError:p.error,reorder:m}}var pi=/^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,_l=/^[A-Za-z_:][A-Za-z0-9_:.-]{0,127}$/,Tc=new Map,Ec=new Map,Pn=class extends Error{constructor(n,r,s,i){super(n);X(this,"code");X(this,"status");X(this,"eventId");this.name="InteractionTrackingError",this.code=r,this.status=s,this.eventId=i}};function Tn(e){let t=e?Gn.find(n=>n.id===e):Gn.find(n=>n.default===!0)??(Gn.length===1?Gn[0]:void 0);if(!t)throw new TypeError("No unambiguous source is declared for this release");if(!t.id||!Number.isInteger(t.version)||t.version<1)throw new TypeError("The release source declaration is invalid");return t}function cs(e,t){let n=t.adapters?.find(r=>r.type===e);if(!n)throw new TypeError(`The source does not declare a ${e} adapter`);return n}function vl(e){return e.length>0&&e.length<=128&&!/[\u0000-\u001f\u007f]/.test(e)}function bl(e,t){if(!vl(t)||!e.observations?.includes(t))throw new TypeError("The observation is not declared by this release source")}function mi(e){if(!(typeof window>"u"||e.storage==="memory"))try{return e.storage==="session"?window.sessionStorage:window.localStorage}catch{return}}function wl(e){try{let t=mi(e)?.getItem(e.key)??void 0;return t&&pi.test(t)?t:void 0}catch{return}}function Ic(e,t){try{mi(e)?.setItem(e.key,t)}catch{}}function Ac(e){let t=e.identity?.visitor;if(!t?.key)throw new TypeError("The source visitor identity policy is invalid");let n=wl(t)??Tc.get(e.id);if(n)return n;let r=crypto.randomUUID();return Tc.set(e.id,r),Ic(t,r),r}function kc(e,t=Date.now()){let n=e.identity?.session;if(!n?.key||!Number.isInteger(n.idle_seconds)||n.idle_seconds<1)throw new TypeError("The source session identity policy is invalid");let r;try{let l=mi(n)?.getItem(n.key);r=l?JSON.parse(l):void 0}catch{r=void 0}let s=Ec.get(e.id),i=r&&typeof r.id=="string"&&pi.test(r.id)&&typeof r.lastSeenAt=="number"?{id:r.id,lastSeenAt:r.lastSeenAt}:s,o=n.idle_seconds*1e3,a=i&&t-i.lastSeenAt>=0&&t-i.lastSeenAt<o?{id:i.id,lastSeenAt:t}:{id:crypto.randomUUID(),lastSeenAt:t};return Ec.set(e.id,a),Ic(n,JSON.stringify(a)),a.id}function Sl(e,t){let n=e.source_keys?.query;if(!Array.isArray(n)||n.length===0)return;let r;try{r=new URL(t)}catch{return}let s=e.source_keys?.max_value_length,i=Number.isInteger(s)?Math.min(Math.max(s??1,1),4096):512,o=Object.fromEntries(n.flatMap(c=>{if(typeof c!="string"||c.length===0||c.length>128)return[];let a=r.searchParams.get(c);return a?[[c,a.slice(0,i)]]:[]}));return Object.keys(o).length>0?o:void 0}async function Ft(e,t={},n={}){let r=Tn(n.source);if(bl(r,e),!t||typeof t!="object"||Array.isArray(t))throw new TypeError("properties must be an object");let s=n.eventId??crypto.randomUUID(),i=n.visitorId??Ac(r),o=n.sessionId??kc(r);if(![s,i,o].every(g=>pi.test(g)))throw new TypeError("event, visitor, and session IDs must be UUIDs");let c=n.pageUrl??(typeof window<"u"?window.location.href:void 0);if(!c)throw new TypeError("pageUrl is required outside a browser");let a=n.occurredAt??new Date().toISOString();if(Number.isNaN(Date.parse(a)))throw new TypeError("occurredAt is invalid");let l=n.referrer??(typeof document<"u"&&document.referrer||void 0),d=Sl(r,c),p=d?{...t,source_keys:d}:t,m=It(),f=`${xe.replace(/\/+$/,"")}/d/${encodeURIComponent(m)}/interactions`,y;try{y=await fetch(f,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({source:r.id,page_url:c,visitor_id:i,session_id:o,referrer:l,events:[{id:s,event_type:e,occurred_at:a,properties:p}]}),signal:n.signal,credentials:"omit",keepalive:n.keepalive??!1})}catch(g){throw new Pn(g instanceof Error?g.message:"Observation transport network error","OBSERVATION_NETWORK_ERROR",0,s)}let h=null;try{h=await y.json()}catch{}if(!y.ok||h?.success!==!0){let g=h;throw new Pn(g?.message||g?.error||`Observation transport failed (${y.status})`,g?.error||"OBSERVATION_TRANSPORT_FAILED",y.status,s)}return h}function Mc(e={},t={}){let n=Tn(t.source),r=cs("page_view",n),s=typeof document>"u"||!r.title_property?{}:{[r.title_property]:document.title.slice(0,512)};return Ft(r.observation,{...s,...e},{...t,source:n.id})}function Oc(e,t={},n={}){if(!e||e.length>128)throw new TypeError("actionId is invalid");let r=Tn(n.source),s=cs("declared_action",r),i=s.id_property?{[s.id_property]:e}:{};return Ft(s.observation,{...t,...i},{...n,source:r.id})}function Fc(){try{let e=Tn();return cs("form_receipt",e),{visitor_id:Ac(e),session_id:kc(e),source:e.id}}catch{return}}function qc(e,t={}){let n=Tn(t.source),r=cs("form_receipt",n);return Ft(r.observation,e,{...t,source:n.id})}var dr;function us(e={}){if(typeof window>"u"||typeof document>"u")return()=>{};if(dr)return dr;if(window.__FSAOS_CONFIG__?.tracking?.enabled===!1)return()=>{};let t;try{t=Tn(e.source)}catch{return()=>{}}let n=e.pageViews===!1?[]:t.adapters.filter(m=>m.type==="page_view"),r=e.declaredActions===!1?[]:t.adapters.filter(m=>m.type==="declared_action"),s="",i=()=>{if(window.location.href!==s){s=window.location.href;for(let m of n){let f=m.title_property?{[m.title_property]:document.title.slice(0,512)}:{};Ft(m.observation,f,{source:t.id,keepalive:!0}).catch(()=>{})}}},o=m=>{if(m.target instanceof Element)for(let f of r){let y=f.attribute;if(!y||!_l.test(y))continue;let h=m.target.closest(`[${y}]`);if(!h)continue;let g=h.getAttribute(y)?.trim();if(!g||g.length>128)continue;let v={};f.id_property&&(v[f.id_property]=g),f.element_property&&(v[f.element_property]=h.tagName.toLowerCase()),Ft(f.observation,v,{source:t.id,keepalive:!0}).catch(()=>{})}},c=window.history.pushState,a=window.history.replaceState,l=()=>queueMicrotask(i),d=n.some(m=>m.history===!0),p=n.some(m=>m.pageshow===!0);return d&&(window.history.pushState=function(...f){c.apply(this,f),l()},window.history.replaceState=function(...f){a.apply(this,f),l()},window.addEventListener("popstate",i)),p&&window.addEventListener("pageshow",i),r.length>0&&document.addEventListener("click",o,{capture:!0}),n.length>0&&queueMicrotask(i),dr=()=>{window.removeEventListener("popstate",i),window.removeEventListener("pageshow",i),document.removeEventListener("click",o,{capture:!0}),d&&(window.history.pushState=c,window.history.replaceState=a),dr=void 0},dr}var En;se(()=>{En=void 0});function ls(e){if(En)return En.accountPath!==e.accountPath?Promise.reject(new Error("Reset the session before changing accounts")):En.promise;let t=re(),n=()=>{if(t!==re())throw new Error("Workspace session changed")},r=(async()=>{let s=await ft();if(n(),!s.principal_id)throw new Error("Workspace initialization requires an authenticated principal");let i=await T().fetchQuery({queryKey:S.memberships(s.principal_id),queryFn:Zr,staleTime:12e4,retry:!1});n();let o=i.find(p=>p.path===e.accountPath&&p.isAccount&&!p.isSpace);if(!o)throw new Error("Authenticated account membership is unavailable");let c=i.find(p=>p.isSpace&&p.accountId===o.personalSpaceId&&p.path===o.personalSpacePath);if(!c||!o.personalSpacePath)throw new Error("A provisioned default Space membership is required");let a=je(o),l=je(c),d=de();if(d&&d.id!==a.id)throw new Error("Reset the session before changing accounts");return d||Tt(a,{activate:!1}),await Ot(o.personalSpacePath,p=>{let m=i.find(f=>f.accountId===p&&(f.isAccount||f.isSpace));return m?je(m):null},{initialAnchor:l}),n(),{home:a,defaultSpace:l,memberships:i}})().catch(s=>{throw t===re()&&(En=void 0),s});return En={accountPath:e.accountPath,promise:r},r}var qt,pr,fr;se(()=>{pr?.(),pr=void 0,qt=void 0,fr=void 0});function Qc(e={}){if(qt)return e.workspace&&e.workspace.accountPath!==fr?Promise.reject(new Error("Initialize workspace through initializeWorkspace, or dispose the existing runtime first")):qt;fr=e.workspace?.accountPath;let t=re();return qt=(async()=>{let n=e.tracking??!0,r=n===!1?()=>{}:us(typeof n=="object"?n:{});pr=r;try{let s=e.session===!1?null:await ft(),i=e.workspace?await ls(e.workspace):void 0;if(t!==re())throw new Error("Session changed during initialization");let o=!1;return{session:s,workspace:i,dispose(){o||(o=!0,r(),t===re()&&(qt=void 0,fr=void 0,pr=void 0))}}}catch(s){throw r(),t===re()&&(qt=void 0,fr=void 0,pr=void 0),s}})(),qt}async function hi(e){try{return await x("execution-control-transition",e)}catch(t){if(!(t instanceof Pe)||t.status<500)throw t;return await new Promise(n=>setTimeout(n,250)),x("execution-control-transition",e)}}function gi(e){let t=e.conversation_anchor_item_id??e.conversation_root_id;return t?{...e,conversation_anchor_item_id:t,conversation_root_id:e.conversation_root_id??t}:e}async function Dc(e,t={}){let n=e.trim();if(!n)throw new TypeError("cancelTurn requires a request message id");let r=(t.idempotencyKey??`cancel:${n}`).trim();if(!r)throw new TypeError("cancelTurn requires a non-empty idempotency key");if(r.length>128)throw new TypeError("cancelTurn idempotency key must be 128 characters or fewer");let s=await hi({op:"request",command:"cancel",delivery:"immediate",request_message_id:n,idempotency_key:r,...t.scopePath?{_scope_path:t.scopePath}:{}}),i=s.outcome??s.state??s.status;return gi(i?{...s,state:i}:s)}async function Uc(e,t,n={}){let r=e.trim(),s=t.trim();if(!r)throw new TypeError("steerTurn requires an active request message id");if(!s)throw new TypeError("steerTurn requires a selected queue entry id");if(r===s)throw new TypeError("steerTurn cannot target the active request message");let i=(n.idempotencyKey??`steer:${r}:${s}`).trim();if(!i)throw new TypeError("steerTurn requires a non-empty idempotency key");if(i.length>128)throw new TypeError("steerTurn idempotency key must be 128 characters or fewer");let o=await hi({op:"request",command:"steer",delivery:"immediate",request_message_id:r,selected_queue_entry_id:s,idempotency_key:i,...n.scopePath?{_scope_path:n.scopePath}:{}}),c=o.outcome??o.state??o.status;return gi(c?{...o,state:c}:o)}async function Nc(e,t={}){let n=e.trim();if(!n)throw new TypeError("cancelQueuedTurn requires a queue entry id");let r=(t.idempotencyKey??`cancel-queue:${n}`).trim();if(!r)throw new TypeError("cancelQueuedTurn requires a non-empty idempotency key");if(r.length>128)throw new TypeError("cancelQueuedTurn idempotency key must be 128 characters or fewer");let s=await hi({op:"cancel_queue_entry",queue_entry_id:n,idempotency_key:r,...t.scopePath?{_scope_path:t.scopePath}:{}}),i=s.outcome??s.state??s.status;return gi(i?{...s,outcome:i}:s)}var Rl=/^[a-z][a-z0-9_-]{0,63}$/,xl=/^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,In=class extends Error{constructor(n,r,s,i){super(n);X(this,"code");X(this,"status");X(this,"fillId");this.name="FormSubmissionError",this.code=r,this.status=s,this.fillId=i}};async function Kc(e,t,n={}){if(!Rl.test(e))throw new TypeError("capabilityId is invalid");if(!t||typeof t!="object"||Array.isArray(t))throw new TypeError("fields must be an object");let r=n.fillId??crypto.randomUUID();if(!xl.test(r))throw new TypeError("fillId must be a UUID");let s=It(),i=n.pageUrl??(typeof window<"u"?window.location.href:void 0);if(!i)throw new TypeError("pageUrl is required outside a browser");let o=`${xe.replace(/\/+$/,"")}/d/${encodeURIComponent(s)}/actions/${encodeURIComponent(e)}`,c=Fc(),a=c?{visitor_id:c.visitor_id,session_id:c.session_id}:void 0,l;try{l=await fetch(o,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({fill_id:r,page_url:i,fields:t,...a?{attribution:a}:{}}),signal:n.signal,credentials:"omit"})}catch(p){throw new In(p instanceof Error?p.message:"Form submission network error","FORM_NETWORK_ERROR",0,r)}let d=null;try{d=await l.json()}catch{}if(!l.ok||d?.success!==!0){let p=d;throw new In(p?.message||p?.error||`Form submission failed (${l.status})`,p?.error||"FORM_SUBMISSION_FAILED",l.status,r)}try{await qc({fill_id:r,action_id:e,release_id:d.release_id},{eventId:r,pageUrl:i,signal:n.signal,keepalive:!0,...c?{source:c.source,visitorId:c.visitor_id,sessionId:c.session_id}:{}})}catch{}return d}var yi=Y(ue(),1),Wc=Y(jc(),1);function Bc(e){return x("read",{path:e})}function Vc(e,t){return x("list",{path:e,...t})}function Hc(e){return x("create",e)}function $c(e){return x("update",e)}function Gc(e){return x("create",e)}function zc(e,t){let r=(typeof window<"u"&&window.__FSAOS_CONFIG__||{}).scopePath||"";return x("tools/call",{name:e,instance_path:r,...t||{}})}function Jc(e,t,n){return x("signal",{target_id:e,event_name:t,payload:n||{}})}function Yc(e){return((typeof window<"u"&&window.__FSAOS_CONFIG__||{}).edgeBaseUrl||"")+e}var Xc={signIn:e=>e.provider?W.auth.signInWithOAuth({provider:e.provider,options:{redirectTo:e.redirectTo||window.location.href}}):W.auth.signInWithPassword({email:e.email,password:e.password}),signUp:e=>W.auth.signUp({email:e.email,password:e.password,options:{data:e.metadata||{}}}),signOut:async()=>{await W.auth.signOut(),un(),T().clear()},getSession:()=>W.auth.getSession().then(e=>e.data.session),getUser:()=>W.auth.getUser().then(e=>e.data.user),onAuthStateChange:e=>{let{data:{subscription:t}}=W.auth.onAuthStateChange((n,r)=>{e({event:n,session:r,user:r?.user??null})});return()=>t?.unsubscribe()},resetPassword:e=>W.auth.resetPasswordForEmail(e),signInWithMagicLink:(e,t)=>W.auth.signInWithOtp({email:e,options:{emailRedirectTo:t||window.location.href}})};function Zc(){let e=document.getElementById("root");if(e)try{let t=window.__FSAOS_COMPONENT__;if(!t){e.innerHTML='<div style="padding:2rem;color:#ef4444;font-family:system-ui"><h2>Component Error</h2><pre>No component found. The bundle may have failed to load.</pre></div>';return}let n=t.default||t,r=window.__FSAOS_ITEM_DATA__||null,s=r?{item:r,...r}:{};(0,Wc.createRoot)(e).render((0,yi.createElement)(Bn,{client:T()},(0,yi.createElement)(n,s)))}catch(t){console.error("[FSAOS] Failed to mount root component:",t),e.innerHTML='<div style="padding:2rem;color:#ef4444;font-family:system-ui"><h2>Component Error</h2><pre>'+(t.message||t)+"</pre></div>"}}function eu(){let e=window.React,t=window.ReactDOM,n=window.__FSAOS_GATEWAY__,r=window.__FSAOS_UI__;if(!n){console.error("[FSAOS] Cannot set up require shim: __FSAOS_GATEWAY__ not found");return}let s={react:e,"react-dom":t,"react-dom/client":t,"react/jsx-runtime":{jsx:e?.createElement,jsxs:e?.createElement,Fragment:e?.Fragment},"@fsaos/kernel":n,"@fsaos/react":n,"@fsaos/gateway":n,"@fsaos/ui":r||{}};window.require=function(o){if(s[o])return s[o];throw new Error("[FSAOS] Module not found: "+o)},window.__FSAOS_MOUNT__=n.mount}function Cl(e){return e.split("_").map(t=>t.charAt(0).toUpperCase()+t.slice(1)).join(" ")}function Pl(e,t){return t&&t.length>0?"select":e==="boolean"?"toggle":e==="integer"||e==="number"?"range":e==="string"?"text":"none"}function Tl(e,t){return!(e==="object"||e==="array")}function El(e){return["string","number","integer","boolean"].includes(e)}function Il(e){return e!=="object"&&e!=="array"}function tu(e,t,n,r){let s=e?.properties;if(!s||typeof s!="object")return[];let i=[];for(let[o,c]of Object.entries(s)){let a=c.type||"string",l=c.enum,d=Tl(a,l),p=El(a),m=Pl(a,l);i.push({key:o,label:c.title||Cl(o),type:a,description:c.description,enum_values:l,default_value:n[o]??r[o]??c.default,editable:t,filterable:d,sortable:p,filter_widget:m})}return i}function _i(e){let t=e.default_data||{},n=e.field_defaults||{},r=tu(e.input_schema,!0,t,n),s=tu(e.system_schema,!1,t,n),i=[...r,...s],o=i.filter(l=>Il(l.type)),c=i.filter(l=>l.filterable),a=i.filter(l=>l.sortable);return{fields:i,columns:o,filterable:c,sortable:a,form_fields:r,system_fields:s}}function nu(e){return{field:"updated_at",direction:"desc"}}function ru(e){let t=_i(e),n=new Set(e.input_schema?.required||[]);return t.form_fields.filter(r=>n.has(r.key)||r.default_value===void 0)}var ye=Y(ue(),1);var Al=0;function kl(){return`upload_${Date.now()}_${++Al}`}async function su(e,t,n,r){let s=t.name||(e instanceof File?e.name:`file-${Date.now()}`),i=e.type||"application/octet-stream",o=t.itemType||"file",c={parent_path:t.parentPath,item_type:o,name:s,type_data:{...t.typeData||{},file_source:{type:"upload",content_type:i}}};t.cardParentPath&&(c.card_parent_path=t.cardParentPath);let l=await x("create",c);if(!l.id)throw new Error(l.error||l.message||"Failed to create file item");let d=l.id,p=l.path;if(l.storage_completed&&l.file_ref)return{itemId:d,itemPath:p,fileRef:l.file_ref};let m=l.storage_key,f=l.upload_token,y=l.storage_worker_url||"https://fsaos-storage.radns.workers.dev";if(!m)throw new Error("Gateway returned no storage_key \u2014 file_source may not be supported for this item type");await Ml(y,m,f,e,i,n,r);let h=await iu(d,m,i);return{itemId:d,itemPath:p,fileRef:h}}function Ml(e,t,n,r,s,i,o){return new Promise((c,a)=>{let l=new XMLHttpRequest;if(l.open("PUT",`${e}/upload`),l.setRequestHeader("X-Storage-Key",t),l.setRequestHeader("Content-Type",s),n&&l.setRequestHeader("X-Upload-Token",n),l.upload.onprogress=d=>{d.lengthComputable&&i&&i(Math.round(d.loaded/d.total*100))},l.onload=()=>{l.status>=200&&l.status<300?c():a(new Error(`Storage upload failed: HTTP ${l.status} \u2014 ${l.responseText?.slice(0,300)}`))},l.onerror=()=>a(new Error("Storage upload network error")),l.ontimeout=()=>a(new Error("Storage upload timed out")),o){if(o.aborted){a(new Error("Upload cancelled"));return}o.addEventListener("abort",()=>{l.abort(),a(new Error("Upload cancelled"))})}l.send(r)})}async function iu(e,t,n){let r=await Je(),s=await fetch(`${xe}/storage/upload-complete`,{method:"POST",headers:{"Content-Type":"application/json",...r?{Authorization:`Bearer ${r}`}:{}},body:JSON.stringify({item_id:e,storage_key:t,content_type:n})});if(!s.ok){let o=await s.text().catch(()=>"");throw new Error(`Upload confirmation failed: HTTP ${s.status} \u2014 ${o.slice(0,300)}`)}let i=await s.json();if(!i.success)throw new Error(i.error||i.message||"Upload confirmation rejected");return i.file_ref}function ou(){let[e,t]=(0,ye.useState)([]),n=V(),r=(0,ye.useRef)(e);r.current=e;let s=(0,ye.useCallback)((h,g)=>{t(v=>v.map(C=>C.id===h?{...C,...g}:C))},[]),i=(0,ye.useCallback)(h=>{t(g=>[...g,h])},[]),o=(0,ye.useCallback)(async(h,g,v,C,q)=>{let F=v.name||g.name,R=g.type||"application/octet-stream",k=v.itemType||"file",U=q?.itemId||null,N=q?.itemPath||null,I=q?.storageKey||null,B=q?.uploadToken||null,M=q?.storageWorkerUrl||null;try{if(!C||C==="create"){s(h,{status:"creating",error:null,_failedAt:null});let O=await x("create",{parent_path:v.parentPath,item_type:k,name:F,type_data:{...v.typeData||{},file_source:{type:"upload",content_type:R}}});if(!O.id)throw Object.assign(new Error(O.error||O.message||"Failed to create file item"),{_step:"create"});if(U=O.id,N=O.path,s(h,{itemId:U,itemPath:N}),O.storage_completed&&O.file_ref){s(h,{status:"complete",progress:100,fileRef:O.file_ref}),n.invalidateQueries({queryKey:S.children(v.parentPath)});return}if(I=O.storage_key,B=O.upload_token||"",M=O.storage_worker_url||"https://fsaos-storage.radns.workers.dev",s(h,{_storageKey:I,_uploadToken:B,_storageWorkerUrl:M}),!I)throw Object.assign(new Error("Gateway returned no storage_key"),{_step:"create"})}(!C||C==="create"||C==="upload")&&(s(h,{status:"uploading",progress:0,error:null,_failedAt:null}),await new Promise((O,ce)=>{let H=new XMLHttpRequest;s(h,{_xhr:H}),H.open("PUT",`${M}/upload`),H.setRequestHeader("X-Storage-Key",I),H.setRequestHeader("Content-Type",R),B&&H.setRequestHeader("X-Upload-Token",B),H.upload.onprogress=Oe=>{Oe.lengthComputable&&s(h,{progress:Math.round(Oe.loaded/Oe.total*100)})},H.onload=()=>{H.status>=200&&H.status<300?O():ce(Object.assign(new Error(`Storage upload failed: HTTP ${H.status}`),{_step:"upload"}))},H.onerror=()=>ce(Object.assign(new Error("Storage upload network error"),{_step:"upload"})),H.ontimeout=()=>ce(Object.assign(new Error("Storage upload timed out"),{_step:"upload"})),H.send(g)}),s(h,{progress:100,_xhr:null})),s(h,{status:"confirming",error:null,_failedAt:null});let E=await iu(U,I,R);s(h,{status:"complete",fileRef:E}),n.invalidateQueries({queryKey:S.children(v.parentPath)})}catch(E){let Q=E?.message||String(E),O=E?._step||"create";s(h,{status:"error",error:Q,_failedAt:O,_xhr:null})}},[s,n]),c=(0,ye.useCallback)((h,g)=>{let v=kl();i({id:v,file:h,status:"creating",progress:0,error:null,itemId:null,itemPath:null,fileRef:null,options:g,_storageKey:null,_uploadToken:null,_storageWorkerUrl:null,_xhr:null,_failedAt:null}),o(v,h,g)},[i,o]),a=(0,ye.useCallback)((h,g)=>{for(let v of h)c(v,g)},[c]),l=(0,ye.useCallback)(h=>{let g=r.current.find(q=>q.id===h);if(!g||g.status!=="error")return;let v=g._failedAt||"create",C=g._storageKey&&g.itemId?{storageKey:g._storageKey,uploadToken:g._uploadToken||"",storageWorkerUrl:g._storageWorkerUrl||"https://fsaos-storage.radns.workers.dev",itemId:g.itemId,itemPath:g.itemPath||""}:void 0;o(h,g.file,g.options,v,C)},[o]),d=(0,ye.useCallback)(h=>{let g=r.current.find(v=>v.id===h);g&&(g._xhr&&g._xhr.abort(),s(h,{status:"error",error:"Cancelled",_xhr:null,_failedAt:null}))},[s]),p=(0,ye.useCallback)(h=>{t(g=>g.filter(v=>v.id!==h))},[]),m=(0,ye.useCallback)(()=>{t(h=>h.filter(g=>g.status!=="complete"))},[]),f=e.some(h=>h.status==="creating"||h.status==="uploading"||h.status==="confirming"),y=e.map(({_storageKey:h,_uploadToken:g,_storageWorkerUrl:v,_xhr:C,_failedAt:q,...F})=>F);return{upload:c,uploadMultiple:a,uploads:y,retryUpload:l,cancelUpload:d,removeUpload:p,clearCompleted:m,isUploading:f}}var au=Y(ue(),1);async function vi(e,t){return await x("resolve-items",{context_id:e,item_type:t})}function cu(e,t){return(0,au.useSyncExternalStore)(ke,ie,ie),j({queryKey:["vfs",Z()??"__unscoped__","resolved-items",e??"",t],queryFn:()=>vi(e,t),enabled:!!(e&&t)})}var Me=Y(ue(),1);function ds(e,t){let n={artifacts:new Map,timeline:[]},r=new Map;function s(o){if(!o.action?.startsWith("artifact_"))return;let a,l=o.name;if(typeof l=="string"&&l.startsWith("{"))try{a=JSON.parse(l)}catch{return}else if(o.artifact_id)a=o;else return;switch(a.type){case"artifact_opened":{let d=Date.now();if(n.artifacts.set(a.artifact_id,{artifact_id:a.artifact_id,surface_type:a.surface_type,tool_id:a.tool_id,tool_name:a.tool_name,target_uri:a.target_uri,status:"streaming",content:"",total_chars:0,delta_count:0,artifact_item_uri:null,evidence_uri:null,meta:a.meta,started_at:d,completed_at:null}),r.has(a.tool_id)){let p=r.get(a.tool_id);n.timeline[p].artifact_ids.push(a.artifact_id)}else{let p=n.timeline.length;n.timeline.push({tool_id:a.tool_id,tool_name:a.tool_name,status:"started",target_uri:a.target_uri,started_at:d,completed_at:null,artifact_ids:[a.artifact_id]}),r.set(a.tool_id,p)}break}case"artifact_delta":{let d=n.artifacts.get(a.artifact_id);d&&(d.content+=a.content_delta,d.total_chars+=a.content_delta.length,d.delta_count+=1,a.target_uri&&!d.target_uri&&(d.target_uri=a.target_uri));break}case"artifact_done":{let d=n.artifacts.get(a.artifact_id);d&&(d.status=a.status,d.total_chars=a.total_chars,d.artifact_item_uri=a.artifact_item_uri,d.evidence_uri=a.evidence_uri,a.target_uri&&(d.target_uri=a.target_uri),(a.status==="completed"||a.status==="failed")&&(d.completed_at=Date.now()));let p=r.get(a.tool_id);if(p!==void 0){let m=n.timeline[p];a.status==="executing"?m.status="executing":a.status==="completed"?(m.status="completed",m.completed_at=Date.now()):a.status==="failed"&&(m.status="failed",m.completed_at=Date.now()),a.target_uri&&!m.target_uri&&(m.target_uri=a.target_uri)}break}}t(n)}return Kr(e,s)}function uu(e,t=!0){let[n,r]=(0,Me.useState)(new Map),[s,i]=(0,Me.useState)([]),o=(0,Me.useRef)({artifacts:new Map,timeline:[]});(0,Me.useEffect)(()=>!e||!t?void 0:ds(e,p=>{o.current=p,r(new Map(p.artifacts)),i([...p.timeline])}),[e,t]);let c=(0,Me.useCallback)(()=>{r(new Map),i([]),o.current={artifacts:new Map,timeline:[]}},[]),a=Array.from(n.values()).find(d=>d.surface_type==="file_editor"&&d.status==="streaming")??null,l=Array.from(n.values()).filter(d=>d.surface_type==="activity"&&(d.status==="streaming"||d.status==="executing"));return{artifacts:n,timeline:s,activeEditor:a,activeActivities:l,reset:c}}function lu(e,t=!0){let[n,r]=(0,Me.useState)([]);(0,Me.useEffect)(()=>!e||!t?void 0:ds(e,o=>{r([...o.timeline])}),[e,t]);let s=n.length>0?n[n.length-1]:null;return{timeline:n,latestActivity:s}}var fs=Y(ue(),1);function Ol(e,t,n,r){return["vfs","timeline-history",e,t??"__all__",n??500,r??0]}async function bi(e,t){let n=`${e}/datasets/agent-events`,r=t?.limit??500,s=t?.offset??0,i={limit:r,offset:s,sort:[{key:"seq",direction:"asc"}]};t?.turnId&&(i.filters=[{key:"turn_id",operator:"eq",value:t.turnId}]);try{let c=(await x("open",{path:n,mode:"extract",strategy:"rows",arguments:i}))?.content;return c?(c.rows??c.items??c.data??[]).map(Fl).sort((l,d)=>l.seq-d.seq):[]}catch(o){if(o?.status===404||o?.message?.includes("not found"))return[];throw o}}function du(e,t){let{turnId:n,limit:r=500,offset:s=0,enabled:i=!0,debounceMs:o=300}=t??{},c=e?`${e}/datasets/agent-events`:null,a=V(),l=(0,fs.useRef)(null),d=c?Ol(c,n,r,s):["vfs","timeline-history","__disabled__"],p=j({queryKey:d,queryFn:()=>bi(e,{turnId:n,limit:r,offset:s}),enabled:!!e&&i});return(0,fs.useEffect)(()=>{if(!c||!i)return;let m=ne("vfs_change",()=>{l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{a.invalidateQueries({queryKey:d})},o)},f=>{let y=f?.path;return y?y===c&&f.item_type==="dataset":!1});return()=>{m(),l.current&&clearTimeout(l.current)}},[c,i,o,a,JSON.stringify(d)]),{events:p.data??[],isLoading:p.isLoading,error:p.error,isFetching:p.isFetching,refetch:()=>{p.refetch()}}}function Fl(e){return{turn_id:String(e.turn_id??""),seq:Number(e.seq??0),kind:String(e.kind??""),status:String(e.status??""),title:String(e.title??""),tool_name:e.tool_name!=null?String(e.tool_name):void 0,tool_id:e.tool_id!=null?String(e.tool_id):void 0,evidence_uri:e.evidence_uri!=null?String(e.evidence_uri):void 0,artifact_item_uri:e.artifact_item_uri!=null?String(e.artifact_item_uri):void 0,preview:e.preview!=null?String(e.preview):void 0,duration_ms:e.duration_ms!=null?Number(e.duration_ms):void 0,started_at:String(e.started_at??""),completed_at:e.completed_at!=null?String(e.completed_at):void 0,error_type:e.error_type!=null?String(e.error_type):void 0,meta:e.meta!=null?e.meta:void 0}}var ps=Y(ue(),1);function fu(){(0,ps.useSyncExternalStore)(ke,ie,ie);let e=Z(),t=he(),n=xn(e?{key:"pinned",...t?{scope_id:t.id}:{}}:null),r=V(),s=n.resolvedChildren,i=!!(!n.error&&n.arrangement?.item_id&&n.resolutionLevel==="member"&&n.arrangement.write_target_id===n.arrangement.item_id),o=ve({mutationFn:async a=>{let l,d={_scope_path:a.scopePath};if(a.operation==="pin"?l=await x("create",{...d,parent_id:a.arrangementId,name:`pin-${a.target.id}`,item_type:"symlink",type_data:{target_item_id:a.target.id,target_type:a.target.item_type}}):a.operation==="unpin"?l=await x("delete",{...d,id:a.entry.id}):l=await x("update",{...d,id:a.arrangementId,type_data:{order:a.ids}}),l?.success===!1)throw new Error(l.error||"Pins could not be saved");return l},onSettled:(a,l,d)=>ln(r,d.queryKey)}),c=(0,ps.useCallback)(a=>!i||!e||Z()!==e?Promise.reject(new Error("Personal pins are not available in this context")):a.operation==="unpin"&&!s.some(l=>l.id===a.entry.id)?Promise.reject(new Error("Pin is outside this arrangement")):a.operation==="reorder"&&(new Set(a.ids).size!==s.length||a.ids.length!==s.length||s.some(l=>!a.ids.includes(l.id)))?Promise.reject(new Error("Order must include each pin exactly once")):a.operation==="pin"&&s.some(l=>l.symlink_type_data?.target_item_id===a.target.id)?Promise.resolve(null):o.mutateAsync({...a,scopePath:e,arrangementId:n.arrangement.item_id,arrangementPath:n.arrangement.item_path,queryKey:n.arrangementQueryKey}),[i,e,s,n.arrangement,n.arrangementQueryKey,o.mutateAsync]);return{entries:s,isLoading:n.isLoading,error:n.error,refetch:n.refetch,ready:i,isSaving:o.isPending,saveError:o.error,isPinned:a=>s.some(l=>l.symlink_type_data?.target_item_id===a),pin:a=>c({operation:"pin",target:a}),unpin:a=>{let l=s.find(d=>d.symlink_type_data?.target_item_id===a||d.id===a);return l?c({operation:"unpin",entry:l}):Promise.resolve(null)},reorder:a=>c({operation:"reorder",ids:a})}}tc(wi);return xu(wi);})();
7
+ ${t??""}`,[y,h]=(0,_.useState)(null),g=(0,_.useRef)({key:f,found:null,earlyContentPaths:new Set}),v=y?.key===f?y:null;(0,_.useLayoutEffect)(()=>{g.current={key:f,found:v,earlyContentPaths:new Set}},[f]);let x=j({queryKey:["vfs",p??"__unscoped__","minted-asset",m??"",t??""],queryFn:async()=>{let C=await S("query",{scope_path:p,filters:{[`field.${m}`]:t},limit:1}),k=C.content?.items??C.items??[],U=k[0]?ye(k[0]):null;if(!U)return null;let I=(await sr(U.path)).some($=>$.item_type==="file"&&!!$.type_data?.file_ref);return{asset:U,hasBytes:I}},enabled:!!(t&&p&&m&&!s),refetchInterval:C=>g.current.key===f&&g.current.found?.hasBytes||C.state.data?.hasBytes?!1:1500});(0,_.useEffect)(()=>{let C=x.data;if(!C||g.current.key!==f)return;let k=g.current.found,U={key:f,itemId:C.asset.id,itemPath:C.asset.path,displayName:typeof C.asset.type_data?.display_name=="string"?C.asset.type_data.display_name:C.asset.name,hasBytes:C.hasBytes||!!(k?.itemId===C.asset.id&&k.hasBytes)};g.current.found=U,h(U)},[x.data,f]);let q=!!(t&&l)&&!s&&!v?.hasBytes;return(0,_.useEffect)(()=>{if(!(!q||!l))return yn(l,["asset.materialized","content.written"])},[q,l]),(0,_.useEffect)(()=>{if(!q||!t||!l)return;let C=f,k=M=>M?.payload??M,U=M=>{let Q=k(M)?.scope_id??M?.scope_id;return typeof Q=="string"?Q:void 0},N=M=>{let Q=k(M)?.item_path??M?.item_path;return typeof Q=="string"&&Q?Q:void 0},I=(M,E)=>{let Q=E.replace(/\/+$/,"");return M===Q||M.startsWith(`${Q}/`)},$=[re("asset.materialized",M=>{if(g.current.key!==C)return;let E=k(M);if(typeof E?.item_id!="string"||!E.item_id)return;let Q=g.current.found,O=typeof E.item_path=="string"?E.item_path:void 0,ue=!!E.has_bytes||!!(O&&Array.from(g.current.earlyContentPaths).some(Oe=>I(Oe,O)))||!!(Q&&Q.itemId===E.item_id&&Q.hasBytes),V={key:C,itemId:E.item_id,itemPath:O,displayName:typeof E.display_name=="string"?E.display_name:void 0,hasBytes:ue};g.current.found=V,h(V)},M=>{let E=U(M);return(!E||E===l)&&k(M)?.origin===t}),re("content.written",M=>{if(g.current.key!==C)return;let E=N(M);if(!E)return;let Q=g.current.found;if(!Q?.itemPath||!I(E,Q.itemPath)){if(g.current.earlyContentPaths.add(E),g.current.earlyContentPaths.size>128){let ue=g.current.earlyContentPaths.values().next().value;ue&&g.current.earlyContentPaths.delete(ue)}return}if(Q.hasBytes)return;let O={...Q,hasBytes:!0};g.current.found=O,h(O)},M=>{let E=U(M);return(!E||E===l)&&!!N(M)})];return()=>$.forEach(M=>M())},[q,t,l,f]),{state:s?"failed":t?v?v.hasBytes?"ready":"materializing":"pending":"idle",itemId:v?.itemId,itemPath:v?.itemPath,displayName:v?.displayName,fallbackUrl:r??void 0,error:s??void 0}}function Ac(e,t){let n=(0,xn.useSyncExternalStore)(be,Z,Z),r=ge(),s=H(),i=r?.kind==="space",o=Cn(i&&s?{key:e,scope_id:r.id}:null),c=(0,xn.useMemo)(()=>{let f=o.applyTo([...t]);if(e!=="channel-order")return f;let y=new Set(o.order??[]),h=f.filter(v=>!y.has(v.id)),g=v=>Date.parse(v.createdAt??"")||0;return h.sort((v,x)=>g(x)-g(v)),[...h,...f.filter(v=>y.has(v.id))]},[e,t,o.applyTo,o.order]),a=W(),l=(0,xn.useRef)(!1),d=!!(i&&!o.error&&o.arrangement?.item_id&&o.resolutionLevel==="member"&&o.arrangement.write_target_id===o.arrangement.item_id),p=de({mutationFn:async f=>{let y=await S("update",{_scope_path:f.scopePath,id:f.arrangementId,type_data:{order:f.ids}});if(y?.success===!1)throw new Error(y.error||"Order could not be saved");return y},onSettled:(f,y,h)=>Ye(a,h.queryKey)});async function m(f){if(!d||!s||n!==Z()||H()!==s)throw new Error("Personal order is not available in this Space");if(l.current)throw new Error("An order change is already being saved");let y=t.map(C=>C.id);if(f.length!==y.length||new Set(f).size!==y.length||y.some(C=>!f.includes(C)))throw new Error("Order must include each displayed item exactly once");let h=a.getQueryData(o.arrangementQueryKey);if(h?.item_id!==o.arrangement.item_id||JSON.stringify(h?.type_data?.order??[])!==JSON.stringify(o.order??[]))throw new Error("The saved order changed. Try dragging again");let g=c.map(C=>C.id);if(f.every((C,k)=>g[k]===C))return;let v=new Set(y),x=0,F=[...(o.order??[]).map(C=>v.has(C)?f[x++]:C),...f.slice(x)];l.current=!0;try{return await p.mutateAsync({ids:F,scopePath:s,arrangementId:o.arrangement.item_id,queryKey:o.arrangementQueryKey})}finally{l.current=!1}}return{items:c,ready:d,supported:i,contextKey:`${n}:${s}:${e}`,isLoading:i&&o.isLoading,error:o.error,refetch:o.refetch,isSaving:p.isPending,saveError:p.error,reorder:m}}var hi=/^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,xl=/^[A-Za-z_:][A-Za-z0-9_:.-]{0,127}$/,kc=new Map,Mc=new Map,Pn=class extends Error{constructor(n,r,s,i){super(n);ee(this,"code");ee(this,"status");ee(this,"eventId");this.name="InteractionTrackingError",this.code=r,this.status=s,this.eventId=i}};function Tn(e){let t=e?Gn.find(n=>n.id===e):Gn.find(n=>n.default===!0)??(Gn.length===1?Gn[0]:void 0);if(!t)throw new TypeError("No unambiguous source is declared for this release");if(!t.id||!Number.isInteger(t.version)||t.version<1)throw new TypeError("The release source declaration is invalid");return t}function ls(e,t){let n=t.adapters?.find(r=>r.type===e);if(!n)throw new TypeError(`The source does not declare a ${e} adapter`);return n}function Pl(e){return e.length>0&&e.length<=128&&!/[\u0000-\u001f\u007f]/.test(e)}function Tl(e,t){if(!Pl(t)||!e.observations?.includes(t))throw new TypeError("The observation is not declared by this release source")}function gi(e){if(!(typeof window>"u"||e.storage==="memory"))try{return e.storage==="session"?window.sessionStorage:window.localStorage}catch{return}}function El(e){try{let t=gi(e)?.getItem(e.key)??void 0;return t&&hi.test(t)?t:void 0}catch{return}}function Oc(e,t){try{gi(e)?.setItem(e.key,t)}catch{}}function Fc(e){let t=e.identity?.visitor;if(!t?.key)throw new TypeError("The source visitor identity policy is invalid");let n=El(t)??kc.get(e.id);if(n)return n;let r=crypto.randomUUID();return kc.set(e.id,r),Oc(t,r),r}function qc(e,t=Date.now()){let n=e.identity?.session;if(!n?.key||!Number.isInteger(n.idle_seconds)||n.idle_seconds<1)throw new TypeError("The source session identity policy is invalid");let r;try{let l=gi(n)?.getItem(n.key);r=l?JSON.parse(l):void 0}catch{r=void 0}let s=Mc.get(e.id),i=r&&typeof r.id=="string"&&hi.test(r.id)&&typeof r.lastSeenAt=="number"?{id:r.id,lastSeenAt:r.lastSeenAt}:s,o=n.idle_seconds*1e3,a=i&&t-i.lastSeenAt>=0&&t-i.lastSeenAt<o?{id:i.id,lastSeenAt:t}:{id:crypto.randomUUID(),lastSeenAt:t};return Mc.set(e.id,a),Oc(n,JSON.stringify(a)),a.id}function Il(e,t){let n=e.source_keys?.query;if(!Array.isArray(n)||n.length===0)return;let r;try{r=new URL(t)}catch{return}let s=e.source_keys?.max_value_length,i=Number.isInteger(s)?Math.min(Math.max(s??1,1),4096):512,o=Object.fromEntries(n.flatMap(c=>{if(typeof c!="string"||c.length===0||c.length>128)return[];let a=r.searchParams.get(c);return a?[[c,a.slice(0,i)]]:[]}));return Object.keys(o).length>0?o:void 0}async function qt(e,t={},n={}){let r=Tn(n.source);if(Tl(r,e),!t||typeof t!="object"||Array.isArray(t))throw new TypeError("properties must be an object");let s=n.eventId??crypto.randomUUID(),i=n.visitorId??Fc(r),o=n.sessionId??qc(r);if(![s,i,o].every(g=>hi.test(g)))throw new TypeError("event, visitor, and session IDs must be UUIDs");let c=n.pageUrl??(typeof window<"u"?window.location.href:void 0);if(!c)throw new TypeError("pageUrl is required outside a browser");let a=n.occurredAt??new Date().toISOString();if(Number.isNaN(Date.parse(a)))throw new TypeError("occurredAt is invalid");let l=n.referrer??(typeof document<"u"&&document.referrer||void 0),d=Il(r,c),p=d?{...t,source_keys:d}:t,m=At(),f=`${xe.replace(/\/+$/,"")}/d/${encodeURIComponent(m)}/interactions`,y;try{y=await fetch(f,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({source:r.id,page_url:c,visitor_id:i,session_id:o,referrer:l,events:[{id:s,event_type:e,occurred_at:a,properties:p}]}),signal:n.signal,credentials:"omit",keepalive:n.keepalive??!1})}catch(g){throw new Pn(g instanceof Error?g.message:"Observation transport network error","OBSERVATION_NETWORK_ERROR",0,s)}let h=null;try{h=await y.json()}catch{}if(!y.ok||h?.success!==!0){let g=h;throw new Pn(g?.message||g?.error||`Observation transport failed (${y.status})`,g?.error||"OBSERVATION_TRANSPORT_FAILED",y.status,s)}return h}function Qc(e={},t={}){let n=Tn(t.source),r=ls("page_view",n),s=typeof document>"u"||!r.title_property?{}:{[r.title_property]:document.title.slice(0,512)};return qt(r.observation,{...s,...e},{...t,source:n.id})}function Dc(e,t={},n={}){if(!e||e.length>128)throw new TypeError("actionId is invalid");let r=Tn(n.source),s=ls("declared_action",r),i=s.id_property?{[s.id_property]:e}:{};return qt(s.observation,{...t,...i},{...n,source:r.id})}function Uc(){try{let e=Tn();return ls("form_receipt",e),{visitor_id:Fc(e),session_id:qc(e),source:e.id}}catch{return}}function Nc(e,t={}){let n=Tn(t.source),r=ls("form_receipt",n);return qt(r.observation,e,{...t,source:n.id})}var fr;function ds(e={}){if(typeof window>"u"||typeof document>"u")return()=>{};if(fr)return fr;if(window.__FSAOS_CONFIG__?.tracking?.enabled===!1)return()=>{};let t;try{t=Tn(e.source)}catch{return()=>{}}let n=e.pageViews===!1?[]:t.adapters.filter(m=>m.type==="page_view"),r=e.declaredActions===!1?[]:t.adapters.filter(m=>m.type==="declared_action"),s="",i=()=>{if(window.location.href!==s){s=window.location.href;for(let m of n){let f=m.title_property?{[m.title_property]:document.title.slice(0,512)}:{};qt(m.observation,f,{source:t.id,keepalive:!0}).catch(()=>{})}}},o=m=>{if(m.target instanceof Element)for(let f of r){let y=f.attribute;if(!y||!xl.test(y))continue;let h=m.target.closest(`[${y}]`);if(!h)continue;let g=h.getAttribute(y)?.trim();if(!g||g.length>128)continue;let v={};f.id_property&&(v[f.id_property]=g),f.element_property&&(v[f.element_property]=h.tagName.toLowerCase()),qt(f.observation,v,{source:t.id,keepalive:!0}).catch(()=>{})}},c=window.history.pushState,a=window.history.replaceState,l=()=>queueMicrotask(i),d=n.some(m=>m.history===!0),p=n.some(m=>m.pageshow===!0);return d&&(window.history.pushState=function(...f){c.apply(this,f),l()},window.history.replaceState=function(...f){a.apply(this,f),l()},window.addEventListener("popstate",i)),p&&window.addEventListener("pageshow",i),r.length>0&&document.addEventListener("click",o,{capture:!0}),n.length>0&&queueMicrotask(i),fr=()=>{window.removeEventListener("popstate",i),window.removeEventListener("pageshow",i),document.removeEventListener("click",o,{capture:!0}),d&&(window.history.pushState=c,window.history.replaceState=a),fr=void 0},fr}var En;ie(()=>{En=void 0});function fs(e){if(En)return En.accountPath!==e.accountPath?Promise.reject(new Error("Reset the session before changing accounts")):En.promise;let t=se(),n=()=>{if(t!==se())throw new Error("Workspace session changed")},r=(async()=>{let s=await pt();if(n(),!s.principal_id)throw new Error("Workspace initialization requires an authenticated principal");let i=await P().fetchQuery({queryKey:R.memberships(s.principal_id),queryFn:ts,staleTime:12e4,retry:!1});n();let o=i.find(p=>p.path===e.accountPath&&p.isAccount&&!p.isSpace);if(!o)throw new Error("Authenticated account membership is unavailable");let c=i.find(p=>p.isSpace&&p.accountId===o.personalSpaceId&&p.path===o.personalSpacePath);if(!c||!o.personalSpacePath)throw new Error("A provisioned default Space membership is required");let a=je(o),l=je(c),d=fe();if(d&&d.id!==a.id)throw new Error("Reset the session before changing accounts");return d||Et(a,{activate:!1}),await Ft(o.personalSpacePath,p=>{let m=i.find(f=>f.accountId===p&&(f.isAccount||f.isSpace));return m?je(m):null},{initialAnchor:l}),n(),{home:a,defaultSpace:l,memberships:i}})().catch(s=>{throw t===se()&&(En=void 0),s});return En={accountPath:e.accountPath,promise:r},r}var Qt,mr,pr;ie(()=>{mr?.(),mr=void 0,Qt=void 0,pr=void 0});function Kc(e={}){if(Qt)return e.workspace&&e.workspace.accountPath!==pr?Promise.reject(new Error("Initialize workspace through initializeWorkspace, or dispose the existing runtime first")):Qt;pr=e.workspace?.accountPath;let t=se();return Qt=(async()=>{let n=e.tracking??!0,r=n===!1?()=>{}:ds(typeof n=="object"?n:{});mr=r;try{let s=e.session===!1?null:await pt(),i=e.workspace?await fs(e.workspace):void 0;if(t!==se())throw new Error("Session changed during initialization");let o=!1;return{session:s,workspace:i,dispose(){o||(o=!0,r(),t===se()&&(Qt=void 0,pr=void 0,mr=void 0))}}}catch(s){throw r(),t===se()&&(Qt=void 0,pr=void 0,mr=void 0),s}})(),Qt}async function yi(e){try{return await S("execution-control-transition",e)}catch(t){if(!(t instanceof Te)||t.status<500)throw t;return await new Promise(n=>setTimeout(n,250)),S("execution-control-transition",e)}}function _i(e){let t=e.conversation_anchor_item_id??e.conversation_root_id;return t?{...e,conversation_anchor_item_id:t,conversation_root_id:e.conversation_root_id??t}:e}async function Lc(e,t={}){let n=e.trim();if(!n)throw new TypeError("cancelTurn requires a request message id");let r=(t.idempotencyKey??`cancel:${n}`).trim();if(!r)throw new TypeError("cancelTurn requires a non-empty idempotency key");if(r.length>128)throw new TypeError("cancelTurn idempotency key must be 128 characters or fewer");let s=await yi({op:"request",command:"cancel",delivery:"immediate",request_message_id:n,idempotency_key:r,...t.scopePath?{_scope_path:t.scopePath}:{}}),i=s.outcome??s.state??s.status;return _i(i?{...s,state:i}:s)}async function jc(e,t,n={}){let r=e.trim(),s=t.trim();if(!r)throw new TypeError("steerTurn requires an active request message id");if(!s)throw new TypeError("steerTurn requires a selected queue entry id");if(r===s)throw new TypeError("steerTurn cannot target the active request message");let i=(n.idempotencyKey??`steer:${r}:${s}`).trim();if(!i)throw new TypeError("steerTurn requires a non-empty idempotency key");if(i.length>128)throw new TypeError("steerTurn idempotency key must be 128 characters or fewer");let o=await yi({op:"request",command:"steer",delivery:"immediate",request_message_id:r,selected_queue_entry_id:s,idempotency_key:i,...n.scopePath?{_scope_path:n.scopePath}:{}}),c=o.outcome??o.state??o.status;return _i(c?{...o,state:c}:o)}async function Wc(e,t={}){let n=e.trim();if(!n)throw new TypeError("cancelQueuedTurn requires a queue entry id");let r=(t.idempotencyKey??`cancel-queue:${n}`).trim();if(!r)throw new TypeError("cancelQueuedTurn requires a non-empty idempotency key");if(r.length>128)throw new TypeError("cancelQueuedTurn idempotency key must be 128 characters or fewer");let s=await yi({op:"cancel_queue_entry",queue_entry_id:n,idempotency_key:r,...t.scopePath?{_scope_path:t.scopePath}:{}}),i=s.outcome??s.state??s.status;return _i(i?{...s,outcome:i}:s)}var Al=/^[a-z][a-z0-9_-]{0,63}$/,kl=/^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,In=class extends Error{constructor(n,r,s,i){super(n);ee(this,"code");ee(this,"status");ee(this,"fillId");this.name="FormSubmissionError",this.code=r,this.status=s,this.fillId=i}};async function Bc(e,t,n={}){if(!Al.test(e))throw new TypeError("capabilityId is invalid");if(!t||typeof t!="object"||Array.isArray(t))throw new TypeError("fields must be an object");let r=n.fillId??crypto.randomUUID();if(!kl.test(r))throw new TypeError("fillId must be a UUID");let s=At(),i=n.pageUrl??(typeof window<"u"?window.location.href:void 0);if(!i)throw new TypeError("pageUrl is required outside a browser");let o=`${xe.replace(/\/+$/,"")}/d/${encodeURIComponent(s)}/actions/${encodeURIComponent(e)}`,c=Uc(),a=c?{visitor_id:c.visitor_id,session_id:c.session_id}:void 0,l;try{l=await fetch(o,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({fill_id:r,page_url:i,fields:t,...a?{attribution:a}:{}}),signal:n.signal,credentials:"omit"})}catch(p){throw new In(p instanceof Error?p.message:"Form submission network error","FORM_NETWORK_ERROR",0,r)}let d=null;try{d=await l.json()}catch{}if(!l.ok||d?.success!==!0){let p=d;throw new In(p?.message||p?.error||`Form submission failed (${l.status})`,p?.error||"FORM_SUBMISSION_FAILED",l.status,r)}try{await Nc({fill_id:r,action_id:e,release_id:d.release_id},{eventId:r,pageUrl:i,signal:n.signal,keepalive:!0,...c?{source:c.source,visitorId:c.visitor_id,sessionId:c.session_id}:{}})}catch{}return d}var vi=X(oe(),1),Hc=X(Vc(),1);function Gc(e){return S("read",{path:e})}function zc(e,t){return S("list",{path:e,...t})}function Jc(e){return S("create",e)}function Yc(e){return S("update",e)}function Xc(e){return S("create",e)}function Zc(e,t){let r=(typeof window<"u"&&window.__FSAOS_CONFIG__||{}).scopePath||"";return S("tools/call",{name:e,instance_path:r,...t||{}})}function eu(e,t,n){return S("signal",{target_id:e,event_name:t,payload:n||{}})}function tu(e){return((typeof window<"u"&&window.__FSAOS_CONFIG__||{}).edgeBaseUrl||"")+e}var nu={signIn:e=>e.provider?B.auth.signInWithOAuth({provider:e.provider,options:{redirectTo:e.redirectTo||window.location.href}}):B.auth.signInWithPassword({email:e.email,password:e.password}),signUp:e=>B.auth.signUp({email:e.email,password:e.password,options:{data:e.metadata||{}}}),signOut:async()=>{await B.auth.signOut(),ln(),P().clear()},getSession:()=>B.auth.getSession().then(e=>e.data.session),getUser:()=>B.auth.getUser().then(e=>e.data.user),onAuthStateChange:e=>{let{data:{subscription:t}}=B.auth.onAuthStateChange((n,r)=>{e({event:n,session:r,user:r?.user??null})});return()=>t?.unsubscribe()},resetPassword:e=>B.auth.resetPasswordForEmail(e),signInWithMagicLink:(e,t)=>B.auth.signInWithOtp({email:e,options:{emailRedirectTo:t||window.location.href}})};function ru(){let e=document.getElementById("root");if(e)try{let t=window.__FSAOS_COMPONENT__;if(!t){e.innerHTML='<div style="padding:2rem;color:#ef4444;font-family:system-ui"><h2>Component Error</h2><pre>No component found. The bundle may have failed to load.</pre></div>';return}let n=t.default||t,r=window.__FSAOS_ITEM_DATA__||null,s=r?{item:r,...r}:{};(0,Hc.createRoot)(e).render((0,vi.createElement)(Bn,{client:P()},(0,vi.createElement)(n,s)))}catch(t){console.error("[FSAOS] Failed to mount root component:",t),e.innerHTML='<div style="padding:2rem;color:#ef4444;font-family:system-ui"><h2>Component Error</h2><pre>'+(t.message||t)+"</pre></div>"}}function su(){let e=window.React,t=window.ReactDOM,n=window.__FSAOS_GATEWAY__,r=window.__FSAOS_UI__;if(!n){console.error("[FSAOS] Cannot set up require shim: __FSAOS_GATEWAY__ not found");return}let s={react:e,"react-dom":t,"react-dom/client":t,"react/jsx-runtime":{jsx:e?.createElement,jsxs:e?.createElement,Fragment:e?.Fragment},"@fsaos/kernel":n,"@fsaos/react":n,"@fsaos/gateway":n,"@fsaos/ui":r||{}};window.require=function(o){if(s[o])return s[o];throw new Error("[FSAOS] Module not found: "+o)},window.__FSAOS_MOUNT__=n.mount}function Ml(e){return e.split("_").map(t=>t.charAt(0).toUpperCase()+t.slice(1)).join(" ")}function Ol(e,t){return t&&t.length>0?"select":e==="boolean"?"toggle":e==="integer"||e==="number"?"range":e==="string"?"text":"none"}function Fl(e,t){return!(e==="object"||e==="array")}function ql(e){return["string","number","integer","boolean"].includes(e)}function Ql(e){return e!=="object"&&e!=="array"}function iu(e,t,n,r){let s=e?.properties;if(!s||typeof s!="object")return[];let i=[];for(let[o,c]of Object.entries(s)){let a=c.type||"string",l=c.enum,d=Fl(a,l),p=ql(a),m=Ol(a,l);i.push({key:o,label:c.title||Ml(o),type:a,description:c.description,enum_values:l,default_value:n[o]??r[o]??c.default,editable:t,filterable:d,sortable:p,filter_widget:m})}return i}function bi(e){let t=e.default_data||{},n=e.field_defaults||{},r=iu(e.input_schema,!0,t,n),s=iu(e.system_schema,!1,t,n),i=[...r,...s],o=i.filter(l=>Ql(l.type)),c=i.filter(l=>l.filterable),a=i.filter(l=>l.sortable);return{fields:i,columns:o,filterable:c,sortable:a,form_fields:r,system_fields:s}}function ou(e){return{field:"updated_at",direction:"desc"}}function au(e){let t=bi(e),n=new Set(e.input_schema?.required||[]);return t.form_fields.filter(r=>n.has(r.key)||r.default_value===void 0)}var _e=X(oe(),1);var Dl=0;function Ul(){return`upload_${Date.now()}_${++Dl}`}async function cu(e,t,n,r){let s=t.name||(e instanceof File?e.name:`file-${Date.now()}`),i=e.type||"application/octet-stream",o=t.itemType||"file",c={parent_path:t.parentPath,item_type:o,name:s,type_data:{...t.typeData||{},file_source:{type:"upload",content_type:i}}};t.cardParentPath&&(c.card_parent_path=t.cardParentPath);let l=await S("create",c);if(!l.id)throw new Error(l.error||l.message||"Failed to create file item");let d=l.id,p=l.path;if(l.storage_completed&&l.file_ref)return{itemId:d,itemPath:p,fileRef:l.file_ref};let m=l.storage_key,f=l.upload_token,y=l.storage_worker_url||"https://fsaos-storage.radns.workers.dev";if(!m)throw new Error("Gateway returned no storage_key \u2014 file_source may not be supported for this item type");await Nl(y,m,f,e,i,n,r);let h=await uu(d,m,i);return{itemId:d,itemPath:p,fileRef:h}}function Nl(e,t,n,r,s,i,o){return new Promise((c,a)=>{let l=new XMLHttpRequest;if(l.open("PUT",`${e}/upload`),l.setRequestHeader("X-Storage-Key",t),l.setRequestHeader("Content-Type",s),n&&l.setRequestHeader("X-Upload-Token",n),l.upload.onprogress=d=>{d.lengthComputable&&i&&i(Math.round(d.loaded/d.total*100))},l.onload=()=>{l.status>=200&&l.status<300?c():a(new Error(`Storage upload failed: HTTP ${l.status} \u2014 ${l.responseText?.slice(0,300)}`))},l.onerror=()=>a(new Error("Storage upload network error")),l.ontimeout=()=>a(new Error("Storage upload timed out")),o){if(o.aborted){a(new Error("Upload cancelled"));return}o.addEventListener("abort",()=>{l.abort(),a(new Error("Upload cancelled"))})}l.send(r)})}async function uu(e,t,n){let r=await Je(),s=await fetch(`${xe}/storage/upload-complete`,{method:"POST",headers:{"Content-Type":"application/json",...r?{Authorization:`Bearer ${r}`}:{}},body:JSON.stringify({item_id:e,storage_key:t,content_type:n})});if(!s.ok){let o=await s.text().catch(()=>"");throw new Error(`Upload confirmation failed: HTTP ${s.status} \u2014 ${o.slice(0,300)}`)}let i=await s.json();if(!i.success)throw new Error(i.error||i.message||"Upload confirmation rejected");return i.file_ref}function lu(){let[e,t]=(0,_e.useState)([]),n=W(),r=(0,_e.useRef)(e);r.current=e;let s=(0,_e.useCallback)((h,g)=>{t(v=>v.map(x=>x.id===h?{...x,...g}:x))},[]),i=(0,_e.useCallback)(h=>{t(g=>[...g,h])},[]),o=(0,_e.useCallback)(async(h,g,v,x,q)=>{let F=v.name||g.name,C=g.type||"application/octet-stream",k=v.itemType||"file",U=q?.itemId||null,N=q?.itemPath||null,I=q?.storageKey||null,$=q?.uploadToken||null,M=q?.storageWorkerUrl||null;try{if(!x||x==="create"){s(h,{status:"creating",error:null,_failedAt:null});let O=await S("create",{parent_path:v.parentPath,item_type:k,name:F,type_data:{...v.typeData||{},file_source:{type:"upload",content_type:C}}});if(!O.id)throw Object.assign(new Error(O.error||O.message||"Failed to create file item"),{_step:"create"});if(U=O.id,N=O.path,s(h,{itemId:U,itemPath:N}),O.storage_completed&&O.file_ref){s(h,{status:"complete",progress:100,fileRef:O.file_ref}),n.invalidateQueries({queryKey:R.children(v.parentPath)});return}if(I=O.storage_key,$=O.upload_token||"",M=O.storage_worker_url||"https://fsaos-storage.radns.workers.dev",s(h,{_storageKey:I,_uploadToken:$,_storageWorkerUrl:M}),!I)throw Object.assign(new Error("Gateway returned no storage_key"),{_step:"create"})}(!x||x==="create"||x==="upload")&&(s(h,{status:"uploading",progress:0,error:null,_failedAt:null}),await new Promise((O,ue)=>{let V=new XMLHttpRequest;s(h,{_xhr:V}),V.open("PUT",`${M}/upload`),V.setRequestHeader("X-Storage-Key",I),V.setRequestHeader("Content-Type",C),$&&V.setRequestHeader("X-Upload-Token",$),V.upload.onprogress=Oe=>{Oe.lengthComputable&&s(h,{progress:Math.round(Oe.loaded/Oe.total*100)})},V.onload=()=>{V.status>=200&&V.status<300?O():ue(Object.assign(new Error(`Storage upload failed: HTTP ${V.status}`),{_step:"upload"}))},V.onerror=()=>ue(Object.assign(new Error("Storage upload network error"),{_step:"upload"})),V.ontimeout=()=>ue(Object.assign(new Error("Storage upload timed out"),{_step:"upload"})),V.send(g)}),s(h,{progress:100,_xhr:null})),s(h,{status:"confirming",error:null,_failedAt:null});let E=await uu(U,I,C);s(h,{status:"complete",fileRef:E}),n.invalidateQueries({queryKey:R.children(v.parentPath)})}catch(E){let Q=E?.message||String(E),O=E?._step||"create";s(h,{status:"error",error:Q,_failedAt:O,_xhr:null})}},[s,n]),c=(0,_e.useCallback)((h,g)=>{let v=Ul();i({id:v,file:h,status:"creating",progress:0,error:null,itemId:null,itemPath:null,fileRef:null,options:g,_storageKey:null,_uploadToken:null,_storageWorkerUrl:null,_xhr:null,_failedAt:null}),o(v,h,g)},[i,o]),a=(0,_e.useCallback)((h,g)=>{for(let v of h)c(v,g)},[c]),l=(0,_e.useCallback)(h=>{let g=r.current.find(q=>q.id===h);if(!g||g.status!=="error")return;let v=g._failedAt||"create",x=g._storageKey&&g.itemId?{storageKey:g._storageKey,uploadToken:g._uploadToken||"",storageWorkerUrl:g._storageWorkerUrl||"https://fsaos-storage.radns.workers.dev",itemId:g.itemId,itemPath:g.itemPath||""}:void 0;o(h,g.file,g.options,v,x)},[o]),d=(0,_e.useCallback)(h=>{let g=r.current.find(v=>v.id===h);g&&(g._xhr&&g._xhr.abort(),s(h,{status:"error",error:"Cancelled",_xhr:null,_failedAt:null}))},[s]),p=(0,_e.useCallback)(h=>{t(g=>g.filter(v=>v.id!==h))},[]),m=(0,_e.useCallback)(()=>{t(h=>h.filter(g=>g.status!=="complete"))},[]),f=e.some(h=>h.status==="creating"||h.status==="uploading"||h.status==="confirming"),y=e.map(({_storageKey:h,_uploadToken:g,_storageWorkerUrl:v,_xhr:x,_failedAt:q,...F})=>F);return{upload:c,uploadMultiple:a,uploads:y,retryUpload:l,cancelUpload:d,removeUpload:p,clearCompleted:m,isUploading:f}}var du=X(oe(),1);async function wi(e,t){return await S("resolve-items",{context_id:e,item_type:t})}function fu(e,t){return(0,du.useSyncExternalStore)(be,Z,Z),j({queryKey:["vfs",H()??"__unscoped__","resolved-items",e??"",t],queryFn:()=>wi(e,t),enabled:!!(e&&t)})}var Me=X(oe(),1);function ps(e,t){let n={artifacts:new Map,timeline:[]},r=new Map;function s(o){if(!o.action?.startsWith("artifact_"))return;let a,l=o.name;if(typeof l=="string"&&l.startsWith("{"))try{a=JSON.parse(l)}catch{return}else if(o.artifact_id)a=o;else return;switch(a.type){case"artifact_opened":{let d=Date.now();if(n.artifacts.set(a.artifact_id,{artifact_id:a.artifact_id,surface_type:a.surface_type,tool_id:a.tool_id,tool_name:a.tool_name,target_uri:a.target_uri,status:"streaming",content:"",total_chars:0,delta_count:0,artifact_item_uri:null,evidence_uri:null,meta:a.meta,started_at:d,completed_at:null}),r.has(a.tool_id)){let p=r.get(a.tool_id);n.timeline[p].artifact_ids.push(a.artifact_id)}else{let p=n.timeline.length;n.timeline.push({tool_id:a.tool_id,tool_name:a.tool_name,status:"started",target_uri:a.target_uri,started_at:d,completed_at:null,artifact_ids:[a.artifact_id]}),r.set(a.tool_id,p)}break}case"artifact_delta":{let d=n.artifacts.get(a.artifact_id);d&&(d.content+=a.content_delta,d.total_chars+=a.content_delta.length,d.delta_count+=1,a.target_uri&&!d.target_uri&&(d.target_uri=a.target_uri));break}case"artifact_done":{let d=n.artifacts.get(a.artifact_id);d&&(d.status=a.status,d.total_chars=a.total_chars,d.artifact_item_uri=a.artifact_item_uri,d.evidence_uri=a.evidence_uri,a.target_uri&&(d.target_uri=a.target_uri),(a.status==="completed"||a.status==="failed")&&(d.completed_at=Date.now()));let p=r.get(a.tool_id);if(p!==void 0){let m=n.timeline[p];a.status==="executing"?m.status="executing":a.status==="completed"?(m.status="completed",m.completed_at=Date.now()):a.status==="failed"&&(m.status="failed",m.completed_at=Date.now()),a.target_uri&&!m.target_uri&&(m.target_uri=a.target_uri)}break}}t(n)}return jr(e,s)}function pu(e,t=!0){let[n,r]=(0,Me.useState)(new Map),[s,i]=(0,Me.useState)([]),o=(0,Me.useRef)({artifacts:new Map,timeline:[]});(0,Me.useEffect)(()=>!e||!t?void 0:ps(e,p=>{o.current=p,r(new Map(p.artifacts)),i([...p.timeline])}),[e,t]);let c=(0,Me.useCallback)(()=>{r(new Map),i([]),o.current={artifacts:new Map,timeline:[]}},[]),a=Array.from(n.values()).find(d=>d.surface_type==="file_editor"&&d.status==="streaming")??null,l=Array.from(n.values()).filter(d=>d.surface_type==="activity"&&(d.status==="streaming"||d.status==="executing"));return{artifacts:n,timeline:s,activeEditor:a,activeActivities:l,reset:c}}function mu(e,t=!0){let[n,r]=(0,Me.useState)([]);(0,Me.useEffect)(()=>!e||!t?void 0:ps(e,o=>{r([...o.timeline])}),[e,t]);let s=n.length>0?n[n.length-1]:null;return{timeline:n,latestActivity:s}}var ms=X(oe(),1);function Kl(e,t,n,r){return["vfs","timeline-history",e,t??"__all__",n??500,r??0]}async function Si(e,t){let n=`${e}/datasets/agent-events`,r=t?.limit??500,s=t?.offset??0,i={limit:r,offset:s,sort:[{key:"seq",direction:"asc"}]};t?.turnId&&(i.filters=[{key:"turn_id",operator:"eq",value:t.turnId}]);try{let c=(await S("open",{path:n,mode:"extract",strategy:"rows",arguments:i}))?.content;return c?(c.rows??c.items??c.data??[]).map(Ll).sort((l,d)=>l.seq-d.seq):[]}catch(o){if(o?.status===404||o?.message?.includes("not found"))return[];throw o}}function hu(e,t){let{turnId:n,limit:r=500,offset:s=0,enabled:i=!0,debounceMs:o=300}=t??{},c=e?`${e}/datasets/agent-events`:null,a=W(),l=(0,ms.useRef)(null),d=c?Kl(c,n,r,s):["vfs","timeline-history","__disabled__"],p=j({queryKey:d,queryFn:()=>Si(e,{turnId:n,limit:r,offset:s}),enabled:!!e&&i});return(0,ms.useEffect)(()=>{if(!c||!i)return;let m=re("vfs_change",()=>{l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{a.invalidateQueries({queryKey:d})},o)},f=>{let y=f?.path;return y?y===c&&f.item_type==="dataset":!1});return()=>{m(),l.current&&clearTimeout(l.current)}},[c,i,o,a,JSON.stringify(d)]),{events:p.data??[],isLoading:p.isLoading,error:p.error,isFetching:p.isFetching,refetch:()=>{p.refetch()}}}function Ll(e){return{turn_id:String(e.turn_id??""),seq:Number(e.seq??0),kind:String(e.kind??""),status:String(e.status??""),title:String(e.title??""),tool_name:e.tool_name!=null?String(e.tool_name):void 0,tool_id:e.tool_id!=null?String(e.tool_id):void 0,evidence_uri:e.evidence_uri!=null?String(e.evidence_uri):void 0,artifact_item_uri:e.artifact_item_uri!=null?String(e.artifact_item_uri):void 0,preview:e.preview!=null?String(e.preview):void 0,duration_ms:e.duration_ms!=null?Number(e.duration_ms):void 0,started_at:String(e.started_at??""),completed_at:e.completed_at!=null?String(e.completed_at):void 0,error_type:e.error_type!=null?String(e.error_type):void 0,meta:e.meta!=null?e.meta:void 0}}var hs=X(oe(),1);function gu(){(0,hs.useSyncExternalStore)(be,Z,Z);let e=H(),t=ge(),n=Cn(e?{key:"pinned",...t?{scope_id:t.id}:{}}:null),r=W(),s=n.resolvedChildren,i=!!(!n.error&&n.arrangement?.item_id&&n.resolutionLevel==="member"&&n.arrangement.write_target_id===n.arrangement.item_id),o=de({mutationFn:async a=>{let l,d={_scope_path:a.scopePath};if(a.operation==="pin"?l=await S("create",{...d,parent_id:a.arrangementId,name:`pin-${a.target.id}`,item_type:"symlink",type_data:{target_item_id:a.target.id,target_type:a.target.item_type}}):a.operation==="unpin"?l=await S("delete",{...d,id:a.entry.id}):l=await S("update",{...d,id:a.arrangementId,type_data:{order:a.ids}}),l?.success===!1)throw new Error(l.error||"Pins could not be saved");return l},onSettled:(a,l,d)=>Ye(r,d.queryKey)}),c=(0,hs.useCallback)(a=>!i||!e||H()!==e?Promise.reject(new Error("Personal pins are not available in this context")):a.operation==="unpin"&&!s.some(l=>l.id===a.entry.id)?Promise.reject(new Error("Pin is outside this arrangement")):a.operation==="reorder"&&(new Set(a.ids).size!==s.length||a.ids.length!==s.length||s.some(l=>!a.ids.includes(l.id)))?Promise.reject(new Error("Order must include each pin exactly once")):a.operation==="pin"&&s.some(l=>l.symlink_type_data?.target_item_id===a.target.id)?Promise.resolve(null):o.mutateAsync({...a,scopePath:e,arrangementId:n.arrangement.item_id,arrangementPath:n.arrangement.item_path,queryKey:n.arrangementQueryKey}),[i,e,s,n.arrangement,n.arrangementQueryKey,o.mutateAsync]);return{entries:s,isLoading:n.isLoading,error:n.error,refetch:n.refetch,ready:i,isSaving:o.isPending,saveError:o.error,isPinned:a=>s.some(l=>l.symlink_type_data?.target_item_id===a),pin:a=>c({operation:"pin",target:a}),unpin:a=>{let l=s.find(d=>d.symlink_type_data?.target_item_id===a||d.id===a);return l?c({operation:"unpin",entry:l}):Promise.resolve(null)},reorder:a=>c({operation:"reorder",ids:a})}}var gs=X(oe(),1);var hr=(e,t,n)=>["vfs",e,"personal-sections",t,n];function Ri(e,t){return e&&e.item_id===t.item_id&&e.version>t.version?e:t}async function Ci(e,t,n,r){let s=await S("personal-sections",{...r,context_item_id:t,collection:n,_scope_path:e});if(!s||s.success===!1)throw new Error(s?.message||s?.error||"Sections could not be saved");if(!Array.isArray(s.sections)||s.context_item_id!==t||s.collection!==n)throw new Error("Invalid sections response");return s}async function yu(e,t){let n=await Ci(e.scopePath,e.contextId,e.collection,{operation:"assign",section_id:e.sectionId,target_id:t}),r=P();return r.setQueryData(hr(e.scopePath,e.contextId,e.collection),s=>Ri(s,n)),_u(r,e.scopePath),n}function _u(e,t){for(let n of e.getQueryCache().getAll())n.queryKey[0]==="vfs"&&n.queryKey[1]===t&&n.queryKey[2]==="personal-sections"&&Ye(e,n.queryKey)}function vu(e,t){let n=(0,gs.useSyncExternalStore)(be,Z,Z),r=H(),s=W(),i=hr(r,e,t),o=j({queryKey:i,enabled:!!r&&!!e,queryFn:()=>Ci(r,e,t,{operation:"list"}),staleTime:1/0,retry:!1,meta:{arrangementRealtime:!0,personalSections:!0},structuralSharing:(p,m)=>Ri(p,m)}),c=(0,gs.useRef)(!1),a=de({mutationFn:async p=>{let m=await Ci(p.scope,p.context,p.collection,{...p.change,...p.change.operation.startsWith("reorder")?{expected_version:p.version}:{}});return s.setQueryData(hr(p.scope,p.context,p.collection),f=>Ri(f,m)),m},onSettled:(p,m,f)=>_u(s,f.scope)});async function l(p){if(!r||!e||n!==Z()||H()!==r||!o.data||o.error)throw new Error("Select the Space again before changing sections");if(c.current)throw new Error("A section change is still being saved");c.current=!0;try{return await a.mutateAsync({change:p,scope:r,context:e,collection:t,version:o.data.version})}finally{c.current=!1}}function d(p){if(!r||!e||!o.data?.sections.some(m=>m.id===p))throw new Error("Section is unavailable");return{scopePath:r,contextId:e,collection:t,sectionId:p}}return{sections:o.data?.sections??[],ready:!!o.data&&!o.error,isLoading:o.isLoading,error:o.error,refetch:o.refetch,isSaving:a.isPending,change:l,destination:d,contextKey:`${n}:${r}:${e}:${t}`}}ic(xi);return ku(xi);})();
8
8
 
9
9
  /* ── Auto-setup: require shim + mount + backward compat globals ── */
10
10
  (function() {