lwc 2.23.4 → 2.23.6

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 +168 -63
  2. package/dist/engine-dom/iife/es2017/engine-dom.js +168 -63
  3. package/dist/engine-dom/iife/es2017/engine-dom.min.js +1 -1
  4. package/dist/engine-dom/iife/es2017/engine-dom_debug.js +166 -61
  5. package/dist/engine-dom/iife/es5/engine-dom.js +405 -294
  6. package/dist/engine-dom/iife/es5/engine-dom.min.js +1 -1
  7. package/dist/engine-dom/iife/es5/engine-dom_debug.js +403 -292
  8. package/dist/engine-dom/umd/es2017/engine-dom.js +168 -63
  9. package/dist/engine-dom/umd/es2017/engine-dom.min.js +1 -1
  10. package/dist/engine-dom/umd/es2017/engine-dom_debug.js +166 -61
  11. package/dist/engine-dom/umd/es5/engine-dom.js +405 -294
  12. package/dist/engine-dom/umd/es5/engine-dom.min.js +1 -1
  13. package/dist/engine-dom/umd/es5/engine-dom_debug.js +403 -292
  14. package/dist/engine-server/commonjs/es2017/engine-server.js +67 -10
  15. package/dist/engine-server/commonjs/es2017/engine-server.min.js +1 -1
  16. package/dist/engine-server/esm/es2017/engine-server.js +67 -10
  17. package/dist/synthetic-shadow/esm/es2017/synthetic-shadow.js +55 -36
  18. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow.js +55 -36
  19. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow.min.js +2 -2
  20. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow_debug.js +52 -32
  21. package/dist/synthetic-shadow/iife/es5/synthetic-shadow.js +24 -18
  22. package/dist/synthetic-shadow/iife/es5/synthetic-shadow.min.js +2 -2
  23. package/dist/synthetic-shadow/iife/es5/synthetic-shadow_debug.js +24 -18
  24. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow.js +55 -36
  25. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow.min.js +2 -2
  26. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow_debug.js +52 -32
  27. package/dist/synthetic-shadow/umd/es5/synthetic-shadow.js +24 -18
  28. package/dist/synthetic-shadow/umd/es5/synthetic-shadow.min.js +2 -2
  29. package/dist/synthetic-shadow/umd/es5/synthetic-shadow_debug.js +24 -18
  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 +7 -7
@@ -294,7 +294,7 @@
294
294
  CACHED_PROPERTY_ATTRIBUTE_MAPPING.set(propName, attributeName);
295
295
  return attributeName;
296
296
  }
297
- /** version: 2.23.4 */
297
+ /** version: 2.23.6 */
298
298
 
299
299
  /**
300
300
  * Copyright (C) 2018 salesforce.com, inc.
@@ -376,7 +376,7 @@
376
376
  patch$1(propName);
377
377
  }
378
378
  }
379
- /** version: 2.23.4 */
379
+ /** version: 2.23.6 */
380
380
 
381
381
  /**
382
382
  * Copyright (C) 2018 salesforce.com, inc.
@@ -401,6 +401,7 @@
401
401
  ENABLE_NODE_PATCH: null,
402
402
  ENABLE_REACTIVE_SETTER: null,
403
403
  ENABLE_WIRE_SYNC_EMIT: null,
404
+ ENABLE_LIGHT_GET_ROOT_NODE_PATCH: null,
404
405
  };
405
406
  if (!_globalThis.lwcRuntimeFlags) {
406
407
  Object.defineProperty(_globalThis, 'lwcRuntimeFlags', { value: create(null) });
@@ -2807,6 +2808,12 @@
2807
2808
  n2.elm = n1.elm;
2808
2809
  break;
2809
2810
 
2811
+ case 5
2812
+ /* VNodeType.Fragment */
2813
+ :
2814
+ patchFragment(n1, n2, parent, renderer);
2815
+ break;
2816
+
2810
2817
  case 2
2811
2818
  /* VNodeType.Element */
2812
2819
  :
@@ -2846,6 +2853,12 @@
2846
2853
  mountStatic(node, parent, anchor, renderer);
2847
2854
  break;
2848
2855
 
2856
+ case 5
2857
+ /* VNodeType.Fragment */
2858
+ :
2859
+ mountFragment(node, parent, anchor, renderer);
2860
+ break;
2861
+
2849
2862
  case 2
2850
2863
  /* VNodeType.Element */
2851
2864
  :
@@ -2903,6 +2916,31 @@
2903
2916
  insertNode(commentNode, parent, anchor, renderer);
2904
2917
  }
2905
2918
 
