@lwrjs/everywhere 0.12.0-alpha.13 → 0.12.0-alpha.15

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 (24) hide show
  1. package/build/__generated_site_amd_modules__/1/application/amd/l/en-US/ai/amd-bootstrap/configuration/ci/-/-/s/b69ba8df14c87ec859fbd2e0b4f4562b/config.js +12 -0
  2. package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/@lwrjs/app-service/amd-bootstrap/module/amd/v/0_12_0-alpha_15/s/8bce578258518655194bd71d1d72aad5/@lwrjs_app-service_amd-bootstrap_module_amd.js +14 -0
  3. package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwc/v/{6_1_1/s/97cfd3dd664529265351b5d32d878542 → 6_2_0/s/99eeb2c6eef76200d6f77e8a9895ea90}/lwc.js +238 -89
  4. package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/everywhereAmd/v/{0_12_0-alpha_13 → 0_12_0-alpha_15}/s/cb931ebef2b89dcf8ab51456e3a68864/lwr_everywhereAmd.js +3 -3
  5. package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/init/v/{0_12_0-alpha_13 → 0_12_0-alpha_15}/s/f30361ad8ff7af505bf4d465c8499181/lwr_init.js +21 -21
  6. package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/loader/v/{0_12_0-alpha_13/s/cfee9fb123c4a55fea99f3727df2f4f3 → 0_12_0-alpha_15/s/109d8d5da946b14cf2e9eb0e9d0efe84}/lwr_loader.js +4 -4
  7. package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/metrics/v/{0_12_0-alpha_13 → 0_12_0-alpha_15}/s/274c8343f810353bbad085a79709395f/lwr_metrics.js +1 -1
  8. package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/preInit/v/{0_12_0-alpha_13 → 0_12_0-alpha_15}/s/ec0fad0e38a96bb0b88c9f4553460347/lwr_preInit.js +1 -1
  9. package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/profiler/v/{0_12_0-alpha_13 → 0_12_0-alpha_15}/s/a152b8d35f12ca1b5147c5cd1ee155fb/lwr_profiler.js +1 -1
  10. package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/vault/v/{0_12_0-alpha_13 → 0_12_0-alpha_15}/s/c92abd8c1fec2d7eff62e4b097abbe14/lwr_vault.js +1 -1
  11. package/build/__generated_site_amd_modules__/1/resource/amd/lwr-error-shim.js/v/{0_12_0-alpha_13 → 0_12_0-alpha_15}/lwr-error-shim.js +1 -1
  12. package/build/__generated_site_amd_modules__/1/resource/amd/lwr-loader-shim.bundle.js/v/{0_12_0-alpha_13 → 0_12_0-alpha_15}/lwr-loader-shim.bundle.js +9 -9
  13. package/build/assets/amd/lwr-everywhere-debug.js +11 -11
  14. package/build/assets/amd/lwr-everywhere-min.js +2 -2
  15. package/build/assets/amd/lwr-everywhere.js +11 -11
  16. package/build/assets/core/lwr-everywhere-debug.js +7 -7
  17. package/build/assets/core/lwr-everywhere-min.js +1 -1
  18. package/build/assets/core/lwr-everywhere.js +7 -7
  19. package/build/assets/esm/lwr-everywhere-debug.js +1 -1
  20. package/build/assets/esm/lwr-everywhere-min.js +1 -1
  21. package/build/assets/esm/lwr-everywhere.js +1 -1
  22. package/package.json +8 -8
  23. package/build/__generated_site_amd_modules__/1/application/amd/l/en-US/ai/amd-bootstrap/configuration/ci/-/-/s/717d294f80be0811c28e8b3c9f3a54cb/config.js +0 -12
  24. package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/@lwrjs/app-service/amd-bootstrap/module/amd/v/0_12_0-alpha_13/s/8bce578258518655194bd71d1d72aad5/@lwrjs_app-service_amd-bootstrap_module_amd.js +0 -14
