mirror of
https://github.com/angular/angular
synced 2026-05-24 09:28:37 +00:00
This PR makes a number of changes to the metadata API to address design
flaws in the previous API. Some of the changes include:
- Replaces the previous `MetadataKey` and `AggregateMetadataKey` with a
single unified `MetadataKey` that is used for all metadata.
- The new `MetadataKey` is only defined for fields that explicitly set
it in their schema logic
- All metadata now has reducer / aggregate behavior
- The new `MetadataKey` has an option to create a managed key which
wraps the result of its computed aggregate into some other structure
such as a `Resource` or `linkedSignal`
- There are now two APIs to create metadata keys
- `createMetadataKey` for pure computed metadata
- `createManagedMetadataKey` for metadata that manages its computation
internally
(cherry picked from commit
|
||
|---|---|---|
| .. | ||
| api | ||
| compat | ||
| BUILD.bazel | ||
| dynamic.spec.ts | ||
| field_context.spec.ts | ||
| field_node.spec.ts | ||
| field_proxy.spec.ts | ||
| form.spec.ts | ||
| logic_node.spec.ts | ||
| path.spec.ts | ||
| recursive_logic.spec.ts | ||
| resource.spec.ts | ||
| submit.spec.ts | ||
| types.spec.ts | ||
| validation_status.spec.ts | ||