lwc 2.42.0 → 2.43.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 (64) hide show
  1. package/dist/engine-dom/esm/es2017/engine-dom.js +41 -24
  2. package/dist/engine-dom/esm/es2017/engine-dom.js.map +1 -1
  3. package/dist/engine-dom/iife/es2017/engine-dom.js +41 -23
  4. package/dist/engine-dom/iife/es2017/engine-dom.js.map +1 -1
  5. package/dist/engine-dom/iife/es2017/engine-dom.min.js +1 -1
  6. package/dist/engine-dom/iife/es2017/engine-dom_debug.js +32 -16
  7. package/dist/engine-dom/iife/es2017/engine-dom_debug.js.map +1 -1
  8. package/dist/engine-dom/iife/es5/engine-dom.js +42 -24
  9. package/dist/engine-dom/iife/es5/engine-dom.js.map +1 -1
  10. package/dist/engine-dom/iife/es5/engine-dom.min.js +1 -1
  11. package/dist/engine-dom/iife/es5/engine-dom_debug.js +34 -18
  12. package/dist/engine-dom/iife/es5/engine-dom_debug.js.map +1 -1
  13. package/dist/engine-dom/umd/es2017/engine-dom.js +41 -23
  14. package/dist/engine-dom/umd/es2017/engine-dom.js.map +1 -1
  15. package/dist/engine-dom/umd/es2017/engine-dom.min.js +1 -1
  16. package/dist/engine-dom/umd/es2017/engine-dom_debug.js +32 -16
  17. package/dist/engine-dom/umd/es2017/engine-dom_debug.js.map +1 -1
  18. package/dist/engine-dom/umd/es5/engine-dom.js +42 -24
  19. package/dist/engine-dom/umd/es5/engine-dom.js.map +1 -1
  20. package/dist/engine-dom/umd/es5/engine-dom.min.js +1 -1
  21. package/dist/engine-dom/umd/es5/engine-dom_debug.js +34 -18
  22. package/dist/engine-dom/umd/es5/engine-dom_debug.js.map +1 -1
  23. package/dist/engine-server/commonjs/es2017/engine-server.js +37 -14
  24. package/dist/engine-server/commonjs/es2017/engine-server.js.map +1 -1
  25. package/dist/engine-server/commonjs/es2017/engine-server.min.js +1 -1
  26. package/dist/engine-server/esm/es2017/engine-server.js +37 -15
  27. package/dist/engine-server/esm/es2017/engine-server.js.map +1 -1
  28. package/dist/synthetic-shadow/esm/es2017/synthetic-shadow.js +3 -3
  29. package/dist/synthetic-shadow/esm/es2017/synthetic-shadow.js.map +1 -1
  30. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow.js +3 -3
  31. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow.js.map +1 -1
  32. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow_debug.js +3 -3
  33. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow_debug.js.map +1 -1
  34. package/dist/synthetic-shadow/iife/es5/synthetic-shadow.js +3 -3
  35. package/dist/synthetic-shadow/iife/es5/synthetic-shadow.js.map +1 -1
  36. package/dist/synthetic-shadow/iife/es5/synthetic-shadow_debug.js +3 -3
  37. package/dist/synthetic-shadow/iife/es5/synthetic-shadow_debug.js.map +1 -1
  38. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow.js +3 -3
  39. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow.js.map +1 -1
  40. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow_debug.js +3 -3
  41. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow_debug.js.map +1 -1
  42. package/dist/synthetic-shadow/umd/es5/synthetic-shadow.js +3 -3
  43. package/dist/synthetic-shadow/umd/es5/synthetic-shadow.js.map +1 -1
  44. package/dist/synthetic-shadow/umd/es5/synthetic-shadow_debug.js +3 -3
  45. package/dist/synthetic-shadow/umd/es5/synthetic-shadow_debug.js.map +1 -1
  46. package/dist/wire-service/esm/es2017/wire-service.js +2 -2
  47. package/dist/wire-service/esm/es2017/wire-service.js.map +1 -1
  48. package/dist/wire-service/iife/es2017/wire-service.js +2 -2
  49. package/dist/wire-service/iife/es2017/wire-service.js.map +1 -1
  50. package/dist/wire-service/iife/es2017/wire-service_debug.js +2 -2
  51. package/dist/wire-service/iife/es2017/wire-service_debug.js.map +1 -1
  52. package/dist/wire-service/iife/es5/wire-service.js +2 -2
  53. package/dist/wire-service/iife/es5/wire-service.js.map +1 -1
  54. package/dist/wire-service/iife/es5/wire-service_debug.js +2 -2
  55. package/dist/wire-service/iife/es5/wire-service_debug.js.map +1 -1
  56. package/dist/wire-service/umd/es2017/wire-service.js +2 -2
  57. package/dist/wire-service/umd/es2017/wire-service.js.map +1 -1
  58. package/dist/wire-service/umd/es2017/wire-service_debug.js +2 -2
  59. package/dist/wire-service/umd/es2017/wire-service_debug.js.map +1 -1
  60. package/dist/wire-service/umd/es5/wire-service.js +2 -2
  61. package/dist/wire-service/umd/es5/wire-service.js.map +1 -1
  62. package/dist/wire-service/umd/es5/wire-service_debug.js +2 -2
  63. package/dist/wire-service/umd/es5/wire-service_debug.js.map +1 -1
  64. package/package.json +7 -7
