@adaas/a-concept 0.0.49 → 0.0.52

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 (33) hide show
  1. package/dist/src/decorators/A-Feature/A-Feature-Extend.decorator.d.ts +1 -0
  2. package/dist/src/decorators/A-Feature/A-Feature-Extend.decorator.js +25 -6
  3. package/dist/src/decorators/A-Feature/A-Feature-Extend.decorator.js.map +1 -1
  4. package/dist/src/decorators/A-Feature/A-Feature.decorator.types.d.ts +26 -7
  5. package/dist/src/decorators/A-Inject/A-Inject.decorator.d.ts +2 -0
  6. package/dist/src/decorators/A-Inject/A-Inject.decorator.js.map +1 -1
  7. package/dist/src/global/A-Context/A-Context.class.js +2 -2
  8. package/dist/src/global/A-Context/A-Context.class.js.map +1 -1
  9. package/dist/src/global/A-Entity/A-Entity.class.js +1 -1
  10. package/dist/src/global/A-Entity/A-Entity.class.js.map +1 -1
  11. package/dist/src/global/A-Feature/A-Feature.class.d.ts +3 -0
  12. package/dist/src/global/A-Feature/A-Feature.class.js +5 -0
  13. package/dist/src/global/A-Feature/A-Feature.class.js.map +1 -1
  14. package/dist/src/global/A-Feature/A-Feature.types.d.ts +6 -0
  15. package/dist/src/global/A-Feature/A-Feature.types.js.map +1 -1
  16. package/dist/src/global/A-Feature/A-FeatureCaller.class.d.ts +21 -0
  17. package/dist/src/global/A-Feature/A-FeatureCaller.class.js +26 -0
  18. package/dist/src/global/A-Feature/A-FeatureCaller.class.js.map +1 -0
  19. package/dist/src/global/A-Stage/A-Stage.class.js +4 -2
  20. package/dist/src/global/A-Stage/A-Stage.class.js.map +1 -1
  21. package/examples/simple/components/A.component.ts +13 -3
  22. package/examples/simple/concept.ts +19 -3
  23. package/examples/simple/containers/Secondary.container.ts +26 -0
  24. package/package.json +1 -1
  25. package/src/decorators/A-Feature/A-Feature-Extend.decorator.ts +36 -12
  26. package/src/decorators/A-Feature/A-Feature.decorator.types.ts +24 -5
  27. package/src/decorators/A-Inject/A-Inject.decorator.ts +6 -4
  28. package/src/global/A-Context/A-Context.class.ts +3 -4
  29. package/src/global/A-Entity/A-Entity.class.ts +1 -1
  30. package/src/global/A-Feature/A-Feature.class.ts +9 -0
  31. package/src/global/A-Feature/A-Feature.types.ts +7 -1
  32. package/src/global/A-Feature/A-FeatureCaller.class.ts +37 -0
  33. package/src/global/A-Stage/A-Stage.class.ts +6 -2
