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
@@ -305,9 +305,9 @@
305
305
  * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
306
306
  */
307
307
  // Increment whenever the LWC template compiler changes
308
- const LWC_VERSION = "2.23.4";
308
+ const LWC_VERSION = "2.23.6";
309
309
  const LWC_VERSION_COMMENT_REGEX = /\/\*LWC compiler v([\d.]+)\*\/\s*}/;
310
- /** version: 2.23.4 */
310
+ /** version: 2.23.6 */
311
311
 
312
312
  /**
313
313
  * Copyright (C) 2018 salesforce.com, inc.
@@ -389,7 +389,7 @@
389
389
  patch$1(propName);
390
390
  }
391
391
  }
392
- /** version: 2.23.4 */
392
+ /** version: 2.23.6 */
393
393
 
394
394
  /**
395
395
  * Copyright (C) 2018 salesforce.com, inc.
@@ -414,6 +414,7 @@
414
414
  ENABLE_NODE_PATCH: null,
415
415
  ENABLE_REACTIVE_SETTER: null,
416
416
  ENABLE_WIRE_SYNC_EMIT: null,
417
+ ENABLE_LIGHT_GET_ROOT_NODE_PATCH: null,
417
418
  };
418
419
  if (!_globalThis.lwcRuntimeFlags) {
419
420
  Object.defineProperty(_globalThis, 'lwcRuntimeFlags', { value: create(null) });
@@ -467,7 +468,7 @@
467
468
  setFeatureFlag(name, value);
468
469
  }
469
470
  }
470
- /** version: 2.23.4 */
471
+ /** version: 2.23.6 */
471
472
 
472
473
  /*
473
474
  * Copyright (c) 2018, salesforce.com, inc.
@@ -3914,6 +3915,12 @@
3914
3915
  n2.elm = n1.elm;
3915
3916
  break;
3916
3917
 
3918
+ case 5
3919
+ /* VNodeType.Fragment */
3920
+ :
3921
+ patchFragment(n1, n2, parent, renderer);
3922
+ break;
3923
+
3917
3924
  case 2
3918
3925
  /* VNodeType.Element */
3919
3926
  :
@@ -3953,6 +3960,12 @@
3953
3960
  mountStatic(node, parent, anchor, renderer);
3954
3961
  break;
3955
3962
 
3963
+ case 5
3964
+ /* VNodeType.Fragment */
3965
+ :
3966
+ mountFragment(node, parent, anchor, renderer);
3967
+ break;
3968
+
3956
3969
  case 2
3957
3970
  /* VNodeType.Element */
3958
3971
  :
@@ -4010,6 +4023,31 @@
4010
4023
  insertNode(commentNode, parent, anchor, renderer);
4011
4024
  }
4012
4025
 
