From 1452edaa839c2354773dd335039ab43283d2208e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fe=CC=81lix=20Pe=CC=81ault?= Date: Sat, 20 Aug 2022 23:19:19 +0200 Subject: [PATCH] Create Terms page --- src/routes/terms/+page.server.ts | 21 ++++++++++++ src/routes/terms/+page.svelte | 37 ++++++++++++++++++++ src/style/pages/_terms.scss | 59 ++++++++++++++++++++++++++++++++ 3 files changed, 117 insertions(+) create mode 100644 src/routes/terms/+page.server.ts create mode 100644 src/routes/terms/+page.svelte create mode 100644 src/style/pages/_terms.scss diff --git a/src/routes/terms/+page.server.ts b/src/routes/terms/+page.server.ts new file mode 100644 index 0000000..77a0ff5 --- /dev/null +++ b/src/routes/terms/+page.server.ts @@ -0,0 +1,21 @@ +import { error } from '@sveltejs/kit' +import type { PageServerLoad } from './$types' +import { fetchAPI } from '$utils/api' + +export const load: PageServerLoad = async () => { + try { + const res = await fetchAPI(`query { + legal { + terms + } + }`) + + const { data } = res + + return { + ...data + } + } catch (err) { + throw error(500, err.message) + } +} \ No newline at end of file diff --git a/src/routes/terms/+page.svelte b/src/routes/terms/+page.svelte new file mode 100644 index 0000000..5fee006 --- /dev/null +++ b/src/routes/terms/+page.svelte @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
+ {#each legal.terms as { title, text }, index} +
+

{index + 1}. {title}

+
+ {@html text} +
+
+ {/each} +
+
+
\ No newline at end of file diff --git a/src/style/pages/_terms.scss b/src/style/pages/_terms.scss new file mode 100644 index 0000000..9e5a1b6 --- /dev/null +++ b/src/style/pages/_terms.scss @@ -0,0 +1,59 @@ +.terms { + // Categories + &__categories { + .container { + display: block; + + @include bp (sm) { + display: grid; + } + + & > * { + margin-bottom: clamp(40px, 5vw, 72px); + } + } + } + + // Section + &__section { + --columns: 16; + display: block; + padding: 0 20px; + + @include bp (sm) { + display: grid; + align-items: baseline; + grid-column: 3 / -3; + } + @include bp (sd) { + grid-column: 5 / -5; + } + + h2 { + margin-bottom: 0.75em; + color: $color-secondary-light; + line-height: 1.1; + + @include bp (sm) { + position: sticky; + top: clamp(24px, 3vw, 40px); + grid-column: 1 / span 4; + margin-bottom: 0; + text-align: right; + } + @include bp (sd) { + grid-column: 1 / span 6; + } + } + .text { + color: $color-tertiary; + + @include bp (sm) { + grid-column: 6 / -1; + } + @include bp (sd) { + grid-column: 8 / -1; + } + } + } +} \ No newline at end of file