diff --git a/package.json b/package.json index 9612052..c5700b3 100644 --- a/package.json +++ b/package.json @@ -86,7 +86,10 @@ "^react$": "preact/compat", "^react-dom/test-utils$": "preact/test-utils", "^react-dom$": "preact/compat" - } + }, + "setupFilesAfterEnv": [ + "/spec/setupTests.js" + ] }, "snapshotSerializers": [ "preact-render-spy/snapshot" diff --git a/spec/setupTests.js b/spec/setupTests.js new file mode 100644 index 0000000..2edf6b0 --- /dev/null +++ b/spec/setupTests.js @@ -0,0 +1,7 @@ +// Work-around for jsdom not supporting offsetParent +// https://github.com/jsdom/jsdom/issues/1261 +Object.defineProperty(HTMLElement.prototype, 'offsetParent', { + get() { + return this.parentNode; + }, +}); diff --git a/src/components/JustNotSorry.js b/src/components/JustNotSorry.js index ecd87cf..3f2af02 100644 --- a/src/components/JustNotSorry.js +++ b/src/components/JustNotSorry.js @@ -50,8 +50,8 @@ class JustNotSorry extends Component { : findRanges(email, patterns); this.setState(({ parentNode }) => - parentNode.id !== email.parentNode.id - ? { parentNode: email.parentNode, warnings: newWarnings } + parentNode.id !== email.offsetParent.id + ? { parentNode: email.offsetParent, warnings: newWarnings } : { parentNode, warnings: newWarnings } ); }