You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

PollItem.tsx 1015B

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. import React from 'react';
  2. import { View, ViewStyle } from 'react-native';
  3. import { useSelector } from 'react-redux';
  4. import { shouldShowResults } from '../../functions';
  5. import PollAnswer from './PollAnswer';
  6. import PollResults from './PollResults';
  7. import { pollsStyles } from './styles';
  8. interface IProps {
  9. /**
  10. * Id of the poll.
  11. */
  12. pollId: string;
  13. /**
  14. * Create mode control.
  15. */
  16. setCreateMode: (mode: boolean) => void;
  17. }
  18. const PollItem = ({ pollId, setCreateMode }: IProps) => {
  19. const showResults = useSelector(shouldShowResults(pollId));
  20. return (
  21. <View
  22. style = { pollsStyles.pollItemContainer as ViewStyle }>
  23. { showResults
  24. ? <PollResults
  25. key = { pollId }
  26. pollId = { pollId } />
  27. : <PollAnswer
  28. pollId = { pollId }
  29. setCreateMode = { setCreateMode } />
  30. }
  31. </View>
  32. );
  33. };
  34. export default PollItem;