manifest-viewer/main.js (27 lines of code) (raw):
class Site extends React.PureComponent {
render() {
return (
<div class="tile">
<img src={this.props.image_url} title={JSON.stringify(this.props.domains)} />
</div>
);
}
}
class Sites extends React.PureComponent {
render() {
return (
<div>
{this.props.sites.map((site, index) => <Site {...site} />)}
</div>
);
}
}
var myRequest = new Request("https://activity-stream-icons.services.mozilla.com/v1/icons.json.br");
fetch(myRequest)
.then(function(response) { return response.json(); })
.then(function(data) {
ReactDOM.render(
React.createElement(Sites, {sites: data}, null),
document.getElementById('root')
);
});