+
Organization
+
Privacy Policy
diff --git a/web/pages/profile.tsx b/web/pages/profile.tsx
index 3dd773e2..f3b9efdc 100644
--- a/web/pages/profile.tsx
+++ b/web/pages/profile.tsx
@@ -5,11 +5,12 @@ import {OptionalProfileUserForm} from 'web/components/optional-profile-form'
import {RequiredProfileUserForm} from 'web/components/required-profile-form'
import {useProfileByUser} from 'web/hooks/use-profile'
import Router from 'next/router'
-import {useEffect, useState} from 'react'
+import React, {useEffect, useState} from 'react'
import {Col} from 'web/components/layout/col'
import {useUser} from 'web/hooks/use-user'
import {api} from 'web/lib/api'
import {PageBase} from "web/components/page-base";
+import {SEO} from "web/components/SEO";
export default function ProfilePage() {
const user = useUser()
@@ -41,6 +42,11 @@ function ProfilePageInner(props: { user: User; profile: Profile }) {
return (
+
+
{registrationSuccess ? (
diff --git a/web/pages/signin.tsx b/web/pages/signin.tsx
index 16b62452..73ba5449 100644
--- a/web/pages/signin.tsx
+++ b/web/pages/signin.tsx
@@ -1,7 +1,7 @@
"use client";
import {useSearchParams} from "next/navigation";
-import {Suspense, useEffect, useState} from "react";
+import React, {Suspense, useEffect, useState} from "react";
import Link from "next/link";
import {auth, firebaseLogin} from "web/lib/firebase/users";
import FavIcon from "web/public/FavIcon";
@@ -13,6 +13,7 @@ import Router from "next/router";
import {PageBase} from "web/components/page-base";
import {useUser} from "web/hooks/use-user";
import {GoogleButton} from "web/components/buttons/sign-up-button";
+import {SEO} from "web/components/SEO";
export default function LoginPage() {
return (
@@ -118,6 +119,11 @@ function RegisterComponent() {
console.debug('Form rendering');
return (
+
diff --git a/web/pages/signup.tsx b/web/pages/signup.tsx
index c01dc5f6..9eb92f43 100644
--- a/web/pages/signup.tsx
+++ b/web/pages/signup.tsx
@@ -1,4 +1,4 @@
-import {useEffect, useRef, useState} from 'react'
+import React, {useEffect, useRef, useState} from 'react'
import {Col} from 'web/components/layout/col'
import {initialRequiredState, RequiredProfileUserForm,} from 'web/components/required-profile-form'
import {OptionalProfileUserForm} from 'web/components/optional-profile-form'
@@ -14,6 +14,7 @@ import {removeNullOrUndefinedProps} from 'common/util/object'
import {useProfileByUserId} from 'web/hooks/use-profile'
import {ProfileRow} from 'common/profiles/profile'
import {PageBase} from "web/components/page-base";
+import {SEO} from "web/components/SEO";
export default function SignupPage() {
const [step, setStep] = useState(0)
@@ -72,6 +73,11 @@ export default function SignupPage() {
if (step === 1 && user) {
return
+
+
Socials
>({})
@@ -42,7 +43,12 @@ export default function Stats() {
}, [])
return (
-
+
+
Growth & Stats
diff --git a/web/pages/support.tsx b/web/pages/support.tsx
index 5365aa16..e5f7fd06 100644
--- a/web/pages/support.tsx
+++ b/web/pages/support.tsx
@@ -8,12 +8,12 @@ const FILENAME = __filename.split('/').pop()?.split('.').shift();
export async function getStaticProps() {
const filePath = path.join(process.cwd(), 'public', 'md', FILENAME + '.md');
const content = fs.readFileSync(filePath, 'utf8');
- return {props: {content}};
+ return {props: {content, filename: FILENAME}};
}
-type Props = { content: string };
+type Props = { content: string, filename: string };
-export default function Faq({content}: Props) {
- if (!FILENAME) throw new Error('Could not determine filename');
- return
-}
+export default function Page({content, filename}: Props) {
+ if (!filename) throw new Error('Could not determine filename');
+ return
+}
\ No newline at end of file
diff --git a/web/pages/terms.tsx b/web/pages/terms.tsx
index 7cb5dbb9..298d95f7 100644
--- a/web/pages/terms.tsx
+++ b/web/pages/terms.tsx
@@ -1,5 +1,7 @@
import {PageBase} from "web/components/page-base";
import {supportEmail} from "common/constants";
+import {SEO} from "web/components/SEO";
+import React from "react";
// TODO: convert to MarkDown for better readability during modifications?
export default function TermsPage() {
@@ -8,6 +10,11 @@ export default function TermsPage() {
trackPageView={'terms'}
className="max-w-4xl mx-auto p-8 text-gray-800 dark:text-white col-span-8 bg-canvas-0"
>
+
Terms & Conditions
diff --git a/web/pages/tips-bio.tsx b/web/pages/tips-bio.tsx
index 5365aa16..e5f7fd06 100644
--- a/web/pages/tips-bio.tsx
+++ b/web/pages/tips-bio.tsx
@@ -8,12 +8,12 @@ const FILENAME = __filename.split('/').pop()?.split('.').shift();
export async function getStaticProps() {
const filePath = path.join(process.cwd(), 'public', 'md', FILENAME + '.md');
const content = fs.readFileSync(filePath, 'utf8');
- return {props: {content}};
+ return {props: {content, filename: FILENAME}};
}
-type Props = { content: string };
+type Props = { content: string, filename: string };
-export default function Faq({content}: Props) {
- if (!FILENAME) throw new Error('Could not determine filename');
- return
-}
+export default function Page({content, filename}: Props) {
+ if (!filename) throw new Error('Could not determine filename');
+ return
+}
\ No newline at end of file