4026
+ function mountFragment(vnode, parent, anchor, renderer) {
4027
+ const {
4028
+ children
4029
+ } = vnode;
4030
+ mountVNodes(children, parent, renderer, anchor); // children of a fragment will always have at least the two delimiters.
4031
+
4032
+ vnode.elm = children[children.length - 1].elm;
4033
+ }
4034
+
4035
+ function patchFragment(n1, n2, parent, renderer) {
4036
+ const {
4037
+ children,
4038
+ stable
4039
+ } = n2;
4040
+
4041
+ if (stable) {
4042
+ updateStaticChildren(n1.children, children, parent, renderer);
4043
+ } else {
4044
+ updateDynamicChildren(n1.children, children, parent, renderer);
4045
+ } // Note: not reusing n1.elm, because during patching, it may be patched with another text node.
4046
+
4047
+
4048
+ n2.elm = children[children.length - 1].elm;
4049
+ }
4050
+
4013
4051
  function mountElement(vnode, parent, anchor, renderer) {
4014
4052
  const {
4015
4053
  sel,
@@ -4173,9 +4211,15 @@
4173
4211
  // subtree root, is the only element worth unmounting from the subtree.
4174
4212
 
4175
4213
  if (doRemove) {
4176
- // The vnode might or might not have a data.renderer associated to it
4177
- // but the removal used here is from the owner instead.
4178
- removeNode(elm, parent, renderer);
4214
+ if (type === 5
4215
+ /* VNodeType.Fragment */
4216
+ ) {
4217
+ unmountVNodes(vnode.children, parent, renderer, doRemove);
4218
+ } else {
4219
+ // The vnode might or might not have a data.renderer associated to it
4220
+ // but the removal used here is from the owner instead.
4221
+ removeNode(elm, parent, renderer);
4222
+ }
4179
4223
  }
4180
4224
 
4181
4225
  switch (type) {
@@ -4682,6 +4726,18 @@
4682
4726
  owner: getVMBeingRendered(),
4683
4727
  };
4684
4728
  }
4729
+ // [fr]agment node
4730
+ function fr(key, children, stable) {
4731
+ return {
4732
+ type: 5 /* VNodeType.Fragment */,
4733
+ sel: undefined,
4734
+ key,
4735
+ elm: undefined,
4736
+ children: [t(''), ...children, t('')],
4737
+ stable,
4738
+ owner: getVMBeingRendered(),
4739
+ };
4740
+ }
4685
4741
  // [h]tml node
4686
4742
  function h(sel, data, children = EmptyArray) {
4687
4743
  const vmBeingRendered = getVMBeingRendered();
@@ -4901,13 +4957,13 @@
4901
4957
  }
4902
4958
  // [co]mment node
4903
4959
  function co(text) {
4904
- let sel, key, elm;
4960
+ let sel, elm;
4905
4961
  return {
4906
4962
  type: 1 /* VNodeType.Comment */,
4907
4963
  sel,
4908
4964
  text,
4909
4965
  elm,
4910
- key,
4966
+ key: 'c',
4911
4967
  owner: getVMBeingRendered(),
4912
4968
  };
4913
4969
  }
@@ -5052,6 +5108,7 @@
5052
5108
  k,
5053
5109
  co,
5054
5110
  dc,
5111
+ fr,
5055
5112
  ti,
5056
5113
  st,
5057
5114
  gid,
@@ -6604,6 +6661,10 @@
6604
6661
  // VStatic are cacheable and cannot have custom renderer associated to them
6605
6662
  hydratedNode = hydrateStaticElement(node, vnode, renderer);
6606
6663
  break;
6664
+ case 5 /* VNodeType.Fragment */:
6665
+ // a fragment does not represent any element, therefore there is no need to use a custom renderer.
6666
+ hydratedNode = hydrateFragment(node, vnode, renderer);
6667
+ break;
6607
6668
  case 2 /* VNodeType.Element */:
6608
6669
  hydratedNode = hydrateElement(node, vnode, (_a = vnode.data.renderer) !== null && _a !== void 0 ? _a : renderer);
6609
6670
  break;
@@ -6655,6 +6716,11 @@
6655
6716
  vnode.elm = elm;
6656
6717
  return elm;
6657
6718
  }
6719
+ function hydrateFragment(elm, vnode, renderer) {
6720
+ const { children, owner } = vnode;
6721
+ hydrateChildren(elm, children, renderer.getProperty(elm, 'parentNode'), owner);
6722
+ return (vnode.elm = children[children.length - 1].elm);
6723
+ }
6658
6724
  function hydrateElement(elm, vnode, renderer) {
6659
6725
  if (!hasCorrectNodeType(vnode, elm, 1 /* EnvNodeTypes.ELEMENT */, renderer) ||
6660
6726
  !isMatchingElement(vnode, elm, renderer)) {
@@ -7074,7 +7140,7 @@
7074
7140
  }
7075
7141
  return ctor;
7076
7142
  }
7077
- /* version: 2.23.4 */
7143
+ /* version: 2.23.6 */
7078
7144
 
7079
7145
  /*
7080
7146
  * Copyright (c) 2018, salesforce.com, inc.
@@ -7235,20 +7301,59 @@
7235
7301
  * @param baseRenderer Either null or the base renderer imported from 'lwc'.
7236
7302
  */
