# @piplup/rhf-core

![npm bundle size](https://img.shields.io/bundlephobia/minzip/@piplup/rhf-core)

This package builds upon `react-hook-form` by offering additional utility hooks
such as `useControllerAdapter`, `useFieldStateAdapter`, `useFormStateAdapter`,
`useFieldState`, `useFormState`, `useFormSetFocus` and `useFormReset`. These
hooks simplify component composition and help reduce boilerplate code.

## Installation

```bash
npm install @piplup/rhf-core react-hook-form
```

or

```bash
yarn add @piplup/rhf-core react-hook-form
```

or

```bash
pnpm add @piplup/rhf-core react-hook-form
```

## Hooks

- [useFieldState](https://github.com/sadik-malik/piplup-react-hook-form/blob/main/packages/rhf-core/src/hooks/use-field-state-adapter.ts)
- [useFormSetFocus](https://github.com/sadik-malik/piplup-react-hook-form/blob/main/packages/rhf-core/src/hooks/use-form-set-focus.ts)
- [useFormReset](https://github.com/sadik-malik/piplup-react-hook-form/blob/main/packages/rhf-core/src/hooks/use-form-reset.ts)
- [useControllerAdapter](https://github.com/sadik-malik/piplup-react-hook-form/blob/main/packages/rhf-core/src/hooks/use-controller-adapter.ts)
- [useFieldStateAdapter](https://github.com/sadik-malik/piplup-react-hook-form/blob/main/packages/rhf-core/src/hooks/use-field-state-adapter.ts)
- [useFormStateAdapter](https://github.com/sadik-malik/piplup-react-hook-form/blob/main/packages/rhf-core/src/hooks/use-form-state-adapter.ts)

## Components & Usage

Refer to [storybook](https://www.piplupjs.com) examples for list of available
components and its usage.
