summaryrefslogtreecommitdiff
path: root/front/src/components/feed/Quote.tsx
blob: d71be4064096452edc29b31078507d0eb51949c7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import type { FullNode } from "@/types/trill";
import { date_diff } from "@/logic/utils";
import { useLocation } from "wouter";
import Body from "./Body";
import Sigil from "../Sigil";
import { toFlat } from "./RP";

function Quote({
  data,
  refetch,
  nest,
}: {
  data: FullNode;
  refetch?: Function;
  nest: number;
}) {
  const [_, navigate] = useLocation();
  function gotoQuote(e: React.MouseEvent) {
    e.stopPropagation();
    navigate(`/feed/${data.host}/${data.id}`);
  }
  return (
    <div onMouseUp={gotoQuote} className="quote-in-post">
      <header className="btw">
        (
        <div className="quote-author flex">
          <Sigil patp={data.author} size={20} />
          {data.author}
        </div>
        )<span>{date_diff(data.time, "short")}</span>
      </header>
      <Body poast={toFlat(data)} nest={nest} refetch={refetch!} />
    </div>
  );
}

export default Quote;