react-hook-form 7.15.0 → 7.15.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +104 -3
- package/README.md +7 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +45 -43
- package/dist/index.esm.js.map +1 -1
- package/dist/index.umd.js +1 -1
- package/dist/index.umd.js.map +1 -1
- package/dist/types/controller.d.ts +5 -5
- package/dist/types/errors.d.ts +2 -2
- package/dist/types/form.d.ts +3 -3
- package/dist/types/utils.d.ts +20 -0
- package/package.json +16 -16
- package/dist/global.d.ts +0 -11
@@ -1,11 +1,11 @@
|
|
1
1
|
import * as React from 'react';
|
2
2
|
import { RegisterOptions } from './validator';
|
3
|
-
import { Control,
|
4
|
-
export declare type ControllerFieldState = {
|
3
|
+
import { Control, FieldErrors, FieldPath, FieldPathValue, FieldValues, RefCallBack, UnpackNestedValue, UseFormStateReturn } from './';
|
4
|
+
export declare type ControllerFieldState<TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = {
|
5
5
|
invalid: boolean;
|
6
6
|
isTouched: boolean;
|
7
7
|
isDirty: boolean;
|
8
|
-
error?:
|
8
|
+
error?: FieldErrors<FieldPathValue<TFieldValues, TFieldName>>;
|
9
9
|
};
|
10
10
|
export declare type ControllerRenderProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = {
|
11
11
|
onChange: (...event: any[]) => void;
|
@@ -24,12 +24,12 @@ export declare type UseControllerProps<TFieldValues extends FieldValues = FieldV
|
|
24
24
|
export declare type UseControllerReturn<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = {
|
25
25
|
field: ControllerRenderProps<TFieldValues, TName>;
|
26
26
|
formState: UseFormStateReturn<TFieldValues>;
|
27
|
-
fieldState: ControllerFieldState
|
27
|
+
fieldState: ControllerFieldState<TFieldValues, TName>;
|
28
28
|
};
|
29
29
|
export declare type ControllerProps<TFieldValues extends FieldValues = FieldValues, TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> = {
|
30
30
|
render: ({ field, fieldState, formState, }: {
|
31
31
|
field: ControllerRenderProps<TFieldValues, TName>;
|
32
|
-
fieldState: ControllerFieldState
|
32
|
+
fieldState: ControllerFieldState<TFieldValues, TName>;
|
33
33
|
formState: UseFormStateReturn<TFieldValues>;
|
34
34
|
}) => React.ReactElement;
|
35
35
|
} & UseControllerProps<TFieldValues, TName>;
|
package/dist/types/errors.d.ts
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
import { FieldValues, InternalFieldName, Ref } from './fields';
|
2
|
-
import { DeepMap, DeepPartial, LiteralUnion } from './utils';
|
2
|
+
import { DeepMap, DeepPartial, LiteralUnion, UnionLike } from './utils';
|
3
3
|
import { RegisterOptions, ValidateResult } from './validator';
|
4
4
|
export declare type Message = string;
|
5
5
|
export declare type MultipleFieldErrors = {
|
@@ -18,5 +18,5 @@ export declare type ErrorOption = {
|
|
18
18
|
type?: LiteralUnion<keyof RegisterOptions, string>;
|
19
19
|
types?: MultipleFieldErrors;
|
20
20
|
};
|
21
|
-
export declare type FieldErrors<TFieldValues extends FieldValues = FieldValues> = DeepMap<DeepPartial<TFieldValues
|
21
|
+
export declare type FieldErrors<TFieldValues extends FieldValues = FieldValues> = DeepMap<DeepPartial<UnionLike<TFieldValues>>, FieldError>;
|
22
22
|
export declare type InternalFieldErrors = Partial<Record<InternalFieldName, FieldError>>;
|
package/dist/types/form.d.ts
CHANGED
@@ -5,7 +5,7 @@ import { EventType } from './events';
|
|
5
5
|
import { FieldArrayWithId } from './fieldArray';
|
6
6
|
import { FieldRefs, FieldValue, FieldValues, InternalFieldName } from './fields';
|
7
7
|
import { Resolver } from './resolvers';
|
8
|
-
import { DeepMap, DeepPartial, FieldArrayPath, FieldPath, FieldPathValue, FieldPathValues } from './utils';
|
8
|
+
import { DeepMap, DeepPartial, FieldArrayPath, FieldPath, FieldPathValue, FieldPathValues, UnionLike } from './utils';
|
9
9
|
import { RegisterOptions } from './validator';
|
10
10
|
declare const $NestedValue: unique symbol;
|
11
11
|
export declare type NestedValue<TValue extends object = object> = {
|
@@ -52,7 +52,7 @@ export declare type UseFormProps<TFieldValues extends FieldValues = FieldValues,
|
|
52
52
|
criteriaMode: CriteriaMode;
|
53
53
|
delayError: number;
|
54
54
|
}>;
|
55
|
-
export declare type FieldNamesMarkedBoolean<TFieldValues extends FieldValues> = DeepMap<DeepPartial<TFieldValues
|
55
|
+
export declare type FieldNamesMarkedBoolean<TFieldValues extends FieldValues> = DeepMap<DeepPartial<UnionLike<TFieldValues>>, true>;
|
56
56
|
export declare type FormStateProxy<TFieldValues extends FieldValues = FieldValues> = {
|
57
57
|
isDirty: boolean;
|
58
58
|
isValidating: boolean;
|
@@ -121,7 +121,7 @@ export declare type UseFormUnregister<TFieldValues extends FieldValues> = (name?
|
|
121
121
|
}) => void;
|
122
122
|
export declare type UseFormHandleSubmit<TFieldValues extends FieldValues> = <TSubmitFieldValues extends FieldValues = TFieldValues>(onValid: SubmitHandler<TSubmitFieldValues>, onInvalid?: SubmitErrorHandler<TFieldValues>) => (e?: React.BaseSyntheticEvent) => Promise<void>;
|
123
123
|
export declare type UseFormReset<TFieldValues extends FieldValues> = (values?: DefaultValues<TFieldValues>, keepStateOptions?: KeepStateOptions) => void;
|
124
|
-
export declare type WatchInternal<TFieldValues> = (fieldNames?: InternalFieldName | InternalFieldName[], defaultValue?: UnpackNestedValue<DeepPartial<TFieldValues>>,
|
124
|
+
export declare type WatchInternal<TFieldValues> = (fieldNames?: InternalFieldName | InternalFieldName[], defaultValue?: UnpackNestedValue<DeepPartial<TFieldValues>>, isMounted?: boolean, isGlobal?: boolean) => FieldPathValue<FieldValues, InternalFieldName> | FieldPathValues<FieldValues, InternalFieldName[]>;
|
125
125
|
export declare type GetIsDirty = <TName extends InternalFieldName, TData>(name?: TName, data?: TData) => boolean;
|
126
126
|
export declare type FormStateSubjectRef<TFieldValues> = SubjectType<Partial<FormState<TFieldValues>> & {
|
127
127
|
name?: InternalFieldName;
|
package/dist/types/utils.d.ts
CHANGED
@@ -1,5 +1,14 @@
|
|
1
1
|
import { FieldValues } from './fields';
|
2
2
|
import { NestedValue } from './form';
|
3
|
+
interface File extends Blob {
|
4
|
+
readonly lastModified: number;
|
5
|
+
readonly name: string;
|
6
|
+
}
|
7
|
+
interface FileList {
|
8
|
+
readonly length: number;
|
9
|
+
item(index: number): File | null;
|
10
|
+
[index: number]: File;
|
11
|
+
}
|
3
12
|
export declare type Primitive = null | undefined | string | number | boolean | symbol | bigint;
|
4
13
|
export declare type EmptyObject = {
|
5
14
|
[K in string | number]: never;
|
@@ -39,4 +48,15 @@ export declare type FieldArrayPathValue<TFieldValues extends FieldValues, TField
|
|
39
48
|
export declare type FieldPathValues<TFieldValues extends FieldValues, TPath extends FieldPath<TFieldValues>[] | readonly FieldPath<TFieldValues>[]> = {} & {
|
40
49
|
[K in keyof TPath]: FieldPathValue<TFieldValues, TPath[K] & FieldPath<TFieldValues>>;
|
41
50
|
};
|
51
|
+
declare type UnionKeys<T> = T extends any ? keyof T : never;
|
52
|
+
declare type UnionValues<T, K> = T extends any ? K extends keyof T ? T[K] : never : never;
|
53
|
+
declare type OptionalKeys<T> = T extends any ? {
|
54
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? K : never;
|
55
|
+
}[keyof T] : never;
|
56
|
+
declare type PartialBy<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
|
57
|
+
export declare type UnionLike<T> = [T] extends [Date | FileList | File | NestedValue] ? T : [T] extends [ReadonlyArray<any>] ? {
|
58
|
+
[K in keyof T]: UnionLike<T[K]>;
|
59
|
+
} : [T] extends [object] ? PartialBy<{
|
60
|
+
[K in UnionKeys<T>]: UnionLike<UnionValues<T, K>>;
|
61
|
+
}, Exclude<UnionKeys<T>, keyof T> | OptionalKeys<T>> : T;
|
42
62
|
export {};
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "react-hook-form",
|
3
3
|
"description": "Performant, flexible and extensible forms library for React Hooks",
|
4
|
-
"version": "7.15.
|
4
|
+
"version": "7.15.3",
|
5
5
|
"main": "dist/index.cjs.js",
|
6
6
|
"module": "dist/index.esm.js",
|
7
7
|
"umd:main": "dist/index.umd.js",
|
@@ -23,12 +23,12 @@
|
|
23
23
|
}
|
24
24
|
},
|
25
25
|
"scripts": {
|
26
|
-
"clean": "
|
26
|
+
"clean": "rimraf dist",
|
27
27
|
"prebuild": "yarn clean",
|
28
|
-
"build": "yarn build:modern
|
28
|
+
"build": "yarn build:modern",
|
29
|
+
"postbuild": "rimraf dist/__tests__",
|
29
30
|
"build:modern": "rollup -c ./scripts/rollup/rollup.config.js",
|
30
31
|
"build:esm": "rollup -c ./scripts/rollup/rollup.esm.config.js",
|
31
|
-
"cp:dts": "copyfiles -f ./src/**/*.d.ts dist && rm -rf dist/__tests__",
|
32
32
|
"prettier:fix": "prettier --config .prettierrc --write \"**/*.{ts,tsx}\"",
|
33
33
|
"lint": "eslint '**/*.{js,ts,tsx}'",
|
34
34
|
"lint:fix": "yarn lint -- --fix",
|
@@ -70,34 +70,34 @@
|
|
70
70
|
"@rollup/plugin-node-resolve": "^13.0.2",
|
71
71
|
"@testing-library/jest-dom": "^5.14.1",
|
72
72
|
"@testing-library/react": "^12.0.0",
|
73
|
-
"@testing-library/react-hooks": "^7.0.
|
73
|
+
"@testing-library/react-hooks": "^7.0.2",
|
74
74
|
"@testing-library/react-native": "^7.2.0",
|
75
75
|
"@types/jest": "^27.0.1",
|
76
|
-
"@types/react": "^17.0.
|
77
|
-
"@types/react-native": "^0.
|
78
|
-
"@typescript-eslint/eslint-plugin": "^4.
|
79
|
-
"@typescript-eslint/parser": "^4.
|
76
|
+
"@types/react": "^17.0.20",
|
77
|
+
"@types/react-native": "^0.65.0",
|
78
|
+
"@typescript-eslint/eslint-plugin": "^4.31.0",
|
79
|
+
"@typescript-eslint/parser": "^4.31.0",
|
80
80
|
"@vitejs/plugin-react-refresh": "^1.3.6",
|
81
|
-
"babel-jest": "^27.
|
81
|
+
"babel-jest": "^27.1.1",
|
82
82
|
"bundlesize": "^0.18.0",
|
83
|
-
"
|
84
|
-
"cypress": "8.3.0",
|
83
|
+
"cypress": "8.3.1",
|
85
84
|
"cypress-parallel": "^0.3.0",
|
86
85
|
"eslint": "^7.32.0",
|
87
86
|
"eslint-config-prettier": "^8.3.0",
|
88
87
|
"eslint-plugin-cypress": "^2.11.3",
|
89
|
-
"eslint-plugin-prettier": "^
|
90
|
-
"eslint-plugin-react": "^7.
|
88
|
+
"eslint-plugin-prettier": "^4.0.0",
|
89
|
+
"eslint-plugin-react": "^7.25.1",
|
91
90
|
"eslint-plugin-react-hooks": "^4.2.0",
|
92
91
|
"eslint-plugin-simple-import-sort": "^7.0.0",
|
93
92
|
"husky": "^7.0.2",
|
94
|
-
"jest": "^27.
|
93
|
+
"jest": "^27.1.1",
|
95
94
|
"lint-staged": "^11.1.2",
|
96
|
-
"prettier": "^2.
|
95
|
+
"prettier": "^2.4.0",
|
97
96
|
"react": "^17.0.1",
|
98
97
|
"react-dom": "^17.0.1",
|
99
98
|
"react-native": "^0.65.1",
|
100
99
|
"react-test-renderer": "^17.0.1",
|
100
|
+
"rimraf": "^3.0.2",
|
101
101
|
"rollup": "^2.56.3",
|
102
102
|
"rollup-plugin-peer-deps-external": "^2.2.4",
|
103
103
|
"rollup-plugin-sourcemaps": "^0.6.2",
|
package/dist/global.d.ts
DELETED
@@ -1,11 +0,0 @@
|
|
1
|
-
/*
|
2
|
-
Projects that React Hook Form installed don't include the DOM library need these interfaces to compile.
|
3
|
-
React Native applications is no DOM available. The JavaScript runtime is ES6/ES2015 only.
|
4
|
-
These definitions allow such projects to compile with only --lib ES6.
|
5
|
-
|
6
|
-
Warning: all of these interfaces are empty.
|
7
|
-
If you want type definitions for various properties, you need to add `--lib DOM` (via command line or tsconfig.json).
|
8
|
-
*/
|
9
|
-
|
10
|
-
interface HTMLOptionsCollection {}
|
11
|
-
interface FileList {}
|