2919
+ function mountFragment(vnode, parent, anchor, renderer) {
2920
+ const {
2921
+ children
2922
+ } = vnode;
2923
+ mountVNodes(children, parent, renderer, anchor); // children of a fragment will always have at least the two delimiters.
2924
+
2925
+ vnode.elm = children[children.length - 1].elm;
2926
+ }
2927
+
2928
+ function patchFragment(n1, n2, parent, renderer) {
2929
+ const {
2930
+ children,
2931
+ stable
2932
+ } = n2;
2933
+
2934
+ if (stable) {
2935
+ updateStaticChildren(n1.children, children, parent, renderer);
2936
+ } else {
2937
+ updateDynamicChildren(n1.children, children, parent, renderer);
2938
+ } // Note: not reusing n1.elm, because during patching, it may be patched with another text node.
2939
+
2940
+
2941
+ n2.elm = children[children.length - 1].elm;
2942
+ }
2943
+
2906
2944
  function mountElement(vnode, parent, anchor, renderer) {
2907
2945
  const {
2908
2946
  sel,
@@ -3057,9 +3095,15 @@
3057
3095
  // subtree root, is the only element worth unmounting from the subtree.
3058
3096
 
3059
3097
  if (doRemove) {
3060
- // The vnode might or might not have a data.renderer associated to it
3061
- // but the removal used here is from the owner instead.
3062
- removeNode(elm, parent, renderer);
3098
+ if (type === 5
3099
+ /* VNodeType.Fragment */
3100
+ ) {
3101
+ unmountVNodes(vnode.children, parent, renderer, doRemove);
3102
+ } else {
3103
+ // The vnode might or might not have a data.renderer associated to it
3104
+ // but the removal used here is from the owner instead.
3105
+ removeNode(elm, parent, renderer);
3106
+ }
3063
3107
  }
3064
3108
 
3065
3109
  switch (type) {
@@ -3521,6 +3565,18 @@
3521
3565
  owner: getVMBeingRendered(),
3522
3566
  };
3523
3567
  }
3568
+ // [fr]agment node
3569
+ function fr(key, children, stable) {
3570
+ return {
3571
+ type: 5 /* VNodeType.Fragment */,
3572
+ sel: undefined,
3573
+ key,
3574
+ elm: undefined,
3575
+ children: [t(''), ...children, t('')],
3576
+ stable,
3577
+ owner: getVMBeingRendered(),
3578
+ };
3579
+ }
3524
3580
  // [h]tml node
3525
3581
  function h(sel, data, children = EmptyArray) {
3526
3582
  const vmBeingRendered = getVMBeingRendered();
@@ -3647,13 +3703,13 @@
3647
3703
  }
3648
3704
  // [co]mment node
3649
3705
  function co(text) {
3650
- let sel, key, elm;
3706
+ let sel, elm;
3651
3707
  return {
3652
3708
  type: 1 /* VNodeType.Comment */,
3653
3709
  sel,
3654
3710
  text,
3655
3711
  elm,
3656
- key,
3712
+ key: 'c',
3657
3713
  owner: getVMBeingRendered(),
3658
3714
  };
3659
3715
  }
@@ -3778,6 +3834,7 @@
3778
3834
  k,
3779
3835
  co,
3780
3836
  dc,
3837
+ fr,
3781
3838
  ti,
3782
3839
  st,
3783
3840
  gid,
@@ -5123,6 +5180,10 @@
5123
5180
  // VStatic are cacheable and cannot have custom renderer associated to them
5124
5181
  hydratedNode = hydrateStaticElement(node, vnode, renderer);
5125
5182
  break;
5183
+ case 5 /* VNodeType.Fragment */:
5184
+ // a fragment does not represent any element, therefore there is no need to use a custom renderer.
5185
+ hydratedNode = hydrateFragment(node, vnode, renderer);
5186
+ break;
5126
5187
  case 2 /* VNodeType.Element */:
5127
5188
  hydratedNode = hydrateElement(node, vnode, (_a = vnode.data.renderer) !== null && _a !== void 0 ? _a : renderer);
5128
5189
  break;
@@ -5160,6 +5221,11 @@
5160
5221
  vnode.elm = elm;
5161
5222
  return elm;
5162
5223
  }
5224
+ function hydrateFragment(elm, vnode, renderer) {
5225
+ const { children, owner } = vnode;
5226
+ hydrateChildren(elm, children, renderer.getProperty(elm, 'parentNode'), owner);
5227
+ return (vnode.elm = children[children.length - 1].elm);
5228
+ }
5163
5229
  function hydrateElement(elm, vnode, renderer) {
5164
5230
  if (!hasCorrectNodeType(vnode, elm, 1 /* EnvNodeTypes.ELEMENT */, renderer) ||
5165
5231
  !isMatchingElement(vnode, elm, renderer)) {
@@ -5434,7 +5500,7 @@
5434
5500
  }
5435
5501
  return ctor;
5436
5502
  }
