lwc 2.26.0 → 2.27.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 (37) hide show
  1. package/dist/engine-dom/esm/es2017/engine-dom.js +75 -27
  2. package/dist/engine-dom/iife/es2017/engine-dom.js +75 -27
  3. package/dist/engine-dom/iife/es2017/engine-dom.min.js +1 -1
  4. package/dist/engine-dom/iife/es2017/engine-dom_debug.js +71 -23
  5. package/dist/engine-dom/iife/es5/engine-dom.js +78 -26
  6. package/dist/engine-dom/iife/es5/engine-dom.min.js +1 -1
  7. package/dist/engine-dom/iife/es5/engine-dom_debug.js +74 -22
  8. package/dist/engine-dom/umd/es2017/engine-dom.js +75 -27
  9. package/dist/engine-dom/umd/es2017/engine-dom.min.js +1 -1
  10. package/dist/engine-dom/umd/es2017/engine-dom_debug.js +71 -23
  11. package/dist/engine-dom/umd/es5/engine-dom.js +78 -26
  12. package/dist/engine-dom/umd/es5/engine-dom.min.js +1 -1
  13. package/dist/engine-dom/umd/es5/engine-dom_debug.js +74 -22
  14. package/dist/engine-server/commonjs/es2017/engine-server.js +73 -25
  15. package/dist/engine-server/commonjs/es2017/engine-server.min.js +1 -1
  16. package/dist/engine-server/esm/es2017/engine-server.js +73 -25
  17. package/dist/synthetic-shadow/esm/es2017/synthetic-shadow.js +4 -4
  18. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow.js +4 -4
  19. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow.min.js +2 -2
  20. package/dist/synthetic-shadow/iife/es2017/synthetic-shadow_debug.js +4 -4
  21. package/dist/synthetic-shadow/iife/es5/synthetic-shadow.js +3 -3
  22. package/dist/synthetic-shadow/iife/es5/synthetic-shadow_debug.js +3 -3
  23. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow.js +4 -4
  24. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow.min.js +2 -2
  25. package/dist/synthetic-shadow/umd/es2017/synthetic-shadow_debug.js +4 -4
  26. package/dist/synthetic-shadow/umd/es5/synthetic-shadow.js +3 -3
  27. package/dist/synthetic-shadow/umd/es5/synthetic-shadow_debug.js +3 -3
  28. package/dist/wire-service/esm/es2017/wire-service.js +2 -2
  29. package/dist/wire-service/iife/es2017/wire-service.js +2 -2
  30. package/dist/wire-service/iife/es2017/wire-service_debug.js +2 -2
  31. package/dist/wire-service/iife/es5/wire-service.js +2 -2
  32. package/dist/wire-service/iife/es5/wire-service_debug.js +2 -2
  33. package/dist/wire-service/umd/es2017/wire-service.js +2 -2
  34. package/dist/wire-service/umd/es2017/wire-service_debug.js +2 -2
  35. package/dist/wire-service/umd/es5/wire-service.js +2 -2
  36. package/dist/wire-service/umd/es5/wire-service_debug.js +2 -2
  37. package/package.json +7 -7
