//@ts-ignore import BrowserOnly from "@docusaurus/BrowserOnly"; import { useWallet } from "@solana/wallet-adapter-react"; import { WalletModalProvider, WalletMultiButton, } from "@solana/wallet-adapter-react-ui"; import { useAssociatedAccount, useBondingPricing, useErrorHandler, useMint, usePublicKey, useSwap, useTokenBonding, } from "@strata-foundation/react"; import { toNumber } from "@strata-foundation/spl-token-bonding"; import React from "react"; import { useEndpoint } from "@strata-foundation/react"; //@ts-ignore import styles from "./styles.module.css"; import { WalletAdapterNetwork } from "@solana/wallet-adapter-base"; const TOKEN_BONDING = "B8kzSwXLfmZMeLzekExz2e8vefoU1UqgGnZ8NZRYkeou"; const MainnetGuard = ({ children = null as any }) => { const { endpoint, setClusterOrEndpoint } = useEndpoint(); if (endpoint.includes("devnet")) { return (

Net bWUM Exchange

); } return children; }; export const Claim = React.memo(() => { const tokenBondingKey = usePublicKey(TOKEN_BONDING); const { connected, publicKey } = useWallet(); const { info: tokenBonding, loading } = useTokenBonding(tokenBondingKey); const { pricing, loading: loadingPricing } = useBondingPricing(tokenBondingKey); const { associatedAccount: netBwumAccount, loading: assocAccountLoading } = useAssociatedAccount(publicKey, tokenBonding?.targetMint); const targetMint = useMint(tokenBonding?.targetMint); const netTotal = netBwumAccount && targetMint && toNumber(netBwumAccount.amount, targetMint) / Math.pow(10, 9); const solTotal = netTotal && pricing?.sellTargetAmount(netTotal); const connectedNotLoading = !(loading || loadingPricing || assocAccountLoading) && connected; const { execute, loading: executing, error } = useSwap(); const { handleErrors } = useErrorHandler(); handleErrors(error); return (

Net bWUM Exchange

{!connected && ( )} {(loadingPricing || loading || assocAccountLoading) && ( Loading... )} {connectedNotLoading && !netTotal && !solTotal && ( No Net bWUM Found. Make sure you have the wallet that participated in the Wum.bo beta connected, then refresh this page. )} {error && {error.toString()}} {connectedNotLoading && netTotal && solTotal && (

Exchange {netTotal.toFixed(4)} Net bWUM for {solTotal.toFixed(4)}{" "} SOL

)}
); }); export const ClaimBwum: React.FC = () => { return ( ...}> {() => ( )} ); };