From 837cd4c1b4021ac714c3dc5b73f45a85862261a1 Mon Sep 17 00:00:00 2001 From: SEUNGHWA LEE Date: Sat, 5 Apr 2025 16:38:14 +0900 Subject: [PATCH 1/2] =?UTF-8?q?finalPage=20=EC=A0=9C=EC=9E=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/FinalPage.js | 48 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 src/pages/FinalPage.js diff --git a/src/pages/FinalPage.js b/src/pages/FinalPage.js new file mode 100644 index 0000000..4c124a5 --- /dev/null +++ b/src/pages/FinalPage.js @@ -0,0 +1,48 @@ +import React from 'react'; +import {useNavigate } from 'react-router-dom'; +import Logo from "../components/Logo"; + +const FinalPage = () => { + const navigate = useNavigate(); + + const handleFinish = () => { + window.close(); + }; + + return ( +
+ +

완료되었습니다.

+ +
+ ) +} + +const styles = { + container: { + backgroundColor: '#F4E6CE', + height: '100vh', + display: 'flex', + flexDirection: 'column', + alignItems: 'center', + justifyContent: 'center', + }, + image: { + width: 120, + marginBottom: 20, + }, + text: { + fontSize: 20, + fontWeight: 'bold', + marginBottom: 60, + }, + button: { + padding: '10px 24px', + border: '1px solid black', + borderRadius: '16px', + backgroundColor: '#F4E6CE', + cursor: 'pointer', + }, + }; + + export default FinalPage; \ No newline at end of file From 505907a7c31a1185283737e960bfd8c61951feeb Mon Sep 17 00:00:00 2001 From: SEUNGHWA LEE Date: Sat, 5 Apr 2025 16:45:45 +0900 Subject: [PATCH 2/2] Complete Final Page --- src/pages/FinalPage.js | 127 ++++++++++++++++++++++-------- src/pages/KeywordSelectionPage.js | 2 +- 2 files changed, 94 insertions(+), 35 deletions(-) diff --git a/src/pages/FinalPage.js b/src/pages/FinalPage.js index 4c124a5..57483c3 100644 --- a/src/pages/FinalPage.js +++ b/src/pages/FinalPage.js @@ -1,48 +1,107 @@ -import React from 'react'; -import {useNavigate } from 'react-router-dom'; +import React, { useState } from 'react'; +import { useNavigate } from 'react-router-dom'; import Logo from "../components/Logo"; const FinalPage = () => { const navigate = useNavigate(); + const [showConfirm, setShowConfirm] = useState(false); - const handleFinish = () => { - window.close(); + const handleLogoutClick = () => { + setShowConfirm(true); + }; + + const handleConfirmYes = () => { + setShowConfirm(false); + navigate('/'); + }; + + const handleConfirmNo = () => { + setShowConfirm(false); }; return ( -
- -

완료되었습니다.

- +
+ +

완료되었습니다.

+ + + + {showConfirm && ( +
+
+

진짜 로그아웃 하시겠습니까?

+
+ + +
+
+
+ )}
- ) -} + ); +}; const styles = { container: { - backgroundColor: '#F4E6CE', - height: '100vh', - display: 'flex', - flexDirection: 'column', - alignItems: 'center', - justifyContent: 'center', - }, - image: { - width: 120, - marginBottom: 20, + backgroundColor: '#F4E6CE', + height: '100vh', + display: 'flex', + flexDirection: 'column', + alignItems: 'center', + justifyContent: 'center', + position: 'relative', }, text: { - fontSize: 20, - fontWeight: 'bold', - marginBottom: 60, - }, - button: { - padding: '10px 24px', - border: '1px solid black', - borderRadius: '16px', - backgroundColor: '#F4E6CE', - cursor: 'pointer', - }, - }; - - export default FinalPage; \ No newline at end of file + fontSize: 20, + fontWeight: 'bold', + marginBottom: 40, + }, + mainButton: { + padding: '10px 24px', + border: '1px solid black', + borderRadius: '16px', + backgroundColor: '#F4E6CE', + marginBottom: 20, + cursor: 'default', + }, + logoutButton: { + padding: '10px 24px', + border: '1px solid black', + borderRadius: '16px', + backgroundColor: '#fff', + color: '#000', + cursor: 'pointer', + }, + popupOverlay: { + position: 'absolute', + top: 0, + left: 0, + width: '100%', + height: '100%', + backgroundColor: 'rgba(0, 0, 0, 0.4)', + display: 'flex', + alignItems: 'center', + justifyContent: 'center', + }, + popupBox: { + backgroundColor: '#fff', + padding: 24, + borderRadius: 12, + boxShadow: '0 4px 8px rgba(0,0,0,0.2)', + textAlign: 'center', + }, + popupButtons: { + display: 'flex', + justifyContent: 'space-around', + marginTop: 16, + }, + popupBtn: { + padding: '8px 16px', + borderRadius: 8, + border: '1px solid #000', + backgroundColor: '#F4E6CE', + cursor: 'pointer', + }, +}; + +export default FinalPage; diff --git a/src/pages/KeywordSelectionPage.js b/src/pages/KeywordSelectionPage.js index 48aa886..e0e6d72 100644 --- a/src/pages/KeywordSelectionPage.js +++ b/src/pages/KeywordSelectionPage.js @@ -144,7 +144,7 @@ const KeywordSelectionPage = () => {
))} - + ); };