@@ -30,3 +30,4 @@ export declare function A_Feature_Extend(config: Partial<A_TYPES__A_ExtendDecora
30
30
  * [!] AND it will be applicable for ANY element where the name is the same as the name of the function
31
31
  */
32
32
  export declare function A_Feature_Extend(): any;
33
+ export declare function buildTargetRegexp(param1: any, include: any[], exclude: any[], propertyKey: string): RegExp;
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.A_Feature_Extend = A_Feature_Extend;
4
+ exports.buildTargetRegexp = buildTargetRegexp;
4
5
  const A_Component_types_1 = require("../../global/A-Component/A-Component.types");
5
6
  const A_Context_class_1 = require("../../global/A-Context/A-Context.class");
6
7
  const A_Meta_class_1 = require("../../global/A-Meta/A-Meta.class");
@@ -10,16 +11,22 @@ function A_Feature_Extend(param1) {
10
11
  let behavior = 'sync';
11
12
  let before = [];
12
13
  let after = [];
14
+ let include = [];
15
+ let exclude = [];
13
16
  // Check if the config is a RegExp
14
17
  if (param1 instanceof RegExp) {
15
18
  targetRegexp = param1;
16
19
  }
17
- else if (!!param1) {
18
- targetRegexp = new RegExp(`^${param1.scope
19
- ? `(${param1.scope
20
- .map(el => el.name)
21
- .join('|')})`
22
- : '.*'}\\.${param1.name || propertyKey}$`);
20
+ else if (!!param1 && typeof param1 === 'object') {
21
+ if (Array.isArray(param1.scope))
22
+ include = param1.scope;
23
+ else if (!!param1.scope && typeof param1.scope === 'object') {
24
+ if (Array.isArray(param1.scope.include))
25
+ include = param1.scope.include;
26
+ if (Array.isArray(param1.scope.exclude))
27
+ exclude = param1.scope.exclude;
28
+ }
29
+ targetRegexp = buildTargetRegexp(param1, include, exclude, propertyKey);
23
30
  behavior = param1.behavior || behavior;
24
31
  before = param1.before || before;
25
32
  after = param1.after || after;
@@ -59,4 +66,16 @@ function A_Feature_Extend(param1) {
59
66
  .set(A_Component_types_1.A_TYPES__ComponentMetaKey.EXTENSIONS, existedMeta);
60
67
  };
61
68
  }
69
+ function buildTargetRegexp(param1, include, exclude, propertyKey) {
70
+ const includePart = include.length
71
+ ? `(${include.map(el => el.name).join('|')})`
72
+ : `.*`;
73
+ const excludePart = exclude.length
74
+ ? `(?!${exclude.map(el => el.name).join('|')})`
75
+ : ``;
76
+ const pattern = param1.scope
77
+ ? `^${excludePart}${includePart}\\.${param1.name || propertyKey}$`
78
+ : `.*\\.${param1.name || propertyKey}$`;
79
+ return new RegExp(pattern);
80
+ }
62
81
  //# sourceMappingURL=A-Feature-Extend.decorator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"A-Feature-Extend.decorator.js","sourceRoot":"","sources":["../../../../src/decorators/A-Feature/A-Feature-Extend.decorator.ts"],"names":[],"mappings":";;AA+CA,4CA8EC;AAxHD,6FAAkG;AAClG,uFAA8E;AAC9E,8EAAqE;AAwCrE,SAAgB,gBAAgB,CAC5B,MAA2D;IAE3D,OAAO,UACH,MAAmB,EACnB,WAAmB,EACnB,UAAgD;QAGhD,IAAI,YAAoB,CAAC;QACzB,IAAI,QAAQ,GAAqB,MAAM,CAAC;QACxC,IAAI,MAAM,GAAa,EAAE,CAAC;QAC1B,IAAI,KAAK,GAAa,EAAE,CAAC;QAGzB,kCAAkC;QAClC,IAAI,MAAM,YAAY,MAAM,EAAE,CAAC;YAC3B,YAAY,GAAG,MAAM,CAAC;QAC1B,CAAC;aACI,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;YAChB,YAAY,GAAG,IAAI,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK;gBACtC,CAAC,CAAC,IAAI,MAAM,CAAC,KAAK;qBACb,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;qBAClB,IAAI,CAAC,GAAG,CAAC,GAAG;gBACjB,CAAC,CAAC,IACF,MAAM,MAAM,CAAC,IAAI,IAAI,WAAW,GAAG,CAAC,CAAC;YAEzC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,QAAQ,CAAC;YACvC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC;YACjC,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC;QAClC,CAAC;aACI,CAAC;YACF,YAAY,GAAG,IAAI,MAAM,CAAC,SAAS,WAAW,GAAG,CAAC,CAAC;QACvD,CAAC;QAED,MAAM,kBAAkB,GAAG,2BAAS;aAC/B,IAAI,CAAC,MAAM,CAAC;aACZ,GAAG,CAAC,6CAAyB,CAAC,QAAQ,CAAC,CAAC;QAI7C,+CAA+C;QAC/C,MAAM,WAAW,GAAG,2BAAS;aACxB,IAAI,CAAC,MAAM,CAAC;aACZ,GAAG,CAAC,6CAAyB,CAAC,UAAU,CAAC;eACvC,IAAI,qBAAM,EAAE,CAAC;QAGpB,IAAI,kBAAkB;eACf,kBAAkB,CAAC,IAAI,EAAE;eACzB,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC;eACnC,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAE,CAAC,MAAM,EAChD,CAAC;YAEC,MAAM,IAAI,KAAK,CAAC,kDAAkD,WAAW;8GACqB,CAAC,CAAC;QACxG,CAAC;QAGD,MAAM,gBAAgB,GAAG,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAEpE,qCAAqC;QACrC,gBAAgB,CAAC,IAAI,CAAC;YAClB,IAAI,EAAE,YAAY,CAAC,MAAM;YACzB,OAAO,EAAE,WAAW;YACpB,QAAQ;YACR,MAAM;YACN,KAAK;SACR,CAAC,CAAC;QAEH,sEAAsE;QACtE,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QAEvD,wEAAwE;QACxE,2BAAS;aACJ,IAAI,CAAC,MAAM,CAAC;aACZ,GAAG,CAAC,6CAAyB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAChE,CAAC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"A-Feature-Extend.decorator.js","sourceRoot":"","sources":["../../../../src/decorators/A-Feature/A-Feature-Extend.decorator.ts"],"names":[],"mappings":"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"}
@@ -38,15 +38,34 @@ export type A_TYPES__A_ExtendDecoratorConfig = {
38
38
  *
39
39
  * [!] If not provided will be applied to all containers with the same name.
40
40
  * [!!] By default uses OR to join all provided items. If you need more complex Logic, please use Regexp instead
41
+ *
42
+ * [!!!] In case if you need to exclude some containers, entities or components, please use "exclude" property
43
+ *
44
+ * Example:
45
+ *
46
+ * ```ts
47
+ * @A_Feature.Extend({
48
+ * name: 'load',
49
+ * scope: {
50
+ * include: [A_Container1, A_Entity1],
51
+ * exclude: [A_Component1]
52
+ * }
53
+ * })
54
+ * ```
41
55
  */
42
- scope: Array<{
43
- new (...args: any[]): A_Container;
44
- } | {
45
- new (...args: any[]): A_Entity;
46
- } | {
47
- new (...args: any[]): A_Component;
48
- }>;
56
+ scope: Array<A_TYPES__A_ExtendDecorator_ScopeItem> | Partial<A_TYPES__A_ExtendDecorator_ScopeConfig>;
49
57
  } & A_TYPES__A_ExtendDecorator_BehaviorConfig;
58
+ export type A_TYPES__A_ExtendDecorator_ScopeItem = {
59
+ new (...args: any[]): A_Container;
60
+ } | {
61
+ new (...args: any[]): A_Entity;
62
+ } | {
63
+ new (...args: any[]): A_Component;
64
+ };
65
+ export type A_TYPES__A_ExtendDecorator_ScopeConfig = {
66
+ include?: Array<A_TYPES__A_ExtendDecorator_ScopeItem>;
67
+ exclude?: Array<A_TYPES__A_ExtendDecorator_ScopeItem>;
68
+ };
50
69
  export type A_TYPES__A_ExtendDecorator_BehaviorConfig = {
51
70
  /**
52
71
  * The behavior of the method.
@@ -4,6 +4,7 @@ import { A_Fragment } from "../../global/A-Fragment/A-Fragment.class";
4
4
  import { A_Scope } from "../../global/A-Scope/A-Scope.class";
5
5
  import { A_Feature } from "../../global/A-Feature/A-Feature.class";
6
6
  import { A_Entity } from "../../global/A-Entity/A-Entity.class";
7
+ import { A_FeatureCaller } from "../../global/A-Feature/A-FeatureCaller.class";
7
8
  /**
8
9
  * A-Inject decorator
9
10
  *
@@ -20,6 +21,7 @@ export declare function A_Inject(feature: typeof A_Feature): A_TYPES__A_InjectDe
20
21
  export declare function A_Inject(component: {
21
22
  new (...args: any[]): A_Component;
22
23
  }): A_TYPES__A_InjectDecoratorReturn;
24
+ export declare function A_Inject(container: typeof A_FeatureCaller): A_TYPES__A_InjectDecoratorReturn;
23
25
  export declare function A_Inject(fragment: {
24
26
  new (...args: any[]): A_Fragment;
25
27
  }): A_TYPES__A_InjectDecoratorReturn;
@@ -1 +1 @@
1
- {"version":3,"file":"A-Inject.decorator.js","sourceRoot":"","sources":["../../../../src/decorators/A-Inject/A-Inject.decorator.ts"],"names":[],"mappings":";;AAqDA,4BA+DC;AAhHD,6FAAoF;AAGpF,uFAA8E;AAC9E,6FAAkG;AAClG,8EAAqE;AAGrE,6FAAoF;AACpF,6FAAkG;AAClG,4CAAgD;AAsChD,8DAA8D;AAC9D,SAAgB,QAAQ,CACpB,MAIuC,EACvC,MAAwE;IAExE,OAAO,UACH,MAAmB,EACnB,UAAuC,EACvC,cAAsB;QAGtB,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;QAE/D,IAAI,OAAO,CAAC;QAEZ,QAAQ,IAAI,EAAE,CAAC;YAEX,KAAK,MAAM,YAAY,+BAAW;gBAC9B,OAAO,GAAG,6CAAyB,CAAC,UAAU,CAAC;gBAC/C,MAAM;YAEV,KAAK,wBAAc,CAAC,eAAe,CAAC,MAAM,EAAE,+BAAW,CAAC;gBACpD,OAAO,GAAG,6CAAyB,CAAC,UAAU,CAAC;gBAC/C,MAAM;YAEV,KAAK,wBAAc,CAAC,eAAe,CAAC,MAAM,EAAE,+BAAW,CAAC;gBACpD,OAAO,GAAG,6CAAyB,CAAC,UAAU,CAAC;gBAC/C,MAAM;YAEV,KAAK,MAAM,YAAY,+BAAW;gBAC9B,OAAO,GAAG,6CAAyB,CAAC,UAAU,CAAC;gBAC/C,MAAM;YAGV;gBACI,MAAM,IAAI,KAAK,CAAC,qCAAqC,MAAM,QAAQ,CAAC,CAAC;QAC7E,CAAC;QAED,MAAM,WAAW,GAAG,2BAAS;aACxB,IAAI,CAAC,MAAM,CAAC;aACZ,GAAG,CAAC,OAAO,CAAC;eACV,IAAI,qBAAM,EAAE,CAAC;QAGpB,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAElD,WAAW,CAAC,cAAc,CAAC,GAAG;YAC1B,MAAM,EAAE,MAAM;YACd,YAAY,EAAE,MAAM;SACvB,CAAA;QAED,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAErC,2BAAS;aACJ,IAAI,CAAC,MAAM,CAAC;aACZ,GAAG,CACA,OAAO,EACP,WAAW,CACd,CAAC;IACV,CAAC,CAAA;AACL,CAAC"}
1
+ {"version":3,"file":"A-Inject.decorator.js","sourceRoot":"","sources":["../../../../src/decorators/A-Inject/A-Inject.decorator.ts"],"names":[],"mappings":";;AAsDA,4BAgEC;AAlHD,6FAAoF;AAGpF,uFAA8E;AAC9E,6FAAkG;AAClG,8EAAqE;AAGrE,6FAAoF;AACpF,6FAAkG;AAClG,4CAAgD;AAuChD,8DAA8D;AAC9D,SAAgB,QAAQ,CACpB,MAKuC,EACvC,MAAwE;IAExE,OAAO,UACH,MAAmB,EACnB,UAAuC,EACvC,cAAsB;QAGtB,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;QAE/D,IAAI,OAAO,CAAC;QAEZ,QAAQ,IAAI,EAAE,CAAC;YAEX,KAAK,MAAM,YAAY,+BAAW;gBAC9B,OAAO,GAAG,6CAAyB,CAAC,UAAU,CAAC;gBAC/C,MAAM;YAEV,KAAK,wBAAc,CAAC,eAAe,CAAC,MAAM,EAAE,+BAAW,CAAC;gBACpD,OAAO,GAAG,6CAAyB,CAAC,UAAU,CAAC;gBAC/C,MAAM;YAEV,KAAK,wBAAc,CAAC,eAAe,CAAC,MAAM,EAAE,+BAAW,CAAC;gBACpD,OAAO,GAAG,6CAAyB,CAAC,UAAU,CAAC;gBAC/C,MAAM;YAEV,KAAK,MAAM,YAAY,+BAAW;gBAC9B,OAAO,GAAG,6CAAyB,CAAC,UAAU,CAAC;gBAC/C,MAAM;YAGV;gBACI,MAAM,IAAI,KAAK,CAAC,qCAAqC,MAAM,QAAQ,CAAC,CAAC;QAC7E,CAAC;QAED,MAAM,WAAW,GAAG,2BAAS;aACxB,IAAI,CAAC,MAAM,CAAC;aACZ,GAAG,CAAC,OAAO,CAAC;eACV,IAAI,qBAAM,EAAE,CAAC;QAGpB,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAElD,WAAW,CAAC,cAAc,CAAC,GAAG;YAC1B,MAAM,EAAE,MAAM;YACd,YAAY,EAAE,MAAM;SACvB,CAAA;QAED,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAErC,2BAAS;aACJ,IAAI,CAAC,MAAM,CAAC;aACZ,GAAG,CACA,OAAO,EACP,WAAW,CACd,CAAC;IACV,CAAC,CAAA;AACL,CAAC"}
@@ -255,7 +255,7 @@ class A_Context {
255
255
  steps.push(Object.assign({ component: constructor }, declaration));
256
256
  });
257
257
  });
258
- return { name, steps, scope };
258
+ return { name, steps, scope, caller: component };
259
259
  }
260
260
  /**
261
261
  * This method returns a constructor params to create a new feature
@@ -300,7 +300,7 @@ class A_Context {
300
300
  steps.push(Object.assign({ component: constructor }, declaration));
301
301
  });
302
302
  });
303
- return { name, steps, scope };
303
+ return { name, steps, scope, caller: component };
304
304
  }
305
305
  /**
306
306
  * This method returns a step-by-step instructions of feature implementation depending on the feature name and the class.
@@ -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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"}
@@ -26,7 +26,7 @@ class A_Entity {
26
26
  */
27
27
  static get entity() {
28
28
  return a_utils_1.A_CommonHelper
29
- .toUpperSnakeCase(this.constructor.name)
29
+ .toUpperSnakeCase(this.name)
30
30
  .toLocaleLowerCase()
31
31
  .replace(/_/g, '-');
32
32
  }
@@ -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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"}
@@ -5,6 +5,7 @@ import { A_TYPES__A_Feature_Extend } from "../../decorators/A-Feature/A-Feature.
5
5
  import { A_Stage } from "../A-Stage/A-Stage.class";
6
6
  import { StepsManager } from "../../helpers/StepsManager.class";
7
7
  import { A_Scope } from "../A-Scope/A-Scope.class";
8
+ import { A_FeatureCaller } from "./A-FeatureCaller.class";
8
9
  /**
9
10
  * A_Feature is representing a feature that can be executed across multiple components
10
11
  * This class stores the steps of the feature and executes them in order of appearance
@@ -24,6 +25,7 @@ export declare class A_Feature {
24
25
  static get Extend(): A_TYPES__A_Feature_Extend;
25
26
  protected stages: Array<A_Stage>;
26
27
  protected _current?: A_Stage;
28
+ protected _caller: A_FeatureCaller;
27
29
  protected _index: number;
28
30
  protected SM: StepsManager;
29
31
  state: A_TYPES__FeatureState;
@@ -37,6 +39,7 @@ export declare class A_Feature {
37
39
  *
38
40
  */
39
41
  get stage(): A_Stage | undefined;
42
+ get Caller(): A_FeatureCaller;
40
43
  /**
41
44
  * Custom iterator to iterate over the steps of the feature
42
45
  *
@@ -16,6 +16,7 @@ const A_Feature_types_1 = require("./A-Feature.types");
16
16
  const a_utils_1 = require("@adaas/a-utils");
17
17
  const StepsManager_class_1 = require("../../helpers/StepsManager.class");
18
18
  const A_Stage_error_1 = require("../A-Stage/A-Stage.error");
19
+ const A_FeatureCaller_class_1 = require("./A-FeatureCaller.class");
19
20
  /**
20
21
  * A_Feature is representing a feature that can be executed across multiple components
21
22
  * This class stores the steps of the feature and executes them in order of appearance
@@ -47,6 +48,7 @@ class A_Feature {
47
48
  this.SM = new StepsManager_class_1.StepsManager(params.steps);
48
49
  this.stages = this.SM.toStages(this);
49
50
  this._current = this.stages[0];
51
+ this._caller = new A_FeatureCaller_class_1.A_FeatureCaller(params.caller);
50
52
  }
51
53
  /**
52
54
  * Returns the current A-Feature Stage
@@ -55,6 +57,9 @@ class A_Feature {
55
57
  get stage() {
56
58
  return this._current;
57
59
  }
60
+ get Caller() {
61
+ return this._caller;
62
+ }
58
63
  /**
59
64
  * Custom iterator to iterate over the steps of the feature
60
65
  *
@@ -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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"}
@@ -2,6 +2,8 @@ import { A_TYPES__A_StageStep } from "../A-Stage/A-Stage.types";
2
2
  import { A_Fragment } from "../A-Fragment/A-Fragment.class";
3
3
  import { A_Entity } from "../A-Entity/A-Entity.class";
4
4
  import { A_Scope } from "../A-Scope/A-Scope.class";
5
+ import { A_Container } from "../A-Container/A-Container.class";
6
+ import { A_Component } from "../A-Component/A-Component.class";
5
7
  export type A_TYPES__FeatureIteratorReturn<T extends any = any> = () => Promise<T>;
6
8
  export type A_TYPES__FeatureCallParams = {
7
9
  fragments: Array<A_Fragment>;
@@ -23,6 +25,10 @@ export type A_TYPES__FeatureConstructor = {
23
25
  * Scope in which the A-Feature will be executed
24
26
  */
25
27
  scope: A_Scope;
28
+ /**
29
+ *
30
+ */
31
+ caller: A_Component | A_Entity | A_Container;
26
32
  };
27
33
  export declare enum A_TYPES__FeatureState {
28
34
  INITIALIZED = "INITIALIZED",
@@ -1 +1 @@
1
- {"version":3,"file":"A-Feature.types.js","sourceRoot":"","sources":["../../../../src/global/A-Feature/A-Feature.types.ts"],"names":[],"mappings":";;;AAiCA,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"}
1
+ {"version":3,"file":"A-Feature.types.js","sourceRoot":"","sources":["../../../../src/global/A-Feature/A-Feature.types.ts"],"names":[],"mappings":";;;AAuCA,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"}
@@ -0,0 +1,21 @@
1
+ import { A_Component } from "../A-Component/A-Component.class";
2
+ import { A_Container } from "../A-Container/A-Container.class";
3
+ import { A_Feature } from "./A-Feature.class";
4
+ /**
5
+ * This is a common class that uses to return an entity that initiates a feature call
6
+ *
7
+ * It can be used then in @A_Inject(A_FeatureCaller) to get the entity that initiated the feature call
8
+ *
9
+ * [!] the class itself may be retrieved, but may require additional processing inside the feature
10
+ *
11
+ */
12
+ export declare class A_FeatureCaller {
13
+ protected _component: A_Component | A_Feature | A_Container;
14
+ constructor(component: A_Component | A_Feature | A_Container);
15
+ /**
16
+ * Resolves the component that initiated the feature call
17
+ *
18
+ * @returns
19
+ */
20
+ resolve(): A_Component | A_Feature | A_Container;
21
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.A_FeatureCaller = void 0;
4
+ /**
5
+ * This is a common class that uses to return an entity that initiates a feature call
6
+ *
7
+ * It can be used then in @A_Inject(A_FeatureCaller) to get the entity that initiated the feature call
8
+ *
9
+ * [!] the class itself may be retrieved, but may require additional processing inside the feature
10
+ *
11
+ */
12
+ class A_FeatureCaller {
13
+ constructor(component) {
14
+ this._component = component;
15
+ }
16
+ /**
17
+ * Resolves the component that initiated the feature call
18
+ *
19
+ * @returns
20
+ */
21
+ resolve() {
22
+ return this._component;
23
+ }
24
+ }
25
+ exports.A_FeatureCaller = A_FeatureCaller;
26
+ //# sourceMappingURL=A-FeatureCaller.class.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"A-FeatureCaller.class.js","sourceRoot":"","sources":["../../../../src/global/A-Feature/A-FeatureCaller.class.ts"],"names":[],"mappings":";;;AAMA;;;;;;;GAOG;AACH,MAAa,eAAe;IAKxB,YACI,SAAgD;QAEhD,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAChC,CAAC;IAGD;;;;OAIG;IACH,OAAO;QACH,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;CAGJ;AAtBD,0CAsBC"}
@@ -17,6 +17,7 @@ const A_Stage_types_1 = require("./A-Stage.types");
17
17
  const A_Container_class_1 = require("../A-Container/A-Container.class");
18
18
  const A_Scope_class_1 = require("../A-Scope/A-Scope.class");
19
19
  const A_Stage_error_1 = require("./A-Stage.error");
20
+ const A_FeatureCaller_class_1 = require("../A-Feature/A-FeatureCaller.class");
20
21
  /**
21
22
  * A_Stage is a set of A_Functions within A_Feature that should be run in a specific order.
22
23
  * Each stage may contain one or more functions.
@@ -74,10 +75,11 @@ class A_Stage {
74
75
  : step.component)
75
76
  .injections(step.handler)
76
77
  .map((arg) => __awaiter(this, void 0, void 0, function* () {
78
+ if (a_utils_1.A_CommonHelper.isInheritedFrom(arg.target, A_FeatureCaller_class_1.A_FeatureCaller))
79
+ return this.feature.Caller.resolve();
77
80
  if (a_utils_1.A_CommonHelper.isInheritedFrom(arg.target, A_Feature_class_1.A_Feature))
78
81
  return this.feature;
79
- return scope
80
- .resolve(arg.target);
82
+ return scope.resolve(arg.target);
81
83
  })));
82
84
  });
83
85
  }
@@ -1 +1 @@
1
- {"version":3,"file":"A-Stage.class.js","sourceRoot":"","sources":["../../../../src/global/A-Stage/A-Stage.class.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"A-Stage.class.js","sourceRoot":"","sources":["../../../../src/global/A-Stage/A-Stage.class.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,9 @@ import { ContextFragmentB } from "../context/Fragment_B.context";
4
4
  import { A_Inject } from "@adaas/a-concept/decorators/A-Inject/A-Inject.decorator";
5
5
  import { A_Component } from "@adaas/a-concept/global/A-Component/A-Component.class";
6
6
  import { A_Logger } from "@adaas/a-concept/base/A-Logger/A-Logger.component";
7
+ import { SecondaryContainer } from "../containers/Secondary.container";
8
+ import { A_FeatureCaller } from "@adaas/a-concept/global/A-Feature/A-FeatureCaller.class";
9
+ import { A_Container } from "@adaas/a-concept/global/A-Container/A-Container.class";
7
10
 
8
11
  export class ComponentA extends A_Component {
9
12
 
@@ -13,11 +16,13 @@ export class ComponentA extends A_Component {
13
16
 
14
17
 
15
18
 
16
- @A_Feature.Define()
19
+ @A_Feature.Define()
17
20
  async method_A(
18
21
  @A_Inject(ContextFragmentA) fragmentA: ContextFragmentA,
19
22
  @A_Inject(A_Logger) logger: A_Logger,
20
23
  ) {
24
+
25
+
21
26
  logger.log('red', 'Component A -> method_A()');
22
27
  fragmentA.decrement();
23
28
  }
@@ -28,9 +33,12 @@ export class ComponentA extends A_Component {
28
33
  name: 'method_A'
29
34
  })
30
35
  async someMethod(
31
- @A_Inject(ContextFragmentB) fragmentB: ContextFragmentB
36
+ @A_Inject(ContextFragmentB) fragmentB: ContextFragmentB,
37
+ @A_Inject(A_Logger) logger: A_Logger,
38
+ @A_Inject(A_FeatureCaller) caller: A_Container
32
39
  ) {
33
40
  // throw new Error('Some error occurred');
41
+ logger.log('caller', caller);
34
42
 
35
43
  return new Promise<void>((resolve, reject) => {
36
44
  setTimeout(() => {
@@ -45,7 +53,9 @@ export class ComponentA extends A_Component {
45
53
  }
46
54
 
47
55
 
48
- @A_Feature.Extend()
56
+ @A_Feature.Extend({
57
+ scope: [SecondaryContainer]
58
+ })
49
59
  async method_C(
50
60
  @A_Inject(A_Logger) logger: A_Logger
51
61
  ) {
@@ -10,6 +10,7 @@ import { ENVConfigReader } from "@adaas/a-concept/base/A-Config/components/ENVCo
10
10
  import { A_Concept } from "@adaas/a-concept/global/A-Concept/A_Concept.class";
11
11
  import { A_Entity } from "@adaas/a-concept/global/A-Entity/A-Entity.class";
12
12
  import { A_Feature } from "@adaas/a-concept/global/A-Feature/A-Feature.class";
13
+ import { SecondaryContainer } from "./containers/Secondary.container";
13
14
 
14
15
  console.log('Simple concept loaded', A_Concept);
15
16
 
@@ -28,6 +29,19 @@ console.log('Simple concept loaded', A_Concept);
28
29
  ]
29
30
  })
30
31
 
32
+ const second = new SecondaryContainer({
33
+ name: 'SecondaryContainer',
34
+ components: [
35
+ A_Logger,
36
+ ComponentA,
37
+ ComponentB
38
+ ],
39
+ fragments: [
40
+ new ContextFragmentA(),
41
+ new ContextFragmentB()
42
+ ]
43
+ })
44
+
31
45
  const concept = new A_Concept({
32
46
  name: 'test-simple',
33
47
  fragments: [
@@ -44,7 +58,8 @@ console.log('Simple concept loaded', A_Concept);
44
58
  ENVConfigReader
45
59
  ]
46
60
  }),
47
- main
61
+ main,
62
+ second
48
63
  ]
49
64
  });
50
65
 
@@ -52,13 +67,14 @@ console.log('Simple concept loaded', A_Concept);
52
67
  // await concept.start();
53
68
 
54
69
 
55
- // await main.method_B()
70
+ await main.method_A()
56
71
 
57
72
 
58
73
  // await main.method_C();
59
74
 
60
75
  try {
61
- await main.call('method_A')
76
+ await main.call('method_C')
77
+ await second.call('method_C')
62
78
 
63
79
  } catch (error) {
64
80
  console.error('Error occurred:', error);
@@ -0,0 +1,26 @@
1
+ import { A_Logger } from "@adaas/a-concept/base/A-Logger/A-Logger.component";
2
+ import { A_Inject } from "@adaas/a-concept/decorators/A-Inject/A-Inject.decorator";
3
+ import { A_Concept } from "@adaas/a-concept/global/A-Concept/A_Concept.class";
4
+ import { A_Container } from "@adaas/a-concept/global/A-Container/A-Container.class";
5
+ import { A_Scope } from "@adaas/a-concept/global/A-Scope/A-Scope.class";
6
+
7
+
8
+
9
+ export class SecondaryContainer extends A_Container {
10
+
11
+ @A_Concept.Load()
12
+ async load(
13
+ @A_Inject(A_Logger) logger: A_Logger
14
+
15
+ ) {
16
+ logger.log('Secondary container loaded');
17
+ }
18
+
19
+ @A_Concept.Start()
20
+ async start(
21
+ @A_Inject(A_Scope) scope: A_Scope,
22
+ @A_Inject(A_Logger) logger: A_Logger
23
+ ) {
24
+ await this.call('method_C');
25
+ }
26
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adaas/a-concept",
3
- "version": "0.0.49",
3
+ "version": "0.0.52",
4
4
  "description": "A-Concept is a framework to build new Applications within or outside the ADAAS ecosystem. This framework is designed to be modular structure regardless environment and program goal.",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",
@@ -1,5 +1,6 @@
1
1
  import { A_Component } from "@adaas/a-concept/global/A-Component/A-Component.class";
2
2
  import {
3
+ A_TYPES__A_ExtendDecorator_ScopeItem,
3
4
  A_TYPES__A_ExtendDecoratorConfig,
4
5
  A_TYPES__A_ExtendDecoratorDescriptor,
5
6
  } from "./A-Feature.decorator.types";
@@ -58,25 +59,31 @@ export function A_Feature_Extend(
58
59
  let behavior: 'sync' | 'async' = 'sync';
59
60
  let before: string[] = [];
60
61
  let after: string[] = [];
61
-
62
+ let include: Array<A_TYPES__A_ExtendDecorator_ScopeItem> = [];
63
+ let exclude: Array<A_TYPES__A_ExtendDecorator_ScopeItem> = [];
62
64
 
63
65
  // Check if the config is a RegExp
64
66
  if (param1 instanceof RegExp) {
65
67
  targetRegexp = param1;
66
68
  }
67
- else if (!!param1) {
68
- targetRegexp = new RegExp(`^${param1.scope
69
- ? `(${param1.scope
70
- .map(el => el.name)
71
- .join('|')})`
72
- : '.*'
73
- }\\.${param1.name || propertyKey}$`);
69
+ else if (!!param1 && typeof param1 === 'object') {
70
+
71
+ if (Array.isArray(param1.scope))
72
+ include = param1.scope;
73
+ else if (!!param1.scope && typeof param1.scope === 'object') {
74
+ if (Array.isArray(param1.scope.include))
75
+ include = param1.scope.include;
76
+ if (Array.isArray(param1.scope.exclude))
77
+ exclude = param1.scope.exclude;
78
+ }
79
+
80
+
81
+ targetRegexp = buildTargetRegexp(param1, include, exclude, propertyKey);
74
82
 
75
83
  behavior = param1.behavior || behavior;
76
84
  before = param1.before || before;
77
85
  after = param1.after || after;
78
- }
79
- else {
86
+ } else {
80
87
  targetRegexp = new RegExp(`^.*\\.${propertyKey}$`);
81
88
  }
82
89
 
@@ -93,8 +100,8 @@ export function A_Feature_Extend(
93
100
  || new A_Meta();
94
101
 
95
102
 
96
- if (existedDefinitions
97
- && existedDefinitions.size()
103
+ if (existedDefinitions
104
+ && existedDefinitions.size()
98
105
  && existedDefinitions.has(propertyKey)
99
106
  && existedDefinitions.get(propertyKey)!.invoke
100
107
  ) {
@@ -125,3 +132,20 @@ export function A_Feature_Extend(
125
132
  };
126
133
  }
127
134
 
135
+
136
+
137
+ export function buildTargetRegexp(param1: any, include: any[], exclude: any[], propertyKey: string) {
138
+ const includePart = include.length
139
+ ? `(${include.map(el => el.name).join('|')})`
140
+ : `.*`;
141
+
142
+ const excludePart = exclude.length
143
+ ? `(?!${exclude.map(el => el.name).join('|')})`
144
+ : ``;
145
+
146
+ const pattern = param1.scope
147
+ ? `^${excludePart}${includePart}\\.${param1.name || propertyKey}$`
148
+ : `.*\\.${param1.name || propertyKey}$`;
149
+
150
+ return new RegExp(pattern);
151
+ }
@@ -73,14 +73,33 @@ export type A_TYPES__A_ExtendDecoratorConfig = {
73
73
  *
74
74
  * [!] If not provided will be applied to all containers with the same name.
75
75
  * [!!] By default uses OR to join all provided items. If you need more complex Logic, please use Regexp instead
76
+ *
77
+ * [!!!] In case if you need to exclude some containers, entities or components, please use "exclude" property
78
+ *
79
+ * Example:
80
+ *
81
+ * ```ts
82
+ * @A_Feature.Extend({
83
+ * name: 'load',
84
+ * scope: {
85
+ * include: [A_Container1, A_Entity1],
86
+ * exclude: [A_Component1]
87
+ * }
88
+ * })
89
+ * ```
76
90
  */
77
- scope: Array<
78
- { new(...args: any[]): A_Container }
79
- | { new(...args: any[]): A_Entity }
80
- | { new(...args: any[]): A_Component }
81
- >
91
+ scope: Array<A_TYPES__A_ExtendDecorator_ScopeItem> | Partial<A_TYPES__A_ExtendDecorator_ScopeConfig>,
82
92
  } & A_TYPES__A_ExtendDecorator_BehaviorConfig
83
93
 
94
+ export type A_TYPES__A_ExtendDecorator_ScopeItem = { new(...args: any[]): A_Container }
95
+ | { new(...args: any[]): A_Entity }
96
+ | { new(...args: any[]): A_Component }
97
+
98
+
99
+ export type A_TYPES__A_ExtendDecorator_ScopeConfig = {
100
+ include?: Array<A_TYPES__A_ExtendDecorator_ScopeItem>,
101
+ exclude?: Array<A_TYPES__A_ExtendDecorator_ScopeItem>
102
+ }
84
103
 
85
104
  export type A_TYPES__A_ExtendDecorator_BehaviorConfig = {
86
105
  /**
@@ -13,6 +13,7 @@ import { A_Entity } from "@adaas/a-concept/global/A-Entity/A-Entity.class";
13
13
  import { A_Container } from "@adaas/a-concept/global/A-Container/A-Container.class";
14
14
  import { A_TYPES__ContainerMetaKey } from "@adaas/a-concept/global/A-Container/A-Container.types";
15
15
  import { A_CommonHelper } from "@adaas/a-utils";
16
+ import { A_FeatureCaller } from "@adaas/a-concept/global/A-Feature/A-FeatureCaller.class";
16
17
 
17
18
 
18
19
 
@@ -36,10 +37,10 @@ export function A_Inject(
36
37
  export function A_Inject(
37
38
  component: { new(...args: any[]): A_Component }
38
39
  ): A_TYPES__A_InjectDecoratorReturn
39
- // Allows to inject just one container
40
- // export function A_Inject(
41
- // container: typeof A_Container
42
- // ): A_TYPES__A_InjectDecoratorReturn
40
+ // Allows to inject just one A_FeatureCaller
41
+ export function A_Inject(
42
+ container: typeof A_FeatureCaller
43
+ ): A_TYPES__A_InjectDecoratorReturn
43
44
  // Allows to inject just one Context Fragment
44
45
  export function A_Inject(
45
46
  fragment: { new(...args: any[]): A_Fragment }
@@ -54,6 +55,7 @@ export function A_Inject(
54
55
  export function A_Inject(
55
56
  param1: typeof A_Scope
56
57
  | typeof A_Feature
58
+ | typeof A_FeatureCaller
57
59
  | { new(...args: any[]): A_Component }
58
60
  | { new(...args: any[]): A_Fragment }
59
61
  | { new(...args: any[]): A_Entity },
@@ -1,7 +1,6 @@
1
1
  import {
2
2
  A_CommonHelper,
3
3
  A_Polyfills,
4
- A_TYPES__Required,
5
4
  } from "@adaas/a-utils";
6
5
  import { A_Component } from "../A-Component/A-Component.class";
7
6
  import { A_Fragment } from "../A-Fragment/A-Fragment.class";
@@ -12,7 +11,7 @@ import { A_TYPES__ScopeConfig, A_TYPES__ScopeConstructor } from "../A-Scope/A-Sc
12
11
  import { A_Meta } from "../A-Meta/A-Meta.class";
13
12
  import { A_ComponentMeta } from "../A-Component/A-Component.meta";
14
13
  import { A_ContainerMeta } from "../A-Container/A-Container.meta";
15
- import { A_TYPES__EntityBaseMethod, A_TYPES__EntityMetaKey } from "../A-Entity/A-Entity.types";
14
+ import { A_TYPES__EntityMetaKey } from "../A-Entity/A-Entity.types";
16
15
  import { A_Entity } from "../A-Entity/A-Entity.class";
17
16
  import { A_EntityMeta } from "../A-Entity/A-Entity.meta";
18
17
  import { A_TYPES__FeatureConstructor } from "../A-Feature/A-Feature.types";
@@ -452,7 +451,7 @@ export class A_Context {
452
451
 
453
452
 
454
453
 
455
- return { name, steps, scope };
454
+ return { name, steps, scope, caller: component };
456
455
  }
457
456
 
458
457
  /**
@@ -514,7 +513,7 @@ export class A_Context {
514
513
  });
515
514
 
516
515
 
517
- return { name, steps, scope };
516
+ return { name, steps, scope, caller: component };
518
517
  }
519
518
 
520
519
  /**
@@ -35,7 +35,7 @@ export class A_Entity<
35
35
  */
36
36
  static get entity(): string {
37
37
  return A_CommonHelper
38
- .toUpperSnakeCase(this.constructor.name)
38
+ .toUpperSnakeCase(this.name)
39
39
  .toLocaleLowerCase()
40
40
  .replace(/_/g, '-');
41
41
  }
@@ -8,6 +8,7 @@ import { A_Stage } from "../A-Stage/A-Stage.class";
8
8
  import { StepsManager } from "@adaas/a-concept/helpers/StepsManager.class";
9
9
  import { A_Scope } from "../A-Scope/A-Scope.class";
10
10
  import { A_StageError } from "../A-Stage/A-Stage.error";
11
+ import { A_FeatureCaller } from "./A-FeatureCaller.class";
11
12
 
12
13
  /**
13
14
  * A_Feature is representing a feature that can be executed across multiple components
@@ -39,6 +40,7 @@ export class A_Feature {
39
40
  // protected scope: A_Scope
40
41
  protected stages: Array<A_Stage> = [];
41
42
  protected _current?: A_Stage;
43
+ protected _caller!: A_FeatureCaller;
42
44
  protected _index: number = 0;
43
45
  protected SM: StepsManager;
44
46
 
@@ -62,6 +64,8 @@ export class A_Feature {
62
64
  this.stages = this.SM.toStages(this);
63
65
 
64
66
  this._current = this.stages[0];
67
+
68
+ this._caller = new A_FeatureCaller(params.caller);
65
69
  }
66
70
 
67
71
 
@@ -74,6 +78,11 @@ export class A_Feature {
74
78
  }
75
79
 
76
80
 
81
+ get Caller(): A_FeatureCaller {
82
+ return this._caller;
83
+ }
84
+
85
+
77
86
  /**
78
87
  * Custom iterator to iterate over the steps of the feature
79
88
  *
@@ -3,6 +3,8 @@ import { A_TYPES__A_StageStep } from "../A-Stage/A-Stage.types"
3
3
  import { A_Fragment } from "../A-Fragment/A-Fragment.class"
4
4
  import { A_Entity } from "@adaas/a-concept/global/A-Entity/A-Entity.class"
5
5
  import { A_Scope } from "../A-Scope/A-Scope.class"
6
+ import { A_Container } from "../A-Container/A-Container.class"
7
+ import { A_Component } from "../A-Component/A-Component.class"
6
8
 
7
9
 
8
10
  export type A_TYPES__FeatureIteratorReturn<T extends any = any> = () => Promise<T>
@@ -20,7 +22,7 @@ export type A_TYPES__FeatureConstructor = {
20
22
  /**
21
23
  * Name of the A-Feature
22
24
  */
23
- name:string,
25
+ name: string,
24
26
  /**
25
27
  * Steps that compose the A-Feature
26
28
  */
@@ -29,6 +31,10 @@ export type A_TYPES__FeatureConstructor = {
29
31
  * Scope in which the A-Feature will be executed
30
32
  */
31
33
  scope: A_Scope
34
+ /**
35
+ *
36
+ */
37
+ caller: A_Component | A_Entity | A_Container
32
38
  }
33
39
 
34
40
  export enum A_TYPES__FeatureState {
@@ -0,0 +1,37 @@
1
+ import { A_Component } from "../A-Component/A-Component.class";
2
+ import { A_Container } from "../A-Container/A-Container.class";
3
+ import { A_Feature } from "./A-Feature.class";
4
+
5
+
6
+
7
+ /**
8
+ * This is a common class that uses to return an entity that initiates a feature call
9
+ *
10
+ * It can be used then in @A_Inject(A_FeatureCaller) to get the entity that initiated the feature call
11
+ *
12
+ * [!] the class itself may be retrieved, but may require additional processing inside the feature
13
+ *
14
+ */
15
+ export class A_FeatureCaller {
16
+
17
+
18
+ protected _component: A_Component | A_Feature | A_Container;
19
+
20
+ constructor(
21
+ component: A_Component | A_Feature | A_Container
22
+ ) {
23
+ this._component = component;
24
+ }
25
+
26
+
27
+ /**
28
+ * Resolves the component that initiated the feature call
29
+ *
30
+ * @returns
31
+ */
32
+ resolve(): A_Component | A_Feature | A_Container {
33
+ return this._component;
34
+ }
35
+
36
+
37
+ }
@@ -5,6 +5,7 @@ import { A_TYPES__A_Stage_JSON, A_TYPES__A_Stage_Status, A_TYPES__A_StageStep, A
5
5
  import { A_Container } from "../A-Container/A-Container.class";
6
6
  import { A_Scope } from "../A-Scope/A-Scope.class";
7
7
  import { A_StageError } from "./A-Stage.error";
8
+ import { A_FeatureCaller } from "../A-Feature/A-FeatureCaller.class";
8
9
 
9
10
 
10
11
  /**
@@ -92,11 +93,14 @@ export class A_Stage {
92
93
  )
93
94
  .injections(step.handler)
94
95
  .map(async arg => {
96
+ if (A_CommonHelper.isInheritedFrom(arg.target, A_FeatureCaller))
97
+ return this.feature.Caller.resolve();
98
+
99
+
95
100
  if (A_CommonHelper.isInheritedFrom(arg.target, A_Feature))
96
101
  return this.feature;
97
102
 
98
- return scope
99
- .resolve(arg.target)
103
+ return scope.resolve(arg.target)
100
104
  })
101
105
  )
102
106
  }