lwc 2.45.5 → 2.47.0

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 (65) hide show
  1. package/README.md +5 -11
  2. package/dist/engine-dom/esm/es2017/engine-dom.js +60 -115
  3. package/dist/engine-dom/esm/es2017/engine-dom.js.map +1 -1
  4. package/dist/engine-dom/iife/es2017/engine-dom.js +60 -115
  5. package/dist/engine-dom/iife/es2017/engine-dom.js.map +1 -1
  6. package/dist/engine-dom/iife/es2017/engine-dom.min.js +1 -1
  7. package/dist/engine-dom/iife/es2017/engine-dom_debug.js +58 -113
  8. package/dist/engine-dom/iife/es2017/engine-dom_debug.js.map +1 -1
  9. package/dist/engine-dom/iife/es5/engine-dom.js +54 -110
  10. package/dist/engine-dom/iife/es5/engine-dom.js.map +1 -1
  11. package/dist/engine-dom/iife/es5/engine-dom.min.js +1 -1
  12. package/dist/engine-dom/iife/es5/engine-dom_debug.js +52 -108
  13. package/dist/engine-dom/iife/es5/engine-dom_debug.js.map +1 -1
  14. package/dist/engine-dom/umd/es2017/engine-dom.js +60 -115
  15. package/dist/engine-dom/umd/es2017/engine-dom.js.map +1 -1
  16. package/dist/engine-dom/umd/es2017/engine-dom.min.js +1 -1
  17. package/dist/engine-dom/umd/es2017/engine-dom_debug.js +58 -113
  18. package/dist/engine-dom/umd/es2017/engine-dom_debug.js.map +1 -1
  19. package/dist/engine-dom/umd/es5/engine-dom.js +54 -110
  20. package/dist/engine-dom/umd/es5/engine-dom.js.map +1 -1
  21. package/dist/engine-dom/umd/es5/engine-dom.min.js +1 -1
  22. package/dist/engine-dom/umd/es5/engine-dom_debug.js +52 -108
  23. package/dist/engine-dom/umd/es5/engine-dom_debug.js.map +1 -1
  24. package/dist/engine-server/commonjs/es2017/engine-server.js +58 -114
  25. package/dist/engine-server/commonjs/es2017/engine-server.js.map +1 -1
  26. package/dist/engine-server/commonjs/es2017/engine-server.min.js +1 -1
  27. package/dist/engine-server/esm/es2017/engine-server.js +58 -114
  28. package/dist/engine-server/esm/es2017/engine-server.js.map +1 -1
  29. package/dist/synthetic-shadow/esm/es2017/synthetic-shadow.js +3 -3
  30. package/dist/synthetic-shadow/esm/es2017/synthetic-shadow.js.map +1 -1
  31. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow.js +3 -3
  32. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow.js.map +1 -1
  33. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow_debug.js +3 -3
  34. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow_debug.js.map +1 -1
  35. package/dist/synthetic-shadow/iife/es5/synthetic-shadow.js +3 -3
  36. package/dist/synthetic-shadow/iife/es5/synthetic-shadow.js.map +1 -1
  37. package/dist/synthetic-shadow/iife/es5/synthetic-shadow_debug.js +3 -3
  38. package/dist/synthetic-shadow/iife/es5/synthetic-shadow_debug.js.map +1 -1
  39. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow.js +3 -3
  40. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow.js.map +1 -1
  41. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow_debug.js +3 -3
  42. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow_debug.js.map +1 -1
  43. package/dist/synthetic-shadow/umd/es5/synthetic-shadow.js +3 -3
  44. package/dist/synthetic-shadow/umd/es5/synthetic-shadow.js.map +1 -1
  45. package/dist/synthetic-shadow/umd/es5/synthetic-shadow_debug.js +3 -3
  46. package/dist/synthetic-shadow/umd/es5/synthetic-shadow_debug.js.map +1 -1
  47. package/dist/wire-service/esm/es2017/wire-service.js +2 -2
  48. package/dist/wire-service/esm/es2017/wire-service.js.map +1 -1
  49. package/dist/wire-service/iife/es2017/wire-service.js +2 -2
  50. package/dist/wire-service/iife/es2017/wire-service.js.map +1 -1
  51. package/dist/wire-service/iife/es2017/wire-service_debug.js +2 -2
  52. package/dist/wire-service/iife/es2017/wire-service_debug.js.map +1 -1
  53. package/dist/wire-service/iife/es5/wire-service.js +2 -2
  54. package/dist/wire-service/iife/es5/wire-service.js.map +1 -1
  55. package/dist/wire-service/iife/es5/wire-service_debug.js +2 -2
  56. package/dist/wire-service/iife/es5/wire-service_debug.js.map +1 -1
  57. package/dist/wire-service/umd/es2017/wire-service.js +2 -2
  58. package/dist/wire-service/umd/es2017/wire-service.js.map +1 -1
  59. package/dist/wire-service/umd/es2017/wire-service_debug.js +2 -2
  60. package/dist/wire-service/umd/es2017/wire-service_debug.js.map +1 -1
  61. package/dist/wire-service/umd/es5/wire-service.js +2 -2
  62. package/dist/wire-service/umd/es5/wire-service.js.map +1 -1
  63. package/dist/wire-service/umd/es5/wire-service_debug.js +2 -2
  64. package/dist/wire-service/umd/es5/wire-service_debug.js.map +1 -1
  65. package/package.json +7 -7
