File tree Expand file tree Collapse file tree 1 file changed +4
-4
lines changed Expand file tree Collapse file tree 1 file changed +4
-4
lines changed Original file line number Diff line number Diff line change @@ -44,15 +44,15 @@ type AnyPortalNode<C extends Component<any> = Component<any>> = HtmlPortalNode<C
44
44
45
45
46
46
const validateElementType = ( domElement : Element , elementType : ANY_ELEMENT_TYPE ) => {
47
- const document = domElement . ownerDocument as any ;
47
+ const ownerDocument = ( domElement . ownerDocument ?? document ) as any ;
48
48
// Cast document to `any` because Typescript doesn't know about the legacy `Document.parentWindow` field, and also
49
49
// doesn't believe `Window.HTMLElement`/`Window.SVGElement` can be used in instanceof tests.
50
- const window = document . defaultView ?? document . parentWindow ; // Fallback on `parentWindow` in order to support IE8 and earlier
50
+ const ownerWindow = ownerDocument . defaultView ?? ownerDocument . parentWindow ?? window ; // `parentWindow` for IE8 and earlier
51
51
if ( elementType === ELEMENT_TYPE_HTML ) {
52
- return domElement instanceof window . HTMLElement ;
52
+ return domElement instanceof ownerWindow . HTMLElement ;
53
53
}
54
54
if ( elementType === ELEMENT_TYPE_SVG ) {
55
- return domElement instanceof window . SVGElement ;
55
+ return domElement instanceof ownerWindow . SVGElement ;
56
56
}
57
57
throw new Error ( `Unrecognized element type "${ elementType } " for validateElementType.` ) ;
58
58
} ;
You can’t perform that action at this time.
0 commit comments