@mojito-inc/secondary-market
Version:
Mojito secondary market is the platform to purchase NFT.
2 lines (1 loc) • 14.4 kB
JavaScript
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),i=require("react"),r=require("@mui/material/Stack"),t=require("@mui/material/Tooltip"),o=require("@mui/material/Divider"),l=require("@mui/material/Grid"),n=require("@mui/material/Button"),a=require("@mui/material/Typography"),s=require("@mui/material/Box"),u=require("@mui/material/Modal"),c=require("@mui/material/styles"),d=require("@mui/icons-material/InfoOutlined"),m=require("@mui/material/Checkbox"),p=require("moment"),x=require("../component/MediaContentContainer.js"),g=require("../component/FeeContainer.js"),h=require("../component/InputDropdownContainer.js"),f=require("../component/DropDownContainer.js"),v=require("../component/TotalOfferPriceContainer.js"),C=require("../component/ToastContainer.js"),y=require("../component/TermsAndConditionContainer.js");require("@mui/icons-material/ContentCopy"),require("@mui/icons-material/KeyboardArrowDown"),require("@mui/icons-material/KeyboardArrowUp"),require("@mui/icons-material/HelpOutline"),require("@mui/material/IconButton"),require("@mui/icons-material/FavoriteBorder"),require("@mui/icons-material/Favorite"),require("@mui/icons-material/FileCopyOutlined");var j=require("../interface/index.js");require("@mui/material/Pagination"),require("@mui/material/PaginationItem"),require("@mui/material"),require("@mui/material/Table"),require("@mui/material/TableCell"),require("@mui/material/TableHead"),require("@mui/material/TableBody"),require("@mui/material/TableRow"),require("@mui/material/TableContainer"),require("@mui/icons-material/OpenInNew");var q=require("../loader/BuyNowLoader.js");require("@mui/material/Skeleton"),require("@mui/material/CardActions"),require("@mui/material/Card"),require("@mui/material/CardContent"),require("@mui/icons-material/RemoveCircleOutline"),require("@mui/icons-material/SellOutlined"),require("@mui/icons-material/AttachMoneyOutlined"),require("@mui/icons-material/Send"),require("@mui/icons-material/NewReleases"),require("@mui/icons-material/CancelScheduleSend"),require("@mui/icons-material/HourglassDisabledOutlined"),require("@mui/icons-material/CallMissedOutlined"),require("@mui/icons-material/MoveToInboxOutlined"),require("@mui/icons-material/CheckCircleOutlineOutlined"),require("@mui/icons-material/BorderColorOutlined"),require("../component/VideoWithImageCard.js"),require("html-react-parser"),require("@mui/icons-material/Twitter"),require("@mui/icons-material/MoreVert"),require("../constant/index.js"),require("@mui/material/useMediaQuery"),require("@mui/material/CircularProgress"),require("react-player"),require("@mui/icons-material/Pause"),require("@mui/icons-material/PlayArrow");var b=require("../component/ErrorContainer.js");require("../_virtual/_tslib.js"),require("@mui/material/Tab"),require("@mui/material/Tabs"),require("@mui/material/Menu"),require("@mui/material/ListItem"),require("@mui/material/List"),require("@mui/icons-material/Close"),require("@mui/material/MenuItem"),require("@mui/material/ListItemText"),require("@mui/icons-material/CheckRounded"),require("@mui/icons-material/FiberManualRecord"),require("@mui/icons-material/Refresh"),require("../component/RenderIf.js"),require("@mui/icons-material/AccountBalanceWallet");var T=require("../component/BreadCrumbsComponent.js"),w=require("../utils/getNumberOfDays.utils.js"),k=require("../component/OfferPriceContainer.js");exports.default=({open:S,image:I,breadCrumbs:P,selectedBreadCrumbs:O,error:M,progress:D,tokenDetails:R,currencyData:B,price:W,durationList:z,duration:A,listPricePercentage:L,totalPrice:N,termsCheck:F,policyCheck:Y,offerExpires:E,validateTerms:U,validateMakeOffer:H,symbol:V,currencyList:_,isCancelOffer:$,isValidMakeOffer:G,walletConnection:K,isLoading:X,termsURL:Q,conditionOfBusinessURL:J,maxLength:Z,fiatCurrency:ee=j.Currency.USD,walletType:ie,contractProgressMessage:re,buyNowPrice:te,mediaCardAttributes:oe,onChangeTermsAndCondition:le,onChangePolicy:ne,onChangeDuration:ae,onChangePrice:se,onClickMakeOffer:ue,onClickSwap:ce,onClickSwitchNetwork:de,onCloseModal:me,onClickConnectWallet:pe})=>{var xe,ge,he,fe,ve,Ce,ye,je,qe,be,Te,we,ke,Se,Ie,Pe,Oe,Me,De,Re,Be,We,ze,Ae,Le,Ne,Fe,Ye,Ee,Ue,He,Ve,_e,$e,Ge,Ke,Xe,Qe;const Je=c.useTheme(),Ze=i.useMemo((()=>"ethereum"===ie),[ie]),ei=i.useMemo((()=>"solana"===ie),[ie]),ii=i.useMemo((()=>({position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:{xs:"90%",md:"700px"},bgcolor:Je.palette.grey[50],borderRadius:"8px",boxShadow:24,maxHeight:{xs:"calc(100% - 50px)",lg:"calc(100% - 100px)"},overflowY:"auto",padding:"16px 16px 30px 16px"})),[Je]),ri=i.useMemo((()=>D.loading?"Processing Offer":M?"Retry":D.success?"View Item":$?"Cancel Offer":"Submit Offer"),[M,D,$]),ti=i.useMemo((()=>G&&!D.success?{message:$?"Cannot able to cancel offer for this item!":G,status:j.ToastTypeProps.ERROR}:D.loading?{message:re||"Follow wallet instruction to approve. Please do not close or reload the page...",status:j.ToastTypeProps.WARNING}:$&&D.success?{message:"This offer has been cancelled",status:j.ToastTypeProps.WARNING}:D.success?{message:`Offer submitted! Keep ${W} ${B} available until expiry to secure it. The item will be delivered once accepted.`,status:j.ToastTypeProps.SUCCESS}:M?{message:M,status:j.ToastTypeProps.ERROR}:!$||D.loading||D.success?{message:"",status:j.ToastTypeProps.SUCCESS_WITHOUT_ICON}:{message:"Clicking on ‘Cancel Offer’ will remove your offer for this item.",status:j.ToastTypeProps.WARNING}),[G,D.success,D.loading,$,M,re,W,B]),oi=i.useMemo((()=>{if(Ze){if("MATIC"===V||"WMATIC"===V)return I.maticIcon;if("WETH"===V)return I.nonNativeCurrencyIcon}return ei?I.nonNativeCurrencyIcon:I.nativeCurrencyIcon}),[V,I,Ze,ei]);return e.jsx(u,{open:S,children:e.jsx(s,{sx:ii,children:X?e.jsx(q.default,{}):e.jsxs(e.Fragment,{children:[e.jsx(s,{sx:{display:"flex",justifyContent:"center",alignItems:"center",marginBottom:"16px"},children:e.jsx("img",{src:I.logo,style:{width:"100%",height:"50px",objectFit:"contain"},alt:"logo"})}),e.jsx(s,{sx:{marginBottom:"16px",marginX:{xs:"16px",lg:0}},children:e.jsx(T.default,{"data-testid":"onClick_bread_crumbs",list:P||[],selectedValue:O||"",itemHighlightedStyle:{fontSize:"12px",fontWeight:"500",color:Je.palette.background.default},itemStyle:{fontSize:"12px",fontWeight:"500",color:Je.palette.grey[500]}})}),e.jsx(s,{sx:{marginBottom:"30px",marginX:{xs:"16px",lg:0}},children:e.jsxs(l,{container:!0,spacing:2,children:[e.jsx(l,{item:!0,xs:12,sm:12,md:12,lg:6,xl:6,children:e.jsx(x.default,{title:R.tokenName,url:"thumbnail-only"!==(null==oe?void 0:oe.thumbnailFrame)&&"custom"!==(null==oe?void 0:oe.thumbnailFrame)&&(null==R?void 0:R.thumbnail)||(null==R?void 0:R.tokenImage),videoAttributes:oe,subTitle:R.tokenArtistName,placeholderImage:I.placeHolderImage,height:"350px"})}),e.jsx(l,{item:!0,xs:12,sm:12,md:12,lg:6,xl:6,children:"Confirmation"===O||$?e.jsxs(e.Fragment,{children:[(null!==(xe=null==te?void 0:te.length)&&void 0!==xe?xe:0)>0&&e.jsxs(e.Fragment,{children:[e.jsxs(r,{sx:{marginBottom:"16px"},flexDirection:"row",justifyContent:"space-between",alignItems:"center",children:[e.jsx(a,{sx:{fontSize:"14px"},variant:"h2",children:"Listed Price"}),e.jsxs(r,{justifyContent:"end",alignItems:"end",children:[e.jsxs(a,{sx:{fontSize:"14px"},variant:"h2",children:[null===(ge=null==te?void 0:te[1])||void 0===ge?void 0:ge.value," ",null===(he=null==te?void 0:te[1])||void 0===he?void 0:he.unit]})," ",e.jsxs(a,{sx:{fontSize:"12px",color:Je.palette.grey[500]},variant:"body1",children:["≈ ",null===(fe=null==te?void 0:te[0])||void 0===fe?void 0:fe.value," ",null===(ve=null==te?void 0:te[0])||void 0===ve?void 0:ve.unit]})]})]}),e.jsx(o,{sx:{marginY:"16px",borderColor:null===(je=null===(ye=null===(Ce=Je.palette)||void 0===Ce?void 0:Ce.appDefaultColor)||void 0===ye?void 0:ye.secondary)||void 0===je?void 0:je.light}})]}),e.jsx(g.default,{title:"Offer Price",usdPrice:`${String(N.usd||0)} ${ee}`,cryptoPrice:String(N.crypto),ethIcon:oi,totalPriceFontSize:14,isTotalPrice:!0}),e.jsx(o,{sx:{marginY:"16px",borderColor:null===(Te=null===(be=null===(qe=Je.palette)||void 0===qe?void 0:qe.appDefaultColor)||void 0===be?void 0:be.secondary)||void 0===Te?void 0:Te.light}}),e.jsxs(s,{children:[e.jsxs(r,{direction:"row",sx:{marginBottom:"5px"},children:[e.jsx(a,{sx:{marginRight:"5px",fontSize:"14px",fontWeight:500},children:"Expires on"}),e.jsx(t,{placement:"top-start",title:"When this offer ends",arrow:!0,children:e.jsx(d,{style:{color:null===(ke=null===(we=null==Je?void 0:Je.palette)||void 0===we?void 0:we.grey)||void 0===ke?void 0:ke[500],fontSize:"18px"}})})]}),e.jsxs(a,{sx:{fontSize:"12px",fontWeight:500},children:[p(E).format("MMMM DD, YYYY - hh:mm A")," your time"]})]}),e.jsx(o,{sx:{marginY:"10px",borderColor:null===(Pe=null===(Ie=null===(Se=Je.palette)||void 0===Se?void 0:Se.appDefaultColor)||void 0===Ie?void 0:Ie.secondary)||void 0===Pe?void 0:Pe.light}}),e.jsx(s,{sx:{marginBottom:"24px"},children:e.jsx(v.default,{ethIcon:oi,listPrice:L,priceUSD:N.usd||0,wethValue:N.crypto,fiatCurrency:ee,toolTipTitle:"How much you will pay"})}),H.networkCheck&&!D.loading&&!D.success&&e.jsx(b.default,{title:"Please switch to",subTitle:"Network in order to complete checkout",message:H.message,onClick:de}),(D.loading||D.success||M||G&&!D.success||$&&!D.loading&&!D.success)&&!H.message&&e.jsx(C.default,{message:ti.message,status:ti.status})]}):e.jsxs(e.Fragment,{children:[(null!==(Oe=null==te?void 0:te.length)&&void 0!==Oe?Oe:0)>0&&e.jsxs(r,{sx:{marginBottom:"16px"},flexDirection:"row",justifyContent:"space-between",alignItems:"center",children:[e.jsx(a,{sx:{fontSize:"14px"},variant:"h2",children:"Listed Price"}),e.jsxs(r,{justifyContent:"end",alignItems:"end",children:[e.jsxs(a,{sx:{fontSize:"14px"},variant:"h2",children:[null===(Me=null==te?void 0:te[1])||void 0===Me?void 0:Me.value," ",null===(De=null==te?void 0:te[1])||void 0===De?void 0:De.unit]})," ",e.jsxs(a,{sx:{fontSize:"12px",color:Je.palette.grey[500]},variant:"body1",children:["≈ ",null===(Re=null==te?void 0:te[0])||void 0===Re?void 0:Re.value," ",null===(Be=null==te?void 0:te[0])||void 0===Be?void 0:Be.unit]})]})]}),e.jsxs(s,{sx:{marginBottom:"16px"},children:[e.jsx(h.default,{ethIcon:oi,isDropdown:!1,title:"OFFER PRICE",currencyData:B,price:W,currencyList:_,maxLength:Z,onChangePrice:se,hideBorder:!1}),e.jsxs(a,{sx:{fontSize:"12px",fontWeight:400,color:null===(ze=null===(We=Je.palette)||void 0===We?void 0:We.grey)||void 0===ze?void 0:ze[600],marginTop:"5px"},children:["≈ ",N.usd||0," ",ee]})]}),e.jsxs(s,{sx:{marginBottom:"10px"},children:[e.jsxs(s,{sx:{border:`1px solid ${null===(Le=null===(Ae=Je.palette)||void 0===Ae?void 0:Ae.grey)||void 0===Le?void 0:Le[600]}`,borderRadius:"5px",position:"relative"},children:[e.jsx(a,{sx:{paddingLeft:"12px",paddingTop:"10px",textTransform:"uppercase",fontSize:"10px"},children:"Duration"}),e.jsx(f.default,{menu:z,title:"",selectedValue:A,onChangeValue:ae,isMakeOfferModal:!0})]}),e.jsxs(a,{sx:{fontSize:"12px",fontWeight:400,color:null===(Fe=null===(Ne=Je.palette)||void 0===Ne?void 0:Ne.grey)||void 0===Fe?void 0:Fe[100],marginTop:"5px"},children:["Offer expires ",p(p()).add(w.numberOfDays(A),"days").format("MMMM DD, YYYY - hh:mm A")," your time"]})]}),e.jsx(k.default,{totalprice:N.usd||0,currency:ee,wethValue:N.crypto}),e.jsx(v.default,{ethIcon:oi,listPrice:L,priceUSD:N.usd||0,wethValue:N.crypto,fiatCurrency:ee,toolTipTitle:"How much you will pay"}),e.jsx(o,{sx:{marginY:"10px",borderColor:null===(Ue=null===(Ee=null===(Ye=Je.palette)||void 0===Ye?void 0:Ye.appDefaultColor)||void 0===Ee?void 0:Ee.secondary)||void 0===Ue?void 0:Ue.light}}),e.jsx(y.default,{checked:F,termURL:Q,conditionOfBusinessURL:J,error:null==U?void 0:U.terms,handleTermsAndCondition:le}),e.jsxs(s,{sx:{marginY:"10px"},children:[e.jsxs(s,{sx:{display:"flex",flexDirection:"row",alignItems:"center",marginLeft:"-4px"},children:[e.jsx(m,{sx:{padding:"0px",marginRight:"10px",transform:"scale(0.8)"},checked:Y,onChange:ne,inputProps:{"aria-label":"controlled"}}),e.jsx(a,{sx:{fontSize:"10px",fontWeight:"500"},children:`I acknowledge that I am signing approval for ${W} ${V} to be subtracted from my wallet when my offer is accepted.`})]}),(null==U?void 0:U.conditions)&&e.jsx(a,{style:{color:null===(Ve=null===(He=null==Je?void 0:Je.palette)||void 0===He?void 0:He.toastError)||void 0===Ve?void 0:Ve[500],fontSize:"12px",fontWeight:"400"},children:"You must agree to be able to continue"})]}),!H.networkCheck||D.loading||D.success?!H.isSwap||D.loading||D.success?K?e.jsx(b.default,{title:"Please",subTitle:"to complete process",message:"connect your wallet",onClick:pe}):H.balanceCheck&&!D.loading&&!D.success||G&&!D.success?e.jsx(C.default,{message:G||H.message,status:j.ToastTypeProps.ERROR}):e.jsx(e.Fragment,{}):e.jsxs(a,{sx:{fontSize:"12px",fontWeight:"400",color:null===($e=null===(_e=null==Je?void 0:Je.palette)||void 0===_e?void 0:_e.toastError)||void 0===$e?void 0:$e[300],display:"inline"},children:["Your connected wallet does not have enough ",H.message," ",V," to complete your transaction."," ",e.jsx(a,{onClick:()=>ce(H.message),sx:{fontSize:"12px",fontWeight:"400",color:null===(Ke=null===(Ge=null==Je?void 0:Je.palette)||void 0===Ge?void 0:Ge.primary)||void 0===Ke?void 0:Ke.main,textDecorationLine:"underline",display:"inline",cursor:"pointer"},children:"Click here to swap"})]}):e.jsx(b.default,{title:"Please switch to",subTitle:"Network in order to complete checkout",message:H.message,onClick:de})]})})]})}),e.jsxs(r,{direction:"column",sx:{justifyContent:"center",alignItems:"center",marginX:{xs:"16px",lg:0}},children:[e.jsx(n,{startIcon:D.loading&&e.jsx("img",{src:I.loader,style:{width:"20px",height:"20px",objectFit:"contain",animation:"rotate 2s linear infinite"},alt:"loader"}),disabled:D.loading||H.balanceCheck&&!$||(null==G?void 0:G.length)>0&&!D.success||Boolean(H.message),onClick:()=>ue(ri),sx:{width:{xs:"100%",lg:"70%"},marginBottom:"25px",height:"50px","&.Mui-disabled":{backgroundColor:Je.palette.primary.main,color:null===(Qe=null===(Xe=Je.palette.appDefaultColor)||void 0===Xe?void 0:Xe.secondary)||void 0===Qe?void 0:Qe.dark,opacity:.7,cursor:"not-allowed",pointerEvents:"all"}},children:ri}),e.jsx(a,{onClick:me,sx:{cursor:D.loading?"not-allowed":"pointer",fontWeight:"500",color:Je.palette.primary.main,textTransform:"uppercase"},children:D.success?"Back To Marketplace":"Cancel"})]})]})})})};