UNPKG

create-near-app

Version:

Quickly scaffold your dApp on NEAR Blockchain

38 lines (33 loc) 1.12 kB
import { useEffect, useState } from 'react'; import NearLogo from '@/assets/near-logo.svg'; import { Link } from "react-router"; import styles from '@/styles/app.module.css'; import { useWalletSelector } from '@near-wallet-selector/react-hook'; export const Navigation = () => { const { signedAccountId, signIn, signOut } = useWalletSelector(); const [action, setAction] = useState(() => { }); const [label, setLabel] = useState('Loading...'); useEffect(() => { if (signedAccountId) { setAction(() => signOut); setLabel(`Logout ${signedAccountId}`); } else { setAction(() => signIn); setLabel("Login"); } }, [signedAccountId, signIn, signOut]); return ( <nav className="navbar navbar-expand-lg"> <div className="container-fluid"> <Link to="/"> <img src={NearLogo} alt="NEAR" width="30" height="24" className={styles.logo} /> </Link> <div className="navbar-nav pt-1"> <button className="btn btn-secondary" onClick={action}> {label} </button> </div> </div> </nav> ); };