@spinajs/di 2.0.45 → 2.0.48

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.
Files changed (52) hide show
  1. package/lib/array.d.ts +2 -1
  2. package/lib/array.d.ts.map +1 -0
  3. package/lib/array.js +1 -5
  4. package/lib/array.js.map +1 -1
  5. package/lib/binder.d.ts +3 -2
  6. package/lib/binder.d.ts.map +1 -0
  7. package/lib/binder.js +11 -16
  8. package/lib/binder.js.map +1 -1
  9. package/lib/container-cache.d.ts +4 -3
  10. package/lib/container-cache.d.ts.map +1 -0
  11. package/lib/container-cache.js +6 -10
  12. package/lib/container-cache.js.map +1 -1
  13. package/lib/container.d.ts +7 -6
  14. package/lib/container.d.ts.map +1 -0
  15. package/lib/container.js +61 -67
  16. package/lib/container.js.map +1 -1
  17. package/lib/decorators.d.ts +5 -4
  18. package/lib/decorators.d.ts.map +1 -0
  19. package/lib/decorators.js +34 -66
  20. package/lib/decorators.js.map +1 -1
  21. package/lib/enums.d.ts +1 -0
  22. package/lib/enums.d.ts.map +1 -0
  23. package/lib/enums.js +2 -5
  24. package/lib/enums.js.map +1 -1
  25. package/lib/exceptions.d.ts +1 -0
  26. package/lib/exceptions.d.ts.map +1 -0
  27. package/lib/exceptions.js +3 -9
  28. package/lib/exceptions.js.map +1 -1
  29. package/lib/helpers.d.ts +4 -3
  30. package/lib/helpers.d.ts.map +1 -0
  31. package/lib/helpers.js +13 -26
  32. package/lib/helpers.js.map +1 -1
  33. package/lib/index.d.ts +13 -12
  34. package/lib/index.d.ts.map +1 -0
  35. package/lib/index.js +12 -41
  36. package/lib/index.js.map +1 -1
  37. package/lib/interfaces.d.ts +7 -6
  38. package/lib/interfaces.d.ts.map +1 -0
  39. package/lib/interfaces.js +4 -11
  40. package/lib/interfaces.js.map +1 -1
  41. package/lib/registry.d.ts +4 -3
  42. package/lib/registry.d.ts.map +1 -0
  43. package/lib/registry.js +15 -19
  44. package/lib/registry.js.map +1 -1
  45. package/lib/root.d.ts +5 -3
  46. package/lib/root.d.ts.map +1 -0
  47. package/lib/root.js +62 -90
  48. package/lib/root.js.map +1 -1
  49. package/lib/types.d.ts +7 -6
  50. package/lib/types.d.ts.map +1 -0
  51. package/lib/types.js +1 -2
  52. package/package.json +54 -50
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":";;;AA+IA;;;;;;;GAOG;AACH,+BAA+B;AAC/B,6DAA6D;AAC7D,IAAI;AAEJ,oCAAoC;AACpC,uEAAuE;AACvE,IAAI;AAEJ,MAAa,OAAO;IAApB;QACY,aAAQ,GAAG,KAAK,CAAC;IAU7B,CAAC;IATC,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,OAAO,KAAI,CAAC;CAC1B;AAXD,0BAWC;AAED,MAAsB,WAAY,SAAQ,OAAO;IACxC,OAAO;QACZ,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;CACF;AAJD,kCAIC;AAED,MAAa,YAAa,SAAQ,OAAO;IACvC,oBAAoB;IACb,KAAK,CAAC,OAAO;QAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;CACF;AALD,oCAKC;AAED,MAAsB,YAAY;CAEjC;AAFD,oCAEC"}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":"AA+IA;;;;;;;GAOG;AACH,+BAA+B;AAC/B,6DAA6D;AAC7D,IAAI;AAEJ,oCAAoC;AACpC,uEAAuE;AACvE,IAAI;AAEJ,MAAM,OAAO,OAAO;IAApB;QACY,aAAQ,GAAG,KAAK,CAAC;IAU7B,CAAC;IATC,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,OAAO,KAAI,CAAC;CAC1B;AAED,MAAM,OAAgB,WAAY,SAAQ,OAAO;IACxC,OAAO;QACZ,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,OAAO;IACvC,oBAAoB;IACb,KAAK,CAAC,OAAO;QAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;IACvB,CAAC;CACF;AAED,MAAM,OAAgB,YAAY;CAEjC"}
package/lib/registry.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- import { TypedArray } from './array';
2
- import { IContainer } from './interfaces';
3
- import { Class, Factory } from './types';
1
+ import { TypedArray } from './array.js';
2
+ import { IContainer } from './interfaces.js';
3
+ import { Class, Factory } from './types.js';
4
4
  export declare class Registry {
5
5
  protected container: IContainer;
6
6
  protected registry: Map<string, any[]>;
@@ -12,3 +12,4 @@ export declare class Registry {
12
12
  getTypes<T>(service: string | Class<T> | TypedArray<T>, parent?: boolean): Array<Class<unknown> | Factory<unknown>>;
13
13
  hasRegistered<T>(service: TypedArray<T> | Class<T> | string, parent?: boolean): boolean;
14
14
  }
15
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5C,qBAAa,QAAQ;IAGP,SAAS,CAAC,SAAS,EAAE,UAAU;IAF3C,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAA4B;gBAE5C,SAAS,EAAE,UAAU;IAEpC,KAAK;IAIL,UAAU,CAAC,IAAI,EAAE,GAAG;IAWpB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG;IAqB/D,iBAAiB,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO;IAWvI,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,UAAO,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAkBhH,aAAa,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,MAAM,UAAO,GAAG,OAAO;CAS5F"}
package/lib/registry.js CHANGED
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Registry = void 0;
4
- const exceptions_1 = require("@spinajs/exceptions");
5
- const helpers_1 = require("./helpers");
6
- class Registry {
1
+ import { InvalidArgument, InvalidOperation } from '@spinajs/exceptions';
2
+ import { getTypeName, isConstructor, isFactory, isObject } from './helpers.js';
3
+ export class Registry {
7
4
  constructor(container) {
8
5
  this.container = container;
9
6
  this.registry = new Map();
@@ -12,29 +9,29 @@ class Registry {
12
9
  this.registry.clear();
13
10
  }
14
11
  unregister(type) {
15
- const tname = (0, helpers_1.getTypeName)(type);
12
+ const tname = getTypeName(type);
16
13
  this.registry.forEach((value) => {
17
- const index = value.findIndex((x) => (0, helpers_1.getTypeName)(x) === tname);
14
+ const index = value.findIndex((x) => getTypeName(x) === tname);
18
15
  if (index !== -1) {
19
16
  value.splice(index, 1);
20
17
  }
21
18
  });
22
19
  }
23
20
  register(name, type) {
24
- if (!(0, helpers_1.isConstructor)(type) && !(0, helpers_1.isFactory)(type) && !(0, helpers_1.isObject)(type)) {
25
- throw new exceptions_1.InvalidOperation('cannot register type if its not an class or factory function');
21
+ if (!isConstructor(type) && !isFactory(type) && !isObject(type)) {
22
+ throw new InvalidOperation('cannot register type if its not an class or factory function');
26
23
  }
27
24
  else {
28
- const tname = (0, helpers_1.getTypeName)(name);
25
+ const tname = getTypeName(name);
29
26
  const value = this.registry.get(tname);
30
27
  if (value) {
31
28
  // factory functions, we always add to registry
32
29
  // its impossible to check for duplicates
33
30
  // all would return 'Function' type
34
- if ((0, helpers_1.isFactory)(type)) {
31
+ if (isFactory(type)) {
35
32
  value.push(type);
36
33
  }
37
- else if (!value.find((v) => (0, helpers_1.getTypeName)(v) === (0, helpers_1.getTypeName)(type))) {
34
+ else if (!value.find((v) => getTypeName(v) === getTypeName(type))) {
38
35
  value.push(type);
39
36
  }
40
37
  }
@@ -44,8 +41,8 @@ class Registry {
44
41
  }
45
42
  }
46
43
  hasRegisteredType(source, type, parent) {
47
- const sourceName = (0, helpers_1.getTypeName)(source);
48
- const targetName = (0, helpers_1.getTypeName)(type);
44
+ const sourceName = getTypeName(source);
45
+ const targetName = getTypeName(type);
49
46
  if (this.registry.has(sourceName)) {
50
47
  return this.registry.get(sourceName).find((s) => s.name === targetName) !== undefined;
51
48
  }
@@ -56,9 +53,9 @@ class Registry {
56
53
  }
57
54
  getTypes(service, parent = true) {
58
55
  if (!service) {
59
- throw new exceptions_1.InvalidArgument('argument "service" cannot be null or empty');
56
+ throw new InvalidArgument('argument "service" cannot be null or empty');
60
57
  }
61
- const name = (0, helpers_1.getTypeName)(service);
58
+ const name = getTypeName(service);
62
59
  if (this.registry.has(name)) {
63
60
  return this.registry.get(name);
64
61
  }
@@ -68,7 +65,7 @@ class Registry {
68
65
  return null;
69
66
  }
70
67
  hasRegistered(service, parent = true) {
71
- if (this.registry.has((0, helpers_1.getTypeName)(service))) {
68
+ if (this.registry.has(getTypeName(service))) {
72
69
  return true;
73
70
  }
74
71
  else if (parent && this.container.Parent) {
@@ -77,5 +74,4 @@ class Registry {
77
74
  return false;
78
75
  }
79
76
  }
80
- exports.Registry = Registry;
81
77
  //# sourceMappingURL=registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
package/lib/root.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- import { IBind, IContainer, AsyncService, ResolvableObject } from './interfaces';
2
- import { Class, Factory } from './types';
3
- import { TypedArray } from './array';
1
+ import { IBind, IContainer, AsyncService, ResolvableObject } from './interfaces.js';
2
+ import { Class, Factory } from './types.js';
3
+ import { TypedArray } from './array.js';
4
4
  /**
5
5
  * App main DI container
6
6
  */
@@ -40,6 +40,7 @@ export declare function clearRegistry(): void;
40
40
  * Cleart ous root cache ( all resolved types )
41
41
  */
42
42
  export declare function clearCache(): void;
43
+ export declare function dispose(): Promise<void>;
43
44
  /**
44
45
  * Register class/interface to DI root container. If
45
46
  * @param type - interface object to register
@@ -103,3 +104,4 @@ export declare function checkType<T>(source: Class<any> | string | TypedArray<an
103
104
  *
104
105
  */
105
106
  export declare function child(): IContainer;
107
+ //# sourceMappingURL=root.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"root.d.ts","sourceRoot":"","sources":["../src/root.ts"],"names":[],"mappings":"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"}
package/lib/root.js CHANGED
@@ -1,155 +1,129 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.child = exports.checkType = exports.check = exports.has = exports.getRegisteredTypes = exports.get = exports.resolve = exports.uncache = exports.unregister = exports.register = exports.clearCache = exports.clearRegistry = exports.clear = exports.eventNames = exports.prependOnceListener = exports.prependListener = exports.listenerCount = exports.emit = exports.rawListeners = exports.listeners = exports.getMaxListeners = exports.setMaxListeners = exports.removeAllListeners = exports.off = exports.removeListener = exports.once = exports.addListener = exports.on = exports.RootContainer = void 0;
4
- const container_1 = require("./container");
1
+ import { Container } from './container.js';
5
2
  /**
6
3
  * App main DI container
7
4
  */
8
- exports.RootContainer = new container_1.Container();
5
+ export const RootContainer = new Container();
9
6
  /***
10
7
  * EVENT LISTENER STUFF
11
8
  *
12
9
  * Allows to use event listener stuff on root container
13
10
  */
14
- function on(event, listener) {
15
- return exports.RootContainer.on(event, listener);
11
+ export function on(event, listener) {
12
+ return RootContainer.on(event, listener);
16
13
  }
17
- exports.on = on;
18
- function addListener(event, listener) {
19
- return exports.RootContainer.addListener(event, listener);
14
+ export function addListener(event, listener) {
15
+ return RootContainer.addListener(event, listener);
20
16
  }
21
- exports.addListener = addListener;
22
- function once(event, listener) {
23
- return exports.RootContainer.once(event, listener);
17
+ export function once(event, listener) {
18
+ return RootContainer.once(event, listener);
24
19
  }
25
- exports.once = once;
26
- function removeListener(event, listener) {
27
- return exports.RootContainer.removeListener(event, listener);
20
+ export function removeListener(event, listener) {
21
+ return RootContainer.removeListener(event, listener);
28
22
  }
29
- exports.removeListener = removeListener;
30
- function off(event, listener) {
31
- return exports.RootContainer.off(event, listener);
23
+ export function off(event, listener) {
24
+ return RootContainer.off(event, listener);
32
25
  }
33
- exports.off = off;
34
- function removeAllListeners(event) {
35
- return exports.RootContainer.removeAllListeners(event);
26
+ export function removeAllListeners(event) {
27
+ return RootContainer.removeAllListeners(event);
36
28
  }
37
- exports.removeAllListeners = removeAllListeners;
38
- function setMaxListeners(n) {
39
- return exports.RootContainer.setMaxListeners(n);
29
+ export function setMaxListeners(n) {
30
+ return RootContainer.setMaxListeners(n);
40
31
  }
41
- exports.setMaxListeners = setMaxListeners;
42
- function getMaxListeners() {
43
- return exports.RootContainer.getMaxListeners();
32
+ export function getMaxListeners() {
33
+ return RootContainer.getMaxListeners();
44
34
  }
45
- exports.getMaxListeners = getMaxListeners;
46
- function listeners(event) {
47
- return exports.RootContainer.listeners(event);
35
+ export function listeners(event) {
36
+ return RootContainer.listeners(event);
48
37
  }
49
- exports.listeners = listeners;
50
- function rawListeners(event) {
51
- return exports.RootContainer.rawListeners(event);
38
+ export function rawListeners(event) {
39
+ return RootContainer.rawListeners(event);
52
40
  }
53
- exports.rawListeners = rawListeners;
54
- function emit(event, ...args) {
55
- return exports.RootContainer.emit(event, ...args);
41
+ export function emit(event, ...args) {
42
+ return RootContainer.emit(event, ...args);
56
43
  }
57
- exports.emit = emit;
58
- function listenerCount(type) {
59
- return exports.RootContainer.listenerCount(type);
44
+ export function listenerCount(type) {
45
+ return RootContainer.listenerCount(type);
60
46
  }
61
- exports.listenerCount = listenerCount;
62
- function prependListener(event, listener) {
63
- return exports.RootContainer.prependListener(event, listener);
47
+ export function prependListener(event, listener) {
48
+ return RootContainer.prependListener(event, listener);
64
49
  }
65
- exports.prependListener = prependListener;
66
- function prependOnceListener(event, listener) {
67
- return exports.RootContainer.prependOnceListener(event, listener);
50
+ export function prependOnceListener(event, listener) {
51
+ return RootContainer.prependOnceListener(event, listener);
68
52
  }
69
- exports.prependOnceListener = prependOnceListener;
70
- function eventNames() {
71
- return exports.RootContainer.eventNames();
53
+ export function eventNames() {
54
+ return RootContainer.eventNames();
72
55
  }
73
- exports.eventNames = eventNames;
74
56
  /**
75
57
  * ===========================================================================
76
58
  */
77
59
  /**
78
60
  * Clears root container registry and cache.
79
61
  */
80
- function clear() {
81
- exports.RootContainer.clearCache();
82
- exports.RootContainer.clearRegistry();
62
+ export function clear() {
63
+ RootContainer.clearCache();
64
+ RootContainer.clearRegistry();
83
65
  }
84
- exports.clear = clear;
85
66
  /**
86
67
  * Clears out root registry ( registered types in root container )
87
68
  */
88
- function clearRegistry() {
89
- exports.RootContainer.clearRegistry();
69
+ export function clearRegistry() {
70
+ RootContainer.clearRegistry();
90
71
  }
91
- exports.clearRegistry = clearRegistry;
92
72
  /**
93
73
  * Cleart ous root cache ( all resolved types )
94
74
  */
95
- function clearCache() {
96
- exports.RootContainer.clearCache();
75
+ export function clearCache() {
76
+ RootContainer.clearCache();
77
+ }
78
+ export async function dispose() {
79
+ await RootContainer.dispose();
97
80
  }
98
- exports.clearCache = clearCache;
99
81
  /**
100
82
  * Register class/interface to DI root container. If
101
83
  * @param type - interface object to register
102
84
  * @throws {@link InvalidArgument} if type is null or undefined
103
85
  */
104
- function register(type) {
105
- return exports.RootContainer.register(type);
86
+ export function register(type) {
87
+ return RootContainer.register(type);
106
88
  }
107
- exports.register = register;
108
- function unregister(type) {
109
- exports.RootContainer.unregister(type);
89
+ export function unregister(type) {
90
+ RootContainer.unregister(type);
110
91
  }
111
- exports.unregister = unregister;
112
- function uncache(type, parent) {
113
- exports.RootContainer.uncache(type, parent);
92
+ export function uncache(type, parent) {
93
+ RootContainer.uncache(type, parent);
114
94
  }
115
- exports.uncache = uncache;
116
- function resolve(type, options, check) {
117
- return exports.RootContainer.resolve(type, options, check);
95
+ export function resolve(type, options, check) {
96
+ return RootContainer.resolve(type, options, check);
118
97
  }
119
- exports.resolve = resolve;
120
- function get(serviceName) {
121
- return exports.RootContainer.get(serviceName);
98
+ export function get(serviceName) {
99
+ return RootContainer.get(serviceName);
122
100
  }
123
- exports.get = get;
124
101
  /**
125
102
  *
126
103
  * Returns list of types registered at given type, eg. all types/services registered under BaseService
127
104
  *
128
105
  * @param type - base type to check
129
106
  */
130
- function getRegisteredTypes(type) {
131
- return exports.RootContainer.getRegisteredTypes(type);
107
+ export function getRegisteredTypes(type) {
108
+ return RootContainer.getRegisteredTypes(type);
132
109
  }
133
- exports.getRegisteredTypes = getRegisteredTypes;
134
110
  /**
135
111
  * Checks if service is already resolved and exists in container cache.
136
112
  * NOTE: check is only valid for classes that are singletons.
137
113
  *
138
114
  * @param service - service name or class to check
139
115
  */
140
- function has(service) {
141
- return exports.RootContainer.isResolved(service);
116
+ export function has(service) {
117
+ return RootContainer.isResolved(service);
142
118
  }
143
- exports.has = has;
144
119
  /**
145
120
  * Checks if service is registered in container.
146
121
  *
147
122
  * @param service - service class object to check
148
123
  */
149
- function check(service) {
150
- return exports.RootContainer.hasRegistered(service);
124
+ export function check(service) {
125
+ return RootContainer.hasRegistered(service);
151
126
  }
152
- exports.check = check;
153
127
  /**
154
128
  * Checks if specific service is registered in container.
155
129
  * Eg. we can have multiple drivers registered for queue connections with different protocol implementations
@@ -158,16 +132,14 @@ exports.check = check;
158
132
  * @param source - source class to check ( eg. base class )
159
133
  * @param type - specific type to check eg. base class implementation
160
134
  */
161
- function checkType(source, type) {
162
- return exports.RootContainer.hasRegisteredType(source, type);
135
+ export function checkType(source, type) {
136
+ return RootContainer.hasRegisteredType(source, type);
163
137
  }
164
- exports.checkType = checkType;
165
138
  /**
166
139
  * Creates child DI container.
167
140
  *
168
141
  */
169
- function child() {
170
- return exports.RootContainer.child();
142
+ export function child() {
143
+ return RootContainer.child();
171
144
  }
172
- exports.child = child;
173
145
  //# sourceMappingURL=root.js.map
package/lib/root.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"root.js","sourceRoot":"","sources":["../src/root.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"root.js","sourceRoot":"","sources":["../src/root.ts"],"names":[],"mappings":"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"}
package/lib/types.d.ts CHANGED
@@ -1,13 +1,14 @@
1
- import { IContainer } from './interfaces';
2
- export declare type Abstract<T> = Function & {
1
+ import { IContainer } from './interfaces.js';
2
+ export type Abstract<T> = Function & {
3
3
  prototype: T;
4
4
  };
5
- export declare type Constructor<T> = new (...args: any[]) => T;
6
- export declare type Class<T> = Abstract<T> | Constructor<T>;
5
+ export type Constructor<T> = new (...args: any[]) => T;
6
+ export type Class<T> = Abstract<T> | Constructor<T>;
7
7
  /**
8
8
  * Factory functions should not be normal functions,
9
9
  * but arrow functions. Its is by js limitation
10
10
  * to detect if object is constructable
11
11
  */
12
- export declare type Factory<T> = (container: IContainer, ...args: any[]) => T;
13
- export declare type ClassArray<T> = Class<T>[];
12
+ export type Factory<T> = (container: IContainer, ...args: any[]) => T;
13
+ export type ClassArray<T> = Class<T>[];
14
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAG7C,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,QAAQ,GAAG;IAAE,SAAS,EAAE,CAAC,CAAA;CAAE,CAAC;AACtD,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AACvD,MAAM,MAAM,KAAK,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;AAEpD;;;;GAIG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AACtE,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC"}
package/lib/types.js CHANGED
@@ -1,3 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ export {};
3
2
  //# sourceMappingURL=types.js.map
package/package.json CHANGED
@@ -1,50 +1,54 @@
1
- {
2
- "name": "@spinajs/di",
3
- "version": "2.0.45",
4
- "description": "lightweight di container ",
5
- "main": "lib/index.js",
6
- "scripts": {
7
- "build": "npm run clean && npm run compile",
8
- "compile": "tsc -p tsconfig.build.json",
9
- "clean": "",
10
- "test": "ts-mocha -p tsconfig.json test/**/*.test.ts",
11
- "coverage": "nyc npm run test",
12
- "build-docs": "rimraf docs && typedoc --options typedoc.json src/",
13
- "prepare": "npm run build",
14
- "format": "prettier --write \"src/**/*.ts\"",
15
- "lint": "eslint -c .eslintrc.js --ext .ts src --fix",
16
- "prepublishOnly": "npm test && npm run lint",
17
- "preversion": "npm run lint",
18
- "version": "npm run format && git add -A src",
19
- "postversion": "git push && git push --tags"
20
- },
21
- "files": [
22
- "lib/**/*",
23
- "typings/**/*"
24
- ],
25
- "repository": {
26
- "type": "git",
27
- "url": "git+https://github.com/spinajs/di.git"
28
- },
29
- "keywords": [
30
- "di",
31
- "container",
32
- "spinajs",
33
- "di"
34
- ],
35
- "author": "SpinaJS <spinajs@coderush.pl> (https://github.com/spinajs/core)",
36
- "license": "MIT",
37
- "bugs": {
38
- "url": "https://github.com/spinajs/di/issues"
39
- },
40
- "homepage": "https://github.com/spinajs/di#readme",
41
- "dependencies": {
42
- "@spinajs/exceptions": "^2.0.39",
43
- "lodash": "^4.17.21",
44
- "reflect-metadata": "^0.1.13"
45
- },
46
- "devDependencies": {
47
- "@types/lodash": "^4.14.136"
48
- },
49
- "gitHead": "3aa423c570eae952dc79fe6a4704c3d2ccc178be"
50
- }
1
+ {
2
+ "name": "@spinajs/di",
3
+ "version": "2.0.48",
4
+ "description": "lightweight di container ",
5
+ "exports": "./lib/index.js",
6
+ "type": "module",
7
+ "private": false,
8
+ "engines": {
9
+ "node": ">=16.11"
10
+ },
11
+ "scripts": {
12
+ "build": "npm run clean && npm run compile",
13
+ "compile": "tsc -b tsconfig.json",
14
+ "rimraf": "./node_modules/rimraf/bin.js",
15
+ "clean": "rimraf lib/ && rimraf tsconfig.tsbuildinfo",
16
+ "test": "ts-mocha -p tsconfig.json test/**/*.test.ts",
17
+ "coverage": "nyc npm run test",
18
+ "build-docs": "rimraf docs && typedoc --options typedoc.json src/",
19
+ "format": "prettier --write \"src/**/*.ts\"",
20
+ "lint": "eslint -c .eslintrc.cjs --ext .ts src --fix",
21
+ "preversion": "npm run lint",
22
+ "version": "npm run format && git add -A src",
23
+ "postinstall": "npm run build"
24
+ },
25
+ "files": [
26
+ "lib/**/*",
27
+ "typings/**/*"
28
+ ],
29
+ "repository": {
30
+ "type": "git",
31
+ "url": "git+https://github.com/spinajs/di.git"
32
+ },
33
+ "keywords": [
34
+ "di",
35
+ "container",
36
+ "spinajs",
37
+ "di"
38
+ ],
39
+ "author": "SpinaJS <spinajs@coderush.pl> (https://github.com/spinajs/core)",
40
+ "license": "MIT",
41
+ "bugs": {
42
+ "url": "https://github.com/spinajs/di/issues"
43
+ },
44
+ "homepage": "https://github.com/spinajs/di#readme",
45
+ "dependencies": {
46
+ "@spinajs/exceptions": "^2.0.39",
47
+ "lodash": "^4.17.21",
48
+ "reflect-metadata": "^0.1.13"
49
+ },
50
+ "devDependencies": {
51
+ "@types/lodash": "^4.14.191"
52
+ },
53
+ "gitHead": "002dc553b0ffffd72193d0121ac425a4083bc9ee"
54
+ }