@mojito-inc/secondary-market
Version:
Mojito secondary market is the platform to purchase NFT.
2 lines (1 loc) • 21.2 kB
JavaScript
import{jsx as i}from"react/jsx-runtime";import{useMemo as e,useState as o,useEffect as l,useCallback as r}from"react";import{useAuth as t,useNFT as n}from"@mojito-inc/core-service";import{Currency as a,CryptoCurrency as d,ProviderType as s}from"../interface/index.js";import{useSupportedCurrency as u}from"../hooks/useSupportedCurrency.js";import{useTokenDetails as c}from"../hooks/useTokenDetails.js";import{getFee as m}from"../utils/getFee.utils.js";import{checkApproval as v,unlockApproval as p}from"../utils/makeOfferContract.utils.js";import{truncateDecimal as g,roundUp as b}from"../utils/truncateDecimal.utils.js";import{buyTokenWithNativeCurrency as w,buyTokenWithNonNativeCurrency as y,buySolanaNFT as h}from"../utils/buyNowContract.utils.js";import{getEtherScanURL as C}from"../utils/getEtherScanURL.utils.js";import{onSwitchNetwork as k}from"../utils/switchNetwork.utils.js";import{swapPrice as A}from"../utils/swapPrice.utils.js";import"@mui/material/Stack";import"@mui/material/Modal";import"@mui/material/Divider";import"@mui/material/Grid";import"@mui/material/Button";import"@mui/material/Typography";import"@mui/material/Box";import"@mui/material/styles";import"html-react-parser";import"../component/VideoWithImageCard.js";import"@mui/material/Tooltip";import"@mui/icons-material/InfoOutlined";import"@mui/icons-material/KeyboardArrowDown";import"@mui/material/Select";import"@mui/material/TextField";import"@mui/material/MenuItem";import"@mui/icons-material/ImportExport";import"@mui/icons-material/Warning";import"@mui/icons-material/CheckCircleOutline";import"@mui/icons-material/ErrorOutline";import"@mui/material/Checkbox";import"@mui/icons-material/ContentCopy";import{truncateAddress as f}from"../utils/truncateAddress.utils.js";import{formatNumberWithCommas as O}from"../utils/formatNumberWithCommas.js";import"@mui/icons-material/KeyboardArrowUp";import"@mui/icons-material/HelpOutline";import"@mui/material/IconButton";import"@mui/icons-material/FavoriteBorder";import"@mui/icons-material/Favorite";import"@mui/icons-material/FileCopyOutlined";import"moment";import"@mui/material/Pagination";import"@mui/material/PaginationItem";import"@mui/material";import"@mui/material/Table";import"@mui/material/TableCell";import"@mui/material/TableHead";import"@mui/material/TableBody";import"@mui/material/TableRow";import"@mui/material/TableContainer";import"@mui/icons-material/OpenInNew";import"@mui/material/Skeleton";import"@mui/material/CardActions";import"@mui/material/Card";import"@mui/material/CardContent";import"@mui/icons-material/RemoveCircleOutline";import"@mui/icons-material/SellOutlined";import"@mui/icons-material/AttachMoneyOutlined";import"@mui/icons-material/Send";import"@mui/icons-material/NewReleases";import"@mui/icons-material/CancelScheduleSend";import"@mui/icons-material/HourglassDisabledOutlined";import"@mui/icons-material/CallMissedOutlined";import"@mui/icons-material/MoveToInboxOutlined";import"@mui/icons-material/CheckCircleOutlineOutlined";import"@mui/icons-material/BorderColorOutlined";import"@mui/icons-material/Twitter";import"@mui/icons-material/MoreVert";import"../constant/index.js";import"@mui/material/useMediaQuery";import"@mui/material/CircularProgress";import"react-player";import"@mui/icons-material/Pause";import"@mui/icons-material/PlayArrow";import"../_virtual/_tslib.js";import"@mui/material/Tab";import"@mui/material/Tabs";import"@mui/material/Menu";import"@mui/material/ListItem";import"@mui/material/List";import"@mui/icons-material/Close";import"@mui/material/ListItemText";import"@mui/icons-material/CheckRounded";import"@mui/icons-material/FiberManualRecord";import"@mui/icons-material/Refresh";import"../component/RenderIf.js";import"@mui/icons-material/AccountBalanceWallet";import"@mui/material/Breadcrumbs";import"@mui/icons-material/ArrowForward";import j from"../layout/BuyNowLayout.js";import"@mui/material/InputAdornment";import"@mui/icons-material/Search";import"@mui/icons-material/FilterList";import"../provider/CollectionFilterProvider.js";import"@mui/material/Accordion";import"@mui/material/AccordionSummary";import"@mui/material/AccordionDetails";import"@mui/material/FormControlLabel";import"@mui/icons-material/ExitToAppOutlined";import{getValidURL as I}from"../utils/getValidURL.utils.js";import{getTraitsDescription as T}from"../utils/traits.utils.js";import D from"../hooks/useSolanaWalletPolling.js";import{useSentry as S}from"../provider/SentryProvider.js";const N=({open:N,image:P,config:L,tokenDetails:M,tokenDetailsData:x,walletDetails:B,termsURL:W,conditionOfBusinessURL:E,mediaCardAttributes:R,onClickViewItem:H,onCloseModal:F,onClickBackToMarketPlace:$,onClickConnectWallet:U,onClickDisconnectWallet:V,onRefetchBalance:_,onHandleApiSessionExpired:K})=>{var Y,G,Q,q,z,J,X,Z,ii,ei,oi,li,ri,ti,ni,ai,di,si;const{sessionStatus:ui}=t(),{addCaptureExceptionForSentry:ci,addExtraLogsForSentry:mi}=S(),vi=e((()=>{var i;return(null===(i=B.walletAddress)||void 0===i?void 0:i.length)>0}),[null==B?void 0:B.walletAddress]),pi=e((()=>vi&&"ethereum"===B.walletType),[B.walletType,vi]),gi=e((()=>vi&&"solana"===B.walletType),[B.walletType,vi]),bi=e((()=>{var i;return{orgId:L.orgId,contractAddress:M.contractAddress,itemId:M.itemId,onChainTokenID:M.onChainTokenID,currency:null!==(i=null==L?void 0:L.currency)&&void 0!==i?i:a.USD}}),[L,M]),[wi,yi]=o(""),{supportedCurrencyData:hi,currencyLoading:Ci}=u(bi,N),{checkForMismatchWalletAddress:ki}=D(),Ai=e((()=>{var i;return null===(i=null==hi?void 0:hi.map((i=>({value:i.symbol,label:i.symbol}))))||void 0===i?void 0:i.sort(((i,e)=>{var o;return null===(o=null==i?void 0:i.label)||void 0===o?void 0:o.localeCompare(null==e?void 0:e.label)}))}),[hi]),[fi,Oi]=o(null===(Y=null==Ai?void 0:Ai[0])||void 0===Y?void 0:Y.label),ji=e((()=>Object.assign(Object.assign({},bi),{cryptoCurrencyCode:null!=fi?fi:d.ETH})),[fi,bi]),{tokenData:Ii,usdData:Ti,networkData:Di,detailsLoading:Si,isNetworkLoading:Ni,isPriceLoading:Pi,reFetchAPI:Li}=c(ji,N,x),{initiateBuyNFT:Mi,updateTransactionHash:xi}=n(),Bi=e((()=>{const i=null==Di?void 0:Di.filter((i=>i.id===(null==Ii?void 0:Ii.networkID)));return null==i?void 0:i[0]}),[Di,Ii]),Wi=e((()=>{var i,e,o,l,r,t,n,a,d,s,u,c;return(null===(i=null==Ii?void 0:Ii.price)||void 0===i?void 0:i.buyNowPrice)&&(null===(o=null===(e=null==Ii?void 0:Ii.price)||void 0===e?void 0:e.buyNowPrice)||void 0===o?void 0:o.length)>0?null===(t=null===(r=null===(l=null==Ii?void 0:Ii.price)||void 0===l?void 0:l.buyNowPrice)||void 0===r?void 0:r[1])||void 0===t?void 0:t.value:(null===(n=null==Ii?void 0:Ii.listedOrderInfo)||void 0===n?void 0:n.price)&&(null===(d=null===(a=null==Ii?void 0:Ii.listedOrderInfo)||void 0===a?void 0:a.price)||void 0===d?void 0:d.length)>0?null===(c=null===(u=null===(s=null==Ii?void 0:Ii.listedOrderInfo)||void 0===s?void 0:s.price)||void 0===u?void 0:u[1])||void 0===c?void 0:c.value:0}),[Ii]),Ei=e((()=>pi?80001===(null==Bi?void 0:Bi.chainID)||137===(null==Bi?void 0:Bi.chainID)?[{label:"WMATIC",value:"WMATIC"}]:[{label:"WETH",value:"WETH"}]:gi?[{label:"VIN",value:"VIN"}]:[{label:"WETH",value:"WETH"}]),[Bi,pi,gi]),[Ri,Hi]=o("Checkout"),[Fi,$i]=o(""),[Ui,Vi]=o(!1),[_i,Ki]=o(""),[Yi,Gi]=o({loading:!1,success:!1}),[Qi,qi]=o(!1),[zi,Ji]=o({isWalletConnected:!0,networkCheck:!1,balanceCheck:!1,isSwap:!1,message:""}),[Xi,Zi]=o({referenceNumber:"",transactionHash:"",price:""}),[ie,ee]=o(""),[oe,le]=o(!1),re=e((()=>(null==B?void 0:B.providerType)===s.METAMASK),[null==B?void 0:B.providerType]),te=e((()=>{var i,e;return(null===(i=null==Ii?void 0:Ii.tokenOwnerAddress)||void 0===i?void 0:i.toLowerCase())===(null===(e=null==B?void 0:B.walletAddress)||void 0===e?void 0:e.toLowerCase())}),[Ii,null==B?void 0:B.walletAddress]),ne=e((()=>!("SALE_PENDING"!==(null==Ii?void 0:Ii.status)||te||!(null==Ii?void 0:Ii.isBuyNowEnabled))),[Ii,te]),ae=e((()=>B.walletAddress&&B.networkDetails.chainID===(null==Bi?void 0:Bi.chainID)),[null==Bi?void 0:Bi.chainID,B.networkDetails.chainID,B.walletAddress]),de=e((()=>{var i,e,o;if(gi){const o=null===(e=null===(i=null==Ii?void 0:Ii.metadata)||void 0===i?void 0:i.attributes)||void 0===e?void 0:e.find((i=>{var e;return"winery"===(null===(e=i.traitType)||void 0===e?void 0:e.toLowerCase())}));return o?T(o.value):""}return null===(o=null==Ii?void 0:Ii.artist)||void 0===o?void 0:o.artistName}),[null===(G=null==Ii?void 0:Ii.artist)||void 0===G?void 0:G.artistName,gi,null===(Q=null==Ii?void 0:Ii.metadata)||void 0===Q?void 0:Q.attributes]);l((()=>{N&&(Li(),$i(""),Vi(!1))}),[N,Li]),l((()=>{"Expired"===ui&&(F(),null==K||K())}),[F,K,ui]),l((()=>{N&&((null==B?void 0:B.walletAddress)&&!ne&&ee("Cannot able to purchase this item"),(null==B?void 0:B.walletAddress)&&ne&&(null==ie?void 0:ie.length)>0&&ee(""))}),[N,null==B?void 0:B.walletAddress,ne,ie]),l((()=>{var i;N&&Oi(null===(i=null==Ai?void 0:Ai[0])||void 0===i?void 0:i.label)}),[N,Ai]),l((()=>{N&&((null==B?void 0:B.walletAddress)?Ji((i=>{var e;return Object.assign(Object.assign({},i),{networkCheck:!ae,isWalletConnected:!0,message:ae?i.message:null!==(e=null==Bi?void 0:Bi.name)&&void 0!==e?e:""})})):Ji((i=>Object.assign(Object.assign({},i),{isWalletConnected:!1,message:"Connect your wallet to complete checkout"}))))}),[N,ae,null==Bi?void 0:Bi.name,B.walletAddress]);const se=e((()=>{const i=null==hi?void 0:hi.filter((i=>i.symbol===fi));return null==i?void 0:i[0]}),[fi,hi]),ue=e((()=>"ETH"===fi||"MATIC"===fi||"SOL"===fi),[fi]),ce=r(((i={},e={})=>{Object.keys(i).length>0&&i.key&&mi(i.key,i.value),Object.keys(e).length>0&&e.exception&&ci(e.exception,e.hint)}),[ci,mi]),me=r((()=>{var i,e,o;const l=null===(i=null==B?void 0:B.balance)||void 0===i?void 0:i.nonNative,r=b(Wi-l,4);return ue&&B&&(null===(e=null==B?void 0:B.balance)||void 0===e?void 0:e.native)<Wi?(Ji(Object.assign(Object.assign({},zi),{isSwap:!1,balanceCheck:!0,message:`Your connected wallet does not have enough ${null==se?void 0:se.symbol} to complete your purchase.`})),!1):!ue&&B&&l<Wi?(null===(o=null==B?void 0:B.balance)||void 0===o?void 0:o.native)>=r?(Ji(Object.assign(Object.assign({},zi),{isSwap:!0,balanceCheck:!1,message:String(r)})),!1):(Ji(Object.assign(Object.assign({},zi),{isSwap:!1,balanceCheck:!0,message:`Your connected wallet does not have enough ${null==se?void 0:se.symbol} to complete your purchase.`})),!1):(Ji(Object.assign(Object.assign({},zi),{isSwap:!1,balanceCheck:!1,message:""})),!0)}),[B,Wi,zi,ue,se]);l((()=>{oe&&(le(!1),me())}),[oe,me]);const ve=r((async(i,e)=>{try{if(se){return await v({price:Wi,currency:null==se?void 0:se.symbol,currencyContractAddress:se.contractAddress,marketPlaceContractAddress:null==se?void 0:se.secondaryMarketplaceContractAddress,provider:e,status:i})}return Hi("Checkout"),$i("An error was encountered while processing your payment"),!1}catch(i){return Gi(Object.assign(Object.assign({},Yi),{loading:!1})),Hi("Checkout"),$i((null==i?void 0:i.message)||"An error was encountered while processing your payment"),!1}}),[se,Wi,Yi]),pe=r((async(i,e)=>{var o;try{Ii&&(await xi({orgId:L.orgId,transactionHash:i,nftTokenId:null==Ii?void 0:Ii.nftTokenId,buyerAddress:null!==(o=null==B?void 0:B.walletAddress)&&void 0!==o?o:"",orderId:e}),Gi(Object.assign(Object.assign({},Yi),{loading:!1,success:!0})))}catch(i){Gi(Object.assign(Object.assign({},Yi),{loading:!1,success:!0}))}}),[L,Yi,Ii,null==B?void 0:B.walletAddress,xi]),ge=r((async i=>{var e,o,l,r,t,n,a,d,s,u,c,m,v,p,g,b,h,C,k,A;try{if(Ii&&se){const f=await Mi({orgId:L.orgId,nftTokenId:null==Ii?void 0:Ii.nftTokenId,buyerAddress:null!==(e=null==B?void 0:B.walletAddress)&&void 0!==e?e:"",currencyId:null==se?void 0:se.id}),O=null===(o=null==f?void 0:f.data)||void 0===o?void 0:o.initiateBuyNFT;if(O)if(ue){const e=await w({tokenId:null===(l=null==O?void 0:O.order)||void 0===l?void 0:l.tokenId,price:String(null===(r=null==O?void 0:O.order)||void 0===r?void 0:r.fixedPrice),owner:null===(t=null==O?void 0:O.order)||void 0===t?void 0:t.nftOwnerAddress,contractAddress:null==Ii?void 0:Ii.contractAddress,proofOfApproval:null==O?void 0:O.proofOfApproval,random:null===(n=null==O?void 0:O.order)||void 0===n?void 0:n.id,currencyContractAddress:null===(d=null===(a=null==Ii?void 0:Ii.listedOrderInfo)||void 0===a?void 0:a.listedCurrency)||void 0===d?void 0:d.contractAddress,marketPlaceContractAddress:null==se?void 0:se.secondaryMarketplaceContractAddress,selectedAddress:null==se?void 0:se.contractAddress,provider:i});(null==e?void 0:e.status)?(Zi({referenceNumber:null===(s=null==O?void 0:O.order)||void 0===s?void 0:s.id,transactionHash:e.message,price:`${null===(u=null==O?void 0:O.order)||void 0===u?void 0:u.fixedPrice} ${null==se?void 0:se.symbol}`}),await pe(e.message,null===(c=null==O?void 0:O.order)||void 0===c?void 0:c.id)):(Gi(Object.assign(Object.assign({},Yi),{loading:!1})),Hi("Checkout"),"Reject"===(null==e?void 0:e.message)?$i("Transaction has been cancelled by user"):$i("An error was encountered while processing your payment"))}else{const e=await y({tokenId:null===(m=null==O?void 0:O.order)||void 0===m?void 0:m.tokenId,price:String(null===(v=null==O?void 0:O.order)||void 0===v?void 0:v.fixedPrice),owner:null===(p=null==O?void 0:O.order)||void 0===p?void 0:p.nftOwnerAddress,contractAddress:null==Ii?void 0:Ii.contractAddress,proofOfApproval:null==O?void 0:O.proofOfApproval,random:null===(g=null==O?void 0:O.order)||void 0===g?void 0:g.id,currencyContractAddress:null===(h=null===(b=null==Ii?void 0:Ii.listedOrderInfo)||void 0===b?void 0:b.listedCurrency)||void 0===h?void 0:h.contractAddress,marketPlaceContractAddress:null==se?void 0:se.secondaryMarketplaceContractAddress,selectedAddress:null==se?void 0:se.contractAddress,provider:i});(null==e?void 0:e.status)?(Zi({referenceNumber:null===(C=null==O?void 0:O.order)||void 0===C?void 0:C.id,transactionHash:e.message,price:`${null===(k=null==O?void 0:O.order)||void 0===k?void 0:k.fixedPrice} ${null==se?void 0:se.symbol}`}),await pe(e.message,null===(A=null==O?void 0:O.order)||void 0===A?void 0:A.id)):(Gi(Object.assign(Object.assign({},Yi),{loading:!1})),Hi("Checkout"),$i("An error was encountered while processing your payment"))}}}catch(i){Gi(Object.assign(Object.assign({},Yi),{loading:!1})),Hi("Checkout"),$i((null==i?void 0:i.message)||"An error was encountered while processing your payment")}}),[L,null==B?void 0:B.walletAddress,Yi,se,Ii,ue,Mi,pe]),be=r((i=>{yi(i)}),[yi]),we=r((async()=>{var i,e,o,l,r,t,n,a,d;try{Gi({success:!1,loading:!0}),Hi("Confirmation");const s=await ki(null==B?void 0:B.walletAddress,null==B?void 0:B.providerType,ce);if(!(null==s?void 0:s.isMismatched))return $i(`The initially connected wallet has been changed. Please switch back to the wallet \n (${f(null==B?void 0:B.walletAddress)}) to continue.`),void Gi({success:!1,loading:!1});if(Ii&&se){const s=await Mi({orgId:L.orgId,nftTokenId:null==Ii?void 0:Ii.nftTokenId,buyerAddress:null!==(i=null==B?void 0:B.walletAddress)&&void 0!==i?i:"",currencyId:null==se?void 0:se.id}),u=null===(e=null==s?void 0:s.data)||void 0===e?void 0:e.initiateBuyNFT,{walletAddress:c,balance:m,networkDetails:v,provider:p,providerType:g}=B,b=await h(c,m,g,p,v.chainID,be,null==u?void 0:u.bubblegumParams,null==L?void 0:L.customRPCUrl,ce);b&&!b.error||(Gi({loading:!1,success:!1}),$i((null==b?void 0:b.error)||"Something went wrong"),be(""),Hi("Checkout")),(null==b?void 0:b.success)&&(Zi({referenceNumber:null!==(l=null===(o=null==u?void 0:u.order)||void 0===o?void 0:o.id)&&void 0!==l?l:"",transactionHash:null===(r=b.response)||void 0===r?void 0:r.hash,price:`${null===(t=null==u?void 0:u.order)||void 0===t?void 0:t.fixedPrice} ${null==se?void 0:se.symbol}`}),await pe(null===(n=b.response)||void 0===n?void 0:n.hash,null!==(d=null===(a=null==u?void 0:u.order)||void 0===a?void 0:a.id)&&void 0!==d?d:""),Gi({loading:!1,success:!0}))}}catch(i){Gi({success:!1,loading:!1}),Hi("Checkout"),be(""),ce({key:"Additional Data",value:{path:"Error Inside an buynow function catch block - 569"}},{exception:i}),$i((null==i?void 0:i.message)||"An error was encountered while processing your payment")}}),[null==L?void 0:L.customRPCUrl,Ii,se,L.orgId,B,Mi,pe,be,ki,ce]),ye=r((async i=>{var e;if(Ui||0!==(null==Fi?void 0:Fi.length))try{if(!me())return;if("Retry"===i&&($i(""),Hi("Checkout")),"View Item"===i&&($i(""),Gi({success:!1,loading:!1}),Hi("Checkout"),H(),null==_||_(!0)),"Buy Now"===i&&se){if(pi){Gi(Object.assign(Object.assign({},Yi),{loading:!0})),Hi("Confirmation");let i=null;if(i=(null==B?void 0:B.providerType)===s.EMAIL?null===(e=null==B?void 0:B.provider)||void 0===e?void 0:e.provider:null==B?void 0:B.provider,ue)await ge(i);else{if(await ve(!1,i))await ge(i);else{const e=await p({currency:null==se?void 0:se.symbol,currencyContractAddress:null==se?void 0:se.contractAddress,marketPlaceContractAddress:null==se?void 0:se.secondaryMarketplaceContractAddress,provider:i});if(null==e?void 0:e.status){"success"===await ve(!0,i)?await ge(i):(Gi(Object.assign(Object.assign({},Yi),{loading:!1})),Hi("Checkout"),$i(`You don't have enough approval or balance of\n ${Wi} ${null==se?void 0:se.symbol}\n to complete this purchase. Please try again or increase allowance.`))}else"Reject"===(null==e?void 0:e.message)?(Gi(Object.assign(Object.assign({},Yi),{loading:!1})),Hi("Checkout"),$i("Transaction has been cancelled by user")):(Hi("Checkout"),Gi(Object.assign(Object.assign({},Yi),{loading:!1})),$i("An error was encountered while processing your payment"))}}}gi&&await we()}}catch(i){Gi(Object.assign(Object.assign({},Yi),{loading:!1})),Hi("Checkout"),$i((null==i?void 0:i.message)||"An error was encountered while processing your payment")}else qi(!0)}),[Ui,se,Yi,Wi,ue,null==B?void 0:B.provider,null==B?void 0:B.providerType,Fi,gi,pi,H,we,ve,ge,me,_]),he=r((async()=>{if(null==Bi?void 0:Bi.chainID){Ji(Object.assign(Object.assign({},zi),{isWalletConnected:!0})),Gi(Object.assign(Object.assign({},Yi),{loading:!0}));const i=await k(null==Bi?void 0:Bi.chainID,re,B.provider);$i(null==i?void 0:i.message),Gi(Object.assign(Object.assign({},Yi),{loading:!1}))}}),[Bi,re,Yi,zi,B.provider]),Ce=r((async i=>{if(se){Gi(Object.assign(Object.assign({},Yi),{loading:!0}));const e=await A({price:+i,currencyContractAddress:null==se?void 0:se.contractAddress,provider:B.provider});_&&_(!0),setTimeout((()=>{Gi(Object.assign(Object.assign({},Yi),{loading:!1})),$i(e.message),le(!0)}),2e3)}}),[se,Yi,B.provider,_]),ke=r((i=>{Oi(i.target.value),Ji(Object.assign(Object.assign({},zi),{isSwap:!1,balanceCheck:!1}))}),[zi]),Ae=r((i=>{Vi(i.target.checked),qi(!1)}),[Vi,qi]),fe=r((()=>{Yi.loading||(F(),Ji({isSwap:!1,balanceCheck:!1,message:"",networkCheck:!1,isWalletConnected:!1}),$&&"Confirmation"===Ri&&!Fi&&($i(""),Gi({success:!1,loading:!1}),Hi("Checkout"),$(),null==_||_(!0)))}),[Ri,Fi,$,F,_,Yi]),Oe=r((i=>{navigator.clipboard.writeText(i).then((()=>{Ki(i),setTimeout((()=>{Ki("close")}),1e3)})).catch((()=>{Ki("close")}))}),[]),je=r((()=>{var i;if(se){const e=C(null===(i=null==se?void 0:se.network)||void 0===i?void 0:i.chainID,Xi.transactionHash);window.open(e,"_blank")}}),[Xi,se]);return i(j,{open:N,image:P,tokenDetails:{tokenImage:I((null==Ii?void 0:Ii.mediaSourceURL)||(null===(q=null==Ii?void 0:Ii.metadata)||void 0===q?void 0:q.image)||""),tokenName:(null===(z=null==Ii?void 0:Ii.metadata)||void 0===z?void 0:z.name)||"",tokenArtistName:de||"",thumbnail:null===(J=null==Ii?void 0:Ii.metadata)||void 0===J?void 0:J.image,chainId:(null==Bi?void 0:Bi.chainID)||0},contractProgressMessage:wi,walletType:B.walletType,walletAddress:null!==(X=null==B?void 0:B.walletAddress)&&void 0!==X?X:"",breadCrumbs:[{label:"Checkout",value:"Checkout"},{label:"Confirmation",value:"Confirmation"}],selectedBreadCrumbs:Ri,mediaCardAttributes:Object.assign(Object.assign({},R),{customThumbnail:(null==R?void 0:R.customThumbnail)||(null===(Z=null==Ii?void 0:Ii.metadata)||void 0===Z?void 0:Z.image)}),currencyData:(null===(oi=null===(ei=null===(ii=null==Ii?void 0:Ii.price)||void 0===ii?void 0:ii.buyNowPrice)||void 0===ei?void 0:ei[1])||void 0===oi?void 0:oi.unit)||"",price:String(O(Wi)),usdPrice:`${g(m(Wi,Number(null==Ti?void 0:Ti.amount),!0))} ${null!==(li=L.currency)&&void 0!==li?li:"USD"}`,symbol:null!==(ri=null==se?void 0:se.symbol)&&void 0!==ri?ri:"",progress:Yi,error:Fi,termsCheck:Ui,validateTerms:Qi,validateBuyNow:zi,copied:_i,selectCurrency:null!=fi?fi:"",orderDetails:Xi,currencyList:null!=Ai?Ai:[],balance:ue?`${null===(ti=null==B?void 0:B.balance)||void 0===ti?void 0:ti.native} ${null===(ni=null==Ai?void 0:Ai[0])||void 0===ni?void 0:ni.label}`:`${null===(ai=null==B?void 0:B.balance)||void 0===ai?void 0:ai.nonNative} ${null!==(si=null===(di=null==Ai?void 0:Ai[1])||void 0===di?void 0:di.label)&&void 0!==si?si:Ei[0].label}`,detailsLoading:Si||Ci||Ni||Pi,isValidBuyNow:ie,termsURL:null!=W?W:"#",conditionOfBusinessURL:null!=E?E:"#",onChangeTermsAndCondition:Ae,onChangeCurrency:ke,onClickBuyNow:ye,onClickSwap:Ce,onClickSwitchNetwork:he,onClickConnectWallet:U,onClickDisconnectWallet:V,onClickCopyHash:()=>Oe(Xi.transactionHash),onClickCopyReference:()=>Oe(Xi.referenceNumber),onClickCopyWalletAddress:()=>Oe(null==B?void 0:B.walletAddress),onClickViewOnEtherScan:je,onCloseModal:fe})};export{N as default};