@gluestack-ui/core
Version:
Universal UI components for React Native, Expo, and Next.js
22 lines • 909 B
JavaScript
import { useCheckbox } from './useCheckbox';
import { useToggleState } from '@react-stately/toggle';
export function useCheckboxGroupItem(props, state, inputRef) {
const toggleState = useToggleState({
isReadOnly: props.isReadOnly || state.isReadOnly,
isSelected: state.isSelected(props.value),
onChange(isSelected) {
if (isSelected) {
state.addValue(props.value);
}
else {
state.removeValue(props.value);
}
if (props.onChange) {
props.onChange(isSelected);
}
},
});
let { inputProps } = useCheckbox(Object.assign(Object.assign({}, props), { isReadOnly: props.isReadOnly || state.isReadOnly, isDisabled: props.isDisabled || state.isDisabled }), toggleState, inputRef);
return { inputProps };
}
//# sourceMappingURL=useCheckboxGroupItem.js.map