lwc 2.5.9 → 2.5.10-alpha1

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 (54) hide show
  1. package/dist/engine/esm/es2017/engine.js +7981 -0
  2. package/dist/engine/iife/es2017/engine.js +8013 -0
  3. package/dist/engine/iife/es2017/engine.min.js +9 -0
  4. package/dist/engine/iife/es2017/engine_debug.js +6541 -0
  5. package/dist/engine/iife/es5/engine.js +6060 -0
  6. package/dist/engine/iife/es5/engine.min.js +23 -0
  7. package/dist/engine/iife/es5/engine_debug.js +4856 -0
  8. package/dist/engine/umd/es2017/engine.js +8014 -0
  9. package/dist/engine/umd/es2017/engine.min.js +9 -0
  10. package/dist/engine/umd/es2017/engine_debug.js +6542 -0
  11. package/dist/engine/umd/es5/engine.js +6061 -0
  12. package/dist/engine/umd/es5/engine.min.js +23 -0
  13. package/dist/engine/umd/es5/engine_debug.js +4857 -0
  14. package/dist/engine-dom/esm/es2017/engine-dom.js +75 -136
  15. package/dist/engine-dom/iife/es2017/engine-dom.js +76 -137
  16. package/dist/engine-dom/iife/es2017/engine-dom.min.js +2 -2
  17. package/dist/engine-dom/iife/es2017/engine-dom_debug.js +74 -122
  18. package/dist/engine-dom/iife/es5/engine-dom.js +75 -142
  19. package/dist/engine-dom/iife/es5/engine-dom.min.js +2 -2
  20. package/dist/engine-dom/iife/es5/engine-dom_debug.js +73 -127
  21. package/dist/engine-dom/umd/es2017/engine-dom.js +77 -138
  22. package/dist/engine-dom/umd/es2017/engine-dom.min.js +2 -2
  23. package/dist/engine-dom/umd/es2017/engine-dom_debug.js +75 -123
  24. package/dist/engine-dom/umd/es5/engine-dom.js +76 -143
  25. package/dist/engine-dom/umd/es5/engine-dom.min.js +2 -2
  26. package/dist/engine-dom/umd/es5/engine-dom_debug.js +74 -128
  27. package/dist/engine-server/commonjs/es2017/engine-server.js +75 -136
  28. package/dist/engine-server/commonjs/es2017/engine-server.min.js +2 -2
  29. package/dist/engine-server/esm/es2017/engine-server.js +75 -136
  30. package/dist/synthetic-shadow/esm/es2017/synthetic-shadow.js +3 -3
  31. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow.js +4 -4
  32. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow.min.js +2 -2
  33. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow_debug.js +4 -4
  34. package/dist/synthetic-shadow/iife/es5/synthetic-shadow.js +4 -4
  35. package/dist/synthetic-shadow/iife/es5/synthetic-shadow.min.js +2 -2
  36. package/dist/synthetic-shadow/iife/es5/synthetic-shadow_debug.js +4 -4
  37. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow.js +5 -5
  38. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow.min.js +2 -2
  39. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow_debug.js +5 -5
  40. package/dist/synthetic-shadow/umd/es5/synthetic-shadow.js +5 -5
  41. package/dist/synthetic-shadow/umd/es5/synthetic-shadow.min.js +2 -2
  42. package/dist/synthetic-shadow/umd/es5/synthetic-shadow_debug.js +5 -5
  43. package/dist/wire-service/esm/es2017/wire-service.js +2 -2
  44. package/dist/wire-service/iife/es2017/wire-service.js +3 -3
  45. package/dist/wire-service/iife/es2017/wire-service_debug.js +3 -3
  46. package/dist/wire-service/iife/es5/wire-service.js +3 -3
  47. package/dist/wire-service/iife/es5/wire-service.min.js +1 -1
  48. package/dist/wire-service/iife/es5/wire-service_debug.js +3 -3
  49. package/dist/wire-service/umd/es2017/wire-service.js +4 -4
  50. package/dist/wire-service/umd/es2017/wire-service_debug.js +4 -4
  51. package/dist/wire-service/umd/es5/wire-service.js +4 -4
  52. package/dist/wire-service/umd/es5/wire-service.min.js +1 -1
  53. package/dist/wire-service/umd/es5/wire-service_debug.js +4 -4
  54. package/package.json +8 -8
