text: // import { requestStoragePermission } from '@/utils/common'
  import { temporaryDirectoryPath, existsFile, writeFile, appendFile, readFile, unlink } from '@/utils/fs'
  
  const logPath = temporaryDirectoryPath + '/error.log'
  
  const logTools = {
    tempLog: [],
    writeLog(msg) {
      console.log(msg)
      appendFile(logPath, '\n\n' + msg)
    },
    async initLogFile() {
      try {
        let isExists = await existsFile(logPath)
        if (!isExists) await writeFile(logPath, '')
        if (this.tempLog) this.writeLog(this.tempLog.map(m => `${m.time} ${m.type} ${m.text}`).join('\n'))
        this.tempLog = null
      } catch (err) {
        console.error(err)
      }
    },
  }
  
  export const init = () => {
    return logTools.initLogFile()
  }
  
  export const getLogs = () => {
    return readFile(logPath)
  }
  
  export const clearLogs = () => {
    return unlink(logPath).then(() => writeFile(logPath, ''))
  }
  
  export const log = {
    info(...msgs) {
      // console.info(...msgs)
      const msg = msgs.map(m => typeof m == 'string' ? m : JSON.stringify(m)).join(' ')
      if (msg.startsWith('%c')) return
      const time = new Date().toLocaleString()
      if (logTools.tempLog) {
        logTools.tempLog.push({ type: 'LOG', time, text: msg })
      } else logTools.writeLog(`${time} LOG ${msg}`)
    },
    warn(...msgs) {
      // console.warn(...msgs)
      const msg = msgs.map(m => typeof m == 'string' ? m : JSON.stringify(m)).join(' ')
      const time = new Date().toLocaleString()
      if (logTools.tempLog) {
        logTools.tempLog.push({ type: 'WARN', time, text: msg })
      } else logTools.writeLog(`${time} WARN ${msg}`)
    },
    error(...msgs) {
      // console.error...(msgs)
      const msg = msgs.map(m => typeof m == 'string' ? m : JSON.stringify(m)).join(' ')
      const time = new Date().toLocaleString()
      if (logTools.tempLog) {
        logTools.tempLog.push({ type: 'ERROR', time, text: msg })
      } else {
        logTools.writeLog(`${time} ERROR ${msg}`)
      }
    },
  }
  /*
  if (process.env.NODE_ENV !== 'development') {
    const logPath = externalDirectoryPath + '/debug.log'
  
    let tempLog = []
  
    const log = window.console.log
    const error = window.console.error
    const warn = window.console.warn
  
    const writeLog = msg => appendFile(logPath, '\n' + msg)
  
    window.console.log = (...msgs) => {
      log(...msgs)
      const msg = msgs.map(m => typeof m == 'string' ? m : JSON.stringify(m)).join(' ')
      if (msg.startsWith('%c')) return
      const time = new Date().toLocaleString()
      if (tempLog) {
        tempLog({ type: 'LOG', time, text: msg })
      } else writeLog(`${time} LOG ${msg}`)
    }
    window.console.error = (...msgs) => {
      error(...msgs)
      const msg = msgs.map(m => typeof m == 'string' ? m : JSON.stringify(m)).join(' ')
      const time = new Date().toLocaleString()
      if (tempLog) {
        tempLog({ type: 'ERROR', time, text: msg })
      } else writeLog(`${time} ERROR ${msg}`)
    }
    window.console.warn = (...msgs) => {
      warn(...msgs)
      const msg = msgs.map(m => typeof m == 'string' ? m : JSON.stringify(m)).join(' ')
      const time = new Date().toLocaleString()
      if (tempLog) {
        tempLog({ type: 'WARN', time, text: msg })
      } else writeLog(`${time} WARN ${msg}`)
    }
  
    const init = async() => {
      try {
        let result = await requestStoragePermission()
        if (!result) return
        let isExists = await existsFile(logPath)
        console.log(logPath, isExists)
        if (!isExists) await writeFile(logPath, '')
        writeLog(tempLog(m => `${m.time} ${m.type} ${m.text}`).join('\n'))
        tempLog = null
      } catch (err) {
        console.error(err)
      }
    }
  
  
    init()
  }
  
   */
  