@holoscript/std 7.0.0 → 7.0.1
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/README.md +8 -0
- package/dist/chunk-DGUM43GV.js +11 -0
- package/dist/{chunk-PFX2JM4X.js → chunk-FAMOLKH3.js} +2 -1
- package/dist/{chunk-PFX2JM4X.js.map → chunk-FAMOLKH3.js.map} +1 -1
- package/dist/{chunk-DZHAVOCH.js → chunk-SOKH6FJ7.js} +31 -6
- package/dist/chunk-SOKH6FJ7.js.map +1 -0
- package/dist/collections.cjs +1 -0
- package/dist/collections.cjs.map +1 -1
- package/dist/collections.js +2 -2
- package/dist/fs/fs.d.ts.map +1 -1
- package/dist/fs/index.cjs +221 -8510
- package/dist/fs/index.cjs.map +1 -1
- package/dist/fs/index.js +832 -118
- package/dist/fs/index.js.map +1 -1
- package/dist/fs/sandbox.d.ts +49 -0
- package/dist/fs/sandbox.d.ts.map +1 -0
- package/dist/index.cjs +3494 -12672
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -7
- package/dist/index.js.map +1 -1
- package/dist/math.cjs +18 -3
- package/dist/math.cjs.map +1 -1
- package/dist/math.js +2 -2
- package/dist/string.js +1 -1
- package/dist/time.js +1 -1
- package/dist/traits/EconomicPrimitives.js +1 -1
- package/dist/traits/EconomicTraits.js +1 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +19 -9
- package/dist/__tests__/EconomicPrimitives.test.d.ts +0 -2
- package/dist/__tests__/EconomicPrimitives.test.d.ts.map +0 -1
- package/dist/__tests__/EconomicTraits.test.d.ts +0 -2
- package/dist/__tests__/EconomicTraits.test.d.ts.map +0 -1
- package/dist/__tests__/SimulationLabPrimitives.test.d.ts +0 -2
- package/dist/__tests__/SimulationLabPrimitives.test.d.ts.map +0 -1
- package/dist/__tests__/collections.test.d.ts +0 -2
- package/dist/__tests__/collections.test.d.ts.map +0 -1
- package/dist/__tests__/events.test.d.ts +0 -2
- package/dist/__tests__/events.test.d.ts.map +0 -1
- package/dist/__tests__/index.test.d.ts +0 -2
- package/dist/__tests__/index.test.d.ts.map +0 -1
- package/dist/__tests__/materials.test.d.ts +0 -2
- package/dist/__tests__/materials.test.d.ts.map +0 -1
- package/dist/__tests__/math.test.d.ts +0 -2
- package/dist/__tests__/math.test.d.ts.map +0 -1
- package/dist/__tests__/physics.test.d.ts +0 -2
- package/dist/__tests__/physics.test.d.ts.map +0 -1
- package/dist/__tests__/spatial.test.d.ts +0 -2
- package/dist/__tests__/spatial.test.d.ts.map +0 -1
- package/dist/__tests__/standard-library-fundamentals.test.d.ts +0 -2
- package/dist/__tests__/standard-library-fundamentals.test.d.ts.map +0 -1
- package/dist/__tests__/string-and-time-utilities.test.d.ts +0 -2
- package/dist/__tests__/string-and-time-utilities.test.d.ts.map +0 -1
- package/dist/__tests__/string-decoupled.test.d.ts +0 -2
- package/dist/__tests__/string-decoupled.test.d.ts.map +0 -1
- package/dist/__tests__/string.test.d.ts +0 -2
- package/dist/__tests__/string.test.d.ts.map +0 -1
- package/dist/__tests__/time.test.d.ts +0 -2
- package/dist/__tests__/time.test.d.ts.map +0 -1
- package/dist/chunk-DZHAVOCH.js.map +0 -1
- package/dist/chunk-PR4QN5HX.js +0 -43
- package/dist/chunk-XBA4ARST.js +0 -9313
- package/dist/chunk-XBA4ARST.js.map +0 -1
- package/dist/fs/__tests__/file-watch-system.test.d.ts +0 -2
- package/dist/fs/__tests__/file-watch-system.test.d.ts.map +0 -1
- package/dist/fs/__tests__/path-utilities.test.d.ts +0 -2
- package/dist/fs/__tests__/path-utilities.test.d.ts.map +0 -1
- package/dist/fs/__tests__/path.test.d.ts +0 -2
- package/dist/fs/__tests__/path.test.d.ts.map +0 -1
- package/dist/string.basic.test.d.ts +0 -5
- package/dist/string.basic.test.d.ts.map +0 -1
- package/dist/string.test.d.ts +0 -5
- package/dist/string.test.d.ts.map +0 -1
- package/dist/traits/__tests__/ARTraits.test.d.ts +0 -2
- package/dist/traits/__tests__/ARTraits.test.d.ts.map +0 -1
- package/dist/traits/__tests__/EconomicPrimitives.test.d.ts +0 -2
- package/dist/traits/__tests__/EconomicPrimitives.test.d.ts.map +0 -1
- package/dist/traits/__tests__/EconomicTraits.test.d.ts +0 -2
- package/dist/traits/__tests__/EconomicTraits.test.d.ts.map +0 -1
- package/error-utf8.log +0 -6
- package/error.log +0 -0
- package/src/__tests__/EconomicPrimitives.test.ts +0 -690
- package/src/__tests__/EconomicTraits.test.ts +0 -425
- package/src/__tests__/SimulationLabPrimitives.test.ts +0 -415
- package/src/__tests__/collections.test.ts +0 -182
- package/src/__tests__/events.test.ts +0 -135
- package/src/__tests__/index.test.ts +0 -14
- package/src/__tests__/materials.test.ts +0 -84
- package/src/__tests__/math.test.ts +0 -246
- package/src/__tests__/physics.test.ts +0 -83
- package/src/__tests__/spatial.test.ts +0 -333
- package/src/__tests__/standard-library-fundamentals.test.ts +0 -1318
- package/src/__tests__/string-and-time-utilities.test.ts +0 -1070
- package/src/__tests__/string-decoupled.test.ts +0 -13
- package/src/__tests__/string.test.ts +0 -164
- package/src/__tests__/time.test.ts +0 -110
- package/src/collections.ts +0 -850
- package/src/events.ts +0 -88
- package/src/fs/__tests__/file-watch-system.test.ts +0 -675
- package/src/fs/__tests__/path-utilities.test.ts +0 -375
- package/src/fs/__tests__/path.test.ts +0 -287
- package/src/fs/fs.ts +0 -692
- package/src/fs/index.ts +0 -194
- package/src/fs/path.ts +0 -310
- package/src/fs/watch.ts +0 -413
- package/src/index.ts +0 -476
- package/src/materials.ts +0 -109
- package/src/math.ts +0 -674
- package/src/physics.ts +0 -141
- package/src/spatial.ts +0 -320
- package/src/string.basic.test.ts +0 -14
- package/src/string.test.ts +0 -335
- package/src/string.ts +0 -531
- package/src/time.ts +0 -621
- package/src/traits/ARTraits.ts +0 -103
- package/src/traits/EconomicPrimitives.ts +0 -755
- package/src/traits/EconomicTraits.ts +0 -552
- package/src/traits/IoTTraits.ts +0 -102
- package/src/traits/SimulationLabPrimitives.ts +0 -650
- package/src/traits/SimulationLabTraits.ts +0 -191
- package/src/traits/VRRTraits.ts +0 -326
- package/src/traits/__tests__/ARTraits.test.ts +0 -8
- package/src/traits/__tests__/EconomicPrimitives.test.ts +0 -14
- package/src/traits/__tests__/EconomicTraits.test.ts +0 -16
- package/src/types.ts +0 -418
- package/std_error.log +0 -5
- package/tsconfig.json +0 -18
- package/tsup.config.ts +0 -20
- package/vitest.config.ts +0 -10
- /package/dist/{chunk-PR4QN5HX.js.map → chunk-DGUM43GV.js.map} +0 -0
package/src/events.ts
DELETED
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @holoscript/std — Events Module
|
|
3
|
-
*
|
|
4
|
-
* Provides a typed event bus for HoloScript compositions.
|
|
5
|
-
* Supports emit, on, once, off, and wildcard listeners.
|
|
6
|
-
*
|
|
7
|
-
* @version 0.2.0
|
|
8
|
-
* @module @holoscript/std/events
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
export type EventHandler<T = any> = (data: T) => void;
|
|
12
|
-
|
|
13
|
-
interface Listener {
|
|
14
|
-
handler: EventHandler;
|
|
15
|
-
once: boolean;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export class EventBus {
|
|
19
|
-
private listeners: Map<string, Listener[]> = new Map();
|
|
20
|
-
private wildcardListeners: Listener[] = [];
|
|
21
|
-
|
|
22
|
-
/** Register an event listener. */
|
|
23
|
-
on<T = any>(event: string, handler: EventHandler<T>): () => void {
|
|
24
|
-
if (!this.listeners.has(event)) this.listeners.set(event, []);
|
|
25
|
-
const listener: Listener = { handler, once: false };
|
|
26
|
-
this.listeners.get(event)!.push(listener);
|
|
27
|
-
return () => this.off(event, handler);
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
/** Register a one-time event listener. */
|
|
31
|
-
once<T = any>(event: string, handler: EventHandler<T>): () => void {
|
|
32
|
-
if (!this.listeners.has(event)) this.listeners.set(event, []);
|
|
33
|
-
const listener: Listener = { handler, once: true };
|
|
34
|
-
this.listeners.get(event)!.push(listener);
|
|
35
|
-
return () => this.off(event, handler);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
/** Remove an event listener. */
|
|
39
|
-
off(event: string, handler: EventHandler): void {
|
|
40
|
-
const list = this.listeners.get(event);
|
|
41
|
-
if (!list) return;
|
|
42
|
-
this.listeners.set(
|
|
43
|
-
event,
|
|
44
|
-
list.filter((l) => l.handler !== handler)
|
|
45
|
-
);
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
/** Emit an event to all registered listeners. */
|
|
49
|
-
emit<T = any>(event: string, data?: T): void {
|
|
50
|
-
// Fire specific listeners
|
|
51
|
-
const list = this.listeners.get(event);
|
|
52
|
-
if (list) {
|
|
53
|
-
const remaining: Listener[] = [];
|
|
54
|
-
for (const l of list) {
|
|
55
|
-
l.handler(data);
|
|
56
|
-
if (!l.once) remaining.push(l);
|
|
57
|
-
}
|
|
58
|
-
this.listeners.set(event, remaining);
|
|
59
|
-
}
|
|
60
|
-
// Fire wildcard listeners
|
|
61
|
-
for (const l of this.wildcardListeners) {
|
|
62
|
-
l.handler({ event, data });
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
/** Listen to all events. */
|
|
67
|
-
onAny(handler: EventHandler<{ event: string; data: any }>): () => void {
|
|
68
|
-
const listener: Listener = { handler, once: false };
|
|
69
|
-
this.wildcardListeners.push(listener);
|
|
70
|
-
return () => {
|
|
71
|
-
this.wildcardListeners = this.wildcardListeners.filter((l) => l !== listener);
|
|
72
|
-
};
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
/** Remove all listeners. */
|
|
76
|
-
clear(): void {
|
|
77
|
-
this.listeners.clear();
|
|
78
|
-
this.wildcardListeners = [];
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
/** Get count of listeners for an event (or all events). */
|
|
82
|
-
listenerCount(event?: string): number {
|
|
83
|
-
if (event) return (this.listeners.get(event) || []).length;
|
|
84
|
-
let total = this.wildcardListeners.length;
|
|
85
|
-
for (const [, list] of this.listeners) total += list.length;
|
|
86
|
-
return total;
|
|
87
|
-
}
|
|
88
|
-
}
|