assemblerjs 1.1.20 → 1.1.22

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 (72) hide show
  1. package/dist/index.d.ts +4 -0
  2. package/dist/index11.js +2 -2
  3. package/dist/index11.mjs +2 -2
  4. package/dist/index13.js +2 -2
  5. package/dist/index13.mjs +2 -2
  6. package/dist/index16.js +1 -1
  7. package/dist/index16.mjs +1 -1
  8. package/dist/index17.js +1 -1
  9. package/dist/index17.mjs +1 -1
  10. package/dist/index18.js +1 -1
  11. package/dist/index18.mjs +1 -1
  12. package/dist/index19.js +1 -1
  13. package/dist/index19.mjs +1 -1
  14. package/dist/index2.js +2 -2
  15. package/dist/index2.mjs +2 -2
  16. package/dist/index20.js +1 -1
  17. package/dist/index20.mjs +1 -1
  18. package/dist/index21.js +1 -1
  19. package/dist/index21.mjs +1 -1
  20. package/dist/index22.js +12 -6
  21. package/dist/index22.mjs +12 -6
  22. package/dist/index23.js +14 -8
  23. package/dist/index23.mjs +14 -8
  24. package/dist/index24.js +2 -2
  25. package/dist/index24.mjs +2 -2
  26. package/dist/index25.js +1 -1
  27. package/dist/index25.mjs +1 -1
  28. package/dist/index26.js +1 -1
  29. package/dist/index26.mjs +1 -1
  30. package/dist/index29.js +158 -17
  31. package/dist/index29.mjs +157 -14
  32. package/dist/index3.js +1 -1
  33. package/dist/index3.mjs +1 -1
  34. package/dist/index30.js +43 -100
  35. package/dist/index30.mjs +43 -98
  36. package/dist/index31.js +66 -145
  37. package/dist/index31.mjs +67 -145
  38. package/dist/index32.js +50 -45
  39. package/dist/index32.mjs +50 -45
  40. package/dist/index33.js +28 -76
  41. package/dist/index33.mjs +28 -76
  42. package/dist/index34.js +170 -50
  43. package/dist/index34.mjs +170 -50
  44. package/dist/index35.js +60 -28
  45. package/dist/index35.mjs +60 -28
  46. package/dist/index36.js +16 -165
  47. package/dist/index36.mjs +13 -165
  48. package/dist/index37.js +100 -56
  49. package/dist/index37.mjs +98 -56
  50. package/dist/index38.js +20 -38
  51. package/dist/index38.mjs +20 -37
  52. package/dist/index39.js +35 -100
  53. package/dist/index39.mjs +34 -100
  54. package/dist/index4.js +7 -7
  55. package/dist/index4.mjs +7 -7
  56. package/dist/index40.js +101 -24
  57. package/dist/index40.mjs +101 -24
  58. package/dist/index41.js +24 -18
  59. package/dist/index41.mjs +24 -18
  60. package/dist/index42.js +29 -49
  61. package/dist/index42.mjs +28 -49
  62. package/dist/index44.js +49 -29
  63. package/dist/index44.mjs +49 -28
  64. package/dist/index45.js +36 -13
  65. package/dist/index45.mjs +36 -13
  66. package/dist/index49.js +1 -1
  67. package/dist/index49.mjs +1 -1
  68. package/dist/index50.js +2 -2
  69. package/dist/index50.mjs +2 -2
  70. package/dist/index51.js +1 -1
  71. package/dist/index51.mjs +1 -1
  72. package/package.json +1 -1
package/dist/index39.mjs CHANGED
@@ -1,107 +1,41 @@
1
- import { TransversalManager } from './index13.mjs';
2
- import { getAffectedMethods } from './index12.mjs';
1
+ import { EventManager } from './index6.mjs';
3
2
 