@@ -350,9 +350,9 @@ var LWC = (function (exports) {
350
350
  * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
351
351
  */
352
352
  // Increment whenever the LWC template compiler changes
353
- const LWC_VERSION = "2.42.0";
353
+ const LWC_VERSION = "2.43.0";
354
354
  const LWC_VERSION_COMMENT_REGEX = /\/\*LWC compiler v([\d.]+)\*\/\s*}/;
355
- /** version: 2.42.0 */
355
+ /** version: 2.43.0 */
356
356
 
357
357
  /**
358
358
  * Copyright (C) 2018 salesforce.com, inc.
@@ -430,7 +430,7 @@ var LWC = (function (exports) {
430
430
  setFeatureFlag(name, value);
431
431
  }
432
432
  }
433
- /** version: 2.42.0 */
433
+ /** version: 2.43.0 */
434
434
 
435
435
  /**
436
436
  * Copyright (C) 2018 salesforce.com, inc.
@@ -494,7 +494,7 @@ var LWC = (function (exports) {
494
494
  }
495
495
  }
496
496
  }
497
- /** version: 2.42.0 */
497
+ /** version: 2.43.0 */
498
498
 
499
499
  /*
500
500
  * Copyright (c) 2018, salesforce.com, inc.
@@ -3756,6 +3756,15 @@ var LWC = (function (exports) {
3756
3756
  // the stylesheet, while internally, we have a replacement for it.
3757
3757
  stylesheet = getStyleOrSwappedStyle(stylesheet);
3758
3758
  }
3759
+ // Check that this stylesheet was generated by our compiler
3760
+ if (!isStylesheetRegistered(stylesheet)) {
3761
+ if (process.env.NODE_ENV !== 'production') {
3762
+ logWarnOnce(`TypeError: Unexpected LWC stylesheet content found for component <${vm.tagName.toLowerCase()}>.`);
3763
+ }
3764
+ report("UnexpectedStylesheetContent" /* ReportingEventId.UnexpectedStylesheetContent */, {
3765
+ tagName: vm.tagName.toLowerCase(),
3766
+ });
3767
+ }
3759
3768
  const isScopedCss = stylesheet[KEY__SCOPED_CSS];
