assemblerjs 1.1.1 → 1.1.2

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 (70) hide show
  1. package/dist/index.d.ts +27 -8
  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 +2 -2
  21. package/dist/index22.mjs +2 -2
  22. package/dist/index23.js +2 -2
  23. package/dist/index23.mjs +2 -2
  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 +38 -15
  31. package/dist/index29.mjs +37 -12
  32. package/dist/index3.js +1 -1
  33. package/dist/index3.mjs +1 -1
  34. package/dist/index30.js +58 -94
  35. package/dist/index30.mjs +58 -92
  36. package/dist/index31.js +25 -16
  37. package/dist/index31.mjs +25 -16
  38. package/dist/index32.js +55 -53
  39. package/dist/index32.mjs +55 -53
  40. package/dist/index33.js +28 -28
  41. package/dist/index33.mjs +28 -28
  42. package/dist/index34.js +28 -62
  43. package/dist/index34.mjs +28 -62
  44. package/dist/index35.js +17 -31
  45. package/dist/index35.mjs +14 -31
  46. package/dist/index36.js +105 -29
  47. package/dist/index36.mjs +103 -29
  48. package/dist/index37.js +100 -35
  49. package/dist/index37.mjs +100 -34
  50. package/dist/index38.js +24 -101
  51. package/dist/index38.mjs +24 -101
  52. package/dist/index39.js +18 -24
  53. package/dist/index39.mjs +18 -24
  54. package/dist/index4.js +5 -5
  55. package/dist/index4.mjs +5 -5
  56. package/dist/index40.js +29 -49
  57. package/dist/index40.mjs +28 -49
  58. package/dist/index41.js +18 -4
  59. package/dist/index41.mjs +18 -5
  60. package/dist/index42.js +49 -29
  61. package/dist/index42.mjs +49 -28
  62. package/dist/index43.js +92 -70
  63. package/dist/index43.mjs +92 -70
  64. package/dist/index47.js +1 -1
  65. package/dist/index47.mjs +1 -1
  66. package/dist/index48.js +18 -7
  67. package/dist/index48.mjs +18 -7
  68. package/dist/index49.js +1 -1
  69. package/dist/index49.mjs +1 -1
  70. package/package.json +1 -1
