@adaas/a-concept 0.0.56 → 0.0.58

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 (104) hide show
  1. package/.nvmrc +1 -1
  2. package/dist/src/base/A-Command/A_Command.constants.d.ts +12 -0
  3. package/dist/src/base/A-Command/A_Command.constants.js +17 -0
  4. package/dist/src/base/A-Command/A_Command.constants.js.map +1 -0
  5. package/dist/src/base/A-Command/A_Command.entity.d.ts +123 -0
  6. package/dist/src/base/A-Command/A_Command.entity.js +259 -0
  7. package/dist/src/base/A-Command/A_Command.entity.js.map +1 -0
  8. package/dist/src/base/A-Command/A_Command.types.d.ts +15 -0
  9. package/dist/src/base/A-Command/A_Command.types.js +3 -0
  10. package/dist/src/base/A-Command/A_Command.types.js.map +1 -0
  11. package/dist/src/base/A-Command/context/A_Command.context.d.ts +64 -0
  12. package/dist/src/base/A-Command/context/A_Command.context.js +85 -0
  13. package/dist/src/base/A-Command/context/A_Command.context.js.map +1 -0
  14. package/dist/src/base/A-Command/context/A_CommandFactory.context.js +2 -0
  15. package/dist/src/base/A-Command/context/A_CommandFactory.context.js.map +1 -0
  16. package/dist/src/base/A-Config/A-Config.container.d.ts +1 -2
  17. package/dist/src/base/A-Config/A-Config.container.js +2 -4
  18. package/dist/src/base/A-Config/A-Config.container.js.map +1 -1
  19. package/dist/src/base/A-Config/A-Config.context.d.ts +10 -11
  20. package/dist/src/base/A-Config/A-Config.context.js +5 -24
  21. package/dist/src/base/A-Config/A-Config.context.js.map +1 -1
  22. package/dist/src/base/A-Config/A-Config.types.d.ts +4 -4
  23. package/dist/src/base/A-Config/A-Config.types.js.map +1 -1
  24. package/dist/src/base/A-Config/components/ConfigReader.component.js +6 -12
  25. package/dist/src/base/A-Config/components/ConfigReader.component.js.map +1 -1
  26. package/dist/src/base/A-Config/components/ENVConfigReader.component.js +5 -1
  27. package/dist/src/base/A-Config/components/ENVConfigReader.component.js.map +1 -1
  28. package/dist/src/constants/env.constants.d.ts +26 -0
  29. package/dist/src/constants/env.constants.js +40 -0
  30. package/dist/src/constants/env.constants.js.map +1 -0
  31. package/dist/src/decorators/A-Inject/A-Inject.decorator.d.ts +3 -3
  32. package/dist/src/decorators/A-Inject/A-Inject.decorator.types.d.ts +9 -10
  33. package/dist/src/global/A-Channel/A-Channel.class.d.ts +2 -0
  34. package/dist/src/global/A-Channel/A-Channel.class.js +2 -0
  35. package/dist/src/global/A-Channel/A-Channel.class.js.map +1 -1
  36. package/dist/src/global/A-Concept/A_Concept.class.d.ts +5 -3
  37. package/dist/src/global/A-Concept/A_Concept.class.js +32 -27
  38. package/dist/src/global/A-Concept/A_Concept.class.js.map +1 -1
  39. package/dist/src/global/A-Concept/A_Concept.meta.d.ts +1 -8
  40. package/dist/src/global/A-Concept/A_Concept.meta.js +1 -25
  41. package/dist/src/global/A-Concept/A_Concept.meta.js.map +1 -1
  42. package/dist/src/global/A-Concept/A_Concept.types.d.ts +10 -1
  43. package/dist/src/global/A-Container/A-Container.class.d.ts +5 -0
  44. package/dist/src/global/A-Container/A-Container.class.js +5 -0
  45. package/dist/src/global/A-Container/A-Container.class.js.map +1 -1
  46. package/dist/src/global/A-Context/A-Context.class.d.ts +23 -1
  47. package/dist/src/global/A-Context/A-Context.class.js +38 -1
  48. package/dist/src/global/A-Context/A-Context.class.js.map +1 -1
  49. package/dist/src/global/A-Entity/A-Entity.class.d.ts +124 -23
  50. package/dist/src/global/A-Entity/A-Entity.class.js +159 -49
  51. package/dist/src/global/A-Entity/A-Entity.class.js.map +1 -1
  52. package/dist/src/global/A-Scope/A-Scope.class.d.ts +7 -6
  53. package/dist/src/global/A-Scope/A-Scope.class.js +57 -20
  54. package/dist/src/global/A-Scope/A-Scope.class.js.map +1 -1
  55. package/dist/src/global/A-Stage/A-Stage.class.d.ts +3 -2
  56. package/dist/src/global/A-Stage/A-Stage.class.js +9 -6
  57. package/dist/src/global/A-Stage/A-Stage.class.js.map +1 -1
  58. package/dist/src/global/A-Stage/A-Stage.types.d.ts +1 -1
  59. package/dist/src/helpers/StepsManager.class.js +1 -1
  60. package/dist/src/helpers/StepsManager.class.js.map +1 -1
  61. package/examples/simple/components/A.component.ts +9 -2
  62. package/examples/simple/concept.ts +6 -0
  63. package/examples/simple/entities/EntityA.entity.ts +18 -0
  64. package/jest.config.ts +1 -1
  65. package/package.json +3 -3
  66. package/src/base/A-Command/A_Command.constants.ts +20 -0
  67. package/src/base/A-Command/A_Command.entity.ts +287 -0
  68. package/src/base/A-Command/A_Command.types.ts +34 -0
  69. package/src/base/A-Command/context/A_Command.context.ts +114 -0
  70. package/src/base/A-Command/context/A_CommandFactory.context.ts +0 -0
  71. package/src/base/A-Config/A-Config.container.ts +0 -1
  72. package/src/base/A-Config/A-Config.context.ts +22 -28
  73. package/src/base/A-Config/A-Config.types.ts +5 -24
  74. package/src/base/A-Config/components/ConfigReader.component.ts +6 -15
  75. package/src/base/A-Config/components/ENVConfigReader.component.ts +6 -1
  76. package/src/constants/env.constants.ts +44 -0
  77. package/src/decorators/A-Inject/A-Inject.decorator.ts +3 -3
  78. package/src/decorators/A-Inject/A-Inject.decorator.types.ts +10 -9
  79. package/src/global/A-Channel/A-Channel.class.ts +2 -0
  80. package/src/global/A-Concept/A_Concept.class.ts +49 -32
  81. package/src/global/A-Concept/A_Concept.meta.ts +3 -41
  82. package/src/global/A-Concept/A_Concept.types.ts +6 -4
  83. package/src/global/A-Container/A-Container.class.ts +5 -2
  84. package/src/global/A-Context/A-Context.class.ts +67 -8
  85. package/src/global/A-Entity/A-Entity.class.ts +203 -73
  86. package/src/global/A-Scope/A-Scope.class.ts +88 -39
  87. package/src/global/A-Stage/A-Stage.class.ts +11 -7
  88. package/src/global/A-Stage/A-Stage.types.ts +1 -1
  89. package/src/helpers/StepsManager.class.ts +2 -2
  90. package/tests/A-Command.test.ts +130 -0
  91. package/tests/A-Component.test.ts +25 -0
  92. package/tests/A-Config.test.ts +106 -0
  93. package/tests/A-Entity.test.ts +191 -0
  94. package/tests/A-Feature.test.ts +131 -0
  95. package/tests/A-Scope.test.ts +163 -0
  96. package/dist/src/constants/A_ConceptLifecycle.constants.js +0 -11
  97. package/dist/src/constants/A_ConceptLifecycle.constants.js.map +0 -1
  98. package/src/constants/A_ConceptLifecycle.constants.ts +0 -12
  99. package/tests/channel.ts +0 -213
  100. package/tests/context.test.ts +0 -124
  101. package/tests/default.test.ts +0 -159
  102. package/tests/log.ts +0 -102
  103. package/tests/polyfill.test.ts +0 -37
  104. /package/dist/src/{constants/A_ConceptLifecycle.constants.d.ts → base/A-Command/context/A_CommandFactory.context.d.ts} +0 -0
