var Dashboard = React.createClass({
getInitialState() {
return {isLoading: true}
},
componentDidMount() {
var _My = new My()
var L = _My.MakeLenses(GHConst.githubApiFields)
var getGithub = url => new Future(function(reject, response) {
$.getJSON(url)
.done(function(data) {
response(data)
})
.fail(function(error) {
reject(error)
})
})
var githubUrl = R.concat(GHConst.baseUrl, this.props.data)
var context = this
var displayError = error => { context.setState({error, isLoading: false, id: this.props.data }) }
var displayData = data => { context.setState({
error: null,
isLoading: false,
avatar: L.avatar_url.get(data),
id: L.id.get(data),
name: L.name.get(data),
login: L.login.get(data),
company: L.company.get(data),
location: L.location.get(data),
followers: L.followers.get(data),
following: L.following.get(data),
email: L.email.get(data),
bio: L.bio.get(data),
public_repos: L.public_repos.get(data)
})}
getGithub(githubUrl).fork(displayError, displayData)
},
render() {
return ((context, props, state) => {
var _My = new My()
var L = _My.MakeLenses(['isLoading'])
var show = R.ifElse(L.isLoading, s => , s => )
return show(state)
})(this, this.props, this.state)
}
})