@adaas/a-utils 0.1.33 → 0.1.35
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/index.cjs +6 -6
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.mjs +6 -6
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
- package/src/lib/A-Signal/entities/A-SignalVector.entity.ts +7 -8
- package/tests/A-Signal.test.ts +56 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adaas/a-utils",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.35",
|
|
4
4
|
"description": "A-Utils is a set of utilities that are used across the ADAAS ecosystem. This package is designed to be a collection of utilities that are used across the ADAAS ecosystem.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"main": "./dist/index.cjs",
|
|
@@ -80,7 +80,7 @@
|
|
|
80
80
|
"build": "tsup --config tsup.config.ts"
|
|
81
81
|
},
|
|
82
82
|
"dependencies": {
|
|
83
|
-
"@adaas/a-concept": "^0.1.
|
|
83
|
+
"@adaas/a-concept": "^0.1.54"
|
|
84
84
|
},
|
|
85
85
|
"devDependencies": {
|
|
86
86
|
"@types/chai": "^4.3.14",
|
|
@@ -120,22 +120,22 @@ export class A_SignalVector<
|
|
|
120
120
|
*
|
|
121
121
|
* @param signal
|
|
122
122
|
*/
|
|
123
|
-
get(signal:
|
|
124
|
-
get(signalConstructor:
|
|
125
|
-
get(param1:
|
|
126
|
-
let signalConstructor:
|
|
123
|
+
get<T extends A_Signal>(signal: T): T | undefined
|
|
124
|
+
get<T extends A_Signal>(signalConstructor: A_TYPES__Entity_Constructor<T>): T | undefined
|
|
125
|
+
get<T extends A_Signal>(param1: T | A_TYPES__Entity_Constructor<T>): T | undefined {
|
|
126
|
+
let signalConstructor: A_TYPES__Entity_Constructor<A_Signal>;
|
|
127
127
|
|
|
128
128
|
if (param1 instanceof A_Entity) {
|
|
129
|
-
signalConstructor = param1.constructor as
|
|
129
|
+
signalConstructor = param1.constructor as A_TYPES__Entity_Constructor<A_Signal>;
|
|
130
130
|
} else {
|
|
131
|
-
signalConstructor = param1
|
|
131
|
+
signalConstructor = param1 as A_TYPES__Entity_Constructor<A_Signal>;
|
|
132
132
|
}
|
|
133
133
|
|
|
134
134
|
const index = this._signals.findIndex(s => s.constructor === signalConstructor);
|
|
135
135
|
if (index === -1) {
|
|
136
136
|
return undefined;
|
|
137
137
|
}
|
|
138
|
-
return this._signals[index];
|
|
138
|
+
return this._signals[index] as T;
|
|
139
139
|
}
|
|
140
140
|
|
|
141
141
|
|
|
@@ -241,4 +241,3 @@ export class A_SignalVector<
|
|
|
241
241
|
};
|
|
242
242
|
}
|
|
243
243
|
}
|
|
244
|
-
|
package/tests/A-Signal.test.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { A_Caller, A_Component, A_Concept, A_Container, A_Context, A_Feature, A_Inject, A_Scope } from "@adaas/a-concept";
|
|
2
|
-
import {
|
|
2
|
+
import { A_SignalVectorFeatures } from "@adaas/a-utils/lib/A-Signal/A-Signal.constants";
|
|
3
3
|
import { A_SignalBus } from "@adaas/a-utils/lib/A-Signal/components/A-SignalBus.component";
|
|
4
4
|
import { A_SignalConfig } from "@adaas/a-utils/lib/A-Signal/context/A-SignalConfig.context";
|
|
5
5
|
import { A_Signal } from "@adaas/a-utils/lib/A-Signal/entities/A-Signal.entity";
|
|
@@ -10,6 +10,60 @@ import { A_SignalVector } from "@adaas/a-utils/lib/A-Signal/entities/A-SignalVec
|
|
|
10
10
|
jest.retryTimes(0);
|
|
11
11
|
|
|
12
12
|
describe('A-Signal tests', () => {
|
|
13
|
+
it('Should Allow to create a new Signal', async () => {
|
|
14
|
+
const signal = new A_Signal<{ message: string }>({
|
|
15
|
+
data: {
|
|
16
|
+
message: 'Hello, World!'
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
expect(signal).toBeDefined();
|
|
21
|
+
expect(signal).toBeInstanceOf(A_Signal);
|
|
22
|
+
expect(signal.data.message).toBe('Hello, World!');
|
|
23
|
+
});
|
|
24
|
+
it('Should Allow to create a new Signal Vector', async () => {
|
|
25
|
+
class MySignalA extends A_Signal<{ buttonId: string }> { }
|
|
26
|
+
class MySignalB extends A_Signal<{ pageId: string }> { }
|
|
27
|
+
|
|
28
|
+
const vector = new A_SignalVector({
|
|
29
|
+
structure: [MySignalA, MySignalB],
|
|
30
|
+
values: [
|
|
31
|
+
new MySignalA({ data: { buttonId: 'submit-order' } }),
|
|
32
|
+
new MySignalB({ data: { pageId: 'home-page' } })
|
|
33
|
+
]
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
expect(vector).toBeDefined();
|
|
37
|
+
expect(vector).toBeInstanceOf(A_SignalVector);
|
|
38
|
+
expect(vector.length).toBe(2);
|
|
39
|
+
expect((await vector.toDataVector())[0]?.buttonId).toBe('submit-order');
|
|
40
|
+
expect((await vector.toDataVector())[1]?.pageId).toBe('home-page');
|
|
41
|
+
});
|
|
42
|
+
it('Should Allow to get signals fro Signal Vector', async () => {
|
|
43
|
+
class MySignalA extends A_Signal<{ buttonId: string }> { }
|
|
44
|
+
class MySignalB extends A_Signal<{ pageId: string }> { }
|
|
45
|
+
class MySignalC extends A_Signal<{ userId: string }> { }
|
|
46
|
+
|
|
47
|
+
const vector = new A_SignalVector({
|
|
48
|
+
structure: [MySignalA, MySignalB],
|
|
49
|
+
values: [
|
|
50
|
+
new MySignalA({ data: { buttonId: 'submit-order' } }),
|
|
51
|
+
new MySignalB({ data: { pageId: 'home-page' } })
|
|
52
|
+
]
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
const signalA = vector.get(MySignalA);
|
|
56
|
+
const signalB = vector.get(MySignalB);
|
|
57
|
+
const signalC = vector.get(MySignalC);
|
|
58
|
+
|
|
59
|
+
expect(signalA).toBeDefined();
|
|
60
|
+
expect(signalA).toBeInstanceOf(MySignalA);
|
|
61
|
+
expect(signalA?.data.buttonId).toBe('submit-order');
|
|
62
|
+
expect(signalB).toBeDefined();
|
|
63
|
+
expect(signalB).toBeInstanceOf(MySignalB);
|
|
64
|
+
expect(signalB?.data.pageId).toBe('home-page');
|
|
65
|
+
expect(signalC).toBeUndefined();
|
|
66
|
+
});
|
|
13
67
|
it('Should Allow to emit basic signal structure', async () => {
|
|
14
68
|
|
|
15
69
|
let result: A_SignalVector | undefined = undefined;
|
|
@@ -130,4 +184,5 @@ describe('A-Signal tests', () => {
|
|
|
130
184
|
expect((await result!.toDataVector())[2]).toBeUndefined();
|
|
131
185
|
|
|
132
186
|
});
|
|
187
|
+
|
|
133
188
|
})
|