@aori/mega-swap-widget 0.1.6 → 0.1.8

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.
Files changed (56) hide show
  1. package/dist/AssetSelectionMenu-CYWW5K6R.js +2 -0
  2. package/dist/AssetSelectionMenu-TPSIEBBB.cjs +2 -0
  3. package/dist/ChainSelectionMenu-HFJGI6E5.js +2 -0
  4. package/dist/ChainSelectionMenu-UNMEPKRI.cjs +2 -0
  5. package/dist/SwapFormHorizontal-LARQUSNO.js +2 -0
  6. package/dist/{SwapFormHorizontal-FTVJMZUH.cjs → SwapFormHorizontal-YL3X2UA7.cjs} +1 -1
  7. package/dist/{SwapFormSplit-LGXDW3FM.cjs → SwapFormSplit-JT3OYCFP.cjs} +1 -1
  8. package/dist/{SwapFormSplit-5RRDB6H6.js → SwapFormSplit-USJFORFM.js} +1 -1
  9. package/dist/{WidgetWalletPanel-OL7FBQVY.cjs → WidgetWalletPanel-HH26O3HT.cjs} +1 -1
  10. package/dist/WidgetWalletPanel-VUT4LF65.js +2 -0
  11. package/dist/WidgetWalletTradeHistory-NL23HIOJ.cjs +2 -0
  12. package/dist/WidgetWalletTradeHistory-VAH2FU7S.js +2 -0
  13. package/dist/{chunk-M26W6COT.js → chunk-7PT7UNJY.js} +1 -1
  14. package/dist/{chunk-JC6VVDA3.cjs → chunk-CNE67IQ3.cjs} +1 -1
  15. package/dist/chunk-CT7CRJLC.js +2 -0
  16. package/dist/chunk-D7GULMHE.cjs +2 -0
  17. package/dist/chunk-DLA3C645.cjs +2 -0
  18. package/dist/chunk-EKSQTNKS.cjs +2 -0
  19. package/dist/chunk-GPT4NHM5.js +2 -0
  20. package/dist/chunk-IKTTT66M.js +2 -0
  21. package/dist/{chunk-T2K2NOGZ.cjs → chunk-K3RTTHBS.cjs} +3 -3
  22. package/dist/{chunk-D6APGPYS.cjs → chunk-KI6AVCXD.cjs} +1 -1
  23. package/dist/{chunk-3AQO6NMO.js → chunk-LSB5IXLW.js} +1 -1
  24. package/dist/chunk-PSCWQFVY.cjs +2 -0
  25. package/dist/{chunk-DUMYILH6.js → chunk-QAOZRRSH.js} +3 -3
  26. package/dist/chunk-TWVI6PZS.cjs +2 -0
  27. package/dist/chunk-UHG7ZIWD.js +2 -0
  28. package/dist/chunk-UR3Q7FG5.js +2 -0
  29. package/dist/chunk-WZCWYOCN.cjs +2 -0
  30. package/dist/chunk-YO5D6L5W.js +2 -0
  31. package/dist/index.cjs +2 -2
  32. package/dist/index.css +1 -1
  33. package/dist/index.d.cts +5 -0
  34. package/dist/index.d.ts +5 -0
  35. package/dist/index.js +2 -2
  36. package/package.json +1 -1
  37. package/dist/AssetSelectionMenu-52ZJ2NVY.cjs +0 -2
  38. package/dist/AssetSelectionMenu-56FPUYSG.js +0 -2
  39. package/dist/ChainSelectionMenu-L2OAYLQ7.js +0 -2
  40. package/dist/ChainSelectionMenu-W7J6YVYH.cjs +0 -2
  41. package/dist/SwapFormHorizontal-CZ57BLFP.js +0 -2
  42. package/dist/WidgetWalletPanel-AMSL4XY3.js +0 -2
  43. package/dist/WidgetWalletTradeHistory-M4RTYZPY.js +0 -2
  44. package/dist/WidgetWalletTradeHistory-VUR6C4BW.cjs +0 -2
  45. package/dist/chunk-2TYL5SWO.js +0 -2
  46. package/dist/chunk-46YHIOXG.cjs +0 -2
  47. package/dist/chunk-BV64BFUW.cjs +0 -2
  48. package/dist/chunk-GW2VVH4J.js +0 -2
  49. package/dist/chunk-I4RIO7H2.js +0 -2
  50. package/dist/chunk-I6MMPBVA.cjs +0 -2
  51. package/dist/chunk-LFRHC3KG.js +0 -2
  52. package/dist/chunk-MGRWSY3Y.js +0 -2
  53. package/dist/chunk-T2XGDQM3.cjs +0 -2
  54. package/dist/chunk-V6LSLSFL.cjs +0 -2
  55. package/dist/chunk-WUZBSXU3.js +0 -2
  56. package/dist/chunk-YMQZ3S43.cjs +0 -2