@@ -1,4 +1,4 @@
1
- LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
1
+ LWR.define('lwc/v/6_2_0', ['exports'], (function (exports) { 'use strict';
2
2
 
3
3
  /**
4
4
  * Copyright (c) 2024 Salesforce, Inc.
@@ -122,6 +122,8 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
122
122
  function isBoolean(obj) {
123
123
  return typeof obj === 'boolean';
124
124
  }
125
+ // Replacing `Function` with a narrower type that works for all our use cases is tricky...
126
+ // eslint-disable-next-line @typescript-eslint/ban-types
125
127
  function isFunction$1(obj) {
126
128
  return typeof obj === 'function';
127
129
  }
@@ -307,9 +309,9 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
307
309
  * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
308
310
  */
309
311
  // Increment whenever the LWC template compiler changes
310
- const LWC_VERSION = "6.1.1";
312
+ const LWC_VERSION = "6.2.0";
311
313
  const LWC_VERSION_COMMENT_REGEX = /\/\*LWC compiler v([\d.]+)\*\/\s*}/;
312
- /** version: 6.1.1 */
314
+ /** version: 6.2.0 */
313
315
 
314
316
  /**
315
317
  * Copyright (c) 2024 Salesforce, Inc.
@@ -332,6 +334,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
332
334
  ENABLE_FROZEN_TEMPLATE: null,
333
335
  ENABLE_LEGACY_SCOPE_TOKENS: null,
334
336
  ENABLE_FORCE_SHADOW_MIGRATE_MODE: null,
337
+ ENABLE_EXPERIMENTAL_SIGNALS: null,
335
338
  DISABLE_TEMPORARY_V5_COMPILER_SUPPORT: null
336
339
  };
337
340
  if (!globalThis.lwcRuntimeFlags) {
@@ -387,7 +390,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
387
390
  setFeatureFlag(name, value);
388
391
  }
389
392
  }
390
- /** version: 6.1.1 */
393
+ /** version: 6.2.0 */
391
394
 
392
395
  /**
393
396
  * Copyright (c) 2024 Salesforce, Inc.
@@ -617,6 +620,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
617
620
  }
618
621
  observe(job) {
619
622
  const inceptionReactiveRecord = currentReactiveObserver;
623
+ // eslint-disable-next-line @typescript-eslint/no-this-alias
620
624
  currentReactiveObserver = this;
621
625
  let error;
622
626
  try {
@@ -665,6 +669,78 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
665
669
  // we keep track of observing records where the observing record was added to so we can do some clean up later on
666
670
  ArrayPush$1.call(this.listeners, reactiveObservers);
667
671
  }
672
+ isObserving() {
673
+ return currentReactiveObserver === this;
674
+ }
675
+ }
676
+
677
+ /*
678
+ * Copyright (c) 2024, salesforce.com, inc.
679
+ * All rights reserved.
680
+ * SPDX-License-Identifier: MIT
681
+ * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
682
+ */
683
+ /**
684
+ * This map keeps track of objects to signals. There is an assumption that the signal is strongly referenced
685
+ * on the object which allows the SignalTracker to be garbage collected along with the object.
686
+ */
687
+ const TargetToSignalTrackerMap = new WeakMap();
688
+ function getSignalTracker(target) {
689
+ let signalTracker = TargetToSignalTrackerMap.get(target);
690
+ if (isUndefined$1(signalTracker)) {
691
+ signalTracker = new SignalTracker();
692
+ TargetToSignalTrackerMap.set(target, signalTracker);
693
+ }
694
+ return signalTracker;
695
+ }
696
+ function subscribeToSignal(target, signal, update) {
697
+ const signalTracker = getSignalTracker(target);
698
+ if (isFalse(signalTracker.seen(signal))) {
699
+ signalTracker.subscribeToSignal(signal, update);
700
+ }
701
+ }
702
+ function unsubscribeFromSignals(target) {
703
+ if (TargetToSignalTrackerMap.has(target)) {
704
+ const signalTracker = getSignalTracker(target);
705
+ signalTracker.unsubscribeFromSignals();
706
+ signalTracker.reset();
707
+ }
708
+ }
709
+ /**
710
+ * This class is used to keep track of the signals associated to a given object.
711
+ * It is used to prevent the LWC engine from subscribing duplicate callbacks multiple times
712
+ * to the same signal. Additionally, it keeps track of all signal unsubscribe callbacks, handles invoking
713
+ * them when necessary and discarding them.
714
+ */
715
+ class SignalTracker {
716
+ constructor() {
717
+ this.signalToUnsubscribeMap = new Map();
718
+ }
719
+ seen(signal) {
720
+ return this.signalToUnsubscribeMap.has(signal);
721
+ }
722
+ subscribeToSignal(signal, update) {
723
+ try {
724
+ const unsubscribe = signal.subscribe(update);
725
+ if (isFunction$1(unsubscribe)) {
726
+ // TODO [#3978]: Evaluate how we should handle the case when unsubscribe is not a function.
727
+ // Long term we should throw an error or log a warning.
728
+ this.signalToUnsubscribeMap.set(signal, unsubscribe);
729
+ }
730
+ } catch (err) {
731
+ logWarnOnce(`Attempted to subscribe to an object that has the shape of a signal but received the following error: ${err?.stack ?? err}`);
732
+ }
733
+ }
734
+ unsubscribeFromSignals() {
735
+ try {
736
+ this.signalToUnsubscribeMap.forEach(unsubscribe => unsubscribe());
737
+ } catch (err) {
738
+ logWarnOnce(`Attempted to call a signal's unsubscribe callback but received the following error: ${err?.stack ?? err}`);
739
+ }
740
+ }
741
+ reset() {
742
+ this.signalToUnsubscribeMap.clear();
743
+ }
668
744
  }
669
745
  function componentValueMutated(vm, key) {
670
746
  // On the server side, we don't need mutation tracking. Skipping it improves performance.
@@ -672,10 +748,24 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
672
748
  valueMutated(vm.component, key);
673
749
  }
674
750
  }
675
- function componentValueObserved(vm, key) {
751
+ function componentValueObserved(vm, key, target = {}) {
752
+ const {
753
+ component,
754
+ tro
755
+ } = vm;
676
756
  // On the server side, we don't need mutation tracking. Skipping it improves performance.
677
757
  {
678
- valueObserved(vm.component, key);
758
+ valueObserved(component, key);
759
+ }
760
+ // The portion of reactivity that's exposed to signals is to subscribe a callback to re-render the VM (templates).
761
+ // We check check the following to ensure re-render is subscribed at the correct time.
762
+ // 1. The template is currently being rendered (there is a template reactive observer)
763
+ // 2. There was a call to a getter to access the signal (happens during vnode generation)
764
+ if (lwcRuntimeFlags.ENABLE_EXPERIMENTAL_SIGNALS && isObject(target) && !isNull(target) && 'value' in target && 'subscribe' in target && isFunction$1(target.subscribe) &&
765
+ // Only subscribe if a template is being rendered by the engine
766
+ tro.isObserving()) {
767
+ // Subscribe the template reactive observer's notify method, which will mark the vm as dirty and schedule hydration.
768
+ subscribeToSignal(component, target, tro.notify.bind(tro));
679
769
  }
680
770
  }
681
771
  function createReactiveObserver(callback) {
@@ -712,6 +802,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
712
802
  }
713
803
  }
714
804
  if (nextTickCallbackQueue.length === 0) {
805
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
715
806
  Promise.resolve().then(flushCallbackQueue);
716
807
  }
717
808
  ArrayPush$1.call(nextTickCallbackQueue, callback);
@@ -794,10 +885,11 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
794
885
  slot
795
886
  } = attrs;
