@unifold/connect-react-native 0.1.51 → 0.1.52

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
- 'use strict';var Ss=require('react'),reactNative=require('react-native'),ir=require('react-native-svg'),jsxRuntime=require('react/jsx-runtime'),reactNativeGestureHandler=require('react-native-gesture-handler'),sm=require('react-native-reanimated'),stripeReactNative=require('@stripe/stripe-react-native'),xp=require('@react-native-async-storage/async-storage'),uw=require('expo-constants'),CS=require('react-native-qrcode-svg/src/genMatrix'),reactNativeWebview=require('react-native-webview');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var Ss__namespace=/*#__PURE__*/_interopNamespace(Ss);var ir__default=/*#__PURE__*/_interopDefault(ir);var sm__default=/*#__PURE__*/_interopDefault(sm);var xp__default=/*#__PURE__*/_interopDefault(xp);var uw__default=/*#__PURE__*/_interopDefault(uw);var CS__default=/*#__PURE__*/_interopDefault(CS);var Yf=e=>{throw TypeError(e)};var Jy=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var Lu=(e,t,r)=>t.has(e)||Yf("Cannot "+r);var g=(e,t,r)=>(Lu(e,t,"read from private field"),r?r.call(e):t.get(e)),re=(e,t,r)=>t.has(e)?Yf("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),H=(e,t,r,o)=>(Lu(e,t,"write to private field"),t.set(e,r),r),Ct=(e,t,r)=>(Lu(e,t,"access private method"),r);var Sl=(e,t,r,o)=>({set _(n){H(e,t,n);},get _(){return g(e,t,o)}});var Bu={light:{background:"#FFFFFF",card:"#F8FAFC",cardHover:"#F1F5F9",foreground:"#0F172A",foregroundMuted:"#64748B",foregroundSubtle:"#94A3B8",border:"#E2E8F0",borderSecondary:"#CBD5E1",primary:"#3B82F6",primaryForeground:"#FFFFFF",success:"#22C55E",successBackground:"#DCFCE7",warning:"#F59E0B",warningBackground:"#FEF3C7",error:"#EF4444",errorBackground:"#FEE2E2",overlay:"rgba(0, 0, 0, 0.5)"},dark:{background:"#2D2C2F",card:"#3A393C",cardHover:"#48474A",foreground:"#F8FAFC",foregroundMuted:"#94A3B8",foregroundSubtle:"#64748B",border:"#38383A",borderSecondary:"#48484A",primary:"#3B82F6",primaryForeground:"#FFFFFF",success:"#22C55E",successBackground:"rgba(34, 197, 94, 0.1)",warning:"#F59E0B",warningBackground:"rgba(245, 158, 11, 0.1)",error:"#EF4444",errorBackground:"rgba(239, 68, 68, 0.1)",overlay:"rgba(0, 0, 0, 0.7)"}},Au=Bu;function Bc(e,t){return t?{...e,...t,shadowOffset:t.shadowOffset??e.shadowOffset,backShadowOffset:t.backShadowOffset??e.backShadowOffset}:e}function Tl(e,t,r){let o=r?t?.[r]:void 0,n=(p,h,T)=>{let d=o?.[p]?.[h];if(d!==void 0)return d;let m=t?.[p]?.[h];return m!==void 0?m:T},i={backgroundColor:n("card","backgroundColor",e.card),titleColor:n("card","titleColor",e.foreground),subtitleColor:n("card","subtitleColor",e.foregroundMuted),labelColor:n("card","labelColor",e.foregroundMuted),headerColor:n("card","headerColor",e.foregroundMuted),labelRightColor:n("card","labelRightColor",e.foregroundMuted),labelHighlightRightColor:n("card","labelHighlightRightColor",e.warning),textRightColor:n("card","textRightColor",e.foreground),subtextRightColor:n("card","subtextRightColor",e.foregroundMuted),rowLeftLabel:n("card","rowLeftLabel",e.foregroundMuted),rowRightLabel:n("card","rowRightLabel",e.foreground),iconColor:n("card","iconColor",e.primary),iconBackgroundColor:n("card","iconBackgroundColor",e.primary+"26"),actionColor:n("card","actionColor",e.foregroundMuted),actionIcon:n("card","actionIcon",e.foregroundMuted),descriptionColor:n("card","descriptionColor",e.foregroundMuted),borderRadius:n("card","borderRadius",12),borderWidth:n("card","borderWidth",0),borderColor:n("card","borderColor",e.border),shadowColor:n("card","shadowColor","#000"),shadowOffset:n("card","shadowOffset",{width:0,height:-4}),shadowOpacity:n("card","shadowOpacity",0),shadowRadius:n("card","shadowRadius",12),elevation:n("card","elevation",0),iconContainerBorderRadius:n("card","iconContainerBorderRadius",12),backShadowColor:"transparent",backShadowOffset:{top:4,left:4,right:-4,bottom:-4},backShadowSpacing:8},s=(o?.depositMenu??t?.depositMenu)?.card,a=(o?.transferCrypto??t?.transferCrypto)?.depositAddress?.card,l=(o?.depositCard??t?.depositCard)?.quoteProvider?.card,c=(o?.depositTracker??t?.depositTracker)?.executionRow?.card;return {header:{titleColor:n("header","titleColor",e.foreground),buttonColor:n("header","buttonColor",e.foreground)},card:i,input:{backgroundColor:n("input","backgroundColor",n("search","backgroundColor",e.card)),textColor:n("input","textColor",n("search","inputColor",e.foreground)),placeholderColor:n("input","placeholderColor",n("search","placeholderColor",e.foregroundMuted)),borderColor:n("input","borderColor",e.border),borderRadius:n("input","borderRadius",n("search","borderRadius",8)),borderWidth:n("input","borderWidth",1)},button:{primaryBackground:n("button","primaryBackground",e.primary),primaryText:n("button","primaryText",e.primaryForeground),secondaryBackground:n("button","secondaryBackground",e.card),secondaryText:n("button","secondaryText",e.foreground),borderRadius:n("button","borderRadius",12),borderWidth:n("button","borderWidth",0),borderColor:n("button","borderColor",e.border)},container:{titleColor:n("container","titleColor",e.foreground),subtitleColor:n("container","subtitleColor",e.foregroundMuted),actionColor:n("container","actionColor",e.foregroundMuted),actionTitle:n("container","actionTitle",e.foregroundMuted),buttonColor:n("container","buttonColor",e.primary),buttonTitleColor:n("container","buttonTitleColor",e.primaryForeground),iconBackgroundColor:n("container","iconBackgroundColor",e.success),iconColor:n("container","iconColor",e.foreground)},search:{backgroundColor:n("search","backgroundColor",e.card),inputColor:n("search","inputColor",e.foreground),placeholderColor:n("search","placeholderColor",e.foregroundMuted),borderRadius:n("search","borderRadius",8)},list:{titleSectionColor:n("list","titleSectionColor",e.foregroundMuted),rowBorderRadius:n("list","rowBorderRadius",12)},badge:{borderRadius:n("badge","borderRadius",8)},sheet:{shadowColor:n("sheet","shadowColor","#000"),shadowOffset:n("sheet","shadowOffset",{width:0,height:-4}),shadowOpacity:n("sheet","shadowOpacity",.1),shadowRadius:n("sheet","shadowRadius",12),elevation:n("sheet","elevation",16)},depositMenu:{card:Bc(i,s)},transferCrypto:{depositAddress:{card:Bc(i,a)}},depositCard:{quoteProvider:{card:Bc(i,l)}},depositTracker:{executionRow:{card:Bc(i,c)}}}}function Wu(e,t,r){let n={...Bu[e]};return r&&(n.primary=r),t&&(n={...n,...t}),n}var Eu=Ss.createContext(null);function L(){let e=Ss.useContext(Eu);if(!e){let t=Au.dark;return {mode:"dark",colors:t,fonts:{regular:void 0,medium:void 0,semibold:void 0,bold:void 0},components:Tl(t,void 0,"dark"),isDark:true}}return e}function St({size:e=56,strokeWidth:t=3,children:r,iconSize:o,style:n,gradientFrom:i,gradientTo:s}){let{colors:a}=L(),l=i??a.primary,c=s??a.primary,p=Ss.useRef(new reactNative.Animated.Value(0)).current,h=Ss.useId(),T=Ss.useMemo(()=>`circularProgressGrad_${h.replace(/[^a-zA-Z0-9_-]/g,"")}`,[h]),d=(e-t)/2,m=2*Math.PI*d,b=e/2,v=o??Math.max(0,Math.round(e-t*2-8)),x=(e-v)/2;Ss.useEffect(()=>{let R=reactNative.Animated.loop(reactNative.Animated.timing(p,{toValue:1,duration:1500,easing:reactNative.Easing.linear,useNativeDriver:true})),w=requestAnimationFrame(()=>R.start());return ()=>{cancelAnimationFrame(w),R.stop();}},[p]);let k=p.interpolate({inputRange:[0,1],outputRange:["0deg","360deg"]});return jsxRuntime.jsxs(reactNative.View,{style:[{width:e,height:e},n],children:[jsxRuntime.jsx(reactNative.Animated.View,{style:{position:"absolute",top:0,left:0,width:e,height:e,transform:[{rotate:k}]},children:jsxRuntime.jsxs(ir__default.default,{width:e,height:e,children:[jsxRuntime.jsx(ir.Defs,{children:jsxRuntime.jsxs(ir.LinearGradient,{id:T,x1:"0%",y1:"0%",x2:"100%",y2:"0%",children:[jsxRuntime.jsx(ir.Stop,{offset:"0%",stopColor:l}),jsxRuntime.jsx(ir.Stop,{offset:"100%",stopColor:c})]})}),jsxRuntime.jsx(ir.Circle,{cx:b,cy:b,r:d,stroke:`url(#${T})`,strokeWidth:t,fill:"none",strokeDasharray:`${m*.75} ${m*.25}`,strokeLinecap:"round",rotation:-90,origin:`${b}, ${b}`})]})}),r!=null?jsxRuntime.jsx(reactNative.View,{style:{position:"absolute",top:x+1.5,left:x,width:v,height:v,alignItems:"center",justifyContent:"center"},children:r}):null]})}function zu({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:jsxRuntime.jsx(ir.Path,{d:"M13 2L3 14h9l-1 8 10-12h-9l1-8z",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})})}function la({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Rect,{x:"1",y:"4",width:"22",height:"16",rx:"2",ry:"2",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"1",y1:"10",x2:"23",y2:"10",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function go({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Circle,{cx:"12",cy:"12",r:"10",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Polyline,{points:"12 6 12 12 16 14",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function kl({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Line,{x1:"19",y1:"12",x2:"5",y2:"12",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Polyline,{points:"12 19 5 12 12 5",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function vt({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Line,{x1:"18",y1:"6",x2:"6",y2:"18",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"6",y1:"6",x2:"18",y2:"18",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function Wr({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:jsxRuntime.jsx(ir.Polyline,{points:"9 18 15 12 9 6",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})})}function ca({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:jsxRuntime.jsx(ir.Polyline,{points:"15 18 9 12 15 6",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})})}function lr({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:jsxRuntime.jsx(ir.Polyline,{points:"6 9 12 15 18 9",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})})}function fn({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Rect,{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function ut({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:jsxRuntime.jsx(ir.Polyline,{points:"20 6 9 17 4 12",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})})}function Wi({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Circle,{cx:"12",cy:"12",r:"10",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"12",y1:"8",x2:"12",y2:"12",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"12",y1:"16",x2:"12.01",y2:"16",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function xl({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Line,{x1:"12",y1:"2",x2:"12",y2:"6",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"12",y1:"18",x2:"12",y2:"22",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"4.93",y1:"4.93",x2:"7.76",y2:"7.76",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"16.24",y1:"16.24",x2:"19.07",y2:"19.07",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"2",y1:"12",x2:"6",y2:"12",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"18",y1:"12",x2:"22",y2:"12",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"4.93",y1:"19.07",x2:"7.76",y2:"16.24",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"16.24",y1:"7.76",x2:"19.07",y2:"4.93",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function Xo({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Polyline,{points:"15 3 21 3 21 9",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"10",y1:"14",x2:"21",y2:"3",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function mn({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Line,{x1:"12",y1:"1",x2:"12",y2:"23",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function da({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Polyline,{points:"14 2 14 8 20 8",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"16",y1:"13",x2:"8",y2:"13",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"16",y1:"17",x2:"8",y2:"17",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Polyline,{points:"10 9 9 9 8 9",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function Pn({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:jsxRuntime.jsx(ir.Polyline,{points:"18 15 12 9 6 15",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})})}function ua({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Polyline,{points:"23 4 23 10 17 10",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Polyline,{points:"1 20 1 14 7 14",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function hn({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Circle,{cx:"12",cy:"12",r:"10",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"12",y1:"16",x2:"12",y2:"12",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"12",y1:"8",x2:"12.01",y2:"8",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function To({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M9 12l2 2 4-4",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function Wc({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M3 7V5a2 2 0 0 1 2-2h2",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M17 3h2a2 2 0 0 1 2 2v2",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M21 17v2a2 2 0 0 1-2 2h-2",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M7 21H5a2 2 0 0 1-2-2v-2",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M8 14s1.5 2 4 2 4-2 4-2",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M9 9h.01",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M15 9h.01",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function Ec({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function vl({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M5.43 5.43A8.06 8.06 0 0 0 4 10c0 6 8 12 8 12a29.94 29.94 0 0 0 5-5",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M19.18 13.52A8.66 8.66 0 0 0 20 10a8 8 0 0 0-8-8 7.88 7.88 0 0 0-3.52.82",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M9.13 9.13A2.78 2.78 0 0 0 9 10a3 3 0 0 0 3 3 2.78 2.78 0 0 0 .87-.13",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M14.9 9.25a3 3 0 0 0-2.15-2.16",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"2",y1:"2",x2:"22",y2:"22",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function em({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M15 2H9a1 1 0 0 0-1 1v2c0 .6.4 1 1 1h6c.6 0 1-.4 1-1V3c0-.6-.4-1-1-1Z",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2M16 4h2a2 2 0 0 1 2 2v2",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M11 14h10",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M17 10l4 4-4 4",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function tm({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Circle,{cx:12,cy:5,r:1,stroke:t,strokeWidth:r,fill:t}),jsxRuntime.jsx(ir.Circle,{cx:12,cy:12,r:1,stroke:t,strokeWidth:r,fill:t}),jsxRuntime.jsx(ir.Circle,{cx:12,cy:19,r:1,stroke:t,strokeWidth:r,fill:t})]})}function rm({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Polyline,{points:"16 17 21 12 16 7",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:21,y1:12,x2:9,y2:12,stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function om({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M21 12V7H5a2 2 0 0 1 0-4h14v4",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M3 5v14a2 2 0 0 0 2 2h16v-5",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M18 12a2 2 0 0 0 0 4h4v-4h-4z",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function nm({height:e=24,color:t="#011e0f"}){let o=e*2.985416666666667;return jsxRuntime.jsxs(ir__default.default,{width:o,height:e,viewBox:"0 0 71.65 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M36.12,3.68c0-1.13.95-2.04,2.07-2.04s2.07.92,2.07,2.04-.92,2.07-2.07,2.07-2.07-.92-2.07-2.07ZM29.98,1.92h3.6v20.16h-3.6s0-20.16,0-20.16ZM40.01,7.68h-3.63v14.4h3.63V7.68ZM66.1,14.39c2.73-1.68,4.59-4.18,5.32-6.72h-3.63c-.95,2.42-3.12,4.24-5.5,5.01V1.92h-3.63v20.16h3.63v-6c2.77.69,4.96,3.09,5.71,6h3.65c-.56-3.05-2.64-5.91-5.55-7.68ZM46.44,9.29c.95-1.26,2.8-2,4.31-2,2.8,0,5.12,2.05,5.13,5.15v9.63h-3.63v-8.83c0-1.27-.57-2.74-2.4-2.74-2.16,0-3.4,1.92-3.4,4.16v7.43h-3.63V7.69h3.63v1.6Z",fill:t}),jsxRuntime.jsx(ir.Circle,{cx:12,cy:12,r:12,fill:"#00d66f"}),jsxRuntime.jsx(ir.Path,{d:"M11.45,4.8h-3.7c.72,3.01,2.82,5.58,5.45,7.2-2.64,1.62-4.73,4.19-5.45,7.2h3.7c.92-2.78,3.46-5.2,6.58-5.7v-3.01c-3.12-.49-5.66-2.91-6.58-5.69Z",fill:"#011e0f"})]})}function pa({children:e,mode:t="auto",accentColor:r,theme:o,fontFamily:n,fonts:i,components:s}){let a=reactNative.useColorScheme(),l=Ss.useMemo(()=>t==="auto"?a==="dark"?"dark":"light":t,[t,a]),c=Ss.useMemo(()=>{let d=o?.[l];return Wu(l,d,r)},[l,o,r]),p=Ss.useMemo(()=>Tl(c,s,l),[c,s,l]),h=Ss.useMemo(()=>i?{regular:i.regular||n,medium:i.medium||n,semibold:i.semibold||n,bold:i.bold||n}:n?{regular:n,medium:n,semibold:n,bold:n}:{regular:void 0,medium:void 0,semibold:void 0,bold:void 0},[n,i]),T=Ss.useMemo(()=>({mode:l,colors:c,fonts:h,components:p,isDark:l==="dark"}),[l,c,h,p]);return jsxRuntime.jsx(Eu.Provider,{value:T,children:e})}var Pl={damping:28,stiffness:300,mass:.8},Rb=80,Ib=500;function Et({visible:e,onClose:t,children:r,closeOnBackdropPress:o=true,onBackdropPress:n,enablePanDownToClose:i=true,showHandle:s=true,heightPercent:a,maxHeightPercent:l,startExpanded:c=false,noPadding:p=false,borderTopLeftRadius:h=24,borderTopRightRadius:T=24,marginHorizontal:d,marginBottom:m,overlay:b,useModal:v=true}){let{colors:x}=L(),{height:k}=reactNative.useWindowDimensions(),R=Ss.useRef(k);k>R.current&&(R.current=k);let w=reactNative.Platform.OS==="android"?R.current:k,[I,f]=Ss.useState(false),u=Ss.useRef(e);u.current=e;let S=Ss.useRef(0),y=a!=null&&a>=1,F=y||p?0:reactNative.Platform.OS==="ios"?34:24,B=l!=null&&a!=null&&l>a,D=a!=null?(B?l:a)*w:void 0,V=B?(l-a)*w:0,A=c?0:V,M=sm.useSharedValue(w),Q=Ss.useRef(null),We=Ss.useCallback(()=>{Q.current&&(clearTimeout(Q.current),Q.current=null),u.current||f(false);},[]);Ss.useEffect(()=>{e?(Q.current&&(clearTimeout(Q.current),Q.current=null),f(true),M.value=sm.withSpring(A,Pl)):I&&(M.value=sm.withTiming(w,{duration:250},Z=>{Z&&sm.runOnJS(We)();}),Q.current=setTimeout(()=>{Q.current=null,We();},350));},[e]),Ss.useEffect(()=>()=>{Q.current&&clearTimeout(Q.current);},[]),Ss.useEffect(()=>{I&&e&&(M.value=sm.withSpring(A,Pl));},[A,B]);let q=Ss.useCallback(()=>{o&&(n??t)();},[o,n,t]),Ue=Ss.useMemo(()=>{if(!(!i&&!B))return reactNative.PanResponder.create({onStartShouldSetPanResponder:()=>true,onMoveShouldSetPanResponder:()=>true,onPanResponderGrant:()=>{S.current=M.value;},onPanResponderMove:(Z,ce)=>{if(Math.abs(ce.dy)<4)return;let U=S.current+ce.dy;M.value=Math.max(0,U);},onPanResponderRelease:(Z,ce)=>{if(!(Math.abs(ce.dy)<4)){if(i&&(ce.dy>Rb||ce.vy>Ib)){t();return}if(B){let U=V/2,Se=M.value<U?0:V;M.value=sm.withSpring(Se,Pl);}else M.value=sm.withSpring(A,Pl);}},onPanResponderTerminate:()=>{M.value=sm.withSpring(A,Pl);}}).panHandlers},[i,B,V,A,M,t]),J=sm.useAnimatedStyle(()=>({transform:[{translateY:M.value}]})),ie=sm.useAnimatedStyle(()=>({opacity:sm.interpolate(M.value,[0,w*.5,w],[.5,.25,0],sm.Extrapolation.CLAMP)}));if(!I)return null;let ee=jsxRuntime.jsxs(reactNative.View,{style:[ii.root,!v&&ii.noModalRoot],pointerEvents:e?"auto":"none",children:[jsxRuntime.jsx(sm__default.default.View,{style:[ii.backdrop,ie],pointerEvents:e?"auto":"none",children:jsxRuntime.jsx(reactNative.Pressable,{style:reactNative.StyleSheet.absoluteFill,onPress:q})}),jsxRuntime.jsxs(sm__default.default.View,{style:[ii.sheet,J,{height:D,backgroundColor:x.background,borderTopLeftRadius:y?0:h,borderTopRightRadius:y?0:T,...d?{marginHorizontal:d,marginBottom:m??d+(reactNative.Platform.OS==="ios"?24:16),borderBottomLeftRadius:h,borderBottomRightRadius:T}:void 0}],children:[jsxRuntime.jsxs(reactNativeGestureHandler.GestureHandlerRootView,{style:D!=null?ii.gestureRoot:ii.gestureRootAuto,children:[s&&jsxRuntime.jsx(reactNative.View,{style:ii.handleContainer,pointerEvents:"none",children:jsxRuntime.jsx(reactNative.View,{style:[ii.handle,{backgroundColor:x.foreground+"33"}]})}),r,F>0&&jsxRuntime.jsx(reactNative.View,{style:{height:F}})]}),Ue&&jsxRuntime.jsx(reactNative.View,{...Ue,style:ii.dragOverlay})]})]});return v?jsxRuntime.jsxs(reactNative.Modal,{transparent:true,visible:true,animationType:"none",onRequestClose:t,children:[ee,b]}):ee}var lm={position:"absolute",left:0,right:0,top:0,bottom:0},ii=reactNative.StyleSheet.create({root:{flex:1,justifyContent:"flex-end"},noModalRoot:{...lm,zIndex:9999},backdrop:{...lm,backgroundColor:"#000"},sheet:{overflow:"hidden"},gestureRoot:{flex:1},gestureRootAuto:{flexShrink:1},handleContainer:{alignItems:"center",paddingTop:10,paddingBottom:4,zIndex:1},dragOverlay:{position:"absolute",top:0,left:0,right:0,height:40,zIndex:2},handle:{width:36,height:5,borderRadius:2.5}}),Lt=Ss__namespace.default.forwardRef((e,t)=>jsxRuntime.jsx(reactNative.ScrollView,{ref:t,...e}));Lt.displayName="BottomSheetScrollView";function fa(e){return jsxRuntime.jsx(reactNative.FlatList,{...e})}var _b="https://api.unifold.io",Hu="__UnifoldDevApiBaseUrl__",$r="pk_test_123",Uc={},Fl=["ethereum","solana","bitcoin","n1"];function Pb(){if(typeof __DEV__>"u"||!__DEV__||typeof globalThis>"u")return;let e=globalThis[Hu];if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function yr(){return Pb()??_b}function Nc(e){if(e.publishableKey!==void 0){if(!e.publishableKey||e.publishableKey.trim()==="")throw new Error("Unifold SDK: publishableKey cannot be empty. Please provide a valid publishable key.");!e.publishableKey.startsWith("pk_test_")&&!e.publishableKey.startsWith("pk_live_")&&console.warn('Unifold SDK: publishableKey should start with "pk_test_" or "pk_live_". Please ensure you are using a valid publishable key.'),$r=e.publishableKey;}e.defaultConfig&&(Uc=e.defaultConfig);}function dm(e){if(typeof __DEV__>"u"||!__DEV__){console.warn("[Unifold] setDevApiUrl() is only available in development mode");return}if(typeof globalThis>"u")return;let t=e.trim();t.length>0?globalThis[Hu]=t:delete globalThis[Hu];}function Dl(){return yr()}function Hc(){return $r}function ro(e){if(!e||e.trim()==="")throw new Error("Unifold SDK: No publishable key configured. Please provide a valid publishable key via setApiConfig() or pass it directly to the API function.");e==="pk_test_123"&&console.warn('Unifold SDK: Using default test key "pk_test_123". This should only be used for local development. Please use a real publishable key in production.');}function rr(e){let t=e.startsWith("/")?e:`/${e}`;return `${yr()}/api/public${t}`}function ne(e){return e?e.includes("localhost")||e.includes("127.0.0.1")?e.replace(/https?:\/\/(localhost|127\.0\.0\.1)(:\d+)?/,yr()):e.startsWith("http://")||e.startsWith("https://")?e:e.startsWith("/api/public/")?`${yr()}${e}`:`${yr()}/api/public${e}`:""}async function Uo(e,t){if(!e?.external_user_id)throw new Error("external_user_id is required");let r=e?.recipient_address||Uc.recipientAddress;if(!r)throw new Error("[Unifold] recipient_address is required for createDepositAddress. Pass recipientAddress in your beginDeposit() config.");let o={external_user_id:e.external_user_id,destination_chain_type:e?.destination_chain_type||"ethereum",destination_chain_id:e?.destination_chain_id||Uc.destinationChainId||"8453",destination_token_address:e?.destination_token_address||Uc.destinationTokenAddress||"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",recipient_address:r,...e?.action_type&&{action_type:e.action_type},client_metadata:e?.client_metadata||{}},n=t||$r;ro(n);let i=await fetch(`${yr()}/v1/public/deposit_addresses`,{method:"POST",headers:{accept:"application/json","x-publishable-key":n,"Content-Type":"application/json"},body:JSON.stringify(o)});if(!i.ok)throw new Error(`Failed to create deposit address: ${i.statusText}`);return await i.json()}function _o(e,t){return e.find(r=>r.chain_type===t)}async function gn(e,t,r){let o=t||$r;ro(o);let n=await fetch(`${yr()}/v1/public/direct_executions/query`,{method:"POST",headers:{accept:"application/json","x-publishable-key":o,"Content-Type":"application/json"},body:JSON.stringify({external_user_id:e,...r&&{action_type:r}})});if(!n.ok)throw new Error(`Failed to query executions: ${n.statusText}`);return n.json()}async function jc(e,t){let r=t||$r;ro(r);let o=await fetch(`${yr()}/v1/public/direct_executions/poll`,{method:"POST",headers:{accept:"application/json","x-publishable-key":r,"Content-Type":"application/json"},body:JSON.stringify({deposit_wallet_id:e})});if(!o.ok)throw new Error(`Failed to poll executions: ${o.statusText}`);return o.json()}function Me(e,t="svg"){if(!e)return "";if(t==="svg"||!e.icon_urls||e.icon_urls.length===0)return e.icon_url;let r=e.icon_urls.find(o=>o.format===t);return r?r.url:e.icon_url}async function si(e,t){let r=e||$r;ro(r);let o=`${yr()}/v1/public/tokens/supported_deposit_tokens`;if(t?.destination_token_address&&t?.destination_chain_id&&t?.destination_chain_type){let i=new URLSearchParams({destination_token_address:t.destination_token_address,destination_chain_id:t.destination_chain_id,destination_chain_type:t.destination_chain_type});o=`${o}?${i.toString()}`;}let n=await fetch(o,{method:"GET",headers:{accept:"application/json","x-publishable-key":r}});if(!n.ok)throw new Error(`Failed to fetch supported deposit tokens: ${n.statusText}`);return n.json()}async function ju(e,t){let r=t||$r;ro(r);let o=new URLSearchParams({chainType:e.chain_type,chainId:e.chain_id,tokenAddress:e.token_address}),n=await fetch(`${yr()}/v1/public/tokens/token?${o.toString()}`,{method:"GET",headers:{accept:"application/json","x-publishable-key":r}});if(!n.ok)throw new Error(`Failed to fetch token metadata: ${n.statusText}`);return n.json()}function $c(e,t,r){return !e||e.length===0?r||"":e.find(n=>n.format===t)?.url||r||e[0]?.url||""}async function $u(e,t){let r=t||$r;ro(r);let o=await fetch(`${yr()}/v1/public/onramps/quotes`,{method:"POST",headers:{accept:"application/json","x-publishable-key":r,"Content-Type":"application/json"},body:JSON.stringify(e)});if(!o.ok)throw new Error(`Failed to fetch onramp quotes: ${o.statusText}`);return o.json()}async function qu(e,t){let r=t||$r;ro(r);let o=await fetch(`${yr()}/v1/public/onramps/sessions`,{method:"POST",headers:{accept:"application/json","x-publishable-key":r,"Content-Type":"application/json"},body:JSON.stringify(e)});if(!o.ok)throw new Error(`Failed to create onramp session: ${o.statusText}`);return o.json()}async function Qu(e,t){let r=t||$r;ro(r);let o=new URLSearchParams;e.country_code&&o.append("country_code",e.country_code),e.subdivision_code&&o.append("subdivision_code",e.subdivision_code),o.append("token_address",e.token_address),o.append("chain_id",e.chain_id),o.append("chain_type",e.chain_type);let n=await fetch(`${yr()}/v1/public/onramps/default_token?${o.toString()}`,{method:"GET",headers:{accept:"application/json","x-publishable-key":r}});if(!n.ok)throw new Error(`Failed to fetch default onramp token: ${n.statusText}`);return n.json()}async function Vl(e){let t=e||$r;ro(t);let r=await fetch(`${yr()}/v1/public/onramps/fiat_currencies`,{method:"GET",headers:{accept:"application/json","x-publishable-key":t}});if(!r.ok)throw new Error(`Failed to fetch fiat currencies: ${r.statusText}`);return r.json()}function Fn(e,t="png"){if(!e||e.length===0)return;let r=e.find(o=>o.format===t);return r?r.url:e[0]?.url}async function Ol(e){let t=e||$r;ro(t);let r=await fetch(`${yr()}/v1/public/projects/config`,{method:"GET",headers:{accept:"application/json","x-publishable-key":t}});if(!r.ok)throw new Error(`Failed to fetch project config: ${r.statusText}`);return r.json()}async function Ku(){let e=await fetch(`${yr()}/v1/public/tokens/chains`,{method:"GET",headers:{accept:"application/json"}});if(!e.ok)throw new Error(`Failed to fetch token chains: ${e.statusText}`);return e.json()}function qc(e,t,r){let o=e.find(i=>i.chain_id===r);if(o)return o.chain_name;let n=e.find(i=>i.chain_type===t);return n?n.chain_name:t.charAt(0).toUpperCase()+t.slice(1)}async function Ll(){let e=await fetch(`${yr()}/v1/public/ip_address`,{method:"GET",headers:{accept:"application/json"}});if(!e.ok)throw new Error(`Failed to fetch IP address information: ${e.statusText}`);return e.json()}async function Qc(e){let t=e||$r;ro(t);let r=await fetch(`${yr()}/v1/public/tokens/supported_destination_tokens`,{method:"GET",headers:{accept:"application/json","x-publishable-key":t}});if(!r.ok)throw new Error(`Failed to fetch supported destination tokens: ${r.statusText}`);return r.json()}async function Gu(e,t){let r=t||$r;ro(r);let o=await fetch(`${yr()}/v1/public/addresses/verify`,{method:"POST",headers:{"Content-Type":"application/json",accept:"application/json","x-publishable-key":r},body:JSON.stringify(e)});if(!o.ok)throw new Error(`Failed to verify address: ${o.statusText}`);return o.json()}async function Yu(e,t){return jc(e.deposit_wallet_id,t)}async function Kc(e,t,r,o,n){let i=n||$r;ro(i);let s=await fetch(`${yr()}/v1/public/addresses/balance`,{method:"POST",headers:{"Content-Type":"application/json",accept:"application/json","x-publishable-key":i},body:JSON.stringify({address:e,chain_type:t,chain_id:r,token_address:o})});if(!s.ok)throw new Error(`Failed to fetch address balance: ${s.statusText}`);return s.json()}async function Ju(e,t){let r=t||$r;ro(r);let o=await fetch(`${yr()}/v1/public/onramps/cashapp/sessions`,{method:"POST",headers:{"Content-Type":"application/json",accept:"application/json","x-publishable-key":r},body:JSON.stringify(e)});if(!o.ok)throw new Error(`Failed to create Cash App session: ${o.statusText}`);return o.json()}async function Zu(e="usd",t){let r=t||$r;ro(r);let o=await fetch(`${yr()}/v1/public/onramps/cashapp/limits?currency=${e}`,{method:"GET",headers:{accept:"application/json","x-publishable-key":r}});if(!o.ok)throw new Error(`Failed to fetch Cash App limits: ${o.statusText}`);return o.json()}async function Xu(e,t){let r=t||$r;ro(r);let o=await fetch(`${yr()}/v1/public/onramps/cashapp/sessions/${encodeURIComponent(e)}/status`,{method:"GET",headers:{accept:"application/json","x-publishable-key":r}});if(!o.ok)throw new Error(`Failed to fetch Cash App session status: ${o.statusText}`);return o.json()}async function ep(e){let t=e||$r;ro(t);let r=await fetch(`${yr()}/v1/public/external_wallets`,{method:"GET",headers:{accept:"application/json","x-publishable-key":t}});if(!r.ok)throw new Error(`Failed to fetch external wallets: ${r.statusText}`);return r.json()}async function tp(e,t,r){let o=r||$r;ro(o);let n=await fetch(`${yr()}/v1/public/external_wallets/mobile_deeplink`,{method:"POST",headers:{"Content-Type":"application/json",accept:"application/json","x-publishable-key":o},body:JSON.stringify({wallet:e,deposit_addresses:t})});if(!n.ok)throw new Error(`Failed to generate wallet deep link: ${n.statusText}`);return n.json()}function pm({size:e=28}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 28 28",fill:"none",children:jsxRuntime.jsxs(ir.G,{fillRule:"evenodd",children:[jsxRuntime.jsx(ir.Path,{fill:"#0052FF",fillRule:"nonzero",d:"M14 28a14 14 0 1 0 0-28 14 14 0 0 0 0 28"}),jsxRuntime.jsx(ir.Path,{fill:"#FFF",d:"M13.967 23.86c5.445 0 9.86-4.415 9.86-9.86s-4.415-9.86-9.86-9.86c-5.166 0-9.403 3.974-9.825 9.03h14.63v1.642H4.142c.413 5.065 4.654 9.047 9.826 9.047Z"})]})})}function ma({size:e=28}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 28 28",fill:"none",children:[jsxRuntime.jsxs(ir.G,{clipPath:"url(#eth_clip)",children:[jsxRuntime.jsx(ir.Path,{d:"M14 28C21.732 28 28 21.732 28 14C28 6.26801 21.732 0 14 0C6.26801 0 0 6.26801 0 14C0 21.732 6.26801 28 14 28Z",fill:"#627EEA"}),jsxRuntime.jsx(ir.Path,{d:"M14.4357 3.5V11.2612L20.9956 14.1925L14.4357 3.5Z",fill:"white",fillOpacity:.602}),jsxRuntime.jsx(ir.Path,{d:"M14.4357 3.5L7.875 14.1925L14.4357 11.2612V3.5Z",fill:"white"}),jsxRuntime.jsx(ir.Path,{d:"M14.4357 19.222V24.4956L21 15.414L14.4357 19.222Z",fill:"white",fillOpacity:.602}),jsxRuntime.jsx(ir.Path,{d:"M14.4357 24.4956V19.2211L7.875 15.414L14.4357 24.4956Z",fill:"white"}),jsxRuntime.jsx(ir.Path,{d:"M14.4357 18.0014L20.9956 14.1925L14.4357 11.263V18.0014Z",fill:"white",fillOpacity:.2}),jsxRuntime.jsx(ir.Path,{d:"M7.875 14.1925L14.4357 18.0014V11.263L7.875 14.1925Z",fill:"white",fillOpacity:.602})]}),jsxRuntime.jsx(ir.Defs,{children:jsxRuntime.jsx(ir.ClipPath,{id:"eth_clip",children:jsxRuntime.jsx(ir.Rect,{width:28,height:28,fill:"white"})})})]})}function gm({size:e=28}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 28 28",fill:"none",children:[jsxRuntime.jsxs(ir.G,{clipPath:"url(#btc_clip)",children:[jsxRuntime.jsx(ir.Path,{d:"M14 28C21.732 28 28 21.732 28 14C28 6.26801 21.732 0 14 0C6.26801 0 0 6.26801 0 14C0 21.732 6.26801 28 14 28Z",fill:"#F7931A"}),jsxRuntime.jsx(ir.Path,{d:"M20.0594 12.1625C20.3438 10.2594 18.9 9.23124 16.9203 8.55311L17.5656 5.97186L15.9906 5.57811L15.3672 8.09374C14.9516 7.9953 14.525 7.89686 14.0985 7.79843L14.7328 5.27186L13.1578 4.87811L12.5125 7.45936C12.1735 7.3828 11.8344 7.30624 11.5063 7.22968V7.21874L9.34065 6.67186L8.92502 8.35624C8.92502 8.35624 10.0844 8.61874 10.0625 8.64061C10.6969 8.79374 10.8063 9.2203 10.7844 9.54843L10.0625 12.4578C10.1063 12.4687 10.161 12.4797 10.2266 12.5125C10.1828 12.5016 10.1281 12.4906 10.0735 12.4687L9.05627 16.5375C8.97971 16.7344 8.78284 17.0187 8.34534 16.9094C8.36721 16.9312 7.20784 16.625 7.20784 16.625L6.43127 18.4297L8.47659 18.9437C8.8594 19.0422 9.23127 19.1406 9.59221 19.2281L8.9469 21.8422L10.5219 22.2359L11.1672 19.6547C11.5938 19.775 12.0094 19.8734 12.4141 19.9828L11.7688 22.5531L13.3438 22.9469L13.9891 20.3328C16.6578 20.8359 18.6594 20.6281 19.5016 18.2219C20.1797 16.2859 19.4688 15.1703 18.0688 14.4375C19.086 14.2078 19.8516 13.5406 20.0594 12.1625ZM16.4938 17.1609C16.0125 19.0969 12.7531 18.0469 11.6922 17.7844L12.5453 14.35C13.6063 14.6125 16.9969 15.1484 16.4938 17.1609ZM16.975 12.1297C16.5375 13.8906 13.825 12.9937 12.95 12.775L13.7266 9.6578C14.6016 9.87655 17.4344 10.2812 16.975 12.1297Z",fill:"white"})]}),jsxRuntime.jsx(ir.Defs,{children:jsxRuntime.jsx(ir.ClipPath,{id:"btc_clip",children:jsxRuntime.jsx(ir.Rect,{width:28,height:28,fill:"white"})})})]})}function ya({size:e=28}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 256 256",fill:"none",children:[jsxRuntime.jsxs(ir.Defs,{children:[jsxRuntime.jsxs(ir.LinearGradient,{id:"sol1",x1:"360.9",y1:"-37.5",x2:"141.2",y2:"383.3",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx(ir.Stop,{offset:"0",stopColor:"#00FFA3"}),jsxRuntime.jsx(ir.Stop,{offset:"1",stopColor:"#DC1FFF"})]}),jsxRuntime.jsxs(ir.LinearGradient,{id:"sol2",x1:"264.8",y1:"-87.6",x2:"45.16",y2:"333.15",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx(ir.Stop,{offset:"0",stopColor:"#00FFA3"}),jsxRuntime.jsx(ir.Stop,{offset:"1",stopColor:"#DC1FFF"})]}),jsxRuntime.jsxs(ir.LinearGradient,{id:"sol3",x1:"312.55",y1:"-62.69",x2:"92.88",y2:"358.06",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx(ir.Stop,{offset:"0",stopColor:"#00FFA3"}),jsxRuntime.jsx(ir.Stop,{offset:"1",stopColor:"#DC1FFF"})]})]}),jsxRuntime.jsx(ir.Circle,{cx:128,cy:128,r:128,fill:"black"}),jsxRuntime.jsxs(ir.G,{transform:"translate(128,128) scale(0.35) translate(-198.85,-156)",children:[jsxRuntime.jsx(ir.Path,{fill:"url(#sol2)",d:"M64.6,3.8C67.1,1.4,70.4,0,73.8,0h317.4c5.8,0,8.7,7,4.6,11.1l-62.7,62.7c-2.4,2.4-5.7,3.8-9.2,3.8H6.5c-5.8,0-8.7-7-4.6-11.1L64.6,3.8z"}),jsxRuntime.jsx(ir.Path,{fill:"url(#sol3)",d:"M333.1,120.1c-2.4-2.4-5.7-3.8-9.2-3.8H6.5c-5.8,0-8.7,7-4.6,11.1l62.7,62.7c2.4,2.4,5.7,3.8,9.2,3.8h317.4c5.8,0,8.7-7,4.6-11.1L333.1,120.1z"}),jsxRuntime.jsx(ir.Path,{fill:"url(#sol1)",d:"M64.6,237.9c2.4-2.4,5.7-3.8,9.2-3.8h317.4c5.8,0,8.7,7,4.6,11.1l-62.7,62.7c-2.4,2.4-5.7,3.8-9.2,3.8H6.5c-5.8,0-8.7-7-4.6-11.1L64.6,237.9z"})]})]})}function ym({size:e=28}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 32 32",fill:"none",children:jsxRuntime.jsxs(ir.G,{children:[jsxRuntime.jsx(ir.Circle,{cx:16,cy:16,r:16,fill:"#6F41D8"}),jsxRuntime.jsx(ir.Path,{fill:"#FFF",d:"M21.092 12.693c-.369-.215-.848-.215-1.254 0l-2.879 1.654-1.955 1.078-2.879 1.653c-.369.216-.848.216-1.254 0l-2.288-1.294c-.369-.215-.627-.61-.627-1.042V12.19c0-.431.221-.826.627-1.042l2.25-1.258c.37-.216.85-.216 1.256 0l2.25 1.258c.37.216.628.611.628 1.042v1.654l1.955-1.115v-1.653a1.16 1.16 0 0 0-.627-1.042l-4.17-2.372c-.369-.216-.848-.216-1.254 0l-4.244 2.372A1.16 1.16 0 0 0 6 11.076v4.78c0 .432.221.827.627 1.043l4.244 2.372c.369.215.849.215 1.254 0l2.879-1.618 1.955-1.114 2.879-1.617c.369-.216.848-.216 1.254 0l2.251 1.258c.37.215.627.61.627 1.042v2.552c0 .431-.22.826-.627 1.042l-2.25 1.294c-.37.216-.85.216-1.255 0l-2.251-1.258c-.37-.216-.628-.611-.628-1.042v-1.654l-1.955 1.115v1.653c0 .431.221.827.627 1.042l4.244 2.372c.369.216.848.216 1.254 0l4.244-2.372c.369-.215.627-.61.627-1.042v-4.78a1.16 1.16 0 0 0-.627-1.042l-4.28-2.409z"})]})})}var Gc=[{label:"Base",value:stripeReactNative.Onramp.CryptoNetwork.base,defaultCrypto:"usdc",Icon:pm},{label:"Ethereum",value:stripeReactNative.Onramp.CryptoNetwork.ethereum,defaultCrypto:"eth",Icon:ma},{label:"Bitcoin",value:stripeReactNative.Onramp.CryptoNetwork.bitcoin,defaultCrypto:"btc",Icon:gm},{label:"Solana",value:stripeReactNative.Onramp.CryptoNetwork.solana,defaultCrypto:"sol",Icon:ya},{label:"Polygon",value:stripeReactNative.Onramp.CryptoNetwork.polygon,defaultCrypto:"matic",Icon:ym}];function Yc(e,t=8,r=4){let o=e.trim();return o.length<=t+r+3?o:`${o.slice(0,t)}...${o.slice(-r)}`}function Jc(e,t){let r=parseFloat(e);if(isNaN(r))return e;let o=t.toLowerCase(),n=["eth","btc"].includes(o)?4:2;return r.toFixed(n)}function ba(e){let t=e.trim().toLowerCase();if(!t)return e.trim();let r=Gc.find(n=>n.label.toLowerCase()===t);if(r)return r.label;let o=Gc.find(n=>String(n.value).toLowerCase()===t);return o?o.label:e.trim()}function or({onPress:e,title:t,variant:r="close",leftAction:o}){let{components:n,fonts:i}=L(),s=r==="back",a=s?jsxRuntime.jsx(ca,{size:22,color:n.header.buttonColor,strokeWidth:2.5}):jsxRuntime.jsx(vt,{size:20,color:n.header.buttonColor,strokeWidth:2}),l=jsxRuntime.jsx(reactNative.TouchableOpacity,{style:Mi.closeBtn,onPress:e,hitSlop:{top:10,bottom:10,left:10,right:10},accessibilityRole:"button",accessibilityLabel:s?"Back":"Close",children:a});return t?jsxRuntime.jsxs(reactNative.View,{style:Mi.headerWithTitle,children:[s?l:o??jsxRuntime.jsx(reactNative.View,{style:Mi.headerSide}),jsxRuntime.jsx(reactNative.Text,{style:[Mi.headerTitleText,{color:n.header.titleColor},...i.bold?[{fontFamily:i.bold}]:[]],numberOfLines:1,ellipsizeMode:"tail",accessibilityRole:"header",children:t}),s?jsxRuntime.jsx(reactNative.View,{style:Mi.headerSide}):l]}):jsxRuntime.jsxs(reactNative.View,{style:s?Mi.headerWithTitle:Mi.header,children:[s?l:jsxRuntime.jsx(reactNative.View,{style:Mi.headerSpacer}),!s&&l]})}var Zc={paddingTop:8,paddingBottom:8},Mi=reactNative.StyleSheet.create({header:{flexDirection:"row",justifyContent:"flex-end",...Zc},headerWithTitle:{flexDirection:"row",alignItems:"center",marginHorizontal:-8,...Zc,zIndex:9999,overflow:"visible"},headerSpacer:{flex:1},headerSide:{width:40},headerTitleText:{flex:1,textAlign:"center",fontSize:17},closeBtn:{width:40,height:40,borderRadius:10,backgroundColor:"transparent",alignItems:"center",justifyContent:"center"}});function ko({error:e,progress:t,loading:r}){let{colors:o,fonts:n}=L();return e?jsxRuntime.jsx(reactNative.Text,{style:[bm.errorText,{color:o.error},...n.regular?[{fontFamily:n.regular}]:[]],children:e.message}):t&&r&&__DEV__?jsxRuntime.jsx(reactNative.Text,{style:[bm.progressText,{color:o.foregroundSubtle},...n.regular?[{fontFamily:n.regular}]:[]],children:t}):null}var bm=reactNative.StyleSheet.create({errorText:{fontSize:14,textAlign:"center",lineHeight:20,marginTop:24},progressText:{fontSize:13,textAlign:"center",lineHeight:18,marginTop:24}});function yn({quote:e,label:t,value:r,last:o,hideDivider:n}){return jsxRuntime.jsxs(Ss.Fragment,{children:[jsxRuntime.jsxs(reactNative.View,{style:e.row,children:[jsxRuntime.jsx(reactNative.Text,{style:e.rowLabel,children:t}),jsxRuntime.jsx(reactNative.Text,{style:[e.rowValue],children:r})]}),!o&&!n?jsxRuntime.jsx(reactNative.View,{style:e.rowDivider}):null]})}function ap({quote:e,label:t,address:r,last:o,hideDivider:n}){let[i,s]=Ss.useState(false),{colors:a,components:l}=L(),c=()=>{reactNative.Clipboard.setString(r),s(true),setTimeout(()=>s(false),2e3);},p=Yc(r);return jsxRuntime.jsxs(Ss.Fragment,{children:[jsxRuntime.jsxs(reactNative.View,{style:e.row,children:[jsxRuntime.jsx(reactNative.Text,{style:e.rowLabel,children:t}),jsxRuntime.jsxs(reactNative.View,{style:e.rowRight,children:[jsxRuntime.jsx(reactNative.Text,{style:[e.rowValue,{flexShrink:1,minWidth:0}],numberOfLines:1,ellipsizeMode:"middle",selectable:true,children:p}),jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:c,hitSlop:{top:10,bottom:10,left:10,right:10},accessibilityRole:"button",accessibilityLabel:`Copy ${t}`,children:i?jsxRuntime.jsx(ut,{size:14,color:a.success,strokeWidth:2.5}):jsxRuntime.jsx(fn,{size:14,color:l.card.actionIcon,strokeWidth:2})})]})]}),!o&&!n?jsxRuntime.jsx(reactNative.View,{style:e.rowDivider}):null]})}var Xc={usdc:"#2775CA",usdt:"#26A17B",eth:"#627EEA",btc:"#F7931A",sol:"#9945FF",matic:"#8247E5",dai:"#F5AC37"};function Ca({currency:e,tokenIconUrl:t,networkIconUrl:r,size:o=48}){let{colors:n}=L(),i=e.toLowerCase(),s=Xc[i]??n.primary,a=Math.round(o*.42);return jsxRuntime.jsxs(reactNative.View,{style:{width:o,height:o,position:"relative"},children:[t?jsxRuntime.jsx(reactNative.Image,{source:{uri:t},style:{width:o,height:o,borderRadius:o/2}}):jsxRuntime.jsx(reactNative.View,{style:{width:o,height:o,borderRadius:o/2,backgroundColor:s,alignItems:"center",justifyContent:"center"},children:jsxRuntime.jsx(reactNative.Text,{style:{color:"#FFFFFF",fontWeight:"700",fontSize:o*.38},children:e.toUpperCase().slice(0,e.length>3?4:void 0)})}),r?jsxRuntime.jsx(reactNative.Image,{source:{uri:r},style:{position:"absolute",bottom:-2,right:-4,width:a,height:a,borderRadius:a/2,borderWidth:2,borderColor:n.background}}):null]})}function ed({sourceCurrency:e,destinationCurrency:t,destinationNetwork:r,tokenIconUrl:o,networkIconUrl:n,style:i}){let{colors:s,components:a,fonts:l}=L(),c=rr(`/icons/currencies/png/${e.toLowerCase()}.png`),p=ba(r);return jsxRuntime.jsxs(reactNative.View,{style:[en.diagram,{backgroundColor:a.card.backgroundColor,borderRadius:a.card.borderRadius,borderWidth:a.card.borderWidth,borderColor:a.card.borderColor},i],children:[jsxRuntime.jsxs(reactNative.View,{style:en.step,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:c},style:en.iconImage}),jsxRuntime.jsx(reactNative.Text,{style:[en.label,{color:a.card.subtitleColor,fontFamily:l.regular}],children:"You paid"}),jsxRuntime.jsx(reactNative.Text,{style:[en.value,{color:a.card.titleColor,fontFamily:l.medium}],children:e.toUpperCase()})]}),jsxRuntime.jsx(Wr,{size:16,color:s.foregroundMuted,strokeWidth:2}),jsxRuntime.jsxs(reactNative.View,{style:en.step,children:[jsxRuntime.jsxs(reactNative.View,{style:en.iconWithBadge,children:[o?jsxRuntime.jsx(reactNative.Image,{source:{uri:o},style:en.tokenIcon}):jsxRuntime.jsx(reactNative.View,{style:[en.tokenIcon,{backgroundColor:Xc[t.toLowerCase()]??s.primary}]}),n?jsxRuntime.jsx(reactNative.Image,{source:{uri:n},style:[en.networkBadge,{borderColor:s.background}]}):null]}),jsxRuntime.jsx(reactNative.Text,{style:[en.label,{color:a.card.subtitleColor,fontFamily:l.regular}],children:"You receive"}),jsxRuntime.jsxs(reactNative.Text,{style:[en.value,{color:a.card.titleColor,fontFamily:l.medium}],children:[t.toUpperCase()," ",p]})]})]})}var en=reactNative.StyleSheet.create({diagram:{flexDirection:"row",alignItems:"center",justifyContent:"space-around",paddingVertical:20,paddingHorizontal:24,width:"100%"},step:{alignItems:"center"},iconImage:{width:24,height:24,borderRadius:12,marginBottom:4},iconWithBadge:{position:"relative",width:24,height:24,marginBottom:4},tokenIcon:{width:24,height:24,borderRadius:12},networkBadge:{position:"absolute",bottom:-4,right:-6,width:14,height:14,borderRadius:7,borderWidth:2},label:{fontSize:10},value:{fontSize:14,fontWeight:"500",paddingTop:4}});function On(){let{colors:e,fonts:t,components:r}=L(),o=r.input,n=r.button,i=r.container,s=r.card,a=r.header;return Ss.useMemo(()=>{let l=s.borderRadius,c={flex:{flex:1},screen:{flex:1,backgroundColor:e.background,paddingHorizontal:24,paddingBottom:16},content:{flex:1,paddingTop:16},title:{fontSize:18,color:a.titleColor,marginBottom:8,...t.bold?{fontFamily:t.bold}:{}},subtitle:{fontSize:15,color:e.foregroundMuted,marginBottom:36,lineHeight:22,...t.regular?{fontFamily:t.regular}:{}},fieldWrap:{marginBottom:20},fieldLabel:{fontSize:14,color:e.foregroundSubtle,marginBottom:8,...t.semibold?{fontFamily:t.semibold}:{}},input:{backgroundColor:o.backgroundColor,borderRadius:o.borderRadius,padding:16,fontSize:17,color:o.textColor,borderWidth:o.borderWidth,borderColor:o.borderColor,...t.regular?{fontFamily:t.regular}:{}},hint:{fontSize:12,color:e.foregroundSubtle,marginTop:8,...t.regular?{fontFamily:t.regular}:{}},emailRow:{flexDirection:"row",alignItems:"center",gap:6,marginTop:4,backgroundColor:e.card,paddingHorizontal:14,paddingVertical:10,borderRadius:Math.min(l,12)},emailLabel:{fontSize:13,color:e.foregroundSubtle,...t.regular?{fontFamily:t.regular}:{}},emailValue:{fontSize:13,color:e.foreground,...t.semibold?{fontFamily:t.semibold}:{}},footer:{gap:4},continueBtn:{backgroundColor:i.buttonColor,borderRadius:n.borderRadius,paddingVertical:18,alignItems:"center"},continueBtnDisabled:{backgroundColor:e.card},continueBtnText:{color:i.buttonTitleColor,fontSize:17,...t.bold?{fontFamily:t.bold}:{}},continueBtnTextDisabled:{color:e.foregroundSubtle,...t.regular?{fontFamily:t.regular}:{}},ghostBtn:{paddingVertical:16,alignItems:"center"},ghostBtnText:{color:e.foregroundMuted,fontSize:15,...t.medium?{fontFamily:t.medium}:{}},loaderInButton:{justifyContent:"center",alignItems:"center"}},p={amountContainer:{flex:1,alignItems:"center",justifyContent:"center",gap:8},amountText:{fontSize:64,color:e.foreground,letterSpacing:-2,minWidth:80,textAlign:"center",...t.regular?{fontFamily:t.regular}:{}},amountPlaceholder:{color:e.foregroundSubtle},currencyLabel:{fontSize:15,color:e.foregroundMuted,letterSpacing:1,...t.medium?{fontFamily:t.medium}:{}},minAmountText:{fontSize:13,textAlign:"center",marginTop:8,...t.regular?{fontFamily:t.regular}:{}},quickRow:{flexDirection:"row",gap:10,marginBottom:12},quickPill:{flex:1,paddingVertical:12,alignItems:"center",borderRadius:s.borderRadius,backgroundColor:e.card,borderWidth:s.borderWidth,borderColor:s.borderColor},quickPillText:{fontSize:14,color:e.foreground,...t.medium?{fontFamily:t.medium}:{}},numpad:{gap:4,marginBottom:12},numpadRow:{flexDirection:"row",justifyContent:"space-between"},numpadKey:{flex:1,height:56,alignItems:"center",justifyContent:"center",marginHorizontal:4},numpadKeyText:{fontSize:28,color:e.foreground,...t.regular?{fontFamily:t.regular}:{}},backspaceText:{fontSize:22,color:e.foregroundMuted,...t.regular?{fontFamily:t.regular}:{}},paymentRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:10,borderRadius:999,backgroundColor:"transparent",alignSelf:"flex-start",marginBottom:12},paymentRowHeader:{flexDirection:"row",alignItems:"center",paddingVertical:10,paddingHorizontal:16,borderRadius:s.borderRadius,backgroundColor:e.card,borderWidth:s.borderWidth,borderColor:s.borderColor,alignSelf:"center"},paymentLeft:{flexDirection:"row",alignItems:"center",gap:6},applePayIcon:{fontSize:20,color:e.foreground},paymentLabel:{fontSize:15,color:e.foreground,...t.semibold?{fontFamily:t.semibold}:{}},paymentHint:{fontSize:13,color:e.foregroundMuted,marginLeft:12,...t.regular?{fontFamily:t.regular}:{}},inlineError:{fontSize:13,color:e.error,textAlign:"center",marginTop:10,paddingHorizontal:16,...t.regular?{fontFamily:t.regular}:{}},inlineStatus:{fontSize:13,color:e.foregroundMuted,textAlign:"center",marginTop:10,paddingHorizontal:16,...t.regular?{fontFamily:t.regular}:{}},sheetContent:{flex:1,paddingHorizontal:24,paddingTop:8,gap:12},sheetHeader:{flexDirection:"row",alignItems:"center",gap:8,marginBottom:4},sheetBackBtn:{width:32,height:32,borderRadius:16,backgroundColor:e.card,alignItems:"center",justifyContent:"center",borderWidth:s.borderWidth,borderColor:e.border},sheetTitleRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",marginBottom:8},sheetCloseBtn:{width:28,height:28,borderRadius:14,backgroundColor:e.card,alignItems:"center",justifyContent:"center",borderWidth:s.borderWidth,borderColor:e.border},sheetTitle:{fontSize:18,color:e.foreground,...t.bold?{fontFamily:t.bold}:{}},sheetOption:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:14,paddingHorizontal:16,borderRadius:Math.min(l,14),backgroundColor:e.card,borderWidth:s.borderWidth,borderColor:e.border},sheetOptionLeft:{flex:1,flexDirection:"row",alignItems:"center",gap:12},sheetOptionIcon:{width:24,height:24,alignItems:"center",justifyContent:"center"},sheetOptionLabel:{fontSize:16,color:e.foreground,...t.medium?{fontFamily:t.medium}:{}},sheetOptionHint:{fontSize:13,color:e.foregroundMuted,marginTop:2,...t.regular?{fontFamily:t.regular}:{}},sheetLoading:{alignItems:"center",paddingVertical:32,gap:12},sheetStatusText:{fontSize:15,color:e.foregroundMuted,textAlign:"center",...t.regular?{fontFamily:t.regular}:{}},sheetError:{flex:1,justifyContent:"center",paddingVertical:20},sheetErrorText:{fontSize:14,color:e.error,textAlign:"center",lineHeight:20,...t.regular?{fontFamily:t.regular}:{}},addPaymentBtn:{marginTop:12,paddingVertical:14,borderRadius:Math.min(l,14),backgroundColor:e.card,borderWidth:s.borderWidth,borderColor:e.border,alignItems:"center",justifyContent:"center"},addPaymentBtnText:{fontSize:15,color:e.primary,...t.semibold?{fontFamily:t.semibold}:{}}},h={heroBox:{backgroundColor:s.backgroundColor,borderRadius:l,padding:24,alignItems:"center",marginBottom:16,marginTop:8,borderWidth:s.borderWidth,borderColor:s.borderColor,gap:4},heroLabel:{fontSize:12,color:e.foregroundSubtle,letterSpacing:.5,textTransform:"uppercase",...t.semibold?{fontFamily:t.semibold}:{}},heroAmount:{fontSize:48,color:e.foreground,letterSpacing:-1,...t.bold?{fontFamily:t.bold}:{}},heroCurrency:{fontSize:22,color:e.primary,...t.medium?{fontFamily:t.medium}:{}},heroNetwork:{fontSize:15,color:e.foregroundSubtle,marginTop:2,...t.medium?{fontFamily:t.medium}:{}},card:{backgroundColor:s.backgroundColor,borderRadius:l,borderWidth:s.borderWidth,borderColor:s.borderColor,overflow:"hidden",marginBottom:12,marginTop:16},row:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",paddingVertical:14,paddingHorizontal:16},rowRight:{flex:1,minWidth:0,flexDirection:"row",alignItems:"center",justifyContent:"flex-end",gap:8},rowDivider:{height:1,marginHorizontal:16,backgroundColor:e.border},rowLabel:{fontSize:14,color:s.rowLeftLabel,...t.regular?{fontFamily:t.regular}:{}},rowValue:{fontSize:14,fontWeight:"500",color:s.rowRightLabel,...t.medium?{fontFamily:t.medium}:{}}},T=Math.max(16,Math.min(l,22)),d={stackWrapper:{width:"100%",marginBottom:8,marginTop:4},swapCard:{backgroundColor:e.card,borderWidth:s.borderWidth,borderColor:e.border,paddingHorizontal:16,paddingVertical:16},swapCardTop:{borderTopLeftRadius:T,borderTopRightRadius:T,borderBottomLeftRadius:10,borderBottomRightRadius:10},swapCardBottom:{borderBottomLeftRadius:T,borderBottomRightRadius:T,borderTopLeftRadius:10,borderTopRightRadius:10,marginTop:16},swapConnectorWrap:{alignSelf:"center",zIndex:3,marginTop:-24,marginBottom:-32},swapConnectorCircle:{width:48,height:48,borderRadius:24,backgroundColor:e.primary,alignItems:"center",justifyContent:"center",borderWidth:4,borderColor:e.background},swapRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",marginTop:8,gap:12},swapLeftCol:{flex:1,minWidth:0},swapSpendAmount:{fontSize:40,color:e.foreground,letterSpacing:-1,...t.regular?{fontFamily:t.regular}:{}},swapReceivePrimary:{fontSize:40,color:e.foreground,letterSpacing:-1,...t.regular?{fontFamily:t.regular}:{}},swapReceiveSub:{fontSize:13,color:e.foregroundMuted,marginTop:4,...t.regular?{fontFamily:t.regular}:{}},swapPill:{flexDirection:"row",alignItems:"center",gap:6,paddingVertical:10,paddingHorizontal:14,borderRadius:999,backgroundColor:e.cardHover,borderWidth:s.borderWidth,borderColor:e.border},swapPillText:{fontSize:16,color:e.foreground,...t.semibold?{fontFamily:t.semibold}:{}},payHint:{fontSize:15,color:e.foregroundMuted,textAlign:"center",marginBottom:18,marginTop:4,...t.regular?{fontFamily:t.regular}:{}},summaryLabel:{fontSize:12,color:e.foregroundSubtle,textTransform:"uppercase",letterSpacing:.3,...t.semibold?{fontFamily:t.semibold}:{}},applePayBtn:{backgroundColor:n.secondaryBackground,borderRadius:n.borderRadius,borderWidth:n.borderWidth>0?n.borderWidth:1,borderColor:n.borderWidth>0?n.borderColor:e.border,paddingVertical:18,alignItems:"center",marginBottom:10},applePayBtnText:{color:n.secondaryText,fontSize:17,...t.bold?{fontFamily:t.bold}:{}}},m={input:{fontSize:14,...t.regular?{fontFamily:t.regular}:{}},list:{gap:8},row:{flexDirection:"row",alignItems:"center",paddingVertical:14,paddingHorizontal:16,borderRadius:Math.min(l,14),borderWidth:s.borderWidth,borderColor:e.border,backgroundColor:e.card},rowSelected:{borderColor:e.primary,backgroundColor:e.successBackground},iconWrap:{width:32,height:32,alignItems:"center",justifyContent:"center",marginRight:12},rowText:{flex:1,fontSize:15,color:e.foregroundMuted,...t.medium?{fontFamily:t.medium}:{}},rowTextSelected:{color:e.foreground,...t.semibold?{fontFamily:t.semibold}:{}},checkCircle:{width:24,height:24,borderRadius:12,backgroundColor:e.primary,alignItems:"center",justifyContent:"center"}},b={centered:{flex:1,alignItems:"center",justifyContent:"center",paddingHorizontal:24},spinnerWrap:{width:80,height:80,borderRadius:40,backgroundColor:e.card,borderWidth:s.borderWidth,borderColor:e.border,alignItems:"center",justifyContent:"center",marginBottom:28},idIcon:{fontSize:36},checkCircle:{width:80,height:80,borderRadius:40,backgroundColor:e.successBackground,borderWidth:2,borderColor:e.success,alignItems:"center",justifyContent:"center",marginBottom:28},heading:{fontSize:28,color:a.titleColor,textAlign:"center",marginBottom:10,...t.bold?{fontFamily:t.bold}:{}},sub:{fontSize:15,color:e.foregroundMuted,textAlign:"center",lineHeight:22,marginBottom:36,...t.regular?{fontFamily:t.regular}:{}},successScrollContent:{flexGrow:1,width:"100%",alignItems:"center",paddingBottom:24},detailCard:{width:"100%"}};return {form:c,quote:h,pm:d,wallet:m,flow:b,amount:p}},[e,t,o,n,i,s,a])}var Sm="",Tm;function td(e){Sm=e;}function rd(e){Tm=e;}function Po(){let e=Sm||Hc();if(!e)throw new Error("[Unifold] No publishable key configured. Set via UnifoldProvider or setStripeOnrampPublishableKey().");return e}function Fo(){return Tm??Dl()}async function od(){let e=`${Fo()}/v1/public/onramps/headless/stripe/config`,t=Po(),r=await fetch(e,{method:"GET",headers:{"x-publishable-key":t,"Content-Type":"application/json"}});if(!r.ok)throw new Error(`Failed to load Stripe config: ${r.status}`);let o=await r.json();if(!o?.publishable_key)throw new Error("Missing Stripe publishable key in config response");return o.publishable_key}async function lp(e){let t=await fetch(`${Fo()}/v1/public/onramps/headless/stripe/oauth/start`,{method:"POST",headers:{"x-publishable-key":Po(),"Content-Type":"application/json"},body:JSON.stringify({email:e})});if(!t.ok)throw new Error(`Failed to create auth intent: ${t.status}`);let r=await t.json();return r.auth_intent_id??r.id}async function km(e,t){let r=await fetch(`${Fo()}/v1/public/onramps/headless/stripe/oauth/token`,{method:"POST",headers:{"x-publishable-key":Po(),"Content-Type":"application/json"},body:JSON.stringify({auth_intent_id:e,...t&&{crypto_customer_id:t}})});if(!r.ok)throw new Error(`Failed to exchange auth intent for tokens: ${r.status}`);return r.json()}async function cp(e,t){let r=await fetch(`${Fo()}/v1/public/onramps/headless/stripe/oauth/token/refresh`,{method:"POST",headers:{"x-publishable-key":Po(),"Content-Type":"application/json"},body:JSON.stringify({refresh_token:e,...t&&{crypto_customer_id:t}})}),o=await r.json().catch(()=>({}));if(!r.ok)throw new Error(o?.message??`Failed to refresh OAuth token: ${r.status}`);return o}async function xm(e,t){let r={crypto_customer_id:e.cryptoCustomerId,payment_token:e.paymentToken,source_amount:e.sourceAmount,source_currency:e.sourceCurrency,destination_currency:e.destinationCurrency,wallet_address:e.walletAddress,destination_network:e.destinationNetwork},o=await fetch(`${Fo()}/v1/public/onramps/headless/stripe/sessions`,{method:"POST",headers:{"x-publishable-key":Po(),"x-stripe-oauth-token":t,"Content-Type":"application/json"},body:JSON.stringify(r)}),n=await o.text();if(!o.ok)throw new Error(`Failed to create onramp session: ${o.status} ${n}`);return JSON.parse(n)}async function vm(e,t){let r=await fetch(`${Fo()}/v1/public/onramps/headless/stripe/sessions/${e}/confirm`,{method:"POST",headers:{"x-publishable-key":Po(),"x-stripe-oauth-token":t,"Content-Type":"application/json"}}),o=await r.text();if(!r.ok)throw new Error(`Failed to confirm onramp session: ${r.status} ${o}`);return JSON.parse(o)}async function ai(e,t){let r=`${Fo()}/v1/public/onramps/headless/stripe/customers/${e}`,o=await fetch(r,{method:"GET",headers:{"x-publishable-key":Po(),"x-stripe-oauth-token":t}}),n=await o.text();if(!o.ok)throw new Error(`Failed to get onramp customer: ${o.status} ${n}`);return JSON.parse(n)}async function Rm(e){let t=`${Fo()}/v1/public/onramps/headless/stripe/sessions`,r=await fetch(t,{method:"GET",headers:{"x-publishable-key":Po(),"x-stripe-oauth-token":e}}),o=await r.text();if(!r.ok)throw new Error(`Failed to list onramp sessions: ${r.status} ${o}`);return JSON.parse(o)}async function Im(e,t){let r=`${Fo()}/v1/public/onramps/headless/stripe/sessions/${e}`,o=await fetch(r,{method:"GET",headers:{"x-publishable-key":Po(),"x-stripe-oauth-token":t}}),n=await o.text();if(!o.ok)throw new Error(`Failed to get onramp session: ${o.status} ${n}`);return JSON.parse(n)}async function dp(e,t){let r=await fetch(`${Fo()}/v1/public/onramps/headless/stripe/sessions/${e}/quote/refresh`,{method:"POST",headers:{"x-publishable-key":Po(),"x-stripe-oauth-token":t,"Content-Type":"application/json"}});if(!r.ok){let o=await r.text();throw new Error(`Failed to refresh quote: ${r.status} ${o}`)}return r.json()}async function up(e){let t=new URLSearchParams({destinationNetwork:e.destinationNetwork,walletAddress:e.walletAddress});e.destinationTag&&t.set("destinationTag",e.destinationTag),e.cryptoCustomerId&&t.set("crypto_customer_id",e.cryptoCustomerId);let r=await fetch(`${Fo()}/v1/public/onramps/headless/stripe/transaction_limits?${t.toString()}`,{method:"GET",headers:{"x-publishable-key":Po(),"x-stripe-oauth-token":e.accessToken}});if(!r.ok){let o=await r.text();throw new Error(`Failed to fetch transaction limits: ${r.status} ${o}`)}return r.json()}async function pp(e,t){let r=await fetch(`${Fo()}/v1/public/onramps/headless/stripe/customers/${e}/payment_tokens`,{method:"GET",headers:{"x-publishable-key":Po(),"x-stripe-oauth-token":t}});if(!r.ok){let o=await r.text();throw new Error(`Failed to fetch payment tokens: ${r.status} ${o}`)}return r.json()}async function _m(e){if(!e.recipient_address)throw new Error("[Unifold] recipient_address is required for fetchDepositAddress. Pass recipientAddress in your onramp config.");let t={external_user_id:e.external_user_id,destination_chain_type:e.destination_chain_type||"ethereum",destination_chain_id:e.destination_chain_id||"8453",destination_token_address:e.destination_token_address||"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",recipient_address:e.recipient_address,client_metadata:{}},r=await fetch(`${Fo()}/v1/public/deposit_addresses`,{method:"POST",headers:{accept:"application/json","x-publishable-key":Po(),"Content-Type":"application/json"},body:JSON.stringify(t)});if(!r.ok)throw new Error(`Failed to create deposit address: ${r.status}`);return r.json()}function zi(e,t){if(e?.length){let r=e.find(n=>n.format==="png");if(r)return r.url;let o=e.find(n=>n.format==="svg");if(o)return o.url}return t}async function Pm(e){let t=new URLSearchParams({token_address:e.token_address,chain_id:e.chain_id,chain_type:e.chain_type}),r=await fetch(`${Fo()}/v1/public/onramps/headless/stripe/default_token?${t.toString()}`,{method:"GET",headers:{accept:"application/json","x-publishable-key":Po()}});if(!r.ok)throw new Error(`Failed to fetch default onramp token: ${r.status}`);return r.json()}function rC({size:e=24}){let t=e,r=e*(471/750);return jsxRuntime.jsxs(ir__default.default,{width:t,height:r,viewBox:"0 0 750 471",children:[jsxRuntime.jsx(ir.Rect,{width:"750",height:"471",rx:"40",fill:"#1A1F71"}),jsxRuntime.jsx(ir.Path,{fill:"#FFFFFF",d:"M278.198,334.228l33.36-195.763h53.358l-33.384,195.763H278.198z"}),jsxRuntime.jsx(ir.Path,{fill:"#FFFFFF",d:"M524.307,142.687c-10.57-3.966-27.135-8.222-47.822-8.222c-52.725,0-89.863,26.551-90.18,64.604c-0.297,28.129,26.514,43.821,46.754,53.185c20.77,9.597,27.752,15.716,27.652,24.283c-0.133,13.123-16.586,19.116-31.924,19.116c-21.355,0-32.701-2.967-50.225-10.274l-6.877-3.112l-7.488,43.823c12.463,5.466,35.508,10.199,59.438,10.445c56.09,0,92.502-26.248,92.916-66.884c0.199-22.27-14.016-39.216-44.801-53.188c-18.65-9.056-30.072-15.099-29.951-24.269c0-8.137,9.668-16.838,30.559-16.838c17.447-0.271,30.088,3.534,39.936,7.5l4.781,2.259L524.307,142.687"}),jsxRuntime.jsx(ir.Path,{fill:"#FFFFFF",d:"M661.615,138.464h-41.23c-12.773,0-22.332,3.486-27.941,16.234l-79.244,179.402h56.031c0,0,9.16-24.121,11.232-29.418c6.123,0,60.555,0.084,68.336,0.084c1.596,6.854,6.492,29.334,6.492,29.334h49.512L661.615,138.464z M596.198,264.872c4.414-11.279,21.26-54.724,21.26-54.724c-0.314,0.521,4.381-11.334,7.074-18.684l3.607,16.878c0,0,10.217,46.729,12.352,56.527h-44.293V264.872z"}),jsxRuntime.jsx(ir.Path,{fill:"#FFFFFF",d:"M45.879,138.465l-0.682,4.073c21.093,5.106,39.932,12.496,56.426,21.689l47.346,169.688h56.455l83.004-195.45h-56.526l-52.238,133.496l-5.564-27.131c-0.261-0.838-0.544-1.678-0.834-2.52L156.106,154.992c-3.229-12.396-12.597-16.095-24.186-16.528H45.879z"})]})}function oC({size:e=24}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",children:jsxRuntime.jsxs(ir.G,{fill:"none",fillRule:"evenodd",children:[jsxRuntime.jsx(ir.Circle,{cx:"7",cy:"12",r:"7",fill:"#EA001B"}),jsxRuntime.jsx(ir.Circle,{cx:"17",cy:"12",r:"7",fill:"#FFA200",fillOpacity:.8})]})})}function nC({size:e=24}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 1152 1152",children:jsxRuntime.jsxs(ir.G,{transform:"matrix(1.3333333,0,0,-1.3333333,0,1152)",children:[jsxRuntime.jsx(ir.Path,{fill:"#006FCF",d:"M 0,0 H 863.998 V 864 H 0 Z"}),jsxRuntime.jsx(ir.G,{transform:"translate(312.9867,136.7145)",children:jsxRuntime.jsx(ir.Path,{fill:"#FFFFFF",d:"m 0,0 341.634,-0.725 53.654,59.858 54.038,-59.632 h 101.685 v 87.332 l -63.687,68.682 63.687,68.059 V 309.09 L 0,309.585 Z"})}),jsxRuntime.jsx(ir.G,{transform:"translate(349.7917,170.655)",children:jsxRuntime.jsx(ir.Path,{fill:"#006FCF",fillRule:"evenodd",d:"m 0,0 v 241.575 h 204.832 v -55.65 H 66.318 V 148.15 H 201.529 V 93.423 H 66.318 V 56.319 H 204.832 V 10e-4 Z"})}),jsxRuntime.jsx(ir.G,{transform:"translate(780.0408,412.227)",children:jsxRuntime.jsx(ir.Path,{fill:"#006FCF",d:"M 0,0 -69.456,-76.568 -138.713,0 h -87.729 l 113.343,-120.647 -113.341,-120.925 h 85.343 l 69.764,77.335 70.487,-77.335 h 84.803 v 3.43 L -26.971,-120.647 83.957,-1.903 V 0 Z"})}),jsxRuntime.jsx(ir.G,{transform:"translate(738.7857,721.0845)",children:jsxRuntime.jsx(ir.Path,{fill:"#FFFFFF",d:"M 0,0 -28.373,-79.366 -56.65,0 H -220.625 V -105.93 L -267.278,0 H -400.1 l -136.414,-309.586 h 661.726 l 0,309.586 z"})}),jsxRuntime.jsx(ir.G,{transform:"translate(373.0462,548.583)",children:jsxRuntime.jsx(ir.Path,{fill:"#006FCF",fillRule:"evenodd",d:"M 0,0 32.145,76.837 64.268,0 Z m -9.212,138.867 -107.187,-241.37 h 73.518 l 20.22,48.332 H 86.914 l 20.207,-48.332 h 75.345 L 75.723,138.867 Z"})}),jsxRuntime.jsx(ir.G,{transform:"translate(554.5071,446.121)",children:jsxRuntime.jsx(ir.Path,{fill:"#006FCF",d:"M 0,0 64.997,-0.001 V 165.796 L 126.661,-0.001 h 58.418 L 245.49,165.233 V -0.564 l 64,0.563 V 241.368 H 210.032 L 156.513,92.624 103.342,241.012 0,241.369 Z"})})]})})}function mp({sublabel:e,size:t=24,fallbackColor:r="#888"}){if(!e)return jsxRuntime.jsx(la,{size:t*.75,color:r,strokeWidth:1.75});let o=e.toLowerCase();return o.includes("visa")?jsxRuntime.jsx(rC,{size:t}):o.includes("mastercard")?jsxRuntime.jsx(oC,{size:t}):o.includes("amex")||o.includes("american express")?jsxRuntime.jsx(nC,{size:t}):jsxRuntime.jsx(la,{size:t*.75,color:r,strokeWidth:1.75})}function nd(e){if(!e)return "";let t=new Date(e*1e3);return t.toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})+" at "+t.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:true})}var gp={initialized:"Initialized",requires_payment:"Awaiting Payment",fulfillment_processing:"Processing",fulfillment_complete:"Complete",rejected:"Rejected"};function yp(e,t){switch(e){case "fulfillment_complete":return t.success;case "fulfillment_processing":case "requires_payment":return t.warning;case "rejected":return t.error;default:return t.foregroundMuted}}function Lm({status:e,colors:t,fontFamily:r}){let o=yp(e,t);return jsxRuntime.jsx(reactNative.View,{style:{paddingHorizontal:8,paddingVertical:2,borderRadius:6,backgroundColor:o+"20"},children:jsxRuntime.jsx(reactNative.Text,{style:{fontSize:11,color:o,fontFamily:r},children:gp[e]??e})})}function Bm({count:e=4}){let{colors:t,components:r}=L(),o=Ss.useRef(new reactNative.Animated.Value(.5)).current,n=t.cardHover??t.border,i=Math.min(r.card.borderRadius??12,14);return Ss.useEffect(()=>{let s=reactNative.Animated.loop(reactNative.Animated.sequence([reactNative.Animated.timing(o,{toValue:1,duration:800,useNativeDriver:true}),reactNative.Animated.timing(o,{toValue:.5,duration:800,useNativeDriver:true})]));return s.start(),()=>s.stop()},[o]),jsxRuntime.jsx(reactNative.View,{style:wa.list,children:Array.from({length:e}).map((s,a)=>jsxRuntime.jsxs(reactNative.View,{style:[wa.row,{backgroundColor:t.card,borderRadius:i,borderWidth:r.card.borderWidth,borderColor:t.border}],children:[jsxRuntime.jsxs(reactNative.View,{style:wa.left,children:[jsxRuntime.jsx(reactNative.Animated.View,{style:[wa.amountBar,{backgroundColor:n,opacity:o}]}),jsxRuntime.jsx(reactNative.Animated.View,{style:[wa.subtitleBar,{backgroundColor:n,opacity:o}]})]}),jsxRuntime.jsx(reactNative.Animated.View,{style:[wa.badgeBar,{backgroundColor:n,opacity:o}]})]},a))})}var wa=reactNative.StyleSheet.create({list:{gap:8},row:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:14,paddingHorizontal:16},left:{flex:1,gap:6},amountBar:{height:16,width:"40%",borderRadius:8},subtitleBar:{height:12,width:"55%",borderRadius:6},badgeBar:{height:20,width:80,borderRadius:6,marginLeft:12}});function Am({active:e,interval:t=15e3,color:r}){let o=Ss.useRef(new reactNative.Animated.Value(0)).current;return Ss.useEffect(()=>{if(!e){o.setValue(0);return}let n=()=>{o.setValue(0),reactNative.Animated.timing(o,{toValue:1,duration:t,useNativeDriver:false}).start(({finished:i})=>{i&&n();});};return n(),()=>o.stopAnimation()},[e,t,o]),e?jsxRuntime.jsx(reactNative.View,{style:{height:2,borderRadius:1,overflow:"hidden",opacity:.5},children:jsxRuntime.jsx(reactNative.Animated.View,{style:{height:2,borderRadius:1,backgroundColor:r,width:o.interpolate({inputRange:[0,1],outputRange:["0%","100%"]})}})}):null}function Wm({session:e,onBack:t}){let{colors:r,components:o,fonts:n}=L(),[i,s]=Ss.useState(false),a=()=>{reactNative.Clipboard.setString(e.id),s(true),setTimeout(()=>s(false),2e3);},l=e.transaction_details,c=e.status!=="fulfillment_complete"&&e.status!=="rejected",p=yp(e.status,r),h=l?.source_amount?`$${parseFloat(l.source_amount).toFixed(2)}`:"\u2014",T=l?.destination_amount?parseFloat(l.destination_amount).toFixed(2):"\u2014",d=(l?.destination_currency??"").toUpperCase(),m=e.destination_token_metadata,b=zi(m?.icon_urls,m?.icon_url),v=ba(l?.destination_network??""),x=l?.wallet_address?Yc(l.wallet_address):null,k=l?.fees?.network_fee_amount?`$${parseFloat(l.fees.network_fee_amount).toFixed(2)}`:null,R=l?.fees?.transaction_fee_amount?`$${parseFloat(l.fees.transaction_fee_amount).toFixed(2)}`:null,w=e.payment_method?e.payment_method.replace(/_/g," ").replace(/\b\w/g,f=>f.toUpperCase()):null,I=[{label:"Amount",value:h},{label:"Received",value:`${T} ${d}`},...w?[{label:"Payment",value:w}]:[],{label:"Network",value:v},...x?[{label:"Wallet",value:x}]:[],...k?[{label:"Network Fee",value:k}]:[],...R?[{label:"Transaction Fee",value:R}]:[]];return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(reactNative.View,{style:{paddingLeft:16,paddingTop:8},children:jsxRuntime.jsx(or,{onPress:t,title:"Purchase Details",variant:"back"})}),jsxRuntime.jsxs(Lt,{style:Kr.scroll,contentContainerStyle:Kr.scrollContent,showsVerticalScrollIndicator:false,children:[jsxRuntime.jsxs(reactNative.View,{style:Kr.iconSection,children:[jsxRuntime.jsxs(reactNative.View,{style:{marginBottom:12,width:64,height:64},children:[jsxRuntime.jsx(Ca,{currency:d||"USD",tokenIconUrl:b,size:64}),jsxRuntime.jsx(reactNative.View,{style:[Kr.statusBadge,{backgroundColor:p,borderColor:o.card.backgroundColor??r.background}],children:c?jsxRuntime.jsx(go,{size:14,color:"#FFFFFF",strokeWidth:2.5}):e.status==="rejected"?jsxRuntime.jsx(vt,{size:14,color:"#FFFFFF",strokeWidth:2.5}):jsxRuntime.jsx(ut,{size:14,color:"#FFFFFF",strokeWidth:2.5})})]}),jsxRuntime.jsxs(reactNative.View,{style:Kr.statusRow,children:[jsxRuntime.jsx(reactNative.View,{style:[Kr.statusDot,{backgroundColor:p}]}),jsxRuntime.jsx(reactNative.Text,{style:[Kr.statusText,{color:o.container.titleColor,fontFamily:n.semibold}],children:gp[e.status]??e.status})]}),e.created?jsxRuntime.jsx(reactNative.Text,{style:[Kr.dateText,{color:o.container.subtitleColor,fontFamily:n.regular}],children:nd(e.created)}):null]}),jsxRuntime.jsxs(reactNative.View,{style:[Kr.card,{backgroundColor:o.card.backgroundColor,borderRadius:o.card.borderRadius,borderWidth:o.card.borderWidth,borderColor:o.card.borderColor}],children:[jsxRuntime.jsxs(reactNative.View,{style:Kr.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Kr.cardLabel,{color:o.card.rowLeftLabel,fontFamily:n.regular}],children:"ID"}),jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:a,activeOpacity:.7,style:{flexDirection:"row",alignItems:"center",gap:6,flexShrink:1},children:[jsxRuntime.jsx(reactNative.Text,{style:[Kr.cardValue,{color:o.card.rowRightLabel,fontFamily:n.medium,fontSize:12}],numberOfLines:1,children:e.id.length>12?e.id.slice(0,12)+"\u2026":e.id}),i?jsxRuntime.jsx(ut,{size:14,color:r.primary,strokeWidth:2}):jsxRuntime.jsx(fn,{size:14,color:r.foregroundMuted,strokeWidth:2})]})]}),I.map(f=>jsxRuntime.jsx(Ss__namespace.default.Fragment,{children:jsxRuntime.jsxs(reactNative.View,{style:Kr.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Kr.cardLabel,{color:o.card.rowLeftLabel,fontFamily:n.regular}],children:f.label}),jsxRuntime.jsx(reactNative.Text,{style:[Kr.cardValue,{color:o.card.rowRightLabel,fontFamily:n.medium}],selectable:true,children:f.value})]})},f.label))]}),l?.last_error?jsxRuntime.jsx(reactNative.View,{style:[Kr.card,{backgroundColor:r.errorBackground,borderRadius:o.card.borderRadius}],children:jsxRuntime.jsxs(reactNative.View,{style:Kr.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Kr.cardLabel,{color:r.error,fontFamily:n.regular}],children:"Error"}),jsxRuntime.jsx(reactNative.Text,{style:[Kr.cardValue,{color:r.error,fontFamily:n.medium,flex:1,textAlign:"right"}],selectable:true,children:l.last_error})]})}):null]})]})}var Kr=reactNative.StyleSheet.create({scroll:{flex:1,paddingTop:8},scrollContent:{paddingHorizontal:24,paddingBottom:32},iconSection:{alignItems:"center",marginBottom:24},statusBadge:{position:"absolute",bottom:-4,right:-4,width:24,height:24,borderRadius:12,alignItems:"center",justifyContent:"center",borderWidth:2},statusRow:{flexDirection:"row",alignItems:"center",gap:6,marginBottom:4},statusDot:{width:8,height:8,borderRadius:4},statusText:{fontSize:16,fontWeight:"600"},dateText:{fontSize:14,marginBottom:2},card:{borderRadius:12,marginBottom:12,overflow:"hidden"},cardRow:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",paddingVertical:14,paddingHorizontal:16},cardLabel:{fontSize:14},cardValue:{fontSize:14,fontWeight:"500"}});function Mm({onSelect:e,showKycOption:t=true,showSwitchAccount:r=true}){let{colors:o,fonts:n,components:i}=L(),[s,a]=Ss.useState(false),l=c=>{a(false),e(c);};return jsxRuntime.jsxs(reactNative.View,{style:Bn.wrapper,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:Bn.trigger,onPress:()=>a(c=>!c),hitSlop:{top:10,bottom:10,left:10,right:10},accessibilityRole:"button",accessibilityLabel:"More options",children:jsxRuntime.jsx(tm,{size:20,color:o.foreground,strokeWidth:2})}),s&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(reactNative.Pressable,{style:Bn.backdrop,onPress:()=>a(false)}),jsxRuntime.jsxs(reactNative.View,{style:[Bn.menu,{backgroundColor:i.card.backgroundColor,borderRadius:i.card.borderRadius??12,borderWidth:i.card.borderWidth,borderColor:i.card.borderColor,...reactNative.Platform.select({ios:{shadowColor:"#000",shadowOffset:{width:0,height:4},shadowOpacity:.15,shadowRadius:12},android:{elevation:8}})}],children:[jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:Bn.menuItem,onPress:()=>l("history"),activeOpacity:.6,children:[jsxRuntime.jsx(go,{size:18,color:o.foreground,strokeWidth:1.8}),jsxRuntime.jsx(reactNative.Text,{style:[Bn.menuLabel,{color:o.foreground,fontFamily:n.regular}],children:"Purchase History"})]}),t&&jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:Bn.menuItem,onPress:()=>l("kyc"),activeOpacity:.6,children:[jsxRuntime.jsx(To,{size:18,color:o.foreground,strokeWidth:1.8}),jsxRuntime.jsx(reactNative.Text,{style:[Bn.menuLabel,{color:o.foreground,fontFamily:n.regular}],children:"Increase Limits (KYC)"})]}),r&&jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:Bn.menuItem,onPress:()=>l("logout"),activeOpacity:.6,children:[jsxRuntime.jsx(rm,{size:18,color:o.error,strokeWidth:1.8}),jsxRuntime.jsx(reactNative.Text,{style:[Bn.menuLabel,{color:o.error,fontFamily:n.regular}],children:"Switch Account"})]})]})]})]})}var Bn=reactNative.StyleSheet.create({wrapper:{zIndex:9999},trigger:{width:28,height:28,borderRadius:8,alignItems:"center",justifyContent:"center"},backdrop:{position:"absolute",top:-500,left:-500,width:2e3,height:2e3,zIndex:9998},menu:{position:"absolute",top:32,left:0,minWidth:200,paddingVertical:6,zIndex:9999},menuItem:{flexDirection:"row",alignItems:"center",paddingHorizontal:14,paddingVertical:12,gap:12},menuLabel:{fontSize:15}});var bC=[50,100,500],CC=[["1","2","3"],["4","5","6"],["7","8","9"],[".","0","\u232B"]];function Um(e){return e.charAt(0).toUpperCase()+e.slice(1)}function wC(e){return e.card?`${Um(e.card.brand)} ${Um(e.card.funding)} \u2022\u2022\u2022\u2022 ${e.card.last4}`:e.type}function ld({initialAmount:e="",currency:t="USD",applePaySupported:r=false,hideQuickAmounts:o=false,minAmount:n,maxAmount:i,paymentSelectorPosition:s="inline",onCollectPayment:a,paymentLoading:l=false,paymentStatus:c,paymentError:p,paymentTokens:h=[],onAddPaymentMethod:T,onConfirm:d,onCancel:m,sheetBorderTopLeftRadius:b,sheetBorderTopRightRadius:v,accessToken:x,showHistoryProgressBar:k=true,onLogout:R,onRequestKYC:w,showSwitchAccount:I=true,inputDisabled:f=false}){let u=On(),{colors:S,components:y,fonts:F}=L(),B=b??y.card.borderRadius,D=v??y.card.borderRadius,[V,A]=Ss.useState(e),[M,Q]=Ss.useState(r?"apple_pay":h.length>0?h[0].id:null),We=Ss.useRef(false),q=_=>{We.current=true,Q(_);};Ss.useEffect(()=>{We.current||r||h.length>0&&Q(h[0].id);},[h,r]);let[Ue,J]=Ss.useState(false),[ie,ee]=Ss.useState("select"),[Z,ce]=Ss.useState(null),U=Ss.useRef(false);Ss.useEffect(()=>{l&&c&&/saving/i.test(c)&&ee("card");},[l,c]);let Se=i,st=Se!=null&&Se>0,Ee=Ss.useMemo(()=>{if(o)return [];let _=bC.map(C=>({label:`$${C}`,amount:String(C),disabled:false}));return _.push({label:"MAX",amount:st?String(Se):"0",disabled:!st}),_},[o,st,Se]),de=_=>{if(_==="\u232B"){A(C=>C.slice(0,-1));return}if(_==="."){if(V.includes("."))return;A(C=>C===""?"0.":C+".");return}A(C=>{let O=C.indexOf(".");return O!==-1&&C.length-O>2?C:C==="0"&&_!=="."?_:C+_});},He=V===""?"0":V,Ve=parseFloat(V),$e=n!=null&&!isNaN(Ve)&&Ve>0&&Ve<n,mt=Se!=null&&Se>0&&!isNaN(Ve)&&Ve>Se,Ne=V!==""&&!isNaN(Ve)&&Ve>0&&!$e&&!mt,qe=r||h.length>0,Le=s==="header",xe=Ss.useMemo(()=>{let _=[];r&&_.push({id:"apple_pay",label:"Apple Pay",hint:"Pay with Apple Pay",isApplePay:true});for(let C of h)_.push({id:C.id,label:wC(C),hint:C.card?`Expires ${C.card.exp_month}/${C.card.exp_year}`:C.type,brand:C.card?.brand,isApplePay:false});return _},[r,h]),ve=xe.find(_=>_.id===M),Qe=M!=null&&M!=="apple_pay",at=ve?ve.label:Qe&&Z?Z:Qe?"Card":"Pay With",Xt=ve?!ve.isApplePay:Qe,Be=ve?.brand??Z??void 0,[Re,rt]=Ss.useState(false),[ct,Oe]=Ss.useState([]),[Ie,Pe]=Ss.useState(false),[Ut,Nt]=Ss.useState(null),[pe,Ke]=Ss.useState(null),er=Ss.useRef(null);er.current=pe;let je=Ss.useRef(false);je.current=Re;let Vt=Ss.useCallback(async(_=false)=>{if(x){_||(Pe(true),Nt(null));try{let C=await Rm(x);if(!je.current)return;let O=Array.isArray(C.data)?C.data:Array.isArray(C)?C:[];Oe(O),_||Nt(null);let N=er.current?.id;if(N){let $=O.find(j=>j.id===N);$&&Ke($);}}catch(C){if(!je.current)return;_||Nt(C?.message??"Failed to load history");}finally{!_&&je.current&&Pe(false);}}},[x]),et=Ss.useCallback(()=>{rt(true),Vt();},[Vt]);Ss.useEffect(()=>{if(!Re||!x)return;let _=setInterval(()=>Vt(true),15e3);return ()=>clearInterval(_)},[Re,x,Vt]);let be=Ss.useCallback(_=>{switch(_){case "history":et();break;case "kyc":w?.();break;case "logout":R?.();break}},[et,w,R]),K=!!x||!!w||!!R?jsxRuntime.jsx(Mm,{onSelect:be,showKycOption:!!w,showSwitchAccount:I&&!!R}):void 0,ue=qe?jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[Le?u.amount.paymentRowHeader:u.amount.paymentRow,l&&{opacity:.5}],onPress:()=>{l||(ee("select"),J(true));},activeOpacity:.7,disabled:l,children:jsxRuntime.jsxs(reactNative.View,{style:u.amount.paymentLeft,children:[ve?.isApplePay?jsxRuntime.jsx(reactNative.Text,{style:u.amount.applePayIcon,children:"\uF8FF"}):Xt?jsxRuntime.jsx(mp,{sublabel:Be,size:20}):null,jsxRuntime.jsx(reactNative.Text,{style:u.amount.paymentLabel,children:at}),jsxRuntime.jsx(lr,{size:12,color:u.amount.currencyLabel.color,strokeWidth:2.5})]})}):null;return jsxRuntime.jsxs(reactNative.View,{style:u.form.screen,children:[jsxRuntime.jsx(or,{onPress:m,title:"Enter amount",leftAction:K}),Le&&ue,jsxRuntime.jsxs(reactNative.View,{style:u.form.content,children:[jsxRuntime.jsxs(reactNative.View,{style:u.amount.amountContainer,children:[jsxRuntime.jsxs(reactNative.Text,{style:[u.amount.amountText,He==="0"&&u.amount.amountPlaceholder],adjustsFontSizeToFit:true,numberOfLines:1,children:["$",He]}),jsxRuntime.jsx(reactNative.Text,{style:u.amount.currencyLabel,children:t.toUpperCase()}),$e&&n!=null&&jsxRuntime.jsxs(reactNative.Text,{style:[u.amount.minAmountText,{color:S.warning}],children:["Minimum amount is $",n.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2})," ",t.toUpperCase()]}),mt&&Se!=null&&jsxRuntime.jsxs(reactNative.Text,{style:[u.amount.minAmountText,{color:S.warning}],children:["Maximum amount is $",Se.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2})," ",t.toUpperCase()]})]}),!Le&&ue,Ee.length>0&&jsxRuntime.jsx(reactNative.View,{style:u.amount.quickRow,children:Ee.map(_=>{let C=!_.disabled&&V===_.amount&&V!=="";return jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[u.amount.quickPill,C&&{backgroundColor:S.primary},_.disabled&&{opacity:.4}],activeOpacity:.7,disabled:_.disabled||l,onPress:()=>A(_.amount),children:jsxRuntime.jsx(reactNative.Text,{style:[u.amount.quickPillText,C&&{color:S.primaryForeground}],children:_.label})},_.label)})}),jsxRuntime.jsx(reactNative.View,{style:u.amount.numpad,children:CC.map((_,C)=>jsxRuntime.jsx(reactNative.View,{style:u.amount.numpadRow,children:_.map(O=>jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[u.amount.numpadKey,(l||f)&&{opacity:.3}],onPress:()=>de(O),activeOpacity:.6,disabled:l||f,children:jsxRuntime.jsx(reactNative.Text,{style:O==="\u232B"?u.amount.backspaceText:u.amount.numpadKeyText,children:O})},O))},C))}),jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[u.form.continueBtn,(!Ne||l||f)&&u.form.continueBtnDisabled],onPress:()=>Ne&&!l&&!f&&d(V,M),disabled:!Ne||l||f,children:l?jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"small",color:S.primaryForeground}):jsxRuntime.jsx(reactNative.Text,{style:[u.form.continueBtnText,(!Ne||f)&&u.form.continueBtnTextDisabled],children:"Continue"})}),!Ue&&p?jsxRuntime.jsx(reactNative.Text,{style:u.amount.inlineError,children:p}):!Ue&&l&&c&&__DEV__?jsxRuntime.jsx(reactNative.Text,{style:u.amount.inlineStatus,children:c}):null]}),jsxRuntime.jsx(Et,{visible:Ue,onClose:()=>{l||(J(false),ee("select"));},closeOnBackdropPress:!l,enablePanDownToClose:!l,showHandle:!l,heightPercent:.44,maxHeightPercent:.9,borderTopLeftRadius:B,borderTopRightRadius:D,children:jsxRuntime.jsx(reactNative.View,{style:u.amount.sheetContent,children:ie==="select"?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(reactNative.View,{style:u.amount.sheetTitleRow,children:[jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetTitle,children:"Pay With"}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>J(false),activeOpacity:.7,style:u.amount.sheetCloseBtn,children:jsxRuntime.jsx(vt,{size:16,color:S.foregroundMuted,strokeWidth:2.5})})]}),jsxRuntime.jsxs(Lt,{style:{flex:1},contentContainerStyle:{gap:8},showsVerticalScrollIndicator:false,children:[xe.map(_=>{let C=M===_.id;return jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{style:[u.amount.sheetOption,C&&{borderColor:S.primary,borderWidth:2}],activeOpacity:.7,onPress:()=>{q(_.id),ce(_.isApplePay?null:_.label),J(false);},children:[jsxRuntime.jsxs(reactNative.View,{style:u.amount.sheetOptionLeft,children:[jsxRuntime.jsx(reactNative.View,{style:u.amount.sheetOptionIcon,children:_.isApplePay?jsxRuntime.jsx(reactNative.Text,{style:u.amount.applePayIcon,children:"\uF8FF"}):jsxRuntime.jsx(mp,{sublabel:_.brand,size:24})}),jsxRuntime.jsxs(reactNative.View,{style:{flex:1},children:[jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetOptionLabel,children:_.label}),jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetOptionHint,children:_.hint})]})]}),C&&jsxRuntime.jsx(ut,{size:18,color:S.primary,strokeWidth:2.5})]},_.id)}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{style:u.amount.addPaymentBtn,activeOpacity:.7,onPress:async()=>{if(!U.current){U.current=true;try{let _=await T?.();_&&(q(_.token),ce(_.sublabel),J(!1));}finally{U.current=false;}}},children:jsxRuntime.jsx(reactNative.Text,{style:u.amount.addPaymentBtnText,children:"Add Payment Method"})})]})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(reactNative.View,{style:u.amount.sheetHeader,children:[jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{l||ee("select");},activeOpacity:.7,style:u.amount.sheetBackBtn,children:jsxRuntime.jsx(ca,{size:20,color:S.foreground,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetTitle,children:"Pay With"})]}),l?jsxRuntime.jsxs(reactNative.View,{style:u.amount.sheetLoading,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"small",color:S.primary}),__DEV__?jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetStatusText,children:c||"Loading Stripe Link..."}):null]}):p?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(reactNative.View,{style:u.amount.sheetError,children:jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetErrorText,children:p})}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{style:u.form.continueBtn,onPress:()=>{a&&Ne&&a(false,V);},children:jsxRuntime.jsx(reactNative.Text,{style:u.form.continueBtnText,children:"Retry"})})]}):jsxRuntime.jsxs(reactNative.View,{style:u.amount.sheetLoading,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"small",color:S.primary}),__DEV__?jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetStatusText,children:"Opening card payment..."}):null]})]})})}),jsxRuntime.jsx(Et,{visible:Re,onClose:()=>{rt(false),Ke(null);},closeOnBackdropPress:true,enablePanDownToClose:true,showHandle:true,heightPercent:.9,borderTopLeftRadius:B,borderTopRightRadius:D,children:pe?jsxRuntime.jsx(Wm,{session:pe,onBack:()=>Ke(null)}):jsxRuntime.jsxs(reactNative.View,{style:u.amount.sheetContent,children:[jsxRuntime.jsx(or,{onPress:()=>rt(false),title:"Purchase History"}),k&&jsxRuntime.jsx(Am,{active:Re&&!Ie&&ct.length>0,color:S.primary}),Ie?jsxRuntime.jsx(Bm,{}):Ut?jsxRuntime.jsx(reactNative.View,{style:u.amount.sheetError,children:jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetErrorText,children:Ut})}):ct.length===0?jsxRuntime.jsx(reactNative.View,{style:u.amount.sheetLoading,children:jsxRuntime.jsx(reactNative.Text,{style:[u.amount.sheetStatusText,{color:S.foregroundMuted}],children:"No purchases yet"})}):jsxRuntime.jsx(Lt,{style:{flex:1},contentContainerStyle:{gap:8},showsVerticalScrollIndicator:false,children:ct.map(_=>{let C=_.transaction_details,O=C?.source_amount?`$${parseFloat(C.source_amount).toFixed(2)}`:"\u2014",N=(C?.destination_currency??"").toUpperCase(),$=C?.destination_amount?`${parseFloat(C.destination_amount).toFixed(2)} ${N}`:"",j=nd(_.created),fe=_.destination_token_metadata,Ge=zi(fe?.icon_urls,fe?.icon_url),W=zi(fe?.chain?.icon_urls,fe?.chain?.icon_url);return jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{style:u.amount.sheetOption,activeOpacity:.7,onPress:()=>Ke(_),children:[jsxRuntime.jsx(Ca,{currency:N||"USD",tokenIconUrl:Ge,networkIconUrl:W,size:36}),jsxRuntime.jsxs(reactNative.View,{style:{flex:1,gap:2,marginLeft:12},children:[jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetOptionLabel,children:O}),$?jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetOptionHint,children:$}):null]}),jsxRuntime.jsxs(reactNative.View,{style:{flexDirection:"row",alignItems:"center",gap:8},children:[jsxRuntime.jsxs(reactNative.View,{style:{alignItems:"flex-end",gap:2},children:[jsxRuntime.jsx(Lm,{status:_.status,colors:S,fontFamily:F.regular}),j?jsxRuntime.jsx(reactNative.Text,{style:{fontSize:11,color:S.foregroundMuted,fontFamily:F.regular},children:j}):null]}),jsxRuntime.jsx(Wr,{size:14,color:S.foregroundMuted,strokeWidth:2})]})]},_.id)})})]})})]})}function cd({initialData:e={},loading:t=false,level:r="L0",onComplete:o,onCancel:n}){let i=On(),{colors:s,fonts:a,components:l}=L(),c=l.input.placeholderColor,p=r==="L0"?["name","address"]:["name","dob","address","ssn"],h=p.length,[T,d]=Ss.useState(1),[m,b]=Ss.useState(e.firstName??""),[v,x]=Ss.useState(e.lastName??""),[k,R]=Ss.useState(e.dobMonth??""),[w,I]=Ss.useState(e.dobDay??""),[f,u]=Ss.useState(e.dobYear??""),[S,y]=Ss.useState(e.addressLine1??""),[F,B]=Ss.useState(e.addressLine2??""),[D,V]=Ss.useState(e.city??""),[A,M]=Ss.useState(e.state??""),[Q,We]=Ss.useState(e.postalCode??""),[q,Ue]=Ss.useState(e.country??"US"),[J,ie]=Ss.useState(e.idNumber??""),ee=Ss.useRef(null),Z=Ss.useRef(null),ce=Ss.useRef(null),U=Ss.useRef(null),Se=Ss.useRef(null),st=Ss.useRef(null),Ee=Ss.useRef(null),de=Ss.useRef(null),He=p[T-1],Ve=()=>{switch(He){case "name":return m.trim().length>0&&v.trim().length>0;case "dob":return k.length===2&&w.length===2&&f.length===4;case "address":return S.trim().length>0&&D.trim().length>0&&A.trim().length>0&&Q.trim().length>0;case "ssn":return J.trim().length>0;default:return false}},$e=()=>{Ve()&&(T<h?d(xe=>xe+1):o({firstName:m,lastName:v,idNumber:J,dobMonth:k,dobDay:w,dobYear:f,addressLine1:S,addressLine2:F,city:D,state:A,postalCode:Q,country:q}));},mt=()=>{T>1?d(xe=>xe-1):n();},Ne={name:{title:"Enter your name",subtitle:"Use your full legal name as it appears on your ID."},dob:{title:"Enter your date of birth",subtitle:"We use this to verify your identity."},address:{title:"Enter your address",subtitle:"Enter the address associated with your ID."},ssn:{title:"Enter your SSN",subtitle:"Your SSN is encrypted and used only for identity verification."}},{subtitle:qe}=Ne[He],Le=[Pr.stepCounter,{color:s.foregroundMuted},...a.semibold?[{fontFamily:a.semibold}]:[]];return jsxRuntime.jsx(reactNative.KeyboardAvoidingView,{style:i.form.flex,behavior:reactNative.Platform.OS==="ios"?"padding":void 0,children:jsxRuntime.jsxs(reactNative.View,{style:i.form.screen,children:[jsxRuntime.jsxs(reactNative.View,{style:Pr.header,children:[jsxRuntime.jsx(reactNative.View,{style:Pr.headerSide,children:!t&&jsxRuntime.jsx(reactNative.TouchableOpacity,{style:Pr.iconButton,onPress:mt,hitSlop:{top:10,bottom:10,left:10,right:10},accessibilityRole:"button",accessibilityLabel:T>1?"Back":"Cancel",children:jsxRuntime.jsx(kl,{size:20,color:l.header.buttonColor,strokeWidth:2})})}),jsxRuntime.jsx(reactNative.View,{style:Pr.headerCenter,children:jsxRuntime.jsxs(reactNative.Text,{style:Le,children:[T," of ",h]})}),jsxRuntime.jsx(reactNative.View,{style:Pr.headerSide,children:jsxRuntime.jsx(reactNative.TouchableOpacity,{style:Pr.iconButton,onPress:n,hitSlop:{top:10,bottom:10,left:10,right:10},accessibilityRole:"button",accessibilityLabel:"Close",children:jsxRuntime.jsx(vt,{size:20,color:l.header.buttonColor,strokeWidth:2})})})]}),jsxRuntime.jsx(reactNative.View,{style:Pr.progressTrack,children:Array.from({length:h}).map((xe,ve)=>jsxRuntime.jsx(reactNative.View,{style:[Pr.progressSegment,{backgroundColor:ve<T||ve+1===T?s.primary:s.border}]},ve))}),jsxRuntime.jsx(Lt,{style:i.form.flex,contentContainerStyle:Pr.scrollContent,keyboardShouldPersistTaps:"handled",showsVerticalScrollIndicator:false,children:jsxRuntime.jsxs(reactNative.View,{pointerEvents:t?"none":"auto",style:[i.form.flex,t&&{opacity:.5}],children:[jsxRuntime.jsx(reactNative.Text,{style:i.form.subtitle,children:qe}),He==="name"&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ci,{form:i.form,label:"First name",children:jsxRuntime.jsx(reactNative.TextInput,{style:i.form.input,placeholder:"Jane",placeholderTextColor:c,value:m,onChangeText:b,autoCapitalize:"words",returnKeyType:"next",onSubmitEditing:()=>ee.current?.focus()})}),jsxRuntime.jsx(ci,{form:i.form,label:"Last name",children:jsxRuntime.jsx(reactNative.TextInput,{ref:ee,style:i.form.input,placeholder:"Doe",placeholderTextColor:c,value:v,onChangeText:x,autoCapitalize:"words",returnKeyType:"done",onSubmitEditing:$e})})]}),He==="dob"&&jsxRuntime.jsxs(reactNative.View,{style:Pr.dobRow,children:[jsxRuntime.jsxs(reactNative.View,{style:Pr.dobCol,children:[jsxRuntime.jsx(reactNative.Text,{style:[i.form.fieldLabel,Pr.dobLabel],children:"Month"}),jsxRuntime.jsx(reactNative.TextInput,{style:[i.form.input,Pr.dobInput],placeholder:"MM",placeholderTextColor:c,value:k,onChangeText:xe=>{let ve=xe.replace(/\D/g,"").slice(0,2);R(ve),ve.length===2&&Z.current?.focus();},keyboardType:"number-pad",maxLength:2})]}),jsxRuntime.jsxs(reactNative.View,{style:Pr.dobCol,children:[jsxRuntime.jsx(reactNative.Text,{style:[i.form.fieldLabel,Pr.dobLabel],children:"Day"}),jsxRuntime.jsx(reactNative.TextInput,{ref:Z,style:[i.form.input,Pr.dobInput],placeholder:"DD",placeholderTextColor:c,value:w,onChangeText:xe=>{let ve=xe.replace(/\D/g,"").slice(0,2);I(ve),ve.length===2&&ce.current?.focus();},keyboardType:"number-pad",maxLength:2})]}),jsxRuntime.jsxs(reactNative.View,{style:Pr.dobColWide,children:[jsxRuntime.jsx(reactNative.Text,{style:[i.form.fieldLabel,Pr.dobLabel],children:"Year"}),jsxRuntime.jsx(reactNative.TextInput,{ref:ce,style:[i.form.input,Pr.dobInput],placeholder:"YYYY",placeholderTextColor:c,value:f,onChangeText:xe=>{let ve=xe.replace(/\D/g,"").slice(0,4);u(ve);},keyboardType:"number-pad",maxLength:4,returnKeyType:"done",onSubmitEditing:$e})]})]}),He==="address"&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ci,{form:i.form,label:"Street address",children:jsxRuntime.jsx(reactNative.TextInput,{style:i.form.input,placeholder:"123 Main St",placeholderTextColor:c,value:S,onChangeText:y,returnKeyType:"next",onSubmitEditing:()=>U.current?.focus()})}),jsxRuntime.jsx(ci,{form:i.form,label:"Apt, suite, etc. (optional)",children:jsxRuntime.jsx(reactNative.TextInput,{ref:U,style:i.form.input,placeholder:"Apt 2",placeholderTextColor:c,value:F,onChangeText:B,returnKeyType:"next",onSubmitEditing:()=>Se.current?.focus()})}),jsxRuntime.jsx(ci,{form:i.form,label:"City",children:jsxRuntime.jsx(reactNative.TextInput,{ref:Se,style:i.form.input,placeholder:"San Francisco",placeholderTextColor:c,value:D,onChangeText:V,autoCapitalize:"words",returnKeyType:"next",onSubmitEditing:()=>st.current?.focus()})}),jsxRuntime.jsxs(reactNative.View,{style:Pr.row,children:[jsxRuntime.jsx(reactNative.View,{style:[i.form.flex,{marginRight:8}],children:jsxRuntime.jsx(ci,{form:i.form,label:"State",children:jsxRuntime.jsx(reactNative.TextInput,{ref:st,style:i.form.input,placeholder:"CA",placeholderTextColor:c,value:A,onChangeText:xe=>M(xe.toUpperCase().slice(0,2)),autoCapitalize:"characters",maxLength:2,returnKeyType:"next",onSubmitEditing:()=>Ee.current?.focus()})})}),jsxRuntime.jsx(reactNative.View,{style:i.form.flex,children:jsxRuntime.jsx(ci,{form:i.form,label:"ZIP code",children:jsxRuntime.jsx(reactNative.TextInput,{ref:Ee,style:i.form.input,placeholder:"94001",placeholderTextColor:c,value:Q,onChangeText:We,keyboardType:"number-pad",maxLength:10,returnKeyType:"next",onSubmitEditing:()=>de.current?.focus()})})})]}),jsxRuntime.jsx(ci,{form:i.form,label:"Country",children:jsxRuntime.jsx(reactNative.TextInput,{ref:de,style:i.form.input,placeholder:"US",placeholderTextColor:c,value:q,onChangeText:xe=>Ue(xe.toUpperCase().slice(0,2)),autoCapitalize:"characters",maxLength:2,returnKeyType:"done",onSubmitEditing:$e})})]}),He==="ssn"&&jsxRuntime.jsxs(ci,{form:i.form,label:"Social Security Number",children:[jsxRuntime.jsx(reactNative.TextInput,{style:i.form.input,placeholder:"123-45-6789",placeholderTextColor:c,value:J,onChangeText:ie,keyboardType:"number-pad",secureTextEntry:true,returnKeyType:"done",onSubmitEditing:$e}),jsxRuntime.jsx(reactNative.Text,{style:[i.form.hint,Pr.ssnHint],children:"Your SSN is transmitted securely and never stored on this device."})]})]})}),jsxRuntime.jsx(reactNative.View,{style:i.form.footer,children:t&&T>=h?jsxRuntime.jsx(reactNative.View,{style:[i.form.continueBtn,i.form.loaderInButton],children:jsxRuntime.jsx(St,{size:28,strokeWidth:2,gradientFrom:s.primaryForeground,gradientTo:s.primaryForeground})}):jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[i.form.continueBtn,!Ve()&&i.form.continueBtnDisabled],onPress:$e,disabled:!Ve(),children:jsxRuntime.jsx(reactNative.Text,{style:[i.form.continueBtnText,!Ve()&&i.form.continueBtnTextDisabled],children:T>=h?"Submit":"Continue"})})})]})})}function ci({form:e,label:t,children:r}){return jsxRuntime.jsxs(reactNative.View,{style:e.fieldWrap,children:[jsxRuntime.jsx(reactNative.Text,{style:e.fieldLabel,children:t}),r]})}var Pr=reactNative.StyleSheet.create({header:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingTop:16,paddingBottom:16},headerSide:{width:40,alignItems:"center"},headerCenter:{flex:1,alignItems:"center",justifyContent:"center"},iconButton:{width:28,height:28,borderRadius:8,backgroundColor:"transparent",alignItems:"center",justifyContent:"center"},stepCounter:{fontSize:15},progressTrack:{flexDirection:"row",gap:4,marginBottom:12},progressSegment:{flex:1,height:3,borderRadius:2},scrollContent:{flexGrow:1,paddingBottom:16,paddingTop:4},dobRow:{flexDirection:"row",gap:10,marginBottom:20},dobCol:{flex:1},dobColWide:{flex:1.5},dobLabel:{textAlign:"center"},dobInput:{textAlign:"center"},row:{flexDirection:"row"},ssnHint:{marginTop:10,lineHeight:18}});var vp="@unifold/stripe_oauth";async function Hm(){try{let e=await xp__default.default.getItem(vp);return e?JSON.parse(e):null}catch{return null}}async function Rp(e){try{await xp__default.default.setItem(vp,JSON.stringify(e));}catch(t){console.warn("[oauthTokens] Failed to store credentials:",t);}}async function ka(){try{await xp__default.default.removeItem(vp);}catch(e){console.warn("[oauthTokens] Failed to clear credentials:",e);}}var _C=5,Qi=null,Ip=false,_p={firstName:"",lastName:"",idNumber:"",dobDay:"",dobMonth:"",dobYear:"",addressLine1:"",addressLine2:"",city:"",state:"",postalCode:"",country:"US"};function dd(e){let t=e?.flowOrder==="amount_first",r=t?"session_params":"email",{configure:o,hasLinkAccount:n,registerLinkUser:i,authorize:s,attachKycInfo:a,presentKycInfoVerification:l,verifyIdentity:c,registerWalletAddress:p,collectPaymentMethod:h,createCryptoPaymentToken:T}=stripeReactNative.useOnramp(),[d,m]=Ss.useState(r),[b,v]=Ss.useState(!!e?.externalUserId),[x,k]=Ss.useState(false),[R,w]=Ss.useState(false),[I,f]=Ss.useState(""),[u,S]=Ss.useState(null),[y,F]=Ss.useState(e?.email??""),[B,D]=Ss.useState(e?.phone??""),[V,A]=Ss.useState(""),[M,Q]=Ss.useState("US"),[We,q]=Ss.useState(""),[Ue,J]=Ss.useState(""),ie=Ss.useRef(""),ee=Ss.useRef(""),Z=Ss.useRef(""),[ce,U]=Ss.useState(false),[Se,st]=Ss.useState(false),Ee=Ss.useRef(0),de=Ss.useRef(false),He=Ss.useRef(false),Ve=Ss.useRef(false),$e=Ss.useRef(false),mt=Ss.useRef(e?.email??""),Ne=Ss.useRef(false),qe=Ss.useRef(null),Le=Ss.useRef(""),xe=Ss.useRef(e?.defaultNetwork??stripeReactNative.Onramp.CryptoNetwork.base),ve=Ss.useRef(null),[Xe,Qe]=Ss.useState(0),[at,Xt]=Ss.useState(_p),[Be,Re]=Ss.useState(e?.defaultWalletAddress??""),[rt,ct]=Ss.useState(""),[Oe,Ie]=Ss.useState(e?.defaultNetwork??stripeReactNative.Onramp.CryptoNetwork.base),[Pe,Ut]=Ss.useState(e?.defaultSourceAmount??"100"),[Nt,pe]=Ss.useState(e?.defaultSourceCurrency??"usd"),[Ke,er]=Ss.useState(e?.defaultDestinationCurrency??"usdc"),[je,Vt]=Ss.useState(null),[et,be]=Ss.useState(),[nt,K]=Ss.useState(),[ue,_]=Ss.useState(false),C=Ss.useRef(null),O=Ss.useRef(false),N=Ss.useRef(0),$=Ss.useRef(e?.onComplete),j=Ss.useRef(e?.onError),fe=Ss.useRef(e?.onStepChange),Ge=Ss.useRef(r);Ss.useEffect(()=>{$.current=e?.onComplete;},[e?.onComplete]),Ss.useEffect(()=>{j.current=e?.onError;},[e?.onError]),Ss.useEffect(()=>{fe.current=e?.onStepChange;},[e?.onStepChange]);let W=Ss.useRef(r);Ss.useEffect(()=>{d!==W.current&&(fe.current?.(d,W.current),W.current=d),Ge.current=d;},[d]),Ss.useEffect(()=>{R&&d!=="email"&&w(false);},[R,d]),Ss.useEffect(()=>{b&&d!==r&&v(false);},[b,d,r]);let E=Ss.useCallback((P,z,me)=>{let Ae={code:P,message:z,step:Ge.current,stripeErrorCode:me};S(Ae),f(""),j.current?.(Ae);},[]),tr=Ss.useCallback(P=>{let z={sessionId:P.id,status:P.status,sourceAmount:P.transaction_details.source_amount,sourceCurrency:P.transaction_details.source_currency,destinationAmount:P.transaction_details.destination_amount,destinationCurrency:P.transaction_details.destination_currency,destinationNetwork:P.transaction_details.destination_network,walletAddress:P.transaction_details.wallet_address,fees:{networkFee:P.transaction_details.fees.network_fee_amount,transactionFee:P.transaction_details.fees.transaction_fee_amount}};return $.current?.(z),z},[]),Fe=Ss.useCallback(()=>S(null),[]),Te=P=>P.refresh_token??P.refresh?.refresh_token??"",dt=Ss.useCallback((P,z,me,Ae,De)=>{ee.current=z,ie.current=me,e?.externalUserId&&Rp({accessToken:z,refreshToken:me,customerId:P,externalUserId:e.externalUserId,email:De||y,expiresAt:Date.now()+Ae*1e3});},[e?.externalUserId,y]),ot=Ss.useCallback(async()=>{let P=ie.current;if(!P)return console.warn("[tryRefreshAccessToken] no refresh token available"),null;try{let z=await cp(P,Z.current??void 0),me=z.access_token,Ae=Te(z)||P;return J(me),dt(Z.current,me,Ae,z.expires_in??3600),me}catch(z){return console.error("[tryRefreshAccessToken] refresh failed:",z?.message),await ka(),Qi=null,ve.current=null,ee.current="",ie.current="",Z.current="",J(""),q(""),null}},[dt]),Je=Ss.useCallback(async P=>{try{return await P(ee.current)}catch(z){let me=z?.message??"";if(me.includes("stripe_onramp_forbidden")||me.includes("403")){let Ae=await ot();if(!Ae)throw E("authorization_error","Session expired. Please sign in again."),m("email"),z;return await P(Ae)}throw z}},[ot,E]);Ss.useEffect(()=>{if(!(e?.merchantIdentifier?.trim()??"")){_(false);return}let z=false;return stripeReactNative.isPlatformPaySupported().then(me=>{z||_(me);}),()=>{z=true;}},[e?.merchantIdentifier]),Ss.useEffect(()=>(O.current=false,()=>{O.current=true,C.current&&clearTimeout(C.current);}),[]);let Hr=Ss.useRef(false);Ss.useEffect(()=>{if(Hr.current)return;if(!e?.externalUserId){ka(),Qi=null,ve.current=null,v(false);return}let P=false;return (async()=>{try{let z=await Hm();if(P||!z){P||v(!1);return}if(z.externalUserId!==e.externalUserId){await ka(),Qi=null,ve.current=null,P||v(!1);return}let me=Date.now()>=z.expiresAt,Ae=z.accessToken,De=z.refreshToken;if(me)try{let wt=await cp(z.refreshToken,z.customerId);if(P)return;Ae=wt.access_token,De=wt.refresh_token??wt.refresh?.refresh_token??z.refreshToken,await Rp({accessToken:Ae,refreshToken:De,customerId:z.customerId,externalUserId:e.externalUserId,email:z.email,expiresAt:Date.now()+(wt.expires_in??3600)*1e3});}catch(wt){console.warn("[useStripeOnramp] refresh failed on mount, user must re-login:",wt?.message),await ka(),Qi=null,ve.current=null,P||v(!1);return}if(P)return;if(Hr.current=!0,q(z.customerId),Z.current=z.customerId,J(Ae),ee.current=Ae,ie.current=De,z.email&&(F(z.email),mt.current=z.email),Qi===z.customerId)ve.current=Promise.resolve({error:void 0});else {let wt=await o({merchantDisplayName:e?.merchantDisplayName??"Unifold",appearance:{lightColors:{primary:"#2d22a1",contentOnPrimary:"#ffffff",borderSelected:"#07b8b8"},darkColors:{primary:"#800080",contentOnPrimary:"#ffffff",borderSelected:"#526f3e"},style:"ALWAYS_DARK",primaryButton:{cornerRadius:8,height:48}},cryptoCustomerId:z.customerId});wt.error?console.error("[useStripeOnramp] restore configureSDK error:",wt.error.message):Qi=z.customerId,ve.current=Promise.resolve(wt);}if(P)return;let ht=()=>new Promise(wt=>{let hr=()=>{Ne.current&&Le.current?wt():setTimeout(hr,200);};hr();});try{if(await Promise.race([ht(),new Promise((hr,Pt)=>setTimeout(()=>Pt(new Error("timeout")),1e4))]),P)return;let wt=Le.current.toLowerCase();await p(wt,xe.current);}catch(wt){console.warn("[useStripeOnramp] wallet re-registration on restore failed (non-fatal):",wt?.message);}if(P)return;try{let hr=(await ai(Z.current,ee.current)).kyc_tiers??[],Pt=hr.find(Mo=>Mo.tier==="l0"),jr=hr.find(Mo=>Mo.tier==="l1"),co=hr.find(Mo=>Mo.tier==="l2"),to=Pt?.verification_status==="verified",pn=jr?.verification_status==="verified",gr=co?.verification_status==="verified",oi=!!Pt?.verification_status&&Pt.verification_status!=="not_started";m(to||pn||gr?"session_params":oi?"kyc_offer":"kyc");}catch{m("kyc");}}finally{P||v(false);}})(),()=>{P=true;}},[]),Ss.useEffect(()=>{if(!e?.publishableKey||!e?.externalUserId||!e?.recipientAddress||ce)return;let P=false;st(true);async function z(){try{let[me,Ae]=await Promise.all([_m({external_user_id:e.externalUserId,recipient_address:e.recipientAddress,destination_chain_type:e?.destinationChainType,destination_chain_id:e?.destinationChainId,destination_token_address:e?.destinationTokenAddress}),e?.destinationTokenAddress&&e?.destinationChainId&&e?.destinationChainType?Pm({token_address:e.destinationTokenAddress,chain_id:e.destinationChainId,chain_type:e.destinationChainType}).catch(gr=>(console.warn("[useStripeOnramp] fetchDefaultOnrampToken failed, using chain_id fallback:",gr?.message),null)):Promise.resolve(null)]);if(P)return;let De=e?.destinationChainType??"ethereum",ht=me.data.find(gr=>gr.chain_type===De);if(ht?.address){let gr=ht.address.toLowerCase();Re(gr),Le.current=gr,ht.recipient_address&&ct(ht.recipient_address);}else console.warn("[resolveWallet] No wallet found for chain_type",De,"in",me.data?.length,"wallets");let wt={base:stripeReactNative.Onramp.CryptoNetwork.base,ethereum:stripeReactNative.Onramp.CryptoNetwork.ethereum,solana:stripeReactNative.Onramp.CryptoNetwork.solana,bitcoin:stripeReactNative.Onramp.CryptoNetwork.bitcoin,polygon:stripeReactNative.Onramp.CryptoNetwork.polygon},hr={8453:"base",1:"ethereum",137:"polygon"},Pt=Ae?.destination_network,jr="none";if(Pt&&wt[Pt])Ie(wt[Pt]),xe.current=wt[Pt],jr=Pt+" (from default_token API)";else if(e?.destinationChainId&&hr[e.destinationChainId]){let gr=hr[e.destinationChainId];wt[gr]&&(Ie(wt[gr]),xe.current=wt[gr]),jr=gr+" (from chain_id "+e.destinationChainId+")";}else wt[De]&&(Ie(wt[De]),xe.current=wt[De],jr=De+" (from chain_type fallback)");Ae?.destination_currency&&er(Ae.destination_currency.toLowerCase());let co=Ae?.destination_token_metadata,to=zi(co?.icon_urls,co?.icon_url),pn=zi(co?.chain?.icon_urls,co?.chain?.icon_url);to&&be(to),pn&&K(pn),U(!0),Ne.current=!0;}catch(me){if(P)return;console.error("[resolveWallet] Failed to resolve wallet:",me?.message),U(true),Ne.current=true;}finally{P||st(false);}}return qe.current=z(),()=>{P=true;}},[e?.publishableKey,e?.externalUserId,Xe]);let ge=Ss.useCallback(async()=>{if(ve.current)return ve.current;let P=o({merchantDisplayName:e?.merchantDisplayName??"Unifold",appearance:{lightColors:{primary:"#2d22a1",contentOnPrimary:"#ffffff",borderSelected:"#07b8b8"},darkColors:{primary:"#800080",contentOnPrimary:"#ffffff",borderSelected:"#526f3e"},style:"ALWAYS_DARK",primaryButton:{cornerRadius:8,height:48}}}).then(z=>(z.error&&(console.error("[useStripeOnramp] configureSDK error:",z.error.message,z.error.code),ve.current=null),z)).catch(z=>{throw console.error("[useStripeOnramp] configureSDK threw:",z?.message??z),ve.current=null,z});return ve.current=P,P},[o,e?.merchantDisplayName]);Ss.useEffect(()=>{e?.externalUserId||ge();},[]);let xt=Ss.useCallback(async P=>{if(!de.current){de.current=true,k(true),Fe(),f("Creating auth intent...");try{let z=await lp(P);f("Waiting for authorization...");let me=await s(z);if(me?.error){E("authorization_error","Something went wrong during authorization. Please try again."),m("email");return}if(me?.status==="Denied"){E("authorization_error","Authorization denied by user."),m("email");return}if(me?.status!=="Consented"||!me.customerId){E("authorization_error","Authorization was canceled."),m("email");return}f("Exchanging tokens...");let Ae=me.customerId,De=await km(z,Ae),ht=De.access_token,wt=Te(De);F(P),mt.current=P,q(Ae),Z.current=Ae,Qi=Ae,J(ht),dt(Ae,ht,wt,De.expires_in??3600,P),f("Checking verification status...");try{let Pt=(await ai(Ae,ht)).kyc_tiers??[],jr=Pt.find(So=>So.tier==="l0"),co=Pt.find(So=>So.tier==="l1"),to=Pt.find(So=>So.tier==="l2"),pn=jr?.verification_status==="verified",gr=co?.verification_status==="verified",oi=to?.verification_status==="verified",Mo=!!jr?.verification_status&&jr.verification_status!=="not_started";if(f(""),pn||gr||oi){qe.current&&(f("Resolving wallet..."),await qe.current,f(""));let So=Le.current;if(So)try{let Ai=So.toLowerCase(),Lc=xe.current,ni=await p(Ai,Lc);ni?.error?(console.warn("[proceedToAuthorize] wallet registration error:",ni.error.message),E("wallet_error",ni.error.message,ni.error.code),m("wallet")):m("session_params");}catch(Ai){console.warn("[proceedToAuthorize] Inline wallet registration failed, falling back to wallet step:",Ai?.message),m("wallet");}else m("wallet");}else Mo?(await eo(),f(""),m("kyc_offer")):m("kyc");}catch(hr){console.warn("[getOnrampCustomer] failed, defaulting to kyc:",hr?.message),f(""),m("kyc");}}catch(z){E("authorization_error",z?.message??String(z)),m("email");}finally{de.current=false,k(false);}}},[s,Fe,E,dt,p,Oe]),Ot=Ss.useCallback(async()=>{if(reactNative.Keyboard.dismiss(),!y){E("validation_error","Please enter an email address.");return}k(true),Fe(),f("");try{f("Configuring...");let P=await ge();if(P.error){E("configuration_error",P.error.message,P.error.code);return}f("Checking Link account...");let z=await n(y);if(z.error){E("authorization_error",z.error.message,z.error.code);return}z.hasLinkAccount?await xt(y):(f(""),m("disclaimer"));}catch(P){E("unknown_error",P?.message??String(P));}finally{k(false);}},[Fe,ge,y,E,n,xt]),Ar=Ss.useCallback(async()=>{if(!Ve.current){if(!B){E("validation_error","Please enter your phone number.");return}Ve.current=true,k(true),Fe(),f("");try{f("Creating Link account...");let P=await i({email:y,phone:B,fullName:V||y,country:M||"US"});if(P.error){E("registration_error",P.error.message,P.error.code);return}await xt(y);}catch(P){E("registration_error",P?.message??String(P));}finally{Ve.current=false,k(false);}}},[Fe,M,y,E,V,B,i,xt]);Ss.useEffect(()=>{if(d!=="email")return;let P=$e.current||Ip;if(P&&($e.current=false,Ip=false),!e?.email||b)return;if(P){w(true);return}let z=++Ee.current,me=false,Ae=()=>me||Ee.current!==z;return e?.phone?(async()=>{k(true),Fe();try{f("Configuring...");let De=await ge();if(Ae())return;if(De.error){E("configuration_error",De.error.message,De.error.code);return}f("Checking Link account...");let ht=await n(e.email);if(Ae())return;if(ht.error){E("authorization_error",ht.error.message,ht.error.code);return}if(ht.hasLinkAccount){if(Ae())return;await xt(e.email);}else {if(Ae())return;f(""),m("disclaimer");}}catch(De){Ae()||E("unknown_error",De?.message??String(De));}finally{k(false);}})():(async()=>{k(true),Fe();try{f("Configuring...");let De=await ge();if(Ae())return;if(De.error){E("configuration_error",De.error.message,De.error.code);return}f("Checking Link account...");let ht=await n(e.email);if(Ae())return;if(ht.error){E("authorization_error",ht.error.message,ht.error.code);return}if(ht.hasLinkAccount){if(Ae())return;await xt(e.email);}else {if(Ae())return;f(""),m("disclaimer");}}catch(De){Ae()||E("unknown_error",De?.message??String(De));}finally{k(false);}})(),()=>{me=true;}},[d,e?.email,e?.phone,b]);let eo=Ss.useCallback(async()=>{qe.current&&(f("Resolving wallet..."),await qe.current);let P=Le.current;if(P)try{f("Registering wallet...");let z=P.toLowerCase(),me=xe.current;await p(z,me);}catch(z){console.warn("[resolveAndRegisterWallet] wallet registration failed (non-fatal):",z?.message);}else console.warn("[resolveAndRegisterWallet] no resolved deposit address \u2014 skipping registration");},[p]),Io=Ss.useCallback(async(P,z)=>{k(true),Fe(),f(""),Xt(ht=>({...ht,...P}));let me=!z,Ae=z??"kyc_offer",De=z?"kyc_l1":"kyc";try{let ht=P.dobDay&&P.dobMonth&&P.dobYear,wt=P.firstName&&P.lastName,hr={};wt&&(hr.firstName=P.firstName,hr.lastName=P.lastName),P.addressLine1&&(hr.address={line1:P.addressLine1,line2:P.addressLine2||void 0,city:P.city,state:P.state,postalCode:P.postalCode,country:P.country}),P.idNumber&&(hr.idNumber=P.idNumber),ht&&(hr.dateOfBirth={day:parseInt(P.dobDay,10),month:parseInt(P.dobMonth,10),year:parseInt(P.dobYear,10)});let Pt=await a(hr);if(Pt?.error?.message&&(/no active link consumer/i.test(Pt.error.message)||/not be verified/i.test(Pt.error.message))){if(f("Verifying identity..."),!await xs()){E("kyc_error","Please verify your identity to continue."),m(De);return}Pt=await a(hr);}if(Pt?.error){let gr=me?"l0":"l1";try{let Mo=(await ai(Z.current,ee.current)).kyc_tiers?.find(So=>So.tier===gr);if(Mo?.verification_status==="verified"){let So=me?"session_params":Ae;await eo(),f(""),m(So);return}if(Mo?.verification_status==="rejected"){if(me){await eo(),f(""),m(Ae);return}E("kyc_error","Something went wrong. Please try again."),m(De);return}}catch(oi){console.warn("[attachKyc] could not fetch verification status:",oi?.message);}if(me){await eo(),f(""),m(Ae);return}E("kyc_error",Pt.error.message,Pt.error.stripeErrorCode??Pt.error.code),m(De);return}if(!(Pt&&Object.keys(Pt).length>0&&!Pt.error)){let gr=me?"l0":"l1";if(f("Verifying identity..."),(!Z.current||!ee.current)&&(console.warn(`[attachKyc] \u274C cannot poll ${gr} \u2014 missing customerIdRef or accessTokenRef`),!me)){E("kyc_error","Unable to verify identity. Please try again."),m(De);return}let oi=Z.current,Mo=ee.current,So=10,Ai=!1;if(oi&&Mo)for(let Lc=0;Lc<So;Lc++){try{let Ou=(await ai(oi,Mo)).kyc_tiers?.find(Yy=>Yy.tier===gr);if(Ou?.verification_status==="verified"){Ai=!0;break}if(Ou?.verification_status==="rejected"){if(me)break;console.warn(`[attachKyc] \u274C ${gr} rejected:`,Ou?.verification_errors),E("kyc_error","KYC verification was rejected. Please try again."),m(De);return}}catch(ni){console.warn(`[attachKyc] ${gr} poll error:`,ni?.message);}await new Promise(ni=>setTimeout(ni,2e3));}if(!Ai&&!me){console.warn(`[attachKyc] \u274C ${gr} verification timed out after`,So,"attempts"),E("kyc_error","Identity verification is taking longer than expected. Please try again."),m(De);return}await eo(),f(""),m(me&&Ai?"session_params":Ae);return}f("Please review your KYC information...");let to=await l(null);if(to?.error){E("kyc_error",to.error.message,to.error.stripeErrorCode??to.error.code),m(De);return}if(to?.status==="UpdateAddress"){E("kyc_error","Please update your address and resubmit."),m(De);return}await eo(),f(""),m(me?"session_params":Ae);}catch(ht){E("kyc_error",ht?.message??String(ht)),m(De);}finally{k(false);}},[a,Fe,E,l,eo]),xs=Ss.useCallback(async()=>{let P=mt.current||e?.email;if(!P)return console.warn("[reestablishLinkSession] no email available \u2014 emailRef:",JSON.stringify(mt.current),"config.email:",e?.email),false;try{let z=await lp(P),me=await s(z);return me?.status==="Consented"&&me.customerId?(Z.current=me.customerId,q(me.customerId),!0):(console.warn("[reestablishLinkSession] authorize did not consent:",me?.status),!1)}catch(z){return console.warn("[reestablishLinkSession] failed:",z?.message),false}},[s,e?.email]),Dc=Ss.useCallback(async()=>{if(!He.current){He.current=true,k(true),Fe(),f("Launching identity verification...");try{let P=await c();if(P?.error?.message&&(/no active link consumer/i.test(P.error.message)||/not be verified/i.test(P.error.message))){if(f("Verifying identity..."),!await xs()){E("identity_error","Please verify your identity to continue.");return}P=await c();}if(P?.error){let me=P.error.message??"";if(/cancel/i.test(me)){f("");return}E("identity_error",me,P.error.code);return}f(""),vs.current?(vs.current=!1,m("session_params")):m("wallet");}catch(P){E("identity_error",P?.message??String(P));}finally{He.current=false,k(false);}}},[Fe,E,xs,c]),vs=Ss.useRef(false);Ss.useEffect(()=>{d==="identity"&&!x&&Dc();},[d]);let Vc=Ss.useCallback(async()=>{if(!Be){E("validation_error","Please enter a wallet address.");return}k(true),Fe(),f("");try{let P=Be.toLowerCase(),z=await p(P,Oe);if(z?.error){console.warn("[registerWallet] error:",z.error.message),E("wallet_error",z.error.message,z.error.code);return}f(""),m("kyc_offer");}catch(P){console.error("[registerWallet] exception:",P?.message??String(P)),E("wallet_error",P?.message??String(P));}finally{k(false);}},[Fe,E,Be,Oe,p]);Ss.useEffect(()=>{d==="wallet"&&ce&&Be&&Vc();},[d,ce,Be]);let sa=Ss.useCallback(P=>{O.current=false,N.current=0;let z=0,me=async()=>{z+=1;let Ae=ee.current;try{let De=await Im(P,Ae);if(O.current)return;N.current=0,De.status==="fulfillment_complete"?(Vt(De),m("success")):C.current=setTimeout(me,3e3);}catch(De){if(O.current)return;let ht=De?.message??"";if((ht.includes("stripe_onramp_forbidden")||ht.includes("403"))&&await ot()&&!O.current){C.current=setTimeout(me,1e3);return}if(N.current+=1,console.error(`[pollSessionStatus] poll #${z} error:`,ht),N.current>=_C){E("session_error","We couldn't confirm delivery status. Your purchase may still complete \u2014 try again, or close and check your wallet.");return}C.current=setTimeout(me,5e3);}};C.current=setTimeout(me,3e3);},[E,ot]),Du=Ss.useCallback(()=>{if(Ge.current==="processing"&&je?.id){if(!ee.current){E("session_error","Your session has expired. Your purchase may still complete \u2014 close and check your wallet.");return}Fe(),N.current=0,C.current&&(clearTimeout(C.current),C.current=null),sa(je.id);}},[Fe,E,sa,je?.id]),Li=Ss.useCallback(async P=>{k(true),Fe(),f("");try{f("Confirming purchase...");let z=await Je(me=>vm(P,me));Vt(z),m("processing"),f(""),sa(z.id);}finally{k(false);}},[Fe,sa,Je]),wl=Ss.useRef(false),Vu=Ss.useCallback(async()=>{if(!(!je||wl.current)){wl.current=true;try{k(!0),Fe(),f("Refreshing quote...");let P=await Je(z=>dp(je.id,z));Vt(P),await Li(P.id);}catch{E("session_error","Something went wrong. Please try again."),m("quote");}finally{k(false),wl.current=false;}}},[Fe,E,Li,je,Je]),ye=Ss.useCallback(async(P=false,z,me)=>{let Ae=z??Pe;if(!Ae||isNaN(Number(Ae))||Number(Ae)<=0){E("validation_error","Please enter a valid amount.");return}z&&Ut(z),k(true),Fe(),f("");try{let De=await ge();if(De.error){E("configuration_error",De.error.message,De.error.code);return}let ht;if(me)ht=me;else if(P){if(!e?.merchantIdentifier?.trim()){E("configuration_error","Apple Pay is not configured. Pass merchantIdentifier on StripeOnramp or in onramp config."),m("session_params");return}f("Opening Apple Pay...");let Pt={applePay:{merchantCountryCode:"US",currencyCode:Nt.toUpperCase(),cartItems:[{paymentType:stripeReactNative.PlatformPay.PaymentType.Immediate,label:`${Ke.toUpperCase()} purchase + fees`,amount:Ae}]}},jr=await h("PlatformPay",Pt);if(jr?.error){let to=jr.error.message??"",pn=jr.error.code??"";/cancel/i.test(to)||/cancel/i.test(pn)||(E("payment_error",to,pn),m("session_params"));return}if(!jr?.displayData)return;f("Creating payment token...");let co=await T();if(co?.error){E("payment_error",co.error.message,co.error.code),m("session_params");return}ht=co.cryptoPaymentToken;}else {f("Select a payment method...");let Pt=await h("Card");if(Pt?.error){let co=Pt.error.message??"",to=Pt.error.code??"";/cancel/i.test(co)||/cancel/i.test(to)||(E("payment_error",co,to),m("session_params"));return}if(!Pt?.displayData)return;f("Creating payment token...");let jr=await T();if(jr?.error){E("payment_error",jr.error.message,jr.error.code),m("session_params");return}ht=jr.cryptoPaymentToken;}f("Creating onramp session...");let wt=Le.current||Be;if(!wt){E("wallet_error","No wallet address available. Please go back and enter a wallet address.");return}let hr=await Je(Pt=>xm({cryptoCustomerId:Z.current,paymentToken:ht,sourceAmount:Number(Ae),sourceCurrency:Nt,destinationCurrency:Ke,walletAddress:wt,destinationNetwork:Oe},Pt));Vt(hr),f(""),P?await Li(hr.id):m("quote");}catch{E("session_error","Something went wrong. Please try again."),m("session_params");}finally{k(false),f("");}},[Fe,ge,h,T,Ke,E,Li,Ut,Pe,Nt,Be,Oe,Je,e?.merchantIdentifier]),Ze=Ss.useCallback(async()=>{k(true),Fe(),f("Select a payment method...");try{let P=await ge();if(P.error)return E("configuration_error",P.error.message,P.error.code),null;let z=await h("Card");if(z?.error?.message&&(/no active link consumer/i.test(z.error.message)||/not be verified/i.test(z.error.message))){if(!await xs())return E("authorization_error","Please verify your identity to add a payment method."),null;z=await h("Card");}if(z?.error){let ht=z.error.message??"",wt=z.error.code??"";return /cancel/i.test(ht)||/cancel/i.test(wt)||E("payment_error",ht,wt),null}if(!z?.displayData)return null;let Ae=z.displayData;f("Saving payment method...");let De=await T();return De?.error?(E("payment_error",De.error.message,De.error.code),null):{token:De.cryptoPaymentToken,sublabel:Ae.sublabel??""}}catch(P){return E("session_error",P?.message??String(P)),null}finally{k(false),f("");}},[Fe,ge,h,T,E,xs]),kr=Ss.useCallback(async()=>{if(je){k(true),Fe(),f("");try{let P=await Je(z=>dp(je.id,z));Vt(P);}catch{E("session_error","Something went wrong. Please try again.");}finally{k(false);}}},[Fe,E,je,Je]),_n=Ss.useCallback(()=>{O.current=true,N.current=0,C.current&&(clearTimeout(C.current),C.current=null),m(r),k(false),w(false),f(""),S(null),F(e?.email??""),mt.current=e?.email??"",D(e?.phone??""),A(""),Q("US"),q(""),Z.current="",J(""),ee.current="",ie.current="",U(false),st(false),qe.current=null,Qe(P=>P+1),Xt(_p),Re(""),Le.current="",Ne.current=false,Ie(stripeReactNative.Onramp.CryptoNetwork.ethereum),Ut(e?.defaultSourceAmount??"100"),pe(e?.defaultSourceCurrency??"usd"),er(e?.defaultDestinationCurrency??"usdc"),ct(""),be(void 0),K(void 0),Vt(null),Ee.current+=1,de.current=false,He.current=false,Ve.current=false;},[e,r]),Oc=Ss.useCallback(()=>{vs.current=true,m("kyc_offer");},[]),Bi=Ss.useCallback(async()=>{await ka(),Qi=null,ve.current=null,Ip=true,$e.current=true,O.current=true,N.current=0,C.current&&(clearTimeout(C.current),C.current=null),Ee.current+=1,de.current=false,He.current=false,Ve.current=false,ee.current="",ie.current="",Z.current="",Le.current="",Ne.current=false,qe.current=null,J(""),q(""),F(e?.email??""),mt.current=e?.email??"",D(e?.phone??""),A(""),Q("US"),Vt(null),S(null),k(false),w(false),f(""),Xt(_p),Re(""),U(false),st(false),Qe(P=>P+1),ct(""),be(void 0),K(void 0),m(r);},[e?.email,e?.phone,r]);return {step:d,restoring:b,loading:x,status:I,error:u,email:y,phone:B,fullName:V,country:M,customerId:We,accessToken:Ue,session:je,kycData:at,walletAddress:Be,resolvedRecipientAddress:rt,walletNetwork:Oe,sourceAmount:Pe,sourceCurrency:Nt,destinationCurrency:Ke,tokenIconUrl:et,networkIconUrl:nt,applePaySupported:ue,walletReady:ce,walletLoading:Se,setStep:m,setStatus:f,setEmail:F,setPhone:D,setFullName:A,setCountry:Q,setWalletAddress:Re,setWalletNetwork:Ie,setSourceAmount:Ut,setSourceCurrency:pe,setDestinationCurrency:er,checkEmail:Ot,register:Ar,attachKyc:Io,verifyIdentity:Dc,requestKYCUpgrade:Oc,kycUpgradeMode:vs,logout:Bi,registerWallet:Vc,collectPaymentMethod:ye,addPaymentMethod:Ze,refreshQuote:kr,confirmCheckout:Vu,reset:_n,clearError:Fe,emitComplete:tr,resumeFulfillmentPolling:Du,amountFirst:t,switchingAccount:R}}function jm({initialData:e={},loading:t=false,error:r,onComplete:o,onCancel:n,onClose:i}){let s=On(),{colors:a,fonts:l,components:c}=L(),p=c.input.placeholderColor,[h,T]=Ss.useState(e.dobMonth??""),[d,m]=Ss.useState(e.dobDay??""),[b,v]=Ss.useState(e.dobYear??""),[x,k]=Ss.useState(e.idNumber??""),[R,w]=Ss.useState(null),I=Ss.useRef(null),f=Ss.useRef(null),u=Ss.useRef(null),S=h.length===2&&d.length===2&&b.length===4&&x.trim().length>0,y=()=>{if(!S)return;let B=parseInt(h,10),D=parseInt(d,10),V=parseInt(b,10),A=new Date().getFullYear();if(B<1||B>12){w("Please enter a valid month (01\u201312).");return}if(D<1||D>31){w("Please enter a valid day (01\u201331).");return}if(V<1900||V>A){w(`Please enter a valid year (1900\u2013${A}).`);return}w(null),o({dobMonth:h,dobDay:d,dobYear:b,idNumber:x});},F=R||r;return jsxRuntime.jsx(reactNative.KeyboardAvoidingView,{style:s.form.flex,behavior:reactNative.Platform.OS==="ios"?"padding":void 0,children:jsxRuntime.jsxs(reactNative.View,{style:s.form.screen,children:[jsxRuntime.jsx(or,{onPress:t?i??n:n,title:"Increase Your Limits",variant:t?"close":"back"}),jsxRuntime.jsx(Lt,{style:s.form.flex,contentContainerStyle:En.scrollContent,keyboardShouldPersistTaps:"handled",children:jsxRuntime.jsxs(reactNative.View,{pointerEvents:t?"none":"auto",style:{opacity:t?.5:1},children:[jsxRuntime.jsx(reactNative.Text,{style:s.form.title,children:"Date of birth & SSN"}),jsxRuntime.jsx(reactNative.Text,{style:s.form.subtitle,children:"This information is used to verify your identity and increase your transaction limits."}),jsxRuntime.jsxs(reactNative.View,{style:En.section,children:[jsxRuntime.jsx(reactNative.Text,{style:[s.form.fieldLabel,{marginBottom:8}],children:"Date of birth"}),jsxRuntime.jsxs(reactNative.View,{style:En.dobRow,children:[jsxRuntime.jsx(reactNative.View,{style:En.dobCol,children:jsxRuntime.jsx(reactNative.TextInput,{style:[s.form.input,En.dobInput],placeholder:"MM",placeholderTextColor:p,value:h,onChangeText:B=>{let D=B.replace(/\D/g,"").slice(0,2);T(D),D.length===2&&I.current?.focus();},keyboardType:"number-pad",maxLength:2,editable:!t})}),jsxRuntime.jsx(reactNative.View,{style:En.dobCol,children:jsxRuntime.jsx(reactNative.TextInput,{ref:I,style:[s.form.input,En.dobInput],placeholder:"DD",placeholderTextColor:p,value:d,onChangeText:B=>{let D=B.replace(/\D/g,"").slice(0,2);m(D),D.length===2&&f.current?.focus();},keyboardType:"number-pad",maxLength:2,editable:!t})}),jsxRuntime.jsx(reactNative.View,{style:En.dobColWide,children:jsxRuntime.jsx(reactNative.TextInput,{ref:f,style:[s.form.input,En.dobInput],placeholder:"YYYY",placeholderTextColor:p,value:b,onChangeText:B=>{let D=B.replace(/\D/g,"").slice(0,4);v(D),D.length===4&&u.current?.focus();},keyboardType:"number-pad",maxLength:4,editable:!t})})]})]}),jsxRuntime.jsxs(reactNative.View,{style:En.section,children:[jsxRuntime.jsx(reactNative.Text,{style:[s.form.fieldLabel,{marginBottom:8}],children:"Social Security Number"}),jsxRuntime.jsx(reactNative.TextInput,{ref:u,style:s.form.input,placeholder:"123-45-6789",placeholderTextColor:p,value:x,onChangeText:k,keyboardType:"number-pad",secureTextEntry:true,returnKeyType:"done",onSubmitEditing:y,editable:!t}),jsxRuntime.jsx(reactNative.Text,{style:[s.form.hint,{marginTop:10,lineHeight:18}],children:"Your SSN is transmitted securely and never stored on this device."})]}),F?jsxRuntime.jsx(reactNative.Text,{style:[s.amount.inlineError,{marginTop:20}],children:F}):null]})}),jsxRuntime.jsx(reactNative.View,{style:s.form.footer,children:t?jsxRuntime.jsx(reactNative.View,{style:[s.form.continueBtn,s.form.loaderInButton],children:jsxRuntime.jsx(St,{size:28,strokeWidth:2,gradientFrom:a.primaryForeground,gradientTo:a.primaryForeground})}):jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[s.form.continueBtn,!S&&s.form.continueBtnDisabled],onPress:y,disabled:!S,children:jsxRuntime.jsx(reactNative.Text,{style:[s.form.continueBtnText,!S&&s.form.continueBtnTextDisabled],children:"Submit"})})})]})})}var En=reactNative.StyleSheet.create({scrollContent:{flexGrow:1,paddingBottom:16,paddingTop:16},section:{marginTop:20},dobRow:{flexDirection:"row",gap:10},dobCol:{flex:1},dobColWide:{flex:1.5},dobInput:{textAlign:"center"}});function $m({borderRadius:e,backgroundColor:t,borderColor:r,borderWidth:o}){let n=Ss.useRef(new reactNative.Animated.Value(.3)).current;return Ss.useEffect(()=>{let i=reactNative.Animated.loop(reactNative.Animated.sequence([reactNative.Animated.timing(n,{toValue:1,duration:800,useNativeDriver:true}),reactNative.Animated.timing(n,{toValue:.3,duration:800,useNativeDriver:true})]));return i.start(),()=>i.stop()},[n]),jsxRuntime.jsxs(reactNative.Animated.View,{style:[Ht.card,{backgroundColor:t,borderRadius:e,borderColor:r,borderWidth:o,opacity:n,alignItems:"center"}],children:[jsxRuntime.jsx(reactNative.View,{style:Ht.skeletonLine}),jsxRuntime.jsx(reactNative.View,{style:[Ht.skeletonLine,{width:"60%"}]})]})}function qm({onRefresh:e,colors:t,fonts:r}){let[o,n]=Ss.useState(10),i=Ss.useRef(null);Ss.useEffect(()=>(i.current=setInterval(()=>{n(l=>l<=1?(i.current&&clearInterval(i.current),0):l-1);},1e3),()=>{i.current&&clearInterval(i.current);}),[]);let s=Ss.useCallback(()=>{o>0||(e(),n(10),i.current=setInterval(()=>{n(l=>l<=1?(i.current&&clearInterval(i.current),0):l-1);},1e3));},[o,e]),a=o===0;return jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:s,disabled:!a,style:Ht.refreshBtn,activeOpacity:.7,children:a?jsxRuntime.jsx(ua,{size:14,color:t.foregroundMuted,strokeWidth:2}):jsxRuntime.jsxs(reactNative.Text,{style:[Ht.refreshText,{color:t.foregroundMuted,fontFamily:r.regular}],children:[o,"s"]})})}function Ym({onSelectL1:e,onSelectL2:t,onSkip:r,onClose:o,onRefresh:n,loading:i=false,loadingTiers:s=false,error:a,l1Status:l="not_started",l2Status:c="not_started",l1Completed:p=false,l2Completed:h=false,canPurchase:T=false,currentLimit:d}){let m=On(),{colors:b,fonts:v,components:x}=L(),k=[Ht.card,{backgroundColor:x.card.backgroundColor,borderRadius:x.card.borderRadius??12,borderWidth:x.card.borderWidth,borderColor:x.card.borderColor}],R=[...k,{opacity:.5}],w=l==="verified",I=l==="pending",f=l==="rejected",u=c==="verified",S=c==="pending",y=w&&u,F=!w,B=!u,D=w,V=(T||w)&&!y,A=M=>`$${M.toLocaleString()}`;return jsxRuntime.jsxs(reactNative.View,{style:m.form.screen,children:[jsxRuntime.jsx(or,{onPress:o,title:"Increase Your Limits"}),jsxRuntime.jsxs(reactNative.View,{style:Ht.content,children:[d!==void 0&&jsxRuntime.jsxs(reactNative.View,{style:[Ht.limitBadge,{backgroundColor:x.card.backgroundColor,borderColor:x.card.borderColor,borderWidth:x.card.borderWidth,borderRadius:x.card.borderRadius??12}],children:[jsxRuntime.jsx(reactNative.Text,{style:[Ht.limitLabel,{color:b.foregroundMuted,fontFamily:v.regular}],children:"Current transaction limit"}),jsxRuntime.jsxs(reactNative.Text,{style:[Ht.limitValue,{color:b.foreground,fontFamily:v.semibold}],children:[A(d)," USD"]})]}),jsxRuntime.jsx(reactNative.Text,{style:[Ht.subtitle,{color:b.foregroundMuted,fontFamily:v.regular}],children:s?"Checking your verification status...":y?"All verification levels have been completed. Your limits are at the maximum available.":T?"Complete additional verification to increase your transaction limits.":"Complete identity verification to start making purchases."}),s?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx($m,{borderRadius:x.card.borderRadius??12,backgroundColor:x.card.backgroundColor,borderColor:x.card.borderColor,borderWidth:x.card.borderWidth}),jsxRuntime.jsx($m,{borderRadius:x.card.borderRadius??12,backgroundColor:x.card.backgroundColor,borderColor:x.card.borderColor,borderWidth:x.card.borderWidth})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[F&&(I?jsxRuntime.jsxs(reactNative.View,{style:k,children:[jsxRuntime.jsxs(reactNative.View,{style:Ht.pendingHeader,children:[jsxRuntime.jsx(To,{size:20,color:b.foregroundMuted,strokeWidth:1.8}),jsxRuntime.jsx(reactNative.Text,{style:[Ht.cardTitle,{color:b.foreground,fontFamily:v.semibold,flex:1}],children:"Date of Birth & SSN"}),n?jsxRuntime.jsx(qm,{onRefresh:n,colors:b,fonts:v}):null]}),jsxRuntime.jsxs(reactNative.View,{style:[Ht.pendingFooter,{marginLeft:28}],children:[jsxRuntime.jsx(reactNative.Text,{style:[Ht.cardBody,{color:b.foregroundMuted,fontFamily:v.regular}],children:"Verification in progress..."}),jsxRuntime.jsx(St,{size:18,strokeWidth:2,gradientFrom:b.primary,gradientTo:b.primary})]})]}):jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[k,Ht.cardRow],onPress:e,activeOpacity:.7,children:[jsxRuntime.jsx(To,{size:20,color:b.foregroundMuted,strokeWidth:1.8}),jsxRuntime.jsxs(reactNative.View,{style:Ht.cardContent,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ht.cardTitle,{color:b.foreground,fontFamily:v.semibold}],children:f?"Retry Date of Birth & SSN":"Provide Date of Birth & SSN"}),jsxRuntime.jsx(reactNative.Text,{style:[Ht.cardBody,{color:b.foregroundMuted,fontFamily:v.regular}],children:f?"Previous verification was unsuccessful. Please try again.":T?"Increases your per-transaction and weekly limits.":"Required to start making purchases."})]}),jsxRuntime.jsx(Wr,{size:18,color:b.foregroundMuted,strokeWidth:2})]})),B&&(S?jsxRuntime.jsxs(reactNative.View,{style:k,children:[jsxRuntime.jsxs(reactNative.View,{style:Ht.pendingHeader,children:[jsxRuntime.jsx(Wc,{size:20,color:b.foregroundMuted,strokeWidth:1.8}),jsxRuntime.jsx(reactNative.Text,{style:[Ht.cardTitle,{color:b.foreground,fontFamily:v.semibold,flex:1}],children:"Photo ID & Selfie"}),n?jsxRuntime.jsx(qm,{onRefresh:n,colors:b,fonts:v}):null]}),jsxRuntime.jsxs(reactNative.View,{style:[Ht.pendingFooter,{marginLeft:28}],children:[jsxRuntime.jsx(reactNative.Text,{style:[Ht.cardBody,{color:b.foregroundMuted,fontFamily:v.regular}],children:"Verification in progress..."}),jsxRuntime.jsx(St,{size:18,strokeWidth:2,gradientFrom:b.primary,gradientTo:b.primary})]})]}):D?jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[k,Ht.cardRow],onPress:t,activeOpacity:.7,children:[jsxRuntime.jsx(Wc,{size:20,color:b.foregroundMuted,strokeWidth:1.8}),jsxRuntime.jsxs(reactNative.View,{style:Ht.cardContent,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ht.cardTitle,{color:b.foreground,fontFamily:v.semibold}],children:"Provide Photo ID & Selfie"}),jsxRuntime.jsx(reactNative.Text,{style:[Ht.cardBody,{color:b.foregroundMuted,fontFamily:v.regular}],children:"Unlocks the highest transaction limits available."})]}),jsxRuntime.jsx(Wr,{size:18,color:b.foregroundMuted,strokeWidth:2})]}):jsxRuntime.jsxs(reactNative.View,{style:[R,Ht.cardRow],children:[jsxRuntime.jsx(Wc,{size:20,color:b.foregroundMuted,strokeWidth:1.8}),jsxRuntime.jsxs(reactNative.View,{style:Ht.cardContent,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ht.cardTitle,{color:b.foregroundMuted,fontFamily:v.regular}],children:"Provide Photo ID & Selfie"}),jsxRuntime.jsx(reactNative.Text,{style:[Ht.cardBody,{color:b.foregroundMuted,fontFamily:v.regular}],children:"Complete Date of Birth & SSN first."})]})]}))]})]}),jsxRuntime.jsxs(reactNative.View,{style:Ht.footer,children:[a?jsxRuntime.jsx(reactNative.Text,{style:[m.form.subtitle,{marginBottom:12,textAlign:"center",color:"red"}],children:a}):null,i?jsxRuntime.jsxs(reactNative.View,{style:Ht.loaderRow,children:[jsxRuntime.jsx(St,{size:24,strokeWidth:2,gradientFrom:b.primary,gradientTo:b.primary}),jsxRuntime.jsx(reactNative.Text,{style:[m.form.ghostBtnText,{marginLeft:8}],children:"Verifying..."})]}):y?jsxRuntime.jsx(reactNative.TouchableOpacity,{style:m.form.continueBtn,onPress:r,activeOpacity:.7,children:jsxRuntime.jsx(reactNative.Text,{style:m.form.continueBtnText,children:"Done"})}):V?jsxRuntime.jsx(reactNative.TouchableOpacity,{style:m.form.ghostBtn,onPress:r,activeOpacity:.7,children:jsxRuntime.jsx(reactNative.Text,{style:m.form.ghostBtnText,children:"Skip for now"})}):null]})]})}var Ht=reactNative.StyleSheet.create({content:{flex:1,paddingTop:24,gap:16},limitBadge:{alignItems:"center",paddingVertical:24,paddingHorizontal:20,gap:4},limitLabel:{fontSize:13},limitValue:{fontSize:20,paddingTop:8},subtitle:{fontSize:15,lineHeight:22,textAlign:"center",paddingHorizontal:16,paddingVertical:24},card:{padding:20,gap:6},cardRow:{flexDirection:"row",alignItems:"center",gap:16},cardContent:{flex:1,gap:6},cardTitle:{fontSize:16},cardBody:{fontSize:14,lineHeight:20},skeletonLine:{height:14,borderRadius:7,backgroundColor:"rgba(128, 128, 128, 0.15)",width:"80%",marginBottom:6},pendingHeader:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",marginBottom:4,gap:8},pendingFooter:{flexDirection:"row",justifyContent:"space-between",alignItems:"center"},refreshBtn:{flexDirection:"row",alignItems:"center",gap:4,paddingVertical:2,paddingHorizontal:4},refreshText:{fontSize:12},footer:{paddingTop:12,gap:4},loaderRow:{flexDirection:"row",alignItems:"center",justifyContent:"center",paddingVertical:12}});var fd={linkOnrampTerms:"https://link.com/terms/crypto-onramp",bridgeTerms:"https://www.bridge.xyz/legal/us-terms/bridge-building-inc",linkPrivacy:"https://link.com/privacy",bridgePrivacy:"https://www.bridge.xyz/legal/us-privacy-policy/bridge-building-inc"};function Zm({styles:e,merchantDisplayName:t="This app",onContinue:r,onClose:o}){let{colors:n,fonts:i,components:s}=L(),a=[Sn.link,{color:n.primary,fontFamily:i.medium}],l=s.card.borderRadius??12;return jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(or,{onPress:o,title:"Verify Your Identity"}),jsxRuntime.jsx(reactNative.View,{style:Sn.logoRow,children:jsxRuntime.jsx(nm,{height:20,color:n.foreground})}),jsxRuntime.jsxs(reactNative.ScrollView,{style:Sn.scroll,contentContainerStyle:Sn.scrollContent,showsVerticalScrollIndicator:false,children:[jsxRuntime.jsxs(reactNative.View,{style:[Sn.card,{backgroundColor:s.card.backgroundColor,borderRadius:l,borderWidth:s.card.borderWidth,borderColor:s.card.borderColor}],children:[jsxRuntime.jsx(reactNative.Text,{style:[Sn.sectionTitle,{color:n.foreground,fontFamily:i.semibold}],children:"Description"}),jsxRuntime.jsxs(reactNative.Text,{style:[Sn.body,{color:n.foregroundMuted,fontFamily:i.regular}],children:["You must verify your identity using Link. ",t," will create or access your Link account on your behalf."]})]}),jsxRuntime.jsxs(reactNative.View,{style:[Sn.card,{backgroundColor:s.card.backgroundColor,borderRadius:l,borderWidth:s.card.borderWidth,borderColor:s.card.borderColor}],children:[jsxRuntime.jsx(reactNative.Text,{style:[Sn.sectionTitle,{color:n.foreground,fontFamily:i.semibold}],children:"Terms"}),jsxRuntime.jsxs(reactNative.Text,{style:[Sn.body,{color:n.foregroundMuted,fontFamily:i.regular}],children:["Your data will be encrypted and processed by our partner, Stripe. Funds transfer services are provided by Stripe Payments Company. Cryptocurrency conversion services are provided by Bridge. By continuing you agree to the"," ",jsxRuntime.jsx(reactNative.Text,{style:a,onPress:()=>reactNative.Linking.openURL(fd.linkOnrampTerms),children:"Link Onramp Terms"}),","," ",jsxRuntime.jsx(reactNative.Text,{style:a,onPress:()=>reactNative.Linking.openURL(fd.bridgeTerms),children:"Bridge Terms"})," ","and you acknowledge receipt of the"," ",jsxRuntime.jsx(reactNative.Text,{style:a,onPress:()=>reactNative.Linking.openURL(fd.linkPrivacy),children:"Link US Consumer Privacy Notice"})," ","and the"," ",jsxRuntime.jsx(reactNative.Text,{style:a,onPress:()=>reactNative.Linking.openURL(fd.bridgePrivacy),children:"Bridge Privacy Notice"}),"."]})]})]}),jsxRuntime.jsxs(reactNative.View,{style:Sn.footer,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:e.form.continueBtn,onPress:r,activeOpacity:.7,children:jsxRuntime.jsx(reactNative.Text,{style:e.form.continueBtnText,children:"Continue"})}),jsxRuntime.jsx(reactNative.TouchableOpacity,{style:e.form.ghostBtn,onPress:o,activeOpacity:.7,children:jsxRuntime.jsx(reactNative.Text,{style:e.form.ghostBtnText,children:"Cancel"})})]})]})}var Sn=reactNative.StyleSheet.create({logoRow:{paddingVertical:24,alignItems:"center"},scroll:{flex:1},scrollContent:{paddingTop:16,paddingBottom:16,gap:12},card:{padding:20,gap:10},sectionTitle:{fontSize:15},body:{fontSize:14,lineHeight:21},link:{textDecorationLine:"underline"},footer:{paddingTop:12,gap:4}});function Xm({styles:e,placeholderColor:t,hasPrefilledEmail:r,loading:o,error:n,status:i,email:s,setEmail:a,checkEmail:l,onClose:c}){let{colors:p}=L();return r?jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(or,{onPress:c}),jsxRuntime.jsxs(reactNative.View,{style:e.flow.centered,children:[jsxRuntime.jsx(St,{size:56,strokeWidth:3}),jsxRuntime.jsx(ko,{error:n,progress:i,loading:o})]})]}):jsxRuntime.jsx(reactNative.KeyboardAvoidingView,{style:e.form.flex,behavior:reactNative.Platform.OS==="ios"?"padding":void 0,children:jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(or,{onPress:c}),jsxRuntime.jsxs(reactNative.View,{style:e.form.content,children:[jsxRuntime.jsx(reactNative.Text,{style:e.form.title,children:"Enter your email"}),jsxRuntime.jsx(reactNative.Text,{style:e.form.subtitle,children:"We'll check if you have a Link account or create one for you."}),jsxRuntime.jsxs(reactNative.View,{style:e.form.fieldWrap,children:[jsxRuntime.jsx(reactNative.Text,{style:e.form.fieldLabel,children:"Email address"}),jsxRuntime.jsx(reactNative.TextInput,{style:[e.form.input,o&&{opacity:.5}],placeholder:"jane@example.com",placeholderTextColor:t,keyboardType:"email-address",autoCapitalize:"none",autoCorrect:false,value:s,onChangeText:a,autoFocus:true,returnKeyType:"done",onSubmitEditing:l,editable:!o})]})]}),jsxRuntime.jsxs(reactNative.View,{style:e.form.footer,children:[o?jsxRuntime.jsx(reactNative.View,{style:[e.form.continueBtn,e.form.loaderInButton],children:jsxRuntime.jsx(St,{size:28,strokeWidth:2,gradientFrom:p.primaryForeground,gradientTo:p.primaryForeground})}):jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[e.form.continueBtn,!s&&e.form.continueBtnDisabled],onPress:l,disabled:!s,children:jsxRuntime.jsx(reactNative.Text,{style:[e.form.continueBtnText,!s&&e.form.continueBtnTextDisabled],children:"Continue"})}),jsxRuntime.jsx(ko,{error:n,progress:i,loading:o})]})]})})}function th({styles:e,loading:t,status:r,error:o,verifyIdentity:n,onClose:i}){return jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(or,{onPress:i}),jsxRuntime.jsxs(reactNative.View,{style:e.flow.centered,children:[t?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(reactNative.View,{style:e.flow.spinnerWrap,children:jsxRuntime.jsx(St,{size:48,strokeWidth:3})}),jsxRuntime.jsx(reactNative.Text,{style:e.flow.heading,children:"Verifying identity"}),jsxRuntime.jsx(reactNative.Text,{style:e.flow.sub,children:r||"Preparing identity verification..."})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(reactNative.View,{style:e.flow.spinnerWrap,children:jsxRuntime.jsx(reactNative.Text,{style:e.flow.idIcon,children:"\u{1FAAA}"})}),jsxRuntime.jsx(reactNative.Text,{style:e.flow.heading,children:"Identity verification"}),jsxRuntime.jsx(reactNative.Text,{style:e.flow.sub,children:r||"Tap below to continue verification."})]}),jsxRuntime.jsx(ko,{error:o,progress:r,loading:false})]}),!t&&jsxRuntime.jsx(reactNative.View,{style:e.form.footer,children:jsxRuntime.jsx(reactNative.TouchableOpacity,{style:e.form.continueBtn,onPress:n,children:jsxRuntime.jsx(reactNative.Text,{style:e.form.continueBtnText,children:"Continue Verification"})})})]})}function oh({styles:e,error:t,status:r,loading:o,sourceCurrency:n,destinationCurrency:i,destinationNetwork:s,tokenIconUrl:a,networkIconUrl:l,onClose:c,onRetryStatusCheck:p}){let{colors:h}=L(),T=!!t;return jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[T?jsxRuntime.jsx(or,{onPress:c}):jsxRuntime.jsx(reactNative.View,{style:Zc}),jsxRuntime.jsx(reactNative.View,{style:e.flow.centered,children:t?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(reactNative.Text,{style:e.flow.heading,children:"Could not confirm status"}),jsxRuntime.jsx(reactNative.Text,{style:e.flow.sub,children:"Your payment may still be completing. Try checking again, or close this screen and verify your wallet balance."})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(reactNative.View,{style:e.flow.spinnerWrap,children:jsxRuntime.jsx(St,{size:48,strokeWidth:3,gradientFrom:h.primary,gradientTo:h.primary})}),jsxRuntime.jsx(reactNative.Text,{style:e.flow.heading,children:"Processing your purchase"}),jsxRuntime.jsxs(reactNative.Text,{style:e.flow.sub,children:["Your payment has been confirmed.",`
2
- `,"We're sending your crypto \u2014 this usually takes less than a minute."]}),n&&i&&s&&jsxRuntime.jsx(ed,{sourceCurrency:n,destinationCurrency:i,destinationNetwork:s,tokenIconUrl:a,networkIconUrl:l,style:{marginTop:24,marginHorizontal:24}})]})}),jsxRuntime.jsxs(reactNative.View,{style:e.form.footer,children:[jsxRuntime.jsx(ko,{error:t,progress:r,loading:o}),t?jsxRuntime.jsx(reactNative.TouchableOpacity,{style:e.form.ghostBtn,onPress:p,children:jsxRuntime.jsx(reactNative.Text,{style:e.form.ghostBtnText,children:"Check status again"})}):null]})]})}function nh({styles:e,session:t,loading:r,error:o,status:n,confirmCheckout:i,tokenIconUrl:s,networkIconUrl:a,onClose:l,onBack:c}){let{colors:p}=L(),h=t.transaction_details,T=Jc(h.destination_amount,h.destination_currency);return jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(or,{onPress:c??l,title:"Review your purchase",variant:c?"back":"close"}),jsxRuntime.jsxs(reactNative.View,{style:e.form.content,children:[jsxRuntime.jsx(reactNative.View,{style:{alignItems:"center",marginTop:24,marginBottom:20},children:jsxRuntime.jsx(Ca,{currency:h.destination_currency,tokenIconUrl:s,networkIconUrl:a,size:64})}),jsxRuntime.jsxs(reactNative.View,{style:e.quote.card,children:[jsxRuntime.jsx(yn,{quote:e.quote,label:"You pay",value:`${h.source_amount} ${h.source_currency.toUpperCase()}`,hideDivider:true}),jsxRuntime.jsx(yn,{quote:e.quote,label:"You receive",value:`${T} ${h.destination_currency.toUpperCase()}`,hideDivider:true}),jsxRuntime.jsx(yn,{quote:e.quote,label:"Network fee",value:`$${h.fees.network_fee_amount}`,hideDivider:true}),jsxRuntime.jsx(yn,{quote:e.quote,label:"Transaction fee",value:`$${h.fees.transaction_fee_amount}`,last:true})]})]}),jsxRuntime.jsxs(reactNative.View,{style:e.form.footer,children:[r?jsxRuntime.jsx(reactNative.View,{style:[e.form.continueBtn,e.form.loaderInButton],children:jsxRuntime.jsx(St,{size:28,strokeWidth:2,gradientFrom:p.primaryForeground,gradientTo:p.primaryForeground})}):jsxRuntime.jsx(reactNative.TouchableOpacity,{style:e.form.continueBtn,onPress:i,children:jsxRuntime.jsx(reactNative.Text,{style:e.form.continueBtnText,children:"Confirm Purchase"})}),jsxRuntime.jsx(ko,{error:o,progress:n,loading:r})]})]})}function ih({styles:e,hasPrefilledPhone:t,loading:r,error:o,status:n,email:i,phone:s,setPhone:a,register:l,onClose:c}){let p=L(),{colors:h,fonts:T,components:d}=p,[m,b]=Ss.useState("");Ss.useEffect(()=>{if(t)return;let k=m?`+1${m}`:"";a(k);},[m,a,t]);let v=Ss.useCallback(k=>{b(k.replace(/[^\d]/g,""));},[]);if(t)return jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(or,{onPress:c}),jsxRuntime.jsxs(reactNative.View,{style:e.flow.centered,children:[jsxRuntime.jsx(St,{size:56,strokeWidth:3}),jsxRuntime.jsx(ko,{error:o,progress:n,loading:r})]})]});let x=m.length>=4;return jsxRuntime.jsx(reactNative.KeyboardAvoidingView,{style:e.form.flex,behavior:reactNative.Platform.OS==="ios"?"padding":void 0,children:jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(or,{onPress:c}),jsxRuntime.jsxs(reactNative.View,{style:e.form.content,children:[jsxRuntime.jsx(reactNative.Text,{style:e.form.title,children:"Enter your phone"}),jsxRuntime.jsx(reactNative.Text,{style:e.form.subtitle,children:"We'll send a verification code to confirm your number."}),jsxRuntime.jsxs(reactNative.View,{style:e.form.fieldWrap,children:[jsxRuntime.jsx(reactNative.Text,{style:e.form.fieldLabel,children:"Phone number"}),jsxRuntime.jsxs(reactNative.View,{style:Ql.phoneRow,children:[jsxRuntime.jsxs(reactNative.View,{style:[Ql.countryPrefix,{backgroundColor:d.card.backgroundColor,borderColor:d.input.borderColor,borderRadius:d.input.borderRadius,borderWidth:d.card.borderWidth}],children:[jsxRuntime.jsx(reactNative.Text,{style:Ql.flag,children:"\u{1F1FA}\u{1F1F8}"}),jsxRuntime.jsx(reactNative.Text,{style:[Ql.dialCode,{color:h.foreground,fontFamily:T.medium}],children:"+1"})]}),jsxRuntime.jsx(reactNative.TextInput,{style:[e.form.input,Ql.phoneInput,r&&{opacity:.5}],placeholder:"Phone number",placeholderTextColor:p.components.input.placeholderColor,keyboardType:"phone-pad",value:m,onChangeText:v,autoFocus:true,returnKeyType:"done",onSubmitEditing:()=>x&&l(),editable:!r})]})]}),jsxRuntime.jsxs(reactNative.View,{style:e.form.emailRow,children:[jsxRuntime.jsx(reactNative.Text,{style:e.form.emailLabel,children:"Signing up as"}),jsxRuntime.jsx(reactNative.Text,{style:e.form.emailValue,children:i})]})]}),jsxRuntime.jsxs(reactNative.View,{style:e.form.footer,children:[r?jsxRuntime.jsx(reactNative.View,{style:[e.form.continueBtn,e.form.loaderInButton],children:jsxRuntime.jsx(St,{size:28,strokeWidth:2,gradientFrom:h.primaryForeground,gradientTo:h.primaryForeground})}):jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[e.form.continueBtn,!x&&e.form.continueBtnDisabled],onPress:l,disabled:!x,children:jsxRuntime.jsx(reactNative.Text,{style:[e.form.continueBtnText,!x&&e.form.continueBtnTextDisabled],children:"Continue"})}),jsxRuntime.jsx(ko,{error:o,progress:n,loading:r})]})]})})}var Ql=reactNative.StyleSheet.create({phoneRow:{flexDirection:"row",gap:8,alignItems:"stretch"},countryPrefix:{flexDirection:"row",alignItems:"center",paddingHorizontal:12,gap:8},flag:{fontSize:20},dialCode:{fontSize:16,fontWeight:"600"},phoneInput:{flex:1}});function ow({currency:e,tokenIconUrl:t,size:r=72}){let{colors:o}=L(),n=e.toLowerCase(),i=Xc[n]??o.primary,s=Math.round(r*.36);return jsxRuntime.jsxs(reactNative.View,{style:{width:r,height:r,position:"relative"},children:[t?jsxRuntime.jsx(reactNative.Image,{source:{uri:t},style:{width:r,height:r,borderRadius:r/2}}):jsxRuntime.jsx(reactNative.View,{style:[Nn.tokenCircle,{width:r,height:r,borderRadius:r/2,backgroundColor:i}],children:jsxRuntime.jsx(reactNative.Text,{style:[Nn.tokenLetter,{fontSize:r*.38}],children:e.toUpperCase().slice(0,e.length>3?4:void 0)})}),jsxRuntime.jsx(reactNative.View,{style:[Nn.checkBadge,{width:s,height:s,borderRadius:s/2,backgroundColor:o.success,borderColor:o.background}],children:jsxRuntime.jsx(ut,{size:s*.55,color:"#FFFFFF",strokeWidth:3})})]})}function sh({styles:e,session:t,resolvedRecipientAddress:r,recipientFromConfig:o,tokenIconUrl:n,networkIconUrl:i,onDone:s}){let {colors:a,components:l,fonts:c}=L(),p=t.transaction_details,h=Jc(p.destination_amount,p.destination_currency),T=r||o||"";ba(p.destination_network);return jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(or,{onPress:s,title:"Purchase complete"}),jsxRuntime.jsx(reactNative.View,{style:e.form.content,children:jsxRuntime.jsxs(Lt,{style:e.form.flex,contentContainerStyle:Nn.scrollContent,showsVerticalScrollIndicator:false,children:[jsxRuntime.jsxs(reactNative.View,{style:Nn.iconSection,children:[jsxRuntime.jsx(ow,{currency:p.destination_currency,tokenIconUrl:n,size:72}),jsxRuntime.jsxs(reactNative.View,{style:Nn.statusRow,children:[jsxRuntime.jsx(reactNative.View,{style:[Nn.statusDot,{backgroundColor:a.success}]}),jsxRuntime.jsx(reactNative.Text,{style:[Nn.statusText,{color:a.foreground,fontFamily:c.semibold}],children:"Completed"})]}),jsxRuntime.jsx(reactNative.Text,{style:[Nn.subtitle,{color:a.foregroundMuted}],children:"Your crypto is on its way to your wallet."})]}),jsxRuntime.jsx(ed,{sourceCurrency:p.source_currency,destinationCurrency:p.destination_currency,destinationNetwork:p.destination_network,tokenIconUrl:n,networkIconUrl:i,style:{marginBottom:12}}),jsxRuntime.jsxs(reactNative.View,{style:[e.quote.card,{borderRadius:l.card.borderRadius,borderWidth:l.card.borderWidth,borderColor:l.card.borderColor},Nn.detailCard],children:[jsxRuntime.jsx(yn,{quote:e.quote,label:"You Paid",value:`${p.source_amount} ${p.source_currency.toUpperCase()}`,hideDivider:true}),jsxRuntime.jsx(yn,{quote:e.quote,label:"You Received",value:`${h} ${p.destination_currency.toUpperCase()}`,hideDivider:true}),jsxRuntime.jsx(yn,{quote:e.quote,label:"Network Fee",value:`$${p.fees.network_fee_amount}`,hideDivider:true}),jsxRuntime.jsx(yn,{quote:e.quote,label:"Transaction Fee",value:`$${p.fees.transaction_fee_amount}`,hideDivider:true}),jsxRuntime.jsx(ap,{quote:e.quote,label:"Intent Address",address:p.wallet_address,hideDivider:true}),T?jsxRuntime.jsx(ap,{quote:e.quote,label:"Recipient Address",address:T,last:true}):jsxRuntime.jsx(yn,{quote:e.quote,label:"Session",value:t.id.slice(0,8)+"..."+t.id.slice(-6),last:true})]})]})}),jsxRuntime.jsx(reactNative.View,{style:e.form.footer,children:jsxRuntime.jsx(reactNative.TouchableOpacity,{style:e.form.continueBtn,onPress:s,children:jsxRuntime.jsx(reactNative.Text,{style:e.form.continueBtnText,children:"Done"})})})]})}var Nn=reactNative.StyleSheet.create({scrollContent:{paddingBottom:24,alignItems:"center"},iconSection:{alignItems:"center",marginTop:24,marginBottom:24},tokenCircle:{alignItems:"center",justifyContent:"center"},tokenLetter:{color:"#FFFFFF",fontWeight:"700",letterSpacing:.5},checkBadge:{position:"absolute",bottom:0,right:0,alignItems:"center",justifyContent:"center",borderWidth:3},statusRow:{flexDirection:"row",alignItems:"center",marginTop:16,gap:6},statusDot:{width:8,height:8,borderRadius:4},statusText:{fontSize:16},subtitle:{fontSize:14,marginTop:4},detailCard:{width:"100%"}});function ah({styles:e,hasAutoWallet:t,loading:r,error:o,status:n,walletAddress:i,walletNetwork:s,setWalletAddress:a,setWalletNetwork:l,setDestinationCurrency:c,registerWallet:p,onClose:h}){let{colors:T,components:d}=L();if(t){let m=!r&&!!o;return jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(or,{onPress:h}),jsxRuntime.jsxs(reactNative.View,{style:e.flow.centered,children:[!m&&jsxRuntime.jsx(St,{size:56,strokeWidth:3}),jsxRuntime.jsx(ko,{error:o,progress:n,loading:r})]}),m&&jsxRuntime.jsx(reactNative.View,{style:e.form.footer,children:jsxRuntime.jsx(reactNative.TouchableOpacity,{style:e.form.continueBtn,onPress:p,children:jsxRuntime.jsx(reactNative.Text,{style:e.form.continueBtnText,children:"Retry"})})})]})}return jsxRuntime.jsx(reactNative.KeyboardAvoidingView,{style:e.form.flex,behavior:reactNative.Platform.OS==="ios"?"padding":void 0,children:jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(or,{onPress:h}),jsxRuntime.jsxs(reactNative.View,{style:e.form.content,children:[jsxRuntime.jsx(reactNative.Text,{style:e.form.title,children:"Your crypto wallet"}),jsxRuntime.jsx(reactNative.Text,{style:e.form.subtitle,children:"Enter the wallet address where you'd like to receive your crypto."}),jsxRuntime.jsxs(reactNative.View,{style:e.form.fieldWrap,children:[jsxRuntime.jsx(reactNative.Text,{style:e.form.fieldLabel,children:"Wallet address"}),jsxRuntime.jsx(reactNative.TextInput,{style:[e.form.input,e.wallet.input],placeholder:"0x...",placeholderTextColor:d.input.placeholderColor,autoCapitalize:"none",autoCorrect:false,value:i,onChangeText:a})]}),jsxRuntime.jsxs(reactNative.View,{style:e.form.fieldWrap,children:[jsxRuntime.jsx(reactNative.Text,{style:e.form.fieldLabel,children:"Network"}),jsxRuntime.jsx(reactNative.View,{style:e.wallet.list,children:Gc.map(m=>{let b=s===m.value;return jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[e.wallet.row,b&&e.wallet.rowSelected],onPress:()=>{l(m.value),c(m.defaultCrypto);},children:[jsxRuntime.jsx(reactNative.View,{style:e.wallet.iconWrap,children:jsxRuntime.jsx(m.Icon,{size:24})}),jsxRuntime.jsx(reactNative.Text,{style:[e.wallet.rowText,b&&e.wallet.rowTextSelected],children:m.label}),b&&jsxRuntime.jsx(reactNative.View,{style:e.wallet.checkCircle,children:jsxRuntime.jsx(ut,{size:14,color:d.container.buttonTitleColor,strokeWidth:2.5})})]},m.value)})})]})]}),jsxRuntime.jsxs(reactNative.View,{style:e.form.footer,children:[r?jsxRuntime.jsx(reactNative.View,{style:[e.form.continueBtn,e.form.loaderInButton],children:jsxRuntime.jsx(St,{size:28,strokeWidth:2,gradientFrom:T.primaryForeground,gradientTo:T.primaryForeground})}):jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[e.form.continueBtn,!i&&e.form.continueBtnDisabled],onPress:p,disabled:!i,children:jsxRuntime.jsx(reactNative.Text,{style:[e.form.continueBtnText,!i&&e.form.continueBtnTextDisabled],children:"Continue"})}),jsxRuntime.jsx(ko,{error:o,progress:n,loading:r})]})]})})}function Cd({config:e,onClose:t}){let r=L(),o=On(),{step:n,restoring:i,loading:s,status:a,error:l,email:c,phone:p,session:h,kycData:T,walletAddress:d,resolvedRecipientAddress:m,walletNetwork:b,sourceAmount:v,sourceCurrency:x,destinationCurrency:k,tokenIconUrl:R,networkIconUrl:w,applePaySupported:I,setStep:f,setEmail:u,setPhone:S,setWalletAddress:y,setWalletNetwork:F,setSourceAmount:B,setDestinationCurrency:D,checkEmail:V,register:A,attachKyc:M,verifyIdentity:Q,registerWallet:We,collectPaymentMethod:q,addPaymentMethod:Ue,confirmCheckout:J,reset:ie,emitComplete:ee,resumeFulfillmentPolling:Z,amountFirst:ce,customerId:U,accessToken:Se,requestKYCUpgrade:st,kycUpgradeMode:Ee,logout:de,clearError:He,switchingAccount:Ve}=dd(e),$e=!!e?.email&&!Ve,mt=!!e?.phone,Ne=!!e?.publishableKey&&!!e?.externalUserId,[qe,Le]=Ss.useState(void 0),[xe,ve]=Ss.useState(void 0),[Xe,Qe]=Ss.useState([]),[at,Xt]=Ss.useState(false),[Be,Re]=Ss.useState(false),[rt,ct]=Ss.useState(null),[Oe,Ie]=Ss.useState(null),[Pe,Ut]=Ss.useState(null),[Nt,pe]=Ss.useState(false),Ke=Ss.useCallback(async()=>{await de(),t?.();},[de,t]);Ss.useEffect(()=>{n!=="kyc_offer"||!U||!Se||(pe(true),ai(U,Se).then(be=>{let nt=be.kyc_tiers??[],K=nt.find(C=>C.tier==="l0"),ue=nt.find(C=>C.tier==="l1"),_=nt.find(C=>C.tier==="l2");K?.verification_status&&ct(K.verification_status),ue?.verification_status&&Ie(ue.verification_status),_?.verification_status&&Ut(_.verification_status);}).catch(be=>{console.warn("[OnrampScreen] kyc_offer customer fetch error:",be?.message);}).finally(()=>pe(false)),d&&up({destinationNetwork:b||"ethereum",walletAddress:d,accessToken:Se,cryptoCustomerId:U}).then(be=>{let nt=be.limits?.usd;if(nt?.card?.length){let K=Math.max(...nt.card.map(ue=>ue.limit));Le(K);}}).catch(be=>{console.warn("[OnrampScreen] kyc_offer transaction_limits error:",be?.message);}));},[n,U,Se,d,b]),Ss.useEffect(()=>{if(i||n!=="session_params"||!U||!Se)return;let be=K=>{let ue=K?.message??"";return ue.includes("stripe_onramp_forbidden")||ue.includes("403")},nt=K=>{be(K)&&Ke();};ai(U,Se).then(K=>{let ue=K.kyc_tiers??[],_=ue.find(j=>j.tier==="l0"),C=ue.find(j=>j.tier==="l1"),O=ue.find(j=>j.tier==="l2"),N=!!C?.verification_status&&C.verification_status!=="not_started",$=O?.verification_status==="verified";Xt(N),Re(!!$),_?.verification_status&&ct(_.verification_status),C?.verification_status&&Ie(C.verification_status),O?.verification_status&&Ut(O.verification_status);}).catch(K=>{console.warn("[OnrampScreen] customer fetch error:",K?.message),nt(K);}),pp(U,Se).then(K=>{Qe(K.data??[]);}).catch(K=>{console.warn("[OnrampScreen] payment_tokens error:",K?.message),nt(K);}),d&&up({destinationNetwork:b||"ethereum",walletAddress:d,accessToken:Se,cryptoCustomerId:U}).then(K=>{let ue=K.limits?.usd;if(ue?.card?.length){let _=Math.max(...ue.card.map(C=>C.limit));Le(_);}}).catch(K=>{console.warn("[OnrampScreen] transaction_limits error:",K?.message),nt(K);}),Vl(e?.publishableKey).then(K=>{let ue=K.data?.find(_=>_.currency_code==="usd");ue&&ve(ue.minimum_amount);}).catch(K=>{console.warn("[OnrampScreen] fiat_currencies error:",K?.message);});},[i,n,U,Se,d,b,ie,Ke]);let er=async()=>{if(!(!U||!Se))try{let be=await pp(U,Se);Qe(be.data??[]);}catch(be){console.warn("[OnrampScreen] payment_tokens refresh error:",be?.message);let nt=be?.message??"";(nt.includes("stripe_onramp_forbidden")||nt.includes("403"))&&Ke();}},je=async()=>{let be=await Ue();return be&&await er(),be},Vt=e?.skipSuccessConfirmation===true;Ss.useEffect(()=>{n==="success"&&Vt&&h&&(ee(h),ie(),t?.());},[n,Vt,h,ee,ie,t]),Ss.useEffect(()=>{n==="register"&&mt&&A();},[n,mt,A]);let et=()=>{ie(),t?.();};if(i)return jsxRuntime.jsx(reactNative.View,{style:[dw.container,{backgroundColor:r.colors.background}],children:jsxRuntime.jsx(St,{size:56,strokeWidth:3,gradientFrom:r.colors.primary,gradientTo:r.colors.primary})});if(n==="disclaimer")return jsxRuntime.jsx(Zm,{styles:o,merchantDisplayName:e?.merchantDisplayName,onContinue:()=>f("register"),onClose:()=>f("email")});if(n==="email")return jsxRuntime.jsx(Xm,{styles:o,placeholderColor:r.components.input.placeholderColor,hasPrefilledEmail:$e,loading:s,error:l,status:a,email:c,setEmail:u,checkEmail:V,onClose:et});if(n==="register")return jsxRuntime.jsx(ih,{styles:o,hasPrefilledPhone:mt,loading:s,error:l,status:a,email:c,phone:p,setPhone:S,register:A,onClose:et});if(n==="kyc")return jsxRuntime.jsx(cd,{initialData:T,loading:s,onComplete:M,onCancel:et});if(n==="kyc_offer"){let K=rt==="verified"||Oe==="verified"||Pe==="verified",ue=()=>{Ee.current&&(Ee.current=false),f("session_params");};return jsxRuntime.jsx(Ym,{onSelectL1:()=>f("kyc_l1"),onSelectL2:()=>{Ee.current=true,f("identity");},onSkip:ue,onClose:()=>{Ee.current?(Ee.current=false,f("session_params")):K?ue():et();},onRefresh:()=>{!U||!Se||(pe(true),ai(U,Se).then(O=>{let N=O.kyc_tiers??[],$=N.find(Ge=>Ge.tier==="l0"),j=N.find(Ge=>Ge.tier==="l1"),fe=N.find(Ge=>Ge.tier==="l2");$?.verification_status&&ct($.verification_status),j?.verification_status&&Ie(j.verification_status),fe?.verification_status&&Ut(fe.verification_status);}).catch(O=>{console.warn("[OnrampScreen] refresh customer fetch error:",O?.message);}).finally(()=>pe(false)));},loading:s,loadingTiers:Nt,error:l?.message,l1Status:Oe??"not_started",l2Status:Pe??"not_started",l1Completed:at,l2Completed:Be,canPurchase:K,currentLimit:K?qe:void 0})}if(n==="kyc_l1"){let be=Ee.current?"session_params":"wallet";return jsxRuntime.jsx(jm,{initialData:T,loading:s,error:l?.message,onComplete:nt=>{Ee.current&&(Ee.current=false),M(nt,be);},onCancel:()=>{He(),f("kyc_offer");},onClose:et})}return n==="identity"?jsxRuntime.jsx(th,{styles:o,loading:s,status:a,error:l,verifyIdentity:Q,onClose:()=>{Ee.current?(Ee.current=false,f("session_params")):et();}}):n==="wallet"?jsxRuntime.jsx(ah,{styles:o,hasAutoWallet:Ne,loading:s,error:l,status:a,walletAddress:d,walletNetwork:b,setWalletAddress:y,setWalletNetwork:F,setDestinationCurrency:D,registerWallet:We,onClose:et}):n==="session_params"?jsxRuntime.jsx(ld,{initialAmount:v,currency:x,applePaySupported:I,paymentSelectorPosition:e?.paymentSelectorPosition??"header",minAmount:xe,maxAmount:qe,paymentTokens:Xe,onAddPaymentMethod:je,onCollectPayment:(be,nt)=>{q(be,nt);},paymentLoading:s,paymentStatus:a,paymentError:l?.message??null,onConfirm:(be,nt)=>{if(ce&&!U)B(be),f("email");else {let K=nt==="apple_pay";q(K,be,!K&&nt?nt:void 0);}},onCancel:et,accessToken:Se,showHistoryProgressBar:e?.showHistoryProgressBar,onLogout:Ke,onRequestKYC:st,showSwitchAccount:!$e,inputDisabled:(rt!==null||Oe!==null)&&rt!=="verified"&&Oe!=="verified"&&Pe!=="verified"}):n==="quote"&&h?jsxRuntime.jsx(nh,{styles:o,session:h,loading:s,error:l,status:a,confirmCheckout:J,tokenIconUrl:R,networkIconUrl:w,onClose:et,onBack:()=>f("session_params")}):n==="processing"?jsxRuntime.jsx(oh,{styles:o,error:l,status:a,loading:s,sourceCurrency:h?.transaction_details.source_currency,destinationCurrency:h?.transaction_details.destination_currency??k,destinationNetwork:h?.transaction_details.destination_network??"base",tokenIconUrl:R,networkIconUrl:w,onClose:et,onRetryStatusCheck:Z}):n==="success"&&h&&!Vt?jsxRuntime.jsx(sh,{styles:o,session:h,resolvedRecipientAddress:m,recipientFromConfig:e?.recipientAddress,tokenIconUrl:R,networkIconUrl:w,onDone:()=>{ee(h),ie(),t?.();}}):null}var dw=reactNative.StyleSheet.create({container:{flex:1,justifyContent:"center",alignItems:"center"}});function lh(){try{let e=uw__default.default.expoConfig?.plugins;if(!Array.isArray(e))return;for(let t of e){if(!Array.isArray(t))continue;let[r,o]=t;if(r!=="@stripe/stripe-react-native"||!o||typeof o!="object")continue;let n=o.merchantIdentifier;if(typeof n=="string"){let i=n.trim();if(i.length>0)return i}}}catch{}}function wd({publishableKey:e,email:t,phone:r,externalUserId:o,flowOrder:n,destinationChainType:i="ethereum",destinationChainId:s="8453",destinationTokenAddress:a,recipientAddress:l,onComplete:c,onError:p,onStepChange:h,onClose:T,merchantIdentifier:d="",urlScheme:m="unifoldOnramp",paymentSelectorPosition:b,skipSuccessConfirmation:v=false,appName:x}){let{colors:k,fonts:R,components:w}=L(),I=e||Hc(),f=Ss.useMemo(()=>{let D=d.trim();return D.length>0?D:lh()??""},[d]),[u,S]=Ss.useState("loading"),[y,F]=Ss.useState(null);Ss.useEffect(()=>{let D=false;async function V(){try{I&&(td(I),rd(Dl()));let A=await od();if(D)return;let M=f.trim();if(await stripeReactNative.initStripe({publishableKey:A,urlScheme:m,...M?{merchantIdentifier:M}:{}}),D)return;S("ready");}catch(A){if(D)return;console.error("[StripeOnramp] Init failed:",A),F(A?.message??"Failed to load Stripe configuration"),S("error");}}return V(),()=>{D=true;}},[I,f,m]);let B=Ss.useMemo(()=>{let D={publishableKey:I,externalUserId:o,destinationChainType:i,destinationChainId:s,onComplete:c,onError:p,onStepChange:h};return a&&(D.destinationTokenAddress=a),l&&(D.recipientAddress=l),t&&(D.email=t),r&&(D.phone=r),n&&(D.flowOrder=n),b&&(D.paymentSelectorPosition=b),D.skipSuccessConfirmation=v,D.merchantIdentifier=f,x&&(D.merchantDisplayName=x),D},[I,o,i,s,a,l,t,r,n,b,v,f,x,c,p,h]);return u==="error"?jsxRuntime.jsxs(reactNative.View,{style:[Pa.centered,{backgroundColor:k.background}],children:[jsxRuntime.jsx(reactNative.Text,{style:[Pa.errorText,{color:k.error,fontFamily:R.medium}],children:"Unable to initialize"}),jsxRuntime.jsx(reactNative.Text,{style:[Pa.errorDetail,{color:k.foregroundMuted,fontFamily:R.regular}],children:y}),T&&jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[Pa.retryBtn,{backgroundColor:w.button.primaryBackground,borderRadius:w.button.borderRadius}],onPress:T,children:jsxRuntime.jsx(reactNative.Text,{style:[Pa.retryBtnText,{color:w.button.primaryText,fontFamily:R.medium}],children:"Go Back"})})]}):u==="loading"?jsxRuntime.jsx(reactNative.View,{style:[Pa.centered,{backgroundColor:k.background}],children:jsxRuntime.jsx(St,{size:56,strokeWidth:3,gradientFrom:k.primary,gradientTo:k.primary})}):jsxRuntime.jsx(Cd,{config:B,onClose:T})}var Pa=reactNative.StyleSheet.create({centered:{flex:1,justifyContent:"center",alignItems:"center",paddingHorizontal:24},errorText:{fontSize:18,marginBottom:8},errorDetail:{fontSize:14,textAlign:"center",marginBottom:24},retryBtn:{paddingVertical:14,paddingHorizontal:32},retryBtnText:{fontSize:16}});function ph(){let{configure:e}=stripeReactNative.useOnramp(),t=Ss.useRef(false);return Ss.useEffect(()=>{t.current||(t.current=true,e({merchantDisplayName:"Unifold",appearance:{lightColors:{primary:"#2d22a1",contentOnPrimary:"#ffffff",borderSelected:"#07b8b8"},darkColors:{primary:"#800080",contentOnPrimary:"#ffffff",borderSelected:"#526f3e"},style:"ALWAYS_DARK",primaryButton:{cornerRadius:8,height:48}}}).then(r=>{r.error&&console.error("[StripeOnrampPreconfigure] error:",r.error.message);}).catch(r=>{console.error("[StripeOnrampPreconfigure] threw:",r?.message);}));},[e]),null}var fh="__unifold_stripe_onramp__";function Sd(e){globalThis[fh]=e;}function mh(){return globalThis[fh]}Sd(wd);var Yi=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this);}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe();}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}};var Os,Ji,Fa,hh,ww=(hh=class extends Yi{constructor(){super();re(this,Os);re(this,Ji);re(this,Fa);H(this,Fa,t=>{if(typeof window<"u"&&window.addEventListener){let r=()=>t();return window.addEventListener("visibilitychange",r,false),()=>{window.removeEventListener("visibilitychange",r);}}});}onSubscribe(){g(this,Ji)||this.setEventListener(g(this,Fa));}onUnsubscribe(){var t;this.hasListeners()||((t=g(this,Ji))==null||t.call(this),H(this,Ji,void 0));}setEventListener(t){var r;H(this,Fa,t),(r=g(this,Ji))==null||r.call(this),H(this,Ji,t(o=>{typeof o=="boolean"?this.setFocused(o):this.onFocus();}));}setFocused(t){g(this,Os)!==t&&(H(this,Os,t),this.onFocus());}onFocus(){let t=this.isFocused();this.listeners.forEach(r=>{r(t);});}isFocused(){return typeof g(this,Os)=="boolean"?g(this,Os):globalThis.document?.visibilityState!=="hidden"}},Os=new WeakMap,Ji=new WeakMap,Fa=new WeakMap,hh),Td=new ww;var Sw={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},Hn,Ls,gh,Tw=(gh=class{constructor(){re(this,Hn,Sw);re(this,Ls,false);}setTimeoutProvider(e){process.env.NODE_ENV!=="production"&&g(this,Ls)&&e!==g(this,Hn)&&console.error("[timeoutManager]: Switching provider after calls to previous provider might result in unexpected behavior.",{previous:g(this,Hn),provider:e}),H(this,Hn,e),process.env.NODE_ENV!=="production"&&H(this,Ls,false);}setTimeout(e,t){return process.env.NODE_ENV!=="production"&&H(this,Ls,true),g(this,Hn).setTimeout(e,t)}clearTimeout(e){g(this,Hn).clearTimeout(e);}setInterval(e,t){return process.env.NODE_ENV!=="production"&&H(this,Ls,true),g(this,Hn).setInterval(e,t)}clearInterval(e){g(this,Hn).clearInterval(e);}},Hn=new WeakMap,Ls=new WeakMap,gh),Kl=new Tw;function yh(e){setTimeout(e,0);}var wh=typeof window>"u"||"Deno"in globalThis;function Lo(){}function Sh(e,t){return typeof e=="function"?e(t):e}function Th(e){return typeof e=="number"&&e>=0&&e!==1/0}function kh(e,t){return Math.max(e+(t||0)-Date.now(),0)}function Gl(e,t){return typeof e=="function"?e(t):e}function xh(e,t){return typeof e=="function"?e(t):e}function Lp(e,t){let{type:r="all",exact:o,fetchStatus:n,predicate:i,queryKey:s,stale:a}=e;if(s){if(o){if(t.queryHash!==Yl(s,t.options))return false}else if(!Oa(t.queryKey,s))return false}if(r!=="all"){let l=t.isActive();if(r==="active"&&!l||r==="inactive"&&l)return false}return !(typeof a=="boolean"&&t.isStale()!==a||n&&n!==t.state.fetchStatus||i&&!i(t))}function Bp(e,t){let{exact:r,status:o,predicate:n,mutationKey:i}=e;if(i){if(!t.options.mutationKey)return false;if(r){if(Da(t.options.mutationKey)!==Da(i))return false}else if(!Oa(t.options.mutationKey,i))return false}return !(o&&t.state.status!==o||n&&!n(t))}function Yl(e,t){return (t?.queryKeyHashFn||Da)(e)}function Da(e){return JSON.stringify(e,(t,r)=>Op(r)?Object.keys(r).sort().reduce((o,n)=>(o[n]=r[n],o),{}):r)}function Oa(e,t){return e===t?true:typeof e!=typeof t?false:e&&t&&typeof e=="object"&&typeof t=="object"?Object.keys(t).every(r=>Oa(e[r],t[r])):false}var kw=Object.prototype.hasOwnProperty;function Vp(e,t,r=0){if(e===t)return e;if(r>500)return t;let o=bh(e)&&bh(t);if(!o&&!(Op(e)&&Op(t)))return t;let i=(o?e:Object.keys(e)).length,s=o?t:Object.keys(t),a=s.length,l=o?new Array(a):{},c=0;for(let p=0;p<a;p++){let h=o?p:s[p],T=e[h],d=t[h];if(T===d){l[h]=T,(o?p<i:kw.call(e,h))&&c++;continue}if(T===null||d===null||typeof T!="object"||typeof d!="object"){l[h]=d;continue}let m=Vp(T,d,r+1);l[h]=m,m===T&&c++;}return i===a&&c===i?e:l}function bh(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function Op(e){if(!Ch(e))return false;let t=e.constructor;if(t===void 0)return true;let r=t.prototype;return !(!Ch(r)||!r.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(e)!==Object.prototype)}function Ch(e){return Object.prototype.toString.call(e)==="[object Object]"}function vh(e){return new Promise(t=>{Kl.setTimeout(t,e);})}function Rh(e,t,r){if(typeof r.structuralSharing=="function")return r.structuralSharing(e,t);if(r.structuralSharing!==false){if(process.env.NODE_ENV!=="production")try{return Vp(e,t)}catch(o){throw console.error(`Structural sharing requires data to be JSON serializable. To fix this, turn off structuralSharing or return JSON-serializable data from your queryFn. [${r.queryHash}]: ${o}`),o}return Vp(e,t)}return t}function Ih(e,t,r=0){let o=[...e,t];return r&&o.length>r?o.slice(1):o}function _h(e,t,r=0){let o=[t,...e];return r&&o.length>r?o.slice(0,-1):o}var Va=Symbol();function kd(e,t){return process.env.NODE_ENV!=="production"&&e.queryFn===Va&&console.error(`Attempted to invoke queryFn when set to skipToken. This is likely a configuration error. Query hash: '${e.queryHash}'`),!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===Va?()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function Ph(e,t,r){let o=false,n;return Object.defineProperty(e,"signal",{enumerable:true,get:()=>(n??(n=t()),o||(o=true,n.aborted?r():n.addEventListener("abort",r,{once:true})),n)}),e}var xd=(()=>{let e=()=>wh;return {isServer(){return e()},setIsServer(t){e=t;}}})();function Fh(){let e,t,r=new Promise((n,i)=>{e=n,t=i;});r.status="pending",r.catch(()=>{});function o(n){Object.assign(r,n),delete r.resolve,delete r.reject;}return r.resolve=n=>{o({status:"fulfilled",value:n}),e(n);},r.reject=n=>{o({status:"rejected",reason:n}),t(n);},r}var xw=yh;function vw(){let e=[],t=0,r=a=>{a();},o=a=>{a();},n=xw,i=a=>{t?e.push(a):n(()=>{r(a);});},s=()=>{let a=e;e=[],a.length&&n(()=>{o(()=>{a.forEach(l=>{r(l);});});});};return {batch:a=>{let l;t++;try{l=a();}finally{t--,t||s();}return l},batchCalls:a=>(...l)=>{i(()=>{a(...l);});},schedule:i,setNotifyFunction:a=>{r=a;},setBatchNotifyFunction:a=>{o=a;},setScheduler:a=>{n=a;}}}var Qr=vw();var La,Zi,Ba,Dh,Rw=(Dh=class extends Yi{constructor(){super();re(this,La,true);re(this,Zi);re(this,Ba);H(this,Ba,t=>{if(typeof window<"u"&&window.addEventListener){let r=()=>t(true),o=()=>t(false);return window.addEventListener("online",r,false),window.addEventListener("offline",o,false),()=>{window.removeEventListener("online",r),window.removeEventListener("offline",o);}}});}onSubscribe(){g(this,Zi)||this.setEventListener(g(this,Ba));}onUnsubscribe(){var t;this.hasListeners()||((t=g(this,Zi))==null||t.call(this),H(this,Zi,void 0));}setEventListener(t){var r;H(this,Ba,t),(r=g(this,Zi))==null||r.call(this),H(this,Zi,t(this.setOnline.bind(this)));}setOnline(t){g(this,La)!==t&&(H(this,La,t),this.listeners.forEach(o=>{o(t);}));}isOnline(){return g(this,La)}},La=new WeakMap,Zi=new WeakMap,Ba=new WeakMap,Dh),Aa=new Rw;function Iw(e){return Math.min(1e3*2**e,3e4)}function Ap(e){return (e??"online")==="online"?Aa.isOnline():true}var vd=class extends Error{constructor(e){super("CancelledError"),this.revert=e?.revert,this.silent=e?.silent;}};function Rd(e){let t=false,r=0,o,n=Fh(),i=()=>n.status!=="pending",s=b=>{if(!i()){let v=new vd(b);T(v),e.onCancel?.(v);}},a=()=>{t=true;},l=()=>{t=false;},c=()=>Td.isFocused()&&(e.networkMode==="always"||Aa.isOnline())&&e.canRun(),p=()=>Ap(e.networkMode)&&e.canRun(),h=b=>{i()||(o?.(),n.resolve(b));},T=b=>{i()||(o?.(),n.reject(b));},d=()=>new Promise(b=>{o=v=>{(i()||c())&&b(v);},e.onPause?.();}).then(()=>{o=void 0,i()||e.onContinue?.();}),m=()=>{if(i())return;let b,v=r===0?e.initialPromise:void 0;try{b=v??e.fn();}catch(x){b=Promise.reject(x);}Promise.resolve(b).then(h).catch(x=>{if(i())return;let k=e.retry??(xd.isServer()?0:3),R=e.retryDelay??Iw,w=typeof R=="function"?R(r,x):R,I=k===true||typeof k=="number"&&r<k||typeof k=="function"&&k(r,x);if(t||!I){T(x);return}r++,e.onFail?.(r,x),vh(w).then(()=>c()?void 0:d()).then(()=>{t?T(x):m();});});};return {promise:n,status:()=>n.status,cancel:s,continue:()=>(o?.(),n),cancelRetry:a,continueRetry:l,canStart:p,start:()=>(p()?m():d().then(m),n)}}var Bs,Vh,Id=(Vh=class{constructor(){re(this,Bs);}destroy(){this.clearGcTimeout();}scheduleGc(){this.clearGcTimeout(),Th(this.gcTime)&&H(this,Bs,Kl.setTimeout(()=>{this.optionalRemove();},this.gcTime));}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(xd.isServer()?1/0:300*1e3));}clearGcTimeout(){g(this,Bs)!==void 0&&(Kl.clearTimeout(g(this,Bs)),H(this,Bs,void 0));}},Bs=new WeakMap,Vh);function Lh(e){return {onFetch:(t,r)=>{let o=t.options,n=t.fetchOptions?.meta?.fetchMore?.direction,i=t.state.data?.pages||[],s=t.state.data?.pageParams||[],a={pages:[],pageParams:[]},l=0,c=async()=>{let p=false,h=m=>{Ph(m,()=>t.signal,()=>p=true);},T=kd(t.options,t.fetchOptions),d=async(m,b,v)=>{if(p)return Promise.reject(t.signal.reason);if(b==null&&m.pages.length)return Promise.resolve(m);let k=(()=>{let f={client:t.client,queryKey:t.queryKey,pageParam:b,direction:v?"backward":"forward",meta:t.options.meta};return h(f),f})(),R=await T(k),{maxPages:w}=t.options,I=v?_h:Ih;return {pages:I(m.pages,R,w),pageParams:I(m.pageParams,b,w)}};if(n&&i.length){let m=n==="backward",b=m?_w:Oh,v={pages:i,pageParams:s},x=b(o,v);a=await d(v,x,m);}else {let m=e??i.length;do{let b=l===0?s[0]??o.initialPageParam:Oh(o,a);if(l>0&&b==null)break;a=await d(a,b),l++;}while(l<m)}return a};t.options.persister?t.fetchFn=()=>t.options.persister?.(c,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},r):t.fetchFn=c;}}}function Oh(e,{pages:t,pageParams:r}){let o=t.length-1;return t.length>0?e.getNextPageParam(t[o],t,r[o],r):void 0}function _w(e,{pages:t,pageParams:r}){return t.length>0?e.getPreviousPageParam?.(t[0],t,r[0],r):void 0}var Wa,As,Ea,an,Ws,so,Jl,Es,Qo,Mh,pi,Wh,Eh=(Wh=class extends Id{constructor(t){super();re(this,Qo);re(this,Wa);re(this,As);re(this,Ea);re(this,an);re(this,Ws);re(this,so);re(this,Jl);re(this,Es);H(this,Es,false),H(this,Jl,t.defaultOptions),this.setOptions(t.options),this.observers=[],H(this,Ws,t.client),H(this,an,g(this,Ws).getQueryCache()),this.queryKey=t.queryKey,this.queryHash=t.queryHash,H(this,As,Ah(this.options)),this.state=t.state??g(this,As),this.scheduleGc();}get meta(){return this.options.meta}get queryType(){return g(this,Wa)}get promise(){return g(this,so)?.promise}setOptions(t){if(this.options={...g(this,Jl),...t},t?._type&&H(this,Wa,t._type),this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){let r=Ah(this.options);r.data!==void 0&&(this.setState(Bh(r.data,r.dataUpdatedAt)),H(this,As,r));}}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&g(this,an).remove(this);}setData(t,r){let o=Rh(this.state.data,t,this.options);return Ct(this,Qo,pi).call(this,{data:o,type:"success",dataUpdatedAt:r?.updatedAt,manual:r?.manual}),o}setState(t){Ct(this,Qo,pi).call(this,{type:"setState",state:t});}cancel(t){let r=g(this,so)?.promise;return g(this,so)?.cancel(t),r?r.then(Lo).catch(Lo):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:true});}get resetState(){return g(this,As)}reset(){this.destroy(),this.setState(this.resetState);}isActive(){return this.observers.some(t=>xh(t.options.enabled,this)!==false)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===Va||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0?this.observers.some(t=>Gl(t.options.staleTime,this)==="static"):false}isStale(){return this.getObserversCount()>0?this.observers.some(t=>t.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(t=0){return this.state.data===void 0?true:t==="static"?false:this.state.isInvalidated?true:!kh(this.state.dataUpdatedAt,t)}onFocus(){this.observers.find(r=>r.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:false}),g(this,so)?.continue();}onOnline(){this.observers.find(r=>r.shouldFetchOnReconnect())?.refetch({cancelRefetch:false}),g(this,so)?.continue();}addObserver(t){this.observers.includes(t)||(this.observers.push(t),this.clearGcTimeout(),g(this,an).notify({type:"observerAdded",query:this,observer:t}));}removeObserver(t){this.observers.includes(t)&&(this.observers=this.observers.filter(r=>r!==t),this.observers.length||(g(this,so)&&(g(this,Es)||Ct(this,Qo,Mh).call(this)?g(this,so).cancel({revert:true}):g(this,so).cancelRetry()),this.scheduleGc()),g(this,an).notify({type:"observerRemoved",query:this,observer:t}));}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||Ct(this,Qo,pi).call(this,{type:"invalidate"});}async fetch(t,r){if(this.state.fetchStatus!=="idle"&&g(this,so)?.status()!=="rejected"){if(this.state.data!==void 0&&r?.cancelRefetch)this.cancel({silent:true});else if(g(this,so))return g(this,so).continueRetry(),g(this,so).promise}if(t&&this.setOptions(t),!this.options.queryFn){let c=this.observers.find(p=>p.options.queryFn);c&&this.setOptions(c.options);}process.env.NODE_ENV!=="production"&&(Array.isArray(this.options.queryKey)||console.error("As of v4, queryKey needs to be an Array. If you are using a string like 'repoData', please change it to an Array, e.g. ['repoData']"));let o=new AbortController,n=c=>{Object.defineProperty(c,"signal",{enumerable:true,get:()=>(H(this,Es,true),o.signal)});},i=()=>{let c=kd(this.options,r),h=(()=>{let T={client:g(this,Ws),queryKey:this.queryKey,meta:this.meta};return n(T),T})();return H(this,Es,false),this.options.persister?this.options.persister(c,h,this):c(h)},a=(()=>{let c={fetchOptions:r,options:this.options,queryKey:this.queryKey,client:g(this,Ws),state:this.state,fetchFn:i};return n(c),c})();(g(this,Wa)==="infinite"?Lh(this.options.pages):this.options.behavior)?.onFetch(a,this),H(this,Ea,this.state),(this.state.fetchStatus==="idle"||this.state.fetchMeta!==a.fetchOptions?.meta)&&Ct(this,Qo,pi).call(this,{type:"fetch",meta:a.fetchOptions?.meta}),H(this,so,Rd({initialPromise:r?.initialPromise,fn:a.fetchFn,onCancel:c=>{c instanceof vd&&c.revert&&this.setState({...g(this,Ea),fetchStatus:"idle"}),o.abort();},onFail:(c,p)=>{Ct(this,Qo,pi).call(this,{type:"failed",failureCount:c,error:p});},onPause:()=>{Ct(this,Qo,pi).call(this,{type:"pause"});},onContinue:()=>{Ct(this,Qo,pi).call(this,{type:"continue"});},retry:a.options.retry,retryDelay:a.options.retryDelay,networkMode:a.options.networkMode,canRun:()=>true}));try{let c=await g(this,so).start();if(c===void 0)throw process.env.NODE_ENV!=="production"&&console.error(`Query data cannot be undefined. Please make sure to return a value other than undefined from your query function. Affected query key: ${this.queryHash}`),new Error(`${this.queryHash} data is undefined`);return this.setData(c),g(this,an).config.onSuccess?.(c,this),g(this,an).config.onSettled?.(c,this.state.error,this),c}catch(c){if(c instanceof vd){if(c.silent)return g(this,so).promise;if(c.revert){if(this.state.data===void 0)throw c;return this.state.data}}throw Ct(this,Qo,pi).call(this,{type:"error",error:c}),g(this,an).config.onError?.(c,this),g(this,an).config.onSettled?.(this.state.data,c,this),c}finally{this.scheduleGc();}}},Wa=new WeakMap,As=new WeakMap,Ea=new WeakMap,an=new WeakMap,Ws=new WeakMap,so=new WeakMap,Jl=new WeakMap,Es=new WeakMap,Qo=new WeakSet,Mh=function(){return this.state.fetchStatus==="paused"&&this.state.status==="pending"},pi=function(t){let r=o=>{switch(t.type){case "failed":return {...o,fetchFailureCount:t.failureCount,fetchFailureReason:t.error};case "pause":return {...o,fetchStatus:"paused"};case "continue":return {...o,fetchStatus:"fetching"};case "fetch":return {...o,...Pw(o.data,this.options),fetchMeta:t.meta??null};case "success":let n={...o,...Bh(t.data,t.dataUpdatedAt),dataUpdateCount:o.dataUpdateCount+1,...!t.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return H(this,Ea,t.manual?n:void 0),n;case "error":let i=t.error;return {...o,error:i,errorUpdateCount:o.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:o.fetchFailureCount+1,fetchFailureReason:i,fetchStatus:"idle",status:"error",isInvalidated:true};case "invalidate":return {...o,isInvalidated:true};case "setState":return {...o,...t.state}}};this.state=r(this.state),Qr.batch(()=>{this.observers.forEach(o=>{o.onQueryUpdate();}),g(this,an).notify({query:this,type:"updated",action:t});});},Wh);function Pw(e,t){return {fetchFailureCount:0,fetchFailureReason:null,fetchStatus:Ap(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}function Bh(e,t){return {data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:false,status:"success"}}function Ah(e){let t=typeof e.initialData=="function"?e.initialData():e.initialData,r=t!==void 0,o=r?typeof e.initialDataUpdatedAt=="function"?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return {data:t,dataUpdateCount:0,dataUpdatedAt:r?o??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:false,status:r?"success":"pending",fetchStatus:"idle"}}var Zl,jn,yo,Ms,$n,Xi,zh,Uh=(zh=class extends Id{constructor(t){super();re(this,$n);re(this,Zl);re(this,jn);re(this,yo);re(this,Ms);H(this,Zl,t.client),this.mutationId=t.mutationId,H(this,yo,t.mutationCache),H(this,jn,[]),this.state=t.state||Fw(),this.setOptions(t.options),this.scheduleGc();}setOptions(t){this.options=t,this.updateGcTime(this.options.gcTime);}get meta(){return this.options.meta}addObserver(t){g(this,jn).includes(t)||(g(this,jn).push(t),this.clearGcTimeout(),g(this,yo).notify({type:"observerAdded",mutation:this,observer:t}));}removeObserver(t){H(this,jn,g(this,jn).filter(r=>r!==t)),this.scheduleGc(),g(this,yo).notify({type:"observerRemoved",mutation:this,observer:t});}optionalRemove(){g(this,jn).length||(this.state.status==="pending"?this.scheduleGc():g(this,yo).remove(this));}continue(){return g(this,Ms)?.continue()??this.execute(this.state.variables)}async execute(t){let r=()=>{Ct(this,$n,Xi).call(this,{type:"continue"});},o={client:g(this,Zl),meta:this.options.meta,mutationKey:this.options.mutationKey};H(this,Ms,Rd({fn:()=>this.options.mutationFn?this.options.mutationFn(t,o):Promise.reject(new Error("No mutationFn found")),onFail:(s,a)=>{Ct(this,$n,Xi).call(this,{type:"failed",failureCount:s,error:a});},onPause:()=>{Ct(this,$n,Xi).call(this,{type:"pause"});},onContinue:r,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>g(this,yo).canRun(this)}));let n=this.state.status==="pending",i=!g(this,Ms).canStart();try{if(n)r();else {Ct(this,$n,Xi).call(this,{type:"pending",variables:t,isPaused:i}),g(this,yo).config.onMutate&&await g(this,yo).config.onMutate(t,this,o);let a=await this.options.onMutate?.(t,o);a!==this.state.context&&Ct(this,$n,Xi).call(this,{type:"pending",context:a,variables:t,isPaused:i});}let s=await g(this,Ms).start();return await g(this,yo).config.onSuccess?.(s,t,this.state.context,this,o),await this.options.onSuccess?.(s,t,this.state.context,o),await g(this,yo).config.onSettled?.(s,null,this.state.variables,this.state.context,this,o),await this.options.onSettled?.(s,null,t,this.state.context,o),Ct(this,$n,Xi).call(this,{type:"success",data:s}),s}catch(s){try{await g(this,yo).config.onError?.(s,t,this.state.context,this,o);}catch(a){Promise.reject(a);}try{await this.options.onError?.(s,t,this.state.context,o);}catch(a){Promise.reject(a);}try{await g(this,yo).config.onSettled?.(void 0,s,this.state.variables,this.state.context,this,o);}catch(a){Promise.reject(a);}try{await this.options.onSettled?.(void 0,s,t,this.state.context,o);}catch(a){Promise.reject(a);}throw Ct(this,$n,Xi).call(this,{type:"error",error:s}),s}finally{g(this,yo).runNext(this);}}},Zl=new WeakMap,jn=new WeakMap,yo=new WeakMap,Ms=new WeakMap,$n=new WeakSet,Xi=function(t){let r=o=>{switch(t.type){case "failed":return {...o,failureCount:t.failureCount,failureReason:t.error};case "pause":return {...o,isPaused:true};case "continue":return {...o,isPaused:false};case "pending":return {...o,context:t.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:t.isPaused,status:"pending",variables:t.variables,submittedAt:Date.now()};case "success":return {...o,data:t.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:false};case "error":return {...o,data:void 0,error:t.error,failureCount:o.failureCount+1,failureReason:t.error,isPaused:false,status:"error"}}};this.state=r(this.state),Qr.batch(()=>{g(this,jn).forEach(o=>{o.onMutationUpdate(t);}),g(this,yo).notify({mutation:this,type:"updated",action:t});});},zh);function Fw(){return {context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:false,status:"idle",variables:void 0,submittedAt:0}}var fi,Tn,Xl,Nh,Hh=(Nh=class extends Yi{constructor(t={}){super();re(this,fi);re(this,Tn);re(this,Xl);this.config=t,H(this,fi,new Set),H(this,Tn,new Map),H(this,Xl,0);}build(t,r,o){let n=new Uh({client:t,mutationCache:this,mutationId:++Sl(this,Xl)._,options:t.defaultMutationOptions(r),state:o});return this.add(n),n}add(t){g(this,fi).add(t);let r=_d(t);if(typeof r=="string"){let o=g(this,Tn).get(r);o?o.push(t):g(this,Tn).set(r,[t]);}this.notify({type:"added",mutation:t});}remove(t){if(g(this,fi).delete(t)){let r=_d(t);if(typeof r=="string"){let o=g(this,Tn).get(r);if(o)if(o.length>1){let n=o.indexOf(t);n!==-1&&o.splice(n,1);}else o[0]===t&&g(this,Tn).delete(r);}}this.notify({type:"removed",mutation:t});}canRun(t){let r=_d(t);if(typeof r=="string"){let n=g(this,Tn).get(r)?.find(i=>i.state.status==="pending");return !n||n===t}else return true}runNext(t){let r=_d(t);return typeof r=="string"?g(this,Tn).get(r)?.find(n=>n!==t&&n.state.isPaused)?.continue()??Promise.resolve():Promise.resolve()}clear(){Qr.batch(()=>{g(this,fi).forEach(t=>{this.notify({type:"removed",mutation:t});}),g(this,fi).clear(),g(this,Tn).clear();});}getAll(){return Array.from(g(this,fi))}find(t){let r={exact:true,...t};return this.getAll().find(o=>Bp(r,o))}findAll(t={}){return this.getAll().filter(r=>Bp(t,r))}notify(t){Qr.batch(()=>{this.listeners.forEach(r=>{r(t);});});}resumePausedMutations(){let t=this.getAll().filter(r=>r.state.isPaused);return Qr.batch(()=>Promise.all(t.map(r=>r.continue().catch(Lo))))}},fi=new WeakMap,Tn=new WeakMap,Xl=new WeakMap,Nh);function _d(e){return e.options.scope?.id}var qn,jh,$h=(jh=class extends Yi{constructor(t={}){super();re(this,qn);this.config=t,H(this,qn,new Map);}build(t,r,o){let n=r.queryKey,i=r.queryHash??Yl(n,r),s=this.get(i);return s||(s=new Eh({client:t,queryKey:n,queryHash:i,options:t.defaultQueryOptions(r),state:o,defaultOptions:t.getQueryDefaults(n)}),this.add(s)),s}add(t){g(this,qn).has(t.queryHash)||(g(this,qn).set(t.queryHash,t),this.notify({type:"added",query:t}));}remove(t){let r=g(this,qn).get(t.queryHash);r&&(t.destroy(),r===t&&g(this,qn).delete(t.queryHash),this.notify({type:"removed",query:t}));}clear(){Qr.batch(()=>{this.getAll().forEach(t=>{this.remove(t);});});}get(t){return g(this,qn).get(t)}getAll(){return [...g(this,qn).values()]}find(t){let r={exact:true,...t};return this.getAll().find(o=>Lp(r,o))}findAll(t={}){let r=this.getAll();return Object.keys(t).length>0?r.filter(o=>Lp(t,o)):r}notify(t){Qr.batch(()=>{this.listeners.forEach(r=>{r(t);});});}onFocus(){Qr.batch(()=>{this.getAll().forEach(t=>{t.onFocus();});});}onOnline(){Qr.batch(()=>{this.getAll().forEach(t=>{t.onOnline();});});}},qn=new WeakMap,jh);var Vr,es,ts,Ma,za,rs,Ua,Na,qh,Wp=(qh=class{constructor(e={}){re(this,Vr);re(this,es);re(this,ts);re(this,Ma);re(this,za);re(this,rs);re(this,Ua);re(this,Na);H(this,Vr,e.queryCache||new $h),H(this,es,e.mutationCache||new Hh),H(this,ts,e.defaultOptions||{}),H(this,Ma,new Map),H(this,za,new Map),H(this,rs,0);}mount(){Sl(this,rs)._++,g(this,rs)===1&&(H(this,Ua,Td.subscribe(async e=>{e&&(await this.resumePausedMutations(),g(this,Vr).onFocus());})),H(this,Na,Aa.subscribe(async e=>{e&&(await this.resumePausedMutations(),g(this,Vr).onOnline());})));}unmount(){var e,t;Sl(this,rs)._--,g(this,rs)===0&&((e=g(this,Ua))==null||e.call(this),H(this,Ua,void 0),(t=g(this,Na))==null||t.call(this),H(this,Na,void 0));}isFetching(e){return g(this,Vr).findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return g(this,es).findAll({...e,status:"pending"}).length}getQueryData(e){let t=this.defaultQueryOptions({queryKey:e});return g(this,Vr).get(t.queryHash)?.state.data}ensureQueryData(e){let t=this.defaultQueryOptions(e),r=g(this,Vr).build(this,t),o=r.state.data;return o===void 0?this.fetchQuery(e):(e.revalidateIfStale&&r.isStaleByTime(Gl(t.staleTime,r))&&this.prefetchQuery(t),Promise.resolve(o))}getQueriesData(e){return g(this,Vr).findAll(e).map(({queryKey:t,state:r})=>{let o=r.data;return [t,o]})}setQueryData(e,t,r){let o=this.defaultQueryOptions({queryKey:e}),i=g(this,Vr).get(o.queryHash)?.state.data,s=Sh(t,i);if(s!==void 0)return g(this,Vr).build(this,o).setData(s,{...r,manual:true})}setQueriesData(e,t,r){return Qr.batch(()=>g(this,Vr).findAll(e).map(({queryKey:o})=>[o,this.setQueryData(o,t,r)]))}getQueryState(e){let t=this.defaultQueryOptions({queryKey:e});return g(this,Vr).get(t.queryHash)?.state}removeQueries(e){let t=g(this,Vr);Qr.batch(()=>{t.findAll(e).forEach(r=>{t.remove(r);});});}resetQueries(e,t){let r=g(this,Vr);return Qr.batch(()=>(r.findAll(e).forEach(o=>{o.reset();}),this.refetchQueries({type:"active",...e},t)))}cancelQueries(e,t={}){let r={revert:true,...t},o=Qr.batch(()=>g(this,Vr).findAll(e).map(n=>n.cancel(r)));return Promise.all(o).then(Lo).catch(Lo)}invalidateQueries(e,t={}){return Qr.batch(()=>(g(this,Vr).findAll(e).forEach(r=>{r.invalidate();}),e?.refetchType==="none"?Promise.resolve():this.refetchQueries({...e,type:e?.refetchType??e?.type??"active"},t)))}refetchQueries(e,t={}){let r={...t,cancelRefetch:t.cancelRefetch??true},o=Qr.batch(()=>g(this,Vr).findAll(e).filter(n=>!n.isDisabled()&&!n.isStatic()).map(n=>{let i=n.fetch(void 0,r);return r.throwOnError||(i=i.catch(Lo)),n.state.fetchStatus==="paused"?Promise.resolve():i}));return Promise.all(o).then(Lo)}fetchQuery(e){let t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=false);let r=g(this,Vr).build(this,t);return r.isStaleByTime(Gl(t.staleTime,r))?r.fetch(t):Promise.resolve(r.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(Lo).catch(Lo)}fetchInfiniteQuery(e){return e._type="infinite",this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(Lo).catch(Lo)}ensureInfiniteQueryData(e){return e._type="infinite",this.ensureQueryData(e)}resumePausedMutations(){return Aa.isOnline()?g(this,es).resumePausedMutations():Promise.resolve()}getQueryCache(){return g(this,Vr)}getMutationCache(){return g(this,es)}getDefaultOptions(){return g(this,ts)}setDefaultOptions(e){H(this,ts,e);}setQueryDefaults(e,t){g(this,Ma).set(Da(e),{queryKey:e,defaultOptions:t});}getQueryDefaults(e){let t=[...g(this,Ma).values()],r={};return t.forEach(o=>{Oa(e,o.queryKey)&&Object.assign(r,o.defaultOptions);}),r}setMutationDefaults(e,t){g(this,za).set(Da(e),{mutationKey:e,defaultOptions:t});}getMutationDefaults(e){let t=[...g(this,za).values()],r={};return t.forEach(o=>{Oa(e,o.mutationKey)&&Object.assign(r,o.defaultOptions);}),r}defaultQueryOptions(e){if(e._defaulted)return e;let t={...g(this,ts).queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:true};return t.queryHash||(t.queryHash=Yl(t.queryKey,t)),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!=="always"),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),t.queryFn===Va&&(t.enabled=false),t}defaultMutationOptions(e){return e?._defaulted?e:{...g(this,ts).mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:true}}clear(){g(this,Vr).clear(),g(this,es).clear();}},Vr=new WeakMap,es=new WeakMap,ts=new WeakMap,Ma=new WeakMap,za=new WeakMap,rs=new WeakMap,Ua=new WeakMap,Na=new WeakMap,qh);var Qh=Ss__namespace.createContext(void 0);var Ep=({client:e,children:t})=>(Ss__namespace.useEffect(()=>(e.mount(),()=>{e.unmount();}),[e]),jsxRuntime.jsx(Qh.Provider,{value:e,children:t}));var ja=new Map;function Kh({width:e,height:t,borderRadius:r,color:o}){let n=Ss.useRef(new reactNative.Animated.Value(.3)).current;return Ss.useEffect(()=>{let i=reactNative.Animated.loop(reactNative.Animated.sequence([reactNative.Animated.timing(n,{toValue:.7,duration:800,useNativeDriver:true}),reactNative.Animated.timing(n,{toValue:.3,duration:800,useNativeDriver:true})]));return i.start(),()=>i.stop()},[n]),jsxRuntime.jsx(reactNative.Animated.View,{style:{position:"absolute",width:e,height:t,borderRadius:r,backgroundColor:o,opacity:n}})}function xo({uri:e,width:t,height:r,borderRadius:o=0,borderWidth:n=0,borderColor:i="transparent",backgroundColor:s="transparent",style:a}){let{colors:l}=L(),[c,p]=Ss.useState(false),[h,T]=Ss.useState(false),[d,m]=Ss.useState(()=>{if(!e||!e.toLowerCase().endsWith(".svg"))return null;let I=ja.get(e);return I?{uri:e,xml:I}:null}),b=e?.toLowerCase().endsWith(".svg"),v=b&&e&&d?.uri===e?d.xml:null;Ss.useEffect(()=>{p(false),T(false);},[e]),Ss.useEffect(()=>{if(!b||!e)return;if(ja.has(e)){m({uri:e,xml:ja.get(e)});return}let I=false;return fetch(e).then(f=>{if(!f.ok)throw new Error(`HTTP ${f.status}`);return f.text()}).then(f=>{I||(ja.set(e,f),m({uri:e,xml:f}));}).catch(()=>{I||p(true);}),()=>{I=true;}},[e,b]);let x=l.card;if(!e)return jsxRuntime.jsx(reactNative.View,{style:[{width:t,height:r,borderRadius:o,backgroundColor:x},a]});let k={width:t,height:r,borderRadius:o,borderWidth:n,borderColor:i,backgroundColor:s,overflow:"hidden",alignItems:"center",justifyContent:"center",...a},R=t-n*2,w=r-n*2;return c?jsxRuntime.jsx(reactNative.View,{style:[k,{backgroundColor:s||x}]}):b?jsxRuntime.jsxs(reactNative.View,{style:k,children:[!!!v&&jsxRuntime.jsx(Kh,{width:R,height:w,borderRadius:o,color:x}),v?jsxRuntime.jsx(ir.SvgXml,{xml:v,width:R,height:w,onError:()=>p(true)}):jsxRuntime.jsx(ir.SvgUri,{uri:e,width:R,height:w,onError:()=>p(true)})]}):jsxRuntime.jsxs(reactNative.View,{style:k,children:[!h&&jsxRuntime.jsx(Kh,{width:R,height:w,borderRadius:o,color:x}),jsxRuntime.jsx(reactNative.Image,{source:{uri:e,cache:"force-cache"},style:{width:R,height:w},resizeMode:"contain",onLoad:()=>T(true),onError:()=>p(true)})]})}function tc(e){let t=[];for(let r of e)if(r)if(r.toLowerCase().endsWith(".svg")){if(ja.has(r))continue;t.push(fetch(r).then(o=>{if(!o.ok)throw new Error(`HTTP ${o.status}`);return o.text()}).then(o=>{ja.set(r,o);}).catch(()=>{}));}else t.push(reactNative.Image.prefetch(r).then(()=>{}).catch(()=>{}));return Promise.all(t).then(()=>{})}function Gr({title:e,subtitle:t,showBack:r=false,showClose:o=true,onBack:n,onClose:i,badge:s,showBalance:a=false,balanceAddress:l,balanceChainType:c,balanceChainId:p,balanceTokenAddress:h,publishableKey:T,projectName:d,leftIcon:m,onLeftAction:b}){let{colors:v,fonts:x,components:k}=L(),[R,w]=Ss.useState(null),[I,f]=Ss.useState(false),u=Ss.useState(()=>new reactNative.Animated.Value(0))[0];Ss.useEffect(()=>{if(!I)return;let y=reactNative.Animated.loop(reactNative.Animated.sequence([reactNative.Animated.timing(u,{toValue:1,duration:700,useNativeDriver:true}),reactNative.Animated.timing(u,{toValue:0,duration:700,useNativeDriver:true})]));return y.start(),()=>y.stop()},[I,u]),Ss.useEffect(()=>{if(!a||!l||!c||!p||!h||!T){w(null),f(false);return}let y=false;return f(true),Kc(l,c,p,h,T).then(F=>{if(y)return;let B=F.balance,D=null;B&&(B.amount_usd!=null&&B.amount_usd!==""?D=`$${B.amount_usd}`:D="$0.00"),w(D);}).catch(()=>{y||w(null);}).finally(()=>{y||f(false);}),()=>{y=true;}},[a,l,c,p,h,T]);let S=u.interpolate({inputRange:[0,1],outputRange:[.4,1]});return jsxRuntime.jsxs(reactNative.View,{style:bo.header,children:[jsxRuntime.jsx(reactNative.View,{style:bo.leftContainer,children:r&&n?jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:n,style:[bo.iconButton,{backgroundColor:"transparent"}],hitSlop:{top:10,bottom:10,left:10,right:10},children:jsxRuntime.jsx(kl,{size:20,color:k.header.buttonColor,strokeWidth:2})}):m&&b?jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:b,style:[bo.iconButton,{backgroundColor:"transparent"}],hitSlop:{top:10,bottom:10,left:10,right:10},children:m}):jsxRuntime.jsx(reactNative.View,{style:bo.spacer})}),jsxRuntime.jsxs(reactNative.View,{style:bo.titleContainer,children:[jsxRuntime.jsxs(reactNative.View,{style:bo.titleRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[bo.title,{color:k.header.titleColor,fontFamily:x.medium}],children:e}),s&&s.count>0&&jsxRuntime.jsx(reactNative.View,{style:[bo.titleBadge,{backgroundColor:v.card}],children:jsxRuntime.jsx(reactNative.Text,{style:[bo.titleBadgeText,{color:v.foregroundMuted,fontFamily:x.regular}],children:s.count})})]}),t?jsxRuntime.jsx(reactNative.Text,{style:[bo.balanceText,{color:v.foregroundMuted,fontFamily:x.regular}],children:t}):null,a&&(I?jsxRuntime.jsx(reactNative.Animated.View,{style:[bo.balanceSkeleton,{backgroundColor:v.cardHover,opacity:S}]}):R!=null?jsxRuntime.jsxs(reactNative.Text,{style:[bo.balanceText,{color:v.foregroundMuted,fontFamily:x.regular}],children:[d?`${d} `:"","Balance: ",R]}):null)]}),jsxRuntime.jsx(reactNative.View,{style:bo.rightContainer,children:o?jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:i,style:[bo.iconButton,{backgroundColor:"transparent"}],hitSlop:{top:10,bottom:10,left:10,right:10},children:jsxRuntime.jsx(vt,{size:20,color:k.header.buttonColor,strokeWidth:2})}):jsxRuntime.jsx(reactNative.View,{style:bo.spacer})})]})}var bo=reactNative.StyleSheet.create({header:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingTop:16,paddingBottom:8},leftContainer:{width:40,alignItems:"flex-start"},rightContainer:{width:40,alignItems:"flex-end"},titleContainer:{flex:1,alignItems:"center"},titleRow:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:8},title:{fontSize:16,textAlign:"center"},titleBadge:{paddingHorizontal:8,paddingVertical:2,borderRadius:12},titleBadgeText:{fontSize:10,fontWeight:"400"},balanceSkeleton:{height:15,width:120,borderRadius:5,marginTop:5},balanceText:{fontSize:14,marginTop:3,textAlign:"center"},iconButton:{width:28,height:28,borderRadius:8,alignItems:"center",justifyContent:"center"},spacer:{width:28,height:28}});function Or({children:e,style:t,contentStyle:r,onPress:o,activeOpacity:n=.7,cardTokens:i}){let{components:s}=L(),a=i??s.card,l=a.backShadowColor!=="transparent",c={backgroundColor:a.backgroundColor,borderRadius:a.borderRadius,borderWidth:a.borderWidth,borderColor:a.borderColor},p=[Zh.wrapper,t,l&&{marginBottom:a.backShadowSpacing}],h=[c,r];return jsxRuntime.jsxs(reactNative.View,{style:p,children:[l&&jsxRuntime.jsx(reactNative.View,{style:[Zh.backShadow,{top:a.backShadowOffset.top,left:a.backShadowOffset.left,right:a.backShadowOffset.right,bottom:a.backShadowOffset.bottom,backgroundColor:a.backShadowColor,borderRadius:a.borderRadius}]}),o!=null?jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:o,activeOpacity:n,style:h,children:e}):jsxRuntime.jsx(reactNative.View,{style:h,children:e})]})}var Zh=reactNative.StyleSheet.create({wrapper:{position:"relative"},backShadow:{position:"absolute"}});function rc({onPress:e,title:t,subtitle:r,featuredTokens:o}){let{fonts:n,components:i}=L(),s=i.depositMenu.card,a=o?[...o].sort((l,c)=>l.position-c.position):[];return jsxRuntime.jsxs(Or,{cardTokens:s,onPress:e,style:Qn.wrapper,contentStyle:Qn.container,children:[jsxRuntime.jsxs(reactNative.View,{style:Qn.leftContent,children:[jsxRuntime.jsx(reactNative.View,{style:[Qn.iconContainer,{borderRadius:s.iconContainerBorderRadius}],children:jsxRuntime.jsx(zu,{size:20,color:s.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.View,{style:Qn.textContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[Qn.title,{color:s.titleColor,fontFamily:n.regular}],children:t}),jsxRuntime.jsx(reactNative.Text,{style:[Qn.subtitle,{color:s.subtitleColor,fontFamily:n.regular}],children:r})]})]}),jsxRuntime.jsx(reactNative.View,{style:Qn.rightContent,children:jsxRuntime.jsx(reactNative.View,{style:Qn.networkIcons,children:a.map((l,c)=>{let p=l.icon_urls.find(h=>h.format==="png")?.url||l.icon_urls.find(h=>h.format==="svg")?.url;return jsxRuntime.jsx(reactNative.View,{style:[Qn.networkIconWrapper,{marginLeft:c===0?0:-6,zIndex:a.length-c}],children:jsxRuntime.jsx(xo,{uri:ne(p),width:20,height:20})},l.name)})})})]})}var Qn=reactNative.StyleSheet.create({wrapper:{marginHorizontal:16},container:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:16,paddingHorizontal:12},leftContent:{flexDirection:"row",alignItems:"center",gap:12,flex:1},iconContainer:{width:36,height:36,alignItems:"center",justifyContent:"center"},textContainer:{flex:1},title:{fontSize:14,fontWeight:"400",marginBottom:2},subtitle:{fontSize:12,fontWeight:"300"},rightContent:{flexDirection:"row",alignItems:"center",gap:8},networkIcons:{flexDirection:"row",alignItems:"center"},networkIconWrapper:{}});function nc({onPress:e,title:t,subtitle:r,paymentNetworks:o}){let{fonts:n,components:i}=L(),s=i.depositMenu.card;return jsxRuntime.jsxs(Or,{cardTokens:s,onPress:e,style:mi.wrapper,contentStyle:mi.container,children:[jsxRuntime.jsxs(reactNative.View,{style:mi.leftContent,children:[jsxRuntime.jsx(reactNative.View,{style:[mi.iconContainer,{borderRadius:s.iconContainerBorderRadius}],children:jsxRuntime.jsx(la,{size:20,color:s.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.View,{style:mi.textContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[mi.title,{color:s.titleColor,fontFamily:n.regular}],children:t}),jsxRuntime.jsx(reactNative.Text,{style:[mi.subtitle,{color:s.subtitleColor,fontFamily:n.regular}],children:r})]})]}),jsxRuntime.jsx(reactNative.View,{style:mi.rightContent,children:jsxRuntime.jsx(reactNative.View,{style:mi.paymentIcons,children:o?.map(a=>{let l=a.icon_urls.find(c=>c.format==="png")?.url||a.icon_urls.find(c=>c.format==="svg")?.url;return jsxRuntime.jsx(xo,{uri:ne(l),width:32,height:20,borderRadius:4},a.name)})})})]})}var mi=reactNative.StyleSheet.create({wrapper:{marginHorizontal:16},container:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:16,paddingHorizontal:12},leftContent:{flexDirection:"row",alignItems:"center",gap:12,flex:1},iconContainer:{width:36,height:36,alignItems:"center",justifyContent:"center"},textContainer:{flex:1},title:{fontSize:14,fontWeight:"400",marginBottom:2},subtitle:{fontSize:12,fontWeight:"300"},rightContent:{flexDirection:"row",alignItems:"center",gap:8},paymentIcons:{flexDirection:"row",alignItems:"center",gap:6}});function ic({onPress:e,title:t,subtitle:r,badge:o}){let{fonts:n,components:i}=L(),s=i.depositMenu.card;return jsxRuntime.jsx(Or,{cardTokens:s,onPress:e,style:hi.wrapper,contentStyle:hi.container,children:jsxRuntime.jsxs(reactNative.View,{style:hi.leftContent,children:[jsxRuntime.jsxs(reactNative.View,{style:[hi.iconContainer,{borderRadius:s.iconContainerBorderRadius}],children:[jsxRuntime.jsx(go,{size:20,color:s.iconColor,strokeWidth:2}),o!==void 0&&o>0&&jsxRuntime.jsx(reactNative.View,{style:[hi.badge,{backgroundColor:s.iconColor,borderRadius:i.badge.borderRadius}],children:jsxRuntime.jsx(reactNative.Text,{style:[hi.badgeText,{fontFamily:n.semibold}],children:o>99?"99+":o})})]}),jsxRuntime.jsxs(reactNative.View,{style:hi.textContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[hi.title,{color:s.titleColor,fontFamily:n.regular}],children:t}),jsxRuntime.jsx(reactNative.Text,{style:[hi.subtitle,{color:s.subtitleColor,fontFamily:n.regular}],children:r})]})]})})}var hi=reactNative.StyleSheet.create({wrapper:{marginHorizontal:16},container:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:16,paddingHorizontal:12},leftContent:{flexDirection:"row",alignItems:"center",gap:12,flex:1},iconContainer:{width:36,height:36,alignItems:"center",justifyContent:"center",position:"relative"},badge:{position:"absolute",top:-4,right:-4,minWidth:18,height:18,alignItems:"center",justifyContent:"center",paddingHorizontal:4},badgeText:{color:"#FFFFFF",fontSize:10,fontWeight:"600"},textContainer:{flex:1},title:{fontSize:14,fontWeight:"400",marginBottom:2},subtitle:{fontSize:12,fontWeight:"300"}});function ac({onPress:e,title:t,subtitle:r}){let{fonts:o,components:n}=L(),i=n.depositMenu.card;return jsxRuntime.jsxs(Or,{cardTokens:i,onPress:e,style:Kn.wrapper,contentStyle:Kn.container,children:[jsxRuntime.jsxs(reactNative.View,{style:Kn.leftContent,children:[jsxRuntime.jsx(reactNative.View,{style:[Kn.iconContainer,{borderRadius:i.iconContainerBorderRadius}],children:jsxRuntime.jsx(Ec,{size:20,color:i.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.View,{style:Kn.textContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[Kn.title,{color:i.titleColor,fontFamily:o.regular}],children:t}),jsxRuntime.jsx(reactNative.Text,{style:[Kn.subtitle,{color:i.subtitleColor,fontFamily:o.regular}],children:r})]})]}),jsxRuntime.jsx(reactNative.View,{style:Kn.rightContent,children:jsxRuntime.jsx(reactNative.View,{style:Kn.badge,children:jsxRuntime.jsx(reactNative.Text,{style:[Kn.badgeText,{fontFamily:o.regular}],children:"Stripe"})})})]})}var Kn=reactNative.StyleSheet.create({wrapper:{marginHorizontal:16},container:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:16,paddingHorizontal:12},leftContent:{flexDirection:"row",alignItems:"center",gap:12,flex:1},iconContainer:{width:36,height:36,alignItems:"center",justifyContent:"center"},textContainer:{flex:1},title:{fontSize:14,fontWeight:"400",marginBottom:2},subtitle:{fontSize:12,fontWeight:"300"},rightContent:{flexDirection:"row",alignItems:"center",gap:8},badge:{paddingHorizontal:10,paddingVertical:4,borderRadius:6,backgroundColor:"#635BFF"},badgeText:{fontSize:12,fontWeight:"600",color:"#FFFFFF"}});var qw="#00D632";function lc({onPress:e,title:t="Pay with Cash App",subtitle:r="USD Only \u2022 Instant"}){let{fonts:o,components:n}=L(),i=n.depositMenu.card,[s,a]=Ss.useState(false),l=rr("/icons/onramps/png/cashapp.png");return jsxRuntime.jsx(Or,{cardTokens:i,onPress:e,style:Gn.wrapper,contentStyle:Gn.container,children:jsxRuntime.jsxs(reactNative.View,{style:Gn.leftContent,children:[jsxRuntime.jsx(reactNative.View,{style:[Gn.iconContainer,{borderRadius:i.iconContainerBorderRadius}],children:s?jsxRuntime.jsx(reactNative.View,{style:[Gn.cashAppIconFallback,{borderRadius:i.iconContainerBorderRadius}],children:jsxRuntime.jsx(reactNative.Text,{style:Gn.cashAppIconFallbackText,children:"$"})}):jsxRuntime.jsx(reactNative.Image,{source:{uri:l,cache:"force-cache"},style:[Gn.cashAppIcon,{borderRadius:i.iconContainerBorderRadius}],resizeMode:"cover",onError:()=>a(true)})}),jsxRuntime.jsxs(reactNative.View,{style:Gn.textContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[Gn.title,{color:i.titleColor,fontFamily:o.regular}],children:t}),jsxRuntime.jsx(reactNative.Text,{style:[Gn.subtitle,{color:i.subtitleColor,fontFamily:o.regular}],children:r})]})]})})}var Gn=reactNative.StyleSheet.create({wrapper:{marginHorizontal:16},container:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:16,paddingHorizontal:12},leftContent:{flexDirection:"row",alignItems:"center",gap:12,flex:1},iconContainer:{width:36,height:36,alignItems:"center",justifyContent:"center",overflow:"hidden"},cashAppIcon:{width:36,height:36},cashAppIconFallback:{width:36,height:36,backgroundColor:qw,alignItems:"center",justifyContent:"center"},cashAppIconFallbackText:{color:"#fff",fontSize:18,fontWeight:"bold"},textContainer:{flex:1},title:{fontSize:14,fontWeight:"400",marginBottom:2},subtitle:{fontSize:12,fontWeight:"300"}});function cc({onPress:e,title:t="Connect Wallet",subtitle:r="Pay from your wallet app",featuredWallets:o}){let{fonts:n,components:i}=L(),s=i.depositMenu.card;return jsxRuntime.jsxs(Or,{cardTokens:s,onPress:e,style:Yn.wrapper,contentStyle:Yn.container,children:[jsxRuntime.jsxs(reactNative.View,{style:Yn.leftContent,children:[jsxRuntime.jsx(reactNative.View,{style:[Yn.iconContainer,{backgroundColor:s.iconBackgroundColor,borderRadius:s.iconContainerBorderRadius}],children:jsxRuntime.jsx(om,{size:20,color:s.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.View,{style:Yn.textContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[Yn.title,{color:s.titleColor,fontFamily:n.regular}],children:t}),jsxRuntime.jsx(reactNative.Text,{style:[Yn.subtitle,{color:s.subtitleColor,fontFamily:n.regular}],children:r})]})]}),o&&o.length>0&&jsxRuntime.jsx(reactNative.View,{style:Yn.rightContent,children:jsxRuntime.jsx(reactNative.View,{style:Yn.walletIcons,children:o.slice(0,4).map((a,l)=>{let c=a.icon_urls.find(p=>p.format==="png")?.url||a.icon_urls.find(p=>p.format==="svg")?.url;return jsxRuntime.jsx(reactNative.View,{style:[Yn.walletIconWrapper,{marginLeft:l===0?0:-6,zIndex:o.length-l}],children:jsxRuntime.jsx(xo,{uri:ne(c),width:20,height:20})},`${a.id??"wallet"}-${l}`)})})})]})}var Yn=reactNative.StyleSheet.create({wrapper:{marginHorizontal:16},container:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:16,paddingHorizontal:12},leftContent:{flexDirection:"row",alignItems:"center",gap:12,flex:1},iconContainer:{width:36,height:36,alignItems:"center",justifyContent:"center"},textContainer:{flex:1},title:{fontSize:14,fontWeight:"400",marginBottom:2},subtitle:{fontSize:12,fontWeight:"300"},rightContent:{flexDirection:"row",alignItems:"center",gap:8},walletIcons:{flexDirection:"row",alignItems:"center"},walletIconWrapper:{borderRadius:10,overflow:"hidden"}});var Hs="#00D632",ag=5,Jw=[25,50,100,500],Ga=120,Zw=5e3,Xw=2e3,eS=300;function dc(e){return e===Math.round(e)?String(Math.round(e)):e.toFixed(2)}function lg(e){let t=parseFloat(e);return isNaN(t)?e:t===Math.round(t)?String(Math.round(t)):t.toFixed(2)}function tS(e,t){let r=parseFloat(e)/Math.pow(10,t);if(r===0)return "0.00";if(r>=1)return r.toFixed(2);let o=r.toPrecision(6);return parseFloat(o).toString()}function cg(e,t){let r={1:"Ethereum",137:"Polygon",42161:"Arbitrum",10:"Optimism",8453:"Base",56:"BSC",mainnet:"Solana"};return e==="n1"?"N1":e==="cardano"?"Cardano":r[t]??`${e.charAt(0).toUpperCase()+e.slice(1)} (${t})`}function rS(e){if(!e)return "";let t=e.indexOf(".");return t!==-1?e.slice(0,t).toUpperCase()+e.slice(t):e.toUpperCase()}function dg(e){return e.length<=12?e:`${e.slice(0,6)}...${e.slice(-4)}`}function oS(e){if(!e)return "";try{return new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0})}catch{return ""}}function nS(e){let t=Math.floor(e/60),r=e%60;return `${t}:${r.toString().padStart(2,"0")}`}function Ld({size:e,faded:t=false,withBackground:r=false}){let[o,n]=Ss.useState(false),i=rr("/icons/onramps/png/cashapp.png"),s=e*.2,l=jsxRuntime.jsx(reactNative.View,{style:{opacity:t?.4:1},children:o?jsxRuntime.jsx(reactNative.View,{style:{width:e,height:e,borderRadius:s,backgroundColor:Hs,alignItems:"center",justifyContent:"center"},children:jsxRuntime.jsx(reactNative.Text,{style:{color:"white",fontSize:e*.5,fontWeight:"bold"},children:"$"})}):jsxRuntime.jsx(reactNative.Image,{source:{uri:i,cache:"force-cache"},style:{width:e,height:e,borderRadius:s},resizeMode:"contain",onError:()=>n(true)})});return r?jsxRuntime.jsx(reactNative.View,{style:{width:e+24,height:e+24,borderRadius:(e+24)/2,backgroundColor:`${Hs}33`,alignItems:"center",justifyContent:"center"},children:l}):l}function Bd({externalUserId:e,publishableKey:t,recipientAddress:r="",destinationChainType:o="ethereum",destinationChainId:n="8453",destinationTokenAddress:i="0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",onBack:s,onClose:a,onDepositSuccess:l}){let{colors:c,fonts:p,components:h}=L();Ss.useEffect(()=>{reactNative.Platform.OS==="android"&&reactNative.UIManager.setLayoutAnimationEnabledExperimental&&reactNative.UIManager.setLayoutAnimationEnabledExperimental(true);},[]);let[T,d]=Ss.useState("amountInput"),[m,b]=Ss.useState("25"),[v,x]=Ss.useState(null),[k,R]=Ss.useState(null),[w,I]=Ss.useState(true),[f,u]=Ss.useState(null),[S,y]=Ss.useState(false),[F,B]=Ss.useState(null),[D,V]=Ss.useState(Ga),[A,M]=Ss.useState(null),[Q,We]=Ss.useState(false),[q,Ue]=Ss.useState("pending"),J=Ss.useRef(null),ie=Ss.useRef(null),ee=Ss.useRef(null),Z=Ss.useRef("pending"),ce=Ss.useRef(null),U=Ss.useRef("amountInput"),Se=Ss.useRef(Ga),st=Ss.useRef(null),Ee=Ss.useRef(null),de=Ss.useRef(false),He=Ss.useRef(true),Ve=k?.minimum_amount??ag,$e=k?.maximum_amount,mt=parseFloat(m)||0,Ne=!isNaN(mt)&&mt>=Ve&&($e==null||mt<=$e),qe=$e?`$${dc(Ve)} \u2013 $${dc($e)}`:`$${dc(Ve)} minimum`,Le=T==="amountInput"?"Pay with Cash App":`Pay $${lg(m)} via Cash App`,xe=T==="waitingForPayment";Ss.useEffect(()=>(He.current=true,I(true),Zu("usd",t).then(C=>{He.current&&R(C);}).catch(()=>{}).finally(()=>{He.current&&I(false);}),()=>{He.current=false,Xe();}),[t]);function ve(C,O=k){if(B(null),!C){x(null);return}let N=parseFloat(C);if(isNaN(N)){x("Enter a valid number");return}let $=O?.minimum_amount??ag,j=O?.maximum_amount;N<$?x(`$${dc($)} minimum`):j!=null&&N>j?x(`$${dc(j)} maximum`):x(null);}function Xe(){J.current&&clearInterval(J.current),ie.current&&clearInterval(ie.current),ee.current&&clearInterval(ee.current),J.current=null,ie.current=null,ee.current=null;}function Qe(){Xe(),u(null),ce.current=null,M(null),We(false),B(null),Z.current="pending",Ue("pending"),V(Ga),Se.current=Ga,st.current=null,de.current=false,d("amountInput"),U.current="amountInput";}async function at(){if(!(!Ne||S)){y(true),B(null),Xe(),st.current=null;try{let C=await Ju({external_user_id:e,destination_chain_type:o,destination_chain_id:n,destination_token_address:i,recipient_address:r,source_amount:m},t);ce.current=C,Z.current=C.status,u(C),y(!1),d("waitingForPayment"),U.current="waitingForPayment",Xt(),Be(),reactNative.Linking.openURL(C.url).catch(()=>{});}catch(C){y(false),B(C instanceof Error?C.message:"Failed to create session");}}}function Xt(){Se.current=Ga,V(Ga),ee.current&&clearInterval(ee.current),ee.current=setInterval(()=>{Se.current-=1,V(Se.current),Se.current<=0&&(clearInterval(ee.current),ee.current=null,Z.current==="pending"&&(d("softExpired"),U.current="softExpired"));},1e3);}function Be(){J.current&&clearInterval(J.current),J.current=setInterval(()=>{Re();},Zw);}async function Re(){if(!He.current)return;let C=ce.current;if(!C)return;let O=C.external_id??C.id;try{let N=await Xu(O,t),$=Z.current;switch(Z.current=N.status,Ue(N.status),N.status){case "processing":(U.current==="amountInput"||U.current==="softExpired"||U.current==="waitingForPayment")&&(d("paymentReceived"),U.current="paymentReceived",ee.current&&(clearInterval(ee.current),ee.current=null));break;case "completed":J.current&&(clearInterval(J.current),J.current=null),ee.current&&(clearInterval(ee.current),ee.current=null),$!=="completed"&&(d("paymentReceived"),U.current="paymentReceived",ct());break;case "failed":J.current&&(clearInterval(J.current),J.current=null),ee.current&&(clearInterval(ee.current),ee.current=null),U.current!=="amountInput"&&(d("failed"),U.current="failed");break;case "expired":J.current&&(clearInterval(J.current),J.current=null),ee.current&&(clearInterval(ee.current),ee.current=null),U.current!=="amountInput"&&(d("softExpired"),U.current="softExpired");break;default:break}}catch{}}let rt=6e5;function ct(){ie.current&&clearInterval(ie.current);let C=Date.now()+rt;ie.current=setInterval(()=>{if(Date.now()>C){clearInterval(ie.current),ie.current=null;let O=Z.current;O==="completed"||O==="processing"?(d("paymentReceived"),U.current="paymentReceived"):(d("failed"),U.current="failed");return}Oe();},Xw);}async function Oe(){if(He.current)try{let C=await gn(e,t,"deposit"),O=Date.now(),N=[...C.data].sort((fe,Ge)=>{let W=fe.created_at?new Date(fe.created_at).getTime():0;return (Ge.created_at?new Date(Ge.created_at).getTime():0)-W}),$=st.current,j=$?N.find(fe=>fe.id===$):N.find(fe=>{if(!fe.created_at)return !1;let Ge=new Date(fe.created_at).getTime();return O-Ge<eS*1e3});j&&(st.current||(st.current=j.id),j.status==="succeeded"?(ie.current&&(clearInterval(ie.current),ie.current=null),M(j),d("depositComplete"),U.current="depositComplete",l?.({message:"Deposit completed successfully",executionId:j.id,transaction:j})):(j.status==="failed"||j.status==="refunded")&&(ie.current&&(clearInterval(ie.current),ie.current=null),M(j),d("failed"),U.current="failed"));}catch{}}function Ie(){if(T==="waitingForPayment"){ee.current&&(clearInterval(ee.current),ee.current=null),d("amountInput"),U.current="amountInput";return}s();}function Pe(){Xe(),a();}function Ut(){let C=ce.current??f;C&&reactNative.Linking.openURL(C.url).catch(()=>{});}function Nt(C){let O=C.destination_amount_base_unit;if(!O)return "\u2014";let N=C.destination_token_metadata?.decimals??6;return tS(O,N)}function pe(C){return rS(C.destination_currency)}function Ke(C){let O=C.destination_token_metadata;return O?O.icon_urls&&O.icon_urls.length>0?Fn(O.icon_urls,"png")??O.icon_url??null:O.icon_url??null:null}function er(){return jsxRuntime.jsxs(reactNative.View,{style:Y.poweredByRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Y.poweredByText,{color:c.foregroundMuted,fontFamily:p.regular}],children:"Powered by"}),jsxRuntime.jsxs(reactNative.Text,{style:[Y.poweredByBold,{color:c.foreground,fontFamily:p.bold}],children:[" ","U"]}),jsxRuntime.jsx(reactNative.Text,{style:[Y.poweredByBold,{color:c.foreground,fontFamily:p.semibold}],children:"nifold"})]})}function je(C,O){return jsxRuntime.jsxs(reactNative.View,{style:Y.detailRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Y.detailLabel,{color:c.foregroundMuted,fontFamily:p.regular}],children:C}),jsxRuntime.jsx(reactNative.Text,{style:[Y.detailValue,{color:c.foreground,fontFamily:p.medium}],children:O})]},C)}function Vt(C,O,N){return jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[Y.txRow,{backgroundColor:c.card,borderColor:c.cardHover}],onPress:()=>reactNative.Linking.openURL(N).catch(()=>{}),activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[Y.txLabel,{color:c.foreground,fontFamily:p.medium}],children:C}),jsxRuntime.jsxs(reactNative.View,{style:Y.txRight,children:[jsxRuntime.jsx(reactNative.Text,{style:[Y.txHash,{color:c.foregroundMuted}],children:O}),jsxRuntime.jsx(reactNative.Text,{style:[Y.txArrow,{color:c.foregroundMuted}],children:"\u2197"})]})]},C)}function et(){let C=Math.max(60-m.length*2.5,32);return jsxRuntime.jsxs(reactNative.View,{style:Y.flex,children:[jsxRuntime.jsxs(reactNative.ScrollView,{style:Y.flex,contentContainerStyle:Y.amountScrollContent,keyboardShouldPersistTaps:"handled",showsVerticalScrollIndicator:false,onLayout:()=>{de.current||(de.current=true,setTimeout(()=>Ee.current?.focus(),300));},children:[jsxRuntime.jsx(reactNative.View,{style:{height:32}}),jsxRuntime.jsxs(reactNative.View,{style:Y.amountSection,children:[jsxRuntime.jsxs(reactNative.View,{style:Y.amountRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Y.amountDollar,{color:c.foreground,fontSize:C}],children:"$"}),jsxRuntime.jsx(reactNative.TextInput,{ref:Ee,value:m,onChangeText:O=>{b(O),ve(O);},keyboardType:"decimal-pad",style:[Y.amountInput,{color:c.foreground,fontSize:C}],placeholderTextColor:c.foregroundMuted,placeholder:"0"})]}),v?jsxRuntime.jsx(reactNative.Text,{style:[Y.amountError,{color:c.warning,fontFamily:p.regular}],children:v}):w?jsxRuntime.jsx(reactNative.View,{style:[Y.limitsSkeleton,{backgroundColor:c.cardHover}]}):jsxRuntime.jsx(reactNative.Text,{style:[Y.limitsSubtitle,{color:c.foregroundMuted,fontFamily:p.regular}],children:qe})]}),jsxRuntime.jsx(reactNative.View,{style:Y.quickAmountsRow,children:Jw.map(O=>jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[Y.quickAmountButton,{backgroundColor:c.card}],onPress:()=>{let N=String(O);b(N),ve(N);},activeOpacity:.7,children:jsxRuntime.jsxs(reactNative.Text,{style:[Y.quickAmountText,{color:c.foreground,fontFamily:p.medium}],children:["$",O]})},O))}),F&&jsxRuntime.jsxs(reactNative.View,{style:[Y.errorBanner,{backgroundColor:c.cardHover}],children:[jsxRuntime.jsx(reactNative.Text,{style:Y.errorBannerIcon,children:"\u26A0\uFE0F"}),jsxRuntime.jsx(reactNative.Text,{style:[Y.errorBannerText,{color:c.foreground,fontFamily:p.regular}],children:F})]})]}),jsxRuntime.jsx(reactNative.View,{style:Y.bottomButtonContainer,children:jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[Y.continueButton,{backgroundColor:Hs,borderRadius:h.button.borderRadius,opacity:!Ne||S?.4:1}],onPress:at,disabled:!Ne||S,activeOpacity:.8,children:[S&&jsxRuntime.jsx(reactNative.ActivityIndicator,{color:"#fff",size:"small",style:Y.buttonSpinner}),jsxRuntime.jsx(reactNative.Text,{style:[Y.continueButtonText,{color:"#fff",fontFamily:p.medium}],children:S?"Loading...":"Continue"})]})})]})}function be(){return jsxRuntime.jsxs(reactNative.View,{style:Y.centeredFull,children:[jsxRuntime.jsxs(reactNative.View,{style:Y.centeredContent,children:[jsxRuntime.jsx(Ld,{size:56}),jsxRuntime.jsx(reactNative.Text,{style:[Y.stateTitle,{color:c.foreground,fontFamily:p.semibold}],children:"Waiting for payment"}),jsxRuntime.jsx(reactNative.Text,{style:[Y.stateDescription,{color:c.foregroundMuted,fontFamily:p.regular}],children:`Complete the payment in Cash App.
3
- This page will update automatically.`}),D>0&&jsxRuntime.jsxs(reactNative.Text,{style:[Y.expiryText,{color:D<=30?c.warning:c.foregroundMuted,fontFamily:p.medium}],children:["Expires in ",nS(D)]})]}),jsxRuntime.jsx(reactNative.View,{style:Y.bottomButtonContainer,children:jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[Y.continueButton,{backgroundColor:Hs,borderRadius:h.button.borderRadius}],onPress:Ut,activeOpacity:.8,children:[jsxRuntime.jsx(reactNative.View,{style:Y.cashAppButtonIcon,children:jsxRuntime.jsx(Ld,{size:20})}),jsxRuntime.jsx(reactNative.Text,{style:[Y.continueButtonText,{color:"#fff",fontFamily:p.semibold}],children:"Open Cash App"})]})})]})}function nt(){let C=q==="processing",O=C?"Payment processing":"Payment received",N=C?"Your Cash App payment is being confirmed...":"Converting to your destination token...";return jsxRuntime.jsx(reactNative.View,{style:Y.centeredFull,children:jsxRuntime.jsxs(reactNative.View,{style:Y.centeredContent,children:[jsxRuntime.jsx(St,{size:84,strokeWidth:4,iconSize:48,children:jsxRuntime.jsx(Ld,{size:48})}),jsxRuntime.jsx(reactNative.Text,{style:[Y.stateTitle,{color:c.foreground,fontFamily:p.semibold}],children:O}),jsxRuntime.jsx(reactNative.Text,{style:[Y.stateDescription,{color:c.foregroundMuted,fontFamily:p.regular}],children:N})]})})}function K(){if(!A)return nt();let C=A,O=["pending","waiting","delayed"].includes(C.status),N=Ke(C),$=oS(C.created_at);return jsxRuntime.jsxs(reactNative.View,{style:Y.flex,children:[jsxRuntime.jsxs(reactNative.ScrollView,{style:Y.flex,contentContainerStyle:Y.scrollContent,showsVerticalScrollIndicator:false,children:[jsxRuntime.jsxs(reactNative.View,{style:Y.tokenIconWrapper,children:[jsxRuntime.jsx(reactNative.View,{children:N?jsxRuntime.jsx(reactNative.Image,{source:{uri:N,cache:"force-cache"},style:Y.tokenIcon,resizeMode:"contain"}):jsxRuntime.jsx(reactNative.View,{style:[Y.tokenIconFallback,{backgroundColor:c.cardHover}],children:jsxRuntime.jsx(reactNative.Text,{style:[Y.tokenIconFallbackText,{color:c.foreground}],children:"$"})})}),jsxRuntime.jsx(reactNative.View,{style:[Y.statusBadge,{backgroundColor:O?c.warning:c.success}],children:jsxRuntime.jsx(reactNative.Text,{style:Y.statusBadgeText,children:O?"\u21BB":"\u2713"})})]}),jsxRuntime.jsxs(reactNative.View,{style:Y.statusRow,children:[jsxRuntime.jsx(reactNative.View,{style:[Y.statusDot,{backgroundColor:O?c.warning:c.success}]}),jsxRuntime.jsx(reactNative.Text,{style:[Y.statusText,{color:c.foreground,fontFamily:p.semibold}],children:O?"In Progress":"Completed"})]}),$?jsxRuntime.jsx(reactNative.Text,{style:[Y.dateText,{color:c.foregroundMuted,fontFamily:p.regular}],children:$}):null,jsxRuntime.jsxs(reactNative.View,{style:[Y.detailCard,{backgroundColor:c.card,borderColor:c.cardHover}],children:[je("Amount Sent",`$${lg(m)} USD`),je("Amount Received",`${Nt(C)} ${pe(C)}`),C.source_amount_usd?je("USD Value",`$${parseFloat(C.source_amount_usd).toFixed(2)}`):null,C.source_chain_id?je("Source Network",cg(C.source_chain_type??"",C.source_chain_id)):null,C.destination_chain_id?je("Destination Network",cg(C.destination_chain_type??"",C.destination_chain_id)):null]}),jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:Y.seeMoreRow,onPress:()=>{reactNative.LayoutAnimation.configureNext(reactNative.LayoutAnimation.Presets.easeInEaseOut),We(j=>!j);},activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[Y.seeMoreText,{color:c.foreground,fontFamily:p.medium}],children:Q?"See less":"See more details"}),jsxRuntime.jsx(reactNative.Text,{style:[Y.seeMoreChevron,{color:c.foregroundMuted}],children:Q?"\u25B2":"\u25BC"})]}),Q&&jsxRuntime.jsxs(reactNative.View,{style:Y.txHashSection,children:[C.explorer_url?Vt("Deposit Tx",dg(C.transaction_hash),C.explorer_url):null,!O&&C.destination_explorer_url&&C.destination_transaction_hashes?.[0]?Vt("Completion Tx",dg(C.destination_transaction_hashes[0]),C.destination_explorer_url):null]})]}),jsxRuntime.jsx(reactNative.View,{style:Y.bottomButtonContainer,children:jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[Y.continueButton,{backgroundColor:Hs,borderRadius:h.button.borderRadius}],onPress:Pe,activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[Y.continueButtonText,{color:"#fff",fontFamily:p.medium}],children:"Done"})})})]})}function ue(){return jsxRuntime.jsxs(reactNative.View,{style:Y.centeredFull,children:[jsxRuntime.jsxs(reactNative.View,{style:Y.centeredContent,children:[jsxRuntime.jsx(Ld,{size:56,faded:true}),jsxRuntime.jsx(reactNative.Text,{style:[Y.stateTitle,{color:c.foreground,fontFamily:p.semibold}],children:"Session expired"}),jsxRuntime.jsxs(reactNative.Text,{style:[Y.stateDescription,{color:c.foregroundMuted,fontFamily:p.regular}],children:["Your session has expired.",`
4
- `,"Start a new session to continue."]})]}),jsxRuntime.jsx(reactNative.View,{style:Y.bottomButtonContainer,children:jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[Y.continueButton,{backgroundColor:Hs,borderRadius:h.button.borderRadius}],onPress:Qe,activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[Y.continueButtonText,{color:"#fff",fontFamily:p.semibold}],children:"New Cash App session"})})})]})}function _(){return jsxRuntime.jsxs(reactNative.View,{style:Y.centeredFull,children:[jsxRuntime.jsxs(reactNative.View,{style:Y.centeredContent,children:[jsxRuntime.jsx(reactNative.View,{style:[Y.failedIconCircle,{backgroundColor:c.errorBackground}],children:jsxRuntime.jsx(reactNative.Text,{style:[Y.failedIconText,{color:c.error}],children:"\u2715"})}),jsxRuntime.jsx(reactNative.Text,{style:[Y.stateTitle,{color:c.foreground,fontFamily:p.semibold}],children:"Payment failed"}),jsxRuntime.jsx(reactNative.Text,{style:[Y.stateDescription,{color:c.foregroundMuted,fontFamily:p.regular}],children:"Something went wrong. Please try again."})]}),jsxRuntime.jsxs(reactNative.View,{style:Y.bottomButtonContainer,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[Y.continueButton,{backgroundColor:Hs,borderRadius:h.button.borderRadius}],onPress:Qe,activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[Y.continueButtonText,{color:"#fff",fontFamily:p.semibold}],children:"Try Again"})}),er()]})]})}return jsxRuntime.jsxs(reactNative.View,{style:[Y.root,{backgroundColor:c.background}],children:[jsxRuntime.jsx(Gr,{title:Le,showBack:xe,onBack:Ie,onClose:Pe}),T==="amountInput"&&et(),T==="waitingForPayment"&&be(),T==="paymentReceived"&&nt(),T==="depositComplete"&&K(),T==="softExpired"&&ue(),T==="failed"&&_()]})}var Y=reactNative.StyleSheet.create({root:{flex:1},flex:{flex:1},scrollContent:{paddingHorizontal:20,paddingBottom:16,alignItems:"center"},amountScrollContent:{paddingHorizontal:16,paddingBottom:16},amountSection:{alignItems:"center",marginBottom:16,paddingVertical:16,width:"100%"},amountRow:{flexDirection:"row",alignItems:"center",justifyContent:"center",height:70},amountDollar:{fontWeight:"400"},amountInput:{fontWeight:"400",minWidth:40,textAlign:"center"},amountError:{fontSize:14,marginTop:4},limitsSkeleton:{height:16,width:100,borderRadius:4,marginTop:6},limitsSubtitle:{fontSize:14,marginTop:4},quickAmountsRow:{flexDirection:"row",gap:12,width:"100%",marginBottom:16},quickAmountButton:{flex:1,alignItems:"center",paddingVertical:10,borderRadius:8},quickAmountText:{fontSize:14},errorBanner:{flexDirection:"row",alignItems:"center",gap:8,padding:12,borderRadius:8,width:"100%"},errorBannerIcon:{fontSize:16},errorBannerText:{fontSize:13,flex:1},bottomButtonContainer:{paddingHorizontal:16,paddingBottom:16,gap:8},continueButton:{flexDirection:"row",alignItems:"center",justifyContent:"center",paddingVertical:16,gap:8},continueButtonText:{fontSize:16},buttonSpinner:{marginRight:4},cashAppButtonIcon:{borderRadius:4,overflow:"hidden"},centeredFull:{flex:1,justifyContent:"space-between"},centeredContent:{flex:1,alignItems:"center",justifyContent:"center",paddingHorizontal:32,gap:16},stateTitle:{fontSize:20,textAlign:"center"},stateDescription:{fontSize:14,textAlign:"center",lineHeight:20},expiryText:{fontSize:13},failedIconCircle:{width:80,height:80,borderRadius:40,alignItems:"center",justifyContent:"center"},failedIconText:{fontSize:32,fontWeight:"bold"},tokenIconWrapper:{position:"relative",marginTop:8,marginBottom:8,alignSelf:"center"},tokenIcon:{width:72,height:72,borderRadius:36},tokenIconFallback:{width:72,height:72,borderRadius:36,alignItems:"center",justifyContent:"center"},tokenIconFallbackText:{fontSize:36},statusBadge:{position:"absolute",right:-4,bottom:-4,width:24,height:24,borderRadius:12,alignItems:"center",justifyContent:"center"},statusBadgeText:{color:"#fff",fontSize:12,fontWeight:"bold"},statusRow:{flexDirection:"row",alignItems:"center",gap:6,marginBottom:4},statusDot:{width:8,height:8,borderRadius:4},statusText:{fontSize:16},dateText:{fontSize:13,marginBottom:16},detailCard:{width:"100%",borderRadius:12,borderWidth:1,padding:16,gap:32,marginBottom:8},detailRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between"},detailLabel:{fontSize:14},detailValue:{fontSize:14},seeMoreRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",width:"100%",paddingVertical:8},seeMoreText:{fontSize:14},seeMoreChevron:{fontSize:12},txHashSection:{width:"100%",gap:8},txRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingVertical:14,borderRadius:12,borderWidth:1},txLabel:{fontSize:14},txRight:{flexDirection:"row",alignItems:"center",gap:6},txHash:{fontSize:13,fontFamily:reactNative.Platform.OS==="ios"?"Menlo":"monospace"},txArrow:{fontSize:14},poweredByRow:{flexDirection:"row",alignItems:"center",justifyContent:"center",paddingTop:4},poweredByText:{fontSize:12},poweredByBold:{fontSize:12}});var mg=5e3,hg=2500,gg=5e3,yg=6e4;function xn(e){let{depositConfirmationMode:t,enabled:r=true,depositAddress:o,chain:n,externalUserId:i,publishableKey:s,modalOpenedAt:a,depositWalletId:l,depositExecutions:c,trackedExecutions:p,setDepositExecutions:h,setTrackedExecutions:T,setLatestExecution:d,setShowStatusSheet:m,onDepositSuccess:b,onExecutionsChange:v,onDepositError:x}=e,[k,R]=Ss.useState(false),[w,I]=Ss.useState(false);return Ss.useEffect(()=>{if(!r||t!=="auto_ui"&&t!=="auto_silent"||!o)return;R(false),t==="auto_ui"&&I(false);let u=setTimeout(()=>{R(true),t==="auto_ui"&&I(true);},mg);return ()=>clearTimeout(u)},[r,t,o,n]),Ss.useEffect(()=>{if(!r||!i||!a)return;let u=new Date(a.getTime()-yg),S=setInterval(async()=>{try{let B=[...(await gn(i,s,"deposit")).data??[]].sort((V,A)=>{let M=V.created_at?new Date(V.created_at).getTime():0;return (A.created_at?new Date(A.created_at).getTime():0)-M}),D=null;for(let V of B){let A=V.created_at?new Date(V.created_at):null;if(!A||A<=u)continue;let M=p.get(V.id);if(!M){D=V;break}if(["pending","waiting","delayed"].includes(M)&&V.status==="succeeded"){D=V;break}}if(D){let V=D;h(A=>{let M=A.findIndex(Q=>Q.id===V.id);if(M>=0){let Q=[...A];return Q[M]=V,Q}return [...A,V]}),T(A=>{let M=new Map(A);return M.set(V.id,V.status),M}),d(V),m(!0),V.status==="succeeded"&&b?.({message:"Deposit completed successfully",executionId:V.id}),v?.([...c,V]);}}catch(y){x?.({message:"Failed to check deposit status",error:y});}},hg);return ()=>clearInterval(S)},[r,i,s,a,p,c,v,b,x]),Ss.useEffect(()=>{if(!r||!k||!l)return;let u=async()=>{try{await jc(l,s);}catch{}};u();let S=setInterval(u,gg);return ()=>clearInterval(S)},[r,k,l,s]),{pollingEnabled:k,showWaitingUi:w,handleIveDeposited:()=>{R(true),I(true);}}}function Cg({depositConfirmationMode:e,depositAddress:t,showWaitingUi:r,latestExecution:o,onIveDeposited:n}){return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(pc,{showWaitingUi:r,latestExecution:o}),jsxRuntime.jsx(tf,{depositConfirmationMode:e,depositAddress:t,showWaitingUi:r,onIveDeposited:n})]})}function pc({showWaitingUi:e,latestExecution:t}){let{colors:r,fonts:o}=L(),n=Ss.useRef(new reactNative.Animated.Value(0)).current;Ss.useEffect(()=>{if(e&&!t){n.setValue(0);let s=reactNative.Animated.loop(reactNative.Animated.timing(n,{toValue:1,duration:1500,easing:reactNative.Easing.linear,useNativeDriver:true}));return s.start(),()=>s.stop()}},[e,t,n]);let i=n.interpolate({inputRange:[0,1],outputRange:["0deg","360deg"]});return jsxRuntime.jsx(reactNative.View,{style:Wd.processingCard,children:e&&!t?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(reactNative.Animated.View,{style:{transform:[{rotate:i}]},children:jsxRuntime.jsx(xl,{size:16,color:r.primary,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:[Wd.processingCardTitle,{color:r.foregroundMuted,fontFamily:o.regular}],children:"Checking for deposit"})]}):null})}function tf({depositConfirmationMode:e,depositAddress:t,showWaitingUi:r,onIveDeposited:o}){let{colors:n,fonts:i,components:s}=L();return e!=="manual"||!t||r?null:jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:o,activeOpacity:.8,style:[Wd.iveDepositedButton,{backgroundColor:n.primary,borderRadius:s.button.borderRadius,borderWidth:s.button.borderWidth,borderColor:s.button.borderColor}],children:jsxRuntime.jsx(reactNative.Text,{style:[Wd.iveDepositedButtonText,{color:n.primaryForeground??"#FFF",fontFamily:i.semibold}],children:"I've made the deposit"})})}var Wd=reactNative.StyleSheet.create({iveDepositedButton:{paddingVertical:14,alignItems:"center",justifyContent:"center",marginBottom:12},iveDepositedButtonText:{fontSize:16},processingCard:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:8,marginBottom:24},processingCardTitle:{fontSize:14}});function Md(e){let t=e.icon_urls.find(o=>o.format==="png")?.url,r=e.icon_urls.find(o=>o.format==="svg")?.url;return ne(t||r||e.icon_url)}function uS(e){if(!e.supports_mobile_browse)return false;if(!e.mobile_browse_platforms)return true;let t=reactNative.Platform.OS==="ios"?"ios":"android";return e.mobile_browse_platforms.includes(t)}var zd=18,Ud=12,pS=2;function fS({uri:e,chainTypes:t,size:r=40}){let o=t.includes("ethereum"),n=t.includes("solana"),i=o&&n;return jsxRuntime.jsxs(reactNative.View,{style:{width:r+6,height:r+4},children:[jsxRuntime.jsx(xo,{uri:e,width:r,height:r,borderRadius:10}),i?jsxRuntime.jsxs(reactNative.View,{style:yi.cluster,children:[jsxRuntime.jsx(reactNative.View,{style:[yi.badge,yi.backBadge],children:jsxRuntime.jsx(ya,{size:Ud})}),jsxRuntime.jsx(reactNative.View,{style:[yi.badge,yi.frontBadge],children:jsxRuntime.jsx(ma,{size:Ud})})]}):o?jsxRuntime.jsx(reactNative.View,{style:[yi.badge,yi.singleBadge],children:jsxRuntime.jsx(ma,{size:Ud})}):n?jsxRuntime.jsx(reactNative.View,{style:[yi.badge,yi.singleBadge],children:jsxRuntime.jsx(ya,{size:Ud})}):null]})}var yi=reactNative.StyleSheet.create({badge:{width:zd,height:zd,borderRadius:zd/2,borderWidth:pS,borderColor:"#fff",alignItems:"center",justifyContent:"center",overflow:"hidden"},cluster:{position:"absolute",bottom:-2,right:-4,flexDirection:"row"},backBadge:{marginRight:-6.3,zIndex:0},frontBadge:{zIndex:1},singleBadge:{position:"absolute",bottom:-2,right:-4}});function Nd({externalUserId:e,publishableKey:t,recipientAddress:r,destinationChainType:o,destinationChainId:n,destinationTokenAddress:i,onBack:s,onClose:a,onDepositSuccess:l,onDepositError:c,onExecutionsChange:p,onLatestExecution:h,onShowStatusSheet:T}){let{colors:d,fonts:m,components:b}=L(),v=Ss.useRef(true);Ss.useEffect(()=>{reactNative.Platform.OS==="android"&&reactNative.UIManager.setLayoutAnimationEnabledExperimental&&reactNative.UIManager.setLayoutAnimationEnabledExperimental(true);},[]);let x=Ss.useRef(false),[k,R]=Ss.useState("selectWallet"),[w,I]=Ss.useState([]),[f,u]=Ss.useState(true),[S,y]=Ss.useState(null),[F,B]=Ss.useState(null),[D,V]=Ss.useState(null),[A,M]=Ss.useState(null),[Q,We]=Ss.useState(null),[q,Ue]=Ss.useState([]),[J,ie]=Ss.useState(false),[ee,Z]=Ss.useState(null),[ce,U]=Ss.useState([]),[Se,st]=Ss.useState(new Map),[Ee]=Ss.useState(()=>new Date),[de,He]=Ss.useState(null),[Ve,$e]=Ss.useState(false),[mt,Ne]=Ss.useState(null),[qe,Le]=Ss.useState(false);Ss.useEffect(()=>{if(k==="depositProcessing"||k==="depositComplete")return;if(k!=="waitingForDeposit"){Le(false);return}reactNative.AppState.currentState==="active"&&Le(true);let W=reactNative.AppState.addEventListener("change",E=>{E==="active"&&Le(true);});return ()=>W.remove()},[k]);let xe=k==="waitingForDeposit"&&qe||k==="depositProcessing",ve=A||D||F?.chain_types[0]||o||"ethereum",Xe=_o(q,ve),Qe=Xe?.address||"",at=Xe?.id??"",Xt=`${ve}:${n||""}`;Ss.useEffect(()=>(v.current=true,()=>{v.current=false;}),[]),Ss.useEffect(()=>{ct();},[t]),Ss.useEffect(()=>{de&&h?.(de);},[de]),Ss.useEffect(()=>{p?.(ce);},[ce]);let[Be,Re]=Ss.useState(false);Ss.useEffect(()=>{!Ve||!de||($e(false),de.status==="succeeded"?(R("depositComplete"),l?.({message:"Deposit completed successfully",executionId:de.id,transaction:de})):de.status==="failed"||de.status==="refunded"?(R("failed"),c?.({message:`Deposit ${de.status}`,code:de.status})):R("depositProcessing"));},[Ve,de]),Ss.useEffect(()=>{k!=="depositProcessing"||!de||(de.status==="succeeded"?(R("depositComplete"),l?.({message:"Deposit completed successfully",executionId:de.id,transaction:de})):(de.status==="failed"||de.status==="refunded")&&(R("failed"),c?.({message:`Deposit ${de.status}`,code:de.status})));},[de?.status]);let{showWaitingUi:rt}=xn({depositConfirmationMode:"auto_ui",enabled:xe,depositAddress:Qe,chain:Xt,externalUserId:e,publishableKey:t,modalOpenedAt:mt??Ee,depositWalletId:at,depositExecutions:ce,trackedExecutions:Se,setDepositExecutions:U,setTrackedExecutions:st,setLatestExecution:He,setShowStatusSheet:$e,onExecutionsChange:p,onDepositError:c});async function ct(){u(true),y(null);try{let W=await ep(t);if(!v.current)return;let E=W.data.filter(uS),tr=E.map(Md).filter(Boolean);if(tr.length>0&&await tc(tr),!v.current)return;I(E);}catch(W){if(!v.current)return;y(W instanceof Error?W.message:"Failed to load wallets");}finally{v.current&&u(false);}}function Oe(W){B(W),M(null),Z(null),W.chain_types.length>1?(V(null),R("selectNetwork")):Pe(W);}function Ie(W){V(W),F&&Pe(F,W);}async function Pe(W,E){if(x.current)return;x.current=true,ie(true),R("connecting");let tr=E||W.chain_types[0]||null;try{let Fe=await Uo({external_user_id:e,destination_chain_type:o||"ethereum",destination_chain_id:n,destination_token_address:i,recipient_address:r},t);if(!v.current)return;Ue(Fe.data);let Te=Fe.data.map(Ot=>({chain_type:Ot.chain_type,address:Ot.address})),dt=tr?Te.filter(Ot=>Ot.chain_type===tr):Te,ot=dt.length>0,Je=ot?dt:Te,Hr=ot?tr:Je[0]?.chain_type??tr;M(Hr??null);let ge=await tp(W.id,Je,t);if(!v.current)return;if(We(ge),ie(!1),!ge.supported||!ge.deeplink&&!ge.pay_url){Z(`${W.name} doesn't support in-app browser on this device`),R("failed");return}let xt=ge.deeplink||ge.pay_url;try{await reactNative.Linking.openURL(xt);}catch{if(!v.current)return;Z(`Could not open ${W.name}. Make sure it is installed.`),R("failed");return}if(!v.current)return;Ne(new Date),R("waitingForDeposit");}catch(Fe){if(!v.current)return;ie(false),Z(Fe instanceof Error?Fe.message:"Failed to connect wallet"),R("failed");}}function Ut(){if(!Q)return;let W=Q.deeplink||Q.pay_url;reactNative.Linking.openURL(W).catch(()=>{});}function Nt(){x.current=false,B(null),V(null),M(null),We(null),Ue([]),Ne(null),Z(null),ie(false),R("selectWallet");}function pe(){return f?jsxRuntime.jsx(reactNative.View,{style:gt.centeredContainer,children:jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"large",color:d.primary})}):S?jsxRuntime.jsxs(reactNative.View,{style:gt.centeredContainer,children:[jsxRuntime.jsx(Wi,{size:48,color:d.error,strokeWidth:1.5}),jsxRuntime.jsx(reactNative.Text,{style:[gt.errorTitle,{color:d.foreground,fontFamily:m.semibold}],children:"Failed to load wallets"}),jsxRuntime.jsx(reactNative.Text,{style:[gt.errorSubtitle,{color:d.foregroundMuted,fontFamily:m.regular}],children:S}),jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:ct,style:[gt.retryButton,{backgroundColor:d.primary}],activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[gt.retryButtonText,{color:d.primaryForeground??"#FFF",fontFamily:m.semibold}],children:"Retry"})})]}):w.length===0?jsxRuntime.jsxs(reactNative.View,{style:gt.centeredContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[gt.errorTitle,{color:d.foreground,fontFamily:m.semibold}],children:"No wallets available"}),jsxRuntime.jsx(reactNative.Text,{style:[gt.errorSubtitle,{color:d.foregroundMuted,fontFamily:m.regular}],children:"No supported wallets found for this device."})]}):jsxRuntime.jsxs(reactNative.ScrollView,{style:gt.walletList,contentContainerStyle:gt.walletListContent,showsVerticalScrollIndicator:false,children:[jsxRuntime.jsx(reactNative.Text,{style:[gt.pickerSubtitle,{color:d.foregroundMuted,fontFamily:m.regular}],children:"Select a wallet to deposit from"}),w.map(W=>jsxRuntime.jsxs(reactNative.TouchableOpacity,{onPress:()=>Oe(W),activeOpacity:.7,disabled:J,style:[gt.walletRow,{backgroundColor:b.card.backgroundColor,borderRadius:b.card.borderRadius,borderWidth:b.card.borderWidth,borderColor:b.card.borderColor,opacity:J?.5:1}],children:[jsxRuntime.jsx(fS,{uri:Md(W),chainTypes:W.chain_types}),jsxRuntime.jsxs(reactNative.View,{style:gt.walletTextContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[gt.walletName,{color:d.foreground,fontFamily:m.medium}],children:W.name}),jsxRuntime.jsx(reactNative.Text,{style:[gt.walletChains,{color:d.foregroundMuted,fontFamily:m.regular}],children:W.chain_types.map(E=>E.charAt(0).toUpperCase()+E.slice(1)).join(" \u2022 ")})]}),jsxRuntime.jsx(Wr,{size:16,color:d.foregroundMuted,strokeWidth:2})]},W.id))]})}function Ke(){if(!F)return null;let W=Md(F),E=Fe=>Fe==="n1"?"N1":Fe==="xrpl"?"XRPL":Fe.charAt(0).toUpperCase()+Fe.slice(1),tr=F.chain_types.map(Fe=>({id:Fe,name:E(Fe),Icon:Fe==="ethereum"?ma:ya}));return jsxRuntime.jsxs(reactNative.View,{style:gt.networkPickerContainer,children:[jsxRuntime.jsxs(reactNative.View,{style:gt.networkPickerHeader,children:[jsxRuntime.jsx(xo,{uri:W,width:48,height:48,borderRadius:12}),jsxRuntime.jsx(reactNative.Text,{style:[gt.statusTitle,{color:d.foreground,fontFamily:m.semibold,marginTop:12}],children:"Select Network"}),jsxRuntime.jsxs(reactNative.Text,{style:[gt.statusSubtitle,{color:d.foregroundMuted,fontFamily:m.regular}],children:["Choose which network to deposit from with ",F.name]})]}),jsxRuntime.jsx(reactNative.View,{style:gt.networkList,children:tr.map(({id:Fe,name:Te,Icon:dt})=>jsxRuntime.jsxs(reactNative.TouchableOpacity,{onPress:()=>Ie(Fe),activeOpacity:.7,disabled:J,style:[gt.networkRow,{backgroundColor:b.card.backgroundColor,borderRadius:b.card.borderRadius,borderWidth:b.card.borderWidth,borderColor:b.card.borderColor,opacity:J?.5:1}],children:[jsxRuntime.jsx(reactNative.View,{style:gt.networkIconContainer,children:jsxRuntime.jsx(dt,{size:32})}),jsxRuntime.jsx(reactNative.Text,{style:[gt.networkName,{color:d.foreground,fontFamily:m.medium}],children:Te}),jsxRuntime.jsx(Wr,{size:16,color:d.foregroundMuted,strokeWidth:2})]},Fe))})]})}function er(){return jsxRuntime.jsxs(reactNative.View,{style:gt.centeredContainer,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"large",color:d.primary}),jsxRuntime.jsxs(reactNative.Text,{style:[gt.statusTitle,{color:d.foreground,fontFamily:m.semibold}],children:["Opening ",F?.name??"wallet","\u2026"]}),jsxRuntime.jsx(reactNative.Text,{style:[gt.statusSubtitle,{color:d.foregroundMuted,fontFamily:m.regular}],children:"Preparing your deposit session"})]})}function je(){let W=F?.name??"your wallet",E=F?Md(F):null;return jsxRuntime.jsxs(reactNative.View,{style:gt.centeredContainer,children:[E?jsxRuntime.jsx(St,{size:80,children:jsxRuntime.jsx(xo,{uri:E,width:40,height:40,borderRadius:10})}):jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"large",color:d.primary}),jsxRuntime.jsxs(reactNative.Text,{style:[gt.statusTitle,{color:d.foreground,fontFamily:m.semibold}],children:["Continue in ",W]}),jsxRuntime.jsx(reactNative.Text,{style:[gt.statusSubtitle,{color:d.foregroundMuted,fontFamily:m.regular}],children:"Complete the deposit in your wallet app. Return here when you're done."}),jsxRuntime.jsxs(reactNative.TouchableOpacity,{onPress:Ut,activeOpacity:.8,style:[gt.primaryButton,{backgroundColor:d.primary,borderRadius:b.button.borderRadius,borderWidth:b.button.borderWidth,borderColor:b.button.borderColor}],children:[jsxRuntime.jsx(Xo,{size:16,color:d.primaryForeground??"#FFF",strokeWidth:2}),jsxRuntime.jsxs(reactNative.Text,{style:[gt.primaryButtonText,{color:d.primaryForeground??"#FFF",fontFamily:m.semibold}],children:["Open ",W]})]}),jsxRuntime.jsx(reactNative.View,{style:{marginTop:24,minHeight:44},children:jsxRuntime.jsx(pc,{showWaitingUi:rt,latestExecution:de})})]})}function Vt(W,E){let tr=parseFloat(W)/Math.pow(10,E);return tr===0?"0.00":tr>=1?tr.toFixed(2):parseFloat(tr.toPrecision(6)).toString()}function et(W,E){let tr={1:"Ethereum",137:"Polygon",42161:"Arbitrum",10:"Optimism",8453:"Base",56:"BSC",mainnet:"Solana"};return W==="n1"?"N1":W==="cardano"?"Cardano":tr[E]??`${W.charAt(0).toUpperCase()+W.slice(1)} (${E})`}function be(W){if(!W)return "";let E=W.indexOf(".");return E!==-1?W.slice(0,E).toUpperCase()+W.slice(E):W.toUpperCase()}function nt(W){return W.length<=12?W:`${W.slice(0,6)}...${W.slice(-4)}`}function K(W){if(!W)return "";try{return new Date(W).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0})}catch{return ""}}function ue(W){let E=W.destination_amount_base_unit;return E?Vt(E,W.destination_token_metadata?.decimals??6):"\u2014"}function _(W){let E=W.destination_token_metadata;return E?E.icon_urls?.length?Fn(E.icon_urls,"png")??E.icon_url??null:E.icon_url??null:null}function C(){if(!de)return null;let W=_(de);return jsxRuntime.jsx(reactNative.View,{style:tt.centeredFull,children:jsxRuntime.jsxs(reactNative.View,{style:tt.centeredContent,children:[jsxRuntime.jsx(St,{size:84,strokeWidth:4,iconSize:48,children:W?jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(W)},style:tt.loaderIcon,resizeMode:"contain"}):jsxRuntime.jsx(reactNative.View,{style:[tt.loaderIcon,{backgroundColor:d.cardHover}]})}),jsxRuntime.jsx(reactNative.Text,{style:[tt.stateTitle,{color:d.foreground,fontFamily:m.semibold}],children:"Deposit Processing"}),jsxRuntime.jsx(reactNative.Text,{style:[tt.stateDescription,{color:d.foregroundMuted,fontFamily:m.regular}],children:"This usually takes less than a minute."})]})})}function O(){if(!de)return C();let W=de,E=["pending","waiting","delayed"].includes(W.status),tr=_(W),Fe=K(W.created_at);return jsxRuntime.jsxs(reactNative.View,{style:tt.flex,children:[jsxRuntime.jsxs(reactNative.ScrollView,{style:tt.flex,contentContainerStyle:tt.scrollContent,showsVerticalScrollIndicator:false,children:[jsxRuntime.jsxs(reactNative.View,{style:tt.tokenIconWrapper,children:[tr?jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(tr)},style:tt.tokenIcon,resizeMode:"contain"}):jsxRuntime.jsx(reactNative.View,{style:[tt.tokenIcon,{backgroundColor:d.cardHover}]}),jsxRuntime.jsx(reactNative.View,{style:[tt.statusBadge,{backgroundColor:E?d.warning:b.container.iconBackgroundColor}],children:E?jsxRuntime.jsx(reactNative.Text,{style:tt.statusBadgeText,children:"\u21BB"}):jsxRuntime.jsx(ut,{size:14,color:b.container.iconColor,strokeWidth:3})})]}),jsxRuntime.jsxs(reactNative.View,{style:tt.statusRow,children:[jsxRuntime.jsx(reactNative.View,{style:[tt.statusDot,{backgroundColor:E?d.warning:d.success}]}),jsxRuntime.jsx(reactNative.Text,{style:[tt.statusText,{color:d.foreground,fontFamily:m.semibold}],children:E?"In Progress":"Completed"})]}),Fe?jsxRuntime.jsx(reactNative.Text,{style:[tt.dateText,{color:d.foregroundMuted,fontFamily:m.regular}],children:Fe}):null,jsxRuntime.jsxs(reactNative.View,{style:[tt.detailCard,{backgroundColor:d.card,borderColor:d.cardHover}],children:[W.source_amount_usd?jsxRuntime.jsxs(reactNative.View,{style:tt.detailRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[tt.detailLabel,{color:d.foregroundMuted,fontFamily:m.regular}],children:"Amount Sent"}),jsxRuntime.jsxs(reactNative.Text,{style:[tt.detailValue,{color:d.foreground,fontFamily:m.medium}],children:["$",parseFloat(W.source_amount_usd).toFixed(2)," USD"]})]}):null,jsxRuntime.jsxs(reactNative.View,{style:tt.detailRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[tt.detailLabel,{color:d.foregroundMuted,fontFamily:m.regular}],children:"Amount Received"}),jsxRuntime.jsxs(reactNative.Text,{style:[tt.detailValue,{color:d.foreground,fontFamily:m.medium}],children:[ue(W)," ",be(W.destination_currency)]})]}),W.source_chain_id?jsxRuntime.jsxs(reactNative.View,{style:tt.detailRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[tt.detailLabel,{color:d.foregroundMuted,fontFamily:m.regular}],children:"Source Network"}),jsxRuntime.jsx(reactNative.Text,{style:[tt.detailValue,{color:d.foreground,fontFamily:m.medium}],children:et(W.source_chain_type??"",W.source_chain_id)})]}):null,W.destination_chain_id?jsxRuntime.jsxs(reactNative.View,{style:tt.detailRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[tt.detailLabel,{color:d.foregroundMuted,fontFamily:m.regular}],children:"Destination Network"}),jsxRuntime.jsx(reactNative.Text,{style:[tt.detailValue,{color:d.foreground,fontFamily:m.medium}],children:et(W.destination_chain_type??"",W.destination_chain_id)})]}):null]}),jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:tt.seeMoreRow,onPress:()=>{reactNative.LayoutAnimation.configureNext(reactNative.LayoutAnimation.Presets.easeInEaseOut),Re(Te=>!Te);},activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[tt.seeMoreText,{color:d.foreground,fontFamily:m.medium}],children:Be?"See less":"See more details"}),jsxRuntime.jsx(reactNative.Text,{style:[tt.seeMoreChevron,{color:d.foregroundMuted}],children:Be?"\u25B2":"\u25BC"})]}),Be&&jsxRuntime.jsxs(reactNative.View,{style:tt.txHashSection,children:[W.explorer_url?jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[tt.txRow,{backgroundColor:d.card,borderColor:d.cardHover}],onPress:()=>reactNative.Linking.openURL(W.explorer_url),activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[tt.txLabel,{color:d.foreground,fontFamily:m.medium}],children:"Deposit Tx"}),jsxRuntime.jsxs(reactNative.View,{style:tt.txRight,children:[jsxRuntime.jsx(reactNative.Text,{style:[tt.txHash,{color:d.foregroundMuted}],children:nt(W.transaction_hash)}),jsxRuntime.jsx(reactNative.Text,{style:[tt.txArrow,{color:d.foregroundMuted}],children:"\u2197"})]})]}):null,!E&&W.destination_explorer_url&&W.destination_transaction_hashes?.[0]?jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[tt.txRow,{backgroundColor:d.card,borderColor:d.cardHover}],onPress:()=>reactNative.Linking.openURL(W.destination_explorer_url),activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[tt.txLabel,{color:d.foreground,fontFamily:m.medium}],children:"Completion Tx"}),jsxRuntime.jsxs(reactNative.View,{style:tt.txRight,children:[jsxRuntime.jsx(reactNative.Text,{style:[tt.txHash,{color:d.foregroundMuted}],children:nt(W.destination_transaction_hashes[0])}),jsxRuntime.jsx(reactNative.Text,{style:[tt.txArrow,{color:d.foregroundMuted}],children:"\u2197"})]})]}):null]})]}),jsxRuntime.jsx(reactNative.View,{style:tt.bottomButtonContainer,children:jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[gt.primaryButton,{backgroundColor:d.primary,borderRadius:b.button.borderRadius,borderWidth:b.button.borderWidth,borderColor:b.button.borderColor}],onPress:a,activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[gt.primaryButtonText,{color:d.primaryForeground??"#FFF",fontFamily:m.medium}],children:"Done"})})})]})}function N(){return jsxRuntime.jsxs(reactNative.View,{style:gt.centeredContainer,children:[jsxRuntime.jsx(Wi,{size:48,color:d.error,strokeWidth:1.5}),jsxRuntime.jsx(reactNative.Text,{style:[gt.statusTitle,{color:d.foreground,fontFamily:m.semibold}],children:ee||"Connection failed"}),jsxRuntime.jsx(reactNative.Text,{style:[gt.statusSubtitle,{color:d.foregroundMuted,fontFamily:m.regular}],children:"Please try again or use a different wallet."}),jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:Nt,activeOpacity:.8,style:[gt.primaryButton,{backgroundColor:d.primary,borderRadius:b.button.borderRadius,borderWidth:b.button.borderWidth,borderColor:b.button.borderColor}],children:jsxRuntime.jsx(reactNative.Text,{style:[gt.primaryButtonText,{color:d.primaryForeground??"#FFF",fontFamily:m.semibold}],children:"Try Again"})})]})}function $(){switch(k){case "selectWallet":return pe();case "selectNetwork":return Ke();case "connecting":return er();case "waitingForDeposit":return je();case "depositProcessing":return C();case "depositComplete":return O();case "failed":return N()}}let j=k==="selectWallet"||k==="selectNetwork"||k==="failed",fe=k==="selectNetwork"?F?.name??"Select Network":k==="depositProcessing"?"Deposit Processing":k==="depositComplete"?"Deposit Summary":"Connect Wallet";function Ge(){k==="selectNetwork"?(x.current=false,B(null),V(null),M(null),R("selectWallet")):s();}return jsxRuntime.jsxs(reactNative.View,{style:gt.container,children:[jsxRuntime.jsx(Gr,{title:fe,showBack:j,onBack:Ge,onClose:a}),$()]})}var gt=reactNative.StyleSheet.create({container:{flex:1},centeredContainer:{flex:1,alignItems:"center",justifyContent:"center",paddingHorizontal:24,gap:12},walletList:{flex:1},walletListContent:{paddingHorizontal:16,paddingTop:8,paddingBottom:24,gap:8},pickerSubtitle:{fontSize:14,textAlign:"center",marginBottom:8},walletRow:{flexDirection:"row",alignItems:"center",paddingVertical:14,paddingHorizontal:14,gap:12},walletTextContainer:{flex:1},walletName:{fontSize:15,marginBottom:2},walletChains:{fontSize:12},statusTitle:{fontSize:18,textAlign:"center",marginTop:4},statusSubtitle:{fontSize:14,textAlign:"center",maxWidth:280,lineHeight:20},errorTitle:{fontSize:18,textAlign:"center",marginTop:16},errorSubtitle:{fontSize:14,textAlign:"center",maxWidth:280,lineHeight:20},primaryButton:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:8,paddingVertical:14,paddingHorizontal:24,alignSelf:"stretch",marginTop:8},primaryButtonText:{fontSize:16},retryButton:{paddingVertical:12,paddingHorizontal:24,borderRadius:8,marginTop:8},retryButtonText:{fontSize:14},networkPickerContainer:{flex:1,paddingHorizontal:16,paddingTop:16},networkPickerHeader:{alignItems:"center",marginBottom:24},networkList:{gap:8},networkRow:{flexDirection:"row",alignItems:"center",paddingVertical:14,paddingHorizontal:14,gap:12},networkIconContainer:{width:40,height:40,alignItems:"center",justifyContent:"center"},networkName:{flex:1,fontSize:16}}),tt=reactNative.StyleSheet.create({flex:{flex:1},centeredFull:{flex:1,justifyContent:"space-between"},centeredContent:{flex:1,alignItems:"center",justifyContent:"center",paddingHorizontal:32,gap:16},stateTitle:{fontSize:20,textAlign:"center"},stateDescription:{fontSize:14,textAlign:"center",lineHeight:20},loaderIcon:{width:48,height:48,borderRadius:24},scrollContent:{paddingHorizontal:20,paddingBottom:16,alignItems:"center"},tokenIconWrapper:{position:"relative",marginTop:24,marginBottom:8,alignSelf:"center"},tokenIcon:{width:72,height:72,borderRadius:36},statusBadge:{position:"absolute",right:-4,bottom:-4,width:24,height:24,borderRadius:12,alignItems:"center",justifyContent:"center"},statusBadgeText:{color:"#fff",fontSize:12,fontWeight:"bold"},statusRow:{flexDirection:"row",alignItems:"center",gap:6,marginBottom:4},statusDot:{width:8,height:8,borderRadius:4},statusText:{fontSize:16},dateText:{fontSize:13,marginBottom:28},detailCard:{width:"100%",borderRadius:12,borderWidth:1,padding:16,gap:32,marginBottom:8},detailRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between"},detailLabel:{fontSize:14},detailValue:{fontSize:14},seeMoreRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",width:"100%",paddingVertical:8},seeMoreText:{fontSize:14},seeMoreChevron:{fontSize:12},txHashSection:{width:"100%",gap:8},txRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingVertical:14,borderRadius:12,borderWidth:1},txLabel:{fontSize:14},txRight:{flexDirection:"row",alignItems:"center",gap:6},txHash:{fontSize:13,fontFamily:reactNative.Platform.OS==="ios"?"Menlo":"monospace"},txArrow:{fontSize:14},bottomButtonContainer:{paddingHorizontal:16,paddingBottom:16,gap:8}});var Ci=7,bi=4,Ya=4;function wS(e,t,r){return e<Ci&&t<Ci||e<Ci&&t>=r-Ci||e>=r-Ci&&t<Ci}function us({value:e,size:t=180,logoUri:r,logoSize:o=40,logoBackgroundColor:n,badgeUri:i,badgeSize:s=20}){let{isDark:a}=L(),l=a?"#1a1a1a":"#ffffff",c=a?"#ffffff":"#000000",p=n||l,h=Ss.useMemo(()=>{try{return CS__default.default(e||"placeholder","H")}catch{return null}},[e]),T=h?h.length:0,d=T?(t-bi*2)/T:0,m=d*.38,b=o+12,v=b/2+4,x=t/2,k=t/2,R=T?[{x:bi,y:bi},{x:bi+(T-Ci)*d,y:bi},{x:bi,y:bi+(T-Ci)*d}]:[],w=Ci*d,I=5*d,f=d,u=3*d,S=2*d;return jsxRuntime.jsxs(reactNative.View,{style:[af.container,{width:t,height:t}],children:[jsxRuntime.jsxs(ir__default.default,{width:t,height:t,children:[jsxRuntime.jsx(ir.Rect,{x:0,y:0,width:t,height:t,fill:l}),h?.map((y,F)=>y.map((B,D)=>{if(!B||wS(F,D,T))return null;let V=bi+D*d+d/2,A=bi+F*d+d/2;if(r){let M=V-x,Q=A-k;if(Math.sqrt(M*M+Q*Q)<v)return null}return jsxRuntime.jsx(ir.Circle,{cx:V,cy:A,r:m,fill:c},`${F}-${D}`)})),R.map((y,F)=>jsxRuntime.jsxs(Ss__namespace.default.Fragment,{children:[jsxRuntime.jsx(ir.Rect,{x:y.x,y:y.y,width:w,height:w,rx:Ya,ry:Ya,fill:c}),jsxRuntime.jsx(ir.Rect,{x:y.x+f,y:y.y+f,width:I,height:I,rx:Ya-1,ry:Ya-1,fill:l}),jsxRuntime.jsx(ir.Rect,{x:y.x+S,y:y.y+S,width:u,height:u,rx:Ya-1.5,ry:Ya-1.5,fill:c})]},`finder-${F}`))]}),r&&jsxRuntime.jsxs(reactNative.View,{style:[af.logoContainer,{width:b,height:b,top:k-b/2,left:x-b/2,backgroundColor:p,borderRadius:b/2}],children:[jsxRuntime.jsx(xo,{uri:r,width:o,height:o,borderRadius:o/2}),i&&jsxRuntime.jsx(reactNative.View,{style:[af.badgeContainer,{width:s+4,height:s+4,borderRadius:(s+4)/2,backgroundColor:p}],children:jsxRuntime.jsx(xo,{uri:i,width:s,height:s,borderRadius:s/2})})]})]})}var af=reactNative.StyleSheet.create({container:{alignItems:"center",justifyContent:"center",position:"relative"},logoContainer:{position:"absolute",alignItems:"center",justifyContent:"center"},badgeContainer:{position:"absolute",bottom:-2,right:-2,alignItems:"center",justifyContent:"center"}});var vS=e=>e.length<=16?e:`${e.slice(0,8)}...${e.slice(-6)}`,Za=(e,t)=>`${t}:${e}`,RS=e=>{let[t,r]=e.split(":");return {chainType:t,chainId:r}};function qd({externalUserId:e,publishableKey:t,recipientAddress:r,destinationChainType:o,destinationChainId:n,destinationTokenAddress:i,destinationTokenSymbol:s,defaultChainType:a,defaultChainId:l,defaultTokenAddress:c,depositConfirmationMode:p="auto_ui",onExecutionsChange:h,onDepositSuccess:T,onDepositError:d,onLatestExecution:m,onShowStatusSheet:b,onSelectedTokenIconUrl:v,borderTopLeftRadius:x,borderTopRightRadius:k,sheetBorderRadius:R}){let{colors:w,fonts:I,components:f}=L(),u=a&&l?`${a}:${l}`:"solana:mainnet",[S,y]=Ss.useState("USDC"),[F,B]=Ss.useState(u),[D,V]=Ss.useState([]),[A,M]=Ss.useState(true),[Q,We]=Ss.useState([]),[q,Ue]=Ss.useState(true),[J,ie]=Ss.useState(false),[ee,Z]=Ss.useState(false),[ce,U]=Ss.useState(false),[Se,st]=Ss.useState(false),[Ee,de]=Ss.useState([]),[He,Ve]=Ss.useState(new Map),[$e]=Ss.useState(()=>new Date),[mt,Ne]=Ss.useState(null),[qe,Le]=Ss.useState(false),[xe,ve]=Ss.useState(null),[Xe,Qe]=Ss.useState(false);Ss.useEffect(()=>{xe&&m?.(xe);},[xe]),Ss.useEffect(()=>{qe&&(b?.(true),Le(false));},[qe]);let at=new Map;Q.forEach(_=>{_.chains.forEach(C=>{let O=`${C.chain_type}:${C.chain_id}`;at.has(O)||at.set(O,C);});});let Xt=Array.from(at.values()),Be=RS(F),rt=Xt.find(_=>_.chain_type===Be.chainType&&_.chain_id===Be.chainId)?.chain_type||"ethereum",ct=_o(D,rt),Oe=ct?.address||"",Ie=Ss.useRef(false);Ss.useEffect(()=>{async function _(){try{Ue(!0),Ne(null);let O=await si(t,i&&n&&o?{destination_token_address:i,destination_chain_id:n,destination_chain_type:o}:void 0);if(We(O.data),O.data.length>0&&!Ie.current){Ie.current=!0;let N,$;if(a&&l)if(c)for(let j of O.data){let fe=j.chains.find(Ge=>Ge.chain_type===a&&Ge.chain_id===l&&Ge.token_address.toLowerCase()===c.toLowerCase());if(fe){N=j,$=fe;break}}else {let j=Ge=>Ge.chain_type===a&&Ge.chain_id===l,fe=O.data.find(Ge=>Ge.symbol==="USDC"&&Ge.chains.some(j));if(fe)N=fe,$=fe.chains.find(j);else for(let Ge of O.data){let W=Ge.chains.find(j);if(W){N=Ge,$=W;break}}}if(!N&&i)for(let j of O.data){let fe=j.chains.find(Ge=>Ge.token_address.toLowerCase()===i.toLowerCase());if(fe){N=j,$=fe;break}}N||(N=O.data.find(j=>j.symbol==="USDC"),N&&N.chains.length>0&&($=N.chains[0])),N||(N=O.data.find(j=>j.symbol==="USDT"),N&&N.chains.length>0&&($=N.chains[0])),N||(N=O.data[0],N.chains.length>0&&($=N.chains[0])),N&&y(N.symbol),$&&B(Za($.chain_id,$.chain_type));}}catch(C){console.error("Error fetching supported tokens:",C),Ne("Failed to load supported tokens"),d?.({message:"Failed to load supported tokens",error:C});}finally{Ue(false);}}_();},[t,d,a,l,c,i,n,o]),Ss.useEffect(()=>{async function _(){try{M(!0),Ne(null);let C=await Uo({external_user_id:e,recipient_address:r,destination_chain_type:o,destination_chain_id:n,destination_token_address:i},t);V(C.data);}catch(C){console.error("Error fetching wallets:",C),Ne("Failed to load wallets"),d?.({message:"Failed to load wallets",error:C});}finally{M(false);}}_();},[e,r,o,n,i,t,d]);let Pe=ct?.id??"",{showWaitingUi:Ut,handleIveDeposited:Nt}=xn({depositConfirmationMode:p,depositAddress:Oe,chain:F,externalUserId:e,publishableKey:t,modalOpenedAt:$e,depositWalletId:Pe,depositExecutions:Ee,trackedExecutions:He,setDepositExecutions:de,setTrackedExecutions:Ve,setLatestExecution:ve,setShowStatusSheet:Le,onDepositSuccess:T,onExecutionsChange:h,onDepositError:d});Ss.useEffect(()=>{if(!Q.length)return;let _=Q.find(O=>O.symbol===S);if(!_||_.chains.length===0){let O=Q.find(N=>N.symbol==="USDC")||Q[0];O&&(y(O.symbol),O.chains.length>0&&B(Za(O.chains[0].chain_id,O.chains[0].chain_type)));return}if(!_.chains.some(O=>Za(O.chain_id,O.chain_type)===F)){let O=_.chains[0];B(Za(O.chain_id,O.chain_type));}},[S,Q,F]);let pe=Q.find(_=>_.symbol===S),Ke=Me(pe,"png")||void 0;Ss.useEffect(()=>{v?.(Ke);},[Ke]);let er=pe?.chains||[],je=er.find(_=>Za(_.chain_id,_.chain_type)===F),Vt=async()=>{if(Oe)try{reactNative.Clipboard.setString(Oe),ie(!0),setTimeout(()=>ie(!1),2e3);}catch(_){console.error("Failed to copy:",_);}},et=je?.estimated_price_impact_percent??0,be=je?.max_slippage_percent??.25,nt=je?.minimum_deposit_amount_usd??3;if(q)return jsxRuntime.jsxs(reactNative.View,{style:G.loadingContainer,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"large",color:w.primary}),jsxRuntime.jsx(reactNative.Text,{style:[G.loadingText,{color:w.foregroundMuted,fontFamily:I.regular}],children:"Loading currencies..."})]});if(mt&&Q.length===0)return jsxRuntime.jsxs(reactNative.View,{style:G.errorContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[G.errorText,{color:w.error,fontFamily:I.regular}],children:mt}),jsxRuntime.jsx(reactNative.Text,{style:[G.errorHint,{color:w.foregroundMuted,fontFamily:I.regular}],children:"Please check your network connection and try again."})]});let K=()=>jsxRuntime.jsxs(Et,{visible:ce,onClose:()=>U(false),closeOnBackdropPress:true,showHandle:true,heightPercent:.9,borderTopLeftRadius:R?.tokenSelector?.borderTopLeftRadius??x,borderTopRightRadius:R?.tokenSelector?.borderTopRightRadius??k,children:[jsxRuntime.jsxs(reactNative.View,{style:[G.sheetHeader,{borderBottomColor:w.border}],children:[jsxRuntime.jsx(reactNative.View,{style:G.sheetHeaderSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[G.sheetTitle,{color:f.header.titleColor,fontFamily:I.medium}],children:"Select Token"}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>U(false),style:G.sheetCloseButton,children:jsxRuntime.jsx(vt,{size:20,color:f.header.buttonColor,strokeWidth:2})})]}),jsxRuntime.jsx(Lt,{style:G.sheetList,contentContainerStyle:G.sheetListContent,showsVerticalScrollIndicator:false,children:Q.map(_=>jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{y(_.symbol),U(false);},activeOpacity:.7,style:[G.sheetItem,{backgroundColor:S===_.symbol?f.card.backgroundColor:"transparent"}],children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(_,"png"))},style:G.sheetItemIcon}),jsxRuntime.jsxs(reactNative.View,{style:G.sheetItemText,children:[jsxRuntime.jsx(reactNative.Text,{style:[G.sheetItemTitle,{color:f.card.titleColor,fontFamily:I.medium}],children:_.symbol}),jsxRuntime.jsxs(reactNative.Text,{style:[G.sheetItemSubtitle,{color:f.card.subtitleColor,fontFamily:I.regular}],children:[_.chains.length," network",_.chains.length!==1?"s":""," available"]})]}),S===_.symbol&&jsxRuntime.jsx(ut,{size:20,color:w.primary,strokeWidth:2})]},_.symbol))})]}),ue=()=>jsxRuntime.jsxs(Et,{visible:Se,onClose:()=>st(false),closeOnBackdropPress:true,showHandle:true,heightPercent:.9,borderTopLeftRadius:R?.chainSelector?.borderTopLeftRadius??x,borderTopRightRadius:R?.chainSelector?.borderTopRightRadius??k,children:[jsxRuntime.jsxs(reactNative.View,{style:[G.sheetHeader,{borderBottomColor:w.border}],children:[jsxRuntime.jsx(reactNative.View,{style:G.sheetHeaderSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[G.sheetTitle,{color:f.header.titleColor,fontFamily:I.medium}],children:"Select Network"}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>st(false),style:G.sheetCloseButton,children:jsxRuntime.jsx(vt,{size:20,color:f.header.buttonColor,strokeWidth:2})})]}),jsxRuntime.jsx(Lt,{style:G.sheetList,contentContainerStyle:G.sheetListContent,showsVerticalScrollIndicator:false,children:er.map(_=>{let C=Za(_.chain_id,_.chain_type),O=F===C;return jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{B(C),st(false);},activeOpacity:.7,style:[G.sheetItem,{backgroundColor:O?f.card.backgroundColor:"transparent"}],children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(_,"png"))},style:G.sheetItemIcon}),jsxRuntime.jsxs(reactNative.View,{style:G.sheetItemText,children:[jsxRuntime.jsx(reactNative.Text,{style:[G.sheetItemTitle,{color:f.card.titleColor,fontFamily:I.medium}],children:_.chain_name}),jsxRuntime.jsxs(reactNative.Text,{style:[G.sheetItemSubtitle,{fontFamily:I.regular}],children:[jsxRuntime.jsx(reactNative.Text,{style:{color:f.card.subtitleColor},children:"Minimum deposit: "}),jsxRuntime.jsxs(reactNative.Text,{style:{color:w.warning},children:["$",_.minimum_deposit_amount_usd]})]})]}),O&&jsxRuntime.jsx(ut,{size:20,color:w.primary,strokeWidth:2})]},C)})})]});return jsxRuntime.jsxs(reactNative.View,{style:G.container,children:[jsxRuntime.jsxs(reactNative.View,{style:G.selectorSection,children:[jsxRuntime.jsx(reactNative.Text,{style:[G.selectorLabel,{color:f.card.labelColor,fontFamily:I.regular}],children:"Token"}),jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>U(true),style:[G.selector,{backgroundColor:f.card.backgroundColor,borderRadius:f.card.borderRadius,borderWidth:f.card.borderWidth,borderColor:f.card.borderColor}],children:[pe&&jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(pe,"png"))},style:G.selectorIcon}),jsxRuntime.jsx(reactNative.Text,{style:[G.selectorText,{color:f.card.titleColor,fontFamily:I.medium}],children:S}),jsxRuntime.jsx(lr,{size:16,color:f.card.actionColor,strokeWidth:2})]})]}),jsxRuntime.jsxs(reactNative.View,{style:G.selectorSection,children:[jsxRuntime.jsxs(reactNative.Text,{style:[G.selectorLabel,{color:f.card.labelColor,fontFamily:I.regular}],children:["Network"," ",jsxRuntime.jsxs(reactNative.Text,{style:[G.minDeposit,{color:w.warning,fontFamily:I.regular}],children:["($",nt," minimum)"]})]}),jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>st(true),style:[G.selector,{backgroundColor:f.card.backgroundColor,borderRadius:f.card.borderRadius,borderWidth:f.card.borderWidth,borderColor:f.card.borderColor}],children:[je&&jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(je,"png"))},style:G.selectorIcon}),jsxRuntime.jsx(reactNative.Text,{style:[G.selectorText,{color:f.card.titleColor,fontFamily:I.medium}],numberOfLines:1,children:je?.chain_name||"Select network"}),jsxRuntime.jsx(lr,{size:16,color:f.card.actionColor,strokeWidth:2})]})]}),jsxRuntime.jsx(reactNative.Text,{style:[G.intentAddressLabel,{color:w.foregroundMuted,fontFamily:I.medium}],children:"Intent address"}),jsxRuntime.jsx(reactNative.View,{style:G.qrContainer,children:jsxRuntime.jsx(reactNative.View,{style:[G.qrWrapper,{backgroundColor:w.background,borderRadius:f.card.borderRadius,borderWidth:f.card.borderWidth>0?f.card.borderWidth:1,borderColor:f.card.borderColor}],children:A?jsxRuntime.jsxs(reactNative.View,{style:G.qrLoading,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"small",color:w.primary}),jsxRuntime.jsx(reactNative.Text,{style:[G.loadingText,{color:w.foregroundMuted,fontFamily:I.regular}],children:"Loading..."})]}):Oe?jsxRuntime.jsx(us,{value:Oe,size:160,logoUri:ne(Me(je,"png")||rr("/icons/networks/png/ethereum.png")),logoSize:40}):jsxRuntime.jsx(reactNative.View,{style:G.qrLoading,children:jsxRuntime.jsx(reactNative.Text,{style:[G.errorText,{color:w.error,fontFamily:I.regular}],children:"No address available"})})})}),jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:Vt,disabled:A||!Oe,style:G.addressRow,activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[G.addressTruncated,{color:w.foregroundMuted,fontFamily:I.regular}],numberOfLines:1,children:A?"Loading...":Oe?vS(Oe):"No address"}),J?jsxRuntime.jsx(ut,{size:16,color:w.success,strokeWidth:2}):jsxRuntime.jsx(fn,{size:16,color:w.foregroundMuted,strokeWidth:1.5})]}),jsxRuntime.jsx(pc,{showWaitingUi:Ut,latestExecution:xe}),jsxRuntime.jsxs(reactNative.View,{style:[G.detailsCard,{backgroundColor:f.card.backgroundColor,borderRadius:f.card.borderRadius,borderWidth:f.card.borderWidth,borderColor:f.card.borderColor}],children:[jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>Z(!ee),style:G.detailsHeader,children:[jsxRuntime.jsxs(reactNative.View,{style:G.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[G.detailIcon,{backgroundColor:f.card.iconBackgroundColor,borderRadius:f.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(go,{size:12,color:f.card.iconColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:[G.detailsLabel,{color:f.card.titleColor,fontFamily:I.regular}],children:"Processing time: < 1 min"})]}),jsxRuntime.jsx(reactNative.View,{style:G.chevronContainer,children:ee?jsxRuntime.jsx(Pn,{size:16,color:f.card.actionColor,strokeWidth:2}):jsxRuntime.jsx(lr,{size:16,color:f.card.actionColor,strokeWidth:2})})]}),ee&&jsxRuntime.jsxs(reactNative.View,{style:G.detailsContent,children:[jsxRuntime.jsxs(reactNative.View,{style:G.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[G.detailIcon,{backgroundColor:f.card.iconBackgroundColor,borderRadius:f.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(mn,{size:12,color:f.card.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[G.detailsLabel,{color:f.card.titleColor,fontFamily:I.regular}],children:["Price impact: ",et.toFixed(2),"%"]}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>Qe(true),hitSlop:{top:10,bottom:10,left:10,right:10},style:{marginLeft:-4},children:jsxRuntime.jsx(hn,{size:14,color:f.card.actionColor,strokeWidth:2})})]}),jsxRuntime.jsxs(reactNative.View,{style:G.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[G.detailIcon,{backgroundColor:f.card.iconBackgroundColor,borderRadius:f.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(To,{size:12,color:f.card.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[G.detailsLabel,{color:f.card.titleColor,fontFamily:I.regular}],children:["Slippage: Auto \u2022 ",be.toFixed(2),"%"]}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>Qe(true),hitSlop:{top:10,bottom:10,left:10,right:10},style:{marginLeft:-4},children:jsxRuntime.jsx(hn,{size:14,color:f.card.actionColor,strokeWidth:2})})]}),jsxRuntime.jsxs(reactNative.View,{style:G.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[G.detailIcon,{backgroundColor:f.card.iconBackgroundColor,borderRadius:f.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(da,{size:12,color:f.card.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[G.detailsLabel,{color:f.card.titleColor,fontFamily:I.regular}],children:["Need help?"," ",jsxRuntime.jsx(reactNative.Text,{style:{textDecorationLine:"underline"},children:"Contact support"})]})]}),jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>reactNative.Linking.openURL("https://unifold.io/terms"),style:G.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[G.detailIcon,{backgroundColor:f.card.iconBackgroundColor,borderRadius:f.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(hn,{size:12,color:f.card.iconColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:[G.detailsLabel,{color:w.primary,fontFamily:I.regular,textDecorationLine:"underline"}],children:"Terms apply"})]})]})]}),jsxRuntime.jsx(tf,{depositConfirmationMode:p,depositAddress:Oe,showWaitingUi:Ut,onIveDeposited:Nt}),K(),ue(),jsxRuntime.jsxs(Et,{visible:Xe,onClose:()=>Qe(false),closeOnBackdropPress:true,showHandle:true,heightPercent:.55,maxHeightPercent:.9,borderTopLeftRadius:R?.infoSheet?.borderTopLeftRadius??x,borderTopRightRadius:R?.infoSheet?.borderTopRightRadius??k,children:[jsxRuntime.jsxs(reactNative.View,{style:[G.sheetHeader,{borderBottomColor:w.border}],children:[jsxRuntime.jsx(reactNative.View,{style:G.sheetHeaderSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[G.sheetTitle,{color:f.header.titleColor,fontFamily:I.medium}],children:"Price Impact & Slippage"}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>Qe(false),style:G.sheetCloseButton,children:jsxRuntime.jsx(vt,{size:20,color:f.header.buttonColor,strokeWidth:2})})]}),jsxRuntime.jsxs(reactNative.View,{style:G.infoSheetContent,children:[jsxRuntime.jsxs(reactNative.View,{style:[G.infoCard,{backgroundColor:f.card.backgroundColor,borderRadius:f.card.borderRadius,borderWidth:f.card.borderWidth,borderColor:f.card.borderColor}],children:[jsxRuntime.jsxs(reactNative.View,{style:G.infoCardHeader,children:[jsxRuntime.jsx(reactNative.View,{style:[G.infoCardIcon,{backgroundColor:f.card.iconBackgroundColor,borderRadius:f.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(mn,{size:16,color:f.card.iconColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:[G.infoCardTitle,{color:f.card.titleColor,fontFamily:I.medium}],children:"Price Impact"}),jsxRuntime.jsxs(reactNative.Text,{style:[G.infoCardValue,{color:f.card.titleColor,fontFamily:I.medium}],children:[et.toFixed(2),"%"]})]}),jsxRuntime.jsx(reactNative.Text,{style:[G.infoCardDescription,{color:f.card.descriptionColor,fontFamily:I.regular}],children:"Price impact is the difference between the current market price and the price you'll receive for your swap. This occurs due to liquidity pool mechanics and trade size."})]}),jsxRuntime.jsxs(reactNative.View,{style:[G.infoCard,{backgroundColor:f.card.backgroundColor,borderRadius:f.card.borderRadius,borderWidth:f.card.borderWidth,borderColor:f.card.borderColor}],children:[jsxRuntime.jsxs(reactNative.View,{style:G.infoCardHeader,children:[jsxRuntime.jsx(reactNative.View,{style:[G.infoCardIcon,{backgroundColor:f.card.iconBackgroundColor,borderRadius:f.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(To,{size:16,color:f.card.iconColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:[G.infoCardTitle,{color:f.card.titleColor,fontFamily:I.medium}],children:"Max Slippage"}),jsxRuntime.jsxs(reactNative.Text,{style:[G.infoCardValue,{color:f.card.titleColor,fontFamily:I.medium}],children:[be.toFixed(2),"%"]})]}),jsxRuntime.jsx(reactNative.Text,{style:[G.infoCardDescription,{color:f.card.descriptionColor,fontFamily:I.regular}],children:"Max slippage is the maximum price difference you're willing to accept between when you submit a transaction and when it executes. Your transaction will revert if the price moves beyond this threshold."})]})]})]})]})}var G=reactNative.StyleSheet.create({container:{flex:1,padding:16},loadingContainer:{padding:40,alignItems:"center",gap:12},loadingText:{fontSize:14},errorContainer:{padding:40,alignItems:"center",gap:8},errorText:{fontSize:14,textAlign:"center"},errorHint:{fontSize:12,textAlign:"center"},selectorSection:{marginBottom:12},selectorLabel:{fontSize:13,marginBottom:8},minDeposit:{fontSize:10},selector:{flexDirection:"row",alignItems:"center",gap:10,padding:12,borderRadius:12},selectorIcon:{width:24,height:24,borderRadius:12},selectorText:{flex:1,fontSize:14,fontWeight:"500"},qrContainer:{alignItems:"center",marginVertical:16},qrWrapper:{padding:16},qrLoading:{width:160,height:160,alignItems:"center",justifyContent:"center"},intentAddressLabel:{fontSize:14,textAlign:"center",marginTop:8},addressRow:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:8,paddingVertical:8,marginBottom:16},addressTruncated:{fontSize:14},detailsCard:{borderRadius:8,padding:4,marginBottom:16},detailsHeader:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",paddingVertical:8,paddingLeft:8,paddingRight:8},detailsContent:{paddingRight:12,paddingLeft:8,paddingBottom:12,gap:10},detailsRow:{flexDirection:"row",alignItems:"center",gap:8},detailIcon:{width:24,height:24,borderRadius:12,alignItems:"center",justifyContent:"center"},detailsLabel:{fontSize:13},chevronContainer:{},spacer:{flex:1},sheetHeader:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",padding:16},sheetHeaderSpacer:{width:28},sheetTitle:{fontSize:16,fontWeight:"500",flex:1,textAlign:"center"},sheetCloseButton:{width:28,height:28,alignItems:"center",justifyContent:"center"},sheetList:{flex:1,paddingTop:8},sheetListContent:{paddingBottom:56},sheetItem:{flexDirection:"row",alignItems:"center",paddingVertical:12,paddingHorizontal:16,marginHorizontal:8,borderRadius:12,gap:12},sheetItemIcon:{width:40,height:40,borderRadius:20},sheetItemText:{flex:1},sheetItemTitle:{fontSize:16,fontWeight:"500"},sheetItemSubtitle:{fontSize:12,marginTop:2},infoSheetContent:{paddingHorizontal:16,paddingBottom:32,gap:16},infoCard:{borderRadius:12,padding:16,gap:12},infoCardHeader:{flexDirection:"row",alignItems:"center",gap:10},infoCardIcon:{width:32,height:32,borderRadius:16,alignItems:"center",justifyContent:"center"},infoCardTitle:{fontSize:15,fontWeight:"600",flex:1},infoCardValue:{fontSize:15,fontWeight:"600"},infoCardDescription:{fontSize:13,lineHeight:20}});function Qd({currency:e,isSelected:t,onSelect:r}){let{colors:o,fonts:n,components:i}=L();return jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>r(e.currency_code),activeOpacity:.7,style:[js.container,{backgroundColor:i.card.backgroundColor,borderRadius:i.list.rowBorderRadius,borderWidth:i.card.borderWidth,borderColor:i.card.borderColor}],children:[jsxRuntime.jsxs(reactNative.View,{style:js.leftContent,children:[jsxRuntime.jsx(reactNative.View,{style:[js.iconContainer,{backgroundColor:o.background}],children:jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(e,"png"))},style:js.icon})}),jsxRuntime.jsxs(reactNative.View,{style:js.textContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[js.name,{color:i.card.titleColor,fontFamily:n.medium}],children:e.name}),jsxRuntime.jsx(reactNative.Text,{style:[js.code,{color:i.card.subtitleColor,fontFamily:n.regular}],children:e.currency_code.toUpperCase()})]})]}),t&&jsxRuntime.jsx(ut,{size:16,color:o.primary,strokeWidth:2})]})}var js=reactNative.StyleSheet.create({container:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",padding:12,marginHorizontal:8,marginVertical:4},leftContent:{flexDirection:"row",alignItems:"center",gap:12},iconContainer:{width:40,height:40,borderRadius:20,overflow:"hidden",alignItems:"center",justifyContent:"center"},icon:{width:40,height:40,borderRadius:20},textContainer:{gap:2},name:{fontSize:14,fontWeight:"400"},code:{fontSize:12,fontWeight:"300"}});function mc({title:e,currencies:t,selectedCurrency:r,onSelect:o}){let{fonts:n,components:i}=L();return t.length===0?null:jsxRuntime.jsxs(reactNative.View,{children:[jsxRuntime.jsx(reactNative.View,{style:Dg.headerContainer,children:jsxRuntime.jsx(reactNative.Text,{style:[Dg.title,{color:i.list.titleSectionColor,fontFamily:n.medium}],children:e})}),t.map(s=>jsxRuntime.jsx(Qd,{currency:s,isSelected:r.toLowerCase()===s.currency_code.toLowerCase(),onSelect:o},s.currency_code))]})}var Dg=reactNative.StyleSheet.create({headerContainer:{paddingHorizontal:12,paddingBottom:8,paddingTop:4},title:{fontSize:14,fontWeight:"500"}});function Gd({open:e,onOpenChange:t,currencies:r,preferredCurrencyCodes:o,selectedCurrency:n,onSelectCurrency:i,borderTopLeftRadius:s,borderTopRightRadius:a}){let{colors:l,fonts:c,components:p}=L(),[h,T]=Ss.useState(""),d=o.map(w=>r.find(I=>I.currency_code.toLowerCase()===w.toLowerCase())).filter(w=>w!==void 0),m=r.filter(w=>!o.includes(w.currency_code.toLowerCase())),b=w=>{if(!h)return w;let I=h.toLowerCase();return w.filter(f=>f.name.toLowerCase().includes(I)||f.currency_code.toLowerCase().includes(I))},v=b(d),x=b(m),k=w=>{i(w),t(false),T("");},R=()=>{t(false),T("");};return jsxRuntime.jsxs(Et,{visible:e,onClose:R,closeOnBackdropPress:true,showHandle:true,heightPercent:.9,borderTopLeftRadius:s,borderTopRightRadius:a,children:[jsxRuntime.jsx(Gr,{title:"Currency",showBack:false,onClose:R}),jsxRuntime.jsx(reactNative.View,{style:$s.searchContainer,children:jsxRuntime.jsx(reactNative.TextInput,{style:[$s.searchInput,{backgroundColor:p.search.backgroundColor,color:p.search.inputColor,fontFamily:c.regular,borderRadius:p.input.borderRadius,borderWidth:p.input.borderWidth,borderColor:p.input.borderColor}],value:h,onChangeText:T,placeholder:"Search",placeholderTextColor:p.search.placeholderColor})}),jsxRuntime.jsx(Lt,{style:$s.listContainer,showsVerticalScrollIndicator:false,keyboardShouldPersistTaps:"handled",children:jsxRuntime.jsxs(reactNative.View,{style:$s.listContent,children:[jsxRuntime.jsx(mc,{title:"Popular currencies",currencies:v,selectedCurrency:n,onSelect:k}),v.length>0&&x.length>0&&jsxRuntime.jsx(reactNative.View,{style:$s.sectionSpacer}),jsxRuntime.jsx(mc,{title:"All currencies",currencies:x,selectedCurrency:n,onSelect:k}),v.length===0&&x.length===0&&jsxRuntime.jsx(reactNative.View,{style:$s.noResultsContainer,children:jsxRuntime.jsx(reactNative.Text,{style:[$s.noResultsText,{color:p.container.subtitleColor,fontFamily:c.regular}],children:"No currencies found"})})]})})]})}var $s=reactNative.StyleSheet.create({searchContainer:{marginTop:8,paddingHorizontal:18,paddingBottom:12},searchInput:{padding:16,fontSize:14},listContainer:{flex:1,paddingHorizontal:12},listContent:{paddingBottom:72},sectionSpacer:{height:8},noResultsContainer:{paddingVertical:32,alignItems:"center"},noResultsText:{fontSize:14}});function pf(e){try{return new Intl.NumberFormat("en",{style:"currency",currency:e.toUpperCase(),minimumFractionDigits:0,maximumFractionDigits:0}).format(0).replace(/\d/g,"").trim()}catch{return e.toUpperCase()}}function Zd({externalUserId:e,publishableKey:t,view:r,onViewChange:o,destinationTokenSymbol:n,recipientAddress:i,destinationChainType:s,destinationChainId:a,destinationTokenAddress:l,onDepositSuccess:c,onDepositError:p,onExecutionsChange:h,onLatestExecution:T,onShowStatusSheet:d,onSelectedTokenIconUrl:m,borderTopLeftRadius:b,borderTopRightRadius:v,sheetBorderRadius:x}){let{colors:k,fonts:R,components:w}=L(),[I,f]=Ss.useState(""),[u,S]=Ss.useState("usd"),[y,F]=Ss.useState(false),[B,D]=Ss.useState(false),[V,A]=Ss.useState([]),[M,Q]=Ss.useState(false),[We,q]=Ss.useState(null),[Ue,J]=Ss.useState(null),[ie,ee]=Ss.useState("amount"),[Z,ce]=Ss.useState(null),[U,Se]=Ss.useState(true),[st,Ee]=Ss.useState(null),[de,He]=Ss.useState(false),Ve=Ss.useRef(null),$e=Ss.useRef(false);Ss.useEffect(()=>{Ve.current=Z;},[Z]),Ss.useEffect(()=>{$e.current=de;},[de]);let[mt,Ne]=Ss.useState([]),[qe,Le]=Ss.useState(true),[xe,ve]=Ss.useState(60),[Xe,Qe]=Ss.useState([]),[at,Xt]=Ss.useState([]),[Be,Re]=Ss.useState(null),[rt,ct]=Ss.useState(null),[Oe,Ie]=Ss.useState(true),[Pe,Ut]=Ss.useState(null),[Nt,pe]=Ss.useState(false),[Ke,er]=Ss.useState(null),[je,Vt]=Ss.useState(false),[et,be]=Ss.useState(false),[nt,K]=Ss.useState(false),[ue,_]=Ss.useState(null),C=r??ie,O=Ss.useRef(null),N=Xe.find(ye=>ye.currency_code.toLowerCase()===u.toLowerCase()),$=Ss.useCallback(ye=>{ee(ye),ye==="quotes"?o?.(ye,V.length):o?.(ye);},[V.length,o]);Ss.useEffect(()=>{async function ye(){try{let Ze=await Ll();ct(Ze);}catch(Ze){console.error("Error fetching user IP:",Ze);}finally{Ie(false);}}ye();},[]),Ss.useEffect(()=>{async function ye(){try{let Ze=await Uo({external_user_id:e,recipient_address:i,destination_chain_type:s,destination_chain_id:a,destination_token_address:l},t);Ne(Ze.data);}catch(Ze){console.error("Error fetching wallets:",Ze),q("Failed to load wallet addresses");}finally{Le(false);}}ye();},[e,i,s,a,l,t]);let j=n||Be?.symbol.toUpperCase()||"USDC",fe=Fn(Be?.icon_urls,"png")||Be?.icon_url,Ge=Fn(Be?.chain_icon_urls,"png")||Be?.chain_icon_url,[W,E]=Ss.useState([]),[tr,Fe]=Ss.useState(new Map),[Te]=Ss.useState(()=>new Date),[dt,ot]=Ss.useState(null),[Je,Hr]=Ss.useState(false),[ge,xt]=Ss.useState(null);Ss.useEffect(()=>{C==="onramp"&&!ge&&xt(new Date);},[C,ge]);let Ot=Pe?.destination_token_metadata?.chain_type||s||"ethereum",Ar=Pe?.destination_token_metadata?.chain_id||a||"",eo=`${Ot}:${Ar}`,Io=_o(mt,Ot),xs=Io?.address||"",Dc=Io?.id??"";Ss.useEffect(()=>{dt&&T?.(dt);},[dt]),Ss.useEffect(()=>{Je&&(d?.(true),Hr(false));},[Je]),Ss.useEffect(()=>{m?.(fe||void 0);},[fe]),Ss.useEffect(()=>{h?.(W);},[W]),xn({depositConfirmationMode:"auto_silent",enabled:C==="onramp",depositAddress:xs,chain:eo,externalUserId:e,publishableKey:t,modalOpenedAt:ge??Te,depositWalletId:Dc,depositExecutions:W,trackedExecutions:tr,setDepositExecutions:E,setTrackedExecutions:Fe,setLatestExecution:ot,setShowStatusSheet:Hr,onDepositSuccess:c,onExecutionsChange:h,onDepositError:p}),Ss.useEffect(()=>{async function ye(){try{let Ze=await Vl(t);Qe(Ze.data),Xt(Ze.preferred||[]);}catch(Ze){console.error("Error fetching fiat currencies:",Ze);}}ye();},[t]),Ss.useEffect(()=>{if(y||Xe.length===0||!rt?.alpha2)return;let ye=rt.alpha2.toUpperCase(),Ze=Xe.find(kr=>kr.country_codes.includes(ye));if(Ze)S(Ze.currency_code.toLowerCase()),!I&&!B&&f(String(Ze.default_amount??100));else if(!I&&!B){let kr=Xe.find(_n=>_n.currency_code.toLowerCase()==="usd");kr&&f(String(kr.default_amount??100));}},[Xe,rt,y,I,B]),Ss.useEffect(()=>{if(Xe.length!==0){if(O.current!==null&&O.current!==u){let ye=Xe.find(Ze=>Ze.currency_code.toLowerCase()===u.toLowerCase());ye&&f(String(ye.default_amount??100));}O.current=u;}},[u,Xe]),Ss.useEffect(()=>{async function ye(){try{let Ze=await ju({chain_type:s||"",chain_id:a||"",token_address:l||""},t);Re(Ze);}catch(Ze){console.error("Error fetching supported tokens:",Ze);}}ye();},[s,a,l,t]),Ss.useEffect(()=>{async function ye(){if(!(!l||!a||!s)&&!Oe){pe(true);try{let Ze=await Qu({country_code:rt?.alpha2?.toUpperCase()||"US",subdivision_code:rt?.state||void 0,token_address:l,chain_id:a,chain_type:s},t);Ut(Ze);}catch(Ze){console.error("Error fetching default onramp token:",Ze);}finally{pe(false);}}}ye();},[l,a,s,rt,Oe,t]),Ss.useEffect(()=>{let ye=parseFloat(I);if(isNaN(ye)||ye<=0){A([]),J(null);return}if(!Pe||Nt){A([]),ce(null);return}let Ze=Xe.find(_n=>_n.currency_code.toLowerCase()===u.toLowerCase());if(Ze){if(ye<Ze.minimum_amount){A([]),ce(null),J(`Minimum amount is ${pf(u)}${Ze.minimum_amount.toLocaleString()}`);return}if(ye>Ze.maximum_amount){A([]),ce(null),J(`Maximum amount is ${pf(u)}${Ze.maximum_amount.toLocaleString()}`);return}}J(null);let kr=setTimeout(()=>{vs(ye);},500);return ()=>clearTimeout(kr)},[I,u,t,Pe,Nt,Xe]);let vs=async ye=>{if(!Pe){q("Loading token information...");return}Q(true),q(null);try{let Ze={country_code:rt?.alpha2?.toUpperCase()||"US",source_amount:ye.toString(),source_currency:u.toLowerCase(),destination_currency:Pe.destination_currency,destination_network:Pe.destination_network,subdivision_code:rt?.state||void 0},kr=await $u(Ze,t);A(kr.data);let _n=$e.current,Oc=Ve.current;if(_n&&Oc){let Bi=kr.data.find(P=>P.service_provider===Oc.service_provider);if(Bi){if(ce(Bi),kr.data.length>0){let P=kr.data[0];st||Ee(P.service_provider),Se(Bi.service_provider===st);}}else if(kr.data.length>0){let P=kr.data[0];ce(P),Ee(P.service_provider),Se(!0),He(!1);}}else if(kr.data.length>0){let Bi=kr.data[0];ce(Bi),Ee(Bi.service_provider),Se(!0);}ve(60);}catch(Ze){console.error("Failed to fetch quotes:",Ze),q("Failed to fetch quotes. Please try again."),A([]);}finally{Q(false);}};Ss.useEffect(()=>{if(V.length===0)return;let ye=setInterval(()=>{ve(Ze=>{if(Ze<=1){let kr=parseFloat(I);return !isNaN(kr)&&kr>0&&vs(kr),60}return Ze-1});},1e3);return ()=>clearInterval(ye)},[V.length,I]);let Vc=ye=>{(/^\d*\.?\d{0,2}$/.test(ye)||ye==="")&&(f(ye),D(true));},sa=ye=>{f(ye.toString()),D(true);},Du=async()=>{if(Z&&Pe)try{let ye=Pe.destination_token_metadata.chain_type,Ze=_o(mt,ye);if(!Ze?.address){q("Wallet address not available");return}let kr={service_provider:Z.service_provider,country_code:Z.country_code?.toUpperCase()||rt?.alpha2?.toUpperCase()||"US",source_currency:Z.source_currency,source_amount:I,destination_currency:Z.destination_currency,destination_network:Z.destination_network,wallet_address:Ze.address,subdivision_code:rt?.state||void 0},_n=await qu(kr,t);er({provider:Z,sourceCurrency:u,sourceAmount:I,sessionUrl:_n.url}),_(_n.url),K(!0);}catch(ye){console.error("Failed to create session:",ye),q("Failed to start payment flow"),p?.({message:"Failed to start payment flow",error:ye});}},Li=pf(u),wl=()=>{K(false),$("onramp"),c?.({message:"Payment flow completed"});},Vu=()=>jsxRuntime.jsx(zS,{visible:nt,onClose:wl,url:ue,providerName:Z?.service_provider_display_name||"Complete Payment",colors:k,fonts:R,borderTopLeftRadius:x?.webView?.borderTopLeftRadius??b,borderTopRightRadius:x?.webView?.borderTopRightRadius??v});return C==="amount"?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(reactNative.View,{style:ae.amountViewContainer,children:[jsxRuntime.jsxs(Lt,{style:ae.scrollContainer,contentContainerStyle:ae.scrollContent,showsVerticalScrollIndicator:false,keyboardShouldPersistTaps:"handled",bounces:false,children:[jsxRuntime.jsx(reactNative.View,{style:ae.currencySelector,children:jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>Vt(true),style:[ae.currencyButton,{backgroundColor:w.card.backgroundColor,borderRadius:w.input.borderRadius,borderWidth:w.input.borderWidth,borderColor:w.input.borderColor}],children:[N&&jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(N,"png"))},style:ae.currencyIcon}),jsxRuntime.jsx(reactNative.Text,{style:[ae.currencyText,{color:w.card.titleColor,fontFamily:R.medium}],children:u.toUpperCase()}),jsxRuntime.jsx(lr,{size:16,color:w.card.actionColor,strokeWidth:2})]})}),jsxRuntime.jsx(Gd,{open:je,onOpenChange:Vt,currencies:Xe,preferredCurrencyCodes:at,selectedCurrency:u,onSelectCurrency:ye=>{S(ye.toLowerCase()),F(true);},borderTopLeftRadius:x?.currencyModal?.borderTopLeftRadius??b,borderTopRightRadius:x?.currencyModal?.borderTopRightRadius??v}),jsxRuntime.jsx(reactNative.View,{style:ae.amountContainer,children:jsxRuntime.jsxs(reactNative.View,{style:ae.amountInputRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[ae.currencySymbol,{color:w.container.titleColor,fontFamily:R.medium}],children:Li}),jsxRuntime.jsx(reactNative.TextInput,{style:[ae.amountInput,{color:w.container.titleColor,fontFamily:R.medium}],value:I,onChangeText:Vc,keyboardType:"decimal-pad",placeholder:"0",placeholderTextColor:k.foregroundMuted})]})}),N?.suggested_amounts&&N.suggested_amounts.length>0&&jsxRuntime.jsx(reactNative.View,{style:ae.quickAmounts,children:N.suggested_amounts.map(ye=>jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>sa(ye),style:[ae.quickAmountButton,{backgroundColor:w.card.backgroundColor,borderRadius:w.button.borderRadius,borderWidth:parseFloat(I)===ye?2:w.button.borderWidth,borderColor:parseFloat(I)===ye?k.primary:w.button.borderColor}],children:jsxRuntime.jsxs(reactNative.Text,{style:[ae.quickAmountText,{color:w.card.titleColor,fontFamily:R.medium}],children:[Li,ye.toLocaleString()]})},ye))}),Ue&&jsxRuntime.jsx(reactNative.Text,{style:[ae.validationError,{color:k.error,fontFamily:R.regular}],children:Ue}),jsxRuntime.jsxs(reactNative.View,{style:ae.providerSection,children:[jsxRuntime.jsxs(reactNative.View,{style:ae.providerHeader,children:[jsxRuntime.jsx(reactNative.Text,{style:[ae.providerLabel,{color:w.card.labelColor,fontFamily:R.medium}],children:"Provider"}),V.length>0&&!M&&jsxRuntime.jsxs(reactNative.Text,{style:[ae.refreshText,{color:w.card.labelRightColor,fontFamily:R.regular}],children:["Refreshing in ",xe,"s"]})]}),jsxRuntime.jsx(Or,{cardTokens:w.depositCard.quoteProvider.card,onPress:M||V.length===0?void 0:()=>be(true),contentStyle:reactNative.StyleSheet.flatten([ae.providerButton,(M||V.length===0)&&ae.disabled]),children:M?jsxRuntime.jsxs(reactNative.View,{style:ae.providerLoading,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"small",color:k.primary}),jsxRuntime.jsx(reactNative.Text,{style:[ae.loadingText,{color:w.container.subtitleColor,fontFamily:R.regular}],children:"Finding best rates..."})]}):Z?jsxRuntime.jsxs(reactNative.View,{style:ae.providerContent,children:[jsxRuntime.jsxs(reactNative.View,{style:ae.providerInfo,children:[U&&jsxRuntime.jsx(reactNative.Text,{style:[ae.autoPickedText,{color:w.container.subtitleColor,fontFamily:R.regular}],children:"Auto-picked for you"}),jsxRuntime.jsxs(reactNative.View,{style:ae.providerRow,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ne($c(Z.icon_urls,"png",Z.icon_url))},style:ae.providerIconImage},`provider-${Z.service_provider}`),jsxRuntime.jsxs(reactNative.View,{children:[jsxRuntime.jsx(reactNative.Text,{style:[ae.providerName,{color:w.card.titleColor,fontFamily:R.medium}],children:Z.service_provider_display_name}),jsxRuntime.jsxs(reactNative.Text,{style:[ae.bestPriceText,{color:w.container.subtitleColor,fontFamily:R.regular}],children:[Z.destination_amount.toFixed(2)," ",j]})]})]})]}),jsxRuntime.jsx(Wr,{size:20,color:w.card.actionColor,strokeWidth:2})]}):jsxRuntime.jsx(reactNative.Text,{style:[ae.noProviderText,{color:w.container.subtitleColor,fontFamily:R.regular}],children:parseFloat(I)>0?"No providers available":"Enter an amount to see providers"})}),We&&jsxRuntime.jsx(reactNative.Text,{style:[ae.errorText,{color:k.error,fontFamily:R.regular}],children:We})]}),jsxRuntime.jsxs(Et,{visible:et,onClose:()=>be(false),closeOnBackdropPress:true,showHandle:true,heightPercent:.9,borderTopLeftRadius:x?.providerModal?.borderTopLeftRadius??b,borderTopRightRadius:x?.providerModal?.borderTopRightRadius??v,children:[jsxRuntime.jsx(Gr,{title:"Select Provider",showBack:false,onClose:()=>be(false)}),jsxRuntime.jsx(Lt,{style:ae.providerModalList,contentContainerStyle:ae.providerModalListContent,showsVerticalScrollIndicator:false,children:jsxRuntime.jsx(reactNative.View,{style:ae.quotesList,children:V.map(ye=>{let Ze=Z?.service_provider===ye.service_provider;return jsxRuntime.jsxs(Or,{cardTokens:w.depositCard.quoteProvider.card,onPress:()=>{ce(ye),He(true),Se(ye.service_provider===st),be(false);},contentStyle:reactNative.StyleSheet.flatten([ae.quoteItem,Ze&&{borderWidth:2,borderColor:k.primary}]),children:[jsxRuntime.jsxs(reactNative.View,{style:ae.quoteLeft,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ne($c(ye.icon_urls,"png",ye.icon_url))},style:ae.providerIconImage}),jsxRuntime.jsx(reactNative.View,{children:jsxRuntime.jsx(reactNative.Text,{style:[ae.quoteName,{color:w.card.titleColor,fontFamily:R.medium}],children:ye.service_provider_display_name})})]}),jsxRuntime.jsxs(reactNative.View,{style:ae.quoteRight,children:[jsxRuntime.jsxs(reactNative.Text,{style:[ae.quoteAmount,{color:w.card.textRightColor,fontFamily:R.medium}],children:[ye.destination_amount.toFixed(2)," ",j]}),jsxRuntime.jsxs(reactNative.Text,{style:[ae.quoteSource,{color:w.card.subtextRightColor,fontFamily:R.regular}],children:["Fee: ",Li,ye.total_fee.toFixed(2)]})]})]},ye.service_provider)})})})]})]}),jsxRuntime.jsx(reactNative.View,{style:[ae.continueButtonContainer,{backgroundColor:k.background}],children:jsxRuntime.jsx(reactNative.View,{style:{opacity:M||qe||!Z||parseFloat(I)<=0?.5:1},children:jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:Du,disabled:M||qe||!Z||parseFloat(I)<=0,style:[ae.continueButton,{backgroundColor:w.container.buttonColor,borderRadius:w.button.borderRadius,borderWidth:w.button.borderWidth,borderColor:w.button.borderColor}],children:jsxRuntime.jsx(reactNative.Text,{style:[ae.continueButtonText,{color:w.container.buttonTitleColor,fontFamily:R.medium}],children:qe?"Loading...":"Continue"})})})})]}),Vu()]}):C==="onramp"&&Ke?jsxRuntime.jsxs(reactNative.View,{style:ae.onrampContainer,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ne($c(Ke.provider.icon_urls,"png",Ke.provider.icon_url))},style:ae.onrampProviderIcon}),jsxRuntime.jsxs(reactNative.Text,{style:[ae.onrampTitle,{color:w.container.titleColor,fontFamily:R.medium}],children:["Complete transaction with ",Ke.provider.service_provider_display_name]}),jsxRuntime.jsx(reactNative.Text,{style:[ae.onrampSubtitle,{color:w.container.subtitleColor,fontFamily:R.regular}],children:"You can close this modal."}),jsxRuntime.jsxs(reactNative.View,{style:[ae.flowDiagram,{backgroundColor:w.card.backgroundColor}],children:[jsxRuntime.jsxs(reactNative.View,{style:ae.flowStep,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:rr(`/icons/currencies/png/${Ke.sourceCurrency.toLowerCase()}.png`)},style:ae.flowIconImage}),jsxRuntime.jsx(reactNative.Text,{style:[ae.flowLabel,{color:w.card.subtitleColor,fontFamily:R.regular}],children:"You use"}),jsxRuntime.jsx(reactNative.Text,{style:[ae.flowValue,{color:w.card.titleColor,fontFamily:R.medium}],children:Ke.sourceCurrency.toUpperCase()})]}),jsxRuntime.jsx(Wr,{size:16,color:w.card.actionColor,strokeWidth:2}),jsxRuntime.jsxs(reactNative.View,{style:ae.flowStep,children:[jsxRuntime.jsxs(reactNative.View,{style:ae.flowIconWithBadge,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:Fn(Pe?.destination_token_metadata?.icon_urls,"png")||Pe?.destination_token_metadata?.icon_url||rr("/icons/tokens/png/usdc.png")},style:ae.flowIconImageNoBadge}),jsxRuntime.jsx(reactNative.Image,{source:{uri:Fn(Pe?.destination_token_metadata?.chain?.icon_urls,"png")||Pe?.destination_token_metadata?.chain?.icon_url||rr("/icons/networks/png/polygon.png")},style:[ae.flowNetworkBadge,{borderColor:k.background,borderRadius:w.badge.borderRadius}]})]}),jsxRuntime.jsx(reactNative.Text,{style:[ae.flowLabel,{color:w.card.subtitleColor,fontFamily:R.regular}],children:"You buy"}),jsxRuntime.jsx(reactNative.Text,{style:[ae.flowValue,{color:w.card.titleColor,fontFamily:R.medium}],children:"USDC"})]}),jsxRuntime.jsx(Wr,{size:16,color:w.card.actionColor,strokeWidth:2}),jsxRuntime.jsxs(reactNative.View,{style:ae.flowStep,children:[jsxRuntime.jsxs(reactNative.View,{style:ae.flowIconWithBadge,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:fe||rr("/icons/tokens/png/usdc.png")},style:ae.flowIconImageNoBadge}),jsxRuntime.jsx(reactNative.Image,{source:{uri:Ge||rr("/icons/networks/png/polygon.png")},style:[ae.flowNetworkBadge,{borderColor:k.background,borderRadius:w.badge.borderRadius}]})]}),jsxRuntime.jsx(reactNative.Text,{style:[ae.flowLabel,{color:w.card.subtitleColor,fontFamily:R.regular}],children:"You receive"}),jsxRuntime.jsx(reactNative.Text,{style:[ae.flowValue,{color:w.card.titleColor,fontFamily:R.medium}],children:j})]})]}),jsxRuntime.jsx(reactNative.View,{style:[ae.onrampInfoBox,{backgroundColor:w.card.backgroundColor,borderRadius:w.card.borderRadius,borderWidth:w.card.borderWidth,borderColor:w.card.borderColor}],children:jsxRuntime.jsx(reactNative.Text,{style:[ae.onrampInfoText,{color:w.card.descriptionColor,fontFamily:R.regular}],children:"The wallet address displayed in the payment provider is a temporary deposit address. Your funds will be automatically converted and deposited into your account."})})]}):null}function zS({visible:e,onClose:t,url:r,providerName:o,colors:n,fonts:i,borderTopLeftRadius:s,borderTopRightRadius:a}){return jsxRuntime.jsxs(Et,{visible:e,onClose:t,closeOnBackdropPress:false,enablePanDownToClose:false,showHandle:false,heightPercent:.92,noPadding:true,borderTopLeftRadius:s,borderTopRightRadius:a,children:[jsxRuntime.jsxs(reactNative.View,{style:qs.header,children:[jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:t,style:qs.headerButton,hitSlop:{top:10,bottom:10,left:10,right:10},children:jsxRuntime.jsx(ut,{size:20,color:n.foregroundMuted,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:[qs.headerTitle,{color:n.foreground,fontFamily:i.medium}],children:o}),jsxRuntime.jsx(reactNative.View,{style:qs.headerSpacer})]}),r&&jsxRuntime.jsx(reactNative.View,{style:qs.container,children:jsxRuntime.jsx(reactNativeWebview.WebView,{source:{uri:r},style:qs.webView,startInLoadingState:true,renderLoading:()=>jsxRuntime.jsx(reactNative.View,{style:qs.loading,children:jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"large",color:n.primary})})})})]})}var qs=reactNative.StyleSheet.create({header:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingTop:16,paddingBottom:8},headerButton:{width:28,height:28,alignItems:"center",justifyContent:"center"},headerTitle:{fontSize:16,fontWeight:"500",flex:1,textAlign:"center"},headerSpacer:{width:28,height:28},container:{flex:1},webView:{flex:1},loading:{position:"absolute",top:0,left:0,right:0,bottom:0,alignItems:"center",justifyContent:"center"}}),ae=reactNative.StyleSheet.create({amountViewContainer:{flex:1},scrollContainer:{flex:1},scrollContent:{padding:16,paddingBottom:16},currencySelector:{alignItems:"center",marginBottom:16},currencyButton:{flexDirection:"row",alignItems:"center",gap:6,paddingHorizontal:12,paddingVertical:8},currencyText:{fontSize:14,fontWeight:"500"},currencyIcon:{width:24,height:24,borderRadius:12},amountContainer:{alignItems:"center",marginBottom:24},amountInputRow:{flexDirection:"row",alignItems:"center",marginBottom:8},currencySymbol:{fontSize:48,fontWeight:"300"},amountInput:{fontSize:48,fontWeight:"300",minWidth:50},usdcPreview:{fontSize:14},quickAmounts:{flexDirection:"row",justifyContent:"center",gap:12,marginBottom:24},quickAmountButton:{paddingHorizontal:20,paddingVertical:10},quickAmountText:{fontSize:14,fontWeight:"500"},validationError:{fontSize:12,textAlign:"center",marginTop:12,paddingHorizontal:16},providerSection:{marginBottom:24},providerHeader:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",marginBottom:8},providerLabel:{fontSize:12,fontWeight:"500"},refreshText:{fontSize:10},providerButton:{padding:16},disabled:{opacity:.5},providerLoading:{flexDirection:"row",alignItems:"center",gap:12},loadingText:{fontSize:14},providerContent:{flexDirection:"row",justifyContent:"space-between",alignItems:"center"},providerInfo:{flex:1},autoPickedText:{fontSize:12,marginBottom:6},providerRow:{flexDirection:"row",alignItems:"center",gap:12},providerIcon:{width:32,height:32,borderRadius:16},providerIconPlaceholder:{width:32,height:32,borderRadius:8},providerIconImage:{width:32,height:32,borderRadius:8},providerName:{fontSize:14,fontWeight:"500"},bestPriceText:{fontSize:11,marginTop:2},noProviderText:{fontSize:14,textAlign:"center"},errorText:{fontSize:12,marginTop:8},continueButtonContainer:{padding:16,paddingBottom:48},continueButton:{paddingVertical:16,alignItems:"center"},continueButtonText:{fontSize:16,fontWeight:"600"},webViewHeader:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingTop:16,paddingBottom:8},webViewHeaderButton:{width:28,height:28,alignItems:"center",justifyContent:"center"},webViewHeaderTitle:{fontSize:16,fontWeight:"500",flex:1,textAlign:"center"},webViewHeaderSpacer:{width:28,height:28},webViewContainer:{flex:1},webView:{flex:1},webViewLoading:{position:"absolute",top:0,left:0,right:0,bottom:0,alignItems:"center",justifyContent:"center"},providerModalList:{flex:1,paddingHorizontal:12,marginTop:8},providerModalListContent:{paddingBottom:72},quotesList:{gap:8,paddingBottom:24,minHeight:468},quoteItem:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",padding:12},quoteLeft:{flexDirection:"row",alignItems:"center",gap:12},quoteIcon:{width:40,height:40,borderRadius:20},quoteName:{fontSize:14,fontWeight:"500"},quoteRight:{alignItems:"flex-end"},quoteAmount:{fontSize:14,fontWeight:"500"},quoteSource:{fontSize:12},onrampContainer:{flex:1,padding:16,alignItems:"center",paddingTop:24},onrampProviderIcon:{width:64,height:64,borderRadius:16},onrampTitle:{fontSize:18,fontWeight:"600",textAlign:"center",marginTop:20,marginBottom:8,paddingHorizontal:16},onrampSubtitle:{fontSize:14,textAlign:"center",marginBottom:24},flowDiagram:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:20,paddingHorizontal:24,borderRadius:12,width:"100%"},flowIconWithBadge:{position:"relative",width:24,height:24,marginBottom:4},flowIconImageNoBadge:{width:24,height:24,borderRadius:12},flowNetworkBadge:{position:"absolute",bottom:-4,right:-6,width:14,height:14,borderWidth:2},onrampInfoBox:{marginTop:16,padding:16,width:"100%"},onrampInfoText:{fontSize:13,lineHeight:20},flowStep:{alignItems:"center"},flowIcon:{width:28,height:28,borderRadius:14,marginBottom:4},flowIconImage:{width:24,height:24,borderRadius:12,marginBottom:4},flowLabel:{fontSize:10},flowValue:{fontSize:14,fontWeight:"500"}});function jS(e){try{let t=new Date(e);return t.toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})+" at "+t.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}catch{return e}}function $S(e){return e?`$${parseFloat(e).toFixed(2)}`:"$0.00"}function tu({execution:e,onPress:t}){let {colors:r,fonts:o,components:n}=L(),i=n.depositTracker.executionRow.card,s=e.status==="pending"||e.status==="waiting"||e.status==="delayed";e.status==="succeeded";let l=ne(Me(e.destination_token_metadata,"png")||rr("/icons/tokens/png/usdc.png")),c=s?"Deposit Processing":"Deposit Completed",p=jS(e.created_at||new Date().toISOString()),h=$S(e.source_amount_usd);return jsxRuntime.jsxs(Or,{cardTokens:i,onPress:t,contentStyle:Ti.container,children:[jsxRuntime.jsxs(reactNative.View,{style:Ti.iconContainer,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:l},style:Ti.tokenIcon}),jsxRuntime.jsx(reactNative.View,{style:[Ti.statusBadge,{backgroundColor:s?r.warning:r.success,borderColor:i.backgroundColor}],children:s?jsxRuntime.jsx(ua,{size:12,color:"#FFFFFF",strokeWidth:2.5}):jsxRuntime.jsx(ut,{size:12,color:"#FFFFFF",strokeWidth:3})})]}),jsxRuntime.jsxs(reactNative.View,{style:Ti.textContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ti.title,{color:i.titleColor,fontFamily:o.medium}],children:c}),jsxRuntime.jsx(reactNative.Text,{style:[Ti.dateTime,{color:i.subtitleColor,fontFamily:o.regular}],children:p})]}),jsxRuntime.jsxs(reactNative.View,{style:Ti.rightContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ti.amount,{color:i.textRightColor,fontFamily:o.medium}],children:h}),jsxRuntime.jsx(Wr,{size:20,color:i.actionColor,strokeWidth:2})]})]})}var Ti=reactNative.StyleSheet.create({container:{flexDirection:"row",alignItems:"center",paddingHorizontal:16,paddingVertical:12},iconContainer:{position:"relative",marginRight:12},tokenIcon:{width:40,height:40,borderRadius:20},statusBadge:{position:"absolute",bottom:-4,right:-4,width:22,height:22,borderRadius:11,alignItems:"center",justifyContent:"center",borderWidth:2},textContainer:{flex:1,gap:2},title:{fontSize:16,fontWeight:"500"},dateTime:{fontSize:13},rightContainer:{flexDirection:"row",alignItems:"center",gap:8},amount:{fontSize:16,fontWeight:"500"}});function Bg(e,t){let r={solana:"Solana",ethereum:"Ethereum",bitcoin:"Bitcoin",n1:"N1",cardano:"Cardano",algorand:"Algorand",xrpl:"XRPL"};return e==="ethereum"?{1:"Ethereum",137:"Polygon",8453:"Base",42161:"Arbitrum",10:"Optimism"}[t]||r[e]||e:r[e]||e}function Ag(e,t=6){if(!e)return "\u2014";try{let r=Number(e)/Math.pow(10,t);return r===0?"0.00":r>=1?r.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2}):r.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:8,minimumSignificantDigits:2,maximumSignificantDigits:6})}catch{return "0.00"}}function QS(e){return e?`$${parseFloat(e).toFixed(2)}`:"$0.00"}var Wg=e=>!e||e.length<12?e:`${e.slice(0,12)}...${e.slice(-4)}`;function Eg(e){if(!e)return "";let t=e.indexOf(".");return t===-1?e.toUpperCase():e.slice(0,t).toUpperCase()+e.slice(t)}function KS(e){try{let t=new Date(e);return t.toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})+" at "+t.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}catch{return e}}function GS({count:e=4}){let{colors:t,components:r}=L(),o=Ss.useRef(new reactNative.Animated.Value(.5)).current,n=r.depositTracker.executionRow.card,i=t.cardHover;return Ss.useEffect(()=>{let s=reactNative.Animated.loop(reactNative.Animated.sequence([reactNative.Animated.timing(o,{toValue:1,duration:800,useNativeDriver:true}),reactNative.Animated.timing(o,{toValue:.5,duration:800,useNativeDriver:true})]));return s.start(),()=>s.stop()},[o]),jsxRuntime.jsx(reactNative.View,{style:Qs.list,children:Array.from({length:e}).map((s,a)=>jsxRuntime.jsxs(reactNative.View,{style:[Qs.row,{backgroundColor:n.backgroundColor,borderRadius:n.borderRadius??12,borderWidth:n.borderWidth,borderColor:n.borderColor}],children:[jsxRuntime.jsx(reactNative.Animated.View,{style:[Qs.icon,{backgroundColor:i,opacity:o}]}),jsxRuntime.jsxs(reactNative.View,{style:Qs.textBlock,children:[jsxRuntime.jsx(reactNative.Animated.View,{style:[Qs.titleBar,{backgroundColor:i,opacity:o}]}),jsxRuntime.jsx(reactNative.Animated.View,{style:[Qs.subtitleBar,{backgroundColor:i,opacity:o}]})]}),jsxRuntime.jsx(reactNative.Animated.View,{style:[Qs.amountBar,{backgroundColor:i,opacity:o}]})]},a))})}var Qs=reactNative.StyleSheet.create({list:{paddingTop:16,paddingHorizontal:16,gap:12},row:{flexDirection:"row",alignItems:"center",paddingHorizontal:16,paddingVertical:12},icon:{width:40,height:40,borderRadius:20,marginRight:12},textBlock:{flex:1,gap:6},titleBar:{height:14,width:"65%",borderRadius:7},subtitleBar:{height:11,width:"45%",borderRadius:5.5},amountBar:{height:14,width:50,borderRadius:7,marginLeft:12}});function hf({active:e,onClose:t,executions:r,externalUserId:o,publishableKey:n}){let{colors:i,fonts:s,components:a}=L(),[l,c]=Ss.useState(r),[p,h]=Ss.useState(false),[T,d]=Ss.useState(null),[m,b]=Ss.useState(false),v=Ss.useRef(null);Ss.useEffect(()=>{if(!e||!o)return;let u=async()=>{h(true);try{let F=[...(await gn(o,n,"deposit")).data].sort((B,D)=>{let V=B.created_at?new Date(B.created_at).getTime():0;return (D.created_at?new Date(D.created_at).getTime():0)-V});c(F);}catch(y){console.error("Failed to fetch executions:",y),c(r);}finally{h(false);}};u();let S=setInterval(u,1e4);return ()=>clearInterval(S)},[e,o,n,r]),Ss.useEffect(()=>{r.length>0&&c(u=>{let S=new Set(u.map(F=>F.id)),y=r.filter(F=>!S.has(F.id));return y.length>0?[...y,...u]:u});},[r]),Ss.useEffect(()=>{e||d(null);},[e]);let x=u=>{d(u);},k=()=>{d(null),b(false);},R=()=>{d(null),t();},w=()=>{if(!T)return null;let u=T,S=u.status==="pending"||u.status==="waiting"||u.status==="delayed",y=u.status==="succeeded",F=ne(Me(u.destination_token_metadata,"png")||rr("/icons/tokens/png/usdc.png")),B=u.provider_metadata?.details,D=B?.currencyIn,V=B?.currencyOut;D?.currency?.symbol||"USDC";V?.currency?.symbol||"USDC";let Q=Ag(u.source_amount_base_unit,u.source_token_metadata?.decimals),We=Ag(u.destination_amount_base_unit,u.destination_token_metadata?.decimals),q=QS(u.source_amount_usd),Ue=Bg(u.source_chain_type,u.source_chain_id),J=Bg(u.destination_chain_type,u.destination_chain_id),ie=()=>{u.explorer_url&&reactNative.Linking.openURL(u.explorer_url);},ee=()=>{u.destination_explorer_url&&reactNative.Linking.openURL(u.destination_explorer_url);};return jsxRuntime.jsxs(Lt,{ref:v,style:Ye.scrollContainer,contentContainerStyle:Ye.detailsContent,showsVerticalScrollIndicator:false,children:[jsxRuntime.jsxs(reactNative.View,{style:Ye.iconSection,children:[jsxRuntime.jsxs(reactNative.View,{style:Ye.iconWrapper,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:F},style:Ye.tokenIcon}),jsxRuntime.jsx(reactNative.View,{style:[Ye.statusBadge,{backgroundColor:S?i.warning:i.success,borderColor:i.background}],children:S?jsxRuntime.jsx(lr,{size:14,color:"#FFFFFF",strokeWidth:2}):jsxRuntime.jsx(ut,{size:14,color:"#FFFFFF",strokeWidth:2})})]}),jsxRuntime.jsxs(reactNative.View,{style:Ye.statusRow,children:[jsxRuntime.jsx(reactNative.View,{style:[Ye.statusDot,{backgroundColor:S?i.warning:i.success}]}),jsxRuntime.jsx(reactNative.Text,{style:[Ye.statusText,{color:a.container.titleColor,fontFamily:s.semibold}],children:S?"Processing":"Completed"})]}),jsxRuntime.jsx(reactNative.Text,{style:[Ye.dateText,{color:a.container.subtitleColor,fontFamily:s.regular}],children:KS(u.created_at||new Date().toISOString())})]}),jsxRuntime.jsxs(reactNative.View,{style:[Ye.card,{backgroundColor:a.card.backgroundColor,borderRadius:a.card.borderRadius,borderWidth:a.card.borderWidth,borderColor:a.card.borderColor}],children:[jsxRuntime.jsxs(reactNative.View,{style:Ye.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ye.cardLabel,{color:a.card.rowLeftLabel,fontFamily:s.regular}],children:"Amount Sent"}),jsxRuntime.jsxs(reactNative.Text,{style:[Ye.cardValue,{color:a.card.rowRightLabel,fontFamily:s.medium}],children:[Q," ",Eg(u.source_currency)]})]}),jsxRuntime.jsx(reactNative.View,{style:[Ye.cardDivider,{backgroundColor:i.border}]}),jsxRuntime.jsxs(reactNative.View,{style:Ye.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ye.cardLabel,{color:a.card.rowLeftLabel,fontFamily:s.regular}],children:"Amount Received"}),jsxRuntime.jsxs(reactNative.Text,{style:[Ye.cardValue,{color:a.card.rowRightLabel,fontFamily:s.medium}],children:[We," ",Eg(u.destination_currency)]})]}),jsxRuntime.jsx(reactNative.View,{style:[Ye.cardDivider,{backgroundColor:i.border}]}),jsxRuntime.jsxs(reactNative.View,{style:Ye.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ye.cardLabel,{color:a.card.rowLeftLabel,fontFamily:s.regular}],children:"USD Value"}),jsxRuntime.jsx(reactNative.Text,{style:[Ye.cardValue,{color:a.card.rowRightLabel,fontFamily:s.medium}],children:q})]}),jsxRuntime.jsx(reactNative.View,{style:[Ye.cardDivider,{backgroundColor:i.border}]}),jsxRuntime.jsxs(reactNative.View,{style:Ye.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ye.cardLabel,{color:a.card.rowLeftLabel,fontFamily:s.regular}],children:"Source Network"}),jsxRuntime.jsx(reactNative.Text,{style:[Ye.cardValue,{color:a.card.rowRightLabel,fontFamily:s.medium}],children:Ue})]}),jsxRuntime.jsx(reactNative.View,{style:[Ye.cardDivider,{backgroundColor:i.border}]}),jsxRuntime.jsxs(reactNative.View,{style:Ye.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ye.cardLabel,{color:a.card.rowLeftLabel,fontFamily:s.regular}],children:"Destination Network"}),jsxRuntime.jsx(reactNative.Text,{style:[Ye.cardValue,{color:a.card.rowRightLabel,fontFamily:s.medium}],children:J})]})]}),jsxRuntime.jsxs(reactNative.TouchableOpacity,{onPress:()=>{let Z=!m;b(Z),Z?setTimeout(()=>{v.current?.scrollToEnd({animated:true});},100):v.current?.scrollTo({y:0,animated:true});},style:Ye.toggleButton,activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ye.toggleText,{color:a.container.actionTitle,fontFamily:s.regular}],children:m?"See less":"See more details"}),m?jsxRuntime.jsx(Pn,{size:14,color:a.container.actionColor,strokeWidth:2}):jsxRuntime.jsx(lr,{size:14,color:a.container.actionColor,strokeWidth:2})]}),m&&jsxRuntime.jsxs(reactNative.View,{style:[Ye.card,{backgroundColor:a.card.backgroundColor,borderRadius:a.card.borderRadius,borderWidth:a.card.borderWidth,borderColor:a.card.borderColor}],children:[u.explorer_url&&jsxRuntime.jsxs(reactNative.View,{children:[jsxRuntime.jsxs(reactNative.TouchableOpacity,{onPress:ie,style:Ye.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ye.cardLabel,{color:a.card.rowLeftLabel,fontFamily:s.regular}],children:"Deposit Tx"}),jsxRuntime.jsxs(reactNative.View,{style:Ye.cardRowRight,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ye.cardValue,{color:a.card.rowRightLabel,fontFamily:s.medium}],children:Wg(u.transaction_hash)}),jsxRuntime.jsx(Xo,{size:14,color:a.card.actionIcon,strokeWidth:2})]})]}),jsxRuntime.jsx(reactNative.View,{style:[Ye.cardDivider,{backgroundColor:i.border}]})]}),u.destination_explorer_url&&y&&jsxRuntime.jsxs(reactNative.TouchableOpacity,{onPress:ee,style:Ye.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ye.cardLabel,{color:a.card.rowLeftLabel,fontFamily:s.regular}],children:"Completion Tx"}),jsxRuntime.jsxs(reactNative.View,{style:Ye.cardRowRight,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ye.cardValue,{color:a.card.rowRightLabel,fontFamily:s.medium}],children:Wg(u.destination_transaction_hashes[0])}),jsxRuntime.jsx(Xo,{size:14,color:a.card.actionIcon,strokeWidth:2})]})]})]})]})},I=p&&l.length===0;return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(Gr,{title:T?"Deposit Details":"Deposit Tracker",onClose:R,showClose:!T,showBack:!!T,onBack:k}),T?w():I?jsxRuntime.jsx(GS,{}):jsxRuntime.jsx(Lt,{style:Ye.scrollContainer,contentContainerStyle:Ye.scrollContent,showsVerticalScrollIndicator:false,children:l.length===0?jsxRuntime.jsxs(reactNative.View,{style:Ye.emptyContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ye.emptyText,{color:a.container.titleColor,fontFamily:s.medium}],children:"No deposits yet"}),jsxRuntime.jsx(reactNative.Text,{style:[Ye.emptySubtext,{color:a.container.subtitleColor,fontFamily:s.regular}],children:"Your deposit history will appear here"})]}):jsxRuntime.jsx(reactNative.View,{style:Ye.executionsList,children:l.map(u=>jsxRuntime.jsx(tu,{execution:u,onPress:()=>x(u)},u.id))})})]})}var Ye=reactNative.StyleSheet.create({scrollContainer:{flex:1,paddingTop:16},scrollContent:{paddingHorizontal:16,paddingBottom:40},emptyContainer:{paddingVertical:40,paddingHorizontal:16,alignItems:"center"},emptyText:{fontSize:14,marginBottom:4},emptySubtext:{fontSize:12},executionsList:{paddingTop:8,gap:12},detailsContent:{paddingHorizontal:16,paddingBottom:32},iconSection:{alignItems:"center",marginBottom:24},iconWrapper:{position:"relative",marginBottom:12},tokenIcon:{width:72,height:72,borderRadius:36},statusBadge:{position:"absolute",bottom:0,right:0,width:28,height:28,borderRadius:14,alignItems:"center",justifyContent:"center",borderWidth:3},statusRow:{flexDirection:"row",alignItems:"center",gap:6,marginBottom:4},statusDot:{width:8,height:8,borderRadius:4},statusText:{fontSize:16,fontWeight:"600"},dateText:{fontSize:14},card:{borderRadius:12,marginBottom:12,overflow:"hidden"},cardRow:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",paddingVertical:14,paddingHorizontal:16},cardRowRight:{flexDirection:"row",alignItems:"center",gap:8},cardDivider:{height:1,marginHorizontal:16},cardLabel:{fontSize:14},cardValue:{fontSize:14,fontWeight:"500"},toggleButton:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:12,paddingHorizontal:4},toggleText:{fontSize:14},buttonSection:{marginTop:12,gap:10},actionButton:{flexDirection:"row",alignItems:"center",paddingVertical:16,paddingHorizontal:16,borderRadius:12},buttonIconLeft:{marginRight:12},buttonIconRight:{marginLeft:12},buttonText:{color:"#FFFFFF",fontSize:14,fontWeight:"600",flex:1,textAlign:"left"},hintText:{fontSize:12,textAlign:"center",marginTop:8}});function hc(e,t=true){let[r,o]=Ss.useState(null),[n,i]=Ss.useState(null),[s,a]=Ss.useState(false),[l,c]=Ss.useState(false),[p,h]=Ss.useState(null),[T,d]=Ss.useState(null);Ss.useEffect(()=>{!t||r||(a(true),Ll().then(x=>{o(x),h(null);}).catch(x=>{h(x instanceof Error?x:new Error(String(x)));}).finally(()=>{a(false);}));},[t,r]),Ss.useEffect(()=>{!t||!e||n||(c(true),Ol(e).then(x=>{i(x),d(null);}).catch(x=>{d(x instanceof Error?x:new Error(String(x)));}).finally(()=>{c(false);}));},[t,e,n]);let m=s||l,b=p||T||null,v=null;if(r&&n){let x=n.blocked_country_codes||[],k=r.alpha2.toUpperCase();v=!x.some(R=>R.toUpperCase()===k);}return {isAllowed:v,alpha2:r?.alpha2?.toLowerCase()??null,country:r?.country??null,isLoading:m,error:b}}var bf="unifold_recent_tokens",eT=5,jg=[{symbol:"ETH",chainType:"ethereum",chainId:"1"},{symbol:"SOL",chainType:"solana",chainId:"mainnet"},{symbol:"USDC",chainType:"solana",chainId:"mainnet"},{symbol:"POL",chainType:"ethereum",chainId:"137"},{symbol:"BNB",chainType:"ethereum",chainId:"56"},{symbol:"BTC",chainType:"bitcoin",chainId:"mainnet"}];async function su(){try{let e=await xp__default.default.getItem(bf);return e?JSON.parse(e):[]}catch{return []}}async function tT(e){try{let r=(await su()).filter(n=>!(n.symbol===e.symbol&&n.chainType===e.chainType&&n.chainId===e.chainId));r.unshift(e);let o=r.slice(0,eT);await xp__default.default.setItem(bf,JSON.stringify(o));}catch{}}async function rT(e){try{let r=(await su()).filter(o=>!(o.symbol===e.symbol&&o.chainType===e.chainType&&o.chainId===e.chainId));return await xp__default.default.setItem(bf,JSON.stringify(r)),r}catch{return []}}function Cf({visible:e,onClose:t,tokens:r,selectedToken:o,selectedChainKey:n,onSelect:i,borderTopLeftRadius:s,borderTopRightRadius:a,hideQuickSelect:l=false,marginHorizontal:c,heightPercent:p=.9,showHandle:h=true}){let{colors:T,fonts:d,components:m}=L(),[b,v]=Ss.useState(""),[x,k]=Ss.useState([]);Ss.useEffect(()=>{e&&su().then(k);},[e]),Ss.useEffect(()=>{e||v("");},[e]);let R=Ss.useMemo(()=>{let y=[];return r.forEach(F=>{F.chains.forEach(B=>{y.push({token:F,chain:B});});}),y},[r]),w=Ss.useMemo(()=>{let y=[],F=new Set,B=(D,V,A,M)=>{let Q=`${D}-${V}:${A}`;if(F.has(Q))return;let We=r.find(Ue=>Ue.symbol===D);if(!We)return;let q=We.chains.find(Ue=>Ue.chain_type===V&&Ue.chain_id===A);q&&(F.add(Q),y.push({token:We,chain:q,isRecent:M}));};return x.forEach(D=>{B(D.symbol,D.chainType,D.chainId,true);}),jg.forEach(D=>{B(D.symbol,D.chainType,D.chainId,false);}),y},[r,x]),I=Ss.useMemo(()=>{if(!b.trim())return R;let y=b.toLowerCase();return R.filter(({token:F,chain:B})=>F.symbol.toLowerCase().includes(y)||F.name.toLowerCase().includes(y)||B.chain_name.toLowerCase().includes(y))},[R,b]),f=(y,F,B)=>jg.some(D=>D.symbol===y&&D.chainType===F&&D.chainId===B),u=async(y,F)=>{let B=`${F.chain_type}:${F.chain_id}`;if(!f(y.symbol,F.chain_type,F.chain_id)){await tT({symbol:y.symbol,chainType:F.chain_type,chainId:F.chain_id});let D=await su();k(D);}v(""),i(y.symbol,B),t();},S=async(y,F)=>{let B=await rT({symbol:y.symbol,chainType:F.chain_type,chainId:F.chain_id});k(B);};return jsxRuntime.jsxs(Et,{visible:e,onClose:t,closeOnBackdropPress:true,showHandle:h,heightPercent:p,borderTopLeftRadius:s,borderTopRightRadius:a,marginHorizontal:c,children:[jsxRuntime.jsxs(reactNative.View,{style:[Jt.header,!h&&{paddingTop:20}],children:[jsxRuntime.jsx(reactNative.View,{style:Jt.headerSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[Jt.headerTitle,{color:m.header.titleColor,fontFamily:d.medium}],children:"Select token to deposit"}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:t,style:Jt.closeButton,hitSlop:{top:12,bottom:12,left:12,right:12},children:jsxRuntime.jsx(vt,{size:20,color:m.header.buttonColor,strokeWidth:2})})]}),jsxRuntime.jsx(reactNative.View,{style:Jt.searchContainer,children:jsxRuntime.jsx(reactNative.TextInput,{style:[Jt.searchInput,{backgroundColor:m.search.backgroundColor,color:m.search.inputColor,fontFamily:d.regular,borderRadius:m.input.borderRadius,borderWidth:m.input.borderWidth,borderColor:m.input.borderColor}],placeholder:"Search",placeholderTextColor:m.search.placeholderColor,value:b,onChangeText:v,autoCapitalize:"none",autoCorrect:false})}),!l&&w.length>0&&!b&&jsxRuntime.jsxs(reactNative.View,{style:Jt.quickSelectSection,children:[jsxRuntime.jsx(reactNative.Text,{style:[Jt.sectionLabel,{color:m.list.titleSectionColor,fontFamily:d.regular}],children:"Quick select"}),jsxRuntime.jsx(reactNative.ScrollView,{horizontal:true,showsHorizontalScrollIndicator:false,keyboardShouldPersistTaps:"handled",contentContainerStyle:Jt.quickSelectScroll,children:w.map(({token:y,chain:F,isRecent:B})=>{let D=`${F.chain_type}:${F.chain_id}`;y.symbol===o&&D===n;return jsxRuntime.jsxs(reactNative.View,{children:[B&&jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>S(y,F),style:Jt.removeButton,children:jsxRuntime.jsx(vt,{size:12,color:T.foregroundMuted,strokeWidth:2})}),jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>u(y,F),activeOpacity:.7,style:[Jt.quickSelectItem,{backgroundColor:m.card.backgroundColor,borderRadius:m.card.borderRadius,borderWidth:m.card.borderWidth,borderColor:m.card.borderColor}],children:[jsxRuntime.jsxs(reactNative.View,{style:Jt.tokenIconContainer,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(y,"png"))},style:Jt.quickSelectIcon}),jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(F,"png"))},style:[Jt.quickSelectChainBadge,{borderColor:m.card.backgroundColor,borderRadius:m.badge.borderRadius}]})]}),jsxRuntime.jsxs(reactNative.View,{style:Jt.quickSelectText,children:[jsxRuntime.jsx(reactNative.Text,{style:[Jt.quickSelectSymbol,{color:m.card.titleColor,fontFamily:d.medium}],children:y.symbol}),jsxRuntime.jsx(reactNative.Text,{style:[Jt.quickSelectChain,{color:m.card.subtitleColor,fontFamily:d.regular}],children:F.chain_name})]})]})]},`quick-${y.symbol}-${D}`)})})]}),jsxRuntime.jsx(reactNative.Text,{style:[Jt.sectionLabel,{color:m.list.titleSectionColor,fontFamily:d.regular}],children:"All supported tokens"}),jsxRuntime.jsx(Lt,{style:Jt.tokenList,showsVerticalScrollIndicator:false,keyboardShouldPersistTaps:"handled",contentContainerStyle:Jt.tokenListContent,children:I.length===0?jsxRuntime.jsx(reactNative.View,{style:Jt.emptyState,children:jsxRuntime.jsx(reactNative.Text,{style:[Jt.emptyText,{color:T.foregroundMuted,fontFamily:d.regular}],children:"No tokens found"})}):I.map(({token:y,chain:F})=>{let B=`${F.chain_type}:${F.chain_id}`,D=y.symbol===o&&B===n;return jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>u(y,F),activeOpacity:.7,style:[Jt.tokenItem,{backgroundColor:D?m.card.backgroundColor:"transparent"}],children:[jsxRuntime.jsxs(reactNative.View,{style:Jt.tokenIconContainerLarge,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(y,"png"))},style:Jt.tokenIcon}),jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(F,"png"))},style:[Jt.tokenChainBadge,{borderColor:m.card.backgroundColor,borderRadius:m.badge.borderRadius}]})]}),jsxRuntime.jsxs(reactNative.View,{style:Jt.tokenInfo,children:[jsxRuntime.jsx(reactNative.Text,{style:[Jt.tokenSymbol,{color:m.card.titleColor,fontFamily:d.medium}],children:y.symbol}),jsxRuntime.jsx(reactNative.Text,{style:[Jt.tokenChainName,{color:m.card.subtitleColor,fontFamily:d.regular}],children:F.chain_name})]}),jsxRuntime.jsxs(reactNative.Text,{style:[Jt.minDeposit,{color:m.card.labelColor,fontFamily:d.regular}],children:["Minimum:"," ",jsxRuntime.jsxs(reactNative.Text,{style:{color:m.card.labelHighlightRightColor,fontFamily:d.regular},children:["$",F.minimum_deposit_amount_usd]})]})]},`${y.symbol}-${B}`)})})]})}var Jt=reactNative.StyleSheet.create({header:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",padding:16},closeButton:{width:36,height:36,alignItems:"center",justifyContent:"center"},headerTitle:{fontSize:16,fontWeight:"500",textAlign:"center",flex:1},headerSpacer:{width:36},searchContainer:{paddingHorizontal:16,paddingBottom:12},searchInput:{height:40,paddingHorizontal:16,fontSize:14},quickSelectSection:{marginBottom:12},sectionLabel:{fontSize:12,paddingHorizontal:16,marginBottom:8},quickSelectScroll:{paddingHorizontal:16,gap:8},quickSelectItem:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},removeButton:{position:"absolute",top:-2,right:-6,zIndex:1,padding:2},tokenIconContainer:{position:"relative"},quickSelectIcon:{width:28,height:28,borderRadius:14},quickSelectChainBadge:{position:"absolute",bottom:-2,right:-2,width:14,height:14,borderRadius:7,borderWidth:2},quickSelectText:{alignItems:"flex-start"},quickSelectSymbol:{fontSize:12,fontWeight:"500"},quickSelectChain:{fontSize:10},tokenList:{flex:1},tokenListContent:{paddingHorizontal:16,paddingBottom:72,gap:4},emptyState:{padding:32,alignItems:"center"},emptyText:{fontSize:14},tokenItem:{flexDirection:"row",alignItems:"center",gap:12,padding:12,borderRadius:12},tokenIconContainerLarge:{position:"relative"},tokenIcon:{width:40,height:40,borderRadius:20},tokenChainBadge:{position:"absolute",bottom:-4,right:-4,width:20,height:20,borderRadius:10,borderWidth:2},tokenInfo:{flex:1},tokenSymbol:{fontSize:14,fontWeight:"500"},tokenChainName:{fontSize:12},minDeposit:{fontSize:12}});var gc=(e,t)=>`${t}:${e}`,aT=e=>{let[t,r]=e.split(":");return {chainType:t,chainId:r}};function wf({externalUserId:e,publishableKey:t,recipientAddress:r,destinationChainType:o,destinationChainId:n,destinationTokenAddress:i,destinationTokenSymbol:s,defaultChainType:a,defaultChainId:l,defaultTokenAddress:c,depositConfirmationMode:p="auto_ui",onExecutionsChange:h,onDepositSuccess:T,onDepositError:d,onLatestExecution:m,onShowStatusSheet:b,onSelectedTokenIconUrl:v,wallets:x,borderTopLeftRadius:k,borderTopRightRadius:R,sheetBorderRadius:w}){let{colors:I,fonts:f,components:u}=L(),S=a&&l?`${a}:${l}`:"solana:mainnet",[y,F]=Ss.useState("USDC"),[B,D]=Ss.useState(S),[V,A]=Ss.useState([]),[M,Q]=Ss.useState(!x?.length),We=x?.length?x:V,[q,Ue]=Ss.useState([]),[J,ie]=Ss.useState(true),[ee,Z]=Ss.useState(false),[ce,U]=Ss.useState(false),[Se,st]=Ss.useState(false),[Ee,de]=Ss.useState([]),[He,Ve]=Ss.useState(new Map),[$e]=Ss.useState(()=>new Date),[mt,Ne]=Ss.useState(null),[qe,Le]=Ss.useState(false),[xe,ve]=Ss.useState(null),[Xe,Qe]=Ss.useState(false);Ss.useEffect(()=>{xe&&m?.(xe);},[xe]),Ss.useEffect(()=>{qe&&(b?.(true),Le(false));},[qe]);let at=new Map;q.forEach(K=>{K.chains.forEach(ue=>{let _=`${ue.chain_type}:${ue.chain_id}`;at.has(_)||at.set(_,ue);});});let Xt=Array.from(at.values()),Be=aT(B),Re=Xt.find(K=>K.chain_type===Be.chainType&&K.chain_id===Be.chainId),rt=Re?.chain_type||"ethereum",ct=_o(We,rt),Oe=ct?.address||"",Ie=Ss.useRef(false);Ss.useEffect(()=>{async function K(){try{ie(!0),Ne(null);let _=await si(t,i&&n&&o?{destination_token_address:i,destination_chain_id:n,destination_chain_type:o}:void 0);if(Ue(_.data),_.data.length>0&&!Ie.current){Ie.current=!0;let C,O;if(a&&l)if(c)for(let N of _.data){let $=N.chains.find(j=>j.chain_type===a&&j.chain_id===l&&j.token_address.toLowerCase()===c.toLowerCase());if($){C=N,O=$;break}}else {let N=j=>j.chain_type===a&&j.chain_id===l,$=_.data.find(j=>j.symbol==="USDC"&&j.chains.some(N));if($)C=$,O=$.chains.find(N);else for(let j of _.data){let fe=j.chains.find(N);if(fe){C=j,O=fe;break}}}if(!C&&i)for(let N of _.data){let $=N.chains.find(j=>j.token_address.toLowerCase()===i.toLowerCase());if($){C=N,O=$;break}}C||(C=_.data.find(N=>N.symbol==="USDC"),C&&C.chains.length>0&&(O=C.chains[0])),C||(C=_.data.find(N=>N.symbol==="USDT"),C&&C.chains.length>0&&(O=C.chains[0])),C||(C=_.data[0],C.chains.length>0&&(O=C.chains[0])),C&&F(C.symbol),O&&D(gc(O.chain_id,O.chain_type));}}catch(ue){console.error("Error fetching supported tokens:",ue),Ne("Failed to load supported tokens"),d?.({message:"Failed to load supported tokens",error:ue});}finally{ie(false);}}K();},[t,i,n,o,a,l,c,d]),Ss.useEffect(()=>{h&&h(Ee);},[Ee,h]),Ss.useEffect(()=>{if(x?.length){Q(false);return}if(V.length>0){Q(false);return}let K=null,ue=false,_=async()=>{if(!ue){Q(true);try{let C=await Uo({external_user_id:e,recipient_address:r,destination_chain_type:o,destination_chain_id:n,destination_token_address:i},t);ue||(A(C.data),Ne(null),Q(!1));}catch(C){console.error("Error fetching wallets, retrying in 5s:",C),ue||(Ne(C instanceof Error?C.message:"Failed to load wallets"),Q(false),K=setTimeout(_,5e3));}}};return _(),()=>{ue=true,K&&clearTimeout(K);}},[e,r,o,n,i,t,x,V.length]);let Pe=ct?.id??"",{showWaitingUi:Ut,handleIveDeposited:Nt}=xn({depositConfirmationMode:p,depositAddress:Oe,chain:B,externalUserId:e,publishableKey:t,modalOpenedAt:$e,depositWalletId:Pe,depositExecutions:Ee,trackedExecutions:He,setDepositExecutions:de,setTrackedExecutions:Ve,setLatestExecution:ve,setShowStatusSheet:Le,onDepositSuccess:T,onExecutionsChange:h,onDepositError:d});Ss.useEffect(()=>{if(!q.length)return;let K=q.find(_=>_.symbol===y);if(!K||K.chains.length===0){let _=q.find(C=>C.symbol==="USDC")||q[0];_&&(F(_.symbol),_.chains.length>0&&D(gc(_.chains[0].chain_id,_.chains[0].chain_type)));return}if(!K.chains.some(_=>gc(_.chain_id,_.chain_type)===B)){let _=K.chains[0];D(gc(_.chain_id,_.chain_type));}},[y,q,B]);let pe=q.find(K=>K.symbol===y),Ke=Me(pe,"png")||void 0;Ss.useEffect(()=>{v?.(Ke);},[Ke]);let je=(pe?.chains||[]).find(K=>gc(K.chain_id,K.chain_type)===B),Vt=async()=>{if(Oe)try{reactNative.Clipboard.setString(Oe),Z(!0),setTimeout(()=>Z(!1),2e3);}catch(K){console.error("Failed to copy:",K);}},et=je?.estimated_price_impact_percent??0,be=je?.max_slippage_percent??.25,nt=je?.minimum_deposit_amount_usd??3;return J?jsxRuntime.jsxs(reactNative.View,{style:se.loadingContainer,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"large",color:I.primary}),jsxRuntime.jsx(reactNative.Text,{style:[se.loadingText,{color:I.foregroundMuted,fontFamily:f.regular}],children:"Loading currencies..."})]}):mt&&q.length===0?jsxRuntime.jsxs(reactNative.View,{style:se.errorContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[se.errorText,{color:I.error,fontFamily:f.regular}],children:mt}),jsxRuntime.jsx(reactNative.Text,{style:[se.errorHint,{color:I.foregroundMuted,fontFamily:f.regular}],children:"Please check your network connection and try again."})]}):jsxRuntime.jsxs(reactNative.View,{style:se.container,children:[jsxRuntime.jsxs(reactNative.View,{style:se.selectorSection,children:[jsxRuntime.jsx(reactNative.Text,{style:[se.selectorLabel,{color:u.card.labelColor,fontFamily:f.medium}],children:"Select token to deposit"}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>st(true),disabled:J||q.length===0,style:[se.tokenSelectorButton,{backgroundColor:u.card.backgroundColor,borderRadius:u.card.borderRadius,borderWidth:u.card.borderWidth,borderColor:u.card.borderColor}],activeOpacity:.7,children:J?jsxRuntime.jsxs(reactNative.View,{style:se.tokenSelectorLoading,children:[jsxRuntime.jsx(reactNative.View,{style:[se.loadingIcon,{backgroundColor:I.cardHover}]}),jsxRuntime.jsxs(reactNative.View,{style:se.loadingTextContainer,children:[jsxRuntime.jsx(reactNative.View,{style:[se.loadingLine,{backgroundColor:I.cardHover,width:60}]}),jsxRuntime.jsx(reactNative.View,{style:[se.loadingLine,{backgroundColor:I.cardHover,width:100,marginTop:4}]})]})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(reactNative.View,{style:se.tokenIconWrapper,children:[pe&&jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(pe,"png"))},style:se.tokenMainIcon}),(je||Re)&&jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(je||Re,"png"))},style:[se.tokenChainBadge,{borderColor:u.card.backgroundColor,borderRadius:u.badge.borderRadius}]})]}),jsxRuntime.jsxs(reactNative.View,{style:se.tokenSelectorInfo,children:[jsxRuntime.jsx(reactNative.Text,{style:[se.tokenSelectorSymbol,{color:u.card.titleColor,fontFamily:f.semibold}],children:pe?.symbol||y}),jsxRuntime.jsx(reactNative.Text,{style:[se.tokenSelectorNetwork,{color:u.card.subtitleColor,fontFamily:f.regular}],numberOfLines:1,children:je?.chain_name||Re?.chain_name||"Select network"})]}),jsxRuntime.jsxs(reactNative.View,{style:se.tokenSelectorRight,children:[jsxRuntime.jsxs(reactNative.Text,{style:[se.minDepositText,{color:I.warning,fontFamily:f.medium}],children:["$",nt," minimum"]}),jsxRuntime.jsx(Wr,{size:16,color:u.card.actionColor,strokeWidth:2})]})]})})]}),jsxRuntime.jsx(Cf,{visible:Se,onClose:()=>st(false),tokens:q,selectedToken:y,selectedChainKey:B,onSelect:(K,ue)=>{F(K),D(ue);},borderTopLeftRadius:w?.tokenSelector?.borderTopLeftRadius??k,borderTopRightRadius:w?.tokenSelector?.borderTopRightRadius??R}),jsxRuntime.jsx(reactNative.View,{style:se.qrContainer,children:jsxRuntime.jsx(reactNative.View,{style:[se.qrWrapper,{backgroundColor:I.background,borderRadius:u.card.borderRadius,borderWidth:u.card.borderWidth>0?u.card.borderWidth:1,borderColor:u.card.borderColor}],children:M?jsxRuntime.jsxs(reactNative.View,{style:se.qrLoading,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"small",color:I.primary}),jsxRuntime.jsx(reactNative.Text,{style:[se.loadingText,{color:I.foregroundMuted,fontFamily:f.regular}],children:"Loading..."})]}):Oe?jsxRuntime.jsx(us,{value:Oe,size:180,logoUri:ne(Me(je,"png")||rr("/icons/networks/png/ethereum.png")),logoSize:45}):jsxRuntime.jsx(reactNative.View,{style:se.qrLoading,children:jsxRuntime.jsx(reactNative.Text,{style:[se.errorText,{color:I.error,fontFamily:f.regular}],children:"No address available"})})})}),jsxRuntime.jsxs(reactNative.View,{style:se.addressSection,children:[jsxRuntime.jsxs(reactNative.View,{style:se.addressHeader,children:[jsxRuntime.jsx(reactNative.Text,{style:[se.addressLabel,{color:u.card.labelColor,fontFamily:f.medium}],children:"Deposit Address"}),ee&&jsxRuntime.jsxs(reactNative.View,{style:se.copiedIndicator,children:[jsxRuntime.jsx(ut,{size:14,color:I.success,strokeWidth:2}),jsxRuntime.jsx(reactNative.Text,{style:[se.copiedText,{color:I.success,fontFamily:f.regular}],children:"Copied"})]})]}),jsxRuntime.jsxs(Or,{cardTokens:u.transferCrypto.depositAddress.card,onPress:!M&&Oe?Vt:void 0,contentStyle:se.addressBox,children:[jsxRuntime.jsx(reactNative.Text,{style:[se.addressText,{color:u.card.titleColor,fontFamily:f.regular}],numberOfLines:2,children:M?"Loading...":Oe||"No address available"}),jsxRuntime.jsx(reactNative.View,{style:se.addressCopyIcon,children:jsxRuntime.jsx(fn,{size:16,color:u.card.actionColor,strokeWidth:1})})]})]}),jsxRuntime.jsxs(reactNative.View,{style:[se.detailsCard,{backgroundColor:u.card.backgroundColor,borderRadius:u.card.borderRadius,borderWidth:u.card.borderWidth,borderColor:u.card.borderColor}],children:[jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>U(!ce),style:se.detailsHeader,children:[jsxRuntime.jsxs(reactNative.View,{style:se.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[se.detailIcon,{backgroundColor:u.card.iconBackgroundColor,borderRadius:u.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(go,{size:12,color:u.card.iconColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:[se.detailsLabel,{color:u.card.titleColor,fontFamily:f.regular}],children:"Processing time: < 1 min"})]}),jsxRuntime.jsx(reactNative.View,{style:se.chevronContainer,children:ce?jsxRuntime.jsx(Pn,{size:16,color:u.card.actionColor,strokeWidth:2}):jsxRuntime.jsx(lr,{size:16,color:u.card.actionColor,strokeWidth:2})})]}),ce&&jsxRuntime.jsxs(reactNative.View,{style:se.detailsContent,children:[jsxRuntime.jsxs(reactNative.View,{style:se.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[se.detailIcon,{backgroundColor:u.card.iconBackgroundColor,borderRadius:u.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(mn,{size:12,color:u.card.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[se.detailsLabel,{color:u.card.titleColor,fontFamily:f.regular}],children:["Price impact: ",et.toFixed(2),"%"]}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>Qe(true),hitSlop:{top:10,bottom:10,left:10,right:10},style:{marginLeft:-4},children:jsxRuntime.jsx(hn,{size:14,color:u.card.actionColor,strokeWidth:2})})]}),jsxRuntime.jsxs(reactNative.View,{style:se.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[se.detailIcon,{backgroundColor:u.card.iconBackgroundColor,borderRadius:u.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(To,{size:12,color:u.card.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[se.detailsLabel,{color:u.card.titleColor,fontFamily:f.regular}],children:["Slippage: Auto \u2022 ",be.toFixed(2),"%"]}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>Qe(true),hitSlop:{top:10,bottom:10,left:10,right:10},style:{marginLeft:-4},children:jsxRuntime.jsx(hn,{size:14,color:u.card.actionColor,strokeWidth:2})})]}),jsxRuntime.jsxs(reactNative.View,{style:se.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[se.detailIcon,{backgroundColor:u.card.iconBackgroundColor,borderRadius:u.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(da,{size:12,color:u.card.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[se.detailsLabel,{color:u.card.titleColor,fontFamily:f.regular}],children:["Need help?"," ",jsxRuntime.jsx(reactNative.Text,{style:{textDecorationLine:"underline"},children:"Contact support"})]})]})]})]}),jsxRuntime.jsx(Cg,{depositConfirmationMode:p,depositAddress:Oe,showWaitingUi:Ut,latestExecution:xe,onIveDeposited:Nt}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{style:se.termsContainer,onPress:()=>reactNative.Linking.openURL("https://unifold.io/terms"),children:jsxRuntime.jsx(reactNative.Text,{style:[se.termsText,{color:I.primary,fontFamily:f.regular}],children:"Terms apply"})}),jsxRuntime.jsxs(Et,{visible:Xe,onClose:()=>Qe(false),closeOnBackdropPress:true,showHandle:true,heightPercent:.55,maxHeightPercent:.9,borderTopLeftRadius:w?.infoSheet?.borderTopLeftRadius??k,borderTopRightRadius:w?.infoSheet?.borderTopRightRadius??R,children:[jsxRuntime.jsxs(reactNative.View,{style:[se.sheetHeader,{borderBottomColor:I.border}],children:[jsxRuntime.jsx(reactNative.View,{style:se.sheetHeaderSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[se.sheetTitle,{color:u.header.titleColor,fontFamily:f.medium}],children:"Price Impact & Slippage"}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>Qe(false),style:se.sheetCloseButton,children:jsxRuntime.jsx(vt,{size:20,color:u.header.buttonColor,strokeWidth:2})})]}),jsxRuntime.jsxs(reactNative.View,{style:se.infoSheetContent,children:[jsxRuntime.jsxs(reactNative.View,{style:[se.infoCard,{backgroundColor:u.card.backgroundColor,borderRadius:u.card.borderRadius,borderWidth:u.card.borderWidth,borderColor:u.card.borderColor}],children:[jsxRuntime.jsxs(reactNative.View,{style:se.infoCardHeader,children:[jsxRuntime.jsx(reactNative.View,{style:[se.infoCardIcon,{backgroundColor:u.card.iconBackgroundColor,borderRadius:u.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(mn,{size:16,color:u.card.iconColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:[se.infoCardTitle,{color:u.card.titleColor,fontFamily:f.medium}],children:"Price Impact"}),jsxRuntime.jsxs(reactNative.Text,{style:[se.infoCardValue,{color:u.card.titleColor,fontFamily:f.medium}],children:[et.toFixed(2),"%"]})]}),jsxRuntime.jsx(reactNative.Text,{style:[se.infoCardDescription,{color:u.card.descriptionColor,fontFamily:f.regular}],children:"Price impact is the difference between the current market price and the price you'll receive for your swap. This occurs due to liquidity pool mechanics and trade size."})]}),jsxRuntime.jsxs(reactNative.View,{style:[se.infoCard,{backgroundColor:u.card.backgroundColor,borderRadius:u.card.borderRadius,borderWidth:u.card.borderWidth,borderColor:u.card.borderColor}],children:[jsxRuntime.jsxs(reactNative.View,{style:se.infoCardHeader,children:[jsxRuntime.jsx(reactNative.View,{style:[se.infoCardIcon,{backgroundColor:u.card.iconBackgroundColor,borderRadius:u.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(To,{size:16,color:u.card.iconColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:[se.infoCardTitle,{color:u.card.titleColor,fontFamily:f.medium}],children:"Max Slippage"}),jsxRuntime.jsxs(reactNative.Text,{style:[se.infoCardValue,{color:u.card.titleColor,fontFamily:f.medium}],children:[be.toFixed(2),"%"]})]}),jsxRuntime.jsx(reactNative.Text,{style:[se.infoCardDescription,{color:u.card.descriptionColor,fontFamily:f.regular}],children:"Max slippage is the maximum price difference you're willing to accept between when you submit a transaction and when it executes. Your transaction will revert if the price moves beyond this threshold."})]})]})]})]})}var se=reactNative.StyleSheet.create({container:{flex:1,paddingHorizontal:16},loadingContainer:{padding:40,alignItems:"center",gap:12},loadingText:{fontSize:14},errorContainer:{padding:40,alignItems:"center",gap:8},errorText:{fontSize:14,textAlign:"center"},errorHint:{fontSize:12,textAlign:"center"},selectorSection:{marginBottom:12},selectorLabel:{fontSize:12,marginBottom:8},tokenSelectorButton:{flexDirection:"row",alignItems:"center",gap:12,padding:12},tokenSelectorLoading:{flexDirection:"row",alignItems:"center",gap:12,flex:1},loadingIcon:{width:40,height:40,borderRadius:20},loadingTextContainer:{flex:1},loadingLine:{height:12,borderRadius:6},tokenIconWrapper:{position:"relative"},tokenMainIcon:{width:40,height:40,borderRadius:20},tokenChainBadge:{position:"absolute",bottom:-4,right:-4,width:20,height:20,borderRadius:10,borderWidth:2},tokenSelectorInfo:{flex:1},tokenSelectorSymbol:{fontSize:14,fontWeight:"500"},tokenSelectorNetwork:{fontSize:12,marginTop:2},tokenSelectorRight:{flexDirection:"row",alignItems:"center",gap:8},minDepositText:{fontSize:12,fontWeight:"500"},qrContainer:{alignItems:"center",marginVertical:8},qrWrapper:{padding:16},qrLoading:{width:160,height:160,alignItems:"center",justifyContent:"center"},addressSection:{marginBottom:16},addressHeader:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",marginBottom:8},addressLabel:{fontSize:12},copiedIndicator:{flexDirection:"row",alignItems:"center",gap:4},copiedText:{fontSize:12,fontWeight:"500"},addressBox:{position:"relative",paddingHorizontal:12,paddingVertical:16},addressText:{fontSize:12,fontFamily:"monospace"},addressCopyIcon:{position:"absolute",right:12,top:0,bottom:0,justifyContent:"center"},detailsCard:{borderRadius:8,padding:4,marginBottom:16},detailsHeader:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",paddingVertical:8,paddingLeft:8,paddingRight:8},detailsContent:{paddingRight:12,paddingLeft:8,paddingBottom:12,gap:10},detailsRow:{flexDirection:"row",alignItems:"center",gap:8},detailIcon:{width:24,height:24,borderRadius:12,alignItems:"center",justifyContent:"center"},detailsLabel:{fontSize:13},chevronContainer:{},termsContainer:{alignItems:"center",paddingVertical:8},termsText:{fontSize:12,textDecorationLine:"underline"},sheetHeader:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",padding:16},sheetHeaderSpacer:{width:28},sheetTitle:{fontSize:16,fontWeight:"500",flex:1,textAlign:"center"},sheetCloseButton:{width:28,height:28,alignItems:"center",justifyContent:"center"},infoSheetContent:{paddingHorizontal:16,paddingBottom:32,gap:16},infoCard:{borderRadius:12,padding:16,gap:12},infoCardHeader:{flexDirection:"row",alignItems:"center",gap:10},infoCardIcon:{width:32,height:32,borderRadius:16,alignItems:"center",justifyContent:"center"},infoCardTitle:{fontSize:15,fontWeight:"600",flex:1},infoCardValue:{fontSize:15,fontWeight:"600"},infoCardDescription:{fontSize:13,lineHeight:20}});var tl=(e,t)=>`${t}:${e}`,pT=e=>{let[t,r]=e.split(":");return {chainType:t,chainId:r}},fT=e=>e.length<=16?e:`${e.slice(0,8)}...${e.slice(-6)}`;function cu({externalUserId:e,publishableKey:t,recipientAddress:r,destinationChainType:o,destinationChainId:n,destinationTokenAddress:i,destinationTokenSymbol:s,defaultChainType:a,defaultChainId:l,defaultTokenAddress:c,depositConfirmationMode:p="auto_ui",onExecutionsChange:h,onDepositSuccess:T,onDepositError:d,onLatestExecution:m,onShowStatusSheet:b,onSelectedTokenIconUrl:v,onShowInfoSheet:x,onInfoSheetData:k,wallets:R,borderTopLeftRadius:w,borderTopRightRadius:I,sheetBorderRadius:f}){let{colors:u,fonts:S,components:y}=L(),F=a&&l?`${a}:${l}`:"solana:mainnet",[B,D]=Ss.useState("USDC"),[V,A]=Ss.useState(F),[M,Q]=Ss.useState([]),[We,q]=Ss.useState(!R?.length),Ue=R?.length?R:M,[J,ie]=Ss.useState([]),[ee,Z]=Ss.useState(true),[ce,U]=Ss.useState(false),[Se,st]=Ss.useState(false),[Ee,de]=Ss.useState(false),[He,Ve]=Ss.useState([]),[$e,mt]=Ss.useState(new Map),[Ne]=Ss.useState(()=>new Date),[qe,Le]=Ss.useState(null),[xe,ve]=Ss.useState(false),[Xe,Qe]=Ss.useState(null),[at,Xt]=Ss.useState(false),[Be,Re]=Ss.useState(false),[rt,ct]=Ss.useState(""),[Oe,Ie]=Ss.useState(""),Pe=Ss.useRef(new reactNative.Animated.Value(0)).current;Ss.useEffect(()=>{let Te=reactNative.Animated.loop(reactNative.Animated.timing(Pe,{toValue:1,duration:1500,easing:reactNative.Easing.linear,useNativeDriver:true}));return Te.start(),()=>Te.stop()},[Pe]);let Ut=Pe.interpolate({inputRange:[0,1],outputRange:["0deg","360deg"]});Ss.useEffect(()=>{Xe&&m?.(Xe);},[Xe]),Ss.useEffect(()=>{xe&&(b?.(true),ve(false));},[xe]);let Nt=new Map;J.forEach(Te=>{Te.chains.forEach(dt=>{let ot=`${dt.chain_type}:${dt.chain_id}`;Nt.has(ot)||Nt.set(ot,dt);});});let pe=Array.from(Nt.values()),Ke=pT(V),er=pe.find(Te=>Te.chain_type===Ke.chainType&&Te.chain_id===Ke.chainId),je=er?.chain_type||"ethereum",Vt=_o(Ue,je),et=Vt?.address||"",be=Ss.useRef(false);Ss.useEffect(()=>{async function Te(){try{Z(!0),Le(null);let ot=await si(t,i&&n&&o?{destination_token_address:i,destination_chain_id:n,destination_chain_type:o}:void 0);if(ie(ot.data),ot.data.length>0&&!be.current){be.current=!0;let Je,Hr;if(a&&l)if(c)for(let ge of ot.data){let xt=ge.chains.find(Ot=>Ot.chain_type===a&&Ot.chain_id===l&&Ot.token_address.toLowerCase()===c.toLowerCase());if(xt){Je=ge,Hr=xt;break}}else {let ge=Ot=>Ot.chain_type===a&&Ot.chain_id===l,xt=ot.data.find(Ot=>Ot.symbol==="USDC"&&Ot.chains.some(ge));if(xt)Je=xt,Hr=xt.chains.find(ge);else for(let Ot of ot.data){let Ar=Ot.chains.find(ge);if(Ar){Je=Ot,Hr=Ar;break}}}if(!Je&&i)for(let ge of ot.data){let xt=ge.chains.find(Ot=>Ot.token_address.toLowerCase()===i.toLowerCase());if(xt){Je=ge,Hr=xt;break}}Je||(Je=ot.data.find(ge=>ge.symbol==="USDC"),Je&&Je.chains.length>0&&(Hr=Je.chains[0])),Je||(Je=ot.data.find(ge=>ge.symbol==="USDT"),Je&&Je.chains.length>0&&(Hr=Je.chains[0])),Je||(Je=ot.data[0],Je.chains.length>0&&(Hr=Je.chains[0])),Je&&D(Je.symbol),Hr&&A(tl(Hr.chain_id,Hr.chain_type));}}catch(dt){console.error("Error fetching supported tokens:",dt),Le("Failed to load supported tokens"),d?.({message:"Failed to load supported tokens",error:dt});}finally{Z(false);}}Te();},[t,i,n,o,a,l,c,d]),Ss.useEffect(()=>{h&&h(He);},[He,h]),Ss.useEffect(()=>{if(R?.length){q(false);return}if(M.length>0){q(false);return}let Te=null,dt=false,ot=async()=>{if(!dt){q(true);try{let Je=await Uo({external_user_id:e,recipient_address:r,destination_chain_type:o,destination_chain_id:n,destination_token_address:i},t);dt||(Q(Je.data),Le(null),q(!1));}catch(Je){console.error("Error fetching wallets, retrying in 5s:",Je),dt||(Le(Je instanceof Error?Je.message:"Failed to load wallets"),q(false),Te=setTimeout(ot,5e3));}}};return ot(),()=>{dt=true,Te&&clearTimeout(Te);}},[e,r,o,n,i,t,R,M.length]);let nt=Vt?.id??"",{showWaitingUi:K,handleIveDeposited:ue}=xn({depositConfirmationMode:p,depositAddress:et,chain:V,externalUserId:e,publishableKey:t,modalOpenedAt:Ne,depositWalletId:nt,depositExecutions:He,trackedExecutions:$e,setDepositExecutions:Ve,setTrackedExecutions:mt,setLatestExecution:Qe,setShowStatusSheet:ve,onDepositSuccess:T,onExecutionsChange:h,onDepositError:d}),_=p==="manual"&&et&&!K;Ss.useEffect(()=>{if(!J.length)return;let Te=J.find(ot=>ot.symbol===B);if(!Te||Te.chains.length===0){let ot=J.find(Je=>Je.symbol==="USDC")||J[0];ot&&(D(ot.symbol),ot.chains.length>0&&A(tl(ot.chains[0].chain_id,ot.chains[0].chain_type)));return}if(!Te.chains.some(ot=>tl(ot.chain_id,ot.chain_type)===V)){let ot=Te.chains[0];A(tl(ot.chain_id,ot.chain_type));}},[B,J,V]);let C=J.find(Te=>Te.symbol===B),O=Me(C,"png")||void 0;Ss.useEffect(()=>{v?.(O);},[O]);let N=C?.chains||[],$=N.find(Te=>tl(Te.chain_id,Te.chain_type)===V),j=async()=>{if(et)try{reactNative.Clipboard.setString(et),U(!0),setTimeout(()=>U(!1),2e3);}catch(Te){console.error("Failed to copy:",Te);}},fe=$?.estimated_price_impact_percent??0,Ge=$?.max_slippage_percent??.25,W=$?.minimum_deposit_amount_usd??3,E=$?.chain_name||er?.chain_name||"Network",tr=Ss.useMemo(()=>{if(!rt.trim())return N;let Te=rt.toLowerCase();return N.filter(dt=>dt.chain_name.toLowerCase().includes(Te))},[N,rt]),Fe=Ss.useMemo(()=>{if(!Oe.trim())return J;let Te=Oe.toLowerCase();return J.filter(dt=>dt.symbol.toLowerCase().includes(Te)||dt.name?.toLowerCase().includes(Te)||dt.chains.some(ot=>ot.chain_name.toLowerCase().includes(Te)))},[J,Oe]);return ee?jsxRuntime.jsxs(reactNative.View,{style:le.loadingContainer,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"large",color:u.primary}),jsxRuntime.jsx(reactNative.Text,{style:[le.loadingText,{color:u.foregroundMuted,fontFamily:S.regular}],children:"Loading currencies..."})]}):qe&&J.length===0?jsxRuntime.jsxs(reactNative.View,{style:le.errorContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[le.errorText,{color:u.error,fontFamily:S.regular}],children:qe}),jsxRuntime.jsx(reactNative.Text,{style:[le.errorHint,{color:u.foregroundMuted,fontFamily:S.regular}],children:"Please check your network connection and try again."})]}):jsxRuntime.jsxs(reactNative.View,{style:le.container,children:[jsxRuntime.jsxs(reactNative.View,{style:le.content,children:[jsxRuntime.jsxs(reactNative.View,{style:le.qrSection,children:[jsxRuntime.jsx(reactNative.Text,{style:[le.intentAddressLabel,{color:u.foregroundMuted,fontFamily:S.medium}],children:"Intent address"}),jsxRuntime.jsx(reactNative.View,{style:[le.qrCard,{backgroundColor:u.background,borderRadius:y.card.borderRadius,borderWidth:y.card.borderWidth>0?y.card.borderWidth:1,borderColor:y.card.borderColor}],children:We?jsxRuntime.jsxs(reactNative.View,{style:le.qrLoading,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"small",color:u.primary}),jsxRuntime.jsx(reactNative.Text,{style:[le.loadingText,{color:u.foregroundMuted,fontFamily:S.regular}],children:"Loading..."})]}):et?jsxRuntime.jsx(reactNative.View,{style:le.qrWrapper,children:jsxRuntime.jsx(us,{value:et,size:200,logoUri:ne(Me(C,"png")||rr("/icons/tokens/png/usdc.png")),logoSize:40,badgeUri:ne(Me($,"png")||rr("/icons/networks/png/ethereum.png")),badgeSize:20})}):jsxRuntime.jsx(reactNative.View,{style:le.qrLoading,children:jsxRuntime.jsx(reactNative.Text,{style:[le.errorText,{color:u.error,fontFamily:S.regular}],children:"No address available"})})})]}),jsxRuntime.jsxs(reactNative.View,{style:le.selectorsRow,children:[jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{ct(""),Re(true);},style:[le.selectorPill,{backgroundColor:y.card.backgroundColor,borderRadius:y.card.borderRadius,borderWidth:y.card.borderWidth,borderColor:y.card.borderColor}],activeOpacity:.7,children:[($||er)&&jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me($||er,"png"))},style:le.selectorPillIcon}),jsxRuntime.jsx(lr,{size:14,color:y.card.actionColor,strokeWidth:2})]}),jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{Ie(""),de(true);},disabled:ee||J.length===0,style:[le.selectorPill,{backgroundColor:y.card.backgroundColor,borderRadius:y.card.borderRadius,borderWidth:y.card.borderWidth,borderColor:y.card.borderColor}],activeOpacity:.7,children:[C&&jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(C,"png"))},style:le.selectorPillIcon}),jsxRuntime.jsx(reactNative.Text,{style:[le.selectorPillText,{color:y.card.titleColor,fontFamily:S.semibold}],children:C?.symbol||B}),jsxRuntime.jsx(lr,{size:14,color:y.card.actionColor,strokeWidth:2})]})]}),jsxRuntime.jsx(reactNative.View,{style:le.addressRow,children:jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:j,style:[le.addressPill,{backgroundColor:y.card.backgroundColor,borderRadius:y.card.borderRadius,borderWidth:y.card.borderWidth,borderColor:y.card.borderColor}],activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[le.addressPillText,{color:y.card.titleColor,fontFamily:S.regular}],numberOfLines:1,children:We?"Loading...":et?fT(et):"No address"}),ce?jsxRuntime.jsx(ut,{size:14,color:u.success,strokeWidth:2}):jsxRuntime.jsx(fn,{size:14,color:y.card.actionColor,strokeWidth:1.5})]})}),jsxRuntime.jsxs(reactNative.View,{style:{opacity:K&&!Xe?1:0,flexDirection:"row",alignItems:"center",justifyContent:"center",gap:8,height:34},children:[jsxRuntime.jsx(reactNative.Animated.View,{style:{transform:[{rotate:Ut}]},children:jsxRuntime.jsx(xl,{size:16,color:u.foregroundMuted,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:{fontSize:14,color:u.foregroundMuted,fontFamily:S.regular},children:"Checking for deposit"})]})]}),jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{k?.({priceImpact:fe,maxSlippage:Ge,minDepositUsd:W,chainName:E}),x?.(true);},style:le.infoFooter,activeOpacity:.7,children:[jsxRuntime.jsx(hn,{size:14,color:y.card.actionColor,strokeWidth:2}),jsxRuntime.jsxs(reactNative.Text,{style:[le.infoFooterText,{color:y.card.subtitleColor,fontFamily:S.regular}],numberOfLines:1,children:["$",W," ",E," Minimum and ","<","1 min Processing"]})]}),_?jsxRuntime.jsxs(reactNative.View,{style:le.ctaRow,children:[jsxRuntime.jsx(reactNative.View,{style:le.ctaFlex,children:jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:ue,activeOpacity:.8,style:[le.ctaButton,{backgroundColor:u.primary,borderRadius:y.button.borderRadius}],children:jsxRuntime.jsx(reactNative.Text,{style:[le.ctaText,{color:u.primaryForeground??"#FFF",fontFamily:S.semibold}],children:"I've made the deposit"})})}),jsxRuntime.jsx(reactNative.View,{style:le.ctaFlex,children:jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:j,activeOpacity:.8,style:[le.ctaButton,{backgroundColor:y.card.backgroundColor,borderRadius:y.button.borderRadius,borderWidth:1,borderColor:u.border}],children:jsxRuntime.jsx(reactNative.Text,{style:[le.ctaText,{color:u.foreground,fontFamily:S.semibold}],children:ce?"Copied!":"Copy deposit address"})})})]}):jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:j,activeOpacity:.8,style:[le.ctaButton,{backgroundColor:u.primary,borderRadius:y.button.borderRadius,marginBottom:16,marginTop:8}],children:jsxRuntime.jsx(reactNative.Text,{style:[le.ctaText,{color:"#FFFFFF",fontFamily:S.semibold}],children:ce?"Copied!":"Copy Deposit Address"})}),jsxRuntime.jsxs(Et,{visible:Ee,onClose:()=>{de(false),Ie("");},closeOnBackdropPress:true,showHandle:false,heightPercent:.6,marginHorizontal:16,marginBottom:24,borderTopLeftRadius:f?.tokenSelector?.borderTopLeftRadius??w,borderTopRightRadius:f?.tokenSelector?.borderTopRightRadius??I,children:[jsxRuntime.jsxs(reactNative.View,{style:[le.sheetHeader,{borderBottomColor:u.border}],children:[jsxRuntime.jsx(reactNative.View,{style:le.sheetHeaderSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[le.sheetTitle,{color:y.header.titleColor,fontFamily:S.medium}],children:"Select Token"}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{de(false),Ie("");},style:le.sheetCloseButton,hitSlop:{top:12,bottom:12,left:12,right:12},children:jsxRuntime.jsx(vt,{size:20,color:y.header.buttonColor,strokeWidth:2})})]}),jsxRuntime.jsx(reactNative.View,{style:le.searchContainer,children:jsxRuntime.jsx(reactNative.TextInput,{style:[le.searchInput,{backgroundColor:y.search.backgroundColor,color:y.search.inputColor,fontFamily:S.regular,borderRadius:y.input.borderRadius,borderWidth:y.input.borderWidth,borderColor:y.input.borderColor}],placeholder:"Search tokens",placeholderTextColor:y.search.placeholderColor,value:Oe,onChangeText:Ie,autoCapitalize:"none",autoCorrect:false})}),jsxRuntime.jsx(Lt,{style:le.sheetList,contentContainerStyle:le.sheetListContent,showsVerticalScrollIndicator:false,children:Fe.length===0?jsxRuntime.jsx(reactNative.View,{style:le.emptyState,children:jsxRuntime.jsx(reactNative.Text,{style:[le.emptyText,{color:u.foregroundMuted,fontFamily:S.regular}],children:"No tokens found"})}):Fe.map(Te=>jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{D(Te.symbol),de(false),Ie("");},activeOpacity:.7,style:[le.sheetItem,{backgroundColor:B===Te.symbol?y.card.backgroundColor:"transparent"}],children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(Te,"png"))},style:le.sheetItemIcon}),jsxRuntime.jsx(reactNative.Text,{style:[le.sheetItemTitle,{color:y.card.titleColor,fontFamily:S.medium}],children:Te.symbol}),jsxRuntime.jsx(reactNative.View,{style:le.sheetItemSpacer}),jsxRuntime.jsx(reactNative.View,{style:[le.sheetItemBadge,{borderWidth:1,borderColor:u.border}],children:jsxRuntime.jsxs(reactNative.Text,{style:[le.sheetItemBadgeText,{color:y.card.subtitleColor,fontFamily:S.medium}],children:[Te.chains.length," chain",Te.chains.length!==1?"s":""]})})]},Te.symbol))})]}),jsxRuntime.jsxs(Et,{visible:Be,onClose:()=>{Re(false),ct("");},closeOnBackdropPress:true,showHandle:false,heightPercent:.6,marginHorizontal:16,marginBottom:24,borderTopLeftRadius:f?.chainSelector?.borderTopLeftRadius??w,borderTopRightRadius:f?.chainSelector?.borderTopRightRadius??I,children:[jsxRuntime.jsxs(reactNative.View,{style:[le.sheetHeader,{borderBottomColor:u.border}],children:[jsxRuntime.jsx(reactNative.View,{style:le.sheetHeaderSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[le.sheetTitle,{color:y.header.titleColor,fontFamily:S.medium}],children:"Select Network"}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{Re(false),ct("");},style:le.sheetCloseButton,hitSlop:{top:12,bottom:12,left:12,right:12},children:jsxRuntime.jsx(vt,{size:20,color:y.header.buttonColor,strokeWidth:2})})]}),jsxRuntime.jsx(reactNative.View,{style:le.searchContainer,children:jsxRuntime.jsx(reactNative.TextInput,{style:[le.searchInput,{backgroundColor:y.search.backgroundColor,color:y.search.inputColor,fontFamily:S.regular,borderRadius:y.input.borderRadius,borderWidth:y.input.borderWidth,borderColor:y.input.borderColor}],placeholder:"Search networks",placeholderTextColor:y.search.placeholderColor,value:rt,onChangeText:ct,autoCapitalize:"none",autoCorrect:false})}),jsxRuntime.jsx(Lt,{style:le.sheetList,contentContainerStyle:le.sheetListContent,showsVerticalScrollIndicator:false,children:tr.length===0?jsxRuntime.jsx(reactNative.View,{style:le.emptyState,children:jsxRuntime.jsx(reactNative.Text,{style:[le.emptyText,{color:u.foregroundMuted,fontFamily:S.regular}],children:"No networks found"})}):tr.map(Te=>{let dt=tl(Te.chain_id,Te.chain_type),ot=V===dt;return jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{A(dt),Re(false),ct("");},activeOpacity:.7,style:[le.chainItem,{backgroundColor:ot?y.card.backgroundColor:"transparent"}],children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(Te,"png"))},style:le.chainItemIcon}),jsxRuntime.jsx(reactNative.View,{style:le.chainItemInfo,children:jsxRuntime.jsx(reactNative.Text,{style:[le.chainItemName,{color:y.card.titleColor,fontFamily:S.medium}],children:Te.chain_name})}),jsxRuntime.jsx(reactNative.View,{style:[le.chainMinBadge,{backgroundColor:`${u.warning}18`}],children:jsxRuntime.jsxs(reactNative.Text,{style:[le.chainMinBadgeText,{color:u.warning,fontFamily:S.medium}],children:["$",Te.minimum_deposit_amount_usd," Minimum"]})})]},dt)})})]})]})}var le=reactNative.StyleSheet.create({container:{flex:1,paddingHorizontal:16},content:{flex:1,justifyContent:"center"},loadingContainer:{padding:40,alignItems:"center",gap:12},loadingText:{fontSize:14},errorContainer:{padding:40,alignItems:"center",gap:8},errorText:{fontSize:14,textAlign:"center"},errorHint:{fontSize:12,textAlign:"center"},qrSection:{alignItems:"center",marginTop:8,marginBottom:16},intentAddressLabel:{fontSize:14,marginBottom:8},qrCard:{padding:16,alignItems:"center"},qrLoading:{width:150,height:150,alignItems:"center",justifyContent:"center"},qrWrapper:{},selectorsRow:{flexDirection:"row",justifyContent:"center",alignItems:"center",gap:10,paddingTop:16,paddingBottom:8},selectorPill:{flexDirection:"row",alignItems:"center",gap:6,paddingVertical:12,paddingHorizontal:14},selectorPillIcon:{width:20,height:20,borderRadius:10},selectorPillText:{fontSize:14},addressRow:{flexDirection:"row",justifyContent:"center",alignItems:"center",gap:8,paddingVertical:8},addressPill:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:16,paddingHorizontal:16},addressPillText:{fontSize:14},infoFooter:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:6,marginBottom:8,paddingVertical:4},infoFooterText:{fontSize:12},ctaRow:{flexDirection:"row",gap:10,marginBottom:16,marginTop:8},ctaFlex:{flex:1},ctaButton:{paddingVertical:14,alignItems:"center",justifyContent:"center"},ctaContent:{flexDirection:"row",alignItems:"center",gap:8},ctaText:{fontSize:15},sheetHeader:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingBottom:16,paddingTop:20},sheetHeaderSpacer:{width:36},sheetTitle:{fontSize:16,fontWeight:"500",flex:1,textAlign:"center"},sheetCloseButton:{width:36,height:36,alignItems:"center",justifyContent:"center"},searchContainer:{paddingHorizontal:16,paddingBottom:12},searchInput:{height:48,paddingHorizontal:16,fontSize:14},sheetList:{flex:1,paddingTop:8},sheetListContent:{paddingBottom:56},sheetItem:{flexDirection:"row",alignItems:"center",paddingVertical:12,paddingHorizontal:16,marginHorizontal:16,borderRadius:12,gap:10},sheetItemIcon:{width:32,height:32,borderRadius:16},sheetItemTitle:{fontSize:15},sheetItemSpacer:{flex:1},sheetItemBadge:{paddingHorizontal:8,paddingVertical:3,borderRadius:6},sheetItemBadgeText:{fontSize:12},emptyState:{padding:32,alignItems:"center"},emptyText:{fontSize:14},chainItem:{flexDirection:"row",alignItems:"center",paddingVertical:12,paddingHorizontal:16,marginHorizontal:16,borderRadius:12,gap:12},chainItemIcon:{width:24,height:24,borderRadius:12},chainItemInfo:{flex:1},chainItemName:{fontSize:15},chainMinBadge:{paddingHorizontal:8,paddingVertical:3,borderRadius:6},chainMinBadgeText:{fontSize:11,fontWeight:"500"}});function Xg(e){let t=e.split("/"),r=t[t.length-1];return r&&r.length>10?`${r.slice(0,6)}...${r.slice(-3)}`:r||""}function gT(e){let r=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][e.getMonth()],o=e.getDate(),n=e.getFullYear(),i=e.getHours(),s=e.getMinutes(),a=i>=12?"pm":"am";i=i%12,i=i||12;let l=s<10?`0${s}`:s;return `${r} ${o}, ${n} at ${i}:${l}${a}`}function uu({visible:e,status:t,tokenIconUrl:r,explorerUrl:o,completionExplorerUrl:n,date:i,amountUsd:s,onClose:a,borderTopLeftRadius:l,borderTopRightRadius:c,useModal:p,heightProcessing:h,heightCompleted:T,heightCompletedExpanded:d}){let{components:m}=L(),[b,v]=Ss.useState(false),x=t==="succeeded";return jsxRuntime.jsx(Et,{visible:e,onClose:a,closeOnBackdropPress:true,enablePanDownToClose:false,showHandle:false,heightPercent:x?b?d??T??.55:T??.55:h??.4,borderTopLeftRadius:l,borderTopRightRadius:c,useModal:p,children:jsxRuntime.jsxs(reactNative.View,{style:pr.sheetWrapper,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:pr.closeButton,onPress:a,hitSlop:{top:10,bottom:10,left:10,right:10},children:jsxRuntime.jsx(vt,{size:20,color:m.header.buttonColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.ScrollView,{style:pr.scrollView,bounces:false,showsVerticalScrollIndicator:false,contentContainerStyle:pr.scrollContent,children:jsxRuntime.jsx(yT,{status:t,tokenIconUrl:r,explorerUrl:o,completionExplorerUrl:n,date:i,amountUsd:s,showDetails:b,onToggleDetails:()=>v(!b)})})]})})}function yT({status:e,tokenIconUrl:t,explorerUrl:r,completionExplorerUrl:o,date:n,amountUsd:i,showDetails:s,onToggleDetails:a,containerStyle:l}){let{colors:c,fonts:p,components:h}=L(),[T,d]=Ss.useState(false),m=s??T,b=a??(()=>d(I=>!I)),v=e==="pending"||e==="waiting"||e==="delayed",x=e==="succeeded",k=!!r||!!o,R=()=>{r&&reactNative.Linking.openURL(r);},w=()=>{o&&reactNative.Linking.openURL(o);};return jsxRuntime.jsxs(reactNative.View,{style:[pr.container,l],children:[jsxRuntime.jsx(reactNative.View,{style:pr.iconContainer,children:v?jsxRuntime.jsx(St,{size:80,strokeWidth:4,iconSize:56,children:t?jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(t)},style:pr.tokenIconFill}):jsxRuntime.jsx(reactNative.View,{style:[pr.tokenIconFill,{backgroundColor:c.cardHover}]})}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[t?jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(t)},style:pr.tokenIconLarge}):jsxRuntime.jsx(reactNative.View,{style:[pr.tokenIconLarge,{backgroundColor:c.cardHover}]}),jsxRuntime.jsx(reactNative.View,{style:[pr.statusBadge,{backgroundColor:h.container.iconBackgroundColor}],children:jsxRuntime.jsx(ut,{size:16,color:h.container.iconColor,strokeWidth:3})})]})}),jsxRuntime.jsx(reactNative.Text,{style:[pr.title,{color:h.container.titleColor,fontFamily:p.semibold}],children:v?"Deposit Processing":"Deposit Complete"}),i!==void 0&&jsxRuntime.jsxs(reactNative.Text,{style:[pr.amount,{color:h.container.titleColor,fontFamily:p.bold}],children:["$",i.toLocaleString(void 0,{minimumFractionDigits:2,maximumFractionDigits:2})]}),n&&jsxRuntime.jsx(reactNative.Text,{style:[pr.date,{color:h.container.subtitleColor,fontFamily:p.regular}],children:gT(n)}),jsxRuntime.jsx(reactNative.Text,{style:[pr.subtitle,{color:h.container.subtitleColor,fontFamily:p.regular}],children:v?"This usually takes less than a minute.":"Your account has been credited successfully!"}),x&&k&&jsxRuntime.jsxs(reactNative.View,{style:pr.detailsSection,children:[jsxRuntime.jsx(reactNative.View,{style:[pr.divider,{backgroundColor:c.border}]}),jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:pr.detailsToggle,onPress:b,children:[jsxRuntime.jsx(reactNative.Text,{style:[pr.detailsToggleText,{color:h.container.actionTitle,fontFamily:p.medium}],children:m?"See less":"See more details"}),m?jsxRuntime.jsx(Pn,{size:18,color:h.container.actionColor,strokeWidth:2}):jsxRuntime.jsx(lr,{size:18,color:h.container.actionColor,strokeWidth:2})]}),m&&jsxRuntime.jsxs(reactNative.View,{style:pr.txButtonsContainer,children:[r&&jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[pr.txButton,{backgroundColor:h.card.backgroundColor,borderColor:c.border}],onPress:R,children:[jsxRuntime.jsx(reactNative.Text,{style:[pr.txLabel,{color:h.card.titleColor,fontFamily:p.medium}],children:"Deposit tx"}),jsxRuntime.jsx(reactNative.Text,{style:[pr.txHash,{color:h.card.subtitleColor,fontFamily:p.regular}],children:Xg(r)}),jsxRuntime.jsx(Xo,{size:16,color:h.card.actionColor,strokeWidth:2})]}),o&&jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[pr.txButton,{backgroundColor:h.card.backgroundColor,borderColor:c.border}],onPress:w,children:[jsxRuntime.jsx(reactNative.Text,{style:[pr.txLabel,{color:h.card.titleColor,fontFamily:p.medium}],children:"Completion tx"}),jsxRuntime.jsx(reactNative.Text,{style:[pr.txHash,{color:h.card.subtitleColor,fontFamily:p.regular}],children:Xg(o)}),jsxRuntime.jsx(Xo,{size:16,color:h.card.actionColor,strokeWidth:2})]})]})]})]})}var pr=reactNative.StyleSheet.create({sheetWrapper:{flex:1},scrollView:{flex:1},scrollContent:{flexGrow:1},container:{alignItems:"center",paddingHorizontal:24,paddingTop:40,paddingBottom:20},closeButton:{position:"absolute",top:12,right:12,width:40,height:40,alignItems:"center",justifyContent:"center",zIndex:10},iconContainer:{position:"relative",marginBottom:16},tokenIcon:{width:64,height:64,borderRadius:32},tokenIconLarge:{width:68,height:68,borderRadius:34},tokenIconFill:{width:"100%",height:"100%",borderRadius:34},statusBadge:{position:"absolute",bottom:-2,right:-2,width:28,height:28,borderRadius:14,alignItems:"center",justifyContent:"center"},title:{fontSize:18,fontWeight:"600",marginBottom:4,textAlign:"center"},amount:{fontSize:28,fontWeight:"700",marginBottom:4,textAlign:"center"},date:{fontSize:13,textAlign:"center",marginBottom:12},detailsSection:{width:"100%",marginTop:16,paddingHorizontal:16},divider:{height:1,width:"100%",opacity:.15},detailsToggle:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",width:"100%",paddingVertical:12},detailsToggleText:{fontSize:14,fontWeight:"500"},txButtonsContainer:{width:"100%",gap:10,marginTop:10},txButton:{flexDirection:"row",alignItems:"center",width:"100%",paddingVertical:12,paddingHorizontal:14,borderRadius:10,borderWidth:1,gap:8},txLabel:{fontSize:14,fontWeight:"500"},txHash:{fontSize:14,flex:1,textAlign:"right"},subtitle:{fontSize:14,textAlign:"center",lineHeight:20,paddingTop:8},buttonRow:{flexDirection:"row",gap:10,width:"100%"},button:{paddingVertical:14,paddingHorizontal:20,borderRadius:10,alignItems:"center",justifyContent:"center"},halfButton:{flex:1},successButton:{backgroundColor:"#22C55E"},buttonText:{color:"#fff",fontSize:14,fontWeight:"600"},hint:{fontSize:12,marginTop:12,textAlign:"center"}});function Sf({visible:e,onClose:t,priceImpact:r,maxSlippage:o,minDepositUsd:n,chainName:i,borderTopLeftRadius:s,borderTopRightRadius:a,useModal:l}){let{colors:c,fonts:p,components:h}=L(),T=[{icon:jsxRuntime.jsx(go,{size:14,color:h.card.iconColor,strokeWidth:2}),label:"Processing time: <1 min"},{icon:jsxRuntime.jsx(mn,{size:14,color:h.card.iconColor,strokeWidth:2}),label:`Minimum deposit: $${n} on ${i}`},{icon:jsxRuntime.jsx(mn,{size:14,color:h.card.iconColor,strokeWidth:2}),label:`Price Impact: ${r.toFixed(2)}%`},{icon:jsxRuntime.jsx(To,{size:14,color:h.card.iconColor,strokeWidth:2}),label:`Slippage Auto: ${o.toFixed(2)}%`}];return jsxRuntime.jsx(Et,{visible:e,onClose:t,closeOnBackdropPress:true,showHandle:false,marginHorizontal:16,marginBottom:24,borderTopLeftRadius:s,borderTopRightRadius:a,useModal:l,children:jsxRuntime.jsxs(reactNative.View,{style:dn.container,children:[jsxRuntime.jsxs(reactNative.View,{style:dn.header,children:[jsxRuntime.jsxs(reactNative.View,{style:dn.titleRow,children:[jsxRuntime.jsx(hn,{size:16,color:h.header.titleColor,strokeWidth:2}),jsxRuntime.jsx(reactNative.Text,{style:[dn.title,{color:h.header.titleColor,fontFamily:p.semibold}],children:"Deposit Info"})]}),jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:t,hitSlop:{top:16,bottom:16,left:16,right:16},style:dn.closeButton,children:jsxRuntime.jsx(vt,{size:18,color:h.header.buttonColor,strokeWidth:2})})]}),jsxRuntime.jsxs(reactNative.View,{style:dn.rows,children:[T.map((d,m)=>jsxRuntime.jsxs(reactNative.View,{style:dn.row,children:[jsxRuntime.jsx(reactNative.View,{style:[dn.iconContainer,{backgroundColor:h.card.iconBackgroundColor,borderRadius:h.card.iconContainerBorderRadius}],children:d.icon}),jsxRuntime.jsx(reactNative.Text,{style:[dn.label,{color:h.card.titleColor,fontFamily:p.regular}],children:d.label})]},m)),jsxRuntime.jsxs(reactNative.View,{style:dn.row,children:[jsxRuntime.jsx(reactNative.View,{style:[dn.iconContainer,{backgroundColor:h.card.iconBackgroundColor,borderRadius:h.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(da,{size:14,color:h.card.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[dn.label,{color:h.card.titleColor,fontFamily:p.regular}],children:["Need Help?"," ",jsxRuntime.jsx(reactNative.Text,{style:{textDecorationLine:"underline"},onPress:()=>reactNative.Linking.openURL("https://unifold.io/support"),children:"Contact Support"})]})]})]})]})})}var dn=reactNative.StyleSheet.create({container:{paddingHorizontal:20,paddingTop:20,paddingBottom:0},header:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",marginBottom:16},titleRow:{flexDirection:"row",alignItems:"center",gap:6},title:{fontSize:16},closeButton:{width:36,height:36,alignItems:"center",justifyContent:"center"},rows:{gap:16},row:{flexDirection:"row",alignItems:"center",gap:12},iconContainer:{width:28,height:28,alignItems:"center",justifyContent:"center"},label:{fontSize:14,flex:1}});var In={transferCrypto:{title:"Transfer Crypto",subtitle:"No limit \u2022 Instant"},depositWithCard:{title:"Deposit with Card",subtitle:"$50,000 limit \u2022 2 min"},stripeLinkPay:{title:"Pay with Stripe Link",subtitle:"Apple Pay or Card"},depositTracker:{title:"Deposit Tracker",subtitle:"Track your deposit progress"},tabs:{crypto:"Use Crypto",cash:"Use Cash"}};function xT(){let{colors:e,components:t}=L(),r=Ss.useRef(new reactNative.Animated.Value(.5)).current,o=t.depositMenu.card.backgroundColor,n=e.cardHover;Ss.useEffect(()=>{let s=reactNative.Animated.loop(reactNative.Animated.sequence([reactNative.Animated.timing(r,{toValue:1,duration:800,useNativeDriver:true}),reactNative.Animated.timing(r,{toValue:.5,duration:800,useNativeDriver:true})]));return s.start(),()=>s.stop()},[r]);let i=({rightIcons:s=2})=>jsxRuntime.jsxs(reactNative.View,{style:[hs.card,{backgroundColor:o,borderRadius:t.depositMenu.card.borderRadius}],children:[jsxRuntime.jsx(reactNative.Animated.View,{style:[hs.leftIcon,{backgroundColor:n,opacity:r,borderRadius:t.depositMenu.card.iconContainerBorderRadius}]}),jsxRuntime.jsxs(reactNative.View,{style:hs.textBlock,children:[jsxRuntime.jsx(reactNative.Animated.View,{style:[hs.titleBar,{backgroundColor:n,opacity:r}]}),jsxRuntime.jsx(reactNative.Animated.View,{style:[hs.subtitleBar,{backgroundColor:n,opacity:r}]})]}),jsxRuntime.jsx(reactNative.View,{style:hs.rightIcons,children:Array.from({length:s}).map((a,l)=>jsxRuntime.jsx(reactNative.Animated.View,{style:[hs.rightIcon,{backgroundColor:n,opacity:r}]},l))})]});return jsxRuntime.jsxs(reactNative.View,{style:hs.container,children:[jsxRuntime.jsx(i,{rightIcons:3}),jsxRuntime.jsx(i,{rightIcons:2}),jsxRuntime.jsx(i,{rightIcons:0})]})}var hs=reactNative.StyleSheet.create({container:{paddingTop:8,paddingBottom:24,gap:8},card:{marginHorizontal:16,flexDirection:"row",alignItems:"center",paddingVertical:16,paddingHorizontal:12,gap:12},leftIcon:{width:36,height:36},textBlock:{flex:1,gap:6},titleBar:{height:12,width:"70%",borderRadius:6},subtitleBar:{height:10,width:"50%",borderRadius:5},rightIcons:{flexDirection:"row",alignItems:"center",gap:4},rightIcon:{width:20,height:20,borderRadius:10}});function vT({selected:e,onSelect:t}){let{colors:r,fonts:o,components:n}=L(),i=({tab:s,label:a,glyph:l})=>{let c=e===s,p=c?r.foreground:r.foregroundMuted;return jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:yc.item,activeOpacity:.8,onPress:()=>t(s),children:[c&&jsxRuntime.jsx(reactNative.View,{style:[reactNative.StyleSheet.absoluteFill,{backgroundColor:r.primary,opacity:.15,borderRadius:10}]}),jsxRuntime.jsx(reactNative.View,{style:[yc.badge,{backgroundColor:p}],children:jsxRuntime.jsx(reactNative.Text,{style:[yc.badgeGlyph,{color:r.background,fontFamily:o.semibold}],children:l})}),jsxRuntime.jsx(reactNative.Text,{style:[yc.label,{color:p,fontFamily:o.semibold}],children:a})]})};return jsxRuntime.jsxs(reactNative.View,{style:[yc.bar,{backgroundColor:n.depositMenu.card.backgroundColor}],children:[jsxRuntime.jsx(i,{tab:"crypto",label:In.tabs.crypto,glyph:"\u20BF"}),jsxRuntime.jsx(i,{tab:"cash",label:In.tabs.cash,glyph:"$"})]})}var yc=reactNative.StyleSheet.create({bar:{flexDirection:"row",borderRadius:12,padding:4,gap:4,marginHorizontal:16,marginBottom:8},item:{flex:1,flexDirection:"row",alignItems:"center",justifyContent:"center",gap:6,paddingVertical:10,borderRadius:10,overflow:"hidden"},badge:{width:20,height:20,borderRadius:10,alignItems:"center",justifyContent:"center"},badgeGlyph:{fontSize:11,fontWeight:"700",lineHeight:14,textAlign:"center",includeFontPadding:false},label:{fontSize:14}});function RT({visible:e,onClose:t,closeOnBackdropPress:r=false,externalUserId:o,publishableKey:n,modalTitle:i="Deposit",destinationTokenSymbol:s,recipientAddress:a,destinationChainType:l,destinationChainId:c,destinationTokenAddress:p,defaultChainType:h,defaultChainId:T,defaultTokenAddress:d,showBalance:m=false,hideDepositTracker:b,enableTransferCrypto:v,enableCashApp:x,enableConnectWallet:k,enableFiatOnramp:R,enableStripeLinkPay:w=false,StripeOnrampComponent:I,stripeOnrampEmail:f,stripeOnrampPhone:u,stripeMerchantIdentifier:S,stripePaymentSelectorPosition:y,stripeSkipSuccessConfirmation:F,stripeTheme:B,depositConfirmationMode:D="auto_ui",transferInputVariant:V="double_input",depositMenuDisplay:A="stacked",initialScreen:M="main",onDepositSuccess:Q,onDepositError:We,sheetBorderRadius:q}){let Ue=q?.globalBorderTopLeftRadius,J=q?.globalBorderTopRightRadius,{colors:ie,fonts:ee}=L(),[Z,ce]=Ss.useState([]),[U,Se]=Ss.useState(null),[st,Ee]=Ss.useState("amount"),[de,He]=Ss.useState(false),[Ve,$e]=Ss.useState(null),[mt,Ne]=Ss.useState(void 0),[qe,Le]=Ss.useState(false),[xe,ve]=Ss.useState(null),Xe=v??U?.transfer_crypto?.enabled??true,Qe=k??U?.connect_wallet?.enabled??false,at=x??U?.cash_app?.enabled??false,Xt=R??U?.fiat_onramp?.enabled??true,Be=b?false:U?.deposit_tracker?.enabled??true,Re=v??U?.transfer_crypto?.enabled??false,rt=k??U?.connect_wallet?.enabled??false,ct=x??U?.cash_app?.enabled??false,Oe=R??U?.fiat_onramp?.enabled??false,Ie=b?false:U?.deposit_tracker?.enabled??false,Pe=M==="tracker"&&Ie?"tracker":M==="transfer"&&Re?"transfer":M==="card"&&Oe?"card":M==="cashapp"&&ct?"cashapp":M==="wallet"&&rt?"wallet":"main",[Ut,Nt]=Ss.useState(Pe==="main"),[pe,Ke]=Ss.useState(Pe),[er,je]=Ss.useState("crypto"),{isAllowed:Vt,isLoading:et}=hc(n,e);Ss.useEffect(()=>{if(!e||U)return;let ge=false;return Ol(n).then(async xt=>{if(ge)return;let Ot=[];for(let Ar of xt?.transfer_crypto?.networks??[]){let eo=Ar.icon_urls.find(Io=>Io.format==="png")?.url||Ar.icon_urls.find(Io=>Io.format==="svg")?.url;eo&&Ot.push(ne(eo));}for(let Ar of xt?.payment_networks?.networks??[]){let eo=Ar.icon_urls.find(Io=>Io.format==="png")?.url||Ar.icon_urls.find(Io=>Io.format==="svg")?.url;eo&&Ot.push(ne(eo));}Ot.length>0&&await tc(Ot),ge||Se(xt);}).catch(console.error),()=>{ge=true;}},[e,U,n]);let be=()=>{t();},nt=Ss.useRef(false);Ss.useEffect(()=>{e&&!nt.current&&(Ke(Pe),Nt(Pe==="main"),Ee("amount"),Le(false),ve(null),je("crypto")),nt.current=e;},[e,Pe]),Ss.useEffect(()=>{if(!e||!U)return;let ge=M==="wallet"&&Qe?"wallet":M==="transfer"&&Xe?"transfer":M==="card"&&Xt?"card":M==="cashapp"&&at?"cashapp":M==="tracker"&&Be?"tracker":null;ge&&Ke(xt=>xt==="main"?ge:xt);},[e,U,M,Qe,Xe,Xt,at,Be]),Ss.useEffect(()=>{if(!U)return;(pe==="transfer"&&!Xe||pe==="card"&&!Xt||pe==="cashapp"&&!at||pe==="wallet"&&!Qe||pe==="tracker"&&!Be)&&(Ke("main"),Nt(true));},[U,pe,Xe,Xt,at,Qe,Be]);let K=Ss.useCallback(ge=>{ge.length!==0&&ce(xt=>{let Ot=new Map(xt.map(Ar=>[Ar.id,Ar]));for(let Ar of ge)Ot.set(Ar.id,Ar);return Array.from(Ot.values())});},[]),ue=Ss.useCallback(()=>{Le(false),ve(null),Ut?(Ke("main"),Ee("amount")):be();},[Ut,be]),_=Ss.useRef(reactNative.AppState.currentState==="active"),C=Ss.useRef(0);Ss.useEffect(()=>{if(reactNative.Platform.OS!=="android")return;let ge=reactNative.AppState.addEventListener("change",xt=>{xt==="active"&&!_.current&&(C.current=Date.now()),_.current=xt==="active";});return ()=>ge.remove()},[]);let O=Ss.useCallback(()=>{if(reactNative.Platform.OS==="android"){let ge=!_.current,xt=Date.now()-C.current<800;if(ge||xt)return}ue();},[ue]),N=Z.filter(ge=>ge.status==="pending"||ge.status==="waiting").length,j=!!(a&&l&&c&&p&&n)&&m!==false&&!!U,fe=Fl.includes(l)?l:void 0,Ge=et||e&&!U,W=Vt===false,E=null;if(pe==="stripe"&&I){let ge=jsxRuntime.jsx(I,{publishableKey:n,email:f,phone:u,externalUserId:o,recipientAddress:a??"",destinationChainType:l,destinationChainId:c,destinationTokenAddress:p,merchantIdentifier:S,paymentSelectorPosition:y,skipSuccessConfirmation:F,appName:U?.project_name??"",onClose:ue});E=B?jsxRuntime.jsx(pa,{...B,children:ge}):ge;}let tr=pe==="stripe"||pe==="transfer"||pe==="card"||pe==="cashapp"||pe==="wallet"?.9:pe==="tracker"?.6:pe==="main"?at||Qe?.6:.5:void 0,Fe=pe==="main"?.9:void 0,dt={main:q?.main,transfer:q?.transferCrypto,card:q?.buyWithCard,stripe:q?.stripeLinkPay,cashapp:q?.cashApp,wallet:q?.connectWallet,tracker:q?.depositsTracker}[pe],ot=dt?.borderTopLeftRadius??Ue,Je=dt?.borderTopRightRadius??J,Hr=jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[Ve&&jsxRuntime.jsx(uu,{visible:de,useModal:false,status:Ve.status,tokenIconUrl:Ve.destination_token_metadata?.icon_urls?.find(ge=>ge.format==="png")?.url||Ve.destination_token_metadata?.icon_url||mt,explorerUrl:Ve.explorer_url,completionExplorerUrl:Ve.destination_explorer_url,date:Ve.created_at?new Date(Ve.created_at):void 0,amountUsd:Ve.source_amount_usd?parseFloat(Ve.source_amount_usd):void 0,onClose:()=>He(false),heightProcessing:pe==="card"||pe==="wallet"?.35:void 0,heightCompleted:pe==="card"||pe==="wallet"?.41:void 0,heightCompletedExpanded:pe==="card"||pe==="wallet"?.53:void 0,borderTopLeftRadius:q?.depositStatus?.borderTopLeftRadius??Ue,borderTopRightRadius:q?.depositStatus?.borderTopRightRadius??J}),xe&&jsxRuntime.jsx(Sf,{visible:qe,useModal:false,onClose:()=>Le(false),priceImpact:xe.priceImpact,maxSlippage:xe.maxSlippage,minDepositUsd:xe.minDepositUsd,chainName:xe.chainName,borderTopLeftRadius:q?.infoSheet?.borderTopLeftRadius??Ue,borderTopRightRadius:q?.infoSheet?.borderTopRightRadius??J})]});return jsxRuntime.jsxs(Et,{visible:e,onClose:pe==="main"?be:O,closeOnBackdropPress:r,onBackdropPress:be,enablePanDownToClose:true,showHandle:true,heightPercent:tr,maxHeightPercent:Fe,borderTopLeftRadius:ot,borderTopRightRadius:Je,overlay:Hr,children:[pe==="main"&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(Gr,{title:i,showBack:false,onClose:be,showBalance:j,balanceAddress:a,balanceChainType:fe,balanceChainId:c,balanceTokenAddress:p,publishableKey:n,projectName:U?.project_name}),Ge&&jsxRuntime.jsx(xT,{}),!Ge&&W&&jsxRuntime.jsxs(reactNative.View,{style:Xr.centeredContainer,children:[jsxRuntime.jsx(reactNative.View,{style:[Xr.iconContainer,{backgroundColor:ie.cardHover}],children:jsxRuntime.jsx(vl,{size:32,color:ie.foreground,strokeWidth:1.5})}),jsxRuntime.jsx(reactNative.Text,{style:[Xr.blockedTitle,{color:ie.foreground,fontFamily:ee.semibold}],children:"No Tokens Available"}),jsxRuntime.jsx(reactNative.Text,{style:[Xr.blockedDescription,{color:ie.foreground,opacity:.7,fontFamily:ee.regular}],children:"There are no supported tokens available from your current location."})]}),!Ge&&!W&&(()=>{let ge=Xe?jsxRuntime.jsx(rc,{onPress:()=>Ke("transfer"),title:In.transferCrypto.title,subtitle:In.transferCrypto.subtitle,featuredTokens:U?.transfer_crypto?.networks},"transfer"):null,xt=Xt?jsxRuntime.jsx(nc,{onPress:()=>Ke("card"),title:In.depositWithCard.title,subtitle:In.depositWithCard.subtitle,paymentNetworks:U?.payment_networks?.networks},"card"):null,Ot=Qe?jsxRuntime.jsx(cc,{onPress:()=>Ke("wallet"),featuredWallets:U?.connect_wallet?.wallets},"wallet"):null,Ar=at?jsxRuntime.jsx(lc,{onPress:()=>Ke("cashapp")},"cashapp"):null,eo=w&&I?jsxRuntime.jsx(ac,{onPress:()=>Ke("stripe"),title:In.stripeLinkPay.title,subtitle:In.stripeLinkPay.subtitle},"stripe"):null,Io=Be?jsxRuntime.jsx(ic,{onPress:()=>Ke("tracker"),title:In.depositTracker.title,subtitle:In.depositTracker.subtitle,badge:N>0?N:void 0},"tracker"):null;return jsxRuntime.jsxs(reactNative.View,{style:Xr.optionsContainer,children:[A==="tabs"?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(vT,{selected:er,onSelect:je}),er==="crypto"?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[ge,Ot]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[xt,Ar,eo]})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[ge,Ot,xt,Ar,eo]}),Io]})})()]}),pe==="transfer"&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(Gr,{title:In.transferCrypto.title,showBack:false,onClose:ue,showBalance:j,balanceAddress:a,balanceChainType:fe,balanceChainId:c,balanceTokenAddress:p,publishableKey:n,projectName:U?.project_name}),et&&jsxRuntime.jsx(reactNative.View,{style:[Xr.centeredContainer,Xr.centeredFlex],children:jsxRuntime.jsx(reactNative.ActivityIndicator,{color:ie.primary})}),!et&&W&&jsxRuntime.jsxs(reactNative.View,{style:[Xr.centeredContainer,Xr.centeredFlex],children:[jsxRuntime.jsx(reactNative.View,{style:[Xr.iconContainer,{backgroundColor:ie.cardHover}],children:jsxRuntime.jsx(vl,{size:32,color:ie.foreground,strokeWidth:1.5})}),jsxRuntime.jsx(reactNative.Text,{style:[Xr.blockedTitle,{color:ie.foreground,fontFamily:ee.semibold}],children:"No Tokens Available"}),jsxRuntime.jsx(reactNative.Text,{style:[Xr.blockedDescription,{color:ie.foreground,opacity:.7,fontFamily:ee.regular}],children:"There are no supported tokens available from your current location."})]}),!et&&!W&&jsxRuntime.jsx(Lt,{style:Xr.transferScrollContainer,contentContainerStyle:V==="compact"?Xr.scrollContentCompact:Xr.scrollContent,showsVerticalScrollIndicator:false,children:V==="compact"?jsxRuntime.jsx(cu,{externalUserId:o,publishableKey:n,recipientAddress:a,destinationChainType:l,destinationChainId:c,destinationTokenAddress:p,destinationTokenSymbol:s,defaultChainType:h,defaultChainId:T,defaultTokenAddress:d,depositConfirmationMode:D,onExecutionsChange:K,onDepositSuccess:Q,onDepositError:We,onLatestExecution:$e,onShowStatusSheet:He,onSelectedTokenIconUrl:Ne,onShowInfoSheet:Le,onInfoSheetData:ve,borderTopLeftRadius:Ue,borderTopRightRadius:J,sheetBorderRadius:{tokenSelector:q?.tokenSelector,chainSelector:q?.chainSelector,infoSheet:q?.infoSheet,depositStatus:q?.depositStatus}}):V==="single_input"?jsxRuntime.jsx(wf,{externalUserId:o,publishableKey:n,recipientAddress:a,destinationChainType:l,destinationChainId:c,destinationTokenAddress:p,destinationTokenSymbol:s,defaultChainType:h,defaultChainId:T,defaultTokenAddress:d,depositConfirmationMode:D,onExecutionsChange:K,onDepositSuccess:Q,onDepositError:We,onLatestExecution:$e,onShowStatusSheet:He,onSelectedTokenIconUrl:Ne,borderTopLeftRadius:Ue,borderTopRightRadius:J,sheetBorderRadius:{tokenSelector:q?.tokenSelector,infoSheet:q?.infoSheet,depositStatus:q?.depositStatus}}):jsxRuntime.jsx(qd,{externalUserId:o,publishableKey:n,recipientAddress:a,destinationChainType:l,destinationChainId:c,destinationTokenAddress:p,destinationTokenSymbol:s,defaultChainType:h,defaultChainId:T,defaultTokenAddress:d,depositConfirmationMode:D,onExecutionsChange:K,onDepositSuccess:Q,onDepositError:We,onLatestExecution:$e,onShowStatusSheet:He,onSelectedTokenIconUrl:Ne,borderTopLeftRadius:Ue,borderTopRightRadius:J,sheetBorderRadius:{tokenSelector:q?.tokenSelector,chainSelector:q?.chainSelector,infoSheet:q?.infoSheet,depositStatus:q?.depositStatus}})})]}),pe==="card"&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(Gr,{title:`Deposit ${s||"USDC"}`,showBack:st==="onramp",onBack:()=>Ee("amount"),onClose:ue,showBalance:j,balanceAddress:a,balanceChainType:fe,balanceChainId:c,balanceTokenAddress:p,publishableKey:n,projectName:U?.project_name}),jsxRuntime.jsx(reactNative.View,{style:Xr.buyWithCardContainer,children:jsxRuntime.jsx(Zd,{externalUserId:o,publishableKey:n,destinationTokenSymbol:s,recipientAddress:a,destinationChainType:l,destinationChainId:c,destinationTokenAddress:p,onDepositSuccess:Q,onDepositError:We,onExecutionsChange:K,onLatestExecution:$e,onShowStatusSheet:He,onSelectedTokenIconUrl:Ne,view:st,onViewChange:ge=>Ee(ge),borderTopLeftRadius:Ue,borderTopRightRadius:J,sheetBorderRadius:{providerModal:q?.providerModal,webView:q?.webView,currencyModal:q?.currencyModal}})})]}),pe==="cashapp"&&jsxRuntime.jsx(reactNative.View,{style:Xr.cashAppContainer,children:jsxRuntime.jsx(Bd,{externalUserId:o,publishableKey:n,recipientAddress:a,destinationChainType:l,destinationChainId:c,destinationTokenAddress:p,onBack:ue,onClose:ue,onDepositSuccess:Q})}),pe==="wallet"&&jsxRuntime.jsx(reactNative.View,{style:Xr.connectWalletContainer,children:jsxRuntime.jsx(Nd,{externalUserId:o,publishableKey:n,recipientAddress:a,destinationChainType:l,destinationChainId:c,destinationTokenAddress:p,onBack:ue,onClose:ue,onDepositSuccess:Q,onDepositError:We,onExecutionsChange:K,onLatestExecution:$e,onShowStatusSheet:He})}),pe==="stripe"&&E&&jsxRuntime.jsx(reactNative.View,{style:Xr.stripeLinkPayContainer,children:E}),pe==="tracker"&&jsxRuntime.jsx(hf,{active:pe==="tracker",onClose:ue,executions:Z,externalUserId:o,publishableKey:n})]})}function hu({theme:e="auto",...t}){return jsxRuntime.jsx(RT,{...t})}var Xr=reactNative.StyleSheet.create({optionsContainer:{paddingTop:8,paddingBottom:24,gap:8},transferScrollContainer:{flex:1},scrollContent:{paddingBottom:24},scrollContentCompact:{flexGrow:1,paddingBottom:24},buyWithCardContainer:{flex:1},stripeLinkPayContainer:{flex:1},cashAppContainer:{flex:1},connectWalletContainer:{flex:1},centeredContainer:{alignItems:"center",justifyContent:"center",paddingVertical:48,paddingHorizontal:16,minHeight:200},centeredFlex:{flex:1},iconContainer:{width:64,height:64,borderRadius:32,alignItems:"center",justifyContent:"center",marginBottom:16},blockedTitle:{fontSize:18,fontWeight:"600",marginBottom:8,textAlign:"center"},blockedDescription:{fontSize:14,textAlign:"center",maxWidth:280,lineHeight:20}});var nl=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this);}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe();}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}};var Ys,ys,il,oy,_T=(oy=class extends nl{constructor(){super();re(this,Ys);re(this,ys);re(this,il);H(this,il,t=>{if(typeof window<"u"&&window.addEventListener){let r=()=>t();return window.addEventListener("visibilitychange",r,false),()=>{window.removeEventListener("visibilitychange",r);}}});}onSubscribe(){g(this,ys)||this.setEventListener(g(this,il));}onUnsubscribe(){var t;this.hasListeners()||((t=g(this,ys))==null||t.call(this),H(this,ys,void 0));}setEventListener(t){var r;H(this,il,t),(r=g(this,ys))==null||r.call(this),H(this,ys,t(o=>{typeof o=="boolean"?this.setFocused(o):this.onFocus();}));}setFocused(t){g(this,Ys)!==t&&(H(this,Ys,t),this.onFocus());}onFocus(){let t=this.isFocused();this.listeners.forEach(r=>{r(t);});}isFocused(){return typeof g(this,Ys)=="boolean"?g(this,Ys):globalThis.document?.visibilityState!=="hidden"}},Ys=new WeakMap,ys=new WeakMap,il=new WeakMap,oy),ny=new _T;var PT={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},ei,Js,iy,FT=(iy=class{constructor(){re(this,ei,PT);re(this,Js,false);}setTimeoutProvider(e){process.env.NODE_ENV!=="production"&&g(this,Js)&&e!==g(this,ei)&&console.error("[timeoutManager]: Switching provider after calls to previous provider might result in unexpected behavior.",{previous:g(this,ei),provider:e}),H(this,ei,e),process.env.NODE_ENV!=="production"&&H(this,Js,false);}setTimeout(e,t){return process.env.NODE_ENV!=="production"&&H(this,Js,true),g(this,ei).setTimeout(e,t)}clearTimeout(e){g(this,ei).clearTimeout(e);}setInterval(e,t){return process.env.NODE_ENV!=="production"&&H(this,Js,true),g(this,ei).setInterval(e,t)}clearInterval(e){g(this,ei).clearInterval(e);}},ei=new WeakMap,Js=new WeakMap,iy),bc=new FT;function sy(e){setTimeout(e,0);}var kf=typeof window>"u"||"Deno"in globalThis;function sl(){}function xf(e){return typeof e=="number"&&e>=0&&e!==1/0}function dy(e,t){return Math.max(e+(t||0)-Date.now(),0)}function al(e,t){return typeof e=="function"?e(t):e}function Go(e,t){return typeof e=="function"?e(t):e}var DT=Object.prototype.hasOwnProperty;function gu(e,t,r=0){if(e===t)return e;if(r>500)return t;let o=ay(e)&&ay(t);if(!o&&!(ly(e)&&ly(t)))return t;let i=(o?e:Object.keys(e)).length,s=o?t:Object.keys(t),a=s.length,l=o?new Array(a):{},c=0;for(let p=0;p<a;p++){let h=o?p:s[p],T=e[h],d=t[h];if(T===d){l[h]=T,(o?p<i:DT.call(e,h))&&c++;continue}if(T===null||d===null||typeof T!="object"||typeof d!="object"){l[h]=d;continue}let m=gu(T,d,r+1);l[h]=m,m===T&&c++;}return i===a&&c===i?e:l}function yu(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return false;for(let r in e)if(e[r]!==t[r])return false;return true}function ay(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function ly(e){if(!cy(e))return false;let t=e.constructor;if(t===void 0)return true;let r=t.prototype;return !(!cy(r)||!r.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(e)!==Object.prototype)}function cy(e){return Object.prototype.toString.call(e)==="[object Object]"}function vf(e,t,r){if(typeof r.structuralSharing=="function")return r.structuralSharing(e,t);if(r.structuralSharing!==false){if(process.env.NODE_ENV!=="production")try{return gu(e,t)}catch(o){throw console.error(`Structural sharing requires data to be JSON serializable. To fix this, turn off structuralSharing or return JSON-serializable data from your queryFn. [${r.queryHash}]: ${o}`),o}return gu(e,t)}return t}function bu(e,t){return typeof e=="function"?e(...t):!!e}var ll=(()=>{let e=()=>kf;return {isServer(){return e()},setIsServer(t){e=t;}}})();function Rf(){let e,t,r=new Promise((n,i)=>{e=n,t=i;});r.status="pending",r.catch(()=>{});function o(n){Object.assign(r,n),delete r.resolve,delete r.reject;}return r.resolve=n=>{o({status:"fulfilled",value:n}),e(n);},r.reject=n=>{o({status:"rejected",reason:n}),t(n);},r}var uy=sy;function VT(){let e=[],t=0,r=a=>{a();},o=a=>{a();},n=uy,i=a=>{t?e.push(a):n(()=>{r(a);});},s=()=>{let a=e;e=[],a.length&&n(()=>{o(()=>{a.forEach(l=>{r(l);});});});};return {batch:a=>{let l;t++;try{l=a();}finally{t--,t||s();}return l},batchCalls:a=>(...l)=>{i(()=>{a(...l);});},schedule:i,setNotifyFunction:a=>{r=a;},setBatchNotifyFunction:a=>{o=a;},setScheduler:a=>{n=a;}}}var Cc=VT();var cl,bs,dl,py,OT=(py=class extends nl{constructor(){super();re(this,cl,true);re(this,bs);re(this,dl);H(this,dl,t=>{if(typeof window<"u"&&window.addEventListener){let r=()=>t(true),o=()=>t(false);return window.addEventListener("online",r,false),window.addEventListener("offline",o,false),()=>{window.removeEventListener("online",r),window.removeEventListener("offline",o);}}});}onSubscribe(){g(this,bs)||this.setEventListener(g(this,dl));}onUnsubscribe(){var t;this.hasListeners()||((t=g(this,bs))==null||t.call(this),H(this,bs,void 0));}setEventListener(t){var r;H(this,dl,t),(r=g(this,bs))==null||r.call(this),H(this,bs,t(this.setOnline.bind(this)));}setOnline(t){g(this,cl)!==t&&(H(this,cl,t),this.listeners.forEach(o=>{o(t);}));}isOnline(){return g(this,cl)}},cl=new WeakMap,bs=new WeakMap,dl=new WeakMap,py),fy=new OT;function my(e){return (e??"online")==="online"?fy.isOnline():true}function hy(e,t){return {fetchFailureCount:0,fetchFailureReason:null,fetchStatus:my(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}var Wo,At,Sc,vo,Zs,ul,_i,Cs,Tc,pl,fl,Xs,ea,ws,ml,Zt,wc,If,_f,Pf,Ff,Df,Vf,Of,Cy,by,Bf=(by=class extends nl{constructor(t,r){super();re(this,Zt);re(this,Wo);re(this,At);re(this,Sc);re(this,vo);re(this,Zs);re(this,ul);re(this,_i);re(this,Cs);re(this,Tc);re(this,pl);re(this,fl);re(this,Xs);re(this,ea);re(this,ws);re(this,ml,new Set);this.options=r,H(this,Wo,t),H(this,Cs,null),H(this,_i,Rf()),this.bindMethods(),this.setOptions(r);}bindMethods(){this.refetch=this.refetch.bind(this);}onSubscribe(){this.listeners.size===1&&(g(this,At).addObserver(this),gy(g(this,At),this.options)?Ct(this,Zt,wc).call(this):this.updateResult(),Ct(this,Zt,Ff).call(this));}onUnsubscribe(){this.hasListeners()||this.destroy();}shouldFetchOnReconnect(){return Lf(g(this,At),this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return Lf(g(this,At),this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,Ct(this,Zt,Df).call(this),Ct(this,Zt,Vf).call(this),g(this,At).removeObserver(this);}setOptions(t){let r=this.options,o=g(this,At);if(this.options=g(this,Wo).defaultQueryOptions(t),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof Go(this.options.enabled,g(this,At))!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");Ct(this,Zt,Of).call(this),g(this,At).setOptions(this.options),r._defaulted&&!yu(this.options,r)&&g(this,Wo).getQueryCache().notify({type:"observerOptionsUpdated",query:g(this,At),observer:this});let n=this.hasListeners();n&&yy(g(this,At),o,this.options,r)&&Ct(this,Zt,wc).call(this),this.updateResult(),n&&(g(this,At)!==o||Go(this.options.enabled,g(this,At))!==Go(r.enabled,g(this,At))||al(this.options.staleTime,g(this,At))!==al(r.staleTime,g(this,At)))&&Ct(this,Zt,If).call(this);let i=Ct(this,Zt,_f).call(this);n&&(g(this,At)!==o||Go(this.options.enabled,g(this,At))!==Go(r.enabled,g(this,At))||i!==g(this,ws))&&Ct(this,Zt,Pf).call(this,i);}getOptimisticResult(t){let r=g(this,Wo).getQueryCache().build(g(this,Wo),t),o=this.createResult(r,t);return BT(this,o)&&(H(this,vo,o),H(this,ul,this.options),H(this,Zs,g(this,At).state)),o}getCurrentResult(){return g(this,vo)}trackResult(t,r){return new Proxy(t,{get:(o,n)=>(this.trackProp(n),r?.(n),n==="promise"&&(this.trackProp("data"),!this.options.experimental_prefetchInRender&&g(this,_i).status==="pending"&&g(this,_i).reject(new Error("experimental_prefetchInRender feature flag is not enabled"))),Reflect.get(o,n))})}trackProp(t){g(this,ml).add(t);}getCurrentQuery(){return g(this,At)}refetch({...t}={}){return this.fetch({...t})}fetchOptimistic(t){let r=g(this,Wo).defaultQueryOptions(t),o=g(this,Wo).getQueryCache().build(g(this,Wo),r);return o.fetch().then(()=>this.createResult(o,r))}fetch(t){return Ct(this,Zt,wc).call(this,{...t,cancelRefetch:t.cancelRefetch??true}).then(()=>(this.updateResult(),g(this,vo)))}createResult(t,r){let o=g(this,At),n=this.options,i=g(this,vo),s=g(this,Zs),a=g(this,ul),c=t!==o?t.state:g(this,Sc),{state:p}=t,h={...p},T=false,d;if(r._optimisticResults){let y=this.hasListeners(),F=!y&&gy(t,r),B=y&&yy(t,o,r,n);(F||B)&&(h={...h,...hy(p.data,t.options)}),r._optimisticResults==="isRestoring"&&(h.fetchStatus="idle");}let{error:m,errorUpdatedAt:b,status:v}=h;d=h.data;let x=false;if(r.placeholderData!==void 0&&d===void 0&&v==="pending"){let y;i?.isPlaceholderData&&r.placeholderData===a?.placeholderData?(y=i.data,x=true):y=typeof r.placeholderData=="function"?r.placeholderData(g(this,fl)?.state.data,g(this,fl)):r.placeholderData,y!==void 0&&(v="success",d=vf(i?.data,y,r),T=true);}if(r.select&&d!==void 0&&!x)if(i&&d===s?.data&&r.select===g(this,Tc))d=g(this,pl);else try{H(this,Tc,r.select),d=r.select(d),d=vf(i?.data,d,r),H(this,pl,d),H(this,Cs,null);}catch(y){H(this,Cs,y);}g(this,Cs)&&(m=g(this,Cs),d=g(this,pl),b=Date.now(),v="error");let k=h.fetchStatus==="fetching",R=v==="pending",w=v==="error",I=R&&k,f=d!==void 0,S={status:v,fetchStatus:h.fetchStatus,isPending:R,isSuccess:v==="success",isError:w,isInitialLoading:I,isLoading:I,data:d,dataUpdatedAt:h.dataUpdatedAt,error:m,errorUpdatedAt:b,failureCount:h.fetchFailureCount,failureReason:h.fetchFailureReason,errorUpdateCount:h.errorUpdateCount,isFetched:t.isFetched(),isFetchedAfterMount:h.dataUpdateCount>c.dataUpdateCount||h.errorUpdateCount>c.errorUpdateCount,isFetching:k,isRefetching:k&&!R,isLoadingError:w&&!f,isPaused:h.fetchStatus==="paused",isPlaceholderData:T,isRefetchError:w&&f,isStale:Af(t,r),refetch:this.refetch,promise:g(this,_i),isEnabled:Go(r.enabled,t)!==false};if(this.options.experimental_prefetchInRender){let y=S.data!==void 0,F=S.status==="error"&&!y,B=A=>{F?A.reject(S.error):y&&A.resolve(S.data);},D=()=>{let A=H(this,_i,S.promise=Rf());B(A);},V=g(this,_i);switch(V.status){case "pending":t.queryHash===o.queryHash&&B(V);break;case "fulfilled":(F||S.data!==V.value)&&D();break;case "rejected":(!F||S.error!==V.reason)&&D();break}}return S}updateResult(){let t=g(this,vo),r=this.createResult(g(this,At),this.options);if(H(this,Zs,g(this,At).state),H(this,ul,this.options),g(this,Zs).data!==void 0&&H(this,fl,g(this,At)),yu(r,t))return;H(this,vo,r);let o=()=>{if(!t)return true;let{notifyOnChangeProps:n}=this.options,i=typeof n=="function"?n():n;if(i==="all"||!i&&!g(this,ml).size)return true;let s=new Set(i??g(this,ml));return this.options.throwOnError&&s.add("error"),Object.keys(g(this,vo)).some(a=>{let l=a;return g(this,vo)[l]!==t[l]&&s.has(l)})};Ct(this,Zt,Cy).call(this,{listeners:o()});}onQueryUpdate(){this.updateResult(),this.hasListeners()&&Ct(this,Zt,Ff).call(this);}},Wo=new WeakMap,At=new WeakMap,Sc=new WeakMap,vo=new WeakMap,Zs=new WeakMap,ul=new WeakMap,_i=new WeakMap,Cs=new WeakMap,Tc=new WeakMap,pl=new WeakMap,fl=new WeakMap,Xs=new WeakMap,ea=new WeakMap,ws=new WeakMap,ml=new WeakMap,Zt=new WeakSet,wc=function(t){Ct(this,Zt,Of).call(this);let r=g(this,At).fetch(this.options,t);return t?.throwOnError||(r=r.catch(sl)),r},If=function(){Ct(this,Zt,Df).call(this);let t=al(this.options.staleTime,g(this,At));if(ll.isServer()||g(this,vo).isStale||!xf(t))return;let o=dy(g(this,vo).dataUpdatedAt,t)+1;H(this,Xs,bc.setTimeout(()=>{g(this,vo).isStale||this.updateResult();},o));},_f=function(){return (typeof this.options.refetchInterval=="function"?this.options.refetchInterval(g(this,At)):this.options.refetchInterval)??false},Pf=function(t){Ct(this,Zt,Vf).call(this),H(this,ws,t),!(ll.isServer()||Go(this.options.enabled,g(this,At))===false||!xf(g(this,ws))||g(this,ws)===0)&&H(this,ea,bc.setInterval(()=>{(this.options.refetchIntervalInBackground||ny.isFocused())&&Ct(this,Zt,wc).call(this);},g(this,ws)));},Ff=function(){Ct(this,Zt,If).call(this),Ct(this,Zt,Pf).call(this,Ct(this,Zt,_f).call(this));},Df=function(){g(this,Xs)!==void 0&&(bc.clearTimeout(g(this,Xs)),H(this,Xs,void 0));},Vf=function(){g(this,ea)!==void 0&&(bc.clearInterval(g(this,ea)),H(this,ea,void 0));},Of=function(){let t=g(this,Wo).getQueryCache().build(g(this,Wo),this.options);if(t===g(this,At))return;let r=g(this,At);H(this,At,t),H(this,Sc,t.state),this.hasListeners()&&(r?.removeObserver(this),t.addObserver(this));},Cy=function(t){Cc.batch(()=>{t.listeners&&this.listeners.forEach(r=>{r(g(this,vo));}),g(this,Wo).getQueryCache().notify({query:g(this,At),type:"observerResultsUpdated"});});},by);function LT(e,t){return Go(t.enabled,e)!==false&&e.state.data===void 0&&!(e.state.status==="error"&&Go(t.retryOnMount,e)===false)}function gy(e,t){return LT(e,t)||e.state.data!==void 0&&Lf(e,t,t.refetchOnMount)}function Lf(e,t,r){if(Go(t.enabled,e)!==false&&al(t.staleTime,e)!=="static"){let o=typeof r=="function"?r(e):r;return o==="always"||o!==false&&Af(e,t)}return false}function yy(e,t,r,o){return (e!==t||Go(o.enabled,e)===false)&&(!r.suspense||e.state.status!=="error")&&Af(e,r)}function Af(e,t){return Go(t.enabled,e)!==false&&e.isStaleByTime(al(t.staleTime,e))}function BT(e,t){return !yu(e.getCurrentResult(),t)}var AT=Ss__namespace.createContext(void 0),wy=e=>{let t=Ss__namespace.useContext(AT);if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t};var Sy=Ss__namespace.createContext(false),Ty=()=>Ss__namespace.useContext(Sy);Sy.Provider;function WT(){let e=false;return {clearReset:()=>{e=false;},reset:()=>{e=true;},isReset:()=>e}}var ET=Ss__namespace.createContext(WT()),ky=()=>Ss__namespace.useContext(ET);var vy=(e,t,r)=>{let o=r?.state.error&&typeof e.throwOnError=="function"?bu(e.throwOnError,[r.state.error,r]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||o)&&(t.isReset()||(e.retryOnMount=false));},Ry=e=>{Ss__namespace.useEffect(()=>{e.clearReset();},[e]);},Iy=({result:e,errorResetBoundary:t,throwOnError:r,query:o,suspense:n})=>e.isError&&!t.isReset()&&!e.isFetching&&o&&(n&&e.data===void 0||bu(r,[e.error,o]));var _y=e=>{if(e.suspense){let r=n=>n==="static"?n:Math.max(n??1e3,1e3),o=e.staleTime;e.staleTime=typeof o=="function"?(...n)=>r(o(...n)):r(o),typeof e.gcTime=="number"&&(e.gcTime=Math.max(e.gcTime,1e3));}},Py=(e,t)=>e.isLoading&&e.isFetching&&!t,Fy=(e,t)=>e?.suspense&&t.isPending,Wf=(e,t,r)=>t.fetchOptimistic(e).catch(()=>{r.clearReset();});function Dy(e,t,r){if(process.env.NODE_ENV!=="production"&&(typeof e!="object"||Array.isArray(e)))throw new Error('Bad argument type. Starting with v5, only the "Object" form is allowed when calling query related functions. Please use the error stack to find the culprit call. More info here: https://tanstack.com/query/latest/docs/react/guides/migrating-to-v5#supports-a-single-signature-one-object');let o=Ty(),n=ky(),i=wy(),s=i.defaultQueryOptions(e);i.getDefaultOptions().queries?._experimental_beforeQuery?.(s);let a=i.getQueryCache().get(s.queryHash);process.env.NODE_ENV!=="production"&&(s.queryFn||console.error(`[${s.queryHash}]: No queryFn was passed as an option, and no default queryFn was found. The queryFn parameter is only optional when using a default queryFn. More info here: https://tanstack.com/query/latest/docs/framework/react/guides/default-query-function`));let l=e.subscribed!==false;s._optimisticResults=o?"isRestoring":l?"optimistic":void 0,_y(s),vy(s,n,a),Ry(n);let c=!i.getQueryCache().get(s.queryHash),[p]=Ss__namespace.useState(()=>new t(i,s)),h=p.getOptimisticResult(s),T=!o&&l;if(Ss__namespace.useSyncExternalStore(Ss__namespace.useCallback(d=>{let m=T?p.subscribe(Cc.batchCalls(d)):sl;return p.updateResult(),m},[p,T]),()=>p.getCurrentResult(),()=>p.getCurrentResult()),Ss__namespace.useEffect(()=>{p.setOptions(s);},[s,p]),Fy(s,h))throw Wf(s,p,n);if(Iy({result:h,errorResetBoundary:n,throwOnError:s.throwOnError,query:a,suspense:s.suspense}))throw h.error;return i.getDefaultOptions().queries?._experimental_afterQuery?.(s,h),s.experimental_prefetchInRender&&!ll.isServer()&&Py(h,o)&&(c?Wf(s,p,n):a?.promise)?.catch(sl).finally(()=>{p.updateResult();}),s.notifyOnChangeProps?h:p.trackResult(h)}function Pi(e,t){return Dy(e,Bf)}function wu(e,t=true){return Pi({queryKey:["unifold","supportedDestinationTokens",e],queryFn:()=>Qc(e),staleTime:1e3*60*5,gcTime:1e3*60*30,refetchOnMount:false,enabled:t})}function Ef(e){let{sourceChainType:t,sourceChainId:r,sourceTokenAddress:o,sourceTokenSymbol:n,publishableKey:i,enabled:s=true}=e;return Pi({queryKey:["unifold","sourceTokenValidation",t??null,r??null,o??null,i],queryFn:async()=>{let l=await si(i),c=null,p=null,h=null,T=null,d,m,b,v=l.data.some(x=>x.chains.some(k=>{let R=k.chain_type===t&&k.chain_id===r&&k.token_address.toLowerCase()===o.toLowerCase();return R&&(c=k.minimum_deposit_amount_usd,p=k.estimated_processing_time,h=k.max_slippage_percent,T=k.estimated_price_impact_percent,b=k.chain_name,m=x),R}));if(m){let x=Me(m,"png");x&&(d=ne(x));}return {isSupported:v,minimumAmountUsd:c,estimatedProcessingTime:p,maxSlippagePercent:h,priceImpactPercent:T,errorMessage:v?null:`${n||"Source token"} is not a supported withdrawal token. Supported tokens include USDC, USDT, and other stablecoins.`,iconUrl:d,chainName:b}},enabled:s&&(!!t&&!!r&&!!o),staleTime:1e3*60*5,gcTime:1e3*60*30,refetchOnMount:false})}function Mf(e){let{address:t,chainType:r,chainId:o,tokenAddress:n,publishableKey:i,enabled:s=true}=e;return Pi({queryKey:["unifold","addressBalance",t??null,r??null,o??null,n??null,i],queryFn:async()=>{let l=await Kc(t,r,o,n,i);if(l.balance){let c=l.balance.token?.decimals??6,p=l.balance.token?.symbol??"",h=l.balance.amount,T=BigInt(h),d=BigInt(10**c),m=T/d,v=(T%d).toString().padStart(c,"0").replace(/0+$/,""),x=v?`${m}.${v}`:m.toString();return {balanceBaseUnit:h,balanceHuman:x,balanceUsd:l.balance.amount_usd,exchangeRate:l.balance.exchange_rate,decimals:c,symbol:p}}return {balanceBaseUnit:"0",balanceHuman:"0",balanceUsd:"0",exchangeRate:null,decimals:6,symbol:""}},enabled:s&&(!!t&&!!r&&!!o&&!!n),staleTime:1e3*30,gcTime:1e3*60*5,refetchInterval:1e3*30,refetchOnMount:"always"})}var MT=2500,zT=3e3,UT=6e4;function zf({userId:e,publishableKey:t,depositWalletId:r,enabled:o=false,onWithdrawSuccess:n,onWithdrawError:i}){let[s,a]=Ss.useState([]),[l,c]=Ss.useState(false),p=Ss.useRef(new Date),h=Ss.useRef(new Map),T=Ss.useRef(false),d=Ss.useRef(n),m=Ss.useRef(i);return Ss.useEffect(()=>{d.current=n;},[n]),Ss.useEffect(()=>{m.current=i;},[i]),Ss.useEffect(()=>{o&&!T.current&&(p.current=new Date,h.current.clear()),o||h.current.clear(),T.current=o;},[o]),Ss.useEffect(()=>{if(!e||!o)return;let b=p.current,v=async()=>{try{let k=await gn(e,t,"withdraw"),R=new Date(b.getTime()-UT),w=[...k.data].sort((S,y)=>{let F=S.created_at?new Date(S.created_at).getTime():0;return (y.created_at?new Date(y.created_at).getTime():0)-F}),I=["pending","waiting","delayed"],f=["succeeded","failed"],u=null;for(let S of w){let y=S.created_at?new Date(S.created_at):null;if(!y||y<R)continue;let F=h.current.get(S.id);if(!F){u=S;break}if(I.includes(F)&&f.includes(S.status)){u=S;break}}if(u){let S=u,y=S.created_at?new Date(S.created_at):null;if(!y||y<p.current)return;let F=h.current.get(S.id);h.current.set(S.id,S.status),a(B=>{let D=B.findIndex(V=>V.id===S.id);if(D>=0){let V=[...B];return V[D]=S,V}return [...B,S]}),S.status==="succeeded"&&(!F||I.includes(F))?d.current?.({message:"Withdrawal completed successfully",transaction:S}):S.status==="failed"&&F!=="failed"&&m.current?.({message:"Withdrawal failed",code:"WITHDRAW_FAILED",error:S});}}catch(k){console.error("Failed to fetch withdraw executions:",k),m.current?.({message:"Failed to fetch withdrawal status",code:"POLLING_ERROR",error:k});}};v();let x=setInterval(v,MT);return c(true),()=>{clearInterval(x),c(false);}},[e,t,o]),Ss.useEffect(()=>{if(!o||!r)return;let b=async()=>{try{await Yu({deposit_wallet_id:r},t);}catch{}};b();let v=setInterval(b,zT);return ()=>clearInterval(v)},[o,r,t]),{executions:s,isPolling:l}}var Uf=(e,t)=>`${t}:${e}`;function Ic({tokens:e,selectedTokenSymbol:t,selectedChainKey:r,onTokenChange:o,onChainChange:n,isLoading:i=false,tokenLabel:s="Receive token",chainLabel:a="Receive chain",tokenPickerBorderTopLeftRadius:l,tokenPickerBorderTopRightRadius:c,chainPickerBorderTopLeftRadius:p,chainPickerBorderTopRightRadius:h}){let{colors:T,fonts:d,components:m}=L(),[b,v]=Ss.useState(false),[x,k]=Ss.useState(false),R=m.card,w=t?e.find(S=>S.symbol===t):void 0,I=w?.chains||[],f=r?I.find(S=>Uf(S.chain_id,S.chain_type)===r):void 0,u={backgroundColor:R.backgroundColor,borderRadius:R.borderRadius,borderWidth:R.borderWidth||1,borderColor:R.borderColor};return jsxRuntime.jsxs(reactNative.View,{style:zt.row,children:[jsxRuntime.jsxs(reactNative.View,{style:zt.col,children:[jsxRuntime.jsx(reactNative.Text,{style:[zt.label,{color:R.labelColor,fontFamily:d.medium}],children:s}),jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[zt.selectButton,u],onPress:()=>!i&&e.length>0&&v(true),activeOpacity:.7,disabled:i||e.length===0,children:[i?jsxRuntime.jsx(reactNative.Text,{style:[zt.placeholder,{color:R.subtitleColor,fontFamily:d.regular}],children:"Loading..."}):w?jsxRuntime.jsxs(reactNative.View,{style:zt.selectedItem,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(w,"png"))},style:zt.icon}),jsxRuntime.jsx(reactNative.Text,{style:[zt.selectedText,{color:R.titleColor,fontFamily:d.medium}],numberOfLines:1,children:w.symbol})]}):jsxRuntime.jsx(reactNative.Text,{style:[zt.placeholder,{color:R.subtitleColor,fontFamily:d.regular}],children:"Select receive token"}),jsxRuntime.jsx(lr,{size:16,color:R.actionColor,strokeWidth:2})]})]}),jsxRuntime.jsxs(reactNative.View,{style:zt.col,children:[jsxRuntime.jsx(reactNative.Text,{style:[zt.label,{color:R.labelColor,fontFamily:d.medium}],children:a}),jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[zt.selectButton,u,(!w||I.length===0)&&zt.disabled],onPress:()=>!i&&w&&I.length>0&&k(true),activeOpacity:.7,disabled:i||!w||I.length===0,children:[f?jsxRuntime.jsxs(reactNative.View,{style:zt.selectedItem,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(f,"png"))},style:zt.icon}),jsxRuntime.jsx(reactNative.Text,{style:[zt.selectedText,{color:R.titleColor,fontFamily:d.medium}],numberOfLines:1,children:f.chain_name})]}):jsxRuntime.jsx(reactNative.Text,{style:[zt.placeholder,{color:R.subtitleColor,fontFamily:d.regular}],children:"Chain"}),jsxRuntime.jsx(lr,{size:16,color:R.actionColor,strokeWidth:2})]})]}),jsxRuntime.jsxs(Et,{visible:b,onClose:()=>v(false),closeOnBackdropPress:true,showHandle:true,heightPercent:.9,borderTopLeftRadius:l,borderTopRightRadius:c,children:[jsxRuntime.jsxs(reactNative.View,{style:zt.pickerHeader,children:[jsxRuntime.jsx(reactNative.View,{style:zt.pickerHeaderSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[zt.pickerTitle,{color:T.foreground,fontFamily:d.medium}],children:"Select Token"}),jsxRuntime.jsx(reactNative.TouchableOpacity,{style:zt.pickerHeaderClose,onPress:()=>v(false),hitSlop:{top:10,bottom:10,left:10,right:10},children:jsxRuntime.jsx(vt,{size:20,color:T.foregroundMuted,strokeWidth:2})})]}),jsxRuntime.jsx(fa,{data:e,keyExtractor:S=>S.symbol,contentContainerStyle:zt.listContent,showsVerticalScrollIndicator:false,renderItem:({item:S})=>jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[zt.pickerItem,{backgroundColor:S.symbol===t?T.cardHover:"transparent"}],onPress:()=>{o(S.symbol),v(false);},activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(S,"png"))},style:zt.pickerIcon}),jsxRuntime.jsx(reactNative.Text,{style:[zt.pickerItemText,{color:T.foreground,fontFamily:d.medium}],children:S.symbol}),jsxRuntime.jsx(reactNative.Text,{style:[zt.pickerItemSub,{color:T.foregroundMuted,fontFamily:d.regular}],children:S.name}),S.symbol===t&&jsxRuntime.jsx(ut,{size:18,color:T.primary,strokeWidth:2.5})]})})]}),jsxRuntime.jsxs(Et,{visible:x,onClose:()=>k(false),closeOnBackdropPress:true,showHandle:true,heightPercent:.9,borderTopLeftRadius:p,borderTopRightRadius:h,children:[jsxRuntime.jsxs(reactNative.View,{style:zt.pickerHeader,children:[jsxRuntime.jsx(reactNative.View,{style:zt.pickerHeaderSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[zt.pickerTitle,{color:T.foreground,fontFamily:d.medium}],children:"Select Chain"}),jsxRuntime.jsx(reactNative.TouchableOpacity,{style:zt.pickerHeaderClose,onPress:()=>k(false),hitSlop:{top:10,bottom:10,left:10,right:10},children:jsxRuntime.jsx(vt,{size:20,color:T.foregroundMuted,strokeWidth:2})})]}),jsxRuntime.jsx(fa,{data:I,keyExtractor:S=>Uf(S.chain_id,S.chain_type),contentContainerStyle:zt.listContent,showsVerticalScrollIndicator:false,renderItem:({item:S})=>{let y=Uf(S.chain_id,S.chain_type);return jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[zt.pickerItem,{backgroundColor:y===r?T.cardHover:"transparent"}],onPress:()=>{n(y),k(false);},activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(Me(S,"png"))},style:zt.pickerIcon}),jsxRuntime.jsx(reactNative.Text,{style:[zt.pickerItemText,{color:T.foreground,fontFamily:d.medium}],children:S.chain_name}),y===r&&jsxRuntime.jsx(ut,{size:18,color:T.primary,strokeWidth:2.5})]})}})]})]})}var zt=reactNative.StyleSheet.create({row:{flexDirection:"column",gap:10},col:{},label:{fontSize:12,marginBottom:6},selectButton:{flexDirection:"row",alignItems:"center",paddingHorizontal:12,paddingVertical:12,gap:6,minHeight:48},selectedItem:{flex:1,flexDirection:"row",alignItems:"center",gap:6},icon:{width:20,height:20,borderRadius:10},selectedText:{fontSize:13,flexShrink:1},placeholder:{flex:1,fontSize:13},disabled:{opacity:.4},pickerHeader:{flexDirection:"row",alignItems:"center",paddingHorizontal:16,paddingTop:16,paddingBottom:12},pickerHeaderSpacer:{width:28},pickerHeaderClose:{width:28,alignItems:"flex-end"},pickerTitle:{flex:1,fontSize:16,textAlign:"center"},listContent:{paddingHorizontal:16,paddingVertical:8},pickerItem:{flexDirection:"row",alignItems:"center",paddingVertical:12,paddingHorizontal:12,borderRadius:10,gap:10},pickerIcon:{width:32,height:32,borderRadius:16},pickerItemText:{fontSize:15,flex:1},pickerItemSub:{fontSize:13}});function Nf(e){let{chainType:t,chainId:r,tokenAddress:o,recipientAddress:n,publishableKey:i,enabled:s=true}=e,a=n?.trim()||"",l=!!t&&!!r&&!!o&&a.length>0;return Pi({queryKey:["unifold","verifyRecipientAddress",t??null,r??null,o??null,a,i],queryFn:()=>Gu({chain_type:t,chain_id:r,token_address:o,recipient_address:a},i),enabled:s&&l,staleTime:1e3*60*5,gcTime:1e3*60*30,retry:1,refetchOnMount:false})}function $T(e){if(e===null)return "< 1 min";let t=Math.ceil(e/60);return t<60?`< ${t} min`:`< ${Math.ceil(t/60)} hr`}function qT(e,t){if(e<=0)return "0";if(t===0)return BigInt(Math.round(e)).toString();let r=e.toFixed(t),[o,n=""]=r.split("."),i=n.padEnd(t,"0").slice(0,t);return (BigInt(o)*BigInt(10**t)+BigInt(i)).toString()}function QT(e,t){return e===0?"0":e.toFixed(t).replace(/\.?0+$/,"")}function Tu({publishableKey:e,sourceChainType:t,sourceChainId:r,sourceTokenAddress:o,sourceTokenSymbol:n,sourceChainName:i,sourceTokenIconUrl:s,recipientAddressProp:a,selectedToken:l,selectedChain:c,balanceData:p,isLoadingBalance:h,minimumWithdrawAmountUsd:T,estimatedProcessingTime:d,maxSlippagePercent:m,priceImpactPercent:b,canWithdraw:v,onDepositWalletCreation:x,onWithdraw:k,onWithdrawError:R,onWithdrawSubmitted:w,onViewTracker:I}){let f="https://unifold.io/terms",u="https://unifold.io/support",{colors:S,fonts:y,components:F}=L(),[B,D]=Ss.useState(a||""),[V,A]=Ss.useState(""),[M,Q]=Ss.useState(false),[We,q]=Ss.useState(null),[Ue,J]=Ss.useState(false),[ie,ee]=Ss.useState(""),Z=Ss.useRef(null);Ss.useEffect(()=>{D(a||""),A(""),q(null);},[a]);let ce=B.trim();Ss.useEffect(()=>{let Ie=setTimeout(()=>ee(ce),500);return ()=>clearTimeout(Ie)},[ce]);let{data:U,isLoading:Se,error:st}=Nf({chainType:c?.chain_type,chainId:c?.chain_id,tokenAddress:c?.token_address,recipientAddress:ie,publishableKey:e,enabled:ie.length>5&&!!c}),Ee=ce!==ie,de=Ss.useMemo(()=>!ce||ce.length<=5||Ee||Se?null:st?"Invalid address":U&&!U.valid?U.failure_code==="account_not_found"?`Account not found on ${c?.chain_name}`:U.failure_code==="not_opted_in"?`Recipient hasn't opted in to ${l?.symbol} on ${c?.chain_name}`:"Invalid address":null,[ce,Ee,Se,st,U,c,l]),He=!Ee&&!!U?.valid&&!de,Ve=Ss.useMemo(()=>p?.exchangeRate?parseFloat(p.exchangeRate):0,[p]),$e=Ss.useMemo(()=>p?.balanceHuman?parseFloat(p.balanceHuman):0,[p]),mt=n||p?.symbol||"TOKEN",Ne=p?.decimals??6,qe=Ss.useMemo(()=>{let Ie=parseFloat(V);return !Ie||Ie<=0?0:Ie},[V]),Le=Ss.useMemo(()=>{let Ie=parseFloat(V);return !Ie||Ie<=0?0:Ie*Ve},[V,Ve]),xe=Ss.useCallback(async()=>{try{let Pe=await Jy("expo-clipboard").getStringAsync();Pe&&(D(Pe.trim()),q(null));}catch{}},[]),ve=Ss.useCallback(()=>{$e<=0||A(p?.balanceHuman??"0");},[$e,p]),Xe=T!==null&&Le>0&&Le<T,Qe=qe>0&&$e>0&&qe>$e,at=ce.length>0&&V.trim().length>0&&qe>0&&He&&!Xe&&!Qe&&!!p,Xt=Ss.useCallback(async()=>{if(!(!l||!c||!at||!v)){Q(true),q(null);try{let Ie=await x({destinationChainType:c.chain_type,destinationChainId:c.chain_id,destinationTokenAddress:c.token_address,recipientAddress:ce}),Pe=qT(qe,Ne),Ut=QT(qe,Ne),Nt={sourceChainType:t,sourceChainId:r,sourceTokenAddress:o,sourceTokenSymbol:mt,sourceTokenIconUrl:s,destinationChainType:c.chain_type,destinationChainId:c.chain_id,destinationTokenAddress:c.token_address,destinationTokenSymbol:l.symbol,destinationChainName:c.chain_name,destinationTokenIconUrl:l?ne(Me(l,"png")):void 0,amount:Ut,amountBaseUnit:Pe,submittedAt:new Date,withdrawIntentAddress:Ie.address,recipientAddress:ce};await k(Nt),w(Nt);}catch(Ie){let Pe=Ie instanceof Error?Ie.message:"Withdrawal failed. Please try again.",Ut=Pe.length>120?"Withdrawal failed. Please try again.":Pe;q(Ut),R?.({message:Pe,error:Ie,code:"WITHDRAW_FAILED"});}finally{Q(false);}}},[l,c,at,v,ce,t,r,o,mt,s,V,$e,p,qe,Ne,Le,x,k,R,w]),Be=F.input,Re=F.card,rt=F.button,ct=de?S.error:Be.borderColor,Oe=Ss.useMemo(()=>M?"Processing...":Qe?"Insufficient balance":Xe?`Minimum $${T?.toFixed(2)}`:We?"Withdrawal failed \u2014 try again":"Withdraw",[M,Qe,Xe,T,We]);return jsxRuntime.jsxs(reactNative.View,{style:Wt.container,children:[jsxRuntime.jsxs(reactNative.View,{children:[jsxRuntime.jsxs(reactNative.View,{style:Wt.labelRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Wt.label,{color:Re.labelColor,fontFamily:y.medium}],children:"Recipient address"}),(Ee||Se)&&ce.length>5?jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"small",color:S.primary}):jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:xe,activeOpacity:.6,hitSlop:{top:8,bottom:8,left:8,right:8},children:jsxRuntime.jsx(em,{size:16,color:S.foregroundMuted,strokeWidth:1.75})})]}),jsxRuntime.jsx(reactNative.View,{style:[Wt.inputRow,{backgroundColor:Be.backgroundColor,borderRadius:Be.borderRadius,borderWidth:Be.borderWidth,borderColor:ct}],children:jsxRuntime.jsx(reactNative.TextInput,{style:[Wt.textInput,{color:Be.textColor,fontFamily:y.regular}],placeholder:"Enter wallet address",placeholderTextColor:Be.placeholderColor,value:B,onChangeText:Ie=>{D(Ie),q(null);},autoCapitalize:"none",autoCorrect:false,returnKeyType:"done",onSubmitEditing:()=>Z.current?.focus()})}),de?jsxRuntime.jsx(reactNative.Text,{style:[Wt.errorText,{color:S.error,fontFamily:y.regular}],children:de}):null]}),jsxRuntime.jsxs(reactNative.View,{children:[jsxRuntime.jsxs(reactNative.Text,{style:[Wt.label,{color:Re.labelColor,fontFamily:y.medium,paddingBottom:8}],children:["Amount",T!=null&&T>0&&jsxRuntime.jsx(reactNative.Text,{style:{color:S.warning,fontFamily:y.regular},children:` ($${T.toFixed(2)} min)`})]}),jsxRuntime.jsxs(reactNative.View,{style:[Wt.amountRow,{backgroundColor:Be.backgroundColor,borderRadius:Be.borderRadius,borderWidth:Be.borderWidth,borderColor:Be.borderColor}],children:[jsxRuntime.jsx(reactNative.TextInput,{ref:Z,style:[Wt.amountInput,{color:Be.textColor,fontFamily:y.regular}],placeholder:"0.00",placeholderTextColor:Be.placeholderColor,value:V,onChangeText:Ie=>{(Ie===""||/^\d*\.?\d*$/.test(Ie))&&(A(Ie),q(null));},keyboardType:"decimal-pad",returnKeyType:"done"}),jsxRuntime.jsx(reactNative.Text,{style:[Wt.unitLabel,{color:S.foregroundMuted,fontFamily:y.medium}],children:mt}),jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[Wt.maxButton,{backgroundColor:`${S.primary}20`}],onPress:ve,activeOpacity:.7,children:jsxRuntime.jsx(reactNative.Text,{style:[Wt.maxText,{color:S.primary,fontFamily:y.medium}],children:"Max"})})]})]}),jsxRuntime.jsxs(reactNative.View,{style:[Wt.detailsCard,{marginTop:24,backgroundColor:Re.backgroundColor,borderRadius:Re.borderRadius,borderWidth:Re.borderWidth||1,borderColor:Re.borderColor}],children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:Wt.detailsToggle,onPress:()=>J(!Ue),activeOpacity:.7,children:jsxRuntime.jsxs(reactNative.View,{style:Wt.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[Wt.detailIcon,{backgroundColor:Re.iconBackgroundColor,borderRadius:Re.iconContainerBorderRadius}],children:jsxRuntime.jsx(go,{size:12,color:Re.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[Wt.detailsLabel,{color:Re.titleColor,fontFamily:y.regular}],children:["Processing time:"," ",jsxRuntime.jsx(reactNative.Text,{style:{fontFamily:y.medium},children:$T(d)})]}),jsxRuntime.jsx(reactNative.View,{style:{transform:[{rotate:Ue?"180deg":"0deg"}]},children:jsxRuntime.jsx(lr,{size:16,color:Re.actionColor,strokeWidth:2})})]})}),Ue&&jsxRuntime.jsxs(reactNative.View,{style:Wt.detailsExpanded,children:[jsxRuntime.jsxs(reactNative.View,{style:Wt.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[Wt.detailIcon,{backgroundColor:Re.iconBackgroundColor,borderRadius:Re.iconContainerBorderRadius}],children:jsxRuntime.jsx(To,{size:12,color:Re.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[Wt.detailsLabel,{color:Re.titleColor,fontFamily:y.regular}],children:["Slippage:"," ",jsxRuntime.jsxs(reactNative.Text,{style:{fontFamily:y.medium},children:["Auto \u2022 ",(m??.25).toFixed(2),"%"]})]})]}),jsxRuntime.jsxs(reactNative.View,{style:Wt.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[Wt.detailIcon,{backgroundColor:Re.iconBackgroundColor,borderRadius:Re.iconContainerBorderRadius}],children:jsxRuntime.jsx(mn,{size:12,color:Re.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[Wt.detailsLabel,{color:Re.titleColor,fontFamily:y.regular}],children:["Price impact:"," ",jsxRuntime.jsxs(reactNative.Text,{style:{fontFamily:y.medium},children:[(b??0).toFixed(2),"%"]})]})]})]})]}),We&&jsxRuntime.jsx(reactNative.Text,{style:[Wt.errorText,{color:S.error,fontFamily:y.regular,textAlign:"center"}],children:We}),jsxRuntime.jsxs(reactNative.View,{style:Wt.withdrawRow,children:[jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[Wt.withdrawButton,{backgroundColor:rt.primaryBackground,borderRadius:rt.borderRadius,borderWidth:rt.borderWidth,borderColor:rt.borderColor,opacity:!at||!v||M?.5:1}],onPress:Xt,disabled:!at||!v||M,activeOpacity:.8,children:[M&&jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"small",color:rt.primaryText}),jsxRuntime.jsx(reactNative.Text,{style:[Wt.withdrawButtonText,{color:rt.primaryText,fontFamily:y.medium}],children:Oe})]}),jsxRuntime.jsxs(reactNative.View,{style:Wt.footerRow,children:[jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:Wt.historyLink,onPress:I,activeOpacity:.7,children:[jsxRuntime.jsx(go,{size:14,color:S.foregroundMuted,strokeWidth:2}),jsxRuntime.jsx(reactNative.Text,{style:[Wt.historyText,{color:S.foregroundMuted,fontFamily:y.regular}],children:"Withdrawal history"})]}),jsxRuntime.jsxs(reactNative.View,{style:Wt.legalLinks,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:()=>reactNative.Linking.openURL(f),activeOpacity:.7,children:jsxRuntime.jsx(reactNative.Text,{style:[Wt.legalText,{color:S.foregroundMuted,fontFamily:y.regular}],children:"Terms"})}),jsxRuntime.jsx(reactNative.Text,{style:[Wt.legalSeparator,{color:S.foregroundMuted,fontFamily:y.regular}],children:"|"}),jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:()=>reactNative.Linking.openURL(u),activeOpacity:.7,children:jsxRuntime.jsx(reactNative.Text,{style:[Wt.legalText,{color:S.foregroundMuted,fontFamily:y.regular}],children:"Help"})})]})]})]})]})}var Wt=reactNative.StyleSheet.create({container:{gap:12,paddingHorizontal:16,paddingBottom:16},label:{fontSize:12},labelRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",marginBottom:6},inputRow:{flexDirection:"row",alignItems:"center",paddingHorizontal:12,paddingVertical:6,minHeight:48},textInput:{flex:1,fontSize:14,paddingVertical:8},errorText:{fontSize:12,marginTop:4},amountRow:{flexDirection:"row",alignItems:"center",paddingHorizontal:12,paddingVertical:6,minHeight:48,gap:8},amountInput:{flex:1,fontSize:14,paddingVertical:8},unitLabel:{fontSize:14,flexShrink:0},maxButton:{paddingHorizontal:8,paddingVertical:4,borderRadius:6},maxText:{fontSize:12,fontWeight:"600"},withdrawRow:{gap:12},footerRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between"},historyLink:{flexDirection:"row",alignItems:"center",gap:6},historyText:{fontSize:13},legalLinks:{flexDirection:"row",alignItems:"center",gap:6},legalText:{fontSize:13},legalSeparator:{fontSize:13},detailsCard:{paddingHorizontal:12,overflow:"hidden"},detailsToggle:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:12},detailsRow:{flexDirection:"row",alignItems:"center",gap:8},detailIcon:{width:24,height:24,alignItems:"center",justifyContent:"center"},detailsLabel:{fontSize:13,flex:1},detailsExpanded:{gap:10,paddingBottom:12},withdrawButton:{flexDirection:"row",alignItems:"center",justifyContent:"center",paddingVertical:15,gap:8},withdrawButtonText:{fontSize:16,fontWeight:"600"}});function YT(e){try{let t=new Date(e);return t.toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})+" at "+t.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}catch{return e}}function JT(e){return e?`$${parseFloat(e).toFixed(2)}`:"$0.00"}function vu({execution:e,onPress:t}){let{colors:r,fonts:o,components:n}=L(),i=n.depositTracker.executionRow.card,s=e.status==="pending"||e.status==="waiting"||e.status==="delayed",a=e.status==="failed"||e.status==="refunded",l=a?r.error:s?r.warning:r.success,c=ne(Me(e.destination_token_metadata,"png")||rr("/icons/tokens/png/usdc.png")),p=a?"Withdrawal Failed":s?"Withdrawal Processing":"Withdrawal Completed",h=YT(e.created_at||new Date().toISOString()),T=JT(e.source_amount_usd);return jsxRuntime.jsxs(Or,{cardTokens:i,onPress:t,contentStyle:Di.container,children:[jsxRuntime.jsxs(reactNative.View,{style:Di.iconContainer,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:c},style:Di.tokenIcon}),jsxRuntime.jsx(reactNative.View,{style:[Di.statusBadge,{backgroundColor:l,borderColor:i.backgroundColor}],children:a?jsxRuntime.jsx(Wi,{size:12,color:"#FFFFFF",strokeWidth:2.5}):s?jsxRuntime.jsx(ua,{size:12,color:"#FFFFFF",strokeWidth:2.5}):jsxRuntime.jsx(ut,{size:12,color:"#FFFFFF",strokeWidth:3})})]}),jsxRuntime.jsxs(reactNative.View,{style:Di.textContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[Di.title,{color:i.titleColor,fontFamily:o.medium}],children:p}),jsxRuntime.jsx(reactNative.Text,{style:[Di.dateTime,{color:i.subtitleColor,fontFamily:o.regular}],children:h})]}),jsxRuntime.jsxs(reactNative.View,{style:Di.rightContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[Di.amount,{color:i.textRightColor,fontFamily:o.medium}],children:T}),jsxRuntime.jsx(Wr,{size:20,color:i.actionColor,strokeWidth:2})]})]})}var Di=reactNative.StyleSheet.create({container:{flexDirection:"row",alignItems:"center",paddingHorizontal:16,paddingVertical:12},iconContainer:{position:"relative",marginRight:12},tokenIcon:{width:40,height:40,borderRadius:20},statusBadge:{position:"absolute",bottom:-4,right:-4,width:22,height:22,borderRadius:11,alignItems:"center",justifyContent:"center",borderWidth:2},textContainer:{flex:1,gap:2},title:{fontSize:16},dateTime:{fontSize:13},rightContainer:{flexDirection:"row",alignItems:"center",gap:8},amount:{fontSize:16}});function $f(e){try{let t=new Date(e),o=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][t.getMonth()],n=t.getDate(),i=t.getFullYear(),s=t.getHours(),a=t.getMinutes(),l=s>=12?"PM":"AM";s=s%12||12;let c=a<10?`0${a}`:`${a}`;return `${o} ${n}, ${i} at ${s}:${c} ${l}`}catch{return e}}function Ny(e,t=6){if(!e)return "\u2014";try{let r=Number(e)/Math.pow(10,t);return r===0?"0.00":r>=1?r.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2}):r.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:8,minimumSignificantDigits:2,maximumSignificantDigits:6})}catch{return "0.00"}}function XT(e,t){if(e)try{return `$${Number(e).toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2})}`}catch{}if(t)try{return `$${(Number(t)/1e6).toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2})}`}catch{}return "$0.00"}function Hy(e){if(!e)return "";let t=e.indexOf(".");return t===-1?e.toUpperCase():e.slice(0,t).toUpperCase()+e.slice(t)}function jy(e){return !e||e.length<12?e:`${e.slice(0,12)}...${e.slice(-4)}`}function _c({label:e,value:t,isLast:r}){let{fonts:o,components:n}=L(),i=n.card;return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(reactNative.View,{style:kt.detailRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[kt.detailLabel,{color:i.subtitleColor,fontFamily:o.regular}],children:e}),jsxRuntime.jsx(reactNative.Text,{style:[kt.detailValue,{color:i.titleColor,fontFamily:o.regular}],children:t})]}),!r&&jsxRuntime.jsx(reactNative.View,{style:[kt.divider,{backgroundColor:i.borderColor}]})]})}function Qf({execution:e,txInfo:t,onClose:r,onViewHistory:o,onBack:n,onHeaderClose:i}){let{colors:s,fonts:a,components:l}=L(),[c,p]=Ss.useState([]),[h,T]=Ss.useState(!!n),d=l.card,m=l.button,b=l.header,v=l.container;Ss.useEffect(()=>{Ku().then(Q=>p(Q.data)).catch(()=>{});},[]),Ss.useEffect(()=>{T(!!n);},[e?.id]);let x=e?e.status==="pending"||e.status==="waiting"||e.status==="delayed":false,k=e?e.status==="failed"||e.status==="refunded":false,R=k?s.error:x?s.warning:s.success,w=k?"Failed":x?"Processing":"Completed",I=e?.destination_token_metadata?ne(Me(e.destination_token_metadata,"png")):t.destinationTokenIconUrl?ne(t.destinationTokenIconUrl):ne(rr("/icons/tokens/png/usdc.png")),f=e?.created_at?$f(e.created_at):t.submittedAt?$f(t.submittedAt.toISOString()):$f(new Date().toISOString()),u=e?`${Ny(e.source_amount_base_unit,e.source_token_metadata?.decimals)} ${Hy(e.source_currency)}`:`${t.amount} ${t.sourceTokenSymbol}`,S=e?`${Ny(e.destination_amount_base_unit,e.destination_token_metadata?.decimals)} ${Hy(e.destination_currency)}`:`${t.amount} ${t.destinationTokenSymbol}`,y=e?XT(e.source_amount_usd,e.source_amount_base_unit):"$0.00",F=e?qc(c,e.source_chain_type,e.source_chain_id):t.sourceChainId,B=e?qc(c,e.destination_chain_type,e.destination_chain_id):t.destinationChainName??t.destinationChainId,D=e?.transaction_hash,V=e?.explorer_url,A=e?.destination_transaction_hashes?.[0],M=e?.destination_explorer_url;return jsxRuntime.jsxs(Lt,{style:kt.scroll,contentContainerStyle:kt.container,showsVerticalScrollIndicator:false,children:[jsxRuntime.jsxs(reactNative.View,{style:kt.headerRow,children:[n?jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:n,hitSlop:{top:10,bottom:10,left:10,right:10},children:jsxRuntime.jsx(ca,{size:22,color:b.buttonColor,strokeWidth:2})}):jsxRuntime.jsx(reactNative.View,{style:kt.headerSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[kt.headerTitle,{color:b.titleColor,fontFamily:a.medium}],children:"Withdrawal Details"}),n?jsxRuntime.jsx(reactNative.View,{style:kt.headerSpacer}):jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:i??r,hitSlop:{top:10,bottom:10,left:10,right:10},children:jsxRuntime.jsx(vt,{size:20,color:b.buttonColor,strokeWidth:2})})]}),jsxRuntime.jsxs(reactNative.View,{style:kt.iconContainer,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:I},style:kt.tokenIcon}),jsxRuntime.jsx(reactNative.View,{style:[kt.statusBadge,{backgroundColor:R}],children:k?jsxRuntime.jsx(Wi,{size:10,color:"#FFFFFF",strokeWidth:3}):x?jsxRuntime.jsx(reactNative.View,{style:kt.spinnerDot}):jsxRuntime.jsx(ut,{size:10,color:"#FFFFFF",strokeWidth:3})})]}),jsxRuntime.jsxs(reactNative.View,{style:kt.statusRow,children:[jsxRuntime.jsx(reactNative.View,{style:[kt.statusDot,{backgroundColor:R}]}),jsxRuntime.jsx(reactNative.Text,{style:[kt.statusText,{color:R,fontFamily:a.medium}],children:w})]}),jsxRuntime.jsx(reactNative.Text,{style:[kt.dateText,{color:v.subtitleColor,fontFamily:a.regular}],children:f}),jsxRuntime.jsxs(reactNative.View,{style:[kt.detailsCard,{backgroundColor:d.backgroundColor,borderRadius:d.borderRadius,borderWidth:d.borderWidth??1,borderColor:d.borderColor}],children:[jsxRuntime.jsx(_c,{label:"Amount Sent",value:u}),jsxRuntime.jsx(_c,{label:"Amount Received",value:S}),jsxRuntime.jsx(_c,{label:"USD Value",value:y}),jsxRuntime.jsx(_c,{label:"Source Network",value:F}),jsxRuntime.jsx(_c,{label:"Destination Network",value:B,isLast:true})]}),jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:kt.moreDetailsRow,onPress:()=>T(Q=>!Q),activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[kt.moreDetailsText,{color:v.actionTitle,fontFamily:a.regular}],children:h?"See less":n?"See more":"See more details"}),h?jsxRuntime.jsx(Pn,{size:16,color:v.actionColor,strokeWidth:2}):jsxRuntime.jsx(lr,{size:16,color:v.actionColor,strokeWidth:2})]}),h&&jsxRuntime.jsx(reactNative.View,{style:[kt.detailsCard,{backgroundColor:d.backgroundColor,borderRadius:d.borderRadius,borderWidth:d.borderWidth??1,borderColor:d.borderColor}],children:D&&V?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:kt.txRow,onPress:()=>reactNative.Linking.openURL(V),activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[kt.txLabel,{color:d.subtitleColor,fontFamily:a.regular}],children:"Withdrawal Tx"}),jsxRuntime.jsx(reactNative.Text,{style:[kt.txHash,{color:d.titleColor,fontFamily:a.regular}],children:jy(D)}),jsxRuntime.jsx(Xo,{size:14,color:d.actionColor,strokeWidth:2})]}),!x&&A&&M&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(reactNative.View,{style:[kt.divider,{backgroundColor:d.borderColor}]}),jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:kt.txRow,onPress:()=>reactNative.Linking.openURL(M),activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[kt.txLabel,{color:d.subtitleColor,fontFamily:a.regular}],children:"Completion Tx"}),jsxRuntime.jsx(reactNative.Text,{style:[kt.txHash,{color:d.titleColor,fontFamily:a.regular}],children:jy(A)}),jsxRuntime.jsx(Xo,{size:14,color:d.actionColor,strokeWidth:2})]})]})]}):jsxRuntime.jsx(reactNative.View,{style:kt.detailRow,children:jsxRuntime.jsx(reactNative.Text,{style:[kt.detailLabel,{color:d.subtitleColor,fontFamily:a.regular}],children:"Transaction details not yet available"})})}),!n&&jsxRuntime.jsxs(reactNative.View,{style:kt.buttonRow,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[kt.button,kt.halfButton,{backgroundColor:m.secondaryBackground,borderRadius:m.borderRadius,borderWidth:m.borderWidth,borderColor:m.borderColor}],onPress:o,activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[kt.buttonText,{color:m.secondaryText,fontFamily:a.medium}],children:"Withdrawal History"})}),jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[kt.button,kt.halfButton,{backgroundColor:m.primaryBackground,borderRadius:m.borderRadius,borderWidth:m.borderWidth,borderColor:m.borderColor}],onPress:r,activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[kt.buttonText,{color:m.primaryText,fontFamily:a.medium}],children:"Close"})})]})]})}var kt=reactNative.StyleSheet.create({scroll:{flex:1},container:{alignItems:"center",paddingHorizontal:20,paddingTop:8,paddingBottom:32,gap:12},headerRow:{flexDirection:"row",alignItems:"center",width:"100%",paddingTop:16,marginBottom:4},headerSpacer:{width:28},headerTitle:{flex:1,fontSize:16,textAlign:"center"},iconContainer:{position:"relative",marginTop:8},tokenIcon:{width:64,height:64,borderRadius:32},statusBadge:{position:"absolute",bottom:-2,right:-2,width:22,height:22,borderRadius:11,alignItems:"center",justifyContent:"center"},spinnerDot:{width:10,height:10,borderRadius:5,borderWidth:2,borderColor:"#FFFFFF",borderTopColor:"transparent"},statusRow:{flexDirection:"row",alignItems:"center",gap:6},statusDot:{width:8,height:8,borderRadius:4},statusText:{fontSize:15},dateText:{fontSize:13,marginTop:-4},detailsCard:{width:"100%",paddingHorizontal:16,overflow:"hidden"},detailRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:12},detailLabel:{fontSize:13,flex:1},detailValue:{fontSize:13,flexShrink:0,maxWidth:"55%",textAlign:"right"},divider:{height:reactNative.StyleSheet.hairlineWidth,opacity:.5},moreDetailsRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",width:"100%",paddingHorizontal:4},moreDetailsText:{fontSize:14},txRow:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:12},txLabel:{fontSize:13},txHash:{fontSize:13,flex:1,textAlign:"right"},buttonRow:{flexDirection:"row",gap:10,width:"100%",marginTop:4},button:{paddingVertical:14,alignItems:"center",justifyContent:"center"},halfButton:{flex:1},fullButton:{width:"100%"},buttonText:{fontSize:14}});function $y(e){return e.length<=12?e:`${e.slice(0,6)}...${e.slice(-4)}`}function Ru({txInfo:e,executions:t,onClose:r,onViewTracker:o}){let{colors:n,fonts:i,components:s}=L(),a=t.length>0?t[t.length-1]:null,l=a?.status==="succeeded",c=a?.status==="failed",p={borderRadius:s.button.borderRadius,borderWidth:s.button.borderWidth,borderColor:s.button.borderColor};return l?jsxRuntime.jsxs(reactNative.View,{style:mr.container,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:mr.closeButton,onPress:r,children:jsxRuntime.jsx(vt,{size:20,color:s.header.buttonColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.View,{style:[mr.iconRing,{backgroundColor:n.successBackground}],children:jsxRuntime.jsx(ut,{size:32,color:n.success,strokeWidth:2.5})}),jsxRuntime.jsx(reactNative.Text,{style:[mr.title,{color:n.foreground,fontFamily:i.medium}],children:"Withdrawal Sent"}),jsxRuntime.jsxs(reactNative.Text,{style:[mr.subtitle,{color:n.foregroundMuted,fontFamily:i.regular}],children:[e.amount," ",e.sourceTokenSymbol," to"," ",$y(e.recipientAddress)]}),jsxRuntime.jsxs(reactNative.View,{style:mr.buttonRow,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[mr.button,mr.halfButton,p,{backgroundColor:s.button.secondaryBackground}],onPress:o,activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[mr.buttonText,{color:s.button.secondaryText,fontFamily:i.medium}],children:"History"})}),jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[mr.button,mr.halfButton,p,{backgroundColor:s.button.primaryBackground}],onPress:r,activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[mr.buttonText,{color:s.button.primaryText,fontFamily:i.medium}],children:"Close"})})]})]}):c?jsxRuntime.jsxs(reactNative.View,{style:mr.container,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:mr.closeButton,onPress:r,children:jsxRuntime.jsx(vt,{size:20,color:s.header.buttonColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.View,{style:[mr.iconRing,{backgroundColor:n.errorBackground}],children:jsxRuntime.jsx(vt,{size:32,color:n.error,strokeWidth:2.5})}),jsxRuntime.jsx(reactNative.Text,{style:[mr.title,{color:n.foreground,fontFamily:i.medium}],children:"Withdrawal Failed"}),jsxRuntime.jsx(reactNative.Text,{style:[mr.subtitle,{color:n.foregroundMuted,fontFamily:i.regular}],children:"Something went wrong. Please try again."}),jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[mr.button,mr.fullButton,p,{backgroundColor:s.button.primaryBackground}],onPress:r,activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[mr.buttonText,{color:s.button.primaryText,fontFamily:i.medium}],children:"Close"})})]}):jsxRuntime.jsxs(reactNative.View,{style:mr.container,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:mr.closeButton,onPress:r,children:jsxRuntime.jsx(vt,{size:20,color:s.header.buttonColor,strokeWidth:2})}),jsxRuntime.jsx(St,{size:80,strokeWidth:4,iconSize:68,gradientFrom:n.primary,gradientTo:n.primary,children:e.sourceTokenIconUrl?jsxRuntime.jsx(reactNative.Image,{source:{uri:ne(e.sourceTokenIconUrl)},style:mr.tokenIconFill}):jsxRuntime.jsx(reactNative.View,{style:[mr.tokenIconFill,{backgroundColor:n.cardHover}]})}),jsxRuntime.jsx(reactNative.Text,{style:[mr.title,{color:n.foreground,fontFamily:i.medium,paddingTop:16}],children:"Checking Withdrawal"}),jsxRuntime.jsxs(reactNative.Text,{style:[mr.subtitle,{color:n.foregroundMuted,fontFamily:i.regular}],children:[e.sourceTokenSymbol," to"," ",$y(e.recipientAddress)]})]})}var mr=reactNative.StyleSheet.create({container:{alignItems:"center",paddingHorizontal:24,paddingTop:48,paddingBottom:24},closeButton:{position:"absolute",top:16,right:16,padding:4,zIndex:1},iconRing:{width:80,height:80,borderRadius:40,alignItems:"center",justifyContent:"center",marginBottom:20},tokenIconFill:{width:"100%",height:"100%",borderRadius:34},title:{fontSize:20,marginBottom:8,textAlign:"center"},subtitle:{fontSize:14,textAlign:"center",lineHeight:20,marginBottom:24},buttonRow:{flexDirection:"row",gap:10,width:"100%"},button:{paddingVertical:14,alignItems:"center",justifyContent:"center",borderRadius:12},halfButton:{flex:1},fullButton:{width:"100%"},buttonText:{fontSize:15}});function ik(e){let t=e.source_token_metadata?.decimals??6,r=e.source_amount_base_unit??"0",o=Number(r)/Math.pow(10,t),n=o>=1?o.toFixed(2):o.toPrecision(4).replace(/\.?0+$/,"");return {sourceChainType:e.source_chain_type,sourceChainId:e.source_chain_id,sourceTokenAddress:e.source_token_address,sourceTokenSymbol:e.source_currency?.toUpperCase()??"",sourceTokenIconUrl:ne(Me(e.source_token_metadata,"png")),destinationChainType:e.destination_chain_type,destinationChainId:e.destination_chain_id,destinationTokenAddress:e.destination_token_address,destinationTokenSymbol:e.destination_currency?.toUpperCase()??"",destinationTokenIconUrl:ne(Me(e.destination_token_metadata,"png")),amount:n,amountBaseUnit:r,submittedAt:e.created_at?new Date(e.created_at):void 0,withdrawIntentAddress:e.deposit_wallet?.address??"",recipientAddress:e.recipient_address??""}}var qy=(e,t)=>`${t}:${e}`;function sk(){let{colors:e}=L(),t=Ss.useRef(new reactNative.Animated.Value(.5)).current,r=e.cardHover;return Ss.useEffect(()=>{let o=reactNative.Animated.loop(reactNative.Animated.sequence([reactNative.Animated.timing(t,{toValue:1,duration:800,useNativeDriver:true}),reactNative.Animated.timing(t,{toValue:.5,duration:800,useNativeDriver:true})]));return o.start(),()=>o.stop()},[t]),jsxRuntime.jsx(reactNative.View,{style:{gap:12,paddingHorizontal:16},children:[1,2,3].map(o=>jsxRuntime.jsx(reactNative.Animated.View,{style:{height:48,borderRadius:12,backgroundColor:r,opacity:t}},o))})}function Pu({visible:e,onClose:t,publishableKey:r,externalUserId:o,senderAddress:n,recipientAddress:i,defaultDestinationChainType:s,defaultDestinationChainId:a,defaultDestinationTokenAddress:l,modalTitle:c="Withdraw Crypto",onWithdraw:p,onWithdrawSuccess:h,onWithdrawError:T,heightPercent:d=.94,sheetBorderRadius:m,sourceChainType:b,sourceChainId:v,sourceTokenAddress:x,sourceTokenSymbol:k,sourceChainName:R,sourceTokenIconUrl:w}){let{colors:I,fonts:f}=L(),[u,S]=Ss.useState("form"),[y,F]=Ss.useState(b),[B,D]=Ss.useState(v),[V,A]=Ss.useState(x),[M,Q]=Ss.useState(k),[We,q]=Ss.useState(R),[Ue,J]=Ss.useState(w),[ie,ee]=Ss.useState(null),[Z,ce]=Ss.useState(null),[U,Se]=Ss.useState(null),[st,Ee]=Ss.useState(),[de,He]=Ss.useState([]),[Ve,$e]=Ss.useState(null),[mt,Ne]=Ss.useState("form"),qe=Ss.useRef(new reactNative.Animated.Value(reactNative.Dimensions.get("window").width)).current,Le=Ss.useRef(null),xe=!!y&&!!B&&!!V,{data:ve,isLoading:Xe}=wu(r,e&&u==="form"),Qe=ve?.data??[],{data:at,isLoading:Xt}=Ef({sourceChainType:y,sourceChainId:B,sourceTokenAddress:V,sourceTokenSymbol:M,publishableKey:r,enabled:e&&xe&&u==="form"}),Be=Fl.includes(y)?y:void 0,{data:Re,isLoading:rt}=Mf({address:n,chainType:Be,chainId:B,tokenAddress:V,publishableKey:r,enabled:e&&xe}),{executions:ct}=zf({userId:o,publishableKey:r,depositWalletId:st,enabled:!!st&&e,onWithdrawSuccess:h,onWithdrawError:T});Ss.useEffect(()=>{if(!e||u!=="tracker")return;let $=false;return gn(o,r,"withdraw").then(j=>{$||He(j.data);}).catch(console.error),()=>{$=true;}},[e,u,o,r]),Ss.useEffect(()=>{e&&(Le.current&&(clearTimeout(Le.current),Le.current=null),S("form"),F(b),D(v),A(x),Q(k),q(R),J(w),ee(null),ce(null),Se(null),Ee(void 0),He([]),$e(null),Ne("form"),qe.setValue(reactNative.Dimensions.get("window").width));},[e]),Ss.useEffect(()=>()=>{Le.current&&clearTimeout(Le.current);},[]),Ss.useEffect(()=>{Ue||at?.iconUrl&&J(at.iconUrl);},[at?.iconUrl,Ue]),Ss.useEffect(()=>{We||at?.chainName&&q(at.chainName);},[at?.chainName,We]),Ss.useEffect(()=>{if(!Qe.length||ie)return;let $,j;if(s&&a)if(l)for(let fe of Qe){let Ge=fe.chains.find(W=>W.chain_type===s&&W.chain_id===a&&W.token_address.toLowerCase()===l.toLowerCase());if(Ge){$=fe,j=Ge;break}}else for(let fe of Qe){let Ge=fe.chains.find(W=>W.chain_type===s&&W.chain_id===a);if(Ge){$=fe,j=Ge;break}}$||($=Qe[0]),$&&(ee($),ce(j??$.chains[0]??null));},[Qe,ie,s,a,l]),Ss.useEffect(()=>{u==="confirming"&&ct.length>0&&S("details");},[u,ct]);let Oe=Ss.useCallback(()=>{t(),Le.current=setTimeout(()=>{S("form"),F(b),D(v),A(x),Q(k),q(R),J(w),ee(null),ce(null),Se(null),Ee(void 0),He([]),$e(null),Ne("form"),Le.current=null;},300);},[t,b,v,x,k,R,w]),Ie=Ss.useCallback($=>{let j=Qe.find(fe=>fe.symbol===$);j&&(ee(j),j.chains.length>0&&ce(j.chains[0]));},[Qe]),Pe=Ss.useCallback($=>{if(!ie)return;let j=ie.chains.find(fe=>qy(fe.chain_id,fe.chain_type)===$);j&&ce(j);},[ie]),Ut=Ss.useCallback(async $=>{let j=await Uo({external_user_id:o,destination_chain_type:$.destinationChainType,destination_chain_id:$.destinationChainId,destination_token_address:$.destinationTokenAddress,recipient_address:$.recipientAddress,action_type:"withdraw"},r);if(!y)throw new Error("sourceChainType is required for withdrawal");let fe=_o(j.data,y);if(!fe)throw new Error(`No deposit wallet found for chain type: ${y}`);return Ee(fe.id),{id:fe.id,address:fe.address}},[o,r,y]),Nt=Ss.useCallback($=>{Se($),S("confirming");},[]),pe=Ss.useCallback($=>{$e($),qe.setValue(reactNative.Dimensions.get("window").width),reactNative.Animated.timing(qe,{toValue:0,duration:280,useNativeDriver:true}).start();},[qe]),Ke=Ss.useCallback(()=>{reactNative.Animated.timing(qe,{toValue:reactNative.Dimensions.get("window").width,duration:250,useNativeDriver:true}).start(()=>$e(null));},[qe]),er=Xe||Xt,je=at?.isSupported??null,Vt=u==="confirming"?"Withdrawal Status":c,et=m?.globalBorderTopLeftRadius,be=m?.globalBorderTopRightRadius,nt=m?.main?.borderTopLeftRadius??et,K=m?.main?.borderTopRightRadius??be,ue=m?.tokenSelector?.borderTopLeftRadius??et,_=m?.tokenSelector?.borderTopRightRadius??be,C=m?.chainSelector?.borderTopLeftRadius??et,O=m?.chainSelector?.borderTopRightRadius??be,N=(()=>{if(u!=="form"||!xe||rt||!Re)return;let $=M||Re.symbol,j=Re.balanceUsd;if(j!=null){let W=`$${parseFloat(j).toLocaleString(void 0,{minimumFractionDigits:2,maximumFractionDigits:2})}`;return $?`Balance: ${W} ${$}`:`Balance: ${W}`}let fe=Re.balanceHuman;if(!(!fe||fe==="0"))return $?`Balance: ${fe} ${$}`:`Balance: ${fe}`})();return jsxRuntime.jsx(Et,{visible:e,onClose:Oe,closeOnBackdropPress:false,enablePanDownToClose:u==="tracker"||u==="form",showHandle:u==="tracker"||u==="form",heightPercent:u==="confirming"?.3:u==="details"?.7:u==="tracker"?.9:d,borderTopLeftRadius:nt,borderTopRightRadius:K,children:u==="confirming"&&U?jsxRuntime.jsx(Ru,{txInfo:U,executions:ct,onClose:Oe,onViewTracker:()=>{Ne("confirming"),S("tracker");}}):u==="details"&&U?jsxRuntime.jsx(Qf,{execution:ct.length>0?ct[ct.length-1]:null,txInfo:U,onClose:Oe,onViewHistory:()=>{Ne("details"),S("tracker");},onHeaderClose:()=>S("form")}):u==="tracker"?jsxRuntime.jsxs(reactNative.View,{style:ti.trackerContainer,children:[jsxRuntime.jsx(Gr,{title:"Withdrawal History",onClose:()=>S(mt)}),de.length===0?jsxRuntime.jsx(reactNative.View,{style:ti.emptyState,children:jsxRuntime.jsx(reactNative.Text,{style:[ti.emptyText,{color:I.foregroundMuted,fontFamily:f.regular}],children:"No withdrawals to track yet"})}):jsxRuntime.jsx(fa,{data:de,keyExtractor:$=>$.id,contentContainerStyle:ti.listContent,showsVerticalScrollIndicator:false,renderItem:({item:$})=>jsxRuntime.jsx(vu,{execution:$,onPress:()=>pe($)})}),Ve&&jsxRuntime.jsx(reactNative.Animated.View,{style:[ti.historyDetailOverlay,{backgroundColor:I.background,transform:[{translateX:qe}]}],children:jsxRuntime.jsx(Qf,{execution:Ve,txInfo:ik(Ve),onClose:Oe,onBack:Ke,onViewHistory:Ke})})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(Gr,{title:Vt,subtitle:N,onClose:Oe}),er?jsxRuntime.jsx(sk,{}):je===false?jsxRuntime.jsxs(reactNative.View,{style:ti.unsupportedContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[ti.unsupportedTitle,{color:I.foreground,fontFamily:f.medium}],children:"Unsupported Token"}),jsxRuntime.jsx(reactNative.Text,{style:[ti.unsupportedMessage,{color:I.foregroundMuted,fontFamily:f.regular}],children:at?.errorMessage})]}):jsxRuntime.jsx(ak,{publishableKey:r,sourceChainType:y??"",sourceChainId:B??"",sourceTokenAddress:V??"",sourceTokenSymbol:M,sourceChainName:We,sourceTokenIconUrl:Ue,recipientAddressProp:i,destinationTokens:Qe,selectedToken:ie,selectedChain:Z,selectedChainKey:Z?qy(Z.chain_id,Z.chain_type):null,onTokenChange:Ie,onChainChange:Pe,tokensLoading:Xe,balanceData:Re??null,isLoadingBalance:rt,sourceValidation:at??null,onDepositWalletCreation:Ut,onWithdraw:p,onWithdrawError:T,onWithdrawSubmitted:Nt,onViewTracker:()=>{Ne("form"),S("tracker");},tokenSelectorLeft:ue,tokenSelectorRight:_,chainSelectorLeft:C,chainSelectorRight:O})]})})}function ak({publishableKey:e,sourceChainType:t,sourceChainId:r,sourceTokenAddress:o,sourceTokenSymbol:n,sourceChainName:i,sourceTokenIconUrl:s,recipientAddressProp:a,destinationTokens:l,selectedToken:c,selectedChain:p,selectedChainKey:h,onTokenChange:T,onChainChange:d,tokensLoading:m,balanceData:b,isLoadingBalance:v,sourceValidation:x,onDepositWalletCreation:k,onWithdraw:R,onWithdrawError:w,onWithdrawSubmitted:I,onViewTracker:f,tokenSelectorLeft:u,tokenSelectorRight:S,chainSelectorLeft:y,chainSelectorRight:F}){return jsxRuntime.jsx(reactNative.KeyboardAvoidingView,{behavior:reactNative.Platform.OS==="ios"?"padding":void 0,style:{flex:1},children:jsxRuntime.jsxs(Lt,{style:{flex:1,paddingTop:16},contentContainerStyle:ti.scrollContent,keyboardShouldPersistTaps:"handled",showsVerticalScrollIndicator:false,children:[jsxRuntime.jsx(reactNative.View,{style:ti.doubleInputWrapper,children:jsxRuntime.jsx(Ic,{tokens:l,selectedTokenSymbol:c?.symbol??null,selectedChainKey:h,onTokenChange:T,onChainChange:d,isLoading:m,tokenPickerBorderTopLeftRadius:u,tokenPickerBorderTopRightRadius:S,chainPickerBorderTopLeftRadius:y,chainPickerBorderTopRightRadius:F})}),jsxRuntime.jsx(Tu,{publishableKey:e,sourceChainType:t,sourceChainId:r,sourceTokenAddress:o,sourceTokenSymbol:n,sourceChainName:i,sourceTokenIconUrl:s,recipientAddressProp:a,selectedToken:c,selectedChain:p,balanceData:b,isLoadingBalance:v,minimumWithdrawAmountUsd:x?.minimumAmountUsd??null,estimatedProcessingTime:x?.estimatedProcessingTime??null,maxSlippagePercent:x?.maxSlippagePercent??null,priceImpactPercent:x?.priceImpactPercent??null,canWithdraw:true,onDepositWalletCreation:k,onWithdraw:R,onWithdrawError:w,onWithdrawSubmitted:I,onViewTracker:f})]})})}var ti=reactNative.StyleSheet.create({scrollContent:{paddingBottom:32},doubleInputWrapper:{paddingHorizontal:16,paddingBottom:12,paddingTop:4},listContent:{paddingHorizontal:16,paddingBottom:32,gap:8},trackerContainer:{flex:1,overflow:"hidden"},historyDetailOverlay:{position:"absolute",top:0,left:0,right:0,bottom:0},emptyState:{flex:1,alignItems:"center",justifyContent:"center",paddingVertical:48},emptyText:{fontSize:14},unsupportedContainer:{flex:1,alignItems:"center",justifyContent:"center",paddingHorizontal:24,paddingVertical:48},unsupportedTitle:{fontSize:18,fontWeight:"600",marginBottom:8,textAlign:"center"},unsupportedMessage:{fontSize:14,textAlign:"center",lineHeight:20,maxWidth:280}});reactNative.StyleSheet.create({container:{paddingHorizontal:16,paddingTop:16,paddingBottom:24,gap:16},fieldGroup:{gap:8},fieldLabel:{fontSize:12},walletCard:{paddingHorizontal:12,paddingVertical:12,minHeight:48,justifyContent:"center"},walletAddress:{fontSize:13},primaryButton:{paddingVertical:14,alignItems:"center",justifyContent:"center",marginTop:4},primaryButtonText:{fontSize:16},secondaryButton:{paddingVertical:14,alignItems:"center",justifyContent:"center"},secondaryButtonText:{fontSize:16}});reactNative.StyleSheet.create({base:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:8},text:{fontWeight:"600",textAlign:"center"},fullWidth:{width:"100%"},disabled:{opacity:.5}});reactNative.StyleSheet.create({icon:{backgroundColor:"transparent"}});var Gy=Ss.createContext(null);function yk({children:e,publishableKey:t,config:r}){let[o]=Ss.useState(()=>new Wp({defaultOptions:{queries:{retry:1,staleTime:3e5}}})),[n,i]=Ss.useState(false),[s,a]=Ss.useState(null),[l,c]=Ss.useState(false),[p,h]=Ss.useState(null),T=reactNative.useColorScheme(),d=Ss.useRef(false);d.current||(Nc({publishableKey:t}),d.current=true);let m=Ss.useMemo(()=>{let A=r?.appearance||"dark";return A==="auto"?T==="dark"?"dark":"light":A},[r?.appearance,T]);Ss.useEffect(()=>{if(!t||t.trim()===""){console.error("Unifold: publishableKey is required. Please provide a valid publishable key.");return}!t.startsWith("pk_test_")&&!t.startsWith("pk_live_")&&console.warn('Unifold: publishableKey should start with "pk_test_" or "pk_live_". Please ensure you are using a valid publishable key.'),Nc({publishableKey:t});},[t]),Ss.useEffect(()=>()=>{v.current&&clearTimeout(v.current),u.current&&clearTimeout(u.current);},[]);let b=Ss.useRef(null),v=Ss.useRef(null),x=Ss.useRef(void 0),k=Ss.useCallback(A=>{v.current&&(clearTimeout(v.current),v.current=null),b.current&&(console.warn("[UnifoldProvider] A deposit is already in progress. Cancelling previous deposit."),b.current.reject({message:"Deposit cancelled - new deposit started",code:"DEPOSIT_SUPERSEDED"}),b.current=null);let M=new Promise((Q,We)=>{b.current={resolve:Q,reject:We};});return x.current=A.onDismiss,a(A),i(true),M},[]),R=Ss.useCallback(()=>{let A=b.current!==null;b.current&&(b.current.reject({message:"Deposit cancelled by user",code:"DEPOSIT_CANCELLED"}),b.current=null);let M=x.current;x.current=void 0,i(false),v.current=setTimeout(()=>{a(null),v.current=null;},200),A&&M?.();},[]),w=Ss.useCallback(A=>{s?.onSuccess&&s.onSuccess(A),b.current&&(b.current.resolve(A),b.current=null);},[s]),I=Ss.useCallback(A=>{console.error("[UnifoldProvider] Deposit error:",A),s?.onError&&s.onError(A),b.current&&(b.current.reject(A),b.current=null);},[s]),f=Ss.useRef(null),u=Ss.useRef(null),S=Ss.useRef(void 0),y=Ss.useCallback(A=>{u.current&&(clearTimeout(u.current),u.current=null),f.current&&(console.warn("[UnifoldProvider] A withdrawal is already in progress. Cancelling previous withdrawal."),f.current.reject({message:"Withdrawal cancelled - new withdrawal started",code:"WITHDRAW_SUPERSEDED"}),f.current=null);let M=new Promise((Q,We)=>{f.current={resolve:Q,reject:We};});return S.current=A.onClose,h(A),c(true),M},[]),F=Ss.useCallback(()=>{f.current&&(f.current.reject({message:"Withdrawal cancelled by user",code:"WITHDRAW_CANCELLED"}),f.current=null),S.current?.(),S.current=void 0,c(false),u.current=setTimeout(()=>{h(null),u.current=null;},200);},[]),B=Ss.useCallback(A=>{p?.onSuccess&&p.onSuccess(A),f.current&&(f.current.resolve(A),f.current=null);},[p]),D=Ss.useCallback(A=>{console.error("[UnifoldProvider] Withdraw error:",A),p?.onError&&p.onError(A),f.current&&(f.current.reject(A),f.current=null);},[p]),V=Ss.useMemo(()=>({publishableKey:t,beginDeposit:k,closeDeposit:R,beginWithdraw:y,closeWithdraw:F}),[t,k,R,y,F]);return jsxRuntime.jsx(Ep,{client:o,children:jsxRuntime.jsx(Gy.Provider,{value:V,children:jsxRuntime.jsxs(pa,{mode:m,accentColor:r?.accentColor,theme:r?.theme,fontFamily:r?.fontFamily,fonts:r?.fonts,components:r?.components,children:[e,s&&jsxRuntime.jsx(hu,{visible:n,onClose:R,closeOnBackdropPress:s.closeOnBackdropPress??false,publishableKey:t,modalTitle:r?.modalTitle,externalUserId:s.externalUserId,destinationChainType:s.destinationChainType,destinationChainId:s.destinationChainId,destinationTokenSymbol:s.destinationTokenSymbol,recipientAddress:s.recipientAddress,destinationTokenAddress:s.destinationTokenAddress,defaultChainType:s.defaultChainType,defaultChainId:s.defaultChainId,defaultTokenAddress:s.defaultTokenAddress,showBalance:s.showBalance,stripeOnrampEmail:s.stripeOnrampEmail,stripeOnrampPhone:s.stripeOnrampPhone,stripeTheme:{mode:m,accentColor:r?.accentColor,theme:r?.theme,fontFamily:r?.fontFamily,fonts:r?.fonts,components:r?.components},depositConfirmationMode:s.depositConfirmationMode??"auto_ui",initialScreen:s.initialScreen,hideDepositTracker:r?.hideDepositTracker,transferInputVariant:r?.transferInputVariant,depositMenuDisplay:r?.depositMenuDisplay,enableStripeLinkPay:r?.enableStripeLinkPay,enableTransferCrypto:r?.enableTransferCrypto,enableCashApp:r?.enableCashApp,enableConnectWallet:r?.enableConnectWallet,enableFiatOnramp:r?.enableFiatOnramp,stripeMerchantIdentifier:r?.stripeMerchantIdentifier,stripePaymentSelectorPosition:r?.stripePaymentSelectorPosition,stripeSkipSuccessConfirmation:r?.stripeSkipSuccessConfirmation,StripeOnrampComponent:r?.enableStripeLinkPay?mh():void 0,onDepositSuccess:w,onDepositError:I,theme:m,sheetBorderRadius:r?.sheetBorderRadius}),p&&jsxRuntime.jsx(Pu,{visible:l,onClose:F,publishableKey:t,externalUserId:p.externalUserId,senderAddress:p.senderAddress,recipientAddress:p.recipientAddress,sourceChainType:p.sourceChainType,sourceChainId:p.sourceChainId,sourceTokenAddress:p.sourceTokenAddress,sourceTokenSymbol:p.sourceTokenSymbol,defaultDestinationChainType:p.defaultDestinationChainType,defaultDestinationChainId:p.defaultDestinationChainId,defaultDestinationTokenAddress:p.defaultDestinationTokenAddress,onWithdraw:p.withdraw,onWithdrawSuccess:B,onWithdrawError:D,sheetBorderRadius:r?.sheetBorderRadius?{globalBorderTopLeftRadius:r.sheetBorderRadius.globalBorderTopLeftRadius,globalBorderTopRightRadius:r.sheetBorderRadius.globalBorderTopRightRadius,tokenSelector:r.sheetBorderRadius.tokenSelector,chainSelector:r.sheetBorderRadius.chainSelector}:void 0})]})})})}function bk(){let e=Ss.useContext(Gy);if(!e)throw new Error("useUnifold must be used within UnifoldProvider");return e}
5
- exports.AmountScreen=ld;exports.BottomSheet=Et;exports.KYCWizardScreen=cd;exports.OnrampScreen=Cd;exports.StripeOnramp=wd;exports.StripeOnrampPreconfigure=ph;exports.UnifoldProvider=yk;exports.getPreferredIcon=Me;exports.getStripePublishableKey=od;exports.getSupportedDestinationTokens=Qc;exports.normalizeIconUrl=ne;exports.registerStripeOnramp=Sd;exports.setDevApiUrl=dm;exports.setStripeOnrampApiUrl=rd;exports.setStripeOnrampPublishableKey=td;exports.useAllowedCountry=hc;exports.useStripeOnramp=dd;exports.useTheme=L;exports.useUnifold=bk;
1
+ 'use strict';var ws=require('react'),reactNative=require('react-native'),ir=require('react-native-svg'),jsxRuntime=require('react/jsx-runtime'),reactNativeGestureHandler=require('react-native-gesture-handler'),im=require('react-native-reanimated'),stripeReactNative=require('@stripe/stripe-react-native'),Tp=require('@react-native-async-storage/async-storage'),bS=require('react-native-qrcode-svg/src/genMatrix'),reactNativeWebview=require('react-native-webview');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var ws__namespace=/*#__PURE__*/_interopNamespace(ws);var ir__default=/*#__PURE__*/_interopDefault(ir);var im__default=/*#__PURE__*/_interopDefault(im);var Tp__default=/*#__PURE__*/_interopDefault(Tp);var bS__default=/*#__PURE__*/_interopDefault(bS);var Kf=e=>{throw TypeError(e)};var Yy=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')});var Vu=(e,t,r)=>t.has(e)||Kf("Cannot "+r);var g=(e,t,r)=>(Vu(e,t,"read from private field"),r?r.call(e):t.get(e)),oe=(e,t,r)=>t.has(e)?Kf("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),j=(e,t,r,o)=>(Vu(e,t,"write to private field"),t.set(e,r),r),St=(e,t,r)=>(Vu(e,t,"access private method"),r);var Cl=(e,t,r,o)=>({set _(n){j(e,t,n);},get _(){return g(e,t,o)}});var Ou={light:{background:"#FFFFFF",card:"#F8FAFC",cardHover:"#F1F5F9",foreground:"#0F172A",foregroundMuted:"#64748B",foregroundSubtle:"#94A3B8",border:"#E2E8F0",borderSecondary:"#CBD5E1",primary:"#3B82F6",primaryForeground:"#FFFFFF",success:"#22C55E",successBackground:"#DCFCE7",warning:"#F59E0B",warningBackground:"#FEF3C7",error:"#EF4444",errorBackground:"#FEE2E2",overlay:"rgba(0, 0, 0, 0.5)"},dark:{background:"#2D2C2F",card:"#3A393C",cardHover:"#48474A",foreground:"#F8FAFC",foregroundMuted:"#94A3B8",foregroundSubtle:"#64748B",border:"#38383A",borderSecondary:"#48484A",primary:"#3B82F6",primaryForeground:"#FFFFFF",success:"#22C55E",successBackground:"rgba(34, 197, 94, 0.1)",warning:"#F59E0B",warningBackground:"rgba(245, 158, 11, 0.1)",error:"#EF4444",errorBackground:"rgba(239, 68, 68, 0.1)",overlay:"rgba(0, 0, 0, 0.7)"}},Lu=Ou;function Bc(e,t){return t?{...e,...t,shadowOffset:t.shadowOffset??e.shadowOffset,backShadowOffset:t.backShadowOffset??e.backShadowOffset}:e}function wl(e,t,r){let o=r?t?.[r]:void 0,n=(p,h,T)=>{let d=o?.[p]?.[h];if(d!==void 0)return d;let f=t?.[p]?.[h];return f!==void 0?f:T},s={backgroundColor:n("card","backgroundColor",e.card),titleColor:n("card","titleColor",e.foreground),subtitleColor:n("card","subtitleColor",e.foregroundMuted),labelColor:n("card","labelColor",e.foregroundMuted),headerColor:n("card","headerColor",e.foregroundMuted),labelRightColor:n("card","labelRightColor",e.foregroundMuted),labelHighlightRightColor:n("card","labelHighlightRightColor",e.warning),textRightColor:n("card","textRightColor",e.foreground),subtextRightColor:n("card","subtextRightColor",e.foregroundMuted),rowLeftLabel:n("card","rowLeftLabel",e.foregroundMuted),rowRightLabel:n("card","rowRightLabel",e.foreground),iconColor:n("card","iconColor",e.primary),iconBackgroundColor:n("card","iconBackgroundColor",e.primary+"26"),actionColor:n("card","actionColor",e.foregroundMuted),actionIcon:n("card","actionIcon",e.foregroundMuted),descriptionColor:n("card","descriptionColor",e.foregroundMuted),borderRadius:n("card","borderRadius",12),borderWidth:n("card","borderWidth",0),borderColor:n("card","borderColor",e.border),shadowColor:n("card","shadowColor","#000"),shadowOffset:n("card","shadowOffset",{width:0,height:-4}),shadowOpacity:n("card","shadowOpacity",0),shadowRadius:n("card","shadowRadius",12),elevation:n("card","elevation",0),iconContainerBorderRadius:n("card","iconContainerBorderRadius",12),backShadowColor:"transparent",backShadowOffset:{top:4,left:4,right:-4,bottom:-4},backShadowSpacing:8},i=(o?.depositMenu??t?.depositMenu)?.card,a=(o?.transferCrypto??t?.transferCrypto)?.depositAddress?.card,l=(o?.depositCard??t?.depositCard)?.quoteProvider?.card,c=(o?.depositTracker??t?.depositTracker)?.executionRow?.card;return {header:{titleColor:n("header","titleColor",e.foreground),buttonColor:n("header","buttonColor",e.foreground)},card:s,input:{backgroundColor:n("input","backgroundColor",n("search","backgroundColor",e.card)),textColor:n("input","textColor",n("search","inputColor",e.foreground)),placeholderColor:n("input","placeholderColor",n("search","placeholderColor",e.foregroundMuted)),borderColor:n("input","borderColor",e.border),borderRadius:n("input","borderRadius",n("search","borderRadius",8)),borderWidth:n("input","borderWidth",1)},button:{primaryBackground:n("button","primaryBackground",e.primary),primaryText:n("button","primaryText",e.primaryForeground),secondaryBackground:n("button","secondaryBackground",e.card),secondaryText:n("button","secondaryText",e.foreground),borderRadius:n("button","borderRadius",12),borderWidth:n("button","borderWidth",0),borderColor:n("button","borderColor",e.border)},container:{titleColor:n("container","titleColor",e.foreground),subtitleColor:n("container","subtitleColor",e.foregroundMuted),actionColor:n("container","actionColor",e.foregroundMuted),actionTitle:n("container","actionTitle",e.foregroundMuted),buttonColor:n("container","buttonColor",e.primary),buttonTitleColor:n("container","buttonTitleColor",e.primaryForeground),iconBackgroundColor:n("container","iconBackgroundColor",e.success),iconColor:n("container","iconColor",e.foreground)},search:{backgroundColor:n("search","backgroundColor",e.card),inputColor:n("search","inputColor",e.foreground),placeholderColor:n("search","placeholderColor",e.foregroundMuted),borderRadius:n("search","borderRadius",8)},list:{titleSectionColor:n("list","titleSectionColor",e.foregroundMuted),rowBorderRadius:n("list","rowBorderRadius",12)},badge:{borderRadius:n("badge","borderRadius",8)},sheet:{shadowColor:n("sheet","shadowColor","#000"),shadowOffset:n("sheet","shadowOffset",{width:0,height:-4}),shadowOpacity:n("sheet","shadowOpacity",.1),shadowRadius:n("sheet","shadowRadius",12),elevation:n("sheet","elevation",16)},depositMenu:{card:Bc(s,i)},transferCrypto:{depositAddress:{card:Bc(s,a)}},depositCard:{quoteProvider:{card:Bc(s,l)}},depositTracker:{executionRow:{card:Bc(s,c)}}}}function Bu(e,t,r){let n={...Ou[e]};return r&&(n.primary=r),t&&(n={...n,...t}),n}var Au=ws.createContext(null);function A(){let e=ws.useContext(Au);if(!e){let t=Lu.dark;return {mode:"dark",colors:t,fonts:{regular:void 0,medium:void 0,semibold:void 0,bold:void 0},components:wl(t,void 0,"dark"),isDark:true}}return e}function kt({size:e=56,strokeWidth:t=3,children:r,iconSize:o,style:n,gradientFrom:s,gradientTo:i}){let{colors:a}=A(),l=s??a.primary,c=i??a.primary,p=ws.useRef(new reactNative.Animated.Value(0)).current,h=ws.useId(),T=ws.useMemo(()=>`circularProgressGrad_${h.replace(/[^a-zA-Z0-9_-]/g,"")}`,[h]),d=(e-t)/2,f=2*Math.PI*d,C=e/2,v=o??Math.max(0,Math.round(e-t*2-8)),x=(e-v)/2;ws.useEffect(()=>{let R=reactNative.Animated.loop(reactNative.Animated.timing(p,{toValue:1,duration:1500,easing:reactNative.Easing.linear,useNativeDriver:true})),w=requestAnimationFrame(()=>R.start());return ()=>{cancelAnimationFrame(w),R.stop();}},[p]);let k=p.interpolate({inputRange:[0,1],outputRange:["0deg","360deg"]});return jsxRuntime.jsxs(reactNative.View,{style:[{width:e,height:e},n],children:[jsxRuntime.jsx(reactNative.Animated.View,{style:{position:"absolute",top:0,left:0,width:e,height:e,transform:[{rotate:k}]},children:jsxRuntime.jsxs(ir__default.default,{width:e,height:e,children:[jsxRuntime.jsx(ir.Defs,{children:jsxRuntime.jsxs(ir.LinearGradient,{id:T,x1:"0%",y1:"0%",x2:"100%",y2:"0%",children:[jsxRuntime.jsx(ir.Stop,{offset:"0%",stopColor:l}),jsxRuntime.jsx(ir.Stop,{offset:"100%",stopColor:c})]})}),jsxRuntime.jsx(ir.Circle,{cx:C,cy:C,r:d,stroke:`url(#${T})`,strokeWidth:t,fill:"none",strokeDasharray:`${f*.75} ${f*.25}`,strokeLinecap:"round",rotation:-90,origin:`${C}, ${C}`})]})}),r!=null?jsxRuntime.jsx(reactNative.View,{style:{position:"absolute",top:x+1.5,left:x,width:v,height:v,alignItems:"center",justifyContent:"center"},children:r}):null]})}function Eu({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:jsxRuntime.jsx(ir.Path,{d:"M13 2L3 14h9l-1 8 10-12h-9l1-8z",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})})}function sa({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Rect,{x:"1",y:"4",width:"22",height:"16",rx:"2",ry:"2",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"1",y1:"10",x2:"23",y2:"10",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function ho({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Circle,{cx:"12",cy:"12",r:"10",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Polyline,{points:"12 6 12 12 16 14",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function Sl({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Line,{x1:"19",y1:"12",x2:"5",y2:"12",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Polyline,{points:"12 19 5 12 12 5",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function Rt({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Line,{x1:"18",y1:"6",x2:"6",y2:"18",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"6",y1:"6",x2:"18",y2:"18",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function Wr({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:jsxRuntime.jsx(ir.Polyline,{points:"9 18 15 12 9 6",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})})}function aa({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:jsxRuntime.jsx(ir.Polyline,{points:"15 18 9 12 15 6",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})})}function lr({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:jsxRuntime.jsx(ir.Polyline,{points:"6 9 12 15 18 9",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})})}function un({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Rect,{x:"9",y:"9",width:"13",height:"13",rx:"2",ry:"2",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function dt({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:jsxRuntime.jsx(ir.Polyline,{points:"20 6 9 17 4 12",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})})}function Ai({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Circle,{cx:"12",cy:"12",r:"10",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"12",y1:"8",x2:"12",y2:"12",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"12",y1:"16",x2:"12.01",y2:"16",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function Tl({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Line,{x1:"12",y1:"2",x2:"12",y2:"6",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"12",y1:"18",x2:"12",y2:"22",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"4.93",y1:"4.93",x2:"7.76",y2:"7.76",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"16.24",y1:"16.24",x2:"19.07",y2:"19.07",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"2",y1:"12",x2:"6",y2:"12",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"18",y1:"12",x2:"22",y2:"12",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"4.93",y1:"19.07",x2:"7.76",y2:"16.24",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"16.24",y1:"7.76",x2:"19.07",y2:"4.93",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function Jo({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Polyline,{points:"15 3 21 3 21 9",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"10",y1:"14",x2:"21",y2:"3",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function pn({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Line,{x1:"12",y1:"1",x2:"12",y2:"23",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function la({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Polyline,{points:"14 2 14 8 20 8",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"16",y1:"13",x2:"8",y2:"13",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"16",y1:"17",x2:"8",y2:"17",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Polyline,{points:"10 9 9 9 8 9",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function _n({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:jsxRuntime.jsx(ir.Polyline,{points:"18 15 12 9 6 15",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})})}function ca({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Polyline,{points:"23 4 23 10 17 10",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Polyline,{points:"1 20 1 14 7 14",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function fn({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Circle,{cx:"12",cy:"12",r:"10",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"12",y1:"16",x2:"12",y2:"12",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"12",y1:"8",x2:"12.01",y2:"8",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function So({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M9 12l2 2 4-4",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function Wc({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M3 7V5a2 2 0 0 1 2-2h2",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M17 3h2a2 2 0 0 1 2 2v2",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M21 17v2a2 2 0 0 1-2 2h-2",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M7 21H5a2 2 0 0 1-2-2v-2",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M8 14s1.5 2 4 2 4-2 4-2",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M9 9h.01",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M15 9h.01",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function kl({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M5.43 5.43A8.06 8.06 0 0 0 4 10c0 6 8 12 8 12a29.94 29.94 0 0 0 5-5",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M19.18 13.52A8.66 8.66 0 0 0 20 10a8 8 0 0 0-8-8 7.88 7.88 0 0 0-3.52.82",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M9.13 9.13A2.78 2.78 0 0 0 9 10a3 3 0 0 0 3 3 2.78 2.78 0 0 0 .87-.13",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M14.9 9.25a3 3 0 0 0-2.15-2.16",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:"2",y1:"2",x2:"22",y2:"22",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function Zf({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M15 2H9a1 1 0 0 0-1 1v2c0 .6.4 1 1 1h6c.6 0 1-.4 1-1V3c0-.6-.4-1-1-1Z",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2M16 4h2a2 2 0 0 1 2 2v2",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M11 14h10",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M17 10l4 4-4 4",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function Xf({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Circle,{cx:12,cy:5,r:1,stroke:t,strokeWidth:r,fill:t}),jsxRuntime.jsx(ir.Circle,{cx:12,cy:12,r:1,stroke:t,strokeWidth:r,fill:t}),jsxRuntime.jsx(ir.Circle,{cx:12,cy:19,r:1,stroke:t,strokeWidth:r,fill:t})]})}function em({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Polyline,{points:"16 17 21 12 16 7",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Line,{x1:21,y1:12,x2:9,y2:12,stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function tm({size:e=24,color:t="#fff",strokeWidth:r=2}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M21 12V7H5a2 2 0 0 1 0-4h14v4",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M3 5v14a2 2 0 0 0 2 2h16v-5",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"}),jsxRuntime.jsx(ir.Path,{d:"M18 12a2 2 0 0 0 0 4h4v-4h-4z",stroke:t,strokeWidth:r,strokeLinecap:"round",strokeLinejoin:"round"})]})}function rm({height:e=24,color:t="#011e0f"}){let o=e*2.985416666666667;return jsxRuntime.jsxs(ir__default.default,{width:o,height:e,viewBox:"0 0 71.65 24",fill:"none",children:[jsxRuntime.jsx(ir.Path,{d:"M36.12,3.68c0-1.13.95-2.04,2.07-2.04s2.07.92,2.07,2.04-.92,2.07-2.07,2.07-2.07-.92-2.07-2.07ZM29.98,1.92h3.6v20.16h-3.6s0-20.16,0-20.16ZM40.01,7.68h-3.63v14.4h3.63V7.68ZM66.1,14.39c2.73-1.68,4.59-4.18,5.32-6.72h-3.63c-.95,2.42-3.12,4.24-5.5,5.01V1.92h-3.63v20.16h3.63v-6c2.77.69,4.96,3.09,5.71,6h3.65c-.56-3.05-2.64-5.91-5.55-7.68ZM46.44,9.29c.95-1.26,2.8-2,4.31-2,2.8,0,5.12,2.05,5.13,5.15v9.63h-3.63v-8.83c0-1.27-.57-2.74-2.4-2.74-2.16,0-3.4,1.92-3.4,4.16v7.43h-3.63V7.69h3.63v1.6Z",fill:t}),jsxRuntime.jsx(ir.Circle,{cx:12,cy:12,r:12,fill:"#00d66f"}),jsxRuntime.jsx(ir.Path,{d:"M11.45,4.8h-3.7c.72,3.01,2.82,5.58,5.45,7.2-2.64,1.62-4.73,4.19-5.45,7.2h3.7c.92-2.78,3.46-5.2,6.58-5.7v-3.01c-3.12-.49-5.66-2.91-6.58-5.69Z",fill:"#011e0f"})]})}function om({size:e=24}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",fill:"none",children:[jsxRuntime.jsx(ir.Circle,{cx:12,cy:12,r:12,fill:"#00d66f"}),jsxRuntime.jsx(ir.Path,{d:"M11.45,4.8h-3.7c.72,3.01,2.82,5.58,5.45,7.2-2.64,1.62-4.73,4.19-5.45,7.2h3.7c.92-2.78,3.46-5.2,6.58-5.7v-3.01c-3.12-.49-5.66-2.91-6.58-5.69Z",fill:"#011e0f"})]})}function da({children:e,mode:t="auto",accentColor:r,theme:o,fontFamily:n,fonts:s,components:i}){let a=reactNative.useColorScheme(),l=ws.useMemo(()=>t==="auto"?a==="dark"?"dark":"light":t,[t,a]),c=ws.useMemo(()=>{let d=o?.[l];return Bu(l,d,r)},[l,o,r]),p=ws.useMemo(()=>wl(c,i,l),[c,i,l]),h=ws.useMemo(()=>s?{regular:s.regular||n,medium:s.medium||n,semibold:s.semibold||n,bold:s.bold||n}:n?{regular:n,medium:n,semibold:n,bold:n}:{regular:void 0,medium:void 0,semibold:void 0,bold:void 0},[n,s]),T=ws.useMemo(()=>({mode:l,colors:c,fonts:h,components:p,isDark:l==="dark"}),[l,c,h,p]);return jsxRuntime.jsx(Au.Provider,{value:T,children:e})}var _l={damping:28,stiffness:300,mass:.8},vb=80,Rb=500;function zt({visible:e,onClose:t,children:r,closeOnBackdropPress:o=true,onBackdropPress:n,enablePanDownToClose:s=true,showHandle:i=true,heightPercent:a,maxHeightPercent:l,startExpanded:c=false,noPadding:p=false,borderTopLeftRadius:h=24,borderTopRightRadius:T=24,marginHorizontal:d,marginBottom:f,overlay:C,useModal:v=true}){let{colors:x}=A(),{height:k}=reactNative.useWindowDimensions(),R=ws.useRef(k);k>R.current&&(R.current=k);let w=reactNative.Platform.OS==="android"?R.current:k,[_,m]=ws.useState(false),u=ws.useRef(e);u.current=e;let S=ws.useRef(0),y=a!=null&&a>=1,F=y||p?0:reactNative.Platform.OS==="ios"?34:24,L=l!=null&&a!=null&&l>a,V=a!=null?(L?l:a)*w:void 0,D=L?(l-a)*w:0,O=c?0:D,N=im.useSharedValue(w),M=ws.useRef(null),Ve=ws.useCallback(()=>{M.current&&(clearTimeout(M.current),M.current=null),u.current||m(false);},[]);ws.useEffect(()=>{e?(M.current&&(clearTimeout(M.current),M.current=null),m(true),N.value=im.withSpring(O,_l)):_&&(N.value=im.withTiming(w,{duration:250},U=>{U&&im.runOnJS(Ve)();}),M.current=setTimeout(()=>{M.current=null,Ve();},350));},[e]),ws.useEffect(()=>()=>{M.current&&clearTimeout(M.current);},[]),ws.useEffect(()=>{_&&e&&(N.value=im.withSpring(O,_l));},[O,L]);let se=ws.useCallback(()=>{o&&(n??t)();},[o,n,t]),Le=ws.useMemo(()=>{if(!(!s&&!L))return reactNative.PanResponder.create({onStartShouldSetPanResponder:()=>true,onMoveShouldSetPanResponder:()=>true,onPanResponderGrant:()=>{S.current=N.value;},onPanResponderMove:(U,de)=>{if(Math.abs(de.dy)<4)return;let Z=S.current+de.dy;N.value=Math.max(0,Z);},onPanResponderRelease:(U,de)=>{if(!(Math.abs(de.dy)<4)){if(s&&(de.dy>vb||de.vy>Rb)){t();return}if(L){let Z=D/2,he=N.value<Z?0:D;N.value=im.withSpring(he,_l);}else N.value=im.withSpring(O,_l);}},onPanResponderTerminate:()=>{N.value=im.withSpring(O,_l);}}).panHandlers},[s,L,D,O,N,t]),J=im.useAnimatedStyle(()=>({transform:[{translateY:N.value}]})),pe=im.useAnimatedStyle(()=>({opacity:im.interpolate(N.value,[0,w*.5,w],[.5,.25,0],im.Extrapolation.CLAMP)}));if(!_)return null;let ee=jsxRuntime.jsxs(reactNative.View,{style:[oi.root,!v&&oi.noModalRoot],pointerEvents:e?"auto":"none",children:[jsxRuntime.jsx(im__default.default.View,{style:[oi.backdrop,pe],pointerEvents:e?"auto":"none",children:jsxRuntime.jsx(reactNative.Pressable,{style:reactNative.StyleSheet.absoluteFill,onPress:se})}),jsxRuntime.jsxs(im__default.default.View,{style:[oi.sheet,J,{height:V,backgroundColor:x.background,borderTopLeftRadius:y?0:h,borderTopRightRadius:y?0:T,...d?{marginHorizontal:d,marginBottom:f??d+(reactNative.Platform.OS==="ios"?24:16),borderBottomLeftRadius:h,borderBottomRightRadius:T}:void 0}],children:[jsxRuntime.jsxs(reactNativeGestureHandler.GestureHandlerRootView,{style:V!=null?oi.gestureRoot:oi.gestureRootAuto,children:[i&&jsxRuntime.jsx(reactNative.View,{style:oi.handleContainer,pointerEvents:"none",children:jsxRuntime.jsx(reactNative.View,{style:[oi.handle,{backgroundColor:x.foreground+"33"}]})}),r,F>0&&jsxRuntime.jsx(reactNative.View,{style:{height:F}})]}),Le&&jsxRuntime.jsx(reactNative.View,{...Le,style:oi.dragOverlay})]})]});return v?jsxRuntime.jsxs(reactNative.Modal,{transparent:true,visible:true,animationType:"none",onRequestClose:t,children:[ee,C]}):ee}var am={position:"absolute",left:0,right:0,top:0,bottom:0},oi=reactNative.StyleSheet.create({root:{flex:1,justifyContent:"flex-end"},noModalRoot:{...am,zIndex:9999},backdrop:{...am,backgroundColor:"#000"},sheet:{overflow:"hidden"},gestureRoot:{flex:1},gestureRootAuto:{flexShrink:1},handleContainer:{alignItems:"center",paddingTop:10,paddingBottom:4,zIndex:1},dragOverlay:{position:"absolute",top:0,left:0,right:0,height:40,zIndex:2},handle:{width:36,height:5,borderRadius:2.5}}),At=ws__namespace.default.forwardRef((e,t)=>jsxRuntime.jsx(reactNative.ScrollView,{ref:t,...e}));At.displayName="BottomSheetScrollView";function ua(e){return jsxRuntime.jsx(reactNative.FlatList,{...e})}var _b="https://api.unifold.io",Uu="__UnifoldDevApiBaseUrl__",jr="pk_test_123",zc={},Il=["ethereum","solana","bitcoin","n1"];function Ib(){if(typeof __DEV__>"u"||!__DEV__||typeof globalThis>"u")return;let e=globalThis[Uu];if(typeof e!="string")return;let t=e.trim();return t.length>0?t:void 0}function yr(){return Ib()??_b}function Uc(e){if(e.publishableKey!==void 0){if(!e.publishableKey||e.publishableKey.trim()==="")throw new Error("Unifold SDK: publishableKey cannot be empty. Please provide a valid publishable key.");!e.publishableKey.startsWith("pk_test_")&&!e.publishableKey.startsWith("pk_live_")&&console.warn('Unifold SDK: publishableKey should start with "pk_test_" or "pk_live_". Please ensure you are using a valid publishable key.'),jr=e.publishableKey;}e.defaultConfig&&(zc=e.defaultConfig);}function cm(e){if(typeof __DEV__>"u"||!__DEV__){console.warn("[Unifold] setDevApiUrl() is only available in development mode");return}if(typeof globalThis>"u")return;let t=e.trim();t.length>0?globalThis[Uu]=t:delete globalThis[Uu];}function Pl(){return yr()}function Nc(){return jr}function eo(e){if(!e||e.trim()==="")throw new Error("Unifold SDK: No publishable key configured. Please provide a valid publishable key via setApiConfig() or pass it directly to the API function.");e==="pk_test_123"&&console.warn('Unifold SDK: Using default test key "pk_test_123". This should only be used for local development. Please use a real publishable key in production.');}function er(e){let t=e.startsWith("/")?e:`/${e}`;return `${yr()}/api/public${t}`}function ie(e){return e?e.includes("localhost")||e.includes("127.0.0.1")?e.replace(/https?:\/\/(localhost|127\.0\.0\.1)(:\d+)?/,yr()):e.startsWith("http://")||e.startsWith("https://")?e:e.startsWith("/api/public/")?`${yr()}${e}`:`${yr()}/api/public${e}`:""}async function Mo(e,t){if(!e?.external_user_id)throw new Error("external_user_id is required");let r=e?.recipient_address||zc.recipientAddress;if(!r)throw new Error("[Unifold] recipient_address is required for createDepositAddress. Pass recipientAddress in your beginDeposit() config.");let o={external_user_id:e.external_user_id,destination_chain_type:e?.destination_chain_type||"ethereum",destination_chain_id:e?.destination_chain_id||zc.destinationChainId||"8453",destination_token_address:e?.destination_token_address||zc.destinationTokenAddress||"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",recipient_address:r,...e?.action_type&&{action_type:e.action_type},client_metadata:e?.client_metadata||{}},n=t||jr;eo(n);let s=await fetch(`${yr()}/v1/public/deposit_addresses`,{method:"POST",headers:{accept:"application/json","x-publishable-key":n,"Content-Type":"application/json"},body:JSON.stringify(o)});if(!s.ok)throw new Error(`Failed to create deposit address: ${s.statusText}`);return await s.json()}function Ro(e,t){return e.find(r=>r.chain_type===t)}async function mn(e,t,r){let o=t||jr;eo(o);let n=await fetch(`${yr()}/v1/public/direct_executions/query`,{method:"POST",headers:{accept:"application/json","x-publishable-key":o,"Content-Type":"application/json"},body:JSON.stringify({external_user_id:e,...r&&{action_type:r}})});if(!n.ok)throw new Error(`Failed to query executions: ${n.statusText}`);return n.json()}async function Hc(e,t){let r=t||jr;eo(r);let o=await fetch(`${yr()}/v1/public/direct_executions/poll`,{method:"POST",headers:{accept:"application/json","x-publishable-key":r,"Content-Type":"application/json"},body:JSON.stringify({deposit_wallet_id:e})});if(!o.ok)throw new Error(`Failed to poll executions: ${o.statusText}`);return o.json()}function Ue(e,t="svg"){if(!e)return "";if(t==="svg"||!e.icon_urls||e.icon_urls.length===0)return e.icon_url;let r=e.icon_urls.find(o=>o.format===t);return r?r.url:e.icon_url}async function ni(e,t){let r=e||jr;eo(r);let o=`${yr()}/v1/public/tokens/supported_deposit_tokens`;if(t?.destination_token_address&&t?.destination_chain_id&&t?.destination_chain_type){let s=new URLSearchParams({destination_token_address:t.destination_token_address,destination_chain_id:t.destination_chain_id,destination_chain_type:t.destination_chain_type});o=`${o}?${s.toString()}`;}let n=await fetch(o,{method:"GET",headers:{accept:"application/json","x-publishable-key":r}});if(!n.ok)throw new Error(`Failed to fetch supported deposit tokens: ${n.statusText}`);return n.json()}async function Nu(e,t){let r=t||jr;eo(r);let o=new URLSearchParams({chainType:e.chain_type,chainId:e.chain_id,tokenAddress:e.token_address}),n=await fetch(`${yr()}/v1/public/tokens/token?${o.toString()}`,{method:"GET",headers:{accept:"application/json","x-publishable-key":r}});if(!n.ok)throw new Error(`Failed to fetch token metadata: ${n.statusText}`);return n.json()}function jc(e,t,r){return !e||e.length===0?r||"":e.find(n=>n.format===t)?.url||r||e[0]?.url||""}async function Hu(e,t){let r=t||jr;eo(r);let o=await fetch(`${yr()}/v1/public/onramps/quotes`,{method:"POST",headers:{accept:"application/json","x-publishable-key":r,"Content-Type":"application/json"},body:JSON.stringify(e)});if(!o.ok)throw new Error(`Failed to fetch onramp quotes: ${o.statusText}`);return o.json()}async function ju(e,t){let r=t||jr;eo(r);let o=await fetch(`${yr()}/v1/public/onramps/sessions`,{method:"POST",headers:{accept:"application/json","x-publishable-key":r,"Content-Type":"application/json"},body:JSON.stringify(e)});if(!o.ok)throw new Error(`Failed to create onramp session: ${o.statusText}`);return o.json()}async function $u(e,t){let r=t||jr;eo(r);let o=new URLSearchParams;e.country_code&&o.append("country_code",e.country_code),e.subdivision_code&&o.append("subdivision_code",e.subdivision_code),o.append("token_address",e.token_address),o.append("chain_id",e.chain_id),o.append("chain_type",e.chain_type);let n=await fetch(`${yr()}/v1/public/onramps/default_token?${o.toString()}`,{method:"GET",headers:{accept:"application/json","x-publishable-key":r}});if(!n.ok)throw new Error(`Failed to fetch default onramp token: ${n.statusText}`);return n.json()}async function Fl(e){let t=e||jr;eo(t);let r=await fetch(`${yr()}/v1/public/onramps/fiat_currencies`,{method:"GET",headers:{accept:"application/json","x-publishable-key":t}});if(!r.ok)throw new Error(`Failed to fetch fiat currencies: ${r.statusText}`);return r.json()}function In(e,t="png"){if(!e||e.length===0)return;let r=e.find(o=>o.format===t);return r?r.url:e[0]?.url}async function Dl(e){let t=e||jr;eo(t);let r=await fetch(`${yr()}/v1/public/projects/config`,{method:"GET",headers:{accept:"application/json","x-publishable-key":t}});if(!r.ok)throw new Error(`Failed to fetch project config: ${r.statusText}`);return r.json()}async function qu(){let e=await fetch(`${yr()}/v1/public/tokens/chains`,{method:"GET",headers:{accept:"application/json"}});if(!e.ok)throw new Error(`Failed to fetch token chains: ${e.statusText}`);return e.json()}function $c(e,t,r){let o=e.find(s=>s.chain_id===r);if(o)return o.chain_name;let n=e.find(s=>s.chain_type===t);return n?n.chain_name:t.charAt(0).toUpperCase()+t.slice(1)}async function Vl(){let e=await fetch(`${yr()}/v1/public/ip_address`,{method:"GET",headers:{accept:"application/json"}});if(!e.ok)throw new Error(`Failed to fetch IP address information: ${e.statusText}`);return e.json()}async function qc(e){let t=e||jr;eo(t);let r=await fetch(`${yr()}/v1/public/tokens/supported_destination_tokens`,{method:"GET",headers:{accept:"application/json","x-publishable-key":t}});if(!r.ok)throw new Error(`Failed to fetch supported destination tokens: ${r.statusText}`);return r.json()}async function Qu(e,t){let r=t||jr;eo(r);let o=await fetch(`${yr()}/v1/public/addresses/verify`,{method:"POST",headers:{"Content-Type":"application/json",accept:"application/json","x-publishable-key":r},body:JSON.stringify(e)});if(!o.ok)throw new Error(`Failed to verify address: ${o.statusText}`);return o.json()}async function Ku(e,t){return Hc(e.deposit_wallet_id,t)}async function Qc(e,t,r,o,n){let s=n||jr;eo(s);let i=await fetch(`${yr()}/v1/public/addresses/balance`,{method:"POST",headers:{"Content-Type":"application/json",accept:"application/json","x-publishable-key":s},body:JSON.stringify({address:e,chain_type:t,chain_id:r,token_address:o})});if(!i.ok)throw new Error(`Failed to fetch address balance: ${i.statusText}`);return i.json()}async function Gu(e,t){let r=t||jr;eo(r);let o=await fetch(`${yr()}/v1/public/onramps/cashapp/sessions`,{method:"POST",headers:{"Content-Type":"application/json",accept:"application/json","x-publishable-key":r},body:JSON.stringify(e)});if(!o.ok)throw new Error(`Failed to create Cash App session: ${o.statusText}`);return o.json()}async function Yu(e="usd",t){let r=t||jr;eo(r);let o=await fetch(`${yr()}/v1/public/onramps/cashapp/limits?currency=${e}`,{method:"GET",headers:{accept:"application/json","x-publishable-key":r}});if(!o.ok)throw new Error(`Failed to fetch Cash App limits: ${o.statusText}`);return o.json()}async function Ju(e,t){let r=t||jr;eo(r);let o=await fetch(`${yr()}/v1/public/onramps/cashapp/sessions/${encodeURIComponent(e)}/status`,{method:"GET",headers:{accept:"application/json","x-publishable-key":r}});if(!o.ok)throw new Error(`Failed to fetch Cash App session status: ${o.statusText}`);return o.json()}async function Zu(e){let t=e||jr;eo(t);let r=await fetch(`${yr()}/v1/public/external_wallets`,{method:"GET",headers:{accept:"application/json","x-publishable-key":t}});if(!r.ok)throw new Error(`Failed to fetch external wallets: ${r.statusText}`);return r.json()}async function Xu(e,t,r){let o=r||jr;eo(o);let n=await fetch(`${yr()}/v1/public/external_wallets/mobile_deeplink`,{method:"POST",headers:{"Content-Type":"application/json",accept:"application/json","x-publishable-key":o},body:JSON.stringify({wallet:e,deposit_addresses:t})});if(!n.ok)throw new Error(`Failed to generate wallet deep link: ${n.statusText}`);return n.json()}function um({size:e=28}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 28 28",fill:"none",children:jsxRuntime.jsxs(ir.G,{fillRule:"evenodd",children:[jsxRuntime.jsx(ir.Path,{fill:"#0052FF",fillRule:"nonzero",d:"M14 28a14 14 0 1 0 0-28 14 14 0 0 0 0 28"}),jsxRuntime.jsx(ir.Path,{fill:"#FFF",d:"M13.967 23.86c5.445 0 9.86-4.415 9.86-9.86s-4.415-9.86-9.86-9.86c-5.166 0-9.403 3.974-9.825 9.03h14.63v1.642H4.142c.413 5.065 4.654 9.047 9.826 9.047Z"})]})})}function pa({size:e=28}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 28 28",fill:"none",children:[jsxRuntime.jsxs(ir.G,{clipPath:"url(#eth_clip)",children:[jsxRuntime.jsx(ir.Path,{d:"M14 28C21.732 28 28 21.732 28 14C28 6.26801 21.732 0 14 0C6.26801 0 0 6.26801 0 14C0 21.732 6.26801 28 14 28Z",fill:"#627EEA"}),jsxRuntime.jsx(ir.Path,{d:"M14.4357 3.5V11.2612L20.9956 14.1925L14.4357 3.5Z",fill:"white",fillOpacity:.602}),jsxRuntime.jsx(ir.Path,{d:"M14.4357 3.5L7.875 14.1925L14.4357 11.2612V3.5Z",fill:"white"}),jsxRuntime.jsx(ir.Path,{d:"M14.4357 19.222V24.4956L21 15.414L14.4357 19.222Z",fill:"white",fillOpacity:.602}),jsxRuntime.jsx(ir.Path,{d:"M14.4357 24.4956V19.2211L7.875 15.414L14.4357 24.4956Z",fill:"white"}),jsxRuntime.jsx(ir.Path,{d:"M14.4357 18.0014L20.9956 14.1925L14.4357 11.263V18.0014Z",fill:"white",fillOpacity:.2}),jsxRuntime.jsx(ir.Path,{d:"M7.875 14.1925L14.4357 18.0014V11.263L7.875 14.1925Z",fill:"white",fillOpacity:.602})]}),jsxRuntime.jsx(ir.Defs,{children:jsxRuntime.jsx(ir.ClipPath,{id:"eth_clip",children:jsxRuntime.jsx(ir.Rect,{width:28,height:28,fill:"white"})})})]})}function hm({size:e=28}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 28 28",fill:"none",children:[jsxRuntime.jsxs(ir.G,{clipPath:"url(#btc_clip)",children:[jsxRuntime.jsx(ir.Path,{d:"M14 28C21.732 28 28 21.732 28 14C28 6.26801 21.732 0 14 0C6.26801 0 0 6.26801 0 14C0 21.732 6.26801 28 14 28Z",fill:"#F7931A"}),jsxRuntime.jsx(ir.Path,{d:"M20.0594 12.1625C20.3438 10.2594 18.9 9.23124 16.9203 8.55311L17.5656 5.97186L15.9906 5.57811L15.3672 8.09374C14.9516 7.9953 14.525 7.89686 14.0985 7.79843L14.7328 5.27186L13.1578 4.87811L12.5125 7.45936C12.1735 7.3828 11.8344 7.30624 11.5063 7.22968V7.21874L9.34065 6.67186L8.92502 8.35624C8.92502 8.35624 10.0844 8.61874 10.0625 8.64061C10.6969 8.79374 10.8063 9.2203 10.7844 9.54843L10.0625 12.4578C10.1063 12.4687 10.161 12.4797 10.2266 12.5125C10.1828 12.5016 10.1281 12.4906 10.0735 12.4687L9.05627 16.5375C8.97971 16.7344 8.78284 17.0187 8.34534 16.9094C8.36721 16.9312 7.20784 16.625 7.20784 16.625L6.43127 18.4297L8.47659 18.9437C8.8594 19.0422 9.23127 19.1406 9.59221 19.2281L8.9469 21.8422L10.5219 22.2359L11.1672 19.6547C11.5938 19.775 12.0094 19.8734 12.4141 19.9828L11.7688 22.5531L13.3438 22.9469L13.9891 20.3328C16.6578 20.8359 18.6594 20.6281 19.5016 18.2219C20.1797 16.2859 19.4688 15.1703 18.0688 14.4375C19.086 14.2078 19.8516 13.5406 20.0594 12.1625ZM16.4938 17.1609C16.0125 19.0969 12.7531 18.0469 11.6922 17.7844L12.5453 14.35C13.6063 14.6125 16.9969 15.1484 16.4938 17.1609ZM16.975 12.1297C16.5375 13.8906 13.825 12.9937 12.95 12.775L13.7266 9.6578C14.6016 9.87655 17.4344 10.2812 16.975 12.1297Z",fill:"white"})]}),jsxRuntime.jsx(ir.Defs,{children:jsxRuntime.jsx(ir.ClipPath,{id:"btc_clip",children:jsxRuntime.jsx(ir.Rect,{width:28,height:28,fill:"white"})})})]})}function ha({size:e=28}){return jsxRuntime.jsxs(ir__default.default,{width:e,height:e,viewBox:"0 0 256 256",fill:"none",children:[jsxRuntime.jsxs(ir.Defs,{children:[jsxRuntime.jsxs(ir.LinearGradient,{id:"sol1",x1:"360.9",y1:"-37.5",x2:"141.2",y2:"383.3",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx(ir.Stop,{offset:"0",stopColor:"#00FFA3"}),jsxRuntime.jsx(ir.Stop,{offset:"1",stopColor:"#DC1FFF"})]}),jsxRuntime.jsxs(ir.LinearGradient,{id:"sol2",x1:"264.8",y1:"-87.6",x2:"45.16",y2:"333.15",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx(ir.Stop,{offset:"0",stopColor:"#00FFA3"}),jsxRuntime.jsx(ir.Stop,{offset:"1",stopColor:"#DC1FFF"})]}),jsxRuntime.jsxs(ir.LinearGradient,{id:"sol3",x1:"312.55",y1:"-62.69",x2:"92.88",y2:"358.06",gradientUnits:"userSpaceOnUse",children:[jsxRuntime.jsx(ir.Stop,{offset:"0",stopColor:"#00FFA3"}),jsxRuntime.jsx(ir.Stop,{offset:"1",stopColor:"#DC1FFF"})]})]}),jsxRuntime.jsx(ir.Circle,{cx:128,cy:128,r:128,fill:"black"}),jsxRuntime.jsxs(ir.G,{transform:"translate(128,128) scale(0.35) translate(-198.85,-156)",children:[jsxRuntime.jsx(ir.Path,{fill:"url(#sol2)",d:"M64.6,3.8C67.1,1.4,70.4,0,73.8,0h317.4c5.8,0,8.7,7,4.6,11.1l-62.7,62.7c-2.4,2.4-5.7,3.8-9.2,3.8H6.5c-5.8,0-8.7-7-4.6-11.1L64.6,3.8z"}),jsxRuntime.jsx(ir.Path,{fill:"url(#sol3)",d:"M333.1,120.1c-2.4-2.4-5.7-3.8-9.2-3.8H6.5c-5.8,0-8.7,7-4.6,11.1l62.7,62.7c2.4,2.4,5.7,3.8,9.2,3.8h317.4c5.8,0,8.7-7,4.6-11.1L333.1,120.1z"}),jsxRuntime.jsx(ir.Path,{fill:"url(#sol1)",d:"M64.6,237.9c2.4-2.4,5.7-3.8,9.2-3.8h317.4c5.8,0,8.7,7,4.6,11.1l-62.7,62.7c-2.4,2.4-5.7,3.8-9.2,3.8H6.5c-5.8,0-8.7-7-4.6-11.1L64.6,237.9z"})]})]})}function gm({size:e=28}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 32 32",fill:"none",children:jsxRuntime.jsxs(ir.G,{children:[jsxRuntime.jsx(ir.Circle,{cx:16,cy:16,r:16,fill:"#6F41D8"}),jsxRuntime.jsx(ir.Path,{fill:"#FFF",d:"M21.092 12.693c-.369-.215-.848-.215-1.254 0l-2.879 1.654-1.955 1.078-2.879 1.653c-.369.216-.848.216-1.254 0l-2.288-1.294c-.369-.215-.627-.61-.627-1.042V12.19c0-.431.221-.826.627-1.042l2.25-1.258c.37-.216.85-.216 1.256 0l2.25 1.258c.37.216.628.611.628 1.042v1.654l1.955-1.115v-1.653a1.16 1.16 0 0 0-.627-1.042l-4.17-2.372c-.369-.216-.848-.216-1.254 0l-4.244 2.372A1.16 1.16 0 0 0 6 11.076v4.78c0 .432.221.827.627 1.043l4.244 2.372c.369.215.849.215 1.254 0l2.879-1.618 1.955-1.114 2.879-1.617c.369-.216.848-.216 1.254 0l2.251 1.258c.37.215.627.61.627 1.042v2.552c0 .431-.22.826-.627 1.042l-2.25 1.294c-.37.216-.85.216-1.255 0l-2.251-1.258c-.37-.216-.628-.611-.628-1.042v-1.654l-1.955 1.115v1.653c0 .431.221.827.627 1.042l4.244 2.372c.369.216.848.216 1.254 0l4.244-2.372c.369-.215.627-.61.627-1.042v-4.78a1.16 1.16 0 0 0-.627-1.042l-4.28-2.409z"})]})})}var Kc=[{label:"Base",value:stripeReactNative.Onramp.CryptoNetwork.base,defaultCrypto:"usdc",Icon:um},{label:"Ethereum",value:stripeReactNative.Onramp.CryptoNetwork.ethereum,defaultCrypto:"eth",Icon:pa},{label:"Bitcoin",value:stripeReactNative.Onramp.CryptoNetwork.bitcoin,defaultCrypto:"btc",Icon:hm},{label:"Solana",value:stripeReactNative.Onramp.CryptoNetwork.solana,defaultCrypto:"sol",Icon:ha},{label:"Polygon",value:stripeReactNative.Onramp.CryptoNetwork.polygon,defaultCrypto:"matic",Icon:gm}];function Gc(e,t=8,r=4){let o=e.trim();return o.length<=t+r+3?o:`${o.slice(0,t)}...${o.slice(-r)}`}function Yc(e,t){let r=parseFloat(e);if(isNaN(r))return e;let o=t.toLowerCase(),n=["eth","btc"].includes(o)?4:2;return r.toFixed(n)}function ga(e){let t=e.trim().toLowerCase();if(!t)return e.trim();let r=Kc.find(n=>n.label.toLowerCase()===t);if(r)return r.label;let o=Kc.find(n=>String(n.value).toLowerCase()===t);return o?o.label:e.trim()}function tr({onPress:e,title:t,variant:r="close",leftAction:o}){let{components:n,fonts:s}=A(),i=r==="back",a=i?jsxRuntime.jsx(aa,{size:22,color:n.header.buttonColor,strokeWidth:2.5}):jsxRuntime.jsx(Rt,{size:20,color:n.header.buttonColor,strokeWidth:2}),l=jsxRuntime.jsx(reactNative.TouchableOpacity,{style:Ei.closeBtn,onPress:e,hitSlop:{top:10,bottom:10,left:10,right:10},accessibilityRole:"button",accessibilityLabel:i?"Back":"Close",children:a});return t?jsxRuntime.jsxs(reactNative.View,{style:Ei.headerWithTitle,children:[i?l:o??jsxRuntime.jsx(reactNative.View,{style:Ei.headerSide}),jsxRuntime.jsx(reactNative.Text,{style:[Ei.headerTitleText,{color:n.header.titleColor},...s.bold?[{fontFamily:s.bold}]:[]],numberOfLines:1,ellipsizeMode:"tail",accessibilityRole:"header",children:t}),i?jsxRuntime.jsx(reactNative.View,{style:Ei.headerSide}):l]}):jsxRuntime.jsxs(reactNative.View,{style:i?Ei.headerWithTitle:Ei.header,children:[i?l:jsxRuntime.jsx(reactNative.View,{style:Ei.headerSpacer}),!i&&l]})}var Jc={paddingTop:8,paddingBottom:8},Ei=reactNative.StyleSheet.create({header:{flexDirection:"row",justifyContent:"flex-end",...Jc},headerWithTitle:{flexDirection:"row",alignItems:"center",marginHorizontal:-8,...Jc,zIndex:9999,overflow:"visible"},headerSpacer:{flex:1},headerSide:{width:40},headerTitleText:{flex:1,textAlign:"center",fontSize:17},closeBtn:{width:40,height:40,borderRadius:10,backgroundColor:"transparent",alignItems:"center",justifyContent:"center"}});function To({error:e,progress:t,loading:r}){let{colors:o,fonts:n}=A();return e?jsxRuntime.jsx(reactNative.Text,{style:[ym.errorText,{color:o.error},...n.regular?[{fontFamily:n.regular}]:[]],children:e.message}):t&&r&&__DEV__?jsxRuntime.jsx(reactNative.Text,{style:[ym.progressText,{color:o.foregroundSubtle},...n.regular?[{fontFamily:n.regular}]:[]],children:t}):null}var ym=reactNative.StyleSheet.create({errorText:{fontSize:14,textAlign:"center",lineHeight:20,marginTop:24},progressText:{fontSize:13,textAlign:"center",lineHeight:18,marginTop:24}});function hn({quote:e,label:t,value:r,last:o,hideDivider:n}){return jsxRuntime.jsxs(ws.Fragment,{children:[jsxRuntime.jsxs(reactNative.View,{style:e.row,children:[jsxRuntime.jsx(reactNative.Text,{style:e.rowLabel,children:t}),jsxRuntime.jsx(reactNative.Text,{style:[e.rowValue],children:r})]}),!o&&!n?jsxRuntime.jsx(reactNative.View,{style:e.rowDivider}):null]})}function ip({quote:e,label:t,address:r,last:o,hideDivider:n}){let[s,i]=ws.useState(false),{colors:a,components:l}=A(),c=()=>{reactNative.Clipboard.setString(r),i(true),setTimeout(()=>i(false),2e3);},p=Gc(r);return jsxRuntime.jsxs(ws.Fragment,{children:[jsxRuntime.jsxs(reactNative.View,{style:e.row,children:[jsxRuntime.jsx(reactNative.Text,{style:e.rowLabel,children:t}),jsxRuntime.jsxs(reactNative.View,{style:e.rowRight,children:[jsxRuntime.jsx(reactNative.Text,{style:[e.rowValue,{flexShrink:1,minWidth:0}],numberOfLines:1,ellipsizeMode:"middle",selectable:true,children:p}),jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:c,hitSlop:{top:10,bottom:10,left:10,right:10},accessibilityRole:"button",accessibilityLabel:`Copy ${t}`,children:s?jsxRuntime.jsx(dt,{size:14,color:a.success,strokeWidth:2.5}):jsxRuntime.jsx(un,{size:14,color:l.card.actionIcon,strokeWidth:2})})]})]}),!o&&!n?jsxRuntime.jsx(reactNative.View,{style:e.rowDivider}):null]})}var Zc={usdc:"#2775CA",usdt:"#26A17B",eth:"#627EEA",btc:"#F7931A",sol:"#9945FF",matic:"#8247E5",dai:"#F5AC37"};function ya({currency:e,tokenIconUrl:t,networkIconUrl:r,size:o=48}){let{colors:n}=A(),s=e.toLowerCase(),i=Zc[s]??n.primary,a=Math.round(o*.42);return jsxRuntime.jsxs(reactNative.View,{style:{width:o,height:o,position:"relative"},children:[t?jsxRuntime.jsx(reactNative.Image,{source:{uri:t},style:{width:o,height:o,borderRadius:o/2}}):jsxRuntime.jsx(reactNative.View,{style:{width:o,height:o,borderRadius:o/2,backgroundColor:i,alignItems:"center",justifyContent:"center"},children:jsxRuntime.jsx(reactNative.Text,{style:{color:"#FFFFFF",fontWeight:"700",fontSize:o*.38},children:e.toUpperCase().slice(0,e.length>3?4:void 0)})}),r?jsxRuntime.jsx(reactNative.Image,{source:{uri:r},style:{position:"absolute",bottom:-2,right:-4,width:a,height:a,borderRadius:a/2,borderWidth:2,borderColor:n.background}}):null]})}function Xc({sourceCurrency:e,destinationCurrency:t,destinationNetwork:r,tokenIconUrl:o,networkIconUrl:n,style:s}){let{colors:i,components:a,fonts:l}=A(),c=er(`/icons/currencies/png/${e.toLowerCase()}.png`),p=ga(r);return jsxRuntime.jsxs(reactNative.View,{style:[Zo.diagram,{backgroundColor:a.card.backgroundColor,borderRadius:a.card.borderRadius,borderWidth:a.card.borderWidth,borderColor:a.card.borderColor},s],children:[jsxRuntime.jsxs(reactNative.View,{style:Zo.step,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:c},style:Zo.iconImage}),jsxRuntime.jsx(reactNative.Text,{style:[Zo.label,{color:a.card.subtitleColor,fontFamily:l.regular}],children:"You paid"}),jsxRuntime.jsx(reactNative.Text,{style:[Zo.value,{color:a.card.titleColor,fontFamily:l.medium}],children:e.toUpperCase()})]}),jsxRuntime.jsx(Wr,{size:16,color:i.foregroundMuted,strokeWidth:2}),jsxRuntime.jsxs(reactNative.View,{style:Zo.step,children:[jsxRuntime.jsxs(reactNative.View,{style:Zo.iconWithBadge,children:[o?jsxRuntime.jsx(reactNative.Image,{source:{uri:o},style:Zo.tokenIcon}):jsxRuntime.jsx(reactNative.View,{style:[Zo.tokenIcon,{backgroundColor:Zc[t.toLowerCase()]??i.primary}]}),n?jsxRuntime.jsx(reactNative.Image,{source:{uri:n},style:[Zo.networkBadge,{borderColor:i.background}]}):null]}),jsxRuntime.jsx(reactNative.Text,{style:[Zo.label,{color:a.card.subtitleColor,fontFamily:l.regular}],children:"You receive"}),jsxRuntime.jsxs(reactNative.Text,{style:[Zo.value,{color:a.card.titleColor,fontFamily:l.medium}],children:[t.toUpperCase()," ",p]})]})]})}var Zo=reactNative.StyleSheet.create({diagram:{flexDirection:"row",alignItems:"center",justifyContent:"space-around",paddingVertical:20,paddingHorizontal:24,width:"100%"},step:{alignItems:"center"},iconImage:{width:24,height:24,borderRadius:12,marginBottom:4},iconWithBadge:{position:"relative",width:24,height:24,marginBottom:4},tokenIcon:{width:24,height:24,borderRadius:12},networkBadge:{position:"absolute",bottom:-4,right:-6,width:14,height:14,borderRadius:7,borderWidth:2},label:{fontSize:10},value:{fontSize:14,fontWeight:"500",paddingTop:4}});function Dn(){let{colors:e,fonts:t,components:r}=A(),o=r.input,n=r.button,s=r.container,i=r.card,a=r.header;return ws.useMemo(()=>{let l=i.borderRadius,c={flex:{flex:1},screen:{flex:1,backgroundColor:e.background,paddingHorizontal:24,paddingBottom:16},content:{flex:1,paddingTop:16},title:{fontSize:18,color:a.titleColor,marginBottom:8,...t.bold?{fontFamily:t.bold}:{}},subtitle:{fontSize:15,color:e.foregroundMuted,marginBottom:36,lineHeight:22,...t.regular?{fontFamily:t.regular}:{}},fieldWrap:{marginBottom:20},fieldLabel:{fontSize:14,color:e.foregroundSubtle,marginBottom:8,...t.semibold?{fontFamily:t.semibold}:{}},input:{backgroundColor:o.backgroundColor,borderRadius:o.borderRadius,padding:16,fontSize:17,color:o.textColor,borderWidth:o.borderWidth,borderColor:o.borderColor,...t.regular?{fontFamily:t.regular}:{}},hint:{fontSize:12,color:e.foregroundSubtle,marginTop:8,...t.regular?{fontFamily:t.regular}:{}},emailRow:{flexDirection:"row",alignItems:"center",gap:6,marginTop:4,backgroundColor:e.card,paddingHorizontal:14,paddingVertical:10,borderRadius:Math.min(l,12)},emailLabel:{fontSize:13,color:e.foregroundSubtle,...t.regular?{fontFamily:t.regular}:{}},emailValue:{fontSize:13,color:e.foreground,...t.semibold?{fontFamily:t.semibold}:{}},footer:{gap:4},continueBtn:{backgroundColor:s.buttonColor,borderRadius:n.borderRadius,paddingVertical:18,alignItems:"center"},continueBtnDisabled:{backgroundColor:e.card},continueBtnText:{color:s.buttonTitleColor,fontSize:17,...t.bold?{fontFamily:t.bold}:{}},continueBtnTextDisabled:{color:e.foregroundSubtle,...t.regular?{fontFamily:t.regular}:{}},ghostBtn:{paddingVertical:16,alignItems:"center"},ghostBtnText:{color:e.foregroundMuted,fontSize:15,...t.medium?{fontFamily:t.medium}:{}},loaderInButton:{justifyContent:"center",alignItems:"center"}},p={amountContainer:{flex:1,alignItems:"center",justifyContent:"center",gap:8},amountText:{fontSize:64,color:e.foreground,letterSpacing:-2,minWidth:80,textAlign:"center",...t.regular?{fontFamily:t.regular}:{}},amountPlaceholder:{color:e.foregroundSubtle},currencyLabel:{fontSize:15,color:e.foregroundMuted,letterSpacing:1,...t.medium?{fontFamily:t.medium}:{}},minAmountText:{fontSize:13,textAlign:"center",marginTop:8,...t.regular?{fontFamily:t.regular}:{}},quickRow:{flexDirection:"row",gap:10,marginBottom:12},quickPill:{flex:1,paddingVertical:12,alignItems:"center",borderRadius:i.borderRadius,backgroundColor:e.card,borderWidth:i.borderWidth,borderColor:i.borderColor},quickPillText:{fontSize:14,color:e.foreground,...t.medium?{fontFamily:t.medium}:{}},numpad:{gap:4,marginBottom:12},numpadRow:{flexDirection:"row",justifyContent:"space-between"},numpadKey:{flex:1,height:56,alignItems:"center",justifyContent:"center",marginHorizontal:4},numpadKeyText:{fontSize:28,color:e.foreground,...t.regular?{fontFamily:t.regular}:{}},backspaceText:{fontSize:22,color:e.foregroundMuted,...t.regular?{fontFamily:t.regular}:{}},paymentRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:10,borderRadius:999,backgroundColor:"transparent",alignSelf:"flex-start",marginBottom:12},paymentRowHeader:{flexDirection:"row",alignItems:"center",paddingVertical:10,paddingHorizontal:16,borderRadius:i.borderRadius,backgroundColor:e.card,borderWidth:i.borderWidth,borderColor:i.borderColor,alignSelf:"center"},paymentLeft:{flexDirection:"row",alignItems:"center",gap:6},applePayIcon:{fontSize:20,color:e.foreground},paymentLabel:{fontSize:15,color:e.foreground,...t.semibold?{fontFamily:t.semibold}:{}},paymentHint:{fontSize:13,color:e.foregroundMuted,marginLeft:12,...t.regular?{fontFamily:t.regular}:{}},inlineError:{fontSize:13,color:e.error,textAlign:"center",marginTop:10,paddingHorizontal:16,...t.regular?{fontFamily:t.regular}:{}},inlineStatus:{fontSize:13,color:e.foregroundMuted,textAlign:"center",marginTop:10,paddingHorizontal:16,...t.regular?{fontFamily:t.regular}:{}},sheetContent:{flex:1,paddingHorizontal:24,paddingTop:8,gap:12},sheetHeader:{flexDirection:"row",alignItems:"center",gap:8,marginBottom:4},sheetBackBtn:{width:32,height:32,borderRadius:16,backgroundColor:e.card,alignItems:"center",justifyContent:"center",borderWidth:i.borderWidth,borderColor:e.border},sheetTitleRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",marginBottom:8},sheetCloseBtn:{width:28,height:28,borderRadius:14,backgroundColor:e.card,alignItems:"center",justifyContent:"center",borderWidth:i.borderWidth,borderColor:e.border},sheetTitle:{fontSize:18,color:e.foreground,...t.bold?{fontFamily:t.bold}:{}},sheetOption:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:14,paddingHorizontal:16,borderRadius:Math.min(l,14),backgroundColor:e.card,borderWidth:i.borderWidth,borderColor:e.border},sheetOptionLeft:{flex:1,flexDirection:"row",alignItems:"center",gap:12},sheetOptionIcon:{width:24,height:24,alignItems:"center",justifyContent:"center"},sheetOptionLabel:{fontSize:16,color:e.foreground,...t.medium?{fontFamily:t.medium}:{}},sheetOptionHint:{fontSize:13,color:e.foregroundMuted,marginTop:2,...t.regular?{fontFamily:t.regular}:{}},sheetLoading:{alignItems:"center",paddingVertical:32,gap:12},sheetStatusText:{fontSize:15,color:e.foregroundMuted,textAlign:"center",...t.regular?{fontFamily:t.regular}:{}},sheetError:{flex:1,justifyContent:"center",paddingVertical:20},sheetErrorText:{fontSize:14,color:e.error,textAlign:"center",lineHeight:20,...t.regular?{fontFamily:t.regular}:{}},addPaymentBtn:{marginTop:12,paddingVertical:14,borderRadius:Math.min(l,14),backgroundColor:e.card,borderWidth:i.borderWidth,borderColor:e.border,alignItems:"center",justifyContent:"center"},addPaymentBtnText:{fontSize:15,color:e.primary,...t.semibold?{fontFamily:t.semibold}:{}}},h={heroBox:{backgroundColor:i.backgroundColor,borderRadius:l,padding:24,alignItems:"center",marginBottom:16,marginTop:8,borderWidth:i.borderWidth,borderColor:i.borderColor,gap:4},heroLabel:{fontSize:12,color:e.foregroundSubtle,letterSpacing:.5,textTransform:"uppercase",...t.semibold?{fontFamily:t.semibold}:{}},heroAmount:{fontSize:48,color:e.foreground,letterSpacing:-1,...t.bold?{fontFamily:t.bold}:{}},heroCurrency:{fontSize:22,color:e.primary,...t.medium?{fontFamily:t.medium}:{}},heroNetwork:{fontSize:15,color:e.foregroundSubtle,marginTop:2,...t.medium?{fontFamily:t.medium}:{}},card:{backgroundColor:i.backgroundColor,borderRadius:l,borderWidth:i.borderWidth,borderColor:i.borderColor,overflow:"hidden",marginBottom:12,marginTop:16},row:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",paddingVertical:14,paddingHorizontal:16},rowRight:{flex:1,minWidth:0,flexDirection:"row",alignItems:"center",justifyContent:"flex-end",gap:8},rowDivider:{height:1,marginHorizontal:16,backgroundColor:e.border},rowLabel:{fontSize:14,color:i.rowLeftLabel,...t.regular?{fontFamily:t.regular}:{}},rowValue:{fontSize:14,fontWeight:"500",color:i.rowRightLabel,...t.medium?{fontFamily:t.medium}:{}}},T=Math.max(16,Math.min(l,22)),d={stackWrapper:{width:"100%",marginBottom:8,marginTop:4},swapCard:{backgroundColor:e.card,borderWidth:i.borderWidth,borderColor:e.border,paddingHorizontal:16,paddingVertical:16},swapCardTop:{borderTopLeftRadius:T,borderTopRightRadius:T,borderBottomLeftRadius:10,borderBottomRightRadius:10},swapCardBottom:{borderBottomLeftRadius:T,borderBottomRightRadius:T,borderTopLeftRadius:10,borderTopRightRadius:10,marginTop:16},swapConnectorWrap:{alignSelf:"center",zIndex:3,marginTop:-24,marginBottom:-32},swapConnectorCircle:{width:48,height:48,borderRadius:24,backgroundColor:e.primary,alignItems:"center",justifyContent:"center",borderWidth:4,borderColor:e.background},swapRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",marginTop:8,gap:12},swapLeftCol:{flex:1,minWidth:0},swapSpendAmount:{fontSize:40,color:e.foreground,letterSpacing:-1,...t.regular?{fontFamily:t.regular}:{}},swapReceivePrimary:{fontSize:40,color:e.foreground,letterSpacing:-1,...t.regular?{fontFamily:t.regular}:{}},swapReceiveSub:{fontSize:13,color:e.foregroundMuted,marginTop:4,...t.regular?{fontFamily:t.regular}:{}},swapPill:{flexDirection:"row",alignItems:"center",gap:6,paddingVertical:10,paddingHorizontal:14,borderRadius:999,backgroundColor:e.cardHover,borderWidth:i.borderWidth,borderColor:e.border},swapPillText:{fontSize:16,color:e.foreground,...t.semibold?{fontFamily:t.semibold}:{}},payHint:{fontSize:15,color:e.foregroundMuted,textAlign:"center",marginBottom:18,marginTop:4,...t.regular?{fontFamily:t.regular}:{}},summaryLabel:{fontSize:12,color:e.foregroundSubtle,textTransform:"uppercase",letterSpacing:.3,...t.semibold?{fontFamily:t.semibold}:{}},applePayBtn:{backgroundColor:n.secondaryBackground,borderRadius:n.borderRadius,borderWidth:n.borderWidth>0?n.borderWidth:1,borderColor:n.borderWidth>0?n.borderColor:e.border,paddingVertical:18,alignItems:"center",marginBottom:10},applePayBtnText:{color:n.secondaryText,fontSize:17,...t.bold?{fontFamily:t.bold}:{}}},f={input:{fontSize:14,...t.regular?{fontFamily:t.regular}:{}},list:{gap:8},row:{flexDirection:"row",alignItems:"center",paddingVertical:14,paddingHorizontal:16,borderRadius:Math.min(l,14),borderWidth:i.borderWidth,borderColor:e.border,backgroundColor:e.card},rowSelected:{borderColor:e.primary,backgroundColor:e.successBackground},iconWrap:{width:32,height:32,alignItems:"center",justifyContent:"center",marginRight:12},rowText:{flex:1,fontSize:15,color:e.foregroundMuted,...t.medium?{fontFamily:t.medium}:{}},rowTextSelected:{color:e.foreground,...t.semibold?{fontFamily:t.semibold}:{}},checkCircle:{width:24,height:24,borderRadius:12,backgroundColor:e.primary,alignItems:"center",justifyContent:"center"}},C={centered:{flex:1,alignItems:"center",justifyContent:"center",paddingHorizontal:24},spinnerWrap:{width:80,height:80,borderRadius:40,backgroundColor:e.card,borderWidth:i.borderWidth,borderColor:e.border,alignItems:"center",justifyContent:"center",marginBottom:28},idIcon:{fontSize:36},checkCircle:{width:80,height:80,borderRadius:40,backgroundColor:e.successBackground,borderWidth:2,borderColor:e.success,alignItems:"center",justifyContent:"center",marginBottom:28},heading:{fontSize:28,color:a.titleColor,textAlign:"center",marginBottom:10,...t.bold?{fontFamily:t.bold}:{}},sub:{fontSize:15,color:e.foregroundMuted,textAlign:"center",lineHeight:22,marginBottom:36,...t.regular?{fontFamily:t.regular}:{}},successScrollContent:{flexGrow:1,width:"100%",alignItems:"center",paddingBottom:24},detailCard:{width:"100%"}};return {form:c,quote:h,pm:d,wallet:f,flow:C,amount:p}},[e,t,o,n,s,i,a])}var wm="",Sm;function ed(e){wm=e;}function td(e){Sm=e;}function _o(){let e=wm||Nc();if(!e)throw new Error("[Unifold] No publishable key configured. Set via UnifoldProvider or setStripeOnrampPublishableKey().");return e}function Io(){return Sm??Pl()}async function Al(){let e=`${Io()}/v1/public/onramps/headless/stripe/config`,t=_o(),r=await fetch(e,{method:"GET",headers:{"x-publishable-key":t,"Content-Type":"application/json"}});if(!r.ok)throw new Error(`Failed to load Stripe config: ${r.status}`);let o=await r.json();if(!o?.publishable_key)throw new Error("Missing Stripe publishable key in config response");let n=typeof o.merchant_identifier=="string"&&o.merchant_identifier.trim().length>0?o.merchant_identifier.trim():null;return {publishableKey:o.publishable_key,merchantIdentifier:n}}async function Tm(){return (await Al()).publishableKey}async function sp(e){let t=await fetch(`${Io()}/v1/public/onramps/headless/stripe/oauth/start`,{method:"POST",headers:{"x-publishable-key":_o(),"Content-Type":"application/json"},body:JSON.stringify({email:e})});if(!t.ok)throw new Error(`Failed to create auth intent: ${t.status}`);let r=await t.json();return r.auth_intent_id??r.id}async function km(e,t){let r=await fetch(`${Io()}/v1/public/onramps/headless/stripe/oauth/token`,{method:"POST",headers:{"x-publishable-key":_o(),"Content-Type":"application/json"},body:JSON.stringify({auth_intent_id:e,...t&&{crypto_customer_id:t}})});if(!r.ok)throw new Error(`Failed to exchange auth intent for tokens: ${r.status}`);return r.json()}async function ap(e,t){let r=await fetch(`${Io()}/v1/public/onramps/headless/stripe/oauth/token/refresh`,{method:"POST",headers:{"x-publishable-key":_o(),"Content-Type":"application/json"},body:JSON.stringify({refresh_token:e,...t&&{crypto_customer_id:t}})}),o=await r.json().catch(()=>({}));if(!r.ok)throw new Error(o?.message??`Failed to refresh OAuth token: ${r.status}`);return o}async function xm(e,t){let r={crypto_customer_id:e.cryptoCustomerId,payment_token:e.paymentToken,source_amount:e.sourceAmount,source_currency:e.sourceCurrency,destination_currency:e.destinationCurrency,wallet_address:e.walletAddress,destination_network:e.destinationNetwork},o=await fetch(`${Io()}/v1/public/onramps/headless/stripe/sessions`,{method:"POST",headers:{"x-publishable-key":_o(),"x-stripe-oauth-token":t,"Content-Type":"application/json"},body:JSON.stringify(r)}),n=await o.text();if(!o.ok)throw new Error(`Failed to create onramp session: ${o.status} ${n}`);return JSON.parse(n)}async function vm(e,t){let r=await fetch(`${Io()}/v1/public/onramps/headless/stripe/sessions/${e}/confirm`,{method:"POST",headers:{"x-publishable-key":_o(),"x-stripe-oauth-token":t,"Content-Type":"application/json"}}),o=await r.text();if(!r.ok)throw new Error(`Failed to confirm onramp session: ${r.status} ${o}`);return JSON.parse(o)}async function ii(e,t){let r=`${Io()}/v1/public/onramps/headless/stripe/customers/${e}`,o=await fetch(r,{method:"GET",headers:{"x-publishable-key":_o(),"x-stripe-oauth-token":t}}),n=await o.text();if(!o.ok)throw new Error(`Failed to get onramp customer: ${o.status} ${n}`);return JSON.parse(n)}async function Rm(e){let t=`${Io()}/v1/public/onramps/headless/stripe/sessions`,r=await fetch(t,{method:"GET",headers:{"x-publishable-key":_o(),"x-stripe-oauth-token":e}}),o=await r.text();if(!r.ok)throw new Error(`Failed to list onramp sessions: ${r.status} ${o}`);return JSON.parse(o)}async function _m(e,t){let r=`${Io()}/v1/public/onramps/headless/stripe/sessions/${e}`,o=await fetch(r,{method:"GET",headers:{"x-publishable-key":_o(),"x-stripe-oauth-token":t}}),n=await o.text();if(!o.ok)throw new Error(`Failed to get onramp session: ${o.status} ${n}`);return JSON.parse(n)}async function lp(e,t){let r=await fetch(`${Io()}/v1/public/onramps/headless/stripe/sessions/${e}/quote/refresh`,{method:"POST",headers:{"x-publishable-key":_o(),"x-stripe-oauth-token":t,"Content-Type":"application/json"}});if(!r.ok){let o=await r.text();throw new Error(`Failed to refresh quote: ${r.status} ${o}`)}return r.json()}async function cp(e){let t=new URLSearchParams({destinationNetwork:e.destinationNetwork,walletAddress:e.walletAddress});e.destinationTag&&t.set("destinationTag",e.destinationTag),e.cryptoCustomerId&&t.set("crypto_customer_id",e.cryptoCustomerId);let r=await fetch(`${Io()}/v1/public/onramps/headless/stripe/transaction_limits?${t.toString()}`,{method:"GET",headers:{"x-publishable-key":_o(),"x-stripe-oauth-token":e.accessToken}});if(!r.ok){let o=await r.text();throw new Error(`Failed to fetch transaction limits: ${r.status} ${o}`)}return r.json()}async function dp(e,t){let r=await fetch(`${Io()}/v1/public/onramps/headless/stripe/customers/${e}/payment_tokens`,{method:"GET",headers:{"x-publishable-key":_o(),"x-stripe-oauth-token":t}});if(!r.ok){let o=await r.text();throw new Error(`Failed to fetch payment tokens: ${r.status} ${o}`)}return r.json()}async function Im(e){if(!e.recipient_address)throw new Error("[Unifold] recipient_address is required for fetchDepositAddress. Pass recipientAddress in your onramp config.");let t={external_user_id:e.external_user_id,destination_chain_type:e.destination_chain_type||"ethereum",destination_chain_id:e.destination_chain_id||"8453",destination_token_address:e.destination_token_address||"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",recipient_address:e.recipient_address,client_metadata:{}},r=await fetch(`${Io()}/v1/public/deposit_addresses`,{method:"POST",headers:{accept:"application/json","x-publishable-key":_o(),"Content-Type":"application/json"},body:JSON.stringify(t)});if(!r.ok)throw new Error(`Failed to create deposit address: ${r.status}`);return r.json()}function Mi(e,t){if(e?.length){let r=e.find(n=>n.format==="png");if(r)return r.url;let o=e.find(n=>n.format==="svg");if(o)return o.url}return t}async function Pm(e){let t=new URLSearchParams({token_address:e.token_address,chain_id:e.chain_id,chain_type:e.chain_type}),r=await fetch(`${Io()}/v1/public/onramps/headless/stripe/default_token?${t.toString()}`,{method:"GET",headers:{accept:"application/json","x-publishable-key":_o()}});if(!r.ok)throw new Error(`Failed to fetch default onramp token: ${r.status}`);return r.json()}function tC({size:e=24}){let t=e,r=e*(471/750);return jsxRuntime.jsxs(ir__default.default,{width:t,height:r,viewBox:"0 0 750 471",children:[jsxRuntime.jsx(ir.Rect,{width:"750",height:"471",rx:"40",fill:"#1A1F71"}),jsxRuntime.jsx(ir.Path,{fill:"#FFFFFF",d:"M278.198,334.228l33.36-195.763h53.358l-33.384,195.763H278.198z"}),jsxRuntime.jsx(ir.Path,{fill:"#FFFFFF",d:"M524.307,142.687c-10.57-3.966-27.135-8.222-47.822-8.222c-52.725,0-89.863,26.551-90.18,64.604c-0.297,28.129,26.514,43.821,46.754,53.185c20.77,9.597,27.752,15.716,27.652,24.283c-0.133,13.123-16.586,19.116-31.924,19.116c-21.355,0-32.701-2.967-50.225-10.274l-6.877-3.112l-7.488,43.823c12.463,5.466,35.508,10.199,59.438,10.445c56.09,0,92.502-26.248,92.916-66.884c0.199-22.27-14.016-39.216-44.801-53.188c-18.65-9.056-30.072-15.099-29.951-24.269c0-8.137,9.668-16.838,30.559-16.838c17.447-0.271,30.088,3.534,39.936,7.5l4.781,2.259L524.307,142.687"}),jsxRuntime.jsx(ir.Path,{fill:"#FFFFFF",d:"M661.615,138.464h-41.23c-12.773,0-22.332,3.486-27.941,16.234l-79.244,179.402h56.031c0,0,9.16-24.121,11.232-29.418c6.123,0,60.555,0.084,68.336,0.084c1.596,6.854,6.492,29.334,6.492,29.334h49.512L661.615,138.464z M596.198,264.872c4.414-11.279,21.26-54.724,21.26-54.724c-0.314,0.521,4.381-11.334,7.074-18.684l3.607,16.878c0,0,10.217,46.729,12.352,56.527h-44.293V264.872z"}),jsxRuntime.jsx(ir.Path,{fill:"#FFFFFF",d:"M45.879,138.465l-0.682,4.073c21.093,5.106,39.932,12.496,56.426,21.689l47.346,169.688h56.455l83.004-195.45h-56.526l-52.238,133.496l-5.564-27.131c-0.261-0.838-0.544-1.678-0.834-2.52L156.106,154.992c-3.229-12.396-12.597-16.095-24.186-16.528H45.879z"})]})}function rC({size:e=24}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 24 24",children:jsxRuntime.jsxs(ir.G,{fill:"none",fillRule:"evenodd",children:[jsxRuntime.jsx(ir.Circle,{cx:"7",cy:"12",r:"7",fill:"#EA001B"}),jsxRuntime.jsx(ir.Circle,{cx:"17",cy:"12",r:"7",fill:"#FFA200",fillOpacity:.8})]})})}function oC({size:e=24}){return jsxRuntime.jsx(ir__default.default,{width:e,height:e,viewBox:"0 0 1152 1152",children:jsxRuntime.jsxs(ir.G,{transform:"matrix(1.3333333,0,0,-1.3333333,0,1152)",children:[jsxRuntime.jsx(ir.Path,{fill:"#006FCF",d:"M 0,0 H 863.998 V 864 H 0 Z"}),jsxRuntime.jsx(ir.G,{transform:"translate(312.9867,136.7145)",children:jsxRuntime.jsx(ir.Path,{fill:"#FFFFFF",d:"m 0,0 341.634,-0.725 53.654,59.858 54.038,-59.632 h 101.685 v 87.332 l -63.687,68.682 63.687,68.059 V 309.09 L 0,309.585 Z"})}),jsxRuntime.jsx(ir.G,{transform:"translate(349.7917,170.655)",children:jsxRuntime.jsx(ir.Path,{fill:"#006FCF",fillRule:"evenodd",d:"m 0,0 v 241.575 h 204.832 v -55.65 H 66.318 V 148.15 H 201.529 V 93.423 H 66.318 V 56.319 H 204.832 V 10e-4 Z"})}),jsxRuntime.jsx(ir.G,{transform:"translate(780.0408,412.227)",children:jsxRuntime.jsx(ir.Path,{fill:"#006FCF",d:"M 0,0 -69.456,-76.568 -138.713,0 h -87.729 l 113.343,-120.647 -113.341,-120.925 h 85.343 l 69.764,77.335 70.487,-77.335 h 84.803 v 3.43 L -26.971,-120.647 83.957,-1.903 V 0 Z"})}),jsxRuntime.jsx(ir.G,{transform:"translate(738.7857,721.0845)",children:jsxRuntime.jsx(ir.Path,{fill:"#FFFFFF",d:"M 0,0 -28.373,-79.366 -56.65,0 H -220.625 V -105.93 L -267.278,0 H -400.1 l -136.414,-309.586 h 661.726 l 0,309.586 z"})}),jsxRuntime.jsx(ir.G,{transform:"translate(373.0462,548.583)",children:jsxRuntime.jsx(ir.Path,{fill:"#006FCF",fillRule:"evenodd",d:"M 0,0 32.145,76.837 64.268,0 Z m -9.212,138.867 -107.187,-241.37 h 73.518 l 20.22,48.332 H 86.914 l 20.207,-48.332 h 75.345 L 75.723,138.867 Z"})}),jsxRuntime.jsx(ir.G,{transform:"translate(554.5071,446.121)",children:jsxRuntime.jsx(ir.Path,{fill:"#006FCF",d:"M 0,0 64.997,-0.001 V 165.796 L 126.661,-0.001 h 58.418 L 245.49,165.233 V -0.564 l 64,0.563 V 241.368 H 210.032 L 156.513,92.624 103.342,241.012 0,241.369 Z"})})]})})}function pp({sublabel:e,size:t=24,fallbackColor:r="#888"}){if(!e)return jsxRuntime.jsx(sa,{size:t*.75,color:r,strokeWidth:1.75});let o=e.toLowerCase();return o.includes("visa")?jsxRuntime.jsx(tC,{size:t}):o.includes("mastercard")?jsxRuntime.jsx(rC,{size:t}):o.includes("amex")||o.includes("american express")?jsxRuntime.jsx(oC,{size:t}):jsxRuntime.jsx(sa,{size:t*.75,color:r,strokeWidth:1.75})}function rd(e){if(!e)return "";let t=new Date(e*1e3);return t.toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})+" at "+t.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:true})}var mp={initialized:"Initialized",requires_payment:"Awaiting Payment",fulfillment_processing:"Processing",fulfillment_complete:"Complete",rejected:"Rejected"};function hp(e,t){switch(e){case "fulfillment_complete":return t.success;case "fulfillment_processing":case "requires_payment":return t.warning;case "rejected":return t.error;default:return t.foregroundMuted}}function Lm({status:e,colors:t,fontFamily:r}){let o=hp(e,t);return jsxRuntime.jsx(reactNative.View,{style:{paddingHorizontal:8,paddingVertical:2,borderRadius:6,backgroundColor:o+"20"},children:jsxRuntime.jsx(reactNative.Text,{style:{fontSize:11,color:o,fontFamily:r},children:mp[e]??e})})}function Bm({count:e=4}){let{colors:t,components:r}=A(),o=ws.useRef(new reactNative.Animated.Value(.5)).current,n=t.cardHover??t.border,s=Math.min(r.card.borderRadius??12,14);return ws.useEffect(()=>{let i=reactNative.Animated.loop(reactNative.Animated.sequence([reactNative.Animated.timing(o,{toValue:1,duration:800,useNativeDriver:true}),reactNative.Animated.timing(o,{toValue:.5,duration:800,useNativeDriver:true})]));return i.start(),()=>i.stop()},[o]),jsxRuntime.jsx(reactNative.View,{style:ba.list,children:Array.from({length:e}).map((i,a)=>jsxRuntime.jsxs(reactNative.View,{style:[ba.row,{backgroundColor:t.card,borderRadius:s,borderWidth:r.card.borderWidth,borderColor:t.border}],children:[jsxRuntime.jsxs(reactNative.View,{style:ba.left,children:[jsxRuntime.jsx(reactNative.Animated.View,{style:[ba.amountBar,{backgroundColor:n,opacity:o}]}),jsxRuntime.jsx(reactNative.Animated.View,{style:[ba.subtitleBar,{backgroundColor:n,opacity:o}]})]}),jsxRuntime.jsx(reactNative.Animated.View,{style:[ba.badgeBar,{backgroundColor:n,opacity:o}]})]},a))})}var ba=reactNative.StyleSheet.create({list:{gap:8},row:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:14,paddingHorizontal:16},left:{flex:1,gap:6},amountBar:{height:16,width:"40%",borderRadius:8},subtitleBar:{height:12,width:"55%",borderRadius:6},badgeBar:{height:20,width:80,borderRadius:6,marginLeft:12}});function Am({active:e,interval:t=15e3,color:r}){let o=ws.useRef(new reactNative.Animated.Value(0)).current;return ws.useEffect(()=>{if(!e){o.setValue(0);return}let n=()=>{o.setValue(0),reactNative.Animated.timing(o,{toValue:1,duration:t,useNativeDriver:false}).start(({finished:s})=>{s&&n();});};return n(),()=>o.stopAnimation()},[e,t,o]),e?jsxRuntime.jsx(reactNative.View,{style:{height:2,borderRadius:1,overflow:"hidden",opacity:.5},children:jsxRuntime.jsx(reactNative.Animated.View,{style:{height:2,borderRadius:1,backgroundColor:r,width:o.interpolate({inputRange:[0,1],outputRange:["0%","100%"]})}})}):null}function Wm({session:e,onBack:t}){let{colors:r,components:o,fonts:n}=A(),[s,i]=ws.useState(false),a=()=>{reactNative.Clipboard.setString(e.id),i(true),setTimeout(()=>i(false),2e3);},l=e.transaction_details,c=e.status!=="fulfillment_complete"&&e.status!=="rejected",p=hp(e.status,r),h=l?.source_amount?`$${parseFloat(l.source_amount).toFixed(2)}`:"\u2014",T=l?.destination_amount?parseFloat(l.destination_amount).toFixed(2):"\u2014",d=(l?.destination_currency??"").toUpperCase(),f=e.destination_token_metadata,C=Mi(f?.icon_urls,f?.icon_url),v=ga(l?.destination_network??""),x=l?.wallet_address?Gc(l.wallet_address):null,k=l?.fees?.network_fee_amount?`$${parseFloat(l.fees.network_fee_amount).toFixed(2)}`:null,R=l?.fees?.transaction_fee_amount?`$${parseFloat(l.fees.transaction_fee_amount).toFixed(2)}`:null,w=e.payment_method?e.payment_method.replace(/_/g," ").replace(/\b\w/g,m=>m.toUpperCase()):null,_=[{label:"Amount",value:h},{label:"Received",value:`${T} ${d}`},...w?[{label:"Payment",value:w}]:[],{label:"Network",value:v},...x?[{label:"Wallet",value:x}]:[],...k?[{label:"Network Fee",value:k}]:[],...R?[{label:"Transaction Fee",value:R}]:[]];return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(reactNative.View,{style:{paddingLeft:16,paddingTop:8},children:jsxRuntime.jsx(tr,{onPress:t,title:"Purchase Details",variant:"back"})}),jsxRuntime.jsxs(At,{style:Qr.scroll,contentContainerStyle:Qr.scrollContent,showsVerticalScrollIndicator:false,children:[jsxRuntime.jsxs(reactNative.View,{style:Qr.iconSection,children:[jsxRuntime.jsxs(reactNative.View,{style:{marginBottom:12,width:64,height:64},children:[jsxRuntime.jsx(ya,{currency:d||"USD",tokenIconUrl:C,size:64}),jsxRuntime.jsx(reactNative.View,{style:[Qr.statusBadge,{backgroundColor:p,borderColor:o.card.backgroundColor??r.background}],children:c?jsxRuntime.jsx(ho,{size:14,color:"#FFFFFF",strokeWidth:2.5}):e.status==="rejected"?jsxRuntime.jsx(Rt,{size:14,color:"#FFFFFF",strokeWidth:2.5}):jsxRuntime.jsx(dt,{size:14,color:"#FFFFFF",strokeWidth:2.5})})]}),jsxRuntime.jsxs(reactNative.View,{style:Qr.statusRow,children:[jsxRuntime.jsx(reactNative.View,{style:[Qr.statusDot,{backgroundColor:p}]}),jsxRuntime.jsx(reactNative.Text,{style:[Qr.statusText,{color:o.container.titleColor,fontFamily:n.semibold}],children:mp[e.status]??e.status})]}),e.created?jsxRuntime.jsx(reactNative.Text,{style:[Qr.dateText,{color:o.container.subtitleColor,fontFamily:n.regular}],children:rd(e.created)}):null]}),jsxRuntime.jsxs(reactNative.View,{style:[Qr.card,{backgroundColor:o.card.backgroundColor,borderRadius:o.card.borderRadius,borderWidth:o.card.borderWidth,borderColor:o.card.borderColor}],children:[jsxRuntime.jsxs(reactNative.View,{style:Qr.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Qr.cardLabel,{color:o.card.rowLeftLabel,fontFamily:n.regular}],children:"ID"}),jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:a,activeOpacity:.7,style:{flexDirection:"row",alignItems:"center",gap:6,flexShrink:1},children:[jsxRuntime.jsx(reactNative.Text,{style:[Qr.cardValue,{color:o.card.rowRightLabel,fontFamily:n.medium,fontSize:12}],numberOfLines:1,children:e.id.length>12?e.id.slice(0,12)+"\u2026":e.id}),s?jsxRuntime.jsx(dt,{size:14,color:r.primary,strokeWidth:2}):jsxRuntime.jsx(un,{size:14,color:r.foregroundMuted,strokeWidth:2})]})]}),_.map(m=>jsxRuntime.jsx(ws__namespace.default.Fragment,{children:jsxRuntime.jsxs(reactNative.View,{style:Qr.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Qr.cardLabel,{color:o.card.rowLeftLabel,fontFamily:n.regular}],children:m.label}),jsxRuntime.jsx(reactNative.Text,{style:[Qr.cardValue,{color:o.card.rowRightLabel,fontFamily:n.medium}],selectable:true,children:m.value})]})},m.label))]}),l?.last_error?jsxRuntime.jsx(reactNative.View,{style:[Qr.card,{backgroundColor:r.errorBackground,borderRadius:o.card.borderRadius}],children:jsxRuntime.jsxs(reactNative.View,{style:Qr.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Qr.cardLabel,{color:r.error,fontFamily:n.regular}],children:"Error"}),jsxRuntime.jsx(reactNative.Text,{style:[Qr.cardValue,{color:r.error,fontFamily:n.medium,flex:1,textAlign:"right"}],selectable:true,children:l.last_error})]})}):null]})]})}var Qr=reactNative.StyleSheet.create({scroll:{flex:1,paddingTop:8},scrollContent:{paddingHorizontal:24,paddingBottom:32},iconSection:{alignItems:"center",marginBottom:24},statusBadge:{position:"absolute",bottom:-4,right:-4,width:24,height:24,borderRadius:12,alignItems:"center",justifyContent:"center",borderWidth:2},statusRow:{flexDirection:"row",alignItems:"center",gap:6,marginBottom:4},statusDot:{width:8,height:8,borderRadius:4},statusText:{fontSize:16,fontWeight:"600"},dateText:{fontSize:14,marginBottom:2},card:{borderRadius:12,marginBottom:12,overflow:"hidden"},cardRow:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",paddingVertical:14,paddingHorizontal:16},cardLabel:{fontSize:14},cardValue:{fontSize:14,fontWeight:"500"}});function Mm({onSelect:e,showKycOption:t=true,showSwitchAccount:r=true}){let{colors:o,fonts:n,components:s}=A(),[i,a]=ws.useState(false),l=c=>{a(false),e(c);};return jsxRuntime.jsxs(reactNative.View,{style:On.wrapper,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:On.trigger,onPress:()=>a(c=>!c),hitSlop:{top:10,bottom:10,left:10,right:10},accessibilityRole:"button",accessibilityLabel:"More options",children:jsxRuntime.jsx(Xf,{size:20,color:o.foreground,strokeWidth:2})}),i&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(reactNative.Pressable,{style:On.backdrop,onPress:()=>a(false)}),jsxRuntime.jsxs(reactNative.View,{style:[On.menu,{backgroundColor:s.card.backgroundColor,borderRadius:s.card.borderRadius??12,borderWidth:s.card.borderWidth,borderColor:s.card.borderColor,...reactNative.Platform.select({ios:{shadowColor:"#000",shadowOffset:{width:0,height:4},shadowOpacity:.15,shadowRadius:12},android:{elevation:8}})}],children:[jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:On.menuItem,onPress:()=>l("history"),activeOpacity:.6,children:[jsxRuntime.jsx(ho,{size:18,color:o.foreground,strokeWidth:1.8}),jsxRuntime.jsx(reactNative.Text,{style:[On.menuLabel,{color:o.foreground,fontFamily:n.regular}],children:"Purchase History"})]}),t&&jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:On.menuItem,onPress:()=>l("kyc"),activeOpacity:.6,children:[jsxRuntime.jsx(So,{size:18,color:o.foreground,strokeWidth:1.8}),jsxRuntime.jsx(reactNative.Text,{style:[On.menuLabel,{color:o.foreground,fontFamily:n.regular}],children:"Increase Limits (KYC)"})]}),r&&jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:On.menuItem,onPress:()=>l("logout"),activeOpacity:.6,children:[jsxRuntime.jsx(em,{size:18,color:o.error,strokeWidth:1.8}),jsxRuntime.jsx(reactNative.Text,{style:[On.menuLabel,{color:o.error,fontFamily:n.regular}],children:"Switch Account"})]})]})]})]})}var On=reactNative.StyleSheet.create({wrapper:{zIndex:9999},trigger:{width:28,height:28,borderRadius:8,alignItems:"center",justifyContent:"center"},backdrop:{position:"absolute",top:-500,left:-500,width:2e3,height:2e3,zIndex:9998},menu:{position:"absolute",top:32,left:0,minWidth:200,paddingVertical:6,zIndex:9999},menuItem:{flexDirection:"row",alignItems:"center",paddingHorizontal:14,paddingVertical:12,gap:12},menuLabel:{fontSize:15}});var yC=[50,100,500],bC=[["1","2","3"],["4","5","6"],["7","8","9"],[".","0","\u232B"]];function Um(e){return e.charAt(0).toUpperCase()+e.slice(1)}function CC(e){return e.card?`${Um(e.card.brand)} ${Um(e.card.funding)} \u2022\u2022\u2022\u2022 ${e.card.last4}`:e.type}function sd({initialAmount:e="",currency:t="USD",applePaySupported:r=false,hideQuickAmounts:o=false,minAmount:n,maxAmount:s,paymentSelectorPosition:i="inline",onCollectPayment:a,paymentLoading:l=false,paymentStatus:c,paymentError:p,paymentTokens:h=[],onAddPaymentMethod:T,onConfirm:d,onCancel:f,sheetBorderTopLeftRadius:C,sheetBorderTopRightRadius:v,accessToken:x,showHistoryProgressBar:k=true,onLogout:R,onRequestKYC:w,showSwitchAccount:_=true,inputDisabled:m=false}){let u=Dn(),{colors:S,components:y,fonts:F}=A(),L=C??y.card.borderRadius,V=v??y.card.borderRadius,[D,O]=ws.useState(e),[N,M]=ws.useState(r?"apple_pay":h.length>0?h[0].id:null),Ve=ws.useRef(false),se=I=>{Ve.current=true,M(I);};ws.useEffect(()=>{Ve.current||r||h.length>0&&M(h[0].id);},[h,r]);let[Le,J]=ws.useState(false),[pe,ee]=ws.useState("select"),[U,de]=ws.useState(null),Z=ws.useRef(false);ws.useEffect(()=>{l&&c&&/saving/i.test(c)&&ee("card");},[l,c]);let he=s,it=he!=null&&he>0,Oe=ws.useMemo(()=>{if(o)return [];let I=yC.map(b=>({label:`$${b}`,amount:String(b),disabled:false}));return I.push({label:"MAX",amount:it?String(he):"0",disabled:!it}),I},[o,it,he]),te=I=>{if(I==="\u232B"){O(b=>b.slice(0,-1));return}if(I==="."){if(D.includes("."))return;O(b=>b===""?"0.":b+".");return}O(b=>{let B=b.indexOf(".");return B!==-1&&b.length-B>2?b:b==="0"&&I!=="."?I:b+I});},je=D===""?"0":D,Xe=parseFloat(D),qe=n!=null&&!isNaN(Xe)&&Xe>0&&Xe<n,ft=he!=null&&he>0&&!isNaN(Xe)&&Xe>he,He=D!==""&&!isNaN(Xe)&&Xe>0&&!qe&&!ft,Ae=r||h.length>0,We=i==="header",_e=ws.useMemo(()=>{let I=[];r&&I.push({id:"apple_pay",label:"Apple Pay",hint:"Pay with Apple Pay",isApplePay:true});for(let b of h)I.push({id:b.id,label:CC(b),hint:b.card?`Expires ${b.card.exp_month}/${b.card.exp_year}`:b.type,brand:b.card?.brand,isApplePay:false});return I},[r,h]),be=_e.find(I=>I.id===N),Ye=N!=null&&N!=="apple_pay",at=be?be.label:Ye&&U?U:Ye?"Card":"Pay With",Tr=be?!be.isApplePay:Ye,$e=be?.brand??U??void 0,[Ie,et]=ws.useState(false),[lt,xe]=ws.useState([]),[ve,Ee]=ws.useState(false),[ge,ct]=ws.useState(null),[Ft,mt]=ws.useState(null),or=ws.useRef(null);or.current=Ft;let Me=ws.useRef(false);Me.current=Ie;let wt=ws.useCallback(async(I=false)=>{if(x){I||(Ee(true),ct(null));try{let b=await Rm(x);if(!Me.current)return;let B=Array.isArray(b.data)?b.data:Array.isArray(b)?b:[];xe(B),I||ct(null);let H=or.current?.id;if(H){let $=B.find(q=>q.id===H);$&&mt($);}}catch(b){if(!Me.current)return;I||ct(b?.message??"Failed to load history");}finally{!I&&Me.current&&Ee(false);}}},[x]),ot=ws.useCallback(()=>{et(true),wt();},[wt]);ws.useEffect(()=>{if(!Ie||!x)return;let I=setInterval(()=>wt(true),15e3);return ()=>clearInterval(I)},[Ie,x,wt]);let Ce=ws.useCallback(I=>{switch(I){case "history":ot();break;case "kyc":w?.();break;case "logout":R?.();break}},[ot,w,R]),K=!!x||!!w||!!R?jsxRuntime.jsx(Mm,{onSelect:Ce,showKycOption:!!w,showSwitchAccount:_&&!!R}):void 0,Re=Ae?jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[We?u.amount.paymentRowHeader:u.amount.paymentRow,l&&{opacity:.5}],onPress:()=>{l||(ee("select"),J(true));},activeOpacity:.7,disabled:l,children:jsxRuntime.jsxs(reactNative.View,{style:u.amount.paymentLeft,children:[be?.isApplePay?jsxRuntime.jsx(reactNative.Text,{style:u.amount.applePayIcon,children:"\uF8FF"}):Tr?jsxRuntime.jsx(pp,{sublabel:$e,size:20}):null,jsxRuntime.jsx(reactNative.Text,{style:u.amount.paymentLabel,children:at}),jsxRuntime.jsx(lr,{size:12,color:u.amount.currencyLabel.color,strokeWidth:2.5})]})}):null;return jsxRuntime.jsxs(reactNative.View,{style:u.form.screen,children:[jsxRuntime.jsx(tr,{onPress:f,title:"Enter amount",leftAction:K}),We&&Re,jsxRuntime.jsxs(reactNative.View,{style:u.form.content,children:[jsxRuntime.jsxs(reactNative.View,{style:u.amount.amountContainer,children:[jsxRuntime.jsxs(reactNative.Text,{style:[u.amount.amountText,je==="0"&&u.amount.amountPlaceholder],adjustsFontSizeToFit:true,numberOfLines:1,children:["$",je]}),jsxRuntime.jsx(reactNative.Text,{style:u.amount.currencyLabel,children:t.toUpperCase()}),qe&&n!=null&&jsxRuntime.jsxs(reactNative.Text,{style:[u.amount.minAmountText,{color:S.warning}],children:["Minimum amount is $",n.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2})," ",t.toUpperCase()]}),ft&&he!=null&&jsxRuntime.jsxs(reactNative.Text,{style:[u.amount.minAmountText,{color:S.warning}],children:["Maximum amount is $",he.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2})," ",t.toUpperCase()]})]}),!We&&Re,Oe.length>0&&jsxRuntime.jsx(reactNative.View,{style:u.amount.quickRow,children:Oe.map(I=>{let b=!I.disabled&&D===I.amount&&D!=="";return jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[u.amount.quickPill,b&&{backgroundColor:S.primary},I.disabled&&{opacity:.4}],activeOpacity:.7,disabled:I.disabled||l,onPress:()=>O(I.amount),children:jsxRuntime.jsx(reactNative.Text,{style:[u.amount.quickPillText,b&&{color:S.primaryForeground}],children:I.label})},I.label)})}),jsxRuntime.jsx(reactNative.View,{style:u.amount.numpad,children:bC.map((I,b)=>jsxRuntime.jsx(reactNative.View,{style:u.amount.numpadRow,children:I.map(B=>jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[u.amount.numpadKey,(l||m)&&{opacity:.3}],onPress:()=>te(B),activeOpacity:.6,disabled:l||m,children:jsxRuntime.jsx(reactNative.Text,{style:B==="\u232B"?u.amount.backspaceText:u.amount.numpadKeyText,children:B})},B))},b))}),jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[u.form.continueBtn,(!He||l||m)&&u.form.continueBtnDisabled],onPress:()=>He&&!l&&!m&&d(D,N),disabled:!He||l||m,children:l?jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"small",color:S.primaryForeground}):jsxRuntime.jsx(reactNative.Text,{style:[u.form.continueBtnText,(!He||m)&&u.form.continueBtnTextDisabled],children:"Continue"})}),!Le&&p?jsxRuntime.jsx(reactNative.Text,{style:u.amount.inlineError,children:p}):!Le&&l&&c&&__DEV__?jsxRuntime.jsx(reactNative.Text,{style:u.amount.inlineStatus,children:c}):null]}),jsxRuntime.jsx(zt,{visible:Le,onClose:()=>{l||(J(false),ee("select"));},closeOnBackdropPress:!l,enablePanDownToClose:!l,showHandle:!l,heightPercent:.44,maxHeightPercent:.9,borderTopLeftRadius:L,borderTopRightRadius:V,children:jsxRuntime.jsx(reactNative.View,{style:u.amount.sheetContent,children:pe==="select"?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(reactNative.View,{style:u.amount.sheetTitleRow,children:[jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetTitle,children:"Pay With"}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>J(false),activeOpacity:.7,style:u.amount.sheetCloseBtn,children:jsxRuntime.jsx(Rt,{size:16,color:S.foregroundMuted,strokeWidth:2.5})})]}),jsxRuntime.jsxs(At,{style:{flex:1},contentContainerStyle:{gap:8},showsVerticalScrollIndicator:false,children:[_e.map(I=>{let b=N===I.id;return jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{style:[u.amount.sheetOption,b&&{borderColor:S.primary,borderWidth:2}],activeOpacity:.7,onPress:()=>{se(I.id),de(I.isApplePay?null:I.label),J(false);},children:[jsxRuntime.jsxs(reactNative.View,{style:u.amount.sheetOptionLeft,children:[jsxRuntime.jsx(reactNative.View,{style:u.amount.sheetOptionIcon,children:I.isApplePay?jsxRuntime.jsx(reactNative.Text,{style:u.amount.applePayIcon,children:"\uF8FF"}):jsxRuntime.jsx(pp,{sublabel:I.brand,size:24})}),jsxRuntime.jsxs(reactNative.View,{style:{flex:1},children:[jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetOptionLabel,children:I.label}),jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetOptionHint,children:I.hint})]})]}),b&&jsxRuntime.jsx(dt,{size:18,color:S.primary,strokeWidth:2.5})]},I.id)}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{style:u.amount.addPaymentBtn,activeOpacity:.7,onPress:async()=>{if(!Z.current){Z.current=true;try{let I=await T?.();I&&(se(I.token),de(I.sublabel),J(!1));}finally{Z.current=false;}}},children:jsxRuntime.jsx(reactNative.Text,{style:u.amount.addPaymentBtnText,children:"Add Payment Method"})})]})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(reactNative.View,{style:u.amount.sheetHeader,children:[jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{l||ee("select");},activeOpacity:.7,style:u.amount.sheetBackBtn,children:jsxRuntime.jsx(aa,{size:20,color:S.foreground,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetTitle,children:"Pay With"})]}),l?jsxRuntime.jsxs(reactNative.View,{style:u.amount.sheetLoading,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"small",color:S.primary}),__DEV__?jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetStatusText,children:c||"Loading Stripe Link..."}):null]}):p?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(reactNative.View,{style:u.amount.sheetError,children:jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetErrorText,children:p})}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{style:u.form.continueBtn,onPress:()=>{a&&He&&a(false,D);},children:jsxRuntime.jsx(reactNative.Text,{style:u.form.continueBtnText,children:"Retry"})})]}):jsxRuntime.jsxs(reactNative.View,{style:u.amount.sheetLoading,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"small",color:S.primary}),__DEV__?jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetStatusText,children:"Opening card payment..."}):null]})]})})}),jsxRuntime.jsx(zt,{visible:Ie,onClose:()=>{et(false),mt(null);},closeOnBackdropPress:true,enablePanDownToClose:true,showHandle:true,heightPercent:.9,borderTopLeftRadius:L,borderTopRightRadius:V,children:Ft?jsxRuntime.jsx(Wm,{session:Ft,onBack:()=>mt(null)}):jsxRuntime.jsxs(reactNative.View,{style:u.amount.sheetContent,children:[jsxRuntime.jsx(tr,{onPress:()=>et(false),title:"Purchase History"}),k&&jsxRuntime.jsx(Am,{active:Ie&&!ve&&lt.length>0,color:S.primary}),ve?jsxRuntime.jsx(Bm,{}):ge?jsxRuntime.jsx(reactNative.View,{style:u.amount.sheetError,children:jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetErrorText,children:ge})}):lt.length===0?jsxRuntime.jsx(reactNative.View,{style:u.amount.sheetLoading,children:jsxRuntime.jsx(reactNative.Text,{style:[u.amount.sheetStatusText,{color:S.foregroundMuted}],children:"No purchases yet"})}):jsxRuntime.jsx(At,{style:{flex:1},contentContainerStyle:{gap:8},showsVerticalScrollIndicator:false,children:lt.map(I=>{let b=I.transaction_details,B=b?.source_amount?`$${parseFloat(b.source_amount).toFixed(2)}`:"\u2014",H=(b?.destination_currency??"").toUpperCase(),$=b?.destination_amount?`${parseFloat(b.destination_amount).toFixed(2)} ${H}`:"",q=rd(I.created),ue=I.destination_token_metadata,Qe=Mi(ue?.icon_urls,ue?.icon_url),W=Mi(ue?.chain?.icon_urls,ue?.chain?.icon_url);return jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{style:u.amount.sheetOption,activeOpacity:.7,onPress:()=>mt(I),children:[jsxRuntime.jsx(ya,{currency:H||"USD",tokenIconUrl:Qe,networkIconUrl:W,size:36}),jsxRuntime.jsxs(reactNative.View,{style:{flex:1,gap:2,marginLeft:12},children:[jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetOptionLabel,children:B}),$?jsxRuntime.jsx(reactNative.Text,{style:u.amount.sheetOptionHint,children:$}):null]}),jsxRuntime.jsxs(reactNative.View,{style:{flexDirection:"row",alignItems:"center",gap:8},children:[jsxRuntime.jsxs(reactNative.View,{style:{alignItems:"flex-end",gap:2},children:[jsxRuntime.jsx(Lm,{status:I.status,colors:S,fontFamily:F.regular}),q?jsxRuntime.jsx(reactNative.Text,{style:{fontSize:11,color:S.foregroundMuted,fontFamily:F.regular},children:q}):null]}),jsxRuntime.jsx(Wr,{size:14,color:S.foregroundMuted,strokeWidth:2})]})]},I.id)})})]})})]})}function ad({initialData:e={},loading:t=false,level:r="L0",onComplete:o,onCancel:n}){let s=Dn(),{colors:i,fonts:a,components:l}=A(),c=l.input.placeholderColor,p=r==="L0"?["name","address"]:["name","dob","address","ssn"],h=p.length,[T,d]=ws.useState(1),[f,C]=ws.useState(e.firstName??""),[v,x]=ws.useState(e.lastName??""),[k,R]=ws.useState(e.dobMonth??""),[w,_]=ws.useState(e.dobDay??""),[m,u]=ws.useState(e.dobYear??""),[S,y]=ws.useState(e.addressLine1??""),[F,L]=ws.useState(e.addressLine2??""),[V,D]=ws.useState(e.city??""),[O,N]=ws.useState(e.state??""),[M,Ve]=ws.useState(e.postalCode??""),[se,Le]=ws.useState(e.country??"US"),[J,pe]=ws.useState(e.idNumber??""),ee=ws.useRef(null),U=ws.useRef(null),de=ws.useRef(null),Z=ws.useRef(null),he=ws.useRef(null),it=ws.useRef(null),Oe=ws.useRef(null),te=ws.useRef(null),je=p[T-1],Xe=()=>{switch(je){case "name":return f.trim().length>0&&v.trim().length>0;case "dob":return k.length===2&&w.length===2&&m.length===4;case "address":return S.trim().length>0&&V.trim().length>0&&O.trim().length>0&&M.trim().length>0;case "ssn":return J.trim().length>0;default:return false}},qe=()=>{Xe()&&(T<h?d(_e=>_e+1):o({firstName:f,lastName:v,idNumber:J,dobMonth:k,dobDay:w,dobYear:m,addressLine1:S,addressLine2:F,city:V,state:O,postalCode:M,country:se}));},ft=()=>{T>1?d(_e=>_e-1):n();},He={name:{title:"Enter your name",subtitle:"Use your full legal name as it appears on your ID."},dob:{title:"Enter your date of birth",subtitle:"We use this to verify your identity."},address:{title:"Enter your address",subtitle:"Enter the address associated with your ID."},ssn:{title:"Enter your SSN",subtitle:"Your SSN is encrypted and used only for identity verification."}},{subtitle:Ae}=He[je],We=[Fr.stepCounter,{color:i.foregroundMuted},...a.semibold?[{fontFamily:a.semibold}]:[]];return jsxRuntime.jsx(reactNative.KeyboardAvoidingView,{style:s.form.flex,behavior:reactNative.Platform.OS==="ios"?"padding":void 0,children:jsxRuntime.jsxs(reactNative.View,{style:s.form.screen,children:[jsxRuntime.jsxs(reactNative.View,{style:Fr.header,children:[jsxRuntime.jsx(reactNative.View,{style:Fr.headerSide,children:!t&&jsxRuntime.jsx(reactNative.TouchableOpacity,{style:Fr.iconButton,onPress:ft,hitSlop:{top:10,bottom:10,left:10,right:10},accessibilityRole:"button",accessibilityLabel:T>1?"Back":"Cancel",children:jsxRuntime.jsx(Sl,{size:20,color:l.header.buttonColor,strokeWidth:2})})}),jsxRuntime.jsx(reactNative.View,{style:Fr.headerCenter,children:jsxRuntime.jsxs(reactNative.Text,{style:We,children:[T," of ",h]})}),jsxRuntime.jsx(reactNative.View,{style:Fr.headerSide,children:jsxRuntime.jsx(reactNative.TouchableOpacity,{style:Fr.iconButton,onPress:n,hitSlop:{top:10,bottom:10,left:10,right:10},accessibilityRole:"button",accessibilityLabel:"Close",children:jsxRuntime.jsx(Rt,{size:20,color:l.header.buttonColor,strokeWidth:2})})})]}),jsxRuntime.jsx(reactNative.View,{style:Fr.progressTrack,children:Array.from({length:h}).map((_e,be)=>jsxRuntime.jsx(reactNative.View,{style:[Fr.progressSegment,{backgroundColor:be<T||be+1===T?i.primary:i.border}]},be))}),jsxRuntime.jsx(At,{style:s.form.flex,contentContainerStyle:Fr.scrollContent,keyboardShouldPersistTaps:"handled",showsVerticalScrollIndicator:false,children:jsxRuntime.jsxs(reactNative.View,{pointerEvents:t?"none":"auto",style:[s.form.flex,t&&{opacity:.5}],children:[jsxRuntime.jsx(reactNative.Text,{style:s.form.subtitle,children:Ae}),je==="name"&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ai,{form:s.form,label:"First name",children:jsxRuntime.jsx(reactNative.TextInput,{style:s.form.input,placeholder:"Jane",placeholderTextColor:c,value:f,onChangeText:C,autoCapitalize:"words",returnKeyType:"next",onSubmitEditing:()=>ee.current?.focus()})}),jsxRuntime.jsx(ai,{form:s.form,label:"Last name",children:jsxRuntime.jsx(reactNative.TextInput,{ref:ee,style:s.form.input,placeholder:"Doe",placeholderTextColor:c,value:v,onChangeText:x,autoCapitalize:"words",returnKeyType:"done",onSubmitEditing:qe})})]}),je==="dob"&&jsxRuntime.jsxs(reactNative.View,{style:Fr.dobRow,children:[jsxRuntime.jsxs(reactNative.View,{style:Fr.dobCol,children:[jsxRuntime.jsx(reactNative.Text,{style:[s.form.fieldLabel,Fr.dobLabel],children:"Month"}),jsxRuntime.jsx(reactNative.TextInput,{style:[s.form.input,Fr.dobInput],placeholder:"MM",placeholderTextColor:c,value:k,onChangeText:_e=>{let be=_e.replace(/\D/g,"").slice(0,2);R(be),be.length===2&&U.current?.focus();},keyboardType:"number-pad",maxLength:2})]}),jsxRuntime.jsxs(reactNative.View,{style:Fr.dobCol,children:[jsxRuntime.jsx(reactNative.Text,{style:[s.form.fieldLabel,Fr.dobLabel],children:"Day"}),jsxRuntime.jsx(reactNative.TextInput,{ref:U,style:[s.form.input,Fr.dobInput],placeholder:"DD",placeholderTextColor:c,value:w,onChangeText:_e=>{let be=_e.replace(/\D/g,"").slice(0,2);_(be),be.length===2&&de.current?.focus();},keyboardType:"number-pad",maxLength:2})]}),jsxRuntime.jsxs(reactNative.View,{style:Fr.dobColWide,children:[jsxRuntime.jsx(reactNative.Text,{style:[s.form.fieldLabel,Fr.dobLabel],children:"Year"}),jsxRuntime.jsx(reactNative.TextInput,{ref:de,style:[s.form.input,Fr.dobInput],placeholder:"YYYY",placeholderTextColor:c,value:m,onChangeText:_e=>{let be=_e.replace(/\D/g,"").slice(0,4);u(be);},keyboardType:"number-pad",maxLength:4,returnKeyType:"done",onSubmitEditing:qe})]})]}),je==="address"&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(ai,{form:s.form,label:"Street address",children:jsxRuntime.jsx(reactNative.TextInput,{style:s.form.input,placeholder:"123 Main St",placeholderTextColor:c,value:S,onChangeText:y,returnKeyType:"next",onSubmitEditing:()=>Z.current?.focus()})}),jsxRuntime.jsx(ai,{form:s.form,label:"Apt, suite, etc. (optional)",children:jsxRuntime.jsx(reactNative.TextInput,{ref:Z,style:s.form.input,placeholder:"Apt 2",placeholderTextColor:c,value:F,onChangeText:L,returnKeyType:"next",onSubmitEditing:()=>he.current?.focus()})}),jsxRuntime.jsx(ai,{form:s.form,label:"City",children:jsxRuntime.jsx(reactNative.TextInput,{ref:he,style:s.form.input,placeholder:"San Francisco",placeholderTextColor:c,value:V,onChangeText:D,autoCapitalize:"words",returnKeyType:"next",onSubmitEditing:()=>it.current?.focus()})}),jsxRuntime.jsxs(reactNative.View,{style:Fr.row,children:[jsxRuntime.jsx(reactNative.View,{style:[s.form.flex,{marginRight:8}],children:jsxRuntime.jsx(ai,{form:s.form,label:"State",children:jsxRuntime.jsx(reactNative.TextInput,{ref:it,style:s.form.input,placeholder:"CA",placeholderTextColor:c,value:O,onChangeText:_e=>N(_e.toUpperCase().slice(0,2)),autoCapitalize:"characters",maxLength:2,returnKeyType:"next",onSubmitEditing:()=>Oe.current?.focus()})})}),jsxRuntime.jsx(reactNative.View,{style:s.form.flex,children:jsxRuntime.jsx(ai,{form:s.form,label:"ZIP code",children:jsxRuntime.jsx(reactNative.TextInput,{ref:Oe,style:s.form.input,placeholder:"94001",placeholderTextColor:c,value:M,onChangeText:Ve,keyboardType:"number-pad",maxLength:10,returnKeyType:"next",onSubmitEditing:()=>te.current?.focus()})})})]}),jsxRuntime.jsx(ai,{form:s.form,label:"Country",children:jsxRuntime.jsx(reactNative.TextInput,{ref:te,style:s.form.input,placeholder:"US",placeholderTextColor:c,value:se,onChangeText:_e=>Le(_e.toUpperCase().slice(0,2)),autoCapitalize:"characters",maxLength:2,returnKeyType:"done",onSubmitEditing:qe})})]}),je==="ssn"&&jsxRuntime.jsxs(ai,{form:s.form,label:"Social Security Number",children:[jsxRuntime.jsx(reactNative.TextInput,{style:s.form.input,placeholder:"123-45-6789",placeholderTextColor:c,value:J,onChangeText:pe,keyboardType:"number-pad",secureTextEntry:true,returnKeyType:"done",onSubmitEditing:qe}),jsxRuntime.jsx(reactNative.Text,{style:[s.form.hint,Fr.ssnHint],children:"Your SSN is transmitted securely and never stored on this device."})]})]})}),jsxRuntime.jsx(reactNative.View,{style:s.form.footer,children:t&&T>=h?jsxRuntime.jsx(reactNative.View,{style:[s.form.continueBtn,s.form.loaderInButton],children:jsxRuntime.jsx(kt,{size:28,strokeWidth:2,gradientFrom:i.primaryForeground,gradientTo:i.primaryForeground})}):jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[s.form.continueBtn,!Xe()&&s.form.continueBtnDisabled],onPress:qe,disabled:!Xe(),children:jsxRuntime.jsx(reactNative.Text,{style:[s.form.continueBtnText,!Xe()&&s.form.continueBtnTextDisabled],children:T>=h?"Submit":"Continue"})})})]})})}function ai({form:e,label:t,children:r}){return jsxRuntime.jsxs(reactNative.View,{style:e.fieldWrap,children:[jsxRuntime.jsx(reactNative.Text,{style:e.fieldLabel,children:t}),r]})}var Fr=reactNative.StyleSheet.create({header:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingTop:16,paddingBottom:16},headerSide:{width:40,alignItems:"center"},headerCenter:{flex:1,alignItems:"center",justifyContent:"center"},iconButton:{width:28,height:28,borderRadius:8,backgroundColor:"transparent",alignItems:"center",justifyContent:"center"},stepCounter:{fontSize:15},progressTrack:{flexDirection:"row",gap:4,marginBottom:12},progressSegment:{flex:1,height:3,borderRadius:2},scrollContent:{flexGrow:1,paddingBottom:16,paddingTop:4},dobRow:{flexDirection:"row",gap:10,marginBottom:20},dobCol:{flex:1},dobColWide:{flex:1.5},dobLabel:{textAlign:"center"},dobInput:{textAlign:"center"},row:{flexDirection:"row"},ssnHint:{marginTop:10,lineHeight:18}});var kp="@unifold/stripe_oauth";async function Hm(){try{let e=await Tp__default.default.getItem(kp);return e?JSON.parse(e):null}catch{return null}}async function xp(e){try{await Tp__default.default.setItem(kp,JSON.stringify(e));}catch(t){console.warn("[oauthTokens] Failed to store credentials:",t);}}async function Sa(){try{await Tp__default.default.removeItem(kp);}catch(e){console.warn("[oauthTokens] Failed to clear credentials:",e);}}var _C=5,qi=null,vp=false,Rp={firstName:"",lastName:"",idNumber:"",dobDay:"",dobMonth:"",dobYear:"",addressLine1:"",addressLine2:"",city:"",state:"",postalCode:"",country:"US"};function ld(e){let t=e?.flowOrder==="amount_first",r=t?"session_params":"email",{configure:o,hasLinkAccount:n,registerLinkUser:s,authorize:i,attachKycInfo:a,presentKycInfoVerification:l,verifyIdentity:c,registerWalletAddress:p,collectPaymentMethod:h,createCryptoPaymentToken:T}=stripeReactNative.useOnramp(),[d,f]=ws.useState(r),[C,v]=ws.useState(!!e?.externalUserId),[x,k]=ws.useState(false),[R,w]=ws.useState(false),[_,m]=ws.useState(""),[u,S]=ws.useState(null),[y,F]=ws.useState(e?.email??""),[L,V]=ws.useState(e?.phone??""),[D,O]=ws.useState(""),[N,M]=ws.useState("US"),[Ve,se]=ws.useState(""),[Le,J]=ws.useState(""),pe=ws.useRef(""),ee=ws.useRef(""),U=ws.useRef(""),[de,Z]=ws.useState(false),[he,it]=ws.useState(false),Oe=ws.useRef(0),te=ws.useRef(false),je=ws.useRef(false),Xe=ws.useRef(false),qe=ws.useRef(false),ft=ws.useRef(e?.email??""),He=ws.useRef(false),Ae=ws.useRef(null),We=ws.useRef(""),_e=ws.useRef(e?.defaultNetwork??stripeReactNative.Onramp.CryptoNetwork.base),be=ws.useRef(null),[Ge,Ye]=ws.useState(0),[at,Tr]=ws.useState(Rp),[$e,Ie]=ws.useState(e?.defaultWalletAddress??""),[et,lt]=ws.useState(""),[xe,ve]=ws.useState(e?.defaultNetwork??stripeReactNative.Onramp.CryptoNetwork.base),[Ee,ge]=ws.useState(e?.defaultSourceAmount??"100"),[ct,Ft]=ws.useState(e?.defaultSourceCurrency??"usd"),[mt,or]=ws.useState(e?.defaultDestinationCurrency??"usdc"),[Me,wt]=ws.useState(null),[ot,Ce]=ws.useState(),[ze,K]=ws.useState(),[Re,I]=ws.useState(false),b=ws.useRef(null),B=ws.useRef(false),H=ws.useRef(0),$=ws.useRef(e?.onComplete),q=ws.useRef(e?.onError),ue=ws.useRef(e?.onStepChange),Qe=ws.useRef(r);ws.useEffect(()=>{$.current=e?.onComplete;},[e?.onComplete]),ws.useEffect(()=>{q.current=e?.onError;},[e?.onError]),ws.useEffect(()=>{ue.current=e?.onStepChange;},[e?.onStepChange]);let W=ws.useRef(r);ws.useEffect(()=>{d!==W.current&&(ue.current?.(d,W.current),W.current=d),Qe.current=d;},[d]),ws.useEffect(()=>{R&&d!=="email"&&w(false);},[R,d]),ws.useEffect(()=>{C&&d!==r&&v(false);},[C,d,r]);let E=ws.useCallback((P,z,fe)=>{let Be={code:P,message:z,step:Qe.current,stripeErrorCode:fe};S(Be),m(""),q.current?.(Be);},[]),nr=ws.useCallback(P=>{let z={sessionId:P.id,status:P.status,sourceAmount:P.transaction_details.source_amount,sourceCurrency:P.transaction_details.source_currency,destinationAmount:P.transaction_details.destination_amount,destinationCurrency:P.transaction_details.destination_currency,destinationNetwork:P.transaction_details.destination_network,walletAddress:P.transaction_details.wallet_address,fees:{networkFee:P.transaction_details.fees.network_fee_amount,transactionFee:P.transaction_details.fees.transaction_fee_amount}};return $.current?.(z),z},[]),Fe=ws.useCallback(()=>S(null),[]),we=P=>P.refresh_token??P.refresh?.refresh_token??"",ht=ws.useCallback((P,z,fe,Be,De)=>{ee.current=z,pe.current=fe,e?.externalUserId&&xp({accessToken:z,refreshToken:fe,customerId:P,externalUserId:e.externalUserId,email:De||y,expiresAt:Date.now()+Be*1e3});},[e?.externalUserId,y]),tt=ws.useCallback(async()=>{let P=pe.current;if(!P)return console.warn("[tryRefreshAccessToken] no refresh token available"),null;try{let z=await ap(P,U.current??void 0),fe=z.access_token,Be=we(z)||P;return J(fe),ht(U.current,fe,Be,z.expires_in??3600),fe}catch(z){return console.error("[tryRefreshAccessToken] refresh failed:",z?.message),await Sa(),qi=null,be.current=null,ee.current="",pe.current="",U.current="",J(""),se(""),null}},[ht]),re=ws.useCallback(async P=>{try{return await P(ee.current)}catch(z){let fe=z?.message??"";if(fe.includes("stripe_onramp_forbidden")||fe.includes("403")){let Be=await tt();if(!Be)throw E("authorization_error","Session expired. Please sign in again."),f("email"),z;return await P(Be)}throw z}},[tt,E]);ws.useEffect(()=>{if(!(e?.merchantIdentifier?.trim()??"")){I(false);return}let z=false;return stripeReactNative.isPlatformPaySupported().then(fe=>{z||I(fe);}),()=>{z=true;}},[e?.merchantIdentifier]),ws.useEffect(()=>(B.current=false,()=>{B.current=true,b.current&&clearTimeout(b.current);}),[]);let Lt=ws.useRef(false);ws.useEffect(()=>{if(Lt.current)return;if(!e?.externalUserId){Sa(),qi=null,be.current=null,v(false);return}let P=false;return (async()=>{try{let z=await Hm();if(P||!z){P||v(!1);return}if(z.externalUserId!==e.externalUserId){await Sa(),qi=null,be.current=null,P||v(!1);return}let fe=Date.now()>=z.expiresAt,Be=z.accessToken,De=z.refreshToken;if(fe)try{let Tt=await ap(z.refreshToken,z.customerId);if(P)return;Be=Tt.access_token,De=Tt.refresh_token??Tt.refresh?.refresh_token??z.refreshToken,await xp({accessToken:Be,refreshToken:De,customerId:z.customerId,externalUserId:e.externalUserId,email:z.email,expiresAt:Date.now()+(Tt.expires_in??3600)*1e3});}catch(Tt){console.warn("[useStripeOnramp] refresh failed on mount, user must re-login:",Tt?.message),await Sa(),qi=null,be.current=null,P||v(!1);return}if(P)return;if(Lt.current=!0,se(z.customerId),U.current=z.customerId,J(Be),ee.current=Be,pe.current=De,z.email&&(F(z.email),ft.current=z.email),qi===z.customerId)be.current=Promise.resolve({error:void 0});else {let Tt=await o({merchantDisplayName:e?.merchantDisplayName??"Unifold",appearance:{lightColors:{primary:"#2d22a1",contentOnPrimary:"#ffffff",borderSelected:"#07b8b8"},darkColors:{primary:"#800080",contentOnPrimary:"#ffffff",borderSelected:"#526f3e"},style:"ALWAYS_DARK",primaryButton:{cornerRadius:8,height:48}},cryptoCustomerId:z.customerId});Tt.error?console.error("[useStripeOnramp] restore configureSDK error:",Tt.error.message):qi=z.customerId,be.current=Promise.resolve(Tt);}if(P)return;let gt=()=>new Promise(Tt=>{let hr=()=>{He.current&&We.current?Tt():setTimeout(hr,200);};hr();});try{if(await Promise.race([gt(),new Promise((hr,Dt)=>setTimeout(()=>Dt(new Error("timeout")),1e4))]),P)return;let Tt=We.current.toLowerCase();await p(Tt,_e.current);}catch(Tt){console.warn("[useStripeOnramp] wallet re-registration on restore failed (non-fatal):",Tt?.message);}if(P)return;try{let hr=(await ii(U.current,ee.current)).kyc_tiers??[],Dt=hr.find(Wo=>Wo.tier==="l0"),Hr=hr.find(Wo=>Wo.tier==="l1"),ao=hr.find(Wo=>Wo.tier==="l2"),Xr=Dt?.verification_status==="verified",dn=Hr?.verification_status==="verified",gr=ao?.verification_status==="verified",ti=!!Dt?.verification_status&&Dt.verification_status!=="not_started";f(Xr||dn||gr?"session_params":ti?"kyc_offer":"kyc");}catch{f("kyc");}}finally{P||v(false);}})(),()=>{P=true;}},[]),ws.useEffect(()=>{if(!e?.publishableKey||!e?.externalUserId||!e?.recipientAddress||de)return;let P=false;it(true);async function z(){try{let[fe,Be]=await Promise.all([Im({external_user_id:e.externalUserId,recipient_address:e.recipientAddress,destination_chain_type:e?.destinationChainType,destination_chain_id:e?.destinationChainId,destination_token_address:e?.destinationTokenAddress}),e?.destinationTokenAddress&&e?.destinationChainId&&e?.destinationChainType?Pm({token_address:e.destinationTokenAddress,chain_id:e.destinationChainId,chain_type:e.destinationChainType}).catch(gr=>(console.warn("[useStripeOnramp] fetchDefaultOnrampToken failed, using chain_id fallback:",gr?.message),null)):Promise.resolve(null)]);if(P)return;let De=e?.destinationChainType??"ethereum",gt=fe.data.find(gr=>gr.chain_type===De);if(gt?.address){let gr=gt.address.toLowerCase();Ie(gr),We.current=gr,gt.recipient_address&&lt(gt.recipient_address);}else console.warn("[resolveWallet] No wallet found for chain_type",De,"in",fe.data?.length,"wallets");let Tt={base:stripeReactNative.Onramp.CryptoNetwork.base,ethereum:stripeReactNative.Onramp.CryptoNetwork.ethereum,solana:stripeReactNative.Onramp.CryptoNetwork.solana,bitcoin:stripeReactNative.Onramp.CryptoNetwork.bitcoin,polygon:stripeReactNative.Onramp.CryptoNetwork.polygon},hr={8453:"base",1:"ethereum",137:"polygon"},Dt=Be?.destination_network,Hr="none";if(Dt&&Tt[Dt])ve(Tt[Dt]),_e.current=Tt[Dt],Hr=Dt+" (from default_token API)";else if(e?.destinationChainId&&hr[e.destinationChainId]){let gr=hr[e.destinationChainId];Tt[gr]&&(ve(Tt[gr]),_e.current=Tt[gr]),Hr=gr+" (from chain_id "+e.destinationChainId+")";}else Tt[De]&&(ve(Tt[De]),_e.current=Tt[De],Hr=De+" (from chain_type fallback)");Be?.destination_currency&&or(Be.destination_currency.toLowerCase());let ao=Be?.destination_token_metadata,Xr=Mi(ao?.icon_urls,ao?.icon_url),dn=Mi(ao?.chain?.icon_urls,ao?.chain?.icon_url);Xr&&Ce(Xr),dn&&K(dn),Z(!0),He.current=!0;}catch(fe){if(P)return;console.error("[resolveWallet] Failed to resolve wallet:",fe?.message),Z(true),He.current=true;}finally{P||it(false);}}return Ae.current=z(),()=>{P=true;}},[e?.publishableKey,e?.externalUserId,Ge]);let rt=ws.useCallback(async()=>{if(be.current)return be.current;let P=o({merchantDisplayName:e?.merchantDisplayName??"Unifold",appearance:{lightColors:{primary:"#2d22a1",contentOnPrimary:"#ffffff",borderSelected:"#07b8b8"},darkColors:{primary:"#800080",contentOnPrimary:"#ffffff",borderSelected:"#526f3e"},style:"ALWAYS_DARK",primaryButton:{cornerRadius:8,height:48}}}).then(z=>(z.error&&(console.error("[useStripeOnramp] configureSDK error:",z.error.message,z.error.code),be.current=null),z)).catch(z=>{throw console.error("[useStripeOnramp] configureSDK threw:",z?.message??z),be.current=null,z});return be.current=P,P},[o,e?.merchantDisplayName]);ws.useEffect(()=>{e?.externalUserId||rt();},[]);let Bt=ws.useCallback(async P=>{if(!te.current){te.current=true,k(true),Fe(),m("Creating auth intent...");try{let z=await sp(P);m("Waiting for authorization...");let fe=await i(z);if(fe?.error){E("authorization_error","Something went wrong during authorization. Please try again."),f("email");return}if(fe?.status==="Denied"){E("authorization_error","Authorization denied by user."),f("email");return}if(fe?.status!=="Consented"||!fe.customerId){E("authorization_error","Authorization was canceled."),f("email");return}m("Exchanging tokens...");let Be=fe.customerId,De=await km(z,Be),gt=De.access_token,Tt=we(De);F(P),ft.current=P,se(Be),U.current=Be,qi=Be,J(gt),ht(Be,gt,Tt,De.expires_in??3600,P),m("Checking verification status...");try{let Dt=(await ii(Be,gt)).kyc_tiers??[],Hr=Dt.find(wo=>wo.tier==="l0"),ao=Dt.find(wo=>wo.tier==="l1"),Xr=Dt.find(wo=>wo.tier==="l2"),dn=Hr?.verification_status==="verified",gr=ao?.verification_status==="verified",ti=Xr?.verification_status==="verified",Wo=!!Hr?.verification_status&&Hr.verification_status!=="not_started";if(m(""),dn||gr||ti){Ae.current&&(m("Resolving wallet..."),await Ae.current,m(""));let wo=We.current;if(wo)try{let Li=wo.toLowerCase(),Lc=_e.current,ri=await p(Li,Lc);ri?.error?(console.warn("[proceedToAuthorize] wallet registration error:",ri.error.message),E("wallet_error",ri.error.message,ri.error.code),f("wallet")):f("session_params");}catch(Li){console.warn("[proceedToAuthorize] Inline wallet registration failed, falling back to wallet step:",Li?.message),f("wallet");}else f("wallet");}else Wo?(await ei(),m(""),f("kyc_offer")):f("kyc");}catch(hr){console.warn("[getOnrampCustomer] failed, defaulting to kyc:",hr?.message),m(""),f("kyc");}}catch(z){E("authorization_error",z?.message??String(z)),f("email");}finally{te.current=false,k(false);}}},[i,Fe,E,ht,p,xe]),Ht=ws.useCallback(async()=>{if(reactNative.Keyboard.dismiss(),!y){E("validation_error","Please enter an email address.");return}k(true),Fe(),m("");try{m("Configuring...");let P=await rt();if(P.error){E("configuration_error",P.error.message,P.error.code);return}m("Checking Link account...");let z=await n(y);if(z.error){E("authorization_error",z.error.message,z.error.code);return}z.hasLinkAccount?await Bt(y):(m(""),f("disclaimer"));}catch(P){E("unknown_error",P?.message??String(P));}finally{k(false);}},[Fe,rt,y,E,n,Bt]),mo=ws.useCallback(async()=>{if(!Xe.current){if(!L){E("validation_error","Please enter your phone number.");return}Xe.current=true,k(true),Fe(),m("");try{m("Creating Link account...");let P=await s({email:y,phone:L,fullName:D||y,country:N||"US"});if(P.error){E("registration_error",P.error.message,P.error.code);return}await Bt(y);}catch(P){E("registration_error",P?.message??String(P));}finally{Xe.current=false,k(false);}}},[Fe,N,y,E,D,L,s,Bt]);ws.useEffect(()=>{if(d!=="email")return;let P=qe.current||vp;if(P&&(qe.current=false,vp=false),!e?.email||C)return;if(P){w(true);return}let z=++Oe.current,fe=false,Be=()=>fe||Oe.current!==z;return e?.phone?(async()=>{k(true),Fe();try{m("Configuring...");let De=await rt();if(Be())return;if(De.error){E("configuration_error",De.error.message,De.error.code);return}m("Checking Link account...");let gt=await n(e.email);if(Be())return;if(gt.error){E("authorization_error",gt.error.message,gt.error.code);return}if(gt.hasLinkAccount){if(Be())return;await Bt(e.email);}else {if(Be())return;m(""),f("disclaimer");}}catch(De){Be()||E("unknown_error",De?.message??String(De));}finally{k(false);}})():(async()=>{k(true),Fe();try{m("Configuring...");let De=await rt();if(Be())return;if(De.error){E("configuration_error",De.error.message,De.error.code);return}m("Checking Link account...");let gt=await n(e.email);if(Be())return;if(gt.error){E("authorization_error",gt.error.message,gt.error.code);return}if(gt.hasLinkAccount){if(Be())return;await Bt(e.email);}else {if(Be())return;m(""),f("disclaimer");}}catch(De){Be()||E("unknown_error",De?.message??String(De));}finally{k(false);}})(),()=>{fe=true;}},[d,e?.email,e?.phone,C]);let ei=ws.useCallback(async()=>{Ae.current&&(m("Resolving wallet..."),await Ae.current);let P=We.current;if(P)try{m("Registering wallet...");let z=P.toLowerCase(),fe=_e.current;await p(z,fe);}catch(z){console.warn("[resolveAndRegisterWallet] wallet registration failed (non-fatal):",z?.message);}else console.warn("[resolveAndRegisterWallet] no resolved deposit address \u2014 skipping registration");},[p]),Fc=ws.useCallback(async(P,z)=>{k(true),Fe(),m(""),Tr(gt=>({...gt,...P}));let fe=!z,Be=z??"kyc_offer",De=z?"kyc_l1":"kyc";try{let gt=P.dobDay&&P.dobMonth&&P.dobYear,Tt=P.firstName&&P.lastName,hr={};Tt&&(hr.firstName=P.firstName,hr.lastName=P.lastName),P.addressLine1&&(hr.address={line1:P.addressLine1,line2:P.addressLine2||void 0,city:P.city,state:P.state,postalCode:P.postalCode,country:P.country}),P.idNumber&&(hr.idNumber=P.idNumber),gt&&(hr.dateOfBirth={day:parseInt(P.dobDay,10),month:parseInt(P.dobMonth,10),year:parseInt(P.dobYear,10)});let Dt=await a(hr);if(Dt?.error?.message&&(/no active link consumer/i.test(Dt.error.message)||/not be verified/i.test(Dt.error.message))){if(m("Verifying identity..."),!await ks()){E("kyc_error","Please verify your identity to continue."),f(De);return}Dt=await a(hr);}if(Dt?.error){let gr=fe?"l0":"l1";try{let Wo=(await ii(U.current,ee.current)).kyc_tiers?.find(wo=>wo.tier===gr);if(Wo?.verification_status==="verified"){let wo=fe?"session_params":Be;await ei(),m(""),f(wo);return}if(Wo?.verification_status==="rejected"){if(fe){await ei(),m(""),f(Be);return}E("kyc_error","Something went wrong. Please try again."),f(De);return}}catch(ti){console.warn("[attachKyc] could not fetch verification status:",ti?.message);}if(fe){await ei(),m(""),f(Be);return}E("kyc_error",Dt.error.message,Dt.error.stripeErrorCode??Dt.error.code),f(De);return}if(!(Dt&&Object.keys(Dt).length>0&&!Dt.error)){let gr=fe?"l0":"l1";if(m("Verifying identity..."),(!U.current||!ee.current)&&(console.warn(`[attachKyc] \u274C cannot poll ${gr} \u2014 missing customerIdRef or accessTokenRef`),!fe)){E("kyc_error","Unable to verify identity. Please try again."),f(De);return}let ti=U.current,Wo=ee.current,wo=10,Li=!1;if(ti&&Wo)for(let Lc=0;Lc<wo;Lc++){try{let Du=(await ii(ti,Wo)).kyc_tiers?.find(Gy=>Gy.tier===gr);if(Du?.verification_status==="verified"){Li=!0;break}if(Du?.verification_status==="rejected"){if(fe)break;console.warn(`[attachKyc] \u274C ${gr} rejected:`,Du?.verification_errors),E("kyc_error","KYC verification was rejected. Please try again."),f(De);return}}catch(ri){console.warn(`[attachKyc] ${gr} poll error:`,ri?.message);}await new Promise(ri=>setTimeout(ri,2e3));}if(!Li&&!fe){console.warn(`[attachKyc] \u274C ${gr} verification timed out after`,wo,"attempts"),E("kyc_error","Identity verification is taking longer than expected. Please try again."),f(De);return}await ei(),m(""),f(fe&&Li?"session_params":Be);return}m("Please review your KYC information...");let Xr=await l(null);if(Xr?.error){E("kyc_error",Xr.error.message,Xr.error.stripeErrorCode??Xr.error.code),f(De);return}if(Xr?.status==="UpdateAddress"){E("kyc_error","Please update your address and resubmit."),f(De);return}await ei(),m(""),f(fe?"session_params":Be);}catch(gt){E("kyc_error",gt?.message??String(gt)),f(De);}finally{k(false);}},[a,Fe,E,l,ei]),ks=ws.useCallback(async()=>{let P=ft.current||e?.email;if(!P)return console.warn("[reestablishLinkSession] no email available \u2014 emailRef:",JSON.stringify(ft.current),"config.email:",e?.email),false;try{let z=await sp(P),fe=await i(z);return fe?.status==="Consented"&&fe.customerId?(U.current=fe.customerId,se(fe.customerId),!0):(console.warn("[reestablishLinkSession] authorize did not consent:",fe?.status),!1)}catch(z){return console.warn("[reestablishLinkSession] failed:",z?.message),false}},[i,e?.email]),Dc=ws.useCallback(async()=>{if(!je.current){je.current=true,k(true),Fe(),m("Launching identity verification...");try{let P=await c();if(P?.error?.message&&(/no active link consumer/i.test(P.error.message)||/not be verified/i.test(P.error.message))){if(m("Verifying identity..."),!await ks()){E("identity_error","Please verify your identity to continue.");return}P=await c();}if(P?.error){let fe=P.error.message??"";if(/cancel/i.test(fe)){m("");return}E("identity_error",fe,P.error.code);return}m(""),xs.current?(xs.current=!1,f("session_params")):f("wallet");}catch(P){E("identity_error",P?.message??String(P));}finally{je.current=false,k(false);}}},[Fe,E,ks,c]),xs=ws.useRef(false);ws.useEffect(()=>{d==="identity"&&!x&&Dc();},[d]);let Vc=ws.useCallback(async()=>{if(!$e){E("validation_error","Please enter a wallet address.");return}k(true),Fe(),m("");try{let P=$e.toLowerCase(),z=await p(P,xe);if(z?.error){console.warn("[registerWallet] error:",z.error.message),E("wallet_error",z.error.message,z.error.code);return}m(""),f("kyc_offer");}catch(P){console.error("[registerWallet] exception:",P?.message??String(P)),E("wallet_error",P?.message??String(P));}finally{k(false);}},[Fe,E,$e,xe,p]);ws.useEffect(()=>{d==="wallet"&&de&&$e&&Vc();},[d,de,$e]);let na=ws.useCallback(P=>{B.current=false,H.current=0;let z=0,fe=async()=>{z+=1;let Be=ee.current;try{let De=await _m(P,Be);if(B.current)return;H.current=0,De.status==="fulfillment_complete"?(wt(De),f("success")):b.current=setTimeout(fe,3e3);}catch(De){if(B.current)return;let gt=De?.message??"";if((gt.includes("stripe_onramp_forbidden")||gt.includes("403"))&&await tt()&&!B.current){b.current=setTimeout(fe,1e3);return}if(H.current+=1,console.error(`[pollSessionStatus] poll #${z} error:`,gt),H.current>=_C){E("session_error","We couldn't confirm delivery status. Your purchase may still complete \u2014 try again, or close and check your wallet.");return}b.current=setTimeout(fe,5e3);}};b.current=setTimeout(fe,3e3);},[E,tt]),Pu=ws.useCallback(()=>{if(Qe.current==="processing"&&Me?.id){if(!ee.current){E("session_error","Your session has expired. Your purchase may still complete \u2014 close and check your wallet.");return}Fe(),H.current=0,b.current&&(clearTimeout(b.current),b.current=null),na(Me.id);}},[Fe,E,na,Me?.id]),Vi=ws.useCallback(async P=>{k(true),Fe(),m("");try{m("Confirming purchase...");let z=await re(fe=>vm(P,fe));wt(z),f("processing"),m(""),na(z.id);}finally{k(false);}},[Fe,na,re]),bl=ws.useRef(false),Fu=ws.useCallback(async()=>{if(!(!Me||bl.current)){bl.current=true;try{k(!0),Fe(),m("Refreshing quote...");let P=await re(z=>lp(Me.id,z));wt(P),await Vi(P.id);}catch{E("session_error","Something went wrong. Please try again."),f("quote");}finally{k(false),bl.current=false;}}},[Fe,E,Vi,Me,re]),ye=ws.useCallback(async(P=false,z,fe)=>{let Be=z??Ee;if(!Be||isNaN(Number(Be))||Number(Be)<=0){E("validation_error","Please enter a valid amount.");return}z&&ge(z),k(true),Fe(),m("");try{let De=await rt();if(De.error){E("configuration_error",De.error.message,De.error.code);return}let gt;if(fe)gt=fe;else if(P){if(!e?.merchantIdentifier?.trim()){E("configuration_error","Apple Pay is not configured. Set the Apple Pay merchant identifier for this project on the Unifold dashboard."),f("session_params");return}m("Opening Apple Pay...");let Dt={applePay:{merchantCountryCode:"US",currencyCode:ct.toUpperCase(),cartItems:[{paymentType:stripeReactNative.PlatformPay.PaymentType.Immediate,label:`${mt.toUpperCase()} purchase + fees`,amount:Be}]}},Hr=await h("PlatformPay",Dt);if(Hr?.error){let Xr=Hr.error.message??"",dn=Hr.error.code??"";/cancel/i.test(Xr)||/cancel/i.test(dn)||(E("payment_error",Xr,dn),f("session_params"));return}if(!Hr?.displayData)return;m("Creating payment token...");let ao=await T();if(ao?.error){E("payment_error",ao.error.message,ao.error.code),f("session_params");return}gt=ao.cryptoPaymentToken;}else {m("Select a payment method...");let Dt=await h("Card");if(Dt?.error){let ao=Dt.error.message??"",Xr=Dt.error.code??"";/cancel/i.test(ao)||/cancel/i.test(Xr)||(E("payment_error",ao,Xr),f("session_params"));return}if(!Dt?.displayData)return;m("Creating payment token...");let Hr=await T();if(Hr?.error){E("payment_error",Hr.error.message,Hr.error.code),f("session_params");return}gt=Hr.cryptoPaymentToken;}m("Creating onramp session...");let Tt=We.current||$e;if(!Tt){E("wallet_error","No wallet address available. Please go back and enter a wallet address.");return}let hr=await re(Dt=>xm({cryptoCustomerId:U.current,paymentToken:gt,sourceAmount:Number(Be),sourceCurrency:ct,destinationCurrency:mt,walletAddress:Tt,destinationNetwork:xe},Dt));wt(hr),m(""),P?await Vi(hr.id):f("quote");}catch{E("session_error","Something went wrong. Please try again."),f("session_params");}finally{k(false),m("");}},[Fe,rt,h,T,mt,E,Vi,ge,Ee,ct,$e,xe,re,e?.merchantIdentifier]),Je=ws.useCallback(async()=>{k(true),Fe(),m("Select a payment method...");try{let P=await rt();if(P.error)return E("configuration_error",P.error.message,P.error.code),null;let z=await h("Card");if(z?.error?.message&&(/no active link consumer/i.test(z.error.message)||/not be verified/i.test(z.error.message))){if(!await ks())return E("authorization_error","Please verify your identity to add a payment method."),null;z=await h("Card");}if(z?.error){let gt=z.error.message??"",Tt=z.error.code??"";return /cancel/i.test(gt)||/cancel/i.test(Tt)||E("payment_error",gt,Tt),null}if(!z?.displayData)return null;let Be=z.displayData;m("Saving payment method...");let De=await T();return De?.error?(E("payment_error",De.error.message,De.error.code),null):{token:De.cryptoPaymentToken,sublabel:Be.sublabel??""}}catch(P){return E("session_error",P?.message??String(P)),null}finally{k(false),m("");}},[Fe,rt,h,T,E,ks]),xr=ws.useCallback(async()=>{if(Me){k(true),Fe(),m("");try{let P=await re(z=>lp(Me.id,z));wt(P);}catch{E("session_error","Something went wrong. Please try again.");}finally{k(false);}}},[Fe,E,Me,re]),Rn=ws.useCallback(()=>{B.current=true,H.current=0,b.current&&(clearTimeout(b.current),b.current=null),f(r),k(false),w(false),m(""),S(null),F(e?.email??""),ft.current=e?.email??"",V(e?.phone??""),O(""),M("US"),se(""),U.current="",J(""),ee.current="",pe.current="",Z(false),it(false),Ae.current=null,Ye(P=>P+1),Tr(Rp),Ie(""),We.current="",He.current=false,ve(stripeReactNative.Onramp.CryptoNetwork.ethereum),ge(e?.defaultSourceAmount??"100"),Ft(e?.defaultSourceCurrency??"usd"),or(e?.defaultDestinationCurrency??"usdc"),lt(""),Ce(void 0),K(void 0),wt(null),Oe.current+=1,te.current=false,je.current=false,Xe.current=false;},[e,r]),Oc=ws.useCallback(()=>{xs.current=true,f("kyc_offer");},[]),Oi=ws.useCallback(async()=>{await Sa(),qi=null,be.current=null,vp=true,qe.current=true,B.current=true,H.current=0,b.current&&(clearTimeout(b.current),b.current=null),Oe.current+=1,te.current=false,je.current=false,Xe.current=false,ee.current="",pe.current="",U.current="",We.current="",He.current=false,Ae.current=null,J(""),se(""),F(e?.email??""),ft.current=e?.email??"",V(e?.phone??""),O(""),M("US"),wt(null),S(null),k(false),w(false),m(""),Tr(Rp),Ie(""),Z(false),it(false),Ye(P=>P+1),lt(""),Ce(void 0),K(void 0),f(r);},[e?.email,e?.phone,r]);return {step:d,restoring:C,loading:x,status:_,error:u,email:y,phone:L,fullName:D,country:N,customerId:Ve,accessToken:Le,session:Me,kycData:at,walletAddress:$e,resolvedRecipientAddress:et,walletNetwork:xe,sourceAmount:Ee,sourceCurrency:ct,destinationCurrency:mt,tokenIconUrl:ot,networkIconUrl:ze,applePaySupported:Re,walletReady:de,walletLoading:he,setStep:f,setStatus:m,setEmail:F,setPhone:V,setFullName:O,setCountry:M,setWalletAddress:Ie,setWalletNetwork:ve,setSourceAmount:ge,setSourceCurrency:Ft,setDestinationCurrency:or,checkEmail:Ht,register:mo,attachKyc:Fc,verifyIdentity:Dc,requestKYCUpgrade:Oc,kycUpgradeMode:xs,logout:Oi,registerWallet:Vc,collectPaymentMethod:ye,addPaymentMethod:Je,refreshQuote:xr,confirmCheckout:Fu,reset:Rn,clearError:Fe,emitComplete:nr,resumeFulfillmentPolling:Pu,amountFirst:t,switchingAccount:R}}function jm({initialData:e={},loading:t=false,error:r,onComplete:o,onCancel:n,onClose:s}){let i=Dn(),{colors:a,fonts:l,components:c}=A(),p=c.input.placeholderColor,[h,T]=ws.useState(e.dobMonth??""),[d,f]=ws.useState(e.dobDay??""),[C,v]=ws.useState(e.dobYear??""),[x,k]=ws.useState(e.idNumber??""),[R,w]=ws.useState(null),_=ws.useRef(null),m=ws.useRef(null),u=ws.useRef(null),S=h.length===2&&d.length===2&&C.length===4&&x.trim().length>0,y=()=>{if(!S)return;let L=parseInt(h,10),V=parseInt(d,10),D=parseInt(C,10),O=new Date().getFullYear();if(L<1||L>12){w("Please enter a valid month (01\u201312).");return}if(V<1||V>31){w("Please enter a valid day (01\u201331).");return}if(D<1900||D>O){w(`Please enter a valid year (1900\u2013${O}).`);return}w(null),o({dobMonth:h,dobDay:d,dobYear:C,idNumber:x});},F=R||r;return jsxRuntime.jsx(reactNative.KeyboardAvoidingView,{style:i.form.flex,behavior:reactNative.Platform.OS==="ios"?"padding":void 0,children:jsxRuntime.jsxs(reactNative.View,{style:i.form.screen,children:[jsxRuntime.jsx(tr,{onPress:t?s??n:n,title:"Increase Your Limits",variant:t?"close":"back"}),jsxRuntime.jsx(At,{style:i.form.flex,contentContainerStyle:An.scrollContent,keyboardShouldPersistTaps:"handled",children:jsxRuntime.jsxs(reactNative.View,{pointerEvents:t?"none":"auto",style:{opacity:t?.5:1},children:[jsxRuntime.jsx(reactNative.Text,{style:i.form.title,children:"Date of birth & SSN"}),jsxRuntime.jsx(reactNative.Text,{style:i.form.subtitle,children:"This information is used to verify your identity and increase your transaction limits."}),jsxRuntime.jsxs(reactNative.View,{style:An.section,children:[jsxRuntime.jsx(reactNative.Text,{style:[i.form.fieldLabel,{marginBottom:8}],children:"Date of birth"}),jsxRuntime.jsxs(reactNative.View,{style:An.dobRow,children:[jsxRuntime.jsx(reactNative.View,{style:An.dobCol,children:jsxRuntime.jsx(reactNative.TextInput,{style:[i.form.input,An.dobInput],placeholder:"MM",placeholderTextColor:p,value:h,onChangeText:L=>{let V=L.replace(/\D/g,"").slice(0,2);T(V),V.length===2&&_.current?.focus();},keyboardType:"number-pad",maxLength:2,editable:!t})}),jsxRuntime.jsx(reactNative.View,{style:An.dobCol,children:jsxRuntime.jsx(reactNative.TextInput,{ref:_,style:[i.form.input,An.dobInput],placeholder:"DD",placeholderTextColor:p,value:d,onChangeText:L=>{let V=L.replace(/\D/g,"").slice(0,2);f(V),V.length===2&&m.current?.focus();},keyboardType:"number-pad",maxLength:2,editable:!t})}),jsxRuntime.jsx(reactNative.View,{style:An.dobColWide,children:jsxRuntime.jsx(reactNative.TextInput,{ref:m,style:[i.form.input,An.dobInput],placeholder:"YYYY",placeholderTextColor:p,value:C,onChangeText:L=>{let V=L.replace(/\D/g,"").slice(0,4);v(V),V.length===4&&u.current?.focus();},keyboardType:"number-pad",maxLength:4,editable:!t})})]})]}),jsxRuntime.jsxs(reactNative.View,{style:An.section,children:[jsxRuntime.jsx(reactNative.Text,{style:[i.form.fieldLabel,{marginBottom:8}],children:"Social Security Number"}),jsxRuntime.jsx(reactNative.TextInput,{ref:u,style:i.form.input,placeholder:"123-45-6789",placeholderTextColor:p,value:x,onChangeText:k,keyboardType:"number-pad",secureTextEntry:true,returnKeyType:"done",onSubmitEditing:y,editable:!t}),jsxRuntime.jsx(reactNative.Text,{style:[i.form.hint,{marginTop:10,lineHeight:18}],children:"Your SSN is transmitted securely and never stored on this device."})]}),F?jsxRuntime.jsx(reactNative.Text,{style:[i.amount.inlineError,{marginTop:20}],children:F}):null]})}),jsxRuntime.jsx(reactNative.View,{style:i.form.footer,children:t?jsxRuntime.jsx(reactNative.View,{style:[i.form.continueBtn,i.form.loaderInButton],children:jsxRuntime.jsx(kt,{size:28,strokeWidth:2,gradientFrom:a.primaryForeground,gradientTo:a.primaryForeground})}):jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[i.form.continueBtn,!S&&i.form.continueBtnDisabled],onPress:y,disabled:!S,children:jsxRuntime.jsx(reactNative.Text,{style:[i.form.continueBtnText,!S&&i.form.continueBtnTextDisabled],children:"Submit"})})})]})})}var An=reactNative.StyleSheet.create({scrollContent:{flexGrow:1,paddingBottom:16,paddingTop:16},section:{marginTop:20},dobRow:{flexDirection:"row",gap:10},dobCol:{flex:1},dobColWide:{flex:1.5},dobInput:{textAlign:"center"}});function $m({borderRadius:e,backgroundColor:t,borderColor:r,borderWidth:o}){let n=ws.useRef(new reactNative.Animated.Value(.3)).current;return ws.useEffect(()=>{let s=reactNative.Animated.loop(reactNative.Animated.sequence([reactNative.Animated.timing(n,{toValue:1,duration:800,useNativeDriver:true}),reactNative.Animated.timing(n,{toValue:.3,duration:800,useNativeDriver:true})]));return s.start(),()=>s.stop()},[n]),jsxRuntime.jsxs(reactNative.Animated.View,{style:[jt.card,{backgroundColor:t,borderRadius:e,borderColor:r,borderWidth:o,opacity:n,alignItems:"center"}],children:[jsxRuntime.jsx(reactNative.View,{style:jt.skeletonLine}),jsxRuntime.jsx(reactNative.View,{style:[jt.skeletonLine,{width:"60%"}]})]})}function qm({onRefresh:e,colors:t,fonts:r}){let[o,n]=ws.useState(10),s=ws.useRef(null);ws.useEffect(()=>(s.current=setInterval(()=>{n(l=>l<=1?(s.current&&clearInterval(s.current),0):l-1);},1e3),()=>{s.current&&clearInterval(s.current);}),[]);let i=ws.useCallback(()=>{o>0||(e(),n(10),s.current=setInterval(()=>{n(l=>l<=1?(s.current&&clearInterval(s.current),0):l-1);},1e3));},[o,e]),a=o===0;return jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:i,disabled:!a,style:jt.refreshBtn,activeOpacity:.7,children:a?jsxRuntime.jsx(ca,{size:14,color:t.foregroundMuted,strokeWidth:2}):jsxRuntime.jsxs(reactNative.Text,{style:[jt.refreshText,{color:t.foregroundMuted,fontFamily:r.regular}],children:[o,"s"]})})}function Ym({onSelectL1:e,onSelectL2:t,onSkip:r,onClose:o,onRefresh:n,loading:s=false,loadingTiers:i=false,error:a,l1Status:l="not_started",l2Status:c="not_started",l1Completed:p=false,l2Completed:h=false,canPurchase:T=false,currentLimit:d}){let f=Dn(),{colors:C,fonts:v,components:x}=A(),k=[jt.card,{backgroundColor:x.card.backgroundColor,borderRadius:x.card.borderRadius??12,borderWidth:x.card.borderWidth,borderColor:x.card.borderColor}],R=[...k,{opacity:.5}],w=l==="verified",_=l==="pending",m=l==="rejected",u=c==="verified",S=c==="pending",y=w&&u,F=!w,L=!u,V=w,D=(T||w)&&!y,O=N=>`$${N.toLocaleString()}`;return jsxRuntime.jsxs(reactNative.View,{style:f.form.screen,children:[jsxRuntime.jsx(tr,{onPress:o,title:"Increase Your Limits"}),jsxRuntime.jsxs(reactNative.View,{style:jt.content,children:[d!==void 0&&jsxRuntime.jsxs(reactNative.View,{style:[jt.limitBadge,{backgroundColor:x.card.backgroundColor,borderColor:x.card.borderColor,borderWidth:x.card.borderWidth,borderRadius:x.card.borderRadius??12}],children:[jsxRuntime.jsx(reactNative.Text,{style:[jt.limitLabel,{color:C.foregroundMuted,fontFamily:v.regular}],children:"Current transaction limit"}),jsxRuntime.jsxs(reactNative.Text,{style:[jt.limitValue,{color:C.foreground,fontFamily:v.semibold}],children:[O(d)," USD"]})]}),jsxRuntime.jsx(reactNative.Text,{style:[jt.subtitle,{color:C.foregroundMuted,fontFamily:v.regular}],children:i?"Checking your verification status...":y?"All verification levels have been completed. Your limits are at the maximum available.":T?"Complete additional verification to increase your transaction limits.":"Complete identity verification to start making purchases."}),i?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx($m,{borderRadius:x.card.borderRadius??12,backgroundColor:x.card.backgroundColor,borderColor:x.card.borderColor,borderWidth:x.card.borderWidth}),jsxRuntime.jsx($m,{borderRadius:x.card.borderRadius??12,backgroundColor:x.card.backgroundColor,borderColor:x.card.borderColor,borderWidth:x.card.borderWidth})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[F&&(_?jsxRuntime.jsxs(reactNative.View,{style:k,children:[jsxRuntime.jsxs(reactNative.View,{style:jt.pendingHeader,children:[jsxRuntime.jsx(So,{size:20,color:C.foregroundMuted,strokeWidth:1.8}),jsxRuntime.jsx(reactNative.Text,{style:[jt.cardTitle,{color:C.foreground,fontFamily:v.semibold,flex:1}],children:"Date of Birth & SSN"}),n?jsxRuntime.jsx(qm,{onRefresh:n,colors:C,fonts:v}):null]}),jsxRuntime.jsxs(reactNative.View,{style:[jt.pendingFooter,{marginLeft:28}],children:[jsxRuntime.jsx(reactNative.Text,{style:[jt.cardBody,{color:C.foregroundMuted,fontFamily:v.regular}],children:"Verification in progress..."}),jsxRuntime.jsx(kt,{size:18,strokeWidth:2,gradientFrom:C.primary,gradientTo:C.primary})]})]}):jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[k,jt.cardRow],onPress:e,activeOpacity:.7,children:[jsxRuntime.jsx(So,{size:20,color:C.foregroundMuted,strokeWidth:1.8}),jsxRuntime.jsxs(reactNative.View,{style:jt.cardContent,children:[jsxRuntime.jsx(reactNative.Text,{style:[jt.cardTitle,{color:C.foreground,fontFamily:v.semibold}],children:m?"Retry Date of Birth & SSN":"Provide Date of Birth & SSN"}),jsxRuntime.jsx(reactNative.Text,{style:[jt.cardBody,{color:C.foregroundMuted,fontFamily:v.regular}],children:m?"Previous verification was unsuccessful. Please try again.":T?"Increases your per-transaction and weekly limits.":"Required to start making purchases."})]}),jsxRuntime.jsx(Wr,{size:18,color:C.foregroundMuted,strokeWidth:2})]})),L&&(S?jsxRuntime.jsxs(reactNative.View,{style:k,children:[jsxRuntime.jsxs(reactNative.View,{style:jt.pendingHeader,children:[jsxRuntime.jsx(Wc,{size:20,color:C.foregroundMuted,strokeWidth:1.8}),jsxRuntime.jsx(reactNative.Text,{style:[jt.cardTitle,{color:C.foreground,fontFamily:v.semibold,flex:1}],children:"Photo ID & Selfie"}),n?jsxRuntime.jsx(qm,{onRefresh:n,colors:C,fonts:v}):null]}),jsxRuntime.jsxs(reactNative.View,{style:[jt.pendingFooter,{marginLeft:28}],children:[jsxRuntime.jsx(reactNative.Text,{style:[jt.cardBody,{color:C.foregroundMuted,fontFamily:v.regular}],children:"Verification in progress..."}),jsxRuntime.jsx(kt,{size:18,strokeWidth:2,gradientFrom:C.primary,gradientTo:C.primary})]})]}):V?jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[k,jt.cardRow],onPress:t,activeOpacity:.7,children:[jsxRuntime.jsx(Wc,{size:20,color:C.foregroundMuted,strokeWidth:1.8}),jsxRuntime.jsxs(reactNative.View,{style:jt.cardContent,children:[jsxRuntime.jsx(reactNative.Text,{style:[jt.cardTitle,{color:C.foreground,fontFamily:v.semibold}],children:"Provide Photo ID & Selfie"}),jsxRuntime.jsx(reactNative.Text,{style:[jt.cardBody,{color:C.foregroundMuted,fontFamily:v.regular}],children:"Unlocks the highest transaction limits available."})]}),jsxRuntime.jsx(Wr,{size:18,color:C.foregroundMuted,strokeWidth:2})]}):jsxRuntime.jsxs(reactNative.View,{style:[R,jt.cardRow],children:[jsxRuntime.jsx(Wc,{size:20,color:C.foregroundMuted,strokeWidth:1.8}),jsxRuntime.jsxs(reactNative.View,{style:jt.cardContent,children:[jsxRuntime.jsx(reactNative.Text,{style:[jt.cardTitle,{color:C.foregroundMuted,fontFamily:v.regular}],children:"Provide Photo ID & Selfie"}),jsxRuntime.jsx(reactNative.Text,{style:[jt.cardBody,{color:C.foregroundMuted,fontFamily:v.regular}],children:"Complete Date of Birth & SSN first."})]})]}))]})]}),jsxRuntime.jsxs(reactNative.View,{style:jt.footer,children:[a?jsxRuntime.jsx(reactNative.Text,{style:[f.form.subtitle,{marginBottom:12,textAlign:"center",color:"red"}],children:a}):null,s?jsxRuntime.jsxs(reactNative.View,{style:jt.loaderRow,children:[jsxRuntime.jsx(kt,{size:24,strokeWidth:2,gradientFrom:C.primary,gradientTo:C.primary}),jsxRuntime.jsx(reactNative.Text,{style:[f.form.ghostBtnText,{marginLeft:8}],children:"Verifying..."})]}):y?jsxRuntime.jsx(reactNative.TouchableOpacity,{style:f.form.continueBtn,onPress:r,activeOpacity:.7,children:jsxRuntime.jsx(reactNative.Text,{style:f.form.continueBtnText,children:"Done"})}):D?jsxRuntime.jsx(reactNative.TouchableOpacity,{style:f.form.ghostBtn,onPress:r,activeOpacity:.7,children:jsxRuntime.jsx(reactNative.Text,{style:f.form.ghostBtnText,children:"Skip for now"})}):null]})]})}var jt=reactNative.StyleSheet.create({content:{flex:1,paddingTop:24,gap:16},limitBadge:{alignItems:"center",paddingVertical:24,paddingHorizontal:20,gap:4},limitLabel:{fontSize:13},limitValue:{fontSize:20,paddingTop:8},subtitle:{fontSize:15,lineHeight:22,textAlign:"center",paddingHorizontal:16,paddingVertical:24},card:{padding:20,gap:6},cardRow:{flexDirection:"row",alignItems:"center",gap:16},cardContent:{flex:1,gap:6},cardTitle:{fontSize:16},cardBody:{fontSize:14,lineHeight:20},skeletonLine:{height:14,borderRadius:7,backgroundColor:"rgba(128, 128, 128, 0.15)",width:"80%",marginBottom:6},pendingHeader:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",marginBottom:4,gap:8},pendingFooter:{flexDirection:"row",justifyContent:"space-between",alignItems:"center"},refreshBtn:{flexDirection:"row",alignItems:"center",gap:4,paddingVertical:2,paddingHorizontal:4},refreshText:{fontSize:12},footer:{paddingTop:12,gap:4},loaderRow:{flexDirection:"row",alignItems:"center",justifyContent:"center",paddingVertical:12}});var ud={linkOnrampTerms:"https://link.com/terms/crypto-onramp",bridgeTerms:"https://www.bridge.xyz/legal/us-terms/bridge-building-inc",linkPrivacy:"https://link.com/privacy",bridgePrivacy:"https://www.bridge.xyz/legal/us-privacy-policy/bridge-building-inc"};function Zm({styles:e,merchantDisplayName:t="This app",onContinue:r,onClose:o}){let{colors:n,fonts:s,components:i}=A(),a=[Cn.link,{color:n.primary,fontFamily:s.medium}],l=i.card.borderRadius??12;return jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(tr,{onPress:o,title:"Verify Your Identity"}),jsxRuntime.jsx(reactNative.View,{style:Cn.logoRow,children:jsxRuntime.jsx(rm,{height:20,color:n.foreground})}),jsxRuntime.jsxs(reactNative.ScrollView,{style:Cn.scroll,contentContainerStyle:Cn.scrollContent,showsVerticalScrollIndicator:false,children:[jsxRuntime.jsxs(reactNative.View,{style:[Cn.card,{backgroundColor:i.card.backgroundColor,borderRadius:l,borderWidth:i.card.borderWidth,borderColor:i.card.borderColor}],children:[jsxRuntime.jsx(reactNative.Text,{style:[Cn.sectionTitle,{color:n.foreground,fontFamily:s.semibold}],children:"Description"}),jsxRuntime.jsxs(reactNative.Text,{style:[Cn.body,{color:n.foregroundMuted,fontFamily:s.regular}],children:["You must verify your identity using Link. ",t," will create or access your Link account on your behalf."]})]}),jsxRuntime.jsxs(reactNative.View,{style:[Cn.card,{backgroundColor:i.card.backgroundColor,borderRadius:l,borderWidth:i.card.borderWidth,borderColor:i.card.borderColor}],children:[jsxRuntime.jsx(reactNative.Text,{style:[Cn.sectionTitle,{color:n.foreground,fontFamily:s.semibold}],children:"Terms"}),jsxRuntime.jsxs(reactNative.Text,{style:[Cn.body,{color:n.foregroundMuted,fontFamily:s.regular}],children:["Your data will be encrypted and processed by our partner, Stripe. Funds transfer services are provided by Stripe Payments Company. Cryptocurrency conversion services are provided by Bridge. By continuing you agree to the"," ",jsxRuntime.jsx(reactNative.Text,{style:a,onPress:()=>reactNative.Linking.openURL(ud.linkOnrampTerms),children:"Link Onramp Terms"}),","," ",jsxRuntime.jsx(reactNative.Text,{style:a,onPress:()=>reactNative.Linking.openURL(ud.bridgeTerms),children:"Bridge Terms"})," ","and you acknowledge receipt of the"," ",jsxRuntime.jsx(reactNative.Text,{style:a,onPress:()=>reactNative.Linking.openURL(ud.linkPrivacy),children:"Link US Consumer Privacy Notice"})," ","and the"," ",jsxRuntime.jsx(reactNative.Text,{style:a,onPress:()=>reactNative.Linking.openURL(ud.bridgePrivacy),children:"Bridge Privacy Notice"}),"."]})]})]}),jsxRuntime.jsxs(reactNative.View,{style:Cn.footer,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:e.form.continueBtn,onPress:r,activeOpacity:.7,children:jsxRuntime.jsx(reactNative.Text,{style:e.form.continueBtnText,children:"Continue"})}),jsxRuntime.jsx(reactNative.TouchableOpacity,{style:e.form.ghostBtn,onPress:o,activeOpacity:.7,children:jsxRuntime.jsx(reactNative.Text,{style:e.form.ghostBtnText,children:"Cancel"})})]})]})}var Cn=reactNative.StyleSheet.create({logoRow:{paddingVertical:24,alignItems:"center"},scroll:{flex:1},scrollContent:{paddingTop:16,paddingBottom:16,gap:12},card:{padding:20,gap:10},sectionTitle:{fontSize:15},body:{fontSize:14,lineHeight:21},link:{textDecorationLine:"underline"},footer:{paddingTop:12,gap:4}});function Xm({styles:e,placeholderColor:t,hasPrefilledEmail:r,loading:o,error:n,status:s,email:i,setEmail:a,checkEmail:l,onClose:c}){let{colors:p}=A();return r?jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(tr,{onPress:c}),jsxRuntime.jsxs(reactNative.View,{style:e.flow.centered,children:[jsxRuntime.jsx(kt,{size:56,strokeWidth:3}),jsxRuntime.jsx(To,{error:n,progress:s,loading:o})]})]}):jsxRuntime.jsx(reactNative.KeyboardAvoidingView,{style:e.form.flex,behavior:reactNative.Platform.OS==="ios"?"padding":void 0,children:jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(tr,{onPress:c}),jsxRuntime.jsxs(reactNative.View,{style:e.form.content,children:[jsxRuntime.jsx(reactNative.Text,{style:e.form.title,children:"Enter your email"}),jsxRuntime.jsx(reactNative.Text,{style:e.form.subtitle,children:"We'll check if you have a Link account or create one for you."}),jsxRuntime.jsxs(reactNative.View,{style:e.form.fieldWrap,children:[jsxRuntime.jsx(reactNative.Text,{style:e.form.fieldLabel,children:"Email address"}),jsxRuntime.jsx(reactNative.TextInput,{style:[e.form.input,o&&{opacity:.5}],placeholder:"jane@example.com",placeholderTextColor:t,keyboardType:"email-address",autoCapitalize:"none",autoCorrect:false,value:i,onChangeText:a,autoFocus:true,returnKeyType:"done",onSubmitEditing:l,editable:!o})]})]}),jsxRuntime.jsxs(reactNative.View,{style:e.form.footer,children:[o?jsxRuntime.jsx(reactNative.View,{style:[e.form.continueBtn,e.form.loaderInButton],children:jsxRuntime.jsx(kt,{size:28,strokeWidth:2,gradientFrom:p.primaryForeground,gradientTo:p.primaryForeground})}):jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[e.form.continueBtn,!i&&e.form.continueBtnDisabled],onPress:l,disabled:!i,children:jsxRuntime.jsx(reactNative.Text,{style:[e.form.continueBtnText,!i&&e.form.continueBtnTextDisabled],children:"Continue"})}),jsxRuntime.jsx(To,{error:n,progress:s,loading:o})]})]})})}function th({styles:e,loading:t,status:r,error:o,verifyIdentity:n,onClose:s}){return jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(tr,{onPress:s}),jsxRuntime.jsxs(reactNative.View,{style:e.flow.centered,children:[t?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(reactNative.View,{style:e.flow.spinnerWrap,children:jsxRuntime.jsx(kt,{size:48,strokeWidth:3})}),jsxRuntime.jsx(reactNative.Text,{style:e.flow.heading,children:"Verifying identity"}),jsxRuntime.jsx(reactNative.Text,{style:e.flow.sub,children:r||"Preparing identity verification..."})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(reactNative.View,{style:e.flow.spinnerWrap,children:jsxRuntime.jsx(reactNative.Text,{style:e.flow.idIcon,children:"\u{1FAAA}"})}),jsxRuntime.jsx(reactNative.Text,{style:e.flow.heading,children:"Identity verification"}),jsxRuntime.jsx(reactNative.Text,{style:e.flow.sub,children:r||"Tap below to continue verification."})]}),jsxRuntime.jsx(To,{error:o,progress:r,loading:false})]}),!t&&jsxRuntime.jsx(reactNative.View,{style:e.form.footer,children:jsxRuntime.jsx(reactNative.TouchableOpacity,{style:e.form.continueBtn,onPress:n,children:jsxRuntime.jsx(reactNative.Text,{style:e.form.continueBtnText,children:"Continue Verification"})})})]})}function oh({styles:e,error:t,status:r,loading:o,sourceCurrency:n,destinationCurrency:s,destinationNetwork:i,tokenIconUrl:a,networkIconUrl:l,onClose:c,onRetryStatusCheck:p}){let{colors:h}=A(),T=!!t;return jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[T?jsxRuntime.jsx(tr,{onPress:c}):jsxRuntime.jsx(reactNative.View,{style:Jc}),jsxRuntime.jsx(reactNative.View,{style:e.flow.centered,children:t?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(reactNative.Text,{style:e.flow.heading,children:"Could not confirm status"}),jsxRuntime.jsx(reactNative.Text,{style:e.flow.sub,children:"Your payment may still be completing. Try checking again, or close this screen and verify your wallet balance."})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(reactNative.View,{style:e.flow.spinnerWrap,children:jsxRuntime.jsx(kt,{size:48,strokeWidth:3,gradientFrom:h.primary,gradientTo:h.primary})}),jsxRuntime.jsx(reactNative.Text,{style:e.flow.heading,children:"Processing your purchase"}),jsxRuntime.jsxs(reactNative.Text,{style:e.flow.sub,children:["Your payment has been confirmed.",`
2
+ `,"We're sending your crypto \u2014 this usually takes less than a minute."]}),n&&s&&i&&jsxRuntime.jsx(Xc,{sourceCurrency:n,destinationCurrency:s,destinationNetwork:i,tokenIconUrl:a,networkIconUrl:l,style:{marginTop:24,marginHorizontal:24}})]})}),jsxRuntime.jsxs(reactNative.View,{style:e.form.footer,children:[jsxRuntime.jsx(To,{error:t,progress:r,loading:o}),t?jsxRuntime.jsx(reactNative.TouchableOpacity,{style:e.form.ghostBtn,onPress:p,children:jsxRuntime.jsx(reactNative.Text,{style:e.form.ghostBtnText,children:"Check status again"})}):null]})]})}function nh({styles:e,session:t,loading:r,error:o,status:n,confirmCheckout:s,tokenIconUrl:i,networkIconUrl:a,onClose:l,onBack:c}){let{colors:p}=A(),h=t.transaction_details,T=Yc(h.destination_amount,h.destination_currency);return jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(tr,{onPress:c??l,title:"Review your purchase",variant:c?"back":"close"}),jsxRuntime.jsxs(reactNative.View,{style:e.form.content,children:[jsxRuntime.jsx(reactNative.View,{style:{alignItems:"center",marginTop:24,marginBottom:20},children:jsxRuntime.jsx(ya,{currency:h.destination_currency,tokenIconUrl:i,networkIconUrl:a,size:64})}),jsxRuntime.jsxs(reactNative.View,{style:e.quote.card,children:[jsxRuntime.jsx(hn,{quote:e.quote,label:"You pay",value:`${h.source_amount} ${h.source_currency.toUpperCase()}`,hideDivider:true}),jsxRuntime.jsx(hn,{quote:e.quote,label:"You receive",value:`${T} ${h.destination_currency.toUpperCase()}`,hideDivider:true}),jsxRuntime.jsx(hn,{quote:e.quote,label:"Network fee",value:`$${h.fees.network_fee_amount}`,hideDivider:true}),jsxRuntime.jsx(hn,{quote:e.quote,label:"Transaction fee",value:`$${h.fees.transaction_fee_amount}`,last:true})]})]}),jsxRuntime.jsxs(reactNative.View,{style:e.form.footer,children:[r?jsxRuntime.jsx(reactNative.View,{style:[e.form.continueBtn,e.form.loaderInButton],children:jsxRuntime.jsx(kt,{size:28,strokeWidth:2,gradientFrom:p.primaryForeground,gradientTo:p.primaryForeground})}):jsxRuntime.jsx(reactNative.TouchableOpacity,{style:e.form.continueBtn,onPress:s,children:jsxRuntime.jsx(reactNative.Text,{style:e.form.continueBtnText,children:"Confirm Purchase"})}),jsxRuntime.jsx(To,{error:o,progress:n,loading:r})]})]})}function ih({styles:e,hasPrefilledPhone:t,loading:r,error:o,status:n,email:s,phone:i,setPhone:a,register:l,onClose:c}){let p=A(),{colors:h,fonts:T,components:d}=p,[f,C]=ws.useState("");ws.useEffect(()=>{if(t)return;let k=f?`+1${f}`:"";a(k);},[f,a,t]);let v=ws.useCallback(k=>{C(k.replace(/[^\d]/g,""));},[]);if(t)return jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(tr,{onPress:c}),jsxRuntime.jsxs(reactNative.View,{style:e.flow.centered,children:[jsxRuntime.jsx(kt,{size:56,strokeWidth:3}),jsxRuntime.jsx(To,{error:o,progress:n,loading:r})]})]});let x=f.length>=4;return jsxRuntime.jsx(reactNative.KeyboardAvoidingView,{style:e.form.flex,behavior:reactNative.Platform.OS==="ios"?"padding":void 0,children:jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(tr,{onPress:c}),jsxRuntime.jsxs(reactNative.View,{style:e.form.content,children:[jsxRuntime.jsx(reactNative.Text,{style:e.form.title,children:"Enter your phone"}),jsxRuntime.jsx(reactNative.Text,{style:e.form.subtitle,children:"We'll send a verification code to confirm your number."}),jsxRuntime.jsxs(reactNative.View,{style:e.form.fieldWrap,children:[jsxRuntime.jsx(reactNative.Text,{style:e.form.fieldLabel,children:"Phone number"}),jsxRuntime.jsxs(reactNative.View,{style:ql.phoneRow,children:[jsxRuntime.jsxs(reactNative.View,{style:[ql.countryPrefix,{backgroundColor:d.card.backgroundColor,borderColor:d.input.borderColor,borderRadius:d.input.borderRadius,borderWidth:d.card.borderWidth}],children:[jsxRuntime.jsx(reactNative.Text,{style:ql.flag,children:"\u{1F1FA}\u{1F1F8}"}),jsxRuntime.jsx(reactNative.Text,{style:[ql.dialCode,{color:h.foreground,fontFamily:T.medium}],children:"+1"})]}),jsxRuntime.jsx(reactNative.TextInput,{style:[e.form.input,ql.phoneInput,r&&{opacity:.5}],placeholder:"Phone number",placeholderTextColor:p.components.input.placeholderColor,keyboardType:"phone-pad",value:f,onChangeText:v,autoFocus:true,returnKeyType:"done",onSubmitEditing:()=>x&&l(),editable:!r})]})]}),jsxRuntime.jsxs(reactNative.View,{style:e.form.emailRow,children:[jsxRuntime.jsx(reactNative.Text,{style:e.form.emailLabel,children:"Signing up as"}),jsxRuntime.jsx(reactNative.Text,{style:e.form.emailValue,children:s})]})]}),jsxRuntime.jsxs(reactNative.View,{style:e.form.footer,children:[r?jsxRuntime.jsx(reactNative.View,{style:[e.form.continueBtn,e.form.loaderInButton],children:jsxRuntime.jsx(kt,{size:28,strokeWidth:2,gradientFrom:h.primaryForeground,gradientTo:h.primaryForeground})}):jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[e.form.continueBtn,!x&&e.form.continueBtnDisabled],onPress:l,disabled:!x,children:jsxRuntime.jsx(reactNative.Text,{style:[e.form.continueBtnText,!x&&e.form.continueBtnTextDisabled],children:"Continue"})}),jsxRuntime.jsx(To,{error:o,progress:n,loading:r})]})]})})}var ql=reactNative.StyleSheet.create({phoneRow:{flexDirection:"row",gap:8,alignItems:"stretch"},countryPrefix:{flexDirection:"row",alignItems:"center",paddingHorizontal:12,gap:8},flag:{fontSize:20},dialCode:{fontSize:16,fontWeight:"600"},phoneInput:{flex:1}});function rw({currency:e,tokenIconUrl:t,size:r=72}){let{colors:o}=A(),n=e.toLowerCase(),s=Zc[n]??o.primary,i=Math.round(r*.36);return jsxRuntime.jsxs(reactNative.View,{style:{width:r,height:r,position:"relative"},children:[t?jsxRuntime.jsx(reactNative.Image,{source:{uri:t},style:{width:r,height:r,borderRadius:r/2}}):jsxRuntime.jsx(reactNative.View,{style:[zn.tokenCircle,{width:r,height:r,borderRadius:r/2,backgroundColor:s}],children:jsxRuntime.jsx(reactNative.Text,{style:[zn.tokenLetter,{fontSize:r*.38}],children:e.toUpperCase().slice(0,e.length>3?4:void 0)})}),jsxRuntime.jsx(reactNative.View,{style:[zn.checkBadge,{width:i,height:i,borderRadius:i/2,backgroundColor:o.success,borderColor:o.background}],children:jsxRuntime.jsx(dt,{size:i*.55,color:"#FFFFFF",strokeWidth:3})})]})}function sh({styles:e,session:t,resolvedRecipientAddress:r,recipientFromConfig:o,tokenIconUrl:n,networkIconUrl:s,onDone:i}){let {colors:a,components:l,fonts:c}=A(),p=t.transaction_details,h=Yc(p.destination_amount,p.destination_currency),T=r||o||"";ga(p.destination_network);return jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(tr,{onPress:i,title:"Purchase complete"}),jsxRuntime.jsx(reactNative.View,{style:e.form.content,children:jsxRuntime.jsxs(At,{style:e.form.flex,contentContainerStyle:zn.scrollContent,showsVerticalScrollIndicator:false,children:[jsxRuntime.jsxs(reactNative.View,{style:zn.iconSection,children:[jsxRuntime.jsx(rw,{currency:p.destination_currency,tokenIconUrl:n,size:72}),jsxRuntime.jsxs(reactNative.View,{style:zn.statusRow,children:[jsxRuntime.jsx(reactNative.View,{style:[zn.statusDot,{backgroundColor:a.success}]}),jsxRuntime.jsx(reactNative.Text,{style:[zn.statusText,{color:a.foreground,fontFamily:c.semibold}],children:"Completed"})]}),jsxRuntime.jsx(reactNative.Text,{style:[zn.subtitle,{color:a.foregroundMuted}],children:"Your crypto is on its way to your wallet."})]}),jsxRuntime.jsx(Xc,{sourceCurrency:p.source_currency,destinationCurrency:p.destination_currency,destinationNetwork:p.destination_network,tokenIconUrl:n,networkIconUrl:s,style:{marginBottom:12}}),jsxRuntime.jsxs(reactNative.View,{style:[e.quote.card,{borderRadius:l.card.borderRadius,borderWidth:l.card.borderWidth,borderColor:l.card.borderColor},zn.detailCard],children:[jsxRuntime.jsx(hn,{quote:e.quote,label:"You Paid",value:`${p.source_amount} ${p.source_currency.toUpperCase()}`,hideDivider:true}),jsxRuntime.jsx(hn,{quote:e.quote,label:"You Received",value:`${h} ${p.destination_currency.toUpperCase()}`,hideDivider:true}),jsxRuntime.jsx(hn,{quote:e.quote,label:"Network Fee",value:`$${p.fees.network_fee_amount}`,hideDivider:true}),jsxRuntime.jsx(hn,{quote:e.quote,label:"Transaction Fee",value:`$${p.fees.transaction_fee_amount}`,hideDivider:true}),jsxRuntime.jsx(ip,{quote:e.quote,label:"Intent Address",address:p.wallet_address,hideDivider:true}),T?jsxRuntime.jsx(ip,{quote:e.quote,label:"Recipient Address",address:T,last:true}):jsxRuntime.jsx(hn,{quote:e.quote,label:"Session",value:t.id.slice(0,8)+"..."+t.id.slice(-6),last:true})]})]})}),jsxRuntime.jsx(reactNative.View,{style:e.form.footer,children:jsxRuntime.jsx(reactNative.TouchableOpacity,{style:e.form.continueBtn,onPress:i,children:jsxRuntime.jsx(reactNative.Text,{style:e.form.continueBtnText,children:"Done"})})})]})}var zn=reactNative.StyleSheet.create({scrollContent:{paddingBottom:24,alignItems:"center"},iconSection:{alignItems:"center",marginTop:24,marginBottom:24},tokenCircle:{alignItems:"center",justifyContent:"center"},tokenLetter:{color:"#FFFFFF",fontWeight:"700",letterSpacing:.5},checkBadge:{position:"absolute",bottom:0,right:0,alignItems:"center",justifyContent:"center",borderWidth:3},statusRow:{flexDirection:"row",alignItems:"center",marginTop:16,gap:6},statusDot:{width:8,height:8,borderRadius:4},statusText:{fontSize:16},subtitle:{fontSize:14,marginTop:4},detailCard:{width:"100%"}});function ah({styles:e,hasAutoWallet:t,loading:r,error:o,status:n,walletAddress:s,walletNetwork:i,setWalletAddress:a,setWalletNetwork:l,setDestinationCurrency:c,registerWallet:p,onClose:h}){let{colors:T,components:d}=A();if(t){let f=!r&&!!o;return jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(tr,{onPress:h}),jsxRuntime.jsxs(reactNative.View,{style:e.flow.centered,children:[!f&&jsxRuntime.jsx(kt,{size:56,strokeWidth:3}),jsxRuntime.jsx(To,{error:o,progress:n,loading:r})]}),f&&jsxRuntime.jsx(reactNative.View,{style:e.form.footer,children:jsxRuntime.jsx(reactNative.TouchableOpacity,{style:e.form.continueBtn,onPress:p,children:jsxRuntime.jsx(reactNative.Text,{style:e.form.continueBtnText,children:"Retry"})})})]})}return jsxRuntime.jsx(reactNative.KeyboardAvoidingView,{style:e.form.flex,behavior:reactNative.Platform.OS==="ios"?"padding":void 0,children:jsxRuntime.jsxs(reactNative.View,{style:e.form.screen,children:[jsxRuntime.jsx(tr,{onPress:h}),jsxRuntime.jsxs(reactNative.View,{style:e.form.content,children:[jsxRuntime.jsx(reactNative.Text,{style:e.form.title,children:"Your crypto wallet"}),jsxRuntime.jsx(reactNative.Text,{style:e.form.subtitle,children:"Enter the wallet address where you'd like to receive your crypto."}),jsxRuntime.jsxs(reactNative.View,{style:e.form.fieldWrap,children:[jsxRuntime.jsx(reactNative.Text,{style:e.form.fieldLabel,children:"Wallet address"}),jsxRuntime.jsx(reactNative.TextInput,{style:[e.form.input,e.wallet.input],placeholder:"0x...",placeholderTextColor:d.input.placeholderColor,autoCapitalize:"none",autoCorrect:false,value:s,onChangeText:a})]}),jsxRuntime.jsxs(reactNative.View,{style:e.form.fieldWrap,children:[jsxRuntime.jsx(reactNative.Text,{style:e.form.fieldLabel,children:"Network"}),jsxRuntime.jsx(reactNative.View,{style:e.wallet.list,children:Kc.map(f=>{let C=i===f.value;return jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[e.wallet.row,C&&e.wallet.rowSelected],onPress:()=>{l(f.value),c(f.defaultCrypto);},children:[jsxRuntime.jsx(reactNative.View,{style:e.wallet.iconWrap,children:jsxRuntime.jsx(f.Icon,{size:24})}),jsxRuntime.jsx(reactNative.Text,{style:[e.wallet.rowText,C&&e.wallet.rowTextSelected],children:f.label}),C&&jsxRuntime.jsx(reactNative.View,{style:e.wallet.checkCircle,children:jsxRuntime.jsx(dt,{size:14,color:d.container.buttonTitleColor,strokeWidth:2.5})})]},f.value)})})]})]}),jsxRuntime.jsxs(reactNative.View,{style:e.form.footer,children:[r?jsxRuntime.jsx(reactNative.View,{style:[e.form.continueBtn,e.form.loaderInButton],children:jsxRuntime.jsx(kt,{size:28,strokeWidth:2,gradientFrom:T.primaryForeground,gradientTo:T.primaryForeground})}):jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[e.form.continueBtn,!s&&e.form.continueBtnDisabled],onPress:p,disabled:!s,children:jsxRuntime.jsx(reactNative.Text,{style:[e.form.continueBtnText,!s&&e.form.continueBtnTextDisabled],children:"Continue"})}),jsxRuntime.jsx(To,{error:o,progress:n,loading:r})]})]})})}function yd({config:e,onClose:t}){let r=A(),o=Dn(),{step:n,restoring:s,loading:i,status:a,error:l,email:c,phone:p,session:h,kycData:T,walletAddress:d,resolvedRecipientAddress:f,walletNetwork:C,sourceAmount:v,sourceCurrency:x,destinationCurrency:k,tokenIconUrl:R,networkIconUrl:w,applePaySupported:_,setStep:m,setEmail:u,setPhone:S,setWalletAddress:y,setWalletNetwork:F,setSourceAmount:L,setDestinationCurrency:V,checkEmail:D,register:O,attachKyc:N,verifyIdentity:M,registerWallet:Ve,collectPaymentMethod:se,addPaymentMethod:Le,confirmCheckout:J,reset:pe,emitComplete:ee,resumeFulfillmentPolling:U,amountFirst:de,customerId:Z,accessToken:he,requestKYCUpgrade:it,kycUpgradeMode:Oe,logout:te,clearError:je,switchingAccount:Xe}=ld(e),qe=!!e?.email&&!Xe,ft=!!e?.phone,He=!!e?.publishableKey&&!!e?.externalUserId,[Ae,We]=ws.useState(void 0),[_e,be]=ws.useState(void 0),[Ge,Ye]=ws.useState([]),[at,Tr]=ws.useState(false),[$e,Ie]=ws.useState(false),[et,lt]=ws.useState(null),[xe,ve]=ws.useState(null),[Ee,ge]=ws.useState(null),[ct,Ft]=ws.useState(false),mt=ws.useCallback(async()=>{await te(),t?.();},[te,t]);ws.useEffect(()=>{n!=="kyc_offer"||!Z||!he||(Ft(true),ii(Z,he).then(Ce=>{let ze=Ce.kyc_tiers??[],K=ze.find(b=>b.tier==="l0"),Re=ze.find(b=>b.tier==="l1"),I=ze.find(b=>b.tier==="l2");K?.verification_status&&lt(K.verification_status),Re?.verification_status&&ve(Re.verification_status),I?.verification_status&&ge(I.verification_status);}).catch(Ce=>{console.warn("[OnrampScreen] kyc_offer customer fetch error:",Ce?.message);}).finally(()=>Ft(false)),d&&cp({destinationNetwork:C||"ethereum",walletAddress:d,accessToken:he,cryptoCustomerId:Z}).then(Ce=>{let ze=Ce.limits?.usd;if(ze?.card?.length){let K=Math.max(...ze.card.map(Re=>Re.limit));We(K);}}).catch(Ce=>{console.warn("[OnrampScreen] kyc_offer transaction_limits error:",Ce?.message);}));},[n,Z,he,d,C]),ws.useEffect(()=>{if(s||n!=="session_params"||!Z||!he)return;let Ce=K=>{let Re=K?.message??"";return Re.includes("stripe_onramp_forbidden")||Re.includes("403")},ze=K=>{Ce(K)&&mt();};ii(Z,he).then(K=>{let Re=K.kyc_tiers??[],I=Re.find(q=>q.tier==="l0"),b=Re.find(q=>q.tier==="l1"),B=Re.find(q=>q.tier==="l2"),H=!!b?.verification_status&&b.verification_status!=="not_started",$=B?.verification_status==="verified";Tr(H),Ie(!!$),I?.verification_status&&lt(I.verification_status),b?.verification_status&&ve(b.verification_status),B?.verification_status&&ge(B.verification_status);}).catch(K=>{console.warn("[OnrampScreen] customer fetch error:",K?.message),ze(K);}),dp(Z,he).then(K=>{Ye(K.data??[]);}).catch(K=>{console.warn("[OnrampScreen] payment_tokens error:",K?.message),ze(K);}),d&&cp({destinationNetwork:C||"ethereum",walletAddress:d,accessToken:he,cryptoCustomerId:Z}).then(K=>{let Re=K.limits?.usd;if(Re?.card?.length){let I=Math.max(...Re.card.map(b=>b.limit));We(I);}}).catch(K=>{console.warn("[OnrampScreen] transaction_limits error:",K?.message),ze(K);}),Fl(e?.publishableKey).then(K=>{let Re=K.data?.find(I=>I.currency_code==="usd");Re&&be(Re.minimum_amount);}).catch(K=>{console.warn("[OnrampScreen] fiat_currencies error:",K?.message);});},[s,n,Z,he,d,C,pe,mt]);let or=async()=>{if(!(!Z||!he))try{let Ce=await dp(Z,he);Ye(Ce.data??[]);}catch(Ce){console.warn("[OnrampScreen] payment_tokens refresh error:",Ce?.message);let ze=Ce?.message??"";(ze.includes("stripe_onramp_forbidden")||ze.includes("403"))&&mt();}},Me=async()=>{let Ce=await Le();return Ce&&await or(),Ce},wt=e?.skipSuccessConfirmation===true;ws.useEffect(()=>{n==="success"&&wt&&h&&(ee(h),pe(),t?.());},[n,wt,h,ee,pe,t]),ws.useEffect(()=>{n==="register"&&ft&&O();},[n,ft,O]);let ot=()=>{pe(),t?.();};if(s)return jsxRuntime.jsx(reactNative.View,{style:[cw.container,{backgroundColor:r.colors.background}],children:jsxRuntime.jsx(kt,{size:56,strokeWidth:3,gradientFrom:r.colors.primary,gradientTo:r.colors.primary})});if(n==="disclaimer")return jsxRuntime.jsx(Zm,{styles:o,merchantDisplayName:e?.merchantDisplayName,onContinue:()=>m("register"),onClose:()=>m("email")});if(n==="email")return jsxRuntime.jsx(Xm,{styles:o,placeholderColor:r.components.input.placeholderColor,hasPrefilledEmail:qe,loading:i,error:l,status:a,email:c,setEmail:u,checkEmail:D,onClose:ot});if(n==="register")return jsxRuntime.jsx(ih,{styles:o,hasPrefilledPhone:ft,loading:i,error:l,status:a,email:c,phone:p,setPhone:S,register:O,onClose:ot});if(n==="kyc")return jsxRuntime.jsx(ad,{initialData:T,loading:i,onComplete:N,onCancel:ot});if(n==="kyc_offer"){let K=et==="verified"||xe==="verified"||Ee==="verified",Re=()=>{Oe.current&&(Oe.current=false),m("session_params");};return jsxRuntime.jsx(Ym,{onSelectL1:()=>m("kyc_l1"),onSelectL2:()=>{Oe.current=true,m("identity");},onSkip:Re,onClose:()=>{Oe.current?(Oe.current=false,m("session_params")):K?Re():ot();},onRefresh:()=>{!Z||!he||(Ft(true),ii(Z,he).then(B=>{let H=B.kyc_tiers??[],$=H.find(Qe=>Qe.tier==="l0"),q=H.find(Qe=>Qe.tier==="l1"),ue=H.find(Qe=>Qe.tier==="l2");$?.verification_status&&lt($.verification_status),q?.verification_status&&ve(q.verification_status),ue?.verification_status&&ge(ue.verification_status);}).catch(B=>{console.warn("[OnrampScreen] refresh customer fetch error:",B?.message);}).finally(()=>Ft(false)));},loading:i,loadingTiers:ct,error:l?.message,l1Status:xe??"not_started",l2Status:Ee??"not_started",l1Completed:at,l2Completed:$e,canPurchase:K,currentLimit:K?Ae:void 0})}if(n==="kyc_l1"){let Ce=Oe.current?"session_params":"wallet";return jsxRuntime.jsx(jm,{initialData:T,loading:i,error:l?.message,onComplete:ze=>{Oe.current&&(Oe.current=false),N(ze,Ce);},onCancel:()=>{je(),m("kyc_offer");},onClose:ot})}return n==="identity"?jsxRuntime.jsx(th,{styles:o,loading:i,status:a,error:l,verifyIdentity:M,onClose:()=>{Oe.current?(Oe.current=false,m("session_params")):ot();}}):n==="wallet"?jsxRuntime.jsx(ah,{styles:o,hasAutoWallet:He,loading:i,error:l,status:a,walletAddress:d,walletNetwork:C,setWalletAddress:y,setWalletNetwork:F,setDestinationCurrency:V,registerWallet:Ve,onClose:ot}):n==="session_params"?jsxRuntime.jsx(sd,{initialAmount:v,currency:x,applePaySupported:_,paymentSelectorPosition:e?.paymentSelectorPosition??"header",minAmount:_e,maxAmount:Ae,paymentTokens:Ge,onAddPaymentMethod:Me,onCollectPayment:(Ce,ze)=>{se(Ce,ze);},paymentLoading:i,paymentStatus:a,paymentError:l?.message??null,onConfirm:(Ce,ze)=>{if(de&&!Z)L(Ce),m("email");else {let K=ze==="apple_pay";se(K,Ce,!K&&ze?ze:void 0);}},onCancel:ot,accessToken:he,showHistoryProgressBar:e?.showHistoryProgressBar,onLogout:mt,onRequestKYC:it,showSwitchAccount:!qe,inputDisabled:(et!==null||xe!==null)&&et!=="verified"&&xe!=="verified"&&Ee!=="verified"}):n==="quote"&&h?jsxRuntime.jsx(nh,{styles:o,session:h,loading:i,error:l,status:a,confirmCheckout:J,tokenIconUrl:R,networkIconUrl:w,onClose:ot,onBack:()=>m("session_params")}):n==="processing"?jsxRuntime.jsx(oh,{styles:o,error:l,status:a,loading:i,sourceCurrency:h?.transaction_details.source_currency,destinationCurrency:h?.transaction_details.destination_currency??k,destinationNetwork:h?.transaction_details.destination_network??"base",tokenIconUrl:R,networkIconUrl:w,onClose:ot,onRetryStatusCheck:U}):n==="success"&&h&&!wt?jsxRuntime.jsx(sh,{styles:o,session:h,resolvedRecipientAddress:f,recipientFromConfig:e?.recipientAddress,tokenIconUrl:R,networkIconUrl:w,onDone:()=>{ee(h),pe(),t?.();}}):null}var cw=reactNative.StyleSheet.create({container:{flex:1,justifyContent:"center",alignItems:"center"}});function bd({publishableKey:e,email:t,phone:r,externalUserId:o,flowOrder:n,destinationChainType:s="ethereum",destinationChainId:i="8453",destinationTokenAddress:a,recipientAddress:l,onComplete:c,onError:p,onStepChange:h,onClose:T,urlScheme:d="unifoldOnramp",paymentSelectorPosition:f,skipSuccessConfirmation:C=false,appName:v}){let{colors:x,fonts:k,components:R}=A(),w=e||Nc(),[_,m]=ws.useState(""),[u,S]=ws.useState("loading"),[y,F]=ws.useState(null);ws.useEffect(()=>{let V=false;async function D(){try{w&&(ed(w),td(Pl()));let O=await Al();if(V)return;let N=O.merchantIdentifier??"";if(m(N),await stripeReactNative.initStripe({publishableKey:O.publishableKey,urlScheme:d,...N?{merchantIdentifier:N}:{}}),V)return;S("ready");}catch(O){if(V)return;console.error("[StripeOnramp] Init failed:",O),F(O?.message??"Failed to load Stripe configuration"),S("error");}}return D(),()=>{V=true;}},[w,d]);let L=ws.useMemo(()=>{let V={publishableKey:w,externalUserId:o,destinationChainType:s,destinationChainId:i,onComplete:c,onError:p,onStepChange:h};return a&&(V.destinationTokenAddress=a),l&&(V.recipientAddress=l),t&&(V.email=t),r&&(V.phone=r),n&&(V.flowOrder=n),f&&(V.paymentSelectorPosition=f),V.skipSuccessConfirmation=C,V.merchantIdentifier=_,v&&(V.merchantDisplayName=v),V},[w,o,s,i,a,l,t,r,n,f,C,_,v,c,p,h]);return u==="error"?jsxRuntime.jsxs(reactNative.View,{style:[_a.centered,{backgroundColor:x.background}],children:[jsxRuntime.jsx(reactNative.Text,{style:[_a.errorText,{color:x.error,fontFamily:k.medium}],children:"Unable to initialize"}),jsxRuntime.jsx(reactNative.Text,{style:[_a.errorDetail,{color:x.foregroundMuted,fontFamily:k.regular}],children:y}),T&&jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[_a.retryBtn,{backgroundColor:R.button.primaryBackground,borderRadius:R.button.borderRadius}],onPress:T,children:jsxRuntime.jsx(reactNative.Text,{style:[_a.retryBtnText,{color:R.button.primaryText,fontFamily:k.medium}],children:"Go Back"})})]}):u==="loading"?jsxRuntime.jsx(reactNative.View,{style:[_a.centered,{backgroundColor:x.background}],children:jsxRuntime.jsx(kt,{size:56,strokeWidth:3,gradientFrom:x.primary,gradientTo:x.primary})}):jsxRuntime.jsx(yd,{config:L,onClose:T})}var _a=reactNative.StyleSheet.create({centered:{flex:1,justifyContent:"center",alignItems:"center",paddingHorizontal:24},errorText:{fontSize:18,marginBottom:8},errorDetail:{fontSize:14,textAlign:"center",marginBottom:24},retryBtn:{paddingVertical:14,paddingHorizontal:32},retryBtnText:{fontSize:16}});function ch(){let{configure:e}=stripeReactNative.useOnramp(),t=ws.useRef(false);return ws.useEffect(()=>{t.current||(t.current=true,e({merchantDisplayName:"Unifold",appearance:{lightColors:{primary:"#2d22a1",contentOnPrimary:"#ffffff",borderSelected:"#07b8b8"},darkColors:{primary:"#800080",contentOnPrimary:"#ffffff",borderSelected:"#526f3e"},style:"ALWAYS_DARK",primaryButton:{cornerRadius:8,height:48}}}).then(r=>{r.error&&console.error("[StripeOnrampPreconfigure] error:",r.error.message);}).catch(r=>{console.error("[StripeOnrampPreconfigure] threw:",r?.message);}));},[e]),null}var dh="__unifold_stripe_onramp__";function Cd(e){globalThis[dh]=e;}function uh(){return globalThis[dh]}Cd(bd);var Gi=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this);}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe();}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}};var Ds,Yi,Ia,ph,Cw=(ph=class extends Gi{constructor(){super();oe(this,Ds);oe(this,Yi);oe(this,Ia);j(this,Ia,t=>{if(typeof window<"u"&&window.addEventListener){let r=()=>t();return window.addEventListener("visibilitychange",r,false),()=>{window.removeEventListener("visibilitychange",r);}}});}onSubscribe(){g(this,Yi)||this.setEventListener(g(this,Ia));}onUnsubscribe(){var t;this.hasListeners()||((t=g(this,Yi))==null||t.call(this),j(this,Yi,void 0));}setEventListener(t){var r;j(this,Ia,t),(r=g(this,Yi))==null||r.call(this),j(this,Yi,t(o=>{typeof o=="boolean"?this.setFocused(o):this.onFocus();}));}setFocused(t){g(this,Ds)!==t&&(j(this,Ds,t),this.onFocus());}onFocus(){let t=this.isFocused();this.listeners.forEach(r=>{r(t);});}isFocused(){return typeof g(this,Ds)=="boolean"?g(this,Ds):globalThis.document?.visibilityState!=="hidden"}},Ds=new WeakMap,Yi=new WeakMap,Ia=new WeakMap,ph),wd=new Cw;var ww={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},Un,Vs,fh,Sw=(fh=class{constructor(){oe(this,Un,ww);oe(this,Vs,false);}setTimeoutProvider(e){process.env.NODE_ENV!=="production"&&g(this,Vs)&&e!==g(this,Un)&&console.error("[timeoutManager]: Switching provider after calls to previous provider might result in unexpected behavior.",{previous:g(this,Un),provider:e}),j(this,Un,e),process.env.NODE_ENV!=="production"&&j(this,Vs,false);}setTimeout(e,t){return process.env.NODE_ENV!=="production"&&j(this,Vs,true),g(this,Un).setTimeout(e,t)}clearTimeout(e){g(this,Un).clearTimeout(e);}setInterval(e,t){return process.env.NODE_ENV!=="production"&&j(this,Vs,true),g(this,Un).setInterval(e,t)}clearInterval(e){g(this,Un).clearInterval(e);}},Un=new WeakMap,Vs=new WeakMap,fh),Ql=new Sw;function mh(e){setTimeout(e,0);}var yh=typeof window>"u"||"Deno"in globalThis;function Vo(){}function bh(e,t){return typeof e=="function"?e(t):e}function Ch(e){return typeof e=="number"&&e>=0&&e!==1/0}function wh(e,t){return Math.max(e+(t||0)-Date.now(),0)}function Kl(e,t){return typeof e=="function"?e(t):e}function Sh(e,t){return typeof e=="function"?e(t):e}function Op(e,t){let{type:r="all",exact:o,fetchStatus:n,predicate:s,queryKey:i,stale:a}=e;if(i){if(o){if(t.queryHash!==Gl(i,t.options))return false}else if(!Da(t.queryKey,i))return false}if(r!=="all"){let l=t.isActive();if(r==="active"&&!l||r==="inactive"&&l)return false}return !(typeof a=="boolean"&&t.isStale()!==a||n&&n!==t.state.fetchStatus||s&&!s(t))}function Lp(e,t){let{exact:r,status:o,predicate:n,mutationKey:s}=e;if(s){if(!t.options.mutationKey)return false;if(r){if(Pa(t.options.mutationKey)!==Pa(s))return false}else if(!Da(t.options.mutationKey,s))return false}return !(o&&t.state.status!==o||n&&!n(t))}function Gl(e,t){return (t?.queryKeyHashFn||Pa)(e)}function Pa(e){return JSON.stringify(e,(t,r)=>Vp(r)?Object.keys(r).sort().reduce((o,n)=>(o[n]=r[n],o),{}):r)}function Da(e,t){return e===t?true:typeof e!=typeof t?false:e&&t&&typeof e=="object"&&typeof t=="object"?Object.keys(t).every(r=>Da(e[r],t[r])):false}var Tw=Object.prototype.hasOwnProperty;function Dp(e,t,r=0){if(e===t)return e;if(r>500)return t;let o=hh(e)&&hh(t);if(!o&&!(Vp(e)&&Vp(t)))return t;let s=(o?e:Object.keys(e)).length,i=o?t:Object.keys(t),a=i.length,l=o?new Array(a):{},c=0;for(let p=0;p<a;p++){let h=o?p:i[p],T=e[h],d=t[h];if(T===d){l[h]=T,(o?p<s:Tw.call(e,h))&&c++;continue}if(T===null||d===null||typeof T!="object"||typeof d!="object"){l[h]=d;continue}let f=Dp(T,d,r+1);l[h]=f,f===T&&c++;}return s===a&&c===s?e:l}function hh(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function Vp(e){if(!gh(e))return false;let t=e.constructor;if(t===void 0)return true;let r=t.prototype;return !(!gh(r)||!r.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(e)!==Object.prototype)}function gh(e){return Object.prototype.toString.call(e)==="[object Object]"}function Th(e){return new Promise(t=>{Ql.setTimeout(t,e);})}function kh(e,t,r){if(typeof r.structuralSharing=="function")return r.structuralSharing(e,t);if(r.structuralSharing!==false){if(process.env.NODE_ENV!=="production")try{return Dp(e,t)}catch(o){throw console.error(`Structural sharing requires data to be JSON serializable. To fix this, turn off structuralSharing or return JSON-serializable data from your queryFn. [${r.queryHash}]: ${o}`),o}return Dp(e,t)}return t}function xh(e,t,r=0){let o=[...e,t];return r&&o.length>r?o.slice(1):o}function vh(e,t,r=0){let o=[t,...e];return r&&o.length>r?o.slice(0,-1):o}var Fa=Symbol();function Sd(e,t){return process.env.NODE_ENV!=="production"&&e.queryFn===Fa&&console.error(`Attempted to invoke queryFn when set to skipToken. This is likely a configuration error. Query hash: '${e.queryHash}'`),!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===Fa?()=>Promise.reject(new Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function Rh(e,t,r){let o=false,n;return Object.defineProperty(e,"signal",{enumerable:true,get:()=>(n??(n=t()),o||(o=true,n.aborted?r():n.addEventListener("abort",r,{once:true})),n)}),e}var Td=(()=>{let e=()=>yh;return {isServer(){return e()},setIsServer(t){e=t;}}})();function _h(){let e,t,r=new Promise((n,s)=>{e=n,t=s;});r.status="pending",r.catch(()=>{});function o(n){Object.assign(r,n),delete r.resolve,delete r.reject;}return r.resolve=n=>{o({status:"fulfilled",value:n}),e(n);},r.reject=n=>{o({status:"rejected",reason:n}),t(n);},r}var kw=mh;function xw(){let e=[],t=0,r=a=>{a();},o=a=>{a();},n=kw,s=a=>{t?e.push(a):n(()=>{r(a);});},i=()=>{let a=e;e=[],a.length&&n(()=>{o(()=>{a.forEach(l=>{r(l);});});});};return {batch:a=>{let l;t++;try{l=a();}finally{t--,t||i();}return l},batchCalls:a=>(...l)=>{s(()=>{a(...l);});},schedule:s,setNotifyFunction:a=>{r=a;},setBatchNotifyFunction:a=>{o=a;},setScheduler:a=>{n=a;}}}var qr=xw();var Va,Ji,Oa,Ih,vw=(Ih=class extends Gi{constructor(){super();oe(this,Va,true);oe(this,Ji);oe(this,Oa);j(this,Oa,t=>{if(typeof window<"u"&&window.addEventListener){let r=()=>t(true),o=()=>t(false);return window.addEventListener("online",r,false),window.addEventListener("offline",o,false),()=>{window.removeEventListener("online",r),window.removeEventListener("offline",o);}}});}onSubscribe(){g(this,Ji)||this.setEventListener(g(this,Oa));}onUnsubscribe(){var t;this.hasListeners()||((t=g(this,Ji))==null||t.call(this),j(this,Ji,void 0));}setEventListener(t){var r;j(this,Oa,t),(r=g(this,Ji))==null||r.call(this),j(this,Ji,t(this.setOnline.bind(this)));}setOnline(t){g(this,Va)!==t&&(j(this,Va,t),this.listeners.forEach(o=>{o(t);}));}isOnline(){return g(this,Va)}},Va=new WeakMap,Ji=new WeakMap,Oa=new WeakMap,Ih),La=new vw;function Rw(e){return Math.min(1e3*2**e,3e4)}function Bp(e){return (e??"online")==="online"?La.isOnline():true}var kd=class extends Error{constructor(e){super("CancelledError"),this.revert=e?.revert,this.silent=e?.silent;}};function xd(e){let t=false,r=0,o,n=_h(),s=()=>n.status!=="pending",i=C=>{if(!s()){let v=new kd(C);T(v),e.onCancel?.(v);}},a=()=>{t=true;},l=()=>{t=false;},c=()=>wd.isFocused()&&(e.networkMode==="always"||La.isOnline())&&e.canRun(),p=()=>Bp(e.networkMode)&&e.canRun(),h=C=>{s()||(o?.(),n.resolve(C));},T=C=>{s()||(o?.(),n.reject(C));},d=()=>new Promise(C=>{o=v=>{(s()||c())&&C(v);},e.onPause?.();}).then(()=>{o=void 0,s()||e.onContinue?.();}),f=()=>{if(s())return;let C,v=r===0?e.initialPromise:void 0;try{C=v??e.fn();}catch(x){C=Promise.reject(x);}Promise.resolve(C).then(h).catch(x=>{if(s())return;let k=e.retry??(Td.isServer()?0:3),R=e.retryDelay??Rw,w=typeof R=="function"?R(r,x):R,_=k===true||typeof k=="number"&&r<k||typeof k=="function"&&k(r,x);if(t||!_){T(x);return}r++,e.onFail?.(r,x),Th(w).then(()=>c()?void 0:d()).then(()=>{t?T(x):f();});});};return {promise:n,status:()=>n.status,cancel:i,continue:()=>(o?.(),n),cancelRetry:a,continueRetry:l,canStart:p,start:()=>(p()?f():d().then(f),n)}}var Os,Ph,vd=(Ph=class{constructor(){oe(this,Os);}destroy(){this.clearGcTimeout();}scheduleGc(){this.clearGcTimeout(),Ch(this.gcTime)&&j(this,Os,Ql.setTimeout(()=>{this.optionalRemove();},this.gcTime));}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(Td.isServer()?1/0:300*1e3));}clearGcTimeout(){g(this,Os)!==void 0&&(Ql.clearTimeout(g(this,Os)),j(this,Os,void 0));}},Os=new WeakMap,Ph);function Dh(e){return {onFetch:(t,r)=>{let o=t.options,n=t.fetchOptions?.meta?.fetchMore?.direction,s=t.state.data?.pages||[],i=t.state.data?.pageParams||[],a={pages:[],pageParams:[]},l=0,c=async()=>{let p=false,h=f=>{Rh(f,()=>t.signal,()=>p=true);},T=Sd(t.options,t.fetchOptions),d=async(f,C,v)=>{if(p)return Promise.reject(t.signal.reason);if(C==null&&f.pages.length)return Promise.resolve(f);let k=(()=>{let m={client:t.client,queryKey:t.queryKey,pageParam:C,direction:v?"backward":"forward",meta:t.options.meta};return h(m),m})(),R=await T(k),{maxPages:w}=t.options,_=v?vh:xh;return {pages:_(f.pages,R,w),pageParams:_(f.pageParams,C,w)}};if(n&&s.length){let f=n==="backward",C=f?_w:Fh,v={pages:s,pageParams:i},x=C(o,v);a=await d(v,x,f);}else {let f=e??s.length;do{let C=l===0?i[0]??o.initialPageParam:Fh(o,a);if(l>0&&C==null)break;a=await d(a,C),l++;}while(l<f)}return a};t.options.persister?t.fetchFn=()=>t.options.persister?.(c,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},r):t.fetchFn=c;}}}function Fh(e,{pages:t,pageParams:r}){let o=t.length-1;return t.length>0?e.getNextPageParam(t[o],t,r[o],r):void 0}function _w(e,{pages:t,pageParams:r}){return t.length>0?e.getPreviousPageParam?.(t[0],t,r[0],r):void 0}var Ba,Ls,Aa,nn,Bs,no,Yl,As,$o,Ah,di,Lh,Bh=(Lh=class extends vd{constructor(t){super();oe(this,$o);oe(this,Ba);oe(this,Ls);oe(this,Aa);oe(this,nn);oe(this,Bs);oe(this,no);oe(this,Yl);oe(this,As);j(this,As,false),j(this,Yl,t.defaultOptions),this.setOptions(t.options),this.observers=[],j(this,Bs,t.client),j(this,nn,g(this,Bs).getQueryCache()),this.queryKey=t.queryKey,this.queryHash=t.queryHash,j(this,Ls,Oh(this.options)),this.state=t.state??g(this,Ls),this.scheduleGc();}get meta(){return this.options.meta}get queryType(){return g(this,Ba)}get promise(){return g(this,no)?.promise}setOptions(t){if(this.options={...g(this,Yl),...t},t?._type&&j(this,Ba,t._type),this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){let r=Oh(this.options);r.data!==void 0&&(this.setState(Vh(r.data,r.dataUpdatedAt)),j(this,Ls,r));}}optionalRemove(){!this.observers.length&&this.state.fetchStatus==="idle"&&g(this,nn).remove(this);}setData(t,r){let o=kh(this.state.data,t,this.options);return St(this,$o,di).call(this,{data:o,type:"success",dataUpdatedAt:r?.updatedAt,manual:r?.manual}),o}setState(t){St(this,$o,di).call(this,{type:"setState",state:t});}cancel(t){let r=g(this,no)?.promise;return g(this,no)?.cancel(t),r?r.then(Vo).catch(Vo):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:true});}get resetState(){return g(this,Ls)}reset(){this.destroy(),this.setState(this.resetState);}isActive(){return this.observers.some(t=>Sh(t.options.enabled,this)!==false)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===Fa||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0?this.observers.some(t=>Kl(t.options.staleTime,this)==="static"):false}isStale(){return this.getObserversCount()>0?this.observers.some(t=>t.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(t=0){return this.state.data===void 0?true:t==="static"?false:this.state.isInvalidated?true:!wh(this.state.dataUpdatedAt,t)}onFocus(){this.observers.find(r=>r.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:false}),g(this,no)?.continue();}onOnline(){this.observers.find(r=>r.shouldFetchOnReconnect())?.refetch({cancelRefetch:false}),g(this,no)?.continue();}addObserver(t){this.observers.includes(t)||(this.observers.push(t),this.clearGcTimeout(),g(this,nn).notify({type:"observerAdded",query:this,observer:t}));}removeObserver(t){this.observers.includes(t)&&(this.observers=this.observers.filter(r=>r!==t),this.observers.length||(g(this,no)&&(g(this,As)||St(this,$o,Ah).call(this)?g(this,no).cancel({revert:true}):g(this,no).cancelRetry()),this.scheduleGc()),g(this,nn).notify({type:"observerRemoved",query:this,observer:t}));}getObserversCount(){return this.observers.length}invalidate(){this.state.isInvalidated||St(this,$o,di).call(this,{type:"invalidate"});}async fetch(t,r){if(this.state.fetchStatus!=="idle"&&g(this,no)?.status()!=="rejected"){if(this.state.data!==void 0&&r?.cancelRefetch)this.cancel({silent:true});else if(g(this,no))return g(this,no).continueRetry(),g(this,no).promise}if(t&&this.setOptions(t),!this.options.queryFn){let c=this.observers.find(p=>p.options.queryFn);c&&this.setOptions(c.options);}process.env.NODE_ENV!=="production"&&(Array.isArray(this.options.queryKey)||console.error("As of v4, queryKey needs to be an Array. If you are using a string like 'repoData', please change it to an Array, e.g. ['repoData']"));let o=new AbortController,n=c=>{Object.defineProperty(c,"signal",{enumerable:true,get:()=>(j(this,As,true),o.signal)});},s=()=>{let c=Sd(this.options,r),h=(()=>{let T={client:g(this,Bs),queryKey:this.queryKey,meta:this.meta};return n(T),T})();return j(this,As,false),this.options.persister?this.options.persister(c,h,this):c(h)},a=(()=>{let c={fetchOptions:r,options:this.options,queryKey:this.queryKey,client:g(this,Bs),state:this.state,fetchFn:s};return n(c),c})();(g(this,Ba)==="infinite"?Dh(this.options.pages):this.options.behavior)?.onFetch(a,this),j(this,Aa,this.state),(this.state.fetchStatus==="idle"||this.state.fetchMeta!==a.fetchOptions?.meta)&&St(this,$o,di).call(this,{type:"fetch",meta:a.fetchOptions?.meta}),j(this,no,xd({initialPromise:r?.initialPromise,fn:a.fetchFn,onCancel:c=>{c instanceof kd&&c.revert&&this.setState({...g(this,Aa),fetchStatus:"idle"}),o.abort();},onFail:(c,p)=>{St(this,$o,di).call(this,{type:"failed",failureCount:c,error:p});},onPause:()=>{St(this,$o,di).call(this,{type:"pause"});},onContinue:()=>{St(this,$o,di).call(this,{type:"continue"});},retry:a.options.retry,retryDelay:a.options.retryDelay,networkMode:a.options.networkMode,canRun:()=>true}));try{let c=await g(this,no).start();if(c===void 0)throw process.env.NODE_ENV!=="production"&&console.error(`Query data cannot be undefined. Please make sure to return a value other than undefined from your query function. Affected query key: ${this.queryHash}`),new Error(`${this.queryHash} data is undefined`);return this.setData(c),g(this,nn).config.onSuccess?.(c,this),g(this,nn).config.onSettled?.(c,this.state.error,this),c}catch(c){if(c instanceof kd){if(c.silent)return g(this,no).promise;if(c.revert){if(this.state.data===void 0)throw c;return this.state.data}}throw St(this,$o,di).call(this,{type:"error",error:c}),g(this,nn).config.onError?.(c,this),g(this,nn).config.onSettled?.(this.state.data,c,this),c}finally{this.scheduleGc();}}},Ba=new WeakMap,Ls=new WeakMap,Aa=new WeakMap,nn=new WeakMap,Bs=new WeakMap,no=new WeakMap,Yl=new WeakMap,As=new WeakMap,$o=new WeakSet,Ah=function(){return this.state.fetchStatus==="paused"&&this.state.status==="pending"},di=function(t){let r=o=>{switch(t.type){case "failed":return {...o,fetchFailureCount:t.failureCount,fetchFailureReason:t.error};case "pause":return {...o,fetchStatus:"paused"};case "continue":return {...o,fetchStatus:"fetching"};case "fetch":return {...o,...Iw(o.data,this.options),fetchMeta:t.meta??null};case "success":let n={...o,...Vh(t.data,t.dataUpdatedAt),dataUpdateCount:o.dataUpdateCount+1,...!t.manual&&{fetchStatus:"idle",fetchFailureCount:0,fetchFailureReason:null}};return j(this,Aa,t.manual?n:void 0),n;case "error":let s=t.error;return {...o,error:s,errorUpdateCount:o.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:o.fetchFailureCount+1,fetchFailureReason:s,fetchStatus:"idle",status:"error",isInvalidated:true};case "invalidate":return {...o,isInvalidated:true};case "setState":return {...o,...t.state}}};this.state=r(this.state),qr.batch(()=>{this.observers.forEach(o=>{o.onQueryUpdate();}),g(this,nn).notify({query:this,type:"updated",action:t});});},Lh);function Iw(e,t){return {fetchFailureCount:0,fetchFailureReason:null,fetchStatus:Bp(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}function Vh(e,t){return {data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:false,status:"success"}}function Oh(e){let t=typeof e.initialData=="function"?e.initialData():e.initialData,r=t!==void 0,o=r?typeof e.initialDataUpdatedAt=="function"?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return {data:t,dataUpdateCount:0,dataUpdatedAt:r?o??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:false,status:r?"success":"pending",fetchStatus:"idle"}}var Jl,Nn,go,Ws,Hn,Zi,Wh,Eh=(Wh=class extends vd{constructor(t){super();oe(this,Hn);oe(this,Jl);oe(this,Nn);oe(this,go);oe(this,Ws);j(this,Jl,t.client),this.mutationId=t.mutationId,j(this,go,t.mutationCache),j(this,Nn,[]),this.state=t.state||Pw(),this.setOptions(t.options),this.scheduleGc();}setOptions(t){this.options=t,this.updateGcTime(this.options.gcTime);}get meta(){return this.options.meta}addObserver(t){g(this,Nn).includes(t)||(g(this,Nn).push(t),this.clearGcTimeout(),g(this,go).notify({type:"observerAdded",mutation:this,observer:t}));}removeObserver(t){j(this,Nn,g(this,Nn).filter(r=>r!==t)),this.scheduleGc(),g(this,go).notify({type:"observerRemoved",mutation:this,observer:t});}optionalRemove(){g(this,Nn).length||(this.state.status==="pending"?this.scheduleGc():g(this,go).remove(this));}continue(){return g(this,Ws)?.continue()??this.execute(this.state.variables)}async execute(t){let r=()=>{St(this,Hn,Zi).call(this,{type:"continue"});},o={client:g(this,Jl),meta:this.options.meta,mutationKey:this.options.mutationKey};j(this,Ws,xd({fn:()=>this.options.mutationFn?this.options.mutationFn(t,o):Promise.reject(new Error("No mutationFn found")),onFail:(i,a)=>{St(this,Hn,Zi).call(this,{type:"failed",failureCount:i,error:a});},onPause:()=>{St(this,Hn,Zi).call(this,{type:"pause"});},onContinue:r,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>g(this,go).canRun(this)}));let n=this.state.status==="pending",s=!g(this,Ws).canStart();try{if(n)r();else {St(this,Hn,Zi).call(this,{type:"pending",variables:t,isPaused:s}),g(this,go).config.onMutate&&await g(this,go).config.onMutate(t,this,o);let a=await this.options.onMutate?.(t,o);a!==this.state.context&&St(this,Hn,Zi).call(this,{type:"pending",context:a,variables:t,isPaused:s});}let i=await g(this,Ws).start();return await g(this,go).config.onSuccess?.(i,t,this.state.context,this,o),await this.options.onSuccess?.(i,t,this.state.context,o),await g(this,go).config.onSettled?.(i,null,this.state.variables,this.state.context,this,o),await this.options.onSettled?.(i,null,t,this.state.context,o),St(this,Hn,Zi).call(this,{type:"success",data:i}),i}catch(i){try{await g(this,go).config.onError?.(i,t,this.state.context,this,o);}catch(a){Promise.reject(a);}try{await this.options.onError?.(i,t,this.state.context,o);}catch(a){Promise.reject(a);}try{await g(this,go).config.onSettled?.(void 0,i,this.state.variables,this.state.context,this,o);}catch(a){Promise.reject(a);}try{await this.options.onSettled?.(void 0,i,t,this.state.context,o);}catch(a){Promise.reject(a);}throw St(this,Hn,Zi).call(this,{type:"error",error:i}),i}finally{g(this,go).runNext(this);}}},Jl=new WeakMap,Nn=new WeakMap,go=new WeakMap,Ws=new WeakMap,Hn=new WeakSet,Zi=function(t){let r=o=>{switch(t.type){case "failed":return {...o,failureCount:t.failureCount,failureReason:t.error};case "pause":return {...o,isPaused:true};case "continue":return {...o,isPaused:false};case "pending":return {...o,context:t.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:t.isPaused,status:"pending",variables:t.variables,submittedAt:Date.now()};case "success":return {...o,data:t.data,failureCount:0,failureReason:null,error:null,status:"success",isPaused:false};case "error":return {...o,data:void 0,error:t.error,failureCount:o.failureCount+1,failureReason:t.error,isPaused:false,status:"error"}}};this.state=r(this.state),qr.batch(()=>{g(this,Nn).forEach(o=>{o.onMutationUpdate(t);}),g(this,go).notify({mutation:this,type:"updated",action:t});});},Wh);function Pw(){return {context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:false,status:"idle",variables:void 0,submittedAt:0}}var ui,wn,Zl,Mh,zh=(Mh=class extends Gi{constructor(t={}){super();oe(this,ui);oe(this,wn);oe(this,Zl);this.config=t,j(this,ui,new Set),j(this,wn,new Map),j(this,Zl,0);}build(t,r,o){let n=new Eh({client:t,mutationCache:this,mutationId:++Cl(this,Zl)._,options:t.defaultMutationOptions(r),state:o});return this.add(n),n}add(t){g(this,ui).add(t);let r=Rd(t);if(typeof r=="string"){let o=g(this,wn).get(r);o?o.push(t):g(this,wn).set(r,[t]);}this.notify({type:"added",mutation:t});}remove(t){if(g(this,ui).delete(t)){let r=Rd(t);if(typeof r=="string"){let o=g(this,wn).get(r);if(o)if(o.length>1){let n=o.indexOf(t);n!==-1&&o.splice(n,1);}else o[0]===t&&g(this,wn).delete(r);}}this.notify({type:"removed",mutation:t});}canRun(t){let r=Rd(t);if(typeof r=="string"){let n=g(this,wn).get(r)?.find(s=>s.state.status==="pending");return !n||n===t}else return true}runNext(t){let r=Rd(t);return typeof r=="string"?g(this,wn).get(r)?.find(n=>n!==t&&n.state.isPaused)?.continue()??Promise.resolve():Promise.resolve()}clear(){qr.batch(()=>{g(this,ui).forEach(t=>{this.notify({type:"removed",mutation:t});}),g(this,ui).clear(),g(this,wn).clear();});}getAll(){return Array.from(g(this,ui))}find(t){let r={exact:true,...t};return this.getAll().find(o=>Lp(r,o))}findAll(t={}){return this.getAll().filter(r=>Lp(t,r))}notify(t){qr.batch(()=>{this.listeners.forEach(r=>{r(t);});});}resumePausedMutations(){let t=this.getAll().filter(r=>r.state.isPaused);return qr.batch(()=>Promise.all(t.map(r=>r.continue().catch(Vo))))}},ui=new WeakMap,wn=new WeakMap,Zl=new WeakMap,Mh);function Rd(e){return e.options.scope?.id}var jn,Uh,Nh=(Uh=class extends Gi{constructor(t={}){super();oe(this,jn);this.config=t,j(this,jn,new Map);}build(t,r,o){let n=r.queryKey,s=r.queryHash??Gl(n,r),i=this.get(s);return i||(i=new Bh({client:t,queryKey:n,queryHash:s,options:t.defaultQueryOptions(r),state:o,defaultOptions:t.getQueryDefaults(n)}),this.add(i)),i}add(t){g(this,jn).has(t.queryHash)||(g(this,jn).set(t.queryHash,t),this.notify({type:"added",query:t}));}remove(t){let r=g(this,jn).get(t.queryHash);r&&(t.destroy(),r===t&&g(this,jn).delete(t.queryHash),this.notify({type:"removed",query:t}));}clear(){qr.batch(()=>{this.getAll().forEach(t=>{this.remove(t);});});}get(t){return g(this,jn).get(t)}getAll(){return [...g(this,jn).values()]}find(t){let r={exact:true,...t};return this.getAll().find(o=>Op(r,o))}findAll(t={}){let r=this.getAll();return Object.keys(t).length>0?r.filter(o=>Op(t,o)):r}notify(t){qr.batch(()=>{this.listeners.forEach(r=>{r(t);});});}onFocus(){qr.batch(()=>{this.getAll().forEach(t=>{t.onFocus();});});}onOnline(){qr.batch(()=>{this.getAll().forEach(t=>{t.onOnline();});});}},jn=new WeakMap,Uh);var Or,Xi,es,Wa,Ea,ts,Ma,za,Hh,Ap=(Hh=class{constructor(e={}){oe(this,Or);oe(this,Xi);oe(this,es);oe(this,Wa);oe(this,Ea);oe(this,ts);oe(this,Ma);oe(this,za);j(this,Or,e.queryCache||new Nh),j(this,Xi,e.mutationCache||new zh),j(this,es,e.defaultOptions||{}),j(this,Wa,new Map),j(this,Ea,new Map),j(this,ts,0);}mount(){Cl(this,ts)._++,g(this,ts)===1&&(j(this,Ma,wd.subscribe(async e=>{e&&(await this.resumePausedMutations(),g(this,Or).onFocus());})),j(this,za,La.subscribe(async e=>{e&&(await this.resumePausedMutations(),g(this,Or).onOnline());})));}unmount(){var e,t;Cl(this,ts)._--,g(this,ts)===0&&((e=g(this,Ma))==null||e.call(this),j(this,Ma,void 0),(t=g(this,za))==null||t.call(this),j(this,za,void 0));}isFetching(e){return g(this,Or).findAll({...e,fetchStatus:"fetching"}).length}isMutating(e){return g(this,Xi).findAll({...e,status:"pending"}).length}getQueryData(e){let t=this.defaultQueryOptions({queryKey:e});return g(this,Or).get(t.queryHash)?.state.data}ensureQueryData(e){let t=this.defaultQueryOptions(e),r=g(this,Or).build(this,t),o=r.state.data;return o===void 0?this.fetchQuery(e):(e.revalidateIfStale&&r.isStaleByTime(Kl(t.staleTime,r))&&this.prefetchQuery(t),Promise.resolve(o))}getQueriesData(e){return g(this,Or).findAll(e).map(({queryKey:t,state:r})=>{let o=r.data;return [t,o]})}setQueryData(e,t,r){let o=this.defaultQueryOptions({queryKey:e}),s=g(this,Or).get(o.queryHash)?.state.data,i=bh(t,s);if(i!==void 0)return g(this,Or).build(this,o).setData(i,{...r,manual:true})}setQueriesData(e,t,r){return qr.batch(()=>g(this,Or).findAll(e).map(({queryKey:o})=>[o,this.setQueryData(o,t,r)]))}getQueryState(e){let t=this.defaultQueryOptions({queryKey:e});return g(this,Or).get(t.queryHash)?.state}removeQueries(e){let t=g(this,Or);qr.batch(()=>{t.findAll(e).forEach(r=>{t.remove(r);});});}resetQueries(e,t){let r=g(this,Or);return qr.batch(()=>(r.findAll(e).forEach(o=>{o.reset();}),this.refetchQueries({type:"active",...e},t)))}cancelQueries(e,t={}){let r={revert:true,...t},o=qr.batch(()=>g(this,Or).findAll(e).map(n=>n.cancel(r)));return Promise.all(o).then(Vo).catch(Vo)}invalidateQueries(e,t={}){return qr.batch(()=>(g(this,Or).findAll(e).forEach(r=>{r.invalidate();}),e?.refetchType==="none"?Promise.resolve():this.refetchQueries({...e,type:e?.refetchType??e?.type??"active"},t)))}refetchQueries(e,t={}){let r={...t,cancelRefetch:t.cancelRefetch??true},o=qr.batch(()=>g(this,Or).findAll(e).filter(n=>!n.isDisabled()&&!n.isStatic()).map(n=>{let s=n.fetch(void 0,r);return r.throwOnError||(s=s.catch(Vo)),n.state.fetchStatus==="paused"?Promise.resolve():s}));return Promise.all(o).then(Vo)}fetchQuery(e){let t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=false);let r=g(this,Or).build(this,t);return r.isStaleByTime(Kl(t.staleTime,r))?r.fetch(t):Promise.resolve(r.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(Vo).catch(Vo)}fetchInfiniteQuery(e){return e._type="infinite",this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(Vo).catch(Vo)}ensureInfiniteQueryData(e){return e._type="infinite",this.ensureQueryData(e)}resumePausedMutations(){return La.isOnline()?g(this,Xi).resumePausedMutations():Promise.resolve()}getQueryCache(){return g(this,Or)}getMutationCache(){return g(this,Xi)}getDefaultOptions(){return g(this,es)}setDefaultOptions(e){j(this,es,e);}setQueryDefaults(e,t){g(this,Wa).set(Pa(e),{queryKey:e,defaultOptions:t});}getQueryDefaults(e){let t=[...g(this,Wa).values()],r={};return t.forEach(o=>{Da(e,o.queryKey)&&Object.assign(r,o.defaultOptions);}),r}setMutationDefaults(e,t){g(this,Ea).set(Pa(e),{mutationKey:e,defaultOptions:t});}getMutationDefaults(e){let t=[...g(this,Ea).values()],r={};return t.forEach(o=>{Da(e,o.mutationKey)&&Object.assign(r,o.defaultOptions);}),r}defaultQueryOptions(e){if(e._defaulted)return e;let t={...g(this,es).queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:true};return t.queryHash||(t.queryHash=Gl(t.queryKey,t)),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!=="always"),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode="offlineFirst"),t.queryFn===Fa&&(t.enabled=false),t}defaultMutationOptions(e){return e?._defaulted?e:{...g(this,es).mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:true}}clear(){g(this,Or).clear(),g(this,Xi).clear();}},Or=new WeakMap,Xi=new WeakMap,es=new WeakMap,Wa=new WeakMap,Ea=new WeakMap,ts=new WeakMap,Ma=new WeakMap,za=new WeakMap,Hh);var jh=ws__namespace.createContext(void 0);var Wp=({client:e,children:t})=>(ws__namespace.useEffect(()=>(e.mount(),()=>{e.unmount();}),[e]),jsxRuntime.jsx(jh.Provider,{value:e,children:t}));var Na=new Map;function $h({width:e,height:t,borderRadius:r,color:o}){let n=ws.useRef(new reactNative.Animated.Value(.3)).current;return ws.useEffect(()=>{let s=reactNative.Animated.loop(reactNative.Animated.sequence([reactNative.Animated.timing(n,{toValue:.7,duration:800,useNativeDriver:true}),reactNative.Animated.timing(n,{toValue:.3,duration:800,useNativeDriver:true})]));return s.start(),()=>s.stop()},[n]),jsxRuntime.jsx(reactNative.Animated.View,{style:{position:"absolute",width:e,height:t,borderRadius:r,backgroundColor:o,opacity:n}})}function ko({uri:e,width:t,height:r,borderRadius:o=0,borderWidth:n=0,borderColor:s="transparent",backgroundColor:i="transparent",style:a}){let{colors:l}=A(),[c,p]=ws.useState(false),[h,T]=ws.useState(false),[d,f]=ws.useState(()=>{if(!e||!e.toLowerCase().endsWith(".svg"))return null;let _=Na.get(e);return _?{uri:e,xml:_}:null}),C=e?.toLowerCase().endsWith(".svg"),v=C&&e&&d?.uri===e?d.xml:null;ws.useEffect(()=>{p(false),T(false);},[e]),ws.useEffect(()=>{if(!C||!e)return;if(Na.has(e)){f({uri:e,xml:Na.get(e)});return}let _=false;return fetch(e).then(m=>{if(!m.ok)throw new Error(`HTTP ${m.status}`);return m.text()}).then(m=>{_||(Na.set(e,m),f({uri:e,xml:m}));}).catch(()=>{_||p(true);}),()=>{_=true;}},[e,C]);let x=l.card;if(!e)return jsxRuntime.jsx(reactNative.View,{style:[{width:t,height:r,borderRadius:o,backgroundColor:x},a]});let k={width:t,height:r,borderRadius:o,borderWidth:n,borderColor:s,backgroundColor:i,overflow:"hidden",alignItems:"center",justifyContent:"center",...a},R=t-n*2,w=r-n*2;return c?jsxRuntime.jsx(reactNative.View,{style:[k,{backgroundColor:i||x}]}):C?jsxRuntime.jsxs(reactNative.View,{style:k,children:[!!!v&&jsxRuntime.jsx($h,{width:R,height:w,borderRadius:o,color:x}),v?jsxRuntime.jsx(ir.SvgXml,{xml:v,width:R,height:w,onError:()=>p(true)}):jsxRuntime.jsx(ir.SvgUri,{uri:e,width:R,height:w,onError:()=>p(true)})]}):jsxRuntime.jsxs(reactNative.View,{style:k,children:[!h&&jsxRuntime.jsx($h,{width:R,height:w,borderRadius:o,color:x}),jsxRuntime.jsx(reactNative.Image,{source:{uri:e,cache:"force-cache"},style:{width:R,height:w},resizeMode:"contain",onLoad:()=>T(true),onError:()=>p(true)})]})}function ec(e){let t=[];for(let r of e)if(r)if(r.toLowerCase().endsWith(".svg")){if(Na.has(r))continue;t.push(fetch(r).then(o=>{if(!o.ok)throw new Error(`HTTP ${o.status}`);return o.text()}).then(o=>{Na.set(r,o);}).catch(()=>{}));}else t.push(reactNative.Image.prefetch(r).then(()=>{}).catch(()=>{}));return Promise.all(t).then(()=>{})}function Kr({title:e,subtitle:t,showBack:r=false,showClose:o=true,onBack:n,onClose:s,badge:i,showBalance:a=false,balanceAddress:l,balanceChainType:c,balanceChainId:p,balanceTokenAddress:h,publishableKey:T,projectName:d,leftIcon:f,onLeftAction:C}){let{colors:v,fonts:x,components:k}=A(),[R,w]=ws.useState(null),[_,m]=ws.useState(false),u=ws.useState(()=>new reactNative.Animated.Value(0))[0];ws.useEffect(()=>{if(!_)return;let y=reactNative.Animated.loop(reactNative.Animated.sequence([reactNative.Animated.timing(u,{toValue:1,duration:700,useNativeDriver:true}),reactNative.Animated.timing(u,{toValue:0,duration:700,useNativeDriver:true})]));return y.start(),()=>y.stop()},[_,u]),ws.useEffect(()=>{if(!a||!l||!c||!p||!h||!T){w(null),m(false);return}let y=false;return m(true),Qc(l,c,p,h,T).then(F=>{if(y)return;let L=F.balance,V=null;L&&(L.amount_usd!=null&&L.amount_usd!==""?V=`$${L.amount_usd}`:V="$0.00"),w(V);}).catch(()=>{y||w(null);}).finally(()=>{y||m(false);}),()=>{y=true;}},[a,l,c,p,h,T]);let S=u.interpolate({inputRange:[0,1],outputRange:[.4,1]});return jsxRuntime.jsxs(reactNative.View,{style:yo.header,children:[jsxRuntime.jsx(reactNative.View,{style:yo.leftContainer,children:r&&n?jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:n,style:[yo.iconButton,{backgroundColor:"transparent"}],hitSlop:{top:10,bottom:10,left:10,right:10},children:jsxRuntime.jsx(Sl,{size:20,color:k.header.buttonColor,strokeWidth:2})}):f&&C?jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:C,style:[yo.iconButton,{backgroundColor:"transparent"}],hitSlop:{top:10,bottom:10,left:10,right:10},children:f}):jsxRuntime.jsx(reactNative.View,{style:yo.spacer})}),jsxRuntime.jsxs(reactNative.View,{style:yo.titleContainer,children:[jsxRuntime.jsxs(reactNative.View,{style:yo.titleRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[yo.title,{color:k.header.titleColor,fontFamily:x.medium}],children:e}),i&&i.count>0&&jsxRuntime.jsx(reactNative.View,{style:[yo.titleBadge,{backgroundColor:v.card}],children:jsxRuntime.jsx(reactNative.Text,{style:[yo.titleBadgeText,{color:v.foregroundMuted,fontFamily:x.regular}],children:i.count})})]}),t?jsxRuntime.jsx(reactNative.Text,{style:[yo.balanceText,{color:v.foregroundMuted,fontFamily:x.regular}],children:t}):null,a&&(_?jsxRuntime.jsx(reactNative.Animated.View,{style:[yo.balanceSkeleton,{backgroundColor:v.cardHover,opacity:S}]}):R!=null?jsxRuntime.jsxs(reactNative.Text,{style:[yo.balanceText,{color:v.foregroundMuted,fontFamily:x.regular}],children:[d?`${d} `:"","Balance: ",R]}):null)]}),jsxRuntime.jsx(reactNative.View,{style:yo.rightContainer,children:o?jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:s,style:[yo.iconButton,{backgroundColor:"transparent"}],hitSlop:{top:10,bottom:10,left:10,right:10},children:jsxRuntime.jsx(Rt,{size:20,color:k.header.buttonColor,strokeWidth:2})}):jsxRuntime.jsx(reactNative.View,{style:yo.spacer})})]})}var yo=reactNative.StyleSheet.create({header:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingTop:16,paddingBottom:8},leftContainer:{width:40,alignItems:"flex-start"},rightContainer:{width:40,alignItems:"flex-end"},titleContainer:{flex:1,alignItems:"center"},titleRow:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:8},title:{fontSize:16,textAlign:"center"},titleBadge:{paddingHorizontal:8,paddingVertical:2,borderRadius:12},titleBadgeText:{fontSize:10,fontWeight:"400"},balanceSkeleton:{height:15,width:120,borderRadius:5,marginTop:5},balanceText:{fontSize:14,marginTop:3,textAlign:"center"},iconButton:{width:28,height:28,borderRadius:8,alignItems:"center",justifyContent:"center"},spacer:{width:28,height:28}});function Lr({children:e,style:t,contentStyle:r,onPress:o,activeOpacity:n=.7,cardTokens:s}){let{components:i}=A(),a=s??i.card,l=a.backShadowColor!=="transparent",c={backgroundColor:a.backgroundColor,borderRadius:a.borderRadius,borderWidth:a.borderWidth,borderColor:a.borderColor},p=[Gh.wrapper,t,l&&{marginBottom:a.backShadowSpacing}],h=[c,r];return jsxRuntime.jsxs(reactNative.View,{style:p,children:[l&&jsxRuntime.jsx(reactNative.View,{style:[Gh.backShadow,{top:a.backShadowOffset.top,left:a.backShadowOffset.left,right:a.backShadowOffset.right,bottom:a.backShadowOffset.bottom,backgroundColor:a.backShadowColor,borderRadius:a.borderRadius}]}),o!=null?jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:o,activeOpacity:n,style:h,children:e}):jsxRuntime.jsx(reactNative.View,{style:h,children:e})]})}var Gh=reactNative.StyleSheet.create({wrapper:{position:"relative"},backShadow:{position:"absolute"}});function tc({onPress:e,title:t,subtitle:r,featuredTokens:o}){let{fonts:n,components:s}=A(),i=s.depositMenu.card,a=o?[...o].sort((l,c)=>l.position-c.position):[];return jsxRuntime.jsxs(Lr,{cardTokens:i,onPress:e,style:$n.wrapper,contentStyle:$n.container,children:[jsxRuntime.jsxs(reactNative.View,{style:$n.leftContent,children:[jsxRuntime.jsx(reactNative.View,{style:[$n.iconContainer,{borderRadius:i.iconContainerBorderRadius}],children:jsxRuntime.jsx(Eu,{size:20,color:i.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.View,{style:$n.textContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[$n.title,{color:i.titleColor,fontFamily:n.regular}],children:t}),jsxRuntime.jsx(reactNative.Text,{style:[$n.subtitle,{color:i.subtitleColor,fontFamily:n.regular}],children:r})]})]}),jsxRuntime.jsx(reactNative.View,{style:$n.rightContent,children:jsxRuntime.jsx(reactNative.View,{style:$n.networkIcons,children:a.map((l,c)=>{let p=l.icon_urls.find(h=>h.format==="png")?.url||l.icon_urls.find(h=>h.format==="svg")?.url;return jsxRuntime.jsx(reactNative.View,{style:[$n.networkIconWrapper,{marginLeft:c===0?0:-6,zIndex:a.length-c}],children:jsxRuntime.jsx(ko,{uri:ie(p),width:20,height:20})},l.name)})})})]})}var $n=reactNative.StyleSheet.create({wrapper:{marginHorizontal:16},container:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:16,paddingHorizontal:12},leftContent:{flexDirection:"row",alignItems:"center",gap:12,flex:1},iconContainer:{width:36,height:36,alignItems:"center",justifyContent:"center"},textContainer:{flex:1},title:{fontSize:14,fontWeight:"400",marginBottom:2},subtitle:{fontSize:12,fontWeight:"300"},rightContent:{flexDirection:"row",alignItems:"center",gap:8},networkIcons:{flexDirection:"row",alignItems:"center"},networkIconWrapper:{}});function oc({onPress:e,title:t,subtitle:r,paymentNetworks:o}){let{fonts:n,components:s}=A(),i=s.depositMenu.card;return jsxRuntime.jsxs(Lr,{cardTokens:i,onPress:e,style:pi.wrapper,contentStyle:pi.container,children:[jsxRuntime.jsxs(reactNative.View,{style:pi.leftContent,children:[jsxRuntime.jsx(reactNative.View,{style:[pi.iconContainer,{borderRadius:i.iconContainerBorderRadius}],children:jsxRuntime.jsx(sa,{size:20,color:i.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.View,{style:pi.textContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[pi.title,{color:i.titleColor,fontFamily:n.regular}],children:t}),jsxRuntime.jsx(reactNative.Text,{style:[pi.subtitle,{color:i.subtitleColor,fontFamily:n.regular}],children:r})]})]}),jsxRuntime.jsx(reactNative.View,{style:pi.rightContent,children:jsxRuntime.jsx(reactNative.View,{style:pi.paymentIcons,children:o?.map(a=>{let l=a.icon_urls.find(c=>c.format==="png")?.url||a.icon_urls.find(c=>c.format==="svg")?.url;return jsxRuntime.jsx(ko,{uri:ie(l),width:32,height:20,borderRadius:4},a.name)})})})]})}var pi=reactNative.StyleSheet.create({wrapper:{marginHorizontal:16},container:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:16,paddingHorizontal:12},leftContent:{flexDirection:"row",alignItems:"center",gap:12,flex:1},iconContainer:{width:36,height:36,alignItems:"center",justifyContent:"center"},textContainer:{flex:1},title:{fontSize:14,fontWeight:"400",marginBottom:2},subtitle:{fontSize:12,fontWeight:"300"},rightContent:{flexDirection:"row",alignItems:"center",gap:8},paymentIcons:{flexDirection:"row",alignItems:"center",gap:6}});function nc({onPress:e,title:t,subtitle:r,badge:o}){let{fonts:n,components:s}=A(),i=s.depositMenu.card;return jsxRuntime.jsx(Lr,{cardTokens:i,onPress:e,style:fi.wrapper,contentStyle:fi.container,children:jsxRuntime.jsxs(reactNative.View,{style:fi.leftContent,children:[jsxRuntime.jsxs(reactNative.View,{style:[fi.iconContainer,{borderRadius:i.iconContainerBorderRadius}],children:[jsxRuntime.jsx(ho,{size:20,color:i.iconColor,strokeWidth:2}),o!==void 0&&o>0&&jsxRuntime.jsx(reactNative.View,{style:[fi.badge,{backgroundColor:i.iconColor,borderRadius:s.badge.borderRadius}],children:jsxRuntime.jsx(reactNative.Text,{style:[fi.badgeText,{fontFamily:n.semibold}],children:o>99?"99+":o})})]}),jsxRuntime.jsxs(reactNative.View,{style:fi.textContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[fi.title,{color:i.titleColor,fontFamily:n.regular}],children:t}),jsxRuntime.jsx(reactNative.Text,{style:[fi.subtitle,{color:i.subtitleColor,fontFamily:n.regular}],children:r})]})]})})}var fi=reactNative.StyleSheet.create({wrapper:{marginHorizontal:16},container:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:16,paddingHorizontal:12},leftContent:{flexDirection:"row",alignItems:"center",gap:12,flex:1},iconContainer:{width:36,height:36,alignItems:"center",justifyContent:"center",position:"relative"},badge:{position:"absolute",top:-4,right:-4,minWidth:18,height:18,alignItems:"center",justifyContent:"center",paddingHorizontal:4},badgeText:{color:"#FFFFFF",fontSize:10,fontWeight:"600"},textContainer:{flex:1},title:{fontSize:14,fontWeight:"400",marginBottom:2},subtitle:{fontSize:12,fontWeight:"300"}});function sc({onPress:e,title:t,subtitle:r}){let{fonts:o,components:n}=A(),s=n.depositMenu.card;return jsxRuntime.jsx(Lr,{cardTokens:s,onPress:e,style:Ms.wrapper,contentStyle:Ms.container,children:jsxRuntime.jsxs(reactNative.View,{style:Ms.leftContent,children:[jsxRuntime.jsx(reactNative.View,{style:[Ms.iconContainer,{borderRadius:s.iconContainerBorderRadius}],children:jsxRuntime.jsx(om,{size:36})}),jsxRuntime.jsxs(reactNative.View,{style:Ms.textContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ms.title,{color:s.titleColor,fontFamily:o.regular}],children:t}),jsxRuntime.jsx(reactNative.Text,{style:[Ms.subtitle,{color:s.subtitleColor,fontFamily:o.regular}],children:r})]})]})})}var Ms=reactNative.StyleSheet.create({wrapper:{marginHorizontal:16},container:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:16,paddingHorizontal:12},leftContent:{flexDirection:"row",alignItems:"center",gap:12,flex:1},iconContainer:{width:36,height:36,alignItems:"center",justifyContent:"center",overflow:"hidden"},textContainer:{flex:1},title:{fontSize:14,fontWeight:"400",marginBottom:2},subtitle:{fontSize:12,fontWeight:"300"}});var $w="#00D632";function ac({onPress:e,title:t="Pay with Cash App",subtitle:r="USD Only \u2022 Instant"}){let{fonts:o,components:n}=A(),s=n.depositMenu.card,[i,a]=ws.useState(false),l=er("/icons/onramps/png/cashapp.png");return jsxRuntime.jsx(Lr,{cardTokens:s,onPress:e,style:qn.wrapper,contentStyle:qn.container,children:jsxRuntime.jsxs(reactNative.View,{style:qn.leftContent,children:[jsxRuntime.jsx(reactNative.View,{style:[qn.iconContainer,{borderRadius:s.iconContainerBorderRadius}],children:i?jsxRuntime.jsx(reactNative.View,{style:[qn.cashAppIconFallback,{borderRadius:s.iconContainerBorderRadius}],children:jsxRuntime.jsx(reactNative.Text,{style:qn.cashAppIconFallbackText,children:"$"})}):jsxRuntime.jsx(reactNative.Image,{source:{uri:l,cache:"force-cache"},style:[qn.cashAppIcon,{borderRadius:s.iconContainerBorderRadius}],resizeMode:"cover",onError:()=>a(true)})}),jsxRuntime.jsxs(reactNative.View,{style:qn.textContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[qn.title,{color:s.titleColor,fontFamily:o.regular}],children:t}),jsxRuntime.jsx(reactNative.Text,{style:[qn.subtitle,{color:s.subtitleColor,fontFamily:o.regular}],children:r})]})]})})}var qn=reactNative.StyleSheet.create({wrapper:{marginHorizontal:16},container:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:16,paddingHorizontal:12},leftContent:{flexDirection:"row",alignItems:"center",gap:12,flex:1},iconContainer:{width:36,height:36,alignItems:"center",justifyContent:"center",overflow:"hidden"},cashAppIcon:{width:36,height:36},cashAppIconFallback:{width:36,height:36,backgroundColor:$w,alignItems:"center",justifyContent:"center"},cashAppIconFallbackText:{color:"#fff",fontSize:18,fontWeight:"bold"},textContainer:{flex:1},title:{fontSize:14,fontWeight:"400",marginBottom:2},subtitle:{fontSize:12,fontWeight:"300"}});function lc({onPress:e,title:t="Connect Wallet",subtitle:r="Pay from your wallet app",featuredWallets:o}){let{fonts:n,components:s}=A(),i=s.depositMenu.card;return jsxRuntime.jsxs(Lr,{cardTokens:i,onPress:e,style:Qn.wrapper,contentStyle:Qn.container,children:[jsxRuntime.jsxs(reactNative.View,{style:Qn.leftContent,children:[jsxRuntime.jsx(reactNative.View,{style:[Qn.iconContainer,{backgroundColor:i.iconBackgroundColor,borderRadius:i.iconContainerBorderRadius}],children:jsxRuntime.jsx(tm,{size:20,color:i.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.View,{style:Qn.textContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[Qn.title,{color:i.titleColor,fontFamily:n.regular}],children:t}),jsxRuntime.jsx(reactNative.Text,{style:[Qn.subtitle,{color:i.subtitleColor,fontFamily:n.regular}],children:r})]})]}),o&&o.length>0&&jsxRuntime.jsx(reactNative.View,{style:Qn.rightContent,children:jsxRuntime.jsx(reactNative.View,{style:Qn.walletIcons,children:o.slice(0,4).map((a,l)=>{let c=a.icon_urls.find(p=>p.format==="png")?.url||a.icon_urls.find(p=>p.format==="svg")?.url;return jsxRuntime.jsx(reactNative.View,{style:[Qn.walletIconWrapper,{marginLeft:l===0?0:-6,zIndex:o.length-l}],children:jsxRuntime.jsx(ko,{uri:ie(c),width:20,height:20})},`${a.id??"wallet"}-${l}`)})})})]})}var Qn=reactNative.StyleSheet.create({wrapper:{marginHorizontal:16},container:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:16,paddingHorizontal:12},leftContent:{flexDirection:"row",alignItems:"center",gap:12,flex:1},iconContainer:{width:36,height:36,alignItems:"center",justifyContent:"center"},textContainer:{flex:1},title:{fontSize:14,fontWeight:"400",marginBottom:2},subtitle:{fontSize:12,fontWeight:"300"},rightContent:{flexDirection:"row",alignItems:"center",gap:8},walletIcons:{flexDirection:"row",alignItems:"center"},walletIconWrapper:{borderRadius:10,overflow:"hidden"}});var Us="#00D632",sg=5,Yw=[25,50,100,500],Qa=120,Jw=5e3,Zw=2e3,Xw=300;function cc(e){return e===Math.round(e)?String(Math.round(e)):e.toFixed(2)}function ag(e){let t=parseFloat(e);return isNaN(t)?e:t===Math.round(t)?String(Math.round(t)):t.toFixed(2)}function eS(e,t){let r=parseFloat(e)/Math.pow(10,t);if(r===0)return "0.00";if(r>=1)return r.toFixed(2);let o=r.toPrecision(6);return parseFloat(o).toString()}function lg(e,t){let r={1:"Ethereum",137:"Polygon",42161:"Arbitrum",10:"Optimism",8453:"Base",56:"BSC",mainnet:"Solana"};return e==="n1"?"N1":e==="cardano"?"Cardano":r[t]??`${e.charAt(0).toUpperCase()+e.slice(1)} (${t})`}function tS(e){if(!e)return "";let t=e.indexOf(".");return t!==-1?e.slice(0,t).toUpperCase()+e.slice(t):e.toUpperCase()}function cg(e){return e.length<=12?e:`${e.slice(0,6)}...${e.slice(-4)}`}function rS(e){if(!e)return "";try{return new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0})}catch{return ""}}function oS(e){let t=Math.floor(e/60),r=e%60;return `${t}:${r.toString().padStart(2,"0")}`}function Vd({size:e,faded:t=false,withBackground:r=false}){let[o,n]=ws.useState(false),s=er("/icons/onramps/png/cashapp.png"),i=e*.2,l=jsxRuntime.jsx(reactNative.View,{style:{opacity:t?.4:1},children:o?jsxRuntime.jsx(reactNative.View,{style:{width:e,height:e,borderRadius:i,backgroundColor:Us,alignItems:"center",justifyContent:"center"},children:jsxRuntime.jsx(reactNative.Text,{style:{color:"white",fontSize:e*.5,fontWeight:"bold"},children:"$"})}):jsxRuntime.jsx(reactNative.Image,{source:{uri:s,cache:"force-cache"},style:{width:e,height:e,borderRadius:i},resizeMode:"contain",onError:()=>n(true)})});return r?jsxRuntime.jsx(reactNative.View,{style:{width:e+24,height:e+24,borderRadius:(e+24)/2,backgroundColor:`${Us}33`,alignItems:"center",justifyContent:"center"},children:l}):l}function Od({externalUserId:e,publishableKey:t,recipientAddress:r="",destinationChainType:o="ethereum",destinationChainId:n="8453",destinationTokenAddress:s="0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",onBack:i,onClose:a,onDepositSuccess:l}){let{colors:c,fonts:p,components:h}=A();ws.useEffect(()=>{reactNative.Platform.OS==="android"&&reactNative.UIManager.setLayoutAnimationEnabledExperimental&&reactNative.UIManager.setLayoutAnimationEnabledExperimental(true);},[]);let[T,d]=ws.useState("amountInput"),[f,C]=ws.useState("25"),[v,x]=ws.useState(null),[k,R]=ws.useState(null),[w,_]=ws.useState(true),[m,u]=ws.useState(null),[S,y]=ws.useState(false),[F,L]=ws.useState(null),[V,D]=ws.useState(Qa),[O,N]=ws.useState(null),[M,Ve]=ws.useState(false),[se,Le]=ws.useState("pending"),J=ws.useRef(null),pe=ws.useRef(null),ee=ws.useRef(null),U=ws.useRef("pending"),de=ws.useRef(null),Z=ws.useRef("amountInput"),he=ws.useRef(Qa),it=ws.useRef(null),Oe=ws.useRef(null),te=ws.useRef(false),je=ws.useRef(true),Xe=k?.minimum_amount??sg,qe=k?.maximum_amount,ft=parseFloat(f)||0,He=!isNaN(ft)&&ft>=Xe&&(qe==null||ft<=qe),Ae=qe?`$${cc(Xe)} \u2013 $${cc(qe)}`:`$${cc(Xe)} minimum`,We=T==="amountInput"?"Pay with Cash App":`Pay $${ag(f)} via Cash App`,_e=T==="waitingForPayment";ws.useEffect(()=>(je.current=true,_(true),Yu("usd",t).then(b=>{je.current&&R(b);}).catch(()=>{}).finally(()=>{je.current&&_(false);}),()=>{je.current=false,Ge();}),[t]);function be(b,B=k){if(L(null),!b){x(null);return}let H=parseFloat(b);if(isNaN(H)){x("Enter a valid number");return}let $=B?.minimum_amount??sg,q=B?.maximum_amount;H<$?x(`$${cc($)} minimum`):q!=null&&H>q?x(`$${cc(q)} maximum`):x(null);}function Ge(){J.current&&clearInterval(J.current),pe.current&&clearInterval(pe.current),ee.current&&clearInterval(ee.current),J.current=null,pe.current=null,ee.current=null;}function Ye(){Ge(),u(null),de.current=null,N(null),Ve(false),L(null),U.current="pending",Le("pending"),D(Qa),he.current=Qa,it.current=null,te.current=false,d("amountInput"),Z.current="amountInput";}async function at(){if(!(!He||S)){y(true),L(null),Ge(),it.current=null;try{let b=await Gu({external_user_id:e,destination_chain_type:o,destination_chain_id:n,destination_token_address:s,recipient_address:r,source_amount:f},t);de.current=b,U.current=b.status,u(b),y(!1),d("waitingForPayment"),Z.current="waitingForPayment",Tr(),$e(),reactNative.Linking.openURL(b.url).catch(()=>{});}catch(b){y(false),L(b instanceof Error?b.message:"Failed to create session");}}}function Tr(){he.current=Qa,D(Qa),ee.current&&clearInterval(ee.current),ee.current=setInterval(()=>{he.current-=1,D(he.current),he.current<=0&&(clearInterval(ee.current),ee.current=null,U.current==="pending"&&(d("softExpired"),Z.current="softExpired"));},1e3);}function $e(){J.current&&clearInterval(J.current),J.current=setInterval(()=>{Ie();},Jw);}async function Ie(){if(!je.current)return;let b=de.current;if(!b)return;let B=b.external_id??b.id;try{let H=await Ju(B,t),$=U.current;switch(U.current=H.status,Le(H.status),H.status){case "processing":(Z.current==="amountInput"||Z.current==="softExpired"||Z.current==="waitingForPayment")&&(d("paymentReceived"),Z.current="paymentReceived",ee.current&&(clearInterval(ee.current),ee.current=null));break;case "completed":J.current&&(clearInterval(J.current),J.current=null),ee.current&&(clearInterval(ee.current),ee.current=null),$!=="completed"&&(d("paymentReceived"),Z.current="paymentReceived",lt());break;case "failed":J.current&&(clearInterval(J.current),J.current=null),ee.current&&(clearInterval(ee.current),ee.current=null),Z.current!=="amountInput"&&(d("failed"),Z.current="failed");break;case "expired":J.current&&(clearInterval(J.current),J.current=null),ee.current&&(clearInterval(ee.current),ee.current=null),Z.current!=="amountInput"&&(d("softExpired"),Z.current="softExpired");break;default:break}}catch{}}let et=6e5;function lt(){pe.current&&clearInterval(pe.current);let b=Date.now()+et;pe.current=setInterval(()=>{if(Date.now()>b){clearInterval(pe.current),pe.current=null;let B=U.current;B==="completed"||B==="processing"?(d("paymentReceived"),Z.current="paymentReceived"):(d("failed"),Z.current="failed");return}xe();},Zw);}async function xe(){if(je.current)try{let b=await mn(e,t,"deposit"),B=Date.now(),H=[...b.data].sort((ue,Qe)=>{let W=ue.created_at?new Date(ue.created_at).getTime():0;return (Qe.created_at?new Date(Qe.created_at).getTime():0)-W}),$=it.current,q=$?H.find(ue=>ue.id===$):H.find(ue=>{if(!ue.created_at)return !1;let Qe=new Date(ue.created_at).getTime();return B-Qe<Xw*1e3});q&&(it.current||(it.current=q.id),q.status==="succeeded"?(pe.current&&(clearInterval(pe.current),pe.current=null),N(q),d("depositComplete"),Z.current="depositComplete",l?.({message:"Deposit completed successfully",executionId:q.id,transaction:q})):(q.status==="failed"||q.status==="refunded")&&(pe.current&&(clearInterval(pe.current),pe.current=null),N(q),d("failed"),Z.current="failed"));}catch{}}function ve(){if(T==="waitingForPayment"){ee.current&&(clearInterval(ee.current),ee.current=null),d("amountInput"),Z.current="amountInput";return}i();}function Ee(){Ge(),a();}function ge(){let b=de.current??m;b&&reactNative.Linking.openURL(b.url).catch(()=>{});}function ct(b){let B=b.destination_amount_base_unit;if(!B)return "\u2014";let H=b.destination_token_metadata?.decimals??6;return eS(B,H)}function Ft(b){return tS(b.destination_currency)}function mt(b){let B=b.destination_token_metadata;return B?B.icon_urls&&B.icon_urls.length>0?In(B.icon_urls,"png")??B.icon_url??null:B.icon_url??null:null}function or(){return jsxRuntime.jsxs(reactNative.View,{style:G.poweredByRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[G.poweredByText,{color:c.foregroundMuted,fontFamily:p.regular}],children:"Powered by"}),jsxRuntime.jsxs(reactNative.Text,{style:[G.poweredByBold,{color:c.foreground,fontFamily:p.bold}],children:[" ","U"]}),jsxRuntime.jsx(reactNative.Text,{style:[G.poweredByBold,{color:c.foreground,fontFamily:p.semibold}],children:"nifold"})]})}function Me(b,B){return jsxRuntime.jsxs(reactNative.View,{style:G.detailRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[G.detailLabel,{color:c.foregroundMuted,fontFamily:p.regular}],children:b}),jsxRuntime.jsx(reactNative.Text,{style:[G.detailValue,{color:c.foreground,fontFamily:p.medium}],children:B})]},b)}function wt(b,B,H){return jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[G.txRow,{backgroundColor:c.card,borderColor:c.cardHover}],onPress:()=>reactNative.Linking.openURL(H).catch(()=>{}),activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[G.txLabel,{color:c.foreground,fontFamily:p.medium}],children:b}),jsxRuntime.jsxs(reactNative.View,{style:G.txRight,children:[jsxRuntime.jsx(reactNative.Text,{style:[G.txHash,{color:c.foregroundMuted}],children:B}),jsxRuntime.jsx(reactNative.Text,{style:[G.txArrow,{color:c.foregroundMuted}],children:"\u2197"})]})]},b)}function ot(){let b=Math.max(60-f.length*2.5,32);return jsxRuntime.jsxs(reactNative.View,{style:G.flex,children:[jsxRuntime.jsxs(reactNative.ScrollView,{style:G.flex,contentContainerStyle:G.amountScrollContent,keyboardShouldPersistTaps:"handled",showsVerticalScrollIndicator:false,onLayout:()=>{te.current||(te.current=true,setTimeout(()=>Oe.current?.focus(),300));},children:[jsxRuntime.jsx(reactNative.View,{style:{height:32}}),jsxRuntime.jsxs(reactNative.View,{style:G.amountSection,children:[jsxRuntime.jsxs(reactNative.View,{style:G.amountRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[G.amountDollar,{color:c.foreground,fontSize:b}],children:"$"}),jsxRuntime.jsx(reactNative.TextInput,{ref:Oe,value:f,onChangeText:B=>{C(B),be(B);},keyboardType:"decimal-pad",style:[G.amountInput,{color:c.foreground,fontSize:b}],placeholderTextColor:c.foregroundMuted,placeholder:"0"})]}),v?jsxRuntime.jsx(reactNative.Text,{style:[G.amountError,{color:c.warning,fontFamily:p.regular}],children:v}):w?jsxRuntime.jsx(reactNative.View,{style:[G.limitsSkeleton,{backgroundColor:c.cardHover}]}):jsxRuntime.jsx(reactNative.Text,{style:[G.limitsSubtitle,{color:c.foregroundMuted,fontFamily:p.regular}],children:Ae})]}),jsxRuntime.jsx(reactNative.View,{style:G.quickAmountsRow,children:Yw.map(B=>jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[G.quickAmountButton,{backgroundColor:c.card}],onPress:()=>{let H=String(B);C(H),be(H);},activeOpacity:.7,children:jsxRuntime.jsxs(reactNative.Text,{style:[G.quickAmountText,{color:c.foreground,fontFamily:p.medium}],children:["$",B]})},B))}),F&&jsxRuntime.jsxs(reactNative.View,{style:[G.errorBanner,{backgroundColor:c.cardHover}],children:[jsxRuntime.jsx(reactNative.Text,{style:G.errorBannerIcon,children:"\u26A0\uFE0F"}),jsxRuntime.jsx(reactNative.Text,{style:[G.errorBannerText,{color:c.foreground,fontFamily:p.regular}],children:F})]})]}),jsxRuntime.jsx(reactNative.View,{style:G.bottomButtonContainer,children:jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[G.continueButton,{backgroundColor:Us,borderRadius:h.button.borderRadius,opacity:!He||S?.4:1}],onPress:at,disabled:!He||S,activeOpacity:.8,children:[S&&jsxRuntime.jsx(reactNative.ActivityIndicator,{color:"#fff",size:"small",style:G.buttonSpinner}),jsxRuntime.jsx(reactNative.Text,{style:[G.continueButtonText,{color:"#fff",fontFamily:p.medium}],children:S?"Loading...":"Continue"})]})})]})}function Ce(){return jsxRuntime.jsxs(reactNative.View,{style:G.centeredFull,children:[jsxRuntime.jsxs(reactNative.View,{style:G.centeredContent,children:[jsxRuntime.jsx(Vd,{size:56}),jsxRuntime.jsx(reactNative.Text,{style:[G.stateTitle,{color:c.foreground,fontFamily:p.semibold}],children:"Waiting for payment"}),jsxRuntime.jsx(reactNative.Text,{style:[G.stateDescription,{color:c.foregroundMuted,fontFamily:p.regular}],children:`Complete the payment in Cash App.
3
+ This page will update automatically.`}),V>0&&jsxRuntime.jsxs(reactNative.Text,{style:[G.expiryText,{color:V<=30?c.warning:c.foregroundMuted,fontFamily:p.medium}],children:["Expires in ",oS(V)]})]}),jsxRuntime.jsx(reactNative.View,{style:G.bottomButtonContainer,children:jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[G.continueButton,{backgroundColor:Us,borderRadius:h.button.borderRadius}],onPress:ge,activeOpacity:.8,children:[jsxRuntime.jsx(reactNative.View,{style:G.cashAppButtonIcon,children:jsxRuntime.jsx(Vd,{size:20})}),jsxRuntime.jsx(reactNative.Text,{style:[G.continueButtonText,{color:"#fff",fontFamily:p.semibold}],children:"Open Cash App"})]})})]})}function ze(){let b=se==="processing",B=b?"Payment processing":"Payment received",H=b?"Your Cash App payment is being confirmed...":"Converting to your destination token...";return jsxRuntime.jsx(reactNative.View,{style:G.centeredFull,children:jsxRuntime.jsxs(reactNative.View,{style:G.centeredContent,children:[jsxRuntime.jsx(kt,{size:84,strokeWidth:4,iconSize:48,children:jsxRuntime.jsx(Vd,{size:48})}),jsxRuntime.jsx(reactNative.Text,{style:[G.stateTitle,{color:c.foreground,fontFamily:p.semibold}],children:B}),jsxRuntime.jsx(reactNative.Text,{style:[G.stateDescription,{color:c.foregroundMuted,fontFamily:p.regular}],children:H})]})})}function K(){if(!O)return ze();let b=O,B=["pending","waiting","delayed"].includes(b.status),H=mt(b),$=rS(b.created_at);return jsxRuntime.jsxs(reactNative.View,{style:G.flex,children:[jsxRuntime.jsxs(reactNative.ScrollView,{style:G.flex,contentContainerStyle:G.scrollContent,showsVerticalScrollIndicator:false,children:[jsxRuntime.jsxs(reactNative.View,{style:G.tokenIconWrapper,children:[jsxRuntime.jsx(reactNative.View,{children:H?jsxRuntime.jsx(reactNative.Image,{source:{uri:H,cache:"force-cache"},style:G.tokenIcon,resizeMode:"contain"}):jsxRuntime.jsx(reactNative.View,{style:[G.tokenIconFallback,{backgroundColor:c.cardHover}],children:jsxRuntime.jsx(reactNative.Text,{style:[G.tokenIconFallbackText,{color:c.foreground}],children:"$"})})}),jsxRuntime.jsx(reactNative.View,{style:[G.statusBadge,{backgroundColor:B?c.warning:c.success}],children:jsxRuntime.jsx(reactNative.Text,{style:G.statusBadgeText,children:B?"\u21BB":"\u2713"})})]}),jsxRuntime.jsxs(reactNative.View,{style:G.statusRow,children:[jsxRuntime.jsx(reactNative.View,{style:[G.statusDot,{backgroundColor:B?c.warning:c.success}]}),jsxRuntime.jsx(reactNative.Text,{style:[G.statusText,{color:c.foreground,fontFamily:p.semibold}],children:B?"In Progress":"Completed"})]}),$?jsxRuntime.jsx(reactNative.Text,{style:[G.dateText,{color:c.foregroundMuted,fontFamily:p.regular}],children:$}):null,jsxRuntime.jsxs(reactNative.View,{style:[G.detailCard,{backgroundColor:c.card,borderColor:c.cardHover}],children:[Me("Amount Sent",`$${ag(f)} USD`),Me("Amount Received",`${ct(b)} ${Ft(b)}`),b.source_amount_usd?Me("USD Value",`$${parseFloat(b.source_amount_usd).toFixed(2)}`):null,b.source_chain_id?Me("Source Network",lg(b.source_chain_type??"",b.source_chain_id)):null,b.destination_chain_id?Me("Destination Network",lg(b.destination_chain_type??"",b.destination_chain_id)):null]}),jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:G.seeMoreRow,onPress:()=>{reactNative.LayoutAnimation.configureNext(reactNative.LayoutAnimation.Presets.easeInEaseOut),Ve(q=>!q);},activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[G.seeMoreText,{color:c.foreground,fontFamily:p.medium}],children:M?"See less":"See more details"}),jsxRuntime.jsx(reactNative.Text,{style:[G.seeMoreChevron,{color:c.foregroundMuted}],children:M?"\u25B2":"\u25BC"})]}),M&&jsxRuntime.jsxs(reactNative.View,{style:G.txHashSection,children:[b.explorer_url?wt("Deposit Tx",cg(b.transaction_hash),b.explorer_url):null,!B&&b.destination_explorer_url&&b.destination_transaction_hashes?.[0]?wt("Completion Tx",cg(b.destination_transaction_hashes[0]),b.destination_explorer_url):null]})]}),jsxRuntime.jsx(reactNative.View,{style:G.bottomButtonContainer,children:jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[G.continueButton,{backgroundColor:Us,borderRadius:h.button.borderRadius}],onPress:Ee,activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[G.continueButtonText,{color:"#fff",fontFamily:p.medium}],children:"Done"})})})]})}function Re(){return jsxRuntime.jsxs(reactNative.View,{style:G.centeredFull,children:[jsxRuntime.jsxs(reactNative.View,{style:G.centeredContent,children:[jsxRuntime.jsx(Vd,{size:56,faded:true}),jsxRuntime.jsx(reactNative.Text,{style:[G.stateTitle,{color:c.foreground,fontFamily:p.semibold}],children:"Session expired"}),jsxRuntime.jsxs(reactNative.Text,{style:[G.stateDescription,{color:c.foregroundMuted,fontFamily:p.regular}],children:["Your session has expired.",`
4
+ `,"Start a new session to continue."]})]}),jsxRuntime.jsx(reactNative.View,{style:G.bottomButtonContainer,children:jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[G.continueButton,{backgroundColor:Us,borderRadius:h.button.borderRadius}],onPress:Ye,activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[G.continueButtonText,{color:"#fff",fontFamily:p.semibold}],children:"New Cash App session"})})})]})}function I(){return jsxRuntime.jsxs(reactNative.View,{style:G.centeredFull,children:[jsxRuntime.jsxs(reactNative.View,{style:G.centeredContent,children:[jsxRuntime.jsx(reactNative.View,{style:[G.failedIconCircle,{backgroundColor:c.errorBackground}],children:jsxRuntime.jsx(reactNative.Text,{style:[G.failedIconText,{color:c.error}],children:"\u2715"})}),jsxRuntime.jsx(reactNative.Text,{style:[G.stateTitle,{color:c.foreground,fontFamily:p.semibold}],children:"Payment failed"}),jsxRuntime.jsx(reactNative.Text,{style:[G.stateDescription,{color:c.foregroundMuted,fontFamily:p.regular}],children:"Something went wrong. Please try again."})]}),jsxRuntime.jsxs(reactNative.View,{style:G.bottomButtonContainer,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[G.continueButton,{backgroundColor:Us,borderRadius:h.button.borderRadius}],onPress:Ye,activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[G.continueButtonText,{color:"#fff",fontFamily:p.semibold}],children:"Try Again"})}),or()]})]})}return jsxRuntime.jsxs(reactNative.View,{style:[G.root,{backgroundColor:c.background}],children:[jsxRuntime.jsx(Kr,{title:We,showBack:_e,onBack:ve,onClose:Ee}),T==="amountInput"&&ot(),T==="waitingForPayment"&&Ce(),T==="paymentReceived"&&ze(),T==="depositComplete"&&K(),T==="softExpired"&&Re(),T==="failed"&&I()]})}var G=reactNative.StyleSheet.create({root:{flex:1},flex:{flex:1},scrollContent:{paddingHorizontal:20,paddingBottom:16,alignItems:"center"},amountScrollContent:{paddingHorizontal:16,paddingBottom:16},amountSection:{alignItems:"center",marginBottom:16,paddingVertical:16,width:"100%"},amountRow:{flexDirection:"row",alignItems:"center",justifyContent:"center",height:70},amountDollar:{fontWeight:"400"},amountInput:{fontWeight:"400",minWidth:40,textAlign:"center"},amountError:{fontSize:14,marginTop:4},limitsSkeleton:{height:16,width:100,borderRadius:4,marginTop:6},limitsSubtitle:{fontSize:14,marginTop:4},quickAmountsRow:{flexDirection:"row",gap:12,width:"100%",marginBottom:16},quickAmountButton:{flex:1,alignItems:"center",paddingVertical:10,borderRadius:8},quickAmountText:{fontSize:14},errorBanner:{flexDirection:"row",alignItems:"center",gap:8,padding:12,borderRadius:8,width:"100%"},errorBannerIcon:{fontSize:16},errorBannerText:{fontSize:13,flex:1},bottomButtonContainer:{paddingHorizontal:16,paddingBottom:16,gap:8},continueButton:{flexDirection:"row",alignItems:"center",justifyContent:"center",paddingVertical:16,gap:8},continueButtonText:{fontSize:16},buttonSpinner:{marginRight:4},cashAppButtonIcon:{borderRadius:4,overflow:"hidden"},centeredFull:{flex:1,justifyContent:"space-between"},centeredContent:{flex:1,alignItems:"center",justifyContent:"center",paddingHorizontal:32,gap:16},stateTitle:{fontSize:20,textAlign:"center"},stateDescription:{fontSize:14,textAlign:"center",lineHeight:20},expiryText:{fontSize:13},failedIconCircle:{width:80,height:80,borderRadius:40,alignItems:"center",justifyContent:"center"},failedIconText:{fontSize:32,fontWeight:"bold"},tokenIconWrapper:{position:"relative",marginTop:8,marginBottom:8,alignSelf:"center"},tokenIcon:{width:72,height:72,borderRadius:36},tokenIconFallback:{width:72,height:72,borderRadius:36,alignItems:"center",justifyContent:"center"},tokenIconFallbackText:{fontSize:36},statusBadge:{position:"absolute",right:-4,bottom:-4,width:24,height:24,borderRadius:12,alignItems:"center",justifyContent:"center"},statusBadgeText:{color:"#fff",fontSize:12,fontWeight:"bold"},statusRow:{flexDirection:"row",alignItems:"center",gap:6,marginBottom:4},statusDot:{width:8,height:8,borderRadius:4},statusText:{fontSize:16},dateText:{fontSize:13,marginBottom:16},detailCard:{width:"100%",borderRadius:12,borderWidth:1,padding:16,gap:32,marginBottom:8},detailRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between"},detailLabel:{fontSize:14},detailValue:{fontSize:14},seeMoreRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",width:"100%",paddingVertical:8},seeMoreText:{fontSize:14},seeMoreChevron:{fontSize:12},txHashSection:{width:"100%",gap:8},txRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingVertical:14,borderRadius:12,borderWidth:1},txLabel:{fontSize:14},txRight:{flexDirection:"row",alignItems:"center",gap:6},txHash:{fontSize:13,fontFamily:reactNative.Platform.OS==="ios"?"Menlo":"monospace"},txArrow:{fontSize:14},poweredByRow:{flexDirection:"row",alignItems:"center",justifyContent:"center",paddingTop:4},poweredByText:{fontSize:12},poweredByBold:{fontSize:12}});var fg=5e3,mg=2500,hg=5e3,gg=6e4;function Tn(e){let{depositConfirmationMode:t,enabled:r=true,depositAddress:o,chain:n,externalUserId:s,publishableKey:i,modalOpenedAt:a,depositWalletId:l,depositExecutions:c,trackedExecutions:p,setDepositExecutions:h,setTrackedExecutions:T,setLatestExecution:d,setShowStatusSheet:f,onDepositSuccess:C,onExecutionsChange:v,onDepositError:x}=e,[k,R]=ws.useState(false),[w,_]=ws.useState(false);return ws.useEffect(()=>{if(!r||t!=="auto_ui"&&t!=="auto_silent"||!o)return;R(false),t==="auto_ui"&&_(false);let u=setTimeout(()=>{R(true),t==="auto_ui"&&_(true);},fg);return ()=>clearTimeout(u)},[r,t,o,n]),ws.useEffect(()=>{if(!r||!s||!a)return;let u=new Date(a.getTime()-gg),S=setInterval(async()=>{try{let L=[...(await mn(s,i,"deposit")).data??[]].sort((D,O)=>{let N=D.created_at?new Date(D.created_at).getTime():0;return (O.created_at?new Date(O.created_at).getTime():0)-N}),V=null;for(let D of L){let O=D.created_at?new Date(D.created_at):null;if(!O||O<=u)continue;let N=p.get(D.id);if(!N){V=D;break}if(["pending","waiting","delayed"].includes(N)&&D.status==="succeeded"){V=D;break}}if(V){let D=V;h(O=>{let N=O.findIndex(M=>M.id===D.id);if(N>=0){let M=[...O];return M[N]=D,M}return [...O,D]}),T(O=>{let N=new Map(O);return N.set(D.id,D.status),N}),d(D),f(!0),D.status==="succeeded"&&C?.({message:"Deposit completed successfully",executionId:D.id}),v?.([...c,D]);}}catch(y){x?.({message:"Failed to check deposit status",error:y});}},mg);return ()=>clearInterval(S)},[r,s,i,a,p,c,v,C,x]),ws.useEffect(()=>{if(!r||!k||!l)return;let u=async()=>{try{await Hc(l,i);}catch{}};u();let S=setInterval(u,hg);return ()=>clearInterval(S)},[r,k,l,i]),{pollingEnabled:k,showWaitingUi:w,handleIveDeposited:()=>{R(true),_(true);}}}function bg({depositConfirmationMode:e,depositAddress:t,showWaitingUi:r,latestExecution:o,onIveDeposited:n}){return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(uc,{showWaitingUi:r,latestExecution:o}),jsxRuntime.jsx(Xp,{depositConfirmationMode:e,depositAddress:t,showWaitingUi:r,onIveDeposited:n})]})}function uc({showWaitingUi:e,latestExecution:t}){let{colors:r,fonts:o}=A(),n=ws.useRef(new reactNative.Animated.Value(0)).current;ws.useEffect(()=>{if(e&&!t){n.setValue(0);let i=reactNative.Animated.loop(reactNative.Animated.timing(n,{toValue:1,duration:1500,easing:reactNative.Easing.linear,useNativeDriver:true}));return i.start(),()=>i.stop()}},[e,t,n]);let s=n.interpolate({inputRange:[0,1],outputRange:["0deg","360deg"]});return jsxRuntime.jsx(reactNative.View,{style:Bd.processingCard,children:e&&!t?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(reactNative.Animated.View,{style:{transform:[{rotate:s}]},children:jsxRuntime.jsx(Tl,{size:16,color:r.primary,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:[Bd.processingCardTitle,{color:r.foregroundMuted,fontFamily:o.regular}],children:"Checking for deposit"})]}):null})}function Xp({depositConfirmationMode:e,depositAddress:t,showWaitingUi:r,onIveDeposited:o}){let{colors:n,fonts:s,components:i}=A();return e!=="manual"||!t||r?null:jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:o,activeOpacity:.8,style:[Bd.iveDepositedButton,{backgroundColor:n.primary,borderRadius:i.button.borderRadius,borderWidth:i.button.borderWidth,borderColor:i.button.borderColor}],children:jsxRuntime.jsx(reactNative.Text,{style:[Bd.iveDepositedButtonText,{color:n.primaryForeground??"#FFF",fontFamily:s.semibold}],children:"I've made the deposit"})})}var Bd=reactNative.StyleSheet.create({iveDepositedButton:{paddingVertical:14,alignItems:"center",justifyContent:"center",marginBottom:12},iveDepositedButtonText:{fontSize:16},processingCard:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:8,marginBottom:24},processingCardTitle:{fontSize:14}});function Wd(e){let t=e.icon_urls.find(o=>o.format==="png")?.url,r=e.icon_urls.find(o=>o.format==="svg")?.url;return ie(t||r||e.icon_url)}function dS(e){if(!e.supports_mobile_browse)return false;if(!e.mobile_browse_platforms)return true;let t=reactNative.Platform.OS==="ios"?"ios":"android";return e.mobile_browse_platforms.includes(t)}var Ed=18,Md=12,uS=2;function pS({uri:e,chainTypes:t,size:r=40}){let o=t.includes("ethereum"),n=t.includes("solana"),s=o&&n;return jsxRuntime.jsxs(reactNative.View,{style:{width:r+6,height:r+4},children:[jsxRuntime.jsx(ko,{uri:e,width:r,height:r,borderRadius:10}),s?jsxRuntime.jsxs(reactNative.View,{style:hi.cluster,children:[jsxRuntime.jsx(reactNative.View,{style:[hi.badge,hi.backBadge],children:jsxRuntime.jsx(ha,{size:Md})}),jsxRuntime.jsx(reactNative.View,{style:[hi.badge,hi.frontBadge],children:jsxRuntime.jsx(pa,{size:Md})})]}):o?jsxRuntime.jsx(reactNative.View,{style:[hi.badge,hi.singleBadge],children:jsxRuntime.jsx(pa,{size:Md})}):n?jsxRuntime.jsx(reactNative.View,{style:[hi.badge,hi.singleBadge],children:jsxRuntime.jsx(ha,{size:Md})}):null]})}var hi=reactNative.StyleSheet.create({badge:{width:Ed,height:Ed,borderRadius:Ed/2,borderWidth:uS,borderColor:"#fff",alignItems:"center",justifyContent:"center",overflow:"hidden"},cluster:{position:"absolute",bottom:-2,right:-4,flexDirection:"row"},backBadge:{marginRight:-6.3,zIndex:0},frontBadge:{zIndex:1},singleBadge:{position:"absolute",bottom:-2,right:-4}});function zd({externalUserId:e,publishableKey:t,recipientAddress:r,destinationChainType:o,destinationChainId:n,destinationTokenAddress:s,onBack:i,onClose:a,onDepositSuccess:l,onDepositError:c,onExecutionsChange:p,onLatestExecution:h,onShowStatusSheet:T}){let{colors:d,fonts:f,components:C}=A(),v=ws.useRef(true);ws.useEffect(()=>{reactNative.Platform.OS==="android"&&reactNative.UIManager.setLayoutAnimationEnabledExperimental&&reactNative.UIManager.setLayoutAnimationEnabledExperimental(true);},[]);let x=ws.useRef(false),[k,R]=ws.useState("selectWallet"),[w,_]=ws.useState([]),[m,u]=ws.useState(true),[S,y]=ws.useState(null),[F,L]=ws.useState(null),[V,D]=ws.useState(null),[O,N]=ws.useState(null),[M,Ve]=ws.useState(null),[se,Le]=ws.useState([]),[J,pe]=ws.useState(false),[ee,U]=ws.useState(null),[de,Z]=ws.useState([]),[he,it]=ws.useState(new Map),[Oe]=ws.useState(()=>new Date),[te,je]=ws.useState(null),[Xe,qe]=ws.useState(false),[ft,He]=ws.useState(null),[Ae,We]=ws.useState(false);ws.useEffect(()=>{if(k==="depositProcessing"||k==="depositComplete")return;if(k!=="waitingForDeposit"){We(false);return}reactNative.AppState.currentState==="active"&&We(true);let W=reactNative.AppState.addEventListener("change",E=>{E==="active"&&We(true);});return ()=>W.remove()},[k]);let _e=k==="waitingForDeposit"&&Ae||k==="depositProcessing",be=O||V||F?.chain_types[0]||o||"ethereum",Ge=Ro(se,be),Ye=Ge?.address||"",at=Ge?.id??"",Tr=`${be}:${n||""}`;ws.useEffect(()=>(v.current=true,()=>{v.current=false;}),[]),ws.useEffect(()=>{lt();},[t]),ws.useEffect(()=>{te&&h?.(te);},[te]),ws.useEffect(()=>{p?.(de);},[de]);let[$e,Ie]=ws.useState(false);ws.useEffect(()=>{!Xe||!te||(qe(false),te.status==="succeeded"?(R("depositComplete"),l?.({message:"Deposit completed successfully",executionId:te.id,transaction:te})):te.status==="failed"||te.status==="refunded"?(R("failed"),c?.({message:`Deposit ${te.status}`,code:te.status})):R("depositProcessing"));},[Xe,te]),ws.useEffect(()=>{k!=="depositProcessing"||!te||(te.status==="succeeded"?(R("depositComplete"),l?.({message:"Deposit completed successfully",executionId:te.id,transaction:te})):(te.status==="failed"||te.status==="refunded")&&(R("failed"),c?.({message:`Deposit ${te.status}`,code:te.status})));},[te?.status]);let{showWaitingUi:et}=Tn({depositConfirmationMode:"auto_ui",enabled:_e,depositAddress:Ye,chain:Tr,externalUserId:e,publishableKey:t,modalOpenedAt:ft??Oe,depositWalletId:at,depositExecutions:de,trackedExecutions:he,setDepositExecutions:Z,setTrackedExecutions:it,setLatestExecution:je,setShowStatusSheet:qe,onExecutionsChange:p,onDepositError:c});async function lt(){u(true),y(null);try{let W=await Zu(t);if(!v.current)return;let E=W.data.filter(dS),nr=E.map(Wd).filter(Boolean);if(nr.length>0&&await ec(nr),!v.current)return;_(E);}catch(W){if(!v.current)return;y(W instanceof Error?W.message:"Failed to load wallets");}finally{v.current&&u(false);}}function xe(W){L(W),N(null),U(null),W.chain_types.length>1?(D(null),R("selectNetwork")):Ee(W);}function ve(W){D(W),F&&Ee(F,W);}async function Ee(W,E){if(x.current)return;x.current=true,pe(true),R("connecting");let nr=E||W.chain_types[0]||null;try{let Fe=await Mo({external_user_id:e,destination_chain_type:o||"ethereum",destination_chain_id:n,destination_token_address:s,recipient_address:r},t);if(!v.current)return;Le(Fe.data);let we=Fe.data.map(Ht=>({chain_type:Ht.chain_type,address:Ht.address})),ht=nr?we.filter(Ht=>Ht.chain_type===nr):we,tt=ht.length>0,re=tt?ht:we,Lt=tt?nr:re[0]?.chain_type??nr;N(Lt??null);let rt=await Xu(W.id,re,t);if(!v.current)return;if(Ve(rt),pe(!1),!rt.supported||!rt.deeplink&&!rt.pay_url){U(`${W.name} doesn't support in-app browser on this device`),R("failed");return}let Bt=rt.deeplink||rt.pay_url;try{await reactNative.Linking.openURL(Bt);}catch{if(!v.current)return;U(`Could not open ${W.name}. Make sure it is installed.`),R("failed");return}if(!v.current)return;He(new Date),R("waitingForDeposit");}catch(Fe){if(!v.current)return;pe(false),U(Fe instanceof Error?Fe.message:"Failed to connect wallet"),R("failed");}}function ge(){if(!M)return;let W=M.deeplink||M.pay_url;reactNative.Linking.openURL(W).catch(()=>{});}function ct(){x.current=false,L(null),D(null),N(null),Ve(null),Le([]),He(null),U(null),pe(false),R("selectWallet");}function Ft(){return m?jsxRuntime.jsx(reactNative.View,{style:yt.centeredContainer,children:jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"large",color:d.primary})}):S?jsxRuntime.jsxs(reactNative.View,{style:yt.centeredContainer,children:[jsxRuntime.jsx(Ai,{size:48,color:d.error,strokeWidth:1.5}),jsxRuntime.jsx(reactNative.Text,{style:[yt.errorTitle,{color:d.foreground,fontFamily:f.semibold}],children:"Failed to load wallets"}),jsxRuntime.jsx(reactNative.Text,{style:[yt.errorSubtitle,{color:d.foregroundMuted,fontFamily:f.regular}],children:S}),jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:lt,style:[yt.retryButton,{backgroundColor:d.primary}],activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[yt.retryButtonText,{color:d.primaryForeground??"#FFF",fontFamily:f.semibold}],children:"Retry"})})]}):w.length===0?jsxRuntime.jsxs(reactNative.View,{style:yt.centeredContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[yt.errorTitle,{color:d.foreground,fontFamily:f.semibold}],children:"No wallets available"}),jsxRuntime.jsx(reactNative.Text,{style:[yt.errorSubtitle,{color:d.foregroundMuted,fontFamily:f.regular}],children:"No supported wallets found for this device."})]}):jsxRuntime.jsxs(reactNative.ScrollView,{style:yt.walletList,contentContainerStyle:yt.walletListContent,showsVerticalScrollIndicator:false,children:[jsxRuntime.jsx(reactNative.Text,{style:[yt.pickerSubtitle,{color:d.foregroundMuted,fontFamily:f.regular}],children:"Select a wallet to deposit from"}),w.map(W=>jsxRuntime.jsxs(reactNative.TouchableOpacity,{onPress:()=>xe(W),activeOpacity:.7,disabled:J,style:[yt.walletRow,{backgroundColor:C.card.backgroundColor,borderRadius:C.card.borderRadius,borderWidth:C.card.borderWidth,borderColor:C.card.borderColor,opacity:J?.5:1}],children:[jsxRuntime.jsx(pS,{uri:Wd(W),chainTypes:W.chain_types}),jsxRuntime.jsxs(reactNative.View,{style:yt.walletTextContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[yt.walletName,{color:d.foreground,fontFamily:f.medium}],children:W.name}),jsxRuntime.jsx(reactNative.Text,{style:[yt.walletChains,{color:d.foregroundMuted,fontFamily:f.regular}],children:W.chain_types.map(E=>E.charAt(0).toUpperCase()+E.slice(1)).join(" \u2022 ")})]}),jsxRuntime.jsx(Wr,{size:16,color:d.foregroundMuted,strokeWidth:2})]},W.id))]})}function mt(){if(!F)return null;let W=Wd(F),E=Fe=>Fe==="n1"?"N1":Fe==="xrpl"?"XRPL":Fe.charAt(0).toUpperCase()+Fe.slice(1),nr=F.chain_types.map(Fe=>({id:Fe,name:E(Fe),Icon:Fe==="ethereum"?pa:ha}));return jsxRuntime.jsxs(reactNative.View,{style:yt.networkPickerContainer,children:[jsxRuntime.jsxs(reactNative.View,{style:yt.networkPickerHeader,children:[jsxRuntime.jsx(ko,{uri:W,width:48,height:48,borderRadius:12}),jsxRuntime.jsx(reactNative.Text,{style:[yt.statusTitle,{color:d.foreground,fontFamily:f.semibold,marginTop:12}],children:"Select Network"}),jsxRuntime.jsxs(reactNative.Text,{style:[yt.statusSubtitle,{color:d.foregroundMuted,fontFamily:f.regular}],children:["Choose which network to deposit from with ",F.name]})]}),jsxRuntime.jsx(reactNative.View,{style:yt.networkList,children:nr.map(({id:Fe,name:we,Icon:ht})=>jsxRuntime.jsxs(reactNative.TouchableOpacity,{onPress:()=>ve(Fe),activeOpacity:.7,disabled:J,style:[yt.networkRow,{backgroundColor:C.card.backgroundColor,borderRadius:C.card.borderRadius,borderWidth:C.card.borderWidth,borderColor:C.card.borderColor,opacity:J?.5:1}],children:[jsxRuntime.jsx(reactNative.View,{style:yt.networkIconContainer,children:jsxRuntime.jsx(ht,{size:32})}),jsxRuntime.jsx(reactNative.Text,{style:[yt.networkName,{color:d.foreground,fontFamily:f.medium}],children:we}),jsxRuntime.jsx(Wr,{size:16,color:d.foregroundMuted,strokeWidth:2})]},Fe))})]})}function or(){return jsxRuntime.jsxs(reactNative.View,{style:yt.centeredContainer,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"large",color:d.primary}),jsxRuntime.jsxs(reactNative.Text,{style:[yt.statusTitle,{color:d.foreground,fontFamily:f.semibold}],children:["Opening ",F?.name??"wallet","\u2026"]}),jsxRuntime.jsx(reactNative.Text,{style:[yt.statusSubtitle,{color:d.foregroundMuted,fontFamily:f.regular}],children:"Preparing your deposit session"})]})}function Me(){let W=F?.name??"your wallet",E=F?Wd(F):null;return jsxRuntime.jsxs(reactNative.View,{style:yt.centeredContainer,children:[E?jsxRuntime.jsx(kt,{size:80,children:jsxRuntime.jsx(ko,{uri:E,width:40,height:40,borderRadius:10})}):jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"large",color:d.primary}),jsxRuntime.jsxs(reactNative.Text,{style:[yt.statusTitle,{color:d.foreground,fontFamily:f.semibold}],children:["Continue in ",W]}),jsxRuntime.jsx(reactNative.Text,{style:[yt.statusSubtitle,{color:d.foregroundMuted,fontFamily:f.regular}],children:"Complete the deposit in your wallet app. Return here when you're done."}),jsxRuntime.jsxs(reactNative.TouchableOpacity,{onPress:ge,activeOpacity:.8,style:[yt.primaryButton,{backgroundColor:d.primary,borderRadius:C.button.borderRadius,borderWidth:C.button.borderWidth,borderColor:C.button.borderColor}],children:[jsxRuntime.jsx(Jo,{size:16,color:d.primaryForeground??"#FFF",strokeWidth:2}),jsxRuntime.jsxs(reactNative.Text,{style:[yt.primaryButtonText,{color:d.primaryForeground??"#FFF",fontFamily:f.semibold}],children:["Open ",W]})]}),jsxRuntime.jsx(reactNative.View,{style:{marginTop:24,minHeight:44},children:jsxRuntime.jsx(uc,{showWaitingUi:et,latestExecution:te})})]})}function wt(W,E){let nr=parseFloat(W)/Math.pow(10,E);return nr===0?"0.00":nr>=1?nr.toFixed(2):parseFloat(nr.toPrecision(6)).toString()}function ot(W,E){let nr={1:"Ethereum",137:"Polygon",42161:"Arbitrum",10:"Optimism",8453:"Base",56:"BSC",mainnet:"Solana"};return W==="n1"?"N1":W==="cardano"?"Cardano":nr[E]??`${W.charAt(0).toUpperCase()+W.slice(1)} (${E})`}function Ce(W){if(!W)return "";let E=W.indexOf(".");return E!==-1?W.slice(0,E).toUpperCase()+W.slice(E):W.toUpperCase()}function ze(W){return W.length<=12?W:`${W.slice(0,6)}...${W.slice(-4)}`}function K(W){if(!W)return "";try{return new Date(W).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",hour12:!0})}catch{return ""}}function Re(W){let E=W.destination_amount_base_unit;return E?wt(E,W.destination_token_metadata?.decimals??6):"\u2014"}function I(W){let E=W.destination_token_metadata;return E?E.icon_urls?.length?In(E.icon_urls,"png")??E.icon_url??null:E.icon_url??null:null}function b(){if(!te)return null;let W=I(te);return jsxRuntime.jsx(reactNative.View,{style:Ze.centeredFull,children:jsxRuntime.jsxs(reactNative.View,{style:Ze.centeredContent,children:[jsxRuntime.jsx(kt,{size:84,strokeWidth:4,iconSize:48,children:W?jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(W)},style:Ze.loaderIcon,resizeMode:"contain"}):jsxRuntime.jsx(reactNative.View,{style:[Ze.loaderIcon,{backgroundColor:d.cardHover}]})}),jsxRuntime.jsx(reactNative.Text,{style:[Ze.stateTitle,{color:d.foreground,fontFamily:f.semibold}],children:"Deposit Processing"}),jsxRuntime.jsx(reactNative.Text,{style:[Ze.stateDescription,{color:d.foregroundMuted,fontFamily:f.regular}],children:"This usually takes less than a minute."})]})})}function B(){if(!te)return b();let W=te,E=["pending","waiting","delayed"].includes(W.status),nr=I(W),Fe=K(W.created_at);return jsxRuntime.jsxs(reactNative.View,{style:Ze.flex,children:[jsxRuntime.jsxs(reactNative.ScrollView,{style:Ze.flex,contentContainerStyle:Ze.scrollContent,showsVerticalScrollIndicator:false,children:[jsxRuntime.jsxs(reactNative.View,{style:Ze.tokenIconWrapper,children:[nr?jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(nr)},style:Ze.tokenIcon,resizeMode:"contain"}):jsxRuntime.jsx(reactNative.View,{style:[Ze.tokenIcon,{backgroundColor:d.cardHover}]}),jsxRuntime.jsx(reactNative.View,{style:[Ze.statusBadge,{backgroundColor:E?d.warning:C.container.iconBackgroundColor}],children:E?jsxRuntime.jsx(reactNative.Text,{style:Ze.statusBadgeText,children:"\u21BB"}):jsxRuntime.jsx(dt,{size:14,color:C.container.iconColor,strokeWidth:3})})]}),jsxRuntime.jsxs(reactNative.View,{style:Ze.statusRow,children:[jsxRuntime.jsx(reactNative.View,{style:[Ze.statusDot,{backgroundColor:E?d.warning:d.success}]}),jsxRuntime.jsx(reactNative.Text,{style:[Ze.statusText,{color:d.foreground,fontFamily:f.semibold}],children:E?"In Progress":"Completed"})]}),Fe?jsxRuntime.jsx(reactNative.Text,{style:[Ze.dateText,{color:d.foregroundMuted,fontFamily:f.regular}],children:Fe}):null,jsxRuntime.jsxs(reactNative.View,{style:[Ze.detailCard,{backgroundColor:d.card,borderColor:d.cardHover}],children:[W.source_amount_usd?jsxRuntime.jsxs(reactNative.View,{style:Ze.detailRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ze.detailLabel,{color:d.foregroundMuted,fontFamily:f.regular}],children:"Amount Sent"}),jsxRuntime.jsxs(reactNative.Text,{style:[Ze.detailValue,{color:d.foreground,fontFamily:f.medium}],children:["$",parseFloat(W.source_amount_usd).toFixed(2)," USD"]})]}):null,jsxRuntime.jsxs(reactNative.View,{style:Ze.detailRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ze.detailLabel,{color:d.foregroundMuted,fontFamily:f.regular}],children:"Amount Received"}),jsxRuntime.jsxs(reactNative.Text,{style:[Ze.detailValue,{color:d.foreground,fontFamily:f.medium}],children:[Re(W)," ",Ce(W.destination_currency)]})]}),W.source_chain_id?jsxRuntime.jsxs(reactNative.View,{style:Ze.detailRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ze.detailLabel,{color:d.foregroundMuted,fontFamily:f.regular}],children:"Source Network"}),jsxRuntime.jsx(reactNative.Text,{style:[Ze.detailValue,{color:d.foreground,fontFamily:f.medium}],children:ot(W.source_chain_type??"",W.source_chain_id)})]}):null,W.destination_chain_id?jsxRuntime.jsxs(reactNative.View,{style:Ze.detailRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ze.detailLabel,{color:d.foregroundMuted,fontFamily:f.regular}],children:"Destination Network"}),jsxRuntime.jsx(reactNative.Text,{style:[Ze.detailValue,{color:d.foreground,fontFamily:f.medium}],children:ot(W.destination_chain_type??"",W.destination_chain_id)})]}):null]}),jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:Ze.seeMoreRow,onPress:()=>{reactNative.LayoutAnimation.configureNext(reactNative.LayoutAnimation.Presets.easeInEaseOut),Ie(we=>!we);},activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ze.seeMoreText,{color:d.foreground,fontFamily:f.medium}],children:$e?"See less":"See more details"}),jsxRuntime.jsx(reactNative.Text,{style:[Ze.seeMoreChevron,{color:d.foregroundMuted}],children:$e?"\u25B2":"\u25BC"})]}),$e&&jsxRuntime.jsxs(reactNative.View,{style:Ze.txHashSection,children:[W.explorer_url?jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[Ze.txRow,{backgroundColor:d.card,borderColor:d.cardHover}],onPress:()=>reactNative.Linking.openURL(W.explorer_url),activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ze.txLabel,{color:d.foreground,fontFamily:f.medium}],children:"Deposit Tx"}),jsxRuntime.jsxs(reactNative.View,{style:Ze.txRight,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ze.txHash,{color:d.foregroundMuted}],children:ze(W.transaction_hash)}),jsxRuntime.jsx(reactNative.Text,{style:[Ze.txArrow,{color:d.foregroundMuted}],children:"\u2197"})]})]}):null,!E&&W.destination_explorer_url&&W.destination_transaction_hashes?.[0]?jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[Ze.txRow,{backgroundColor:d.card,borderColor:d.cardHover}],onPress:()=>reactNative.Linking.openURL(W.destination_explorer_url),activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ze.txLabel,{color:d.foreground,fontFamily:f.medium}],children:"Completion Tx"}),jsxRuntime.jsxs(reactNative.View,{style:Ze.txRight,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ze.txHash,{color:d.foregroundMuted}],children:ze(W.destination_transaction_hashes[0])}),jsxRuntime.jsx(reactNative.Text,{style:[Ze.txArrow,{color:d.foregroundMuted}],children:"\u2197"})]})]}):null]})]}),jsxRuntime.jsx(reactNative.View,{style:Ze.bottomButtonContainer,children:jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[yt.primaryButton,{backgroundColor:d.primary,borderRadius:C.button.borderRadius,borderWidth:C.button.borderWidth,borderColor:C.button.borderColor}],onPress:a,activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[yt.primaryButtonText,{color:d.primaryForeground??"#FFF",fontFamily:f.medium}],children:"Done"})})})]})}function H(){return jsxRuntime.jsxs(reactNative.View,{style:yt.centeredContainer,children:[jsxRuntime.jsx(Ai,{size:48,color:d.error,strokeWidth:1.5}),jsxRuntime.jsx(reactNative.Text,{style:[yt.statusTitle,{color:d.foreground,fontFamily:f.semibold}],children:ee||"Connection failed"}),jsxRuntime.jsx(reactNative.Text,{style:[yt.statusSubtitle,{color:d.foregroundMuted,fontFamily:f.regular}],children:"Please try again or use a different wallet."}),jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:ct,activeOpacity:.8,style:[yt.primaryButton,{backgroundColor:d.primary,borderRadius:C.button.borderRadius,borderWidth:C.button.borderWidth,borderColor:C.button.borderColor}],children:jsxRuntime.jsx(reactNative.Text,{style:[yt.primaryButtonText,{color:d.primaryForeground??"#FFF",fontFamily:f.semibold}],children:"Try Again"})})]})}function $(){switch(k){case "selectWallet":return Ft();case "selectNetwork":return mt();case "connecting":return or();case "waitingForDeposit":return Me();case "depositProcessing":return b();case "depositComplete":return B();case "failed":return H()}}let q=k==="selectWallet"||k==="selectNetwork"||k==="failed",ue=k==="selectNetwork"?F?.name??"Select Network":k==="depositProcessing"?"Deposit Processing":k==="depositComplete"?"Deposit Summary":"Connect Wallet";function Qe(){k==="selectNetwork"?(x.current=false,L(null),D(null),N(null),R("selectWallet")):i();}return jsxRuntime.jsxs(reactNative.View,{style:yt.container,children:[jsxRuntime.jsx(Kr,{title:ue,showBack:q,onBack:Qe,onClose:a}),$()]})}var yt=reactNative.StyleSheet.create({container:{flex:1},centeredContainer:{flex:1,alignItems:"center",justifyContent:"center",paddingHorizontal:24,gap:12},walletList:{flex:1},walletListContent:{paddingHorizontal:16,paddingTop:8,paddingBottom:24,gap:8},pickerSubtitle:{fontSize:14,textAlign:"center",marginBottom:8},walletRow:{flexDirection:"row",alignItems:"center",paddingVertical:14,paddingHorizontal:14,gap:12},walletTextContainer:{flex:1},walletName:{fontSize:15,marginBottom:2},walletChains:{fontSize:12},statusTitle:{fontSize:18,textAlign:"center",marginTop:4},statusSubtitle:{fontSize:14,textAlign:"center",maxWidth:280,lineHeight:20},errorTitle:{fontSize:18,textAlign:"center",marginTop:16},errorSubtitle:{fontSize:14,textAlign:"center",maxWidth:280,lineHeight:20},primaryButton:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:8,paddingVertical:14,paddingHorizontal:24,alignSelf:"stretch",marginTop:8},primaryButtonText:{fontSize:16},retryButton:{paddingVertical:12,paddingHorizontal:24,borderRadius:8,marginTop:8},retryButtonText:{fontSize:14},networkPickerContainer:{flex:1,paddingHorizontal:16,paddingTop:16},networkPickerHeader:{alignItems:"center",marginBottom:24},networkList:{gap:8},networkRow:{flexDirection:"row",alignItems:"center",paddingVertical:14,paddingHorizontal:14,gap:12},networkIconContainer:{width:40,height:40,alignItems:"center",justifyContent:"center"},networkName:{flex:1,fontSize:16}}),Ze=reactNative.StyleSheet.create({flex:{flex:1},centeredFull:{flex:1,justifyContent:"space-between"},centeredContent:{flex:1,alignItems:"center",justifyContent:"center",paddingHorizontal:32,gap:16},stateTitle:{fontSize:20,textAlign:"center"},stateDescription:{fontSize:14,textAlign:"center",lineHeight:20},loaderIcon:{width:48,height:48,borderRadius:24},scrollContent:{paddingHorizontal:20,paddingBottom:16,alignItems:"center"},tokenIconWrapper:{position:"relative",marginTop:24,marginBottom:8,alignSelf:"center"},tokenIcon:{width:72,height:72,borderRadius:36},statusBadge:{position:"absolute",right:-4,bottom:-4,width:24,height:24,borderRadius:12,alignItems:"center",justifyContent:"center"},statusBadgeText:{color:"#fff",fontSize:12,fontWeight:"bold"},statusRow:{flexDirection:"row",alignItems:"center",gap:6,marginBottom:4},statusDot:{width:8,height:8,borderRadius:4},statusText:{fontSize:16},dateText:{fontSize:13,marginBottom:28},detailCard:{width:"100%",borderRadius:12,borderWidth:1,padding:16,gap:32,marginBottom:8},detailRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between"},detailLabel:{fontSize:14},detailValue:{fontSize:14},seeMoreRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",width:"100%",paddingVertical:8},seeMoreText:{fontSize:14},seeMoreChevron:{fontSize:12},txHashSection:{width:"100%",gap:8},txRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingVertical:14,borderRadius:12,borderWidth:1},txLabel:{fontSize:14},txRight:{flexDirection:"row",alignItems:"center",gap:6},txHash:{fontSize:13,fontFamily:reactNative.Platform.OS==="ios"?"Menlo":"monospace"},txArrow:{fontSize:14},bottomButtonContainer:{paddingHorizontal:16,paddingBottom:16,gap:8}});var yi=7,gi=4,Ka=4;function CS(e,t,r){return e<yi&&t<yi||e<yi&&t>=r-yi||e>=r-yi&&t<yi}function ds({value:e,size:t=180,logoUri:r,logoSize:o=40,logoBackgroundColor:n,badgeUri:s,badgeSize:i=20}){let{isDark:a}=A(),l=a?"#1a1a1a":"#ffffff",c=a?"#ffffff":"#000000",p=n||l,h=ws.useMemo(()=>{try{return bS__default.default(e||"placeholder","H")}catch{return null}},[e]),T=h?h.length:0,d=T?(t-gi*2)/T:0,f=d*.38,C=o+12,v=C/2+4,x=t/2,k=t/2,R=T?[{x:gi,y:gi},{x:gi+(T-yi)*d,y:gi},{x:gi,y:gi+(T-yi)*d}]:[],w=yi*d,_=5*d,m=d,u=3*d,S=2*d;return jsxRuntime.jsxs(reactNative.View,{style:[nf.container,{width:t,height:t}],children:[jsxRuntime.jsxs(ir__default.default,{width:t,height:t,children:[jsxRuntime.jsx(ir.Rect,{x:0,y:0,width:t,height:t,fill:l}),h?.map((y,F)=>y.map((L,V)=>{if(!L||CS(F,V,T))return null;let D=gi+V*d+d/2,O=gi+F*d+d/2;if(r){let N=D-x,M=O-k;if(Math.sqrt(N*N+M*M)<v)return null}return jsxRuntime.jsx(ir.Circle,{cx:D,cy:O,r:f,fill:c},`${F}-${V}`)})),R.map((y,F)=>jsxRuntime.jsxs(ws__namespace.default.Fragment,{children:[jsxRuntime.jsx(ir.Rect,{x:y.x,y:y.y,width:w,height:w,rx:Ka,ry:Ka,fill:c}),jsxRuntime.jsx(ir.Rect,{x:y.x+m,y:y.y+m,width:_,height:_,rx:Ka-1,ry:Ka-1,fill:l}),jsxRuntime.jsx(ir.Rect,{x:y.x+S,y:y.y+S,width:u,height:u,rx:Ka-1.5,ry:Ka-1.5,fill:c})]},`finder-${F}`))]}),r&&jsxRuntime.jsxs(reactNative.View,{style:[nf.logoContainer,{width:C,height:C,top:k-C/2,left:x-C/2,backgroundColor:p,borderRadius:C/2}],children:[jsxRuntime.jsx(ko,{uri:r,width:o,height:o,borderRadius:o/2}),s&&jsxRuntime.jsx(reactNative.View,{style:[nf.badgeContainer,{width:i+4,height:i+4,borderRadius:(i+4)/2,backgroundColor:p}],children:jsxRuntime.jsx(ko,{uri:s,width:i,height:i,borderRadius:i/2})})]})]})}var nf=reactNative.StyleSheet.create({container:{alignItems:"center",justifyContent:"center",position:"relative"},logoContainer:{position:"absolute",alignItems:"center",justifyContent:"center"},badgeContainer:{position:"absolute",bottom:-2,right:-2,alignItems:"center",justifyContent:"center"}});var xS=e=>e.length<=16?e:`${e.slice(0,8)}...${e.slice(-6)}`,Ya=(e,t)=>`${t}:${e}`,vS=e=>{let[t,r]=e.split(":");return {chainType:t,chainId:r}};function jd({externalUserId:e,publishableKey:t,recipientAddress:r,destinationChainType:o,destinationChainId:n,destinationTokenAddress:s,destinationTokenSymbol:i,defaultChainType:a,defaultChainId:l,defaultTokenAddress:c,depositConfirmationMode:p="auto_ui",onExecutionsChange:h,onDepositSuccess:T,onDepositError:d,onLatestExecution:f,onShowStatusSheet:C,onSelectedTokenIconUrl:v,borderTopLeftRadius:x,borderTopRightRadius:k,sheetBorderRadius:R}){let{colors:w,fonts:_,components:m}=A(),u=a&&l?`${a}:${l}`:"solana:mainnet",[S,y]=ws.useState("USDC"),[F,L]=ws.useState(u),[V,D]=ws.useState([]),[O,N]=ws.useState(true),[M,Ve]=ws.useState([]),[se,Le]=ws.useState(true),[J,pe]=ws.useState(false),[ee,U]=ws.useState(false),[de,Z]=ws.useState(false),[he,it]=ws.useState(false),[Oe,te]=ws.useState([]),[je,Xe]=ws.useState(new Map),[qe]=ws.useState(()=>new Date),[ft,He]=ws.useState(null),[Ae,We]=ws.useState(false),[_e,be]=ws.useState(null),[Ge,Ye]=ws.useState(false);ws.useEffect(()=>{_e&&f?.(_e);},[_e]),ws.useEffect(()=>{Ae&&(C?.(true),We(false));},[Ae]);let at=new Map;M.forEach(I=>{I.chains.forEach(b=>{let B=`${b.chain_type}:${b.chain_id}`;at.has(B)||at.set(B,b);});});let Tr=Array.from(at.values()),$e=vS(F),et=Tr.find(I=>I.chain_type===$e.chainType&&I.chain_id===$e.chainId)?.chain_type||"ethereum",lt=Ro(V,et),xe=lt?.address||"",ve=ws.useRef(false);ws.useEffect(()=>{async function I(){try{Le(!0),He(null);let B=await ni(t,s&&n&&o?{destination_token_address:s,destination_chain_id:n,destination_chain_type:o}:void 0);if(Ve(B.data),B.data.length>0&&!ve.current){ve.current=!0;let H,$;if(a&&l)if(c)for(let q of B.data){let ue=q.chains.find(Qe=>Qe.chain_type===a&&Qe.chain_id===l&&Qe.token_address.toLowerCase()===c.toLowerCase());if(ue){H=q,$=ue;break}}else {let q=Qe=>Qe.chain_type===a&&Qe.chain_id===l,ue=B.data.find(Qe=>Qe.symbol==="USDC"&&Qe.chains.some(q));if(ue)H=ue,$=ue.chains.find(q);else for(let Qe of B.data){let W=Qe.chains.find(q);if(W){H=Qe,$=W;break}}}if(!H&&s)for(let q of B.data){let ue=q.chains.find(Qe=>Qe.token_address.toLowerCase()===s.toLowerCase());if(ue){H=q,$=ue;break}}H||(H=B.data.find(q=>q.symbol==="USDC"),H&&H.chains.length>0&&($=H.chains[0])),H||(H=B.data.find(q=>q.symbol==="USDT"),H&&H.chains.length>0&&($=H.chains[0])),H||(H=B.data[0],H.chains.length>0&&($=H.chains[0])),H&&y(H.symbol),$&&L(Ya($.chain_id,$.chain_type));}}catch(b){console.error("Error fetching supported tokens:",b),He("Failed to load supported tokens"),d?.({message:"Failed to load supported tokens",error:b});}finally{Le(false);}}I();},[t,d,a,l,c,s,n,o]),ws.useEffect(()=>{async function I(){try{N(!0),He(null);let b=await Mo({external_user_id:e,recipient_address:r,destination_chain_type:o,destination_chain_id:n,destination_token_address:s},t);D(b.data);}catch(b){console.error("Error fetching wallets:",b),He("Failed to load wallets"),d?.({message:"Failed to load wallets",error:b});}finally{N(false);}}I();},[e,r,o,n,s,t,d]);let Ee=lt?.id??"",{showWaitingUi:ge,handleIveDeposited:ct}=Tn({depositConfirmationMode:p,depositAddress:xe,chain:F,externalUserId:e,publishableKey:t,modalOpenedAt:qe,depositWalletId:Ee,depositExecutions:Oe,trackedExecutions:je,setDepositExecutions:te,setTrackedExecutions:Xe,setLatestExecution:be,setShowStatusSheet:We,onDepositSuccess:T,onExecutionsChange:h,onDepositError:d});ws.useEffect(()=>{if(!M.length)return;let I=M.find(B=>B.symbol===S);if(!I||I.chains.length===0){let B=M.find(H=>H.symbol==="USDC")||M[0];B&&(y(B.symbol),B.chains.length>0&&L(Ya(B.chains[0].chain_id,B.chains[0].chain_type)));return}if(!I.chains.some(B=>Ya(B.chain_id,B.chain_type)===F)){let B=I.chains[0];L(Ya(B.chain_id,B.chain_type));}},[S,M,F]);let Ft=M.find(I=>I.symbol===S),mt=Ue(Ft,"png")||void 0;ws.useEffect(()=>{v?.(mt);},[mt]);let or=Ft?.chains||[],Me=or.find(I=>Ya(I.chain_id,I.chain_type)===F),wt=async()=>{if(xe)try{reactNative.Clipboard.setString(xe),pe(!0),setTimeout(()=>pe(!1),2e3);}catch(I){console.error("Failed to copy:",I);}},ot=Me?.estimated_price_impact_percent??0,Ce=Me?.max_slippage_percent??.25,ze=Me?.minimum_deposit_amount_usd??3;if(se)return jsxRuntime.jsxs(reactNative.View,{style:Q.loadingContainer,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"large",color:w.primary}),jsxRuntime.jsx(reactNative.Text,{style:[Q.loadingText,{color:w.foregroundMuted,fontFamily:_.regular}],children:"Loading currencies..."})]});if(ft&&M.length===0)return jsxRuntime.jsxs(reactNative.View,{style:Q.errorContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[Q.errorText,{color:w.error,fontFamily:_.regular}],children:ft}),jsxRuntime.jsx(reactNative.Text,{style:[Q.errorHint,{color:w.foregroundMuted,fontFamily:_.regular}],children:"Please check your network connection and try again."})]});let K=()=>jsxRuntime.jsxs(zt,{visible:de,onClose:()=>Z(false),closeOnBackdropPress:true,showHandle:true,heightPercent:.9,borderTopLeftRadius:R?.tokenSelector?.borderTopLeftRadius??x,borderTopRightRadius:R?.tokenSelector?.borderTopRightRadius??k,children:[jsxRuntime.jsxs(reactNative.View,{style:[Q.sheetHeader,{borderBottomColor:w.border}],children:[jsxRuntime.jsx(reactNative.View,{style:Q.sheetHeaderSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[Q.sheetTitle,{color:m.header.titleColor,fontFamily:_.medium}],children:"Select Token"}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>Z(false),style:Q.sheetCloseButton,children:jsxRuntime.jsx(Rt,{size:20,color:m.header.buttonColor,strokeWidth:2})})]}),jsxRuntime.jsx(At,{style:Q.sheetList,contentContainerStyle:Q.sheetListContent,showsVerticalScrollIndicator:false,children:M.map(I=>jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{y(I.symbol),Z(false);},activeOpacity:.7,style:[Q.sheetItem,{backgroundColor:S===I.symbol?m.card.backgroundColor:"transparent"}],children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(I,"png"))},style:Q.sheetItemIcon}),jsxRuntime.jsxs(reactNative.View,{style:Q.sheetItemText,children:[jsxRuntime.jsx(reactNative.Text,{style:[Q.sheetItemTitle,{color:m.card.titleColor,fontFamily:_.medium}],children:I.symbol}),jsxRuntime.jsxs(reactNative.Text,{style:[Q.sheetItemSubtitle,{color:m.card.subtitleColor,fontFamily:_.regular}],children:[I.chains.length," network",I.chains.length!==1?"s":""," available"]})]}),S===I.symbol&&jsxRuntime.jsx(dt,{size:20,color:w.primary,strokeWidth:2})]},I.symbol))})]}),Re=()=>jsxRuntime.jsxs(zt,{visible:he,onClose:()=>it(false),closeOnBackdropPress:true,showHandle:true,heightPercent:.9,borderTopLeftRadius:R?.chainSelector?.borderTopLeftRadius??x,borderTopRightRadius:R?.chainSelector?.borderTopRightRadius??k,children:[jsxRuntime.jsxs(reactNative.View,{style:[Q.sheetHeader,{borderBottomColor:w.border}],children:[jsxRuntime.jsx(reactNative.View,{style:Q.sheetHeaderSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[Q.sheetTitle,{color:m.header.titleColor,fontFamily:_.medium}],children:"Select Network"}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>it(false),style:Q.sheetCloseButton,children:jsxRuntime.jsx(Rt,{size:20,color:m.header.buttonColor,strokeWidth:2})})]}),jsxRuntime.jsx(At,{style:Q.sheetList,contentContainerStyle:Q.sheetListContent,showsVerticalScrollIndicator:false,children:or.map(I=>{let b=Ya(I.chain_id,I.chain_type),B=F===b;return jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{L(b),it(false);},activeOpacity:.7,style:[Q.sheetItem,{backgroundColor:B?m.card.backgroundColor:"transparent"}],children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(I,"png"))},style:Q.sheetItemIcon}),jsxRuntime.jsxs(reactNative.View,{style:Q.sheetItemText,children:[jsxRuntime.jsx(reactNative.Text,{style:[Q.sheetItemTitle,{color:m.card.titleColor,fontFamily:_.medium}],children:I.chain_name}),jsxRuntime.jsxs(reactNative.Text,{style:[Q.sheetItemSubtitle,{fontFamily:_.regular}],children:[jsxRuntime.jsx(reactNative.Text,{style:{color:m.card.subtitleColor},children:"Minimum deposit: "}),jsxRuntime.jsxs(reactNative.Text,{style:{color:w.warning},children:["$",I.minimum_deposit_amount_usd]})]})]}),B&&jsxRuntime.jsx(dt,{size:20,color:w.primary,strokeWidth:2})]},b)})})]});return jsxRuntime.jsxs(reactNative.View,{style:Q.container,children:[jsxRuntime.jsxs(reactNative.View,{style:Q.selectorSection,children:[jsxRuntime.jsx(reactNative.Text,{style:[Q.selectorLabel,{color:m.card.labelColor,fontFamily:_.regular}],children:"Token"}),jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>Z(true),style:[Q.selector,{backgroundColor:m.card.backgroundColor,borderRadius:m.card.borderRadius,borderWidth:m.card.borderWidth,borderColor:m.card.borderColor}],children:[Ft&&jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(Ft,"png"))},style:Q.selectorIcon}),jsxRuntime.jsx(reactNative.Text,{style:[Q.selectorText,{color:m.card.titleColor,fontFamily:_.medium}],children:S}),jsxRuntime.jsx(lr,{size:16,color:m.card.actionColor,strokeWidth:2})]})]}),jsxRuntime.jsxs(reactNative.View,{style:Q.selectorSection,children:[jsxRuntime.jsxs(reactNative.Text,{style:[Q.selectorLabel,{color:m.card.labelColor,fontFamily:_.regular}],children:["Network"," ",jsxRuntime.jsxs(reactNative.Text,{style:[Q.minDeposit,{color:w.warning,fontFamily:_.regular}],children:["($",ze," minimum)"]})]}),jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>it(true),style:[Q.selector,{backgroundColor:m.card.backgroundColor,borderRadius:m.card.borderRadius,borderWidth:m.card.borderWidth,borderColor:m.card.borderColor}],children:[Me&&jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(Me,"png"))},style:Q.selectorIcon}),jsxRuntime.jsx(reactNative.Text,{style:[Q.selectorText,{color:m.card.titleColor,fontFamily:_.medium}],numberOfLines:1,children:Me?.chain_name||"Select network"}),jsxRuntime.jsx(lr,{size:16,color:m.card.actionColor,strokeWidth:2})]})]}),jsxRuntime.jsx(reactNative.Text,{style:[Q.intentAddressLabel,{color:w.foregroundMuted,fontFamily:_.medium}],children:"Intent address"}),jsxRuntime.jsx(reactNative.View,{style:Q.qrContainer,children:jsxRuntime.jsx(reactNative.View,{style:[Q.qrWrapper,{backgroundColor:w.background,borderRadius:m.card.borderRadius,borderWidth:m.card.borderWidth>0?m.card.borderWidth:1,borderColor:m.card.borderColor}],children:O?jsxRuntime.jsxs(reactNative.View,{style:Q.qrLoading,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"small",color:w.primary}),jsxRuntime.jsx(reactNative.Text,{style:[Q.loadingText,{color:w.foregroundMuted,fontFamily:_.regular}],children:"Loading..."})]}):xe?jsxRuntime.jsx(ds,{value:xe,size:160,logoUri:ie(Ue(Me,"png")||er("/icons/networks/png/ethereum.png")),logoSize:40}):jsxRuntime.jsx(reactNative.View,{style:Q.qrLoading,children:jsxRuntime.jsx(reactNative.Text,{style:[Q.errorText,{color:w.error,fontFamily:_.regular}],children:"No address available"})})})}),jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:wt,disabled:O||!xe,style:Q.addressRow,activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[Q.addressTruncated,{color:w.foregroundMuted,fontFamily:_.regular}],numberOfLines:1,children:O?"Loading...":xe?xS(xe):"No address"}),J?jsxRuntime.jsx(dt,{size:16,color:w.success,strokeWidth:2}):jsxRuntime.jsx(un,{size:16,color:w.foregroundMuted,strokeWidth:1.5})]}),jsxRuntime.jsx(uc,{showWaitingUi:ge,latestExecution:_e}),jsxRuntime.jsxs(reactNative.View,{style:[Q.detailsCard,{backgroundColor:m.card.backgroundColor,borderRadius:m.card.borderRadius,borderWidth:m.card.borderWidth,borderColor:m.card.borderColor}],children:[jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>U(!ee),style:Q.detailsHeader,children:[jsxRuntime.jsxs(reactNative.View,{style:Q.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[Q.detailIcon,{backgroundColor:m.card.iconBackgroundColor,borderRadius:m.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(ho,{size:12,color:m.card.iconColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:[Q.detailsLabel,{color:m.card.titleColor,fontFamily:_.regular}],children:"Processing time: < 1 min"})]}),jsxRuntime.jsx(reactNative.View,{style:Q.chevronContainer,children:ee?jsxRuntime.jsx(_n,{size:16,color:m.card.actionColor,strokeWidth:2}):jsxRuntime.jsx(lr,{size:16,color:m.card.actionColor,strokeWidth:2})})]}),ee&&jsxRuntime.jsxs(reactNative.View,{style:Q.detailsContent,children:[jsxRuntime.jsxs(reactNative.View,{style:Q.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[Q.detailIcon,{backgroundColor:m.card.iconBackgroundColor,borderRadius:m.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(pn,{size:12,color:m.card.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[Q.detailsLabel,{color:m.card.titleColor,fontFamily:_.regular}],children:["Price impact: ",ot.toFixed(2),"%"]}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>Ye(true),hitSlop:{top:10,bottom:10,left:10,right:10},style:{marginLeft:-4},children:jsxRuntime.jsx(fn,{size:14,color:m.card.actionColor,strokeWidth:2})})]}),jsxRuntime.jsxs(reactNative.View,{style:Q.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[Q.detailIcon,{backgroundColor:m.card.iconBackgroundColor,borderRadius:m.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(So,{size:12,color:m.card.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[Q.detailsLabel,{color:m.card.titleColor,fontFamily:_.regular}],children:["Slippage: Auto \u2022 ",Ce.toFixed(2),"%"]}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>Ye(true),hitSlop:{top:10,bottom:10,left:10,right:10},style:{marginLeft:-4},children:jsxRuntime.jsx(fn,{size:14,color:m.card.actionColor,strokeWidth:2})})]}),jsxRuntime.jsxs(reactNative.View,{style:Q.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[Q.detailIcon,{backgroundColor:m.card.iconBackgroundColor,borderRadius:m.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(la,{size:12,color:m.card.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[Q.detailsLabel,{color:m.card.titleColor,fontFamily:_.regular}],children:["Need help?"," ",jsxRuntime.jsx(reactNative.Text,{style:{textDecorationLine:"underline"},children:"Contact support"})]})]}),jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>reactNative.Linking.openURL("https://unifold.io/terms"),style:Q.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[Q.detailIcon,{backgroundColor:m.card.iconBackgroundColor,borderRadius:m.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(fn,{size:12,color:m.card.iconColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:[Q.detailsLabel,{color:w.primary,fontFamily:_.regular,textDecorationLine:"underline"}],children:"Terms apply"})]})]})]}),jsxRuntime.jsx(Xp,{depositConfirmationMode:p,depositAddress:xe,showWaitingUi:ge,onIveDeposited:ct}),K(),Re(),jsxRuntime.jsxs(zt,{visible:Ge,onClose:()=>Ye(false),closeOnBackdropPress:true,showHandle:true,heightPercent:.55,maxHeightPercent:.9,borderTopLeftRadius:R?.infoSheet?.borderTopLeftRadius??x,borderTopRightRadius:R?.infoSheet?.borderTopRightRadius??k,children:[jsxRuntime.jsxs(reactNative.View,{style:[Q.sheetHeader,{borderBottomColor:w.border}],children:[jsxRuntime.jsx(reactNative.View,{style:Q.sheetHeaderSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[Q.sheetTitle,{color:m.header.titleColor,fontFamily:_.medium}],children:"Price Impact & Slippage"}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>Ye(false),style:Q.sheetCloseButton,children:jsxRuntime.jsx(Rt,{size:20,color:m.header.buttonColor,strokeWidth:2})})]}),jsxRuntime.jsxs(reactNative.View,{style:Q.infoSheetContent,children:[jsxRuntime.jsxs(reactNative.View,{style:[Q.infoCard,{backgroundColor:m.card.backgroundColor,borderRadius:m.card.borderRadius,borderWidth:m.card.borderWidth,borderColor:m.card.borderColor}],children:[jsxRuntime.jsxs(reactNative.View,{style:Q.infoCardHeader,children:[jsxRuntime.jsx(reactNative.View,{style:[Q.infoCardIcon,{backgroundColor:m.card.iconBackgroundColor,borderRadius:m.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(pn,{size:16,color:m.card.iconColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:[Q.infoCardTitle,{color:m.card.titleColor,fontFamily:_.medium}],children:"Price Impact"}),jsxRuntime.jsxs(reactNative.Text,{style:[Q.infoCardValue,{color:m.card.titleColor,fontFamily:_.medium}],children:[ot.toFixed(2),"%"]})]}),jsxRuntime.jsx(reactNative.Text,{style:[Q.infoCardDescription,{color:m.card.descriptionColor,fontFamily:_.regular}],children:"Price impact is the difference between the current market price and the price you'll receive for your swap. This occurs due to liquidity pool mechanics and trade size."})]}),jsxRuntime.jsxs(reactNative.View,{style:[Q.infoCard,{backgroundColor:m.card.backgroundColor,borderRadius:m.card.borderRadius,borderWidth:m.card.borderWidth,borderColor:m.card.borderColor}],children:[jsxRuntime.jsxs(reactNative.View,{style:Q.infoCardHeader,children:[jsxRuntime.jsx(reactNative.View,{style:[Q.infoCardIcon,{backgroundColor:m.card.iconBackgroundColor,borderRadius:m.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(So,{size:16,color:m.card.iconColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:[Q.infoCardTitle,{color:m.card.titleColor,fontFamily:_.medium}],children:"Max Slippage"}),jsxRuntime.jsxs(reactNative.Text,{style:[Q.infoCardValue,{color:m.card.titleColor,fontFamily:_.medium}],children:[Ce.toFixed(2),"%"]})]}),jsxRuntime.jsx(reactNative.Text,{style:[Q.infoCardDescription,{color:m.card.descriptionColor,fontFamily:_.regular}],children:"Max slippage is the maximum price difference you're willing to accept between when you submit a transaction and when it executes. Your transaction will revert if the price moves beyond this threshold."})]})]})]})]})}var Q=reactNative.StyleSheet.create({container:{flex:1,padding:16},loadingContainer:{padding:40,alignItems:"center",gap:12},loadingText:{fontSize:14},errorContainer:{padding:40,alignItems:"center",gap:8},errorText:{fontSize:14,textAlign:"center"},errorHint:{fontSize:12,textAlign:"center"},selectorSection:{marginBottom:12},selectorLabel:{fontSize:13,marginBottom:8},minDeposit:{fontSize:10},selector:{flexDirection:"row",alignItems:"center",gap:10,padding:12,borderRadius:12},selectorIcon:{width:24,height:24,borderRadius:12},selectorText:{flex:1,fontSize:14,fontWeight:"500"},qrContainer:{alignItems:"center",marginVertical:16},qrWrapper:{padding:16},qrLoading:{width:160,height:160,alignItems:"center",justifyContent:"center"},intentAddressLabel:{fontSize:14,textAlign:"center",marginTop:8},addressRow:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:8,paddingVertical:8,marginBottom:16},addressTruncated:{fontSize:14},detailsCard:{borderRadius:8,padding:4,marginBottom:16},detailsHeader:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",paddingVertical:8,paddingLeft:8,paddingRight:8},detailsContent:{paddingRight:12,paddingLeft:8,paddingBottom:12,gap:10},detailsRow:{flexDirection:"row",alignItems:"center",gap:8},detailIcon:{width:24,height:24,borderRadius:12,alignItems:"center",justifyContent:"center"},detailsLabel:{fontSize:13},chevronContainer:{},spacer:{flex:1},sheetHeader:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",padding:16},sheetHeaderSpacer:{width:28},sheetTitle:{fontSize:16,fontWeight:"500",flex:1,textAlign:"center"},sheetCloseButton:{width:28,height:28,alignItems:"center",justifyContent:"center"},sheetList:{flex:1,paddingTop:8},sheetListContent:{paddingBottom:56},sheetItem:{flexDirection:"row",alignItems:"center",paddingVertical:12,paddingHorizontal:16,marginHorizontal:8,borderRadius:12,gap:12},sheetItemIcon:{width:40,height:40,borderRadius:20},sheetItemText:{flex:1},sheetItemTitle:{fontSize:16,fontWeight:"500"},sheetItemSubtitle:{fontSize:12,marginTop:2},infoSheetContent:{paddingHorizontal:16,paddingBottom:32,gap:16},infoCard:{borderRadius:12,padding:16,gap:12},infoCardHeader:{flexDirection:"row",alignItems:"center",gap:10},infoCardIcon:{width:32,height:32,borderRadius:16,alignItems:"center",justifyContent:"center"},infoCardTitle:{fontSize:15,fontWeight:"600",flex:1},infoCardValue:{fontSize:15,fontWeight:"600"},infoCardDescription:{fontSize:13,lineHeight:20}});function $d({currency:e,isSelected:t,onSelect:r}){let{colors:o,fonts:n,components:s}=A();return jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>r(e.currency_code),activeOpacity:.7,style:[Ns.container,{backgroundColor:s.card.backgroundColor,borderRadius:s.list.rowBorderRadius,borderWidth:s.card.borderWidth,borderColor:s.card.borderColor}],children:[jsxRuntime.jsxs(reactNative.View,{style:Ns.leftContent,children:[jsxRuntime.jsx(reactNative.View,{style:[Ns.iconContainer,{backgroundColor:o.background}],children:jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(e,"png"))},style:Ns.icon})}),jsxRuntime.jsxs(reactNative.View,{style:Ns.textContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ns.name,{color:s.card.titleColor,fontFamily:n.medium}],children:e.name}),jsxRuntime.jsx(reactNative.Text,{style:[Ns.code,{color:s.card.subtitleColor,fontFamily:n.regular}],children:e.currency_code.toUpperCase()})]})]}),t&&jsxRuntime.jsx(dt,{size:16,color:o.primary,strokeWidth:2})]})}var Ns=reactNative.StyleSheet.create({container:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",padding:12,marginHorizontal:8,marginVertical:4},leftContent:{flexDirection:"row",alignItems:"center",gap:12},iconContainer:{width:40,height:40,borderRadius:20,overflow:"hidden",alignItems:"center",justifyContent:"center"},icon:{width:40,height:40,borderRadius:20},textContainer:{gap:2},name:{fontSize:14,fontWeight:"400"},code:{fontSize:12,fontWeight:"300"}});function fc({title:e,currencies:t,selectedCurrency:r,onSelect:o}){let{fonts:n,components:s}=A();return t.length===0?null:jsxRuntime.jsxs(reactNative.View,{children:[jsxRuntime.jsx(reactNative.View,{style:Fg.headerContainer,children:jsxRuntime.jsx(reactNative.Text,{style:[Fg.title,{color:s.list.titleSectionColor,fontFamily:n.medium}],children:e})}),t.map(i=>jsxRuntime.jsx($d,{currency:i,isSelected:r.toLowerCase()===i.currency_code.toLowerCase(),onSelect:o},i.currency_code))]})}var Fg=reactNative.StyleSheet.create({headerContainer:{paddingHorizontal:12,paddingBottom:8,paddingTop:4},title:{fontSize:14,fontWeight:"500"}});function Qd({open:e,onOpenChange:t,currencies:r,preferredCurrencyCodes:o,selectedCurrency:n,onSelectCurrency:s,borderTopLeftRadius:i,borderTopRightRadius:a}){let{colors:l,fonts:c,components:p}=A(),[h,T]=ws.useState(""),d=o.map(w=>r.find(_=>_.currency_code.toLowerCase()===w.toLowerCase())).filter(w=>w!==void 0),f=r.filter(w=>!o.includes(w.currency_code.toLowerCase())),C=w=>{if(!h)return w;let _=h.toLowerCase();return w.filter(m=>m.name.toLowerCase().includes(_)||m.currency_code.toLowerCase().includes(_))},v=C(d),x=C(f),k=w=>{s(w),t(false),T("");},R=()=>{t(false),T("");};return jsxRuntime.jsxs(zt,{visible:e,onClose:R,closeOnBackdropPress:true,showHandle:true,heightPercent:.9,borderTopLeftRadius:i,borderTopRightRadius:a,children:[jsxRuntime.jsx(Kr,{title:"Currency",showBack:false,onClose:R}),jsxRuntime.jsx(reactNative.View,{style:Hs.searchContainer,children:jsxRuntime.jsx(reactNative.TextInput,{style:[Hs.searchInput,{backgroundColor:p.search.backgroundColor,color:p.search.inputColor,fontFamily:c.regular,borderRadius:p.input.borderRadius,borderWidth:p.input.borderWidth,borderColor:p.input.borderColor}],value:h,onChangeText:T,placeholder:"Search",placeholderTextColor:p.search.placeholderColor})}),jsxRuntime.jsx(At,{style:Hs.listContainer,showsVerticalScrollIndicator:false,keyboardShouldPersistTaps:"handled",children:jsxRuntime.jsxs(reactNative.View,{style:Hs.listContent,children:[jsxRuntime.jsx(fc,{title:"Popular currencies",currencies:v,selectedCurrency:n,onSelect:k}),v.length>0&&x.length>0&&jsxRuntime.jsx(reactNative.View,{style:Hs.sectionSpacer}),jsxRuntime.jsx(fc,{title:"All currencies",currencies:x,selectedCurrency:n,onSelect:k}),v.length===0&&x.length===0&&jsxRuntime.jsx(reactNative.View,{style:Hs.noResultsContainer,children:jsxRuntime.jsx(reactNative.Text,{style:[Hs.noResultsText,{color:p.container.subtitleColor,fontFamily:c.regular}],children:"No currencies found"})})]})})]})}var Hs=reactNative.StyleSheet.create({searchContainer:{marginTop:8,paddingHorizontal:18,paddingBottom:12},searchInput:{padding:16,fontSize:14},listContainer:{flex:1,paddingHorizontal:12},listContent:{paddingBottom:72},sectionSpacer:{height:8},noResultsContainer:{paddingVertical:32,alignItems:"center"},noResultsText:{fontSize:14}});function df(e){try{return new Intl.NumberFormat("en",{style:"currency",currency:e.toUpperCase(),minimumFractionDigits:0,maximumFractionDigits:0}).format(0).replace(/\d/g,"").trim()}catch{return e.toUpperCase()}}function Yd({externalUserId:e,publishableKey:t,view:r,onViewChange:o,destinationTokenSymbol:n,recipientAddress:s,destinationChainType:i,destinationChainId:a,destinationTokenAddress:l,onDepositSuccess:c,onDepositError:p,onExecutionsChange:h,onLatestExecution:T,onShowStatusSheet:d,onSelectedTokenIconUrl:f,borderTopLeftRadius:C,borderTopRightRadius:v,sheetBorderRadius:x}){let{colors:k,fonts:R,components:w}=A(),[_,m]=ws.useState(""),[u,S]=ws.useState("usd"),[y,F]=ws.useState(false),[L,V]=ws.useState(false),[D,O]=ws.useState([]),[N,M]=ws.useState(false),[Ve,se]=ws.useState(null),[Le,J]=ws.useState(null),[pe,ee]=ws.useState("amount"),[U,de]=ws.useState(null),[Z,he]=ws.useState(true),[it,Oe]=ws.useState(null),[te,je]=ws.useState(false),Xe=ws.useRef(null),qe=ws.useRef(false);ws.useEffect(()=>{Xe.current=U;},[U]),ws.useEffect(()=>{qe.current=te;},[te]);let[ft,He]=ws.useState([]),[Ae,We]=ws.useState(true),[_e,be]=ws.useState(60),[Ge,Ye]=ws.useState([]),[at,Tr]=ws.useState([]),[$e,Ie]=ws.useState(null),[et,lt]=ws.useState(null),[xe,ve]=ws.useState(true),[Ee,ge]=ws.useState(null),[ct,Ft]=ws.useState(false),[mt,or]=ws.useState(null),[Me,wt]=ws.useState(false),[ot,Ce]=ws.useState(false),[ze,K]=ws.useState(false),[Re,I]=ws.useState(null),b=r??pe,B=ws.useRef(null),H=Ge.find(ye=>ye.currency_code.toLowerCase()===u.toLowerCase()),$=ws.useCallback(ye=>{ee(ye),ye==="quotes"?o?.(ye,D.length):o?.(ye);},[D.length,o]);ws.useEffect(()=>{async function ye(){try{let Je=await Vl();lt(Je);}catch(Je){console.error("Error fetching user IP:",Je);}finally{ve(false);}}ye();},[]),ws.useEffect(()=>{async function ye(){try{let Je=await Mo({external_user_id:e,recipient_address:s,destination_chain_type:i,destination_chain_id:a,destination_token_address:l},t);He(Je.data);}catch(Je){console.error("Error fetching wallets:",Je),se("Failed to load wallet addresses");}finally{We(false);}}ye();},[e,s,i,a,l,t]);let q=n||$e?.symbol.toUpperCase()||"USDC",ue=In($e?.icon_urls,"png")||$e?.icon_url,Qe=In($e?.chain_icon_urls,"png")||$e?.chain_icon_url,[W,E]=ws.useState([]),[nr,Fe]=ws.useState(new Map),[we]=ws.useState(()=>new Date),[ht,tt]=ws.useState(null),[re,Lt]=ws.useState(false),[rt,Bt]=ws.useState(null);ws.useEffect(()=>{b==="onramp"&&!rt&&Bt(new Date);},[b,rt]);let Ht=Ee?.destination_token_metadata?.chain_type||i||"ethereum",mo=Ee?.destination_token_metadata?.chain_id||a||"",ei=`${Ht}:${mo}`,Fc=Ro(ft,Ht),ks=Fc?.address||"",Dc=Fc?.id??"";ws.useEffect(()=>{ht&&T?.(ht);},[ht]),ws.useEffect(()=>{re&&(d?.(true),Lt(false));},[re]),ws.useEffect(()=>{f?.(ue||void 0);},[ue]),ws.useEffect(()=>{h?.(W);},[W]),Tn({depositConfirmationMode:"auto_silent",enabled:b==="onramp",depositAddress:ks,chain:ei,externalUserId:e,publishableKey:t,modalOpenedAt:rt??we,depositWalletId:Dc,depositExecutions:W,trackedExecutions:nr,setDepositExecutions:E,setTrackedExecutions:Fe,setLatestExecution:tt,setShowStatusSheet:Lt,onDepositSuccess:c,onExecutionsChange:h,onDepositError:p}),ws.useEffect(()=>{async function ye(){try{let Je=await Fl(t);Ye(Je.data),Tr(Je.preferred||[]);}catch(Je){console.error("Error fetching fiat currencies:",Je);}}ye();},[t]),ws.useEffect(()=>{if(y||Ge.length===0||!et?.alpha2)return;let ye=et.alpha2.toUpperCase(),Je=Ge.find(xr=>xr.country_codes.includes(ye));if(Je)S(Je.currency_code.toLowerCase()),!_&&!L&&m(String(Je.default_amount??100));else if(!_&&!L){let xr=Ge.find(Rn=>Rn.currency_code.toLowerCase()==="usd");xr&&m(String(xr.default_amount??100));}},[Ge,et,y,_,L]),ws.useEffect(()=>{if(Ge.length!==0){if(B.current!==null&&B.current!==u){let ye=Ge.find(Je=>Je.currency_code.toLowerCase()===u.toLowerCase());ye&&m(String(ye.default_amount??100));}B.current=u;}},[u,Ge]),ws.useEffect(()=>{async function ye(){try{let Je=await Nu({chain_type:i||"",chain_id:a||"",token_address:l||""},t);Ie(Je);}catch(Je){console.error("Error fetching supported tokens:",Je);}}ye();},[i,a,l,t]),ws.useEffect(()=>{async function ye(){if(!(!l||!a||!i)&&!xe){Ft(true);try{let Je=await $u({country_code:et?.alpha2?.toUpperCase()||"US",subdivision_code:et?.state||void 0,token_address:l,chain_id:a,chain_type:i},t);ge(Je);}catch(Je){console.error("Error fetching default onramp token:",Je);}finally{Ft(false);}}}ye();},[l,a,i,et,xe,t]),ws.useEffect(()=>{let ye=parseFloat(_);if(isNaN(ye)||ye<=0){O([]),J(null);return}if(!Ee||ct){O([]),de(null);return}let Je=Ge.find(Rn=>Rn.currency_code.toLowerCase()===u.toLowerCase());if(Je){if(ye<Je.minimum_amount){O([]),de(null),J(`Minimum amount is ${df(u)}${Je.minimum_amount.toLocaleString()}`);return}if(ye>Je.maximum_amount){O([]),de(null),J(`Maximum amount is ${df(u)}${Je.maximum_amount.toLocaleString()}`);return}}J(null);let xr=setTimeout(()=>{xs(ye);},500);return ()=>clearTimeout(xr)},[_,u,t,Ee,ct,Ge]);let xs=async ye=>{if(!Ee){se("Loading token information...");return}M(true),se(null);try{let Je={country_code:et?.alpha2?.toUpperCase()||"US",source_amount:ye.toString(),source_currency:u.toLowerCase(),destination_currency:Ee.destination_currency,destination_network:Ee.destination_network,subdivision_code:et?.state||void 0},xr=await Hu(Je,t);O(xr.data);let Rn=qe.current,Oc=Xe.current;if(Rn&&Oc){let Oi=xr.data.find(P=>P.service_provider===Oc.service_provider);if(Oi){if(de(Oi),xr.data.length>0){let P=xr.data[0];it||Oe(P.service_provider),he(Oi.service_provider===it);}}else if(xr.data.length>0){let P=xr.data[0];de(P),Oe(P.service_provider),he(!0),je(!1);}}else if(xr.data.length>0){let Oi=xr.data[0];de(Oi),Oe(Oi.service_provider),he(!0);}be(60);}catch(Je){console.error("Failed to fetch quotes:",Je),se("Failed to fetch quotes. Please try again."),O([]);}finally{M(false);}};ws.useEffect(()=>{if(D.length===0)return;let ye=setInterval(()=>{be(Je=>{if(Je<=1){let xr=parseFloat(_);return !isNaN(xr)&&xr>0&&xs(xr),60}return Je-1});},1e3);return ()=>clearInterval(ye)},[D.length,_]);let Vc=ye=>{(/^\d*\.?\d{0,2}$/.test(ye)||ye==="")&&(m(ye),V(true));},na=ye=>{m(ye.toString()),V(true);},Pu=async()=>{if(U&&Ee)try{let ye=Ee.destination_token_metadata.chain_type,Je=Ro(ft,ye);if(!Je?.address){se("Wallet address not available");return}let xr={service_provider:U.service_provider,country_code:U.country_code?.toUpperCase()||et?.alpha2?.toUpperCase()||"US",source_currency:U.source_currency,source_amount:_,destination_currency:U.destination_currency,destination_network:U.destination_network,wallet_address:Je.address,subdivision_code:et?.state||void 0},Rn=await ju(xr,t);or({provider:U,sourceCurrency:u,sourceAmount:_,sessionUrl:Rn.url}),I(Rn.url),K(!0);}catch(ye){console.error("Failed to create session:",ye),se("Failed to start payment flow"),p?.({message:"Failed to start payment flow",error:ye});}},Vi=df(u),bl=()=>{K(false),$("onramp"),c?.({message:"Payment flow completed"});},Fu=()=>jsxRuntime.jsx(MS,{visible:ze,onClose:bl,url:Re,providerName:U?.service_provider_display_name||"Complete Payment",colors:k,fonts:R,borderTopLeftRadius:x?.webView?.borderTopLeftRadius??C,borderTopRightRadius:x?.webView?.borderTopRightRadius??v});return b==="amount"?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(reactNative.View,{style:le.amountViewContainer,children:[jsxRuntime.jsxs(At,{style:le.scrollContainer,contentContainerStyle:le.scrollContent,showsVerticalScrollIndicator:false,keyboardShouldPersistTaps:"handled",bounces:false,children:[jsxRuntime.jsx(reactNative.View,{style:le.currencySelector,children:jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>wt(true),style:[le.currencyButton,{backgroundColor:w.card.backgroundColor,borderRadius:w.input.borderRadius,borderWidth:w.input.borderWidth,borderColor:w.input.borderColor}],children:[H&&jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(H,"png"))},style:le.currencyIcon}),jsxRuntime.jsx(reactNative.Text,{style:[le.currencyText,{color:w.card.titleColor,fontFamily:R.medium}],children:u.toUpperCase()}),jsxRuntime.jsx(lr,{size:16,color:w.card.actionColor,strokeWidth:2})]})}),jsxRuntime.jsx(Qd,{open:Me,onOpenChange:wt,currencies:Ge,preferredCurrencyCodes:at,selectedCurrency:u,onSelectCurrency:ye=>{S(ye.toLowerCase()),F(true);},borderTopLeftRadius:x?.currencyModal?.borderTopLeftRadius??C,borderTopRightRadius:x?.currencyModal?.borderTopRightRadius??v}),jsxRuntime.jsx(reactNative.View,{style:le.amountContainer,children:jsxRuntime.jsxs(reactNative.View,{style:le.amountInputRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[le.currencySymbol,{color:w.container.titleColor,fontFamily:R.medium}],children:Vi}),jsxRuntime.jsx(reactNative.TextInput,{style:[le.amountInput,{color:w.container.titleColor,fontFamily:R.medium}],value:_,onChangeText:Vc,keyboardType:"decimal-pad",placeholder:"0",placeholderTextColor:k.foregroundMuted})]})}),H?.suggested_amounts&&H.suggested_amounts.length>0&&jsxRuntime.jsx(reactNative.View,{style:le.quickAmounts,children:H.suggested_amounts.map(ye=>jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>na(ye),style:[le.quickAmountButton,{backgroundColor:w.card.backgroundColor,borderRadius:w.button.borderRadius,borderWidth:parseFloat(_)===ye?2:w.button.borderWidth,borderColor:parseFloat(_)===ye?k.primary:w.button.borderColor}],children:jsxRuntime.jsxs(reactNative.Text,{style:[le.quickAmountText,{color:w.card.titleColor,fontFamily:R.medium}],children:[Vi,ye.toLocaleString()]})},ye))}),Le&&jsxRuntime.jsx(reactNative.Text,{style:[le.validationError,{color:k.error,fontFamily:R.regular}],children:Le}),jsxRuntime.jsxs(reactNative.View,{style:le.providerSection,children:[jsxRuntime.jsxs(reactNative.View,{style:le.providerHeader,children:[jsxRuntime.jsx(reactNative.Text,{style:[le.providerLabel,{color:w.card.labelColor,fontFamily:R.medium}],children:"Provider"}),D.length>0&&!N&&jsxRuntime.jsxs(reactNative.Text,{style:[le.refreshText,{color:w.card.labelRightColor,fontFamily:R.regular}],children:["Refreshing in ",_e,"s"]})]}),jsxRuntime.jsx(Lr,{cardTokens:w.depositCard.quoteProvider.card,onPress:N||D.length===0?void 0:()=>Ce(true),contentStyle:reactNative.StyleSheet.flatten([le.providerButton,(N||D.length===0)&&le.disabled]),children:N?jsxRuntime.jsxs(reactNative.View,{style:le.providerLoading,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"small",color:k.primary}),jsxRuntime.jsx(reactNative.Text,{style:[le.loadingText,{color:w.container.subtitleColor,fontFamily:R.regular}],children:"Finding best rates..."})]}):U?jsxRuntime.jsxs(reactNative.View,{style:le.providerContent,children:[jsxRuntime.jsxs(reactNative.View,{style:le.providerInfo,children:[Z&&jsxRuntime.jsx(reactNative.Text,{style:[le.autoPickedText,{color:w.container.subtitleColor,fontFamily:R.regular}],children:"Auto-picked for you"}),jsxRuntime.jsxs(reactNative.View,{style:le.providerRow,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(jc(U.icon_urls,"png",U.icon_url))},style:le.providerIconImage},`provider-${U.service_provider}`),jsxRuntime.jsxs(reactNative.View,{children:[jsxRuntime.jsx(reactNative.Text,{style:[le.providerName,{color:w.card.titleColor,fontFamily:R.medium}],children:U.service_provider_display_name}),jsxRuntime.jsxs(reactNative.Text,{style:[le.bestPriceText,{color:w.container.subtitleColor,fontFamily:R.regular}],children:[U.destination_amount.toFixed(2)," ",q]})]})]})]}),jsxRuntime.jsx(Wr,{size:20,color:w.card.actionColor,strokeWidth:2})]}):jsxRuntime.jsx(reactNative.Text,{style:[le.noProviderText,{color:w.container.subtitleColor,fontFamily:R.regular}],children:parseFloat(_)>0?"No providers available":"Enter an amount to see providers"})}),Ve&&jsxRuntime.jsx(reactNative.Text,{style:[le.errorText,{color:k.error,fontFamily:R.regular}],children:Ve})]}),jsxRuntime.jsxs(zt,{visible:ot,onClose:()=>Ce(false),closeOnBackdropPress:true,showHandle:true,heightPercent:.9,borderTopLeftRadius:x?.providerModal?.borderTopLeftRadius??C,borderTopRightRadius:x?.providerModal?.borderTopRightRadius??v,children:[jsxRuntime.jsx(Kr,{title:"Select Provider",showBack:false,onClose:()=>Ce(false)}),jsxRuntime.jsx(At,{style:le.providerModalList,contentContainerStyle:le.providerModalListContent,showsVerticalScrollIndicator:false,children:jsxRuntime.jsx(reactNative.View,{style:le.quotesList,children:D.map(ye=>{let Je=U?.service_provider===ye.service_provider;return jsxRuntime.jsxs(Lr,{cardTokens:w.depositCard.quoteProvider.card,onPress:()=>{de(ye),je(true),he(ye.service_provider===it),Ce(false);},contentStyle:reactNative.StyleSheet.flatten([le.quoteItem,Je&&{borderWidth:2,borderColor:k.primary}]),children:[jsxRuntime.jsxs(reactNative.View,{style:le.quoteLeft,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(jc(ye.icon_urls,"png",ye.icon_url))},style:le.providerIconImage}),jsxRuntime.jsx(reactNative.View,{children:jsxRuntime.jsx(reactNative.Text,{style:[le.quoteName,{color:w.card.titleColor,fontFamily:R.medium}],children:ye.service_provider_display_name})})]}),jsxRuntime.jsxs(reactNative.View,{style:le.quoteRight,children:[jsxRuntime.jsxs(reactNative.Text,{style:[le.quoteAmount,{color:w.card.textRightColor,fontFamily:R.medium}],children:[ye.destination_amount.toFixed(2)," ",q]}),jsxRuntime.jsxs(reactNative.Text,{style:[le.quoteSource,{color:w.card.subtextRightColor,fontFamily:R.regular}],children:["Fee: ",Vi,ye.total_fee.toFixed(2)]})]})]},ye.service_provider)})})})]})]}),jsxRuntime.jsx(reactNative.View,{style:[le.continueButtonContainer,{backgroundColor:k.background}],children:jsxRuntime.jsx(reactNative.View,{style:{opacity:N||Ae||!U||parseFloat(_)<=0?.5:1},children:jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:Pu,disabled:N||Ae||!U||parseFloat(_)<=0,style:[le.continueButton,{backgroundColor:w.container.buttonColor,borderRadius:w.button.borderRadius,borderWidth:w.button.borderWidth,borderColor:w.button.borderColor}],children:jsxRuntime.jsx(reactNative.Text,{style:[le.continueButtonText,{color:w.container.buttonTitleColor,fontFamily:R.medium}],children:Ae?"Loading...":"Continue"})})})})]}),Fu()]}):b==="onramp"&&mt?jsxRuntime.jsxs(reactNative.View,{style:le.onrampContainer,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(jc(mt.provider.icon_urls,"png",mt.provider.icon_url))},style:le.onrampProviderIcon}),jsxRuntime.jsxs(reactNative.Text,{style:[le.onrampTitle,{color:w.container.titleColor,fontFamily:R.medium}],children:["Complete transaction with ",mt.provider.service_provider_display_name]}),jsxRuntime.jsx(reactNative.Text,{style:[le.onrampSubtitle,{color:w.container.subtitleColor,fontFamily:R.regular}],children:"You can close this modal."}),jsxRuntime.jsxs(reactNative.View,{style:[le.flowDiagram,{backgroundColor:w.card.backgroundColor}],children:[jsxRuntime.jsxs(reactNative.View,{style:le.flowStep,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:er(`/icons/currencies/png/${mt.sourceCurrency.toLowerCase()}.png`)},style:le.flowIconImage}),jsxRuntime.jsx(reactNative.Text,{style:[le.flowLabel,{color:w.card.subtitleColor,fontFamily:R.regular}],children:"You use"}),jsxRuntime.jsx(reactNative.Text,{style:[le.flowValue,{color:w.card.titleColor,fontFamily:R.medium}],children:mt.sourceCurrency.toUpperCase()})]}),jsxRuntime.jsx(Wr,{size:16,color:w.card.actionColor,strokeWidth:2}),jsxRuntime.jsxs(reactNative.View,{style:le.flowStep,children:[jsxRuntime.jsxs(reactNative.View,{style:le.flowIconWithBadge,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:In(Ee?.destination_token_metadata?.icon_urls,"png")||Ee?.destination_token_metadata?.icon_url||er("/icons/tokens/png/usdc.png")},style:le.flowIconImageNoBadge}),jsxRuntime.jsx(reactNative.Image,{source:{uri:In(Ee?.destination_token_metadata?.chain?.icon_urls,"png")||Ee?.destination_token_metadata?.chain?.icon_url||er("/icons/networks/png/polygon.png")},style:[le.flowNetworkBadge,{borderColor:k.background,borderRadius:w.badge.borderRadius}]})]}),jsxRuntime.jsx(reactNative.Text,{style:[le.flowLabel,{color:w.card.subtitleColor,fontFamily:R.regular}],children:"You buy"}),jsxRuntime.jsx(reactNative.Text,{style:[le.flowValue,{color:w.card.titleColor,fontFamily:R.medium}],children:"USDC"})]}),jsxRuntime.jsx(Wr,{size:16,color:w.card.actionColor,strokeWidth:2}),jsxRuntime.jsxs(reactNative.View,{style:le.flowStep,children:[jsxRuntime.jsxs(reactNative.View,{style:le.flowIconWithBadge,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ue||er("/icons/tokens/png/usdc.png")},style:le.flowIconImageNoBadge}),jsxRuntime.jsx(reactNative.Image,{source:{uri:Qe||er("/icons/networks/png/polygon.png")},style:[le.flowNetworkBadge,{borderColor:k.background,borderRadius:w.badge.borderRadius}]})]}),jsxRuntime.jsx(reactNative.Text,{style:[le.flowLabel,{color:w.card.subtitleColor,fontFamily:R.regular}],children:"You receive"}),jsxRuntime.jsx(reactNative.Text,{style:[le.flowValue,{color:w.card.titleColor,fontFamily:R.medium}],children:q})]})]}),jsxRuntime.jsx(reactNative.View,{style:[le.onrampInfoBox,{backgroundColor:w.card.backgroundColor,borderRadius:w.card.borderRadius,borderWidth:w.card.borderWidth,borderColor:w.card.borderColor}],children:jsxRuntime.jsx(reactNative.Text,{style:[le.onrampInfoText,{color:w.card.descriptionColor,fontFamily:R.regular}],children:"The wallet address displayed in the payment provider is a temporary deposit address. Your funds will be automatically converted and deposited into your account."})})]}):null}function MS({visible:e,onClose:t,url:r,providerName:o,colors:n,fonts:s,borderTopLeftRadius:i,borderTopRightRadius:a}){return jsxRuntime.jsxs(zt,{visible:e,onClose:t,closeOnBackdropPress:false,enablePanDownToClose:false,showHandle:false,heightPercent:.92,noPadding:true,borderTopLeftRadius:i,borderTopRightRadius:a,children:[jsxRuntime.jsxs(reactNative.View,{style:js.header,children:[jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:t,style:js.headerButton,hitSlop:{top:10,bottom:10,left:10,right:10},children:jsxRuntime.jsx(dt,{size:20,color:n.foregroundMuted,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:[js.headerTitle,{color:n.foreground,fontFamily:s.medium}],children:o}),jsxRuntime.jsx(reactNative.View,{style:js.headerSpacer})]}),r&&jsxRuntime.jsx(reactNative.View,{style:js.container,children:jsxRuntime.jsx(reactNativeWebview.WebView,{source:{uri:r},style:js.webView,startInLoadingState:true,renderLoading:()=>jsxRuntime.jsx(reactNative.View,{style:js.loading,children:jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"large",color:n.primary})})})})]})}var js=reactNative.StyleSheet.create({header:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingTop:16,paddingBottom:8},headerButton:{width:28,height:28,alignItems:"center",justifyContent:"center"},headerTitle:{fontSize:16,fontWeight:"500",flex:1,textAlign:"center"},headerSpacer:{width:28,height:28},container:{flex:1},webView:{flex:1},loading:{position:"absolute",top:0,left:0,right:0,bottom:0,alignItems:"center",justifyContent:"center"}}),le=reactNative.StyleSheet.create({amountViewContainer:{flex:1},scrollContainer:{flex:1},scrollContent:{padding:16,paddingBottom:16},currencySelector:{alignItems:"center",marginBottom:16},currencyButton:{flexDirection:"row",alignItems:"center",gap:6,paddingHorizontal:12,paddingVertical:8},currencyText:{fontSize:14,fontWeight:"500"},currencyIcon:{width:24,height:24,borderRadius:12},amountContainer:{alignItems:"center",marginBottom:24},amountInputRow:{flexDirection:"row",alignItems:"center",marginBottom:8},currencySymbol:{fontSize:48,fontWeight:"300"},amountInput:{fontSize:48,fontWeight:"300",minWidth:50},usdcPreview:{fontSize:14},quickAmounts:{flexDirection:"row",justifyContent:"center",gap:12,marginBottom:24},quickAmountButton:{paddingHorizontal:20,paddingVertical:10},quickAmountText:{fontSize:14,fontWeight:"500"},validationError:{fontSize:12,textAlign:"center",marginTop:12,paddingHorizontal:16},providerSection:{marginBottom:24},providerHeader:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",marginBottom:8},providerLabel:{fontSize:12,fontWeight:"500"},refreshText:{fontSize:10},providerButton:{padding:16},disabled:{opacity:.5},providerLoading:{flexDirection:"row",alignItems:"center",gap:12},loadingText:{fontSize:14},providerContent:{flexDirection:"row",justifyContent:"space-between",alignItems:"center"},providerInfo:{flex:1},autoPickedText:{fontSize:12,marginBottom:6},providerRow:{flexDirection:"row",alignItems:"center",gap:12},providerIcon:{width:32,height:32,borderRadius:16},providerIconPlaceholder:{width:32,height:32,borderRadius:8},providerIconImage:{width:32,height:32,borderRadius:8},providerName:{fontSize:14,fontWeight:"500"},bestPriceText:{fontSize:11,marginTop:2},noProviderText:{fontSize:14,textAlign:"center"},errorText:{fontSize:12,marginTop:8},continueButtonContainer:{padding:16,paddingBottom:48},continueButton:{paddingVertical:16,alignItems:"center"},continueButtonText:{fontSize:16,fontWeight:"600"},webViewHeader:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingTop:16,paddingBottom:8},webViewHeaderButton:{width:28,height:28,alignItems:"center",justifyContent:"center"},webViewHeaderTitle:{fontSize:16,fontWeight:"500",flex:1,textAlign:"center"},webViewHeaderSpacer:{width:28,height:28},webViewContainer:{flex:1},webView:{flex:1},webViewLoading:{position:"absolute",top:0,left:0,right:0,bottom:0,alignItems:"center",justifyContent:"center"},providerModalList:{flex:1,paddingHorizontal:12,marginTop:8},providerModalListContent:{paddingBottom:72},quotesList:{gap:8,paddingBottom:24,minHeight:468},quoteItem:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",padding:12},quoteLeft:{flexDirection:"row",alignItems:"center",gap:12},quoteIcon:{width:40,height:40,borderRadius:20},quoteName:{fontSize:14,fontWeight:"500"},quoteRight:{alignItems:"flex-end"},quoteAmount:{fontSize:14,fontWeight:"500"},quoteSource:{fontSize:12},onrampContainer:{flex:1,padding:16,alignItems:"center",paddingTop:24},onrampProviderIcon:{width:64,height:64,borderRadius:16},onrampTitle:{fontSize:18,fontWeight:"600",textAlign:"center",marginTop:20,marginBottom:8,paddingHorizontal:16},onrampSubtitle:{fontSize:14,textAlign:"center",marginBottom:24},flowDiagram:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:20,paddingHorizontal:24,borderRadius:12,width:"100%"},flowIconWithBadge:{position:"relative",width:24,height:24,marginBottom:4},flowIconImageNoBadge:{width:24,height:24,borderRadius:12},flowNetworkBadge:{position:"absolute",bottom:-4,right:-6,width:14,height:14,borderWidth:2},onrampInfoBox:{marginTop:16,padding:16,width:"100%"},onrampInfoText:{fontSize:13,lineHeight:20},flowStep:{alignItems:"center"},flowIcon:{width:28,height:28,borderRadius:14,marginBottom:4},flowIconImage:{width:24,height:24,borderRadius:12,marginBottom:4},flowLabel:{fontSize:10},flowValue:{fontSize:14,fontWeight:"500"}});function HS(e){try{let t=new Date(e);return t.toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})+" at "+t.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}catch{return e}}function jS(e){return e?`$${parseFloat(e).toFixed(2)}`:"$0.00"}function Xd({execution:e,onPress:t}){let {colors:r,fonts:o,components:n}=A(),s=n.depositTracker.executionRow.card,i=e.status==="pending"||e.status==="waiting"||e.status==="delayed";e.status==="succeeded";let l=ie(Ue(e.destination_token_metadata,"png")||er("/icons/tokens/png/usdc.png")),c=i?"Deposit Processing":"Deposit Completed",p=HS(e.created_at||new Date().toISOString()),h=jS(e.source_amount_usd);return jsxRuntime.jsxs(Lr,{cardTokens:s,onPress:t,contentStyle:wi.container,children:[jsxRuntime.jsxs(reactNative.View,{style:wi.iconContainer,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:l},style:wi.tokenIcon}),jsxRuntime.jsx(reactNative.View,{style:[wi.statusBadge,{backgroundColor:i?r.warning:r.success,borderColor:s.backgroundColor}],children:i?jsxRuntime.jsx(ca,{size:12,color:"#FFFFFF",strokeWidth:2.5}):jsxRuntime.jsx(dt,{size:12,color:"#FFFFFF",strokeWidth:3})})]}),jsxRuntime.jsxs(reactNative.View,{style:wi.textContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[wi.title,{color:s.titleColor,fontFamily:o.medium}],children:c}),jsxRuntime.jsx(reactNative.Text,{style:[wi.dateTime,{color:s.subtitleColor,fontFamily:o.regular}],children:p})]}),jsxRuntime.jsxs(reactNative.View,{style:wi.rightContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[wi.amount,{color:s.textRightColor,fontFamily:o.medium}],children:h}),jsxRuntime.jsx(Wr,{size:20,color:s.actionColor,strokeWidth:2})]})]})}var wi=reactNative.StyleSheet.create({container:{flexDirection:"row",alignItems:"center",paddingHorizontal:16,paddingVertical:12},iconContainer:{position:"relative",marginRight:12},tokenIcon:{width:40,height:40,borderRadius:20},statusBadge:{position:"absolute",bottom:-4,right:-4,width:22,height:22,borderRadius:11,alignItems:"center",justifyContent:"center",borderWidth:2},textContainer:{flex:1,gap:2},title:{fontSize:16,fontWeight:"500"},dateTime:{fontSize:13},rightContainer:{flexDirection:"row",alignItems:"center",gap:8},amount:{fontSize:16,fontWeight:"500"}});function Lg(e,t){let r={solana:"Solana",ethereum:"Ethereum",bitcoin:"Bitcoin",n1:"N1",cardano:"Cardano",algorand:"Algorand",xrpl:"XRPL"};return e==="ethereum"?{1:"Ethereum",137:"Polygon",8453:"Base",42161:"Arbitrum",10:"Optimism"}[t]||r[e]||e:r[e]||e}function Bg(e,t=6){if(!e)return "\u2014";try{let r=Number(e)/Math.pow(10,t);return r===0?"0.00":r>=1?r.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2}):r.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:8,minimumSignificantDigits:2,maximumSignificantDigits:6})}catch{return "0.00"}}function qS(e){return e?`$${parseFloat(e).toFixed(2)}`:"$0.00"}var Ag=e=>!e||e.length<12?e:`${e.slice(0,12)}...${e.slice(-4)}`;function Wg(e){if(!e)return "";let t=e.indexOf(".");return t===-1?e.toUpperCase():e.slice(0,t).toUpperCase()+e.slice(t)}function QS(e){try{let t=new Date(e);return t.toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})+" at "+t.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}catch{return e}}function KS({count:e=4}){let{colors:t,components:r}=A(),o=ws.useRef(new reactNative.Animated.Value(.5)).current,n=r.depositTracker.executionRow.card,s=t.cardHover;return ws.useEffect(()=>{let i=reactNative.Animated.loop(reactNative.Animated.sequence([reactNative.Animated.timing(o,{toValue:1,duration:800,useNativeDriver:true}),reactNative.Animated.timing(o,{toValue:.5,duration:800,useNativeDriver:true})]));return i.start(),()=>i.stop()},[o]),jsxRuntime.jsx(reactNative.View,{style:$s.list,children:Array.from({length:e}).map((i,a)=>jsxRuntime.jsxs(reactNative.View,{style:[$s.row,{backgroundColor:n.backgroundColor,borderRadius:n.borderRadius??12,borderWidth:n.borderWidth,borderColor:n.borderColor}],children:[jsxRuntime.jsx(reactNative.Animated.View,{style:[$s.icon,{backgroundColor:s,opacity:o}]}),jsxRuntime.jsxs(reactNative.View,{style:$s.textBlock,children:[jsxRuntime.jsx(reactNative.Animated.View,{style:[$s.titleBar,{backgroundColor:s,opacity:o}]}),jsxRuntime.jsx(reactNative.Animated.View,{style:[$s.subtitleBar,{backgroundColor:s,opacity:o}]})]}),jsxRuntime.jsx(reactNative.Animated.View,{style:[$s.amountBar,{backgroundColor:s,opacity:o}]})]},a))})}var $s=reactNative.StyleSheet.create({list:{paddingTop:16,paddingHorizontal:16,gap:12},row:{flexDirection:"row",alignItems:"center",paddingHorizontal:16,paddingVertical:12},icon:{width:40,height:40,borderRadius:20,marginRight:12},textBlock:{flex:1,gap:6},titleBar:{height:14,width:"65%",borderRadius:7},subtitleBar:{height:11,width:"45%",borderRadius:5.5},amountBar:{height:14,width:50,borderRadius:7,marginLeft:12}});function ff({active:e,onClose:t,executions:r,externalUserId:o,publishableKey:n}){let{colors:s,fonts:i,components:a}=A(),[l,c]=ws.useState(r),[p,h]=ws.useState(false),[T,d]=ws.useState(null),[f,C]=ws.useState(false),v=ws.useRef(null);ws.useEffect(()=>{if(!e||!o)return;let u=async()=>{h(true);try{let F=[...(await mn(o,n,"deposit")).data].sort((L,V)=>{let D=L.created_at?new Date(L.created_at).getTime():0;return (V.created_at?new Date(V.created_at).getTime():0)-D});c(F);}catch(y){console.error("Failed to fetch executions:",y),c(r);}finally{h(false);}};u();let S=setInterval(u,1e4);return ()=>clearInterval(S)},[e,o,n,r]),ws.useEffect(()=>{r.length>0&&c(u=>{let S=new Set(u.map(F=>F.id)),y=r.filter(F=>!S.has(F.id));return y.length>0?[...y,...u]:u});},[r]),ws.useEffect(()=>{e||d(null);},[e]);let x=u=>{d(u);},k=()=>{d(null),C(false);},R=()=>{d(null),t();},w=()=>{if(!T)return null;let u=T,S=u.status==="pending"||u.status==="waiting"||u.status==="delayed",y=u.status==="succeeded",F=ie(Ue(u.destination_token_metadata,"png")||er("/icons/tokens/png/usdc.png")),L=u.provider_metadata?.details,V=L?.currencyIn,D=L?.currencyOut;V?.currency?.symbol||"USDC";D?.currency?.symbol||"USDC";let M=Bg(u.source_amount_base_unit,u.source_token_metadata?.decimals),Ve=Bg(u.destination_amount_base_unit,u.destination_token_metadata?.decimals),se=qS(u.source_amount_usd),Le=Lg(u.source_chain_type,u.source_chain_id),J=Lg(u.destination_chain_type,u.destination_chain_id),pe=()=>{u.explorer_url&&reactNative.Linking.openURL(u.explorer_url);},ee=()=>{u.destination_explorer_url&&reactNative.Linking.openURL(u.destination_explorer_url);};return jsxRuntime.jsxs(At,{ref:v,style:Ke.scrollContainer,contentContainerStyle:Ke.detailsContent,showsVerticalScrollIndicator:false,children:[jsxRuntime.jsxs(reactNative.View,{style:Ke.iconSection,children:[jsxRuntime.jsxs(reactNative.View,{style:Ke.iconWrapper,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:F},style:Ke.tokenIcon}),jsxRuntime.jsx(reactNative.View,{style:[Ke.statusBadge,{backgroundColor:S?s.warning:s.success,borderColor:s.background}],children:S?jsxRuntime.jsx(lr,{size:14,color:"#FFFFFF",strokeWidth:2}):jsxRuntime.jsx(dt,{size:14,color:"#FFFFFF",strokeWidth:2})})]}),jsxRuntime.jsxs(reactNative.View,{style:Ke.statusRow,children:[jsxRuntime.jsx(reactNative.View,{style:[Ke.statusDot,{backgroundColor:S?s.warning:s.success}]}),jsxRuntime.jsx(reactNative.Text,{style:[Ke.statusText,{color:a.container.titleColor,fontFamily:i.semibold}],children:S?"Processing":"Completed"})]}),jsxRuntime.jsx(reactNative.Text,{style:[Ke.dateText,{color:a.container.subtitleColor,fontFamily:i.regular}],children:QS(u.created_at||new Date().toISOString())})]}),jsxRuntime.jsxs(reactNative.View,{style:[Ke.card,{backgroundColor:a.card.backgroundColor,borderRadius:a.card.borderRadius,borderWidth:a.card.borderWidth,borderColor:a.card.borderColor}],children:[jsxRuntime.jsxs(reactNative.View,{style:Ke.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ke.cardLabel,{color:a.card.rowLeftLabel,fontFamily:i.regular}],children:"Amount Sent"}),jsxRuntime.jsxs(reactNative.Text,{style:[Ke.cardValue,{color:a.card.rowRightLabel,fontFamily:i.medium}],children:[M," ",Wg(u.source_currency)]})]}),jsxRuntime.jsx(reactNative.View,{style:[Ke.cardDivider,{backgroundColor:s.border}]}),jsxRuntime.jsxs(reactNative.View,{style:Ke.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ke.cardLabel,{color:a.card.rowLeftLabel,fontFamily:i.regular}],children:"Amount Received"}),jsxRuntime.jsxs(reactNative.Text,{style:[Ke.cardValue,{color:a.card.rowRightLabel,fontFamily:i.medium}],children:[Ve," ",Wg(u.destination_currency)]})]}),jsxRuntime.jsx(reactNative.View,{style:[Ke.cardDivider,{backgroundColor:s.border}]}),jsxRuntime.jsxs(reactNative.View,{style:Ke.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ke.cardLabel,{color:a.card.rowLeftLabel,fontFamily:i.regular}],children:"USD Value"}),jsxRuntime.jsx(reactNative.Text,{style:[Ke.cardValue,{color:a.card.rowRightLabel,fontFamily:i.medium}],children:se})]}),jsxRuntime.jsx(reactNative.View,{style:[Ke.cardDivider,{backgroundColor:s.border}]}),jsxRuntime.jsxs(reactNative.View,{style:Ke.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ke.cardLabel,{color:a.card.rowLeftLabel,fontFamily:i.regular}],children:"Source Network"}),jsxRuntime.jsx(reactNative.Text,{style:[Ke.cardValue,{color:a.card.rowRightLabel,fontFamily:i.medium}],children:Le})]}),jsxRuntime.jsx(reactNative.View,{style:[Ke.cardDivider,{backgroundColor:s.border}]}),jsxRuntime.jsxs(reactNative.View,{style:Ke.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ke.cardLabel,{color:a.card.rowLeftLabel,fontFamily:i.regular}],children:"Destination Network"}),jsxRuntime.jsx(reactNative.Text,{style:[Ke.cardValue,{color:a.card.rowRightLabel,fontFamily:i.medium}],children:J})]})]}),jsxRuntime.jsxs(reactNative.TouchableOpacity,{onPress:()=>{let U=!f;C(U),U?setTimeout(()=>{v.current?.scrollToEnd({animated:true});},100):v.current?.scrollTo({y:0,animated:true});},style:Ke.toggleButton,activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ke.toggleText,{color:a.container.actionTitle,fontFamily:i.regular}],children:f?"See less":"See more details"}),f?jsxRuntime.jsx(_n,{size:14,color:a.container.actionColor,strokeWidth:2}):jsxRuntime.jsx(lr,{size:14,color:a.container.actionColor,strokeWidth:2})]}),f&&jsxRuntime.jsxs(reactNative.View,{style:[Ke.card,{backgroundColor:a.card.backgroundColor,borderRadius:a.card.borderRadius,borderWidth:a.card.borderWidth,borderColor:a.card.borderColor}],children:[u.explorer_url&&jsxRuntime.jsxs(reactNative.View,{children:[jsxRuntime.jsxs(reactNative.TouchableOpacity,{onPress:pe,style:Ke.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ke.cardLabel,{color:a.card.rowLeftLabel,fontFamily:i.regular}],children:"Deposit Tx"}),jsxRuntime.jsxs(reactNative.View,{style:Ke.cardRowRight,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ke.cardValue,{color:a.card.rowRightLabel,fontFamily:i.medium}],children:Ag(u.transaction_hash)}),jsxRuntime.jsx(Jo,{size:14,color:a.card.actionIcon,strokeWidth:2})]})]}),jsxRuntime.jsx(reactNative.View,{style:[Ke.cardDivider,{backgroundColor:s.border}]})]}),u.destination_explorer_url&&y&&jsxRuntime.jsxs(reactNative.TouchableOpacity,{onPress:ee,style:Ke.cardRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ke.cardLabel,{color:a.card.rowLeftLabel,fontFamily:i.regular}],children:"Completion Tx"}),jsxRuntime.jsxs(reactNative.View,{style:Ke.cardRowRight,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ke.cardValue,{color:a.card.rowRightLabel,fontFamily:i.medium}],children:Ag(u.destination_transaction_hashes[0])}),jsxRuntime.jsx(Jo,{size:14,color:a.card.actionIcon,strokeWidth:2})]})]})]})]})},_=p&&l.length===0;return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(Kr,{title:T?"Deposit Details":"Deposit Tracker",onClose:R,showClose:!T,showBack:!!T,onBack:k}),T?w():_?jsxRuntime.jsx(KS,{}):jsxRuntime.jsx(At,{style:Ke.scrollContainer,contentContainerStyle:Ke.scrollContent,showsVerticalScrollIndicator:false,children:l.length===0?jsxRuntime.jsxs(reactNative.View,{style:Ke.emptyContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[Ke.emptyText,{color:a.container.titleColor,fontFamily:i.medium}],children:"No deposits yet"}),jsxRuntime.jsx(reactNative.Text,{style:[Ke.emptySubtext,{color:a.container.subtitleColor,fontFamily:i.regular}],children:"Your deposit history will appear here"})]}):jsxRuntime.jsx(reactNative.View,{style:Ke.executionsList,children:l.map(u=>jsxRuntime.jsx(Xd,{execution:u,onPress:()=>x(u)},u.id))})})]})}var Ke=reactNative.StyleSheet.create({scrollContainer:{flex:1,paddingTop:16},scrollContent:{paddingHorizontal:16,paddingBottom:40},emptyContainer:{paddingVertical:40,paddingHorizontal:16,alignItems:"center"},emptyText:{fontSize:14,marginBottom:4},emptySubtext:{fontSize:12},executionsList:{paddingTop:8,gap:12},detailsContent:{paddingHorizontal:16,paddingBottom:32},iconSection:{alignItems:"center",marginBottom:24},iconWrapper:{position:"relative",marginBottom:12},tokenIcon:{width:72,height:72,borderRadius:36},statusBadge:{position:"absolute",bottom:0,right:0,width:28,height:28,borderRadius:14,alignItems:"center",justifyContent:"center",borderWidth:3},statusRow:{flexDirection:"row",alignItems:"center",gap:6,marginBottom:4},statusDot:{width:8,height:8,borderRadius:4},statusText:{fontSize:16,fontWeight:"600"},dateText:{fontSize:14},card:{borderRadius:12,marginBottom:12,overflow:"hidden"},cardRow:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",paddingVertical:14,paddingHorizontal:16},cardRowRight:{flexDirection:"row",alignItems:"center",gap:8},cardDivider:{height:1,marginHorizontal:16},cardLabel:{fontSize:14},cardValue:{fontSize:14,fontWeight:"500"},toggleButton:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:12,paddingHorizontal:4},toggleText:{fontSize:14},buttonSection:{marginTop:12,gap:10},actionButton:{flexDirection:"row",alignItems:"center",paddingVertical:16,paddingHorizontal:16,borderRadius:12},buttonIconLeft:{marginRight:12},buttonIconRight:{marginLeft:12},buttonText:{color:"#FFFFFF",fontSize:14,fontWeight:"600",flex:1,textAlign:"left"},hintText:{fontSize:12,textAlign:"center",marginTop:8}});function mc(e,t=true){let[r,o]=ws.useState(null),[n,s]=ws.useState(null),[i,a]=ws.useState(false),[l,c]=ws.useState(false),[p,h]=ws.useState(null),[T,d]=ws.useState(null);ws.useEffect(()=>{!t||r||(a(true),Vl().then(x=>{o(x),h(null);}).catch(x=>{h(x instanceof Error?x:new Error(String(x)));}).finally(()=>{a(false);}));},[t,r]),ws.useEffect(()=>{!t||!e||n||(c(true),Dl(e).then(x=>{s(x),d(null);}).catch(x=>{d(x instanceof Error?x:new Error(String(x)));}).finally(()=>{c(false);}));},[t,e,n]);let f=i||l,C=p||T||null,v=null;if(r&&n){let x=n.blocked_country_codes||[],k=r.alpha2.toUpperCase();v=!x.some(R=>R.toUpperCase()===k);}return {isAllowed:v,alpha2:r?.alpha2?.toLowerCase()??null,country:r?.country??null,isLoading:f,error:C}}var gf="unifold_recent_tokens",XS=5,Hg=[{symbol:"ETH",chainType:"ethereum",chainId:"1"},{symbol:"SOL",chainType:"solana",chainId:"mainnet"},{symbol:"USDC",chainType:"solana",chainId:"mainnet"},{symbol:"POL",chainType:"ethereum",chainId:"137"},{symbol:"BNB",chainType:"ethereum",chainId:"56"},{symbol:"BTC",chainType:"bitcoin",chainId:"mainnet"}];async function nu(){try{let e=await Tp__default.default.getItem(gf);return e?JSON.parse(e):[]}catch{return []}}async function eT(e){try{let r=(await nu()).filter(n=>!(n.symbol===e.symbol&&n.chainType===e.chainType&&n.chainId===e.chainId));r.unshift(e);let o=r.slice(0,XS);await Tp__default.default.setItem(gf,JSON.stringify(o));}catch{}}async function tT(e){try{let r=(await nu()).filter(o=>!(o.symbol===e.symbol&&o.chainType===e.chainType&&o.chainId===e.chainId));return await Tp__default.default.setItem(gf,JSON.stringify(r)),r}catch{return []}}function yf({visible:e,onClose:t,tokens:r,selectedToken:o,selectedChainKey:n,onSelect:s,borderTopLeftRadius:i,borderTopRightRadius:a,hideQuickSelect:l=false,marginHorizontal:c,heightPercent:p=.9,showHandle:h=true}){let{colors:T,fonts:d,components:f}=A(),[C,v]=ws.useState(""),[x,k]=ws.useState([]);ws.useEffect(()=>{e&&nu().then(k);},[e]),ws.useEffect(()=>{e||v("");},[e]);let R=ws.useMemo(()=>{let y=[];return r.forEach(F=>{F.chains.forEach(L=>{y.push({token:F,chain:L});});}),y},[r]),w=ws.useMemo(()=>{let y=[],F=new Set,L=(V,D,O,N)=>{let M=`${V}-${D}:${O}`;if(F.has(M))return;let Ve=r.find(Le=>Le.symbol===V);if(!Ve)return;let se=Ve.chains.find(Le=>Le.chain_type===D&&Le.chain_id===O);se&&(F.add(M),y.push({token:Ve,chain:se,isRecent:N}));};return x.forEach(V=>{L(V.symbol,V.chainType,V.chainId,true);}),Hg.forEach(V=>{L(V.symbol,V.chainType,V.chainId,false);}),y},[r,x]),_=ws.useMemo(()=>{if(!C.trim())return R;let y=C.toLowerCase();return R.filter(({token:F,chain:L})=>F.symbol.toLowerCase().includes(y)||F.name.toLowerCase().includes(y)||L.chain_name.toLowerCase().includes(y))},[R,C]),m=(y,F,L)=>Hg.some(V=>V.symbol===y&&V.chainType===F&&V.chainId===L),u=async(y,F)=>{let L=`${F.chain_type}:${F.chain_id}`;if(!m(y.symbol,F.chain_type,F.chain_id)){await eT({symbol:y.symbol,chainType:F.chain_type,chainId:F.chain_id});let V=await nu();k(V);}v(""),s(y.symbol,L),t();},S=async(y,F)=>{let L=await tT({symbol:y.symbol,chainType:F.chain_type,chainId:F.chain_id});k(L);};return jsxRuntime.jsxs(zt,{visible:e,onClose:t,closeOnBackdropPress:true,showHandle:h,heightPercent:p,borderTopLeftRadius:i,borderTopRightRadius:a,marginHorizontal:c,children:[jsxRuntime.jsxs(reactNative.View,{style:[Zt.header,!h&&{paddingTop:20}],children:[jsxRuntime.jsx(reactNative.View,{style:Zt.headerSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[Zt.headerTitle,{color:f.header.titleColor,fontFamily:d.medium}],children:"Select token to deposit"}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:t,style:Zt.closeButton,hitSlop:{top:12,bottom:12,left:12,right:12},children:jsxRuntime.jsx(Rt,{size:20,color:f.header.buttonColor,strokeWidth:2})})]}),jsxRuntime.jsx(reactNative.View,{style:Zt.searchContainer,children:jsxRuntime.jsx(reactNative.TextInput,{style:[Zt.searchInput,{backgroundColor:f.search.backgroundColor,color:f.search.inputColor,fontFamily:d.regular,borderRadius:f.input.borderRadius,borderWidth:f.input.borderWidth,borderColor:f.input.borderColor}],placeholder:"Search",placeholderTextColor:f.search.placeholderColor,value:C,onChangeText:v,autoCapitalize:"none",autoCorrect:false})}),!l&&w.length>0&&!C&&jsxRuntime.jsxs(reactNative.View,{style:Zt.quickSelectSection,children:[jsxRuntime.jsx(reactNative.Text,{style:[Zt.sectionLabel,{color:f.list.titleSectionColor,fontFamily:d.regular}],children:"Quick select"}),jsxRuntime.jsx(reactNative.ScrollView,{horizontal:true,showsHorizontalScrollIndicator:false,keyboardShouldPersistTaps:"handled",contentContainerStyle:Zt.quickSelectScroll,children:w.map(({token:y,chain:F,isRecent:L})=>{let V=`${F.chain_type}:${F.chain_id}`;y.symbol===o&&V===n;return jsxRuntime.jsxs(reactNative.View,{children:[L&&jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>S(y,F),style:Zt.removeButton,children:jsxRuntime.jsx(Rt,{size:12,color:T.foregroundMuted,strokeWidth:2})}),jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>u(y,F),activeOpacity:.7,style:[Zt.quickSelectItem,{backgroundColor:f.card.backgroundColor,borderRadius:f.card.borderRadius,borderWidth:f.card.borderWidth,borderColor:f.card.borderColor}],children:[jsxRuntime.jsxs(reactNative.View,{style:Zt.tokenIconContainer,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(y,"png"))},style:Zt.quickSelectIcon}),jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(F,"png"))},style:[Zt.quickSelectChainBadge,{borderColor:f.card.backgroundColor,borderRadius:f.badge.borderRadius}]})]}),jsxRuntime.jsxs(reactNative.View,{style:Zt.quickSelectText,children:[jsxRuntime.jsx(reactNative.Text,{style:[Zt.quickSelectSymbol,{color:f.card.titleColor,fontFamily:d.medium}],children:y.symbol}),jsxRuntime.jsx(reactNative.Text,{style:[Zt.quickSelectChain,{color:f.card.subtitleColor,fontFamily:d.regular}],children:F.chain_name})]})]})]},`quick-${y.symbol}-${V}`)})})]}),jsxRuntime.jsx(reactNative.Text,{style:[Zt.sectionLabel,{color:f.list.titleSectionColor,fontFamily:d.regular}],children:"All supported tokens"}),jsxRuntime.jsx(At,{style:Zt.tokenList,showsVerticalScrollIndicator:false,keyboardShouldPersistTaps:"handled",contentContainerStyle:Zt.tokenListContent,children:_.length===0?jsxRuntime.jsx(reactNative.View,{style:Zt.emptyState,children:jsxRuntime.jsx(reactNative.Text,{style:[Zt.emptyText,{color:T.foregroundMuted,fontFamily:d.regular}],children:"No tokens found"})}):_.map(({token:y,chain:F})=>{let L=`${F.chain_type}:${F.chain_id}`,V=y.symbol===o&&L===n;return jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>u(y,F),activeOpacity:.7,style:[Zt.tokenItem,{backgroundColor:V?f.card.backgroundColor:"transparent"}],children:[jsxRuntime.jsxs(reactNative.View,{style:Zt.tokenIconContainerLarge,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(y,"png"))},style:Zt.tokenIcon}),jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(F,"png"))},style:[Zt.tokenChainBadge,{borderColor:f.card.backgroundColor,borderRadius:f.badge.borderRadius}]})]}),jsxRuntime.jsxs(reactNative.View,{style:Zt.tokenInfo,children:[jsxRuntime.jsx(reactNative.Text,{style:[Zt.tokenSymbol,{color:f.card.titleColor,fontFamily:d.medium}],children:y.symbol}),jsxRuntime.jsx(reactNative.Text,{style:[Zt.tokenChainName,{color:f.card.subtitleColor,fontFamily:d.regular}],children:F.chain_name})]}),jsxRuntime.jsxs(reactNative.Text,{style:[Zt.minDeposit,{color:f.card.labelColor,fontFamily:d.regular}],children:["Minimum:"," ",jsxRuntime.jsxs(reactNative.Text,{style:{color:f.card.labelHighlightRightColor,fontFamily:d.regular},children:["$",F.minimum_deposit_amount_usd]})]})]},`${y.symbol}-${L}`)})})]})}var Zt=reactNative.StyleSheet.create({header:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",padding:16},closeButton:{width:36,height:36,alignItems:"center",justifyContent:"center"},headerTitle:{fontSize:16,fontWeight:"500",textAlign:"center",flex:1},headerSpacer:{width:36},searchContainer:{paddingHorizontal:16,paddingBottom:12},searchInput:{height:40,paddingHorizontal:16,fontSize:14},quickSelectSection:{marginBottom:12},sectionLabel:{fontSize:12,paddingHorizontal:16,marginBottom:8},quickSelectScroll:{paddingHorizontal:16,gap:8},quickSelectItem:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},removeButton:{position:"absolute",top:-2,right:-6,zIndex:1,padding:2},tokenIconContainer:{position:"relative"},quickSelectIcon:{width:28,height:28,borderRadius:14},quickSelectChainBadge:{position:"absolute",bottom:-2,right:-2,width:14,height:14,borderRadius:7,borderWidth:2},quickSelectText:{alignItems:"flex-start"},quickSelectSymbol:{fontSize:12,fontWeight:"500"},quickSelectChain:{fontSize:10},tokenList:{flex:1},tokenListContent:{paddingHorizontal:16,paddingBottom:72,gap:4},emptyState:{padding:32,alignItems:"center"},emptyText:{fontSize:14},tokenItem:{flexDirection:"row",alignItems:"center",gap:12,padding:12,borderRadius:12},tokenIconContainerLarge:{position:"relative"},tokenIcon:{width:40,height:40,borderRadius:20},tokenChainBadge:{position:"absolute",bottom:-4,right:-4,width:20,height:20,borderRadius:10,borderWidth:2},tokenInfo:{flex:1},tokenSymbol:{fontSize:14,fontWeight:"500"},tokenChainName:{fontSize:12},minDeposit:{fontSize:12}});var hc=(e,t)=>`${t}:${e}`,sT=e=>{let[t,r]=e.split(":");return {chainType:t,chainId:r}};function bf({externalUserId:e,publishableKey:t,recipientAddress:r,destinationChainType:o,destinationChainId:n,destinationTokenAddress:s,destinationTokenSymbol:i,defaultChainType:a,defaultChainId:l,defaultTokenAddress:c,depositConfirmationMode:p="auto_ui",onExecutionsChange:h,onDepositSuccess:T,onDepositError:d,onLatestExecution:f,onShowStatusSheet:C,onSelectedTokenIconUrl:v,wallets:x,borderTopLeftRadius:k,borderTopRightRadius:R,sheetBorderRadius:w}){let{colors:_,fonts:m,components:u}=A(),S=a&&l?`${a}:${l}`:"solana:mainnet",[y,F]=ws.useState("USDC"),[L,V]=ws.useState(S),[D,O]=ws.useState([]),[N,M]=ws.useState(!x?.length),Ve=x?.length?x:D,[se,Le]=ws.useState([]),[J,pe]=ws.useState(true),[ee,U]=ws.useState(false),[de,Z]=ws.useState(false),[he,it]=ws.useState(false),[Oe,te]=ws.useState([]),[je,Xe]=ws.useState(new Map),[qe]=ws.useState(()=>new Date),[ft,He]=ws.useState(null),[Ae,We]=ws.useState(false),[_e,be]=ws.useState(null),[Ge,Ye]=ws.useState(false);ws.useEffect(()=>{_e&&f?.(_e);},[_e]),ws.useEffect(()=>{Ae&&(C?.(true),We(false));},[Ae]);let at=new Map;se.forEach(K=>{K.chains.forEach(Re=>{let I=`${Re.chain_type}:${Re.chain_id}`;at.has(I)||at.set(I,Re);});});let Tr=Array.from(at.values()),$e=sT(L),Ie=Tr.find(K=>K.chain_type===$e.chainType&&K.chain_id===$e.chainId),et=Ie?.chain_type||"ethereum",lt=Ro(Ve,et),xe=lt?.address||"",ve=ws.useRef(false);ws.useEffect(()=>{async function K(){try{pe(!0),He(null);let I=await ni(t,s&&n&&o?{destination_token_address:s,destination_chain_id:n,destination_chain_type:o}:void 0);if(Le(I.data),I.data.length>0&&!ve.current){ve.current=!0;let b,B;if(a&&l)if(c)for(let H of I.data){let $=H.chains.find(q=>q.chain_type===a&&q.chain_id===l&&q.token_address.toLowerCase()===c.toLowerCase());if($){b=H,B=$;break}}else {let H=q=>q.chain_type===a&&q.chain_id===l,$=I.data.find(q=>q.symbol==="USDC"&&q.chains.some(H));if($)b=$,B=$.chains.find(H);else for(let q of I.data){let ue=q.chains.find(H);if(ue){b=q,B=ue;break}}}if(!b&&s)for(let H of I.data){let $=H.chains.find(q=>q.token_address.toLowerCase()===s.toLowerCase());if($){b=H,B=$;break}}b||(b=I.data.find(H=>H.symbol==="USDC"),b&&b.chains.length>0&&(B=b.chains[0])),b||(b=I.data.find(H=>H.symbol==="USDT"),b&&b.chains.length>0&&(B=b.chains[0])),b||(b=I.data[0],b.chains.length>0&&(B=b.chains[0])),b&&F(b.symbol),B&&V(hc(B.chain_id,B.chain_type));}}catch(Re){console.error("Error fetching supported tokens:",Re),He("Failed to load supported tokens"),d?.({message:"Failed to load supported tokens",error:Re});}finally{pe(false);}}K();},[t,s,n,o,a,l,c,d]),ws.useEffect(()=>{h&&h(Oe);},[Oe,h]),ws.useEffect(()=>{if(x?.length){M(false);return}if(D.length>0){M(false);return}let K=null,Re=false,I=async()=>{if(!Re){M(true);try{let b=await Mo({external_user_id:e,recipient_address:r,destination_chain_type:o,destination_chain_id:n,destination_token_address:s},t);Re||(O(b.data),He(null),M(!1));}catch(b){console.error("Error fetching wallets, retrying in 5s:",b),Re||(He(b instanceof Error?b.message:"Failed to load wallets"),M(false),K=setTimeout(I,5e3));}}};return I(),()=>{Re=true,K&&clearTimeout(K);}},[e,r,o,n,s,t,x,D.length]);let Ee=lt?.id??"",{showWaitingUi:ge,handleIveDeposited:ct}=Tn({depositConfirmationMode:p,depositAddress:xe,chain:L,externalUserId:e,publishableKey:t,modalOpenedAt:qe,depositWalletId:Ee,depositExecutions:Oe,trackedExecutions:je,setDepositExecutions:te,setTrackedExecutions:Xe,setLatestExecution:be,setShowStatusSheet:We,onDepositSuccess:T,onExecutionsChange:h,onDepositError:d});ws.useEffect(()=>{if(!se.length)return;let K=se.find(I=>I.symbol===y);if(!K||K.chains.length===0){let I=se.find(b=>b.symbol==="USDC")||se[0];I&&(F(I.symbol),I.chains.length>0&&V(hc(I.chains[0].chain_id,I.chains[0].chain_type)));return}if(!K.chains.some(I=>hc(I.chain_id,I.chain_type)===L)){let I=K.chains[0];V(hc(I.chain_id,I.chain_type));}},[y,se,L]);let Ft=se.find(K=>K.symbol===y),mt=Ue(Ft,"png")||void 0;ws.useEffect(()=>{v?.(mt);},[mt]);let Me=(Ft?.chains||[]).find(K=>hc(K.chain_id,K.chain_type)===L),wt=async()=>{if(xe)try{reactNative.Clipboard.setString(xe),U(!0),setTimeout(()=>U(!1),2e3);}catch(K){console.error("Failed to copy:",K);}},ot=Me?.estimated_price_impact_percent??0,Ce=Me?.max_slippage_percent??.25,ze=Me?.minimum_deposit_amount_usd??3;return J?jsxRuntime.jsxs(reactNative.View,{style:ae.loadingContainer,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"large",color:_.primary}),jsxRuntime.jsx(reactNative.Text,{style:[ae.loadingText,{color:_.foregroundMuted,fontFamily:m.regular}],children:"Loading currencies..."})]}):ft&&se.length===0?jsxRuntime.jsxs(reactNative.View,{style:ae.errorContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[ae.errorText,{color:_.error,fontFamily:m.regular}],children:ft}),jsxRuntime.jsx(reactNative.Text,{style:[ae.errorHint,{color:_.foregroundMuted,fontFamily:m.regular}],children:"Please check your network connection and try again."})]}):jsxRuntime.jsxs(reactNative.View,{style:ae.container,children:[jsxRuntime.jsxs(reactNative.View,{style:ae.selectorSection,children:[jsxRuntime.jsx(reactNative.Text,{style:[ae.selectorLabel,{color:u.card.labelColor,fontFamily:m.medium}],children:"Select token to deposit"}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>it(true),disabled:J||se.length===0,style:[ae.tokenSelectorButton,{backgroundColor:u.card.backgroundColor,borderRadius:u.card.borderRadius,borderWidth:u.card.borderWidth,borderColor:u.card.borderColor}],activeOpacity:.7,children:J?jsxRuntime.jsxs(reactNative.View,{style:ae.tokenSelectorLoading,children:[jsxRuntime.jsx(reactNative.View,{style:[ae.loadingIcon,{backgroundColor:_.cardHover}]}),jsxRuntime.jsxs(reactNative.View,{style:ae.loadingTextContainer,children:[jsxRuntime.jsx(reactNative.View,{style:[ae.loadingLine,{backgroundColor:_.cardHover,width:60}]}),jsxRuntime.jsx(reactNative.View,{style:[ae.loadingLine,{backgroundColor:_.cardHover,width:100,marginTop:4}]})]})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(reactNative.View,{style:ae.tokenIconWrapper,children:[Ft&&jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(Ft,"png"))},style:ae.tokenMainIcon}),(Me||Ie)&&jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(Me||Ie,"png"))},style:[ae.tokenChainBadge,{borderColor:u.card.backgroundColor,borderRadius:u.badge.borderRadius}]})]}),jsxRuntime.jsxs(reactNative.View,{style:ae.tokenSelectorInfo,children:[jsxRuntime.jsx(reactNative.Text,{style:[ae.tokenSelectorSymbol,{color:u.card.titleColor,fontFamily:m.semibold}],children:Ft?.symbol||y}),jsxRuntime.jsx(reactNative.Text,{style:[ae.tokenSelectorNetwork,{color:u.card.subtitleColor,fontFamily:m.regular}],numberOfLines:1,children:Me?.chain_name||Ie?.chain_name||"Select network"})]}),jsxRuntime.jsxs(reactNative.View,{style:ae.tokenSelectorRight,children:[jsxRuntime.jsxs(reactNative.Text,{style:[ae.minDepositText,{color:_.warning,fontFamily:m.medium}],children:["$",ze," minimum"]}),jsxRuntime.jsx(Wr,{size:16,color:u.card.actionColor,strokeWidth:2})]})]})})]}),jsxRuntime.jsx(yf,{visible:he,onClose:()=>it(false),tokens:se,selectedToken:y,selectedChainKey:L,onSelect:(K,Re)=>{F(K),V(Re);},borderTopLeftRadius:w?.tokenSelector?.borderTopLeftRadius??k,borderTopRightRadius:w?.tokenSelector?.borderTopRightRadius??R}),jsxRuntime.jsx(reactNative.View,{style:ae.qrContainer,children:jsxRuntime.jsx(reactNative.View,{style:[ae.qrWrapper,{backgroundColor:_.background,borderRadius:u.card.borderRadius,borderWidth:u.card.borderWidth>0?u.card.borderWidth:1,borderColor:u.card.borderColor}],children:N?jsxRuntime.jsxs(reactNative.View,{style:ae.qrLoading,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"small",color:_.primary}),jsxRuntime.jsx(reactNative.Text,{style:[ae.loadingText,{color:_.foregroundMuted,fontFamily:m.regular}],children:"Loading..."})]}):xe?jsxRuntime.jsx(ds,{value:xe,size:180,logoUri:ie(Ue(Me,"png")||er("/icons/networks/png/ethereum.png")),logoSize:45}):jsxRuntime.jsx(reactNative.View,{style:ae.qrLoading,children:jsxRuntime.jsx(reactNative.Text,{style:[ae.errorText,{color:_.error,fontFamily:m.regular}],children:"No address available"})})})}),jsxRuntime.jsxs(reactNative.View,{style:ae.addressSection,children:[jsxRuntime.jsxs(reactNative.View,{style:ae.addressHeader,children:[jsxRuntime.jsx(reactNative.Text,{style:[ae.addressLabel,{color:u.card.labelColor,fontFamily:m.medium}],children:"Deposit Address"}),ee&&jsxRuntime.jsxs(reactNative.View,{style:ae.copiedIndicator,children:[jsxRuntime.jsx(dt,{size:14,color:_.success,strokeWidth:2}),jsxRuntime.jsx(reactNative.Text,{style:[ae.copiedText,{color:_.success,fontFamily:m.regular}],children:"Copied"})]})]}),jsxRuntime.jsxs(Lr,{cardTokens:u.transferCrypto.depositAddress.card,onPress:!N&&xe?wt:void 0,contentStyle:ae.addressBox,children:[jsxRuntime.jsx(reactNative.Text,{style:[ae.addressText,{color:u.card.titleColor,fontFamily:m.regular}],numberOfLines:2,children:N?"Loading...":xe||"No address available"}),jsxRuntime.jsx(reactNative.View,{style:ae.addressCopyIcon,children:jsxRuntime.jsx(un,{size:16,color:u.card.actionColor,strokeWidth:1})})]})]}),jsxRuntime.jsxs(reactNative.View,{style:[ae.detailsCard,{backgroundColor:u.card.backgroundColor,borderRadius:u.card.borderRadius,borderWidth:u.card.borderWidth,borderColor:u.card.borderColor}],children:[jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>Z(!de),style:ae.detailsHeader,children:[jsxRuntime.jsxs(reactNative.View,{style:ae.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[ae.detailIcon,{backgroundColor:u.card.iconBackgroundColor,borderRadius:u.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(ho,{size:12,color:u.card.iconColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:[ae.detailsLabel,{color:u.card.titleColor,fontFamily:m.regular}],children:"Processing time: < 1 min"})]}),jsxRuntime.jsx(reactNative.View,{style:ae.chevronContainer,children:de?jsxRuntime.jsx(_n,{size:16,color:u.card.actionColor,strokeWidth:2}):jsxRuntime.jsx(lr,{size:16,color:u.card.actionColor,strokeWidth:2})})]}),de&&jsxRuntime.jsxs(reactNative.View,{style:ae.detailsContent,children:[jsxRuntime.jsxs(reactNative.View,{style:ae.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[ae.detailIcon,{backgroundColor:u.card.iconBackgroundColor,borderRadius:u.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(pn,{size:12,color:u.card.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[ae.detailsLabel,{color:u.card.titleColor,fontFamily:m.regular}],children:["Price impact: ",ot.toFixed(2),"%"]}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>Ye(true),hitSlop:{top:10,bottom:10,left:10,right:10},style:{marginLeft:-4},children:jsxRuntime.jsx(fn,{size:14,color:u.card.actionColor,strokeWidth:2})})]}),jsxRuntime.jsxs(reactNative.View,{style:ae.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[ae.detailIcon,{backgroundColor:u.card.iconBackgroundColor,borderRadius:u.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(So,{size:12,color:u.card.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[ae.detailsLabel,{color:u.card.titleColor,fontFamily:m.regular}],children:["Slippage: Auto \u2022 ",Ce.toFixed(2),"%"]}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>Ye(true),hitSlop:{top:10,bottom:10,left:10,right:10},style:{marginLeft:-4},children:jsxRuntime.jsx(fn,{size:14,color:u.card.actionColor,strokeWidth:2})})]}),jsxRuntime.jsxs(reactNative.View,{style:ae.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[ae.detailIcon,{backgroundColor:u.card.iconBackgroundColor,borderRadius:u.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(la,{size:12,color:u.card.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[ae.detailsLabel,{color:u.card.titleColor,fontFamily:m.regular}],children:["Need help?"," ",jsxRuntime.jsx(reactNative.Text,{style:{textDecorationLine:"underline"},children:"Contact support"})]})]})]})]}),jsxRuntime.jsx(bg,{depositConfirmationMode:p,depositAddress:xe,showWaitingUi:ge,latestExecution:_e,onIveDeposited:ct}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{style:ae.termsContainer,onPress:()=>reactNative.Linking.openURL("https://unifold.io/terms"),children:jsxRuntime.jsx(reactNative.Text,{style:[ae.termsText,{color:_.primary,fontFamily:m.regular}],children:"Terms apply"})}),jsxRuntime.jsxs(zt,{visible:Ge,onClose:()=>Ye(false),closeOnBackdropPress:true,showHandle:true,heightPercent:.55,maxHeightPercent:.9,borderTopLeftRadius:w?.infoSheet?.borderTopLeftRadius??k,borderTopRightRadius:w?.infoSheet?.borderTopRightRadius??R,children:[jsxRuntime.jsxs(reactNative.View,{style:[ae.sheetHeader,{borderBottomColor:_.border}],children:[jsxRuntime.jsx(reactNative.View,{style:ae.sheetHeaderSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[ae.sheetTitle,{color:u.header.titleColor,fontFamily:m.medium}],children:"Price Impact & Slippage"}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>Ye(false),style:ae.sheetCloseButton,children:jsxRuntime.jsx(Rt,{size:20,color:u.header.buttonColor,strokeWidth:2})})]}),jsxRuntime.jsxs(reactNative.View,{style:ae.infoSheetContent,children:[jsxRuntime.jsxs(reactNative.View,{style:[ae.infoCard,{backgroundColor:u.card.backgroundColor,borderRadius:u.card.borderRadius,borderWidth:u.card.borderWidth,borderColor:u.card.borderColor}],children:[jsxRuntime.jsxs(reactNative.View,{style:ae.infoCardHeader,children:[jsxRuntime.jsx(reactNative.View,{style:[ae.infoCardIcon,{backgroundColor:u.card.iconBackgroundColor,borderRadius:u.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(pn,{size:16,color:u.card.iconColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:[ae.infoCardTitle,{color:u.card.titleColor,fontFamily:m.medium}],children:"Price Impact"}),jsxRuntime.jsxs(reactNative.Text,{style:[ae.infoCardValue,{color:u.card.titleColor,fontFamily:m.medium}],children:[ot.toFixed(2),"%"]})]}),jsxRuntime.jsx(reactNative.Text,{style:[ae.infoCardDescription,{color:u.card.descriptionColor,fontFamily:m.regular}],children:"Price impact is the difference between the current market price and the price you'll receive for your swap. This occurs due to liquidity pool mechanics and trade size."})]}),jsxRuntime.jsxs(reactNative.View,{style:[ae.infoCard,{backgroundColor:u.card.backgroundColor,borderRadius:u.card.borderRadius,borderWidth:u.card.borderWidth,borderColor:u.card.borderColor}],children:[jsxRuntime.jsxs(reactNative.View,{style:ae.infoCardHeader,children:[jsxRuntime.jsx(reactNative.View,{style:[ae.infoCardIcon,{backgroundColor:u.card.iconBackgroundColor,borderRadius:u.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(So,{size:16,color:u.card.iconColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:[ae.infoCardTitle,{color:u.card.titleColor,fontFamily:m.medium}],children:"Max Slippage"}),jsxRuntime.jsxs(reactNative.Text,{style:[ae.infoCardValue,{color:u.card.titleColor,fontFamily:m.medium}],children:[Ce.toFixed(2),"%"]})]}),jsxRuntime.jsx(reactNative.Text,{style:[ae.infoCardDescription,{color:u.card.descriptionColor,fontFamily:m.regular}],children:"Max slippage is the maximum price difference you're willing to accept between when you submit a transaction and when it executes. Your transaction will revert if the price moves beyond this threshold."})]})]})]})]})}var ae=reactNative.StyleSheet.create({container:{flex:1,paddingHorizontal:16},loadingContainer:{padding:40,alignItems:"center",gap:12},loadingText:{fontSize:14},errorContainer:{padding:40,alignItems:"center",gap:8},errorText:{fontSize:14,textAlign:"center"},errorHint:{fontSize:12,textAlign:"center"},selectorSection:{marginBottom:12},selectorLabel:{fontSize:12,marginBottom:8},tokenSelectorButton:{flexDirection:"row",alignItems:"center",gap:12,padding:12},tokenSelectorLoading:{flexDirection:"row",alignItems:"center",gap:12,flex:1},loadingIcon:{width:40,height:40,borderRadius:20},loadingTextContainer:{flex:1},loadingLine:{height:12,borderRadius:6},tokenIconWrapper:{position:"relative"},tokenMainIcon:{width:40,height:40,borderRadius:20},tokenChainBadge:{position:"absolute",bottom:-4,right:-4,width:20,height:20,borderRadius:10,borderWidth:2},tokenSelectorInfo:{flex:1},tokenSelectorSymbol:{fontSize:14,fontWeight:"500"},tokenSelectorNetwork:{fontSize:12,marginTop:2},tokenSelectorRight:{flexDirection:"row",alignItems:"center",gap:8},minDepositText:{fontSize:12,fontWeight:"500"},qrContainer:{alignItems:"center",marginVertical:8},qrWrapper:{padding:16},qrLoading:{width:160,height:160,alignItems:"center",justifyContent:"center"},addressSection:{marginBottom:16},addressHeader:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",marginBottom:8},addressLabel:{fontSize:12},copiedIndicator:{flexDirection:"row",alignItems:"center",gap:4},copiedText:{fontSize:12,fontWeight:"500"},addressBox:{position:"relative",paddingHorizontal:12,paddingVertical:16},addressText:{fontSize:12,fontFamily:"monospace"},addressCopyIcon:{position:"absolute",right:12,top:0,bottom:0,justifyContent:"center"},detailsCard:{borderRadius:8,padding:4,marginBottom:16},detailsHeader:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",paddingVertical:8,paddingLeft:8,paddingRight:8},detailsContent:{paddingRight:12,paddingLeft:8,paddingBottom:12,gap:10},detailsRow:{flexDirection:"row",alignItems:"center",gap:8},detailIcon:{width:24,height:24,borderRadius:12,alignItems:"center",justifyContent:"center"},detailsLabel:{fontSize:13},chevronContainer:{},termsContainer:{alignItems:"center",paddingVertical:8},termsText:{fontSize:12,textDecorationLine:"underline"},sheetHeader:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",padding:16},sheetHeaderSpacer:{width:28},sheetTitle:{fontSize:16,fontWeight:"500",flex:1,textAlign:"center"},sheetCloseButton:{width:28,height:28,alignItems:"center",justifyContent:"center"},infoSheetContent:{paddingHorizontal:16,paddingBottom:32,gap:16},infoCard:{borderRadius:12,padding:16,gap:12},infoCardHeader:{flexDirection:"row",alignItems:"center",gap:10},infoCardIcon:{width:32,height:32,borderRadius:16,alignItems:"center",justifyContent:"center"},infoCardTitle:{fontSize:15,fontWeight:"600",flex:1},infoCardValue:{fontSize:15,fontWeight:"600"},infoCardDescription:{fontSize:13,lineHeight:20}});var Xa=(e,t)=>`${t}:${e}`,uT=e=>{let[t,r]=e.split(":");return {chainType:t,chainId:r}},pT=e=>e.length<=16?e:`${e.slice(0,8)}...${e.slice(-6)}`;function au({externalUserId:e,publishableKey:t,recipientAddress:r,destinationChainType:o,destinationChainId:n,destinationTokenAddress:s,destinationTokenSymbol:i,defaultChainType:a,defaultChainId:l,defaultTokenAddress:c,depositConfirmationMode:p="auto_ui",onExecutionsChange:h,onDepositSuccess:T,onDepositError:d,onLatestExecution:f,onShowStatusSheet:C,onSelectedTokenIconUrl:v,onShowInfoSheet:x,onInfoSheetData:k,wallets:R,borderTopLeftRadius:w,borderTopRightRadius:_,sheetBorderRadius:m}){let{colors:u,fonts:S,components:y}=A(),F=a&&l?`${a}:${l}`:"solana:mainnet",[L,V]=ws.useState("USDC"),[D,O]=ws.useState(F),[N,M]=ws.useState([]),[Ve,se]=ws.useState(!R?.length),Le=R?.length?R:N,[J,pe]=ws.useState([]),[ee,U]=ws.useState(true),[de,Z]=ws.useState(false),[he,it]=ws.useState(false),[Oe,te]=ws.useState(false),[je,Xe]=ws.useState([]),[qe,ft]=ws.useState(new Map),[He]=ws.useState(()=>new Date),[Ae,We]=ws.useState(null),[_e,be]=ws.useState(false),[Ge,Ye]=ws.useState(null),[at,Tr]=ws.useState(false),[$e,Ie]=ws.useState(false),[et,lt]=ws.useState(""),[xe,ve]=ws.useState(""),Ee=ws.useRef(new reactNative.Animated.Value(0)).current;ws.useEffect(()=>{let we=reactNative.Animated.loop(reactNative.Animated.timing(Ee,{toValue:1,duration:1500,easing:reactNative.Easing.linear,useNativeDriver:true}));return we.start(),()=>we.stop()},[Ee]);let ge=Ee.interpolate({inputRange:[0,1],outputRange:["0deg","360deg"]});ws.useEffect(()=>{Ge&&f?.(Ge);},[Ge]),ws.useEffect(()=>{_e&&(C?.(true),be(false));},[_e]);let ct=new Map;J.forEach(we=>{we.chains.forEach(ht=>{let tt=`${ht.chain_type}:${ht.chain_id}`;ct.has(tt)||ct.set(tt,ht);});});let Ft=Array.from(ct.values()),mt=uT(D),or=Ft.find(we=>we.chain_type===mt.chainType&&we.chain_id===mt.chainId),Me=or?.chain_type||"ethereum",wt=Ro(Le,Me),ot=wt?.address||"",Ce=ws.useRef(false);ws.useEffect(()=>{async function we(){try{U(!0),We(null);let tt=await ni(t,s&&n&&o?{destination_token_address:s,destination_chain_id:n,destination_chain_type:o}:void 0);if(pe(tt.data),tt.data.length>0&&!Ce.current){Ce.current=!0;let re,Lt;if(a&&l)if(c)for(let rt of tt.data){let Bt=rt.chains.find(Ht=>Ht.chain_type===a&&Ht.chain_id===l&&Ht.token_address.toLowerCase()===c.toLowerCase());if(Bt){re=rt,Lt=Bt;break}}else {let rt=Ht=>Ht.chain_type===a&&Ht.chain_id===l,Bt=tt.data.find(Ht=>Ht.symbol==="USDC"&&Ht.chains.some(rt));if(Bt)re=Bt,Lt=Bt.chains.find(rt);else for(let Ht of tt.data){let mo=Ht.chains.find(rt);if(mo){re=Ht,Lt=mo;break}}}if(!re&&s)for(let rt of tt.data){let Bt=rt.chains.find(Ht=>Ht.token_address.toLowerCase()===s.toLowerCase());if(Bt){re=rt,Lt=Bt;break}}re||(re=tt.data.find(rt=>rt.symbol==="USDC"),re&&re.chains.length>0&&(Lt=re.chains[0])),re||(re=tt.data.find(rt=>rt.symbol==="USDT"),re&&re.chains.length>0&&(Lt=re.chains[0])),re||(re=tt.data[0],re.chains.length>0&&(Lt=re.chains[0])),re&&V(re.symbol),Lt&&O(Xa(Lt.chain_id,Lt.chain_type));}}catch(ht){console.error("Error fetching supported tokens:",ht),We("Failed to load supported tokens"),d?.({message:"Failed to load supported tokens",error:ht});}finally{U(false);}}we();},[t,s,n,o,a,l,c,d]),ws.useEffect(()=>{h&&h(je);},[je,h]),ws.useEffect(()=>{if(R?.length){se(false);return}if(N.length>0){se(false);return}let we=null,ht=false,tt=async()=>{if(!ht){se(true);try{let re=await Mo({external_user_id:e,recipient_address:r,destination_chain_type:o,destination_chain_id:n,destination_token_address:s},t);ht||(M(re.data),We(null),se(!1));}catch(re){console.error("Error fetching wallets, retrying in 5s:",re),ht||(We(re instanceof Error?re.message:"Failed to load wallets"),se(false),we=setTimeout(tt,5e3));}}};return tt(),()=>{ht=true,we&&clearTimeout(we);}},[e,r,o,n,s,t,R,N.length]);let ze=wt?.id??"",{showWaitingUi:K,handleIveDeposited:Re}=Tn({depositConfirmationMode:p,depositAddress:ot,chain:D,externalUserId:e,publishableKey:t,modalOpenedAt:He,depositWalletId:ze,depositExecutions:je,trackedExecutions:qe,setDepositExecutions:Xe,setTrackedExecutions:ft,setLatestExecution:Ye,setShowStatusSheet:be,onDepositSuccess:T,onExecutionsChange:h,onDepositError:d}),I=p==="manual"&&ot&&!K;ws.useEffect(()=>{if(!J.length)return;let we=J.find(tt=>tt.symbol===L);if(!we||we.chains.length===0){let tt=J.find(re=>re.symbol==="USDC")||J[0];tt&&(V(tt.symbol),tt.chains.length>0&&O(Xa(tt.chains[0].chain_id,tt.chains[0].chain_type)));return}if(!we.chains.some(tt=>Xa(tt.chain_id,tt.chain_type)===D)){let tt=we.chains[0];O(Xa(tt.chain_id,tt.chain_type));}},[L,J,D]);let b=J.find(we=>we.symbol===L),B=Ue(b,"png")||void 0;ws.useEffect(()=>{v?.(B);},[B]);let H=b?.chains||[],$=H.find(we=>Xa(we.chain_id,we.chain_type)===D),q=async()=>{if(ot)try{reactNative.Clipboard.setString(ot),Z(!0),setTimeout(()=>Z(!1),2e3);}catch(we){console.error("Failed to copy:",we);}},ue=$?.estimated_price_impact_percent??0,Qe=$?.max_slippage_percent??.25,W=$?.minimum_deposit_amount_usd??3,E=$?.chain_name||or?.chain_name||"Network",nr=ws.useMemo(()=>{if(!et.trim())return H;let we=et.toLowerCase();return H.filter(ht=>ht.chain_name.toLowerCase().includes(we))},[H,et]),Fe=ws.useMemo(()=>{if(!xe.trim())return J;let we=xe.toLowerCase();return J.filter(ht=>ht.symbol.toLowerCase().includes(we)||ht.name?.toLowerCase().includes(we)||ht.chains.some(tt=>tt.chain_name.toLowerCase().includes(we)))},[J,xe]);return ee?jsxRuntime.jsxs(reactNative.View,{style:ce.loadingContainer,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"large",color:u.primary}),jsxRuntime.jsx(reactNative.Text,{style:[ce.loadingText,{color:u.foregroundMuted,fontFamily:S.regular}],children:"Loading currencies..."})]}):Ae&&J.length===0?jsxRuntime.jsxs(reactNative.View,{style:ce.errorContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[ce.errorText,{color:u.error,fontFamily:S.regular}],children:Ae}),jsxRuntime.jsx(reactNative.Text,{style:[ce.errorHint,{color:u.foregroundMuted,fontFamily:S.regular}],children:"Please check your network connection and try again."})]}):jsxRuntime.jsxs(reactNative.View,{style:ce.container,children:[jsxRuntime.jsxs(reactNative.View,{style:ce.content,children:[jsxRuntime.jsxs(reactNative.View,{style:ce.qrSection,children:[jsxRuntime.jsx(reactNative.Text,{style:[ce.intentAddressLabel,{color:u.foregroundMuted,fontFamily:S.medium}],children:"Intent address"}),jsxRuntime.jsx(reactNative.View,{style:[ce.qrCard,{backgroundColor:u.background,borderRadius:y.card.borderRadius,borderWidth:y.card.borderWidth>0?y.card.borderWidth:1,borderColor:y.card.borderColor}],children:Ve?jsxRuntime.jsxs(reactNative.View,{style:ce.qrLoading,children:[jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"small",color:u.primary}),jsxRuntime.jsx(reactNative.Text,{style:[ce.loadingText,{color:u.foregroundMuted,fontFamily:S.regular}],children:"Loading..."})]}):ot?jsxRuntime.jsx(reactNative.View,{style:ce.qrWrapper,children:jsxRuntime.jsx(ds,{value:ot,size:200,logoUri:ie(Ue(b,"png")||er("/icons/tokens/png/usdc.png")),logoSize:40,badgeUri:ie(Ue($,"png")||er("/icons/networks/png/ethereum.png")),badgeSize:20})}):jsxRuntime.jsx(reactNative.View,{style:ce.qrLoading,children:jsxRuntime.jsx(reactNative.Text,{style:[ce.errorText,{color:u.error,fontFamily:S.regular}],children:"No address available"})})})]}),jsxRuntime.jsxs(reactNative.View,{style:ce.selectorsRow,children:[jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{lt(""),Ie(true);},style:[ce.selectorPill,{backgroundColor:y.card.backgroundColor,borderRadius:y.card.borderRadius,borderWidth:y.card.borderWidth,borderColor:y.card.borderColor}],activeOpacity:.7,children:[($||or)&&jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue($||or,"png"))},style:ce.selectorPillIcon}),jsxRuntime.jsx(lr,{size:14,color:y.card.actionColor,strokeWidth:2})]}),jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{ve(""),te(true);},disabled:ee||J.length===0,style:[ce.selectorPill,{backgroundColor:y.card.backgroundColor,borderRadius:y.card.borderRadius,borderWidth:y.card.borderWidth,borderColor:y.card.borderColor}],activeOpacity:.7,children:[b&&jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(b,"png"))},style:ce.selectorPillIcon}),jsxRuntime.jsx(reactNative.Text,{style:[ce.selectorPillText,{color:y.card.titleColor,fontFamily:S.semibold}],children:b?.symbol||L}),jsxRuntime.jsx(lr,{size:14,color:y.card.actionColor,strokeWidth:2})]})]}),jsxRuntime.jsx(reactNative.View,{style:ce.addressRow,children:jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:q,style:[ce.addressPill,{backgroundColor:y.card.backgroundColor,borderRadius:y.card.borderRadius,borderWidth:y.card.borderWidth,borderColor:y.card.borderColor}],activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[ce.addressPillText,{color:y.card.titleColor,fontFamily:S.regular}],numberOfLines:1,children:Ve?"Loading...":ot?pT(ot):"No address"}),de?jsxRuntime.jsx(dt,{size:14,color:u.success,strokeWidth:2}):jsxRuntime.jsx(un,{size:14,color:y.card.actionColor,strokeWidth:1.5})]})}),jsxRuntime.jsxs(reactNative.View,{style:{opacity:K&&!Ge?1:0,flexDirection:"row",alignItems:"center",justifyContent:"center",gap:8,height:34},children:[jsxRuntime.jsx(reactNative.Animated.View,{style:{transform:[{rotate:ge}]},children:jsxRuntime.jsx(Tl,{size:16,color:u.foregroundMuted,strokeWidth:2})}),jsxRuntime.jsx(reactNative.Text,{style:{fontSize:14,color:u.foregroundMuted,fontFamily:S.regular},children:"Checking for deposit"})]})]}),jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{k?.({priceImpact:ue,maxSlippage:Qe,minDepositUsd:W,chainName:E}),x?.(true);},style:ce.infoFooter,activeOpacity:.7,children:[jsxRuntime.jsx(fn,{size:14,color:y.card.actionColor,strokeWidth:2}),jsxRuntime.jsxs(reactNative.Text,{style:[ce.infoFooterText,{color:y.card.subtitleColor,fontFamily:S.regular}],numberOfLines:1,children:["$",W," ",E," Minimum and ","<","1 min Processing"]})]}),I?jsxRuntime.jsxs(reactNative.View,{style:ce.ctaRow,children:[jsxRuntime.jsx(reactNative.View,{style:ce.ctaFlex,children:jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:Re,activeOpacity:.8,style:[ce.ctaButton,{backgroundColor:u.primary,borderRadius:y.button.borderRadius}],children:jsxRuntime.jsx(reactNative.Text,{style:[ce.ctaText,{color:u.primaryForeground??"#FFF",fontFamily:S.semibold}],children:"I've made the deposit"})})}),jsxRuntime.jsx(reactNative.View,{style:ce.ctaFlex,children:jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:q,activeOpacity:.8,style:[ce.ctaButton,{backgroundColor:y.card.backgroundColor,borderRadius:y.button.borderRadius,borderWidth:1,borderColor:u.border}],children:jsxRuntime.jsx(reactNative.Text,{style:[ce.ctaText,{color:u.foreground,fontFamily:S.semibold}],children:de?"Copied!":"Copy deposit address"})})})]}):jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:q,activeOpacity:.8,style:[ce.ctaButton,{backgroundColor:u.primary,borderRadius:y.button.borderRadius,marginBottom:16,marginTop:8}],children:jsxRuntime.jsx(reactNative.Text,{style:[ce.ctaText,{color:"#FFFFFF",fontFamily:S.semibold}],children:de?"Copied!":"Copy Deposit Address"})}),jsxRuntime.jsxs(zt,{visible:Oe,onClose:()=>{te(false),ve("");},closeOnBackdropPress:true,showHandle:false,heightPercent:.6,marginHorizontal:16,marginBottom:24,borderTopLeftRadius:m?.tokenSelector?.borderTopLeftRadius??w,borderTopRightRadius:m?.tokenSelector?.borderTopRightRadius??_,children:[jsxRuntime.jsxs(reactNative.View,{style:[ce.sheetHeader,{borderBottomColor:u.border}],children:[jsxRuntime.jsx(reactNative.View,{style:ce.sheetHeaderSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[ce.sheetTitle,{color:y.header.titleColor,fontFamily:S.medium}],children:"Select Token"}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{te(false),ve("");},style:ce.sheetCloseButton,hitSlop:{top:12,bottom:12,left:12,right:12},children:jsxRuntime.jsx(Rt,{size:20,color:y.header.buttonColor,strokeWidth:2})})]}),jsxRuntime.jsx(reactNative.View,{style:ce.searchContainer,children:jsxRuntime.jsx(reactNative.TextInput,{style:[ce.searchInput,{backgroundColor:y.search.backgroundColor,color:y.search.inputColor,fontFamily:S.regular,borderRadius:y.input.borderRadius,borderWidth:y.input.borderWidth,borderColor:y.input.borderColor}],placeholder:"Search tokens",placeholderTextColor:y.search.placeholderColor,value:xe,onChangeText:ve,autoCapitalize:"none",autoCorrect:false})}),jsxRuntime.jsx(At,{style:ce.sheetList,contentContainerStyle:ce.sheetListContent,showsVerticalScrollIndicator:false,children:Fe.length===0?jsxRuntime.jsx(reactNative.View,{style:ce.emptyState,children:jsxRuntime.jsx(reactNative.Text,{style:[ce.emptyText,{color:u.foregroundMuted,fontFamily:S.regular}],children:"No tokens found"})}):Fe.map(we=>jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{V(we.symbol),te(false),ve("");},activeOpacity:.7,style:[ce.sheetItem,{backgroundColor:L===we.symbol?y.card.backgroundColor:"transparent"}],children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(we,"png"))},style:ce.sheetItemIcon}),jsxRuntime.jsx(reactNative.Text,{style:[ce.sheetItemTitle,{color:y.card.titleColor,fontFamily:S.medium}],children:we.symbol}),jsxRuntime.jsx(reactNative.View,{style:ce.sheetItemSpacer}),jsxRuntime.jsx(reactNative.View,{style:[ce.sheetItemBadge,{borderWidth:1,borderColor:u.border}],children:jsxRuntime.jsxs(reactNative.Text,{style:[ce.sheetItemBadgeText,{color:y.card.subtitleColor,fontFamily:S.medium}],children:[we.chains.length," chain",we.chains.length!==1?"s":""]})})]},we.symbol))})]}),jsxRuntime.jsxs(zt,{visible:$e,onClose:()=>{Ie(false),lt("");},closeOnBackdropPress:true,showHandle:false,heightPercent:.6,marginHorizontal:16,marginBottom:24,borderTopLeftRadius:m?.chainSelector?.borderTopLeftRadius??w,borderTopRightRadius:m?.chainSelector?.borderTopRightRadius??_,children:[jsxRuntime.jsxs(reactNative.View,{style:[ce.sheetHeader,{borderBottomColor:u.border}],children:[jsxRuntime.jsx(reactNative.View,{style:ce.sheetHeaderSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[ce.sheetTitle,{color:y.header.titleColor,fontFamily:S.medium}],children:"Select Network"}),jsxRuntime.jsx(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{Ie(false),lt("");},style:ce.sheetCloseButton,hitSlop:{top:12,bottom:12,left:12,right:12},children:jsxRuntime.jsx(Rt,{size:20,color:y.header.buttonColor,strokeWidth:2})})]}),jsxRuntime.jsx(reactNative.View,{style:ce.searchContainer,children:jsxRuntime.jsx(reactNative.TextInput,{style:[ce.searchInput,{backgroundColor:y.search.backgroundColor,color:y.search.inputColor,fontFamily:S.regular,borderRadius:y.input.borderRadius,borderWidth:y.input.borderWidth,borderColor:y.input.borderColor}],placeholder:"Search networks",placeholderTextColor:y.search.placeholderColor,value:et,onChangeText:lt,autoCapitalize:"none",autoCorrect:false})}),jsxRuntime.jsx(At,{style:ce.sheetList,contentContainerStyle:ce.sheetListContent,showsVerticalScrollIndicator:false,children:nr.length===0?jsxRuntime.jsx(reactNative.View,{style:ce.emptyState,children:jsxRuntime.jsx(reactNative.Text,{style:[ce.emptyText,{color:u.foregroundMuted,fontFamily:S.regular}],children:"No networks found"})}):nr.map(we=>{let ht=Xa(we.chain_id,we.chain_type),tt=D===ht;return jsxRuntime.jsxs(reactNativeGestureHandler.TouchableOpacity,{onPress:()=>{O(ht),Ie(false),lt("");},activeOpacity:.7,style:[ce.chainItem,{backgroundColor:tt?y.card.backgroundColor:"transparent"}],children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(we,"png"))},style:ce.chainItemIcon}),jsxRuntime.jsx(reactNative.View,{style:ce.chainItemInfo,children:jsxRuntime.jsx(reactNative.Text,{style:[ce.chainItemName,{color:y.card.titleColor,fontFamily:S.medium}],children:we.chain_name})}),jsxRuntime.jsx(reactNative.View,{style:[ce.chainMinBadge,{backgroundColor:`${u.warning}18`}],children:jsxRuntime.jsxs(reactNative.Text,{style:[ce.chainMinBadgeText,{color:u.warning,fontFamily:S.medium}],children:["$",we.minimum_deposit_amount_usd," Minimum"]})})]},ht)})})]})]})}var ce=reactNative.StyleSheet.create({container:{flex:1,paddingHorizontal:16},content:{flex:1,justifyContent:"center"},loadingContainer:{padding:40,alignItems:"center",gap:12},loadingText:{fontSize:14},errorContainer:{padding:40,alignItems:"center",gap:8},errorText:{fontSize:14,textAlign:"center"},errorHint:{fontSize:12,textAlign:"center"},qrSection:{alignItems:"center",marginTop:8,marginBottom:16},intentAddressLabel:{fontSize:14,marginBottom:8},qrCard:{padding:16,alignItems:"center"},qrLoading:{width:150,height:150,alignItems:"center",justifyContent:"center"},qrWrapper:{},selectorsRow:{flexDirection:"row",justifyContent:"center",alignItems:"center",gap:10,paddingTop:16,paddingBottom:8},selectorPill:{flexDirection:"row",alignItems:"center",gap:6,paddingVertical:12,paddingHorizontal:14},selectorPillIcon:{width:20,height:20,borderRadius:10},selectorPillText:{fontSize:14},addressRow:{flexDirection:"row",justifyContent:"center",alignItems:"center",gap:8,paddingVertical:8},addressPill:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:16,paddingHorizontal:16},addressPillText:{fontSize:14},infoFooter:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:6,marginBottom:8,paddingVertical:4},infoFooterText:{fontSize:12},ctaRow:{flexDirection:"row",gap:10,marginBottom:16,marginTop:8},ctaFlex:{flex:1},ctaButton:{paddingVertical:14,alignItems:"center",justifyContent:"center"},ctaContent:{flexDirection:"row",alignItems:"center",gap:8},ctaText:{fontSize:15},sheetHeader:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingHorizontal:16,paddingBottom:16,paddingTop:20},sheetHeaderSpacer:{width:36},sheetTitle:{fontSize:16,fontWeight:"500",flex:1,textAlign:"center"},sheetCloseButton:{width:36,height:36,alignItems:"center",justifyContent:"center"},searchContainer:{paddingHorizontal:16,paddingBottom:12},searchInput:{height:48,paddingHorizontal:16,fontSize:14},sheetList:{flex:1,paddingTop:8},sheetListContent:{paddingBottom:56},sheetItem:{flexDirection:"row",alignItems:"center",paddingVertical:12,paddingHorizontal:16,marginHorizontal:16,borderRadius:12,gap:10},sheetItemIcon:{width:32,height:32,borderRadius:16},sheetItemTitle:{fontSize:15},sheetItemSpacer:{flex:1},sheetItemBadge:{paddingHorizontal:8,paddingVertical:3,borderRadius:6},sheetItemBadgeText:{fontSize:12},emptyState:{padding:32,alignItems:"center"},emptyText:{fontSize:14},chainItem:{flexDirection:"row",alignItems:"center",paddingVertical:12,paddingHorizontal:16,marginHorizontal:16,borderRadius:12,gap:12},chainItemIcon:{width:24,height:24,borderRadius:12},chainItemInfo:{flex:1},chainItemName:{fontSize:15},chainMinBadge:{paddingHorizontal:8,paddingVertical:3,borderRadius:6},chainMinBadgeText:{fontSize:11,fontWeight:"500"}});function Zg(e){let t=e.split("/"),r=t[t.length-1];return r&&r.length>10?`${r.slice(0,6)}...${r.slice(-3)}`:r||""}function hT(e){let r=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][e.getMonth()],o=e.getDate(),n=e.getFullYear(),s=e.getHours(),i=e.getMinutes(),a=s>=12?"pm":"am";s=s%12,s=s||12;let l=i<10?`0${i}`:i;return `${r} ${o}, ${n} at ${s}:${l}${a}`}function cu({visible:e,status:t,tokenIconUrl:r,explorerUrl:o,completionExplorerUrl:n,date:s,amountUsd:i,onClose:a,borderTopLeftRadius:l,borderTopRightRadius:c,useModal:p,heightProcessing:h,heightCompleted:T,heightCompletedExpanded:d}){let{components:f}=A(),[C,v]=ws.useState(false),x=t==="succeeded";return jsxRuntime.jsx(zt,{visible:e,onClose:a,closeOnBackdropPress:true,enablePanDownToClose:false,showHandle:false,heightPercent:x?C?d??T??.55:T??.55:h??.4,borderTopLeftRadius:l,borderTopRightRadius:c,useModal:p,children:jsxRuntime.jsxs(reactNative.View,{style:pr.sheetWrapper,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:pr.closeButton,onPress:a,hitSlop:{top:10,bottom:10,left:10,right:10},children:jsxRuntime.jsx(Rt,{size:20,color:f.header.buttonColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.ScrollView,{style:pr.scrollView,bounces:false,showsVerticalScrollIndicator:false,contentContainerStyle:pr.scrollContent,children:jsxRuntime.jsx(gT,{status:t,tokenIconUrl:r,explorerUrl:o,completionExplorerUrl:n,date:s,amountUsd:i,showDetails:C,onToggleDetails:()=>v(!C)})})]})})}function gT({status:e,tokenIconUrl:t,explorerUrl:r,completionExplorerUrl:o,date:n,amountUsd:s,showDetails:i,onToggleDetails:a,containerStyle:l}){let{colors:c,fonts:p,components:h}=A(),[T,d]=ws.useState(false),f=i??T,C=a??(()=>d(_=>!_)),v=e==="pending"||e==="waiting"||e==="delayed",x=e==="succeeded",k=!!r||!!o,R=()=>{r&&reactNative.Linking.openURL(r);},w=()=>{o&&reactNative.Linking.openURL(o);};return jsxRuntime.jsxs(reactNative.View,{style:[pr.container,l],children:[jsxRuntime.jsx(reactNative.View,{style:pr.iconContainer,children:v?jsxRuntime.jsx(kt,{size:80,strokeWidth:4,iconSize:56,children:t?jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(t)},style:pr.tokenIconFill}):jsxRuntime.jsx(reactNative.View,{style:[pr.tokenIconFill,{backgroundColor:c.cardHover}]})}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[t?jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(t)},style:pr.tokenIconLarge}):jsxRuntime.jsx(reactNative.View,{style:[pr.tokenIconLarge,{backgroundColor:c.cardHover}]}),jsxRuntime.jsx(reactNative.View,{style:[pr.statusBadge,{backgroundColor:h.container.iconBackgroundColor}],children:jsxRuntime.jsx(dt,{size:16,color:h.container.iconColor,strokeWidth:3})})]})}),jsxRuntime.jsx(reactNative.Text,{style:[pr.title,{color:h.container.titleColor,fontFamily:p.semibold}],children:v?"Deposit Processing":"Deposit Complete"}),s!==void 0&&jsxRuntime.jsxs(reactNative.Text,{style:[pr.amount,{color:h.container.titleColor,fontFamily:p.bold}],children:["$",s.toLocaleString(void 0,{minimumFractionDigits:2,maximumFractionDigits:2})]}),n&&jsxRuntime.jsx(reactNative.Text,{style:[pr.date,{color:h.container.subtitleColor,fontFamily:p.regular}],children:hT(n)}),jsxRuntime.jsx(reactNative.Text,{style:[pr.subtitle,{color:h.container.subtitleColor,fontFamily:p.regular}],children:v?"This usually takes less than a minute.":"Your account has been credited successfully!"}),x&&k&&jsxRuntime.jsxs(reactNative.View,{style:pr.detailsSection,children:[jsxRuntime.jsx(reactNative.View,{style:[pr.divider,{backgroundColor:c.border}]}),jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:pr.detailsToggle,onPress:C,children:[jsxRuntime.jsx(reactNative.Text,{style:[pr.detailsToggleText,{color:h.container.actionTitle,fontFamily:p.medium}],children:f?"See less":"See more details"}),f?jsxRuntime.jsx(_n,{size:18,color:h.container.actionColor,strokeWidth:2}):jsxRuntime.jsx(lr,{size:18,color:h.container.actionColor,strokeWidth:2})]}),f&&jsxRuntime.jsxs(reactNative.View,{style:pr.txButtonsContainer,children:[r&&jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[pr.txButton,{backgroundColor:h.card.backgroundColor,borderColor:c.border}],onPress:R,children:[jsxRuntime.jsx(reactNative.Text,{style:[pr.txLabel,{color:h.card.titleColor,fontFamily:p.medium}],children:"Deposit tx"}),jsxRuntime.jsx(reactNative.Text,{style:[pr.txHash,{color:h.card.subtitleColor,fontFamily:p.regular}],children:Zg(r)}),jsxRuntime.jsx(Jo,{size:16,color:h.card.actionColor,strokeWidth:2})]}),o&&jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[pr.txButton,{backgroundColor:h.card.backgroundColor,borderColor:c.border}],onPress:w,children:[jsxRuntime.jsx(reactNative.Text,{style:[pr.txLabel,{color:h.card.titleColor,fontFamily:p.medium}],children:"Completion tx"}),jsxRuntime.jsx(reactNative.Text,{style:[pr.txHash,{color:h.card.subtitleColor,fontFamily:p.regular}],children:Zg(o)}),jsxRuntime.jsx(Jo,{size:16,color:h.card.actionColor,strokeWidth:2})]})]})]})]})}var pr=reactNative.StyleSheet.create({sheetWrapper:{flex:1},scrollView:{flex:1},scrollContent:{flexGrow:1},container:{alignItems:"center",paddingHorizontal:24,paddingTop:40,paddingBottom:20},closeButton:{position:"absolute",top:12,right:12,width:40,height:40,alignItems:"center",justifyContent:"center",zIndex:10},iconContainer:{position:"relative",marginBottom:16},tokenIcon:{width:64,height:64,borderRadius:32},tokenIconLarge:{width:68,height:68,borderRadius:34},tokenIconFill:{width:"100%",height:"100%",borderRadius:34},statusBadge:{position:"absolute",bottom:-2,right:-2,width:28,height:28,borderRadius:14,alignItems:"center",justifyContent:"center"},title:{fontSize:18,fontWeight:"600",marginBottom:4,textAlign:"center"},amount:{fontSize:28,fontWeight:"700",marginBottom:4,textAlign:"center"},date:{fontSize:13,textAlign:"center",marginBottom:12},detailsSection:{width:"100%",marginTop:16,paddingHorizontal:16},divider:{height:1,width:"100%",opacity:.15},detailsToggle:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",width:"100%",paddingVertical:12},detailsToggleText:{fontSize:14,fontWeight:"500"},txButtonsContainer:{width:"100%",gap:10,marginTop:10},txButton:{flexDirection:"row",alignItems:"center",width:"100%",paddingVertical:12,paddingHorizontal:14,borderRadius:10,borderWidth:1,gap:8},txLabel:{fontSize:14,fontWeight:"500"},txHash:{fontSize:14,flex:1,textAlign:"right"},subtitle:{fontSize:14,textAlign:"center",lineHeight:20,paddingTop:8},buttonRow:{flexDirection:"row",gap:10,width:"100%"},button:{paddingVertical:14,paddingHorizontal:20,borderRadius:10,alignItems:"center",justifyContent:"center"},halfButton:{flex:1},successButton:{backgroundColor:"#22C55E"},buttonText:{color:"#fff",fontSize:14,fontWeight:"600"},hint:{fontSize:12,marginTop:12,textAlign:"center"}});function Cf({visible:e,onClose:t,priceImpact:r,maxSlippage:o,minDepositUsd:n,chainName:s,borderTopLeftRadius:i,borderTopRightRadius:a,useModal:l}){let{colors:c,fonts:p,components:h}=A(),T=[{icon:jsxRuntime.jsx(ho,{size:14,color:h.card.iconColor,strokeWidth:2}),label:"Processing time: <1 min"},{icon:jsxRuntime.jsx(pn,{size:14,color:h.card.iconColor,strokeWidth:2}),label:`Minimum deposit: $${n} on ${s}`},{icon:jsxRuntime.jsx(pn,{size:14,color:h.card.iconColor,strokeWidth:2}),label:`Price Impact: ${r.toFixed(2)}%`},{icon:jsxRuntime.jsx(So,{size:14,color:h.card.iconColor,strokeWidth:2}),label:`Slippage Auto: ${o.toFixed(2)}%`}];return jsxRuntime.jsx(zt,{visible:e,onClose:t,closeOnBackdropPress:true,showHandle:false,marginHorizontal:16,marginBottom:24,borderTopLeftRadius:i,borderTopRightRadius:a,useModal:l,children:jsxRuntime.jsxs(reactNative.View,{style:ln.container,children:[jsxRuntime.jsxs(reactNative.View,{style:ln.header,children:[jsxRuntime.jsxs(reactNative.View,{style:ln.titleRow,children:[jsxRuntime.jsx(fn,{size:16,color:h.header.titleColor,strokeWidth:2}),jsxRuntime.jsx(reactNative.Text,{style:[ln.title,{color:h.header.titleColor,fontFamily:p.semibold}],children:"Deposit Info"})]}),jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:t,hitSlop:{top:16,bottom:16,left:16,right:16},style:ln.closeButton,children:jsxRuntime.jsx(Rt,{size:18,color:h.header.buttonColor,strokeWidth:2})})]}),jsxRuntime.jsxs(reactNative.View,{style:ln.rows,children:[T.map((d,f)=>jsxRuntime.jsxs(reactNative.View,{style:ln.row,children:[jsxRuntime.jsx(reactNative.View,{style:[ln.iconContainer,{backgroundColor:h.card.iconBackgroundColor,borderRadius:h.card.iconContainerBorderRadius}],children:d.icon}),jsxRuntime.jsx(reactNative.Text,{style:[ln.label,{color:h.card.titleColor,fontFamily:p.regular}],children:d.label})]},f)),jsxRuntime.jsxs(reactNative.View,{style:ln.row,children:[jsxRuntime.jsx(reactNative.View,{style:[ln.iconContainer,{backgroundColor:h.card.iconBackgroundColor,borderRadius:h.card.iconContainerBorderRadius}],children:jsxRuntime.jsx(la,{size:14,color:h.card.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[ln.label,{color:h.card.titleColor,fontFamily:p.regular}],children:["Need Help?"," ",jsxRuntime.jsx(reactNative.Text,{style:{textDecorationLine:"underline"},onPress:()=>reactNative.Linking.openURL("https://unifold.io/support"),children:"Contact Support"})]})]})]})]})})}var ln=reactNative.StyleSheet.create({container:{paddingHorizontal:20,paddingTop:20,paddingBottom:0},header:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",marginBottom:16},titleRow:{flexDirection:"row",alignItems:"center",gap:6},title:{fontSize:16},closeButton:{width:36,height:36,alignItems:"center",justifyContent:"center"},rows:{gap:16},row:{flexDirection:"row",alignItems:"center",gap:12},iconContainer:{width:28,height:28,alignItems:"center",justifyContent:"center"},label:{fontSize:14,flex:1}});var vn={transferCrypto:{title:"Transfer Crypto",subtitle:"No limit \u2022 Instant"},depositWithCard:{title:"Deposit with Card",subtitle:"$50,000 limit \u2022 2 min"},stripeLinkPay:{title:"Pay with Link",subtitle:"Buy with card or bank"},depositTracker:{title:"Deposit Tracker",subtitle:"Track your deposit progress"},tabs:{crypto:"Use Crypto",cash:"Use Cash"}};function kT(){let{colors:e,components:t}=A(),r=ws.useRef(new reactNative.Animated.Value(.5)).current,o=t.depositMenu.card.backgroundColor,n=e.cardHover;ws.useEffect(()=>{let i=reactNative.Animated.loop(reactNative.Animated.sequence([reactNative.Animated.timing(r,{toValue:1,duration:800,useNativeDriver:true}),reactNative.Animated.timing(r,{toValue:.5,duration:800,useNativeDriver:true})]));return i.start(),()=>i.stop()},[r]);let s=({rightIcons:i=2})=>jsxRuntime.jsxs(reactNative.View,{style:[ms.card,{backgroundColor:o,borderRadius:t.depositMenu.card.borderRadius}],children:[jsxRuntime.jsx(reactNative.Animated.View,{style:[ms.leftIcon,{backgroundColor:n,opacity:r,borderRadius:t.depositMenu.card.iconContainerBorderRadius}]}),jsxRuntime.jsxs(reactNative.View,{style:ms.textBlock,children:[jsxRuntime.jsx(reactNative.Animated.View,{style:[ms.titleBar,{backgroundColor:n,opacity:r}]}),jsxRuntime.jsx(reactNative.Animated.View,{style:[ms.subtitleBar,{backgroundColor:n,opacity:r}]})]}),jsxRuntime.jsx(reactNative.View,{style:ms.rightIcons,children:Array.from({length:i}).map((a,l)=>jsxRuntime.jsx(reactNative.Animated.View,{style:[ms.rightIcon,{backgroundColor:n,opacity:r}]},l))})]});return jsxRuntime.jsxs(reactNative.View,{style:ms.container,children:[jsxRuntime.jsx(s,{rightIcons:3}),jsxRuntime.jsx(s,{rightIcons:2}),jsxRuntime.jsx(s,{rightIcons:0})]})}var ms=reactNative.StyleSheet.create({container:{paddingTop:8,paddingBottom:24,gap:8},card:{marginHorizontal:16,flexDirection:"row",alignItems:"center",paddingVertical:16,paddingHorizontal:12,gap:12},leftIcon:{width:36,height:36},textBlock:{flex:1,gap:6},titleBar:{height:12,width:"70%",borderRadius:6},subtitleBar:{height:10,width:"50%",borderRadius:5},rightIcons:{flexDirection:"row",alignItems:"center",gap:4},rightIcon:{width:20,height:20,borderRadius:10}});function xT({selected:e,onSelect:t}){let{colors:r,fonts:o,components:n}=A(),s=({tab:i,label:a,glyph:l})=>{let c=e===i,p=c?r.foreground:r.foregroundMuted;return jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:gc.item,activeOpacity:.8,onPress:()=>t(i),children:[c&&jsxRuntime.jsx(reactNative.View,{style:[reactNative.StyleSheet.absoluteFill,{backgroundColor:r.primary,opacity:.15,borderRadius:10}]}),jsxRuntime.jsx(reactNative.View,{style:[gc.badge,{backgroundColor:p}],children:jsxRuntime.jsx(reactNative.Text,{style:[gc.badgeGlyph,{color:r.background,fontFamily:o.semibold}],children:l})}),jsxRuntime.jsx(reactNative.Text,{style:[gc.label,{color:p,fontFamily:o.semibold}],children:a})]})};return jsxRuntime.jsxs(reactNative.View,{style:[gc.bar,{backgroundColor:n.depositMenu.card.backgroundColor}],children:[jsxRuntime.jsx(s,{tab:"crypto",label:vn.tabs.crypto,glyph:"\u20BF"}),jsxRuntime.jsx(s,{tab:"cash",label:vn.tabs.cash,glyph:"$"})]})}var gc=reactNative.StyleSheet.create({bar:{flexDirection:"row",borderRadius:12,padding:4,gap:4,marginHorizontal:16,marginBottom:8},item:{flex:1,flexDirection:"row",alignItems:"center",justifyContent:"center",gap:6,paddingVertical:10,borderRadius:10,overflow:"hidden"},badge:{width:20,height:20,borderRadius:10,alignItems:"center",justifyContent:"center"},badgeGlyph:{fontSize:11,fontWeight:"700",lineHeight:14,textAlign:"center",includeFontPadding:false},label:{fontSize:14}});function vT({visible:e,onClose:t,closeOnBackdropPress:r=false,externalUserId:o,publishableKey:n,modalTitle:s="Deposit",destinationTokenSymbol:i,recipientAddress:a,destinationChainType:l,destinationChainId:c,destinationTokenAddress:p,defaultChainType:h,defaultChainId:T,defaultTokenAddress:d,showBalance:f=false,hideDepositTracker:C,enableTransferCrypto:v,enableCashApp:x,enableConnectWallet:k,enableFiatOnramp:R,enableStripeLink:w=false,StripeOnrampComponent:_,user:m,stripePaymentSelectorPosition:u,stripeSkipSuccessConfirmation:S,stripeTheme:y,depositConfirmationMode:F="auto_ui",transferInputVariant:L="double_input",depositMenuDisplay:V="stacked",initialScreen:D="main",onDepositSuccess:O,onDepositError:N,sheetBorderRadius:M}){let Ve=M?.globalBorderTopLeftRadius,se=M?.globalBorderTopRightRadius,{colors:Le,fonts:J}=A(),[pe,ee]=ws.useState([]),[U,de]=ws.useState(null),[Z,he]=ws.useState("amount"),[it,Oe]=ws.useState(false),[te,je]=ws.useState(null),[Xe,qe]=ws.useState(void 0),[ft,He]=ws.useState(false),[Ae,We]=ws.useState(null),_e=v??U?.transfer_crypto?.enabled??true,be=k??U?.connect_wallet?.enabled??false,Ge=x??U?.cash_app?.enabled??false,Ye=R??U?.fiat_onramp?.enabled??true,at=C?false:U?.deposit_tracker?.enabled??true,Tr=v??U?.transfer_crypto?.enabled??false,$e=k??U?.connect_wallet?.enabled??false,Ie=x??U?.cash_app?.enabled??false,et=R??U?.fiat_onramp?.enabled??false,lt=C?false:U?.deposit_tracker?.enabled??false,xe=D==="tracker"&&lt?"tracker":D==="transfer"&&Tr?"transfer":D==="card"&&et?"card":D==="cashapp"&&Ie?"cashapp":D==="wallet"&&$e?"wallet":"main",[ve,Ee]=ws.useState(xe==="main"),[ge,ct]=ws.useState(xe),[Ft,mt]=ws.useState("crypto"),{isAllowed:or,isLoading:Me}=mc(n,e);ws.useEffect(()=>{if(!e||U)return;let re=false;return Dl(n).then(async Lt=>{if(re)return;let rt=[];for(let Bt of Lt?.transfer_crypto?.networks??[]){let Ht=Bt.icon_urls.find(mo=>mo.format==="png")?.url||Bt.icon_urls.find(mo=>mo.format==="svg")?.url;Ht&&rt.push(ie(Ht));}for(let Bt of Lt?.payment_networks?.networks??[]){let Ht=Bt.icon_urls.find(mo=>mo.format==="png")?.url||Bt.icon_urls.find(mo=>mo.format==="svg")?.url;Ht&&rt.push(ie(Ht));}rt.length>0&&await ec(rt),re||de(Lt);}).catch(console.error),()=>{re=true;}},[e,U,n]);let wt=()=>{t();},ot=ws.useRef(false);ws.useEffect(()=>{e&&!ot.current&&(ct(xe),Ee(xe==="main"),he("amount"),He(false),We(null),mt("crypto")),ot.current=e;},[e,xe]),ws.useEffect(()=>{if(!e||!U)return;let re=D==="wallet"&&be?"wallet":D==="transfer"&&_e?"transfer":D==="card"&&Ye?"card":D==="cashapp"&&Ge?"cashapp":D==="tracker"&&at?"tracker":null;re&&ct(Lt=>Lt==="main"?re:Lt);},[e,U,D,be,_e,Ye,Ge,at]),ws.useEffect(()=>{if(!U)return;(ge==="transfer"&&!_e||ge==="card"&&!Ye||ge==="cashapp"&&!Ge||ge==="wallet"&&!be||ge==="tracker"&&!at)&&(ct("main"),Ee(true));},[U,ge,_e,Ye,Ge,be,at]);let Ce=ws.useCallback(re=>{re.length!==0&&ee(Lt=>{let rt=new Map(Lt.map(Bt=>[Bt.id,Bt]));for(let Bt of re)rt.set(Bt.id,Bt);return Array.from(rt.values())});},[]),ze=ws.useCallback(()=>{He(false),We(null),ve?(ct("main"),he("amount")):wt();},[ve,wt]),K=ws.useRef(reactNative.AppState.currentState==="active"),Re=ws.useRef(0);ws.useEffect(()=>{if(reactNative.Platform.OS!=="android")return;let re=reactNative.AppState.addEventListener("change",Lt=>{Lt==="active"&&!K.current&&(Re.current=Date.now()),K.current=Lt==="active";});return ()=>re.remove()},[]);let I=ws.useCallback(()=>{if(reactNative.Platform.OS==="android"){let re=!K.current,Lt=Date.now()-Re.current<800;if(re||Lt)return}ze();},[ze]),b=pe.filter(re=>re.status==="pending"||re.status==="waiting").length,H=!!(a&&l&&c&&p&&n)&&f!==false&&!!U,$=Il.includes(l)?l:void 0,q=Me||e&&!U,ue=or===false,Qe=null;if(ge==="stripe"&&_){let re=jsxRuntime.jsx(_,{publishableKey:n,email:m?.email,phone:m?.phone,externalUserId:o,recipientAddress:a??"",destinationChainType:l,destinationChainId:c,destinationTokenAddress:p,paymentSelectorPosition:u,skipSuccessConfirmation:S,appName:U?.project_name??"",onClose:ze});Qe=y?jsxRuntime.jsx(da,{...y,children:re}):re;}let W=ge==="stripe"||ge==="transfer"||ge==="card"||ge==="cashapp"||ge==="wallet"?.9:ge==="tracker"?.6:ge==="main"?Ge||be?.6:.5:void 0,E=ge==="main"?.9:void 0,Fe={main:M?.main,transfer:M?.transferCrypto,card:M?.buyWithCard,stripe:M?.stripeLink,cashapp:M?.cashApp,wallet:M?.connectWallet,tracker:M?.depositsTracker}[ge],we=Fe?.borderTopLeftRadius??Ve,ht=Fe?.borderTopRightRadius??se,tt=jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[te&&jsxRuntime.jsx(cu,{visible:it,useModal:false,status:te.status,tokenIconUrl:te.destination_token_metadata?.icon_urls?.find(re=>re.format==="png")?.url||te.destination_token_metadata?.icon_url||Xe,explorerUrl:te.explorer_url,completionExplorerUrl:te.destination_explorer_url,date:te.created_at?new Date(te.created_at):void 0,amountUsd:te.source_amount_usd?parseFloat(te.source_amount_usd):void 0,onClose:()=>Oe(false),heightProcessing:ge==="card"||ge==="wallet"?.35:void 0,heightCompleted:ge==="card"||ge==="wallet"?.41:void 0,heightCompletedExpanded:ge==="card"||ge==="wallet"?.53:void 0,borderTopLeftRadius:M?.depositStatus?.borderTopLeftRadius??Ve,borderTopRightRadius:M?.depositStatus?.borderTopRightRadius??se}),Ae&&jsxRuntime.jsx(Cf,{visible:ft,useModal:false,onClose:()=>He(false),priceImpact:Ae.priceImpact,maxSlippage:Ae.maxSlippage,minDepositUsd:Ae.minDepositUsd,chainName:Ae.chainName,borderTopLeftRadius:M?.infoSheet?.borderTopLeftRadius??Ve,borderTopRightRadius:M?.infoSheet?.borderTopRightRadius??se})]});return jsxRuntime.jsxs(zt,{visible:e,onClose:ge==="main"?wt:I,closeOnBackdropPress:r,onBackdropPress:wt,enablePanDownToClose:true,showHandle:true,heightPercent:W,maxHeightPercent:E,borderTopLeftRadius:we,borderTopRightRadius:ht,overlay:tt,children:[ge==="main"&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(Kr,{title:s,showBack:false,onClose:wt,showBalance:H,balanceAddress:a,balanceChainType:$,balanceChainId:c,balanceTokenAddress:p,publishableKey:n,projectName:U?.project_name}),q&&jsxRuntime.jsx(kT,{}),!q&&ue&&jsxRuntime.jsxs(reactNative.View,{style:Zr.centeredContainer,children:[jsxRuntime.jsx(reactNative.View,{style:[Zr.iconContainer,{backgroundColor:Le.cardHover}],children:jsxRuntime.jsx(kl,{size:32,color:Le.foreground,strokeWidth:1.5})}),jsxRuntime.jsx(reactNative.Text,{style:[Zr.blockedTitle,{color:Le.foreground,fontFamily:J.semibold}],children:"No Tokens Available"}),jsxRuntime.jsx(reactNative.Text,{style:[Zr.blockedDescription,{color:Le.foreground,opacity:.7,fontFamily:J.regular}],children:"There are no supported tokens available from your current location."})]}),!q&&!ue&&(()=>{let re=_e?jsxRuntime.jsx(tc,{onPress:()=>ct("transfer"),title:vn.transferCrypto.title,subtitle:vn.transferCrypto.subtitle,featuredTokens:U?.transfer_crypto?.networks},"transfer"):null,Lt=Ye?jsxRuntime.jsx(oc,{onPress:()=>ct("card"),title:vn.depositWithCard.title,subtitle:vn.depositWithCard.subtitle,paymentNetworks:U?.payment_networks?.networks},"card"):null,rt=be?jsxRuntime.jsx(lc,{onPress:()=>ct("wallet"),featuredWallets:U?.connect_wallet?.wallets},"wallet"):null,Bt=Ge?jsxRuntime.jsx(ac,{onPress:()=>ct("cashapp")},"cashapp"):null,Ht=w&&_?jsxRuntime.jsx(sc,{onPress:()=>ct("stripe"),title:vn.stripeLinkPay.title,subtitle:vn.stripeLinkPay.subtitle},"stripe"):null,mo=at?jsxRuntime.jsx(nc,{onPress:()=>ct("tracker"),title:vn.depositTracker.title,subtitle:vn.depositTracker.subtitle,badge:b>0?b:void 0},"tracker"):null;return jsxRuntime.jsxs(reactNative.View,{style:Zr.optionsContainer,children:[V==="tabs"?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(xT,{selected:Ft,onSelect:mt}),Ft==="crypto"?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[re,rt]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[Lt,Bt,Ht]})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[re,rt,Lt,Bt,Ht]}),mo]})})()]}),ge==="transfer"&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(Kr,{title:vn.transferCrypto.title,showBack:false,onClose:ze,showBalance:H,balanceAddress:a,balanceChainType:$,balanceChainId:c,balanceTokenAddress:p,publishableKey:n,projectName:U?.project_name}),Me&&jsxRuntime.jsx(reactNative.View,{style:[Zr.centeredContainer,Zr.centeredFlex],children:jsxRuntime.jsx(reactNative.ActivityIndicator,{color:Le.primary})}),!Me&&ue&&jsxRuntime.jsxs(reactNative.View,{style:[Zr.centeredContainer,Zr.centeredFlex],children:[jsxRuntime.jsx(reactNative.View,{style:[Zr.iconContainer,{backgroundColor:Le.cardHover}],children:jsxRuntime.jsx(kl,{size:32,color:Le.foreground,strokeWidth:1.5})}),jsxRuntime.jsx(reactNative.Text,{style:[Zr.blockedTitle,{color:Le.foreground,fontFamily:J.semibold}],children:"No Tokens Available"}),jsxRuntime.jsx(reactNative.Text,{style:[Zr.blockedDescription,{color:Le.foreground,opacity:.7,fontFamily:J.regular}],children:"There are no supported tokens available from your current location."})]}),!Me&&!ue&&jsxRuntime.jsx(At,{style:Zr.transferScrollContainer,contentContainerStyle:L==="compact"?Zr.scrollContentCompact:Zr.scrollContent,showsVerticalScrollIndicator:false,children:L==="compact"?jsxRuntime.jsx(au,{externalUserId:o,publishableKey:n,recipientAddress:a,destinationChainType:l,destinationChainId:c,destinationTokenAddress:p,destinationTokenSymbol:i,defaultChainType:h,defaultChainId:T,defaultTokenAddress:d,depositConfirmationMode:F,onExecutionsChange:Ce,onDepositSuccess:O,onDepositError:N,onLatestExecution:je,onShowStatusSheet:Oe,onSelectedTokenIconUrl:qe,onShowInfoSheet:He,onInfoSheetData:We,borderTopLeftRadius:Ve,borderTopRightRadius:se,sheetBorderRadius:{tokenSelector:M?.tokenSelector,chainSelector:M?.chainSelector,infoSheet:M?.infoSheet,depositStatus:M?.depositStatus}}):L==="single_input"?jsxRuntime.jsx(bf,{externalUserId:o,publishableKey:n,recipientAddress:a,destinationChainType:l,destinationChainId:c,destinationTokenAddress:p,destinationTokenSymbol:i,defaultChainType:h,defaultChainId:T,defaultTokenAddress:d,depositConfirmationMode:F,onExecutionsChange:Ce,onDepositSuccess:O,onDepositError:N,onLatestExecution:je,onShowStatusSheet:Oe,onSelectedTokenIconUrl:qe,borderTopLeftRadius:Ve,borderTopRightRadius:se,sheetBorderRadius:{tokenSelector:M?.tokenSelector,infoSheet:M?.infoSheet,depositStatus:M?.depositStatus}}):jsxRuntime.jsx(jd,{externalUserId:o,publishableKey:n,recipientAddress:a,destinationChainType:l,destinationChainId:c,destinationTokenAddress:p,destinationTokenSymbol:i,defaultChainType:h,defaultChainId:T,defaultTokenAddress:d,depositConfirmationMode:F,onExecutionsChange:Ce,onDepositSuccess:O,onDepositError:N,onLatestExecution:je,onShowStatusSheet:Oe,onSelectedTokenIconUrl:qe,borderTopLeftRadius:Ve,borderTopRightRadius:se,sheetBorderRadius:{tokenSelector:M?.tokenSelector,chainSelector:M?.chainSelector,infoSheet:M?.infoSheet,depositStatus:M?.depositStatus}})})]}),ge==="card"&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(Kr,{title:`Deposit ${i||"USDC"}`,showBack:Z==="onramp",onBack:()=>he("amount"),onClose:ze,showBalance:H,balanceAddress:a,balanceChainType:$,balanceChainId:c,balanceTokenAddress:p,publishableKey:n,projectName:U?.project_name}),jsxRuntime.jsx(reactNative.View,{style:Zr.buyWithCardContainer,children:jsxRuntime.jsx(Yd,{externalUserId:o,publishableKey:n,destinationTokenSymbol:i,recipientAddress:a,destinationChainType:l,destinationChainId:c,destinationTokenAddress:p,onDepositSuccess:O,onDepositError:N,onExecutionsChange:Ce,onLatestExecution:je,onShowStatusSheet:Oe,onSelectedTokenIconUrl:qe,view:Z,onViewChange:re=>he(re),borderTopLeftRadius:Ve,borderTopRightRadius:se,sheetBorderRadius:{providerModal:M?.providerModal,webView:M?.webView,currencyModal:M?.currencyModal}})})]}),ge==="cashapp"&&jsxRuntime.jsx(reactNative.View,{style:Zr.cashAppContainer,children:jsxRuntime.jsx(Od,{externalUserId:o,publishableKey:n,recipientAddress:a,destinationChainType:l,destinationChainId:c,destinationTokenAddress:p,onBack:ze,onClose:ze,onDepositSuccess:O})}),ge==="wallet"&&jsxRuntime.jsx(reactNative.View,{style:Zr.connectWalletContainer,children:jsxRuntime.jsx(zd,{externalUserId:o,publishableKey:n,recipientAddress:a,destinationChainType:l,destinationChainId:c,destinationTokenAddress:p,onBack:ze,onClose:ze,onDepositSuccess:O,onDepositError:N,onExecutionsChange:Ce,onLatestExecution:je,onShowStatusSheet:Oe})}),ge==="stripe"&&Qe&&jsxRuntime.jsx(reactNative.View,{style:Zr.stripeLinkPayContainer,children:Qe}),ge==="tracker"&&jsxRuntime.jsx(ff,{active:ge==="tracker",onClose:ze,executions:pe,externalUserId:o,publishableKey:n})]})}function fu({theme:e="auto",...t}){return jsxRuntime.jsx(vT,{...t})}var Zr=reactNative.StyleSheet.create({optionsContainer:{paddingTop:8,paddingBottom:24,gap:8},transferScrollContainer:{flex:1},scrollContent:{paddingBottom:24},scrollContentCompact:{flexGrow:1,paddingBottom:24},buyWithCardContainer:{flex:1},stripeLinkPayContainer:{flex:1},cashAppContainer:{flex:1},connectWalletContainer:{flex:1},centeredContainer:{alignItems:"center",justifyContent:"center",paddingVertical:48,paddingHorizontal:16,minHeight:200},centeredFlex:{flex:1},iconContainer:{width:64,height:64,borderRadius:32,alignItems:"center",justifyContent:"center",marginBottom:16},blockedTitle:{fontSize:18,fontWeight:"600",marginBottom:8,textAlign:"center"},blockedDescription:{fontSize:14,textAlign:"center",maxWidth:280,lineHeight:20}});var rl=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this);}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe();}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}};var Ks,gs,ol,ry,_T=(ry=class extends rl{constructor(){super();oe(this,Ks);oe(this,gs);oe(this,ol);j(this,ol,t=>{if(typeof window<"u"&&window.addEventListener){let r=()=>t();return window.addEventListener("visibilitychange",r,false),()=>{window.removeEventListener("visibilitychange",r);}}});}onSubscribe(){g(this,gs)||this.setEventListener(g(this,ol));}onUnsubscribe(){var t;this.hasListeners()||((t=g(this,gs))==null||t.call(this),j(this,gs,void 0));}setEventListener(t){var r;j(this,ol,t),(r=g(this,gs))==null||r.call(this),j(this,gs,t(o=>{typeof o=="boolean"?this.setFocused(o):this.onFocus();}));}setFocused(t){g(this,Ks)!==t&&(j(this,Ks,t),this.onFocus());}onFocus(){let t=this.isFocused();this.listeners.forEach(r=>{r(t);});}isFocused(){return typeof g(this,Ks)=="boolean"?g(this,Ks):globalThis.document?.visibilityState!=="hidden"}},Ks=new WeakMap,gs=new WeakMap,ol=new WeakMap,ry),oy=new _T;var IT={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},Jn,Gs,ny,PT=(ny=class{constructor(){oe(this,Jn,IT);oe(this,Gs,false);}setTimeoutProvider(e){process.env.NODE_ENV!=="production"&&g(this,Gs)&&e!==g(this,Jn)&&console.error("[timeoutManager]: Switching provider after calls to previous provider might result in unexpected behavior.",{previous:g(this,Jn),provider:e}),j(this,Jn,e),process.env.NODE_ENV!=="production"&&j(this,Gs,false);}setTimeout(e,t){return process.env.NODE_ENV!=="production"&&j(this,Gs,true),g(this,Jn).setTimeout(e,t)}clearTimeout(e){g(this,Jn).clearTimeout(e);}setInterval(e,t){return process.env.NODE_ENV!=="production"&&j(this,Gs,true),g(this,Jn).setInterval(e,t)}clearInterval(e){g(this,Jn).clearInterval(e);}},Jn=new WeakMap,Gs=new WeakMap,ny),yc=new PT;function iy(e){setTimeout(e,0);}var Sf=typeof window>"u"||"Deno"in globalThis;function nl(){}function Tf(e){return typeof e=="number"&&e>=0&&e!==1/0}function cy(e,t){return Math.max(e+(t||0)-Date.now(),0)}function il(e,t){return typeof e=="function"?e(t):e}function Qo(e,t){return typeof e=="function"?e(t):e}var FT=Object.prototype.hasOwnProperty;function mu(e,t,r=0){if(e===t)return e;if(r>500)return t;let o=sy(e)&&sy(t);if(!o&&!(ay(e)&&ay(t)))return t;let s=(o?e:Object.keys(e)).length,i=o?t:Object.keys(t),a=i.length,l=o?new Array(a):{},c=0;for(let p=0;p<a;p++){let h=o?p:i[p],T=e[h],d=t[h];if(T===d){l[h]=T,(o?p<s:FT.call(e,h))&&c++;continue}if(T===null||d===null||typeof T!="object"||typeof d!="object"){l[h]=d;continue}let f=mu(T,d,r+1);l[h]=f,f===T&&c++;}return s===a&&c===s?e:l}function hu(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return false;for(let r in e)if(e[r]!==t[r])return false;return true}function sy(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function ay(e){if(!ly(e))return false;let t=e.constructor;if(t===void 0)return true;let r=t.prototype;return !(!ly(r)||!r.hasOwnProperty("isPrototypeOf")||Object.getPrototypeOf(e)!==Object.prototype)}function ly(e){return Object.prototype.toString.call(e)==="[object Object]"}function kf(e,t,r){if(typeof r.structuralSharing=="function")return r.structuralSharing(e,t);if(r.structuralSharing!==false){if(process.env.NODE_ENV!=="production")try{return mu(e,t)}catch(o){throw console.error(`Structural sharing requires data to be JSON serializable. To fix this, turn off structuralSharing or return JSON-serializable data from your queryFn. [${r.queryHash}]: ${o}`),o}return mu(e,t)}return t}function gu(e,t){return typeof e=="function"?e(...t):!!e}var sl=(()=>{let e=()=>Sf;return {isServer(){return e()},setIsServer(t){e=t;}}})();function xf(){let e,t,r=new Promise((n,s)=>{e=n,t=s;});r.status="pending",r.catch(()=>{});function o(n){Object.assign(r,n),delete r.resolve,delete r.reject;}return r.resolve=n=>{o({status:"fulfilled",value:n}),e(n);},r.reject=n=>{o({status:"rejected",reason:n}),t(n);},r}var dy=iy;function DT(){let e=[],t=0,r=a=>{a();},o=a=>{a();},n=dy,s=a=>{t?e.push(a):n(()=>{r(a);});},i=()=>{let a=e;e=[],a.length&&n(()=>{o(()=>{a.forEach(l=>{r(l);});});});};return {batch:a=>{let l;t++;try{l=a();}finally{t--,t||i();}return l},batchCalls:a=>(...l)=>{s(()=>{a(...l);});},schedule:s,setNotifyFunction:a=>{r=a;},setBatchNotifyFunction:a=>{o=a;},setScheduler:a=>{n=a;}}}var bc=DT();var al,ys,ll,uy,VT=(uy=class extends rl{constructor(){super();oe(this,al,true);oe(this,ys);oe(this,ll);j(this,ll,t=>{if(typeof window<"u"&&window.addEventListener){let r=()=>t(true),o=()=>t(false);return window.addEventListener("online",r,false),window.addEventListener("offline",o,false),()=>{window.removeEventListener("online",r),window.removeEventListener("offline",o);}}});}onSubscribe(){g(this,ys)||this.setEventListener(g(this,ll));}onUnsubscribe(){var t;this.hasListeners()||((t=g(this,ys))==null||t.call(this),j(this,ys,void 0));}setEventListener(t){var r;j(this,ll,t),(r=g(this,ys))==null||r.call(this),j(this,ys,t(this.setOnline.bind(this)));}setOnline(t){g(this,al)!==t&&(j(this,al,t),this.listeners.forEach(o=>{o(t);}));}isOnline(){return g(this,al)}},al=new WeakMap,ys=new WeakMap,ll=new WeakMap,uy),py=new VT;function fy(e){return (e??"online")==="online"?py.isOnline():true}function my(e,t){return {fetchFailureCount:0,fetchFailureReason:null,fetchStatus:fy(t.networkMode)?"fetching":"paused",...e===void 0&&{error:null,status:"pending"}}}var Bo,Et,wc,xo,Ys,cl,Ri,bs,Sc,dl,ul,Js,Zs,Cs,pl,Xt,Cc,vf,Rf,_f,If,Pf,Ff,Df,by,yy,Of=(yy=class extends rl{constructor(t,r){super();oe(this,Xt);oe(this,Bo);oe(this,Et);oe(this,wc);oe(this,xo);oe(this,Ys);oe(this,cl);oe(this,Ri);oe(this,bs);oe(this,Sc);oe(this,dl);oe(this,ul);oe(this,Js);oe(this,Zs);oe(this,Cs);oe(this,pl,new Set);this.options=r,j(this,Bo,t),j(this,bs,null),j(this,Ri,xf()),this.bindMethods(),this.setOptions(r);}bindMethods(){this.refetch=this.refetch.bind(this);}onSubscribe(){this.listeners.size===1&&(g(this,Et).addObserver(this),hy(g(this,Et),this.options)?St(this,Xt,Cc).call(this):this.updateResult(),St(this,Xt,If).call(this));}onUnsubscribe(){this.hasListeners()||this.destroy();}shouldFetchOnReconnect(){return Vf(g(this,Et),this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return Vf(g(this,Et),this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,St(this,Xt,Pf).call(this),St(this,Xt,Ff).call(this),g(this,Et).removeObserver(this);}setOptions(t){let r=this.options,o=g(this,Et);if(this.options=g(this,Bo).defaultQueryOptions(t),this.options.enabled!==void 0&&typeof this.options.enabled!="boolean"&&typeof this.options.enabled!="function"&&typeof Qo(this.options.enabled,g(this,Et))!="boolean")throw new Error("Expected enabled to be a boolean or a callback that returns a boolean");St(this,Xt,Df).call(this),g(this,Et).setOptions(this.options),r._defaulted&&!hu(this.options,r)&&g(this,Bo).getQueryCache().notify({type:"observerOptionsUpdated",query:g(this,Et),observer:this});let n=this.hasListeners();n&&gy(g(this,Et),o,this.options,r)&&St(this,Xt,Cc).call(this),this.updateResult(),n&&(g(this,Et)!==o||Qo(this.options.enabled,g(this,Et))!==Qo(r.enabled,g(this,Et))||il(this.options.staleTime,g(this,Et))!==il(r.staleTime,g(this,Et)))&&St(this,Xt,vf).call(this);let s=St(this,Xt,Rf).call(this);n&&(g(this,Et)!==o||Qo(this.options.enabled,g(this,Et))!==Qo(r.enabled,g(this,Et))||s!==g(this,Cs))&&St(this,Xt,_f).call(this,s);}getOptimisticResult(t){let r=g(this,Bo).getQueryCache().build(g(this,Bo),t),o=this.createResult(r,t);return LT(this,o)&&(j(this,xo,o),j(this,cl,this.options),j(this,Ys,g(this,Et).state)),o}getCurrentResult(){return g(this,xo)}trackResult(t,r){return new Proxy(t,{get:(o,n)=>(this.trackProp(n),r?.(n),n==="promise"&&(this.trackProp("data"),!this.options.experimental_prefetchInRender&&g(this,Ri).status==="pending"&&g(this,Ri).reject(new Error("experimental_prefetchInRender feature flag is not enabled"))),Reflect.get(o,n))})}trackProp(t){g(this,pl).add(t);}getCurrentQuery(){return g(this,Et)}refetch({...t}={}){return this.fetch({...t})}fetchOptimistic(t){let r=g(this,Bo).defaultQueryOptions(t),o=g(this,Bo).getQueryCache().build(g(this,Bo),r);return o.fetch().then(()=>this.createResult(o,r))}fetch(t){return St(this,Xt,Cc).call(this,{...t,cancelRefetch:t.cancelRefetch??true}).then(()=>(this.updateResult(),g(this,xo)))}createResult(t,r){let o=g(this,Et),n=this.options,s=g(this,xo),i=g(this,Ys),a=g(this,cl),c=t!==o?t.state:g(this,wc),{state:p}=t,h={...p},T=false,d;if(r._optimisticResults){let y=this.hasListeners(),F=!y&&hy(t,r),L=y&&gy(t,o,r,n);(F||L)&&(h={...h,...my(p.data,t.options)}),r._optimisticResults==="isRestoring"&&(h.fetchStatus="idle");}let{error:f,errorUpdatedAt:C,status:v}=h;d=h.data;let x=false;if(r.placeholderData!==void 0&&d===void 0&&v==="pending"){let y;s?.isPlaceholderData&&r.placeholderData===a?.placeholderData?(y=s.data,x=true):y=typeof r.placeholderData=="function"?r.placeholderData(g(this,ul)?.state.data,g(this,ul)):r.placeholderData,y!==void 0&&(v="success",d=kf(s?.data,y,r),T=true);}if(r.select&&d!==void 0&&!x)if(s&&d===i?.data&&r.select===g(this,Sc))d=g(this,dl);else try{j(this,Sc,r.select),d=r.select(d),d=kf(s?.data,d,r),j(this,dl,d),j(this,bs,null);}catch(y){j(this,bs,y);}g(this,bs)&&(f=g(this,bs),d=g(this,dl),C=Date.now(),v="error");let k=h.fetchStatus==="fetching",R=v==="pending",w=v==="error",_=R&&k,m=d!==void 0,S={status:v,fetchStatus:h.fetchStatus,isPending:R,isSuccess:v==="success",isError:w,isInitialLoading:_,isLoading:_,data:d,dataUpdatedAt:h.dataUpdatedAt,error:f,errorUpdatedAt:C,failureCount:h.fetchFailureCount,failureReason:h.fetchFailureReason,errorUpdateCount:h.errorUpdateCount,isFetched:t.isFetched(),isFetchedAfterMount:h.dataUpdateCount>c.dataUpdateCount||h.errorUpdateCount>c.errorUpdateCount,isFetching:k,isRefetching:k&&!R,isLoadingError:w&&!m,isPaused:h.fetchStatus==="paused",isPlaceholderData:T,isRefetchError:w&&m,isStale:Lf(t,r),refetch:this.refetch,promise:g(this,Ri),isEnabled:Qo(r.enabled,t)!==false};if(this.options.experimental_prefetchInRender){let y=S.data!==void 0,F=S.status==="error"&&!y,L=O=>{F?O.reject(S.error):y&&O.resolve(S.data);},V=()=>{let O=j(this,Ri,S.promise=xf());L(O);},D=g(this,Ri);switch(D.status){case "pending":t.queryHash===o.queryHash&&L(D);break;case "fulfilled":(F||S.data!==D.value)&&V();break;case "rejected":(!F||S.error!==D.reason)&&V();break}}return S}updateResult(){let t=g(this,xo),r=this.createResult(g(this,Et),this.options);if(j(this,Ys,g(this,Et).state),j(this,cl,this.options),g(this,Ys).data!==void 0&&j(this,ul,g(this,Et)),hu(r,t))return;j(this,xo,r);let o=()=>{if(!t)return true;let{notifyOnChangeProps:n}=this.options,s=typeof n=="function"?n():n;if(s==="all"||!s&&!g(this,pl).size)return true;let i=new Set(s??g(this,pl));return this.options.throwOnError&&i.add("error"),Object.keys(g(this,xo)).some(a=>{let l=a;return g(this,xo)[l]!==t[l]&&i.has(l)})};St(this,Xt,by).call(this,{listeners:o()});}onQueryUpdate(){this.updateResult(),this.hasListeners()&&St(this,Xt,If).call(this);}},Bo=new WeakMap,Et=new WeakMap,wc=new WeakMap,xo=new WeakMap,Ys=new WeakMap,cl=new WeakMap,Ri=new WeakMap,bs=new WeakMap,Sc=new WeakMap,dl=new WeakMap,ul=new WeakMap,Js=new WeakMap,Zs=new WeakMap,Cs=new WeakMap,pl=new WeakMap,Xt=new WeakSet,Cc=function(t){St(this,Xt,Df).call(this);let r=g(this,Et).fetch(this.options,t);return t?.throwOnError||(r=r.catch(nl)),r},vf=function(){St(this,Xt,Pf).call(this);let t=il(this.options.staleTime,g(this,Et));if(sl.isServer()||g(this,xo).isStale||!Tf(t))return;let o=cy(g(this,xo).dataUpdatedAt,t)+1;j(this,Js,yc.setTimeout(()=>{g(this,xo).isStale||this.updateResult();},o));},Rf=function(){return (typeof this.options.refetchInterval=="function"?this.options.refetchInterval(g(this,Et)):this.options.refetchInterval)??false},_f=function(t){St(this,Xt,Ff).call(this),j(this,Cs,t),!(sl.isServer()||Qo(this.options.enabled,g(this,Et))===false||!Tf(g(this,Cs))||g(this,Cs)===0)&&j(this,Zs,yc.setInterval(()=>{(this.options.refetchIntervalInBackground||oy.isFocused())&&St(this,Xt,Cc).call(this);},g(this,Cs)));},If=function(){St(this,Xt,vf).call(this),St(this,Xt,_f).call(this,St(this,Xt,Rf).call(this));},Pf=function(){g(this,Js)!==void 0&&(yc.clearTimeout(g(this,Js)),j(this,Js,void 0));},Ff=function(){g(this,Zs)!==void 0&&(yc.clearInterval(g(this,Zs)),j(this,Zs,void 0));},Df=function(){let t=g(this,Bo).getQueryCache().build(g(this,Bo),this.options);if(t===g(this,Et))return;let r=g(this,Et);j(this,Et,t),j(this,wc,t.state),this.hasListeners()&&(r?.removeObserver(this),t.addObserver(this));},by=function(t){bc.batch(()=>{t.listeners&&this.listeners.forEach(r=>{r(g(this,xo));}),g(this,Bo).getQueryCache().notify({query:g(this,Et),type:"observerResultsUpdated"});});},yy);function OT(e,t){return Qo(t.enabled,e)!==false&&e.state.data===void 0&&!(e.state.status==="error"&&Qo(t.retryOnMount,e)===false)}function hy(e,t){return OT(e,t)||e.state.data!==void 0&&Vf(e,t,t.refetchOnMount)}function Vf(e,t,r){if(Qo(t.enabled,e)!==false&&il(t.staleTime,e)!=="static"){let o=typeof r=="function"?r(e):r;return o==="always"||o!==false&&Lf(e,t)}return false}function gy(e,t,r,o){return (e!==t||Qo(o.enabled,e)===false)&&(!r.suspense||e.state.status!=="error")&&Lf(e,r)}function Lf(e,t){return Qo(t.enabled,e)!==false&&e.isStaleByTime(il(t.staleTime,e))}function LT(e,t){return !hu(e.getCurrentResult(),t)}var BT=ws__namespace.createContext(void 0),Cy=e=>{let t=ws__namespace.useContext(BT);if(!t)throw new Error("No QueryClient set, use QueryClientProvider to set one");return t};var wy=ws__namespace.createContext(false),Sy=()=>ws__namespace.useContext(wy);wy.Provider;function AT(){let e=false;return {clearReset:()=>{e=false;},reset:()=>{e=true;},isReset:()=>e}}var WT=ws__namespace.createContext(AT()),Ty=()=>ws__namespace.useContext(WT);var xy=(e,t,r)=>{let o=r?.state.error&&typeof e.throwOnError=="function"?gu(e.throwOnError,[r.state.error,r]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||o)&&(t.isReset()||(e.retryOnMount=false));},vy=e=>{ws__namespace.useEffect(()=>{e.clearReset();},[e]);},Ry=({result:e,errorResetBoundary:t,throwOnError:r,query:o,suspense:n})=>e.isError&&!t.isReset()&&!e.isFetching&&o&&(n&&e.data===void 0||gu(r,[e.error,o]));var _y=e=>{if(e.suspense){let r=n=>n==="static"?n:Math.max(n??1e3,1e3),o=e.staleTime;e.staleTime=typeof o=="function"?(...n)=>r(o(...n)):r(o),typeof e.gcTime=="number"&&(e.gcTime=Math.max(e.gcTime,1e3));}},Iy=(e,t)=>e.isLoading&&e.isFetching&&!t,Py=(e,t)=>e?.suspense&&t.isPending,Bf=(e,t,r)=>t.fetchOptimistic(e).catch(()=>{r.clearReset();});function Fy(e,t,r){if(process.env.NODE_ENV!=="production"&&(typeof e!="object"||Array.isArray(e)))throw new Error('Bad argument type. Starting with v5, only the "Object" form is allowed when calling query related functions. Please use the error stack to find the culprit call. More info here: https://tanstack.com/query/latest/docs/react/guides/migrating-to-v5#supports-a-single-signature-one-object');let o=Sy(),n=Ty(),s=Cy(),i=s.defaultQueryOptions(e);s.getDefaultOptions().queries?._experimental_beforeQuery?.(i);let a=s.getQueryCache().get(i.queryHash);process.env.NODE_ENV!=="production"&&(i.queryFn||console.error(`[${i.queryHash}]: No queryFn was passed as an option, and no default queryFn was found. The queryFn parameter is only optional when using a default queryFn. More info here: https://tanstack.com/query/latest/docs/framework/react/guides/default-query-function`));let l=e.subscribed!==false;i._optimisticResults=o?"isRestoring":l?"optimistic":void 0,_y(i),xy(i,n,a),vy(n);let c=!s.getQueryCache().get(i.queryHash),[p]=ws__namespace.useState(()=>new t(s,i)),h=p.getOptimisticResult(i),T=!o&&l;if(ws__namespace.useSyncExternalStore(ws__namespace.useCallback(d=>{let f=T?p.subscribe(bc.batchCalls(d)):nl;return p.updateResult(),f},[p,T]),()=>p.getCurrentResult(),()=>p.getCurrentResult()),ws__namespace.useEffect(()=>{p.setOptions(i);},[i,p]),Py(i,h))throw Bf(i,p,n);if(Ry({result:h,errorResetBoundary:n,throwOnError:i.throwOnError,query:a,suspense:i.suspense}))throw h.error;return s.getDefaultOptions().queries?._experimental_afterQuery?.(i,h),i.experimental_prefetchInRender&&!sl.isServer()&&Iy(h,o)&&(c?Bf(i,p,n):a?.promise)?.catch(nl).finally(()=>{p.updateResult();}),i.notifyOnChangeProps?h:p.trackResult(h)}function _i(e,t){return Fy(e,Of)}function bu(e,t=true){return _i({queryKey:["unifold","supportedDestinationTokens",e],queryFn:()=>qc(e),staleTime:1e3*60*5,gcTime:1e3*60*30,refetchOnMount:false,enabled:t})}function Af(e){let{sourceChainType:t,sourceChainId:r,sourceTokenAddress:o,sourceTokenSymbol:n,publishableKey:s,enabled:i=true}=e;return _i({queryKey:["unifold","sourceTokenValidation",t??null,r??null,o??null,s],queryFn:async()=>{let l=await ni(s),c=null,p=null,h=null,T=null,d,f,C,v=l.data.some(x=>x.chains.some(k=>{let R=k.chain_type===t&&k.chain_id===r&&k.token_address.toLowerCase()===o.toLowerCase();return R&&(c=k.minimum_deposit_amount_usd,p=k.estimated_processing_time,h=k.max_slippage_percent,T=k.estimated_price_impact_percent,C=k.chain_name,f=x),R}));if(f){let x=Ue(f,"png");x&&(d=ie(x));}return {isSupported:v,minimumAmountUsd:c,estimatedProcessingTime:p,maxSlippagePercent:h,priceImpactPercent:T,errorMessage:v?null:`${n||"Source token"} is not a supported withdrawal token. Supported tokens include USDC, USDT, and other stablecoins.`,iconUrl:d,chainName:C}},enabled:i&&(!!t&&!!r&&!!o),staleTime:1e3*60*5,gcTime:1e3*60*30,refetchOnMount:false})}function Wf(e){let{address:t,chainType:r,chainId:o,tokenAddress:n,publishableKey:s,enabled:i=true}=e;return _i({queryKey:["unifold","addressBalance",t??null,r??null,o??null,n??null,s],queryFn:async()=>{let l=await Qc(t,r,o,n,s);if(l.balance){let c=l.balance.token?.decimals??6,p=l.balance.token?.symbol??"",h=l.balance.amount,T=BigInt(h),d=BigInt(10**c),f=T/d,v=(T%d).toString().padStart(c,"0").replace(/0+$/,""),x=v?`${f}.${v}`:f.toString();return {balanceBaseUnit:h,balanceHuman:x,balanceUsd:l.balance.amount_usd,exchangeRate:l.balance.exchange_rate,decimals:c,symbol:p}}return {balanceBaseUnit:"0",balanceHuman:"0",balanceUsd:"0",exchangeRate:null,decimals:6,symbol:""}},enabled:i&&(!!t&&!!r&&!!o&&!!n),staleTime:1e3*30,gcTime:1e3*60*5,refetchInterval:1e3*30,refetchOnMount:"always"})}var ET=2500,MT=3e3,zT=6e4;function Ef({userId:e,publishableKey:t,depositWalletId:r,enabled:o=false,onWithdrawSuccess:n,onWithdrawError:s}){let[i,a]=ws.useState([]),[l,c]=ws.useState(false),p=ws.useRef(new Date),h=ws.useRef(new Map),T=ws.useRef(false),d=ws.useRef(n),f=ws.useRef(s);return ws.useEffect(()=>{d.current=n;},[n]),ws.useEffect(()=>{f.current=s;},[s]),ws.useEffect(()=>{o&&!T.current&&(p.current=new Date,h.current.clear()),o||h.current.clear(),T.current=o;},[o]),ws.useEffect(()=>{if(!e||!o)return;let C=p.current,v=async()=>{try{let k=await mn(e,t,"withdraw"),R=new Date(C.getTime()-zT),w=[...k.data].sort((S,y)=>{let F=S.created_at?new Date(S.created_at).getTime():0;return (y.created_at?new Date(y.created_at).getTime():0)-F}),_=["pending","waiting","delayed"],m=["succeeded","failed"],u=null;for(let S of w){let y=S.created_at?new Date(S.created_at):null;if(!y||y<R)continue;let F=h.current.get(S.id);if(!F){u=S;break}if(_.includes(F)&&m.includes(S.status)){u=S;break}}if(u){let S=u,y=S.created_at?new Date(S.created_at):null;if(!y||y<p.current)return;let F=h.current.get(S.id);h.current.set(S.id,S.status),a(L=>{let V=L.findIndex(D=>D.id===S.id);if(V>=0){let D=[...L];return D[V]=S,D}return [...L,S]}),S.status==="succeeded"&&(!F||_.includes(F))?d.current?.({message:"Withdrawal completed successfully",transaction:S}):S.status==="failed"&&F!=="failed"&&f.current?.({message:"Withdrawal failed",code:"WITHDRAW_FAILED",error:S});}}catch(k){console.error("Failed to fetch withdraw executions:",k),f.current?.({message:"Failed to fetch withdrawal status",code:"POLLING_ERROR",error:k});}};v();let x=setInterval(v,ET);return c(true),()=>{clearInterval(x),c(false);}},[e,t,o]),ws.useEffect(()=>{if(!o||!r)return;let C=async()=>{try{await Ku({deposit_wallet_id:r},t);}catch{}};C();let v=setInterval(C,MT);return ()=>clearInterval(v)},[o,r,t]),{executions:i,isPolling:l}}var Mf=(e,t)=>`${t}:${e}`;function Rc({tokens:e,selectedTokenSymbol:t,selectedChainKey:r,onTokenChange:o,onChainChange:n,isLoading:s=false,tokenLabel:i="Receive token",chainLabel:a="Receive chain",tokenPickerBorderTopLeftRadius:l,tokenPickerBorderTopRightRadius:c,chainPickerBorderTopLeftRadius:p,chainPickerBorderTopRightRadius:h}){let{colors:T,fonts:d,components:f}=A(),[C,v]=ws.useState(false),[x,k]=ws.useState(false),R=f.card,w=t?e.find(S=>S.symbol===t):void 0,_=w?.chains||[],m=r?_.find(S=>Mf(S.chain_id,S.chain_type)===r):void 0,u={backgroundColor:R.backgroundColor,borderRadius:R.borderRadius,borderWidth:R.borderWidth||1,borderColor:R.borderColor};return jsxRuntime.jsxs(reactNative.View,{style:Nt.row,children:[jsxRuntime.jsxs(reactNative.View,{style:Nt.col,children:[jsxRuntime.jsx(reactNative.Text,{style:[Nt.label,{color:R.labelColor,fontFamily:d.medium}],children:i}),jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[Nt.selectButton,u],onPress:()=>!s&&e.length>0&&v(true),activeOpacity:.7,disabled:s||e.length===0,children:[s?jsxRuntime.jsx(reactNative.Text,{style:[Nt.placeholder,{color:R.subtitleColor,fontFamily:d.regular}],children:"Loading..."}):w?jsxRuntime.jsxs(reactNative.View,{style:Nt.selectedItem,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(w,"png"))},style:Nt.icon}),jsxRuntime.jsx(reactNative.Text,{style:[Nt.selectedText,{color:R.titleColor,fontFamily:d.medium}],numberOfLines:1,children:w.symbol})]}):jsxRuntime.jsx(reactNative.Text,{style:[Nt.placeholder,{color:R.subtitleColor,fontFamily:d.regular}],children:"Select receive token"}),jsxRuntime.jsx(lr,{size:16,color:R.actionColor,strokeWidth:2})]})]}),jsxRuntime.jsxs(reactNative.View,{style:Nt.col,children:[jsxRuntime.jsx(reactNative.Text,{style:[Nt.label,{color:R.labelColor,fontFamily:d.medium}],children:a}),jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[Nt.selectButton,u,(!w||_.length===0)&&Nt.disabled],onPress:()=>!s&&w&&_.length>0&&k(true),activeOpacity:.7,disabled:s||!w||_.length===0,children:[m?jsxRuntime.jsxs(reactNative.View,{style:Nt.selectedItem,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(m,"png"))},style:Nt.icon}),jsxRuntime.jsx(reactNative.Text,{style:[Nt.selectedText,{color:R.titleColor,fontFamily:d.medium}],numberOfLines:1,children:m.chain_name})]}):jsxRuntime.jsx(reactNative.Text,{style:[Nt.placeholder,{color:R.subtitleColor,fontFamily:d.regular}],children:"Chain"}),jsxRuntime.jsx(lr,{size:16,color:R.actionColor,strokeWidth:2})]})]}),jsxRuntime.jsxs(zt,{visible:C,onClose:()=>v(false),closeOnBackdropPress:true,showHandle:true,heightPercent:.9,borderTopLeftRadius:l,borderTopRightRadius:c,children:[jsxRuntime.jsxs(reactNative.View,{style:Nt.pickerHeader,children:[jsxRuntime.jsx(reactNative.View,{style:Nt.pickerHeaderSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[Nt.pickerTitle,{color:T.foreground,fontFamily:d.medium}],children:"Select Token"}),jsxRuntime.jsx(reactNative.TouchableOpacity,{style:Nt.pickerHeaderClose,onPress:()=>v(false),hitSlop:{top:10,bottom:10,left:10,right:10},children:jsxRuntime.jsx(Rt,{size:20,color:T.foregroundMuted,strokeWidth:2})})]}),jsxRuntime.jsx(ua,{data:e,keyExtractor:S=>S.symbol,contentContainerStyle:Nt.listContent,showsVerticalScrollIndicator:false,renderItem:({item:S})=>jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[Nt.pickerItem,{backgroundColor:S.symbol===t?T.cardHover:"transparent"}],onPress:()=>{o(S.symbol),v(false);},activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(S,"png"))},style:Nt.pickerIcon}),jsxRuntime.jsx(reactNative.Text,{style:[Nt.pickerItemText,{color:T.foreground,fontFamily:d.medium}],children:S.symbol}),jsxRuntime.jsx(reactNative.Text,{style:[Nt.pickerItemSub,{color:T.foregroundMuted,fontFamily:d.regular}],children:S.name}),S.symbol===t&&jsxRuntime.jsx(dt,{size:18,color:T.primary,strokeWidth:2.5})]})})]}),jsxRuntime.jsxs(zt,{visible:x,onClose:()=>k(false),closeOnBackdropPress:true,showHandle:true,heightPercent:.9,borderTopLeftRadius:p,borderTopRightRadius:h,children:[jsxRuntime.jsxs(reactNative.View,{style:Nt.pickerHeader,children:[jsxRuntime.jsx(reactNative.View,{style:Nt.pickerHeaderSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[Nt.pickerTitle,{color:T.foreground,fontFamily:d.medium}],children:"Select Chain"}),jsxRuntime.jsx(reactNative.TouchableOpacity,{style:Nt.pickerHeaderClose,onPress:()=>k(false),hitSlop:{top:10,bottom:10,left:10,right:10},children:jsxRuntime.jsx(Rt,{size:20,color:T.foregroundMuted,strokeWidth:2})})]}),jsxRuntime.jsx(ua,{data:_,keyExtractor:S=>Mf(S.chain_id,S.chain_type),contentContainerStyle:Nt.listContent,showsVerticalScrollIndicator:false,renderItem:({item:S})=>{let y=Mf(S.chain_id,S.chain_type);return jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[Nt.pickerItem,{backgroundColor:y===r?T.cardHover:"transparent"}],onPress:()=>{n(y),k(false);},activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(Ue(S,"png"))},style:Nt.pickerIcon}),jsxRuntime.jsx(reactNative.Text,{style:[Nt.pickerItemText,{color:T.foreground,fontFamily:d.medium}],children:S.chain_name}),y===r&&jsxRuntime.jsx(dt,{size:18,color:T.primary,strokeWidth:2.5})]})}})]})]})}var Nt=reactNative.StyleSheet.create({row:{flexDirection:"column",gap:10},col:{},label:{fontSize:12,marginBottom:6},selectButton:{flexDirection:"row",alignItems:"center",paddingHorizontal:12,paddingVertical:12,gap:6,minHeight:48},selectedItem:{flex:1,flexDirection:"row",alignItems:"center",gap:6},icon:{width:20,height:20,borderRadius:10},selectedText:{fontSize:13,flexShrink:1},placeholder:{flex:1,fontSize:13},disabled:{opacity:.4},pickerHeader:{flexDirection:"row",alignItems:"center",paddingHorizontal:16,paddingTop:16,paddingBottom:12},pickerHeaderSpacer:{width:28},pickerHeaderClose:{width:28,alignItems:"flex-end"},pickerTitle:{flex:1,fontSize:16,textAlign:"center"},listContent:{paddingHorizontal:16,paddingVertical:8},pickerItem:{flexDirection:"row",alignItems:"center",paddingVertical:12,paddingHorizontal:12,borderRadius:10,gap:10},pickerIcon:{width:32,height:32,borderRadius:16},pickerItemText:{fontSize:15,flex:1},pickerItemSub:{fontSize:13}});function zf(e){let{chainType:t,chainId:r,tokenAddress:o,recipientAddress:n,publishableKey:s,enabled:i=true}=e,a=n?.trim()||"",l=!!t&&!!r&&!!o&&a.length>0;return _i({queryKey:["unifold","verifyRecipientAddress",t??null,r??null,o??null,a,s],queryFn:()=>Qu({chain_type:t,chain_id:r,token_address:o,recipient_address:a},s),enabled:i&&l,staleTime:1e3*60*5,gcTime:1e3*60*30,retry:1,refetchOnMount:false})}function jT(e){if(e===null)return "< 1 min";let t=Math.ceil(e/60);return t<60?`< ${t} min`:`< ${Math.ceil(t/60)} hr`}function $T(e,t){if(e<=0)return "0";if(t===0)return BigInt(Math.round(e)).toString();let r=e.toFixed(t),[o,n=""]=r.split("."),s=n.padEnd(t,"0").slice(0,t);return (BigInt(o)*BigInt(10**t)+BigInt(s)).toString()}function qT(e,t){return e===0?"0":e.toFixed(t).replace(/\.?0+$/,"")}function wu({publishableKey:e,sourceChainType:t,sourceChainId:r,sourceTokenAddress:o,sourceTokenSymbol:n,sourceChainName:s,sourceTokenIconUrl:i,recipientAddressProp:a,selectedToken:l,selectedChain:c,balanceData:p,isLoadingBalance:h,minimumWithdrawAmountUsd:T,estimatedProcessingTime:d,maxSlippagePercent:f,priceImpactPercent:C,canWithdraw:v,onDepositWalletCreation:x,onWithdraw:k,onWithdrawError:R,onWithdrawSubmitted:w,onViewTracker:_}){let m="https://unifold.io/terms",u="https://unifold.io/support",{colors:S,fonts:y,components:F}=A(),[L,V]=ws.useState(a||""),[D,O]=ws.useState(""),[N,M]=ws.useState(false),[Ve,se]=ws.useState(null),[Le,J]=ws.useState(false),[pe,ee]=ws.useState(""),U=ws.useRef(null);ws.useEffect(()=>{V(a||""),O(""),se(null);},[a]);let de=L.trim();ws.useEffect(()=>{let ve=setTimeout(()=>ee(de),500);return ()=>clearTimeout(ve)},[de]);let{data:Z,isLoading:he,error:it}=zf({chainType:c?.chain_type,chainId:c?.chain_id,tokenAddress:c?.token_address,recipientAddress:pe,publishableKey:e,enabled:pe.length>5&&!!c}),Oe=de!==pe,te=ws.useMemo(()=>!de||de.length<=5||Oe||he?null:it?"Invalid address":Z&&!Z.valid?Z.failure_code==="account_not_found"?`Account not found on ${c?.chain_name}`:Z.failure_code==="not_opted_in"?`Recipient hasn't opted in to ${l?.symbol} on ${c?.chain_name}`:"Invalid address":null,[de,Oe,he,it,Z,c,l]),je=!Oe&&!!Z?.valid&&!te,Xe=ws.useMemo(()=>p?.exchangeRate?parseFloat(p.exchangeRate):0,[p]),qe=ws.useMemo(()=>p?.balanceHuman?parseFloat(p.balanceHuman):0,[p]),ft=n||p?.symbol||"TOKEN",He=p?.decimals??6,Ae=ws.useMemo(()=>{let ve=parseFloat(D);return !ve||ve<=0?0:ve},[D]),We=ws.useMemo(()=>{let ve=parseFloat(D);return !ve||ve<=0?0:ve*Xe},[D,Xe]),_e=ws.useCallback(async()=>{try{let Ee=await Yy("expo-clipboard").getStringAsync();Ee&&(V(Ee.trim()),se(null));}catch{}},[]),be=ws.useCallback(()=>{qe<=0||O(p?.balanceHuman??"0");},[qe,p]),Ge=T!==null&&We>0&&We<T,Ye=Ae>0&&qe>0&&Ae>qe,at=de.length>0&&D.trim().length>0&&Ae>0&&je&&!Ge&&!Ye&&!!p,Tr=ws.useCallback(async()=>{if(!(!l||!c||!at||!v)){M(true),se(null);try{let ve=await x({destinationChainType:c.chain_type,destinationChainId:c.chain_id,destinationTokenAddress:c.token_address,recipientAddress:de}),Ee=$T(Ae,He),ge=qT(Ae,He),ct={sourceChainType:t,sourceChainId:r,sourceTokenAddress:o,sourceTokenSymbol:ft,sourceTokenIconUrl:i,destinationChainType:c.chain_type,destinationChainId:c.chain_id,destinationTokenAddress:c.token_address,destinationTokenSymbol:l.symbol,destinationChainName:c.chain_name,destinationTokenIconUrl:l?ie(Ue(l,"png")):void 0,amount:ge,amountBaseUnit:Ee,submittedAt:new Date,withdrawIntentAddress:ve.address,recipientAddress:de};await k(ct),w(ct);}catch(ve){let Ee=ve instanceof Error?ve.message:"Withdrawal failed. Please try again.",ge=Ee.length>120?"Withdrawal failed. Please try again.":Ee;se(ge),R?.({message:Ee,error:ve,code:"WITHDRAW_FAILED"});}finally{M(false);}}},[l,c,at,v,de,t,r,o,ft,i,D,qe,p,Ae,He,We,x,k,R,w]),$e=F.input,Ie=F.card,et=F.button,lt=te?S.error:$e.borderColor,xe=ws.useMemo(()=>N?"Processing...":Ye?"Insufficient balance":Ge?`Minimum $${T?.toFixed(2)}`:Ve?"Withdrawal failed \u2014 try again":"Withdraw",[N,Ye,Ge,T,Ve]);return jsxRuntime.jsxs(reactNative.View,{style:Mt.container,children:[jsxRuntime.jsxs(reactNative.View,{children:[jsxRuntime.jsxs(reactNative.View,{style:Mt.labelRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[Mt.label,{color:Ie.labelColor,fontFamily:y.medium}],children:"Recipient address"}),(Oe||he)&&de.length>5?jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"small",color:S.primary}):jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:_e,activeOpacity:.6,hitSlop:{top:8,bottom:8,left:8,right:8},children:jsxRuntime.jsx(Zf,{size:16,color:S.foregroundMuted,strokeWidth:1.75})})]}),jsxRuntime.jsx(reactNative.View,{style:[Mt.inputRow,{backgroundColor:$e.backgroundColor,borderRadius:$e.borderRadius,borderWidth:$e.borderWidth,borderColor:lt}],children:jsxRuntime.jsx(reactNative.TextInput,{style:[Mt.textInput,{color:$e.textColor,fontFamily:y.regular}],placeholder:"Enter wallet address",placeholderTextColor:$e.placeholderColor,value:L,onChangeText:ve=>{V(ve),se(null);},autoCapitalize:"none",autoCorrect:false,returnKeyType:"done",onSubmitEditing:()=>U.current?.focus()})}),te?jsxRuntime.jsx(reactNative.Text,{style:[Mt.errorText,{color:S.error,fontFamily:y.regular}],children:te}):null]}),jsxRuntime.jsxs(reactNative.View,{children:[jsxRuntime.jsxs(reactNative.Text,{style:[Mt.label,{color:Ie.labelColor,fontFamily:y.medium,paddingBottom:8}],children:["Amount",T!=null&&T>0&&jsxRuntime.jsx(reactNative.Text,{style:{color:S.warning,fontFamily:y.regular},children:` ($${T.toFixed(2)} min)`})]}),jsxRuntime.jsxs(reactNative.View,{style:[Mt.amountRow,{backgroundColor:$e.backgroundColor,borderRadius:$e.borderRadius,borderWidth:$e.borderWidth,borderColor:$e.borderColor}],children:[jsxRuntime.jsx(reactNative.TextInput,{ref:U,style:[Mt.amountInput,{color:$e.textColor,fontFamily:y.regular}],placeholder:"0.00",placeholderTextColor:$e.placeholderColor,value:D,onChangeText:ve=>{(ve===""||/^\d*\.?\d*$/.test(ve))&&(O(ve),se(null));},keyboardType:"decimal-pad",returnKeyType:"done"}),jsxRuntime.jsx(reactNative.Text,{style:[Mt.unitLabel,{color:S.foregroundMuted,fontFamily:y.medium}],children:ft}),jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[Mt.maxButton,{backgroundColor:`${S.primary}20`}],onPress:be,activeOpacity:.7,children:jsxRuntime.jsx(reactNative.Text,{style:[Mt.maxText,{color:S.primary,fontFamily:y.medium}],children:"Max"})})]})]}),jsxRuntime.jsxs(reactNative.View,{style:[Mt.detailsCard,{marginTop:24,backgroundColor:Ie.backgroundColor,borderRadius:Ie.borderRadius,borderWidth:Ie.borderWidth||1,borderColor:Ie.borderColor}],children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:Mt.detailsToggle,onPress:()=>J(!Le),activeOpacity:.7,children:jsxRuntime.jsxs(reactNative.View,{style:Mt.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[Mt.detailIcon,{backgroundColor:Ie.iconBackgroundColor,borderRadius:Ie.iconContainerBorderRadius}],children:jsxRuntime.jsx(ho,{size:12,color:Ie.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[Mt.detailsLabel,{color:Ie.titleColor,fontFamily:y.regular}],children:["Processing time:"," ",jsxRuntime.jsx(reactNative.Text,{style:{fontFamily:y.medium},children:jT(d)})]}),jsxRuntime.jsx(reactNative.View,{style:{transform:[{rotate:Le?"180deg":"0deg"}]},children:jsxRuntime.jsx(lr,{size:16,color:Ie.actionColor,strokeWidth:2})})]})}),Le&&jsxRuntime.jsxs(reactNative.View,{style:Mt.detailsExpanded,children:[jsxRuntime.jsxs(reactNative.View,{style:Mt.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[Mt.detailIcon,{backgroundColor:Ie.iconBackgroundColor,borderRadius:Ie.iconContainerBorderRadius}],children:jsxRuntime.jsx(So,{size:12,color:Ie.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[Mt.detailsLabel,{color:Ie.titleColor,fontFamily:y.regular}],children:["Slippage:"," ",jsxRuntime.jsxs(reactNative.Text,{style:{fontFamily:y.medium},children:["Auto \u2022 ",(f??.25).toFixed(2),"%"]})]})]}),jsxRuntime.jsxs(reactNative.View,{style:Mt.detailsRow,children:[jsxRuntime.jsx(reactNative.View,{style:[Mt.detailIcon,{backgroundColor:Ie.iconBackgroundColor,borderRadius:Ie.iconContainerBorderRadius}],children:jsxRuntime.jsx(pn,{size:12,color:Ie.iconColor,strokeWidth:2})}),jsxRuntime.jsxs(reactNative.Text,{style:[Mt.detailsLabel,{color:Ie.titleColor,fontFamily:y.regular}],children:["Price impact:"," ",jsxRuntime.jsxs(reactNative.Text,{style:{fontFamily:y.medium},children:[(C??0).toFixed(2),"%"]})]})]})]})]}),Ve&&jsxRuntime.jsx(reactNative.Text,{style:[Mt.errorText,{color:S.error,fontFamily:y.regular,textAlign:"center"}],children:Ve}),jsxRuntime.jsxs(reactNative.View,{style:Mt.withdrawRow,children:[jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:[Mt.withdrawButton,{backgroundColor:et.primaryBackground,borderRadius:et.borderRadius,borderWidth:et.borderWidth,borderColor:et.borderColor,opacity:!at||!v||N?.5:1}],onPress:Tr,disabled:!at||!v||N,activeOpacity:.8,children:[N&&jsxRuntime.jsx(reactNative.ActivityIndicator,{size:"small",color:et.primaryText}),jsxRuntime.jsx(reactNative.Text,{style:[Mt.withdrawButtonText,{color:et.primaryText,fontFamily:y.medium}],children:xe})]}),jsxRuntime.jsxs(reactNative.View,{style:Mt.footerRow,children:[jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:Mt.historyLink,onPress:_,activeOpacity:.7,children:[jsxRuntime.jsx(ho,{size:14,color:S.foregroundMuted,strokeWidth:2}),jsxRuntime.jsx(reactNative.Text,{style:[Mt.historyText,{color:S.foregroundMuted,fontFamily:y.regular}],children:"Withdrawal history"})]}),jsxRuntime.jsxs(reactNative.View,{style:Mt.legalLinks,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:()=>reactNative.Linking.openURL(m),activeOpacity:.7,children:jsxRuntime.jsx(reactNative.Text,{style:[Mt.legalText,{color:S.foregroundMuted,fontFamily:y.regular}],children:"Terms"})}),jsxRuntime.jsx(reactNative.Text,{style:[Mt.legalSeparator,{color:S.foregroundMuted,fontFamily:y.regular}],children:"|"}),jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:()=>reactNative.Linking.openURL(u),activeOpacity:.7,children:jsxRuntime.jsx(reactNative.Text,{style:[Mt.legalText,{color:S.foregroundMuted,fontFamily:y.regular}],children:"Help"})})]})]})]})]})}var Mt=reactNative.StyleSheet.create({container:{gap:12,paddingHorizontal:16,paddingBottom:16},label:{fontSize:12},labelRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",marginBottom:6},inputRow:{flexDirection:"row",alignItems:"center",paddingHorizontal:12,paddingVertical:6,minHeight:48},textInput:{flex:1,fontSize:14,paddingVertical:8},errorText:{fontSize:12,marginTop:4},amountRow:{flexDirection:"row",alignItems:"center",paddingHorizontal:12,paddingVertical:6,minHeight:48,gap:8},amountInput:{flex:1,fontSize:14,paddingVertical:8},unitLabel:{fontSize:14,flexShrink:0},maxButton:{paddingHorizontal:8,paddingVertical:4,borderRadius:6},maxText:{fontSize:12,fontWeight:"600"},withdrawRow:{gap:12},footerRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between"},historyLink:{flexDirection:"row",alignItems:"center",gap:6},historyText:{fontSize:13},legalLinks:{flexDirection:"row",alignItems:"center",gap:6},legalText:{fontSize:13},legalSeparator:{fontSize:13},detailsCard:{paddingHorizontal:12,overflow:"hidden"},detailsToggle:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:12},detailsRow:{flexDirection:"row",alignItems:"center",gap:8},detailIcon:{width:24,height:24,alignItems:"center",justifyContent:"center"},detailsLabel:{fontSize:13,flex:1},detailsExpanded:{gap:10,paddingBottom:12},withdrawButton:{flexDirection:"row",alignItems:"center",justifyContent:"center",paddingVertical:15,gap:8},withdrawButtonText:{fontSize:16,fontWeight:"600"}});function GT(e){try{let t=new Date(e);return t.toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})+" at "+t.toLocaleTimeString("en-US",{hour:"numeric",minute:"2-digit",hour12:!0})}catch{return e}}function YT(e){return e?`$${parseFloat(e).toFixed(2)}`:"$0.00"}function ku({execution:e,onPress:t}){let{colors:r,fonts:o,components:n}=A(),s=n.depositTracker.executionRow.card,i=e.status==="pending"||e.status==="waiting"||e.status==="delayed",a=e.status==="failed"||e.status==="refunded",l=a?r.error:i?r.warning:r.success,c=ie(Ue(e.destination_token_metadata,"png")||er("/icons/tokens/png/usdc.png")),p=a?"Withdrawal Failed":i?"Withdrawal Processing":"Withdrawal Completed",h=GT(e.created_at||new Date().toISOString()),T=YT(e.source_amount_usd);return jsxRuntime.jsxs(Lr,{cardTokens:s,onPress:t,contentStyle:Pi.container,children:[jsxRuntime.jsxs(reactNative.View,{style:Pi.iconContainer,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:c},style:Pi.tokenIcon}),jsxRuntime.jsx(reactNative.View,{style:[Pi.statusBadge,{backgroundColor:l,borderColor:s.backgroundColor}],children:a?jsxRuntime.jsx(Ai,{size:12,color:"#FFFFFF",strokeWidth:2.5}):i?jsxRuntime.jsx(ca,{size:12,color:"#FFFFFF",strokeWidth:2.5}):jsxRuntime.jsx(dt,{size:12,color:"#FFFFFF",strokeWidth:3})})]}),jsxRuntime.jsxs(reactNative.View,{style:Pi.textContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[Pi.title,{color:s.titleColor,fontFamily:o.medium}],children:p}),jsxRuntime.jsx(reactNative.Text,{style:[Pi.dateTime,{color:s.subtitleColor,fontFamily:o.regular}],children:h})]}),jsxRuntime.jsxs(reactNative.View,{style:Pi.rightContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[Pi.amount,{color:s.textRightColor,fontFamily:o.medium}],children:T}),jsxRuntime.jsx(Wr,{size:20,color:s.actionColor,strokeWidth:2})]})]})}var Pi=reactNative.StyleSheet.create({container:{flexDirection:"row",alignItems:"center",paddingHorizontal:16,paddingVertical:12},iconContainer:{position:"relative",marginRight:12},tokenIcon:{width:40,height:40,borderRadius:20},statusBadge:{position:"absolute",bottom:-4,right:-4,width:22,height:22,borderRadius:11,alignItems:"center",justifyContent:"center",borderWidth:2},textContainer:{flex:1,gap:2},title:{fontSize:16},dateTime:{fontSize:13},rightContainer:{flexDirection:"row",alignItems:"center",gap:8},amount:{fontSize:16}});function Hf(e){try{let t=new Date(e),o=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][t.getMonth()],n=t.getDate(),s=t.getFullYear(),i=t.getHours(),a=t.getMinutes(),l=i>=12?"PM":"AM";i=i%12||12;let c=a<10?`0${a}`:`${a}`;return `${o} ${n}, ${s} at ${i}:${c} ${l}`}catch{return e}}function Uy(e,t=6){if(!e)return "\u2014";try{let r=Number(e)/Math.pow(10,t);return r===0?"0.00":r>=1?r.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2}):r.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:8,minimumSignificantDigits:2,maximumSignificantDigits:6})}catch{return "0.00"}}function ZT(e,t){if(e)try{return `$${Number(e).toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2})}`}catch{}if(t)try{return `$${(Number(t)/1e6).toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2})}`}catch{}return "$0.00"}function Ny(e){if(!e)return "";let t=e.indexOf(".");return t===-1?e.toUpperCase():e.slice(0,t).toUpperCase()+e.slice(t)}function Hy(e){return !e||e.length<12?e:`${e.slice(0,12)}...${e.slice(-4)}`}function _c({label:e,value:t,isLast:r}){let{fonts:o,components:n}=A(),s=n.card;return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(reactNative.View,{style:vt.detailRow,children:[jsxRuntime.jsx(reactNative.Text,{style:[vt.detailLabel,{color:s.subtitleColor,fontFamily:o.regular}],children:e}),jsxRuntime.jsx(reactNative.Text,{style:[vt.detailValue,{color:s.titleColor,fontFamily:o.regular}],children:t})]}),!r&&jsxRuntime.jsx(reactNative.View,{style:[vt.divider,{backgroundColor:s.borderColor}]})]})}function $f({execution:e,txInfo:t,onClose:r,onViewHistory:o,onBack:n,onHeaderClose:s}){let{colors:i,fonts:a,components:l}=A(),[c,p]=ws.useState([]),[h,T]=ws.useState(!!n),d=l.card,f=l.button,C=l.header,v=l.container;ws.useEffect(()=>{qu().then(M=>p(M.data)).catch(()=>{});},[]),ws.useEffect(()=>{T(!!n);},[e?.id]);let x=e?e.status==="pending"||e.status==="waiting"||e.status==="delayed":false,k=e?e.status==="failed"||e.status==="refunded":false,R=k?i.error:x?i.warning:i.success,w=k?"Failed":x?"Processing":"Completed",_=e?.destination_token_metadata?ie(Ue(e.destination_token_metadata,"png")):t.destinationTokenIconUrl?ie(t.destinationTokenIconUrl):ie(er("/icons/tokens/png/usdc.png")),m=e?.created_at?Hf(e.created_at):t.submittedAt?Hf(t.submittedAt.toISOString()):Hf(new Date().toISOString()),u=e?`${Uy(e.source_amount_base_unit,e.source_token_metadata?.decimals)} ${Ny(e.source_currency)}`:`${t.amount} ${t.sourceTokenSymbol}`,S=e?`${Uy(e.destination_amount_base_unit,e.destination_token_metadata?.decimals)} ${Ny(e.destination_currency)}`:`${t.amount} ${t.destinationTokenSymbol}`,y=e?ZT(e.source_amount_usd,e.source_amount_base_unit):"$0.00",F=e?$c(c,e.source_chain_type,e.source_chain_id):t.sourceChainId,L=e?$c(c,e.destination_chain_type,e.destination_chain_id):t.destinationChainName??t.destinationChainId,V=e?.transaction_hash,D=e?.explorer_url,O=e?.destination_transaction_hashes?.[0],N=e?.destination_explorer_url;return jsxRuntime.jsxs(At,{style:vt.scroll,contentContainerStyle:vt.container,showsVerticalScrollIndicator:false,children:[jsxRuntime.jsxs(reactNative.View,{style:vt.headerRow,children:[n?jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:n,hitSlop:{top:10,bottom:10,left:10,right:10},children:jsxRuntime.jsx(aa,{size:22,color:C.buttonColor,strokeWidth:2})}):jsxRuntime.jsx(reactNative.View,{style:vt.headerSpacer}),jsxRuntime.jsx(reactNative.Text,{style:[vt.headerTitle,{color:C.titleColor,fontFamily:a.medium}],children:"Withdrawal Details"}),n?jsxRuntime.jsx(reactNative.View,{style:vt.headerSpacer}):jsxRuntime.jsx(reactNative.TouchableOpacity,{onPress:s??r,hitSlop:{top:10,bottom:10,left:10,right:10},children:jsxRuntime.jsx(Rt,{size:20,color:C.buttonColor,strokeWidth:2})})]}),jsxRuntime.jsxs(reactNative.View,{style:vt.iconContainer,children:[jsxRuntime.jsx(reactNative.Image,{source:{uri:_},style:vt.tokenIcon}),jsxRuntime.jsx(reactNative.View,{style:[vt.statusBadge,{backgroundColor:R}],children:k?jsxRuntime.jsx(Ai,{size:10,color:"#FFFFFF",strokeWidth:3}):x?jsxRuntime.jsx(reactNative.View,{style:vt.spinnerDot}):jsxRuntime.jsx(dt,{size:10,color:"#FFFFFF",strokeWidth:3})})]}),jsxRuntime.jsxs(reactNative.View,{style:vt.statusRow,children:[jsxRuntime.jsx(reactNative.View,{style:[vt.statusDot,{backgroundColor:R}]}),jsxRuntime.jsx(reactNative.Text,{style:[vt.statusText,{color:R,fontFamily:a.medium}],children:w})]}),jsxRuntime.jsx(reactNative.Text,{style:[vt.dateText,{color:v.subtitleColor,fontFamily:a.regular}],children:m}),jsxRuntime.jsxs(reactNative.View,{style:[vt.detailsCard,{backgroundColor:d.backgroundColor,borderRadius:d.borderRadius,borderWidth:d.borderWidth??1,borderColor:d.borderColor}],children:[jsxRuntime.jsx(_c,{label:"Amount Sent",value:u}),jsxRuntime.jsx(_c,{label:"Amount Received",value:S}),jsxRuntime.jsx(_c,{label:"USD Value",value:y}),jsxRuntime.jsx(_c,{label:"Source Network",value:F}),jsxRuntime.jsx(_c,{label:"Destination Network",value:L,isLast:true})]}),jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:vt.moreDetailsRow,onPress:()=>T(M=>!M),activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[vt.moreDetailsText,{color:v.actionTitle,fontFamily:a.regular}],children:h?"See less":n?"See more":"See more details"}),h?jsxRuntime.jsx(_n,{size:16,color:v.actionColor,strokeWidth:2}):jsxRuntime.jsx(lr,{size:16,color:v.actionColor,strokeWidth:2})]}),h&&jsxRuntime.jsx(reactNative.View,{style:[vt.detailsCard,{backgroundColor:d.backgroundColor,borderRadius:d.borderRadius,borderWidth:d.borderWidth??1,borderColor:d.borderColor}],children:V&&D?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:vt.txRow,onPress:()=>reactNative.Linking.openURL(D),activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[vt.txLabel,{color:d.subtitleColor,fontFamily:a.regular}],children:"Withdrawal Tx"}),jsxRuntime.jsx(reactNative.Text,{style:[vt.txHash,{color:d.titleColor,fontFamily:a.regular}],children:Hy(V)}),jsxRuntime.jsx(Jo,{size:14,color:d.actionColor,strokeWidth:2})]}),!x&&O&&N&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(reactNative.View,{style:[vt.divider,{backgroundColor:d.borderColor}]}),jsxRuntime.jsxs(reactNative.TouchableOpacity,{style:vt.txRow,onPress:()=>reactNative.Linking.openURL(N),activeOpacity:.7,children:[jsxRuntime.jsx(reactNative.Text,{style:[vt.txLabel,{color:d.subtitleColor,fontFamily:a.regular}],children:"Completion Tx"}),jsxRuntime.jsx(reactNative.Text,{style:[vt.txHash,{color:d.titleColor,fontFamily:a.regular}],children:Hy(O)}),jsxRuntime.jsx(Jo,{size:14,color:d.actionColor,strokeWidth:2})]})]})]}):jsxRuntime.jsx(reactNative.View,{style:vt.detailRow,children:jsxRuntime.jsx(reactNative.Text,{style:[vt.detailLabel,{color:d.subtitleColor,fontFamily:a.regular}],children:"Transaction details not yet available"})})}),!n&&jsxRuntime.jsxs(reactNative.View,{style:vt.buttonRow,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[vt.button,vt.halfButton,{backgroundColor:f.secondaryBackground,borderRadius:f.borderRadius,borderWidth:f.borderWidth,borderColor:f.borderColor}],onPress:o,activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[vt.buttonText,{color:f.secondaryText,fontFamily:a.medium}],children:"Withdrawal History"})}),jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[vt.button,vt.halfButton,{backgroundColor:f.primaryBackground,borderRadius:f.borderRadius,borderWidth:f.borderWidth,borderColor:f.borderColor}],onPress:r,activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[vt.buttonText,{color:f.primaryText,fontFamily:a.medium}],children:"Close"})})]})]})}var vt=reactNative.StyleSheet.create({scroll:{flex:1},container:{alignItems:"center",paddingHorizontal:20,paddingTop:8,paddingBottom:32,gap:12},headerRow:{flexDirection:"row",alignItems:"center",width:"100%",paddingTop:16,marginBottom:4},headerSpacer:{width:28},headerTitle:{flex:1,fontSize:16,textAlign:"center"},iconContainer:{position:"relative",marginTop:8},tokenIcon:{width:64,height:64,borderRadius:32},statusBadge:{position:"absolute",bottom:-2,right:-2,width:22,height:22,borderRadius:11,alignItems:"center",justifyContent:"center"},spinnerDot:{width:10,height:10,borderRadius:5,borderWidth:2,borderColor:"#FFFFFF",borderTopColor:"transparent"},statusRow:{flexDirection:"row",alignItems:"center",gap:6},statusDot:{width:8,height:8,borderRadius:4},statusText:{fontSize:15},dateText:{fontSize:13,marginTop:-4},detailsCard:{width:"100%",paddingHorizontal:16,overflow:"hidden"},detailRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",paddingVertical:12},detailLabel:{fontSize:13,flex:1},detailValue:{fontSize:13,flexShrink:0,maxWidth:"55%",textAlign:"right"},divider:{height:reactNative.StyleSheet.hairlineWidth,opacity:.5},moreDetailsRow:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",width:"100%",paddingHorizontal:4},moreDetailsText:{fontSize:14},txRow:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:12},txLabel:{fontSize:13},txHash:{fontSize:13,flex:1,textAlign:"right"},buttonRow:{flexDirection:"row",gap:10,width:"100%",marginTop:4},button:{paddingVertical:14,alignItems:"center",justifyContent:"center"},halfButton:{flex:1},fullButton:{width:"100%"},buttonText:{fontSize:14}});function jy(e){return e.length<=12?e:`${e.slice(0,6)}...${e.slice(-4)}`}function xu({txInfo:e,executions:t,onClose:r,onViewTracker:o}){let{colors:n,fonts:s,components:i}=A(),a=t.length>0?t[t.length-1]:null,l=a?.status==="succeeded",c=a?.status==="failed",p={borderRadius:i.button.borderRadius,borderWidth:i.button.borderWidth,borderColor:i.button.borderColor};return l?jsxRuntime.jsxs(reactNative.View,{style:mr.container,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:mr.closeButton,onPress:r,children:jsxRuntime.jsx(Rt,{size:20,color:i.header.buttonColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.View,{style:[mr.iconRing,{backgroundColor:n.successBackground}],children:jsxRuntime.jsx(dt,{size:32,color:n.success,strokeWidth:2.5})}),jsxRuntime.jsx(reactNative.Text,{style:[mr.title,{color:n.foreground,fontFamily:s.medium}],children:"Withdrawal Sent"}),jsxRuntime.jsxs(reactNative.Text,{style:[mr.subtitle,{color:n.foregroundMuted,fontFamily:s.regular}],children:[e.amount," ",e.sourceTokenSymbol," to"," ",jy(e.recipientAddress)]}),jsxRuntime.jsxs(reactNative.View,{style:mr.buttonRow,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[mr.button,mr.halfButton,p,{backgroundColor:i.button.secondaryBackground}],onPress:o,activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[mr.buttonText,{color:i.button.secondaryText,fontFamily:s.medium}],children:"History"})}),jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[mr.button,mr.halfButton,p,{backgroundColor:i.button.primaryBackground}],onPress:r,activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[mr.buttonText,{color:i.button.primaryText,fontFamily:s.medium}],children:"Close"})})]})]}):c?jsxRuntime.jsxs(reactNative.View,{style:mr.container,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:mr.closeButton,onPress:r,children:jsxRuntime.jsx(Rt,{size:20,color:i.header.buttonColor,strokeWidth:2})}),jsxRuntime.jsx(reactNative.View,{style:[mr.iconRing,{backgroundColor:n.errorBackground}],children:jsxRuntime.jsx(Rt,{size:32,color:n.error,strokeWidth:2.5})}),jsxRuntime.jsx(reactNative.Text,{style:[mr.title,{color:n.foreground,fontFamily:s.medium}],children:"Withdrawal Failed"}),jsxRuntime.jsx(reactNative.Text,{style:[mr.subtitle,{color:n.foregroundMuted,fontFamily:s.regular}],children:"Something went wrong. Please try again."}),jsxRuntime.jsx(reactNative.TouchableOpacity,{style:[mr.button,mr.fullButton,p,{backgroundColor:i.button.primaryBackground}],onPress:r,activeOpacity:.8,children:jsxRuntime.jsx(reactNative.Text,{style:[mr.buttonText,{color:i.button.primaryText,fontFamily:s.medium}],children:"Close"})})]}):jsxRuntime.jsxs(reactNative.View,{style:mr.container,children:[jsxRuntime.jsx(reactNative.TouchableOpacity,{style:mr.closeButton,onPress:r,children:jsxRuntime.jsx(Rt,{size:20,color:i.header.buttonColor,strokeWidth:2})}),jsxRuntime.jsx(kt,{size:80,strokeWidth:4,iconSize:68,gradientFrom:n.primary,gradientTo:n.primary,children:e.sourceTokenIconUrl?jsxRuntime.jsx(reactNative.Image,{source:{uri:ie(e.sourceTokenIconUrl)},style:mr.tokenIconFill}):jsxRuntime.jsx(reactNative.View,{style:[mr.tokenIconFill,{backgroundColor:n.cardHover}]})}),jsxRuntime.jsx(reactNative.Text,{style:[mr.title,{color:n.foreground,fontFamily:s.medium,paddingTop:16}],children:"Checking Withdrawal"}),jsxRuntime.jsxs(reactNative.Text,{style:[mr.subtitle,{color:n.foregroundMuted,fontFamily:s.regular}],children:[e.sourceTokenSymbol," to"," ",jy(e.recipientAddress)]})]})}var mr=reactNative.StyleSheet.create({container:{alignItems:"center",paddingHorizontal:24,paddingTop:48,paddingBottom:24},closeButton:{position:"absolute",top:16,right:16,padding:4,zIndex:1},iconRing:{width:80,height:80,borderRadius:40,alignItems:"center",justifyContent:"center",marginBottom:20},tokenIconFill:{width:"100%",height:"100%",borderRadius:34},title:{fontSize:20,marginBottom:8,textAlign:"center"},subtitle:{fontSize:14,textAlign:"center",lineHeight:20,marginBottom:24},buttonRow:{flexDirection:"row",gap:10,width:"100%"},button:{paddingVertical:14,alignItems:"center",justifyContent:"center",borderRadius:12},halfButton:{flex:1},fullButton:{width:"100%"},buttonText:{fontSize:15}});function nk(e){let t=e.source_token_metadata?.decimals??6,r=e.source_amount_base_unit??"0",o=Number(r)/Math.pow(10,t),n=o>=1?o.toFixed(2):o.toPrecision(4).replace(/\.?0+$/,"");return {sourceChainType:e.source_chain_type,sourceChainId:e.source_chain_id,sourceTokenAddress:e.source_token_address,sourceTokenSymbol:e.source_currency?.toUpperCase()??"",sourceTokenIconUrl:ie(Ue(e.source_token_metadata,"png")),destinationChainType:e.destination_chain_type,destinationChainId:e.destination_chain_id,destinationTokenAddress:e.destination_token_address,destinationTokenSymbol:e.destination_currency?.toUpperCase()??"",destinationTokenIconUrl:ie(Ue(e.destination_token_metadata,"png")),amount:n,amountBaseUnit:r,submittedAt:e.created_at?new Date(e.created_at):void 0,withdrawIntentAddress:e.deposit_wallet?.address??"",recipientAddress:e.recipient_address??""}}var $y=(e,t)=>`${t}:${e}`;function ik(){let{colors:e}=A(),t=ws.useRef(new reactNative.Animated.Value(.5)).current,r=e.cardHover;return ws.useEffect(()=>{let o=reactNative.Animated.loop(reactNative.Animated.sequence([reactNative.Animated.timing(t,{toValue:1,duration:800,useNativeDriver:true}),reactNative.Animated.timing(t,{toValue:.5,duration:800,useNativeDriver:true})]));return o.start(),()=>o.stop()},[t]),jsxRuntime.jsx(reactNative.View,{style:{gap:12,paddingHorizontal:16},children:[1,2,3].map(o=>jsxRuntime.jsx(reactNative.Animated.View,{style:{height:48,borderRadius:12,backgroundColor:r,opacity:t}},o))})}function _u({visible:e,onClose:t,publishableKey:r,externalUserId:o,senderAddress:n,recipientAddress:s,defaultDestinationChainType:i,defaultDestinationChainId:a,defaultDestinationTokenAddress:l,modalTitle:c="Withdraw Crypto",onWithdraw:p,onWithdrawSuccess:h,onWithdrawError:T,heightPercent:d=.94,sheetBorderRadius:f,sourceChainType:C,sourceChainId:v,sourceTokenAddress:x,sourceTokenSymbol:k,sourceChainName:R,sourceTokenIconUrl:w}){let{colors:_,fonts:m}=A(),[u,S]=ws.useState("form"),[y,F]=ws.useState(C),[L,V]=ws.useState(v),[D,O]=ws.useState(x),[N,M]=ws.useState(k),[Ve,se]=ws.useState(R),[Le,J]=ws.useState(w),[pe,ee]=ws.useState(null),[U,de]=ws.useState(null),[Z,he]=ws.useState(null),[it,Oe]=ws.useState(),[te,je]=ws.useState([]),[Xe,qe]=ws.useState(null),[ft,He]=ws.useState("form"),Ae=ws.useRef(new reactNative.Animated.Value(reactNative.Dimensions.get("window").width)).current,We=ws.useRef(null),_e=!!y&&!!L&&!!D,{data:be,isLoading:Ge}=bu(r,e&&u==="form"),Ye=be?.data??[],{data:at,isLoading:Tr}=Af({sourceChainType:y,sourceChainId:L,sourceTokenAddress:D,sourceTokenSymbol:N,publishableKey:r,enabled:e&&_e&&u==="form"}),$e=Il.includes(y)?y:void 0,{data:Ie,isLoading:et}=Wf({address:n,chainType:$e,chainId:L,tokenAddress:D,publishableKey:r,enabled:e&&_e}),{executions:lt}=Ef({userId:o,publishableKey:r,depositWalletId:it,enabled:!!it&&e,onWithdrawSuccess:h,onWithdrawError:T});ws.useEffect(()=>{if(!e||u!=="tracker")return;let $=false;return mn(o,r,"withdraw").then(q=>{$||je(q.data);}).catch(console.error),()=>{$=true;}},[e,u,o,r]),ws.useEffect(()=>{e&&(We.current&&(clearTimeout(We.current),We.current=null),S("form"),F(C),V(v),O(x),M(k),se(R),J(w),ee(null),de(null),he(null),Oe(void 0),je([]),qe(null),He("form"),Ae.setValue(reactNative.Dimensions.get("window").width));},[e]),ws.useEffect(()=>()=>{We.current&&clearTimeout(We.current);},[]),ws.useEffect(()=>{Le||at?.iconUrl&&J(at.iconUrl);},[at?.iconUrl,Le]),ws.useEffect(()=>{Ve||at?.chainName&&se(at.chainName);},[at?.chainName,Ve]),ws.useEffect(()=>{if(!Ye.length||pe)return;let $,q;if(i&&a)if(l)for(let ue of Ye){let Qe=ue.chains.find(W=>W.chain_type===i&&W.chain_id===a&&W.token_address.toLowerCase()===l.toLowerCase());if(Qe){$=ue,q=Qe;break}}else for(let ue of Ye){let Qe=ue.chains.find(W=>W.chain_type===i&&W.chain_id===a);if(Qe){$=ue,q=Qe;break}}$||($=Ye[0]),$&&(ee($),de(q??$.chains[0]??null));},[Ye,pe,i,a,l]),ws.useEffect(()=>{u==="confirming"&&lt.length>0&&S("details");},[u,lt]);let xe=ws.useCallback(()=>{t(),We.current=setTimeout(()=>{S("form"),F(C),V(v),O(x),M(k),se(R),J(w),ee(null),de(null),he(null),Oe(void 0),je([]),qe(null),He("form"),We.current=null;},300);},[t,C,v,x,k,R,w]),ve=ws.useCallback($=>{let q=Ye.find(ue=>ue.symbol===$);q&&(ee(q),q.chains.length>0&&de(q.chains[0]));},[Ye]),Ee=ws.useCallback($=>{if(!pe)return;let q=pe.chains.find(ue=>$y(ue.chain_id,ue.chain_type)===$);q&&de(q);},[pe]),ge=ws.useCallback(async $=>{let q=await Mo({external_user_id:o,destination_chain_type:$.destinationChainType,destination_chain_id:$.destinationChainId,destination_token_address:$.destinationTokenAddress,recipient_address:$.recipientAddress,action_type:"withdraw"},r);if(!y)throw new Error("sourceChainType is required for withdrawal");let ue=Ro(q.data,y);if(!ue)throw new Error(`No deposit wallet found for chain type: ${y}`);return Oe(ue.id),{id:ue.id,address:ue.address}},[o,r,y]),ct=ws.useCallback($=>{he($),S("confirming");},[]),Ft=ws.useCallback($=>{qe($),Ae.setValue(reactNative.Dimensions.get("window").width),reactNative.Animated.timing(Ae,{toValue:0,duration:280,useNativeDriver:true}).start();},[Ae]),mt=ws.useCallback(()=>{reactNative.Animated.timing(Ae,{toValue:reactNative.Dimensions.get("window").width,duration:250,useNativeDriver:true}).start(()=>qe(null));},[Ae]),or=Ge||Tr,Me=at?.isSupported??null,wt=u==="confirming"?"Withdrawal Status":c,ot=f?.globalBorderTopLeftRadius,Ce=f?.globalBorderTopRightRadius,ze=f?.main?.borderTopLeftRadius??ot,K=f?.main?.borderTopRightRadius??Ce,Re=f?.tokenSelector?.borderTopLeftRadius??ot,I=f?.tokenSelector?.borderTopRightRadius??Ce,b=f?.chainSelector?.borderTopLeftRadius??ot,B=f?.chainSelector?.borderTopRightRadius??Ce,H=(()=>{if(u!=="form"||!_e||et||!Ie)return;let $=N||Ie.symbol,q=Ie.balanceUsd;if(q!=null){let W=`$${parseFloat(q).toLocaleString(void 0,{minimumFractionDigits:2,maximumFractionDigits:2})}`;return $?`Balance: ${W} ${$}`:`Balance: ${W}`}let ue=Ie.balanceHuman;if(!(!ue||ue==="0"))return $?`Balance: ${ue} ${$}`:`Balance: ${ue}`})();return jsxRuntime.jsx(zt,{visible:e,onClose:xe,closeOnBackdropPress:false,enablePanDownToClose:u==="tracker"||u==="form",showHandle:u==="tracker"||u==="form",heightPercent:u==="confirming"?.3:u==="details"?.7:u==="tracker"?.9:d,borderTopLeftRadius:ze,borderTopRightRadius:K,children:u==="confirming"&&Z?jsxRuntime.jsx(xu,{txInfo:Z,executions:lt,onClose:xe,onViewTracker:()=>{He("confirming"),S("tracker");}}):u==="details"&&Z?jsxRuntime.jsx($f,{execution:lt.length>0?lt[lt.length-1]:null,txInfo:Z,onClose:xe,onViewHistory:()=>{He("details"),S("tracker");},onHeaderClose:()=>S("form")}):u==="tracker"?jsxRuntime.jsxs(reactNative.View,{style:Zn.trackerContainer,children:[jsxRuntime.jsx(Kr,{title:"Withdrawal History",onClose:()=>S(ft)}),te.length===0?jsxRuntime.jsx(reactNative.View,{style:Zn.emptyState,children:jsxRuntime.jsx(reactNative.Text,{style:[Zn.emptyText,{color:_.foregroundMuted,fontFamily:m.regular}],children:"No withdrawals to track yet"})}):jsxRuntime.jsx(ua,{data:te,keyExtractor:$=>$.id,contentContainerStyle:Zn.listContent,showsVerticalScrollIndicator:false,renderItem:({item:$})=>jsxRuntime.jsx(ku,{execution:$,onPress:()=>Ft($)})}),Xe&&jsxRuntime.jsx(reactNative.Animated.View,{style:[Zn.historyDetailOverlay,{backgroundColor:_.background,transform:[{translateX:Ae}]}],children:jsxRuntime.jsx($f,{execution:Xe,txInfo:nk(Xe),onClose:xe,onBack:mt,onViewHistory:mt})})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(Kr,{title:wt,subtitle:H,onClose:xe}),or?jsxRuntime.jsx(ik,{}):Me===false?jsxRuntime.jsxs(reactNative.View,{style:Zn.unsupportedContainer,children:[jsxRuntime.jsx(reactNative.Text,{style:[Zn.unsupportedTitle,{color:_.foreground,fontFamily:m.medium}],children:"Unsupported Token"}),jsxRuntime.jsx(reactNative.Text,{style:[Zn.unsupportedMessage,{color:_.foregroundMuted,fontFamily:m.regular}],children:at?.errorMessage})]}):jsxRuntime.jsx(sk,{publishableKey:r,sourceChainType:y??"",sourceChainId:L??"",sourceTokenAddress:D??"",sourceTokenSymbol:N,sourceChainName:Ve,sourceTokenIconUrl:Le,recipientAddressProp:s,destinationTokens:Ye,selectedToken:pe,selectedChain:U,selectedChainKey:U?$y(U.chain_id,U.chain_type):null,onTokenChange:ve,onChainChange:Ee,tokensLoading:Ge,balanceData:Ie??null,isLoadingBalance:et,sourceValidation:at??null,onDepositWalletCreation:ge,onWithdraw:p,onWithdrawError:T,onWithdrawSubmitted:ct,onViewTracker:()=>{He("form"),S("tracker");},tokenSelectorLeft:Re,tokenSelectorRight:I,chainSelectorLeft:b,chainSelectorRight:B})]})})}function sk({publishableKey:e,sourceChainType:t,sourceChainId:r,sourceTokenAddress:o,sourceTokenSymbol:n,sourceChainName:s,sourceTokenIconUrl:i,recipientAddressProp:a,destinationTokens:l,selectedToken:c,selectedChain:p,selectedChainKey:h,onTokenChange:T,onChainChange:d,tokensLoading:f,balanceData:C,isLoadingBalance:v,sourceValidation:x,onDepositWalletCreation:k,onWithdraw:R,onWithdrawError:w,onWithdrawSubmitted:_,onViewTracker:m,tokenSelectorLeft:u,tokenSelectorRight:S,chainSelectorLeft:y,chainSelectorRight:F}){return jsxRuntime.jsx(reactNative.KeyboardAvoidingView,{behavior:reactNative.Platform.OS==="ios"?"padding":void 0,style:{flex:1},children:jsxRuntime.jsxs(At,{style:{flex:1,paddingTop:16},contentContainerStyle:Zn.scrollContent,keyboardShouldPersistTaps:"handled",showsVerticalScrollIndicator:false,children:[jsxRuntime.jsx(reactNative.View,{style:Zn.doubleInputWrapper,children:jsxRuntime.jsx(Rc,{tokens:l,selectedTokenSymbol:c?.symbol??null,selectedChainKey:h,onTokenChange:T,onChainChange:d,isLoading:f,tokenPickerBorderTopLeftRadius:u,tokenPickerBorderTopRightRadius:S,chainPickerBorderTopLeftRadius:y,chainPickerBorderTopRightRadius:F})}),jsxRuntime.jsx(wu,{publishableKey:e,sourceChainType:t,sourceChainId:r,sourceTokenAddress:o,sourceTokenSymbol:n,sourceChainName:s,sourceTokenIconUrl:i,recipientAddressProp:a,selectedToken:c,selectedChain:p,balanceData:C,isLoadingBalance:v,minimumWithdrawAmountUsd:x?.minimumAmountUsd??null,estimatedProcessingTime:x?.estimatedProcessingTime??null,maxSlippagePercent:x?.maxSlippagePercent??null,priceImpactPercent:x?.priceImpactPercent??null,canWithdraw:true,onDepositWalletCreation:k,onWithdraw:R,onWithdrawError:w,onWithdrawSubmitted:_,onViewTracker:m})]})})}var Zn=reactNative.StyleSheet.create({scrollContent:{paddingBottom:32},doubleInputWrapper:{paddingHorizontal:16,paddingBottom:12,paddingTop:4},listContent:{paddingHorizontal:16,paddingBottom:32,gap:8},trackerContainer:{flex:1,overflow:"hidden"},historyDetailOverlay:{position:"absolute",top:0,left:0,right:0,bottom:0},emptyState:{flex:1,alignItems:"center",justifyContent:"center",paddingVertical:48},emptyText:{fontSize:14},unsupportedContainer:{flex:1,alignItems:"center",justifyContent:"center",paddingHorizontal:24,paddingVertical:48},unsupportedTitle:{fontSize:18,fontWeight:"600",marginBottom:8,textAlign:"center"},unsupportedMessage:{fontSize:14,textAlign:"center",lineHeight:20,maxWidth:280}});reactNative.StyleSheet.create({container:{paddingHorizontal:16,paddingTop:16,paddingBottom:24,gap:16},fieldGroup:{gap:8},fieldLabel:{fontSize:12},walletCard:{paddingHorizontal:12,paddingVertical:12,minHeight:48,justifyContent:"center"},walletAddress:{fontSize:13},primaryButton:{paddingVertical:14,alignItems:"center",justifyContent:"center",marginTop:4},primaryButtonText:{fontSize:16},secondaryButton:{paddingVertical:14,alignItems:"center",justifyContent:"center"},secondaryButtonText:{fontSize:16}});reactNative.StyleSheet.create({base:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:8},text:{fontWeight:"600",textAlign:"center"},fullWidth:{width:"100%"},disabled:{opacity:.5}});reactNative.StyleSheet.create({icon:{backgroundColor:"transparent"}});var Ky=ws.createContext(null);function yk({children:e,publishableKey:t,config:r}){let[o]=ws.useState(()=>new Ap({defaultOptions:{queries:{retry:1,staleTime:3e5}}})),[n,s]=ws.useState(false),[i,a]=ws.useState(null),[l,c]=ws.useState(false),[p,h]=ws.useState(null),T=reactNative.useColorScheme(),d=ws.useRef(false);d.current||(Uc({publishableKey:t}),d.current=true);let f=ws.useMemo(()=>{let O=r?.appearance||"dark";return O==="auto"?T==="dark"?"dark":"light":O},[r?.appearance,T]);ws.useEffect(()=>{if(!t||t.trim()===""){console.error("Unifold: publishableKey is required. Please provide a valid publishable key.");return}!t.startsWith("pk_test_")&&!t.startsWith("pk_live_")&&console.warn('Unifold: publishableKey should start with "pk_test_" or "pk_live_". Please ensure you are using a valid publishable key.'),Uc({publishableKey:t});},[t]),ws.useEffect(()=>()=>{v.current&&clearTimeout(v.current),u.current&&clearTimeout(u.current);},[]);let C=ws.useRef(null),v=ws.useRef(null),x=ws.useRef(void 0),k=ws.useCallback(O=>{v.current&&(clearTimeout(v.current),v.current=null),C.current&&(console.warn("[UnifoldProvider] A deposit is already in progress. Cancelling previous deposit."),C.current.reject({message:"Deposit cancelled - new deposit started",code:"DEPOSIT_SUPERSEDED"}),C.current=null);let N=new Promise((M,Ve)=>{C.current={resolve:M,reject:Ve};});return x.current=O.onDismiss,a(O),s(true),N},[]),R=ws.useCallback(()=>{let O=C.current!==null;C.current&&(C.current.reject({message:"Deposit cancelled by user",code:"DEPOSIT_CANCELLED"}),C.current=null);let N=x.current;x.current=void 0,s(false),v.current=setTimeout(()=>{a(null),v.current=null;},200),O&&N?.();},[]),w=ws.useCallback(O=>{i?.onSuccess&&i.onSuccess(O),C.current&&(C.current.resolve(O),C.current=null);},[i]),_=ws.useCallback(O=>{console.error("[UnifoldProvider] Deposit error:",O),i?.onError&&i.onError(O),C.current&&(C.current.reject(O),C.current=null);},[i]),m=ws.useRef(null),u=ws.useRef(null),S=ws.useRef(void 0),y=ws.useCallback(O=>{u.current&&(clearTimeout(u.current),u.current=null),m.current&&(console.warn("[UnifoldProvider] A withdrawal is already in progress. Cancelling previous withdrawal."),m.current.reject({message:"Withdrawal cancelled - new withdrawal started",code:"WITHDRAW_SUPERSEDED"}),m.current=null);let N=new Promise((M,Ve)=>{m.current={resolve:M,reject:Ve};});return S.current=O.onClose,h(O),c(true),N},[]),F=ws.useCallback(()=>{m.current&&(m.current.reject({message:"Withdrawal cancelled by user",code:"WITHDRAW_CANCELLED"}),m.current=null),S.current?.(),S.current=void 0,c(false),u.current=setTimeout(()=>{h(null),u.current=null;},200);},[]),L=ws.useCallback(O=>{p?.onSuccess&&p.onSuccess(O),m.current&&(m.current.resolve(O),m.current=null);},[p]),V=ws.useCallback(O=>{console.error("[UnifoldProvider] Withdraw error:",O),p?.onError&&p.onError(O),m.current&&(m.current.reject(O),m.current=null);},[p]),D=ws.useMemo(()=>({publishableKey:t,beginDeposit:k,closeDeposit:R,beginWithdraw:y,closeWithdraw:F}),[t,k,R,y,F]);return jsxRuntime.jsx(Wp,{client:o,children:jsxRuntime.jsx(Ky.Provider,{value:D,children:jsxRuntime.jsxs(da,{mode:f,accentColor:r?.accentColor,theme:r?.theme,fontFamily:r?.fontFamily,fonts:r?.fonts,components:r?.components,children:[e,i&&jsxRuntime.jsx(fu,{visible:n,onClose:R,closeOnBackdropPress:i.closeOnBackdropPress??false,publishableKey:t,modalTitle:r?.modalTitle,externalUserId:i.externalUserId,destinationChainType:i.destinationChainType,destinationChainId:i.destinationChainId,destinationTokenSymbol:i.destinationTokenSymbol,recipientAddress:i.recipientAddress,destinationTokenAddress:i.destinationTokenAddress,defaultChainType:i.defaultChainType,defaultChainId:i.defaultChainId,defaultTokenAddress:i.defaultTokenAddress,showBalance:i.showBalance,user:i.user,stripeTheme:{mode:f,accentColor:r?.accentColor,theme:r?.theme,fontFamily:r?.fontFamily,fonts:r?.fonts,components:r?.components},depositConfirmationMode:i.depositConfirmationMode??"auto_ui",initialScreen:i.initialScreen,hideDepositTracker:r?.hideDepositTracker,transferInputVariant:r?.transferInputVariant,depositMenuDisplay:r?.depositMenuDisplay,enableStripeLink:r?.enableStripeLink,enableTransferCrypto:r?.enableTransferCrypto,enableCashApp:r?.enableCashApp,enableConnectWallet:r?.enableConnectWallet,enableFiatOnramp:r?.enableFiatOnramp,stripePaymentSelectorPosition:r?.stripeLink?.paymentSelectorPosition,stripeSkipSuccessConfirmation:r?.stripeLink?.skipSuccessConfirmation,StripeOnrampComponent:r?.enableStripeLink?uh():void 0,onDepositSuccess:w,onDepositError:_,theme:f,sheetBorderRadius:r?.sheetBorderRadius}),p&&jsxRuntime.jsx(_u,{visible:l,onClose:F,publishableKey:t,externalUserId:p.externalUserId,senderAddress:p.senderAddress,recipientAddress:p.recipientAddress,sourceChainType:p.sourceChainType,sourceChainId:p.sourceChainId,sourceTokenAddress:p.sourceTokenAddress,sourceTokenSymbol:p.sourceTokenSymbol,defaultDestinationChainType:p.defaultDestinationChainType,defaultDestinationChainId:p.defaultDestinationChainId,defaultDestinationTokenAddress:p.defaultDestinationTokenAddress,onWithdraw:p.withdraw,onWithdrawSuccess:L,onWithdrawError:V,sheetBorderRadius:r?.sheetBorderRadius?{globalBorderTopLeftRadius:r.sheetBorderRadius.globalBorderTopLeftRadius,globalBorderTopRightRadius:r.sheetBorderRadius.globalBorderTopRightRadius,tokenSelector:r.sheetBorderRadius.tokenSelector,chainSelector:r.sheetBorderRadius.chainSelector}:void 0})]})})})}function bk(){let e=ws.useContext(Ky);if(!e)throw new Error("useUnifold must be used within UnifoldProvider");return e}
5
+ exports.AmountScreen=sd;exports.BottomSheet=zt;exports.KYCWizardScreen=ad;exports.OnrampScreen=yd;exports.StripeOnramp=bd;exports.StripeOnrampPreconfigure=ch;exports.UnifoldProvider=yk;exports.getPreferredIcon=Ue;exports.getStripeConfig=Al;exports.getStripePublishableKey=Tm;exports.getSupportedDestinationTokens=qc;exports.normalizeIconUrl=ie;exports.registerStripeOnramp=Cd;exports.setDevApiUrl=cm;exports.setStripeOnrampApiUrl=td;exports.setStripeOnrampPublishableKey=ed;exports.useAllowedCountry=mc;exports.useStripeOnramp=ld;exports.useTheme=A;exports.useUnifold=bk;