gitextract_9m26ufpr/ ├── .all-contributorsrc ├── .changeset/ │ ├── README.md │ └── config.json ├── .eslintignore ├── .eslintrc.js ├── .github/ │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.md │ │ ├── feature_request.md │ │ └── question.md │ ├── PULL_REQUEST_TEMPLATE.md │ ├── dependabot.yml │ └── workflows/ │ ├── codeql-analysis.yml │ ├── release.yml │ ├── size.yml │ └── tests.yml ├── .gitignore ├── .husky/ │ ├── pre-commit │ └── pre-push ├── .nvmrc ├── .prettierignore ├── .vscode/ │ ├── launch.json │ └── settings.json ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── SECURITY.md ├── app/ │ ├── .eslintignore │ ├── .eslintrc.js │ ├── .gitignore │ ├── .prettierignore │ ├── .stylelintrc.js │ ├── README.md │ ├── package.json │ ├── public/ │ │ ├── index.html │ │ ├── manifest.json │ │ └── robots.txt │ ├── src/ │ │ ├── App/ │ │ │ ├── index.tsx │ │ │ └── styles.ts │ │ ├── Automation/ │ │ │ └── index.tsx │ │ ├── Playground/ │ │ │ └── index.tsx │ │ ├── index.tsx │ │ ├── react-app-env.d.ts │ │ └── types/ │ │ └── index.d.ts │ └── tsconfig.json ├── babel.config.json ├── bundlesize.config.json ├── docs/ │ ├── api-reference/ │ │ ├── use-controlled.md │ │ ├── use-field-array.md │ │ ├── use-form-methods.md │ │ ├── use-form-state.md │ │ ├── use-form.md │ │ └── utility-functions.md │ ├── examples/ │ │ ├── arrays-and-lists.md │ │ ├── basic.md │ │ ├── built-in-validation.md │ │ ├── checkboxes.md │ │ ├── complex-strcutures.md │ │ ├── conditional-fields.md │ │ ├── custom-field.md │ │ ├── field-level-validation.md │ │ ├── form-level-validation.md │ │ ├── form-submission.md │ │ ├── isolating-rerendering.md │ │ ├── lazy-default-values.md │ │ ├── material-ui.md │ │ ├── multi-select.md │ │ ├── radio-group.md │ │ ├── react-select.md │ │ ├── reset-form.md │ │ ├── validation-with-schema.md │ │ ├── virtualized-lists.md │ │ ├── without-form-element.md │ │ └── wizard-form.md │ └── getting-started/ │ ├── 3rd-party-ui-libraries.md │ ├── accessibility.md │ ├── arrays-and-lists.md │ ├── bundle-size-overview.md │ ├── complex-structures.md │ ├── form-state.md │ ├── form-submission.md │ ├── getting-started.md │ ├── integration-an-existing-form.md │ ├── reset-form.md │ ├── typescript-support.md │ └── validation-guide.md ├── examples/ │ ├── README.md │ ├── arrays-and-lists/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── basic/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── built-in-validation/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── checkboxes/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── complex-structures/ │ │ ├── .codesandbox/ │ │ │ └── workspace.json │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── conditional-fields/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── custom-field/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── field-level-validation/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── form-level-validation/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── form-submission/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── isolating-rerendering/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── joi/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── lazy-default-values/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── material-ui/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── multi-select/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── quick-start/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── radio-group/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── react-select/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── reset-form/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── showbox/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── typescript/ │ │ ├── index.tsx │ │ ├── package.json │ │ └── styles.scss │ ├── without-form-element/ │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ ├── wizard-form/ │ │ ├── .codesandbox/ │ │ │ └── workspace.json │ │ ├── Step1.js │ │ ├── Step2.js │ │ ├── Step3.js │ │ ├── formValues.js │ │ ├── index.js │ │ ├── package.json │ │ └── styles.scss │ └── yup/ │ ├── index.js │ ├── package.json │ └── styles.scss ├── package.json ├── scripts/ │ ├── jest/ │ │ ├── config.js │ │ └── setup.ts │ └── rollup/ │ ├── cjsEntryFile.js │ ├── config.js │ └── createConfig.js ├── src/ │ ├── hooks/ │ │ ├── index.ts │ │ ├── useLatest.test.ts │ │ ├── useLatest.ts │ │ ├── useState.test.ts │ │ └── useState.ts │ ├── index.ts │ ├── shared.test.ts │ ├── shared.ts │ ├── types/ │ │ ├── global.d.ts │ │ ├── index.ts │ │ └── react-cool-form.d.ts │ ├── useControlled.test.tsx │ ├── useControlled.ts │ ├── useFieldArray.test.tsx │ ├── useFieldArray.ts │ ├── useForm.test.tsx │ ├── useForm.ts │ ├── useFormMethods.test.tsx │ ├── useFormMethods.ts │ ├── useFormState.test.tsx │ ├── useFormState.ts │ └── utils/ │ ├── arrayToMap.test.ts │ ├── arrayToMap.ts │ ├── cloneObject.test.ts │ ├── cloneObject.ts │ ├── compact.test.ts │ ├── compact.ts │ ├── deepMerge.test.ts │ ├── deepMerge.ts │ ├── filterErrors.test.ts │ ├── filterErrors.ts │ ├── get.test.ts │ ├── get.ts │ ├── getIsDirty.test.ts │ ├── getIsDirty.ts │ ├── getPath.test.ts │ ├── getPath.ts │ ├── index.ts │ ├── invariant.test.ts │ ├── invariant.ts │ ├── isAsyncFunction.test.ts │ ├── isAsyncFunction.ts │ ├── isCheckboxInput.test.ts │ ├── isCheckboxInput.ts │ ├── isEmptyObject.test.ts │ ├── isEmptyObject.ts │ ├── isFieldArray.test.ts │ ├── isFieldArray.ts │ ├── isFieldElement.test.ts │ ├── isFieldElement.ts │ ├── isFileInput.test.ts │ ├── isFileInput.ts │ ├── isFileList.ts │ ├── isFunction.test.ts │ ├── isFunction.ts │ ├── isInputElement.test.ts │ ├── isInputElement.ts │ ├── isNumberInput.test.ts │ ├── isNumberInput.ts │ ├── isObject.test.ts │ ├── isObject.ts │ ├── isPlainObject.test.ts │ ├── isPlainObject.ts │ ├── isRadioInput.test.ts │ ├── isRadioInput.ts │ ├── isRangeInput.test.ts │ ├── isRangeInput.ts │ ├── isSelectMultiple.test.ts │ ├── isSelectMultiple.ts │ ├── isSelectOne.test.ts │ ├── isSelectOne.ts │ ├── isUndefined.test.ts │ ├── isUndefined.ts │ ├── parseState.test.ts │ ├── parseState.ts │ ├── runWithLowPriority.test.ts │ ├── runWithLowPriority.ts │ ├── set.test.ts │ ├── set.ts │ ├── setValuesAsTrue.test.ts │ ├── setValuesAsTrue.ts │ ├── stringToPath.test.ts │ ├── stringToPath.ts │ ├── unset.test.ts │ ├── unset.ts │ ├── warn.test.ts │ └── warn.ts ├── tsconfig.json └── website/ ├── .gitignore ├── .prettierignore ├── README.md ├── babel.config.js ├── docusaurus.config.js ├── package.json ├── sidebars.js ├── src/ │ ├── css/ │ │ └── custom.scss │ └── pages/ │ ├── index.js │ └── styles.module.scss └── static/ └── .nojekyll