import { Component } from 'inferno'; import { CommentNode as CommentNodeI, CommunityUser, UserView, CommentSortType, SortType, } from '../interfaces'; import { commentSort, commentSortSortType } from '../utils'; import { CommentNode } from './comment-node'; interface CommentNodesState {} interface CommentNodesProps { nodes: Array; moderators?: Array; admins?: Array; postCreatorId?: number; noIndent?: boolean; viewOnly?: boolean; locked?: boolean; markable?: boolean; showContext?: boolean; showCommunity?: boolean; sort?: CommentSortType; sortType?: SortType; enableDownvotes: boolean; } export class CommentNodes extends Component< CommentNodesProps, CommentNodesState > { constructor(props: any, context: any) { super(props, context); } render() { return (
{this.sorter().map(node => ( ))}
); } sorter(): Array { if (this.props.sort !== undefined) { commentSort(this.props.nodes, this.props.sort); } else if (this.props.sortType !== undefined) { commentSortSortType(this.props.nodes, this.props.sortType); } return this.props.nodes; } }