@@ -0,0 +1,2 @@
1
+ "use client";
2
+ import{a as kr}from"./chunk-OPN7WCJR.js";import{e as Oe}from"./chunk-YO5D6L5W.js";import{b as ke,c as Pt,d as ee}from"./chunk-GPT4NHM5.js";import{E as Be,F as st,H as Nt,I as Et,J as ot,N as we,O as se,P as Z,S as he,T as It,U as Ve,V as K,X as Ot,Y as _e,a as Fe,c as Q,h as tt,k as Ne,m as Ee,o as Ie,q as Tt,r as ae,s as Rt,t as rt,v as nt,w as At,x as kt}from"./chunk-QAOZRRSH.js";import{a as ie}from"./chunk-46H44R7V.js";import{b as Ar}from"./chunk-73CB2I7U.js";import{useQueryClient as Nr}from"@tanstack/react-query";import{useCallback as Er,useEffect as Ut,useRef as $t}from"react";function Ir(e){if(e.length===0)return 5e3;let l=Math.max(...e.map(s=>Q(s)?.blockTimeMs??2e3));return Math.min(5e3,Math.max(1e3,l*2+1e3))}var Or=()=>{let{address:e}=ie(),t=Pt(),n=Nr(),c=$t(null),l=$t(!0),s=Er(a=>{if(!e)return;let y=[...new Set(a.tokens.map(d=>d.asset.chainId))],p=Ir(y);c.current&&(clearTimeout(c.current),c.current=null),c.current=setTimeout(async()=>{if(c.current=null,!!l.current)try{let d=a.tokens.map(w=>({chainId:w.asset.chainId,tokenAddress:w.asset.address})),o=await Et(e,d);if(o.balances.length===0)return;if(a.tokens.length>=2){let w=a.tokens[0].asset,u=a.tokens[1].asset,h=ot.swap(e,w.chainId,w.address,u.chainId,u.address);n.setQueryData(h,o)}let r=ot.bulk(e,t),v=n.getQueryData(r);if(v){let w=v.balances.map(u=>o.balances.find(g=>g.chainId===u.chainId&&g.token.toLowerCase()===u.token.toLowerCase())??u);for(let u of o.balances)w.some(h=>h.chainId===u.chainId&&h.token.toLowerCase()===u.token.toLowerCase())||w.push(u);for(let u of a.tokens)if(!o.balances.some(g=>g.chainId===u.asset.chainId&&g.token.toLowerCase()===u.asset.address.toLowerCase())){let g=w.findIndex(i=>i.chainId===u.asset.chainId&&i.token.toLowerCase()===u.asset.address.toLowerCase());g!==-1&&(w[g]={...w[g],balance:"0",shiftedBalance:"0"})}n.setQueryData(r,{balances:w})}}catch{}},p)},[e,t,n]);return Ut(()=>(l.current=!0,()=>{l.current=!1,c.current&&(clearTimeout(c.current),c.current=null)}),[]),{triggerBalanceUpdate:s}},at=class extends EventTarget{emit(t){this.dispatchEvent(new CustomEvent("balance-update",{detail:t}))}},it=new at,Pe=()=>e=>it.emit(e),ps=()=>{let{triggerBalanceUpdate:e}=Or();Ut(()=>{let t=n=>{e(n.detail)};return it.addEventListener("balance-update",t),()=>it.removeEventListener("balance-update",t)},[e])};import{createContext as Pr,useCallback as de,useContext as $r,useEffect as Mt,useMemo as Ur,useRef as ce,useState as xe}from"react";import{formatUnits as Mr,parseUnits as Lr}from"viem";import{jsx as Fr}from"react/jsx-runtime";var Wt=Pr(void 0),Lt=1e4,Wr=3e4,Dr=1e3,Vr=2;function _r(e){return e.find(n=>n.routeSteps?.[0]?.type==="AORI_V1")??e[0]}var bs=({children:e,recipient:t})=>{let{address:n}=ie(),c=t||n,[l,s]=xe("idle"),[a,y]=xe("idle"),[p,d]=xe(null),[o,r]=xe(null),[v,w]=xe(!1),[u,h]=xe(!1),[g,i]=xe(!1),f=ce(null),x=ce(null),m=ce(null),k=ce(null),P=ce(null),C=ce(0),U=ce(0),W=ce(0),E=ce(!1),O=ce(new Map),I=de(()=>{m.current&&clearTimeout(m.current),k.current&&clearTimeout(k.current),P.current&&clearTimeout(P.current),m.current=null,k.current=null,P.current=null},[]),M=de(()=>{I(),f.current=null,C.current=0,s(()=>E.current?"fresh":"idle")},[I]),D=de(()=>{M(),x.current=null,d(null),r(null),w(!1),h(!1),i(!1),O.current.clear(),s("idle"),y("idle")},[M]),Y=de(S=>{if(!S)return;k.current&&clearTimeout(k.current);let R=Math.max(0,S+Wr-Date.now());k.current=setTimeout(()=>{s($=>$==="idle"?"idle":"stale")},R)},[]),G=de(async(S,R)=>{let{inputToken:$,outputToken:N,inputAmount:q,setOutputAmount:te}=S;if(!$||!N||!q||parseFloat(q)<=0||Date.now()-(U.current||0)<Lt-10)return;let be=++C.current;try{if(!$?.decimals||!N?.decimals)return;let z=st($.chainId)||Q($.chainId)?.key||"",le=st(N.chainId)||Q(N.chainId)?.key||"";if(!z||!le)throw new Error("Unknown chain");let re=Lr(q.toString(),$.decimals).toString(),Re={srcChainKey:z,dstChainKey:le,srcTokenAddress:nt($.address),dstTokenAddress:nt(N.address),amount:re,srcWalletAddress:n||"0x0000000000000000000000000000000000000000",dstWalletAddress:c||n||"0x0000000000000000000000000000000000000000",options:{amountType:"EXACT_SRC_AMOUNT",feeTolerance:{type:"PERCENT",amount:2}}};U.current=Date.now();let ne=await fetch(`${Ne()}/quotes`,{method:"POST",headers:Ee(),body:JSON.stringify(Re),signal:AbortSignal.timeout(15e3)});if(!ne.ok){let Ae=(await ne.json().catch(()=>({})))?.message||ne.statusText;throw Object.assign(new Error(Ae),{status:ne.status})}let oe=await ne.json();if(be!==C.current||f.current!==R)return;let Le=oe.quotes??[],ue=_r(Le);if(!ue)throw Object.assign(new Error("No quotes returned"),{emptyQuotes:!0});let et=Number(Mr(Tt(ue.dstAmount),N.decimals));typeof te=="function"&&te(et),ue._receivedAt=Date.now(),d(ue),r(null),w(!1),s("fresh"),Y(ue._receivedAt),R&&O.current.delete(R)}catch(z){if(be!==C.current||f.current!==R)return;let le=z?.status,re=z instanceof Error?z.message:"",Re=!!z?.emptyQuotes;if((le===400||Re||re.includes("Quote request failed"))&&R){let oe=(O.current.get(R)||0)+1;if(O.current.set(R,oe),oe>=Vr){h(!0),I(),f.current=null;return}}if(re.toLowerCase().includes("order cap exceeded")){i(!0),I(),f.current=null;return}if(re.toLowerCase().includes("insufficient executor balance")){w(!0),I(),f.current=null;return}r(z instanceof Error?z.message:"Unknown error")}},[n,c,Y,I]),L=de((S,R)=>{I(),x.current=S,U.current=0,O.current.delete(R),w(!1),h(!1),i(!1),r(null),s("polling");let $=async()=>{f.current===R&&(await G(S,R),f.current===R&&(m.current=setTimeout($,Lt)))};$()},[I,G]),T=de(S=>{if(!S?.inputToken||!S?.outputToken||!S?.inputAmount||parseFloat(S.inputAmount)<=0){M();return}let R=x.current;if(R&&R.inputToken?.address===S.inputToken?.address&&R.inputToken?.chainId===S.inputToken?.chainId&&R.outputToken?.address===S.outputToken?.address&&R.outputToken?.chainId===S.outputToken?.chainId&&R.inputAmount===S.inputAmount&&f.current)return;let N=Date.now();if(N-W.current<100)return;W.current=N;let q=`${Date.now()}-${Math.random().toString(36).slice(2)}`;f.current=q,L(S,q)},[L,M]),F=de(({amount:S,inputToken:R,outputToken:$,setOutputAmount:N})=>{N(null),P.current&&clearTimeout(P.current),!S||S===0?(y("idle"),M(),d(null),r(null),w(!1),h(!1),i(!1)):(y("typing"),M(),d(null),w(!1),h(!1),i(!1),r(null),P.current=setTimeout(()=>{y("settled"),R&&$&&S>0&&T({inputToken:R,outputToken:$,inputAmount:S.toString(),setOutputAmount:N})},Dr))},[M,T]),B=de(()=>{let S=x.current;if(!S)return;d(null);let R=`${Date.now()}-${Math.random().toString(36).slice(2)}`;f.current=R,s("refreshing"),typeof S.setOutputAmount=="function"&&S.setOutputAmount(null),L(S,R)},[L]);Mt(()=>{E.current=!!p},[p]),Mt(()=>()=>I(),[I]);let J=Ur(()=>({status:l,inputState:a,rfqQuote:p,error:o,liquidityError:v,routingError:u,sizeCapError:g,ensureForParams:T,stop:M,refresh:B,clear:D,handleInputChange:F}),[l,a,p,o,v,u,g,T,M,B,D,F]);return Fr(Wt.Provider,{value:J,children:e})},Qe=()=>{let e=$r(Wt);if(e===void 0)throw new Error("useRfq must be used within an RfqProvider");return e};import{createContext as Br,useContext as Qr}from"react";var qr=Br({openConnectModal:()=>{}}),Ts=()=>Qr(qr);import{useCallback as ct,useEffect as $e,useRef as qe,useState as lt}from"react";import{jsx as Ue,jsxs as Hr}from"react/jsx-runtime";var zr=20,jr=({side:e,asset:t,otherAsset:n,isPlacingOrder:c,isWrappingPair:l,isUnwrappingPair:s})=>{let{baseAmount:a,quoteAmount:y,setBaseAmount:p,setQuoteAmount:d}=Oe(),{amountInputVariant:o,hideAmountInputSymbol:r,widgetType:v}=ke(),w=v==="compact",[u,h]=e==="base"?[p,d]:[d,p],g=!t||e==="quote"||c,i=w?32:o==="default"?64:32,[f,x]=lt(i),[m,k]=lt(""),P=qe(null),C=qe(null),U=qe(null),W=qe(null),E="USD",O=e==="base"?a:y,[I,M]=lt(!1),D=ct(()=>{if(o!=="default"){x(i);return}if(!P.current||!C.current||!U.current)return;let L=P.current.offsetWidth,T=20,F=i;for(;F>20&&(C.current.style.fontSize=`${F}px`,U.current.style.fontSize=`${F}px`,!(C.current.offsetWidth+U.current.offsetWidth+T<=L));)F-=1;x(F)},[o,i]),Y=ct(L=>{L.key==="."&&m.includes(".")&&L.preventDefault()},[m]),G=ct(L=>{let T=L.target.value;if(T==="."&&(T="0."),!/^\d*\.?\d*$/.test(T)||(T.match(/\./g)||[]).length>1)return;if(T.length>1&&T[0]==="0"&&T[1]!=="."&&(T=T.replace(/^0+/,"")||"0"),t?.decimals!==void 0&&T.includes(".")){let[,B]=T.split(".");if(B&&B.length>t.decimals)return}if(T.length>zr)return;k(T);let F=parseFloat(T);T!==m&&(T===""||T==="0."||T.endsWith(".")?(u(null),e==="base"&&h(null)):!Number.isNaN(F)&&F>=0&&u(F),e==="base"&&d(null),(s||l)&&d(F||0))},[m,u,e,d,t?.decimals,h,s,l]);return $e(()=>{let L=B=>{if(B===null)return"";let J=t?.decimals;if(J===void 0)return"";let S=B.toString();if(/e/i.test(S)&&(S=Number(B).toLocaleString("en-US",{useGrouping:!1,maximumFractionDigits:J})),S.includes(".")){let[R,$]=S.split("."),N=$.slice(0,J);return N?`${R}.${N}`:R}return S};if(O===null){m==="0."||m!==""&&m.endsWith(".")||k("");return}if(!g&&(m.endsWith(".")||m.match(/\.\d*0$/)||m==="0"||m==="0.")&&m!=="")return;let F=parseFloat(m)||0;(m===""||Math.abs(F-O)>1e-10)&&k(L(O))},[O,t?.decimals,m,g]),$e(()=>{D()},[m,D]),$e(()=>{M(!0)},[]),$e(()=>{I&&D()},[I,D]),$e(()=>{C.current&&W.current&&(W.current.style.width=`${C.current.offsetWidth}px`)},[m]),$e(()=>{if(!I)return;let L=new ResizeObserver(()=>{I&&D()});return P.current&&L.observe(P.current),()=>L.disconnect()},[I,D]),Ue("div",{ref:P,style:{fontSize:`${f}px`,transition:"font-size 0.05s ease-in-out"},className:`mt-2 box-border font-sans flex ${w?o==="normal"?"h-12 my-1":"h-10 my-0.5":o==="normal"?"h-12 my-1":"h-20 my-1"} w-full flex-row items-center ${g?"cursor-default":"cursor-text"}`,onClick:()=>W.current?.focus(),children:Hr("div",{className:"relative flex w-full items-center",children:[Ue("label",{htmlFor:`${e}Amount`,className:"sr-only",children:e==="base"?"Input token amount":"Output token amount"}),Ue("input",{ref:W,type:"text",inputMode:"decimal",placeholder:"0",autoComplete:"off",id:`${e}Amount`,value:m,onWheel:L=>L.target.blur(),onKeyDown:Y,onChange:G,style:{transition:"width 0.15s ease-in-out",color:"var(--widget-foreground)",WebkitTextFillColor:"var(--widget-foreground)",opacity:1},className:"flex min-w-[45px] whitespace-nowrap bg-transparent placeholder:opacity-50 font-sans font-thin",disabled:g}),Ue("span",{style:{transition:"width 0.15s ease-in-out"},ref:C,className:"pointer-events-none absolute flex whitespace-nowrap invisible",children:m||0}),!r&&o!=="normal"&&Ue("span",{ref:U,className:"ml-2 font-thin uppercase",style:{color:"var(--widget-foreground)",opacity:.5,fontSize:`${f}px`},children:t?.symbol?t.symbol.length>6?`${t.symbol.slice(0,6)}...`:t.symbol:E}),(r||o==="normal")&&Ue("span",{ref:U,className:"hidden"})]})})},Is=jr;import{Fragment as ut,jsx as V,jsxs as pe}from"react/jsx-runtime";var Gr=({toggle:e,side:t,asset:n,isPlacingOrder:c,hideDropdown:l})=>{let{baseBalance:s,quoteBalance:a}=Oe(),{tokenDisplay:y,tokenBadgeOrientation:p,widgetType:d}=ke(),o=d==="compact",r=o?"h-10":"h-11",v=o?"h-10 w-10":"h-11 w-11",w=t==="base"?s.formatted?(()=>{let h=parseFloat(s.formatted);return h>=1e8?Ie(h):h.toFixed(3)})():void 0:a.formatted?(()=>{let h=parseFloat(a.formatted);return h>=1e8?Ie(h):h.toFixed(3)})():void 0,u={role:"button",tabIndex:c?-1:0,"aria-disabled":c,"aria-label":`Select ${t==="base"?"input":"output"} token${n?`: ${n.symbol}`:""}`,onClick:c?void 0:e,onKeyDown:c?void 0:h=>{(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),e())}};return y==="pill"?V("div",{...u,className:`inline-flex items-center gap-1.5 h-7 px-2.5 rounded-full cursor-pointer transition-colors ${p==="right"?"ml-auto":""}`,style:{border:"1px solid var(--widget-border)",backgroundColor:"var(--widget-secondary)",color:"var(--widget-secondary-foreground)"},children:n?pe(ut,{children:[V(we,{chain:n.chainId,size:"xs"}),V(se,{className:"rounded-full",asset:n,size:"xxs",noChain:!0}),V("span",{className:"text-xs font-thin uppercase",children:n.symbol}),!l&&V(Ve,{className:"w-1.5 opacity-60",style:{color:"var(--widget-secondary-foreground)"}})]}):pe(ut,{children:[V("span",{className:"text-xs opacity-70",children:"Select"}),!l&&V(Ve,{className:"w-1.5 opacity-60",style:{color:"var(--widget-secondary-foreground)"}})]})}):y==="ghost"?pe("div",{...u,className:"inline-flex items-center gap-1.5 cursor-pointer transition-opacity hover:opacity-70 py-1",style:{color:"var(--widget-foreground)"},children:[n?pe(ut,{children:[V(we,{chain:n.chainId,size:"xs"}),V(se,{className:"rounded-full",asset:n,size:"xxs",noChain:!0}),V("span",{className:"text-sm font-thin uppercase",children:n.symbol})]}):V("span",{className:"text-sm",style:{color:"var(--widget-muted-foreground)"},children:"Select token"}),!l&&V(Ve,{className:"w-1.5 opacity-50"})]}):V("div",{...u,className:`relative ${r} w-full cursor-pointer text-xl duration-100 ease-linear`,style:{border:"1px solid var(--widget-border)",backgroundColor:"var(--widget-secondary)",borderTopLeftRadius:"9999px",borderBottomLeftRadius:"9999px",borderTopRightRadius:"var(--widget-radius)",borderBottomRightRadius:"var(--widget-radius)"},children:V("div",{className:"relative flex h-full w-full flex-row items-center",children:n?pe("div",{className:"relative flex h-full w-full flex-row items-center",children:[V("div",{className:`${v} pl-px flex items-center justify-center`,children:V(se,{className:"rounded-full",asset:n,size:"md"})}),pe("div",{className:"flex h-full w-full flex-row items-center justify-between pl-1.5 pr-7",children:[pe("div",{className:"flex h-full flex-col justify-center",children:[V("p",{className:"text-sm font-thin uppercase",style:{color:"var(--widget-secondary-foreground)"},children:n.symbol}),pe("span",{className:"text-2xs font-sans",style:{color:"var(--widget-muted-foreground)"},children:[n.address?.slice(0,6),"...",n.address?.slice(-4)]})]}),w!==void 0&&pe("div",{className:"flex flex-col text-right",children:[V("p",{className:"text-2xs",style:{color:"var(--widget-muted-foreground)"},children:"Balance"}),V("span",{className:"font-sans text-xs tabular-nums",style:{color:"var(--widget-foreground)",opacity:.5},children:w})]})]}),!l&&V(Ve,{className:"absolute right-3 top-1/2 w-1.5 translate-y-[-50%]",style:{color:"var(--widget-secondary-foreground)",opacity:.6}})]}):V("div",{className:"flex h-full w-full items-center justify-center",children:V("span",{className:"text-sm",style:{color:"var(--widget-secondary-foreground)",opacity:.7},children:"Select token"})})})})},Ls=Gr;var Vt=Ar(kr(),1);import{useState as ze,useEffect as je}from"react";import{jsx as X,jsxs as Dt}from"react/jsx-runtime";var Kr=()=>{let[e,t]=ze(null),[n,c]=ze(""),l=kt(n,1e3),[s,a]=ze(!1),[y,p]=ze("");je(()=>{ee.getState().setRecipient(e)},[e]),je(()=>{c(e||"")},[e]);let d=r=>{let v=r.target.value;s&&(a(!1),p(""),t(null)),c(v),v===""&&t(null)};je(()=>{l===""||!l?(a(!1),p(""),t(null)):At(l)?(a(!1),p(""),t(l)):(a(!0),p("Invalid wallet address..."),t(null),c(""))},[l]),je(()=>{if(s){let r=setTimeout(()=>{t(null),c(""),a(!1),p("")},2e3);return()=>clearTimeout(r)}},[s]);let o=()=>{t(null),c(""),a(!1),p("")};return X("div",{className:"w-full",children:Dt("div",{className:"relative flex flex-row items-center",children:[X("input",{type:"password",style:{display:"none"},"aria-hidden":"true",tabIndex:-1}),X("label",{htmlFor:"recipient-address",className:"sr-only",children:"Recipient wallet address"}),X("div",{className:"absolute left-3 flex h-6 w-6 items-end justify-center overflow-hidden rounded-full",style:{backgroundColor:"var(--widget-secondary)"},children:e&&!s?X("img",{className:"h-full w-full rounded-full object-cover",src:(0,Vt.makeGradient)(e),alt:"Recipient avatar"}):X(It,{className:"h-5 w-5",style:{color:s?"var(--widget-destructive)":"var(--widget-muted-foreground)"}})}),X("div",{className:"absolute left-12 top-1.5 -translate-y-1 text-xs font-medium opacity-60",style:{color:s?"var(--widget-destructive)":"var(--widget-muted-foreground)"},"aria-hidden":"true",children:"To:"}),X("input",{id:"recipient-address",className:"font-sans block h-10 w-full items-center pl-12 pt-4 pr-8 text-xs",style:{backgroundColor:s?"color-mix(in srgb, var(--widget-destructive) 10%, transparent)":"transparent",color:s?"var(--widget-destructive)":"var(--widget-foreground)",outline:"none",opacity:s?.9:1},placeholder:s?y:"Enter recipient address...",value:n,onChange:d,spellCheck:!1,"aria-invalid":s,"aria-describedby":s?"recipient-error":void 0}),s&&X("span",{id:"recipient-error",className:"sr-only",children:y}),e&&!s&&Dt("button",{type:"button",className:"absolute right-2 top-1/2 -translate-y-1/2 cursor-pointer flex items-center justify-center h-4 w-4 rounded-full transition-colors hover:[color:var(--widget-destructive)]",style:{color:"var(--widget-muted-foreground)"},onClick:o,"aria-label":"Clear recipient",children:[X("svg",{className:"h-2.5 w-2.5",viewBox:"0 -0.5 21 21",fill:"none",children:X("g",{fill:"currentColor",fillRule:"evenodd",children:X("polygon",{points:"375.0183 90 384 98.554 382.48065 100 373.5 91.446 364.5183 100 363 98.554 371.98065 90 363 81.446 364.5183 80 373.5 88.554 382.48065 80 384 81.446",transform:"translate(-363 -80)"})})}),X("span",{className:"sr-only",children:"Clear recipient"})]})]})})},Qs=Kr;import{jsx as _t,jsxs as Xr}from"react/jsx-runtime";function js(e){return Xr("svg",{width:"485",height:"484",viewBox:"0 0 485 484",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[_t("path",{d:"M265.974 52.8127C270.567 50.9299 273.227 53.6338 275.917 56.1595C301.879 80.5364 327.828 104.927 353.786 129.308C380.101 154.024 406.44 178.715 432.721 203.467C436.002 206.557 440.744 209.272 438.226 215.021C435.865 220.415 430.758 219.123 426.424 219.124C305.965 219.169 185.506 219.163 65.0464 219.166C53.0995 219.166 49.0676 215.225 49.0125 203.316C48.9563 191.154 48.9813 178.991 48.9973 166.829C49.0119 155.717 53.3581 151.358 64.4131 151.358C127.892 151.357 191.37 151.364 254.849 151.368C262.591 151.368 262.645 151.344 262.588 143.559C262.388 116.237 262.191 88.914 261.918 61.5922C261.883 58.0834 262.161 54.9042 265.974 52.8127Z",fill:"currentColor"}),_t("path",{d:"M80.5649 300.432C71.3447 291.747 62.4175 283.264 53.4064 274.87C50.4552 272.122 47.8959 269.327 49.7894 264.946C51.6154 260.72 55.4624 260.923 59.1682 260.923C164.476 260.927 269.785 260.932 375.093 260.935C391.422 260.935 407.752 260.9 424.081 260.933C434.679 260.955 438.994 265.286 439.015 275.854C439.04 288.517 439.048 301.181 439.013 313.845C438.985 324.225 434.466 328.73 424.01 328.732C360.359 328.741 296.707 328.729 233.056 328.714C225.392 328.713 225.368 328.686 225.426 336.583C225.628 363.741 225.815 390.9 226.101 418.057C226.142 421.935 225.905 425.512 221.852 427.329C217.686 429.197 214.934 426.578 212.212 424.02C172.068 386.302 131.922 348.587 91.7738 310.874C88.1374 307.459 84.4753 304.07 80.5649 300.432Z",fill:"currentColor"})]})}var Yr=["SUCCEEDED","FAILED","COMPLETED","CANCELLED"];async function Ft(e,t,n={}){let{onStatusChange:c,onComplete:l,onError:s,interval:a=4e3,timeout:y=3e5,txHash:p,signal:d}=n,o=null,r=Date.now(),v=0,w=8,u=null,h=p?`?txHash=${p}`:"";return new Promise((g,i)=>{let f=async()=>{try{if(d?.aborted){u&&clearTimeout(u),i(new DOMException("Polling aborted","AbortError"));return}if(Date.now()-r>y){u&&clearTimeout(u);let P=new Error("Order status polling timed out");s?.(P),i(P);return}let x=await fetch(`${t}/status/${e}${h}`,{headers:Ee(),signal:d});if(x.status===404){u=setTimeout(f,a);return}if(!x.ok)throw new Error(`Failed to fetch order status: ${await x.text()}`);let m=await x.json();if(!m||typeof m!="object"||!m.status)throw new Error(`Invalid status response format: ${JSON.stringify(m)}`);v=0;let k=m.status.toUpperCase();if(k!==o&&(o=k,c?.(m)),Yr.includes(k)){u&&clearTimeout(u),l?.(m),g(m);return}u=setTimeout(f,a)}catch(x){if(x instanceof Error&&x.name==="AbortError"){u&&clearTimeout(u),i(x);return}if(++v>=w){u&&clearTimeout(u);let m=x instanceof Error?x:new Error(String(x));s?.(m),i(m);return}u=setTimeout(f,a)}};f()})}import{useCallback as He,useEffect as Jr,useRef as Ge}from"react";function Bt(e){let t=e.toUpperCase();return t==="SUCCEEDED"||t==="COMPLETED"?"completed":t==="FAILED"?"failed":t==="CANCELLED"?"cancelled":t==="PROCESSING"?"received":"pending"}var Qt=e=>{let t=Ge(new Map),n=Ge(new Map),c=Ge(new Map),l=Ge(0),s=He(()=>++l.current,[]),{address:a}=ie(),y=Pe(),p=He((r,v)=>{if(t.current.get(r))return;v&&n.current.set(r,v),t.current.set(r,!0);let w=l.current,u=new AbortController;c.current.set(r,u);let h=v?.baseToken?.chainId===1;Ft(r,Ne(),{interval:h?1e3:500,timeout:3e5,signal:u.signal,onStatusChange:g=>{if(!g?.status)return;let i=Bt(g.status);if(e?.(r,i,g.explorerUrl),i==="completed"&&a){let f=n.current.get(r);if(f&&(f.baseToken||f.quoteToken)){let x=[];f.baseToken&&x.push({asset:f.baseToken,userAddress:a}),f.quoteToken&&x.push({asset:f.quoteToken,userAddress:a}),y({type:"swap",tokens:x})}}["completed","failed","cancelled"].includes(i)&&(t.current.delete(r),n.current.delete(r)),w!==l.current&&(t.current.delete(r),n.current.delete(r))},onComplete:g=>{g?.status&&e?.(r,Bt(g.status),g.explorerUrl),t.current.delete(r),n.current.delete(r)},onError:()=>{t.current.delete(r),n.current.delete(r)}}).catch(g=>{g instanceof Error&&g.name==="AbortError"||(t.current.delete(r),n.current.delete(r),c.current.delete(r))})},[a,y,e]),d=He(r=>{let v=c.current.get(r);v&&(v.abort(),c.current.delete(r)),s(),t.current.delete(r),n.current.delete(r)},[s]),o=He(()=>{for(let r of c.current.values())r.abort();c.current.clear(),s(),t.current.clear(),n.current.clear()},[s]);return Jr(()=>()=>o(),[o]),{startPolling:p,stopPolling:d,stopAllPolling:o,isPolling:r=>t.current.has(r)}};import{createContext as Zr,useContext as en}from"react";var tn=Zr({registerTransaction:()=>{},enabled:!1}),qt=()=>en(tn);import{signTypedData as rn}from"viem/actions";function jt(e){return e instanceof Error?e.name==="UserRejectedRequestError"||e.message.includes("User rejected")||e.message.includes("rejected")||e.message.includes("denied")||e.message.includes("cancelled")||e.message.includes("canceled"):!1}async function zt(e){if(e.chain?.id)return e.chain.id;let t=e.getChainId?.();return t!=null?await t:null}var nn=async(e,t)=>{try{if(await zt(e)===t)return!0;if(e.request)await e.request({method:"wallet_switchEthereumChain",params:[{chainId:`0x${t.toString(16)}`}]});else if(e.switchChain)await e.switchChain({id:t});else if(e.send)await e.send("wallet_switchEthereumChain",[{chainId:`0x${t.toString(16)}`}]);else throw new Error("Wallet doesn't support chain switching");return await zt(e)===t}catch(n){throw jt(n)?new Error("User rejected the chain switch request"):new Error(`Please switch your wallet to the required network (Chain ID: ${t})`)}},Ht=async e=>{let{quote:t,signatureStep:n,userAddress:c,walletClient:l}=e;if(!l)throw new Error("Wallet client not available");if(n.type!=="SIGNATURE"||!n.signature?.typedData)throw new Error("Invalid signature step");try{let s=n.signature.typedData,a={...s.message};for(let o of["inputAmount","outputAmount","startTime","endTime"])a[o]!=null&&(a[o]=BigInt(a[o]));let y=s.domain;if(y.chainId!=null){let o=Number(y.chainId);await nn(l,o)}let p=await rn(l,{account:c,domain:y,types:s.types,primaryType:s.primaryType,message:a}),d=await fetch(`${Ne()}/submit-signature`,{method:"POST",headers:Ee(),body:JSON.stringify({quoteId:t.id,signatures:[p]})});if(!d.ok){let o=await d.json().catch(()=>({}));throw new Error(o?.message||`Submit failed: ${d.status}`)}return{quoteId:t.id,signature:p}}catch(s){throw jt(s)?new Error("User rejected the signing request"):s instanceof Error&&s.message.includes("chain")?new Error("Chain switching failed. Please manually switch to the correct network."):s}};var Gt="vt_submitted_quotes";var dt=()=>{try{let e=localStorage.getItem(Gt);return e?JSON.parse(e):[]}catch{return[]}},Kt=e=>{try{localStorage.setItem(Gt,JSON.stringify(e))}catch{}},sn=e=>{let t=Date.now(),n=typeof e=="string"?new Date(e).getTime():e>9999999999?e:e*1e3;return t<n+3e4},on=e=>dt().some(t=>t.quoteId===e),Xt=(e,t)=>on(e)?{canSubmit:!1,reason:"Order already submitted"}:sn(t)?{canSubmit:!0}:{canSubmit:!1,reason:"Quote has expired"},Yt=(e,t)=>{let n=typeof t=="string"?new Date(t).getTime():t,c=dt();c.push({quoteId:e,submittedAt:Date.now(),createdAt:n}),Kt(c)},Jt=()=>{let e=dt(),t=Date.now(),n=300*1e3,c=e.filter(l=>t-l.submittedAt<n);c.length!==e.length&&Kt(c)};import{useMutation as an}from"@tanstack/react-query";import{waitForTransactionReceipt as cn}from"@wagmi/core";import{wethAbi as ln}from"abitype/abis";import{useConfig as un}from"wagmi";function Zt(){let e=un();return an({mutationFn:async({chainId:t,accountAddress:n,amountRaw:c,writeContractAsync:l})=>{let s=Q(t);if(!s)throw new Error(`No wrapping contract for chain ${t}`);let a=s.wrappedAsset.address,y=await l({abi:ln,functionName:"withdraw",address:a,account:n,args:[c],chainId:t});if((await cn(e,{hash:y,chainId:t,confirmations:1,pollingInterval:4e3})).status!=="success")throw new Error("Unwrap transaction did not get successful receipt");return{success:!0,hash:y}}})}import{useMutation as dn}from"@tanstack/react-query";import{waitForTransactionReceipt as pn}from"@wagmi/core";import{wethAbi as fn}from"abitype/abis";import{useConfig as mn}from"wagmi";function er(){let e=mn();return dn({mutationFn:async({chainId:t,accountAddress:n,amountRaw:c,writeContractAsync:l})=>{let s=Q(t);if(!s)throw new Error(`No wrapping contract for chain ${t}`);let a=s.wrappedAsset.address,y=await l({abi:fn,functionName:"deposit",address:a,account:n,value:c,chainId:t});if((await pn(e,{hash:y,chainId:t,confirmations:1,pollingInterval:4e3})).status!=="success")throw new Error("Wrap transaction did not get successful receipt");return{success:!0,hash:y}}})}import{useCallback as me,useEffect as Te,useRef as Cr,useState as Jn}from"react";import{useChainId as Zn}from"wagmi";import{useCallback as tr,useRef as gn}from"react";function rr(){let{registerTransaction:e,enabled:t}=qt(),n=gn(new Set),c=tr((s,a)=>{!t||n.current.has(s)||(n.current.add(s),e(s,a))},[t,e]),l=tr((s,a)=>{!t||n.current.has(s)||(n.current.add(s),e(s,a))},[t,e]);return{trackOrderTransaction:c,trackNativeTransaction:l,txTrackingEnabled:t}}import{useEffect as nr,useState as wn,useCallback as sr,useRef as pt}from"react";import{useAccount as hn,useChainId as yn,useSwitchChain as vn}from"wagmi";import{jsx as ye,jsxs as ft}from"react/jsx-runtime";var bn=15e3,Ke="chain",xn=({needsChainSwitch:e,requiredChain:t,reviewState:n,goToNextStep:c,cancel:l})=>{let s=ae(Ke,n),[a,y]=wn("pending"),p=pt(!1),d=pt(!1),o=pt(null),r=yn(),{switchChainAsync:v}=vn(),{status:w,isReconnecting:u}=hn(),h=sr(()=>{o.current&&(clearTimeout(o.current),o.current=null)},[]),g=sr(async()=>{if(!(p.current||d.current||w!=="connected"||u)){p.current=!0,d.current=!0,y("pending"),o.current=setTimeout(()=>{p.current&&(y("error"),p.current=!1)},bn);try{await v({chainId:t.chainId}),h(),y("success"),c(Ke,n)}catch{h(),y("error")}finally{p.current=!1}}},[v,w,u,t.chainId,c,n,h]);nr(()=>{p.current||d.current||n===Ke&&a==="pending"&&w==="connected"&&!u&&(e&&r!==t.chainId?g():(y("success"),c(Ke,n)))},[n,a,e,r,t.chainId,w,u,g,c]),nr(()=>()=>h(),[h]);let i=()=>{a==="error"&&(d.current=!1,y("pending"))},f=!s&&a==="error",x=!s&&(a==="pending"||a==="error"),m=f?"var(--widget-status-failed)":"var(--widget-primary)";return ft("div",{className:"flex w-full flex-row justify-between space-x-3",children:[ye("button",{type:"button",className:`inline-flex h-12 w-full items-center justify-center text-sm font-sans font-medium transition duration-150 ${f?"cursor-pointer":"cursor-not-allowed"}`,style:{backgroundColor:`color-mix(in srgb, ${m} 12%, transparent)`,border:`1px solid color-mix(in srgb, ${m} 20%, transparent)`,color:m,borderRadius:"var(--widget-radius)"},onClick:f?i:void 0,children:ft("div",{className:"flex h-10 w-full flex-row items-center space-x-3 px-4",children:[ye(we,{chain:t.chainId,size:"xs"}),ye("p",{className:"whitespace-nowrap",children:f?"Retry Switch":`Switch to ${t.name}`}),ye("div",{className:"flex flex-1 border-t",style:{borderColor:"var(--widget-border)"}}),ft("div",{className:"flex h-6 w-3 items-center justify-center rounded-full",children:[!s&&a==="pending"&&ye(K,{size:"5"}),(s||a==="success")&&ye(Z,{className:"h-8 w-8"}),f&&ye(he,{className:"h-[12px] w-[12px]"})]})]})}),x&&ye("button",{type:"button",className:"inline-flex h-12 items-center justify-center px-8 text-sm font-sans font-medium transition duration-150 cursor-pointer",style:{backgroundColor:"color-mix(in srgb, var(--widget-status-failed) 12%, transparent)",border:"1px solid color-mix(in srgb, var(--widget-status-failed) 20%, transparent)",color:"var(--widget-status-failed)",borderRadius:"var(--widget-radius)"},onClick:l,children:"Cancel"})]})},or=xn;import{waitForTransactionReceipt as dr}from"@wagmi/core";import{useCallback as Xe,useEffect as Ye,useState as Tn,useRef as ur}from"react";import{erc20Abi as mt,decodeFunctionData as Rn,encodeFunctionData as An}from"viem";import{useAccount as kn,useConfig as Nn,useSendTransaction as En,useSwitchChain as In,useWalletClient as On}from"wagmi";import{useEffect as ar,useRef as ir,useState as cr}from"react";import{jsx as Sn}from"react/jsx-runtime";var Cn=({startTime:e,onExpired:t})=>{let[n,c]=cr(30),[l,s]=cr(!1),a=ir(!1),y=ir(t);y.current=t,ar(()=>{a.current=!1},[e]),ar(()=>{let d=()=>{let r=Date.now(),w=(e>9999999999?e:e*1e3)+30*1e3,u=Math.max(0,w-r),h=Math.floor(u/1e3);if(h<=0){c(0),a.current||(a.current=!0,s(!0),y.current());return}c(h),s(!1)};if(l)return;d();let o=setInterval(d,1e3);return()=>clearInterval(o)},[e,l]);let p=d=>{let o=Math.floor(d/60),r=d%60;return`${o.toString().padStart(2,"0")}:${r.toString().padStart(2,"0")}`};return l?null:Sn("span",{className:"text-xs font-sans",children:p(n)})},lr=Cn;import{jsx as fe,jsxs as gt}from"react/jsx-runtime";function Pn(e){return e.name==="UserRejectedRequestError"||e.message.includes("User rejected")||e.message.includes("rejected")||e.message.includes("denied")||e.message.includes("cancelled")||e.message.includes("canceled")}var ve="signingOrder";async function $n(e,t,n,c,l){let s=e.transaction?.encoded,a=s?.to??e.to,y=s?.data??e.data,p=s?.value??e.value;if(!a)throw new Error('Transaction step missing "to" address');let d=s?.chainId,o=e.chainKey||l,r=d||(o?Be(o):void 0);if(!r)throw new Error(`Unknown chain: ${o}`);let v=tt()[r],w=await n({account:t,chain:v,to:a,data:y||"0x",value:BigInt(p||"0")});return await dr(c,{hash:w,chainId:r}),w}async function Un(e,t,n,c,l){let s=e.transaction?.encoded,a=s?.to??e.to,y=s?.data??e.data;if(!(!a||!y))try{let{args:p}=Rn({abi:mt,data:y});if(!p||p.length<2)return;let d=p[0],o=e.chainKey||l.srcChainKey,r=s?.chainId||(o?Be(o):void 0);if(!r)return;if(await Nt(r).readContract({address:a,abi:mt,functionName:"allowance",args:[t,d]})>0n){let u=An({abi:mt,functionName:"approve",args:[d,0n]}),h=tt()[r],g=await n({account:t,chain:h,to:a,data:u,value:0n});await dr(c,{hash:g,chainId:r})}}catch{}}var Mn=({base:e,baseAmount:t,quote:n,quoteAmount:c,userAddress:l,reviewState:s,goToNextStep:a,cancel:y,isWrappingPair:p,isUnwrappingPair:d,restartSigningFlow:o,onSwapInitiated:r,onOrderSubmitted:v,onSwapComplete:w,startPolling:u,trackNativeTransaction:h})=>{let g=ae(ve,s),[i,f]=Tn("idle"),x=ur(!1),m=ur(null),k=Nn(),{isReconnecting:P}=kn(),{rfqQuote:C,stop:U,refresh:W}=Qe(),{data:E}=On({chainId:e.chainId}),{switchChain:O}=In(),{sendTransactionAsync:I}=En(),M=C?._receivedAt??0,D=Xe(()=>M?Date.now()>=M+30*1e3:!1,[M]),Y=Xe(async()=>{if(x.current||i!=="idle")return;if(!C?.id||!C?._receivedAt){f("error");return}if(!Xt(C.id,C._receivedAt).canSubmit){f("stale");return}x.current=!0;try{if(!E)throw new Error("Wallet client not available");Jt();let R=C.userSteps??[],$;for(let N of R)if(N.type==="TRANSACTION"){f("submitting");let q=N.chainKey||C.srcChainKey,te=q?Be(q):void 0;te&&E.chain?.id!==te&&(await O({chainId:te}),await new Promise(z=>setTimeout(z,800)));let Me=(N.transaction?.encoded?.to??N.to)?.toLowerCase(),be=C.srcToken?.address?.toLowerCase();Me&&be&&Me===be&&await Un(N,l,I,k,C),$=await $n(N,l,I,k,C.srcChainKey),h($,N.description||`Tx on ${q}`)}else N.type==="SIGNATURE"&&(f("signing"),await Ht({quote:C,signatureStep:N,userAddress:l,walletClient:E}));Yt(C.id,C._receivedAt),v?.(C.id),u(C.id,{baseToken:e,quoteToken:n}),r?.(),U(),f("success"),a(ve,s),w?.(C.id)}catch(R){R instanceof Error&&Pn(R),f("error")}finally{x.current=!1}},[i,C,E,e,n,l,U,u,a,s,w,O,I,r,v,h,k]);Ye(()=>{if(s===ve&&U(),g&&i!=="success"){f("success"),a(ve,s);return}if(i==="success"){a(ve,s);return}if(s===ve&&i==="idle"&&!C?.id){f("refreshingQuote"),W();return}if(s===ve&&i==="idle"&&E&&!x.current&&!P){let S=C?.id||null;S&&m.current!==S&&(m.current=S,Y())}},[g,s,i,E,P,Y,a,C?.id,W,U]),Ye(()=>{i==="refreshingQuote"&&C?.id&&f("idle")},[i,C?.id]),Ye(()=>{s!==ve&&(m.current=null)},[s]),Ye(()=>{let S=setInterval(()=>{D()&&!x.current&&i!=="submitting"&&i!=="success"&&f("stale")},1e3);return()=>clearInterval(S)},[D,i]);let G=()=>{i==="error"&&!x.current&&(m.current=null,f("idle"))},L=Xe(()=>{m.current=null,f("refreshingQuote"),W()},[W]),T=Xe(()=>{o?o(!0):y()},[o,y]),F=()=>i==="error"?"Retry swap":i==="signing"?"Sign Swap Order":i==="submitting"?"Submitting...":i==="refreshingQuote"?"Refreshing Quote...":i==="stale"?"Quote Stale":"Sign & Submit",B=!g&&(i==="error"||i==="stale"),J=B?"var(--widget-status-failed)":"var(--widget-primary)";return gt("div",{className:"flex w-full flex-row justify-between space-x-3",children:[fe("button",{type:"button",className:`inline-flex h-12 w-full items-center justify-center text-sm font-sans font-medium transition duration-150 ${B?"cursor-pointer":"cursor-not-allowed"}`,style:{backgroundColor:`color-mix(in srgb, ${J} 12%, transparent)`,border:`1px solid color-mix(in srgb, ${J} 20%, transparent)`,color:J,borderRadius:"var(--widget-radius)"},onClick:!g&&i==="error"?G:i==="stale"?T:void 0,children:gt("div",{className:"flex h-10 w-full flex-row items-center space-x-3 px-4",children:[fe(se,{asset:e,size:"xs",noChain:!0}),fe("p",{className:"whitespace-nowrap",children:F()}),fe("div",{className:"flex flex-1 border-t",style:{borderColor:"var(--widget-border)"}}),M>0&&i!=="success"&&i!=="error"&&i!=="stale"&&fe(lr,{startTime:M,onExpired:()=>f("stale")}),gt("div",{className:"flex h-6 w-3 items-center justify-center rounded-full",children:[!g&&(i==="idle"||i==="signing"||i==="submitting"||i==="refreshingQuote")&&fe(K,{size:"5"}),(g||i==="success")&&fe(Z,{className:"h-8 w-8"}),!g&&(i==="error"||i==="stale")&&fe(he,{className:"h-[12px] w-[12px]"})]})]})}),!g&&(i==="error"||i==="stale")&&fe("button",{type:"button",className:"inline-flex h-12 items-center justify-center px-8 text-sm font-sans font-medium transition duration-150 cursor-pointer",style:{backgroundColor:"color-mix(in srgb, var(--widget-status-failed) 12%, transparent)",border:"1px solid color-mix(in srgb, var(--widget-status-failed) 20%, transparent)",color:"var(--widget-status-failed)",borderRadius:"var(--widget-radius)"},onClick:y,children:"Cancel"})]})},pr=Mn;import{useEffect as Ln}from"react";import{jsx as j,jsxs as gr}from"react/jsx-runtime";var Wn=()=>gr("svg",{className:"w-3 h-3 shrink-0",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[j("path",{d:"M18 13V19C18 20.1046 17.1046 21 16 21H5C3.89543 21 3 20.1046 3 19V8C3 6.89543 3.89543 6 5 6H11",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}),j("path",{d:"M15 3H21V9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}),j("path",{d:"M10 14L21 3",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]}),Dn="trackingTx",fr={pending:{icon:j(K,{size:"5"}),buttonText:"Trade Pending",showNewSwap:!1,statusVar:"var(--widget-primary)",clickable:!1},received:{icon:j(K,{size:"5"}),buttonText:"Trade Received",showNewSwap:!1,statusVar:"var(--widget-primary)",clickable:!1},completed:{icon:j(Z,{className:"h-5 w-5"}),buttonText:"View Transaction",showNewSwap:!1,statusVar:"var(--widget-status-completed)",clickable:!0},failed:{icon:j(_e,{}),buttonText:"Retry Swap",showNewSwap:!0,statusVar:"var(--widget-status-failed)",clickable:!0},cancelled:{icon:j(_e,{}),buttonText:"View Transaction",showNewSwap:!1,statusVar:"var(--widget-status-failed)",clickable:!0}},Vn=({orderHash:e,base:t,quote:n,baseAmount:c,quoteAmount:l,reviewState:s,onNewSwap:a,onRetry:y,status:p})=>{let d=ae(Dn,s),o=fr[p]||fr.pending,r=ee(u=>u.explorerUrl);Ln(()=>{if(p==="completed"){let u=setTimeout(a,15e3);return()=>clearTimeout(u)}},[p,a]);let v=()=>{p==="failed"?y():(p==="completed"||p==="cancelled")&&r&&window.open(r,"_blank","noopener,noreferrer")},w=o.statusVar;return j("div",{className:"flex flex-row justify-between space-x-3 w-full px-4",children:j("button",{type:"button",className:`inline-flex h-12 w-full items-center justify-center text-sm font-sans font-medium transition duration-150 ${o.clickable?"cursor-pointer":"cursor-not-allowed"}`,style:{backgroundColor:`color-mix(in srgb, ${w} 12%, transparent)`,border:`1px solid color-mix(in srgb, ${w} 20%, transparent)`,color:w,borderRadius:"var(--widget-radius)"},onClick:o.clickable?v:void 0,children:gr("div",{className:"flex h-10 w-full flex-row items-center space-x-3 px-4",children:[j("div",{className:"flex h-6 w-6 items-center justify-center rounded-full overflow-hidden shrink-0",children:o.icon}),j("p",{className:"whitespace-nowrap",children:o.buttonText}),j("div",{className:"flex flex-1 border-t",style:{borderColor:"var(--widget-border)"}}),o.clickable&&j("div",{className:"flex h-6 w-6 items-center justify-center",children:p==="failed"?j(Ot,{}):j(Wn,{})})]})})})},mr=Vn;import{useCallback as wr,useEffect as hr,useState as _n,useRef as wt}from"react";import{parseUnits as Fn}from"viem";import{useAccount as Bn,useWriteContract as Qn}from"wagmi";import{jsx as Ce,jsxs as ht}from"react/jsx-runtime";var qn=15e3,Je="unwrapping",zn=({needsToUnwrap:e,amount:t,chainId:n,token:c,reviewState:l,setReviewState:s,goToNextStep:a,cancel:y,delayedClose:p})=>{let d=ae(Je,l),[o,r]=_n("idle"),v=Zt(),{writeContractAsync:w}=Qn(),{address:u}=ie(),h=Pe(),g=wt(!1),i=wt(!1),f=wt(null),{status:x}=Bn(),m=wr(()=>{f.current&&(clearTimeout(f.current),f.current=null)},[]),k=wr(async()=>{if(!(g.current||i.current||!u||x!=="connected")){g.current=!0,i.current=!0,r("pending"),f.current=setTimeout(()=>{g.current&&(r("error"),g.current=!1)},qn);try{let E=Q(n);if(!E)throw new Error(`No config for chain ${n}`);let O=E.wrappedAsset.decimals??E.nativeAsset.decimals,I=Fn(t.toString(),O);await v.mutateAsync({chainId:n,accountAddress:u,amountRaw:I,writeContractAsync:w});let M={symbol:E.nativeAsset.symbol,name:E.nativeAsset.name,address:Fe,decimals:E.nativeAsset.decimals,chainId:n},D={symbol:E.wrappedAsset.symbol,name:E.wrappedAsset.name,address:E.wrappedAsset.address,decimals:E.wrappedAsset.decimals,chainId:n};h({type:"unwrap",tokens:[{asset:M,userAddress:u},{asset:D,userAddress:u}]}),m(),r("success"),a(Je,l),await p()}catch{m(),r("error")}finally{g.current=!1}}},[u,x,n,t,v,w,h,a,l,p,m]);hr(()=>{g.current||i.current||l===Je&&o==="idle"&&x==="connected"&&(e?k():(r("success"),a(Je,l)))},[l,o,e,x,k,a]),hr(()=>()=>m(),[m]);let P=()=>{o==="error"&&(i.current=!1,r("idle"))},C=!d&&o==="error",U=!d&&(o==="pending"||o==="idle"||o==="error"),W=C?"var(--widget-status-failed)":"var(--widget-primary)";return ht("div",{className:"flex w-full flex-row justify-between space-x-3",children:[Ce("button",{type:"button",className:`inline-flex h-12 w-full items-center justify-center text-sm font-sans font-medium transition duration-150 ${C?"cursor-pointer":"cursor-not-allowed"}`,style:{backgroundColor:`color-mix(in srgb, ${W} 12%, transparent)`,border:`1px solid color-mix(in srgb, ${W} 20%, transparent)`,color:W,borderRadius:"var(--widget-radius)"},onClick:C?P:void 0,children:ht("div",{className:"flex h-10 w-full flex-row items-center space-x-3 px-4",children:[Ce("p",{className:"whitespace-nowrap",children:C?"Retry Unwrap":c?`Unwrap ${c.symbol}`:"Unwrap Native Token"}),Ce("div",{className:"flex flex-1 border-t",style:{borderColor:"var(--widget-border)"}}),ht("div",{className:"flex h-6 w-3 items-center justify-center rounded-full",children:[!d&&(o==="pending"||o==="idle")&&Ce(K,{size:"5"}),(d||o==="success")&&Ce(Z,{className:"h-8 w-8"}),C&&Ce(he,{className:"h-[12px] w-[12px]"})]})]})}),U&&Ce("button",{type:"button",className:"inline-flex h-12 items-center justify-center px-8 text-sm font-sans font-medium transition duration-150 cursor-pointer",style:{backgroundColor:"color-mix(in srgb, var(--widget-status-failed) 12%, transparent)",border:"1px solid color-mix(in srgb, var(--widget-status-failed) 20%, transparent)",color:"var(--widget-status-failed)",borderRadius:"var(--widget-radius)"},onClick:y,children:"Cancel"})]})},yr=zn;import{useCallback as vr,useEffect as br,useState as jn,useRef as yt}from"react";import{parseUnits as Hn}from"viem";import{useAccount as Gn,useWriteContract as Kn}from"wagmi";import{jsx as Se,jsxs as vt}from"react/jsx-runtime";var Xn=15e3,Ze="wrapping",Yn=({needsToWrap:e,amount:t,chainId:n,token:c,reviewState:l,setReviewState:s,goToNextStep:a,cancel:y,delayedClose:p,isWrappingPair:d})=>{let o=ae(Ze,l),[r,v]=jn("idle"),w=er(),{writeContractAsync:u}=Kn(),{address:h}=ie(),g=Pe(),i=yt(!1),f=yt(!1),x=yt(null),{status:m}=Gn(),k=vr(()=>{x.current&&(clearTimeout(x.current),x.current=null)},[]),P=vr(async()=>{if(!(i.current||f.current||!h||m!=="connected")){i.current=!0,f.current=!0,v("pending"),x.current=setTimeout(()=>{i.current&&(v("error"),i.current=!1)},Xn);try{let O=Q(n);if(!O)throw new Error(`No config for chain ${n}`);let I=Hn(t.toString(),O.nativeAsset.decimals);await w.mutateAsync({chainId:n,accountAddress:h,amountRaw:I,writeContractAsync:u});let M={symbol:O.nativeAsset.symbol,name:O.nativeAsset.name,address:Fe,decimals:O.nativeAsset.decimals,chainId:n},D={symbol:O.wrappedAsset.symbol,name:O.wrappedAsset.name,address:O.wrappedAsset.address,decimals:O.wrappedAsset.decimals,chainId:n};g({type:"wrap",tokens:[{asset:M,userAddress:h},{asset:D,userAddress:h}]}),k(),v("success"),a(Ze,l),d&&await p()}catch{k(),v("error")}finally{i.current=!1}}},[h,m,n,t,w,u,g,a,l,p,d,k]);br(()=>{i.current||f.current||l===Ze&&r==="idle"&&m==="connected"&&(e?P():(v("success"),a(Ze,l)))},[l,r,e,m,P,a]),br(()=>()=>k(),[k]);let C=()=>{r==="error"&&(f.current=!1,v("idle"))},U=!o&&r==="error",W=!o&&(r==="pending"||r==="idle"||r==="error"),E=U?"var(--widget-status-failed)":"var(--widget-primary)";return vt("div",{className:"flex w-full flex-row justify-between space-x-3",children:[Se("button",{type:"button",className:`inline-flex h-12 w-full items-center justify-center text-sm font-sans font-medium transition duration-150 ${U?"cursor-pointer":"cursor-not-allowed"}`,style:{backgroundColor:`color-mix(in srgb, ${E} 12%, transparent)`,border:`1px solid color-mix(in srgb, ${E} 20%, transparent)`,color:E,borderRadius:"var(--widget-radius)"},onClick:U?C:void 0,children:vt("div",{className:"flex h-10 w-full flex-row items-center space-x-3 px-4",children:[Se("p",{className:"whitespace-nowrap",children:U?"Retry Wrap":c?`Wrap ${c.symbol}`:"Wrap Native Token"}),Se("div",{className:"flex flex-1 border-t",style:{borderColor:"var(--widget-border)"}}),vt("div",{className:"flex h-6 w-3 items-center justify-center rounded-full",children:[!o&&(r==="pending"||r==="idle")&&Se(K,{size:"5"}),(o||r==="success")&&Se(Z,{className:"h-8 w-8"}),U&&Se(he,{className:"h-[12px] w-[12px]"})]})]})}),W&&Se("button",{type:"button",className:"inline-flex h-12 items-center justify-center px-8 text-sm font-sans font-medium transition duration-150 cursor-pointer",style:{backgroundColor:"color-mix(in srgb, var(--widget-status-failed) 12%, transparent)",border:"1px solid color-mix(in srgb, var(--widget-status-failed) 20%, transparent)",color:"var(--widget-status-failed)",borderRadius:"var(--widget-radius)"},onClick:y,children:"Cancel"})]})},xr=Yn;import{jsx as H,jsxs as es}from"react/jsx-runtime";var Ba=({base:e,baseAmount:t,quote:n,quoteAmount:c,userAddress:l,isWrappingPair:s,isUnwrappingPair:a,isBaseGasToken:y,isQuoteGasToken:p,reviewActionProps:d,reviewState:o,setReviewState:r,trackedOrderHash:v,setTrackedOrderHash:w,txStatus:u,onSwapComplete:h,onSwapInitiated:g,onOrderSubmitted:i,onStaleQuoteRestart:f,setExitHandler:x,setRetryHandler:m})=>{let{rfqQuote:k,status:P,liquidityError:C,routingError:U,sizeCapError:W,stop:E,clear:O}=Qe(),{clearForm:I}=Oe(),M=Zn(),{swapButtonVariant:D,widgetType:Y}=ke(),G=Y==="compact",{trackOrderTransaction:L,trackNativeTransaction:T}=rr(),{startPolling:F}=Qt((_,ge,De)=>{ee.getState().setTxStatus(ge),De&&ee.getState().setExplorerUrl(De),ge==="completed"&&L(_,`Swap ${e.symbol} \u2192 ${n.symbol}`)}),[B,J]=Jn(!1),S=Cr(!1),R=Cr(null),$=s,N=a,q=!s&&!a,te=M!==e?.chainId&&($||N||q),Me=Q(e.chainId),be={chainId:e.chainId,name:Me?.displayName??`Chain ${e.chainId}`},z=me((_,ge)=>{if(ge!==_)return;if(_==="chain"){if($){r("wrapping");return}if(N){r("unwrapping");return}r("signingOrder");return}if(_==="signingOrder"){r("trackingTx");return}if(_==="wrapping"){if(!s){r("signingOrder");return}r("wrapSuccess");return}if(_==="unwrapping"){r("wrapSuccess");return}let De=Rt(_);De&&r(De)},[r,s,$,N,q]),le=me(()=>te?"chain":$?"wrapping":N?"unwrapping":q?"signingOrder":null,[te,$,N,q]),re=me(()=>{r(null),I()},[I,r]),Re=me(async()=>{r("wrapSuccess");for(let _=0;_<3;_++)await rt(700);re()},[re,r]),ne=me(async()=>{O(),r("cancelled");for(let _=0;_<3;_++)await rt(500);re()},[O,re,r]),oe=me(()=>{v&&(ee.getState().stopTracking(),r(null),w(null),I())},[v,r,w,I]),Le=me(()=>{r(null),w(null),S.current=!0,f?.()},[r,w,f]),ue=me(()=>{d&&r(le())},[le,d,r]),et=me((_=!1)=>{_?(S.current=!0,r(null),f?.()):(r(null),R.current=setTimeout(()=>{d&&(r(le()),J(!1))},100))},[r,d,le,f]);Te(()=>{o!==null&&E()},[o,E]),Te(()=>{o!==null&&B&&J(!1)},[o,B]),Te(()=>{x?.(oe)},[x,oe]),Te(()=>(ee.getState().setExitHandler(oe),()=>ee.getState().setExitHandler(null)),[oe]),Te(()=>{m?.(Le)},[m,Le]),Te(()=>()=>{R.current&&clearTimeout(R.current)},[]),Te(()=>{S.current&&P==="fresh"&&k?.id&&(S.current=!1,r("signingOrder"))},[P,k?.id,r]);let We=_=>{if(!_)return{backgroundColor:D==="default"?"var(--widget-muted)":"transparent",color:"var(--widget-muted-foreground)",border:D!=="default"?"1px solid var(--widget-border)":"none",borderRadius:"var(--widget-radius)"};switch(D){case"outline":return{backgroundColor:"transparent",color:"var(--widget-primary)",border:"1px solid var(--widget-primary)",borderRadius:"var(--widget-radius)"};case"ghost":return{backgroundColor:"transparent",color:"var(--widget-primary)",border:"none",borderRadius:"var(--widget-radius)"};default:return{backgroundColor:"var(--widget-primary)",color:"var(--widget-primary-foreground)",borderRadius:"var(--widget-radius)"}}},Ae=`w-full ${G?"py-2":"py-3"} text-sm font-sans font-medium transition-colors cursor-pointer mt-1`;if(o===null&&!s&&!a){if(B)return H("button",{className:Ae,disabled:!0,style:{...We(!1),opacity:.6,cursor:"not-allowed"},children:"Getting fresh quote..."});let _=()=>C?"Insufficient Liquidity":U?"Route Not Available":W?"Size Cap Exceeded":!k&&P==="polling"?"Getting Quote...":k?"Swap":"Enter Amount",ge=!!d;return H("button",{onClick:ge?ue:void 0,disabled:!ge,className:`${Ae} disabled:opacity-40 disabled:cursor-not-allowed`,style:We(ge),children:_()})}return o===null&&a?H("button",{onClick:d?ue:void 0,disabled:!d,className:`${Ae} disabled:opacity-40 disabled:cursor-not-allowed`,style:We(!!d),children:"Unwrap"}):o===null&&s?H("button",{onClick:d?ue:void 0,disabled:!d,className:`${Ae} disabled:opacity-40 disabled:cursor-not-allowed`,style:We(!!d),children:"Wrap"}):o==="success"?H("div",{className:"flex flex-col gap-2 w-full",children:H("button",{className:`w-full ${G?"py-2":"py-3"} text-sm font-sans font-medium cursor-default`,style:{backgroundColor:"color-mix(in srgb, var(--widget-status-completed) 15%, transparent)",color:"var(--widget-status-completed)",border:"1px solid color-mix(in srgb, var(--widget-status-completed) 20%, transparent)",borderRadius:"var(--widget-radius)"},children:"Order Placed"})}):o==="wrapSuccess"?H("div",{className:"flex flex-col gap-2 w-full",children:H("button",{className:`w-full ${G?"py-2":"py-3"} text-sm font-sans font-medium cursor-default`,style:{backgroundColor:"color-mix(in srgb, var(--widget-status-completed) 15%, transparent)",color:"var(--widget-status-completed)",border:"1px solid color-mix(in srgb, var(--widget-status-completed) 20%, transparent)",borderRadius:"var(--widget-radius)"},children:s?"Wrapped Successfully":"Unwrapped Successfully"})}):o==="cancelled"?H("div",{className:"flex flex-col gap-2 w-full",children:H("button",{onClick:re,className:`w-full ${G?"py-2":"py-3"} text-sm font-sans font-medium cursor-pointer`,style:{backgroundColor:"color-mix(in srgb, var(--widget-status-failed) 15%, transparent)",color:"var(--widget-status-failed)",border:"1px solid color-mix(in srgb, var(--widget-status-failed) 20%, transparent)",borderRadius:"var(--widget-radius)"},children:"Order Cancelled"})}):es("div",{className:"flex w-full",children:[o==="chain"&&te&&H(or,{requiredChain:be,needsChainSwitch:te&&M!==e.chainId,reviewState:o,goToNextStep:z,cancel:ne}),o==="wrapping"&&$&&H(xr,{needsToWrap:$,amount:t,chainId:e.chainId,token:e,reviewState:o,setReviewState:r,goToNextStep:z,cancel:ne,delayedClose:Re,isWrappingPair:s}),o==="unwrapping"&&N&&H(yr,{needsToUnwrap:N,amount:t,chainId:e.chainId,token:e,reviewState:o,setReviewState:r,goToNextStep:z,cancel:ne,delayedClose:Re}),o==="signingOrder"&&q&&H(pr,{base:e,baseAmount:t,quote:n,quoteAmount:c,userAddress:l,reviewState:o,goToNextStep:z,cancel:ne,restartSigningFlow:et,onSwapInitiated:g,onOrderSubmitted:i,isWrappingPair:s,isUnwrappingPair:a,onSwapComplete:h,startPolling:F,trackNativeTransaction:T}),o==="trackingTx"&&v&&H(mr,{orderHash:v,base:e,quote:n,baseAmount:t,quoteAmount:c,reviewState:o,status:u,onNewSwap:oe,onRetry:Le}),o&&!["chain","wrapping","unwrapping","approval","signingOrder","trackingTx","success","wrapSuccess","cancelled"].includes(o)&&H("button",{disabled:!0,className:`w-full ${G?"py-2":"py-3"} text-sm font-sans font-medium`,style:{backgroundColor:"var(--widget-muted)",color:"var(--widget-muted-foreground)",borderRadius:"var(--widget-radius)"},children:"Processing..."})]})};import{useState as bt,useCallback as ts,useRef as xt,useEffect as Ct}from"react";import{useShallow as rs}from"zustand/react/shallow";import{jsx as b,jsxs as A}from"react/jsx-runtime";var Sr={pending:"var(--widget-status-pending)",received:"var(--widget-status-received)",completed:"var(--widget-status-completed)",failed:"var(--widget-status-failed)",cancelled:"var(--widget-status-failed)"},ns=({status:e})=>{let t=Sr[e]??Sr.pending;switch(e){case"completed":return b(Z,{className:"h-6 w-6"});case"failed":case"cancelled":return b(_e,{className:"h-6 w-6"});default:return b(K,{size:"5",color:t})}};function ss(e){if(e===0)return"0";let t=Math.abs(e);return t>=1e4?e.toFixed(0):t>=1e3?e.toFixed(1):t>=100?e.toFixed(2):t>=1?e.toFixed(4):t>=.01?e.toFixed(6):e.toExponential(3)}function Tr(e){try{let t=new URL(e).pathname.split("/"),n=t[t.length-1];return n&&n.startsWith("0x")?n:null}catch{return null}}function Rr(e){let t=e.length;return t<=4?48:t<=6?40:t<=8?34:28}var St=()=>A("svg",{className:"w-3 h-3 shrink-0",style:{color:"var(--widget-secondary-foreground)"},viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[b("path",{d:"M18 13V19C18 20.1046 17.1046 21 16 21H5C3.89543 21 3 20.1046 3 19V8C3 6.89543 3.89543 6 5 6H11",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}),b("path",{d:"M15 3H21V9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}),b("path",{d:"M10 14L21 3",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]}),os=()=>A("svg",{className:"w-3 h-3 shrink-0",viewBox:"0 0 195 321",fill:"var(--widget-secondary-foreground)",xmlns:"http://www.w3.org/2000/svg",children:[b("path",{fillRule:"evenodd",d:"M195,189C195,207.02,195,225.04,194.7,243.21C193.68,244.78,192.9,246.17,192.25,247.63C189.71,253.38,187.74,259.46,184.6,264.86C169.44,290.97,147.86,309.46,118.54,318.86C116.44,319.55,114.72,320.27,113,321C97.65,321,82.29,321,66.36,320.66C64.21,319.86,62.64,319.4,60.77,318.73C34.51,310.12,15.56,293.82,4.22,268.85C3.68,267.66,2.1,266.94,1,266C1,242.31,1,218.62,1.29,194.79C2.84,192.16,4.11,189.7,5.34,187.22C18.42,160.94,39.89,144.07,66.64,133.63C76.92,129.62,87.87,127.33,98.67,124.2C97.79,123.24,96.8,121.93,95.59,120.86C85.84,112.3,75.95,103.89,66.3,95.21C55.93,85.86,45.02,76.96,35.71,66.63C21.14,50.5,20.04,23.08,45.41,9.57C50.08,7.08,55.12,5.26,59.93,3.03C60.76,2.64,61.32,1.69,62,1C86.69,1,111.38,1,136.23,1.32C138.04,2.32,139.67,3.01,141.32,3.67C147.64,6.19,154.12,8.39,160.26,11.32C166.83,14.45,172.19,19.18,175.44,25.95C179.39,34.19,178.09,43.36,172.05,49.56C165.75,56.03,157.21,57.8,148.78,52.89C142.4,49.17,136.86,43.96,131.1,39.23C122.63,32.28,115.05,23.88,105.74,18.38C87.78,7.76,68.84,9.07,51.16,19.53C38.68,26.91,36.37,41.4,45.53,52.71C50.38,58.69,56.45,64,62.83,68.36C87.15,84.99,111.86,101.05,136.34,117.44C162.56,135,183.88,156.57,193.26,187.79C193.42,188.32,194.4,188.6,195,189ZM77.06,146.49C61.39,155.71,51.27,169.26,45.93,186.5C39.48,207.32,39.44,228.5,42.93,249.76C45.84,267.48,53.16,282.95,66.59,295.39C83.82,311.34,108.85,312.86,127.37,298.41C138.98,289.35,146.05,277.03,149.48,263.04C161.53,213.92,148.4,171.97,112.16,137.05C111.13,136.06,108.71,135.6,107.31,136.05C97.38,139.22,87.54,142.7,77.06,146.49Z"}),b("path",{d:"M118.83,199C121.61,197.69,122.77,198.41,122.77,201.27C122.71,217.43,122.78,233.58,122.65,249.73C122.65,250.83,121.43,251.92,120.77,253.01C119.97,252.05,118.63,251.17,118.45,250.1C116.32,237.7,113.36,235.12,100.61,235.02C98.12,235,95.62,234.98,93.12,235.01C81.26,235.16,77.72,238.3,75.94,249.84C75.74,251.15,74.39,252.28,73.57,253.49C73.11,253.23,72.64,252.98,72.17,252.73C72.17,234.81,72.17,216.88,72.17,198.96C72.49,198.62,72.81,198.28,73.13,197.93C74.09,198.95,75.72,199.85,75.92,201C78.13,213.8,80.95,216.26,94.05,216.3C97.38,216.31,100.72,216.44,104.04,216.27C113.28,215.79,117.15,212.05,118.22,202.81C118.35,201.65,118.47,200.49,118.83,199Z"})]}),as=({orderHash:e,base:t,quote:n,baseAmount:c,quoteAmount:l,status:s})=>{let[a,y]=bt(!1),[p,d]=bt(!0),o=xt(null),r=xt(Date.now()),[v,w]=bt(null),u=xt(null),{isRecipientInputOpen:h,recipient:g,explorerUrl:i}=ee(rs(T=>({isRecipientInputOpen:T.isRecipientInputOpen,recipient:T.recipient,explorerUrl:T.explorerUrl})));Ct(()=>{s==="received"&&(o.current=Date.now())},[s]),Ct(()=>{if(s==="completed"&&!v){let T=o.current||r.current;w((Date.now()-T)/1e3)}},[s,v]),Ct(()=>()=>{u.current&&clearTimeout(u.current)},[]);let f=ts(()=>{if(!navigator.clipboard?.writeText)return;let T=i?Tr(i)??e:e;navigator.clipboard.writeText(T).then(()=>{y(!0),u.current&&clearTimeout(u.current),u.current=setTimeout(()=>y(!1),2e3)}).catch(()=>{})},[e,i]),x=Ie(c),m=Ie(l),k=s==="completed"||s==="failed"||s==="cancelled",P=!k,C=c&&l?c/l:0,U=Q(t.chainId),W=Q(n.chainId),E=U?.displayName??`Chain ${t.chainId}`,O=W?.displayName??`Chain ${n.chainId}`,I=t.chainId!==n.chainId,M=U?.estimatedTimeMs??0,D=W?.estimatedTimeMs??0,Y=(I?M+D:M)/1e3,G=i?Tr(i)??e:e,L=`${G.slice(0,6)} \u2026 ${G.slice(-4)}`;return A("div",{className:"relative w-full flex flex-col",children:[A("div",{className:"mx-4 mt-2",style:{backgroundColor:"var(--widget-secondary)"},children:[b("div",{className:"p-5",children:A("div",{className:"flex items-center justify-between",children:[A("div",{children:[A("div",{className:"flex items-center gap-3 mb-3",children:[b(se,{asset:t,size:"md",noChain:!0}),A("div",{children:[b("p",{className:"text-xl font-thin uppercase",style:{color:"var(--widget-foreground)"},children:t.symbol}),b("p",{className:"text-xs",style:{color:"var(--widget-muted-foreground)"},children:t.name})]})]}),A("div",{className:"inline-flex items-center gap-1.5 rounded-full px-2.5 py-1",style:{backgroundColor:"color-mix(in srgb, var(--widget-muted-foreground) 20%, transparent)",border:"1px solid color-mix(in srgb, var(--widget-muted-foreground) 30%, transparent)"},children:[b(we,{chain:t.chainId,size:"xs"}),b("span",{className:"text-xs pt-0.5",style:{color:"var(--widget-muted-foreground)"},children:E})]})]}),A("div",{className:"text-right",children:[b("p",{className:"font-thin tracking-tight font-sans",style:{color:"var(--widget-foreground)",fontSize:`${Rr(x)}px`,transition:"font-size 0.1s ease-out"},children:x}),t.price&&A("p",{className:"text-xs mt-1 font-sans",style:{color:"var(--widget-muted-foreground)"},children:["$",(t.price*c).toFixed(2)]})]})]})}),A("div",{className:"relative",children:[b("div",{style:{borderTop:"1px solid var(--widget-border)"}}),b("div",{className:"absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2",children:b("div",{className:"w-10 h-10 rounded-full flex items-center justify-center",style:{backgroundColor:"var(--widget-secondary)",border:"1px solid var(--widget-border)"},children:b(ns,{status:s})})})]}),b("div",{className:"p-5",children:A("div",{className:"flex items-center justify-between",children:[A("div",{children:[A("div",{className:"flex items-center gap-3 mb-3",children:[b(se,{asset:n,size:"md",noChain:!0}),A("div",{children:[b("p",{className:"text-xl font-thin uppercase",style:{color:"var(--widget-foreground)"},children:n.symbol}),b("p",{className:"text-xs",style:{color:"var(--widget-muted-foreground)"},children:n.name})]})]}),A("div",{className:"inline-flex items-center gap-1.5 rounded-full px-2.5 py-1",style:{backgroundColor:"color-mix(in srgb, var(--widget-muted-foreground) 20%, transparent)",border:"1px solid color-mix(in srgb, var(--widget-muted-foreground) 30%, transparent)"},children:[b(we,{chain:n.chainId,size:"xs"}),b("span",{className:"text-xs pt-0.5",style:{color:"var(--widget-muted-foreground)"},children:O})]})]}),A("div",{className:"text-right",children:[b("p",{className:"font-thin tracking-tight font-sans",style:{color:"var(--widget-foreground)",fontSize:`${Rr(m)}px`,transition:"font-size 0.1s ease-out"},children:m}),n.price&&A("p",{className:"text-xs mt-1 font-sans",style:{color:"var(--widget-muted-foreground)"},children:["$",(n.price*l).toFixed(2)]})]})]})})]}),h&&g&&b("div",{className:"mx-4 mt-2 px-5 pb-2",children:A("div",{className:"flex items-center gap-2 p-2 rounded-full",style:{backgroundColor:"var(--widget-secondary)"},children:[b("div",{className:"flex h-5 w-5 items-center justify-center overflow-hidden rounded-full",style:{backgroundColor:"var(--widget-muted)"},children:b("span",{className:"text-2xs",children:"\u{1F464}"})}),b("span",{className:"text-xs",style:{color:"var(--widget-muted-foreground)"},children:"To:"}),A("span",{className:"text-xs font-sans",style:{color:"var(--widget-foreground)"},children:[g.slice(0,6),"...",g.slice(-4)]})]})}),A("div",{className:"px-4 mt-4",style:{borderTop:"1px solid var(--widget-border)",borderBottom:"1px solid var(--widget-border)"},children:[b("div",{className:"relative box-border flex flex-row h-8 w-full items-center cursor-pointer",role:"button",tabIndex:0,onClick:()=>d(!p),onKeyDown:T=>{(T.key==="Enter"||T.key===" ")&&(T.preventDefault(),d(!p))},children:b("div",{className:"flex h-full items-center w-full overflow-hidden",style:{color:"var(--widget-muted-foreground)"},children:A("div",{className:"translate-y-px font-sans flex w-full flex-row items-center justify-between",children:[A("div",{className:"flex flex-row items-center gap-2 whitespace-nowrap",children:[A("div",{className:"flex flex-row items-center gap-1",children:[b(se,{asset:n,size:"3xs",noChain:!0,className:"mb-0.5"}),A("span",{className:"text-xs uppercase",style:{color:"var(--widget-muted-foreground)"},children:["1 ",n.symbol]})]}),b("span",{className:"text-xs",style:{color:"var(--widget-muted-foreground)"},children:"="}),A("div",{className:"flex flex-row items-center gap-1",children:[b(se,{asset:t,size:"3xs",noChain:!0,className:"mb-0.5"}),A("span",{className:"text-xs uppercase",style:{color:"var(--widget-muted-foreground)"},children:[ss(C)," ",t.symbol]})]}),b("span",{className:"text-xs",style:{color:"var(--widget-muted-foreground)"},children:t.price?`\u2248 $${(t.price*C).toFixed(2)}`:""})]}),b("span",{className:"text-xs ml-2 transition-transform duration-200 shrink-0",style:{color:"var(--widget-muted-foreground)",transform:p?"rotate(180deg)":"rotate(0deg)",display:"inline-block"},children:"\u25BE"})]})})}),b("div",{className:"overflow-hidden transition-all duration-200",style:{maxHeight:p?"200px":"0px",opacity:p?1:0},children:A("div",{className:"flex flex-col gap-1 pb-1.5 font-sans",children:[A("div",{className:"flex justify-between text-2xs",style:{color:"var(--widget-muted-foreground)"},children:[b("span",{children:"USD Value"}),A("span",{style:{color:"var(--widget-secondary-foreground)"},children:["$",t.price?(t.price*c).toFixed(2):"\u2014"]})]}),A("div",{className:"flex justify-between text-2xs",style:{color:"var(--widget-muted-foreground)"},children:[b("span",{style:{color:"var(--widget-muted-foreground)"},children:"Order Type"}),b("span",{style:{color:"var(--widget-secondary-foreground)"},children:"RFQ (Limit)"})]}),A("div",{className:"flex justify-between items-center text-2xs",style:{color:"var(--widget-muted-foreground)"},children:[b("span",{children:"Transaction"}),i?A("a",{href:i,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1 transition-colors hover:opacity-80",style:{color:"var(--widget-secondary-foreground)"},children:[b("span",{children:a?"Copied!":L}),b(St,{})]}):A("button",{type:"button",onClick:f,className:"flex items-center gap-1 cursor-pointer transition-colors",style:{color:"var(--widget-secondary-foreground)"},children:[b("span",{style:{color:"var(--widget-secondary-foreground)"},children:a?"Copied!":L}),b(St,{})]})]}),A("div",{className:"flex justify-between text-2xs",style:{color:"var(--widget-muted-foreground)"},children:[b("span",{children:k?"Speed":"Est. Time"}),b("span",{style:{color:"var(--widget-secondary-foreground)"},children:v?`${v.toFixed(2)}s`:Y>0?`~${Y}s`:"\u2014"})]}),A("div",{className:"flex justify-between items-center text-2xs",style:{color:"var(--widget-muted-foreground)"},children:[b("span",{children:"Route"}),A("a",{href:"https://www.aori.io",target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1 transition-colors hover:opacity-80",style:{color:"var(--widget-secondary-foreground)"},children:[b(os,{}),"Aori",b(St,{})]})]})]})})]})]})},Xa=as;export{Or as a,Pe as b,ps as c,bs as d,Qe as e,qr as f,Ts as g,Is as h,Ls as i,Qs as j,js as k,Ft as l,Qt as m,qt as n,nn as o,Ht as p,sn as q,Xt as r,Yt as s,Jt as t,Zt as u,er as v,Ba as w,Xa as x};
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
+ var _chunkK3RTTHBScjs = require('./chunk-K3RTTHBS.cjs');var _react = require('react');var h=_react.createContext.call(void 0, {apiKey:void 0,web3ConnectionType:"custom",enabledChains:[],supportedInputTokens:[],supportedOutputTokens:[],supportedInputChains:[],supportedOutputChains:[],prioritizedInputTokens:[],prioritizedInputChains:[],inputSelectionSearch:!0,outputSelectionSearch:!0,showInputSelectionTokenBalances:!0,showOutputSelectionTokenBalances:!0,lockBase:!1,lockQuote:!1,disableInverting:!1,defaultSlippage:.01,widgetType:"default",tokenDisplay:"default",tokenBadgeOrientation:"left",assetMenuVariant:"default",amountInputVariant:"default",hideAmountInputSymbol:!1,swapButtonVariant:"default",swapHeaderVariant:"default",quoteLoaderVariant:"default",walletButtonEnabled:!0,hasConnectHandler:!1,customWalletUI:"builtin"});function r(){let t=_react.useContext.call(void 0, h);return _react.useMemo.call(void 0, ()=>t.widgetType==="compact"?{...t,amountInputVariant:"normal"}:t,[t])}function v(){let{availableChainIds:t}=_chunkK3RTTHBScjs.G.call(void 0, ),{enabledChains:e,supportedInputTokens:n,supportedOutputTokens:a}=r();return _react.useMemo.call(void 0, ()=>{let i=t,u=n.length>0,d=a.length>0;if(u&&d){let l=new Set([...n.map(o=>o.chainId),...a.map(o=>o.chainId)]);i=i.filter(o=>l.has(o))}else e.length>0&&(i=i.filter(l=>e.includes(l)));return i},[t,e,n,a])}var _zustand = require('zustand');var A=_zustand.create.call(void 0, )(t=>({view:"swap",isTransitioning:!1,transitionType:"navigation",isInverted:!1,selectedChainFilter:null,hoveredChainName:null,isRecipientInputOpen:!1,recipient:null,hasAllowanceError:!1,baseAmount:null,quoteAmount:null,isTrackingTx:!1,trackingOrderHash:null,txStatus:"pending",explorerUrl:null,exitHandler:null,walletTab:"wallet",assetSelectionSearch:"",assetSelectionChain:"all",assetSelectionCategory:"all",assetSelectionAddressInput:"",recentChainIds:[],toggleInverted:()=>t(e=>({isInverted:!e.isInverted})),setView:e=>t({view:e,isTransitioning:!0,...e!=="wallet"&&{walletTab:"wallet"}}),setWalletTab:e=>t({walletTab:e}),setIsTransitioning:e=>t({isTransitioning:e}),transitionToView:(e,n="navigation")=>t({isTransitioning:!0,transitionType:n,view:e,...e!=="wallet"&&{walletTab:"wallet"}}),setChainFilter:e=>t({selectedChainFilter:e}),setHoveredChainName:e=>t({hoveredChainName:e}),toggleRecipientInput:()=>t(e=>({isRecipientInputOpen:!e.isRecipientInputOpen,recipient:e.isRecipientInputOpen?null:e.recipient})),setRecipient:e=>t({recipient:e}),setHasAllowanceError:e=>t({hasAllowanceError:e}),setBaseAmount:e=>t({baseAmount:e}),setQuoteAmount:e=>t({quoteAmount:e}),clearAmounts:()=>t({baseAmount:null,quoteAmount:null}),setIsTrackingTx:e=>t({isTrackingTx:e}),setTrackingOrderHash:e=>t({trackingOrderHash:e}),setTxStatus:e=>t({txStatus:e}),setExplorerUrl:e=>t({explorerUrl:e}),startTracking:e=>t({isTrackingTx:!0,trackingOrderHash:e,txStatus:"pending",explorerUrl:null}),stopTracking:()=>t({isTrackingTx:!1,trackingOrderHash:null,txStatus:"pending",explorerUrl:null,exitHandler:null}),setExitHandler:e=>t({exitHandler:e}),setAssetSelectionSearch:e=>t({assetSelectionSearch:e}),setAssetSelectionChain:e=>t({assetSelectionChain:e}),setAssetSelectionCategory:e=>t({assetSelectionCategory:e}),setAssetSelectionAddressInput:e=>t({assetSelectionAddressInput:e}),pushRecentChain:e=>t(n=>{let a=n.recentChainIds.filter(i=>i!==e);return{recentChainIds:[e,...a].slice(0,3)}}),resetAssetSelection:()=>t({assetSelectionSearch:"",assetSelectionChain:"all",assetSelectionCategory:"all",assetSelectionAddressInput:""}),resetUI:()=>t({view:"swap",isTransitioning:!1,isInverted:!1,selectedChainFilter:null,hoveredChainName:null,isRecipientInputOpen:!1,recipient:null,hasAllowanceError:!1,baseAmount:null,quoteAmount:null,isTrackingTx:!1,trackingOrderHash:null,txStatus:"pending",explorerUrl:null,exitHandler:null,walletTab:"wallet",assetSelectionSearch:"",assetSelectionChain:"all",assetSelectionCategory:"all",assetSelectionAddressInput:""})}));exports.a = h; exports.b = r; exports.c = v; exports.d = A;
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } async function _asyncOptionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = await fn(value); } else if (op === 'call' || op === 'optionalCall') { value = await fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }"use client";
2
+ var _chunkKH57FLSTcjs = require('./chunk-KH57FLST.cjs');var _chunkPSCWQFVYcjs = require('./chunk-PSCWQFVY.cjs');var _chunkD7GULMHEcjs = require('./chunk-D7GULMHE.cjs');var _chunkK3RTTHBScjs = require('./chunk-K3RTTHBS.cjs');var _chunk34N36GUDcjs = require('./chunk-34N36GUD.cjs');var _chunkT3I3AJXVcjs = require('./chunk-T3I3AJXV.cjs');var _reactquery = require('@tanstack/react-query');var _react = require('react');function Ir(e){if(e.length===0)return 5e3;let l=Math.max(...e.map(s=>_nullishCoalesce(_optionalChain([_chunkK3RTTHBScjs.c.call(void 0, s), 'optionalAccess', _2 => _2.blockTimeMs]), () => (2e3))));return Math.min(5e3,Math.max(1e3,l*2+1e3))}var Or=()=>{let{address:e}=_chunk34N36GUDcjs.a.call(void 0, ),t=_chunkD7GULMHEcjs.c.call(void 0, ),n=_reactquery.useQueryClient.call(void 0, ),c=_react.useRef.call(void 0, null),l=_react.useRef.call(void 0, !0),s=_react.useCallback.call(void 0, a=>{if(!e)return;let y=[...new Set(a.tokens.map(d=>d.asset.chainId))],p=Ir(y);c.current&&(clearTimeout(c.current),c.current=null),c.current=setTimeout(async()=>{if(c.current=null,!!l.current)try{let d=a.tokens.map(w=>({chainId:w.asset.chainId,tokenAddress:w.asset.address})),o=await _chunkK3RTTHBScjs.I.call(void 0, e,d);if(o.balances.length===0)return;if(a.tokens.length>=2){let w=a.tokens[0].asset,u=a.tokens[1].asset,h=_chunkK3RTTHBScjs.J.swap(e,w.chainId,w.address,u.chainId,u.address);n.setQueryData(h,o)}let r=_chunkK3RTTHBScjs.J.bulk(e,t),v=n.getQueryData(r);if(v){let w=v.balances.map(u=>_nullishCoalesce(o.balances.find(g=>g.chainId===u.chainId&&g.token.toLowerCase()===u.token.toLowerCase()), () => (u)));for(let u of o.balances)w.some(h=>h.chainId===u.chainId&&h.token.toLowerCase()===u.token.toLowerCase())||w.push(u);for(let u of a.tokens)if(!o.balances.some(g=>g.chainId===u.asset.chainId&&g.token.toLowerCase()===u.asset.address.toLowerCase())){let g=w.findIndex(i=>i.chainId===u.asset.chainId&&i.token.toLowerCase()===u.asset.address.toLowerCase());g!==-1&&(w[g]={...w[g],balance:"0",shiftedBalance:"0"})}n.setQueryData(r,{balances:w})}}catch (e2){}},p)},[e,t,n]);return _react.useEffect.call(void 0, ()=>(l.current=!0,()=>{l.current=!1,c.current&&(clearTimeout(c.current),c.current=null)}),[]),{triggerBalanceUpdate:s}},at=class extends EventTarget{emit(t){this.dispatchEvent(new CustomEvent("balance-update",{detail:t}))}},it=new at,Pe= exports.b =()=>e=>it.emit(e),ps= exports.c =()=>{let{triggerBalanceUpdate:e}=Or();_react.useEffect.call(void 0, ()=>{let t=n=>{e(n.detail)};return it.addEventListener("balance-update",t),()=>it.removeEventListener("balance-update",t)},[e])};var _viem = require('viem');var _jsxruntime = require('react/jsx-runtime');var Wt=_react.createContext.call(void 0, void 0),Lt=1e4,Wr=3e4,Dr=1e3,Vr=2;function _r(e){return _nullishCoalesce(e.find(n=>_optionalChain([n, 'access', _3 => _3.routeSteps, 'optionalAccess', _4 => _4[0], 'optionalAccess', _5 => _5.type])==="AORI_V1"), () => (e[0]))}var bs=({children:e,recipient:t})=>{let{address:n}=_chunk34N36GUDcjs.a.call(void 0, ),c=t||n,[l,s]=_react.useState.call(void 0, "idle"),[a,y]=_react.useState.call(void 0, "idle"),[p,d]=_react.useState.call(void 0, null),[o,r]=_react.useState.call(void 0, null),[v,w]=_react.useState.call(void 0, !1),[u,h]=_react.useState.call(void 0, !1),[g,i]=_react.useState.call(void 0, !1),f=_react.useRef.call(void 0, null),x=_react.useRef.call(void 0, null),m=_react.useRef.call(void 0, null),k=_react.useRef.call(void 0, null),P=_react.useRef.call(void 0, null),C=_react.useRef.call(void 0, 0),U=_react.useRef.call(void 0, 0),W=_react.useRef.call(void 0, 0),E=_react.useRef.call(void 0, !1),O=_react.useRef.call(void 0, new Map),I=_react.useCallback.call(void 0, ()=>{m.current&&clearTimeout(m.current),k.current&&clearTimeout(k.current),P.current&&clearTimeout(P.current),m.current=null,k.current=null,P.current=null},[]),M=_react.useCallback.call(void 0, ()=>{I(),f.current=null,C.current=0,s(()=>E.current?"fresh":"idle")},[I]),D=_react.useCallback.call(void 0, ()=>{M(),x.current=null,d(null),r(null),w(!1),h(!1),i(!1),O.current.clear(),s("idle"),y("idle")},[M]),Y=_react.useCallback.call(void 0, S=>{if(!S)return;k.current&&clearTimeout(k.current);let R=Math.max(0,S+Wr-Date.now());k.current=setTimeout(()=>{s($=>$==="idle"?"idle":"stale")},R)},[]),G=_react.useCallback.call(void 0, async(S,R)=>{let{inputToken:$,outputToken:N,inputAmount:q,setOutputAmount:te}=S;if(!$||!N||!q||parseFloat(q)<=0||Date.now()-(U.current||0)<Lt-10)return;let be=++C.current;try{if(!_optionalChain([$, 'optionalAccess', _6 => _6.decimals])||!_optionalChain([N, 'optionalAccess', _7 => _7.decimals]))return;let z=_chunkK3RTTHBScjs.F.call(void 0, $.chainId)||_optionalChain([_chunkK3RTTHBScjs.c.call(void 0, $.chainId), 'optionalAccess', _8 => _8.key])||"",le=_chunkK3RTTHBScjs.F.call(void 0, N.chainId)||_optionalChain([_chunkK3RTTHBScjs.c.call(void 0, N.chainId), 'optionalAccess', _9 => _9.key])||"";if(!z||!le)throw new Error("Unknown chain");let re=_viem.parseUnits.call(void 0, q.toString(),$.decimals).toString(),Re={srcChainKey:z,dstChainKey:le,srcTokenAddress:_chunkK3RTTHBScjs.v.call(void 0, $.address),dstTokenAddress:_chunkK3RTTHBScjs.v.call(void 0, N.address),amount:re,srcWalletAddress:n||"0x0000000000000000000000000000000000000000",dstWalletAddress:c||n||"0x0000000000000000000000000000000000000000",options:{amountType:"EXACT_SRC_AMOUNT",feeTolerance:{type:"PERCENT",amount:2}}};U.current=Date.now();let ne=await fetch(`${_chunkK3RTTHBScjs.k.call(void 0, )}/quotes`,{method:"POST",headers:_chunkK3RTTHBScjs.m.call(void 0, ),body:JSON.stringify(Re),signal:AbortSignal.timeout(15e3)});if(!ne.ok){let Ae=await _asyncOptionalChain([(await ne.json().catch(()=>({}))), 'optionalAccess', async _10 => _10.message])||ne.statusText;throw Object.assign(new Error(Ae),{status:ne.status})}let oe=await ne.json();if(be!==C.current||f.current!==R)return;let Le=_nullishCoalesce(oe.quotes, () => ([])),ue=_r(Le);if(!ue)throw Object.assign(new Error("No quotes returned"),{emptyQuotes:!0});let et=Number(_viem.formatUnits.call(void 0, _chunkK3RTTHBScjs.q.call(void 0, ue.dstAmount),N.decimals));typeof te=="function"&&te(et),ue._receivedAt=Date.now(),d(ue),r(null),w(!1),s("fresh"),Y(ue._receivedAt),R&&O.current.delete(R)}catch(z){if(be!==C.current||f.current!==R)return;let le=_optionalChain([z, 'optionalAccess', _11 => _11.status]),re=z instanceof Error?z.message:"",Re=!!_optionalChain([z, 'optionalAccess', _12 => _12.emptyQuotes]);if((le===400||Re||re.includes("Quote request failed"))&&R){let oe=(O.current.get(R)||0)+1;if(O.current.set(R,oe),oe>=Vr){h(!0),I(),f.current=null;return}}if(re.toLowerCase().includes("order cap exceeded")){i(!0),I(),f.current=null;return}if(re.toLowerCase().includes("insufficient executor balance")){w(!0),I(),f.current=null;return}r(z instanceof Error?z.message:"Unknown error")}},[n,c,Y,I]),L=_react.useCallback.call(void 0, (S,R)=>{I(),x.current=S,U.current=0,O.current.delete(R),w(!1),h(!1),i(!1),r(null),s("polling");let $=async()=>{f.current===R&&(await G(S,R),f.current===R&&(m.current=setTimeout($,Lt)))};$()},[I,G]),T=_react.useCallback.call(void 0, S=>{if(!_optionalChain([S, 'optionalAccess', _13 => _13.inputToken])||!_optionalChain([S, 'optionalAccess', _14 => _14.outputToken])||!_optionalChain([S, 'optionalAccess', _15 => _15.inputAmount])||parseFloat(S.inputAmount)<=0){M();return}let R=x.current;if(R&&_optionalChain([R, 'access', _16 => _16.inputToken, 'optionalAccess', _17 => _17.address])===_optionalChain([S, 'access', _18 => _18.inputToken, 'optionalAccess', _19 => _19.address])&&_optionalChain([R, 'access', _20 => _20.inputToken, 'optionalAccess', _21 => _21.chainId])===_optionalChain([S, 'access', _22 => _22.inputToken, 'optionalAccess', _23 => _23.chainId])&&_optionalChain([R, 'access', _24 => _24.outputToken, 'optionalAccess', _25 => _25.address])===_optionalChain([S, 'access', _26 => _26.outputToken, 'optionalAccess', _27 => _27.address])&&_optionalChain([R, 'access', _28 => _28.outputToken, 'optionalAccess', _29 => _29.chainId])===_optionalChain([S, 'access', _30 => _30.outputToken, 'optionalAccess', _31 => _31.chainId])&&R.inputAmount===S.inputAmount&&f.current)return;let N=Date.now();if(N-W.current<100)return;W.current=N;let q=`${Date.now()}-${Math.random().toString(36).slice(2)}`;f.current=q,L(S,q)},[L,M]),F=_react.useCallback.call(void 0, ({amount:S,inputToken:R,outputToken:$,setOutputAmount:N})=>{N(null),P.current&&clearTimeout(P.current),!S||S===0?(y("idle"),M(),d(null),r(null),w(!1),h(!1),i(!1)):(y("typing"),M(),d(null),w(!1),h(!1),i(!1),r(null),P.current=setTimeout(()=>{y("settled"),R&&$&&S>0&&T({inputToken:R,outputToken:$,inputAmount:S.toString(),setOutputAmount:N})},Dr))},[M,T]),B=_react.useCallback.call(void 0, ()=>{let S=x.current;if(!S)return;d(null);let R=`${Date.now()}-${Math.random().toString(36).slice(2)}`;f.current=R,s("refreshing"),typeof S.setOutputAmount=="function"&&S.setOutputAmount(null),L(S,R)},[L]);_react.useEffect.call(void 0, ()=>{E.current=!!p},[p]),_react.useEffect.call(void 0, ()=>()=>I(),[I]);let J=_react.useMemo.call(void 0, ()=>({status:l,inputState:a,rfqQuote:p,error:o,liquidityError:v,routingError:u,sizeCapError:g,ensureForParams:T,stop:M,refresh:B,clear:D,handleInputChange:F}),[l,a,p,o,v,u,g,T,M,B,D,F]);return _jsxruntime.jsx.call(void 0, Wt.Provider,{value:J,children:e})},Qe= exports.e =()=>{let e=_react.useContext.call(void 0, Wt);if(e===void 0)throw new Error("useRfq must be used within an RfqProvider");return e};var qr=_react.createContext.call(void 0, {openConnectModal:()=>{}}),Ts= exports.g =()=>_react.useContext.call(void 0, qr);var zr=20,jr=({side:e,asset:t,otherAsset:n,isPlacingOrder:c,isWrappingPair:l,isUnwrappingPair:s})=>{let{baseAmount:a,quoteAmount:y,setBaseAmount:p,setQuoteAmount:d}=_chunkPSCWQFVYcjs.e.call(void 0, ),{amountInputVariant:o,hideAmountInputSymbol:r,widgetType:v}=_chunkD7GULMHEcjs.b.call(void 0, ),w=v==="compact",[u,h]=e==="base"?[p,d]:[d,p],g=!t||e==="quote"||c,i=w?32:o==="default"?64:32,[f,x]=_react.useState.call(void 0, i),[m,k]=_react.useState.call(void 0, ""),P=_react.useRef.call(void 0, null),C=_react.useRef.call(void 0, null),U=_react.useRef.call(void 0, null),W=_react.useRef.call(void 0, null),E="USD",O=e==="base"?a:y,[I,M]=_react.useState.call(void 0, !1),D=_react.useCallback.call(void 0, ()=>{if(o!=="default"){x(i);return}if(!P.current||!C.current||!U.current)return;let L=P.current.offsetWidth,T=20,F=i;for(;F>20&&(C.current.style.fontSize=`${F}px`,U.current.style.fontSize=`${F}px`,!(C.current.offsetWidth+U.current.offsetWidth+T<=L));)F-=1;x(F)},[o,i]),Y=_react.useCallback.call(void 0, L=>{L.key==="."&&m.includes(".")&&L.preventDefault()},[m]),G=_react.useCallback.call(void 0, L=>{let T=L.target.value;if(T==="."&&(T="0."),!/^\d*\.?\d*$/.test(T)||(T.match(/\./g)||[]).length>1)return;if(T.length>1&&T[0]==="0"&&T[1]!=="."&&(T=T.replace(/^0+/,"")||"0"),_optionalChain([t, 'optionalAccess', _32 => _32.decimals])!==void 0&&T.includes(".")){let[,B]=T.split(".");if(B&&B.length>t.decimals)return}if(T.length>zr)return;k(T);let F=parseFloat(T);T!==m&&(T===""||T==="0."||T.endsWith(".")?(u(null),e==="base"&&h(null)):!Number.isNaN(F)&&F>=0&&u(F),e==="base"&&d(null),(s||l)&&d(F||0))},[m,u,e,d,_optionalChain([t, 'optionalAccess', _33 => _33.decimals]),h,s,l]);return _react.useEffect.call(void 0, ()=>{let L=B=>{if(B===null)return"";let J=_optionalChain([t, 'optionalAccess', _34 => _34.decimals]);if(J===void 0)return"";let S=B.toString();if(/e/i.test(S)&&(S=Number(B).toLocaleString("en-US",{useGrouping:!1,maximumFractionDigits:J})),S.includes(".")){let[R,$]=S.split("."),N=$.slice(0,J);return N?`${R}.${N}`:R}return S};if(O===null){m==="0."||m!==""&&m.endsWith(".")||k("");return}if(!g&&(m.endsWith(".")||m.match(/\.\d*0$/)||m==="0"||m==="0.")&&m!=="")return;let F=parseFloat(m)||0;(m===""||Math.abs(F-O)>1e-10)&&k(L(O))},[O,_optionalChain([t, 'optionalAccess', _35 => _35.decimals]),m,g]),_react.useEffect.call(void 0, ()=>{D()},[m,D]),_react.useEffect.call(void 0, ()=>{M(!0)},[]),_react.useEffect.call(void 0, ()=>{I&&D()},[I,D]),_react.useEffect.call(void 0, ()=>{C.current&&W.current&&(W.current.style.width=`${C.current.offsetWidth}px`)},[m]),_react.useEffect.call(void 0, ()=>{if(!I)return;let L=new ResizeObserver(()=>{I&&D()});return P.current&&L.observe(P.current),()=>L.disconnect()},[I,D]),_jsxruntime.jsx.call(void 0, "div",{ref:P,style:{fontSize:`${f}px`,transition:"font-size 0.05s ease-in-out"},className:`mt-2 box-border font-sans flex ${w?o==="normal"?"h-12 my-1":"h-10 my-0.5":o==="normal"?"h-12 my-1":"h-20 my-1"} w-full flex-row items-center ${g?"cursor-default":"cursor-text"}`,onClick:()=>_optionalChain([W, 'access', _36 => _36.current, 'optionalAccess', _37 => _37.focus, 'call', _38 => _38()]),children:_jsxruntime.jsxs.call(void 0, "div",{className:"relative flex w-full items-center",children:[_jsxruntime.jsx.call(void 0, "label",{htmlFor:`${e}Amount`,className:"sr-only",children:e==="base"?"Input token amount":"Output token amount"}),_jsxruntime.jsx.call(void 0, "input",{ref:W,type:"text",inputMode:"decimal",placeholder:"0",autoComplete:"off",id:`${e}Amount`,value:m,onWheel:L=>L.target.blur(),onKeyDown:Y,onChange:G,style:{transition:"width 0.15s ease-in-out",color:"var(--widget-foreground)",WebkitTextFillColor:"var(--widget-foreground)",opacity:1},className:"flex min-w-[45px] whitespace-nowrap bg-transparent placeholder:opacity-50 font-sans font-thin",disabled:g}),_jsxruntime.jsx.call(void 0, "span",{style:{transition:"width 0.15s ease-in-out"},ref:C,className:"pointer-events-none absolute flex whitespace-nowrap invisible",children:m||0}),!r&&o!=="normal"&&_jsxruntime.jsx.call(void 0, "span",{ref:U,className:"ml-2 font-thin uppercase",style:{color:"var(--widget-foreground)",opacity:.5,fontSize:`${f}px`},children:_optionalChain([t, 'optionalAccess', _39 => _39.symbol])?t.symbol.length>6?`${t.symbol.slice(0,6)}...`:t.symbol:E}),(r||o==="normal")&&_jsxruntime.jsx.call(void 0, "span",{ref:U,className:"hidden"})]})})},Is= exports.h =jr;var Gr=({toggle:e,side:t,asset:n,isPlacingOrder:c,hideDropdown:l})=>{let{baseBalance:s,quoteBalance:a}=_chunkPSCWQFVYcjs.e.call(void 0, ),{tokenDisplay:y,tokenBadgeOrientation:p,widgetType:d}=_chunkD7GULMHEcjs.b.call(void 0, ),o=d==="compact",r=o?"h-10":"h-11",v=o?"h-10 w-10":"h-11 w-11",w=t==="base"?s.formatted?(()=>{let h=parseFloat(s.formatted);return h>=1e8?_chunkK3RTTHBScjs.o.call(void 0, h):h.toFixed(3)})():void 0:a.formatted?(()=>{let h=parseFloat(a.formatted);return h>=1e8?_chunkK3RTTHBScjs.o.call(void 0, h):h.toFixed(3)})():void 0,u={role:"button",tabIndex:c?-1:0,"aria-disabled":c,"aria-label":`Select ${t==="base"?"input":"output"} token${n?`: ${n.symbol}`:""}`,onClick:c?void 0:e,onKeyDown:c?void 0:h=>{(h.key==="Enter"||h.key===" ")&&(h.preventDefault(),e())}};return y==="pill"?_jsxruntime.jsx.call(void 0, "div",{...u,className:`inline-flex items-center gap-1.5 h-7 px-2.5 rounded-full cursor-pointer transition-colors ${p==="right"?"ml-auto":""}`,style:{border:"1px solid var(--widget-border)",backgroundColor:"var(--widget-secondary)",color:"var(--widget-secondary-foreground)"},children:n?_jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment,{children:[_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.N,{chain:n.chainId,size:"xs"}),_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.O,{className:"rounded-full",asset:n,size:"xxs",noChain:!0}),_jsxruntime.jsx.call(void 0, "span",{className:"text-xs font-thin uppercase",children:n.symbol}),!l&&_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.U,{className:"w-1.5 opacity-60",style:{color:"var(--widget-secondary-foreground)"}})]}):_jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment,{children:[_jsxruntime.jsx.call(void 0, "span",{className:"text-xs opacity-70",children:"Select"}),!l&&_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.U,{className:"w-1.5 opacity-60",style:{color:"var(--widget-secondary-foreground)"}})]})}):y==="ghost"?_jsxruntime.jsxs.call(void 0, "div",{...u,className:"inline-flex items-center gap-1.5 cursor-pointer transition-opacity hover:opacity-70 py-1",style:{color:"var(--widget-foreground)"},children:[n?_jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment,{children:[_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.N,{chain:n.chainId,size:"xs"}),_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.O,{className:"rounded-full",asset:n,size:"xxs",noChain:!0}),_jsxruntime.jsx.call(void 0, "span",{className:"text-sm font-thin uppercase",children:n.symbol})]}):_jsxruntime.jsx.call(void 0, "span",{className:"text-sm",style:{color:"var(--widget-muted-foreground)"},children:"Select token"}),!l&&_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.U,{className:"w-1.5 opacity-50"})]}):_jsxruntime.jsx.call(void 0, "div",{...u,className:`relative ${r} w-full cursor-pointer text-xl duration-100 ease-linear`,style:{border:"1px solid var(--widget-border)",backgroundColor:"var(--widget-secondary)",borderTopLeftRadius:"9999px",borderBottomLeftRadius:"9999px",borderTopRightRadius:"var(--widget-radius)",borderBottomRightRadius:"var(--widget-radius)"},children:_jsxruntime.jsx.call(void 0, "div",{className:"relative flex h-full w-full flex-row items-center",children:n?_jsxruntime.jsxs.call(void 0, "div",{className:"relative flex h-full w-full flex-row items-center",children:[_jsxruntime.jsx.call(void 0, "div",{className:`${v} pl-px flex items-center justify-center`,children:_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.O,{className:"rounded-full",asset:n,size:"md"})}),_jsxruntime.jsxs.call(void 0, "div",{className:"flex h-full w-full flex-row items-center justify-between pl-1.5 pr-7",children:[_jsxruntime.jsxs.call(void 0, "div",{className:"flex h-full flex-col justify-center",children:[_jsxruntime.jsx.call(void 0, "p",{className:"text-sm font-thin uppercase",style:{color:"var(--widget-secondary-foreground)"},children:n.symbol}),_jsxruntime.jsxs.call(void 0, "span",{className:"text-2xs font-sans",style:{color:"var(--widget-muted-foreground)"},children:[_optionalChain([n, 'access', _40 => _40.address, 'optionalAccess', _41 => _41.slice, 'call', _42 => _42(0,6)]),"...",_optionalChain([n, 'access', _43 => _43.address, 'optionalAccess', _44 => _44.slice, 'call', _45 => _45(-4)])]})]}),w!==void 0&&_jsxruntime.jsxs.call(void 0, "div",{className:"flex flex-col text-right",children:[_jsxruntime.jsx.call(void 0, "p",{className:"text-2xs",style:{color:"var(--widget-muted-foreground)"},children:"Balance"}),_jsxruntime.jsx.call(void 0, "span",{className:"font-sans text-xs tabular-nums",style:{color:"var(--widget-foreground)",opacity:.5},children:w})]})]}),!l&&_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.U,{className:"absolute right-3 top-1/2 w-1.5 translate-y-[-50%]",style:{color:"var(--widget-secondary-foreground)",opacity:.6}})]}):_jsxruntime.jsx.call(void 0, "div",{className:"flex h-full w-full items-center justify-center",children:_jsxruntime.jsx.call(void 0, "span",{className:"text-sm",style:{color:"var(--widget-secondary-foreground)",opacity:.7},children:"Select token"})})})})},Ls= exports.i =Gr;var Vt=_chunkT3I3AJXVcjs.b.call(void 0, _chunkKH57FLSTcjs.a.call(void 0, ),1);var Kr=()=>{let[e,t]=_react.useState.call(void 0, null),[n,c]=_react.useState.call(void 0, ""),l=_chunkK3RTTHBScjs.x.call(void 0, n,1e3),[s,a]=_react.useState.call(void 0, !1),[y,p]=_react.useState.call(void 0, "");_react.useEffect.call(void 0, ()=>{_chunkD7GULMHEcjs.d.getState().setRecipient(e)},[e]),_react.useEffect.call(void 0, ()=>{c(e||"")},[e]);let d=r=>{let v=r.target.value;s&&(a(!1),p(""),t(null)),c(v),v===""&&t(null)};_react.useEffect.call(void 0, ()=>{l===""||!l?(a(!1),p(""),t(null)):_chunkK3RTTHBScjs.w.call(void 0, l)?(a(!1),p(""),t(l)):(a(!0),p("Invalid wallet address..."),t(null),c(""))},[l]),_react.useEffect.call(void 0, ()=>{if(s){let r=setTimeout(()=>{t(null),c(""),a(!1),p("")},2e3);return()=>clearTimeout(r)}},[s]);let o=()=>{t(null),c(""),a(!1),p("")};return _jsxruntime.jsx.call(void 0, "div",{className:"w-full",children:_jsxruntime.jsxs.call(void 0, "div",{className:"relative flex flex-row items-center",children:[_jsxruntime.jsx.call(void 0, "input",{type:"password",style:{display:"none"},"aria-hidden":"true",tabIndex:-1}),_jsxruntime.jsx.call(void 0, "label",{htmlFor:"recipient-address",className:"sr-only",children:"Recipient wallet address"}),_jsxruntime.jsx.call(void 0, "div",{className:"absolute left-3 flex h-6 w-6 items-end justify-center overflow-hidden rounded-full",style:{backgroundColor:"var(--widget-secondary)"},children:e&&!s?_jsxruntime.jsx.call(void 0, "img",{className:"h-full w-full rounded-full object-cover",src:(0,Vt.makeGradient)(e),alt:"Recipient avatar"}):_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.T,{className:"h-5 w-5",style:{color:s?"var(--widget-destructive)":"var(--widget-muted-foreground)"}})}),_jsxruntime.jsx.call(void 0, "div",{className:"absolute left-12 top-1.5 -translate-y-1 text-xs font-medium opacity-60",style:{color:s?"var(--widget-destructive)":"var(--widget-muted-foreground)"},"aria-hidden":"true",children:"To:"}),_jsxruntime.jsx.call(void 0, "input",{id:"recipient-address",className:"font-sans block h-10 w-full items-center pl-12 pt-4 pr-8 text-xs",style:{backgroundColor:s?"color-mix(in srgb, var(--widget-destructive) 10%, transparent)":"transparent",color:s?"var(--widget-destructive)":"var(--widget-foreground)",outline:"none",opacity:s?.9:1},placeholder:s?y:"Enter recipient address...",value:n,onChange:d,spellCheck:!1,"aria-invalid":s,"aria-describedby":s?"recipient-error":void 0}),s&&_jsxruntime.jsx.call(void 0, "span",{id:"recipient-error",className:"sr-only",children:y}),e&&!s&&_jsxruntime.jsxs.call(void 0, "button",{type:"button",className:"absolute right-2 top-1/2 -translate-y-1/2 cursor-pointer flex items-center justify-center h-4 w-4 rounded-full transition-colors hover:[color:var(--widget-destructive)]",style:{color:"var(--widget-muted-foreground)"},onClick:o,"aria-label":"Clear recipient",children:[_jsxruntime.jsx.call(void 0, "svg",{className:"h-2.5 w-2.5",viewBox:"0 -0.5 21 21",fill:"none",children:_jsxruntime.jsx.call(void 0, "g",{fill:"currentColor",fillRule:"evenodd",children:_jsxruntime.jsx.call(void 0, "polygon",{points:"375.0183 90 384 98.554 382.48065 100 373.5 91.446 364.5183 100 363 98.554 371.98065 90 363 81.446 364.5183 80 373.5 88.554 382.48065 80 384 81.446",transform:"translate(-363 -80)"})})}),_jsxruntime.jsx.call(void 0, "span",{className:"sr-only",children:"Clear recipient"})]})]})})},Qs= exports.j =Kr;function js(e){return _jsxruntime.jsxs.call(void 0, "svg",{width:"485",height:"484",viewBox:"0 0 485 484",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e,children:[_jsxruntime.jsx.call(void 0, "path",{d:"M265.974 52.8127C270.567 50.9299 273.227 53.6338 275.917 56.1595C301.879 80.5364 327.828 104.927 353.786 129.308C380.101 154.024 406.44 178.715 432.721 203.467C436.002 206.557 440.744 209.272 438.226 215.021C435.865 220.415 430.758 219.123 426.424 219.124C305.965 219.169 185.506 219.163 65.0464 219.166C53.0995 219.166 49.0676 215.225 49.0125 203.316C48.9563 191.154 48.9813 178.991 48.9973 166.829C49.0119 155.717 53.3581 151.358 64.4131 151.358C127.892 151.357 191.37 151.364 254.849 151.368C262.591 151.368 262.645 151.344 262.588 143.559C262.388 116.237 262.191 88.914 261.918 61.5922C261.883 58.0834 262.161 54.9042 265.974 52.8127Z",fill:"currentColor"}),_jsxruntime.jsx.call(void 0, "path",{d:"M80.5649 300.432C71.3447 291.747 62.4175 283.264 53.4064 274.87C50.4552 272.122 47.8959 269.327 49.7894 264.946C51.6154 260.72 55.4624 260.923 59.1682 260.923C164.476 260.927 269.785 260.932 375.093 260.935C391.422 260.935 407.752 260.9 424.081 260.933C434.679 260.955 438.994 265.286 439.015 275.854C439.04 288.517 439.048 301.181 439.013 313.845C438.985 324.225 434.466 328.73 424.01 328.732C360.359 328.741 296.707 328.729 233.056 328.714C225.392 328.713 225.368 328.686 225.426 336.583C225.628 363.741 225.815 390.9 226.101 418.057C226.142 421.935 225.905 425.512 221.852 427.329C217.686 429.197 214.934 426.578 212.212 424.02C172.068 386.302 131.922 348.587 91.7738 310.874C88.1374 307.459 84.4753 304.07 80.5649 300.432Z",fill:"currentColor"})]})}var Yr=["SUCCEEDED","FAILED","COMPLETED","CANCELLED"];async function Ft(e,t,n={}){let{onStatusChange:c,onComplete:l,onError:s,interval:a=4e3,timeout:y=3e5,txHash:p,signal:d}=n,o=null,r=Date.now(),v=0,w=8,u=null,h=p?`?txHash=${p}`:"";return new Promise((g,i)=>{let f=async()=>{try{if(_optionalChain([d, 'optionalAccess', _46 => _46.aborted])){u&&clearTimeout(u),i(new DOMException("Polling aborted","AbortError"));return}if(Date.now()-r>y){u&&clearTimeout(u);let P=new Error("Order status polling timed out");_optionalChain([s, 'optionalCall', _47 => _47(P)]),i(P);return}let x=await fetch(`${t}/status/${e}${h}`,{headers:_chunkK3RTTHBScjs.m.call(void 0, ),signal:d});if(x.status===404){u=setTimeout(f,a);return}if(!x.ok)throw new Error(`Failed to fetch order status: ${await x.text()}`);let m=await x.json();if(!m||typeof m!="object"||!m.status)throw new Error(`Invalid status response format: ${JSON.stringify(m)}`);v=0;let k=m.status.toUpperCase();if(k!==o&&(o=k,_optionalChain([c, 'optionalCall', _48 => _48(m)])),Yr.includes(k)){u&&clearTimeout(u),_optionalChain([l, 'optionalCall', _49 => _49(m)]),g(m);return}u=setTimeout(f,a)}catch(x){if(x instanceof Error&&x.name==="AbortError"){u&&clearTimeout(u),i(x);return}if(++v>=w){u&&clearTimeout(u);let m=x instanceof Error?x:new Error(String(x));_optionalChain([s, 'optionalCall', _50 => _50(m)]),i(m);return}u=setTimeout(f,a)}};f()})}function Bt(e){let t=e.toUpperCase();return t==="SUCCEEDED"||t==="COMPLETED"?"completed":t==="FAILED"?"failed":t==="CANCELLED"?"cancelled":t==="PROCESSING"?"received":"pending"}var Qt=e=>{let t=_react.useRef.call(void 0, new Map),n=_react.useRef.call(void 0, new Map),c=_react.useRef.call(void 0, new Map),l=_react.useRef.call(void 0, 0),s=_react.useCallback.call(void 0, ()=>++l.current,[]),{address:a}=_chunk34N36GUDcjs.a.call(void 0, ),y=Pe(),p=_react.useCallback.call(void 0, (r,v)=>{if(t.current.get(r))return;v&&n.current.set(r,v),t.current.set(r,!0);let w=l.current,u=new AbortController;c.current.set(r,u);let h=_optionalChain([v, 'optionalAccess', _51 => _51.baseToken, 'optionalAccess', _52 => _52.chainId])===1;Ft(r,_chunkK3RTTHBScjs.k.call(void 0, ),{interval:h?1e3:500,timeout:3e5,signal:u.signal,onStatusChange:g=>{if(!_optionalChain([g, 'optionalAccess', _53 => _53.status]))return;let i=Bt(g.status);if(_optionalChain([e, 'optionalCall', _54 => _54(r,i,g.explorerUrl)]),i==="completed"&&a){let f=n.current.get(r);if(f&&(f.baseToken||f.quoteToken)){let x=[];f.baseToken&&x.push({asset:f.baseToken,userAddress:a}),f.quoteToken&&x.push({asset:f.quoteToken,userAddress:a}),y({type:"swap",tokens:x})}}["completed","failed","cancelled"].includes(i)&&(t.current.delete(r),n.current.delete(r)),w!==l.current&&(t.current.delete(r),n.current.delete(r))},onComplete:g=>{_optionalChain([g, 'optionalAccess', _55 => _55.status])&&_optionalChain([e, 'optionalCall', _56 => _56(r,Bt(g.status),g.explorerUrl)]),t.current.delete(r),n.current.delete(r)},onError:()=>{t.current.delete(r),n.current.delete(r)}}).catch(g=>{g instanceof Error&&g.name==="AbortError"||(t.current.delete(r),n.current.delete(r),c.current.delete(r))})},[a,y,e]),d=_react.useCallback.call(void 0, r=>{let v=c.current.get(r);v&&(v.abort(),c.current.delete(r)),s(),t.current.delete(r),n.current.delete(r)},[s]),o=_react.useCallback.call(void 0, ()=>{for(let r of c.current.values())r.abort();c.current.clear(),s(),t.current.clear(),n.current.clear()},[s]);return _react.useEffect.call(void 0, ()=>()=>o(),[o]),{startPolling:p,stopPolling:d,stopAllPolling:o,isPolling:r=>t.current.has(r)}};var tn=_react.createContext.call(void 0, {registerTransaction:()=>{},enabled:!1}),qt= exports.n =()=>_react.useContext.call(void 0, tn);var _actions = require('viem/actions');function jt(e){return e instanceof Error?e.name==="UserRejectedRequestError"||e.message.includes("User rejected")||e.message.includes("rejected")||e.message.includes("denied")||e.message.includes("cancelled")||e.message.includes("canceled"):!1}async function zt(e){if(_optionalChain([e, 'access', _57 => _57.chain, 'optionalAccess', _58 => _58.id]))return e.chain.id;let t=_optionalChain([e, 'access', _59 => _59.getChainId, 'optionalCall', _60 => _60()]);return t!=null?await t:null}var nn=async(e,t)=>{try{if(await zt(e)===t)return!0;if(e.request)await e.request({method:"wallet_switchEthereumChain",params:[{chainId:`0x${t.toString(16)}`}]});else if(e.switchChain)await e.switchChain({id:t});else if(e.send)await e.send("wallet_switchEthereumChain",[{chainId:`0x${t.toString(16)}`}]);else throw new Error("Wallet doesn't support chain switching");return await zt(e)===t}catch(n){throw jt(n)?new Error("User rejected the chain switch request"):new Error(`Please switch your wallet to the required network (Chain ID: ${t})`)}},Ht= exports.p =async e=>{let{quote:t,signatureStep:n,userAddress:c,walletClient:l}=e;if(!l)throw new Error("Wallet client not available");if(n.type!=="SIGNATURE"||!_optionalChain([n, 'access', _61 => _61.signature, 'optionalAccess', _62 => _62.typedData]))throw new Error("Invalid signature step");try{let s=n.signature.typedData,a={...s.message};for(let o of["inputAmount","outputAmount","startTime","endTime"])a[o]!=null&&(a[o]=BigInt(a[o]));let y=s.domain;if(y.chainId!=null){let o=Number(y.chainId);await nn(l,o)}let p=await _actions.signTypedData.call(void 0, l,{account:c,domain:y,types:s.types,primaryType:s.primaryType,message:a}),d=await fetch(`${_chunkK3RTTHBScjs.k.call(void 0, )}/submit-signature`,{method:"POST",headers:_chunkK3RTTHBScjs.m.call(void 0, ),body:JSON.stringify({quoteId:t.id,signatures:[p]})});if(!d.ok){let o=await d.json().catch(()=>({}));throw new Error(_optionalChain([o, 'optionalAccess', _63 => _63.message])||`Submit failed: ${d.status}`)}return{quoteId:t.id,signature:p}}catch(s){throw jt(s)?new Error("User rejected the signing request"):s instanceof Error&&s.message.includes("chain")?new Error("Chain switching failed. Please manually switch to the correct network."):s}};var Gt="vt_submitted_quotes";var dt=()=>{try{let e=localStorage.getItem(Gt);return e?JSON.parse(e):[]}catch (e3){return[]}},Kt=e=>{try{localStorage.setItem(Gt,JSON.stringify(e))}catch (e4){}},sn= exports.q =e=>{let t=Date.now(),n=typeof e=="string"?new Date(e).getTime():e>9999999999?e:e*1e3;return t<n+3e4},on=e=>dt().some(t=>t.quoteId===e),Xt= exports.r =(e,t)=>on(e)?{canSubmit:!1,reason:"Order already submitted"}:sn(t)?{canSubmit:!0}:{canSubmit:!1,reason:"Quote has expired"},Yt= exports.s =(e,t)=>{let n=typeof t=="string"?new Date(t).getTime():t,c=dt();c.push({quoteId:e,submittedAt:Date.now(),createdAt:n}),Kt(c)},Jt= exports.t =()=>{let e=dt(),t=Date.now(),n=300*1e3,c=e.filter(l=>t-l.submittedAt<n);c.length!==e.length&&Kt(c)};var _core = require('@wagmi/core');var _abis = require('abitype/abis');var _wagmi = require('wagmi');function Zt(){let e=_wagmi.useConfig.call(void 0, );return _reactquery.useMutation.call(void 0, {mutationFn:async({chainId:t,accountAddress:n,amountRaw:c,writeContractAsync:l})=>{let s=_chunkK3RTTHBScjs.c.call(void 0, t);if(!s)throw new Error(`No wrapping contract for chain ${t}`);let a=s.wrappedAsset.address,y=await l({abi:_abis.wethAbi,functionName:"withdraw",address:a,account:n,args:[c],chainId:t});if((await _core.waitForTransactionReceipt.call(void 0, e,{hash:y,chainId:t,confirmations:1,pollingInterval:4e3})).status!=="success")throw new Error("Unwrap transaction did not get successful receipt");return{success:!0,hash:y}}})}function er(){let e=_wagmi.useConfig.call(void 0, );return _reactquery.useMutation.call(void 0, {mutationFn:async({chainId:t,accountAddress:n,amountRaw:c,writeContractAsync:l})=>{let s=_chunkK3RTTHBScjs.c.call(void 0, t);if(!s)throw new Error(`No wrapping contract for chain ${t}`);let a=s.wrappedAsset.address,y=await l({abi:_abis.wethAbi,functionName:"deposit",address:a,account:n,value:c,chainId:t});if((await _core.waitForTransactionReceipt.call(void 0, e,{hash:y,chainId:t,confirmations:1,pollingInterval:4e3})).status!=="success")throw new Error("Wrap transaction did not get successful receipt");return{success:!0,hash:y}}})}function rr(){let{registerTransaction:e,enabled:t}=qt(),n=_react.useRef.call(void 0, new Set),c=_react.useCallback.call(void 0, (s,a)=>{!t||n.current.has(s)||(n.current.add(s),e(s,a))},[t,e]),l=_react.useCallback.call(void 0, (s,a)=>{!t||n.current.has(s)||(n.current.add(s),e(s,a))},[t,e]);return{trackOrderTransaction:c,trackNativeTransaction:l,txTrackingEnabled:t}}var bn=15e3,Ke="chain",xn=({needsChainSwitch:e,requiredChain:t,reviewState:n,goToNextStep:c,cancel:l})=>{let s=_chunkK3RTTHBScjs.r.call(void 0, Ke,n),[a,y]=_react.useState.call(void 0, "pending"),p=_react.useRef.call(void 0, !1),d=_react.useRef.call(void 0, !1),o=_react.useRef.call(void 0, null),r=_wagmi.useChainId.call(void 0, ),{switchChainAsync:v}=_wagmi.useSwitchChain.call(void 0, ),{status:w,isReconnecting:u}=_wagmi.useAccount.call(void 0, ),h=_react.useCallback.call(void 0, ()=>{o.current&&(clearTimeout(o.current),o.current=null)},[]),g=_react.useCallback.call(void 0, async()=>{if(!(p.current||d.current||w!=="connected"||u)){p.current=!0,d.current=!0,y("pending"),o.current=setTimeout(()=>{p.current&&(y("error"),p.current=!1)},bn);try{await v({chainId:t.chainId}),h(),y("success"),c(Ke,n)}catch (e5){h(),y("error")}finally{p.current=!1}}},[v,w,u,t.chainId,c,n,h]);_react.useEffect.call(void 0, ()=>{p.current||d.current||n===Ke&&a==="pending"&&w==="connected"&&!u&&(e&&r!==t.chainId?g():(y("success"),c(Ke,n)))},[n,a,e,r,t.chainId,w,u,g,c]),_react.useEffect.call(void 0, ()=>()=>h(),[h]);let i=()=>{a==="error"&&(d.current=!1,y("pending"))},f=!s&&a==="error",x=!s&&(a==="pending"||a==="error"),m=f?"var(--widget-status-failed)":"var(--widget-primary)";return _jsxruntime.jsxs.call(void 0, "div",{className:"flex w-full flex-row justify-between space-x-3",children:[_jsxruntime.jsx.call(void 0, "button",{type:"button",className:`inline-flex h-12 w-full items-center justify-center text-sm font-sans font-medium transition duration-150 ${f?"cursor-pointer":"cursor-not-allowed"}`,style:{backgroundColor:`color-mix(in srgb, ${m} 12%, transparent)`,border:`1px solid color-mix(in srgb, ${m} 20%, transparent)`,color:m,borderRadius:"var(--widget-radius)"},onClick:f?i:void 0,children:_jsxruntime.jsxs.call(void 0, "div",{className:"flex h-10 w-full flex-row items-center space-x-3 px-4",children:[_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.N,{chain:t.chainId,size:"xs"}),_jsxruntime.jsx.call(void 0, "p",{className:"whitespace-nowrap",children:f?"Retry Switch":`Switch to ${t.name}`}),_jsxruntime.jsx.call(void 0, "div",{className:"flex flex-1 border-t",style:{borderColor:"var(--widget-border)"}}),_jsxruntime.jsxs.call(void 0, "div",{className:"flex h-6 w-3 items-center justify-center rounded-full",children:[!s&&a==="pending"&&_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.V,{size:"5"}),(s||a==="success")&&_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.P,{className:"h-8 w-8"}),f&&_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.S,{className:"h-[12px] w-[12px]"})]})]})}),x&&_jsxruntime.jsx.call(void 0, "button",{type:"button",className:"inline-flex h-12 items-center justify-center px-8 text-sm font-sans font-medium transition duration-150 cursor-pointer",style:{backgroundColor:"color-mix(in srgb, var(--widget-status-failed) 12%, transparent)",border:"1px solid color-mix(in srgb, var(--widget-status-failed) 20%, transparent)",color:"var(--widget-status-failed)",borderRadius:"var(--widget-radius)"},onClick:l,children:"Cancel"})]})},or=xn;var Cn=({startTime:e,onExpired:t})=>{let[n,c]=_react.useState.call(void 0, 30),[l,s]=_react.useState.call(void 0, !1),a=_react.useRef.call(void 0, !1),y=_react.useRef.call(void 0, t);y.current=t,_react.useEffect.call(void 0, ()=>{a.current=!1},[e]),_react.useEffect.call(void 0, ()=>{let d=()=>{let r=Date.now(),w=(e>9999999999?e:e*1e3)+30*1e3,u=Math.max(0,w-r),h=Math.floor(u/1e3);if(h<=0){c(0),a.current||(a.current=!0,s(!0),y.current());return}c(h),s(!1)};if(l)return;d();let o=setInterval(d,1e3);return()=>clearInterval(o)},[e,l]);let p=d=>{let o=Math.floor(d/60),r=d%60;return`${o.toString().padStart(2,"0")}:${r.toString().padStart(2,"0")}`};return l?null:_jsxruntime.jsx.call(void 0, "span",{className:"text-xs font-sans",children:p(n)})},lr=Cn;function Pn(e){return e.name==="UserRejectedRequestError"||e.message.includes("User rejected")||e.message.includes("rejected")||e.message.includes("denied")||e.message.includes("cancelled")||e.message.includes("canceled")}var ve="signingOrder";async function $n(e,t,n,c,l){let s=_optionalChain([e, 'access', _64 => _64.transaction, 'optionalAccess', _65 => _65.encoded]),a=_nullishCoalesce(_optionalChain([s, 'optionalAccess', _66 => _66.to]), () => (e.to)),y=_nullishCoalesce(_optionalChain([s, 'optionalAccess', _67 => _67.data]), () => (e.data)),p=_nullishCoalesce(_optionalChain([s, 'optionalAccess', _68 => _68.value]), () => (e.value));if(!a)throw new Error('Transaction step missing "to" address');let d=_optionalChain([s, 'optionalAccess', _69 => _69.chainId]),o=e.chainKey||l,r=d||(o?_chunkK3RTTHBScjs.E.call(void 0, o):void 0);if(!r)throw new Error(`Unknown chain: ${o}`);let v=_chunkK3RTTHBScjs.h.call(void 0, )[r],w=await n({account:t,chain:v,to:a,data:y||"0x",value:BigInt(p||"0")});return await _core.waitForTransactionReceipt.call(void 0, c,{hash:w,chainId:r}),w}async function Un(e,t,n,c,l){let s=_optionalChain([e, 'access', _70 => _70.transaction, 'optionalAccess', _71 => _71.encoded]),a=_nullishCoalesce(_optionalChain([s, 'optionalAccess', _72 => _72.to]), () => (e.to)),y=_nullishCoalesce(_optionalChain([s, 'optionalAccess', _73 => _73.data]), () => (e.data));if(!(!a||!y))try{let{args:p}=_viem.decodeFunctionData.call(void 0, {abi:_viem.erc20Abi,data:y});if(!p||p.length<2)return;let d=p[0],o=e.chainKey||l.srcChainKey,r=_optionalChain([s, 'optionalAccess', _74 => _74.chainId])||(o?_chunkK3RTTHBScjs.E.call(void 0, o):void 0);if(!r)return;if(await _chunkK3RTTHBScjs.H.call(void 0, r).readContract({address:a,abi:_viem.erc20Abi,functionName:"allowance",args:[t,d]})>0n){let u=_viem.encodeFunctionData.call(void 0, {abi:_viem.erc20Abi,functionName:"approve",args:[d,0n]}),h=_chunkK3RTTHBScjs.h.call(void 0, )[r],g=await n({account:t,chain:h,to:a,data:u,value:0n});await _core.waitForTransactionReceipt.call(void 0, c,{hash:g,chainId:r})}}catch (e6){}}var Mn=({base:e,baseAmount:t,quote:n,quoteAmount:c,userAddress:l,reviewState:s,goToNextStep:a,cancel:y,isWrappingPair:p,isUnwrappingPair:d,restartSigningFlow:o,onSwapInitiated:r,onOrderSubmitted:v,onSwapComplete:w,startPolling:u,trackNativeTransaction:h})=>{let g=_chunkK3RTTHBScjs.r.call(void 0, ve,s),[i,f]=_react.useState.call(void 0, "idle"),x=_react.useRef.call(void 0, !1),m=_react.useRef.call(void 0, null),k=_wagmi.useConfig.call(void 0, ),{isReconnecting:P}=_wagmi.useAccount.call(void 0, ),{rfqQuote:C,stop:U,refresh:W}=Qe(),{data:E}=_wagmi.useWalletClient.call(void 0, {chainId:e.chainId}),{switchChain:O}=_wagmi.useSwitchChain.call(void 0, ),{sendTransactionAsync:I}=_wagmi.useSendTransaction.call(void 0, ),M=_nullishCoalesce(_optionalChain([C, 'optionalAccess', _75 => _75._receivedAt]), () => (0)),D=_react.useCallback.call(void 0, ()=>M?Date.now()>=M+30*1e3:!1,[M]),Y=_react.useCallback.call(void 0, async()=>{if(x.current||i!=="idle")return;if(!_optionalChain([C, 'optionalAccess', _76 => _76.id])||!_optionalChain([C, 'optionalAccess', _77 => _77._receivedAt])){f("error");return}if(!Xt(C.id,C._receivedAt).canSubmit){f("stale");return}x.current=!0;try{if(!E)throw new Error("Wallet client not available");Jt();let R=_nullishCoalesce(C.userSteps, () => ([])),$;for(let N of R)if(N.type==="TRANSACTION"){f("submitting");let q=N.chainKey||C.srcChainKey,te=q?_chunkK3RTTHBScjs.E.call(void 0, q):void 0;te&&_optionalChain([E, 'access', _78 => _78.chain, 'optionalAccess', _79 => _79.id])!==te&&(await O({chainId:te}),await new Promise(z=>setTimeout(z,800)));let Me=_optionalChain([(_nullishCoalesce(_optionalChain([N, 'access', _80 => _80.transaction, 'optionalAccess', _81 => _81.encoded, 'optionalAccess', _82 => _82.to]), () => (N.to))), 'optionalAccess', _83 => _83.toLowerCase, 'call', _84 => _84()]),be=_optionalChain([C, 'access', _85 => _85.srcToken, 'optionalAccess', _86 => _86.address, 'optionalAccess', _87 => _87.toLowerCase, 'call', _88 => _88()]);Me&&be&&Me===be&&await Un(N,l,I,k,C),$=await $n(N,l,I,k,C.srcChainKey),h($,N.description||`Tx on ${q}`)}else N.type==="SIGNATURE"&&(f("signing"),await Ht({quote:C,signatureStep:N,userAddress:l,walletClient:E}));Yt(C.id,C._receivedAt),_optionalChain([v, 'optionalCall', _89 => _89(C.id)]),u(C.id,{baseToken:e,quoteToken:n}),_optionalChain([r, 'optionalCall', _90 => _90()]),U(),f("success"),a(ve,s),_optionalChain([w, 'optionalCall', _91 => _91(C.id)])}catch(R){R instanceof Error&&Pn(R),f("error")}finally{x.current=!1}},[i,C,E,e,n,l,U,u,a,s,w,O,I,r,v,h,k]);_react.useEffect.call(void 0, ()=>{if(s===ve&&U(),g&&i!=="success"){f("success"),a(ve,s);return}if(i==="success"){a(ve,s);return}if(s===ve&&i==="idle"&&!_optionalChain([C, 'optionalAccess', _92 => _92.id])){f("refreshingQuote"),W();return}if(s===ve&&i==="idle"&&E&&!x.current&&!P){let S=_optionalChain([C, 'optionalAccess', _93 => _93.id])||null;S&&m.current!==S&&(m.current=S,Y())}},[g,s,i,E,P,Y,a,_optionalChain([C, 'optionalAccess', _94 => _94.id]),W,U]),_react.useEffect.call(void 0, ()=>{i==="refreshingQuote"&&_optionalChain([C, 'optionalAccess', _95 => _95.id])&&f("idle")},[i,_optionalChain([C, 'optionalAccess', _96 => _96.id])]),_react.useEffect.call(void 0, ()=>{s!==ve&&(m.current=null)},[s]),_react.useEffect.call(void 0, ()=>{let S=setInterval(()=>{D()&&!x.current&&i!=="submitting"&&i!=="success"&&f("stale")},1e3);return()=>clearInterval(S)},[D,i]);let G=()=>{i==="error"&&!x.current&&(m.current=null,f("idle"))},L=_react.useCallback.call(void 0, ()=>{m.current=null,f("refreshingQuote"),W()},[W]),T=_react.useCallback.call(void 0, ()=>{o?o(!0):y()},[o,y]),F=()=>i==="error"?"Retry swap":i==="signing"?"Sign Swap Order":i==="submitting"?"Submitting...":i==="refreshingQuote"?"Refreshing Quote...":i==="stale"?"Quote Stale":"Sign & Submit",B=!g&&(i==="error"||i==="stale"),J=B?"var(--widget-status-failed)":"var(--widget-primary)";return _jsxruntime.jsxs.call(void 0, "div",{className:"flex w-full flex-row justify-between space-x-3",children:[_jsxruntime.jsx.call(void 0, "button",{type:"button",className:`inline-flex h-12 w-full items-center justify-center text-sm font-sans font-medium transition duration-150 ${B?"cursor-pointer":"cursor-not-allowed"}`,style:{backgroundColor:`color-mix(in srgb, ${J} 12%, transparent)`,border:`1px solid color-mix(in srgb, ${J} 20%, transparent)`,color:J,borderRadius:"var(--widget-radius)"},onClick:!g&&i==="error"?G:i==="stale"?T:void 0,children:_jsxruntime.jsxs.call(void 0, "div",{className:"flex h-10 w-full flex-row items-center space-x-3 px-4",children:[_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.O,{asset:e,size:"xs",noChain:!0}),_jsxruntime.jsx.call(void 0, "p",{className:"whitespace-nowrap",children:F()}),_jsxruntime.jsx.call(void 0, "div",{className:"flex flex-1 border-t",style:{borderColor:"var(--widget-border)"}}),M>0&&i!=="success"&&i!=="error"&&i!=="stale"&&_jsxruntime.jsx.call(void 0, lr,{startTime:M,onExpired:()=>f("stale")}),_jsxruntime.jsxs.call(void 0, "div",{className:"flex h-6 w-3 items-center justify-center rounded-full",children:[!g&&(i==="idle"||i==="signing"||i==="submitting"||i==="refreshingQuote")&&_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.V,{size:"5"}),(g||i==="success")&&_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.P,{className:"h-8 w-8"}),!g&&(i==="error"||i==="stale")&&_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.S,{className:"h-[12px] w-[12px]"})]})]})}),!g&&(i==="error"||i==="stale")&&_jsxruntime.jsx.call(void 0, "button",{type:"button",className:"inline-flex h-12 items-center justify-center px-8 text-sm font-sans font-medium transition duration-150 cursor-pointer",style:{backgroundColor:"color-mix(in srgb, var(--widget-status-failed) 12%, transparent)",border:"1px solid color-mix(in srgb, var(--widget-status-failed) 20%, transparent)",color:"var(--widget-status-failed)",borderRadius:"var(--widget-radius)"},onClick:y,children:"Cancel"})]})},pr=Mn;var Wn=()=>_jsxruntime.jsxs.call(void 0, "svg",{className:"w-3 h-3 shrink-0",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[_jsxruntime.jsx.call(void 0, "path",{d:"M18 13V19C18 20.1046 17.1046 21 16 21H5C3.89543 21 3 20.1046 3 19V8C3 6.89543 3.89543 6 5 6H11",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}),_jsxruntime.jsx.call(void 0, "path",{d:"M15 3H21V9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}),_jsxruntime.jsx.call(void 0, "path",{d:"M10 14L21 3",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]}),Dn="trackingTx",fr={pending:{icon:_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.V,{size:"5"}),buttonText:"Trade Pending",showNewSwap:!1,statusVar:"var(--widget-primary)",clickable:!1},received:{icon:_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.V,{size:"5"}),buttonText:"Trade Received",showNewSwap:!1,statusVar:"var(--widget-primary)",clickable:!1},completed:{icon:_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.P,{className:"h-5 w-5"}),buttonText:"View Transaction",showNewSwap:!1,statusVar:"var(--widget-status-completed)",clickable:!0},failed:{icon:_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.Y,{}),buttonText:"Retry Swap",showNewSwap:!0,statusVar:"var(--widget-status-failed)",clickable:!0},cancelled:{icon:_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.Y,{}),buttonText:"View Transaction",showNewSwap:!1,statusVar:"var(--widget-status-failed)",clickable:!0}},Vn=({orderHash:e,base:t,quote:n,baseAmount:c,quoteAmount:l,reviewState:s,onNewSwap:a,onRetry:y,status:p})=>{let d=_chunkK3RTTHBScjs.r.call(void 0, Dn,s),o=fr[p]||fr.pending,r=_chunkD7GULMHEcjs.d.call(void 0, u=>u.explorerUrl);_react.useEffect.call(void 0, ()=>{if(p==="completed"){let u=setTimeout(a,15e3);return()=>clearTimeout(u)}},[p,a]);let v=()=>{p==="failed"?y():(p==="completed"||p==="cancelled")&&r&&window.open(r,"_blank","noopener,noreferrer")},w=o.statusVar;return _jsxruntime.jsx.call(void 0, "div",{className:"flex flex-row justify-between space-x-3 w-full px-4",children:_jsxruntime.jsx.call(void 0, "button",{type:"button",className:`inline-flex h-12 w-full items-center justify-center text-sm font-sans font-medium transition duration-150 ${o.clickable?"cursor-pointer":"cursor-not-allowed"}`,style:{backgroundColor:`color-mix(in srgb, ${w} 12%, transparent)`,border:`1px solid color-mix(in srgb, ${w} 20%, transparent)`,color:w,borderRadius:"var(--widget-radius)"},onClick:o.clickable?v:void 0,children:_jsxruntime.jsxs.call(void 0, "div",{className:"flex h-10 w-full flex-row items-center space-x-3 px-4",children:[_jsxruntime.jsx.call(void 0, "div",{className:"flex h-6 w-6 items-center justify-center rounded-full overflow-hidden shrink-0",children:o.icon}),_jsxruntime.jsx.call(void 0, "p",{className:"whitespace-nowrap",children:o.buttonText}),_jsxruntime.jsx.call(void 0, "div",{className:"flex flex-1 border-t",style:{borderColor:"var(--widget-border)"}}),o.clickable&&_jsxruntime.jsx.call(void 0, "div",{className:"flex h-6 w-6 items-center justify-center",children:p==="failed"?_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.X,{}):_jsxruntime.jsx.call(void 0, Wn,{})})]})})})},mr=Vn;var qn=15e3,Je="unwrapping",zn=({needsToUnwrap:e,amount:t,chainId:n,token:c,reviewState:l,setReviewState:s,goToNextStep:a,cancel:y,delayedClose:p})=>{let d=_chunkK3RTTHBScjs.r.call(void 0, Je,l),[o,r]=_react.useState.call(void 0, "idle"),v=Zt(),{writeContractAsync:w}=_wagmi.useWriteContract.call(void 0, ),{address:u}=_chunk34N36GUDcjs.a.call(void 0, ),h=Pe(),g=_react.useRef.call(void 0, !1),i=_react.useRef.call(void 0, !1),f=_react.useRef.call(void 0, null),{status:x}=_wagmi.useAccount.call(void 0, ),m=_react.useCallback.call(void 0, ()=>{f.current&&(clearTimeout(f.current),f.current=null)},[]),k=_react.useCallback.call(void 0, async()=>{if(!(g.current||i.current||!u||x!=="connected")){g.current=!0,i.current=!0,r("pending"),f.current=setTimeout(()=>{g.current&&(r("error"),g.current=!1)},qn);try{let E=_chunkK3RTTHBScjs.c.call(void 0, n);if(!E)throw new Error(`No config for chain ${n}`);let O=_nullishCoalesce(E.wrappedAsset.decimals, () => (E.nativeAsset.decimals)),I=_viem.parseUnits.call(void 0, t.toString(),O);await v.mutateAsync({chainId:n,accountAddress:u,amountRaw:I,writeContractAsync:w});let M={symbol:E.nativeAsset.symbol,name:E.nativeAsset.name,address:_chunkK3RTTHBScjs.a,decimals:E.nativeAsset.decimals,chainId:n},D={symbol:E.wrappedAsset.symbol,name:E.wrappedAsset.name,address:E.wrappedAsset.address,decimals:E.wrappedAsset.decimals,chainId:n};h({type:"unwrap",tokens:[{asset:M,userAddress:u},{asset:D,userAddress:u}]}),m(),r("success"),a(Je,l),await p()}catch (e7){m(),r("error")}finally{g.current=!1}}},[u,x,n,t,v,w,h,a,l,p,m]);_react.useEffect.call(void 0, ()=>{g.current||i.current||l===Je&&o==="idle"&&x==="connected"&&(e?k():(r("success"),a(Je,l)))},[l,o,e,x,k,a]),_react.useEffect.call(void 0, ()=>()=>m(),[m]);let P=()=>{o==="error"&&(i.current=!1,r("idle"))},C=!d&&o==="error",U=!d&&(o==="pending"||o==="idle"||o==="error"),W=C?"var(--widget-status-failed)":"var(--widget-primary)";return _jsxruntime.jsxs.call(void 0, "div",{className:"flex w-full flex-row justify-between space-x-3",children:[_jsxruntime.jsx.call(void 0, "button",{type:"button",className:`inline-flex h-12 w-full items-center justify-center text-sm font-sans font-medium transition duration-150 ${C?"cursor-pointer":"cursor-not-allowed"}`,style:{backgroundColor:`color-mix(in srgb, ${W} 12%, transparent)`,border:`1px solid color-mix(in srgb, ${W} 20%, transparent)`,color:W,borderRadius:"var(--widget-radius)"},onClick:C?P:void 0,children:_jsxruntime.jsxs.call(void 0, "div",{className:"flex h-10 w-full flex-row items-center space-x-3 px-4",children:[_jsxruntime.jsx.call(void 0, "p",{className:"whitespace-nowrap",children:C?"Retry Unwrap":c?`Unwrap ${c.symbol}`:"Unwrap Native Token"}),_jsxruntime.jsx.call(void 0, "div",{className:"flex flex-1 border-t",style:{borderColor:"var(--widget-border)"}}),_jsxruntime.jsxs.call(void 0, "div",{className:"flex h-6 w-3 items-center justify-center rounded-full",children:[!d&&(o==="pending"||o==="idle")&&_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.V,{size:"5"}),(d||o==="success")&&_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.P,{className:"h-8 w-8"}),C&&_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.S,{className:"h-[12px] w-[12px]"})]})]})}),U&&_jsxruntime.jsx.call(void 0, "button",{type:"button",className:"inline-flex h-12 items-center justify-center px-8 text-sm font-sans font-medium transition duration-150 cursor-pointer",style:{backgroundColor:"color-mix(in srgb, var(--widget-status-failed) 12%, transparent)",border:"1px solid color-mix(in srgb, var(--widget-status-failed) 20%, transparent)",color:"var(--widget-status-failed)",borderRadius:"var(--widget-radius)"},onClick:y,children:"Cancel"})]})},yr=zn;var Xn=15e3,Ze="wrapping",Yn=({needsToWrap:e,amount:t,chainId:n,token:c,reviewState:l,setReviewState:s,goToNextStep:a,cancel:y,delayedClose:p,isWrappingPair:d})=>{let o=_chunkK3RTTHBScjs.r.call(void 0, Ze,l),[r,v]=_react.useState.call(void 0, "idle"),w=er(),{writeContractAsync:u}=_wagmi.useWriteContract.call(void 0, ),{address:h}=_chunk34N36GUDcjs.a.call(void 0, ),g=Pe(),i=_react.useRef.call(void 0, !1),f=_react.useRef.call(void 0, !1),x=_react.useRef.call(void 0, null),{status:m}=_wagmi.useAccount.call(void 0, ),k=_react.useCallback.call(void 0, ()=>{x.current&&(clearTimeout(x.current),x.current=null)},[]),P=_react.useCallback.call(void 0, async()=>{if(!(i.current||f.current||!h||m!=="connected")){i.current=!0,f.current=!0,v("pending"),x.current=setTimeout(()=>{i.current&&(v("error"),i.current=!1)},Xn);try{let O=_chunkK3RTTHBScjs.c.call(void 0, n);if(!O)throw new Error(`No config for chain ${n}`);let I=_viem.parseUnits.call(void 0, t.toString(),O.nativeAsset.decimals);await w.mutateAsync({chainId:n,accountAddress:h,amountRaw:I,writeContractAsync:u});let M={symbol:O.nativeAsset.symbol,name:O.nativeAsset.name,address:_chunkK3RTTHBScjs.a,decimals:O.nativeAsset.decimals,chainId:n},D={symbol:O.wrappedAsset.symbol,name:O.wrappedAsset.name,address:O.wrappedAsset.address,decimals:O.wrappedAsset.decimals,chainId:n};g({type:"wrap",tokens:[{asset:M,userAddress:h},{asset:D,userAddress:h}]}),k(),v("success"),a(Ze,l),d&&await p()}catch (e8){k(),v("error")}finally{i.current=!1}}},[h,m,n,t,w,u,g,a,l,p,d,k]);_react.useEffect.call(void 0, ()=>{i.current||f.current||l===Ze&&r==="idle"&&m==="connected"&&(e?P():(v("success"),a(Ze,l)))},[l,r,e,m,P,a]),_react.useEffect.call(void 0, ()=>()=>k(),[k]);let C=()=>{r==="error"&&(f.current=!1,v("idle"))},U=!o&&r==="error",W=!o&&(r==="pending"||r==="idle"||r==="error"),E=U?"var(--widget-status-failed)":"var(--widget-primary)";return _jsxruntime.jsxs.call(void 0, "div",{className:"flex w-full flex-row justify-between space-x-3",children:[_jsxruntime.jsx.call(void 0, "button",{type:"button",className:`inline-flex h-12 w-full items-center justify-center text-sm font-sans font-medium transition duration-150 ${U?"cursor-pointer":"cursor-not-allowed"}`,style:{backgroundColor:`color-mix(in srgb, ${E} 12%, transparent)`,border:`1px solid color-mix(in srgb, ${E} 20%, transparent)`,color:E,borderRadius:"var(--widget-radius)"},onClick:U?C:void 0,children:_jsxruntime.jsxs.call(void 0, "div",{className:"flex h-10 w-full flex-row items-center space-x-3 px-4",children:[_jsxruntime.jsx.call(void 0, "p",{className:"whitespace-nowrap",children:U?"Retry Wrap":c?`Wrap ${c.symbol}`:"Wrap Native Token"}),_jsxruntime.jsx.call(void 0, "div",{className:"flex flex-1 border-t",style:{borderColor:"var(--widget-border)"}}),_jsxruntime.jsxs.call(void 0, "div",{className:"flex h-6 w-3 items-center justify-center rounded-full",children:[!o&&(r==="pending"||r==="idle")&&_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.V,{size:"5"}),(o||r==="success")&&_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.P,{className:"h-8 w-8"}),U&&_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.S,{className:"h-[12px] w-[12px]"})]})]})}),W&&_jsxruntime.jsx.call(void 0, "button",{type:"button",className:"inline-flex h-12 items-center justify-center px-8 text-sm font-sans font-medium transition duration-150 cursor-pointer",style:{backgroundColor:"color-mix(in srgb, var(--widget-status-failed) 12%, transparent)",border:"1px solid color-mix(in srgb, var(--widget-status-failed) 20%, transparent)",color:"var(--widget-status-failed)",borderRadius:"var(--widget-radius)"},onClick:y,children:"Cancel"})]})},xr=Yn;var Ba=({base:e,baseAmount:t,quote:n,quoteAmount:c,userAddress:l,isWrappingPair:s,isUnwrappingPair:a,isBaseGasToken:y,isQuoteGasToken:p,reviewActionProps:d,reviewState:o,setReviewState:r,trackedOrderHash:v,setTrackedOrderHash:w,txStatus:u,onSwapComplete:h,onSwapInitiated:g,onOrderSubmitted:i,onStaleQuoteRestart:f,setExitHandler:x,setRetryHandler:m})=>{let{rfqQuote:k,status:P,liquidityError:C,routingError:U,sizeCapError:W,stop:E,clear:O}=Qe(),{clearForm:I}=_chunkPSCWQFVYcjs.e.call(void 0, ),M=_wagmi.useChainId.call(void 0, ),{swapButtonVariant:D,widgetType:Y}=_chunkD7GULMHEcjs.b.call(void 0, ),G=Y==="compact",{trackOrderTransaction:L,trackNativeTransaction:T}=rr(),{startPolling:F}=Qt((_,ge,De)=>{_chunkD7GULMHEcjs.d.getState().setTxStatus(ge),De&&_chunkD7GULMHEcjs.d.getState().setExplorerUrl(De),ge==="completed"&&L(_,`Swap ${e.symbol} \u2192 ${n.symbol}`)}),[B,J]=_react.useState.call(void 0, !1),S=_react.useRef.call(void 0, !1),R=_react.useRef.call(void 0, null),$=s,N=a,q=!s&&!a,te=M!==_optionalChain([e, 'optionalAccess', _97 => _97.chainId])&&($||N||q),Me=_chunkK3RTTHBScjs.c.call(void 0, e.chainId),be={chainId:e.chainId,name:_nullishCoalesce(_optionalChain([Me, 'optionalAccess', _98 => _98.displayName]), () => (`Chain ${e.chainId}`))},z=_react.useCallback.call(void 0, (_,ge)=>{if(ge!==_)return;if(_==="chain"){if($){r("wrapping");return}if(N){r("unwrapping");return}r("signingOrder");return}if(_==="signingOrder"){r("trackingTx");return}if(_==="wrapping"){if(!s){r("signingOrder");return}r("wrapSuccess");return}if(_==="unwrapping"){r("wrapSuccess");return}let De=_chunkK3RTTHBScjs.s.call(void 0, _);De&&r(De)},[r,s,$,N,q]),le=_react.useCallback.call(void 0, ()=>te?"chain":$?"wrapping":N?"unwrapping":q?"signingOrder":null,[te,$,N,q]),re=_react.useCallback.call(void 0, ()=>{r(null),I()},[I,r]),Re=_react.useCallback.call(void 0, async()=>{r("wrapSuccess");for(let _=0;_<3;_++)await _chunkK3RTTHBScjs.t.call(void 0, 700);re()},[re,r]),ne=_react.useCallback.call(void 0, async()=>{O(),r("cancelled");for(let _=0;_<3;_++)await _chunkK3RTTHBScjs.t.call(void 0, 500);re()},[O,re,r]),oe=_react.useCallback.call(void 0, ()=>{v&&(_chunkD7GULMHEcjs.d.getState().stopTracking(),r(null),w(null),I())},[v,r,w,I]),Le=_react.useCallback.call(void 0, ()=>{r(null),w(null),S.current=!0,_optionalChain([f, 'optionalCall', _99 => _99()])},[r,w,f]),ue=_react.useCallback.call(void 0, ()=>{d&&r(le())},[le,d,r]),et=_react.useCallback.call(void 0, (_=!1)=>{_?(S.current=!0,r(null),_optionalChain([f, 'optionalCall', _100 => _100()])):(r(null),R.current=setTimeout(()=>{d&&(r(le()),J(!1))},100))},[r,d,le,f]);_react.useEffect.call(void 0, ()=>{o!==null&&E()},[o,E]),_react.useEffect.call(void 0, ()=>{o!==null&&B&&J(!1)},[o,B]),_react.useEffect.call(void 0, ()=>{_optionalChain([x, 'optionalCall', _101 => _101(oe)])},[x,oe]),_react.useEffect.call(void 0, ()=>(_chunkD7GULMHEcjs.d.getState().setExitHandler(oe),()=>_chunkD7GULMHEcjs.d.getState().setExitHandler(null)),[oe]),_react.useEffect.call(void 0, ()=>{_optionalChain([m, 'optionalCall', _102 => _102(Le)])},[m,Le]),_react.useEffect.call(void 0, ()=>()=>{R.current&&clearTimeout(R.current)},[]),_react.useEffect.call(void 0, ()=>{S.current&&P==="fresh"&&_optionalChain([k, 'optionalAccess', _103 => _103.id])&&(S.current=!1,r("signingOrder"))},[P,_optionalChain([k, 'optionalAccess', _104 => _104.id]),r]);let We=_=>{if(!_)return{backgroundColor:D==="default"?"var(--widget-muted)":"transparent",color:"var(--widget-muted-foreground)",border:D!=="default"?"1px solid var(--widget-border)":"none",borderRadius:"var(--widget-radius)"};switch(D){case"outline":return{backgroundColor:"transparent",color:"var(--widget-primary)",border:"1px solid var(--widget-primary)",borderRadius:"var(--widget-radius)"};case"ghost":return{backgroundColor:"transparent",color:"var(--widget-primary)",border:"none",borderRadius:"var(--widget-radius)"};default:return{backgroundColor:"var(--widget-primary)",color:"var(--widget-primary-foreground)",borderRadius:"var(--widget-radius)"}}},Ae=`w-full ${G?"py-2":"py-3"} text-sm font-sans font-medium transition-colors cursor-pointer mt-1`;if(o===null&&!s&&!a){if(B)return _jsxruntime.jsx.call(void 0, "button",{className:Ae,disabled:!0,style:{...We(!1),opacity:.6,cursor:"not-allowed"},children:"Getting fresh quote..."});let _=()=>C?"Insufficient Liquidity":U?"Route Not Available":W?"Size Cap Exceeded":!k&&P==="polling"?"Getting Quote...":k?"Swap":"Enter Amount",ge=!!d;return _jsxruntime.jsx.call(void 0, "button",{onClick:ge?ue:void 0,disabled:!ge,className:`${Ae} disabled:opacity-40 disabled:cursor-not-allowed`,style:We(ge),children:_()})}return o===null&&a?_jsxruntime.jsx.call(void 0, "button",{onClick:d?ue:void 0,disabled:!d,className:`${Ae} disabled:opacity-40 disabled:cursor-not-allowed`,style:We(!!d),children:"Unwrap"}):o===null&&s?_jsxruntime.jsx.call(void 0, "button",{onClick:d?ue:void 0,disabled:!d,className:`${Ae} disabled:opacity-40 disabled:cursor-not-allowed`,style:We(!!d),children:"Wrap"}):o==="success"?_jsxruntime.jsx.call(void 0, "div",{className:"flex flex-col gap-2 w-full",children:_jsxruntime.jsx.call(void 0, "button",{className:`w-full ${G?"py-2":"py-3"} text-sm font-sans font-medium cursor-default`,style:{backgroundColor:"color-mix(in srgb, var(--widget-status-completed) 15%, transparent)",color:"var(--widget-status-completed)",border:"1px solid color-mix(in srgb, var(--widget-status-completed) 20%, transparent)",borderRadius:"var(--widget-radius)"},children:"Order Placed"})}):o==="wrapSuccess"?_jsxruntime.jsx.call(void 0, "div",{className:"flex flex-col gap-2 w-full",children:_jsxruntime.jsx.call(void 0, "button",{className:`w-full ${G?"py-2":"py-3"} text-sm font-sans font-medium cursor-default`,style:{backgroundColor:"color-mix(in srgb, var(--widget-status-completed) 15%, transparent)",color:"var(--widget-status-completed)",border:"1px solid color-mix(in srgb, var(--widget-status-completed) 20%, transparent)",borderRadius:"var(--widget-radius)"},children:s?"Wrapped Successfully":"Unwrapped Successfully"})}):o==="cancelled"?_jsxruntime.jsx.call(void 0, "div",{className:"flex flex-col gap-2 w-full",children:_jsxruntime.jsx.call(void 0, "button",{onClick:re,className:`w-full ${G?"py-2":"py-3"} text-sm font-sans font-medium cursor-pointer`,style:{backgroundColor:"color-mix(in srgb, var(--widget-status-failed) 15%, transparent)",color:"var(--widget-status-failed)",border:"1px solid color-mix(in srgb, var(--widget-status-failed) 20%, transparent)",borderRadius:"var(--widget-radius)"},children:"Order Cancelled"})}):_jsxruntime.jsxs.call(void 0, "div",{className:"flex w-full",children:[o==="chain"&&te&&_jsxruntime.jsx.call(void 0, or,{requiredChain:be,needsChainSwitch:te&&M!==e.chainId,reviewState:o,goToNextStep:z,cancel:ne}),o==="wrapping"&&$&&_jsxruntime.jsx.call(void 0, xr,{needsToWrap:$,amount:t,chainId:e.chainId,token:e,reviewState:o,setReviewState:r,goToNextStep:z,cancel:ne,delayedClose:Re,isWrappingPair:s}),o==="unwrapping"&&N&&_jsxruntime.jsx.call(void 0, yr,{needsToUnwrap:N,amount:t,chainId:e.chainId,token:e,reviewState:o,setReviewState:r,goToNextStep:z,cancel:ne,delayedClose:Re}),o==="signingOrder"&&q&&_jsxruntime.jsx.call(void 0, pr,{base:e,baseAmount:t,quote:n,quoteAmount:c,userAddress:l,reviewState:o,goToNextStep:z,cancel:ne,restartSigningFlow:et,onSwapInitiated:g,onOrderSubmitted:i,isWrappingPair:s,isUnwrappingPair:a,onSwapComplete:h,startPolling:F,trackNativeTransaction:T}),o==="trackingTx"&&v&&_jsxruntime.jsx.call(void 0, mr,{orderHash:v,base:e,quote:n,baseAmount:t,quoteAmount:c,reviewState:o,status:u,onNewSwap:oe,onRetry:Le}),o&&!["chain","wrapping","unwrapping","approval","signingOrder","trackingTx","success","wrapSuccess","cancelled"].includes(o)&&_jsxruntime.jsx.call(void 0, "button",{disabled:!0,className:`w-full ${G?"py-2":"py-3"} text-sm font-sans font-medium`,style:{backgroundColor:"var(--widget-muted)",color:"var(--widget-muted-foreground)",borderRadius:"var(--widget-radius)"},children:"Processing..."})]})};var _shallow = require('zustand/react/shallow');var Sr={pending:"var(--widget-status-pending)",received:"var(--widget-status-received)",completed:"var(--widget-status-completed)",failed:"var(--widget-status-failed)",cancelled:"var(--widget-status-failed)"},ns=({status:e})=>{let t=_nullishCoalesce(Sr[e], () => (Sr.pending));switch(e){case"completed":return _jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.P,{className:"h-6 w-6"});case"failed":case"cancelled":return _jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.Y,{className:"h-6 w-6"});default:return _jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.V,{size:"5",color:t})}};function ss(e){if(e===0)return"0";let t=Math.abs(e);return t>=1e4?e.toFixed(0):t>=1e3?e.toFixed(1):t>=100?e.toFixed(2):t>=1?e.toFixed(4):t>=.01?e.toFixed(6):e.toExponential(3)}function Tr(e){try{let t=new URL(e).pathname.split("/"),n=t[t.length-1];return n&&n.startsWith("0x")?n:null}catch (e9){return null}}function Rr(e){let t=e.length;return t<=4?48:t<=6?40:t<=8?34:28}var St=()=>_jsxruntime.jsxs.call(void 0, "svg",{className:"w-3 h-3 shrink-0",style:{color:"var(--widget-secondary-foreground)"},viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[_jsxruntime.jsx.call(void 0, "path",{d:"M18 13V19C18 20.1046 17.1046 21 16 21H5C3.89543 21 3 20.1046 3 19V8C3 6.89543 3.89543 6 5 6H11",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}),_jsxruntime.jsx.call(void 0, "path",{d:"M15 3H21V9",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}),_jsxruntime.jsx.call(void 0, "path",{d:"M10 14L21 3",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]}),os=()=>_jsxruntime.jsxs.call(void 0, "svg",{className:"w-3 h-3 shrink-0",viewBox:"0 0 195 321",fill:"var(--widget-secondary-foreground)",xmlns:"http://www.w3.org/2000/svg",children:[_jsxruntime.jsx.call(void 0, "path",{fillRule:"evenodd",d:"M195,189C195,207.02,195,225.04,194.7,243.21C193.68,244.78,192.9,246.17,192.25,247.63C189.71,253.38,187.74,259.46,184.6,264.86C169.44,290.97,147.86,309.46,118.54,318.86C116.44,319.55,114.72,320.27,113,321C97.65,321,82.29,321,66.36,320.66C64.21,319.86,62.64,319.4,60.77,318.73C34.51,310.12,15.56,293.82,4.22,268.85C3.68,267.66,2.1,266.94,1,266C1,242.31,1,218.62,1.29,194.79C2.84,192.16,4.11,189.7,5.34,187.22C18.42,160.94,39.89,144.07,66.64,133.63C76.92,129.62,87.87,127.33,98.67,124.2C97.79,123.24,96.8,121.93,95.59,120.86C85.84,112.3,75.95,103.89,66.3,95.21C55.93,85.86,45.02,76.96,35.71,66.63C21.14,50.5,20.04,23.08,45.41,9.57C50.08,7.08,55.12,5.26,59.93,3.03C60.76,2.64,61.32,1.69,62,1C86.69,1,111.38,1,136.23,1.32C138.04,2.32,139.67,3.01,141.32,3.67C147.64,6.19,154.12,8.39,160.26,11.32C166.83,14.45,172.19,19.18,175.44,25.95C179.39,34.19,178.09,43.36,172.05,49.56C165.75,56.03,157.21,57.8,148.78,52.89C142.4,49.17,136.86,43.96,131.1,39.23C122.63,32.28,115.05,23.88,105.74,18.38C87.78,7.76,68.84,9.07,51.16,19.53C38.68,26.91,36.37,41.4,45.53,52.71C50.38,58.69,56.45,64,62.83,68.36C87.15,84.99,111.86,101.05,136.34,117.44C162.56,135,183.88,156.57,193.26,187.79C193.42,188.32,194.4,188.6,195,189ZM77.06,146.49C61.39,155.71,51.27,169.26,45.93,186.5C39.48,207.32,39.44,228.5,42.93,249.76C45.84,267.48,53.16,282.95,66.59,295.39C83.82,311.34,108.85,312.86,127.37,298.41C138.98,289.35,146.05,277.03,149.48,263.04C161.53,213.92,148.4,171.97,112.16,137.05C111.13,136.06,108.71,135.6,107.31,136.05C97.38,139.22,87.54,142.7,77.06,146.49Z"}),_jsxruntime.jsx.call(void 0, "path",{d:"M118.83,199C121.61,197.69,122.77,198.41,122.77,201.27C122.71,217.43,122.78,233.58,122.65,249.73C122.65,250.83,121.43,251.92,120.77,253.01C119.97,252.05,118.63,251.17,118.45,250.1C116.32,237.7,113.36,235.12,100.61,235.02C98.12,235,95.62,234.98,93.12,235.01C81.26,235.16,77.72,238.3,75.94,249.84C75.74,251.15,74.39,252.28,73.57,253.49C73.11,253.23,72.64,252.98,72.17,252.73C72.17,234.81,72.17,216.88,72.17,198.96C72.49,198.62,72.81,198.28,73.13,197.93C74.09,198.95,75.72,199.85,75.92,201C78.13,213.8,80.95,216.26,94.05,216.3C97.38,216.31,100.72,216.44,104.04,216.27C113.28,215.79,117.15,212.05,118.22,202.81C118.35,201.65,118.47,200.49,118.83,199Z"})]}),as=({orderHash:e,base:t,quote:n,baseAmount:c,quoteAmount:l,status:s})=>{let[a,y]=_react.useState.call(void 0, !1),[p,d]=_react.useState.call(void 0, !0),o=_react.useRef.call(void 0, null),r=_react.useRef.call(void 0, Date.now()),[v,w]=_react.useState.call(void 0, null),u=_react.useRef.call(void 0, null),{isRecipientInputOpen:h,recipient:g,explorerUrl:i}=_chunkD7GULMHEcjs.d.call(void 0, _shallow.useShallow.call(void 0, T=>({isRecipientInputOpen:T.isRecipientInputOpen,recipient:T.recipient,explorerUrl:T.explorerUrl})));_react.useEffect.call(void 0, ()=>{s==="received"&&(o.current=Date.now())},[s]),_react.useEffect.call(void 0, ()=>{if(s==="completed"&&!v){let T=o.current||r.current;w((Date.now()-T)/1e3)}},[s,v]),_react.useEffect.call(void 0, ()=>()=>{u.current&&clearTimeout(u.current)},[]);let f=_react.useCallback.call(void 0, ()=>{if(!_optionalChain([navigator, 'access', _105 => _105.clipboard, 'optionalAccess', _106 => _106.writeText]))return;let T=i?_nullishCoalesce(Tr(i), () => (e)):e;navigator.clipboard.writeText(T).then(()=>{y(!0),u.current&&clearTimeout(u.current),u.current=setTimeout(()=>y(!1),2e3)}).catch(()=>{})},[e,i]),x=_chunkK3RTTHBScjs.o.call(void 0, c),m=_chunkK3RTTHBScjs.o.call(void 0, l),k=s==="completed"||s==="failed"||s==="cancelled",P=!k,C=c&&l?c/l:0,U=_chunkK3RTTHBScjs.c.call(void 0, t.chainId),W=_chunkK3RTTHBScjs.c.call(void 0, n.chainId),E=_nullishCoalesce(_optionalChain([U, 'optionalAccess', _107 => _107.displayName]), () => (`Chain ${t.chainId}`)),O=_nullishCoalesce(_optionalChain([W, 'optionalAccess', _108 => _108.displayName]), () => (`Chain ${n.chainId}`)),I=t.chainId!==n.chainId,M=_nullishCoalesce(_optionalChain([U, 'optionalAccess', _109 => _109.estimatedTimeMs]), () => (0)),D=_nullishCoalesce(_optionalChain([W, 'optionalAccess', _110 => _110.estimatedTimeMs]), () => (0)),Y=(I?M+D:M)/1e3,G=i?_nullishCoalesce(Tr(i), () => (e)):e,L=`${G.slice(0,6)} \u2026 ${G.slice(-4)}`;return _jsxruntime.jsxs.call(void 0, "div",{className:"relative w-full flex flex-col",children:[_jsxruntime.jsxs.call(void 0, "div",{className:"mx-4 mt-2",style:{backgroundColor:"var(--widget-secondary)"},children:[_jsxruntime.jsx.call(void 0, "div",{className:"p-5",children:_jsxruntime.jsxs.call(void 0, "div",{className:"flex items-center justify-between",children:[_jsxruntime.jsxs.call(void 0, "div",{children:[_jsxruntime.jsxs.call(void 0, "div",{className:"flex items-center gap-3 mb-3",children:[_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.O,{asset:t,size:"md",noChain:!0}),_jsxruntime.jsxs.call(void 0, "div",{children:[_jsxruntime.jsx.call(void 0, "p",{className:"text-xl font-thin uppercase",style:{color:"var(--widget-foreground)"},children:t.symbol}),_jsxruntime.jsx.call(void 0, "p",{className:"text-xs",style:{color:"var(--widget-muted-foreground)"},children:t.name})]})]}),_jsxruntime.jsxs.call(void 0, "div",{className:"inline-flex items-center gap-1.5 rounded-full px-2.5 py-1",style:{backgroundColor:"color-mix(in srgb, var(--widget-muted-foreground) 20%, transparent)",border:"1px solid color-mix(in srgb, var(--widget-muted-foreground) 30%, transparent)"},children:[_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.N,{chain:t.chainId,size:"xs"}),_jsxruntime.jsx.call(void 0, "span",{className:"text-xs pt-0.5",style:{color:"var(--widget-muted-foreground)"},children:E})]})]}),_jsxruntime.jsxs.call(void 0, "div",{className:"text-right",children:[_jsxruntime.jsx.call(void 0, "p",{className:"font-thin tracking-tight font-sans",style:{color:"var(--widget-foreground)",fontSize:`${Rr(x)}px`,transition:"font-size 0.1s ease-out"},children:x}),t.price&&_jsxruntime.jsxs.call(void 0, "p",{className:"text-xs mt-1 font-sans",style:{color:"var(--widget-muted-foreground)"},children:["$",(t.price*c).toFixed(2)]})]})]})}),_jsxruntime.jsxs.call(void 0, "div",{className:"relative",children:[_jsxruntime.jsx.call(void 0, "div",{style:{borderTop:"1px solid var(--widget-border)"}}),_jsxruntime.jsx.call(void 0, "div",{className:"absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2",children:_jsxruntime.jsx.call(void 0, "div",{className:"w-10 h-10 rounded-full flex items-center justify-center",style:{backgroundColor:"var(--widget-secondary)",border:"1px solid var(--widget-border)"},children:_jsxruntime.jsx.call(void 0, ns,{status:s})})})]}),_jsxruntime.jsx.call(void 0, "div",{className:"p-5",children:_jsxruntime.jsxs.call(void 0, "div",{className:"flex items-center justify-between",children:[_jsxruntime.jsxs.call(void 0, "div",{children:[_jsxruntime.jsxs.call(void 0, "div",{className:"flex items-center gap-3 mb-3",children:[_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.O,{asset:n,size:"md",noChain:!0}),_jsxruntime.jsxs.call(void 0, "div",{children:[_jsxruntime.jsx.call(void 0, "p",{className:"text-xl font-thin uppercase",style:{color:"var(--widget-foreground)"},children:n.symbol}),_jsxruntime.jsx.call(void 0, "p",{className:"text-xs",style:{color:"var(--widget-muted-foreground)"},children:n.name})]})]}),_jsxruntime.jsxs.call(void 0, "div",{className:"inline-flex items-center gap-1.5 rounded-full px-2.5 py-1",style:{backgroundColor:"color-mix(in srgb, var(--widget-muted-foreground) 20%, transparent)",border:"1px solid color-mix(in srgb, var(--widget-muted-foreground) 30%, transparent)"},children:[_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.N,{chain:n.chainId,size:"xs"}),_jsxruntime.jsx.call(void 0, "span",{className:"text-xs pt-0.5",style:{color:"var(--widget-muted-foreground)"},children:O})]})]}),_jsxruntime.jsxs.call(void 0, "div",{className:"text-right",children:[_jsxruntime.jsx.call(void 0, "p",{className:"font-thin tracking-tight font-sans",style:{color:"var(--widget-foreground)",fontSize:`${Rr(m)}px`,transition:"font-size 0.1s ease-out"},children:m}),n.price&&_jsxruntime.jsxs.call(void 0, "p",{className:"text-xs mt-1 font-sans",style:{color:"var(--widget-muted-foreground)"},children:["$",(n.price*l).toFixed(2)]})]})]})})]}),h&&g&&_jsxruntime.jsx.call(void 0, "div",{className:"mx-4 mt-2 px-5 pb-2",children:_jsxruntime.jsxs.call(void 0, "div",{className:"flex items-center gap-2 p-2 rounded-full",style:{backgroundColor:"var(--widget-secondary)"},children:[_jsxruntime.jsx.call(void 0, "div",{className:"flex h-5 w-5 items-center justify-center overflow-hidden rounded-full",style:{backgroundColor:"var(--widget-muted)"},children:_jsxruntime.jsx.call(void 0, "span",{className:"text-2xs",children:"\u{1F464}"})}),_jsxruntime.jsx.call(void 0, "span",{className:"text-xs",style:{color:"var(--widget-muted-foreground)"},children:"To:"}),_jsxruntime.jsxs.call(void 0, "span",{className:"text-xs font-sans",style:{color:"var(--widget-foreground)"},children:[g.slice(0,6),"...",g.slice(-4)]})]})}),_jsxruntime.jsxs.call(void 0, "div",{className:"px-4 mt-4",style:{borderTop:"1px solid var(--widget-border)",borderBottom:"1px solid var(--widget-border)"},children:[_jsxruntime.jsx.call(void 0, "div",{className:"relative box-border flex flex-row h-8 w-full items-center cursor-pointer",role:"button",tabIndex:0,onClick:()=>d(!p),onKeyDown:T=>{(T.key==="Enter"||T.key===" ")&&(T.preventDefault(),d(!p))},children:_jsxruntime.jsx.call(void 0, "div",{className:"flex h-full items-center w-full overflow-hidden",style:{color:"var(--widget-muted-foreground)"},children:_jsxruntime.jsxs.call(void 0, "div",{className:"translate-y-px font-sans flex w-full flex-row items-center justify-between",children:[_jsxruntime.jsxs.call(void 0, "div",{className:"flex flex-row items-center gap-2 whitespace-nowrap",children:[_jsxruntime.jsxs.call(void 0, "div",{className:"flex flex-row items-center gap-1",children:[_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.O,{asset:n,size:"3xs",noChain:!0,className:"mb-0.5"}),_jsxruntime.jsxs.call(void 0, "span",{className:"text-xs uppercase",style:{color:"var(--widget-muted-foreground)"},children:["1 ",n.symbol]})]}),_jsxruntime.jsx.call(void 0, "span",{className:"text-xs",style:{color:"var(--widget-muted-foreground)"},children:"="}),_jsxruntime.jsxs.call(void 0, "div",{className:"flex flex-row items-center gap-1",children:[_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.O,{asset:t,size:"3xs",noChain:!0,className:"mb-0.5"}),_jsxruntime.jsxs.call(void 0, "span",{className:"text-xs uppercase",style:{color:"var(--widget-muted-foreground)"},children:[ss(C)," ",t.symbol]})]}),_jsxruntime.jsx.call(void 0, "span",{className:"text-xs",style:{color:"var(--widget-muted-foreground)"},children:t.price?`\u2248 $${(t.price*C).toFixed(2)}`:""})]}),_jsxruntime.jsx.call(void 0, "span",{className:"text-xs ml-2 transition-transform duration-200 shrink-0",style:{color:"var(--widget-muted-foreground)",transform:p?"rotate(180deg)":"rotate(0deg)",display:"inline-block"},children:"\u25BE"})]})})}),_jsxruntime.jsx.call(void 0, "div",{className:"overflow-hidden transition-all duration-200",style:{maxHeight:p?"200px":"0px",opacity:p?1:0},children:_jsxruntime.jsxs.call(void 0, "div",{className:"flex flex-col gap-1 pb-1.5 font-sans",children:[_jsxruntime.jsxs.call(void 0, "div",{className:"flex justify-between text-2xs",style:{color:"var(--widget-muted-foreground)"},children:[_jsxruntime.jsx.call(void 0, "span",{children:"USD Value"}),_jsxruntime.jsxs.call(void 0, "span",{style:{color:"var(--widget-secondary-foreground)"},children:["$",t.price?(t.price*c).toFixed(2):"\u2014"]})]}),_jsxruntime.jsxs.call(void 0, "div",{className:"flex justify-between text-2xs",style:{color:"var(--widget-muted-foreground)"},children:[_jsxruntime.jsx.call(void 0, "span",{style:{color:"var(--widget-muted-foreground)"},children:"Order Type"}),_jsxruntime.jsx.call(void 0, "span",{style:{color:"var(--widget-secondary-foreground)"},children:"RFQ (Limit)"})]}),_jsxruntime.jsxs.call(void 0, "div",{className:"flex justify-between items-center text-2xs",style:{color:"var(--widget-muted-foreground)"},children:[_jsxruntime.jsx.call(void 0, "span",{children:"Transaction"}),i?_jsxruntime.jsxs.call(void 0, "a",{href:i,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1 transition-colors hover:opacity-80",style:{color:"var(--widget-secondary-foreground)"},children:[_jsxruntime.jsx.call(void 0, "span",{children:a?"Copied!":L}),_jsxruntime.jsx.call(void 0, St,{})]}):_jsxruntime.jsxs.call(void 0, "button",{type:"button",onClick:f,className:"flex items-center gap-1 cursor-pointer transition-colors",style:{color:"var(--widget-secondary-foreground)"},children:[_jsxruntime.jsx.call(void 0, "span",{style:{color:"var(--widget-secondary-foreground)"},children:a?"Copied!":L}),_jsxruntime.jsx.call(void 0, St,{})]})]}),_jsxruntime.jsxs.call(void 0, "div",{className:"flex justify-between text-2xs",style:{color:"var(--widget-muted-foreground)"},children:[_jsxruntime.jsx.call(void 0, "span",{children:k?"Speed":"Est. Time"}),_jsxruntime.jsx.call(void 0, "span",{style:{color:"var(--widget-secondary-foreground)"},children:v?`${v.toFixed(2)}s`:Y>0?`~${Y}s`:"\u2014"})]}),_jsxruntime.jsxs.call(void 0, "div",{className:"flex justify-between items-center text-2xs",style:{color:"var(--widget-muted-foreground)"},children:[_jsxruntime.jsx.call(void 0, "span",{children:"Route"}),_jsxruntime.jsxs.call(void 0, "a",{href:"https://www.aori.io",target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1 transition-colors hover:opacity-80",style:{color:"var(--widget-secondary-foreground)"},children:[_jsxruntime.jsx.call(void 0, os,{}),"Aori",_jsxruntime.jsx.call(void 0, St,{})]})]})]})})]})]})},Xa= exports.x =as;exports.a = Or; exports.b = Pe; exports.c = ps; exports.d = bs; exports.e = Qe; exports.f = qr; exports.g = Ts; exports.h = Is; exports.i = Ls; exports.j = Qs; exports.k = js; exports.l = Ft; exports.m = Qt; exports.n = qt; exports.o = nn; exports.p = Ht; exports.q = sn; exports.r = Xt; exports.s = Yt; exports.t = Jt; exports.u = Zt; exports.v = er; exports.w = Ba; exports.x = Xa;
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }"use client";
2
+ var _chunkTWVI6PZScjs = require('./chunk-TWVI6PZS.cjs');var _chunkPSCWQFVYcjs = require('./chunk-PSCWQFVY.cjs');var _chunkD7GULMHEcjs = require('./chunk-D7GULMHE.cjs');var _chunkK3RTTHBScjs = require('./chunk-K3RTTHBS.cjs');var _chunk34N36GUDcjs = require('./chunk-34N36GUD.cjs');var _react = require('react'); var _react2 = _interopRequireDefault(_react);var _shallow = require('zustand/react/shallow');var _jsxruntime = require('react/jsx-runtime');var Q=_react2.default.memo(({asset:i,otherAsset:d,handleFormSelection:f,getToken:Y})=>{let{token:v}=_chunkK3RTTHBScjs.D.call(void 0, i.chainId,i.address),L=Y(i.chainId,i.address),o=v||L||i.assetInfo;if(!o)return null;let h=o.price!=null&&i.decimals!==void 0?_chunkK3RTTHBScjs.u.call(void 0, o,i.balance,i.decimals):null;return _jsxruntime.jsxs.call(void 0, "button",{type:"button",className:"w-full flex items-center justify-between p-3 cursor-pointer",style:{borderBottom:"1px solid var(--widget-border)"},onClick:()=>f(o,d),children:[_jsxruntime.jsxs.call(void 0, "div",{className:"flex items-center space-x-3 min-w-0 flex-1",children:[_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.O,{asset:o,size:"sm",className:"flex-shrink-0"}),_jsxruntime.jsxs.call(void 0, "div",{className:"flex flex-col items-start min-w-0 flex-1",children:[_jsxruntime.jsx.call(void 0, "span",{className:"text-sm font-thin",style:{color:"var(--widget-secondary-foreground)"},children:o.symbol.length>20?`${o.symbol.substring(0,20)}...`:o.symbol}),_jsxruntime.jsx.call(void 0, "span",{className:"text-xs",style:{color:"var(--widget-muted-foreground)"},children:o.name.length>20?`${o.name.substring(0,20)}...`:o.name})]})]}),_jsxruntime.jsxs.call(void 0, "div",{className:"flex flex-col items-end text-right flex-shrink-0",children:[_jsxruntime.jsx.call(void 0, "span",{className:"text-xs font-sans",style:{color:"var(--widget-muted-foreground)"},children:"Balance:"}),_jsxruntime.jsx.call(void 0, "span",{className:"text-xs font-sans",style:{color:"var(--widget-foreground)",opacity:.5},children:h!=null?`$${h.toFixed(2)}`:"\u2014"})]})]},`${o.chainId}-${o.address}`)},(i,d)=>i.asset.address===d.asset.address&&i.asset.chainId===d.asset.chainId&&i.asset.balance===d.asset.balance&&_optionalChain([i, 'access', _2 => _2.asset, 'access', _3 => _3.assetInfo, 'optionalAccess', _4 => _4.price])===_optionalChain([d, 'access', _5 => _5.asset, 'access', _6 => _6.assetInfo, 'optionalAccess', _7 => _7.price])&&i.otherAsset.address===d.otherAsset.address);Q.displayName="AssetSelectionBalanceItem";var Fe=({toggle:i,side:d,otherAsset:f,containerHeight:Y,onChainHover:v,onMoreChainsClick:L,selectedChainFilter:o})=>{let{address:H}=_chunk34N36GUDcjs.a.call(void 0, ),{assetSelectionSearch:h,assetSelectionChain:m,assetSelectionCategory:U,recentChainIds:_}=_chunkD7GULMHEcjs.d.call(void 0, _shallow.useShallow.call(void 0, e=>({assetSelectionSearch:e.assetSelectionSearch,assetSelectionChain:e.assetSelectionChain,assetSelectionCategory:e.assetSelectionCategory,recentChainIds:e.recentChainIds}))),E=_chunkK3RTTHBScjs.x.call(void 0, h,300),I=_chunkD7GULMHEcjs.c.call(void 0, ),{inputSelectionSearch:ye,outputSelectionSearch:be,showInputSelectionTokenBalances:ve,showOutputSelectionTokenBalances:xe}=_chunkD7GULMHEcjs.b.call(void 0, ),{effectiveInputTokens:Ie,effectiveOutputTokens:Ce,effectiveInputChains:Se,effectiveOutputChains:ke,effectivePrioritizedInputTokens:Ne,effectivePrioritizedInputChains:$e}=_chunkTWVI6PZScjs.a.call(void 0, ),Te=d==="base"?ye:be,J=d==="base"?ve:xe,{setBaseToken:X,setQuoteToken:Z}=_chunkPSCWQFVYcjs.e.call(void 0, ),C=d==="base"?Ie:Ce,x=d==="base"?Se:ke,P=d==="base"?Ne:[],B=d==="base"?$e:[],W=x.length===1,S=_react.useMemo.call(void 0, ()=>{if(C.length===0)return null;let e=new Set;for(let s of C)e.add(`${s.chainId}-${s.address.toLowerCase()}`);return e},[C]);_react.useEffect.call(void 0, ()=>{W?_chunkD7GULMHEcjs.d.getState().setAssetSelectionChain(x[0]):o&&_chunkD7GULMHEcjs.d.getState().setAssetSelectionChain(o)},[o,W,x]);let Ae=_react2.default.useMemo(()=>{let s=x.length>0?new Set(x):null,r=_chunkK3RTTHBScjs.e.call(void 0, I).filter(t=>!s||s.has(t.id)).map(t=>({chainId:t.id,name:t.displayName})),n=new Map(r.map(t=>[t.chainId,t])),u=new Set(B),g=_.filter(t=>!u.has(t)&&n.has(t)),w=5-Math.min(g.length,5),l=[],p=new Set;for(let t of B){if(l.length>=w)break;let y=n.get(t);y&&!p.has(t)&&(l.push(y),p.add(t))}for(let t of g){if(l.length>=5)break;let y=n.get(t);y&&!p.has(t)&&(l.push(y),p.add(t))}for(let t of B){if(l.length>=5)break;if(p.has(t))continue;let y=n.get(t);y&&(l.push(y),p.add(t))}for(let t of r){if(l.length>=5)break;p.has(t.chainId)||l.push(t)}return l},[I,_,x,B]),{enrichedTokens:j,isLoading:Le}=_chunkK3RTTHBScjs.C.call(void 0, m==="all"?"all":m),{tokenRegistry:ee,getToken:K}=_chunkK3RTTHBScjs.B.call(void 0, ),Be=_react.useMemo.call(void 0, ()=>{let e=new Set;for(let s of ee)e.add(`${s.chainId}-${s.address.toLowerCase()}`);return e},[ee]),q=_react.useMemo.call(void 0, ()=>S?j.filter(e=>S.has(`${e.chainId}-${e.address.toLowerCase()}`)):j,[j,S]),G=_react.useMemo.call(void 0, ()=>f?q.filter(e=>!(e.chainId===f.chainId&&e.address.toLowerCase()===f.address.toLowerCase())):q,[q,f]),V=_react2.default.useMemo(()=>{if(!E)return G;let e=E.toLowerCase();return G.filter(s=>(s.symbol||"").toLowerCase().includes(e)||(s.name||"").toLowerCase().includes(e)||s.address.toLowerCase().includes(e))},[G,E]),k=_react.useMemo.call(void 0, ()=>{let e=new Map;for(let s=0;s<P.length;s++){let r=P[s];e.set(`${r.chainId}-${r.address.toLowerCase()}`,s)}return e},[P]),se=_react2.default.useMemo(()=>{let e=m==="all"?(V||[]).filter(n=>I.includes(n.chainId)):V||[],s=new Set;return[...e.filter(n=>{let u=`${n.chainId}-${n.address.toLowerCase()}`;return s.has(u)?!1:(s.add(u),!0)})].sort((n,u)=>{let g=`${n.chainId}-${n.address.toLowerCase()}`,N=`${u.chainId}-${u.address.toLowerCase()}`,w=k.get(g),l=k.get(N);if(w!==void 0&&l!==void 0)return w-l;if(w!==void 0)return-1;if(l!==void 0)return 1;let p=_chunkK3RTTHBScjs.i.call(void 0, n),t=_chunkK3RTTHBScjs.i.call(void 0, u);return p&&!t?-1:!p&&t?1:0})},[V,m,I,k]),{balances:M,isLoading:te}=_chunkK3RTTHBScjs.K.call(void 0, H,I,void 0,C.length>0?C:void 0),ae=_react2.default.useMemo(()=>{if(!M)return[];let e=m==="all"?M:M.filter(r=>r.chainId===m),s=new Set;return e.filter(r=>{let n=`${r.chainId}-${(r.address||"").toLowerCase()}`;return s.has(n)?!1:(s.add(n),!0)})},[M,m]),Me=_react.useCallback.call(void 0, e=>{let s=e.target.value.toLowerCase(),r=_chunkK3RTTHBScjs.v.call(void 0, s),n=_chunkD7GULMHEcjs.d.getState();r?(n.setAssetSelectionSearch(r),n.setAssetSelectionAddressInput(r)):(n.setAssetSelectionAddressInput(""),n.setAssetSelectionSearch(s))},[]),O=_react.useCallback.call(void 0, async e=>{d==="base"?await X(e):d==="quote"&&await Z(e),i()},[i,d,X,Z]);return _jsxruntime.jsxs.call(void 0, "div",{className:"w-full h-full flex flex-col pt-1",children:[!W&&_jsxruntime.jsxs.call(void 0, "div",{className:"flex flex-row justify-between py-1 flex-shrink-0 h-10",children:[_jsxruntime.jsx.call(void 0, "button",{type:"button",className:"flex flex-row items-center w-full h-full px-2.5 whitespace-nowrap font-bold uppercase text-xs cursor-pointer text-center justify-center",style:{backgroundColor:m==="all"&&!o?"var(--widget-primary)":"var(--widget-secondary)",color:m==="all"&&!o?"var(--widget-primary-foreground)":"var(--widget-secondary-foreground)",border:"1px solid var(--widget-border)",borderRadius:"var(--widget-radius) 0 0 var(--widget-radius)"},onClick:e=>{e.stopPropagation(),_chunkD7GULMHEcjs.d.getState().setAssetSelectionChain("all")},onMouseEnter:()=>_optionalChain([v, 'optionalCall', _8 => _8("All Chains")]),onMouseLeave:()=>_optionalChain([v, 'optionalCall', _9 => _9(null)]),children:"All"}),Ae.map((e,s)=>_jsxruntime.jsx.call(void 0, "button",{type:"button",className:"flex items-center justify-center px-2 w-full cursor-pointer",style:{backgroundColor:m===e.chainId?"var(--widget-primary)":"var(--widget-secondary)",color:m===e.chainId?"var(--widget-primary-foreground)":"var(--widget-secondary-foreground)",borderTop:"1px solid var(--widget-border)",borderBottom:"1px solid var(--widget-border)",borderLeft:s===0?"none":"1px solid var(--widget-border)",borderRight:"1px solid var(--widget-border)"},onClick:r=>{r.stopPropagation(),_chunkD7GULMHEcjs.d.getState().setAssetSelectionChain(e.chainId)},onMouseEnter:()=>_optionalChain([v, 'optionalCall', _10 => _10(e.name)]),onMouseLeave:()=>_optionalChain([v, 'optionalCall', _11 => _11(null)]),children:_jsxruntime.jsx.call(void 0, "div",{className:"mb-px h-4 w-4",children:_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.N,{chain:e.chainId,size:"xs"})})},e.chainId)),L&&_jsxruntime.jsx.call(void 0, "button",{type:"button",className:"flex flex-row cursor-pointer items-center w-full h-full px-2.5 whitespace-nowrap uppercase font-bold text-xs",style:{backgroundColor:"var(--widget-secondary)",color:"var(--widget-secondary-foreground)",border:"1px solid var(--widget-border)",borderRadius:"0 var(--widget-radius) var(--widget-radius) 0"},onClick:e=>{e.stopPropagation(),L()},children:"More"})]}),Te&&_jsxruntime.jsx.call(void 0, "div",{className:"flex-shrink-0",children:_jsxruntime.jsxs.call(void 0, "div",{className:"relative mt-1",children:[_jsxruntime.jsx.call(void 0, "input",{className:"w-full h-10 px-4 text-sm",style:{backgroundColor:"var(--widget-card)",color:"var(--widget-card-foreground)",border:"1px solid var(--widget-border)"},placeholder:"Search tokens by name, symbol, or address...",autoComplete:"off",value:h,onChange:Me}),h&&_jsxruntime.jsx.call(void 0, "button",{type:"button",onClick:()=>_chunkD7GULMHEcjs.d.getState().setAssetSelectionSearch(""),className:"absolute right-2 top-1/2 -translate-y-1/2 cursor-pointer rounded-full px-2 py-1 text-xs",style:{backgroundColor:"var(--widget-secondary)",color:"var(--widget-secondary-foreground)",border:"1px solid var(--widget-border)"},children:"clear"})]})}),_jsxruntime.jsxs.call(void 0, "div",{className:"flex-1 min-h-0 overflow-auto mt-2",style:{backgroundColor:"var(--widget-background)"},children:[J&&te&&!h&&U==="all"&&_jsxruntime.jsxs.call(void 0, "div",{children:[_jsxruntime.jsx.call(void 0, "p",{className:"my-1 ml-4 text-xs",style:{color:"var(--widget-muted-foreground)"},children:"Your Tokens"}),Array.from({length:3}).map((e,s)=>_jsxruntime.jsxs.call(void 0, "div",{className:"w-full flex items-center justify-between p-3",style:{borderBottom:"1px solid var(--widget-border)"},children:[_jsxruntime.jsxs.call(void 0, "div",{className:"flex items-center space-x-3 min-w-0 flex-1",children:[_jsxruntime.jsx.call(void 0, "div",{className:"h-8 w-8 flex-shrink-0 animate-pulse",style:{backgroundColor:"var(--widget-secondary)",borderRadius:"9999px"}}),_jsxruntime.jsxs.call(void 0, "div",{className:"flex flex-col gap-1.5 min-w-0 flex-1",children:[_jsxruntime.jsx.call(void 0, "div",{className:"h-3.5 w-16 animate-pulse",style:{backgroundColor:"var(--widget-secondary)",borderRadius:"0.25rem"}}),_jsxruntime.jsx.call(void 0, "div",{className:"h-3 w-24 animate-pulse",style:{backgroundColor:"var(--widget-secondary)",opacity:.6,borderRadius:"0.25rem"}})]})]}),_jsxruntime.jsxs.call(void 0, "div",{className:"flex flex-col items-end gap-1.5 flex-shrink-0",children:[_jsxruntime.jsx.call(void 0, "div",{className:"h-3.5 w-14 animate-pulse",style:{backgroundColor:"var(--widget-secondary)",borderRadius:"0.25rem"}}),_jsxruntime.jsx.call(void 0, "div",{className:"h-3 w-10 animate-pulse",style:{backgroundColor:"var(--widget-secondary)",opacity:.5,borderRadius:"0.25rem"}})]})]},s))]}),J&&!te&&ae.length>0&&!h&&U==="all"&&_jsxruntime.jsxs.call(void 0, "div",{children:[_jsxruntime.jsx.call(void 0, "p",{className:"my-1 ml-4 text-xs",style:{color:"var(--widget-muted-foreground)"},children:"Your Tokens"}),ae.filter(e=>!e.assetInfo||f&&e.assetInfo.chainId===f.chainId&&e.assetInfo.address.toLowerCase()===f.address.toLowerCase()?!1:S?S.has(`${e.assetInfo.chainId}-${e.assetInfo.address.toLowerCase()}`):_chunkK3RTTHBScjs.i.call(void 0, e.assetInfo)||Be.has(`${e.assetInfo.chainId}-${e.assetInfo.address.toLowerCase()}`)).sort((e,s)=>{let r=`${e.chainId}-${(e.address||"").toLowerCase()}`,n=`${s.chainId}-${(s.address||"").toLowerCase()}`,u=k.get(r),g=k.get(n);if(u!==void 0&&g!==void 0)return u-g;if(u!==void 0)return-1;if(g!==void 0)return 1;let N=K(e.chainId,e.address)||e.assetInfo,w=K(s.chainId,s.address)||s.assetInfo,l=N&&e.decimals!==void 0?_chunkK3RTTHBScjs.u.call(void 0, N,e.balance,e.decimals):0;return(w&&s.decimals!==void 0?_chunkK3RTTHBScjs.u.call(void 0, w,s.balance,s.decimals):0)-l}).map(e=>!e.assetInfo||!f?null:_jsxruntime.jsx.call(void 0, Q,{asset:e,otherAsset:f,handleFormSelection:O,getToken:K},`${e.assetInfo.chainId}-${e.assetInfo.address}`))]}),_jsxruntime.jsx.call(void 0, "p",{className:"my-2 ml-4 text-xs",style:{color:"var(--widget-muted-foreground)"},children:h?"Search Results":"Supported Tokens"}),Le?_jsxruntime.jsx.call(void 0, "div",{className:"flex items-center justify-center p-8",children:_jsxruntime.jsx.call(void 0, "span",{style:{color:"var(--widget-muted-foreground)"},children:"Loading tokens..."})}):se.length===0?_jsxruntime.jsx.call(void 0, "div",{className:"px-4 py-3 text-sm",style:{color:"var(--widget-muted-foreground)"},children:"Token Not Found"}):se.map(e=>_jsxruntime.jsxs.call(void 0, "div",{role:"button",tabIndex:0,className:"w-full flex items-center justify-between p-3 cursor-pointer",style:{borderBottom:"1px solid var(--widget-border)"},onClick:()=>O(e),onKeyDown:s=>{(s.key==="Enter"||s.key===" ")&&(s.preventDefault(),O(e))},children:[_jsxruntime.jsxs.call(void 0, "div",{className:"flex items-center space-x-3 min-w-0 flex-1",children:[_jsxruntime.jsx.call(void 0, _chunkK3RTTHBScjs.O,{asset:e,size:"sm",className:"flex-shrink-0"}),_jsxruntime.jsxs.call(void 0, "div",{className:"flex flex-col items-start min-w-0 flex-1",children:[_jsxruntime.jsx.call(void 0, "span",{className:"text-sm font-thin truncate",style:{color:"var(--widget-secondary-foreground)"},children:(e.symbol||"").length>20?`${e.symbol.substring(0,20)}...`:e.symbol||"\u2014"}),_jsxruntime.jsx.call(void 0, "span",{className:"text-xs truncate",style:{color:"var(--widget-muted-foreground)"},children:(e.name||"").length>20?`${e.name.substring(0,20)}...`:e.name||"\u2014"})]})]}),_jsxruntime.jsxs.call(void 0, "div",{className:"flex flex-col items-end text-right flex-shrink-0",children:[_jsxruntime.jsx.call(void 0, "span",{className:"text-xs font-sans",style:{color:"var(--widget-muted-foreground)"},children:e.price?`$${e.price>=999999?`${(e.price/1e6).toFixed(2)}M`:e.price.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:e.price<1?5:2})}`:"\u2014"}),_jsxruntime.jsxs.call(void 0, "span",{className:"text-xs font-sans",style:{color:"var(--widget-foreground)",opacity:.5},children:[_optionalChain([e, 'access', _12 => _12.address, 'optionalAccess', _13 => _13.slice, 'call', _14 => _14(0,6)]),"...",_optionalChain([e, 'access', _15 => _15.address, 'optionalAccess', _16 => _16.slice, 'call', _17 => _17(-4)])]})]})]},`${e.chainId}-${e.address}`))]})]})},ns= exports.a =Fe;exports.a = ns;
@@ -0,0 +1,2 @@
1
+ "use client";
2
+ import{G as s}from"./chunk-QAOZRRSH.js";import{createContext as p,useContext as c,useMemo as g}from"react";var h=p({apiKey:void 0,web3ConnectionType:"custom",enabledChains:[],supportedInputTokens:[],supportedOutputTokens:[],supportedInputChains:[],supportedOutputChains:[],prioritizedInputTokens:[],prioritizedInputChains:[],inputSelectionSearch:!0,outputSelectionSearch:!0,showInputSelectionTokenBalances:!0,showOutputSelectionTokenBalances:!0,lockBase:!1,lockQuote:!1,disableInverting:!1,defaultSlippage:.01,widgetType:"default",tokenDisplay:"default",tokenBadgeOrientation:"left",assetMenuVariant:"default",amountInputVariant:"default",hideAmountInputSymbol:!1,swapButtonVariant:"default",swapHeaderVariant:"default",quoteLoaderVariant:"default",walletButtonEnabled:!0,hasConnectHandler:!1,customWalletUI:"builtin"});function r(){let t=c(h);return g(()=>t.widgetType==="compact"?{...t,amountInputVariant:"normal"}:t,[t])}import{useMemo as S}from"react";function v(){let{availableChainIds:t}=s(),{enabledChains:e,supportedInputTokens:n,supportedOutputTokens:a}=r();return S(()=>{let i=t,u=n.length>0,d=a.length>0;if(u&&d){let l=new Set([...n.map(o=>o.chainId),...a.map(o=>o.chainId)]);i=i.filter(o=>l.has(o))}else e.length>0&&(i=i.filter(l=>e.includes(l)));return i},[t,e,n,a])}import{create as T}from"zustand";var A=T()(t=>({view:"swap",isTransitioning:!1,transitionType:"navigation",isInverted:!1,selectedChainFilter:null,hoveredChainName:null,isRecipientInputOpen:!1,recipient:null,hasAllowanceError:!1,baseAmount:null,quoteAmount:null,isTrackingTx:!1,trackingOrderHash:null,txStatus:"pending",explorerUrl:null,exitHandler:null,walletTab:"wallet",assetSelectionSearch:"",assetSelectionChain:"all",assetSelectionCategory:"all",assetSelectionAddressInput:"",recentChainIds:[],toggleInverted:()=>t(e=>({isInverted:!e.isInverted})),setView:e=>t({view:e,isTransitioning:!0,...e!=="wallet"&&{walletTab:"wallet"}}),setWalletTab:e=>t({walletTab:e}),setIsTransitioning:e=>t({isTransitioning:e}),transitionToView:(e,n="navigation")=>t({isTransitioning:!0,transitionType:n,view:e,...e!=="wallet"&&{walletTab:"wallet"}}),setChainFilter:e=>t({selectedChainFilter:e}),setHoveredChainName:e=>t({hoveredChainName:e}),toggleRecipientInput:()=>t(e=>({isRecipientInputOpen:!e.isRecipientInputOpen,recipient:e.isRecipientInputOpen?null:e.recipient})),setRecipient:e=>t({recipient:e}),setHasAllowanceError:e=>t({hasAllowanceError:e}),setBaseAmount:e=>t({baseAmount:e}),setQuoteAmount:e=>t({quoteAmount:e}),clearAmounts:()=>t({baseAmount:null,quoteAmount:null}),setIsTrackingTx:e=>t({isTrackingTx:e}),setTrackingOrderHash:e=>t({trackingOrderHash:e}),setTxStatus:e=>t({txStatus:e}),setExplorerUrl:e=>t({explorerUrl:e}),startTracking:e=>t({isTrackingTx:!0,trackingOrderHash:e,txStatus:"pending",explorerUrl:null}),stopTracking:()=>t({isTrackingTx:!1,trackingOrderHash:null,txStatus:"pending",explorerUrl:null,exitHandler:null}),setExitHandler:e=>t({exitHandler:e}),setAssetSelectionSearch:e=>t({assetSelectionSearch:e}),setAssetSelectionChain:e=>t({assetSelectionChain:e}),setAssetSelectionCategory:e=>t({assetSelectionCategory:e}),setAssetSelectionAddressInput:e=>t({assetSelectionAddressInput:e}),pushRecentChain:e=>t(n=>{let a=n.recentChainIds.filter(i=>i!==e);return{recentChainIds:[e,...a].slice(0,3)}}),resetAssetSelection:()=>t({assetSelectionSearch:"",assetSelectionChain:"all",assetSelectionCategory:"all",assetSelectionAddressInput:""}),resetUI:()=>t({view:"swap",isTransitioning:!1,isInverted:!1,selectedChainFilter:null,hoveredChainName:null,isRecipientInputOpen:!1,recipient:null,hasAllowanceError:!1,baseAmount:null,quoteAmount:null,isTrackingTx:!1,trackingOrderHash:null,txStatus:"pending",explorerUrl:null,exitHandler:null,walletTab:"wallet",assetSelectionSearch:"",assetSelectionChain:"all",assetSelectionCategory:"all",assetSelectionAddressInput:""})}));export{h as a,r as b,v as c,A as d};
@@ -0,0 +1,2 @@
1
+ "use client";
2
+ import{a as b}from"./chunk-UHG7ZIWD.js";import{c as C}from"./chunk-GPT4NHM5.js";import{N as h,e as g,x as v}from"./chunk-QAOZRRSH.js";import k,{useCallback as M,useMemo as L,useState as z}from"react";import{jsx as t,jsxs as a}from"react/jsx-runtime";var P=({toggle:D,side:y,onChainSelect:u,onChainHover:p,containerHeight:E})=>{let[i,m]=z(""),l=v(i,300),x=C(),s=g(x),{effectivePrioritizedInputChains:w}=b(),n=y==="base"?w:[],d=L(()=>{if(n.length===0)return s;let e=new Set(n),r=new Map(n.map((o,c)=>[o,c])),S=s.filter(o=>e.has(o.id)).sort((o,c)=>(r.get(o.id)??0)-(r.get(c.id)??0)),I=s.filter(o=>!e.has(o.id));return[...S,...I]},[s,n]),f=k.useMemo(()=>{if(!l)return d;let e=l.toLowerCase();return d.filter(r=>r.displayName.toLowerCase().includes(e)||r.name.toLowerCase().includes(e)||r.id.toString().includes(e))},[d,l]),N=M(e=>u(e),[u]);return a("div",{className:"w-full h-full flex flex-col",children:[t("div",{className:"flex-shrink-0",children:a("div",{className:"relative mt-3",children:[t("input",{className:"w-full h-10 px-4 text-sm",style:{backgroundColor:"var(--widget-card)",color:"var(--widget-card-foreground)",border:"1px solid var(--widget-border)"},placeholder:"Search chains by name or chain ID...",autoComplete:"off",value:i,onChange:e=>m(e.target.value.toLowerCase())}),i&&t("button",{type:"button",onClick:()=>m(""),className:"absolute right-2 top-1/2 -translate-y-1/2 cursor-pointer rounded-full px-2 py-1 text-xs",style:{backgroundColor:"var(--widget-secondary)",color:"var(--widget-secondary-foreground)",border:"1px solid var(--widget-border)"},children:"clear"})]})}),a("div",{className:"flex-1 min-h-0 overflow-auto mt-2 pb-4",style:{backgroundColor:"var(--widget-background)"},children:[t("p",{className:"my-2 ml-4 text-xs",style:{color:"var(--widget-muted-foreground)"},children:i?"Search Results":"Available Chains"}),f.length===0?t("div",{className:"px-4 py-3 text-sm",style:{color:"var(--widget-muted-foreground)"},children:"Chain Not Found"}):f.map(e=>a("button",{type:"button",className:"w-full flex items-center justify-between p-3 cursor-pointer transition-colors",style:{borderBottom:"1px solid var(--widget-border)"},onClick:()=>N(e.id),onMouseEnter:()=>p?.(e.displayName),onMouseLeave:()=>p?.(null),children:[a("div",{className:"flex items-center space-x-3 min-w-0 flex-1",children:[t("div",{className:"flex-shrink-0",children:t(h,{chain:e.id,size:"md"})}),t("span",{className:"text-base font-medium truncate",style:{color:"var(--widget-foreground)"},children:e.displayName})]}),a("span",{className:"text-xs font-sans",style:{color:"var(--widget-muted-foreground)"},children:["Chain ID: ",e.id]})]},e.id))]})]})},F=P;export{F as a};