import { Badge, List, Tag } from "antd"; import React from "react"; import { connect } from "react-redux"; import { createStructuredSelector } from "reselect"; import { setSelectedConversation } from "../../redux/messaging/messaging.actions"; import { selectSelectedConversation } from "../../redux/messaging/messaging.selectors"; import { TimeAgoFormatter } from "../../utils/DateFormatter"; import PhoneFormatter from "../../utils/PhoneFormatter"; import "./chat-conversation-list.styles.scss"; import OwnerNameDisplay from "../owner-name-display/owner-name-display.component"; const mapStateToProps = createStructuredSelector({ selectedConversation: selectSelectedConversation, }); const mapDispatchToProps = (dispatch) => ({ setSelectedConversation: (conversationId) => dispatch(setSelectedConversation(conversationId)), }); export function ChatConversationListComponent({ conversationList, selectedConversation, setSelectedConversation, }) { return (
( setSelectedConversation(item.id)} className={`chat-list-item ${ item.id === selectedConversation ? "chat-list-selected-conversation" : null }`} > {item.job_conversations.length > 0 ? (
{item.job_conversations.map((j, idx) => (
))}
) : ( {item.phone_num} )}
{item.job_conversations.length > 0 ? item.job_conversations.map((j, idx) => ( {j.job.ro_number} )) : null}
{item.updated_at}
)} />
); } export default connect( mapStateToProps, mapDispatchToProps )(ChatConversationListComponent);