Trade Your NFTs with Us ❤
+Site Message: {site_message}
+
+ Site Fees: 0.15%
+
+ 0.05% - "Listing Fee" (Taken when purchased)
+
+ 0.1% - "Purchase Fee" - 50% is returned to the Lister and 50% Creator
+
{name}
++ Price: {orders[0].makePrice}{' '} + {currencyType(id.split(':')[0])} +
+{`${error.message}`}
} + {loading && ( + <> +Age
| +Type
| +Token ID
| +From
| +Owner
| +Contract
| +Loading Activity...
+Age
| +Type
| +Token ID
| +From
| +Owner
| +Contract
| ++ No Activity Found, Please Try Again, or Search Using Another + Address +
+ )} ++ {moment(_date, 'YYYYMMDD').fromNow()} +
{' '} + |{type}
|{' '} + <> + {' '} +
+ {tokenId !== null ? (
+
+ {from !== null ? (
+
+ {owner !== null ? (
+
+ {contract !== null ? (
+
Age
| +Type
| +Token ID
| +From
| +Owner
| +Contract
| ++ No Activity Found, Please Try Again, or Check Back Later +
+ } +Age
| +Type
| +Token ID
| +From
| +Owner
| +Contract
| +Loading Activity...
+Age
| +Type
| +Token ID
| +From
| +Owner
| +Contract
| +Blockchain
| ++ No Activity Found, Please Try Again, or Search Using Another + Address +
+ )} ++ {moment(_date, 'YYYYMMDD').fromNow()} +
{' '} + |{type}
|{' '} + <> + {' '} +
+ {tokenId !== null ? (
+
+ {from !== null ? (
+
+ {owner !== null ? (
+
+ {contract !== null ? (
+
+ {blockchain !== null && blockchain} +
{' '} + |{' '} + > +{label}
+ ++ Author:{' '} + + {truncateAddress(order.maker.split(':')[1])} + +
{' '} ++ Platform:{' '} + + {order.platform} + +
{' '} ++ {' '} + For Sell:{' '} + + {order.makeStock} + +
+Age
| +Platform
| +Supply
| +Price
| +Price USD
| + {/*Contract
| */} +Blockchain
| ++ No Orders Found, Please Try Again, or Check Back Later +
+ } +Age
| +Platform
| +Supply
| +Price
| +Price USD
| + {/*Contract
| */} +Blockchain
| +Loading Orders...
+Age
| +Platform
| +Supply
| +Price
| +Price USD
| + {/*Contract
| */} +Blockchain
| ++ No Orders Found, Please Try Again, or Search Using Another + Address +
+ )} ++ {moment(_date, 'YYYYMMDD').fromNow()} +
{' '} + |{platform}
|{' '} + <> + {' '} ++ {makeStock} +
|{' '} + > + <> + {' '} ++ {makePrice} {currencyABRV(id.split(':')[0])} +
{' '} + |{' '} + > + <> + {' '} ++ ${makePriceUsd} +
{' '} + |{' '} + > + <> + {' '} ++ {id.split(':')[0]} +
{' '} + |{' '} + > + <> + {' '} ++ {typeof make.type !== 'undefined' && make.type.contract !== null && ( + + View on RArible + + )} +
{' '} + |{' '} + > + <> + {' '} ++ {connection.state.status === 'connected' && + ((id.split(':')[0] == blockchain && chainId == 1) || + (id.split(':')[0] == 'POLYGON' && chainId == 137)) ? ( +
{label}
+ +{children}
+}
\ No newline at end of file
diff --git a/src/components/common/input.tsx b/src/components/common/input.tsx
new file mode 100644
index 0000000..b1a7254
--- /dev/null
+++ b/src/components/common/input.tsx
@@ -0,0 +1,60 @@
+import React from 'react';
+interface p_Input {
+ id?: string;
+ label: string;
+ value: string;
+ onChange: (e: React.ChangeEvent
+ {JSON.stringify(transaction, null, " ")}
+
+ >
+}
\ No newline at end of file
diff --git a/src/components/common/unsupported-blockchain-warning.tsx b/src/components/common/unsupported-blockchain-warning.tsx
new file mode 100644
index 0000000..87f76cc
--- /dev/null
+++ b/src/components/common/unsupported-blockchain-warning.tsx
@@ -0,0 +1,21 @@
+import React from "react"
+import { Blockchain } from "@rarible/api-client"
+import { Alert, AlertTitle } from "@mui/material"
+
+interface IUnsupportedBlockchainWarningProps {
+ blockchain: Blockchain | undefined
+ message?: string
+}
+
+export function UnsupportedBlockchainWarning({ blockchain, message }: IUnsupportedBlockchainWarningProps) {
+ return + NFT - BLOCKCHAIN:COLLECTION_ADDRESS:NFT_ID +
+USER - BLOCKCHAIN:ADDRESS
+COLLECTION - BLOCKCHAIN:ADDRESS
+IMPORTANT: Please read the guide before minting!
+ ++ Page {pageNumber || (numPages ? 1 : '--')} of {numPages || '--'} +
+ ++ {tokenData?.nft.name} +
+{tokenData?.nft.blockchain}
++ {truncateAddress(address)} +
{' '} + {address !== null && address !== undefined && ( + <> + +Total Supply: {<>{tokenData?.supply}>}
+{tokenData?.description}
+Total Supply: {<>{tokenData.nfts[0]?.supply}>}
+ {/*{nfts[0]?.description}
*/} ++ Author:{' '} + + {truncateAddress(order.maker.split(':')[1])} + +
{' '} ++ {' '} + For Sell:{' '} + + {order.makeStock} + +
+
+ {' '}
+ Price:
+
+ {blockchain == 'ETHEREUM'
+ ? 'ETH'
+ : blockchain == 'TEZOS'
+ ? 'XTZ'
+ : 'FLOW'}{' '}
+ + 1% Fee
+
{walletData?.totalSupply} Owned
+ + +
+ {`
+// get order info
+const accept = await connection.sdk.order.acceptBid({
+ orderId:
+})
+
+// send transaction
+const result = await accept.submit({
+ amount: 1,
+})
+// result: IBlockchainTransaction
+ `}
+
+ >
+}
diff --git a/src/views/bid/bid-form.tsx b/src/views/bid/bid-form.tsx
new file mode 100644
index 0000000..704da30
--- /dev/null
+++ b/src/views/bid/bid-form.tsx
@@ -0,0 +1,82 @@
+import React, { useContext } from "react"
+import { useForm } from "react-hook-form"
+import { Box, Stack } from "@mui/material"
+import { PrepareBidResponse } from "@rarible/sdk/build/types/order/bid/domain"
+import { toBigNumber } from "@rarible/types"
+import { FormTextInput } from "../../components/common/form/form-text-input"
+import { FormSubmit } from "../../components/common/form/form-submit"
+import { resultToState, useRequestResult } from "../../components/hooks/use-request-result"
+import { ConnectorContext } from "../../components/connector/sdk-connection-provider"
+import { RequestResult } from "../../components/common/request-result"
+import { getCurrency } from "../../common/get-currency"
+
+
+interface IBidFormProps {
+ prepare: PrepareBidResponse
+ disabled?: boolean
+ onComplete: (response: any) => void
+}
+
+export function BidForm({ prepare, disabled, onComplete }: IBidFormProps) {
+ const connection = useContext(ConnectorContext)
+ const form = useForm()
+ const { handleSubmit } = form
+ const { result, setError } = useRequestResult()
+
+ return (
+ <>
+
+
+ {`
+// get sell info
+const bid = await connection.sdk.order.bid({
+ itemId: -
+})
+
+// send transaction
+const result = await bid.submit({
+ price: 2,
+ currency: {
+ "@type": "ERC20",
+ contract: "ETHEREUM:0xc778417E063141139Fce010982780140Aa0cD5Ab" // WETH contract address
+ },
+ amount: 1,
+})
+// result: string - order id
+ `}
+
+ >
+}
diff --git a/src/views/buy/buy-form.tsx b/src/views/buy/buy-form.tsx
new file mode 100644
index 0000000..681fc1e
--- /dev/null
+++ b/src/views/buy/buy-form.tsx
@@ -0,0 +1,66 @@
+import React, { useContext } from "react"
+import { useForm } from "react-hook-form"
+import { Box, Stack } from "@mui/material"
+import { PrepareFillResponse } from "@rarible/sdk/build/types/order/fill/domain"
+import { FormTextInput } from "../../components/common/form/form-text-input"
+import { FormSubmit } from "../../components/common/form/form-submit"
+import { resultToState, useRequestResult } from "../../components/hooks/use-request-result"
+import { ConnectorContext } from "../../components/connector/sdk-connection-provider"
+import { RequestResult } from "../../components/common/request-result"
+
+interface IBuyFormProps {
+ prepare: PrepareFillResponse
+ disabled?: boolean
+ onComplete: (response: any) => void
+}
+
+export function BuyForm({ prepare, disabled, onComplete }: IBuyFormProps) {
+ const connection = useContext(ConnectorContext)
+ const form = useForm()
+ const { handleSubmit } = form
+ const { result, setError } = useRequestResult()
+
+ return (
+ <>
+
+
+ {`
+// get order info
+const buy = await connection.sdk.order.buy({
+ orderId:
+})
+// buy: {
+// baseFee: number
+// maxAmount: BigNumber
+// multiple: boolean
+// submit: Function
+// supportsPartialFill: boolean }
+// }
+
+// send transaction
+const result = await buy.submit({
+ amount: 1,
+})
+// result: IBlockchainTransaction
+ `}
+
+ >
+}
diff --git a/src/views/connect/comments/connector-usage-comment.tsx b/src/views/connect/comments/connector-usage-comment.tsx
new file mode 100644
index 0000000..edb1f55
--- /dev/null
+++ b/src/views/connect/comments/connector-usage-comment.tsx
@@ -0,0 +1,47 @@
+import React from "react"
+import { Link, Typography } from "@mui/material"
+import { Code } from "../../../components/common/code"
+import { InlineCode } from "../../../components/common/inline-code"
+
+export function ConnectorUsageComment() {
+ return <>
+
+ {`
+import { Connector, InjectedWeb3ConnectionProvider } from "@rarible/connector"
+import { MEWConnectionProvider } from "@rarible/connector-mew"
+
+// 1. Configure providers
+const injected = new InjectedWeb3ConnectionProvider()
+const mew = new MEWConnectionProvider({
+ networkId: 4,
+ rpcUrl: ethereumRpcMap[4]
+})
+
+// 2. Create connector
+const connector = Connector
+ .create(injected)
+ .add(mew)
+
+// 3. Connector ready to use
+connector.connection.subscribe((con) => {
+ if (con.status === "connected") {
+ // use connection to create sdk here
+ }
+})
+
+// get list of available options
+const options = await connector.getOptions()
+// connect to first one
+await connector.connect(options[0])
+ `}
+
+
+ {`
+sdk.nft.deploy({
+ blockchain: Blockchain.ETHEREUM,
+ asset: {
+ assetType: "ERC721",
+ arguments: {
+ name: "My Collection",
+ symbol: "MYCOL",
+ baseURI: "https://example.com",
+ contractURI: "https://example.com",
+ isUserToken: false
+ }
+ }
+})
+ `}
+
+ >
+}
diff --git a/src/views/deploy/comments/collection-result-comment.tsx b/src/views/deploy/comments/collection-result-comment.tsx
new file mode 100644
index 0000000..1e99a38
--- /dev/null
+++ b/src/views/deploy/comments/collection-result-comment.tsx
@@ -0,0 +1,11 @@
+import React from "react"
+import { Typography } from "@mui/material"
+import { InlineCode } from "../../../components/common/inline-code"
+
+export function CollectionResultComment() {
+ return <>
+
+ {`
+// get collection by id
+const collection = await sdk.apis.collection.getCollectionById({
+ collection:
+})
+
+// get mint info
+const mint = await sdk.nft.mint({ collection })
+// mint: {
+// multiple: boolean,
+// supportsRoyalties: boolean,
+// supportsLazyMint: boolean,
+// submit: Function
+// }
+
+// send transaction
+const result = await mint.submit({
+ uri: "TOKEN URI",
+ supply: 1,
+ lazyMint: false
+})
+// result: {
+// type: "on-chain",
+// itemId: string,
+// transaction: IBlockchainTransaction
+// } | {
+// type: "off-chain",
+// itemId: string
+// }
+ `}
+
+ >
+}
diff --git a/src/views/mint/mint-form.tsx b/src/views/mint/mint-form.tsx
new file mode 100644
index 0000000..64a71d6
--- /dev/null
+++ b/src/views/mint/mint-form.tsx
@@ -0,0 +1,76 @@
+import React, { useContext } from "react"
+import { useForm } from "react-hook-form"
+import { Box, Stack } from "@mui/material"
+import { MintResponse, PrepareMintResponse } from "@rarible/sdk/build/types/nft/mint/domain"
+import { FormTextInput } from "../../components/common/form/form-text-input"
+import { FormSubmit } from "../../components/common/form/form-submit"
+import { resultToState, useRequestResult } from "../../components/hooks/use-request-result"
+import { ConnectorContext } from "../../components/connector/sdk-connection-provider"
+import { FormCheckbox } from "../../components/common/form/form-checkbox"
+import { RequestResult } from "../../components/common/request-result"
+
+
+interface IMintFormProps {
+ prepare: PrepareMintResponse
+ disabled?: boolean
+ onComplete: (response: MintResponse) => void
+}
+
+export function MintForm({ prepare, disabled, onComplete }: IMintFormProps) {
+ const connection = useContext(ConnectorContext)
+ const form = useForm()
+ const { handleSubmit } = form
+ const { result, setError } = useRequestResult()
+
+ return (
+ <>
+
+
+ {`
+// get sell info
+const sell = await connection.sdk.order.sell({
+ itemId: -
+})
+// sell: {
+// baseFee: number
+// maxAmount: BigNumber
+// multiple: boolean
+// submit: Function
+// supportedCurrencies: - supported currencies list
+// }
+
+// send transaction
+const result = await sell.submit({
+ price: 2,
+ currency: {"@type": "ETH"},
+ amount: 1,
+})
+// result: string - order id
+ `}
+
+ >
+}
diff --git a/src/views/sell/sell-form.tsx b/src/views/sell/sell-form.tsx
new file mode 100644
index 0000000..5016a9d
--- /dev/null
+++ b/src/views/sell/sell-form.tsx
@@ -0,0 +1,81 @@
+import React, { useContext } from "react"
+import { useForm } from "react-hook-form"
+import { Box, Stack } from "@mui/material"
+import { PrepareOrderResponse } from "@rarible/sdk/build/types/order/common"
+import { toBigNumber } from "@rarible/types"
+import { FormTextInput } from "../../components/common/form/form-text-input"
+import { FormSubmit } from "../../components/common/form/form-submit"
+import { resultToState, useRequestResult } from "../../components/hooks/use-request-result"
+import { ConnectorContext } from "../../components/connector/sdk-connection-provider"
+import { RequestResult } from "../../components/common/request-result"
+import { getCurrency } from "../../common/get-currency"
+
+interface ISellFormProps {
+ onComplete: (response: any) => void
+ prepare: PrepareOrderResponse
+ disabled?: boolean
+}
+
+export function SellForm({ prepare, disabled, onComplete }: ISellFormProps) {
+ const connection = useContext(ConnectorContext)
+ const form = useForm()
+ const { handleSubmit } = form
+ const { result, setError } = useRequestResult()
+
+ return (
+ <>
+
+