lwc 2.5.8 → 2.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/dist/engine-dom/esm/es2017/engine-dom.js +161 -129
  2. package/dist/engine-dom/iife/es2017/engine-dom.js +161 -129
  3. package/dist/engine-dom/iife/es2017/engine-dom.min.js +2 -2
  4. package/dist/engine-dom/iife/es2017/engine-dom_debug.js +144 -125
  5. package/dist/engine-dom/iife/es5/engine-dom.js +174 -138
  6. package/dist/engine-dom/iife/es5/engine-dom.min.js +2 -2
  7. package/dist/engine-dom/iife/es5/engine-dom_debug.js +159 -136
  8. package/dist/engine-dom/umd/es2017/engine-dom.js +161 -129
  9. package/dist/engine-dom/umd/es2017/engine-dom.min.js +2 -2
  10. package/dist/engine-dom/umd/es2017/engine-dom_debug.js +144 -125
  11. package/dist/engine-dom/umd/es5/engine-dom.js +174 -138
  12. package/dist/engine-dom/umd/es5/engine-dom.min.js +2 -2
  13. package/dist/engine-dom/umd/es5/engine-dom_debug.js +159 -136
  14. package/dist/engine-server/commonjs/es2017/engine-server.js +161 -129
  15. package/dist/engine-server/commonjs/es2017/engine-server.min.js +2 -2
  16. package/dist/engine-server/esm/es2017/engine-server.js +161 -129
  17. package/dist/synthetic-shadow/esm/es2017/synthetic-shadow.js +23 -130
  18. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow.js +23 -130
  19. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow.min.js +2 -2
  20. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow_debug.js +23 -130
  21. package/dist/synthetic-shadow/iife/es5/synthetic-shadow.js +23 -124
  22. package/dist/synthetic-shadow/iife/es5/synthetic-shadow.min.js +2 -2
  23. package/dist/synthetic-shadow/iife/es5/synthetic-shadow_debug.js +23 -124
  24. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow.js +23 -130
  25. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow.min.js +2 -2
  26. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow_debug.js +23 -130
  27. package/dist/synthetic-shadow/umd/es5/synthetic-shadow.js +23 -124
  28. package/dist/synthetic-shadow/umd/es5/synthetic-shadow.min.js +2 -2
  29. package/dist/synthetic-shadow/umd/es5/synthetic-shadow_debug.js +23 -124
  30. package/dist/wire-service/esm/es2017/wire-service.js +2 -2
  31. package/dist/wire-service/iife/es2017/wire-service.js +2 -2
  32. package/dist/wire-service/iife/es2017/wire-service_debug.js +2 -2
  33. package/dist/wire-service/iife/es5/wire-service.js +2 -2
  34. package/dist/wire-service/iife/es5/wire-service_debug.js +2 -2
  35. package/dist/wire-service/umd/es2017/wire-service.js +2 -2
  36. package/dist/wire-service/umd/es2017/wire-service_debug.js +2 -2
  37. package/dist/wire-service/umd/es5/wire-service.js +2 -2
  38. package/dist/wire-service/umd/es5/wire-service_debug.js +2 -2
  39. package/package.json +8 -8
@@ -15,7 +15,7 @@ var LWC = (function (exports) {
15
15
 
16
16
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
17
17
 
18
- function _get2(target, property, receiver) { if (typeof Reflect !== "undefined" && Reflect.get) { _get2 = Reflect.get; } else { _get2 = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(receiver); } return desc.value; }; } return _get2(target, property, receiver || target); }
18
+ function _get2() { if (typeof Reflect !== "undefined" && Reflect.get) { _get2 = Reflect.get; } else { _get2 = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get2.apply(this, arguments); }
19
19
 
20
20
  function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf2(object); if (object === null) break; } return object; }
21
21
 
