VirtualKimi commited on
Commit
6480678
·
verified ·
1 Parent(s): fde9e46

Delete kimi-js/kimi-event-bus.js

Browse files
Files changed (1) hide show
  1. kimi-js/kimi-event-bus.js +0 -55
kimi-js/kimi-event-bus.js DELETED
@@ -1,55 +0,0 @@
1
- // Simple lightweight event bus with optional debug buffer
2
- (function () {
3
- const listeners = new Map(); // event -> Set<fn>
4
- const debugBuffer = [];
5
- const MAX_DEBUG = 300;
6
- let debugEnabled = false;
7
-
8
- function on(event, handler) {
9
- if (!listeners.has(event)) listeners.set(event, new Set());
10
- listeners.get(event).add(handler);
11
- return () => off(event, handler);
12
- }
13
- function once(event, handler) {
14
- const wrap = payload => {
15
- off(event, wrap);
16
- try {
17
- handler(payload);
18
- } catch (e) {
19
- console.error(e);
20
- }
21
- };
22
- return on(event, wrap);
23
- }
24
- function off(event, handler) {
25
- const set = listeners.get(event);
26
- if (set) {
27
- set.delete(handler);
28
- if (set.size === 0) listeners.delete(event);
29
- }
30
- }
31
- function emit(event, payload) {
32
- if (debugEnabled) {
33
- debugBuffer.push({ ts: Date.now(), event, payload });
34
- if (debugBuffer.length > MAX_DEBUG) debugBuffer.shift();
35
- }
36
- const set = listeners.get(event);
37
- if (set) {
38
- for (const h of [...set]) {
39
- try {
40
- h(payload);
41
- } catch (e) {
42
- console.error("Event handler error", event, e);
43
- }
44
- }
45
- }
46
- }
47
- function enableDebug(v = true) {
48
- debugEnabled = !!v;
49
- }
50
- function getDebug() {
51
- return debugBuffer.slice();
52
- }
53
-
54
- window.kimiEventBus = { on, once, off, emit, enableDebug, getDebug };
55
- })();