@@ -69,7 +69,7 @@ const {
69
69
  find: ArrayFind,
70
70
  indexOf: ArrayIndexOf,
71
71
  join: ArrayJoin,
72
- map: ArrayMap,
72
+ map: ArrayMap$1,
73
73
  push: ArrayPush$1,
74
74
  reduce: ArrayReduce,
75
75
  reverse: ArrayReverse,
@@ -136,7 +136,7 @@ function toString$1(obj) {
136
136
  // Array.prototype.toString directly will cause an error Iterate through
137
137
  // all the items and handle individually.
138
138
  if (isArray$1(obj)) {
139
- return ArrayJoin.call(ArrayMap.call(obj, toString$1), ',');
139
+ return ArrayJoin.call(ArrayMap$1.call(obj, toString$1), ',');
140
140
  }
141
141
 
142
142
  return obj.toString();
@@ -335,7 +335,7 @@ function htmlPropertyToAttribute(propName) {
335
335
  CACHED_PROPERTY_ATTRIBUTE_MAPPING.set(propName, attributeName);
336
336
  return attributeName;
337
337
  }
338
- /** version: 2.5.9 */
338
+ /** version: 2.5.10-alpha1 */
339
339
 
340
340
  /*
341
341
  * Copyright (c) 2020, salesforce.com, inc.
@@ -456,7 +456,7 @@ function setFeatureFlagForTest(name, value) {
456
456
  setFeatureFlag(name, value);
457
457
  }
458
458
  }
459
- /** version: 2.5.9 */
459
+ /** version: 2.5.10-alpha1 */
460
460
 
461
461
  /* proxy-compat-disable */
462
462
 
@@ -1906,6 +1906,7 @@ const {
1906
1906
  getPrototypeOf,
1907
1907
  create: ObjectCreate,
1908
1908
  defineProperty: ObjectDefineProperty,
1909
+ defineProperties: ObjectDefineProperties,
1909
1910
  isExtensible,
1910
1911
  getOwnPropertyDescriptor,
1911
1912
  getOwnPropertyNames,
@@ -1915,7 +1916,8 @@ const {
1915
1916
  } = Object;
1916
1917
  const {
1917
1918
  push: ArrayPush,
1918
- concat: ArrayConcat
1919
+ concat: ArrayConcat,
1920
+ map: ArrayMap
1919
1921
  } = Array.prototype;
1920
1922
  const OtS = {}.toString;
1921
1923
 
@@ -1980,9 +1982,7 @@ class BaseProxyHandler {
1980
1982
  // but it will always be compatible with the previous descriptor
1981
1983
  // to preserve the object invariants, which makes these lines safe.
1982
1984
 
1983
- const originalDescriptor = getOwnPropertyDescriptor(originalTarget, key); // TODO: it should be impossible for the originalDescriptor to ever be undefined, this `if` can be removed
1984
-
1985
- /* istanbul ignore else */
1985
+ const originalDescriptor = getOwnPropertyDescriptor(originalTarget, key);
1986
1986
 
1987
1987
  if (!isUndefined(originalDescriptor)) {
1988
1988
  const wrappedDesc = this.wrapDescriptor(originalDescriptor);
@@ -2010,17 +2010,11 @@ class BaseProxyHandler {
2010
2010
 
2011
2011
  preventExtensions(shadowTarget);
2012
2012
  } // Shared Traps
2013
- // TODO: apply() is never called
2014
-
2015
- /* istanbul ignore next */
2016
2013
 
2017
2014
 
2018
2015
  apply(shadowTarget, thisArg, argArray) {
2019
2016
  /* No op */
2020
- } // TODO: construct() is never called
2021
-
2022
- /* istanbul ignore next */
2023
-
2017
+ }
2024
2018
 
2025
2019
  construct(shadowTarget, argArray, newTarget) {
2026
2020
  /* No op */
@@ -2133,8 +2127,8 @@ class BaseProxyHandler {
2133
2127
 
2134
2128
  }
2135
2129
 
2136
- const getterMap$1 = new WeakMap();
2137
- const setterMap$1 = new WeakMap();
2130
+ const getterMap = new WeakMap();
2131
+ const setterMap = new WeakMap();
2138
2132
  const reverseGetterMap = new WeakMap();
2139
2133
  const reverseSetterMap = new WeakMap();
2140
2134
 
@@ -2144,7 +2138,7 @@ class ReactiveProxyHandler extends BaseProxyHandler {
2144
2138
  }
2145
2139
 
2146
2140
  wrapGetter(originalGet) {
2147
- const wrappedGetter = getterMap$1.get(originalGet);
2141
+ const wrappedGetter = getterMap.get(originalGet);
2148
2142
 
2149
2143
  if (!isUndefined(wrappedGetter)) {
2150
2144
  return wrappedGetter;
@@ -2157,13 +2151,13 @@ class ReactiveProxyHandler extends BaseProxyHandler {
2157
2151
  return handler.wrapValue(originalGet.call(unwrap$1(this)));
2158
2152
  };
2159
2153
 
2160
- getterMap$1.set(originalGet, get);
2154
+ getterMap.set(originalGet, get);
2161
2155
  reverseGetterMap.set(get, originalGet);
2162
2156
  return get;
2163
2157
  }
2164
2158
 
2165
2159
  wrapSetter(originalSet) {
2166
- const wrappedSetter = setterMap$1.get(originalSet);
2160
+ const wrappedSetter = setterMap.get(originalSet);
2167
2161
 
2168
2162
  if (!isUndefined(wrappedSetter)) {
2169
2163
  return wrappedSetter;
@@ -2174,7 +2168,7 @@ class ReactiveProxyHandler extends BaseProxyHandler {
2174
2168
  originalSet.call(unwrap$1(this), unwrap$1(v));
2175
2169
  };
2176
2170
 
2177
- setterMap$1.set(originalSet, set);
2171
+ setterMap.set(originalSet, set);
2178
2172
  reverseSetterMap.set(set, originalSet);
2179
2173
  return set;
2180
2174
  }
@@ -2215,7 +2209,7 @@ class ReactiveProxyHandler extends BaseProxyHandler {
2215
2209
  return unwrap$1(redGet.call(handler.wrapValue(this)));
2216
2210
  };
2217
2211
 
2218
- getterMap$1.set(get, redGet);
2212
+ getterMap.set(get, redGet);
2219
2213
  reverseGetterMap.set(redGet, get);
2220
2214
  return get;
2221
2215
  }
@@ -2234,7 +2228,7 @@ class ReactiveProxyHandler extends BaseProxyHandler {
2234
2228
  redSet.call(handler.wrapValue(this), handler.wrapValue(v));
2235
2229
  };
2236
2230
 
2237
- setterMap$1.set(set, redSet);
2231
+ setterMap.set(set, redSet);
2238
2232
  reverseSetterMap.set(redSet, set);
2239
2233
  return set;
2240
2234
  }
@@ -2275,7 +2269,6 @@ class ReactiveProxyHandler extends BaseProxyHandler {
2275
2269
  }
2276
2270
 
2277
2271
  setPrototypeOf(shadowTarget, prototype) {
2278
- /* istanbul ignore else */
2279
2272
  if (process.env.NODE_ENV !== 'production') {
2280
2273
  throw new Error(`Invalid setPrototypeOf invocation for reactive proxy ${toString(this.originalTarget)}. Prototype of reactive objects cannot be changed.`);
2281
2274
  }
@@ -2289,11 +2282,6 @@ class ReactiveProxyHandler extends BaseProxyHandler {
2289
2282
  preventExtensions(originalTarget); // if the originalTarget is a proxy itself, it might reject
2290
2283
  // the preventExtension call, in which case we should not attempt to lock down
2291
2284
  // the shadow target.
2292
- // TODO: It should not actually be possible to reach this `if` statement.
2293
- // If a proxy rejects extensions, then calling preventExtensions will throw an error:
2294
- // https://codepen.io/nolanlawson-the-selector/pen/QWMOjbY
2295
-
2296
- /* istanbul ignore if */
2297
2285
 
2298
2286
  if (isExtensible(originalTarget)) {
2299
2287
  return false;
@@ -2335,8 +2323,8 @@ class ReactiveProxyHandler extends BaseProxyHandler {
2335
2323
 
2336
2324
  }
2337
2325
 
2338
- const getterMap = new WeakMap();
2339
- const setterMap = new WeakMap();
2326
+ const getterMap$1 = new WeakMap();
2327
+ const setterMap$1 = new WeakMap();
2340
2328
 
2341
2329
  class ReadOnlyHandler extends BaseProxyHandler {
2342
2330
  wrapValue(value) {
@@ -2344,7 +2332,7 @@ class ReadOnlyHandler extends BaseProxyHandler {
2344
2332
  }
2345
2333
 
2346
2334
  wrapGetter(originalGet) {
2347
- const wrappedGetter = getterMap.get(originalGet);
2335
+ const wrappedGetter = getterMap$1.get(originalGet);
2348
2336
 
2349
2337
  if (!isUndefined(wrappedGetter)) {
2350
2338
  return wrappedGetter;
@@ -2357,12 +2345,12 @@ class ReadOnlyHandler extends BaseProxyHandler {
2357
2345
  return handler.wrapValue(originalGet.call(unwrap$1(this)));
2358
2346
  };
2359
2347
 
2360
- getterMap.set(originalGet, get);
2348
+ getterMap$1.set(originalGet, get);
2361
2349
  return get;
2362
2350
  }
2363
2351
 
2364
2352
  wrapSetter(originalSet) {
2365
- const wrappedSetter = setterMap.get(originalSet);
2353
+ const wrappedSetter = setterMap$1.get(originalSet);
2366
2354
 
2367
2355
  if (!isUndefined(wrappedSetter)) {
2368
2356
  return wrappedSetter;
@@ -2371,7 +2359,6 @@ class ReadOnlyHandler extends BaseProxyHandler {
2371
2359
  const handler = this;
2372
2360
 
2373
2361
  const set = function (v) {
2374
- /* istanbul ignore else */
2375
2362
  if (process.env.NODE_ENV !== 'production') {
2376
2363
  const {
2377
2364
  originalTarget
@@ -2380,41 +2367,33 @@ class ReadOnlyHandler extends BaseProxyHandler {
2380
2367
  }
2381
2368
  };
2382
2369
 
2383
- setterMap.set(originalSet, set);
2370
+ setterMap$1.set(originalSet, set);
2384
2371
  return set;
2385
2372
  }
2386
2373
 
2387
2374
  set(shadowTarget, key, value) {
2388
- /* istanbul ignore else */
2389
2375
  if (process.env.NODE_ENV !== 'production') {
2390
2376
  const {
2391
2377
  originalTarget
2392
2378
  } = this;
2393
- const msg = isArray(originalTarget) ? `Invalid mutation: Cannot mutate array at index ${key.toString()}. Array is read-only.` : `Invalid mutation: Cannot set "${key.toString()}" on "${originalTarget}". "${originalTarget}" is read-only.`;
2394
- throw new Error(msg);
2379
+ throw new Error(`Invalid mutation: Cannot set "${key.toString()}" on "${originalTarget}". "${originalTarget}" is read-only.`);
2395
2380
  }
2396
- /* istanbul ignore next */
2397
-
2398
2381
 
2399
2382
  return false;
2400
2383
  }
2401
2384
 
2402
2385
  deleteProperty(shadowTarget, key) {
2403
- /* istanbul ignore else */
2404
2386
  if (process.env.NODE_ENV !== 'production') {
2405
2387
  const {
2406
2388
  originalTarget
2407
2389
  } = this;
2408
2390
  throw new Error(`Invalid mutation: Cannot delete "${key.toString()}" on "${originalTarget}". "${originalTarget}" is read-only.`);
2409
2391
  }
2410
- /* istanbul ignore next */
2411
-
2412
2392
 
2413
2393
  return false;
2414
2394
  }
2415
2395
 
2416
2396
  setPrototypeOf(shadowTarget, prototype) {
2417
- /* istanbul ignore else */
2418
2397
  if (process.env.NODE_ENV !== 'production') {
2419
2398
  const {
2420
2399
  originalTarget
@@ -2424,29 +2403,23 @@ class ReadOnlyHandler extends BaseProxyHandler {
2424
2403
  }
2425
2404
 
2426
2405
  preventExtensions(shadowTarget) {
2427
- /* istanbul ignore else */
2428
2406
  if (process.env.NODE_ENV !== 'production') {
2429
2407
  const {
2430
2408
  originalTarget
2431
2409
  } = this;
2432
2410
  throw new Error(`Invalid mutation: Cannot preventExtensions on ${originalTarget}". "${originalTarget} is read-only.`);
2433
2411
  }
2434
- /* istanbul ignore next */
2435
-
2436
2412
 
2437
2413
  return false;
2438
2414
  }
2439
2415
 
2440
2416
  defineProperty(shadowTarget, key, descriptor) {
2441
- /* istanbul ignore else */
2442
2417
  if (process.env.NODE_ENV !== 'production') {
2443
2418
  const {
2444
2419
  originalTarget
2445
2420
  } = this;
2446
2421
  throw new Error(`Invalid mutation: Cannot defineProperty "${key.toString()}" on "${originalTarget}". "${originalTarget}" is read-only.`);
2447
2422
  }
2448
- /* istanbul ignore next */
2449
-
2450
2423
 
2451
2424
  return false;
2452
2425
  }
@@ -2504,8 +2477,6 @@ const formatter = {
2504
2477
  }; // Inspired from paulmillr/es6-shim
2505
2478
  // https://github.com/paulmillr/es6-shim/blob/master/es6-shim.js#L176-L185
2506
2479
 
2507
- /* istanbul ignore next */
2508
-
2509
2480
  function getGlobal() {
2510
2481
  // the only reliable means to get the global object is `Function('return this')()`
2511
2482
  // However, this causes CSP violations in Chrome apps.
@@ -2530,7 +2501,6 @@ function getGlobal() {
2530
2501
  }
2531
2502
 
2532
2503
  function init() {
2533
- /* istanbul ignore if */
2534
2504
  if (process.env.NODE_ENV === 'production') {
2535
2505
  // this method should never leak to prod
2536
2506
  throw new ReferenceError();
@@ -2545,8 +2515,6 @@ function init() {
2545
2515
  ArrayPush.call(devtoolsFormatters, formatter);
2546
2516
  global.devtoolsFormatters = devtoolsFormatters;
2547
2517
  }
2548
- /* istanbul ignore else */
2549
-
2550
2518
 
2551
2519
  if (process.env.NODE_ENV !== 'production') {
2552
2520
  init();
@@ -2593,8 +2561,7 @@ class ReactiveMembrane {
2593
2561
  this.valueMutated = defaultValueMutated;
2594
2562
  this.valueObserved = defaultValueObserved;
2595
2563
  this.valueIsObservable = defaultValueIsObservable;
2596
- this.readOnlyObjectGraph = new WeakMap();
2597
- this.reactiveObjectGraph = new WeakMap();
2564
+ this.objectGraph = new WeakMap();
2598
2565
 
2599
2566
  if (!isUndefined(options)) {
2600
2567
  const {
@@ -2617,13 +2584,10 @@ class ReactiveMembrane {
2617
2584
  const distorted = this.valueDistortion(unwrappedValue);
2618
2585
 
2619
2586
  if (this.valueIsObservable(distorted)) {
2620
- if (this.readOnlyObjectGraph.get(distorted) === value) {
2621
- // when trying to extract the writable version of a readonly
2622
- // we return the readonly.
2623
- return value;
2624
- }
2587
+ const o = this.getReactiveState(unwrappedValue, distorted); // when trying to extract the writable version of a readonly
2588
+ // we return the readonly.
2625
2589
 
2626
- return this.getReactiveHandler(unwrappedValue, distorted);
2590
+ return o.readOnly === value ? value : o.reactive;
2627
2591
  }
2628
2592
 
2629
2593
  return distorted;
@@ -2634,7 +2598,7 @@ class ReactiveMembrane {
2634
2598
  const distorted = this.valueDistortion(value);
2635
2599
 
2636
2600
  if (this.valueIsObservable(distorted)) {
2637
- return this.getReadOnlyHandler(value, distorted);
2601
+ return this.getReactiveState(value, distorted).readOnly;
2638
2602
  }
2639
2603
 
2640
2604
  return distorted;
@@ -2644,36 +2608,47 @@ class ReactiveMembrane {
2644
2608
  return unwrap$1(p);
2645
2609
  }
2646
2610
 
2647
- getReactiveHandler(value, distortedValue) {
2648
- let proxy = this.reactiveObjectGraph.get(distortedValue);
2611
+ getReactiveState(value, distortedValue) {
2612
+ const {
2613
+ objectGraph
2614
+ } = this;
2615
+ let reactiveState = objectGraph.get(distortedValue);
2649
2616
 
2650
- if (isUndefined(proxy)) {
2651
- // caching the proxy after the first time it is accessed
2652
- const handler = new ReactiveProxyHandler(this, distortedValue);
2653
- proxy = new Proxy(createShadowTarget(distortedValue), handler);
2654
- registerProxy(proxy, value);
2655
- this.reactiveObjectGraph.set(distortedValue, proxy);
2617
+ if (reactiveState) {
2618
+ return reactiveState;
2656
2619
  }
2657
2620
 
2658
- return proxy;
2659
- }
2621
+ const membrane = this;
2622
+ reactiveState = {
2623
+ get reactive() {
2624
+ const reactiveHandler = new ReactiveProxyHandler(membrane, distortedValue); // caching the reactive proxy after the first time it is accessed
2660
2625
 
2661
- getReadOnlyHandler(value, distortedValue) {
2662
- let proxy = this.readOnlyObjectGraph.get(distortedValue);
2626
+ const proxy = new Proxy(createShadowTarget(distortedValue), reactiveHandler);
2627
+ registerProxy(proxy, value);
2628
+ ObjectDefineProperty(this, 'reactive', {
2629
+ value: proxy
2630
+ });
2631
+ return proxy;
2632
+ },
2663
2633
 
2664
- if (isUndefined(proxy)) {
2665
- // caching the proxy after the first time it is accessed
2666
- const handler = new ReadOnlyHandler(this, distortedValue);
2667
- proxy = new Proxy(createShadowTarget(distortedValue), handler);
2668
- registerProxy(proxy, value);
2669
- this.readOnlyObjectGraph.set(distortedValue, proxy);
2670
- }
2634
+ get readOnly() {
2635
+ const readOnlyHandler = new ReadOnlyHandler(membrane, distortedValue); // caching the readOnly proxy after the first time it is accessed
2636
+
2637
+ const proxy = new Proxy(createShadowTarget(distortedValue), readOnlyHandler);
2638
+ registerProxy(proxy, value);
2639
+ ObjectDefineProperty(this, 'readOnly', {
2640
+ value: proxy
2641
+ });
2642
+ return proxy;
2643
+ }
2671
2644
 
2672
- return proxy;
2645
+ };
2646
+ objectGraph.set(distortedValue, reactiveState);
2647
+ return reactiveState;
2673
2648
  }
2674
2649
 
2675
2650
  }
2676
- /** version: 1.1.5 */
2651
+ /** version: 1.0.0 */
2677
2652
 
2678
2653
  /*
2679
2654
  * Copyright (c) 2018, salesforce.com, inc.
@@ -5819,7 +5794,6 @@ function updateStylesheetToken(vm, template) {
5819
5794
 
5820
5795
  function evaluateStylesheetsContent(stylesheets, stylesheetToken, vm) {
5821
5796
  const content = [];
5822
- let root;
5823
5797
 
5824
5798
  for (let i = 0; i < stylesheets.length; i++) {
5825
5799
  let stylesheet = stylesheets[i];
@@ -5832,46 +5806,23 @@ function evaluateStylesheetsContent(stylesheets, stylesheetToken, vm) {
5832
5806
  // the component instance might be attempting to use an old version of
5833
5807
  // the stylesheet, while internally, we have a replacement for it.
5834
5808
  stylesheet = getStyleOrSwappedStyle(stylesheet);
5835
- }
5836
-
5837
- const isScopedCss = stylesheet[KEY__SCOPED_CSS]; // Apply the scope token only if the stylesheet itself is scoped, or if we're rendering synthetic shadow.
5838
-
5839
- const scopeToken = isScopedCss || vm.shadowMode === 1
5840
- /* Synthetic */
5841
- && vm.renderMode === 1
5842
- /* Shadow */
5843
- ? stylesheetToken : undefined; // Use the actual `:host` selector if we're rendering global CSS for light DOM, or if we're rendering
5809
+ } // Use the actual `:host` selector if we're rendering global CSS for light DOM, or if we're rendering
5844
5810
  // native shadow DOM. Synthetic shadow DOM never uses `:host`.
5845
5811
 
5812
+
5813
+ const isScopedCss = stylesheet[KEY__SCOPED_CSS];
5846
5814
  const useActualHostSelector = vm.renderMode === 0
5847
5815
  /* Light */
5848
5816
  ? !isScopedCss : vm.shadowMode === 0
5849
5817
  /* Native */
5850
- ; // Use the native :dir() pseudoclass only in native shadow DOM. Otherwise, in synthetic shadow,
5851
- // we use an attribute selector on the host to simulate :dir().
5852
-
5853
- let useNativeDirPseudoclass;
5818
+ ; // Apply the scope token only if the stylesheet itself is scoped, or if we're rendering synthetic shadow.
5854
5819
 
5855
- if (vm.renderMode === 1
5820
+ const scopeToken = isScopedCss || vm.shadowMode === 1
5821
+ /* Synthetic */
5822
+ && vm.renderMode === 1
5856
5823
  /* Shadow */
5857
- ) {
5858
- useNativeDirPseudoclass = vm.shadowMode === 0
5859
- /* Native */
5860
- ;
5861
- } else {
5862
- // Light DOM components should only render `[dir]` if they're inside of a synthetic shadow root.
5863
- // At the top level (root is null) or inside of a native shadow root, they should use `:dir()`.
5864
- if (isUndefined$1(root)) {
5865
- // Only calculate the root once as necessary
5866
- root = getNearestShadowComponent(vm);
5867
- }
5868
-
5869
- useNativeDirPseudoclass = isNull(root) || root.shadowMode === 0
5870
- /* Native */
5871
- ;
5872
- }
5873
-
5874
- ArrayPush$1.call(content, stylesheet(scopeToken, useActualHostSelector, useNativeDirPseudoclass));
5824
+ ? stylesheetToken : undefined;
5825
+ ArrayPush$1.call(content, stylesheet(useActualHostSelector, scopeToken));
5875
5826
  }
5876
5827
  }
5877
5828
 
@@ -5895,12 +5846,14 @@ function getStylesheetsContent(vm, template) {
5895
5846
  // https://github.com/salesforce/lwc/pull/2460#discussion_r691208892
5896
5847
 
5897
5848
 
5898
- function getNearestShadowComponent(vm) {
5849
+ function getNearestNativeShadowComponent(vm) {
5899
5850
  let owner = vm;
5900
5851
 
5901
5852
  while (!isNull(owner)) {
5902
5853
  if (owner.renderMode === 1
5903
5854
  /* Shadow */
5855
+ && owner.shadowMode === 0
5856
+ /* Native */
5904
5857
  ) {
5905
5858
  return owner;
5906
5859
  }
@@ -5911,20 +5864,6 @@ function getNearestShadowComponent(vm) {
5911
5864
  return owner;
5912
5865
  }
5913
5866
 
5914
- function getNearestNativeShadowComponent(vm) {
5915
- const owner = getNearestShadowComponent(vm);
5916
-
5917
- if (!isNull(owner) && owner.shadowMode === 1
5918
- /* Synthetic */
5919
- ) {
5920
- // Synthetic-within-native is impossible. So if the nearest shadow component is
5921
- // synthetic, we know we won't find a native component if we go any further.
5922
- return null;
5923
- }
5924
-
5925
- return owner;
5926
- }
5927
-
5928
5867
  function createStylesheet(vm, stylesheets) {
5929
5868
  const {
5930
5869
  renderer,
@@ -7589,7 +7528,7 @@ function setHooks(hooks) {
7589
7528
  hooksAreSet = true;
7590
7529
  setSanitizeHtmlContentHook(hooks.sanitizeHtmlContent);
7591
7530
  }
7592
- /* version: 2.5.9 */
7531
+ /* version: 2.5.10-alpha1 */
7593
7532
 
7594
7533
  /*
7595
7534
  * Copyright (c) 2020, salesforce.com, inc.
@@ -8085,6 +8024,6 @@ function renderComponent(tagName, Ctor, props = {}) {
8085
8024
 
8086
8025
  freeze(LightningElement);
8087
8026
  seal(LightningElement.prototype);
8088
- /* version: 2.5.9 */
8027
+ /* version: 2.5.10-alpha1 */
8089
8028
 
8090
8029
  export { LightningElement, api$1 as api, createContextProvider, getComponentDef, isComponentConstructor, readonly, register, registerComponent, registerDecorators, registerTemplate, renderComponent, sanitizeAttribute, setFeatureFlag, setFeatureFlagForTest, setHooks, track, unwrap, wire };
@@ -194,7 +194,7 @@ const KEY__SYNTHETIC_MODE = '$$lwc-synthetic-mode';
194
194
  // we can't use typeof since it will fail when transpiling.
195
195
 
196
196
  const hasNativeSymbolSupport = /*@__PURE__*/(() => Symbol('x').toString() === 'Symbol(x)')();
197
- /** version: 2.5.9 */
197
+ /** version: 2.5.10-alpha1 */
198
198
 
199
199
  /*
200
200
  * Copyright (c) 2018, salesforce.com, inc.
@@ -533,7 +533,7 @@ if (!_globalThis.lwcRuntimeFlags) {
533
533
  }
534
534
 
535
535
  const runtimeFlags = _globalThis.lwcRuntimeFlags;
536
- /** version: 2.5.9 */
536
+ /** version: 2.5.10-alpha1 */
537
537
 
538
538
  /*
539
539
  * Copyright (c) 2018, salesforce.com, inc.
@@ -5829,4 +5829,4 @@ defineProperty(Element.prototype, '$domManual$', {
5829
5829
 
5830
5830
  configurable: true
5831
5831
  });
5832
- /** version: 2.5.9 */
5832
+ /** version: 2.5.10-alpha1 */
@@ -197,7 +197,7 @@
197
197
  // we can't use typeof since it will fail when transpiling.
198
198
 
199
199
  const hasNativeSymbolSupport = /*@__PURE__*/(() => Symbol('x').toString() === 'Symbol(x)')();
200
- /** version: 2.5.9 */
200
+ /** version: 2.5.10-alpha1 */
201
201
 
202
202
  /*
203
203
  * Copyright (c) 2018, salesforce.com, inc.
@@ -536,7 +536,7 @@
536
536
  }
537
537
 
538
538
  const runtimeFlags = _globalThis.lwcRuntimeFlags;
539
- /** version: 2.5.9 */
539
+ /** version: 2.5.10-alpha1 */
540
540
 
541
541
  /*
542
542
  * Copyright (c) 2018, salesforce.com, inc.
@@ -5832,6 +5832,6 @@
5832
5832
 
5833
5833
  configurable: true
5834
5834
  });
5835
- /** version: 2.5.9 */
5835
+ /** version: 2.5.10-alpha1 */
5836
5836
 
5837
- })();
5837
+ }());