parent
13a88af73e
commit
7e11780f1c
@ -0,0 +1,76 @@
|
|||||||
|
import { Link as ChakraLink, Stack, Heading, Text, Box, Flex } from '@chakra-ui/react'
|
||||||
|
import Link from 'next/link'
|
||||||
|
|
||||||
|
import ResponsiveImage from '../components/ResponsiveImage'
|
||||||
|
import SEO from '../components/SEO'
|
||||||
|
|
||||||
|
import { getAbout, getAllNotasWithImages, INotaWithImage, login } from '../lib/api'
|
||||||
|
|
||||||
|
const Notas: React.FC<{ notas: INotaWithImage[] }> = ({ notas }) => {
|
||||||
|
return (
|
||||||
|
<>
|
||||||
|
<SEO title="work" />
|
||||||
|
<Box w={['100%', '100%', '1220px']} pt="2rem" px="1rem" mx="auto">
|
||||||
|
<Heading fontSize={['3xl', '3xl', '7xl']} mb="3rem">
|
||||||
|
Notas y pensamientos
|
||||||
|
</Heading>
|
||||||
|
<Stack wrap="wrap" direction="row" spacing="2rem">
|
||||||
|
{notas.map((nota) => (
|
||||||
|
<Link href={`/notas/${nota.slug}`} passHref key={nota.slug}>
|
||||||
|
<ChakraLink>
|
||||||
|
<Flex
|
||||||
|
w="320px"
|
||||||
|
h="430px"
|
||||||
|
overflow="hidden"
|
||||||
|
position="relative"
|
||||||
|
borderRadius="primary"
|
||||||
|
align="flex-end"
|
||||||
|
>
|
||||||
|
<ResponsiveImage
|
||||||
|
position="absolute"
|
||||||
|
zIndex="0"
|
||||||
|
w="100%"
|
||||||
|
h="100%"
|
||||||
|
alt={`Imagen de ${nota.titulo}`}
|
||||||
|
url={`notas/${nota.imagen_file}`}
|
||||||
|
/>
|
||||||
|
<Stack position="relative" zIndex="1" p="1rem" spacing="0.25rem">
|
||||||
|
<Heading as="h3" fontSize="lg" lineHeight="1.2">
|
||||||
|
{nota.titulo}
|
||||||
|
</Heading>
|
||||||
|
<Text as="small" fontSize="sm" pb="1rem">
|
||||||
|
{nota.tiempo_lectura} min de lectura
|
||||||
|
</Text>
|
||||||
|
<Stack
|
||||||
|
w="100%"
|
||||||
|
wrap="nowrap"
|
||||||
|
overflow="hidden"
|
||||||
|
direction="row"
|
||||||
|
spacing="1rem"
|
||||||
|
fontSize="md"
|
||||||
|
sx={{ '& p': { whiteSpace: 'nowrap', textOverflow: 'ellipsis' } }}
|
||||||
|
>
|
||||||
|
{nota.tags.map((tag) => (
|
||||||
|
<Text key={tag}> {tag} </Text>
|
||||||
|
))}
|
||||||
|
</Stack>
|
||||||
|
</Stack>
|
||||||
|
</Flex>
|
||||||
|
</ChakraLink>
|
||||||
|
</Link>
|
||||||
|
))}
|
||||||
|
</Stack>
|
||||||
|
</Box>
|
||||||
|
</>
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
export default Notas
|
||||||
|
|
||||||
|
export async function getStaticProps() {
|
||||||
|
await login()
|
||||||
|
|
||||||
|
const data = await getAllNotasWithImages()
|
||||||
|
|
||||||
|
return { props: { notas: data } }
|
||||||
|
}
|
Loading…
Reference in new issue