@adaas/a-concept 0.0.36 → 0.0.38
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/global/A-Scope/A-Scope.class.d.ts +7 -0
- package/dist/src/global/A-Scope/A-Scope.class.js +26 -0
- package/dist/src/global/A-Scope/A-Scope.class.js.map +1 -1
- package/dist/src/global/A-Stage/A-Stage.class.d.ts +15 -7
- package/dist/src/global/A-Stage/A-Stage.class.js +39 -21
- package/dist/src/global/A-Stage/A-Stage.class.js.map +1 -1
- package/dist/src/global/A-Stage/A-Stage.types.d.ts +4 -0
- package/dist/src/global/A-Stage/A-Stage.types.js.map +1 -1
- package/package.json +1 -1
- package/src/global/A-Scope/A-Scope.class.ts +33 -0
- package/src/global/A-Stage/A-Stage.class.ts +58 -27
- package/src/global/A-Stage/A-Stage.types.ts +12 -2
|
@@ -40,6 +40,13 @@ export declare class A_Scope {
|
|
|
40
40
|
has(component: typeof A_Component): boolean;
|
|
41
41
|
has(entity: typeof A_Entity): boolean;
|
|
42
42
|
has(fragment: typeof A_Fragment): boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Merges two scopes into a new one
|
|
45
|
+
*
|
|
46
|
+
* @param anotherScope
|
|
47
|
+
* @returns
|
|
48
|
+
*/
|
|
49
|
+
merge(anotherScope: A_Scope): A_Scope;
|
|
43
50
|
/**
|
|
44
51
|
* This method is used to get the component by class
|
|
45
52
|
*
|
|
@@ -92,6 +92,32 @@ class A_Scope {
|
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
94
|
}
|
|
95
|
+
/**
|
|
96
|
+
* Merges two scopes into a new one
|
|
97
|
+
*
|
|
98
|
+
* @param anotherScope
|
|
99
|
+
* @returns
|
|
100
|
+
*/
|
|
101
|
+
merge(anotherScope) {
|
|
102
|
+
const merged = new A_Scope({
|
|
103
|
+
name: `${this.name}&${anotherScope.name}`,
|
|
104
|
+
components: Array.from(new Set([
|
|
105
|
+
...this.params.components,
|
|
106
|
+
...anotherScope.params.components
|
|
107
|
+
])),
|
|
108
|
+
fragments: Array.from(new Set([
|
|
109
|
+
...this.params.fragments,
|
|
110
|
+
...anotherScope.params.fragments
|
|
111
|
+
])),
|
|
112
|
+
entities: Array.from(new Set([
|
|
113
|
+
...this.params.entities,
|
|
114
|
+
...anotherScope.params.entities
|
|
115
|
+
])),
|
|
116
|
+
}, {
|
|
117
|
+
parent: this._parent || anotherScope._parent
|
|
118
|
+
});
|
|
119
|
+
return merged;
|
|
120
|
+
}
|
|
95
121
|
// base definition
|
|
96
122
|
resolve(param1, param2) {
|
|
97
123
|
switch (true) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Scope.class.js","sourceRoot":"","sources":["../../../../src/global/A-Scope/A-Scope.class.ts"],"names":[],"mappings":";;;AAAA,4CAAuD;AAEvD,qEAA4D;AAC5D,kEAAyD;AACzD,wEAE0C;AAC1C,wEAA+D;AAC/D,+DAAsD;AAOtD;;;;;;;;;;;;GAYG;AACH,MAAa,OAAO;IAahB,YACI,MAA0C,EAC1C,SAAwC,EAAE;QAbrC,SAAI,GAAW,EAAE,CAAC;QAEnB,gBAAW,GAAiD,IAAI,OAAO,EAAE,CAAC;QAC1E,eAAU,GAAgD,IAAI,OAAO,EAAE,CAAC;QACxE,cAAS,GAA0B,IAAI,GAAG,EAAE,CAAC;QAWjD,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAEjD,yBAAyB;QACzB,MAAM,aAAa,GAA8B;YAC7C,IAAI,EAAE,EAAE;YACR,UAAU,EAAE,EAAE;YACd,SAAS,EAAE,EAAE;YACb,QAAQ,EAAE,EAAE;YACZ,cAAc;YACd,cAAc;SACjB,CAAC;QAGF,IAAI,CAAC,MAAM,mCACJ,aAAa,GACb,MAAM,CACZ,CAAA;QAED,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;QAEzC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;QACjC,CAAC;IACL,CAAC;IAGO,cAAc,CAAC,WAAgD;QACnE,qCAAqC;QACrC,wDAAwD;QACxD,KAAK;IACT,CAAC;IAEO,YAAY,CAAC,SAA0B;QAC3C,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAChD,CAAC;IAGO,aAAa,CAAC,UAA6B;QAC/C,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACjD,CAAC;IAGD,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;IACxC,CAAC;IAED,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;IACvC,CAAC;IAKD,MAAM,CACF,QAAkB;QAElB,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC;YACxB,OAAO;QACX,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAkBD,GAAG,CACC,MAAgE;QAIhE,QAAQ,IAAI,EAAE,CAAC;YAEX,KAAK,wBAAc,CAAC,eAAe,CAAC,MAAM,EAAE,+BAAW,CAAC,CAAC,CAAC,CAAC;gBACvD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,MAA8C,CAAC,CAAC;gBAE9F,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO;oBACxB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAa,CAAC,CAAC;gBAE3C,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,KAAK,wBAAc,CAAC,eAAe,CAAC,MAAM,EAAE,yBAAQ,CAAC,CAAC,CAAC,CAAC;gBACpD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;gBAErD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,YAAY,MAAM,CAAC,CAAC;gBAEtD,OAAO,CAAC,CAAC,KAAK,CAAC;YACnB,CAAC;YAED,KAAK,wBAAc,CAAC,eAAe,CAAC,MAAM,EAAE,6BAAU,CAAC,CAAC,CAAC,CAAC;gBACtD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAE1C,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO;oBACxB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAa,CAAC,CAAC;gBAE3C,OAAO,KAAK,CAAC;YACjB,CAAC;YAED,OAAO,CAAC,CAAC,CAAC;gBACN,OAAO,KAAK,CAAC;YACjB,CAAC;QACL,CAAC;IACL,CAAC;IAmBD,kBAAkB;IAClB,OAAO,CACH,MAAoB,EACpB,MAAiF;QAGjF,QAAQ,IAAI,EAAE,CAAC;YACX,KAAK,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACzB,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YAChD,CAAC;YAED,KAAK,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChC,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YACpC,CAAC;YAED,OAAO,CAAC,CAAC,CAAC;gBACN,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAClD,CAAC;QACL,CAAC;IACL,CAAC;IAaO,WAAW,CACf,SAAY,EACZ,YAA8E;QAI9E,QAAQ,IAAI,EAAE,CAAC;YACX,KAAK,wBAAc,CAAC,eAAe,CAAC,SAAS,EAAE,yBAAQ,CAAC,CAAC,CAAC,CAAC;gBACvD,OAAO,IAAI,CAAC,aAAa,CAAC,SAA4B,EAAE,YAAY,CAAoB,CAAC;YAC7F,CAAC;YAED,KAAK,wBAAc,CAAC,eAAe,CAAC,SAAS,EAAE,6BAAU,CAAC,CAAC,CAAC,CAAC;gBACzD,OAAO,IAAI,CAAC,eAAe,CAAC,SAA8B,CAAoB,CAAC;YACnF,CAAC;YAED,KAAK,wBAAc,CAAC,eAAe,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;gBACtD,OAAO,IAAI,CAAC,YAAY,CAAC,SAA2B,CAAoB,CAAC;YAC7E,CAAC;YAED,KAAK,wBAAc,CAAC,eAAe,CAAC,SAAS,EAAE,+BAAW,CAAC,CAAC,CAAC,CAAC;gBAC1D,OAAO,IAAI,CAAC,gBAAgB,CAAC,SAA+B,CAAoB,CAAC;YACrF,CAAC;YAED;gBACI,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,yBAAyB,CAAC,CAAC;QAClF,CAAC;IACL,CAAC;IAGO,aAAa,CACjB,MAAS,EACT,YAA8E;;QAG9E,MAAM,KAAK,GAAG,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,KAAK,KAAI,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,CAAA,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,UAAU,0CAAE,KAAK,KAAI,CAAC,CAAC;QAGnD,QAAQ,IAAI,EAAE,CAAC;YACX,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;gBAEjB,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;gBAErD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,YAAY,MAAM,CAAC,CAAC;gBAEtD,QAAQ,IAAI,EAAE,CAAC;oBACX,KAAK,CAAC,CAAC,KAAK;wBACR,OAAO,KAAwB,CAAC;oBAEpC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO;wBACzB,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;oBAE5D;wBACI,MAAM,IAAI,KAAK,CAAC,YAAY,MAAM,CAAC,IAAI,2BAA2B,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBACvF,CAAC;YACL,CAAC;YAED,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK;mBACX,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ;mBAC/B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC;gBAAE,CAAC;oBACjC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAoB,CAAC;gBAC9D,CAAC;YAEL,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK;mBACX,KAAK,CAAC,KAAK,YAAY,eAAK;mBAC5B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;gBAAE,CAAC;oBAC5C,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAoB,CAAC;gBACzE,CAAC;YAEL,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE;mBACR,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAAE,CAAC;oBAC9B,oDAAoD;oBACpD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;oBAErD,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC;oBAEpD,OAAO,KAAwB,CAAC;gBACpC,CAAC;YAEL;gBACI,MAAM,IAAI,KAAK,CAAC,UAAU,MAAM,CAAC,WAAW,CAAC,IAAI,2BAA2B,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACjG,CAAC;IACL,CAAC;IAIO,eAAe,CAA8B,QAAW;QAE5D,MAAM,yBAAyB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,QAAQ,CAAC,CAAC;QAEpF,QAAQ,IAAI,EAAE,CAAC;YAEX,KAAK,yBAAyB,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAC3D,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAEzC,KAAK,yBAAyB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAC5D,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,QAAQ,CAAoB,CAAC;YAEhF,KAAK,CAAC,yBAAyB,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO;gBAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;YAElD;gBACI,MAAM,IAAI,KAAK,CAAC,YAAY,QAAQ,CAAC,IAAI,2BAA2B,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACzF,CAAC;IACL,CAAC;IAGO,YAAY,CAAC,KAAqB;QACtC,OAAO,IAAI,CAAC;IAChB,CAAC;IAGO,gBAAgB,CAAwB,SAE/C;QAEG,uGAAuG;QACvG,2EAA2E;QAC3E,2GAA2G;QAC3G,QAAQ,IAAI,EAAE,CAAC;YACX,kEAAkE;YAClE,KAAK,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC1E,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC3C,CAAC;YAED,kEAAkE;YAClE,KAAK,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC3E,MAAM,aAAa,GAAG,2BAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBAE/C,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,6CAAyB,CAAC,UAAU,CAAC,CAAC;gBAEzE,MAAM,YAAY,GAAG,CAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,GAAG,CAAC,aAAa,CAAC,KAAI,EAAE,CAAC;qBACpD,GAAG,CAAC,GAAG,CAAC,EAAE;oBACP,IAAI,cAAc,IAAI,GAAG,EAAE,CAAC;wBACxB,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,GAAG,CAAA;wBACpC,OAAO,IAAI,CAAC,OAAO,CACf,MAAM,EACN,YAAY,CACf,CAAC;oBACN,CAAC;oBACD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;gBACnC,CAAC,CAAC,CAAC;gBAEP,MAAM,YAAY,GAAG,IAAI,SAAS,CAAC,GAAG,YAAY,CAAC,CAAA;gBAEnD,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;gBAE5B,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC3C,CAAC;YAED,iFAAiF;YACjF,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,wBAAc,CAAC,eAAe,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;gBAErH,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,wBAAc,CAAC,eAAe,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC;gBAExF,OAAO,IAAI,CAAC,gBAAgB,CAAI,KAAY,CAAC,CAAC;YAClD,CAAC;YAED,wFAAwF;YACxF,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC1D,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;YACpD,CAAC;YAED;gBACI,MAAM,IAAI,KAAK,CAAC,aAAa,SAAS,CAAC,IAAI,2BAA2B,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAC3F,CAAC;IACL,CAAC;IAYD,QAAQ,CACJ,MAA2C;QAI3C,QAAQ,IAAI,EAAE,CAAC;YACX,KAAK,MAAM,YAAY,yBAAQ,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC9E,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAC;gBACpD,2BAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBACjC,MAAM;YACV,CAAC;YAED,KAAK,MAAM,YAAY,6BAAU,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;gBAC5E,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,MAAM,CAAC,WAAW,CAAC,CAAC;gBAEpF,IAAI,CAAC,eAAe,EAAE,CAAC;oBACnB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAChC,CAAC;gBAED,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;gBAChD,2BAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBACjC,MAAM;YACV,CAAC;YAED,KAAK,MAAM,YAAY,+BAAW,CAAC,CAAC,CAAC;gBACjC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;gBAEjD,MAAM,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,WAAW,CAAC,CAAC;gBAE7E,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACpB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,WAAkB,CAAC,CAAC;gBACpD,CAAC;gBAED,2BAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBACjC,MAAM;YACV,CAAC;YAED;gBACI,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QACtD,CAAC;IAIL,CAAC;IAKD,MAAM;QACF,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE;YAE3C,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAA;YAEpC,uCACO,GAAG,KACN,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,UAAU,IAChC;QACL,CAAC,EAAE,EAAE,CAAC,CAAC;IACX,CAAC;CACJ;
|
|
1
|
+
{"version":3,"file":"A-Scope.class.js","sourceRoot":"","sources":["../../../../src/global/A-Scope/A-Scope.class.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { A_Error } from "@adaas/a-utils";
|
|
2
2
|
import { A_Feature } from "../A-Feature/A-Feature.class";
|
|
3
|
-
import { A_TYPES__A_Stage_JSON, A_TYPES__A_Stage_Status, A_TYPES__A_StageStep } from "./A-Stage.types";
|
|
3
|
+
import { A_TYPES__A_Stage_JSON, A_TYPES__A_Stage_Status, A_TYPES__A_StageStep, A_TYPES__A_StageStepProcessingExtraParams } from "./A-Stage.types";
|
|
4
4
|
import { A_Container } from "../A-Container/A-Container.class";
|
|
5
|
+
import { A_Scope } from "../A-Scope/A-Scope.class";
|
|
5
6
|
/**
|
|
6
7
|
* A_Stage is a set of A_Functions within A_Feature that should be run in a specific order.
|
|
7
8
|
* Each stage may contain one or more functions.
|
|
@@ -11,8 +12,8 @@ import { A_Container } from "../A-Container/A-Container.class";
|
|
|
11
12
|
*/
|
|
12
13
|
export declare class A_Stage {
|
|
13
14
|
private feature;
|
|
14
|
-
private
|
|
15
|
-
constructor(feature: A_Feature,
|
|
15
|
+
private _steps;
|
|
16
|
+
constructor(feature: A_Feature, _steps?: A_TYPES__A_StageStep[]);
|
|
16
17
|
status: A_TYPES__A_Stage_Status;
|
|
17
18
|
/**
|
|
18
19
|
* Promise that will be resolved when the stage is Processed
|
|
@@ -20,13 +21,16 @@ export declare class A_Stage {
|
|
|
20
21
|
processed: Promise<void> | undefined;
|
|
21
22
|
get before(): string[];
|
|
22
23
|
get after(): string[];
|
|
24
|
+
get steps(): A_TYPES__A_StageStep[];
|
|
25
|
+
get asyncSteps(): A_TYPES__A_StageStep[];
|
|
26
|
+
get syncSteps(): A_TYPES__A_StageStep[];
|
|
23
27
|
/**
|
|
24
28
|
* Resolves the arguments of the step
|
|
25
29
|
*
|
|
26
30
|
* @param step
|
|
27
31
|
* @returns
|
|
28
32
|
*/
|
|
29
|
-
protected getStepArgs(step: A_TYPES__A_StageStep): Promise<(import("../A-Fragment/A-Fragment.class").A_Fragment | import("../A-Component/A-Component.class").A_Component | A_Container | import("../A-Entity/A-Entity.class").A_Entity<any, import("../A-Entity/A-Entity.types").A_TYPES__Entity_JSON> |
|
|
33
|
+
protected getStepArgs(step: A_TYPES__A_StageStep, scope: A_Scope): Promise<(import("../A-Fragment/A-Fragment.class").A_Fragment | import("../A-Component/A-Component.class").A_Component | A_Container | import("../A-Entity/A-Entity.class").A_Entity<any, import("../A-Entity/A-Entity.types").A_TYPES__Entity_JSON> | A_Scope | A_Feature)[]>;
|
|
30
34
|
/**
|
|
31
35
|
* Adds a step to the stage
|
|
32
36
|
*
|
|
@@ -47,13 +51,17 @@ export declare class A_Stage {
|
|
|
47
51
|
* @param step
|
|
48
52
|
* @returns
|
|
49
53
|
*/
|
|
50
|
-
protected callStepHandler(step: A_TYPES__A_StageStep): Promise<any>;
|
|
54
|
+
protected callStepHandler(step: A_TYPES__A_StageStep, scope: A_Scope): Promise<any>;
|
|
51
55
|
/**
|
|
52
|
-
* Runs async all the
|
|
56
|
+
* Runs async all the _steps of the stage
|
|
53
57
|
*
|
|
54
58
|
* @returns
|
|
55
59
|
*/
|
|
56
|
-
process(
|
|
60
|
+
process(
|
|
61
|
+
/**
|
|
62
|
+
* Scope to be used to resolve the steps dependencies
|
|
63
|
+
*/
|
|
64
|
+
scope?: A_Scope, params?: Partial<A_TYPES__A_StageStepProcessingExtraParams>): Promise<void>;
|
|
57
65
|
/**
|
|
58
66
|
* Skips the stage
|
|
59
67
|
*
|
|
@@ -15,6 +15,7 @@ const A_Context_class_1 = require("../A-Context/A-Context.class");
|
|
|
15
15
|
const A_Feature_class_1 = require("../A-Feature/A-Feature.class");
|
|
16
16
|
const A_Stage_types_1 = require("./A-Stage.types");
|
|
17
17
|
const A_Container_class_1 = require("../A-Container/A-Container.class");
|
|
18
|
+
const A_Scope_class_1 = require("../A-Scope/A-Scope.class");
|
|
18
19
|
/**
|
|
19
20
|
* A_Stage is a set of A_Functions within A_Feature that should be run in a specific order.
|
|
20
21
|
* Each stage may contain one or more functions.
|
|
@@ -23,30 +24,39 @@ const A_Container_class_1 = require("../A-Container/A-Container.class");
|
|
|
23
24
|
* A-Stage is a common object that uses to simplify logic and re-use of A-Feature internals for better composition.
|
|
24
25
|
*/
|
|
25
26
|
class A_Stage {
|
|
26
|
-
constructor(feature,
|
|
27
|
+
constructor(feature, _steps = []) {
|
|
27
28
|
this.feature = feature;
|
|
28
|
-
this.
|
|
29
|
+
this._steps = _steps;
|
|
29
30
|
this.status = A_Stage_types_1.A_TYPES__A_Stage_Status.INITIALIZED;
|
|
30
31
|
}
|
|
31
32
|
get before() {
|
|
32
|
-
return this.
|
|
33
|
+
return this._steps.reduce((acc, step) => ([
|
|
33
34
|
...acc,
|
|
34
35
|
...step.before
|
|
35
36
|
]), []);
|
|
36
37
|
}
|
|
37
38
|
get after() {
|
|
38
|
-
return this.
|
|
39
|
+
return this._steps.reduce((acc, step) => ([
|
|
39
40
|
...acc,
|
|
40
41
|
...step.after
|
|
41
42
|
]), []);
|
|
42
43
|
}
|
|
44
|
+
get steps() {
|
|
45
|
+
return this._steps;
|
|
46
|
+
}
|
|
47
|
+
get asyncSteps() {
|
|
48
|
+
return this._steps.filter(step => step.behavior === 'async');
|
|
49
|
+
}
|
|
50
|
+
get syncSteps() {
|
|
51
|
+
return this._steps.filter(step => step.behavior === 'sync');
|
|
52
|
+
}
|
|
43
53
|
/**
|
|
44
54
|
* Resolves the arguments of the step
|
|
45
55
|
*
|
|
46
56
|
* @param step
|
|
47
57
|
* @returns
|
|
48
58
|
*/
|
|
49
|
-
getStepArgs(step) {
|
|
59
|
+
getStepArgs(step, scope) {
|
|
50
60
|
return __awaiter(this, void 0, void 0, function* () {
|
|
51
61
|
return Promise
|
|
52
62
|
.all(A_Context_class_1.A_Context
|
|
@@ -55,10 +65,11 @@ class A_Stage {
|
|
|
55
65
|
: step.component)
|
|
56
66
|
.injections(step.handler)
|
|
57
67
|
.map((arg) => __awaiter(this, void 0, void 0, function* () {
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
68
|
+
if (a_utils_1.A_CommonHelper.isInheritedFrom(arg.target, A_Feature_class_1.A_Feature))
|
|
69
|
+
return this.feature;
|
|
70
|
+
return scope
|
|
71
|
+
.merge(A_Context_class_1.A_Context.scope(this.feature))
|
|
72
|
+
.resolve(arg.target);
|
|
62
73
|
})));
|
|
63
74
|
});
|
|
64
75
|
}
|
|
@@ -69,7 +80,7 @@ class A_Stage {
|
|
|
69
80
|
* @returns
|
|
70
81
|
*/
|
|
71
82
|
add(step) {
|
|
72
|
-
this.
|
|
83
|
+
this._steps.push(step);
|
|
73
84
|
return this;
|
|
74
85
|
}
|
|
75
86
|
/**
|
|
@@ -96,36 +107,43 @@ class A_Stage {
|
|
|
96
107
|
* @param step
|
|
97
108
|
* @returns
|
|
98
109
|
*/
|
|
99
|
-
callStepHandler(step) {
|
|
110
|
+
callStepHandler(step, scope) {
|
|
100
111
|
return __awaiter(this, void 0, void 0, function* () {
|
|
101
112
|
const instance = yield this.getStepInstance(step);
|
|
102
|
-
const callArgs = yield this.getStepArgs(step);
|
|
113
|
+
const callArgs = yield this.getStepArgs(step, scope);
|
|
103
114
|
return instance[step.handler](...callArgs);
|
|
104
115
|
});
|
|
105
116
|
}
|
|
106
117
|
/**
|
|
107
|
-
* Runs async all the
|
|
118
|
+
* Runs async all the _steps of the stage
|
|
108
119
|
*
|
|
109
120
|
* @returns
|
|
110
121
|
*/
|
|
111
122
|
process() {
|
|
112
|
-
return __awaiter(this,
|
|
123
|
+
return __awaiter(this, arguments, void 0, function* (
|
|
124
|
+
/**
|
|
125
|
+
* Scope to be used to resolve the steps dependencies
|
|
126
|
+
*/
|
|
127
|
+
scope = new A_Scope_class_1.A_Scope({}, {}), params) {
|
|
113
128
|
if (!this.processed)
|
|
114
129
|
this.processed = new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
|
|
115
130
|
try {
|
|
116
131
|
this.status = A_Stage_types_1.A_TYPES__A_Stage_Status.PROCESSING;
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
132
|
+
if ((params === null || params === void 0 ? void 0 : params.steps) && params.steps.length) {
|
|
133
|
+
params.steps.forEach(step => this.add(step));
|
|
134
|
+
}
|
|
135
|
+
const syncSteps = this.syncSteps.filter((params === null || params === void 0 ? void 0 : params.filter) || (() => true));
|
|
136
|
+
const asyncSteps = this.asyncSteps.filter((params === null || params === void 0 ? void 0 : params.filter) || (() => true));
|
|
137
|
+
// Run sync _steps
|
|
120
138
|
yield Promise
|
|
121
139
|
.all([
|
|
122
|
-
// Run async
|
|
123
|
-
...asyncSteps.map(step => this.callStepHandler(step)),
|
|
124
|
-
// Run sync
|
|
140
|
+
// Run async _steps that are independent of each other
|
|
141
|
+
...asyncSteps.map(step => this.callStepHandler(step, scope)),
|
|
142
|
+
// Run sync _steps that are dependent on each other
|
|
125
143
|
new Promise((r, j) => __awaiter(this, void 0, void 0, function* () {
|
|
126
144
|
try {
|
|
127
145
|
for (const step of syncSteps) {
|
|
128
|
-
yield this.callStepHandler(step);
|
|
146
|
+
yield this.callStepHandler(step, scope);
|
|
129
147
|
}
|
|
130
148
|
return r();
|
|
131
149
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Stage.class.js","sourceRoot":"","sources":["../../../../src/global/A-Stage/A-Stage.class.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAAyD;AACzD,kEAAyD;AACzD,kEAAyD;AACzD,
|
|
1
|
+
{"version":3,"file":"A-Stage.class.js","sourceRoot":"","sources":["../../../../src/global/A-Stage/A-Stage.class.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A-Stage.types.js","sourceRoot":"","sources":["../../../../src/global/A-Stage/A-Stage.types.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"A-Stage.types.js","sourceRoot":"","sources":["../../../../src/global/A-Stage/A-Stage.types.ts"],"names":[],"mappings":";;;AAQA,IAAY,uBAqDX;AArDD,WAAY,uBAAuB;IAC/B;;OAEG;IACH,oDAAyB,CAAA;IACzB;;OAEG;IACH,kDAAuB,CAAA;IACvB;;OAEG;IACH,4CAAiB,CAAA;IACjB;;OAEG;IACH,8CAAmB,CAAA;IACnB;;OAEG;IACH,qBAAqB;IACrB;;OAEG;IACH,uBAAuB;IACvB;;OAEG;IACH,uBAAuB;IACvB;;OAEG;IACH,sDAA2B,CAAA;IAC3B;;OAEG;IACH,mBAAmB;IACnB;;OAEG;IACH,uBAAuB;IACvB;;OAEG;IACH,2BAA2B;IAC3B;;OAEG;IACH,6BAA6B;IAC7B;;OAEG;IACH,8CAAmB,CAAA;AACvB,CAAC,EArDW,uBAAuB,uCAAvB,uBAAuB,QAqDlC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adaas/a-concept",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.38",
|
|
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",
|
|
@@ -165,6 +165,39 @@ export class A_Scope {
|
|
|
165
165
|
}
|
|
166
166
|
|
|
167
167
|
|
|
168
|
+
|
|
169
|
+
/**
|
|
170
|
+
* Merges two scopes into a new one
|
|
171
|
+
*
|
|
172
|
+
* @param anotherScope
|
|
173
|
+
* @returns
|
|
174
|
+
*/
|
|
175
|
+
merge(anotherScope: A_Scope): A_Scope {
|
|
176
|
+
const merged = new A_Scope(
|
|
177
|
+
{
|
|
178
|
+
name: `${this.name}&${anotherScope.name}`,
|
|
179
|
+
components: Array.from(new Set([
|
|
180
|
+
...this.params.components,
|
|
181
|
+
...anotherScope.params.components
|
|
182
|
+
])),
|
|
183
|
+
fragments: Array.from(new Set([
|
|
184
|
+
...this.params.fragments,
|
|
185
|
+
...anotherScope.params.fragments
|
|
186
|
+
])),
|
|
187
|
+
entities: Array.from(new Set([
|
|
188
|
+
...this.params.entities,
|
|
189
|
+
...anotherScope.params.entities
|
|
190
|
+
])),
|
|
191
|
+
},
|
|
192
|
+
{
|
|
193
|
+
parent: this._parent || anotherScope._parent
|
|
194
|
+
}
|
|
195
|
+
);
|
|
196
|
+
|
|
197
|
+
return merged;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
|
|
168
201
|
/**
|
|
169
202
|
* This method is used to get the component by class
|
|
170
203
|
*
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { A_CommonHelper, A_Error } from "@adaas/a-utils";
|
|
2
2
|
import { A_Context } from "../A-Context/A-Context.class";
|
|
3
3
|
import { A_Feature } from "../A-Feature/A-Feature.class";
|
|
4
|
-
import { A_TYPES__A_Stage_JSON, A_TYPES__A_Stage_Status, A_TYPES__A_StageStep } from "./A-Stage.types";
|
|
4
|
+
import { A_TYPES__A_Stage_JSON, A_TYPES__A_Stage_Status, A_TYPES__A_StageStep, A_TYPES__A_StageStepProcessingExtraParams } from "./A-Stage.types";
|
|
5
5
|
import { A_Container } from "../A-Container/A-Container.class";
|
|
6
|
+
import { A_TYPES__ScopeConstructor } from "../A-Scope/A-Scope.types";
|
|
7
|
+
import { A_Scope } from "../A-Scope/A-Scope.class";
|
|
6
8
|
|
|
7
9
|
|
|
8
10
|
/**
|
|
@@ -18,7 +20,7 @@ export class A_Stage {
|
|
|
18
20
|
|
|
19
21
|
constructor(
|
|
20
22
|
private feature: A_Feature,
|
|
21
|
-
private
|
|
23
|
+
private _steps: A_TYPES__A_StageStep[] = []
|
|
22
24
|
) {
|
|
23
25
|
|
|
24
26
|
}
|
|
@@ -31,19 +33,32 @@ export class A_Stage {
|
|
|
31
33
|
|
|
32
34
|
|
|
33
35
|
get before(): string[] {
|
|
34
|
-
return this.
|
|
36
|
+
return this._steps.reduce((acc, step) => ([
|
|
35
37
|
...acc,
|
|
36
38
|
...step.before
|
|
37
39
|
]), [] as string[]);
|
|
38
40
|
}
|
|
39
41
|
|
|
40
42
|
get after(): string[] {
|
|
41
|
-
return this.
|
|
43
|
+
return this._steps.reduce((acc, step) => ([
|
|
42
44
|
...acc,
|
|
43
45
|
...step.after
|
|
44
46
|
]), [] as string[]);
|
|
45
47
|
}
|
|
46
48
|
|
|
49
|
+
get steps(): A_TYPES__A_StageStep[] {
|
|
50
|
+
return this._steps;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
get asyncSteps(): A_TYPES__A_StageStep[] {
|
|
55
|
+
return this._steps.filter(step => step.behavior === 'async');
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
get syncSteps(): A_TYPES__A_StageStep[] {
|
|
59
|
+
return this._steps.filter(step => step.behavior === 'sync');
|
|
60
|
+
}
|
|
61
|
+
|
|
47
62
|
|
|
48
63
|
/**
|
|
49
64
|
* Resolves the arguments of the step
|
|
@@ -51,7 +66,11 @@ export class A_Stage {
|
|
|
51
66
|
* @param step
|
|
52
67
|
* @returns
|
|
53
68
|
*/
|
|
54
|
-
protected async getStepArgs(
|
|
69
|
+
protected async getStepArgs(
|
|
70
|
+
step: A_TYPES__A_StageStep,
|
|
71
|
+
scope: A_Scope
|
|
72
|
+
) {
|
|
73
|
+
|
|
55
74
|
return Promise
|
|
56
75
|
.all(A_Context
|
|
57
76
|
.meta(
|
|
@@ -60,12 +79,15 @@ export class A_Stage {
|
|
|
60
79
|
: step.component
|
|
61
80
|
)
|
|
62
81
|
.injections(step.handler)
|
|
63
|
-
.map(async arg =>
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
82
|
+
.map(async arg => {
|
|
83
|
+
if (A_CommonHelper.isInheritedFrom(arg.target, A_Feature))
|
|
84
|
+
return this.feature;
|
|
85
|
+
|
|
86
|
+
return scope
|
|
87
|
+
.merge(A_Context.scope(this.feature))
|
|
88
|
+
.resolve(arg.target)
|
|
89
|
+
})
|
|
90
|
+
)
|
|
69
91
|
}
|
|
70
92
|
|
|
71
93
|
|
|
@@ -78,7 +100,7 @@ export class A_Stage {
|
|
|
78
100
|
add(
|
|
79
101
|
step: A_TYPES__A_StageStep
|
|
80
102
|
): this {
|
|
81
|
-
this.
|
|
103
|
+
this._steps.push(step);
|
|
82
104
|
|
|
83
105
|
return this;
|
|
84
106
|
}
|
|
@@ -116,46 +138,55 @@ export class A_Stage {
|
|
|
116
138
|
* @param step
|
|
117
139
|
* @returns
|
|
118
140
|
*/
|
|
119
|
-
protected async callStepHandler(
|
|
120
|
-
|
|
141
|
+
protected async callStepHandler(
|
|
142
|
+
step: A_TYPES__A_StageStep,
|
|
143
|
+
scope: A_Scope
|
|
144
|
+
) {
|
|
121
145
|
const instance = await this.getStepInstance(step);
|
|
122
|
-
const callArgs = await this.getStepArgs(step);
|
|
123
|
-
|
|
146
|
+
const callArgs = await this.getStepArgs(step, scope);
|
|
124
147
|
|
|
125
148
|
return instance[step.handler](...callArgs);
|
|
126
|
-
|
|
127
149
|
}
|
|
128
150
|
|
|
129
151
|
|
|
130
152
|
/**
|
|
131
|
-
* Runs async all the
|
|
153
|
+
* Runs async all the _steps of the stage
|
|
132
154
|
*
|
|
133
155
|
* @returns
|
|
134
156
|
*/
|
|
135
|
-
async process(
|
|
157
|
+
async process(
|
|
158
|
+
/**
|
|
159
|
+
* Scope to be used to resolve the steps dependencies
|
|
160
|
+
*/
|
|
161
|
+
scope: A_Scope = new A_Scope({}, {}),
|
|
162
|
+
params?: Partial<A_TYPES__A_StageStepProcessingExtraParams>
|
|
163
|
+
): Promise<void> {
|
|
136
164
|
if (!this.processed)
|
|
137
165
|
this.processed = new Promise<void>(
|
|
138
166
|
async (resolve, reject) => {
|
|
139
167
|
try {
|
|
140
168
|
this.status = A_TYPES__A_Stage_Status.PROCESSING;
|
|
141
169
|
|
|
142
|
-
|
|
143
|
-
|
|
170
|
+
if (params?.steps && params.steps.length) {
|
|
171
|
+
params.steps.forEach(step => this.add(step));
|
|
172
|
+
}
|
|
144
173
|
|
|
145
|
-
|
|
174
|
+
const syncSteps = this.syncSteps.filter(params?.filter || (() => true));
|
|
175
|
+
const asyncSteps = this.asyncSteps.filter(params?.filter || (() => true));
|
|
146
176
|
|
|
147
|
-
|
|
177
|
+
// Run sync _steps
|
|
178
|
+
await Promise
|
|
148
179
|
.all([
|
|
149
180
|
|
|
150
|
-
// Run async
|
|
151
|
-
...asyncSteps.map(step => this.callStepHandler(step)),
|
|
181
|
+
// Run async _steps that are independent of each other
|
|
182
|
+
...asyncSteps.map(step => this.callStepHandler(step, scope)),
|
|
152
183
|
|
|
153
|
-
// Run sync
|
|
184
|
+
// Run sync _steps that are dependent on each other
|
|
154
185
|
new Promise<void>(
|
|
155
186
|
async (r, j) => {
|
|
156
187
|
try {
|
|
157
188
|
for (const step of syncSteps) {
|
|
158
|
-
await this.callStepHandler(step);
|
|
189
|
+
await this.callStepHandler(step, scope);
|
|
159
190
|
}
|
|
160
191
|
|
|
161
192
|
return r();
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
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_ExtendDecorator_BehaviorConfig } from "@adaas/a-concept/decorators/A-Feature/A-Feature.decorator.types"
|
|
4
|
+
import { A_TYPES__ScopeConfig, A_TYPES__ScopeConstructor } from "../A-Scope/A-Scope.types"
|
|
5
|
+
import { A_Scope } from "../A-Scope/A-Scope.class"
|
|
4
6
|
|
|
5
7
|
|
|
6
8
|
|
|
@@ -65,7 +67,7 @@ export type A_TYPES__A_StageStep = {
|
|
|
65
67
|
/**
|
|
66
68
|
* The component to be called
|
|
67
69
|
*/
|
|
68
|
-
component: typeof A_Component |
|
|
70
|
+
component: typeof A_Component | A_Container
|
|
69
71
|
|
|
70
72
|
/**
|
|
71
73
|
* The method to be called on the component
|
|
@@ -97,4 +99,12 @@ export type A_TYPES__A_Stage_JSON = {
|
|
|
97
99
|
*/
|
|
98
100
|
status: A_TYPES__A_Stage_Status,
|
|
99
101
|
|
|
100
|
-
|
|
102
|
+
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
export type A_TYPES__A_StageStepProcessingExtraParams = {
|
|
108
|
+
steps: A_TYPES__A_StageStep[]
|
|
109
|
+
filter: (step: A_TYPES__A_StageStep) => boolean
|
|
110
|
+
}
|