diff --git a/client/src/components/organisms/Web3message.tsx b/client/src/components/organisms/Web3message.tsx
index db59316..6d0ff1c 100644
--- a/client/src/components/organisms/Web3message.tsx
+++ b/client/src/components/organisms/Web3message.tsx
@@ -1,16 +1,15 @@
import React, { PureComponent } from 'react'
import Account from '../atoms/Account'
-import Button from '../atoms/Button'
import AccountStatus from '../molecules/AccountStatus'
import styles from './Web3message.module.scss'
import { User } from '../../context'
+import WalletSelector from './WalletSelector'
import content from '../../data/web3message.json'
export default class Web3message extends PureComponent {
private message = (
message: string,
account?: string,
- unlockAccounts?: () => any
) => (
{account ? (
@@ -19,11 +18,7 @@ export default class Web3message extends PureComponent {
{' '}
- {unlockAccounts && (
-
- )}
+
)}
@@ -33,14 +28,16 @@ export default class Web3message extends PureComponent {
const {
isOceanNetwork,
isLogged,
+ isBurner,
account,
- unlockAccounts
} = this.context
return !isOceanNetwork
? this.message(content.wrongNetwork)
: !isLogged
- ? this.message(content.noAccount, '', unlockAccounts)
+ ? this.message(content.noAccount)
+ : isBurner
+ ? this.message(content.burnerWallet)
: isLogged
? this.message(content.hasAccount, account)
: null
diff --git a/client/src/context/UserProvider.tsx b/client/src/context/UserProvider.tsx
index b55ea88..f92fd01 100644
--- a/client/src/context/UserProvider.tsx
+++ b/client/src/context/UserProvider.tsx
@@ -10,6 +10,7 @@ import { BurnerWalletProvider } from './BurnerWalletProvider'
const POLL_ACCOUNTS = 1000 // every 1s
const POLL_NETWORK = POLL_ACCOUNTS * 60 // every 1 min
+const DEFAULT_WEB3 = new Web3(new Web3.providers.HttpProvider(nodeUri)) // default web3
// taken from
// https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/web3/providers.d.ts
@@ -47,6 +48,7 @@ declare global {
interface UserProviderState {
isLogged: boolean
+ isBurner: boolean
isLoading: boolean
isOceanNetwork: boolean
account: string
@@ -71,6 +73,7 @@ export default class UserProvider extends PureComponent<{}, UserProviderState> {
this.setState(
{
isLogged: true,
+ isBurner: false,
web3
},
() => {
@@ -86,6 +89,7 @@ export default class UserProvider extends PureComponent<{}, UserProviderState> {
this.setState(
{
isLogged: true,
+ isBurner: true,
web3
},
() => {
@@ -96,6 +100,7 @@ export default class UserProvider extends PureComponent<{}, UserProviderState> {
public state = {
isLogged: false,
+ isBurner: false,
isLoading: true,
isOceanNetwork: false,
balance: {
@@ -103,7 +108,7 @@ export default class UserProvider extends PureComponent<{}, UserProviderState> {
ocn: 0
},
network: '',
- web3: new Web3(new Web3.providers.HttpProvider(nodeUri)),
+ web3: DEFAULT_WEB3,
account: '',
ocean: {} as any,
requestFromFaucet: () => requestFromFaucet(''),
@@ -168,24 +173,25 @@ export default class UserProvider extends PureComponent<{}, UserProviderState> {
}
break
case 'BurnerWallet':
- const zerowalletProvider = new BurnerWalletProvider()
- if (await zerowalletProvider.isLogged()) {
- await zerowalletProvider.startLogin()
+ const burnerWalletProvider = new BurnerWalletProvider()
+ if (await burnerWalletProvider.isLogged()) {
+ await burnerWalletProvider.startLogin()
this.setState(
{
isLogged: true,
- web3: zerowalletProvider.getProvider()
+ isBurner: true,
+ web3: burnerWalletProvider.getProvider()
},
() => {
this.loadOcean()
}
)
} else {
- this.loadOcean()
+ this.loginBurnerWallet()
}
break
default:
- this.loadOcean()
+ this.loginBurnerWallet()
break
}
}
diff --git a/client/src/data/web3message.json b/client/src/data/web3message.json
index e651770..59c12f0 100644
--- a/client/src/data/web3message.json
+++ b/client/src/data/web3message.json
@@ -1,6 +1,6 @@
{
- "noweb3": "Not a Web3 Browser. For publishing and downloading an asset you need to setup MetaMask or use any other Web3-capable plugin or browser.",
- "noAccount": "No accounts detected. For publishing and downloading an asset you need to unlock your Web3 account.",
+ "noAccount": "No wallet selected. For publishing and downloading an asset you need to use one.",
+ "burnerWallet": "You are using temporary burner wallet. Improve your security by migrating to Metamask",
"hasAccount": "",
"wrongNetwork": "Not connected to Pacific network.
Please connect in MetaMask with Custom RPC https://pacific.oceanprotocol.com
"
}