lbry-desktop/ui/js/page/showPage/view.jsx
2017-05-14 23:50:59 -04:00

63 lines
1.4 KiB
JavaScript

import React from 'react';
import {
BusyMessage,
} from 'component/common';
import FilePage from 'page/filePage'
class ShowPage extends React.Component{
componentWillMount() {
this.resolve(this.props)
}
componentWillReceiveProps(nextProps) {
this.resolve(nextProps)
}
resolve(props) {
const {
isResolvingUri,
resolveUri,
claim,
uri,
} = props
if(!isResolvingUri && claim === undefined && uri) {
resolveUri(uri)
}
}
render() {
const {
claim,
uri,
isResolvingUri,
} = this.props
let innerContent = "";
if (isResolvingUri || !claim) {
innerContent = <section className="card">
<div className="card__inner">
<div className="card__title-identity"><h1>{uri}</h1></div>
</div>
<div className="card__content">
{ isResolvingUri && <BusyMessage message="Loading magic decentralized data..." /> }
{ claim === null && <span className="empty">There's nothing at this location.</span> }
</div>
</section>
}
else if (claim.name.length && claim.name[0] === '@') {
innerContent = "channel"
// innerContent = <ChannelPage claim={claim} />
}
else if (claim) {
innerContent = <FilePage uri={uri} />
}
return (
<main className="main--single-column">{innerContent}</main>
)
}
}
export default ShowPage