Non admin static pages to NextJS

This commit is contained in:
Aarni Halinen
2020-12-30 00:14:44 +02:00
parent 118c3b42e0
commit b2deca4ce8
7 changed files with 64 additions and 58 deletions
+6 -5
View File
@@ -1,8 +1,9 @@
import React from "react";
import { Helmet } from "react-helmet";
import { NextPage } from "next";
import Head from "next/head";
import styled from "styled-components";
const NotFound = styled.div`
const NotFound = styled.main`
text-align: center;
font-size: 4rem;
font-weight: 200;
@@ -12,13 +13,13 @@ const NotFound = styled.div`
width: 100%;
`;
const NotFoundPage: React.FC = () => (
const NotFoundPage: NextPage = () => (
<>
<Helmet>
<Head>
<link rel="canonical" href="https://sik.ayy.fi/404" />
<title>404 | Ei vaan löydy</title>
<meta name="robots" content="noindex" />
</Helmet>
</Head>
<NotFound id="not-found">
<strong>404</strong> | Ei vaan löydy
</NotFound>
+11 -7
View File
@@ -1,14 +1,18 @@
import React from "react";
import { Helmet } from "react-helmet";
import { NextPage } from "next";
import Head from "next/head";
import InEnglishPageView from "@views/InEnglishPage/InEnglishPageView";
import PageWrapper from "@views/common/PageWrapper";
const InEnglishPage: React.FC = () => (
<div className="in-english-page">
<Helmet>
const InEnglishPage: NextPage= () => (
<>
<Head>
<link rel="canonical" href="https://sik.ayy.fi/in_english" />
</Helmet>
<InEnglishPageView />
</div>
</Head>
<PageWrapper>
<InEnglishPageView />
</PageWrapper>
</>
);
export default InEnglishPage;
+10 -9
View File
@@ -1,16 +1,17 @@
import React from "react";
import { Helmet } from "react-helmet";
import { NextPage } from "next";
import Head from "next/head";
import FreshmenPageView from "@views/FreshmenPage/FreshmenPageView";
import PageWrapper from "@views/common/PageWrapper";
export interface FreshmenPageProps {}
export interface FreshmenPageState {}
const FreshmenPage: React.FC = () => (
const FreshmenPage: NextPage = () => (
<>
<Helmet>
<link rel="canonical" href="https://sik.ayy.fi/toiminta/fuksit" />
</Helmet>
<FreshmenPageView />
<Head>
<link rel="canonical" href="https://sik.ayy.fi/kilta/fuksit" />
</Head>
<PageWrapper>
<FreshmenPageView />
</PageWrapper>
</>
)
+9 -5
View File
@@ -1,13 +1,17 @@
import React from "react";
import { Helmet } from "react-helmet";
import { NextPage } from "next";
import Head from "next/head";
import GuildPageView from "@views/GuildPage/GuildPageView";
import PageWrapper from "@views/common/PageWrapper";
const GuildPage: React.FC = () => (
const GuildPage: NextPage = () => (
<>
<Helmet>
<Head>
<link rel="canonical" href="https://sik.ayy.fi/kilta" />
</Helmet>
<GuildPageView />
</Head>
<PageWrapper>
<GuildPageView />
</PageWrapper>
</>
);
+9 -5
View File
@@ -1,13 +1,17 @@
import React from "react";
import { Helmet } from "react-helmet";
import { NextPage } from "next";
import Head from "next/head";
import HonoraryPageView from "@views/HonoraryPage/HonoraryPageView";
import PageWrapper from "@views/common/PageWrapper";
const HonoraryPage: React.FC = () => (
const HonoraryPage: NextPage = () => (
<>
<Helmet>
<Head>
<link rel="canonical" href="https://sik.ayy.fi/kilta/kunnia" />
</Helmet>
<HonoraryPageView />
</Head>
<PageWrapper>
<HonoraryPageView />
</PageWrapper>
</>
)
+10 -6
View File
@@ -1,13 +1,17 @@
import React from "react";
import { Helmet } from "react-helmet";
import { NextPage } from "next";
import Head from "next/head";
import StudiesPageView from "@views/StudiesPage/StudiesPageView";
import PageWrapper from "@views/common/PageWrapper";
const StudiesPage: React.FC = () => (
const StudiesPage: NextPage = () => (
<>
<Helmet>
<link rel="canonical" href="https://sik.ayy.fi/opinnot" />
</Helmet>
<StudiesPageView />
<Head>
<link rel="canonical" href="https://sik.ayy.fi/opinnot_ja_ura" />
</Head>
<PageWrapper>
<StudiesPageView />
</PageWrapper>
</>
);
+9 -21
View File
@@ -1,25 +1,13 @@
import React, { ReactNode, ComponentType } from "react";
import React from "react";
import Header from "@components/Header";
import Footer from "@components/Footer/Footer";
interface PageProps {
page: ComponentType;
}
const PageWrapper: React.FC = ({ children }) => (
<>
<Header />
{children}
<Footer />
</>
)
const PageWrapper: React.FC<PageProps> = ({ page, ...props }) => {
const Page = page;
return (
<>
<Header />
<Page {...props} />
<Footer />
</>
)
}
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
const renderPage = (Page: ReactNode) => (props: any): JSX.Element => (
<PageWrapper page={Page} {...props} />
);
export default renderPage;
export default PageWrapper;