@angular/core 21.1.0 → 21.1.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 (63) hide show
  1. package/fesm2022/_attribute-chunk.mjs +1 -1
  2. package/fesm2022/_debug_node-chunk.mjs +17 -12
  3. package/fesm2022/_debug_node-chunk.mjs.map +1 -1
  4. package/fesm2022/_effect-chunk.mjs +1 -1
  5. package/fesm2022/_linked_signal-chunk.mjs +1 -1
  6. package/fesm2022/_not_found-chunk.mjs +1 -1
  7. package/fesm2022/_resource-chunk.mjs +1 -1
  8. package/fesm2022/_untracked-chunk.mjs +2 -2
  9. package/fesm2022/_untracked-chunk.mjs.map +1 -1
  10. package/fesm2022/_weak_ref-chunk.mjs +1 -1
  11. package/fesm2022/core.mjs +1 -1
  12. package/fesm2022/primitives-di.mjs +1 -1
  13. package/fesm2022/primitives-event-dispatch.mjs +1 -1
  14. package/fesm2022/primitives-signals.mjs +1 -1
  15. package/fesm2022/rxjs-interop.mjs +1 -1
  16. package/fesm2022/testing.mjs +1 -1
  17. package/package.json +2 -2
  18. package/schematics/bundles/add-bootstrap-context-to-server-main.cjs +1 -1
  19. package/schematics/bundles/application-config-core.cjs +1 -1
  20. package/schematics/bundles/apply_import_manager-CxA_YYgB.cjs +1 -1
  21. package/schematics/bundles/bootstrap-options-migration.cjs +1 -1
  22. package/schematics/bundles/cleanup-unused-imports.cjs +1 -1
  23. package/schematics/bundles/common-to-standalone-migration.cjs +1 -1
  24. package/schematics/bundles/compiler_host-CY14HvaP.cjs +1 -1
  25. package/schematics/bundles/control-flow-migration.cjs +1 -1
  26. package/schematics/bundles/imports-CVmcbVA9.cjs +1 -1
  27. package/schematics/bundles/index-BtLcQH8g.cjs +1 -1
  28. package/schematics/bundles/inject-migration.cjs +1 -1
  29. package/schematics/bundles/leading_space-BTPRV0wu.cjs +1 -1
  30. package/schematics/bundles/migrate_ts_type_references-CV7qdt5t.cjs +1 -1
  31. package/schematics/bundles/ng_component_template-BOuKAnQd.cjs +1 -1
  32. package/schematics/bundles/ng_decorators-DYy6II6x.cjs +1 -1
  33. package/schematics/bundles/ngclass-to-class-migration.cjs +1 -1
  34. package/schematics/bundles/ngstyle-to-style-migration.cjs +1 -1
  35. package/schematics/bundles/nodes-ZSQ7WZRB.cjs +1 -1
  36. package/schematics/bundles/output-migration.cjs +1 -1
  37. package/schematics/bundles/parse_html-C8eKA9px.cjs +1 -1
  38. package/schematics/bundles/project_paths-D2V-Uh2L.cjs +1 -1
  39. package/schematics/bundles/project_tsconfig_paths-DkkMibv-.cjs +1 -1
  40. package/schematics/bundles/property_name-BCpALNpZ.cjs +1 -1
  41. package/schematics/bundles/route-lazy-loading.cjs +1 -1
  42. package/schematics/bundles/router-current-navigation.cjs +1 -1
  43. package/schematics/bundles/router-last-successful-navigation.cjs +1 -1
  44. package/schematics/bundles/router-testing-module-migration.cjs +1 -1
  45. package/schematics/bundles/self-closing-tags-migration.cjs +1 -1
  46. package/schematics/bundles/signal-input-migration.cjs +1 -1
  47. package/schematics/bundles/signal-queries-migration.cjs +1 -1
  48. package/schematics/bundles/signals.cjs +1 -1
  49. package/schematics/bundles/standalone-migration.cjs +1 -1
  50. package/schematics/bundles/symbol-DZeHSR-V.cjs +1 -1
  51. package/types/_api-chunk.d.ts +1 -1
  52. package/types/_chrome_dev_tools_performance-chunk.d.ts +1 -1
  53. package/types/_discovery-chunk.d.ts +8 -26
  54. package/types/_effect-chunk.d.ts +1 -1
  55. package/types/_event_dispatcher-chunk.d.ts +1 -1
  56. package/types/_formatter-chunk.d.ts +1 -1
  57. package/types/_weak_ref-chunk.d.ts +1 -1
  58. package/types/core.d.ts +9 -8
  59. package/types/primitives-di.d.ts +1 -1
  60. package/types/primitives-event-dispatch.d.ts +1 -1
  61. package/types/primitives-signals.d.ts +1 -1
  62. package/types/rxjs-interop.d.ts +1 -1
  63. package/types/testing.d.ts +1 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v21.1.0
