@adaas/a-concept 0.0.28 → 0.0.30

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 (179) hide show
  1. package/dist/examples/fe-be/channels/Test.channel.d.ts +6 -0
  2. package/dist/examples/fe-be/channels/Test.channel.js +14 -0
  3. package/dist/examples/fe-be/channels/Test.channel.js.map +1 -0
  4. package/dist/examples/fe-be/components/BE-Controller.component.d.ts +4 -0
  5. package/dist/examples/fe-be/components/BE-Controller.component.js +24 -0
  6. package/dist/examples/fe-be/components/BE-Controller.component.js.map +1 -0
  7. package/dist/examples/fe-be/components/FE.component.d.ts +4 -0
  8. package/dist/examples/fe-be/components/FE.component.js +31 -0
  9. package/dist/examples/fe-be/components/FE.component.js.map +1 -0
  10. package/dist/examples/fe-be/components/UserActions.component.d.ts +5 -0
  11. package/dist/examples/fe-be/components/UserActions.component.js +25 -0
  12. package/dist/examples/fe-be/components/UserActions.component.js.map +1 -0
  13. package/dist/examples/fe-be/concept.d.ts +0 -0
  14. package/dist/examples/fe-be/concept.js +2 -0
  15. package/dist/examples/fe-be/concept.js.map +1 -0
  16. package/dist/examples/fe-be/containers/ServerApp.container.d.ts +3 -0
  17. package/dist/examples/fe-be/containers/ServerApp.container.js +8 -0
  18. package/dist/examples/fe-be/containers/ServerApp.container.js.map +1 -0
  19. package/dist/examples/fe-be/containers/WebApp.container.d.ts +3 -0
  20. package/dist/examples/fe-be/containers/WebApp.container.js +8 -0
  21. package/dist/examples/fe-be/containers/WebApp.container.js.map +1 -0
  22. package/dist/examples/multi-container/channels/Direct.channel.d.ts +9 -0
  23. package/dist/examples/multi-container/channels/Direct.channel.js +32 -0
  24. package/dist/examples/multi-container/channels/Direct.channel.js.map +1 -0
  25. package/dist/examples/multi-container/concept.d.ts +0 -0
  26. package/dist/examples/multi-container/concept.js +2 -0
  27. package/dist/examples/multi-container/concept.js.map +1 -0
  28. package/dist/examples/multi-container/containers/Command.container.d.ts +11 -0
  29. package/dist/examples/multi-container/containers/Command.container.js +51 -0
  30. package/dist/examples/multi-container/containers/Command.container.js.map +1 -0
  31. package/dist/examples/multi-container/containers/Schedule.container.d.ts +15 -0
  32. package/dist/examples/multi-container/containers/Schedule.container.js +67 -0
  33. package/dist/examples/multi-container/containers/Schedule.container.js.map +1 -0
  34. package/dist/examples/simple/components/A.component.js.map +1 -1
  35. package/dist/examples/simple/containers/Main.container.js +7 -3
  36. package/dist/examples/simple/containers/Main.container.js.map +1 -1
  37. package/dist/examples/simple/entities/EntityA.entity.d.ts +8 -0
  38. package/dist/examples/simple/entities/EntityA.entity.js +22 -0
  39. package/dist/examples/simple/entities/EntityA.entity.js.map +1 -0
  40. package/dist/examples/simple-http-server/contexts/http-request.context.d.ts +0 -1
  41. package/dist/examples/simple-http-server/contexts/http-request.context.js +6 -8
  42. package/dist/examples/simple-http-server/contexts/http-request.context.js.map +1 -1
  43. package/dist/index.d.ts +8 -2
  44. package/dist/index.js +16 -7
  45. package/dist/index.js.map +1 -1
  46. package/dist/src/base/A-Config/components/ConfigReader.component.d.ts +2 -1
  47. package/dist/src/base/A-Config/components/ConfigReader.component.js +12 -12
  48. package/dist/src/base/A-Config/components/ConfigReader.component.js.map +1 -1
  49. package/dist/src/decorators/A-Abstraction/A-Abstraction.decorator.d.ts +14 -0
  50. package/dist/src/decorators/A-Abstraction/A-Abstraction.decorator.js +53 -0
  51. package/dist/src/decorators/A-Abstraction/A-Abstraction.decorator.js.map +1 -0
  52. package/dist/src/decorators/A-Abstraction/A-Abstraction.decorator.types.d.ts +2 -0
  53. package/dist/src/decorators/A-Abstraction/A-Abstraction.decorator.types.js +3 -0
  54. package/dist/src/decorators/A-Abstraction/A-Abstraction.decorator.types.js.map +1 -0
  55. package/dist/src/decorators/A-Connect/A-Connect.decorator.d.ts +19 -0
  56. package/dist/src/decorators/A-Connect/A-Connect.decorator.js +31 -0
  57. package/dist/src/decorators/A-Connect/A-Connect.decorator.js.map +1 -0
  58. package/dist/src/decorators/A-Connect/A-Connect.decorator.types.d.ts +1 -0
  59. package/dist/src/decorators/A-Connect/A-Connect.decorator.types.js +3 -0
  60. package/dist/src/decorators/A-Connect/A-Connect.decorator.types.js.map +1 -0
  61. package/dist/src/decorators/A-Entity/A-Entity-List.decorator.d.ts +1 -0
  62. package/dist/src/decorators/A-Entity/A-Entity-List.decorator.js +8 -0
  63. package/dist/src/decorators/A-Entity/A-Entity-List.decorator.js.map +1 -0
  64. package/dist/src/decorators/A-Entity/A-Entity.decorator.types.d.ts +14 -0
  65. package/dist/src/decorators/A-Entity/A-Entity.decorator.types.js +3 -0
  66. package/dist/src/decorators/A-Entity/A-Entity.decorator.types.js.map +1 -0
  67. package/dist/src/decorators/A-Feature/A-Feature-Extend.decorator.js +9 -0
  68. package/dist/src/decorators/A-Feature/A-Feature-Extend.decorator.js.map +1 -1
  69. package/dist/src/decorators/A-Feature/A-Feature.decorator.types.d.ts +28 -0
  70. package/dist/src/decorators/A-Inject/A-Inject.decorator.d.ts +2 -3
  71. package/dist/src/decorators/A-Inject/A-Inject.decorator.js.map +1 -1
  72. package/dist/src/decorators/A-Inject/A-Inject.decorator.types.d.ts +44 -0
  73. package/dist/src/global/A-Channel/A-Channel.class.d.ts +8 -10
  74. package/dist/src/global/A-Channel/A-Channel.class.js +12 -26
  75. package/dist/src/global/A-Channel/A-Channel.class.js.map +1 -1
  76. package/dist/src/global/A-Channel/A-Channel.types.d.ts +32 -0
  77. package/dist/src/global/A-Component/A-Component.class.d.ts +2 -1
  78. package/dist/src/global/A-Component/A-Component.class.js +1 -0
  79. package/dist/src/global/A-Component/A-Component.class.js.map +1 -1
  80. package/dist/src/global/A-Component/A-Component.meta.d.ts +8 -0
  81. package/dist/src/global/A-Component/A-Component.meta.js +27 -1
  82. package/dist/src/global/A-Component/A-Component.meta.js.map +1 -1
  83. package/dist/src/global/A-Component/A-Component.types.d.ts +19 -34
  84. package/dist/src/global/A-Component/A-Component.types.js +1 -7
  85. package/dist/src/global/A-Component/A-Component.types.js.map +1 -1
  86. package/dist/src/global/A-Concept/A_Concept.class.d.ts +7 -7
  87. package/dist/src/global/A-Concept/A_Concept.class.js +30 -30
  88. package/dist/src/global/A-Concept/A_Concept.class.js.map +1 -1
  89. package/dist/src/global/A-Concept/A_Concept.types.d.ts +42 -2
  90. package/dist/src/global/A-Concept/A_Concept.types.js.map +1 -1
  91. package/dist/src/global/A-Container/A-Container.class.d.ts +1 -8
  92. package/dist/src/global/A-Container/A-Container.class.js +1 -31
  93. package/dist/src/global/A-Container/A-Container.class.js.map +1 -1
  94. package/dist/src/global/A-Container/A-Container.meta.d.ts +8 -0
  95. package/dist/src/global/A-Container/A-Container.meta.js +29 -0
  96. package/dist/src/global/A-Container/A-Container.meta.js.map +1 -1
  97. package/dist/src/global/A-Container/A-Container.types.d.ts +23 -7
  98. package/dist/src/global/A-Container/A-Container.types.js +2 -1
  99. package/dist/src/global/A-Container/A-Container.types.js.map +1 -1
  100. package/dist/src/global/A-Context/A-Context.class.js +6 -35
  101. package/dist/src/global/A-Context/A-Context.class.js.map +1 -1
  102. package/dist/src/global/A-Entity/A-Entity.class.d.ts +1 -2
  103. package/dist/src/global/A-Entity/A-Entity.class.js +6 -7
  104. package/dist/src/global/A-Entity/A-Entity.class.js.map +1 -1
  105. package/dist/src/global/A-Entity/A-Entity.types.d.ts +4 -5
  106. package/dist/src/global/A-Entity/A-Entity.types.js.map +1 -1
  107. package/dist/src/global/A-Feature/A-Feature.class.d.ts +30 -6
  108. package/dist/src/global/A-Feature/A-Feature.class.js +49 -40
  109. package/dist/src/global/A-Feature/A-Feature.class.js.map +1 -1
  110. package/dist/src/global/A-Feature/A-Feature.types.d.ts +2 -24
  111. package/dist/src/global/A-Feature/A-Feature.types.js +21 -0
  112. package/dist/src/global/A-Feature/A-Feature.types.js.map +1 -1
  113. package/dist/src/global/A-Fragment/A-Fragment.class.d.ts +8 -0
  114. package/dist/src/global/A-Fragment/A-Fragment.class.js +10 -0
  115. package/dist/src/global/A-Fragment/A-Fragment.class.js.map +1 -1
  116. package/dist/src/global/A-Scope/A-Scope.class.d.ts +7 -5
  117. package/dist/src/global/A-Scope/A-Scope.class.js +33 -10
  118. package/dist/src/global/A-Scope/A-Scope.class.js.map +1 -1
  119. package/dist/src/global/A-Scope/A-Scope.types.d.ts +2 -1
  120. package/dist/src/global/A-Stage/A-Stage.class.d.ts +69 -0
  121. package/dist/src/global/A-Stage/A-Stage.class.js +176 -0
  122. package/dist/src/global/A-Stage/A-Stage.class.js.map +1 -0
  123. package/dist/src/global/A-Stage/A-Stage.types.d.ts +83 -0
  124. package/dist/src/global/A-Stage/A-Stage.types.js +59 -0
  125. package/dist/src/global/A-Stage/A-Stage.types.js.map +1 -0
  126. package/dist/src/helpers/StepsManager.class.d.ts +15 -0
  127. package/dist/src/helpers/StepsManager.class.js +85 -0
  128. package/dist/src/helpers/StepsManager.class.js.map +1 -0
  129. package/examples/fe-be/channels/Test.channel.ts +24 -0
  130. package/examples/fe-be/components/BE-Controller.component.ts +20 -0
  131. package/examples/fe-be/components/FE.component.ts +13 -0
  132. package/examples/fe-be/concept.ts +0 -0
  133. package/examples/fe-be/containers/ServerApp.container.ts +8 -0
  134. package/examples/fe-be/containers/WebApp.container.ts +13 -0
  135. package/examples/multi-container/channels/Direct.channel.ts +39 -0
  136. package/examples/multi-container/concept.ts +0 -0
  137. package/examples/multi-container/containers/Command.container.ts +41 -0
  138. package/examples/multi-container/containers/Schedule.container.ts +57 -0
  139. package/examples/simple/components/A.component.ts +2 -1
  140. package/examples/simple/containers/Main.container.ts +11 -3
  141. package/examples/simple/entities/EntityA.entity.ts +16 -0
  142. package/examples/simple-http-server/contexts/http-request.context.ts +6 -6
  143. package/index.ts +12 -3
  144. package/package.json +1 -1
  145. package/src/base/A-Config/components/ConfigReader.component.ts +12 -11
  146. package/src/decorators/A-Abstraction/A-Abstraction.decorator.ts +82 -0
  147. package/src/decorators/{A-Stage/A-Stage.decorator.types.ts → A-Abstraction/A-Abstraction.decorator.types.ts} +1 -3
  148. package/src/decorators/A-Connect/A-Connect.decorator.ts +71 -0
  149. package/src/decorators/A-Connect/A-Connect.decorator.types.ts +6 -0
  150. package/src/decorators/A-Entity/A-Entity-List.decorator.ts +12 -0
  151. package/src/decorators/A-Entity/A-Entity.decorator.types.ts +18 -0
  152. package/src/decorators/A-Feature/A-Feature-Extend.decorator.ts +10 -0
  153. package/src/decorators/A-Feature/A-Feature.decorator.types.ts +36 -0
  154. package/src/decorators/A-Inject/A-Inject.decorator.ts +7 -7
  155. package/src/decorators/A-Inject/A-Inject.decorator.types.ts +47 -1
  156. package/src/global/A-Channel/A-Channel.class.ts +25 -28
  157. package/src/global/A-Channel/A-Channel.types.ts +53 -0
  158. package/src/global/A-Component/A-Component.class.ts +10 -2
  159. package/src/global/A-Component/A-Component.meta.ts +42 -1
  160. package/src/global/A-Component/A-Component.types.ts +20 -40
  161. package/src/global/A-Concept/A_Concept.class.ts +52 -31
  162. package/src/global/A-Concept/A_Concept.types.ts +48 -3
  163. package/src/global/A-Container/A-Container.class.ts +3 -39
  164. package/src/global/A-Container/A-Container.meta.ts +41 -4
  165. package/src/global/A-Container/A-Container.types.ts +28 -7
  166. package/src/global/A-Context/A-Context.class.ts +9 -49
  167. package/src/global/A-Entity/A-Entity.class.ts +8 -6
  168. package/src/global/A-Entity/A-Entity.types.ts +4 -5
  169. package/src/global/A-Feature/A-Feature.class.ts +73 -61
  170. package/src/global/A-Feature/A-Feature.types.ts +24 -23
  171. package/src/global/A-Fragment/A-Fragment.class.ts +15 -0
  172. package/src/global/A-Scope/A-Scope.class.ts +58 -25
  173. package/src/global/A-Scope/A-Scope.types.ts +2 -1
  174. package/src/global/A-Stage/A-Stage.class.ts +225 -0
  175. package/src/global/A-Stage/A-Stage.types.ts +106 -0
  176. package/src/helpers/StepsManager.class.ts +104 -0
  177. package/tests/channel.ts +213 -0
  178. package/tests/log.ts +88 -40
  179. package/src/decorators/A-Stage/A-Stage.decorator.ts +0 -84
