@multiversx/sdk-dapp-liquidity 2.4.0-alpha.1 → 2.4.0
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/{BridgeHistory-BUSiuT1d.mjs → BridgeHistory-B86lT8s-.mjs} +13 -13
- package/BridgeHistory-D3Zg2V1U.js +2 -0
- package/index.js +1 -1
- package/index.mjs +59 -58
- package/package.json +1 -1
- package/reactjs/components/BridgeForm/BridgeForm.js +1 -1
- package/reactjs/components/BridgeForm/BridgeForm.mjs +71 -74
- package/reactjs/components/BridgeForm/Deposit.js +1 -1
- package/reactjs/components/BridgeForm/Deposit.mjs +237 -237
- package/reactjs/components/BridgeForm/Transfer.js +1 -1
- package/reactjs/components/BridgeForm/Transfer.mjs +44 -44
- package/reactjs/components/BridgeForm/hooks/useBridgeTokenSelection.js +1 -1
- package/reactjs/components/BridgeForm/hooks/useBridgeTokenSelection.mjs +94 -96
- package/reactjs/components/BridgeForm/utils/bridgeFormHelpers.d.ts +5 -0
- package/reactjs/components/BridgeForm/utils/bridgeFormHelpers.js +1 -1
- package/reactjs/components/BridgeForm/utils/bridgeFormHelpers.mjs +7 -2
- package/reactjs/components/BridgeHistory/BridgeHistory.js +1 -1
- package/reactjs/components/BridgeHistory/BridgeHistory.mjs +1 -1
- package/reactjs/components/BridgeHistory/index.js +1 -1
- package/reactjs/components/BridgeHistory/index.mjs +1 -1
- package/reactjs/components/Connect/ChainSelectConnect.js +1 -1
- package/reactjs/components/Connect/ChainSelectConnect.mjs +3 -3
- package/reactjs/components/base/MxLoadSkeleton/MxLoadSkeleton.d.ts +1 -0
- package/reactjs/components/base/MxLoadSkeleton/MxLoadSkeleton.js +2 -0
- package/reactjs/components/base/MxLoadSkeleton/MxLoadSkeleton.mjs +24 -0
- package/reactjs/components/base/MxLoadSkeleton/index.d.ts +1 -0
- package/reactjs/components/base/MxLoadSkeleton/index.js +2 -0
- package/reactjs/components/base/MxLoadSkeleton/index.mjs +2 -0
- package/reactjs/components/base/index.d.ts +1 -0
- package/reactjs/components/base/index.js +1 -1
- package/reactjs/components/base/index.mjs +6 -4
- package/reactjs/components/index.js +1 -1
- package/reactjs/components/index.mjs +23 -22
- package/reactjs/context/Web3AppProvider.js +1 -1
- package/reactjs/context/Web3AppProvider.mjs +31 -27
- package/reactjs/hooks/index.js +1 -1
- package/reactjs/hooks/index.mjs +14 -14
- package/reactjs/hooks/useBridgeFormik.js +1 -1
- package/reactjs/hooks/useBridgeFormik.mjs +14 -14
- package/reactjs/hooks/useFetchBridgeData.js +1 -1
- package/reactjs/hooks/useFetchBridgeData.mjs +1 -1
- package/reactjs/hooks/useFetchTokens.js +1 -1
- package/reactjs/hooks/useFetchTokens.mjs +1 -1
- package/reactjs/index.js +1 -1
- package/reactjs/index.mjs +59 -58
- package/reactjs/queries/index.js +1 -1
- package/reactjs/queries/index.mjs +3 -3
- package/reactjs/queries/useGetAllTokens.query.js +1 -1
- package/reactjs/queries/useGetAllTokens.query.mjs +1 -1
- package/reactjs/queries/useGetChains.query.js +1 -1
- package/reactjs/queries/useGetChains.query.mjs +1 -1
- package/reactjs/queries/useGetMvxTokensBalances.query.d.ts +1 -2
- package/reactjs/queries/useGetMvxTokensBalances.query.js +1 -1
- package/reactjs/queries/useGetMvxTokensBalances.query.mjs +3 -3
- package/reactjs/queries/useGetNonMvxTokensBalances.query.js +1 -1
- package/reactjs/queries/useGetNonMvxTokensBalances.query.mjs +1 -1
- package/reactjs/utils/hasEnoughFunds.js +1 -1
- package/reactjs/utils/hasEnoughFunds.mjs +3 -3
- package/reactjs/utils/index.js +1 -1
- package/reactjs/utils/index.mjs +11 -11
- package/style.css +1 -1
- package/useFetchBridgeData-BUeRPF3t.js +2 -0
- package/{hooks-DMIHvAKb.mjs → useFetchBridgeData-C9hzwYG6.mjs} +20 -21
- package/BridgeHistory-0NVr8Uxp.js +0 -2
- package/hooks-SJPsZfDx.js +0 -2
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../chunk-oiTVcehM.js"),t=require("../../../constants/index.js"),ee=require("../../../helpers/getApiURL.js"),n=require("../../../helpers/safeImageUrl.js"),te=require("../../../types/chainType.js");require("../../../helpers/index.js");const ne=require("../../utils/mxClsx.js"),re=require("../base/MxButton/MxButton.js");require("../base/index.js");const ie=require("../AmountCard/AmountCard.js");require("../AmountCard/index.js");const ae=require("../AmountInput/AmountInput.js");require("../AmountInput/index.js");const oe=require("../../hooks/useAccount.js"),se=require("../../context/useWeb3App.js"),ce=require("../../../types/providerType.js"),r=require("../../hooks/useBridgeFormik.js"),i=require("../../helpers/resolveBridgeApiChainId.js"),le=require("../../hooks/useBridgeApiChainId.js"),ue=require("../../../hooks-SJPsZfDx.js"),de=require("../../hooks/useGetChainId.js"),fe=require("../../hooks/useSendTransactions.js"),pe=require("./hooks/useBridgeTokenSelection.js"),me=require("../../hooks/useDisconnectOnChainTypeChange.js"),he=require("../../hooks/useNamespaceAddress.js"),ge=require("../../queries/useGetHistory.query.js"),_e=require("../../queries/useGetRate.mutation.js"),ve=require("../../../BridgeHistory-0NVr8Uxp.js");require("../BridgeHistory/index.js");const ye=require("../Connect/BridgeConnectButton.js"),be=require("../Connect/MvxConnectButton.js"),xe=require("../Connect/BridgeAccountDisplay.js"),Se=require("../Connect/MvxAccountDisplay.js");require("../Connect/index.js");const Ce=require("../../../ToggleDirection-CZ9-ZD7Y.js"),we=require("../TokenSelector/TokenSelector.js");require("../TokenSelector/index.js");let a=require("react/jsx-runtime"),o=require("react"),Te=require("@reown/appkit/react"),Ee=require("@multiversx/sdk-dapp-utils/out/helpers/formatAmount"),s=require("lodash/debounce");s=e.n(s);let De=require("react-toastify");var c,l=({mvxChainId:e,mvxAddress:l,username:Oe,callbackRoute:ke=`/`,firstTokenIdentifier:Ae,secondTokenIdentifier:je,firstTokenAmount:u,secondTokenAmount:d,refetchTrigger:Me,showHistory:Ne,forcedDestinationTokenSymbol:Pe,onSuccessfullySentTransaction:f,onFailedSentTransaction:p,onHistoryClose:m,onMvxConnect:h,onMvxDisconnect:Fe,onNavigate:Ie,onChangeDirection:Le})=>{let Re=(0,o.useRef)(null),[g,ze]=(0,o.useState)(!1),[Be,Ve]=(0,o.useState)(1),[_,v]=(0,o.useState)(0),[y,b]=(0,o.useState)([]),He=oe.useAccount(),{switchNetwork:x}=(0,Te.useAppKitNetwork)(),S=ge.useInvalidateHistoryQuery(),{options:Ue,supportedChains:C,nativeAuthToken:w,bridgeOnly:We}=se.useWeb3App(),T=de.useGetChainId(),Ge=le.useBridgeApiChainId(),Ke=fe.useSendTransactions(),{signMvxTransactions:E,resetMvxTransactionHash:qe,latestMvxTransactionHash:D}=se.useWeb3App(),{evmTokensWithBalances:Je,mvxTokensWithBalances:Ye,isTokensLoading:Xe,isLoadingEvmTokensBalances:Ze,isLoadingMvxTokensBalances:Qe,chains:O=[],isChainsLoading:$e}=ue.t({refetchTrigger:Me,mvxAddress:l,mvxApiURL:Ue.mvxApiURL}),k=Xe||Ze||Qe||$e,et=(0,o.useMemo)(()=>C.find(e=>i.sameBridgeApiChainId(e.id,T)),[T,C]),tt=(0,o.useMemo)(()=>O.find(t=>t.chainId.toString()===e.toString()),[T,O]),{mutate:nt,data:A,isPending:j,error:rt}=_e.useGetRateMutation(),M=rt?.response?.status===400?rt?.response?.data.message:void 0,{firstToken:N,secondToken:P,fromOptions:it,toOptions:at,selectedChainOption:F,onChangeFirstSelect:ot,onChangeSecondSelect:st,handleChangeDirection:ct}=pe.useBridgeTokenSelection({chains:O,activeChain:et,sdkChains:C,switchNetwork:(0,o.useCallback)(e=>{let t=C.find(t=>i.sameBridgeApiChainId(t.id,e.id));t&&x(t)},[C,x]),fromTokens:Ye,toTokens:Je,firstTokenIdentifier:Ae,secondTokenIdentifier:je,forcedDestinationTokenSymbol:Pe,isTokensLoading:k,mvxChainId:e,callbackRoute:ke,onNavigate:Ie}),lt=()=>{ct(),Le()},[I,ut]=(0,o.useState)(u??``),[L,R]=(0,o.useState)(d??``),dt=(0,o.useMemo)(()=>N?t.MVX_CHAIN_IDS.includes(N.chainId.toString()):!1,[N?.chainId]),ft=(0,o.useMemo)(()=>P?t.MVX_CHAIN_IDS.includes(P.chainId.toString()):!1,[P?.chainId]),z=(0,o.useMemo)(()=>P?O.find(e=>i.sameBridgeApiChainId(e.chainId,P.chainId))??F:F,[P?.chainId,O,F]),B=(0,o.useMemo)(()=>i.toBridgeApiChainId(P?.chainId)??Ge,[P?.chainId,Ge]);me.useDisconnectOnChainTypeChange(z?.chainType);let V=he.useNamespaceAddress(z?.chainType),pt=V,mt=He.isConnected&&!!V,H=I!==``&&L!==``,U=(0,o.useCallback)((0,s.default)(async t=>{!t||!Number(t)||!V||!N?.address||!P?.address||!F||!B||nt({nativeAuthToken:w??``,body:{tokenIn:N.address,amountIn:t,fromChainId:e,tokenOut:P.address,toChainId:B}})},500),[V,B,N?.address,P?.address,F,e,w,nt]),W=(0,o.useCallback)(e=>{ut(()=>e)},[]),G=(0,o.useCallback)(e=>{R(()=>e)},[]),ht=(0,o.useCallback)(()=>{m?.()},[m]),gt=(0,o.useCallback)(()=>{let e=(0,Ee.formatAmount)({decimals:N?.decimals,input:N?.balance??`0`,addCommas:!1,digits:4});K.setFieldValue(`firstAmount`,e),W(e)},[N?.balance,N?.decimals,W]),_t=(0,o.useCallback)(async({transactions:e})=>{v(()=>e.length);try{if(!E)throw Error(`signMvxTransactions function is not provided`);await E(e),b(e)}catch(e){console.error(e),De.toast.dismiss(),De.toast.error(`Transaction cancelled`),p?.(`Transaction cancelled`),v(0),bt(),W(``),G(``)}},[pt,W,G,w,(0,o.useCallback)(async e=>{W(``),G(``),S(),S(),f?.(e)},[W,G,f]),E]),{formik:K,firstAmountError:q,secondAmountError:J,fromChainError:Y,senderAddressError:X,receiverAddressError:Z,confirmRateError:Q,handleBlur:$,handleChange:vt,handleSubmit:yt,resetSwapForm:bt}=r.useBridgeFormik({isMvxConnected:!!l,rate:A,sender:l??``,receiver:V??``,firstToken:N,firstAmount:I,fromChainId:e,toChainId:B,secondToken:P,secondAmount:L,setForceRefetchRate:Ve,senderChainType:te.ChainType.mvx,receiverChainType:z?.chainType,onSubmit:_t}),xt=!!(q||J||Y||M||X||Z||Q),St=(0,o.useMemo)(()=>I===``?void 0:M??q,[q,I,M]),Ct=(0,o.useMemo)(()=>L===``?void 0:Y??J,[Y,J,L]);return(0,o.useEffect)(()=>(I||R(``),U(I),c&&clearInterval(c),c=setInterval(()=>{U(I)},50*1e3),()=>clearInterval(c)),[I,Be,U]),(0,o.useEffect)(()=>{A?.amountOut&&(K.setFieldValue(r.BridgeFormikValuesEnum.secondAmount,A.amountOut),R(A.amountOut))},[A?.amountOut]),(0,o.useEffect)(()=>{M&&(K.setFieldValue(r.BridgeFormikValuesEnum.secondAmount,`0`),R(`0`))},[M]),(0,o.useEffect)(()=>{u&&(K.setFieldValue(r.BridgeFormikValuesEnum.firstAmount,u),W(u))},[]),(0,o.useEffect)(()=>{d&&(K.setFieldValue(r.BridgeFormikValuesEnum.secondAmount,d),G(d))},[d]),(0,o.useEffect)(()=>{if(D)try{let e=D;Ke({transactions:y.map(t=>({...t,txHash:e,receiver:V})),provider:A?.provider??ce.ProviderType.None,url:ee.getApiURL()??``,token:w??``}),f?.([e])}catch(e){console.error(`Error while sending transactions:`,e),p?.(`An error occurred while sending the transaction`);return}finally{qe?.(),b([])}},[D,y,V,w,p,f,A?.provider,qe,Ke]),(0,a.jsx)(a.Fragment,{children:(0,a.jsxs)(`form`,{ref:Re,noValidate:!0,className:`liq-flex liq-flex-col liq-gap-1 liq-relative`,autoComplete:`off`,onSubmit:yt,children:[Ne&&(0,a.jsx)(ve.t,{mvxAddress:l,onClose:ht}),(0,a.jsxs)(ie.AmountCard,{className:ne.mxClsx(`liq-pb-8 liq-pt-6 hover:liq-bg-neutral-700/50 sm:liq-pb-6`,{"liq-pointer-events-none":g,"focus-within:liq-outline-neutral-700/75 hover:liq-outline-neutral-700/55 hover:focus-within:liq-outline-neutral-700/80":!g}),children:[(0,a.jsxs)(`div`,{className:`liq-flex liq-items-center liq-gap-1`,children:[(0,a.jsx)(`span`,{children:`From`}),(0,a.jsx)(Se.MvxAccountDisplay,{accountAddress:l,chainIcon:n.safeImageUrl(tt?.pngUrl),username:Oe,accountExplorerUrl:`${Ue.mvxExplorerAddress}/accounts/${l}`,showTag:!0,onDisconnect:Fe,onConnect:h})]}),X&&(0,a.jsx)(`div`,{className:`liq-text-red-400 liq-text-xs liq-mt-1`,children:X}),(0,a.jsxs)(`div`,{className:`liq-flex liq-justify-between liq-gap-1`,children:[(0,a.jsx)(ae.AmountInput,{inputName:`firstAmount`,inputValue:K.values.firstAmount,amountError:St,disabled:!1,onInputDebounceChange:W,onInputChange:vt,onBlur:$}),(0,a.jsx)(we.TokenSelector,{name:`firstToken`,disabled:j,options:it,areOptionsLoading:k,isMvxSelector:dt,isDestination:!1,color:`neutral-850`,onChange:ot,onBlur:$,onMaxBtnClick:gt,selectedOption:N,onTokenSelectorDisplay:e=>ze(e)})]})]}),(0,a.jsx)(`div`,{className:`liq-absolute liq-left-[6%] liq-top-[40%] -liq-mt-1 liq-z-10`,children:We&&(0,a.jsx)(Ce.t,{onChangeDirection:lt})}),(0,a.jsxs)(ie.AmountCard,{className:ne.mxClsx(`liq-pb-8 liq-pt-6 hover:liq-bg-neutral-700/50 sm:liq-pb-6`,{"liq-pointer-events-none":g}),children:[(0,a.jsxs)(`div`,{className:`liq-flex liq-items-center liq-gap-1`,children:[(0,a.jsx)(`span`,{children:`To`}),(0,a.jsx)(xe.BridgeAccountDisplay,{disabled:j,activeChain:z})]}),Z&&(0,a.jsx)(`div`,{className:`liq-text-red-400 liq-text-xs liq-mt-1`,children:Z}),Q&&(0,a.jsx)(`div`,{className:`liq-text-red-400 liq-text-xs liq-mt-1`,children:Q}),(0,a.jsxs)(`div`,{className:`liq-flex liq-justify-between liq-gap-1`,children:[(0,a.jsx)(ae.AmountInput,{inputName:`secondAmount`,inputValue:K.values.secondAmount,amountError:Ct,disabled:!1,onInputDebounceChange:G,onInputChange:vt,onBlur:$}),(0,a.jsx)(we.TokenSelector,{name:`secondToken`,disabled:j,omitDisableClass:!0,options:at,areOptionsLoading:k,isMvxSelector:ft,color:`neutral-850`,onChange:st,onBlur:$,selectedOption:P})]})]}),(0,a.jsxs)(`div`,{className:`liq-flex liq-items-center liq-justify-center`,children:[!l&&(0,a.jsx)(be.MvxConnectButton,{mvxAccountAddress:l,icon:n.safeImageUrl(tt?.pngUrl),onClick:h}),l&&!mt&&(0,a.jsx)(ye.BridgeConnectButton,{className:`liq-w-full liq-rounded-xl liq-bg-neutral-850/50 liq-px-8 liq-py-3 liq-font-semibold liq-text-primary-200 liq-transition-colors liq-duration-200 hover:enabled:liq-bg-primary-700/80 disabled:liq-opacity-50`,disabled:j,activeChain:z}),l&&mt&&(0,a.jsxs)(re.MxButton,{"data-testid":`submit-button`,type:`submit`,variant:`neutral-850`,className:`liq-w-full disabled:liq-bg-neutral-850/50 liq-py-3 hover:enabled:liq-bg-primary !liq-text-primary-200`,disabled:!H||j||!l||!V||xt,children:[H&&(0,a.jsxs)(`div`,{className:`liq-flex liq-justify-center liq-items-center liq-gap-2`,children:[(0,a.jsx)(`div`,{children:`Transfer to `}),(0,a.jsx)(`img`,{src:n.safeImageUrl(z?.pngUrl),alt:``,className:`liq-h-[1.5rem] liq-w-[1.5rem] liq-rounded-lg`}),(0,a.jsx)(`div`,{children:z?.networkName})]}),!H&&(0,a.jsx)(`span`,{className:`liq-text-neutral-100`,children:`Enter amount`})]})]}),V&&_>0&&(0,a.jsx)(`div`,{className:`liq-flex liq-items-center liq-justify-center liq-text-neutral-300 liq-text-sm`,children:(0,a.jsxs)(`div`,{children:[`You will be asked to sign `,_,` `,_>1?`transactions`:`transaction`,` `,`on your wallet`]})})]})})};exports.Transfer=l;
|
|
2
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../chunk-oiTVcehM.js"),t=require("../../../constants/index.js"),ee=require("../../../helpers/getApiURL.js"),n=require("../../../helpers/safeImageUrl.js"),te=require("../../../types/chainType.js");require("../../../helpers/index.js");const ne=require("../../utils/mxClsx.js"),re=require("../base/MxButton/MxButton.js");require("../base/index.js");const ie=require("../AmountCard/AmountCard.js");require("../AmountCard/index.js");const ae=require("../AmountInput/AmountInput.js");require("../AmountInput/index.js");const r=require("../../helpers/resolveBridgeApiChainId.js"),oe=require("./hooks/useBridgeTokenSelection.js"),se=require("../../context/useWeb3App.js"),ce=require("../../hooks/useAccount.js"),le=require("../../hooks/useBridgeApiChainId.js"),ue=require("../../../types/providerType.js"),i=require("../../hooks/useBridgeFormik.js"),de=require("../../hooks/useDisconnectOnChainTypeChange.js"),fe=require("../../hooks/useGetChainId.js"),pe=require("../../hooks/useSendTransactions.js"),me=require("../../../useFetchBridgeData-BUeRPF3t.js"),he=require("../../hooks/useNamespaceAddress.js"),ge=require("../../queries/useGetHistory.query.js"),_e=require("../../queries/useGetRate.mutation.js"),ve=require("../../../BridgeHistory-D3Zg2V1U.js");require("../BridgeHistory/index.js");const ye=require("../Connect/BridgeConnectButton.js"),be=require("../Connect/MvxConnectButton.js"),xe=require("../Connect/BridgeAccountDisplay.js"),Se=require("../Connect/MvxAccountDisplay.js");require("../Connect/index.js");const Ce=require("../../../ToggleDirection-CZ9-ZD7Y.js"),we=require("../TokenSelector/TokenSelector.js");require("../TokenSelector/index.js");let a=require("react/jsx-runtime"),o=require("react"),Te=require("@multiversx/sdk-dapp-utils/out/helpers/formatAmount"),Ee=require("@reown/appkit/react"),s=require("lodash/debounce");s=e.n(s);let De=require("react-toastify");var c,l=({mvxChainId:e,mvxAddress:l,username:Oe,callbackRoute:ke=`/`,firstTokenIdentifier:Ae,secondTokenIdentifier:je,firstTokenAmount:u,secondTokenAmount:d,refetchTrigger:Me,showHistory:Ne,forcedDestinationTokenSymbol:Pe,onSuccessfullySentTransaction:f,onFailedSentTransaction:p,onHistoryClose:m,onMvxConnect:h,onMvxDisconnect:Fe,onNavigate:Ie,onChangeDirection:Le})=>{let Re=(0,o.useRef)(null),[g,ze]=(0,o.useState)(!1),[Be,Ve]=(0,o.useState)(1),[_,v]=(0,o.useState)(0),[y,b]=(0,o.useState)([]),He=ce.useAccount(),{switchNetwork:x}=(0,Ee.useAppKitNetwork)(),S=ge.useInvalidateHistoryQuery(),{options:Ue,supportedChains:C,nativeAuthToken:w,bridgeOnly:We}=se.useWeb3App(),T=fe.useGetChainId(),Ge=le.useBridgeApiChainId(),Ke=pe.useSendTransactions(),{signMvxTransactions:E,resetMvxTransactionHash:qe,latestMvxTransactionHash:D}=se.useWeb3App(),{evmTokensWithBalances:Je,mvxTokensWithBalances:Ye,isTokensLoading:Xe,isLoadingEvmTokensBalances:Ze,isLoadingMvxTokensBalances:Qe,chains:O=[],isChainsLoading:$e}=me.t({refetchTrigger:Me,mvxAddress:l,mvxApiURL:Ue.mvxApiURL}),k=Xe||Ze||Qe||$e,et=(0,o.useMemo)(()=>C.find(e=>r.sameBridgeApiChainId(e.id,T)),[T,C]),tt=(0,o.useMemo)(()=>O.find(t=>t.chainId.toString()===e.toString()),[T,O]),{mutate:nt,data:A,isPending:j,error:rt}=_e.useGetRateMutation(),M=rt?.response?.status===400?rt?.response?.data.message:void 0,{firstToken:N,secondToken:P,fromOptions:it,toOptions:at,selectedChainOption:F,onChangeFirstSelect:ot,onChangeSecondSelect:st,handleChangeDirection:ct}=oe.useBridgeTokenSelection({chains:O,activeChain:et,sdkChains:C,switchNetwork:(0,o.useCallback)(e=>{let t=C.find(t=>r.sameBridgeApiChainId(t.id,e.id));t&&x(t)},[C,x]),fromTokens:Ye,toTokens:Je,firstTokenIdentifier:Ae,secondTokenIdentifier:je,forcedDestinationTokenSymbol:Pe,isTokensLoading:k,mvxChainId:e,callbackRoute:ke,onNavigate:Ie}),lt=()=>{ct(),Le()},[I,ut]=(0,o.useState)(u??``),[L,R]=(0,o.useState)(d??``),dt=(0,o.useMemo)(()=>N?t.MVX_CHAIN_IDS.includes(N.chainId.toString()):!1,[N?.chainId]),ft=(0,o.useMemo)(()=>P?t.MVX_CHAIN_IDS.includes(P.chainId.toString()):!1,[P?.chainId]),z=(0,o.useMemo)(()=>P?O.find(e=>r.sameBridgeApiChainId(e.chainId,P.chainId))??F:F,[P?.chainId,O,F]),B=(0,o.useMemo)(()=>r.toBridgeApiChainId(P?.chainId)??Ge,[P?.chainId,Ge]);de.useDisconnectOnChainTypeChange(z?.chainType);let V=he.useNamespaceAddress(z?.chainType),pt=V,mt=He.isConnected&&!!V,H=I!==``&&L!==``,U=(0,o.useCallback)((0,s.default)(async t=>{!t||!Number(t)||!V||!N?.address||!P?.address||!F||!B||nt({nativeAuthToken:w??``,body:{tokenIn:N.address,amountIn:t,fromChainId:e,tokenOut:P.address,toChainId:B}})},500),[V,B,N?.address,P?.address,F,e,w,nt]),W=(0,o.useCallback)(e=>{ut(()=>e)},[]),G=(0,o.useCallback)(e=>{R(()=>e)},[]),ht=(0,o.useCallback)(()=>{m?.()},[m]),gt=(0,o.useCallback)(()=>{let e=(0,Te.formatAmount)({decimals:N?.decimals,input:N?.balance??`0`,addCommas:!1,digits:4});K.setFieldValue(`firstAmount`,e),W(e)},[N?.balance,N?.decimals,W]),_t=(0,o.useCallback)(async({transactions:e})=>{v(()=>e.length);try{if(!E)throw Error(`signMvxTransactions function is not provided`);await E(e),b(e)}catch(e){console.error(e),De.toast.dismiss(),De.toast.error(`Transaction cancelled`),p?.(`Transaction cancelled`),v(0),bt(),W(``),G(``)}},[pt,W,G,w,(0,o.useCallback)(async e=>{W(``),G(``),S(),S(),f?.(e)},[W,G,f]),E]),{formik:K,firstAmountError:q,secondAmountError:J,fromChainError:Y,senderAddressError:X,receiverAddressError:Z,confirmRateError:Q,handleBlur:$,handleChange:vt,handleSubmit:yt,resetSwapForm:bt}=i.useBridgeFormik({isMvxConnected:!!l,rate:A,sender:l??``,receiver:V??``,firstToken:N,firstAmount:I,fromChainId:e,toChainId:B,secondToken:P,secondAmount:L,setForceRefetchRate:Ve,senderChainType:te.ChainType.mvx,receiverChainType:z?.chainType,onSubmit:_t}),xt=!!(q||J||Y||M||X||Z||Q),St=(0,o.useMemo)(()=>I===``?void 0:M??q,[q,I,M]),Ct=(0,o.useMemo)(()=>L===``?void 0:Y??J,[Y,J,L]);return(0,o.useEffect)(()=>(I||R(``),U(I),c&&clearInterval(c),c=setInterval(()=>{U(I)},50*1e3),()=>clearInterval(c)),[I,Be,U]),(0,o.useEffect)(()=>{A?.amountOut&&(K.setFieldValue(i.BridgeFormikValuesEnum.secondAmount,A.amountOut),R(A.amountOut))},[A?.amountOut]),(0,o.useEffect)(()=>{M&&(K.setFieldValue(i.BridgeFormikValuesEnum.secondAmount,`0`),R(`0`))},[M]),(0,o.useEffect)(()=>{u&&(K.setFieldValue(i.BridgeFormikValuesEnum.firstAmount,u),W(u))},[]),(0,o.useEffect)(()=>{d&&(K.setFieldValue(i.BridgeFormikValuesEnum.secondAmount,d),G(d))},[d]),(0,o.useEffect)(()=>{if(D)try{let e=D;Ke({transactions:y.map(t=>({...t,txHash:e,receiver:V})),provider:A?.provider??ue.ProviderType.None,url:ee.getApiURL()??``,token:w??``}),f?.([e])}catch(e){console.error(`Error while sending transactions:`,e),p?.(`An error occurred while sending the transaction`);return}finally{qe?.(),b([])}},[D,y,V,w,p,f,A?.provider,qe,Ke]),(0,a.jsx)(a.Fragment,{children:(0,a.jsxs)(`form`,{ref:Re,noValidate:!0,className:`liq-flex liq-flex-col liq-gap-1 liq-relative`,autoComplete:`off`,onSubmit:yt,children:[Ne&&(0,a.jsx)(ve.t,{mvxAddress:l,onClose:ht}),(0,a.jsxs)(ie.AmountCard,{className:ne.mxClsx(`liq-pb-8 liq-pt-6 hover:liq-bg-neutral-700/50 sm:liq-pb-6`,{"liq-pointer-events-none":g,"focus-within:liq-outline-neutral-700/75 hover:liq-outline-neutral-700/55 hover:focus-within:liq-outline-neutral-700/80":!g}),children:[(0,a.jsxs)(`div`,{className:`liq-flex liq-items-center liq-gap-1`,children:[(0,a.jsx)(`span`,{children:`From`}),(0,a.jsx)(Se.MvxAccountDisplay,{accountAddress:l,chainIcon:n.safeImageUrl(tt?.pngUrl),username:Oe,accountExplorerUrl:`${Ue.mvxExplorerAddress}/accounts/${l}`,showTag:!0,onDisconnect:Fe,onConnect:h})]}),X&&(0,a.jsx)(`div`,{className:`liq-text-red-400 liq-text-xs liq-mt-1`,children:X}),(0,a.jsxs)(`div`,{className:`liq-flex liq-justify-between liq-gap-1`,children:[(0,a.jsx)(ae.AmountInput,{inputName:`firstAmount`,inputValue:K.values.firstAmount,amountError:St,disabled:!1,onInputDebounceChange:W,onInputChange:vt,onBlur:$}),(0,a.jsx)(we.TokenSelector,{name:`firstToken`,disabled:j,options:it,areOptionsLoading:k,isMvxSelector:dt,isDestination:!1,color:`neutral-850`,onChange:ot,onBlur:$,onMaxBtnClick:gt,selectedOption:N,onTokenSelectorDisplay:e=>ze(e)})]})]}),(0,a.jsx)(`div`,{className:`liq-absolute liq-left-[6%] liq-top-[40%] -liq-mt-1 liq-z-10`,children:We&&(0,a.jsx)(Ce.t,{onChangeDirection:lt})}),(0,a.jsxs)(ie.AmountCard,{className:ne.mxClsx(`liq-pb-8 liq-pt-6 hover:liq-bg-neutral-700/50 sm:liq-pb-6`,{"liq-pointer-events-none":g}),children:[(0,a.jsxs)(`div`,{className:`liq-flex liq-items-center liq-gap-1`,children:[(0,a.jsx)(`span`,{children:`To`}),(0,a.jsx)(xe.BridgeAccountDisplay,{disabled:j,activeChain:z})]}),Z&&(0,a.jsx)(`div`,{className:`liq-text-red-400 liq-text-xs liq-mt-1`,children:Z}),Q&&(0,a.jsx)(`div`,{className:`liq-text-red-400 liq-text-xs liq-mt-1`,children:Q}),(0,a.jsxs)(`div`,{className:`liq-flex liq-justify-between liq-gap-1`,children:[(0,a.jsx)(ae.AmountInput,{inputName:`secondAmount`,inputValue:K.values.secondAmount,amountError:Ct,disabled:!1,onInputDebounceChange:G,onInputChange:vt,onBlur:$}),(0,a.jsx)(we.TokenSelector,{name:`secondToken`,disabled:j,omitDisableClass:!0,options:at,areOptionsLoading:k,isMvxSelector:ft,color:`neutral-850`,onChange:st,onBlur:$,selectedOption:P})]})]}),(0,a.jsxs)(`div`,{className:`liq-flex liq-items-center liq-justify-center`,children:[!l&&(0,a.jsx)(be.MvxConnectButton,{mvxAccountAddress:l,icon:n.safeImageUrl(tt?.pngUrl),onClick:h}),l&&!mt&&(0,a.jsx)(ye.BridgeConnectButton,{className:`liq-w-full liq-rounded-xl liq-bg-neutral-850/50 liq-px-8 liq-py-3 liq-font-semibold liq-text-primary-200 liq-transition-colors liq-duration-200 hover:enabled:liq-bg-primary-700/80 disabled:liq-opacity-50`,disabled:j,activeChain:z}),l&&mt&&(0,a.jsxs)(re.MxButton,{"data-testid":`submit-button`,type:`submit`,variant:`neutral-850`,className:`liq-w-full disabled:liq-bg-neutral-850/50 liq-py-3 hover:enabled:liq-bg-primary !liq-text-primary-200`,disabled:!H||j||!l||!V||xt,children:[H&&(0,a.jsxs)(`div`,{className:`liq-flex liq-justify-center liq-items-center liq-gap-2`,children:[(0,a.jsx)(`div`,{children:`Transfer to `}),(0,a.jsx)(`img`,{src:n.safeImageUrl(z?.pngUrl),alt:``,className:`liq-h-[1.5rem] liq-w-[1.5rem] liq-rounded-lg`}),(0,a.jsx)(`div`,{children:z?.networkName})]}),!H&&(0,a.jsx)(`span`,{className:`liq-text-neutral-100`,children:`Enter amount`})]})]}),V&&_>0&&(0,a.jsx)(`div`,{className:`liq-flex liq-items-center liq-justify-center liq-text-neutral-300 liq-text-sm`,children:(0,a.jsxs)(`div`,{children:[`You will be asked to sign `,_,` `,_>1?`transactions`:`transaction`,` `,`on your wallet`]})})]})})};exports.Transfer=l;
|
|
@@ -10,21 +10,21 @@ import { AmountCard as re } from "../AmountCard/AmountCard.mjs";
|
|
|
10
10
|
import "../AmountCard/index.mjs";
|
|
11
11
|
import { AmountInput as ie } from "../AmountInput/AmountInput.mjs";
|
|
12
12
|
import "../AmountInput/index.mjs";
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
13
|
+
import { sameBridgeApiChainId as r, toBridgeApiChainId as ae } from "../../helpers/resolveBridgeApiChainId.mjs";
|
|
14
|
+
import { useBridgeTokenSelection as oe } from "./hooks/useBridgeTokenSelection.mjs";
|
|
15
|
+
import { useWeb3App as se } from "../../context/useWeb3App.mjs";
|
|
16
|
+
import { useAccount as ce } from "../../hooks/useAccount.mjs";
|
|
17
|
+
import { useBridgeApiChainId as le } from "../../hooks/useBridgeApiChainId.mjs";
|
|
18
|
+
import { ProviderType as ue } from "../../../types/providerType.mjs";
|
|
19
|
+
import { BridgeFormikValuesEnum as i, useBridgeFormik as de } from "../../hooks/useBridgeFormik.mjs";
|
|
20
|
+
import { useDisconnectOnChainTypeChange as fe } from "../../hooks/useDisconnectOnChainTypeChange.mjs";
|
|
21
|
+
import { useGetChainId as pe } from "../../hooks/useGetChainId.mjs";
|
|
22
|
+
import { useSendTransactions as me } from "../../hooks/useSendTransactions.mjs";
|
|
23
|
+
import { t as he } from "../../../useFetchBridgeData-C9hzwYG6.mjs";
|
|
24
24
|
import { useNamespaceAddress as ge } from "../../hooks/useNamespaceAddress.mjs";
|
|
25
25
|
import { useInvalidateHistoryQuery as _e } from "../../queries/useGetHistory.query.mjs";
|
|
26
26
|
import { useGetRateMutation as ve } from "../../queries/useGetRate.mutation.mjs";
|
|
27
|
-
import { t as ye } from "../../../BridgeHistory-
|
|
27
|
+
import { t as ye } from "../../../BridgeHistory-B86lT8s-.mjs";
|
|
28
28
|
import "../BridgeHistory/index.mjs";
|
|
29
29
|
import { BridgeConnectButton as be } from "../Connect/BridgeConnectButton.mjs";
|
|
30
30
|
import { MvxConnectButton as xe } from "../Connect/MvxConnectButton.mjs";
|
|
@@ -36,43 +36,43 @@ import { TokenSelector as Te } from "../TokenSelector/TokenSelector.mjs";
|
|
|
36
36
|
import "../TokenSelector/index.mjs";
|
|
37
37
|
import { Fragment as Ee, jsx as a, jsxs as o } from "react/jsx-runtime";
|
|
38
38
|
import { useCallback as s, useEffect as c, useMemo as l, useRef as De, useState as u } from "react";
|
|
39
|
-
import {
|
|
40
|
-
import {
|
|
39
|
+
import { formatAmount as Oe } from "@multiversx/sdk-dapp-utils/out/helpers/formatAmount";
|
|
40
|
+
import { useAppKitNetwork as ke } from "@reown/appkit/react";
|
|
41
41
|
import Ae from "lodash/debounce";
|
|
42
42
|
import { toast as je } from "react-toastify";
|
|
43
43
|
//#region src/reactjs/components/BridgeForm/Transfer.tsx
|
|
44
44
|
var d, f = ({ mvxChainId: f, mvxAddress: p, username: Me, callbackRoute: Ne = "/", firstTokenIdentifier: Pe, secondTokenIdentifier: Fe, firstTokenAmount: m, secondTokenAmount: h, refetchTrigger: Ie, showHistory: Le, forcedDestinationTokenSymbol: Re, onSuccessfullySentTransaction: g, onFailedSentTransaction: _, onHistoryClose: v, onMvxConnect: ze, onMvxDisconnect: Be, onNavigate: Ve, onChangeDirection: He }) => {
|
|
45
|
-
let Ue = De(null), [y, We] = u(!1), [Ge, Ke] = u(1), [b, qe] = u(0), [Je, Ye] = u([]), Xe =
|
|
45
|
+
let Ue = De(null), [y, We] = u(!1), [Ge, Ke] = u(1), [b, qe] = u(0), [Je, Ye] = u([]), Xe = ce(), { switchNetwork: Ze } = ke(), Qe = _e(), { options: $e, supportedChains: x, nativeAuthToken: S, bridgeOnly: et } = se(), C = pe(), tt = le(), nt = me(), { signMvxTransactions: w, resetMvxTransactionHash: rt, latestMvxTransactionHash: T } = se(), { evmTokensWithBalances: it, mvxTokensWithBalances: at, isTokensLoading: ot, isLoadingEvmTokensBalances: st, isLoadingMvxTokensBalances: ct, chains: E = [], isChainsLoading: lt } = he({
|
|
46
46
|
refetchTrigger: Ie,
|
|
47
47
|
mvxAddress: p,
|
|
48
48
|
mvxApiURL: $e.mvxApiURL
|
|
49
|
-
}),
|
|
50
|
-
chains:
|
|
51
|
-
activeChain:
|
|
49
|
+
}), D = ot || st || ct || lt, ut = l(() => x.find((e) => r(e.id, C)), [C, x]), dt = l(() => E.find((e) => e.chainId.toString() === f.toString()), [C, E]), { mutate: O, data: k, isPending: A, error: ft } = ve(), j = ft?.response?.status === 400 ? ft?.response?.data.message : void 0, { firstToken: M, secondToken: N, fromOptions: pt, toOptions: mt, selectedChainOption: P, onChangeFirstSelect: ht, onChangeSecondSelect: gt, handleChangeDirection: _t } = oe({
|
|
50
|
+
chains: E,
|
|
51
|
+
activeChain: ut,
|
|
52
52
|
sdkChains: x,
|
|
53
53
|
switchNetwork: s((e) => {
|
|
54
|
-
let t = x.find((t) =>
|
|
54
|
+
let t = x.find((t) => r(t.id, e.id));
|
|
55
55
|
t && Ze(t);
|
|
56
56
|
}, [x, Ze]),
|
|
57
|
-
fromTokens:
|
|
58
|
-
toTokens:
|
|
57
|
+
fromTokens: at,
|
|
58
|
+
toTokens: it,
|
|
59
59
|
firstTokenIdentifier: Pe,
|
|
60
60
|
secondTokenIdentifier: Fe,
|
|
61
61
|
forcedDestinationTokenSymbol: Re,
|
|
62
|
-
isTokensLoading:
|
|
62
|
+
isTokensLoading: D,
|
|
63
63
|
mvxChainId: f,
|
|
64
64
|
callbackRoute: Ne,
|
|
65
65
|
onNavigate: Ve
|
|
66
66
|
}), vt = () => {
|
|
67
67
|
_t(), He();
|
|
68
|
-
}, [F, yt] = u(m ?? ""), [I, L] = u(h ?? ""), bt = l(() => M ? e.includes(M.chainId.toString()) : !1, [M?.chainId]), xt = l(() => N ? e.includes(N.chainId.toString()) : !1, [N?.chainId]), R = l(() => N ?
|
|
68
|
+
}, [F, yt] = u(m ?? ""), [I, L] = u(h ?? ""), bt = l(() => M ? e.includes(M.chainId.toString()) : !1, [M?.chainId]), xt = l(() => N ? e.includes(N.chainId.toString()) : !1, [N?.chainId]), R = l(() => N ? E.find((e) => r(e.chainId, N.chainId)) ?? P : P, [
|
|
69
69
|
N?.chainId,
|
|
70
|
-
|
|
70
|
+
E,
|
|
71
71
|
P
|
|
72
|
-
]), z = l(() =>
|
|
73
|
-
|
|
72
|
+
]), z = l(() => ae(N?.chainId) ?? tt, [N?.chainId, tt]);
|
|
73
|
+
fe(R?.chainType);
|
|
74
74
|
let B = ge(R?.chainType), St = B, Ct = Xe.isConnected && !!B, V = F !== "" && I !== "", H = s(Ae(async (e) => {
|
|
75
|
-
!e || !Number(e) || !B || !M?.address || !N?.address || !P || !z ||
|
|
75
|
+
!e || !Number(e) || !B || !M?.address || !N?.address || !P || !z || O({
|
|
76
76
|
nativeAuthToken: S ?? "",
|
|
77
77
|
body: {
|
|
78
78
|
tokenIn: M.address,
|
|
@@ -90,7 +90,7 @@ var d, f = ({ mvxChainId: f, mvxAddress: p, username: Me, callbackRoute: Ne = "/
|
|
|
90
90
|
P,
|
|
91
91
|
f,
|
|
92
92
|
S,
|
|
93
|
-
|
|
93
|
+
O
|
|
94
94
|
]), U = s((e) => {
|
|
95
95
|
yt(() => e);
|
|
96
96
|
}, []), W = s((e) => {
|
|
@@ -98,7 +98,7 @@ var d, f = ({ mvxChainId: f, mvxAddress: p, username: Me, callbackRoute: Ne = "/
|
|
|
98
98
|
}, []), wt = s(() => {
|
|
99
99
|
v?.();
|
|
100
100
|
}, [v]), Tt = s(() => {
|
|
101
|
-
let e =
|
|
101
|
+
let e = Oe({
|
|
102
102
|
decimals: M?.decimals,
|
|
103
103
|
input: M?.balance ?? "0",
|
|
104
104
|
addCommas: !1,
|
|
@@ -130,7 +130,7 @@ var d, f = ({ mvxChainId: f, mvxAddress: p, username: Me, callbackRoute: Ne = "/
|
|
|
130
130
|
g
|
|
131
131
|
]),
|
|
132
132
|
w
|
|
133
|
-
]), { formik: G, firstAmountError: K, secondAmountError: q, fromChainError: J, senderAddressError: Y, receiverAddressError: X, confirmRateError: Z, handleBlur: Q, handleChange: $, handleSubmit: Dt, resetSwapForm: Ot } =
|
|
133
|
+
]), { formik: G, firstAmountError: K, secondAmountError: q, fromChainError: J, senderAddressError: Y, receiverAddressError: X, confirmRateError: Z, handleBlur: Q, handleChange: $, handleSubmit: Dt, resetSwapForm: Ot } = de({
|
|
134
134
|
isMvxConnected: !!p,
|
|
135
135
|
rate: k,
|
|
136
136
|
sender: p ?? "",
|
|
@@ -161,23 +161,23 @@ var d, f = ({ mvxChainId: f, mvxAddress: p, username: Me, callbackRoute: Ne = "/
|
|
|
161
161
|
Ge,
|
|
162
162
|
H
|
|
163
163
|
]), c(() => {
|
|
164
|
-
k?.amountOut && (G.setFieldValue(
|
|
164
|
+
k?.amountOut && (G.setFieldValue(i.secondAmount, k.amountOut), L(k.amountOut));
|
|
165
165
|
}, [k?.amountOut]), c(() => {
|
|
166
|
-
j && (G.setFieldValue(
|
|
166
|
+
j && (G.setFieldValue(i.secondAmount, "0"), L("0"));
|
|
167
167
|
}, [j]), c(() => {
|
|
168
|
-
m && (G.setFieldValue(
|
|
168
|
+
m && (G.setFieldValue(i.firstAmount, m), U(m));
|
|
169
169
|
}, []), c(() => {
|
|
170
|
-
h && (G.setFieldValue(
|
|
170
|
+
h && (G.setFieldValue(i.secondAmount, h), W(h));
|
|
171
171
|
}, [h]), c(() => {
|
|
172
|
-
if (
|
|
173
|
-
let e =
|
|
172
|
+
if (T) try {
|
|
173
|
+
let e = T;
|
|
174
174
|
nt({
|
|
175
175
|
transactions: Je.map((t) => ({
|
|
176
176
|
...t,
|
|
177
177
|
txHash: e,
|
|
178
178
|
receiver: B
|
|
179
179
|
})),
|
|
180
|
-
provider: k?.provider ??
|
|
180
|
+
provider: k?.provider ?? ue.None,
|
|
181
181
|
url: t() ?? "",
|
|
182
182
|
token: S ?? ""
|
|
183
183
|
}), g?.([e]);
|
|
@@ -185,17 +185,17 @@ var d, f = ({ mvxChainId: f, mvxAddress: p, username: Me, callbackRoute: Ne = "/
|
|
|
185
185
|
console.error("Error while sending transactions:", e), _?.("An error occurred while sending the transaction");
|
|
186
186
|
return;
|
|
187
187
|
} finally {
|
|
188
|
-
|
|
188
|
+
rt?.(), Ye([]);
|
|
189
189
|
}
|
|
190
190
|
}, [
|
|
191
|
-
|
|
191
|
+
T,
|
|
192
192
|
Je,
|
|
193
193
|
B,
|
|
194
194
|
S,
|
|
195
195
|
_,
|
|
196
196
|
g,
|
|
197
197
|
k?.provider,
|
|
198
|
-
|
|
198
|
+
rt,
|
|
199
199
|
nt
|
|
200
200
|
]), /* @__PURE__ */ a(Ee, { children: /* @__PURE__ */ o("form", {
|
|
201
201
|
ref: Ue,
|
|
@@ -218,7 +218,7 @@ var d, f = ({ mvxChainId: f, mvxAddress: p, username: Me, callbackRoute: Ne = "/
|
|
|
218
218
|
className: "liq-flex liq-items-center liq-gap-1",
|
|
219
219
|
children: [/* @__PURE__ */ a("span", { children: "From" }), /* @__PURE__ */ a(Ce, {
|
|
220
220
|
accountAddress: p,
|
|
221
|
-
chainIcon: n(
|
|
221
|
+
chainIcon: n(dt?.pngUrl),
|
|
222
222
|
username: Me,
|
|
223
223
|
accountExplorerUrl: `${$e.mvxExplorerAddress}/accounts/${p}`,
|
|
224
224
|
showTag: !0,
|
|
@@ -244,7 +244,7 @@ var d, f = ({ mvxChainId: f, mvxAddress: p, username: Me, callbackRoute: Ne = "/
|
|
|
244
244
|
name: "firstToken",
|
|
245
245
|
disabled: A,
|
|
246
246
|
options: pt,
|
|
247
|
-
areOptionsLoading:
|
|
247
|
+
areOptionsLoading: D,
|
|
248
248
|
isMvxSelector: bt,
|
|
249
249
|
isDestination: !1,
|
|
250
250
|
color: "neutral-850",
|
|
@@ -294,7 +294,7 @@ var d, f = ({ mvxChainId: f, mvxAddress: p, username: Me, callbackRoute: Ne = "/
|
|
|
294
294
|
disabled: A,
|
|
295
295
|
omitDisableClass: !0,
|
|
296
296
|
options: mt,
|
|
297
|
-
areOptionsLoading:
|
|
297
|
+
areOptionsLoading: D,
|
|
298
298
|
isMvxSelector: xt,
|
|
299
299
|
color: "neutral-850",
|
|
300
300
|
onChange: gt,
|
|
@@ -309,7 +309,7 @@ var d, f = ({ mvxChainId: f, mvxAddress: p, username: Me, callbackRoute: Ne = "/
|
|
|
309
309
|
children: [
|
|
310
310
|
!p && /* @__PURE__ */ a(xe, {
|
|
311
311
|
mvxAccountAddress: p,
|
|
312
|
-
icon: n(
|
|
312
|
+
icon: n(dt?.pngUrl),
|
|
313
313
|
onClick: ze
|
|
314
314
|
}),
|
|
315
315
|
p && !Ct && /* @__PURE__ */ a(be, {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../
|
|
2
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../utils/getInitialTokens.js"),t=require("../../../helpers/resolveBridgeApiChainId.js"),n=require("../utils/bridgeFormHelpers.js");let r=require("react");var i=({chains:i,firstTokenIdentifier:a,secondTokenIdentifier:o,fromTokens:s,toTokens:c,isTokensLoading:l,activeChainId:u,mvxChainId:d,callbackRoute:f,forcedDestinationTokenSymbol:p,onNavigate:m,switchNetwork:h,sdkChains:g,activeChain:_})=>{let v=(0,r.useRef)(!1),[y,b]=(0,r.useState)(),[x,S]=(0,r.useState)(),C=(0,r.useMemo)(()=>s?.filter(e=>d?e.chainId.toString().toLowerCase()===d.toString().toLowerCase():!0).map(e=>({...e,identifier:e.address,ticker:e.symbol}))??[],[s,d]),w=(0,r.useCallback)(e=>n.getAvailableTokens(e,c,p),[c,p]),T=(0,r.useMemo)(()=>y?n.getAvailableTokens(y,c,p).map(e=>({...e,identifier:e.address,ticker:e.symbol})):[],[y,c,p]),E=(0,r.useMemo)(()=>{let e=d?x:y;return e&&i?.find(n=>t.sameBridgeApiChainId(n.chainId,e.chainId))||i?.find(e=>t.sameBridgeApiChainId(e.chainId,_?.id))||((d?y&&i?.find(e=>t.sameBridgeApiChainId(e.chainId,y.chainId)):x&&i?.find(e=>t.sameBridgeApiChainId(e.chainId,x.chainId)))??i?.[0])},[_?.id,i,y?.chainId,d,x?.chainId]),D=(0,r.useCallback)(e=>n.getDefaultReceivingToken(e,c),[c]),O=(0,r.useCallback)(({firstTokenId:e,secondTokenId:t})=>{n.updateUrlParams({firstTokenId:e,secondTokenId:t,callbackRoute:f,isTokensLoading:l,onNavigate:m})},[f,l,m]),k=(0,r.useCallback)(e=>{if(!e)return;b(e),O({firstTokenId:e.address});let t=n.findPairedToken(e,c,p)??D(w(e));t&&(S(t),O({secondTokenId:t.address}))},[w,D,O,c,p]),A=(0,r.useCallback)(e=>{if(!e)return;S(e),O({secondTokenId:e.address});let t=C.find(t=>t.symbol.toLowerCase()===e.symbol.toLowerCase());t&&(b(t),O({firstTokenId:t.address}))},[C,O]),j=(0,r.useCallback)(()=>{if(!y||!x)return;b(x),S(y),O({firstTokenId:x.address,secondTokenId:y.address});let e=g?.find(e=>t.sameBridgeApiChainId(e.id,x.chainId));e&&h&&h(e)},[y,x,O,g,h]);return(0,r.useEffect)(()=>{if(l||v.current||!C.length)return;if(y&&x){v.current=!0;return}let r=e.getInitialTokens({firstTokenId:a,secondTokenId:o}),i=C.find(({identifier:e})=>r?.firstTokenId?.toLowerCase()===e.toLowerCase())??C.find(e=>t.sameBridgeApiChainId(e.chainId,u))??C[0],s=(i&&n.findPairedToken(i,c,p))??D(i?w(i):[]);if(y&&x&&y?.address?.toLowerCase()===i?.address?.toLowerCase()&&x?.address?.toLowerCase()===s?.address?.toLowerCase())return;let d=!1;if(i){b(i),O({firstTokenId:i.address});let e=g?.find(e=>t.sameBridgeApiChainId(e.id,i.chainId))??_;e&&h&&h(e),d=!0}s&&(S(s),O({secondTokenId:s.address}),d&&=!0),v.current=d},[l,C,c,a,o,u,p,w,D,O,g,_,h]),(0,r.useEffect)(()=>{let e=s?.find(e=>e.address.toLowerCase()===y?.address?.toLowerCase());e&&b(t=>t&&{...t,balance:e.balance})},[s,y?.address]),(0,r.useEffect)(()=>{let e=c?.find(e=>e.address.toLowerCase()===x?.address?.toLowerCase());e&&S(t=>t&&{...t,balance:e.balance})},[c,x?.address]),{firstToken:y,secondToken:x,fromOptions:C,toOptions:T,selectedChainOption:E,setFirstToken:b,setSecondToken:S,onChangeFirstSelect:k,onChangeSecondSelect:A,handleChangeDirection:j,updateUrlParams:O}};exports.useBridgeTokenSelection=i;
|
|
@@ -1,132 +1,130 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { useCallback as
|
|
1
|
+
import { getInitialTokens as e } from "../../../utils/getInitialTokens.mjs";
|
|
2
|
+
import { sameBridgeApiChainId as t } from "../../../helpers/resolveBridgeApiChainId.mjs";
|
|
3
|
+
import { findPairedToken as n, getAvailableTokens as r, getDefaultReceivingToken as i, updateUrlParams as a } from "../utils/bridgeFormHelpers.mjs";
|
|
4
|
+
import { useCallback as o, useEffect as s, useMemo as c, useRef as l, useState as u } from "react";
|
|
5
5
|
//#region src/reactjs/components/BridgeForm/hooks/useBridgeTokenSelection.ts
|
|
6
|
-
var
|
|
7
|
-
let
|
|
6
|
+
var d = ({ chains: d, firstTokenIdentifier: f, secondTokenIdentifier: p, fromTokens: m, toTokens: h, isTokensLoading: g, activeChainId: _, mvxChainId: v, callbackRoute: y, forcedDestinationTokenSymbol: b, onNavigate: x, switchNetwork: S, sdkChains: C, activeChain: w }) => {
|
|
7
|
+
let T = l(!1), [E, D] = u(), [O, k] = u(), A = c(() => m?.filter((e) => v ? e.chainId.toString().toLowerCase() === v.toString().toLowerCase() : !0).map((e) => ({
|
|
8
8
|
...e,
|
|
9
9
|
identifier: e.address,
|
|
10
10
|
ticker: e.symbol
|
|
11
|
-
})) ?? [], [
|
|
11
|
+
})) ?? [], [m, v]), j = o((e) => r(e, h, b), [h, b]), M = c(() => E ? r(E, h, b).map((e) => ({
|
|
12
12
|
...e,
|
|
13
13
|
identifier: e.address,
|
|
14
14
|
ticker: e.symbol
|
|
15
|
-
}))
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
})) : [], [
|
|
16
|
+
E,
|
|
17
|
+
h,
|
|
18
|
+
b
|
|
19
|
+
]), N = c(() => {
|
|
20
|
+
let e = v ? O : E;
|
|
21
|
+
return e && d?.find((n) => t(n.chainId, e.chainId)) || d?.find((e) => t(e.chainId, w?.id)) || ((v ? E && d?.find((e) => t(e.chainId, E.chainId)) : O && d?.find((e) => t(e.chainId, O.chainId))) ?? d?.[0]);
|
|
18
22
|
}, [
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
]),
|
|
25
|
-
|
|
23
|
+
w?.id,
|
|
24
|
+
d,
|
|
25
|
+
E?.chainId,
|
|
26
|
+
v,
|
|
27
|
+
O?.chainId
|
|
28
|
+
]), P = o((e) => i(e, h), [h]), F = o(({ firstTokenId: e, secondTokenId: t }) => {
|
|
29
|
+
a({
|
|
26
30
|
firstTokenId: e,
|
|
27
31
|
secondTokenId: t,
|
|
28
|
-
callbackRoute:
|
|
29
|
-
isTokensLoading:
|
|
30
|
-
onNavigate:
|
|
32
|
+
callbackRoute: y,
|
|
33
|
+
isTokensLoading: g,
|
|
34
|
+
onNavigate: x
|
|
31
35
|
});
|
|
32
36
|
}, [
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
]),
|
|
37
|
+
y,
|
|
38
|
+
g,
|
|
39
|
+
x
|
|
40
|
+
]), I = o((e) => {
|
|
37
41
|
if (!e) return;
|
|
38
|
-
|
|
39
|
-
let t =
|
|
40
|
-
|
|
41
|
-
let n = A(e);
|
|
42
|
-
t = n.find((t) => t.symbol.toLowerCase() === e.symbol.toLowerCase()) ?? N(n);
|
|
43
|
-
}
|
|
44
|
-
t && (O(t), P({ secondTokenId: t.address }));
|
|
42
|
+
D(e), F({ firstTokenId: e.address });
|
|
43
|
+
let t = n(e, h, b) ?? P(j(e));
|
|
44
|
+
t && (k(t), F({ secondTokenId: t.address }));
|
|
45
45
|
}, [
|
|
46
|
-
|
|
47
|
-
N,
|
|
46
|
+
j,
|
|
48
47
|
P,
|
|
49
|
-
|
|
50
|
-
|
|
48
|
+
F,
|
|
49
|
+
h,
|
|
50
|
+
b
|
|
51
|
+
]), L = o((e) => {
|
|
51
52
|
if (!e) return;
|
|
52
|
-
|
|
53
|
-
let t =
|
|
54
|
-
t && (
|
|
55
|
-
}, [
|
|
56
|
-
if (!
|
|
57
|
-
|
|
58
|
-
firstTokenId:
|
|
59
|
-
secondTokenId:
|
|
53
|
+
k(e), F({ secondTokenId: e.address });
|
|
54
|
+
let t = A.find((t) => t.symbol.toLowerCase() === e.symbol.toLowerCase());
|
|
55
|
+
t && (D(t), F({ firstTokenId: t.address }));
|
|
56
|
+
}, [A, F]), R = o(() => {
|
|
57
|
+
if (!E || !O) return;
|
|
58
|
+
D(O), k(E), F({
|
|
59
|
+
firstTokenId: O.address,
|
|
60
|
+
secondTokenId: E.address
|
|
60
61
|
});
|
|
61
|
-
let
|
|
62
|
-
|
|
62
|
+
let e = C?.find((e) => t(e.id, O.chainId));
|
|
63
|
+
e && S && S(e);
|
|
63
64
|
}, [
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
65
|
+
E,
|
|
66
|
+
O,
|
|
67
|
+
F,
|
|
68
|
+
C,
|
|
69
|
+
S
|
|
69
70
|
]);
|
|
70
|
-
return
|
|
71
|
-
if (
|
|
72
|
-
if (
|
|
73
|
-
|
|
71
|
+
return s(() => {
|
|
72
|
+
if (g || T.current || !A.length) return;
|
|
73
|
+
if (E && O) {
|
|
74
|
+
T.current = !0;
|
|
74
75
|
return;
|
|
75
76
|
}
|
|
76
|
-
let
|
|
77
|
-
firstTokenId:
|
|
78
|
-
secondTokenId:
|
|
79
|
-
}),
|
|
80
|
-
if (
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
if (r) {
|
|
87
|
-
E(r), P({ firstTokenId: r.address });
|
|
88
|
-
let t = S?.find((t) => e(t.id, r.chainId)) ?? C;
|
|
89
|
-
t && x && x(t), a = !0;
|
|
77
|
+
let r = e({
|
|
78
|
+
firstTokenId: f,
|
|
79
|
+
secondTokenId: p
|
|
80
|
+
}), i = A.find(({ identifier: e }) => r?.firstTokenId?.toLowerCase() === e.toLowerCase()) ?? A.find((e) => t(e.chainId, _)) ?? A[0], a = (i && n(i, h, b)) ?? P(i ? j(i) : []);
|
|
81
|
+
if (E && O && E?.address?.toLowerCase() === i?.address?.toLowerCase() && O?.address?.toLowerCase() === a?.address?.toLowerCase()) return;
|
|
82
|
+
let o = !1;
|
|
83
|
+
if (i) {
|
|
84
|
+
D(i), F({ firstTokenId: i.address });
|
|
85
|
+
let e = C?.find((e) => t(e.id, i.chainId)) ?? w;
|
|
86
|
+
e && S && S(e), o = !0;
|
|
90
87
|
}
|
|
91
|
-
|
|
88
|
+
a && (k(a), F({ secondTokenId: a.address }), o &&= !0), T.current = o;
|
|
92
89
|
}, [
|
|
93
|
-
h,
|
|
94
|
-
k,
|
|
95
|
-
m,
|
|
96
|
-
d,
|
|
97
|
-
f,
|
|
98
90
|
g,
|
|
99
91
|
A,
|
|
100
|
-
|
|
92
|
+
h,
|
|
93
|
+
f,
|
|
94
|
+
p,
|
|
95
|
+
_,
|
|
96
|
+
b,
|
|
97
|
+
j,
|
|
101
98
|
P,
|
|
102
|
-
|
|
99
|
+
F,
|
|
103
100
|
C,
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
e
|
|
101
|
+
w,
|
|
102
|
+
S
|
|
103
|
+
]), s(() => {
|
|
104
|
+
let e = m?.find((e) => e.address.toLowerCase() === E?.address?.toLowerCase());
|
|
105
|
+
e && D((t) => t && {
|
|
108
106
|
...t,
|
|
109
107
|
balance: e.balance
|
|
110
108
|
});
|
|
111
|
-
}, [
|
|
112
|
-
let e =
|
|
113
|
-
e &&
|
|
109
|
+
}, [m, E?.address]), s(() => {
|
|
110
|
+
let e = h?.find((e) => e.address.toLowerCase() === O?.address?.toLowerCase());
|
|
111
|
+
e && k((t) => t && {
|
|
114
112
|
...t,
|
|
115
113
|
balance: e.balance
|
|
116
114
|
});
|
|
117
|
-
}, [
|
|
118
|
-
firstToken:
|
|
119
|
-
secondToken:
|
|
120
|
-
fromOptions:
|
|
121
|
-
toOptions:
|
|
122
|
-
selectedChainOption:
|
|
123
|
-
setFirstToken:
|
|
124
|
-
setSecondToken:
|
|
125
|
-
onChangeFirstSelect:
|
|
126
|
-
onChangeSecondSelect:
|
|
127
|
-
handleChangeDirection:
|
|
128
|
-
updateUrlParams:
|
|
115
|
+
}, [h, O?.address]), {
|
|
116
|
+
firstToken: E,
|
|
117
|
+
secondToken: O,
|
|
118
|
+
fromOptions: A,
|
|
119
|
+
toOptions: M,
|
|
120
|
+
selectedChainOption: N,
|
|
121
|
+
setFirstToken: D,
|
|
122
|
+
setSecondToken: k,
|
|
123
|
+
onChangeFirstSelect: I,
|
|
124
|
+
onChangeSecondSelect: L,
|
|
125
|
+
handleChangeDirection: R,
|
|
126
|
+
updateUrlParams: F
|
|
129
127
|
};
|
|
130
128
|
};
|
|
131
129
|
//#endregion
|
|
132
|
-
export {
|
|
130
|
+
export { d as useBridgeTokenSelection };
|
|
@@ -15,6 +15,11 @@ export declare function resolveSigningChainType(transaction: ServerTransaction,
|
|
|
15
15
|
* Gets available tokens based on the source token and forced destination
|
|
16
16
|
*/
|
|
17
17
|
export declare const getAvailableTokens: (option: TokenType, targetTokens?: TokenType[], forcedDestinationTokenSymbol?: string) => TokenType[];
|
|
18
|
+
/**
|
|
19
|
+
* Finds the best paired destination token for a given source token.
|
|
20
|
+
* Priority: availableTokens address match > symbol match (last resort).
|
|
21
|
+
*/
|
|
22
|
+
export declare const findPairedToken: (sourceToken: TokenType, targetTokens?: TokenType[], forcedDestinationTokenSymbol?: string) => TokenType | undefined;
|
|
18
23
|
/**
|
|
19
24
|
* Gets the default receiving token (prefers USDC)
|
|
20
25
|
*/
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../constants/index.js"),t=require("../../../../types/chainType.js"),n=require("../../../utils/getCompletePathname.js");var r=({firstTokenId:t,secondTokenId:r,callbackRoute:i,isTokensLoading:a,onNavigate:o})=>{if(a)return;let s=n.getCompletePathname(),c=new URLSearchParams(e.safeWindow.location.search);t&&c.set(`firstToken`,t),r&&c.set(`secondToken`,r);let l=`${i}?${c.toString()}`;s!==l&&(e.safeWindow.history?.replaceState?.(null,``,l),o?.(l,{replace:!0}))};function i(e,n){return e.suiParams?.transactionBytes&&e.suiParams?.sender?t.ChainType.sui:e.instructions&&e.feePayer?t.ChainType.sol:e.bitcoinParams?t.ChainType.btc:e.to&&e.data!==void 0?t.ChainType.evm:n?.chainType}var a=(e,t,n)=>{if(n){let e=t?.find(e=>e.symbol.toLowerCase()===n.toLowerCase());return e?[e]:[]}if(!e?.availableTokens)return[];let r=[];for(let n of e.availableTokens){let e=t?.find(e=>e.address.toLowerCase()===n.address.toLowerCase());e&&r.push(e)}return r},o=(e,t)=>e.find(e=>e.symbol.toLowerCase().includes(`usdc`))??t?.find(e=>e.symbol.toLowerCase().includes(`usdc`)),
|
|
2
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../constants/index.js"),t=require("../../../../types/chainType.js"),n=require("../../../utils/getCompletePathname.js");var r=({firstTokenId:t,secondTokenId:r,callbackRoute:i,isTokensLoading:a,onNavigate:o})=>{if(a)return;let s=n.getCompletePathname(),c=new URLSearchParams(e.safeWindow.location.search);t&&c.set(`firstToken`,t),r&&c.set(`secondToken`,r);let l=`${i}?${c.toString()}`;s!==l&&(e.safeWindow.history?.replaceState?.(null,``,l),o?.(l,{replace:!0}))};function i(e,n){return e.suiParams?.transactionBytes&&e.suiParams?.sender?t.ChainType.sui:e.instructions&&e.feePayer?t.ChainType.sol:e.bitcoinParams?t.ChainType.btc:e.to&&e.data!==void 0?t.ChainType.evm:n?.chainType}var a=(e,t,n)=>{if(n){let e=t?.find(e=>e.symbol.toLowerCase()===n.toLowerCase());return e?[e]:[]}if(!e?.availableTokens)return[];let r=[];for(let n of e.availableTokens){let e=t?.find(e=>e.address.toLowerCase()===n.address.toLowerCase());e&&r.push(e)}return r},o=(e,t,n)=>{let r=a(e,t,n);if(r.length>0)return r[0];let i=n??e.symbol;return t?.find(e=>e.symbol.toLowerCase()===i.toLowerCase())},s=(e,t)=>e.find(e=>e.symbol.toLowerCase().includes(`usdc`))??t?.find(e=>e.symbol.toLowerCase().includes(`usdc`)),c=(e,t)=>e?!!t?.some(t=>t.address.toLowerCase()===e.toLowerCase()):!1;exports.findPairedToken=o,exports.getAvailableTokens=a,exports.getDefaultReceivingToken=s,exports.isTokenIdFromMvx=c,exports.resolveSigningChainType=i,exports.updateUrlParams=r;
|
|
@@ -24,6 +24,11 @@ var a = (e, t, n) => {
|
|
|
24
24
|
e && r.push(e);
|
|
25
25
|
}
|
|
26
26
|
return r;
|
|
27
|
-
}, o = (e, t
|
|
27
|
+
}, o = (e, t, n) => {
|
|
28
|
+
let r = a(e, t, n);
|
|
29
|
+
if (r.length > 0) return r[0];
|
|
30
|
+
let i = n ?? e.symbol;
|
|
31
|
+
return t?.find((e) => e.symbol.toLowerCase() === i.toLowerCase());
|
|
32
|
+
}, s = (e, t) => e.find((e) => e.symbol.toLowerCase().includes("usdc")) ?? t?.find((e) => e.symbol.toLowerCase().includes("usdc")), c = (e, t) => e ? !!t?.some((t) => t.address.toLowerCase() === e.toLowerCase()) : !1;
|
|
28
33
|
//#endregion
|
|
29
|
-
export { a as getAvailableTokens,
|
|
34
|
+
export { o as findPairedToken, a as getAvailableTokens, s as getDefaultReceivingToken, c as isTokenIdFromMvx, i as resolveSigningChainType, r as updateUrlParams };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../BridgeHistory-
|
|
2
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../BridgeHistory-D3Zg2V1U.js");exports.BridgeHistory=e.t;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../../BridgeHistory-
|
|
1
|
+
import { t as e } from "../../../BridgeHistory-B86lT8s-.mjs";
|
|
2
2
|
export { e as BridgeHistory };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../BridgeHistory-
|
|
2
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../BridgeHistory-D3Zg2V1U.js");exports.BridgeHistory=e.t;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as e } from "../../../BridgeHistory-
|
|
1
|
+
import { t as e } from "../../../BridgeHistory-B86lT8s-.mjs";
|
|
2
2
|
export { e as BridgeHistory };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../chains-Bmeag21l.js");require("../../constants/index.js");const t=require("../../../helpers/getDisplayName.js"),n=require("../../
|
|
2
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../../../chains-Bmeag21l.js");require("../../constants/index.js");const t=require("../../../helpers/getDisplayName.js"),n=require("../../context/useWeb3App.js"),r=require("../../hooks/useAccount.js"),i=require("../../hooks/useSuiConnect.js");let a=require("react/jsx-runtime"),o=require("react"),s=require("@reown/appkit/react");var c=({activeChain:n,hasSui:r,onEvmSelect:i,onSuiSelect:o,onClose:s})=>(0,a.jsx)(`div`,{className:`liq-fixed liq-inset-0 liq-z-[9999] liq-flex liq-items-center liq-justify-center liq-bg-black/60`,onClick:s,children:(0,a.jsxs)(`div`,{className:`liq-w-[340px] liq-rounded-2xl liq-bg-neutral-900 liq-border liq-border-neutral-700/40 liq-shadow-2xl`,onClick:e=>e.stopPropagation(),children:[(0,a.jsxs)(`div`,{className:`liq-flex liq-items-center liq-justify-between liq-px-5 liq-py-4 liq-border-b liq-border-neutral-700/30`,children:[(0,a.jsx)(`h3`,{className:`liq-text-white liq-text-base liq-font-semibold liq-m-0`,children:`Select Chain`}),(0,a.jsx)(`button`,{onClick:s,className:`liq-text-neutral-400 hover:liq-text-white liq-text-lg liq-bg-transparent liq-border-none liq-cursor-pointer liq-p-1`,children:`×`})]}),(0,a.jsxs)(`div`,{className:`liq-flex liq-flex-col liq-gap-2 liq-p-4`,children:[(0,a.jsxs)(`button`,{onClick:i,className:`liq-flex liq-items-center liq-gap-3 liq-w-full liq-rounded-xl liq-bg-neutral-800/60 liq-px-4 liq-py-3 liq-text-left liq-text-white liq-font-medium liq-border liq-border-transparent liq-transition-all liq-duration-200 hover:liq-bg-neutral-750 hover:liq-border-neutral-600/50 liq-cursor-pointer`,children:[n?.pngUrl&&(0,a.jsx)(`img`,{src:n.pngUrl,alt:``,className:`liq-w-8 liq-h-8 liq-rounded-full`}),(0,a.jsxs)(`div`,{children:[(0,a.jsx)(`div`,{className:`liq-text-sm liq-font-semibold`,children:n?t.getDisplayName(n):`Ethereum`}),(0,a.jsx)(`div`,{className:`liq-text-xs liq-text-neutral-400`,children:`EVM Chains`})]})]}),r&&(0,a.jsxs)(`button`,{onClick:o,className:`liq-flex liq-items-center liq-gap-3 liq-w-full liq-rounded-xl liq-bg-neutral-800/60 liq-px-4 liq-py-3 liq-text-left liq-text-white liq-font-medium liq-border liq-border-transparent liq-transition-all liq-duration-200 hover:liq-bg-neutral-750 hover:liq-border-neutral-600/50 liq-cursor-pointer`,children:[(0,a.jsx)(`img`,{src:e.r.sui,alt:``,className:`liq-w-8 liq-h-8 liq-rounded-full`}),(0,a.jsxs)(`div`,{children:[(0,a.jsx)(`div`,{className:`liq-text-sm liq-font-semibold`,children:`Sui`}),(0,a.jsx)(`div`,{className:`liq-text-xs liq-text-neutral-400`,children:`Sui Network`})]})]})]})]})}),l=({activeChain:e,disabled:t,className:l})=>{let[u,d]=(0,o.useState)(!1),{open:f}=(0,s.useAppKit)(),p=r.useAccount(),{options:m}=n.useWeb3App(),h=i.useSuiConnect(),g=!!m.suiEnvironment;if(p.isConnected||h.isConnected)return null;let _=()=>{d(!1),f({view:`Connect`,namespace:`eip155`})};return g?(0,a.jsxs)(a.Fragment,{children:[u&&(0,a.jsx)(c,{activeChain:e,hasSui:g,onEvmSelect:_,onSuiSelect:()=>{d(!1),h.connect()},onClose:()=>d(!1)}),(0,a.jsx)(`button`,{onClick:()=>d(!0),disabled:t,className:`liq-font-bold liq-text-inherit liq-rounded-lg ${l??``}`,children:(0,a.jsx)(`div`,{className:`liq-flex liq-items-center liq-justify-center liq-gap-1`,children:(0,a.jsx)(`span`,{className:`liq-text-primary-200`,children:p.isConnecting?`Connecting...`:`Connect`})})})]}):(0,a.jsx)(`button`,{onClick:_,disabled:t,className:`liq-font-bold liq-text-inherit liq-rounded-lg ${l??``}`,children:(0,a.jsx)(`div`,{className:`liq-flex liq-items-center liq-justify-center liq-gap-1`,children:(0,a.jsx)(`span`,{className:`liq-text-primary-200`,children:p.isConnecting?`Connecting...`:`Connect`})})})};exports.ChainSelectConnect=l;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { r as e } from "../../../chains-DQACurVn.mjs";
|
|
2
2
|
import "../../constants/index.mjs";
|
|
3
3
|
import { getDisplayName as t } from "../../../helpers/getDisplayName.mjs";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
4
|
+
import { useWeb3App as n } from "../../context/useWeb3App.mjs";
|
|
5
|
+
import { useAccount as r } from "../../hooks/useAccount.mjs";
|
|
6
6
|
import { useSuiConnect as i } from "../../hooks/useSuiConnect.mjs";
|
|
7
7
|
import { Fragment as a, jsx as o, jsxs as s } from "react/jsx-runtime";
|
|
8
8
|
import { useState as c } from "react";
|
|
@@ -58,7 +58,7 @@ var u = ({ activeChain: n, hasSui: r, onEvmSelect: i, onSuiSelect: a, onClose: c
|
|
|
58
58
|
})]
|
|
59
59
|
})
|
|
60
60
|
}), d = ({ activeChain: e, disabled: t, className: d }) => {
|
|
61
|
-
let [f, p] = c(!1), { open: m } = l(), h =
|
|
61
|
+
let [f, p] = c(!1), { open: m } = l(), h = r(), { options: g } = n(), _ = i(), v = !!g.suiEnvironment;
|
|
62
62
|
if (h.isConnected || _.isConnected) return null;
|
|
63
63
|
let y = () => {
|
|
64
64
|
p(!1), m({
|