diff --git a/src/App.tsx b/src/App.tsx index 87b52ce..00f637c 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -12,6 +12,7 @@ import ProfileManagement from "./pages/ProfileManagement"; import NotificationSettings from "./pages/NotificationSettings"; import SecurityPrivacySettings from "./pages/SecurityPrivacySettings"; import HelpSupport from "./pages/HelpSupport"; +import PaymentMethods from "./pages/PaymentMethods"; import NotFound from "./pages/NotFound"; import Login from "./pages/Login"; import Register from "./pages/Register"; @@ -34,6 +35,7 @@ const App = () => ( } /> } /> } /> + } /> } /> } /> } /> diff --git a/src/pages/PaymentMethods.tsx b/src/pages/PaymentMethods.tsx new file mode 100644 index 0000000..ce8b0cf --- /dev/null +++ b/src/pages/PaymentMethods.tsx @@ -0,0 +1,114 @@ + +import React from 'react'; +import NavBar from '@/components/NavBar'; +import { ArrowLeft, CreditCard, PlusCircle } from 'lucide-react'; +import { useNavigate } from 'react-router-dom'; +import { Button } from '@/components/ui/button'; + +const PaymentMethodCard = ({ + type, + label, + lastDigits, + expiry, + isDefault +}: { + type: 'card' | 'bank', + label: string, + lastDigits: string, + expiry?: string, + isDefault?: boolean +}) => { + return ( +
+
+
+
+ +
+
+

{label}

+

+ {type === 'card' ? '•••• •••• •••• ' : ''} + {lastDigits} + {expiry ? ` · ${expiry}` : ''} +

+
+
+ {isDefault && ( + + 기본 + + )} +
+
+ ); +}; + +const PaymentMethods = () => { + const navigate = useNavigate(); + + return ( +
+
+ {/* Header */} +
+
+ +

결제 방법

+
+
+ + {/* Payment Methods List */} +
+

신용카드

+ + + + +
+ +
+

은행 계좌

+ + +
+ + {/* Add Payment Method Button */} +
+ +
+
+ + +
+ ); +}; + +export default PaymentMethods; diff --git a/src/pages/Settings.tsx b/src/pages/Settings.tsx index 9db19ac..861f7ca 100644 --- a/src/pages/Settings.tsx +++ b/src/pages/Settings.tsx @@ -56,7 +56,7 @@ const Settings = () => {

계정

navigate('/profile-management')} /> - + navigate('/payment-methods')} /> navigate('/notification-settings')} />