@adaas/a-concept 0.0.57 → 0.0.59
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.
- package/dist/src/base/A-Config/A-Config.container.d.ts +1 -2
- package/dist/src/base/A-Config/A-Config.container.js +2 -4
- package/dist/src/base/A-Config/A-Config.container.js.map +1 -1
- package/dist/src/base/A-Config/A-Config.context.d.ts +8 -10
- package/dist/src/base/A-Config/A-Config.context.js +3 -18
- package/dist/src/base/A-Config/A-Config.context.js.map +1 -1
- package/dist/src/base/A-Config/A-Config.types.d.ts +4 -4
- package/dist/src/base/A-Config/A-Config.types.js.map +1 -1
- package/dist/src/base/A-Config/components/ConfigReader.component.js +5 -1
- package/dist/src/base/A-Config/components/ConfigReader.component.js.map +1 -1
- package/dist/src/base/A-Config/components/ENVConfigReader.component.js +5 -1
- package/dist/src/base/A-Config/components/ENVConfigReader.component.js.map +1 -1
- package/dist/src/constants/env.constants.d.ts +1 -1
- package/dist/src/global/A-Context/A-Context.class.d.ts +4 -0
- package/dist/src/global/A-Context/A-Context.class.js +18 -1
- package/dist/src/global/A-Context/A-Context.class.js.map +1 -1
- package/dist/src/global/A-Entity/A-Entity.class.js +1 -1
- package/dist/src/global/A-Entity/A-Entity.class.js.map +1 -1
- package/package.json +2 -2
- package/src/base/A-Config/A-Config.container.ts +0 -1
- package/src/base/A-Config/A-Config.context.ts +16 -18
- package/src/base/A-Config/A-Config.types.ts +5 -24
- package/src/base/A-Config/components/ConfigReader.component.ts +5 -1
- package/src/base/A-Config/components/ENVConfigReader.component.ts +6 -1
- package/src/constants/env.constants.ts +2 -5
- package/src/global/A-Context/A-Context.class.ts +23 -1
- package/src/global/A-Entity/A-Entity.class.ts +1 -1
- package/tests/A-Config.test.ts +106 -0
- package/tests/A-Entity.test.ts +5 -0
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { A_Container } from "../../global/A-Container/A-Container.class";
|
|
2
|
-
import { A_Scope } from "../../global/A-Scope/A-Scope.class";
|
|
3
2
|
import { A_Config } from "./A-Config.context";
|
|
4
3
|
import { A_TYPES__ContainerConstructor } from "../../global/A-Container/A-Container.types";
|
|
5
4
|
export declare class A_ConfigLoader extends A_Container {
|
|
6
5
|
private reader;
|
|
7
6
|
constructor(params: Partial<A_TYPES__ContainerConstructor<['load', 'read']>>);
|
|
8
7
|
prepare(config: A_Config): Promise<void>;
|
|
9
|
-
readVariables(config: A_Config
|
|
8
|
+
readVariables(config: A_Config): Promise<void>;
|
|
10
9
|
}
|
|
@@ -25,7 +25,6 @@ const a_utils_1 = require("@adaas/a-utils");
|
|
|
25
25
|
const A_Context_class_1 = require("../../global/A-Context/A-Context.class");
|
|
26
26
|
const FileConfigReader_component_1 = require("./components/FileConfigReader.component");
|
|
27
27
|
const ENVConfigReader_component_1 = require("./components/ENVConfigReader.component");
|
|
28
|
-
const A_Scope_class_1 = require("../../global/A-Scope/A-Scope.class");
|
|
29
28
|
const A_Concept_class_1 = require("../../global/A-Concept/A_Concept.class");
|
|
30
29
|
const A_Config_context_1 = require("./A-Config.context");
|
|
31
30
|
class A_ConfigLoader extends A_Container_class_1.A_Container {
|
|
@@ -51,7 +50,7 @@ class A_ConfigLoader extends A_Container_class_1.A_Container {
|
|
|
51
50
|
}
|
|
52
51
|
});
|
|
53
52
|
}
|
|
54
|
-
readVariables(config
|
|
53
|
+
readVariables(config) {
|
|
55
54
|
return __awaiter(this, void 0, void 0, function* () {
|
|
56
55
|
yield this.reader.inject(config);
|
|
57
56
|
});
|
|
@@ -64,8 +63,7 @@ __decorate([
|
|
|
64
63
|
], A_ConfigLoader.prototype, "prepare", null);
|
|
65
64
|
__decorate([
|
|
66
65
|
A_Concept_class_1.A_Concept.Load(),
|
|
67
|
-
__param(0, (0, A_Inject_decorator_1.A_Inject)(A_Config_context_1.A_Config))
|
|
68
|
-
__param(1, (0, A_Inject_decorator_1.A_Inject)(A_Scope_class_1.A_Scope))
|
|
66
|
+
__param(0, (0, A_Inject_decorator_1.A_Inject)(A_Config_context_1.A_Config))
|
|
69
67
|
], A_ConfigLoader.prototype, "readVariables", null);
|
|
70
68
|
const foo = new A_ConfigLoader({});
|
|
71
69
|
//# sourceMappingURL=A-Config.container.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Config.container.js","sourceRoot":"","sources":["../../../../src/base/A-Config/A-Config.container.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,6FAAoF;AAEpF,gGAAmF;AACnF,4CAA6C;AAC7C,uFAA8E;AAC9E,wFAA2E;AAC3E,sFAAyE;
|
|
1
|
+
{"version":3,"file":"A-Config.container.js","sourceRoot":"","sources":["../../../../src/base/A-Config/A-Config.container.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,6FAAoF;AAEpF,gGAAmF;AACnF,4CAA6C;AAC7C,uFAA8E;AAC9E,wFAA2E;AAC3E,sFAAyE;AAEzE,uFAA8E;AAC9E,yDAA8C;AAI9C,MAAa,cAAe,SAAQ,+BAAW;IAK3C,YAAY,MAA+D;QACvE,KAAK,iCACE,MAAM,KACT,IAAI,EAAC,MAAM,CAAC,IAAI,IAAI,iBAAiB,IACvC,CAAC;IACP,CAAC;IAIK,OAAO,CACW,MAAgB;;YAEpC,MAAM,EAAE,GAAG,MAAM,qBAAW,CAAC,EAAE,EAAE,CAAC;YAElC,QAAQ,IAAI,EAAE,CAAC;gBAEX,KAAK,2BAAS,CAAC,WAAW,KAAK,QAAQ,IAAI,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,YAAY,CAAC;oBACtF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,6CAAgB,CAAC,CAAC;oBACnD,MAAM;gBAEV,KAAK,2BAAS,CAAC,WAAW,KAAK,QAAQ;oBAAE,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,YAAY,CAAC,CAAA;oBACnF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,2CAAe,CAAC,CAAC;oBAClD,MAAM;gBAEV,KAAK,2BAAS,CAAC,WAAW,KAAK,SAAS;oBACpC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,2CAAe,CAAC,CAAC;oBAClD,MAAM;gBAEV;oBACI,MAAM,IAAI,KAAK,CAAC,eAAe,2BAAS,CAAC,WAAW,mBAAmB,CAAC,CAAC;YACjF,CAAC;QAEL,CAAC;KAAA;IAKK,aAAa,CACK,MAAgB;;YAEpC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACrC,CAAC;KAAA;CAEJ;AAhDD,wCAgDC;AAlCS;IADL,2BAAS,CAAC,IAAI,EAAE;IAEZ,WAAA,IAAA,6BAAQ,EAAC,2BAAQ,CAAC,CAAA;6CAsBtB;AAKK;IADL,2BAAS,CAAC,IAAI,EAAE;IAEZ,WAAA,IAAA,6BAAQ,EAAC,2BAAQ,CAAC,CAAA;mDAGtB;AAQL,MAAM,GAAG,GAAG,IAAI,cAAc,CAAC,EAAE,CAAC,CAAC"}
|
|
@@ -1,21 +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
|
-
import {
|
|
5
|
-
export declare class A_Config<T extends string
|
|
3
|
+
import { A_TYPES__ConceptENVVariables } from "../../constants/env.constants";
|
|
4
|
+
export declare class A_Config<T extends Array<string | A_TYPES__ConceptENVVariables[number]> = any[]> extends A_Fragment {
|
|
6
5
|
config: A_TYPES__ConfigContainerConstructor<T>;
|
|
7
6
|
private VARIABLES;
|
|
8
|
-
CONFIG_PROPERTIES: T
|
|
7
|
+
CONFIG_PROPERTIES: T;
|
|
9
8
|
protected DEFAULT_ALLOWED_TO_READ_PROPERTIES: readonly ["A_CONCEPT_NAMESPACE", "A_CONCEPT_ENVIRONMENT", "A_CONCEPT_ROOT_FOLDER", "CONFIG_VERBOSE", "CONFIG_IGNORE_ERRORS"];
|
|
10
|
-
constructor(config:
|
|
11
|
-
protected onInit(): Promise<void>;
|
|
9
|
+
constructor(config: Partial<A_TYPES__ConfigContainerConstructor<T>>);
|
|
12
10
|
/**
|
|
13
11
|
* This method is used to get the configuration property by name
|
|
14
12
|
*
|
|
15
13
|
* @param property
|
|
16
14
|
* @returns
|
|
17
15
|
*/
|
|
18
|
-
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;
|
|
19
17
|
/**
|
|
20
18
|
*
|
|
21
19
|
* This method is used to set the configuration property by name
|
|
@@ -24,9 +22,9 @@ export declare class A_Config<T extends string = A_TYPES__ConceptENVVariables> e
|
|
|
24
22
|
* @param variables
|
|
25
23
|
*/
|
|
26
24
|
set(variables: Array<{
|
|
27
|
-
property: T |
|
|
25
|
+
property: T[number] | A_TYPES__ConceptENVVariables[number];
|
|
28
26
|
value: any;
|
|
29
27
|
}>): any;
|
|
30
|
-
set(variables: Partial<Record<T |
|
|
31
|
-
set(property: T |
|
|
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;
|
|
32
30
|
}
|
|
@@ -1,13 +1,4 @@
|
|
|
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");
|
|
@@ -16,23 +7,17 @@ const env_constants_1 = require("../../constants/env.constants");
|
|
|
16
7
|
class A_Config extends A_Fragment_class_1.A_Fragment {
|
|
17
8
|
constructor(config) {
|
|
18
9
|
super(config);
|
|
19
|
-
// Custom properties
|
|
20
10
|
this.VARIABLES = new Map();
|
|
21
|
-
this.CONFIG_PROPERTIES = [];
|
|
22
11
|
this.DEFAULT_ALLOWED_TO_READ_PROPERTIES = env_constants_1.A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY;
|
|
23
12
|
this.config = a_utils_1.A_CommonHelper.deepCloneAndMerge(config, {
|
|
24
13
|
name: this.name,
|
|
25
14
|
strict: false,
|
|
26
15
|
defaults: {},
|
|
27
|
-
variables:
|
|
16
|
+
variables: env_constants_1.A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY
|
|
28
17
|
});
|
|
29
18
|
this.CONFIG_PROPERTIES = this.config.variables ? this.config.variables : [];
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
33
|
-
this.config.variables.forEach((variable) => {
|
|
34
|
-
this.VARIABLES.set(variable, this.config.defaults[variable]);
|
|
35
|
-
});
|
|
19
|
+
this.config.variables.forEach((variable) => {
|
|
20
|
+
this.VARIABLES.set(variable, this.config.defaults[variable]);
|
|
36
21
|
});
|
|
37
22
|
}
|
|
38
23
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Config.context.js","sourceRoot":"","sources":["../../../../src/base/A-Config/A-Config.context.ts"],"names":[],"mappings":"
|
|
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:
|
|
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":";;;
|
|
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,7 +35,10 @@ 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 = yield this.read(
|
|
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
44
|
config.set('A_CONCEPT_ROOT_FOLDER', rootDir);
|
|
@@ -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;
|
|
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
|
-
|
|
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;
|
|
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"}
|
|
@@ -22,5 +22,5 @@ export declare const A_CONSTANTS__DEFAULT_ENV_VARIABLES: {
|
|
|
22
22
|
readonly CONFIG_VERBOSE: "CONFIG_VERBOSE";
|
|
23
23
|
readonly CONFIG_IGNORE_ERRORS: "CONFIG_IGNORE_ERRORS";
|
|
24
24
|
};
|
|
25
|
-
export type A_TYPES__ConceptENVVariables = (typeof A_CONSTANTS__DEFAULT_ENV_VARIABLES)[keyof typeof A_CONSTANTS__DEFAULT_ENV_VARIABLES];
|
|
25
|
+
export type A_TYPES__ConceptENVVariables = (typeof A_CONSTANTS__DEFAULT_ENV_VARIABLES)[keyof typeof A_CONSTANTS__DEFAULT_ENV_VARIABLES][];
|
|
26
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"];
|
|
@@ -126,4 +126,8 @@ export declare class A_Context {
|
|
|
126
126
|
static register(scope: A_Scope, entity: A_Entity): any;
|
|
127
127
|
static register(scope: A_Scope, component: A_Component): any;
|
|
128
128
|
static register(scope: A_Scope, fragment: A_Fragment): any;
|
|
129
|
+
/**
|
|
130
|
+
* Resets the Context to its initial state.
|
|
131
|
+
*/
|
|
132
|
+
static reset(): void;
|
|
129
133
|
}
|
|
@@ -15,6 +15,7 @@ const A_Entity_class_1 = require("../A-Entity/A-Entity.class");
|
|
|
15
15
|
const A_Entity_meta_1 = require("../A-Entity/A-Entity.meta");
|
|
16
16
|
const A_Container_types_1 = require("../A-Container/A-Container.types");
|
|
17
17
|
const A_Component_types_1 = require("../A-Component/A-Component.types");
|
|
18
|
+
const env_constants_1 = require("../../constants/env.constants");
|
|
18
19
|
/**
|
|
19
20
|
* Namespace Provider is responsible for providing the Namespace to the Containers and other Namespaces.
|
|
20
21
|
* This class stores all Namespaces across the Program.
|
|
@@ -45,7 +46,7 @@ class A_Context {
|
|
|
45
46
|
// uses to allow to store custom meta data
|
|
46
47
|
this.customMeta = new Map();
|
|
47
48
|
this._root = new A_Scope_class_1.A_Scope({
|
|
48
|
-
name: '
|
|
49
|
+
name: process && process.env ? process.env[env_constants_1.A_CONSTANTS__DEFAULT_ENV_VARIABLES.A_CONCEPT_NAMESPACE] || 'a-concept' : 'a-concept'
|
|
49
50
|
});
|
|
50
51
|
}
|
|
51
52
|
// ===================================================================================================
|
|
@@ -356,6 +357,22 @@ class A_Context {
|
|
|
356
357
|
break;
|
|
357
358
|
}
|
|
358
359
|
}
|
|
360
|
+
/**
|
|
361
|
+
* Resets the Context to its initial state.
|
|
362
|
+
*/
|
|
363
|
+
static reset() {
|
|
364
|
+
const instance = A_Context.getInstance();
|
|
365
|
+
instance.containers = new WeakMap();
|
|
366
|
+
instance.features = new WeakMap();
|
|
367
|
+
instance.registry = new WeakMap();
|
|
368
|
+
instance.containersMeta = new Map();
|
|
369
|
+
instance.componentsMeta = new Map();
|
|
370
|
+
instance.entitiesMeta = new Map();
|
|
371
|
+
instance.customMeta = new Map();
|
|
372
|
+
instance._root = new A_Scope_class_1.A_Scope({
|
|
373
|
+
name: process && process.env ? process.env[env_constants_1.A_CONSTANTS__DEFAULT_ENV_VARIABLES.A_CONCEPT_NAMESPACE] || 'a-concept' : 'a-concept'
|
|
374
|
+
});
|
|
375
|
+
}
|
|
359
376
|
}
|
|
360
377
|
exports.A_Context = A_Context;
|
|
361
378
|
//# sourceMappingURL=A-Context.class.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Context.class.js","sourceRoot":"","sources":["../../../../src/global/A-Context/A-Context.class.ts"],"names":[],"mappings":";;;AAAA,4CAIwB;AACxB,wEAA+D;AAC/D,qEAA4D;AAC5D,kEAAyD;AACzD,wEAA+D;AAC/D,4DAAmD;AAEnD,yDAAgD;AAChD,sEAAkE;AAClE,sEAAkE;AAClE,+DAAoE;AACpE,+DAAsD;AACtD,6DAAyD;AAGzD,wEAA6E;AAC7E,wEAA6E;
|
|
1
|
+
{"version":3,"file":"A-Context.class.js","sourceRoot":"","sources":["../../../../src/global/A-Context/A-Context.class.ts"],"names":[],"mappings":"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"}
|
|
@@ -39,7 +39,7 @@ class A_Entity {
|
|
|
39
39
|
* [!] If environment variable is not set, it will default to 'a-concept'
|
|
40
40
|
*/
|
|
41
41
|
static get namespace() {
|
|
42
|
-
return
|
|
42
|
+
return A_Context_class_1.A_Context.root.name;
|
|
43
43
|
}
|
|
44
44
|
/**
|
|
45
45
|
* DEFAULT Scope of the entity from environment variable A_CONCEPT_DEFAULT_SCOPE
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Entity.class.js","sourceRoot":"","sources":["../../../../src/global/A-Entity/A-Entity.class.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAIwB;AAKxB,yFAAiG;AACjG,kEAAyD;AAEzD,4EAAwI;AAIxI;;;;;;GAMG;AACH,MAAa,QAAQ;IAOjB,uEAAuE;IACvE,8EAA8E;IAC9E,uEAAuE;IAEvE;;OAEG;IACH,MAAM,KAAK,MAAM;QACb,OAAO,wBAAc;aAChB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;aAC3B,iBAAiB,EAAE;aACnB,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACH,MAAM,KAAK,SAAS;QAChB,OAAO,
|
|
1
|
+
{"version":3,"file":"A-Entity.class.js","sourceRoot":"","sources":["../../../../src/global/A-Entity/A-Entity.class.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adaas/a-concept",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.59",
|
|
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",
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
},
|
|
52
52
|
"homepage": "https://github.com/ADAAS-org/adaas-adf-auth#readme",
|
|
53
53
|
"dependencies": {
|
|
54
|
-
"@adaas/a-utils": "^0.0.
|
|
54
|
+
"@adaas/a-utils": "^0.0.7",
|
|
55
55
|
"@types/node": "^20.10.0"
|
|
56
56
|
},
|
|
57
57
|
"devDependencies": {
|
|
@@ -5,35 +5,33 @@ import { A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY, A_TYPES__ConceptENVVariables
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
export class A_Config<
|
|
8
|
-
T extends string =
|
|
8
|
+
T extends Array<string | A_TYPES__ConceptENVVariables[number]> = any[]
|
|
9
9
|
> extends A_Fragment {
|
|
10
10
|
|
|
11
11
|
config: A_TYPES__ConfigContainerConstructor<T>;
|
|
12
12
|
|
|
13
|
-
// Custom properties
|
|
14
|
-
private VARIABLES: Map<string, any> = new Map<string, any>();
|
|
15
13
|
|
|
16
|
-
|
|
14
|
+
private VARIABLES: Map<T[number], any> = new Map<T[number], any>();
|
|
15
|
+
|
|
16
|
+
CONFIG_PROPERTIES!: T;
|
|
17
17
|
|
|
18
18
|
protected DEFAULT_ALLOWED_TO_READ_PROPERTIES = A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY;
|
|
19
19
|
|
|
20
20
|
|
|
21
21
|
constructor(
|
|
22
|
-
config:
|
|
22
|
+
config: Partial<A_TYPES__ConfigContainerConstructor<T>>
|
|
23
23
|
) {
|
|
24
24
|
super(config);
|
|
25
25
|
|
|
26
26
|
this.config = A_CommonHelper.deepCloneAndMerge<A_TYPES__ConfigContainerConstructor<T>>(config as any, {
|
|
27
27
|
name: this.name,
|
|
28
28
|
strict: false,
|
|
29
|
-
defaults: {}
|
|
30
|
-
variables:
|
|
29
|
+
defaults: {},
|
|
30
|
+
variables: A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY as any as T
|
|
31
31
|
});
|
|
32
32
|
|
|
33
|
-
this.CONFIG_PROPERTIES = this.config.variables ? this.config.variables : [];
|
|
34
|
-
}
|
|
33
|
+
this.CONFIG_PROPERTIES = this.config.variables ? this.config.variables : [] as any as T;
|
|
35
34
|
|
|
36
|
-
protected async onInit(): Promise<void> {
|
|
37
35
|
this.config.variables.forEach((variable) => {
|
|
38
36
|
this.VARIABLES.set(variable, this.config.defaults[variable]);
|
|
39
37
|
});
|
|
@@ -47,7 +45,7 @@ export class A_Config<
|
|
|
47
45
|
* @returns
|
|
48
46
|
*/
|
|
49
47
|
get<_OutType = any>(
|
|
50
|
-
property: T | typeof this.DEFAULT_ALLOWED_TO_READ_PROPERTIES[number]
|
|
48
|
+
property: T[number] | typeof this.DEFAULT_ALLOWED_TO_READ_PROPERTIES[number]
|
|
51
49
|
): _OutType {
|
|
52
50
|
if (this.CONFIG_PROPERTIES.includes(property as any)
|
|
53
51
|
|| this.DEFAULT_ALLOWED_TO_READ_PROPERTIES.includes(property as any)
|
|
@@ -70,22 +68,22 @@ export class A_Config<
|
|
|
70
68
|
*/
|
|
71
69
|
set(
|
|
72
70
|
variables: Array<{
|
|
73
|
-
property: T |
|
|
71
|
+
property: T[number] | A_TYPES__ConceptENVVariables[number],
|
|
74
72
|
value: any
|
|
75
73
|
}>
|
|
76
74
|
)
|
|
77
75
|
set(
|
|
78
|
-
variables: Partial<Record<T |
|
|
76
|
+
variables: Partial<Record<T[number] | A_TYPES__ConceptENVVariables[number], any>>
|
|
79
77
|
)
|
|
80
78
|
set(
|
|
81
|
-
property: T |
|
|
79
|
+
property: T[number] | A_TYPES__ConceptENVVariables[number],
|
|
82
80
|
value: any
|
|
83
81
|
)
|
|
84
82
|
set(
|
|
85
|
-
property: T |
|
|
86
|
-
property: T |
|
|
83
|
+
property: T[number] | A_TYPES__ConceptENVVariables[number] | Array<{
|
|
84
|
+
property: T[number] | A_TYPES__ConceptENVVariables[number],
|
|
87
85
|
value: any
|
|
88
|
-
}> | Partial<Record<T |
|
|
86
|
+
}> | Partial<Record<T[number] | A_TYPES__ConceptENVVariables[number], any>>,
|
|
89
87
|
value?: any
|
|
90
88
|
) {
|
|
91
89
|
const array = Array.isArray(property)
|
|
@@ -104,7 +102,7 @@ export class A_Config<
|
|
|
104
102
|
let targetValue = value
|
|
105
103
|
? value
|
|
106
104
|
: this.config?.defaults
|
|
107
|
-
? this.config.defaults[property as T]
|
|
105
|
+
? this.config.defaults[property as T[number]]
|
|
108
106
|
: undefined;
|
|
109
107
|
|
|
110
108
|
this.VARIABLES.set(property as string, targetValue);
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { A_TYPES__ConceptENVVariables } from "@adaas/a-concept/constants/env.constants";
|
|
1
2
|
import { A_TYPES__FragmentConstructor } from "@adaas/a-concept/global/A-Fragment/A-Fragment.types";
|
|
2
3
|
|
|
3
4
|
|
|
@@ -6,8 +7,8 @@ export enum A_TYPES__ConfigFeature {
|
|
|
6
7
|
}
|
|
7
8
|
|
|
8
9
|
|
|
9
|
-
export type A_TYPES__ConfigContainerConstructor<T extends
|
|
10
|
-
|
|
10
|
+
export type A_TYPES__ConfigContainerConstructor<T extends Array<string | A_TYPES__ConceptENVVariables[number]>> = {
|
|
11
|
+
|
|
11
12
|
/**
|
|
12
13
|
* If set to true, the SDK will throw an error if the variable is not defined OR not presented in the defaults
|
|
13
14
|
*/
|
|
@@ -16,32 +17,12 @@ export type A_TYPES__ConfigContainerConstructor<T extends string> = {
|
|
|
16
17
|
/**
|
|
17
18
|
* Allows to define the names of variable to be loaded
|
|
18
19
|
*/
|
|
19
|
-
variables:
|
|
20
|
+
variables: T
|
|
20
21
|
|
|
21
22
|
/**
|
|
22
23
|
* Allows to set the default values for the variables
|
|
23
24
|
*/
|
|
24
25
|
defaults: {
|
|
25
|
-
[key in T]?: any
|
|
26
|
+
[key in T[number]]?: any
|
|
26
27
|
}
|
|
27
|
-
|
|
28
|
-
// credentials?: {
|
|
29
|
-
// /**
|
|
30
|
-
// * Api Credentials Client ID to authenticate the SDK
|
|
31
|
-
// * can be skipped for the FrontEnd SDKs
|
|
32
|
-
// */
|
|
33
|
-
// client_id: string,
|
|
34
|
-
|
|
35
|
-
// /**
|
|
36
|
-
// * Api Credentials Client Secret to authenticate the SDK
|
|
37
|
-
// * can be skipped for the FrontEnd SDKs
|
|
38
|
-
// */
|
|
39
|
-
// client_secret: string
|
|
40
|
-
|
|
41
|
-
// }
|
|
42
28
|
} & A_TYPES__FragmentConstructor;
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
export type A_TYPES__ConfigContainer_DefaultProperties = 'CONFIG_SDK_VALIDATION'
|
|
46
|
-
| 'CONFIG_VERBOSE'
|
|
47
|
-
| 'CONFIG_IGNORE_ERRORS';
|
|
@@ -4,6 +4,7 @@ import { A_Inject } from "@adaas/a-concept/decorators/A-Inject/A-Inject.decorato
|
|
|
4
4
|
import { A_Component } from "@adaas/a-concept/global/A-Component/A-Component.class";
|
|
5
5
|
import { A_Config } from "../A-Config.context";
|
|
6
6
|
import { A_Concept } from "@adaas/a-concept/global/A-Concept/A_Concept.class";
|
|
7
|
+
import { A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY } from "@adaas/a-concept/constants/env.constants";
|
|
7
8
|
|
|
8
9
|
/**
|
|
9
10
|
* Config Reader
|
|
@@ -22,7 +23,10 @@ export class ConfigReader extends A_Component {
|
|
|
22
23
|
@A_Inject(A_Config) config: A_Config,
|
|
23
24
|
) {
|
|
24
25
|
|
|
25
|
-
const data = await this.read(
|
|
26
|
+
const data = await this.read([
|
|
27
|
+
...config.CONFIG_PROPERTIES,
|
|
28
|
+
...A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY
|
|
29
|
+
]);
|
|
26
30
|
|
|
27
31
|
config.set(data);
|
|
28
32
|
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { A_CommonHelper } from "@adaas/a-utils";
|
|
2
2
|
import { ConfigReader } from "./ConfigReader.component";
|
|
3
|
+
import { A_Context } from "@adaas/a-concept/global/A-Context/A-Context.class";
|
|
4
|
+
import { A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY } from "@adaas/a-concept/constants/env.constants";
|
|
3
5
|
|
|
4
6
|
|
|
5
7
|
export class ENVConfigReader extends ConfigReader {
|
|
@@ -10,7 +12,10 @@ export class ENVConfigReader extends ConfigReader {
|
|
|
10
12
|
* @param property
|
|
11
13
|
*/
|
|
12
14
|
getConfigurationProperty_ENV_Alias(property: string): string {
|
|
13
|
-
|
|
15
|
+
if (A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY.some(p => p === property))
|
|
16
|
+
return A_CommonHelper.toUpperSnakeCase(property);
|
|
17
|
+
|
|
18
|
+
return `${A_CommonHelper.toUpperSnakeCase(A_Context.root.name)}_${A_CommonHelper.toUpperSnakeCase(property)}`;
|
|
14
19
|
}
|
|
15
20
|
|
|
16
21
|
|
|
@@ -30,8 +30,8 @@ export const A_CONSTANTS__DEFAULT_ENV_VARIABLES = {
|
|
|
30
30
|
} as const
|
|
31
31
|
|
|
32
32
|
|
|
33
|
-
|
|
34
|
-
|
|
33
|
+
//should be an array
|
|
34
|
+
export type A_TYPES__ConceptENVVariables = (typeof A_CONSTANTS__DEFAULT_ENV_VARIABLES)[keyof typeof A_CONSTANTS__DEFAULT_ENV_VARIABLES][];
|
|
35
35
|
|
|
36
36
|
|
|
37
37
|
export const A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY = [
|
|
@@ -42,6 +42,3 @@ export const A_CONSTANTS__DEFAULT_ENV_VARIABLES_ARRAY = [
|
|
|
42
42
|
A_CONSTANTS__DEFAULT_ENV_VARIABLES.CONFIG_IGNORE_ERRORS,
|
|
43
43
|
] as const;
|
|
44
44
|
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
@@ -21,6 +21,7 @@ import { A_TYPES__ContainerMetaKey } from "../A-Container/A-Container.types";
|
|
|
21
21
|
import { A_TYPES__ComponentMetaKey } from "../A-Component/A-Component.types";
|
|
22
22
|
import { A_TYPES__ConceptStage } from "../A-Concept/A_Concept.types";
|
|
23
23
|
import { A_TYPES__A_DefineDecorator_Meta } from "@adaas/a-concept/decorators/A-Feature/A-Feature.decorator.types";
|
|
24
|
+
import { A_CONSTANTS__DEFAULT_ENV_VARIABLES } from "@adaas/a-concept/constants/env.constants";
|
|
24
25
|
|
|
25
26
|
|
|
26
27
|
|
|
@@ -80,7 +81,7 @@ export class A_Context {
|
|
|
80
81
|
|
|
81
82
|
private constructor() {
|
|
82
83
|
this._root = new A_Scope({
|
|
83
|
-
name: '
|
|
84
|
+
name: process && process.env ? process.env[A_CONSTANTS__DEFAULT_ENV_VARIABLES.A_CONCEPT_NAMESPACE] || 'a-concept' : 'a-concept'
|
|
84
85
|
});
|
|
85
86
|
}
|
|
86
87
|
|
|
@@ -626,4 +627,25 @@ export class A_Context {
|
|
|
626
627
|
break;
|
|
627
628
|
}
|
|
628
629
|
}
|
|
630
|
+
|
|
631
|
+
|
|
632
|
+
/**
|
|
633
|
+
* Resets the Context to its initial state.
|
|
634
|
+
*/
|
|
635
|
+
static reset() {
|
|
636
|
+
const instance = A_Context.getInstance();
|
|
637
|
+
|
|
638
|
+
instance.containers = new WeakMap();
|
|
639
|
+
instance.features = new WeakMap();
|
|
640
|
+
instance.registry = new WeakMap();
|
|
641
|
+
instance.containersMeta = new Map();
|
|
642
|
+
instance.componentsMeta = new Map();
|
|
643
|
+
instance.entitiesMeta = new Map();
|
|
644
|
+
instance.customMeta = new Map();
|
|
645
|
+
|
|
646
|
+
instance._root = new A_Scope({
|
|
647
|
+
name: process && process.env ? process.env[A_CONSTANTS__DEFAULT_ENV_VARIABLES.A_CONCEPT_NAMESPACE] || 'a-concept' : 'a-concept'
|
|
648
|
+
});
|
|
649
|
+
|
|
650
|
+
}
|
|
629
651
|
}
|
|
@@ -47,7 +47,7 @@ export class A_Entity<
|
|
|
47
47
|
* [!] If environment variable is not set, it will default to 'a-concept'
|
|
48
48
|
*/
|
|
49
49
|
static get namespace(): string {
|
|
50
|
-
return
|
|
50
|
+
return A_Context.root.name;
|
|
51
51
|
}
|
|
52
52
|
|
|
53
53
|
/**
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { A_ConfigLoader } from "@adaas/a-concept/base/A-Config/A-Config.container";
|
|
2
|
+
import { A_Config } from "@adaas/a-concept/base/A-Config/A-Config.context";
|
|
3
|
+
import { ENVConfigReader } from "@adaas/a-concept/base/A-Config/components/ENVConfigReader.component";
|
|
4
|
+
import { A_CONSTANTS__DEFAULT_ENV_VARIABLES } from "@adaas/a-concept/constants/env.constants";
|
|
5
|
+
import { A_Context } from "@adaas/a-concept/global/A-Context/A-Context.class";
|
|
6
|
+
import { A_Scope } from "@adaas/a-concept/global/A-Scope/A-Scope.class";
|
|
7
|
+
|
|
8
|
+
jest.retryTimes(0);
|
|
9
|
+
|
|
10
|
+
describe('A-Config tests', () => {
|
|
11
|
+
it('Should Allow to create a config object', async () => {
|
|
12
|
+
const config = new A_Config({
|
|
13
|
+
variables: [],
|
|
14
|
+
defaults: {}
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
it('Should Allow to create a config object with default values', async () => {
|
|
18
|
+
const config = new A_Config({
|
|
19
|
+
variables: ['TEST_VAR1', 'TEST_VAR2'] as const,
|
|
20
|
+
defaults: {
|
|
21
|
+
TEST_VAR1: 'default1',
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
expect(config.get('TEST_VAR1')).toBe('default1');
|
|
26
|
+
expect(config.get('TEST_VAR2')).toBeUndefined();
|
|
27
|
+
});
|
|
28
|
+
it('Should Allow to create a config object with ENV values', async () => {
|
|
29
|
+
process.env['A_CONCEPT_TEST_VAR1'] = 'env1';
|
|
30
|
+
process.env['A_CONCEPT_TEST_VAR2'] = 'env2';
|
|
31
|
+
|
|
32
|
+
const config = new A_Config({
|
|
33
|
+
variables: ['TEST_VAR1', 'TEST_VAR2'] as const,
|
|
34
|
+
defaults: {
|
|
35
|
+
TEST_VAR1: 'default1',
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
|
|
39
|
+
const configLoader = new A_ConfigLoader({
|
|
40
|
+
name: 'test-config-loader',
|
|
41
|
+
fragments: [config],
|
|
42
|
+
components: [ENVConfigReader]
|
|
43
|
+
})
|
|
44
|
+
|
|
45
|
+
await configLoader.prepare(config as any);
|
|
46
|
+
await configLoader.readVariables(config as any);
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
expect(config.get('TEST_VAR1')).toBe('env1');
|
|
51
|
+
expect(config.get('TEST_VAR2')).toBe('env2');
|
|
52
|
+
|
|
53
|
+
delete process.env['A_CONCEPT_TEST_VAR1'];
|
|
54
|
+
delete process.env['A_CONCEPT_TEST_VAR2'];
|
|
55
|
+
});
|
|
56
|
+
it('Should not Change Names of default env variables', async () => {
|
|
57
|
+
process.env[A_CONSTANTS__DEFAULT_ENV_VARIABLES.A_CONCEPT_NAMESPACE] = 'my-project';
|
|
58
|
+
process.env['MY_PROJECT_TEST_VAR2'] = 'env2';
|
|
59
|
+
|
|
60
|
+
A_Context.reset();
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
const config = new A_Config({
|
|
64
|
+
variables: ['TEST_VAR1', 'TEST_VAR2'] as const,
|
|
65
|
+
defaults: {
|
|
66
|
+
TEST_VAR1: 'default1',
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
const configLoader = new A_ConfigLoader({
|
|
71
|
+
name: 'test-config-loader',
|
|
72
|
+
fragments: [config],
|
|
73
|
+
components: [ENVConfigReader]
|
|
74
|
+
})
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
await configLoader.prepare(config as any);
|
|
78
|
+
await configLoader.readVariables(config as any);
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
expect(config.get('TEST_VAR1')).toBe('default1');
|
|
82
|
+
expect(config.get('TEST_VAR2')).toBe('env2');
|
|
83
|
+
expect(config.get('A_CONCEPT_NAMESPACE')).toBe('my-project');
|
|
84
|
+
|
|
85
|
+
delete process.env[A_CONSTANTS__DEFAULT_ENV_VARIABLES.A_CONCEPT_NAMESPACE];
|
|
86
|
+
delete process.env['TEST_VAR2'];
|
|
87
|
+
|
|
88
|
+
// then reset context root
|
|
89
|
+
A_Context.reset();
|
|
90
|
+
|
|
91
|
+
});
|
|
92
|
+
it('Should Throw an error if strict is true and variable is not defined', async () => {
|
|
93
|
+
expect(() => {
|
|
94
|
+
const config = new A_Config({
|
|
95
|
+
strict: true,
|
|
96
|
+
variables: ['TEST_VAR1', 'TEST_VAR2'] as const,
|
|
97
|
+
defaults: {
|
|
98
|
+
TEST_VAR1: 'default1',
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
config.get('TEST_VAR3' as any);
|
|
103
|
+
|
|
104
|
+
}).toThrowError();
|
|
105
|
+
});
|
|
106
|
+
});
|
package/tests/A-Entity.test.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { A_CONSTANTS__DEFAULT_ENV_VARIABLES } from "@adaas/a-concept/constants/env.constants";
|
|
2
|
+
import { A_Context } from "@adaas/a-concept/global/A-Context/A-Context.class";
|
|
2
3
|
import { A_Entity } from "@adaas/a-concept/global/A-Entity/A-Entity.class";
|
|
3
4
|
import { A_TYPES__Entity_JSON } from "@adaas/a-concept/global/A-Entity/A-Entity.types";
|
|
4
5
|
import { A_Feature } from "@adaas/a-concept/global/A-Feature/A-Feature.class";
|
|
@@ -45,6 +46,8 @@ describe('A-Entity tests', () => {
|
|
|
45
46
|
process.env[A_CONSTANTS__DEFAULT_ENV_VARIABLES.A_CONCEPT_DEFAULT_SCOPE] = 'env-scope';
|
|
46
47
|
process.env[A_CONSTANTS__DEFAULT_ENV_VARIABLES.A_CONCEPT_NAMESPACE] = 'env-namespace';
|
|
47
48
|
|
|
49
|
+
A_Context.reset();
|
|
50
|
+
|
|
48
51
|
const entity = new A_Entity();
|
|
49
52
|
|
|
50
53
|
expect(entity.aseid).toBeInstanceOf(ASEID);
|
|
@@ -53,6 +56,8 @@ describe('A-Entity tests', () => {
|
|
|
53
56
|
|
|
54
57
|
delete process.env[A_CONSTANTS__DEFAULT_ENV_VARIABLES.A_CONCEPT_DEFAULT_SCOPE];
|
|
55
58
|
delete process.env[A_CONSTANTS__DEFAULT_ENV_VARIABLES.A_CONCEPT_NAMESPACE];
|
|
59
|
+
|
|
60
|
+
A_Context.reset();
|
|
56
61
|
});
|
|
57
62
|
it('Should Allow to create an entity from ASEID', async () => {
|
|
58
63
|
const entity = new A_Entity(
|