2 lines
1.3 KiB
JavaScript
2 lines
1.3 KiB
JavaScript
const e="LoginState.LoginSuccess";class t{constructor(){this.eventMap=new Map,this.chat=null}registerEvent(e,t){if(console.log(`TUIEventManager.registerEvent eventName:${e}`),!this.eventMap.has(e)){const t=[];this.eventMap.set(e,t)}const n=this.eventMap.get(e)||[];-1===n.indexOf(t)&&(n.push(t),this.renotify(e,t))}unregisterEvent(e,t){if(console.log(`TUIEventManager.unregisterEvent eventName:${e}`),this.eventMap.has(e)){const n=this.eventMap.get(e)||[],s=n.indexOf(t);s>-1&&n.splice(s,1)}}notifyEvent(t){const{eventName:n,params:s}=t;if(console.log("TUIEventManager.notifyEvent options:",t),n===e&&(this.chat=(null==s?void 0:s.chat)||null),this.eventMap.has(n)){(this.eventMap.get(n)||[]).forEach((e=>{e.onNotifyEvent(t)}))}}renotify(t,n){var s;t===e&&(null===(s=this.chat)||void 0===s?void 0:s.isReady())&&(n.onNotifyEvent({eventName:t,params:{chat:this.chat}}),console.log("TUIEventManager.renotify success."))}}class n{constructor(){this.eventManager=new t}static getInstance(){return n.instance||(console.log("TUIBridge.getInstance ok."),n.instance=new n),n.instance}registerEvent(e,t){return this.eventManager.registerEvent(e,t)}unregisterEvent(e,t){return this.eventManager.unregisterEvent(e,t)}notifyEvent(e){return this.eventManager.notifyEvent(e)}}console.log("TUIBridge.VERSION:0.0.1");const s=n.getInstance();export{s as TUIBridge,s as default};
|