diff --git a/app/components/popup/success-modal.tsx b/app/components/popup/success-modal.tsx index 1a02e51..d69b4df 100644 --- a/app/components/popup/success-modal.tsx +++ b/app/components/popup/success-modal.tsx @@ -6,10 +6,13 @@ import { DialogTitle, } from '@headlessui/react' import type { ReactNode } from 'react' +import { useRouteLoaderData } from 'react-router' import { LeftArrow } from '~/components/icons/left-arrow' import { Button } from '~/components/ui/button' import { APP } from '~/configs/meta' +import { useNewsContext } from '~/contexts/news' +import type { loader } from '~/routes/_layout' export type ModalProperties = { onClose: () => void @@ -31,6 +34,10 @@ const DESCRIPTIONS: DescriptionMap = { } export const SuccessModal = ({ isOpen, onClose }: ModalProperties) => { + const { setIsLoginOpen, setIsInitSubscribeOpen } = useNewsContext() + const loaderData = useRouteLoaderData('routes/_layout') + const userToken = loaderData?.userToken + const message = isOpen ? DESCRIPTIONS[isOpen] : 'Terjadi kesalahan. Silakan coba lagi.' @@ -74,48 +81,56 @@ export const SuccessModal = ({ isOpen, onClose }: ModalProperties) => {
-
- {isOpen && - ['resetPassword', 'register', 'payment'].includes(isOpen) && ( -
- {APP.title} - -
+ {['resetPassword', 'register', 'payment'].includes( + isOpen || '', + ) && ( + <> + {APP.title} + + + )} + {isOpen === 'warning' && ( + <> + {APP.title} + {userToken ? ( + + ) : ( + )} - {isOpen === 'warning' && ( -
- {APP.title} -
- - -
-
- )} -
+ + )}