7237
7303
  function rendererFactory(baseRenderer) {
7238
- // Util functions
7239
- function assertInvariant(value, msg) {
7304
+ const renderer = (function (exports) {
7305
+
7306
+ /**
7307
+ * Copyright (C) 2018 salesforce.com, inc.
7308
+ */
7309
+ /*
7310
+ * Copyright (c) 2018, salesforce.com, inc.
7311
+ * All rights reserved.
7312
+ * SPDX-License-Identifier: MIT
7313
+ * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
7314
+ */
7315
+ function invariant(value, msg) {
7240
7316
  if (!value) {
7241
7317
  throw new Error(`Invariant Violation: ${msg}`);
7242
7318
  }
7243
7319
  }
7244
- function isNull(obj) {
7245
- return obj === null;
7320
+ function isTrue$1(value, msg) {
7321
+ if (!value) {
7322
+ throw new Error(`Assert Violation: ${msg}`);
7323
+ }
7246
7324
  }
7325
+ function isFalse$1(value, msg) {
7326
+ if (value) {
7327
+ throw new Error(`Assert Violation: ${msg}`);
7328
+ }
7329
+ }
7330
+ function fail(msg) {
7331
+ throw new Error(msg);
7332
+ }
7333
+
7334
+ var assert = /*#__PURE__*/Object.freeze({
7335
+ __proto__: null,
7336
+ invariant: invariant,
7337
+ isTrue: isTrue$1,
7338
+ isFalse: isFalse$1,
7339
+ fail: fail
7340
+ });
7247
7341
  function isUndefined(obj) {
7248
7342
  return obj === undefined;
7249
7343
  }
7250
- let getCustomElement;
7251
- let defineCustomElement;
7344
+ function isNull(obj) {
7345
+ return obj === null;
7346
+ }
7347
+ /** version: 2.23.6 */
7348
+
7349
+ /*
7350
+ * Copyright (c) 2018, salesforce.com, inc.
7351
+ * All rights reserved.
7352
+ * SPDX-License-Identifier: MIT
7353
+ * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
7354
+ */
7355
+ exports.getCustomElement = void 0;
7356
+ exports.defineCustomElement = void 0;
7252
7357
  let HTMLElementConstructor;
7253
7358
  function isCustomElementRegistryAvailable() {
7254
7359
  if (typeof customElements === 'undefined') {
@@ -7274,21 +7379,21 @@
7274
7379
  }
7275
7380
  }
7276
7381
  if (isCustomElementRegistryAvailable()) {
7277
- getCustomElement = customElements.get.bind(customElements);
7278
- defineCustomElement = customElements.define.bind(customElements);
7382
+ exports.getCustomElement = customElements.get.bind(customElements);
7383
+ exports.defineCustomElement = customElements.define.bind(customElements);
7279
7384
  HTMLElementConstructor = HTMLElement;
7280
7385
  }
7281
7386
  else {
7282
7387
  const registry = Object.create(null);
7283
7388
  const reverseRegistry = new WeakMap();
7284
- defineCustomElement = function define(name, ctor) {
7389
+ exports.defineCustomElement = function define(name, ctor) {
7285
7390
  if (name !== String.prototype.toLowerCase.call(name) || registry[name]) {
7286
7391
  throw new TypeError(`Invalid Registration`);
7287
7392
  }
7288
7393
  registry[name] = ctor;
7289
7394
  reverseRegistry.set(ctor, name);
7290
7395
  };
7291
- getCustomElement = function get(name) {
7396
+ exports.getCustomElement = function get(name) {
7292
7397
  return registry[name];
7293
7398
  };
7294
7399
  HTMLElementConstructor = function HTMLElement() {
@@ -7320,12 +7425,12 @@
7320
7425
  function createComment(content) {
7321
7426
  return document.createComment(content);
7322
7427
  }
7323
- let createFragment;
7428
+ exports.createFragment = void 0;
7324
7429
  // IE11 lacks support for this feature
7325
7430
  const SUPPORTS_TEMPLATE = typeof HTMLTemplateElement === 'function';
7326
7431
  if (SUPPORTS_TEMPLATE) {
7327
7432
  // Parse the fragment HTML string into DOM
7328
- createFragment = function (html) {
7433
+ exports.createFragment = function (html) {
7329
7434
  const template = document.createElement('template');
7330
7435
  template.innerHTML = html;
7331
7436
  return template.content.firstChild;
@@ -7357,7 +7462,7 @@
7357
7462
  return (/<([a-z][^/\0>\x20\t\r\n\f]+)/i.exec(text) || ['', ''])[1].toLowerCase();
7358
7463
  };
7359
7464
  // Via https://github.com/webcomponents/polyfills/blob/ee1db33/packages/template/template.js#L295-L320
7360
- createFragment = function (html) {
7465
+ exports.createFragment = function (html) {
7361
7466
  const wrapperTags = topLevelWrappingMap[getTagName(html)];
7362
7467
  if (!isUndefined(wrapperTags)) {
7363
7468
  for (const wrapperTag of wrapperTags) {
@@ -7477,47 +7582,47 @@
7477
7582
  return node.isConnected;
7478
7583
  }
7479
7584
  function assertInstanceOfHTMLElement(elm, msg) {
7480
- assertInvariant(elm instanceof HTMLElement, msg);
7585
+ assert.invariant(elm instanceof HTMLElement, msg);
7481
7586
  }
7482
7587
  const HTMLElementExported = HTMLElementConstructor;
7483
- const renderer = {
7484
- HTMLElementExported,
7485
- insert,
7486
- remove,
7487
- cloneNode,
7488
- createFragment,
7489
- createElement,
7490
- createText,
7491
- createComment,
7492
- nextSibling,
7493
- attachShadow,
7494
- getProperty,
7495
- setProperty,
7496
- setText,
7497
- getAttribute,
7498
- setAttribute,
7499
- removeAttribute,
7500
- addEventListener,
7501
- removeEventListener,
7502
- dispatchEvent,
7503
- getClassList,
7504
- setCSSStyleProperty,
7505
- getBoundingClientRect,
7506
- querySelector,
7507
- querySelectorAll,
7508
- getElementsByTagName,
7509
- getElementsByClassName,
7510
- getChildren,
7511
- getChildNodes,
7512
- getFirstChild,
7513
- getFirstElementChild,
7514
- getLastChild,
7515
- getLastElementChild,
7516
- isConnected,
7517
- assertInstanceOfHTMLElement,
7518
- defineCustomElement,
7519
- getCustomElement,
7520
- };
7588
+
7589
+ exports.HTMLElementExported = HTMLElementExported;
7590
+ exports.addEventListener = addEventListener;
7591
+ exports.assertInstanceOfHTMLElement = assertInstanceOfHTMLElement;
7592
+ exports.attachShadow = attachShadow;
7593
+ exports.cloneNode = cloneNode;
7594
+ exports.createComment = createComment;
7595
+ exports.createElement = createElement;
7596
+ exports.createText = createText;
7597
+ exports.dispatchEvent = dispatchEvent;
7598
+ exports.getAttribute = getAttribute;
7599
+ exports.getBoundingClientRect = getBoundingClientRect;
7600
+ exports.getChildNodes = getChildNodes;
7601
+ exports.getChildren = getChildren;
7602
+ exports.getClassList = getClassList;
7603
+ exports.getElementsByClassName = getElementsByClassName;
7604
+ exports.getElementsByTagName = getElementsByTagName;
7605
+ exports.getFirstChild = getFirstChild;
7606
+ exports.getFirstElementChild = getFirstElementChild;
7607
+ exports.getLastChild = getLastChild;
7608
+ exports.getLastElementChild = getLastElementChild;
7609
+ exports.getProperty = getProperty;
7610
+ exports.insert = insert;
7611
+ exports.isConnected = isConnected;
7612
+ exports.nextSibling = nextSibling;
7613
+ exports.querySelector = querySelector;
7614
+ exports.querySelectorAll = querySelectorAll;
7615
+ exports.remove = remove;
7616
+ exports.removeAttribute = removeAttribute;
7617
+ exports.removeEventListener = removeEventListener;
7618
+ exports.setAttribute = setAttribute;
7619
+ exports.setCSSStyleProperty = setCSSStyleProperty;
7620
+ exports.setProperty = setProperty;
7621
+ exports.setText = setText;
7622
+
7623
+ return exports;
7624
+
7625
+ })({});
7521
7626
  // Meant to inherit any properties passed via the base renderer as the argument to the factory.
7522
7627
  Object.setPrototypeOf(renderer, baseRenderer);
7523
7628
  return renderer;
@@ -7858,7 +7963,7 @@
7858
7963
  });
7859
7964
  freeze(LightningElement);
7860
7965
  seal(LightningElement.prototype);
7861
- /* version: 2.23.4 */
7966
+ /* version: 2.23.6 */
7862
7967
 
7863
7968
  exports.LightningElement = LightningElement;
7864
7969
  exports.__unstable__ProfilerControl = profilerControl;