796
887
  if (!isUndefined$1(slot) && !isNull(slot)) {
797
- return Object.assign(Object.assign({}, data), {
888
+ return {
889
+ ...data,
798
890
  attrs: cloneAndOmitKey(attrs, 'slot'),
799
891
  slotAssignment: String(slot)
800
- });
892
+ };
801
893
  }
802
894
  }
803
895
  return data;
@@ -811,14 +903,20 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
811
903
  */
812
904
  function resolveCircularModuleDependency(fn) {
813
905
  const module = fn();
814
- return (module === null || module === void 0 ? void 0 : module.__esModule) ? module.default : module;
906
+ return module?.__esModule ? module.default : module;
815
907
  }
816
908
  function isCircularModuleDependency(obj) {
817
909
  return isFunction$1(obj) && hasOwnProperty$1.call(obj, '__circular__');
818
910
  }
819
- var _a, _b;
820
- const instrumentDef = (_a = globalThis.__lwc_instrument_cmp_def) !== null && _a !== void 0 ? _a : noop;
821
- const instrumentInstance = (_b = globalThis.__lwc_instrument_cmp_instance) !== null && _b !== void 0 ? _b : noop;
911
+
912
+ /*
913
+ * Copyright (c) 2023, salesforce.com, inc.
914
+ * All rights reserved.
915
+ * SPDX-License-Identifier: MIT
916
+ * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
917
+ */
918
+ const instrumentDef = globalThis.__lwc_instrument_cmp_def ?? noop;
919
+ const instrumentInstance = globalThis.__lwc_instrument_cmp_instance ?? noop;
822
920
 
823
921
  /*
824
922
  * Copyright (c) 2018, salesforce.com, inc.
@@ -1502,7 +1600,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
1502
1600
  valueMutated(originalTarget, key);
1503
1601
  return true;
1504
1602
  }
1505
- /*LWC compiler v6.1.1*/
1603
+ /*LWC compiler v6.2.0*/
1506
1604
  }
1507
1605
  const getterMap = new WeakMap();
1508
1606
  const setterMap = new WeakMap();
@@ -1595,7 +1693,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
1595
1693
  /* istanbul ignore next */
1596
1694
  return false;
1597
1695
  }
1598
- /*LWC compiler v6.1.1*/
1696
+ /*LWC compiler v6.2.0*/
1599
1697
  }
1600
1698
  function extract(objectOrArray) {
1601
1699
  if (isArray(objectOrArray)) {
@@ -1849,6 +1947,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
1849
1947
  }
1850
1948
  return promise;
1851
1949
  });
1950
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
1852
1951
  Promise.all(promises).then(stylesheetTexts => {
1853
1952
  // When replaceSync() is called, the entire contents of the constructable stylesheet are replaced
1854
1953
  // with the copied+concatenated styles. This means that any shadow root's adoptedStyleSheets that
@@ -1972,7 +2071,6 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
1972
2071
  } = vm.renderer;
1973
2072
  assertInstanceOfHTMLElement(vm.elm, `Component creation requires a DOM element to be associated to ${vm}.`);
1974
2073
  }
1975
- const component = this;
1976
2074
  setPrototypeOf(elm, bridge.prototype);
1977
2075
  vm.component = this;
1978
2076
  // Locker hooks assignment. When the LWC engine run with Locker, Locker intercepts all the new
@@ -1991,7 +2089,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
1991
2089
  }
1992
2090
  markLockerLiveObject(this);
1993
2091
  // Linking elm, shadow root and component with the VM.
1994
- associateVM(component, vm);
2092
+ associateVM(this, vm);
1995
2093
  associateVM(elm, vm);
