import { Popover, PopoverArrow, PopoverContent, PopoverTrigger, PopoverHeader, Flex, Box, } from '@chakra-ui/react'; import { SystemState } from '../../features/system/systemSlice'; import { useAppSelector } from '../../app/store'; import { RootState } from '../../app/store'; import { createSelector } from '@reduxjs/toolkit'; import { ReactElement } from 'react'; import { Feature, FEATURES } from '../../app/features'; type GuideProps = { children: ReactElement; feature: Feature; }; const systemSelector = createSelector( (state: RootState) => state.system, (system: SystemState) => system.shouldDisplayGuides ); const GuidePopover = ({ children, feature }: GuideProps) => { const shouldDisplayGuides = useAppSelector(systemSelector); const { text } = FEATURES[feature]; return shouldDisplayGuides ? ( {children} e.preventDefault()} cursor={'initial'} > {text} ) : ( <> ); }; export default GuidePopover;