4
- class TransversalWeaver {
5
- static weave(n, r, o) {
6
- const c = TransversalManager.getInstance(o);
7
- const s = c.getAspectsForTarget(r);
8
- const a = Object.getPrototypeOf(n);
9
- const f = Object.getOwnPropertyNames(a).some((t)=>{
10
- if (t === 'constructor') return false;
11
- const n = Object.getOwnPropertyDescriptor(a, t);
12
- if (!n) return false;
13
- const r = n.value && typeof n.value === 'function';
14
- const o = n.get && typeof n.get === 'function';
15
- if (!r && !o) return false;
16
- const c = getAffectedMethods(a, t);
17
- return c.length > 0;
18
- });
19
- if (s.length === 0 && !f) {
20
- return n;
3
+ const registerEvents = (t, n)=>{
4
+ const o = t.concrete !== undefined && t.concrete.prototype instanceof EventManager;
5
+ if (o) {
6
+ const e = n;
7
+ const o = e.channels;
8
+ for (const n of t.events){
9
+ if (!o.has(n)) e.addChannels(n);
10
+ if (!t.privateContext.events.has(n)) t.privateContext.addChannels(n);
21
11
  }
22
- return new Proxy(n, {
23
- get (t, e, n) {
24
- const r = Reflect.get(t, e, n);
25
- if (typeof r !== 'function') {
26
- return r;
27
- }
28
- return function(...n) {
29
- const o = String(e);
30
- const a = {
31
- target: t,
32
- methodName: o,
33
- args: n
34
- };
35
- const f = c.getAdvicesForJoinPoint(a, s, t, e);
36
- return TransversalWeaver.executeAdviceChain(f, r, t, n, a);
37
- };
38
- }
39
- });
40
- }
41
- static executeAdviceChain(t, e, n, r, o) {
42
- const c = t.filter((t)=>t.type === 'before');
43
- const s = t.filter((t)=>t.type === 'around');
44
- const a = t.filter((t)=>t.type === 'after');
45
- try {
46
- for (const t of c){
47
- const e = {
48
- ...o,
49
- config: t.config
50
- };
51
- t.method.call(t.transversalInstance, e);
52
- }
53
- let t;
54
- if (s.length > 0) {
55
- t = this.buildAroundChain(s, e, n, r, o);
56
- } else {
57
- t = e.apply(n, r);
58
- }
59
- if (t instanceof Promise) {
60
- return t.then((t)=>{
61
- for (const e of a){
62
- const n = {
63
- ...o,
64
- result: t
65
- };
66
- e.method.call(e.transversalInstance, n);
67
- }
68
- return t;
69
- }).catch((t)=>{
70
- o.error = t;
71
- throw t;
72
- });
73
- }
74
- for (const e of a){
75
- const n = {
76
- ...o,
77
- result: t,
78
- config: e.config
79
- };
80
- e.method.call(e.transversalInstance, n);
81
- }
82
- return t;
83
- } catch (t) {
84
- o.error = t;
85
- throw t;
12
+ for (const e of t.events){
13
+ n.on(e, (...n)=>{
14
+ t.privateContext.emit(e, ...n);
15
+ });
16
+ }
17
+ } else {
18
+ for (const e of t.events){
19
+ if (!t.privateContext.events.has(e)) t.privateContext.addChannels(e);
86
20
  }
87
21
  }
88
- static buildAroundChain(t, e, n, r, o) {
89
- let c = 0;
90
- const s = ()=>{
91
- if (c < t.length) {
92
- const e = t[c++];
93
- const n = {
94
- ...o,
95
- proceed: s,
96
- config: e.config
97
- };
98
- return e.method.call(e.transversalInstance, n);
99
- } else {
100
- return e.apply(n, r);
22
+ };
23
+ const unregisterEvents = (t, n)=>{
24
+ const o = t.concrete !== undefined && t.concrete.prototype instanceof EventManager;
25
+ if (o) {
26
+ const e = n;
27
+ for (const n of t.events){
28
+ e.off(n);
29
+ }
30
+ e.removeChannels(...t.events);
31
+ t.privateContext.removeChannels(...t.events);
32
+ } else {
33
+ for (const e of t.events){
34
+ if (t.privateContext.events.has(e)) {
35
+ t.privateContext.removeChannels(e);
101
36
  }
102
- };
103
- return s();
37
+ }
104
38
  }
105
- }
39
+ };
106
40
 
107
- export { TransversalWeaver };
41
+ export { registerEvents, unregisterEvents };
package/dist/index4.js CHANGED
@@ -3,13 +3,13 @@
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
5
  const core = require('@assemblerjs/core');
6
- const injectableManager = require('./index31.js');
7
- const objectManager = require('./index32.js');
8
- const hookManager = require('./index33.js');
9
- const assemblerBuilder = require('./index34.js');
10
- const contextProvider = require('./index35.js');
11
- const debugLogger = require('./index36.js');
12
- const cycleDetector = require('./index37.js');
6
+ const injectableManager = require('./index29.js');
7
+ const objectManager = require('./index30.js');
8
+ const hookManager = require('./index31.js');
9
+ const assemblerBuilder = require('./index32.js');
10
+ const contextProvider = require('./index33.js');
11
+ const debugLogger = require('./index34.js');
12
+ const cycleDetector = require('./index35.js');
13
13
  const eventManager = require('./index6.js');
14
14
 
15
15
  class Assembler extends eventManager.EventManager {
package/dist/index4.mjs CHANGED
@@ -1,11 +1,11 @@
1
1
  import { clearInstance } from '@assemblerjs/core';
2
- import { InjectableManager } from './index31.mjs';
3
- import { ObjectManager } from './index32.mjs';
4
- import { HookManager } from './index33.mjs';
5
- import { AssemblerBuilder } from './index34.mjs';
6
- import { ContextProvider } from './index35.mjs';
7
- import { DebugLogger } from './index36.mjs';
8
- import { CycleDetector } from './index37.mjs';
2
+ import { InjectableManager } from './index29.mjs';
3
+ import { ObjectManager } from './index30.mjs';
4
+ import { HookManager } from './index31.mjs';
5
+ import { AssemblerBuilder } from './index32.mjs';
6
+ import { ContextProvider } from './index33.mjs';
7
+ import { DebugLogger } from './index34.mjs';
8
+ import { CycleDetector } from './index35.mjs';
9
9
  import { EventManager } from './index6.mjs';
10
10
 
11
11
  class Assembler extends EventManager {
package/dist/index40.js CHANGED
@@ -2,33 +2,110 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
- class PointcutMatcher {
6
- static parse(t) {
7
- const e = t.match(/^execution\(([^.]+)\.([^)]+)\)$/);
8
- if (!e) {
9
- throw new Error(`Invalid pointcut expression: ${t}`);
5
+ const transversalManager = require('./index13.js');
6
+ const affect = require('./index12.js');
7
+
8
+ class TransversalWeaver {
9
+ static weave(n, r, o) {
10
+ const c = transversalManager.TransversalManager.getInstance(o);
11
+ const s = c.getAspectsForTarget(r);
12
+ const a = Object.getPrototypeOf(n);
13
+ const f = Object.getOwnPropertyNames(a).some((t)=>{
14
+ if (t === 'constructor') return false;
15
+ const n = Object.getOwnPropertyDescriptor(a, t);
16
+ if (!n) return false;
17
+ const r = n.value && typeof n.value === 'function';
18
+ const o = n.get && typeof n.get === 'function';
19
+ if (!r && !o) return false;
20
+ const c = affect.getAffectedMethods(a, t);
21
+ return c.length > 0;
22
+ });
23
+ if (s.length === 0 && !f) {
24
+ return n;
10
25
  }
11
- const [, c, r] = e;
12
- return new ExecutionPointcutMatcher(c, r);
13
- }
14
- }
15
- let ExecutionPointcutMatcher = class ExecutionPointcutMatcher {
16
- matches(t) {
17
- const e = t.target.constructor.name;
18
- const c = t.methodName;
19
- return this.classRegex.test(e) && this.methodRegex.test(c);
26
+ return new Proxy(n, {
27
+ get (t, e, n) {
28
+ const r = Reflect.get(t, e, n);
29
+ if (typeof r !== 'function') {
30
+ return r;
31
+ }
32
+ return function(...n) {
33
+ const o = String(e);
34
+ const a = {
35
+ target: t,
36
+ methodName: o,
37
+ args: n
38
+ };
39
+ const f = c.getAdvicesForJoinPoint(a, s, t, e);
40
+ return TransversalWeaver.executeAdviceChain(f, r, t, n, a);
41
+ };
42
+ }
43
+ });
20
44
  }
21
- patternToRegex(t) {
22
- if (t === '*') {
23
- return /.*/;
45
+ static executeAdviceChain(t, e, n, r, o) {
46
+ const c = t.filter((t)=>t.type === 'before');
47
+ const s = t.filter((t)=>t.type === 'around');
48
+ const a = t.filter((t)=>t.type === 'after');
49
+ try {
50
+ for (const t of c){
51
+ const e = {
52
+ ...o,
53
+ config: t.config
54
+ };
55
+ t.method.call(t.transversalInstance, e);
56
+ }
57
+ let t;
58
+ if (s.length > 0) {
59
+ t = this.buildAroundChain(s, e, n, r, o);
60
+ } else {
61
+ t = e.apply(n, r);
62
+ }
63
+ if (t instanceof Promise) {
64
+ return t.then((t)=>{
65
+ for (const e of a){
66
+ const n = {
67
+ ...o,
68
+ result: t
69
+ };
70
+ e.method.call(e.transversalInstance, n);
71
+ }
72
+ return t;
73
+ }).catch((t)=>{
74
+ o.error = t;
75
+ throw t;
76
+ });
77
+ }
78
+ for (const e of a){
79
+ const n = {
80
+ ...o,
81
+ result: t,
82
+ config: e.config
83
+ };
84
+ e.method.call(e.transversalInstance, n);
85
+ }
86
+ return t;
87
+ } catch (t) {
88
+ o.error = t;
89
+ throw t;
24
90
  }
25
- const e = t.replace(/[.+?^${}()|[\]\\]/g, '\\$&').replace(/\*/g, '.*');
26
- return new RegExp(`^${e}$`);
27
91
  }
28
- constructor(t, e){
29
- this.classRegex = this.patternToRegex(t);
30
- this.methodRegex = this.patternToRegex(e);
92
+ static buildAroundChain(t, e, n, r, o) {
93
+ let c = 0;
94
+ const s = ()=>{
95
+ if (c < t.length) {
96
+ const e = t[c++];
97
+ const n = {
98
+ ...o,
99
+ proceed: s,
100
+ config: e.config
101
+ };
102
+ return e.method.call(e.transversalInstance, n);
103
+ } else {
104
+ return e.apply(n, r);
105
+ }
106
+ };
107
+ return s();
31
108
  }
32
- };
109
+ }
33
110
 
34
- exports.PointcutMatcher = PointcutMatcher;
111
+ exports.TransversalWeaver = TransversalWeaver;
package/dist/index40.mjs CHANGED
@@ -1,30 +1,107 @@
1
- class PointcutMatcher {
2
- static parse(t) {
3
- const e = t.match(/^execution\(([^.]+)\.([^)]+)\)$/);
4
- if (!e) {
5
- throw new Error(`Invalid pointcut expression: ${t}`);
1
+ import { TransversalManager } from './index13.mjs';
2
+ import { getAffectedMethods } from './index12.mjs';
3
+
4
+ class TransversalWeaver {
5
+ static weave(n, r, o) {
6
+ const c = TransversalManager.getInstance(o);
7
+ const s = c.getAspectsForTarget(r);
8
+ const a = Object.getPrototypeOf(n);
9
+ const f = Object.getOwnPropertyNames(a).some((t)=>{
10
+ if (t === 'constructor') return false;
11
+ const n = Object.getOwnPropertyDescriptor(a, t);
12
+ if (!n) return false;
13
+ const r = n.value && typeof n.value === 'function';
14
+ const o = n.get && typeof n.get === 'function';
15
+ if (!r && !o) return false;
16
+ const c = getAffectedMethods(a, t);
17
+ return c.length > 0;
18
+ });
19
+ if (s.length === 0 && !f) {
20
+ return n;
6
21
  }
7
- const [, c, r] = e;
8
- return new ExecutionPointcutMatcher(c, r);
9
- }
10
- }
11
- let ExecutionPointcutMatcher = class ExecutionPointcutMatcher {
12
- matches(t) {
13
- const e = t.target.constructor.name;
14
- const c = t.methodName;
15
- return this.classRegex.test(e) && this.methodRegex.test(c);
22
+ return new Proxy(n, {
23
+ get (t, e, n) {
24
+ const r = Reflect.get(t, e, n);
25
+ if (typeof r !== 'function') {
26
+ return r;
27
+ }
28
+ return function(...n) {
29
+ const o = String(e);
30
+ const a = {
31
+ target: t,
32
+ methodName: o,
33
+ args: n
34
+ };
35
+ const f = c.getAdvicesForJoinPoint(a, s, t, e);
36
+ return TransversalWeaver.executeAdviceChain(f, r, t, n, a);
37
+ };
38
+ }
39
+ });
16
40
  }
17
- patternToRegex(t) {
18
- if (t === '*') {
19
- return /.*/;
41
+ static executeAdviceChain(t, e, n, r, o) {
42
+ const c = t.filter((t)=>t.type === 'before');
43
+ const s = t.filter((t)=>t.type === 'around');
44
+ const a = t.filter((t)=>t.type === 'after');
45
+ try {
46
+ for (const t of c){
47
+ const e = {
48
+ ...o,
49
+ config: t.config
50
+ };
51
+ t.method.call(t.transversalInstance, e);
52
+ }
53
+ let t;
54
+ if (s.length > 0) {
55
+ t = this.buildAroundChain(s, e, n, r, o);
56
+ } else {
57
+ t = e.apply(n, r);
58
+ }
59
+ if (t instanceof Promise) {
60
+ return t.then((t)=>{
61
+ for (const e of a){
62
+ const n = {
63
+ ...o,
64
+ result: t
65
+ };
66
+ e.method.call(e.transversalInstance, n);
67
+ }
68
+ return t;
69
+ }).catch((t)=>{
70
+ o.error = t;
71
+ throw t;
72
+ });
73
+ }
74
+ for (const e of a){
75
+ const n = {
76
+ ...o,
77
+ result: t,
78
+ config: e.config
79
+ };
80
+ e.method.call(e.transversalInstance, n);
81
+ }
82
+ return t;
83
+ } catch (t) {
84
+ o.error = t;
85
+ throw t;
20
86
  }
21
- const e = t.replace(/[.+?^${}()|[\]\\]/g, '\\$&').replace(/\*/g, '.*');
22
- return new RegExp(`^${e}$`);
23
87
  }
24
- constructor(t, e){
25
- this.classRegex = this.patternToRegex(t);
26
- this.methodRegex = this.patternToRegex(e);
88
+ static buildAroundChain(t, e, n, r, o) {
89
+ let c = 0;
90
+ const s = ()=>{
91
+ if (c < t.length) {
92
+ const e = t[c++];
93
+ const n = {
94
+ ...o,
95
+ proceed: s,
96
+ config: e.config
97
+ };
98
+ return e.method.call(e.transversalInstance, n);
99
+ } else {
100
+ return e.apply(n, r);
101
+ }
102
+ };
103
+ return s();
27
104
  }
28
- };
105
+ }
29
106
 
30
- export { PointcutMatcher };
107
+ export { TransversalWeaver };
package/dist/index41.js CHANGED
@@ -2,27 +2,33 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
- class ResolverStore {
6
- static register(e, r) {
7
- this.resolvers.set(e, r);
8
- }
9
- static getResolver(e) {
10
- const r = this.resolvers.get(e);
11
- if (!r) {
12
- throw new Error(`No resolver found for decorator type: ${e}`);
5
+ class PointcutMatcher {
6
+ static parse(t) {
7
+ const e = t.match(/^execution\(([^.]+)\.([^)]+)\)$/);
8
+ if (!e) {
9
+ throw new Error(`Invalid pointcut expression: ${t}`);
13
10
  }
14
- return new r();
11
+ const [, c, r] = e;
12
+ return new ExecutionPointcutMatcher(c, r);
15
13
  }
16
- static hasResolver(e) {
17
- return this.resolvers.has(e);
14
+ }
15
+ let ExecutionPointcutMatcher = class ExecutionPointcutMatcher {
16
+ matches(t) {
17
+ const e = t.target.constructor.name;
18
+ const c = t.methodName;
19
+ return this.classRegex.test(e) && this.methodRegex.test(c);
18
20
  }
19
- static getRegisteredTypes() {
20
- return Array.from(this.resolvers.keys());
21
+ patternToRegex(t) {
22
+ if (t === '*') {
23
+ return /.*/;
24
+ }
25
+ const e = t.replace(/[.+?^${}()|[\]\\]/g, '\\$&').replace(/\*/g, '.*');
26
+ return new RegExp(`^${e}$`);
21
27
  }
22
- static clear() {
23
- this.resolvers.clear();
28
+ constructor(t, e){
29
+ this.classRegex = this.patternToRegex(t);
30
+ this.methodRegex = this.patternToRegex(e);
24
31
  }
25
- }
26
- ResolverStore.resolvers = new Map();
32
+ };
27
33
 
28
- exports.ResolverStore = ResolverStore;
34
+ exports.PointcutMatcher = PointcutMatcher;
package/dist/index41.mjs CHANGED
@@ -1,24 +1,30 @@
1
- class ResolverStore {
2
- static register(e, r) {
3
- this.resolvers.set(e, r);
4
- }
5
- static getResolver(e) {
6
- const r = this.resolvers.get(e);
7
- if (!r) {
8
- throw new Error(`No resolver found for decorator type: ${e}`);
1
+ class PointcutMatcher {
2
+ static parse(t) {
3
+ const e = t.match(/^execution\(([^.]+)\.([^)]+)\)$/);
4
+ if (!e) {
5
+ throw new Error(`Invalid pointcut expression: ${t}`);
9
6
  }
10
- return new r();
7
+ const [, c, r] = e;
8
+ return new ExecutionPointcutMatcher(c, r);
11
9
  }
12
- static hasResolver(e) {
13
- return this.resolvers.has(e);
10
+ }
11
+ let ExecutionPointcutMatcher = class ExecutionPointcutMatcher {
12
+ matches(t) {
13
+ const e = t.target.constructor.name;
14
+ const c = t.methodName;
15
+ return this.classRegex.test(e) && this.methodRegex.test(c);
14
16
  }
15
- static getRegisteredTypes() {
16
- return Array.from(this.resolvers.keys());
17
+ patternToRegex(t) {
18
+ if (t === '*') {
19
+ return /.*/;
20
+ }
21
+ const e = t.replace(/[.+?^${}()|[\]\\]/g, '\\$&').replace(/\*/g, '.*');
22
+ return new RegExp(`^${e}$`);
17
23
  }
18
- static clear() {
19
- this.resolvers.clear();
24
+ constructor(t, e){
25
+ this.classRegex = this.patternToRegex(t);
26
+ this.methodRegex = this.patternToRegex(e);
20
27
  }
21
- }
22
- ResolverStore.resolvers = new Map();
28
+ };
23
29
 
24
- export { ResolverStore };
30
+ export { PointcutMatcher };
package/dist/index42.js CHANGED
@@ -2,53 +2,33 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
- const core = require('@assemblerjs/core');
5
+ class SingletonStrategy {
6
+ resolve(t, e) {
7
+ const n = t.identifier;
8
+ if (this.cache.has(n)) {
9
+ return this.cache.get(n);
10
+ }
11
+ const o = t.build(e);
12
+ const r = e ? {
13
+ ...t.configuration,
14
+ ...e
15
+ } : t.configuration;
16
+ t.setSingletonInstance(o, r);
17
+ this.cache.set(n, o);
18
+ t.privateContext.prepareInitHook(o, t.configuration);
19
+ return o;
20
+ }
21
+ constructor(){
22
+ this.cache = new Map();
23
+ }
24
+ }
25
+ class TransientStrategy {
26
+ resolve(t, e) {
27
+ const n = t.build(e);
28
+ t.privateContext.prepareInitHook(n, t.configuration);
29
+ return n;
30
+ }
31
+ }
6
32
 
7
- const i = (e)=>{
8
- return {
9
- identifier: e[0],
10
- concrete: e[0],
11
- configuration: {}
12
- };
13
- };
14
- const c = (o)=>{
15
- const i = ()=>core.isClass(o[0]) && core.isClass(o[1]);
16
- const c = ()=>core.isClass(o[0]) && core.isObject(o[1]);
17
- const s = ()=>core.pipe(core.conditionally({
18
- if: ()=>i(),
19
- then: ()=>{
20
- return {
21
- identifier: o[0],
22
- concrete: o[1],
23
- configuration: {}
24
- };
25
- }
26
- }), core.conditionally({
27
- if: ()=>c(),
28
- then: ()=>{
29
- return {
30
- identifier: o[0],
31
- concrete: o[0],
32
- configuration: o[1]
33
- };
34
- },
35
- else: (e)=>e
36
- }))();
37
- return s();
38
- };
39
- const s = (e)=>{
40
- return {
41
- identifier: e[0],
42
- concrete: e[1],
43
- configuration: e[2]
44
- };
45
- };
46
- const resolveInjectionTuple = (e)=>core.switchCase({
47
- 1: ()=>i(e),
48
- 2: ()=>c(e),
49
- 3: ()=>s(e)
50
- }, ()=>{
51
- throw new Error(`Injection tuple must be of length 1, 2 or 3.`);
52
- })(e.length);
53
-
54
- exports.resolveInjectionTuple = resolveInjectionTuple;
33
+ exports.SingletonStrategy = SingletonStrategy;
34
+ exports.TransientStrategy = TransientStrategy;