@angular/core 20.3.2 → 20.3.3

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 (70) hide show
  1. package/api.d.d.ts +1 -1
  2. package/chrome_dev_tools_performance.d.d.ts +2 -2
  3. package/discovery.d.d.ts +2 -2
  4. package/effect.d.d.ts +2 -2
  5. package/event_dispatcher.d.d.ts +1 -1
  6. package/fesm2022/attribute.mjs +1 -1
  7. package/fesm2022/attribute.mjs.map +1 -1
  8. package/fesm2022/core.mjs +1 -1
  9. package/fesm2022/core.mjs.map +1 -1
  10. package/fesm2022/debug_node.mjs +18 -28
  11. package/fesm2022/debug_node.mjs.map +1 -1
  12. package/fesm2022/effect.mjs +1 -1
  13. package/fesm2022/effect.mjs.map +1 -1
  14. package/fesm2022/not_found.mjs +1 -1
  15. package/fesm2022/not_found.mjs.map +1 -1
  16. package/fesm2022/primitives/di.mjs +1 -1
  17. package/fesm2022/primitives/di.mjs.map +1 -1
  18. package/fesm2022/primitives/event-dispatch.mjs +1 -1
  19. package/fesm2022/primitives/event-dispatch.mjs.map +1 -1
  20. package/fesm2022/primitives/signals.mjs +136 -3
  21. package/fesm2022/primitives/signals.mjs.map +1 -1
  22. package/fesm2022/resource.mjs +1 -1
  23. package/fesm2022/resource.mjs.map +1 -1
  24. package/fesm2022/root_effect_scheduler.mjs +2 -2
  25. package/fesm2022/root_effect_scheduler.mjs.map +1 -1
  26. package/fesm2022/rxjs-interop.mjs +1 -1
  27. package/fesm2022/rxjs-interop.mjs.map +1 -1
  28. package/fesm2022/signal.mjs +8 -8
  29. package/fesm2022/signal.mjs.map +1 -1
  30. package/fesm2022/testing.mjs +1 -1
  31. package/fesm2022/testing.mjs.map +1 -1
  32. package/fesm2022/weak_ref.mjs +1 -1
  33. package/fesm2022/weak_ref.mjs.map +1 -1
  34. package/{graph.d.d.ts → formatter.d.d.ts} +14 -2
  35. package/index.d.ts +7 -6
  36. package/package.json +2 -2
  37. package/primitives/di/index.d.ts +1 -1
  38. package/primitives/event-dispatch/index.d.ts +1 -1
  39. package/primitives/signals/index.d.ts +3 -3
  40. package/rxjs-interop/index.d.ts +2 -2
  41. package/schematics/bundles/add-bootstrap-context-to-server-main.cjs +5 -5
  42. package/schematics/bundles/{apply_import_manager-Ch2ALAC9.cjs → apply_import_manager-CUBvPp_2.cjs} +3 -3
  43. package/schematics/bundles/cleanup-unused-imports.cjs +5 -5
  44. package/schematics/bundles/{compiler_host-Jw4hNUf8.cjs → compiler_host-DJHZ7M9N.cjs} +2 -2
  45. package/schematics/bundles/control-flow-migration.cjs +3 -3
  46. package/schematics/bundles/document-core.cjs +5 -5
  47. package/schematics/bundles/imports-CIX-JgAN.cjs +1 -1
  48. package/schematics/bundles/{index-Gg0PI_fh.cjs → index-BZJ8bv9v.cjs} +27 -17
  49. package/schematics/bundles/{index-DWTTHy-7.cjs → index-DU_evmAi.cjs} +4 -4
  50. package/schematics/bundles/inject-flags.cjs +5 -5
  51. package/schematics/bundles/inject-migration.cjs +3 -3
  52. package/schematics/bundles/leading_space-D9nQ8UQC.cjs +1 -1
  53. package/schematics/bundles/{migrate_ts_type_references-D_xIwAQ5.cjs → migrate_ts_type_references-58gA72Ti.cjs} +5 -5
  54. package/schematics/bundles/ng_decorators-B5HCqr20.cjs +1 -1
  55. package/schematics/bundles/nodes-B16H9JUd.cjs +1 -1
  56. package/schematics/bundles/output-migration.cjs +6 -6
  57. package/schematics/bundles/{project_paths-CfXVBYVk.cjs → project_paths-DcM18127.cjs} +3 -3
  58. package/schematics/bundles/{project_tsconfig_paths-C11WBTJF.cjs → project_tsconfig_paths-Dqd0J7st.cjs} +34 -40
  59. package/schematics/bundles/property_name-BBwFuqMe.cjs +1 -1
  60. package/schematics/bundles/route-lazy-loading.cjs +3 -3
  61. package/schematics/bundles/router-current-navigation.cjs +4 -4
  62. package/schematics/bundles/self-closing-tags-migration.cjs +4 -4
  63. package/schematics/bundles/signal-input-migration.cjs +67 -8
  64. package/schematics/bundles/signal-queries-migration.cjs +7 -7
  65. package/schematics/bundles/signals.cjs +7 -7
  66. package/schematics/bundles/standalone-migration.cjs +60 -40
  67. package/schematics/bundles/symbol-VPWguRxr.cjs +1 -1
  68. package/schematics/bundles/test-bed-get.cjs +4 -4
  69. package/testing/index.d.ts +2 -2
  70. package/weak_ref.d.d.ts +1 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v20.3.2
2
+ * @license Angular v20.3.3
3
3
  * (c) 2010-2025 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -13691,7 +13691,7 @@ class ComponentFactory extends ComponentFactory$1 {
13691
13691
  }
