@angular/core 20.3.1 → 20.3.2

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 (62) hide show
  1. package/api.d.d.ts +7 -4
  2. package/chrome_dev_tools_performance.d.d.ts +1 -1
  3. package/discovery.d.d.ts +6 -5
  4. package/effect.d.d.ts +1 -2
  5. package/event_dispatcher.d.d.ts +1 -1
  6. package/fesm2022/attribute.mjs +1 -1
  7. package/fesm2022/core.mjs +4 -4
  8. package/fesm2022/core.mjs.map +1 -1
  9. package/fesm2022/debug_node.mjs +15 -16
  10. package/fesm2022/debug_node.mjs.map +1 -1
  11. package/fesm2022/effect.mjs +3 -4
  12. package/fesm2022/effect.mjs.map +1 -1
  13. package/fesm2022/not_found.mjs +1 -1
  14. package/fesm2022/primitives/di.mjs +1 -1
  15. package/fesm2022/primitives/event-dispatch.mjs +1 -1
  16. package/fesm2022/primitives/signals.mjs +3 -4
  17. package/fesm2022/primitives/signals.mjs.map +1 -1
  18. package/fesm2022/resource.mjs +5 -4
  19. package/fesm2022/resource.mjs.map +1 -1
  20. package/fesm2022/root_effect_scheduler.mjs +2 -2
  21. package/fesm2022/root_effect_scheduler.mjs.map +1 -1
  22. package/fesm2022/rxjs-interop.mjs +1 -1
  23. package/fesm2022/signal.mjs +1 -1
  24. package/fesm2022/testing.mjs +1 -1
  25. package/fesm2022/weak_ref.mjs +1 -1
  26. package/graph.d.d.ts +1 -1
  27. package/index.d.ts +4 -3
  28. package/package.json +2 -2
  29. package/primitives/di/index.d.ts +1 -1
  30. package/primitives/event-dispatch/index.d.ts +1 -1
  31. package/primitives/signals/index.d.ts +1 -2
  32. package/rxjs-interop/index.d.ts +1 -1
  33. package/schematics/bundles/add-bootstrap-context-to-server-main.cjs +5 -5
  34. package/schematics/bundles/{apply_import_manager-C8vgfoJx.cjs → apply_import_manager-Ch2ALAC9.cjs} +3 -3
  35. package/schematics/bundles/cleanup-unused-imports.cjs +5 -5
  36. package/schematics/bundles/{compiler_host-DC7Yquzy.cjs → compiler_host-Jw4hNUf8.cjs} +2 -2
  37. package/schematics/bundles/control-flow-migration.cjs +70 -38
  38. package/schematics/bundles/document-core.cjs +5 -5
  39. package/schematics/bundles/imports-CIX-JgAN.cjs +1 -1
  40. package/schematics/bundles/{index-Bufm9_1r.cjs → index-DWTTHy-7.cjs} +4 -4
  41. package/schematics/bundles/{index-B5lv9x1v.cjs → index-Gg0PI_fh.cjs} +35 -21
  42. package/schematics/bundles/inject-flags.cjs +5 -5
  43. package/schematics/bundles/inject-migration.cjs +3 -3
  44. package/schematics/bundles/leading_space-D9nQ8UQC.cjs +1 -1
  45. package/schematics/bundles/{migrate_ts_type_references-Ctl6-8qO.cjs → migrate_ts_type_references-D_xIwAQ5.cjs} +5 -5
  46. package/schematics/bundles/ng_decorators-B5HCqr20.cjs +1 -1
  47. package/schematics/bundles/nodes-B16H9JUd.cjs +1 -1
  48. package/schematics/bundles/output-migration.cjs +6 -6
  49. package/schematics/bundles/{project_paths-CIUSEdn4.cjs → project_paths-CfXVBYVk.cjs} +3 -3
  50. package/schematics/bundles/{project_tsconfig_paths-crm5NKE7.cjs → project_tsconfig_paths-C11WBTJF.cjs} +19 -5
  51. package/schematics/bundles/property_name-BBwFuqMe.cjs +1 -1
  52. package/schematics/bundles/route-lazy-loading.cjs +3 -3
  53. package/schematics/bundles/router-current-navigation.cjs +4 -4
  54. package/schematics/bundles/self-closing-tags-migration.cjs +4 -4
  55. package/schematics/bundles/signal-input-migration.cjs +7 -7
  56. package/schematics/bundles/signal-queries-migration.cjs +7 -7
  57. package/schematics/bundles/signals.cjs +7 -7
  58. package/schematics/bundles/standalone-migration.cjs +14 -7
  59. package/schematics/bundles/symbol-VPWguRxr.cjs +1 -1
  60. package/schematics/bundles/test-bed-get.cjs +4 -4
  61. package/testing/index.d.ts +1 -1
  62. package/weak_ref.d.d.ts +1 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v20.3.1
