fix(ivy): NgOnChangesFeature no longer included in hello_world (#28187)
- Wraps the NgOnChangesFeature in a factory such that no side effects occur in the module root - Adds comments to ngInherit property on feature definition interface to help guide others not to make the same mistake - Updates compiler to generate the feature properly after the change to it being a factory - Updates appropriate tests PR Close #28187
This commit is contained in:

committed by
Alex Rickabaugh

parent
a95e81978b
commit
5430d2bc66
@ -302,11 +302,27 @@ export type PipeDefWithMeta<T, Name extends string> = PipeDef<T>;
|
||||
|
||||
export interface DirectiveDefFeature {
|
||||
<T>(directiveDef: DirectiveDef<T>): void;
|
||||
/**
|
||||
* Marks a feature as something that {@link InheritDefinitionFeature} will execute
|
||||
* during inheritance.
|
||||
*
|
||||
* NOTE: DO NOT SET IN ROOT OF MODULE! Doing so will result in tree-shakers/bundlers
|
||||
* identifying the change as a side effect, and the feature will be included in
|
||||
* every bundle.
|
||||
*/
|
||||
ngInherit?: true;
|
||||
}
|
||||
|
||||
export interface ComponentDefFeature {
|
||||
<T>(componentDef: ComponentDef<T>): void;
|
||||
/**
|
||||
* Marks a feature as something that {@link InheritDefinitionFeature} will execute
|
||||
* during inheritance.
|
||||
*
|
||||
* NOTE: DO NOT SET IN ROOT OF MODULE! Doing so will result in tree-shakers/bundlers
|
||||
* identifying the change as a side effect, and the feature will be included in
|
||||
* every bundle.
|
||||
*/
|
||||
ngInherit?: true;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user