Files
DefectingCat.github.io/Chakra.tsx
DefectingCat aaad57fc4d Add dark mode
* add dark mode switch button
* modify footer
* fix nav menu opening issue
* add paging number
* remove post card a link focus shadow
* add _document
* remove archive card border on last child
* add post image zoom margin on desktop
* add post index image
* remove TOC scroll bar on firefox
2021-11-21 22:16:35 +08:00

39 lines
828 B
TypeScript

import {
ChakraProvider,
cookieStorageManager,
localStorageManager,
} from '@chakra-ui/react';
import { GetServerSidePropsContext } from 'next';
import { ReactNode } from 'react';
import theme from './lib/theme';
interface ChakraProps {
cookies?: string;
children: ReactNode;
}
export const Chakra = ({ children, cookies }: ChakraProps) => {
return (
<ChakraProvider
colorModeManager={
cookies ? cookieStorageManager(cookies) : localStorageManager
}
theme={theme}
>
{children}
</ChakraProvider>
);
};
export type ServerSideProps<T> = { props: T } | Promise<{ props: T }>;
export function getServerSideProps({
req,
}: GetServerSidePropsContext): ServerSideProps<{ cookies?: string }> {
return {
props: {
cookies: req.headers.cookie ?? '',
},
};
}