@@ -215,7 +215,6 @@ var LWC = (function (exports) {
215
215
  AriaPropNameToAttrNameMap: AriaPropNameToAttrNameMap
216
216
  };
217
217
  }(),
218
- AriaAttrNameToPropNameMap = _ref.AriaAttrNameToPropNameMap,
219
218
  AriaPropNameToAttrNameMap = _ref.AriaPropNameToAttrNameMap;
220
219
  // These attributes take either an ID or a list of IDs as values.
221
220
  // This includes aria-* attributes as well as the special non-ARIA "for" attribute
@@ -258,41 +257,18 @@ var LWC = (function (exports) {
258
257
  * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
259
258
  */
260
259
  var CAMEL_REGEX = /-([a-z])/g;
261
- // Convoluted map generation so that @lwc/shared remains fully tree-shakable (verify-treeshakable)
262
- var _ref2 = /*#__PURE__*/function () {
263
- /**
264
- * Map composed of properties to attributes not following the HTML property to attribute mapping
265
- * convention.
266
- */
267
- var NO_STANDARD_PROPERTY_ATTRIBUTE_MAPPING = new Map([['accessKey', 'accesskey'], ['readOnly', 'readonly'], ['tabIndex', 'tabindex'], ['bgColor', 'bgcolor'], ['colSpan', 'colspan'], ['rowSpan', 'rowspan'], ['contentEditable', 'contenteditable'], ['crossOrigin', 'crossorigin'], ['dateTime', 'datetime'], ['formAction', 'formaction'], ['isMap', 'ismap'], ['maxLength', 'maxlength'], ['minLength', 'minlength'], ['noValidate', 'novalidate'], ['useMap', 'usemap'], ['htmlFor', 'for']]);
268
- /**
269
- * Inverted map with attribute name key and property name value.
270
- */
271
- var NO_STANDARD_ATTRIBUTE_PROPERTY_MAPPING = new Map();
272
- NO_STANDARD_PROPERTY_ATTRIBUTE_MAPPING.forEach(function (value, key) {
273
- return NO_STANDARD_ATTRIBUTE_PROPERTY_MAPPING.set(value, key);
274
- });
275
- return {
276
- NO_STANDARD_ATTRIBUTE_PROPERTY_MAPPING: NO_STANDARD_ATTRIBUTE_PROPERTY_MAPPING,
277
- NO_STANDARD_PROPERTY_ATTRIBUTE_MAPPING: NO_STANDARD_PROPERTY_ATTRIBUTE_MAPPING
278
- };
279
- }(),
280
- NO_STANDARD_ATTRIBUTE_PROPERTY_MAPPING = _ref2.NO_STANDARD_ATTRIBUTE_PROPERTY_MAPPING,
281
- NO_STANDARD_PROPERTY_ATTRIBUTE_MAPPING = _ref2.NO_STANDARD_PROPERTY_ATTRIBUTE_MAPPING;
260
+ // These are HTML standard prop/attribute IDL mappings, but are not predictable based on camel/kebab-case conversion
261
+ var SPECIAL_PROPERTY_ATTRIBUTE_MAPPING = /*@__PURE__@*/new Map([['accessKey', 'accesskey'], ['readOnly', 'readonly'], ['tabIndex', 'tabindex'], ['bgColor', 'bgcolor'], ['colSpan', 'colspan'], ['rowSpan', 'rowspan'], ['contentEditable', 'contenteditable'], ['crossOrigin', 'crossorigin'], ['dateTime', 'datetime'], ['formAction', 'formaction'], ['isMap', 'ismap'], ['maxLength', 'maxlength'], ['minLength', 'minlength'], ['noValidate', 'novalidate'], ['useMap', 'usemap'], ['htmlFor', 'for']]);
282
262
  /**
283
263
  * Map associating previously transformed HTML property into HTML attribute.
284
264
  */
285
265
  var CACHED_PROPERTY_ATTRIBUTE_MAPPING = /*@__PURE__@*/new Map();
286
- /**
287
- * Map associating previously transformed HTML attribute into HTML property.
288
- */
289
- var CACHED_ATTRIBUTE_PROPERTY_MAPPING = /*@__PURE__@*/new Map();
290
266
  function htmlPropertyToAttribute(propName) {
291
267
  var ariaAttributeName = AriaPropNameToAttrNameMap[propName];
292
268
  if (!isUndefined$1(ariaAttributeName)) {
293
269
  return ariaAttributeName;
294
270
  }
295
- var specialAttributeName = NO_STANDARD_PROPERTY_ATTRIBUTE_MAPPING.get(propName);
271
+ var specialAttributeName = SPECIAL_PROPERTY_ATTRIBUTE_MAPPING.get(propName);
296
272
  if (!isUndefined$1(specialAttributeName)) {
297
273
  return specialAttributeName;
298
274
  }
@@ -315,24 +291,19 @@ var LWC = (function (exports) {
315
291
  CACHED_PROPERTY_ATTRIBUTE_MAPPING.set(propName, attributeName);
316
292
  return attributeName;
317
293
  }
318
- function htmlAttributeToProperty(attrName) {
319
- var ariaPropertyName = AriaAttrNameToPropNameMap[attrName];
320
- if (!isUndefined$1(ariaPropertyName)) {
321
- return ariaPropertyName;
322
- }
323
- var specialPropertyName = NO_STANDARD_ATTRIBUTE_PROPERTY_MAPPING.get(attrName);
324
- if (!isUndefined$1(specialPropertyName)) {
325
- return specialPropertyName;
326
- }
327
- var cachedPropertyName = CACHED_ATTRIBUTE_PROPERTY_MAPPING.get(attrName);
328
- if (!isUndefined$1(cachedPropertyName)) {
329
- return cachedPropertyName;
294
+ /**
295
+ * Map associating previously transformed kabab-case attributes into camel-case props.
296
+ */
297
+ var CACHED_KEBAB_CAMEL_MAPPING = /*@__PURE__@*/new Map();
298
+ function kebabCaseToCamelCase(attrName) {
299
+ var result = CACHED_KEBAB_CAMEL_MAPPING.get(attrName);
300
+ if (isUndefined$1(result)) {
301
+ result = StringReplace.call(attrName, CAMEL_REGEX, function (g) {
302
+ return g[1].toUpperCase();
303
+ });
304
+ CACHED_KEBAB_CAMEL_MAPPING.set(attrName, result);
330
305
  }
331
- var propertyName = StringReplace.call(attrName, CAMEL_REGEX, function (g) {
332
- return g[1].toUpperCase();
333
- });
334
- CACHED_ATTRIBUTE_PROPERTY_MAPPING.set(attrName, propertyName);
335
- return propertyName;
306
+ return result;
336
307
  }
337
308
 
338
309
  /*
@@ -342,9 +313,9 @@ var LWC = (function (exports) {
342
313
  * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
343
314
  */
344
315
  // Increment whenever the LWC template compiler changes
345
- var LWC_VERSION = "2.45.5";
316
+ var LWC_VERSION = "2.47.0";
346
317
  var LWC_VERSION_COMMENT_REGEX = /\/\*LWC compiler v([\d.]+)\*\/\s*}/;
347
- /** version: 2.45.5 */
318
+ /** version: 2.47.0 */
348
319
 
349
320
  /* proxy-compat-disable */
350
321
  /**
@@ -425,7 +396,7 @@ var LWC = (function (exports) {
425
396
  setFeatureFlag(name, value);
426
397
  }
427
398
  }
428
- /** version: 2.45.5 */
399
+ /** version: 2.47.0 */
429
400
 
430
401
  /* proxy-compat-disable */
431
402
  /**
@@ -490,7 +461,7 @@ var LWC = (function (exports) {
490
461
  }
491
462
  }
492
463
  }
493
- /** version: 2.45.5 */
464
+ /** version: 2.47.0 */
494
465
 
495
466
  /*
496
467
  * Copyright (c) 2018, salesforce.com, inc.
@@ -4082,27 +4053,37 @@ var LWC = (function (exports) {
4082
4053
  * SPDX-License-Identifier: MIT
4083
4054
  * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
4084
4055
  */
4085
- var ColonCharCode$1 = 58;
4056
+ var ColonCharCode = 58;
4086
4057
  function patchAttributes(oldVnode, vnode, renderer) {
4087
- var attrs = vnode.data.attrs;
4058
+ var _vnode$data = vnode.data,
4059
+ attrs = _vnode$data.attrs,
4060
+ external = _vnode$data.external;
4088
4061
  if (isUndefined$1(attrs)) {
4089
4062
  return;
4090
4063
  }
4091
4064
  var oldAttrs = isNull(oldVnode) ? EmptyObject : oldVnode.data.attrs;
4065
+ // Attrs may be the same due to the static content optimization, so we can skip diffing
4092
4066
  if (oldAttrs === attrs) {
4093
4067
  return;
4094
4068
  }
4095
4069
  var elm = vnode.elm;
4096
4070
  var setAttribute = renderer.setAttribute,
4097
- removeAttribute = renderer.removeAttribute;
4071
+ removeAttribute = renderer.removeAttribute,
4072
+ setProperty = renderer.setProperty;
4098
4073
  for (var key in attrs) {
4099
4074
  var cur = attrs[key];
4100
4075
  var old = oldAttrs[key];
4101
4076
  if (old !== cur) {
4102
- if (StringCharCodeAt.call(key, 3) === ColonCharCode$1) {
4077
+ var _propName2 = void 0;
4078
+ // For external custom elements, sniff to see if the attr should be considered a prop.
4079
+ // Use kebabCaseToCamelCase directly because we don't want to set props like `ariaLabel` or `tabIndex`
4080
+ // on a custom element versus just using the more reliable attribute format.
4081
+ if (external && (_propName2 = kebabCaseToCamelCase(key)) in elm) {
4082
+ setProperty(elm, _propName2, cur);
4083
+ } else if (StringCharCodeAt.call(key, 3) === ColonCharCode) {
4103
4084
  // Assume xml namespace
4104
4085
  setAttribute(elm, key, cur, XML_NAMESPACE);
4105
- } else if (StringCharCodeAt.call(key, 5) === ColonCharCode$1) {
4086
+ } else if (StringCharCodeAt.call(key, 5) === ColonCharCode) {
4106
4087
  // Assume xlink namespace
4107
4088
  setAttribute(elm, key, cur, XLINK_NAMESPACE);
4108
4089
  } else if (isNull(cur) || isUndefined$1(cur)) {
@@ -4114,45 +4095,6 @@ var LWC = (function (exports) {
4114
4095
  }
4115
4096
  }
4116
4097
 
4117
- /*
4118
- * Copyright (c) 2018, salesforce.com, inc.
4119
- * All rights reserved.
4120
- * SPDX-License-Identifier: MIT
4121
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
4122
- */
4123
- var ColonCharCode = 58;
4124
- function patchAttrUnlessProp(oldVnode, vnode, renderer) {
4125
- var attrs = vnode.data.attrs,
4126
- elm = vnode.elm;
4127
- if (isUndefined$1(attrs)) {
4128
- return;
4129
- }
4130
- var removeAttribute = renderer.removeAttribute,
4131
- setAttribute = renderer.setAttribute,
4132
- setProperty = renderer.setProperty;
4133
- var oldAttrs = isNull(oldVnode) ? EmptyObject : oldVnode.data.attrs;
4134
- for (var name in attrs) {
4135
- var cur = attrs[name];
4136
- var old = oldAttrs[name];
4137
- if (old !== cur) {
4138
- var _propName2 = htmlAttributeToProperty(name);
4139
- if (_propName2 in elm) {
4140
- setProperty(elm, name, cur);
4141
- } else if (StringCharCodeAt.call(name, 3) === ColonCharCode) {
4142
- // Assume xml namespace
4143
- setAttribute(elm, name, cur, XML_NAMESPACE);
4144
- } else if (StringCharCodeAt.call(name, 5) === ColonCharCode) {
4145
- // Assume xlink namespace
4146
- setAttribute(elm, name, cur, XLINK_NAMESPACE);
4147
- } else if (isNull(cur) || isUndefined$1(cur)) {
4148
- removeAttribute(elm, name);
4149
- } else {
4150
- setAttribute(elm, name, cur);
4151
- }
4152
- }
4153
- }
4154
- }
4155
-
4156
4098
  /*
4157
4099
  * Copyright (c) 2018, salesforce.com, inc.
4158
4100
  * All rights reserved.
@@ -4174,6 +4116,7 @@ var LWC = (function (exports) {
4174
4116
  if (!isNull(oldVnode)) {
4175
4117
  oldProps = oldVnode.data.props;
4176
4118
  var oldSpread = oldVnode.data.spread;
4119
+ // Props may be the same due to the static content optimization, so we can skip diffing
4177
4120
  if (oldProps === props && oldSpread === spread) {
4178
4121
  return;
4179
4122
  }
@@ -4306,8 +4249,9 @@ var LWC = (function (exports) {
4306
4249
  * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
4307
4250
  */
4308
4251
  function applyEventListeners(vnode, renderer) {
4309
- var elm = vnode.elm,
4310
- on = vnode.data.on;
4252
+ var _a;
4253
+ var elm = vnode.elm;
4254
+ var on = (_a = vnode.data) === null || _a === void 0 ? void 0 : _a.on;
4311
4255
  if (isUndefined$1(on)) {
4312
4256
  return;
4313
4257
  }
@@ -4530,6 +4474,8 @@ var LWC = (function (exports) {
4530
4474
  }
4531
4475
  }
4532
4476
  insertNode(elm, parent, anchor, renderer);
4477
+ // Event listeners are only applied once when mounting, so they are allowed for static vnodes
4478
+ applyEventListeners(vnode, renderer);
4533
4479
  }
4534
4480
  function mountCustomElement(vnode, parent, anchor, renderer) {
4535
4481
  var sel = vnode.sel,
@@ -4767,11 +4713,7 @@ var LWC = (function (exports) {
4767
4713
  // value is set before type=radio.
4768
4714
  patchClassAttribute(oldVnode, vnode, renderer);
4769
4715
  patchStyleAttribute(oldVnode, vnode, renderer);
4770
- if (vnode.data.external) {
4771
- patchAttrUnlessProp(oldVnode, vnode, renderer);
4772
- } else {
4773
- patchAttributes(oldVnode, vnode, renderer);
4774
- }
4716
+ patchAttributes(oldVnode, vnode, renderer);
4775
4717
  patchProps(oldVnode, vnode, renderer);
4776
4718
  }
4777
4719
  function applyStyleScoping(elm, owner, renderer) {
@@ -5161,14 +5103,15 @@ var LWC = (function (exports) {
5161
5103
  };
5162
5104
  }
5163
5105
  // [st]atic node
5164
- function st(fragment, key) {
5106
+ function st(fragment, key, data) {
5165
5107
  return {
5166
5108
  type: 4 /* VNodeType.Static */,
5167
5109
  sel: undefined,
5168
5110
  key: key,
5169
5111
  elm: undefined,
5170
5112
  fragment: fragment,
5171
- owner: getVMBeingRendered()
5113
+ owner: getVMBeingRendered(),
5114
+ data: data
5172
5115
  };
5173
5116
  }
5174
5117
  // [fr]agment node
@@ -7110,6 +7053,7 @@ var LWC = (function (exports) {
7110
7053
  return handleMismatch(elm, vnode, renderer);
7111
7054
  }
7112
7055
  vnode.elm = elm;
7056
+ applyEventListeners(vnode, renderer);
7113
7057
  return elm;
7114
7058
  }
7115
7059
  function hydrateFragment(elm, vnode, renderer) {
@@ -7386,9 +7330,9 @@ var LWC = (function (exports) {
7386
7330
  return nodesAreCompatible;
7387
7331
  }
7388
7332
  function validateStyleAttr(vnode, elm, renderer) {
7389
- var _vnode$data = vnode.data,
7390
- style = _vnode$data.style,
7391
- styleDecls = _vnode$data.styleDecls;
7333
+ var _vnode$data2 = vnode.data,
7334
+ style = _vnode$data2.style,
7335
+ styleDecls = _vnode$data2.styleDecls;
7392
7336
  var getAttribute = renderer.getAttribute;
7393
7337
  var elmStyle = getAttribute(elm, 'style') || '';
7394
7338
  var vnodeStyle;
@@ -7750,7 +7694,7 @@ var LWC = (function (exports) {
7750
7694
  }
7751
7695
  return getReadOnlyProxy(obj);
7752
7696
  }
7753
- /** version: 2.45.5 */
7697
+ /** version: 2.47.0 */
7754
7698
 
7755
7699
  /*
7756
7700
  * Copyright (c) 2018, salesforce.com, inc.
@@ -8178,7 +8122,7 @@ var LWC = (function (exports) {
8178
8122
  function isNull(obj) {
8179
8123
  return obj === null;
8180
8124
  }
8181
- /** version: 2.45.5 */
8125
+ /** version: 2.47.0 */
8182
8126
 
8183
8127
  /*
8184
8128
  * Copyright (c) 2023, salesforce.com, inc.
@@ -8189,10 +8133,10 @@ var LWC = (function (exports) {
8189
8133
  var WireContextSubscriptionEvent = /*#__PURE__*/function (_CustomEvent) {
8190
8134
  _inherits(WireContextSubscriptionEvent, _CustomEvent);
8191
8135
  var _super6 = _createSuper(WireContextSubscriptionEvent);
8192
- function WireContextSubscriptionEvent(adapterToken, _ref5) {
8136
+ function WireContextSubscriptionEvent(adapterToken, _ref4) {
8193
8137
  var _this3;
8194
- var setNewContext = _ref5.setNewContext,
8195
- setDisconnectedCallback = _ref5.setDisconnectedCallback;
8138
+ var setNewContext = _ref4.setNewContext,
8139
+ setDisconnectedCallback = _ref4.setDisconnectedCallback;
8196
8140
  _classCallCheck(this, WireContextSubscriptionEvent);
8197
8141
  _this3 = _super6.call(this, adapterToken, {
8198
8142
  bubbles: true,
@@ -8820,7 +8764,7 @@ var LWC = (function (exports) {
8820
8764
  });
8821
8765
  });
8822
8766
  }
8823
- /** version: 2.45.5 */
8767
+ /** version: 2.47.0 */
8824
8768
 
8825
8769
  exports.LightningElement = LightningElement;
8826
8770
  exports.__unstable__ProfilerControl = profilerControl;