1996
2094
  if (vm.renderMode === 1 /* RenderMode.Shadow */) {
1997
2095
  vm.renderRoot = doAttachShadow(vm);
@@ -2481,8 +2579,9 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
2481
2579
  return {
2482
2580
  get() {
2483
2581
  const vm = getAssociatedVM(this);
2484
- componentValueObserved(vm, key);
2485
- return vm.cmpFields[key];
2582
+ const val = vm.cmpFields[key];
2583
+ componentValueObserved(vm, key, val);
2584
+ return val;
2486
2585
  },
2487
2586
  set(newValue) {
2488
2587
  const vm = getAssociatedVM(this);
@@ -2610,6 +2709,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
2610
2709
  if (hasPendingConfig === false) {
2611
2710
  hasPendingConfig = true;
2612
2711
  // collect new config in the micro-task
2712
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
2613
2713
  Promise.resolve().then(() => {
2614
2714
  hasPendingConfig = false;
2615
2715
  // resetting current reactive params
@@ -2769,6 +2869,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
2769
2869
  connector.connect();
2770
2870
  if (!lwcRuntimeFlags.ENABLE_WIRE_SYNC_EMIT) {
2771
2871
  if (hasDynamicParams) {
2872
+ // eslint-disable-next-line @typescript-eslint/no-floating-promises
2772
2873
  Promise.resolve().then(computeConfigAndUpdate);
2773
2874
  return;
2774
2875
  }
@@ -2824,8 +2925,9 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
2824
2925
  }
2825
2926
  return;
2826
2927
  }
2827
- componentValueObserved(vm, key);
2828
- return vm.cmpProps[key];
2928
+ const val = vm.cmpProps[key];
2929
+ componentValueObserved(vm, key, val);
2930
+ return val;
2829
2931
  },
2830
2932
  set(newValue) {
2831
2933
  const vm = getAssociatedVM(this);
@@ -2902,8 +3004,9 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
2902
3004
  return {
2903
3005
  get() {
2904
3006
  const vm = getAssociatedVM(this);
2905
- componentValueObserved(vm, key);
2906
- return vm.cmpFields[key];
3007
+ const val = vm.cmpFields[key];
3008
+ componentValueObserved(vm, key, val);
3009
+ return val;
2907
3010
  },
2908
3011
  set(newValue) {
2909
3012
  const vm = getAssociatedVM(this);
@@ -3347,7 +3450,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
3347
3450
  }
3348
3451
  function HTMLBridgeElementFactory(SuperClass, publicProperties, methods, observedFields, proto, hasCustomSuperClass) {
3349
3452
  const HTMLBridgeElement = class extends SuperClass {
3350
- /*LWC compiler v6.1.1*/
3453
+ /*LWC compiler v6.2.0*/
3351
3454
  };
3352
3455
  // generating the hash table for attributes to avoid duplicate fields and facilitate validation
3353
3456
  // and false positives in case of inheritance.
@@ -3803,6 +3906,12 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
3803
3906
  let shadowSupportMode = superDef.shadowSupportMode;
3804
3907
  if (!isUndefined$1(ctorShadowSupportMode)) {
3805
3908
  shadowSupportMode = ctorShadowSupportMode;
3909
+ if (isReportingEnabled() && (shadowSupportMode === "any" /* ShadowSupportMode.Any */ || shadowSupportMode === "native" /* ShadowSupportMode.Native */)) {
3910
+ report("ShadowSupportModeUsage" /* ReportingEventId.ShadowSupportModeUsage */, {
3911
+ tagName: Ctor.name,
3912
+ mode: shadowSupportMode
3913
+ });
3914
+ }
3806
3915
  }
3807
3916
  let renderMode = superDef.renderMode;
3808
3917
  if (!isUndefined$1(ctorRenderMode)) {
@@ -4142,7 +4251,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
4142
4251
  cmpTemplate,
4143
4252
  context
4144
4253
  } = owner;
4145
- return context.hasScopedStyles && (legacy ? cmpTemplate === null || cmpTemplate === void 0 ? void 0 : cmpTemplate.legacyStylesheetToken : cmpTemplate === null || cmpTemplate === void 0 ? void 0 : cmpTemplate.stylesheetToken) || null;
4254
+ return context.hasScopedStyles && (legacy ? cmpTemplate?.legacyStylesheetToken : cmpTemplate?.stylesheetToken) || null;
4146
4255
  }
4147
4256
  /**
4148
4257
  * This function returns the host style token for a custom element if it
@@ -4285,7 +4394,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
4285
4394
  const {
4286
4395
  slotAssignment
4287
4396
  } = vnode;
4288
- if ((oldVnode === null || oldVnode === void 0 ? void 0 : oldVnode.slotAssignment) === slotAssignment) {
4397
+ if (oldVnode?.slotAssignment === slotAssignment) {
4289
4398
  return;
4290
4399
  }
4291
4400
  const {
@@ -4372,6 +4481,8 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
4372
4481
  return EmptyObject;
4373
4482
  }
4374
4483
  // computed class names must be string
4484
+ // This will throw if className is a symbol or null-prototype object
4485
+ // eslint-disable-next-line @typescript-eslint/restrict-plus-operands
4375
4486
  className = isString(className) ? className : className + '';
4376
4487
  let map = classNameToClassMap[className];
4377
4488
  if (map) {
@@ -4466,11 +4577,10 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
4466
4577
  * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
4467
4578
  */
4468
4579
  function applyEventListeners(vnode, renderer) {
4469
- var _a;
4470
4580
  const {
4471
4581
  elm
4472
4582
  } = vnode;
4473
- const on = (_a = vnode.data) === null || _a === void 0 ? void 0 : _a.on;
4583
+ const on = vnode.data?.on;
4474
4584
  if (isUndefined$1(on)) {
4475
4585
  return;
4476
4586
  }
@@ -4628,7 +4738,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
4628
4738
  * @param renderer - the renderer to use
4629
4739
  * @param mount - true this is a first (mount) render as opposed to a subsequent (patch) render
4630
4740
  */
4631
- function applyStaticParts(root, vnode, renderer, mount) {
4741
+ function mountStaticParts(root, vnode, renderer) {
4632
4742
  const {
4633
4743
  parts,
4634
4744
  owner
@@ -4636,20 +4746,46 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
4636
4746
  if (isUndefined$1(parts)) {
4637
4747
  return;
4638
4748
  }
4639
- // This adds `part.elm` to each `part`. We have to do this on every mount/patch because the `parts`
4749
+ // This adds `part.elm` to each `part`. We have to do this on every mount because the `parts`
4640
4750
  // array is recreated from scratch every time, so each `part.elm` is now undefined.
4641
- // TODO [#3800]: avoid calling traverseAndSetElements on every re-render
4642
4751
  traverseAndSetElements(root, parts, renderer);
4643
4752
  // Currently only event listeners and refs are supported for static vnodes
4644
4753
  for (const part of parts) {
4645
- if (mount) {
4646
- // Event listeners only need to be applied once when mounting
4647
- applyEventListeners(part, renderer);
4648
- }
4754
+ // Event listeners only need to be applied once when mounting
4755
+ applyEventListeners(part, renderer);
4649
4756
  // Refs must be updated after every render due to refVNodes getting reset before every render
4650
4757
  applyRefs(part, owner);
4651
4758
  }
4652
4759
  }
4760
+ /**
4761
+ * Mounts elements to the newly generated VStatic node
4762
+ *
4763
+ * @param n1 - the previous VStatic vnode
4764
+ * @param n2 - the current VStatic vnode
4765
+ */
4766
+ function patchStaticParts(n1, n2) {
4767
+ const {
4768
+ parts: currParts,
4769
+ owner: currPartsOwner
4770
+ } = n2;
4771
+ if (isUndefined$1(currParts)) {
4772
+ return;
4773
+ }
4774
+ const {
4775
+ parts: prevParts
4776
+ } = n1;
4777
+ if (process.env.NODE_ENV !== 'production') {
4778
+ assert.isTrue(currParts.length === prevParts?.length, 'Expected static parts to be the same for the same element. This is an error with the LWC framework itself.');
4779
+ }
4780
+ for (let i = 0; i < currParts.length; i++) {
4781
+ const part = currParts[i];
4782
+ // Patch only occurs if the vnode is newly generated, which means the part.elm is always undefined
4783
+ // Since the vnode and elements are the same we can safely assume that prevParts[i].elm is defined.
4784
+ part.elm = prevParts[i].elm;
4785
+ // Refs must be updated after every render due to refVNodes getting reset before every render
4786
+ applyRefs(part, currPartsOwner);
4787
+ }
4788
+ }
4653
4789
 
4654
4790
  /*
4655
4791
  * Copyright (c) 2018, salesforce.com, inc.
@@ -4665,7 +4801,6 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
4665
4801
  }
4666
4802
  }
4667
4803
  function patch(n1, n2, parent, renderer) {
4668
- var _a, _b;
4669
4804
  if (n1 === n2) {
4670
4805
  return;
4671
4806
  }
@@ -4701,15 +4836,14 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
4701
4836
  patchFragment(n1, n2, parent, renderer);
4702
4837
  break;
4703
4838
  case 2 /* VNodeType.Element */:
4704
- patchElement(n1, n2, (_a = n2.data.renderer) !== null && _a !== void 0 ? _a : renderer);
4839
+ patchElement(n1, n2, n2.data.renderer ?? renderer);
4705
4840
  break;
4706
4841
  case 3 /* VNodeType.CustomElement */:
4707
- patchCustomElement(n1, n2, parent, (_b = n2.data.renderer) !== null && _b !== void 0 ? _b : renderer);
4842
+ patchCustomElement(n1, n2, parent, n2.data.renderer ?? renderer);
4708
4843
  break;
4709
4844
  }
4710
4845
  }
4711
4846
  function mount(node, parent, renderer, anchor) {
4712
- var _a, _b;
4713
4847
  switch (node.type) {
4714
4848
  case 0 /* VNodeType.Text */:
4715
4849
  // VText has no special capability, fallback to the owner's renderer
@@ -4728,11 +4862,11 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
4728
4862
  break;
4729
4863
  case 2 /* VNodeType.Element */:
4730
4864
  // If the vnode data has a renderer override use it, else fallback to owner's renderer
4731
- mountElement(node, parent, anchor, (_a = node.data.renderer) !== null && _a !== void 0 ? _a : renderer);
4865
+ mountElement(node, parent, anchor, node.data.renderer ?? renderer);
4732
4866
  break;
4733
4867
  case 3 /* VNodeType.CustomElement */:
4734
4868
  // If the vnode data has a renderer override use it, else fallback to owner's renderer
4735
- mountCustomElement(node, parent, anchor, (_b = node.data.renderer) !== null && _b !== void 0 ? _b : renderer);
4869
+ mountCustomElement(node, parent, anchor, node.data.renderer ?? renderer);
4736
4870
  break;
4737
4871
  }
4738
4872
  }
@@ -4814,11 +4948,11 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
4814
4948
  mountVNodes(vnode.children, elm, renderer, null);
4815
4949
  }
4816
4950
  function patchStatic(n1, n2, renderer) {
4817
- const elm = n2.elm = n1.elm;
4951
+ n2.elm = n1.elm;
4818
4952
  // slotAssignments can only apply to the top level element, never to a static part.
4819
4953
  patchSlotAssignment(n1, n2, renderer);
4820
4954
  // The `refs` object is blown away in every re-render, so we always need to re-apply them
4821
- applyStaticParts(elm, n2, renderer, false);
4955
+ patchStaticParts(n1, n2);
4822
4956
  }
4823
4957
  function patchElement(n1, n2, renderer) {
4824
4958
  const elm = n2.elm = n1.elm;
@@ -4849,7 +4983,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
4849
4983
  // slotAssignments can only apply to the top level element, never to a static part.
4850
4984
  patchSlotAssignment(null, vnode, renderer);
4851
4985
  insertNode(elm, parent, anchor, renderer);
4852
- applyStaticParts(elm, vnode, renderer, true);
4986
+ mountStaticParts(elm, vnode, renderer);
4853
4987
  }
4854
4988
  function mountCustomElement(vnode, parent, anchor, renderer) {
4855
4989
  const {
@@ -5135,22 +5269,20 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
5135
5269
  }
5136
5270
  }
5137
5271
  function applyDomManual(elm, vnode) {
5138
- var _a;
5139
5272
  const {
5140
5273
  owner,
5141
5274
  data: {
5142
5275
  context
5143
5276
  }
5144
5277
  } = vnode;
5145
- if (owner.shadowMode === 1 /* ShadowMode.Synthetic */ && ((_a = context === null || context === void 0 ? void 0 : context.lwc) === null || _a === void 0 ? void 0 : _a.dom) === "manual" /* LwcDomMode.Manual */) {
5278
+ if (owner.shadowMode === 1 /* ShadowMode.Synthetic */ && context?.lwc?.dom === "manual" /* LwcDomMode.Manual */) {
5146
5279
  elm.$domManual$ = true;
5147
5280
  }
5148
5281
  }
5149
5282
  function applyElementRestrictions(elm, vnode) {
5150
- var _a, _b;
5151
5283
  if (process.env.NODE_ENV !== 'production') {
5152
5284
  const isSynthetic = vnode.owner.shadowMode === 1 /* ShadowMode.Synthetic */;
5153
- const isPortal = vnode.type === 2 /* VNodeType.Element */ && ((_b = (_a = vnode.data.context) === null || _a === void 0 ? void 0 : _a.lwc) === null || _b === void 0 ? void 0 : _b.dom) === "manual" /* LwcDomMode.Manual */;
5285
+ const isPortal = vnode.type === 2 /* VNodeType.Element */ && vnode.data.context?.lwc?.dom === "manual" /* LwcDomMode.Manual */;
5154
5286
  const isLight = vnode.owner.renderMode === 0 /* RenderMode.Light */;
5155
5287
  patchElementWithRestrictions(elm, {
5156
5288
  isPortal,
@@ -5263,7 +5395,6 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
5263
5395
  return vm;
5264
5396
  }
5265
5397
  function allocateInSlot(vm, children, owner) {
5266
- var _a;
5267
5398
  const {
5268
5399
  cmpSlots: {
5269
5400
  slotAssignments: oldSlotsMapping
@@ -5278,7 +5409,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
5278
5409
  }
5279
5410
  let slotName = '';
5280
5411
  if (isVBaseElement(vnode) || isVStatic(vnode)) {
5281
- slotName = (_a = vnode.slotAssignment) !== null && _a !== void 0 ? _a : '';
5412
+ slotName = vnode.slotAssignment ?? '';
5282
5413
  } else if (isVScopedSlotFragment(vnode)) {
5283
5414
  slotName = vnode.slotName;
5284
5415
  }
@@ -5286,6 +5417,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
5286
5417
  // but elm.setAttribute('slot', Symbol(1)) is an error.
5287
5418
  // the following line also throws same error for symbols
5288
5419
  // Similar for Object.create(null)
5420
+ // eslint-disable-next-line @typescript-eslint/restrict-plus-operands
5289
5421
  const normalizedSlotName = '' + slotName;
5290
5422
  const vnodes = cmpSlotsMapping[normalizedSlotName] = cmpSlotsMapping[normalizedSlotName] || [];
5291
5423
  ArrayPush$1.call(vnodes, vnode);
@@ -5669,13 +5801,14 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
5669
5801
  // to the vnode because the current way the diffing algo works, it will replace the original reference
5670
5802
  // to the host element with a new one. This means the new element will be mounted and immediately unmounted.
5671
5803
  // Creating a copy of the vnode to preserve a reference to the previous host element.
5672
- clonedVNode = Object.assign(Object.assign({}, vnode), {
5804
+ clonedVNode = {
5805
+ ...vnode,
5673
5806
  slotAssignment: data.slotAssignment
5674
- });
5807
+ };
5675
5808
  }
5676
5809
  // If the slot content is standard type, the content is static, no additional
5677
5810
  // processing needed on the vnode
5678
- ArrayPush$1.call(newChildren, clonedVNode !== null && clonedVNode !== void 0 ? clonedVNode : vnode);
5811
+ ArrayPush$1.call(newChildren, clonedVNode ?? vnode);
5679
5812
  }
5680
5813
  }
5681
5814
  }
@@ -6126,7 +6259,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
6126
6259
  start(markName);
6127
6260
  }
6128
6261
  if (isProfilerEnabled) {
6129
- currentDispatcher(opId, 0 /* Phase.Start */, vm === null || vm === void 0 ? void 0 : vm.tagName, vm === null || vm === void 0 ? void 0 : vm.idx, vm === null || vm === void 0 ? void 0 : vm.renderMode, vm === null || vm === void 0 ? void 0 : vm.shadowMode);
6262
+ currentDispatcher(opId, 0 /* Phase.Start */, vm?.tagName, vm?.idx, vm?.renderMode, vm?.shadowMode);
6130
6263
  }
6131
6264
  }
6132
6265
  function logGlobalOperationEnd(opId, vm) {
@@ -6136,7 +6269,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
6136
6269
  end(opName, markName);
6137
6270
  }
6138
6271
  if (isProfilerEnabled) {
6139
- currentDispatcher(opId, 1 /* Phase.Stop */, vm === null || vm === void 0 ? void 0 : vm.tagName, vm === null || vm === void 0 ? void 0 : vm.idx, vm === null || vm === void 0 ? void 0 : vm.renderMode, vm === null || vm === void 0 ? void 0 : vm.shadowMode);
6272
+ currentDispatcher(opId, 1 /* Phase.Stop */, vm?.tagName, vm?.idx, vm?.renderMode, vm?.shadowMode);
6140
6273
  }
6141
6274
  }
6142
6275
 
@@ -6160,7 +6293,6 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
6160
6293
  cmpSlots
6161
6294
  } = vm;
6162
6295
  for (const slotName in cmpSlots.slotAssignments) {
6163
- // eslint-disable-next-line @lwc/lwc-internal/no-production-assert
6164
6296
  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}.`);
6165
6297
  }
6166
6298
  }
@@ -6492,16 +6624,14 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
6492
6624
  return Ctor;
6493
6625
  }
6494
6626
  function getComponentRegisteredTemplate(Ctor) {
6495
- var _a;
6496
- return (_a = registeredComponentMap.get(Ctor)) === null || _a === void 0 ? void 0 : _a.tmpl;
6627
+ return registeredComponentMap.get(Ctor)?.tmpl;
6497
6628
  }
6498
6629
  function getComponentRegisteredName(Ctor) {
6499
- var _a;
6500
- return (_a = registeredComponentMap.get(Ctor)) === null || _a === void 0 ? void 0 : _a.sel;
6630
+ return registeredComponentMap.get(Ctor)?.sel;
6501
6631
  }
6502
6632
  function getComponentAPIVersion(Ctor) {
6503
6633
  const metadata = registeredComponentMap.get(Ctor);
6504
- const apiVersion = metadata === null || metadata === void 0 ? void 0 : metadata.apiVersion;
6634
+ const apiVersion = metadata?.apiVersion;
6505
6635
  if (isUndefined$1(apiVersion)) {
6506
6636
  // This should only occur in our Karma tests; in practice every component
6507
6637
  // is registered, and so this code path should not get hit. But to be safe,
@@ -6521,11 +6651,30 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
6521
6651
  }
6522
6652
  });
6523
6653
  }
6654
+ function resetTemplateObserverAndUnsubscribe(vm) {
6655
+ const {
6656
+ tro,
6657
+ component
6658
+ } = vm;
6659
+ tro.reset();
6660
+ // Unsubscribe every time the template reactive observer is reset.
6661
+ if (lwcRuntimeFlags.ENABLE_EXPERIMENTAL_SIGNALS) {
6662
+ unsubscribeFromSignals(component);
6663
+ }
6664
+ }
6524
6665
  function renderComponent(vm) {
6525
6666
  if (process.env.NODE_ENV !== 'production') {
6526
6667
  assert.invariant(vm.isDirty, `${vm} is not dirty.`);
6527
6668
  }
6528
- vm.tro.reset();
6669
+ // The engine should only hold a subscription to a signal if it is rendered in the template.
6670
+ // Because of the potential presence of conditional rendering logic, we unsubscribe on each render
6671
+ // in the scenario where it is present in one condition but not the other.
6672
+ // For example:
6673
+ // 1. There is an lwc:if=true conditional where the signal is present on the template.
6674
+ // 2. The lwc:if changes to false and the signal is no longer present on the template.
6675
+ // If the signal is still subscribed to, the template will re-render when it receives a notification
6676
+ // from the signal, even though we won't be using the new value.
6677
+ resetTemplateObserverAndUnsubscribe(vm);
6529
6678
  const vnodes = invokeComponentRenderMethod(vm);
6530
6679
  vm.isDirty = false;
6531
6680
  vm.isScheduled = false;
@@ -6602,11 +6751,8 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
6602
6751
  state
6603
6752
  } = vm;
6604
6753
  if (state !== 2 /* VMState.disconnected */) {
6605
- const {
6606
- tro
6607
- } = vm;
6608
6754
  // Making sure that any observing record will not trigger the rehydrated on this vm
6609
- tro.reset();
6755
+ resetTemplateObserverAndUnsubscribe(vm);
6610
6756
  runDisconnectedCallback(vm);
6611
6757
  // Spec: https://dom.spec.whatwg.org/#concept-node-remove (step 14-15)
6612
6758
  runChildNodesDisconnectedCallback(vm);
@@ -6931,7 +7077,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
6931
7077
  logGlobalOperationEnd(8 /* OperationId.GlobalRehydrate */);
6932
7078
  // re-throwing the original error will break the current tick, but since the next tick is
6933
7079
  // already scheduled, it should continue patching the rest.
6934
- throw error; // eslint-disable-line no-unsafe-finally
7080
+ throw error;
6935
7081
  }
6936
7082
  }
6937
7083
  logGlobalOperationEnd(8 /* OperationId.GlobalRehydrate */);
@@ -7420,7 +7566,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
7420
7566
  setValueType = isNull(setValue) ? 'null' : typeof setValue;
7421
7567
  }
7422
7568
  report("NonStandardAriaReflection" /* ReportingEventId.NonStandardAriaReflection */, {
7423
- tagName: vm === null || vm === void 0 ? void 0 : vm.tagName,
7569
+ tagName: vm?.tagName,
7424
7570
  propertyName: prop,
7425
7571
  isSetter,
7426
7572
  setValueType
@@ -7505,7 +7651,6 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
7505
7651
  runRenderedCallback(vm);
7506
7652
  }
7507
7653
  function hydrateNode(node, vnode, renderer) {
7508
- var _a, _b;
7509
7654
  let hydratedNode;
7510
7655
  switch (vnode.type) {
7511
7656
  case 0 /* VNodeType.Text */:
@@ -7525,10 +7670,10 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
7525
7670
  hydratedNode = hydrateFragment(node, vnode, renderer);
7526
7671
  break;
7527
7672
  case 2 /* VNodeType.Element */:
7528
- hydratedNode = hydrateElement(node, vnode, (_a = vnode.data.renderer) !== null && _a !== void 0 ? _a : renderer);
7673
+ hydratedNode = hydrateElement(node, vnode, vnode.data.renderer ?? renderer);
7529
7674
  break;
7530
7675
  case 3 /* VNodeType.CustomElement */:
7531
- hydratedNode = hydrateCustomElement(node, vnode, (_b = vnode.data.renderer) !== null && _b !== void 0 ? _b : renderer);
7676
+ hydratedNode = hydrateCustomElement(node, vnode, vnode.data.renderer ?? renderer);
7532
7677
  break;
7533
7678
  }
7534
7679
  return renderer.nextSibling(hydratedNode);
@@ -7573,7 +7718,6 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
7573
7718
  return _attrName => true;
7574
7719
  }
7575
7720
  function hydrateText(node, vnode, renderer) {
7576
- var _a;
7577
7721
  if (!hasCorrectNodeType(vnode, node, 3 /* EnvNodeTypes.TEXT */, renderer)) {
7578
7722
  return handleMismatch(node, vnode, renderer);
7579
7723
  }
@@ -7585,12 +7729,11 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
7585
7729
  const {
7586
7730
  setText
7587
7731
  } = renderer;
7588
- setText(node, (_a = vnode.text) !== null && _a !== void 0 ? _a : null);
7732
+ setText(node, vnode.text ?? null);
7589
7733
  vnode.elm = node;
7590
7734
  return node;
7591
7735
  }
7592
7736
  function hydrateComment(node, vnode, renderer) {
7593
- var _a;
7594
7737
  if (!hasCorrectNodeType(vnode, node, 8 /* EnvNodeTypes.COMMENT */, renderer)) {
7595
7738
  return handleMismatch(node, vnode, renderer);
7596
7739
  }
@@ -7606,7 +7749,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
7606
7749
  const {
7607
7750
  setProperty
7608
7751
  } = renderer;
7609
- setProperty(node, NODE_VALUE_PROP, (_a = vnode.text) !== null && _a !== void 0 ? _a : null);
7752
+ setProperty(node, NODE_VALUE_PROP, vnode.text ?? null);
7610
7753
  vnode.elm = node;
7611
7754
  return node;
7612
7755
  }
@@ -7615,7 +7758,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
7615
7758
  return handleMismatch(elm, vnode, renderer);
7616
7759
  }
7617
7760
  vnode.elm = elm;
7618
- applyStaticParts(elm, vnode, renderer, true);
7761
+ mountStaticParts(elm, vnode, renderer);
7619
7762
  return elm;
7620
7763
  }
7621
7764
  function hydrateFragment(elm, vnode, renderer) {
@@ -7652,9 +7795,10 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
7652
7795
  if (!isUndefined$1(props) && !isUndefined$1(props.innerHTML)) {
7653
7796
  if (getProperty(elm, 'innerHTML') === props.innerHTML) {
7654
7797
  // Do a shallow clone since VNodeData may be shared across VNodes due to hoist optimization
7655
- vnode.data = Object.assign(Object.assign({}, vnode.data), {
7798
+ vnode.data = {
7799
+ ...vnode.data,
7656
7800
  props: cloneAndOmitKey(props, 'innerHTML')
7657
- });
7801
+ };
7658
7802
  } else {
7659
7803
  if (process.env.NODE_ENV !== 'production') {
7660
7804
  logWarn(`Mismatch hydrating element <${getProperty(elm, 'tagName').toLowerCase()}>: innerHTML values do not match for element, will recover from the difference`, owner);
@@ -7901,11 +8045,15 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
7901
8045
  const classNames = ArrayFilter.call(classTokens, token => !isNull(token));
7902
8046
  className = ArrayJoin.call(classNames, ' ');
7903
8047
  } else if (!isUndefined$1(classMap)) {
7904
- classMap = Object.assign(Object.assign(Object.assign({}, classMap), !isNull(scopedToken) ? {
7905
- [scopedToken]: true
7906
- } : {}), !isNull(stylesheetTokenHost) ? {
7907
- [stylesheetTokenHost]: true
7908
- } : {});
8048
+ classMap = {
8049
+ ...classMap,
8050
+ ...(!isNull(scopedToken) ? {
8051
+ [scopedToken]: true
8052
+ } : {}),
8053
+ ...(!isNull(stylesheetTokenHost) ? {
8054
+ [stylesheetTokenHost]: true
8055
+ } : {})
8056
+ };
7909
8057
  } else {
7910
8058
  // The order of the className should be scopedToken stylesheetTokenHost
7911
8059
  const classTokens = [scopedToken, stylesheetTokenHost];
@@ -8290,7 +8438,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
8290
8438
  }
8291
8439
  return getReadOnlyProxy(obj);
8292
8440
  }
8293
- /** version: 6.1.1 */
8441
+ /** version: 6.2.0 */
8294
8442
 
8295
8443
  /*
8296
8444
  * Copyright (c) 2018, salesforce.com, inc.
@@ -8524,6 +8672,8 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
8524
8672
  const createUpgradableConstructor = () => {
8525
8673
  // TODO [#2972]: this class should expose observedAttributes as necessary
8526
8674
  class UpgradableConstructor extends HTMLElement {
8675
+ // TODO [#3983]: Re-enable formAssociated once there is a solution for the observable behavior it introduces.
8676
+ // static formAssociated = true;
8527
8677
  constructor(upgradeCallback, useNativeLifecycle) {
8528
8678
  super();
8529
8679
  if (useNativeLifecycle) {
@@ -8540,9 +8690,8 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
8540
8690
  // TODO [#2970]: LWC elements cannot be upgraded via new Ctor()
8541
8691
  // Do we want to support this? Throw an error? Currently for backwards compat it's a no-op.
8542
8692
  }
8543
- /*LWC compiler v6.1.1*/
8693
+ /*LWC compiler v6.2.0*/
8544
8694
  }
8545
- UpgradableConstructor.formAssociated = true;
8546
8695
  for (const [propName, callback] of entries(LIFECYCLE_CALLBACKS)) {
8547
8696
  UpgradableConstructor.prototype[propName] = function () {
8548
8697
  // If the element is in the WeakMap (i.e. it's marked as native lifecycle), and if it was upgraded by LWC,
@@ -8634,7 +8783,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
8634
8783
  function isNull(obj) {
8635
8784
  return obj === null;
8636
8785
  }
8637
- /** version: 6.1.1 */
8786
+ /** version: 6.2.0 */
8638
8787
 
8639
8788
  /*
8640
8789
  * Copyright (c) 2023, salesforce.com, inc.
@@ -8654,7 +8803,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
8654
8803
  this.setNewContext = setNewContext;
8655
8804
  this.setDisconnectedCallback = setDisconnectedCallback;
8656
8805
  }
8657
- /*LWC compiler v6.1.1*/
8806
+ /*LWC compiler v6.2.0*/
8658
8807
  }
8659
8808
  function registerContextConsumer(elm, adapterContextToken, subscriptionPayload) {
8660
8809
  dispatchEvent(elm, new WireContextSubscriptionEvent(adapterContextToken, subscriptionPayload));
@@ -9034,7 +9183,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
9034
9183
  attributeChangedCallback(name, oldValue, newValue) {
9035
9184
  attributeChangedCallback.call(this, name, oldValue, newValue);
9036
9185
  }
9037
- /*LWC compiler v6.1.1*/
9186
+ /*LWC compiler v6.2.0*/
9038
9187
  }, _a.observedAttributes = observedAttributes, _a;
9039
9188
  }
9040
9189
 
@@ -9249,7 +9398,7 @@ LWR.define('lwc/v/6_1_1', ['exports'], (function (exports) { 'use strict';
9249
9398
  });
9250
9399
  });
9251
9400
  }
9252
- /** version: 6.1.1 */
9401
+ /** version: 6.2.0 */
9253
9402
 
9254
9403
  exports.LightningElement = LightningElement;
9255
9404
  exports.__unstable__ProfilerControl = profilerControl;