UNPKG

@mojito-inc/secondary-market

Version:

Mojito secondary market is the platform to purchase NFT.

2 lines (1 loc) 1.01 kB
import{useState as r,useCallback as e,useEffect as o}from"react";import{useOffer as n}from"@mojito-inc/core-service";const t=(t,l,d=!0,i="USD")=>{const{getOffers:u}=n(),[a,c]=r(),[f,s]=r(!1),[v,y]=r(!1),m=e((()=>{y(!0)}),[]);return o((()=>{const r=new AbortController;return l&&v&&d&&(async()=>{var r;y(!1);try{s(!0);const e=await u({nftTokenId:l,orgId:t,currency:null!=i?i:"USD"},{fetchPolicy:"no-cache"}),o=null===(r=null==e?void 0:e.data)||void 0===r?void 0:r.getOffers,n=null==o?void 0:o.map((r=>{var e;return{id:null==r?void 0:r.id,expiryDate:null==r?void 0:r.offerExpiryDate,offerStatus:null==r?void 0:r.orderStatus,buyerAddress:null==r?void 0:r.buyerAddress,price:null==r?void 0:r.price,userName:null===(e=null==r?void 0:r.createdBy)||void 0===e?void 0:e.username,ownerWalletAddress:null==r?void 0:r.nftOwnerAddress}}));return c(n),s(!1),n}catch(r){return s(!1),c(null),null}finally{y(!1)}})(),()=>{r.abort()}}),[l,v,d,u,t,i]),{offerData:a,offerLoading:f,offerRefetch:m}};export{t as useTokenOffer};