import { Blocks } from "../components/blocks-renderer"; import { useTina } from "tinacms/dist/react"; import { Layout } from "../components/layout"; import { client } from "../.tina/__generated__/client"; export default function IndexPage( props: AsyncReturnType["props"] ) { const { data } = useTina({ query: props.query, variables: props.variables, data: props.data, }); const eventsData = props.events.eventConnection.edges const eventList = eventsData.map(event => { return ({ ...event.node }) }) return ( /* TODO: needs ts type */ ); } export const getStaticProps = async ({ params }) => { const tinaProps = await client.queries.contentQuery({ relativePath: `index.md`, }); const eventsListData = await client.queries.eventConnection(); return { props: { data: tinaProps.data, query: tinaProps.query, variables: tinaProps.variables, events: eventsListData.data }, }; }; export type AsyncReturnType Promise> = T extends (...args: any) => Promise ? R : any;