'use strict'; var React = require('react'); var request = require('axios'); var _ = require('lodash'); var transformers = require('../util'); var api = require('../api'); function throwError(err) { setTimeout(() => { console.log(err.stack); throw err; }); } module.exports = React.createClass({ getInitialState() { return { messages: [] }; }, componentDidMount() { request.get(api('feeds')) .then((res) => { const messages = _(res.data) .map((messages, type) => messages.map(transformers[type])) .flatten() .value(); console.log(messages); this.setState({ messages: _(messages).sortBy('timestamp').reverse().value().slice(0, 40) }); }).catch(throwError); }, render() { var messages = this.state.messages.map((message, i) => { var image = ; if(message.imageLink) { image = {image}; } return (
{image}
{message.user}
{require('timeago')(message.timestamp)} {message.meta}
) }); return (
{messages}
) } });