ts-ioc-container
Version:
Fast, lightweight TypeScript dependency injection container with a clean API, scoped lifecycles, decorators, tokens, hooks, lazy injection, customizable providers, and no global container objects.
17 lines (16 loc) • 707 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.select = void 0;
const GroupAliasToken_1 = require("./token/GroupAliasToken");
const FunctionToken_1 = require("./token/FunctionToken");
const GroupInstanceToken_1 = require("./token/GroupInstanceToken");
const toToken_1 = require("./token/toToken");
exports.select = {
alias: GroupAliasToken_1.toGroupAlias,
token: toToken_1.toToken,
instances: (predicate = () => true) => new GroupInstanceToken_1.GroupInstanceToken(predicate),
scope: {
current: new FunctionToken_1.FunctionToken((s) => s),
create: (options) => new FunctionToken_1.FunctionToken((s) => s.createScope(options)),
},
};