revite/src/components/ui/DateDivider.tsx

49 lines
933 B
TypeScript
Raw Normal View History

import dayjs from "dayjs";
import styled, { css } from "styled-components";
const Base = styled.div<{ unread?: boolean }>`
2021-07-05 06:23:23 -04:00
height: 0;
display: flex;
user-select: none;
align-items: center;
margin: 17px 12px 5px;
border-top: thin solid var(--tertiary-foreground);
2021-07-05 06:23:23 -04:00
time {
margin-top: -2px;
font-size: 0.6875rem;
line-height: 0.6875rem;
padding: 2px 5px 2px 0;
color: var(--tertiary-foreground);
background: var(--primary-background);
}
2021-07-05 06:23:23 -04:00
${(props) =>
props.unread &&
css`
border-top: thin solid var(--accent);
`}
`;
const Unread = styled.div`
2021-07-05 06:23:23 -04:00
background: var(--accent);
color: white;
padding: 5px 8px;
border-radius: 60px;
font-weight: 600;
`;
interface Props {
2021-07-05 06:23:23 -04:00
date: Date;
unread?: boolean;
}
export default function DateDivider(props: Props) {
2021-07-05 06:23:23 -04:00
return (
<Base unread={props.unread}>
{props.unread && <Unread>NEW</Unread>}
<time>{dayjs(props.date).format("LL")}</time>
</Base>
);
}