@lwc/synthetic-shadow 2.21.0 → 2.23.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -148,7 +148,7 @@ const KEY__SYNTHETIC_MODE = '$$lwc-synthetic-mode';
148
148
  // We use this to detect symbol support in order to avoid the expensive symbol polyfill. Note that
149
149
  // we can't use typeof since it will fail when transpiling.
150
150
  const hasNativeSymbolSupport = /*@__PURE__*/ (() => Symbol('x').toString() === 'Symbol(x)')();
151
- /** version: 2.21.0 */
151
+ /** version: 2.23.0 */
152
152
 
153
153
  /*
154
154
  * Copyright (c) 2018, salesforce.com, inc.
@@ -299,7 +299,7 @@ const elementsFromPoint = hasOwnProperty.call(Document.prototype, 'elementsFromP
299
299
  // defaultView can be null when a document has no browsing context. For example, the owner document
300
300
  // of a node in a template doesn't have a default view: https://jsfiddle.net/hv9z0q5a/
301
301
  const defaultViewGetter = getOwnPropertyDescriptor(Document.prototype, 'defaultView').get;
302
- const { createComment, createTreeWalker, querySelectorAll, getElementById, getElementsByClassName, getElementsByTagName, getElementsByTagNameNS, } = Document.prototype;
302
+ const { createComment, querySelectorAll, getElementById, getElementsByClassName, getElementsByTagName, getElementsByTagNameNS, } = Document.prototype;
303
303
  // In Firefox v57 and lower, getElementsByName is defined on HTMLDocument.prototype
304
304
  // In all other browsers have the method on Document.prototype
305
305
  const { getElementsByName } = HTMLDocument.prototype;
@@ -1124,7 +1124,7 @@ if (!_globalThis.lwcRuntimeFlags) {
1124
1124
  Object.defineProperty(_globalThis, 'lwcRuntimeFlags', { value: create(null) });
1125
1125
  }
1126
1126
  const runtimeFlags = _globalThis.lwcRuntimeFlags;
1127
- /** version: 2.21.0 */
1127
+ /** version: 2.23.0 */
1128
1128
 
1129
1129
  /*
1130
1130
  * Copyright (c) 2018, salesforce.com, inc.
@@ -4953,16 +4953,19 @@ defineProperty(Element.prototype, KEY__SHADOW_TOKEN, {
4953
4953
  },
4954
4954
  configurable: true,
4955
4955
  });
4956
+ function recursivelySetShadowResolver(node, fn) {
4957
+ node[KEY__SHADOW_RESOLVER] = fn;
4958
+ const childNodes = childNodesGetter.call(node);
4959
+ for (let i = 0, n = childNodes.length; i < n; i++) {
4960
+ recursivelySetShadowResolver(childNodes[i], fn);
4961
+ }
4962
+ }
4956
4963
  defineProperty(Element.prototype, KEY__SHADOW_STATIC, {
4957
4964
  set(v) {
4958
4965
  // Marking an element as static will propagate the shadow resolver to the children.
4959
- const fn = this[KEY__SHADOW_RESOLVER];
4960
4966
  if (v) {
4961
- const treeWalker = createTreeWalker.call(getOwnerDocument(this), this, NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_COMMENT | NodeFilter.SHOW_TEXT, () => NodeFilter.FILTER_ACCEPT, false);
4962
- let currentNode;
4963
- while ((currentNode = treeWalker.nextNode())) {
4964
- currentNode[KEY__SHADOW_RESOLVER] = fn;
4965
- }
4967
+ const fn = this[KEY__SHADOW_RESOLVER];
4968
+ recursivelySetShadowResolver(this, fn);
4966
4969
  }
4967
4970
  this[KEY__SHADOW_STATIC_PRIVATE] = v;
4968
4971
  },
@@ -5111,4 +5114,4 @@ if (process.env.NODE_ENV !== 'production' && typeof __karma__ !== 'undefined') {
5111
5114
  }));
5112
5115
  });
5113
5116
  }
5114
- /** version: 2.21.0 */
5117
+ /** version: 2.23.0 */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lwc/synthetic-shadow",
3
- "version": "2.21.0",
3
+ "version": "2.23.0",
4
4
  "description": "Synthetic Shadow Root for LWC",
5
5
  "homepage": "https://lwc.dev/",
6
6
  "repository": {
@@ -37,7 +37,7 @@
37
37
  "access": "public"
38
38
  },
39
39
  "devDependencies": {
40
- "@lwc/features": "2.21.0",
41
- "@lwc/shared": "2.21.0"
40
+ "@lwc/features": "2.23.0",
41
+ "@lwc/shared": "2.23.0"
42
42
  }
43
43
  }