@@ -120,6 +120,7 @@ var LWC = (function (exports) {
120
120
  setPrototypeOf = Object.setPrototypeOf;
121
121
  var isArray$1 = Array.isArray;
122
122
  var _Array$prototype = Array.prototype,
123
+ ArrayConcat$1 = _Array$prototype.concat,
123
124
  ArrayFilter = _Array$prototype.filter,
124
125
  ArrayIndexOf = _Array$prototype.indexOf,
125
126
  ArrayJoin = _Array$prototype.join,
@@ -347,7 +348,7 @@ var LWC = (function (exports) {
347
348
  CACHED_PROPERTY_ATTRIBUTE_MAPPING.set(propName, attributeName);
348
349
  return attributeName;
349
350
  }
350
- /** version: 2.26.0 */
351
+ /** version: 2.27.0 */
351
352
 
352
353
  /**
353
354
  * Copyright (C) 2018 salesforce.com, inc.
@@ -441,7 +442,7 @@ var LWC = (function (exports) {
441
442
  patch$1(propName);
442
443
  }
443
444
  }
444
- /** version: 2.26.0 */
445
+ /** version: 2.27.0 */
445
446
 
446
447
  /**
447
448
  * Copyright (C) 2018 salesforce.com, inc.
@@ -3294,6 +3295,12 @@ var LWC = (function (exports) {
3294
3295
  /* VNodeType.CustomElement */
3295
3296
  ;
3296
3297
  }
3298
+
3299
+ function isVScopedSlotFragment(vnode) {
3300
+ return vnode.type === 6
3301
+ /* VNodeType.ScopedSlotFragment */
3302
+ ;
3303
+ }
3297
3304
  /*
3298
3305
  * Copyright (c) 2018, salesforce.com, inc.
3299
3306
  * All rights reserved.
@@ -4073,7 +4080,7 @@ var LWC = (function (exports) {
4073
4080
  /* RenderMode.Light */
4074
4081
  ) {
4075
4082
  // slow path
4076
- allocateInSlot(vm, children); // save the allocated children in case this vnode is reused.
4083
+ allocateInSlot(vm, children, vnode.owner); // save the allocated children in case this vnode is reused.
4077
4084
 
4078
4085
  vnode.aChildren = children; // every child vnode is now allocated, and the host should receive none directly, it receives them via the shadow!
4079
4086
 
@@ -4103,11 +4110,15 @@ var LWC = (function (exports) {
4103
4110
  return vm;
4104
4111
  }
4105
4112
 
4106
- function allocateInSlot(vm, children) {
4107
- var _a;
4113
+ function allocateInSlot(vm, children, owner) {
4114
+ var _a, _b;
4108
4115
 
4109
- var oldSlots = vm.cmpSlots;
4110
- var cmpSlots = vm.cmpSlots = create(null);
4116
+ var oldSlotsMapping = vm.cmpSlots.slotAssignments;
4117
+ var cmpSlotsMapping = create(null);
4118
+ vm.cmpSlots = {
4119
+ owner: owner,
4120
+ slotAssignments: cmpSlotsMapping
4121
+ };
4111
4122
 
4112
4123
  for (var _i15 = 0, len = children.length; _i15 < len; _i15 += 1) {
4113
4124
  var vnode = children[_i15];
@@ -4119,19 +4130,21 @@ var LWC = (function (exports) {
4119
4130
  var slotName = '';
4120
4131
 
4121
4132
  if (isVBaseElement(vnode)) {
4122
- slotName = ((_a = vnode.data.attrs) === null || _a === void 0 ? void 0 : _a.slot) || '';
4133
+ slotName = (_b = (_a = vnode.data.attrs) === null || _a === void 0 ? void 0 : _a.slot) !== null && _b !== void 0 ? _b : '';
4134
+ } else if (isVScopedSlotFragment(vnode)) {
4135
+ slotName = vnode.slotName;
4123
4136
  }
4124
4137
 
4125
- var vnodes = cmpSlots[slotName] = cmpSlots[slotName] || [];
4138
+ var vnodes = cmpSlotsMapping[slotName] = cmpSlotsMapping[slotName] || [];
4126
4139
  ArrayPush$1.call(vnodes, vnode);
4127
4140
  }
4128
4141
 
4129
4142
  if (isFalse(vm.isDirty)) {
4130
4143
  // We need to determine if the old allocation is really different from the new one
4131
4144
  // and mark the vm as dirty
4132
- var oldKeys = keys(oldSlots);
4145
+ var oldKeys = keys(oldSlotsMapping);
4133
4146
 
4134
- if (oldKeys.length !== keys(cmpSlots).length) {
4147
+ if (oldKeys.length !== keys(cmpSlotsMapping).length) {
4135
4148
  markComponentAsDirty(vm);
4136
4149
  return;
4137
4150
  }
@@ -4139,15 +4152,15 @@ var LWC = (function (exports) {
4139
4152
  for (var _i16 = 0, _len4 = oldKeys.length; _i16 < _len4; _i16 += 1) {
4140
4153
  var key = oldKeys[_i16];
4141
4154
 
4142
- if (isUndefined$1(cmpSlots[key]) || oldSlots[key].length !== cmpSlots[key].length) {
4155
+ if (isUndefined$1(cmpSlotsMapping[key]) || oldSlotsMapping[key].length !== cmpSlotsMapping[key].length) {
4143
4156
  markComponentAsDirty(vm);
4144
4157
  return;
4145
4158
  }
4146
4159
 
4147
- var oldVNodes = oldSlots[key];
4148
- var _vnodes = cmpSlots[key];
4160
+ var oldVNodes = oldSlotsMapping[key];
4161
+ var _vnodes = cmpSlotsMapping[key];
4149
4162
 
4150
- for (var j = 0, a = cmpSlots[key].length; j < a; j += 1) {
4163
+ for (var j = 0, a = cmpSlotsMapping[key].length; j < a; j += 1) {
4151
4164
  if (oldVNodes[j] !== _vnodes[j]) {
4152
4165
  markComponentAsDirty(vm);
4153
4166
  return;
@@ -4346,6 +4359,21 @@ var LWC = (function (exports) {
4346
4359
 
4347
4360
  function addVNodeToChildLWC(vnode) {
4348
4361
  ArrayPush$1.call(getVMBeingRendered().velements, vnode);
4362
+ } // [s]coped [s]lot [f]actory
4363
+
4364
+
4365
+ function ssf(slotName, factory) {
4366
+ return {
4367
+ type: 6
4368
+ /* VNodeType.ScopedSlotFragment */
4369
+ ,
4370
+ factory: factory,
4371
+ owner: getVMBeingRendered(),
4372
+ elm: undefined,
4373
+ sel: undefined,
4374
+ key: undefined,
4375
+ slotName: slotName
4376
+ };
4349
4377
  } // [st]atic node
4350
4378
 
4351
4379
 
@@ -4416,8 +4444,29 @@ var LWC = (function (exports) {
4416
4444
 
4417
4445
  function s(slotName, data, children, slotset) {
4418
4446
 
4419
- if (!isUndefined$1(slotset) && !isUndefined$1(slotset[slotName]) && slotset[slotName].length !== 0) {
4420
- children = slotset[slotName];
4447
+ if (!isUndefined$1(slotset) && !isUndefined$1(slotset.slotAssignments) && !isUndefined$1(slotset.slotAssignments[slotName]) && slotset.slotAssignments[slotName].length !== 0) {
4448
+ children = slotset.slotAssignments[slotName].reduce(function (acc, vnode) {
4449
+ // If the passed slot content is factory, evaluate it and use the produced vnodes
4450
+ if (vnode && isVScopedSlotFragment(vnode)) {
4451
+ var vmBeingRenderedInception = getVMBeingRendered();
4452
+ var _children = []; // Evaluate in the scope of the slot content's owner
4453
+ // if a slotset is provided, there will always be an owner. The only case where owner is
4454
+ // undefined is for root components, but root components cannot accept slotted content
4455
+
4456
+ setVMBeingRendered(slotset.owner);
4457
+
4458
+ try {
4459
+ _children = vnode.factory(data.slotData);
4460
+ } finally {
4461
+ setVMBeingRendered(vmBeingRenderedInception);
4462
+ }
4463
+
4464
+ return ArrayConcat$1.call(acc, _children);
4465
+ } else {
4466
+ // If the slot content is a static list of child nodes provided by the parent, nothing to do
4467
+ return ArrayConcat$1.call(acc, vnode);
4468
+ }
4469
+ }, []);
4421
4470
  }
4422
4471
 
4423
4472
  var vmBeingRendered = getVMBeingRendered();
@@ -4734,7 +4783,8 @@ var LWC = (function (exports) {
4734
4783
  st: st,
4735
4784
  gid: gid,
4736
4785
  fid: fid,
4737
- shc: shc
4786
+ shc: shc,
4787
+ ssf: ssf
4738
4788
  });
4739
4789
  /** Indicates if operations should be logged by the profiler. */
4740
4790
 
@@ -5345,7 +5395,9 @@ var LWC = (function (exports) {
5345
5395
  velements: EmptyArray,
5346
5396
  cmpProps: create(null),
5347
5397
  cmpFields: create(null),
5348
- cmpSlots: create(null),
5398
+ cmpSlots: {
5399
+ slotAssignments: create(null)
5400
+ },
5349
5401
  oar: create(null),
5350
5402
  cmpTemplate: null,
5351
5403
  hydrated: Boolean(hydrated),
@@ -6661,7 +6713,7 @@ var LWC = (function (exports) {
6661
6713
 
6662
6714
  return ctor;
6663
6715
  }
6664
- /* version: 2.26.0 */
6716
+ /* version: 2.27.0 */
6665
6717
 
6666
6718
  /*
6667
6719
  * Copyright (c) 2018, salesforce.com, inc.
@@ -7653,7 +7705,7 @@ var LWC = (function (exports) {
7653
7705
  function isNull(obj) {
7654
7706
  return obj === null;
7655
7707
  }
7656
- /** version: 2.26.0 */
7708
+ /** version: 2.27.0 */
7657
7709
 
7658
7710
  /*
7659
7711
  * Copyright (c) 2018, salesforce.com, inc.
@@ -8313,7 +8365,7 @@ var LWC = (function (exports) {
8313
8365
  });
8314
8366
  freeze(LightningElement);
8315
8367
  seal(LightningElement.prototype);
8316
- /* version: 2.26.0 */
8368
+ /* version: 2.27.0 */
8317
8369
 
8318
8370
  exports.LightningElement = LightningElement;
8319
8371
  exports.__unstable__ProfilerControl = profilerControl;
@@ -49,7 +49,7 @@
49
49
  */
50
50
  const { assign, create, defineProperties, defineProperty, freeze, getOwnPropertyDescriptor: getOwnPropertyDescriptor$1, getOwnPropertyNames: getOwnPropertyNames$1, getPrototypeOf: getPrototypeOf$1, hasOwnProperty: hasOwnProperty$1, isFrozen, keys, seal, setPrototypeOf, } = Object;
51
51
  const { isArray: isArray$1 } = Array;
52
- const { copyWithin: ArrayCopyWithin, fill: ArrayFill, filter: ArrayFilter, find: ArrayFind, indexOf: ArrayIndexOf, join: ArrayJoin, map: ArrayMap, pop: ArrayPop, push: ArrayPush$1, reduce: ArrayReduce, reverse: ArrayReverse, shift: ArrayShift, slice: ArraySlice, sort: ArraySort, splice: ArraySplice, unshift: ArrayUnshift, forEach, } = Array.prototype;
52
+ const { concat: ArrayConcat$1, copyWithin: ArrayCopyWithin, fill: ArrayFill, filter: ArrayFilter, find: ArrayFind, indexOf: ArrayIndexOf, join: ArrayJoin, map: ArrayMap, pop: ArrayPop, push: ArrayPush$1, reduce: ArrayReduce, reverse: ArrayReverse, shift: ArrayShift, slice: ArraySlice, sort: ArraySort, splice: ArraySplice, unshift: ArrayUnshift, forEach, } = Array.prototype;
53
53
  const { fromCharCode: StringFromCharCode } = String;
54
54
  const { charCodeAt: StringCharCodeAt, replace: StringReplace, slice: StringSlice, toLowerCase: StringToLowerCase, } = String.prototype;
55
55
  function isUndefined$1(obj) {
@@ -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.26.0";
308
+ const LWC_VERSION = "2.27.0";
309
309
  const LWC_VERSION_COMMENT_REGEX = /\/\*LWC compiler v([\d.]+)\*\/\s*}/;
310
- /** version: 2.26.0 */
310
+ /** version: 2.27.0 */
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.26.0 */
392
+ /** version: 2.27.0 */
393
393
 
394
394
  /**
395
395
  * Copyright (C) 2018 salesforce.com, inc.
@@ -469,7 +469,7 @@
469
469
  setFeatureFlag(name, value);
470
470
  }
471
471
  }
472
- /** version: 2.26.0 */
472
+ /** version: 2.27.0 */
473
473
 
474
474
  /*
475
475
  * Copyright (c) 2018, salesforce.com, inc.
@@ -3692,6 +3692,9 @@
3692
3692
  function isVCustomElement(vnode) {
3693
3693
  return vnode.type === 3 /* VNodeType.CustomElement */;
3694
3694
  }
3695
+ function isVScopedSlotFragment(vnode) {
3696
+ return vnode.type === 6 /* VNodeType.ScopedSlotFragment */;
3697
+ }
3695
3698
 
3696
3699
  /*
3697
3700
  * Copyright (c) 2018, salesforce.com, inc.
@@ -4526,7 +4529,7 @@
4526
4529
  /* RenderMode.Light */
4527
4530
  ) {
4528
4531
  // slow path
4529
- allocateInSlot(vm, children); // save the allocated children in case this vnode is reused.
4532
+ allocateInSlot(vm, children, vnode.owner); // save the allocated children in case this vnode is reused.
4530
4533
 
4531
4534
  vnode.aChildren = children; // every child vnode is now allocated, and the host should receive none directly, it receives them via the shadow!
4532
4535
 
@@ -4562,13 +4565,19 @@
4562
4565
  return vm;
4563
4566
  }
4564
4567
 
4565
- function allocateInSlot(vm, children) {
4566
- var _a;
4568
+ function allocateInSlot(vm, children, owner) {
4569
+ var _a, _b;
4567
4570
 
4568
4571
  const {
4569
- cmpSlots: oldSlots
4572
+ cmpSlots: {
4573
+ slotAssignments: oldSlotsMapping
4574
+ }
4570
4575
  } = vm;
4571
- const cmpSlots = vm.cmpSlots = create(null);
4576
+ const cmpSlotsMapping = create(null);
4577
+ vm.cmpSlots = {
4578
+ owner,
4579
+ slotAssignments: cmpSlotsMapping
4580
+ };
4572
4581
 
4573
4582
  for (let i = 0, len = children.length; i < len; i += 1) {
4574
4583
  const vnode = children[i];
@@ -4580,19 +4589,21 @@
4580
4589
  let slotName = '';
4581
4590
 
4582
4591
  if (isVBaseElement(vnode)) {
4583
- slotName = ((_a = vnode.data.attrs) === null || _a === void 0 ? void 0 : _a.slot) || '';
4592
+ slotName = (_b = (_a = vnode.data.attrs) === null || _a === void 0 ? void 0 : _a.slot) !== null && _b !== void 0 ? _b : '';
4593
+ } else if (isVScopedSlotFragment(vnode)) {
4594
+ slotName = vnode.slotName;
4584
4595
  }
4585
4596
 
4586
- const vnodes = cmpSlots[slotName] = cmpSlots[slotName] || [];
4597
+ const vnodes = cmpSlotsMapping[slotName] = cmpSlotsMapping[slotName] || [];
4587
4598
  ArrayPush$1.call(vnodes, vnode);
4588
4599
  }
4589
4600
 
4590
4601
  if (isFalse(vm.isDirty)) {
4591
4602
  // We need to determine if the old allocation is really different from the new one
4592
4603
  // and mark the vm as dirty
4593
- const oldKeys = keys(oldSlots);
4604
+ const oldKeys = keys(oldSlotsMapping);
4594
4605
 
4595
- if (oldKeys.length !== keys(cmpSlots).length) {
4606
+ if (oldKeys.length !== keys(cmpSlotsMapping).length) {
4596
4607
  markComponentAsDirty(vm);
4597
4608
  return;
4598
4609
  }
@@ -4600,15 +4611,15 @@
4600
4611
  for (let i = 0, len = oldKeys.length; i < len; i += 1) {
4601
4612
  const key = oldKeys[i];
4602
4613
 
4603
- if (isUndefined$1(cmpSlots[key]) || oldSlots[key].length !== cmpSlots[key].length) {
4614
+ if (isUndefined$1(cmpSlotsMapping[key]) || oldSlotsMapping[key].length !== cmpSlotsMapping[key].length) {
4604
4615
  markComponentAsDirty(vm);
4605
4616
  return;
4606
4617
  }
4607
4618
 
4608
- const oldVNodes = oldSlots[key];
4609
- const vnodes = cmpSlots[key];
4619
+ const oldVNodes = oldSlotsMapping[key];
4620
+ const vnodes = cmpSlotsMapping[key];
4610
4621
 
4611
- for (let j = 0, a = cmpSlots[key].length; j < a; j += 1) {
4622
+ for (let j = 0, a = cmpSlotsMapping[key].length; j < a; j += 1) {
4612
4623
  if (oldVNodes[j] !== vnodes[j]) {
4613
4624
  markComponentAsDirty(vm);
4614
4625
  return;
@@ -4808,6 +4819,18 @@
4808
4819
  function addVNodeToChildLWC(vnode) {
4809
4820
  ArrayPush$1.call(getVMBeingRendered().velements, vnode);
4810
4821
  }
4822
+ // [s]coped [s]lot [f]actory
4823
+ function ssf(slotName, factory) {
4824
+ return {
4825
+ type: 6 /* VNodeType.ScopedSlotFragment */,
4826
+ factory,
4827
+ owner: getVMBeingRendered(),
4828
+ elm: undefined,
4829
+ sel: undefined,
4830
+ key: undefined,
4831
+ slotName,
4832
+ };
4833
+ }
4811
4834
  // [st]atic node
4812
4835
  function st(fragment, key) {
4813
4836
  return {
@@ -4891,9 +4914,31 @@
4891
4914
  assert.isTrue(isArray$1(children), `h() 3rd argument children must be an array.`);
4892
4915
  }
4893
4916
  if (!isUndefined$1(slotset) &&
4894
- !isUndefined$1(slotset[slotName]) &&
4895
- slotset[slotName].length !== 0) {
4896
- children = slotset[slotName];
4917
+ !isUndefined$1(slotset.slotAssignments) &&
4918
+ !isUndefined$1(slotset.slotAssignments[slotName]) &&
4919
+ slotset.slotAssignments[slotName].length !== 0) {
4920
+ children = slotset.slotAssignments[slotName].reduce((acc, vnode) => {
4921
+ // If the passed slot content is factory, evaluate it and use the produced vnodes
4922
+ if (vnode && isVScopedSlotFragment(vnode)) {
4923
+ const vmBeingRenderedInception = getVMBeingRendered();
4924
+ let children = [];
4925
+ // Evaluate in the scope of the slot content's owner
4926
+ // if a slotset is provided, there will always be an owner. The only case where owner is
4927
+ // undefined is for root components, but root components cannot accept slotted content
4928
+ setVMBeingRendered(slotset.owner);
4929
+ try {
4930
+ children = vnode.factory(data.slotData);
4931
+ }
4932
+ finally {
4933
+ setVMBeingRendered(vmBeingRenderedInception);
4934
+ }
4935
+ return ArrayConcat$1.call(acc, children);
4936
+ }
4937
+ else {
4938
+ // If the slot content is a static list of child nodes provided by the parent, nothing to do
4939
+ return ArrayConcat$1.call(acc, vnode);
4940
+ }
4941
+ }, []);
4897
4942
  }
4898
4943
  const vmBeingRendered = getVMBeingRendered();
4899
4944
  const { renderMode, shadowMode } = vmBeingRendered;
@@ -5213,6 +5258,7 @@
5213
5258
  gid,
5214
5259
  fid,
5215
5260
  shc,
5261
+ ssf,
5216
5262
  });
5217
5263
 
5218
5264
  /*
@@ -5349,9 +5395,9 @@
5349
5395
  }
5350
5396
  const { cmpSlots } = vm;
5351
5397
  const { slots = EmptyArray } = html;
5352
- for (const slotName in cmpSlots) {
5398
+ for (const slotName in cmpSlots.slotAssignments) {
5353
5399
  // eslint-disable-next-line @lwc/lwc-internal/no-production-assert
5354
- assert.isTrue(isArray$1(cmpSlots[slotName]), `Slots can only be set to an array, instead received ${toString$1(cmpSlots[slotName])} for slot "${slotName}" in ${vm}.`);
5400
+ 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}.`);
5355
5401
  if (slotName !== '' && ArrayIndexOf.call(slots, slotName) === -1) {
5356
5402
  // TODO [#1297]: this should never really happen because the compiler should always validate
5357
5403
  // eslint-disable-next-line @lwc/lwc-internal/no-production-assert
@@ -5848,7 +5894,9 @@
5848
5894
  velements: EmptyArray,
5849
5895
  cmpProps: create(null),
5850
5896
  cmpFields: create(null),
5851
- cmpSlots: create(null),
5897
+ cmpSlots: {
5898
+ slotAssignments: create(null)
5899
+ },
5852
5900
  oar: create(null),
5853
5901
  cmpTemplate: null,
5854
5902
  hydrated: Boolean(hydrated),
@@ -7257,7 +7305,7 @@
7257
7305
  }
7258
7306
  return ctor;
7259
7307
  }
7260
- /* version: 2.26.0 */
7308
+ /* version: 2.27.0 */
7261
7309
 
7262
7310
  /*
7263
7311
  * Copyright (c) 2018, salesforce.com, inc.
@@ -8081,7 +8129,7 @@
8081
8129
  function isNull(obj) {
8082
8130
  return obj === null;
8083
8131
  }
8084
- /** version: 2.26.0 */
8132
+ /** version: 2.27.0 */
8085
8133
 
8086
8134
  /*
8087
8135
  * Copyright (c) 2018, salesforce.com, inc.
@@ -8660,7 +8708,7 @@
8660
8708
  });
8661
8709
  freeze(LightningElement);
8662
8710
  seal(LightningElement.prototype);
8663
- /* version: 2.26.0 */
8711
+ /* version: 2.27.0 */
8664
8712
 
8665
8713
  exports.LightningElement = LightningElement;
8666
8714
  exports.__unstable__ProfilerControl = profilerControl;