ExplicitMessage_Inject

[DEBUG] 信息显式化(注入版)

Tính đến 13-08-2022. Xem phiên bản mới nhất.

Script này sẽ không được không được cài đặt trực tiếp. Nó là một thư viện cho các script khác để bao gồm các chỉ thị meta // @require https://update.greasyfork.org/scripts/429525/1081035/ExplicitMessage_Inject.js

/**
 * ExplicitMessage_Inject
 * @file [DEBUG] 信息显式化(注入版)
 * @version 1.5.0.20220813
 * @author Laster2800
 */

(function() {
  'use strict'

  let updateAlerted = false
  const injectVersion = 20220813
  const win = typeof unsafeWindow === 'object' ? unsafeWindow : window
  const m = win[Symbol.for('ExplicitMessage')]
  for (const n of ['log', 'debug', 'info', 'warn', 'error']) {
    const log = console[n]
    console[n] = (...args) => {
      if (m?.fn?.wrappedLog) {
        if (injectVersion !== m.injectUpdate) {
          if (!updateAlerted) {
            updateAlerted = true
            m.fn.updateCheck?.(GM_info.script.name, injectVersion > m.injectUpdate)
          }
          console[n] = log
        } else {
          console[n] = m.fn.wrappedLog(console, log, n.toUpperCase(), GM_info.script.name)
        }
        Reflect.apply(console[n], console, args)
      } else {
        Reflect.apply(log, console, args)
      }
    }
  }
})()