packages/travix-ui-kit/components/checkbox/checkbox.js
function Checkbox(props) {
  warnAboutDeprecatedProp(props.mods, 'mods', 'className');

  const {
    checked,
    children,
    className,
    dataAttrs = {},
    disabled,
    inputDataAttrs = {},
    name,
    onChange,
  } = props;

  const dataAttributes = getDataAttributes(dataAttrs);
  const inputDataAttributes = getDataAttributes(inputDataAttrs);
  const mods = props.mods ? props.mods.slice() : [];
  disabled && mods.push('is-disabled');
  const classNames = classnames(getClassNamesWithMods('ui-checkbox', mods), className);

  return (
    <label
      {...dataAttributes}
      className={classNames}
      htmlFor={name}
    >
      <input
        {...inputDataAttributes}
        aria-checked={checked}
        checked={checked}
        disabled={disabled}
        id={name}
        onChange={onChange}
        readOnly={!onChange}
        role="radio"
        type="checkbox"
      />
      <span className="ui-checkbox__text">
        {children}
      </span>
    </label>
  );
}
function Checkbox(props) {
  warnAboutDeprecatedProp(props.mods, 'mods', 'className');

  const {
    checked,
    children,
    className,
    dataAttrs = {},
    disabled,
    inputDataAttrs = {},
    name,
    onChange,
  } = props;

  const dataAttributes = getDataAttributes(dataAttrs);
  const inputDataAttributes = getDataAttributes(inputDataAttrs);
  const mods = props.mods ? props.mods.slice() : [];
  disabled && mods.push('is-disabled');
  const classNames = classnames(getClassNamesWithMods('ui-checkbox', mods), className);

  return (
    <label
      {...dataAttributes}
      className={classNames}
      htmlFor={name}
    >
      <input
        {...inputDataAttributes}
        aria-checked={checked}
        checked={checked}
        disabled={disabled}
        id={name}
        onChange={onChange}
        readOnly={!onChange}
        role="radio"
        type="checkbox"
      />
      <span className="ui-checkbox__text">
        {children}
      </span>
    </label>
  );
}
function Checkbox ( props ) { warnAboutDeprecatedProp ( props . mods , 'mods' , 'className' ) ; const { checked , children , className , dataAttrs = { } , disabled , inputDataAttrs = { } , name , onChange , } = props ; const dataAttributes = getDataAttributes ( dataAttrs ) ; const inputDataAttributes = getDataAttributes ( inputDataAttrs ) ; const mods = props . mods ? props . mods . slice ( ) : [ ] ; disabled && mods . push ( 'is-disabled' ) ; const classNames = classnames ( getClassNamesWithMods ( 'ui-checkbox' , mods ) , className ) ; return ( < label { ... dataAttributes } className = { classNames } htmlFor = { name } > < input { ... inputDataAttributes } aria-checked = { checked } checked = { checked } disabled = { disabled } id = { name } onChange = { onChange } readOnly = { ! onChange } role = "radio" type = "checkbox" / > < span className = "ui-checkbox__text" > { children } < / span > < / label > ) ; }
Checkbox component.
Checkbox component .