@furystack/utils 8.1.0 → 8.1.2
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/esm/event-hub.d.ts +1 -1
- package/esm/event-hub.d.ts.map +1 -1
- package/esm/event-hub.js +1 -1
- package/esm/event-hub.js.map +1 -1
- package/esm/event-hub.spec.js +1 -1
- package/esm/event-hub.spec.js.map +1 -1
- package/package.json +2 -2
- package/src/event-hub.spec.ts +1 -1
- package/src/event-hub.ts +4 -2
package/esm/event-hub.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
type ListenerFunction<EventTypeMap extends object, T extends keyof EventTypeMap> = (arg: EventTypeMap[T]) => void
|
|
1
|
+
type ListenerFunction<EventTypeMap extends object, T extends keyof EventTypeMap> = (arg: EventTypeMap[T]) => void | PromiseLike<void>;
|
|
2
2
|
export declare class EventHub<EventTypeMap extends object> implements Disposable {
|
|
3
3
|
private listeners;
|
|
4
4
|
addListener<TEvent extends keyof EventTypeMap>(event: TEvent, listener: ListenerFunction<EventTypeMap, TEvent>): void;
|
package/esm/event-hub.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-hub.d.ts","sourceRoot":"","sources":["../src/event-hub.ts"],"names":[],"mappings":"AAAA,KAAK,gBAAgB,CAAC,YAAY,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,YAAY,IAAI,
|
|
1
|
+
{"version":3,"file":"event-hub.d.ts","sourceRoot":"","sources":["../src/event-hub.ts"],"names":[],"mappings":"AAAA,KAAK,gBAAgB,CAAC,YAAY,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,YAAY,IAAI,CACjF,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,KACjB,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;AAE7B,qBAAa,QAAQ,CAAC,YAAY,SAAS,MAAM,CAAE,YAAW,UAAU;IACtE,OAAO,CAAC,SAAS,CAAyF;IAEnG,WAAW,CAAC,MAAM,SAAS,MAAM,YAAY,EAClD,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,gBAAgB,CAAC,YAAY,EAAE,MAAM,CAAC;IAQ3C,cAAc,CAAC,MAAM,SAAS,MAAM,YAAY,EACrD,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,gBAAgB,CAAC,YAAY,EAAE,MAAM,CAAC;IAO3C,SAAS,CAAC,MAAM,SAAS,MAAM,YAAY,EAChD,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,gBAAgB,CAAC,YAAY,EAAE,MAAM,CAAC,GAC/C,UAAU;IAKN,IAAI,CAAC,MAAM,SAAS,MAAM,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,CAAC,MAAM,CAAC;IAMhF,CAAC,MAAM,CAAC,OAAO,CAAC;CAGxB"}
|
package/esm/event-hub.js
CHANGED
package/esm/event-hub.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-hub.js","sourceRoot":"","sources":["../src/event-hub.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"event-hub.js","sourceRoot":"","sources":["../src/event-hub.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,QAAQ;IACX,SAAS,GAAG,IAAI,GAAG,EAA+E,CAAA;IAEnG,WAAW,CAChB,KAAa,EACb,QAAgD;QAEhD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,GAAG,EAAE,CAAC,CAAA;QACtC,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC,GAAG,CAAC,QAA8D,CAAC,CAAA;IAChG,CAAC;IAEM,cAAc,CACnB,KAAa,EACb,QAAgD;QAEhD,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC,MAAM,CAAC,QAA8D,CAAC,CAAA;QACnG,CAAC;IACH,CAAC;IAEM,SAAS,CACd,KAAa,EACb,QAAgD;QAEhD,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;QACjC,OAAO,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAA;IACzE,CAAC;IAEM,IAAI,CAAoC,KAAa,EAAE,GAAyB;QACrF,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;QACtE,CAAC;IACH,CAAC;IAEM,CAAC,MAAM,CAAC,OAAO,CAAC;QACrB,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAA;IACxB,CAAC;CACF"}
|
package/esm/event-hub.spec.js
CHANGED
|
@@ -31,7 +31,7 @@ describe('EventHub', () => {
|
|
|
31
31
|
const numberListener = vi.fn((_val) => { });
|
|
32
32
|
const stringListener = vi.fn((_val) => { });
|
|
33
33
|
const objectListener1 = vi.fn((_val) => { });
|
|
34
|
-
const objectListener2 = vi.fn((_val) => { });
|
|
34
|
+
const objectListener2 = vi.fn(async (_val) => { });
|
|
35
35
|
// Act
|
|
36
36
|
eventHub.addListener('ExampleNumberEvent', numberListener);
|
|
37
37
|
eventHub.emit('ExampleNumberEvent', 1);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-hub.spec.js","sourceRoot":"","sources":["../src/event-hub.spec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACxB,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;QACpC,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAA8D,CAAA;QAC3F,MAAM,cAAc,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,IAAY,EAAE,EAAE,GAAE,CAAC,CAAC,CAAA;QAClD,MAAM,cAAc,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,IAAY,EAAE,EAAE,GAAE,CAAC,CAAC,CAAA;QAClD,oEAAoE;QACpE,QAAQ,CAAC,WAAW,CAAC,oBAAoB,EAAE,cAAc,CAAC,CAAA;QAC1D,oEAAoE;QACpE,QAAQ,CAAC,IAAI,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAA;QAExC,oEAAoE;QACpE,QAAQ,CAAC,WAAW,CAAC,oBAAoB,EAAE,cAAc,CAAC,CAAA;QAC1D,oEAAoE;QACpE,QAAQ,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAA;IACxC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAClC,UAAU;QACV,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAkC,CAAA;QAC/D,MAAM,cAAc,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,IAAY,EAAE,EAAE,GAAE,CAAC,CAAC,CAAA;QAElD,MAAM;QACN,QAAQ,CAAC,WAAW,CAAC,oBAAoB,EAAE,cAAc,CAAC,CAAA;QAC1D,QAAQ,CAAC,cAAc,CAAC,oBAAoB,EAAE,cAAc,CAAC,CAAA;QAC7D,QAAQ,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAA;QAEtC,SAAS;QACT,MAAM,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,UAAU,EAAE,CAAA;IACzC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACpD,UAAU;QACV,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAKzB,CAAA;QACJ,MAAM,cAAc,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,IAAY,EAAE,EAAE,GAAE,CAAC,CAAC,CAAA;QAElD,MAAM,cAAc,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,IAAY,EAAE,EAAE,GAAE,CAAC,CAAC,CAAA;QAElD,MAAM,eAAe,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,IAAmB,EAAE,EAAE,GAAE,CAAC,CAAC,CAAA;QAE1D,MAAM,eAAe,GAAG,EAAE,CAAC,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"event-hub.spec.js","sourceRoot":"","sources":["../src/event-hub.spec.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@furystack/utils",
|
|
3
|
-
"version": "8.1.
|
|
3
|
+
"version": "8.1.2",
|
|
4
4
|
"description": "General utilities",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"scripts": {
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
},
|
|
35
35
|
"homepage": "https://github.com/furystack/furystack",
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"typescript": "^5.
|
|
37
|
+
"typescript": "^5.9.2",
|
|
38
38
|
"vitest": "^3.2.4"
|
|
39
39
|
}
|
|
40
40
|
}
|
package/src/event-hub.spec.ts
CHANGED
|
@@ -45,7 +45,7 @@ describe('EventHub', () => {
|
|
|
45
45
|
|
|
46
46
|
const objectListener1 = vi.fn((_val: { a: number }) => {})
|
|
47
47
|
|
|
48
|
-
const objectListener2 = vi.fn((_val: { b: string }) => {})
|
|
48
|
+
const objectListener2 = vi.fn(async (_val: { b: string }) => {})
|
|
49
49
|
|
|
50
50
|
// Act
|
|
51
51
|
eventHub.addListener('ExampleNumberEvent', numberListener)
|
package/src/event-hub.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
type ListenerFunction<EventTypeMap extends object, T extends keyof EventTypeMap> = (
|
|
1
|
+
type ListenerFunction<EventTypeMap extends object, T extends keyof EventTypeMap> = (
|
|
2
|
+
arg: EventTypeMap[T],
|
|
3
|
+
) => void | PromiseLike<void>
|
|
2
4
|
|
|
3
5
|
export class EventHub<EventTypeMap extends object> implements Disposable {
|
|
4
6
|
private listeners = new Map<keyof EventTypeMap, Set<ListenerFunction<EventTypeMap, keyof EventTypeMap>>>()
|
|
@@ -32,7 +34,7 @@ export class EventHub<EventTypeMap extends object> implements Disposable {
|
|
|
32
34
|
|
|
33
35
|
public emit<TEvent extends keyof EventTypeMap>(event: TEvent, arg: EventTypeMap[TEvent]) {
|
|
34
36
|
if (this.listeners.has(event)) {
|
|
35
|
-
this.listeners.get(event)!.forEach((listener) => listener(arg))
|
|
37
|
+
this.listeners.get(event)!.forEach((listener) => void listener(arg))
|
|
36
38
|
}
|
|
37
39
|
}
|
|
38
40
|
|