Skip to content

Commit

Permalink
feature(unlock-app): Migrate settings page to app router (#14825)
Browse files Browse the repository at this point in the history
* settings layout

* migrate settings content

* migrate settings page
  • Loading branch information
0xTxbi authored Oct 9, 2024
1 parent 2fe7027 commit 8b68966
Show file tree
Hide file tree
Showing 4 changed files with 44 additions and 16 deletions.
24 changes: 24 additions & 0 deletions unlock-app/app/settings/layout.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import { ReactNode } from 'react'

import DashboardHeader from '~/components/interface/layouts/index/DashboardHeader'
import DashboardFooter from '~/components/interface/layouts/index/DashboardFooter'
import TermsOfServiceModal from '~/components/interface/layouts/index/TermsOfServiceModal'
import { Container } from '~/components/interface/Container'
import { ConnectModal } from '~/components/interface/connect/ConnectModal'

export default function SettingsLayout({ children }: { children: ReactNode }) {
return (
<div className="overflow-hidden bg-ui-secondary-200">
<TermsOfServiceModal />
<Container>
<ConnectModal />

<DashboardHeader />

<div className="flex flex-col gap-10 min-h-screen">{children}</div>

<DashboardFooter />
</Container>
</div>
)
}
15 changes: 15 additions & 0 deletions unlock-app/app/settings/page.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
import React from 'react'
import { Metadata } from 'next'
import SettingsContent from '~/components/content/SettingsContent'

export const metadata: Metadata = {
title: 'Account Settings | Unlock Protocol',
description:
'Manage your account settings and payment methods for Unlock Protocol.',
}

const SettingsPage: React.FC = () => {
return <SettingsContent />
}

export default SettingsPage
15 changes: 5 additions & 10 deletions unlock-app/src/components/content/SettingsContent.tsx
Original file line number Diff line number Diff line change
@@ -1,15 +1,13 @@
import React from 'react'
'use client'

import { useState } from 'react'
import Head from 'next/head'
import { pageTitle } from '../../constants'
import AccountInfo from '../interface/user-account/AccountInfo'
import EjectAccount from '../interface/user-account/EjectAccount'
import { loadStripe } from '@stripe/stripe-js'
import { useConfig } from '~/utils/withConfig'
import { Card } from '../interface/checkout/Card'
import { SetupForm } from '../interface/checkout/main/CardPayment'
import { Button } from '@unlock-protocol/ui'
import { AppLayout } from '../interface/layouts/AppLayout'
import {
usePaymentMethodList,
useRemovePaymentMethods,
Expand All @@ -22,7 +20,7 @@ export const PaymentSettings = () => {
const { mutateAsync: removePaymentMethods } = useRemovePaymentMethods()
const {
data: methods,
isInitialLoading: isMethodLoading,
isLoading: isMethodLoading,
refetch: refetchPaymentMethodList,
} = usePaymentMethodList()

Expand Down Expand Up @@ -86,14 +84,11 @@ export const PaymentSettings = () => {

export const SettingsContent = () => {
return (
<AppLayout title="Account Settings">
<Head>
<title>{pageTitle('Account Settings')}</title>
</Head>
<>
<AccountInfo />
<PaymentSettings />
<EjectAccount />
</AppLayout>
</>
)
}

Expand Down
6 changes: 0 additions & 6 deletions unlock-app/src/pages/settings.tsx

This file was deleted.

0 comments on commit 8b68966

Please sign in to comment.