composed-di 0.2.8-ts4 → 0.2.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +5 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +21 -21
- package/dist/index.js.map +1 -1
- package/dist/serviceFactory.d.ts +35 -35
- package/dist/serviceFactory.d.ts.map +1 -1
- package/dist/serviceFactory.js +53 -53
- package/dist/serviceFactory.js.map +1 -1
- package/dist/serviceKey.d.ts +6 -6
- package/dist/serviceKey.d.ts.map +1 -1
- package/dist/serviceKey.js +12 -12
- package/dist/serviceKey.js.map +1 -1
- package/dist/serviceModule.d.ts +33 -33
- package/dist/serviceModule.d.ts.map +1 -1
- package/dist/serviceModule.js +103 -103
- package/dist/serviceModule.js.map +1 -1
- package/dist/{ServiceScope.d.ts → serviceScope.d.ts} +6 -6
- package/dist/serviceScope.d.ts.map +1 -0
- package/dist/{ServiceScope.js → serviceScope.js} +11 -11
- package/dist/serviceScope.js.map +1 -0
- package/dist/utils.d.ts +33 -33
- package/dist/utils.js +114 -115
- package/dist/utils.js.map +1 -1
- package/package.json +3 -2
- package/src/index.ts +5 -5
- package/src/{ServiceFactory.ts → serviceFactory.ts} +83 -83
- package/src/{ServiceModule.ts → serviceModule.ts} +123 -123
- package/src/{ServiceScope.ts → serviceScope.ts} +7 -7
- package/src/utils.ts +2 -2
- package/dist/ServiceScope.d.ts.map +0 -1
- package/dist/ServiceScope.js.map +0 -1
- /package/src/{ServiceKey.ts → serviceKey.ts} +0 -0
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export * from './
|
|
2
|
-
export * from './
|
|
3
|
-
export * from './
|
|
4
|
-
export * from './
|
|
5
|
-
export * from './utils';
|
|
1
|
+
export * from './serviceKey';
|
|
2
|
+
export * from './serviceModule';
|
|
3
|
+
export * from './serviceFactory';
|
|
4
|
+
export * from './serviceScope';
|
|
5
|
+
export * from './utils';
|
|
6
6
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./
|
|
18
|
-
__exportStar(require("./
|
|
19
|
-
__exportStar(require("./
|
|
20
|
-
__exportStar(require("./
|
|
21
|
-
__exportStar(require("./utils"), exports);
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./serviceKey"), exports);
|
|
18
|
+
__exportStar(require("./serviceModule"), exports);
|
|
19
|
+
__exportStar(require("./serviceFactory"), exports);
|
|
20
|
+
__exportStar(require("./serviceScope"), exports);
|
|
21
|
+
__exportStar(require("./utils"), exports);
|
|
22
22
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,kDAAgC;AAChC,mDAAiC;AACjC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,kDAAgC;AAChC,mDAAiC;AACjC,iDAA+B;AAC/B,0CAAwB"}
|
package/dist/serviceFactory.d.ts
CHANGED
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
import { ServiceKey } from './
|
|
2
|
-
import { ServiceScope } from './
|
|
3
|
-
type ServiceType<T> = T extends ServiceKey<infer U> ? U : never;
|
|
4
|
-
type DependencyTypes<T extends readonly ServiceKey<unknown>[]> = {
|
|
5
|
-
[K in keyof T]: ServiceType<T[K]>;
|
|
6
|
-
};
|
|
7
|
-
export declare abstract class ServiceFactory<T, D extends readonly ServiceKey<unknown>[] = []> {
|
|
8
|
-
abstract provides: ServiceKey<T>;
|
|
9
|
-
abstract dependsOn: D;
|
|
10
|
-
abstract scope?: ServiceScope;
|
|
11
|
-
abstract initialize: (...dependencies: DependencyTypes<D>) => T | Promise<T>;
|
|
12
|
-
abstract dispose?: () => void;
|
|
13
|
-
/**
|
|
14
|
-
* Creates a singleton service factory that ensures a single instance of the provided service is initialized
|
|
15
|
-
* and used throughout the scope lifecycle.
|
|
16
|
-
*/
|
|
17
|
-
static singleton<T, D extends readonly ServiceKey<unknown>[] = []>({ scope, provides, dependsOn, initialize, dispose, }: {
|
|
18
|
-
scope?: ServiceScope;
|
|
19
|
-
provides: ServiceKey<T>;
|
|
20
|
-
dependsOn?: D;
|
|
21
|
-
initialize: (...dependencies: DependencyTypes<D>) => T | Promise<T>;
|
|
22
|
-
dispose?: (instance: T) => void;
|
|
23
|
-
}): ServiceFactory<T, D>;
|
|
24
|
-
/**
|
|
25
|
-
* Creates a one-shot service factory that initializes a new instance of the provided service
|
|
26
|
-
* every time it is requested.
|
|
27
|
-
*/
|
|
28
|
-
static oneShot<T, D extends readonly ServiceKey<unknown>[] = []>({ provides, dependsOn, initialize, }: {
|
|
29
|
-
provides: ServiceKey<T>;
|
|
30
|
-
dependsOn: D;
|
|
31
|
-
initialize: (...dependencies: DependencyTypes<D>) => T | Promise<T>;
|
|
32
|
-
}): ServiceFactory<T, D>;
|
|
33
|
-
}
|
|
34
|
-
export {};
|
|
35
|
-
//# sourceMappingURL=
|
|
1
|
+
import { ServiceKey } from './serviceKey';
|
|
2
|
+
import { ServiceScope } from './serviceScope';
|
|
3
|
+
type ServiceType<T> = T extends ServiceKey<infer U> ? U : never;
|
|
4
|
+
type DependencyTypes<T extends readonly ServiceKey<unknown>[]> = {
|
|
5
|
+
[K in keyof T]: ServiceType<T[K]>;
|
|
6
|
+
};
|
|
7
|
+
export declare abstract class ServiceFactory<const T, const D extends readonly ServiceKey<unknown>[] = []> {
|
|
8
|
+
abstract provides: ServiceKey<T>;
|
|
9
|
+
abstract dependsOn: D;
|
|
10
|
+
abstract scope?: ServiceScope;
|
|
11
|
+
abstract initialize: (...dependencies: DependencyTypes<D>) => T | Promise<T>;
|
|
12
|
+
abstract dispose?: () => void;
|
|
13
|
+
/**
|
|
14
|
+
* Creates a singleton service factory that ensures a single instance of the provided service is initialized
|
|
15
|
+
* and used throughout the scope lifecycle.
|
|
16
|
+
*/
|
|
17
|
+
static singleton<const T, const D extends readonly ServiceKey<unknown>[] = []>({ scope, provides, dependsOn, initialize, dispose, }: {
|
|
18
|
+
scope?: ServiceScope;
|
|
19
|
+
provides: ServiceKey<T>;
|
|
20
|
+
dependsOn?: D;
|
|
21
|
+
initialize: (...dependencies: DependencyTypes<D>) => T | Promise<T>;
|
|
22
|
+
dispose?: (instance: T) => void;
|
|
23
|
+
}): ServiceFactory<T, D>;
|
|
24
|
+
/**
|
|
25
|
+
* Creates a one-shot service factory that initializes a new instance of the provided service
|
|
26
|
+
* every time it is requested.
|
|
27
|
+
*/
|
|
28
|
+
static oneShot<const T, const D extends readonly ServiceKey<unknown>[] = []>({ provides, dependsOn, initialize, }: {
|
|
29
|
+
provides: ServiceKey<T>;
|
|
30
|
+
dependsOn: D;
|
|
31
|
+
initialize: (...dependencies: DependencyTypes<D>) => T | Promise<T>;
|
|
32
|
+
}): ServiceFactory<T, D>;
|
|
33
|
+
}
|
|
34
|
+
export {};
|
|
35
|
+
//# sourceMappingURL=serviceFactory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"serviceFactory.d.ts","sourceRoot":"","sources":["../src/serviceFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C,KAAK,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAGhE,KAAK,eAAe,CAAC,CAAC,SAAS,SAAS,UAAU,CAAC,OAAO,CAAC,EAAE,IAAI;KAC9D,CAAC,IAAI,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAClC,CAAC;AAEF,8BAAsB,cAAc,CAClC,KAAK,CAAC,CAAC,EACP,KAAK,CAAC,CAAC,SAAS,SAAS,UAAU,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE;IAEnD,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,UAAU,EAAE,CAAC,GAAG,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7E,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IAE9B;;;OAGG;IACH,MAAM,CAAC,SAAS,CACd,KAAK,CAAC,CAAC,EACP,KAAK,CAAC,CAAC,SAAS,SAAS,UAAU,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,EACnD,EACA,KAAK,EACL,QAAQ,EACR,SAA8B,EAC9B,UAAU,EACV,OAAkB,GACnB,EAAE;QACD,KAAK,CAAC,EAAE,YAAY,CAAC;QACrB,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;QACxB,SAAS,CAAC,EAAE,CAAC,CAAC;QACd,UAAU,EAAE,CAAC,GAAG,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACpE,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,IAAI,CAAC;KACjC,GAAG,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC;IAuBxB;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,SAAS,SAAS,UAAU,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,EAAE,EAC3E,QAAQ,EACR,SAAS,EACT,UAAU,GACX,EAAE;QACD,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;QACxB,SAAS,EAAE,CAAC,CAAC;QACb,UAAU,EAAE,CAAC,GAAG,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;KACrE,GAAG,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC;CAOzB"}
|
package/dist/serviceFactory.js
CHANGED
|
@@ -1,53 +1,53 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.ServiceFactory = void 0;
|
|
13
|
-
class ServiceFactory {
|
|
14
|
-
/**
|
|
15
|
-
* Creates a singleton service factory that ensures a single instance of the provided service is initialized
|
|
16
|
-
* and used throughout the scope lifecycle.
|
|
17
|
-
*/
|
|
18
|
-
static singleton({ scope, provides, dependsOn = [], initialize, dispose = () => { }, }) {
|
|
19
|
-
let instance;
|
|
20
|
-
return {
|
|
21
|
-
scope,
|
|
22
|
-
provides,
|
|
23
|
-
dependsOn,
|
|
24
|
-
initialize(...dependencies) {
|
|
25
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
26
|
-
if (instance === undefined) {
|
|
27
|
-
instance = yield initialize(...dependencies);
|
|
28
|
-
}
|
|
29
|
-
return instance;
|
|
30
|
-
});
|
|
31
|
-
},
|
|
32
|
-
dispose() {
|
|
33
|
-
if (instance !== undefined) {
|
|
34
|
-
dispose(instance);
|
|
35
|
-
instance = undefined;
|
|
36
|
-
}
|
|
37
|
-
},
|
|
38
|
-
};
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Creates a one-shot service factory that initializes a new instance of the provided service
|
|
42
|
-
* every time it is requested.
|
|
43
|
-
*/
|
|
44
|
-
static oneShot({ provides, dependsOn, initialize, }) {
|
|
45
|
-
return {
|
|
46
|
-
provides,
|
|
47
|
-
dependsOn,
|
|
48
|
-
initialize,
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
exports.ServiceFactory = ServiceFactory;
|
|
53
|
-
//# sourceMappingURL=
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.ServiceFactory = void 0;
|
|
13
|
+
class ServiceFactory {
|
|
14
|
+
/**
|
|
15
|
+
* Creates a singleton service factory that ensures a single instance of the provided service is initialized
|
|
16
|
+
* and used throughout the scope lifecycle.
|
|
17
|
+
*/
|
|
18
|
+
static singleton({ scope, provides, dependsOn = [], initialize, dispose = () => { }, }) {
|
|
19
|
+
let instance;
|
|
20
|
+
return {
|
|
21
|
+
scope,
|
|
22
|
+
provides,
|
|
23
|
+
dependsOn,
|
|
24
|
+
initialize(...dependencies) {
|
|
25
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
26
|
+
if (instance === undefined) {
|
|
27
|
+
instance = yield initialize(...dependencies);
|
|
28
|
+
}
|
|
29
|
+
return instance;
|
|
30
|
+
});
|
|
31
|
+
},
|
|
32
|
+
dispose() {
|
|
33
|
+
if (instance !== undefined) {
|
|
34
|
+
dispose(instance);
|
|
35
|
+
instance = undefined;
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Creates a one-shot service factory that initializes a new instance of the provided service
|
|
42
|
+
* every time it is requested.
|
|
43
|
+
*/
|
|
44
|
+
static oneShot({ provides, dependsOn, initialize, }) {
|
|
45
|
+
return {
|
|
46
|
+
provides,
|
|
47
|
+
dependsOn,
|
|
48
|
+
initialize,
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
exports.ServiceFactory = ServiceFactory;
|
|
53
|
+
//# sourceMappingURL=serviceFactory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"serviceFactory.js","sourceRoot":"","sources":["../src/serviceFactory.ts"],"names":[],"mappings":";;;;;;;;;;;;AAWA,MAAsB,cAAc;IAUlC;;;OAGG;IACH,MAAM,CAAC,SAAS,CAGd,EACA,KAAK,EACL,QAAQ,EACR,SAAS,GAAG,EAAkB,EAC9B,UAAU,EACV,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,GAOnB;QACC,IAAI,QAAuB,CAAC;QAE5B,OAAO;YACL,KAAK;YACL,QAAQ;YACR,SAAS;YACH,UAAU,CAAC,GAAG,YAAgC;;oBAClD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;wBAC3B,QAAQ,GAAG,MAAM,UAAU,CAAC,GAAG,YAAY,CAAC,CAAC;oBAC/C,CAAC;oBAED,OAAO,QAAQ,CAAC;gBAClB,CAAC;aAAA;YACD,OAAO;gBACL,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,OAAO,CAAC,QAAQ,CAAC,CAAC;oBAClB,QAAQ,GAAG,SAAS,CAAC;gBACvB,CAAC;YACH,CAAC;SACF,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,OAAO,CAA+D,EAC3E,QAAQ,EACR,SAAS,EACT,UAAU,GAKX;QACC,OAAO;YACL,QAAQ;YACR,SAAS;YACT,UAAU;SACX,CAAC;IACJ,CAAC;CACF;AAvED,wCAuEC"}
|
package/dist/serviceKey.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export declare class ServiceKey<T> {
|
|
2
|
-
readonly name: string;
|
|
3
|
-
readonly symbol: symbol;
|
|
4
|
-
constructor(name: string);
|
|
5
|
-
}
|
|
6
|
-
//# sourceMappingURL=
|
|
1
|
+
export declare class ServiceKey<T> {
|
|
2
|
+
readonly name: string;
|
|
3
|
+
readonly symbol: symbol;
|
|
4
|
+
constructor(name: string);
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=serviceKey.d.ts.map
|
package/dist/serviceKey.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"serviceKey.d.ts","sourceRoot":"","sources":["../src/serviceKey.ts"],"names":[],"mappings":"AACA,qBAAa,UAAU,CAAC,CAAC;aAGK,IAAI,EAAE,MAAM;IAFxC,SAAgB,MAAM,EAAE,MAAM,CAAC;gBAEH,IAAI,EAAE,MAAM;CAGzC"}
|
package/dist/serviceKey.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ServiceKey = void 0;
|
|
4
|
-
// @ts-ignore
|
|
5
|
-
class ServiceKey {
|
|
6
|
-
constructor(name) {
|
|
7
|
-
this.name = name;
|
|
8
|
-
this.symbol = Symbol(name);
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
exports.ServiceKey = ServiceKey;
|
|
12
|
-
//# sourceMappingURL=
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ServiceKey = void 0;
|
|
4
|
+
// @ts-ignore
|
|
5
|
+
class ServiceKey {
|
|
6
|
+
constructor(name) {
|
|
7
|
+
this.name = name;
|
|
8
|
+
this.symbol = Symbol(name);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
exports.ServiceKey = ServiceKey;
|
|
12
|
+
//# sourceMappingURL=serviceKey.js.map
|
package/dist/serviceKey.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"serviceKey.js","sourceRoot":"","sources":["../src/serviceKey.ts"],"names":[],"mappings":";;;AAAA,aAAa;AACb,MAAa,UAAU;IAGrB,YAA4B,IAAY;QAAZ,SAAI,GAAJ,IAAI,CAAQ;QACtC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;CACF;AAND,gCAMC"}
|
package/dist/serviceModule.d.ts
CHANGED
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
import { ServiceKey } from './
|
|
2
|
-
import { ServiceFactory } from './
|
|
3
|
-
import { ServiceScope } from './
|
|
4
|
-
type GenericFactory = ServiceFactory<
|
|
5
|
-
export declare class ServiceModule {
|
|
6
|
-
readonly factories: GenericFactory[];
|
|
7
|
-
private constructor();
|
|
8
|
-
get<T>(key: ServiceKey<T>): Promise<T>;
|
|
9
|
-
/**
|
|
10
|
-
* Disposes of service factories within the specified scope or all factories if no scope is provided.
|
|
11
|
-
*
|
|
12
|
-
* This method is useful for cleaning up resources and instances held by service factories,
|
|
13
|
-
* such as singleton factories, as they may hold database connections or other resources that need to be released.
|
|
14
|
-
*
|
|
15
|
-
* @param {ServiceScope} [scope] The scope to filter the factories to be disposed.
|
|
16
|
-
* If not provided, all factories are disposed of.
|
|
17
|
-
* @return {void} No return value.
|
|
18
|
-
*/
|
|
19
|
-
dispose(scope?: ServiceScope): void;
|
|
20
|
-
/**
|
|
21
|
-
* Creates a new ServiceModule instance by aggregating and deduplicating a list of
|
|
22
|
-
* ServiceModule or GenericFactory instances.
|
|
23
|
-
* If multiple factories provide the same
|
|
24
|
-
* ServiceKey, the last one in the list takes precedence.
|
|
25
|
-
*
|
|
26
|
-
* @param {Array<ServiceModule | GenericFactory>} entries - An array of ServiceModule or GenericFactory
|
|
27
|
-
* instances to be processed into a single ServiceModule.
|
|
28
|
-
* @return {ServiceModule} A new ServiceModule containing the deduplicated factories.
|
|
29
|
-
*/
|
|
30
|
-
static from(entries: (ServiceModule | GenericFactory)[]): ServiceModule;
|
|
31
|
-
}
|
|
32
|
-
export {};
|
|
33
|
-
//# sourceMappingURL=
|
|
1
|
+
import { ServiceKey } from './serviceKey';
|
|
2
|
+
import { ServiceFactory } from './serviceFactory';
|
|
3
|
+
import { ServiceScope } from './serviceScope';
|
|
4
|
+
type GenericFactory = ServiceFactory<unknown, readonly ServiceKey<any>[]>;
|
|
5
|
+
export declare class ServiceModule {
|
|
6
|
+
readonly factories: GenericFactory[];
|
|
7
|
+
private constructor();
|
|
8
|
+
get<T>(key: ServiceKey<T>): Promise<T>;
|
|
9
|
+
/**
|
|
10
|
+
* Disposes of service factories within the specified scope or all factories if no scope is provided.
|
|
11
|
+
*
|
|
12
|
+
* This method is useful for cleaning up resources and instances held by service factories,
|
|
13
|
+
* such as singleton factories, as they may hold database connections or other resources that need to be released.
|
|
14
|
+
*
|
|
15
|
+
* @param {ServiceScope} [scope] The scope to filter the factories to be disposed.
|
|
16
|
+
* If not provided, all factories are disposed of.
|
|
17
|
+
* @return {void} No return value.
|
|
18
|
+
*/
|
|
19
|
+
dispose(scope?: ServiceScope): void;
|
|
20
|
+
/**
|
|
21
|
+
* Creates a new ServiceModule instance by aggregating and deduplicating a list of
|
|
22
|
+
* ServiceModule or GenericFactory instances.
|
|
23
|
+
* If multiple factories provide the same
|
|
24
|
+
* ServiceKey, the last one in the list takes precedence.
|
|
25
|
+
*
|
|
26
|
+
* @param {Array<ServiceModule | GenericFactory>} entries - An array of ServiceModule or GenericFactory
|
|
27
|
+
* instances to be processed into a single ServiceModule.
|
|
28
|
+
* @return {ServiceModule} A new ServiceModule containing the deduplicated factories.
|
|
29
|
+
*/
|
|
30
|
+
static from(entries: (ServiceModule | GenericFactory)[]): ServiceModule;
|
|
31
|
+
}
|
|
32
|
+
export {};
|
|
33
|
+
//# sourceMappingURL=serviceModule.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"serviceModule.d.ts","sourceRoot":"","sources":["../src/serviceModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,KAAK,cAAc,GAAG,cAAc,CAAC,OAAO,EAAE,SAAS,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAG1E,qBAAa,aAAa;IACJ,QAAQ,CAAC,SAAS,EAAE,cAAc,EAAE;IAAxD,OAAO;IAOM,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAqBnD;;;;;;;;;OASG;IACI,OAAO,CAAC,KAAK,CAAC,EAAE,YAAY;IAQnC;;;;;;;;;OASG;IACH,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,aAAa,GAAG,cAAc,CAAC,EAAE,GAAG,aAAa;CAcxE"}
|
package/dist/serviceModule.js
CHANGED
|
@@ -1,103 +1,103 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.ServiceModule = void 0;
|
|
13
|
-
class ServiceModule {
|
|
14
|
-
constructor(factories) {
|
|
15
|
-
this.factories = factories;
|
|
16
|
-
factories.forEach((factory) => {
|
|
17
|
-
checkRecursiveDependencies(factory);
|
|
18
|
-
checkMissingDependencies(factory, this.factories);
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
get(key) {
|
|
22
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
-
const factory = this.factories.find((factory) => {
|
|
24
|
-
return isSuitable(key, factory);
|
|
25
|
-
});
|
|
26
|
-
// Check if a factory to supply the requested key was not found
|
|
27
|
-
if (!factory) {
|
|
28
|
-
throw new Error(`Could not find a suitable factory for ${key.name}`);
|
|
29
|
-
}
|
|
30
|
-
// Resolve all dependencies first
|
|
31
|
-
const dependencies = yield Promise.all(factory.dependsOn.map((dependencyKey) => {
|
|
32
|
-
return this.get(dependencyKey);
|
|
33
|
-
}));
|
|
34
|
-
// Call the factory to retrieve the dependency
|
|
35
|
-
return factory.initialize(...dependencies);
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Disposes of service factories within the specified scope or all factories if no scope is provided.
|
|
40
|
-
*
|
|
41
|
-
* This method is useful for cleaning up resources and instances held by service factories,
|
|
42
|
-
* such as singleton factories, as they may hold database connections or other resources that need to be released.
|
|
43
|
-
*
|
|
44
|
-
* @param {ServiceScope} [scope] The scope to filter the factories to be disposed.
|
|
45
|
-
* If not provided, all factories are disposed of.
|
|
46
|
-
* @return {void} No return value.
|
|
47
|
-
*/
|
|
48
|
-
dispose(scope) {
|
|
49
|
-
const factories = scope
|
|
50
|
-
? this.factories.filter((f) => f.scope === scope)
|
|
51
|
-
: this.factories;
|
|
52
|
-
factories.forEach((factory) => { var _a; return (_a = factory.dispose) === null || _a === void 0 ? void 0 : _a.call(factory); });
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* Creates a new ServiceModule instance by aggregating and deduplicating a list of
|
|
56
|
-
* ServiceModule or GenericFactory instances.
|
|
57
|
-
* If multiple factories provide the same
|
|
58
|
-
* ServiceKey, the last one in the list takes precedence.
|
|
59
|
-
*
|
|
60
|
-
* @param {Array<ServiceModule | GenericFactory>} entries - An array of ServiceModule or GenericFactory
|
|
61
|
-
* instances to be processed into a single ServiceModule.
|
|
62
|
-
* @return {ServiceModule} A new ServiceModule containing the deduplicated factories.
|
|
63
|
-
*/
|
|
64
|
-
static from(entries) {
|
|
65
|
-
// Flatten entries and keep only the last factory for each ServiceKey
|
|
66
|
-
const flattened = entries.flatMap((e) => e instanceof ServiceModule ? e.factories : [e]);
|
|
67
|
-
const byKey = new Map();
|
|
68
|
-
// Later factories overwrite earlier ones (last-wins)
|
|
69
|
-
for (const f of flattened) {
|
|
70
|
-
byKey.set(f.provides.symbol, f);
|
|
71
|
-
}
|
|
72
|
-
return new ServiceModule(Array.from(byKey.values()));
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
exports.ServiceModule = ServiceModule;
|
|
76
|
-
function checkRecursiveDependencies(factory) {
|
|
77
|
-
const recursive = factory.dependsOn.some((dependencyKey) => {
|
|
78
|
-
return dependencyKey === factory.provides;
|
|
79
|
-
});
|
|
80
|
-
if (recursive) {
|
|
81
|
-
throw new Error('Recursive dependency detected on: ' + factory.provides.name);
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
function checkMissingDependencies(factory, factories) {
|
|
85
|
-
const missingDependencies = factory.dependsOn.filter((dependencyKey) => {
|
|
86
|
-
return !isRegistered(dependencyKey, factories);
|
|
87
|
-
});
|
|
88
|
-
if (missingDependencies.length === 0) {
|
|
89
|
-
return;
|
|
90
|
-
}
|
|
91
|
-
const dependencyList = missingDependencies
|
|
92
|
-
.map((dependencyKey) => ` -> ${dependencyKey.name}`)
|
|
93
|
-
.join('\n');
|
|
94
|
-
throw new Error(`${factory.provides.name} will fail because it depends on:\n ${dependencyList}`);
|
|
95
|
-
}
|
|
96
|
-
function isRegistered(key, factories) {
|
|
97
|
-
return factories.some((factory) => { var _a; return ((_a = factory.provides) === null || _a === void 0 ? void 0 : _a.symbol) === (key === null || key === void 0 ? void 0 : key.symbol); });
|
|
98
|
-
}
|
|
99
|
-
function isSuitable(key, factory) {
|
|
100
|
-
var _a;
|
|
101
|
-
return ((_a = factory === null || factory === void 0 ? void 0 : factory.provides) === null || _a === void 0 ? void 0 : _a.symbol) === (key === null || key === void 0 ? void 0 : key.symbol);
|
|
102
|
-
}
|
|
103
|
-
//# sourceMappingURL=
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.ServiceModule = void 0;
|
|
13
|
+
class ServiceModule {
|
|
14
|
+
constructor(factories) {
|
|
15
|
+
this.factories = factories;
|
|
16
|
+
factories.forEach((factory) => {
|
|
17
|
+
checkRecursiveDependencies(factory);
|
|
18
|
+
checkMissingDependencies(factory, this.factories);
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
get(key) {
|
|
22
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
+
const factory = this.factories.find((factory) => {
|
|
24
|
+
return isSuitable(key, factory);
|
|
25
|
+
});
|
|
26
|
+
// Check if a factory to supply the requested key was not found
|
|
27
|
+
if (!factory) {
|
|
28
|
+
throw new Error(`Could not find a suitable factory for ${key.name}`);
|
|
29
|
+
}
|
|
30
|
+
// Resolve all dependencies first
|
|
31
|
+
const dependencies = yield Promise.all(factory.dependsOn.map((dependencyKey) => {
|
|
32
|
+
return this.get(dependencyKey);
|
|
33
|
+
}));
|
|
34
|
+
// Call the factory to retrieve the dependency
|
|
35
|
+
return factory.initialize(...dependencies);
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Disposes of service factories within the specified scope or all factories if no scope is provided.
|
|
40
|
+
*
|
|
41
|
+
* This method is useful for cleaning up resources and instances held by service factories,
|
|
42
|
+
* such as singleton factories, as they may hold database connections or other resources that need to be released.
|
|
43
|
+
*
|
|
44
|
+
* @param {ServiceScope} [scope] The scope to filter the factories to be disposed.
|
|
45
|
+
* If not provided, all factories are disposed of.
|
|
46
|
+
* @return {void} No return value.
|
|
47
|
+
*/
|
|
48
|
+
dispose(scope) {
|
|
49
|
+
const factories = scope
|
|
50
|
+
? this.factories.filter((f) => f.scope === scope)
|
|
51
|
+
: this.factories;
|
|
52
|
+
factories.forEach((factory) => { var _a; return (_a = factory.dispose) === null || _a === void 0 ? void 0 : _a.call(factory); });
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Creates a new ServiceModule instance by aggregating and deduplicating a list of
|
|
56
|
+
* ServiceModule or GenericFactory instances.
|
|
57
|
+
* If multiple factories provide the same
|
|
58
|
+
* ServiceKey, the last one in the list takes precedence.
|
|
59
|
+
*
|
|
60
|
+
* @param {Array<ServiceModule | GenericFactory>} entries - An array of ServiceModule or GenericFactory
|
|
61
|
+
* instances to be processed into a single ServiceModule.
|
|
62
|
+
* @return {ServiceModule} A new ServiceModule containing the deduplicated factories.
|
|
63
|
+
*/
|
|
64
|
+
static from(entries) {
|
|
65
|
+
// Flatten entries and keep only the last factory for each ServiceKey
|
|
66
|
+
const flattened = entries.flatMap((e) => e instanceof ServiceModule ? e.factories : [e]);
|
|
67
|
+
const byKey = new Map();
|
|
68
|
+
// Later factories overwrite earlier ones (last-wins)
|
|
69
|
+
for (const f of flattened) {
|
|
70
|
+
byKey.set(f.provides.symbol, f);
|
|
71
|
+
}
|
|
72
|
+
return new ServiceModule(Array.from(byKey.values()));
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
exports.ServiceModule = ServiceModule;
|
|
76
|
+
function checkRecursiveDependencies(factory) {
|
|
77
|
+
const recursive = factory.dependsOn.some((dependencyKey) => {
|
|
78
|
+
return dependencyKey === factory.provides;
|
|
79
|
+
});
|
|
80
|
+
if (recursive) {
|
|
81
|
+
throw new Error('Recursive dependency detected on: ' + factory.provides.name);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
function checkMissingDependencies(factory, factories) {
|
|
85
|
+
const missingDependencies = factory.dependsOn.filter((dependencyKey) => {
|
|
86
|
+
return !isRegistered(dependencyKey, factories);
|
|
87
|
+
});
|
|
88
|
+
if (missingDependencies.length === 0) {
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
const dependencyList = missingDependencies
|
|
92
|
+
.map((dependencyKey) => ` -> ${dependencyKey.name}`)
|
|
93
|
+
.join('\n');
|
|
94
|
+
throw new Error(`${factory.provides.name} will fail because it depends on:\n ${dependencyList}`);
|
|
95
|
+
}
|
|
96
|
+
function isRegistered(key, factories) {
|
|
97
|
+
return factories.some((factory) => { var _a; return ((_a = factory.provides) === null || _a === void 0 ? void 0 : _a.symbol) === (key === null || key === void 0 ? void 0 : key.symbol); });
|
|
98
|
+
}
|
|
99
|
+
function isSuitable(key, factory) {
|
|
100
|
+
var _a;
|
|
101
|
+
return ((_a = factory === null || factory === void 0 ? void 0 : factory.provides) === null || _a === void 0 ? void 0 : _a.symbol) === (key === null || key === void 0 ? void 0 : key.symbol);
|
|
102
|
+
}
|
|
103
|
+
//# sourceMappingURL=serviceModule.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"
|
|
1
|
+
{"version":3,"file":"serviceModule.js","sourceRoot":"","sources":["../src/serviceModule.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export declare class ServiceScope {
|
|
2
|
-
readonly name: string;
|
|
3
|
-
readonly symbol: symbol;
|
|
4
|
-
constructor(name: string);
|
|
5
|
-
}
|
|
6
|
-
//# sourceMappingURL=
|
|
1
|
+
export declare class ServiceScope {
|
|
2
|
+
readonly name: string;
|
|
3
|
+
readonly symbol: symbol;
|
|
4
|
+
constructor(name: string);
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=serviceScope.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serviceScope.d.ts","sourceRoot":"","sources":["../src/serviceScope.ts"],"names":[],"mappings":"AAAA,qBAAa,YAAY;IAGX,QAAQ,CAAC,IAAI,EAAE,MAAM;IAFjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;gBAEH,IAAI,EAAE,MAAM;CAGlC"}
|