diff --git a/src/components/ReceiptEdit/ReceiptEdit.tsx b/src/components/ReceiptEdit/ReceiptEdit.tsx index eedcd2b..6e60fb9 100644 --- a/src/components/ReceiptEdit/ReceiptEdit.tsx +++ b/src/components/ReceiptEdit/ReceiptEdit.tsx @@ -10,41 +10,6 @@ import { useRoute } from "@/hooks/common/useRoute"; import { useCreateReviewStore } from "@/store/useReviewStore"; import { useScanDataStore } from "@/store/useScanDataStore"; -// const useKeyboardAvoidance = () => { -// const [keyboardVisible, setKeyboardVisible] = useState(false); -// const [keyboardHeight, setKeyboardHeight] = useState(0); - -// useEffect(() => { -// const handleVisualViewportChange = () => { -// const isKeyboardVisible = !!( -// window.visualViewport && window.visualViewport.height < window.innerHeight -// ); -// setKeyboardVisible(isKeyboardVisible); - -// if (isKeyboardVisible) { -// setKeyboardHeight( -// window.visualViewport ? window.innerHeight - window.visualViewport.height : 0, -// ); -// } else { -// setKeyboardHeight(0); -// } -// }; - -// if (window.visualViewport) { -// window.visualViewport.addEventListener("resize", handleVisualViewportChange); -// handleVisualViewportChange(); -// } - -// return () => { -// if (window.visualViewport) { -// window.visualViewport.removeEventListener("resize", handleVisualViewportChange); -// } -// }; -// }, []); - -// return { keyboardVisible, keyboardHeight }; -// }; - const ReceiptEdit = () => { const { navigateToHome, navigateToSelectTag } = useRoute(); diff --git a/src/pages/RecognitionFailPage.tsx b/src/pages/RecognitionFailPage.tsx index 55c43ab..d06120b 100644 --- a/src/pages/RecognitionFailPage.tsx +++ b/src/pages/RecognitionFailPage.tsx @@ -4,13 +4,22 @@ import Icon from "@/components/ui/Icon/Icon"; import { useRoute } from "@/hooks/common/useRoute"; +import { useScanDataStore } from "@/store/useScanDataStore"; + const RecognitionFailPage = () => { const { navigateToHome } = useRoute(); + const { resetScanData } = useScanDataStore(); + + const handleNavigateToHome = () => { + resetScanData(); + navigateToHome(); + }; + return ( <> - + diff --git a/src/pages/ReviewResultPage/ReviewResultPage.tsx b/src/pages/ReviewResultPage/ReviewResultPage.tsx index 8070280..786742c 100644 --- a/src/pages/ReviewResultPage/ReviewResultPage.tsx +++ b/src/pages/ReviewResultPage/ReviewResultPage.tsx @@ -17,19 +17,23 @@ import useToast from "@/hooks/common/useToast"; import styles from "@/pages/ReviewResultPage/ReviewResultPage.module.scss"; import { useGenerateReviewStore } from "@/store/useGenerateReviewStore"; +import { useCreateReviewStore } from "@/store/useReviewStore"; import type { Options as ConfettiOptions } from "canvas-confetti"; export default function ReviewResultPage() { const { send } = useAppBridge(); - const { generateReviewData } = useGenerateReviewStore(); + const { createReviewData } = useCreateReviewStore(); + const { generateReviewData, resetGenerateReviewData } = useGenerateReviewStore(); - const { navigateToCreateReviewFail } = useRoute(); + const { navigateToCreateReviewFail, navigateToLoading } = useRoute(); const { isOpen, handleClose, handleOpen } = useOverlay(); const { isToast, showToast } = useToast(1000); + const { ocrText, hashTag, reviewStyle } = createReviewData; + const handleConfetti = () => { const setting: ConfettiOptions = { particleCount: 100, @@ -42,6 +46,17 @@ export default function ReviewResultPage() { confetti(setting); }; + const handleRetryCreateReview = () => { + resetGenerateReviewData(); + + send({ + type: AppBridgeMessageType.CREATE_REVIEW, + payload: { ocrText, hashTag, reviewStyle }, + }); + + navigateToLoading(); + }; + useEffect(() => { if (!generateReviewData) return; @@ -84,7 +99,7 @@ export default function ReviewResultPage() {
{isToast && }
-