๐ React Hooks for form state management and validation (Web + React Native)
MIT License
Bot releases are hidden (Show)
๐ fix #11773 regression on dirty check with reset (#11775)
Published by bluebill1049 7 months ago
๐ fix #11719 validation stuck on true state (#11723)
Published by bluebill1049 7 months ago
๐ bug(validatingFields, trigger): handle all fields validation trigger (#11624)
๐ ci: cleanup actions versions (#11629)
๐ fix #11590 issue with trigger on validatingFields (#11613)
thanks to @Moshyfawn
Published by bluebill1049 8 months ago
๐ฌ add isValidating
and validatingFields
to field state (#10657)
const { formState: { validatingFields } } = useForm({ mode: 'onBlur' });
โจ๏ธ chore: replace ts-ignore with ts-expect-error (#11573)
๐งโโ๏ธ chore: update lib dev deps (#11548)
๐
related #11541 improve dirty check when undefined provided with reset api
๐พ fix #11514 issue under strict mode reset invoke twice reset mounted field names with keepDirtyValues (#11546)
๐คก fix flush root render hack (#11521)
๐งฝ chore: removed unused utils and resp. test cases (#11476)
๐ close #11503 issue dirty field update with async validation (#11509)
Revert "๐ง fix data param in handleSubmit when TTransformedValues is a union type (#11420)"
Revert "โจ feat(values): priorities values over defaultvalues (#11399)" (#11545)
โค๏ธ Thanks to @deepgolani4, @pbankonier and @deepgolani4
โค๏ธ Thank you principal.com for your contribution
Published by bluebill1049 9 months ago
๐ฅฒ Regression: Revert "โจ๏ธ fix #10734 watch and useWatch without parameters return type (#11359)"
Published by bluebill1049 9 months ago
๐ง fix data param in handleSubmit when TTransformedValues is a union type (#11420)
๐ท build(Engines): remove pnpm dependency (#11425)
๐ fixes #11386 get new dirtyFields when reset keeping defaults and dirty values (#11401)
๐ท๏ธ improve CustomElement type (#11309)
๐ซ feat(useForm): leave formState flags in a consistent state when throwing in handleSubmit onValid (#11214)
โจ๏ธ fix: change DeepPartial to account for object union types & unknown (#11385)
โจ feat(values): priorities values over defaultvalues (#11399)
๐ close #11246 skip root validation on action when mode and revalidate mode is onSubmit (#11395)
๐ฉ fix #11322 trigger extra re-render with useWatch plus shouldUnregister (#11394)
โจ๏ธ fix #10734 watch and useWatch without parameters return type (#11359)
๐งโโ๏ธ fix #11281 issue with upgrade node version (#11392)
๐ fix #11368 keep form state mounted when keeping values (#11384)
๐ fix #11374: Nested deep partial with unknown (#11373)
thanks to @Moshyfawn, @jonahallibone, @eladattias1996, @RulerOfCakes, @anonkey, @Ar4ys, @IanVS and @r-kataoka11
Published by bluebill1049 10 months ago
๐ fix(formState, disabled): infer controlled disabled form state (#11361)
๐ fix(reset): remove global reset option flag (#11355)
๐ fix(useController): check if disabled state was set by user (#11353)
๐จ๏ธ fix: Change DeepPartial type definition to be compatible with unknown (#11333)
๐ fix #11328 resetField with object as defaultValue (#11329)
thanks to @Moshyfawn, @geeee and @RulerOfCakes
Published by bluebill1049 10 months ago
๐ fix #11292 issue with controller validation prop (#11294)
Published by bluebill1049 10 months ago
๐ fix #11276 issue with disabled omit on Controller (#11277)
๐ fix #11287 disabled prop cause const dirtyFields update (#11291)
Published by bluebill1049 11 months ago
๐ฎ feat: add reactive errors prop at useForm (#11188)
useForm({
errors, // server errors
})
๐ฅ๏ธ feat: add react-server bundle (#11162)
๐ฉ chore: upgrade Node.js and pnpm (#11163)
๐ช feat: add ValidationModeFlags Type (#11144)
๐ fix #11267 disabled prop does not affect controller validation (#11273)
๐ง refactor(util function): Enhance Consistency in Utility Functions: Standardizing Export, Function Types, and Naming (#11268)
โจ๏ธ change type structure of UseFormHandleSubmit (#11245)
๐ฎ fix(#11239): Set fields disabled state based on form and field disabled (#11241)
๐ข improved getDirtyFieldsFromDefaultValues type (#11238)
๐ fix #11229 issue with values not re-render the root form (#11231)
๐ fix #11218 useFieldArray focus issue with rules prop (#11221)
๐ง chore: improved isObjectType and swap (#11183)
thanks to @kotarella1110, @ssi02014, @thomasdbock, @mildfuzz and @Lennon57
Published by bluebill1049 12 months ago
๐ #11106 fix disabled prop not update dirty formState (#11143)
๐ fix controller update with disabled
prop from useForm
(#11142)
Published by bluebill1049 12 months ago
๐ fix controller update with disabled prop from useForm
Published by bluebill1049 12 months ago
๐งฑ feature: disable prop for useForm (#10496)
const App = () => {
const [disabled, setDisabled] = useState(false);
const { handleSubmit } = useForm({ disabled });
return (
<form
onSubmit={handleSubmit(async () => {
setDisabled(true);
await sleep(100);
setDisabled(false);
})}
/ >
);
}
๐ตโ๐ซ fixed typo in useFormContext (#11126)
๐ซก strictly manage constants and improve types (#11101)
๐ fix #11076 disable toggle issue (#11090)
๐ fix: Solve the issue of race condition with resolver. (#10991)
๐ docs: fix useWatch example syntax error (#11005)
๐ readme arabic version (#10992)
thanks to @Iyadchafroud @domuk-k @mehunk @ssi02014 and @tykhan
Published by bluebill1049 about 1 year ago
๐ซก allow keepIsSubmitSuccessful flag (#9640)
const { reset } = useForm()
<Form
onSubmit={() => {
reset(formValues, {
keepIsSubmitSuccessful: true,
});
}}
/>
๐ฆ fix typo in form.ts (#10978)
๐คก close #10907 potential fix on unmounted component (#10980)
๐ช simplify logic for subscription by name (#10947)
thanks to @stefanpl, @kai-dorschner-twinsity & @nitschSB
Published by bluebill1049 about 1 year ago
๐ fix implicit type coercion (#10949)
๐ close #10932 omit disabled prop when not defined (#10937)
๐ง fix controller test is dirty (#10899)
thanks to @samimakicc & @pierluigigiancola
Published by bluebill1049 about 1 year ago
๐ fix #10878 return disabled field state (#10879)
thanks to @Moshyfawn
Published by bluebill1049 about 1 year ago
๐งโโ๏ธ feat: support disabled prop for useController (#10810)
const [disabled, setDisabled] = useState(false)
useController({
disabled
})
๐ซ prevent reset argument mutation (#10847)
๐ fix: add exact option for array name in useWatch. (#10707)
๐ update isDirty when setting disabled in register (#10805)
๐งถ feat: trigger passed names to construct resolver options (#10590)
thanks to @selimb @vonagam @jgullstr and @rabbitson87
Published by bluebill1049 about 1 year ago
disabled
propdisabled
props for useForm
useForm({
disabled: true
})
const App = () => {
const [disabled, setDisabled] = useState(false);
const { register, handleSubmit, control } = useForm({
disabled,
});
return (
<form
onSubmit={handleSubmit(async () => {
setDisabled(true);
await sleep(100);
setDisabled(false);
})}
>
<input
type={'checkbox'}
{...register('checkbox')}
data-testid={'checkbox'}
/>
<input type={'radio'} {...register('radio')} data-testid={'radio'} />
<input type={'range'} {...register('range')} data-testid={'range'} />
<select {...register('select')} data-testid={'select'} />
<textarea {...register('textarea')} data-testid={'textarea'} />
<Controller control={control} render={({ field }) => <input disabled={field.disabled} />} name="test" />
<button>Submit</button>
</form>
);
}
Published by bluebill1049 about 1 year ago
๐ fix #10767 dep issue with replayio (#10768)
๐ fix #10762 async submit with Form component (#10766)
๐ซ add test case for issue #10744 to avoid future regressions (#10759)
thanks to @eg-bernardo
Published by bluebill1049 about 1 year ago
๐ผ add Replay Test Suites (#10681)
Revert "๐งโ๐ close #10585 update controller value on each render (#10586)"
๐ close #10682 make sure action flag gets reset after useEffect (#10732)
thanks to @jasonLaster