/ src / hooks / use-count-links-in-replies.ts
use-count-links-in-replies.ts
 1  import { useMemo } from 'react';
 2  import { Comment } from '@plebbit/plebbit-react-hooks';
 3  import { flattenCommentsPages } from '@plebbit/plebbit-react-hooks/dist/lib/utils';
 4  
 5  const useCountLinksInReplies = (comment: Comment, firstXReplies?: number) => {
 6    let linkCount = 0;
 7    const flattenedReplies = useMemo(() => flattenCommentsPages(comment?.replies), [comment?.replies]);
 8  
 9    const repliesToConsider = firstXReplies !== undefined ? flattenedReplies.slice(0, firstXReplies) : flattenedReplies;
10  
11    for (let reply of repliesToConsider) {
12      if (reply.link) {
13        linkCount++;
14      }
15    }
16  
17    return linkCount;
18  };
19  
20  export default useCountLinksInReplies;