13692
13692
  function createRootTView(rootSelectorOrNode, componentDef, componentBindings, directives) {
13693
13693
  const tAttributes = rootSelectorOrNode
13694
- ? ['ng-version', '20.3.2']
13694
+ ? ['ng-version', '20.3.3']
13695
13695
  : // Extract attributes and classes from the first selector only to match VE behavior.
13696
13696
  extractAttrsAndClassesFromSelector(componentDef.selectors[0]);
13697
13697
  let creationBindings = null;
@@ -21830,14 +21830,13 @@ function ɵɵdeferHydrateOnViewport() {
21830
21830
  // since these instructions won't exist for dehydrated content.
21831
21831
  }
21832
21832
 
21833
- const ARIA_PREFIX = 'aria';
21834
21833
  /**
21835
- * Update an ARIA attribute by either its attribute or property name on a selected element.
21834
+ * Update an ARIA attribute on a selected element.
21836
21835
  *
21837
- * If the property name also exists as an input property on any of the element's directives, those
21838
- * inputs will be set instead of the element property.
21836
+ * If the attribute name also exists as an input property on any of the element's directives, those
21837
+ * inputs will be set instead of the element attribute.
21839
21838
  *
21840
- * @param name Name of the ARIA attribute or property (beginning with `aria`).
21839
+ * @param name Name of the ARIA attribute (beginning with `aria-`).
21841
21840
  * @param value New value to write.
21842
21841
  * @returns This function returns itself so that it may be chained.
21843
21842
  *
@@ -21857,31 +21856,12 @@ function ɵɵariaProperty(name, value) {
21857
21856
  else {
21858
21857
  ngDevMode && assertTNodeType(tNode, 2 /* TNodeType.Element */);
21859
21858
  const element = getNativeByTNode(tNode, lView);
21860
- const attributeName = ariaAttrName(name);
21861
- setElementAttribute(lView[RENDERER], element, null, tNode.value, attributeName, value, null);
21859
+ setElementAttribute(lView[RENDERER], element, null, tNode.value, name, value, null);
21862
21860
  }
21863
21861
  ngDevMode && storePropertyBindingMetadata(tView.data, tNode, name, bindingIndex);
21864
21862
  }
21865
21863
  return ɵɵariaProperty;
21866
21864
  }
21867
- /**
21868
- * Converts an ARIA property name to its corresponding attribute name, if necessary.
21869
- *
21870
- * For example, converts `ariaLabel` to `aria-label`.
21871
- *
21872
- * https://www.w3.org/TR/wai-aria-1.2/#accessibilityroleandproperties-correspondence
21873
- *
21874
- * This must be kept in sync with the the function of the same name in
21875
- * packages/compiler/src/template/pipeline/src/phases/reify.ts
21876
- *
21877
- * @param name A property name that starts with `aria`.
21878
- * @returns The corresponding attribute name.
21879
- */
21880
- function ariaAttrName(name) {
21881
- return name.charAt(ARIA_PREFIX.length) !== '-'
21882
- ? ARIA_PREFIX + '-' + name.slice(ARIA_PREFIX.length).toLowerCase()
21883
- : name; // Property already has attribute name.
21884
- }
21885
21865
 
21886
21866
  /**
21887
21867
  * Updates the value of or removes a bound attribute on an Element.
@@ -22165,6 +22145,9 @@ function runEnterAnimation(lView, tNode, value) {
22165
22145
  // This also allows us to setup cancellation of animations in progress if the
22166
22146
  // gets removed early.
22167
22147
  const handleEnterAnimationStart = (event) => {
22148
+ // this early exit case is to prevent issues with bubbling events that are from child element animations
22149
+ if (event.target !== nativeElement)
22150
+ return;
22168
22151
  const eventName = event instanceof AnimationEvent ? 'animationend' : 'transitionend';
22169
22152
  ngZone.runOutsideAngular(() => {
22170
22153
  cleanupFns.push(renderer.listen(nativeElement, eventName, handleEnterAnimationEnd));
@@ -22172,6 +22155,9 @@ function runEnterAnimation(lView, tNode, value) {
22172
22155
  };
22173
22156
  // When the longest animation ends, we can remove all the classes
22174
22157
  const handleEnterAnimationEnd = (event) => {
22158
+ // this early exit case is to prevent issues with bubbling events that are from child element animations
22159
+ if (event.target !== nativeElement)
22160
+ return;
22175
22161
  enterAnimationEnd(event, nativeElement, renderer);
22176
22162
  };
22177
22163
  // We only need to add these event listeners if there are actual classes to apply
@@ -22202,7 +22188,8 @@ function runEnterAnimation(lView, tNode, value) {
22202
22188
  }
22203
22189
  function enterAnimationEnd(event, nativeElement, renderer) {
22204
22190
  const elementData = enterClassMap.get(nativeElement);
22205
- if (!elementData)
22191
+ // this event.target check is to prevent issues with bubbling events that are from child element animations
22192
+ if (event.target !== nativeElement || !elementData)
22206
22193
  return;
22207
22194
  if (isLongestAnimation(event, nativeElement)) {
22208
22195
  // Now that we've found the longest animation, there's no need
@@ -22301,6 +22288,9 @@ function animateLeaveClassRunner(el, tNode, classList, renderer, animationsDisab
22301
22288
  }
22302
22289
  cancelAnimationsIfRunning(el, renderer);
22303
22290
  const handleOutAnimationEnd = (event) => {
22291
+ // this early exit case is to prevent issues with bubbling events that are from child element animations
22292
+ if (event.target !== el)
22293
+ return;
22304
22294
  if (event instanceof CustomEvent || isLongestAnimation(event, el)) {
22305
22295
  // Now that we've found the longest animation, there's no need
22306
22296
  // to keep bubbling up this event as it's not going to apply to