@lwrjs/everywhere 0.19.0-alpha.1 → 0.19.0-alpha.11

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 (23) hide show
  1. package/build/__generated_site_amd_modules__/1/application/amd/l/en-US/ai/amd-bootstrap/configuration/ci/-/-/s/8cf2875409f4de9d0b714c4958f01544/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_19_0-alpha_1 → 0_19_0-alpha_11}/s/3aba11034f11c8d5598c93bfca4d4690/@lwrjs_app-service_amd-bootstrap_module_amd.js +5 -5
  3. package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwc/v/{8_16_2/s/d4a5acea77777cf5173d0f5abdec9dba → 8_20_1/s/13f9f9934fd3a3c9f52760160b464d00}/lwc.js +325 -41
  4. package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/everywhereAmd/v/{0_19_0-alpha_1 → 0_19_0-alpha_11}/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_19_0-alpha_1 → 0_19_0-alpha_11}/s/ba081ae41570981325062377381a1ea2/lwr_init.js +21 -21
  6. package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/loader/v/{0_19_0-alpha_1/s/aff2054dd8ddc7bf7106b2a702582f18 → 0_19_0-alpha_11/s/e291cbd664a999321175b68b9208583b}/lwr_loader.js +28 -6
  7. package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/metrics/v/{0_19_0-alpha_1 → 0_19_0-alpha_11}/s/fb8c5dd340c69fdf7ded52d3eba633b9/lwr_metrics.js +1 -1
  8. package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/preInit/v/{0_19_0-alpha_1 → 0_19_0-alpha_11}/s/7d064ec3a80dbbccaa4845ea5eaef125/lwr_preInit.js +1 -1
  9. package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/profiler/v/{0_19_0-alpha_1 → 0_19_0-alpha_11}/s/9f74c8370534ce02c6e7637abdcffedf/lwr_profiler.js +1 -1
  10. package/build/__generated_site_amd_modules__/1/module/amd/1/l/en-US/mi/lwr/vault/v/{0_19_0-alpha_1 → 0_19_0-alpha_11}/s/c92abd8c1fec2d7eff62e4b097abbe14/lwr_vault.js +1 -1
  11. package/build/__generated_site_amd_modules__/1/resource/amd/lwr-error-shim.js/v/{0_19_0-alpha_1 → 0_19_0-alpha_11}/lwr-error-shim.js +1 -1
  12. package/build/__generated_site_amd_modules__/1/resource/amd/lwr-loader-shim.bundle.js/v/{0_19_0-alpha_1 → 0_19_0-alpha_11}/lwr-loader-shim.bundle.js +39 -17
  13. package/build/assets/amd/lwr-everywhere-debug.js +34 -11
  14. package/build/assets/amd/lwr-everywhere-min.js +2 -2
  15. package/build/assets/amd/lwr-everywhere.js +34 -11
  16. package/build/assets/core/lwr-everywhere-debug.js +30 -7
  17. package/build/assets/core/lwr-everywhere-min.js +2 -2
  18. package/build/assets/core/lwr-everywhere.js +30 -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 +6 -6
  23. package/build/__generated_site_amd_modules__/1/application/amd/l/en-US/ai/amd-bootstrap/configuration/ci/-/-/s/8ead399acb5b2815d73d53d4643f041f/config.js +0 -12
