import { ToolsHelper } from './ToolsHelper'; export class XWebManager { private static MapEventListener = new Map void>(); static objs:Map = new Map() static addOnMessage(listener: (msg: string) => void): string { const id = ToolsHelper.getUuid() XWebManager.MapEventListener.set(id, listener) return id } static removeOnMessage(id?: string) { if (id) { XWebManager.MapEventListener.delete(id) } } static sendMessage(message: string) { for (let item of XWebManager.MapEventListener.values()) { item(message) } } private static MapEventListenerToHtml = new Map void>(); static addOnMessageToHtml(id: string, listener: (msg: string) => void) { XWebManager.MapEventListenerToHtml.set(id, listener) } static removeOnMessageToHtml(id?: string) { if (id) { XWebManager.MapEventListenerToHtml.delete(id) } } static sendMessageToHtml(message: string) { for (let item of XWebManager.MapEventListenerToHtml.values()) { item(message) } } private static MapEventListenerToWeb = new Map void>(); static addOnMessageToWeb(id: string, listener: (msg: string) => void) { XWebManager.MapEventListenerToWeb.set(id, listener) } static removeOnMessageToWeb(id?: string) { if (id) { XWebManager.MapEventListenerToWeb.delete(id) } } static sendMessageToWeb(message: string) { for (let item of XWebManager.MapEventListenerToWeb.values()) { item(message) } } }