mirror of
https://github.com/angular/angular
synced 2026-05-24 09:28:37 +00:00
Implement support for `FormUiComponent`s in both Reactive and Template-driven
forms. This allows components that use the new signal-based form control
architecture to be used seamlessly within existing Angular form paradigms.
Key changes:
- Integrated `ɵngControlCreate` and `ɵngControlUpdate` lifecycle hooks into
`NgModel`, `FormControlDirective`, and `FormControlName`.
- Implemented branching logic to choose between the traditional `ControlValueAccessor` (CVA) path and the new FVC path based on the host element's capabilities.
- Added comprehensive unit tests for FVC integration in both Reactive (`reactive_fvc.spec.ts`) and Template-driven (`template_fvc.spec.ts`) forms, covering:
- Value synchronization (model -> view and view -> model).
- Status synchronization (touched, dirty, valid, invalid, pending, required).
- Error propagation and `parseErrors` support.
- Fallback behavior to native DOM properties (disabled, required) when FVC inputs are missing.
- Graceful fallback to CVA when no FVC pattern is detected.
- Refined `NgModel` to correctly handle `required` validation via its existing `RequiredValidator` directive while supporting FVC for other properties.
|
||
|---|---|---|
| .. | ||
| BUILD.bazel | ||
| directives_spec.ts | ||
| form_array_spec.ts | ||
| form_builder_spec.ts | ||
| form_control_spec.ts | ||
| form_group_spec.ts | ||
| ng_control_status_spec.ts | ||
| reactive_integration_spec.ts | ||
| template_integration_spec.ts | ||
| typed_integration_spec.ts | ||
| util.ts | ||
| validators_spec.ts | ||
| value_accessor_integration_spec.ts | ||