import * as React from 'react'
import { map, orderBy } from 'lodash'
import Slider from 'react-slick'
import * as cx from 'classnames'
import InlineSVG from 'svg-inline-react'
import { IUnreadConversationPanelsComponentProps } from './interfaces'
import './styles.styl'
import ConversationPanel from './ConversationPanel'
const prev = require('!svg-inline-loader?removeSVGTagAttrs=false&removeTags=false!../../../img/svg/slick-prev.svg')
const next = require('!svg-inline-loader?removeSVGTagAttrs=false&removeTags=false!../../../img/svg/slick-next.svg')
const SampleNextArrow = (props: any) => {
const { className, style, onClick } = props
return (
)
}
const SamplePrevArrow = (props: any) => {
const { className, style, onClick } = props
return (
)
}
const settings = {
dots: false,
infinite: false,
speed: 500,
slidesToShow: 3,
slidesToScroll: 1,
variableWidth: true,
nextArrow: ,
prevArrow: ,
}
class UnreadConversationPanels extends React.Component {
slider: any
componentWillReceiveProps() {
this.slider && this.slider.innerSlider.onWindowResized()
}
render() {
const { conversations, endUsersLoading, numberOfUnreadMessagesByConversationId } = this.props
const moreThanThreeMessages = conversations.length > 3
const sortedConversations = orderBy(conversations,
[(conversation: any) => numberOfUnreadMessagesByConversationId[conversation.id], 'updatedAt'],
['desc', 'desc'])
return (!endUsersLoading ?
Your open + pending
Conversations
{sortedConversations.length}
{!!sortedConversations.length &&
this.slider = c} {...settings}>
{
map(sortedConversations, conversation =>
)
}
}
: null
)
}
}
export default UnreadConversationPanels