mirror of https://github.com/embarklabs/embark.git
add register in demo
This commit is contained in:
parent
297128290a
commit
89421771ef
|
@ -1,6 +1,7 @@
|
||||||
|
/*global web3*/
|
||||||
import EmbarkJS from 'Embark/EmbarkJS';
|
import EmbarkJS from 'Embark/EmbarkJS';
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import {Alert, Form, FormGroup, FormControl, Button} from 'react-bootstrap';
|
import { Alert, Form, FormGroup, FormControl, Button } from 'react-bootstrap';
|
||||||
|
|
||||||
window.EmbarkJS = EmbarkJS;
|
window.EmbarkJS = EmbarkJS;
|
||||||
|
|
||||||
|
@ -10,18 +11,49 @@ class ENS extends React.Component {
|
||||||
super(props);
|
super(props);
|
||||||
|
|
||||||
this.state = {
|
this.state = {
|
||||||
valueResolve: 'ethereumfoundation.eth',
|
valueResolve: 'embark.eth',
|
||||||
responseResolve: null,
|
responseResolve: null,
|
||||||
isResolveError: false,
|
isResolveError: false,
|
||||||
valueLookup: '0xfB6916095ca1df60bB79Ce92cE3Ea74c37c5d359',
|
valueLookup: '',
|
||||||
responseLookup: null,
|
responseLookup: null,
|
||||||
isLookupError: false,
|
isLookupError: false,
|
||||||
|
valueRegister: '',
|
||||||
|
addressRegister: '',
|
||||||
|
responseRegister: null,
|
||||||
|
isRegisterError: false,
|
||||||
embarkLogs: []
|
embarkLogs: []
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
componentWillMount() {
|
||||||
|
EmbarkJS.onReady(() => {
|
||||||
|
this.setState({
|
||||||
|
addressRegister: web3.eth.defaultAccount,
|
||||||
|
valueLookup: web3.eth.defaultAccount
|
||||||
|
})
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
handleChange(stateName, e) {
|
handleChange(stateName, e) {
|
||||||
this.setState({[stateName]: e.target.value});
|
this.setState({ [stateName]: e.target.value });
|
||||||
|
}
|
||||||
|
|
||||||
|
registerSubDomain(e) {
|
||||||
|
e.preventDefault();
|
||||||
|
const self = this;
|
||||||
|
const embarkLogs = this.state.embarkLogs;
|
||||||
|
embarkLogs.push(`EmbarkJS.Names.registerSubDomain('${this.state.valueRegister}', '${this.state.addressRegister}', console.log)`);
|
||||||
|
this.setState({
|
||||||
|
embarkLogs: embarkLogs
|
||||||
|
});
|
||||||
|
|
||||||
|
EmbarkJS.Names.registerSubDomain(this.state.valueRegister, this.state.addressRegister, (err, transaction) => {
|
||||||
|
const message = err ? err : `Successfully registered "${this.state.valueRegister}" with ${transaction.gasUsed} gas`;
|
||||||
|
self.setState({
|
||||||
|
responseRegister: message,
|
||||||
|
isRegisterError: !!err
|
||||||
|
});
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
resolveName(e) {
|
resolveName(e) {
|
||||||
|
@ -35,7 +67,7 @@ class ENS extends React.Component {
|
||||||
EmbarkJS.Names.resolve(this.state.valueResolve, (err, result) => {
|
EmbarkJS.Names.resolve(this.state.valueResolve, (err, result) => {
|
||||||
if (err) {
|
if (err) {
|
||||||
return this.setState({
|
return this.setState({
|
||||||
responseResolve: err,
|
responseResolve: err.message || err,
|
||||||
isResolveError: true
|
isResolveError: true
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -57,7 +89,7 @@ class ENS extends React.Component {
|
||||||
EmbarkJS.Names.lookup(this.state.valueLookup, (err, result) => {
|
EmbarkJS.Names.lookup(this.state.valueLookup, (err, result) => {
|
||||||
if (err) {
|
if (err) {
|
||||||
return this.setState({
|
return this.setState({
|
||||||
responseLookup: err,
|
responseLookup: err.message || err,
|
||||||
isLookupError: true
|
isLookupError: true
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -70,12 +102,6 @@ class ENS extends React.Component {
|
||||||
|
|
||||||
render() {
|
render() {
|
||||||
return (<React.Fragment>
|
return (<React.Fragment>
|
||||||
{
|
|
||||||
!this.props.enabled ?
|
|
||||||
<React.Fragment>
|
|
||||||
<Alert bsStyle="warning">ENS provider might not be set</Alert>
|
|
||||||
</React.Fragment> : ''
|
|
||||||
}
|
|
||||||
<h3>Resolve a name</h3>
|
<h3>Resolve a name</h3>
|
||||||
<Form inline>
|
<Form inline>
|
||||||
<FormGroup>
|
<FormGroup>
|
||||||
|
@ -106,6 +132,25 @@ class ENS extends React.Component {
|
||||||
</FormGroup>
|
</FormGroup>
|
||||||
</Form>
|
</Form>
|
||||||
|
|
||||||
|
<h3>Register subdomain for embark</h3>
|
||||||
|
<Form inline>
|
||||||
|
<FormGroup>
|
||||||
|
{this.state.responseRegister &&
|
||||||
|
<Alert className="alert-result" bsStyle={this.state.isRegisterError ? 'danger' : 'success'}>
|
||||||
|
<span className="value">{this.state.responseRegister}</span>
|
||||||
|
</Alert>}
|
||||||
|
<FormControl
|
||||||
|
type="text"
|
||||||
|
defaultValue={this.state.valueRegister}
|
||||||
|
onChange={(e) => this.handleChange('valueRegister', e)}/>
|
||||||
|
<FormControl
|
||||||
|
type="text"
|
||||||
|
defaultValue={this.state.addressRegister}
|
||||||
|
onChange={(e) => this.handleChange('addressRegister', e)}/>
|
||||||
|
<Button bsStyle="primary" onClick={(e) => this.registerSubDomain(e)}>Register subdomain</Button>
|
||||||
|
</FormGroup>
|
||||||
|
</Form>
|
||||||
|
|
||||||
<h3>Embark Calls </h3>
|
<h3>Embark Calls </h3>
|
||||||
<p>Javascript calls being made: </p>
|
<p>Javascript calls being made: </p>
|
||||||
<div className="logs">
|
<div className="logs">
|
||||||
|
|
|
@ -1,6 +1,12 @@
|
||||||
module.exports = {
|
module.exports = {
|
||||||
default: {
|
default: {
|
||||||
available_providers: ["ens"],
|
available_providers: ["ens"],
|
||||||
provider: "ens"
|
provider: "ens",
|
||||||
|
register: {
|
||||||
|
rootDomain: "embark.eth",
|
||||||
|
domains: {
|
||||||
|
'status': '0x1a2f3b98e434c02363f3dac3174af93c1d690914'
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in New Issue