5437
- /* version: 2.23.4 */
5503
+ /* version: 2.23.6 */
5438
5504
 
5439
5505
  /*
5440
5506
  * Copyright (c) 2018, salesforce.com, inc.
@@ -5586,20 +5652,59 @@
5586
5652
  * @param baseRenderer Either null or the base renderer imported from 'lwc'.
5587
5653
  */
5588
5654
  function rendererFactory(baseRenderer) {
5589
- // Util functions
5590
- function assertInvariant(value, msg) {
5655
+ const renderer = (function (exports) {
5656
+
5657
+ /**
5658
+ * Copyright (C) 2018 salesforce.com, inc.
5659
+ */
5660
+ /*
5661
+ * Copyright (c) 2018, salesforce.com, inc.
5662
+ * All rights reserved.
5663
+ * SPDX-License-Identifier: MIT
5664
+ * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
5665
+ */
5666
+ function invariant(value, msg) {
5591
5667
  if (!value) {
5592
5668
  throw new Error(`Invariant Violation: ${msg}`);
5593
5669
  }
5594
5670
  }
5595
- function isNull(obj) {
5596
- return obj === null;
5671
+ function isTrue$1(value, msg) {
5672
+ if (!value) {
5673
+ throw new Error(`Assert Violation: ${msg}`);
5674
+ }
5597
5675
  }
5676
+ function isFalse$1(value, msg) {
5677
+ if (value) {
5678
+ throw new Error(`Assert Violation: ${msg}`);
5679
+ }
5680
+ }
5681
+ function fail(msg) {
5682
+ throw new Error(msg);
5683
+ }
5684
+
5685
+ var assert = /*#__PURE__*/Object.freeze({
5686
+ __proto__: null,
5687
+ invariant: invariant,
5688
+ isTrue: isTrue$1,
5689
+ isFalse: isFalse$1,
5690
+ fail: fail
5691
+ });
5598
5692
  function isUndefined(obj) {
5599
5693
  return obj === undefined;
5600
5694
  }
5601
- let getCustomElement;
5602
- let defineCustomElement;
5695
+ function isNull(obj) {
5696
+ return obj === null;
5697
+ }
5698
+ /** version: 2.23.6 */
5699
+
5700
+ /*
5701
+ * Copyright (c) 2018, salesforce.com, inc.
5702
+ * All rights reserved.
5703
+ * SPDX-License-Identifier: MIT
5704
+ * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
5705
+ */
5706
+ exports.getCustomElement = void 0;
5707
+ exports.defineCustomElement = void 0;
5603
5708
  let HTMLElementConstructor;
5604
5709
  function isCustomElementRegistryAvailable() {
5605
5710
  if (typeof customElements === 'undefined') {
@@ -5625,21 +5730,21 @@
5625
5730
  }
5626
5731
  }
5627
5732
  if (isCustomElementRegistryAvailable()) {
5628
- getCustomElement = customElements.get.bind(customElements);
5629
- defineCustomElement = customElements.define.bind(customElements);
5733
+ exports.getCustomElement = customElements.get.bind(customElements);
5734
+ exports.defineCustomElement = customElements.define.bind(customElements);
5630
5735
  HTMLElementConstructor = HTMLElement;
5631
5736
  }
5632
5737
  else {
5633
5738
  const registry = Object.create(null);
5634
5739
  const reverseRegistry = new WeakMap();
5635
- defineCustomElement = function define(name, ctor) {
5740
+ exports.defineCustomElement = function define(name, ctor) {
5636
5741
  if (name !== String.prototype.toLowerCase.call(name) || registry[name]) {
5637
5742
  throw new TypeError(`Invalid Registration`);
5638
5743
  }
5639
5744
  registry[name] = ctor;
5640
5745
  reverseRegistry.set(ctor, name);
5641
5746
  };
5642
- getCustomElement = function get(name) {
5747
+ exports.getCustomElement = function get(name) {
5643
5748
  return registry[name];
5644
5749
  };
5645
5750
  HTMLElementConstructor = function HTMLElement() {
@@ -5671,12 +5776,12 @@
5671
5776
  function createComment(content) {
5672
5777
  return document.createComment(content);
5673
5778
  }
5674
- let createFragment;
5779
+ exports.createFragment = void 0;
5675
5780
  // IE11 lacks support for this feature
5676
5781
  const SUPPORTS_TEMPLATE = typeof HTMLTemplateElement === 'function';
5677
5782
  if (SUPPORTS_TEMPLATE) {
5678
5783
  // Parse the fragment HTML string into DOM
5679
- createFragment = function (html) {
5784
+ exports.createFragment = function (html) {
5680
5785
  const template = document.createElement('template');
5681
5786
  template.innerHTML = html;
5682
5787
  return template.content.firstChild;
@@ -5708,7 +5813,7 @@
5708
5813
  return (/<([a-z][^/\0>\x20\t\r\n\f]+)/i.exec(text) || ['', ''])[1].toLowerCase();
5709
5814
  };
5710
5815
  // Via https://github.com/webcomponents/polyfills/blob/ee1db33/packages/template/template.js#L295-L320
5711
- createFragment = function (html) {
5816
+ exports.createFragment = function (html) {
5712
5817
  const wrapperTags = topLevelWrappingMap[getTagName(html)];
5713
5818
  if (!isUndefined(wrapperTags)) {
5714
5819
  for (const wrapperTag of wrapperTags) {
@@ -5828,47 +5933,47 @@
5828
5933
  return node.isConnected;
5829
5934
  }
5830
5935
  function assertInstanceOfHTMLElement(elm, msg) {
5831
- assertInvariant(elm instanceof HTMLElement, msg);
5936
+ assert.invariant(elm instanceof HTMLElement, msg);
5832
5937
  }
5833
5938
  const HTMLElementExported = HTMLElementConstructor;
5834
- const renderer = {
5835
- HTMLElementExported,
5836
- insert,
5837
- remove,
5838
- cloneNode,
5839
- createFragment,
5840
- createElement,
5841
- createText,
5842
- createComment,
5843
- nextSibling,
5844
- attachShadow,
5845
- getProperty,
5846
- setProperty,
5847
- setText,
5848
- getAttribute,
5849
- setAttribute,
5850
- removeAttribute,
5851
- addEventListener,
5852
- removeEventListener,
5853
- dispatchEvent,
5854
- getClassList,
5855
- setCSSStyleProperty,
5856
- getBoundingClientRect,
5857
- querySelector,
5858
- querySelectorAll,
5859
- getElementsByTagName,
5860
- getElementsByClassName,
5861
- getChildren,
5862
- getChildNodes,
5863
- getFirstChild,
5864
- getFirstElementChild,
5865
- getLastChild,
5866
- getLastElementChild,
5867
- isConnected,
5868
- assertInstanceOfHTMLElement,
5869
- defineCustomElement,
5870
- getCustomElement,
5871
- };
5939
+
5940
+ exports.HTMLElementExported = HTMLElementExported;
5941
+ exports.addEventListener = addEventListener;
5942
+ exports.assertInstanceOfHTMLElement = assertInstanceOfHTMLElement;
5943
+ exports.attachShadow = attachShadow;
5944
+ exports.cloneNode = cloneNode;
5945
+ exports.createComment = createComment;
5946
+ exports.createElement = createElement;
5947
+ exports.createText = createText;
5948
+ exports.dispatchEvent = dispatchEvent;
5949
+ exports.getAttribute = getAttribute;
5950
+ exports.getBoundingClientRect = getBoundingClientRect;
5951
+ exports.getChildNodes = getChildNodes;
5952
+ exports.getChildren = getChildren;
5953
+ exports.getClassList = getClassList;
5954
+ exports.getElementsByClassName = getElementsByClassName;
5955
+ exports.getElementsByTagName = getElementsByTagName;
5956
+ exports.getFirstChild = getFirstChild;
5957
+ exports.getFirstElementChild = getFirstElementChild;
5958
+ exports.getLastChild = getLastChild;
5959
+ exports.getLastElementChild = getLastElementChild;
5960
+ exports.getProperty = getProperty;
5961
+ exports.insert = insert;
5962
+ exports.isConnected = isConnected;
5963
+ exports.nextSibling = nextSibling;
5964
+ exports.querySelector = querySelector;
5965
+ exports.querySelectorAll = querySelectorAll;
5966
+ exports.remove = remove;
5967
+ exports.removeAttribute = removeAttribute;
5968
+ exports.removeEventListener = removeEventListener;
5969
+ exports.setAttribute = setAttribute;
5970
+ exports.setCSSStyleProperty = setCSSStyleProperty;
5971
+ exports.setProperty = setProperty;
5972
+ exports.setText = setText;
5973
+
5974
+ return exports;
5975
+
5976
+ })({});
5872
5977
  // Meant to inherit any properties passed via the base renderer as the argument to the factory.
5873
5978
  Object.setPrototypeOf(renderer, baseRenderer);
5874
5979
  return renderer;
@@ -6201,7 +6306,7 @@
6201
6306
  });
6202
6307
  freeze(LightningElement);
6203
6308
  seal(LightningElement.prototype);
6204
- /* version: 2.23.4 */
6309
+ /* version: 2.23.6 */
6205
6310
 
6206
6311
  exports.LightningElement = LightningElement;
6207
6312
  exports.__unstable__ProfilerControl = profilerControl;