import { useEffect } from 'react'; import { Modal, Button, ModalBody, ModalHeader, ModalFooter, ModalOverlay, ModalContent, ModalCloseButton, } from '@chakra-ui/react'; import { If, Markdown } from '~/components'; import { useConfig, useColorValue } from '~/context'; import { useGreeting, useOpposingColor } from '~/hooks'; import type { TGreeting } from './types'; export const Greeting: React.FC = (props: TGreeting) => { const { web, content } = useConfig(); const { ack: greetingAck, isOpen, close } = useGreeting(); const bg = useColorValue('white', 'gray.800'); const color = useOpposingColor(bg); function handleClose(ack: boolean = false): void { if (web.greeting.required && !greetingAck.value && !ack) { greetingAck.set(false); } else if (web.greeting.required && !greetingAck.value && ack) { greetingAck.set(true); close(); } else if (web.greeting.required && greetingAck.value) { close(); } else if (!web.greeting.required) { greetingAck.set(true); close(); } } useEffect(() => { if (!greetingAck.value && web.greeting.enable) { isOpen.set(true); } }, []); return ( {web.greeting.title} ); };