All files / components/inputs/Checkbox Checkbox.tsx

100% Statements 4/4
100% Branches 0/0
100% Functions 1/1
100% Lines 4/4

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 40 41 42 43    1x     1x                 1x                                                     1x  
/* eslint-disable no-ternary */
 
import { Icon, Input, Label, Polyline, StyledCheckbox, Wrapper } from "./styled"
import { ComponentProps } from "."
 
const Checkbox = ({
  inputId,
  isChecked,
  label,
  labelId,
  name,
  onChange,
  value
}: ComponentProps) => (
  <Wrapper>
    <Input
      defaultChecked={isChecked}
      id={inputId}
      name={name}
      onChange={onChange}
      value={value}
    />
 
    <StyledCheckbox
      $checked={isChecked}
      aria-checked={isChecked}
      aria-labelledby={labelId}
      htmlFor={inputId}
      role="checkbox"
    >
      <Icon viewBox="0 0 24 24">
        <Polyline points="20 6 9 17 4 12" />
      </Icon>
    </StyledCheckbox>
 
    <Label htmlFor={inputId} id={labelId}>
      {label}
    </Label>
  </Wrapper>
)
 
export default Checkbox