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
@@ -299,9 +299,9 @@ function htmlPropertyToAttribute(propName) {
299
299
  * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
300
300
  */
301
301
  // Increment whenever the LWC template compiler changes
302
- const LWC_VERSION = "2.23.4";
302
+ const LWC_VERSION = "2.23.6";
303
303
  const LWC_VERSION_COMMENT_REGEX = /\/\*LWC compiler v([\d.]+)\*\/\s*}/;
304
- /** version: 2.23.4 */
304
+ /** version: 2.23.6 */
305
305
 
306
306
  /**
307
307
  * Copyright (C) 2018 salesforce.com, inc.
@@ -383,7 +383,7 @@ for (let i = 0, len = ElementPrototypeAriaPropertyNames.length; i < len; i += 1)
383
383
  patch$1(propName);
384
384
  }
385
385
  }
386
- /** version: 2.23.4 */
386
+ /** version: 2.23.6 */
387
387
 
388
388
  /**
389
389
  * Copyright (C) 2018 salesforce.com, inc.
@@ -408,6 +408,7 @@ const features = {
408
408
  ENABLE_NODE_PATCH: null,
409
409
  ENABLE_REACTIVE_SETTER: null,
410
410
  ENABLE_WIRE_SYNC_EMIT: null,
411
+ ENABLE_LIGHT_GET_ROOT_NODE_PATCH: null,
411
412
  };
412
413
  if (!_globalThis.lwcRuntimeFlags) {
413
414
  Object.defineProperty(_globalThis, 'lwcRuntimeFlags', { value: create(null) });
@@ -461,7 +462,7 @@ function setFeatureFlagForTest(name, value) {
461
462
  setFeatureFlag(name, value);
462
463
  }
463
464
  }
464
- /** version: 2.23.4 */
465
+ /** version: 2.23.6 */
465
466
 
466
467
  /*
467
468
  * Copyright (c) 2018, salesforce.com, inc.
@@ -3908,6 +3909,12 @@ function patch(n1, n2, parent, renderer) {
3908
3909
  n2.elm = n1.elm;
3909
3910
  break;
3910
3911
 
3912
+ case 5
3913
+ /* VNodeType.Fragment */
3914
+ :
3915
+ patchFragment(n1, n2, parent, renderer);
3916
+ break;
3917
+
3911
3918
  case 2
3912
3919
  /* VNodeType.Element */
3913
3920
  :
