Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | 3x 3x 21x 21x 21x 21x | import { Keys } from "../Keys";
import { IInstantiationMode } from "../interfaces/IInstantiatable";
export interface IInjectableOptions {
instantiation: IInstantiationMode;
}
export function Injectable(options: IInjectableOptions = {instantiation: "singleton"}) {
return (
target: Function
) => {
const metadata: any = Reflect.getMetadata(Keys.INJECTABLE_KEY, target.prototype) || {};
metadata[Keys.INJECTABLE_KEY] = options;
Reflect.defineMetadata(Keys.INJECTABLE_KEY, metadata, target.prototype);
};
}
|