DrMint 35b58982d0
Use Jotai instead of React Context ()
* Turn React Context into Jotai

* Finish converting the remaining contexts into Jotai

* Changed the readme

* Fixed build

* Provider hell be gone

* Fixed build
2022-11-04 02:30:20 +01:00

60 lines
2.4 KiB
TypeScript

import { GetStaticProps } from "next";
import { AppLayout, AppLayoutRequired } from "components/AppLayout";
import { Icon } from "components/Ico";
import { NavOption } from "components/PanelComponents/NavOption";
import { PanelHeader } from "components/PanelComponents/PanelHeader";
import { SubPanel } from "components/Containers/SubPanel";
import { getOpenGraph } from "helpers/openGraph";
import { HorizontalLine } from "components/HorizontalLine";
import { getLangui } from "graphql/fetchLocalData";
import { atoms } from "contexts/atoms";
import { useAtomGetter } from "helpers/atoms";
/*
* ╭────────╮
* ──────────────────────────────────────────╯ PAGE ╰─────────────────────────────────────────────
*/
interface Props extends AppLayoutRequired {}
const AboutUs = (props: Props): JSX.Element => {
const langui = useAtomGetter(atoms.localData.langui);
return (
<AppLayout
subPanel={
<SubPanel>
<PanelHeader
icon={Icon.Info}
title={langui.about_us}
description={langui.about_us_description}
/>
<HorizontalLine />
<NavOption title={langui.accords_handbook} url="/about-us/accords-handbook" border />
<NavOption title={langui.legality} url="/about-us/legality" border />
<NavOption title={langui.sharing_policy} url="/about-us/sharing-policy" border />
<NavOption title={langui.contact_us} url="/about-us/contact" border />
</SubPanel>
}
{...props}
/>
);
};
export default AboutUs;
/*
* ╭──────────────────────╮
* ───────────────────────────────────╯ NEXT DATA FETCHING ╰──────────────────────────────────────
*/
export const getStaticProps: GetStaticProps = (context) => {
const langui = getLangui(context.locale);
const props: Props = {
openGraph: getOpenGraph(langui, langui.about_us ?? "About us"),
};
return {
props: props,
};
};