import React, { useEffect, useState } from 'react'; import { fetchLiveList } from 'Duck/sessions'; import { connect } from 'react-redux'; import { NoContent, Loader } from 'UI'; import { List, Map } from 'immutable'; import SessionItem from 'Shared/SessionItem'; interface Props { loading: Boolean, list?: List, fetchLiveList: () => void, filters: List } function LiveSessionList(props: Props) { const { loading, list, filters } = props; const [userId, setUserId] = useState(undefined) useEffect(() => { props.fetchLiveList(); }, []) useEffect(() => { console.log(filters) if (filters) { const userIdFilter = filters.filter(i => i.key === 'USERID').first() if (userIdFilter) setUserId(userIdFilter.value[0]) else setUserId(undefined) } }, [filters]) return (
{list && (userId ? list.filter(i => i.userId === userId) : list).map(session => ( ))}
) } export default connect(state => ({ list: state.getIn(['sessions', 'liveSessions']), loading: state.getIn([ 'sessions', 'loading' ]), filters: state.getIn([ 'filters', 'appliedFilter', 'filters' ]), }), { fetchLiveList })(LiveSessionList)