diff --git a/src/Dom/shadow.ts b/src/Dom/shadow.ts index 2aa8b2dc..eaa44451 100644 --- a/src/Dom/shadow.ts +++ b/src/Dom/shadow.ts @@ -6,7 +6,7 @@ function getRoot(ele: Node) { * Check if is in shadowRoot */ export function inShadow(ele: Node) { - return getRoot(ele) !== ele?.ownerDocument; + return getRoot(ele) instanceof ShadowRoot; } /** diff --git a/tests/shadow.test.tsx b/tests/shadow.test.tsx index 3c81ede7..ba4dab3c 100644 --- a/tests/shadow.test.tsx +++ b/tests/shadow.test.tsx @@ -19,5 +19,10 @@ describe('shadow', () => { expect(getShadowRoot(button)).toBeNull(); }); + + it('should return null if dom is not appended', () => { + const button = document.createElement('button'); + expect(getShadowRoot(button)).toBeNull(); + }); }); });