Skip to content

Commit 19088f3

Browse files
author
Mohsen Azimi
committed
Use React.ReactNode
1 parent d74a8dd commit 19088f3

File tree

2 files changed

+3
-9
lines changed

2 files changed

+3
-9
lines changed

src/transforms/react-js-make-props-and-state-transform.ts

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -271,13 +271,7 @@ export function reactJSMakePropsAndStateInterfaceTransformFactoryFactory(typeChe
271271
} else if (/object/.test(text)) {
272272
result = ts.createKeywordTypeNode(ts.SyntaxKind.ObjectKeyword);
273273
} else if (/node/.test(text)) {
274-
result = ts.createUnionOrIntersectionTypeNode(
275-
ts.SyntaxKind.UnionType, [
276-
ts.createKeywordTypeNode(ts.SyntaxKind.NumberKeyword),
277-
ts.createKeywordTypeNode(ts.SyntaxKind.StringKeyword),
278-
ts.createTypeReferenceNode('JSX.Element', [])
279-
]
280-
)
274+
result = ts.createTypeReferenceNode('React.ReactNode', []);
281275
} else if (/element/.test(text)) {
282276
result = ts.createTypeReferenceNode('JSX.Element', []);
283277
} else if (/func/.test(text)) {

test/react-js-make-props-and-state-transform/static-proptypes-many-props/output.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ export default class MyComponent extends React.Component<{
88
number?: number;
99
object?: object;
1010
string?: string;
11-
node?: number | string | JSX.Element;
11+
node?: React.ReactNode;
1212
element?: JSX.Element;
1313
anyRequired: any;
1414
arrayRequired: any[];
@@ -17,7 +17,7 @@ export default class MyComponent extends React.Component<{
1717
numberRequired: number;
1818
objectRequired: object;
1919
stringRequired: string;
20-
nodeRequired: number | string | JSX.Element;
20+
nodeRequired: React.ReactNode;
2121
elementRequired: JSX.Element;
2222
}, {}> {
2323
static propTypes = {

0 commit comments

Comments
 (0)