umbrella22

将主进程修改为ts,主进程添加__lib文件路径,更新依赖

......@@ -2,13 +2,15 @@
process.env.BABEL_ENV = 'main'
const os = require('os')
const path = require('path')
const { dependencies } = require('../package.json')
const webpack = require('webpack')
const MinifyPlugin = require("babel-minify-webpack-plugin");
const HappyPack = require('happypack')
const HappyThreadPool = HappyPack.ThreadPool({ size: os.cpus().length > 4 ? 4 : os.cpus().length })
const config = require('../config')
// const os = require('os')
// const HappyPack = require('happypack')
// const HappyThreadPool = HappyPack.ThreadPool({ size: os.cpus().length > 4 ? 4 : os.cpus().length })
function resolve(dir) {
return path.join(__dirname, '..', dir)
......@@ -16,7 +18,7 @@ function resolve(dir) {
let mainConfig = {
entry: {
main: path.join(__dirname, '../src/main/index.js')
main: path.join(__dirname, '../src/main/index.ts')
},
externals: [
...Object.keys(dependencies || {})
......@@ -34,10 +36,20 @@ let mainConfig = {
// }
// }
// },
// {
// test: /\.js$/,
// use: 'happypack/loader?id=MainHappyBabel',
// exclude: /node_modules/
// },
{
test: /\.js$/,
use: 'happypack/loader?id=MainHappyBabel',
exclude: /node_modules/
test: /\.ts$/,
use: [{
loader: 'babel-loader',
options: {
cacheDirectory: true
}
}, 'ts-loader'],
},
{
test: /\.node$/,
......@@ -56,16 +68,16 @@ let mainConfig = {
},
plugins: [
new webpack.NoEmitOnErrorsPlugin(),
new HappyPack({
id: "MainHappyBabel",
loaders: [{
loader: 'babel-loader',
options: {
cacheDirectory: true
}
}],
threadPool: HappyThreadPool
})
// new HappyPack({
// id: "MainHappyBabel",
// loaders: [{
// loader: 'babel-loader',
// options: {
// cacheDirectory: true
// }
// }],
// threadPool: HappyThreadPool
// })
],
resolve: {
alias: {
......@@ -82,7 +94,8 @@ let mainConfig = {
if (process.env.NODE_ENV !== 'production') {
mainConfig.plugins.push(
new webpack.DefinePlugin({
'__static': `"${path.join(__dirname, '../static').replace(/\\/g, '\\\\')}"`
'__static': `"${path.join(__dirname, '../static').replace(/\\/g, '\\\\')}"`,
'__lib': `"${path.join(__dirname, `../${config.DllFolder}`).replace(/\\/g, '\\\\')}"`
})
)
}
......
......@@ -9,7 +9,7 @@ module.exports = {
chineseLog: false,
port: 9080
},
UseStartupChart: false,
UseStartupChart: true,
IsUseSysTitle: true,
DllFolder: '',
BuiltInServerPort: 25565
......
......@@ -81,11 +81,11 @@
"js-cookie": "^2.2.1",
"nprogress": "^0.2.0",
"vue": "^2.6.11",
"vue-router": "^3.3.2",
"vue-router": "^3.4.3",
"vuex": "^3.5.1"
},
"devDependencies": {
"@babel/core": "^7.11.0",
"@babel/core": "^7.11.1",
"@babel/plugin-proposal-class-properties": "^7.10.4",
"@babel/plugin-proposal-decorators": "^7.10.5",
"@babel/plugin-proposal-do-expressions": "^7.10.4",
......@@ -106,7 +106,9 @@
"@babel/polyfill": "^7.10.4",
"@babel/preset-env": "^7.11.0",
"@babel/register": "^7.10.5",
"@babel/runtime": "^7.11.0",
"@babel/runtime": "^7.11.2",
"@types/fs-extra": "^9.0.1",
"@types/node": "^14.0.27",
"ajv": "^6.12.3",
"babel-eslint": "^9.0.0",
"babel-loader": "^8.1.0",
......@@ -116,16 +118,16 @@
"chalk": "^4.0.0",
"copy-webpack-plugin": "^6.0.3",
"cross-env": "^7.0.2",
"css-loader": "^4.2.0",
"css-loader": "^4.2.1",
"del": "^5.1.0",
"electron": "^9.1.2",
"electron-builder": "^22.6.1",
"electron": "^9.2.0",
"electron-builder": "^22.8.0",
"electron-devtools-installer": "^3.1.1",
"eslint": "^6.8.0",
"eslint-config-standard": "^14.1.1",
"eslint-friendly-formatter": "^4.0.1",
"eslint-loader": "^3.0.4",
"eslint-plugin-html": "^6.0.2",
"eslint-plugin-html": "^6.0.3",
"eslint-plugin-import": "^2.22.0",
"eslint-plugin-node": "^9.2.0",
"eslint-plugin-promise": "^4.2.1",
......@@ -133,17 +135,19 @@
"file-loader": "^6.0.0",
"happypack": "^5.0.1",
"html-webpack-plugin": "^4.3.0",
"mini-css-extract-plugin": "0.9.0",
"mini-css-extract-plugin": "0.10.0",
"multispinner": "^0.2.1",
"node-loader": "^1.0.0",
"node-loader": "^1.0.1",
"portfinder": "^1.0.28",
"sass": "^1.26.10",
"sass-loader": "^9.0.2",
"sass-loader": "^9.0.3",
"split2": "^3.1.1",
"style-loader": "^1.2.1",
"svg-sprite-loader": "^5.0.0",
"terser-webpack-plugin": "^3.0.8",
"terser-webpack-plugin": "^4.1.0",
"through2-filter": "^3.0.0",
"ts-loader": "^8.0.2",
"typescript": "^3.9.7",
"url-loader": "^4.1.0",
"vue-html-loader": "^1.2.4",
"vue-loader": "^15.9.3",
......@@ -153,6 +157,6 @@
"webpack-cli": "^3.3.12",
"webpack-dev-server": "^3.11.0",
"webpack-hot-middleware": "^2.25.0",
"webpack-merge": "^5.0.9"
"webpack-merge": "^5.1.1"
}
}
......
import { globalShortcut } from 'electron'
import config from '@config'
import config from '@config/index'
export default {
Disablef12 () {
......
// 这里定义了静态文件路径的位置
import path from 'path'
/**
* Set `__static` path to static files in production
* https://simulatedgreg.gitbooks.io/electron-vue/content/en/using-static-assets.html
*/
// 这个瓜皮全局变量只能在单个js中生效,而并不是整个主进程中
if (process.env.NODE_ENV !== 'development') {
global.__static = path.join(__dirname, '/static').replace(/\\/g, '\\\\')
}
export const winURL = process.env.NODE_ENV === 'development' ? `http://localhost:${process.env.PORT}` : `file://${__dirname}/index.html`
export const loadingURL = process.env.NODE_ENV === 'development' ? `http://localhost:${process.env.PORT}/static/loader.html` : `file://${__static}/loader.html`
// 这里定义了静态文件路径的位置
import { join } from 'path'
import { DllFolder } from '@config/index'
var __static: string
var __lib: string
if (process.env.NODE_ENV !== 'development') {
__static = join(__dirname, '/static').replace(/\\/g, '\\\\');
__lib = join(__dirname, '..', '..', '..', '..', `${DllFolder}`).replace(/\\/g, '\\\\')
}
export const winURL = process.env.NODE_ENV === 'development' ? `http://localhost:${process.env.PORT}` : `file://${__dirname}/index.html`
export const loadingURL = process.env.NODE_ENV === 'development' ? `http://localhost:${process.env.PORT}/static/loader.html` : `file://${__static}/loader.html`
export const lib = __lib
\ No newline at end of file
// 这里是定义菜单的地方,详情请查看 https://electronjs.org/docs/api/menu
const { dialog } = require('electron')
const os = require('os')
const version = require('../../../package.json').version
import { dialog } from 'electron'
import { type, arch, release } from 'os'
import { version } from '../../../package.json'
const menu = [
{
label: '设置',
......@@ -24,14 +25,15 @@ const menu = [
}
}]
}]
function info () {
function info() {
dialog.showMessageBox({
title: '关于',
type: 'info',
message: 'electron-Vue框架',
detail: `版本信息:${version}\n引擎版本:${process.versions.v8}\n当前系统:${os.type()} ${os.arch()} ${os.release()}`,
detail: `版本信息:${version}\n引擎版本:${process.versions.v8}\n当前系统:${type()} ${arch()} ${release()}`,
noLink: true,
buttons: ['查看github', '确定']
})
}
export default menu
......
......@@ -5,7 +5,7 @@ import initWindow from './services/windowManager'
import DisableButton from './config/DisableButton'
function onAppReady () {
initWindow()
new initWindow().initWindow()
DisableButton.Disablef12()
}
......
/* eslint-disable prefer-promise-reject-errors */
import app from './server'
import http from 'http'
import config from '@config'
import { createServer } from 'http'
import config from '@config/index'
const port = config.BuiltInServerPort
var server = null
app.set('port', port)
export default {
StatrServer () {
StatrServer() {
return new Promise((resolve, reject) => {
server = http.createServer(app)
server = createServer(app)
server.listen(port)
server.on('error', (error) => {
switch (error.code) {
......@@ -28,9 +28,8 @@ export default {
})
})
},
StopServer () {
StopServer() {
return new Promise((resolve, reject) => {
console.log(server)
if (server) {
server.close()
server.on('close', () => {
......
import { autoUpdater } from 'electron-updater'
import { ipcMain } from 'electron'
import { ipcMain, BrowserWindow } from 'electron'
/**
* -1 检查更新失败 0 正在检查更新 1 检测到新版本,准备下载 2 未检测到新版本 3 下载中 4 下载完成
**/
function Message (mainWindow, type, data) {
const senddata = {
state: type,
msg: data
}
mainWindow.webContents.send('UpdateMsg', senddata)
}
export default {
Update (mainWindow) {
// 设置地址要和package中的一样
class Update {
public mainWindow: BrowserWindow
constructor(mainWindow: BrowserWindow) {
autoUpdater.setFeedURL('http://127.0.0.1:25565/')
this.mainWindow = mainWindow
// 注册事件
this.checkUpdate()
this.start()
this.hasData()
this.noData()
this.listen()
this.done()
this.quitInstall()
this.error()
}
// 负责向渲染进程发送信息
Message(mainWindow: BrowserWindow, type: Number, data?: String) {
const senddata = {
state: type,
msg: data || ''
}
mainWindow.webContents.send('UpdateMsg', senddata)
}
// 当更新发生错误的时候触发。
// 当更新发生错误的时候触发。
error() {
autoUpdater.on('error', (err) => {
console.log('更新出现错误')
console.log(err.message)
console.log('更新出现错误', err.message)
if (err.message.includes('sha512 checksum mismatch')) {
Message(mainWindow, -1, 'sha512校验失败')
this.Message(this.mainWindow, -1, 'sha512校验失败')
}
})
}
// 当开始检查更新的时候触发
// 当开始检查更新的时候触发
start() {
autoUpdater.on('checking-for-update', (event, arg) => {
console.log('开始检查更新')
Message(mainWindow, 0)
this.Message(this.mainWindow, 0)
})
}
// 发现可更新数据时
// 发现可更新数据时
hasData() {
autoUpdater.on('update-available', (event, arg) => {
console.log('有更新')
Message(mainWindow, 1)
this.Message(this.mainWindow, 1)
})
}
// 没有可更新数据时
// 没有可更新数据时
noData() {
autoUpdater.on('update-not-available', (event, arg) => {
console.log('没有更新')
Message(mainWindow, 2)
this.Message(this.mainWindow, 2)
})
}
// 下载监听
// 下载监听
listen() {
autoUpdater.on('download-progress', (progressObj) => {
Message(mainWindow, 3, progressObj)
this.Message(this.mainWindow, 3, progressObj)
})
}
// 下载完成
// 下载完成
done() {
autoUpdater.on('update-downloaded', () => {
console.log('下载完成')
Message(mainWindow, 4)
this.Message(this.mainWindow, 4)
})
// 执行自动更新检查
}
// 执行自动更新检查
checkUpdate() {
ipcMain.handle('check-update', () => {
autoUpdater.checkForUpdates().catch(err => {
console.log('网络连接问题', err)
})
})
// 渲染进程执行更新操作
}
// 退出并安装
quitInstall() {
ipcMain.handle('confirm-update', () => {
autoUpdater.quitAndInstall()
})
}
}
export default Update
......
/* eslint-disable no-case-declarations */
import { app, ipcMain, dialog } from 'electron'
import path from 'path'
import os from 'os'
// 版本以package.json为基准。
const version = require('../../../package.json').version
// 您的下载地址
const baseUrl = 'http://127.0.0.1:25565/'
var Sysarch = null
var defaultDownloadUrL = null
// 识别操作系统位数D
os.arch().includes('64') ? Sysarch = 'win64' : Sysarch = 'win32'
// 识别操作系统
// linux自己修改后缀名哦,我没有linux就没有测试了
if (os.platform().includes('win32')) {
defaultDownloadUrL = baseUrl + `electron_${version}_${Sysarch}.exe?${new Date().getTime()}`
} else if (os.platform().includes('linux')) {
defaultDownloadUrL = baseUrl + `electron_${version}_${Sysarch}?${new Date().getTime()}`
} else {
defaultDownloadUrL = baseUrl + `electron_${version}_mac.dmg?${new Date().getTime()}`
}
export default {
download (mainWindow) {
ipcMain.handle('start-download', (event, msg) => {
mainWindow.webContents.downloadURL(msg.downloadUrL || defaultDownloadUrL)
mainWindow.webContents.session.on('will-download', (event, item, webContents) => {
// 将文件保存在系统的下载目录
const filePath = path.join(app.getPath('downloads'), item.getFilename())
// 自动保存
item.setSavePath(filePath)
// 下载进度
item.on('updated', (event, state) => {
switch (state) {
case 'progressing':
mainWindow.webContents.send('download-progress', (item.getReceivedBytes() / item.getTotalBytes() * 100).toFixed(0))
break
case 'interrupted ':
mainWindow.webContents.send('download-paused', true)
break
default:
break
}
})
// 下载完成或失败
item.once('done', (event, state) => {
switch (state) {
case 'completed':
const data = {
filePath
}
mainWindow.webContents.send('download-done', data)
break
case 'interrupted':
mainWindow.webContents.send('download-error', true)
dialog.showErrorBox('下载出错', '由于网络或其他未知原因导致客户端下载出错,请前往官网进行重新安装')
break
default:
break
}
})
})
})
}
}
import { app, ipcMain, BrowserWindow, dialog } from 'electron'
import { join } from 'path'
import { arch, platform } from 'os'
import { exists, remove } from 'fs-extra'
import { version } from '../../../package.json'
/**
*
* @description
* @returns {void} 下载类
* @param {mainWindow} 主窗口
* @param {downloadUrl} 下载地址,当未传入时则会使用预先设置好的baseUrl拼接名称
* @author Sky
* @date 2020-08-12
*/
class Main {
public mainWindow: BrowserWindow = null
public downloadUrl: string = ""
public version: string = version
public baseUrl: string = ''
public Sysarch: string = arch().includes('64') ? 'win64' : 'win32'
public HistoryFilePath = join(app.getPath('downloads'), platform().includes('win32') ? `electron_${this.version}_${this.Sysarch}.exe` : `electron_${this.version}_mac.dmg`)
constructor(mainWindow: BrowserWindow, downloadUrl?: string) {
this.mainWindow = mainWindow
this.downloadUrl = downloadUrl || platform().includes('win32') ? this.baseUrl + `electron_${this.version}_${this.Sysarch}.exe?${new Date().getTime()}` : this.baseUrl + `electron_${this.version}_mac.dmg?${new Date().getTime()}`
}
start() {
ipcMain.on('satrt-download', (event, msg) => {
// 更新时检查有无同名文件,若有就删除,若无就开始下载
exists(this.HistoryFilePath, async (e) => {
try {
if (e) {
await remove(this.HistoryFilePath)
}
this.mainWindow.webContents.downloadURL(this.downloadUrl)
} catch (error) { console.log(error) }
})
this.mainWindow.webContents.session.on('will-download', (event: any, item: any, webContents: any) => {
const filePath = join(app.getPath('downloads'), item.getFilename())
item.setSavePath(filePath)
item.on('updated', (event: any, state: String) => {
switch (state) {
case 'progressing':
this.mainWindow.webContents.send('download-progress', (item.getReceivedBytes() / item.getTotalBytes() * 100).toFixed(0))
break
default:
this.mainWindow.webContents.send('download-error', true)
dialog.showErrorBox('下载出错', '由于网络或其他未知原因导致客户端下载出错,请前往官网进行重新安装')
break
}
})
item.once('done', (event: any, state: String) => {
switch (state) {
case 'completed':
const data = {
filePath
}
this.mainWindow.webContents.send('download-done', data)
break
case 'interrupted':
this.mainWindow.webContents.send('download-error', true)
dialog.showErrorBox('下载出错', '由于网络或其他未知原因导致客户端下载出错,请前往官网进行重新安装')
break
default:
break
}
})
})
})
}
}
export default Main
import { ipcMain, dialog, BrowserWindow } from 'electron'
import Server from '../server/index'
import Server from '../server'
import { winURL } from '../config/StaticPath'
export default {
Mainfunc (mainWindow, IsUseSysTitle) {
Mainfunc(mainWindow: BrowserWindow, IsUseSysTitle: Boolean) {
ipcMain.handle('IsUseSysTitle', async () => {
return IsUseSysTitle
})
......
import { BrowserWindow, Menu } from 'electron'
import menuconfig from '../config/menu'
import config from '@config'
import setIpc from './ipcMain'
import electronDevtoolsInstaller, { VUEJS_DEVTOOLS } from 'electron-devtools-installer'
import upload from './checkupdate'
import DownloadUpdate from './downloadFile'
import { winURL, loadingURL } from '../config/StaticPath'
var loadWindow = null
var mainWindow = null
function createMainWindow () {
/**
* Initial window options
*/
mainWindow = new BrowserWindow({
height: 800,
useContentSize: true,
width: 1700,
minWidth: 1366,
show: false,
frame: config.IsUseSysTitle,
titleBarStyle: 'hidden',
webPreferences: {
nodeIntegration: true,
webSecurity: false,
// 如果是开发模式可以使用devTools
devTools: process.env.NODE_ENV === 'development',
// devTools: true,
// 在macos中启用橡皮动画
scrollBounce: process.platform === 'darwin'
}
})
// 这里设置只有开发环境才注入显示开发者模式
if (process.env.NODE_ENV === 'development') {
menuconfig.push({
label: '开发者设置',
submenu: [{
label: '切换到开发者模式',
accelerator: 'CmdOrCtrl+I',
role: 'toggledevtools'
}]
})
}
// 载入菜单
const menu = Menu.buildFromTemplate(menuconfig)
Menu.setApplicationMenu(menu)
mainWindow.loadURL(winURL)
setIpc.Mainfunc(mainWindow, config.IsUseSysTitle)
upload.Update(mainWindow)
DownloadUpdate.download(mainWindow)
if (process.env.NODE_ENV === 'development') {
mainWindow.webContents.once('dom-ready', () => {
mainWindow.show()
electronDevtoolsInstaller(VUEJS_DEVTOOLS)
.then((name) => console.log(`installed: ${name}`))
.catch(err => console.log('Unable to install `vue-devtools`: \n', err))
})
if (config.UseStartupChart) loadWindow.destroy()
mainWindow.webContents.openDevTools(true)
} else {
mainWindow.webContents.once('dom-ready', () => {
mainWindow.show()
if (config.UseStartupChart) loadWindow.destroy()
})
}
mainWindow.on('closed', () => {
mainWindow = null
})
}
function loadindWindow () {
loadWindow = new BrowserWindow({
width: 400,
height: 600,
frame: false,
backgroundColor: '#222',
skipTaskbar: true,
transparent: true,
resizable: false,
webPreferences: { experimentalFeatures: true }
})
loadWindow.loadURL(loadingURL)
loadWindow.show()
setTimeout(() => {
createMainWindow()
}, 2000)
loadWindow.on('closed', () => {
loadWindow = null
})
}
function initWindow () {
if (config.UseStartupChart) {
return loadindWindow()
} else {
return createMainWindow()
}
}
export default initWindow
import setIpc from './ipcMain'
import config from '@config/index'
import menuconfig from '../config/menu'
import DownloadUpdate from './downloadFile'
import Update from './checkupdate';
import { app, BrowserWindow, Menu, dialog } from 'electron'
import { winURL, loadingURL } from '../config/StaticPath'
import electronDevtoolsInstaller, { VUEJS_DEVTOOLS } from 'electron-devtools-installer'
class MainInit {
public winURL: string = ''
public shartURL: string = ''
public loadWindow: BrowserWindow = null
public mainWindow: BrowserWindow = null
constructor() {
this.winURL = winURL
this.shartURL = loadingURL
if (process.env.NODE_ENV === 'development') {
menuconfig.push({
label: '开发者设置',
submenu: [{
label: '切换到开发者模式',
accelerator: 'CmdOrCtrl+I',
role: 'toggledevtools'
}]
})
}
}
// 主窗口函数
createMainWindow() {
this.mainWindow = new BrowserWindow({
height: 800,
useContentSize: true,
width: 1700,
minWidth: 1366,
show: false,
frame: config.IsUseSysTitle,
titleBarStyle: 'hidden',
webPreferences: {
nodeIntegration: true,
webSecurity: false,
// 如果是开发模式可以使用devTools
devTools: process.env.NODE_ENV === 'development',
// devTools: true,
// 在macos中启用橡皮动画
scrollBounce: process.platform === 'darwin'
}
})
// 赋予模板
const menu = Menu.buildFromTemplate(menuconfig as any)
// 加载模板
Menu.setApplicationMenu(menu)
// 加载主窗口
this.mainWindow.loadURL(this.winURL)
// 下载文件
new DownloadUpdate(this.mainWindow).start()
// electron-update注册
new Update(this.mainWindow)
// 启用协议,这里暂时只用于自定义头部的时候使用
setIpc.Mainfunc(this.mainWindow, config.IsUseSysTitle)
// 安装devtools
if (process.env.NODE_ENV === 'development') {
this.mainWindow.webContents.once('dom-ready', () => {
this.mainWindow.show()
electronDevtoolsInstaller(VUEJS_DEVTOOLS)
.then((name) => console.log(`已安装: ${name}`))
.catch(err => console.log('无法安装 `vue-devtools`: \n 可能发生得错误:网络连接问题 \n', err))
if (config.UseStartupChart) this.loadWindow.destroy()
this.mainWindow.webContents.openDevTools({ mode: 'undocked', activate: true })
})
} else {
this.mainWindow.webContents.once('dom-ready', () => {
this.mainWindow.show()
if (config.UseStartupChart) this.loadWindow.destroy()
})
}
// 当确定渲染进程卡死时
this.mainWindow.webContents.on('crashed', () => {
dialog.showMessageBox(this.mainWindow, {
type: 'warning',
title: '警告',
buttons: ['重载', '退出'],
message: '图形化进程失去响应,是否等待其恢复?',
noLink: true
}).then(res => {
if (res.response === 0) this.mainWindow.reload()
else this.mainWindow.close()
})
})
// 不知道什么原因,反正就是这个窗口里的页面触发了假死时执行
this.mainWindow.on('unresponsive', () => {
dialog.showMessageBox(this.mainWindow, {
type: 'warning',
title: '警告',
buttons: ['重载', '退出'],
message: '图形化进程失去响应,是否等待其恢复?',
noLink: true
}).then(res => {
if (res.response === 0) this.mainWindow.reload()
else this.mainWindow.close()
})
})
app.on('gpu-process-crashed', () => {
dialog.showMessageBox(this.mainWindow, {
type: 'warning',
title: '',
buttons: ['切换', '退出'],
message: '侦测到图形处理设备丢失,若继续则会导致软件出现意外故障,是否切换到通用模式,若切换后仍然黑屏请联系我们。',
noLink: true
}).then(res => {
// 当显卡出现崩溃现象时使用该设置禁用显卡加速模式。
if (res.response === 0) {
app.disableHardwareAcceleration()
this.mainWindow.reload()
} else {
this.mainWindow.close()
}
})
})
this.mainWindow.on('closed', () => {
this.mainWindow = null
})
}
// 加载窗口函数
loadindWindow(loadingURL: string) {
this.loadWindow = new BrowserWindow({
width: 400,
height: 600,
frame: false,
skipTaskbar: true,
transparent: true,
resizable: false,
webPreferences: { experimentalFeatures: true }
})
this.loadWindow.loadURL(loadingURL)
this.loadWindow.show()
this.loadWindow.setAlwaysOnTop(true)
// 延迟两秒可以根据情况后续调快,= =,就相当于个,sleep吧,就那种。 = =。。。
setTimeout(() => {
this.createMainWindow()
}, 1500)
}
// 初始化窗口函数
initWindow() {
if (config.UseStartupChart) {
return this.loadindWindow(this.shartURL)
} else {
return this.createMainWindow()
}
}
}
export default MainInit
import { ipcRenderer } from 'electron'
export default {
send (name, data = {}) {
send (name, data) {
return new Promise((resolve, reject) => {
ipcRenderer.invoke(name, data).then(res => {
resolve(res)
......
{
"compileOnSave": false,
"compilerOptions": {
"resolveJsonModule": true,
"baseUrl": ".",
"outDir": "./dist/electron",
"sourceMap": true,
"declaration": false,
"module": "es2015",
"moduleResolution": "node",
"allowSyntheticDefaultImports": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"importHelpers": true,
"target": "es5",
"paths": {
"@config/*": [
"config/*"
]
},
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2018",
"dom"
]
}
}
\ No newline at end of file
......@@ -32,16 +32,16 @@
invariant "^2.2.4"
semver "^5.5.0"
"@babel/core@^7.11.0":
version "7.11.0"
resolved "https://registry.npm.taobao.org/@babel/core/download/@babel/core-7.11.0.tgz#73b9c33f1658506887f767c26dae07798b30df76"
integrity sha1-c7nDPxZYUGiH92fCba4HeYsw33Y=
"@babel/core@^7.11.1":
version "7.11.1"
resolved "https://registry.npm.taobao.org/@babel/core/download/@babel/core-7.11.1.tgz?cache=0&sync_timestamp=1596578841407&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fcore%2Fdownload%2F%40babel%2Fcore-7.11.1.tgz#2c55b604e73a40dc21b0e52650b11c65cf276643"
integrity sha1-LFW2BOc6QNwhsOUmULEcZc8nZkM=
dependencies:
"@babel/code-frame" "^7.10.4"
"@babel/generator" "^7.11.0"
"@babel/helper-module-transforms" "^7.11.0"
"@babel/helpers" "^7.10.4"
"@babel/parser" "^7.11.0"
"@babel/parser" "^7.11.1"
"@babel/template" "^7.10.4"
"@babel/traverse" "^7.11.0"
"@babel/types" "^7.11.0"
......@@ -331,6 +331,11 @@
resolved "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.11.0.tgz?cache=0&sync_timestamp=1596141177149&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fparser%2Fdownload%2F%40babel%2Fparser-7.11.0.tgz#a9d7e11aead25d3b422d17b2c6502c8dddef6a5d"
integrity sha1-qdfhGurSXTtCLReyxlAsjd3val0=
"@babel/parser@^7.11.1":
version "7.11.3"
resolved "https://registry.npm.taobao.org/@babel/parser/download/@babel/parser-7.11.3.tgz#9e1eae46738bcd08e23e867bab43e7b95299a8f9"
integrity sha1-nh6uRnOLzQjiPoZ7q0PnuVKZqPk=
"@babel/plugin-proposal-async-generator-functions@^7.10.4":
version "7.10.4"
resolved "https://registry.npm.taobao.org/@babel/plugin-proposal-async-generator-functions/download/@babel/plugin-proposal-async-generator-functions-7.10.4.tgz?cache=0&sync_timestamp=1593522968669&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fplugin-proposal-async-generator-functions%2Fdownload%2F%40babel%2Fplugin-proposal-async-generator-functions-7.10.4.tgz#4b65abb3d9bacc6c657aaa413e56696f9f170fc6"
......@@ -1010,10 +1015,10 @@
core-js-pure "^3.0.0"
regenerator-runtime "^0.13.4"
"@babel/runtime@^7.11.0":
version "7.11.0"
resolved "https://registry.npm.taobao.org/@babel/runtime/download/@babel/runtime-7.11.0.tgz#f10245877042a815e07f7e693faff0ae9d3a2aac"
integrity sha1-8QJFh3BCqBXgf35pP6/wrp06Kqw=
"@babel/runtime@^7.11.2":
version "7.11.2"
resolved "https://registry.npm.taobao.org/@babel/runtime/download/@babel/runtime-7.11.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fruntime%2Fdownload%2F%40babel%2Fruntime-7.11.2.tgz#f549c13c754cc40b87644b9fa9f09a6a95fe0736"
integrity sha1-9UnBPHVMxAuHZEufqfCaapX+BzY=
dependencies:
regenerator-runtime "^0.13.4"
......@@ -1171,7 +1176,7 @@
"@types/fs-extra@^9.0.1":
version "9.0.1"
resolved "https://registry.npm.taobao.org/@types/fs-extra/download/@types/fs-extra-9.0.1.tgz?cache=0&sync_timestamp=1589913391537&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Ffs-extra%2Fdownload%2F%40types%2Ffs-extra-9.0.1.tgz#91c8fc4c51f6d5dbe44c2ca9ab09310bd00c7918"
resolved "https://registry.npm.taobao.org/@types/fs-extra/download/@types/fs-extra-9.0.1.tgz#91c8fc4c51f6d5dbe44c2ca9ab09310bd00c7918"
integrity sha1-kcj8TFH21dvkTCypqwkxC9AMeRg=
dependencies:
"@types/node" "*"
......@@ -1214,6 +1219,11 @@
resolved "https://registry.npm.taobao.org/@types/node/download/@types/node-12.12.48.tgz?cache=0&sync_timestamp=1594068001359&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fnode%2Fdownload%2F%40types%2Fnode-12.12.48.tgz#4135f064eeed9fcfb4756deea5ba2caa11603391"
integrity sha1-QTXwZO7tn8+0dW3upbosqhFgM5E=
"@types/node@^14.0.27":
version "14.0.27"
resolved "https://registry.npm.taobao.org/@types/node/download/@types/node-14.0.27.tgz?cache=0&sync_timestamp=1596839423560&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fnode%2Fdownload%2F%40types%2Fnode-14.0.27.tgz#a151873af5a5e851b51b3b065c9e63390a9e0eb1"
integrity sha1-oVGHOvWl6FG1GzsGXJ5jOQqeDrE=
"@types/semver@^7.1.0":
version "7.3.1"
resolved "https://registry.npm.taobao.org/@types/semver/download/@types/semver-7.3.1.tgz#7a9a5d595b6d873f338c867dcef64df289468cfa"
......@@ -1597,23 +1607,23 @@ app-builder-bin@3.5.9:
resolved "https://registry.npm.taobao.org/app-builder-bin/download/app-builder-bin-3.5.9.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fapp-builder-bin%2Fdownload%2Fapp-builder-bin-3.5.9.tgz#a3ac0c25286bac68357321cb2eaf7128b0bc0a4f"
integrity sha1-o6wMJShrrGg1cyHLLq9xKLC8Ck8=
app-builder-lib@22.7.0:
version "22.7.0"
resolved "https://registry.npm.taobao.org/app-builder-lib/download/app-builder-lib-22.7.0.tgz#ccd3e7ece2d46bc209423a77aa142f74aaf65db0"
integrity sha1-zNPn7OLUa8IJQjp3qhQvdKr2XbA=
app-builder-lib@22.8.0:
version "22.8.0"
resolved "https://registry.npm.taobao.org/app-builder-lib/download/app-builder-lib-22.8.0.tgz?cache=0&sync_timestamp=1596720347275&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fapp-builder-lib%2Fdownload%2Fapp-builder-lib-22.8.0.tgz#342a8976f50ae35cfd07412dbfd4f6c895b32eac"
integrity sha1-NCqJdvUK41z9B0Etv9T2yJWzLqw=
dependencies:
"7zip-bin" "~5.0.3"
"@develar/schema-utils" "~2.6.5"
async-exit-hook "^2.0.1"
bluebird-lst "^1.0.9"
builder-util "22.7.0"
builder-util-runtime "8.7.1"
builder-util "22.8.0"
builder-util-runtime "8.7.2"
chromium-pickle-js "^0.2.0"
debug "^4.2.0"
debug "^4.1.1"
ejs "^3.1.3"
electron-publish "22.7.0"
fs-extra "^9.0.0"
hosted-git-info "^3.0.4"
electron-publish "22.8.0"
fs-extra "^9.0.1"
hosted-git-info "^3.0.5"
is-ci "^2.0.0"
isbinaryfile "^4.0.6"
js-yaml "^3.14.0"
......@@ -2440,28 +2450,28 @@ builder-util-runtime@8.7.0:
debug "^4.1.1"
sax "^1.2.4"
builder-util-runtime@8.7.1:
version "8.7.1"
resolved "https://registry.npm.taobao.org/builder-util-runtime/download/builder-util-runtime-8.7.1.tgz#23c808cddd650d4376a7a1518ec1e80e85c10f00"
integrity sha1-I8gIzd1lDUN2p6FRjsHoDoXBDwA=
builder-util-runtime@8.7.2:
version "8.7.2"
resolved "https://registry.npm.taobao.org/builder-util-runtime/download/builder-util-runtime-8.7.2.tgz?cache=0&sync_timestamp=1594883084352&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbuilder-util-runtime%2Fdownload%2Fbuilder-util-runtime-8.7.2.tgz#d93afc71428a12789b437e13850e1fa7da956d72"
integrity sha1-2Tr8cUKKEnibQ34ThQ4fp9qVbXI=
dependencies:
debug "^4.2.0"
debug "^4.1.1"
sax "^1.2.4"
builder-util@22.7.0:
version "22.7.0"
resolved "https://registry.npm.taobao.org/builder-util/download/builder-util-22.7.0.tgz#0776a66e6d6e408a78bed7f17a7ad22516d9e7f0"
integrity sha1-B3ambm1uQIp4vtfxenrSJRbZ5/A=
builder-util@22.8.0:
version "22.8.0"
resolved "https://registry.npm.taobao.org/builder-util/download/builder-util-22.8.0.tgz?cache=0&sync_timestamp=1596720310546&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbuilder-util%2Fdownload%2Fbuilder-util-22.8.0.tgz#01684085d1f2370b1bd182f69cbd007426f63f64"
integrity sha1-AWhAhdHyNwsb0YL2nL0AdCb2P2Q=
dependencies:
"7zip-bin" "~5.0.3"
"@types/debug" "^4.1.5"
"@types/fs-extra" "^9.0.1"
app-builder-bin "3.5.9"
bluebird-lst "^1.0.9"
builder-util-runtime "8.7.1"
chalk "^4.0.0"
debug "^4.2.0"
fs-extra "^9.0.0"
builder-util-runtime "8.7.2"
chalk "^4.1.0"
debug "^4.1.1"
fs-extra "^9.0.1"
is-ci "^2.0.0"
js-yaml "^3.14.0"
source-map-support "^0.5.19"
......@@ -2658,7 +2668,7 @@ chalk@^1.1.1, chalk@^1.1.3:
strip-ansi "^3.0.0"
supports-color "^2.0.0"
chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.4.2:
chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.4.2:
version "2.4.2"
resolved "https://registry.npm.taobao.org/chalk/download/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424"
integrity sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ=
......@@ -3240,10 +3250,10 @@ crypto-random-string@^2.0.0:
resolved "https://registry.npm.taobao.org/crypto-random-string/download/crypto-random-string-2.0.0.tgz?cache=0&sync_timestamp=1583560482221&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcrypto-random-string%2Fdownload%2Fcrypto-random-string-2.0.0.tgz#ef2a7a966ec11083388369baa02ebead229b30d5"
integrity sha1-7yp6lm7BEIM4g2m6oC6+rSKbMNU=
css-loader@^4.2.0:
version "4.2.0"
resolved "https://registry.npm.taobao.org/css-loader/download/css-loader-4.2.0.tgz#b57efb92ac8f0cd85bf92d89df9634ef1f51b8bf"
integrity sha1-tX77kqyPDNhb+S2J35Y07x9RuL8=
css-loader@^4.2.1:
version "4.2.1"
resolved "https://registry.npm.taobao.org/css-loader/download/css-loader-4.2.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcss-loader%2Fdownload%2Fcss-loader-4.2.1.tgz#9f48fd7eae1219d629a3f085ba9a9102ca1141a7"
integrity sha1-n0j9fq4SGdYpo/CFupqRAsoRQac=
dependencies:
camelcase "^6.0.0"
cssesc "^3.0.0"
......@@ -3322,13 +3332,6 @@ debug@^4.0.1, debug@^4.1.0, debug@^4.1.1:
dependencies:
ms "^2.1.1"
debug@^4.2.0:
version "4.2.0"
resolved "https://registry.npm.taobao.org/debug/download/debug-4.2.0.tgz?cache=0&sync_timestamp=1589891993007&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-4.2.0.tgz#7f150f93920e94c58f5574c2fd01a3110effe7f1"
integrity sha1-fxUPk5IOlMWPVXTC/QGjEQ7/5/E=
dependencies:
ms "2.1.2"
decamelize@^1.0.0, decamelize@^1.2.0:
version "1.2.0"
resolved "https://registry.npm.taobao.org/decamelize/download/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
......@@ -3505,15 +3508,15 @@ dir-glob@^3.0.1:
dependencies:
path-type "^4.0.0"
dmg-builder@22.7.0:
version "22.7.0"
resolved "https://registry.npm.taobao.org/dmg-builder/download/dmg-builder-22.7.0.tgz?cache=0&sync_timestamp=1590494290308&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdmg-builder%2Fdownload%2Fdmg-builder-22.7.0.tgz#ead7e7c046cbdc52d29d302a4455f6668cdf7d45"
integrity sha1-6tfnwEbL3FLSnTAqRFX2ZozffUU=
dmg-builder@22.8.0:
version "22.8.0"
resolved "https://registry.npm.taobao.org/dmg-builder/download/dmg-builder-22.8.0.tgz?cache=0&sync_timestamp=1596720311175&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdmg-builder%2Fdownload%2Fdmg-builder-22.8.0.tgz#2b17127837ed444db3086317eda5cf8912f6e6a9"
integrity sha1-KxcSeDftRE2zCGMX7aXPiRL25qk=
dependencies:
app-builder-lib "22.7.0"
builder-util "22.7.0"
fs-extra "^9.0.0"
iconv-lite "^0.5.1"
app-builder-lib "22.8.0"
builder-util "22.8.0"
fs-extra "^9.0.1"
iconv-lite "^0.6.2"
js-yaml "^3.14.0"
sanitize-filename "^1.6.3"
......@@ -3685,19 +3688,19 @@ ejs@^3.1.3:
dependencies:
jake "^10.6.1"
electron-builder@^22.6.1:
version "22.7.0"
resolved "https://registry.npm.taobao.org/electron-builder/download/electron-builder-22.7.0.tgz#a42d08a1654ffc2f7d9e2860829d3cc55d4a0c81"
integrity sha1-pC0IoWVP/C99nihggp08xV1KDIE=
electron-builder@^22.8.0:
version "22.8.0"
resolved "https://registry.npm.taobao.org/electron-builder/download/electron-builder-22.8.0.tgz#d2c9fc5438c834e41fd794a271fca200165a3bad"
integrity sha1-0sn8VDjINOQf15SicfyiABZaO60=
dependencies:
"@types/yargs" "^15.0.5"
app-builder-lib "22.7.0"
app-builder-lib "22.8.0"
bluebird-lst "^1.0.9"
builder-util "22.7.0"
builder-util-runtime "8.7.1"
chalk "^4.0.0"
dmg-builder "22.7.0"
fs-extra "^9.0.0"
builder-util "22.8.0"
builder-util-runtime "8.7.2"
chalk "^4.1.0"
dmg-builder "22.8.0"
fs-extra "^9.0.1"
is-ci "^2.0.0"
lazy-val "^1.0.4"
read-config-file "6.0.0"
......@@ -3714,19 +3717,19 @@ electron-devtools-installer@^3.1.1:
semver "^7.2.1"
unzip-crx-3 "^0.2.0"
electron-publish@22.7.0:
version "22.7.0"
resolved "https://registry.npm.taobao.org/electron-publish/download/electron-publish-22.7.0.tgz?cache=0&sync_timestamp=1590494972105&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Felectron-publish%2Fdownload%2Felectron-publish-22.7.0.tgz#d92ba7c4007c9ac1dd070593e48028184fb2dc19"
integrity sha1-2SunxAB8msHdBwWT5IAoGE+y3Bk=
electron-publish@22.8.0:
version "22.8.0"
resolved "https://registry.npm.taobao.org/electron-publish/download/electron-publish-22.8.0.tgz?cache=0&sync_timestamp=1596720311499&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Felectron-publish%2Fdownload%2Felectron-publish-22.8.0.tgz#7f410fe043abc5d3d896c4ee9eea7a43ea352c7d"
integrity sha1-f0EP4EOrxdPYlsTunup6Q+o1LH0=
dependencies:
"@types/fs-extra" "^9.0.1"
bluebird-lst "^1.0.9"
builder-util "22.7.0"
builder-util-runtime "8.7.1"
chalk "^4.0.0"
fs-extra "^9.0.0"
builder-util "22.8.0"
builder-util-runtime "8.7.2"
chalk "^4.1.0"
fs-extra "^9.0.1"
lazy-val "^1.0.4"
mime "^2.4.5"
mime "^2.4.6"
electron-to-chromium@^1.3.488:
version "1.3.488"
......@@ -3746,10 +3749,10 @@ electron-updater@^4.3.1:
lodash.isequal "^4.5.0"
semver "^7.1.3"
electron@^9.1.2:
version "9.1.2"
resolved "https://registry.npm.taobao.org/electron/download/electron-9.1.2.tgz#bfa26d6b192ea13abb6f1461371fd731a8358988"
integrity sha1-v6JtaxkuoTq7bxRhNx/XMag1iYg=
electron@^9.2.0:
version "9.2.0"
resolved "https://registry.npm.taobao.org/electron/download/electron-9.2.0.tgz#d9fc8c8c9e5109669c366bd7b9ba83b06095d7a4"
integrity sha1-2fyMjJ5RCWacNmvXubqDsGCV16Q=
dependencies:
"@electron/get" "^1.0.1"
"@types/node" "^12.0.12"
......@@ -3812,19 +3815,19 @@ end-of-stream@^1.0.0, end-of-stream@^1.1.0:
dependencies:
once "^1.4.0"
enhanced-resolve@^4.1.1:
version "4.2.0"
resolved "https://registry.npm.taobao.org/enhanced-resolve/download/enhanced-resolve-4.2.0.tgz?cache=0&sync_timestamp=1594067886559&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fenhanced-resolve%2Fdownload%2Fenhanced-resolve-4.2.0.tgz#5d43bda4a0fd447cb0ebbe71bef8deff8805ad0d"
integrity sha1-XUO9pKD9RHyw675xvvje/4gFrQ0=
enhanced-resolve@^4.0.0, enhanced-resolve@^4.3.0:
version "4.3.0"
resolved "https://registry.npm.taobao.org/enhanced-resolve/download/enhanced-resolve-4.3.0.tgz?cache=0&sync_timestamp=1594972208431&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fenhanced-resolve%2Fdownload%2Fenhanced-resolve-4.3.0.tgz#3b806f3bfafc1ec7de69551ef93cca46c1704126"
integrity sha1-O4BvO/r8HsfeaVUe+TzKRsFwQSY=
dependencies:
graceful-fs "^4.1.2"
memory-fs "^0.5.0"
tapable "^1.0.0"
enhanced-resolve@^4.3.0:
version "4.3.0"
resolved "https://registry.npm.taobao.org/enhanced-resolve/download/enhanced-resolve-4.3.0.tgz?cache=0&sync_timestamp=1594972208431&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fenhanced-resolve%2Fdownload%2Fenhanced-resolve-4.3.0.tgz#3b806f3bfafc1ec7de69551ef93cca46c1704126"
integrity sha1-O4BvO/r8HsfeaVUe+TzKRsFwQSY=
enhanced-resolve@^4.1.1:
version "4.2.0"
resolved "https://registry.npm.taobao.org/enhanced-resolve/download/enhanced-resolve-4.2.0.tgz?cache=0&sync_timestamp=1594067886559&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fenhanced-resolve%2Fdownload%2Fenhanced-resolve-4.2.0.tgz#5d43bda4a0fd447cb0ebbe71bef8deff8805ad0d"
integrity sha1-XUO9pKD9RHyw675xvvje/4gFrQ0=
dependencies:
graceful-fs "^4.1.2"
memory-fs "^0.5.0"
......@@ -3975,10 +3978,10 @@ eslint-plugin-es@^1.4.1:
eslint-utils "^1.4.2"
regexpp "^2.0.1"
eslint-plugin-html@^6.0.2:
version "6.0.2"
resolved "https://registry.npm.taobao.org/eslint-plugin-html/download/eslint-plugin-html-6.0.2.tgz?cache=0&sync_timestamp=1586953892199&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint-plugin-html%2Fdownload%2Feslint-plugin-html-6.0.2.tgz#fcbd293e218d03dd72c147fc999d185c6f5989fe"
integrity sha1-/L0pPiGNA91ywUf8mZ0YXG9Zif4=
eslint-plugin-html@^6.0.3:
version "6.0.3"
resolved "https://registry.npm.taobao.org/eslint-plugin-html/download/eslint-plugin-html-6.0.3.tgz#8d9d2c187d1a48ed78d84f45e29820f102425e51"
integrity sha1-jZ0sGH0aSO142E9F4pgg8QJCXlE=
dependencies:
htmlparser2 "^4.1.0"
......@@ -5003,12 +5006,12 @@ hosted-git-info@^2.1.4:
resolved "https://registry.npm.taobao.org/hosted-git-info/download/hosted-git-info-2.8.8.tgz#7539bd4bc1e0e0a895815a2e0262420b12858488"
integrity sha1-dTm9S8Hg4KiVgVouAmJCCxKFhIg=
hosted-git-info@^3.0.4:
version "3.0.4"
resolved "https://registry.npm.taobao.org/hosted-git-info/download/hosted-git-info-3.0.4.tgz#be4973eb1fd2737b11c9c7c19380739bb249f60d"
integrity sha1-vklz6x/Sc3sRycfBk4Bzm7JJ9g0=
hosted-git-info@^3.0.5:
version "3.0.5"
resolved "https://registry.npm.taobao.org/hosted-git-info/download/hosted-git-info-3.0.5.tgz?cache=0&sync_timestamp=1594427917138&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhosted-git-info%2Fdownload%2Fhosted-git-info-3.0.5.tgz#bea87905ef7317442e8df3087faa3c842397df03"
integrity sha1-vqh5Be9zF0QujfMIf6o8hCOX3wM=
dependencies:
lru-cache "^5.1.1"
lru-cache "^6.0.0"
hpack.js@^2.1.6:
version "2.1.6"
......@@ -5192,12 +5195,12 @@ iconv-lite@0.4.24, iconv-lite@^0.4.24:
dependencies:
safer-buffer ">= 2.1.2 < 3"
iconv-lite@^0.5.1:
version "0.5.2"
resolved "https://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.5.2.tgz?cache=0&sync_timestamp=1593323684821&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ficonv-lite%2Fdownload%2Ficonv-lite-0.5.2.tgz#af6d628dccfb463b7364d97f715e4b74b8c8c2b8"
integrity sha1-r21ijcz7RjtzZNl/cV5LdLjIwrg=
iconv-lite@^0.6.2:
version "0.6.2"
resolved "https://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.6.2.tgz?cache=0&sync_timestamp=1594184250387&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ficonv-lite%2Fdownload%2Ficonv-lite-0.6.2.tgz#ce13d1875b0c3a674bd6a04b7f76b01b1b6ded01"
integrity sha1-zhPRh1sMOmdL1qBLf3awGxtt7QE=
dependencies:
safer-buffer ">= 2.1.2 < 3"
safer-buffer ">= 2.1.2 < 3.0.0"
icss-utils@^4.0.0, icss-utils@^4.1.1:
version "4.1.1"
......@@ -5663,11 +5666,12 @@ jake@^10.6.1:
filelist "^1.0.1"
minimatch "^3.0.4"
jest-worker@^26.1.0:
version "26.1.0"
resolved "https://registry.npm.taobao.org/jest-worker/download/jest-worker-26.1.0.tgz#65d5641af74e08ccd561c240e7db61284f82f33d"
integrity sha1-ZdVkGvdOCMzVYcJA59thKE+C8z0=
jest-worker@^26.3.0:
version "26.3.0"
resolved "https://registry.npm.taobao.org/jest-worker/download/jest-worker-26.3.0.tgz?cache=0&sync_timestamp=1597057481462&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjest-worker%2Fdownload%2Fjest-worker-26.3.0.tgz#7c8a97e4f4364b4f05ed8bca8ca0c24de091871f"
integrity sha1-fIqX5PQ2S08F7YvKjKDCTeCRhx8=
dependencies:
"@types/node" "*"
merge-stream "^2.0.0"
supports-color "^7.0.0"
......@@ -5832,9 +5836,9 @@ kind-of@^6.0.0, kind-of@^6.0.2:
resolved "https://registry.npm.taobao.org/kind-of/download/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"
integrity sha1-B8BQNKbDSfoG4k+jWqdttFgM5N0=
klona@^1.1.1:
klona@^1.1.2:
version "1.1.2"
resolved "https://registry.npm.taobao.org/klona/download/klona-1.1.2.tgz?cache=0&sync_timestamp=1594031401487&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fklona%2Fdownload%2Fklona-1.1.2.tgz#a79e292518a5a5412ec8d097964bff1571a64db0"
resolved "https://registry.npm.taobao.org/klona/download/klona-1.1.2.tgz?cache=0&sync_timestamp=1594031499693&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fklona%2Fdownload%2Fklona-1.1.2.tgz#a79e292518a5a5412ec8d097964bff1571a64db0"
integrity sha1-p54pJRilpUEuyNCXlkv/FXGmTbA=
latest-version@^5.0.0:
......@@ -6344,7 +6348,7 @@ micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4:
snapdragon "^0.8.1"
to-regex "^3.0.2"
micromatch@^4.0.2:
micromatch@^4.0.0, micromatch@^4.0.2:
version "4.0.2"
resolved "https://registry.npm.taobao.org/micromatch/download/micromatch-4.0.2.tgz#4fcb0999bf9fbc2fcbdd212f6d629b9a56c39259"
integrity sha1-T8sJmb+fvC/L3SEvbWKbmlbDklk=
......@@ -6377,7 +6381,7 @@ mime@1.6.0:
resolved "https://registry.npm.taobao.org/mime/download/mime-1.6.0.tgz?cache=0&sync_timestamp=1590596706367&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime%2Fdownload%2Fmime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"
integrity sha1-Ms2eXGRVO9WNGaVor0Uqz/BJgbE=
mime@^2.4.4, mime@^2.4.5:
mime@^2.4.4, mime@^2.4.6:
version "2.4.6"
resolved "https://registry.npm.taobao.org/mime/download/mime-2.4.6.tgz?cache=0&sync_timestamp=1590596706367&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime%2Fdownload%2Fmime-2.4.6.tgz#e5b407c90db442f2beb5b162373d07b69affa4d1"
integrity sha1-5bQHyQ20QvK+tbFiNz0Htpr/pNE=
......@@ -6392,10 +6396,10 @@ mimic-response@^1.0.0, mimic-response@^1.0.1:
resolved "https://registry.npm.taobao.org/mimic-response/download/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b"
integrity sha1-SSNTiHju9CBjy4o+OweYeBSHqxs=
mini-css-extract-plugin@0.9.0:
version "0.9.0"
resolved "https://registry.npm.taobao.org/mini-css-extract-plugin/download/mini-css-extract-plugin-0.9.0.tgz?cache=0&sync_timestamp=1576856499989&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmini-css-extract-plugin%2Fdownload%2Fmini-css-extract-plugin-0.9.0.tgz#47f2cf07aa165ab35733b1fc97d4c46c0564339e"
integrity sha1-R/LPB6oWWrNXM7H8l9TEbAVkM54=
mini-css-extract-plugin@0.10.0:
version "0.10.0"
resolved "https://registry.npm.taobao.org/mini-css-extract-plugin/download/mini-css-extract-plugin-0.10.0.tgz?cache=0&sync_timestamp=1597072255332&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmini-css-extract-plugin%2Fdownload%2Fmini-css-extract-plugin-0.10.0.tgz#a0e6bfcad22a9c73f6c882a3c7557a98e2d3d27d"
integrity sha1-oOa/ytIqnHP2yIKjx1V6mOLT0n0=
dependencies:
loader-utils "^1.1.0"
normalize-url "1.9.1"
......@@ -6523,7 +6527,7 @@ ms@2.1.1:
resolved "https://registry.npm.taobao.org/ms/download/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a"
integrity sha1-MKWGTrPrsKZvLr5tcnrwagnYbgo=
ms@2.1.2, ms@^2.1.1:
ms@^2.1.1:
version "2.1.2"
resolved "https://registry.npm.taobao.org/ms/download/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009"
integrity sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk=
......@@ -6602,6 +6606,11 @@ neo-async@^2.5.0, neo-async@^2.6.1:
resolved "https://registry.npm.taobao.org/neo-async/download/neo-async-2.6.1.tgz#ac27ada66167fa8849a6addd837f6b189ad2081c"
integrity sha1-rCetpmFn+ohJpq3dg39rGJrSCBw=
neo-async@^2.6.2:
version "2.6.2"
resolved "https://registry.npm.taobao.org/neo-async/download/neo-async-2.6.2.tgz?cache=0&sync_timestamp=1594317447342&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fneo-async%2Fdownload%2Fneo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f"
integrity sha1-tKr7k+OustgXTKU88WOrfXMIMF8=
nice-try@^1.0.4:
version "1.0.5"
resolved "https://registry.npm.taobao.org/nice-try/download/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366"
......@@ -6656,10 +6665,10 @@ node-libs-browser@^2.2.1:
util "^0.11.0"
vm-browserify "^1.0.1"
node-loader@^1.0.0:
version "1.0.0"
resolved "https://registry.npm.taobao.org/node-loader/download/node-loader-1.0.0.tgz#efe5adbcc68d34b97af201106b94531095ee8ca8"
integrity sha1-7+WtvMaNNLl68gEQa5RTEJXujKg=
node-loader@^1.0.1:
version "1.0.1"
resolved "https://registry.npm.taobao.org/node-loader/download/node-loader-1.0.1.tgz#1bfd47245a83b6a20c1d8df7f28c9c83e999d1ac"
integrity sha1-G/1HJFqDtqIMHY338oycg+mZ0aw=
dependencies:
loader-utils "^2.0.0"
schema-utils "^2.7.0"
......@@ -7972,7 +7981,7 @@ safe-regex@^1.1.0:
dependencies:
ret "~0.1.10"
"safer-buffer@>= 2.1.2 < 3":
"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0":
version "2.1.2"
resolved "https://registry.npm.taobao.org/safer-buffer/download/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
integrity sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo=
......@@ -7984,14 +7993,14 @@ sanitize-filename@^1.6.2, sanitize-filename@^1.6.3:
dependencies:
truncate-utf8-bytes "^1.0.0"
sass-loader@^9.0.2:
version "9.0.2"
resolved "https://registry.npm.taobao.org/sass-loader/download/sass-loader-9.0.2.tgz#847c9b4c95328ddc8c7d35cf28c9d6e54e59a90b"
integrity sha1-hHybTJUyjdyMfTXPKMnW5U5ZqQs=
sass-loader@^9.0.3:
version "9.0.3"
resolved "https://registry.npm.taobao.org/sass-loader/download/sass-loader-9.0.3.tgz?cache=0&sync_timestamp=1596633419455&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsass-loader%2Fdownload%2Fsass-loader-9.0.3.tgz#086adcf0bfdcc9d920413e2cdc3ba3321373d547"
integrity sha1-CGrc8L/cydkgQT4s3DujMhNz1Uc=
dependencies:
klona "^1.1.1"
klona "^1.1.2"
loader-utils "^2.0.0"
neo-async "^2.6.1"
neo-async "^2.6.2"
schema-utils "^2.7.0"
semver "^7.3.2"
......@@ -8758,22 +8767,22 @@ terser-webpack-plugin@^1.4.3:
webpack-sources "^1.4.0"
worker-farm "^1.7.0"
terser-webpack-plugin@^3.0.8:
version "3.0.8"
resolved "https://registry.npm.taobao.org/terser-webpack-plugin/download/terser-webpack-plugin-3.0.8.tgz#d1a53442a143e09e00c880e8d77c1e79cb05318b"
integrity sha1-0aU0QqFD4J4AyIDo13weecsFMYs=
terser-webpack-plugin@^4.1.0:
version "4.1.0"
resolved "https://registry.npm.taobao.org/terser-webpack-plugin/download/terser-webpack-plugin-4.1.0.tgz?cache=0&sync_timestamp=1597067395827&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fterser-webpack-plugin%2Fdownload%2Fterser-webpack-plugin-4.1.0.tgz#6e9d6ae4e1a900d88ddce8da6a47507ea61f44bc"
integrity sha1-bp1q5OGpANiN3OjaakdQfqYfRLw=
dependencies:
cacache "^15.0.5"
find-cache-dir "^3.3.1"
jest-worker "^26.1.0"
jest-worker "^26.3.0"
p-limit "^3.0.2"
schema-utils "^2.6.6"
serialize-javascript "^4.0.0"
source-map "^0.6.1"
terser "^4.8.0"
terser "^5.0.0"
webpack-sources "^1.4.3"
terser@^4.1.2, terser@^4.6.3, terser@^4.8.0:
terser@^4.1.2, terser@^4.6.3:
version "4.8.0"
resolved "https://registry.npm.taobao.org/terser/download/terser-4.8.0.tgz?cache=0&sync_timestamp=1593953638544&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fterser%2Fdownload%2Fterser-4.8.0.tgz#63056343d7c70bb29f3af665865a46fe03a0df17"
integrity sha1-YwVjQ9fHC7KfOvZlhlpG/gOg3xc=
......@@ -8782,6 +8791,15 @@ terser@^4.1.2, terser@^4.6.3, terser@^4.8.0:
source-map "~0.6.1"
source-map-support "~0.5.12"
terser@^5.0.0:
version "5.0.0"
resolved "https://registry.npm.taobao.org/terser/download/terser-5.0.0.tgz?cache=0&sync_timestamp=1596288805749&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fterser%2Fdownload%2Fterser-5.0.0.tgz#269640e4e92f15d628de1e5f01c4c61e1ba3d765"
integrity sha1-JpZA5OkvFdYo3h5fAcTGHhuj12U=
dependencies:
commander "^2.20.0"
source-map "~0.6.1"
source-map-support "~0.5.12"
text-table@^0.2.0:
version "0.2.0"
resolved "https://registry.npm.taobao.org/text-table/download/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
......@@ -8919,6 +8937,17 @@ truncate-utf8-bytes@^1.0.0:
dependencies:
utf8-byte-length "^1.0.1"
ts-loader@^8.0.2:
version "8.0.2"
resolved "https://registry.npm.taobao.org/ts-loader/download/ts-loader-8.0.2.tgz?cache=0&sync_timestamp=1596283653966&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fts-loader%2Fdownload%2Fts-loader-8.0.2.tgz#ee73ca9350f745799396fff8578ba29b1e95616b"
integrity sha1-7nPKk1D3RXmTlv/4V4uimx6VYWs=
dependencies:
chalk "^2.3.0"
enhanced-resolve "^4.0.0"
loader-utils "^1.0.2"
micromatch "^4.0.0"
semver "^6.0.0"
tsconfig-paths@^3.9.0:
version "3.9.0"
resolved "https://registry.npm.taobao.org/tsconfig-paths/download/tsconfig-paths-3.9.0.tgz#098547a6c4448807e8fcb8eae081064ee9a3c90b"
......@@ -8986,6 +9015,11 @@ typedarray@^0.0.6:
resolved "https://registry.npm.taobao.org/typedarray/download/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
typescript@^3.9.7:
version "3.9.7"
resolved "https://registry.npm.taobao.org/typescript/download/typescript-3.9.7.tgz?cache=0&sync_timestamp=1596955694353&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftypescript%2Fdownload%2Ftypescript-3.9.7.tgz#98d600a5ebdc38f40cb277522f12dc800e9e25fa"
integrity sha1-mNYApevcOPQMsndSLxLcgA6eJfo=
uglify-js@2.6.x:
version "2.6.4"
resolved "https://registry.npm.taobao.org/uglify-js/download/uglify-js-2.6.4.tgz#65ea2fb3059c9394692f15fed87c2b36c16b9adf"
......@@ -9294,10 +9328,10 @@ vue-loader@^15.9.3:
vue-hot-reload-api "^2.3.0"
vue-style-loader "^4.1.0"
vue-router@^3.3.2:
version "3.3.4"
resolved "https://registry.npm.taobao.org/vue-router/download/vue-router-3.3.4.tgz#4e38abc34a11c41b6c3d8244449a2e363ba6250b"
integrity sha1-Tjirw0oRxBtsPYJERJouNjumJQs=
vue-router@^3.4.3:
version "3.4.3"
resolved "https://registry.npm.taobao.org/vue-router/download/vue-router-3.4.3.tgz#fa93768616ee338aa174f160ac965167fa572ffa"
integrity sha1-+pN2hhbuM4qhdPFgrJZRZ/pXL/o=
vue-style-loader@^4.1.0, vue-style-loader@^4.1.2:
version "4.1.2"
......@@ -9440,10 +9474,10 @@ webpack-log@^2.0.0:
ansi-colors "^3.0.0"
uuid "^3.3.2"
webpack-merge@^5.0.9:
version "5.0.9"
resolved "https://registry.npm.taobao.org/webpack-merge/download/webpack-merge-5.0.9.tgz#d5e0e0ae564ae704836d747893bdd2741544bf31"
integrity sha1-1eDgrlZK5wSDbXR4k73SdBVEvzE=
webpack-merge@^5.1.1:
version "5.1.1"
resolved "https://registry.npm.taobao.org/webpack-merge/download/webpack-merge-5.1.1.tgz?cache=0&sync_timestamp=1596542065923&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fwebpack-merge%2Fdownload%2Fwebpack-merge-5.1.1.tgz#c79f36b4ad39a597c3bb780f809b514d65d85d01"
integrity sha1-x582tK05pZfDu3gPgJtRTWXYXQE=
dependencies:
clone-deep "^4.0.1"
wildcard "^2.0.0"
......