diff --git a/app/auth/pages/welcome.tsx b/app/auth/pages/welcome.tsx index 218a9c5..073c43a 100644 --- a/app/auth/pages/welcome.tsx +++ b/app/auth/pages/welcome.tsx @@ -1,6 +1,8 @@ import type { BlitzPage, GetServerSideProps } from "blitz"; import { getSession, Routes, useRouter } from "blitz"; +// TODO: make this page feel more welcoming lol + const Welcome: BlitzPage = () => { const router = useRouter(); @@ -14,8 +16,6 @@ const Welcome: BlitzPage = () => { ); }; -Welcome.authenticate = { redirectTo: Routes.SignIn() }; - export const getServerSideProps: GetServerSideProps = async ({ req, res }) => { const session = await getSession(req, res); await session.$setPublicData({ shouldShowWelcomeMessage: undefined }); diff --git a/app/core/layouts/layout/index.tsx b/app/core/layouts/layout/index.tsx index 1abd2f0..45f2782 100644 --- a/app/core/layouts/layout/index.tsx +++ b/app/core/layouts/layout/index.tsx @@ -1,5 +1,6 @@ -import type { ErrorInfo, FunctionComponent } from "react"; +import type { ErrorInfo } from "react"; import { Component, Suspense } from "react"; +import type { BlitzLayout } from "blitz"; import { Head, withRouter, @@ -8,10 +9,11 @@ import { CSRFTokenMismatchError, NotFoundError, RedirectError, + Routes, } from "blitz"; import type { WithRouterProps } from "next/dist/client/with-router"; -import appLogger from "../../../../integrations/logger"; +import appLogger from "integrations/logger"; import Footer from "./footer"; import Loader from "./loader"; @@ -24,7 +26,7 @@ type Props = { const logger = appLogger.child({ module: "Layout" }); -const AppLayout: FunctionComponent = ({ children, title, pageTitle = title, hideFooter = false }) => { +const AppLayout: BlitzLayout = ({ children, title, pageTitle = title, hideFooter = false }) => { return ( <> {pageTitle ? ( @@ -49,6 +51,8 @@ const AppLayout: FunctionComponent = ({ children, title, pageTitle = titl ); }; +AppLayout.authenticate = { redirectTo: Routes.SignIn() }; + type ErrorBoundaryState = | { isError: false; diff --git a/app/messages/pages/messages.tsx b/app/messages/pages/messages.tsx index f6f43cf..d87ae84 100644 --- a/app/messages/pages/messages.tsx +++ b/app/messages/pages/messages.tsx @@ -1,6 +1,6 @@ import { Suspense, useEffect } from "react"; import type { BlitzPage } from "blitz"; -import { Routes, dynamic } from "blitz"; +import { dynamic } from "blitz"; import { atom, useAtom } from "jotai"; import AppLayout from "app/core/layouts/layout"; @@ -9,8 +9,8 @@ import NewMessageButton from "../components/new-message-button"; import MissingTwilioCredentials from "app/core/components/missing-twilio-credentials"; import useNotifications from "app/core/hooks/use-notifications"; import useCurrentUser from "app/core/hooks/use-current-user"; -import PageTitle from "../../core/components/page-title"; -import Spinner from "../../core/components/spinner"; +import PageTitle from "app/core/components/page-title"; +import Spinner from "app/core/components/spinner"; const Messages: BlitzPage = () => { const { hasFilledTwilioCredentials, hasPhoneNumber } = useCurrentUser(); @@ -56,6 +56,4 @@ export const bottomSheetOpenAtom = atom(false); Messages.getLayout = (page) => {page}; -Messages.authenticate = { redirectTo: Routes.SignIn().pathname }; - export default Messages; diff --git a/app/messages/pages/messages/[recipient].tsx b/app/messages/pages/messages/[recipient].tsx index ea36114..1b5927d 100644 --- a/app/messages/pages/messages/[recipient].tsx +++ b/app/messages/pages/messages/[recipient].tsx @@ -1,6 +1,6 @@ import { Suspense } from "react"; import type { BlitzPage } from "blitz"; -import { Routes, useParam, useRouter } from "blitz"; +import { useParam, useRouter } from "blitz"; import { IoChevronBack, IoInformationCircle, IoCall } from "react-icons/io5"; import AppLayout from "../../../core/layouts/layout"; @@ -32,6 +32,4 @@ const ConversationPage: BlitzPage = () => { ); }; -ConversationPage.authenticate = { redirectTo: Routes.SignIn() }; - export default ConversationPage; diff --git a/app/phone-calls/pages/calls.tsx b/app/phone-calls/pages/calls.tsx index 966a6af..2d4f773 100644 --- a/app/phone-calls/pages/calls.tsx +++ b/app/phone-calls/pages/calls.tsx @@ -1,6 +1,5 @@ import { Suspense } from "react"; import type { BlitzPage } from "blitz"; -import { Routes } from "blitz"; import AppLayout from "app/core/layouts/layout"; import MissingTwilioCredentials from "app/core/components/missing-twilio-credentials"; @@ -53,6 +52,4 @@ const PhoneCalls: BlitzPage = () => { PhoneCalls.getLayout = (page) => {page}; -PhoneCalls.authenticate = { redirectTo: Routes.SignIn() }; - export default PhoneCalls; diff --git a/app/phone-calls/pages/keypad.tsx b/app/phone-calls/pages/keypad.tsx index 9a9f82a..bc344f5 100644 --- a/app/phone-calls/pages/keypad.tsx +++ b/app/phone-calls/pages/keypad.tsx @@ -165,6 +165,4 @@ const pressBackspaceAtom = atom(null, (get, set) => { KeypadPage.getLayout = (page) => {page}; -KeypadPage.authenticate = { redirectTo: Routes.SignIn() }; - export default KeypadPage; diff --git a/app/settings/components/settings-layout.tsx b/app/settings/components/settings-layout.tsx index b42b6cb..ff32eca 100644 --- a/app/settings/components/settings-layout.tsx +++ b/app/settings/components/settings-layout.tsx @@ -1,5 +1,5 @@ -import type { FunctionComponent } from "react"; import { Suspense } from "react"; +import type { BlitzLayout } from "blitz"; import { Link, Routes, useMutation, useRouter } from "blitz"; import clsx from "clsx"; import { @@ -23,7 +23,7 @@ const subNavigation = [ { name: "Notifications", href: Routes.Notifications(), icon: IoNotificationsOutline }, ]; -const SettingsLayout: FunctionComponent = ({ children }) => { +const SettingsLayout: BlitzLayout = ({ children }) => { const router = useRouter(); const [logoutMutation] = useMutation(logout); @@ -90,4 +90,6 @@ const SettingsLayout: FunctionComponent = ({ children }) => { ); }; +SettingsLayout.authenticate = { redirectTo: Routes.SignIn() }; + export default SettingsLayout; diff --git a/app/settings/pages/settings/billing.tsx b/app/settings/pages/settings/billing.tsx index abe52ad..6f36636 100644 --- a/app/settings/pages/settings/billing.tsx +++ b/app/settings/pages/settings/billing.tsx @@ -1,5 +1,6 @@ import type { BlitzPage } from "blitz"; -import { GetServerSideProps, getSession, Routes } from "blitz"; +import type { GetServerSideProps } from "blitz"; +import { getSession } from "blitz"; import db, { Subscription, SubscriptionStatus } from "db"; import useSubscription from "app/core/hooks/use-subscription"; @@ -73,8 +74,6 @@ const Billing: BlitzPage = (props) => { Billing.getLayout = (page) => {page}; -Billing.authenticate = { redirectTo: Routes.SignIn() }; - export const getServerSideProps: GetServerSideProps = async ({ req, res }) => { const session = await getSession(req, res); const subscription = await db.subscription.findFirst({ diff --git a/app/settings/pages/settings/index.tsx b/app/settings/pages/settings/index.tsx index ae6d6da..c88ddaf 100644 --- a/app/settings/pages/settings/index.tsx +++ b/app/settings/pages/settings/index.tsx @@ -1,5 +1,4 @@ import type { BlitzPage } from "blitz"; -import { Routes } from "blitz"; import SettingsLayout from "../../components/settings-layout"; import ProfileInformations from "../../components/account/profile-informations"; @@ -20,6 +19,4 @@ const Account: BlitzPage = () => { Account.getLayout = (page) => {page}; -Account.authenticate = { redirectTo: Routes.SignIn() }; - export default Account; diff --git a/app/settings/pages/settings/notifications.tsx b/app/settings/pages/settings/notifications.tsx index 3dabcf5..00eeefc 100644 --- a/app/settings/pages/settings/notifications.tsx +++ b/app/settings/pages/settings/notifications.tsx @@ -1,5 +1,4 @@ import type { BlitzPage } from "blitz"; -import { Routes } from "blitz"; import SettingsLayout from "../../components/settings-layout"; @@ -9,6 +8,4 @@ const Notifications: BlitzPage = () => { Notifications.getLayout = (page) => {page}; -Notifications.authenticate = { redirectTo: Routes.SignIn() }; - export default Notifications; diff --git a/app/settings/pages/settings/phone.tsx b/app/settings/pages/settings/phone.tsx index e4c7d60..eb9335b 100644 --- a/app/settings/pages/settings/phone.tsx +++ b/app/settings/pages/settings/phone.tsx @@ -1,5 +1,5 @@ import type { BlitzPage } from "blitz"; -import { Routes, dynamic } from "blitz"; +import { dynamic } from "blitz"; import SettingsLayout from "../../components/settings-layout"; import PhoneNumberForm from "../../components/phone/phone-number-form"; @@ -20,6 +20,4 @@ const TwilioApiForm = dynamic(() => import("../../components/phone/twilio-api-fo PhoneSettings.getLayout = (page) => {page}; -PhoneSettings.authenticate = { redirectTo: Routes.SignIn() }; - export default PhoneSettings;