UNPKG

debug-server-next

Version:

Dev server for hippy-core.

73 lines (72 loc) 2.73 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.logMiddleWareManager = void 0; const types_1 = require("tdf-devtools-protocol/dist/types"); const enum_1 = require("@/@types/enum"); exports.logMiddleWareManager = { downwardMiddleWareListMap: { [types_1.IOS100Event.ConsoleMessageAdded]: ({ msg, sendToDevtools }) => { const eventRes = msg; const { message } = eventRes.params; let type; if (message.type === 'log') { type = { [enum_1.ChromeLogLevel.Info]: enum_1.ChromeLogLevel.Info, [enum_1.ChromeLogLevel.Log]: enum_1.ChromeLogLevel.Info, [enum_1.ChromeLogLevel.Error]: enum_1.ChromeLogLevel.Error, }[message.level]; if (!type) type = enum_1.ChromeLogLevel.Info; } else { type = message.type; } const consoleMessage = { // 这里自动生成的类型没有定义 enum,而是用的联合类型,导致类型不同,所以使用 any 转换 source: message.source, level: type, text: message.text, lineNumber: message.line, timestamp: new Date().getTime(), url: message.url, args: message.parameters, stackTrace: message.stackTrace ? { callFrames: message.stackTrace, } : undefined, networkRequestId: message.networkRequestId, }; return sendToDevtools({ method: types_1.ChromeEvent.LogEntryAdded, params: { entry: consoleMessage, }, }); }, }, upwardMiddleWareListMap: { [types_1.ChromeCommand.LogClear]: ({ msg, sendToApp }) => sendToApp({ id: msg.id, method: types_1.ChromeCommand.ConsoleClearMessages, params: {}, }), [types_1.ChromeCommand.LogDisable]: ({ msg, sendToApp }) => sendToApp({ id: msg.id, method: types_1.IOS90Command.ConsoleDisable, params: {}, }), [types_1.ChromeCommand.LogEnable]: ({ msg, sendToApp, sendToDevtools }) => { sendToDevtools({ id: msg.id, method: msg.method, result: {}, }); return sendToApp({ id: msg.id, method: types_1.IOS90Command.ConsoleEnable, params: {}, }); }, }, };