@initia/interwovenkit-react 2.0.0-rc.1 → 2.0.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var $o=Object.defineProperty;var Eo=(e,s,n)=>s in e?$o(e,s,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[s]=n;var Nn=(e,s,n)=>Eo(e,typeof s!="symbol"?s+"":s,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ve=require("ethers"),B=require("@cosmjs/encoding"),E=require("bignumber.js"),z=require("ky"),nr=require("@mysten/bcs"),p=require("react"),ge=require("wagmi"),k=require("@tanstack/react-query"),ht=require("cosmjs-types/cosmos/tx/v1beta1/tx"),Ce=require("jotai"),t=require("react/jsx-runtime"),N=require("ramda"),To=require("cosmjs-types/cosmos/tx/signing/v1beta1/signing"),Us=require("@cosmjs/amino/build/signdoc"),In=require("@cosmjs/crypto"),Sn=require("@cosmjs/math"),cs=require("@cosmjs/proto-signing"),Ee=require("@cosmjs/stargate"),kn=require("@cosmjs/tendermint-rpc"),At=require("@initia/amino-converter"),zs=require("cosmjs-types/cosmos/crypto/secp256k1/keys"),Ao=require("cosmjs-types/cosmos/auth/v1beta1/auth"),ns=require("@cosmjs/amino"),qo=require("cosmjs-types/google/protobuf/any"),rr=require("jotai/utils"),Ue=require("@lukemorales/query-key-factory"),tt=require("@noble/hashes/utils"),Do=require("@noble/hashes/sha2"),tn=require("@noble/hashes/sha3"),q=require("radix-ui"),or=require("react-error-boundary"),P=require("clsx"),$n=require("nanoid"),ar=require("react-dom"),Te=require("@react-spring/web"),b=require("@initia/icons-react"),ls=require("change-case"),de=require("react-use"),Po=require("react-image"),ir=require("xss"),ft=require("date-fns"),Fo=require("react-intersection-observer"),Q=require("zod"),ne=require("react-hook-form"),sn=require("@hookform/resolvers/zod"),Bo=require("cosmjs-types/cosmos/bank/v1beta1/tx"),cr=require("react-merge-refs"),Ro=require("@initia/opinit.proto/opinit/ophost/v1/tx"),Oo=console.error,Mo=console.warn,Uo="`DialogContent` requires a `DialogTitle`",zo="Missing `Description`";console.error=(...e)=>{e.some(n=>typeof n=="string"&&n.includes(Uo))||Oo(...e)};console.warn=(...e)=>{e.some(n=>typeof n=="string"&&n.includes(zo))||Mo(...e)};const F={toBytes(e,s=20){if(!e)throw new Error("address is required");if(e.match(/^(0x)?[0-9a-fA-F]+$/)){const r=e.replace(/^0x/,"").padStart(s*2,"0");return B.fromHex(r)}const{data:n}=B.fromBech32(e);return n.length>=s?n:new Uint8Array([...Array(s-n.length).fill(0),...n])},toBech32(e,s="init"){return e?B.toBech32(s,F.toBytes(e)):""},toHex(e){return e?B.toHex(F.toBytes(e)):""},toPrefixedHex(e){if(!e)return"";const s=ve.getAddress(F.toHex(e)),n=F.toBytes(e),r=n[n.length-1];return n.subarray(0,n.length-1).every(a=>a===0)&&r<16?s.replace(/^0x0+/,"0x"):s},validate(e,s="init"){if(ve.isAddress(e))return!0;try{return B.fromBech32(e).prefix===s}catch{return!1}},equals(e,s){return F.toBech32(e)===F.toBech32(s)}};function se(e="",[s,n]=[6,6]){const r=e.slice(0,s),o=e.slice(-1*n,e.length);return e.length>s+n?[r,o].join("..."):e}function rt(e,s={}){const n=E(e);if(n.isZero()||n.isNaN())return"0";const{dp:r=2}=s;return n.toFormat(r,E.ROUND_DOWN)}function re(e,s={}){if(!e)return"0";const n=E(e);if(n.isZero()||n.isNaN())return"0";const{decimals:r=0,dp:o=r>6?6:r}=s,a=n.div(new E(10).pow(r));return rt(a,{dp:o})}function ds(e,s=6){return!e||E(e).isNaN()?"0":new E(e).times(new E(10).pow(s)).integerValue().toString(10)}function qt(e,s=6){if(!e||E(e).isNaN())return"0";const n=Math.min(s,6);return new E(e).integerValue().div(new E(10).pow(s)).toFixed(n,E.ROUND_DOWN)}function Ko(e,s){if(!e||E(e).isNaN())return"0%";const n=new E(e).times(100);return typeof s=="number"?n.toFixed(s)+"%":(n.gte(100)?n.toFixed(0):n.toFixed(2))+"%"}const En="usernames";function lr({restUrl:e,moduleAddress:s}){const n=z.create({prefixUrl:e});async function r(d){const{moduleAddress:c,moduleName:l,functionName:u,typeArgs:m,args:h}=d,_=`initia/move/v1/accounts/${c}/modules/${l}/view_functions/${u}`,x={type_args:m,args:h},{data:f,message:y}=await n.post(_,{json:x}).json();if(y)throw new Error(y);return JSON.parse(f)}async function o(d){if(!F.validate(d))return null;const c=await r({moduleAddress:s,moduleName:En,functionName:"get_name_from_address",typeArgs:[],args:[B.toBase64(F.toBytes(d,32))]});return c?c+".init":null}function a(d){return/^[A-Za-z0-9-]{3,64}\.init$/.test(d)}async function i(d){if(!a(d))return null;const c=await r({moduleAddress:s,moduleName:En,functionName:"get_address_from_name",typeArgs:[],args:[nr.bcs.string().serialize(d.toLowerCase().replace(".init","")).toBase64()]});return c?F.toBech32(c):null}return{restUrl:e,getUsername:o,getAddress:i,validateUsername:a}}const dr=p.createContext(null);function oe(){return p.useContext(dr)}const Ks="interwoven-kit";function ur(){const e=document.querySelector(Ks)||document.body.appendChild(document.createElement(Ks));return e.shadowRoot||e.attachShadow({mode:"open"})}function Ho(){const{theme:e}=oe();return p.useEffect(()=>{const s=document.querySelector(Ks);s==null||s.setAttribute("data-theme",e)},[e]),ur()}function Lo(e){const s=ur(),n=document.createElement("style");n.textContent=e,s.appendChild(n)}const nn=1.4,mr=1.03,hr={defaultChainId:"interwoven-1",registryUrl:"https://registry.initia.xyz",routerApiUrl:"https://router-api.initia.xyz",usernamesModuleAddress:"0x72ed9b26ecdcd6a21d304df50f19abfdbe31d2c02f60c84627844620a45940ef",theme:"dark"},Wo={defaultChainId:"initiation-2",registryUrl:"https://registry.testnet.initia.xyz",routerApiUrl:"https://router-api.initiation-2.initia.xyz",usernamesModuleAddress:"0x42cd8467b1c86e59bf319e5664a09b6b5840bb3fac64f5ce690b5041c530565a",theme:"dark"},_r=p.createContext(null);function us(){return p.useContext(_r)}function fr(){const{location:e}=us();return e}function pr(){const{path:e}=fr();return e}function ze(){const{state:e={}}=fr();return e}function Qo(){const{history:e}=us();return e}function me(){const{navigate:e}=us();return e}function Vo(){const{reset:e}=us();return e}const xr=({children:e,initialEntry:s})=>{const[n,r]=p.useState([s??{path:"/"}]),o=n[n.length-1],a=p.useCallback((d,c)=>{r(l=>{if(typeof d=="string")return[...l,{path:d,state:c}];const u=l.length+d;if(u<1)return l;const m=N.take(u,l);return c!==void 0?N.adjust(u-1,h=>({...h,state:c}),m):m})},[]),i=p.useCallback((d,c)=>{r([{path:d,state:c}])},[]);return t.jsx(_r.Provider,{value:{location:o,history:n,navigate:a,reset:i},children:e})},Rt=({to:e,state:s,children:n,onClick:r,...o})=>{const a=me(),i=d=>{d.preventDefault(),r==null||r(d),a(e,s)};return t.jsx("button",{type:"button",...o,onClick:i,children:n})},gr=p.createContext(null),ms=()=>p.useContext(gr),K={SECOND:1e3,MINUTE:1e3*60,INFINITY:1e3*60*60};async function Ke(e){if(e instanceof z.HTTPError){const{response:s}=e,n=s.headers.get("content-type")??"";if(N.includes("application/json",n))try{const r=await s.json();if(r.message)return r.message}catch{return e.message}try{return await s.text()}catch{return e.message}}if(e instanceof Error){if(N.path(["code"],e)===4001||N.path(["code"],e)==="ACTION_REJECTED")return"User rejected";const s=N.path(["error","message"],e),n=N.path(["cause","message"],e),r=N.path(["shortMessage"],e);return s||n||r||e.message}return String(e)}function Go(e){if((e==null?void 0:e.typeUrl)==="/initia.crypto.v1beta1.ethsecp256k1.PubKey"){const{key:s}=zs.PubKey.decode(e.value);return ns.encodeSecp256k1Pubkey(s)}return cs.decodeOptionalPubkey(e)}function Yo({typeUrl:e,value:s}){if(e==="/cosmos.auth.v1beta1.BaseAccount"){const{address:n,pubKey:r,accountNumber:o,sequence:a}=Ao.BaseAccount.decode(s),i=Go(r);return{address:n,pubkey:i,accountNumber:Number(o),sequence:Number(a)}}return Ee.accountFromAny({typeUrl:e,value:s})}function Jo(e){return e.type==="initia/PubKeyEthSecp256k1"}const Zo={...ns.pubkeyType,ethsecp256k1:"initia/PubKeyEthSecp256k1"};function Xo(e){if(Jo(e)){const s=zs.PubKey.fromPartial({key:B.fromBase64(e.value)});return qo.Any.fromPartial({typeUrl:"/initia.crypto.v1beta1.ethsecp256k1.PubKey",value:Uint8Array.from(zs.PubKey.encode(s).finish())})}return cs.encodePubkey(e)}function yr(e){if(e.length!==33||e[0]!==2&&e[0]!==3)throw new Error("Public key must be compressed secp256k1, i.e. 33 bytes starting with 0x02 or 0x03");return{type:Zo.ethsecp256k1,value:B.toBase64(e)}}function ea(e,s){if(s.length!==64)throw new Error("Signature must be 64 bytes long. Cosmos SDK uses a 2x32 byte fixed length encoding for the secp256k1 signature integers r and s.");return{pub_key:yr(e),signature:B.toBase64(s)}}const te="interwovenkit",H={ADDED_CHAIN_IDS:`${te}:chain-ids:added`,OPENED_CHAIN_IDS:`${te}:chain-ids:opened`,PUBLIC_KEY:`${te}:public-key`,LATEST_CONNECTOR_ID:`${te}:latest-connector-id`,FEE_DENOM:`${te}:fee-denom`,BRIDGE_SRC_CHAIN_ID:`${te}:bridge:src-chain-id`,BRIDGE_SRC_DENOM:`${te}:bridge:src-denom`,BRIDGE_DST_CHAIN_ID:`${te}:bridge:dst-chain-id`,BRIDGE_DST_DENOM:`${te}:bridge:dst-denom`,BRIDGE_QUANTITY:`${te}:bridge:quantity`,BRIDGE_SLIPPAGE_PERCENT:`${te}:bridge:slippage-percent`,BRIDGE_ROUTE_TYPE:`${te}:bridge:route-type`,BRIDGE_HISTORY:`${te}:bridge:history`,OP_REMINDER:`${te}:op:reminder`},rn=Ue.createQueryKeys("interwovenkit:chain",{list:e=>[e],prices:e=>[e],gasPrices:e=>[e]}),ta=rr.atomWithStorage(H.ADDED_CHAIN_IDS,[]);function zt(e){const s=N.path([0,"address"],e);if(!s)throw new Error("URL not found");return s}function sa(e){var w;const{chain_id:s,chain_name:n,pretty_name:r,logo_URIs:o,apis:a,metadata:i}=e,d=r||n,c=(o==null?void 0:o.png)??"",{rpc:l,rest:u,api:m,["json-rpc"]:h}=a,_=zt(l),x=zt(u),f=i!=null&&i.is_l1?zt(m):x,y=((w=i==null?void 0:i.minitia)==null?void 0:w.type)==="minievm"?zt(h):void 0;return{...e,chainId:s,name:d,logoUrl:c,rpcUrl:_,restUrl:x,indexerUrl:f,jsonRpcUrl:y}}function He(){const{defaultChainId:e,registryUrl:s,customChain:n}=oe(),{data:r}=k.useSuspenseQuery({queryKey:rn.list(s).queryKey,queryFn:()=>z.create({prefixUrl:s}).get("chains.json").json(),select:o=>(n?[n,...o.filter(i=>i.chain_id!==n.chain_id)]:o).map(sa).toSorted(N.descend(i=>i.chainId===e)),staleTime:K.MINUTE});return r}function it(){const e=He();return s=>{const n=e.find(r=>r.chain_id===s);if(!n)throw new Error(`Chain not found: ${s}`);return n}}function Ie(e){return it()(e)}function hs(){const{defaultChainId:e}=oe();return Ie(e)}function ye(){const s=He().find(n=>{var r;return(r=n.metadata)==null?void 0:r.is_l1});if(!s)throw new Error("Layer 1 not found");return s}function jr(e){return k.useQuery({queryKey:rn.prices(e).queryKey,queryFn:()=>z.create({prefixUrl:"https://celatone-api-prod.alleslabs.dev"}).get(`v1/initia/${e}/assets`,{searchParams:{with_prices:!0}}).json(),staleTime:K.SECOND})}function pt(){const e=He(),{defaultChainId:s}=oe(),[n,r]=Ce.useAtom(ta),o=l=>N.uniq([s,...l]),a=o(n).map(l=>e.find(u=>u.chainId===l)).filter(Boolean),i=e.filter(l=>!o(n).includes(l.chainId));return{chains:e,addedChains:a,notAddedChains:i,addChain:l=>{r(u=>o([...u,l]))},removeChain:l=>{r(u=>o(u.filter(m=>m!==l)))}}}const on=()=>{const e=oe();return new cs.Registry([...At.protoRegistry,...e.protoTypes??[]])},_s=()=>{const e=oe();return new Ee.AminoTypes({...At.aminoConverters,...e.aminoConverters})};class na{constructor(s,n){Nn(this,"cachedPublicKey",null);this.address=s,this.signMessage=n}async getCachedPublicKey(){if(this.cachedPublicKey)return this.cachedPublicKey;const s=`${H.PUBLIC_KEY}:${this.address}`,n=localStorage.getItem(s);if(n)return this.cachedPublicKey=B.fromHex(n),B.fromHex(n);const r=await this.getPublicKey();return this.cachedPublicKey=r,localStorage.setItem(s,B.toHex(r)),r}async getPublicKey(){const s="Sign this message to identify your Initia account.",n=await this.signMessage(s),r=ve.ethers.hashMessage(s),o=ve.ethers.SigningKey.recoverPublicKey(r,n);return In.Secp256k1.compressPubkey(B.fromHex(o.replace("0x","")))}async getAccounts(){return[{address:this.address,algo:"ethsecp256k1",pubkey:await this.getCachedPublicKey()}]}async signAmino(s,n){if(this.address!==s)throw new Error("Signer address does not match the provided address");const r=Us.escapeCharacters(Us.sortedJsonStringify(n)),o=await this.signMessage(r),a=B.fromHex(o.replace("0x","")).subarray(0,-1),d=In.Secp256k1Signature.fromFixedLength(a).toFixedLength(),c=ea(await this.getCachedPublicKey(),d);return{signed:n,signature:c}}}function wr(){const e=on(),s=_s(),n=fs(),r=br();return async function(o,a,i,d,c){if(!n)throw new Error("Signer not initialized");const l=await r(o),{accountNumber:u,sequence:m}=await l.getSequence(a),[h]=await n.getAccounts(),_=Xo(yr(h.pubkey)),x=To.SignMode.SIGN_MODE_EIP_191,f=i.map(S=>s.toAmino(S)),y=Us.makeSignDoc(f,d,o,c,u,m),{signature:w,signed:j}=await n.signAmino(a,y),C={typeUrl:"/cosmos.tx.v1beta1.TxBody",value:{messages:j.msgs.map(S=>s.fromAmino(S)),memo:c}},I=e.encode(C),D=Sn.Int53.fromString(j.fee.gas).toNumber(),v=Sn.Int53.fromString(j.sequence).toNumber(),g=cs.makeAuthInfoBytes([{pubkey:_,sequence:v}],j.fee.amount,D,j.fee.granter,j.fee.payer,x);return ht.TxRaw.fromPartial({bodyBytes:I,authInfoBytes:g,signatures:[B.fromBase64(w.signature)]})}}function fs(){const e=X(),{signMessageAsync:s}=ge.useSignMessage();return new na(e,n=>s({message:n}))}const Is=new Map;function br(){const e=it(),s=on(),n=_s(),r=fs(),o=X();return async a=>{const i=`${o}:${a}`;if(Is.has(i))return Is.get(i);if(!r)throw new Error("Signer not initialized");const{rpcUrl:d}=e(a),c=await kn.Comet38Client.create(new kn.HttpClient(d)),l=await Ee.SigningStargateClient.createWithSigner(c,r,{registry:s,aminoTypes:n,accountParser:Yo,broadcastPollIntervalMs:1e3});return Is.set(i,l),l}}function vr(){const{connector:e}=ge.useAccount();return async()=>{if(!e)throw new Error("Wallet not connected");return new ve.BrowserProvider(await e.getProvider())}}const ra=Ce.atom(!1);function xt(){const e=Vo(),[s,n]=Ce.useAtom(ra);return{isDrawerOpen:s,openDrawer:(a,i)=>{a&&e(a,i),n(!0)},closeDrawer:()=>{n(!1)}}}const oa="approve",Cr=Ce.atom(),Nr=Ce.atom(null);function Ir(){const e=Ce.useAtomValue(Cr);if(!e)throw new Error("Tx request not found");return e}function aa(){const e=me(),s=X(),{defaultChainId:n}=oe(),{openDrawer:r,closeDrawer:o}=xt(),{openModal:a,closeModal:i}=ms(),d=Ce.useSetAtom(Cr),c=Ce.useSetAtom(Nr),l=br(),u=async({messages:f,memo:y,chainId:w=n})=>{try{return await(await l(w)).simulate(s,f,y)}catch(j){throw new Error(await Ke(j))}},m=async({txRequest:f,broadcaster:y})=>{const j={...{memo:"",chainId:n,gas:f.gas||await u(f),gasAdjustment:nn,fee:null,internal:!1},...f};return new Promise((T,C)=>{d({txRequest:j,resolve:async D=>{try{const v=await l(j.chainId),g=await y(v,ht.TxRaw.encode(D).finish());T(g),typeof j.internal=="string"&&e(j.internal)}catch(v){C(v)}finally{I()}},reject:D=>{C(D),I()}}),j.internal?a({path:"/tx"}):r("/tx");const I=()=>{if(!j.internal){e("/blank"),o();return}i()}})},h=async f=>{const y=f.chainId??n;try{const w=await m({txRequest:f,broadcaster:async(j,T)=>await j.broadcastTxSync(T)});return f.internal&&typeof f.internal!="number"&&(c({txHash:w,chainId:y,status:"loading"}),x({txHash:w,chainId:f.chainId}).then(j=>{c({status:j.code===0?"success":"error",chainId:y,txHash:w})}).catch(()=>{c({status:"error",chainId:y,txHash:w})})),w}catch(w){throw f.internal&&typeof f.internal!="number"&&c({status:"error",chainId:y,error:w}),w}},_=f=>m({txRequest:f,broadcaster:async(y,w)=>{const j=await y.broadcastTx(w);if(j.code!==0)throw new Error(j.rawLog);return j}}),x=async({chainId:f=n,...y})=>{const w=await l(f);return Sr({...y,client:w})};return{estimateGas:u,requestTxSync:h,requestTxBlock:_,waitForTxConfirmation:x}}async function Sr({txHash:e,client:s,timeoutSeconds:n=30,intervalSeconds:r=1}){const o=Date.now(),a=n*1e3;for(;;){const i=await s.getTx(e);if(i){if(i.code!==0)throw new Error(i.rawLog);return i}if(Date.now()-o>=a)throw new Error(`Transaction was submitted, but not found on the chain within ${n} seconds.`);await new Promise(d=>setTimeout(d,r*1e3))}}const ia=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 60 60">
1
+ "use strict";var To=Object.defineProperty;var Do=(e,s,n)=>s in e?To(e,s,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[s]=n;var In=(e,s,n)=>Do(e,typeof s!="symbol"?s+"":s,n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const be=require("ethers"),B=require("@cosmjs/encoding"),E=require("bignumber.js"),z=require("ky"),rr=require("@mysten/bcs"),p=require("react"),ye=require("wagmi"),$=require("@tanstack/react-query"),ht=require("cosmjs-types/cosmos/tx/v1beta1/tx"),pe=require("jotai"),t=require("react/jsx-runtime"),I=require("ramda"),qo=require("cosmjs-types/cosmos/tx/signing/v1beta1/signing"),zs=require("@cosmjs/amino/build/signdoc"),Sn=require("@cosmjs/crypto"),$n=require("@cosmjs/math"),cs=require("@cosmjs/proto-signing"),ke=require("@cosmjs/stargate"),kn=require("@cosmjs/tendermint-rpc"),At=require("@initia/amino-converter"),Ks=require("cosmjs-types/cosmos/crypto/secp256k1/keys"),Po=require("cosmjs-types/cosmos/auth/v1beta1/auth"),ns=require("@cosmjs/amino"),Fo=require("cosmjs-types/google/protobuf/any"),or=require("jotai/utils"),Ue=require("@lukemorales/query-key-factory"),tt=require("@noble/hashes/utils"),Bo=require("@noble/hashes/sha2"),sn=require("@noble/hashes/sha3"),T=require("radix-ui"),ar=require("react-error-boundary"),P=require("clsx"),En=require("nanoid"),ir=require("react-dom"),Ee=require("@react-spring/web"),b=require("@initia/icons-react"),ls=require("change-case"),le=require("react-use"),Ro=require("react-image"),cr=require("xss"),ft=require("date-fns"),Oo=require("react-intersection-observer"),Q=require("zod"),se=require("react-hook-form"),nn=require("@hookform/resolvers/zod"),Mo=require("cosmjs-types/cosmos/bank/v1beta1/tx"),lr=require("react-merge-refs"),Uo=require("@initia/opinit.proto/opinit/ophost/v1/tx"),F={toBytes(e,s=20){if(!e)throw new Error("address is required");if(e.match(/^(0x)?[0-9a-fA-F]+$/)){const r=e.replace(/^0x/,"").padStart(s*2,"0");return B.fromHex(r)}const{data:n}=B.fromBech32(e);return n.length>=s?n:new Uint8Array([...Array(s-n.length).fill(0),...n])},toBech32(e,s="init"){return e?B.toBech32(s,F.toBytes(e)):""},toHex(e){return e?B.toHex(F.toBytes(e)):""},toPrefixedHex(e){if(!e)return"";const s=be.getAddress(F.toHex(e)),n=F.toBytes(e),r=n[n.length-1];return n.subarray(0,n.length-1).every(a=>a===0)&&r<16?s.replace(/^0x0+/,"0x"):s},validate(e,s="init"){if(be.isAddress(e))return!0;try{return B.fromBech32(e).prefix===s}catch{return!1}},equals(e,s){return F.toBech32(e)===F.toBech32(s)}};function te(e="",[s,n]=[6,6]){const r=e.slice(0,s),o=e.slice(-1*n,e.length);return e.length>s+n?[r,o].join("..."):e}function rt(e,s={}){const n=E(e);if(n.isZero()||n.isNaN())return"0";const{dp:r=2}=s;return n.toFormat(r,E.ROUND_DOWN)}function ne(e,s={}){if(!e)return"0";const n=E(e);if(n.isZero()||n.isNaN())return"0";const{decimals:r=0,dp:o=r>6?6:r}=s,a=n.div(new E(10).pow(r));return rt(a,{dp:o})}function ds(e,s=6){return!e||E(e).isNaN()?"0":new E(e).times(new E(10).pow(s)).integerValue().toString(10)}function Tt(e,s=6){if(!e||E(e).isNaN())return"0";const n=Math.min(s,6);return new E(e).integerValue().div(new E(10).pow(s)).toFixed(n,E.ROUND_DOWN)}function zo(e,s){if(!e||E(e).isNaN())return"0%";const n=new E(e).times(100);return typeof s=="number"?n.toFixed(s)+"%":(n.gte(100)?n.toFixed(0):n.toFixed(2))+"%"}const An="usernames";function dr({restUrl:e,moduleAddress:s}){const n=z.create({prefixUrl:e});async function r(l){const{moduleAddress:c,moduleName:d,functionName:u,typeArgs:m,args:h}=l,_=`initia/move/v1/accounts/${c}/modules/${d}/view_functions/${u}`,x={type_args:m,args:h},{data:f,message:y}=await n.post(_,{json:x}).json();if(y)throw new Error(y);return JSON.parse(f)}async function o(l){if(!F.validate(l))return null;const c=await r({moduleAddress:s,moduleName:An,functionName:"get_name_from_address",typeArgs:[],args:[B.toBase64(F.toBytes(l,32))]});return c?c+".init":null}function a(l){return/^[A-Za-z0-9-]{3,64}\.init$/.test(l)}async function i(l){if(!a(l))return null;const c=await r({moduleAddress:s,moduleName:An,functionName:"get_address_from_name",typeArgs:[],args:[rr.bcs.string().serialize(l.toLowerCase().replace(".init","")).toBase64()]});return c?F.toBech32(c):null}return{restUrl:e,getUsername:o,getAddress:i,validateUsername:a}}const ur=p.createContext(null);function re(){return p.useContext(ur)}const Hs="interwoven-kit";function mr(){const e=document.querySelector(Hs)||document.body.appendChild(document.createElement(Hs));return e.shadowRoot||e.attachShadow({mode:"open"})}function Ko(){const{theme:e}=re();return p.useEffect(()=>{const s=document.querySelector(Hs);s==null||s.setAttribute("data-theme",e)},[e]),mr()}function Ho(e){const s=mr(),n=document.createElement("style");n.textContent=e,s.appendChild(n)}const rn=1.4,hr=1.03,_r={defaultChainId:"interwoven-1",registryUrl:"https://registry.initia.xyz",routerApiUrl:"https://router-api.initia.xyz",usernamesModuleAddress:"0x72ed9b26ecdcd6a21d304df50f19abfdbe31d2c02f60c84627844620a45940ef",theme:"dark"},Lo={defaultChainId:"initiation-2",registryUrl:"https://registry.testnet.initia.xyz",routerApiUrl:"https://router-api.initiation-2.initia.xyz",usernamesModuleAddress:"0x42cd8467b1c86e59bf319e5664a09b6b5840bb3fac64f5ce690b5041c530565a",theme:"dark"},fr=p.createContext(null);function us(){return p.useContext(fr)}function pr(){const{location:e}=us();return e}function xr(){const{path:e}=pr();return e}function ze(){const{state:e={}}=pr();return e}function Wo(){const{history:e}=us();return e}function ue(){const{navigate:e}=us();return e}function Qo(){const{reset:e}=us();return e}const gr=({children:e,initialEntry:s})=>{const[n,r]=p.useState([s??{path:"/"}]),o=n[n.length-1],a=p.useCallback((l,c)=>{r(d=>{if(typeof l=="string")return[...d,{path:l,state:c}];const u=d.length+l;if(u<1)return d;const m=I.take(u,d);return c!==void 0?I.adjust(u-1,h=>({...h,state:c}),m):m})},[]),i=p.useCallback((l,c)=>{r([{path:l,state:c}])},[]);return t.jsx(fr.Provider,{value:{location:o,history:n,navigate:a,reset:i},children:e})},Bt=({to:e,state:s,children:n,onClick:r,...o})=>{const a=ue(),i=l=>{l.preventDefault(),r==null||r(l),a(e,s)};return t.jsx("button",{type:"button",...o,onClick:i,children:n})},yr=p.createContext(null),ms=()=>p.useContext(yr),H={SECOND:1e3,MINUTE:1e3*60,INFINITY:1e3*60*60};async function Ke(e){if(e instanceof z.HTTPError){const{response:s}=e,n=s.headers.get("content-type")??"";if(I.includes("application/json",n))try{const r=await s.json();if(r.message)return r.message}catch{return e.message}try{return await s.text()}catch{return e.message}}if(e instanceof Error){if(I.path(["code"],e)===4001||I.path(["code"],e)==="ACTION_REJECTED")return"User rejected";const s=I.path(["error","message"],e),n=I.path(["cause","message"],e),r=I.path(["shortMessage"],e);return s||n||r||e.message}return String(e)}function Vo(e){if((e==null?void 0:e.typeUrl)==="/initia.crypto.v1beta1.ethsecp256k1.PubKey"){const{key:s}=Ks.PubKey.decode(e.value);return ns.encodeSecp256k1Pubkey(s)}return cs.decodeOptionalPubkey(e)}function Go({typeUrl:e,value:s}){if(e==="/cosmos.auth.v1beta1.BaseAccount"){const{address:n,pubKey:r,accountNumber:o,sequence:a}=Po.BaseAccount.decode(s),i=Vo(r);return{address:n,pubkey:i,accountNumber:Number(o),sequence:Number(a)}}return ke.accountFromAny({typeUrl:e,value:s})}function Yo(e){return e.type==="initia/PubKeyEthSecp256k1"}const Jo={...ns.pubkeyType,ethsecp256k1:"initia/PubKeyEthSecp256k1"};function Zo(e){if(Yo(e)){const s=Ks.PubKey.fromPartial({key:B.fromBase64(e.value)});return Fo.Any.fromPartial({typeUrl:"/initia.crypto.v1beta1.ethsecp256k1.PubKey",value:Uint8Array.from(Ks.PubKey.encode(s).finish())})}return cs.encodePubkey(e)}function jr(e){if(e.length!==33||e[0]!==2&&e[0]!==3)throw new Error("Public key must be compressed secp256k1, i.e. 33 bytes starting with 0x02 or 0x03");return{type:Jo.ethsecp256k1,value:B.toBase64(e)}}function Xo(e,s){if(s.length!==64)throw new Error("Signature must be 64 bytes long. Cosmos SDK uses a 2x32 byte fixed length encoding for the secp256k1 signature integers r and s.");return{pub_key:jr(e),signature:B.toBase64(s)}}const ce="interwovenkit",U={ADDED_CHAIN_IDS:`${ce}:chain-ids:added`,OPENED_CHAIN_IDS:`${ce}:chain-ids:opened`,PUBLIC_KEY:`${ce}:public-key`,FEE_DENOM:`${ce}:fee-denom`,BRIDGE_SRC_CHAIN_ID:`${ce}:bridge:src-chain-id`,BRIDGE_SRC_DENOM:`${ce}:bridge:src-denom`,BRIDGE_DST_CHAIN_ID:`${ce}:bridge:dst-chain-id`,BRIDGE_DST_DENOM:`${ce}:bridge:dst-denom`,BRIDGE_QUANTITY:`${ce}:bridge:quantity`,BRIDGE_SLIPPAGE_PERCENT:`${ce}:bridge:slippage-percent`,BRIDGE_ROUTE_TYPE:`${ce}:bridge:route-type`,BRIDGE_HISTORY:`${ce}:bridge:history`,OP_REMINDER:`${ce}:op:reminder`},on=Ue.createQueryKeys("interwovenkit:chain",{list:e=>[e],prices:e=>[e],gasPrices:e=>[e]}),ea=or.atomWithStorage(U.ADDED_CHAIN_IDS,[]);function zt(e){const s=I.path([0,"address"],e);if(!s)throw new Error("URL not found");return s}function ta(e){var j;const{chain_id:s,chain_name:n,pretty_name:r,logo_URIs:o,apis:a,metadata:i}=e,l=r||n,c=(o==null?void 0:o.png)??"",{rpc:d,rest:u,api:m,["json-rpc"]:h}=a,_=zt(d),x=zt(u),f=i!=null&&i.is_l1?zt(m):x,y=((j=i==null?void 0:i.minitia)==null?void 0:j.type)==="minievm"?zt(h):void 0;return{...e,chainId:s,name:l,logoUrl:c,rpcUrl:_,restUrl:x,indexerUrl:f,jsonRpcUrl:y}}function He(){const{defaultChainId:e,registryUrl:s,customChain:n}=re(),{data:r}=$.useSuspenseQuery({queryKey:on.list(s).queryKey,queryFn:()=>z.create({prefixUrl:s}).get("chains.json").json(),select:o=>(n?[n,...o.filter(i=>i.chain_id!==n.chain_id)]:o).map(ta).toSorted(I.descend(i=>i.chainId===e)),staleTime:H.MINUTE});return r}function it(){const e=He();return s=>{const n=e.find(r=>r.chain_id===s);if(!n)throw new Error(`Chain not found: ${s}`);return n}}function Ce(e){return it()(e)}function hs(){const{defaultChainId:e}=re();return Ce(e)}function je(){const s=He().find(n=>{var r;return(r=n.metadata)==null?void 0:r.is_l1});if(!s)throw new Error("Layer 1 not found");return s}function wr(e){return $.useQuery({queryKey:on.prices(e).queryKey,queryFn:()=>z.create({prefixUrl:"https://celatone-api-prod.alleslabs.dev"}).get(`v1/initia/${e}/assets`,{searchParams:{with_prices:!0}}).json(),staleTime:H.SECOND})}function pt(){const e=He(),{defaultChainId:s}=re(),[n,r]=pe.useAtom(ea),o=d=>I.uniq([s,...d]),a=o(n).map(d=>e.find(u=>u.chainId===d)).filter(Boolean),i=e.filter(d=>!o(n).includes(d.chainId));return{chains:e,addedChains:a,notAddedChains:i,addChain:d=>{r(u=>o([...u,d]))},removeChain:d=>{r(u=>o(u.filter(m=>m!==d)))}}}const an=()=>{const e=re();return new cs.Registry([...At.protoRegistry,...e.protoTypes??[]])},_s=()=>{const e=re();return new ke.AminoTypes({...At.aminoConverters,...e.aminoConverters})};class sa{constructor(s,n){In(this,"cachedPublicKey",null);this.address=s,this.signMessage=n}async getCachedPublicKey(){if(this.cachedPublicKey)return this.cachedPublicKey;const s=`${U.PUBLIC_KEY}:${this.address}`,n=localStorage.getItem(s);if(n)return this.cachedPublicKey=B.fromHex(n),B.fromHex(n);const r=await this.getPublicKey();return this.cachedPublicKey=r,localStorage.setItem(s,B.toHex(r)),r}async getPublicKey(){const s="Sign this message to identify your Initia account.",n=await this.signMessage(s),r=be.ethers.hashMessage(s),o=be.ethers.SigningKey.recoverPublicKey(r,n);return Sn.Secp256k1.compressPubkey(B.fromHex(o.replace("0x","")))}async getAccounts(){return[{address:this.address,algo:"ethsecp256k1",pubkey:await this.getCachedPublicKey()}]}async signAmino(s,n){if(this.address!==s)throw new Error("Signer address does not match the provided address");const r=zs.escapeCharacters(zs.sortedJsonStringify(n)),o=await this.signMessage(r),a=B.fromHex(o.replace("0x","")).subarray(0,-1),l=Sn.Secp256k1Signature.fromFixedLength(a).toFixedLength(),c=Xo(await this.getCachedPublicKey(),l);return{signed:n,signature:c}}}function br(){const e=an(),s=_s(),n=fs(),r=vr();return async function(o,a,i,l,c){if(!n)throw new Error("Signer not initialized");const d=await r(o),{accountNumber:u,sequence:m}=await d.getSequence(a),[h]=await n.getAccounts(),_=Zo(jr(h.pubkey)),x=qo.SignMode.SIGN_MODE_EIP_191,f=i.map(N=>s.toAmino(N)),y=zs.makeSignDoc(f,l,o,c,u,m),{signature:j,signed:w}=await n.signAmino(a,y),C={typeUrl:"/cosmos.tx.v1beta1.TxBody",value:{messages:w.msgs.map(N=>s.fromAmino(N)),memo:c}},S=e.encode(C),D=$n.Int53.fromString(w.fee.gas).toNumber(),v=$n.Int53.fromString(w.sequence).toNumber(),g=cs.makeAuthInfoBytes([{pubkey:_,sequence:v}],w.fee.amount,D,w.fee.granter,w.fee.payer,x);return ht.TxRaw.fromPartial({bodyBytes:S,authInfoBytes:g,signatures:[B.fromBase64(j.signature)]})}}function fs(){const e=X(),{signMessageAsync:s}=ye.useSignMessage();return new sa(e,n=>s({message:n}))}const Is=new Map;function vr(){const e=it(),s=an(),n=_s(),r=fs(),o=X();return async a=>{const i=`${o}:${a}`;if(Is.has(i))return Is.get(i);if(!r)throw new Error("Signer not initialized");const{rpcUrl:l}=e(a),c=await kn.Comet38Client.create(new kn.HttpClient(l)),d=await ke.SigningStargateClient.createWithSigner(c,r,{registry:s,aminoTypes:n,accountParser:Go,broadcastPollIntervalMs:1e3});return Is.set(i,d),d}}function Cr(){const{connector:e}=ye.useAccount();return async()=>{if(!e)throw new Error("Wallet not connected");return new be.BrowserProvider(await e.getProvider())}}const na=pe.atom(!1);function xt(){const e=Qo(),[s,n]=pe.useAtom(na);return{isDrawerOpen:s,openDrawer:(a,i)=>{a&&e(a,i),n(!0)},closeDrawer:()=>{n(!1)}}}const Nr="approve",ps=pe.atom(),Ir=pe.atom(null);function Sr(){const e=pe.useAtomValue(ps);if(!e)throw new Error("Tx request not found");return e}function ra(){const e=ue(),s=X(),{defaultChainId:n}=re(),{openDrawer:r,closeDrawer:o}=xt(),{openModal:a,closeModal:i}=ms(),l=pe.useSetAtom(ps),c=pe.useSetAtom(Ir),d=vr(),u=async({messages:f,memo:y,chainId:j=n})=>{try{return await(await d(j)).simulate(s,f,y)}catch(w){throw new Error(await Ke(w))}},m=async({txRequest:f,broadcaster:y})=>{const w={...{memo:"",chainId:n,gas:f.gas||await u(f),gasAdjustment:rn,fee:null,internal:!1},...f};return new Promise((A,C)=>{l({txRequest:w,resolve:async D=>{try{const v=await d(w.chainId),g=await y(v,ht.TxRaw.encode(D).finish());A(g),typeof w.internal=="string"&&e(w.internal)}catch(v){C(v)}finally{S()}},reject:D=>{C(D),S()}}),w.internal?a({path:"/tx"}):r("/tx");const S=()=>{if(!w.internal){e("/blank"),o();return}i()}})},h=async f=>{const y=f.chainId??n;try{const j=await m({txRequest:f,broadcaster:async(w,A)=>await w.broadcastTxSync(A)});return f.internal&&typeof f.internal!="number"&&(c({txHash:j,chainId:y,status:"loading"}),x({txHash:j,chainId:f.chainId}).then(w=>{c({status:w.code===0?"success":"error",chainId:y,txHash:j})}).catch(()=>{c({status:"error",chainId:y,txHash:j})})),j}catch(j){throw f.internal&&typeof f.internal!="number"&&c({status:"error",chainId:y,error:j}),j}},_=f=>m({txRequest:f,broadcaster:async(y,j)=>{const w=await y.broadcastTx(j);if(w.code!==0)throw new Error(w.rawLog);return w}}),x=async({chainId:f=n,...y})=>{const j=await d(f);return $r({...y,client:j})};return{estimateGas:u,requestTxSync:h,requestTxBlock:_,waitForTxConfirmation:x}}async function $r({txHash:e,client:s,timeoutSeconds:n=30,intervalSeconds:r=1}){const o=Date.now(),a=n*1e3;for(;;){const i=await s.getTx(e);if(i){if(i.code!==0)throw new Error(i.rawLog);return i}if(Date.now()-o>=a)throw new Error(`Transaction was submitted, but not found on the chain within ${n} seconds.`);await new Promise(l=>setTimeout(l,r*1e3))}}const oa=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 60 60">
2
2
  <circle fill="#2F3337" cx="30" cy="30" r="30"/>
3
3
  <path fill="#757C82" d="M26.328 34.288v-.48c0-2.048 1.024-2.816 4.128-4.16 3.104-1.28 3.712-1.952 3.712-3.488v-.128c0-1.664-1.344-2.464-4.224-2.464-2.816 0-4.416.736-4.768 3.296h-5.248c.416-5.536 4.416-7.584 9.888-7.584h.352c6.208 0 9.28 2.496 9.28 6.24v.352c0 3.392-1.28 4.96-5.376 6.592-1.504.64-2.048 1.024-2.208 1.824h-5.536ZM26.168 42v-5.152h5.792V42h-5.792Z"/>
4
- </svg>`,ca=encodeURIComponent(ia),kr=`data:image/svg+xml;utf8,${ca}`,ot=Ue.createQueryKeys("interwovenkit:asset",{list:e=>[e],item:(e,s)=>[e,s],resource:(e,s)=>[e.chainId,s.denom],denom:(e,s)=>[e,s],metadata:(e,s)=>[e,s]});function la(e){var m,h,_;const{base:s,symbol:n,denom_units:r=[],display:o,logo_URIs:a,name:i,address:d,traces:c}=e,l=((m=r.find(x=>x.denom===o))==null?void 0:m.exponent)??((h=r.find(x=>x.denom===s))==null?void 0:h.exponent)??((_=N.head(r))==null?void 0:_.exponent)??0,u=(a==null?void 0:a.png)??"";return{denom:s,symbol:n,decimals:l,logoUrl:u,name:i,address:d,traces:c}}function Dt(e){var o;const s=(o=e==null?void 0:e.metadata)==null?void 0:o.assetlist,n=k.useQueryClient(),{data:r}=k.useSuspenseQuery({queryKey:ot.list(s).queryKey,queryFn:async()=>s?z.get(s).json():{assets:[]},select:({assets:a})=>{if(!e)return[];const i=a.map(la);for(const d of i)n.setQueryData(ot.item(e.chainId,d.denom).queryKey,d);return i},staleTime:K.MINUTE});return r}function Ot(e){const s=Dt(e),n=ye(),r=Dt(n),o=$r(e);return a=>{const i=s.find(c=>c.denom===a);if(i)return i;const d=r.find(c=>c.denom===o(a));return d?{...d,denom:a}:{denom:a,symbol:"",decimals:0,logoUrl:kr}}}function an(e,s){const n=Ot(s),o=k.useQueryClient().getQueryData(ot.item(s.chainId,e).queryKey);return o||n(e)}function $r(e){const s=ye(),n=Dt(e);return r=>{var a,i,d,c,l;if((a=e.metadata)!=null&&a.is_l1)return r;if(r.startsWith("l2/")||r.startsWith("ibc/")){const u=(i=n.find(m=>m.denom===r))==null?void 0:i.traces;if(u){for(const m of u)if(m.counterparty.chain_name===s.chain_name)return m.counterparty.base_denom}}const o=(l=(c=(d=s.metadata)==null?void 0:d.ibc_channels)==null?void 0:c.find(({chain_id:u,version:m})=>u===e.chain_id&&m==="ics20-1"))==null?void 0:l.channel_id;return o?ua(o,r):""}}function da(e,s){const r=F.toBytes(e,32),o=F.toBytes(s,32),a=new Uint8Array([...r,...o,252]);return B.toHex(tn.sha3_256.create().update(a).digest())}function Er(e,s){const r=F.toBytes(e,32),o=tt.toBytes(s),a=new Uint8Array([...r,...o,254]);return B.toHex(tn.sha3_256.create().update(a).digest())}function Tr(e){return e?e.startsWith("move/")?`0x${e.slice(5)}`:`0x${Er("0x1",e)}`:""}function ua(e,s){const n=`transfer/${e}/${s}`;return`ibc/${B.toHex(Do.sha256(n)).toUpperCase()}`}const Mt=Ue.createQueryKeys("interwovenkit:account",{username:(e,s)=>[e,s],address:(e,s)=>[e,s],balances:(e,s)=>[e,s],txs:(e,s)=>[e,s]});function Ar(){const{restUrl:e}=ye(),{usernamesModuleAddress:s}=oe();return lr({restUrl:e,moduleAddress:s})}function cn(e){const s=X(),{restUrl:n}=e,{data:r}=k.useSuspenseQuery({queryKey:Mt.balances(n,s).queryKey,queryFn:()=>z.create({prefixUrl:n}).get(`cosmos/bank/v1beta1/balances/${s}`).json(),select:({balances:o})=>o,staleTime:K.SECOND});return r}function qr(e){const s=cn(e),n=Dt(e),r=Ot(e),o=$r(e),{data:a}=jr(e.chainId),i=c=>e.fees.fee_tokens.some(l=>l.denom===c),d=c=>n.some(l=>l.denom===c);return N.sortWith([N.descend(({denom:c})=>o(c)==="uinit"),N.descend(({denom:c})=>i(c)),N.descend(({value:c})=>c),N.descend(({denom:c})=>d(c)),({balance:c},{balance:l})=>E(l).comparedTo(c)??0,N.descend(({symbol:c})=>c.toLowerCase())],s.filter(({amount:c})=>!E(c).isZero()).map(({amount:c,denom:l})=>{var _;const u=r(l),m=((_=a==null?void 0:a.find(({id:x})=>x===(u==null?void 0:u.denom)))==null?void 0:_.price)??0,h=E(c).times(m).div(E(10).pow(u.decimals)).toNumber();return{...u,balance:c,price:m,value:h}}))}function X(){const e=Ut();return e?F.toBech32(e):""}function Ut(){const{address:e}=ge.useAccount();return e?F.toPrefixedHex(e):""}function gt(){var r,o;const e=hs(),s=X(),n=Ut();return((o=(r=e.metadata)==null?void 0:r.minitia)==null?void 0:o.type)==="minievm"?n:s}function Dr(){const e=gt(),s=Ar();return k.useQuery({queryKey:Mt.username(s.restUrl,e).queryKey,queryFn:()=>s.getUsername(e),enabled:!!e,staleTime:K.MINUTE})}function qe(){const e=gt(),s=X(),n=Ut(),{data:r}=Dr(),{openDrawer:o}=xt(),a=()=>{o("/")},i=()=>{o("/connect")},d=l=>{o("/bridge",l)},c=aa();return{address:e,initiaAddress:s,hexAddress:n,username:r,openConnect:i,openWallet:a,openBridge:d,...c}}const ma="_status_tn9m1_1",ha="_error_tn9m1_9",Tn={status:ma,error:ha},ue=({error:e,children:s})=>t.jsx("p",{className:P(Tn.status,{[Tn.error]:e}),children:s}),ae=({errorBoundaryProps:e={fallbackRender:({error:r})=>t.jsx(ue,{error:!0,children:r.message})},suspenseFallback:s=t.jsx(ue,{children:"Loading..."}),children:n})=>t.jsx(or.ErrorBoundary,{...e,children:t.jsx(p.Suspense,{fallback:s,children:n})}),pe=Ue.createQueryKeys("interwovenkit:skip",{chains:null,assets:e=>[e],asset:(e,s)=>[e,s],balances:(e,s)=>[e,s],route:(e,s)=>[e,s],routeErrorInfo:e=>[e],txTrack:(e,s)=>[e,s],txStatus:(e,s)=>[e,s]});function Le(){const{routerApiUrl:e}=oe();return p.useMemo(()=>z.create({prefixUrl:e}),[e])}function Pr(){const e=He();return s=>e.some(n=>n.chain_id===s)}function yt(){const e=Pr();return s=>e(s.chain_id)?"initia":s.chain_type}function Pt(e){return yt()(e)}function ln(){const e=Le(),{data:s}=k.useSuspenseQuery({queryKey:pe.chains.queryKey,queryFn:()=>e.get("v2/info/chains").json(),select:({chains:n})=>N.sortWith([N.descend(({chain_name:r})=>r==="initia"),N.ascend(({pretty_name:r})=>r)],n),staleTime:K.MINUTE});return s}function We(){const e=ln();return s=>{const n=e.find(r=>r.chain_id===s);if(!n)throw new Error(`Chain not found: ${s}`);return n}}function Ne(e){return We()(e)}function _t(e){const s=Le(),n=k.useQueryClient(),{data:r}=k.useSuspenseQuery({queryKey:pe.assets(e).queryKey,queryFn:()=>s.get("v2/fungible/assets",{searchParams:{chain_ids:e}}).json(),select:({chain_to_assets_map:o})=>{const{assets:a}=o[e]??{assets:[]};for(const i of a)n.setQueryData(pe.asset(e,i.denom).queryKey,i);return a.toSorted(N.descend(i=>i.symbol==="INIT"))},staleTime:K.MINUTE});return r}function Fr(e){const s=_t(e);return n=>{const r=s.find(o=>o.denom===n);if(!r)throw new Error(`Asset not found: ${n}`);return r}}function Ae(e,s){return Fr(s)(e)}const dn=p.createContext(null);function Ft(){const{container:e}=p.useContext(dn);return e}const _a=({children:e})=>{const[s,n]=p.useState(null);return t.jsx(dn.Provider,{value:{container:s,setContainer:n},children:e})},fa="_loader_4gdsk_1",pa={loader:fa},Qe=({size:e=24,color:s="currentColor",border:n=2})=>{const r={width:`${e}px`,height:`${e}px`,borderColor:`${s} ${s} transparent ${s}`,borderWidth:`${n}px`};return t.jsx("div",{className:pa.loader,style:r})},xa="_container_4qmbg_1",ga="_toast_4qmbg_10",ya="_info_4qmbg_23",ja="_success_4qmbg_27",wa="_error_4qmbg_31",ba="_icon_4qmbg_36",va="_content_4qmbg_43",Ca="_title_4qmbg_46",Na="_description_4qmbg_51",Ia="_close_4qmbg_72",Fe={container:xa,toast:ga,info:ya,success:ja,error:wa,icon:ba,content:va,title:Ca,description:Na,close:Ia},Sa=({notification:e,onClose:s})=>{const n=Te.useTransition(e,{keys:o=>(o==null?void 0:o.id)||"empty",from:{transform:"translateY(-52px)",opacity:0},enter:{transform:"translateY(0px)",opacity:1},leave:{transform:"translateY(-52px)",opacity:0},config:{...Te.config.wobbly,clamp:!0}}),r=o=>{switch(o){case"loading":return t.jsx(Qe,{size:16});case"info":case"success":return t.jsx(b.IconCheckCircleFilled,{size:16});case"error":return t.jsx(b.IconCloseCircleFilled,{size:16});default:return null}};return n((o,a)=>{if(!a)return null;const{type:i,title:d,description:c}=a,l=r(i);return t.jsx(Te.animated.div,{style:o,className:Fe.container,children:t.jsxs("div",{className:P(Fe.toast,i&&Fe[i]),children:[l&&t.jsx("div",{className:Fe.icon,children:l}),t.jsxs("div",{className:Fe.content,children:[t.jsx("p",{className:Fe.title,children:d}),c&&t.jsx("div",{className:Fe.description,children:c})]}),t.jsx("button",{className:Fe.close,onClick:s,children:t.jsx(b.IconClose,{size:14})})]})})})},Br=p.createContext(null),Rr=()=>p.useContext(Br),An=5e3,ka=({children:e})=>{const s=Ft(),[n,r]=p.useState(null),o=p.useRef(null),a=()=>{o.current&&(clearTimeout(o.current),o.current=null)},i=p.useCallback(()=>{a(),r(null)},[]),d=p.useCallback(l=>{a(),r({...l,id:$n.nanoid()}),l.autoHide&&(o.current=setTimeout(()=>i(),An))},[i]),c=p.useCallback(l=>{a(),r(u=>u?{...u,...l}:{...l,id:$n.nanoid()}),l.autoHide&&(o.current=setTimeout(()=>i(),An))},[i]);return p.useEffect(()=>()=>a(),[]),t.jsxs(Br.Provider,{value:{showNotification:d,updateNotification:c,hideNotification:i},children:[e,s&&ar.createPortal(t.jsx(Sa,{notification:n,onClose:i}),s)]})},Or=p.createContext(!1),$a="_overlay_1eoyl_1",Ea="_fullscreen_1eoyl_12",Ta="_content_1eoyl_16",Aa="_header_1eoyl_73",qa="_title_1eoyl_82",Da="_close_1eoyl_87",Ge={overlay:$a,fullscreen:Ea,content:Ta,header:Aa,title:qa,close:Da},Mr=({title:e,children:s,trigger:n,open:r,onOpenChange:o})=>{const a=p.useContext(Or);return t.jsxs(q.Dialog.Root,{open:r,onOpenChange:o,children:[n&&t.jsx(q.Dialog.Trigger,{asChild:!0,children:n}),t.jsxs(q.Dialog.Portal,{container:Ft(),children:[t.jsx("div",{className:P(Ge.overlay,{[Ge.fullscreen]:a})}),t.jsxs(q.Dialog.Content,{className:P(Ge.content,{[Ge.fullscreen]:a}),children:[e&&t.jsxs("header",{className:Ge.header,children:[t.jsx(q.Dialog.Title,{className:Ge.title,children:e}),t.jsx(q.Dialog.Close,{className:Ge.close,children:t.jsx(b.IconClose,{size:20})})]}),s]})]})]})},Pa="_root_1wwaf_1",Fa="_item_1wwaf_10",Ba="_chevron_1wwaf_14",Ra="_trigger_1wwaf_19",Oa="_content_1wwaf_39",Nt={root:Pa,item:Fa,chevron:Ba,trigger:Ra,content:Oa};function Ur(e){const{list:s,getKey:n,renderHeader:r,renderContent:o,footer:a,...i}=e;return t.jsxs(q.Accordion.Root,{className:Nt.root,type:"multiple",...i,children:[s.map((d,c)=>t.jsxs(q.Accordion.Item,{className:Nt.item,value:(n==null?void 0:n(d))??String(c),children:[t.jsx(q.Accordion.Header,{children:t.jsxs(q.Accordion.Trigger,{className:Nt.trigger,children:[r(d),t.jsx(b.IconChevronDown,{className:Nt.chevron,size:16})]})}),t.jsx(q.Accordion.Content,{className:Nt.content,children:o(d)})]},(n==null?void 0:n(d))??c)),a]})}const Ma="_scrollable_yv81n_1",Ua={scrollable:Ma},De=({className:e,children:s})=>t.jsx("div",{className:P(Ua.scrollable,e),children:s}),Hs=({children:e})=>{const s=p.useRef(null),[n,r]=p.useState(0),o=Te.useSpring({height:n,config:{...Te.config.stiff,clamp:!0}});return p.useEffect(()=>{if(s.current){const{height:a}=s.current.getBoundingClientRect();r(a)}},[e]),e?t.jsx(Te.animated.div,{style:{overflow:"hidden",...o},children:t.jsx("div",{ref:s,children:e})}):null},za="_help_7m3jv_1",Ka="_icon_7m3jv_10",Ha="_info_7m3jv_17",La="_warning_7m3jv_21",Wa="_error_7m3jv_25",Qa="_success_7m3jv_31",Ss={help:za,icon:Ka,info:Ha,warning:La,error:Wa,success:Qa},Me=({level:e,className:s,mt:n=8,children:r})=>{if(!r)return null;const o=()=>{switch(e){case"loading":return t.jsx(Qe,{size:12});case"info":return t.jsx(b.IconInfoFilled,{size:12});case"warning":case"error":return t.jsx(b.IconWarningFilled,{size:12});default:return t.jsx(b.IconCheckCircleFilled,{size:12})}};return t.jsxs("div",{className:P(Ss.help,e&&Ss[e],s),style:{marginTop:n},children:[t.jsx("div",{className:Ss.icon,children:o()}),t.jsx("p",{children:r})]})},Va="_stack_14kq8_1",Ga="_help_14kq8_6",Ya="_info_14kq8_14",Ja="_warning_14kq8_19",Za="_error_14kq8_24",Xa="_success_14kq8_29",Ls={stack:Va,help:Ga,info:Ya,warning:Ja,error:Za,success:Xa},ei=({children:e})=>!e||Array.isArray(e)&&e.filter(Boolean).length===0?null:t.jsx(Hs,{children:t.jsx("div",{className:Ls.stack,children:e})}),Z=e=>t.jsx(Me,{...e,className:P(Ls.help,Ls[e.level]),mt:0});Z.Stack=ei;const ti="_footer_xif7g_1",si="_actions_xif7g_10",qn={footer:ti,actions:si},ee=({extra:e,className:s,children:n})=>t.jsxs("footer",{className:P(qn.footer,s),children:[e,t.jsx("div",{className:qn.actions,children:n})]}),ni="_button_7llhj_1",ri="_outline_7llhj_24",oi="_sm_7llhj_42",ai="_full_7llhj_48",ii="_small_7llhj_52",ci="_unpadded_7llhj_82",st={button:ni,outline:ri,sm:oi,full:ai,small:ii,unpadded:ci},zr=e=>{const{sm:s,fullWidth:n,loading:r,className:o,children:a,disabled:i,...d}=e;return t.jsx("button",{...d,className:P(st.button,{[st.sm]:s,[st.full]:n},o),disabled:!!r||i,children:r?t.jsxs(t.Fragment,{children:[t.jsx(Qe,{color:"currentColor",size:16}),typeof r=="string"&&t.jsx("span",{className:st.loading,children:r})]}):a})},li=({className:e,...s})=>t.jsx(zr,{...s,className:P(st.outline,e)}),di=({className:e,unpadded:s,...n})=>t.jsx("button",{...n,className:P(st.small,{[st.unpadded]:s},e)}),L={White:zr,Outline:li,Small:di},ui="_item_1n572_1",mi="_title_1n572_10",hi="_content_1n572_14",ks={item:ui,title:mi,content:hi},$s=({title:e,content:s})=>t.jsxs("div",{className:ks.item,children:[t.jsx("div",{className:ks.title,children:e}),t.jsx("div",{className:ks.content,children:s})]}),_i="_trigger_13rgr_1",fi="_icon_13rgr_5",pi="_content_13rgr_16",xi="_item_13rgr_24",Kt={trigger:_i,icon:fi,content:pi,item:xi},gi=({options:e,value:s,onChange:n})=>{const r=Ft(),{txRequest:o}=Ir(),a=Ie(o.chainId),i=Ot(a),d=({amount:[{amount:c,denom:l}]})=>{if(E(c).isZero())return"0";const{symbol:u,decimals:m}=i(l);return`${re(c,{decimals:m})} ${u}`};return e.length===1?d(e[0]):t.jsxs(q.Select.Root,{value:s,onValueChange:n,children:[t.jsxs(q.Select.Trigger,{className:Kt.trigger,children:[t.jsx(q.Select.Value,{}),t.jsx(q.Select.Icon,{className:Kt.icon,children:t.jsx(b.IconChevronDown,{size:16})})]}),t.jsx(q.Select.Portal,{container:r,children:t.jsx(q.Select.Content,{className:Kt.content,position:"popper",sideOffset:6,align:"end",children:t.jsx(q.Select.Viewport,{children:e.map(c=>{const[{denom:l}]=c.amount;return t.jsx(q.Select.Item,{className:Kt.item,value:l,children:t.jsx(q.Select.ItemText,{children:d(c)})},l)})})})})]})};function rs(e){switch(typeof e){case"string":return e;case"number":case"bigint":return e.toString();case"boolean":return e?"true":"false";case"object":return e===null?"null":e instanceof Uint8Array?B.toBase64(e):Array.isArray(e)?`[${e.map(rs).join(",")}]`:JSON.stringify(e,(s,n)=>typeof n=="bigint"?n.toString():n);default:return"unknown"}}const Bt={...nr.bcs,address:Dn,object:Dn,bigdecimal:yi};function Kr(e){const s=e.trim().match(/^(\w+)<(.+)>$/);if(s){const[,r,o]=s,a=Kr(o);return Bt[r](a)}const n=N.last(e.split("::")).toLowerCase();return Bt[n]()}function Dn(e){return Bt.bytes(32,e).transform({input:s=>F.toBytes(s,32),output:s=>`0x${B.toHex(s)}`})}function yi(e){return Bt.vector(Bt.u8(e)).transform({input:s=>{const n=E.BigNumber(s).times(E.BigNumber(10).pow(18)).toFixed(0,E.BigNumber.ROUND_DOWN);return ji(BigInt(n))},output:s=>{const n=wi(new Uint8Array(s));return E.BigNumber(n).div(E.BigNumber(10).pow(18)).toFixed()}})}function ji(e){if(e<0n)throw new Error("negative values are not supported");if(e===0n)return new Uint8Array([0]);const s=[];let n=e;for(;n>0n;)s.push(Number(n&0xffn)),n>>=8n;return new Uint8Array(s)}function wi(e){let s=0n;for(let n=0;n<e.length;n++)s+=BigInt(e[n])<<BigInt(8*n);return s}const bi="_container_1xzyq_1",vi="_toggle_1xzyq_5",Ci="_list_1xzyq_11",Ni="_arg_1xzyq_16",Ii="_type_1xzyq_21",It={container:bi,toggle:vi,list:Ci,arg:Ni,type:Ii},Si=Ue.createQueryKeys("interwovenkit:move",{abi:(e,s,n,r)=>[e,s,n,r]}),ki=({type:e,arg:s})=>rs(Kr(e).parse(s)),$i=({msg:e,chainId:s,fallback:n})=>{const[r,o]=de.useToggle(!1),{restUrl:a}=Ie(s),{moduleAddress:i,moduleName:d,functionName:c,args:l}=e,{data:u}=k.useQuery({queryKey:Si.abi(a,i,d,c).queryKey,queryFn:async()=>{const h=await z.create({prefixUrl:a}).get(`initia/move/v1/accounts/${i}/modules/${d}`).json(),x=JSON.parse(h.module.abi).exposed_functions.find(({name:f})=>f===c);if(!x)throw new Error(`Function ${c} not found in module ${d}`);return x.params.filter(f=>!f.startsWith("&"))},staleTime:K.INFINITY});if(!u)return n;const m=(h,_)=>{const x=u[_];return t.jsxs("div",{className:It.arg,children:[t.jsx("div",{className:It.type,children:x}),t.jsx(or.ErrorBoundary,{fallback:t.jsx("div",{className:"error",children:"Error decoding argument"}),children:t.jsx(ki,{type:x,arg:h})})]},_)};return t.jsxs("div",{className:It.container,children:[t.jsx(L.Small,{className:It.toggle,onClick:o,disabled:!u,children:r?"Encode":"Decode"}),r?t.jsx("div",{className:It.list,children:l.map(m)}):n]})},Ei="_list_r67rl_1",Ti="_key_r67rl_8",Ai="_value_r67rl_13",Es={list:Ei,key:Ti,value:Ai},qi=({message:e,chainId:s})=>{const{typeUrl:n,value:r}=e;return t.jsx("div",{className:Es.list,children:Object.entries(r).map(([o,a])=>t.jsxs("div",{children:[t.jsx("div",{className:Es.key,children:o}),t.jsx("div",{className:Es.value,children:n==="/initia.move.v1.MsgExecute"&&o==="args"?t.jsx($i,{msg:r,chainId:s,fallback:rs(a)}):rs(a)})]},o))})},Di="_title_kspdu_1",Pi="_meta_kspdu_7",Fi="_footer_kspdu_14",Ts={title:Di,meta:Pi,footer:Fi},Hr=()=>{const{txRequest:e,resolve:s,reject:n}=Ir(),{messages:r,memo:o,chainId:a,gas:i,gasAdjustment:d}=e,c=X(),l=fs(),u=wr(),m=Ie(a),h=cn(m),{data:_}=k.useSuspenseQuery({queryKey:rn.gasPrices(m).queryKey,queryFn:async()=>{var g;if((g=m.metadata)!=null&&g.is_l1){const{restUrl:S}=m,{gas_prices:O}=await z.create({prefixUrl:S}).get("initia/tx/v1/gas_prices").json();return O.toSorted(N.descend(({denom:U})=>U==="uinit")).map(({denom:U,amount:A})=>{const M=E(A).times(mr).toFixed(18);return Ee.GasPrice.fromString(M+U)})}return m.fees.fee_tokens.map(({denom:S,fixed_min_gas_price:O})=>Ee.GasPrice.fromString(O+S))},staleTime:K.SECOND}),x=_.map(g=>Ee.calculateFee(Math.ceil(i*d),g)),f=x.map(g=>g.amount[0]),y=g=>{var U,A;const S=((U=h.find(M=>M.denom===g))==null?void 0:U.amount)??0,O=((A=f.find(M=>M.denom===g))==null?void 0:A.amount)??0;return E(S).gte(O)},w=`${H.FEE_DENOM}:${a}`,j=()=>{const g=localStorage.getItem(w);if(g&&y(g))return g;for(const{denom:S}of f)if(y(S))return S;return f[0].denom},[T,C]=p.useState(j),{mutate:I,isPending:D}=k.useMutation({mutationKey:[oa],mutationFn:async()=>{const g=x.find(O=>O.amount[0].denom===T);if(!g)throw new Error("Fee not found");if(!l)throw new Error("Signer not initialized");const S=await u(a,c,r,g,o);await s(S)},onMutate:()=>{localStorage.setItem(w,T)},onError:async g=>{n(new Error(await Ke(g)))}});p.useEffect(()=>()=>{n(new Error("User rejected"))},[n]);const v=!y(T);return t.jsxs(t.Fragment,{children:[t.jsxs(De,{children:[t.jsx("h1",{className:Ts.title,children:"Confirm tx"}),t.jsxs("div",{className:Ts.meta,children:[t.jsx($s,{title:"Chain",content:a}),t.jsx($s,{title:"Tx fee",content:t.jsx(gi,{options:x,value:T,onChange:C})}),o&&t.jsx($s,{title:"Memo",content:o}),v&&t.jsx(Z,{level:"error",children:"Insufficient balance for fee"})]}),t.jsx(Ur,{list:r,renderHeader:({typeUrl:g})=>ls.sentenceCase(g.split(".").pop().replace(/^Msg/,"")),renderContent:g=>t.jsx(qi,{message:g,chainId:a})})]}),t.jsxs(ee,{className:Ts.footer,children:[t.jsx(L.Outline,{onClick:()=>n(new Error("User rejected")),disabled:D,children:"Reject"}),t.jsx(L.White,{onClick:()=>I(),disabled:v,loading:D,children:"Approve"})]})]})},Bi=({children:e})=>{const[{title:s,content:n,path:r},o]=p.useState({}),[a,i]=p.useState(!1),d=p.useCallback(l=>{o(l),i(!0)},[]),c=p.useCallback(()=>{o({}),i(!1)},[]);return t.jsxs(gr.Provider,{value:{openModal:d,closeModal:c},children:[e,t.jsx(Mr,{title:s,open:a,onOpenChange:i,children:r==="/tx"?t.jsx(Hr,{}):n})]})},Lr=({value:e,children:s})=>{const[n,r]=p.useState(!1);return s({copy:async()=>{try{await navigator.clipboard.writeText(e),r(!0),setTimeout(()=>r(!1),1e3)}catch{}},copied:n})},Ri="_placeholder_80nya_1",Oi="_circle_80nya_5",Pn={placeholder:Ri,circle:Oi},W=({src:e,alt:s,placeholder:n,classNames:r,circle:o,...a})=>{const{width:i,height:d}=a,c=n??t.jsx("div",{className:P(Pn.placeholder,r==null?void 0:r.placeholder),style:{width:i,height:d}});return e?t.jsx(Po.Img,{...a,className:P(a.className,{[Pn.circle]:o}),style:{width:i,height:d},src:e,alt:s,unloader:c,loading:"lazy"}):c},Mi="_header_jomuw_1",Ui="_logo_jomuw_10",zi="_copy_jomuw_18",Ki="_name_jomuw_26",Hi="_address_jomuw_30",Li="_icon_jomuw_34",Wi="_copied_jomuw_41",Qi="_disconnect_jomuw_56",Be={header:Mi,logo:Ui,copy:zi,name:Ki,address:Hi,icon:Li,copied:Wi,disconnect:Qi},Vi=()=>{const{connector:e}=ge.useAccount(),{disconnect:s}=ge.useDisconnect(),{address:n,username:r}=qe(),{closeDrawer:o}=xt(),a=r??n;return e?t.jsxs("header",{className:Be.header,children:[t.jsx("div",{className:Be.logo,children:t.jsx(W,{src:e.icon,width:18,height:18})}),t.jsx(Lr,{value:n,children:({copy:i,copied:d})=>t.jsxs("button",{className:P(Be.copy,{[Be.copied]:d}),onClick:i,children:[t.jsx("div",{className:Be.address,children:se(n)}),t.jsx("div",{className:Be.name,children:se(a)}),t.jsx(b.IconCopy,{className:Be.icon,size:12}),d?"Copied!":""]})}),t.jsx("button",{className:Be.disconnect,onClick:()=>{o(),s()},children:t.jsx(b.IconSignOut,{size:18})})]}):null},Gi="_link_guafb_1",Yi={link:Gi},un=e=>{const{chainId:s,txHash:n,showIcon:r,className:o,children:a,onClick:i,...d}=e,c=Ie(s),l=N.path(["explorers",0,"tx_page"],c),u=a??se(n);return l?t.jsxs("a",{...d,href:ir(Ji(l.replace(/\$\{txHash\}/g,n))),className:P(Yi.link,o),onClick:i,target:"_blank",children:[u,r&&t.jsx(b.IconExternalLink,{size:12})]}):t.jsx("span",{...d,children:u})};function Ji(e){try{const s=new URL(e,window.location.href);if(!["http:","https:"].includes(s.protocol))throw new Error("Invalid protocol");return s.toString()}catch{return"#"}}const Zi=()=>{const[e,s]=Ce.useAtom(Nr),{showNotification:n,updateNotification:r,hideNotification:o}=Rr();return p.useEffect(()=>{if(!e)return;const{status:a,chainId:i,txHash:d,error:c}=e,l=c?c.message:d?t.jsx(un,{txHash:d,chainId:i,onClick:o,showIcon:!0,children:"View on Initia Scan"}):null;switch(a){case"loading":n({type:"loading",title:"Transaction is pending..."});break;case"error":r({type:"error",title:"Transaction failed",description:l}),s(null);break;case"success":r({type:"success",title:"Transaction is successful!",description:l}),s(null);break}},[e,s,n,r,o]),null},Xi="_overlay_1bu6o_1",ec="_content_1bu6o_49",Fn={overlay:Xi,content:ec},tc=({children:e})=>{const{isDrawerOpen:s,closeDrawer:n}=xt(),{setContainer:r}=p.useContext(dn),o=de.useMedia("(max-width: 576px)");sc(s&&o);const a=me(),i=k.useQueryClient(),d={fallbackRender:({error:l,resetErrorBoundary:u})=>{const m=()=>{a("/"),i.clear(),u()};return t.jsxs(De,{children:[t.jsx(ue,{error:!0,children:l.message}),t.jsx(ee,{children:t.jsx(L.White,{onClick:m,children:"Retry"})})]})}},c=Te.useTransition(s,{from:{transform:o?"translateY(100%)":"translateX(100%)"},enter:{transform:o?"translateY(0%)":"translateX(0%)"},leave:{transform:o?"translateY(100%)":"translateX(100%)"},config:{tension:500,friction:35,clamp:!0}});return ar.createPortal(t.jsxs(t.Fragment,{children:[c((l,u)=>u?t.jsx(Te.animated.button,{style:l,className:Fn.overlay,onClick:n,children:t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",width:"14",height:"14",children:[t.jsx("path",{d:"M7.168 14.04 l 6.028 -6.028 l -6.028 -6.028 L8.57 .582 L16 8.012 l -7.43 7.43 l -1.402 -1.402 Z"}),t.jsx("path",{d:"M0.028 14.04 l 6.028 -6.028 L0.028 1.984 L1.43 .582 l 7.43 7.43 l -7.43 7.43 L0.028 14.04 Z"})]})}):null),c((l,u)=>u?t.jsxs(Te.animated.div,{style:l,className:P(Fn.content,"body"),ref:r,children:[t.jsx(Zi,{}),t.jsx(Vi,{}),t.jsx(ae,{errorBoundaryProps:d,children:e})]}):null)]}),Ho())};function sc(e){p.useLayoutEffect(()=>{const s=document.body.style.overflow;return e?document.body.style.overflow="hidden":document.body.style.overflow=s,()=>{document.body.style.overflow=s}},[e])}const nc="_page_rx25j_1",rc="_title_rx25j_10",oc="_scrollable_rx25j_17",ac="_list_rx25j_22",ic="_item_rx25j_32",cc="_name_rx25j_51",lc="_dimmed_rx25j_59",dc="_recent_rx25j_63",uc="_installed_rx25j_64",mc="_docs_rx25j_81",_e={page:nc,title:rc,scrollable:oc,list:ac,item:ic,name:cc,dimmed:lc,recent:dc,installed:uc,docs:mc},hc=[{name:"Rabby",url:"https://rabby.io"},{name:"Phantom",url:"https://phantom.com"},{name:"Keplr",url:"https://keplr.app"},{name:"Leap",url:"https://leapwallet.io"}],_c=()=>{const{closeDrawer:e}=xt(),{connectors:s,connectAsync:n}=ge.useConnect(),[r,o]=de.useLocalStorage(H.LATEST_CONNECTOR_ID),[a,i]=p.useState(null),{mutate:d,isPending:c}=k.useMutation({mutationFn:async l=>{i(l.id);try{return await n({connector:l}),l}catch(u){throw new Error(await Ke(u))}},onSettled:()=>{i(null)},onSuccess:l=>{o(l.id),e()}});return t.jsxs("div",{className:_e.page,children:[t.jsx("h1",{className:_e.title,children:"Connect wallet"}),t.jsx(De,{className:_e.scrollable,children:t.jsxs("div",{className:_e.list,children:[s.toSorted(N.descend(l=>l.id===r)).map(l=>{const{name:u,icon:m,id:h}=l;return t.jsxs("button",{className:_e.item,onClick:()=>d(l),disabled:c,children:[t.jsx(W,{src:m,width:24,height:24}),t.jsx("span",{className:_e.name,children:u}),a===h?t.jsx(Qe,{size:16}):r===h?t.jsx("span",{className:_e.recent,children:"Recent"}):t.jsx("span",{className:_e.installed,children:"Installed"})]},h)}),hc.filter(({name:l})=>!s.some(u=>u.name.includes(l))).map(({name:l,url:u})=>{const m=`https://assets.initia.xyz/images/wallets/${l}.webp`;return t.jsxs("a",{href:u,className:_e.item,target:"_blank",children:[t.jsx(W,{src:m,width:24,height:24}),t.jsx("span",{className:P(_e.name,_e.dimmed),children:l}),t.jsx(b.IconExternalLink,{size:10})]},l)})]})}),t.jsx(ee,{children:t.jsxs("a",{href:"https://docs.initia.xyz",target:"_blank",className:_e.docs,children:[t.jsx("span",{children:"Learn more"}),t.jsx(b.IconExternalLink,{size:14})]})})]})},fc="_root_xwz5z_1",pc="_header_xwz5z_6",xc="_title_xwz5z_12",gc="_warning_xwz5z_18",yc="_content_xwz5z_22",jc="_footer_xwz5z_26",wc="_secondary_xwz5z_36",Ye={root:fc,header:pc,title:xc,warning:gc,content:yc,footer:jc,secondary:wc},Wr=e=>{const{type:s,icon:n,title:r,children:o,primaryButton:a,secondaryButton:i}=e;return t.jsxs(De,{className:Ye.root,children:[t.jsxs("header",{className:P(Ye.header,s&&Ye[s]),children:[n,t.jsx("h1",{className:Ye.title,children:r})]}),t.jsx("div",{className:Ye.content,children:o}),t.jsxs("footer",{className:Ye.footer,children:[t.jsx(L.White,{onClick:a.onClick,sm:!0,fullWidth:!0,children:a.label}),t.jsxs("button",{className:Ye.secondary,onClick:i.onClick,children:[t.jsx("span",{children:i.label}),t.jsx(b.IconChevronRight,{size:14})]})]})]})},bc="_list_tmcxc_1",vc="_row_tmcxc_8",Cc="_dt_tmcxc_19",Nc="_asset_tmcxc_25",Ht={list:bc,row:vc,dt:Cc,asset:Nc},Ic=({list:e,onNavigate:s,onDismiss:n})=>{const r=ye(),o=it(),a=Ot(r);return t.jsx(Wr,{title:"Ready to claim",primaryButton:{label:"View withdrawal status",onClick:s},secondaryButton:{label:"Do not show again",onClick:n},children:t.jsx("div",{className:Ht.list,children:e.toSorted((i,d)=>i.chainId.localeCompare(d.chainId)).map(({txHash:i,chainId:d,amount:c,denom:l})=>{const u=o(d),{decimals:m,symbol:h}=a(l),_=re(c,{decimals:m});return t.jsxs("div",{className:Ht.row,children:[t.jsxs("div",{className:Ht.dt,children:[t.jsx(W,{src:u.logoUrl,width:16,height:16}),t.jsx("span",{children:u.name})]}),t.jsxs("span",{className:Ht.asset,children:[_," ",h]})]},i)})})})};function As(e,s){return e.chainId===s.chainId&&e.txHash===s.txHash}const Lt=({chainId:e,txHash:s})=>`${H.OP_REMINDER}:${e}:${s}`,Sc=rr.atomWithStorage(H.OP_REMINDER,[]);function jt(){const e=X(),[s=[],n]=Ce.useAtom(Sc),r=p.useMemo(()=>s.map(c=>{const l=localStorage.getItem(Lt(c));return l?JSON.parse(l):null}).filter(c=>{if(!c)return!1;const{recipient:l,claimableAt:u}=c;return l!==e?!1:ft.isPast(u)}),[e,s]),o=p.useCallback((c,l)=>{s.some(u=>As(u,c))||(n((u=[])=>[...u,c]),localStorage.setItem(Lt(c),JSON.stringify(l)))},[s,n]),a=p.useCallback(c=>{n((l=[])=>l.filter(u=>!As(u,c))),localStorage.removeItem(Lt(c))},[n]),i=p.useCallback(c=>{const l=c.filter(u=>!s.some(m=>As(m,u)));l.length!==0&&n((u=[])=>[...u,...l])},[s,n]),d=p.useCallback((c,l)=>{localStorage.setItem(Lt(c),JSON.stringify(l)),n((u=[])=>[...u])},[n]);return{reminders:r,addReminder:o,removeReminder:a,syncReminders:i,setReminder:d}}function Qr(){const e=me(),{openModal:s,closeModal:n}=ms(),{reminders:r,setReminder:o}=jt();p.useEffect(()=>{const a=r.filter(c=>!c.dismissed);if(a.length===0)return;const i=()=>{const c=a.every(l=>l.chainId===a[0].chainId)?a[0].chainId:void 0;e("/op/withdrawals",{chainId:c}),d()},d=()=>{n();for(const c of a)o(c,{...c,dismissed:!0})};s({content:p.createElement(Ic,{list:a,onNavigate:i,onDismiss:d})})},[r,n,e,s,o])}const kc="2.0.0-rc.1",$c="_flex_1v8wv_1",Ec={flex:$c},Ws=({mt:e,mb:s,children:n})=>t.jsx("div",{className:Ec.flex,style:{marginTop:e,marginBottom:s},children:n}),Tc="_toggle_grhff_1",Ac="_name_grhff_7",qc="_rollups_grhff_11",Dc="_version_grhff_29",Wt={toggle:Tc,name:Ac,rollups:qc,version:Dc},Vr=({renderContent:e,storageKey:s})=>{const{defaultChainId:n}=oe(),{addedChains:r}=pt(),[o=[],a]=de.useLocalStorage(`${H.OPENED_CHAIN_IDS}:${s}`,[n]),i=o.length===0,d=()=>{a(i?r.map(c=>c.chainId):[])};return t.jsxs(t.Fragment,{children:[t.jsx(Ws,{mb:6,children:t.jsxs(L.Small,{className:Wt.toggle,onClick:d,children:[t.jsx("span",{children:i?"Expand all":"Collapse all"}),i?t.jsx(b.IconChevronDown,{size:10}):t.jsx(b.IconChevronUp,{size:10})]})}),t.jsx(Ur,{list:r,getKey:({chainId:c})=>c,renderHeader:({name:c,logoUrl:l})=>t.jsxs(t.Fragment,{children:[t.jsx(W,{src:l,width:16,height:16}),t.jsx("span",{className:Wt.name,children:c})]}),renderContent:e,value:o,onValueChange:a,footer:t.jsxs(Rt,{className:Wt.rollups,to:"/rollups",children:[t.jsx(b.IconSettingFilled,{size:12}),t.jsx("span",{children:"Manage rollup list"})]})}),t.jsx(Ws,{mt:8,children:t.jsxs("span",{className:Wt.version,children:["v",kc]})})]})},mn=({chain:e,asset:s,children:n})=>{const r=k.useQueryClient(),{data:o}=k.useQuery({queryKey:ot.resource(e,s).queryKey,queryFn:async()=>{var c,l,u;if(s.symbol||!((c=e.metadata)!=null&&c.is_l1||((u=(l=e.metadata)==null?void 0:l.minitia)==null?void 0:u.type)==="minimove"))return null;const a=Tr(s.denom),{resource:i}=await z.create({prefixUrl:e.restUrl}).get(`initia/move/v1/accounts/${a}/resources/by_struct_tag`,{searchParams:{struct_tag:"0x1::fungible_asset::Metadata"}}).json(),{data:d}=JSON.parse(i.move_resource);return r.setQueryData(ot.item(e.chainId,s.denom).queryKey,{...s,...d}),d},staleTime:K.INFINITY});return n({...s,...o})},Pc="_asset_1dxy8_1",Fc="_token_1dxy8_23",Bc="_symbol_1dxy8_28",Rc="_name_1dxy8_29",Oc="_balance_1dxy8_40",Mc="_amount_1dxy8_45",Uc="_value_1dxy8_49",Je={asset:Pc,token:Fc,symbol:Bc,name:Rc,balance:Oc,amount:Mc,value:Uc},zc=e=>{const{denom:s,symbol:n,name:r,logoUrl:o,decimals:a,balance:i="0",value:d=0}=e;return t.jsxs("div",{className:Je.asset,children:[t.jsx(W,{src:o,width:24,height:24}),t.jsxs("div",{className:Je.token,children:[t.jsx("div",{className:Je.symbol,children:n??se(s)}),r&&t.jsx("div",{className:Je.name,children:r})]}),E(i).gt(0)&&t.jsxs("div",{className:Je.balance,children:[t.jsx("div",{className:Je.amount,children:re(i,{decimals:a})}),d>0&&t.jsxs("div",{className:Je.value,children:["$",rt(d)]})]})]})},Kc="_actions_180l3_1",Hc="_button_180l3_8",Lc="_add_180l3_25",St={actions:Kc,button:Hc,add:Lc},Wc=({denom:e,chain:s})=>{const n=me(),{defaultChainId:r}=oe(),{evm_chain_id:o}=hs(),{address:a="",symbol:i,decimals:d,logoUrl:c}=an(e,s),{connector:l}=ge.useAccount(),{switchChainAsync:u}=ge.useSwitchChain(),{watchAssetAsync:m}=ge.useWatchAsset(),{chainId:h}=s,_=()=>{n("/send",{denom:e,chain:s})},x=()=>{n("/bridge",{srcChainId:h,srcDenom:e})},f=k.useMutation({mutationFn:async()=>(await u({chainId:Number(o)}),m({type:"ERC20",options:{address:a,symbol:i,decimals:d,image:c}}))});return t.jsxs("nav",{className:St.actions,children:[t.jsx("button",{className:St.button,onClick:_,children:"Send"}),t.jsx("button",{className:St.button,onClick:x,children:"Bridge/Swap"}),h===r&&!!a&&t.jsxs("button",{className:P(St.button,St.add),onClick:()=>f.mutate(),disabled:f.isPending||f.data,children:[f.data?t.jsx(b.IconCheck,{size:10}):t.jsx(b.IconPlus,{size:10}),t.jsx(W,{src:l==null?void 0:l.icon,width:16,height:16})]})]})},Qc="_list_wod0u_1",Vc="_item_wod0u_8",Gc="_trigger_wod0u_19",Yc="_content_wod0u_24",Qt={list:Qc,item:Vc,trigger:Gc,content:Yc},Jc=e=>{const s=qr(e);return s.length?t.jsx(q.Accordion.Root,{type:"single",collapsible:!0,className:Qt.list,children:s.map(n=>t.jsxs(q.Accordion.Item,{className:Qt.item,value:n.denom,children:[t.jsx(q.Accordion.Header,{children:t.jsx(q.Accordion.Trigger,{className:Qt.trigger,children:t.jsx(mn,{asset:n,chain:e,children:r=>t.jsx(zc,{...r})})})}),t.jsx(q.Accordion.Content,{className:Qt.content,children:t.jsx(Wc,{denom:n.denom,chain:e})})]},n.denom))}):t.jsx(ue,{children:"No assets"})},Zc=()=>t.jsx(Vr,{renderContent:e=>t.jsx(ae,{children:t.jsx(Jc,{...e})}),storageKey:"assets"});function hn(e,s){var o;const n=((o=s==null?void 0:s.pages)==null?void 0:o.map(a=>a[e]??[]).flat())??[],r=N.pathOr(0,[0,"pagination","total"],s==null?void 0:s.pages);return{list:n,count:r}}function _n(e){return e.pagination.next_key}async function Xc(e,s,n){const r=z.create(s),o=async(a,i)=>{const d=await r.extend(i?{searchParams:{"pagination.key":i}}:{}).get(e).json(),c=d[n]??[],l=_n(d),u=[...a,...c];return l?o(u,l):u};return o([],null)}const fn=Ue.createQueryKeys("interwovenkit:nft",{collections:(e,s)=>[e,s],collection:(e,s,n)=>[e,s,n],metadata:e=>[e]});function el(e){const{object_addr:s,collection:n}=e;return{object_addr:s,...n}}function tl(e,s){const{collection_addr:n,collection_name:r,nft:o,object_addr:a}=e,i=s.name??o.token_id;return{collection_addr:n,collection_name:r,...o,object_addr:a,...s,name:i}}function sl(e){const{indexerUrl:s}=e,n=X(),{data:r}=k.useSuspenseQuery({queryKey:fn.collections(s,n).queryKey,queryFn:()=>Xc(`indexer/nft/v1/collections/by_account/${n}`,{prefixUrl:s},"collections"),select:o=>o.map(el),staleTime:K.SECOND});return r}function Gr({chain:e,collection:s}){const n=X(),{object_addr:r}=s,{indexerUrl:o}=e;return k.useSuspenseInfiniteQuery({queryKey:fn.collection(o,n,r).queryKey,queryFn:({pageParam:a=""})=>z.create({prefixUrl:o}).get(`indexer/nft/v1/tokens/by_account/${n}`,{searchParams:{collection_addr:r,"pagination.key":a||"","pagination.limit":9}}).json(),initialPageParam:"",getNextPageParam:_n,staleTime:K.SECOND})}function Bn(e){return e==null?void 0:e.replace("ipfs://","https://ipfs.io/ipfs/")}function nl(e){const s=Bn(e);return k.useQuery({queryKey:fn.metadata(s).queryKey,queryFn:async()=>{try{if(!s)return{};const n=await z.get(s).json();return{...n,image:Bn(n.image)}}catch{return{}}},staleTime:K.INFINITY})}const Yr=({nftResponse:e,children:s})=>{const{data:n={}}=nl(e.nft.uri),r=tl(e,n);return s(r)},rl="_thumbnail_1se9u_1",ol="_placeholder_1se9u_15",al="_clickable_1se9u_21",kt={thumbnail:rl,placeholder:ol,clickable:al},ps=({chain:e,collection:s,nft:n,size:r,onClick:o})=>{const a=new URL(`/v1/${e.chainId}/${s.object_addr}/${n.object_addr||n.token_id}`,"https://glyph.initia.xyz").toString();return o?t.jsx("button",{className:P(kt.thumbnail,kt.clickable),onClick:o,style:{width:r,height:r},children:t.jsx(W,{src:a,classNames:{placeholder:kt.placeholder}})}):t.jsx("div",{className:kt.thumbnail,style:{width:r,height:r},children:t.jsx(W,{src:a,classNames:{placeholder:kt.placeholder}})})},il="_item_1rdda_1",cl="_content_1rdda_15",ll="_name_1rdda_21",dl="_count_1rdda_27",ul="_chevron_1rdda_33",$t={item:il,content:cl,name:ll,count:dl,chevron:ul},ml=({chain:e,collection:s})=>{const{data:n}=Gr({chain:e,collection:s}),{list:r,count:o}=hn("tokens",n),[a]=r;return t.jsxs(Rt,{className:$t.item,to:"/collection",state:{collection:s,chain:e},children:[a&&t.jsx(Yr,{nftResponse:a,children:i=>t.jsx(ps,{chain:e,collection:s,nft:i,size:58})}),t.jsxs("div",{className:$t.content,children:[t.jsx("div",{className:$t.name,children:s.name}),o>0&&t.jsx("div",{className:$t.count,children:o})]}),t.jsx("div",{className:$t.chevron,children:t.jsx(b.IconChevronRight,{})})]})},hl="_list_1lv70_1",_l={list:hl},fl=({chain:e})=>{const s=sl(e);return s.length?t.jsx("div",{className:_l.list,children:s.map(n=>t.jsx(ml,{collection:n,chain:e},n.object_addr))}):t.jsx(ue,{children:"No collections"})},pl=()=>t.jsx(Vr,{renderContent:e=>t.jsx(ae,{children:t.jsx(fl,{chain:e})}),storageKey:"nft"}),at=({title:e,content:s,children:n,className:r})=>{const[o,a]=p.useState(!1),i=()=>a(!1);return t.jsx(Mr,{title:e,trigger:t.jsx("button",{className:r,children:n}),open:o,onOpenChange:a,children:s(i)})},xl="_scrollable_1p1lw_1",gl="_list_1p1lw_5",yl="_item_1p1lw_9",jl="_name_1p1lw_13",Vt={scrollable:xl,list:gl,item:yl,name:jl};function Jr({onSelect:e,list:s,...n}){const{getImage:r,getName:o,getKey:a,getIsLoading:i,getDisabled:d}=n;return t.jsx(De,{className:Vt.scrollable,children:t.jsx("div",{className:Vt.list,children:s.map(c=>t.jsxs("button",{className:Vt.item,onClick:()=>e(c),disabled:(i==null?void 0:i(c))||(d==null?void 0:d(c)),children:[t.jsx(W,{src:r(c),width:28,height:28}),t.jsx("span",{className:Vt.name,children:o(c)}),(i==null?void 0:i(c))&&t.jsx(Qe,{size:16})]},a(c)))})})}const Zr=({onSelect:e})=>{const{addedChains:s}=pt();return t.jsx(Jr,{onSelect:n=>e(n.chainId),list:s,getImage:n=>n.logoUrl,getName:n=>n.name,getKey:n=>n.chainId})},wl="_button_1uc4x_1",bl="_name_1uc4x_9",vl="_icon_1uc4x_13",qs={button:wl,name:bl,icon:vl},Cl=({value:e,onSelect:s})=>{const{logoUrl:n,name:r}=Ie(e);return t.jsxs(at,{title:"Select rollup",content:o=>t.jsx(Zr,{onSelect:a=>{s(a),o()}}),className:P("input",qs.button),children:[t.jsx(W,{src:n,width:16,height:16}),t.jsx("span",{className:qs.name,children:r}),t.jsx(b.IconChevronDown,{size:16,className:qs.icon})]})},Nl="_button_1iys9_1",Il={button:Nl},Xr=({onClick:e,disabled:s})=>{const{ref:n,inView:r}=Fo.useInView();return p.useEffect(()=>{r&&e()},[r,e]),t.jsxs("button",{className:Il.button,onClick:e,disabled:s,ref:n,children:[t.jsx("span",{children:"Load more"}),t.jsx(b.IconChevronDown,{size:12})]})};function Sl({indexerUrl:e}){const s=X();return k.useSuspenseInfiniteQuery({queryKey:Mt.txs(e,s).queryKey,queryFn:async({pageParam:n=""})=>{const r={"pagination.key":n||"","pagination.reverse":!0};return z.create({prefixUrl:e}).get(`indexer/tx/v1/txs/by_account/${s}`,{searchParams:r}).json()},initialPageParam:"",getNextPageParam:_n,staleTime:K.SECOND})}const kl="_message_1g2hc_1",$l="_more_1g2hc_8",Rn={message:kl,more:$l},El=({messages:e})=>t.jsxs(t.Fragment,{children:[e.slice(0,3).map((s,n)=>t.jsx("p",{className:Rn.message,children:ls.sentenceCase(s["@type"].split("Msg")[1])},n)),e.length>3&&t.jsx("footer",{className:Rn.more,children:`+${e.length-3} more`})]});function Tl(e){return Object.fromEntries(e.map(({key:s,value:n})=>[s,n]))}const On=N.pipe(N.groupBy(N.prop("metadata")),N.values,N.map((e=[])=>{const{metadata:s}=e[0];return{amount:E.sum(...N.map(N.prop("amount"),e)).toString(),metadata:s}}),N.filter(({amount:e})=>!E(e).isZero()));function Al(e,s,n){try{const o=e.filter(({type:a})=>a==="move").map(({attributes:a})=>Tl(a)).reduce((a,{type_tag:i,data:d})=>{try{const{amount:c,store_addr:l,metadata_addr:u}=JSON.parse(d);return`0x${da(n,u)}`!==l?a:i==="0x1::fungible_asset::DepositEvent"?[...a,{amount:E(c).toString(),metadata:u}]:i==="0x1::fungible_asset::WithdrawEvent"?[...a,{amount:E(c).negated().toString(),metadata:u}]:a}catch{return a}},[s]);return On(o)}catch{return On([])}}const ql=({metadata:e,chain:s,children:n})=>{const{restUrl:r}=s,{data:o}=k.useSuspenseQuery({queryKey:ot.denom(r,e).queryKey,queryFn:()=>z.create({prefixUrl:r}).get("initia/move/v1/denom",{searchParams:{metadata:e}}).json(),select:({denom:a})=>a,staleTime:K.INFINITY});return n(o)},Dl="_change_8jpfs_1",Pl="_positive_8jpfs_9",Fl="_negative_8jpfs_13",Ds={change:Dl,positive:Pl,negative:Fl},Bl=({tx:e,events:s,chain:n})=>{var h,_,x,f,y;const r=Ut(),o=Ot(n),a=ve.computeAddress(`0x${B.toHex(B.fromBase64(e.auth_info.signer_infos[0].public_key.key))}`),i=(h=e.auth_info.fee)==null?void 0:h.payer,d=((_=e.auth_info.fee)==null?void 0:_.amount[0])??{amount:"0",denom:""},c=a===r&&!i;if(!((x=n.metadata)!=null&&x.is_l1||((y=(f=n.metadata)==null?void 0:f.minitia)==null?void 0:y.type)==="minimove"))return null;const l=Tr(d.denom),u={amount:c?d.amount:"0",metadata:l};return Al(s,u,r).map(({amount:w,metadata:j},T)=>{const C=new E(w).isPositive(),I=new E(w).abs().toString();return t.jsx(ae,{suspenseFallback:null,errorBoundaryProps:{fallback:null},children:t.jsx(ql,{metadata:j,chain:n,children:D=>t.jsx(mn,{asset:o(D),chain:n,children:({denom:v,symbol:g,decimals:S})=>t.jsxs("div",{className:P(Ds.change,C?Ds.positive:Ds.negative),children:[C?"+":"-",re(I,{decimals:S})," ",g??se(v)]})})})},T)})},Rl="_link_qkpto_1",Ol="_inner_qkpto_14",Ml="_timestamp_qkpto_23",Ul="_content_qkpto_39",zl="_messages_qkpto_45",Kl="_changes_qkpto_50",Hl="_error_qkpto_57",Ze={link:Rl,inner:Ol,timestamp:Ml,content:Ul,messages:zl,changes:Kl,error:Hl},Ll=({txItem:e,chain:s})=>t.jsx(un,{txHash:e.txhash,chainId:s.chainId,className:Ze.link,children:t.jsxs("div",{className:Ze.inner,children:[t.jsx("div",{className:Ze.timestamp,children:ls.sentenceCase(ft.intlFormatDistance(new Date(e.timestamp),new Date,{locale:"en-US"}))}),t.jsxs("div",{className:Ze.content,children:[t.jsx("div",{className:Ze.messages,children:t.jsx(El,{messages:e.tx.body.messages})}),t.jsx("div",{className:Ze.changes,children:t.jsx(Bl,{...e,chain:s})})]}),e.code!==0&&t.jsxs("div",{className:Ze.error,children:[t.jsx(b.IconWarningFilled,{size:12}),t.jsx("span",{children:"Failed"})]})]})}),Wl="_list_10hx5_1",Ql={list:Wl},Vl=({chain:e})=>{const{data:s,hasNextPage:n,isFetching:r,fetchNextPage:o}=Sl(e),{list:a}=hn("txs",s);return a.length?t.jsxs(t.Fragment,{children:[t.jsx("div",{className:Ql.list,children:a.map(i=>t.jsx(Ll,{txItem:i,chain:e},i.txhash))}),n&&t.jsx(Xr,{onClick:()=>o(),disabled:r})]}):t.jsx(ue,{children:"No activity yet"})},Gl=()=>{const{defaultChainId:e}=oe(),[s,n]=p.useState(e),r=Ie(s);return t.jsxs(t.Fragment,{children:[t.jsx(Cl,{value:s,onSelect:n}),t.jsx(ae,{children:t.jsx(Vl,{chain:r})},s)]})},Yl="_nav_1ldnv_1",Jl="_item_1ldnv_6",Zl="_tabs_1ldnv_28",Xl="_tab_1ldnv_28",Xe={nav:Yl,item:Jl,tabs:Zl,tab:Xl},ed=()=>{Qr();const e=me(),s=pr();return t.jsxs(De,{children:[t.jsxs("div",{className:Xe.nav,children:[t.jsxs(Rt,{to:"/send",className:Xe.item,children:[t.jsx(b.IconArrowRight,{size:16}),t.jsx("span",{children:"Send"})]}),t.jsxs("button",{className:Xe.item,onClick:()=>e("/bridge"),children:[t.jsx(b.IconSwap,{size:16}),t.jsx("span",{children:"Bridge/Swap"})]})]}),t.jsxs(q.Tabs.Root,{value:s,onValueChange:e,children:[t.jsxs(q.Tabs.List,{className:Xe.tabs,children:[t.jsx(q.Tabs.Trigger,{className:Xe.tab,value:"/",children:"Assets"}),t.jsx(q.Tabs.Trigger,{className:Xe.tab,value:"/nfts",children:"NFTs"}),t.jsx(q.Tabs.Trigger,{className:Xe.tab,value:"/activity",children:"Activity"})]}),t.jsx(q.Tabs.Content,{value:"/",children:t.jsx(Zc,{})}),t.jsx(q.Tabs.Content,{value:"/nfts",children:t.jsx(pl,{})}),t.jsx(q.Tabs.Content,{value:"/activity",children:t.jsx(Gl,{})})]})]})};function eo({quantity:e,balance:s,decimals:n},r){if(E.BigNumber(e).isZero()){r.addIssue({code:Q.z.ZodIssueCode.custom,message:"Enter amount",path:["quantity"]});return}if(!s||E.BigNumber(ds(e,n)).gt(s)){r.addIssue({code:Q.z.ZodIssueCode.custom,message:"Insufficient balance",path:["quantity"]});return}}const to=Q.z.string().nonempty("Recipient address is required").refine(e=>F.validate(e),"Invalid address"),td="_header_acels_1",sd="_back_acels_11",nd="_title_acels_23",Ps={header:td,back:sd,title:nd},Pe=({title:e,returnTo:s,extra:n,children:r})=>t.jsxs(t.Fragment,{children:[t.jsxs("header",{className:Ps.header,children:[s!==!1&&t.jsx(Rt,{to:s??-1,className:Ps.back,children:t.jsx(b.IconBack,{size:16})}),t.jsx("h1",{className:Ps.title,children:e}),n]}),t.jsx(De,{children:r})]}),rd="_fieldset_y241y_1",od="_upper_y241y_9",ad="_select_y241y_14",id="_account_y241y_19",cd="_lower_y241y_24",ld="_wrapper_y241y_25",dd="_balance_y241y_32",ud="_value_y241y_36",md="_error_y241y_49",Se={fieldset:rd,upper:od,select:ad,account:id,lower:cd,wrapper:ld,balance:dd,value:ud,error:md},Qs=e=>{const{selectButton:s,accountButton:n,quantityInput:r,balanceButton:o,value:a,errorMessage:i}=e;return t.jsxs("div",{className:Se.fieldset,children:[t.jsxs("div",{className:Se.upper,children:[t.jsx("div",{className:Se.select,children:s}),t.jsx("div",{className:Se.account,children:n})]}),t.jsxs("div",{className:Se.lower,children:[r,t.jsxs("div",{className:Se.wrapper,children:[t.jsx("div",{className:Se.balance,children:o}),a&&t.jsxs("div",{className:Se.value,children:["$",a]})]}),i&&t.jsxs("footer",{className:Se.error,children:[t.jsx(b.IconWarningFilled,{size:12}),t.jsx("p",{children:i})]})]})]})},hd="_images_1txea_1",_d="_chain_1txea_5",Mn={images:hd,chain:_d},pn=({assetLogoUrl:e,chainLogoUrl:s})=>t.jsxs("div",{className:Mn.images,children:[t.jsx(W,{src:e,width:36,height:36}),t.jsx(W,{src:s,width:18,height:18,className:Mn.chain})]}),fd="_root_1ipwv_1",pd="_content_1ipwv_10",xd="_details_1ipwv_18",gd="_symbol_1ipwv_23",yd="_chain_1ipwv_31",jd="_chevron_1ipwv_40",et={root:fd,content:pd,details:xd,symbol:gd,chain:yd,chevron:jd},so=({asset:e,chain:s,readOnly:n})=>{const r=t.jsxs("div",{className:et.content,children:[t.jsx(pn,{assetLogoUrl:e.logoUrl,chainLogoUrl:s.logoUrl}),t.jsxs("div",{className:et.details,children:[t.jsx("div",{className:et.symbol,children:e.symbol}),t.jsxs("div",{className:et.chain,children:["on ",s.name]})]})]});return n?t.jsx("div",{className:et.root,children:r}):t.jsxs("div",{className:et.root,children:[r,t.jsx(b.IconChevronDown,{size:16,className:et.chevron})]})},wd="_wrapper_5vodt_1",bd="_balance_5vodt_11",vd="_button_5vodt_15",Fs={wrapper:wd,balance:bd,button:vd},no=({onClick:e,children:s})=>t.jsxs("div",{className:Fs.wrapper,children:[t.jsx(b.IconWallet,{size:16}),t.jsx("span",{className:Fs.balance,children:s}),t.jsx("button",{type:"button",className:Fs.button,onClick:()=>e(),children:"MAX"})]});function xs(){const e=p.useRef(null),s=de.useMedia("(max-width: 576px)");return p.useEffect(()=>{var n;s||(n=e.current)==null||n.focus()},[s]),e}const Cd="_input_h8073_1",Nd={input:Cd};function Id(e,s){const n=e.replace(/[^0-9.]/g,""),[r,...o]=n.split(".");return o.length===0?r:`${r}.${o.join("").slice(0,s)}`}function ro(e){const{name:s,control:n,dp:r=6,className:o,...a}=e,i=xs();return t.jsx(ne.Controller,{name:s,control:n,render:({field:d})=>t.jsx("input",{...d,className:P(Nd.input,o),onChange:c=>d.onChange(Id(c.target.value,r)),placeholder:"0",inputMode:"decimal",autoComplete:"off",...a,ref:cr.mergeRefs([d.ref,i])})})}const Sd="_input_qpv94_1",kd="_placeholder_qpv94_18",Vs={input:Sd,placeholder:kd},$d=({children:e})=>t.jsx("p",{className:P(Vs.input,{[Vs.placeholder]:E(e).isZero()}),children:e}),os=()=>{const{control:e}=ne.useFormContext();return t.jsx(ro,{name:"quantity",control:e,className:Vs.input})};os.ReadOnly=$d;const Ed="_label_jg0i7_1",Td="_wrapper_jg0i7_7",Ad="_input_jg0i7_10",qd="_clear_jg0i7_18",Gt={label:Ed,wrapper:Td,input:Ad,clear:qd},xn=({mode:e="onChange",myAddress:s,...n})=>{const{validate:r=F.validate,chainType:o="initia",onApply:a,ref:i}=n,d=xs(),{getValues:c,setValue:l,formState:u}=ne.useFormContext(),m=c("recipient"),[h,_]=p.useState(m),x=Ar(),{data:f,isLoading:y,error:w}=k.useQuery({queryKey:Mt.address(x.restUrl,h).queryKey,queryFn:()=>x.getAddress(h),staleTime:K.MINUTE,enabled:x.validateUsername(h)}),j=f??(r(h)?h:""),T=s&&F.equals(j,s),C=async()=>{try{const v=await navigator.clipboard.readText();_(v.trim())}catch{}};p.useEffect(()=>{e==="onChange"&&h&&l("recipient",f??h,{shouldValidate:!0})},[h,e,l,f]);const I=()=>{y||w||(l("recipient",j,{shouldValidate:!0}),a==null||a())},D=()=>{var v;if(y)return t.jsx(Me,{level:"loading",children:"Resolving username..."});if(w)return t.jsx(Me,{level:"error",children:w.message});if(f)return t.jsx(Me,{level:"success",className:"monospace",children:f});if(e==="onSubmit"&&h&&!j)return t.jsx(Me,{level:"error",children:"Invalid address"});if(e==="onChange")return t.jsx(Me,{level:"error",children:(v=u.errors.recipient)==null?void 0:v.message})};return t.jsxs("div",{children:[t.jsxs("label",{htmlFor:"recipient",className:Gt.label,children:[t.jsx("span",{children:"Recipient"}),t.jsx(L.Small,{type:"button",onClick:C,children:"Paste"})]}),t.jsxs("div",{className:Gt.wrapper,children:[t.jsx("input",{id:"recipient",className:P(Gt.input,"monospace"),value:h,onChange:v=>_(v.target.value.trim()),placeholder:o==="initia"?"Address or username":"Enter address",autoComplete:"off",ref:e==="onSubmit"?cr.mergeRefs([i,d]):i}),!!h&&t.jsx("button",{type:"button",className:Gt.clear,onClick:()=>_(""),"aria-label":"Clear recipient",children:t.jsx(b.IconCloseCircleFilled,{size:16})})]}),D(),T&&t.jsx(Me,{children:"This is my address"}),e==="onSubmit"&&t.jsx(ee,{extra:(!s||!!j&&!T)&&t.jsx(Z,{level:"warning",children:"Do not enter an exchange address. Tokens sent to an address that does not support bridge transfer will be irretrievable."}),children:t.jsx(L.White,{type:"button",onClick:I,disabled:y||!!w||!j,children:"Apply"})})]})},Dd="_container_1a4ds_1",Pd="_badge_1a4ds_5",Un={container:Dd,badge:Pd},oo=e=>{const{offset:s=-4,disabled:n,children:r,className:o}=e;return t.jsxs("div",{className:P(Un.container,o),children:[r,!n&&t.jsx("div",{className:Un.badge,style:{right:s,top:s}})]})},Fd="_tooltip_6zakp_1",Bd="_arrow_6zakp_43",zn={tooltip:Fd,arrow:Bd},wt=({label:e,children:s,small:n,...r})=>t.jsxs(q.Tooltip.Root,{...r,children:[t.jsx(q.Tooltip.Trigger,{asChild:!0,children:s}),t.jsx(q.Tooltip.Portal,{container:Ft(),children:t.jsxs(q.Tooltip.Content,{className:P(zn.tooltip,{small:n}),collisionBoundary:Ft(),collisionPadding:8,sideOffset:4,children:[e,t.jsx(q.Tooltip.Arrow,{className:zn.arrow})]})})]}),Rd="_stack_a3b9q_1",Od="_title_a3b9q_8",Md="_grid_a3b9q_15",Ud="_item_a3b9q_21",zd="_button_a3b9q_25",Kd="_active_a3b9q_43",ut={stack:Rd,title:Od,grid:Md,item:Ud,button:zd,active:Kd},nt=({label:e,chains:s,value:n,onSelect:r,getShowIndicator:o})=>t.jsxs("div",{children:[e&&t.jsx("h2",{className:ut.title,children:e}),t.jsx("div",{className:ut.grid,children:s.map(({chainId:a,name:i,logoUrl:d})=>t.jsx(oo,{offset:-2,disabled:!(o!=null&&o(a)),className:ut.item,children:t.jsx(wt,{label:i,disableHoverableContent:!0,children:t.jsx("button",{type:"button",className:P(ut.button,{[ut.active]:a===n}),onClick:()=>r(a),children:t.jsx(W,{src:d,width:28,height:28,circle:!0})})})},a))})]}),Hd=({children:e})=>t.jsx("div",{className:ut.stack,children:e});nt.Stack=Hd;function ao(e,s,n){return n.filter(r=>{const o=e.map(a=>r[a]).map(a=>String(a??"").toLowerCase());return N.any(N.includes(s.toLowerCase()),o)})}const Ld="_root_qd12v_1",Wd="_label_qd12v_8",Qd="_input_qd12v_14",Vd="_clear_qd12v_20",Yt={root:Ld,label:Wd,input:Qd,clear:Vd},io=({value:e,onChange:s,placeholder:n="Search",className:r})=>t.jsxs("div",{className:P(Yt.root,r),children:[t.jsx("label",{htmlFor:"search",className:Yt.label,children:t.jsx(b.IconSearch,{size:16})}),t.jsx("input",{id:"search",type:"text",className:Yt.input,value:e,onChange:o=>s(o.target.value),placeholder:n,ref:xs()}),e&&t.jsx("button",{className:Yt.clear,onClick:()=>s(""),children:t.jsx(b.IconCloseCircleFilled,{size:20})})]}),Gd="_container_17tpb_1",Yd="_list_17tpb_6",Jd="_item_17tpb_12",Zd="_logo_17tpb_31",Xd="_info_17tpb_35",eu="_symbol_17tpb_40",tu="_name_17tpb_44",su="_balance_17tpb_50",nu="_value_17tpb_58",ke={container:Gd,list:Yd,item:Jd,logo:Zd,info:Xd,symbol:eu,name:tu,balance:su,value:nu},co=e=>{const{assets:s,onSelect:n,renderAsset:r=(d,c)=>c(d)}=e,[o,a]=p.useState(""),i=ao(["symbol"],o,s);return t.jsxs("div",{className:ke.container,children:[t.jsx(io,{value:o,onChange:a,placeholder:"Search by symbol"}),i.length===0?t.jsx(ue,{children:"No assets"}):t.jsx("div",{className:ke.list,children:i.map(d=>t.jsx("button",{type:"button",className:ke.item,onClick:()=>n(d.denom),children:r(d,({logoUrl:c,symbol:l,name:u,balance:m,decimals:h,value:_=0})=>t.jsxs(t.Fragment,{children:[t.jsx(W,{src:c,width:32,height:32,className:ke.logo}),t.jsxs("div",{className:ke.info,children:[t.jsx("div",{className:ke.symbol,children:l}),t.jsx("div",{className:ke.name,children:u})]}),t.jsxs("div",{className:ke.balance,children:[m&&t.jsx("div",{children:re(m,{decimals:h})}),_>0&&t.jsxs("div",{className:ke.value,children:["$",rt(_)]})]})]}))},d.denom))})]})},ru=({chain:e,onSelect:s})=>{const n=qr(e);return n.length===0?t.jsx(ue,{children:"No assets"}):t.jsx(co,{assets:n,onSelect:s,renderAsset:(r,o)=>t.jsx(mn,{asset:r,chain:e,children:a=>o(a)})})},ou=({afterSelect:e})=>{const{watch:s,setValue:n}=ne.useFormContext(),{chainId:r}=s(),[o,a]=p.useState(r),i=Ie(o),{addedChains:d}=pt(),c=l=>{n("chainId",o),n("denom",l),e()};return t.jsxs(t.Fragment,{children:[d.length>1&&t.jsx(nt.Stack,{children:t.jsx(nt,{chains:d,value:o,onSelect:a})}),t.jsx(ae,{children:t.jsx(ru,{chain:i,onSelect:c})},o)]})},au="_fields_brpej_1",iu="_divider_brpej_11",Kn={fields:au,divider:iu},cu=()=>{var g,S,O,U;const{address:e,initiaAddress:s,requestTxSync:n}=qe(),{register:r,watch:o,setValue:a,handleSubmit:i,formState:d}=ne.useFormContext(),{chainId:c,denom:l,quantity:u,memo:m}=o(),{addedChains:h}=pt(),_=Ie(c),x=cn(_),f=an(l,_),{data:y}=jr(_.chainId),{decimals:w}=f,j=((g=x.find(A=>A.denom===l))==null?void 0:g.amount)??"0",T=(S=y==null?void 0:y.find(({id:A})=>A===l))==null?void 0:S.price,C=E(u).gt(0)&&E(u).isEqualTo(qt(j,w)),I=_.fees.fee_tokens.some(A=>A.denom===l),{mutate:D,isPending:v}=k.useMutation({mutationFn:({chainId:A,denom:M,quantity:V,recipient:je,memo:ie})=>{const we=ds(V,w),Y=[{typeUrl:"/cosmos.bank.v1beta1.MsgSend",value:Bo.MsgSend.fromPartial({fromAddress:s,toAddress:F.toBech32(je),amount:[{denom:M,amount:we}]})}];return n({messages:Y,memo:ie,chainId:A,internal:"/"})}});return t.jsx(Pe,{title:"Send",children:t.jsxs("form",{onSubmit:i(A=>D(A)),children:[t.jsxs("div",{className:Kn.fields,children:[t.jsx(Qs,{selectButton:t.jsx(at,{title:h.length>1?"Select chain and asset":"Select asset",content:A=>t.jsx(ou,{afterSelect:A}),children:t.jsx(so,{asset:f,chain:_})}),quantityInput:t.jsx(os,{}),balanceButton:t.jsx(no,{onClick:()=>a("quantity",qt(j,w),{shouldValidate:!0}),children:re(j,{decimals:w})}),value:u?T?rt(E(u).times(T)):"-":"0",errorMessage:(O=d.errors.quantity)==null?void 0:O.message}),t.jsx("div",{className:Kn.divider}),t.jsx(xn,{myAddress:e}),t.jsxs("div",{children:[t.jsx("label",{htmlFor:"memo",children:"Memo (optional)"}),t.jsx("input",{...r("memo"),id:"memo",autoComplete:"off"}),t.jsx(Me,{level:"error",children:(U=d.errors.memo)==null?void 0:U.message})]}),t.jsxs(Z.Stack,{children:[C&&I&&t.jsx(Z,{level:"warning",children:"Make sure to leave enough for transaction fee"}),!m&&t.jsx(Z,{level:"warning",children:"Check if the above transaction requires a memo"})]})]}),t.jsx(ee,{children:t.jsx(L.White,{type:"submit",loading:v,disabled:!d.isValid,children:"Confirm"})})]})})},lu=Q.z.object({chainId:Q.z.string().nonempty(),denom:Q.z.string().nonempty(),quantity:Q.z.string().nonempty("Amount is required"),recipient:to,memo:Q.z.string().optional().refine(e=>!e||new Blob([e]).size<=256,"Memo is too long")}),du=()=>{const e=ze(),s=hs(),n=Dt(s),[r]=n,{chain:o=s,denom:a=r.denom}=e,i=it(),d=X(),c=k.useQueryClient(),l=ne.useForm({mode:"onChange",defaultValues:{chainId:o.chainId,denom:a,quantity:"",recipient:"",memo:""},resolver:sn.zodResolver(lu.superRefine(({chainId:u,denom:m,quantity:h},_)=>{var j;const x=i(u),{decimals:f}=c.getQueryData(ot.item(u,m).queryKey)??{decimals:0},{balances:y}=c.getQueryData(Mt.balances(x.restUrl,d).queryKey)??{balances:[]},w=(j=y.find(T=>T.denom===m))==null?void 0:j.amount;eo({quantity:h,balance:w,decimals:f},_)}))});return t.jsx(ne.FormProvider,{...l,children:t.jsx(cu,{})})},uu="_grid_4j669_1",mu="_item_4j669_7",hu="_name_4j669_15",Bs={grid:uu,item:mu,name:hu},_u=()=>{const e=me(),{collection:s,chain:n}=ze(),{data:r,hasNextPage:o,isFetching:a,fetchNextPage:i}=Gr({chain:n,collection:s}),{list:d}=hn("tokens",r);return t.jsxs(Pe,{title:s.name,children:[t.jsx("div",{className:Bs.grid,children:d.map(c=>t.jsx(Yr,{nftResponse:c,children:l=>t.jsxs("div",{className:Bs.item,children:[t.jsx(ps,{chain:n,collection:s,nft:l,onClick:()=>e("/nft",{collection:s,nft:l,chain:n})}),t.jsx("div",{className:Bs.name,children:l.name})]})},c.object_addr))}),o&&t.jsx(Xr,{onClick:()=>i(),disabled:a})]})},fu="_header_196nx_1",pu="_name_196nx_6",xu="_attributes_196nx_12",gu="_title_196nx_15",yu="_list_196nx_21",ju="_item_196nx_25",wu="_type_196nx_34",bu="_value_196nx_40",Re={header:fu,name:pu,attributes:xu,title:gu,list:yu,item:ju,type:wu,value:bu},vu=()=>{const e=me(),s=ze(),{collection:n,nft:r,chain:o}=s,{image:a,name:i,attributes:d}=r;return t.jsxs(Pe,{title:n.name,children:[t.jsxs("header",{className:Re.header,children:[a&&t.jsx(ps,{chain:o,collection:n,nft:r}),t.jsx("h2",{className:Re.name,children:i})]}),t.jsx(ee,{children:t.jsx(L.White,{onClick:()=>e("/nft/send",s),children:"Send"})}),d&&t.jsxs("div",{className:Re.attributes,children:[t.jsxs("header",{className:Re.title,children:["Traits (",d.length,")"]}),t.jsx("div",{className:Re.list,children:d.map(({trait_type:c,value:l})=>t.jsxs("div",{className:Re.item,children:[t.jsx("div",{className:Re.type,children:c}),t.jsx("div",{className:Re.value,children:l})]},c))})]})]})};async function Cu({object_addr:e},{restUrl:s}){const n=await Nu(e,s);return n.startsWith("ibc/")?Er("0x1",n)===e.replace("0x","").padStart(64,"0")?{class_id:n,class_trace:await Gs(n,s)}:{class_id:`move/${e.replace("0x","").padStart(64,"0")}`,class_trace:await Gs(n,s)}:{class_id:`move/${e.replace("0x","").padStart(64,"0")}`,class_trace:null}}async function Nu(e,s){const{data:n}=await z.create({prefixUrl:s}).post("initia/move/v1/view/json",{json:{address:"0x1",module_name:"collection",function_name:"name",type_args:["0x1::collection::Collection"],args:[JSON.stringify(e)]}}).json();return JSON.parse(n)}async function Iu({object_addr:e},{restUrl:s}){const n=await Su(e,s);if(!n.startsWith("ibc/"))return{class_id:`evm/${F.toHex(e)}`,class_trace:null};const r=await Gs(n,s);return r?{class_id:n,class_trace:r}:{class_id:`evm/${F.toHex(e)}`,class_trace:null}}async function Su(e,s){const n=new ve.Interface([{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"}]),{response:r}=await z.create({prefixUrl:s}).post("minievm/evm/v1/call",{json:{sender:F.toBech32("0x1"),contract_addr:F.toPrefixedHex(e),input:n.encodeFunctionData("name")}}).json();return n.decodeFunctionResult("name",r)[0]}async function ku({creator_addr:e,object_addr:s},n,r){var x,f;const o=await $u(s,n.restUrl),a=(f=(x=n.metadata)==null?void 0:x.ibc_channels)==null?void 0:f.find(({chain_id:y,version:w})=>y===r.chain_id&&w.includes("ics721-1"));if(!a)throw new Error("Channel not found");const i=a.port_id,d=i.split(".")[1],c=B.toBase64(tt.toBytes(JSON.stringify({class_id:{contract:s}}))),l=`cosmwasm/wasm/v1/contract/${d}/smart/${c}`,{data:u}=await z.create({prefixUrl:n.restUrl}).get(l).json(),m=u??s;if(u&&e!==i.replace("wasm.","")){const[y,w]=Hn(u);return{class_id:s,class_trace:{path:y,base_class_id:w}}}const[h,_]=Hn(o);return{class_id:m,class_trace:{path:h,base_class_id:_}}}async function $u(e,s){const n=B.toBase64(tt.utf8ToBytes(JSON.stringify({contract_info:{}}))),{name:r}=await z.create({prefixUrl:s}).get(`cosmwasm/wasm/v1/contract/${e}/smart/${n}`).json();return r}const Eu={minimove:Cu,minievm:Iu,miniwasm:ku};async function Tu({collection:e,nft:s,srcChain:n,intermediaryChain:r}){var i,d,c;const o=(i=n.metadata)!=null&&i.is_l1?"minimove":(c=(d=n.metadata)==null?void 0:d.minitia)==null?void 0:c.type;if(!(o==="minimove"||o==="minievm"||o==="miniwasm"))throw new Error(`Unsupported minitia type: ${o}`);const a=await Eu[o](e,n,r);return Object.assign(a,o==="minievm"&&{token_ids:await Au([s.token_id],a.class_id,n.restUrl)})}async function Gs(e,s){const n=e.replace("ibc/",""),{class_trace:r}=await z.create({prefixUrl:s}).get(`ibc/apps/nft_transfer/v1/class_traces/${n}`).json();return r}async function Au(e,s,n){const{token_infos:r}=await z.create({prefixUrl:n}).get(`minievm/evm/v1/erc721/origin_token_infos/${s}`,{searchParams:{token_ids:e.join(",")}}).json();return r.map(({token_origin_id:o})=>o)}function Hn(e){const s=/^(.*channel-\d+)\/(.*)$/,n=e.match(s);if(!n)throw new Error("Pattern `channel-{number}/` not found.");const[,r,o]=n;return[r,o]}const qu="_header_5w36t_1",Du="_name_5w36t_8",Pu="_collection_5w36t_15",Fu="_nft_5w36t_20",Bu="_fields_5w36t_24",Ru="_chain_5w36t_29",lt={header:qu,name:Du,collection:Pu,nft:Fu,fields:Bu,chain:Ru},Ou=Ue.createQueryKeys("interwovenkit:send-nft",{simulation:e=>[e]}),Mu=()=>{const{chain:e,collection:s,nft:n}=ze(),{routerApiUrl:r}=oe(),o=_s(),a=ye(),{address:i,initiaAddress:d,requestTxSync:c}=qe(),{watch:l,setValue:u,handleSubmit:m,formState:h}=ne.useFormContext(),_=l(),{recipient:x,dstChainId:f}=_,y=Ie(f),w=k.useQuery({queryKey:Ou.simulation({collection:s,nft:n,sender:d,recipient:x,srcChain:e,dstChainId:f,layer1:a,routerApiUrl:r}).queryKey,queryFn:async()=>{const v=Object.assign({from_address:d,from_chain_id:e.chainId,to_address:F.toBech32(x),to_chain_id:f,collection_address:s.object_addr,token_ids:[n.token_id],object_addresses:[n.object_addr]},e.chainId!==f&&await Tu({collection:s,nft:n,srcChain:e,intermediaryChain:a})),{msgs:g}=await z.create({prefixUrl:r}).post("nft",{json:v}).json();return g.map(S=>o.fromAmino(S))},enabled:!!x}),{data:j,isLoading:T,error:C}=w,{mutate:I,isPending:D}=k.useMutation({mutationFn:async()=>{if(!j)throw new Error("Route not found");await c({messages:j,chainId:e.chainId,internal:"/nfts"})}});return t.jsxs("form",{onSubmit:m(()=>I()),children:[t.jsxs("header",{className:lt.header,children:[n.image&&t.jsx(ps,{chain:e,collection:s,nft:n,size:80}),t.jsxs("div",{className:lt.name,children:[t.jsx("div",{className:lt.collection,children:s.name}),t.jsx("div",{className:lt.nft,children:n.name})]})]}),t.jsxs("div",{className:lt.fields,children:[t.jsx(q.VisuallyHidden.Root,{children:t.jsxs("div",{children:[t.jsx("div",{className:"label",children:"Destination rollup"}),t.jsxs(at,{title:"Destination rollup",content:v=>t.jsx(Zr,{onSelect:g=>{u("dstChainId",g),v()}}),className:P("input",lt.chain),children:[t.jsx(W,{src:y.logoUrl,width:20,height:20}),t.jsx("span",{children:y.name})]})]})}),t.jsx(xn,{myAddress:i,ref:xs()})]}),t.jsx(ee,{children:t.jsx(L.White,{loading:T||D,disabled:!h.isValid,children:C?"Route not found":"Confirm"})})]})},Uu=Q.z.object({dstChainId:Q.z.string().nonempty(),recipient:to}),zu=()=>{const{chain:e}=ze(),s=ne.useForm({defaultValues:{dstChainId:e.chainId},resolver:sn.zodResolver(Uu)});return t.jsx(Pe,{title:"Send NFT",children:t.jsx(ne.FormProvider,{...s,children:t.jsx(Mu,{})})})},Ku="_item_ny5a8_1",Hu="_header_ny5a8_11",Lu="_name_ny5a8_19",Wu="_link_ny5a8_24",Qu="_button_ny5a8_40",dt={item:Ku,header:Hu,name:Lu,link:Wu,button:Qu},Rs=e=>{var h;const{chainId:s,name:n,logoUrl:r,website:o,metadata:a}=e,{defaultChainId:i}=oe(),{addedChains:d,addChain:c,removeChain:l}=pt(),u=d.find(_=>_.chainId===s),m=()=>s===i?null:u?t.jsx("button",{className:dt.button,onClick:()=>l(s),children:t.jsx(b.IconMinus,{size:14})}):t.jsx("button",{className:dt.button,onClick:()=>c(s),children:t.jsx(b.IconPlus,{size:14})});return t.jsxs("div",{className:dt.item,children:[t.jsx(W,{src:r,width:32,height:32,title:(h=a==null?void 0:a.minitia)==null?void 0:h.type}),t.jsxs("header",{className:dt.header,children:[t.jsx("h3",{className:dt.name,children:n}),o&&t.jsx("a",{className:dt.link,href:ir(o),target:"_blank",children:t.jsx(b.IconExternalLink,{size:12})})]}),m()]})},Vu="_content_14twd_1",Gu="_search_14twd_5",Yu="_title_14twd_9",Ju="_count_14twd_18",Zu="_list_14twd_23",Oe={content:Vu,search:Gu,title:Yu,count:Ju,list:Zu},Xu=()=>{const[e,s]=p.useState(""),{chains:n,addedChains:r,notAddedChains:o}=pt(),a=ao(["chainId","name"],e,n);return t.jsx(Pe,{title:"Manage rollup list",children:t.jsxs("div",{className:Oe.content,children:[t.jsx(io,{value:e,onChange:s,className:Oe.search}),e?a.length===0?t.jsx(ue,{children:"No chains"}):a.map(i=>p.createElement(Rs,{...i,key:i.chainId})):t.jsxs(t.Fragment,{children:[t.jsxs("div",{className:Oe.list,children:[t.jsxs("h2",{className:Oe.title,children:[t.jsx("span",{children:"Shown"}),t.jsxs("span",{className:Oe.count,children:["(",r.length,")"]})]}),r.map(i=>p.createElement(Rs,{...i,key:i.chainId}))]}),t.jsxs("div",{className:Oe.list,children:[t.jsxs("h2",{className:Oe.title,children:[t.jsx("span",{children:"Hidden"}),t.jsxs("span",{className:Oe.count,children:["(",o.length,")"]})]}),o.map(i=>p.createElement(Rs,{...i,key:i.chainId}))]})]})]})})};function em(){return ye().network_type==="testnet"}const lo=Q.z.object({srcChainId:Q.z.string().nonempty(),srcDenom:Q.z.string().nonempty(),dstChainId:Q.z.string().nonempty(),dstDenom:Q.z.string().nonempty(),quantity:Q.z.string().nonempty("Amount is required"),sender:Q.z.string().nonempty(),cosmosWalletName:Q.z.string().optional(),recipient:Q.z.string().nonempty("Recipient address is required"),slippagePercent:Q.z.string().nonempty()});function Ve(){return ne.useFormContext()}function tm(){const e=ze(),s=em(),n={quantity:"",slippagePercent:"0.5",sender:"",cosmosWalletName:"",recipient:""},r={...n,srcChainId:"initiation-2",srcDenom:"uusdc",dstChainId:"initiation-2",dstDenom:"uinit"},o={...n,srcChainId:"interwoven-1",srcDenom:"ibc/6490A7EAB61059BFC1CDDEB05917DD70BDF3A611654162A1A47DB930D40D8AF4",dstChainId:"interwoven-1",dstDenom:"uinit"},a=N.pickBy(i=>i!==null,{srcChainId:localStorage.getItem(H.BRIDGE_SRC_CHAIN_ID),srcDenom:localStorage.getItem(H.BRIDGE_SRC_DENOM),dstChainId:localStorage.getItem(H.BRIDGE_DST_CHAIN_ID),dstDenom:localStorage.getItem(H.BRIDGE_DST_DENOM),quantity:localStorage.getItem(H.BRIDGE_QUANTITY),slippagePercent:localStorage.getItem(H.BRIDGE_SLIPPAGE_PERCENT)});return{...s?r:o,...a,...e}}function uo(){const{initiaAddress:e,hexAddress:s}=qe(),n=We(),r=yt();return o=>{const a=n(o);switch(r(a)){case"initia":return e;case"evm":return s;default:return""}}}function Ys(){const e=We(),s=yt();return(n,r)=>{const o=e(r);switch(s(o)){case"initia":return F.validate(n);case"evm":return ve.isAddress(n);case"cosmos":try{return B.fromBech32(n).prefix===o.bech32_prefix}catch{return!1}default:return!1}}}function sm(){const e=We(),s=yt();return({initialAddress:n,initialChainId:r,chainId:o,fallbackAddress:a})=>{const i=e(r),d=s(i),c=e(o),l=s(c);if(d==="evm"&&l==="initia")return F.toBech32(n);if(d==="initia"&&l==="evm")return F.toPrefixedHex(n);if(d===l)return n;if(a){if(l==="initia")return F.toBech32(a);if(l==="evm")return F.toPrefixedHex(a)}return""}}const nm=[["d",24*60*60],["h",60*60],["m",60],["s",1]];function Js(e){if(!e)return;const{formattedParts:s}=nm.reduce(({remainingSeconds:n,formattedParts:r},[o,a])=>{const i=Math.floor(n/a);return{remainingSeconds:n-i*a,formattedParts:i>0?[...r,`${i}${o}`]:r}},{remainingSeconds:e,formattedParts:[]});return s.join(" ")}function mo(e){return e==null?void 0:e.map(s=>{const{amount:n,origin_asset:r}=s;return`${re(n,{decimals:r.decimals??0})} ${r.symbol}`}).join(", ")}function Ln(e,s){const{watch:n}=Ve(),r=n(),o=Le(),a=We(),i=yt(),d={...r,quantity:e},c=k.useQueryClient();return k.useQuery({queryKey:pe.route(d,s==null?void 0:s.isOpWithdraw).queryKey,queryFn:()=>{const{srcChainId:l,srcDenom:u,quantity:m,dstChainId:h,dstDenom:_}=d,{symbol:x,decimals:f}=c.getQueryData(pe.asset(l,u).queryKey)??{decimals:0},y={amount_in:ds(m,f),source_asset_chain_id:l,source_asset_denom:u,dest_asset_chain_id:h,dest_asset_denom:_,go_fast:x==="USDC"&&i(a(l))==="evm",is_op_withdraw:s==null?void 0:s.isOpWithdraw};return o.post("v2/fungible/route",{json:y}).json()},enabled:!!Number(d.quantity)&&!(s!=null&&s.disabled),staleTime:K.MINUTE})}function rm(e){return k.useQuery({queryKey:pe.routeErrorInfo(e||new Error).queryKey,queryFn:async()=>{if(!e||!(e instanceof z.HTTPError))return null;const{response:s}=e;return(s.headers.get("content-type")??"").includes("application/json")?(await s.json()).info??null:null}})}function om(){var m,h,_;const{watch:e}=Ve(),{srcChainId:s,srcDenom:n,dstChainId:r,dstDenom:o}=e(),a=Ne(s),i=Pt(a),d=Ae(n,s),c=Ae(o,r),l=ye(),u=He();return i==="initia"&&r===l.chainId&&d.symbol===c.symbol&&((_=(h=(m=u.find(x=>x.chainId===s))==null?void 0:m.metadata)==null?void 0:h.op_denoms)==null?void 0:_.includes(c.denom))}var Zs=(e=>(e.FEE_BEHAVIOR_DEDUCTED="FEE_BEHAVIOR_DEDUCTED",e.FEE_BEHAVIOR_ADDITIONAL="FEE_BEHAVIOR_ADDITIONAL",e))(Zs||{});function gn(e,s){const n=Le();return k.useQuery({queryKey:pe.balances(s,e).queryKey,queryFn:()=>n.post("v2/info/balances",{json:{chains:{[s]:{address:e,denoms:[]}}}}).json(),select:({chains:r})=>e?r?r[s].denoms??{}:{}:{},enabled:!!e,staleTime:K.SECOND})}function am(e,s,n){const{data:r={}}=gn(e,s);return N.path([n],r)}const im=({address:e,chain:s,onSelect:n})=>{const r=_t(s.chain_id),{data:o={}}=gn(e,s.chain_id);return t.jsx(co,{assets:N.sortWith([N.descend(a=>a.symbol==="INIT"),N.descend(a=>a.value),({balance:a="0"},{balance:i="0"})=>E(i).comparedTo(a)??0,N.ascend(a=>a.symbol.toLowerCase())],r.filter(a=>!a.hidden).map(a=>{const{denom:i,symbol:d=se(i),logo_uri:c}=a,l=o[i]??{};return{...a,symbol:d,decimals:a.decimals??0,logoUrl:c??"",name:a.name??"",balance:l.amount,value:Number(l.value_usd??0)}})),onSelect:n})},cm=({type:e,afterSelect:s})=>{const n=e==="src"?"srcChainId":"dstChainId",r=e==="src"?"srcDenom":"dstDenom",o=e==="src"?"sender":"recipient",a=gt(),i=ln(),{watch:d,setValue:c,trigger:l}=Ve(),u=d("quantity"),m=d(o),h=d(n),[_,x]=p.useState(h),f=Ne(_),y=sm(),w=Pr(),[j,T]=N.partition(I=>w(I.chain_id),i.filter(I=>!I.hidden)),C=I=>{c(n,_),c(r,I),Number(u)&&l(),s()};return t.jsxs(t.Fragment,{children:[t.jsxs(nt.Stack,{children:[t.jsx(nt,{label:"Interwoven Economy",chains:j.map(({chain_id:I,chain_name:D,pretty_name:v,logo_uri:g})=>({chainId:I,name:v||D,logoUrl:g??""})),value:_,onSelect:x}),t.jsx(nt,{label:"Chains",chains:T.map(({chain_id:I,chain_name:D,pretty_name:v,logo_uri:g})=>({chainId:I,name:v||D,logoUrl:g??""})),value:_,onSelect:x})]}),t.jsx(ae,{children:t.jsx(im,{address:y({initialAddress:m,initialChainId:h,chainId:_,fallbackAddress:e==="src"?a:void 0}),chain:f,onSelect:C})},_)]})},Wn=({type:e})=>{const s=e==="src"?"srcChainId":"dstChainId",n=e==="src"?"srcDenom":"dstDenom",r=e==="src"?"Select source chain and asset":"Select destination chain and asset",{watch:o}=Ve(),a=o(s),i=o(n),d=Ne(a),c=Ae(i,a);return t.jsx(at,{title:r,content:l=>t.jsx(cm,{type:e,afterSelect:l}),children:t.jsx(so,{asset:{denom:c.denom,decimals:c.decimals??0,symbol:c.symbol??se(c.denom),logoUrl:c.logo_uri??""},chain:{chainId:d.chain_id,name:d.pretty_name||d.chain_name,logoUrl:d.logo_uri??""}})})};function gs(){const e=[{name:"Keplr",image:"https://assets.initia.xyz/images/wallets/Keplr.webp",getProvider:()=>window.keplr,fallbackUrl:"https://keplr.app/get"},{name:"Leap",image:"https://assets.initia.xyz/images/wallets/Leap.webp",getProvider:()=>window.leap,fallbackUrl:"https://leapwallet.io/download"}];return{list:e,find:n=>e.find(r=>r.name===n)}}const lm="_account_iwrlj_8",dm="_clear_iwrlj_27",um="_white_iwrlj_38",Et={account:lm,clear:dm,white:um},Qn=({type:e})=>{const{watch:s,setValue:n}=Ve(),{srcChainId:r,dstChainId:o,cosmosWalletName:a}=s(),d=s(e==="src"?"sender":"recipient"),c=Pt(Ne(o)),{list:l,find:u}=gs(),m=u(a),h=uo(),_=Ys(),x=h(o),f=F.equals(d,x),y=()=>t.jsx(at,{title:"Connect wallet",content:T=>t.jsx(Jr,{onSelect:async C=>{const I=C.getProvider();if(!I)return window.open(C.fallbackUrl,"_blank");const D=I.getOfflineSigner(r),[{address:v}]=await D.getAccounts();n("sender",v),n("cosmosWalletName",C.name),T()},list:l,getImage:C=>C.image,getName:C=>C.name,getKey:C=>C.name}),className:P(Et.account,{[Et.white]:!d}),children:d?t.jsxs(t.Fragment,{children:[m&&t.jsx(W,{src:m.image,width:18,height:18}),t.jsx("span",{className:"monospace",children:se(d)})]}):t.jsxs(t.Fragment,{children:[t.jsx("span",{children:"Connect wallet"}),t.jsx(b.IconChevronRight,{size:14})]})}),w=T=>t.jsx(at,{title:"Recipient",content:C=>t.jsx(De,{children:t.jsx(xn,{mode:"onSubmit",myAddress:x,chainType:c,validate:I=>_(I,o),onApply:C})}),className:Et.account,children:T}),j=()=>{switch(c){case"initia":case"evm":return f?w(t.jsx(b.IconWallet,{size:14})):t.jsxs("div",{className:Et.account,children:[t.jsx("span",{className:"monospace",children:se(d)}),t.jsx("button",{type:"button",className:Et.clear,onClick:()=>n("recipient",x,{shouldValidate:!0}),"aria-label":"Reset to my address",children:t.jsx(b.IconCloseCircleFilled,{size:14})})]});case"cosmos":return w(t.jsxs(t.Fragment,{children:[d?t.jsx("span",{className:"monospace",children:se(d)}):t.jsx("span",{children:"Recipient"}),t.jsx(b.IconEdit,{size:14})]}))}};switch(e){case"src":return y();case"dst":return j()}},mm="_description_l5bcv_1",hm="_presets_l5bcv_8",_m="_preset_l5bcv_8",fm="_active_l5bcv_29",pm="_custom_l5bcv_40",xm="_wrapper_l5bcv_46",gm="_percent_l5bcv_49",be={description:mm,presets:hm,preset:_m,active:fm,custom:pm,wrapper:xm,percent:gm},Vn=["0.1","0.5","1.0"],ym=({afterConfirm:e})=>{const s=Ve(),n=s.getValues("slippagePercent"),[r,o]=p.useState(null),{control:a,watch:i,getValues:d,setValue:c}=ne.useForm({defaultValues:{value:n}}),l=i("value");p.useEffect(()=>{const f=Vn.findIndex(y=>y===n);o(f>=0?f:null)},[n]);const u=(f,y)=>{c("value",f),o(y)},m=()=>{o(null)},h=p.useMemo(()=>Number(l)>100?{type:"error",text:"Slippage must be less than 100%"}:Number(l)>5?{type:"warning",text:"Your transaction may be frontrun"}:Number(l)<.5?{type:"warning",text:"Your transaction may fail"}:null,[l]),_=(h==null?void 0:h.type)==="error",x=({value:f})=>{s.setValue("slippagePercent",f),e()};return t.jsxs(De,{children:[t.jsx("p",{className:be.description,children:"Slippage is how much price movement you can tolerate between the time you send out a transaction and the time it's executed."}),t.jsxs("div",{className:be.presets,children:[Vn.map((f,y)=>t.jsxs("button",{type:"button",className:P(be.preset,{[be.active]:r===y}),onClick:()=>u(f,y),children:[f,"%"]},f)),r!==null?t.jsx("button",{type:"button",className:P(be.preset,be.custom),onClick:()=>o(null),children:"Custom"}):t.jsxs("div",{className:be.wrapper,children:[t.jsx(ro,{name:"value",control:a,dp:2,onFocus:m,placeholder:"",className:P(be.preset,be.active)}),t.jsx("span",{className:be.percent,children:"%"})]})]}),h&&t.jsx(Z,{level:h.type,children:h.text}),t.jsx(ee,{children:t.jsx(L.White,{type:"button",onClick:()=>x(d()),disabled:_,children:"Confirm"})})]})},jm="_stack_hvmmo_1",wm="_button_hvmmo_6",bm="_checked_hvmmo_14",vm="_checkmark_hvmmo_20",Cm="_inner_hvmmo_30",Nm="_info_hvmmo_42",Im="_duration_hvmmo_51",Sm="_amount_hvmmo_61",km="_symbol_hvmmo_71",$e={stack:jm,button:wm,checked:bm,checkmark:vm,inner:Cm,info:Nm,duration:Im,amount:Sm,symbol:km},$m=({children:e})=>t.jsx("div",{className:$e.stack,children:e}),es=({label:e,query:s,value:n,onSelect:r,checked:o})=>{const{data:a,isLoading:i}=s,{watch:d}=Ve(),{dstChainId:c,dstDenom:l}=d(),u=Ae(l,c);return t.jsxs("button",{type:"button",className:P($e.button,{[$e.checked]:o}),onClick:()=>r(n),children:[t.jsx("div",{className:$e.checkmark,children:o&&t.jsx("span",{className:$e.inner})}),t.jsxs("div",{className:$e.info,children:[t.jsx("div",{children:e}),t.jsxs("div",{className:$e.duration,children:[t.jsx(b.IconClockFilled,{size:12}),a?Js(a.estimated_route_duration_seconds):"Not available"]})]}),t.jsx("div",{className:$e.amount,children:i?t.jsx(Qe,{size:14}):t.jsxs(t.Fragment,{children:[t.jsx("span",{children:re(a==null?void 0:a.amount_out,{decimals:u.decimals})}),t.jsx("span",{className:$e.symbol,children:u.symbol})]})})]})};es.Stack=$m;const Em="_form_lelld_1",Tm="_arrow_lelld_5",Am="_divider_lelld_13",qm="_flip_lelld_21",Dm="_meta_lelld_37",Pm="_row_lelld_50",Fm="_title_lelld_56",Bm="_description_lelld_60",Rm="_icon_lelld_67",Om="_edit_lelld_72",Mm="_warning_lelld_93",J={form:Em,arrow:Tm,divider:Am,flip:qm,meta:Dm,row:Pm,title:Fm,description:Bm,icon:Rm,edit:Om,warning:Mm},Um=()=>{var bn,vn,Cn;const e=me(),[s,n]=de.useLocalStorage(H.BRIDGE_ROUTE_TYPE,"default",{raw:!0}),{watch:r,setValue:o,handleSubmit:a,trigger:i,formState:d}=Ve(),c=r(),{srcChainId:l,srcDenom:u,dstChainId:m,dstDenom:h,quantity:_,sender:x,slippagePercent:f}=c,y=it(),w=Ne(l),j=Pt(w),T=Ne(m),C=Pt(T),I=Ae(u,l),D=Ae(h,m),{data:v}=gn(x,l),g=am(x,l,u);p.useEffect(()=>{Number(_)&&i()},[g,_,i]);const[S,O]=p.useState(_);de.useDebounce(()=>O(_),300,[_]);const U=j!=="initia"&&C!=="initia",A=om(),M=Ln(S,{disabled:U}),V=Ln(S,{isOpWithdraw:!0,disabled:!A}),je=A&&s==="op"?V:M,{data:ie,isLoading:we,isFetching:Y,isFetched:xe,error:vt}=je,{data:ce}=rm(vt),[le,Ct]=p.useState(ie);p.useEffect(()=>{ie&&Ct({...ie,amount_out:"0",usd_amount_in:"0",usd_amount_out:"0"})},[ie]);const $=xe?ie:S?le:void 0,ws=S&&(we||Y),bs=()=>{o("srcChainId",m),o("srcDenom",h),o("dstChainId",l),o("dstDenom",u),Number(_)&&i()},{openModal:bo,closeModal:yn}=ms(),vo=a(R=>{if($!=null&&$.warning){const{type:he="",message:Ns}=$.warning??{};bo({content:t.jsx(Wr,{type:"warning",icon:t.jsx(b.IconWarningFilled,{size:40}),title:ls.sentenceCase(he),primaryButton:{label:"Cancel",onClick:yn},secondaryButton:{label:"Proceed anyway",onClick:()=>{e("/bridge/preview",{route:$,values:R}),yn()}},children:t.jsx("p",{className:J.warning,children:Ns})})});return}e("/bridge/preview",{route:$,values:R})}),Co=p.useMemo(()=>{var R;return((R=$==null?void 0:$.estimated_fees)==null?void 0:R.filter(({fee_behavior:he})=>he===Zs.FEE_BEHAVIOR_DEDUCTED))??[]},[$]),vs=p.useMemo(()=>{var R;return((R=$==null?void 0:$.estimated_fees)==null?void 0:R.filter(({fee_behavior:he})=>he===Zs.FEE_BEHAVIOR_ADDITIONAL))??[]},[$]),Cs=p.useMemo(()=>{var R;for(const he of vs){const Ns=((R=v==null?void 0:v[he.origin_asset.denom])==null?void 0:R.amount)??"0",ko=($==null?void 0:$.source_asset_denom)===he.origin_asset.denom?$.amount_in:"0";if(E(Ns).lt(E(ko).plus(he.amount??"0")))return`Insufficient ${he.origin_asset.symbol} for fees`}},[v,$,vs]),jn=p.useMemo(()=>{if(!c.sender)return"Connect wallet";if(!c.quantity||!S)return"Enter amount";if(!c.recipient)return"Enter recipient address";if(d.errors.quantity)return d.errors.quantity.message;const R=lo.safeParse(c);if(!R.success)return`Invalid ${R.error.issues[0].path}`;if(!$)return"Route not found";if(Cs)return Cs},[S,Cs,d,$,c]),No=$?re($.amount_out,{decimals:D.decimals}):"0",Io=E(_).gt(0)&&E(_).isEqualTo(qt(g==null?void 0:g.amount,(g==null?void 0:g.decimals)??0)),So=(()=>{switch(j){case"initia":return y(l).fees.fee_tokens.some(({denom:R})=>R===u);case"cosmos":return w.fee_assets.some(({denom:R})=>R===u);case"evm":return!ve.isAddress(u);default:return!1}})(),wn=(R,he)=>R.length?t.jsxs("div",{className:J.description,children:[mo(R),t.jsx(wt,{label:he,children:t.jsx("span",{className:J.icon,children:t.jsx(b.IconInfoFilled,{size:12})})})]}):null;return t.jsxs("form",{className:J.form,onSubmit:vo,children:[t.jsx(Qs,{selectButton:t.jsx(Wn,{type:"src"}),accountButton:j==="cosmos"&&t.jsx(Qn,{type:"src"}),quantityInput:t.jsx(os,{}),balanceButton:t.jsx(no,{onClick:()=>o("quantity",qt(g==null?void 0:g.amount,I==null?void 0:I.decimals),{shouldValidate:!0}),children:re(g==null?void 0:g.amount,{decimals:I.decimals})}),value:$?$.usd_amount_in?rt($.usd_amount_in):"-":"0"}),t.jsxs("div",{className:J.arrow,children:[t.jsx("div",{className:J.divider}),t.jsx("button",{type:"button",className:J.flip,onClick:()=>bs(),children:t.jsx(b.IconChevronDown,{size:16})})]}),t.jsx(Qs,{selectButton:t.jsx(Wn,{type:"dst"}),accountButton:t.jsx(Qn,{type:"dst"}),quantityInput:t.jsx(os.ReadOnly,{children:No}),value:$?$.usd_amount_out?rt($.usd_amount_out):"-":"0"}),t.jsx(ee,{extra:t.jsxs(t.Fragment,{children:[t.jsx(Hs,{children:E(_).gt(0)&&A?t.jsxs(es.Stack,{children:[t.jsx(es,{label:"Minitswap",query:M,value:"default",onSelect:n,checked:s==="default"}),t.jsx(es,{label:"Optimistic bridge",query:V,value:"op",onSelect:n,checked:s==="op"})]}):null}),t.jsxs(Z.Stack,{children:[(bn=$==null?void 0:$.extra_infos)==null?void 0:bn.map(R=>t.jsx(Z,{level:"info",children:R},R)),ce&&t.jsx(Z,{level:"info",children:ce}),Io&&So&&t.jsx(Z,{level:"warning",children:"Make sure to leave enough for transaction fee"}),($==null?void 0:$.warning)&&t.jsx(Z,{level:"warning",children:$.warning.message}),(vn=$==null?void 0:$.extra_warnings)==null?void 0:vn.map(R=>t.jsx(Z,{level:"warning",children:R},R))]}),t.jsx(Hs,{children:$&&t.jsxs("div",{className:J.meta,children:[!!((Cn=$.estimated_fees)!=null&&Cn.length)&&t.jsxs("div",{className:J.row,children:[t.jsx("span",{className:J.title,children:"Fees"}),t.jsxs("div",{children:[wn(Co,"Fee deducted from the amount you receive"),wn(vs,"Fee charged in addition to the amount you enter")]})]}),Js($.estimated_route_duration_seconds)&&t.jsxs("div",{className:J.row,children:[t.jsx("span",{className:J.title,children:"Estimated time"}),t.jsx("span",{className:J.description,children:Js($.estimated_route_duration_seconds)})]}),$.does_swap&&t.jsxs("div",{className:J.row,children:[t.jsx("span",{className:J.title,children:"Slippage"}),t.jsxs("span",{className:J.description,children:[t.jsxs("span",{children:[f,"%"]}),t.jsx(at,{title:"Slippage tolerance",content:R=>t.jsx(ym,{afterConfirm:R}),className:J.edit,children:t.jsx(b.IconSettingFilled,{size:12})})]})]})]})})]}),children:t.jsx(L.White,{loading:ws&&"Simulating...",disabled:!!jn,children:jn??"Preview route"})})]})},zm=()=>{Qr();const e=Qo(),s=me(),{closeDrawer:n}=xt(),r=gt(),o=tm(),a=Ys(),i=k.useQueryClient(),d=ne.useForm({mode:"onChange",defaultValues:o,resolver:sn.zodResolver(lo.superRefine(({srcChainId:A,srcDenom:M,quantity:V,sender:je},ie)=>{const we=i.getQueryData(pe.balances(A,je).queryKey),Y=N.pathOr("0",["chains",A,"denoms",M,"amount"],we),{decimals:xe}=i.getQueryData(pe.asset(A,M).queryKey)??{decimals:0};eo({quantity:V,balance:Y,decimals:xe},ie)}).superRefine(({dstChainId:A,recipient:M},V)=>{if(!a(M,A)){V.addIssue({code:Q.z.ZodIssueCode.custom,message:"Invalid address",path:["recipient"]});return}}))}),{watch:c,setValue:l}=d,{srcChainId:u,dstChainId:m,srcDenom:h,dstDenom:_,quantity:x,slippagePercent:f,recipient:y}=c();c((A,{name:M})=>{(M==="srcChainId"||M==="srcDenom")&&l("quantity","")});const w=uo(),j=w(u),T=w(m),I=Ys()(y,m);p.useEffect(()=>{l("cosmosWalletName",void 0),l("sender",j)},[u,j,l]),p.useEffect(()=>{I||l("recipient",T)},[T,I,l]);const D=_t(u),v=_t(m),g=p.useMemo(()=>{if(!D.find(A=>A.denom===h))return`${h} is not available for bridge/swap on ${u}`;if(!v.find(A=>A.denom===_))return`${_} is not available for bridge/swap on ${m}`},[v,m,_,D,u,h]);p.useEffect(()=>{g||(localStorage.setItem(H.BRIDGE_SRC_CHAIN_ID,u),localStorage.setItem(H.BRIDGE_SRC_DENOM,h),localStorage.setItem(H.BRIDGE_DST_CHAIN_ID,m),localStorage.setItem(H.BRIDGE_DST_DENOM,_),localStorage.setItem(H.BRIDGE_QUANTITY,x),localStorage.setItem(H.BRIDGE_SLIPPAGE_PERCENT,f))},[u,h,m,_,x,f,g]);const S=e[0].path==="/bridge",O=()=>t.jsxs(t.Fragment,{children:[t.jsx(ue,{error:!0,children:g}),t.jsx(ee,{children:S?t.jsx(L.White,{onClick:n,children:"Close"}):t.jsx(L.White,{onClick:()=>s(-1),children:"Go back"})})]}),{reminders:U}=jt();return t.jsx(Pe,{title:"Bridge/Swap",returnTo:S?!1:"/",extra:t.jsxs(t.Fragment,{children:[t.jsx(L.Small,{onClick:()=>s("/bridge/history"),unpadded:!0,children:t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",width:"12",height:"12",children:[t.jsx("path",{d:"m0 9.818 1.414-1.414 L2 8.99 V8 a7 7 0 1 1 7 7 v-2 a5 5 0 1 0-5-5 v1.354 l.95-.95 1.414 1.414 L3.182 13 0 9.818 Z"}),t.jsx("path",{d:"M9 5.5 H7.5 v3.75 h3.75 v-1.5 H9 V5.5 Z"})]})}),t.jsx(oo,{offset:0,disabled:U.length===0,children:t.jsx(L.Small,{onClick:()=>s("/op/withdrawals"),disabled:!r,children:t.jsx("span",{children:"Withdrawal status"})})})]}),children:g?O():t.jsx(ne.FormProvider,{...d,children:t.jsx(ae,{children:t.jsx(Um,{})})})})},ct=Ue.createQueryKeys("interwovenkit:op",{bridge:e=>[e],withdrawals:(e,s)=>[e,s],latestOutput:e=>[e],output:(e,s)=>[e,s],outputResponse:(e,s)=>[e,s],withdrawalClaimed:(e,s)=>[e,s]});function ys(){const{restUrl:e}=ye();return p.useMemo(()=>z.create({prefixUrl:e}),[e])}function Km(e){const s=ys(),{data:n}=k.useSuspenseQuery({queryKey:ct.bridge(e).queryKey,queryFn:()=>s.get(`opinit/ophost/v1/bridges/${e}`).json(),staleTime:K.INFINITY});return n}const Gn=20;function Hm(e){const s=X();return k.useSuspenseInfiniteQuery({queryKey:ct.withdrawals(e,s).queryKey,queryFn:async({pageParam:n})=>{if(!s)return[];const r={limit:Gn,offset:n,order:"desc"},{withdrawals:o}=await z.create({prefixUrl:e}).get(`withdrawals/${s}`,{searchParams:r}).json();return o},getNextPageParam:n=>{var o;const r=(o=N.last(n))==null?void 0:o.sequence;return n.length<Gn||!r||r<=1?null:r-1},initialPageParam:0,staleTime:K.SECOND})}function Lm(e){const s=ys(),{data:n}=k.useSuspenseQuery({queryKey:ct.latestOutput(e).queryKey,queryFn:()=>s.get(`opinit/ophost/v1/bridges/${e}/outputs`,{searchParams:{"pagination.reverse":!0,"pagination.limit":1}}).json(),select:({output_proposals:r})=>{const[o]=r;return o||null},staleTime:K.SECOND});return n}function Wm({bridge_id:e,output_index:s}){const n=ys(),{data:r}=k.useSuspenseQuery({queryKey:ct.output(e,s).queryKey,queryFn:async()=>{try{return await n.get(`opinit/ophost/v1/bridges/${e}/outputs/${s}`).json()}catch{return null}},staleTime:K.SECOND});return r}function Qm({bridge_id:e,sequence:s}){var c,l;const r=(c=He().find(({metadata:u})=>(u==null?void 0:u.op_bridge_id)===e.toString()))==null?void 0:c.chain_id;if(!r)throw new Error(`Chain not found for bridge_id: ${e}`);const a=it()(r);if(!a)throw new Error(`Chain not found: ${r}`);const i=(l=a.metadata)==null?void 0:l.executor_uri;if(!i)throw new Error(`Executor URL not found: ${r}`);const{data:d}=k.useSuspenseQuery({queryKey:ct.outputResponse(i,s).queryKey,queryFn:()=>z.create({prefixUrl:i}).get(`withdrawal/${s}`).json(),staleTime:K.SECOND});return d}function ho(e,s){const{bridge_id:n}=e,r=ys(),{data:o}=k.useSuspenseQuery({queryKey:ct.withdrawalClaimed(n,s).queryKey,queryFn:()=>r.get(`opinit/ophost/v1/bridges/${n}/withdrawals/claimed/by_hash`,{searchParams:{withdrawal_hash:s}}).json(),select:({claimed:a})=>a,staleTime:({state:{data:a}})=>a!=null&&a.claimed?1/0:K.SECOND});return o}function Tt(e){return tn.sha3_256.create().update(e).digest()}function Os(e,s){const n=new ArrayBuffer(s);return new DataView(n).setBigUint64(0,BigInt(e),!1),new Uint8Array(n)}function _o(e){const{bridge_id:s,sequence:n,amount:r,from:o,to:a}=e,i=Os(s.toString(),8),d=Os(n.toString(),8),c=Os(r.amount,8),l=tt.concatBytes(i,d,Tt(tt.toBytes(o)),Tt(tt.toBytes(a)),Tt(tt.toBytes(r.denom)),c);return Tt(Tt(l))}const fo=p.createContext(null);function js(){return p.useContext(fo)}const Vm="_asset_6h8u2_1",Gm="_info_6h8u2_7",Ym="_symbol_6h8u2_11",Ms={asset:Vm,info:Gm,symbol:Ym},Jm=({amount:e,denom:s})=>{const n=ye(),r=an(s,n),{symbol:o,logoUrl:a,decimals:i}=r;return t.jsxs("div",{className:Ms.asset,children:[t.jsx(W,{src:a,width:32,height:32}),t.jsxs("div",{className:Ms.info,children:[t.jsx("span",{children:re(e,{decimals:i})}),t.jsx("span",{className:Ms.symbol,children:o})]})]})},Zm=({children:e})=>{const{withdrawalTx:s}=js(),n=Lm(s.bridge_id),r=s.output_index>Number(n==null?void 0:n.output_index);return e(r)},Xm="_container_1oldz_1",eh="_icon_1oldz_7",Yn={container:Xm,icon:eh},th="Your withdrawal request is being processed, and time remaining will show up once it is in queue.",Jn=()=>t.jsxs("div",{className:Yn.container,children:[t.jsx("span",{children:"Withdrawal submitted"}),t.jsx(wt,{label:th,children:t.jsx("span",{className:Yn.icon,children:t.jsx(b.IconInfoFilled,{size:12})})})]}),po=1e3,sh=60,nh=60,rh=24,Xs=po*sh,en=Xs*nh,Zn=en*rh,oh=({date:e})=>{const s=p.useCallback(()=>{const l=new Date().getTime(),m=e.getTime()-l;if(m<=0)return{days:0,hours:0,minutes:0,seconds:0};const h=Math.floor(m/Zn),_=Math.floor(m%Zn/en),x=Math.floor(m%en/Xs),f=Math.floor(m%Xs/po);return{days:h,hours:_,minutes:x,seconds:f}},[e]),[n,r]=p.useState(s());p.useEffect(()=>{const l=window.setInterval(()=>{r(s())},1e3);return()=>window.clearInterval(l)},[s,e]);const o=l=>l.toString().padStart(2,"0"),{days:a,hours:i,minutes:d,seconds:c}=n;return t.jsx(wt,{label:e.toLocaleString(),children:t.jsxs("span",{className:"monospace",children:[a,"d ",o(i),"h ",o(d),"m ",o(c),"s"]})})},ah="_container_1oldz_1",ih="_icon_1oldz_7",Xn={container:ah,icon:ih},ch="Time remaining before you can claim",lh=({date:e})=>t.jsxs("div",{className:Xn.container,children:[t.jsx(oh,{date:e}),t.jsx(wt,{label:ch,children:t.jsx("span",{className:Xn.icon,children:t.jsx(b.IconInfoFilled,{size:12})})})]}),dh=({children:e})=>{const{withdrawalTx:s}=js(),n=Km(s.bridge_id),r=Wm(s),o=p.useMemo(()=>{if(!r)return null;const{bridge_config:a}=n,{output_proposal:i}=r;return ft.addSeconds(new Date(i.l1_block_time),parseFloat(a.finalization_period))},[n,r]);return e(o)},uh=({date:e,children:s})=>{const{chainId:n,withdrawalTx:r}=js(),o=B.toBase64(_o(r)),a=ho(r,o),{setReminder:i,removeReminder:d}=jt();return p.useEffect(()=>{const c={chainId:n,txHash:r.tx_hash};a?d(c):i(c,{...c,recipient:r.to,claimableAt:e.getTime(),amount:r.amount.amount,denom:r.amount.denom,dismissed:ft.isPast(e.getTime())?!0:void 0})},[n,a,e,d,i,r]),s},mh="_button_wwvzw_1",hh="_claimed_wwvzw_16",er={button:mh,claimed:hh},_h=()=>{const{withdrawalTx:e}=js(),{bridge_id:s,sequence:n,amount:r,output_index:o,withdrawal_proofs:a,storage_root:i,from:d,to:c,version:l}=e,u=ye(),m=X(),{requestTxSync:h,waitForTxConfirmation:_}=qe(),x=Qm(e),f=B.toBase64(_o(e)),y=ho(e,f),w=k.useQueryClient(),{mutate:j,isPending:T}=k.useMutation({mutationFn:async()=>{if(!x)throw new Error("Output not found");const{last_block_hash:C}=x;return h({chainId:u.chain_id,messages:[{typeUrl:"/opinit.ophost.v1.MsgFinalizeTokenWithdrawal",value:Ro.MsgFinalizeTokenWithdrawal.fromPartial({sender:m,bridgeId:BigInt(s),outputIndex:BigInt(o),withdrawalProofs:a.map(B.fromBase64),from:d,to:c,sequence:BigInt(n),amount:r,version:B.fromBase64(l),storageRoot:B.fromBase64(i),lastBlockHash:B.fromBase64(C)})}],internal:!0})},onSuccess:async C=>{await _({chainId:u.chain_id,txHash:C}),w.invalidateQueries({queryKey:ct.withdrawalClaimed(s,f).queryKey})}});return y?t.jsxs("div",{className:er.claimed,children:[t.jsx(b.IconCheckCircleFilled,{size:14}),t.jsx("span",{children:"Success"})]}):t.jsx("button",{className:er.button,onClick:()=>j(),disabled:T,children:"Claim"})},fh=()=>t.jsx(Zm,{children:e=>e?t.jsx(Jn,{}):t.jsx(dh,{children:s=>s?t.jsx(uh,{date:s,children:ft.isFuture(s)?t.jsx(lh,{date:s}):t.jsx(_h,{})}):t.jsx(Jn,{})})}),ph="_item_km5w2_1",xh="_more_km5w2_12",tr={item:ph,more:xh},gh=({chain:e})=>{var c;const s=(c=e.metadata)==null?void 0:c.executor_uri;if(!s)throw new Error("Executor URL is not defined");const{data:n,fetchNextPage:r,hasNextPage:o,isFetchingNextPage:a}=Hm(s),i=p.useMemo(()=>(n==null?void 0:n.pages.flat())??[],[n]),{syncReminders:d}=jt();return p.useEffect(()=>{const l=i.map(u=>({chainId:e.chainId,txHash:u.tx_hash}));d(l)},[e.chainId,i,d]),i.length?t.jsxs(t.Fragment,{children:[i.map(l=>{const{amount:u}=l;return t.jsxs("div",{className:tr.item,children:[t.jsx(Jm,{...u}),t.jsx(ae,{suspenseFallback:null,children:t.jsx(fo.Provider,{value:{chainId:e.chainId,withdrawalTx:l},children:t.jsx(fh,{})})})]},l.sequence)}),o&&t.jsx("button",{className:tr.more,onClick:()=>r(),disabled:a,children:a?t.jsx(Qe,{size:14}):t.jsxs(t.Fragment,{children:[t.jsx("span",{children:"Load more"}),t.jsx(b.IconChevronDown,{size:14})]})})]}):t.jsx(ue,{children:"No withdrawals"})},yh="_content_dj1qm_1",jh="_title_dj1qm_5",sr={content:yh,title:jh},wh=()=>{var c;const{chainId:e}=ze(),s=He(),n=hs(),[r,o]=p.useState(e??((c=n.metadata)!=null&&c.is_l1?"":n.chainId)),a=it(),{reminders:i}=jt(),d=r?a(r):void 0;return t.jsxs(Pe,{title:"Optimistic bridge withdrawals",children:[t.jsx(nt,{chains:s.filter(({metadata:l})=>{var u;return!(l!=null&&l.is_l1)&&((u=l==null?void 0:l.op_denoms)==null?void 0:u.length)}),value:r,onSelect:o,getShowIndicator:l=>i.some(u=>u.chainId===l)}),t.jsx("div",{className:sr.content,children:d?t.jsxs(t.Fragment,{children:[t.jsx("h2",{className:sr.title,children:d.name}),t.jsx(ae,{children:t.jsx(gh,{chain:d})},r)]}):t.jsx(Z,{level:"info",children:"Select a chain to display your optimistic bridge withdrawals"})})]})};async function bh(e,s){const n=z.create({prefixUrl:s}),r=`cosmos/auth/v1beta1/account_info/${e}`;for(let o=1;o<=24;o++)try{return await n.get(r).json()}catch{await new Promise(a=>setTimeout(a,5e3))}throw new Error(`Timeout: ${e} not found`)}const ts=({chainId:e,txHash:s})=>`${H.BRIDGE_HISTORY}:${e}:${s}`,as=100;function xo(){const[e=[],s]=de.useLocalStorage(H.BRIDGE_HISTORY,[]),n=p.useCallback((o,a)=>{localStorage.setItem(ts(o),JSON.stringify(a));for(const i of e.slice(as-1))localStorage.removeItem(ts(i));s((i=[])=>[o,...i.slice(0,as-1)])},[e,s]),r=p.useCallback(o=>{const a=localStorage.getItem(ts(o));return a?JSON.parse(a):null},[]);return{history:e,addHistoryItem:n,getHistoryDetails:r}}function vh(e){return de.useLocalStorage(ts(e))}async function go(e,s){const{chain_type:n,chain_id:r,chain_name:o,evm_fee_asset:a,rpc:i}=s;if(n!=="evm")throw new Error(`Chain is not an EVM chain: ${o}`);try{await e.send("wallet_switchEthereumChain",[{chainId:`0x${Number(r).toString(16)}`}])}catch(d){if(N.path(["error","code"],d)!==4902)throw d;if(!a)throw new Error(`Fee asset is not defined for chain: ${o}`);await e.send("wallet_addEthereumChain",[{chainId:`0x${Number(r).toString(16)}`,chainName:o,nativeCurrency:a,rpcUrls:[i]}]),await e.send("wallet_switchEthereumChain",[{chainId:`0x${Number(r).toString(16)}`}])}}function bt(){return ze()}function Ch(e){const s=me(),{showNotification:n,updateNotification:r,hideNotification:o}=Rr(),{addHistoryItem:a}=xo(),{route:i,values:d}=bt(),{srcChainId:c,sender:l,recipient:u,cosmosWalletName:m}=d,h=vr(),{requestTxSync:_,waitForTxConfirmation:x}=qe(),{find:f}=gs(),y=on(),w=_s(),j=Ne(c),T=Pt(j),C=Fr(c),I=k.useQueryClient(),{addReminder:D}=jt();return k.useMutation({mutationFn:async()=>{var v;try{if("cosmos_tx"in e){if(!e.cosmos_tx.msgs)throw new Error("Invalid transaction data");const g=e.cosmos_tx.msgs.map(({msg_type_url:ce,msg:le})=>{if(!(ce&&le))throw new Error("Invalid transaction data");return w.fromAmino({type:At.aminoConverters[ce].aminoType,value:JSON.parse(le)})});if(T==="initia"){const ce=await _({messages:g,chainId:c,internal:1}),le=x({txHash:ce,chainId:c});return{txHash:ce,wait:le}}const S=(v=f(m))==null?void 0:v.getProvider();if(!S)throw new Error("Wallet not connected");const O=S.getOfflineSignerOnlyAmino(c),U=await Ee.SigningStargateClient.connectWithSigner(j.rpc,O,{registry:y,aminoTypes:w}),A=await U.getAllBalances(l),M=j.fee_assets.find(ce=>A.some(le=>le.denom===ce.denom&&E(le.amount).gt(0)));if(!M){const le=["Insufficient balance for fees.",`Available fee assets: ${j.fee_assets.map(Ct=>C(Ct.denom).symbol).join(", ")}`,"(note: asset symbols may refer to different tokens across chains)"].join(" ");throw new Error(le)}const{denom:V,gas_price:je}=M;if(!je)throw new Error(`Gas price not found for ${V}`);const ie=await U.simulate(l,g,""),we=Ee.GasPrice.fromString(je.average+V),Y=Ee.calculateFee(Math.ceil(ie*nn),we),xe=await U.signAndBroadcastSync(l,g,Y),vt=Sr({txHash:xe,client:U});return{txHash:xe,wait:vt}}if("evm_tx"in e){const{chain_id:g,to:S,value:O,data:U}=e.evm_tx,A=await h(),M=await A.getSigner();await go(A,j);const V=await M.sendTransaction({chainId:g,to:S,value:O,data:`0x${U}`});return{txHash:V.hash,wait:V.wait()}}throw new Error("Unsupported chain type")}catch(g){throw new Error(await Ke(g))}},onSuccess:({txHash:v,wait:g})=>{s(-1),n({type:"loading",title:"Transaction is pending..."}),g.then(()=>{const S={chainId:c,txHash:v},O=yo(i)==="Optimistic bridge withdrawal";a(S,{...S,timestamp:Date.now(),route:i,values:d,state:O?"success":void 0}),r({type:"info",title:"Transaction submitted",description:p.createElement(p.Fragment,null,"Check ",p.createElement(Rt,{to:"/bridge/history",onClick:o},"the activity page")," for transaction status")}),O&&D(S,{...S,recipient:F.toBech32(u),claimableAt:Date.now()+i.estimated_route_duration_seconds*1e3,amount:i.amount_out,denom:i.dest_asset_denom})}).catch(S=>{r({type:"error",title:"Transaction failed",description:S.message})}).finally(()=>{I.invalidateQueries({queryKey:pe.balances(c,l).queryKey})})},onError:v=>{n({type:"error",title:"Transaction failed",description:v.message})}})}function Nh(){const e=Le(),s=X(),n=wr(),{route:r,values:o}=bt(),a=We();return k.useMutation({mutationFn:async()=>{try{const{chain_id:i,hook:d}=await e.post("op-hook",{json:{source_address:s,source_asset_chain_id:r.source_asset_chain_id,source_asset_denom:r.source_asset_denom,dest_address:o.recipient,dest_asset_chain_id:r.dest_asset_chain_id,dest_asset_denom:r.dest_asset_denom}}).json();await bh(s,a(r.dest_asset_chain_id).rest);const c=d.map(({msg_type_url:m,msg:h})=>At.aminoTypes.fromAmino({type:At.aminoConverters[m].aminoType,value:JSON.parse(h)})),l=await n(i,s,c,{amount:[],gas:"1"},""),u=ht.Tx.fromPartial({body:ht.TxBody.decode(l.bodyBytes),authInfo:ht.AuthInfo.decode(l.authInfoBytes),signatures:l.signatures});return{signer:s,hook:B.toBase64(ht.Tx.encode(u).finish())}}catch(i){throw new Error(await Ke(i))}}})}function Ih(e){const{chainId:s,txHash:n}=e,r=Le();return k.useQuery({queryKey:pe.txTrack(s,n).queryKey,queryFn:async()=>{try{return await r.post("v2/tx/track",{json:{tx_hash:n,chain_id:s}}).json()}catch(o){throw new Error(await Ke(o))}},select:({tx_hash:o})=>o,retry:30,retryDelay:1e3,staleTime:K.INFINITY})}function Sh(e){const{timestamp:s,chainId:n,txHash:r,state:o}=e,a=Le();return k.useQuery({queryKey:pe.txStatus(n,r).queryKey,queryFn:()=>a.get("v2/tx/status",{searchParams:{tx_hash:r,chain_id:n}}).json(),enabled:!!r&&!o,refetchInterval:({state:{data:i}})=>{if(!i)return!1;const{status:d}=i;if(d==="STATE_COMPLETED")return!1;const c=s+e.route.estimated_route_duration_seconds*1e3,l=Date.now(),u=Math.floor((c-l)/1e3);return u<=0?1e3:u<=5*60?5e3:60*1e3},staleTime:K.INFINITY})}var ss=(e=>(e.OP_WITHDRAW="Optimistic bridge withdrawal",e.SKIP="Skip",e))(ss||{});function yo(e){const{operations:s,dest_asset_denom:n}=e;return N.has("op_init_transfer",N.head(s))&&n==="uinit"?"Optimistic bridge withdrawal":"Skip"}const kh="_content_c0tee_1",$h="_info_c0tee_6",Eh="_arrow_c0tee_11",Th="_divider_c0tee_19",Ah="_type_c0tee_26",qh="_asset_c0tee_44",Dh="_amount_c0tee_52",Ph="_lower_c0tee_57",Fh="_chain_c0tee_63",Bh="_address_c0tee_69",fe={content:kh,info:$h,arrow:Eh,divider:Th,type:Ah,asset:qh,amount:Dh,lower:Ph,chain:Fh,address:Bh},jo=e=>{const{source:s,label:n,amount:r,denom:o,chainId:a,address:i,walletIcon:d}=e,{symbol:c=se(o),decimals:l=0,logo_uri:u=kr}=e,{chain_name:m,pretty_name:h,..._}=Ne(a);return t.jsxs("div",{children:[!s&&t.jsxs("div",{className:fe.arrow,children:[t.jsx("div",{className:fe.divider}),n?t.jsx(wt,{label:n,children:t.jsx("button",{className:fe.type,children:t.jsx(b.IconArrowDown,{size:12})})}):t.jsx("span",{className:fe.type,children:t.jsx(b.IconArrowDown,{size:12})}),t.jsx("div",{className:fe.divider})]}),t.jsxs("div",{className:fe.content,children:[t.jsx(pn,{assetLogoUrl:u,chainLogoUrl:_.logo_uri??void 0}),t.jsxs("div",{className:fe.info,children:[t.jsxs("div",{className:fe.asset,children:[t.jsx("span",{className:fe.amount,children:re(r,{decimals:l})}),t.jsx("span",{children:c})]}),t.jsxs("div",{className:fe.lower,children:[t.jsxs("div",{className:fe.chain,children:["on ",h||m]}),i&&t.jsx(Lr,{value:i,children:({copy:x,copied:f})=>t.jsxs("button",{className:fe.address,onClick:x,children:[d,f?t.jsx("span",{children:"Copied!"}):t.jsx("span",{className:"monospace",children:se(i)})]})})]})]})]})]})},mt=e=>{const s=Ae(e.denom,e.chainId);return t.jsx(jo,{...e,...s})};mt.Placeholder=jo;const Rh="_root_133os_1",Oh="_toggle_133os_6",Mh="_route_133os_29",Uh="_content_133os_36",Jt={root:Rh,toggle:Oh,route:Mh,content:Uh};function zh(e){if("transfer"in e)return{label:"Bridge",...e,...e.transfer};if("bank_send"in e)return{label:"Send",...e,...e.bank_send};if("swap"in e)return{label:"Swap",...e,...e.swap};if("axelar_transfer"in e)return{label:"Axelar",...e,...e.axelar_transfer};if("cctp_transfer"in e)return{label:"CCTP",...e,...e.cctp_transfer};if("hyperlane_transfer"in e)return{label:"Hyperlane",...e,...e.hyperlane_transfer};if("evm_swap"in e)return{label:"Swap",...e,...e.evm_swap};if("op_init_transfer"in e)return{label:"Op bridge",...e,...e.op_init_transfer};if("go_fast_transfer"in e)return{label:"Go Fast",...e,...e.go_fast_transfer};if("eureka_transfer"in e)return{label:"Eureka",...e,...e.eureka_transfer};if("stargate_transfer"in e)return{label:"Stargate",...e,...e.stargate_transfer};if("layer_zero_transfer"in e)return{label:"LayerZero",...e,...e.layer_zero_transfer};throw new Error("Unknown operation type")}const Kh=({addressList:e})=>{var I;const{values:s,route:n}=bt(),{source_asset_denom:r,source_asset_chain_id:o,amount_in:a,operations:i}=n,d=N.zipObj(n.required_chain_addresses,e),{find:c}=gs(),{connector:l,address:u=""}=ge.useAccount(),[m,h]=de.useToggle(!1),_=i.length>1,x=t.jsx(W,{src:s.cosmosWalletName?(I=c(s.cosmosWalletName))==null?void 0:I.image:l==null?void 0:l.icon,width:12,height:12}),f={amount:a,denom:r,chainId:o,address:s.sender,walletIcon:x},y=D=>F.equals(D,u)?x:t.jsx(b.IconWallet,{size:11}),w=D=>{const{label:v,amount_out:g,denom:S,denom_out:O=S,chain_id:U,from_chain_id:A,to_chain_id:M=U??A}=D,V=d[M];return{label:_&&!m?void 0:v,amount:g,denom:O,chainId:M,address:V,walletIcon:y(V)}},j=i.map(zh).map(w),T=j.slice(0,-1),C=j[j.length-1];return t.jsxs(q.Collapsible.Root,{className:Jt.root,open:m,onOpenChange:h,children:[_&&t.jsx(q.Collapsible.Trigger,{asChild:!0,children:t.jsx(Ws,{children:t.jsx("button",{className:Jt.toggle,onClick:h,children:m?t.jsxs(t.Fragment,{children:[t.jsx(b.IconMinus,{size:12}),t.jsx("span",{children:"Hide details"})]}):t.jsxs(t.Fragment,{children:[t.jsx(b.IconList,{size:12}),t.jsx("span",{children:"Show details"})]})})})}),t.jsxs("div",{className:Jt.route,children:[t.jsx(mt,{...f,source:!0}),t.jsx(q.Collapsible.Content,{className:Jt.content,children:T.map((D,v)=>t.jsx(ae,{suspenseFallback:t.jsx(mt.Placeholder,{...D}),errorBoundaryProps:{fallback:t.jsx(mt.Placeholder,{...D})},children:t.jsx(mt,{...D})},v))}),t.jsx(mt,{...C})]})]})},is=({error:e})=>{const s=me();return t.jsx(ee,{extra:t.jsx(Z,{level:"error",children:e.message}),children:t.jsx(L.White,{onClick:()=>s("/bridge"),children:"Home"})})},Hh=({children:e})=>{const s=bt(),{route:n,values:r}=s,{required_chain_addresses:o}=n,{srcChainId:a,dstChainId:i,sender:d,recipient:c}=r,{initiaAddress:l,hexAddress:u}=qe(),m=fs(),h=We(),_=yt(),x=h(a),f=_(x),y=o.slice(0,-1).some(C=>{const I=h(C);return _(I)==="cosmos"})&&f!=="cosmos",{value:w,loading:j,error:T}=de.useAsync(async()=>{try{if(!y)return;if(!m)throw new Error("Wallet not connected");const[{pubkey:C}]=await m.getAccounts();return C}catch(C){throw new Error(await Ke(C))}});if(T)return t.jsx(is,{error:T});if(j)return t.jsx(ee,{children:t.jsx(L.White,{loading:j&&"Generating intermediary addresses..."})});if(!y||w){const C=o.map((I,D)=>{if(D===o.length-1){const U=h(i);return _(U)==="initia"?F.toBech32(c):c}const v=h(I),g=_(v),S=h(a),O=_(S);switch(g){case"initia":return l;case"evm":return u;case"cosmos":{if(O==="cosmos")return B.toBech32(v.bech32_prefix,B.fromBech32(d).data);if(!w)throw new Error("Pubkey not found");return ns.pubkeyToAddress(ns.encodeSecp256k1Pubkey(w),v.bech32_prefix)}default:throw new Error("Unsupported chain type")}});return e(C)}return t.jsx(is,{error:new Error("Failed to generate intermediary addresses")})},Lh=({addressList:e,signedOpHook:s,children:n})=>{const r=Le(),{route:o,values:a}=bt(),{value:i,loading:d,error:c}=de.useAsync(async()=>{if(o.required_op_hook&&!s)throw new Error("Op hook is required");const l={address_list:e,amount_in:o.amount_in,amount_out:o.amount_out,source_asset_chain_id:o.source_asset_chain_id,source_asset_denom:o.source_asset_denom,dest_asset_chain_id:o.dest_asset_chain_id,dest_asset_denom:o.dest_asset_denom,slippage_tolerance_percent:a.slippagePercent,operations:o.operations,signed_op_hook:s},{txs:u}=await r.post("v2/fungible/msgs",{json:l}).json();if(!u||u.length===0)throw new Error("No transaction data found");const[m]=u;return m});return c?t.jsx(is,{error:c}):d?t.jsx(ee,{children:t.jsx(L.White,{loading:d&&"Fetching messages..."})}):i?n(i):t.jsx(is,{error:new Error("Failed to fetch messages")})},Wh=({children:e})=>{var r;const{route:s}=bt(),n=Nh();return s.required_op_hook&&!n.data?t.jsx(ee,{extra:t.jsx(Z,{level:"error",children:(r=n.error)==null?void 0:r.message}),children:t.jsx(L.White,{onClick:()=>n.mutate(),loading:n.isPending&&"Awaiting signature...",children:"Authorize conversion"})}):e(n.data)},Qh=({tx:e,children:s})=>{const n=vr(),r=We(),{mutate:o,data:a,isPending:i,error:d}=k.useMutation({mutationFn:async()=>{try{if(!("evm_tx"in e))throw new Error("Transaction is not EVM");if(!e.evm_tx.required_erc20_approvals)throw new Error("No approvals required");const{chain_id:c}=e.evm_tx,l=await n(),u=await l.getSigner();await go(l,r(c));for(const m of e.evm_tx.required_erc20_approvals){const{token_contract:h,spender:_,amount:x}=m,f=["function approve(address spender, uint256 amount) external returns (bool)"];await(await new ve.ethers.Contract(h,f,u).approve(_,x)).wait()}return!0}catch(c){throw new Error(await Ke(c))}}});return"evm_tx"in e&&e.evm_tx.required_erc20_approvals&&e.evm_tx.required_erc20_approvals.length>0&&!a?t.jsx(ee,{extra:t.jsx(Z,{level:"error",children:d==null?void 0:d.message}),children:t.jsx(L.White,{onClick:()=>o(),loading:i&&"Approving tokens...",children:"Approve tokens"})}):s},Vh=({tx:e})=>{const{mutate:s,isPending:n}=Ch(e);return t.jsx(ee,{children:t.jsx(L.White,{onClick:()=>s(),loading:n&&"Signing transaction...",children:"Confirm"})})},Gh=()=>t.jsx(Pe,{title:"Route preview",children:t.jsx(Hh,{children:e=>t.jsxs(t.Fragment,{children:[t.jsx(Kh,{addressList:e}),t.jsx(Wh,{children:s=>t.jsx(Lh,{addressList:e,signedOpHook:s,children:n=>t.jsx(Qh,{tx:n,children:t.jsx(Vh,{tx:n})})})})]})})}),Yh="_button_14cv7_1",Jh="_checkbox_14cv7_10",Zh="_checked_14cv7_23",Zt={button:Yh,checkbox:Jh,checked:Zh},Xh=({checked:e,onClick:s,label:n,className:r})=>t.jsxs("button",{type:"button",className:P(Zt.button,r),onClick:s,children:[t.jsx("div",{className:P(Zt.checkbox,{[Zt.checked]:e}),children:e&&t.jsx(b.IconCheck,{size:12})}),t.jsx("span",{className:Zt.label,children:n})]}),e_="_link_1j28k_1",t_="_header_1j28k_22",s_="_title_1j28k_30",n_="_success_1j28k_36",r_="_error_1j28k_40",o_="_date_1j28k_44",a_="_explorer_1j28k_48",i_="_fees_1j28k_63",c_="_label_1j28k_71",l_="_content_1j28k_75",d_="_route_1j28k_81",u_="_row_1j28k_86",m_="_asset_1j28k_92",h_="_amount_1j28k_100",__="_chain_1j28k_105",f_="_account_1j28k_114",p_="_arrow_1j28k_121",G={link:e_,header:t_,title:s_,success:n_,error:r_,date:o_,explorer:a_,fees:i_,label:c_,content:l_,route:d_,row:u_,asset:m_,amount:h_,chain:__,account:f_,arrow:p_},x_=({tx:e})=>{var we;const[s,n]=vh(e);if(!s)throw new Error("Bridge history details not found");const{chainId:r,txHash:o,route:a,values:i,timestamp:d}=s,{data:c=""}=Ih(s),{data:l}=Sh({...s,txHash:c}),u=s.state??g_(l),{address:m="",connector:h}=ge.useAccount(),{find:_}=gs();p.useEffect(()=>{c&&n(Y=>{if(!Y)throw new Error("Bridge history details not found");return{...Y,tracked:!0}})},[n,c]),p.useEffect(()=>{u!=="loading"&&n(Y=>{if(!Y)throw new Error("Bridge history details not found");return{...Y,tracked:!0,state:u}})},[n,u,o]);const x=()=>{switch(u){case"error":return t.jsx("div",{className:G.error,children:t.jsx(b.IconWarningFilled,{size:14})});case"success":return t.jsx("div",{className:G.success,children:t.jsx(b.IconCheckCircleFilled,{size:14})});default:return t.jsx(Qe,{size:14})}},{amount_in:f,amount_out:y,source_asset_chain_id:w,source_asset_denom:j,dest_asset_chain_id:T,dest_asset_denom:C,estimated_fees:I=[]}=a,D=Ne(w),v=Ne(T),g=Ae(j,w),S=Ae(C,T),O=(Y,xe)=>xe?t.jsx(W,{src:xe,width:12,height:12}):F.equals(Y,m)?t.jsx(W,{src:h==null?void 0:h.icon,width:12,height:12}):t.jsx(b.IconWallet,{size:12}),U=(Y,{symbol:xe,decimals:vt,logo_uri:ce},{chain_name:le,pretty_name:Ct,...$},ws,bs)=>t.jsxs("div",{className:G.row,children:[t.jsx(pn,{assetLogoUrl:ce,chainLogoUrl:$.logo_uri??void 0}),t.jsxs("div",{children:[t.jsxs("div",{className:G.asset,children:[t.jsx("span",{className:G.amount,children:re(Y,{decimals:vt})}),t.jsx("span",{children:xe})]}),t.jsxs("div",{className:G.chain,children:[t.jsxs("span",{children:["on ",Ct||le]}),t.jsxs("div",{className:G.account,children:[bs,t.jsx("span",{className:"monospace",children:se(ws)})]})]})]})]}),A=yo(a),M=p.useMemo(()=>{switch(A){case ss.SKIP:return"Skip Explorer";case ss.OP_WITHDRAW:return"Initia Scan"}},[A]),V=t.jsxs(t.Fragment,{children:[t.jsxs("header",{className:G.header,children:[t.jsxs("div",{className:G.title,children:[x(),t.jsx("div",{className:G.date,children:ft.intlFormatDistance(new Date(d),new Date,{locale:"en-US"})})]}),t.jsxs("div",{className:G.explorer,children:[t.jsx("span",{children:M}),t.jsx(b.IconExternalLink,{size:12})]})]}),t.jsxs("div",{className:G.route,children:[U(f,g,D,i.sender,O(i.sender,(we=_(i.cosmosWalletName))==null?void 0:we.image)),t.jsx("div",{className:G.arrow,children:t.jsx(b.IconArrowDown,{size:12})}),U(y,S,v,i.recipient,O(i.recipient))]}),I.length>0&&t.jsxs("div",{className:G.fees,children:[t.jsx("span",{className:G.label,children:"Fees"}),t.jsx("span",{className:G.content,children:mo(I)})]})]});if(A===ss.OP_WITHDRAW)return t.jsx(un,{chainId:r,txHash:o,className:G.link,children:V});const je=new URLSearchParams({tx_hash:o,chain_id:r}),ie=new URL(`?${je.toString()}`,"https://explorer.skip.build");return t.jsx("a",{href:ie.toString(),className:G.link,target:"_blank",children:V})};function g_(e){if(!e)return"loading";switch(e.state){case"STATE_ABANDONED":case"STATE_COMPLETED_ERROR":case"STATE_PENDING_ERROR":return"error";case"STATE_COMPLETED_SUCCESS":return"success";default:return"loading"}}const y_="_list_1q71m_1",j_="_header_1q71m_5",w_="_checkbox_1q71m_9",b_="_item_1q71m_13",Xt={list:y_,header:j_,checkbox:w_,item:b_},v_=()=>{const{initiaAddress:e,hexAddress:s}=qe(),{history:n,getHistoryDetails:r}=xo(),o=n.filter(l=>r(l)),a=o.filter(l=>{const u=r(l);if(!u)return!1;const{values:m}=u,{sender:h,recipient:_}=m;return[h,_].some(x=>[e,s].includes(x))}),[i,d]=de.useToggle(!a.length),c=i?o:a;return t.jsx(Pe,{title:"Bridge/Swap activity",children:t.jsxs("div",{className:Xt.list,children:[o.length>0&&o.length!==a.length&&t.jsx("header",{className:Xt.header,children:t.jsx(Xh,{checked:i,onClick:d,label:"Show all transactions stored in this browser",className:Xt.checkbox})}),c.length===0?t.jsx(ue,{children:"No bridge/swap activity"}):c.map((l,u)=>t.jsx("div",{className:Xt.item,children:t.jsx(ae,{children:t.jsx(x_,{tx:l})})},u)),n.length>=as&&t.jsxs(ue,{children:["Only the latest ",as," items are stored. Older entries will be removed automatically."]})]})})},wo=()=>{const e=me(),s=pr(),n=gt(),{closeModal:r}=ms();if(p.useEffect(()=>{r(),s.startsWith("/bridge/")&&e("/bridge"),(s==="/collection"||s.startsWith("/nft"))&&e("/nfts")},[n]),s==="/connect")return n?null:t.jsx(_c,{});switch(s){case"/bridge":return t.jsx(zm,{},n);case"/bridge/history":return t.jsx(v_,{})}if(!n)return null;switch(s){case"/":case"/nfts":case"/activity":return t.jsx(ed,{});case"/send":return t.jsx(du,{},n);case"/collection":return t.jsx(_u,{});case"/nft":return t.jsx(vu,{});case"/nft/send":return t.jsx(zu,{},n);case"/rollups":return t.jsx(Xu,{});case"/bridge/preview":return t.jsx(Gh,{});case"/op/withdrawals":return t.jsx(wh,{});case"/tx":return t.jsx(Hr,{});case"/blank":return null}},C_="https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@100..700&display=swap",N_=()=>t.jsxs(t.Fragment,{children:[t.jsx("link",{rel:"preconnect",href:"https://fonts.googleapis.com"}),t.jsx("link",{rel:"preconnect",href:"https://fonts.gstatic.com",crossOrigin:""}),t.jsx("link",{rel:"stylesheet",href:C_}),t.jsx("link",{rel:"stylesheet",href:"https://assets.initia.xyz/fonts/PilatWide.css"})]}),I_=()=>{He();const e=ye();return ln(),_t(localStorage.getItem(H.BRIDGE_SRC_CHAIN_ID)??e.chainId),_t(localStorage.getItem(H.BRIDGE_DST_CHAIN_ID)??e.chainId),null},S_=({children:e,...s})=>typeof document>"u"||typeof window>"u"?null:t.jsxs(t.Fragment,{children:[t.jsx(N_,{}),t.jsxs(dr.Provider,{value:{...hr,...s},children:[t.jsx(ae,{suspenseFallback:null,errorBoundaryProps:{fallback:null},children:t.jsx(I_,{})}),t.jsx(xr,{children:t.jsx(_a,{children:t.jsx(ka,{children:t.jsx(Bi,{children:t.jsxs(q.Tooltip.Provider,{delayDuration:0,skipDelayDuration:0,children:[e,t.jsx(tc,{children:t.jsx(wo,{})})]})})})})})]})]}),k_=({bridge:e})=>t.jsx(xr,{initialEntry:{path:e?"/bridge":"/",state:e},children:t.jsx("div",{className:"body",children:t.jsx(Or.Provider,{value:!!e,children:t.jsx(ae,{children:t.jsx(wo,{})})})})});exports.AddressUtils=F;exports.DEFAULT_GAS_ADJUSTMENT=nn;exports.DEFAULT_GAS_PRICE_MULTIPLIER=mr;exports.InterwovenKit=k_;exports.InterwovenKitProvider=S_;exports.MAINNET=hr;exports.TESTNET=Wo;exports.createUsernameClient=lr;exports.formatAmount=re;exports.formatNumber=rt;exports.formatPercent=Ko;exports.injectStyles=Lo;exports.toAmount=ds;exports.toQuantity=qt;exports.truncate=se;exports.useAddress=gt;exports.useHexAddress=Ut;exports.useInitiaAddress=X;exports.useInterwovenKit=qe;exports.useUsernameQuery=Dr;
4
+ </svg>`,aa=encodeURIComponent(oa),kr=`data:image/svg+xml;utf8,${aa}`,ot=Ue.createQueryKeys("interwovenkit:asset",{list:e=>[e],item:(e,s)=>[e,s],resource:(e,s)=>[e.chainId,s.denom],denom:(e,s)=>[e,s],metadata:(e,s)=>[e,s]});function ia(e){var m,h,_;const{base:s,symbol:n,denom_units:r=[],display:o,logo_URIs:a,name:i,address:l,traces:c}=e,d=((m=r.find(x=>x.denom===o))==null?void 0:m.exponent)??((h=r.find(x=>x.denom===s))==null?void 0:h.exponent)??((_=I.head(r))==null?void 0:_.exponent)??0,u=(a==null?void 0:a.png)??"";return{denom:s,symbol:n,decimals:d,logoUrl:u,name:i,address:l,traces:c}}function Dt(e){var o;const s=(o=e==null?void 0:e.metadata)==null?void 0:o.assetlist,n=$.useQueryClient(),{data:r}=$.useSuspenseQuery({queryKey:ot.list(s).queryKey,queryFn:async()=>s?z.get(s).json():{assets:[]},select:({assets:a})=>{if(!e)return[];const i=a.map(ia);for(const l of i)n.setQueryData(ot.item(e.chainId,l.denom).queryKey,l);return i},staleTime:H.MINUTE});return r}function Rt(e){const s=Dt(e),n=je(),r=Dt(n),o=Er(e);return a=>{const i=s.find(c=>c.denom===a);if(i)return i;const l=r.find(c=>c.denom===o(a));return l?{...l,denom:a}:{denom:a,symbol:"",decimals:0,logoUrl:kr}}}function cn(e,s){const n=Rt(s),o=$.useQueryClient().getQueryData(ot.item(s.chainId,e).queryKey);return o||n(e)}function Er(e){const s=je(),n=Dt(e);return r=>{var a,i,l,c,d;if((a=e.metadata)!=null&&a.is_l1)return r;if(r.startsWith("l2/")||r.startsWith("ibc/")){const u=(i=n.find(m=>m.denom===r))==null?void 0:i.traces;if(u){for(const m of u)if(m.counterparty.chain_name===s.chain_name)return m.counterparty.base_denom}}const o=(d=(c=(l=s.metadata)==null?void 0:l.ibc_channels)==null?void 0:c.find(({chain_id:u,version:m})=>u===e.chain_id&&m==="ics20-1"))==null?void 0:d.channel_id;return o?la(o,r):""}}function ca(e,s){const r=F.toBytes(e,32),o=F.toBytes(s,32),a=new Uint8Array([...r,...o,252]);return B.toHex(sn.sha3_256.create().update(a).digest())}function Ar(e,s){const r=F.toBytes(e,32),o=tt.toBytes(s),a=new Uint8Array([...r,...o,254]);return B.toHex(sn.sha3_256.create().update(a).digest())}function Tr(e){return e?e.startsWith("move/")?`0x${e.slice(5)}`:`0x${Ar("0x1",e)}`:""}function la(e,s){const n=`transfer/${e}/${s}`;return`ibc/${B.toHex(Bo.sha256(n)).toUpperCase()}`}const Ot=Ue.createQueryKeys("interwovenkit:account",{username:(e,s)=>[e,s],address:(e,s)=>[e,s],balances:(e,s)=>[e,s],txs:(e,s)=>[e,s]});function Dr(){const{restUrl:e}=je(),{usernamesModuleAddress:s}=re();return dr({restUrl:e,moduleAddress:s})}function ln(e){const s=X(),{restUrl:n}=e,{data:r}=$.useSuspenseQuery({queryKey:Ot.balances(n,s).queryKey,queryFn:()=>z.create({prefixUrl:n}).get(`cosmos/bank/v1beta1/balances/${s}`).json(),select:({balances:o})=>o,staleTime:H.SECOND});return r}function qr(e){const s=ln(e),n=Dt(e),r=Rt(e),o=Er(e),{data:a}=wr(e.chainId),i=c=>e.fees.fee_tokens.some(d=>d.denom===c),l=c=>n.some(d=>d.denom===c);return I.sortWith([I.descend(({denom:c})=>o(c)==="uinit"),I.descend(({denom:c})=>i(c)),I.descend(({value:c})=>c),I.descend(({denom:c})=>l(c)),({balance:c},{balance:d})=>E(d).comparedTo(c)??0,I.descend(({symbol:c})=>c.toLowerCase())],s.filter(({amount:c})=>!E(c).isZero()).map(({amount:c,denom:d})=>{var _;const u=r(d),m=((_=a==null?void 0:a.find(({id:x})=>x===(u==null?void 0:u.denom)))==null?void 0:_.price)??0,h=E(c).times(m).div(E(10).pow(u.decimals)).toNumber();return{...u,balance:c,price:m,value:h}}))}function X(){const e=Mt();return e?F.toBech32(e):""}function Mt(){const{address:e}=ye.useAccount();return e?F.toPrefixedHex(e):""}function gt(){var r,o;const e=hs(),s=X(),n=Mt();return((o=(r=e.metadata)==null?void 0:r.minitia)==null?void 0:o.type)==="minievm"?n:s}function Pr(){const e=gt(),s=Dr();return $.useQuery({queryKey:Ot.username(s.restUrl,e).queryKey,queryFn:()=>s.getUsername(e),enabled:!!e,staleTime:H.MINUTE})}function Te(){const e=gt(),s=X(),n=Mt(),{data:r}=Pr(),{openDrawer:o}=xt(),a=()=>{o("/")},i=()=>{o("/connect")},l=d=>{o("/bridge",d)},c=ra();return{address:e,initiaAddress:s,hexAddress:n,username:r,openConnect:i,openWallet:a,openBridge:l,...c}}function da(){const e="initia-wallet-widget:last-connected-wallet",s={"initia-wallet-widget:chain-ids":U.ADDED_CHAIN_IDS,"initia-wallet-widget:opened-layers-assets":`${U.OPENED_CHAIN_IDS}:assets`,"initia-wallet-widget:opened-layers-nft":`${U.OPENED_CHAIN_IDS}:nfts`},n={"initia-wallet-widget:fee-denoms":{prefix:U.FEE_DENOM,getSuffix:r=>r},"initia-wallet-widget:ethereum-public-keys":{prefix:U.PUBLIC_KEY,getSuffix:F.toBech32}};localStorage.removeItem(e);for(const[r,o]of Object.entries(s)){const a=localStorage.getItem(r);a&&(localStorage.setItem(o,a),localStorage.removeItem(r))}for(const[r,{prefix:o,getSuffix:a}]of Object.entries(n)){const i=localStorage.getItem(r);if(i)try{const l=JSON.parse(i);for(const[c,d]of Object.entries(l)){const u=`${o}:${a(c)}`;localStorage.setItem(u,d)}localStorage.removeItem(r)}catch{}}}const ua="_status_tn9m1_1",ma="_error_tn9m1_9",Tn={status:ua,error:ma},de=({error:e,children:s})=>t.jsx("p",{className:P(Tn.status,{[Tn.error]:e}),children:s}),oe=({errorBoundaryProps:e={fallbackRender:({error:r})=>t.jsx(de,{error:!0,children:r.message})},suspenseFallback:s=t.jsx(de,{children:"Loading..."}),children:n})=>t.jsx(ar.ErrorBoundary,{...e,children:t.jsx(p.Suspense,{fallback:s,children:n})}),xe=Ue.createQueryKeys("interwovenkit:skip",{chains:null,assets:e=>[e],asset:(e,s)=>[e,s],balances:(e,s)=>[e,s],route:(e,s)=>[e,s],routeErrorInfo:e=>[e],txTrack:(e,s)=>[e,s],txStatus:(e,s)=>[e,s]});function Le(){const{routerApiUrl:e}=re();return p.useMemo(()=>z.create({prefixUrl:e}),[e])}function Fr(){const e=He();return s=>e.some(n=>n.chain_id===s)}function yt(){const e=Fr();return s=>e(s.chain_id)?"initia":s.chain_type}function qt(e){return yt()(e)}function dn(){const e=Le(),{data:s}=$.useSuspenseQuery({queryKey:xe.chains.queryKey,queryFn:()=>e.get("v2/info/chains").json(),select:({chains:n})=>I.sortWith([I.descend(({chain_name:r})=>r==="initia"),I.ascend(({pretty_name:r})=>r)],n),staleTime:H.MINUTE});return s}function We(){const e=dn();return s=>{const n=e.find(r=>r.chain_id===s);if(!n)throw new Error(`Chain not found: ${s}`);return n}}function ve(e){return We()(e)}function _t(e){const s=Le(),n=$.useQueryClient(),{data:r}=$.useSuspenseQuery({queryKey:xe.assets(e).queryKey,queryFn:()=>s.get("v2/fungible/assets",{searchParams:{chain_ids:e}}).json(),select:({chain_to_assets_map:o})=>{const{assets:a}=o[e]??{assets:[]};for(const i of a)n.setQueryData(xe.asset(e,i.denom).queryKey,i);return a.toSorted(I.descend(i=>i.symbol==="INIT"))},staleTime:H.MINUTE});return r}function Br(e){const s=_t(e);return n=>{const r=s.find(o=>o.denom===n);if(!r)throw new Error(`Asset not found: ${n}`);return r}}function Ae(e,s){return Br(s)(e)}function ha(){const[e,s]=p.useState(!1);return p.useEffect(()=>{s(!0)},[]),e}const un=p.createContext(null);function Pt(){const{container:e}=p.useContext(un);return e}const _a=({children:e})=>{const[s,n]=p.useState(null);return t.jsx(un.Provider,{value:{container:s,setContainer:n},children:e})},fa="_loader_4gdsk_1",pa={loader:fa},Qe=({size:e=24,color:s="currentColor",border:n=2})=>{const r={width:`${e}px`,height:`${e}px`,borderColor:`${s} ${s} transparent ${s}`,borderWidth:`${n}px`};return t.jsx("div",{className:pa.loader,style:r})},xa="_container_4qmbg_1",ga="_toast_4qmbg_10",ya="_info_4qmbg_23",ja="_success_4qmbg_27",wa="_error_4qmbg_31",ba="_icon_4qmbg_36",va="_content_4qmbg_43",Ca="_title_4qmbg_46",Na="_description_4qmbg_51",Ia="_close_4qmbg_72",Fe={container:xa,toast:ga,info:ya,success:ja,error:wa,icon:ba,content:va,title:Ca,description:Na,close:Ia},Sa=({notification:e,onClose:s})=>{const n=Ee.useTransition(e,{keys:o=>(o==null?void 0:o.id)||"empty",from:{transform:"translateY(-52px)",opacity:0},enter:{transform:"translateY(0px)",opacity:1},leave:{transform:"translateY(-52px)",opacity:0},config:{...Ee.config.wobbly,clamp:!0}}),r=o=>{switch(o){case"loading":return t.jsx(Qe,{size:16});case"info":case"success":return t.jsx(b.IconCheckCircleFilled,{size:16});case"error":return t.jsx(b.IconCloseCircleFilled,{size:16});default:return null}};return n((o,a)=>{if(!a)return null;const{type:i,title:l,description:c}=a,d=r(i);return t.jsx(Ee.animated.div,{style:o,className:Fe.container,children:t.jsxs("div",{className:P(Fe.toast,i&&Fe[i]),children:[d&&t.jsx("div",{className:Fe.icon,children:d}),t.jsxs("div",{className:Fe.content,children:[t.jsx("p",{className:Fe.title,children:l}),c&&t.jsx("div",{className:Fe.description,children:c})]}),t.jsx("button",{className:Fe.close,onClick:s,children:t.jsx(b.IconClose,{size:14})})]})})})},Rr=p.createContext(null),Or=()=>p.useContext(Rr),Dn=5e3,$a=({children:e})=>{const s=Pt(),[n,r]=p.useState(null),o=p.useRef(null),a=()=>{o.current&&(clearTimeout(o.current),o.current=null)},i=p.useCallback(()=>{a(),r(null)},[]),l=p.useCallback(d=>{a(),r({...d,id:En.nanoid()}),d.autoHide&&(o.current=setTimeout(()=>i(),Dn))},[i]),c=p.useCallback(d=>{a(),r(u=>u?{...u,...d}:{...d,id:En.nanoid()}),d.autoHide&&(o.current=setTimeout(()=>i(),Dn))},[i]);return p.useEffect(()=>()=>a(),[]),t.jsxs(Rr.Provider,{value:{showNotification:l,updateNotification:c,hideNotification:i},children:[e,s&&ir.createPortal(t.jsx(Sa,{notification:n,onClose:i}),s)]})},Mr=p.createContext(!1),ka="_overlay_1eoyl_1",Ea="_fullscreen_1eoyl_12",Aa="_content_1eoyl_16",Ta="_header_1eoyl_73",Da="_title_1eoyl_82",qa="_close_1eoyl_87",Ge={overlay:ka,fullscreen:Ea,content:Aa,header:Ta,title:Da,close:qa},Ur=({title:e,children:s,trigger:n,open:r,onOpenChange:o})=>{const a=p.useContext(Mr);return t.jsxs(T.Dialog.Root,{open:r,onOpenChange:o,children:[n&&t.jsx(T.Dialog.Trigger,{asChild:!0,children:n}),t.jsxs(T.Dialog.Portal,{container:Pt(),children:[t.jsx("div",{className:P(Ge.overlay,{[Ge.fullscreen]:a})}),t.jsxs(T.Dialog.Content,{className:P(Ge.content,{[Ge.fullscreen]:a}),children:[e&&t.jsxs("header",{className:Ge.header,children:[t.jsx(T.Dialog.Title,{className:Ge.title,children:e}),t.jsx(T.Dialog.Close,{className:Ge.close,children:t.jsx(b.IconClose,{size:20})})]}),s]})]})]})},Pa="_root_1wwaf_1",Fa="_item_1wwaf_10",Ba="_chevron_1wwaf_14",Ra="_trigger_1wwaf_19",Oa="_content_1wwaf_39",Ct={root:Pa,item:Fa,chevron:Ba,trigger:Ra,content:Oa};function zr(e){const{list:s,getKey:n,renderHeader:r,renderContent:o,footer:a,...i}=e;return t.jsxs(T.Accordion.Root,{className:Ct.root,type:"multiple",...i,children:[s.map((l,c)=>t.jsxs(T.Accordion.Item,{className:Ct.item,value:(n==null?void 0:n(l))??String(c),children:[t.jsx(T.Accordion.Header,{children:t.jsxs(T.Accordion.Trigger,{className:Ct.trigger,children:[r(l),t.jsx(b.IconChevronDown,{className:Ct.chevron,size:16})]})}),t.jsx(T.Accordion.Content,{className:Ct.content,children:o(l)})]},(n==null?void 0:n(l))??c)),a]})}const Ma="_scrollable_yv81n_1",Ua={scrollable:Ma},De=({className:e,children:s})=>t.jsx("div",{className:P(Ua.scrollable,e),children:s}),Ls=({children:e})=>{const s=p.useRef(null),[n,r]=p.useState(0),o=Ee.useSpring({height:n,config:{...Ee.config.stiff,clamp:!0}});return p.useEffect(()=>{if(s.current){const{height:a}=s.current.getBoundingClientRect();r(a)}},[e]),e?t.jsx(Ee.animated.div,{style:{overflow:"hidden",...o},children:t.jsx("div",{ref:s,children:e})}):null},za="_help_7m3jv_1",Ka="_icon_7m3jv_10",Ha="_info_7m3jv_17",La="_warning_7m3jv_21",Wa="_error_7m3jv_25",Qa="_success_7m3jv_31",Ss={help:za,icon:Ka,info:Ha,warning:La,error:Wa,success:Qa},Me=({level:e,className:s,mt:n=8,children:r})=>{if(!r)return null;const o=()=>{switch(e){case"loading":return t.jsx(Qe,{size:12});case"info":return t.jsx(b.IconInfoFilled,{size:12});case"warning":case"error":return t.jsx(b.IconWarningFilled,{size:12});default:return t.jsx(b.IconCheckCircleFilled,{size:12})}};return t.jsxs("div",{className:P(Ss.help,e&&Ss[e],s),style:{marginTop:n},children:[t.jsx("div",{className:Ss.icon,children:o()}),t.jsx("p",{children:r})]})},Va="_stack_14kq8_1",Ga="_help_14kq8_6",Ya="_info_14kq8_14",Ja="_warning_14kq8_19",Za="_error_14kq8_24",Xa="_success_14kq8_29",Ws={stack:Va,help:Ga,info:Ya,warning:Ja,error:Za,success:Xa},ei=({children:e})=>!e||Array.isArray(e)&&e.filter(Boolean).length===0?null:t.jsx(Ls,{children:t.jsx("div",{className:Ws.stack,children:e})}),J=e=>t.jsx(Me,{...e,className:P(Ws.help,Ws[e.level]),mt:0});J.Stack=ei;const ti="_footer_xif7g_1",si="_actions_xif7g_10",qn={footer:ti,actions:si},ee=({extra:e,className:s,children:n})=>t.jsxs("footer",{className:P(qn.footer,s),children:[e,t.jsx("div",{className:qn.actions,children:n})]}),ni="_button_7llhj_1",ri="_outline_7llhj_24",oi="_sm_7llhj_42",ai="_full_7llhj_48",ii="_small_7llhj_52",ci="_unpadded_7llhj_82",st={button:ni,outline:ri,sm:oi,full:ai,small:ii,unpadded:ci},Kr=e=>{const{sm:s,fullWidth:n,loading:r,className:o,children:a,disabled:i,...l}=e;return t.jsx("button",{...l,className:P(st.button,{[st.sm]:s,[st.full]:n},o),disabled:!!r||i,children:r?t.jsxs(t.Fragment,{children:[t.jsx(Qe,{color:"currentColor",size:16}),typeof r=="string"&&t.jsx("span",{className:st.loading,children:r})]}):a})},li=({className:e,...s})=>t.jsx(Kr,{...s,className:P(st.outline,e)}),di=({className:e,unpadded:s,...n})=>t.jsx("button",{...n,className:P(st.small,{[st.unpadded]:s},e)}),L={White:Kr,Outline:li,Small:di},ui="_item_1n572_1",mi="_title_1n572_10",hi="_content_1n572_14",$s={item:ui,title:mi,content:hi},ks=({title:e,content:s})=>t.jsxs("div",{className:$s.item,children:[t.jsx("div",{className:$s.title,children:e}),t.jsx("div",{className:$s.content,children:s})]}),_i="_trigger_13rgr_1",fi="_icon_13rgr_5",pi="_content_13rgr_16",xi="_item_13rgr_24",Kt={trigger:_i,icon:fi,content:pi,item:xi},gi=({options:e,value:s,onChange:n})=>{const r=Pt(),{txRequest:o}=Sr(),a=Ce(o.chainId),i=Rt(a),l=({amount:[{amount:c,denom:d}]})=>{if(E(c).isZero())return"0";const{symbol:u,decimals:m}=i(d);return`${ne(c,{decimals:m})} ${u}`};return e.length===1?l(e[0]):t.jsxs(T.Select.Root,{value:s,onValueChange:n,children:[t.jsxs(T.Select.Trigger,{className:Kt.trigger,children:[t.jsx(T.Select.Value,{}),t.jsx(T.Select.Icon,{className:Kt.icon,children:t.jsx(b.IconChevronDown,{size:16})})]}),t.jsx(T.Select.Portal,{container:r,children:t.jsx(T.Select.Content,{className:Kt.content,position:"popper",sideOffset:6,align:"end",children:t.jsx(T.Select.Viewport,{children:e.map(c=>{const[{denom:d}]=c.amount;return t.jsx(T.Select.Item,{className:Kt.item,value:d,children:t.jsx(T.Select.ItemText,{children:l(c)})},d)})})})})]})};function rs(e){switch(typeof e){case"string":return e;case"number":case"bigint":return e.toString();case"boolean":return e?"true":"false";case"object":return e===null?"null":e instanceof Uint8Array?B.toBase64(e):Array.isArray(e)?`[${e.map(rs).join(",")}]`:JSON.stringify(e,(s,n)=>typeof n=="bigint"?n.toString():n);default:return"unknown"}}const Ft={...rr.bcs,address:Pn,object:Pn,bigdecimal:yi};function Hr(e){const s=e.trim().match(/^(\w+)<(.+)>$/);if(s){const[,r,o]=s,a=Hr(o);return Ft[r](a)}const n=I.last(e.split("::")).toLowerCase();return Ft[n]()}function Pn(e){return Ft.bytes(32,e).transform({input:s=>F.toBytes(s,32),output:s=>`0x${B.toHex(s)}`})}function yi(e){return Ft.vector(Ft.u8(e)).transform({input:s=>{const n=E.BigNumber(s).times(E.BigNumber(10).pow(18)).toFixed(0,E.BigNumber.ROUND_DOWN);return ji(BigInt(n))},output:s=>{const n=wi(new Uint8Array(s));return E.BigNumber(n).div(E.BigNumber(10).pow(18)).toFixed()}})}function ji(e){if(e<0n)throw new Error("negative values are not supported");if(e===0n)return new Uint8Array([0]);const s=[];let n=e;for(;n>0n;)s.push(Number(n&0xffn)),n>>=8n;return new Uint8Array(s)}function wi(e){let s=0n;for(let n=0;n<e.length;n++)s+=BigInt(e[n])<<BigInt(8*n);return s}const bi="_container_1xzyq_1",vi="_toggle_1xzyq_5",Ci="_list_1xzyq_11",Ni="_arg_1xzyq_16",Ii="_type_1xzyq_21",Nt={container:bi,toggle:vi,list:Ci,arg:Ni,type:Ii},Si=Ue.createQueryKeys("interwovenkit:move",{abi:(e,s,n,r)=>[e,s,n,r]}),$i=({type:e,arg:s})=>rs(Hr(e).parse(s)),ki=({msg:e,chainId:s,fallback:n})=>{const[r,o]=le.useToggle(!1),{restUrl:a}=Ce(s),{moduleAddress:i,moduleName:l,functionName:c,args:d}=e,{data:u}=$.useQuery({queryKey:Si.abi(a,i,l,c).queryKey,queryFn:async()=>{const h=await z.create({prefixUrl:a}).get(`initia/move/v1/accounts/${i}/modules/${l}`).json(),x=JSON.parse(h.module.abi).exposed_functions.find(({name:f})=>f===c);if(!x)throw new Error(`Function ${c} not found in module ${l}`);return x.params.filter(f=>!f.startsWith("&"))},staleTime:H.INFINITY});if(!u)return n;const m=(h,_)=>{const x=u[_];return t.jsxs("div",{className:Nt.arg,children:[t.jsx("div",{className:Nt.type,children:x}),t.jsx(ar.ErrorBoundary,{fallback:t.jsx("div",{className:"error",children:"Error decoding argument"}),children:t.jsx($i,{type:x,arg:h})})]},_)};return t.jsxs("div",{className:Nt.container,children:[t.jsx(L.Small,{className:Nt.toggle,onClick:o,disabled:!u,children:r?"Encode":"Decode"}),r?t.jsx("div",{className:Nt.list,children:d.map(m)}):n]})},Ei="_list_r67rl_1",Ai="_key_r67rl_8",Ti="_value_r67rl_13",Es={list:Ei,key:Ai,value:Ti},Di=({message:e,chainId:s})=>{const{typeUrl:n,value:r}=e;return t.jsx("div",{className:Es.list,children:Object.entries(r).map(([o,a])=>t.jsxs("div",{children:[t.jsx("div",{className:Es.key,children:o}),t.jsx("div",{className:Es.value,children:n==="/initia.move.v1.MsgExecute"&&o==="args"?t.jsx(ki,{msg:r,chainId:s,fallback:rs(a)}):rs(a)})]},o))})},qi="_title_kspdu_1",Pi="_meta_kspdu_7",Fi="_footer_kspdu_14",As={title:qi,meta:Pi,footer:Fi},Lr=()=>{const{txRequest:e,resolve:s,reject:n}=Sr(),{messages:r,memo:o,chainId:a,gas:i,gasAdjustment:l}=e,c=X(),d=fs(),u=br(),m=Ce(a),h=ln(m),{data:_}=$.useSuspenseQuery({queryKey:on.gasPrices(m).queryKey,queryFn:async()=>{var g;if((g=m.metadata)!=null&&g.is_l1){const{restUrl:N}=m,{gas_prices:R}=await z.create({prefixUrl:N}).get("initia/tx/v1/gas_prices").json();return R.toSorted(I.descend(({denom:K})=>K==="uinit")).map(({denom:K,amount:q})=>{const M=E(q).times(hr).toFixed(18);return ke.GasPrice.fromString(M+K)})}return m.fees.fee_tokens.map(({denom:N,fixed_min_gas_price:R})=>ke.GasPrice.fromString(R+N))},staleTime:H.SECOND}),x=_.map(g=>ke.calculateFee(Math.ceil(i*l),g)),f=x.map(g=>g.amount[0]),y=g=>{var K,q;const N=((K=h.find(M=>M.denom===g))==null?void 0:K.amount)??0,R=((q=f.find(M=>M.denom===g))==null?void 0:q.amount)??0;return E(N).gte(R)},j=`${U.FEE_DENOM}:${a}`,w=()=>{const g=localStorage.getItem(j);if(g&&y(g))return g;for(const{denom:N}of f)if(y(N))return N;return f[0].denom},[A,C]=p.useState(w),{mutate:S,isPending:D}=$.useMutation({mutationKey:[Nr],mutationFn:async()=>{const g=x.find(R=>R.amount[0].denom===A);if(!g)throw new Error("Fee not found");if(!d)throw new Error("Signer not initialized");const N=await u(a,c,r,g,o);await s(N)},onMutate:()=>{localStorage.setItem(j,A)},onError:async g=>{n(new Error(await Ke(g)))}}),v=!y(A);return t.jsxs(t.Fragment,{children:[t.jsxs(De,{children:[t.jsx("h1",{className:As.title,children:"Confirm tx"}),t.jsxs("div",{className:As.meta,children:[t.jsx(ks,{title:"Chain",content:a}),t.jsx(ks,{title:"Tx fee",content:t.jsx(gi,{options:x,value:A,onChange:C})}),o&&t.jsx(ks,{title:"Memo",content:o}),v&&t.jsx(J,{level:"error",children:"Insufficient balance for fee"})]}),t.jsx(zr,{list:r,renderHeader:({typeUrl:g})=>ls.sentenceCase(g.split(".").pop().replace(/^Msg/,"")),renderContent:g=>t.jsx(Di,{message:g,chainId:a})})]}),t.jsxs(ee,{className:As.footer,children:[t.jsx(L.Outline,{onClick:()=>n(new Error("User rejected")),disabled:D,children:"Reject"}),t.jsx(L.White,{onClick:()=>S(),disabled:v,loading:D,children:"Approve"})]})]})},Bi=({children:e})=>{const[{title:s,content:n,path:r},o]=p.useState({}),[a,i]=p.useState(!1),l=pe.useAtomValue(ps),c=p.useCallback(m=>{o(m),i(!0)},[]),d=p.useCallback(()=>{o({}),i(!1)},[]),u=p.useCallback(m=>{m||(l==null||l.reject(new Error("User rejected")),o({})),i(m)},[l]);return t.jsxs(yr.Provider,{value:{openModal:c,closeModal:d},children:[e,t.jsx(Ur,{title:s,open:a,onOpenChange:u,children:r==="/tx"?t.jsx(Lr,{}):n})]})},Wr=({value:e,children:s})=>{const[n,r]=p.useState(!1);return s({copy:async()=>{try{await navigator.clipboard.writeText(e),r(!0),setTimeout(()=>r(!1),1e3)}catch{}},copied:n})},Ri="_placeholder_80nya_1",Oi="_circle_80nya_5",Fn={placeholder:Ri,circle:Oi},W=({src:e,alt:s,placeholder:n,classNames:r,circle:o,...a})=>{const{width:i,height:l}=a,c=n??t.jsx("div",{className:P(Fn.placeholder,r==null?void 0:r.placeholder),style:{width:i,height:l}});return e?t.jsx(Ro.Img,{...a,className:P(a.className,{[Fn.circle]:o}),style:{width:i,height:l},src:e,alt:s,unloader:c,loading:"lazy"}):c},Mi="_header_jomuw_1",Ui="_logo_jomuw_10",zi="_copy_jomuw_18",Ki="_name_jomuw_26",Hi="_address_jomuw_30",Li="_icon_jomuw_34",Wi="_copied_jomuw_41",Qi="_disconnect_jomuw_56",Be={header:Mi,logo:Ui,copy:zi,name:Ki,address:Hi,icon:Li,copied:Wi,disconnect:Qi},Vi=()=>{const{connector:e}=ye.useAccount(),{disconnect:s}=ye.useDisconnect(),{address:n,username:r}=Te(),{closeDrawer:o}=xt(),a=r??n;return e?t.jsxs("header",{className:Be.header,children:[t.jsx("div",{className:Be.logo,children:t.jsx(W,{src:e.icon,width:18,height:18})}),t.jsx(Wr,{value:n,children:({copy:i,copied:l})=>t.jsxs("button",{className:P(Be.copy,{[Be.copied]:l}),onClick:i,children:[t.jsx("div",{className:Be.address,children:te(n)}),t.jsx("div",{className:Be.name,children:te(a)}),t.jsx(b.IconCopy,{className:Be.icon,size:12}),l?"Copied!":""]})}),t.jsx("button",{className:Be.disconnect,onClick:()=>{o(),s()},children:t.jsx(b.IconSignOut,{size:18})})]}):null},Gi="_link_guafb_1",Yi={link:Gi},mn=e=>{const{chainId:s,txHash:n,showIcon:r,className:o,children:a,onClick:i,...l}=e,c=Ce(s),d=I.path(["explorers",0,"tx_page"],c),u=a??te(n);return d?t.jsxs("a",{...l,href:cr(Ji(d.replace(/\$\{txHash\}/g,n))),className:P(Yi.link,o),onClick:i,target:"_blank",children:[u,r&&t.jsx(b.IconExternalLink,{size:12})]}):t.jsx("span",{...l,children:u})};function Ji(e){try{const s=new URL(e,window.location.href);if(!["http:","https:"].includes(s.protocol))throw new Error("Invalid protocol");return s.toString()}catch{return"#"}}const Zi=()=>{const[e,s]=pe.useAtom(Ir),{showNotification:n,updateNotification:r,hideNotification:o}=Or();return p.useEffect(()=>{if(!e)return;const{status:a,chainId:i,txHash:l,error:c}=e,d=c?c.message:l?t.jsx(mn,{txHash:l,chainId:i,onClick:o,showIcon:!0,children:"View on Initia Scan"}):null;switch(a){case"loading":n({type:"loading",title:"Transaction is pending..."});break;case"error":r({type:"error",title:"Transaction failed",description:d}),s(null);break;case"success":r({type:"success",title:"Transaction is successful!",description:d}),s(null);break}},[e,s,n,r,o]),null},Xi="_overlay_1ks72_1",ec="_content_1ks72_49",tc="_inner_1ks72_69",Ts={overlay:Xi,content:ec,inner:tc},sc=({children:e})=>{const{isDrawerOpen:s,closeDrawer:n}=xt(),{setContainer:r}=p.useContext(un),o=le.useMedia("(max-width: 576px)");nc(s&&o);const a=pe.useAtomValue(ps),i=$.useIsMutating({mutationKey:[Nr]}),l=()=>{const h=i?"User exited before response arrived. Transaction may succeed or fail.":"User rejected";n(),a==null||a.reject(new Error(h))},c=ue(),d=$.useQueryClient(),u={fallbackRender:({error:h,resetErrorBoundary:_})=>{const x=()=>{c("/"),d.clear(),_()};return t.jsxs(De,{children:[t.jsx(de,{error:!0,children:h.message}),t.jsx(ee,{children:t.jsx(L.White,{onClick:x,children:"Retry"})})]})}},m=Ee.useTransition(s,{from:{transform:o?"translateY(100%)":"translateX(100%)"},enter:{transform:o?"translateY(0%)":"translateX(0%)"},leave:{transform:o?"translateY(100%)":"translateX(100%)"},config:{tension:500,friction:35,clamp:!0}});return ir.createPortal(t.jsxs(t.Fragment,{children:[m((h,_)=>_?t.jsx(Ee.animated.button,{style:h,className:Ts.overlay,onClick:l,children:t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",width:"14",height:"14",children:[t.jsx("path",{d:"M7.168 14.04 l 6.028 -6.028 l -6.028 -6.028 L8.57 .582 L16 8.012 l -7.43 7.43 l -1.402 -1.402 Z"}),t.jsx("path",{d:"M0.028 14.04 l 6.028 -6.028 L0.028 1.984 L1.43 .582 l 7.43 7.43 l -7.43 7.43 L0.028 14.04 Z"})]})}):null),m((h,_)=>_?t.jsx(Ee.animated.div,{style:h,className:P(Ts.content),children:t.jsxs("div",{className:P(Ts.inner,"body"),ref:r,children:[t.jsx(Zi,{}),t.jsx(Vi,{}),t.jsx(oe,{errorBoundaryProps:u,children:e})]})}):null)]}),Ko())};function nc(e){p.useLayoutEffect(()=>{const s=document.body.style.overflow;return e?document.body.style.overflow="hidden":document.body.style.overflow=s,()=>{document.body.style.overflow=s}},[e])}const rc="_page_rx25j_1",oc="_title_rx25j_10",ac="_scrollable_rx25j_17",ic="_list_rx25j_22",cc="_item_rx25j_32",lc="_name_rx25j_51",dc="_dimmed_rx25j_59",uc="_recent_rx25j_63",mc="_installed_rx25j_64",hc="_docs_rx25j_81",_e={page:rc,title:oc,scrollable:ac,list:ic,item:cc,name:lc,dimmed:dc,recent:uc,installed:mc,docs:hc},_c=[{name:"Rabby",url:"https://rabby.io"},{name:"Phantom",url:"https://phantom.com"},{name:"Keplr",url:"https://keplr.app"},{name:"Leap",url:"https://leapwallet.io"}],fc=()=>{const{closeDrawer:e}=xt(),{connectors:s,connectAsync:n}=ye.useConnect(),[r]=le.useLocalStorage("wagmi.recentConnectorId"),[o,a]=p.useState(null),{mutate:i,isPending:l}=$.useMutation({mutationFn:async c=>{a(c.id);try{await n({connector:c})}catch(d){throw new Error(await Ke(d))}},onSettled:()=>{a(null)},onSuccess:()=>{e()}});return t.jsxs("div",{className:_e.page,children:[t.jsx("h1",{className:_e.title,children:"Connect wallet"}),t.jsx(De,{className:_e.scrollable,children:t.jsxs("div",{className:_e.list,children:[s.toSorted(I.descend(c=>c.id===r)).map(c=>{const{name:d,icon:u,id:m}=c;return t.jsxs("button",{className:_e.item,onClick:()=>i(c),disabled:l,children:[t.jsx(W,{src:u,width:24,height:24}),t.jsx("span",{className:_e.name,children:d}),o===m?t.jsx(Qe,{size:16}):r===m?t.jsx("span",{className:_e.recent,children:"Recent"}):t.jsx("span",{className:_e.installed,children:"Installed"})]},m)}),_c.filter(({name:c})=>!s.some(d=>d.name.includes(c))).map(({name:c,url:d})=>{const u=`https://assets.initia.xyz/images/wallets/${c}.webp`;return t.jsxs("a",{href:d,className:_e.item,target:"_blank",children:[t.jsx(W,{src:u,width:24,height:24}),t.jsx("span",{className:P(_e.name,_e.dimmed),children:c}),t.jsx(b.IconExternalLink,{size:10})]},c)})]})}),t.jsx(ee,{children:t.jsxs("a",{href:"https://docs.initia.xyz",target:"_blank",className:_e.docs,children:[t.jsx("span",{children:"Learn more"}),t.jsx(b.IconExternalLink,{size:14})]})})]})},pc="_root_xwz5z_1",xc="_header_xwz5z_6",gc="_title_xwz5z_12",yc="_warning_xwz5z_18",jc="_content_xwz5z_22",wc="_footer_xwz5z_26",bc="_secondary_xwz5z_36",Ye={root:pc,header:xc,title:gc,warning:yc,content:jc,footer:wc,secondary:bc},Qr=e=>{const{type:s,icon:n,title:r,children:o,primaryButton:a,secondaryButton:i}=e;return t.jsxs(De,{className:Ye.root,children:[t.jsxs("header",{className:P(Ye.header,s&&Ye[s]),children:[n,t.jsx("h1",{className:Ye.title,children:r})]}),t.jsx("div",{className:Ye.content,children:o}),t.jsxs("footer",{className:Ye.footer,children:[t.jsx(L.White,{onClick:a.onClick,sm:!0,fullWidth:!0,children:a.label}),t.jsxs("button",{className:Ye.secondary,onClick:i.onClick,children:[t.jsx("span",{children:i.label}),t.jsx(b.IconChevronRight,{size:14})]})]})]})},vc="_list_tmcxc_1",Cc="_row_tmcxc_8",Nc="_dt_tmcxc_19",Ic="_asset_tmcxc_25",Ht={list:vc,row:Cc,dt:Nc,asset:Ic},Sc=({list:e,onNavigate:s,onDismiss:n})=>{const r=je(),o=it(),a=Rt(r);return t.jsx(Qr,{title:"Ready to claim",primaryButton:{label:"View withdrawal status",onClick:s},secondaryButton:{label:"Do not show again",onClick:n},children:t.jsx("div",{className:Ht.list,children:e.toSorted((i,l)=>i.chainId.localeCompare(l.chainId)).map(({txHash:i,chainId:l,amount:c,denom:d})=>{const u=o(l),{decimals:m,symbol:h}=a(d),_=ne(c,{decimals:m});return t.jsxs("div",{className:Ht.row,children:[t.jsxs("div",{className:Ht.dt,children:[t.jsx(W,{src:u.logoUrl,width:16,height:16}),t.jsx("span",{children:u.name})]}),t.jsxs("span",{className:Ht.asset,children:[_," ",h]})]},i)})})})};function Ds(e,s){return e.chainId===s.chainId&&e.txHash===s.txHash}const Lt=({chainId:e,txHash:s})=>`${U.OP_REMINDER}:${e}:${s}`,$c=or.atomWithStorage(U.OP_REMINDER,[]);function jt(){const e=X(),[s=[],n]=pe.useAtom($c),r=p.useMemo(()=>s.map(c=>{const d=localStorage.getItem(Lt(c));return d?JSON.parse(d):null}).filter(c=>{if(!c)return!1;const{recipient:d,claimableAt:u}=c;return d!==e?!1:ft.isPast(u)}),[e,s]),o=p.useCallback((c,d)=>{s.some(u=>Ds(u,c))||(n((u=[])=>[...u,c]),localStorage.setItem(Lt(c),JSON.stringify(d)))},[s,n]),a=p.useCallback(c=>{n((d=[])=>d.filter(u=>!Ds(u,c))),localStorage.removeItem(Lt(c))},[n]),i=p.useCallback(c=>{const d=c.filter(u=>!s.some(m=>Ds(m,u)));d.length!==0&&n((u=[])=>[...u,...d])},[s,n]),l=p.useCallback((c,d)=>{localStorage.setItem(Lt(c),JSON.stringify(d)),n((u=[])=>[...u])},[n]);return{reminders:r,addReminder:o,removeReminder:a,syncReminders:i,setReminder:l}}function Vr(){const e=ue(),{openModal:s,closeModal:n}=ms(),{reminders:r,setReminder:o}=jt();p.useEffect(()=>{const a=r.filter(c=>!c.dismissed);if(a.length===0)return;const i=()=>{const c=a.every(d=>d.chainId===a[0].chainId)?a[0].chainId:void 0;e("/op/withdrawals",{chainId:c}),l()},l=()=>{n();for(const c of a)o(c,{...c,dismissed:!0})};s({content:p.createElement(Sc,{list:a,onNavigate:i,onDismiss:l})})},[r,n,e,s,o])}const kc="2.0.0-rc.2",Ec="_flex_1v8wv_1",Ac={flex:Ec},Qs=({mt:e,mb:s,children:n})=>t.jsx("div",{className:Ac.flex,style:{marginTop:e,marginBottom:s},children:n}),Tc="_toggle_grhff_1",Dc="_name_grhff_7",qc="_rollups_grhff_11",Pc="_version_grhff_29",Wt={toggle:Tc,name:Dc,rollups:qc,version:Pc},Gr=({renderContent:e,storageKey:s})=>{const{defaultChainId:n}=re(),{addedChains:r}=pt(),[o=[],a]=le.useLocalStorage(`${U.OPENED_CHAIN_IDS}:${s}`,[n]),i=o.length===0,l=()=>{a(i?r.map(c=>c.chainId):[])};return t.jsxs(t.Fragment,{children:[t.jsx(Qs,{mb:6,children:t.jsxs(L.Small,{className:Wt.toggle,onClick:l,children:[t.jsx("span",{children:i?"Expand all":"Collapse all"}),i?t.jsx(b.IconChevronDown,{size:10}):t.jsx(b.IconChevronUp,{size:10})]})}),t.jsx(zr,{list:r,getKey:({chainId:c})=>c,renderHeader:({name:c,logoUrl:d})=>t.jsxs(t.Fragment,{children:[t.jsx(W,{src:d,width:16,height:16}),t.jsx("span",{className:Wt.name,children:c})]}),renderContent:e,value:o,onValueChange:a,footer:t.jsxs(Bt,{className:Wt.rollups,to:"/rollups",children:[t.jsx(b.IconSettingFilled,{size:12}),t.jsx("span",{children:"Manage rollup list"})]})}),t.jsx(Qs,{mt:8,children:t.jsxs("span",{className:Wt.version,children:["v",kc]})})]})},hn=({chain:e,asset:s,children:n})=>{const r=$.useQueryClient(),{data:o}=$.useQuery({queryKey:ot.resource(e,s).queryKey,queryFn:async()=>{var c,d,u;if(s.symbol||!((c=e.metadata)!=null&&c.is_l1||((u=(d=e.metadata)==null?void 0:d.minitia)==null?void 0:u.type)==="minimove"))return null;const a=Tr(s.denom),{resource:i}=await z.create({prefixUrl:e.restUrl}).get(`initia/move/v1/accounts/${a}/resources/by_struct_tag`,{searchParams:{struct_tag:"0x1::fungible_asset::Metadata"}}).json(),{data:l}=JSON.parse(i.move_resource);return r.setQueryData(ot.item(e.chainId,s.denom).queryKey,{...s,...l}),l},staleTime:H.INFINITY});return n({...s,...o})},Fc="_asset_1dxy8_1",Bc="_token_1dxy8_23",Rc="_symbol_1dxy8_28",Oc="_name_1dxy8_29",Mc="_balance_1dxy8_40",Uc="_amount_1dxy8_45",zc="_value_1dxy8_49",Je={asset:Fc,token:Bc,symbol:Rc,name:Oc,balance:Mc,amount:Uc,value:zc},Kc=e=>{const{denom:s,symbol:n,name:r,logoUrl:o,decimals:a,balance:i="0",value:l=0}=e;return t.jsxs("div",{className:Je.asset,children:[t.jsx(W,{src:o,width:24,height:24}),t.jsxs("div",{className:Je.token,children:[t.jsx("div",{className:Je.symbol,children:n??te(s)}),r&&t.jsx("div",{className:Je.name,children:r})]}),E(i).gt(0)&&t.jsxs("div",{className:Je.balance,children:[t.jsx("div",{className:Je.amount,children:ne(i,{decimals:a})}),l>0&&t.jsxs("div",{className:Je.value,children:["$",rt(l)]})]})]})},Hc="_actions_180l3_1",Lc="_button_180l3_8",Wc="_add_180l3_25",It={actions:Hc,button:Lc,add:Wc},Qc=({denom:e,chain:s})=>{const n=ue(),{defaultChainId:r}=re(),{evm_chain_id:o}=hs(),{address:a="",symbol:i,decimals:l,logoUrl:c}=cn(e,s),{connector:d}=ye.useAccount(),{switchChainAsync:u}=ye.useSwitchChain(),{watchAssetAsync:m}=ye.useWatchAsset(),{chainId:h}=s,_=()=>{n("/send",{denom:e,chain:s})},x=()=>{n("/bridge",{srcChainId:h,srcDenom:e})},f=$.useMutation({mutationFn:async()=>(await u({chainId:Number(o)}),m({type:"ERC20",options:{address:a,symbol:i,decimals:l,image:c}}))});return t.jsxs("nav",{className:It.actions,children:[t.jsx("button",{className:It.button,onClick:_,children:"Send"}),t.jsx("button",{className:It.button,onClick:x,children:"Bridge/Swap"}),h===r&&!!a&&t.jsxs("button",{className:P(It.button,It.add),onClick:()=>f.mutate(),disabled:f.isPending||f.data,children:[f.data?t.jsx(b.IconCheck,{size:10}):t.jsx(b.IconPlus,{size:10}),t.jsx(W,{src:d==null?void 0:d.icon,width:16,height:16})]})]})},Vc="_list_wod0u_1",Gc="_item_wod0u_8",Yc="_trigger_wod0u_19",Jc="_content_wod0u_24",Qt={list:Vc,item:Gc,trigger:Yc,content:Jc},Zc=e=>{const s=qr(e);return s.length?t.jsx(T.Accordion.Root,{type:"single",collapsible:!0,className:Qt.list,children:s.map(n=>t.jsxs(T.Accordion.Item,{className:Qt.item,value:n.denom,children:[t.jsx(T.Accordion.Header,{children:t.jsx(T.Accordion.Trigger,{className:Qt.trigger,children:t.jsx(hn,{asset:n,chain:e,children:r=>t.jsx(Kc,{...r})})})}),t.jsx(T.Accordion.Content,{className:Qt.content,children:t.jsx(Qc,{denom:n.denom,chain:e})})]},n.denom))}):t.jsx(de,{children:"No assets"})},Xc=()=>t.jsx(Gr,{renderContent:e=>t.jsx(oe,{children:t.jsx(Zc,{...e})}),storageKey:"assets"});function _n(e,s){var o;const n=((o=s==null?void 0:s.pages)==null?void 0:o.map(a=>a[e]??[]).flat())??[],r=I.pathOr(0,[0,"pagination","total"],s==null?void 0:s.pages);return{list:n,count:r}}function fn(e){return e.pagination.next_key}async function el(e,s,n){const r=z.create(s),o=async(a,i)=>{const l=await r.extend(i?{searchParams:{"pagination.key":i}}:{}).get(e).json(),c=l[n]??[],d=fn(l),u=[...a,...c];return d?o(u,d):u};return o([],null)}const pn=Ue.createQueryKeys("interwovenkit:nft",{collections:(e,s)=>[e,s],collection:(e,s,n)=>[e,s,n],metadata:e=>[e]});function tl(e){const{object_addr:s,collection:n}=e;return{object_addr:s,...n}}function sl(e,s){const{collection_addr:n,collection_name:r,nft:o,object_addr:a}=e,i=s.name??o.token_id;return{collection_addr:n,collection_name:r,...o,object_addr:a,...s,name:i}}function nl(e){const{indexerUrl:s}=e,n=X(),{data:r}=$.useSuspenseQuery({queryKey:pn.collections(s,n).queryKey,queryFn:()=>el(`indexer/nft/v1/collections/by_account/${n}`,{prefixUrl:s},"collections"),select:o=>o.map(tl),staleTime:H.SECOND});return r}function Yr({chain:e,collection:s}){const n=X(),{object_addr:r}=s,{indexerUrl:o}=e;return $.useSuspenseInfiniteQuery({queryKey:pn.collection(o,n,r).queryKey,queryFn:({pageParam:a=""})=>z.create({prefixUrl:o}).get(`indexer/nft/v1/tokens/by_account/${n}`,{searchParams:{collection_addr:r,"pagination.key":a||"","pagination.limit":9}}).json(),initialPageParam:"",getNextPageParam:fn,staleTime:H.SECOND})}function Bn(e){return e==null?void 0:e.replace("ipfs://","https://ipfs.io/ipfs/")}function rl(e){const s=Bn(e);return $.useQuery({queryKey:pn.metadata(s).queryKey,queryFn:async()=>{try{if(!s)return{};const n=await z.get(s).json();return{...n,image:Bn(n.image)}}catch{return{}}},staleTime:H.INFINITY})}const Jr=({nftResponse:e,children:s})=>{const{data:n={}}=rl(e.nft.uri),r=sl(e,n);return s(r)},ol="_thumbnail_1se9u_1",al="_placeholder_1se9u_15",il="_clickable_1se9u_21",St={thumbnail:ol,placeholder:al,clickable:il},xs=({chain:e,collection:s,nft:n,size:r,onClick:o})=>{const a=new URL(`/v1/${e.chainId}/${s.object_addr}/${n.object_addr||n.token_id}`,"https://glyph.initia.xyz").toString();return o?t.jsx("button",{className:P(St.thumbnail,St.clickable),onClick:o,style:{width:r,height:r},children:t.jsx(W,{src:a,classNames:{placeholder:St.placeholder}})}):t.jsx("div",{className:St.thumbnail,style:{width:r,height:r},children:t.jsx(W,{src:a,classNames:{placeholder:St.placeholder}})})},cl="_item_1rdda_1",ll="_content_1rdda_15",dl="_name_1rdda_21",ul="_count_1rdda_27",ml="_chevron_1rdda_33",$t={item:cl,content:ll,name:dl,count:ul,chevron:ml},hl=({chain:e,collection:s})=>{const{data:n}=Yr({chain:e,collection:s}),{list:r,count:o}=_n("tokens",n),[a]=r;return t.jsxs(Bt,{className:$t.item,to:"/collection",state:{collection:s,chain:e},children:[a&&t.jsx(Jr,{nftResponse:a,children:i=>t.jsx(xs,{chain:e,collection:s,nft:i,size:58})}),t.jsxs("div",{className:$t.content,children:[t.jsx("div",{className:$t.name,children:s.name}),o>0&&t.jsx("div",{className:$t.count,children:o})]}),t.jsx("div",{className:$t.chevron,children:t.jsx(b.IconChevronRight,{})})]})},_l="_list_1lv70_1",fl={list:_l},pl=({chain:e})=>{const s=nl(e);return s.length?t.jsx("div",{className:fl.list,children:s.map(n=>t.jsx(hl,{collection:n,chain:e},n.object_addr))}):t.jsx(de,{children:"No collections"})},xl=()=>t.jsx(Gr,{renderContent:e=>t.jsx(oe,{children:t.jsx(pl,{chain:e})}),storageKey:"nfts"}),at=({title:e,content:s,children:n,className:r})=>{const[o,a]=p.useState(!1),i=()=>a(!1);return t.jsx(Ur,{title:e,trigger:t.jsx("button",{className:r,children:n}),open:o,onOpenChange:a,children:s(i)})},gl="_scrollable_1p1lw_1",yl="_list_1p1lw_5",jl="_item_1p1lw_9",wl="_name_1p1lw_13",Vt={scrollable:gl,list:yl,item:jl,name:wl};function Zr({onSelect:e,list:s,...n}){const{getImage:r,getName:o,getKey:a,getIsLoading:i,getDisabled:l}=n;return t.jsx(De,{className:Vt.scrollable,children:t.jsx("div",{className:Vt.list,children:s.map(c=>t.jsxs("button",{className:Vt.item,onClick:()=>e(c),disabled:(i==null?void 0:i(c))||(l==null?void 0:l(c)),children:[t.jsx(W,{src:r(c),width:28,height:28}),t.jsx("span",{className:Vt.name,children:o(c)}),(i==null?void 0:i(c))&&t.jsx(Qe,{size:16})]},a(c)))})})}const Xr=({onSelect:e})=>{const{addedChains:s}=pt();return t.jsx(Zr,{onSelect:n=>e(n.chainId),list:s,getImage:n=>n.logoUrl,getName:n=>n.name,getKey:n=>n.chainId})},bl="_button_1uc4x_1",vl="_name_1uc4x_9",Cl="_icon_1uc4x_13",qs={button:bl,name:vl,icon:Cl},Nl=({value:e,onSelect:s})=>{const{logoUrl:n,name:r}=Ce(e);return t.jsxs(at,{title:"Select rollup",content:o=>t.jsx(Xr,{onSelect:a=>{s(a),o()}}),className:P("input",qs.button),children:[t.jsx(W,{src:n,width:16,height:16}),t.jsx("span",{className:qs.name,children:r}),t.jsx(b.IconChevronDown,{size:16,className:qs.icon})]})},Il="_button_1iys9_1",Sl={button:Il},gs=({onClick:e,disabled:s})=>{const{ref:n,inView:r}=Oo.useInView();return p.useEffect(()=>{r&&e()},[r,e]),t.jsxs("button",{className:Sl.button,onClick:e,disabled:s,ref:n,children:[t.jsx("span",{children:"Load more"}),t.jsx(b.IconChevronDown,{size:12})]})};function $l({indexerUrl:e}){const s=X();return $.useSuspenseInfiniteQuery({queryKey:Ot.txs(e,s).queryKey,queryFn:async({pageParam:n=""})=>{const r={"pagination.key":n||"","pagination.reverse":!0};return z.create({prefixUrl:e}).get(`indexer/tx/v1/txs/by_account/${s}`,{searchParams:r}).json()},initialPageParam:"",getNextPageParam:fn,staleTime:H.SECOND})}const kl="_message_1g2hc_1",El="_more_1g2hc_8",Rn={message:kl,more:El},Al=({messages:e})=>t.jsxs(t.Fragment,{children:[e.slice(0,3).map((s,n)=>t.jsx("p",{className:Rn.message,children:ls.sentenceCase(s["@type"].split("Msg")[1])},n)),e.length>3&&t.jsx("footer",{className:Rn.more,children:`+${e.length-3} more`})]});function Tl(e){return Object.fromEntries(e.map(({key:s,value:n})=>[s,n]))}const On=I.pipe(I.groupBy(I.prop("metadata")),I.values,I.map((e=[])=>{const{metadata:s}=e[0];return{amount:E.sum(...I.map(I.prop("amount"),e)).toString(),metadata:s}}),I.filter(({amount:e})=>!E(e).isZero()));function Dl(e,s,n){try{const o=e.filter(({type:a})=>a==="move").map(({attributes:a})=>Tl(a)).reduce((a,{type_tag:i,data:l})=>{try{const{amount:c,store_addr:d,metadata_addr:u}=JSON.parse(l);return`0x${ca(n,u)}`!==d?a:i==="0x1::fungible_asset::DepositEvent"?[...a,{amount:E(c).toString(),metadata:u}]:i==="0x1::fungible_asset::WithdrawEvent"?[...a,{amount:E(c).negated().toString(),metadata:u}]:a}catch{return a}},[s]);return On(o)}catch{return On([])}}const ql=({metadata:e,chain:s,children:n})=>{const{restUrl:r}=s,{data:o}=$.useSuspenseQuery({queryKey:ot.denom(r,e).queryKey,queryFn:()=>z.create({prefixUrl:r}).get("initia/move/v1/denom",{searchParams:{metadata:e}}).json(),select:({denom:a})=>a,staleTime:H.INFINITY});return n(o)},Pl="_change_8jpfs_1",Fl="_positive_8jpfs_9",Bl="_negative_8jpfs_13",Ps={change:Pl,positive:Fl,negative:Bl},Rl=({tx:e,events:s,chain:n})=>{var h,_,x,f,y;const r=Mt(),o=Rt(n),a=be.computeAddress(`0x${B.toHex(B.fromBase64(e.auth_info.signer_infos[0].public_key.key))}`),i=(h=e.auth_info.fee)==null?void 0:h.payer,l=((_=e.auth_info.fee)==null?void 0:_.amount[0])??{amount:"0",denom:""},c=a===r&&!i;if(!((x=n.metadata)!=null&&x.is_l1||((y=(f=n.metadata)==null?void 0:f.minitia)==null?void 0:y.type)==="minimove"))return null;const d=Tr(l.denom),u={amount:c?l.amount:"0",metadata:d};return Dl(s,u,r).map(({amount:j,metadata:w},A)=>{const C=new E(j).isPositive(),S=new E(j).abs().toString();return t.jsx(oe,{suspenseFallback:null,errorBoundaryProps:{fallback:null},children:t.jsx(ql,{metadata:w,chain:n,children:D=>t.jsx(hn,{asset:o(D),chain:n,children:({denom:v,symbol:g,decimals:N})=>t.jsxs("div",{className:P(Ps.change,C?Ps.positive:Ps.negative),children:[C?"+":"-",ne(S,{decimals:N})," ",g??te(v)]})})})},A)})},Ol="_link_qkpto_1",Ml="_inner_qkpto_14",Ul="_timestamp_qkpto_23",zl="_content_qkpto_39",Kl="_messages_qkpto_45",Hl="_changes_qkpto_50",Ll="_error_qkpto_57",Ze={link:Ol,inner:Ml,timestamp:Ul,content:zl,messages:Kl,changes:Hl,error:Ll},Wl=({txItem:e,chain:s})=>t.jsx(mn,{txHash:e.txhash,chainId:s.chainId,className:Ze.link,children:t.jsxs("div",{className:Ze.inner,children:[t.jsx("div",{className:Ze.timestamp,children:ls.sentenceCase(ft.intlFormatDistance(new Date(e.timestamp),new Date,{locale:"en-US"}))}),t.jsxs("div",{className:Ze.content,children:[t.jsx("div",{className:Ze.messages,children:t.jsx(Al,{messages:e.tx.body.messages})}),t.jsx("div",{className:Ze.changes,children:t.jsx(Rl,{...e,chain:s})})]}),e.code!==0&&t.jsxs("div",{className:Ze.error,children:[t.jsx(b.IconWarningFilled,{size:12}),t.jsx("span",{children:"Failed"})]})]})}),Ql="_list_10hx5_1",Vl={list:Ql},Gl=({chain:e})=>{const{data:s,hasNextPage:n,isFetching:r,fetchNextPage:o}=$l(e),{list:a}=_n("txs",s);return a.length?t.jsxs(t.Fragment,{children:[t.jsx("div",{className:Vl.list,children:a.map(i=>t.jsx(Wl,{txItem:i,chain:e},i.txhash))}),n&&t.jsx(gs,{onClick:()=>o(),disabled:r})]}):t.jsx(de,{children:"No activity yet"})},Yl=()=>{const{defaultChainId:e}=re(),[s,n]=p.useState(e),r=Ce(s);return t.jsxs(t.Fragment,{children:[t.jsx(Nl,{value:s,onSelect:n}),t.jsx(oe,{children:t.jsx(Gl,{chain:r})},s)]})},Jl="_nav_1ldnv_1",Zl="_item_1ldnv_6",Xl="_tabs_1ldnv_28",ed="_tab_1ldnv_28",Xe={nav:Jl,item:Zl,tabs:Xl,tab:ed},td=()=>{Vr();const e=ue(),s=xr();return t.jsxs(De,{children:[t.jsxs("div",{className:Xe.nav,children:[t.jsxs(Bt,{to:"/send",className:Xe.item,children:[t.jsx(b.IconArrowRight,{size:16}),t.jsx("span",{children:"Send"})]}),t.jsxs("button",{className:Xe.item,onClick:()=>e("/bridge"),children:[t.jsx(b.IconSwap,{size:16}),t.jsx("span",{children:"Bridge/Swap"})]})]}),t.jsxs(T.Tabs.Root,{value:s,onValueChange:e,children:[t.jsxs(T.Tabs.List,{className:Xe.tabs,children:[t.jsx(T.Tabs.Trigger,{className:Xe.tab,value:"/",children:"Assets"}),t.jsx(T.Tabs.Trigger,{className:Xe.tab,value:"/nfts",children:"NFTs"}),t.jsx(T.Tabs.Trigger,{className:Xe.tab,value:"/activity",children:"Activity"})]}),t.jsx(T.Tabs.Content,{value:"/",children:t.jsx(Xc,{})}),t.jsx(T.Tabs.Content,{value:"/nfts",children:t.jsx(xl,{})}),t.jsx(T.Tabs.Content,{value:"/activity",children:t.jsx(Yl,{})})]})]})};function eo({quantity:e,balance:s,decimals:n},r){if(E.BigNumber(e).isZero()){r.addIssue({code:Q.z.ZodIssueCode.custom,message:"Enter amount",path:["quantity"]});return}if(!s||E.BigNumber(ds(e,n)).gt(s)){r.addIssue({code:Q.z.ZodIssueCode.custom,message:"Insufficient balance",path:["quantity"]});return}}const to=Q.z.string().nonempty("Recipient address is required").refine(e=>F.validate(e),"Invalid address"),sd="_header_acels_1",nd="_back_acels_11",rd="_title_acels_23",Fs={header:sd,back:nd,title:rd},qe=({title:e,returnTo:s,extra:n,children:r})=>t.jsxs(t.Fragment,{children:[t.jsxs("header",{className:Fs.header,children:[s!==!1&&t.jsx(Bt,{to:s??-1,className:Fs.back,children:t.jsx(b.IconBack,{size:16})}),t.jsx("h1",{className:Fs.title,children:e}),n]}),t.jsx(De,{children:r})]}),od="_fieldset_y241y_1",ad="_upper_y241y_9",id="_select_y241y_14",cd="_account_y241y_19",ld="_lower_y241y_24",dd="_wrapper_y241y_25",ud="_balance_y241y_32",md="_value_y241y_36",hd="_error_y241y_49",Ie={fieldset:od,upper:ad,select:id,account:cd,lower:ld,wrapper:dd,balance:ud,value:md,error:hd},Vs=e=>{const{selectButton:s,accountButton:n,quantityInput:r,balanceButton:o,value:a,errorMessage:i}=e;return t.jsxs("div",{className:Ie.fieldset,children:[t.jsxs("div",{className:Ie.upper,children:[t.jsx("div",{className:Ie.select,children:s}),t.jsx("div",{className:Ie.account,children:n})]}),t.jsxs("div",{className:Ie.lower,children:[r,t.jsxs("div",{className:Ie.wrapper,children:[t.jsx("div",{className:Ie.balance,children:o}),a&&t.jsxs("div",{className:Ie.value,children:["$",a]})]}),i&&t.jsxs("footer",{className:Ie.error,children:[t.jsx(b.IconWarningFilled,{size:12}),t.jsx("p",{children:i})]})]})]})},_d="_images_1txea_1",fd="_chain_1txea_5",Mn={images:_d,chain:fd},xn=({assetLogoUrl:e,chainLogoUrl:s})=>t.jsxs("div",{className:Mn.images,children:[t.jsx(W,{src:e,width:36,height:36}),t.jsx(W,{src:s,width:18,height:18,className:Mn.chain})]}),pd="_root_1ipwv_1",xd="_content_1ipwv_10",gd="_details_1ipwv_18",yd="_symbol_1ipwv_23",jd="_chain_1ipwv_31",wd="_chevron_1ipwv_40",et={root:pd,content:xd,details:gd,symbol:yd,chain:jd,chevron:wd},so=({asset:e,chain:s,readOnly:n})=>{const r=t.jsxs("div",{className:et.content,children:[t.jsx(xn,{assetLogoUrl:e.logoUrl,chainLogoUrl:s.logoUrl}),t.jsxs("div",{className:et.details,children:[t.jsx("div",{className:et.symbol,children:e.symbol}),t.jsxs("div",{className:et.chain,children:["on ",s.name]})]})]});return n?t.jsx("div",{className:et.root,children:r}):t.jsxs("div",{className:et.root,children:[r,t.jsx(b.IconChevronDown,{size:16,className:et.chevron})]})},bd="_wrapper_5vodt_1",vd="_balance_5vodt_11",Cd="_button_5vodt_15",Bs={wrapper:bd,balance:vd,button:Cd},no=({onClick:e,children:s})=>t.jsxs("div",{className:Bs.wrapper,children:[t.jsx(b.IconWallet,{size:16}),t.jsx("span",{className:Bs.balance,children:s}),t.jsx("button",{type:"button",className:Bs.button,onClick:()=>e(),children:"MAX"})]});function ys(){const e=p.useRef(null),s=le.useMedia("(max-width: 576px)");return p.useEffect(()=>{var n;s||(n=e.current)==null||n.focus()},[s]),e}const Nd="_input_h8073_1",Id={input:Nd};function Sd(e,s){const n=e.replace(/[^0-9.]/g,""),[r,...o]=n.split(".");return o.length===0?r:`${r}.${o.join("").slice(0,s)}`}function ro(e){const{name:s,control:n,dp:r=6,className:o,...a}=e,i=ys();return t.jsx(se.Controller,{name:s,control:n,render:({field:l})=>t.jsx("input",{...l,className:P(Id.input,o),onChange:c=>l.onChange(Sd(c.target.value,r)),placeholder:"0",inputMode:"decimal",autoComplete:"off",...a,ref:lr.mergeRefs([l.ref,i])})})}const $d="_input_qpv94_1",kd="_placeholder_qpv94_18",Gs={input:$d,placeholder:kd},Ed=({children:e})=>t.jsx("p",{className:P(Gs.input,{[Gs.placeholder]:E(e).isZero()}),children:e}),os=()=>{const{control:e}=se.useFormContext();return t.jsx(ro,{name:"quantity",control:e,className:Gs.input})};os.ReadOnly=Ed;const Ad="_label_jg0i7_1",Td="_wrapper_jg0i7_7",Dd="_input_jg0i7_10",qd="_clear_jg0i7_18",Gt={label:Ad,wrapper:Td,input:Dd,clear:qd},gn=({mode:e="onChange",myAddress:s,...n})=>{const{validate:r=F.validate,chainType:o="initia",onApply:a,ref:i}=n,l=ys(),{getValues:c,setValue:d,formState:u}=se.useFormContext(),m=c("recipient"),[h,_]=p.useState(m),x=Dr(),{data:f,isLoading:y,error:j}=$.useQuery({queryKey:Ot.address(x.restUrl,h).queryKey,queryFn:()=>x.getAddress(h),staleTime:H.MINUTE,enabled:x.validateUsername(h)}),w=f??(r(h)?h:""),A=s&&F.equals(w,s),C=async()=>{try{const v=await navigator.clipboard.readText();_(v.trim())}catch{}};p.useEffect(()=>{e==="onChange"&&h&&d("recipient",f??h,{shouldValidate:!0})},[h,e,d,f]);const S=()=>{y||j||(d("recipient",w,{shouldValidate:!0}),a==null||a())},D=()=>{var v;if(y)return t.jsx(Me,{level:"loading",children:"Resolving username..."});if(j)return t.jsx(Me,{level:"error",children:j.message});if(f)return t.jsx(Me,{level:"success",className:"monospace",children:f});if(e==="onSubmit"&&h&&!w)return t.jsx(Me,{level:"error",children:"Invalid address"});if(e==="onChange")return t.jsx(Me,{level:"error",children:(v=u.errors.recipient)==null?void 0:v.message})};return t.jsxs("div",{children:[t.jsxs("label",{htmlFor:"recipient",className:Gt.label,children:[t.jsx("span",{children:"Recipient"}),t.jsx(L.Small,{type:"button",onClick:C,children:"Paste"})]}),t.jsxs("div",{className:Gt.wrapper,children:[t.jsx("input",{id:"recipient",className:P(Gt.input,"monospace"),value:h,onChange:v=>_(v.target.value.trim()),placeholder:o==="initia"?"Address or username":"Enter address",autoComplete:"off",ref:e==="onSubmit"?lr.mergeRefs([i,l]):i}),!!h&&t.jsx("button",{type:"button",className:Gt.clear,onClick:()=>_(""),"aria-label":"Clear recipient",children:t.jsx(b.IconCloseCircleFilled,{size:16})})]}),D(),A&&t.jsx(Me,{children:"This is my address"}),e==="onSubmit"&&t.jsx(ee,{extra:(!s||!!w&&!A)&&t.jsx(J,{level:"warning",children:"Do not enter an exchange address. Tokens sent to an address that does not support bridge transfer will be irretrievable."}),children:t.jsx(L.White,{type:"button",onClick:S,disabled:y||!!j||!w,children:"Apply"})})]})},Pd="_container_1a4ds_1",Fd="_badge_1a4ds_5",Un={container:Pd,badge:Fd},oo=e=>{const{offset:s=-4,disabled:n,children:r,className:o}=e;return t.jsxs("div",{className:P(Un.container,o),children:[r,!n&&t.jsx("div",{className:Un.badge,style:{right:s,top:s}})]})},Bd="_tooltip_6zakp_1",Rd="_arrow_6zakp_43",zn={tooltip:Bd,arrow:Rd},Ut=({label:e,children:s,small:n,...r})=>t.jsxs(T.Tooltip.Root,{...r,children:[t.jsx(T.Tooltip.Trigger,{asChild:!0,children:s}),t.jsx(T.Tooltip.Portal,{container:Pt(),children:t.jsxs(T.Tooltip.Content,{className:P(zn.tooltip,{small:n}),collisionBoundary:Pt(),collisionPadding:8,sideOffset:4,children:[e,t.jsx(T.Tooltip.Arrow,{className:zn.arrow})]})})]}),Od="_stack_a3b9q_1",Md="_title_a3b9q_8",Ud="_grid_a3b9q_15",zd="_item_a3b9q_21",Kd="_button_a3b9q_25",Hd="_active_a3b9q_43",ut={stack:Od,title:Md,grid:Ud,item:zd,button:Kd,active:Hd},nt=({label:e,chains:s,value:n,onSelect:r,getShowIndicator:o})=>t.jsxs("div",{children:[e&&t.jsx("h2",{className:ut.title,children:e}),t.jsx("div",{className:ut.grid,children:s.map(({chainId:a,name:i,logoUrl:l})=>t.jsx(oo,{offset:-2,disabled:!(o!=null&&o(a)),className:ut.item,children:t.jsx(Ut,{label:i,disableHoverableContent:!0,children:t.jsx("button",{type:"button",className:P(ut.button,{[ut.active]:a===n}),onClick:()=>r(a),children:t.jsx(W,{src:l,width:28,height:28,circle:!0})})})},a))})]}),Ld=({children:e})=>t.jsx("div",{className:ut.stack,children:e});nt.Stack=Ld;function ao(e,s,n){return n.filter(r=>{const o=e.map(a=>r[a]).map(a=>String(a??"").toLowerCase());return I.any(I.includes(s.toLowerCase()),o)})}const Wd="_root_qd12v_1",Qd="_label_qd12v_8",Vd="_input_qd12v_14",Gd="_clear_qd12v_20",Yt={root:Wd,label:Qd,input:Vd,clear:Gd},io=({value:e,onChange:s,placeholder:n="Search",className:r})=>t.jsxs("div",{className:P(Yt.root,r),children:[t.jsx("label",{htmlFor:"search",className:Yt.label,children:t.jsx(b.IconSearch,{size:16})}),t.jsx("input",{id:"search",type:"text",className:Yt.input,value:e,onChange:o=>s(o.target.value),placeholder:n,ref:ys()}),e&&t.jsx("button",{className:Yt.clear,onClick:()=>s(""),children:t.jsx(b.IconCloseCircleFilled,{size:20})})]}),Yd="_container_17tpb_1",Jd="_list_17tpb_6",Zd="_item_17tpb_12",Xd="_logo_17tpb_31",eu="_info_17tpb_35",tu="_symbol_17tpb_40",su="_name_17tpb_44",nu="_balance_17tpb_50",ru="_value_17tpb_58",Se={container:Yd,list:Jd,item:Zd,logo:Xd,info:eu,symbol:tu,name:su,balance:nu,value:ru},co=e=>{const{assets:s,onSelect:n,renderAsset:r=(l,c)=>c(l)}=e,[o,a]=p.useState(""),i=ao(["symbol"],o,s);return t.jsxs("div",{className:Se.container,children:[t.jsx(io,{value:o,onChange:a,placeholder:"Search by symbol"}),i.length===0?t.jsx(de,{children:"No assets"}):t.jsx("div",{className:Se.list,children:i.map(l=>t.jsx("button",{type:"button",className:Se.item,onClick:()=>n(l.denom),children:r(l,({logoUrl:c,symbol:d,name:u,balance:m,decimals:h,value:_=0})=>t.jsxs(t.Fragment,{children:[t.jsx(W,{src:c,width:32,height:32,className:Se.logo}),t.jsxs("div",{className:Se.info,children:[t.jsx("div",{className:Se.symbol,children:d}),t.jsx("div",{className:Se.name,children:u})]}),t.jsxs("div",{className:Se.balance,children:[m&&t.jsx("div",{children:ne(m,{decimals:h})}),_>0&&t.jsxs("div",{className:Se.value,children:["$",rt(_)]})]})]}))},l.denom))})]})},ou=({chain:e,onSelect:s})=>{const n=qr(e);return n.length===0?t.jsx(de,{children:"No assets"}):t.jsx(co,{assets:n,onSelect:s,renderAsset:(r,o)=>t.jsx(hn,{asset:r,chain:e,children:a=>o(a)})})},au=({afterSelect:e})=>{const{watch:s,setValue:n}=se.useFormContext(),{chainId:r}=s(),[o,a]=p.useState(r),i=Ce(o),{addedChains:l}=pt(),c=d=>{n("chainId",o),n("denom",d),e()};return t.jsxs(t.Fragment,{children:[l.length>1&&t.jsx(nt.Stack,{children:t.jsx(nt,{chains:l,value:o,onSelect:a})}),t.jsx(oe,{children:t.jsx(ou,{chain:i,onSelect:c})},o)]})},iu="_fields_brpej_1",cu="_divider_brpej_11",Kn={fields:iu,divider:cu},lu=()=>{var g,N,R,K;const{address:e,initiaAddress:s,requestTxSync:n}=Te(),{register:r,watch:o,setValue:a,handleSubmit:i,formState:l}=se.useFormContext(),{chainId:c,denom:d,quantity:u,memo:m}=o(),{addedChains:h}=pt(),_=Ce(c),x=ln(_),f=cn(d,_),{data:y}=wr(_.chainId),{decimals:j}=f,w=((g=x.find(q=>q.denom===d))==null?void 0:g.amount)??"0",A=(N=y==null?void 0:y.find(({id:q})=>q===d))==null?void 0:N.price,C=E(u).gt(0)&&E(u).isEqualTo(Tt(w,j)),S=_.fees.fee_tokens.some(q=>q.denom===d),{mutate:D,isPending:v}=$.useMutation({mutationFn:({chainId:q,denom:M,quantity:V,recipient:ge,memo:G})=>{const me=ds(V,j),Ne=[{typeUrl:"/cosmos.bank.v1beta1.MsgSend",value:Mo.MsgSend.fromPartial({fromAddress:s,toAddress:F.toBech32(ge),amount:[{denom:M,amount:me}]})}];return n({messages:Ne,memo:G,chainId:q,internal:"/"})}});return t.jsx(qe,{title:"Send",children:t.jsxs("form",{onSubmit:i(q=>D(q)),children:[t.jsxs("div",{className:Kn.fields,children:[t.jsx(Vs,{selectButton:t.jsx(at,{title:h.length>1?"Select chain and asset":"Select asset",content:q=>t.jsx(au,{afterSelect:q}),children:t.jsx(so,{asset:f,chain:_})}),quantityInput:t.jsx(os,{}),balanceButton:t.jsx(no,{onClick:()=>a("quantity",Tt(w,j),{shouldValidate:!0}),children:ne(w,{decimals:j})}),value:u?A?rt(E(u).times(A)):"-":"0",errorMessage:(R=l.errors.quantity)==null?void 0:R.message}),t.jsx("div",{className:Kn.divider}),t.jsx(gn,{myAddress:e}),t.jsxs("div",{children:[t.jsx("label",{htmlFor:"memo",children:"Memo (optional)"}),t.jsx("input",{...r("memo"),id:"memo",autoComplete:"off"}),t.jsx(Me,{level:"error",children:(K=l.errors.memo)==null?void 0:K.message})]}),t.jsxs(J.Stack,{children:[C&&S&&t.jsx(J,{level:"warning",children:"Make sure to leave enough for transaction fee"}),!m&&t.jsx(J,{level:"warning",children:"Check if the above transaction requires a memo"})]})]}),t.jsx(ee,{children:t.jsx(L.White,{type:"submit",loading:v,disabled:!l.isValid,children:"Confirm"})})]})})},du=Q.z.object({chainId:Q.z.string().nonempty(),denom:Q.z.string().nonempty(),quantity:Q.z.string().nonempty("Amount is required"),recipient:to,memo:Q.z.string().optional().refine(e=>!e||new Blob([e]).size<=256,"Memo is too long")}),uu=()=>{const e=ze(),s=hs(),n=Dt(s),[r]=n,{chain:o=s,denom:a=r.denom}=e,i=it(),l=X(),c=$.useQueryClient(),d=se.useForm({mode:"onChange",defaultValues:{chainId:o.chainId,denom:a,quantity:"",recipient:"",memo:""},resolver:nn.zodResolver(du.superRefine(({chainId:u,denom:m,quantity:h},_)=>{var w;const x=i(u),{decimals:f}=c.getQueryData(ot.item(u,m).queryKey)??{decimals:0},{balances:y}=c.getQueryData(Ot.balances(x.restUrl,l).queryKey)??{balances:[]},j=(w=y.find(A=>A.denom===m))==null?void 0:w.amount;eo({quantity:h,balance:j,decimals:f},_)}))});return t.jsx(se.FormProvider,{...d,children:t.jsx(lu,{})})},mu="_grid_4j669_1",hu="_item_4j669_7",_u="_name_4j669_15",Rs={grid:mu,item:hu,name:_u},fu=()=>{const e=ue(),{collection:s,chain:n}=ze(),{data:r,hasNextPage:o,isFetching:a,fetchNextPage:i}=Yr({chain:n,collection:s}),{list:l}=_n("tokens",r);return t.jsxs(qe,{title:s.name,children:[t.jsx("div",{className:Rs.grid,children:l.map(c=>t.jsx(Jr,{nftResponse:c,children:d=>t.jsxs("div",{className:Rs.item,children:[t.jsx(xs,{chain:n,collection:s,nft:d,onClick:()=>e("/nft",{collection:s,nft:d,chain:n})}),t.jsx("div",{className:Rs.name,children:d.name})]})},c.object_addr))}),o&&t.jsx(gs,{onClick:()=>i(),disabled:a})]})},pu="_header_196nx_1",xu="_name_196nx_6",gu="_attributes_196nx_12",yu="_title_196nx_15",ju="_list_196nx_21",wu="_item_196nx_25",bu="_type_196nx_34",vu="_value_196nx_40",Re={header:pu,name:xu,attributes:gu,title:yu,list:ju,item:wu,type:bu,value:vu},Cu=()=>{const e=ue(),s=ze(),{collection:n,nft:r,chain:o}=s,{image:a,name:i,attributes:l}=r;return t.jsxs(qe,{title:n.name,children:[t.jsxs("header",{className:Re.header,children:[a&&t.jsx(xs,{chain:o,collection:n,nft:r}),t.jsx("h2",{className:Re.name,children:i})]}),t.jsx(ee,{children:t.jsx(L.White,{onClick:()=>e("/nft/send",s),children:"Send"})}),l&&t.jsxs("div",{className:Re.attributes,children:[t.jsxs("header",{className:Re.title,children:["Traits (",l.length,")"]}),t.jsx("div",{className:Re.list,children:l.map(({trait_type:c,value:d})=>t.jsxs("div",{className:Re.item,children:[t.jsx("div",{className:Re.type,children:c}),t.jsx("div",{className:Re.value,children:d})]},c))})]})]})};async function Nu({object_addr:e},{restUrl:s}){const n=await Iu(e,s);return n.startsWith("ibc/")?Ar("0x1",n)===e.replace("0x","").padStart(64,"0")?{class_id:n,class_trace:await Ys(n,s)}:{class_id:`move/${e.replace("0x","").padStart(64,"0")}`,class_trace:await Ys(n,s)}:{class_id:`move/${e.replace("0x","").padStart(64,"0")}`,class_trace:null}}async function Iu(e,s){const{data:n}=await z.create({prefixUrl:s}).post("initia/move/v1/view/json",{json:{address:"0x1",module_name:"collection",function_name:"name",type_args:["0x1::collection::Collection"],args:[JSON.stringify(e)]}}).json();return JSON.parse(n)}async function Su({object_addr:e},{restUrl:s}){const n=await $u(e,s);if(!n.startsWith("ibc/"))return{class_id:`evm/${F.toHex(e)}`,class_trace:null};const r=await Ys(n,s);return r?{class_id:n,class_trace:r}:{class_id:`evm/${F.toHex(e)}`,class_trace:null}}async function $u(e,s){const n=new be.Interface([{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"}]),{response:r}=await z.create({prefixUrl:s}).post("minievm/evm/v1/call",{json:{sender:F.toBech32("0x1"),contract_addr:F.toPrefixedHex(e),input:n.encodeFunctionData("name")}}).json();return n.decodeFunctionResult("name",r)[0]}async function ku({creator_addr:e,object_addr:s},n,r){var x,f;const o=await Eu(s,n.restUrl),a=(f=(x=n.metadata)==null?void 0:x.ibc_channels)==null?void 0:f.find(({chain_id:y,version:j})=>y===r.chain_id&&j.includes("ics721-1"));if(!a)throw new Error("Channel not found");const i=a.port_id,l=i.split(".")[1],c=B.toBase64(tt.toBytes(JSON.stringify({class_id:{contract:s}}))),d=`cosmwasm/wasm/v1/contract/${l}/smart/${c}`,{data:u}=await z.create({prefixUrl:n.restUrl}).get(d).json(),m=u??s;if(u&&e!==i.replace("wasm.","")){const[y,j]=Hn(u);return{class_id:s,class_trace:{path:y,base_class_id:j}}}const[h,_]=Hn(o);return{class_id:m,class_trace:{path:h,base_class_id:_}}}async function Eu(e,s){const n=B.toBase64(tt.utf8ToBytes(JSON.stringify({contract_info:{}}))),{name:r}=await z.create({prefixUrl:s}).get(`cosmwasm/wasm/v1/contract/${e}/smart/${n}`).json();return r}const Au={minimove:Nu,minievm:Su,miniwasm:ku};async function Tu({collection:e,nft:s,srcChain:n,intermediaryChain:r}){var i,l,c;const o=(i=n.metadata)!=null&&i.is_l1?"minimove":(c=(l=n.metadata)==null?void 0:l.minitia)==null?void 0:c.type;if(!(o==="minimove"||o==="minievm"||o==="miniwasm"))throw new Error(`Unsupported minitia type: ${o}`);const a=await Au[o](e,n,r);return Object.assign(a,o==="minievm"&&{token_ids:await Du([s.token_id],a.class_id,n.restUrl)})}async function Ys(e,s){const n=e.replace("ibc/",""),{class_trace:r}=await z.create({prefixUrl:s}).get(`ibc/apps/nft_transfer/v1/class_traces/${n}`).json();return r}async function Du(e,s,n){const{token_infos:r}=await z.create({prefixUrl:n}).get(`minievm/evm/v1/erc721/origin_token_infos/${s}`,{searchParams:{token_ids:e.join(",")}}).json();return r.map(({token_origin_id:o})=>o)}function Hn(e){const s=/^(.*channel-\d+)\/(.*)$/,n=e.match(s);if(!n)throw new Error("Pattern `channel-{number}/` not found.");const[,r,o]=n;return[r,o]}const qu="_header_5w36t_1",Pu="_name_5w36t_8",Fu="_collection_5w36t_15",Bu="_nft_5w36t_20",Ru="_fields_5w36t_24",Ou="_chain_5w36t_29",lt={header:qu,name:Pu,collection:Fu,nft:Bu,fields:Ru,chain:Ou},Mu=Ue.createQueryKeys("interwovenkit:send-nft",{simulation:e=>[e]}),Uu=()=>{const{chain:e,collection:s,nft:n}=ze(),{routerApiUrl:r}=re(),o=_s(),a=je(),{address:i,initiaAddress:l,requestTxSync:c}=Te(),{watch:d,setValue:u,handleSubmit:m,formState:h}=se.useFormContext(),_=d(),{recipient:x,dstChainId:f}=_,y=Ce(f),j=$.useQuery({queryKey:Mu.simulation({collection:s,nft:n,sender:l,recipient:x,srcChain:e,dstChainId:f,layer1:a,routerApiUrl:r}).queryKey,queryFn:async()=>{const v=Object.assign({from_address:l,from_chain_id:e.chainId,to_address:F.toBech32(x),to_chain_id:f,collection_address:s.object_addr,token_ids:[n.token_id],object_addresses:[n.object_addr]},e.chainId!==f&&await Tu({collection:s,nft:n,srcChain:e,intermediaryChain:a})),{msgs:g}=await z.create({prefixUrl:r}).post("nft",{json:v}).json();return g.map(N=>o.fromAmino(N))},enabled:!!x}),{data:w,isLoading:A,error:C}=j,{mutate:S,isPending:D}=$.useMutation({mutationFn:async()=>{if(!w)throw new Error("Route not found");await c({messages:w,chainId:e.chainId,internal:"/nfts"})}});return t.jsxs("form",{onSubmit:m(()=>S()),children:[t.jsxs("header",{className:lt.header,children:[n.image&&t.jsx(xs,{chain:e,collection:s,nft:n,size:80}),t.jsxs("div",{className:lt.name,children:[t.jsx("div",{className:lt.collection,children:s.name}),t.jsx("div",{className:lt.nft,children:n.name})]})]}),t.jsxs("div",{className:lt.fields,children:[t.jsx(T.VisuallyHidden.Root,{children:t.jsxs("div",{children:[t.jsx("div",{className:"label",children:"Destination rollup"}),t.jsxs(at,{title:"Destination rollup",content:v=>t.jsx(Xr,{onSelect:g=>{u("dstChainId",g),v()}}),className:P("input",lt.chain),children:[t.jsx(W,{src:y.logoUrl,width:20,height:20}),t.jsx("span",{children:y.name})]})]})}),t.jsx(gn,{myAddress:i,ref:ys()})]}),t.jsx(ee,{children:t.jsx(L.White,{loading:A||D,disabled:!h.isValid,children:C?"Route not found":"Confirm"})})]})},zu=Q.z.object({dstChainId:Q.z.string().nonempty(),recipient:to}),Ku=()=>{const{chain:e}=ze(),s=se.useForm({defaultValues:{dstChainId:e.chainId},resolver:nn.zodResolver(zu)});return t.jsx(qe,{title:"Send NFT",children:t.jsx(se.FormProvider,{...s,children:t.jsx(Uu,{})})})},Hu="_item_ny5a8_1",Lu="_header_ny5a8_11",Wu="_name_ny5a8_19",Qu="_link_ny5a8_24",Vu="_button_ny5a8_40",dt={item:Hu,header:Lu,name:Wu,link:Qu,button:Vu},Os=e=>{var h;const{chainId:s,name:n,logoUrl:r,website:o,metadata:a}=e,{defaultChainId:i}=re(),{addedChains:l,addChain:c,removeChain:d}=pt(),u=l.find(_=>_.chainId===s),m=()=>s===i?null:u?t.jsx("button",{className:dt.button,onClick:()=>d(s),children:t.jsx(b.IconMinus,{size:14})}):t.jsx("button",{className:dt.button,onClick:()=>c(s),children:t.jsx(b.IconPlus,{size:14})});return t.jsxs("div",{className:dt.item,children:[t.jsx(W,{src:r,width:32,height:32,title:(h=a==null?void 0:a.minitia)==null?void 0:h.type}),t.jsxs("header",{className:dt.header,children:[t.jsx("h3",{className:dt.name,children:n}),o&&t.jsx("a",{className:dt.link,href:cr(o),target:"_blank",children:t.jsx(b.IconExternalLink,{size:12})})]}),m()]})},Gu="_content_14twd_1",Yu="_search_14twd_5",Ju="_title_14twd_9",Zu="_count_14twd_18",Xu="_list_14twd_23",Oe={content:Gu,search:Yu,title:Ju,count:Zu,list:Xu},em=()=>{const[e,s]=p.useState(""),{chains:n,addedChains:r,notAddedChains:o}=pt(),a=ao(["chainId","name"],e,n);return t.jsx(qe,{title:"Manage rollup list",children:t.jsxs("div",{className:Oe.content,children:[t.jsx(io,{value:e,onChange:s,className:Oe.search}),e?a.length===0?t.jsx(de,{children:"No chains"}):a.map(i=>p.createElement(Os,{...i,key:i.chainId})):t.jsxs(t.Fragment,{children:[t.jsxs("div",{className:Oe.list,children:[t.jsxs("h2",{className:Oe.title,children:[t.jsx("span",{children:"Shown"}),t.jsxs("span",{className:Oe.count,children:["(",r.length,")"]})]}),r.map(i=>p.createElement(Os,{...i,key:i.chainId}))]}),t.jsxs("div",{className:Oe.list,children:[t.jsxs("h2",{className:Oe.title,children:[t.jsx("span",{children:"Hidden"}),t.jsxs("span",{className:Oe.count,children:["(",o.length,")"]})]}),o.map(i=>p.createElement(Os,{...i,key:i.chainId}))]})]})]})})};function tm(){return je().network_type==="testnet"}const lo=Q.z.object({srcChainId:Q.z.string().nonempty(),srcDenom:Q.z.string().nonempty(),dstChainId:Q.z.string().nonempty(),dstDenom:Q.z.string().nonempty(),quantity:Q.z.string().nonempty("Amount is required"),sender:Q.z.string().nonempty(),cosmosWalletName:Q.z.string().optional(),recipient:Q.z.string().nonempty("Recipient address is required"),slippagePercent:Q.z.string().nonempty()});function Ve(){return se.useFormContext()}function sm(){const e=ze(),s=tm(),n={quantity:"",slippagePercent:"0.5",sender:"",cosmosWalletName:"",recipient:""},r={...n,srcChainId:"initiation-2",srcDenom:"uusdc",dstChainId:"initiation-2",dstDenom:"uinit"},o={...n,srcChainId:"interwoven-1",srcDenom:"ibc/6490A7EAB61059BFC1CDDEB05917DD70BDF3A611654162A1A47DB930D40D8AF4",dstChainId:"interwoven-1",dstDenom:"uinit"},a=I.pickBy(i=>i!==null,{srcChainId:localStorage.getItem(U.BRIDGE_SRC_CHAIN_ID),srcDenom:localStorage.getItem(U.BRIDGE_SRC_DENOM),dstChainId:localStorage.getItem(U.BRIDGE_DST_CHAIN_ID),dstDenom:localStorage.getItem(U.BRIDGE_DST_DENOM),quantity:localStorage.getItem(U.BRIDGE_QUANTITY),slippagePercent:localStorage.getItem(U.BRIDGE_SLIPPAGE_PERCENT)});return{...s?r:o,...a,...e}}function uo(){const{initiaAddress:e,hexAddress:s}=Te(),n=We(),r=yt();return o=>{const a=n(o);switch(r(a)){case"initia":return e;case"evm":return s;default:return""}}}function Js(){const e=We(),s=yt();return(n,r)=>{const o=e(r);switch(s(o)){case"initia":return F.validate(n);case"evm":return be.isAddress(n);case"cosmos":try{return B.fromBech32(n).prefix===o.bech32_prefix}catch{return!1}default:return!1}}}function nm(){const e=We(),s=yt();return({initialAddress:n,initialChainId:r,chainId:o,fallbackAddress:a})=>{const i=e(r),l=s(i),c=e(o),d=s(c);if(l==="evm"&&d==="initia")return F.toBech32(n);if(l==="initia"&&d==="evm")return F.toPrefixedHex(n);if(l===d)return n;if(a){if(d==="initia")return F.toBech32(a);if(d==="evm")return F.toPrefixedHex(a)}return""}}const rm=[["d",24*60*60],["h",60*60],["m",60],["s",1]];function Zs(e){if(!e)return;const{formattedParts:s}=rm.reduce(({remainingSeconds:n,formattedParts:r},[o,a])=>{const i=Math.floor(n/a);return{remainingSeconds:n-i*a,formattedParts:i>0?[...r,`${i}${o}`]:r}},{remainingSeconds:e,formattedParts:[]});return s.join(" ")}function mo(e){return e==null?void 0:e.map(s=>{const{amount:n,origin_asset:r}=s;return`${ne(n,{decimals:r.decimals??0})} ${r.symbol}`}).join(", ")}function Ln(e,s){const{watch:n}=Ve(),r=n(),o=Le(),a=We(),i=yt(),l={...r,quantity:e},c=$.useQueryClient();return $.useQuery({queryKey:xe.route(l,s==null?void 0:s.isOpWithdraw).queryKey,queryFn:()=>{const{srcChainId:d,srcDenom:u,quantity:m,dstChainId:h,dstDenom:_}=l,{symbol:x,decimals:f}=c.getQueryData(xe.asset(d,u).queryKey)??{decimals:0},y={amount_in:ds(m,f),source_asset_chain_id:d,source_asset_denom:u,dest_asset_chain_id:h,dest_asset_denom:_,go_fast:x==="USDC"&&i(a(d))==="evm",is_op_withdraw:s==null?void 0:s.isOpWithdraw};return o.post("v2/fungible/route",{json:y}).json()},enabled:!!Number(l.quantity)&&!(s!=null&&s.disabled),staleTime:H.MINUTE})}function om(e){return $.useQuery({queryKey:xe.routeErrorInfo(e||new Error).queryKey,queryFn:async()=>{if(!e||!(e instanceof z.HTTPError))return null;const{response:s}=e;return(s.headers.get("content-type")??"").includes("application/json")?(await s.json()).info??null:null}})}function am(){var m,h,_;const{watch:e}=Ve(),{srcChainId:s,srcDenom:n,dstChainId:r,dstDenom:o}=e(),a=ve(s),i=qt(a),l=Ae(n,s),c=Ae(o,r),d=je(),u=He();return i==="initia"&&r===d.chainId&&l.symbol===c.symbol&&((_=(h=(m=u.find(x=>x.chainId===s))==null?void 0:m.metadata)==null?void 0:h.op_denoms)==null?void 0:_.includes(c.denom))}var Xs=(e=>(e.FEE_BEHAVIOR_DEDUCTED="FEE_BEHAVIOR_DEDUCTED",e.FEE_BEHAVIOR_ADDITIONAL="FEE_BEHAVIOR_ADDITIONAL",e))(Xs||{});function yn(e,s){const n=Le();return $.useQuery({queryKey:xe.balances(s,e).queryKey,queryFn:()=>n.post("v2/info/balances",{json:{chains:{[s]:{address:e,denoms:[]}}}}).json(),select:({chains:r})=>e?r?r[s].denoms??{}:{}:{},enabled:!!e,staleTime:H.SECOND})}function im(e,s,n){const{data:r={}}=yn(e,s);return I.path([n],r)}const cm=({address:e,chain:s,onSelect:n})=>{const r=_t(s.chain_id),{data:o={}}=yn(e,s.chain_id);return t.jsx(co,{assets:I.sortWith([I.descend(a=>a.symbol==="INIT"),I.descend(a=>a.value),({balance:a="0"},{balance:i="0"})=>E(i).comparedTo(a)??0,I.ascend(a=>a.symbol.toLowerCase())],r.filter(a=>!a.hidden).map(a=>{const{denom:i,symbol:l=te(i),logo_uri:c}=a,d=o[i]??{};return{...a,symbol:l,decimals:a.decimals??0,logoUrl:c??"",name:a.name??"",balance:d.amount,value:Number(d.value_usd??0)}})),onSelect:n})},lm=({type:e,afterSelect:s})=>{const n=e==="src"?"srcChainId":"dstChainId",r=e==="src"?"srcDenom":"dstDenom",o=e==="src"?"sender":"recipient",a=gt(),i=dn(),{watch:l,setValue:c,trigger:d}=Ve(),u=l("quantity"),m=l(o),h=l(n),[_,x]=p.useState(h),f=ve(_),y=nm(),j=Fr(),[w,A]=I.partition(S=>j(S.chain_id),i.filter(S=>!S.hidden)),C=S=>{c(n,_),c(r,S),Number(u)&&d(),s()};return t.jsxs(t.Fragment,{children:[t.jsxs(nt.Stack,{children:[t.jsx(nt,{label:"Interwoven Economy",chains:w.map(({chain_id:S,chain_name:D,pretty_name:v,logo_uri:g})=>({chainId:S,name:v||D,logoUrl:g??""})),value:_,onSelect:x}),t.jsx(nt,{label:"Chains",chains:A.map(({chain_id:S,chain_name:D,pretty_name:v,logo_uri:g})=>({chainId:S,name:v||D,logoUrl:g??""})),value:_,onSelect:x})]}),t.jsx(oe,{children:t.jsx(cm,{address:y({initialAddress:m,initialChainId:h,chainId:_,fallbackAddress:e==="src"?a:void 0}),chain:f,onSelect:C})},_)]})},Wn=({type:e})=>{const s=e==="src"?"srcChainId":"dstChainId",n=e==="src"?"srcDenom":"dstDenom",r=e==="src"?"Select source chain and asset":"Select destination chain and asset",{watch:o}=Ve(),a=o(s),i=o(n),l=ve(a),c=Ae(i,a);return t.jsx(at,{title:r,content:d=>t.jsx(lm,{type:e,afterSelect:d}),children:t.jsx(so,{asset:{denom:c.denom,decimals:c.decimals??0,symbol:c.symbol??te(c.denom),logoUrl:c.logo_uri??""},chain:{chainId:l.chain_id,name:l.pretty_name||l.chain_name,logoUrl:l.logo_uri??""}})})};function js(){const e=[{name:"Keplr",image:"https://assets.initia.xyz/images/wallets/Keplr.webp",getProvider:()=>window.keplr,fallbackUrl:"https://keplr.app/get"},{name:"Leap",image:"https://assets.initia.xyz/images/wallets/Leap.webp",getProvider:()=>window.leap,fallbackUrl:"https://leapwallet.io/download"}];return{list:e,find:n=>e.find(r=>r.name===n)}}const dm="_account_iwrlj_8",um="_clear_iwrlj_27",mm="_white_iwrlj_38",kt={account:dm,clear:um,white:mm},Qn=({type:e})=>{const{watch:s,setValue:n}=Ve(),{srcChainId:r,dstChainId:o,cosmosWalletName:a}=s(),l=s(e==="src"?"sender":"recipient"),c=qt(ve(o)),{list:d,find:u}=js(),m=u(a),h=uo(),_=Js(),x=h(o),f=F.equals(l,x),y=()=>t.jsx(at,{title:"Connect wallet",content:A=>t.jsx(Zr,{onSelect:async C=>{const S=C.getProvider();if(!S)return window.open(C.fallbackUrl,"_blank");const D=S.getOfflineSigner(r),[{address:v}]=await D.getAccounts();n("sender",v),n("cosmosWalletName",C.name),A()},list:d,getImage:C=>C.image,getName:C=>C.name,getKey:C=>C.name}),className:P(kt.account,{[kt.white]:!l}),children:l?t.jsxs(t.Fragment,{children:[m&&t.jsx(W,{src:m.image,width:18,height:18}),t.jsx("span",{className:"monospace",children:te(l)})]}):t.jsxs(t.Fragment,{children:[t.jsx("span",{children:"Connect wallet"}),t.jsx(b.IconChevronRight,{size:14})]})}),j=A=>t.jsx(at,{title:"Recipient",content:C=>t.jsx(De,{children:t.jsx(gn,{mode:"onSubmit",myAddress:x,chainType:c,validate:S=>_(S,o),onApply:C})}),className:kt.account,children:A}),w=()=>{switch(c){case"initia":case"evm":return f?j(t.jsx(b.IconWallet,{size:14})):t.jsxs("div",{className:kt.account,children:[t.jsx("span",{className:"monospace",children:te(l)}),t.jsx("button",{type:"button",className:kt.clear,onClick:()=>n("recipient",x,{shouldValidate:!0}),"aria-label":"Reset to my address",children:t.jsx(b.IconCloseCircleFilled,{size:14})})]});case"cosmos":return j(t.jsxs(t.Fragment,{children:[l?t.jsx("span",{className:"monospace",children:te(l)}):t.jsx("span",{children:"Recipient"}),t.jsx(b.IconEdit,{size:14})]}))}};switch(e){case"src":return y();case"dst":return w()}},hm="_description_l5bcv_1",_m="_presets_l5bcv_8",fm="_preset_l5bcv_8",pm="_active_l5bcv_29",xm="_custom_l5bcv_40",gm="_wrapper_l5bcv_46",ym="_percent_l5bcv_49",we={description:hm,presets:_m,preset:fm,active:pm,custom:xm,wrapper:gm,percent:ym},Vn=["0.1","0.5","1.0"],jm=({afterConfirm:e})=>{const s=Ve(),n=s.getValues("slippagePercent"),[r,o]=p.useState(null),{control:a,watch:i,getValues:l,setValue:c}=se.useForm({defaultValues:{value:n}}),d=i("value");p.useEffect(()=>{const f=Vn.findIndex(y=>y===n);o(f>=0?f:null)},[n]);const u=(f,y)=>{c("value",f),o(y)},m=()=>{o(null)},h=p.useMemo(()=>Number(d)>100?{type:"error",text:"Slippage must be less than 100%"}:Number(d)>5?{type:"warning",text:"Your transaction may be frontrun"}:Number(d)<.5?{type:"warning",text:"Your transaction may fail"}:null,[d]),_=(h==null?void 0:h.type)==="error",x=({value:f})=>{s.setValue("slippagePercent",f),e()};return t.jsxs(De,{children:[t.jsx("p",{className:we.description,children:"Slippage is how much price movement you can tolerate between the time you send out a transaction and the time it's executed."}),t.jsxs("div",{className:we.presets,children:[Vn.map((f,y)=>t.jsxs("button",{type:"button",className:P(we.preset,{[we.active]:r===y}),onClick:()=>u(f,y),children:[f,"%"]},f)),r!==null?t.jsx("button",{type:"button",className:P(we.preset,we.custom),onClick:()=>o(null),children:"Custom"}):t.jsxs("div",{className:we.wrapper,children:[t.jsx(ro,{name:"value",control:a,dp:2,onFocus:m,placeholder:"",className:P(we.preset,we.active)}),t.jsx("span",{className:we.percent,children:"%"})]})]}),h&&t.jsx(J,{level:h.type,children:h.text}),t.jsx(ee,{children:t.jsx(L.White,{type:"button",onClick:()=>x(l()),disabled:_,children:"Confirm"})})]})},wm="_stack_hvmmo_1",bm="_button_hvmmo_6",vm="_checked_hvmmo_14",Cm="_checkmark_hvmmo_20",Nm="_inner_hvmmo_30",Im="_info_hvmmo_42",Sm="_duration_hvmmo_51",$m="_amount_hvmmo_61",km="_symbol_hvmmo_71",$e={stack:wm,button:bm,checked:vm,checkmark:Cm,inner:Nm,info:Im,duration:Sm,amount:$m,symbol:km},Em=({children:e})=>t.jsx("div",{className:$e.stack,children:e}),es=({label:e,query:s,value:n,onSelect:r,checked:o})=>{const{data:a,isLoading:i}=s,{watch:l}=Ve(),{dstChainId:c,dstDenom:d}=l(),u=Ae(d,c);return t.jsxs("button",{type:"button",className:P($e.button,{[$e.checked]:o}),onClick:()=>r(n),children:[t.jsx("div",{className:$e.checkmark,children:o&&t.jsx("span",{className:$e.inner})}),t.jsxs("div",{className:$e.info,children:[t.jsx("div",{children:e}),t.jsxs("div",{className:$e.duration,children:[t.jsx(b.IconClockFilled,{size:12}),a?Zs(a.estimated_route_duration_seconds):"Not available"]})]}),t.jsx("div",{className:$e.amount,children:i?t.jsx(Qe,{size:14}):t.jsxs(t.Fragment,{children:[t.jsx("span",{children:ne(a==null?void 0:a.amount_out,{decimals:u.decimals})}),t.jsx("span",{className:$e.symbol,children:u.symbol})]})})]})};es.Stack=Em;const Am="_form_lelld_1",Tm="_arrow_lelld_5",Dm="_divider_lelld_13",qm="_flip_lelld_21",Pm="_meta_lelld_37",Fm="_row_lelld_50",Bm="_title_lelld_56",Rm="_description_lelld_60",Om="_icon_lelld_67",Mm="_edit_lelld_72",Um="_warning_lelld_93",Y={form:Am,arrow:Tm,divider:Dm,flip:qm,meta:Pm,row:Fm,title:Bm,description:Rm,icon:Om,edit:Mm,warning:Um},zm=()=>{var vn,Cn,Nn;const e=ue(),[s,n]=le.useLocalStorage(U.BRIDGE_ROUTE_TYPE,"default",{raw:!0}),{watch:r,setValue:o,handleSubmit:a,trigger:i,formState:l}=Ve(),c=r(),{srcChainId:d,srcDenom:u,dstChainId:m,dstDenom:h,quantity:_,sender:x,slippagePercent:f}=c,y=it(),j=ve(d),w=qt(j),A=ve(m),C=qt(A),S=Ae(u,d),D=Ae(h,m),{data:v}=yn(x,d),g=im(x,d,u);p.useEffect(()=>{Number(_)&&i()},[g,_,i]);const[N,R]=p.useState(_);le.useDebounce(()=>R(_),300,[_]);const K=w!=="initia"&&C!=="initia",q=am(),M=Ln(N,{disabled:K}),V=Ln(N,{isOpWithdraw:!0,disabled:!q}),ge=q&&s==="op"?V:M,{data:G,isLoading:me,isFetching:Ne,isFetched:Pe,error:bt}=ge,{data:ae}=om(bt),[ie,vt]=p.useState(G);p.useEffect(()=>{G&&vt({...G,amount_out:"0",usd_amount_in:"0",usd_amount_out:"0"})},[G]);const k=Pe?G:N?ie:void 0,vo=N&&(me||Ne),Co=()=>{o("srcChainId",m),o("srcDenom",h),o("dstChainId",d),o("dstDenom",u),Number(_)&&i()},{openModal:No,closeModal:jn}=ms(),Io=a(O=>{if(k!=null&&k.warning){const{type:he="",message:Ns}=k.warning??{};No({content:t.jsx(Qr,{type:"warning",icon:t.jsx(b.IconWarningFilled,{size:40}),title:ls.sentenceCase(he),primaryButton:{label:"Cancel",onClick:jn},secondaryButton:{label:"Proceed anyway",onClick:()=>{e("/bridge/preview",{route:k,values:O}),jn()}},children:t.jsx("p",{className:Y.warning,children:Ns})})});return}e("/bridge/preview",{route:k,values:O})}),So=p.useMemo(()=>{var O;return((O=k==null?void 0:k.estimated_fees)==null?void 0:O.filter(({fee_behavior:he})=>he===Xs.FEE_BEHAVIOR_DEDUCTED))??[]},[k]),vs=p.useMemo(()=>{var O;return((O=k==null?void 0:k.estimated_fees)==null?void 0:O.filter(({fee_behavior:he})=>he===Xs.FEE_BEHAVIOR_ADDITIONAL))??[]},[k]),Cs=p.useMemo(()=>{var O;for(const he of vs){const Ns=((O=v==null?void 0:v[he.origin_asset.denom])==null?void 0:O.amount)??"0",Ao=(k==null?void 0:k.source_asset_denom)===he.origin_asset.denom?k.amount_in:"0";if(E(Ns).lt(E(Ao).plus(he.amount??"0")))return`Insufficient ${he.origin_asset.symbol} for fees`}},[v,k,vs]),wn=p.useMemo(()=>{if(!c.sender)return"Connect wallet";if(!c.quantity||!N)return"Enter amount";if(!c.recipient)return"Enter recipient address";if(l.errors.quantity)return l.errors.quantity.message;const O=lo.safeParse(c);if(!O.success)return`Invalid ${O.error.issues[0].path}`;if(!k)return"Route not found";if(Cs)return Cs},[N,Cs,l,k,c]),$o=k?ne(k.amount_out,{decimals:D.decimals}):"0",ko=E(_).gt(0)&&E(_).isEqualTo(Tt(g==null?void 0:g.amount,(g==null?void 0:g.decimals)??0)),Eo=(()=>{switch(w){case"initia":return y(d).fees.fee_tokens.some(({denom:O})=>O===u);case"cosmos":return j.fee_assets.some(({denom:O})=>O===u);case"evm":return!be.isAddress(u);default:return!1}})(),bn=(O,he)=>O.length?t.jsxs("div",{className:Y.description,children:[mo(O),t.jsx(Ut,{label:he,children:t.jsx("span",{className:Y.icon,children:t.jsx(b.IconInfoFilled,{size:12})})})]}):null;return t.jsxs("form",{className:Y.form,onSubmit:Io,children:[t.jsx(Vs,{selectButton:t.jsx(Wn,{type:"src"}),accountButton:w==="cosmos"&&t.jsx(Qn,{type:"src"}),quantityInput:t.jsx(os,{}),balanceButton:t.jsx(no,{onClick:()=>o("quantity",Tt(g==null?void 0:g.amount,S==null?void 0:S.decimals),{shouldValidate:!0}),children:ne(g==null?void 0:g.amount,{decimals:S.decimals})}),value:k?k.usd_amount_in?rt(k.usd_amount_in):"-":"0"}),t.jsxs("div",{className:Y.arrow,children:[t.jsx("div",{className:Y.divider}),t.jsx("button",{type:"button",className:Y.flip,onClick:()=>Co(),children:t.jsx(b.IconChevronDown,{size:16})})]}),t.jsx(Vs,{selectButton:t.jsx(Wn,{type:"dst"}),accountButton:t.jsx(Qn,{type:"dst"}),quantityInput:t.jsx(os.ReadOnly,{children:$o}),value:k?k.usd_amount_out?rt(k.usd_amount_out):"-":"0"}),t.jsx(ee,{extra:t.jsxs(t.Fragment,{children:[t.jsx(Ls,{children:E(_).gt(0)&&q?t.jsxs(es.Stack,{children:[t.jsx(es,{label:"Minitswap",query:M,value:"default",onSelect:n,checked:s==="default"}),t.jsx(es,{label:"Optimistic bridge",query:V,value:"op",onSelect:n,checked:s==="op"})]}):null}),t.jsxs(J.Stack,{children:[(vn=k==null?void 0:k.extra_infos)==null?void 0:vn.map(O=>t.jsx(J,{level:"info",children:O},O)),ae&&t.jsx(J,{level:"info",children:ae}),ko&&Eo&&t.jsx(J,{level:"warning",children:"Make sure to leave enough for transaction fee"}),(k==null?void 0:k.warning)&&t.jsx(J,{level:"warning",children:k.warning.message}),(Cn=k==null?void 0:k.extra_warnings)==null?void 0:Cn.map(O=>t.jsx(J,{level:"warning",children:O},O))]}),t.jsx(Ls,{children:k&&t.jsxs("div",{className:Y.meta,children:[!!((Nn=k.estimated_fees)!=null&&Nn.length)&&t.jsxs("div",{className:Y.row,children:[t.jsx("span",{className:Y.title,children:"Fees"}),t.jsxs("div",{children:[bn(So,"Fee deducted from the amount you receive"),bn(vs,"Fee charged in addition to the amount you enter")]})]}),Zs(k.estimated_route_duration_seconds)&&t.jsxs("div",{className:Y.row,children:[t.jsx("span",{className:Y.title,children:"Estimated time"}),t.jsx("span",{className:Y.description,children:Zs(k.estimated_route_duration_seconds)})]}),k.does_swap&&t.jsxs("div",{className:Y.row,children:[t.jsx("span",{className:Y.title,children:"Slippage"}),t.jsxs("span",{className:Y.description,children:[t.jsxs("span",{children:[f,"%"]}),t.jsx(at,{title:"Slippage tolerance",content:O=>t.jsx(jm,{afterConfirm:O}),className:Y.edit,children:t.jsx(b.IconSettingFilled,{size:12})})]})]})]})})]}),children:t.jsx(L.White,{loading:vo&&"Simulating...",disabled:!!wn,children:wn??"Preview route"})})]})},Km=()=>{Vr();const e=Wo(),s=ue(),{closeDrawer:n}=xt(),r=gt(),o=sm(),a=Js(),i=$.useQueryClient(),l=se.useForm({mode:"onChange",defaultValues:o,resolver:nn.zodResolver(lo.superRefine(({srcChainId:q,srcDenom:M,quantity:V,sender:ge},G)=>{const me=i.getQueryData(xe.balances(q,ge).queryKey),Ne=I.pathOr("0",["chains",q,"denoms",M,"amount"],me),{decimals:Pe}=i.getQueryData(xe.asset(q,M).queryKey)??{decimals:0};eo({quantity:V,balance:Ne,decimals:Pe},G)}).superRefine(({dstChainId:q,recipient:M},V)=>{if(!a(M,q)){V.addIssue({code:Q.z.ZodIssueCode.custom,message:"Invalid address",path:["recipient"]});return}}))}),{watch:c,setValue:d}=l,{srcChainId:u,dstChainId:m,srcDenom:h,dstDenom:_,quantity:x,slippagePercent:f,recipient:y}=c();c((q,{name:M})=>{(M==="srcChainId"||M==="srcDenom")&&d("quantity","")});const j=uo(),w=j(u),A=j(m),S=Js()(y,m);p.useEffect(()=>{d("cosmosWalletName",void 0),d("sender",w)},[u,w,d]),p.useEffect(()=>{S||d("recipient",A)},[A,S,d]);const D=_t(u),v=_t(m),g=p.useMemo(()=>{if(!D.find(q=>q.denom===h))return`${h} is not available for bridge/swap on ${u}`;if(!v.find(q=>q.denom===_))return`${_} is not available for bridge/swap on ${m}`},[v,m,_,D,u,h]);p.useEffect(()=>{g||(localStorage.setItem(U.BRIDGE_SRC_CHAIN_ID,u),localStorage.setItem(U.BRIDGE_SRC_DENOM,h),localStorage.setItem(U.BRIDGE_DST_CHAIN_ID,m),localStorage.setItem(U.BRIDGE_DST_DENOM,_),localStorage.setItem(U.BRIDGE_QUANTITY,x),localStorage.setItem(U.BRIDGE_SLIPPAGE_PERCENT,f))},[u,h,m,_,x,f,g]);const N=e[0].path==="/bridge",R=()=>t.jsxs(t.Fragment,{children:[t.jsx(de,{error:!0,children:g}),t.jsx(ee,{children:N?t.jsx(L.White,{onClick:n,children:"Close"}):t.jsx(L.White,{onClick:()=>s(-1),children:"Go back"})})]}),{reminders:K}=jt();return t.jsx(qe,{title:"Bridge/Swap",returnTo:N?!1:"/",extra:t.jsxs(t.Fragment,{children:[t.jsx(L.Small,{onClick:()=>s("/bridge/history"),unpadded:!0,children:t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",width:"12",height:"12",children:[t.jsx("path",{d:"m0 9.818 1.414-1.414 L2 8.99 V8 a7 7 0 1 1 7 7 v-2 a5 5 0 1 0-5-5 v1.354 l.95-.95 1.414 1.414 L3.182 13 0 9.818 Z"}),t.jsx("path",{d:"M9 5.5 H7.5 v3.75 h3.75 v-1.5 H9 V5.5 Z"})]})}),t.jsx(oo,{offset:0,disabled:K.length===0,children:t.jsx(L.Small,{onClick:()=>s("/op/withdrawals"),disabled:!r,children:t.jsx("span",{children:"Withdrawal status"})})})]}),children:g?R():t.jsx(se.FormProvider,{...l,children:t.jsx(oe,{children:t.jsx(zm,{})})})})},ct=Ue.createQueryKeys("interwovenkit:op",{bridge:e=>[e],withdrawals:(e,s)=>[e,s],latestOutput:e=>[e],output:(e,s)=>[e,s],outputResponse:(e,s)=>[e,s],withdrawalClaimed:(e,s)=>[e,s]});function ws(){const{restUrl:e}=je();return p.useMemo(()=>z.create({prefixUrl:e}),[e])}function Hm(e){const s=ws(),{data:n}=$.useSuspenseQuery({queryKey:ct.bridge(e).queryKey,queryFn:()=>s.get(`opinit/ophost/v1/bridges/${e}`).json(),staleTime:H.INFINITY});return n}const Gn=20;function Lm(e){const s=X();return $.useSuspenseInfiniteQuery({queryKey:ct.withdrawals(e,s).queryKey,queryFn:async({pageParam:n})=>{if(!s)return[];const r={limit:Gn,offset:n,order:"desc"},{withdrawals:o}=await z.create({prefixUrl:e}).get(`withdrawals/${s}`,{searchParams:r}).json();return o},getNextPageParam:n=>{var o;const r=(o=I.last(n))==null?void 0:o.sequence;return n.length<Gn||!r||r<=1?null:r-1},initialPageParam:0,staleTime:H.SECOND})}function Wm(e){const s=ws(),{data:n}=$.useSuspenseQuery({queryKey:ct.latestOutput(e).queryKey,queryFn:()=>s.get(`opinit/ophost/v1/bridges/${e}/outputs`,{searchParams:{"pagination.reverse":!0,"pagination.limit":1}}).json(),select:({output_proposals:r})=>{const[o]=r;return o||null},staleTime:H.SECOND});return n}function Qm({bridge_id:e,output_index:s}){const n=ws(),{data:r}=$.useSuspenseQuery({queryKey:ct.output(e,s).queryKey,queryFn:async()=>{try{return await n.get(`opinit/ophost/v1/bridges/${e}/outputs/${s}`).json()}catch{return null}},staleTime:H.SECOND});return r}function Vm({bridge_id:e,sequence:s}){var c,d;const r=(c=He().find(({metadata:u})=>(u==null?void 0:u.op_bridge_id)===e.toString()))==null?void 0:c.chain_id;if(!r)throw new Error(`Chain not found for bridge_id: ${e}`);const a=it()(r);if(!a)throw new Error(`Chain not found: ${r}`);const i=(d=a.metadata)==null?void 0:d.executor_uri;if(!i)throw new Error(`Executor URL not found: ${r}`);const{data:l}=$.useSuspenseQuery({queryKey:ct.outputResponse(i,s).queryKey,queryFn:()=>z.create({prefixUrl:i}).get(`withdrawal/${s}`).json(),staleTime:H.SECOND});return l}function ho(e,s){const{bridge_id:n}=e,r=ws(),{data:o}=$.useSuspenseQuery({queryKey:ct.withdrawalClaimed(n,s).queryKey,queryFn:()=>r.get(`opinit/ophost/v1/bridges/${n}/withdrawals/claimed/by_hash`,{searchParams:{withdrawal_hash:s}}).json(),select:({claimed:a})=>a,staleTime:({state:{data:a}})=>a!=null&&a.claimed?1/0:H.SECOND});return o}function Et(e){return sn.sha3_256.create().update(e).digest()}function Ms(e,s){const n=new ArrayBuffer(s);return new DataView(n).setBigUint64(0,BigInt(e),!1),new Uint8Array(n)}function _o(e){const{bridge_id:s,sequence:n,amount:r,from:o,to:a}=e,i=Ms(s.toString(),8),l=Ms(n.toString(),8),c=Ms(r.amount,8),d=tt.concatBytes(i,l,Et(tt.toBytes(o)),Et(tt.toBytes(a)),Et(tt.toBytes(r.denom)),c);return Et(Et(d))}const fo=p.createContext(null);function bs(){return p.useContext(fo)}const Gm="_asset_6h8u2_1",Ym="_info_6h8u2_7",Jm="_symbol_6h8u2_11",Us={asset:Gm,info:Ym,symbol:Jm},Zm=({amount:e,denom:s})=>{const n=je(),r=cn(s,n),{symbol:o,logoUrl:a,decimals:i}=r;return t.jsxs("div",{className:Us.asset,children:[t.jsx(W,{src:a,width:32,height:32}),t.jsxs("div",{className:Us.info,children:[t.jsx("span",{className:"monospace",children:ne(e,{decimals:i})}),t.jsx("span",{className:Us.symbol,children:o})]})]})},Xm=({children:e})=>{const{withdrawalTx:s}=bs(),n=Wm(s.bridge_id),r=s.output_index>Number(n==null?void 0:n.output_index);return e(r)},eh="_container_1oldz_1",th="_icon_1oldz_7",Yn={container:eh,icon:th},sh="Withdrawal will begin within an hour",Jn=()=>t.jsxs("div",{className:Yn.container,children:[t.jsx("span",{children:"In progress"}),t.jsx(Ut,{label:sh,children:t.jsx("span",{className:Yn.icon,children:t.jsx(b.IconInfoFilled,{size:12})})})]}),po=1e3,nh=60,rh=60,oh=24,en=po*nh,tn=en*rh,Zn=tn*oh,ah=({date:e})=>{const s=p.useCallback(()=>{const d=new Date().getTime(),m=e.getTime()-d;if(m<=0)return{days:0,hours:0,minutes:0,seconds:0};const h=Math.floor(m/Zn),_=Math.floor(m%Zn/tn),x=Math.floor(m%tn/en),f=Math.floor(m%en/po);return{days:h,hours:_,minutes:x,seconds:f}},[e]),[n,r]=p.useState(s());p.useEffect(()=>{const d=window.setInterval(()=>{r(s())},1e3);return()=>window.clearInterval(d)},[s,e]);const o=d=>d.toString().padStart(2,"0"),{days:a,hours:i,minutes:l,seconds:c}=n;return t.jsx(Ut,{label:e.toLocaleString(),children:t.jsxs("span",{className:"monospace",children:[a,"d ",o(i),"h ",o(l),"m ",o(c),"s"]})})},ih="_container_1lz3w_1",ch="_title_1lz3w_5",Xn={container:ih,title:ch},lh=({date:e})=>t.jsxs("div",{className:Xn.container,children:[t.jsx("div",{className:Xn.title,children:"Claimable in"}),t.jsx(ah,{date:e})]}),dh=({children:e})=>{const{withdrawalTx:s}=bs(),n=Hm(s.bridge_id),r=Qm(s),o=p.useMemo(()=>{if(!r)return null;const{bridge_config:a}=n,{output_proposal:i}=r;return ft.addSeconds(new Date(i.l1_block_time),parseFloat(a.finalization_period))},[n,r]);return e(o)},uh=({date:e,children:s})=>{const{chainId:n,withdrawalTx:r}=bs(),o=B.toBase64(_o(r)),a=ho(r,o),{setReminder:i,removeReminder:l}=jt();return p.useEffect(()=>{const c={chainId:n,txHash:r.tx_hash};a?l(c):i(c,{...c,recipient:r.to,claimableAt:e.getTime(),amount:r.amount.amount,denom:r.amount.denom,dismissed:ft.isPast(e.getTime())?!0:void 0})},[n,a,e,l,i,r]),s},mh="_button_v18uc_1",hh="_claimed_v18uc_16",er={button:mh,claimed:hh},_h=()=>{const{withdrawalTx:e}=bs(),{bridge_id:s,sequence:n,amount:r,output_index:o,withdrawal_proofs:a,storage_root:i,from:l,to:c,version:d}=e,u=je(),m=X(),{requestTxSync:h,waitForTxConfirmation:_}=Te(),x=Vm(e),f=B.toBase64(_o(e)),y=ho(e,f),j=$.useQueryClient(),{mutate:w,isPending:A}=$.useMutation({mutationFn:async()=>{if(!x)throw new Error("Output not found");const{last_block_hash:C}=x;return h({chainId:u.chain_id,messages:[{typeUrl:"/opinit.ophost.v1.MsgFinalizeTokenWithdrawal",value:Uo.MsgFinalizeTokenWithdrawal.fromPartial({sender:m,bridgeId:BigInt(s),outputIndex:BigInt(o),withdrawalProofs:a.map(B.fromBase64),from:l,to:c,sequence:BigInt(n),amount:r,version:B.fromBase64(d),storageRoot:B.fromBase64(i),lastBlockHash:B.fromBase64(C)})}],internal:!0})},onSuccess:async C=>{await _({chainId:u.chain_id,txHash:C}),j.invalidateQueries({queryKey:ct.withdrawalClaimed(s,f).queryKey})}});return y?t.jsxs("div",{className:er.claimed,children:[t.jsx(b.IconCheckCircleFilled,{size:14}),t.jsx("span",{children:"Claimed"})]}):t.jsx("button",{className:er.button,onClick:()=>w(),disabled:A,children:"Claim"})},fh=()=>t.jsx(Xm,{children:e=>e?t.jsx(Jn,{}):t.jsx(dh,{children:s=>s?t.jsx(uh,{date:s,children:ft.isFuture(s)?t.jsx(lh,{date:s}):t.jsx(_h,{})}):t.jsx(Jn,{})})}),ph="_item_km5w2_1",xh={item:ph},gh=({chain:e})=>{var c;const s=(c=e.metadata)==null?void 0:c.executor_uri;if(!s)throw new Error("Executor URL is not defined");const{data:n,fetchNextPage:r,hasNextPage:o,isFetching:a}=Lm(s),i=p.useMemo(()=>(n==null?void 0:n.pages.flat())??[],[n]),{syncReminders:l}=jt();return p.useEffect(()=>{const d=i.map(u=>({chainId:e.chainId,txHash:u.tx_hash}));l(d)},[e.chainId,i,l]),i.length?t.jsxs(t.Fragment,{children:[i.map(d=>{const{amount:u}=d;return t.jsxs("div",{className:xh.item,children:[t.jsx(Zm,{...u}),t.jsx(oe,{suspenseFallback:null,children:t.jsx(fo.Provider,{value:{chainId:e.chainId,withdrawalTx:d},children:t.jsx(fh,{})})})]},d.sequence)}),o&&t.jsx(gs,{onClick:()=>r(),disabled:a})]}):t.jsx(de,{children:"No withdrawals"})},yh="_content_dj1qm_1",jh="_title_dj1qm_5",tr={content:yh,title:jh},wh=()=>{var c;const{chainId:e}=ze(),s=He(),n=hs(),[r,o]=p.useState(e??((c=n.metadata)!=null&&c.is_l1?"":n.chainId)),a=it(),{reminders:i}=jt(),l=r?a(r):void 0;return t.jsxs(qe,{title:"Optimistic bridge withdrawals",children:[t.jsx(nt,{chains:s.filter(({metadata:d})=>{var u;return!(d!=null&&d.is_l1)&&((u=d==null?void 0:d.op_denoms)==null?void 0:u.length)}),value:r,onSelect:o,getShowIndicator:d=>i.some(u=>u.chainId===d)}),t.jsx("div",{className:tr.content,children:l?t.jsxs(t.Fragment,{children:[t.jsx("h2",{className:tr.title,children:l.name}),t.jsx(oe,{children:t.jsx(gh,{chain:l})},r)]}):t.jsx(J,{level:"info",children:"Select a chain to display your optimistic bridge withdrawals"})})]})};async function bh(e,s){const n=z.create({prefixUrl:s}),r=`cosmos/auth/v1beta1/account_info/${e}`;for(let o=1;o<=24;o++)try{return await n.get(r).json()}catch{await new Promise(a=>setTimeout(a,5e3))}throw new Error(`Timeout: ${e} not found`)}const ts=({chainId:e,txHash:s})=>`${U.BRIDGE_HISTORY}:${e}:${s}`,as=100,sr=10;function xo(){const[e=[],s]=le.useLocalStorage(U.BRIDGE_HISTORY,[]),n=p.useCallback((o,a)=>{localStorage.setItem(ts(o),JSON.stringify(a));for(const i of e.slice(as-1))localStorage.removeItem(ts(i));s((i=[])=>[o,...i.slice(0,as-1)])},[e,s]),r=p.useCallback(o=>{const a=localStorage.getItem(ts(o));return a?JSON.parse(a):null},[]);return{history:e,addHistoryItem:n,getHistoryDetails:r}}function go(e){return le.useLocalStorage(ts(e))}async function yo(e,s){const{chain_type:n,chain_id:r,chain_name:o,evm_fee_asset:a,rpc:i}=s;if(n!=="evm")throw new Error(`Chain is not an EVM chain: ${o}`);try{await e.send("wallet_switchEthereumChain",[{chainId:`0x${Number(r).toString(16)}`}])}catch(l){if(I.path(["error","code"],l)!==4902)throw l;if(!a)throw new Error(`Fee asset is not defined for chain: ${o}`);await e.send("wallet_addEthereumChain",[{chainId:`0x${Number(r).toString(16)}`,chainName:o,nativeCurrency:a,rpcUrls:[i]}]),await e.send("wallet_switchEthereumChain",[{chainId:`0x${Number(r).toString(16)}`}])}}function wt(){return ze()}function vh(e){const s=ue(),{showNotification:n,updateNotification:r,hideNotification:o}=Or(),{addHistoryItem:a}=xo(),{route:i,values:l}=wt(),{srcChainId:c,sender:d,recipient:u,cosmosWalletName:m}=l,h=Cr(),{requestTxSync:_,waitForTxConfirmation:x}=Te(),{find:f}=js(),y=an(),j=_s(),w=ve(c),A=qt(w),C=Br(c),S=$.useQueryClient(),{addReminder:D}=jt();return $.useMutation({mutationFn:async()=>{var v;try{if("cosmos_tx"in e){if(!e.cosmos_tx.msgs)throw new Error("Invalid transaction data");const g=e.cosmos_tx.msgs.map(({msg_type_url:ae,msg:ie})=>{if(!(ae&&ie))throw new Error("Invalid transaction data");return j.fromAmino({type:At.aminoConverters[ae].aminoType,value:JSON.parse(ie)})});if(A==="initia"){const ae=await _({messages:g,chainId:c,internal:1}),ie=x({txHash:ae,chainId:c});return{txHash:ae,wait:ie}}const N=(v=f(m))==null?void 0:v.getProvider();if(!N)throw new Error("Wallet not connected");const R=N.getOfflineSignerOnlyAmino(c),K=await ke.SigningStargateClient.connectWithSigner(w.rpc,R,{registry:y,aminoTypes:j}),q=await K.getAllBalances(d),M=w.fee_assets.find(ae=>q.some(ie=>ie.denom===ae.denom&&E(ie.amount).gt(0)));if(!M){const ie=["Insufficient balance for fees.",`Available fee assets: ${w.fee_assets.map(vt=>C(vt.denom).symbol).join(", ")}`,"(note: asset symbols may refer to different tokens across chains)"].join(" ");throw new Error(ie)}const{denom:V,gas_price:ge}=M;if(!ge)throw new Error(`Gas price not found for ${V}`);const G=await K.simulate(d,g,""),me=ke.GasPrice.fromString(ge.average+V),Ne=ke.calculateFee(Math.ceil(G*rn),me),Pe=await K.signAndBroadcastSync(d,g,Ne),bt=$r({txHash:Pe,client:K});return{txHash:Pe,wait:bt}}if("evm_tx"in e){const{chain_id:g,to:N,value:R,data:K}=e.evm_tx,q=await h(),M=await q.getSigner();await yo(q,w);const V=await M.sendTransaction({chainId:g,to:N,value:R,data:`0x${K}`});return{txHash:V.hash,wait:V.wait()}}throw new Error("Unsupported chain type")}catch(g){throw new Error(await Ke(g))}},onSuccess:({txHash:v,wait:g})=>{s(-1),n({type:"loading",title:"Transaction is pending..."}),g.then(()=>{const N={chainId:c,txHash:v},R=jo(i)==="Optimistic bridge withdrawal";a(N,{...N,timestamp:Date.now(),route:i,values:l,state:R?"success":void 0}),r({type:"info",title:"Transaction submitted",description:p.createElement(p.Fragment,null,"Check ",p.createElement(Bt,{to:"/bridge/history",onClick:o},"the activity page")," for transaction status")}),R&&D(N,{...N,recipient:F.toBech32(u),claimableAt:Date.now()+i.estimated_route_duration_seconds*1e3,amount:i.amount_out,denom:i.dest_asset_denom})}).catch(N=>{r({type:"error",title:"Transaction failed",description:N.message})}).finally(()=>{S.invalidateQueries({queryKey:xe.balances(c,d).queryKey})})},onError:v=>{n({type:"error",title:"Transaction failed",description:v.message})}})}function Ch(){const e=Le(),s=X(),n=br(),{route:r,values:o}=wt(),a=We();return $.useMutation({mutationFn:async()=>{try{const{chain_id:i,hook:l}=await e.post("op-hook",{json:{source_address:s,source_asset_chain_id:r.source_asset_chain_id,source_asset_denom:r.source_asset_denom,dest_address:o.recipient,dest_asset_chain_id:r.dest_asset_chain_id,dest_asset_denom:r.dest_asset_denom}}).json();await bh(s,a(r.dest_asset_chain_id).rest);const c=l.map(({msg_type_url:m,msg:h})=>At.aminoTypes.fromAmino({type:At.aminoConverters[m].aminoType,value:JSON.parse(h)})),d=await n(i,s,c,{amount:[],gas:"1"},""),u=ht.Tx.fromPartial({body:ht.TxBody.decode(d.bodyBytes),authInfo:ht.AuthInfo.decode(d.authInfoBytes),signatures:d.signatures});return{signer:s,hook:B.toBase64(ht.Tx.encode(u).finish())}}catch(i){throw new Error(await Ke(i))}}})}function Nh(e){const{chainId:s,txHash:n,tracked:r}=e,o=Le();return $.useQuery({queryKey:xe.txTrack(s,n).queryKey,queryFn:async()=>{try{return await o.post("v2/tx/track",{json:{tx_hash:n,chain_id:s}}).json()}catch(a){throw new Error(await Ke(a))}},select:({tx_hash:a})=>a,retry:6,retryDelay:5e3,staleTime:H.INFINITY,enabled:!r})}function Ih(e){const{timestamp:s,chainId:n,txHash:r,tracked:o,state:a}=e,i=Le();return $.useQuery({queryKey:xe.txStatus(n,r).queryKey,queryFn:()=>i.get("v2/tx/status",{searchParams:{tx_hash:r,chain_id:n}}).json(),enabled:!!r&&o&&!a,refetchInterval:({state:{data:l}})=>{if(!l)return!1;const{status:c}=l;if(c==="STATE_COMPLETED")return!1;const d=s+e.route.estimated_route_duration_seconds*1e3,u=Date.now(),m=Math.floor((d-u)/1e3);return m<=0?1e3:m<=5*60?5e3:60*1e3},staleTime:H.INFINITY})}var ss=(e=>(e.OP_WITHDRAW="Optimistic bridge withdrawal",e.SKIP="Skip",e))(ss||{});function jo(e){const{operations:s,dest_asset_denom:n}=e;return I.has("op_init_transfer",I.head(s))&&n==="uinit"?"Optimistic bridge withdrawal":"Skip"}const Sh="_content_c0tee_1",$h="_info_c0tee_6",kh="_arrow_c0tee_11",Eh="_divider_c0tee_19",Ah="_type_c0tee_26",Th="_asset_c0tee_44",Dh="_amount_c0tee_52",qh="_lower_c0tee_57",Ph="_chain_c0tee_63",Fh="_address_c0tee_69",fe={content:Sh,info:$h,arrow:kh,divider:Eh,type:Ah,asset:Th,amount:Dh,lower:qh,chain:Ph,address:Fh},wo=e=>{const{source:s,label:n,amount:r,denom:o,chainId:a,address:i,walletIcon:l}=e,{symbol:c=te(o),decimals:d=0,logo_uri:u=kr}=e,{chain_name:m,pretty_name:h,..._}=ve(a);return t.jsxs("div",{children:[!s&&t.jsxs("div",{className:fe.arrow,children:[t.jsx("div",{className:fe.divider}),n?t.jsx(Ut,{label:n,children:t.jsx("button",{className:fe.type,children:t.jsx(b.IconArrowDown,{size:12})})}):t.jsx("span",{className:fe.type,children:t.jsx(b.IconArrowDown,{size:12})}),t.jsx("div",{className:fe.divider})]}),t.jsxs("div",{className:fe.content,children:[t.jsx(xn,{assetLogoUrl:u,chainLogoUrl:_.logo_uri??void 0}),t.jsxs("div",{className:fe.info,children:[t.jsxs("div",{className:fe.asset,children:[t.jsx("span",{className:fe.amount,children:ne(r,{decimals:d})}),t.jsx("span",{children:c})]}),t.jsxs("div",{className:fe.lower,children:[t.jsxs("div",{className:fe.chain,children:["on ",h||m]}),i&&t.jsx(Wr,{value:i,children:({copy:x,copied:f})=>t.jsxs("button",{className:fe.address,onClick:x,children:[l,f?t.jsx("span",{children:"Copied!"}):t.jsx("span",{className:"monospace",children:te(i)})]})})]})]})]})]})},mt=e=>{const s=Ae(e.denom,e.chainId);return t.jsx(wo,{...e,...s})};mt.Placeholder=wo;const Bh="_root_133os_1",Rh="_toggle_133os_6",Oh="_route_133os_29",Mh="_content_133os_36",Jt={root:Bh,toggle:Rh,route:Oh,content:Mh};function Uh(e){if("transfer"in e)return{label:"IBC",...e,...e.transfer};if("bank_send"in e)return{label:"Send",...e,...e.bank_send};if("swap"in e)return{label:"Swap",...e,...e.swap};if("axelar_transfer"in e)return{label:"Axelar",...e,...e.axelar_transfer};if("cctp_transfer"in e)return{label:"CCTP",...e,...e.cctp_transfer};if("hyperlane_transfer"in e)return{label:"Hyperlane",...e,...e.hyperlane_transfer};if("evm_swap"in e)return{label:"Swap",...e,...e.evm_swap};if("op_init_transfer"in e)return{label:"Op bridge",...e,...e.op_init_transfer};if("go_fast_transfer"in e)return{label:"Go Fast",...e,...e.go_fast_transfer};if("eureka_transfer"in e)return{label:"Eureka",...e,...e.eureka_transfer};if("stargate_transfer"in e)return{label:"Stargate",...e,...e.stargate_transfer};if("layer_zero_transfer"in e)return{label:"LayerZero",...e,...e.layer_zero_transfer};throw new Error("Unknown operation type")}const zh=({addressList:e})=>{var S;const{values:s,route:n}=wt(),{source_asset_denom:r,source_asset_chain_id:o,amount_in:a,operations:i}=n,l=I.zipObj(n.required_chain_addresses,e),{find:c}=js(),{connector:d,address:u=""}=ye.useAccount(),[m,h]=le.useToggle(!1),_=i.length>1,x=t.jsx(W,{src:s.cosmosWalletName?(S=c(s.cosmosWalletName))==null?void 0:S.image:d==null?void 0:d.icon,width:12,height:12}),f={amount:a,denom:r,chainId:o,address:s.sender,walletIcon:x},y=D=>F.equals(D,u)?x:t.jsx(b.IconWallet,{size:11}),j=D=>{const{label:v,amount_out:g,denom:N,denom_out:R=N,chain_id:K,from_chain_id:q,to_chain_id:M=K??q}=D,V=l[M];return{label:_&&!m?void 0:v,amount:g,denom:R,chainId:M,address:V,walletIcon:y(V)}},w=i.map(Uh).map(j),A=w.slice(0,-1),C=w[w.length-1];return t.jsxs(T.Collapsible.Root,{className:Jt.root,open:m,onOpenChange:h,children:[_&&t.jsx(T.Collapsible.Trigger,{asChild:!0,children:t.jsx(Qs,{children:t.jsx("button",{className:Jt.toggle,onClick:h,children:m?t.jsxs(t.Fragment,{children:[t.jsx(b.IconMinus,{size:12}),t.jsx("span",{children:"Hide details"})]}):t.jsxs(t.Fragment,{children:[t.jsx(b.IconList,{size:12}),t.jsx("span",{children:"Show details"})]})})})}),t.jsxs("div",{className:Jt.route,children:[t.jsx(mt,{...f,source:!0}),t.jsx(T.Collapsible.Content,{className:Jt.content,children:A.map((D,v)=>t.jsx(oe,{suspenseFallback:t.jsx(mt.Placeholder,{...D}),errorBoundaryProps:{fallback:t.jsx(mt.Placeholder,{...D})},children:t.jsx(mt,{...D})},v))}),t.jsx(mt,{...C})]})]})},is=({error:e})=>{const s=ue();return t.jsx(ee,{extra:t.jsx(J,{level:"error",children:e.message}),children:t.jsx(L.White,{onClick:()=>s("/bridge"),children:"Home"})})},Kh=({children:e})=>{const s=wt(),{route:n,values:r}=s,{required_chain_addresses:o}=n,{srcChainId:a,dstChainId:i,sender:l,recipient:c}=r,{initiaAddress:d,hexAddress:u}=Te(),m=fs(),h=We(),_=yt(),x=h(a),f=_(x),y=o.slice(0,-1).some(C=>{const S=h(C);return _(S)==="cosmos"})&&f!=="cosmos",{value:j,loading:w,error:A}=le.useAsync(async()=>{try{if(!y)return;if(!m)throw new Error("Wallet not connected");const[{pubkey:C}]=await m.getAccounts();return C}catch(C){throw new Error(await Ke(C))}});if(A)return t.jsx(is,{error:A});if(w)return t.jsx(ee,{children:t.jsx(L.White,{loading:w&&"Generating intermediary addresses..."})});if(!y||j){const C=o.map((S,D)=>{if(D===o.length-1){const K=h(i);return _(K)==="initia"?F.toBech32(c):c}const v=h(S),g=_(v),N=h(a),R=_(N);switch(g){case"initia":return d;case"evm":return u;case"cosmos":{if(R==="cosmos")return B.toBech32(v.bech32_prefix,B.fromBech32(l).data);if(!j)throw new Error("Pubkey not found");return ns.pubkeyToAddress(ns.encodeSecp256k1Pubkey(j),v.bech32_prefix)}default:throw new Error("Unsupported chain type")}});return e(C)}return t.jsx(is,{error:new Error("Failed to generate intermediary addresses")})},Hh=({addressList:e,signedOpHook:s,children:n})=>{const r=Le(),{route:o,values:a}=wt(),{value:i,loading:l,error:c}=le.useAsync(async()=>{if(o.required_op_hook&&!s)throw new Error("Op hook is required");const d={address_list:e,amount_in:o.amount_in,amount_out:o.amount_out,source_asset_chain_id:o.source_asset_chain_id,source_asset_denom:o.source_asset_denom,dest_asset_chain_id:o.dest_asset_chain_id,dest_asset_denom:o.dest_asset_denom,slippage_tolerance_percent:a.slippagePercent,operations:o.operations,signed_op_hook:s},{txs:u}=await r.post("v2/fungible/msgs",{json:d}).json();if(!u||u.length===0)throw new Error("No transaction data found");const[m]=u;return m});return c?t.jsx(is,{error:c}):l?t.jsx(ee,{children:t.jsx(L.White,{loading:l&&"Fetching messages..."})}):i?n(i):t.jsx(is,{error:new Error("Failed to fetch messages")})},Lh=({children:e})=>{var r;const{route:s}=wt(),n=Ch();return s.required_op_hook&&!n.data?t.jsx(ee,{extra:t.jsx(J,{level:"error",children:(r=n.error)==null?void 0:r.message}),children:t.jsx(L.White,{onClick:()=>n.mutate(),loading:n.isPending&&"Awaiting signature...",children:"Authorize conversion"})}):e(n.data)},Wh=({tx:e,children:s})=>{const n=Cr(),r=We(),{mutate:o,data:a,isPending:i,error:l}=$.useMutation({mutationFn:async()=>{try{if(!("evm_tx"in e))throw new Error("Transaction is not EVM");if(!e.evm_tx.required_erc20_approvals)throw new Error("No approvals required");const{chain_id:c}=e.evm_tx,d=await n(),u=await d.getSigner();await yo(d,r(c));for(const m of e.evm_tx.required_erc20_approvals){const{token_contract:h,spender:_,amount:x}=m,f=["function approve(address spender, uint256 amount) external returns (bool)"];await(await new be.ethers.Contract(h,f,u).approve(_,x)).wait()}return!0}catch(c){throw new Error(await Ke(c))}}});return"evm_tx"in e&&e.evm_tx.required_erc20_approvals&&e.evm_tx.required_erc20_approvals.length>0&&!a?t.jsx(ee,{extra:t.jsx(J,{level:"error",children:l==null?void 0:l.message}),children:t.jsx(L.White,{onClick:()=>o(),loading:i&&"Approving tokens...",children:"Approve tokens"})}):s},Qh=({tx:e})=>{const{mutate:s,isPending:n}=vh(e);return t.jsx(ee,{children:t.jsx(L.White,{onClick:()=>s(),loading:n&&"Signing transaction...",children:"Confirm"})})},Vh=()=>t.jsx(qe,{title:"Route preview",children:t.jsx(Kh,{children:e=>t.jsxs(t.Fragment,{children:[t.jsx(zh,{addressList:e}),t.jsx(Lh,{children:s=>t.jsx(Hh,{addressList:e,signedOpHook:s,children:n=>t.jsx(Wh,{tx:n,children:t.jsx(Qh,{tx:n})})})})]})})}),Gh="_button_14cv7_1",Yh="_checkbox_14cv7_10",Jh="_checked_14cv7_23",Zt={button:Gh,checkbox:Yh,checked:Jh},Zh=({checked:e,onClick:s,label:n,className:r})=>t.jsxs("button",{type:"button",className:P(Zt.button,r),onClick:s,children:[t.jsx("div",{className:P(Zt.checkbox,{[Zt.checked]:e}),children:e&&t.jsx(b.IconCheck,{size:12})}),t.jsx("span",{className:Zt.label,children:n})]}),Xh="_success_t4dfk_1",e_="_error_t4dfk_5",nr={success:Xh,error:e_},t_=({tx:e})=>{const[s,n]=go(e);if(!s)throw new Error("Bridge history details not found");const{data:r}=Ih(s),o=s.state??s_(r);switch(p.useEffect(()=>{o!=="loading"&&n(a=>{if(!a)throw new Error("Bridge history details not found");return{...a,tracked:!0,state:o}})},[n,o]),o){case"error":return t.jsx("div",{className:nr.error,children:t.jsx(b.IconCloseCircleFilled,{size:14})});case"success":return t.jsx("div",{className:nr.success,children:t.jsx(b.IconCheckCircleFilled,{size:14})});default:return t.jsx(Qe,{size:14})}};function s_(e){if(!e)return"loading";switch(e.state){case"STATE_ABANDONED":case"STATE_COMPLETED_ERROR":case"STATE_PENDING_ERROR":return"error";case"STATE_COMPLETED_SUCCESS":return"success";default:return"loading"}}const n_="_link_1uidr_1",r_="_header_1uidr_22",o_="_title_1uidr_30",a_="_date_1uidr_36",i_="_explorer_1uidr_40",c_="_fees_1uidr_55",l_="_label_1uidr_63",d_="_content_1uidr_67",u_="_route_1uidr_73",m_="_row_1uidr_78",h_="_asset_1uidr_84",__="_amount_1uidr_92",f_="_chain_1uidr_97",p_="_account_1uidr_106",x_="_arrow_1uidr_113",Z={link:n_,header:r_,title:o_,date:a_,explorer:i_,fees:c_,label:l_,content:d_,route:u_,row:m_,asset:h_,amount:__,chain:f_,account:p_,arrow:x_},g_=({tx:e})=>{var ge;const[s,n]=go(e);if(!s)throw new Error("Bridge history details not found");const{chainId:r,txHash:o,route:a,values:i,timestamp:l,tracked:c}=s,{data:d}=Nh(s),{address:u="",connector:m}=ye.useAccount(),{find:h}=js();p.useEffect(()=>{d&&n(G=>{if(!G)throw new Error("Bridge history details not found");return{...G,tracked:!0}})},[n,d]);const{amount_in:_,amount_out:x,source_asset_chain_id:f,source_asset_denom:y,dest_asset_chain_id:j,dest_asset_denom:w,estimated_fees:A=[]}=a,C=ve(f),S=ve(j),D=Ae(y,f),v=Ae(w,j),g=(G,me)=>me?t.jsx(W,{src:me,width:12,height:12}):F.equals(G,u)?t.jsx(W,{src:m==null?void 0:m.icon,width:12,height:12}):t.jsx(b.IconWallet,{size:12}),N=(G,{symbol:me,decimals:Ne,logo_uri:Pe},{chain_name:bt,pretty_name:ae,...ie},vt,k)=>t.jsxs("div",{className:Z.row,children:[t.jsx(xn,{assetLogoUrl:Pe,chainLogoUrl:ie.logo_uri??void 0}),t.jsxs("div",{children:[t.jsxs("div",{className:Z.asset,children:[t.jsx("span",{className:Z.amount,children:ne(G,{decimals:Ne})}),t.jsx("span",{children:me})]}),t.jsxs("div",{className:Z.chain,children:[t.jsxs("span",{children:["on ",ae||bt]}),t.jsxs("div",{className:Z.account,children:[k,t.jsx("span",{className:"monospace",children:te(vt)})]})]})]})]}),R=jo(a),K=p.useMemo(()=>{switch(R){case ss.SKIP:return"Skip Explorer";case ss.OP_WITHDRAW:return"Initia Scan"}},[R]),q=t.jsxs(t.Fragment,{children:[t.jsxs("header",{className:Z.header,children:[t.jsxs("div",{className:Z.title,children:[c?t.jsx(t_,{tx:e}):t.jsx(Qe,{size:14}),t.jsx("div",{className:Z.date,children:ft.intlFormatDistance(new Date(l),new Date,{locale:"en-US"})})]}),t.jsxs("div",{className:Z.explorer,children:[t.jsx("span",{children:K}),t.jsx(b.IconExternalLink,{size:12})]})]}),t.jsxs("div",{className:Z.route,children:[N(_,D,C,i.sender,g(i.sender,(ge=h(i.cosmosWalletName))==null?void 0:ge.image)),t.jsx("div",{className:Z.arrow,children:t.jsx(b.IconArrowDown,{size:12})}),N(x,v,S,i.recipient,g(i.recipient))]}),A.length>0&&t.jsxs("div",{className:Z.fees,children:[t.jsx("span",{className:Z.label,children:"Fees"}),t.jsx("span",{className:Z.content,children:mo(A)})]})]});if(R===ss.OP_WITHDRAW)return t.jsx(mn,{chainId:r,txHash:o,className:Z.link,children:q});const M=new URLSearchParams({tx_hash:o,chain_id:r}),V=new URL(`?${M.toString()}`,"https://explorer.skip.build");return t.jsx("a",{href:V.toString(),className:Z.link,target:"_blank",children:q})},y_="_list_1q71m_1",j_="_header_1q71m_5",w_="_checkbox_1q71m_9",b_="_item_1q71m_13",Xt={list:y_,header:j_,checkbox:w_,item:b_},v_=()=>{const{initiaAddress:e,hexAddress:s}=Te(),{history:n,getHistoryDetails:r}=xo(),o=n.filter(h=>r(h)),a=o.filter(h=>{const _=r(h);if(!_)return!1;const{values:x}=_,{sender:f,recipient:y}=x;return[f,y].some(j=>[e,s].includes(j))}),[i,l]=p.useState(1),[c,d]=le.useToggle(!a.length),u=c?o:a,m=u.slice(0,i*sr);return t.jsx(qe,{title:"Bridge/Swap activity",children:t.jsxs("div",{className:Xt.list,children:[o.length>0&&o.length!==a.length&&t.jsx("header",{className:Xt.header,children:t.jsx(Zh,{checked:c,onClick:d,label:"Show all transactions stored in this browser",className:Xt.checkbox})}),u.length===0?t.jsx(de,{children:"No bridge/swap activity"}):m.map((h,_)=>t.jsx("div",{className:Xt.item,children:t.jsx(oe,{children:t.jsx(g_,{tx:h})})},_)),u.length>i*sr?t.jsx(gs,{onClick:()=>l(h=>h+1)}):n.length>=as&&t.jsxs(de,{children:["Only the latest ",as," items are stored. Older entries will be removed automatically."]})]})})},bo=()=>{const e=ue(),s=xr(),n=gt(),{closeModal:r}=ms();if(p.useEffect(()=>{r(),s.startsWith("/bridge/")&&e("/bridge"),(s==="/collection"||s.startsWith("/nft"))&&e("/nfts")},[n]),s==="/connect")return n?null:t.jsx(fc,{});switch(s){case"/bridge":return t.jsx(Km,{},n);case"/bridge/history":return t.jsx(v_,{})}if(!n)return null;switch(s){case"/":case"/nfts":case"/activity":return t.jsx(td,{});case"/send":return t.jsx(uu,{},n);case"/collection":return t.jsx(fu,{});case"/nft":return t.jsx(Cu,{});case"/nft/send":return t.jsx(Ku,{},n);case"/rollups":return t.jsx(em,{});case"/bridge/preview":return t.jsx(Vh,{});case"/op/withdrawals":return t.jsx(wh,{});case"/tx":return t.jsx(Lr,{});case"/blank":return null}},C_="https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@100..700&display=swap",N_=()=>t.jsxs(t.Fragment,{children:[t.jsx("link",{rel:"preconnect",href:"https://fonts.googleapis.com"}),t.jsx("link",{rel:"preconnect",href:"https://fonts.gstatic.com",crossOrigin:""}),t.jsx("link",{rel:"stylesheet",href:C_}),t.jsx("link",{rel:"stylesheet",href:"https://assets.initia.xyz/fonts/PilatWide.css"})]}),I_=()=>{He();const e=je();return dn(),_t(localStorage.getItem(U.BRIDGE_SRC_CHAIN_ID)??e.chainId),_t(localStorage.getItem(U.BRIDGE_DST_CHAIN_ID)??e.chainId),null},S_=({children:e,...s})=>(p.useEffect(()=>{da()},[]),ha()?t.jsxs(t.Fragment,{children:[t.jsx(N_,{}),t.jsxs(ur.Provider,{value:{..._r,...s},children:[t.jsx(oe,{suspenseFallback:null,errorBoundaryProps:{fallback:null},children:t.jsx(I_,{})}),t.jsx(gr,{children:t.jsx(_a,{children:t.jsx($a,{children:t.jsx(Bi,{children:t.jsxs(T.Tooltip.Provider,{delayDuration:0,skipDelayDuration:0,children:[e,t.jsx(sc,{children:t.jsx(bo,{})})]})})})})})]})]}):null),$_=({bridge:e})=>t.jsx(gr,{initialEntry:{path:e?"/bridge":"/",state:e},children:t.jsx("div",{className:"body",children:t.jsx(Mr.Provider,{value:!!e,children:t.jsx(oe,{children:t.jsx(bo,{})})})})});exports.AddressUtils=F;exports.DEFAULT_GAS_ADJUSTMENT=rn;exports.DEFAULT_GAS_PRICE_MULTIPLIER=hr;exports.InterwovenKit=$_;exports.InterwovenKitProvider=S_;exports.MAINNET=_r;exports.TESTNET=Lo;exports.createUsernameClient=dr;exports.formatAmount=ne;exports.formatNumber=rt;exports.formatPercent=zo;exports.injectStyles=Ho;exports.toAmount=ds;exports.toQuantity=Tt;exports.truncate=te;exports.useAddress=gt;exports.useHexAddress=Mt;exports.useInitiaAddress=X;exports.useInterwovenKit=Te;exports.useUsernameQuery=Pr;