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