From df7ffaf4cb722890ca3159c3839c61552f7195d3 Mon Sep 17 00:00:00 2001 From: polwex Date: Thu, 15 May 2025 04:37:12 +0700 Subject: all working now... --- src/pages/_layout.tsx | 39 +++++++++++++++++++++++++++++++++++++++ src/pages/about.tsx | 32 ++++++++++++++++++++++++++++++++ src/pages/db.tsx | 35 +++++++++++++++++++++++++++++++++++ src/pages/index.tsx | 35 +++++++++++++++++++++++++++++++++++ 4 files changed, 141 insertions(+) create mode 100644 src/pages/_layout.tsx create mode 100644 src/pages/about.tsx create mode 100644 src/pages/db.tsx create mode 100644 src/pages/index.tsx (limited to 'src/pages') diff --git a/src/pages/_layout.tsx b/src/pages/_layout.tsx new file mode 100644 index 0000000..6d227c9 --- /dev/null +++ b/src/pages/_layout.tsx @@ -0,0 +1,39 @@ +import '../styles.css'; + +import type { ReactNode } from 'react'; + +import { Header } from '../components/header'; +import { Footer } from '../components/footer'; + +type RootLayoutProps = { children: ReactNode }; + +export default async function RootLayout({ children }: RootLayoutProps) { + const data = await getData(); + + return ( +
+ + +
+
+ {children} +
+
+
+ ); +} + +const getData = async () => { + const data = { + description: 'An internet website!', + icon: '/images/favicon.png', + }; + + return data; +}; + +export const getConfig = async () => { + return { + render: 'static', + } as const; +}; diff --git a/src/pages/about.tsx b/src/pages/about.tsx new file mode 100644 index 0000000..15d4c90 --- /dev/null +++ b/src/pages/about.tsx @@ -0,0 +1,32 @@ +import { Link } from 'waku'; + +export default async function AboutPage() { + const data = await getData(); + + return ( +
+ {data.title} +

{data.headline}

+

{data.body}

+ + Return home + +
+ ); +} + +const getData = async () => { + const data = { + title: 'About', + headline: 'About Waku', + body: 'The minimal React framework', + }; + + return data; +}; + +export const getConfig = async () => { + return { + render: 'static', + } as const; +}; diff --git a/src/pages/db.tsx b/src/pages/db.tsx new file mode 100644 index 0000000..4251e6f --- /dev/null +++ b/src/pages/db.tsx @@ -0,0 +1,35 @@ +import { Link } from "waku"; +import db from "../lib/db"; + +export default async function AboutPage() { + const data = await getData(); + + return ( +
+ Well +
+ {data.categories.categories.map((cat) => ( +
+ {cat} +
+ ))} +
+ + Return home + +
+ ); +} + +const getData = async () => { + const categories = db.fetchCats(); + const eng = db.fetchLanguage("en"); + + return { categories, eng }; +}; + +export const getConfig = async () => { + return { + render: "static", + } as const; +}; diff --git a/src/pages/index.tsx b/src/pages/index.tsx new file mode 100644 index 0000000..c008c4d --- /dev/null +++ b/src/pages/index.tsx @@ -0,0 +1,35 @@ +import { Link } from "waku"; + +import { Counter } from "../components/counter"; + +export default async function HomePage() { + const data = await getData(); + + return ( +
+ {data.title} +

{data.headline}

+

{data.body}

+ + + About page + +
+ ); +} + +const getData = async () => { + const data = { + title: "Waku", + headline: "Waku", + body: "Hello world!", + }; + + return data; +}; + +export const getConfig = async () => { + return { + render: "static", + } as const; +}; -- cgit v1.2.3