package/dist/index33.js CHANGED
@@ -2,36 +2,36 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
- class ObjectManager {
6
- use(e, t) {
7
- if (this.has(e)) {
8
- throw new Error(`A value is already registered with identifier '${String(e)}'.`);
9
- }
10
- this.objects.set(e, t);
11
- return t;
12
- }
13
- has(e) {
14
- return this.objects.has(e);
15
- }
16
- require(e) {
17
- if (!this.objects.has(e)) {
18
- throw new Error(`Injected object with identifier '${String(e)}' has not been registered.`);
19
- }
20
- return this.objects.get(e);
21
- }
22
- addGlobal(e, t) {
23
- if (this.globals.has(e)) {
24
- throw new Error(`Global value with key '${e}' has already been registered.`);
5
+ const hookManager = require('./index32.js');
6
+ const schema = require('./index36.js');
7
+
8
+ class AssemblerBuilder {
9
+ build(t, o) {
10
+ schema.setDefinitionValue('singleton', true, t);
11
+ const a = this.assembler.register([
12
+ t
13
+ ]);
14
+ const r = this.assembler.require(a.identifier, o);
15
+ const i = this.assembler.hookManager.getCache().find((e)=>e.instance === r);
16
+ if (!i) {
17
+ throw new Error('Root instance not found in assemblages cache.');
25
18
  }
26
- this.globals.set(e, t);
27
- }
28
- global(e) {
29
- return this.globals.get(e);
19
+ const n = this.assembler.hookManager.getCache().indexOf(i);
20
+ this.assembler.hookManager.getCache().splice(n, 1);
21
+ this.assembler.hookManager.callInitHooks(this.assembler.publicContext);
22
+ const l = o ? {
23
+ ...a.configuration,
24
+ ...o
25
+ } : a.configuration;
26
+ hookManager.HookManager.callHookImmediate(r, 'onInit', this.assembler.publicContext, l);
27
+ this.assembler.hookManager.callInitedHooks(this.assembler.publicContext);
28
+ hookManager.HookManager.callHookImmediate(r, 'onInited', this.assembler.publicContext, l);
29
+ this.assembler.hookManager.clearCache();
30
+ return r;
30
31
  }
31
- constructor(){
32
- this.objects = new Map();
33
- this.globals = new Map();
32
+ constructor(e){
33
+ this.assembler = e;
34
34
  }
35
35
  }
36
36
 
37
- exports.ObjectManager = ObjectManager;
37
+ exports.AssemblerBuilder = AssemblerBuilder;
package/dist/index33.mjs CHANGED
@@ -1,33 +1,33 @@
1
- class ObjectManager {
2
- use(e, t) {
3
- if (this.has(e)) {
4
- throw new Error(`A value is already registered with identifier '${String(e)}'.`);
5
- }
6
- this.objects.set(e, t);
7
- return t;
8
- }
9
- has(e) {
10
- return this.objects.has(e);
11
- }
12
- require(e) {
13
- if (!this.objects.has(e)) {
14
- throw new Error(`Injected object with identifier '${String(e)}' has not been registered.`);
15
- }
16
- return this.objects.get(e);
17
- }
18
- addGlobal(e, t) {
19
- if (this.globals.has(e)) {
20
- throw new Error(`Global value with key '${e}' has already been registered.`);
1
+ import { HookManager } from './index32.mjs';
2
+ import { setDefinitionValue } from './index36.mjs';
3
+
4
+ class AssemblerBuilder {
5
+ build(t, o) {
6
+ setDefinitionValue('singleton', true, t);
7
+ const a = this.assembler.register([
8
+ t
9
+ ]);
10
+ const r = this.assembler.require(a.identifier, o);
11
+ const i = this.assembler.hookManager.getCache().find((e)=>e.instance === r);
12
+ if (!i) {
13
+ throw new Error('Root instance not found in assemblages cache.');
21
14
  }
22
- this.globals.set(e, t);
23
- }
24
- global(e) {
25
- return this.globals.get(e);
15
+ const n = this.assembler.hookManager.getCache().indexOf(i);
16
+ this.assembler.hookManager.getCache().splice(n, 1);
17
+ this.assembler.hookManager.callInitHooks(this.assembler.publicContext);
18
+ const l = o ? {
19
+ ...a.configuration,
20
+ ...o
21
+ } : a.configuration;
22
+ HookManager.callHookImmediate(r, 'onInit', this.assembler.publicContext, l);
23
+ this.assembler.hookManager.callInitedHooks(this.assembler.publicContext);
24
+ HookManager.callHookImmediate(r, 'onInited', this.assembler.publicContext, l);
25
+ this.assembler.hookManager.clearCache();
26
+ return r;
26
27
  }
27
- constructor(){
28
- this.objects = new Map();
29
- this.globals = new Map();
28
+ constructor(e){
29
+ this.assembler = e;
30
30
  }
31
31
  }
32
32
 
33
- export { ObjectManager };
33
+ export { AssemblerBuilder };
package/dist/index34.js CHANGED
@@ -2,70 +2,36 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
- const core = require('@assemblerjs/core');
6
-
7
- class HookManager {
8
- prepareInitHook(e, t) {
9
- this.initCache.push({
10
- instance: e,
11
- configuration: t
12
- });
13
- return this.initCache;
14
- }
15
- callInitHooks(e) {
16
- for (const t of this.initCache){
17
- HookManager.callHookImmediate(t.instance, 'onInit', e, t.configuration);
18
- }
19
- }
20
- callInitedHooks(e) {
21
- for (const t of [
22
- ...this.initCache
23
- ].reverse()){
24
- HookManager.callHookImmediate(t.instance, 'onInited', e, t.configuration);
25
- }
5
+ class ContextProvider {
6
+ createPublicContext() {
7
+ return {
8
+ has: this.assembler.has.bind(this.assembler),
9
+ require: this.assembler.require.bind(this.assembler),
10
+ concrete: this.assembler.concrete.bind(this.assembler),
11
+ tagged: this.assembler.tagged.bind(this.assembler),
12
+ dispose: this.assembler.dispose.bind(this.assembler),
13
+ global: this.assembler.global.bind(this.assembler),
14
+ on: this.assembler.on.bind(this.assembler),
15
+ once: this.assembler.once.bind(this.assembler),
16
+ off: this.assembler.off.bind(this.assembler),
17
+ events: this.assembler.channels
18
+ };
26
19
  }
27
- clearCache() {
28
- this.initCache.length = 0;
20
+ createPrivateContext(s) {
21
+ return {
22
+ ...s,
23
+ register: this.assembler.register.bind(this.assembler),
24
+ use: this.assembler.use.bind(this.assembler),
25
+ addGlobal: this.assembler.addGlobal.bind(this.assembler),
26
+ prepareInitHook: this.assembler.prepareInitHook.bind(this.assembler),
27
+ emit: this.assembler.emit.bind(this.assembler),
28
+ addChannels: this.assembler.addChannels.bind(this.assembler),
29
+ removeChannels: this.assembler.removeChannels.bind(this.assembler)
30
+ };
29
31
  }
30
- getCache() {
31
- return this.initCache;
32
- }
33
- constructor(){
34
- this.initCache = [];
32
+ constructor(s){
33
+ this.assembler = s;
35
34
  }
36
35
  }
37
- HookManager.callHook = (t, i, o, n)=>{
38
- return new Promise((a, c)=>{
39
- const r = t[i];
40
- if (r) {
41
- if (core.isAsync(r)) {
42
- r.bind(t)(o, n).then(()=>{
43
- a();
44
- }).catch((e)=>{
45
- c(e);
46
- });
47
- return;
48
- }
49
- try {
50
- r.bind(t)(o, n);
51
- a();
52
- } catch (e) {
53
- c(e);
54
- }
55
- } else {
56
- a();
57
- }
58
- });
59
- };
60
- HookManager.callHookImmediate = (t, i, o, n)=>{
61
- const a = t[i];
62
- if (a) {
63
- if (core.isAsync(a)) {
64
- a.bind(t)(o, n).catch(()=>{});
65
- return;
66
- }
67
- a.bind(t)(o, n);
68
- }
69
- };
70
36
 
71
- exports.HookManager = HookManager;
37
+ exports.ContextProvider = ContextProvider;
package/dist/index34.mjs CHANGED
@@ -1,67 +1,33 @@
1
- import { isAsync } from '@assemblerjs/core';
2
-
3
- class HookManager {
4
- prepareInitHook(e, t) {
5
- this.initCache.push({
6
- instance: e,
7
- configuration: t
8
- });
9
- return this.initCache;
10
- }
11
- callInitHooks(e) {
12
- for (const t of this.initCache){
13
- HookManager.callHookImmediate(t.instance, 'onInit', e, t.configuration);
14
- }
15
- }
16
- callInitedHooks(e) {
17
- for (const t of [
18
- ...this.initCache
19
- ].reverse()){
20
- HookManager.callHookImmediate(t.instance, 'onInited', e, t.configuration);
21
- }
1
+ class ContextProvider {
2
+ createPublicContext() {
3
+ return {
4
+ has: this.assembler.has.bind(this.assembler),
5
+ require: this.assembler.require.bind(this.assembler),
6
+ concrete: this.assembler.concrete.bind(this.assembler),
7
+ tagged: this.assembler.tagged.bind(this.assembler),
8
+ dispose: this.assembler.dispose.bind(this.assembler),
9
+ global: this.assembler.global.bind(this.assembler),
10
+ on: this.assembler.on.bind(this.assembler),
11
+ once: this.assembler.once.bind(this.assembler),
12
+ off: this.assembler.off.bind(this.assembler),
13
+ events: this.assembler.channels
14
+ };
22
15
  }
23
- clearCache() {
24
- this.initCache.length = 0;
16
+ createPrivateContext(s) {
17
+ return {
18
+ ...s,
19
+ register: this.assembler.register.bind(this.assembler),
20
+ use: this.assembler.use.bind(this.assembler),
21
+ addGlobal: this.assembler.addGlobal.bind(this.assembler),
22
+ prepareInitHook: this.assembler.prepareInitHook.bind(this.assembler),
23
+ emit: this.assembler.emit.bind(this.assembler),
24
+ addChannels: this.assembler.addChannels.bind(this.assembler),
25
+ removeChannels: this.assembler.removeChannels.bind(this.assembler)
26
+ };
25
27
  }
26
- getCache() {
27
- return this.initCache;
28
- }
29
- constructor(){
30
- this.initCache = [];
28
+ constructor(s){
29
+ this.assembler = s;
31
30
  }
32
31
  }
33
- HookManager.callHook = (t, i, o, n)=>{
34
- return new Promise((a, c)=>{
35
- const r = t[i];
36
- if (r) {
37
- if (isAsync(r)) {
38
- r.bind(t)(o, n).then(()=>{
39
- a();
40
- }).catch((e)=>{
41
- c(e);
42
- });
43
- return;
44
- }
45
- try {
46
- r.bind(t)(o, n);
47
- a();
48
- } catch (e) {
49
- c(e);
50
- }
51
- } else {
52
- a();
53
- }
54
- });
55
- };
56
- HookManager.callHookImmediate = (t, i, o, n)=>{
57
- const a = t[i];
58
- if (a) {
59
- if (isAsync(a)) {
60
- a.bind(t)(o, n).catch(()=>{});
61
- return;
62
- }
63
- a.bind(t)(o, n);
64
- }
65
- };
66
32
 
67
- export { HookManager };
33
+ export { ContextProvider };
package/dist/index35.js CHANGED
@@ -2,36 +2,22 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
- const hookManager = require('./index34.js');
6
- const schema = require('./index30.js');
5
+ const constants = require('./index28.js');
7
6
 
8
- class AssemblerBuilder {
9
- build(t, o) {
10
- schema.setDefinitionValue('singleton', true, t);
11
- const a = this.assembler.register([
12
- t
13
- ]);
14
- const r = this.assembler.require(a.identifier, o);
15
- const i = this.assembler.hookManager.getCache().find((e)=>e.instance === r);
16
- if (!i) {
17
- throw new Error('Root instance not found in assemblages cache.');
18
- }
19
- const n = this.assembler.hookManager.getCache().indexOf(i);
20
- this.assembler.hookManager.getCache().splice(n, 1);
21
- this.assembler.hookManager.callInitHooks(this.assembler.publicContext);
22
- const l = o ? {
23
- ...a.configuration,
24
- ...o
25
- } : a.configuration;
26
- hookManager.HookManager.callHookImmediate(r, 'onInit', this.assembler.publicContext, l);
27
- this.assembler.hookManager.callInitedHooks(this.assembler.publicContext);
28
- hookManager.HookManager.callHookImmediate(r, 'onInited', this.assembler.publicContext, l);
29
- this.assembler.hookManager.clearCache();
30
- return r;
31
- }
32
- constructor(e){
33
- this.assembler = e;
34
- }
35
- }
7
+ const defineCustomMetadata = (t, o, n)=>{
8
+ Reflect.defineMetadata(`${constants.ReflectPrefix}${t}${constants.ReflectSuffix}`, o, n);
9
+ };
10
+ const getCustomMetadata = (t, o)=>{
11
+ return Reflect.getMetadata(`${constants.ReflectPrefix}${t}${constants.ReflectSuffix}`, o);
12
+ };
13
+ const getOwnCustomMetadata = (t, o)=>{
14
+ return Reflect.getOwnMetadata(`${constants.ReflectPrefix}${t}${constants.ReflectSuffix}`, o);
15
+ };
16
+ const getParamTypes = (e)=>{
17
+ return Reflect.getMetadata(constants.ReflectParamTypes, e) || [];
18
+ };
36
19
 
37
- exports.AssemblerBuilder = AssemblerBuilder;
20
+ exports.defineCustomMetadata = defineCustomMetadata;
21
+ exports.getCustomMetadata = getCustomMetadata;
22
+ exports.getOwnCustomMetadata = getOwnCustomMetadata;
23
+ exports.getParamTypes = getParamTypes;
package/dist/index35.mjs CHANGED
@@ -1,33 +1,16 @@
1
- import { HookManager } from './index34.mjs';
2
- import { setDefinitionValue } from './index30.mjs';
1
+ import { ReflectPrefix, ReflectSuffix, ReflectParamTypes } from './index28.mjs';
3
2
 
4
- class AssemblerBuilder {
5
- build(t, o) {
6
- setDefinitionValue('singleton', true, t);
7
- const a = this.assembler.register([
8
- t
9
- ]);
10
- const r = this.assembler.require(a.identifier, o);
11
- const i = this.assembler.hookManager.getCache().find((e)=>e.instance === r);
12
- if (!i) {
13
- throw new Error('Root instance not found in assemblages cache.');
14
- }
15
- const n = this.assembler.hookManager.getCache().indexOf(i);
16
- this.assembler.hookManager.getCache().splice(n, 1);
17
- this.assembler.hookManager.callInitHooks(this.assembler.publicContext);
18
- const l = o ? {
19
- ...a.configuration,
20
- ...o
21
- } : a.configuration;
22
- HookManager.callHookImmediate(r, 'onInit', this.assembler.publicContext, l);
23
- this.assembler.hookManager.callInitedHooks(this.assembler.publicContext);
24
- HookManager.callHookImmediate(r, 'onInited', this.assembler.publicContext, l);
25
- this.assembler.hookManager.clearCache();
26
- return r;
27
- }
28
- constructor(e){
29
- this.assembler = e;
30
- }
31
- }
3
+ const defineCustomMetadata = (t, o, n)=>{
4
+ Reflect.defineMetadata(`${ReflectPrefix}${t}${ReflectSuffix}`, o, n);
5
+ };
6
+ const getCustomMetadata = (t, o)=>{
7
+ return Reflect.getMetadata(`${ReflectPrefix}${t}${ReflectSuffix}`, o);
8
+ };
9
+ const getOwnCustomMetadata = (t, o)=>{
10
+ return Reflect.getOwnMetadata(`${ReflectPrefix}${t}${ReflectSuffix}`, o);
11
+ };
12
+ const getParamTypes = (e)=>{
13
+ return Reflect.getMetadata(ReflectParamTypes, e) || [];
14
+ };
32
15
 
33
- export { AssemblerBuilder };
16
+ export { defineCustomMetadata, getCustomMetadata, getOwnCustomMetadata, getParamTypes };
package/dist/index36.js CHANGED
@@ -2,36 +2,112 @@
2
2
 
3
3
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
4
4
 
5
- class ContextProvider {
6
- createPublicContext() {
7
- return {
8
- has: this.assembler.has.bind(this.assembler),
9
- require: this.assembler.require.bind(this.assembler),
10
- concrete: this.assembler.concrete.bind(this.assembler),
11
- tagged: this.assembler.tagged.bind(this.assembler),
12
- dispose: this.assembler.dispose.bind(this.assembler),
13
- global: this.assembler.global.bind(this.assembler),
14
- on: this.assembler.on.bind(this.assembler),
15
- once: this.assembler.once.bind(this.assembler),
16
- off: this.assembler.off.bind(this.assembler),
17
- events: this.assembler.channels
18
- };
5
+ const constants = require('./index28.js');
6
+ const reflection = require('./index35.js');
7
+ const helpers = require('./index3.js');
8
+
9
+ const n = {
10
+ singleton: {
11
+ test: (r)=>typeof r === 'boolean' || typeof r === 'undefined',
12
+ throw: ()=>{
13
+ throw new Error(`'singleton' property must be of type 'boolean' or 'undefined'.`);
14
+ },
15
+ transform: (r)=>{
16
+ return typeof r === 'undefined' ? true : r ? true : false;
17
+ }
18
+ },
19
+ events: {
20
+ test: (r)=>typeof r === 'undefined' || Array.isArray(r) && r.every((r)=>typeof r === 'string'),
21
+ throw: ()=>{
22
+ throw new Error(`'events' property must be an array of strings or 'undefined'.`);
23
+ },
24
+ transform: (r)=>r
25
+ },
26
+ inject: {
27
+ test: (r)=>typeof r === 'undefined' || Array.isArray(r) && r.every((r)=>Array.isArray(r) && r.length >= 1 && r.length <= 3),
28
+ throw: ()=>{
29
+ throw new Error(`'inject' property must be an array of tuples of length 1, 2 or 3.`);
30
+ },
31
+ transform: (r)=>r
32
+ },
33
+ use: {
34
+ test: (r)=>typeof r === 'undefined' || Array.isArray(r) && r.every((r)=>{
35
+ if (!Array.isArray(r) || r.length !== 2) {
36
+ return false;
37
+ }
38
+ const e = r[1];
39
+ return typeof e !== 'undefined';
40
+ }),
41
+ throw: ()=>{
42
+ throw new Error(`'use' property must be an array of tuples of length 2 with [identifier, instance | factory].`);
43
+ },
44
+ transform: (r)=>r
45
+ },
46
+ engage: {
47
+ test: (r)=>typeof r === 'undefined' || Array.isArray(r) && r.every((r)=>Array.isArray(r) && r.length >= 1 && r.length <= 3),
48
+ throw: ()=>{
49
+ throw new Error(`'engage' property must be an array of tuples of length 1, 2 or 3.`);
50
+ },
51
+ transform: (r)=>r
52
+ },
53
+ tags: {
54
+ test: (r)=>typeof r === 'undefined' || typeof r === 'string' || Array.isArray(r) && r.every((r)=>typeof r === 'string'),
55
+ throw: ()=>{
56
+ throw new Error(`'tags' property must be a string or an array of strings.`);
57
+ },
58
+ transform: (r)=>typeof r === 'string' ? [
59
+ r
60
+ ] : r
61
+ },
62
+ metadata: {
63
+ test: (r)=>(typeof r === 'object' || typeof r === 'undefined') && !Array.isArray(r),
64
+ throw: ()=>{
65
+ throw new Error(`'metadata' property must be of type 'object' or 'undefined'.`);
66
+ },
67
+ transform: (r)=>r
68
+ },
69
+ global: {
70
+ test: (r)=>(typeof r === 'object' || typeof r === 'undefined') && !Array.isArray(r),
71
+ throw: ()=>{
72
+ throw new Error(`'global' property must be of type 'object' or 'undefined'.`);
73
+ },
74
+ transform: (r)=>r
75
+ }
76
+ };
77
+ const validateDefinition = (r)=>{
78
+ const e = {
79
+ ...r
80
+ };
81
+ for(const r in e){
82
+ if (!Object.keys(n).includes(r)) {
83
+ throw new Error(`Property '${r}' is not a valid assemblage definition property.`);
84
+ }
19
85
  }
20
- createPrivateContext(s) {
21
- return {
22
- ...s,
23
- register: this.assembler.register.bind(this.assembler),
24
- use: this.assembler.use.bind(this.assembler),
25
- addGlobal: this.assembler.addGlobal.bind(this.assembler),
26
- prepareInitHook: this.assembler.prepareInitHook.bind(this.assembler),
27
- emit: this.assembler.emit.bind(this.assembler),
28
- addChannels: this.assembler.addChannels.bind(this.assembler),
29
- removeChannels: this.assembler.removeChannels.bind(this.assembler)
30
- };
86
+ for(const r in n){
87
+ const t = n[r].test;
88
+ const o = n[r].throw;
89
+ const s = n[r].transform;
90
+ if (!t(e[r])) {
91
+ o();
92
+ }
93
+ e[r] = s(e[r]);
31
94
  }
32
- constructor(s){
33
- this.assembler = s;
95
+ return e;
96
+ };
97
+ const getDefinition = (e)=>{
98
+ if (!helpers.isAssemblage(e)) {
99
+ throw new Error(`Class '${e.name}' is not an assemblage or transversal.`);
34
100
  }
35
- }
101
+ return reflection.getOwnCustomMetadata(constants.ReflectValue.AssemblageDefinition, e);
102
+ };
103
+ const setDefinitionValue = (t, o, n)=>{
104
+ const s = getDefinition(n);
105
+ s[t] = o;
106
+ const a = validateDefinition(s);
107
+ reflection.defineCustomMetadata(constants.ReflectValue.AssemblageDefinition, a, n);
108
+ return a;
109
+ };
36
110
 
37
- exports.ContextProvider = ContextProvider;
111
+ exports.getDefinition = getDefinition;
112
+ exports.setDefinitionValue = setDefinitionValue;
113
+ exports.validateDefinition = validateDefinition;