@ai4b-team/fsaos-gateway-sdk 3.34.2 → 3.35.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/iife/gateway.js +5 -5
- package/dist/iife/gateway.js.map +4 -4
- package/dist/iife/ui.js +1 -1
- package/dist/index.cjs +224 -54
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +89 -2
- package/dist/index.d.ts +89 -2
- package/dist/index.js +224 -54
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/iife/gateway.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
/* @fsaos/gateway v2.0.0 — Unified FSAOS Edge Runtime — 2026-10-
|
|
2
|
-
"use strict";var __FSAOS_GATEWAY__=(()=>{var cu=Object.create;var En=Object.defineProperty;var uu=Object.getOwnPropertyDescriptor;var lu=Object.getOwnPropertyNames;var du=Object.getPrototypeOf,fu=Object.prototype.hasOwnProperty;var _i=e=>{throw TypeError(e)};var pu=(e,t,n)=>t in e?En(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var In=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),mu=(e,t)=>{for(var n in t)En(e,n,{get:t[n],enumerable:!0})},vi=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of lu(t))!fu.call(e,s)&&s!==n&&En(e,s,{get:()=>t[s],enumerable:!(r=uu(t,s))||r.enumerable});return e};var J=(e,t,n)=>(n=e!=null?cu(du(e)):{},vi(t||!e||!e.__esModule?En(n,"default",{value:e,enumerable:!0}):n,e)),hu=e=>vi(En({},"__esModule",{value:!0}),e);var Y=(e,t,n)=>pu(e,typeof t!="symbol"?t+"":t,n),fs=(e,t,n)=>t.has(e)||_i("Cannot "+n);var u=(e,t,n)=>(fs(e,t,"read from private field"),n?n.call(e):t.get(e)),w=(e,t,n)=>t.has(e)?_i("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,n),b=(e,t,n,r)=>(fs(e,t,"write to private field"),r?r.call(e,n):t.set(e,n),n),T=(e,t,n)=>(fs(e,t,"access private method"),n);var An=(e,t,n,r)=>({set _(s){b(e,t,s,n)},get _(){return u(e,t,r)}});var ce=In((Al,bi)=>{bi.exports=React});var wr=In((Ef,eo)=>{eo.exports={jsx:React.createElement,jsxs:React.createElement,Fragment:React.Fragment}});var mo=In((ip,po)=>{po.exports={createClient:window.supabase.createClient}});var Oo=In((gp,Mo)=>{Mo.exports=ReactDOM});var Oc=In((Bm,Mc)=>{Mc.exports=ReactDOM});var gi={};mu(gi,{ComponentRenderer:()=>ec,EnforcementDeniedError:()=>Ft,FormSubmissionError:()=>Tn,GatewayRequestError:()=>De,InteractionTrackingError:()=>Pn,KernelProvider:()=>tc,QueryClientProvider:()=>jn,auth:()=>Wc,awaitAnchorReady:()=>zn,awaitScopeReady:()=>Ro,callTool:()=>Kc,cancelQueuedTurn:()=>Ac,cancelTurn:()=>Ec,clearCachedToken:()=>Ns,clearSession:()=>Vs,createItem:()=>Dc,disconnectSSE:()=>Zs,disposeVfsRealtimeWs:()=>ni,electHomeAnchor:()=>Ct,emitEvent:()=>Xo,fetchChannelMessages:()=>ua,fetchChannelMessagesPage:()=>rr,fetchChannelMessagesWithCards:()=>zr,fetchEdgesForItem:()=>Wr,fetchItemHistory:()=>Vr,fetchItemVersions:()=>nr,fetchItems:()=>yn,fetchMemberFocus:()=>$r,fetchOpenEnvelope:()=>Gr,fetchRecentActivity:()=>Hr,fetchResolvedItems:()=>mi,fetchTimelineHistory:()=>hi,fetchTurnQueueEntries:()=>oa,fetchTypeDefinitions:()=>jr,fetchVfsChildren:()=>tr,fetchVfsChildrenPage:()=>Lr,fetchVfsItem:()=>Kr,fetchVfsItemById:()=>Nr,fetchVfsTree:()=>Br,gatewayCall:()=>R,getAccessToken:()=>$e,getAnchor:()=>an,getAnchorRef:()=>Se,getAnchorVersion:()=>js,getAssetUrl:()=>jc,getDefaultSort:()=>$c,getHomeAnchor:()=>le,getMountVersion:()=>Jn,getMounts:()=>Qe,getPathSubscriptionState:()=>ea,getQueryClient:()=>C,getRequiredFormFields:()=>Gc,getScope:()=>re,getScopeVersion:()=>se,getServerClockOffsetMs:()=>Eo,getServerClockSyncedAt:()=>Io,getSessionEntry:()=>Tt,hasServerClock:()=>To,initSession:()=>ut,initVfsRealtimeWs:()=>At,initializeFsaos:()=>Tc,initializeWorkspace:()=>os,interpretSchema:()=>pi,invalidateAllVfs:()=>fa,invalidateChannelMessages:()=>ma,invalidateChildren:()=>Ur,invalidateItem:()=>ti,invalidateOpenEnvelope:()=>ha,invalidatePathAndParent:()=>la,invalidateSubtree:()=>da,invalidateTypes:()=>pa,isAnchorReady:()=>Bs,isChannelPath:()=>lt,isListableItemsFilter:()=>gn,isScopeReady:()=>Ir,itemsFilterFromQueryFilter:()=>aa,listChildren:()=>Qc,loadMounts:()=>kt,mount:()=>Bc,mountRealtimeScope:()=>vn,normalizeItem:()=>Pe,onConnectionStateChange:()=>ra,pathSubscriptionMatches:()=>Js,ping:()=>Zo,pushChanges:()=>Nc,queryClient:()=>Ko,readItem:()=>qc,refreshQuery:()=>Ge,registerCleanup:()=>ne,replaceMounts:()=>es,resetAllSdkState:()=>cn,resolvePrincipalId:()=>Ya,resubscribePath:()=>na,selectMount:()=>ar,serverDeadlinePassed:()=>Ao,serverMsUntil:()=>ko,serverNow:()=>Ar,setAnchor:()=>Tr,setCachedToken:()=>yo,setQueryClient:()=>No,setScope:()=>So,setupRequireShim:()=>Hc,signal:()=>Lc,startTracking:()=>is,steerTurn:()=>Ic,submitForm:()=>kc,subscribeAnchor:()=>Ws,subscribeArtifactStream:()=>as,subscribeMounts:()=>Er,subscribeScope:()=>Te,subscribeToEvents:()=>ie,subscribeToPath:()=>Dr,subscribeToScope:()=>hn,trackAction:()=>Pc,trackEvent:()=>Mt,trackPageView:()=>Rc,unmountRealtimeScope:()=>Xr,updateItem:()=>Uc,uploadFile:()=>zc,useAccounts:()=>ja,useAgentTimeline:()=>tu,useAllChannels:()=>rs,useArrangement:()=>Sn,useArtifactStream:()=>eu,useAsset:()=>Ba,useAuth:()=>ns,useChannelMessages:()=>nc,useChannels:()=>sc,useChildren:()=>Ca,useComponent:()=>oi,useCreate:()=>ac,useDelete:()=>lc,useDmChannels:()=>ic,useEdges:()=>Oa,useEventStream:()=>mc,useFileUpload:()=>Yc,useInfiniteChannelMessages:()=>rc,useInfiniteChildren:()=>Ma,useInfiniteItems:()=>ka,useItem:()=>Pa,useItemById:()=>xa,useItemHistory:()=>Na,useItemVersions:()=>Ua,useItems:()=>Aa,useLink:()=>fc,useList:()=>ii,useMemberFocus:()=>Da,useMintedAsset:()=>gc,useMounts:()=>Wa,useMove:()=>dc,useMutation:()=>pc,useNotifications:()=>ai,useOpen:()=>qa,usePermission:()=>Ga,usePermissions:()=>za,usePersonalItemOrder:()=>yc,usePinnedItems:()=>ru,usePrincipal:()=>Xa,useRealtimeQuery:()=>hc,useRecentActivity:()=>Ka,useResolve:()=>Ia,useResolvedItems:()=>Zc,useScope:()=>La,useScopeReady:()=>Ra,useSearch:()=>Ea,useTheme:()=>$a,useTimelineHistory:()=>nu,useTool:()=>Za,useTree:()=>Ta,useType:()=>Fa,useTypeHelpers:()=>Qa,useTypes:()=>ts,useUnreadCounts:()=>oc,useUpdate:()=>cc,useUpdatePrincipal:()=>uc,vfsKeys:()=>S,waitForPathReady:()=>ta});var Ft=class e extends Error{constructor(n){let r=n.message||e.fallbackMessage(n);super(r);Y(this,"name","EnforcementDeniedError");Y(this,"deniedBy");Y(this,"ruleKey");Y(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 Rn=J(ce(),1);var ve=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 ht,Xe,qt,wi,gu=(wi=class extends ve{constructor(){super();w(this,ht);w(this,Xe);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,Xe)||this.setEventListener(u(this,qt))}onUnsubscribe(){var t;this.hasListeners()||((t=u(this,Xe))==null||t.call(this),b(this,Xe,void 0))}setEventListener(t){var n;b(this,qt,t),(n=u(this,Xe))==null||n.call(this),b(this,Xe,t(r=>{typeof r=="boolean"?this.setFocused(r):this.onFocus()}))}setFocused(t){u(this,ht)!==t&&(b(this,ht,t),this.onFocus())}onFocus(){let t=this.isFocused();this.listeners.forEach(n=>{n(t)})}isFocused(){return typeof u(this,ht)=="boolean"?u(this,ht):globalThis.document?.visibilityState!=="hidden"}},ht=new WeakMap,Xe=new WeakMap,qt=new WeakMap,wi),Qt=new gu;var yu={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},Ze,ps,Si,_u=(Si=class{constructor(){w(this,Ze,yu);w(this,ps,!1)}setTimeoutProvider(e){b(this,Ze,e)}setTimeout(e,t){return u(this,Ze).setTimeout(e,t)}clearTimeout(e){u(this,Ze).clearTimeout(e)}setInterval(e,t){return u(this,Ze).setInterval(e,t)}clearInterval(e){u(this,Ze).clearInterval(e)}},Ze=new WeakMap,ps=new WeakMap,Si),Ae=new _u;function Ri(e){setTimeout(e,0)}var hs=typeof window>"u"||"Deno"in globalThis;function H(){}function Ci(e,t){return typeof e=="function"?e(t):e}function kn(e){return typeof e=="number"&&e>=0&&e!==1/0}function fr(e,t){return Math.max(e+(t||0)-Date.now(),0)}function xe(e,t){return typeof e=="function"?e(t):e}function de(e,t){return typeof e=="function"?e(t):e}function pr(e,t){let{type:n="all",exact:r,fetchStatus:s,predicate:i,queryKey:o,stale:a}=e;if(o){if(r){if(t.queryHash!==Mn(o,t.options))return!1}else if(!gt(t.queryKey,o))return!1}if(n!=="all"){let c=t.isActive();if(n==="active"&&!c||n==="inactive"&&c)return!1}return!(typeof a=="boolean"&&t.isStale()!==a||s&&s!==t.state.fetchStatus||i&&!i(t))}function mr(e,t){let{exact:n,status:r,predicate:s,mutationKey:i}=e;if(i){if(!t.options.mutationKey)return!1;if(n){if(ke(t.options.mutationKey)!==ke(i))return!1}else if(!gt(t.options.mutationKey,i))return!1}return!(r&&t.state.status!==r||s&&!s(t))}function Mn(e,t){return(t?.queryKeyHashFn||ke)(e)}function ke(e){return JSON.stringify(e,(t,n)=>ms(n)?Object.keys(n).sort().reduce((r,s)=>(r[s]=n[s],r),{}):n)}function gt(e,t){return e===t?!0:typeof e!=typeof t?!1:e&&t&&typeof e=="object"&&typeof t=="object"?Object.keys(t).every(n=>gt(e[n],t[n])):!1}var vu=Object.prototype.hasOwnProperty;function gs(e,t,n=0){if(e===t)return e;if(n>500)return t;let r=Pi(e)&&Pi(t);if(!r&&!(ms(e)&&ms(t)))return t;let i=(r?e:Object.keys(e)).length,o=r?t:Object.keys(t),a=o.length,c=r?new Array(a):{},l=0;for(let d=0;d<a;d++){let m=r?d:o[d],p=e[m],f=t[m];if(p===f){c[m]=p,(r?d<i:vu.call(e,m))&&l++;continue}if(p===null||f===null||typeof p!="object"||typeof f!="object"){c[m]=f;continue}let y=gs(p,f,n+1);c[m]=y,y===p&&l++}return i===a&&l===i?e:c}function Dt(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 Pi(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function ms(e){if(!xi(e))return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(!xi(n)||!n.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(e)!==Object.prototype)}function xi(e){return Object.prototype.toString.call(e)==="[object Object]"}function Ti(e){return new Promise(t=>{Ae.setTimeout(t,e)})}function On(e,t,n){return typeof n.structuralSharing=="function"?n.structuralSharing(e,t):n.structuralSharing!==!1?gs(e,t):t}function Ei(e,t,n=0){let r=[...e,t];return n&&r.length>n?r.slice(1):r}function Ii(e,t,n=0){let r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var Ut=Symbol();function hr(e,t){return!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===Ut?()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function Nt(e,t){return typeof e=="function"?e(...t):!!e}function Ai(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 Me=(()=>{let e=()=>hs;return{isServer(){return e()},setIsServer(t){e=t}}})();function Fn(){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=Ri;function bu(){let e=[],t=0,n=a=>{a()},r=a=>{a()},s=ki,i=a=>{t?e.push(a):s(()=>{n(a)})},o=()=>{let a=e;e=[],a.length&&s(()=>{r(()=>{a.forEach(c=>{n(c)})})})};return{batch:a=>{let c;t++;try{c=a()}finally{t--,t||o()}return c},batchCalls:a=>(...c)=>{i(()=>{a(...c)})},schedule:i,setNotifyFunction:a=>{n=a},setBatchNotifyFunction:a=>{r=a},setScheduler:a=>{s=a}}}var U=bu();var Kt,et,Lt,Mi,wu=(Mi=class extends ve{constructor(){super();w(this,Kt,!0);w(this,et);w(this,Lt);b(this,Lt,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,et)||this.setEventListener(u(this,Lt))}onUnsubscribe(){var t;this.hasListeners()||((t=u(this,et))==null||t.call(this),b(this,et,void 0))}setEventListener(t){var n;b(this,Lt,t),(n=u(this,et))==null||n.call(this),b(this,et,t(this.setOnline.bind(this)))}setOnline(t){u(this,Kt)!==t&&(b(this,Kt,t),this.listeners.forEach(r=>{r(t)}))}isOnline(){return u(this,Kt)}},Kt=new WeakMap,et=new WeakMap,Lt=new WeakMap,Mi),jt=new wu;function Su(e){return Math.min(1e3*2**e,3e4)}function ys(e){return(e??"online")==="online"?jt.isOnline():!0}var gr=class extends Error{constructor(e){super("CancelledError"),this.revert=e?.revert,this.silent=e?.silent}};function yr(e){let t=!1,n=0,r,s=Fn(),i=()=>s.status!=="pending",o=h=>{if(!i()){let g=new gr(h);p(g),e.onCancel?.(g)}},a=()=>{t=!0},c=()=>{t=!1},l=()=>Qt.isFocused()&&(e.networkMode==="always"||jt.isOnline())&&e.canRun(),d=()=>ys(e.networkMode)&&e.canRun(),m=h=>{i()||(r?.(),s.resolve(h))},p=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(m).catch(v=>{if(i())return;let P=e.retry??(Me.isServer()?0:3),O=e.retryDelay??Su,X=typeof O=="function"?O(n,v):O,x=P===!0||typeof P=="number"&&n<P||typeof P=="function"&&P(n,v);if(t||!x){p(v);return}n++,e.onFail?.(n,v),Ti(X).then(()=>l()?void 0:f()).then(()=>{t?p(v):y()})})};return{promise:s,status:()=>s.status,cancel:o,continue:()=>(r?.(),s),cancelRetry:a,continueRetry:c,canStart:d,start:()=>(d()?y():f().then(y),s)}}var yt,Oi,_r=(Oi=class{constructor(){w(this,yt)}destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),kn(this.gcTime)&&b(this,yt,Ae.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(Me.isServer()?1/0:5*60*1e3))}clearGcTimeout(){u(this,yt)!==void 0&&(Ae.clearTimeout(u(this,yt)),b(this,yt,void 0))}},yt=new WeakMap,Oi);var _t,Wt,be,vt,Z,qn,bt,he,Ui,Ke,Qi,Di=(Qi=class extends _r{constructor(t){super();w(this,he);w(this,_t);w(this,Wt);w(this,be);w(this,vt);w(this,Z);w(this,qn);w(this,bt);b(this,bt,!1),b(this,qn,t.defaultOptions),this.setOptions(t.options),this.observers=[],b(this,vt,t.client),b(this,be,u(this,vt).getQueryCache()),this.queryKey=t.queryKey,this.queryHash=t.queryHash,b(this,_t,qi(this.options)),this.state=t.state??u(this,_t),this.scheduleGc()}get meta(){return this.options.meta}get promise(){return u(this,Z)?.promise}setOptions(t){if(this.options={...u(this,qn),...t},this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){let n=qi(this.options);n.data!==void 0&&(this.setState(Fi(n.data,n.dataUpdatedAt)),b(this,_t,n))}}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&u(this,be).remove(this)}setData(t,n){let r=On(this.state.data,t,this.options);return T(this,he,Ke).call(this,{data:r,type:"success",dataUpdatedAt:n?.updatedAt,manual:n?.manual}),r}setState(t,n){T(this,he,Ke).call(this,{type:"setState",state:t,setStateOptions:n})}cancel(t){let n=u(this,Z)?.promise;return u(this,Z)?.cancel(t),n?n.then(H).catch(H):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return u(this,_t)}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(t=>de(t.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===Ut||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0?this.observers.some(t=>xe(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:!fr(this.state.dataUpdatedAt,t)}onFocus(){this.observers.find(n=>n.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),u(this,Z)?.continue()}onOnline(){this.observers.find(n=>n.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),u(this,Z)?.continue()}addObserver(t){this.observers.includes(t)||(this.observers.push(t),this.clearGcTimeout(),u(this,be).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,Z)&&(u(this,bt)||T(this,he,Ui).call(this)?u(this,Z).cancel({revert:!0}):u(this,Z).cancelRetry()),this.scheduleGc()),u(this,be).notify({type:"observerRemoved",query:this,observer:t}))}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||T(this,he,Ke).call(this,{type:"invalidate"})}async fetch(t,n){if(this.state.fetchStatus!=="idle"&&u(this,Z)?.status()!=="rejected"){if(this.state.data!==void 0&&n?.cancelRefetch)this.cancel({silent:!0});else if(u(this,Z))return u(this,Z).continueRetry(),u(this,Z).promise}if(t&&this.setOptions(t),!this.options.queryFn){let c=this.observers.find(l=>l.options.queryFn);c&&this.setOptions(c.options)}let r=new AbortController,s=c=>{Object.defineProperty(c,"signal",{enumerable:!0,get:()=>(b(this,bt,!0),r.signal)})},i=()=>{let c=hr(this.options,n),d=(()=>{let m={client:u(this,vt),queryKey:this.queryKey,meta:this.meta};return s(m),m})();return b(this,bt,!1),this.options.persister?this.options.persister(c,d,this):c(d)},a=(()=>{let c={fetchOptions:n,options:this.options,queryKey:this.queryKey,client:u(this,vt),state:this.state,fetchFn:i};return s(c),c})();this.options.behavior?.onFetch(a,this),b(this,Wt,this.state),(this.state.fetchStatus==="idle"||this.state.fetchMeta!==a.fetchOptions?.meta)&&T(this,he,Ke).call(this,{type:"fetch",meta:a.fetchOptions?.meta}),b(this,Z,yr({initialPromise:n?.initialPromise,fn:a.fetchFn,onCancel:c=>{c instanceof gr&&c.revert&&this.setState({...u(this,Wt),fetchStatus:"idle"}),r.abort()},onFail:(c,l)=>{T(this,he,Ke).call(this,{type:"failed",failureCount:c,error:l})},onPause:()=>{T(this,he,Ke).call(this,{type:"pause"})},onContinue:()=>{T(this,he,Ke).call(this,{type:"continue"})},retry:a.options.retry,retryDelay:a.options.retryDelay,networkMode:a.options.networkMode,canRun:()=>!0}));try{let c=await u(this,Z).start();if(c===void 0)throw new Error(`${this.queryHash} data is undefined`);return this.setData(c),u(this,be).config.onSuccess?.(c,this),u(this,be).config.onSettled?.(c,this.state.error,this),c}catch(c){if(c instanceof gr){if(c.silent)return u(this,Z).promise;if(c.revert){if(this.state.data===void 0)throw c;return this.state.data}}throw T(this,he,Ke).call(this,{type:"error",error:c}),u(this,be).config.onError?.(c,this),u(this,be).config.onSettled?.(this.state.data,c,this),c}finally{this.scheduleGc()}}},_t=new WeakMap,Wt=new WeakMap,be=new WeakMap,vt=new WeakMap,Z=new WeakMap,qn=new WeakMap,bt=new WeakMap,he=new WeakSet,Ui=function(){return this.state.fetchStatus==="paused"&&this.state.status==="pending"},Ke=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,..._s(r.data,this.options),fetchMeta:t.meta??null};case"success":let s={...r,...Fi(t.data,t.dataUpdatedAt),dataUpdateCount:r.dataUpdateCount+1,...!t.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return b(this,Wt,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),U.batch(()=>{this.observers.forEach(r=>{r.onQueryUpdate()}),u(this,be).notify({query:this,type:"updated",action:t})})},Qi);function _s(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:ys(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}function Fi(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:"success"}}function qi(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 fe,k,Dn,ue,wt,Bt,Le,tt,Un,Ht,Vt,St,Rt,nt,$t,q,Qn,vs,bs,ws,Ss,Rs,Ps,xs,ji,Li,Nn=(Li=class extends ve{constructor(t,n){super();w(this,q);w(this,fe);w(this,k);w(this,Dn);w(this,ue);w(this,wt);w(this,Bt);w(this,Le);w(this,tt);w(this,Un);w(this,Ht);w(this,Vt);w(this,St);w(this,Rt);w(this,nt);w(this,$t,new Set);this.options=n,b(this,fe,t),b(this,tt,null),b(this,Le,Fn()),this.bindMethods(),this.setOptions(n)}bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(u(this,k).addObserver(this),Ni(u(this,k),this.options)?T(this,q,Qn).call(this):this.updateResult(),T(this,q,Ss).call(this))}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return Cs(u(this,k),this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return Cs(u(this,k),this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,T(this,q,Rs).call(this),T(this,q,Ps).call(this),u(this,k).removeObserver(this)}setOptions(t){let n=this.options,r=u(this,k);if(this.options=u(this,fe).defaultQueryOptions(t),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof de(this.options.enabled,u(this,k))!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");T(this,q,xs).call(this),u(this,k).setOptions(this.options),n._defaulted&&!Dt(this.options,n)&&u(this,fe).getQueryCache().notify({type:"observerOptionsUpdated",query:u(this,k),observer:this});let s=this.hasListeners();s&&Ki(u(this,k),r,this.options,n)&&T(this,q,Qn).call(this),this.updateResult(),s&&(u(this,k)!==r||de(this.options.enabled,u(this,k))!==de(n.enabled,u(this,k))||xe(this.options.staleTime,u(this,k))!==xe(n.staleTime,u(this,k)))&&T(this,q,vs).call(this);let i=T(this,q,bs).call(this);s&&(u(this,k)!==r||de(this.options.enabled,u(this,k))!==de(n.enabled,u(this,k))||i!==u(this,nt))&&T(this,q,ws).call(this,i)}getOptimisticResult(t){let n=u(this,fe).getQueryCache().build(u(this,fe),t),r=this.createResult(n,t);return Pu(this,r)&&(b(this,ue,r),b(this,Bt,this.options),b(this,wt,u(this,k).state)),r}getCurrentResult(){return u(this,ue)}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,Le).status==="pending"&&u(this,Le).reject(new Error("experimental_prefetchInRender feature flag is not enabled"))),Reflect.get(r,s))})}trackProp(t){u(this,$t).add(t)}getCurrentQuery(){return u(this,k)}refetch({...t}={}){return this.fetch({...t})}fetchOptimistic(t){let n=u(this,fe).defaultQueryOptions(t),r=u(this,fe).getQueryCache().build(u(this,fe),n);return r.fetch().then(()=>this.createResult(r,n))}fetch(t){return T(this,q,Qn).call(this,{...t,cancelRefetch:t.cancelRefetch??!0}).then(()=>(this.updateResult(),u(this,ue)))}createResult(t,n){let r=u(this,k),s=this.options,i=u(this,ue),o=u(this,wt),a=u(this,Bt),l=t!==r?t.state:u(this,Dn),{state:d}=t,m={...d},p=!1,f;if(n._optimisticResults){let M=this.hasListeners(),B=!M&&Ni(t,n),A=M&&Ki(t,r,n,s);(B||A)&&(m={...m,..._s(d.data,t.options)}),n._optimisticResults==="isRestoring"&&(m.fetchStatus="idle")}let{error:y,errorUpdatedAt:h,status:g}=m;f=m.data;let v=!1;if(n.placeholderData!==void 0&&f===void 0&&g==="pending"){let M;i?.isPlaceholderData&&n.placeholderData===a?.placeholderData?(M=i.data,v=!0):M=typeof n.placeholderData=="function"?n.placeholderData(u(this,Vt)?.state.data,u(this,Vt)):n.placeholderData,M!==void 0&&(g="success",f=On(i?.data,M,n),p=!0)}if(n.select&&f!==void 0&&!v)if(i&&f===o?.data&&n.select===u(this,Un))f=u(this,Ht);else try{b(this,Un,n.select),f=n.select(f),f=On(i?.data,f,n),b(this,Ht,f),b(this,tt,null)}catch(M){b(this,tt,M)}u(this,tt)&&(y=u(this,tt),f=u(this,Ht),h=Date.now(),g="error");let P=m.fetchStatus==="fetching",O=g==="pending",X=g==="error",x=O&&P,F=f!==void 0,N={status:g,fetchStatus:m.fetchStatus,isPending:O,isSuccess:g==="success",isError:X,isInitialLoading:x,isLoading:x,data:f,dataUpdatedAt:m.dataUpdatedAt,error:y,errorUpdatedAt:h,failureCount:m.fetchFailureCount,failureReason:m.fetchFailureReason,errorUpdateCount:m.errorUpdateCount,isFetched:t.isFetched(),isFetchedAfterMount:m.dataUpdateCount>l.dataUpdateCount||m.errorUpdateCount>l.errorUpdateCount,isFetching:P,isRefetching:P&&!O,isLoadingError:X&&!F,isPaused:m.fetchStatus==="paused",isPlaceholderData:p,isRefetchError:X&&F,isStale:Ts(t,n),refetch:this.refetch,promise:u(this,Le),isEnabled:de(n.enabled,t)!==!1};if(this.options.experimental_prefetchInRender){let M=N.data!==void 0,B=N.status==="error"&&!M,A=D=>{B?D.reject(N.error):M&&D.resolve(N.data)},I=()=>{let D=b(this,Le,N.promise=Fn());A(D)},Q=u(this,Le);switch(Q.status){case"pending":t.queryHash===r.queryHash&&A(Q);break;case"fulfilled":(B||N.data!==Q.value)&&I();break;case"rejected":(!B||N.error!==Q.reason)&&I();break}}return N}updateResult(){let t=u(this,ue),n=this.createResult(u(this,k),this.options);if(b(this,wt,u(this,k).state),b(this,Bt,this.options),u(this,wt).data!==void 0&&b(this,Vt,u(this,k)),Dt(n,t))return;b(this,ue,n);let r=()=>{if(!t)return!0;let{notifyOnChangeProps:s}=this.options,i=typeof s=="function"?s():s;if(i==="all"||!i&&!u(this,$t).size)return!0;let o=new Set(i??u(this,$t));return this.options.throwOnError&&o.add("error"),Object.keys(u(this,ue)).some(a=>{let c=a;return u(this,ue)[c]!==t[c]&&o.has(c)})};T(this,q,ji).call(this,{listeners:r()})}onQueryUpdate(){this.updateResult(),this.hasListeners()&&T(this,q,Ss).call(this)}},fe=new WeakMap,k=new WeakMap,Dn=new WeakMap,ue=new WeakMap,wt=new WeakMap,Bt=new WeakMap,Le=new WeakMap,tt=new WeakMap,Un=new WeakMap,Ht=new WeakMap,Vt=new WeakMap,St=new WeakMap,Rt=new WeakMap,nt=new WeakMap,$t=new WeakMap,q=new WeakSet,Qn=function(t){T(this,q,xs).call(this);let n=u(this,k).fetch(this.options,t);return t?.throwOnError||(n=n.catch(H)),n},vs=function(){T(this,q,Rs).call(this);let t=xe(this.options.staleTime,u(this,k));if(Me.isServer()||u(this,ue).isStale||!kn(t))return;let r=fr(u(this,ue).dataUpdatedAt,t)+1;b(this,St,Ae.setTimeout(()=>{u(this,ue).isStale||this.updateResult()},r))},bs=function(){return(typeof this.options.refetchInterval=="function"?this.options.refetchInterval(u(this,k)):this.options.refetchInterval)??!1},ws=function(t){T(this,q,Ps).call(this),b(this,nt,t),!(Me.isServer()||de(this.options.enabled,u(this,k))===!1||!kn(u(this,nt))||u(this,nt)===0)&&b(this,Rt,Ae.setInterval(()=>{(this.options.refetchIntervalInBackground||Qt.isFocused())&&T(this,q,Qn).call(this)},u(this,nt)))},Ss=function(){T(this,q,vs).call(this),T(this,q,ws).call(this,T(this,q,bs).call(this))},Rs=function(){u(this,St)!==void 0&&(Ae.clearTimeout(u(this,St)),b(this,St,void 0))},Ps=function(){u(this,Rt)!==void 0&&(Ae.clearInterval(u(this,Rt)),b(this,Rt,void 0))},xs=function(){let t=u(this,fe).getQueryCache().build(u(this,fe),this.options);if(t===u(this,k))return;let n=u(this,k);b(this,k,t),b(this,Dn,t.state),this.hasListeners()&&(n?.removeObserver(this),t.addObserver(this))},ji=function(t){U.batch(()=>{t.listeners&&this.listeners.forEach(n=>{n(u(this,ue))}),u(this,fe).getQueryCache().notify({query:u(this,k),type:"observerResultsUpdated"})})},Li);function Ru(e,t){return de(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status==="error"&&t.retryOnMount===!1)}function Ni(e,t){return Ru(e,t)||e.state.data!==void 0&&Cs(e,t,t.refetchOnMount)}function Cs(e,t,n){if(de(t.enabled,e)!==!1&&xe(t.staleTime,e)!=="static"){let r=typeof n=="function"?n(e):n;return r==="always"||r!==!1&&Ts(e,t)}return!1}function Ki(e,t,n,r){return(e!==t||de(r.enabled,e)===!1)&&(!n.suspense||e.state.status!=="error")&&Ts(e,n)}function Ts(e,t){return de(t.enabled,e)!==!1&&e.isStaleByTime(xe(t.staleTime,e))}function Pu(e,t){return!Dt(e.getCurrentResult(),t)}function Gt(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||[],a={pages:[],pageParams:[]},c=0,l=async()=>{let d=!1,m=y=>{Ai(y,()=>t.signal,()=>d=!0)},p=hr(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 P=(()=>{let F={client:t.client,queryKey:t.queryKey,pageParam:h,direction:g?"backward":"forward",meta:t.options.meta};return m(F),F})(),O=await p(P),{maxPages:X}=t.options,x=g?Ii:Ei;return{pages:x(y.pages,O,X),pageParams:x(y.pageParams,h,X)}};if(s&&i.length){let y=s==="backward",h=y?Wi:Es,g={pages:i,pageParams:o},v=h(r,g);a=await f(g,v,y)}else{let y=e??i.length;do{let h=c===0?o[0]??r.initialPageParam:Es(r,a);if(c>0&&h==null)break;a=await f(a,h),c++}while(c<y)}return a};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 Es(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 Wi(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}function Bi(e,t){return t?Es(e,t)!=null:!1}function Hi(e,t){return!t||!e.getPreviousPageParam?!1:Wi(e,t)!=null}var Is=class extends Nn{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:Gt()})}getOptimisticResult(e){return e.behavior=Gt(),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:a}=r,c=n.fetchMeta?.fetchMore?.direction,l=o&&c==="forward",d=s&&c==="forward",m=o&&c==="backward",p=s&&c==="backward";return{...r,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:Bi(t,n.data),hasPreviousPage:Hi(t,n.data),isFetchNextPageError:l,isFetchingNextPage:d,isFetchPreviousPageError:m,isFetchingPreviousPage:p,isRefetchError:a&&!l&&!m,isRefetching:i&&!d&&!p}}};var Kn,Oe,oe,Pt,Fe,rt,Vi,$i=(Vi=class extends _r{constructor(t){super();w(this,Fe);w(this,Kn);w(this,Oe);w(this,oe);w(this,Pt);b(this,Kn,t.client),this.mutationId=t.mutationId,b(this,oe,t.mutationCache),b(this,Oe,[]),this.state=t.state||As(),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,Oe).includes(t)||(u(this,Oe).push(t),this.clearGcTimeout(),u(this,oe).notify({type:"observerAdded",mutation:this,observer:t}))}removeObserver(t){b(this,Oe,u(this,Oe).filter(n=>n!==t)),this.scheduleGc(),u(this,oe).notify({type:"observerRemoved",mutation:this,observer:t})}optionalRemove(){u(this,Oe).length||(this.state.status==="pending"?this.scheduleGc():u(this,oe).remove(this))}continue(){return u(this,Pt)?.continue()??this.execute(this.state.variables)}async execute(t){let n=()=>{T(this,Fe,rt).call(this,{type:"continue"})},r={client:u(this,Kn),meta:this.options.meta,mutationKey:this.options.mutationKey};b(this,Pt,yr({fn:()=>this.options.mutationFn?this.options.mutationFn(t,r):Promise.reject(new Error("No mutationFn found")),onFail:(o,a)=>{T(this,Fe,rt).call(this,{type:"failed",failureCount:o,error:a})},onPause:()=>{T(this,Fe,rt).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,Pt).canStart();try{if(s)n();else{T(this,Fe,rt).call(this,{type:"pending",variables:t,isPaused:i}),u(this,oe).config.onMutate&&await u(this,oe).config.onMutate(t,this,r);let a=await this.options.onMutate?.(t,r);a!==this.state.context&&T(this,Fe,rt).call(this,{type:"pending",context:a,variables:t,isPaused:i})}let o=await u(this,Pt).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),T(this,Fe,rt).call(this,{type:"success",data:o}),o}catch(o){try{await u(this,oe).config.onError?.(o,t,this.state.context,this,r)}catch(a){Promise.reject(a)}try{await this.options.onError?.(o,t,this.state.context,r)}catch(a){Promise.reject(a)}try{await u(this,oe).config.onSettled?.(void 0,o,this.state.variables,this.state.context,this,r)}catch(a){Promise.reject(a)}try{await this.options.onSettled?.(void 0,o,t,this.state.context,r)}catch(a){Promise.reject(a)}throw T(this,Fe,rt).call(this,{type:"error",error:o}),o}finally{u(this,oe).runNext(this)}}},Kn=new WeakMap,Oe=new WeakMap,oe=new WeakMap,Pt=new WeakMap,Fe=new WeakSet,rt=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),U.batch(()=>{u(this,Oe).forEach(r=>{r.onMutationUpdate(t)}),u(this,oe).notify({mutation:this,type:"updated",action:t})})},Vi);function As(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:"idle",variables:void 0,submittedAt:0}}var je,Ce,Ln,Gi,zi=(Gi=class extends ve{constructor(t={}){super();w(this,je);w(this,Ce);w(this,Ln);this.config=t,b(this,je,new Set),b(this,Ce,new Map),b(this,Ln,0)}build(t,n,r){let s=new $i({client:t,mutationCache:this,mutationId:++An(this,Ln)._,options:t.defaultMutationOptions(n),state:r});return this.add(s),s}add(t){u(this,je).add(t);let n=vr(t);if(typeof n=="string"){let r=u(this,Ce).get(n);r?r.push(t):u(this,Ce).set(n,[t])}this.notify({type:"added",mutation:t})}remove(t){if(u(this,je).delete(t)){let n=vr(t);if(typeof n=="string"){let r=u(this,Ce).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,Ce).delete(n)}}this.notify({type:"removed",mutation:t})}canRun(t){let n=vr(t);if(typeof n=="string"){let s=u(this,Ce).get(n)?.find(i=>i.state.status==="pending");return!s||s===t}else return!0}runNext(t){let n=vr(t);return typeof n=="string"?u(this,Ce).get(n)?.find(s=>s!==t&&s.state.isPaused)?.continue()??Promise.resolve():Promise.resolve()}clear(){U.batch(()=>{u(this,je).forEach(t=>{this.notify({type:"removed",mutation:t})}),u(this,je).clear(),u(this,Ce).clear()})}getAll(){return Array.from(u(this,je))}find(t){let n={exact:!0,...t};return this.getAll().find(r=>mr(n,r))}findAll(t={}){return this.getAll().filter(n=>mr(t,n))}notify(t){U.batch(()=>{this.listeners.forEach(n=>{n(t)})})}resumePausedMutations(){let t=this.getAll().filter(n=>n.state.isPaused);return U.batch(()=>Promise.all(t.map(n=>n.continue().catch(H))))}},je=new WeakMap,Ce=new WeakMap,Ln=new WeakMap,Gi);function vr(e){return e.options.scope?.id}var We,st,pe,Be,He,br,ks,Ji,Ms=(Ji=class extends ve{constructor(t,n){super();w(this,He);w(this,We);w(this,st);w(this,pe);w(this,Be);b(this,We,t),this.setOptions(n),this.bindMethods(),T(this,He,br).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,We).defaultMutationOptions(t),Dt(this.options,n)||u(this,We).getMutationCache().notify({type:"observerOptionsUpdated",mutation:u(this,pe),observer:this}),n?.mutationKey&&this.options.mutationKey&&ke(n.mutationKey)!==ke(this.options.mutationKey)?this.reset():u(this,pe)?.state.status==="pending"&&u(this,pe).setOptions(this.options)}onUnsubscribe(){this.hasListeners()||u(this,pe)?.removeObserver(this)}onMutationUpdate(t){T(this,He,br).call(this),T(this,He,ks).call(this,t)}getCurrentResult(){return u(this,st)}reset(){u(this,pe)?.removeObserver(this),b(this,pe,void 0),T(this,He,br).call(this),T(this,He,ks).call(this)}mutate(t,n){return b(this,Be,n),u(this,pe)?.removeObserver(this),b(this,pe,u(this,We).getMutationCache().build(u(this,We),this.options)),u(this,pe).addObserver(this),u(this,pe).execute(t)}},We=new WeakMap,st=new WeakMap,pe=new WeakMap,Be=new WeakMap,He=new WeakSet,br=function(){let t=u(this,pe)?.state??As();b(this,st,{...t,isPending:t.status==="pending",isSuccess:t.status==="success",isError:t.status==="error",isIdle:t.status==="idle",mutate:this.mutate,reset:this.reset})},ks=function(t){U.batch(()=>{if(u(this,Be)&&this.hasListeners()){let n=u(this,st).variables,r=u(this,st).context,s={client:u(this,We),meta:this.options.meta,mutationKey:this.options.mutationKey};if(t?.type==="success"){try{u(this,Be).onSuccess?.(t.data,n,r,s)}catch(i){Promise.reject(i)}try{u(this,Be).onSettled?.(t.data,null,n,r,s)}catch(i){Promise.reject(i)}}else if(t?.type==="error"){try{u(this,Be).onError?.(t.error,n,r,s)}catch(i){Promise.reject(i)}try{u(this,Be).onSettled?.(void 0,t.error,n,r,s)}catch(i){Promise.reject(i)}}}this.listeners.forEach(n=>{n(u(this,st))})})},Ji);var qe,Yi,Xi=(Yi=class extends ve{constructor(t={}){super();w(this,qe);this.config=t,b(this,qe,new Map)}build(t,n,r){let s=n.queryKey,i=n.queryHash??Mn(s,n),o=this.get(i);return o||(o=new Di({client:t,queryKey:s,queryHash:i,options:t.defaultQueryOptions(n),state:r,defaultOptions:t.getQueryDefaults(s)}),this.add(o)),o}add(t){u(this,qe).has(t.queryHash)||(u(this,qe).set(t.queryHash,t),this.notify({type:"added",query:t}))}remove(t){let n=u(this,qe).get(t.queryHash);n&&(t.destroy(),n===t&&u(this,qe).delete(t.queryHash),this.notify({type:"removed",query:t}))}clear(){U.batch(()=>{this.getAll().forEach(t=>{this.remove(t)})})}get(t){return u(this,qe).get(t)}getAll(){return[...u(this,qe).values()]}find(t){let n={exact:!0,...t};return this.getAll().find(r=>pr(n,r))}findAll(t={}){let n=this.getAll();return Object.keys(t).length>0?n.filter(r=>pr(t,r)):n}notify(t){U.batch(()=>{this.listeners.forEach(n=>{n(t)})})}onFocus(){U.batch(()=>{this.getAll().forEach(t=>{t.onFocus()})})}onOnline(){U.batch(()=>{this.getAll().forEach(t=>{t.onOnline()})})}},qe=new WeakMap,Yi);var V,it,ot,zt,Jt,at,Yt,Xt,Zi,Os=(Zi=class{constructor(e={}){w(this,V);w(this,it);w(this,ot);w(this,zt);w(this,Jt);w(this,at);w(this,Yt);w(this,Xt);b(this,V,e.queryCache||new Xi),b(this,it,e.mutationCache||new zi),b(this,ot,e.defaultOptions||{}),b(this,zt,new Map),b(this,Jt,new Map),b(this,at,0)}mount(){An(this,at)._++,u(this,at)===1&&(b(this,Yt,Qt.subscribe(async e=>{e&&(await this.resumePausedMutations(),u(this,V).onFocus())})),b(this,Xt,jt.subscribe(async e=>{e&&(await this.resumePausedMutations(),u(this,V).onOnline())})))}unmount(){var e,t;An(this,at)._--,u(this,at)===0&&((e=u(this,Yt))==null||e.call(this),b(this,Yt,void 0),(t=u(this,Xt))==null||t.call(this),b(this,Xt,void 0))}isFetching(e){return u(this,V).findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return u(this,it).findAll({...e,status:"pending"}).length}getQueryData(e){let t=this.defaultQueryOptions({queryKey:e});return u(this,V).get(t.queryHash)?.state.data}ensureQueryData(e){let t=this.defaultQueryOptions(e),n=u(this,V).build(this,t),r=n.state.data;return r===void 0?this.fetchQuery(e):(e.revalidateIfStale&&n.isStaleByTime(xe(t.staleTime,n))&&this.prefetchQuery(t),Promise.resolve(r))}getQueriesData(e){return u(this,V).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,V).get(r.queryHash)?.state.data,o=Ci(t,i);if(o!==void 0)return u(this,V).build(this,r).setData(o,{...n,manual:!0})}setQueriesData(e,t,n){return U.batch(()=>u(this,V).findAll(e).map(({queryKey:r})=>[r,this.setQueryData(r,t,n)]))}getQueryState(e){let t=this.defaultQueryOptions({queryKey:e});return u(this,V).get(t.queryHash)?.state}removeQueries(e){let t=u(this,V);U.batch(()=>{t.findAll(e).forEach(n=>{t.remove(n)})})}resetQueries(e,t){let n=u(this,V);return U.batch(()=>(n.findAll(e).forEach(r=>{r.reset()}),this.refetchQueries({type:"active",...e},t)))}cancelQueries(e,t={}){let n={revert:!0,...t},r=U.batch(()=>u(this,V).findAll(e).map(s=>s.cancel(n)));return Promise.all(r).then(H).catch(H)}invalidateQueries(e,t={}){return U.batch(()=>(u(this,V).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=U.batch(()=>u(this,V).findAll(e).filter(s=>!s.isDisabled()&&!s.isStatic()).map(s=>{let i=s.fetch(void 0,n);return n.throwOnError||(i=i.catch(H)),s.state.fetchStatus==="paused"?Promise.resolve():i}));return Promise.all(r).then(H)}fetchQuery(e){let t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);let n=u(this,V).build(this,t);return n.isStaleByTime(xe(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(H).catch(H)}fetchInfiniteQuery(e){return e.behavior=Gt(e.pages),this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(H).catch(H)}ensureInfiniteQueryData(e){return e.behavior=Gt(e.pages),this.ensureQueryData(e)}resumePausedMutations(){return jt.isOnline()?u(this,it).resumePausedMutations():Promise.resolve()}getQueryCache(){return u(this,V)}getMutationCache(){return u(this,it)}getDefaultOptions(){return u(this,ot)}setDefaultOptions(e){b(this,ot,e)}setQueryDefaults(e,t){u(this,zt).set(ke(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){let t=[...u(this,zt).values()],n={};return t.forEach(r=>{gt(e,r.queryKey)&&Object.assign(n,r.defaultOptions)}),n}setMutationDefaults(e,t){u(this,Jt).set(ke(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){let t=[...u(this,Jt).values()],n={};return t.forEach(r=>{gt(e,r.mutationKey)&&Object.assign(n,r.defaultOptions)}),n}defaultQueryOptions(e){if(e._defaulted)return e;let t={...u(this,ot).queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||(t.queryHash=Mn(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===Ut&&(t.enabled=!1),t}defaultMutationOptions(e){return e?._defaulted?e:{...u(this,ot).mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){u(this,V).clear(),u(this,it).clear()}},V=new WeakMap,it=new WeakMap,ot=new WeakMap,zt=new WeakMap,Jt=new WeakMap,at=new WeakMap,Yt=new WeakMap,Xt=new WeakMap,Zi);var Zt=J(ce(),1),to=J(wr(),1),Fs=Zt.createContext(void 0),j=e=>{let t=Zt.useContext(Fs);if(e)return e;if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t},jn=({client:e,children:t})=>(Zt.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),(0,to.jsx)(Fs.Provider,{value:e,children:t}));var Sr=J(ce(),1),no=Sr.createContext(!1),ro=()=>Sr.useContext(no),Af=no.Provider;var Wn=J(ce(),1),xu=J(wr(),1);function Cu(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var Tu=Wn.createContext(Cu()),so=()=>Wn.useContext(Tu);var io=J(ce(),1);var oo=(e,t,n)=>{let r=n?.state.error&&typeof e.throwOnError=="function"?Nt(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||r)&&(t.isReset()||(e.retryOnMount=!1))},ao=e=>{io.useEffect(()=>{e.clearReset()},[e])},co=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:s})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(s&&e.data===void 0||Nt(n,[e.error,r]));var uo=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))}},lo=(e,t)=>e.isLoading&&e.isFetching&&!t,fo=(e,t)=>e?.suspense&&t.isPending,qs=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});var ct=J(ce(),1);function Rr(e,t,n){let r=ro(),s=so(),i=j(n),o=i.defaultQueryOptions(e);i.getDefaultOptions().queries?._experimental_beforeQuery?.(o);let a=i.getQueryCache().get(o.queryHash);o._optimisticResults=r?"isRestoring":"optimistic",uo(o),oo(o,s,a),ao(s);let c=!i.getQueryCache().get(o.queryHash),[l]=ct.useState(()=>new t(i,o)),d=l.getOptimisticResult(o),m=!r&&e.subscribed!==!1;if(ct.useSyncExternalStore(ct.useCallback(p=>{let f=m?l.subscribe(U.batchCalls(p)):H;return l.updateResult(),f},[l,m]),()=>l.getCurrentResult(),()=>l.getCurrentResult()),ct.useEffect(()=>{l.setOptions(o)},[o,l]),fo(o,d))throw qs(o,l,s);if(co({result:d,errorResetBoundary:s,throwOnError:o.throwOnError,query:a,suspense:o.suspense}))throw d.error;return i.getDefaultOptions().queries?._experimental_afterQuery?.(o,d),o.experimental_prefetchInRender&&!Me.isServer()&&lo(d,r)&&(c?qs(o,l,s):a?.promise)?.catch(H).finally(()=>{l.updateResult()}),o.notifyOnChangeProps?d:l.trackResult(d)}function K(e,t){return Rr(e,Nn,t)}var Ve=J(ce(),1);function ge(e,t){let n=j(t),[r]=Ve.useState(()=>new Ms(n,e));Ve.useEffect(()=>{r.setOptions(e)},[r,e]);let s=Ve.useSyncExternalStore(Ve.useCallback(o=>r.subscribe(U.batchCalls(o)),[r]),()=>r.getCurrentResult(),()=>r.getCurrentResult()),i=Ve.useCallback((o,a)=>{r.mutate(o,a).catch(H)},[r]);if(s.error&&Nt(r.options.throwOnError,[s.error]))throw s.error;return{...s,mutate:i,mutateAsync:s.mutate}}function Bn(e,t){return Rr(e,Is,t)}var ho=J(mo(),1),Hn=typeof window<"u"&&window.__FSAOS_CONFIG__||{},Vn=Array.isArray(Hn.sources)?Hn.sources:[],Eu=Hn.supabaseUrl||"https://vahbmsslxuustnlvsrkg.supabase.co",Iu=Hn.supabaseAnonKey||"sb_publishable_ZjosozAjfpZ4InMNElTr6Q_hHB-f5nc",we=Hn.gatewayUrl||"https://fsaos-mcp-gw-rust.fly.dev",L=(0,ho.createClient)(Eu,Iu,{auth:{persistSession:!0,autoRefreshToken:!0,detectSessionInUrl:!1}});var $n=null,Pr=0,go,Us,xr=!1;go=new Promise(e=>{Us=e});L.auth.onAuthStateChange((e,t)=>{t?.access_token?($n=t.access_token,Pr=t.expires_at??Math.floor(Date.now()/1e3)+3600):($n=null,Pr=0),xr||(xr=!0,Us())});setTimeout(()=>{xr||(xr=!0,Us())},5e3);function yo(e,t){$n=e,Pr=t??Math.floor(Date.now()/1e3)+3600}function Ns(){$n=null,Pr=0}async function $e(){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 go,$n}var rn=null,sn=null,_o=0,Qs=new Set,Ks,Gn,on=!1;Ks=new Promise(e=>{Gn=e});function Ls(){_o++,Qs.forEach(e=>{try{e()}catch(t){console.warn("[SDK] Anchor listener error:",t)}})}function Tr(e){let t=typeof e=="string"?e:e.path,n=rn!==t||sn?.id!==(typeof e=="string"?void 0:e.id);rn=t,sn=typeof e=="string"?null:e,typeof e!="string"&&!xt.some(r=>r.id===e.id)&&(xt=[...xt,e],Hs()),on||(on=!0,Gn()),n&&Ls()}function an(){return rn}function Se(){return sn}function js(){return _o}function Ws(e){return Qs.add(e),()=>{Qs.delete(e)}}function zn(){return Ks}function Bs(){return on}var Cr=null;function Ct(e,t={}){if(Cr){console.warn("[SDK] electHomeAnchor called twice; ignoring (logout to re-elect).");return}Cr=e,t.activate!==!1&&Tr(e)}function le(){return Cr}var xt=[],Ds=new Set,vo=0;function Hs(){vo++,Ds.forEach(e=>{try{e()}catch(t){console.warn("[SDK] Mount listener error:",t)}})}function Qe(){return xt}function Jn(){return vo}function Er(e){return Ds.add(e),()=>{Ds.delete(e)}}function bo(e,t){let n=JSON.stringify(xt)!==JSON.stringify(e),r=rn!==t.path||sn?.id!==t.id;xt=e,rn=t.path,sn=t,on||(on=!0,Gn()),n&&Hs(),r&&Ls()}var tn=null,en=null,nn=0;function te(){return nn}async function ut(){if(tn)return tn;if(en)return en;let e=nn;return en=(async()=>{let t=Et(),n=await $e();if(e!==nn)throw new Error("Session changed during initialization");let r={};n&&(r.Authorization=`Bearer ${n}`);let s=await fetch(`${we}/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!==nn)throw new Error("Session changed during initialization");let o=i.entry||i;return tn={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},tn})().catch(t=>{throw e===nn&&(en=null),t}),en}function Tt(){return tn}function Vs(){nn++,tn=null,en=null,rn=null,sn=null,Cr=null,xt=[]}var wo=[];function ne(e){wo.push(e)}function cn(){Vs(),Ns(),Gn(),on=!1,Ks=new Promise(e=>{Gn=e}),Ls(),Hs();for(let e of wo)try{e()}catch(t){console.warn("[SDK] Cleanup function failed:",t)}}function Et(){if(typeof window<"u"){let e=window.__FSAOS_CONFIG__;return e?.hostname?e.hostname:window.location.hostname}return"localhost"}var So=Tr,re=an,se=js,Te=Ws,Ro=zn,Ir=Bs;var $s=0,Po=!1,xo=0;function Co(e){if(typeof e!="string")return;let t=Date.parse(e);Number.isNaN(t)||($s=t-Date.now(),Po=!0,xo=Date.now())}function Ar(){return Date.now()+$s}function To(){return Po}function Eo(){return $s}function Io(){return xo}function Ao(e){if(typeof e!="string")return null;let t=Date.parse(e);return Number.isNaN(t)?null:Ar()>=t}function ko(e){if(typeof e!="string")return null;let t=Date.parse(e);return Number.isNaN(t)?null:Math.max(0,t-Ar())}var Au=new Set(["list-memberships","init"]),De=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);Y(this,"name","GatewayRequestError");Y(this,"method");Y(this,"status");Y(this,"statusText");Y(this,"payload");Y(this,"responseBody");this.method=n.method,this.status=n.status,this.statusText=n.statusText,this.payload=n.payload,this.responseBody=n.responseBody}};async function R(e,t={}){let n=te(),r=an(),s=Et(),i=`${we}/d/${s}`,o={"Content-Type":"application/json"},a=await $e();if(n!==te())throw new Error("Session changed before gateway request");if(a&&(o.Authorization=`Bearer ${a}`),!Au.has(e)&&!t._scope_path&&await zn(),n!==te())throw new Error("Session changed before gateway request");let c={...t},l=Tt();!c.domain_scope_id&&l?.scope_id&&(c.domain_scope_id=l.scope_id);let d=r??an();!c._scope_path&&d&&(c._scope_path=d);let m=await fetch(i,{method:"POST",headers:o,body:JSON.stringify({method:e,params:c})}),p=await m.text();if(n!==te())throw new Error("Session changed during gateway request");let f=null;if(p)try{f=JSON.parse(p)}catch{}if(!m.ok||!f)throw new De({method:e,status:m.status,statusText:m.statusText,payload:f,responseBody:p});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 Ft(f):new De({method:e,status:m.status,statusText:m.statusText,payload:f,responseBody:p})}return f&&f.server_now!==void 0&&Co(f.server_now),f}var _=J(ce(),1),Zu=J(Oo(),1),el=J(wr(),1);var Fo=new WeakMap;function Ge(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(m=>m.promise?[m.promise]:[]);if(i.length===0)return s();let o=`${r?"=":"^"}${JSON.stringify(t)}`,a=Fo.get(e);a||(a=new Map,Fo.set(e,a));let c=a.get(o);if(c)return c;let l=a,d=Promise.allSettled(i).then(()=>(l.delete(o),s()));return l.set(o,d),d}function lt(e,t){return typeof e=="string"&&(e===t||e.startsWith(`${t}/`))}var kr=new WeakMap,qo=e=>e.meta?.arrangementRealtime===!0;function un(e,t){let n=e.getQueryCache().find({queryKey:t,exact:!0});if(!n)return;let r=kr.get(e);r||(r=new Map,kr.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&&Ge(e,t,{exact:!0})},250))}function Qo(e,t){if(!(!t||typeof t!="object"))for(let n of e.getQueryCache().getAll()){if(!qo(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)))&&un(e,n.queryKey)}}function Do(e){for(let t of e.getQueryCache().getAll())qo(t)&&t.state.data!==void 0&&un(e,t.queryKey)}function Uo(e){kr.get(e)?.forEach(clearTimeout),kr.delete(e)}var ze=null;ne(()=>{ze&&(ze.cancelQueries({queryKey:["vfs"]}),ze.removeQueries({queryKey:["vfs"]}))});function No(e){if(ze&&ze!==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.");ze=e}function C(){return ze||(ze=new Os({defaultOptions:{queries:{staleTime:1e3*60*2,gcTime:1e3*60*10,refetchOnWindowFocus:!1,retry:1}}})),ze}var Ko=new Proxy({},{get(e,t,n){let r=C(),s=r[t];return typeof s=="function"?s.bind(r):s}});var Mr=new WeakMap;function Gs(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 Mu(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 Ou(e,t,n){if(ku(e,n))return!0;let r=t.scope,s=typeof r=="string"&&r!=="__unscoped__",i=typeof n.path=="string"||typeof n.old_path=="string";if(s&&i&&!lt(n.path,r)&&!lt(n.old_path,r))return!1;if(n.item_type==="symlink"&&s&&i)return!0;let o=Mu(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 Lo(e,t){let n=Mr.get(e);n||(n=new Map,Mr.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||!Gs(t))&&Ge(e,t.queryKey,{exact:!0})},500))}function jo(e,t){if(!(!t||typeof t!="object"))for(let n of e.getQueryCache().getAll()){let r=Gs(n);r&&Ou(n,r,t)&&Lo(e,n)}}function Wo(e){for(let t of e.getQueryCache().getAll())Gs(t)&&t.state.data!==void 0&&Lo(e,t)}function Bo(e){Mr.get(e)?.forEach(clearTimeout),Mr.delete(e)}function ee(){return re()??"__unscoped__"}var S={all:()=>["vfs",ee()],item:e=>["vfs",ee(),"item",e],itemById:e=>["vfs","item-by-id",e],children:e=>["vfs",ee(),"children",e],allChildren:()=>["vfs",ee(),"children"],types:e=>["vfs","types",e??"default"],edges:e=>["vfs","edges",e],search:(e,t)=>["vfs",ee(),"search",e,...t??[]],items:(e,t)=>["vfs",ee(),"items",e,JSON.stringify(t??{})],allItems:()=>["vfs",ee(),"items"],tree:(e,t)=>["vfs",ee(),"tree",e,t??1],openEnvelope:(e,t)=>["vfs",ee(),"open",e,t??"__default__"],allOpenEnvelopes:()=>["vfs",ee(),"open"],memberFocus:e=>["vfs","member-focus",e],fractalInstances:()=>["vfs","fractal-instances"],recentActivity:(e,t,n)=>["vfs",ee(),"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",ee(),"channel-messages",e,t??"__top__"],allChannelMessages:()=>["vfs",ee(),"channel-messages"],channels:e=>["vfs",ee(),"channels",e??"all"],allChannels:()=>["vfs",ee(),"channels"],notifications:(e,t)=>["vfs",ee(),"notifications",e??"all",t??200],allNotifications:()=>["vfs",ee(),"notifications"],unreadCounts:()=>["vfs",ee(),"unread-counts"],memberships:e=>["memberships",e]};var Fu=typeof window<"u"&&(window.location?.hostname==="localhost"||window.location?.hostname==="127.0.0.1"||window.__FSAOS_WS_DEBUG__);function $(...e){Fu&&console.log("[WS]",...e)}var E=null,ln=null,fn=null,Yn=0,qu=3e4,Ho=1e4,mn=!1,Vo=!1,Yo=3e4,Qu=Yo*2+5e3,Or=0,Fr=null,$o=!1;function Du(){Zn(),Or=Date.now(),Fr=setInterval(()=>{if(E&&E.readyState===WebSocket.OPEN&&Date.now()-Or>Qu){$("ping: no inbound traffic for",Date.now()-Or,"ms \u2014 closing half-open socket");try{E.close(4e3,"liveness timeout")}catch{}return}Ye({type:"ping"})},Yo)}function Zn(){Fr&&(clearInterval(Fr),Fr=null)}function Uu(){typeof document>"u"||(document.hidden?Zn():Xn()&&($("Tab visible, reconnecting..."),It()))}function Nu(){$o||typeof document>"u"||(document.addEventListener("visibilitychange",Uu),$o=!0)}var ye={};function Js(e,t){let n=e.replace(/\/+$/,""),r=t.replace(/\/+$/,"");return!n||!r?n===r:r===n||r.startsWith(`${n}/`)}var pn=[],Je=new Map,dn=new Map,Re=new Map;function Ku(e){let t=dn.get(e);return t?Array.from(new Set(Array.from(t.values()).flatMap(n=>n.event_types))).sort():[]}function Go(e,t){return e?e.length===t.length&&e.every((n,r)=>n===t[r]):!1}function zo(e){let t=Ku(e);if(t.length===0)return Je.delete(e),null;let n={scope_id:e,event_types:t};return Je.set(e,n),n}var Ue=new Map,dt=new Map,zs="disconnected",qr=[];function Qr(e){if(zs!==e){zs=e;for(let t of[...qr])try{t(e)}catch{}}}function Lu(e){Ue.set(e,"ready");let t=dt.get(e);if(t){dt.delete(e);for(let n of t)n()}}function ju(){for(let e of Ue.keys())Ue.set(e,"disconnected")}function Ys(e,t){Ue.set(e,"pending"),Ye({type:"subscribe_path",path:e,event_types:t})}function Wu(){return Object.keys(ye).some(t=>ye[t]&&ye[t].length>0)||pn.length>0}function Xn(){return Je.size>0||Re.size>0}async function It(){if(!Xn()){$("ensureConnection: no active subscriptions, skipping");return}if(E&&E.readyState===WebSocket.OPEN){$("ensureConnection: already open");return}if(ln)return $("ensureConnection: connection already in flight, waiting..."),ln;if(E){$("ensureConnection: killing stale WS in state",E.readyState);try{E.close()}catch{}E=null}return mn=!1,ln=(async()=>{try{let e=typeof window<"u"&&window.__FSAOS_CONFIG__||{},t=we,n=await $e();if(!n){$("ensureConnection: no token available, will retry"),Jo();return}let r=t.startsWith("https")?"wss":"ws",s=t.replace(/^https?:\/\//,""),i=`${r}://${s}/ws`;i+=`?token=${encodeURIComponent(n)}`,$("ensureConnection: opening WS to",i.substring(0,50)+"..."),Qr("connecting"),E=new WebSocket(i);let o=E;await new Promise((a,c)=>{if(!E)return c(new Error("WebSocket not created"));let l=setTimeout(()=>{if(E===o){if($("ensureConnection: TIMEOUT after",Ho,"ms"),E&&E.readyState!==WebSocket.OPEN){try{E.close()}catch{}E=null}c(new Error("WebSocket connection timeout"))}},Ho);o.onopen=()=>{if(E!==o)return;clearTimeout(l),$("ensureConnection: CONNECTED");let d=Vo;Vo=!0,Yn=0,Qr("connected"),Bu(d),(typeof document>"u"||!document.hidden)&&Du(),Nu(),a()},o.onmessage=d=>{E===o&&Hu(d.data)},o.onerror=()=>{$("ensureConnection: WS error event")},o.onclose=d=>{clearTimeout(l),E===o&&($("ensureConnection: WS closed, code:",d.code,"reason:",d.reason),E=null,Zn(),ju(),Qr("disconnected"),!mn&&Xn()&&Jo(),c(new Error(`WebSocket closed: ${d.code}`)))}})}catch(e){$("ensureConnection: failed -",e?.message||e)}finally{ln=null}})(),ln}function Jo(){if(fn||typeof document<"u"&&document.hidden)return;let e=Math.min(1e3*Math.pow(2,Yn)+Math.random()*1e3,qu);Yn++,$("scheduleReconnect: attempt",Yn,"in",Math.round(e),"ms"),fn=setTimeout(()=>{fn=null,Xn()&&It()},e)}function Bu(e=!1){for(let t of Je.values())$("resubscribeAll: scope",t.scope_id),Ye({type:"subscribe",scope_id:t.scope_id,event_types:t.event_types});for(let t of Re.values())$("resubscribeAll: path",t.path),Ys(t.path,t.event_types);if(e)try{let t=C();Wo(t),Do(t);for(let n of Re.values())t.invalidateQueries({queryKey:S.item(n.path)}),t.invalidateQueries({queryKey:S.children(n.path)});$("resubscribeAll: invalidated",Re.size,"paths after reconnect")}catch(t){$("resubscribeAll: cache invalidation skipped",t)}}function Ye(e){E&&E.readyState===WebSocket.OPEN&&E.send(JSON.stringify(e))}function Hu(e){Or=Date.now();try{let t=JSON.parse(e);if(t.type==="subscribed_path"){typeof t.path=="string"&&Lu(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"&&(jo(C(),r),Qo(C(),r)),typeof r.path=="string")for(let[s,i]of Object.entries(ye))s!=="*"&&Js(s,r.path)&&i.forEach(o=>o(r));ye["*"]&&ye["*"].forEach(s=>s(r));for(let s of pn)s.eventType!=="*"&&s.eventType!==n||s.filter&&!s.filter(r)||s.callback(r)}}catch{}}function Xs(){!Wu()&&Je.size===0&&Re.size===0&&E&&(mn=!0,Zn(),E.close(),E=null,mn=!1)}function Dr(e,t){return ye[e]||(ye[e]=[]),ye[e].push(t),Re.has(e)||(Re.set(e,{path:e,event_types:["token_stream"]}),E&&E.readyState===WebSocket.OPEN?Ys(e,["token_stream"]):Ue.set(e,"pending")),It(),()=>{let n=ye[e];if(n){let r=n.indexOf(t);r!==-1&&n.splice(r,1),n.length===0&&(delete ye[e],Re.delete(e),Ue.delete(e),dt.delete(e),Ye({type:"unsubscribe_path",path:e}))}Xs()}}function ie(e,t,n){let s=(Array.isArray(e)?e:[e]).map(i=>({eventType:i,callback:t,filter:n}));return pn.push(...s),Xn()&&It(),()=>{for(let i of s){let o=pn.indexOf(i);o!==-1&&pn.splice(o,1)}Xs()}}function hn(e,t=["vfs_change","ccm_change"]){let n=Symbol(e),r=Array.from(new Set(t)).sort();if(r.length===0)return()=>{};let s=dn.get(e)??new Map,i=Je.get(e)?.event_types;s.set(n,{event_types:r}),dn.set(e,s);let o=zo(e);if(!o)return()=>{};$("subscribeToScope:",e,o.event_types),E&&E.readyState===WebSocket.OPEN&&!Go(i,o.event_types)&&Ye({type:"subscribe",scope_id:e,event_types:o.event_types}),It();let a=!0;return()=>{if(!a)return;a=!1;let c=dn.get(e);if(!c?.delete(n))return;let l=Je.get(e)?.event_types;if(c.size===0)dn.delete(e),Je.delete(e),Ye({type:"unsubscribe",scope_id:e});else{let d=zo(e);d&&E&&E.readyState===WebSocket.OPEN&&!Go(l,d.event_types)&&Ye({type:"subscribe",scope_id:e,event_types:d.event_types})}Xs()}}function Xo(e,t,n={}){Ye({type:"emit",scope_id:e,event_type:t,payload:n})}function Zs(){$("disconnectSSE: tearing down"),Bo(C()),Uo(C()),mn=!0,Zn(),E&&(E.close(),E=null),fn&&(clearTimeout(fn),fn=null),ln=null,mn=!1,Yn=0;for(let e of Object.keys(ye))delete ye[e];pn.length=0,Je.clear(),dn.clear(),Re.clear(),Ue.clear(),dt.clear(),Qr("disconnected")}function Zo(){Ye({type:"ping"})}function ea(e){return Re.has(e)?Ue.get(e)??"pending":"unsubscribed"}function ta(e,t=5e3){return Re.has(e)?Ue.get(e)==="ready"&&E&&E.readyState===WebSocket.OPEN?Promise.resolve(!0):(It(),new Promise(n=>{let r=!1,s=dt.get(e)??[],i=()=>{r||(r=!0,clearTimeout(o),n(!0))};s.push(i),dt.set(e,s);let o=setTimeout(()=>{if(r)return;r=!0;let a=dt.get(e);if(a){let c=a.indexOf(i);c!==-1&&a.splice(c,1),a.length===0&&dt.delete(e)}n(!1)},t)})):Promise.resolve(!1)}function na(e){let t=Re.get(e);if(!t){$("resubscribePath: no active subscription for",e);return}E&&E.readyState===WebSocket.OPEN?($("resubscribePath: re-sending frame for",e),Ys(t.path,t.event_types)):(Ue.set(e,"pending"),It())}function ra(e){qr.push(e);try{e(zs)}catch{}return()=>{let t=qr.indexOf(e);t!==-1&&qr.splice(t,1)}}ne(Zs);function sa(){return new Date().toISOString()}function ia(){return crypto.randomUUID?crypto.randomUUID():`${Date.now()}-${Math.random().toString(36).slice(2,11)}`}function Pe(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||sa(),updated_at:e.updated_at||sa(),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 er(e){return(e.content?.items||e.items||[]).map(Pe)}async function Nr(e){try{let t=await R("read",{id:e});if(t.item_name||t.item_path){let r=Pe(t);return r.path&&C().setQueryData(S.item(r.path),r),r}let n=t.item;if(n){let r=Pe(n);return r.path&&C().setQueryData(S.item(r.path),r),r}return null}catch{return null}}async function Kr(e){try{let t=await R("read",{path:e});if(t.item_name||t.item_path)return Pe(t);let n=t.item;return n?Pe(n):null}catch{return null}}async function tr(e){try{let t=await R("list",{path:e,limit:200}),n=er(t);for(let r of n)C().setQueryData(S.item(r.path),r);return n}catch(t){return console.error(`[gateway] Failed to fetch children of ${e}:`,t),[]}}async function oa(e,t){let{items:n}=await yn({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 Lr(e,t,n){try{let r=await R("list",{path:e,limit:t,offset:n}),s=er(r);for(let i of s)C().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 jr(e){let n=await R("types-list",e?{scope_id:e}:{}),r=n.content?.items||n.items||[],s=new Map;for(let i of r){let o=i.name,a=i.type_data;!o||!a||s.set(o,{type_key:o,display_name:a.display_name||o,display_name_plural:a.display_name_plural||o+"s",icon:a.icon||"File",color:a.color||"gray",description:a.description||"",input_schema:a.input_schema||{},system_schema:a.system_schema||{},json_schema:a.input_schema||a.json_schema||{},default_data:a.default_data||{},field_defaults:a.field_defaults||{},renderer_config:a.renderer_config||{},is_system:a.is_system??!1,is_active:a.is_active??!0,is_container:a.is_container??!1,is_scope:a.is_scope??!1,render_mode:a.render_mode||"none",placement_mode:a.placement_mode,direct_parent_types:a.direct_parent_types,allowed_parent_types:a.allowed_parent_types,governed_create:a.governed_create,create_method:a.create_method,dedup:a.dedup,edges:a.edges,events:a.events})}return s}async function Wr(e){try{let t=await R("edges",{item_id:e}),n=t.outgoing||[],r=t.incoming||[],s=[];for(let i of n)s.push({id:i.edge_id||ia(),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||ia(),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 Br(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 R("tree",s),o=er(i);for(let a of o)C().setQueryData(S.item(a.path),a);return o}catch(s){return console.error(`[gateway] Failed to fetch tree at ${e}:`,s),[]}}async function Hr(e,t=50,n=0){try{let r=await R("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 nr(e,t={}){let{limit:n=50,offset:r=0,include_snapshots:s=!1}=t;try{let i=await R("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 Vr(e,t=50,n=0){return nr(e,{limit:t,offset:n})}async function $r(e,t,n){try{let r={scope_id:e};t?.length&&(r.item_types=t),n&&(r.limit=n);let s=await R("member-focus",r),i=er(s);for(let o of i)C().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 Gr(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 R("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 gn(e){return!!e&&(!!e.type||Array.isArray(e.any_of)&&e.any_of.length>0)}function Vu(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 $u=["catalog","parent_only","internal"];function aa(e,t={}){if(!e||typeof e!="object")return null;let n=o=>typeof o=="string"||typeof o=="number"||typeof o=="boolean",r=o=>{let a={},c={};for(let[l,d]of Object.entries(o))l.startsWith("field.")&&l.length>6&&n(d)?a[l.slice(6)]=d:l.startsWith("field_in.")&&l.length>9&&Array.isArray(d)&&(c[l.slice(9)]=d.filter(n));return{fields:a,field_in:c}},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"&&$u.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 a of e.any_of){if(!a||typeof a!="object"||Array.isArray(a))continue;let c=a,l={};typeof c.item_type=="string"&&c.item_type&&(l.item_type=c.item_type);let d=r(c);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 gn(s)?{...s,...t}:null}async function yn(e,t={}){let n={};e.type&&(n.item_type=e.type),e.scope&&(n.scope_path=e.scope);let r={};if(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(Vu)),Object.keys(r).length>0&&(n.filters=r),e.limit!=null&&(n.limit=e.limit);try{let s=await R("query",n),i=er(s);for(let o of i)C().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)throw s;return{items:[],total_hint:0}}}function Gu(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 ca(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:Gu(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 ei(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 ua(e,t){try{let n={channel_path:e};t&&(n.parent_message_id=t);let s=await R("get-channel-messages",n),i=s.messages||s.content?.items||s.items||[];return ei(i)}catch(n){return console.error(`[gateway] Failed to fetch channel messages for ${e}:`,n),[]}}async function zr(e,t){try{let n={channel_path:e};t&&(n.parent_message_id=t);let s=await R("get-channel-messages",n),i=s.messages||[],o=ei(i),a=ca(i),c=new Map,l=[];for(let d of a)if(d.parentMessagePath){let m=c.get(d.parentMessagePath)||[];m.push(d),c.set(d.parentMessagePath,m)}else l.push(d);return{messages:o,messageCards:c,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 rr(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 R("get-channel-messages",n),i=s.messages||[],o=ca(i),a=new Map,c=[];for(let l of o)if(l.parentMessagePath){let d=a.get(l.parentMessagePath)||[];d.push(l),a.set(l.parentMessagePath,d)}else c.push(l);return{messages:ei(i),messageCards:a,siblingCards:c,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 Ur(e){C().invalidateQueries({queryKey:S.children(e)})}function ti(e){C().invalidateQueries({queryKey:S.item(e)})}function la(e,t){ti(e),Ur(e);let n=e.split("/");n.pop();let r=n.join("/")||t;r&&Ur(r)}function da(e){let t=e+"/";C().invalidateQueries({predicate:n=>{let r=n.queryKey;return r[0]!=="vfs"?!1:r.some(s=>typeof s=="string"&&(s===e||s.startsWith(t)))}})}function fa(){C().invalidateQueries({queryKey:S.all()})}function pa(e){C().invalidateQueries({queryKey:S.types(e)})}function ma(e,t){e?C().invalidateQueries({queryKey:S.channelMessages(e,t)}):C().invalidateQueries({queryKey:S.allChannelMessages()})}function ha(e,t){e&&t?C().invalidateQueries({queryKey:S.openEnvelope(e,t)}):e?C().invalidateQueries({predicate:n=>{let r=n.queryKey;return r[0]==="vfs"&&r[2]==="open"&&r[3]===e}}):C().invalidateQueries({queryKey:S.allOpenEnvelopes()})}function Ne(e){return{id:e.accountId,path:e.path,kind:e.isSpace?"space":"account",name:e.name,grantedUnderAccountId:e.grantedUnderAccountId??void 0}}async function Jr(){return((await R("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 _n=new Map,sr=null,Yr=null,ft=new Map,ga=250;function At(e){if(sr){vn(e);return}vn(e),sr=ie("vfs_change",t=>zu(t)),Yr=ie("ccm_change",t=>Ju(t))}function vn(e){if(_n.has(e))return;let t=hn(e,["vfs_change","ccm_change"]);_n.set(e,t)}function Xr(e){let t=_n.get(e);t&&(t(),_n.delete(e))}function ni(){for(let[,e]of _n)e();_n.clear(),sr&&(sr(),sr=null),Yr&&(Yr(),Yr=null),ft.forEach(e=>clearTimeout(e)),ft.clear()}ne(ni);function zu(e){let t=e.path,n=e.action;if(!t)return;let r=t.split("/");r.pop();let s=r.join("/")||"/root",i=ft.get(s);i&&clearTimeout(i);let o=setTimeout(()=>{ft.delete(s),Yu(n,t,e,s)},ga);ft.set(s,o)}function Ju(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))return;let s=`ccm:${t??""}:${n??""}`,i=ft.get(s);i&&clearTimeout(i);let o=setTimeout(()=>{ft.delete(s),t&&C().invalidateQueries({queryKey:S.edges(t)}),n&&C().invalidateQueries({queryKey:S.edges(n)}),!t&&!n&&C().invalidateQueries({predicate:a=>a.queryKey[0]==="vfs"&&a.queryKey[1]==="edges"})},ga);ft.set(s,o)}function Yu(e,t,n,r){if((e||"").toUpperCase()==="DELETE")C().removeQueries({queryKey:S.item(t)}),C().removeQueries({queryKey:S.children(t)}),C().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=Pe(i);o&&o.id&&C().setQueryData(S.item(t),o)}catch{}C().invalidateQueries({queryKey:S.children(r)}),C().invalidateQueries({predicate:i=>{let o=i.queryKey;if(o[0]!=="vfs"||o[1]!=="tree")return!1;let a=o[2];return t.startsWith(a+"/")||t===a}}),n.item_id&&C().invalidateQueries({queryKey:S.itemById(n.item_id)})}var bn=null;ne(()=>{bn=null});function pt(e){if(e!==bn||e.generation!==te())throw new Error("Workspace session changed")}function Xu(e){return e instanceof De&&e.payload?.error==="item_not_found"}function ir(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 or(e){let t=le();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 ya(e,t){return JSON.stringify({mounts:e.map(n=>n.id),last_anchor:t.id})}async function _a(e,t,n){pt(e);let r=ya(t,n);if(e.saved===r)return;let s=JSON.parse(r);await R(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}),pt(e),e.exists=!0,e.saved=r}function va(e,t){let n=Qe();At(le().id);for(let r of n)e.some(s=>s.id===r.id)||Xr(r.id);for(let r of e)vn(r.id);bo(e,t)}async function kt(e,t,n={}){let r=le();if(!r)throw new Error("Elect a home account before loading mounts");let s=`${e}/settings/mounts`;if(bn&&bn.path!==s)throw new Error("Reset the session before changing the mount declaration owner");let i=bn??(bn={generation:te(),path:s,scope:r.path,resolve:t,exists:!1,ready:!1,saved:null,queue:Promise.resolve()});return pt(i),i.loading?i.loading:i.ready?Qe():(i.resolve=t,i.loading=(async()=>{let o=null;try{let d=await R("read",{path:s,_scope_path:i.scope});if(pt(i),o=d.type_data??d.item?.type_data,!o||!Array.isArray(o.mounts)||!o.mounts.every(m=>typeof m=="string"))throw new Error("Invalid saved mount declaration");i.exists=!0}catch(d){if(pt(i),!Xu(d))throw d;i.exists=!1}let a=n.initialAnchor?ir(i,n.initialAnchor):r,c=or(o?o.mounts.map(t).filter(d=>d!==null):[a]),l=o?c.find(d=>d.id===o.last_anchor)??c.find(d=>d.kind==="space")??r:a;return o?i.saved=ya(c,l):n.initialAnchor&&await _a(i,c,l),pt(i),i.ready=!0,va(c,l),c})().finally(()=>{i.loading=void 0}),i.loading)}function Zr(e){let t=bn;if(!t?.ready)return Promise.reject(new Error("Workspace mounts are not loaded"));let n=t.queue.then(async()=>{pt(t);let{refs:r,anchor:s}=e(t);await _a(t,r,s),pt(t),va(r,s)});return t.queue=n.catch(()=>{}),n}function ri(e){return Zr(t=>({refs:or([...Qe(),ir(t,e)]),anchor:Se()}))}function ba(e){return Zr(()=>{if(e===le().id)throw new Error("The home account cannot be unmounted");let t=or(Qe().filter(r=>r.id!==e)),n=t.find(r=>r.id===Se()?.id)??t.find(r=>r.kind==="space")??le();return{refs:t,anchor:n}})}function ar(e){return Zr(t=>{let n=ir(t,e);return{refs:or([...Qe(),n]),anchor:n}})}function es(e,t){return Zr(n=>{let r=or(e.map(i=>ir(n,i))),s=ir(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 G(){return(0,_.useSyncExternalStore)(Te,se,se)}function Ra(){return G(),Ir()}function Pa(e){return G(),K({queryKey:S.item(e),queryFn:()=>Kr(e),enabled:!!e,staleTime:1/0})}function xa(e){return G(),K({queryKey:S.itemById(e),queryFn:()=>Nr(e),enabled:!!e,staleTime:1/0})}function ii(e){return G(),K({queryKey:S.children(e),queryFn:()=>tr(e),enabled:!!e})}function Ca(e){let t=ii(e);return{...t,children:t.data??[]}}function Ta(e,t=1){return G(),K({queryKey:S.tree(e,t),queryFn:()=>Br(e,t),enabled:!!e})}function Ea(e,t){return G(),K({queryKey:S.search(e,t),queryFn:async()=>{let n={query:e};t?.length&&(n.item_types=t);let r=await R("search",n);return(r.content?.items||r.items||r.results||[]).map(Pe)},enabled:!!e&&e.length>0})}function Ia(e){G();let t=(0,_.useMemo)(()=>e,[JSON.stringify(e)]);return K({queryKey:["vfs",re()??"__unscoped__","resolve",JSON.stringify(t??{})],queryFn:async()=>await R("resolve",t),enabled:!!t?.query&&t.query.length>0})}function Aa(e){G();let t=(0,_.useMemo)(()=>e,[JSON.stringify(e)]);return K({queryKey:S.items(t?.type??"",t),queryFn:()=>yn(t),enabled:gn(t),select:n=>n.items})}function ka(e,t={}){let n=G(),{realtime:r=!1}=t,s=e?.limit??20,i=(0,_.useMemo)(()=>e,[JSON.stringify(e)]),o=(0,_.useMemo)(()=>["vfs",re()??"__unscoped__","infinite-items",i?.type??"",JSON.stringify(i??{})],[n,i]),a=Bn({queryKey:o,queryFn:async({pageParam:l=0})=>yn({...i,limit:s,offset:l},{throwOnError:!0}),initialPageParam:0,getNextPageParam:(l,d,m)=>{if(!(l.items.length<s))return m+l.items.length},enabled:gn(i),staleTime:r?1/0:void 0,meta:r&&i?{infiniteItemsRealtime:{filter:i}}:{}});return{allItems:(0,_.useMemo)(()=>{if(!a.data?.pages)return[];let l=new Set,d=[];for(let m of a.data.pages)for(let p of m.items)p.id&&!l.has(p.id)&&(l.add(p.id),d.push(p));return d},[a.data?.pages]),refetch:a.refetch,fetchNextPage:a.fetchNextPage,isFetchingNextPage:a.isFetchingNextPage,isExhausted:!a.hasNextPage,isLoading:a.isLoading,isFetching:a.isFetching,error:a.error,totalHint:a.data?.pages?.[0]?.total_hint}}function Ma(e){G();let t=20,n=Bn({queryKey:["vfs",re()??"__unscoped__","infinite-children",e??""],queryFn:async({pageParam:s=0})=>Lr(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 a of o.items)a.id&&!s.has(a.id)&&(s.add(a.id),i.push(a));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 Oa(e){return G(),K({queryKey:S.edges(e),queryFn:()=>Wr(e),enabled:!!e})}function ts(e){return G(),K({queryKey:S.types(e),queryFn:()=>jr(e)})}function Fa(e,t){let n=ts(t);return{...n,data:n.data?.get(e)??void 0}}function qa(e,t){G();let n=(0,_.useMemo)(()=>t?.arguments,[JSON.stringify(t?.arguments)]),r=t?.mode,s=t?.strategy,i=t?.width;return K({queryKey:[...S.openEnvelope(e,s),i],queryFn:async()=>{let o=await Gr(e,{mode:r,strategy:s,arguments:n});if(i&&o.render?.props?.url){let a=o.render.props.url,c=a.includes("?")?"&":"?";o.render.props.url=`${a}${c}w=${i}`}return o},enabled:!!e})}var wa={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 Qa(e){let t=ts(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(wa).map(([f,y])=>({key:f,label:y})),getEdgeTypeLabel:f=>wa[f]??f.replace(/_/g," "),allTypes:n,loading:t.isLoading}),[n,t.isLoading])}function Da(e,t,n){return G(),K({queryKey:S.memberFocus(e),queryFn:()=>$r(e,t,n),enabled:!!e})}function Ua(e,t={}){let{limit:n=50,offset:r=0,include_snapshots:s=!1}=t;return K({queryKey:S.itemVersions(e,String(n),String(r),String(s)),queryFn:()=>nr(e,{limit:n,offset:r,include_snapshots:s}),enabled:!!e})}function Na(e,t=50,n=0){return K({queryKey:S.itemHistory(e,String(t),String(n)),queryFn:()=>Vr(e,t,n),enabled:!!e})}function Ka(e,t=50,n=0){return G(),K({queryKey:S.recentActivity(e,String(t),String(n)),queryFn:()=>Hr(e,t,n),enabled:!!e})}function La(){let[e,t]=(0,_.useState)(null),[n,r]=(0,_.useState)(!0),[s,i]=(0,_.useState)(null);return(0,_.useEffect)(()=>{let o=!1;return ut().then(a=>{if(!o){let c=typeof window<"u"&&window.__FSAOS_CONFIG__||{};t({path:a.scope_path,scope_id:a.scope_id,fractal_id:a.fractal_id,instance_name:a.instance_name,display_name:a.display_name,componentPath:c.componentPath||"",isEmbed:!!c.embedToken}),r(!1)}}).catch(a=>{o||(i(a instanceof Error?a:new Error(String(a))),r(!1))}),()=>{o=!0}},[]),{data:e,loading:n,error:s}}var tl=[];function ja(){let{user:e}=ns(),t=(0,_.useRef)(null),[n,r]=(0,_.useState)(null),s=K({queryKey:S.memberships(e?.id??"anonymous"),queryFn:Jr,enabled:!!e?.id,staleTime:1e3*60*2}),i=s.data??tl,o=(0,_.useMemo)(()=>i.filter(p=>p.isAccount!==!1&&!p.isSpace),[i]),a=(0,_.useMemo)(()=>{let p=new Set(o.map(y=>y.accountId)),f=y=>!y.subordinateTo||!p.has(y.subordinateTo);return[...o].sort((y,h)=>Number(f(h))-Number(f(y)))},[o]),c=(0,_.useSyncExternalStore)(Te,se,se),l=(0,_.useMemo)(()=>{let p=Se();return p?i.find(f=>f.accountId===p.id)??null:null},[c,i]);(0,_.useEffect)(()=>{if(!e?.id){t.current=null;return}if(t.current!==e.id)if(r(null),a.length===1){let p=a[0];le()||Ct(Ne(p)),At(p.accountId),p.personalSpacePath&&kt(p.personalSpacePath,f=>{let y=i.find(h=>h.accountId===f);return y?Ne(y):null}).catch(r),t.current=e.id}else a.length>1&&(t.current=e.id)},[e?.id,a,i]);let d=(0,_.useCallback)(async p=>{let f=i.find(g=>g.path===p);if(!f)throw new Error("Account membership is unavailable");let y=Ne(f);le()||Ct(y);let h=i.find(g=>g.accountId===le()?.id);if(!h?.personalSpacePath)throw new Error("The home membership has no mount declaration location");await kt(h.personalSpacePath,g=>{let v=i.find(P=>P.accountId===g);return v?Ne(v):null}),await ar(y),r(null),At(f.accountId)},[i]),m=(0,_.useCallback)(async p=>{let f=i.find(y=>y.path===p);if(!f)throw new Error("Scope membership is unavailable");await ri(Ne(f))},[i]);return{accounts:a,allMemberships:i,currentAccount:l,mountedScope:null,switchAccount:d,mountScope:m,loading:s.isLoading,error:s.error??n}}function Wa(){G();let e=(0,_.useSyncExternalStore)(Er,Jn,Jn);return{mounts:(0,_.useMemo)(()=>Qe(),[e]),homeAnchor:le(),anchor:Se(),setAnchor:ar,replaceMounts:es,mount:ri,unmount:ba}}function ns(){let[e,t]=(0,_.useState)(null),[n,r]=(0,_.useState)(null),[s,i]=(0,_.useState)(!0),o=(0,_.useRef)(null);(0,_.useEffect)(()=>{L.auth.getSession().then(({data:f,error:y})=>{if(y){console.warn("[useAuth] getSession error, clearing stale session:",y.message),L.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),L.auth.signOut().catch(()=>{}),r(null),t(null),i(!1)});let{data:{subscription:p}}=L.auth.onAuthStateChange((f,y)=>{if(f==="TOKEN_REFRESHED"&&!y){console.warn("[useAuth] TOKEN_REFRESHED with null session \u2014 signing out"),L.auth.signOut().catch(()=>{}),r(null),t(null),i(!1);return}r(y),t(y?.user??null),i(!1)});return o.current=p,()=>{p?.unsubscribe()}},[]);let a=(0,_.useCallback)(async p=>p.provider?L.auth.signInWithOAuth({provider:p.provider,options:p.redirectTo?{redirectTo:p.redirectTo}:{redirectTo:window.location.href}}):L.auth.signInWithPassword({email:p.email,password:p.password}),[]),c=(0,_.useCallback)(async p=>L.auth.signUp({email:p.email,password:p.password,options:{data:p.metadata||{}}}),[]),l=(0,_.useCallback)(async()=>{await L.auth.signOut(),cn(),C().clear()},[]),d=(0,_.useCallback)(async p=>{let{error:f}=await L.auth.resetPasswordForEmail(p);if(f)throw f},[]),m=(0,_.useCallback)(async(p,f)=>{let{error:y}=await L.auth.signInWithOtp({email:p,options:f?{emailRedirectTo:f}:{emailRedirectTo:window.location.href}});if(y)throw y},[]);return{user:e,session:n,loading:s,signIn:a,signUp:c,signOut:l,resetPassword:d,signInWithMagicLink:m}}function Ba(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),R("resolve-asset",{asset_id:e}).then(c=>{c.success&&c.public_url?n({url:c.public_url,id:c.asset_id,name:c.name,mimeType:c.mime_type,width:c.width,height:c.height,sizeBytes:c.size_bytes}):o(new Error(c.error||"Asset not found")),s(!1)}).catch(c=>{o(c instanceof Error?c:new Error(String(c))),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 cr={},Sa={};ne(()=>{for(let e of Object.keys(cr))delete cr[e]});var Ha=null;function Va(e){Ha=e,typeof window<"u"&&!window.__FSAOS_GATEWAY__&&(window.__FSAOS_GATEWAY__=e)}function nl(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||Zu;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}:el;case"@fsaos/gateway":case"@fsaos/react":return typeof window<"u"&&window.__FSAOS_GATEWAY__||Ha||{};case"@fsaos/ui":return typeof window<"u"&&window.__FSAOS_UI__||{};case"@fsaos/theme":return{};default:return console.warn(`[useComponent] Unknown module requested: ${e}`),{}}}function rl(e,t){return e.replace(/^(\s*)(:root|body)(\s*[{,])/gm,(n,r,s,i)=>`${r}.${t}${i}`)}async function sl(e,t){if(!Sa[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=rl(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),Sa[e]=s}catch{}}function il(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)(nl),o=t??i;return o?o.default||o:null}finally{n!==void 0?window.__FSAOS_REGISTER__=n:delete window.__FSAOS_REGISTER__}}function oi(e){let[t,n]=(0,_.useState)(null),[r,s]=(0,_.useState)(!0),[i,o]=(0,_.useState)(null);return(0,_.useEffect)(()=>{if(!e)return;let a=!1;s(!0),o(null);let l=(typeof window<"u"&&window.__FSAOS_CONFIG__||{}).edgeBaseUrl||"";return(async()=>{try{let d=1,m=e+"@v1",p=l+e+"/__bundle.js";try{let v=await fetch(l+e+"/__meta",{cache:"no-store"});v.ok&&(d=(await v.json()).version||1,m=e+"@v"+d,p=l+e+"/__bundle.v"+d+".js")}catch{p=l+e+"/__bundle.js?v="+Date.now()}if(a)return;if(cr[m]){n(()=>cr[m]),s(!1);return}let f=await fetch(p);if(!f.ok)throw new Error(`Failed to fetch bundle: ${f.status} ${f.statusText} (${p})`);let y=await f.text();if(a)return;let h=p.replace(/__bundle(\.v\d+)?\.js(\?.*)?$/,"__bundle$1.css");sl(h).catch(()=>{});let g=il(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})`);cr[m]=g,a||(n(()=>g),s(!1))}catch(d){a||(o(d instanceof Error?d:new Error(String(d))),s(!1))}})(),()=>{a=!0}},[e]),{Component:t,loading:r,error:i}}var ol=["--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 $a(){return{data:(0,_.useMemo)(()=>{if(typeof document>"u")return{tokens:{}};let t={},n=getComputedStyle(document.documentElement);return ol.forEach(r=>{t[r]=n.getPropertyValue(r).trim()}),{tokens:t}},[]),loading:!1,error:null}}function Ga(e,t){return{data:{allowed:!0},loading:!1,error:null}}function za(e,t){let n={};return(t||[]).forEach(r=>{n[r]=!0}),{data:n,loading:!1,error:null}}var ae=null,wn=null,si=new Set;function al(){si.forEach(e=>e())}ne(()=>{ae=null,wn=null});async function Ja(e){let t={principalId:null,displayName:null,createdAt:null,metadata:null,vfsPath:null},n=Tt()?.principal_id??null;if(n){if(ae&&ae.principalId===n){let{principalId:s,displayName:i,createdAt:o,metadata:a,vfsPath:c}=ae;return{principalId:s,displayName:i,createdAt:o,metadata:a,vfsPath:c}}return{...t,principalId:n}}let r=e;if(!r){let{data:s}=await L.auth.getSession();r=s?.session?.user?.id}if(!r)return t;if(ae&&ae.authUserId===r){let{principalId:s,displayName:i,createdAt:o,metadata:a,vfsPath:c}=ae;return{principalId:s,displayName:i,createdAt:o,metadata:a,vfsPath:c}}return wn||(wn=(async()=>{try{let{data:s,error:i}=await L.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,a=null;if(o){let{data:l}=await L.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(m=>m.path);a=d.find(m=>m.split("/").length===4)??d[0]??null}let c={principalId:o,displayName:s?.display_name??null,createdAt:s?.created_at??null,metadata:s?.metadata??null,vfsPath:a};return ae={authUserId:r,...c},c}finally{wn=null}})(),wn)}async function Ya(e){return(await Ja(e)).principalId}function Xa(){let e=ns(),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 a=ae;a&&a.authUserId===t?.id&&s({principalId:a.principalId,displayName:a.displayName,createdAt:a.createdAt,metadata:a.metadata,vfsPath:a.vfsPath})};return si.add(o),()=>{si.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,Ja(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 Za(){return{data:null,loading:!1,error:null}}function ec(e){let{path:t,...n}=e,r=oi(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 tc(e){return e.children}function nc(e){let t=G(),{channelPath:n,parentMessageId:r,realtime:s=!0,enabled:i}=e,o=i!==void 0?i&&!!n:!!n,a=(0,_.useMemo)(()=>S.channelMessages(n??"",r),[n,r,t]),c=j(),l=(0,_.useRef)(null),d=K({queryKey:a,queryFn:()=>zr(n,r),enabled:o});(0,_.useEffect)(()=>{if(!s||!o)return;let h=ie("vfs_change",()=>{l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{Ge(c,a,{exact:!0})},500)},g=>(g.item_type==="message"||g.item_type==="card")&<(g.path,n));return()=>{h(),l.current&&clearTimeout(l.current)}},[s,o,n,a,c]);let m=d.data,p=m?.messages??[],f=m?.messageCards??new Map,y=m?.siblingCards??[];return{messages:p,messageCards:f,siblingCards:y,threads:(0,_.useMemo)(()=>p.filter(h=>h.reply_count>0),[p]),isLoading:d.isLoading,isFetching:d.isFetching,error:d.error,refetch:d.refetch}}function rc(e){G();let{channelPath:t,parentMessageId:n,limit:r=50,realtime:s=!0,enabled:i=!0}=e,o=!!n,a=i&&!!t,c=Bn({queryKey:[...S.channelMessages(t||"",n),"infinite",r],queryFn:async({pageParam:h})=>rr(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:a}),l=(0,_.useMemo)(()=>{if(!c.data?.pages)return[];let h=new Set,g=[];for(let v of c.data.pages)for(let P of v.messages)h.has(P.id)||(h.add(P.id),g.push(P));return g.sort((v,P)=>v.seq-P.seq)},[c.data?.pages]),{messageCards:d,siblingCards:m}=(0,_.useMemo)(()=>{let h=new Map,g=[];if(!c.data?.pages)return{messageCards:h,siblingCards:g};let v=new Set;for(let P of c.data.pages){for(let[O,X]of P.messageCards)for(let x of X){if(v.has(x.id))continue;v.add(x.id);let F=h.get(O)||[];F.push(x),h.set(O,F)}for(let O of P.siblingCards)v.has(O.id)||(v.add(O.id),g.push(O))}return{messageCards:h,siblingCards:g}},[c.data?.pages]),p=j(),f=(0,_.useRef)(null),y=(0,_.useMemo)(()=>[...S.channelMessages(t||"",n),"infinite",r],[t,n,r]);return(0,_.useEffect)(()=>{if(!s||!t||!a)return;let h=()=>void Ge(p,y,{exact:!0}),g=!1,v=!1,P=!1,O=async()=>{let F=p.getQueryData(y);if(!F?.pages?.length){h();return}let W=0;for(let N of F.pages)for(let M of N.messages)M.seq>W&&(W=M.seq);if(W===0){h();return}try{let N=await rr(t,{parentMessageId:n,limit:r,after_seq:W});if(N.messages.length===0&&N.siblingCards.length===0){h();return}if(N.messages.length>0){let M=Math.min(...N.messages.map(B=>B.seq));if(M>W+1){console.warn(`[useInfiniteChannelMessages] sequence gap detected: maxSeq=${W}, minNewSeq=${M}. Triggering full refetch.`),h();return}}p.setQueryData(y,M=>{if(!M)return M;let B=[...M.pages],A=B.length-1,I=B[A],Q=new Set(I.messages.map(_e=>_e.id)),D=N.messages.filter(_e=>!Q.has(_e.id)),Ie=[...I.messages,...D].sort((_e,ls)=>_e.seq-ls.seq),z=new Map(I.messageCards);for(let[_e,ls]of N.messageCards){let yi=z.get(_e)||[],ou=new Set(yi.map(ds=>ds.id)),au=ls.filter(ds=>!ou.has(ds.id));z.set(_e,[...yi,...au])}let mt=new Set(I.siblingCards.map(_e=>_e.id)),su=N.siblingCards.filter(_e=>!mt.has(_e.id)),iu=[...I.siblingCards,...su];return B[A]={...I,messages:Ie,messageCards:z,siblingCards:iu},{...M,pages:B}})}catch(N){console.warn("[useInfiniteChannelMessages] live tail fetch failed, falling back to full invalidation:",N),h()}},X=async()=>{if(g){v=!0;return}g=!0;try{do v=!1,await O();while(v&&!P)}finally{g=!1}},x=ie("vfs_change",()=>{f.current&&clearTimeout(f.current),f.current=setTimeout(()=>{X()},500)},F=>(F.item_type==="message"||F.item_type==="card")&<(F.path,t));return()=>{P=!0,x(),f.current&&clearTimeout(f.current)}},[s,t,a,y,p,n,r]),{messages:l,messageCards:d,siblingCards:m,threads:l.filter(h=>h.reply_count>0),isLoading:c.isLoading,isFetching:c.isFetching,error:c.error,refetch:c.refetch,hasPreviousPage:c.hasPreviousPage??!1,fetchPreviousPage:c.fetchPreviousPage,isFetchingPreviousPage:c.isFetchingPreviousPage??!1,hasNextPage:c.hasNextPage??!1,fetchNextPage:c.fetchNextPage,isFetchingNextPage:c.isFetchingNextPage??!1}}function cl(e){return e==="on"||e==="auto"?"on":"off"}function ul(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 rs(e={}){let t=G(),{realtime:n=!0,enabled:r=!0}=e,s=j(),i=(0,_.useRef)(null),o=(0,_.useMemo)(()=>S.channels("all"),[t]),a=K({queryKey:o,queryFn:async()=>((await R("query",{item_type:"channel",include_reader:!0,limit:500})).items||[]).map(ul),enabled:r});return(0,_.useEffect)(()=>{if(!n||!r)return;let l=ie("vfs_change",()=>{i.current&&clearTimeout(i.current),i.current=setTimeout(()=>{s.invalidateQueries({queryKey:o})},1e3)},m=>m.item_type==="channel"||m.item_type==="message"),d=ie("ccm_change",()=>{i.current&&clearTimeout(i.current),i.current=setTimeout(()=>{s.invalidateQueries({queryKey:o})},1e3)},m=>m.item_type==="channel"||m.item_type==="message");return()=>{l(),d(),i.current&&clearTimeout(i.current)}},[n,r,o,s]),{channels:a.data??[],isLoading:a.isLoading,isFetching:a.isFetching,error:a.error,refetch:a.refetch}}function sc(e={}){let t=rs(e),n=(0,_.useMemo)(()=>t.channels.filter(r=>!r.isDm),[t.channels]);return{...t,channels:n}}function ic(e={}){let t=rs(e),n=(0,_.useMemo)(()=>t.channels.filter(r=>r.isDm),[t.channels]);return{...t,channels:n}}function ai(e={}){let t=G(),{filter:n="all",limit:r=200,realtime:s=!0,enabled:i=!0}=e,o=j(),a=(0,_.useRef)(null),c=(0,_.useMemo)(()=>S.notifications(n,r),[n,r,t]),l=K({queryKey:c,queryFn:async()=>{let m={limit:r};return n==="unread"&&(m.filter="unread"),(await R("get-notifications",m)).notifications||[]},enabled:i});return(0,_.useEffect)(()=>{if(!s||!i)return;let m=["vfs_change","ccm_change"].map(p=>ie(p,()=>{a.current&&clearTimeout(a.current),a.current=setTimeout(()=>{o.invalidateQueries({queryKey:c})},2e3)},f=>f.item_type==="notification"||f.item_type==="message"));return()=>{m.forEach(p=>p()),a.current&&clearTimeout(a.current)}},[s,i,c,o]),{notifications:l.data??[],isLoading:l.isLoading,isFetching:l.isFetching,error:l.error,refetch:l.refetch}}function oc(e={}){let{channels:t,realtime:n=!0,enabled:r=!0}=e,{notifications:s,isLoading:i,isFetching:o,error:a,refetch:c}=ai({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:m,channelUnread:p}=(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:m,channelUnread:p,isLoading:i,isFetching:o,error:a,refetch:c}}function ac(){let e=j();return ge({mutationFn:t=>R("create",t),onSuccess:(t,n)=>{let r=n.parent_path;r&&e.invalidateQueries({queryKey:S.children(r)})}})}function cc(){let e=j();return ge({mutationFn:t=>R("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 uc(){return ge({mutationFn:e=>R("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},al()}})}function lc(){let e=j();return ge({mutationFn:t=>R("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 dc(){let e=j();return ge({mutationFn:t=>R("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 fc(){let e=j();return ge({mutationFn:t=>R("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 pc(e,t){let n=j(),{optimistic:r,...s}=t??{};return ge({mutationFn:i=>R(e,i),onMutate:r?async i=>{await n.cancelQueries({queryKey:r.queryKey});let o=n.getQueryData(r.queryKey);return n.setQueryData(r.queryKey,a=>r.update(a,i)),{previous:o}}:void 0,onError:(i,o,a)=>{r&&a?.previous!==void 0&&n.setQueryData(r.queryKey,a.previous),s.onError?.(i)},onSuccess:s.onSuccess,onSettled:r?()=>{n.invalidateQueries({queryKey:r.queryKey})}:void 0})}function mc(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 a=(0,_.useRef)(s),c=(0,_.useRef)(i);(0,_.useEffect)(()=>{a.current=s,c.current=i},[s,i]),(0,_.useEffect)(()=>o?ie(r,d=>a.current(d),c.current?d=>c.current(d):void 0):void 0,[r,o])}function hc(e){let{queryKey:t,queryFn:n,eventType:r,filter:s,enabled:i=!0,debounceMs:o=500}=e,a=j(),c=(0,_.useRef)(null),l=K({queryKey:t,queryFn:n,enabled:i});return(0,_.useEffect)(()=>{if(!i)return;let d=ie(r,()=>{c.current&&clearTimeout(c.current),c.current=setTimeout(()=>{a.invalidateQueries({queryKey:t})},o)},s);return()=>{d(),c.current&&clearTimeout(c.current)}},[r,i,o,a,JSON.stringify(t)]),l}function Sn(e){G();let t=re(),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=K({queryKey:i,staleTime:1/0,retry:!1,meta:{arrangementRealtime:!0},queryFn:async()=>{if(!n)return null;let p=await R("resolve-arrangement",{...n,_scope_path:t});if(p?.success===!1)throw new Error(p?.error||"Arrangement could not be loaded");return p??null},enabled:r}),a=o.data??null,c=(0,_.useMemo)(()=>a?.resolved_children??[],[a]),l=a?.resolution_level??null,d=(0,_.useMemo)(()=>{let f=(a?.type_data??null)?.order;return Array.isArray(f)?f:null},[a]),m=(0,_.useCallback)(p=>{if(!d||!p?.length)return p??[];let f=v=>v.id??v.name??"",y=new Map(d.map((v,P)=>[v,P])),h=[],g=[];for(let v of p)(y.has(f(v))?h:g).push(v);return h.sort((v,P)=>y.get(f(v))-y.get(f(P))),[...h,...g]},[d]);return{...o,arrangement:a,resolvedChildren:c,resolutionLevel:l,order:d,sourceScopeId:a?.scope_item_id??null,arrangementQueryKey:i,applyTo:m}}function gc(e){let{origin:t,originField:n,fallbackUrl:r,mintError:s,scopeId:i,scopePath:o}=e,a=G(),c=Tt(),l=i??c?.scope_id??null,d=(0,_.useMemo)(()=>{if(!t)return null;let x="/accounts/",F=t.indexOf(x);if(F===-1)return null;let W=t.indexOf("/",F+x.length);return W===-1?t:t.slice(0,W)},[t]),m=o??d??c?.scope_path??null,p=n?.trim()||null,f=`${a}
|
|
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}
|
|
4
4
|
${l??""}
|
|
5
|
-
${m??""}
|
|
6
5
|
${p??""}
|
|
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 P=K({queryKey:["vfs",m??"__unscoped__","minted-asset",p??"",t??""],queryFn:async()=>{let x=await R("query",{scope_path:m,filters:{[`field.${p}`]:t},limit:1}),F=x.content?.items??x.items??[],W=F[0]?Pe(F[0]):null;if(!W)return null;let M=(await tr(W.path)).some(B=>B.item_type==="file"&&!!B.type_data?.file_ref);return{asset:W,hasBytes:M}},enabled:!!(t&&m&&p&&!s),refetchInterval:x=>g.current.key===f&&g.current.found?.hasBytes||x.state.data?.hasBytes?!1:1500});(0,_.useEffect)(()=>{let x=P.data;if(!x||g.current.key!==f)return;let F=g.current.found,W={key:f,itemId:x.asset.id,itemPath:x.asset.path,displayName:typeof x.asset.type_data?.display_name=="string"?x.asset.type_data.display_name:x.asset.name,hasBytes:x.hasBytes||!!(F?.itemId===x.asset.id&&F.hasBytes)};g.current.found=W,h(W)},[P.data,f]);let O=!!(t&&l)&&!s&&!v?.hasBytes;return(0,_.useEffect)(()=>{if(!(!O||!l))return hn(l,["asset.materialized","content.written"])},[O,l]),(0,_.useEffect)(()=>{if(!O||!t||!l)return;let x=f,F=A=>A?.payload??A,W=A=>{let Q=F(A)?.scope_id??A?.scope_id;return typeof Q=="string"?Q:void 0},N=A=>{let Q=F(A)?.item_path??A?.item_path;return typeof Q=="string"&&Q?Q:void 0},M=(A,I)=>{let Q=I.replace(/\/+$/,"");return A===Q||A.startsWith(`${Q}/`)},B=[ie("asset.materialized",A=>{if(g.current.key!==x)return;let I=F(A);if(typeof I?.item_id!="string"||!I.item_id)return;let Q=g.current.found,D=typeof I.item_path=="string"?I.item_path:void 0,Ie=!!I.has_bytes||!!(D&&Array.from(g.current.earlyContentPaths).some(mt=>M(mt,D)))||!!(Q&&Q.itemId===I.item_id&&Q.hasBytes),z={key:x,itemId:I.item_id,itemPath:D,displayName:typeof I.display_name=="string"?I.display_name:void 0,hasBytes:Ie};g.current.found=z,h(z)},A=>{let I=W(A);return(!I||I===l)&&F(A)?.origin===t}),ie("content.written",A=>{if(g.current.key!==x)return;let I=N(A);if(!I)return;let Q=g.current.found;if(!Q?.itemPath||!M(I,Q.itemPath)){if(g.current.earlyContentPaths.add(I),g.current.earlyContentPaths.size>128){let Ie=g.current.earlyContentPaths.values().next().value;Ie&&g.current.earlyContentPaths.delete(Ie)}return}if(Q.hasBytes)return;let D={...Q,hasBytes:!0};g.current.found=D,h(D)},A=>{let I=W(A);return(!I||I===l)&&!!N(A)})];return()=>B.forEach(A=>A())},[O,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 yc(e,t){let n=(0,Rn.useSyncExternalStore)(Te,se,se),r=Se(),s=re(),i=r?.kind==="space",o=Sn(i&&s?{key:e,scope_id:r.id}:null),a=(0,Rn.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,P)=>g(P)-g(v)),[...h,...f.filter(v=>y.has(v.id))]},[e,t,o.applyTo,o.order]),c=j(),l=(0,Rn.useRef)(!1),d=!!(i&&!o.error&&o.arrangement?.item_id&&o.resolutionLevel==="member"&&o.arrangement.write_target_id===o.arrangement.item_id),m=ge({mutationFn:async f=>{let y=await R("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)=>un(c,h.queryKey)});async function p(f){if(!d||!s||n!==se()||re()!==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(x=>x.id);if(f.length!==y.length||new Set(f).size!==y.length||y.some(x=>!f.includes(x)))throw new Error("Order must include each displayed item exactly once");let h=c.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=a.map(x=>x.id);if(f.every((x,F)=>g[F]===x))return;let v=new Set(y),P=0,X=[...(o.order??[]).map(x=>v.has(x)?f[P++]:x),...f.slice(P)];l.current=!0;try{return await m.mutateAsync({ids:X,scopePath:s,arrangementId:o.arrangement.item_id,queryKey:o.arrangementQueryKey})}finally{l.current=!1}}return{items:a,ready:d,supported:i,contextKey:`${n}:${s}:${e}`,isLoading:i&&o.isLoading,error:o.error,refetch:o.refetch,isSaving:m.isPending,saveError:m.error,reorder:p}}var ci=/^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,ll=/^[A-Za-z_:][A-Za-z0-9_:.-]{0,127}$/,_c=new Map,vc=new Map,Pn=class extends Error{constructor(n,r,s,i){super(n);Y(this,"code");Y(this,"status");Y(this,"eventId");this.name="InteractionTrackingError",this.code=r,this.status=s,this.eventId=i}};function xn(e){let t=e?Vn.find(n=>n.id===e):Vn.find(n=>n.default===!0)??(Vn.length===1?Vn[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 ss(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 dl(e){return e.length>0&&e.length<=128&&!/[\u0000-\u001f\u007f]/.test(e)}function fl(e,t){if(!dl(t)||!e.observations?.includes(t))throw new TypeError("The observation is not declared by this release source")}function ui(e){if(!(typeof window>"u"||e.storage==="memory"))try{return e.storage==="session"?window.sessionStorage:window.localStorage}catch{return}}function pl(e){try{let t=ui(e)?.getItem(e.key)??void 0;return t&&ci.test(t)?t:void 0}catch{return}}function bc(e,t){try{ui(e)?.setItem(e.key,t)}catch{}}function wc(e){let t=e.identity?.visitor;if(!t?.key)throw new TypeError("The source visitor identity policy is invalid");let n=pl(t)??_c.get(e.id);if(n)return n;let r=crypto.randomUUID();return _c.set(e.id,r),bc(t,r),r}function Sc(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=ui(n)?.getItem(n.key);r=l?JSON.parse(l):void 0}catch{r=void 0}let s=vc.get(e.id),i=r&&typeof r.id=="string"&&ci.test(r.id)&&typeof r.lastSeenAt=="number"?{id:r.id,lastSeenAt:r.lastSeenAt}:s,o=n.idle_seconds*1e3,c=i&&t-i.lastSeenAt>=0&&t-i.lastSeenAt<o?{id:i.id,lastSeenAt:t}:{id:crypto.randomUUID(),lastSeenAt:t};return vc.set(e.id,c),bc(n,JSON.stringify(c)),c.id}function ml(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(a=>{if(typeof a!="string"||a.length===0||a.length>128)return[];let c=r.searchParams.get(a);return c?[[a,c.slice(0,i)]]:[]}));return Object.keys(o).length>0?o:void 0}async function Mt(e,t={},n={}){let r=xn(n.source);if(fl(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??wc(r),o=n.sessionId??Sc(r);if(![s,i,o].every(g=>ci.test(g)))throw new TypeError("event, visitor, and session IDs must be UUIDs");let a=n.pageUrl??(typeof window<"u"?window.location.href:void 0);if(!a)throw new TypeError("pageUrl is required outside a browser");let c=n.occurredAt??new Date().toISOString();if(Number.isNaN(Date.parse(c)))throw new TypeError("occurredAt is invalid");let l=n.referrer??(typeof document<"u"&&document.referrer||void 0),d=ml(r,a),m=d?{...t,source_keys:d}:t,p=Et(),f=`${we.replace(/\/+$/,"")}/d/${encodeURIComponent(p)}/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:a,visitor_id:i,session_id:o,referrer:l,events:[{id:s,event_type:e,occurred_at:c,properties:m}]}),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 Rc(e={},t={}){let n=xn(t.source),r=ss("page_view",n),s=typeof document>"u"||!r.title_property?{}:{[r.title_property]:document.title.slice(0,512)};return Mt(r.observation,{...s,...e},{...t,source:n.id})}function Pc(e,t={},n={}){if(!e||e.length>128)throw new TypeError("actionId is invalid");let r=xn(n.source),s=ss("declared_action",r),i=s.id_property?{[s.id_property]:e}:{};return Mt(s.observation,{...t,...i},{...n,source:r.id})}function xc(){try{let e=xn();return ss("form_receipt",e),{visitor_id:wc(e),session_id:Sc(e),source:e.id}}catch{return}}function Cc(e,t={}){let n=xn(t.source),r=ss("form_receipt",n);return Mt(r.observation,e,{...t,source:n.id})}var ur;function is(e={}){if(typeof window>"u"||typeof document>"u")return()=>{};if(ur)return ur;if(window.__FSAOS_CONFIG__?.tracking?.enabled===!1)return()=>{};let t;try{t=xn(e.source)}catch{return()=>{}}let n=e.pageViews===!1?[]:t.adapters.filter(p=>p.type==="page_view"),r=e.declaredActions===!1?[]:t.adapters.filter(p=>p.type==="declared_action"),s="",i=()=>{if(window.location.href!==s){s=window.location.href;for(let p of n){let f=p.title_property?{[p.title_property]:document.title.slice(0,512)}:{};Mt(p.observation,f,{source:t.id,keepalive:!0}).catch(()=>{})}}},o=p=>{if(p.target instanceof Element)for(let f of r){let y=f.attribute;if(!y||!ll.test(y))continue;let h=p.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()),Mt(f.observation,v,{source:t.id,keepalive:!0}).catch(()=>{})}},a=window.history.pushState,c=window.history.replaceState,l=()=>queueMicrotask(i),d=n.some(p=>p.history===!0),m=n.some(p=>p.pageshow===!0);return d&&(window.history.pushState=function(...f){a.apply(this,f),l()},window.history.replaceState=function(...f){c.apply(this,f),l()},window.addEventListener("popstate",i)),m&&window.addEventListener("pageshow",i),r.length>0&&document.addEventListener("click",o,{capture:!0}),n.length>0&&queueMicrotask(i),ur=()=>{window.removeEventListener("popstate",i),window.removeEventListener("pageshow",i),document.removeEventListener("click",o,{capture:!0}),d&&(window.history.pushState=a,window.history.replaceState=c),ur=void 0},ur}var Cn;ne(()=>{Cn=void 0});function os(e){if(Cn)return Cn.accountPath!==e.accountPath?Promise.reject(new Error("Reset the session before changing accounts")):Cn.promise;let t=te(),n=()=>{if(t!==te())throw new Error("Workspace session changed")},r=(async()=>{let s=await ut();if(n(),!s.principal_id)throw new Error("Workspace initialization requires an authenticated principal");let i=await C().fetchQuery({queryKey:S.memberships(s.principal_id),queryFn:Jr,staleTime:12e4,retry:!1});n();let o=i.find(m=>m.path===e.accountPath&&m.isAccount&&!m.isSpace);if(!o)throw new Error("Authenticated account membership is unavailable");let a=i.find(m=>m.isSpace&&m.accountId===o.personalSpaceId&&m.path===o.personalSpacePath);if(!a||!o.personalSpacePath)throw new Error("A provisioned default Space membership is required");let c=Ne(o),l=Ne(a),d=le();if(d&&d.id!==c.id)throw new Error("Reset the session before changing accounts");return d||Ct(c,{activate:!1}),await kt(o.personalSpacePath,m=>{let p=i.find(f=>f.accountId===m&&(f.isAccount||f.isSpace));return p?Ne(p):null},{initialAnchor:l}),n(),{home:c,defaultSpace:l,memberships:i}})().catch(s=>{throw t===te()&&(Cn=void 0),s});return Cn={accountPath:e.accountPath,promise:r},r}var Ot,dr,lr;ne(()=>{dr?.(),dr=void 0,Ot=void 0,lr=void 0});function Tc(e={}){if(Ot)return e.workspace&&e.workspace.accountPath!==lr?Promise.reject(new Error("Initialize workspace through initializeWorkspace, or dispose the existing runtime first")):Ot;lr=e.workspace?.accountPath;let t=te();return Ot=(async()=>{let n=e.tracking??!0,r=n===!1?()=>{}:is(typeof n=="object"?n:{});dr=r;try{let s=e.session===!1?null:await ut(),i=e.workspace?await os(e.workspace):void 0;if(t!==te())throw new Error("Session changed during initialization");let o=!1;return{session:s,workspace:i,dispose(){o||(o=!0,r(),t===te()&&(Ot=void 0,lr=void 0,dr=void 0))}}}catch(s){throw r(),t===te()&&(Ot=void 0,lr=void 0,dr=void 0),s}})(),Ot}async function li(e){try{return await R("execution-control-transition",e)}catch(t){if(!(t instanceof De)||t.status<500)throw t;return await new Promise(n=>setTimeout(n,250)),R("execution-control-transition",e)}}function di(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 Ec(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 li({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 di(i?{...s,state:i}:s)}async function Ic(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 li({op:"request",command:"steer",delivery:"immediate",request_message_id:r,selected_queue_entry_id:s,idempotency_key:i,...n.scopePath?{_scope_path:n.scopePath}:{}}),a=o.outcome??o.state??o.status;return di(a?{...o,state:a}:o)}async function Ac(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 li({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 di(i?{...s,outcome:i}:s)}var hl=/^[a-z][a-z0-9_-]{0,63}$/,gl=/^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,Tn=class extends Error{constructor(n,r,s,i){super(n);Y(this,"code");Y(this,"status");Y(this,"fillId");this.name="FormSubmissionError",this.code=r,this.status=s,this.fillId=i}};async function kc(e,t,n={}){if(!hl.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(!gl.test(r))throw new TypeError("fillId must be a UUID");let s=Et(),i=n.pageUrl??(typeof window<"u"?window.location.href:void 0);if(!i)throw new TypeError("pageUrl is required outside a browser");let o=`${we.replace(/\/+$/,"")}/d/${encodeURIComponent(s)}/actions/${encodeURIComponent(e)}`,a=xc(),c=a?{visitor_id:a.visitor_id,session_id:a.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,...c?{attribution:c}:{}}),signal:n.signal,credentials:"omit"})}catch(m){throw new Tn(m instanceof Error?m.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 m=d;throw new Tn(m?.message||m?.error||`Form submission failed (${l.status})`,m?.error||"FORM_SUBMISSION_FAILED",l.status,r)}try{await Cc({fill_id:r,action_id:e,release_id:d.release_id},{eventId:r,pageUrl:i,signal:n.signal,keepalive:!0,...a?{source:a.source,visitorId:a.visitor_id,sessionId:a.session_id}:{}})}catch{}return d}var fi=J(ce(),1),Fc=J(Oc(),1);function qc(e){return R("read",{path:e})}function Qc(e,t){return R("list",{path:e,...t})}function Dc(e){return R("create",e)}function Uc(e){return R("update",e)}function Nc(e){return R("create",e)}function Kc(e,t){let r=(typeof window<"u"&&window.__FSAOS_CONFIG__||{}).scopePath||"";return R("tools/call",{name:e,instance_path:r,...t||{}})}function Lc(e,t,n){return R("signal",{target_id:e,event_name:t,payload:n||{}})}function jc(e){return((typeof window<"u"&&window.__FSAOS_CONFIG__||{}).edgeBaseUrl||"")+e}var Wc={signIn:e=>e.provider?L.auth.signInWithOAuth({provider:e.provider,options:{redirectTo:e.redirectTo||window.location.href}}):L.auth.signInWithPassword({email:e.email,password:e.password}),signUp:e=>L.auth.signUp({email:e.email,password:e.password,options:{data:e.metadata||{}}}),signOut:async()=>{await L.auth.signOut(),cn(),C().clear()},getSession:()=>L.auth.getSession().then(e=>e.data.session),getUser:()=>L.auth.getUser().then(e=>e.data.user),onAuthStateChange:e=>{let{data:{subscription:t}}=L.auth.onAuthStateChange((n,r)=>{e({event:n,session:r,user:r?.user??null})});return()=>t?.unsubscribe()},resetPassword:e=>L.auth.resetPasswordForEmail(e),signInWithMagicLink:(e,t)=>L.auth.signInWithOtp({email:e,options:{emailRedirectTo:t||window.location.href}})};function Bc(){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,Fc.createRoot)(e).render((0,fi.createElement)(jn,{client:C()},(0,fi.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 Hc(){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 yl(e){return e.split("_").map(t=>t.charAt(0).toUpperCase()+t.slice(1)).join(" ")}function _l(e,t){return t&&t.length>0?"select":e==="boolean"?"toggle":e==="integer"||e==="number"?"range":e==="string"?"text":"none"}function vl(e,t){return!(e==="object"||e==="array")}function bl(e){return["string","number","integer","boolean"].includes(e)}function wl(e){return e!=="object"&&e!=="array"}function Vc(e,t,n,r){let s=e?.properties;if(!s||typeof s!="object")return[];let i=[];for(let[o,a]of Object.entries(s)){let c=a.type||"string",l=a.enum,d=vl(c,l),m=bl(c),p=_l(c,l);i.push({key:o,label:a.title||yl(o),type:c,description:a.description,enum_values:l,default_value:n[o]??r[o]??a.default,editable:t,filterable:d,sortable:m,filter_widget:p})}return i}function pi(e){let t=e.default_data||{},n=e.field_defaults||{},r=Vc(e.input_schema,!0,t,n),s=Vc(e.system_schema,!1,t,n),i=[...r,...s],o=i.filter(l=>wl(l.type)),a=i.filter(l=>l.filterable),c=i.filter(l=>l.sortable);return{fields:i,columns:o,filterable:a,sortable:c,form_fields:r,system_fields:s}}function $c(e){return{field:"updated_at",direction:"desc"}}function Gc(e){let t=pi(e),n=new Set(e.input_schema?.required||[]);return t.form_fields.filter(r=>n.has(r.key)||r.default_value===void 0)}var me=J(ce(),1);var Sl=0;function Rl(){return`upload_${Date.now()}_${++Sl}`}async function zc(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",a={parent_path:t.parentPath,item_type:o,name:s,type_data:{...t.typeData||{},file_source:{type:"upload",content_type:i}}};t.cardParentPath&&(a.card_parent_path=t.cardParentPath);let l=await R("create",a);if(!l.id)throw new Error(l.error||l.message||"Failed to create file item");let d=l.id,m=l.path;if(l.storage_completed&&l.file_ref)return{itemId:d,itemPath:m,fileRef:l.file_ref};let p=l.storage_key,f=l.upload_token,y=l.storage_worker_url||"https://fsaos-storage.radns.workers.dev";if(!p)throw new Error("Gateway returned no storage_key \u2014 file_source may not be supported for this item type");await Pl(y,p,f,e,i,n,r);let h=await Jc(d,p,i);return{itemId:d,itemPath:m,fileRef:h}}function Pl(e,t,n,r,s,i,o){return new Promise((a,c)=>{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?a():c(new Error(`Storage upload failed: HTTP ${l.status} \u2014 ${l.responseText?.slice(0,300)}`))},l.onerror=()=>c(new Error("Storage upload network error")),l.ontimeout=()=>c(new Error("Storage upload timed out")),o){if(o.aborted){c(new Error("Upload cancelled"));return}o.addEventListener("abort",()=>{l.abort(),c(new Error("Upload cancelled"))})}l.send(r)})}async function Jc(e,t,n){let r=await $e(),s=await fetch(`${we}/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 Yc(){let[e,t]=(0,me.useState)([]),n=j(),r=(0,me.useRef)(e);r.current=e;let s=(0,me.useCallback)((h,g)=>{t(v=>v.map(P=>P.id===h?{...P,...g}:P))},[]),i=(0,me.useCallback)(h=>{t(g=>[...g,h])},[]),o=(0,me.useCallback)(async(h,g,v,P,O)=>{let X=v.name||g.name,x=g.type||"application/octet-stream",F=v.itemType||"file",W=O?.itemId||null,N=O?.itemPath||null,M=O?.storageKey||null,B=O?.uploadToken||null,A=O?.storageWorkerUrl||null;try{if(!P||P==="create"){s(h,{status:"creating",error:null,_failedAt:null});let D=await R("create",{parent_path:v.parentPath,item_type:F,name:X,type_data:{...v.typeData||{},file_source:{type:"upload",content_type:x}}});if(!D.id)throw Object.assign(new Error(D.error||D.message||"Failed to create file item"),{_step:"create"});if(W=D.id,N=D.path,s(h,{itemId:W,itemPath:N}),D.storage_completed&&D.file_ref){s(h,{status:"complete",progress:100,fileRef:D.file_ref}),n.invalidateQueries({queryKey:S.children(v.parentPath)});return}if(M=D.storage_key,B=D.upload_token||"",A=D.storage_worker_url||"https://fsaos-storage.radns.workers.dev",s(h,{_storageKey:M,_uploadToken:B,_storageWorkerUrl:A}),!M)throw Object.assign(new Error("Gateway returned no storage_key"),{_step:"create"})}(!P||P==="create"||P==="upload")&&(s(h,{status:"uploading",progress:0,error:null,_failedAt:null}),await new Promise((D,Ie)=>{let z=new XMLHttpRequest;s(h,{_xhr:z}),z.open("PUT",`${A}/upload`),z.setRequestHeader("X-Storage-Key",M),z.setRequestHeader("Content-Type",x),B&&z.setRequestHeader("X-Upload-Token",B),z.upload.onprogress=mt=>{mt.lengthComputable&&s(h,{progress:Math.round(mt.loaded/mt.total*100)})},z.onload=()=>{z.status>=200&&z.status<300?D():Ie(Object.assign(new Error(`Storage upload failed: HTTP ${z.status}`),{_step:"upload"}))},z.onerror=()=>Ie(Object.assign(new Error("Storage upload network error"),{_step:"upload"})),z.ontimeout=()=>Ie(Object.assign(new Error("Storage upload timed out"),{_step:"upload"})),z.send(g)}),s(h,{progress:100,_xhr:null})),s(h,{status:"confirming",error:null,_failedAt:null});let I=await Jc(W,M,x);s(h,{status:"complete",fileRef:I}),n.invalidateQueries({queryKey:S.children(v.parentPath)})}catch(I){let Q=I?.message||String(I),D=I?._step||"create";s(h,{status:"error",error:Q,_failedAt:D,_xhr:null})}},[s,n]),a=(0,me.useCallback)((h,g)=>{let v=Rl();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]),c=(0,me.useCallback)((h,g)=>{for(let v of h)a(v,g)},[a]),l=(0,me.useCallback)(h=>{let g=r.current.find(O=>O.id===h);if(!g||g.status!=="error")return;let v=g._failedAt||"create",P=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,P)},[o]),d=(0,me.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]),m=(0,me.useCallback)(h=>{t(g=>g.filter(v=>v.id!==h))},[]),p=(0,me.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:P,_failedAt:O,...X})=>X);return{upload:a,uploadMultiple:c,uploads:y,retryUpload:l,cancelUpload:d,removeUpload:m,clearCompleted:p,isUploading:f}}var Xc=J(ce(),1);async function mi(e,t){return await R("resolve-items",{context_id:e,item_type:t})}function Zc(e,t){return(0,Xc.useSyncExternalStore)(Te,se,se),K({queryKey:["vfs",re()??"__unscoped__","resolved-items",e??"",t],queryFn:()=>mi(e,t),enabled:!!(e&&t)})}var Ee=J(ce(),1);function as(e,t){let n={artifacts:new Map,timeline:[]},r=new Map;function s(o){if(!o.action?.startsWith("artifact_"))return;let c,l=o.name;if(typeof l=="string"&&l.startsWith("{"))try{c=JSON.parse(l)}catch{return}else if(o.artifact_id)c=o;else return;switch(c.type){case"artifact_opened":{let d=Date.now();if(n.artifacts.set(c.artifact_id,{artifact_id:c.artifact_id,surface_type:c.surface_type,tool_id:c.tool_id,tool_name:c.tool_name,target_uri:c.target_uri,status:"streaming",content:"",total_chars:0,delta_count:0,artifact_item_uri:null,evidence_uri:null,meta:c.meta,started_at:d,completed_at:null}),r.has(c.tool_id)){let m=r.get(c.tool_id);n.timeline[m].artifact_ids.push(c.artifact_id)}else{let m=n.timeline.length;n.timeline.push({tool_id:c.tool_id,tool_name:c.tool_name,status:"started",target_uri:c.target_uri,started_at:d,completed_at:null,artifact_ids:[c.artifact_id]}),r.set(c.tool_id,m)}break}case"artifact_delta":{let d=n.artifacts.get(c.artifact_id);d&&(d.content+=c.content_delta,d.total_chars+=c.content_delta.length,d.delta_count+=1,c.target_uri&&!d.target_uri&&(d.target_uri=c.target_uri));break}case"artifact_done":{let d=n.artifacts.get(c.artifact_id);d&&(d.status=c.status,d.total_chars=c.total_chars,d.artifact_item_uri=c.artifact_item_uri,d.evidence_uri=c.evidence_uri,c.target_uri&&(d.target_uri=c.target_uri),(c.status==="completed"||c.status==="failed")&&(d.completed_at=Date.now()));let m=r.get(c.tool_id);if(m!==void 0){let p=n.timeline[m];c.status==="executing"?p.status="executing":c.status==="completed"?(p.status="completed",p.completed_at=Date.now()):c.status==="failed"&&(p.status="failed",p.completed_at=Date.now()),c.target_uri&&!p.target_uri&&(p.target_uri=c.target_uri)}break}}t(n)}return Dr(e,s)}function eu(e,t=!0){let[n,r]=(0,Ee.useState)(new Map),[s,i]=(0,Ee.useState)([]),o=(0,Ee.useRef)({artifacts:new Map,timeline:[]});(0,Ee.useEffect)(()=>!e||!t?void 0:as(e,m=>{o.current=m,r(new Map(m.artifacts)),i([...m.timeline])}),[e,t]);let a=(0,Ee.useCallback)(()=>{r(new Map),i([]),o.current={artifacts:new Map,timeline:[]}},[]),c=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:c,activeActivities:l,reset:a}}function tu(e,t=!0){let[n,r]=(0,Ee.useState)([]);(0,Ee.useEffect)(()=>!e||!t?void 0:as(e,o=>{r([...o.timeline])}),[e,t]);let s=n.length>0?n[n.length-1]:null;return{timeline:n,latestActivity:s}}var cs=J(ce(),1);function xl(e,t,n,r){return["vfs","timeline-history",e,t??"__all__",n??500,r??0]}async function hi(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 a=(await R("open",{path:n,mode:"extract",strategy:"rows",arguments:i}))?.content;return a?(a.rows??a.items??a.data??[]).map(Cl).sort((l,d)=>l.seq-d.seq):[]}catch(o){if(o?.status===404||o?.message?.includes("not found"))return[];throw o}}function nu(e,t){let{turnId:n,limit:r=500,offset:s=0,enabled:i=!0,debounceMs:o=300}=t??{},a=e?`${e}/datasets/agent-events`:null,c=j(),l=(0,cs.useRef)(null),d=a?xl(a,n,r,s):["vfs","timeline-history","__disabled__"],m=K({queryKey:d,queryFn:()=>hi(e,{turnId:n,limit:r,offset:s}),enabled:!!e&&i});return(0,cs.useEffect)(()=>{if(!a||!i)return;let p=ie("vfs_change",()=>{l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{c.invalidateQueries({queryKey:d})},o)},f=>{let y=f?.path;return y?y===a||y.startsWith(a+"/"):!1});return()=>{p(),l.current&&clearTimeout(l.current)}},[a,i,o,c,JSON.stringify(d)]),{events:m.data??[],isLoading:m.isLoading,error:m.error,isFetching:m.isFetching,refetch:()=>{m.refetch()}}}function Cl(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 us=J(ce(),1);function ru(){(0,us.useSyncExternalStore)(Te,se,se);let e=re(),t=Se(),n=Sn(e?{key:"pinned",...t?{scope_id:t.id}:{}}:null),r=j(),s=n.resolvedChildren,i=!!(!n.error&&n.arrangement?.item_id&&n.resolutionLevel==="member"&&n.arrangement.write_target_id===n.arrangement.item_id),o=ge({mutationFn:async c=>{let l,d={_scope_path:c.scopePath};if(c.operation==="pin"?l=await R("create",{...d,parent_id:c.arrangementId,name:`pin-${c.target.id}`,item_type:"symlink",type_data:{target_item_id:c.target.id,target_type:c.target.item_type}}):c.operation==="unpin"?l=await R("delete",{...d,id:c.entry.id}):l=await R("update",{...d,id:c.arrangementId,type_data:{order:c.ids}}),l?.success===!1)throw new Error(l.error||"Pins could not be saved");return l},onSettled:(c,l,d)=>un(r,d.queryKey)}),a=(0,us.useCallback)(c=>!i||!e||re()!==e?Promise.reject(new Error("Personal pins are not available in this context")):c.operation==="unpin"&&!s.some(l=>l.id===c.entry.id)?Promise.reject(new Error("Pin is outside this arrangement")):c.operation==="reorder"&&(new Set(c.ids).size!==s.length||c.ids.length!==s.length||s.some(l=>!c.ids.includes(l.id)))?Promise.reject(new Error("Order must include each pin exactly once")):c.operation==="pin"&&s.some(l=>l.symlink_type_data?.target_item_id===c.target.id)?Promise.resolve(null):o.mutateAsync({...c,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:c=>s.some(l=>l.symlink_type_data?.target_item_id===c),pin:c=>a({operation:"pin",target:c}),unpin:c=>{let l=s.find(d=>d.symlink_type_data?.target_item_id===c||d.id===c);return l?a({operation:"unpin",entry:l}):Promise.resolve(null)},reorder:c=>a({operation:"reorder",ids:c})}}Va(gi);return hu(gi);})();
|
|
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);})();
|
|
8
8
|
|
|
9
9
|
/* ── Auto-setup: require shim + mount + backward compat globals ── */
|
|
10
10
|
(function() {
|