diff options
author | Joel Kronqvist <joel.h.kronqvist@gmail.com> | 2022-03-05 19:02:27 +0200 |
---|---|---|
committer | Joel Kronqvist <joel.h.kronqvist@gmail.com> | 2022-03-05 19:02:27 +0200 |
commit | 5d309ff52cd399a6b71968a6b9a70c8ac0b98981 (patch) | |
tree | 360f7eb50f956e2367ef38fa1fc6ac7ac5258042 /node_modules/jsdom/lib/jsdom/living/nodes/DocumentOrShadowRoot-impl.js | |
parent | b500a50f1b97d93c98b36ed9a980f8188d648147 (diff) | |
download | LYLLRuoka-5d309ff52cd399a6b71968a6b9a70c8ac0b98981.tar.gz LYLLRuoka-5d309ff52cd399a6b71968a6b9a70c8ac0b98981.zip |
Added node_modules for the updating to work properly.
Diffstat (limited to 'node_modules/jsdom/lib/jsdom/living/nodes/DocumentOrShadowRoot-impl.js')
-rw-r--r-- | node_modules/jsdom/lib/jsdom/living/nodes/DocumentOrShadowRoot-impl.js | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/node_modules/jsdom/lib/jsdom/living/nodes/DocumentOrShadowRoot-impl.js b/node_modules/jsdom/lib/jsdom/living/nodes/DocumentOrShadowRoot-impl.js new file mode 100644 index 0000000..4f85495 --- /dev/null +++ b/node_modules/jsdom/lib/jsdom/living/nodes/DocumentOrShadowRoot-impl.js @@ -0,0 +1,28 @@ +"use strict"; +const NODE_TYPE = require("../node-type"); +const { nodeRoot } = require("../helpers/node"); +const { retarget } = require("../helpers/shadow-dom"); + +class DocumentOrShadowRootImpl { + get activeElement() { + let candidate = this._ownerDocument._lastFocusedElement || this._ownerDocument.body; + if (!candidate) { + return null; + } + candidate = retarget(candidate, this); + if (nodeRoot(candidate) !== this) { + return null; + } + if (candidate.nodeType !== NODE_TYPE.DOCUMENT_NODE) { + return candidate; + } + if (candidate.body !== null) { + return candidate.body; + } + return candidate.documentElement; + } +} + +module.exports = { + implementation: DocumentOrShadowRootImpl +}; |