Skip to content

Commit 2d20a65

Browse files
committed
import types from core lib
1 parent b271504 commit 2d20a65

File tree

4 files changed

+15
-91
lines changed

4 files changed

+15
-91
lines changed

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@
7272
"prettier": "^2.0.5",
7373
"react": "^16.9.0",
7474
"react-dom": "^16.9.0",
75-
"react-hook-form": "^6.0.0-rc.4",
75+
"react-hook-form": "^6.7.0",
7676
"react-test-renderer": "^16.9.0",
7777
"rimraf": "^3.0.2",
7878
"rollup": "^2.15.0",
@@ -86,7 +86,7 @@
8686
"peerDependencies": {
8787
"react": ">=16.8.0",
8888
"react-dom": ">=16.8.0",
89-
"react-hook-form": ">=6.0.0"
89+
"react-hook-form": ">=6.6.0"
9090
},
9191
"husky": {
9292
"hooks": {

src/ErrorMessage.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import React from 'react';
2-
import { useFormContext, get } from 'react-hook-form';
3-
import { Props, FieldErrors } from './types';
2+
import { useFormContext, get, FieldErrors } from 'react-hook-form';
3+
import { Props } from './types';
44

55
const ErrorMessage = <
66
TFieldErrors extends FieldErrors,

src/types.ts

Lines changed: 7 additions & 83 deletions
Original file line numberDiff line numberDiff line change
@@ -1,87 +1,11 @@
11
import React from 'react';
2-
3-
export type NonUndefined<T> = T extends undefined ? never : T;
4-
5-
export type Assign<T extends object, U extends object> = T & Omit<U, keyof T>;
6-
7-
export type DeepMap<T, TValue> = {
8-
[K in keyof T]?: IsAny<T[K]> extends true
9-
? any
10-
: NonUndefined<T[K]> extends NestedValue | Date | FileList
11-
? TValue
12-
: NonUndefined<T[K]> extends object
13-
? DeepMap<T[K], TValue>
14-
: NonUndefined<T[K]> extends Array<infer U>
15-
? IsAny<U> extends true
16-
? Array<any>
17-
: U extends NestedValue | Date | FileList
18-
? Array<TValue>
19-
: U extends object
20-
? Array<DeepMap<U, TValue>>
21-
: Array<TValue>
22-
: TValue;
23-
};
24-
25-
export type IsAny<T> = boolean extends (T extends never ? true : false)
26-
? true
27-
: false;
28-
29-
export type IsFlatObject<T extends object> = Extract<
30-
Exclude<T[keyof T], NestedValue | Date | FileList>,
31-
any[] | object
32-
> extends never
33-
? true
34-
: false;
35-
36-
declare const $NestedValue: unique symbol;
37-
38-
export type FieldValues = Record<string, any>;
39-
40-
export type FieldName<TFieldValues extends FieldValues> = IsFlatObject<
41-
TFieldValues
42-
> extends true
43-
? Extract<keyof TFieldValues, string>
44-
: string;
45-
46-
export type NestedValue<TValue extends any[] | object = any[] | object> = {
47-
[$NestedValue]: never;
48-
} & TValue;
49-
50-
export type Ref = FieldElement;
51-
52-
export type CustomElement<TFieldValues extends FieldValues> = {
53-
name: FieldName<TFieldValues>;
54-
type?: string;
55-
value?: any;
56-
checked?: boolean;
57-
options?: HTMLOptionsCollection;
58-
files?: FileList | null;
59-
focus?: () => void;
60-
};
61-
62-
export type FieldElement<TFieldValues extends FieldValues = FieldValues> =
63-
| HTMLInputElement
64-
| HTMLSelectElement
65-
| HTMLTextAreaElement
66-
| CustomElement<TFieldValues>;
67-
68-
export type Message = string;
69-
70-
export type ValidateResult = Message | Message[] | boolean | undefined;
71-
72-
export type MultipleFieldErrors = Record<string, ValidateResult>;
73-
74-
export type FieldError = {
75-
type: string;
76-
ref?: Ref;
77-
types?: MultipleFieldErrors;
78-
message?: Message;
79-
isManual?: boolean;
80-
};
81-
82-
export type FieldErrors<
83-
TFieldValues extends FieldValues = FieldValues
84-
> = DeepMap<TFieldValues, FieldError>;
2+
import {
3+
Assign,
4+
FieldName,
5+
Message,
6+
MultipleFieldErrors,
7+
FieldErrors,
8+
} from 'react-hook-form';
859

8610
export type FieldValuesFromFieldErrors<
8711
TFieldErrors

yarn.lock

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3799,10 +3799,10 @@ react-dom@^16.9.0:
37993799
prop-types "^15.6.2"
38003800
scheduler "^0.19.1"
38013801

3802-
react-hook-form@^6.0.0-rc.4:
3803-
version "6.0.0-rc.4"
3804-
resolved "https://registry.yarnpkg.com/react-hook-form/-/react-hook-form-6.0.0-rc.4.tgz#83889afbf8aeda7741e983e7a512e42dfd6d13af"
3805-
integrity sha512-22t+lh8bDv2ajY66QGsfoMhdJa+G4Qlm7XbnCzw24+CaZnr/UoMNAubeVFVkrQB4COXoErA94L0aMt19BqGkmg==
3802+
react-hook-form@^6.7.0:
3803+
version "6.7.0"
3804+
resolved "https://registry.yarnpkg.com/react-hook-form/-/react-hook-form-6.7.0.tgz#84702b6a56c6c81d7c43cbfbd343e4884dd1e6be"
3805+
integrity sha512-2ySZ/lyp8xinKUMv/yoSo3NcNknfrHGlJ1pIV2U80H0WlFSGaGZ0wvAHmgfl1L5ZhoQND6mawcv09wuM8OGVPw==
38063806

38073807
react-is@^16.12.0, react-is@^16.8.1, react-is@^16.8.6:
38083808
version "16.13.1"

0 commit comments

Comments
 (0)