nextui/packages/components/checkbox/src/checkbox-group.tsx
Junior Garcia cd941e64c1
Fix/props suggestions (#1225)
* refactor(core): new forwardRef types created, stories modified, important changes implemented

* feat(docs): custom variants api added, components ref fixed

* fix(components): omit ref removed
2023-07-28 18:00:18 -03:00

40 lines
1.1 KiB
TypeScript

import {forwardRef} from "@nextui-org/system";
import {CheckboxGroupProvider} from "./checkbox-group-context";
import {UseCheckboxGroupProps, useCheckboxGroup} from "./use-checkbox-group";
export interface CheckboxGroupProps extends UseCheckboxGroupProps {}
const CheckboxGroup = forwardRef<"div", CheckboxGroupProps>((props, ref) => {
const {
children,
context,
label,
description,
errorMessage,
getGroupProps,
getLabelProps,
getWrapperProps,
getDescriptionProps,
getErrorMessageProps,
} = useCheckboxGroup({...props, ref});
return (
<div {...getGroupProps()}>
{label && <span {...getLabelProps()}>{label}</span>}
<div {...getWrapperProps()}>
<CheckboxGroupProvider value={context}>{children}</CheckboxGroupProvider>
</div>
{errorMessage ? (
<div {...getErrorMessageProps()}>{errorMessage}</div>
) : description ? (
<div {...getDescriptionProps()}>{description}</div>
) : null}
</div>
);
});
CheckboxGroup.displayName = "NextUI.CheckboxGroup";
export default CheckboxGroup;