@@ -16,12 +16,7 @@ import {stringify} from '../util/stringify';
1616import { resolveForwardRef } from './forward_ref' ;
1717import { getInjectImplementation , injectRootLimpMode } from './inject_switch' ;
1818import type { Injector } from './injector' ;
19- import {
20- DecoratorFlags ,
21- InjectFlags ,
22- InjectOptions ,
23- InternalInjectFlags ,
24- } from './interface/injector' ;
19+ import { DecoratorFlags , InternalInjectFlags , InjectOptions } from './interface/injector' ;
2520import { ProviderToken } from './provider_token' ;
2621import type { HostAttributeToken } from './host_attribute_token' ;
2722import {
@@ -52,12 +47,12 @@ const DI_DECORATOR_FLAG = '__NG_DI_FLAG__';
5247export class RetrievingInjector implements PrimitivesInjector {
5348 constructor ( readonly injector : Injector ) { }
5449 retrieve < T > ( token : PrimitivesInjectionToken < T > , options : unknown ) : T | NotFound {
55- const flags : InjectFlags =
56- convertToBitFlags ( options as InjectOptions | undefined ) || InjectFlags . Default ;
50+ const flags : InternalInjectFlags =
51+ convertToBitFlags ( options as InjectOptions | undefined ) || InternalInjectFlags . Default ;
5752 return ( this . injector as BackwardsCompatibleInjector ) . get (
5853 token as unknown as InjectionToken < T > ,
5954 // When a dependency is requested with an optional flag, DI returns null as the default value.
60- flags & InjectFlags . Optional ? null : undefined ,
55+ flags & InternalInjectFlags . Optional ? null : undefined ,
6156 flags ,
6257 ) as T ;
6358 }
@@ -74,14 +69,21 @@ export const SOURCE = '__source';
7469 * removed once we consolidate the flags and the object literal approach.
7570 */
7671export type BackwardsCompatibleInjector = Injector & {
77- get < T > ( token : ProviderToken < T > , notFoundValue ?: T , options ?: InjectFlags | InjectOptions ) : T ;
72+ get < T > (
73+ token : ProviderToken < T > ,
74+ notFoundValue ?: T ,
75+ options ?: InternalInjectFlags | InjectOptions ,
76+ ) : T ;
7877} ;
7978
8079export function injectInjectorOnly < T > ( token : ProviderToken < T > ) : T ;
81- export function injectInjectorOnly < T > ( token : ProviderToken < T > , flags ?: InjectFlags ) : T | null ;
8280export function injectInjectorOnly < T > (
8381 token : ProviderToken < T > ,
84- flags = InjectFlags . Default ,
82+ flags ?: InternalInjectFlags ,
83+ ) : T | null ;
84+ export function injectInjectorOnly < T > (
85+ token : ProviderToken < T > ,
86+ flags = InternalInjectFlags . Default ,
8587) : T | null {
8688 const currentInjector = getCurrentInjector ( ) ;
8789 if ( currentInjector === undefined ) {
@@ -113,16 +115,16 @@ export function injectInjectorOnly<T>(
113115 * @publicApi This instruction has been emitted by ViewEngine for some time and is deployed to npm.
114116 */
115117export function ɵɵinject < T > ( token : ProviderToken < T > ) : T ;
116- export function ɵɵinject < T > ( token : ProviderToken < T > , flags ?: InjectFlags ) : T | null ;
118+ export function ɵɵinject < T > ( token : ProviderToken < T > , flags ?: InternalInjectFlags ) : T | null ;
117119export function ɵɵinject ( token : HostAttributeToken ) : string ;
118- export function ɵɵinject ( token : HostAttributeToken , flags ?: InjectFlags ) : string | null ;
120+ export function ɵɵinject ( token : HostAttributeToken , flags ?: InternalInjectFlags ) : string | null ;
119121export function ɵɵinject < T > (
120122 token : ProviderToken < T > | HostAttributeToken ,
121- flags ?: InjectFlags ,
123+ flags ?: InternalInjectFlags ,
122124) : string | null ;
123125export function ɵɵinject < T > (
124126 token : ProviderToken < T > | HostAttributeToken ,
125- flags = InjectFlags . Default ,
127+ flags = InternalInjectFlags . Default ,
126128) : T | null {
127129 return ( getInjectImplementation ( ) || injectInjectorOnly ) (
128130 resolveForwardRef ( token as Type < T > ) ,
@@ -279,8 +281,8 @@ export function inject<T>(token: ProviderToken<T> | HostAttributeToken, options?
279281
280282// Converts object-based DI flags (`InjectOptions`) to bit flags (`InjectFlags`).
281283export function convertToBitFlags (
282- flags : InjectOptions | InjectFlags | undefined ,
283- ) : InjectFlags | undefined {
284+ flags : InjectOptions | InternalInjectFlags | undefined ,
285+ ) : InternalInjectFlags | undefined {
284286 if ( typeof flags === 'undefined' || typeof flags === 'number' ) {
285287 return flags ;
286288 }
@@ -292,11 +294,11 @@ export function convertToBitFlags(
292294 ( ( flags . optional && InternalInjectFlags . Optional ) as number ) |
293295 ( ( flags . host && InternalInjectFlags . Host ) as number ) |
294296 ( ( flags . self && InternalInjectFlags . Self ) as number ) |
295- ( ( flags . skipSelf && InternalInjectFlags . SkipSelf ) as number ) ) as InjectFlags ;
297+ ( ( flags . skipSelf && InternalInjectFlags . SkipSelf ) as number ) ) as InternalInjectFlags ;
296298}
297299
298300// Converts bitflags to inject options
299- function convertToInjectOptions ( flags : InjectFlags ) : InjectOptions {
301+ function convertToInjectOptions ( flags : InternalInjectFlags ) : InjectOptions {
300302 return {
301303 optional : ! ! ( flags & InternalInjectFlags . Optional ) ,
302304 host : ! ! ( flags & InternalInjectFlags . Host ) ,
@@ -317,7 +319,7 @@ export function injectArgs(types: (ProviderToken<any> | any[])[]): any[] {
317319 ) ;
318320 }
319321 let type : Type < any > | undefined = undefined ;
320- let flags : InjectFlags = InjectFlags . Default ;
322+ let flags : InternalInjectFlags = InternalInjectFlags . Default ;
321323
322324 for ( let j = 0 ; j < arg . length ; j ++ ) {
323325 const meta = arg [ j ] ;
0 commit comments