@@ -4,6 +4,7 @@ exports.A_TYPES__ContainerMetaKey = void 0;
4
4
  var A_TYPES__ContainerMetaKey;
5
5
  (function (A_TYPES__ContainerMetaKey) {
6
6
  A_TYPES__ContainerMetaKey["FEATURES"] = "a-container-features";
7
- A_TYPES__ContainerMetaKey["STAGES"] = "a-container-stages";
7
+ A_TYPES__ContainerMetaKey["INJECTIONS"] = "a-container-injections";
8
+ A_TYPES__ContainerMetaKey["ABSTRACTIONS"] = "a-container-abstractions";
8
9
  })(A_TYPES__ContainerMetaKey || (exports.A_TYPES__ContainerMetaKey = A_TYPES__ContainerMetaKey = {}));
9
10
  //# sourceMappingURL=A-Container.types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"A-Container.types.js","sourceRoot":"","sources":["../../../../src/global/A-Container/A-Container.types.ts"],"names":[],"mappings":";;;AAwBA,IAAY,yBAGX;AAHD,WAAY,yBAAyB;IACjC,8DAAiC,CAAA;IACjC,0DAA6B,CAAA;AACjC,CAAC,EAHW,yBAAyB,yCAAzB,yBAAyB,QAGpC"}
