14 lines
435 B
TypeScript
14 lines
435 B
TypeScript
import {TypedDependencyKey} from './di'
|
|
import {Application} from './lifecycle/Application'
|
|
import {RequestLocalStorage} from './http/RequestLocalStorage'
|
|
|
|
export function make<T>(key: TypedDependencyKey<T>): T {
|
|
const container = Application.getApplication()
|
|
const rls = container.make<RequestLocalStorage>(RequestLocalStorage)
|
|
if ( rls.has() ) {
|
|
return rls.get().make(key)
|
|
}
|
|
|
|
return container.make(key)
|
|
}
|