import React, { Component } from 'react' import PropTypes from 'prop-types' import Wallet from 'components/Wallet' import LoadingBolt from 'components/LoadingBolt' import Invoice from './components/Invoice' import Payment from './components/Payment' import Transaction from './components/Transaction' import styles from './Activity.scss' class Activity extends Component { constructor(props, context) { super(props, context) this.renderActivity = this.renderActivity.bind(this) } componentWillMount() { const { fetchPayments, fetchInvoices, fetchTransactions, fetchBalance } = this.props fetchBalance() fetchPayments() fetchInvoices() fetchTransactions() } renderActivity(activity) { const { ticker, currentTicker, showActivityModal, network, currencyName } = this.props if (Object.prototype.hasOwnProperty.call(activity, 'block_hash')) { // activity is an on-chain tx return ( ) } else if (Object.prototype.hasOwnProperty.call(activity, 'payment_request')) { // activity is an LN invoice return } // activity is an LN payment return ( ) } render() { const { balance, activity: { filters, filter, filterPulldown }, changeFilter, currentActivity, network, walletProps } = this.props if (!balance.channelBalance || !balance.walletBalance) { return } return (
    { filters.map(f => (
  • changeFilter(f)}> {f.name}
  • )) }
    { currentActivity.map((activityBlock, index) => (
  • {activityBlock.title}

      { activityBlock.activity.map(activity =>
    • {this.renderActivity(activity.el)}
    • ) }
  • )) }
) } } Activity.propTypes = { fetchPayments: PropTypes.func.isRequired, fetchInvoices: PropTypes.func.isRequired, fetchTransactions: PropTypes.func.isRequired, fetchBalance: PropTypes.func.isRequired, ticker: PropTypes.object.isRequired, currentTicker: PropTypes.object.isRequired, showActivityModal: PropTypes.func.isRequired, changeFilter: PropTypes.func.isRequired, activity: PropTypes.object.isRequired, currentActivity: PropTypes.array.isRequired, balance: PropTypes.object.isRequired, walletProps: PropTypes.object.isRequired } export default Activity