All files / packages/ui/src/components/ReasonSelector index.tsx

100% Statements 8/8
100% Branches 0/0
100% Functions 5/5
100% Lines 7/7

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39                        1x 3x   3x         12x     9x     1x             3x          
import { FlatList } from "react-native";
 
import { makeStyles } from "@repo/ui/themes/makeStyles";
 
import { BriefReasonItem, ReasonItem } from "./ReasonItem";
 
interface Props {
  value: string;
  onChange: (reason: string) => void;
  reasons: BriefReasonItem[];
}
 
export const BriefReason = ({ value, onChange, reasons }: Props) => {
  const styles = useStyles();
 
  return (
    <FlatList
      data={reasons}
      horizontal={true}
      showsHorizontalScrollIndicator={false}
      keyExtractor={(item) => item.label}
      style={styles.list}
      renderItem={({ item }) => (
        <ReasonItem
          item={item}
          selected={value === item.label}
          onPress={() => onChange(item.label)}
        />
      )}
    />
  );
};
 
const useStyles = makeStyles(() => ({
  list: {
    paddingLeft: 24,
  },
}));