1
0
mirror of https://github.com/oceanprotocol/market.git synced 2024-06-26 03:06:49 +02:00

Remove collect tokens button (#1235)

Co-authored-by: ClaudiaHolhos <claudia@oceanprotocol.com>
This commit is contained in:
claudiaHash 2022-03-23 15:30:03 +02:00 committed by GitHub
parent 926838862a
commit 5f174bca88
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 4 additions and 125 deletions

View File

@ -11,13 +11,6 @@ export function getOrderFeedback(
}
}
export function getCollectTokensFeedback(
baseTokenSymbol: string,
baseTokenBalance: string
) {
return `Collecting ${baseTokenBalance} ${baseTokenSymbol} from asset `
}
// TODO: customize for compute
export const computeFeedback: { [key in number]: string } = {
0: 'Ordering asset...',

View File

@ -4,7 +4,7 @@ import styles from './index.module.css'
import Loader from '../atoms/Loader'
interface ButtonBuyProps {
action: 'download' | 'compute' | 'collect'
action: 'download' | 'compute'
disabled: boolean
hasPreviousOrder: boolean
hasDatatoken: boolean
@ -153,8 +153,6 @@ export default function ButtonBuy({
? 'Start Compute Job'
: priceType === 'free' && algorithmPriceType === 'free'
? 'Order Compute Job'
: action === 'collect'
? `Collect ${dtBalance} ${dtSymbol}`
: `Buy Compute Job`
return (

View File

@ -16,10 +16,3 @@
width: 100%;
margin-top: calc(var(--spacer));
}
.collect {
width: 100%;
justify-content: center;
text-align: center;
margin-top: calc(var(--spacer) / 2);
}

View File

@ -7,37 +7,16 @@ import ButtonBuy from '@shared/ButtonBuy'
import { secondsToString } from '@utils/ddo'
import AlgorithmDatasetsListForCompute from './Compute/AlgorithmDatasetsListForCompute'
import styles from './Download.module.css'
import {
FileMetadata,
LoggerInstance,
ZERO_ADDRESS,
FixedRateExchange
} from '@oceanprotocol/lib'
import { FileMetadata, LoggerInstance, ZERO_ADDRESS } from '@oceanprotocol/lib'
import { order } from '@utils/order'
import { AssetExtended } from 'src/@types/AssetExtended'
import { buyDtFromPool } from '@utils/pool'
import { downloadFile } from '@utils/provider'
import { getCollectTokensFeedback, getOrderFeedback } from '@utils/feedback'
import { getOrderFeedback } from '@utils/feedback'
import { getOrderPriceAndFees } from '@utils/accessDetailsAndPricing'
import { OrderPriceAndFees } from 'src/@types/Price'
import { toast } from 'react-toastify'
import { gql, OperationResult } from 'urql'
import { fetchData, getQueryContext } from '@utils/subgraph'
import { getOceanConfig } from '@utils/ocean'
import { FixedRateExchanges } from 'src/@types/subgraph/FixedRateExchanges'
const FixedRateExchangesQuery = gql`
query FixedRateExchanges($user: String, $exchangeId: String) {
fixedRateExchanges(where: { owner: $user, exchangeId: $exchangeId }) {
id
owner {
id
}
exchangeId
baseTokenBalance
}
}
`
export default function Download({
asset,
file,
@ -61,9 +40,7 @@ export default function Download({
const [isLoading, setIsLoading] = useState(false)
const [isOwned, setIsOwned] = useState(false)
const [validOrderTx, setValidOrderTx] = useState('')
const [isCollectLoading, setIsCollectLoading] = useState(false)
const [baseTokenBalance, setBaseTokenBalance] = useState(0)
const [collectStatusText, setCollectStatusText] = useState('')
const [orderPriceAndFees, setOrderPriceAndFees] =
useState<OrderPriceAndFees>()
useEffect(() => {
@ -108,29 +85,6 @@ export default function Download({
isOwned
])
useEffect(() => {
if (!accountId || asset.nft.owner !== accountId) return
const queryContext = getQueryContext(Number(asset.chainId))
async function getBaseTokenBalance() {
const variables = {
user: accountId.toLowerCase(),
exchangeId: asset?.accessDetails?.addressOrId
}
const result: OperationResult<FixedRateExchanges> = await fetchData(
FixedRateExchangesQuery,
variables,
queryContext
)
result?.data?.fixedRateExchanges[0]?.baseTokenBalance
? setBaseTokenBalance(
parseInt(result?.data?.fixedRateExchanges[0]?.baseTokenBalance)
)
: setBaseTokenBalance(0)
}
getBaseTokenBalance()
}, [accountId, asset?.accessDetails?.addressOrId, asset.chainId, asset.nft])
async function handleOrderOrDownload() {
setIsLoading(true)
if (isOwned) {
@ -180,38 +134,6 @@ export default function Download({
setIsLoading(false)
}
async function handleCollectTokens() {
setIsCollectLoading(true)
const config = getOceanConfig(asset?.chainId)
const fixed = new FixedRateExchange(web3, config.fixedRateExchangeAddress)
try {
setCollectStatusText(
getCollectTokensFeedback(
asset.accessDetails.baseToken?.symbol,
baseTokenBalance.toString()
)
)
const tx = await fixed.collectBT(
accountId,
asset?.accessDetails?.addressOrId,
baseTokenBalance.toString()
)
if (!tx) {
setIsCollectLoading(false)
return
}
setBaseTokenBalance(0)
return tx
} catch (error) {
LoggerInstance.log(error.message)
setIsCollectLoading(false)
} finally {
setIsCollectLoading(false)
}
}
const PurchaseButton = () => (
<ButtonBuy
action="download"
@ -234,26 +156,6 @@ export default function Download({
/>
)
const CollectTokensButton = () => (
<ButtonBuy
action="collect"
onClick={handleCollectTokens}
disabled={baseTokenBalance === 0 || !baseTokenBalance}
hasPreviousOrder={false}
hasDatatoken={false}
dtSymbol={asset?.accessDetails?.baseToken.symbol}
dtBalance={baseTokenBalance.toString()}
datasetLowPoolLiquidity={false}
assetType=""
stepText={collectStatusText}
assetTimeout=""
isConsumable={false}
consumableFeedback=""
isBalanceSufficient={false}
isLoading={isCollectLoading}
/>
)
return (
<aside className={styles.consume}>
<div className={styles.info}>
@ -271,13 +173,6 @@ export default function Download({
</div>
</div>
{asset?.accessDetails?.datatoken?.name !== '' &&
asset?.nft.owner === accountId && (
<div className={styles.collect}>
<CollectTokensButton />
</div>
)}
{asset?.metadata?.type === 'algorithm' && (
<AlgorithmDatasetsListForCompute
algorithmDid={asset.id}