bugfix: #22, style: 优化界面样式,logo 重做
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 61 KiB After Width: | Height: | Size: 15 KiB |
309
package-lock.json
generated
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "rubick2",
|
||||
"version": "0.0.2-beta.1",
|
||||
"version": "0.0.3-beta.2",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
@ -1226,6 +1226,13 @@
|
||||
"integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=",
|
||||
"dev": true
|
||||
},
|
||||
"asap": {
|
||||
"version": "2.0.6",
|
||||
"resolved": "https://registry.npm.taobao.org/asap/download/asap-2.0.6.tgz",
|
||||
"integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"asar": {
|
||||
"version": "3.0.3",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/asar/-/asar-3.0.3.tgz",
|
||||
@ -2776,6 +2783,16 @@
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"boom": {
|
||||
"version": "2.10.1",
|
||||
"resolved": "https://registry.npm.taobao.org/boom/download/boom-2.10.1.tgz",
|
||||
"integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"hoek": "2.x.x"
|
||||
}
|
||||
},
|
||||
"boxen": {
|
||||
"version": "5.0.1",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/boxen/-/boxen-5.0.1.tgz",
|
||||
@ -3969,6 +3986,13 @@
|
||||
"mimic-response": "^1.0.0"
|
||||
}
|
||||
},
|
||||
"co": {
|
||||
"version": "4.6.0",
|
||||
"resolved": "https://registry.npm.taobao.org/co/download/co-4.6.0.tgz",
|
||||
"integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"coa": {
|
||||
"version": "1.0.4",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/coa/-/coa-1.0.4.tgz",
|
||||
@ -4306,15 +4330,6 @@
|
||||
"integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=",
|
||||
"dev": true
|
||||
},
|
||||
"copy-anything": {
|
||||
"version": "2.0.3",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/copy-anything/-/copy-anything-2.0.3.tgz",
|
||||
"integrity": "sha1-hCQHugJGaw34RIGbvjuuu+XUXYc=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"is-what": "^3.12.0"
|
||||
}
|
||||
},
|
||||
"copy-concurrently": {
|
||||
"version": "1.0.5",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz",
|
||||
@ -4485,6 +4500,16 @@
|
||||
"resolved": "http://npmreg.qa.91jkys.com/crypt/-/crypt-0.0.2.tgz",
|
||||
"integrity": "sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs="
|
||||
},
|
||||
"cryptiles": {
|
||||
"version": "2.0.5",
|
||||
"resolved": "https://registry.npm.taobao.org/cryptiles/download/cryptiles-2.0.5.tgz",
|
||||
"integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"boom": "2.x.x"
|
||||
}
|
||||
},
|
||||
"crypto-browserify": {
|
||||
"version": "3.12.0",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/crypto-browserify/-/crypto-browserify-3.12.0.tgz",
|
||||
@ -5699,6 +5724,14 @@
|
||||
"requires": {
|
||||
"electron-is-dev": "^0.3.0",
|
||||
"electron-localshortcut": "^3.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"electron-is-dev": {
|
||||
"version": "0.3.0",
|
||||
"resolved": "https://registry.npm.taobao.org/electron-is-dev/download/electron-is-dev-0.3.0.tgz",
|
||||
"integrity": "sha1-FOb9pcaOnk7L7/nM8DfL18BcWv4=",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"electron-devtools-installer": {
|
||||
@ -5737,10 +5770,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"electron-is-dev": {
|
||||
"version": "0.3.0",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/electron-is-dev/-/electron-is-dev-0.3.0.tgz",
|
||||
"integrity": "sha1-FOb9pcaOnk7L7/nM8DfL18BcWv4=",
|
||||
"dev": true
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npm.taobao.org/electron-is-dev/download/electron-is-dev-2.0.0.tgz",
|
||||
"integrity": "sha1-gzSHoGm42tIUJcZ6GYR9kGSrGb0="
|
||||
},
|
||||
"electron-localshortcut": {
|
||||
"version": "3.2.1",
|
||||
@ -7549,6 +7581,19 @@
|
||||
"minimalistic-assert": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"hawk": {
|
||||
"version": "3.1.3",
|
||||
"resolved": "https://registry.npm.taobao.org/hawk/download/hawk-3.1.3.tgz",
|
||||
"integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"boom": "2.x.x",
|
||||
"cryptiles": "2.x.x",
|
||||
"hoek": "2.x.x",
|
||||
"sntp": "1.x.x"
|
||||
}
|
||||
},
|
||||
"he": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/he/-/he-1.2.0.tgz",
|
||||
@ -7582,6 +7627,13 @@
|
||||
"minimalistic-crypto-utils": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"hoek": {
|
||||
"version": "2.16.3",
|
||||
"resolved": "https://registry.npm.taobao.org/hoek/download/hoek-2.16.3.tgz",
|
||||
"integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"home-or-tmp": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz",
|
||||
@ -7953,7 +8005,7 @@
|
||||
},
|
||||
"image-size": {
|
||||
"version": "0.5.5",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/image-size/-/image-size-0.5.5.tgz",
|
||||
"resolved": "https://registry.npm.taobao.org/image-size/download/image-size-0.5.5.tgz",
|
||||
"integrity": "sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w=",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
@ -8488,12 +8540,6 @@
|
||||
"resolved": "https://registry.nlark.com/is-utf8/download/is-utf8-0.2.1.tgz",
|
||||
"integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI="
|
||||
},
|
||||
"is-what": {
|
||||
"version": "3.14.1",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/is-what/-/is-what-3.14.1.tgz",
|
||||
"integrity": "sha1-4SIvRt3ahd6tD9HJ3xMXYOd3VcE=",
|
||||
"dev": true
|
||||
},
|
||||
"is-windows": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/is-windows/-/is-windows-1.0.2.tgz",
|
||||
@ -8634,6 +8680,16 @@
|
||||
"resolved": "http://npmreg.qa.91jkys.com/json-schema-typed/-/json-schema-typed-7.0.3.tgz",
|
||||
"integrity": "sha1-I/9IG4tO680soSO0+gQJ5mRpotk="
|
||||
},
|
||||
"json-stable-stringify": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npm.taobao.org/json-stable-stringify/download/json-stable-stringify-1.0.1.tgz",
|
||||
"integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"jsonify": "~0.0.0"
|
||||
}
|
||||
},
|
||||
"json-stringify-safe": {
|
||||
"version": "5.0.1",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
|
||||
@ -8668,6 +8724,13 @@
|
||||
"graceful-fs": "^4.1.6"
|
||||
}
|
||||
},
|
||||
"jsonify": {
|
||||
"version": "0.0.0",
|
||||
"resolved": "https://registry.nlark.com/jsonify/download/jsonify-0.0.0.tgz",
|
||||
"integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"jsprim": {
|
||||
"version": "1.4.1",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/jsprim/-/jsprim-1.4.1.tgz",
|
||||
@ -8741,45 +8804,168 @@
|
||||
"dev": true
|
||||
},
|
||||
"less": {
|
||||
"version": "4.1.1",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/less/-/less-4.1.1.tgz",
|
||||
"integrity": "sha1-Fb8lOpk5eR3GkIiMP/Qk8+bH7bo=",
|
||||
"version": "2.7.3",
|
||||
"resolved": "https://registry.npm.taobao.org/less/download/less-2.7.3.tgz?cache=0&sync_timestamp=1612065678706&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fless%2Fdownload%2Fless-2.7.3.tgz",
|
||||
"integrity": "sha1-zBJg9RyQCp7A2R+2mYE54CUHtjs=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"copy-anything": "^2.0.1",
|
||||
"errno": "^0.1.1",
|
||||
"graceful-fs": "^4.1.2",
|
||||
"image-size": "~0.5.0",
|
||||
"make-dir": "^2.1.0",
|
||||
"mime": "^1.4.1",
|
||||
"needle": "^2.5.2",
|
||||
"parse-node-version": "^1.0.1",
|
||||
"source-map": "~0.6.0",
|
||||
"tslib": "^1.10.0"
|
||||
"mime": "^1.2.11",
|
||||
"mkdirp": "^0.5.0",
|
||||
"promise": "^7.1.1",
|
||||
"request": "2.81.0",
|
||||
"source-map": "^0.5.3"
|
||||
},
|
||||
"dependencies": {
|
||||
"make-dir": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/make-dir/-/make-dir-2.1.0.tgz",
|
||||
"integrity": "sha1-XwMQ4YuL6JjMBwCSlaMK5B6R5vU=",
|
||||
"ajv": {
|
||||
"version": "4.11.8",
|
||||
"resolved": "https://registry.nlark.com/ajv/download/ajv-4.11.8.tgz?cache=0&sync_timestamp=1626380134544&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fajv%2Fdownload%2Fajv-4.11.8.tgz",
|
||||
"integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"pify": "^4.0.1",
|
||||
"semver": "^5.6.0"
|
||||
"co": "^4.6.0",
|
||||
"json-stable-stringify": "^1.0.1"
|
||||
}
|
||||
},
|
||||
"pify": {
|
||||
"version": "4.0.1",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/pify/-/pify-4.0.1.tgz",
|
||||
"integrity": "sha1-SyzSXFDVmHNcUCkiJP2MbfQeMjE=",
|
||||
"assert-plus": {
|
||||
"version": "0.2.0",
|
||||
"resolved": "https://registry.npm.taobao.org/assert-plus/download/assert-plus-0.2.0.tgz",
|
||||
"integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"semver": {
|
||||
"version": "5.7.1",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/semver/-/semver-5.7.1.tgz",
|
||||
"integrity": "sha1-qVT5Ma66UI0we78Gnv8MAclhFvc=",
|
||||
"aws-sign2": {
|
||||
"version": "0.6.0",
|
||||
"resolved": "https://registry.npm.taobao.org/aws-sign2/download/aws-sign2-0.6.0.tgz",
|
||||
"integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"form-data": {
|
||||
"version": "2.1.4",
|
||||
"resolved": "https://registry.npm.taobao.org/form-data/download/form-data-2.1.4.tgz?cache=0&sync_timestamp=1613410812604&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fform-data%2Fdownload%2Fform-data-2.1.4.tgz",
|
||||
"integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"asynckit": "^0.4.0",
|
||||
"combined-stream": "^1.0.5",
|
||||
"mime-types": "^2.1.12"
|
||||
}
|
||||
},
|
||||
"har-schema": {
|
||||
"version": "1.0.5",
|
||||
"resolved": "https://registry.npm.taobao.org/har-schema/download/har-schema-1.0.5.tgz",
|
||||
"integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"har-validator": {
|
||||
"version": "4.2.1",
|
||||
"resolved": "https://registry.npm.taobao.org/har-validator/download/har-validator-4.2.1.tgz",
|
||||
"integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"ajv": "^4.9.1",
|
||||
"har-schema": "^1.0.5"
|
||||
}
|
||||
},
|
||||
"http-signature": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npm.taobao.org/http-signature/download/http-signature-1.1.1.tgz?cache=0&sync_timestamp=1600868483243&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhttp-signature%2Fdownload%2Fhttp-signature-1.1.1.tgz",
|
||||
"integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"assert-plus": "^0.2.0",
|
||||
"jsprim": "^1.2.2",
|
||||
"sshpk": "^1.7.0"
|
||||
}
|
||||
},
|
||||
"oauth-sign": {
|
||||
"version": "0.8.2",
|
||||
"resolved": "https://registry.npm.taobao.org/oauth-sign/download/oauth-sign-0.8.2.tgz",
|
||||
"integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"performance-now": {
|
||||
"version": "0.2.0",
|
||||
"resolved": "https://registry.npm.taobao.org/performance-now/download/performance-now-0.2.0.tgz",
|
||||
"integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"punycode": {
|
||||
"version": "1.4.1",
|
||||
"resolved": "https://registry.npm.taobao.org/punycode/download/punycode-1.4.1.tgz",
|
||||
"integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"qs": {
|
||||
"version": "6.4.0",
|
||||
"resolved": "https://registry.nlark.com/qs/download/qs-6.4.0.tgz",
|
||||
"integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM=",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"request": {
|
||||
"version": "2.81.0",
|
||||
"resolved": "https://registry.npm.taobao.org/request/download/request-2.81.0.tgz",
|
||||
"integrity": "sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA=",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"aws-sign2": "~0.6.0",
|
||||
"aws4": "^1.2.1",
|
||||
"caseless": "~0.12.0",
|
||||
"combined-stream": "~1.0.5",
|
||||
"extend": "~3.0.0",
|
||||
"forever-agent": "~0.6.1",
|
||||
"form-data": "~2.1.1",
|
||||
"har-validator": "~4.2.1",
|
||||
"hawk": "~3.1.3",
|
||||
"http-signature": "~1.1.0",
|
||||
"is-typedarray": "~1.0.0",
|
||||
"isstream": "~0.1.2",
|
||||
"json-stringify-safe": "~5.0.1",
|
||||
"mime-types": "~2.1.7",
|
||||
"oauth-sign": "~0.8.1",
|
||||
"performance-now": "^0.2.0",
|
||||
"qs": "~6.4.0",
|
||||
"safe-buffer": "^5.0.1",
|
||||
"stringstream": "~0.0.4",
|
||||
"tough-cookie": "~2.3.0",
|
||||
"tunnel-agent": "^0.6.0",
|
||||
"uuid": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"source-map": {
|
||||
"version": "0.5.7",
|
||||
"resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.5.7.tgz",
|
||||
"integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"tough-cookie": {
|
||||
"version": "2.3.4",
|
||||
"resolved": "https://registry.npm.taobao.org/tough-cookie/download/tough-cookie-2.3.4.tgz",
|
||||
"integrity": "sha1-7GDO44rGdQY//JelwYlwV47oNlU=",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"punycode": "^1.4.1"
|
||||
}
|
||||
},
|
||||
"uuid": {
|
||||
"version": "3.4.0",
|
||||
"resolved": "https://registry.nlark.com/uuid/download/uuid-3.4.0.tgz?cache=0&sync_timestamp=1622213136953&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fuuid%2Fdownload%2Fuuid-3.4.0.tgz",
|
||||
"integrity": "sha1-sj5DWK+oogL+ehAK8fX4g/AgB+4=",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
}
|
||||
@ -10975,12 +11161,6 @@
|
||||
"error-ex": "^1.2.0"
|
||||
}
|
||||
},
|
||||
"parse-node-version": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/parse-node-version/-/parse-node-version-1.0.1.tgz",
|
||||
"integrity": "sha1-4rXb7eAOf6m8NjYH9TMn6LBzGJs=",
|
||||
"dev": true
|
||||
},
|
||||
"parse-passwd": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/parse-passwd/-/parse-passwd-1.0.0.tgz",
|
||||
@ -11878,6 +12058,16 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"promise": {
|
||||
"version": "7.3.1",
|
||||
"resolved": "https://registry.nlark.com/promise/download/promise-7.3.1.tgz",
|
||||
"integrity": "sha1-BktyYCsY+Q8pGSuLG8QY/9Hr078=",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"asap": "~2.0.3"
|
||||
}
|
||||
},
|
||||
"promise-inflight": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/promise-inflight/-/promise-inflight-1.0.1.tgz",
|
||||
@ -13414,6 +13604,16 @@
|
||||
"kind-of": "^3.2.0"
|
||||
}
|
||||
},
|
||||
"sntp": {
|
||||
"version": "1.0.9",
|
||||
"resolved": "https://registry.npm.taobao.org/sntp/download/sntp-1.0.9.tgz",
|
||||
"integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"hoek": "2.x.x"
|
||||
}
|
||||
},
|
||||
"sockjs": {
|
||||
"version": "0.3.21",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/sockjs/-/sockjs-0.3.21.tgz",
|
||||
@ -13865,6 +14065,13 @@
|
||||
"safe-buffer": "~5.1.0"
|
||||
}
|
||||
},
|
||||
"stringstream": {
|
||||
"version": "0.0.6",
|
||||
"resolved": "https://registry.npm.taobao.org/stringstream/download/stringstream-0.0.6.tgz",
|
||||
"integrity": "sha1-eIAiWw1K0Q4wkn0Weh1vL9OzOnI=",
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"strip-ansi": {
|
||||
"version": "4.0.0",
|
||||
"resolved": "http://npmreg.qa.91jkys.com/strip-ansi/-/strip-ansi-4.0.0.tgz",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "rubick2",
|
||||
"version": "0.0.3-beta.1",
|
||||
"version": "0.0.3-beta.2",
|
||||
"author": "muwoo <2424880409@qq.com>",
|
||||
"description": "An electron-vue project",
|
||||
"license": null,
|
||||
@ -63,6 +63,7 @@
|
||||
"bplist-parser": "^0.3.0",
|
||||
"download": "^8.0.0",
|
||||
"download-git-repo": "^3.0.2",
|
||||
"electron-is-dev": "^2.0.0",
|
||||
"electron-store": "^8.0.0",
|
||||
"iohook": "^0.9.3",
|
||||
"is-chinese": "^1.4.2",
|
||||
@ -112,7 +113,7 @@
|
||||
"file-loader": "^1.1.11",
|
||||
"html-webpack-plugin": "^3.2.0",
|
||||
"iconv-lite": "^0.6.3",
|
||||
"less": "^4.1.1",
|
||||
"less": "^2.7.3",
|
||||
"less-loader": "^5.0.0",
|
||||
"listr": "^0.14.3",
|
||||
"mini-css-extract-plugin": "0.4.0",
|
||||
|
@ -18,6 +18,7 @@ module.exports = () => {
|
||||
frame: false,
|
||||
title: '拉比克',
|
||||
show: false,
|
||||
skipTaskbar: true,
|
||||
webPreferences: {
|
||||
webSecurity: false,
|
||||
enableRemoteModule: true,
|
||||
|
@ -9,13 +9,6 @@ export default function init(mainWindow) {
|
||||
listener.registerShortCut(mainWindow);
|
||||
listener.init(mainWindow);
|
||||
|
||||
// 设置开机启动
|
||||
const config = global.opConfig.get();
|
||||
app.setLoginItemSettings({
|
||||
openAtLogin: config.perf.common.start,
|
||||
openAsHidden: true,
|
||||
});
|
||||
|
||||
mainWindow.once("ready-to-show", () => {
|
||||
// 非隐藏式启动需要显示主窗口
|
||||
if (!app.getLoginItemSettings().wasOpenedAsHidden) {
|
||||
|
@ -1,9 +1,9 @@
|
||||
import {BrowserWindow, clipboard, globalShortcut, ipcMain, Notification, screen} from "electron";
|
||||
import {app, BrowserWindow, clipboard, globalShortcut, ipcMain, Notification, screen} from "electron";
|
||||
import {exec, spawn} from "child_process";
|
||||
import robot from "robotjs";
|
||||
import Api from "./api";
|
||||
import ioHook from 'iohook';
|
||||
import {throttle} from './utils';
|
||||
import {throttle, commonConst} from './utils';
|
||||
|
||||
const browsers = require("../browsers")();
|
||||
const {picker, separator, superPanel} = browsers;
|
||||
@ -20,8 +20,7 @@ class Listener {
|
||||
clipboard.clear();
|
||||
|
||||
// 复制选中文案
|
||||
const platform = process.platform;
|
||||
if (platform === 'darwin') {
|
||||
if (commonConst.macOS()) {
|
||||
robot.keyTap('c', 'command');
|
||||
} else {
|
||||
robot.keyTap('c', 'control');
|
||||
@ -52,9 +51,11 @@ class Listener {
|
||||
const currentDisplay = screen.getDisplayNearestPoint({ x, y });
|
||||
const wx = parseInt(currentDisplay.workArea.x + currentDisplay.workArea.width / 2 - 400);
|
||||
const wy = parseInt(currentDisplay.workArea.y + currentDisplay.workArea.height / 2 - 200);
|
||||
mainWindow.setVisibleOnAllWorkspaces(true);
|
||||
|
||||
mainWindow.setAlwaysOnTop(true)
|
||||
mainWindow.setVisibleOnAllWorkspaces(true, {visibleOnFullScreen: true});
|
||||
mainWindow.focus();
|
||||
mainWindow.setVisibleOnAllWorkspaces(false);
|
||||
mainWindow.setVisibleOnAllWorkspaces(false, {visibleOnFullScreen: true});
|
||||
mainWindow.setPosition(wx, wy);
|
||||
mainWindow.show();
|
||||
});
|
||||
@ -92,6 +93,7 @@ class Listener {
|
||||
picker.getWindow().webContents.send("updatePicker", colors);
|
||||
}, 100);
|
||||
|
||||
this.setAutoLogin();
|
||||
this.colorPicker();
|
||||
this.initPlugin();
|
||||
this.lockScreen();
|
||||
@ -224,10 +226,21 @@ class Listener {
|
||||
|
||||
reRegisterShortCut(mainWindow) {
|
||||
ipcMain.on('re-register', (event, arg) => {
|
||||
this.setAutoLogin();
|
||||
this.registerShortCut(mainWindow);
|
||||
});
|
||||
}
|
||||
|
||||
setAutoLogin() {
|
||||
// 设置开机启动
|
||||
const config = global.opConfig.get();
|
||||
app.setLoginItemSettings({
|
||||
openAtLogin: config.perf.common.start,
|
||||
openAsHidden: true,
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
changeSize(mainWindow) {
|
||||
// 修改窗口尺寸
|
||||
ipcMain.on('changeWindowSize-rubick', (event, arg) => {
|
||||
|
@ -53,3 +53,22 @@ export function throttle (func, wait, options) {
|
||||
};
|
||||
}
|
||||
|
||||
export const commonConst = {
|
||||
linux: function () {
|
||||
return process.platform === 'linux'
|
||||
},
|
||||
macOS () {
|
||||
return process.platform === 'darwin';
|
||||
},
|
||||
windows () {
|
||||
return process.platform === 'win32'
|
||||
},
|
||||
production: function () {
|
||||
return process.env.NODE_ENV !== 'development';
|
||||
},
|
||||
dev: function () {
|
||||
return process.env.NODE_ENV === 'development';
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
|
@ -1,38 +1,105 @@
|
||||
import { app } from 'electron'
|
||||
import { app, globalShortcut } from 'electron'
|
||||
import '../renderer/store'
|
||||
import init from './common/common';
|
||||
import {autoUpdate} from './common/autoUpdate';
|
||||
import createTray from './tray';
|
||||
import {commonConst} from './common/utils';
|
||||
|
||||
const {main} = require("./browsers")();
|
||||
/**
|
||||
* Set `__static` path to static files in production
|
||||
* https://simulatedgreg.gitbooks.io/electron-vue/content/en/using-static-assets.html
|
||||
*/
|
||||
if (process.env.NODE_ENV !== 'development') {
|
||||
|
||||
if (commonConst.production()) {
|
||||
global.__static = require('path').join(__dirname, '/static').replace(/\\/g, '\\\\')
|
||||
}
|
||||
// to fix https://github.com/electron/electron/issues/18397
|
||||
app.allowRendererProcessReuse = false;
|
||||
app.dock.hide();
|
||||
|
||||
function createWindow() {
|
||||
main.init();
|
||||
init(main.getWindow());
|
||||
class initApp {
|
||||
launchApp() {
|
||||
const gotTheLock = app.requestSingleInstanceLock()
|
||||
if (!gotTheLock) {
|
||||
app.quit()
|
||||
} else {
|
||||
this.beforeReady()
|
||||
this.onReady()
|
||||
this.onRunning()
|
||||
this.onQuit()
|
||||
}
|
||||
}
|
||||
|
||||
createWindow() {
|
||||
main.init();
|
||||
init(main.getWindow());
|
||||
}
|
||||
|
||||
beforeReady() {
|
||||
// 系统托盘
|
||||
if (commonConst.macOS()) {
|
||||
if (commonConst.production() && !app.isInApplicationsFolder()) {
|
||||
app.moveToApplicationsFolder();
|
||||
} else {
|
||||
app.dock.hide();
|
||||
}
|
||||
}else {
|
||||
app.disableHardwareAcceleration();
|
||||
}
|
||||
}
|
||||
|
||||
onReady() {
|
||||
const readyFunction = () => {
|
||||
this.createWindow();
|
||||
createTray(main.getWindow());
|
||||
autoUpdate();
|
||||
}
|
||||
if (!app.isReady()) {
|
||||
app.on('ready', readyFunction)
|
||||
} else {
|
||||
readyFunction()
|
||||
}
|
||||
}
|
||||
|
||||
onRunning() {
|
||||
app.on('second-instance', (event, commandLine, workingDirectory) => {
|
||||
// 当运行第二个实例时,将会聚焦到myWindow这个窗口
|
||||
const win = main.getWindow();
|
||||
if (win) {
|
||||
if (win.isMinimized()) {
|
||||
win.restore();
|
||||
}
|
||||
win.focus();
|
||||
}
|
||||
});
|
||||
app.on('activate', () => {
|
||||
if (!main.getWindow()) {
|
||||
this.createWindow();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
onQuit () {
|
||||
app.on('window-all-closed', () => {
|
||||
if (process.platform !== 'darwin') {
|
||||
app.quit()
|
||||
}
|
||||
})
|
||||
|
||||
app.on('will-quit', () => {
|
||||
globalShortcut.unregisterAll()
|
||||
})
|
||||
// Exit cleanly on request from parent process in development mode.
|
||||
if (commonConst.dev()) {
|
||||
if (process.platform === 'win32') {
|
||||
process.on('message', data => {
|
||||
if (data === 'graceful-exit') {
|
||||
app.quit()
|
||||
}
|
||||
})
|
||||
} else {
|
||||
process.on('SIGTERM', () => {
|
||||
app.quit()
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
app.on('ready', () => {
|
||||
createWindow()
|
||||
createTray(main.getWindow());
|
||||
autoUpdate();
|
||||
})
|
||||
|
||||
app.on('window-all-closed', () => {
|
||||
if (process.platform !== 'darwin') {
|
||||
app.quit()
|
||||
}
|
||||
})
|
||||
|
||||
app.on('activate', () => {
|
||||
createWindow()
|
||||
});
|
||||
|
||||
(new initApp()).launchApp();
|
||||
|
@ -1,10 +1,20 @@
|
||||
import { dialog, Menu, Tray, app, shell, ipcMain } from 'electron';
|
||||
import { dialog, Menu, Tray, app, shell } from 'electron';
|
||||
import path from 'path';
|
||||
import pkg from '../../package.json';
|
||||
import os from 'os';
|
||||
import {commonConst} from './common/utils';
|
||||
|
||||
function createTray(window) {
|
||||
return new Promise((resolve, reject) => {
|
||||
const appIcon = new Tray(path.join(__static, './rocket.png'));
|
||||
let icon;
|
||||
if (commonConst.macOS()) {
|
||||
icon = './icon@3x.png'
|
||||
}else if (commonConst.windows()) {
|
||||
icon = parseInt(os.release()) < 10 ? './icon@2x.png' : './icon.ico';
|
||||
}else {
|
||||
icon = 'icon@2x.png'
|
||||
}
|
||||
const appIcon = new Tray(path.join(__static, icon));
|
||||
const contextMenu = Menu.buildFromTemplate([
|
||||
{
|
||||
label: "帮助文档", click: () => {
|
||||
|
@ -44,7 +44,7 @@
|
||||
:src="selected.icon"
|
||||
/>
|
||||
<div v-else class="rubick-logo">
|
||||
<img src="./assets/logo.png" />
|
||||
<img src="./assets/imgs/logo.png" />
|
||||
</div>
|
||||
</div>
|
||||
</a-input>
|
||||
@ -358,13 +358,13 @@ export default {
|
||||
.rubick-logo {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
background: #314659;
|
||||
background: #574778;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
border-radius: 100%;
|
||||
img {
|
||||
width: 28px;
|
||||
width: 32px;
|
||||
}
|
||||
}
|
||||
.tag-container {
|
||||
|
10
src/renderer/assets/ant-reset.less
Normal file
@ -0,0 +1,10 @@
|
||||
@import '~ant-design-vue/dist/antd.less'; // 引入官方提供的 less 样式入口文件
|
||||
|
||||
@primary-color: #ff4ea4; // 全局主色
|
||||
@link-color: #ff4ea4; // 链接色
|
||||
@error-color: #ff4ea4; // 错误色
|
||||
.ant-tag-green {
|
||||
color: #ff4ea4;
|
||||
background: rgba(255, 159, 180, 0.3);
|
||||
border-color: #ff9fb4;
|
||||
}
|
BIN
src/renderer/assets/imgs/logo.png
Normal file
After Width: | Height: | Size: 15 KiB |
@ -7,7 +7,7 @@ import router from './router'
|
||||
import store from './store'
|
||||
import Antd from 'ant-design-vue';
|
||||
|
||||
import 'ant-design-vue/dist/antd.css';
|
||||
import './assets/ant-reset.less';
|
||||
|
||||
const opConfig = remote.getGlobal('opConfig');
|
||||
|
||||
|
@ -13,7 +13,7 @@
|
||||
<a-icon type="right-circle" />
|
||||
</div>
|
||||
<div v-for="banner in bannerList">
|
||||
<img width="100%" :src="banner.src" />
|
||||
<img @click="jumpTo(banner.link)" width="100%" :src="banner.src" />
|
||||
</div>
|
||||
</a-carousel>
|
||||
<a-divider v-if="bannerList && !!bannerList.length"></a-divider>
|
||||
@ -73,6 +73,7 @@
|
||||
import api from '../../../assets/api';
|
||||
import {mapActions, mapState} from 'vuex';
|
||||
import marked from "marked";
|
||||
import {shell} from "electron";
|
||||
const rendererMD = new marked.Renderer();
|
||||
|
||||
export default {
|
||||
@ -114,6 +115,11 @@ export default {
|
||||
this.currentSelect = item;
|
||||
this.currentSelect.index = index;
|
||||
},
|
||||
jumpTo(link) {
|
||||
if (link) {
|
||||
shell.openExternal(link)
|
||||
}
|
||||
},
|
||||
...mapActions('main', ['downloadPlugin'])
|
||||
},
|
||||
computed: {
|
||||
|
BIN
static/icon.ico
Normal file
After Width: | Height: | Size: 4.2 KiB |
BIN
static/icon@2x.png
Normal file
After Width: | Height: | Size: 3.8 KiB |
BIN
static/icon@3x.png
Normal file
After Width: | Height: | Size: 3.2 KiB |
Before Width: | Height: | Size: 873 B After Width: | Height: | Size: 1.4 KiB |