2
+ * @license Angular v21.1.2
3
3
  * (c) 2010-2026 Google LLC. https://angular.dev/
4
4
  * License: MIT
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Angular v21.1.0
2
+ * @license Angular v21.1.2
3
3
  * (c) 2010-2026 Google LLC. https://angular.dev/
4
4
  * License: MIT
5
5
  */
@@ -1017,8 +1017,9 @@ function getNodeInjectable(lView, tView, index, tNode, flags) {
1017
1017
  const factory = value;
1018
1018
  ngDevMode && injectionPath.push(factory.name ?? 'unknown');
1019
1019
  if (factory.resolving) {
1020
- const token = stringifyForError(tData[index]);
1020
+ let token = '';
1021
1021
  if (ngDevMode) {
1022
+ token = stringifyForError(tData[index]);
1022
1023
  throw cyclicDependencyErrorWithDetails(token, injectionPath);
1023
1024
  } else {
1024
1025
  throw cyclicDependencyError(token);
@@ -8313,7 +8314,7 @@ class ComponentFactory extends ComponentFactory$1 {
8313
8314
  }
8314
8315
  }
8315
8316
  function createRootTView(rootSelectorOrNode, componentDef, componentBindings, directives) {
8316
- const tAttributes = rootSelectorOrNode ? ['ng-version', '21.1.0'] : extractAttrsAndClassesFromSelector(componentDef.selectors[0]);
8317
+ const tAttributes = rootSelectorOrNode ? ['ng-version', '21.1.2'] : extractAttrsAndClassesFromSelector(componentDef.selectors[0]);
8317
8318
  let creationBindings = null;
8318
8319
  let updateBindings = null;
8319
8320
  let varsToAllocate = 0;
@@ -13292,7 +13293,7 @@ function ɵɵcontrolCreate() {
13292
13293
  } else if (tNode.flags & 8192) {
13293
13294
  initializeNativeControl(lView, tNode, fieldDirective);
13294
13295
  }
13295
- fieldDirective.ɵregister();
13296
+ fieldDirective.registerAsBinding(getCustomControl(tNode, lView));
13296
13297
  }
13297
13298
  function ɵɵcontrol(value, name, sanitizer) {
13298
13299
  const lView = getLView();
@@ -13393,7 +13394,11 @@ function isNativeControlFirstCreatePass(tNode) {
13393
13394
  }
13394
13395
  function getFieldDirective(tNode, lView) {
13395
13396
  const index = tNode.fieldIndex;
13396
- return index === -1 ? null : lView[index];
13397
+ return index === -1 ? undefined : lView[index];
13398
+ }
13399
+ function getCustomControl(tNode, lView) {
13400
+ const index = tNode.customControlIndex;
13401
+ return index === -1 ? undefined : lView[index];
13397
13402
  }
13398
13403
  function hasModelInput(directiveDef, name) {
13399
13404
  return hasInput(directiveDef, name) && hasOutput(directiveDef, name + 'Change');
@@ -13414,14 +13419,11 @@ function initializeCustomControl(lView, tNode, fieldDirective, modelName) {
13414
13419
  if (hasOutput(directiveDef, touchedOutputName)) {
13415
13420
  listenToOutput(tNode, lView, directiveIndex, touchedOutputName, touchedOutputName, wrapListener(tNode, lView, () => fieldDirective.state().markAsTouched()));
13416
13421
  }
13417
- const customControl = lView[directiveIndex];
13418
- fieldDirective.focus = () => customControl.focus ? customControl.focus() : fieldDirective.element.focus();
13419
13422
  }
13420
13423
  function initializeInteropControl(fieldDirective) {
13421
13424
  const interopControl = fieldDirective.ɵinteropControl;
13422
13425
  interopControl.registerOnChange(value => fieldDirective.state().setControlValue(value));
13423
13426
  interopControl.registerOnTouched(() => fieldDirective.state().markAsTouched());
13424
- fieldDirective.focus = () => fieldDirective.element.focus();
13425
13427
  }
13426
13428
  function isNativeControl(tNode) {
13427
13429
  if (tNode.type !== 2) {
@@ -13447,7 +13449,6 @@ function initializeNativeControl(lView, tNode, fieldDirective) {
13447
13449
  const observer = observeSelectMutations(element, fieldDirective);
13448
13450
  storeCleanupWithContext(tView, lView, observer, observer.disconnect);
13449
13451
  }
13450
- fieldDirective.focus = () => element.focus();
13451
13452
  }
13452
13453
  function observeSelectMutations(select, controlDirective) {
13453
13454
  const observer = new MutationObserver(mutations => {
@@ -16257,6 +16258,10 @@ function toStylingKeyValueArray(keyValueArraySet, stringParser, value) {
16257
16258
  for (let i = 0; i < unwrappedValue.length; i++) {
16258
16259
  keyValueArraySet(styleKeyValueArray, unwrappedValue[i], true);
16259
16260
  }
16261
+ } else if (unwrappedValue instanceof Set) {
16262
+ for (const current of unwrappedValue) {
16263
+ keyValueArraySet(styleKeyValueArray, current, true);
16264
+ }
16260
16265
  } else if (typeof unwrappedValue === 'object') {
16261
16266
  for (const key in unwrappedValue) {
16262
16267
  if (unwrappedValue.hasOwnProperty(key)) {
@@ -16388,18 +16393,18 @@ function ɵɵtext(index, value = '') {
16388
16393
  const adjustedIndex = index + HEADER_OFFSET;
16389
16394
  ngDevMode && assertTNodeCreationIndex(lView, index);
16390
16395
  const tNode = tView.firstCreatePass ? getOrCreateTNode(tView, adjustedIndex, 1, value, null) : tView.data[adjustedIndex];
16391
- const textNative = _locateOrCreateTextNode(tView, lView, tNode, value, index);
16396
+ const textNative = _locateOrCreateTextNode(tView, lView, tNode, value);
16392
16397
  lView[adjustedIndex] = textNative;
16393
16398
  if (wasLastNodeCreated()) {
16394
16399
  appendChild(tView, lView, textNative, tNode);
16395
16400
  }
16396
16401
  setCurrentTNode(tNode, false);
16397
16402
  }
16398
- let _locateOrCreateTextNode = (tView, lView, tNode, value, index) => {
16403
+ let _locateOrCreateTextNode = (tView, lView, tNode, value) => {
16399
16404
  lastNodeWasCreated(true);
16400
16405
  return createTextNode(lView[RENDERER], value);
16401
16406
  };
16402
- function locateOrCreateTextNodeImpl(tView, lView, tNode, value, index) {
16407
+ function locateOrCreateTextNodeImpl(tView, lView, tNode, value) {
16403
16408
  const isNodeCreationMode = !canHydrateNode(lView, tNode);
16404
16409
  lastNodeWasCreated(isNodeCreationMode);
16405
16410
  if (isNodeCreationMode) {