
BREAKING CHANGE The @Parent annotation has been removed. Use @Ancestor instead. @Parent was used to enforce a particular DOM structure (e.g., a pane component is a direct child of the tabs component). DI is not the right mechanism to do it. We should enforce it using schema instead.
46 lines
1.1 KiB
TypeScript
46 lines
1.1 KiB
TypeScript
/**
|
|
* @module
|
|
* @description
|
|
* The `di` module provides dependency injection container services.
|
|
*/
|
|
|
|
export {
|
|
InjectMetadata,
|
|
OptionalMetadata,
|
|
InjectableMetadata,
|
|
VisibilityMetadata,
|
|
SelfMetadata,
|
|
AncestorMetadata,
|
|
UnboundedMetadata,
|
|
DependencyMetadata,
|
|
DEFAULT_VISIBILITY
|
|
} from './src/di/metadata';
|
|
|
|
// we have to reexport * because Dart and TS export two different sets of types
|
|
export * from './src/di/decorators';
|
|
|
|
export {forwardRef, resolveForwardRef, ForwardRefFn} from './src/di/forward_ref';
|
|
export {
|
|
Injector,
|
|
ProtoInjector,
|
|
BindingWithVisibility,
|
|
DependencyProvider,
|
|
PUBLIC_AND_PRIVATE,
|
|
PUBLIC,
|
|
PRIVATE,
|
|
undefinedValue
|
|
} from './src/di/injector';
|
|
export {Binding, BindingBuilder, ResolvedBinding, Dependency, bind} from './src/di/binding';
|
|
export {Key, KeyRegistry, TypeLiteral} from './src/di/key';
|
|
export {
|
|
NoBindingError,
|
|
AbstractBindingError,
|
|
AsyncBindingError,
|
|
CyclicDependencyError,
|
|
InstantiationError,
|
|
InvalidBindingError,
|
|
NoAnnotationError,
|
|
OutOfBoundsError
|
|
} from './src/di/exceptions';
|
|
export {OpaqueToken} from './src/di/opaque_token';
|