@@ -0,0 +1,12 @@
1
+ /* This script is generated */
2
+ /* Client Bootstrap configuration */
3
+ globalThis.LWR = globalThis.LWR || {};
4
+ Object.assign(globalThis.LWR, {"appId":"amd-bootstrap","bootstrapModule":"@lwrjs/app-service/amd-bootstrap/module/amd/v/0_19_0-alpha_11","autoBoot":true,"imports":{"/1/module/amd/1/l/en-US/mi/%40lwrjs%2Fapp-service%2Famd-bootstrap%2Fmodule%2Famd%2Fv%2F0_19_0-alpha_11/s/3aba11034f11c8d5598c93bfca4d4690/@lwrjs_app-service_amd-bootstrap_module_amd.js":["@lwrjs/app-service/amd-bootstrap/module/amd/v/0_19_0-alpha_11"],"/1/module/amd/1/l/en-US/mi/lwr%2FpreInit%2Fv%2F0_19_0-alpha_11/s/7d064ec3a80dbbccaa4845ea5eaef125/lwr_preInit.js":["lwr/preInit/v/0_19_0-alpha_11"],"/1/module/amd/1/l/en-US/mi/lwr%2Finit%2Fv%2F0_19_0-alpha_11/s/ba081ae41570981325062377381a1ea2/lwr_init.js":["lwr/init/v/0_19_0-alpha_11"],"/1/module/amd/1/l/en-US/mi/lwr%2Fmetrics%2Fv%2F0_19_0-alpha_11/s/fb8c5dd340c69fdf7ded52d3eba633b9/lwr_metrics.js":["lwr/metrics/v/0_19_0-alpha_11"],"/1/module/amd/1/l/en-US/mi/lwc%2Fv%2F8_20_1/s/13f9f9934fd3a3c9f52760160b464d00/lwc.js":["lwc/v/8_20_1"],"/1/module/amd/1/l/en-US/mi/lwr%2FeverywhereAmd%2Fv%2F0_19_0-alpha_11/s/cb931ebef2b89dcf8ab51456e3a68864/lwr_everywhereAmd.js":["lwr/everywhereAmd/v/0_19_0-alpha_11"],"/1/module/amd/1/l/en-US/mi/lwr%2Fvault%2Fv%2F0_19_0-alpha_11/s/c92abd8c1fec2d7eff62e4b097abbe14/lwr_vault.js":["lwr/vault/v/0_19_0-alpha_11"]},"index":{"@lwrjs/app-service/amd-bootstrap/module/amd/v/0_19_0-alpha_11":"/1/module/amd/1/l/en-US/mi/%40lwrjs%2Fapp-service%2Famd-bootstrap%2Fmodule%2Famd%2Fv%2F0_19_0-alpha_11/s/3aba11034f11c8d5598c93bfca4d4690/@lwrjs_app-service_amd-bootstrap_module_amd.js","lwr/preInit/v/0_19_0-alpha_11":"/1/module/amd/1/l/en-US/mi/lwr%2FpreInit%2Fv%2F0_19_0-alpha_11/s/7d064ec3a80dbbccaa4845ea5eaef125/lwr_preInit.js","lwr/init/v/0_19_0-alpha_11":"/1/module/amd/1/l/en-US/mi/lwr%2Finit%2Fv%2F0_19_0-alpha_11/s/ba081ae41570981325062377381a1ea2/lwr_init.js","lwr/metrics/v/0_19_0-alpha_11":"/1/module/amd/1/l/en-US/mi/lwr%2Fmetrics%2Fv%2F0_19_0-alpha_11/s/fb8c5dd340c69fdf7ded52d3eba633b9/lwr_metrics.js","lwc/v/8_20_1":"/1/module/amd/1/l/en-US/mi/lwc%2Fv%2F8_20_1/s/13f9f9934fd3a3c9f52760160b464d00/lwc.js","lwr/everywhereAmd/v/0_19_0-alpha_11":"/1/module/amd/1/l/en-US/mi/lwr%2FeverywhereAmd%2Fv%2F0_19_0-alpha_11/s/cb931ebef2b89dcf8ab51456e3a68864/lwr_everywhereAmd.js","lwr/vault/v/0_19_0-alpha_11":"/1/module/amd/1/l/en-US/mi/lwr%2Fvault%2Fv%2F0_19_0-alpha_11/s/c92abd8c1fec2d7eff62e4b097abbe14/lwr_vault.js"},"rootComponents":["lwr/everywhereAmd/v/0_19_0-alpha_11"],"serverData":{},"requiredModules":["@lwrjs/app-service/amd-bootstrap/module/amd/v/0_19_0-alpha_11"],"preloadModules":["lwr/preInit/v/0_19_0-alpha_11","lwr/init/v/0_19_0-alpha_11","lwr/metrics/v/0_19_0-alpha_11","lwc/v/8_20_1","lwr/everywhereAmd/v/0_19_0-alpha_11"],"endpoints":{"uris":{"mapping":"/1/mapping/amd/1/l/en-US/mp/"}}});
5
+ globalThis.LWR = {...globalThis.LWR, env: {"SSR":false,"SSREnabled":false,"basePath":"","locale":"en-US","assetBasePath":"","uiBasePath":""}};
6
+ globalThis.process={...globalThis.process,env:{...globalThis.process?.env,...{"NODE_ENV":"compat"}}};
7
+ globalThis.lwcRuntimeFlags = { ENABLE_MIXED_SHADOW_MODE: false, ENABLE_WIRE_SYNC_EMIT: false };
8
+ // Appended by Static Site Generator
9
+ if (!globalThis.LWR.imports) { globalThis.LWR.imports = {}; }
10
+ Object.assign(globalThis.LWR.imports, {"/1/module/amd/1/l/en-US/mi/lwr%2Fprofiler%2Fv%2F0_19_0-alpha_11/s/9f74c8370534ce02c6e7637abdcffedf/lwr_profiler.js":["lwr/profiler/v/0_19_0-alpha_11"],"/1/module/amd/1/l/en-US/mi/lwr%2Floader%2Fv%2F0_19_0-alpha_11/s/e291cbd664a999321175b68b9208583b/lwr_loader.js":["lwr/loader/v/0_19_0-alpha_11"]})
11
+ if (!globalThis.LWR.index) { globalThis.LWR.index = {}; }
12
+ Object.assign(globalThis.LWR.index, {"lwr/profiler/v/0_19_0-alpha_11":"/1/module/amd/1/l/en-US/mi/lwr%2Fprofiler%2Fv%2F0_19_0-alpha_11/s/9f74c8370534ce02c6e7637abdcffedf/lwr_profiler.js","lwr/loader/v/0_19_0-alpha_11":"/1/module/amd/1/l/en-US/mi/lwr%2Floader%2Fv%2F0_19_0-alpha_11/s/e291cbd664a999321175b68b9208583b/lwr_loader.js"})
@@ -1,15 +1,15 @@
1
- LWR.define('@lwrjs/app-service/amd-bootstrap/module/amd/v/0_19_0-alpha_1', ['lwr/loader/v/0_19_0-alpha_1', 'lwr/preInit/v/0_19_0-alpha_1', 'lwr/init/v/0_19_0-alpha_1'], (function (_0_19_0Alpha_1$2, _0_19_0Alpha_1, _0_19_0Alpha_1$1) { 'use strict';
1
+ LWR.define('@lwrjs/app-service/amd-bootstrap/module/amd/v/0_19_0-alpha_11', ['lwr/loader/v/0_19_0-alpha_11', 'lwr/preInit/v/0_19_0-alpha_11', 'lwr/init/v/0_19_0-alpha_11'], (function (_0_19_0Alpha_11$2, _0_19_0Alpha_11, _0_19_0Alpha_11$1) { 'use strict';
2
2
 
3
- const clientBootstrapConfig = _0_19_0Alpha_1.getClientBootstrapConfig();
3
+ const clientBootstrapConfig = _0_19_0Alpha_11.getClientBootstrapConfig();
4
4
  const { serverData, rootComponents } = clientBootstrapConfig;
5
5
 
6
6
  // initialize additional non-configured root components
7
7
  Promise.all(rootComponents.map(async (rootSpecifier) => {
8
- const element = _0_19_0Alpha_1$1.toKebabCase(rootSpecifier);
9
- const { default: Ctor } = await _0_19_0Alpha_1$2.load(rootSpecifier, '@lwrjs/app-service/amd-bootstrap/module/amd/v/0_19_0-alpha_1');
8
+ const element = _0_19_0Alpha_11$1.toKebabCase(rootSpecifier);
9
+ const { default: Ctor } = await _0_19_0Alpha_11$2.load(rootSpecifier, '@lwrjs/app-service/amd-bootstrap/module/amd/v/0_19_0-alpha_11');
10
10
  return [element, Ctor];
11
11
  })).then((rootModules) => {
12
- return _0_19_0Alpha_1$1.init(rootModules, serverData);
12
+ return _0_19_0Alpha_11$1.init(rootModules, serverData);
13
13
  }).then(() => {
14
14
  globalThis?.lwcRuntimeFlags?.ENABLE_WIRE_SYNC_EMIT &&
15
15
  (globalThis.lwcRuntimeFlags = {
@@ -1,4 +1,4 @@
1
- LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
1
+ LWR.define('lwc/v/8_20_1', ['exports'], (function (exports) { 'use strict';
2
2
 
3
3
  /**
4
4
  * Copyright (c) 2025 Salesforce, Inc.
@@ -400,8 +400,42 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
400
400
  'aria-labelledby',
401
401
  'aria-owns',
402
402
  'for',
403
+ 'popovertarget',
403
404
  ]);
404
405
 
406
+ /*
407
+ * Copyright (c) 2024, salesforce.com, inc.
408
+ * All rights reserved.
409
+ * SPDX-License-Identifier: MIT
410
+ * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
411
+ */
412
+ const ContextEventName = 'lightning:context-request';
413
+ let trustedContext;
414
+ let contextKeys;
415
+ function setContextKeys(config) {
416
+ isFalse$1(contextKeys, '`setContextKeys` cannot be called more than once');
417
+ contextKeys = config;
418
+ }
419
+ function getContextKeys() {
420
+ return contextKeys;
421
+ }
422
+ function setTrustedContextSet(context) {
423
+ isFalse$1(trustedContext, 'Trusted Context Set is already set!');
424
+ trustedContext = context;
425
+ }
426
+ function addTrustedContext(contextParticipant) {
427
+ // This should be a no-op when the trustedSignals set isn't set by runtime
428
+ trustedContext?.add(contextParticipant);
429
+ }
430
+ function isTrustedContext(target) {
431
+ if (!trustedContext) {
432
+ // The runtime didn't set a trustedContext set
433
+ // this check should only be performed for runtimes that care about filtering context participants to track
434
+ return true;
435
+ }
436
+ return trustedContext.has(target);
437
+ }
438
+
405
439
  /*
406
440
  * Copyright (c) 2023, Salesforce.com, inc.
407
441
  * All rights reserved.
@@ -521,7 +555,7 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
521
555
  * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
522
556
  */
523
557
  // Increment whenever the LWC template compiler changes
524
- const LWC_VERSION = "8.16.2";
558
+ const LWC_VERSION = "8.20.1";
525
559
  const LWC_VERSION_COMMENT_REGEX = /\/\*LWC compiler v([\d.]+)\*\/\s*}/;
526
560
 
527
561
  /*
@@ -642,7 +676,7 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
642
676
  }
643
677
  return trustedSignals.has(target);
644
678
  }
645
- /** version: 8.16.2 */
679
+ /** version: 8.20.1 */
646
680
 
647
681
  /**
648
682
  * Copyright (c) 2025 Salesforce, Inc.
@@ -669,6 +703,7 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
669
703
  DISABLE_SYNTHETIC_SHADOW: null,
670
704
  DISABLE_SCOPE_TOKEN_VALIDATION: null,
671
705
  LEGACY_LOCKER_ENABLED: null,
706
+ DISABLE_LEGACY_VALIDATION: null,
672
707
  };
673
708
  if (!globalThis.lwcRuntimeFlags) {
674
709
  Object.defineProperty(globalThis, 'lwcRuntimeFlags', { value: create(null) });
@@ -729,7 +764,55 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
729
764
  setFeatureFlag(name, value);
730
765
  }
731
766
  }
732
- /** version: 8.16.2 */
767
+ /** version: 8.20.1 */
768
+
769
+ /**
770
+ * Copyright (c) 2025 Salesforce, Inc.
771
+ */
772
+ /**
773
+ * Copyright (c) 2025 Salesforce, Inc.
774
+ */
775
+ /*
776
+ * Copyright (c) 2018, salesforce.com, inc.
777
+ * All rights reserved.
778
+ * SPDX-License-Identifier: MIT
779
+ * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
780
+ */
781
+ /**
782
+ *
783
+ * @param value
784
+ * @param msg
785
+ */
786
+ /**
787
+ *
788
+ * @param value
789
+ * @param msg
790
+ */
791
+ /** version: 8.20.1 */
792
+
793
+ /*
794
+ * Copyright (c) 2023, salesforce.com, inc.
795
+ * All rights reserved.
796
+ * SPDX-License-Identifier: MIT
797
+ * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
798
+ */
799
+ class SignalBaseClass {
800
+ constructor() {
801
+ this.subscribers = new Set();
802
+ }
803
+ subscribe(onUpdate) {
804
+ this.subscribers.add(onUpdate);
805
+ return () => {
806
+ this.subscribers.delete(onUpdate);
807
+ };
808
+ }
809
+ notify() {
810
+ for (const subscriber of this.subscribers) {
811
+ subscriber();
812
+ }
813
+ }
814
+ }
815
+ /** version: 8.20.1 */
733
816
 
734
817
  /**
735
818
  * Copyright (c) 2025 Salesforce, Inc.
@@ -978,16 +1061,6 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
978
1061
  }
979
1062
  return ctorFormAssociated && apiFeatureEnabled;
980
1063
  }
981
- // check if a property is in an object, and if the object throws an error merely because we are
982
- // checking if the property exists, return false
983
- function safeHasProp(obj, prop) {
984
- try {
985
- return prop in obj;
986
- }
987
- catch (_err) {
988
- return false;
989
- }
990
- }
991
1064
 
992
1065
  /*
993
1066
  * Copyright (c) 2024, Salesforce, Inc.
@@ -1333,10 +1406,8 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
1333
1406
  if (lwcRuntimeFlags.ENABLE_EXPERIMENTAL_SIGNALS &&
1334
1407
  isObject(target) &&
1335
1408
  !isNull(target) &&
1336
- safeHasProp(target, 'value') &&
1337
- safeHasProp(target, 'subscribe') &&
1338
- isFunction$1(target.subscribe) &&
1339
1409
  isTrustedSignal(target) &&
1410
+ true &&
1340
1411
  // Only subscribe if a template is being rendered by the engine
1341
1412
  tro.isObserving()) {
1342
1413
  // Subscribe the template reactive observer's notify method, which will mark the vm as dirty and schedule hydration.
@@ -1489,8 +1560,11 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
1489
1560
  function patchElementWithRestrictions(elm, options) {
1490
1561
  assertNotProd(); // this method should never leak to prod
1491
1562
  const originalOuterHTMLDescriptor = getPropertyDescriptor(elm, 'outerHTML');
1492
- const descriptors = {
1493
- outerHTML: generateAccessorDescriptor({
1563
+ const descriptors = {};
1564
+ // For consistency between dev/prod modes, only patch `outerHTML` if it exists
1565
+ // (i.e. patch it in engine-dom, not in engine-server)
1566
+ if (originalOuterHTMLDescriptor) {
1567
+ descriptors.outerHTML = generateAccessorDescriptor({
1494
1568
  get() {
1495
1569
  return originalOuterHTMLDescriptor.get.call(this);
1496
1570
  },
@@ -1498,8 +1572,8 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
1498
1572
  logError(`Invalid attempt to set outerHTML on Element.`);
1499
1573
  return originalOuterHTMLDescriptor.set.call(this, value);
1500
1574
  },
1501
- }),
1502
- };
1575
+ });
1576
+ }
1503
1577
  // Apply extra restriction related to DOM manipulation if the element is not a portal.
1504
1578
  if (!options.isLight && options.isSynthetic && !options.isPortal) {
1505
1579
  const { appendChild, insertBefore, removeChild, replaceChild } = elm;
@@ -2739,8 +2813,11 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
2739
2813
  consumerDisconnectedCallback(consumer);
2740
2814
  }
2741
2815
  };
2742
- setDisconnectedCallback(disconnectCallback);
2816
+ setDisconnectedCallback?.(disconnectCallback);
2743
2817
  consumerConnectedCallback(consumer);
2818
+ // Return true as the context is always consumed here and the consumer should
2819
+ // stop bubbling.
2820
+ return true;
2744
2821
  });
2745
2822
  };
2746
2823
  }
@@ -2765,6 +2842,9 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
2765
2842
  // eslint-disable-next-line @lwc/lwc-internal/no-invalid-todo
2766
2843
  // TODO: dev-mode validation of config based on the adapter.contextSchema
2767
2844
  callbackWhenContextIsReady(newContext);
2845
+ // Return true as the context is always consumed here and the consumer should
2846
+ // stop bubbling.
2847
+ return true;
2768
2848
  },
2769
2849
  setDisconnectedCallback(disconnectCallback) {
2770
2850
  // adds this callback into the disconnect bucket so it gets disconnected from parent
@@ -3320,7 +3400,7 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
3320
3400
  validateMethodDecoratedWithWire(Ctor, fieldOrMethodName, descriptor);
3321
3401
  }
3322
3402
  if (isUndefined$1(descriptor)) {
3323
- throw new Error();
3403
+ throw new Error(`Missing descriptor for wired method "${fieldOrMethodName}".`);
3324
3404
  }
3325
3405
  wiredMethods[fieldOrMethodName] = descriptor;
3326
3406
  storeWiredMethodMeta(descriptor, adapter, configCallback, dynamic);
@@ -4819,6 +4899,73 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
4819
4899
  }
4820
4900
  }
4821
4901
 
4902
+ /*
4903
+ * Copyright (c) 2025, salesforce.com, inc.
4904
+ * All rights reserved.
4905
+ * SPDX-License-Identifier: MIT
4906
+ * For full license text, see the LICENSE file in the repo root or https://opensource.org/licenses/MIT
4907
+ */
4908
+ function patchDynamicEventListeners(oldVnode, vnode, renderer, owner) {
4909
+ const { elm, data: { dynamicOn, dynamicOnRaw }, sel, } = vnode;
4910
+ // dynamicOn : A cloned version of the object passed to lwc:on, with null prototype and only its own enumerable properties.
4911
+ const oldDynamicOn = oldVnode?.data?.dynamicOn ?? EmptyObject;
4912
+ const newDynamicOn = dynamicOn ?? EmptyObject;
4913
+ // dynamicOnRaw : object passed to lwc:on
4914
+ // Compare dynamicOnRaw to check if same object is passed to lwc:on
4915
+ const isObjectSame = oldVnode?.data?.dynamicOnRaw === dynamicOnRaw;
4916
+ const { addEventListener, removeEventListener } = renderer;
4917
+ const attachedEventListeners = getAttachedEventListeners(owner, elm);
4918
+ // Properties that are present in 'oldDynamicOn' but not in 'newDynamicOn'
4919
+ for (const eventType in oldDynamicOn) {
4920
+ if (!(eventType in newDynamicOn)) {
4921
+ // log error if same object is passed
4922
+ if (isObjectSame && process.env.NODE_ENV !== 'production') {
4923
+ logError(`Detected mutation of property '${eventType}' in the object passed to lwc:on for <${sel}>. Reusing the same object with modified properties is prohibited. Please pass a new object instead.`, owner);
4924
+ }
4925
+ // Remove listeners that were attached previously but don't have a corresponding property in `newDynamicOn`
4926
+ const attachedEventListener = attachedEventListeners[eventType];
4927
+ removeEventListener(elm, eventType, attachedEventListener);
4928
+ attachedEventListeners[eventType] = undefined;
4929
+ }
4930
+ }
4931
+ // Ensure that the event listeners that are attached match what is present in `newDynamicOn`
4932
+ for (const eventType in newDynamicOn) {
4933
+ const typeExistsInOld = eventType in oldDynamicOn;
4934
+ const newCallback = newDynamicOn[eventType];
4935
+ // Skip if callback hasn't changed
4936
+ if (typeExistsInOld && oldDynamicOn[eventType] === newCallback) {
4937
+ continue;
4938
+ }
4939
+ // log error if same object is passed
4940
+ if (isObjectSame && process.env.NODE_ENV !== 'production') {
4941
+ logError(`Detected mutation of property '${eventType}' in the object passed to lwc:on for <${sel}>. Reusing the same object with modified properties is prohibited. Please pass a new object instead.`, owner);
4942
+ }
4943
+ // Remove listener that was attached previously
4944
+ if (typeExistsInOld) {
4945
+ const attachedEventListener = attachedEventListeners[eventType];
4946
+ removeEventListener(elm, eventType, attachedEventListener);
4947
+ }
4948
+ // Bind new callback to owner component and add it as listener to element
4949
+ const newBoundEventListener = bindEventListener(owner, newCallback);
4950
+ addEventListener(elm, eventType, newBoundEventListener);
4951
+ // Store the newly added eventListener
4952
+ attachedEventListeners[eventType] = newBoundEventListener;
4953
+ }
4954
+ }
4955
+ function getAttachedEventListeners(vm, elm) {
4956
+ let attachedEventListeners = vm.attachedEventListeners.get(elm);
4957
+ if (isUndefined$1(attachedEventListeners)) {
4958
+ attachedEventListeners = {};
4959
+ vm.attachedEventListeners.set(elm, attachedEventListeners);
4960
+ }
4961
+ return attachedEventListeners;
4962
+ }
4963
+ function bindEventListener(vm, fn) {
4964
+ return function (event) {
4965
+ invokeEventListener(vm, fn, vm.component, event);
4966
+ };
4967
+ }
4968
+
4822
4969
  /*
4823
4970
  * Copyright (c) 2018, salesforce.com, inc.
4824
4971
  * All rights reserved.
@@ -5453,6 +5600,7 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
5453
5600
  applyStaticStyleAttribute(vnode, renderer);
5454
5601
  }
5455
5602
  const { owner } = vnode;
5603
+ patchDynamicEventListeners(oldVnode, vnode, renderer, owner);
5456
5604
  // Attrs need to be applied to element before props IE11 will wipe out value on radio inputs if
5457
5605
  // value is set before type=radio.
5458
5606
  patchClassAttribute(oldVnode, vnode, renderer);
@@ -6976,15 +7124,16 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
6976
7124
  try {
6977
7125
  // job
6978
7126
  const result = new Ctor();
6979
- // Check indirectly if the constructor result is an instance of LightningElement. Using
6980
- // the "instanceof" operator would not work here since Locker Service provides its own
6981
- // implementation of LightningElement, so we indirectly check if the base constructor is
6982
- // invoked by accessing the component on the vm.
6983
- // TODO [W-17769475]: Restore this fix when we can reliably detect Locker enabled
6984
- // const isInvalidConstructor = lwcRuntimeFlags.LEGACY_LOCKER_ENABLED
6985
- // ? vmBeingConstructed.component !== result
6986
- // : !(result instanceof LightningElement);
6987
- const isInvalidConstructor = vmBeingConstructed.component !== result;
7127
+ // Check indirectly if the constructor result is an instance of LightningElement.
7128
+ // When Locker is enabled, the "instanceof" operator would not work since Locker Service
7129
+ // provides its own implementation of LightningElement, so we indirectly check
7130
+ // if the base constructor is invoked by accessing the component on the vm.
7131
+ // When the DISABLE_LOCKER_VALIDATION gate is false or LEGACY_LOCKER_ENABLED is false,
7132
+ // then the instanceof LightningElement can be used.
7133
+ const useLegacyConstructorCheck = !lwcRuntimeFlags.DISABLE_LEGACY_VALIDATION || lwcRuntimeFlags.LEGACY_LOCKER_ENABLED;
7134
+ const isInvalidConstructor = useLegacyConstructorCheck
7135
+ ? vmBeingConstructed.component !== result
7136
+ : !(result instanceof LightningElement);
6988
7137
  if (isInvalidConstructor) {
6989
7138
  throw new TypeError('Invalid component constructor, the class should extend LightningElement.');
6990
7139
  }
@@ -7146,6 +7295,123 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
7146
7295
  return wrappedListener;
7147
7296
  }
7148
7297
 
7298
+ /******************************************************************************
7299
+ Copyright (c) Microsoft Corporation.
7300
+
7301
+ Permission to use, copy, modify, and/or distribute this software for any
7302
+ purpose with or without fee is hereby granted.
7303
+
7304
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
7305
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
7306
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
7307
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
7308
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
7309
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
7310
+ PERFORMANCE OF THIS SOFTWARE.
7311
+ ***************************************************************************** */
7312
+ /* global Reflect, Promise, SuppressedError, Symbol, Iterator */
7313
+
7314
+
7315
+ function __classPrivateFieldGet(receiver, state, kind, f) {
7316
+ if (typeof state === "function" ? receiver !== state || true : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
7317
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
7318
+ }
7319
+
7320
+ function __classPrivateFieldSet(receiver, state, value, kind, f) {
7321
+ if (typeof state === "function" ? receiver !== state || true : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
7322
+ return (state.set(receiver, value)), value;
7323
+ }
7324
+
7325
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
7326
+ var e = new Error(message);
7327
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
7328
+ };
7329
+
7330
+ var _ContextBinding_renderer, _ContextBinding_providedContextVarieties, _ContextBinding_elm;
7331
+ class ContextBinding {
7332
+ constructor(vm, component, providedContextVarieties) {
7333
+ _ContextBinding_renderer.set(this, void 0);
7334
+ _ContextBinding_providedContextVarieties.set(this, void 0);
7335
+ _ContextBinding_elm.set(this, void 0);
7336
+ this.component = component;
7337
+ __classPrivateFieldSet(this, _ContextBinding_renderer, vm.renderer);
7338
+ __classPrivateFieldSet(this, _ContextBinding_elm, vm.elm);
7339
+ __classPrivateFieldSet(this, _ContextBinding_providedContextVarieties, providedContextVarieties);
7340
+ // Register the component as a context provider.
7341
+ __classPrivateFieldGet(this, _ContextBinding_renderer, "f").registerContextProvider(__classPrivateFieldGet(this, _ContextBinding_elm, "f"), ContextEventName, (contextConsumer) => {
7342
+ // This callback is invoked when the provided context is consumed somewhere down
7343
+ // in the component's subtree.
7344
+ return contextConsumer.setNewContext(__classPrivateFieldGet(this, _ContextBinding_providedContextVarieties, "f"));
7345
+ });
7346
+ }
7347
+ provideContext(contextVariety, providedContextSignal) {
7348
+ if (__classPrivateFieldGet(this, _ContextBinding_providedContextVarieties, "f").has(contextVariety)) {
7349
+ logWarnOnce('Multiple contexts of the same variety were provided. Only the first context will be used.');
7350
+ return;
7351
+ }
7352
+ __classPrivateFieldGet(this, _ContextBinding_providedContextVarieties, "f").set(contextVariety, providedContextSignal);
7353
+ }
7354
+ consumeContext(contextVariety, contextProvidedCallback) {
7355
+ __classPrivateFieldGet(this, _ContextBinding_renderer, "f").registerContextConsumer(__classPrivateFieldGet(this, _ContextBinding_elm, "f"), ContextEventName, {
7356
+ setNewContext: (providerContextVarieties) => {
7357
+ // If the provider has the specified context variety, then it is consumed
7358
+ // and true is returned to stop bubbling.
7359
+ if (providerContextVarieties.has(contextVariety)) {
7360
+ contextProvidedCallback(providerContextVarieties.get(contextVariety));
7361
+ return true;
7362
+ }
7363
+ // Return false as context has not been found/consumed
7364
+ // and the consumer should continue traversing the context tree
7365
+ return false;
7366
+ },
7367
+ });
7368
+ }
7369
+ }
7370
+ _ContextBinding_renderer = new WeakMap(), _ContextBinding_providedContextVarieties = new WeakMap(), _ContextBinding_elm = new WeakMap();
7371
+ function connectContext(vm) {
7372
+ const contextKeys = getContextKeys();
7373
+ if (isUndefined$1(contextKeys)) {
7374
+ return;
7375
+ }
7376
+ const { connectContext } = contextKeys;
7377
+ const { component } = vm;
7378
+ const enumerableKeys = keys(getPrototypeOf$1(component));
7379
+ const contextfulKeys = ArrayFilter.call(enumerableKeys, (enumerableKey) => isTrustedContext(component[enumerableKey]));
7380
+ if (contextfulKeys.length === 0) {
7381
+ return;
7382
+ }
7383
+ const providedContextVarieties = new Map();
7384
+ try {
7385
+ for (let i = 0; i < contextfulKeys.length; i++) {
7386
+ component[contextfulKeys[i]][connectContext](new ContextBinding(vm, component, providedContextVarieties));
7387
+ }
7388
+ }
7389
+ catch (err) {
7390
+ logWarnOnce(`Attempted to connect to trusted context but received the following error: ${err.message}`);
7391
+ }
7392
+ }
7393
+ function disconnectContext(vm) {
7394
+ const contextKeys = getContextKeys();
7395
+ if (!contextKeys) {
7396
+ return;
7397
+ }
7398
+ const { disconnectContext } = contextKeys;
7399
+ const { component } = vm;
7400
+ const enumerableKeys = keys(getPrototypeOf$1(component));
7401
+ const contextfulKeys = ArrayFilter.call(enumerableKeys, (enumerableKey) => isTrustedContext(component[enumerableKey]));
7402
+ if (contextfulKeys.length === 0) {
7403
+ return;
7404
+ }
7405
+ try {
7406
+ for (let i = 0; i < contextfulKeys.length; i++) {
7407
+ component[contextfulKeys[i]][disconnectContext](component);
7408
+ }
7409
+ }
7410
+ catch (err) {
7411
+ logWarnOnce(`Attempted to disconnect from trusted context but received the following error: ${err.message}`);
7412
+ }
7413
+ }
7414
+
7149
7415
  /*
7150
7416
  * Copyright (c) 2024, Salesforce, Inc.
7151
7417
  * All rights reserved.
@@ -7240,6 +7506,7 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
7240
7506
  mode,
7241
7507
  owner,
7242
7508
  refVNodes: null,
7509
+ attachedEventListeners: new WeakMap(),
7243
7510
  children: EmptyArray,
7244
7511
  aChildren: EmptyArray,
7245
7512
  velements: EmptyArray,
@@ -7525,6 +7792,10 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
7525
7792
  if (hasWireAdapters(vm)) {
7526
7793
  connectWireAdapters(vm);
7527
7794
  }
7795
+ if (lwcRuntimeFlags.ENABLE_EXPERIMENTAL_SIGNALS) {
7796
+ // Setup context before connected callback is executed
7797
+ connectContext(vm);
7798
+ }
7528
7799
  const { connectedCallback } = vm.def;
7529
7800
  if (!isUndefined$1(connectedCallback)) {
7530
7801
  logOperationStart(3 /* OperationId.ConnectedCallback */, vm);
@@ -7556,6 +7827,9 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
7556
7827
  if (process.env.NODE_ENV !== 'production') {
7557
7828
  assert.isTrue(vm.state !== 2 /* VMState.disconnected */, `${vm} must be inserted.`);
7558
7829
  }
7830
+ if (lwcRuntimeFlags.ENABLE_EXPERIMENTAL_SIGNALS) {
7831
+ disconnectContext(vm);
7832
+ }
7559
7833
  if (isFalse(vm.isDirty)) {
7560
7834
  // this guarantees that if the component is reused/reinserted,
7561
7835
  // it will be re-rendered because we are disconnecting the reactivity
@@ -8435,6 +8709,7 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
8435
8709
  }
8436
8710
  function patchElementPropsAndAttrsAndRefs(vnode, renderer) {
8437
8711
  applyEventListeners(vnode, renderer);
8712
+ patchDynamicEventListeners(null, vnode, renderer, vnode.owner);
8438
8713
  patchProps(null, vnode, renderer);
8439
8714
  // The `refs` object is blown away in every re-render, so we always need to re-apply them
8440
8715
  applyRefs(vnode, vnode.owner);
@@ -8929,7 +9204,7 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
8929
9204
  }
8930
9205
  return getReadOnlyProxy(obj);
8931
9206
  }
8932
- /** version: 8.16.2 */
9207
+ /** version: 8.20.1 */
8933
9208
 
8934
9209
  /*
8935
9210
  * Copyright (c) 2018, salesforce.com, inc.
@@ -9370,7 +9645,7 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
9370
9645
  function isNull(obj) {
9371
9646
  return obj === null;
9372
9647
  }
9373
- /** version: 8.16.2 */
9648
+ /** version: 8.20.1 */
9374
9649
 
9375
9650
  /*
9376
9651
  * Copyright (c) 2024, Salesforce, Inc.
@@ -9404,12 +9679,14 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
9404
9679
  }
9405
9680
  function registerContextProvider(elm, adapterContextToken, onContextSubscription) {
9406
9681
  addEventListener(elm, adapterContextToken, ((evt) => {
9407
- evt.stopImmediatePropagation();
9408
9682
  const { setNewContext, setDisconnectedCallback } = evt;
9409
- onContextSubscription({
9683
+ // If context subscription is successful, stop event propagation
9684
+ if (onContextSubscription({
9410
9685
  setNewContext,
9411
9686
  setDisconnectedCallback,
9412
- });
9687
+ })) {
9688
+ evt.stopImmediatePropagation();
9689
+ }
9413
9690
  }));
9414
9691
  }
9415
9692
 
@@ -10068,17 +10345,21 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
10068
10345
  }
10069
10346
  function registerContextProvider(elm, adapterContextToken, onContextSubscription) {
10070
10347
  addEventListener(elm, adapterContextToken, ((evt) => {
10071
- evt.stopImmediatePropagation();
10072
10348
  const { setNewContext, setDisconnectedCallback } = evt;
10073
- onContextSubscription({
10349
+ // If context subscription is successful, stop event propagation
10350
+ if (onContextSubscription({
10074
10351
  setNewContext,
10075
10352
  setDisconnectedCallback,
10076
- });
10353
+ })) {
10354
+ evt.stopImmediatePropagation();
10355
+ }
10077
10356
  }));
10078
10357
  }
10079
- /** version: 8.16.2 */
10358
+ /** version: 8.20.1 */
10080
10359
 
10081
10360
  exports.LightningElement = LightningElement;
10361
+ exports.SignalBaseClass = SignalBaseClass;
10362
+ exports.__dangerous_do_not_use_addTrustedContext = addTrustedContext;
10082
10363
  exports.__unstable__ProfilerControl = profilerControl;
10083
10364
  exports.__unstable__ReportingControl = reportingControl;
10084
10365
  exports.api = api$1;
@@ -10091,6 +10372,7 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
10091
10372
  exports.hydrateComponent = hydrateComponent;
10092
10373
  exports.isComponentConstructor = isComponentConstructor;
10093
10374
  exports.isNodeFromTemplate = isNodeShadowed;
10375
+ exports.isTrustedSignal = isTrustedSignal;
10094
10376
  exports.parseFragment = parseFragment;
10095
10377
  exports.parseSVGFragment = parseSVGFragment;
10096
10378
  exports.readonly = readonly;
@@ -10100,9 +10382,11 @@ LWR.define('lwc/v/8_16_2', ['exports'], (function (exports) { 'use strict';
10100
10382
  exports.renderer = renderer;
10101
10383
  exports.rendererFactory = rendererFactory;
10102
10384
  exports.sanitizeAttribute = sanitizeAttribute;
10385
+ exports.setContextKeys = setContextKeys;
10103
10386
  exports.setFeatureFlag = setFeatureFlag;
10104
10387
  exports.setFeatureFlagForTest = setFeatureFlagForTest;
10105
10388
  exports.setHooks = setHooks;
10389
+ exports.setTrustedContextSet = setTrustedContextSet;
10106
10390
  exports.setTrustedSignalSet = setTrustedSignalSet;
10107
10391
  exports.swapComponent = swapComponent;
10108
10392
  exports.swapStyle = swapStyle;
@@ -1,10 +1,10 @@
1
- LWR.define('lwr/everywhereAmd/v/0_19_0-alpha_1', ['exports', 'lwr/vault/v/0_19_0-alpha_1'], (function (exports, _0_19_0Alpha_1) { 'use strict';
1
+ LWR.define('lwr/everywhereAmd/v/0_19_0-alpha_11', ['exports', 'lwr/vault/v/0_19_0-alpha_11'], (function (exports, _0_19_0Alpha_11) { 'use strict';
2
2
 
3
3
  // IMPORTANT: Do not add any static imports to this file that are not bundled with the amd-client
4
4
 
5
5
  // Do an OAuthed fetch
6
6
  async function authFetch(url, accept = 'javascript') {
7
- const authInfo = _0_19_0Alpha_1.getAuthInfo();
7
+ const authInfo = _0_19_0Alpha_11.getAuthInfo();
8
8
  if (authInfo) {
9
9
  return fetch(url, {
10
10
  headers: {
@@ -53,7 +53,7 @@ LWR.define('lwr/everywhereAmd/v/0_19_0-alpha_1', ['exports', 'lwr/vault/v/0_19_0
53
53
  function authenticate(authInfo) {
54
54
  // Put OAuth info into the vault
55
55
  if (authInfo) {
56
- _0_19_0Alpha_1.setAuthInfo(authInfo);
56
+ _0_19_0Alpha_11.setAuthInfo(authInfo);
57
57
  }
58
58
  }
59
59