Skip to content

Commit 06b8d78

Browse files
committed
perf: multiples optimisations
1 parent a4b4640 commit 06b8d78

File tree

1 file changed

+11
-18
lines changed

1 file changed

+11
-18
lines changed

src/ErrorMessage.tsx

Lines changed: 11 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import React from 'react';
1+
import * as React from 'react';
22
import { useFormContext, get, FieldErrors } from 'react-hook-form';
33
import { Props } from './types';
44

@@ -25,25 +25,18 @@ const ErrorMessage = <
2525
}
2626

2727
const { message: messageFromRegister, types } = error;
28-
const props = {
29-
...rest,
28+
const props = Object.assign({}, rest, {
3029
children: messageFromRegister || message,
31-
};
30+
});
3231

33-
return as ? (
34-
React.isValidElement(as) ? (
35-
React.cloneElement(as, props)
36-
) : (
37-
React.createElement(as as string, props)
38-
)
39-
) : render ? (
40-
(render({
41-
message: messageFromRegister || message,
42-
messages: types,
43-
}) as React.ReactElement)
44-
) : (
45-
<React.Fragment {...props} />
46-
);
32+
return React.isValidElement(as)
33+
? React.cloneElement(as, props)
34+
: render
35+
? (render({
36+
message: messageFromRegister || message,
37+
messages: types,
38+
}) as React.ReactElement)
39+
: React.createElement((as as string) || React.Fragment, props);
4740
};
4841

4942
export { ErrorMessage };

0 commit comments

Comments
 (0)