2
+ * @license Angular v20.3.2
3
3
  * (c) 2010-2025 Google LLC. https://angular.io/
4
4
  * License: MIT
5
5
  */
@@ -6804,9 +6804,11 @@ function nativeAppendOrInsertBefore(renderer, parent, child, beforeNode, isMove)
6804
6804
  * @param renderer A renderer to be used
6805
6805
  * @param rNode The native node that should be removed
6806
6806
  * @param isHostElement A flag indicating if a node to be removed is a host of a component.
6807
+ * @param requireSynchronousElementRemoval A flag indicating if a node requires synchronous
6808
+ * removal from the DOM.
6807
6809
  */
6808
- function nativeRemoveNode(renderer, rNode, isHostElement) {
6809
- renderer.removeChild(null, rNode, isHostElement);
6810
+ function nativeRemoveNode(renderer, rNode, isHostElement, requireSynchronousElementRemoval) {
6811
+ renderer.removeChild(null, rNode, isHostElement, requireSynchronousElementRemoval);
6810
6812
  }
6811
6813
  /**
6812
6814
  * Clears the contents of a given RElement.
@@ -7357,8 +7359,11 @@ function applyToElementOrContainer(action, renderer, parent, lNodeToHandle, befo
7357
7359
  nativeInsertBefore(renderer, parent, rNode, beforeNode || null, true);
7358
7360
  }
7359
7361
  else if (action === 2 /* WalkTNodeTreeAction.Detach */) {
7360
- runLeaveAnimationsWithCallback(parentLView, () => {
7361
- nativeRemoveNode(renderer, rNode, isComponent);
7362
+ runLeaveAnimationsWithCallback(parentLView, (nodeHasLeaveAnimations) => {
7363
+ // the nodeHasLeaveAnimations indicates to the renderer that the element needs to
7364
+ // be removed synchronously and sets the requireSynchronousElementRemoval flag in
7365
+ // the renderer.
7366
+ nativeRemoveNode(renderer, rNode, isComponent, nodeHasLeaveAnimations);
7362
7367
  });
7363
7368
  }
7364
7369
  else if (action === 3 /* WalkTNodeTreeAction.Destroy */) {
@@ -7569,11 +7574,11 @@ function runAfterLeaveAnimations(lView, callback) {
7569
7574
  lView[ANIMATIONS].running = undefined;
7570
7575
  }
7571
7576
  allLeavingAnimations.delete(lView);
7572
- callback();
7577
+ callback(true);
7573
7578
  });
7574
7579
  return;
7575
7580
  }
7576
- callback();
7581
+ callback(false);
7577
7582
  }
7578
7583
  /** Removes listeners and unsubscribes from output subscriptions */
7579
7584
  function processCleanups(tView, lView) {
@@ -13650,13 +13655,8 @@ class ComponentFactory extends ComponentFactory$1 {
13650
13655
  try {
13651
13656
  const hostTNode = directiveHostFirstCreatePass(HEADER_OFFSET, rootLView, 2 /* TNodeType.Element */, '#host', () => rootTView.directiveRegistry, true, 0);
13652
13657
  // ---- element instruction
13653
- // TODO(crisbeto): in practice `hostElement` should always be defined, but there are some
13654
- // tests where the renderer is mocked out and `undefined` is returned. We should update the
13655
- // tests so that this check can be removed.
13656
- if (hostElement) {
13657
- setupStaticAttributes(hostRenderer, hostElement, hostTNode);
13658
- attachPatchData(hostElement, rootLView);
13659
- }
13658
+ setupStaticAttributes(hostRenderer, hostElement, hostTNode);
13659
+ attachPatchData(hostElement, rootLView);
13660
13660
  // TODO(pk): this logic is similar to the instruction code where a node can have directives
13661
13661
  createDirectivesInstances(rootTView, rootLView, hostTNode);
13662
13662
  executeContentQueries(rootTView, hostTNode, rootLView);
@@ -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.1']
13694
+ ? ['ng-version', '20.3.2']
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;
@@ -21405,7 +21405,6 @@ function ɵɵdeferPrefetchWhen(rawValue) {
21405
21405
  try {
21406
21406
  const value = Boolean(rawValue); // handle truthy or falsy values
21407
21407
  const tView = lView[TVIEW];
21408
- const tNode = getSelectedTNode();
21409
21408
  const tDetails = getTDeferBlockDetails(tView, tNode);
21410
21409
  if (value === true && tDetails.loadingState === DeferDependenciesLoadingState.NOT_STARTED) {
21411
21410
  // If loading has not been started yet, trigger it now.