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
@@ -211,7 +211,6 @@ var LWC = (function (exports) {
211
211
  AriaPropNameToAttrNameMap: AriaPropNameToAttrNameMap
212
212
  };
213
213
  }(),
214
- AriaAttrNameToPropNameMap = _ref.AriaAttrNameToPropNameMap,
215
214
  AriaPropNameToAttrNameMap = _ref.AriaPropNameToAttrNameMap;
216
215
  // These attributes take either an ID or a list of IDs as values.
217
216
  // This includes aria-* attributes as well as the special non-ARIA "for" attribute
@@ -254,41 +253,18 @@ var LWC = (function (exports) {
254
253
  * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
255
254
  */
256
255
  var CAMEL_REGEX = /-([a-z])/g;
257
- // Convoluted map generation so that @lwc/shared remains fully tree-shakable (verify-treeshakable)
258
- var _ref2 = /*#__PURE__*/function () {
259
- /**
260
- * Map composed of properties to attributes not following the HTML property to attribute mapping
261
- * convention.
262
- */
263
- 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']]);
264
- /**
265
- * Inverted map with attribute name key and property name value.
266
- */
267
- var NO_STANDARD_ATTRIBUTE_PROPERTY_MAPPING = new Map();
268
- NO_STANDARD_PROPERTY_ATTRIBUTE_MAPPING.forEach(function (value, key) {
269
- return NO_STANDARD_ATTRIBUTE_PROPERTY_MAPPING.set(value, key);
270
- });
271
- return {
272
- NO_STANDARD_ATTRIBUTE_PROPERTY_MAPPING: NO_STANDARD_ATTRIBUTE_PROPERTY_MAPPING,
273
- NO_STANDARD_PROPERTY_ATTRIBUTE_MAPPING: NO_STANDARD_PROPERTY_ATTRIBUTE_MAPPING
274
- };
275
- }(),
276
- NO_STANDARD_ATTRIBUTE_PROPERTY_MAPPING = _ref2.NO_STANDARD_ATTRIBUTE_PROPERTY_MAPPING,
277
- NO_STANDARD_PROPERTY_ATTRIBUTE_MAPPING = _ref2.NO_STANDARD_PROPERTY_ATTRIBUTE_MAPPING;
256
+ // These are HTML standard prop/attribute IDL mappings, but are not predictable based on camel/kebab-case conversion
257
+ 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']]);
278
258
  /**
279
259
  * Map associating previously transformed HTML property into HTML attribute.
280
260
  */
281
261
  var CACHED_PROPERTY_ATTRIBUTE_MAPPING = /*@__PURE__@*/new Map();
282
- /**
283
- * Map associating previously transformed HTML attribute into HTML property.
284
- */
285
- var CACHED_ATTRIBUTE_PROPERTY_MAPPING = /*@__PURE__@*/new Map();
286
262
  function htmlPropertyToAttribute(propName) {
287
263
  var ariaAttributeName = AriaPropNameToAttrNameMap[propName];
288
264
  if (!isUndefined$1(ariaAttributeName)) {
289
265
  return ariaAttributeName;
290
266
  }
291
- var specialAttributeName = NO_STANDARD_PROPERTY_ATTRIBUTE_MAPPING.get(propName);
267
+ var specialAttributeName = SPECIAL_PROPERTY_ATTRIBUTE_MAPPING.get(propName);
292
268
  if (!isUndefined$1(specialAttributeName)) {
293
269
  return specialAttributeName;
294
270
  }
@@ -311,26 +287,21 @@ var LWC = (function (exports) {
311
287
  CACHED_PROPERTY_ATTRIBUTE_MAPPING.set(propName, attributeName);
312
288
  return attributeName;
313
289
  }
314
- function htmlAttributeToProperty(attrName) {
315
- var ariaPropertyName = AriaAttrNameToPropNameMap[attrName];
316
- if (!isUndefined$1(ariaPropertyName)) {
317
- return ariaPropertyName;
318
- }
319
- var specialPropertyName = NO_STANDARD_ATTRIBUTE_PROPERTY_MAPPING.get(attrName);
320
- if (!isUndefined$1(specialPropertyName)) {
321
- return specialPropertyName;
322
- }
323
- var cachedPropertyName = CACHED_ATTRIBUTE_PROPERTY_MAPPING.get(attrName);
324
- if (!isUndefined$1(cachedPropertyName)) {
325
- return cachedPropertyName;
290
+ /**
291
+ * Map associating previously transformed kabab-case attributes into camel-case props.
292
+ */
293
+ var CACHED_KEBAB_CAMEL_MAPPING = /*@__PURE__@*/new Map();
294
+ function kebabCaseToCamelCase(attrName) {
295
+ var result = CACHED_KEBAB_CAMEL_MAPPING.get(attrName);
296
+ if (isUndefined$1(result)) {
297
+ result = StringReplace.call(attrName, CAMEL_REGEX, function (g) {
298
+ return g[1].toUpperCase();
299
+ });
300
+ CACHED_KEBAB_CAMEL_MAPPING.set(attrName, result);
326
301
  }
327
- var propertyName = StringReplace.call(attrName, CAMEL_REGEX, function (g) {
328
- return g[1].toUpperCase();
329
- });
330
- CACHED_ATTRIBUTE_PROPERTY_MAPPING.set(attrName, propertyName);
331
- return propertyName;
302
+ return result;
332
303
  }
333
- /** version: 2.45.5 */
304
+ /** version: 2.47.0 */
334
305
 
335
306
  /* proxy-compat-disable */
336
307
  /**
@@ -402,7 +373,7 @@ var LWC = (function (exports) {
402
373
  */
403
374
  function setFeatureFlagForTest(name, value) {
404
375
  }
405
- /** version: 2.45.5 */
376
+ /** version: 2.47.0 */
406
377
 
407
378
  /* proxy-compat-disable */
408
379
  /**
@@ -467,7 +438,7 @@ var LWC = (function (exports) {
467
438
  }
468
439
  }
469
440
  }
470
- /** version: 2.45.5 */
441
+ /** version: 2.47.0 */
471
442
 
472
443
  /*
473
444
  * Copyright (c) 2018, salesforce.com, inc.
@@ -3181,27 +3152,37 @@ var LWC = (function (exports) {
3181
3152
  * SPDX-License-Identifier: MIT
3182
3153
  * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
3183
3154
  */
3184
- var ColonCharCode$1 = 58;
3155
+ var ColonCharCode = 58;
3185
3156
  function patchAttributes(oldVnode, vnode, renderer) {
3186
- var attrs = vnode.data.attrs;
3157
+ var _vnode$data = vnode.data,
3158
+ attrs = _vnode$data.attrs,
3159
+ external = _vnode$data.external;
3187
3160
  if (isUndefined$1(attrs)) {
3188
3161
  return;
3189
3162
  }
3190
3163
  var oldAttrs = isNull(oldVnode) ? EmptyObject : oldVnode.data.attrs;
3164
+ // Attrs may be the same due to the static content optimization, so we can skip diffing
3191
3165
  if (oldAttrs === attrs) {
3192
3166
  return;
3193
3167
  }
3194
3168
  var elm = vnode.elm;
3195
3169
  var setAttribute = renderer.setAttribute,
3196
- removeAttribute = renderer.removeAttribute;
3170
+ removeAttribute = renderer.removeAttribute,
3171
+ setProperty = renderer.setProperty;
3197
3172
  for (var key in attrs) {
3198
3173
  var cur = attrs[key];
3199
3174
  var old = oldAttrs[key];
3200
3175
  if (old !== cur) {
3201
- if (StringCharCodeAt.call(key, 3) === ColonCharCode$1) {
3176
+ var _propName2 = void 0;
3177
+ // For external custom elements, sniff to see if the attr should be considered a prop.
3178
+ // Use kebabCaseToCamelCase directly because we don't want to set props like `ariaLabel` or `tabIndex`
3179
+ // on a custom element versus just using the more reliable attribute format.
3180
+ if (external && (_propName2 = kebabCaseToCamelCase(key)) in elm) {
3181
+ setProperty(elm, _propName2, cur);
3182
+ } else if (StringCharCodeAt.call(key, 3) === ColonCharCode) {
3202
3183
  // Assume xml namespace
3203
3184
  setAttribute(elm, key, cur, XML_NAMESPACE);
3204
- } else if (StringCharCodeAt.call(key, 5) === ColonCharCode$1) {
3185
+ } else if (StringCharCodeAt.call(key, 5) === ColonCharCode) {
3205
3186
  // Assume xlink namespace
3206
3187
  setAttribute(elm, key, cur, XLINK_NAMESPACE);
3207
3188
  } else if (isNull(cur) || isUndefined$1(cur)) {
@@ -3213,45 +3194,6 @@ var LWC = (function (exports) {
3213
3194
  }
3214
3195
  }
3215
3196
 
3216
- /*
3217
- * Copyright (c) 2018, salesforce.com, inc.
3218
- * All rights reserved.
3219
- * SPDX-License-Identifier: MIT
3220
- * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
3221
- */
3222
- var ColonCharCode = 58;
3223
- function patchAttrUnlessProp(oldVnode, vnode, renderer) {
3224
- var attrs = vnode.data.attrs,
3225
- elm = vnode.elm;
3226
- if (isUndefined$1(attrs)) {
3227
- return;
3228
- }
3229
- var removeAttribute = renderer.removeAttribute,
3230
- setAttribute = renderer.setAttribute,
3231
- setProperty = renderer.setProperty;
3232
- var oldAttrs = isNull(oldVnode) ? EmptyObject : oldVnode.data.attrs;
3233
- for (var name in attrs) {
3234
- var cur = attrs[name];
3235
- var old = oldAttrs[name];
3236
- if (old !== cur) {
3237
- var _propName2 = htmlAttributeToProperty(name);
3238
- if (_propName2 in elm) {
3239
- setProperty(elm, name, cur);
3240
- } else if (StringCharCodeAt.call(name, 3) === ColonCharCode) {
3241
- // Assume xml namespace
3242
- setAttribute(elm, name, cur, XML_NAMESPACE);
3243
- } else if (StringCharCodeAt.call(name, 5) === ColonCharCode) {
3244
- // Assume xlink namespace
3245
- setAttribute(elm, name, cur, XLINK_NAMESPACE);
3246
- } else if (isNull(cur) || isUndefined$1(cur)) {
3247
- removeAttribute(elm, name);
3248
- } else {
3249
- setAttribute(elm, name, cur);
3250
- }
3251
- }
3252
- }
3253
- }
3254
-
3255
3197
  /*
3256
3198
  * Copyright (c) 2018, salesforce.com, inc.
3257
3199
  * All rights reserved.
@@ -3273,6 +3215,7 @@ var LWC = (function (exports) {
3273
3215
  if (!isNull(oldVnode)) {
3274
3216
  oldProps = oldVnode.data.props;
3275
3217
  var oldSpread = oldVnode.data.spread;
3218
+ // Props may be the same due to the static content optimization, so we can skip diffing
3276
3219
  if (oldProps === props && oldSpread === spread) {
3277
3220
  return;
3278
3221
  }
@@ -3393,8 +3336,9 @@ var LWC = (function (exports) {
3393
3336
  * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
3394
3337
  */
3395
3338
  function applyEventListeners(vnode, renderer) {
3396
- var elm = vnode.elm,
3397
- on = vnode.data.on;
3339
+ var _a;
3340
+ var elm = vnode.elm;
3341
+ var on = (_a = vnode.data) === null || _a === void 0 ? void 0 : _a.on;
3398
3342
  if (isUndefined$1(on)) {
3399
3343
  return;
3400
3344
  }
@@ -3599,6 +3543,8 @@ var LWC = (function (exports) {
3599
3543
  }
3600
3544
  }
3601
3545
  insertNode(elm, parent, anchor, renderer);
3546
+ // Event listeners are only applied once when mounting, so they are allowed for static vnodes
3547
+ applyEventListeners(vnode, renderer);
3602
3548
  }
3603
3549
  function mountCustomElement(vnode, parent, anchor, renderer) {
3604
3550
  var sel = vnode.sel,
@@ -3807,11 +3753,7 @@ var LWC = (function (exports) {
3807
3753
  // value is set before type=radio.
3808
3754
  patchClassAttribute(oldVnode, vnode, renderer);
3809
3755
  patchStyleAttribute(oldVnode, vnode, renderer);
3810
- if (vnode.data.external) {
3811
- patchAttrUnlessProp(oldVnode, vnode, renderer);
3812
- } else {
3813
- patchAttributes(oldVnode, vnode, renderer);
3814
- }
3756
+ patchAttributes(oldVnode, vnode, renderer);
3815
3757
  patchProps(oldVnode, vnode, renderer);
3816
3758
  }
3817
3759
  function applyStyleScoping(elm, owner, renderer) {
@@ -4175,14 +4117,15 @@ var LWC = (function (exports) {
4175
4117
  };
4176
4118
  }
4177
4119
  // [st]atic node
4178
- function st(fragment, key) {
4120
+ function st(fragment, key, data) {
4179
4121
  return {
4180
4122
  type: 4 /* VNodeType.Static */,
4181
4123
  sel: undefined,
4182
4124
  key: key,
4183
4125
  elm: undefined,
4184
4126
  fragment: fragment,
4185
- owner: getVMBeingRendered()
4127
+ owner: getVMBeingRendered(),
4128
+ data: data
4186
4129
  };
4187
4130
  }
4188
4131
  // [fr]agment node
@@ -5792,6 +5735,7 @@ var LWC = (function (exports) {
5792
5735
  return handleMismatch(elm, vnode, renderer);
5793
5736
  }
5794
5737
  vnode.elm = elm;
5738
+ applyEventListeners(vnode, renderer);
5795
5739
  return elm;
5796
5740
  }
5797
5741
  function hydrateFragment(elm, vnode, renderer) {
@@ -6031,9 +5975,9 @@ var LWC = (function (exports) {
6031
5975
  return nodesAreCompatible;
6032
5976
  }
6033
5977
  function validateStyleAttr(vnode, elm, renderer) {
6034
- var _vnode$data = vnode.data,
6035
- style = _vnode$data.style,
6036
- styleDecls = _vnode$data.styleDecls;
5978
+ var _vnode$data2 = vnode.data,
5979
+ style = _vnode$data2.style,
5980
+ styleDecls = _vnode$data2.styleDecls;
6037
5981
  var getAttribute = renderer.getAttribute;
6038
5982
  var elmStyle = getAttribute(elm, 'style') || '';
6039
5983
  var nodesAreCompatible = true;
@@ -6713,7 +6657,7 @@ var LWC = (function (exports) {
6713
6657
  function isNull(obj) {
6714
6658
  return obj === null;
6715
6659
  }
6716
- /** version: 2.45.5 */
6660
+ /** version: 2.47.0 */
6717
6661
 
6718
6662
  /*
6719
6663
  * Copyright (c) 2023, salesforce.com, inc.
@@ -6724,10 +6668,10 @@ var LWC = (function (exports) {
6724
6668
  var WireContextSubscriptionEvent = /*#__PURE__*/function (_CustomEvent) {
6725
6669
  _inherits(WireContextSubscriptionEvent, _CustomEvent);
6726
6670
  var _super6 = _createSuper(WireContextSubscriptionEvent);
6727
- function WireContextSubscriptionEvent(adapterToken, _ref5) {
6671
+ function WireContextSubscriptionEvent(adapterToken, _ref4) {
6728
6672
  var _this3;
6729
- var setNewContext = _ref5.setNewContext,
6730
- setDisconnectedCallback = _ref5.setDisconnectedCallback;
6673
+ var setNewContext = _ref4.setNewContext,
6674
+ setDisconnectedCallback = _ref4.setDisconnectedCallback;
6731
6675
  _classCallCheck(this, WireContextSubscriptionEvent);
6732
6676
  _this3 = _super6.call(this, adapterToken, {
6733
6677
  bubbles: true,
@@ -7348,7 +7292,7 @@ var LWC = (function (exports) {
7348
7292
  });
7349
7293
  });
7350
7294
  }
7351
- /** version: 2.45.5 */
7295
+ /** version: 2.47.0 */
7352
7296
 
7353
7297
  exports.LightningElement = LightningElement;
7354
7298
  exports.__unstable__ProfilerControl = profilerControl;