1
0
mirror of https://github.com/oceanprotocol/commons.git synced 2023-03-15 18:03:00 +01:00

Merge pull request #100 from oceanprotocol/feature/faucet-response

Adapt to new faucet server response format
This commit is contained in:
Matthias Kretschmann 2019-04-11 20:06:37 +02:00 committed by GitHub
commit 300b343954
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 33 additions and 6 deletions

View File

@ -12,6 +12,19 @@
.success { .success {
color: $green; color: $green;
p {
margin-top: $spacer / 2;
}
strong {
display: block;
}
code {
overflow-wrap: break-word;
display: inline;
}
} }
.error { .error {

View File

@ -10,13 +10,15 @@ interface FaucetState {
isLoading: boolean isLoading: boolean
success?: string success?: string
error?: string error?: string
trxHash?: string
} }
export default class Faucet extends PureComponent<{}, FaucetState> { export default class Faucet extends PureComponent<{}, FaucetState> {
public state = { public state = {
isLoading: false, isLoading: false,
success: undefined, success: undefined,
error: undefined error: undefined,
trxHash: undefined
} }
private getTokens = async (requestFromFaucet: () => any) => { private getTokens = async (requestFromFaucet: () => any) => {
@ -25,18 +27,20 @@ export default class Faucet extends PureComponent<{}, FaucetState> {
try { try {
const response = await requestFromFaucet() const response = await requestFromFaucet()
if (response.error) { if (!response.success) {
this.setState({ this.setState({
isLoading: false, isLoading: false,
error: response.error error: response.message
}) })
return return
} }
const { trxHash } = response
this.setState({ this.setState({
isLoading: false, isLoading: false,
success: 'Successfully added ETH to your account.' success: response.message,
trxHash
}) })
} catch (error) { } catch (error) {
this.setState({ isLoading: false, error }) this.setState({ isLoading: false, error })
@ -52,7 +56,13 @@ export default class Faucet extends PureComponent<{}, FaucetState> {
} }
private Success = () => ( private Success = () => (
<div className={styles.success}>{this.state.success}</div> <div className={styles.success}>
<strong>{this.state.success}</strong>
<p>
<strong>Your Transaction Hash</strong>
<code>{this.state.trxHash}</code>
</p>
</div>
) )
private Error = () => ( private Error = () => (

View File

@ -20,6 +20,10 @@
{ {
"name": "squid-js", "name": "squid-js",
"version": "~0.5.3" "version": "~0.5.3"
},
{
"name": "faucet",
"version": "~0.2.0"
} }
] ]
} }