@adaas/a-concept 0.0.4 → 0.0.5
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/examples/simple/concept.js +1 -1
- package/dist/examples/simple/concept.js.map +1 -1
- package/dist/examples/simple/containers/Main.container.d.ts +1 -1
- package/dist/examples/simple/containers/Main.container.js +10 -3
- package/dist/examples/simple/containers/Main.container.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/src/base/A-Config/A-Config.types.d.ts +2 -0
- package/dist/src/base/A-Config/A-Config.types.js +4 -0
- package/dist/src/base/A-Config/A-Config.types.js.map +1 -1
- package/dist/src/decorators/A-Inject/A-Inject.decorator.js.map +1 -1
- package/dist/src/global/A-Container/A-Container.class.js.map +1 -1
- package/dist/src/global/A-Context/A-Context.class.d.ts +1 -0
- package/dist/src/global/A-Context/A-Context.class.js +3 -1
- package/dist/src/global/A-Context/A-Context.class.js.map +1 -1
- package/dist/src/global/A-Dependency/A-DependencyReference.class.d.ts +0 -17
- package/dist/src/global/A-Dependency/A-DependencyReference.class.js +47 -65
- package/dist/src/global/A-Dependency/A-DependencyReference.class.js.map +1 -1
- package/dist/src/global/A-Entity/A-Entity.class.d.ts +49 -2
- package/dist/src/global/A-Entity/A-Entity.class.js +88 -2
- package/dist/src/global/A-Entity/A-Entity.class.js.map +1 -1
- package/dist/src/global/A-Entity/A-Entity.types.d.ts +13 -0
- package/dist/src/global/A-Entity/A-Entity.types.js +2 -0
- package/dist/src/global/A-Entity/A-Entity.types.js.map +1 -1
- package/dist/src/global/A-Meta/A-Meta.class.d.ts +5 -0
- package/dist/src/global/A-Meta/A-Meta.class.js +26 -0
- package/dist/src/global/A-Meta/A-Meta.class.js.map +1 -1
- package/dist/src/global/A-Scope/A-Scope.class.js +4 -2
- package/dist/src/global/A-Scope/A-Scope.class.js.map +1 -1
- package/examples/simple/concept.ts +1 -1
- package/examples/simple/containers/Main.container.ts +9 -3
- package/index.ts +3 -0
- package/jest.config.ts +0 -4
- package/package.json +1 -1
- package/src/base/A-Config/A-Config.types.ts +6 -1
- package/src/decorators/A-Inject/A-Inject.decorator.ts +0 -1
- package/src/global/A-Container/A-Container.class.ts +0 -5
- package/src/global/A-Context/A-Context.class.ts +3 -1
- package/src/global/A-Dependency/A-DependencyReference.class.ts +61 -61
- package/src/global/A-Entity/A-Entity.class.ts +128 -3
- package/src/global/A-Entity/A-Entity.types.ts +17 -0
- package/src/global/A-Meta/A-Meta.class.ts +36 -0
- package/src/global/A-Scope/A-Scope.class.ts +5 -2
- package/tsconfig.json +0 -4
- package/src/storage/A_Component.storage.ts +0 -28
- package/src/storage/A_Concept.storage.ts +0 -49
- package/src/storage/A_Container.storage.ts +0 -21
- package/src/storage/A_Inject.storage.ts +0 -30
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concept.js","sourceRoot":"","sources":["../../../examples/simple/concept.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,uFAA8E;AAC9E,gEAA4D;AAC5D,0DAAsD;AACtD,0DAAsD;AACtD,sFAA2E;AAC3E,sFAA2E;AAC3E,6FAAoF;AAGpF,CAAC,GAAS,EAAE;IAER,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAErB,MAAM,GAAI,SAAQ,+BAAwB;KAEzC;IAGD,MAAM,aAAa,GAAG,IAAI,2BAAS,CAAC;QAChC,IAAI,EAAE,gBAAgB;QACtB,SAAS,EAAE;YACP,IAAI,2BAAQ,CAAC;gBACT,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;gBAC1B,QAAQ,EAAE;oBACN,CAAC,EAAE,CAAC;iBACP;aACJ,CAAC;YACF,IAAI,2BAAQ,CAAC;gBACT,MAAM,EAAE;oBACJ;wBACI,IAAI,EAAE,YAAY;wBAClB,WAAW,EAAE,SAAS;wBACtB,OAAO,EAAE,SAAS;qBACrB;iBACJ;aACJ,CAAC;SACL;QACD,UAAU,EAAE;YACR,IAAI,8BAAa,CAAC;gBACd,UAAU,EAAE;oBACR,wBAAU;oBACV,wBAAU;iBACb;aACJ,CAAC;YACF,IAAI,GAAG,CAAC,EAAE,CAAC;SACd;KACJ,CAAC,CAAC;IAEH,MAAM,aAAa,CAAC,GAAG,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"concept.js","sourceRoot":"","sources":["../../../examples/simple/concept.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,uFAA8E;AAC9E,gEAA4D;AAC5D,0DAAsD;AACtD,0DAAsD;AACtD,sFAA2E;AAC3E,sFAA2E;AAC3E,6FAAoF;AAGpF,CAAC,GAAS,EAAE;IAER,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAErB,MAAM,GAAI,SAAQ,+BAAwB;KAEzC;IAGD,MAAM,aAAa,GAAG,IAAI,2BAAS,CAAC;QAChC,IAAI,EAAE,gBAAgB;QACtB,SAAS,EAAE;YACP,IAAI,2BAAQ,CAAC;gBACT,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;gBAC1B,QAAQ,EAAE;oBACN,CAAC,EAAE,CAAC;iBACP;aACJ,CAAC;YACF,IAAI,2BAAQ,CAAC;gBACT,MAAM,EAAE;oBACJ;wBACI,IAAI,EAAE,YAAY;wBAClB,WAAW,EAAE,SAAS;wBACtB,OAAO,EAAE,SAAS;qBACrB;iBACJ;aACJ,CAAC;SACL;QACD,UAAU,EAAE;YACR,IAAI,8BAAa,CAAC;gBACd,UAAU,EAAE;oBACR,wBAAU;oBACV,wBAAU;iBACb;aACJ,CAAC;YACF,IAAI,GAAG,CAAC,EAAE,CAAC;SACd;KACJ,CAAC,CAAC;IAEH,MAAM,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAE3B,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAEnC,CAAC,CAAA,CAAC,EAAE,CAAC"}
|
|
@@ -5,6 +5,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
6
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
7
|
};
|
|
8
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
9
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
10
|
+
};
|
|
8
11
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
9
12
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
10
13
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -21,15 +24,18 @@ const A_Feature_class_1 = require("../../../src/global/A-Feature/A-Feature.class
|
|
|
21
24
|
const Fragment_A_context_1 = require("../context/Fragment_A.context");
|
|
22
25
|
const Fragment_B_context_1 = require("../context/Fragment_B.context");
|
|
23
26
|
const A_Concept_class_1 = require("../../../src/global/A-Concept/A_Concept.class");
|
|
27
|
+
const A_Inject_decorator_1 = require("../../../src/decorators/A-Inject/A-Inject.decorator");
|
|
24
28
|
class MainContainer extends A_Container_class_1.A_Container {
|
|
25
29
|
load() {
|
|
26
30
|
return __awaiter(this, void 0, void 0, function* () {
|
|
27
31
|
console.log('Main container loaded');
|
|
28
32
|
});
|
|
29
33
|
}
|
|
30
|
-
start() {
|
|
34
|
+
start(params) {
|
|
31
35
|
return __awaiter(this, void 0, void 0, function* () {
|
|
32
|
-
|
|
36
|
+
if (params) {
|
|
37
|
+
console.log('Start');
|
|
38
|
+
}
|
|
33
39
|
});
|
|
34
40
|
}
|
|
35
41
|
method_A() {
|
|
@@ -53,7 +59,8 @@ __decorate([
|
|
|
53
59
|
A_Concept_class_1.A_Concept.Load()
|
|
54
60
|
], MainContainer.prototype, "load", null);
|
|
55
61
|
__decorate([
|
|
56
|
-
A_Concept_class_1.A_Concept.Start()
|
|
62
|
+
A_Concept_class_1.A_Concept.Start(),
|
|
63
|
+
__param(0, (0, A_Inject_decorator_1.A_Inject)(MainContainer))
|
|
57
64
|
], MainContainer.prototype, "start", null);
|
|
58
65
|
__decorate([
|
|
59
66
|
A_Feature_class_1.A_Feature.Define()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Main.container.js","sourceRoot":"","sources":["../../../../examples/simple/containers/Main.container.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Main.container.js","sourceRoot":"","sources":["../../../../examples/simple/containers/Main.container.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,6FAAoF;AACpF,uFAA8E;AAC9E,sEAAiE;AACjE,sEAAiE;AACjE,uFAA8E;AAC9E,gGAAmF;AAInF,MAAa,aAAc,SAAQ,+BAElC;IAGS,IAAI;;YACN,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACzC,CAAC;KAAA;IAGK,KAAK,CACkB,MAAY;;YAErC,IAAI,MAAM,EAAE,CAAC;gBACT,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAEzB,CAAC;QACL,CAAC;KAAA;IAMK,QAAQ;;YACV,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACxB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBAClC,SAAS,EAAE,CAAC,IAAI,qCAAgB,EAAE,EAAE,IAAI,qCAAgB,EAAE,CAAC;aAC9D,CAAC,CAAC;YAEH,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QAC5B,CAAC;KAAA;IAGK,QAAQ;;YACV,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACxB,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACjC,CAAC;KAAA;CACJ;AArCD,sCAqCC;AAhCS;IADL,2BAAS,CAAC,IAAI,EAAE;yCAGhB;AAGK;IADL,2BAAS,CAAC,KAAK,EAAE;IAEb,WAAA,IAAA,6BAAQ,EAAC,aAAa,CAAC,CAAA;0CAM3B;AAMK;IADL,2BAAS,CAAC,MAAM,EAAE;6CAQlB;AAGK;IADL,2BAAS,CAAC,MAAM,EAAE;6CAIlB"}
|
package/dist/index.d.ts
CHANGED
|
@@ -9,6 +9,8 @@ export * from './src/global/A-Container/A-Container.class';
|
|
|
9
9
|
export { A_Component } from './src/global/A-Component/A-Component.class';
|
|
10
10
|
export { A_ComponentMeta } from './src/global/A-Component/A-Component.meta';
|
|
11
11
|
export * from './src/global/A-Component/A-Component.types';
|
|
12
|
+
export { A_Entity } from './src/global/A-Entity/A-Entity.class';
|
|
13
|
+
export * from './src/global/A-Entity/A-Entity.types';
|
|
12
14
|
export { A_Feature } from './src/global/A-Feature/A-Feature.class';
|
|
13
15
|
export * from './src/global/A-Feature/A-Feature.types';
|
|
14
16
|
export { A_Scope } from './src/global/A-Scope/A-Scope.class';
|
package/dist/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.A_Errors = exports.A_ErrorsManager = exports.FileConfigReader = exports.ENVConfigReader = exports.ConfigReader = exports.A_Config = exports.A_ConfigLoader = exports.A_Inject = exports.A_Fragment = exports.A_Meta = exports.A_Scope = exports.A_Feature = exports.A_ComponentMeta = exports.A_Component = exports.A_ContainerMeta = exports.A_Container = exports.A_ConceptMeta = exports.A_Concept = exports.A_Context = void 0;
|
|
17
|
+
exports.A_Errors = exports.A_ErrorsManager = exports.FileConfigReader = exports.ENVConfigReader = exports.ConfigReader = exports.A_Config = exports.A_ConfigLoader = exports.A_Inject = exports.A_Fragment = exports.A_Meta = exports.A_Scope = exports.A_Feature = exports.A_Entity = exports.A_ComponentMeta = exports.A_Component = exports.A_ContainerMeta = exports.A_Container = exports.A_ConceptMeta = exports.A_Concept = exports.A_Context = void 0;
|
|
18
18
|
// =================================================================================================
|
|
19
19
|
// ============================= Export Framework Components =======================================
|
|
20
20
|
// =================================================================================================
|
|
@@ -37,6 +37,9 @@ Object.defineProperty(exports, "A_Component", { enumerable: true, get: function
|
|
|
37
37
|
var A_Component_meta_1 = require("./src/global/A-Component/A-Component.meta");
|
|
38
38
|
Object.defineProperty(exports, "A_ComponentMeta", { enumerable: true, get: function () { return A_Component_meta_1.A_ComponentMeta; } });
|
|
39
39
|
__exportStar(require("./src/global/A-Component/A-Component.types"), exports);
|
|
40
|
+
var A_Entity_class_1 = require("./src/global/A-Entity/A-Entity.class");
|
|
41
|
+
Object.defineProperty(exports, "A_Entity", { enumerable: true, get: function () { return A_Entity_class_1.A_Entity; } });
|
|
42
|
+
__exportStar(require("./src/global/A-Entity/A-Entity.types"), exports);
|
|
40
43
|
// ---------------------- Common Components ----------------------
|
|
41
44
|
var A_Feature_class_1 = require("./src/global/A-Feature/A-Feature.class");
|
|
42
45
|
Object.defineProperty(exports, "A_Feature", { enumerable: true, get: function () { return A_Feature_class_1.A_Feature; } });
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,oGAAoG;AACpG,oGAAoG;AACpG,oGAAoG;AACpG,iEAAiE;AACjE,0EAAmE;AAA1D,4GAAA,SAAS,OAAA;AAClB,yEAAuD;AAEvD,0EAAmE;AAA1D,4GAAA,SAAS,OAAA;AAClB,wEAAsE;AAA7D,+GAAA,aAAa,OAAA;AACtB,yEAAuD;AAEvD,gFAAyE;AAAhE,gHAAA,WAAW,OAAA;AACpB,8EAA4E;AAAnE,mHAAA,eAAe,OAAA;AACxB,6EAA2D;AAE3D,gFAAyE;AAAhE,gHAAA,WAAW,OAAA;AACpB,8EAA4E;AAAnE,mHAAA,eAAe,OAAA;AACxB,6EAA2D;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,oGAAoG;AACpG,oGAAoG;AACpG,oGAAoG;AACpG,iEAAiE;AACjE,0EAAmE;AAA1D,4GAAA,SAAS,OAAA;AAClB,yEAAuD;AAEvD,0EAAmE;AAA1D,4GAAA,SAAS,OAAA;AAClB,wEAAsE;AAA7D,+GAAA,aAAa,OAAA;AACtB,yEAAuD;AAEvD,gFAAyE;AAAhE,gHAAA,WAAW,OAAA;AACpB,8EAA4E;AAAnE,mHAAA,eAAe,OAAA;AACxB,6EAA2D;AAE3D,gFAAyE;AAAhE,gHAAA,WAAW,OAAA;AACpB,8EAA4E;AAAnE,mHAAA,eAAe,OAAA;AACxB,6EAA2D;AAE3D,uEAAgE;AAAvD,0GAAA,QAAQ,OAAA;AACjB,uEAAqD;AAGrD,kEAAkE;AAClE,0EAAmE;AAA1D,4GAAA,SAAS,OAAA;AAClB,yEAAuD;AAEvD,oEAA6D;AAApD,wGAAA,OAAO,OAAA;AAChB,qEAAmD;AAEnD,iEAA0D;AAAjD,sGAAA,MAAM,OAAA;AACf,oDAAoD;AAEpD,6EAAsE;AAA7D,8GAAA,UAAU,OAAA;AACnB,2EAAyD;AAGzD,oGAAoG;AACpG,iGAAiG;AACjG,oGAAoG;AAEpG,mFAAwE;AAA/D,8GAAA,QAAQ,OAAA;AACjB,qFAAmE;AAKnE,oGAAoG;AACpG,oGAAoG;AACpG,oGAAoG;AACpG,6EAAwE;AAA/D,oHAAA,cAAc,OAAA;AACvB,yEAAgE;AAAvD,4GAAA,QAAQ,OAAA;AACjB,gGAAqF;AAA5E,sHAAA,YAAY,OAAA;AACrB,sGAA2F;AAAlF,4HAAA,eAAe,OAAA;AACxB,wGAA6F;AAApF,8HAAA,gBAAgB,OAAA;AACzB,qEAAmD;AAEnD,yEAAuD;AACvD,sDAAsD;AAEtD,6EAAyE;AAAhE,qHAAA,eAAe,OAAA;AACxB,yEAAgE;AAAvD,4GAAA,QAAQ,OAAA;AACjB,qEAAmD"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { A_TYPES__FragmentConstructor } from "../../global/A-Fragment/A-Fragment.types";
|
|
2
|
+
export declare enum A_TYPES__ConfigFeature {
|
|
3
|
+
}
|
|
2
4
|
export type A_TYPES__ConfigContainerConstructor<T extends string> = {
|
|
3
5
|
/**
|
|
4
6
|
* Allows to define the names of variable to be loaded
|
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.A_TYPES__ConfigFeature = void 0;
|
|
4
|
+
var A_TYPES__ConfigFeature;
|
|
5
|
+
(function (A_TYPES__ConfigFeature) {
|
|
6
|
+
})(A_TYPES__ConfigFeature || (exports.A_TYPES__ConfigFeature = A_TYPES__ConfigFeature = {}));
|
|
3
7
|
//# sourceMappingURL=A-Config.types.js.map
|
|
@@ -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":";;;AAGA,IAAY,sBAEX;AAFD,WAAY,sBAAsB;AAElC,CAAC,EAFW,sBAAsB,sCAAtB,sBAAsB,QAEjC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Inject.decorator.js","sourceRoot":"","sources":["../../../../src/decorators/A-Inject/A-Inject.decorator.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"A-Inject.decorator.js","sourceRoot":"","sources":["../../../../src/decorators/A-Inject/A-Inject.decorator.ts"],"names":[],"mappings":";;AAoDA,4BAiCC;AAhFD,uFAA8E;AAC9E,6FAAkG;AA6ClG,8DAA8D;AAC9D,SAAgB,QAAQ,CAGpB,MAA2F;IAE3F,OAAO,UACH,MAAmB,EACnB,UAAuC,EACvC,cAAsB;QAGtB,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC;QAGvD,MAAM,WAAW,GAAG,2BAAS;aACxB,IAAI,CAAC,MAAM,CAAC;aACZ,GAAG,CAAC,6CAAyB,CAAC,UAAU,CAAC;eACvC,IAAI,GAAG,EAAE,CAAC;QAEjB,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAElD,WAAW,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC;QAErC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAGrC,2BAAS;aACJ,IAAI,CAAC,MAAM,CAAC;aACZ,GAAG,CACA,6CAAyB,CAAC,UAAU,EACpC,WAAW,CACd,CAAA;IACT,CAAC,CAAA;AACL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Container.class.js","sourceRoot":"","sources":["../../../../src/global/A-Container/A-Container.class.ts"],"names":[],"mappings":";;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"A-Container.class.js","sourceRoot":"","sources":["../../../../src/global/A-Container/A-Container.class.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,6 +35,7 @@ export declare class A_Context {
|
|
|
35
35
|
protected conceptsMeta: Map<typeof A_Concept.constructor, A_Meta<any>>;
|
|
36
36
|
protected containersMeta: Map<typeof A_Container.constructor, A_ContainerMeta>;
|
|
37
37
|
protected componentsMeta: Map<typeof A_Container.constructor, A_ComponentMeta>;
|
|
38
|
+
protected customMeta: Map<typeof A_Container.constructor, A_Meta<any>>;
|
|
38
39
|
/**
|
|
39
40
|
* Root Namespace is a Namespace that is used to run the program.
|
|
40
41
|
*/
|
|
@@ -38,6 +38,8 @@ class A_Context {
|
|
|
38
38
|
this.conceptsMeta = new Map();
|
|
39
39
|
this.containersMeta = new Map();
|
|
40
40
|
this.componentsMeta = new Map();
|
|
41
|
+
// uses to allow to store custom meta data
|
|
42
|
+
this.customMeta = new Map();
|
|
41
43
|
}
|
|
42
44
|
// ===================================================================================================
|
|
43
45
|
// ================================ META OPERATIONS ==================================================
|
|
@@ -124,7 +126,7 @@ class A_Context {
|
|
|
124
126
|
break;
|
|
125
127
|
}
|
|
126
128
|
default: {
|
|
127
|
-
metaStorage = instance.
|
|
129
|
+
metaStorage = instance.customMeta;
|
|
128
130
|
property = typeof param1 === 'function' ? param1 : param1.constructor;
|
|
129
131
|
if (!metaStorage.has(property)) {
|
|
130
132
|
const inheritMeta = metaStorage.get(Object.getPrototypeOf(property)) || new A_Meta_class_1.A_Meta();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Context.class.js","sourceRoot":"","sources":["../../../../src/global/A-Context/A-Context.class.ts"],"names":[],"mappings":";;;AAAA,4CAAkF;AAClF,wEAA+D;AAE/D,kEAAyD;AACzD,wEAA+D;AAC/D,4DAAmD;AAEnD,yDAAgD;AAChD,sEAAkE;AAClE,sEAAkE;AAClE,kEAAyD;AAGzD;;;;;;GAMG;AACH,MAAa,SAAS;
|
|
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,17 +0,0 @@
|
|
|
1
|
-
declare class RealDependency {
|
|
2
|
-
private name;
|
|
3
|
-
constructor(name: string);
|
|
4
|
-
getName(): string;
|
|
5
|
-
performAction(): void;
|
|
6
|
-
}
|
|
7
|
-
declare class DependencyReference<T> {
|
|
8
|
-
private realClass;
|
|
9
|
-
private args;
|
|
10
|
-
private proxyInstance;
|
|
11
|
-
private realInstance;
|
|
12
|
-
constructor(realClass: {
|
|
13
|
-
new (...args: any[]): T;
|
|
14
|
-
}, args: any[]);
|
|
15
|
-
private loadInstance;
|
|
16
|
-
resolve(): Promise<T>;
|
|
17
|
-
}
|
|
@@ -1,67 +1,49 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
11
|
-
class
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
if (typeof value === 'function') {
|
|
50
|
-
return value.bind(realInstance);
|
|
51
|
-
}
|
|
52
|
-
return value;
|
|
53
|
-
}
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
return this.proxyInstance;
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
// Example usage:
|
|
61
|
-
(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
62
|
-
const lazyDependency = new DependencyReference(RealDependency, ['ComponentA']);
|
|
63
|
-
const proxy = yield lazyDependency.resolve(); // Loads the instance asynchronously
|
|
64
|
-
proxy.performAction(); // Will call the method on the real instance
|
|
65
|
-
console.log(proxy.getName()); // Calls method on the real instance
|
|
66
|
-
}))();
|
|
2
|
+
// class RealDependency {
|
|
3
|
+
// constructor(private name: string) { }
|
|
4
|
+
// getName() {
|
|
5
|
+
// return this.name;
|
|
6
|
+
// }
|
|
7
|
+
// performAction() {
|
|
8
|
+
// console.log(`${this.name} is performing an action.`);
|
|
9
|
+
// }
|
|
10
|
+
// }
|
|
11
|
+
// class DependencyReference<T> {
|
|
12
|
+
// private proxyInstance: T | null = null;
|
|
13
|
+
// private realInstance: T | null = null;
|
|
14
|
+
// constructor(private realClass: { new(...args: any[]): T }, private args: any[]) { }
|
|
15
|
+
// // Simulate async loading (e.g., dynamic imports, API calls, etc.)
|
|
16
|
+
// private async loadInstance(): Promise<T> {
|
|
17
|
+
// if (!this.realInstance) {
|
|
18
|
+
// console.log('Loading real dependency...');
|
|
19
|
+
// // Simulate async loading with a delay
|
|
20
|
+
// await new Promise((resolve) => setTimeout(resolve, 1000));
|
|
21
|
+
// this.realInstance = new this.realClass(...this.args);
|
|
22
|
+
// }
|
|
23
|
+
// return this.realInstance;
|
|
24
|
+
// }
|
|
25
|
+
// public async resolve(): Promise<T> {
|
|
26
|
+
// if (!this.proxyInstance) {
|
|
27
|
+
// const realInstance = await this.loadInstance();
|
|
28
|
+
// this.proxyInstance = new Proxy({}, {
|
|
29
|
+
// get: (target, prop) => {
|
|
30
|
+
// const value = (realInstance as any)[prop];
|
|
31
|
+
// // If the property is a method, return a bound function
|
|
32
|
+
// if (typeof value === 'function') {
|
|
33
|
+
// return value.bind(realInstance);
|
|
34
|
+
// }
|
|
35
|
+
// return value;
|
|
36
|
+
// }
|
|
37
|
+
// }) as T;
|
|
38
|
+
// }
|
|
39
|
+
// return this.proxyInstance;
|
|
40
|
+
// }
|
|
41
|
+
// }
|
|
42
|
+
// // Example usage:
|
|
43
|
+
// (async () => {
|
|
44
|
+
// const lazyDependency = new DependencyReference(RealDependency, ['ComponentA']);
|
|
45
|
+
// const proxy = await lazyDependency.resolve(); // Loads the instance asynchronously
|
|
46
|
+
// proxy.performAction(); // Will call the method on the real instance
|
|
47
|
+
// console.log(proxy.getName()); // Calls method on the real instance
|
|
48
|
+
// })();
|
|
67
49
|
//# sourceMappingURL=A-DependencyReference.class.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-DependencyReference.class.js","sourceRoot":"","sources":["../../../../src/global/A-Dependency/A-DependencyReference.class.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"A-DependencyReference.class.js","sourceRoot":"","sources":["../../../../src/global/A-Dependency/A-DependencyReference.class.ts"],"names":[],"mappings":";AAAA,yBAAyB;AACzB,4CAA4C;AAE5C,kBAAkB;AAClB,4BAA4B;AAC5B,QAAQ;AAER,wBAAwB;AACxB,gEAAgE;AAChE,QAAQ;AACR,IAAI;AAEJ,iCAAiC;AACjC,8CAA8C;AAC9C,6CAA6C;AAE7C,0FAA0F;AAE1F,yEAAyE;AACzE,iDAAiD;AACjD,oCAAoC;AACpC,yDAAyD;AACzD,qDAAqD;AACrD,yEAAyE;AACzE,oEAAoE;AACpE,YAAY;AACZ,oCAAoC;AACpC,QAAQ;AAER,2CAA2C;AAC3C,qCAAqC;AACrC,8DAA8D;AAE9D,mDAAmD;AACnD,2CAA2C;AAC3C,iEAAiE;AAEjE,8EAA8E;AAC9E,yDAAyD;AACzD,2DAA2D;AAC3D,wBAAwB;AACxB,oCAAoC;AACpC,oBAAoB;AACpB,uBAAuB;AACvB,YAAY;AAEZ,qCAAqC;AACrC,QAAQ;AACR,IAAI;AAGJ,oBAAoB;AACpB,iBAAiB;AACjB,sFAAsF;AAEtF,0FAA0F;AAE1F,2EAA2E;AAE3E,0EAA0E;AAC1E,QAAQ"}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import { ASEID } from "@adaas/a-utils";
|
|
2
|
+
import { A_TYPES__Entity_JSON, A_TYPES__IEntity } from "./A-Entity.types";
|
|
3
|
+
import { A_Fragment } from "../A-Fragment/A-Fragment.class";
|
|
1
4
|
/**
|
|
2
5
|
* A_Entity is another abstraction that describes all major participants in the system business logic.
|
|
3
6
|
* Each Entity should have a clear definition and a clear set of responsibilities.
|
|
@@ -5,6 +8,50 @@
|
|
|
5
8
|
*
|
|
6
9
|
* Each entity should be connected to the ContextFragment (Scope) and should be able to communicate with other entities.
|
|
7
10
|
*/
|
|
8
|
-
export declare class A_Entity {
|
|
9
|
-
|
|
11
|
+
export declare class A_Entity<_ConstructorType = any, _SerializedType extends A_TYPES__Entity_JSON = A_TYPES__Entity_JSON> extends A_Fragment implements A_TYPES__IEntity {
|
|
12
|
+
aseid: ASEID;
|
|
13
|
+
constructor(aseid: string);
|
|
14
|
+
constructor(aseid: ASEID);
|
|
15
|
+
constructor(serialized: _SerializedType);
|
|
16
|
+
constructor(newEntity: _ConstructorType);
|
|
17
|
+
/**
|
|
18
|
+
* Extracts the ID from the ASEID
|
|
19
|
+
* ID is the unique identifier of the entity
|
|
20
|
+
*/
|
|
21
|
+
get id(): string | number;
|
|
22
|
+
/**
|
|
23
|
+
* Extracts the namespace from the ASEID
|
|
24
|
+
* namespace is an application specific identifier from where the entity is coming from
|
|
25
|
+
*/
|
|
26
|
+
get namespace(): string;
|
|
27
|
+
/**
|
|
28
|
+
* Extracts the scope from the ASEID
|
|
29
|
+
* scope is the scope of the entity from Application Namespace
|
|
30
|
+
*/
|
|
31
|
+
get scope(): string;
|
|
32
|
+
/**
|
|
33
|
+
* Extracts the entity from the ASEID
|
|
34
|
+
* entity is the name of the entity from Application Namespace
|
|
35
|
+
*/
|
|
36
|
+
get entity(): string;
|
|
37
|
+
/**
|
|
38
|
+
* Extracts the version from the ASEID
|
|
39
|
+
* version is the version of the entity
|
|
40
|
+
*/
|
|
41
|
+
get version(): string | undefined;
|
|
42
|
+
/**
|
|
43
|
+
* Extracts the shard from the ASEID
|
|
44
|
+
* shard is the shard of the entity
|
|
45
|
+
*/
|
|
46
|
+
get shard(): string | undefined;
|
|
47
|
+
protected fromNewEntity(newEntity: _ConstructorType): void;
|
|
48
|
+
protected fromSerialized(serialized: _SerializedType): void;
|
|
49
|
+
/**
|
|
50
|
+
* Converts the entity to a JSON object
|
|
51
|
+
*
|
|
52
|
+
*
|
|
53
|
+
* @returns
|
|
54
|
+
*/
|
|
55
|
+
toJSON(): _SerializedType;
|
|
56
|
+
toString(): string;
|
|
10
57
|
}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.A_Entity = void 0;
|
|
4
|
+
const a_utils_1 = require("@adaas/a-utils");
|
|
5
|
+
const errors_constants_1 = require("@adaas/a-utils/dist/src/constants/errors.constants");
|
|
6
|
+
const A_Fragment_class_1 = require("../A-Fragment/A-Fragment.class");
|
|
4
7
|
/**
|
|
5
8
|
* A_Entity is another abstraction that describes all major participants in the system business logic.
|
|
6
9
|
* Each Entity should have a clear definition and a clear set of responsibilities.
|
|
@@ -8,8 +11,91 @@ exports.A_Entity = void 0;
|
|
|
8
11
|
*
|
|
9
12
|
* Each entity should be connected to the ContextFragment (Scope) and should be able to communicate with other entities.
|
|
10
13
|
*/
|
|
11
|
-
class A_Entity {
|
|
12
|
-
constructor() {
|
|
14
|
+
class A_Entity extends A_Fragment_class_1.A_Fragment {
|
|
15
|
+
constructor(props) {
|
|
16
|
+
super();
|
|
17
|
+
switch (true) {
|
|
18
|
+
case (typeof props === 'string' && a_utils_1.ASEID.isASEID(props)):
|
|
19
|
+
this.aseid = new a_utils_1.ASEID(props);
|
|
20
|
+
break;
|
|
21
|
+
case (props instanceof a_utils_1.ASEID):
|
|
22
|
+
this.aseid = props;
|
|
23
|
+
break;
|
|
24
|
+
case (typeof props === 'object' && props.aseid):
|
|
25
|
+
this.fromSerialized(props);
|
|
26
|
+
break;
|
|
27
|
+
case (typeof props === 'object'):
|
|
28
|
+
this.fromNewEntity(props);
|
|
29
|
+
break;
|
|
30
|
+
default:
|
|
31
|
+
throw new a_utils_1.A_Error(errors_constants_1.A_CONSTANTS__DEFAULT_ERRORS.INCORRECT_A_ENTITY_CONSTRUCTOR);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
// ====================================================================
|
|
35
|
+
// ================== DUPLICATED ASEID Getters ========================
|
|
36
|
+
// ====================================================================
|
|
37
|
+
/**
|
|
38
|
+
* Extracts the ID from the ASEID
|
|
39
|
+
* ID is the unique identifier of the entity
|
|
40
|
+
*/
|
|
41
|
+
get id() {
|
|
42
|
+
return this.aseid.id;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Extracts the namespace from the ASEID
|
|
46
|
+
* namespace is an application specific identifier from where the entity is coming from
|
|
47
|
+
*/
|
|
48
|
+
get namespace() {
|
|
49
|
+
return this.aseid.namespace;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Extracts the scope from the ASEID
|
|
53
|
+
* scope is the scope of the entity from Application Namespace
|
|
54
|
+
*/
|
|
55
|
+
get scope() {
|
|
56
|
+
return this.aseid.scope;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Extracts the entity from the ASEID
|
|
60
|
+
* entity is the name of the entity from Application Namespace
|
|
61
|
+
*/
|
|
62
|
+
get entity() {
|
|
63
|
+
return this.aseid.entity;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Extracts the version from the ASEID
|
|
67
|
+
* version is the version of the entity
|
|
68
|
+
*/
|
|
69
|
+
get version() {
|
|
70
|
+
return this.aseid.version;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Extracts the shard from the ASEID
|
|
74
|
+
* shard is the shard of the entity
|
|
75
|
+
*/
|
|
76
|
+
get shard() {
|
|
77
|
+
return this.aseid.shard;
|
|
78
|
+
}
|
|
79
|
+
fromNewEntity(newEntity) {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
fromSerialized(serialized) {
|
|
83
|
+
this.aseid = new a_utils_1.ASEID((serialized).aseid);
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Converts the entity to a JSON object
|
|
88
|
+
*
|
|
89
|
+
*
|
|
90
|
+
* @returns
|
|
91
|
+
*/
|
|
92
|
+
toJSON() {
|
|
93
|
+
return {
|
|
94
|
+
aseid: this.aseid.toString()
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
toString() {
|
|
98
|
+
return this.aseid.toString();
|
|
13
99
|
}
|
|
14
100
|
}
|
|
15
101
|
exports.A_Entity = A_Entity;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Entity.class.js","sourceRoot":"","sources":["../../../../src/global/A-Entity/A-Entity.class.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"A-Entity.class.js","sourceRoot":"","sources":["../../../../src/global/A-Entity/A-Entity.class.ts"],"names":[],"mappings":";;;AAAA,4CAAgD;AAEhD,yFAAiG;AAEjG,qEAA4D;AAE5D;;;;;;GAMG;AACH,MAAa,QAIT,SAAQ,6BAAU;IAkBlB,YAAY,KAA0D;QAClE,KAAK,EAAE,CAAC;QAER,QAAQ,IAAI,EAAE,CAAC;YACX,KAAK,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,eAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBACpD,IAAI,CAAC,KAAK,GAAG,IAAI,eAAK,CAAC,KAAK,CAAC,CAAC;gBAC9B,MAAM;YACV,KAAK,CAAC,KAAK,YAAY,eAAK,CAAC;gBACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACnB,MAAM;YACV,KAAK,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAK,KAAa,CAAC,KAAK,CAAC;gBACpD,IAAI,CAAC,cAAc,CAAC,KAAwB,CAAC,CAAC;gBAC9C,MAAM;YAEV,KAAK,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC;gBAC5B,IAAI,CAAC,aAAa,CAAC,KAAyB,CAAC,CAAC;gBAC9C,MAAK;YAET;gBACI,MAAM,IAAI,iBAAO,CAAC,8CAA2B,CAAC,8BAA8B,CAAC,CAAC;QACtF,CAAC;IAEL,CAAC;IAED,uEAAuE;IACvE,uEAAuE;IACvE,uEAAuE;IAEvE;;;OAGG;IACH,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;IACzB,CAAC;IAED;;;OAGG;IACH,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAA;IAC/B,CAAC;IAED;;;OAGG;IACH,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACH,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;IAC7B,CAAC;IAED;;;OAGG;IAEH,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;IAC5B,CAAC;IAGS,aAAa,CAAC,SAA2B;QAC/C,OAAO;IACX,CAAC;IAES,cAAc,CAAC,UAA2B;QAChD,IAAI,CAAC,KAAK,GAAG,IAAI,eAAK,CAAC,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC;QAC3C,OAAO;IACX,CAAC;IAGD;;;;;OAKG;IACH,MAAM;QACF,OAAO;YACH,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;SACZ,CAAC;IACzB,CAAC;IAID,QAAQ;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC;CACJ;AA/HD,4BA+HC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Entity.types.js","sourceRoot":"","sources":["../../../../src/global/A-Entity/A-Entity.types.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"A-Entity.types.js","sourceRoot":"","sources":["../../../../src/global/A-Entity/A-Entity.types.ts"],"names":[],"mappings":";;AAOC,CAAC"}
|
|
@@ -8,4 +8,9 @@ export declare class A_Meta<_StorageItems extends Record<string, any>> {
|
|
|
8
8
|
from(meta: A_Meta<_StorageItems>): A_Meta<_StorageItems>;
|
|
9
9
|
set<K extends keyof _StorageItems>(key: K, value: _StorageItems[K]): void;
|
|
10
10
|
get<K extends keyof _StorageItems>(key: K): _StorageItems[K] | undefined;
|
|
11
|
+
delete(key: keyof _StorageItems): boolean;
|
|
12
|
+
findByRegex(regex: RegExp): Array<[keyof _StorageItems, _StorageItems[keyof _StorageItems]]>;
|
|
13
|
+
has(key: keyof _StorageItems): boolean;
|
|
14
|
+
entries(): IterableIterator<[keyof _StorageItems, _StorageItems[keyof _StorageItems]]>;
|
|
15
|
+
clear(): void;
|
|
11
16
|
}
|
|
@@ -38,6 +38,32 @@ class A_Meta {
|
|
|
38
38
|
get(key) {
|
|
39
39
|
return this.meta.get(key);
|
|
40
40
|
}
|
|
41
|
+
// Delete a key-value pair by key
|
|
42
|
+
delete(key) {
|
|
43
|
+
return this.meta.delete(key);
|
|
44
|
+
}
|
|
45
|
+
// Search for keys by regex
|
|
46
|
+
findByRegex(regex) {
|
|
47
|
+
const results = [];
|
|
48
|
+
for (const [key, value] of this.meta.entries()) {
|
|
49
|
+
if (regex.test(String(key))) {
|
|
50
|
+
results.push([key, value]);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return results;
|
|
54
|
+
}
|
|
55
|
+
// Check if a key exists
|
|
56
|
+
has(key) {
|
|
57
|
+
return this.meta.has(key);
|
|
58
|
+
}
|
|
59
|
+
// Get all entries in the map
|
|
60
|
+
entries() {
|
|
61
|
+
return this.meta.entries();
|
|
62
|
+
}
|
|
63
|
+
// Clear all entries
|
|
64
|
+
clear() {
|
|
65
|
+
this.meta.clear();
|
|
66
|
+
}
|
|
41
67
|
}
|
|
42
68
|
exports.A_Meta = A_Meta;
|
|
43
69
|
//# sourceMappingURL=A-Meta.class.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Meta.class.js","sourceRoot":"","sources":["../../../../src/global/A-Meta/A-Meta.class.ts"],"names":[],"mappings":";;;AAMA;;;;GAIG;AACH,MAAa,MAAM;IAAnB;QAKc,SAAI,GAAiE,IAAI,GAAG,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"A-Meta.class.js","sourceRoot":"","sources":["../../../../src/global/A-Meta/A-Meta.class.ts"],"names":[],"mappings":";;;AAMA;;;;GAIG;AACH,MAAa,MAAM;IAAnB;QAKc,SAAI,GAAiE,IAAI,GAAG,EAAE,CAAC;IA6E7F,CAAC;IA1EG,IAAI,CACA,IAA2B;QAE3B,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE/B,OAAO,IAAI,CAAC;IAChB,CAAC;IAGD,sGAAsG;IACtG,sGAAsG;IACtG,sGAAsG;IAEtG,kCAAkC;IAClC,GAAG,CAAgC,GAAM,EAAE,KAAuB;QAE9D,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;eAClC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YACvB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAE,KAAa,YAAY,GAAG;gBAC3B,CAAC,CAAC,IAAI,GAAG,EAAE;gBACX,CAAC,CAAC,EAAE,CAAC;QACb,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;eAC/B,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YACvB,CAAC,CAAC;gBACE,GAAG,cAAqB;aAC3B,CAAC,CAAC,CAAE,KAAa,YAAY,GAAG;YAC7B,CAAC,CAAC,IAAI,GAAG,CAAC,cAAqB,CAAC;YAChC,CAAC,mBAAM,cAAc,CAAE,CAAC;QAEhC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAE9B,CAAC;IAED,oCAAoC;IACpC,GAAG,CAAgC,GAAM;QACrC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAqB,CAAC;IAClD,CAAC;IAGD,iCAAiC;IACjC,MAAM,CAAC,GAAwB;QAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IAED,2BAA2B;IAC3B,WAAW,CAAC,KAAa;QACrB,MAAM,OAAO,GAAqE,EAAE,CAAC;QACrF,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YAC7C,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC1B,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;YAC/B,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,wBAAwB;IACxB,GAAG,CAAC,GAAwB;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED,6BAA6B;IAC7B,OAAO;QACH,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;IAC/B,CAAC;IAGD,oBAAoB;IACpB,KAAK;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;CAIJ;AAlFD,wBAkFC"}
|