@@ -3947,6 +3954,12 @@ function mount(node, parent, renderer, anchor) {
3947
3954
  mountStatic(node, parent, anchor, renderer);
3948
3955
  break;
3949
3956
 
3957
+ case 5
3958
+ /* VNodeType.Fragment */
3959
+ :
3960
+ mountFragment(node, parent, anchor, renderer);
3961
+ break;
3962
+
3950
3963
  case 2
3951
3964
  /* VNodeType.Element */
3952
3965
  :
@@ -4004,6 +4017,31 @@ function mountComment(vnode, parent, anchor, renderer) {
4004
4017
  insertNode(commentNode, parent, anchor, renderer);
4005
4018
  }
4006
4019
 
4020
+ function mountFragment(vnode, parent, anchor, renderer) {
4021
+ const {
4022
+ children
4023
+ } = vnode;
4024
+ mountVNodes(children, parent, renderer, anchor); // children of a fragment will always have at least the two delimiters.
4025
+
4026
+ vnode.elm = children[children.length - 1].elm;
4027
+ }
4028
+
4029
+ function patchFragment(n1, n2, parent, renderer) {
4030
+ const {
4031
+ children,
4032
+ stable
4033
+ } = n2;
4034
+
4035
+ if (stable) {
4036
+ updateStaticChildren(n1.children, children, parent, renderer);
4037
+ } else {
4038
+ updateDynamicChildren(n1.children, children, parent, renderer);
4039
+ } // Note: not reusing n1.elm, because during patching, it may be patched with another text node.
4040
+
4041
+
4042
+ n2.elm = children[children.length - 1].elm;
4043
+ }
4044
+
4007
4045
  function mountElement(vnode, parent, anchor, renderer) {
4008
4046
  const {
4009
4047
  sel,
@@ -4167,9 +4205,15 @@ function unmount(vnode, parent, renderer, doRemove = false) {
4167
4205
  // subtree root, is the only element worth unmounting from the subtree.
4168
4206
 
4169
4207
  if (doRemove) {
4170
- // The vnode might or might not have a data.renderer associated to it
4171
- // but the removal used here is from the owner instead.
4172
- removeNode(elm, parent, renderer);
4208
+ if (type === 5
4209
+ /* VNodeType.Fragment */
4210
+ ) {
4211
+ unmountVNodes(vnode.children, parent, renderer, doRemove);
4212
+ } else {
4213
+ // The vnode might or might not have a data.renderer associated to it
4214
+ // but the removal used here is from the owner instead.
4215
+ removeNode(elm, parent, renderer);
4216
+ }
4173
4217
  }
4174
4218
 
4175
4219
  switch (type) {
@@ -4676,6 +4720,18 @@ function st(fragment, key) {
4676
4720
  owner: getVMBeingRendered(),
4677
4721
  };
4678
4722
  }
4723
+ // [fr]agment node
4724
+ function fr(key, children, stable) {
4725
+ return {
4726
+ type: 5 /* VNodeType.Fragment */,
4727
+ sel: undefined,
4728
+ key,
4729
+ elm: undefined,
4730
+ children: [t(''), ...children, t('')],
4731
+ stable,
4732
+ owner: getVMBeingRendered(),
4733
+ };
4734
+ }
4679
4735
  // [h]tml node
4680
4736
  function h(sel, data, children = EmptyArray) {
4681
4737
  const vmBeingRendered = getVMBeingRendered();
@@ -4895,13 +4951,13 @@ function t(text) {
4895
4951
  }
4896
4952
  // [co]mment node
4897
4953
  function co(text) {
4898
- let sel, key, elm;
4954
+ let sel, elm;
4899
4955
  return {
4900
4956
  type: 1 /* VNodeType.Comment */,
4901
4957
  sel,
4902
4958
  text,
4903
4959
  elm,
4904
- key,
4960
+ key: 'c',
4905
4961
  owner: getVMBeingRendered(),
4906
4962
  };
4907
4963
  }
@@ -5046,6 +5102,7 @@ const api = freeze({
5046
5102
  k,
5047
5103
  co,
5048
5104
  dc,
5105
+ fr,
5049
5106
  ti,
5050
5107
  st,
5051
5108
  gid,
@@ -6598,6 +6655,10 @@ function hydrateNode(node, vnode, renderer) {
6598
6655
  // VStatic are cacheable and cannot have custom renderer associated to them
6599
6656
  hydratedNode = hydrateStaticElement(node, vnode, renderer);
6600
6657
  break;
6658
+ case 5 /* VNodeType.Fragment */:
6659
+ // a fragment does not represent any element, therefore there is no need to use a custom renderer.
6660
+ hydratedNode = hydrateFragment(node, vnode, renderer);
6661
+ break;
6601
6662
  case 2 /* VNodeType.Element */:
6602
6663
  hydratedNode = hydrateElement(node, vnode, (_a = vnode.data.renderer) !== null && _a !== void 0 ? _a : renderer);
6603
6664
  break;
@@ -6649,6 +6710,11 @@ function hydrateStaticElement(elm, vnode, renderer) {
6649
6710
  vnode.elm = elm;
6650
6711
  return elm;
6651
6712
  }
6713
+ function hydrateFragment(elm, vnode, renderer) {
6714
+ const { children, owner } = vnode;
6715
+ hydrateChildren(elm, children, renderer.getProperty(elm, 'parentNode'), owner);
6716
+ return (vnode.elm = children[children.length - 1].elm);
6717
+ }
6652
6718
  function hydrateElement(elm, vnode, renderer) {
6653
6719
  if (!hasCorrectNodeType(vnode, elm, 1 /* EnvNodeTypes.ELEMENT */, renderer) ||
6654
6720
  !isMatchingElement(vnode, elm, renderer)) {
@@ -7068,7 +7134,7 @@ function getComponentConstructor(elm) {
7068
7134
  }
7069
7135
  return ctor;
7070
7136
  }
7071
- /* version: 2.23.4 */
7137
+ /* version: 2.23.6 */
7072
7138
 
7073
7139
  /*
7074
7140
  * Copyright (c) 2018, salesforce.com, inc.
@@ -7229,20 +7295,59 @@ function insertStylesheet(content, target) {
7229
7295
  * @param baseRenderer Either null or the base renderer imported from 'lwc'.
7230
7296
  */
7231
7297
  function rendererFactory(baseRenderer) {
7232
- // Util functions
7233
- function assertInvariant(value, msg) {
7298
+ const renderer = (function (exports) {
7299
+
7300
+ /**
7301
+ * Copyright (C) 2018 salesforce.com, inc.
7302
+ */
7303
+ /*
7304
+ * Copyright (c) 2018, salesforce.com, inc.
7305
+ * All rights reserved.
7306
+ * SPDX-License-Identifier: MIT
7307
+ * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
7308
+ */
7309
+ function invariant(value, msg) {
7234
7310
  if (!value) {
7235
7311
  throw new Error(`Invariant Violation: ${msg}`);
7236
7312
  }
7237
7313
  }
7238
- function isNull(obj) {
7239
- return obj === null;
7314
+ function isTrue$1(value, msg) {
7315
+ if (!value) {
7316
+ throw new Error(`Assert Violation: ${msg}`);
7317
+ }
7240
7318
  }
7319
+ function isFalse$1(value, msg) {
7320
+ if (value) {
7321
+ throw new Error(`Assert Violation: ${msg}`);
7322
+ }
7323
+ }
7324
+ function fail(msg) {
7325
+ throw new Error(msg);
7326
+ }
7327
+
7328
+ var assert = /*#__PURE__*/Object.freeze({
7329
+ __proto__: null,
7330
+ invariant: invariant,
7331
+ isTrue: isTrue$1,
7332
+ isFalse: isFalse$1,
7333
+ fail: fail
7334
+ });
7241
7335
  function isUndefined(obj) {
7242
7336
  return obj === undefined;
7243
7337
  }
7244
- let getCustomElement;
7245
- let defineCustomElement;
7338
+ function isNull(obj) {
7339
+ return obj === null;
7340
+ }
7341
+ /** version: 2.23.6 */
7342
+
7343
+ /*
7344
+ * Copyright (c) 2018, salesforce.com, inc.
7345
+ * All rights reserved.
7346
+ * SPDX-License-Identifier: MIT
7347
+ * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
7348
+ */
7349
+ exports.getCustomElement = void 0;
7350
+ exports.defineCustomElement = void 0;
7246
7351
  let HTMLElementConstructor;
7247
7352
  function isCustomElementRegistryAvailable() {
7248
7353
  if (typeof customElements === 'undefined') {
@@ -7268,21 +7373,21 @@ function rendererFactory(baseRenderer) {
7268
7373
  }
7269
7374
  }
7270
7375
  if (isCustomElementRegistryAvailable()) {
7271
- getCustomElement = customElements.get.bind(customElements);
7272
- defineCustomElement = customElements.define.bind(customElements);
7376
+ exports.getCustomElement = customElements.get.bind(customElements);
7377
+ exports.defineCustomElement = customElements.define.bind(customElements);
7273
7378
  HTMLElementConstructor = HTMLElement;
7274
7379
  }
7275
7380
  else {
7276
7381
  const registry = Object.create(null);
7277
7382
  const reverseRegistry = new WeakMap();
7278
- defineCustomElement = function define(name, ctor) {
7383
+ exports.defineCustomElement = function define(name, ctor) {
7279
7384
  if (name !== String.prototype.toLowerCase.call(name) || registry[name]) {
7280
7385
  throw new TypeError(`Invalid Registration`);
7281
7386
  }
7282
7387
  registry[name] = ctor;
7283
7388
  reverseRegistry.set(ctor, name);
7284
7389
  };
7285
- getCustomElement = function get(name) {
7390
+ exports.getCustomElement = function get(name) {
7286
7391
  return registry[name];
7287
7392
  };
7288
7393
  HTMLElementConstructor = function HTMLElement() {
@@ -7314,12 +7419,12 @@ function rendererFactory(baseRenderer) {
7314
7419
  function createComment(content) {
7315
7420
  return document.createComment(content);
7316
7421
  }
7317
- let createFragment;
7422
+ exports.createFragment = void 0;
7318
7423
  // IE11 lacks support for this feature
7319
7424
  const SUPPORTS_TEMPLATE = typeof HTMLTemplateElement === 'function';
7320
7425
  if (SUPPORTS_TEMPLATE) {
7321
7426
  // Parse the fragment HTML string into DOM
7322
- createFragment = function (html) {
7427
+ exports.createFragment = function (html) {
7323
7428
  const template = document.createElement('template');
7324
7429
  template.innerHTML = html;
7325
7430
  return template.content.firstChild;
@@ -7351,7 +7456,7 @@ function rendererFactory(baseRenderer) {
7351
7456
  return (/<([a-z][^/\0>\x20\t\r\n\f]+)/i.exec(text) || ['', ''])[1].toLowerCase();
7352
7457
  };
7353
7458
  // Via https://github.com/webcomponents/polyfills/blob/ee1db33/packages/template/template.js#L295-L320
7354
- createFragment = function (html) {
7459
+ exports.createFragment = function (html) {
7355
7460
  const wrapperTags = topLevelWrappingMap[getTagName(html)];
7356
7461
  if (!isUndefined(wrapperTags)) {
7357
7462
  for (const wrapperTag of wrapperTags) {
@@ -7471,47 +7576,47 @@ function rendererFactory(baseRenderer) {
7471
7576
  return node.isConnected;
7472
7577
  }
7473
7578
  function assertInstanceOfHTMLElement(elm, msg) {
7474
- assertInvariant(elm instanceof HTMLElement, msg);
7579
+ assert.invariant(elm instanceof HTMLElement, msg);
7475
7580
  }
7476
7581
  const HTMLElementExported = HTMLElementConstructor;
7477
- const renderer = {
7478
- HTMLElementExported,
7479
- insert,
7480
- remove,
7481
- cloneNode,
7482
- createFragment,
7483
- createElement,
7484
- createText,
7485
- createComment,
7486
- nextSibling,
7487
- attachShadow,
7488
- getProperty,
7489
- setProperty,
7490
- setText,
7491
- getAttribute,
7492
- setAttribute,
7493
- removeAttribute,
7494
- addEventListener,
7495
- removeEventListener,
7496
- dispatchEvent,
7497
- getClassList,
7498
- setCSSStyleProperty,
7499
- getBoundingClientRect,
7500
- querySelector,
7501
- querySelectorAll,
7502
- getElementsByTagName,
7503
- getElementsByClassName,
7504
- getChildren,
7505
- getChildNodes,
7506
- getFirstChild,
7507
- getFirstElementChild,
7508
- getLastChild,
7509
- getLastElementChild,
7510
- isConnected,
7511
- assertInstanceOfHTMLElement,
7512
- defineCustomElement,
7513
- getCustomElement,
7514
- };
7582
+
7583
+ exports.HTMLElementExported = HTMLElementExported;
7584
+ exports.addEventListener = addEventListener;
7585
+ exports.assertInstanceOfHTMLElement = assertInstanceOfHTMLElement;
7586
+ exports.attachShadow = attachShadow;
7587
+ exports.cloneNode = cloneNode;
7588
+ exports.createComment = createComment;
7589
+ exports.createElement = createElement;
7590
+ exports.createText = createText;
7591
+ exports.dispatchEvent = dispatchEvent;
7592
+ exports.getAttribute = getAttribute;
7593
+ exports.getBoundingClientRect = getBoundingClientRect;
7594
+ exports.getChildNodes = getChildNodes;
7595
+ exports.getChildren = getChildren;
7596
+ exports.getClassList = getClassList;
7597
+ exports.getElementsByClassName = getElementsByClassName;
7598
+ exports.getElementsByTagName = getElementsByTagName;
7599
+ exports.getFirstChild = getFirstChild;
7600
+ exports.getFirstElementChild = getFirstElementChild;
7601
+ exports.getLastChild = getLastChild;
7602
+ exports.getLastElementChild = getLastElementChild;
7603
+ exports.getProperty = getProperty;
7604
+ exports.insert = insert;
7605
+ exports.isConnected = isConnected;
7606
+ exports.nextSibling = nextSibling;
7607
+ exports.querySelector = querySelector;
7608
+ exports.querySelectorAll = querySelectorAll;
7609
+ exports.remove = remove;
7610
+ exports.removeAttribute = removeAttribute;
7611
+ exports.removeEventListener = removeEventListener;
7612
+ exports.setAttribute = setAttribute;
7613
+ exports.setCSSStyleProperty = setCSSStyleProperty;
7614
+ exports.setProperty = setProperty;
7615
+ exports.setText = setText;
7616
+
7617
+ return exports;
7618
+
7619
+ })({});
7515
7620
  // Meant to inherit any properties passed via the base renderer as the argument to the factory.
7516
7621
  Object.setPrototypeOf(renderer, baseRenderer);
7517
7622
  return renderer;
@@ -7852,6 +7957,6 @@ defineProperty(LightningElement, 'CustomElementConstructor', {
7852
7957
  });
7853
7958
  freeze(LightningElement);
7854
7959
  seal(LightningElement.prototype);
7855
- /* version: 2.23.4 */
7960
+ /* version: 2.23.6 */
7856
7961
 
7857
7962
  export { LightningElement, profilerControl as __unstable__ProfilerControl, api$1 as api, deprecatedBuildCustomElementConstructor as buildCustomElementConstructor, createContextProvider, createElement, freezeTemplate, getComponentConstructor, getComponentDef, hydrateComponent, isComponentConstructor, isNodeShadowed as isNodeFromTemplate, parseFragment, parseSVGFragment, readonly, register, registerComponent, registerDecorators, registerTemplate, renderer, rendererFactory, sanitizeAttribute, setFeatureFlag, setFeatureFlagForTest, setHooks, swapComponent, swapStyle, swapTemplate, track, unwrap, wire };