From 8f10cc615cdb64e64580195bab06c61101abcda4 Mon Sep 17 00:00:00 2001 From: elisejakob Date: Fri, 10 May 2024 14:07:15 +0200 Subject: [PATCH] add people components --- web/src/app/page.tsx | 13 +++++- web/src/components/people/PersonItem.tsx | 27 ++++++++++++ web/src/components/people/PersonList.tsx | 12 ++++++ .../components/people/personItem.module.scss | 43 +++++++++++++++++++ .../components/people/personList.module.scss | 19 ++++++++ web/src/css/base.scss | 1 + 6 files changed, 113 insertions(+), 2 deletions(-) create mode 100644 web/src/components/people/PersonItem.tsx create mode 100644 web/src/components/people/PersonList.tsx create mode 100644 web/src/components/people/personItem.module.scss create mode 100644 web/src/components/people/personList.module.scss diff --git a/web/src/app/page.tsx b/web/src/app/page.tsx index 20b5660..44b4e3b 100644 --- a/web/src/app/page.tsx +++ b/web/src/app/page.tsx @@ -1,9 +1,10 @@ import { graphql } from "@/gql"; -import {EventFragment} from "@/gql/graphql" +import { EventFragment } from "@/gql/graphql"; import { getClient } from "@/app/client"; import { EventList } from "@/components/events/EventList"; import { Body } from "@/components/general/Body"; import Image from "next/image"; +import { PersonList } from "@/components/people/PersonList"; export default async function Home() { const homeQuery = graphql(` @@ -14,13 +15,21 @@ export default async function Home() { } `); const { data, error } = await getClient().query(homeQuery, {}); - const events = (data?.events ?? []) as EventFragment[] + const events = (data?.events ?? []) as EventFragment[]; return (
«Hvor Glæden hersker, er alltid Fest»
+
+

Styret

+ +
+
+

Administrasjonen

+ +

Sed sodales nunc quis sapien malesuada, a faucibus turpis blandit. Suspendisse potenti. Sed auctor enim et augue dapibus, vitae laoreet diff --git a/web/src/components/people/PersonItem.tsx b/web/src/components/people/PersonItem.tsx new file mode 100644 index 0000000..6545e5a --- /dev/null +++ b/web/src/components/people/PersonItem.tsx @@ -0,0 +1,27 @@ +import styles from "./personItem.module.scss"; + +export const PersonItem = () => { + return ( +

  • +
    +
    +

    Ellisiv Sunde Myrva

    +

    Kommunikasjonssjef

    + +
    +
  • + ); +}; diff --git a/web/src/components/people/PersonList.tsx b/web/src/components/people/PersonList.tsx new file mode 100644 index 0000000..ea9d6fb --- /dev/null +++ b/web/src/components/people/PersonList.tsx @@ -0,0 +1,12 @@ +import { PersonItem } from "./PersonItem"; +import styles from "./personList.module.scss"; + +export const PersonList = () => { + return ( +
      + + + +
    + ); +}; diff --git a/web/src/components/people/personItem.module.scss b/web/src/components/people/personItem.module.scss new file mode 100644 index 0000000..29e64a3 --- /dev/null +++ b/web/src/components/people/personItem.module.scss @@ -0,0 +1,43 @@ +.personItem { + position: relative; + list-style: none; + display: flex; + align-items: center; + gap: 1rem; +} + +.image { + flex: none; + width: 7rem; + height: 7rem; + background: var(--color-neufPink); + border-radius: 100%; +} + +.text { + padding: 0; +} + +.name, +.role { + font-size: 1rem; +} + +.role { + font-family: var(--font-serif); +} + +.contact { + list-style: none; + margin: .6rem 0; + font-size: var(--font-size-caption); + font-weight: 500; + line-height: 1.7; +} + +.icon { + display: inline-block; + width: 1rem; + text-align: center; + margin-right: .4rem; +} \ No newline at end of file diff --git a/web/src/components/people/personList.module.scss b/web/src/components/people/personList.module.scss new file mode 100644 index 0000000..4fab6f3 --- /dev/null +++ b/web/src/components/people/personList.module.scss @@ -0,0 +1,19 @@ +.personList { + display: grid; + grid-template-columns: 1fr; + column-gap: var(--spacing-gap-column); + row-gap: var(--spacing-gap-row); + padding-bottom: var(--spacing-section-bottom); +} + +@media (min-width: 700px) { + .personList { + grid-template-columns: repeat(2, 1fr); + } +} + +@media (min-width: 1200px) { + .personList { + grid-template-columns: repeat(3, 1fr); + } +} \ No newline at end of file diff --git a/web/src/css/base.scss b/web/src/css/base.scss index fc6a8ef..abbfc12 100644 --- a/web/src/css/base.scss +++ b/web/src/css/base.scss @@ -6,6 +6,7 @@ html { min-height: 100%; + font-size: calc(1rem + 8 * (100vw - 320px) / 1920); } html,