frontity-chakra-theme
Version:
A frontity theme made with Chakra UI
50 lines (45 loc) • 1.11 kB
JavaScript
import { Box, Flex } from "@chakra-ui/react";
import React from "react";
import Link from "../link";
import { decode } from "frontity";
export const PostCategory = props => (
<Box
transition="background-color ease 0.25s"
px="5px"
border="2px solid"
borderColor="accent.400"
fontFamily="heading"
textTransform="uppercase"
fontWeight="medium"
display="inline-block"
_hover={{
bg: "accent.400",
color: props.color
}}
{...props}
/>
);
export const PostCategories = ({
categories,
limit = 3,
color = "white",
...props
}) => {
const limitCategories =
categories.length > limit
? categories.filter((_, idx) => idx < limit)
: categories;
return (
<Flex flexWrap="wrap" mt="12px" {...props}>
{limitCategories.map(category => (
<PostCategory color={color} key={category.id} mr="6px" mb="6px">
<Link
link={category.link}
dangerouslySetInnerHTML={{ __html: decode(category.name) }}
/>
</PostCategory>
))}
</Flex>
);
};
export default PostCategories;