@@ -1,20 +1,19 @@
1
- import { A_TYPES__Required } from "@adaas/a-utils";
2
1
  import { A_TYPES__ConfigContainerConstructor } from "./A-Config.types";
3
2
  import { A_Fragment } from "../../global/A-Fragment/A-Fragment.class";
4
- export declare class A_Config<T extends string = any> extends A_Fragment {
3
+ import { A_TYPES__ConceptENVVariables } from "../../constants/env.constants";
4
+ export declare class A_Config<T extends Array<string | A_TYPES__ConceptENVVariables[number]> = A_TYPES__ConceptENVVariables> extends A_Fragment {
5
5
  config: A_TYPES__ConfigContainerConstructor<T>;
6
6
  private VARIABLES;
7
- CONFIG_PROPERTIES: T[];
8
- protected DEFAULT_ALLOWED_TO_READ_PROPERTIES: readonly ["CONFIG_SDK_VALIDATION", "CONFIG_VERBOSE", "CONFIG_IGNORE_ERRORS", "CONCEPT_ROOT_FOLDER"];
9
- constructor(config: A_TYPES__Required<Partial<A_TYPES__ConfigContainerConstructor<T>>, ['variables']>);
10
- protected onInit(): Promise<void>;
7
+ CONFIG_PROPERTIES: T;
8
+ protected DEFAULT_ALLOWED_TO_READ_PROPERTIES: readonly ["A_CONCEPT_NAMESPACE", "A_CONCEPT_ENVIRONMENT", "A_CONCEPT_ROOT_FOLDER", "CONFIG_VERBOSE", "CONFIG_IGNORE_ERRORS"];
9
+ constructor(config: Partial<A_TYPES__ConfigContainerConstructor<T>>);
11
10
  /**
12
11
  * This method is used to get the configuration property by name
13
12
  *
14
13
  * @param property
15
14
  * @returns
16
15
  */
17
- get<_OutType = any>(property: T | typeof this.DEFAULT_ALLOWED_TO_READ_PROPERTIES[number]): _OutType;
16
+ get<_OutType = any>(property: T[number] | typeof this.DEFAULT_ALLOWED_TO_READ_PROPERTIES[number]): _OutType;
18
17
  /**
19
18
  *
20
19
  * This method is used to set the configuration property by name
@@ -22,10 +21,10 @@ export declare class A_Config<T extends string = any> extends A_Fragment {
22
21
  *
23
22
  * @param variables
24
23
  */
25
- set<V extends string = T | typeof this.DEFAULT_ALLOWED_TO_READ_PROPERTIES[number]>(variables: Array<{
26
- property: V;
24
+ set(variables: Array<{
25
+ property: T[number] | A_TYPES__ConceptENVVariables[number];
27
26
  value: any;
28
27
  }>): any;
29
- set<V extends string = T | typeof this.DEFAULT_ALLOWED_TO_READ_PROPERTIES[number]>(variables: Record<V, any>): any;
30
- set<V extends string = T | typeof this.DEFAULT_ALLOWED_TO_READ_PROPERTIES[number]>(property: V, value: any): any;
28
+ set(variables: Partial<Record<T[number] | A_TYPES__ConceptENVVariables[number], any>>): any;
29
+ set(property: T[number] | A_TYPES__ConceptENVVariables[number], value: any): any;
31
30
  }
@@ -1,42 +1,23 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.A_Config = void 0;
13
4
  const a_utils_1 = require("@adaas/a-utils");
14
5
  const A_Fragment_class_1 = require("../../global/A-Fragment/A-Fragment.class");
6
+ const env_constants_1 = require("../../constants/env.constants");
15
7
  class A_Config extends A_Fragment_class_1.A_Fragment {
16
8
  constructor(config) {
17
9
  super(config);
18
- // Custom properties
19
10
  this.VARIABLES = new Map();
20
- this.CONFIG_PROPERTIES = [];
21
- this.DEFAULT_ALLOWED_TO_READ_PROPERTIES = [
22
- 'CONFIG_SDK_VALIDATION',
23
- 'CONFIG_VERBOSE',
24
- 'CONFIG_IGNORE_ERRORS',
25
- 'CONCEPT_ROOT_FOLDER',
26
- ];
11
+ this.DEFAULT_ALLOWED_TO_READ_PROPERTIES = env_constants_1.A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY;
27
12
  this.config = a_utils_1.A_CommonHelper.deepCloneAndMerge(config, {
28
13
  name: this.name,
29
14
  strict: false,
30
15
  defaults: {},
31
- variables: []
16
+ variables: env_constants_1.A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY
32
17
  });
33
18
  this.CONFIG_PROPERTIES = this.config.variables ? this.config.variables : [];
34
- }
35
- onInit() {
36
- return __awaiter(this, void 0, void 0, function* () {
37
- this.config.variables.forEach((variable) => {
38
- this.VARIABLES.set(variable, this.config.defaults[variable]);
39
- });
19
+ this.config.variables.forEach((variable) => {
20
+ this.VARIABLES.set(variable, this.config.defaults[variable]);
40
21
  });
41
22
  }
42
23
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"A-Config.context.js","sourceRoot":"","sources":["../../../../src/base/A-Config/A-Config.context.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAAmE;AAEnE,0FAAiF;AAGjF,MAAa,QAEX,SAAQ,6BAAU;IAiBhB,YACI,MAAyF;QAEzF,KAAK,CAAC,MAAM,CAAC,CAAC;QAhBlB,oBAAoB;QACZ,cAAS,GAAqB,IAAI,GAAG,EAAe,CAAC;QAE7D,sBAAiB,GAAQ,EAAE,CAAC;QAElB,uCAAkC,GAAG;YAC3C,uBAAuB;YACvB,gBAAgB;YAChB,sBAAsB;YACtB,qBAAqB;SACf,CAAC;QAQP,IAAI,CAAC,MAAM,GAAG,wBAAc,CAAC,iBAAiB,CAAyC,MAAa,EAAE;YAClG,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,EAAoB;YAC9B,SAAS,EAAE,EAAS;SACvB,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAChF,CAAC;IAEe,MAAM;;YAClB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;gBACvC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;YACjE,CAAC,CAAC,CAAC;QACP,CAAC;KAAA;IAGD;;;;;OAKG;IACH,GAAG,CACC,QAAoE;QAEpE,IAAI,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAe,CAAC;eAC7C,IAAI,CAAC,kCAAkC,CAAC,QAAQ,CAAC,QAAe,CAAC;eACjE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YAExB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAkB,CAAa,CAAC;QAE9D,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAU,CAAC;QACvE,oIAAoI;IACxI,CAAC;IAwBD,GAAG,CACC,QAGmB,EACnB,KAAW;;QAEX,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;YACjC,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,OAAO,QAAQ,KAAK,QAAQ;gBAC1B,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;gBACvB,CAAC,CAAC,MAAM;qBACH,IAAI,CAAC,QAAQ,CAAC;qBACd,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBACX,QAAQ,EAAE,GAAG;oBACb,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC;iBACvB,CAAC,CAAC,CAAC;QAEhB,KAAK,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,KAAK,EAAE,CAAC;YAEtC,IAAI,WAAW,GAAG,KAAK;gBACnB,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,CAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,QAAQ;oBACnB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAa,CAAC;oBACrC,CAAC,CAAC,SAAS,CAAC;YAEpB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAkB,EAAE,WAAW,CAAC,CAAC;QACxD,CAAC;IACL,CAAC;CACJ;AA/GD,4BA+GC"}
1
+ {"version":3,"file":"A-Config.context.js","sourceRoot":"","sources":["../../../../src/base/A-Config/A-Config.context.ts"],"names":[],"mappings":";;;AAAA,4CAAmE;AAEnE,0FAAiF;AACjF,4EAAkI;AAGlI,MAAa,QAEX,SAAQ,6BAAU;IAYhB,YACI,MAAuD;QAEvD,KAAK,CAAC,MAAM,CAAC,CAAC;QAVV,cAAS,GAAwB,IAAI,GAAG,EAAkB,CAAC;QAIzD,uCAAkC,GAAG,wDAAwC,CAAC;QAQpF,IAAI,CAAC,MAAM,GAAG,wBAAc,CAAC,iBAAiB,CAAyC,MAAa,EAAE;YAClG,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,EAAE;YACZ,SAAS,EAAE,wDAAoD;SAClE,CAAC,CAAC;QAEH,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAc,CAAC;QAExF,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YACvC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;IACP,CAAC;IAGD;;;;;OAKG;IACH,GAAG,CACC,QAA4E;QAE5E,IAAI,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAe,CAAC;eAC7C,IAAI,CAAC,kCAAkC,CAAC,QAAQ,CAAC,QAAe,CAAC;eACjE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YAExB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAkB,CAAa,CAAC;QAE9D,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAU,CAAC;QACvE,oIAAoI;IACxI,CAAC;IAwBD,GAAG,CACC,QAG2E,EAC3E,KAAW;;QAEX,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;YACjC,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,OAAO,QAAQ,KAAK,QAAQ;gBAC1B,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;gBACvB,CAAC,CAAC,MAAM;qBACH,IAAI,CAAC,QAAQ,CAAC;qBACd,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBACX,QAAQ,EAAE,GAAG;oBACb,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC;iBACvB,CAAC,CAAC,CAAC;QAEhB,KAAK,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,KAAK,EAAE,CAAC;YAEtC,IAAI,WAAW,GAAG,KAAK;gBACnB,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,CAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,QAAQ;oBACnB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAqB,CAAC;oBAC7C,CAAC,CAAC,SAAS,CAAC;YAEpB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAkB,EAAE,WAAW,CAAC,CAAC;QACxD,CAAC;IACL,CAAC;CACJ;AAxGD,4BAwGC"}
@@ -1,7 +1,8 @@
1
+ import { A_TYPES__ConceptENVVariables } from "../../constants/env.constants";
1
2
  import { A_TYPES__FragmentConstructor } from "../../global/A-Fragment/A-Fragment.types";
2
3
  export declare enum A_TYPES__ConfigFeature {
3
4
  }
4
- export type A_TYPES__ConfigContainerConstructor<T extends string> = {
5
+ export type A_TYPES__ConfigContainerConstructor<T extends Array<string | A_TYPES__ConceptENVVariables[number]>> = {
5
6
  /**
6
7
  * If set to true, the SDK will throw an error if the variable is not defined OR not presented in the defaults
7
8
  */
@@ -9,12 +10,11 @@ export type A_TYPES__ConfigContainerConstructor<T extends string> = {
9
10
  /**
10
11
  * Allows to define the names of variable to be loaded
11
12
  */
12
- variables: Array<T>;
13
+ variables: T;
13
14
  /**
14
15
  * Allows to set the default values for the variables
15
16
  */
16
17
  defaults: {
17
- [key in T]?: any;
18
+ [key in T[number]]?: any;
18
19
  };
19
20
  } & A_TYPES__FragmentConstructor;
20
- export type A_TYPES__ConfigContainer_DefaultProperties = 'CONFIG_SDK_VALIDATION' | 'CONFIG_VERBOSE' | 'CONFIG_IGNORE_ERRORS';
@@ -1 +1 @@
1
- {"version":3,"file":"A-Config.types.js","sourceRoot":"","sources":["../../../../src/base/A-Config/A-Config.types.ts"],"names":[],"mappings":";;;AAGA,IAAY,sBAEX;AAFD,WAAY,sBAAsB;AAElC,CAAC,EAFW,sBAAsB,sCAAtB,sBAAsB,QAEjC"}
1
+ {"version":3,"file":"A-Config.types.js","sourceRoot":"","sources":["../../../../src/base/A-Config/A-Config.types.ts"],"names":[],"mappings":";;;AAIA,IAAY,sBAEX;AAFD,WAAY,sBAAsB;AAElC,CAAC,EAFW,sBAAsB,sCAAtB,sBAAsB,QAEjC"}
@@ -24,6 +24,7 @@ const A_Inject_decorator_1 = require("../../../decorators/A-Inject/A-Inject.deco
24
24
  const A_Component_class_1 = require("../../../global/A-Component/A-Component.class");
25
25
  const A_Config_context_1 = require("../A-Config.context");
26
26
  const A_Concept_class_1 = require("../../../global/A-Concept/A_Concept.class");
27
+ const env_constants_1 = require("../../../constants/env.constants");
27
28
  /**
28
29
  * Config Reader
29
30
  */
@@ -34,10 +35,13 @@ let ConfigReader = class ConfigReader extends A_Component_class_1.A_Component {
34
35
  }
35
36
  inject(config) {
36
37
  return __awaiter(this, void 0, void 0, function* () {
37
- const data = this.read(config.CONFIG_PROPERTIES);
38
+ const data = yield this.read([
39
+ ...config.CONFIG_PROPERTIES,
40
+ ...env_constants_1.A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY
41
+ ]);
38
42
  config.set(data);
39
43
  const rootDir = yield this.getProjectRoot();
40
- config.set('CONCEPT_ROOT_FOLDER', rootDir);
44
+ config.set('A_CONCEPT_ROOT_FOLDER', rootDir);
41
45
  });
42
46
  }
43
47
  /**
@@ -65,16 +69,6 @@ let ConfigReader = class ConfigReader extends A_Component_class_1.A_Component {
65
69
  */
66
70
  getProjectRoot() {
67
71
  return __awaiter(this, arguments, void 0, function* (startPath = __dirname) {
68
- // let currentPath = startPath;
69
- // const fs = await A_Polyfills.fs();
70
- // while (!fs.existsSync(`${currentPath}/package.json`)) {
71
- // const parentPath = currentPath.substring(0, currentPath.lastIndexOf('/'));
72
- // if (parentPath === currentPath || parentPath === '') {
73
- // // Reached the root of the filesystem without finding package.json
74
- // return null;
75
- // }
76
- // currentPath = parentPath;
77
- // }
78
72
  return process.cwd();
79
73
  });
80
74
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigReader.component.js","sourceRoot":"","sources":["../../../../../src/base/A-Config/components/ConfigReader.component.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AACA,iFAAwE;AACxE,gGAAmF;AACnF,6FAAoF;AACpF,0DAA+C;AAC/C,uFAA8E;AAE9E;;GAEG;AACI,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,+BAAW;IAEzC,YACiC,KAAc;QAE3C,KAAK,EAAE,CAAC;QAFqB,UAAK,GAAL,KAAK,CAAS;IAG/C,CAAC;IAIK,MAAM,CACY,MAAgB;;YAGpC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;YAEjD,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAEjB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YAE5C,MAAM,CAAC,GAAG,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC;KAAA;IAGD;;;OAGG;IACH,OAAO,CAAoB,QAAgB;QACvC,OAAO,QAAuB,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACG,IAAI;6DACN,YAAsB,EAAE;YAExB,OAAO,EAAoB,CAAC;QAChC,CAAC;KAAA;IAGD;;;;;OAKG;IACa,cAAc;6DAAC,SAAS,GAAG,SAAS;YAChD,+BAA+B;YAE/B,qCAAqC;YAErC,0DAA0D;YAC1D,iFAAiF;YACjF,6DAA6D;YAC7D,6EAA6E;YAC7E,uBAAuB;YACvB,QAAQ;YACR,gCAAgC;YAChC,IAAI;YAEJ,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC;QACzB,CAAC;KAAA;CACJ,CAAA;AAlEY,oCAAY;AAUf;IADL,2BAAS,CAAC,IAAI,EAAE;IAEZ,WAAA,IAAA,6BAAQ,EAAC,2BAAQ,CAAC,CAAA;0CAUtB;uBArBQ,YAAY;IAGhB,WAAA,IAAA,6BAAQ,EAAC,uBAAO,CAAC,CAAA;GAHb,YAAY,CAkExB"}
1
+ {"version":3,"file":"ConfigReader.component.js","sourceRoot":"","sources":["../../../../../src/base/A-Config/components/ConfigReader.component.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AACA,iFAAwE;AACxE,gGAAmF;AACnF,6FAAoF;AACpF,0DAA+C;AAC/C,uFAA8E;AAC9E,4EAAoG;AAEpG;;GAEG;AACI,IAAM,YAAY,GAAlB,MAAM,YAAa,SAAQ,+BAAW;IAEzC,YACiC,KAAc;QAE3C,KAAK,EAAE,CAAC;QAFqB,UAAK,GAAL,KAAK,CAAS;IAG/C,CAAC;IAIK,MAAM,CACY,MAAgB;;YAGpC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC;gBACzB,GAAG,MAAM,CAAC,iBAAiB;gBAC3B,GAAG,wDAAwC;aAC9C,CAAC,CAAC;YAEH,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAEjB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YAE5C,MAAM,CAAC,GAAG,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;QACjD,CAAC;KAAA;IAGD;;;OAGG;IACH,OAAO,CAAoB,QAAgB;QACvC,OAAO,QAAuB,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACG,IAAI;6DACN,YAAsB,EAAE;YAExB,OAAO,EAAoB,CAAC;QAChC,CAAC;KAAA;IAGD;;;;;OAKG;IACa,cAAc;6DAAC,SAAS,GAAG,SAAS;YAChD,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC;QACzB,CAAC;KAAA;CACJ,CAAA;AAxDY,oCAAY;AAUf;IADL,2BAAS,CAAC,IAAI,EAAE;IAEZ,WAAA,IAAA,6BAAQ,EAAC,2BAAQ,CAAC,CAAA;0CAatB;uBAxBQ,YAAY;IAGhB,WAAA,IAAA,6BAAQ,EAAC,uBAAO,CAAC,CAAA;GAHb,YAAY,CAwDxB"}
@@ -12,13 +12,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.ENVConfigReader = void 0;
13
13
  const a_utils_1 = require("@adaas/a-utils");
14
14
  const ConfigReader_component_1 = require("./ConfigReader.component");
15
+ const A_Context_class_1 = require("../../../global/A-Context/A-Context.class");
16
+ const env_constants_1 = require("../../../constants/env.constants");
15
17
  class ENVConfigReader extends ConfigReader_component_1.ConfigReader {
16
18
  /**
17
19
  * Get the configuration property Name
18
20
  * @param property
19
21
  */
20
22
  getConfigurationProperty_ENV_Alias(property) {
21
- return `${a_utils_1.A_CommonHelper.toUpperSnakeCase(this.scope.name)}_${a_utils_1.A_CommonHelper.toUpperSnakeCase(property)}`;
23
+ if (env_constants_1.A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY.some(p => p === property))
24
+ return a_utils_1.A_CommonHelper.toUpperSnakeCase(property);
25
+ return `${a_utils_1.A_CommonHelper.toUpperSnakeCase(A_Context_class_1.A_Context.root.name)}_${a_utils_1.A_CommonHelper.toUpperSnakeCase(property)}`;
22
26
  }
23
27
  resolve(property) {
24
28
  return process.env[this.getConfigurationProperty_ENV_Alias(property)];
@@ -1 +1 @@
1
- {"version":3,"file":"ENVConfigReader.component.js","sourceRoot":"","sources":["../../../../../src/base/A-Config/components/ENVConfigReader.component.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAAgD;AAChD,qEAAwD;AAGxD,MAAa,eAAgB,SAAQ,qCAAY;IAG7C;;;OAGG;IACH,kCAAkC,CAAC,QAAgB;QAC/C,OAAO,GAAG,wBAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,wBAAc,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC9G,CAAC;IAGD,OAAO,CAAoB,QAAgB;QACvC,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,kCAAkC,CAAC,QAAQ,CAAC,CAAgB,CAAC;IACzF,CAAC;IAGK,IAAI;6DAAmB,YAAsB,EAAE;YACjD,MAAM,MAAM,GAAmB,EAAoB,CAAC;YAEpD,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;gBACzB,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC9C,CAAC,CAAC,CAAC;YAEH,OAAO,MAAM,CAAC;QAClB,CAAC;KAAA;CACJ;AA1BD,0CA0BC"}
1
+ {"version":3,"file":"ENVConfigReader.component.js","sourceRoot":"","sources":["../../../../../src/base/A-Config/components/ENVConfigReader.component.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAAgD;AAChD,qEAAwD;AACxD,uFAA8E;AAC9E,4EAAoG;AAGpG,MAAa,eAAgB,SAAQ,qCAAY;IAG7C;;;OAGG;IACH,kCAAkC,CAAC,QAAgB;QAC/C,IAAI,wDAAwC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,QAAQ,CAAC;YAClE,OAAO,wBAAc,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAErD,OAAO,GAAG,wBAAc,CAAC,gBAAgB,CAAC,2BAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,wBAAc,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC;IAClH,CAAC;IAGD,OAAO,CAAoB,QAAgB;QACvC,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,kCAAkC,CAAC,QAAQ,CAAC,CAAgB,CAAC;IACzF,CAAC;IAGK,IAAI;6DAAmB,YAAsB,EAAE;YACjD,MAAM,MAAM,GAAmB,EAAoB,CAAC;YAEpD,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;gBACzB,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC9C,CAAC,CAAC,CAAC;YAEH,OAAO,MAAM,CAAC;QAClB,CAAC;KAAA;CACJ;AA7BD,0CA6BC"}
@@ -0,0 +1,26 @@
1
+ export declare const A_CONSTANTS__DEFAULT_ENV_VARIABLES: {
2
+ /**
3
+ * Namespace of the application
4
+ * [!] Provided name will be used for all aseids in the application by default
5
+ */
6
+ readonly A_CONCEPT_NAMESPACE: "A_CONCEPT_NAMESPACE";
7
+ /**
8
+ * Default scope of the application
9
+ * [!] Provided name will be used for all aseids in the application by default
10
+ */
11
+ readonly A_CONCEPT_DEFAULT_SCOPE: "A_CONCEPT_DEFAULT_SCOPE";
12
+ /**
13
+ * Environment of the application e.g. development, production, staging
14
+ */
15
+ readonly A_CONCEPT_ENVIRONMENT: "A_CONCEPT_ENVIRONMENT";
16
+ /**
17
+ * Root folder of the application
18
+ * [!] Automatically set by A-Concept when the application starts
19
+ */
20
+ readonly A_CONCEPT_ROOT_FOLDER: "A_CONCEPT_ROOT_FOLDER";
21
+ readonly CONFIG_SDK_VALIDATION: "CONFIG_SDK_VALIDATION";
22
+ readonly CONFIG_VERBOSE: "CONFIG_VERBOSE";
23
+ readonly CONFIG_IGNORE_ERRORS: "CONFIG_IGNORE_ERRORS";
24
+ };
25
+ export type A_TYPES__ConceptENVVariables = (typeof A_CONSTANTS__DEFAULT_ENV_VARIABLES)[keyof typeof A_CONSTANTS__DEFAULT_ENV_VARIABLES][];
26
+ export declare const A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY: readonly ["A_CONCEPT_NAMESPACE", "A_CONCEPT_ENVIRONMENT", "A_CONCEPT_ROOT_FOLDER", "CONFIG_VERBOSE", "CONFIG_IGNORE_ERRORS"];
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY = exports.A_CONSTANTS__DEFAULT_ENV_VARIABLES = void 0;
4
+ exports.A_CONSTANTS__DEFAULT_ENV_VARIABLES = {
5
+ // ----------------------------------------------------------
6
+ // A-Concept Core Environment Variables
7
+ // ----------------------------------------------------------
8
+ // These environment variables are used by A-Concept core to configure the application
9
+ // ----------------------------------------------------------
10
+ /**
11
+ * Namespace of the application
12
+ * [!] Provided name will be used for all aseids in the application by default
13
+ */
14
+ A_CONCEPT_NAMESPACE: 'A_CONCEPT_NAMESPACE',
15
+ /**
16
+ * Default scope of the application
17
+ * [!] Provided name will be used for all aseids in the application by default
18
+ */
19
+ A_CONCEPT_DEFAULT_SCOPE: 'A_CONCEPT_DEFAULT_SCOPE',
20
+ /**
21
+ * Environment of the application e.g. development, production, staging
22
+ */
23
+ A_CONCEPT_ENVIRONMENT: 'A_CONCEPT_ENVIRONMENT',
24
+ /**
25
+ * Root folder of the application
26
+ * [!] Automatically set by A-Concept when the application starts
27
+ */
28
+ A_CONCEPT_ROOT_FOLDER: 'A_CONCEPT_ROOT_FOLDER',
29
+ CONFIG_SDK_VALIDATION: 'CONFIG_SDK_VALIDATION',
30
+ CONFIG_VERBOSE: 'CONFIG_VERBOSE',
31
+ CONFIG_IGNORE_ERRORS: 'CONFIG_IGNORE_ERRORS',
32
+ };
33
+ exports.A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY = [
34
+ exports.A_CONSTANTS__DEFAULT_ENV_VARIABLES.A_CONCEPT_NAMESPACE,
35
+ exports.A_CONSTANTS__DEFAULT_ENV_VARIABLES.A_CONCEPT_ENVIRONMENT,
36
+ exports.A_CONSTANTS__DEFAULT_ENV_VARIABLES.A_CONCEPT_ROOT_FOLDER,
37
+ exports.A_CONSTANTS__DEFAULT_ENV_VARIABLES.CONFIG_VERBOSE,
38
+ exports.A_CONSTANTS__DEFAULT_ENV_VARIABLES.CONFIG_IGNORE_ERRORS,
39
+ ];
40
+ //# sourceMappingURL=env.constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.constants.js","sourceRoot":"","sources":["../../../src/constants/env.constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,kCAAkC,GAAG;IAC9C,6DAA6D;IAC7D,uCAAuC;IACvC,6DAA6D;IAC7D,sFAAsF;IACtF,6DAA6D;IAC7D;;;OAGG;IACH,mBAAmB,EAAE,qBAAqB;IAC1C;;;OAGG;IACH,uBAAuB,EAAE,yBAAyB;IAClD;;OAEG;IACH,qBAAqB,EAAE,uBAAuB;IAC9C;;;OAGG;IACH,qBAAqB,EAAE,uBAAuB;IAE9C,qBAAqB,EAAE,uBAAuB;IAC9C,cAAc,EAAE,gBAAgB;IAChC,oBAAoB,EAAE,sBAAsB;CACtC,CAAA;AAOG,QAAA,wCAAwC,GAAG;IACpD,0CAAkC,CAAC,mBAAmB;IACtD,0CAAkC,CAAC,qBAAqB;IACxD,0CAAkC,CAAC,qBAAqB;IACxD,0CAAkC,CAAC,cAAc;IACjD,0CAAkC,CAAC,oBAAoB;CACjD,CAAC"}
@@ -25,6 +25,6 @@ export declare function A_Inject(container: typeof A_FeatureCaller): A_TYPES__A_
25
25
  export declare function A_Inject(fragment: {
26
26
  new (...args: any[]): A_Fragment;
27
27
  }): A_TYPES__A_InjectDecoratorReturn;
28
- export declare function A_Inject(entity: {
29
- new (...args: any[]): A_Entity;
30
- }, config: Partial<A_TYPES__A_InjectDecorator_EntityInjectionInstructions>): A_TYPES__A_InjectDecoratorReturn;
28
+ export declare function A_Inject<T extends A_Entity>(entity: {
29
+ new (...args: any[]): T;
30
+ }, config: Partial<A_TYPES__A_InjectDecorator_EntityInjectionInstructions<T>>): A_TYPES__A_InjectDecoratorReturn;
@@ -2,9 +2,9 @@ import { A_Component } from "../../global/A-Component/A-Component.class";
2
2
  import { A_Container } from "../../global/A-Container/A-Container.class";
3
3
  import { A_Entity } from "../../global/A-Entity/A-Entity.class";
4
4
  import { A_Feature } from "../../global/A-Feature/A-Feature.class";
5
+ import { A_FeatureCaller } from "../../global/A-Feature/A-FeatureCaller.class";
5
6
  import { A_Fragment } from "../../global/A-Fragment/A-Fragment.class";
6
7
  import { A_Scope } from "../../global/A-Scope/A-Scope.class";
7
- import { ASEID } from "@adaas/a-utils";
8
8
  export type A_TYPES__A_InjectDecoratorDescriptor = TypedPropertyDescriptor<(...args: any[]) => Promise<void>>;
9
9
  export type A_TYPES__A_InjectDecoratorReturn<T = any> = (target: T, propertyKey: string | symbol | undefined, parameterIndex: number) => void;
10
10
  export type A_TYPES__A_InjectDecoratorStorageInstruction = Array<{
@@ -30,18 +30,17 @@ export type A_TYPES__A_InjectDecorator_Injectable = {
30
30
  new (...args: any[]): A_Feature;
31
31
  } | {
32
32
  new (...args: any[]): A_Entity;
33
+ } | {
34
+ new (...args: any[]): A_FeatureCaller;
33
35
  };
34
- export type A_TYPES__A_InjectDecorator_EntityInjectionInstructions = {
35
- query: Partial<A_TYPES__A_InjectDecorator_EntityInjectionQuery>;
36
+ export type A_TYPES__A_InjectDecorator_EntityInjectionInstructions<T extends A_Entity = A_Entity> = {
37
+ query: Partial<A_TYPES__A_InjectDecorator_EntityInjectionQuery<T>>;
36
38
  pagination: Partial<A_TYPES__A_InjectDecorator_EntityInjectionPagination>;
37
39
  };
38
- export type A_TYPES__A_InjectDecorator_EntityInjectionQuery = {
39
- aseid: string | ASEID;
40
- id: string;
41
- type: {
42
- new (...args: any[]): A_Entity;
43
- };
44
- entity: string;
40
+ export type A_TYPES__A_InjectDecorator_EntityInjectionQuery<T extends A_Entity = A_Entity> = {
41
+ aseid: string;
42
+ } & {
43
+ [key in keyof T]?: any;
45
44
  };
46
45
  export type A_TYPES__A_InjectDecorator_EntityInjectionPagination = {
47
46
  count: number;
@@ -2,6 +2,8 @@ import { A_Component } from "../A-Component/A-Component.class";
2
2
  import { A_Container } from "../A-Container/A-Container.class";
3
3
  import { A_TYPES__A_ChannelAggregated, A_TYPES__A_ChannelAggregateMethods, A_TYPES__A_ChannelCallParams, A_TYPES__A_ChannelConstructor } from "./A-Channel.types";
4
4
  /**
5
+ * [!] DEPRECATED - use simply A_Component instead
6
+ *
5
7
  * A_Channel is an abstraction over any Communication Type from event emitters to message queues, HTTP requests, etc.
6
8
  *
7
9
  * A_Channel uses to connect Containers between each other. When
@@ -11,6 +11,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.A_Channel = void 0;
13
13
  /**
14
+ * [!] DEPRECATED - use simply A_Component instead
15
+ *
14
16
  * A_Channel is an abstraction over any Communication Type from event emitters to message queues, HTTP requests, etc.
15
17
  *
16
18
  * A_Channel uses to connect Containers between each other. When
@@ -1 +1 @@
1
- {"version":3,"file":"A-Channel.class.js","sourceRoot":"","sources":["../../../../src/global/A-Channel/A-Channel.class.ts"],"names":[],"mappings":";;;;;;;;;;;;AAKA;;;;;;GAMG;AACH,MAAa,SAAS;IAUlB,YAAY,MAAqC;QAC7C,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;QAEpB,IAAI,CAAC,OAAO,GAAG,IAAI,KAAK,CACpB,EAAqC,EACrC;YACI,GAAG,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;gBAClB,OAAO,CAAO,GAAG,IAAW,EAAE,EAAE;oBAC5B,IAAI,CAAC,IAAI,CAAC,IAA6C,CAAC,CAAC;gBAC7D,CAAC,CAAA,CAAC;YACN,CAAC;SACJ,CAAC,CAAC;IACX,CAAC;IAGK,IAAI,CAAoB,IAA2C,EAAE,MAA8C;;YACrH,yDAAyD;YAEzD,OAAO,EAAW,CAAC;QACvB,CAAC;KAAA;CACJ;AA9BD,8BA8BC"}
1
+ {"version":3,"file":"A-Channel.class.js","sourceRoot":"","sources":["../../../../src/global/A-Channel/A-Channel.class.ts"],"names":[],"mappings":";;;;;;;;;;;;AAKA;;;;;;;;GAQG;AACH,MAAa,SAAS;IAUlB,YAAY,MAAqC;QAC7C,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;QAEpB,IAAI,CAAC,OAAO,GAAG,IAAI,KAAK,CACpB,EAAqC,EACrC;YACI,GAAG,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;gBAClB,OAAO,CAAO,GAAG,IAAW,EAAE,EAAE;oBAC5B,IAAI,CAAC,IAAI,CAAC,IAA6C,CAAC,CAAC;gBAC7D,CAAC,CAAA,CAAC;YACN,CAAC;SACJ,CAAC,CAAC;IACX,CAAC;IAGK,IAAI,CAAoB,IAA2C,EAAE,MAA8C;;YACrH,yDAAyD;YAEzD,OAAO,EAAW,CAAC;QACvB,CAAC;KAAA;CACJ;AA9BD,8BA8BC"}
@@ -1,5 +1,6 @@
1
- import { A_TYPES__IConceptConstructor } from "./A_Concept.types";
1
+ import { A_TYPES__ConceptStage, A_TYPES__IConceptConstructor } from "./A_Concept.types";
2
2
  import { A_Container } from "../A-Container/A-Container.class";
3
+ import { A_Abstraction } from "../A-Abstraction/A-Abstraction.class";
3
4
  import { A_Abstraction_Extend } from "../../decorators/A-Abstraction/A-Abstraction-Extend.decorator";
4
5
  import { A_Scope } from "../A-Scope/A-Scope.class";
5
6
  /**
@@ -14,7 +15,7 @@ import { A_Scope } from "../A-Scope/A-Scope.class";
14
15
  *
15
16
  *
16
17
  */
17
- export declare class A_Concept<_Imports extends A_Container[] = any> {
18
+ export declare class A_Concept<_Imports extends A_Container[] = A_Container[]> {
18
19
  protected props: A_TYPES__IConceptConstructor<_Imports>;
19
20
  /**
20
21
  * Load the concept. This step runs before any other steps to ensure that all components are loaded.
@@ -49,8 +50,8 @@ export declare class A_Concept<_Imports extends A_Container[] = any> {
49
50
  * Stop the concept. Uses for servers or any other background services.
50
51
  */
51
52
  static Stop(): (target: A_Container | import("../A-Component/A-Component.class").A_Component, propertyKey: string, descriptor: import("../../..").A_TYPES__A_AbstractionDecoratorDescriptor) => void;
52
- private sharedBase;
53
53
  private meta;
54
+ private _name;
54
55
  protected containers: A_Container[];
55
56
  constructor(props: A_TYPES__IConceptConstructor<_Imports>);
56
57
  get namespace(): string;
@@ -99,4 +100,5 @@ export declare class A_Concept<_Imports extends A_Container[] = any> {
99
100
  * Call the specific method of the concept or included modules.
100
101
  */
101
102
  call<K extends Record<_Imports[number]['name'], string>>(container: K[keyof K]): Promise<void>;
103
+ protected abstraction(method: A_TYPES__ConceptStage, scope: A_Scope): A_Abstraction;
102
104
  }
@@ -11,10 +11,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.A_Concept = void 0;
13
13
  const A_Concept_types_1 = require("./A_Concept.types");
14
- const A_Container_class_1 = require("../A-Container/A-Container.class");
15
14
  const A_Abstraction_class_1 = require("../A-Abstraction/A-Abstraction.class");
16
- const A_Concept_meta_1 = require("./A_Concept.meta");
17
- // export type RunParams<T> = T extends A_Container<any, infer Params> ? Params : never;
15
+ const A_Context_class_1 = require("../A-Context/A-Context.class");
18
16
  /**
19
17
  * A_Concept is a placeholder for the concept of the ani program.
20
18
  *
@@ -80,37 +78,32 @@ class A_Concept {
80
78
  }
81
79
  constructor(props) {
82
80
  this.props = props;
83
- this.sharedBase = new A_Container_class_1.A_Container({
84
- name: `${props.name}::base`,
85
- fragments: props.fragments || [],
86
- entities: props.entities || [],
87
- components: [
88
- // A_Logger,
89
- ],
90
- });
91
- this.containers = (props.containers || []).map(container => {
92
- container.Scope.parent(this.Scope);
93
- return container;
94
- });
95
- this.meta = new A_Concept_meta_1.A_ConceptMeta(this.containers, this.sharedBase);
81
+ this._name = props.name || A_Context_class_1.A_Context.root.name;
82
+ if (props.components && props.components.length)
83
+ props.components.forEach(component => this.Scope.register(component));
84
+ if (props.fragments && props.fragments.length)
85
+ props.fragments.forEach(fragment => this.Scope.register(fragment));
86
+ if (props.entities && props.entities.length)
87
+ props.entities.forEach(entity => this.Scope.register(entity));
88
+ this.containers = props.containers || [];
96
89
  }
97
90
  get namespace() {
98
- return this.sharedBase.name;
91
+ return A_Context_class_1.A_Context.root.name;
99
92
  }
100
93
  get Scope() {
101
- return this.sharedBase.Scope;
94
+ return A_Context_class_1.A_Context.root;
102
95
  }
103
96
  /**
104
97
  * Register a class or value in the concept scope.
105
98
  */
106
99
  get register() {
107
- return this.sharedBase.Scope.register.bind(this.sharedBase.Scope);
100
+ return this.Scope.register.bind(this.Scope);
108
101
  }
109
102
  /**
110
103
  * Resolve a class or value from the concept scope.
111
104
  */
112
105
  get resolve() {
113
- return this.sharedBase.Scope.resolve.bind(this.sharedBase.Scope);
106
+ return this.Scope.resolve.bind(this.Scope);
114
107
  }
115
108
  // =======================================================================
116
109
  // ========================== LIFECYCLE ================================
@@ -121,7 +114,7 @@ class A_Concept {
121
114
  load(scope) {
122
115
  return __awaiter(this, void 0, void 0, function* () {
123
116
  scope = scope ? scope.inherit(this.Scope) : this.Scope;
124
- const abstraction = this.meta.abstraction(A_Concept_types_1.A_TYPES__ConceptStage.Load, scope);
117
+ const abstraction = this.abstraction(A_Concept_types_1.A_TYPES__ConceptStage.Load, scope);
125
118
  yield abstraction.process();
126
119
  });
127
120
  }
@@ -131,7 +124,7 @@ class A_Concept {
131
124
  run(scope) {
132
125
  return __awaiter(this, void 0, void 0, function* () {
133
126
  scope = scope ? scope.inherit(this.Scope) : this.Scope;
134
- const abstraction = this.meta.abstraction(A_Concept_types_1.A_TYPES__ConceptStage.Run, scope);
127
+ const abstraction = this.abstraction(A_Concept_types_1.A_TYPES__ConceptStage.Run, scope);
135
128
  yield abstraction.process();
136
129
  });
137
130
  }
@@ -143,7 +136,7 @@ class A_Concept {
143
136
  start(scope) {
144
137
  return __awaiter(this, void 0, void 0, function* () {
145
138
  scope = scope ? scope.inherit(this.Scope) : this.Scope;
146
- const abstraction = this.meta.abstraction(A_Concept_types_1.A_TYPES__ConceptStage.Start, scope);
139
+ const abstraction = this.abstraction(A_Concept_types_1.A_TYPES__ConceptStage.Start, scope);
147
140
  yield abstraction.process();
148
141
  });
149
142
  }
@@ -155,7 +148,7 @@ class A_Concept {
155
148
  stop(scope) {
156
149
  return __awaiter(this, void 0, void 0, function* () {
157
150
  scope = scope ? scope.inherit(this.Scope) : this.Scope;
158
- const abstraction = this.meta.abstraction(A_Concept_types_1.A_TYPES__ConceptStage.Stop, scope);
151
+ const abstraction = this.abstraction(A_Concept_types_1.A_TYPES__ConceptStage.Stop, scope);
159
152
  yield abstraction.process();
160
153
  });
161
154
  }
@@ -165,7 +158,7 @@ class A_Concept {
165
158
  build(scope) {
166
159
  return __awaiter(this, void 0, void 0, function* () {
167
160
  scope = scope ? scope.inherit(this.Scope) : this.Scope;
168
- const abstraction = this.meta.abstraction(A_Concept_types_1.A_TYPES__ConceptStage.Build, scope);
161
+ const abstraction = this.abstraction(A_Concept_types_1.A_TYPES__ConceptStage.Build, scope);
169
162
  yield abstraction.process();
170
163
  });
171
164
  }
@@ -175,7 +168,7 @@ class A_Concept {
175
168
  deploy(scope) {
176
169
  return __awaiter(this, void 0, void 0, function* () {
177
170
  scope = scope ? scope.inherit(this.Scope) : this.Scope;
178
- const abstraction = this.meta.abstraction(A_Concept_types_1.A_TYPES__ConceptStage.Deploy, scope);
171
+ const abstraction = this.abstraction(A_Concept_types_1.A_TYPES__ConceptStage.Deploy, scope);
179
172
  yield abstraction.process();
180
173
  });
181
174
  }
@@ -185,7 +178,7 @@ class A_Concept {
185
178
  publish(scope) {
186
179
  return __awaiter(this, void 0, void 0, function* () {
187
180
  scope = scope ? scope.inherit(this.Scope) : this.Scope;
188
- const abstraction = this.meta.abstraction(A_Concept_types_1.A_TYPES__ConceptStage.Publish, scope);
181
+ const abstraction = this.abstraction(A_Concept_types_1.A_TYPES__ConceptStage.Publish, scope);
189
182
  yield abstraction.process();
190
183
  });
191
184
  }
@@ -205,6 +198,18 @@ class A_Concept {
205
198
  // await feature.process();
206
199
  });
207
200
  }
201
+ abstraction(method, scope) {
202
+ const featureDefinitions = this.containers.map(container => {
203
+ const definition = A_Context_class_1.A_Context.abstractionDefinition(container, method, container.Scope);
204
+ return Object.assign(Object.assign({}, definition), { steps: definition.steps.map(step => (Object.assign(Object.assign({}, step), { component: step.component ? step.component : container }))) });
205
+ });
206
+ const definition = {
207
+ name: `${this.namespace}.${method}`,
208
+ features: featureDefinitions,
209
+ scope
210
+ };
211
+ return new A_Abstraction_class_1.A_Abstraction(definition);
212
+ }
208
213
  }
209
214
  exports.A_Concept = A_Concept;
210
215
  //# sourceMappingURL=A_Concept.class.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"A_Concept.class.js","sourceRoot":"","sources":["../../../../src/global/A-Concept/A_Concept.class.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"A_Concept.class.js","sourceRoot":"","sources":["../../../../src/global/A-Concept/A_Concept.class.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,6 @@
1
1
  import { A_Container } from "../A-Container/A-Container.class";
2
2
  import { A_Meta } from "../A-Meta/A-Meta.class";
3
- import { A_TYPES__ConceptStage } from "./A_Concept.types";
4
- import { A_TYPES__A_AbstractionConstructor } from "../A-Abstraction/A-Abstraction.types";
5
- import { A_Abstraction } from "../A-Abstraction/A-Abstraction.class";
6
- import { A_Scope } from "../A-Scope/A-Scope.class";
7
3
  export declare class A_ConceptMeta extends A_Meta<any> {
8
4
  private containers;
9
- private base;
10
- constructor(containers: Array<A_Container>, base: A_Container);
11
- abstractionDefinition(method: A_TYPES__ConceptStage, scope: A_Scope): A_TYPES__A_AbstractionConstructor;
12
- abstraction(method: A_TYPES__ConceptStage, scope: A_Scope): A_Abstraction;
5
+ constructor(containers: Array<A_Container>);
13
6
  }
@@ -2,35 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.A_ConceptMeta = void 0;
4
4
  const A_Meta_class_1 = require("../A-Meta/A-Meta.class");
5
- const A_Context_class_1 = require("../A-Context/A-Context.class");
6
- const A_Abstraction_class_1 = require("../A-Abstraction/A-Abstraction.class");
7
5
  // import { A_TYPES__ComponentMeta } from "./A-Component.types";
8
6
  class A_ConceptMeta extends A_Meta_class_1.A_Meta {
9
- constructor(containers, base) {
7
+ constructor(containers) {
10
8
  super();
11
9
  this.containers = containers;
12
- this.base = base;
13
- }
14
- abstractionDefinition(method, scope) {
15
- const featureDefinitions = this.containers.map(container => A_Context_class_1.A_Context.abstractionDefinition(container, method, scope));
16
- const definition = {
17
- name: `${this.base.name}.${method}`,
18
- features: featureDefinitions,
19
- scope
20
- };
21
- return definition;
22
- }
23
- abstraction(method, scope) {
24
- const featureDefinitions = this.containers.map(container => {
25
- const definition = A_Context_class_1.A_Context.abstractionDefinition(container, method, container.Scope);
26
- return Object.assign(Object.assign({}, definition), { steps: definition.steps.map(step => (Object.assign(Object.assign({}, step), { component: step.component ? step.component : container }))) });
27
- });
28
- const definition = {
29
- name: `${this.base.name}.${method}`,
30
- features: featureDefinitions,
31
- scope
32
- };
33
- return new A_Abstraction_class_1.A_Abstraction(definition);
34
10
  }
35
11
  }
36
12
  exports.A_ConceptMeta = A_ConceptMeta;
@@ -1 +1 @@
1
- {"version":3,"file":"A_Concept.meta.js","sourceRoot":"","sources":["../../../../src/global/A-Concept/A_Concept.meta.ts"],"names":[],"mappings":";;;AAEA,yDAAgD;AAKhD,uFAA8E;AAG9E,8EAAqE;AAErE,gEAAgE;AAGhE,MAAa,aAAc,SAAQ,qBAAW;IAG1C,YACY,UAA8B,EAC9B,IAAiB;QAEzB,KAAK,EAAE,CAAC;QAHA,eAAU,GAAV,UAAU,CAAoB;QAC9B,SAAI,GAAJ,IAAI,CAAa;IAG7B,CAAC;IAED,qBAAqB,CACjB,MAA6B,EAC7B,KAAc;QAGd,MAAM,kBAAkB,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CACvD,2BAAS,CAAC,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,CAC5D,CAAC;QAEF,MAAM,UAAU,GAAG;YACf,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,EAAE;YACnC,QAAQ,EAAE,kBAAkB;YAC5B,KAAK;SACR,CAAC;QAEF,OAAO,UAAU,CAAC;IACtB,CAAC;IAID,WAAW,CACP,MAA6B,EAC7B,KAAc;QAGd,MAAM,kBAAkB,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YACvD,MAAM,UAAU,GAAG,2BAAS,CAAC,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;YAEvF,uCACO,UAAU,KACb,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,iCAAM,IAAI,KAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,IAAG,CAAC,IAC7G;QACL,CAAC,CAAC,CAAC;QAGH,MAAM,UAAU,GAAG;YACf,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,EAAE;YACnC,QAAQ,EAAE,kBAAkB;YAC5B,KAAK;SACR,CAAC;QAEF,OAAO,IAAI,mCAAa,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;CAEJ;AAtDD,sCAsDC"}
1
+ {"version":3,"file":"A_Concept.meta.js","sourceRoot":"","sources":["../../../../src/global/A-Concept/A_Concept.meta.ts"],"names":[],"mappings":";;;AAEA,yDAAgD;AAWhD,gEAAgE;AAGhE,MAAa,aAAc,SAAQ,qBAAW;IAG1C,YACY,UAA8B;QAEtC,KAAK,EAAE,CAAC;QAFA,eAAU,GAAV,UAAU,CAAoB;IAG1C,CAAC;CAQJ;AAfD,sCAeC"}