3760
3769
  if (lwcRuntimeFlags.DISABLE_LIGHT_DOM_UNSCOPED_CSS &&
3761
3770
  !isScopedCss &&
@@ -3876,6 +3885,18 @@ var LWC = (function (exports) {
3876
3885
  }
3877
3886
  return null;
3878
3887
  }
3888
+ const signedStylesheetSet = new Set();
3889
+ /**
3890
+ * INTERNAL: This function can only be invoked by compiled code. The compiler
3891
+ * will prevent this function from being imported by userland code.
3892
+ */
3893
+ function registerStylesheet(stylesheet) {
3894
+ signedStylesheetSet.add(stylesheet);
3895
+ return stylesheet;
3896
+ }
3897
+ function isStylesheetRegistered(stylesheet) {
3898
+ return signedStylesheetSet.has(stylesheet);
3899
+ }
3879
3900
 
3880
3901
  /*
3881
3902
  * Copyright (c) 2018, salesforce.com, inc.
@@ -5580,18 +5601,12 @@ var LWC = (function (exports) {
5580
5601
  function setVMBeingRendered(vm) {
5581
5602
  vmBeingRendered = vm;
5582
5603
  }
5583
- function validateSlots(vm, html) {
5604
+ function validateSlots(vm) {
5584
5605
  assertNotProd(); // this method should never leak to prod
5585
5606
  const { cmpSlots } = vm;
5586
- const { slots = EmptyArray } = html;
5587
5607
  for (const slotName in cmpSlots.slotAssignments) {
5588
5608
  // eslint-disable-next-line @lwc/lwc-internal/no-production-assert
5589
5609
  assert.isTrue(isArray$1(cmpSlots.slotAssignments[slotName]), `Slots can only be set to an array, instead received ${toString$1(cmpSlots.slotAssignments[slotName])} for slot "${slotName}" in ${vm}.`);
5590
- if (slotName !== '' && ArrayIndexOf.call(slots, slotName) === -1) {
5591
- // TODO [#1297]: this should never really happen because the compiler should always validate
5592
- // eslint-disable-next-line @lwc/lwc-internal/no-production-assert
5593
- logError(`Ignoring unknown provided slot name "${slotName}" in ${vm}. Check for a typo on the slot attribute.`, vm);
5594
- }
5595
5610
  }
5596
5611
  }
5597
5612
  function validateLightDomTemplate(template, vm) {
@@ -5710,7 +5725,7 @@ var LWC = (function (exports) {
5710
5725
  }
5711
5726
  if (process.env.NODE_ENV !== 'production') {
5712
5727
  // validating slots in every rendering since the allocated content might change over time
5713
- validateSlots(vm, html);
5728
+ validateSlots(vm);
5714
5729
  // add the VM to the list of host VMs that can be re-rendered if html is swapped
5715
5730
  setActiveVM(vm);
5716
5731
  }
@@ -6693,7 +6708,7 @@ var LWC = (function (exports) {
6693
6708
  const vm = findVM(elm);
6694
6709
  if (process.env.NODE_ENV !== 'production') {
6695
6710
  logWarnOnce(`Element <${elm.tagName.toLowerCase()}> ` +
6696
- (isUndefined$1(vm) ? '' : `owned by <${vm.elm.tagName.toLowerCase()}> `) +
6711
+ (isUndefined$1(vm) ? '' : `owned by <${vm.tagName.toLowerCase()}> `) +
6697
6712
  `uses non-standard property "${prop}". This will be removed in a future version of LWC. ` +
6698
6713
  `See https://sfdc.co/deprecated-aria`);
6699
6714
  }
@@ -7062,7 +7077,7 @@ var LWC = (function (exports) {
7062
7077
  function validateClassAttr(vnode, elm, renderer) {
7063
7078
  const { data, owner } = vnode;
7064
7079
  let { className, classMap } = data;
7065
- const { getProperty, getClassList } = renderer;
7080
+ const { getProperty, getClassList, getAttribute } = renderer;
7066
7081
  const scopedToken = getScopeTokenClass(owner);
7067
7082
  const stylesheetTokenHost = isVCustomElement(vnode) ? getStylesheetTokenHost(vnode) : null;
7068
7083
  // Classnames for scoped CSS are added directly to the DOM during rendering,
@@ -7092,11 +7107,12 @@ var LWC = (function (exports) {
7092
7107
  }
7093
7108
  let nodesAreCompatible = true;
7094
7109
  let readableVnodeClassname;
7095
- const elmClassName = getProperty(elm, 'className');
7110
+ const elmClassName = getAttribute(elm, 'class');
7096
7111
  if (!isUndefined$1(className) && String(className) !== elmClassName) {
7097
7112
  // className is used when class is bound to an expr.
7098
7113
  nodesAreCompatible = false;
7099
- readableVnodeClassname = className;
7114
+ // stringify for pretty-printing
7115
+ readableVnodeClassname = JSON.stringify(className);
7100
7116
  }
7101
7117
  else if (!isUndefined$1(classMap)) {
7102
7118
  // classMap is used when class is set to static value.
@@ -7109,19 +7125,20 @@ var LWC = (function (exports) {
7109
7125
  nodesAreCompatible = false;
7110
7126
  }
7111
7127
  }
7112
- readableVnodeClassname = computedClassName.trim();
7128
+ // stringify for pretty-printing
7129
+ readableVnodeClassname = JSON.stringify(computedClassName.trim());
7113
7130
  if (classList.length > keys(classMap).length) {
7114
7131
  nodesAreCompatible = false;
7115
7132
  }
7116
7133
  }
7117
- else if (isUndefined$1(className) && elmClassName !== '') {
7134
+ else if (isUndefined$1(className) && !isNull(elmClassName)) {
7118
7135
  // SSR contains a className but client-side VDOM does not
7119
7136
  nodesAreCompatible = false;
7120
- readableVnodeClassname = '';
7137
+ readableVnodeClassname = '""';
7121
7138
  }
7122
7139
  if (!nodesAreCompatible) {
7123
7140
  if (process.env.NODE_ENV !== 'production') {
7124
- logError(`Mismatch hydrating element <${getProperty(elm, 'tagName').toLowerCase()}>: attribute "class" has different values, expected "${readableVnodeClassname}" but found "${elmClassName}"`, vnode.owner);
7141
+ logError(`Mismatch hydrating element <${getProperty(elm, 'tagName').toLowerCase()}>: attribute "class" has different values, expected ${readableVnodeClassname} but found ${JSON.stringify(elmClassName)}`, vnode.owner);
7125
7142
  }
7126
7143
  }
7127
7144
  return nodesAreCompatible;
@@ -7467,7 +7484,7 @@ var LWC = (function (exports) {
7467
7484
  }
7468
7485
  return getReadOnlyProxy(obj);
7469
7486
  }
7470
- /* version: 2.42.0 */
7487
+ /* version: 2.43.0 */
7471
7488
 
7472
7489
  /*
7473
7490
  * Copyright (c) 2018, salesforce.com, inc.
@@ -7895,7 +7912,7 @@ var LWC = (function (exports) {
7895
7912
  function isNull(obj) {
7896
7913
  return obj === null;
7897
7914
  }
7898
- /** version: 2.42.0 */
7915
+ /** version: 2.43.0 */
7899
7916
 
7900
7917
  /*
7901
7918
  * Copyright (c) 2023, salesforce.com, inc.
@@ -8514,7 +8531,7 @@ var LWC = (function (exports) {
8514
8531
  });
8515
8532
  }));
8516
8533
  }
8517
- /* version: 2.42.0 */
8534
+ /* version: 2.43.0 */
8518
8535
 
8519
8536
  exports.LightningElement = LightningElement;
8520
8537
  exports.__unstable__ProfilerControl = profilerControl;
@@ -8535,6 +8552,7 @@ var LWC = (function (exports) {
8535
8552
  exports.register = register;
8536
8553
  exports.registerComponent = registerComponent;
8537
8554
  exports.registerDecorators = registerDecorators;
8555
+ exports.registerStylesheet = registerStylesheet;
8538
8556
  exports.registerTemplate = registerTemplate;
8539
8557
  exports.renderer = renderer;
8540
8558
  exports.rendererFactory = rendererFactory;