@buoy-gg/shared-ui 7.0.48 → 7.0.49
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/lib/commonjs/index.js +1 -1
- package/lib/commonjs/stores/index.js +1 -1
- package/lib/commonjs/stores/teamSettingsStore.js +1 -0
- package/lib/commonjs/sync/settingsSync.js +1 -1
- package/lib/commonjs/ui/components/DynamicFilterView.js +1 -1
- package/lib/module/index.js +1 -1
- package/lib/module/stores/index.js +1 -1
- package/lib/module/stores/teamSettingsStore.js +1 -0
- package/lib/module/sync/settingsSync.js +1 -1
- package/lib/module/ui/components/DynamicFilterView.js +1 -1
- package/lib/typescript/commonjs/hooks/safe-area-impl.d.ts +1 -1
- package/lib/typescript/commonjs/index.d.ts +1 -1
- package/lib/typescript/commonjs/stores/index.d.ts +1 -0
- package/lib/typescript/commonjs/stores/teamSettingsStore.d.ts +12 -0
- package/lib/typescript/commonjs/sync/settingsSync.d.ts +20 -3
- package/lib/typescript/commonjs/ui/components/DynamicFilterView.d.ts +2 -0
- package/lib/typescript/module/hooks/safe-area-impl.d.ts +1 -1
- package/lib/typescript/module/index.d.ts +1 -1
- package/lib/typescript/module/stores/index.d.ts +1 -0
- package/lib/typescript/module/stores/teamSettingsStore.d.ts +12 -0
- package/lib/typescript/module/sync/settingsSync.d.ts +20 -3
- package/lib/typescript/module/ui/components/DynamicFilterView.d.ts +2 -0
- package/lib/web/chunks/chunk-3S2CBY6A.mjs +14 -0
- package/lib/web/dataViewer.mjs +1 -1
- package/lib/web/index.mjs +2 -2
- package/lib/web/ui.mjs +1 -1
- package/package.json +5 -5
- package/lib/web/chunks/chunk-U2BTZZID.mjs +0 -14
package/lib/web/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use client";import{a as xs,b as ks,c as Is,d as _s,e as Es,f as Os,g as As,h as Rs,i as Ls}from"./chunks/chunk-JYM7MCKQ.mjs";import{a as Ps,b as $s,c as Ms,d as Bs,e as Ds,f as Ns,g as zs,h as Ws}from"./chunks/chunk-T7RZZG4A.mjs";import{$ as Fs,A as js,B as Hs,C as Us,D as Gs,E as Vs,F as Ys,G as qs,J as Js,K as Ks,L as Xs,M as Qs,N as Zs,O as er,P as tr,Q as ar,R as sr,S as rr,Z as nr,_ as or,a as ca,b as ir,c as lr,d as Re,e as cr,f as ur,g as ua,h as dr,i as hr,j as gr,k as pr,l as fr,m as mt,n as br,o as mr,p as yr,q as vr,r as Sr,s as Cr,t as Tr,u as wr,v as xr,w as kr,x as Ir,y as _r,z as Er}from"./chunks/chunk-T6KN54NS.mjs";import"./chunks/chunk-LZ7FZZ7R.mjs";import{a as Or,d as Ar,f as yt}from"./chunks/chunk-53J2FMUD.mjs";import{$ as Rr,$a as Lr,$b as Pr,A as da,Aa as $r,Ab as Mr,Ac as Br,B as Dr,Ba as Nr,Bb as zr,C as Wr,Ca as Fr,Cb as jr,D as Hr,Da as Ur,Db as Gr,E as Vr,Ea as Yr,Eb as qr,F as Jr,Fa as Kr,Fb as Xr,G as Qr,Ga as Zr,Gb as en,H as tn,Ha as an,Hb as sn,I as rn,Ia as nn,Ib as on,J as ln,Ja as cn,Jb as un,K as dn,Ka as hn,Kb as gn,L as pn,La as fn,Lb as bn,M as mn,Ma as yn,Mb as vn,N as Sn,Na as Cn,Nb as Tn,O as wn,Oa as xn,Ob as kn,P as In,Pa as _n,Pb as En,Q as On,Qa as An,Qb as Rn,R as Ln,Ra as Pn,Rb as $n,S as Mn,Sa as Bn,Sb as Dn,T as Nn,Ta as zn,Tb as Wn,U as Fn,Ua as jn,Ub as Hn,V as Un,Va as Gn,Vb as Vn,W as Yn,Wa as qn,Wb as Jn,X as Kn,Xa as Xn,Xb as Qn,Y as Zn,Ya as eo,Yb as to,Z as ao,Za as so,Zb as ro,_ as no,_a as oo,_b as io,a as lo,aa as co,ab as uo,ac as ho,b as go,ba as po,bb as fo,bc as bo,c as mo,ca as yo,cb as vo,cc as So,d as Co,da as To,db as wo,dc as xo,e as ko,ea as Io,eb as _o,ec as Eo,f as Oo,fa as Ao,fb as Ro,fc as Lo,g as Po,ga as $o,gb as Mo,gc as Bo,h as Do,ha as No,hb as zo,hc as Wo,i as ha,ia as Fo,ib as jo,ic as Ho,j as Uo,ja as Go,jb as Vo,jc as Yo,k as qo,ka as Jo,kb as Ko,kc as Xo,l as Qo,la as Zo,lb as ei,lc as ti,m as ai,ma as si,mb as ri,mc as ni,n as oi,na as ii,nb as li,nc as ci,o as ui,oa as di,ob as hi,oc as gi,p as pi,pa as fi,pb as bi,pc as mi,q as yi,qa as vi,qb as Si,qc as Ci,r as Ti,ra as wi,rb as xi,rc as ki,s as Ii,sa as _i,sb as Ei,sc as vt,t as Oi,ta as Ai,tb as Ri,tc as Li,u as Pi,ua as $i,ub as Mi,uc as Bi,v as Di,va as Ni,vb as zi,vc as Wi,w as oe,wa as Fi,wb as ga,wc as ji,x as V,xa as Hi,xb as Ui,xc as pa,y as Se,ya as Gi,yb as Vi,yc as Yi,z as Le,za as qi,zb as Ji,zc as Ki}from"./chunks/chunk-U2BTZZID.mjs";import{a as Xi}from"./chunks/chunk-OPTY6SMO.mjs";import{a as Qi,b as Zi,c as el,d as tl,e as al,f as sl,g as rl,h as nl,i as ol,j as il,k as ll,l as cl,m as ul,n as dl,o as hl,p as gl}from"./chunks/chunk-XYUAUO57.mjs";import{a as u,b as fa}from"./chunks/chunk-GF5C5DVX.mjs";import{a as pl,b as fl}from"./chunks/chunk-T3WLUEET.mjs";import{a as bl,b as ml,c as yl,d as vl,e as Sl,f as Cl,g as Tl,h as wl,i as xl,j as kl,k as Il,l as _l}from"./chunks/chunk-T2SPCEHP.mjs";import{$ as El,$a as Ol,$b as Al,$c as Rl,Aa as Ll,Ab as Pl,Ac as $l,B as Ml,Ba as Bl,Bb as Dl,Bc as Nl,C as zl,Ca as Wl,Cb as Fl,Cc as jl,D as Hl,Da as Ul,Db as Gl,Dc as Vl,Ea as Yl,Eb as ql,Ec as Jl,F as Kl,Fa as Xl,Fb as Ql,Fc as Zl,Ga as ec,Gb as tc,Gc as ac,Ha as sc,Hb as rc,Hc as nc,I as oc,Ib as ic,Ic as St,Ja as lc,Jb as cc,Jc as uc,K as dc,Ka as hc,Kb as gc,Kc as pc,La as fc,Lb as bc,Lc as mc,Ma as yc,Mb as vc,Mc as Sc,Na as Cc,Nb as Tc,Nc as wc,O as xc,Oa as kc,Ob as Ic,Oc as _c,P as Ec,Pa as Oc,Pb as Ac,Pc as Rc,Q as Lc,Qa as Pc,Qb as $c,Qc as Mc,R as Bc,Ra as Dc,Rb as Nc,Rc as zc,S as Wc,Sa as Fc,Sb as jc,Sc as Hc,T as Uc,Ta as Gc,Tb as Vc,Tc as Yc,U as qc,Ua as Jc,Ub as Kc,Uc as Xc,V as Qc,Va as Zc,Vb as eu,Vc as tu,W as au,Wa as su,Wb as ba,Wc as ru,X as nu,Xa as ou,Xb as iu,Xc as lu,Y as cu,Ya as uu,Yb as du,Yc as hu,Z as gu,Za as pu,Zb as fu,Zc as bu,_ as mu,_a as yu,_b as vu,_c as Su,a as Cu,aa as Tu,ab as wu,ac as xu,ad as ku,b as Iu,ba as _u,bb as Eu,bc as ma,bd as Ou,c as Au,ca as Ru,cb as Lu,cc as Pu,cd as $u,d as Mu,da as Bu,db as Du,dc as Nu,dd as zu,e as Wu,ea as Fu,eb as ju,ec as Hu,ed as Uu,f as Gu,fa as Vu,fb as Yu,fc as ya,fd as qu,g as Ju,ga as Ku,gb as Xu,gc as Qu,gd as Zu,h as ed,ha as td,hb as ad,hc as sd,hd as rd,i as nd,ia as od,ib as id,ic as ld,id as cd,j as ud,ja as dd,jb as hd,jc as gd,jd as pd,k as fd,ka as bd,kb as md,kc as yd,kd as vd,l as Sd,la as Cd,lb as Td,lc as wd,ld as xd,m as kd,ma as Id,mb as _d,mc as Ed,md as Od,n as Ad,na as Rd,nb as Ld,nc as Pd,nd as $d,o as Md,oa as Bd,ob as Dd,oc as Nd,od as zd,p as Wd,pa as Fd,pb as jd,pc as Hd,pd as Ud,q as Gd,qa as Vd,qb as Yd,qc as qd,qd as Jd,r as Kd,ra as Xd,rb as Qd,rc as Zd,rd as eh,s as th,sa as ah,sb as sh,sc as rh,sd as nh,t as oh,ta as ih,tb as lh,tc as ch,td as uh,u as dh,ua as hh,ub as gh,uc as ph,ud as fh,va as bh,vb as mh,vc as yh,wa as vh,wb as Sh,wc as Ch,xa as Th,xb as wh,xc as xh,ya as kh,yb as Ih,yc as _h,za as Eh,zb as Oh,zc as Ah}from"./chunks/chunk-7YVWZ4ZK.mjs";import{a as Je,d as C,e as Rh,f as U,g as Lh}from"./chunks/chunk-CE5U3CSQ.mjs";import{a as Ph,b as $h,c as Mh,d as Bh,e as Dh}from"./chunks/chunk-46TKOKMV.mjs";import{a as be,b as Nh,c as zh,d as N,e as Wh,f as Fh}from"./chunks/chunk-DEEKIG2L.mjs";import{H as jh,J as Pe,a as x,b as M,d as Ke,g as Hh,h as Uh,j as Gh,r as Ct}from"./chunks/chunk-3UTMGIUG.mjs";import"./chunks/chunk-5NZOQR6Q.mjs";var Vh=class extends ca{constructor(e){super();this.events=[];this.arrayListeners=new Set;this.captureSuppressed=false;this.clearListeners=new Set;this.maxEvents=e.maxEvents??500,this.storeName=e.storeName,Promise.resolve().then(()=>{let t=()=>{oe().status==="locked"?(this.stopCapturing(),this.events=[],this.notifyArrayListeners()):this.getTotalSubscriberCount()>0&&!this.captureSuppressed&&!this.isCapturing()&&this.startCapturing()};Le(t),t()})}onSubscribe(){this.getTotalSubscriberCount()===1&&!this.captureSuppressed&&oe().status!=="locked"&&this.startCapturing(),Re(this.storeName)}onUnsubscribe(){this.getTotalSubscriberCount()===0&&this.stopCapturing(),Re(this.storeName)}getTotalSubscriberCount(){return this.listeners.size+this.arrayListeners.size}subscribeToEvents(e){let t=this.getTotalSubscriberCount()===0;return this.arrayListeners.add(e),t&&!this.captureSuppressed&&oe().status!=="locked"&&this.startCapturing(),Re(this.storeName),e(this.getEvents()),()=>{this.arrayListeners.delete(e),this.getTotalSubscriberCount()===0&&this.stopCapturing(),Re(this.storeName)}}onEvent(e){return this.subscribe(e)}addEvent(e){oe().status!=="locked"&&(this.events=[e,...this.events].slice(0,this.maxEvents),V()&&this.notify(e),this.notifyArrayListeners())}notifyArrayListeners(){let e=this.getEvents();this.arrayListeners.forEach(t=>{try{t(e)}catch{}})}getEvents(){return V()?this.events:[]}getEventCount(){return V()?this.events.length:0}clearEvents(){this.events=[],this.notifyArrayListeners(),this.clearListeners.forEach(e=>{try{e()}catch{}})}onClear(e){return this.clearListeners.add(e),()=>{this.clearListeners.delete(e)}}disableCapture(){this.captureSuppressed=true,this.isCapturing()&&this.stopCapturing()}replaceEvents(e){this.events=this.dedupeById(e).slice(0,this.maxEvents),this.notifyArrayListeners()}dedupeById(e){let t=new Set,a=[];for(let s of e){let r=s?.id;if(r==null){a.push(s);continue}t.has(r)||(t.add(r),a.push(s))}return a}setMaxEvents(e){this.maxEvents=e,this.events.length>e&&(this.events=this.events.slice(0,e),this.notifyArrayListeners())}getSubscriberCounts(){return{eventCallbacks:this.listeners.size,arrayListeners:this.arrayListeners.size,total:this.getTotalSubscriberCount()}}};import{useEffect as Yh,useMemo as qh,useState as Jh}from"react";var Kh=[{value:"buoy.gg/api/license",mode:"contains"},{value:"api.keygen.sh",mode:"contains"}];function va(e,t){let a=e.toLowerCase(),s=t.value.toLowerCase();if(t.mode==="contains")return a.includes(s);try{let r=new URL(e);return s.startsWith("/")?r.pathname.toLowerCase()===s:s.startsWith("http://")||s.startsWith("https://")?`${r.origin}${r.pathname}`.toLowerCase()===s:r.host.toLowerCase()===s}catch{return a===s}}function Xh(e,t){return!e||t.length===0?false:t.some(a=>va(e,a))}var Sa=Kh;function Ca(e){if(!Array.isArray(e))return[];let t=[];for(let a of e)if(typeof a=="string"&&a.trim())t.push({value:a,mode:"contains"});else if(a&&typeof a=="object"&&typeof a.value=="string"){let s=a;t.push({value:s.value,mode:s.mode==="exact"?"exact":"contains"})}return t}function Ta(e){let t=[...e];for(let a of Sa)t.some(s=>s.value===a.value)||t.push({...a});return t}var Qh=class{constructor(){this.patterns=Ta(Sa.map(e=>({...e})));this.teamPatterns=[];this.merged=this.patterns;this.listeners=new Set;this.loaded=false;this.loadPromise=null;this.dirty=false}getPatterns(){return this.merged}isTeamOnly(e){return!this.patterns.some(t=>t.value===e)&&this.teamPatterns.some(t=>t.value===e)}setTeamPatterns(e){this.teamPatterns=Ca(e),this.remerge(),this.emit()}reload(){return this.loaded=false,this.loadPromise=null,this.dirty=false,this.ensureLoaded()}remerge(){let e=this.teamPatterns.filter(t=>!this.patterns.some(a=>a.value===t.value));this.merged=e.length>0?[...this.patterns,...e]:this.patterns}subscribe(e){return this.listeners.add(e),this.ensureLoaded(),()=>{this.listeners.delete(e)}}emit(){this.listeners.forEach(e=>e())}ensureLoaded(){return this.loaded?Promise.resolve():this.loadPromise?this.loadPromise:(this.loadPromise=(async()=>{try{let e=await N.getItem(be.network.ignoredDomains());if(e&&!this.dirty){let t=Ta(Ca(JSON.parse(e)));this.patterns=t,this.remerge()}}catch{}finally{this.loaded=true,this.emit()}})(),this.loadPromise)}persist(){N.setItem(be.network.ignoredDomains(),JSON.stringify(this.patterns)).catch(()=>{})}commit(e){this.dirty=true,this.patterns=e,this.remerge(),this.emit(),this.persist()}add(e){let t=e.value.trim();t&&(this.patterns.some(a=>a.value===t)||this.commit([...this.patterns,{value:t,mode:e.mode}]))}remove(e){this.patterns.some(t=>t.value===e)&&this.commit(this.patterns.filter(t=>t.value!==e))}toggle(e){let t=e.trim();t&&this.commit(this.patterns.some(a=>a.value===t)?this.patterns.filter(a=>a.value!==t):[...this.patterns,{value:t,mode:"contains"}])}toggleMode(e){this.patterns.some(t=>t.value===e)&&this.commit(this.patterns.map(t=>t.value===e?{...t,mode:t.mode==="contains"?"exact":"contains"}:t))}},J=new Qh,Zh=e=>J.add(e),eg=e=>J.remove(e),tg=e=>J.toggle(e),ag=e=>J.toggleMode(e),sg=e=>J.isTeamOnly(e);function rg(){let[e,t]=Jh(()=>J.getPatterns());Yh(()=>J.subscribe(()=>{t(J.getPatterns())}),[]);let a=qh(()=>new Set(e.map(s=>s.value)),[e]);return{patterns:e,values:a,add:Zh,remove:eg,toggle:tg,toggleMode:ag,isTeamOnly:sg}}function ng(e){typeof requestAnimationFrame=="function"?requestAnimationFrame(()=>e()):setTimeout(e,0)}function og(e){let t=e.id,a=e.order??"append",s=e.coalesce??"sync",r=e.flushMinIntervalMs??150,n=e.max,o=[],i=false,l=e.firstId??1,h=0,b=false,v=[],f=false;function m(){f||(f=true,Le(()=>{oe().status==="locked"&&(o=[]),ne()}))}let T=new Set,L=new Set;function G(){for(let y of T)try{y()}catch{}}function ne(){if(s==="sync"){G();return}b||(b=true,ng(()=>{b=false,G()}))}function D(y){return y.length<=n?y:a==="append"?y.slice(y.length-n):y.slice(0,n)}return{id:t,subscribe(y){return m(),T.add(y),()=>{T.delete(y)}},getSnapshot(){return m(),V()?o:v},size(){return V()?o.length:0},add(y){m(),!(i||oe().status==="locked")&&(a==="append"?o=o.length>=n?[...o.slice(o.length-n+1),y]:[...o,y]:o=o.length>=n?[y,...o.slice(0,n-1)]:[y,...o],ne())},set(y){m(),V()&&(o=D(y),ne())},update(y){m(),oe().status!=="locked"&&(o=D(y(o)),ne())},clear(){for(let y of L)try{y()}catch{}o.length!==0&&(o=[],ne())},onClear(y){return L.add(y),()=>{L.delete(y)}},notify(){ne()},flushSync(y=false){let Z=Date.now();if(!(!y&&Z-h<r)){h=Z;try{let R=globalThis.__buoyFlushToolSync;if(!R)return;for(let Fe of R)Fe(t)}catch{}}},setPaused(y){i=y},isPaused(){return i},setMax(y){n=y;let Z=D(o);Z!==o&&(o=Z,ne())},getMax(){return n},allocId(){return l++},bumpIdAbove(y){y+1>l&&(l=y+1)},listenerCount(){return T.size}}}var ig=class{constructor(e={}){this.items=[];this.itemListeners=new Set;this.clearListeners=new Set;this.idCounter=0;this.enabled=true;this.captureSuppressed=false;this.max=e.max??200}canRecord(){return this.enabled&&!this.captureSuppressed}nextId(){return`${Date.now()}-${++this.idCounter}`}push(e){this.items=[e,...this.items].slice(0,this.max)}record(e){this.push(e),this.notifyListeners()}setItems(e){this.items=e.slice(0,this.max),this.notifyListeners()}getAll(){return[...this.items]}getById(e){return this.items.find(t=>t.id===e)}get size(){return this.items.length}clear(){this.items=[],this.notifyListeners(),this.clearListeners.forEach(e=>{try{e()}catch{}})}onClear(e){return this.clearListeners.add(e),()=>{this.clearListeners.delete(e)}}disableCapture(){this.captureSuppressed=true}isCaptureSuppressed(){return this.captureSuppressed}replaceAll(e){return this.enabled?(this.setItems(e),true):false}hydrateById(e,t){let a=this.items.findIndex(s=>s.id===e);a!==-1&&(this.items=[...this.items.slice(0,a),{...this.items[a],...t},...this.items.slice(a+1)],this.notifyListeners())}setEnabled(e){this.enabled=e}getEnabled(){return this.enabled}setMax(e){this.max=e,this.items.length>e&&(this.items=this.items.slice(0,e),this.notifyListeners())}getMax(){return this.max}subscribe(e){return this.itemListeners.add(e),()=>{this.itemListeners.delete(e)}}notifyListeners(){let e=this.getAll();this.itemListeners.forEach(t=>t(e))}get listenerCount(){return this.itemListeners.size}};var me=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),lg=["id","lineId","key","uuid","_id","slug","name"];function Tt(e){if(!e.length||!e.every(me))return;let t=e[0];for(let a of lg){if(!(a in t))continue;let s=e.map(r=>r[a]);if(s.every(r=>typeof r=="string"||typeof r=="number")&&new Set(s.map(String)).size===s.length)return a}}function cg(e,t,a,s){let r=s[t];return typeof r=="string"||typeof r=="number"?String(r)!==a?{ok:false,error:`The new item is addressed as \`${a}\` but carries \`${t}\`: ${JSON.stringify(r)}. Use the same value for both \u2014 address it by the id it carries.`}:{ok:true,value:r}:e.every(n=>typeof n[t]=="number")&&a.trim()!==""&&String(Number(a))===a?{ok:true,value:Number(a)}:{ok:true,value:a}}function wt(e,t,a="",s=[]){if(Array.isArray(e)&&me(t)){let r=Tt(e);if(!r)return{patch:t,notes:s};let n=new Map(e.map(b=>[String(b[r]),b])),o=e.slice(),i=0,l=0,h=0;for(let[b,v]of Object.entries(t)){let f=o.findIndex(m=>String(m[r])===b);if(v===null){if(f===-1)return{patch:t,notes:s};o.splice(f,1),i++}else if(f===-1){if(!me(v))return{patch:t,notes:s};let m=cg(e,r,b,v);if(!m.ok)return{patch:t,notes:s,error:m.error};o.push({...v,[r]:m.value}),h++}else{let m=wt(n.get(b),v,`${a}[${b}]`,s);if(m.error)return{patch:t,notes:s,error:m.error};let T=o[f];o[f]=me(T)&&me(m.patch)?{...T,...m.patch}:m.patch,l++}}return s.push(`${a||"(root)"}: addressed by \`${r}\` \u2014 ${l} changed, ${h} added, ${i} removed, ${o.length} item(s) remain`),{patch:o,notes:s}}if(me(e)&&me(t)){let r={};for(let[n,o]of Object.entries(t)){let i=a?`${a}.${n}`:n;if(!(n in e)){r[n]=o;continue}let l=wt(e[n],o,i,s);if(l.error)return{patch:t,notes:s,error:l.error};r[n]=l.patch}return{patch:r,notes:s}}return{patch:t,notes:s}}var Xe=e=>typeof e=="object"&&e!==null&&!Array.isArray(e);function $e(e,t=0){if(e===null)return"null";if(Array.isArray(e)){if(!e.length)return"unknown[]";if(t>=3)return"\u2026[]";let s=$e(e[0],t+1);return s.includes(" ")||s.endsWith("]")?`(${s})[]`:`${s}[]`}if(Xe(e)){if(t>=3)return"{\u2026}";let s=Object.keys(e),r=s.slice(0,24),n=r.map(i=>`${i}: ${$e(e[i],t+1)}`).join(", "),o=s.length>r.length?`, +${s.length-r.length} more`:"";return`{${n}${o}}`}let a=typeof e;return a==="undefined"?"undefined":a==="function"?"function":a}function Ce(e,t="",a=[],s=0,r={visited:0}){if(s>3||a.length>=40||r.visited>=600)return a;if(Array.isArray(e)){let n=e[0];if(a.push({path:t||"(root)",length:e.length,...e.length?{item:$e(n)}:{}}),e.length&&Xe(n))for(let[o,i]of Object.entries(n)){if(++r.visited>=600)break;Ce(i,t?`${t}[].${o}`:`[].${o}`,a,s+1,r)}return a}if(Xe(e))for(let[n,o]of Object.entries(e)){if(++r.visited>=600)break;Ce(o,t?`${t}.${n}`:n,a,s+1,r)}return a}function ug(e){let t={visited:0};return Ce(e,"",[],0,t).length>=40||t.visited>=600}function dg(e){return Ce(e).filter(t=>t.item===void 0).map(t=>t.path)}function hg(e){if(e===void 0)return;let t=Ce(e),a=$e(e);if(!(!t.length&&!Xe(e)&&!Array.isArray(e)))return t.length?{shape:a,lists:t}:{shape:a}}var Q=e=>typeof e=="object"&&e!==null&&!Array.isArray(e);function gg(e,t,a=2e3){let s=[{node:e,path:""}],r=0;for(;s.length&&r<a;){let{node:n,path:o}=s.shift();if(r++,Array.isArray(n))n.slice(0,20).forEach((i,l)=>s.push({node:i,path:`${o}[${l}]`}));else if(Q(n))for(let[i,l]of Object.entries(n)){let h=o?`${o}.${i}`:i;if(i===t)return h;(Q(l)||Array.isArray(l))&&s.push({node:l,path:h})}}}function wa(e,t,a,s,r){let n=gg(e,r??a),o=s.slice(0,12).join(", ")||"(no fields)";return n?`No field "${a}" at "${t}" \u2014 did you mean path "${n}"? "${t}" has: ${o}.`:`No field "${a}" at "${t}". It has: ${o}.`}function xa(e,t){let a=e;for(let s of t.split(".")){if(!Q(a))return;a=a[s]}return a}function xt(e){if(!e.trim())return;let t=[],a=0;for(;a<e.length;){if(e[a]==="."){a++;continue}if(e[a]==="["){let n=e.indexOf("]",a);if(n===-1)return;let o=e.slice(a+1,n);if(/^\d+$/.test(o))t.push({kind:"index",index:Number(o)});else{let i=o.indexOf("=");if(i<=0)return;t.push({kind:"match",field:o.slice(0,i).trim(),value:o.slice(i+1).trim()})}a=n+1;continue}let s=a;for(;s<e.length&&e[s]!=="."&&e[s]!=="[";)s++;let r=e.slice(a,s);if(!r)return;t.push({kind:"key",key:r}),a=s}return t.length?t:void 0}function pg(e,t){let a=xt(t);if(!a)return{ok:false,error:`Could not read the path "${t}". Use dotted keys with optional [0] or [field=value], like "item.name" or "lines[lineId=seed-1].qty".`};let s=e,r=[];for(let n of a){if(s==null)return{ok:false,error:`"${r.join(".")||"(root)"}" is ${s===null?"null":"not set"}, so there is nothing at "${t}".`};if(n.kind==="key"){if(!Q(s))return{ok:false,error:`"${r.join(".")||"(root)"}" is not an object, so it has no field "${n.key}".`};if(!(n.key in s)){let o=a[a.length-1];return{ok:false,error:wa(e,r.join(".")||"(root)",n.key,Object.keys(s),o?.kind==="key"?o.key:void 0)}}s=s[n.key],r.push(n.key)}else if(n.kind==="index"){if(!Array.isArray(s))return{ok:false,error:`"${r.join(".")||"(root)"}" is not a list, so [${n.index}] means nothing.`};s=s[n.index],r.push(`[${n.index}]`)}else{if(!Array.isArray(s))return{ok:false,error:`"${r.join(".")||"(root)"}" is not a list, so [${n.field}=${n.value}] means nothing.`};let o=s.find(i=>Q(i)&&String(xa(i,n.field))===n.value);if(o===void 0)return{ok:false,error:`No item with ${n.field}="${n.value}" in "${r.join(".")||"(root)"}".`};s=o,r.push(`[${n.field}=${n.value}]`)}}return{ok:true,value:s}}function fg(e,t,a){let s=xt(t);if(!s)return{ok:false,error:`Could not read the path "${t}". Use dotted keys with optional [0] or [field=value], like "item.name" or "lines[lineId=seed-1].qty".`};if(s[0]?.kind!=="key")return{ok:false,error:`A path must start with a field name, not a list index \u2014 "${t}" does not say which list.`};let r=(o,i)=>{if(i>=s.length)return{ok:true,patch:a};let l=s[i];if(l.kind==="key"){if(Q(o)&&!(l.key in o)&&i+1<s.length){let G=s[s.length-1];return{ok:false,error:wa(e,Me(s,i),l.key,Object.keys(o),G?.kind==="key"?G.key:void 0)}}let T=Q(o)?o[l.key]:void 0,L=r(T,i+1);return L.ok?{ok:true,patch:{[l.key]:L.patch}}:L}if(!Array.isArray(o))return{ok:false,error:`"${Me(s,i)}" is not a list, so "${t}" cannot be resolved. Read it first \u2014 \`shape\` on the read says what each field holds.`};let h=l.kind==="index"?l.index:o.findIndex(T=>Q(T)&&String(xa(T,l.field))===l.value),b=h>=0?o[h]:void 0;if(l.kind==="index"?h<0||h>=o.length:h<0)return{ok:false,error:l.kind==="index"?`"${Me(s,i)}" has ${o.length} item(s), so there is nothing at [${l.index}].`:`No item with ${l.field}="${l.value}" in "${Me(s,i)}".`};if(!Q(b)){if(i<s.length-1)return{ok:false,error:`"${Me(s,i)}[${l.kind==="index"?l.index:`${l.field}=${l.value}`}]" holds ${b===null?"null":typeof b}, not an object, so "${t}" cannot go any deeper. Set the item itself.`};let T=o.slice();return T[h]=a,{ok:true,patch:T}}let v=r(b,i+1);if(!v.ok)return v;let f=Tt(o);if(f)return{ok:true,patch:{[String(b[f])]:v.patch}};let m=o.slice();return m[h]=Q(v.patch)?{...b,...v.patch}:v.patch,{ok:true,patch:m}},n=r(e,0);return n.ok?{ok:true,patch:n.patch}:n}function Me(e,t){return e.slice(0,t).map(a=>a.kind==="key"?a.key:a.kind==="index"?`[${a.index}]`:`[${a.field}=${a.value}]`).join(".").replace(/\.\[/g,"[")||"(root)"}var ie=e=>!!e&&typeof e=="object"&&!Array.isArray(e);function Be(e){return Array.isArray(e)?"array":e===null?"null":typeof e=="object"?"object":typeof e}var ka=["string","number","boolean"];function Ia(e,t,a=2e3){let s=[{node:e,path:""}],r=0;for(;s.length&&r<a;){let{node:n,path:o}=s.shift();if(r++,Array.isArray(n))n.slice(0,20).forEach((i,l)=>s.push({node:i,path:`${o}[${l}]`}));else if(ie(n))for(let[i,l]of Object.entries(n)){let h=o?`${o}.${i}`:i;if(i===t&&o)return h;(ie(l)||Array.isArray(l))&&s.push({node:l,path:h})}}}function kt(e,t,a={},s=e,r="",n=[]){let o=a.noun??"data",i=r||"(root)";if(Array.isArray(t)){if(!Array.isArray(e))return n.push({path:i,kind:"type-change",detail:`${Be(e)} \u2192 array`}),n;let f=e.length?e[0]:void 0;return f!==void 0&&(ie(f)||Array.isArray(f))&&t.forEach((m,T)=>{let L=`${r}[${T}]`;if(ie(f)&&ie(m))for(let G of Object.keys(f))G in m||n.push({path:`${L}.${G}`,kind:"missing-key",detail:`list items need \`${G}\` \u2014 the items already in the list have it`});kt(f,m,a,s,L,n)}),n}if(ie(t)){if(!ie(e))return n.push({path:i,kind:"type-change",detail:`${Be(e)} \u2192 object`}),n;for(let[f,m]of Object.entries(t)){let T=r?`${r}.${f}`:f;if(f in e)kt(e[f],m,a,s,T,n);else{let L=Ia(s,f);n.push({path:T,kind:"add-key",detail:L?`no such field here \u2014 did you mean \`${L}\`?`:`no field named \`${f}\` exists in this ${o}`,...L?{movedTo:L}:{}})}}return n}let l=Be(e),h=Be(t),b=l==="null"&&ka.includes(h),v=h==="null"&&ka.includes(l);return l!==h&&!b&&!v&&n.push({path:i,kind:"type-change",detail:`${l} \u2192 ${h}`}),n}function bg(e,t){if(!t.length||!t.every(s=>s.kind==="add-key"&&s.movedTo))return;let a={};for(let s of t){let r=mg(e,s.path);if(r===void 0||s.movedTo.includes("["))return;let n=a,o=s.movedTo.split(".");o.slice(0,-1).forEach(i=>{n[i]??(n[i]={}),n=n[i]}),n[o[o.length-1]]=r}return a}function mg(e,t){let a=e;for(let s of t.split(".")){if(!ie(a))return;a=a[s]}return a}function yg(e,t,a){let s=e.slice(0,6).map(n=>`\`${n.path}\`: ${n.detail}`).join("; "),r=e.length>6?`; +${e.length-6} more`:"";return`Refused: this isn't a same-type edit of existing fields (the rule the React Query devtools enforces). ${s}${r}. You can only change the VALUE of a field that already exists, to the same type \u2014 you can't add fields, change a field's type, or null a list/object the screen renders. Clearing a scalar to null is fine. Send just the field(s) you're changing, nested to match the current shape of this ${t}. Use force:true only to deliberately break that.`+(a?` This is the same edit at the right depth \u2014 send it as the patch: ${JSON.stringify(a)}`:"")}function Qe(e,t){let a=0,s=false,r=false,n=[e],o=new Set;for(;n.length>0;){if(a>t)return{bytes:a,sawRepeat:s,sawBigInt:r};let i=n.pop();if(i==null)a+=4;else if(typeof i=="string")a+=i.length+2;else if(typeof i=="number")a+=8;else if(typeof i=="boolean")a+=5;else if(typeof i=="object"){if(o.has(i)){s=true;continue}if(o.add(i),Array.isArray(i)){a+=2+i.length;for(let l=0;l<i.length;l++)n.push(i[l])}else{a+=2;for(let l in i)a+=l.length+4,n.push(i[l])}}else typeof i=="bigint"&&(r=true),a+=4}return{bytes:a,sawRepeat:s,sawBigInt:r}}function It(e,t){let a=Qe(e,t);return a.bytes>t?true:!a.sawRepeat&&!a.sawBigInt?false:!ua(e)}var _a=16*1024,Ze=8*1024*1024;function vg(e,t){return Object.freeze({[`__buoy${e}OnDevice`]:true,note:t})}function Sg(e,t){return typeof e=="object"&&e!==null&&e[`__buoy${t}OnDevice`]===true}function Ea(e=Ze){return{__buoyTruncated:true,note:`Exceeds the ${e/1048576}MB detail limit \u2014 inspect it on-device.`}}function Cg(e,t,a=_a){return e===void 0?e:It(e,a)?t:e}function Oa(e,t=Ze){return It(e,t)?Ea(t):e}function Tg(e){let t=new WeakMap;return a=>{let s=t.get(a);if(s!==void 0)return s;let r=e(a);return t.set(a,r),r}}function wg(e,t){let a=[],s=t.baseBytes??16;for(let r=e.length-1;r>=0;r--){let n=t.toWire(e[r]);if(s+n.bytes>t.budget&&a.length>0)break;a.push(n.value),s+=n.bytes}return a.reverse(),a}function xg(e,t,a){let s=Qe(e,t);if(s.bytes<=t)return{value:e,bytes:s.bytes};let r=a();return{value:r,bytes:Qe(r,t).bytes}}function Aa(e){return e??{}}function kg(e,t,a=Ze){let s=r=>Oa(r,a);return r=>{let{id:n}=Aa(r);if(!n)return{found:false,reason:"missing id"};let o=e(n);return o?{found:true,id:n,...t(o,s)}:{found:false,reason:"unknown id"}}}function Ra(e){return e.length===1?e[0]:t=>{let a=e.map(s=>s(t));return()=>{for(let s of a)s()}}}function Ig(e){let t=Array.isArray(e.subscribe)?Ra(e.subscribe):e.subscribe;return{version:e.version,getSnapshot:e.getSnapshot,subscribe:t,...e.actions?{actions:e.actions}:{}}}var et=new Set(["@react_buoy_settings_theme","@react_buoy_settings_preferences","@react_buoy_settings_global","@react_buoy_dev_tools_settings","@react_buoy_settings_tooltip_shown","@react_buoy_modal_hint_acknowledged","@react_buoy_clipboard_hint_acknowledged","@react_buoy_network_filters","@react_buoy_network_preferences","@react_buoy_network_copy_options","@react_buoy_storage_filters","@react_buoy_storage_event_filters","@react_buoy_storage_key_filters","@react_buoy_storage_pinned_keys","@react_buoy_storage_preferences","@react_buoy_storage_diff_viewer_mode","@react_buoy_rq_filters","@react_buoy_rq_preferences","@react_buoy_route_events_event_filters","@react_buoy_route_events_detail_view","@react_buoy_route_events_diff_viewer_mode","@react_buoy_sentry_filters","@react_buoy_sentry_preferences","@react_buoy_highlight_updates_filters","@react_buoy_highlight_updates_settings","@react_buoy_highlight_updates_copy_settings","@react_buoy_events_enabled_sources","@react_buoy_events_copy_settings","@react_buoy_time_machine_diff_viewer_mode","@react_buoy_network_ignored_domains","@react_buoy_network_ignored_urls","@react_buoy_rq_ignored_patterns","@react_buoy_rq_included_patterns"]),La=new Set(["@react_buoy_network_ignored_domains","@react_buoy_network_ignored_urls","@react_buoy_rq_ignored_patterns","@react_buoy_rq_included_patterns"]),Pa="@react_buoy_settings_sync_meta",$a="@react_buoy_network_ignored_domains",Ma=2e3,le=3e4,_t=15*6e4,_g=15e3;function Eg(){return{storage:N,credential:Hr,fetch:(e,t)=>fetch(e,t),subscribeWrites:zh,setTimer:(e,t)=>setTimeout(e,t),clearTimer:e=>clearTimeout(e),onTeam:e=>J.setTeamPatterns(Og(e[$a])),onApplied:e=>{e.includes($a)&&J.reload()}}}function Og(e){if(!e)return[];try{return JSON.parse(e)}catch{return[]}}var Ba=class{constructor(e=Eg()){this.started=false;this.pending=new Map;this.applying=new Set;this.pushTimer=null;this.pullTimer=null;this.unsubscribe=null;this.refusedToken=null;this.deps=e}start(){this.started||(this.started=true,this.unsubscribe=this.deps.subscribeWrites((e,t)=>this.onWrite(e,t)),this.pull())}stop(){this.started=false,this.unsubscribe?.(),this.unsubscribe=null,this.pushTimer!==null&&this.deps.clearTimer(this.pushTimer),this.pullTimer!==null&&this.deps.clearTimer(this.pullTimer),this.pushTimer=this.pullTimer=null}credential(){let e=this.deps.credential();return e&&e.token!==this.refusedToken?e:null}call(e,t,a){return new Promise((s,r)=>{let n=this.deps.setTimer(()=>r(new Error("timeout")),_g);this.deps.fetch(`${t.origin.replace(/\/$/,"")}${e}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({access_token:t.token,...a})}).then(o=>{this.deps.clearTimer(n),s(o)},o=>{this.deps.clearTimer(n),r(o)})})}schedulePull(e){this.started&&(this.pullTimer!==null&&this.deps.clearTimer(this.pullTimer),this.pullTimer=this.deps.setTimer(()=>{this.pullTimer=null,this.pull()},e))}async readMeta(){try{let e=await this.deps.storage.getItem(Pa),t=e?JSON.parse(e):{};return t&&typeof t=="object"?t:{}}catch{return{}}}async writeMeta(e){await this.deps.storage.setItem(Pa,JSON.stringify(e)).catch(()=>{})}async pull(){let e=this.credential();if(!e)return this.schedulePull(le);let t,a;try{let i=await this.call("/api/settings/pull",e,{});t=i.status,a=await i.json().catch(()=>null)}catch{return this.schedulePull(le)}if(t===401||t===403)return this.refusedToken=e.token,this.schedulePull(le);if(t===404)return this.schedulePull(_t);if(t!==200||!a)return this.schedulePull(le);let s=a.personal??{},r=await this.readMeta(),n=[];for(let[i,l]of Object.entries(s))if(!(!et.has(i)||this.pending.has(i))&&!(typeof l?.value!="string"||!(l.updatedAt>(r[i]??0)))){this.applying.add(i);try{await this.deps.storage.setItem(i,l.value)}finally{this.applying.delete(i)}r[i]=l.updatedAt,n.push(i)}for(let i of et){if(i in s||i in r||this.pending.has(i))continue;let l=await this.deps.storage.getItem(i).catch(()=>null);l!==null&&this.pending.set(i,l)}await this.writeMeta(r),n.length>0&&this.deps.onApplied(n);let o={};for(let[i,l]of Object.entries(a.team??{}))La.has(i)&&typeof l?.value=="string"&&(o[i]=l.value);this.deps.onTeam(o),this.pending.size>0&&this.schedulePush(0),this.schedulePull(_t)}onWrite(e,t){!this.started||this.applying.has(e)||!et.has(e)||(this.pending.set(e,t),this.schedulePush(Ma))}schedulePush(e){this.pushTimer!==null&&this.deps.clearTimer(this.pushTimer),this.pushTimer=this.deps.setTimer(()=>{this.pushTimer=null,this.push()},e)}async push(){if(this.pending.size===0)return;let e=this.credential();if(!e)return this.schedulePush(le);let t=new Map(this.pending),a,s;try{let n=await this.call("/api/settings/push",e,{changes:Object.fromEntries(t)});a=n.status,s=await n.json().catch(()=>null)}catch{return this.schedulePush(le)}if(a===401||a===403)return this.refusedToken=e.token,this.schedulePush(le);if(a===404)return this.schedulePush(_t);if(a!==200||!s||typeof s.updatedAt!="number")return this.schedulePush(le);let r=await this.readMeta();for(let[n,o]of t)this.pending.get(n)===o&&this.pending.delete(n),r[n]=s.updatedAt;await this.writeMeta(r),this.pending.size>0&&this.schedulePush(Ma)}},Et=null;function Ag(){Et??(Et=new Ba),Et.start()}function Rg(e){return e}function Lg(e,t,a){return s=>{let r=s??{},n=e.props===void 0&&!t?void 0:{...e.props??{},...t?t(r):{}};return{...e,id:r.id||e.id,name:r.name||e.name,description:r.description||e.description,...n!==void 0?{props:n}:{},...a?a(r,e):{}}}}var Ot="__buoyToolActionRegistry";function At(){let e=globalThis;return e[Ot]||(e[Ot]=new Set),e[Ot]}function Pg(e){let t=At();t.add(e);let a=false,s=()=>{if(a)return;a=true;let n=e(),o=async(i,l,h)=>{if(!(i==="network"&&l==="deleteOverrideRule"||i==="impersonate"&&l==="stopImpersonation"))throw new Error("Unsupported account-lock cleanup operation");if(i==="impersonate")return n[i]?.dispose?.(o);let b=n[i]?.actions?.[l];if(!b)throw new Error(`Cleanup unavailable for ${i}`);return b(h)};for(let i of Object.values(n))try{Promise.resolve(i.dispose?.(o)).catch(l=>console.warn("[Buoy] Tool cleanup failed",l))}catch(l){console.warn("[Buoy] Tool cleanup failed",l)}},r=Le(()=>{V()?a=false:s()});return()=>{r(),t.delete(e),Promise.resolve().then(()=>{t.size===0&&s()})}}function Te(){if(!V())return{};let e={};for(let t of At())try{Object.assign(e,t())}catch{}return Object.fromEntries(Object.entries(e).map(([t,a])=>[t,Da(a)]))}function $g(){return Object.keys(Te())}function Mg(){let e={};for(let[t,a]of Object.entries(Te()))e[t]=Object.keys(a.actions??{});return e}function Bg(){return Object.entries(Te()).filter(([,e])=>typeof e.getSnapshot=="function").map(([e])=>e)}async function Dg(e){Se();let t=Te()[e];if(!t)throw new Error(`Unknown tool "${e}"`);if(typeof t.getSnapshot!="function")throw new Error(`Tool "${e}" has no snapshot to read`);return await t.getSnapshot()}function Rt(){return V()&&At().size>0}async function Ng(e,t,a){Se();let s=Te()[e],r=s?.actions?.[t];if(!r)throw new Error(s?`Unknown action "${t}" on tool "${e}"`:`Unknown tool "${e}"`);return await r(a)}async function zg(e=2e3){if(Rt())return true;let t=mt()+e;for(;mt()<t;)if(await new Promise(a=>setTimeout(a,50)),Rt())return true;return false}function Da(e){let t=a=>(...s)=>{Se();let r=false,n=Le(()=>{V()||(r=true)}),o=()=>{if(r)throw new Error("Buoy account access ended while the operation was pending.");Se()};try{let i=a.apply(e,s);return i&&typeof i.then=="function"?Promise.resolve(i).then(l=>(o(),l)).finally(n):(o(),n(),i)}catch(i){throw n(),i}};return{...e,...e.getSnapshot?{getSnapshot:t(e.getSnapshot)}:{},...e.actions?{actions:Object.fromEntries(Object.entries(e.actions).map(([a,s])=>[a,t(s)]))}:{},...e.subscribe?{subscribe:a=>(Se(),e.subscribe(()=>{V()&&a()}))}:{}}}var Lt="__buoyToolUiBridge";function Pt(){let e=globalThis;return e[Lt]||(e[Lt]=new Set),e[Lt]}function Wg(e){let t=Pt();return t.add(e),()=>{t.delete(e)}}function Fg(e){for(let t of Pt())try{if(t(e))return true}catch{}return false}function jg(){return Pt().size>0}var $t="__buoyToolAttention";function Mt(){let e=globalThis;return e[$t]||(e[$t]={byTool:new Map,listeners:new Set}),e[$t]}function Hg(e,t){let a=Mt(),s=a.byTool.get(e)??null;if(!(s===t||s&&t&&s.kind===t.kind&&s.label===t.label)){t?a.byTool.set(e,t):a.byTool.delete(e);for(let r of a.listeners)try{r()}catch{}}}function Ug(e){return Mt().byTool.get(e)??null}function Gg(e){let t=Mt();return t.listeners.add(e),()=>{t.listeners.delete(e)}}import{createContext as Vg,useContext as Yg,useEffect as qg}from"react";var Na=Vg(null);function Jg(e,t){let a=Yg(Na);return qg(()=>{if(a)return a(e),()=>a(null)},[a,...t]),a!==null}var za=256*1024;function Kg(e){let t=new Set(e?.excludeKeys??[]),a=e?.includeKeys?new Set(e.includeKeys):null,s=0,r=n=>!t.has(n)&&(!a||a.has(n));return{touch:r,allows(n){return r(n)?true:(s+=1,false)},countExcluded(n){s+=n},get excludedHits(){return s},excludedWarning(n){return s>0?`${s} ${n} excluded by you`:null}}}function Xg(){return{ok:true,applied:0,skipped:[],warnings:[]}}function Qg(e){return{ok:false,applied:0,skipped:[],warnings:[e]}}function Zg(e,t){return{ok:false,applied:0,skipped:[{id:e,reason:t}],warnings:[]}}function ep(e,t={}){let{key:a,label:s,oldValue:r,newValue:n,inOld:o,inNew:i}=e;if(!i)return{key:a,label:s,verdict:"removed",oldValue:r};if(!o)return{key:a,label:s,verdict:"added",newValue:n};if((t.equal??Or)(r,n))return{key:a,label:s,verdict:"unchanged"};let l=t.tooLarge??(h=>Ar(h,za));return l(r)||l(n)?{key:a,label:s,verdict:"too-large",reason:t.tooLargeReason??"value too large to render a diff \u2014 restore still applies it"}:{key:a,label:s,verdict:"changed",oldValue:r,newValue:n}}function tp(e,t){return e.verdict==="unchanged"?e:{...e,verdict:"wont-apply",reason:t}}function ap(e,t){let a=s=>s===void 0?[]:s instanceof Map?Array.from(s.keys()):Object.keys(s);return new Set([...a(e),...a(t)])}function sp(e,t={}){let a=e.toLowerCase();if(t[a])return t[a];for(let[m,T]of Object.entries(t))if(a.includes(m))return T;let s=e.split("").reduce((m,T)=>m+T.charCodeAt(0),0)*137%360,r=.7,n=.6,o=(1-Math.abs(2*n-1))*r,i=o*(1-Math.abs(s/60%2-1)),l=n-o/2,h=0,b=0,v=0;s<60?(h=o,b=i):s<120?(h=i,b=o):s<180?(b=o,v=i):s<240?(b=i,v=o):s<300?(h=i,v=o):(h=o,v=i);let f=m=>Math.round((m+l)*255).toString(16).padStart(2,"0");return`#${f(h)}${f(b)}${f(v)}`}function rp(e,t={}){let a=t.maxLength??40;if(e===void 0)return t.undefinedLabel??"undefined";if(e===null)return"null";try{if(typeof e=="function")return t.functionLabel??"(fn)";if(typeof e=="string")return e.length>a?`"${e.slice(0,a-3)}..."`:`"${e}"`;if(typeof e=="number"||typeof e=="boolean")return String(e);if(Array.isArray(e)){if(e.length===0)return"[]";let s=JSON.stringify(e);return s.length>a?`[${e.length} items]`:s}if(typeof e=="object"){let s=Object.keys(e);if(s.length===0)return"{}";let r=JSON.stringify(e);return r.length<=a?r:`{ ${s.length} keys }`}return String(e).slice(0,a)}catch{return"[complex]"}}function np(e,t){if(e===t)return{summary:"no change",changedKeys:[],changedCount:0};if(typeof e!="object"||typeof t!="object"||e===null||t===null)return{summary:"changed",changedKeys:[],changedCount:0};let a=e,s=t,r=Object.keys(a),n=Object.keys(s),o=n.filter(f=>!r.includes(f)),i=r.filter(f=>!n.includes(f)),l=[];for(let f of r)n.includes(f)&&a[f]!==s[f]&&l.push(f);let h=[...o,...i,...l],b=[];if(o.length>0&&b.push(`+${o.length}`),i.length>0&&b.push(`-${i.length}`),l.length>0&&b.push(`~${l.length}`),b.length===0)return{summary:"nested change",changedKeys:[],changedCount:0};let v=h.length;return{summary:`${b.join(" ")} ${v===1?"key":"keys"}`,changedKeys:h,changedCount:v}}function Wa(e){if(e==null)return"N/A";if(e===0)return"0 B";let t=1024,a=["B","KB","MB","GB","TB"],s=Math.floor(Math.log(e)/Math.log(t));return`${(e/Math.pow(t,s)).toFixed(1)} ${a[s]}`}function op(e){if(e==null)return"N/A";if(e<1e3)return`${e}ms`;if(e<6e4)return`${(e/1e3).toFixed(1)}s`;if(e<36e5){let s=Math.floor(e/6e4),r=Math.floor(e%6e4/1e3);return r>0?`${s}m ${r}s`:`${s}m`}let t=Math.floor(e/36e5),a=Math.floor(e%36e5/6e4);return a>0?`${t}h ${a}m`:`${t}h`}function ip(e){return e.toLocaleString()}var Fa=5e4;function lp(e,t=Fa){try{let a=JSON.stringify(e);return a.length>t?`[omitted: ${Wa(a.length)} \u2014 too large to copy]`:e}catch{return"[omitted: could not serialize]"}}function cp(e,t=50,a=20,s=20){if(e.length<=t)return e;let r=e.slice(0,a),n=e.slice(-s);return`${r}...${n}`}function up(e){if(e>=100&&e<200)return{text:String(e),color:C.info,meaning:"Informational"};if(e>=200&&e<300){let t={200:"OK",201:"Created",202:"Accepted",204:"No Content",206:"Partial Content"};return{text:String(e),color:C.success,meaning:t[e]||"Success"}}if(e>=300&&e<400){let t={301:"Moved Permanently",302:"Found",303:"See Other",304:"Not Modified",307:"Temporary Redirect",308:"Permanent Redirect"};return{text:String(e),color:C.warning,meaning:t[e]||"Redirect"}}if(e>=400&&e<500){let t={400:"Bad Request",401:"Unauthorized",402:"Payment Required",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",408:"Request Timeout",409:"Conflict",410:"Gone",422:"Unprocessable Entity",429:"Too Many Requests"};return{text:String(e),color:C.error,meaning:t[e]||"Client Error"}}if(e>=500){let t={500:"Internal Server Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout",505:"HTTP Version Not Supported"};return{text:String(e),color:C.error,meaning:t[e]||"Server Error"}}return{text:String(e),color:C.muted,meaning:"Unknown"}}function dp(e){return{GET:C.success,POST:C.info,PUT:C.warning,DELETE:C.error,PATCH:C.network,HEAD:C.muted,OPTIONS:C.secondary,CONNECT:C.critical,TRACE:C.env}[e.toUpperCase()]||C.muted}function hp(e){try{let t=new URL(e);return{protocol:t.protocol.replace(":",""),host:t.hostname,port:t.port||void 0,pathname:t.pathname,search:t.search||void 0,hash:t.hash||void 0}}catch{return null}}var De=[];function ja(e){De.unshift(e),De=De.slice(0,500)}function gp(){return De}function pp(){De=[]}var Bt=(e=>(e.Debug="debug",e.Info="info",e.Log="log",e.Warn="warn",e.Error="error",e))(Bt||{}),Dt=(e=>(e.Auth="Auth",e.Custom="Custom",e.Debug="Debug",e.Error="Error",e.Generic="Generic",e.HTTPRequest="HTTP Request",e.Navigation="Navigation",e.Replay="Replay",e.State="State",e.System="System",e.Touch="Touch",e.UserAction="User Action",e))(Dt||{});var fp=()=>`${Date.now()}-${Math.random().toString(36).substr(2,9)}`,Ha=class{constructor(){this.captureTransaction=e=>(this.logSentryEvent("transaction",e),e);this.captureSpan=e=>(this.logSentryEvent("span",e),e);this.captureEvent=e=>(this.logSentryEvent("event",e),e);this.captureLog=e=>(this.logSentryEvent("console",{message:e.message||"Log entry",level:e.level,category:"console",timestamp:e.timestamp,...e.attributes}),e);this.captureBreadcrumb=e=>{let t="unknown";try{let s=globalThis.getCurrentPathname;s&&(t=s())}catch{}let a=e.category;if(e.message?.toLowerCase().includes("ignore"))return null;if(e.message?.includes("Touch event within element:")&&(e.message=e.message.replace("Touch event within element:","")),a==="navigation"&&e.data?.from&&e.data?.to&&(e.message=`From ${e.data.from} To ${e.data.to}`),a==="touch"&&e.data?.path){e.message&&(e.message=e.message.trim());let s={...e.data,category:a,message:e.message,route:t,timestamp:new Date().toISOString(),path:e.message?[{label:e.message}]:e.data?.path};e.data=s}return this.logSentryEvent("breadcrumb",e),e}}logSentryEvent(e,t){let a="Generic",s=t.category;if(s)switch(s){case"touch":a="Touch";break;case"xhr":case"fetch":case"http":a="HTTP Request";break;case"navigation":a="Navigation";break;case"auth":a="Auth";break;case"console":a="System";break;case"debug":a="Debug";break;default:s.startsWith("ui.")?a="User Action":s.startsWith("replay.")?a="Replay":s.includes("redux")||s.includes("state")?a="State":a="Custom"}let r={id:fp(),timestamp:Date.now(),level:this.getSentryLevel(t),message:this.getSentryMessage(t),metadata:this.getSentryMetadata(t),type:a};ja(r)}getSentryLevel(e){switch(e.level){case"fatal":case"error":return"error";case"warning":return"warn";case"info":return"info";case"debug":return"debug";default:return"log"}}getSentryMessage(e){let t=e.message;return typeof t=="string"?t:`${e.type||"Unknown"} Event`}getSentryMetadata(e){let{message:t,level:a,type:s,...r}=e;return r}},bp=new Ha;import{useState as Nt,useEffect as Ua}from"react";import{jsx as O,jsxs as we}from"react/jsx-runtime";var tt=be.bubble.settings(),Ga=be.bubble.userPreferences(),zt={showEnvironment:true,showQueryButton:true,showWifiToggle:true,showEnvButton:false,showSentryButton:false,showStorageButton:false};function mp({onPress:e}){let[t,a]=Nt(zt);Ua(()=>{s()},[]);let s=async()=>{try{let r=await N.getItem(tt);r&&a(JSON.parse(r))}catch(r){console.error("Failed to load bubble settings:",r)}};return O(pa,{id:"bubble-settings",title:"SETTINGS",subtitle:`${Object.values(t).filter(Boolean).length}/6 visible`,icon:St,iconColor:"#10B981",iconBackgroundColor:"rgba(16, 185, 129, 0.1)",onPress:e||(()=>{}),index:5})}function yp({onSettingsChange:e}){let[t,a]=Nt(zt),[s,r]=Nt(true);Ua(()=>{n()},[]);let n=async()=>{try{let h=await N.getItem(tt);h&&a(JSON.parse(h))}catch(h){console.error("Failed to load bubble settings:",h)}finally{r(false)}},o=async h=>{try{await N.setItem(tt,JSON.stringify(h)),a(h),e?.(h)}catch(b){console.error("Failed to save bubble settings:",b)}},i=async h=>{let b={...t,[h]:!t[h]};try{let v=await N.getItem(Ga),f=v?JSON.parse(v):{},m=h.replace("show","hasSet"),T={...f,[m]:true};await N.setItem(Ga,JSON.stringify(T))}catch(v){console.error("Failed to save user preference marker:",v)}o(b)};if(s)return O(x,{style:I.detailContainer,children:O(M,{style:I.loadingText,children:"Loading settings..."})});let l=[{key:"showEnvironment",label:"Environment Indicator",description:"Shows current environment (dev, staging, prod)",icon:O(x,{style:[I.indicator,{backgroundColor:"#10B981"}]})},{key:"showQueryButton",label:"React Query Button",description:"Opens React Query dev tools",icon:O(x,{style:[I.indicator,{backgroundColor:"#F59E0B"}]})},{key:"showWifiToggle",label:"WiFi",description:"Toggle WiFi for testing offline scenarios",icon:O(x,{style:[I.indicator,{backgroundColor:"#8B5CF6"}]})},{key:"showEnvButton",label:"Environment Variables",description:"View and check environment variables",icon:O(St,{size:16,color:"#10B981"})},{key:"showSentryButton",label:"Sentry Events",description:"View captured Sentry events and errors",icon:O(x,{style:[I.indicator,{backgroundColor:"#a855f7"}]})},{key:"showStorageButton",label:"Storage Browser",description:"Browse and inspect AsyncStorage data",icon:O(ma,{size:16,color:"#3B82F6"})}];return O(x,{style:I.detailContainer,children:we(Uh,{showsVerticalScrollIndicator:false,contentContainerStyle:I.scrollContent,"sentry-label":"ignore bubble settings scroll",children:[we(x,{style:I.header,children:[O(M,{style:I.headerTitle,children:"Developer Tools Settings"}),O(M,{style:I.headerDescription,children:"Configure bubble button visibility"})]}),O(x,{style:I.sectionDivider,children:O(M,{style:I.sectionTitle,children:"Bubble Button Visibility"})}),O(x,{style:I.settingsList,children:l.map(h=>we(x,{style:I.settingItem,children:[O(x,{style:I.settingIconContainer,children:h.icon}),we(x,{style:I.settingContent,children:[O(M,{style:I.settingLabel,children:h.label}),O(M,{style:I.settingDescription,children:h.description})]}),O(Gh,{"sentry-label":"ignore bubble settings section",value:t[h.key],onValueChange:()=>i(h.key),trackColor:{false:"#4B5563",true:"#10B981"},thumbColor:t[h.key]?"#fff":U.textSecondary})]},h.key))}),we(x,{style:I.footer,children:[we(x,{style:I.noteContainer,children:[O(ya,{size:16,color:U.textSecondary}),O(M,{style:I.noteText,children:"User status indicator is always visible and cannot be disabled"})]}),O(M,{style:I.restartNote,children:"Changes are saved automatically and will persist across app restarts"})]})]})})}async function vp(){try{let e=await N.getItem(tt);if(e)return JSON.parse(e)}catch(e){console.error("Failed to load bubble settings:",e)}return zt}var I=Pe.create({scrollContent:{flexGrow:1},sectionCard:{backgroundColor:U.input,borderRadius:8,padding:16,flexDirection:"row",alignItems:"center",marginBottom:12},iconContainer:{width:36,height:36,borderRadius:8,backgroundColor:"rgba(16, 185, 129, 0.1)",justifyContent:"center",alignItems:"center",marginRight:12},textContainer:{flex:1},title:{color:U.text,fontSize:14,fontWeight:"600",marginBottom:2},subtitle:{color:U.textSecondary,fontSize:12},chevron:{color:Je.text.icon,fontSize:20},detailContainer:{flex:1,backgroundColor:U.card},loadingText:{color:U.textSecondary,fontSize:14,textAlign:"center",marginTop:20},header:{padding:16,borderBottomWidth:1,borderBottomColor:"rgba(128, 128, 128, 0.2)"},headerTitle:{color:U.text,fontSize:16,fontWeight:"600",marginBottom:4},headerDescription:{color:U.textSecondary,fontSize:12},settingsList:{padding:16},settingItem:{flexDirection:"row",alignItems:"center",paddingVertical:12,borderBottomWidth:1,borderBottomColor:"rgba(128, 128, 128, 0.1)"},settingIconContainer:{width:32,height:32,justifyContent:"center",alignItems:"center",marginRight:12},settingContent:{flex:1,marginRight:12},settingLabel:{color:U.text,fontSize:14,fontWeight:"500",marginBottom:2},settingDescription:{color:Je.text.icon,fontSize:11},indicator:{width:8,height:8,borderRadius:4},footer:{padding:16,borderTopWidth:1,borderTopColor:"rgba(128, 128, 128, 0.2)"},noteContainer:{flexDirection:"row",alignItems:"center",gap:8,marginBottom:8},noteText:{color:U.textSecondary,fontSize:12,flex:1},restartNote:{color:Je.text.icon,fontSize:11,fontStyle:"italic"},sectionDivider:{paddingHorizontal:16,paddingVertical:8,marginTop:8,borderTopWidth:1,borderTopColor:"rgba(128, 128, 128, 0.12)"},sectionTitle:{color:U.textSecondary,fontSize:12,fontWeight:"600",letterSpacing:.5,textTransform:"uppercase"}});function Va(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Sp(e,t,a={}){let s=a.storage??N,r=a.parse??(l=>JSON.parse(l)),n=a.serialize??(l=>JSON.stringify(l));function o(l){let h=Va(t)&&Va(l)?{...t,...l}:l;return a.sanitize?a.sanitize(h,l):h}async function i(){try{let l=await s.getItem(e);return l==null||l===""?null:o(r(l))}catch{return null}}return{key:e,defaults:t,loadOrNull:i,async load(){return await i()??t},async save(l){try{await s.setItem(e,n(l))}catch{}},async clear(){try{await s.removeItem(e)}catch{}}}}import{useEffect as Cp,useId as Tp,useRef as Ya,useState as wp}from"react";import{createPortal as xp}from"react-dom";import{jsx as Ne,jsxs as kp}from"react/jsx-runtime";function qa(){let[e,t]=wp(false),a=Ya(null),s=Ya(null),r=Tp(),n=(o=true)=>{t(false),o&&a.current?.querySelector('[data-account-launcher] [role="button"]')?.focus({preventScroll:true})};return Cp(()=>{if(!e)return;s.current?.focus({preventScroll:true});let o=l=>{l.target instanceof Node&&!a.current?.contains(l.target)&&t(false)},i=l=>{l.key==="Escape"&&(l.preventDefault(),l.stopPropagation(),t(false),a.current?.querySelector('[data-account-launcher] [role="button"]')?.focus({preventScroll:true}))};return document.addEventListener("pointerdown",o),document.addEventListener("keydown",i),()=>{document.removeEventListener("pointerdown",o),document.removeEventListener("keydown",i)}},[e]),typeof document>"u"?null:xp(kp("div",{ref:a,"data-buoy-account":"",style:{position:"fixed",right:"max(16px, env(safe-area-inset-right))",bottom:"max(20px, env(safe-area-inset-bottom))",zIndex:99999,colorScheme:"dark",fontFamily:"system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif"},children:[Ne("style",{children:`
|
|
1
|
+
"use client";import{a as As,b as Ls,c as Rs,d as Ps,e as $s,f as Ms,g as Bs,h as Ds,i as Ns}from"./chunks/chunk-JYM7MCKQ.mjs";import{a as zs,b as Ws,c as js,d as Fs,e as Hs,f as Us,g as Vs,h as Gs}from"./chunks/chunk-T7RZZG4A.mjs";import{$ as Ys,A as Js,B as qs,C as Ks,D as Xs,E as Qs,F as Zs,G as er,J as tr,K as ar,L as sr,M as rr,N as nr,O as or,P as ir,Q as lr,R as cr,S as ur,Z as dr,_ as hr,a as fa,b as gr,c as pr,d as Le,e as fr,f as br,g as ba,h as mr,i as yr,j as Sr,k as vr,l as Cr,m as Ct,n as wr,o as Tr,p as xr,q as kr,r as Ir,s as _r,t as Or,u as Er,v as Ar,w as Lr,x as Rr,y as Pr,z as $r}from"./chunks/chunk-T6KN54NS.mjs";import"./chunks/chunk-LZ7FZZ7R.mjs";import{a as Mr,d as Br,f as wt}from"./chunks/chunk-53J2FMUD.mjs";import{$ as Dr,$a as Nr,$b as zr,A as ma,Aa as Wr,Ab as jr,Ac as Fr,B as Hr,Ba as Ur,Bb as Vr,C as Gr,Ca as Yr,Cb as Jr,D as qr,Da as Kr,Db as Xr,E as Qr,Ea as Zr,Eb as en,F as tn,Fa as an,Fb as sn,G as rn,Ga as nn,Gb as on,H as ln,Ha as cn,Hb as un,I as dn,Ia as hn,Ib as gn,J as pn,Ja as fn,Jb as bn,K as mn,Ka as yn,Kb as Sn,L as vn,La as Cn,Lb as wn,M as Tn,Ma as xn,Mb as kn,N as In,Na as _n,Nb as On,O as En,Oa as An,Ob as Ln,P as Rn,Pa as Pn,Pb as $n,Q as Mn,Qa as Bn,Qb as Dn,R as Nn,Ra as zn,Rb as Wn,S as jn,Sa as Fn,Sb as Hn,T as Un,Ta as Vn,Tb as Gn,U as Yn,Ua as Jn,Ub as qn,V as Kn,Va as Xn,Vb as Qn,W as Zn,Wa as eo,Wb as to,X as ao,Xa as so,Xb as ro,Y as no,Ya as oo,Yb as io,Z as lo,Za as co,Zb as uo,_ as ho,_a as go,_b as po,a as fo,aa as bo,ab as mo,ac as yo,b as So,ba as vo,bb as Co,bc as wo,c as To,ca as xo,cb as ko,cc as Io,d as _o,da as Oo,db as Eo,dc as Ao,e as Lo,ea as Ro,eb as Po,ec as $o,f as Mo,fa as Bo,fb as Do,fc as No,g as zo,ga as Wo,gb as jo,gc as Fo,h as Ho,ha as Uo,hb as Vo,hc as Go,i as ya,ia as Yo,ib as Jo,ic as qo,j as Ko,ja as Xo,jb as Qo,jc as Zo,k as ei,ka as ti,kb as ai,kc as si,l as ri,la as ni,lb as oi,lc as ii,m as li,ma as ci,mb as ui,mc as di,n as hi,na as gi,nb as pi,nc as fi,o as bi,oa as mi,ob as yi,oc as Si,p as vi,pa as Ci,pb as wi,pc as Ti,q as xi,qa as ki,qb as Ii,qc as _i,r as Oi,ra as Ei,rb as Ai,rc as Li,s as Ri,sa as Pi,sb as $i,sc as Tt,t as Mi,ta as Bi,tb as Di,tc as Ni,u as zi,ua as Wi,ub as ji,uc as Fi,v as Hi,va as Ui,vb as Vi,vc as Gi,w as oe,wa as Yi,wb as Sa,wc as Ji,x as G,xa as qi,xb as Ki,xc as va,y as ve,ya as Xi,yb as Qi,yc as Zi,z as Re,za as el,zb as tl,zc as al}from"./chunks/chunk-3S2CBY6A.mjs";import{a as sl}from"./chunks/chunk-OPTY6SMO.mjs";import{a as rl,b as nl,c as ol,d as il,e as ll,f as cl,g as ul,h as dl,i as hl,j as gl,k as pl,l as fl,m as bl,n as ml,o as yl,p as Sl}from"./chunks/chunk-XYUAUO57.mjs";import{a as u,b as Ca}from"./chunks/chunk-GF5C5DVX.mjs";import{a as vl,b as Cl}from"./chunks/chunk-T3WLUEET.mjs";import{a as wl,b as Tl,c as xl,d as kl,e as Il,f as _l,g as Ol,h as El,i as Al,j as Ll,k as Rl,l as Pl}from"./chunks/chunk-T2SPCEHP.mjs";import{$ as $l,$a as Ml,$b as Bl,$c as Dl,Aa as Nl,Ab as zl,Ac as Wl,B as jl,Ba as Fl,Bb as Hl,Bc as Ul,C as Vl,Ca as Gl,Cb as Yl,Cc as Jl,D as ql,Da as Kl,Db as Xl,Dc as Ql,Ea as Zl,Eb as ec,Ec as tc,F as ac,Fa as sc,Fb as rc,Fc as nc,Ga as oc,Gb as ic,Gc as lc,Ha as cc,Hb as uc,Hc as dc,I as hc,Ib as gc,Ic as xt,Ja as pc,Jb as fc,Jc as bc,K as mc,Ka as yc,Kb as Sc,Kc as vc,La as Cc,Lb as wc,Lc as Tc,Ma as xc,Mb as kc,Mc as Ic,Na as _c,Nb as Oc,Nc as Ec,O as Ac,Oa as Lc,Ob as Rc,Oc as Pc,P as $c,Pa as Mc,Pb as Bc,Pc as Dc,Q as Nc,Qa as zc,Qb as Wc,Qc as jc,R as Fc,Ra as Hc,Rb as Uc,Rc as Vc,S as Gc,Sa as Yc,Sb as Jc,Sc as qc,T as Kc,Ta as Xc,Tb as Qc,Tc as Zc,U as eu,Ua as tu,Ub as au,Uc as su,V as ru,Va as nu,Vb as ou,Vc as iu,W as lu,Wa as cu,Wb as wa,Wc as uu,X as du,Xa as hu,Xb as gu,Xc as pu,Y as fu,Ya as bu,Yb as mu,Yc as yu,Z as Su,Za as vu,Zb as Cu,Zc as wu,_ as Tu,_a as xu,_b as ku,_c as Iu,a as _u,aa as Ou,ab as Eu,ac as Au,ad as Lu,b as Ru,ba as Pu,bb as $u,bc as Ta,bd as Mu,c as Bu,ca as Du,cb as Nu,cc as zu,cd as Wu,d as ju,da as Fu,db as Hu,dc as Uu,dd as Vu,e as Gu,ea as Yu,eb as Ju,ec as qu,ed as Ku,f as Xu,fa as Qu,fb as Zu,fc as xa,fd as ed,g as td,ga as ad,gb as sd,gc as rd,gd as nd,h as od,ha as id,hb as ld,hc as cd,hd as ud,i as dd,ia as hd,ib as gd,ic as pd,id as fd,j as bd,ja as md,jb as yd,jc as Sd,jd as vd,k as Cd,ka as wd,kb as Td,kc as xd,kd,l as Id,la as _d,lb as Od,lc as Ed,ld as Ad,m as Ld,ma as Rd,mb as Pd,mc as $d,md as Md,n as Bd,na as Dd,nb as Nd,nc as zd,nd as Wd,o as jd,oa as Fd,ob as Hd,oc as Ud,od as Vd,p as Gd,pa as Yd,pb as Jd,pc as qd,pd as Kd,q as Xd,qa as Qd,qb as Zd,qc as eh,qd as th,r as ah,ra as sh,rb as rh,rc as nh,rd as oh,s as ih,sa as lh,sb as ch,sc as uh,sd as dh,t as hh,ta as gh,tb as ph,tc as fh,td as bh,u as mh,ua as yh,ub as Sh,uc as vh,ud as Ch,va as wh,vb as Th,vc as xh,wa as kh,wb as Ih,wc as _h,xa as Oh,xb as Eh,xc as Ah,ya as Lh,yb as Rh,yc as Ph,za as $h,zb as Mh,zc as Bh}from"./chunks/chunk-7YVWZ4ZK.mjs";import{a as Xe,d as C,e as Dh,f as U,g as Nh}from"./chunks/chunk-CE5U3CSQ.mjs";import{a as zh,b as Wh,c as jh,d as Fh,e as Hh}from"./chunks/chunk-46TKOKMV.mjs";import{a as be,b as Uh,c as Vh,d as N,e as Gh,f as Yh}from"./chunks/chunk-DEEKIG2L.mjs";import{H as Jh,J as Pe,a as x,b as M,d as Qe,g as qh,h as Kh,j as Xh,r as kt}from"./chunks/chunk-3UTMGIUG.mjs";import"./chunks/chunk-5NZOQR6Q.mjs";var Qh=class extends fa{constructor(e){super();this.events=[];this.arrayListeners=new Set;this.captureSuppressed=false;this.clearListeners=new Set;this.maxEvents=e.maxEvents??500,this.storeName=e.storeName,Promise.resolve().then(()=>{let t=()=>{oe().status==="locked"?(this.stopCapturing(),this.events=[],this.notifyArrayListeners()):this.getTotalSubscriberCount()>0&&!this.captureSuppressed&&!this.isCapturing()&&this.startCapturing()};Re(t),t()})}onSubscribe(){this.getTotalSubscriberCount()===1&&!this.captureSuppressed&&oe().status!=="locked"&&this.startCapturing(),Le(this.storeName)}onUnsubscribe(){this.getTotalSubscriberCount()===0&&this.stopCapturing(),Le(this.storeName)}getTotalSubscriberCount(){return this.listeners.size+this.arrayListeners.size}subscribeToEvents(e){let t=this.getTotalSubscriberCount()===0;return this.arrayListeners.add(e),t&&!this.captureSuppressed&&oe().status!=="locked"&&this.startCapturing(),Le(this.storeName),e(this.getEvents()),()=>{this.arrayListeners.delete(e),this.getTotalSubscriberCount()===0&&this.stopCapturing(),Le(this.storeName)}}onEvent(e){return this.subscribe(e)}addEvent(e){oe().status!=="locked"&&(this.events=[e,...this.events].slice(0,this.maxEvents),G()&&this.notify(e),this.notifyArrayListeners())}notifyArrayListeners(){let e=this.getEvents();this.arrayListeners.forEach(t=>{try{t(e)}catch{}})}getEvents(){return G()?this.events:[]}getEventCount(){return G()?this.events.length:0}clearEvents(){this.events=[],this.notifyArrayListeners(),this.clearListeners.forEach(e=>{try{e()}catch{}})}onClear(e){return this.clearListeners.add(e),()=>{this.clearListeners.delete(e)}}disableCapture(){this.captureSuppressed=true,this.isCapturing()&&this.stopCapturing()}replaceEvents(e){this.events=this.dedupeById(e).slice(0,this.maxEvents),this.notifyArrayListeners()}dedupeById(e){let t=new Set,a=[];for(let s of e){let r=s?.id;if(r==null){a.push(s);continue}t.has(r)||(t.add(r),a.push(s))}return a}setMaxEvents(e){this.maxEvents=e,this.events.length>e&&(this.events=this.events.slice(0,e),this.notifyArrayListeners())}getSubscriberCounts(){return{eventCallbacks:this.listeners.size,arrayListeners:this.arrayListeners.size,total:this.getTotalSubscriberCount()}}};import{useEffect as Zh,useMemo as eg,useState as tg}from"react";var ag=[{value:"buoy.gg/api/license",mode:"contains"},{value:"api.keygen.sh",mode:"contains"}];function ka(e,t){let a=e.toLowerCase(),s=t.value.toLowerCase();if(t.mode==="contains")return a.includes(s);try{let r=new URL(e);return s.startsWith("/")?r.pathname.toLowerCase()===s:s.startsWith("http://")||s.startsWith("https://")?`${r.origin}${r.pathname}`.toLowerCase()===s:r.host.toLowerCase()===s}catch{return a===s}}function sg(e,t){return!e||t.length===0?false:t.some(a=>ka(e,a))}var Ia=ag;function _a(e){if(!Array.isArray(e))return[];let t=[];for(let a of e)if(typeof a=="string"&&a.trim())t.push({value:a,mode:"contains"});else if(a&&typeof a=="object"&&typeof a.value=="string"){let s=a;t.push({value:s.value,mode:s.mode==="exact"?"exact":"contains"})}return t}function Oa(e){let t=[...e];for(let a of Ia)t.some(s=>s.value===a.value)||t.push({...a});return t}var rg=class{constructor(){this.patterns=Oa(Ia.map(e=>({...e})));this.teamPatterns=[];this.merged=this.patterns;this.listeners=new Set;this.loaded=false;this.loadPromise=null;this.dirty=false}getPatterns(){return this.merged}isTeamOnly(e){return!this.patterns.some(t=>t.value===e)&&this.teamPatterns.some(t=>t.value===e)}setTeamPatterns(e){this.teamPatterns=_a(e),this.remerge(),this.emit()}reload(){return this.loaded=false,this.loadPromise=null,this.dirty=false,this.ensureLoaded()}remerge(){let e=this.teamPatterns.filter(t=>!this.patterns.some(a=>a.value===t.value));this.merged=e.length>0?[...this.patterns,...e]:this.patterns}subscribe(e){return this.listeners.add(e),this.ensureLoaded(),()=>{this.listeners.delete(e)}}emit(){this.listeners.forEach(e=>e())}ensureLoaded(){return this.loaded?Promise.resolve():this.loadPromise?this.loadPromise:(this.loadPromise=(async()=>{try{let e=await N.getItem(be.network.ignoredDomains());if(e&&!this.dirty){let t=Oa(_a(JSON.parse(e)));this.patterns=t,this.remerge()}}catch{}finally{this.loaded=true,this.emit()}})(),this.loadPromise)}persist(){N.setItem(be.network.ignoredDomains(),JSON.stringify(this.patterns)).catch(()=>{})}commit(e){this.dirty=true,this.patterns=e,this.remerge(),this.emit(),this.persist()}add(e){let t=e.value.trim();t&&(this.patterns.some(a=>a.value===t)||this.commit([...this.patterns,{value:t,mode:e.mode}]))}remove(e){this.patterns.some(t=>t.value===e)&&this.commit(this.patterns.filter(t=>t.value!==e))}toggle(e){let t=e.trim();t&&this.commit(this.patterns.some(a=>a.value===t)?this.patterns.filter(a=>a.value!==t):[...this.patterns,{value:t,mode:"contains"}])}toggleMode(e){this.patterns.some(t=>t.value===e)&&this.commit(this.patterns.map(t=>t.value===e?{...t,mode:t.mode==="contains"?"exact":"contains"}:t))}},q=new rg,ng=e=>q.add(e),og=e=>q.remove(e),ig=e=>q.toggle(e),lg=e=>q.toggleMode(e),cg=e=>q.isTeamOnly(e);function ug(){let[e,t]=tg(()=>q.getPatterns());Zh(()=>q.subscribe(()=>{t(q.getPatterns())}),[]);let a=eg(()=>new Set(e.map(s=>s.value)),[e]);return{patterns:e,values:a,add:ng,remove:og,toggle:ig,toggleMode:lg,isTeamOnly:cg}}import{useSyncExternalStore as dg}from"react";var Ze={},It=new Map,_t=new Set,$e=[];function hg(e){if(!e)return $e;try{let t=JSON.parse(e);if(!Array.isArray(t))return $e;let a=t.map(s=>typeof s=="string"?s:s&&typeof s.value=="string"?s.value:"").map(s=>s.trim()).filter(Boolean);return a.length?[...new Set(a)]:$e}catch{return $e}}var et={set(e){Object.keys({...Ze,...e}).some(t=>Ze[t]!==e[t])&&(Ze=e,It.clear(),_t.forEach(t=>t()))},getList(e){let t=It.get(e);return t||(t=hg(Ze[e]),It.set(e,t)),t},subscribe(e){return _t.add(e),()=>_t.delete(e)}};function gg(e){return dg(et.subscribe,()=>et.getList(e),()=>$e)}function pg(e){typeof requestAnimationFrame=="function"?requestAnimationFrame(()=>e()):setTimeout(e,0)}function fg(e){let t=e.id,a=e.order??"append",s=e.coalesce??"sync",r=e.flushMinIntervalMs??150,n=e.max,o=[],i=false,l=e.firstId??1,h=0,b=false,S=[],f=false;function m(){f||(f=true,Re(()=>{oe().status==="locked"&&(o=[]),ne()}))}let w=new Set,R=new Set;function V(){for(let y of w)try{y()}catch{}}function ne(){if(s==="sync"){V();return}b||(b=true,pg(()=>{b=false,V()}))}function D(y){return y.length<=n?y:a==="append"?y.slice(y.length-n):y.slice(0,n)}return{id:t,subscribe(y){return m(),w.add(y),()=>{w.delete(y)}},getSnapshot(){return m(),G()?o:S},size(){return G()?o.length:0},add(y){m(),!(i||oe().status==="locked")&&(a==="append"?o=o.length>=n?[...o.slice(o.length-n+1),y]:[...o,y]:o=o.length>=n?[y,...o.slice(0,n-1)]:[y,...o],ne())},set(y){m(),G()&&(o=D(y),ne())},update(y){m(),oe().status!=="locked"&&(o=D(y(o)),ne())},clear(){for(let y of R)try{y()}catch{}o.length!==0&&(o=[],ne())},onClear(y){return R.add(y),()=>{R.delete(y)}},notify(){ne()},flushSync(y=false){let Z=Date.now();if(!(!y&&Z-h<r)){h=Z;try{let L=globalThis.__buoyFlushToolSync;if(!L)return;for(let He of L)He(t)}catch{}}},setPaused(y){i=y},isPaused(){return i},setMax(y){n=y;let Z=D(o);Z!==o&&(o=Z,ne())},getMax(){return n},allocId(){return l++},bumpIdAbove(y){y+1>l&&(l=y+1)},listenerCount(){return w.size}}}var bg=class{constructor(e={}){this.items=[];this.itemListeners=new Set;this.clearListeners=new Set;this.idCounter=0;this.enabled=true;this.captureSuppressed=false;this.max=e.max??200}canRecord(){return this.enabled&&!this.captureSuppressed}nextId(){return`${Date.now()}-${++this.idCounter}`}push(e){this.items=[e,...this.items].slice(0,this.max)}record(e){this.push(e),this.notifyListeners()}setItems(e){this.items=e.slice(0,this.max),this.notifyListeners()}getAll(){return[...this.items]}getById(e){return this.items.find(t=>t.id===e)}get size(){return this.items.length}clear(){this.items=[],this.notifyListeners(),this.clearListeners.forEach(e=>{try{e()}catch{}})}onClear(e){return this.clearListeners.add(e),()=>{this.clearListeners.delete(e)}}disableCapture(){this.captureSuppressed=true}isCaptureSuppressed(){return this.captureSuppressed}replaceAll(e){return this.enabled?(this.setItems(e),true):false}hydrateById(e,t){let a=this.items.findIndex(s=>s.id===e);a!==-1&&(this.items=[...this.items.slice(0,a),{...this.items[a],...t},...this.items.slice(a+1)],this.notifyListeners())}setEnabled(e){this.enabled=e}getEnabled(){return this.enabled}setMax(e){this.max=e,this.items.length>e&&(this.items=this.items.slice(0,e),this.notifyListeners())}getMax(){return this.max}subscribe(e){return this.itemListeners.add(e),()=>{this.itemListeners.delete(e)}}notifyListeners(){let e=this.getAll();this.itemListeners.forEach(t=>t(e))}get listenerCount(){return this.itemListeners.size}};var me=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),mg=["id","lineId","key","uuid","_id","slug","name"];function Ot(e){if(!e.length||!e.every(me))return;let t=e[0];for(let a of mg){if(!(a in t))continue;let s=e.map(r=>r[a]);if(s.every(r=>typeof r=="string"||typeof r=="number")&&new Set(s.map(String)).size===s.length)return a}}function yg(e,t,a,s){let r=s[t];return typeof r=="string"||typeof r=="number"?String(r)!==a?{ok:false,error:`The new item is addressed as \`${a}\` but carries \`${t}\`: ${JSON.stringify(r)}. Use the same value for both \u2014 address it by the id it carries.`}:{ok:true,value:r}:e.every(n=>typeof n[t]=="number")&&a.trim()!==""&&String(Number(a))===a?{ok:true,value:Number(a)}:{ok:true,value:a}}function Et(e,t,a="",s=[]){if(Array.isArray(e)&&me(t)){let r=Ot(e);if(!r)return{patch:t,notes:s};let n=new Map(e.map(b=>[String(b[r]),b])),o=e.slice(),i=0,l=0,h=0;for(let[b,S]of Object.entries(t)){let f=o.findIndex(m=>String(m[r])===b);if(S===null){if(f===-1)return{patch:t,notes:s};o.splice(f,1),i++}else if(f===-1){if(!me(S))return{patch:t,notes:s};let m=yg(e,r,b,S);if(!m.ok)return{patch:t,notes:s,error:m.error};o.push({...S,[r]:m.value}),h++}else{let m=Et(n.get(b),S,`${a}[${b}]`,s);if(m.error)return{patch:t,notes:s,error:m.error};let w=o[f];o[f]=me(w)&&me(m.patch)?{...w,...m.patch}:m.patch,l++}}return s.push(`${a||"(root)"}: addressed by \`${r}\` \u2014 ${l} changed, ${h} added, ${i} removed, ${o.length} item(s) remain`),{patch:o,notes:s}}if(me(e)&&me(t)){let r={};for(let[n,o]of Object.entries(t)){let i=a?`${a}.${n}`:n;if(!(n in e)){r[n]=o;continue}let l=Et(e[n],o,i,s);if(l.error)return{patch:t,notes:s,error:l.error};r[n]=l.patch}return{patch:r,notes:s}}return{patch:t,notes:s}}var tt=e=>typeof e=="object"&&e!==null&&!Array.isArray(e);function Me(e,t=0){if(e===null)return"null";if(Array.isArray(e)){if(!e.length)return"unknown[]";if(t>=3)return"\u2026[]";let s=Me(e[0],t+1);return s.includes(" ")||s.endsWith("]")?`(${s})[]`:`${s}[]`}if(tt(e)){if(t>=3)return"{\u2026}";let s=Object.keys(e),r=s.slice(0,24),n=r.map(i=>`${i}: ${Me(e[i],t+1)}`).join(", "),o=s.length>r.length?`, +${s.length-r.length} more`:"";return`{${n}${o}}`}let a=typeof e;return a==="undefined"?"undefined":a==="function"?"function":a}function Ce(e,t="",a=[],s=0,r={visited:0}){if(s>3||a.length>=40||r.visited>=600)return a;if(Array.isArray(e)){let n=e[0];if(a.push({path:t||"(root)",length:e.length,...e.length?{item:Me(n)}:{}}),e.length&&tt(n))for(let[o,i]of Object.entries(n)){if(++r.visited>=600)break;Ce(i,t?`${t}[].${o}`:`[].${o}`,a,s+1,r)}return a}if(tt(e))for(let[n,o]of Object.entries(e)){if(++r.visited>=600)break;Ce(o,t?`${t}.${n}`:n,a,s+1,r)}return a}function Sg(e){let t={visited:0};return Ce(e,"",[],0,t).length>=40||t.visited>=600}function vg(e){return Ce(e).filter(t=>t.item===void 0).map(t=>t.path)}function Cg(e){if(e===void 0)return;let t=Ce(e),a=Me(e);if(!(!t.length&&!tt(e)&&!Array.isArray(e)))return t.length?{shape:a,lists:t}:{shape:a}}var Q=e=>typeof e=="object"&&e!==null&&!Array.isArray(e);function wg(e,t,a=2e3){let s=[{node:e,path:""}],r=0;for(;s.length&&r<a;){let{node:n,path:o}=s.shift();if(r++,Array.isArray(n))n.slice(0,20).forEach((i,l)=>s.push({node:i,path:`${o}[${l}]`}));else if(Q(n))for(let[i,l]of Object.entries(n)){let h=o?`${o}.${i}`:i;if(i===t)return h;(Q(l)||Array.isArray(l))&&s.push({node:l,path:h})}}}function Ea(e,t,a,s,r){let n=wg(e,r??a),o=s.slice(0,12).join(", ")||"(no fields)";return n?`No field "${a}" at "${t}" \u2014 did you mean path "${n}"? "${t}" has: ${o}.`:`No field "${a}" at "${t}". It has: ${o}.`}function Aa(e,t){let a=e;for(let s of t.split(".")){if(!Q(a))return;a=a[s]}return a}function At(e){if(!e.trim())return;let t=[],a=0;for(;a<e.length;){if(e[a]==="."){a++;continue}if(e[a]==="["){let n=e.indexOf("]",a);if(n===-1)return;let o=e.slice(a+1,n);if(/^\d+$/.test(o))t.push({kind:"index",index:Number(o)});else{let i=o.indexOf("=");if(i<=0)return;t.push({kind:"match",field:o.slice(0,i).trim(),value:o.slice(i+1).trim()})}a=n+1;continue}let s=a;for(;s<e.length&&e[s]!=="."&&e[s]!=="[";)s++;let r=e.slice(a,s);if(!r)return;t.push({kind:"key",key:r}),a=s}return t.length?t:void 0}function Tg(e,t){let a=At(t);if(!a)return{ok:false,error:`Could not read the path "${t}". Use dotted keys with optional [0] or [field=value], like "item.name" or "lines[lineId=seed-1].qty".`};let s=e,r=[];for(let n of a){if(s==null)return{ok:false,error:`"${r.join(".")||"(root)"}" is ${s===null?"null":"not set"}, so there is nothing at "${t}".`};if(n.kind==="key"){if(!Q(s))return{ok:false,error:`"${r.join(".")||"(root)"}" is not an object, so it has no field "${n.key}".`};if(!(n.key in s)){let o=a[a.length-1];return{ok:false,error:Ea(e,r.join(".")||"(root)",n.key,Object.keys(s),o?.kind==="key"?o.key:void 0)}}s=s[n.key],r.push(n.key)}else if(n.kind==="index"){if(!Array.isArray(s))return{ok:false,error:`"${r.join(".")||"(root)"}" is not a list, so [${n.index}] means nothing.`};s=s[n.index],r.push(`[${n.index}]`)}else{if(!Array.isArray(s))return{ok:false,error:`"${r.join(".")||"(root)"}" is not a list, so [${n.field}=${n.value}] means nothing.`};let o=s.find(i=>Q(i)&&String(Aa(i,n.field))===n.value);if(o===void 0)return{ok:false,error:`No item with ${n.field}="${n.value}" in "${r.join(".")||"(root)"}".`};s=o,r.push(`[${n.field}=${n.value}]`)}}return{ok:true,value:s}}function xg(e,t,a){let s=At(t);if(!s)return{ok:false,error:`Could not read the path "${t}". Use dotted keys with optional [0] or [field=value], like "item.name" or "lines[lineId=seed-1].qty".`};if(s[0]?.kind!=="key")return{ok:false,error:`A path must start with a field name, not a list index \u2014 "${t}" does not say which list.`};let r=(o,i)=>{if(i>=s.length)return{ok:true,patch:a};let l=s[i];if(l.kind==="key"){if(Q(o)&&!(l.key in o)&&i+1<s.length){let V=s[s.length-1];return{ok:false,error:Ea(e,Be(s,i),l.key,Object.keys(o),V?.kind==="key"?V.key:void 0)}}let w=Q(o)?o[l.key]:void 0,R=r(w,i+1);return R.ok?{ok:true,patch:{[l.key]:R.patch}}:R}if(!Array.isArray(o))return{ok:false,error:`"${Be(s,i)}" is not a list, so "${t}" cannot be resolved. Read it first \u2014 \`shape\` on the read says what each field holds.`};let h=l.kind==="index"?l.index:o.findIndex(w=>Q(w)&&String(Aa(w,l.field))===l.value),b=h>=0?o[h]:void 0;if(l.kind==="index"?h<0||h>=o.length:h<0)return{ok:false,error:l.kind==="index"?`"${Be(s,i)}" has ${o.length} item(s), so there is nothing at [${l.index}].`:`No item with ${l.field}="${l.value}" in "${Be(s,i)}".`};if(!Q(b)){if(i<s.length-1)return{ok:false,error:`"${Be(s,i)}[${l.kind==="index"?l.index:`${l.field}=${l.value}`}]" holds ${b===null?"null":typeof b}, not an object, so "${t}" cannot go any deeper. Set the item itself.`};let w=o.slice();return w[h]=a,{ok:true,patch:w}}let S=r(b,i+1);if(!S.ok)return S;let f=Ot(o);if(f)return{ok:true,patch:{[String(b[f])]:S.patch}};let m=o.slice();return m[h]=Q(S.patch)?{...b,...S.patch}:S.patch,{ok:true,patch:m}},n=r(e,0);return n.ok?{ok:true,patch:n.patch}:n}function Be(e,t){return e.slice(0,t).map(a=>a.kind==="key"?a.key:a.kind==="index"?`[${a.index}]`:`[${a.field}=${a.value}]`).join(".").replace(/\.\[/g,"[")||"(root)"}var ie=e=>!!e&&typeof e=="object"&&!Array.isArray(e);function De(e){return Array.isArray(e)?"array":e===null?"null":typeof e=="object"?"object":typeof e}var La=["string","number","boolean"];function Ra(e,t,a=2e3){let s=[{node:e,path:""}],r=0;for(;s.length&&r<a;){let{node:n,path:o}=s.shift();if(r++,Array.isArray(n))n.slice(0,20).forEach((i,l)=>s.push({node:i,path:`${o}[${l}]`}));else if(ie(n))for(let[i,l]of Object.entries(n)){let h=o?`${o}.${i}`:i;if(i===t&&o)return h;(ie(l)||Array.isArray(l))&&s.push({node:l,path:h})}}}function Lt(e,t,a={},s=e,r="",n=[]){let o=a.noun??"data",i=r||"(root)";if(Array.isArray(t)){if(!Array.isArray(e))return n.push({path:i,kind:"type-change",detail:`${De(e)} \u2192 array`}),n;let f=e.length?e[0]:void 0;return f!==void 0&&(ie(f)||Array.isArray(f))&&t.forEach((m,w)=>{let R=`${r}[${w}]`;if(ie(f)&&ie(m))for(let V of Object.keys(f))V in m||n.push({path:`${R}.${V}`,kind:"missing-key",detail:`list items need \`${V}\` \u2014 the items already in the list have it`});Lt(f,m,a,s,R,n)}),n}if(ie(t)){if(!ie(e))return n.push({path:i,kind:"type-change",detail:`${De(e)} \u2192 object`}),n;for(let[f,m]of Object.entries(t)){let w=r?`${r}.${f}`:f;if(f in e)Lt(e[f],m,a,s,w,n);else{let R=Ra(s,f);n.push({path:w,kind:"add-key",detail:R?`no such field here \u2014 did you mean \`${R}\`?`:`no field named \`${f}\` exists in this ${o}`,...R?{movedTo:R}:{}})}}return n}let l=De(e),h=De(t),b=l==="null"&&La.includes(h),S=h==="null"&&La.includes(l);return l!==h&&!b&&!S&&n.push({path:i,kind:"type-change",detail:`${l} \u2192 ${h}`}),n}function kg(e,t){if(!t.length||!t.every(s=>s.kind==="add-key"&&s.movedTo))return;let a={};for(let s of t){let r=Ig(e,s.path);if(r===void 0||s.movedTo.includes("["))return;let n=a,o=s.movedTo.split(".");o.slice(0,-1).forEach(i=>{n[i]??(n[i]={}),n=n[i]}),n[o[o.length-1]]=r}return a}function Ig(e,t){let a=e;for(let s of t.split(".")){if(!ie(a))return;a=a[s]}return a}function _g(e,t,a){let s=e.slice(0,6).map(n=>`\`${n.path}\`: ${n.detail}`).join("; "),r=e.length>6?`; +${e.length-6} more`:"";return`Refused: this isn't a same-type edit of existing fields (the rule the React Query devtools enforces). ${s}${r}. You can only change the VALUE of a field that already exists, to the same type \u2014 you can't add fields, change a field's type, or null a list/object the screen renders. Clearing a scalar to null is fine. Send just the field(s) you're changing, nested to match the current shape of this ${t}. Use force:true only to deliberately break that.`+(a?` This is the same edit at the right depth \u2014 send it as the patch: ${JSON.stringify(a)}`:"")}function at(e,t){let a=0,s=false,r=false,n=[e],o=new Set;for(;n.length>0;){if(a>t)return{bytes:a,sawRepeat:s,sawBigInt:r};let i=n.pop();if(i==null)a+=4;else if(typeof i=="string")a+=i.length+2;else if(typeof i=="number")a+=8;else if(typeof i=="boolean")a+=5;else if(typeof i=="object"){if(o.has(i)){s=true;continue}if(o.add(i),Array.isArray(i)){a+=2+i.length;for(let l=0;l<i.length;l++)n.push(i[l])}else{a+=2;for(let l in i)a+=l.length+4,n.push(i[l])}}else typeof i=="bigint"&&(r=true),a+=4}return{bytes:a,sawRepeat:s,sawBigInt:r}}function Rt(e,t){let a=at(e,t);return a.bytes>t?true:!a.sawRepeat&&!a.sawBigInt?false:!ba(e)}var Pa=16*1024,st=8*1024*1024;function Og(e,t){return Object.freeze({[`__buoy${e}OnDevice`]:true,note:t})}function Eg(e,t){return typeof e=="object"&&e!==null&&e[`__buoy${t}OnDevice`]===true}function $a(e=st){return{__buoyTruncated:true,note:`Exceeds the ${e/1048576}MB detail limit \u2014 inspect it on-device.`}}function Ag(e,t,a=Pa){return e===void 0?e:Rt(e,a)?t:e}function Ma(e,t=st){return Rt(e,t)?$a(t):e}function Lg(e){let t=new WeakMap;return a=>{let s=t.get(a);if(s!==void 0)return s;let r=e(a);return t.set(a,r),r}}function Rg(e,t){let a=[],s=t.baseBytes??16;for(let r=e.length-1;r>=0;r--){let n=t.toWire(e[r]);if(s+n.bytes>t.budget&&a.length>0)break;a.push(n.value),s+=n.bytes}return a.reverse(),a}function Pg(e,t,a){let s=at(e,t);if(s.bytes<=t)return{value:e,bytes:s.bytes};let r=a();return{value:r,bytes:at(r,t).bytes}}function Ba(e){return e??{}}function $g(e,t,a=st){let s=r=>Ma(r,a);return r=>{let{id:n}=Ba(r);if(!n)return{found:false,reason:"missing id"};let o=e(n);return o?{found:true,id:n,...t(o,s)}:{found:false,reason:"unknown id"}}}function Da(e){return e.length===1?e[0]:t=>{let a=e.map(s=>s(t));return()=>{for(let s of a)s()}}}function Mg(e){let t=Array.isArray(e.subscribe)?Da(e.subscribe):e.subscribe;return{version:e.version,getSnapshot:e.getSnapshot,subscribe:t,...e.actions?{actions:e.actions}:{}}}var rt=new Set(["@react_buoy_settings_theme","@react_buoy_settings_preferences","@react_buoy_settings_global","@react_buoy_dev_tools_settings","@react_buoy_settings_tooltip_shown","@react_buoy_modal_hint_acknowledged","@react_buoy_clipboard_hint_acknowledged","@react_buoy_network_filters","@react_buoy_network_preferences","@react_buoy_network_copy_options","@react_buoy_storage_filters","@react_buoy_storage_event_filters","@react_buoy_storage_key_filters","@react_buoy_storage_pinned_keys","@react_buoy_storage_preferences","@react_buoy_storage_diff_viewer_mode","@react_buoy_rq_filters","@react_buoy_rq_preferences","@react_buoy_route_events_event_filters","@react_buoy_route_events_detail_view","@react_buoy_route_events_diff_viewer_mode","@react_buoy_sentry_filters","@react_buoy_sentry_preferences","@react_buoy_highlight_updates_filters","@react_buoy_highlight_updates_settings","@react_buoy_highlight_updates_copy_settings","@react_buoy_events_enabled_sources","@react_buoy_events_copy_settings","@react_buoy_time_machine_diff_viewer_mode","@react_buoy_network_ignored_domains","@react_buoy_network_ignored_urls","@react_buoy_rq_ignored_patterns","@react_buoy_rq_included_patterns"]),Na=new Set(["@react_buoy_network_ignored_domains","@react_buoy_network_ignored_urls","@react_buoy_rq_ignored_patterns","@react_buoy_rq_included_patterns"]),za="@react_buoy_settings_sync_meta",Wa="@react_buoy_network_ignored_domains",ja=2e3,le=3e4,Pt=15*6e4,Bg=15e3,$t=new Set;function Dg(e){return $t.add(e),()=>$t.delete(e)}function Ng(e){e.includes(Wa)&&q.reload(),$t.forEach(t=>{try{t(e)}catch{}})}function zg(){return{storage:N,credential:qr,fetch:(e,t)=>fetch(e,t),subscribeWrites:Vh,setTimer:(e,t)=>setTimeout(e,t),clearTimer:e=>clearTimeout(e),onTeam:e=>{q.setTeamPatterns(Wg(e[Wa])),et.set(e)},onApplied:Ng}}function Wg(e){if(!e)return[];try{return JSON.parse(e)}catch{return[]}}var Fa=class{constructor(e={}){this.started=false;this.pending=new Map;this.applying=new Set;this.pushTimer=null;this.pullTimer=null;this.unsubscribe=null;this.refusedToken=null;this.deps={...zg(),...e}}start(){this.started||(this.started=true,this.unsubscribe=this.deps.subscribeWrites((e,t)=>this.onWrite(e,t)),this.pull())}stop(){this.started=false,this.unsubscribe?.(),this.unsubscribe=null,this.pushTimer!==null&&this.deps.clearTimer(this.pushTimer),this.pullTimer!==null&&this.deps.clearTimer(this.pullTimer),this.pushTimer=this.pullTimer=null}credential(){let e=this.deps.credential();return e&&e.token!==this.refusedToken?e:null}call(e,t,a){return new Promise((s,r)=>{let n=this.deps.setTimer(()=>r(new Error("timeout")),Bg);this.deps.fetch(`${t.origin.replace(/\/$/,"")}${e}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({access_token:t.token,...a})}).then(o=>{this.deps.clearTimer(n),s(o)},o=>{this.deps.clearTimer(n),r(o)})})}schedulePull(e){this.started&&(this.pullTimer!==null&&this.deps.clearTimer(this.pullTimer),this.pullTimer=this.deps.setTimer(()=>{this.pullTimer=null,this.pull()},e))}async readMeta(){try{let e=await this.deps.storage.getItem(za),t=e?JSON.parse(e):{};return t&&typeof t=="object"?t:{}}catch{return{}}}async writeMeta(e){await this.deps.storage.setItem(za,JSON.stringify(e)).catch(()=>{})}async pull(){let e=this.credential();if(!e)return this.schedulePull(le);let t,a;try{let i=await this.call("/api/settings/pull",e,{});t=i.status,a=await i.json().catch(()=>null)}catch{return this.schedulePull(le)}if(t===401||t===403)return this.refusedToken=e.token,this.schedulePull(le);if(t===404)return this.schedulePull(Pt);if(t!==200||!a)return this.schedulePull(le);let s=a.personal??{},r=await this.readMeta(),n=[];for(let[i,l]of Object.entries(s))if(!(!rt.has(i)||this.pending.has(i))&&!(typeof l?.value!="string"||!(l.updatedAt>(r[i]??0)))){this.applying.add(i);try{await this.deps.storage.setItem(i,l.value)}finally{this.applying.delete(i)}r[i]=l.updatedAt,n.push(i)}for(let i of rt){if(i in s||i in r||this.pending.has(i))continue;let l=await this.deps.storage.getItem(i).catch(()=>null);l!==null&&this.pending.set(i,l)}await this.writeMeta(r),n.length>0&&this.deps.onApplied(n);let o={};for(let[i,l]of Object.entries(a.team??{}))Na.has(i)&&typeof l?.value=="string"&&(o[i]=l.value);this.deps.onTeam(o),this.pending.size>0&&this.schedulePush(0),this.schedulePull(Pt)}onWrite(e,t){!this.started||this.applying.has(e)||!rt.has(e)||(this.pending.set(e,t),this.schedulePush(ja))}schedulePush(e){this.pushTimer!==null&&this.deps.clearTimer(this.pushTimer),this.pushTimer=this.deps.setTimer(()=>{this.pushTimer=null,this.push()},e)}async push(){if(this.pending.size===0)return;let e=this.credential();if(!e)return this.schedulePush(le);let t=new Map(this.pending),a,s;try{let n=await this.call("/api/settings/push",e,{changes:Object.fromEntries(t)});a=n.status,s=await n.json().catch(()=>null)}catch{return this.schedulePush(le)}if(a===401||a===403)return this.refusedToken=e.token,this.schedulePush(le);if(a===404)return this.schedulePush(Pt);if(a!==200||!s||typeof s.updatedAt!="number")return this.schedulePush(le);let r=await this.readMeta();for(let[n,o]of t)this.pending.get(n)===o&&this.pending.delete(n),r[n]=s.updatedAt;await this.writeMeta(r),this.pending.size>0&&this.schedulePush(ja)}},Ne=null;function jg(e={}){Ne??(Ne=new Fa(e)),Ne.start()}function Fg(){Ne&&Ne.pull()}function Hg(e){return e}function Ug(e,t,a){return s=>{let r=s??{},n=e.props===void 0&&!t?void 0:{...e.props??{},...t?t(r):{}};return{...e,id:r.id||e.id,name:r.name||e.name,description:r.description||e.description,...n!==void 0?{props:n}:{},...a?a(r,e):{}}}}var Mt="__buoyToolActionRegistry";function Bt(){let e=globalThis;return e[Mt]||(e[Mt]=new Set),e[Mt]}function Vg(e){let t=Bt();t.add(e);let a=false,s=()=>{if(a)return;a=true;let n=e(),o=async(i,l,h)=>{if(!(i==="network"&&l==="deleteOverrideRule"||i==="impersonate"&&l==="stopImpersonation"))throw new Error("Unsupported account-lock cleanup operation");if(i==="impersonate")return n[i]?.dispose?.(o);let b=n[i]?.actions?.[l];if(!b)throw new Error(`Cleanup unavailable for ${i}`);return b(h)};for(let i of Object.values(n))try{Promise.resolve(i.dispose?.(o)).catch(l=>console.warn("[Buoy] Tool cleanup failed",l))}catch(l){console.warn("[Buoy] Tool cleanup failed",l)}},r=Re(()=>{G()?a=false:s()});return()=>{r(),t.delete(e),Promise.resolve().then(()=>{t.size===0&&s()})}}function we(){if(!G())return{};let e={};for(let t of Bt())try{Object.assign(e,t())}catch{}return Object.fromEntries(Object.entries(e).map(([t,a])=>[t,Ha(a)]))}function Gg(){return Object.keys(we())}function Yg(){let e={};for(let[t,a]of Object.entries(we()))e[t]=Object.keys(a.actions??{});return e}function Jg(){return Object.entries(we()).filter(([,e])=>typeof e.getSnapshot=="function").map(([e])=>e)}async function qg(e){ve();let t=we()[e];if(!t)throw new Error(`Unknown tool "${e}"`);if(typeof t.getSnapshot!="function")throw new Error(`Tool "${e}" has no snapshot to read`);return await t.getSnapshot()}function Dt(){return G()&&Bt().size>0}async function Kg(e,t,a){ve();let s=we()[e],r=s?.actions?.[t];if(!r)throw new Error(s?`Unknown action "${t}" on tool "${e}"`:`Unknown tool "${e}"`);return await r(a)}async function Xg(e=2e3){if(Dt())return true;let t=Ct()+e;for(;Ct()<t;)if(await new Promise(a=>setTimeout(a,50)),Dt())return true;return false}function Ha(e){let t=a=>(...s)=>{ve();let r=false,n=Re(()=>{G()||(r=true)}),o=()=>{if(r)throw new Error("Buoy account access ended while the operation was pending.");ve()};try{let i=a.apply(e,s);return i&&typeof i.then=="function"?Promise.resolve(i).then(l=>(o(),l)).finally(n):(o(),n(),i)}catch(i){throw n(),i}};return{...e,...e.getSnapshot?{getSnapshot:t(e.getSnapshot)}:{},...e.actions?{actions:Object.fromEntries(Object.entries(e.actions).map(([a,s])=>[a,t(s)]))}:{},...e.subscribe?{subscribe:a=>(ve(),e.subscribe(()=>{G()&&a()}))}:{}}}var Nt="__buoyToolUiBridge";function zt(){let e=globalThis;return e[Nt]||(e[Nt]=new Set),e[Nt]}function Qg(e){let t=zt();return t.add(e),()=>{t.delete(e)}}function Zg(e){for(let t of zt())try{if(t(e))return true}catch{}return false}function ep(){return zt().size>0}var Wt="__buoyToolAttention";function jt(){let e=globalThis;return e[Wt]||(e[Wt]={byTool:new Map,listeners:new Set}),e[Wt]}function tp(e,t){let a=jt(),s=a.byTool.get(e)??null;if(!(s===t||s&&t&&s.kind===t.kind&&s.label===t.label)){t?a.byTool.set(e,t):a.byTool.delete(e);for(let r of a.listeners)try{r()}catch{}}}function ap(e){return jt().byTool.get(e)??null}function sp(e){let t=jt();return t.listeners.add(e),()=>{t.listeners.delete(e)}}import{createContext as rp,useContext as np,useEffect as op}from"react";var Ua=rp(null);function ip(e,t){let a=np(Ua);return op(()=>{if(a)return a(e),()=>a(null)},[a,...t]),a!==null}var Va=256*1024;function lp(e){let t=new Set(e?.excludeKeys??[]),a=e?.includeKeys?new Set(e.includeKeys):null,s=0,r=n=>!t.has(n)&&(!a||a.has(n));return{touch:r,allows(n){return r(n)?true:(s+=1,false)},countExcluded(n){s+=n},get excludedHits(){return s},excludedWarning(n){return s>0?`${s} ${n} excluded by you`:null}}}function cp(){return{ok:true,applied:0,skipped:[],warnings:[]}}function up(e){return{ok:false,applied:0,skipped:[],warnings:[e]}}function dp(e,t){return{ok:false,applied:0,skipped:[{id:e,reason:t}],warnings:[]}}function hp(e,t={}){let{key:a,label:s,oldValue:r,newValue:n,inOld:o,inNew:i}=e;if(!i)return{key:a,label:s,verdict:"removed",oldValue:r};if(!o)return{key:a,label:s,verdict:"added",newValue:n};if((t.equal??Mr)(r,n))return{key:a,label:s,verdict:"unchanged"};let l=t.tooLarge??(h=>Br(h,Va));return l(r)||l(n)?{key:a,label:s,verdict:"too-large",reason:t.tooLargeReason??"value too large to render a diff \u2014 restore still applies it"}:{key:a,label:s,verdict:"changed",oldValue:r,newValue:n}}function gp(e,t){return e.verdict==="unchanged"?e:{...e,verdict:"wont-apply",reason:t}}function pp(e,t){let a=s=>s===void 0?[]:s instanceof Map?Array.from(s.keys()):Object.keys(s);return new Set([...a(e),...a(t)])}function fp(e,t={}){let a=e.toLowerCase();if(t[a])return t[a];for(let[m,w]of Object.entries(t))if(a.includes(m))return w;let s=e.split("").reduce((m,w)=>m+w.charCodeAt(0),0)*137%360,r=.7,n=.6,o=(1-Math.abs(2*n-1))*r,i=o*(1-Math.abs(s/60%2-1)),l=n-o/2,h=0,b=0,S=0;s<60?(h=o,b=i):s<120?(h=i,b=o):s<180?(b=o,S=i):s<240?(b=i,S=o):s<300?(h=i,S=o):(h=o,S=i);let f=m=>Math.round((m+l)*255).toString(16).padStart(2,"0");return`#${f(h)}${f(b)}${f(S)}`}function bp(e,t={}){let a=t.maxLength??40;if(e===void 0)return t.undefinedLabel??"undefined";if(e===null)return"null";try{if(typeof e=="function")return t.functionLabel??"(fn)";if(typeof e=="string")return e.length>a?`"${e.slice(0,a-3)}..."`:`"${e}"`;if(typeof e=="number"||typeof e=="boolean")return String(e);if(Array.isArray(e)){if(e.length===0)return"[]";let s=JSON.stringify(e);return s.length>a?`[${e.length} items]`:s}if(typeof e=="object"){let s=Object.keys(e);if(s.length===0)return"{}";let r=JSON.stringify(e);return r.length<=a?r:`{ ${s.length} keys }`}return String(e).slice(0,a)}catch{return"[complex]"}}function mp(e,t){if(e===t)return{summary:"no change",changedKeys:[],changedCount:0};if(typeof e!="object"||typeof t!="object"||e===null||t===null)return{summary:"changed",changedKeys:[],changedCount:0};let a=e,s=t,r=Object.keys(a),n=Object.keys(s),o=n.filter(f=>!r.includes(f)),i=r.filter(f=>!n.includes(f)),l=[];for(let f of r)n.includes(f)&&a[f]!==s[f]&&l.push(f);let h=[...o,...i,...l],b=[];if(o.length>0&&b.push(`+${o.length}`),i.length>0&&b.push(`-${i.length}`),l.length>0&&b.push(`~${l.length}`),b.length===0)return{summary:"nested change",changedKeys:[],changedCount:0};let S=h.length;return{summary:`${b.join(" ")} ${S===1?"key":"keys"}`,changedKeys:h,changedCount:S}}function Ga(e){if(e==null)return"N/A";if(e===0)return"0 B";let t=1024,a=["B","KB","MB","GB","TB"],s=Math.floor(Math.log(e)/Math.log(t));return`${(e/Math.pow(t,s)).toFixed(1)} ${a[s]}`}function yp(e){if(e==null)return"N/A";if(e<1e3)return`${e}ms`;if(e<6e4)return`${(e/1e3).toFixed(1)}s`;if(e<36e5){let s=Math.floor(e/6e4),r=Math.floor(e%6e4/1e3);return r>0?`${s}m ${r}s`:`${s}m`}let t=Math.floor(e/36e5),a=Math.floor(e%36e5/6e4);return a>0?`${t}h ${a}m`:`${t}h`}function Sp(e){return e.toLocaleString()}var Ya=5e4;function vp(e,t=Ya){try{let a=JSON.stringify(e);return a.length>t?`[omitted: ${Ga(a.length)} \u2014 too large to copy]`:e}catch{return"[omitted: could not serialize]"}}function Cp(e,t=50,a=20,s=20){if(e.length<=t)return e;let r=e.slice(0,a),n=e.slice(-s);return`${r}...${n}`}function wp(e){if(e>=100&&e<200)return{text:String(e),color:C.info,meaning:"Informational"};if(e>=200&&e<300){let t={200:"OK",201:"Created",202:"Accepted",204:"No Content",206:"Partial Content"};return{text:String(e),color:C.success,meaning:t[e]||"Success"}}if(e>=300&&e<400){let t={301:"Moved Permanently",302:"Found",303:"See Other",304:"Not Modified",307:"Temporary Redirect",308:"Permanent Redirect"};return{text:String(e),color:C.warning,meaning:t[e]||"Redirect"}}if(e>=400&&e<500){let t={400:"Bad Request",401:"Unauthorized",402:"Payment Required",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",408:"Request Timeout",409:"Conflict",410:"Gone",422:"Unprocessable Entity",429:"Too Many Requests"};return{text:String(e),color:C.error,meaning:t[e]||"Client Error"}}if(e>=500){let t={500:"Internal Server Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout",505:"HTTP Version Not Supported"};return{text:String(e),color:C.error,meaning:t[e]||"Server Error"}}return{text:String(e),color:C.muted,meaning:"Unknown"}}function Tp(e){return{GET:C.success,POST:C.info,PUT:C.warning,DELETE:C.error,PATCH:C.network,HEAD:C.muted,OPTIONS:C.secondary,CONNECT:C.critical,TRACE:C.env}[e.toUpperCase()]||C.muted}function xp(e){try{let t=new URL(e);return{protocol:t.protocol.replace(":",""),host:t.hostname,port:t.port||void 0,pathname:t.pathname,search:t.search||void 0,hash:t.hash||void 0}}catch{return null}}var ze=[];function Ja(e){ze.unshift(e),ze=ze.slice(0,500)}function kp(){return ze}function Ip(){ze=[]}var Ft=(e=>(e.Debug="debug",e.Info="info",e.Log="log",e.Warn="warn",e.Error="error",e))(Ft||{}),Ht=(e=>(e.Auth="Auth",e.Custom="Custom",e.Debug="Debug",e.Error="Error",e.Generic="Generic",e.HTTPRequest="HTTP Request",e.Navigation="Navigation",e.Replay="Replay",e.State="State",e.System="System",e.Touch="Touch",e.UserAction="User Action",e))(Ht||{});var _p=()=>`${Date.now()}-${Math.random().toString(36).substr(2,9)}`,qa=class{constructor(){this.captureTransaction=e=>(this.logSentryEvent("transaction",e),e);this.captureSpan=e=>(this.logSentryEvent("span",e),e);this.captureEvent=e=>(this.logSentryEvent("event",e),e);this.captureLog=e=>(this.logSentryEvent("console",{message:e.message||"Log entry",level:e.level,category:"console",timestamp:e.timestamp,...e.attributes}),e);this.captureBreadcrumb=e=>{let t="unknown";try{let s=globalThis.getCurrentPathname;s&&(t=s())}catch{}let a=e.category;if(e.message?.toLowerCase().includes("ignore"))return null;if(e.message?.includes("Touch event within element:")&&(e.message=e.message.replace("Touch event within element:","")),a==="navigation"&&e.data?.from&&e.data?.to&&(e.message=`From ${e.data.from} To ${e.data.to}`),a==="touch"&&e.data?.path){e.message&&(e.message=e.message.trim());let s={...e.data,category:a,message:e.message,route:t,timestamp:new Date().toISOString(),path:e.message?[{label:e.message}]:e.data?.path};e.data=s}return this.logSentryEvent("breadcrumb",e),e}}logSentryEvent(e,t){let a="Generic",s=t.category;if(s)switch(s){case"touch":a="Touch";break;case"xhr":case"fetch":case"http":a="HTTP Request";break;case"navigation":a="Navigation";break;case"auth":a="Auth";break;case"console":a="System";break;case"debug":a="Debug";break;default:s.startsWith("ui.")?a="User Action":s.startsWith("replay.")?a="Replay":s.includes("redux")||s.includes("state")?a="State":a="Custom"}let r={id:_p(),timestamp:Date.now(),level:this.getSentryLevel(t),message:this.getSentryMessage(t),metadata:this.getSentryMetadata(t),type:a};Ja(r)}getSentryLevel(e){switch(e.level){case"fatal":case"error":return"error";case"warning":return"warn";case"info":return"info";case"debug":return"debug";default:return"log"}}getSentryMessage(e){let t=e.message;return typeof t=="string"?t:`${e.type||"Unknown"} Event`}getSentryMetadata(e){let{message:t,level:a,type:s,...r}=e;return r}},Op=new qa;import{useState as Ut,useEffect as Ka}from"react";import{jsx as E,jsxs as Te}from"react/jsx-runtime";var nt=be.bubble.settings(),Xa=be.bubble.userPreferences(),Vt={showEnvironment:true,showQueryButton:true,showWifiToggle:true,showEnvButton:false,showSentryButton:false,showStorageButton:false};function Ep({onPress:e}){let[t,a]=Ut(Vt);Ka(()=>{s()},[]);let s=async()=>{try{let r=await N.getItem(nt);r&&a(JSON.parse(r))}catch(r){console.error("Failed to load bubble settings:",r)}};return E(va,{id:"bubble-settings",title:"SETTINGS",subtitle:`${Object.values(t).filter(Boolean).length}/6 visible`,icon:xt,iconColor:"#10B981",iconBackgroundColor:"rgba(16, 185, 129, 0.1)",onPress:e||(()=>{}),index:5})}function Ap({onSettingsChange:e}){let[t,a]=Ut(Vt),[s,r]=Ut(true);Ka(()=>{n()},[]);let n=async()=>{try{let h=await N.getItem(nt);h&&a(JSON.parse(h))}catch(h){console.error("Failed to load bubble settings:",h)}finally{r(false)}},o=async h=>{try{await N.setItem(nt,JSON.stringify(h)),a(h),e?.(h)}catch(b){console.error("Failed to save bubble settings:",b)}},i=async h=>{let b={...t,[h]:!t[h]};try{let S=await N.getItem(Xa),f=S?JSON.parse(S):{},m=h.replace("show","hasSet"),w={...f,[m]:true};await N.setItem(Xa,JSON.stringify(w))}catch(S){console.error("Failed to save user preference marker:",S)}o(b)};if(s)return E(x,{style:I.detailContainer,children:E(M,{style:I.loadingText,children:"Loading settings..."})});let l=[{key:"showEnvironment",label:"Environment Indicator",description:"Shows current environment (dev, staging, prod)",icon:E(x,{style:[I.indicator,{backgroundColor:"#10B981"}]})},{key:"showQueryButton",label:"React Query Button",description:"Opens React Query dev tools",icon:E(x,{style:[I.indicator,{backgroundColor:"#F59E0B"}]})},{key:"showWifiToggle",label:"WiFi",description:"Toggle WiFi for testing offline scenarios",icon:E(x,{style:[I.indicator,{backgroundColor:"#8B5CF6"}]})},{key:"showEnvButton",label:"Environment Variables",description:"View and check environment variables",icon:E(xt,{size:16,color:"#10B981"})},{key:"showSentryButton",label:"Sentry Events",description:"View captured Sentry events and errors",icon:E(x,{style:[I.indicator,{backgroundColor:"#a855f7"}]})},{key:"showStorageButton",label:"Storage Browser",description:"Browse and inspect AsyncStorage data",icon:E(Ta,{size:16,color:"#3B82F6"})}];return E(x,{style:I.detailContainer,children:Te(Kh,{showsVerticalScrollIndicator:false,contentContainerStyle:I.scrollContent,"sentry-label":"ignore bubble settings scroll",children:[Te(x,{style:I.header,children:[E(M,{style:I.headerTitle,children:"Developer Tools Settings"}),E(M,{style:I.headerDescription,children:"Configure bubble button visibility"})]}),E(x,{style:I.sectionDivider,children:E(M,{style:I.sectionTitle,children:"Bubble Button Visibility"})}),E(x,{style:I.settingsList,children:l.map(h=>Te(x,{style:I.settingItem,children:[E(x,{style:I.settingIconContainer,children:h.icon}),Te(x,{style:I.settingContent,children:[E(M,{style:I.settingLabel,children:h.label}),E(M,{style:I.settingDescription,children:h.description})]}),E(Xh,{"sentry-label":"ignore bubble settings section",value:t[h.key],onValueChange:()=>i(h.key),trackColor:{false:"#4B5563",true:"#10B981"},thumbColor:t[h.key]?"#fff":U.textSecondary})]},h.key))}),Te(x,{style:I.footer,children:[Te(x,{style:I.noteContainer,children:[E(xa,{size:16,color:U.textSecondary}),E(M,{style:I.noteText,children:"User status indicator is always visible and cannot be disabled"})]}),E(M,{style:I.restartNote,children:"Changes are saved automatically and will persist across app restarts"})]})]})})}async function Lp(){try{let e=await N.getItem(nt);if(e)return JSON.parse(e)}catch(e){console.error("Failed to load bubble settings:",e)}return Vt}var I=Pe.create({scrollContent:{flexGrow:1},sectionCard:{backgroundColor:U.input,borderRadius:8,padding:16,flexDirection:"row",alignItems:"center",marginBottom:12},iconContainer:{width:36,height:36,borderRadius:8,backgroundColor:"rgba(16, 185, 129, 0.1)",justifyContent:"center",alignItems:"center",marginRight:12},textContainer:{flex:1},title:{color:U.text,fontSize:14,fontWeight:"600",marginBottom:2},subtitle:{color:U.textSecondary,fontSize:12},chevron:{color:Xe.text.icon,fontSize:20},detailContainer:{flex:1,backgroundColor:U.card},loadingText:{color:U.textSecondary,fontSize:14,textAlign:"center",marginTop:20},header:{padding:16,borderBottomWidth:1,borderBottomColor:"rgba(128, 128, 128, 0.2)"},headerTitle:{color:U.text,fontSize:16,fontWeight:"600",marginBottom:4},headerDescription:{color:U.textSecondary,fontSize:12},settingsList:{padding:16},settingItem:{flexDirection:"row",alignItems:"center",paddingVertical:12,borderBottomWidth:1,borderBottomColor:"rgba(128, 128, 128, 0.1)"},settingIconContainer:{width:32,height:32,justifyContent:"center",alignItems:"center",marginRight:12},settingContent:{flex:1,marginRight:12},settingLabel:{color:U.text,fontSize:14,fontWeight:"500",marginBottom:2},settingDescription:{color:Xe.text.icon,fontSize:11},indicator:{width:8,height:8,borderRadius:4},footer:{padding:16,borderTopWidth:1,borderTopColor:"rgba(128, 128, 128, 0.2)"},noteContainer:{flexDirection:"row",alignItems:"center",gap:8,marginBottom:8},noteText:{color:U.textSecondary,fontSize:12,flex:1},restartNote:{color:Xe.text.icon,fontSize:11,fontStyle:"italic"},sectionDivider:{paddingHorizontal:16,paddingVertical:8,marginTop:8,borderTopWidth:1,borderTopColor:"rgba(128, 128, 128, 0.12)"},sectionTitle:{color:U.textSecondary,fontSize:12,fontWeight:"600",letterSpacing:.5,textTransform:"uppercase"}});function Qa(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Rp(e,t,a={}){let s=a.storage??N,r=a.parse??(l=>JSON.parse(l)),n=a.serialize??(l=>JSON.stringify(l));function o(l){let h=Qa(t)&&Qa(l)?{...t,...l}:l;return a.sanitize?a.sanitize(h,l):h}async function i(){try{let l=await s.getItem(e);return l==null||l===""?null:o(r(l))}catch{return null}}return{key:e,defaults:t,loadOrNull:i,async load(){return await i()??t},async save(l){try{await s.setItem(e,n(l))}catch{}},async clear(){try{await s.removeItem(e)}catch{}}}}import{useEffect as Pp,useId as $p,useRef as Za,useState as Mp}from"react";import{createPortal as Bp}from"react-dom";import{jsx as We,jsxs as Dp}from"react/jsx-runtime";function es(){let[e,t]=Mp(false),a=Za(null),s=Za(null),r=$p(),n=(o=true)=>{t(false),o&&a.current?.querySelector('[data-account-launcher] [role="button"]')?.focus({preventScroll:true})};return Pp(()=>{if(!e)return;s.current?.focus({preventScroll:true});let o=l=>{l.target instanceof Node&&!a.current?.contains(l.target)&&t(false)},i=l=>{l.key==="Escape"&&(l.preventDefault(),l.stopPropagation(),t(false),a.current?.querySelector('[data-account-launcher] [role="button"]')?.focus({preventScroll:true}))};return document.addEventListener("pointerdown",o),document.addEventListener("keydown",i),()=>{document.removeEventListener("pointerdown",o),document.removeEventListener("keydown",i)}},[e]),typeof document>"u"?null:Bp(Dp("div",{ref:a,"data-buoy-account":"",style:{position:"fixed",right:"max(16px, env(safe-area-inset-right))",bottom:"max(20px, env(safe-area-inset-bottom))",zIndex:99999,colorScheme:"dark",fontFamily:"system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif"},children:[We("style",{children:`
|
|
2
2
|
[data-buoy-account] { font-size: 14px; line-height: 1.5; text-align: left; }
|
|
3
3
|
[data-buoy-account] [role="button"], [data-buoy-account] [role="link"] { cursor: pointer; }
|
|
4
4
|
[data-buoy-account] [role="button"]:focus-visible, [data-buoy-account] [role="link"]:focus-visible { outline: 2px solid ${u.color.accent}; outline-offset: 3px; }
|
|
@@ -11,4 +11,4 @@
|
|
|
11
11
|
box-shadow: 0 18px 60px rgba(0,0,0,.4), 0 4px 16px rgba(0,0,0,.2);
|
|
12
12
|
outline: none;
|
|
13
13
|
}
|
|
14
|
-
`}),Ne("div",{"data-account-launcher":"",children:Ne(Jr,{expanded:e,onPress:()=>t(o=>!o)})}),e&&Ne("section",{ref:s,className:"buoy-account-panel",role:"dialog","aria-labelledby":r,tabIndex:-1,onBlur:o=>{o.relatedTarget instanceof Node&&!a.current?.contains(o.relatedTarget)&&n(false)},children:Ne(Qr,{titleId:r,onClose:()=>n()})})]}),document.body)}import{useState as ae,useRef as z,useEffect as se,useLayoutEffect as Ip,useCallback as B,memo as Wt,isValidElement as _p,cloneElement as Ep}from"react";var at=class{static async save(e,t){this.cache.set(e,t);try{await N.setItem(e,JSON.stringify(t))}catch{}}static async load(e){if(this.cache.has(e))return this.cache.get(e);try{let t=await N.getItem(e);if(t){let a=JSON.parse(t);return this.cache.set(e,a),a}}catch{}return null}static saveMinimized(e,t){return this.save(e,{mode:t.mode,panelHeight:t.panelHeight,dimensions:t.floatingDimensions&&t.floatingPosition?{...t.floatingDimensions,top:t.floatingPosition.y,left:t.floatingPosition.x}:void 0,isVisible:false})}};at.cache=new Map;import{jsx as p,jsxs as H}from"react/jsx-runtime";var P={base:"#121212",card:"#1A1A1A",border:"#333333",textMuted:"#888888",primary:"#20C997"},$={primary:"#F5F5F7",primaryLight:"#F5F5F7",secondary:"#A1A1A6",muted:"#8E8E93",success:"#34C759",info:"#00B8E6"},Op=100,Ap=400,Ja=500,ze=80,st=()=>typeof window<"u"?window.innerWidth:0,ce=()=>typeof window<"u"?window.innerHeight:0,Ka=e=>1-Math.pow(1-e,3),We=e=>e<.5?2*e*e:1-Math.pow(-2*e+2,2)/2;function ye(e,t,a,s){let r=0,n=false,o=performance.now(),i=l=>{if(n)return;let h=Math.min((l-o)/e,1);a(t(h)),h<1?r=requestAnimationFrame(i):s?.()};return r=requestAnimationFrame(i),()=>{n=true,cancelAnimationFrame(r)}}function Rp(){if(typeof document>"u")return{top:0,left:0,right:0,bottom:0};let e=document.createElement("div");e.style.cssText="position:fixed;top:env(safe-area-inset-top);left:env(safe-area-inset-left);right:env(safe-area-inset-right);bottom:env(safe-area-inset-bottom);visibility:hidden;pointer-events:none",document.body.appendChild(e);let t=e.getBoundingClientRect();return document.body.removeChild(e),{top:Math.max(0,t.top),left:Math.max(0,t.left),right:Math.max(0,window.innerWidth-t.right),bottom:Math.max(0,window.innerHeight-t.bottom)}}function Ft(e,t){let a=Math.max(ze,window.innerWidth-t.left-t.right),s=Math.max(ze,window.innerHeight-t.top-t.bottom),r=Math.min(e.width,a),n=Math.min(e.height,s);return{width:r,height:n,left:Math.max(t.left,Math.min(e.left,window.innerWidth-t.right-r)),top:Math.max(t.top,Math.min(e.top,window.innerHeight-t.bottom-n))}}var Lp=({size:e=24,color:t="currentColor",strokeWidth:a=2})=>H("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[p("line",{x1:18,y1:6,x2:6,y2:18,stroke:t,strokeWidth:a,strokeLinecap:"round"}),p("line",{x1:6,y1:6,x2:18,y2:18,stroke:t,strokeWidth:a,strokeLinecap:"round"})]}),Pp=({size:e=24,color:t="currentColor",strokeWidth:a=2})=>p("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:p("line",{x1:5,y1:12,x2:19,y2:12,stroke:t,strokeWidth:a,strokeLinecap:"round"})}),$p=({size:e=24,color:t="currentColor",strokeWidth:a=2})=>H("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[p("rect",{x:3,y:3,width:18,height:18,rx:2,stroke:t,strokeWidth:a}),p("rect",{x:3,y:14,width:18,height:7,fill:t})]}),Mp=({size:e=24,color:t="currentColor",strokeWidth:a=2})=>H("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[p("rect",{x:3,y:3,width:14,height:14,rx:2,stroke:t,strokeWidth:a}),p("line",{x1:7,y1:17,x2:7,y2:21,stroke:t,strokeWidth:a}),p("line",{x1:7,y1:21,x2:21,y2:21,stroke:t,strokeWidth:a}),p("line",{x1:21,y1:21,x2:21,y2:7,stroke:t,strokeWidth:a}),p("line",{x1:17,y1:7,x2:21,y2:7,stroke:t,strokeWidth:a})]}),jt={close:"#FF5F57",minimize:"#FEBC2E",toggleMode:"#28C840"},Ht=24,Bp=2,Ut=8,Gt=e=>({width:Ht,height:Ht,borderRadius:Ht/2,display:"flex",alignItems:"center",justifyContent:"center",background:`radial-gradient(circle, ${e} 6px, transparent 6px)`,border:"none",padding:0,cursor:"pointer",flexShrink:0});function Dp({onClose:e,onMinimize:t,onToggleMode:a,mode:s}){let r=s==="floating"?$p:Mp,n=s==="floating"?"Dock to bottom sheet":"Make floating window";return H("div",{style:{display:"flex",flexDirection:"row",alignItems:"center",gap:Bp},children:[t&&p("button",{type:"button",onClick:t,style:Gt(jt.minimize),"aria-label":"Minimize modal",children:p(Pp,{size:Ut,color:"#7A5A00",strokeWidth:1.5})}),a&&p("button",{type:"button",onClick:a,style:Gt(jt.toggleMode),"aria-label":n,children:p(r,{size:Ut,color:"#004A1A",strokeWidth:1.5})}),p("button",{type:"button",onClick:e,style:Gt(jt.close),"aria-label":"Close modal",children:p(Lp,{size:Ut,color:"#4A0000",strokeWidth:1.5})})]})}var Xa=Wt(function({isResizing:e,mode:t,hasCustomContent:a=false,variant:s="default"}){let r=t==="floating",n=s==="night";return H("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",position:"relative",justifyContent:a?"center":void 0,minHeight:a?32:void 0,paddingTop:a?0:8,paddingBottom:a?0:8,backgroundColor:"transparent"},children:[p("div",{style:{width:n?36:e?40:r?50:40,height:n||r?5:3,backgroundColor:n?u.color.placeholder:e?P.primary:r?P.textMuted:P.primary,borderRadius:n?2.5:2,boxShadow:n?"none":`0 0 4px ${P.primary}99`}}),e&&t==="bottomSheet"&&p("div",{style:{position:"absolute",display:"flex",flexDirection:"row",gap:2,marginTop:12},children:[0,1,2].map(o=>p("div",{style:{width:12,height:1,backgroundColor:$.success,opacity:.6}},o))})]})}),Np=Wt(function({onAcknowledge:e}){return p("div",{style:{backgroundColor:`${$.info}15`,borderLeft:`3px solid ${$.info}`,borderRadius:8,margin:"8px 12px 4px",overflow:"hidden",boxShadow:`0 0 8px ${$.info}4D`,flexShrink:0},children:H("div",{style:{display:"flex",flexDirection:"row",alignItems:"center",padding:12,gap:12},children:[H("div",{style:{width:32,height:32,position:"relative",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:[p("div",{style:{position:"absolute",width:20,height:20,borderRadius:10,border:`2px solid ${$.info}`,opacity:.6,transform:"scale(0.8)",boxSizing:"border-box"}}),p("div",{style:{position:"absolute",width:20,height:20,borderRadius:10,border:`2px solid ${$.info}`,boxSizing:"border-box"}})]}),H("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:2},children:[p("span",{style:{fontSize:13,fontWeight:600,color:$.info,letterSpacing:.3},children:"\u{1F4A1} Pro Tip"}),p("span",{style:{fontSize:12,color:$.primaryLight,lineHeight:"16px"},children:"Double-tap the header to transform this into a floating modal"})]}),p("button",{type:"button",onClick:e,style:{backgroundColor:`${$.info}30`,padding:"6px 12px",borderRadius:6,border:`1px solid ${$.info}50`,fontSize:12,fontWeight:600,color:$.info,cursor:"pointer",fontFamily:"inherit",flexShrink:0},children:"Got it!"})]})})});function Qa({header:e,isResizing:t,mode:a,onMinimize:s,variant:r="default"}){if(e?.customContent){let n=e.customContent;return _p(e.customContent)&&s&&(n=Ep(e.customContent,{onMinimize:s})),H("div",{style:{flex:1,display:"flex",flexDirection:"column",justifyContent:"center",minWidth:0},children:[p(Xa,{isResizing:t,mode:a,hasCustomContent:true,variant:r}),n]})}return H("div",{style:{flex:1,display:"flex",flexDirection:"column",justifyContent:"center",position:"relative",minWidth:0},children:[p(Xa,{isResizing:t,mode:a,variant:r}),H("div",{style:{padding:"0 16px",display:"flex",flexDirection:"column",alignItems:"center"},children:[e?.title&&p("span",{style:{fontSize:16,fontWeight:600,color:$.primary},children:e.title}),e?.subtitle&&p("span",{style:{fontSize:12,color:$.secondary,paddingTop:4},children:e.subtitle})]}),p("div",{style:{position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center",pointerEvents:"none"},children:p("span",{style:{fontSize:10,color:$.muted,fontStyle:"italic"},children:"Double tap: Toggle \u2022 Triple tap: Close"})})]})}var zp=({visible:e,onClose:t,children:a,header:s,styles:r={},minHeight:n=Op,maxHeight:o,initialHeight:i=Ap,animatedHeight:l,benchMotion:h,initialMode:b="bottomSheet",onModeChange:v,persistenceKey:f,enablePersistence:m=true,initialFloatingPosition:T,footer:L,footerHeight:G=0,onBack:ne,onMinimize:D,minimizeRequest:y=0,minimizeTargetPosition:Z,initialModalState:R,zIndex:Fe,disableScrollWrapper:os=false,background:Jt=true,variant:it="night"})=>{let[Y]=ae(Rp),[Kt,Xt]=ae(!m),[A,lt]=ae(b),je=z(v);je.current=v;let[ke,ue]=ae(false),[ct,Ie]=ae(false),[is,ut]=ae(i),[ee,_e]=ae(()=>Ft({width:st(),height:Ja,top:T?.y??(ce()-Ja)/2,left:T?.x??0},Y)),[ls,He]=ae(false),[cs,Qt]=ae(false),us=ha(),de=z(i),q=z(ee),F=z({x:ee.left,y:ee.top}),Ue=z(null),dt=z(null),te=z(null),he=z([]),X=B(()=>{he.current.forEach(c=>c()),he.current=[]},[]);se(()=>{q.current=ee},[ee]),se(()=>X,[X]);let Zt=o||ce()-Y.top;se(()=>{if(!m||!f){Xt(true);return}let c=true;return(async()=>{let d=await at.load(f);if(c&&d&&(d.mode&&(lt(d.mode),je.current?.(d.mode)),d.panelHeight&&(ut(d.panelHeight),de.current=d.panelHeight),d.dimensions)){let S=Ft(d.dimensions,Y);_e(S),F.current={x:S.left,y:S.top}}c&&Xt(true)})(),()=>{c=false}},[f,m]),se(()=>{if(!m||!f||!Kt)return;let c=setTimeout(()=>{at.save(f,{mode:A,panelHeight:de.current,dimensions:ee,isVisible:e})},500);return()=>clearTimeout(c)},[A,is,ee,e,f,m,Kt]),se(()=>{let c=true;return(async()=>{try{let d=be.modal.hintAcknowledged(),S=await N.getItem(d);c&&(He(S!=="true"),Qt(true))}catch{c&&(He(true),Qt(true))}})(),()=>{c=false}},[]);let ds=B(async()=>{try{let c=be.modal.hintAcknowledged();await N.setItem(c,"true"),He(false)}catch{He(false)}},[]),ht=B(()=>{Ie(false),ue(false);let c=A==="bottomSheet"?"floating":"bottomSheet";lt(c),je.current?.(c)},[A]);se(()=>{Ie(false),ue(false)},[A]);let ge=B(()=>{if(!D)return;let c={mode:A,panelHeight:de.current,floatingPosition:{x:q.current.left,y:q.current.top},floatingDimensions:{width:q.current.width,height:q.current.height}};m&&f&&at.saveMinimized(f,c);let d=Z?.x??st()-50,S=Z?.y??ce()-150;if(X(),A==="bottomSheet"){let k=Ue.current;if(!k){D(c);return}let w=ce();he.current.push(ye(300,We,E=>{k.style.opacity=String(1-E),k.style.transform=`translateY(${E*w}px)`},()=>D(c)))}else{let k=te.current;if(!k){D(c);return}let w={...F.current};he.current.push(ye(300,We,E=>{k.style.opacity=String(1-E);let pe=w.x+(d-w.x)*E,fe=w.y+(S-w.y)*E;k.style.transform=`translate(${pe}px, ${fe}px)`},()=>D(c)))}},[A,D,Z,X,m,f]),ea=z(y);se(()=>{ea.current!==y&&(ea.current=y,ge())},[y,ge]),se(()=>{if(R&&(R.mode&&(lt(R.mode),je.current?.(R.mode)),R.panelHeight&&(ut(R.panelHeight),de.current=R.panelHeight),R.floatingDimensions&&R.floatingPosition)){let c={width:R.floatingDimensions.width,height:R.floatingDimensions.height,top:R.floatingPosition.y,left:R.floatingPosition.x};_e(c),F.current={x:R.floatingPosition.x,y:R.floatingPosition.y}}},[R]),Ip(()=>{if(e)if(X(),A==="bottomSheet"){let c=Ue.current;if(!c)return;let d=ce();c.style.transform=`translateY(${d}px)`,c.style.opacity="0",he.current.push(ye(300,Ka,S=>{c.style.transform=`translateY(${(1-S)*d}px)`}),ye(200,We,S=>{c.style.opacity=String(S)}))}else{let c=te.current;if(!c)return;F.current={x:q.current.left,y:q.current.top},c.style.transform=`translate(${F.current.x}px, ${F.current.y}px)`,c.style.opacity="0",he.current.push(ye(200,We,d=>{c.style.opacity=String(d)}))}},[e,A,X]);let ta=z(0),Ee=z(0),Oe=z(null),Ge=B(()=>{let c=Date.now();c-ta.current>500&&(Ee.current=0),Ee.current++,ta.current=c,Oe.current&&clearTimeout(Oe.current),Oe.current=setTimeout(()=>{Ee.current===2?ht():Ee.current>=3&&D&&ge(),Ee.current=0},300)},[ht,D,ge]);se(()=>()=>{Oe.current&&clearTimeout(Oe.current)},[]);let Ve=z({active:false,resizing:false,startY:0,headerOffsetY:0,samples:[]}),hs=B(c=>{if(A!=="bottomSheet"||c.button!==0||c.target.closest('button, a, input, textarea, select, [role="button"], [role="tab"], [role="switch"], [contenteditable="true"], [tabindex]'))return;let d=Ve.current;d.active=true,d.resizing=false,d.startY=c.clientY;let S=c.currentTarget.getBoundingClientRect();d.headerOffsetY=c.clientY-S.top,d.samples=[{t:performance.now(),y:c.clientY}],c.currentTarget.setPointerCapture(c.pointerId)},[A]),gs=B(c=>{let d=Ve.current;if(!d.active)return;let S=c.clientY-d.startY;if(!d.resizing&&Math.abs(S)>3&&(d.resizing=true,X(),ue(true)),!d.resizing)return;let k=c.clientY-d.headerOffsetY,w=ce()-k;w=Math.max(n,Math.min(w,Zt)),de.current=w,dt.current&&(dt.current.style.height=`${w}px`);let E=performance.now();for(d.samples.push({t:E,y:c.clientY});d.samples.length>2&&E-d.samples[0].t>100;)d.samples.shift()},[n,Zt,X]),ps=B(c=>{let d=Ve.current;if(!d.active)return;if(d.active=false,!d.resizing){Ge();return}ue(false);let S=de.current,k=c.clientY-d.startY,w=d.samples[0],E=d.samples[d.samples.length-1];if((E&&w&&E.t>w.t?(E.y-w.y)/(E.t-w.t):0)>.8&&k>50||k>150&&S<=n){let pe=Ue.current;if(X(),pe){let fe=ce();he.current.push(ye(200,We,j=>{pe.style.opacity=String(1-j)}),ye(300,Ka,j=>{pe.style.transform=`translateY(${j*fe}px)`},()=>t()))}else t();return}ut(S)},[n,t,Ge,X]),fs=B(()=>{let c=Ve.current;c.active&&(c.active=false,c.resizing=false,ue(false))},[]),Ye=z({active:false,dragging:false,startX:0,startY:0,startPos:{x:0,y:0}}),bs=B(c=>{if(A!=="floating"||ke||c.button!==0||c.target.closest('button, a, input, textarea, select, [role="button"], [role="tab"], [role="switch"], [contenteditable="true"], [tabindex]'))return;let d=Ye.current;d.active=true,d.dragging=false,d.startX=c.clientX,d.startY=c.clientY,d.startPos={...F.current},c.currentTarget.setPointerCapture(c.pointerId)},[A,ke]),ms=B(c=>{let d=Ye.current;if(!d.active)return;let S=c.clientX-d.startX,k=c.clientY-d.startY;if(!d.dragging&&Math.abs(S)+Math.abs(k)>5&&(d.dragging=true,Ie(true)),!d.dragging)return;let w=d.startPos.x+S,E=d.startPos.y+k;F.current={x:w,y:E},te.current&&(te.current.style.transform=`translate(${w}px, ${E}px)`)},[]),ys=B(()=>{let c=Ye.current;if(!c.active)return;if(c.active=false,!c.dragging){Ge();return}Ie(false);let d=q.current,S=Ft({...d,left:F.current.x,top:F.current.y},Y),k=S.left,w=S.top;F.current={x:k,y:w},te.current&&(te.current.style.transform=`translate(${k}px, ${w}px)`),_e(E=>({...E,left:k,top:w}))},[Y,Ge]),vs=B(()=>{let c=Ye.current;c.active&&(c.active=false,c.dragging=false,Ie(false))},[]),gt=z({active:false,corner:"bottomRight",startX:0,startY:0,start:{width:0,height:0,top:0,left:0}}),Ss=B(c=>d=>{if(A!=="floating")return;d.stopPropagation();let S=gt.current;S.active=true,S.corner=c,S.startX=d.clientX,S.startY=d.clientY,S.start={...q.current},ue(true),d.currentTarget.setPointerCapture(d.pointerId)},[A]),Cs=B(c=>{let d=gt.current;if(!d.active)return;let S=c.clientX-d.startX,k=c.clientY-d.startY;if(Math.abs(S)<.5&&Math.abs(k)<.5)return;let w=Math.max(0,Y.left),E=ce()-Math.max(0,Y.bottom),pe=st()-Math.max(0,Y.right),fe=st()*.25,j=d.start,pt=j.left+j.width,ft=j.top+j.height,Ae=j.left,qe=j.top,ia=pt,bt=ft;d.corner==="bottomLeft"?(Ae=Math.max(w,Math.min(j.left+S,pt-fe)),bt=Math.min(E,Math.max(ft+k,j.top+ze))):(ia=Math.min(pe,Math.max(pt+S,j.left+fe)),bt=Math.min(E,Math.max(ft+k,j.top+ze)));let Ts=Math.max(fe,ia-Ae),ws=Math.max(ze,bt-qe),la={width:Ts,height:ws,left:Ae,top:qe};q.current=la,F.current={x:Ae,y:qe},_e(la),te.current&&(te.current.style.transform=`translate(${Ae}px, ${qe}px)`)},[Y.left,Y.right,Y.bottom]),aa=B(()=>{let c=gt.current;c.active&&(c.active=false,ue(false),_e(q.current))},[]);if(!e)return p("div",{style:{display:"none"},"aria-hidden":true,children:a},"hidden");let sa=s?.title||"Dev tool panel",_=it==="night",ra=Jt&&_?p("div",{style:{position:"absolute",inset:0,pointerEvents:"none"},"aria-hidden":true,children:p(vt,{})}):null,na=H("div",{style:{flex:1,minHeight:0,position:"relative",display:"flex",flexDirection:"column",backgroundColor:_?"transparent":P.base,borderBottomLeftRadius:16,borderBottomRightRadius:16,overflow:"hidden",...r.content},children:[Jt&&!_?p(vt,{}):null,os?p("div",{style:{flex:1,minHeight:0,display:"flex",flexDirection:"column",paddingBottom:G},children:a}):p("div",{style:{flex:1,minHeight:0,overflowY:"auto",paddingBottom:G},children:a}),L?p("div",{style:{position:"absolute",left:0,right:0,bottom:0,backgroundColor:P.base,borderBottomLeftRadius:16,borderBottomRightRadius:16},children:L}):null]}),oa=p("div",{style:{position:"absolute",top:4,right:4,zIndex:10},children:p(Dp,{onClose:t,onMinimize:D?ge:void 0,onToggleMode:ht,mode:A})});if(A==="floating"){let c=ct||ke;return H("div",{ref:te,role:"dialog","aria-label":sa,style:{position:"fixed",left:0,top:0,width:ee.width,height:ee.height,transform:`translate(${F.current.x}px, ${F.current.y}px)`,display:"flex",flexDirection:"column",backgroundColor:_?u.color.bg:P.card,borderRadius:_?u.radius.sheet:6,border:_?`1px solid ${u.color.accent}55`:c?`2px solid ${P.primary}`:`1px solid ${P.border}`,boxShadow:_?`0 0 14px ${u.color.accent}38`:c?`0 0 12px ${P.primary}7A`:`0 0 20px ${P.primary}4D`,..._?{overflow:"hidden"}:null,boxSizing:"border-box",zIndex:Fe??1e3,...r.container},children:[ra,p("div",{onPointerDown:bs,onPointerMove:ms,onPointerUp:ys,onPointerCancel:vs,style:{borderTopLeftRadius:_?u.radius.sheet:6,borderTopRightRadius:_?u.radius.sheet:6,backgroundColor:_?"transparent":P.card,minHeight:56,border:_?"none":`1px solid ${P.border}`,boxSizing:"border-box",display:"flex",flexDirection:"column",justifyContent:"center",flexShrink:0,touchAction:"none",userSelect:"none",cursor:ct?"grabbing":"grab",position:"relative"},children:p(Qa,{header:s,isResizing:ct||ke,mode:A,onMinimize:D?ge:void 0,variant:it})}),oa,na,["bottomLeft","bottomRight"].map(d=>p("div",{onPointerDown:Ss(d),onPointerMove:Cs,onPointerUp:aa,onPointerCancel:aa,style:{position:"absolute",width:30,height:30,bottom:4,...d==="bottomLeft"?{left:4}:{right:4},zIndex:1e3,touchAction:"none",cursor:d==="bottomLeft"?"nesw-resize":"nwse-resize"},children:p("div",{style:{width:20,height:20,borderRadius:10,boxSizing:"border-box",backgroundColor:c?`${$.success}1A`:"transparent",border:c?`2px solid ${$.success}`:"none",boxShadow:c?`0 0 8px ${$.success}99`:"none"}})},d))]},"floating")}return p("div",{style:{position:"fixed",inset:0,zIndex:Fe??1e3,pointerEvents:"none"},children:p("div",{ref:Ue,style:{position:"absolute",bottom:0,left:0,right:0,pointerEvents:"auto"},children:H("div",{ref:dt,role:"dialog","aria-label":sa,style:{height:de.current,display:"flex",flexDirection:"column",backgroundColor:_?u.color.bg:P.card,borderTopLeftRadius:_?u.radius.sheet:6,borderTopRightRadius:_?u.radius.sheet:6,border:_?`1px solid ${u.color.accent}55`:`1px solid ${P.border}`,boxShadow:_?`0 -4px 10px ${u.color.accent}38`:`0 -4px 12px ${P.primary}33`,..._?{overflow:"hidden"}:null,boxSizing:"border-box",position:"relative",...r.container},children:[ra,p("div",{onPointerDown:hs,onPointerMove:gs,onPointerUp:ps,onPointerCancel:fs,style:{borderTopLeftRadius:_?u.radius.sheet:6,borderTopRightRadius:_?u.radius.sheet:6,backgroundColor:_?"transparent":P.card,minHeight:56,border:_?"none":`1px solid ${P.border}`,boxSizing:"border-box",display:"flex",flexDirection:"column",justifyContent:"center",flexShrink:0,touchAction:"none",userSelect:"none",cursor:"ns-resize",position:"relative"},children:p(Qa,{header:s,isResizing:ke,mode:A,onMinimize:D?ge:void 0,variant:it})}),oa,cs&&ls&&!us&&p(Np,{onAcknowledge:ds}),na]})})},"bottomSheet")},Wp=Wt(e=>da()().status!=="admitted"?e.visible?p(qa,{}):null:p(zp,{...e}));import{Children as Fp,useEffect as jp,useRef as Hp}from"react";import{Fragment as Up,jsx as W,jsxs as rt}from"react/jsx-runtime";function Gp({children:e,style:t}){return W(M,{style:[g.sectionLabel,t],children:e})}function Vp({children:e,centered:t,tone:a="tertiary",style:s}){let r=Pe.flatten(s),n=!!r&&(r.marginHorizontal!=null||r.margin!=null);return W(M,{style:[g.footnote,n?null:g.footnoteInset,a==="secondary"?g.footnoteSecondary:null,a==="warning"?g.footnoteWarning:null,a==="danger"?g.footnoteDanger:null,t?g.footnoteCentered:null,s],children:e})}function Yp({children:e,padded:t,glass:a,style:s}){return W(x,{style:[g.card,a?g.cardGlass:null,t?g.cardPadded:null,s],children:e})}function Za({inset:e=u.rowPadH}){return W(x,{style:[g.separator,{marginLeft:e}]})}function qp({children:e,inset:t=u.rowPadH}){let a=Fp.toArray(e);return W(Up,{children:a.map((s,r)=>rt(x,{children:[r>0?W(Za,{inset:t}):null,s]},s.key??r))})}var es=56,ts=32,nt=22,as=5,Jp=es-nt-as*2;function Kp({value:e,onValueChange:t,disabled:a,testID:s,accessibilityLabel:r}){let n=Hp(new Ct.Value(e?1:0)).current;return jp(()=>{Ct.timing(n,{toValue:e?1:0,duration:200,useNativeDriver:jh.OS!=="web"}).start()},[e,n]),W(Ke,{activeOpacity:.8,disabled:a,onPress:()=>t(!e),testID:s,accessibilityLabel:r,accessibilityRole:"switch",accessibilityState:{checked:e,disabled:a},hitSlop:{top:8,bottom:8,left:8,right:8},style:[g.switchTrack,e?g.switchTrackOn:null,a?g.switchDisabled:null],children:W(Ct.View,{style:[g.switchThumb,e?g.switchThumbOn:null,{transform:[{translateX:n.interpolate({inputRange:[0,1],outputRange:[0,Jp]})}]}]})})}function Xp({label:e,selected:t,onPress:a,disabled:s,icon:r,testID:n}){return rt(Ke,{activeOpacity:.7,disabled:s||!a,onPress:a,testID:n,style:[g.chip,t?g.chipSelected:null,s?g.chipDisabled:null],children:[r,W(M,{style:[g.chipText,t?g.chipTextSelected:null],children:e})]})}function Qp({label:e,onPress:t,variant:a="secondary",size:s="lg",icon:r,disabled:n,fullWidth:o=true,testID:i,accessibilityLabel:l}){let h=a==="primary"?u.color.onAccent:a==="tertiary"?u.color.text:a==="destructive"?u.color.danger:u.color.accent;return rt(Ke,{activeOpacity:.7,disabled:n,onPress:t,testID:i,accessibilityRole:"button",accessibilityLabel:l??e,accessibilityState:{disabled:!!n},style:[g.button,s==="md"?g.buttonMd:g.buttonLg,a==="primary"?g.buttonPrimary:a==="ghost"?g.buttonGhost:g.buttonPlate,o?g.buttonFullWidth:null,n?g.buttonDisabled:null],children:[r,W(M,{style:[s==="md"?g.buttonTextMd:g.buttonTextLg,{color:h}],children:e})]})}function Zp({tabs:e,activeKey:t,onChange:a,size:s="md",glass:r,testIDPrefix:n}){let o=s==="sm";return W(x,{style:[g.segmentTrack,r?g.segmentTrackGlass:null],children:e.map(i=>{let l=i.key===t;return rt(Ke,{activeOpacity:.7,testID:n?`${n}-${i.key}`:void 0,accessibilityRole:"tab",accessibilityState:{selected:l},accessibilityLabel:i.label,onPress:()=>a(i.key),style:[g.segment,o?g.segmentSm:null,l?r?g.segmentActiveGlass:g.segmentActive:null],children:[W(M,{style:[g.segmentText,o?g.segmentTextSm:null,l?g.segmentTextActive:null],children:i.label}),l?W(x,{style:[g.segmentUnderline,o?g.segmentUnderlineSm:null]}):null]},i.key)})})}function ef({label:e,tone:t="neutral"}){let a=t==="accent"?g.badgeAccent:t==="warning"?g.badgeWarning:t==="danger"?g.badgeDanger:t==="info"?g.badgeInfo:g.badgeNeutral,s=t==="accent"?g.badgeTextAccent:t==="warning"?g.badgeTextWarning:t==="danger"?g.badgeTextDanger:t==="info"?g.badgeTextInfo:g.badgeTextNeutral;return W(x,{style:[g.badge,a],children:W(M,{style:[g.badgeText,s],children:e})})}var g=Pe.create({sectionLabel:{color:u.color.textSecondary,fontSize:u.font.label,fontWeight:"600",letterSpacing:fa,textTransform:"uppercase",marginBottom:8,marginLeft:u.labelInset},footnote:{color:u.color.textTertiary,fontSize:u.font.caption,fontWeight:"500",lineHeight:u.font.caption*1.4,marginTop:8},footnoteInset:{marginLeft:u.labelInset},footnoteSecondary:{color:u.color.textSecondary},footnoteWarning:{color:u.color.warning},footnoteDanger:{color:u.color.danger},footnoteCentered:{textAlign:"center",marginLeft:0},card:{backgroundColor:u.color.surface,borderRadius:u.radius.card,borderWidth:1,borderColor:u.color.border,overflow:"hidden"},cardGlass:{backgroundColor:u.color.glass,borderColor:u.color.glassBorder},cardPadded:{padding:u.cardPad,gap:10},separator:{height:Pe.hairlineWidth,backgroundColor:u.color.separator},switchTrack:{width:es,height:ts,borderRadius:ts/2,borderWidth:1,borderColor:u.color.fillTertiary,backgroundColor:u.color.surfaceElevated,paddingHorizontal:as,justifyContent:"center",overflow:"hidden"},switchTrackOn:{backgroundColor:u.color.accentFill,borderColor:u.color.accentBorderStrong},switchDisabled:{opacity:.4},switchThumb:{width:nt,height:nt,borderRadius:nt/2,backgroundColor:u.color.knob},switchThumbOn:{backgroundColor:u.color.accent},chip:{flexDirection:"row",alignItems:"center",gap:6,paddingHorizontal:14,paddingVertical:9,borderRadius:u.radius.chip,borderWidth:1.5,backgroundColor:u.color.buttonSurface,borderColor:u.color.fillTertiary},chipSelected:{borderColor:u.color.accentBorderStrong},chipDisabled:{opacity:.4},chipText:{fontSize:u.font.body,fontWeight:"500",color:u.color.textSecondary},chipTextSelected:{color:u.color.accent},button:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:8},buttonMd:{height:34,paddingHorizontal:16,borderRadius:17},buttonLg:{height:50,paddingHorizontal:20,borderRadius:25},buttonPrimary:{backgroundColor:u.color.accent},buttonPlate:{backgroundColor:u.color.button},buttonGhost:{backgroundColor:"transparent"},buttonFullWidth:{alignSelf:"stretch"},buttonDisabled:{opacity:.4},buttonTextMd:{fontSize:15,fontWeight:"600"},buttonTextLg:{fontSize:17,fontWeight:"600"},segmentTrack:{flex:1,flexDirection:"row",backgroundColor:u.color.bg,borderRadius:u.radius.row,borderWidth:1,borderColor:u.color.border,padding:3},segment:{flex:1,paddingVertical:8,alignItems:"center",justifyContent:"center",borderRadius:u.radius.segment},segmentTrackGlass:{backgroundColor:u.color.glass,borderColor:u.color.glassBorder},segmentActive:{backgroundColor:u.color.surfaceElevated},segmentActiveGlass:{backgroundColor:u.color.glassElevated},segmentText:{fontSize:u.font.caption,fontWeight:"500",color:u.color.textSecondary},segmentTextActive:{fontWeight:"600",color:u.color.text},segmentUnderline:{position:"absolute",bottom:2,width:24,height:2.5,borderRadius:1.25,backgroundColor:u.color.accent,shadowColor:u.color.accent,shadowOffset:{width:0,height:0},shadowOpacity:.6,shadowRadius:6},segmentSm:{paddingVertical:5},segmentTextSm:{fontSize:12},segmentUnderlineSm:{bottom:1.5,width:20,height:2,borderRadius:1},badge:{paddingHorizontal:8,paddingVertical:4,borderRadius:u.radius.badge,alignSelf:"flex-start"},badgeText:{fontSize:u.font.micro,fontWeight:"600",letterSpacing:.5,textTransform:"uppercase"},badgeAccent:{backgroundColor:u.color.accentSoft},badgeTextAccent:{color:u.color.accent},badgeWarning:{backgroundColor:u.color.warningSoft},badgeTextWarning:{color:u.color.warning},badgeDanger:{backgroundColor:u.color.dangerSoft},badgeTextDanger:{color:u.color.danger},badgeInfo:{backgroundColor:u.color.infoSoft},badgeTextInfo:{color:u.color.info},badgeNeutral:{backgroundColor:u.color.fillSecondary},badgeTextNeutral:{color:u.color.textSecondary}});import{jsx as xe,jsxs as tf}from"react/jsx-runtime";function Vt(e){switch(yt(String(e))){case"dev":return{label:"DEV",backgroundColor:C.warning};case"qa":return{label:"QA",backgroundColor:C.optional};case"staging":return{label:"STAGING",backgroundColor:C.success};case"prod":return{label:"PROD",backgroundColor:C.error};case"local":default:return{label:"LOCAL",backgroundColor:C.info}}}function af({color:e}){return xe("svg",{width:12,height:12,viewBox:"0 0 24 24","aria-hidden":"true",children:xe("path",{d:"M6 9l6 6 6-6",fill:"none",stroke:e,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}function sf({environment:e,interactive:t=false,onPress:a}){let s=Vt(e);return tf("button",{onClick:t?a:void 0,"aria-label":`Environment: ${s.label}`,style:{display:"flex",flexDirection:"row",alignItems:"center",padding:`6px ${t?4:8}px 6px 8px`,flexShrink:0,background:"none",border:"none",cursor:t?"pointer":"default"},children:[xe("div",{style:{width:8,height:8,borderRadius:4,backgroundColor:s.backgroundColor,marginRight:6,boxShadow:`0 0 4px ${s.backgroundColor}99`}}),xe("span",{style:{fontSize:11,fontWeight:600,color:C.primaryLight,letterSpacing:.5},children:s.label}),t&&xe("span",{style:{marginLeft:2,display:"flex"},children:xe(af,{color:"#7A8599"})})]})}import{jsx as ve,jsxs as Yt}from"react/jsx-runtime";var rf=140,nf=28,ss=44,of=8,lf=24;function qt(e){switch(yt(e)){case"local":return{label:"LOCAL",backgroundColor:C.info};case"dev":return{label:"DEV",backgroundColor:C.warning};case"qa":return{label:"QA",backgroundColor:C.optional};case"staging":return{label:"STAGING",backgroundColor:C.success};case"prod":return{label:"PROD",backgroundColor:C.error};default:return{label:"LOCAL",backgroundColor:C.info}}}function cf({environment:e,isSelected:t,onPress:a}){let s=qt(e);return Yt(Hh,{onPress:a,style:({pressed:r})=>[re.optionContainer,t&&re.optionContainerSelected,r&&re.optionContainerPressed],children:[Yt(x,{style:re.optionLeft,children:[ve(x,{style:[re.optionDot,{backgroundColor:s.backgroundColor},{shadowColor:s.backgroundColor,shadowOffset:{width:0,height:0},shadowOpacity:.6,shadowRadius:4,elevation:2}]}),ve(M,{style:re.optionLabel,children:s.label})]}),t&&ve(ba,{size:14,color:C.success,strokeWidth:3})]})}function uf({hasItems:e,currentEnvironment:t,availableEnvironments:a,onSelect:s,width:r=rf,collapsedContent:n}){let o=of+a.length*ss+lf+4,i=Yt(x,{style:re.collapsedEnvBadge,children:[ve(x,{style:[re.collapsedDot,{backgroundColor:qt(t).backgroundColor}]}),ve(M,{style:re.collapsedLabel,children:qt(t).label})]});return ve(ga,{hasItems:e,width:r,expandedHeight:o,peekHeight:nf,showCount:false,collapsedContent:n||i,collapsedLabel:`Switch environment from ${t}`,children:a.map(l=>ve(cf,{environment:l,isSelected:l===t,onPress:()=>s(l)},l))})}var re=Pe.create({collapsedEnvBadge:{flexDirection:"row",alignItems:"center",gap:6},collapsedDot:{width:8,height:8,borderRadius:4},collapsedLabel:{fontSize:11,fontWeight:"600",color:C.primaryLight,letterSpacing:.5},optionContainer:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:12,height:ss,width:"100%"},optionContainerSelected:{backgroundColor:"rgba(128, 128, 128, 0.1)"},optionContainerPressed:{backgroundColor:"rgba(128, 128, 128, 0.2)"},optionLeft:{flexDirection:"row",alignItems:"center",flex:1},optionDot:{width:8,height:8,borderRadius:4,marginRight:10},optionLabel:{fontSize:12,fontWeight:"600",color:C.primaryLight,letterSpacing:.5}});import{useState as rs}from"react";import{jsx as K,jsxs as ot}from"react/jsx-runtime";var ns=36;function df({color:e,flipped:t}){return K("svg",{width:10,height:10,viewBox:"0 0 24 24","aria-hidden":"true",style:{transform:t?"rotate(180deg)":"rotate(0deg)",transition:"transform 200ms ease"},children:K("path",{d:"M18 15l-6-6-6 6",fill:"none",stroke:e,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}function hf(){return K("svg",{width:12,height:12,viewBox:"0 0 24 24","aria-hidden":"true",children:K("path",{d:"M20 6L9 17l-5-5",fill:"none",stroke:"#4AFF9F",strokeWidth:"3",strokeLinecap:"round",strokeLinejoin:"round"})})}function gf({currentEnvironment:e,availableEnvironments:t,onSelect:a}){let[s,r]=rs(false),[n,o]=rs(null),i=Vt(e),l=t.length*ns;return ot("div",{style:{position:"relative",zIndex:1e3,flexShrink:0},children:[K("div",{style:{position:"absolute",bottom:"100%",left:0,right:0,height:s?l:0,opacity:s?1:0,overflow:"hidden",transition:"height 200ms ease, opacity 200ms ease",backgroundColor:"rgba(8,12,21,0.95)",border:"1px solid #00B8E666",borderBottomWidth:0,borderTopLeftRadius:6,borderTopRightRadius:6,boxShadow:"0 -4px 8px rgba(0,0,0,0.3)"},children:t.map(h=>{let b=Vt(h),v=String(h).toLowerCase()===String(e).toLowerCase();return ot("button",{onClick:()=>{r(false),a(h)},onMouseEnter:()=>o(String(h)),onMouseLeave:()=>o(null),style:{display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%",height:ns,padding:"0 10px",background:v?"rgba(128,128,128,0.1)":n===String(h)?"rgba(128,128,128,0.2)":"none",border:"none",cursor:"pointer"},children:[ot("span",{style:{display:"flex",alignItems:"center"},children:[K("span",{style:{width:6,height:6,borderRadius:3,backgroundColor:b.backgroundColor,marginRight:8}}),K("span",{style:{fontSize:10,fontWeight:600,color:C.primaryLight,letterSpacing:.5},children:b.label})]}),v&&K(hf,{})]},String(h))})}),ot("button",{onClick:()=>r(h=>!h),"aria-expanded":s,"aria-label":`Environment: ${i.label}. Click to switch.`,style:{display:"flex",alignItems:"center",gap:6,padding:"6px 6px 6px 8px",borderRadius:6,borderTopLeftRadius:s?0:6,borderTopRightRadius:s?0:6,backgroundColor:s?"rgba(8,12,21,0.95)":"transparent",border:"none",cursor:"pointer"},children:[K("span",{style:{width:8,height:8,borderRadius:4,backgroundColor:i.backgroundColor,boxShadow:`0 0 4px ${i.backgroundColor}99`}}),K("span",{style:{fontSize:11,fontWeight:600,color:C.primaryLight,letterSpacing:.5},children:i.label}),K(df,{color:"#7A8599",flipped:s})]})]})}export{Qi as ARROW_BOTTOM_OFFSET,Zi as ARROW_HEIGHT,tc as ASSETS_ICON_COLOR,qa as AccountSetup,wn as ActionCopyButton,Ac as Activity,Uc as ActivityIcon,ao as AddFilterButton,Zn as AddFilterInput,$c as AlertCircle,ad as AlertCircleIcon,Bc as AlertOctagon,Nc as AlertTriangle,qc as AlertTriangleIcon,zu as AskBuoyIcon,Ql as AssetsIcon,Xo as BACKGROUND_PRESETS,mi as BACKGROUND_STORAGE_KEY,pd as BENCHMARK_ICON_COLOR,$h as BUOY_SYNTHETIC_MARK,lo as BackButton,Li as BackgroundSwitcher,co as Badge,yc as BarChart3,Cc as BarChart3Icon,Vh as BaseEventStore,cd as BenchmarkIcon,dh as BenchmarkLegacyIcon,jc as Bookmark,Vc as Box,Qc as BoxIcon,yp as BubbleSettingsDetail,mp as BubbleSettingsSection,Kc as Bug,Du as BugIcon,$r as CELLS,Yi as CLIP_OFFSCREEN_CELLS,$d as CLOCK_TOOL_ICON_COLOR,Pl as CONSOLE_ICON_COLOR,Fa as COPY_PAYLOAD_MAX_BYTES,Rl as CameraIcon,ig as ChangeLog,vn as ChangeRow,ba as Check,eu as CheckCircle,sc as CheckCircle2,id as CheckCircle2Icon,nu as CheckCircleIcon,au as CheckIcon,Ec as CheckSquare,Xl as CheckSquareIcon,iu as ChevronDown,cu as ChevronDownIcon,du as ChevronLeft,gu as ChevronLeftIcon,fu as ChevronRight,mu as ChevronRightIcon,vu as ChevronUp,El as ChevronUpIcon,Jn as ChipStrip,Po as ClipboardHintBanner,Al as Clock,Tu as ClockIcon,Od as ClockToolIcon,kc as Cloud,Oc as CloudIcon,bi as CollapsibleSection,Rr as CompactFilterChips,Xi as CompactRow,jr as CompareBar,Oh as ConsoleIcon,xu as Copy,pn as CopyButton,_u as CopyIcon,yo as CountBadge,pa as CyberpunkSectionButton,ti as DEFAULT_BACKGROUND,Go as DEVTOOLS_CARD_CONSTANTS,Si as DataInspector,ma as Database,ju as DatabaseIcon,Wi as DaylightTunable,Eo as DeepFieldTunable,ri as DetailView,en as DetailViewToggle,Jo as DevToolsCard,zr as DiffModeTabs,Pu as DockBottom,Nu as Download,_d as DownloadIcon,li as DraggableHeader,Ei as DynamicFilterView,Ih as ENV_ICON_COLOR,Ki as EVENT_LIST_PRESET,Hu as Edit3,Ru as Edit3Icon,_o as EmptyState,Wn as EntityFilterView,wh as EnvIcon,ed as EnvLaptopIcon,sf as EnvironmentIndicator,uf as EnvironmentSelector,gf as EnvironmentSelectorInline,Gr as EventHistoryViewer,No as EventListItem,qr as EventPickerModal,zi as EventStepperFooter,tu as EventsIcon,ga as ExpandablePopover,Vi as ExpandedInfoRow,to as ExportPreview,Qu as Eye,Bu as EyeIcon,ya as EyeOff,Fu as EyeOffIcon,ui as FeatureGate,zl as FileCode,Vu as FileCodeIcon,sd as FileJson,jd as FileJsonIcon,ld as FileText,Ku as FileTextIcon,gd as Film,Pc as FilmIcon,yd as Filter,Kn as FilterBadge,td as FilterIcon,no as FilterList,Yn as FilterSection,wd as FlaskConical,od as FlaskConicalIcon,Ed as FloatWindow,il as FloatingTool,rl as FloatingToolDivider,gl as FloatingToolHost,nl as FloatingToolUserStatus,Dn as FooterButton,Rn as FooterCaption,$n as FooterMessage,En as FooterRow,tn as FreeAccountPrompt,Il as GAME_UI_ALERT_STATES,Cl as GameUICollapsibleSection,xl as GameUICompactStats,kl as GameUIIssuesList,wl as GameUIStatusHeader,Pd as GitBranch,dd as GitBranchIcon,Nd as Globe,Yu as GlobeIcon,hi as GripVerticalIcon,lc as Hand,Qd as HandIcon,Hl as HardDrive,bd as HardDriveIcon,Hd as Hash,Cd as HashIcon,Zo as HeaderSearchButton,Wc as HelpCircle,ku as HighlightIcon,th as HighlightUpdatesIcon,Uu as HighlighterIcon,Do as HintsProvider,As as HistoryEntryRow,Rs as HistoryList,xs as HistoryProvider,qd as Home,oc as HomeIcon,ql as IMAGES_ICON_COLOR,gc as IMAGE_OVERLAY_ICON_COLOR,ic as IMPERSONATE_ICON_COLOR,Ju as IconBackground,Iu as IconCircle,Cu as IconContainer,Mu as IconLine,Au as IconRect,Zd as Image,Dc as ImageIcon,cc as ImageOverlayIcon,Gl as ImagesIcon,rc as ImpersonateIcon,rh as Info,Id as InfoIcon,Xr as InfoRow,mn as InlineCopyButton,Ic as JOTAI_ICON_COLOR,Tc as JotaiIcon,Wp as JsModal,ch as Key,Rd as KeyIcon,eh as LIFECYCLE_TOOL_ICON_COLOR,uh as LOCATION_TOOL_ICON_COLOR,Vr as LOGIN_COMMAND,Br as LOG_LIST_PRESET,nd as LaptopIcon,ph as Layers,Bd as LayersIcon,qo as LicenseEntryModal,Jd as LifecycleToolIcon,xo as LinearFade,yh as Link,Yd as LinkIcon,Un as ListItem,Yo as LiveSkyTunable,nh as LocationToolIcon,Ch as Lock,Ld as LockIcon,Bt as LogLevel,Bt as LogLevelEnum,Dt as LogType,Dt as LogTypeEnum,Zr as MAX_PERIOD,Kl as Maximize2,Fd as Maximize2Icon,Io as MethodBadge,xh as Minus,Vd as MinusIcon,Mn as ModalHeader,Nn as ModalHintBanner,Bi as MoonlightTunable,_h as Music,Fc as MusicIcon,Sh as NETWORK_ICON_COLOR,fa as NIGHT_LABEL_TRACKING,xd as NOTIFICATIONS_ICON_COLOR,Ah as Navigation,Wd as NavigationIcon,Gu as NetworkGlobeIcon,mh as NetworkIcon,ef as NightBadge,Qp as NightButton,Yp as NightCard,Xp as NightChip,Vp as NightFootnote,qp as NightRows,Gp as NightSectionLabel,Zp as NightSegmented,Za as NightSeparator,Kp as NightSwitch,Ro as NoDataEmptyState,Mo as NoResultsEmptyState,zo as NoSearchResultsEmptyState,vd as NotificationsIcon,vi as OTTO_ANCHORS,wi as OTTO_ANCHOR_SIZE,si as OTTO_GRID,$i as OTTO_GROUPS,_i as OTTO_NOTES,ii as OTTO_PALETTE,Fi as OTTO_REEL,Lr as OTTO_SCENES,uo as OTTO_SCENE_BY_ID,fo as OTTO_SCENE_CROP_H,qn as OTTO_SCENE_H,Xn as OTTO_SCENE_OTTO,jn as OTTO_SCENE_PALETTE,Gn as OTTO_SCENE_W,fi as OTTO_STATES,Ai as OTTO_STATE_NAMES,Ni as OTTO_USES,zn as Otto,Pn as OttoMotionView,xn as OttoPixels,vo as OttoSceneFrame,wo as OttoSceneStill,_n as OttoStill,Ud as PERMISSIONS_ICON_COLOR,et as PERSONAL_SETTING_KEYS,za as PREVIEW_ITEM_RENDER_BYTE_LIMIT,$l as Palette,Xd as PaletteIcon,Nl as Pause,ah as PauseIcon,zd as PermissionsIcon,Gc as Phone,Jc as PhoneIcon,Tn as Pill,Ji as PillBadge,Ml as Pin,jl as Play,ih as PlayIcon,Vl as Plus,hh as PlusIcon,Jl as Power,md as PowerIcon,Ui as PowerToggleButton,Wu as PrimitiveGlobeIcon,Qo as ProBadge,yi as ProFeatureBanner,ai as ProUpgradeModal,qu as QueryIcon,Gs as REMOTE_RELOAD_DELAY_MS,So as RadialGlow,bo as RasterLayer,ud as ReactQueryIcon,Ou as ReduxIcon,Zl as RefreshCw,bh as RefreshCwIcon,bn as RelativeTime,oh as RenderCountIcon,Kd as RenderPulseIcon,hc as Route,bu as RouteDotIcon,Md as RouteIcon,Ad as RouteMapIcon,hu as RoutePathIcon,lu as RoutePinIcon,Su as RouteTwoPinsIcon,ru as RoutesIcon,el as SPACING_GAP,Zu as ScenariosIcon,ac as Search,xi as SearchBar,vh as SearchIcon,Fn as SectionHeader,fd as SentryBugIcon,Xc as SentryIcon,Ha as SentryLogger,nc as Server,hd as ServerIcon,St as Settings,Th as SettingsIcon,uc as SettingsSolid,Ba as SettingsSync,pc as Shield,kh as ShieldIcon,Zc as Smartphone,su as SmartphoneIcon,xc as Square,Lc as SquareDashed,ec as SquareDashedIcon,Yl as SquareIcon,Gd as StackPulseIcon,Ls as StandaloneHistoryList,Fo as StatsCard,po as StatusBadge,Ko as StatusIndicator,$u as StorageIcon,Sd as StorageStackIcon,mo as StorageTypeBadge,ca as Subscribable,La as TEAM_SETTING_KEYS,rn as TIER_LIMITS,Fl as TIME_MACHINE_ICON_COLOR,Kr as TRANSPARENT,Ao as TabSelector,dc as TestTube2,Eh as TestTube2Icon,on as TickProvider,ei as TimeDisplay,Dl as TimeMachineIcon,ou as Timer,uu as TimerIcon,Hn as ToggleRow,vt as ToolBackground,$o as ToolButton,jo as ToolEmptyState,kn as ToolFooter,Na as ToolScreenHeaderContext,In as ToolbarClearButton,Sn as ToolbarCopyButton,pu as Touchpad,yu as TouchpadIcon,Sc as Trash,mc as Trash2,Ll as Trash2Icon,sh as TrashIcon,fc as TriangleAlert,lh as TriangleAlertIcon,To as TypeBadge,wc as Unlock,Dd as UnlockIcon,Ti as UpgradeModal,oi as UpgradePrompt,_c as Upload,Td as UploadIcon,Rc as User,gh as UserIcon,Ol as Users,wu as UsersIcon,go as ValueTypeBadge,Mr as ViewToggleCards,Eu as Volume,Lu as VolumeIcon,Ur as WATER_CELLS,Yr as WATER_FRAMES,Nr as WATER_ROW0,Fr as WATER_ROWS,Ze as WIRE_DETAIL_LIMIT_BYTES,_a as WIRE_INLINE_LIMIT_BYTES,Mc as Wifi,rd as WifiBifIcon,kd as WifiCircuitIcon,Xu as WifiIcon,Mi as WindowControls,Lo as Wormhole,Hc as X,zc as XCircle,Wl as XCircleIcon,Bl as XIcon,vc as ZUSTAND_ICON_COLOR,Yc as Zap,Ul as ZapIcon,bc as ZustandIcon,Tl as absoluteFill,ja as add,Qe as approxJsonSize,Se as assertAccountAccess,Ci as backgroundStore,Ks as browserRouter,U as buoyColors,sl as calculateTargetPosition,al as calculateTooltipPosition,jg as canOpenBuoyTools,Oa as capDetail,ep as classifyPreviewItem,pp as clearEntries,Oo as copyToClipboard,Mh as countBuoyListener,Co as createAutoDetectedClipboard,Kg as createRestoreScope,Ig as createSyncAdapter,Lg as createToolFactory,og as createToolStore,hn as cycleIndexes,Sp as definePersistedSetting,Rg as defineToolPreset,kg as detailByIdAction,be as devToolsStorageKeys,Lh as dialColors,dl as dismissFloatingTool,Ng as dispatchToolAction,vl as displayValue,Xg as emptyRestoreResult,sp as entityColor,wt as expandKeyedArrays,Qg as failedRestore,Ia as findKeyPath,nn as flatColors,Sr as flattenObject,Wa as formatBytes,op as formatDuration,up as formatHttpStatus,ip as formatNumber,Cr as formatPath,sn as formatRelativeTime,mr as formatValue,rp as formatValuePreview,C as gameUIColors,oe as getAccountAccess,ko as getAutoDetectedClipboard,ol as getBubbleAnchorPosition,vp as getBubbleVisibilitySettings,wr as getCachedOptionalModule,hr as getConstructorName,Ys as getDevServerOrigin,zs as getDeviceInfo,gp as getEntries,ll as getFloatingTools,dp as getMethodColor,gi as getPreset,Bh as getRealAppState,or as getRegisteredToolModule,kr as getRenderCaptureProvider,Ph as getSafeAreaInsets,ar as getSafeCurrentPathname,sr as getSafeCurrentRoute,tr as getSafeRouter,tl as getScreenCenterY,Bo as getSkyScrub,Er as getStateSnapshotProvider,_r as getStateSnapshotProviders,Fh as getStorageBackendType,Te as getToolAdapters,Ug as getToolAttention,Fs as getToolModuleVersion,yr as getTypeColor,da as getUseAccountAccess,Ii as getUseIsPro,Oi as getUseLicense,Pi as getUseTier,pr as getValueSize,cr as getValueType,an as gridKey,Da as guardToolAdapter,V as hasAccountAccess,Tt as identityField,J as ignoredPatternsStore,Nh as isDevToolsStorageKey,gr as isEmpty,rr as isExpoRouterAvailable,ua as isJsonSerializable,Sg as isOnDeviceMarker,It as isOverWireBudget,fr as isPlainObjectUtil,ur as isPrimitive,Di as isProNow,Rt as isToolRegistryReady,Xh as isUrlIgnored,Wh as isUsingPersistentStorage,dr as isValidJson,Ce as listShapes,Bg as listSnapshotToolIds,Mg as listToolActions,$g as listToolIds,Tr as loadOptionalModule,Ws as logDeviceInfo,Je as macOSColors,Tg as memoByIdentity,Ra as mergeChangeSources,fh as monoFont,Cn as motionUnits,wg as newestFitting,u as night,Ln as noWindowDragProps,yt as normalizeEnvironment,Re as notifySubscriberCountChange,vg as onDeviceMarker,Fg as openBuoyTool,ul as openFloatingTool,cn as ottoCycle,Hi as ottoReel,qi as ottoRuns,oo as ottoSceneBounds,so as ottoSceneRuns,yn as ottoSheets,di as ottoWaterRows,Sl as parseDisplayValue,xt as parsePath,hp as parseUrl,br as parseValue,fg as patchFromPath,N as persistentStorage,ci as presetAt,ni as presetIndex,Aa as readParams,pg as readPath,Dg as readToolSnapshot,mt as realNow,fn as rectsOf,Rh as refreshGameUIColors,yg as refusalText,qs as registerBrowserRouter,hl as registerPersistentFloatingTool,Ir as registerStateSnapshotProvider,Pg as registerToolAdapters,nr as registerToolModules,Wg as registerToolOpener,Us as reloadApp,Gi as renderOttoFrame,eo as renderOttoScene,$s as resetPersistedStateCache,ln as resolveEffectiveTier,Vo as resolveListEmptyState,Hs as resolveReloadStrategy,Dr as retryAccountAccess,bl as safeStringify,ro as scatter,Vs as scheduleReloadApp,bp as sentryLogger,Ri as setExpandableWindowControls,xr as setRenderCaptureProvider,Wo as setSkyScrub,Hg as setToolAttention,np as shallowDiffSummary,Be as shapeKind,$e as shapeOf,hg as shapeSummary,ug as shapesWereTruncated,Wr as signOutOfBuoy,xg as sizeOrStub,Qn as sizeWarningLevel,Zg as skippedRestore,Ag as startSettingsSync,Le as subscribeAccountAccess,Js as subscribeBrowserNavigation,cl as subscribeFloatingTools,Dh as subscribeRealAppState,js as subscribeToStateSnapshotProviders,lr as subscribeToSubscriberCountChanges,Gg as subscribeToolAttention,ir as subscriberCountNotifier,bg as suggestedPatch,yl as superJsonDeserialize,ml as superJsonSerialize,Cg as toWire,ji as toolTheme,cp as truncateMiddle,lp as truncatePayload,vr as truncateText,Ea as truncatedNote,kt as typedEditViolations,ap as unionKeys,dg as unshapedLists,va as urlMatchesIgnoredPattern,Es as useAllHistoryEntries,Ms as useChangeLog,Vn as useChipTap,Ns as useDeviceInfo,Ds as useEventStoreEvents,pi as useFeatureGate,pl as useFilterManager,_l as useGameUIAlertState,Uo as useHintsContext,ha as useHintsDisabled,_s as useHistoryAdapter,Is as useHistoryAdapters,ks as useHistoryContext,Os as useHistoryEntryCounts,rg as useIgnoredPatterns,dn as useLimit,Pr as useLoop,Bn as useOttoAnchorMotion,An as useOttoReel,Ps as usePersistedState,ho as usePulse,gn as useRelativeTime,fl as useSafeAreaInsets,er as useSafeGlobalSearchParams,Qs as useSafePathname,Xs as useSafeRouter,Zs as useSafeSegments,Ho as useSkyScrub,Bs as useSubscribedValue,un as useTick,ki as useToolBackground,Jg as useToolScreenHeader,zg as waitForToolRegistry,On as windowDragProps,io as withBgAlpha,tp as wontApply};
|
|
14
|
+
`}),We("div",{"data-account-launcher":"",children:We(tn,{expanded:e,onPress:()=>t(o=>!o)})}),e&&We("section",{ref:s,className:"buoy-account-panel",role:"dialog","aria-labelledby":r,tabIndex:-1,onBlur:o=>{o.relatedTarget instanceof Node&&!a.current?.contains(o.relatedTarget)&&n(false)},children:We(rn,{titleId:r,onClose:()=>n()})})]}),document.body)}import{useState as ae,useRef as z,useEffect as se,useLayoutEffect as Np,useCallback as B,memo as Gt,isValidElement as zp,cloneElement as Wp}from"react";var ot=class{static async save(e,t){this.cache.set(e,t);try{await N.setItem(e,JSON.stringify(t))}catch{}}static async load(e){if(this.cache.has(e))return this.cache.get(e);try{let t=await N.getItem(e);if(t){let a=JSON.parse(t);return this.cache.set(e,a),a}}catch{}return null}static saveMinimized(e,t){return this.save(e,{mode:t.mode,panelHeight:t.panelHeight,dimensions:t.floatingDimensions&&t.floatingPosition?{...t.floatingDimensions,top:t.floatingPosition.y,left:t.floatingPosition.x}:void 0,isVisible:false})}};ot.cache=new Map;import{jsx as p,jsxs as H}from"react/jsx-runtime";var P={base:"#121212",card:"#1A1A1A",border:"#333333",textMuted:"#888888",primary:"#20C997"},$={primary:"#F5F5F7",primaryLight:"#F5F5F7",secondary:"#A1A1A6",muted:"#8E8E93",success:"#34C759",info:"#00B8E6"},jp=100,Fp=400,ts=500,je=80,it=()=>typeof window<"u"?window.innerWidth:0,ce=()=>typeof window<"u"?window.innerHeight:0,as=e=>1-Math.pow(1-e,3),Fe=e=>e<.5?2*e*e:1-Math.pow(-2*e+2,2)/2;function ye(e,t,a,s){let r=0,n=false,o=performance.now(),i=l=>{if(n)return;let h=Math.min((l-o)/e,1);a(t(h)),h<1?r=requestAnimationFrame(i):s?.()};return r=requestAnimationFrame(i),()=>{n=true,cancelAnimationFrame(r)}}function Hp(){if(typeof document>"u")return{top:0,left:0,right:0,bottom:0};let e=document.createElement("div");e.style.cssText="position:fixed;top:env(safe-area-inset-top);left:env(safe-area-inset-left);right:env(safe-area-inset-right);bottom:env(safe-area-inset-bottom);visibility:hidden;pointer-events:none",document.body.appendChild(e);let t=e.getBoundingClientRect();return document.body.removeChild(e),{top:Math.max(0,t.top),left:Math.max(0,t.left),right:Math.max(0,window.innerWidth-t.right),bottom:Math.max(0,window.innerHeight-t.bottom)}}function Yt(e,t){let a=Math.max(je,window.innerWidth-t.left-t.right),s=Math.max(je,window.innerHeight-t.top-t.bottom),r=Math.min(e.width,a),n=Math.min(e.height,s);return{width:r,height:n,left:Math.max(t.left,Math.min(e.left,window.innerWidth-t.right-r)),top:Math.max(t.top,Math.min(e.top,window.innerHeight-t.bottom-n))}}var Up=({size:e=24,color:t="currentColor",strokeWidth:a=2})=>H("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[p("line",{x1:18,y1:6,x2:6,y2:18,stroke:t,strokeWidth:a,strokeLinecap:"round"}),p("line",{x1:6,y1:6,x2:18,y2:18,stroke:t,strokeWidth:a,strokeLinecap:"round"})]}),Vp=({size:e=24,color:t="currentColor",strokeWidth:a=2})=>p("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:p("line",{x1:5,y1:12,x2:19,y2:12,stroke:t,strokeWidth:a,strokeLinecap:"round"})}),Gp=({size:e=24,color:t="currentColor",strokeWidth:a=2})=>H("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[p("rect",{x:3,y:3,width:18,height:18,rx:2,stroke:t,strokeWidth:a}),p("rect",{x:3,y:14,width:18,height:7,fill:t})]}),Yp=({size:e=24,color:t="currentColor",strokeWidth:a=2})=>H("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[p("rect",{x:3,y:3,width:14,height:14,rx:2,stroke:t,strokeWidth:a}),p("line",{x1:7,y1:17,x2:7,y2:21,stroke:t,strokeWidth:a}),p("line",{x1:7,y1:21,x2:21,y2:21,stroke:t,strokeWidth:a}),p("line",{x1:21,y1:21,x2:21,y2:7,stroke:t,strokeWidth:a}),p("line",{x1:17,y1:7,x2:21,y2:7,stroke:t,strokeWidth:a})]}),Jt={close:"#FF5F57",minimize:"#FEBC2E",toggleMode:"#28C840"},qt=24,Jp=2,Kt=8,Xt=e=>({width:qt,height:qt,borderRadius:qt/2,display:"flex",alignItems:"center",justifyContent:"center",background:`radial-gradient(circle, ${e} 6px, transparent 6px)`,border:"none",padding:0,cursor:"pointer",flexShrink:0});function qp({onClose:e,onMinimize:t,onToggleMode:a,mode:s}){let r=s==="floating"?Gp:Yp,n=s==="floating"?"Dock to bottom sheet":"Make floating window";return H("div",{style:{display:"flex",flexDirection:"row",alignItems:"center",gap:Jp},children:[t&&p("button",{type:"button",onClick:t,style:Xt(Jt.minimize),"aria-label":"Minimize modal",children:p(Vp,{size:Kt,color:"#7A5A00",strokeWidth:1.5})}),a&&p("button",{type:"button",onClick:a,style:Xt(Jt.toggleMode),"aria-label":n,children:p(r,{size:Kt,color:"#004A1A",strokeWidth:1.5})}),p("button",{type:"button",onClick:e,style:Xt(Jt.close),"aria-label":"Close modal",children:p(Up,{size:Kt,color:"#4A0000",strokeWidth:1.5})})]})}var ss=Gt(function({isResizing:e,mode:t,hasCustomContent:a=false,variant:s="default"}){let r=t==="floating",n=s==="night";return H("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",position:"relative",justifyContent:a?"center":void 0,minHeight:a?32:void 0,paddingTop:a?0:8,paddingBottom:a?0:8,backgroundColor:"transparent"},children:[p("div",{style:{width:n?36:e?40:r?50:40,height:n||r?5:3,backgroundColor:n?u.color.placeholder:e?P.primary:r?P.textMuted:P.primary,borderRadius:n?2.5:2,boxShadow:n?"none":`0 0 4px ${P.primary}99`}}),e&&t==="bottomSheet"&&p("div",{style:{position:"absolute",display:"flex",flexDirection:"row",gap:2,marginTop:12},children:[0,1,2].map(o=>p("div",{style:{width:12,height:1,backgroundColor:$.success,opacity:.6}},o))})]})}),Kp=Gt(function({onAcknowledge:e}){return p("div",{style:{backgroundColor:`${$.info}15`,borderLeft:`3px solid ${$.info}`,borderRadius:8,margin:"8px 12px 4px",overflow:"hidden",boxShadow:`0 0 8px ${$.info}4D`,flexShrink:0},children:H("div",{style:{display:"flex",flexDirection:"row",alignItems:"center",padding:12,gap:12},children:[H("div",{style:{width:32,height:32,position:"relative",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0},children:[p("div",{style:{position:"absolute",width:20,height:20,borderRadius:10,border:`2px solid ${$.info}`,opacity:.6,transform:"scale(0.8)",boxSizing:"border-box"}}),p("div",{style:{position:"absolute",width:20,height:20,borderRadius:10,border:`2px solid ${$.info}`,boxSizing:"border-box"}})]}),H("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:2},children:[p("span",{style:{fontSize:13,fontWeight:600,color:$.info,letterSpacing:.3},children:"\u{1F4A1} Pro Tip"}),p("span",{style:{fontSize:12,color:$.primaryLight,lineHeight:"16px"},children:"Double-tap the header to transform this into a floating modal"})]}),p("button",{type:"button",onClick:e,style:{backgroundColor:`${$.info}30`,padding:"6px 12px",borderRadius:6,border:`1px solid ${$.info}50`,fontSize:12,fontWeight:600,color:$.info,cursor:"pointer",fontFamily:"inherit",flexShrink:0},children:"Got it!"})]})})});function rs({header:e,isResizing:t,mode:a,onMinimize:s,variant:r="default"}){if(e?.customContent){let n=e.customContent;return zp(e.customContent)&&s&&(n=Wp(e.customContent,{onMinimize:s})),H("div",{style:{flex:1,display:"flex",flexDirection:"column",justifyContent:"center",minWidth:0},children:[p(ss,{isResizing:t,mode:a,hasCustomContent:true,variant:r}),n]})}return H("div",{style:{flex:1,display:"flex",flexDirection:"column",justifyContent:"center",position:"relative",minWidth:0},children:[p(ss,{isResizing:t,mode:a,variant:r}),H("div",{style:{padding:"0 16px",display:"flex",flexDirection:"column",alignItems:"center"},children:[e?.title&&p("span",{style:{fontSize:16,fontWeight:600,color:$.primary},children:e.title}),e?.subtitle&&p("span",{style:{fontSize:12,color:$.secondary,paddingTop:4},children:e.subtitle})]}),p("div",{style:{position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center",pointerEvents:"none"},children:p("span",{style:{fontSize:10,color:$.muted,fontStyle:"italic"},children:"Double tap: Toggle \u2022 Triple tap: Close"})})]})}var Xp=({visible:e,onClose:t,children:a,header:s,styles:r={},minHeight:n=jp,maxHeight:o,initialHeight:i=Fp,animatedHeight:l,benchMotion:h,initialMode:b="bottomSheet",onModeChange:S,persistenceKey:f,enablePersistence:m=true,initialFloatingPosition:w,footer:R,footerHeight:V=0,onBack:ne,onMinimize:D,minimizeRequest:y=0,minimizeTargetPosition:Z,initialModalState:L,zIndex:He,disableScrollWrapper:hs=false,background:ta=true,variant:dt="night"})=>{let[Y]=ae(Hp),[aa,sa]=ae(!m),[A,ht]=ae(b),Ue=z(S);Ue.current=S;let[ke,ue]=ae(false),[gt,Ie]=ae(false),[gs,pt]=ae(i),[ee,_e]=ae(()=>Yt({width:it(),height:ts,top:w?.y??(ce()-ts)/2,left:w?.x??0},Y)),[ps,Ve]=ae(false),[fs,ra]=ae(false),bs=ya(),de=z(i),J=z(ee),j=z({x:ee.left,y:ee.top}),Ge=z(null),ft=z(null),te=z(null),he=z([]),X=B(()=>{he.current.forEach(c=>c()),he.current=[]},[]);se(()=>{J.current=ee},[ee]),se(()=>X,[X]);let na=o||ce()-Y.top;se(()=>{if(!m||!f){sa(true);return}let c=true;return(async()=>{let d=await ot.load(f);if(c&&d&&(d.mode&&(ht(d.mode),Ue.current?.(d.mode)),d.panelHeight&&(pt(d.panelHeight),de.current=d.panelHeight),d.dimensions)){let v=Yt(d.dimensions,Y);_e(v),j.current={x:v.left,y:v.top}}c&&sa(true)})(),()=>{c=false}},[f,m]),se(()=>{if(!m||!f||!aa)return;let c=setTimeout(()=>{ot.save(f,{mode:A,panelHeight:de.current,dimensions:ee,isVisible:e})},500);return()=>clearTimeout(c)},[A,gs,ee,e,f,m,aa]),se(()=>{let c=true;return(async()=>{try{let d=be.modal.hintAcknowledged(),v=await N.getItem(d);c&&(Ve(v!=="true"),ra(true))}catch{c&&(Ve(true),ra(true))}})(),()=>{c=false}},[]);let ms=B(async()=>{try{let c=be.modal.hintAcknowledged();await N.setItem(c,"true"),Ve(false)}catch{Ve(false)}},[]),bt=B(()=>{Ie(false),ue(false);let c=A==="bottomSheet"?"floating":"bottomSheet";ht(c),Ue.current?.(c)},[A]);se(()=>{Ie(false),ue(false)},[A]);let ge=B(()=>{if(!D)return;let c={mode:A,panelHeight:de.current,floatingPosition:{x:J.current.left,y:J.current.top},floatingDimensions:{width:J.current.width,height:J.current.height}};m&&f&&ot.saveMinimized(f,c);let d=Z?.x??it()-50,v=Z?.y??ce()-150;if(X(),A==="bottomSheet"){let k=Ge.current;if(!k){D(c);return}let T=ce();he.current.push(ye(300,Fe,O=>{k.style.opacity=String(1-O),k.style.transform=`translateY(${O*T}px)`},()=>D(c)))}else{let k=te.current;if(!k){D(c);return}let T={...j.current};he.current.push(ye(300,Fe,O=>{k.style.opacity=String(1-O);let pe=T.x+(d-T.x)*O,fe=T.y+(v-T.y)*O;k.style.transform=`translate(${pe}px, ${fe}px)`},()=>D(c)))}},[A,D,Z,X,m,f]),oa=z(y);se(()=>{oa.current!==y&&(oa.current=y,ge())},[y,ge]),se(()=>{if(L&&(L.mode&&(ht(L.mode),Ue.current?.(L.mode)),L.panelHeight&&(pt(L.panelHeight),de.current=L.panelHeight),L.floatingDimensions&&L.floatingPosition)){let c={width:L.floatingDimensions.width,height:L.floatingDimensions.height,top:L.floatingPosition.y,left:L.floatingPosition.x};_e(c),j.current={x:L.floatingPosition.x,y:L.floatingPosition.y}}},[L]),Np(()=>{if(e)if(X(),A==="bottomSheet"){let c=Ge.current;if(!c)return;let d=ce();c.style.transform=`translateY(${d}px)`,c.style.opacity="0",he.current.push(ye(300,as,v=>{c.style.transform=`translateY(${(1-v)*d}px)`}),ye(200,Fe,v=>{c.style.opacity=String(v)}))}else{let c=te.current;if(!c)return;j.current={x:J.current.left,y:J.current.top},c.style.transform=`translate(${j.current.x}px, ${j.current.y}px)`,c.style.opacity="0",he.current.push(ye(200,Fe,d=>{c.style.opacity=String(d)}))}},[e,A,X]);let ia=z(0),Oe=z(0),Ee=z(null),Ye=B(()=>{let c=Date.now();c-ia.current>500&&(Oe.current=0),Oe.current++,ia.current=c,Ee.current&&clearTimeout(Ee.current),Ee.current=setTimeout(()=>{Oe.current===2?bt():Oe.current>=3&&D&&ge(),Oe.current=0},300)},[bt,D,ge]);se(()=>()=>{Ee.current&&clearTimeout(Ee.current)},[]);let Je=z({active:false,resizing:false,startY:0,headerOffsetY:0,samples:[]}),ys=B(c=>{if(A!=="bottomSheet"||c.button!==0||c.target.closest('button, a, input, textarea, select, [role="button"], [role="tab"], [role="switch"], [contenteditable="true"], [tabindex]'))return;let d=Je.current;d.active=true,d.resizing=false,d.startY=c.clientY;let v=c.currentTarget.getBoundingClientRect();d.headerOffsetY=c.clientY-v.top,d.samples=[{t:performance.now(),y:c.clientY}],c.currentTarget.setPointerCapture(c.pointerId)},[A]),Ss=B(c=>{let d=Je.current;if(!d.active)return;let v=c.clientY-d.startY;if(!d.resizing&&Math.abs(v)>3&&(d.resizing=true,X(),ue(true)),!d.resizing)return;let k=c.clientY-d.headerOffsetY,T=ce()-k;T=Math.max(n,Math.min(T,na)),de.current=T,ft.current&&(ft.current.style.height=`${T}px`);let O=performance.now();for(d.samples.push({t:O,y:c.clientY});d.samples.length>2&&O-d.samples[0].t>100;)d.samples.shift()},[n,na,X]),vs=B(c=>{let d=Je.current;if(!d.active)return;if(d.active=false,!d.resizing){Ye();return}ue(false);let v=de.current,k=c.clientY-d.startY,T=d.samples[0],O=d.samples[d.samples.length-1];if((O&&T&&O.t>T.t?(O.y-T.y)/(O.t-T.t):0)>.8&&k>50||k>150&&v<=n){let pe=Ge.current;if(X(),pe){let fe=ce();he.current.push(ye(200,Fe,F=>{pe.style.opacity=String(1-F)}),ye(300,as,F=>{pe.style.transform=`translateY(${F*fe}px)`},()=>t()))}else t();return}pt(v)},[n,t,Ye,X]),Cs=B(()=>{let c=Je.current;c.active&&(c.active=false,c.resizing=false,ue(false))},[]),qe=z({active:false,dragging:false,startX:0,startY:0,startPos:{x:0,y:0}}),ws=B(c=>{if(A!=="floating"||ke||c.button!==0||c.target.closest('button, a, input, textarea, select, [role="button"], [role="tab"], [role="switch"], [contenteditable="true"], [tabindex]'))return;let d=qe.current;d.active=true,d.dragging=false,d.startX=c.clientX,d.startY=c.clientY,d.startPos={...j.current},c.currentTarget.setPointerCapture(c.pointerId)},[A,ke]),Ts=B(c=>{let d=qe.current;if(!d.active)return;let v=c.clientX-d.startX,k=c.clientY-d.startY;if(!d.dragging&&Math.abs(v)+Math.abs(k)>5&&(d.dragging=true,Ie(true)),!d.dragging)return;let T=d.startPos.x+v,O=d.startPos.y+k;j.current={x:T,y:O},te.current&&(te.current.style.transform=`translate(${T}px, ${O}px)`)},[]),xs=B(()=>{let c=qe.current;if(!c.active)return;if(c.active=false,!c.dragging){Ye();return}Ie(false);let d=J.current,v=Yt({...d,left:j.current.x,top:j.current.y},Y),k=v.left,T=v.top;j.current={x:k,y:T},te.current&&(te.current.style.transform=`translate(${k}px, ${T}px)`),_e(O=>({...O,left:k,top:T}))},[Y,Ye]),ks=B(()=>{let c=qe.current;c.active&&(c.active=false,c.dragging=false,Ie(false))},[]),mt=z({active:false,corner:"bottomRight",startX:0,startY:0,start:{width:0,height:0,top:0,left:0}}),Is=B(c=>d=>{if(A!=="floating")return;d.stopPropagation();let v=mt.current;v.active=true,v.corner=c,v.startX=d.clientX,v.startY=d.clientY,v.start={...J.current},ue(true),d.currentTarget.setPointerCapture(d.pointerId)},[A]),_s=B(c=>{let d=mt.current;if(!d.active)return;let v=c.clientX-d.startX,k=c.clientY-d.startY;if(Math.abs(v)<.5&&Math.abs(k)<.5)return;let T=Math.max(0,Y.left),O=ce()-Math.max(0,Y.bottom),pe=it()-Math.max(0,Y.right),fe=it()*.25,F=d.start,yt=F.left+F.width,St=F.top+F.height,Ae=F.left,Ke=F.top,ga=yt,vt=St;d.corner==="bottomLeft"?(Ae=Math.max(T,Math.min(F.left+v,yt-fe)),vt=Math.min(O,Math.max(St+k,F.top+je))):(ga=Math.min(pe,Math.max(yt+v,F.left+fe)),vt=Math.min(O,Math.max(St+k,F.top+je)));let Os=Math.max(fe,ga-Ae),Es=Math.max(je,vt-Ke),pa={width:Os,height:Es,left:Ae,top:Ke};J.current=pa,j.current={x:Ae,y:Ke},_e(pa),te.current&&(te.current.style.transform=`translate(${Ae}px, ${Ke}px)`)},[Y.left,Y.right,Y.bottom]),la=B(()=>{let c=mt.current;c.active&&(c.active=false,ue(false),_e(J.current))},[]);if(!e)return p("div",{style:{display:"none"},"aria-hidden":true,children:a},"hidden");let ca=s?.title||"Dev tool panel",_=dt==="night",ua=ta&&_?p("div",{style:{position:"absolute",inset:0,pointerEvents:"none"},"aria-hidden":true,children:p(Tt,{})}):null,da=H("div",{style:{flex:1,minHeight:0,position:"relative",display:"flex",flexDirection:"column",backgroundColor:_?"transparent":P.base,borderBottomLeftRadius:16,borderBottomRightRadius:16,overflow:"hidden",...r.content},children:[ta&&!_?p(Tt,{}):null,hs?p("div",{style:{flex:1,minHeight:0,display:"flex",flexDirection:"column",paddingBottom:V},children:a}):p("div",{style:{flex:1,minHeight:0,overflowY:"auto",paddingBottom:V},children:a}),R?p("div",{style:{position:"absolute",left:0,right:0,bottom:0,backgroundColor:P.base,borderBottomLeftRadius:16,borderBottomRightRadius:16},children:R}):null]}),ha=p("div",{style:{position:"absolute",top:4,right:4,zIndex:10},children:p(qp,{onClose:t,onMinimize:D?ge:void 0,onToggleMode:bt,mode:A})});if(A==="floating"){let c=gt||ke;return H("div",{ref:te,role:"dialog","aria-label":ca,style:{position:"fixed",left:0,top:0,width:ee.width,height:ee.height,transform:`translate(${j.current.x}px, ${j.current.y}px)`,display:"flex",flexDirection:"column",backgroundColor:_?u.color.bg:P.card,borderRadius:_?u.radius.sheet:6,border:_?`1px solid ${u.color.accent}55`:c?`2px solid ${P.primary}`:`1px solid ${P.border}`,boxShadow:_?`0 0 14px ${u.color.accent}38`:c?`0 0 12px ${P.primary}7A`:`0 0 20px ${P.primary}4D`,..._?{overflow:"hidden"}:null,boxSizing:"border-box",zIndex:He??1e3,...r.container},children:[ua,p("div",{onPointerDown:ws,onPointerMove:Ts,onPointerUp:xs,onPointerCancel:ks,style:{borderTopLeftRadius:_?u.radius.sheet:6,borderTopRightRadius:_?u.radius.sheet:6,backgroundColor:_?"transparent":P.card,minHeight:56,border:_?"none":`1px solid ${P.border}`,boxSizing:"border-box",display:"flex",flexDirection:"column",justifyContent:"center",flexShrink:0,touchAction:"none",userSelect:"none",cursor:gt?"grabbing":"grab",position:"relative"},children:p(rs,{header:s,isResizing:gt||ke,mode:A,onMinimize:D?ge:void 0,variant:dt})}),ha,da,["bottomLeft","bottomRight"].map(d=>p("div",{onPointerDown:Is(d),onPointerMove:_s,onPointerUp:la,onPointerCancel:la,style:{position:"absolute",width:30,height:30,bottom:4,...d==="bottomLeft"?{left:4}:{right:4},zIndex:1e3,touchAction:"none",cursor:d==="bottomLeft"?"nesw-resize":"nwse-resize"},children:p("div",{style:{width:20,height:20,borderRadius:10,boxSizing:"border-box",backgroundColor:c?`${$.success}1A`:"transparent",border:c?`2px solid ${$.success}`:"none",boxShadow:c?`0 0 8px ${$.success}99`:"none"}})},d))]},"floating")}return p("div",{style:{position:"fixed",inset:0,zIndex:He??1e3,pointerEvents:"none"},children:p("div",{ref:Ge,style:{position:"absolute",bottom:0,left:0,right:0,pointerEvents:"auto"},children:H("div",{ref:ft,role:"dialog","aria-label":ca,style:{height:de.current,display:"flex",flexDirection:"column",backgroundColor:_?u.color.bg:P.card,borderTopLeftRadius:_?u.radius.sheet:6,borderTopRightRadius:_?u.radius.sheet:6,border:_?`1px solid ${u.color.accent}55`:`1px solid ${P.border}`,boxShadow:_?`0 -4px 10px ${u.color.accent}38`:`0 -4px 12px ${P.primary}33`,..._?{overflow:"hidden"}:null,boxSizing:"border-box",position:"relative",...r.container},children:[ua,p("div",{onPointerDown:ys,onPointerMove:Ss,onPointerUp:vs,onPointerCancel:Cs,style:{borderTopLeftRadius:_?u.radius.sheet:6,borderTopRightRadius:_?u.radius.sheet:6,backgroundColor:_?"transparent":P.card,minHeight:56,border:_?"none":`1px solid ${P.border}`,boxSizing:"border-box",display:"flex",flexDirection:"column",justifyContent:"center",flexShrink:0,touchAction:"none",userSelect:"none",cursor:"ns-resize",position:"relative"},children:p(rs,{header:s,isResizing:ke,mode:A,onMinimize:D?ge:void 0,variant:dt})}),ha,fs&&ps&&!bs&&p(Kp,{onAcknowledge:ms}),da]})})},"bottomSheet")},Qp=Gt(e=>ma()().status!=="admitted"?e.visible?p(es,{}):null:p(Xp,{...e}));import{Children as Zp,useEffect as ef,useRef as tf}from"react";import{Fragment as af,jsx as W,jsxs as lt}from"react/jsx-runtime";function sf({children:e,style:t}){return W(M,{style:[g.sectionLabel,t],children:e})}function rf({children:e,centered:t,tone:a="tertiary",style:s}){let r=Pe.flatten(s),n=!!r&&(r.marginHorizontal!=null||r.margin!=null);return W(M,{style:[g.footnote,n?null:g.footnoteInset,a==="secondary"?g.footnoteSecondary:null,a==="warning"?g.footnoteWarning:null,a==="danger"?g.footnoteDanger:null,t?g.footnoteCentered:null,s],children:e})}function nf({children:e,padded:t,glass:a,style:s}){return W(x,{style:[g.card,a?g.cardGlass:null,t?g.cardPadded:null,s],children:e})}function ns({inset:e=u.rowPadH}){return W(x,{style:[g.separator,{marginLeft:e}]})}function of({children:e,inset:t=u.rowPadH}){let a=Zp.toArray(e);return W(af,{children:a.map((s,r)=>lt(x,{children:[r>0?W(ns,{inset:t}):null,s]},s.key??r))})}var os=56,is=32,ct=22,ls=5,lf=os-ct-ls*2;function cf({value:e,onValueChange:t,disabled:a,testID:s,accessibilityLabel:r}){let n=tf(new kt.Value(e?1:0)).current;return ef(()=>{kt.timing(n,{toValue:e?1:0,duration:200,useNativeDriver:Jh.OS!=="web"}).start()},[e,n]),W(Qe,{activeOpacity:.8,disabled:a,onPress:()=>t(!e),testID:s,accessibilityLabel:r,accessibilityRole:"switch",accessibilityState:{checked:e,disabled:a},hitSlop:{top:8,bottom:8,left:8,right:8},style:[g.switchTrack,e?g.switchTrackOn:null,a?g.switchDisabled:null],children:W(kt.View,{style:[g.switchThumb,e?g.switchThumbOn:null,{transform:[{translateX:n.interpolate({inputRange:[0,1],outputRange:[0,lf]})}]}]})})}function uf({label:e,selected:t,onPress:a,disabled:s,icon:r,testID:n}){return lt(Qe,{activeOpacity:.7,disabled:s||!a,onPress:a,testID:n,style:[g.chip,t?g.chipSelected:null,s?g.chipDisabled:null],children:[r,W(M,{style:[g.chipText,t?g.chipTextSelected:null],children:e})]})}function df({label:e,onPress:t,variant:a="secondary",size:s="lg",icon:r,disabled:n,fullWidth:o=true,testID:i,accessibilityLabel:l}){let h=a==="primary"?u.color.onAccent:a==="tertiary"?u.color.text:a==="destructive"?u.color.danger:u.color.accent;return lt(Qe,{activeOpacity:.7,disabled:n,onPress:t,testID:i,accessibilityRole:"button",accessibilityLabel:l??e,accessibilityState:{disabled:!!n},style:[g.button,s==="md"?g.buttonMd:g.buttonLg,a==="primary"?g.buttonPrimary:a==="ghost"?g.buttonGhost:g.buttonPlate,o?g.buttonFullWidth:null,n?g.buttonDisabled:null],children:[r,W(M,{style:[s==="md"?g.buttonTextMd:g.buttonTextLg,{color:h}],children:e})]})}function hf({tabs:e,activeKey:t,onChange:a,size:s="md",glass:r,testIDPrefix:n}){let o=s==="sm";return W(x,{style:[g.segmentTrack,r?g.segmentTrackGlass:null],children:e.map(i=>{let l=i.key===t;return lt(Qe,{activeOpacity:.7,testID:n?`${n}-${i.key}`:void 0,accessibilityRole:"tab",accessibilityState:{selected:l},accessibilityLabel:i.label,onPress:()=>a(i.key),style:[g.segment,o?g.segmentSm:null,l?r?g.segmentActiveGlass:g.segmentActive:null],children:[W(M,{style:[g.segmentText,o?g.segmentTextSm:null,l?g.segmentTextActive:null],children:i.label}),l?W(x,{style:[g.segmentUnderline,o?g.segmentUnderlineSm:null]}):null]},i.key)})})}function gf({label:e,tone:t="neutral"}){let a=t==="accent"?g.badgeAccent:t==="warning"?g.badgeWarning:t==="danger"?g.badgeDanger:t==="info"?g.badgeInfo:g.badgeNeutral,s=t==="accent"?g.badgeTextAccent:t==="warning"?g.badgeTextWarning:t==="danger"?g.badgeTextDanger:t==="info"?g.badgeTextInfo:g.badgeTextNeutral;return W(x,{style:[g.badge,a],children:W(M,{style:[g.badgeText,s],children:e})})}var g=Pe.create({sectionLabel:{color:u.color.textSecondary,fontSize:u.font.label,fontWeight:"600",letterSpacing:Ca,textTransform:"uppercase",marginBottom:8,marginLeft:u.labelInset},footnote:{color:u.color.textTertiary,fontSize:u.font.caption,fontWeight:"500",lineHeight:u.font.caption*1.4,marginTop:8},footnoteInset:{marginLeft:u.labelInset},footnoteSecondary:{color:u.color.textSecondary},footnoteWarning:{color:u.color.warning},footnoteDanger:{color:u.color.danger},footnoteCentered:{textAlign:"center",marginLeft:0},card:{backgroundColor:u.color.surface,borderRadius:u.radius.card,borderWidth:1,borderColor:u.color.border,overflow:"hidden"},cardGlass:{backgroundColor:u.color.glass,borderColor:u.color.glassBorder},cardPadded:{padding:u.cardPad,gap:10},separator:{height:Pe.hairlineWidth,backgroundColor:u.color.separator},switchTrack:{width:os,height:is,borderRadius:is/2,borderWidth:1,borderColor:u.color.fillTertiary,backgroundColor:u.color.surfaceElevated,paddingHorizontal:ls,justifyContent:"center",overflow:"hidden"},switchTrackOn:{backgroundColor:u.color.accentFill,borderColor:u.color.accentBorderStrong},switchDisabled:{opacity:.4},switchThumb:{width:ct,height:ct,borderRadius:ct/2,backgroundColor:u.color.knob},switchThumbOn:{backgroundColor:u.color.accent},chip:{flexDirection:"row",alignItems:"center",gap:6,paddingHorizontal:14,paddingVertical:9,borderRadius:u.radius.chip,borderWidth:1.5,backgroundColor:u.color.buttonSurface,borderColor:u.color.fillTertiary},chipSelected:{borderColor:u.color.accentBorderStrong},chipDisabled:{opacity:.4},chipText:{fontSize:u.font.body,fontWeight:"500",color:u.color.textSecondary},chipTextSelected:{color:u.color.accent},button:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:8},buttonMd:{height:34,paddingHorizontal:16,borderRadius:17},buttonLg:{height:50,paddingHorizontal:20,borderRadius:25},buttonPrimary:{backgroundColor:u.color.accent},buttonPlate:{backgroundColor:u.color.button},buttonGhost:{backgroundColor:"transparent"},buttonFullWidth:{alignSelf:"stretch"},buttonDisabled:{opacity:.4},buttonTextMd:{fontSize:15,fontWeight:"600"},buttonTextLg:{fontSize:17,fontWeight:"600"},segmentTrack:{flex:1,flexDirection:"row",backgroundColor:u.color.bg,borderRadius:u.radius.row,borderWidth:1,borderColor:u.color.border,padding:3},segment:{flex:1,paddingVertical:8,alignItems:"center",justifyContent:"center",borderRadius:u.radius.segment},segmentTrackGlass:{backgroundColor:u.color.glass,borderColor:u.color.glassBorder},segmentActive:{backgroundColor:u.color.surfaceElevated},segmentActiveGlass:{backgroundColor:u.color.glassElevated},segmentText:{fontSize:u.font.caption,fontWeight:"500",color:u.color.textSecondary},segmentTextActive:{fontWeight:"600",color:u.color.text},segmentUnderline:{position:"absolute",bottom:2,width:24,height:2.5,borderRadius:1.25,backgroundColor:u.color.accent,shadowColor:u.color.accent,shadowOffset:{width:0,height:0},shadowOpacity:.6,shadowRadius:6},segmentSm:{paddingVertical:5},segmentTextSm:{fontSize:12},segmentUnderlineSm:{bottom:1.5,width:20,height:2,borderRadius:1},badge:{paddingHorizontal:8,paddingVertical:4,borderRadius:u.radius.badge,alignSelf:"flex-start"},badgeText:{fontSize:u.font.micro,fontWeight:"600",letterSpacing:.5,textTransform:"uppercase"},badgeAccent:{backgroundColor:u.color.accentSoft},badgeTextAccent:{color:u.color.accent},badgeWarning:{backgroundColor:u.color.warningSoft},badgeTextWarning:{color:u.color.warning},badgeDanger:{backgroundColor:u.color.dangerSoft},badgeTextDanger:{color:u.color.danger},badgeInfo:{backgroundColor:u.color.infoSoft},badgeTextInfo:{color:u.color.info},badgeNeutral:{backgroundColor:u.color.fillSecondary},badgeTextNeutral:{color:u.color.textSecondary}});import{jsx as xe,jsxs as pf}from"react/jsx-runtime";function Qt(e){switch(wt(String(e))){case"dev":return{label:"DEV",backgroundColor:C.warning};case"qa":return{label:"QA",backgroundColor:C.optional};case"staging":return{label:"STAGING",backgroundColor:C.success};case"prod":return{label:"PROD",backgroundColor:C.error};case"local":default:return{label:"LOCAL",backgroundColor:C.info}}}function ff({color:e}){return xe("svg",{width:12,height:12,viewBox:"0 0 24 24","aria-hidden":"true",children:xe("path",{d:"M6 9l6 6 6-6",fill:"none",stroke:e,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}function bf({environment:e,interactive:t=false,onPress:a}){let s=Qt(e);return pf("button",{onClick:t?a:void 0,"aria-label":`Environment: ${s.label}`,style:{display:"flex",flexDirection:"row",alignItems:"center",padding:`6px ${t?4:8}px 6px 8px`,flexShrink:0,background:"none",border:"none",cursor:t?"pointer":"default"},children:[xe("div",{style:{width:8,height:8,borderRadius:4,backgroundColor:s.backgroundColor,marginRight:6,boxShadow:`0 0 4px ${s.backgroundColor}99`}}),xe("span",{style:{fontSize:11,fontWeight:600,color:C.primaryLight,letterSpacing:.5},children:s.label}),t&&xe("span",{style:{marginLeft:2,display:"flex"},children:xe(ff,{color:"#7A8599"})})]})}import{jsx as Se,jsxs as Zt}from"react/jsx-runtime";var mf=140,yf=28,cs=44,Sf=8,vf=24;function ea(e){switch(wt(e)){case"local":return{label:"LOCAL",backgroundColor:C.info};case"dev":return{label:"DEV",backgroundColor:C.warning};case"qa":return{label:"QA",backgroundColor:C.optional};case"staging":return{label:"STAGING",backgroundColor:C.success};case"prod":return{label:"PROD",backgroundColor:C.error};default:return{label:"LOCAL",backgroundColor:C.info}}}function Cf({environment:e,isSelected:t,onPress:a}){let s=ea(e);return Zt(qh,{onPress:a,style:({pressed:r})=>[re.optionContainer,t&&re.optionContainerSelected,r&&re.optionContainerPressed],children:[Zt(x,{style:re.optionLeft,children:[Se(x,{style:[re.optionDot,{backgroundColor:s.backgroundColor},{shadowColor:s.backgroundColor,shadowOffset:{width:0,height:0},shadowOpacity:.6,shadowRadius:4,elevation:2}]}),Se(M,{style:re.optionLabel,children:s.label})]}),t&&Se(wa,{size:14,color:C.success,strokeWidth:3})]})}function wf({hasItems:e,currentEnvironment:t,availableEnvironments:a,onSelect:s,width:r=mf,collapsedContent:n}){let o=Sf+a.length*cs+vf+4,i=Zt(x,{style:re.collapsedEnvBadge,children:[Se(x,{style:[re.collapsedDot,{backgroundColor:ea(t).backgroundColor}]}),Se(M,{style:re.collapsedLabel,children:ea(t).label})]});return Se(Sa,{hasItems:e,width:r,expandedHeight:o,peekHeight:yf,showCount:false,collapsedContent:n||i,collapsedLabel:`Switch environment from ${t}`,children:a.map(l=>Se(Cf,{environment:l,isSelected:l===t,onPress:()=>s(l)},l))})}var re=Pe.create({collapsedEnvBadge:{flexDirection:"row",alignItems:"center",gap:6},collapsedDot:{width:8,height:8,borderRadius:4},collapsedLabel:{fontSize:11,fontWeight:"600",color:C.primaryLight,letterSpacing:.5},optionContainer:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:12,height:cs,width:"100%"},optionContainerSelected:{backgroundColor:"rgba(128, 128, 128, 0.1)"},optionContainerPressed:{backgroundColor:"rgba(128, 128, 128, 0.2)"},optionLeft:{flexDirection:"row",alignItems:"center",flex:1},optionDot:{width:8,height:8,borderRadius:4,marginRight:10},optionLabel:{fontSize:12,fontWeight:"600",color:C.primaryLight,letterSpacing:.5}});import{useState as us}from"react";import{jsx as K,jsxs as ut}from"react/jsx-runtime";var ds=36;function Tf({color:e,flipped:t}){return K("svg",{width:10,height:10,viewBox:"0 0 24 24","aria-hidden":"true",style:{transform:t?"rotate(180deg)":"rotate(0deg)",transition:"transform 200ms ease"},children:K("path",{d:"M18 15l-6-6-6 6",fill:"none",stroke:e,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}function xf(){return K("svg",{width:12,height:12,viewBox:"0 0 24 24","aria-hidden":"true",children:K("path",{d:"M20 6L9 17l-5-5",fill:"none",stroke:"#4AFF9F",strokeWidth:"3",strokeLinecap:"round",strokeLinejoin:"round"})})}function kf({currentEnvironment:e,availableEnvironments:t,onSelect:a}){let[s,r]=us(false),[n,o]=us(null),i=Qt(e),l=t.length*ds;return ut("div",{style:{position:"relative",zIndex:1e3,flexShrink:0},children:[K("div",{style:{position:"absolute",bottom:"100%",left:0,right:0,height:s?l:0,opacity:s?1:0,overflow:"hidden",transition:"height 200ms ease, opacity 200ms ease",backgroundColor:"rgba(8,12,21,0.95)",border:"1px solid #00B8E666",borderBottomWidth:0,borderTopLeftRadius:6,borderTopRightRadius:6,boxShadow:"0 -4px 8px rgba(0,0,0,0.3)"},children:t.map(h=>{let b=Qt(h),S=String(h).toLowerCase()===String(e).toLowerCase();return ut("button",{onClick:()=>{r(false),a(h)},onMouseEnter:()=>o(String(h)),onMouseLeave:()=>o(null),style:{display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%",height:ds,padding:"0 10px",background:S?"rgba(128,128,128,0.1)":n===String(h)?"rgba(128,128,128,0.2)":"none",border:"none",cursor:"pointer"},children:[ut("span",{style:{display:"flex",alignItems:"center"},children:[K("span",{style:{width:6,height:6,borderRadius:3,backgroundColor:b.backgroundColor,marginRight:8}}),K("span",{style:{fontSize:10,fontWeight:600,color:C.primaryLight,letterSpacing:.5},children:b.label})]}),S&&K(xf,{})]},String(h))})}),ut("button",{onClick:()=>r(h=>!h),"aria-expanded":s,"aria-label":`Environment: ${i.label}. Click to switch.`,style:{display:"flex",alignItems:"center",gap:6,padding:"6px 6px 6px 8px",borderRadius:6,borderTopLeftRadius:s?0:6,borderTopRightRadius:s?0:6,backgroundColor:s?"rgba(8,12,21,0.95)":"transparent",border:"none",cursor:"pointer"},children:[K("span",{style:{width:8,height:8,borderRadius:4,backgroundColor:i.backgroundColor,boxShadow:`0 0 4px ${i.backgroundColor}99`}}),K("span",{style:{fontSize:11,fontWeight:600,color:C.primaryLight,letterSpacing:.5},children:i.label}),K(Tf,{color:"#7A8599",flipped:s})]})]})}export{rl as ARROW_BOTTOM_OFFSET,nl as ARROW_HEIGHT,ic as ASSETS_ICON_COLOR,es as AccountSetup,En as ActionCopyButton,Bc as Activity,Kc as ActivityIcon,lo as AddFilterButton,no as AddFilterInput,Wc as AlertCircle,ld as AlertCircleIcon,Fc as AlertOctagon,Uc as AlertTriangle,eu as AlertTriangleIcon,Vu as AskBuoyIcon,rc as AssetsIcon,si as BACKGROUND_PRESETS,Ti as BACKGROUND_STORAGE_KEY,vd as BENCHMARK_ICON_COLOR,Wh as BUOY_SYNTHETIC_MARK,fo as BackButton,Ni as BackgroundSwitcher,bo as Badge,xc as BarChart3,_c as BarChart3Icon,Qh as BaseEventStore,fd as BenchmarkIcon,mh as BenchmarkLegacyIcon,Jc as Bookmark,Qc as Box,ru as BoxIcon,Ap as BubbleSettingsDetail,Ep as BubbleSettingsSection,au as Bug,Hu as BugIcon,Wr as CELLS,Zi as CLIP_OFFSCREEN_CELLS,Wd as CLOCK_TOOL_ICON_COLOR,zl as CONSOLE_ICON_COLOR,Ya as COPY_PAYLOAD_MAX_BYTES,Dl as CameraIcon,bg as ChangeLog,kn as ChangeRow,wa as Check,ou as CheckCircle,cc as CheckCircle2,gd as CheckCircle2Icon,du as CheckCircleIcon,lu as CheckIcon,$c as CheckSquare,sc as CheckSquareIcon,gu as ChevronDown,fu as ChevronDownIcon,mu as ChevronLeft,Su as ChevronLeftIcon,Cu as ChevronRight,Tu as ChevronRightIcon,ku as ChevronUp,$l as ChevronUpIcon,to as ChipStrip,zo as ClipboardHintBanner,Bl as Clock,Ou as ClockIcon,Md as ClockToolIcon,Lc as Cloud,Mc as CloudIcon,wi as CollapsibleSection,Dr as CompactFilterChips,sl as CompactRow,Jr as CompareBar,Mh as ConsoleIcon,Au as Copy,vn as CopyButton,Pu as CopyIcon,xo as CountBadge,va as CyberpunkSectionButton,ii as DEFAULT_BACKGROUND,Xo as DEVTOOLS_CARD_CONSTANTS,Ii as DataInspector,Ta as Database,Ju as DatabaseIcon,Gi as DaylightTunable,$o as DeepFieldTunable,ui as DetailView,on as DetailViewToggle,ti as DevToolsCard,Vr as DiffModeTabs,zu as DockBottom,Uu as Download,Pd as DownloadIcon,pi as DraggableHeader,$i as DynamicFilterView,Rh as ENV_ICON_COLOR,al as EVENT_LIST_PRESET,qu as Edit3,Du as Edit3Icon,Po as EmptyState,Gn as EntityFilterView,Eh as EnvIcon,od as EnvLaptopIcon,bf as EnvironmentIndicator,wf as EnvironmentSelector,kf as EnvironmentSelectorInline,Xr as EventHistoryViewer,Uo as EventListItem,en as EventPickerModal,Vi as EventStepperFooter,iu as EventsIcon,Sa as ExpandablePopover,Qi as ExpandedInfoRow,io as ExportPreview,rd as Eye,Fu as EyeIcon,xa as EyeOff,Yu as EyeOffIcon,bi as FeatureGate,Vl as FileCode,Qu as FileCodeIcon,cd as FileJson,Jd as FileJsonIcon,pd as FileText,ad as FileTextIcon,Sd as Film,zc as FilmIcon,xd as Filter,ao as FilterBadge,id as FilterIcon,ho as FilterList,Zn as FilterSection,Ed as FlaskConical,hd as FlaskConicalIcon,$d as FloatWindow,gl as FloatingTool,ul as FloatingToolDivider,Sl as FloatingToolHost,dl as FloatingToolUserStatus,Hn as FooterButton,Dn as FooterCaption,Wn as FooterMessage,$n as FooterRow,ln as FreeAccountPrompt,Rl as GAME_UI_ALERT_STATES,_l as GameUICollapsibleSection,Al as GameUICompactStats,Ll as GameUIIssuesList,El as GameUIStatusHeader,zd as GitBranch,md as GitBranchIcon,Ud as Globe,Zu as GlobeIcon,yi as GripVerticalIcon,pc as Hand,rh as HandIcon,ql as HardDrive,wd as HardDriveIcon,qd as Hash,_d as HashIcon,ni as HeaderSearchButton,Gc as HelpCircle,Lu as HighlightIcon,ih as HighlightUpdatesIcon,Ku as HighlighterIcon,Ho as HintsProvider,Bs as HistoryEntryRow,Ds as HistoryList,As as HistoryProvider,eh as Home,hc as HomeIcon,ec as IMAGES_ICON_COLOR,Sc as IMAGE_OVERLAY_ICON_COLOR,gc as IMPERSONATE_ICON_COLOR,td as IconBackground,Ru as IconCircle,_u as IconContainer,ju as IconLine,Bu as IconRect,nh as Image,Hc as ImageIcon,fc as ImageOverlayIcon,Xl as ImagesIcon,uc as ImpersonateIcon,uh as Info,Rd as InfoIcon,sn as InfoRow,Tn as InlineCopyButton,Rc as JOTAI_ICON_COLOR,Oc as JotaiIcon,Qp as JsModal,fh as Key,Dd as KeyIcon,oh as LIFECYCLE_TOOL_ICON_COLOR,bh as LOCATION_TOOL_ICON_COLOR,Qr as LOGIN_COMMAND,Fr as LOG_LIST_PRESET,dd as LaptopIcon,vh as Layers,Fd as LayersIcon,ei as LicenseEntryModal,th as LifecycleToolIcon,Ao as LinearFade,xh as Link,Zd as LinkIcon,Kn as ListItem,Zo as LiveSkyTunable,dh as LocationToolIcon,_h as Lock,Nd as LockIcon,Ft as LogLevel,Ft as LogLevelEnum,Ht as LogType,Ht as LogTypeEnum,nn as MAX_PERIOD,ac as Maximize2,Yd as Maximize2Icon,Ro as MethodBadge,Ah as Minus,Qd as MinusIcon,jn as ModalHeader,Un as ModalHintBanner,Fi as MoonlightTunable,Ph as Music,Yc as MusicIcon,Ih as NETWORK_ICON_COLOR,Ca as NIGHT_LABEL_TRACKING,Ad as NOTIFICATIONS_ICON_COLOR,Bh as Navigation,Gd as NavigationIcon,Xu as NetworkGlobeIcon,Th as NetworkIcon,gf as NightBadge,df as NightButton,nf as NightCard,uf as NightChip,rf as NightFootnote,of as NightRows,sf as NightSectionLabel,hf as NightSegmented,ns as NightSeparator,cf as NightSwitch,Do as NoDataEmptyState,jo as NoResultsEmptyState,Vo as NoSearchResultsEmptyState,kd as NotificationsIcon,ki as OTTO_ANCHORS,Ei as OTTO_ANCHOR_SIZE,ci as OTTO_GRID,Wi as OTTO_GROUPS,Pi as OTTO_NOTES,gi as OTTO_PALETTE,Yi as OTTO_REEL,Nr as OTTO_SCENES,mo as OTTO_SCENE_BY_ID,Co as OTTO_SCENE_CROP_H,eo as OTTO_SCENE_H,so as OTTO_SCENE_OTTO,Jn as OTTO_SCENE_PALETTE,Xn as OTTO_SCENE_W,Ci as OTTO_STATES,Bi as OTTO_STATE_NAMES,Ui as OTTO_USES,Vn as Otto,zn as OttoMotionView,An as OttoPixels,ko as OttoSceneFrame,Eo as OttoSceneStill,Pn as OttoStill,Kd as PERMISSIONS_ICON_COLOR,rt as PERSONAL_SETTING_KEYS,Va as PREVIEW_ITEM_RENDER_BYTE_LIMIT,Wl as Palette,sh as PaletteIcon,Ul as Pause,lh as PauseIcon,Vd as PermissionsIcon,Xc as Phone,tu as PhoneIcon,On as Pill,tl as PillBadge,jl as Pin,Jl as Play,gh as PlayIcon,Ql as Plus,yh as PlusIcon,tc as Power,Td as PowerIcon,Ki as PowerToggleButton,Gu as PrimitiveGlobeIcon,ri as ProBadge,xi as ProFeatureBanner,li as ProUpgradeModal,ed as QueryIcon,Xs as REMOTE_RELOAD_DELAY_MS,Io as RadialGlow,wo as RasterLayer,bd as ReactQueryIcon,Mu as ReduxIcon,nc as RefreshCw,wh as RefreshCwIcon,wn as RelativeTime,hh as RenderCountIcon,ah as RenderPulseIcon,yc as Route,wu as RouteDotIcon,jd as RouteIcon,Bd as RouteMapIcon,yu as RoutePathIcon,pu as RoutePinIcon,Iu as RouteTwoPinsIcon,uu as RoutesIcon,ol as SPACING_GAP,nd as ScenariosIcon,lc as Search,Ai as SearchBar,kh as SearchIcon,Yn as SectionHeader,Cd as SentryBugIcon,su as SentryIcon,qa as SentryLogger,dc as Server,yd as ServerIcon,xt as Settings,Oh as SettingsIcon,bc as SettingsSolid,Fa as SettingsSync,vc as Shield,Lh as ShieldIcon,nu as Smartphone,cu as SmartphoneIcon,Ac as Square,Nc as SquareDashed,oc as SquareDashedIcon,Zl as SquareIcon,Xd as StackPulseIcon,Ns as StandaloneHistoryList,Yo as StatsCard,vo as StatusBadge,ai as StatusIndicator,Wu as StorageIcon,Id as StorageStackIcon,To as StorageTypeBadge,fa as Subscribable,Na as TEAM_SETTING_KEYS,dn as TIER_LIMITS,Yl as TIME_MACHINE_ICON_COLOR,an as TRANSPARENT,Bo as TabSelector,mc as TestTube2,$h as TestTube2Icon,gn as TickProvider,oi as TimeDisplay,Hl as TimeMachineIcon,hu as Timer,bu as TimerIcon,qn as ToggleRow,Tt as ToolBackground,Wo as ToolButton,Jo as ToolEmptyState,Ln as ToolFooter,Ua as ToolScreenHeaderContext,Rn as ToolbarClearButton,In as ToolbarCopyButton,vu as Touchpad,xu as TouchpadIcon,Ic as Trash,Tc as Trash2,Nl as Trash2Icon,ch as TrashIcon,Cc as TriangleAlert,ph as TriangleAlertIcon,Oo as TypeBadge,Ec as Unlock,Hd as UnlockIcon,Oi as UpgradeModal,hi as UpgradePrompt,Pc as Upload,Od as UploadIcon,Dc as User,Sh as UserIcon,Ml as Users,Eu as UsersIcon,So as ValueTypeBadge,jr as ViewToggleCards,$u as Volume,Nu as VolumeIcon,Kr as WATER_CELLS,Zr as WATER_FRAMES,Ur as WATER_ROW0,Yr as WATER_ROWS,st as WIRE_DETAIL_LIMIT_BYTES,Pa as WIRE_INLINE_LIMIT_BYTES,jc as Wifi,ud as WifiBifIcon,Ld as WifiCircuitIcon,sd as WifiIcon,ji as WindowControls,No as Wormhole,qc as X,Vc as XCircle,Gl as XCircleIcon,Fl as XIcon,kc as ZUSTAND_ICON_COLOR,Zc as Zap,Kl as ZapIcon,wc as ZustandIcon,Ol as absoluteFill,Ja as add,at as approxJsonSize,ve as assertAccountAccess,_i as backgroundStore,ar as browserRouter,U as buoyColors,cl as calculateTargetPosition,ll as calculateTooltipPosition,ep as canOpenBuoyTools,Ma as capDetail,hp as classifyPreviewItem,Ip as clearEntries,Mo as copyToClipboard,jh as countBuoyListener,_o as createAutoDetectedClipboard,lp as createRestoreScope,Mg as createSyncAdapter,Ug as createToolFactory,fg as createToolStore,yn as cycleIndexes,Rp as definePersistedSetting,Hg as defineToolPreset,$g as detailByIdAction,be as devToolsStorageKeys,Nh as dialColors,ml as dismissFloatingTool,Kg as dispatchToolAction,kl as displayValue,cp as emptyRestoreResult,fp as entityColor,Et as expandKeyedArrays,up as failedRestore,Ra as findKeyPath,hn as flatColors,Ir as flattenObject,Ga as formatBytes,yp as formatDuration,wp as formatHttpStatus,Sp as formatNumber,_r as formatPath,un as formatRelativeTime,Tr as formatValue,bp as formatValuePreview,C as gameUIColors,oe as getAccountAccess,Lo as getAutoDetectedClipboard,hl as getBubbleAnchorPosition,Lp as getBubbleVisibilitySettings,Er as getCachedOptionalModule,yr as getConstructorName,Zs as getDevServerOrigin,Vs as getDeviceInfo,kp as getEntries,pl as getFloatingTools,Tp as getMethodColor,Si as getPreset,Fh as getRealAppState,hr as getRegisteredToolModule,Lr as getRenderCaptureProvider,zh as getSafeAreaInsets,lr as getSafeCurrentPathname,cr as getSafeCurrentRoute,ir as getSafeRouter,il as getScreenCenterY,Fo as getSkyScrub,$r as getStateSnapshotProvider,Pr as getStateSnapshotProviders,Yh as getStorageBackendType,we as getToolAdapters,ap as getToolAttention,Ys as getToolModuleVersion,xr as getTypeColor,ma as getUseAccountAccess,Ri as getUseIsPro,Mi as getUseLicense,zi as getUseTier,vr as getValueSize,fr as getValueType,cn as gridKey,Ha as guardToolAdapter,G as hasAccountAccess,Ot as identityField,q as ignoredPatternsStore,Uh as isDevToolsStorageKey,Sr as isEmpty,ur as isExpoRouterAvailable,ba as isJsonSerializable,Eg as isOnDeviceMarker,Rt as isOverWireBudget,Cr as isPlainObjectUtil,br as isPrimitive,Hi as isProNow,Dt as isToolRegistryReady,sg as isUrlIgnored,Gh as isUsingPersistentStorage,mr as isValidJson,Ce as listShapes,Jg as listSnapshotToolIds,Yg as listToolActions,Gg as listToolIds,Or as loadOptionalModule,Gs as logDeviceInfo,Xe as macOSColors,Lg as memoByIdentity,Da as mergeChangeSources,Ch as monoFont,_n as motionUnits,Rg as newestFitting,u as night,Nn as noWindowDragProps,wt as normalizeEnvironment,Le as notifySubscriberCountChange,Og as onDeviceMarker,Dg as onSettingsApplied,Zg as openBuoyTool,bl as openFloatingTool,fn as ottoCycle,qi as ottoReel,el as ottoRuns,go as ottoSceneBounds,co as ottoSceneRuns,xn as ottoSheets,mi as ottoWaterRows,Il as parseDisplayValue,At as parsePath,xp as parseUrl,wr as parseValue,xg as patchFromPath,N as persistentStorage,fi as presetAt,di as presetIndex,Ba as readParams,Tg as readPath,qg as readToolSnapshot,Ct as realNow,Cn as rectsOf,Dh as refreshGameUIColors,_g as refusalText,er as registerBrowserRouter,yl as registerPersistentFloatingTool,Rr as registerStateSnapshotProvider,Vg as registerToolAdapters,dr as registerToolModules,Qg as registerToolOpener,Ks as reloadApp,Xi as renderOttoFrame,oo as renderOttoScene,Ws as resetPersistedStateCache,pn as resolveEffectiveTier,Qo as resolveListEmptyState,qs as resolveReloadStrategy,Hr as retryAccountAccess,wl as safeStringify,uo as scatter,Qs as scheduleReloadApp,Op as sentryLogger,Di as setExpandableWindowControls,Ar as setRenderCaptureProvider,Go as setSkyScrub,tp as setToolAttention,mp as shallowDiffSummary,De as shapeKind,Me as shapeOf,Cg as shapeSummary,Sg as shapesWereTruncated,Gr as signOutOfBuoy,Pg as sizeOrStub,ro as sizeWarningLevel,dp as skippedRestore,jg as startSettingsSync,Re as subscribeAccountAccess,tr as subscribeBrowserNavigation,fl as subscribeFloatingTools,Hh as subscribeRealAppState,Js as subscribeToStateSnapshotProviders,pr as subscribeToSubscriberCountChanges,sp as subscribeToolAttention,gr as subscriberCountNotifier,kg as suggestedPatch,xl as superJsonDeserialize,Tl as superJsonSerialize,Fg as syncSettingsNow,et as teamSettingsStore,Ag as toWire,Ji as toolTheme,Cp as truncateMiddle,vp as truncatePayload,kr as truncateText,$a as truncatedNote,Lt as typedEditViolations,pp as unionKeys,vg as unshapedLists,ka as urlMatchesIgnoredPattern,$s as useAllHistoryEntries,js as useChangeLog,Qn as useChipTap,Us as useDeviceInfo,Hs as useEventStoreEvents,vi as useFeatureGate,vl as useFilterManager,Pl as useGameUIAlertState,Ko as useHintsContext,ya as useHintsDisabled,Ps as useHistoryAdapter,Rs as useHistoryAdapters,Ls as useHistoryContext,Ms as useHistoryEntryCounts,ug as useIgnoredPatterns,mn as useLimit,zr as useLoop,Fn as useOttoAnchorMotion,Bn as useOttoReel,zs as usePersistedState,yo as usePulse,Sn as useRelativeTime,Cl as useSafeAreaInsets,or as useSafeGlobalSearchParams,rr as useSafePathname,sr as useSafeRouter,nr as useSafeSegments,qo as useSkyScrub,Fs as useSubscribedValue,gg as useTeamList,bn as useTick,Li as useToolBackground,ip as useToolScreenHeader,Xg as waitForToolRegistry,Mn as windowDragProps,po as withBgAlpha,gp as wontApply};
|
package/lib/web/ui.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{$ as a,$a as s,$b as o,Aa as t,Ab as e,Ac as b,Ba as r,Bb as i,Ca as l,Cb as T,Da as n,Db as c,Ea as S,Eb as O,Fa as E,Fb as p,Ga as d,Gb as g,Ha as u,Ia as C,Ja as _,Ka as m,L as R,La as A,M as B,Ma as F,Mb as y,N as P,Na as I,Nb as L,O as w,Oa as N,Ob as D,P as h,Pa as G,Pb as f,Q as U,Qa as W,Qb as k,R as M,Ra as H,Rb as v,S as V,Sa as x,Sb as j,T as K,Ta as Y,Tb as q,U as z,Ua as X,Ub as Z,V as Q,Va as $,Vb as J,W as aa,Wa as sa,Wb as oa,X as ta,Xa as ea,Xb as ba,Y as ra,Ya as ia,Yb as la,Z as Ta,Za as na,Zb as ca,_ as Sa,_a as Oa,_b as Ea,a as pa,aa as da,ab as ga,ac as ua,b as Ca,ba as _a,bb as ma,bc as Ra,c as Aa,ca as Ba,cb as Fa,cc as ya,da as Pa,db as Ia,dc as La,ea as wa,eb as Na,ec as Da,fa as ha,fb as Ga,fc as fa,g as Ua,ga as Wa,gb as ka,gc as Ma,ha as Ha,hb as va,hc as Va,ia as xa,ib as ja,ic as Ka,ja as Ya,jb as qa,jc as za,ka as Xa,kb as Za,kc as Qa,la as $a,lb as Ja,lc as as,ma as ss,mb as os,mc as ts,na as es,nb as bs,nc as rs,oa as is,ob as ls,oc as Ts,pa as ns,pb as cs,pc as Ss,qa as Os,qb as Es,qc as ps,ra as ds,rb as gs,rc as us,sa as Cs,sb as _s,sc as ms,ta as Rs,tb as As,tc as Bs,ua as Fs,ub as ys,uc as Ps,va as Is,vb as Ls,vc as ws,wa as Ns,wb as Ds,wc as hs,xa as Gs,xb as fs,xc as Us,ya as Ws,yb as ks,yc as Ms,za as Hs,zb as vs,zc as Vs}from"./chunks/chunk-
|
|
1
|
+
"use client";import{$ as a,$a as s,$b as o,Aa as t,Ab as e,Ac as b,Ba as r,Bb as i,Ca as l,Cb as T,Da as n,Db as c,Ea as S,Eb as O,Fa as E,Fb as p,Ga as d,Gb as g,Ha as u,Ia as C,Ja as _,Ka as m,L as R,La as A,M as B,Ma as F,Mb as y,N as P,Na as I,Nb as L,O as w,Oa as N,Ob as D,P as h,Pa as G,Pb as f,Q as U,Qa as W,Qb as k,R as M,Ra as H,Rb as v,S as V,Sa as x,Sb as j,T as K,Ta as Y,Tb as q,U as z,Ua as X,Ub as Z,V as Q,Va as $,Vb as J,W as aa,Wa as sa,Wb as oa,X as ta,Xa as ea,Xb as ba,Y as ra,Ya as ia,Yb as la,Z as Ta,Za as na,Zb as ca,_ as Sa,_a as Oa,_b as Ea,a as pa,aa as da,ab as ga,ac as ua,b as Ca,ba as _a,bb as ma,bc as Ra,c as Aa,ca as Ba,cb as Fa,cc as ya,da as Pa,db as Ia,dc as La,ea as wa,eb as Na,ec as Da,fa as ha,fb as Ga,fc as fa,g as Ua,ga as Wa,gb as ka,gc as Ma,ha as Ha,hb as va,hc as Va,ia as xa,ib as ja,ic as Ka,ja as Ya,jb as qa,jc as za,ka as Xa,kb as Za,kc as Qa,la as $a,lb as Ja,lc as as,ma as ss,mb as os,mc as ts,na as es,nb as bs,nc as rs,oa as is,ob as ls,oc as Ts,pa as ns,pb as cs,pc as Ss,qa as Os,qb as Es,qc as ps,ra as ds,rb as gs,rc as us,sa as Cs,sb as _s,sc as ms,ta as Rs,tb as As,tc as Bs,ua as Fs,ub as ys,uc as Ps,va as Is,vb as Ls,vc as ws,wa as Ns,wb as Ds,wc as hs,xa as Gs,xb as fs,xc as Us,ya as Ws,yb as ks,yc as Ms,za as Hs,zb as vs,zc as Vs}from"./chunks/chunk-3S2CBY6A.mjs";import{a as xs}from"./chunks/chunk-OPTY6SMO.mjs";import{a as js,b as Ks,c as Ys,d as qs,e as zs,f as Xs,g as Zs,h as Qs,i as $s,j as Js,k as ao,l as so,m as oo,n as to,o as eo,p as bo}from"./chunks/chunk-XYUAUO57.mjs";import"./chunks/chunk-GF5C5DVX.mjs";import"./chunks/chunk-T3WLUEET.mjs";import{f as ro,h as io,i as lo,j as To,k as no,l as co}from"./chunks/chunk-T2SPCEHP.mjs";import{ud as So}from"./chunks/chunk-7YVWZ4ZK.mjs";import{a as Oo,d as Eo,f as po,g as go}from"./chunks/chunk-CE5U3CSQ.mjs";import"./chunks/chunk-46TKOKMV.mjs";import"./chunks/chunk-DEEKIG2L.mjs";import"./chunks/chunk-3UTMGIUG.mjs";import"./chunks/chunk-5NZOQR6Q.mjs";export{js as ARROW_BOTTOM_OFFSET,Ks as ARROW_HEIGHT,w as ActionCopyButton,Ta as AddFilterButton,ra as AddFilterInput,Qa as BACKGROUND_PRESETS,Ss as BACKGROUND_STORAGE_KEY,pa as BackButton,Bs as BackgroundSwitcher,da as Badge,t as CELLS,Ms as CLIP_OFFSCREEN_CELLS,y as ChangeRow,oa as ChipStrip,Ua as ClipboardHintBanner,cs as CollapsibleSection,a as CompactFilterChips,xs as CompactRow,T as CompareBar,R as CopyButton,Ba as CountBadge,Us as CyberpunkSectionButton,as as DEFAULT_BACKGROUND,Ya as DEVTOOLS_CARD_CONSTANTS,Es as DataInspector,ws as DaylightTunable,Da as DeepFieldTunable,os as DetailView,g as DetailViewToggle,Xa as DevToolsCard,i as DiffModeTabs,bs as DraggableHeader,_s as DynamicFilterView,Vs as EVENT_LIST_PRESET,Na as EmptyState,q as EntityFilterView,c as EventHistoryViewer,Ha as EventListItem,O as EventPickerModal,Ls as EventStepperFooter,Ds as ExpandablePopover,ks as ExpandedInfoRow,la as ExportPreview,ta as FilterBadge,Sa as FilterList,aa as FilterSection,Js as FloatingTool,Zs as FloatingToolDivider,bo as FloatingToolHost,Qs as FloatingToolUserStatus,j as FooterButton,k as FooterCaption,v as FooterMessage,f as FooterRow,no as GAME_UI_ALERT_STATES,ro as GameUICollapsibleSection,lo as GameUICompactStats,To as GameUIIssuesList,io as GameUIStatusHeader,ls as GripVerticalIcon,$a as HeaderSearchButton,p as InfoRow,B as InlineCopyButton,b as LOG_LIST_PRESET,La as LinearFade,Q as ListItem,za as LiveSkyTunable,d as MAX_PERIOD,wa as MethodBadge,V as ModalHeader,K as ModalHintBanner,Ps as MoonlightTunable,Ga as NoDataEmptyState,ka as NoResultsEmptyState,va as NoSearchResultsEmptyState,Os as OTTO_ANCHORS,ds as OTTO_ANCHOR_SIZE,ss as OTTO_GRID,Fs as OTTO_GROUPS,Cs as OTTO_NOTES,es as OTTO_PALETTE,Ns as OTTO_REEL,s as OTTO_SCENES,ga as OTTO_SCENE_BY_ID,ma as OTTO_SCENE_CROP_H,sa as OTTO_SCENE_H,ea as OTTO_SCENE_OTTO,X as OTTO_SCENE_PALETTE,$ as OTTO_SCENE_W,ns as OTTO_STATES,Rs as OTTO_STATE_NAMES,Is as OTTO_USES,Y as Otto,H as OttoMotionView,N as OttoPixels,Fa as OttoSceneFrame,Ia as OttoSceneStill,G as OttoStill,L as Pill,vs as PillBadge,fs as PowerToggleButton,ya as RadialGlow,Ra as RasterLayer,Ys as SPACING_GAP,gs as SearchBar,z as SectionHeader,xa as StatsCard,_a as StatusBadge,Za as StatusIndicator,Aa as StorageTypeBadge,E as TRANSPARENT,ha as TabSelector,Ja as TimeDisplay,Z as ToggleRow,ms as ToolBackground,Wa as ToolButton,ja as ToolEmptyState,D as ToolFooter,h as ToolbarClearButton,P as ToolbarCopyButton,Pa as TypeBadge,Ca as ValueTypeBadge,e as ViewToggleCards,n as WATER_CELLS,S as WATER_FRAMES,r as WATER_ROW0,l as WATER_ROWS,ys as WindowControls,fa as Wormhole,ps as backgroundStore,po as buoyColors,Xs as calculateTargetPosition,zs as calculateTooltipPosition,m as cycleIndexes,go as dialColors,to as dismissFloatingTool,C as flatColors,Eo as gameUIColors,$s as getBubbleAnchorPosition,ao as getFloatingTools,Ts as getPreset,qs as getScreenCenterY,Ma as getSkyScrub,u as gridKey,Oo as macOSColors,So as monoFont,I as motionUnits,M as noWindowDragProps,oo as openFloatingTool,_ as ottoCycle,Gs as ottoReel,Hs as ottoRuns,Oa as ottoSceneBounds,na as ottoSceneRuns,F as ottoSheets,is as ottoWaterRows,rs as presetAt,ts as presetIndex,A as rectsOf,eo as registerPersistentFloatingTool,Ws as renderOttoFrame,ia as renderOttoScene,qa as resolveListEmptyState,ca as scatter,As as setExpandableWindowControls,Va as setSkyScrub,ba as sizeWarningLevel,so as subscribeFloatingTools,hs as toolTheme,J as useChipTap,co as useGameUIAlertState,o as useLoop,x as useOttoAnchorMotion,W as useOttoReel,ua as usePulse,Ka as useSkyScrub,us as useToolBackground,U as windowDragProps,Ea as withBgAlpha};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@buoy-gg/shared-ui",
|
|
3
|
-
"version": "7.0.
|
|
3
|
+
"version": "7.0.49",
|
|
4
4
|
"description": "Shared UI components, hooks, and utilities",
|
|
5
5
|
"main": "lib/commonjs/index.js",
|
|
6
6
|
"module": "lib/module/index.js",
|
|
@@ -225,11 +225,11 @@
|
|
|
225
225
|
],
|
|
226
226
|
"sideEffects": false,
|
|
227
227
|
"dependencies": {
|
|
228
|
-
"@buoy-gg/floating-tools-
|
|
229
|
-
"@buoy-gg/floating-tools-
|
|
228
|
+
"@buoy-gg/floating-tools-core": "^7.0.49",
|
|
229
|
+
"@buoy-gg/floating-tools-react": "^7.0.49"
|
|
230
230
|
},
|
|
231
231
|
"peerDependencies": {
|
|
232
|
-
"@buoy-gg/license": "7.0.
|
|
232
|
+
"@buoy-gg/license": "7.0.49",
|
|
233
233
|
"react": "*"
|
|
234
234
|
},
|
|
235
235
|
"peerDependenciesMeta": {
|
|
@@ -262,7 +262,7 @@
|
|
|
262
262
|
"expo-clipboard": "~7.1.5",
|
|
263
263
|
"react-native-safe-area-context": "^5.6.2",
|
|
264
264
|
"typescript": "~5.8.3",
|
|
265
|
-
"@buoy-gg/license": "^7.0.
|
|
265
|
+
"@buoy-gg/license": "^7.0.49"
|
|
266
266
|
},
|
|
267
267
|
"react-native-builder-bob": {
|
|
268
268
|
"source": "src",
|