| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- import { ToolsHelper } from './ToolsHelper';
- export class XWebManager {
- private static closeCall?: () => void;
- static onGetUrl: () => string;
- static onGetTitle: () => string;
- static onRefresh: () => void;
- static onClose(call: () => void) {
- XWebManager.closeCall = call
- }
- static close() {
- XWebManager.closeCall && XWebManager.closeCall()
- }
- static getUrl() {
- return XWebManager.onGetUrl()
- }
- static getTitle() {
- return XWebManager.onGetTitle()
- }
- static refresh() {
- XWebManager.onRefresh()
- }
- private static MapEventListener = new Map<string, (msg: string) => void>();
- static objs: Map<string, object> = 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)
- }
- }
- static menuClick: () => void
- private static MapEventListenerToHtml = new Map<string, (msg: string) => 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<string, (msg: string) => 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)
- }
- }
- }
|