@@ -120,7 +120,7 @@ var LWC = (function (exports) {
120
120
  var _Array$prototype = Array.prototype,
121
121
  ArrayIndexOf = _Array$prototype.indexOf,
122
122
  ArrayJoin = _Array$prototype.join,
123
- ArrayMap$1 = _Array$prototype.map,
123
+ ArrayMap = _Array$prototype.map,
124
124
  ArrayPush$1 = _Array$prototype.push,
125
125
  ArraySlice = _Array$prototype.slice,
126
126
  ArraySplice = _Array$prototype.splice,
@@ -177,7 +177,7 @@ var LWC = (function (exports) {
177
177
  // Array.prototype.toString directly will cause an error Iterate through
178
178
  // all the items and handle individually.
179
179
  if (isArray$1(obj)) {
180
- return ArrayJoin.call(ArrayMap$1.call(obj, toString$1), ',');
180
+ return ArrayJoin.call(ArrayMap.call(obj, toString$1), ',');
181
181
  }
182
182
 
183
183
  return obj.toString();
@@ -341,7 +341,7 @@ var LWC = (function (exports) {
341
341
  CACHED_PROPERTY_ATTRIBUTE_MAPPING.set(propName, attributeName);
342
342
  return attributeName;
343
343
  }
344
- /** version: 2.5.8 */
344
+ /** version: 2.6.1 */
345
345
 
346
346
  /*
347
347
  * Copyright (c) 2018, salesforce.com, inc.
@@ -453,7 +453,6 @@ var LWC = (function (exports) {
453
453
  ENABLE_NODE_LIST_PATCH: null,
454
454
  ENABLE_HTML_COLLECTIONS_PATCH: null,
455
455
  ENABLE_NODE_PATCH: null,
456
- ENABLE_NON_COMPOSED_EVENTS_LEAKAGE: null,
457
456
  ENABLE_MIXED_SHADOW_MODE: null,
458
457
  ENABLE_WIRE_SYNC_EMIT: null
459
458
  };
@@ -513,7 +512,7 @@ var LWC = (function (exports) {
513
512
 
514
513
  function setFeatureFlagForTest(name, value) {
515
514
  }
516
- /** version: 2.5.8 */
515
+ /** version: 2.6.1 */
517
516
 
518
517
  /* proxy-compat-disable */
519
518
 
@@ -1494,7 +1493,8 @@ var LWC = (function (exports) {
1494
1493
  */
1495
1494
 
1496
1495
  var isArray = Array.isArray;
1497
- var _getPrototypeOf = Object.getPrototypeOf,
1496
+ var ObjectDotPrototype = Object.prototype,
1497
+ _getPrototypeOf = Object.getPrototypeOf,
1498
1498
  ObjectCreate = Object.create,
1499
1499
  ObjectDefineProperty = Object.defineProperty,
1500
1500
  _isExtensible = Object.isExtensible,
@@ -1561,7 +1561,10 @@ var LWC = (function (exports) {
1561
1561
  // but it will always be compatible with the previous descriptor
1562
1562
  // to preserve the object invariants, which makes these lines safe.
1563
1563
 
1564
- var originalDescriptor = _getOwnPropertyDescriptor(originalTarget, key);
1564
+ var originalDescriptor = _getOwnPropertyDescriptor(originalTarget, key); // TODO: it should be impossible for the originalDescriptor to ever be undefined, this `if` can be removed
1565
+
1566
+ /* istanbul ignore else */
1567
+
1565
1568
 
1566
1569
  if (!isUndefined(originalDescriptor)) {
1567
1570
  var wrappedDesc = this.wrapDescriptor(originalDescriptor);
@@ -1586,12 +1589,18 @@ var LWC = (function (exports) {
1586
1589
 
1587
1590
  _preventExtensions(shadowTarget);
1588
1591
  } // Shared Traps
1592
+ // TODO: apply() is never called
1593
+
1594
+ /* istanbul ignore next */
1589
1595
 
1590
1596
  }, {
1591
1597
  key: "apply",
1592
1598
  value: function apply(shadowTarget, thisArg, argArray) {
1593
1599
  /* No op */
1594
- }
1600
+ } // TODO: construct() is never called
1601
+
1602
+ /* istanbul ignore next */
1603
+
1595
1604
  }, {
1596
1605
  key: "construct",
1597
1606
  value: function construct(shadowTarget, argArray, newTarget) {
@@ -1696,8 +1705,8 @@ var LWC = (function (exports) {
1696
1705
  return BaseProxyHandler;
1697
1706
  }();
1698
1707
 
1699
- var getterMap = new WeakMap();
1700
- var setterMap = new WeakMap();
1708
+ var getterMap$1 = new WeakMap();
1709
+ var setterMap$1 = new WeakMap();
1701
1710
  var reverseGetterMap = new WeakMap();
1702
1711
  var reverseSetterMap = new WeakMap();
1703
1712
 
@@ -1720,7 +1729,7 @@ var LWC = (function (exports) {
1720
1729
  }, {
1721
1730
  key: "wrapGetter",
1722
1731
  value: function wrapGetter(originalGet) {
1723
- var wrappedGetter = getterMap.get(originalGet);
1732
+ var wrappedGetter = getterMap$1.get(originalGet);
1724
1733
 
1725
1734
  if (!isUndefined(wrappedGetter)) {
1726
1735
  return wrappedGetter;
@@ -1733,14 +1742,14 @@ var LWC = (function (exports) {
1733
1742
  return handler.wrapValue(originalGet.call(unwrap$1(this)));
1734
1743
  };
1735
1744
 
1736
- getterMap.set(originalGet, get);
1745
+ getterMap$1.set(originalGet, get);
1737
1746
  reverseGetterMap.set(get, originalGet);
1738
1747
  return get;
1739
1748
  }
1740
1749
  }, {
1741
1750
  key: "wrapSetter",
1742
1751
  value: function wrapSetter(originalSet) {
1743
- var wrappedSetter = setterMap.get(originalSet);
1752
+ var wrappedSetter = setterMap$1.get(originalSet);
1744
1753
 
1745
1754
  if (!isUndefined(wrappedSetter)) {
1746
1755
  return wrappedSetter;
@@ -1751,7 +1760,7 @@ var LWC = (function (exports) {
1751
1760
  originalSet.call(unwrap$1(this), unwrap$1(v));
1752
1761
  };
1753
1762
 
1754
- setterMap.set(originalSet, set);
1763
+ setterMap$1.set(originalSet, set);
1755
1764
  reverseSetterMap.set(set, originalSet);
1756
1765
  return set;
1757
1766
  }
@@ -1792,7 +1801,7 @@ var LWC = (function (exports) {
1792
1801
  return unwrap$1(redGet.call(handler.wrapValue(this)));
1793
1802
  };
1794
1803
 
1795
- getterMap.set(get, redGet);
1804
+ getterMap$1.set(get, redGet);
1796
1805
  reverseGetterMap.set(redGet, get);
1797
1806
  return get;
1798
1807
  }
@@ -1812,7 +1821,7 @@ var LWC = (function (exports) {
1812
1821
  redSet.call(handler.wrapValue(this), handler.wrapValue(v));
1813
1822
  };
1814
1823
 
1815
- setterMap.set(set, redSet);
1824
+ setterMap$1.set(set, redSet);
1816
1825
  reverseSetterMap.set(redSet, set);
1817
1826
  return set;
1818
1827
  }
@@ -1858,6 +1867,11 @@ var LWC = (function (exports) {
1858
1867
  _preventExtensions(originalTarget); // if the originalTarget is a proxy itself, it might reject
1859
1868
  // the preventExtension call, in which case we should not attempt to lock down
1860
1869
  // the shadow target.
1870
+ // TODO: It should not actually be possible to reach this `if` statement.
1871
+ // If a proxy rejects extensions, then calling preventExtensions will throw an error:
1872
+ // https://codepen.io/nolanlawson-the-selector/pen/QWMOjbY
1873
+
1874
+ /* istanbul ignore if */
1861
1875
 
1862
1876
 
1863
1877
  if (_isExtensible(originalTarget)) {
@@ -1900,8 +1914,8 @@ var LWC = (function (exports) {
1900
1914
  return ReactiveProxyHandler;
1901
1915
  }(BaseProxyHandler);
1902
1916
 
1903
- var getterMap$1 = new WeakMap();
1904
- var setterMap$1 = new WeakMap();
1917
+ var getterMap = new WeakMap();
1918
+ var setterMap = new WeakMap();
1905
1919
 
1906
1920
  var ReadOnlyHandler = /*#__PURE__*/function (_BaseProxyHandler2) {
1907
1921
  _inherits(ReadOnlyHandler, _BaseProxyHandler2);
@@ -1922,7 +1936,7 @@ var LWC = (function (exports) {
1922
1936
  }, {
1923
1937
  key: "wrapGetter",
1924
1938
  value: function wrapGetter(originalGet) {
1925
- var wrappedGetter = getterMap$1.get(originalGet);
1939
+ var wrappedGetter = getterMap.get(originalGet);
1926
1940
 
1927
1941
  if (!isUndefined(wrappedGetter)) {
1928
1942
  return wrappedGetter;
@@ -1935,13 +1949,13 @@ var LWC = (function (exports) {
1935
1949
  return handler.wrapValue(originalGet.call(unwrap$1(this)));
1936
1950
  };
1937
1951
 
1938
- getterMap$1.set(originalGet, get);
1952
+ getterMap.set(originalGet, get);
1939
1953
  return get;
1940
1954
  }
1941
1955
  }, {
1942
1956
  key: "wrapSetter",
1943
1957
  value: function wrapSetter(originalSet) {
1944
- var wrappedSetter = setterMap$1.get(originalSet);
1958
+ var wrappedSetter = setterMap.get(originalSet);
1945
1959
 
1946
1960
  if (!isUndefined(wrappedSetter)) {
1947
1961
  return wrappedSetter;
@@ -1950,18 +1964,22 @@ var LWC = (function (exports) {
1950
1964
  var set = function set(v) {
1951
1965
  };
1952
1966
 
1953
- setterMap$1.set(originalSet, set);
1967
+ setterMap.set(originalSet, set);
1954
1968
  return set;
1955
1969
  }
1956
1970
  }, {
1957
1971
  key: "set",
1958
1972
  value: function set(shadowTarget, key, value) {
1973
+ /* istanbul ignore next */
1974
+
1959
1975
 
1960
1976
  return false;
1961
1977
  }
1962
1978
  }, {
1963
1979
  key: "deleteProperty",
1964
1980
  value: function deleteProperty(shadowTarget, key) {
1981
+ /* istanbul ignore next */
1982
+
1965
1983
 
1966
1984
  return false;
1967
1985
  }
@@ -1972,12 +1990,16 @@ var LWC = (function (exports) {
1972
1990
  }, {
1973
1991
  key: "preventExtensions",
1974
1992
  value: function preventExtensions(shadowTarget) {
1993
+ /* istanbul ignore next */
1994
+
1975
1995
 
1976
1996
  return false;
1977
1997
  }
1978
1998
  }, {
1979
1999
  key: "defineProperty",
1980
2000
  value: function defineProperty(shadowTarget, key, descriptor) {
2001
+ /* istanbul ignore next */
2002
+
1981
2003
 
1982
2004
  return false;
1983
2005
  }
@@ -1986,8 +2008,6 @@ var LWC = (function (exports) {
1986
2008
  return ReadOnlyHandler;
1987
2009
  }(BaseProxyHandler);
1988
2010
 
1989
- var ObjectDotPrototype = Object.prototype;
1990
-
1991
2011
  function defaultValueIsObservable(value) {
1992
2012
  // intentionally checking for null
1993
2013
  if (value === null) {
@@ -2016,64 +2036,54 @@ var LWC = (function (exports) {
2016
2036
  /* do nothing */
2017
2037
  };
2018
2038
 
2019
- var defaultValueDistortion = function defaultValueDistortion(value) {
2020
- return value;
2021
- };
2022
-
2023
2039
  function createShadowTarget(value) {
2024
2040
  return isArray(value) ? [] : {};
2025
2041
  }
2026
2042
 
2027
- var ReactiveMembrane = /*#__PURE__*/function () {
2028
- function ReactiveMembrane(options) {
2029
- _classCallCheck(this, ReactiveMembrane);
2030
-
2031
- this.valueDistortion = defaultValueDistortion;
2032
- this.valueMutated = defaultValueMutated;
2033
- this.valueObserved = defaultValueObserved;
2034
- this.valueIsObservable = defaultValueIsObservable;
2035
- this.objectGraph = new WeakMap();
2036
-
2037
- if (!isUndefined(options)) {
2038
- var _valueDistortion = options.valueDistortion,
2039
- _valueMutated = options.valueMutated,
2040
- _valueObserved = options.valueObserved,
2041
- valueIsObservable = options.valueIsObservable,
2042
- tagPropertyKey = options.tagPropertyKey;
2043
- this.valueDistortion = isFunction(_valueDistortion) ? _valueDistortion : defaultValueDistortion;
2044
- this.valueMutated = isFunction(_valueMutated) ? _valueMutated : defaultValueMutated;
2045
- this.valueObserved = isFunction(_valueObserved) ? _valueObserved : defaultValueObserved;
2046
- this.valueIsObservable = isFunction(valueIsObservable) ? valueIsObservable : defaultValueIsObservable;
2047
- this.tagPropertyKey = tagPropertyKey;
2048
- }
2043
+ var ObservableMembrane = /*#__PURE__*/function () {
2044
+ function ObservableMembrane() {
2045
+ var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
2046
+
2047
+ _classCallCheck(this, ObservableMembrane);
2048
+
2049
+ this.readOnlyObjectGraph = new WeakMap();
2050
+ this.reactiveObjectGraph = new WeakMap();
2051
+ var valueMutated = options.valueMutated,
2052
+ valueObserved = options.valueObserved,
2053
+ valueIsObservable = options.valueIsObservable,
2054
+ tagPropertyKey = options.tagPropertyKey;
2055
+ this.valueMutated = isFunction(valueMutated) ? valueMutated : defaultValueMutated;
2056
+ this.valueObserved = isFunction(valueObserved) ? valueObserved : defaultValueObserved;
2057
+ this.valueIsObservable = isFunction(valueIsObservable) ? valueIsObservable : defaultValueIsObservable;
2058
+ this.tagPropertyKey = tagPropertyKey;
2049
2059
  }
2050
2060
 
2051
- _createClass(ReactiveMembrane, [{
2061
+ _createClass(ObservableMembrane, [{
2052
2062
  key: "getProxy",
2053
2063
  value: function getProxy(value) {
2054
2064
  var unwrappedValue = unwrap$1(value);
2055
- var distorted = this.valueDistortion(unwrappedValue);
2056
2065
 
2057
- if (this.valueIsObservable(distorted)) {
2058
- var o = this.getReactiveState(unwrappedValue, distorted); // when trying to extract the writable version of a readonly
2059
- // we return the readonly.
2066
+ if (this.valueIsObservable(unwrappedValue)) {
2067
+ // When trying to extract the writable version of a readonly we return the readonly.
2068
+ if (this.readOnlyObjectGraph.get(unwrappedValue) === value) {
2069
+ return value;
2070
+ }
2060
2071
 
2061
- return o.readOnly === value ? value : o.reactive;
2072
+ return this.getReactiveHandler(unwrappedValue);
2062
2073
  }
2063
2074
 
2064
- return distorted;
2075
+ return unwrappedValue;
2065
2076
  }
2066
2077
  }, {
2067
2078
  key: "getReadOnlyProxy",
2068
2079
  value: function getReadOnlyProxy(value) {
2069
2080
  value = unwrap$1(value);
2070
- var distorted = this.valueDistortion(value);
2071
2081
 
2072
- if (this.valueIsObservable(distorted)) {
2073
- return this.getReactiveState(value, distorted).readOnly;
2082
+ if (this.valueIsObservable(value)) {
2083
+ return this.getReadOnlyHandler(value);
2074
2084
  }
2075
2085
 
2076
- return distorted;
2086
+ return value;
2077
2087
  }
2078
2088
  }, {
2079
2089
  key: "unwrapProxy",
@@ -2081,48 +2091,40 @@ var LWC = (function (exports) {
2081
2091
  return unwrap$1(p);
2082
2092
  }
2083
2093
  }, {
2084
- key: "getReactiveState",
2085
- value: function getReactiveState(value, distortedValue) {
2086
- var objectGraph = this.objectGraph;
2087
- var reactiveState = objectGraph.get(distortedValue);
2088
-
2089
- if (reactiveState) {
2090
- return reactiveState;
2094
+ key: "getReactiveHandler",
2095
+ value: function getReactiveHandler(value) {
2096
+ var proxy = this.reactiveObjectGraph.get(value);
2097
+
2098
+ if (isUndefined(proxy)) {
2099
+ // caching the proxy after the first time it is accessed
2100
+ var handler = new ReactiveProxyHandler(this, value);
2101
+ proxy = new Proxy(createShadowTarget(value), handler);
2102
+ registerProxy(proxy, value);
2103
+ this.reactiveObjectGraph.set(value, proxy);
2091
2104
  }
2092
2105
 
2093
- var membrane = this;
2094
- reactiveState = {
2095
- get reactive() {
2096
- var reactiveHandler = new ReactiveProxyHandler(membrane, distortedValue); // caching the reactive proxy after the first time it is accessed
2097
-
2098
- var proxy = new Proxy(createShadowTarget(distortedValue), reactiveHandler);
2099
- registerProxy(proxy, value);
2100
- ObjectDefineProperty(this, 'reactive', {
2101
- value: proxy
2102
- });
2103
- return proxy;
2104
- },
2105
-
2106
- get readOnly() {
2107
- var readOnlyHandler = new ReadOnlyHandler(membrane, distortedValue); // caching the readOnly proxy after the first time it is accessed
2108
-
2109
- var proxy = new Proxy(createShadowTarget(distortedValue), readOnlyHandler);
2110
- registerProxy(proxy, value);
2111
- ObjectDefineProperty(this, 'readOnly', {
2112
- value: proxy
2113
- });
2114
- return proxy;
2115
- }
2106
+ return proxy;
2107
+ }
2108
+ }, {
2109
+ key: "getReadOnlyHandler",
2110
+ value: function getReadOnlyHandler(value) {
2111
+ var proxy = this.readOnlyObjectGraph.get(value);
2112
+
2113
+ if (isUndefined(proxy)) {
2114
+ // caching the proxy after the first time it is accessed
2115
+ var handler = new ReadOnlyHandler(this, value);
2116
+ proxy = new Proxy(createShadowTarget(value), handler);
2117
+ registerProxy(proxy, value);
2118
+ this.readOnlyObjectGraph.set(value, proxy);
2119
+ }
2116
2120
 
2117
- };
2118
- objectGraph.set(distortedValue, reactiveState);
2119
- return reactiveState;
2121
+ return proxy;
2120
2122
  }
2121
2123
  }]);
2122
2124
 
2123
- return ReactiveMembrane;
2125
+ return ObservableMembrane;
2124
2126
  }();
2125
- /** version: 1.0.0 */
2127
+ /** version: 2.0.0 */
2126
2128
 
2127
2129
  /*
2128
2130
  * Copyright (c) 2018, salesforce.com, inc.
@@ -2133,15 +2135,9 @@ var LWC = (function (exports) {
2133
2135
 
2134
2136
 
2135
2137
  var lockerLivePropertyKey = Symbol.for('@@lockerLiveValue');
2136
-
2137
- function valueDistortion(value) {
2138
- return value;
2139
- }
2140
-
2141
- var reactiveMembrane = new ReactiveMembrane({
2138
+ var reactiveMembrane = new ObservableMembrane({
2142
2139
  valueObserved: valueObserved,
2143
2140
  valueMutated: valueMutated,
2144
- valueDistortion: valueDistortion,
2145
2141
  tagPropertyKey: lockerLivePropertyKey
2146
2142
  });
2147
2143
  /**
@@ -2150,16 +2146,9 @@ var LWC = (function (exports) {
2150
2146
  * change or being removed.
2151
2147
  */
2152
2148
 
2153
- var unwrap = function unwrap(value) {
2154
- var unwrapped = reactiveMembrane.unwrapProxy(value);
2155
-
2156
- if (unwrapped !== value) {
2157
- // if value is a proxy, unwrap to access original value and apply distortion
2158
- return valueDistortion(unwrapped);
2159
- }
2160
-
2161
- return value;
2162
- };
2149
+ function unwrap(value) {
2150
+ return reactiveMembrane.unwrapProxy(value);
2151
+ }
2163
2152
  /*
2164
2153
  * Copyright (c) 2018, salesforce.com, inc.
2165
2154
  * All rights reserved.
@@ -4084,7 +4073,7 @@ var LWC = (function (exports) {
4084
4073
 
4085
4074
 
4086
4075
  function d(value) {
4087
- return value == null ? '' : value;
4076
+ return value == null ? '' : String(value);
4088
4077
  } // [b]ind function
4089
4078
 
4090
4079
 
@@ -4344,6 +4333,7 @@ var LWC = (function (exports) {
4344
4333
 
4345
4334
  function evaluateStylesheetsContent(stylesheets, stylesheetToken, vm) {
4346
4335
  var content = [];
4336
+ var root;
4347
4337
 
4348
4338
  for (var _i16 = 0; _i16 < stylesheets.length; _i16++) {
4349
4339
  var stylesheet = stylesheets[_i16];
@@ -4351,22 +4341,45 @@ var LWC = (function (exports) {
4351
4341
  if (isArray$1(stylesheet)) {
4352
4342
  ArrayPush$1.apply(content, evaluateStylesheetsContent(stylesheet, stylesheetToken, vm));
4353
4343
  } else {
4354
- // native shadow DOM. Synthetic shadow DOM never uses `:host`.
4355
4344
 
4345
+ var isScopedCss = stylesheet[KEY__SCOPED_CSS]; // Apply the scope token only if the stylesheet itself is scoped, or if we're rendering synthetic shadow.
4346
+
4347
+ var scopeToken = isScopedCss || vm.shadowMode === 1
4348
+ /* Synthetic */
4349
+ && vm.renderMode === 1
4350
+ /* Shadow */
4351
+ ? stylesheetToken : undefined; // Use the actual `:host` selector if we're rendering global CSS for light DOM, or if we're rendering
4352
+ // native shadow DOM. Synthetic shadow DOM never uses `:host`.
4356
4353
 
4357
- var isScopedCss = stylesheet[KEY__SCOPED_CSS];
4358
4354
  var useActualHostSelector = vm.renderMode === 0
4359
4355
  /* Light */
4360
4356
  ? !isScopedCss : vm.shadowMode === 0
4361
4357
  /* Native */
4362
- ; // Apply the scope token only if the stylesheet itself is scoped, or if we're rendering synthetic shadow.
4358
+ ; // Use the native :dir() pseudoclass only in native shadow DOM. Otherwise, in synthetic shadow,
4359
+ // we use an attribute selector on the host to simulate :dir().
4363
4360
 
4364
- var scopeToken = isScopedCss || vm.shadowMode === 1
4365
- /* Synthetic */
4366
- && vm.renderMode === 1
4361
+ var useNativeDirPseudoclass = void 0;
4362
+
4363
+ if (vm.renderMode === 1
4367
4364
  /* Shadow */
4368
- ? stylesheetToken : undefined;
4369
- ArrayPush$1.call(content, stylesheet(useActualHostSelector, scopeToken));
4365
+ ) {
4366
+ useNativeDirPseudoclass = vm.shadowMode === 0
4367
+ /* Native */
4368
+ ;
4369
+ } else {
4370
+ // Light DOM components should only render `[dir]` if they're inside of a synthetic shadow root.
4371
+ // At the top level (root is null) or inside of a native shadow root, they should use `:dir()`.
4372
+ if (isUndefined$1(root)) {
4373
+ // Only calculate the root once as necessary
4374
+ root = getNearestShadowComponent(vm);
4375
+ }
4376
+
4377
+ useNativeDirPseudoclass = isNull(root) || root.shadowMode === 0
4378
+ /* Native */
4379
+ ;
4380
+ }
4381
+
4382
+ ArrayPush$1.call(content, stylesheet(scopeToken, useActualHostSelector, useNativeDirPseudoclass));
4370
4383
  }
4371
4384
  }
4372
4385
 
@@ -4388,14 +4401,12 @@ var LWC = (function (exports) {
4388
4401
  // https://github.com/salesforce/lwc/pull/2460#discussion_r691208892
4389
4402
 
4390
4403
 
4391
- function getNearestNativeShadowComponent(vm) {
4404
+ function getNearestShadowComponent(vm) {
4392
4405
  var owner = vm;
4393
4406
 
4394
4407
  while (!isNull(owner)) {
4395
4408
  if (owner.renderMode === 1
4396
4409
  /* Shadow */
4397
- && owner.shadowMode === 0
4398
- /* Native */
4399
4410
  ) {
4400
4411
  return owner;
4401
4412
  }
@@ -4406,6 +4417,20 @@ var LWC = (function (exports) {
4406
4417
  return owner;
4407
4418
  }
4408
4419
 
4420
+ function getNearestNativeShadowComponent(vm) {
4421
+ var owner = getNearestShadowComponent(vm);
4422
+
4423
+ if (!isNull(owner) && owner.shadowMode === 1
4424
+ /* Synthetic */
4425
+ ) {
4426
+ // Synthetic-within-native is impossible. So if the nearest shadow component is
4427
+ // synthetic, we know we won't find a native component if we go any further.
4428
+ return null;
4429
+ }
4430
+
4431
+ return owner;
4432
+ }
4433
+
4409
4434
  function createStylesheet(vm, stylesheets) {
4410
4435
  var renderer = vm.renderer,
4411
4436
  renderMode = vm.renderMode,
@@ -4419,7 +4444,7 @@ var LWC = (function (exports) {
4419
4444
  for (var _i17 = 0; _i17 < stylesheets.length; _i17++) {
4420
4445
  renderer.insertGlobalStylesheet(stylesheets[_i17]);
4421
4446
  }
4422
- } else if (renderer.ssr || renderer.isHydrating) {
4447
+ } else if (renderer.ssr || renderer.isHydrating()) {
4423
4448
  // Note: We need to ensure that during hydration, the stylesheets method is the same as those in ssr.
4424
4449
  // This works in the client, because the stylesheets are created, and cached in the VM
4425
4450
  // the first time the VM renders.
@@ -5873,7 +5898,7 @@ var LWC = (function (exports) {
5873
5898
  hooksAreSet = true;
5874
5899
  setSanitizeHtmlContentHook(hooks.sanitizeHtmlContent);
5875
5900
  }
5876
- /* version: 2.5.8 */
5901
+ /* version: 2.6.1 */
5877
5902
 
5878
5903
  /*
5879
5904
  * Copyright (c) 2018, salesforce.com, inc.
@@ -6018,19 +6043,17 @@ var LWC = (function (exports) {
6018
6043
  HTMLElementConstructor.prototype = HTMLElement.prototype;
6019
6044
  }
6020
6045
 
6021
- var isHydrating = false;
6046
+ var _isHydrating = false;
6022
6047
 
6023
6048
  function setIsHydrating(v) {
6024
- isHydrating = v;
6049
+ _isHydrating = v;
6025
6050
  }
6026
6051
 
6027
6052
  var renderer = {
6028
6053
  ssr: false,
6029
-
6030
- get isHydrating() {
6031
- return isHydrating;
6054
+ isHydrating: function isHydrating() {
6055
+ return _isHydrating;
6032
6056
  },
6033
-
6034
6057
  isNativeShadowDefined: _globalThis[KEY__IS_NATIVE_SHADOW_ROOT_DEFINED],
6035
6058
  isSyntheticShadowDefined: hasOwnProperty$1.call(Element.prototype, KEY__SHADOW_TOKEN),
6036
6059
  createElement: function createElement(tagName, namespace) {
@@ -6052,7 +6075,7 @@ var LWC = (function (exports) {
6052
6075
  return node.nextSibling;
6053
6076
  },
6054
6077
  attachShadow: function attachShadow(element, options) {
6055
- if (isHydrating) {
6078
+ if (_isHydrating) {
6056
6079
  return element.shadowRoot;
6057
6080
  }
6058
6081
 
@@ -6505,7 +6528,7 @@ var LWC = (function (exports) {
6505
6528
  });
6506
6529
  freeze(LightningElement);
6507
6530
  seal(LightningElement.prototype);
6508
- /* version: 2.5.8 */
6531
+ /* version: 2.6.1 */
6509
6532
 
6510
6533
  exports.LightningElement = LightningElement;
6511
6534
  exports.__unstable__ProfilerControl = profilerControl;