1
+ {"version":3,"file":"A-Container.types.js","sourceRoot":"","sources":["../../../../src/global/A-Container/A-Container.types.ts"],"names":[],"mappings":";;;AA8CA,IAAY,yBAIX;AAJD,WAAY,yBAAyB;IACjC,8DAAiC,CAAA;IACjC,kEAAqC,CAAA;IACrC,sEAAyC,CAAA;AAC7C,CAAC,EAJW,yBAAyB,yCAAzB,yBAAyB,QAIpC"}
@@ -41,7 +41,6 @@ class A_Context {
41
41
  /**
42
42
  * A set of allocated scopes per every element in the program.
43
43
  */
44
- // protected scopes: WeakMap<A_Container<any> | A_Feature | A_Component | any, A_Scope> = new WeakMap();
45
44
  this.conceptsMeta = new Map();
46
45
  this.containersMeta = new Map();
47
46
  this.componentsMeta = new Map();
@@ -232,13 +231,8 @@ class A_Context {
232
231
  // Get all extensions for the feature
233
232
  meta
234
233
  .extensions(feature)
235
- .forEach(({ handler, args, name }) => {
236
- steps.push({
237
- component: constructor,
238
- name,
239
- handler,
240
- args
241
- });
234
+ .forEach((declaration) => {
235
+ steps.push(Object.assign({ component: constructor }, declaration));
242
236
  });
243
237
  });
244
238
  return {
@@ -268,37 +262,14 @@ class A_Context {
268
262
  case param1 instanceof A_Entity_class_1.A_Entity:
269
263
  instance.registry.set(param1, scope);
270
264
  break;
271
- case param1 instanceof A_Fragment_class_1.A_Fragment:
265
+ case param1 instanceof A_Fragment_class_1.A_Fragment && !instance.registry.has(param1):
272
266
  instance.registry.set(param1, scope);
273
267
  break;
274
268
  default:
275
- instance.registry.set(param1, scope);
269
+ if (!instance.registry.has(param1))
270
+ instance.registry.set(param1, scope);
271
+ break;
276
272
  }
277
- // if (param1 instanceof A_Fragment) {
278
- // const instance = this.getInstance();
279
- // let fragment: A_Fragment;
280
- // let name: string;
281
- // if (typeof param2 === 'string') {
282
- // name = param2;
283
- // fragment = param1;
284
- // } else {
285
- // fragment = param1 as A_Fragment;
286
- // name = fragment.name;
287
- // }
288
- // /**
289
- // * If the namespace is not provided, then use the root namespace.
290
- // * If the root namespace is not provided, then use the default namespace.
291
- // */
292
- // if (!name)
293
- // name = this.root
294
- // || process.env.ADAAS_NAMESPACE
295
- // || process.env.A_NAMESPACE
296
- // || process.env.ADAAS_APP_NAMESPACE
297
- // || 'a-concept'
298
- // if (!this.root)
299
- // instance._root = name;
300
- // // instance.namedFragments.set(namespace, Namespace);
301
- // return name;
302
273
  }
303
274
  }
304
275
  exports.A_Context = A_Context;
@@ -1 +1 @@
1
- {"version":3,"file":"A-Context.class.js","sourceRoot":"","sources":["../../../../src/global/A-Context/A-Context.class.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"A-Context.class.js","sourceRoot":"","sources":["../../../../src/global/A-Context/A-Context.class.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import { A_TYPES__Required, ASEID } from "@adaas/a-utils";
2
2
  import { A_TYPES__Entity_JSON, A_TYPES__EntityBaseMethod, A_TYPES__EntityBaseMethods, A_TYPES__EntityCallParams, A_TYPES__IEntity } from "./A-Entity.types";
3
- import { A_Fragment } from "../A-Fragment/A-Fragment.class";
4
3
  /**
5
4
  * A_Entity is another abstraction that describes all major participants in the system business logic.
6
5
  * Each Entity should have a clear definition and a clear set of responsibilities.
@@ -8,7 +7,7 @@ import { A_Fragment } from "../A-Fragment/A-Fragment.class";
8
7
  *
9
8
  * Each entity should be connected to the ContextFragment (Scope) and should be able to communicate with other entities.
10
9
  */
11
- export declare class A_Entity<_ConstructorType = any, _SerializedType extends A_TYPES__Entity_JSON = A_TYPES__Entity_JSON, _FeatureNames extends Array<string | A_TYPES__EntityBaseMethod> = A_TYPES__EntityBaseMethods> extends A_Fragment implements A_TYPES__IEntity {
10
+ export declare class A_Entity<_ConstructorType = any, _SerializedType extends A_TYPES__Entity_JSON = A_TYPES__Entity_JSON, _FeatureNames extends Array<string | A_TYPES__EntityBaseMethod> = A_TYPES__EntityBaseMethods> implements A_TYPES__IEntity {
12
11
  aseid: ASEID;
13
12
  /**
14
13
  * Entity Identifier that corresponds to the class name
@@ -14,7 +14,6 @@ const a_utils_1 = require("@adaas/a-utils");
14
14
  const A_Entity_types_1 = require("./A-Entity.types");
15
15
  const errors_constants_1 = require("@adaas/a-utils/dist/src/constants/errors.constants");
16
16
  const A_Context_class_1 = require("../A-Context/A-Context.class");
17
- const A_Fragment_class_1 = require("../A-Fragment/A-Fragment.class");
18
17
  /**
19
18
  * A_Entity is another abstraction that describes all major participants in the system business logic.
20
19
  * Each Entity should have a clear definition and a clear set of responsibilities.
@@ -22,7 +21,7 @@ const A_Fragment_class_1 = require("../A-Fragment/A-Fragment.class");
22
21
  *
23
22
  * Each entity should be connected to the ContextFragment (Scope) and should be able to communicate with other entities.
24
23
  */
25
- class A_Entity extends A_Fragment_class_1.A_Fragment {
24
+ class A_Entity {
26
25
  /**
27
26
  * Entity Identifier that corresponds to the class name
28
27
  */
@@ -33,7 +32,6 @@ class A_Entity extends A_Fragment_class_1.A_Fragment {
33
32
  .replace(/_/g, '-');
34
33
  }
35
34
  constructor(props) {
36
- super();
37
35
  switch (true) {
38
36
  case (typeof props === 'string' && a_utils_1.ASEID.isASEID(props)):
39
37
  this.aseid = new a_utils_1.ASEID(props);
@@ -105,6 +103,7 @@ class A_Entity extends A_Fragment_class_1.A_Fragment {
105
103
  const params = typeof param1 === 'string'
106
104
  ? param2 || {}
107
105
  : param1;
106
+ console.log('WTF???? ', A_Context_class_1.A_Context.scope(this));
108
107
  const newFeature = A_Context_class_1.A_Context.feature(A_Context_class_1.A_Context.scope(this), this, feature, params);
109
108
  return yield newFeature.process();
110
109
  });
@@ -115,7 +114,7 @@ class A_Entity extends A_Fragment_class_1.A_Fragment {
115
114
  load() {
116
115
  return __awaiter(this, void 0, void 0, function* () {
117
116
  yield this.call(A_Entity_types_1.A_TYPES__EntityBaseMethod.DESTROY, {
118
- fragments: [
117
+ entities: [
119
118
  this
120
119
  ]
121
120
  });
@@ -124,16 +123,16 @@ class A_Entity extends A_Fragment_class_1.A_Fragment {
124
123
  destroy() {
125
124
  return __awaiter(this, void 0, void 0, function* () {
126
125
  yield this.call(A_Entity_types_1.A_TYPES__EntityBaseMethod.DESTROY, {
127
- fragments: [
126
+ entities: [
128
127
  this
129
- ]
128
+ ],
130
129
  });
131
130
  });
132
131
  }
133
132
  save() {
134
133
  return __awaiter(this, void 0, void 0, function* () {
135
134
  yield this.call(A_Entity_types_1.A_TYPES__EntityBaseMethod.SAVE, {
136
- fragments: [
135
+ entities: [
137
136
  this
138
137
  ]
139
138
  });
@@ -1 +1 @@
1
- {"version":3,"file":"A-Entity.class.js","sourceRoot":"","sources":["../../../../src/global/A-Entity/A-Entity.class.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"A-Entity.class.js","sourceRoot":"","sources":["../../../../src/global/A-Entity/A-Entity.class.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,12 @@
1
1
  import { ASEID } from "@adaas/a-utils";
2
2
  import { A_Meta } from "../A-Meta/A-Meta.class";
3
3
  import { A_Fragment } from "../A-Fragment/A-Fragment.class";
4
+ import { A_TYPES__A_ExtendDecorator_Meta } from "../../decorators/A-Feature/A-Feature.decorator.types";
5
+ import { A_Entity } from "./A-Entity.class";
4
6
  export type A_TYPES__EntityCallParams<T extends string> = {
5
7
  name: T;
6
8
  fragments: Array<A_Fragment>;
9
+ entities: Array<A_Entity<any, any, any>>;
7
10
  components: Array<{
8
11
  new (...args: any[]): any;
9
12
  }>;
@@ -39,7 +42,7 @@ export type A_TYPES__EntityMeta = {
39
42
  *
40
43
  * Where value is the extension instructions
41
44
  */
42
- [Key: string]: A_TYPES__EntityMeta_ExtensionItem[];
45
+ [Key: string]: A_TYPES__A_ExtendDecorator_Meta[];
43
46
  }>;
44
47
  case: any;
45
48
  [A_TYPES__EntityMetaKey.FEATURES]: any[];
@@ -48,7 +51,3 @@ export declare enum A_TYPES__EntityMetaKey {
48
51
  EXTENSIONS = "a-component-extensions",
49
52
  FEATURES = "a-component-features"
50
53
  }
51
- export type A_TYPES__EntityMeta_ExtensionItem = {
52
- name: string;
53
- handler: string;
54
- };
@@ -1 +1 @@
1
- {"version":3,"file":"A-Entity.types.js","sourceRoot":"","sources":["../../../../src/global/A-Entity/A-Entity.types.ts"],"names":[],"mappings":";;;AAkBA,IAAY,yBAIX;AAJD,WAAY,yBAAyB;IACjC,0CAAa,CAAA;IACb,gDAAmB,CAAA;IACnB,0CAAa,CAAA;AACjB,CAAC,EAJW,yBAAyB,yCAAzB,yBAAyB,QAIpC;AAOA,CAAC;AAgCF,IAAY,sBAGX;AAHD,WAAY,sBAAsB;IAC9B,+DAAqC,CAAA;IACrC,2DAAiC,CAAA;AACrC,CAAC,EAHW,sBAAsB,sCAAtB,sBAAsB,QAGjC"}
1
+ {"version":3,"file":"A-Entity.types.js","sourceRoot":"","sources":["../../../../src/global/A-Entity/A-Entity.types.ts"],"names":[],"mappings":";;;AAqBA,IAAY,yBAIX;AAJD,WAAY,yBAAyB;IACjC,0CAAa,CAAA;IACb,gDAAmB,CAAA;IACnB,0CAAa,CAAA;AACjB,CAAC,EAJW,yBAAyB,yCAAzB,yBAAyB,QAIpC;AAOA,CAAC;AAgCF,IAAY,sBAGX;AAHD,WAAY,sBAAsB;IAC9B,+DAAqC,CAAA;IACrC,2DAAiC,CAAA;AACrC,CAAC,EAHW,sBAAsB,sCAAtB,sBAAsB,QAGjC"}
@@ -1,7 +1,9 @@
1
1
  import { A_Feature_Define } from "../../decorators/A-Feature/A-Feature-Define.decorator";
2
- import { A_TYPES__FeatureConstructor, A_TYPES__FeatureIteratorReturn, A_TYPES__FeatureState, A_TYPES__FeatureStep } from "./A-Feature.types";
2
+ import { A_TYPES__FeatureConstructor, A_TYPES__FeatureState } from "./A-Feature.types";
3
3
  import { A_Error, A_TYPES__Required } from "@adaas/a-utils";
4
4
  import { A_TYPES__A_Feature_Extend } from "../../decorators/A-Feature/A-Feature.decorator.types";
5
+ import { A_Stage } from "../A-Stage/A-Stage.class";
6
+ import { StepsManager } from "../../helpers/StepsManager.class";
5
7
  /**
6
8
  * A_Feature is representing a feature that can be executed across multiple components
7
9
  * This class stores the steps of the feature and executes them in order of appearance
@@ -19,9 +21,10 @@ export declare class A_Feature {
19
21
  * Extend an existing A-Feature
20
22
  */
21
23
  static get Extend(): A_TYPES__A_Feature_Extend;
22
- protected steps: A_TYPES__FeatureStep[];
23
- protected _current?: A_TYPES__FeatureStep;
24
+ protected stages: Array<A_Stage>;
25
+ protected _current?: A_Stage;
24
26
  protected _index: number;
27
+ protected SM: StepsManager;
25
28
  state: A_TYPES__FeatureState;
26
29
  result?: any;
27
30
  error?: A_Error;
@@ -31,17 +34,34 @@ export declare class A_Feature {
31
34
  *
32
35
  * @returns
33
36
  */
34
- [Symbol.iterator](): Iterator<A_TYPES__FeatureIteratorReturn, any>;
35
- get current(): A_TYPES__FeatureStep | undefined;
37
+ [Symbol.iterator](): Iterator<A_Stage, any>;
38
+ /**
39
+ * Returns the current A-Feature Stage
40
+ *
41
+ */
42
+ get stage(): A_Stage | undefined;
43
+ /**
44
+ * This method checks if the A-Feature is done
45
+ *
46
+ * @returns
47
+ */
36
48
  isDone(): boolean;
49
+ /**
50
+ * This method moves the feature to the next stage
51
+ *
52
+ * @param stage
53
+ */
54
+ next(stage: any): void;
37
55
  /**
38
56
  * This method marks the feature as completed and returns the result
39
57
  * Uses to interrupt or end the feature processing
40
58
  *
59
+ * The result of the feature is a Scope Fragments
60
+ *
41
61
  * @param result
42
62
  * @returns
43
63
  */
44
- completed<T extends any>(...result: T[]): Promise<T>;
64
+ completed<T extends any>(): Promise<T>;
45
65
  /**
46
66
  * This method marks the feature as failed and throws an error
47
67
  * Uses to interrupt or end the feature processing
@@ -49,6 +69,10 @@ export declare class A_Feature {
49
69
  * @param error
50
70
  */
51
71
  failed(error: Error | A_Error | unknown): Promise<void>;
72
+ /**
73
+ * This method processes the feature by executing all the stages
74
+ *
75
+ */
52
76
  process(): Promise<void>;
53
77
  protected errorHandler(error: Error | A_Error | unknown): Promise<void>;
54
78
  }
@@ -15,6 +15,7 @@ const A_Feature_Extend_decorator_1 = require("../../decorators/A-Feature/A-Featu
15
15
  const A_Feature_types_1 = require("./A-Feature.types");
16
16
  const a_utils_1 = require("@adaas/a-utils");
17
17
  const A_Context_class_1 = require("../A-Context/A-Context.class");
18
+ const StepsManager_class_1 = require("../../helpers/StepsManager.class");
18
19
  /**
19
20
  * A_Feature is representing a feature that can be executed across multiple components
20
21
  * This class stores the steps of the feature and executes them in order of appearance
@@ -38,11 +39,12 @@ class A_Feature {
38
39
  }
39
40
  constructor(params) {
40
41
  // protected scope: A_Scope
41
- this.steps = [];
42
+ this.stages = [];
42
43
  this._index = 0;
43
44
  this.state = A_Feature_types_1.A_TYPES__FeatureState.INITIALIZED;
44
- // this.scope = params.scope;
45
- this.steps = params.steps;
45
+ this.SM = new StepsManager_class_1.StepsManager(params.steps);
46
+ this.stages = this.SM.toStages(this);
47
+ this._current = this.stages[0];
46
48
  A_Context_class_1.A_Context.allocate(this, params);
47
49
  }
48
50
  /**
@@ -54,55 +56,65 @@ class A_Feature {
54
56
  return {
55
57
  // Custom next method
56
58
  next: () => {
57
- if (this._index < this.steps.length) {
58
- if (this.state === A_Feature_types_1.A_TYPES__FeatureState.FAILED
59
- ||
60
- this.state === A_Feature_types_1.A_TYPES__FeatureState.COMPLETED) {
61
- throw new Error('FEATURE_PROCESSING_INTERRUPTED');
62
- }
63
- this._current = this.steps[this._index];
64
- const { component, handler, args } = this._current;
65
- const instance = A_Context_class_1.A_Context.scope(this).resolve(component);
59
+ if (!this.isDone()) {
60
+ this._current = this.stages[this._index];
66
61
  return {
67
- value: () => __awaiter(this, void 0, void 0, function* () {
68
- if (instance[handler]) {
69
- const callArgs = args.map(arg =>
70
- // In case if the target is a feature step then pass the current feature
71
- a_utils_1.A_CommonHelper.isInheritedFrom(arg.target, A_Feature)
72
- ? this
73
- : A_Context_class_1.A_Context.scope(this).resolve(arg.target));
74
- yield instance[handler](...callArgs);
75
- }
76
- this._index++;
77
- }),
62
+ value: this._current,
78
63
  done: false
79
64
  };
80
65
  }
81
66
  else {
82
67
  this._current = undefined; // Reset current on end
83
- return { value: undefined, done: true };
68
+ return {
69
+ value: undefined,
70
+ done: true
71
+ };
84
72
  }
85
73
  }
86
74
  };
87
75
  }
88
- // Access the current element
89
- get current() {
76
+ /**
77
+ * Returns the current A-Feature Stage
78
+ *
79
+ */
80
+ get stage() {
90
81
  return this._current;
91
82
  }
92
- // Custom end strategy or stop condition (could be expanded if needed)
83
+ /**
84
+ * This method checks if the A-Feature is done
85
+ *
86
+ * @returns
87
+ */
93
88
  isDone() {
94
- return this.current === null;
89
+ return !this.stage
90
+ || this._index >= this.stages.length
91
+ || this.state === A_Feature_types_1.A_TYPES__FeatureState.COMPLETED
92
+ || this.state === A_Feature_types_1.A_TYPES__FeatureState.FAILED;
93
+ }
94
+ /**
95
+ * This method moves the feature to the next stage
96
+ *
97
+ * @param stage
98
+ */
99
+ next(stage) {
100
+ const stageIndex = this.stages.indexOf(stage);
101
+ this._index = stageIndex + 1;
102
+ if (this._index >= this.stages.length) {
103
+ this.completed();
104
+ }
95
105
  }
96
106
  /**
97
107
  * This method marks the feature as completed and returns the result
98
108
  * Uses to interrupt or end the feature processing
99
109
  *
110
+ * The result of the feature is a Scope Fragments
111
+ *
100
112
  * @param result
101
113
  * @returns
102
114
  */
103
- completed(...result) {
115
+ completed() {
104
116
  return __awaiter(this, void 0, void 0, function* () {
105
- this.result = result;
117
+ this.result = A_Context_class_1.A_Context.scope(this).toJSON();
106
118
  this.state = A_Feature_types_1.A_TYPES__FeatureState.COMPLETED;
107
119
  return this.result;
108
120
  });
@@ -120,18 +132,15 @@ class A_Feature {
120
132
  yield this.errorHandler(error);
121
133
  });
122
134
  }
135
+ /**
136
+ * This method processes the feature by executing all the stages
137
+ *
138
+ */
123
139
  process() {
124
140
  return __awaiter(this, void 0, void 0, function* () {
125
- try {
126
- this.state = A_Feature_types_1.A_TYPES__FeatureState.PROCESSING;
127
- for (const step of this) {
128
- yield step();
129
- }
130
- yield this.completed();
131
- }
132
- catch (error) {
133
- console.log('[!] Feature processing error:', error);
134
- yield this.failed(error);
141
+ this.state = A_Feature_types_1.A_TYPES__FeatureState.PROCESSING;
142
+ for (const stage of this) {
143
+ yield stage.process();
135
144
  }
136
145
  });
137
146
  }
@@ -1 +1 @@
1
- {"version":3,"file":"A-Feature.class.js","sourceRoot":"","sources":["../../../../src/global/A-Feature/A-Feature.class.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"A-Feature.class.js","sourceRoot":"","sources":["../../../../src/global/A-Feature/A-Feature.class.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,8 @@
1
- import { A_Component } from "../A-Component/A-Component.class";
2
- import { A_TYPES__ComponentMeta_InjectionParams } from "../A-Component/A-Component.types";
3
1
  import { A_TYPES__ScopeConfig, A_TYPES__ScopeConstructor } from "../A-Scope/A-Scope.types";
2
+ import { A_TYPES__A_StageStep } from "../A-Stage/A-Stage.types";
4
3
  export type A_TYPES__FeatureIteratorReturn<T extends any = any> = () => Promise<T>;
5
4
  export type A_TYPES__FeatureConstructor = {
6
- steps: A_TYPES__FeatureStep[];
5
+ steps: A_TYPES__A_StageStep[];
7
6
  } & A_TYPES__ScopeConstructor & A_TYPES__ScopeConfig;
8
7
  export declare enum A_TYPES__FeatureState {
9
8
  INITIALIZED = "INITIALIZED",
@@ -11,24 +10,3 @@ export declare enum A_TYPES__FeatureState {
11
10
  COMPLETED = "COMPLETED",
12
11
  FAILED = "FAILED"
13
12
  }
14
- export type A_TYPES__FeatureStep = {
15
- /**
16
- * The component to be called
17
- */
18
- component: typeof A_Component;
19
- /**
20
- * The method to be called on the component
21
- */
22
- handler: string;
23
- /**
24
- * Original Feature Extension name
25
- *
26
- * [!] could be string or regex
27
- *
28
- */
29
- name: string;
30
- /**
31
- * Arguments to be passed to the method
32
- */
33
- args: A_TYPES__ComponentMeta_InjectionParams;
34
- };
@@ -8,4 +8,25 @@ var A_TYPES__FeatureState;
8
8
  A_TYPES__FeatureState["COMPLETED"] = "COMPLETED";
9
9
  A_TYPES__FeatureState["FAILED"] = "FAILED";
10
10
  })(A_TYPES__FeatureState || (exports.A_TYPES__FeatureState = A_TYPES__FeatureState = {}));
11
+ // export type A_TYPES__FeatureStep = {
12
+ // /**
13
+ // * The component to be called
14
+ // */
15
+ // component: typeof A_Component,
16
+ // /**
17
+ // * The method to be called on the component
18
+ // */
19
+ // handler: string,
20
+ // /**
21
+ // * Original Feature Extension name
22
+ // *
23
+ // * [!] could be string or regex
24
+ // *
25
+ // */
26
+ // name: string,
27
+ // /**
28
+ // * Arguments to be passed to the method
29
+ // */
30
+ // args: A_TYPES__A_InjectDecorator_Meta
31
+ // }
11
32
  //# sourceMappingURL=A-Feature.types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"A-Feature.types.js","sourceRoot":"","sources":["../../../../src/global/A-Feature/A-Feature.types.ts"],"names":[],"mappings":";;;AAYA,IAAY,qBAMX;AAND,WAAY,qBAAqB;IAC7B,oDAA2B,CAAA;IAC3B,kDAAyB,CAAA;IAEzB,gDAAuB,CAAA;IACvB,0CAAiB,CAAA;AACrB,CAAC,EANW,qBAAqB,qCAArB,qBAAqB,QAMhC"}
1
+ {"version":3,"file":"A-Feature.types.js","sourceRoot":"","sources":["../../../../src/global/A-Feature/A-Feature.types.ts"],"names":[],"mappings":";;;AAaA,IAAY,qBAMX;AAND,WAAY,qBAAqB;IAC7B,oDAA2B,CAAA;IAC3B,kDAAyB,CAAA;IAEzB,gDAAuB,CAAA;IACvB,0CAAiB,CAAA;AACrB,CAAC,EANW,qBAAqB,qCAArB,qBAAqB,QAMhC;AAGD,uCAAuC;AACvC,UAAU;AACV,oCAAoC;AACpC,UAAU;AACV,qCAAqC;AACrC,UAAU;AACV,kDAAkD;AAClD,UAAU;AACV,uBAAuB;AACvB,UAAU;AACV,yCAAyC;AACzC,UAAU;AACV,sCAAsC;AACtC,UAAU;AACV,UAAU;AACV,oBAAoB;AACpB,UAAU;AACV,8CAA8C;AAC9C,UAAU;AACV,4CAA4C;AAC5C,IAAI"}
@@ -35,4 +35,12 @@ export declare class A_Fragment {
35
35
  * @returns
36
36
  */
37
37
  protected onAfterInit(): Promise<void>;
38
+ /**
39
+ * Returns the JSON representation of the Fragment
40
+ *
41
+ * @returns
42
+ */
43
+ toJSON(): {
44
+ name: string;
45
+ };
38
46
  }
@@ -101,6 +101,16 @@ class A_Fragment {
101
101
  return;
102
102
  });
103
103
  }
104
+ /**
105
+ * Returns the JSON representation of the Fragment
106
+ *
107
+ * @returns
108
+ */
109
+ toJSON() {
110
+ return {
111
+ name: this.name,
112
+ };
113
+ }
104
114
  }
105
115
  exports.A_Fragment = A_Fragment;
106
116
  //# sourceMappingURL=A-Fragment.class.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"A-Fragment.class.js","sourceRoot":"","sources":["../../../../src/global/A-Fragment/A-Fragment.class.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kEAAyD;AAIzD;;;;;;;GAOG;AACH,MAAa,UAAU;IAWnB,YAAY,SAAgD,EAAE;QAE1D,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAEjD;;WAEG;QACH,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAEjD;;WAEG;QACH,IAAI,CAAC,IAAI,EAAE,CAAC;IAChB,CAAC;IAKO,YAAY,CAAC,EAA2B;QAC5C,OAAO,IAAI,CAAC,WAAW,KAAK,EAAE;YAC1B,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,IAAI,CAAA;IACd,CAAC;IAED;;OAEG;IACW,IAAI;;YACd,IAAI,CAAC,IAAI,CAAC,KAAK;gBACX,IAAI,CAAC,KAAK,GAAG,IAAI,OAAO,CAAC,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC/C,IAAI,CAAC;wBACD,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;wBAE1B,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;wBAEpB,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;wBAEzB,OAAO,OAAO,EAAE,CAAC;oBACrB,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACb,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;oBACzB,CAAC;gBACL,CAAC,CAAA,CAAC,CAAC;;gBAEH,MAAM,IAAI,CAAC,KAAK,CAAC;QACzB,CAAC;KAAA;IAQD,iEAAiE;IACjE,iEAAiE;IACjE,iEAAiE;IAEjE;;;;OAIG;IACa,YAAY;;YACxB,OAAO;QACX,CAAC;KAAA;IAED;;OAEG;IACa,MAAM;;YAClB,8BAA8B;YAC9B,IAAI,2BAAS,CAAC,WAAW,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;gBACvE,gDAAgD;gBAChD,+CAA+C;gBAC/C,0CAA0C;gBAC1C,oCAAoC;gBACpC,oCAAoC;gBACpC,MAAM;gBACN,mDAAmD;gBACnD,gDAAgD;gBAChD,oCAAoC;gBACpC,oCAAoC;gBACpC,MAAM;YACV,CAAC;QACL,CAAC;KAAA;IAED;;;;OAIG;IACa,WAAW;;YACvB,OAAO;QACX,CAAC;KAAA;CAEJ;AAzGD,gCAyGC"}
1
+ {"version":3,"file":"A-Fragment.class.js","sourceRoot":"","sources":["../../../../src/global/A-Fragment/A-Fragment.class.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kEAAyD;AAIzD;;;;;;;GAOG;AACH,MAAa,UAAU;IAWnB,YAAY,SAAgD,EAAE;QAE1D,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAEjD;;WAEG;QACH,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAEjD;;WAEG;QACH,IAAI,CAAC,IAAI,EAAE,CAAC;IAChB,CAAC;IAKO,YAAY,CAAC,EAA2B;QAC5C,OAAO,IAAI,CAAC,WAAW,KAAK,EAAE;YAC1B,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,IAAI,CAAA;IACd,CAAC;IAED;;OAEG;IACW,IAAI;;YACd,IAAI,CAAC,IAAI,CAAC,KAAK;gBACX,IAAI,CAAC,KAAK,GAAG,IAAI,OAAO,CAAC,CAAO,OAAO,EAAE,MAAM,EAAE,EAAE;oBAC/C,IAAI,CAAC;wBACD,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;wBAE1B,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;wBAEpB,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;wBAEzB,OAAO,OAAO,EAAE,CAAC;oBACrB,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACb,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;oBACzB,CAAC;gBACL,CAAC,CAAA,CAAC,CAAC;;gBAEH,MAAM,IAAI,CAAC,KAAK,CAAC;QACzB,CAAC;KAAA;IAQD,iEAAiE;IACjE,iEAAiE;IACjE,iEAAiE;IAEjE;;;;OAIG;IACa,YAAY;;YACxB,OAAO;QACX,CAAC;KAAA;IAED;;OAEG;IACa,MAAM;;YAClB,8BAA8B;YAC9B,IAAI,2BAAS,CAAC,WAAW,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;gBACvE,gDAAgD;gBAChD,+CAA+C;gBAC/C,0CAA0C;gBAC1C,oCAAoC;gBACpC,oCAAoC;gBACpC,MAAM;gBACN,mDAAmD;gBACnD,gDAAgD;gBAChD,oCAAoC;gBACpC,oCAAoC;gBACpC,MAAM;YACV,CAAC;QACL,CAAC;KAAA;IAED;;;;OAIG;IACa,WAAW;;YACvB,OAAO;QACX,CAAC;KAAA;IAMD;;;;OAIG;IACH,MAAM;QACF,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,IAAI;SAClB,CAAC;IACN,CAAC;CAEJ;AAxHD,gCAwHC"}
@@ -1,8 +1,8 @@
1
1
  import { A_TYPES__ScopeConfig, A_TYPES__ScopeConstructor } from "./A-Scope.types";
2
2
  import { A_Fragment } from "../A-Fragment/A-Fragment.class";
3
- import { A_TYPES__ComponentMeta_EntityInjectionInstructions, A_TYPES__ComponentMeta_InjectionParam } from "../A-Component/A-Component.types";
4
3
  import { A_Component } from "../A-Component/A-Component.class";
5
4
  import { A_Entity } from "../A-Entity/A-Entity.class";
5
+ import { A_TYPES__A_InjectDecorator_EntityInjectionInstructions, A_TYPES__A_InjectDecorator_Injectable } from "../../decorators/A-Inject/A-Inject.decorator.types";
6
6
  /**
7
7
  *
8
8
  *
@@ -25,8 +25,9 @@ export declare class A_Scope {
25
25
  protected params: A_TYPES__ScopeConstructor;
26
26
  constructor(params: Partial<A_TYPES__ScopeConstructor>, config?: Partial<A_TYPES__ScopeConfig>);
27
27
  private initComponents;
28
+ private initEntities;
28
29
  private initFragments;
29
- get components(): (new (...args: any[]) => any)[];
30
+ get components(): (new (...args: any[]) => A_Component)[];
30
31
  get fragments(): A_Fragment[];
31
32
  /**
32
33
  * This method is used to check if the component is available in the scope
@@ -43,11 +44,11 @@ export declare class A_Scope {
43
44
  * @param component
44
45
  * @returns
45
46
  */
46
- resolve<T extends A_TYPES__ComponentMeta_InjectionParam>(component: T): InstanceType<T>;
47
+ resolve<T extends A_TYPES__A_InjectDecorator_Injectable>(component: T): InstanceType<T>;
47
48
  resolve<T extends {
48
49
  new (...args: any[]): A_Entity;
49
- }>(entity: T, instructions: Partial<A_TYPES__ComponentMeta_EntityInjectionInstructions>): InstanceType<T>;
50
- resolve<T extends A_TYPES__ComponentMeta_InjectionParam>(component: Array<T>): Array<InstanceType<T>>;
50
+ }>(entity: T, instructions: Partial<A_TYPES__A_InjectDecorator_EntityInjectionInstructions>): InstanceType<T>;
51
+ resolve<T extends A_TYPES__A_InjectDecorator_Injectable>(component: Array<T>): Array<InstanceType<T>>;
51
52
  private resolveOnce;
52
53
  private resolveEntity;
53
54
  private resolveFragment;
@@ -61,4 +62,5 @@ export declare class A_Scope {
61
62
  register(entity: A_Entity): void;
62
63
  register(component: A_Component): void;
63
64
  register(fragment: A_Fragment): void;
65
+ toJSON(): Record<string, any>;
64
66
  }