Skip to content

Commit 6a830d3

Browse files
committed
handle hoc wrapper
1 parent 6ceac4d commit 6a830d3

File tree

1 file changed

+16
-6
lines changed
  • packages/react-devtools-shared/src

1 file changed

+16
-6
lines changed

packages/react-devtools-shared/src/utils.js

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -260,7 +260,9 @@ export function separateDisplayNameAndHOCs(
260260

261261
switch (type) {
262262
case ElementTypeClass:
263+
case ElementTypeForwardRef:
263264
case ElementTypeFunction:
265+
case ElementTypeMemo:
264266
if (displayName.indexOf('(') >= 0) {
265267
const matches = displayName.match(/[^()]+/g);
266268
if (matches != null) {
@@ -269,16 +271,24 @@ export function separateDisplayNameAndHOCs(
269271
}
270272
}
271273
break;
272-
case ElementTypeForwardRef:
273-
hocDisplayNames = ['ForwardRef'];
274-
break;
275-
case ElementTypeMemo:
276-
hocDisplayNames = ['Memo'];
277-
break;
278274
default:
279275
break;
280276
}
281277

278+
if (type === ElementTypeMemo) {
279+
if (hocDisplayNames === null) {
280+
hocDisplayNames = ['Memo'];
281+
} else {
282+
hocDisplayNames.unshift('Memo');
283+
}
284+
} else if (type === ElementTypeForwardRef) {
285+
if (hocDisplayNames === null) {
286+
hocDisplayNames = ['ForwardRef'];
287+
} else {
288+
hocDisplayNames.unshift('ForwardRef');
289+
}
290+
}
291+
282292
return [displayName, hocDisplayNames];
283293
}
284294

0 commit comments

Comments
 (0)