chore: 初始化南京中车大屏幕

This commit is contained in:
yexingqiang
2026-06-08 17:22:32 +08:00
commit a9d23d483a
185 changed files with 65297 additions and 0 deletions

21
.gitignore vendored Normal file
View File

@@ -0,0 +1,21 @@
.DS_Store
node_modules
/dist
# local env files
.env.local
.env.*.local
# Log files
npm-debug.log*
yarn-debug.log*
yarn-error.log*
# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw*

29
README.md Normal file
View File

@@ -0,0 +1,29 @@
# gaojingtv
## Project setup
```
npm install
```
### Compiles and hot-reloads for development
```
npm run serve
```
### Compiles and minifies for production
```
npm run build
```
### Run your tests
```
npm run test
```
### Lints and fixes files
```
npm run lint
```
### Customize configuration
See [Configuration Reference](https://cli.vuejs.org/config/).

5
babel.config.js Normal file
View File

@@ -0,0 +1,5 @@
module.exports = {
presets: [
'@vue/app'
]
}

45
build/build.js Normal file
View File

@@ -0,0 +1,45 @@
'use strict'
require('./check-versions')()
process.env.NODE_ENV = 'production'
const ora = require('ora')
const rm = require('rimraf')
const path = require('path')
const chalk = require('chalk')
const webpack = require('webpack')
const config = require('../config')
const webpackConfig = require('./webpack.prod.conf')
const spinner = ora('building for production...')
spinner.start()
rm(path.join(config.build.assetsRoot, config.build.assetsSubDirectory), err => {
if (err) throw err
webpack(webpackConfig, (err, stats) => {
spinner.stop()
if (err) throw err
process.stdout.write(
stats.toString({
colors: true,
modules: false,
children: false,
chunks: false,
chunkModules: false
}) + '\n\n'
)
if (stats.hasErrors()) {
console.log(chalk.red(' Build failed with errors.\n'))
process.exit(1)
}
console.log(chalk.cyan(' Build complete.\n'))
console.log(
chalk.yellow(
' Tip: built files are meant to be served over an HTTP server.\n' +
" Opening index.html over file:// won't work.\n"
)
)
})
})

64
build/check-versions.js Normal file
View File

@@ -0,0 +1,64 @@
'use strict'
const chalk = require('chalk')
const semver = require('semver')
const packageConfig = require('../package.json')
const shell = require('shelljs')
function exec(cmd) {
return require('child_process')
.execSync(cmd)
.toString()
.trim()
}
const versionRequirements = [
{
name: 'node',
currentVersion: semver.clean(process.version),
versionRequirement: packageConfig.engines.node
}
]
if (shell.which('npm')) {
versionRequirements.push({
name: 'npm',
currentVersion: exec('npm --version'),
versionRequirement: packageConfig.engines.npm
})
}
module.exports = function() {
const warnings = []
for (let i = 0; i < versionRequirements.length; i++) {
const mod = versionRequirements[i]
if (!semver.satisfies(mod.currentVersion, mod.versionRequirement)) {
warnings.push(
mod.name +
': ' +
chalk.red(mod.currentVersion) +
' should be ' +
chalk.green(mod.versionRequirement)
)
}
}
if (warnings.length) {
console.log('')
console.log(
chalk.yellow(
'To use this template, you must update following to modules:'
)
)
console.log()
for (let i = 0; i < warnings.length; i++) {
const warning = warnings[i]
console.log(' ' + warning)
}
console.log()
process.exit(1)
}
}

BIN
build/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

108
build/utils.js Normal file
View File

@@ -0,0 +1,108 @@
'use strict'
const path = require('path')
const config = require('../config')
const MiniCssExtractPlugin = require('mini-css-extract-plugin')
const packageConfig = require('../package.json')
exports.assetsPath = function(_path) {
const assetsSubDirectory =
process.env.NODE_ENV === 'production'
? config.build.assetsSubDirectory
: config.dev.assetsSubDirectory
return path.posix.join(assetsSubDirectory, _path)
}
exports.cssLoaders = function(options) {
options = options || {}
const cssLoader = {
loader: 'css-loader',
options: {
sourceMap: options.sourceMap
}
}
const postcssLoader = {
loader: 'postcss-loader',
options: {
sourceMap: options.sourceMap
}
}
// generate loader string to be used with extract text plugin
function generateLoaders(loader, loaderOptions) {
const loaders = []
// Extract CSS when that option is specified
// (which is the case during production build)
if (options.extract) {
loaders.push(MiniCssExtractPlugin.loader)
} else {
loaders.push('vue-style-loader')
}
loaders.push(cssLoader)
if (options.usePostCSS) {
loaders.push(postcssLoader)
}
if (loader) {
loaders.push({
loader: loader + '-loader',
options: Object.assign({}, loaderOptions, {
sourceMap: options.sourceMap
})
})
}
return loaders
}
// https://vue-loader.vuejs.org/en/configurations/extract-css.html
return {
css: generateLoaders(),
postcss: generateLoaders(),
less: generateLoaders('less'),
sass: generateLoaders('sass', {
indentedSyntax: true
}),
scss: generateLoaders('sass'),
stylus: generateLoaders('stylus'),
styl: generateLoaders('stylus')
}
}
// Generate loaders for standalone style files (outside of .vue)
exports.styleLoaders = function(options) {
const output = []
const loaders = exports.cssLoaders(options)
for (const extension in loaders) {
const loader = loaders[extension]
output.push({
test: new RegExp('\\.' + extension + '$'),
use: loader
})
}
return output
}
exports.createNotifierCallback = () => {
const notifier = require('node-notifier')
return (severity, errors) => {
if (severity !== 'error') return
const error = errors[0]
const filename = error.file && error.file.split('!').pop()
notifier.notify({
title: packageConfig.name,
message: severity + ': ' + error.name,
subtitle: filename || '',
icon: path.join(__dirname, 'logo.png')
})
}
}

5
build/vue-loader.conf.js Normal file
View File

@@ -0,0 +1,5 @@
'use strict'
module.exports = {
//You can set the vue-loader configuration by yourself.
}

110
build/webpack.base.conf.js Normal file
View File

@@ -0,0 +1,110 @@
'use strict'
const path = require('path')
const utils = require('./utils')
const config = require('../config')
const { VueLoaderPlugin } = require('vue-loader')
const vueLoaderConfig = require('./vue-loader.conf')
function resolve(dir) {
return path.join(__dirname, '..', dir)
}
const createLintingRule = () => ({
test: /\.(js|vue)$/,
loader: 'eslint-loader',
enforce: 'pre',
include: [resolve('src'), resolve('test')],
options: {
formatter: require('eslint-friendly-formatter'),
emitWarning: !config.dev.showEslintErrorsInOverlay
}
})
module.exports = {
context: path.resolve(__dirname, '../'),
entry: {
app: './src/main.js'
},
output: {
path: config.build.assetsRoot,
filename: '[name].js',
publicPath:
process.env.NODE_ENV === 'production'
? config.build.assetsPublicPath
: config.dev.assetsPublicPath
},
resolve: {
extensions: ['.js', '.vue', '.json'],
alias: {
'vue$': 'vue/dist/vue.esm.js',
'@': resolve('src'),
'scss_vars': '@/styles/vars.scss',
'excel': path.resolve(__dirname, '../src/excel'),//新增加一行
}
},
module: {
rules: [
...(config.dev.useEslint ? [createLintingRule()] : []),
{
test: /\.vue$/,
loader: 'vue-loader',
options: vueLoaderConfig
},
{
test: /\.js$/,
loader: 'babel-loader',
include: [
resolve('src'),
resolve('test'),
resolve('node_modules/webpack-dev-server/client')
]
},
{
test: /\.svg$/,
loader: 'svg-sprite-loader',
include: [resolve('src/icons')],
options: {
symbolId: 'icon-[name]'
}
},
{
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
loader: 'url-loader',
exclude: [resolve('src/icons')],
options: {
limit: 10000,
name: utils.assetsPath('img/[name].[hash:7].[ext]')
}
},
{
test: /\.(mp4|webm|ogg|mp3|wav|flac|aac)(\?.*)?$/,
loader: 'url-loader',
options: {
limit: 10000,
name: utils.assetsPath('media/[name].[hash:7].[ext]')
}
},
{
test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
loader: 'url-loader',
options: {
limit: 10000,
name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
}
}
]
},
plugins: [new VueLoaderPlugin()],
node: {
// prevent webpack from injecting useless setImmediate polyfill because Vue
// source contains it (although only uses it if it's native).
setImmediate: false,
// prevent webpack from injecting mocks to Node native modules
// that does not make sense for the client
dgram: 'empty',
fs: 'empty',
net: 'empty',
tls: 'empty',
child_process: 'empty'
}
}

98
build/webpack.dev.conf.js Normal file
View File

@@ -0,0 +1,98 @@
'use strict'
const path = require('path')
const utils = require('./utils')
const webpack = require('webpack')
const config = require('../config')
const merge = require('webpack-merge')
const baseWebpackConfig = require('./webpack.base.conf')
const HtmlWebpackPlugin = require('html-webpack-plugin')
const FriendlyErrorsPlugin = require('friendly-errors-webpack-plugin')
const portfinder = require('portfinder')
function resolve(dir) {
return path.join(__dirname, '..', dir)
}
const HOST = process.env.HOST
const PORT = process.env.PORT && Number(process.env.PORT)
const devWebpackConfig = merge(baseWebpackConfig, {
mode: 'development',
module: {
rules: utils.styleLoaders({
sourceMap: config.dev.cssSourceMap,
usePostCSS: true
})
},
// cheap-module-eval-source-map is faster for development
devtool: config.dev.devtool,
// these devServer options should be customized in /config/index.js
devServer: {
clientLogLevel: 'warning',
historyApiFallback: true,
hot: true,
compress: true,
host: HOST || config.dev.host,
port: PORT || config.dev.port,
open: config.dev.autoOpenBrowser,
overlay: config.dev.errorOverlay
? { warnings: false, errors: true }
: false,
publicPath: config.dev.assetsPublicPath,
proxy: config.dev.proxyTable,
quiet: true, // necessary for FriendlyErrorsPlugin
watchOptions: {
poll: config.dev.poll
}
},
plugins: [
new webpack.DefinePlugin({
'process.env': require('../config/dev.env')
}),
new webpack.HotModuleReplacementPlugin(),
// https://github.com/ampedandwired/html-webpack-plugin
new HtmlWebpackPlugin({
filename: 'EquipmentConditionAnalysis.vue.html',
template: 'EquipmentConditionAnalysis.vue.html',
inject: true,
favicon: resolve('favicon.ico'),
title: 'vue-element-admin',
templateParameters: {
BASE_URL: config.dev.assetsPublicPath + config.dev.assetsSubDirectory
}
})
]
})
module.exports = new Promise((resolve, reject) => {
portfinder.basePort = process.env.PORT || config.dev.port
portfinder.getPort((err, port) => {
if (err) {
reject(err)
} else {
// publish the new Port, necessary for e2e tests
process.env.PORT = port
// add port to devServer config
devWebpackConfig.devServer.port = port
// Add FriendlyErrorsPlugin
devWebpackConfig.plugins.push(
new FriendlyErrorsPlugin({
compilationSuccessInfo: {
messages: [
`Your application is running here: http://${
devWebpackConfig.devServer.host
}:${port}`
]
},
onErrors: config.dev.notifyOnErrors
? utils.createNotifierCallback()
: undefined
})
)
resolve(devWebpackConfig)
}
})
})

181
build/webpack.prod.conf.js Normal file
View File

@@ -0,0 +1,181 @@
'use strict'
const path = require('path')
const utils = require('./utils')
const webpack = require('webpack')
const config = require('../config')
const merge = require('webpack-merge')
const baseWebpackConfig = require('./webpack.base.conf')
const CopyWebpackPlugin = require('copy-webpack-plugin')
const HtmlWebpackPlugin = require('html-webpack-plugin')
const ScriptExtHtmlWebpackPlugin = require('script-ext-html-webpack-plugin')
const MiniCssExtractPlugin = require('mini-css-extract-plugin')
const OptimizeCSSAssetsPlugin = require('optimize-css-assets-webpack-plugin')
const UglifyJsPlugin = require('uglifyjs-webpack-plugin')
function resolve(dir) {
return path.join(__dirname, '..', dir)
}
const env = require('../config/prod.env')
// For NamedChunksPlugin
const seen = new Set()
const nameLength = 4
const webpackConfig = merge(baseWebpackConfig, {
mode: 'production',
module: {
rules: utils.styleLoaders({
sourceMap: config.build.productionSourceMap,
extract: true,
usePostCSS: true
})
},
devtool: config.build.productionSourceMap ? config.build.devtool : false,
output: {
path: config.build.assetsRoot,
filename: utils.assetsPath('js/[name].[chunkhash:8].js'),
chunkFilename: utils.assetsPath('js/[name].[chunkhash:8].js')
},
plugins: [
// http://vuejs.github.io/vue-loader/en/workflow/production.html
new webpack.DefinePlugin({
'process.env': env
}),
// extract css into its own file
new MiniCssExtractPlugin({
filename: utils.assetsPath('css/[name].[contenthash:8].css'),
chunkFilename: utils.assetsPath('css/[name].[contenthash:8].css')
}),
// generate dist index.html with correct asset hash for caching.
// you can customize output by editing /index.html
// see https://github.com/ampedandwired/html-webpack-plugin
new HtmlWebpackPlugin({
filename: config.build.index,
template: 'EquipmentConditionAnalysis.vue.html',
inject: true,
favicon: resolve('favicon.ico'),
title: 'vue-admin-template',
templateParameters: {
BASE_URL: config.build.assetsPublicPath + config.build.assetsSubDirectory
},
minify: {
removeComments: true,
collapseWhitespace: true,
removeAttributeQuotes: true
// more options:
// https://github.com/kangax/html-minifier#options-quick-reference
}
// default sort mode uses toposort which cannot handle cyclic deps
// in certain cases, and in webpack 4, chunk order in HTML doesn't
// matter anyway
}),
new ScriptExtHtmlWebpackPlugin({
// `runtime` must same as runtimeChunk name. default is `runtime`
inline: /runtime\..*\.js$/
}),
// keep chunk.id stable when chunk has no name
new webpack.NamedChunksPlugin(chunk => {
if (chunk.name) {
return chunk.name
}
const modules = Array.from(chunk.modulesIterable)
if (modules.length > 1) {
const hash = require('hash-sum')
const joinedHash = hash(modules.map(m => m.id).join('_'))
let len = nameLength
while (seen.has(joinedHash.substr(0, len))) len++
seen.add(joinedHash.substr(0, len))
return `chunk-${joinedHash.substr(0, len)}`
} else {
return modules[0].id
}
}),
// keep module.id stable when vender modules does not change
new webpack.HashedModuleIdsPlugin(),
// copy custom static assets
new CopyWebpackPlugin([
{
from: path.resolve(__dirname, '../static'),
to: config.build.assetsSubDirectory,
ignore: ['.*']
}
])
],
optimization: {
splitChunks: {
chunks: 'all',
cacheGroups: {
libs: {
name: 'chunk-libs',
test: /[\\/]node_modules[\\/]/,
priority: 10,
chunks: 'initial' // 只打包初始时依赖的第三方
},
elementUI: {
name: 'chunk-elementUI', // 单独将 elementUI 拆包
priority: 20, // 权重要大于 libs 和 app 不然会被打包进 libs 或者 app
test: /[\\/]node_modules[\\/]element-ui[\\/]/
}
}
},
runtimeChunk: 'single',
minimizer: [
new UglifyJsPlugin({
uglifyOptions: {
mangle: {
safari10: true
}
},
sourceMap: config.build.productionSourceMap,
cache: true,
parallel: true
}),
// Compress extracted CSS. We are using this plugin so that possible
// duplicated CSS from different components can be deduped.
new OptimizeCSSAssetsPlugin()
]
}
})
if (config.build.productionGzip) {
const CompressionWebpackPlugin = require('compression-webpack-plugin')
webpackConfig.plugins.push(
new CompressionWebpackPlugin({
asset: '[path].gz[query]',
algorithm: 'gzip',
test: new RegExp(
'\\.(' + config.build.productionGzipExtensions.join('|') + ')$'
),
threshold: 10240,
minRatio: 0.8
})
)
}
if (config.build.generateAnalyzerReport || config.build.bundleAnalyzerReport) {
const BundleAnalyzerPlugin = require('webpack-bundle-analyzer')
.BundleAnalyzerPlugin
if (config.build.bundleAnalyzerReport) {
webpackConfig.plugins.push(
new BundleAnalyzerPlugin({
analyzerPort: 8080,
generateStatsFile: false
})
)
}
if (config.build.generateAnalyzerReport) {
webpackConfig.plugins.push(
new BundleAnalyzerPlugin({
analyzerMode: 'static',
reportFilename: 'bundle-report.html',
openAnalyzer: false
})
)
}
}
module.exports = webpackConfig

8
config/dev.env.js Normal file
View File

@@ -0,0 +1,8 @@
'use strict'
const merge = require('webpack-merge')
const prodEnv = require('./prod.env')
module.exports = merge(prodEnv, {
NODE_ENV: '"development"',
BASE_API: '"https://easy-mock.com/mock/5950a2419adc231f356a6636/vue-admin"',
})

91
config/index.js Normal file
View File

@@ -0,0 +1,91 @@
'use strict'
// Template version: 1.2.6
// see http://vuejs-templates.github.io/webpack for documentation.
const path = require('path')
const os = require('os')
const networkInterfaces = os.networkInterfaces()
// const ip = networkInterfaces['WLAN'][1] ? networkInterfaces['WLAN'][1].address : networkInterfaces['WLAN'][0].address
const ip = '192.168.1.17'
module.exports = {
dev: {
// Paths
assetsSubDirectory: 'static',
// assetsPublicPath: '/GQMobile/',
assetsPublicPath: '/',
proxyTable: {},
// Various Dev Server settings
host: ip, // can be overwritten by process.env.HOST
port: 9528, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
autoOpenBrowser: true,
errorOverlay: true,
notifyOnErrors: false,
poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions-
// Use Eslint Loader?
// If true, your code will be linted during bundling and
// linting errors and warnings will be shown in the console.
useEslint: true,
// If true, eslint errors and warnings will also be shown in the error overlay
// in the browser.
showEslintErrorsInOverlay: false,
/**
* Source Maps
*/
// https://webpack.js.org/configuration/devtool/#development
devtool: 'cheap-source-map',
// CSS Sourcemaps off by default because relative paths are "buggy"
// with this option, according to the CSS-Loader README
// (https://github.com/webpack/css-loader#sourcemaps)
// In our experience, they generally work as expected,
// just be aware of this issue when enabling this option.
cssSourceMap: false
},
build: {
// Template for index.html
index: path.resolve(__dirname, '../dist/index.html'),
// Paths
assetsRoot: path.resolve(__dirname, '../dist'),
assetsSubDirectory: 'static',
/**
* You can set by youself according to actual condition
* You will need to set this if you plan to deploy your site under a sub path,
* for example GitHub pages. If you plan to deploy your site to https://foo.github.io/bar/,
* then assetsPublicPath should be set to "/bar/".
* In most cases please use '/' !!!
*/
assetsPublicPath: '/',
/**
* Source Maps
*/
productionSourceMap: false,
// https://webpack.js.org/configuration/devtool/#production
devtool: 'source-map',
// Gzip off by default as many popular static hosts such as
// Surge or Netlify already gzip all static assets for you.
// Before setting to `true`, make sure to:
// npm install --save-dev compression-webpack-plugin
productionGzip: false,
productionGzipExtensions: ['js', 'css'],
// Run the build command with an extra argument to
// View the bundle analyzer report after build finishes:
// `npm run build --report`
// Set to `true` or `false` to always turn it on or off
bundleAnalyzerReport: process.env.npm_config_report || false,
// `npm run build:prod --generate_report`
generateAnalyzerReport: process.env.npm_config_generate_report || false
}
}

5
config/prod.env.js Normal file
View File

@@ -0,0 +1,5 @@
'use strict'
module.exports = {
NODE_ENV: '"production"',
BASE_API: '"https://easy-mock.com/mock/5950a2419adc231f356a6636/vue-admin"',
}

109
cs.html Normal file
View File

@@ -0,0 +1,109 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>three.js使用Echarts贴图</title>
<script src="../js/three.js"></script>
<script src="../js/controls/OrbitControls.js"></script>
<script src="./echarts.js"></script>
</head>
<body>
<div id="webgl" style="width:512px;height: 512px;float: left;"></div>
<div id="echart" style="width:512px;height: 512px;margin-left: 620px;"></div>
<script>
var myChart = echarts.init(document.getElementById('echart'));
option = {
tooltip: {
formatter: "{a} <br/>{b} : {c}%"
},
// toolbox: {
// feature: {
// restore: {},
// saveAsImage: {}
// }
// },
series: [
{
name: '业务指标',
type: 'gauge',
detail: { formatter: '{value}%' },
data: [{ value: 50, name: '完成率' }]
}
]
};
option.series[0].data[0].value = (Math.random() * 100).toFixed(2) - 0;
myChart.setOption(option, true);
class Basescene {
constructor(dom) {
this.id = (new Date()).getTime();
this.dom = dom;
this.divWidth = this.dom.offsetWidth;
this.divHeight = this.dom.offsetHeight;
this.scene = new THREE.Scene();
this.camera = new THREE.PerspectiveCamera(45, this.divWidth / this.divHeight, 1, 2000);
this.renderer = new THREE.WebGLRenderer({
alpha: true,
antialias: true
});
this.controls = new THREE.OrbitControls(this.camera, this.renderer.domElement);
this.init();
}
init() {
this.camera.position.set(0, 0, 20);
this.camera.lookAt(this.scene.position);
this.renderer.setClearColor(0x222222);
this.renderer.setSize(this.divWidth, this.divHeight);
this.dom.appendChild(this.renderer.domElement);
// this.scene.add(new THREE.AxesHelper(10));
this.animate();
this.addLight();
console.log(this.scene);
}
addLight() {
const light = new THREE.AmbientLight(0xffffff);
this.scene.add(light);
}
render() {
this.renderer.render(this.scene, this.camera);
}
animate = () => {
this.request = requestAnimationFrame(this.animate);
this.render();
}
addPlane() {
var geometry = new THREE.PlaneGeometry(10, 10);
var material = new THREE.MeshBasicMaterial({
side: THREE.DoubleSide,
// transparent:true
});
this.plane = new THREE.Mesh(geometry, material);
this.scene.add(this.plane);
}
changeTextureE(texture) {
this.plane.material.map = new THREE.TextureLoader().load(texture)
this.plane.material.needsUpdate = true
}
changeTextureT(texture) {
this.plane.material.map = new THREE.CanvasTexture(texture)
this.plane.material.needsUpdate = true
}
}
const dom = document.getElementById("webgl");
const scene = new Basescene(dom);
scene.addPlane();
setTimeout(() => {
var thiscancas = document.getElementById("echart").getElementsByTagName('canvas')[0]
scene.changeTextureT(thiscancas)
}, 2000);
setTimeout(() => {
var texture = myChart.getDataURL({
pixelRatio: 4,
backgroundColor: '#fff'
});
scene.changeTextureE(texture)
}, 4000);
</script>
</body>
</html>

34151
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

388
package.json Normal file
View File

@@ -0,0 +1,388 @@
{
"name": "zhongchetv",
"version": "0.1.0",
"private": true,
"scripts": {
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"lint": "vue-cli-service lint",
"svgo": "svgo -f src/icons/svg --config=src/icons/svgo.yml"
},
"dependencies": {
"@jiaminghi/data-view": "^2.10.0",
"axios": "^0.21.4",
"echarts": "^5.3.1",
"element-ui": "^2.8.2",
"file-saver": "^2.0.2",
"js-cookie": "^2.2.1",
"js-export-excel": "^1.1.2",
"mint-ui": "^2.2.13",
"node-sass": "^4.14.1",
"qrcode": "^1.4.4",
"qs": "^6.9.0",
"sass-loader": "^7.3.1",
"video.js": "^7.20.3",
"videojs-flash": "^2.2.1",
"vue": "^2.6.6",
"vue-jsonp": "^0.1.8",
"vue-router": "^3.0.1",
"vue-seamless-scroll": "^1.1.23",
"vue-video-player": "^6.0.0",
"vuex": "^3.0.1",
"xlsx": "^0.17.1",
"xlsx-style": "^0.8.13"
},
"devDependencies": {
"@vue/cli-plugin-babel": "^3.5.0",
"@vue/cli-plugin-eslint": "^3.5.0",
"@vue/cli-service": "^3.5.0",
"babel-eslint": "^10.0.1",
"eslint": "^5.8.0",
"eslint-plugin-vue": "^5.0.0",
"jquery": "^2.2.4",
"node-sass": "^4.14.1",
"script-loader": "^0.7.2",
"svg-sprite-loader": "^5.1.1",
"vue-particles": "^1.0.9",
"vue-template-compiler": "^2.5.21"
},
"eslintConfig": {
"root": true,
"env": {
"node": true
},
"extends": [
"plugin:vue/essential",
"eslint:recommended"
],
"rules": {
"vue/max-attributes-per-line": [
2,
{
"singleline": 10,
"multiline": {
"max": 1,
"allowFirstLine": false
}
}
],
"vue/name-property-casing": [
"error",
"PascalCase"
],
"accessor-pairs": 2,
"arrow-spacing": [
2,
{
"before": true,
"after": true
}
],
"block-spacing": [
2,
"always"
],
"brace-style": [
2,
"1tbs",
{
"allowSingleLine": true
}
],
"camelcase": [
0,
{
"properties": "always"
}
],
"comma-dangle": [
2,
"never"
],
"comma-spacing": [
2,
{
"before": false,
"after": true
}
],
"comma-style": [
2,
"last"
],
"constructor-super": 2,
"curly": [
2,
"multi-line"
],
"dot-location": [
2,
"property"
],
"eol-last": 2,
"eqeqeq": [
2,
"allow-null"
],
"generator-star-spacing": [
2,
{
"before": true,
"after": true
}
],
"handle-callback-err": [
2,
"^(err|error)$"
],
"indent": [
2,
2,
{
"SwitchCase": 1
}
],
"jsx-quotes": [
2,
"prefer-single"
],
"key-spacing": [
2,
{
"beforeColon": false,
"afterColon": true
}
],
"keyword-spacing": [
2,
{
"before": true,
"after": true
}
],
"new-cap": [
2,
{
"newIsCap": true,
"capIsNew": false
}
],
"new-parens": 2,
"no-array-constructor": 2,
"no-caller": 2,
"no-console": "off",
"no-class-assign": 2,
"no-cond-assign": 2,
"no-const-assign": 2,
"no-control-regex": 2,
"no-delete-var": 2,
"no-dupe-args": 2,
"no-dupe-class-members": 2,
"no-dupe-keys": 2,
"no-duplicate-case": 2,
"no-empty-character-class": 2,
"no-empty-pattern": 2,
"no-eval": 2,
"no-ex-assign": 2,
"no-extend-native": 2,
"no-extra-bind": 2,
"no-extra-boolean-cast": 2,
"no-extra-parens": [
2,
"functions"
],
"no-fallthrough": 2,
"no-floating-decimal": 2,
"no-func-assign": 2,
"no-implied-eval": 2,
"no-inner-declarations": [
2,
"functions"
],
"no-invalid-regexp": 2,
"no-irregular-whitespace": 2,
"no-iterator": 2,
"no-label-var": 2,
"no-labels": [
2,
{
"allowLoop": false,
"allowSwitch": false
}
],
"no-lone-blocks": 2,
"no-mixed-spaces-and-tabs": 2,
"no-multi-spaces": 2,
"no-multi-str": 2,
"no-multiple-empty-lines": [
2,
{
"max": 1
}
],
"no-native-reassign": 2,
"no-negated-in-lhs": 2,
"no-new-object": 2,
"no-new-require": 2,
"no-new-symbol": 2,
"no-new-wrappers": 2,
"no-obj-calls": 2,
"no-octal": 2,
"no-octal-escape": 2,
"no-path-concat": 2,
"no-proto": 2,
"no-redeclare": 2,
"no-regex-spaces": 2,
"no-return-assign": [
2,
"except-parens"
],
"no-self-assign": 2,
"no-self-compare": 2,
"no-sequences": 2,
"no-shadow-restricted-names": 2,
"no-spaced-func": 2,
"no-sparse-arrays": 2,
"no-this-before-super": 2,
"no-throw-literal": 2,
"no-trailing-spaces": 2,
"no-undef": 2,
"no-undef-init": 2,
"no-unexpected-multiline": 2,
"no-unmodified-loop-condition": 2,
"no-unneeded-ternary": [
2,
{
"defaultAssignment": false
}
],
"no-unreachable": 2,
"no-unsafe-finally": 2,
"no-unused-vars": [
2,
{
"vars": "all",
"args": "none"
}
],
"no-useless-call": 2,
"no-useless-computed-key": 2,
"no-useless-constructor": 2,
"no-useless-escape": 0,
"no-whitespace-before-property": 2,
"no-with": 2,
"one-var": [
2,
{
"initialized": "never"
}
],
"operator-linebreak": [
2,
"after",
{
"overrides": {
"?": "before",
":": "before"
}
}
],
"padded-blocks": [
2,
"never"
],
"quotes": [
2,
"single",
{
"avoidEscape": true,
"allowTemplateLiterals": true
}
],
"semi": [
2,
"never"
],
"semi-spacing": [
2,
{
"before": false,
"after": true
}
],
"space-before-blocks": [
2,
"always"
],
"space-before-function-paren": [
2,
"never"
],
"space-in-parens": [
2,
"never"
],
"space-infix-ops": 2,
"space-unary-ops": [
2,
{
"words": true,
"nonwords": false
}
],
"spaced-comment": [
2,
"always",
{
"markers": [
"global",
"globals",
"eslint",
"eslint-disable",
"*package",
"!",
","
]
}
],
"template-curly-spacing": [
2,
"never"
],
"use-isnan": 2,
"valid-typeof": 2,
"wrap-iife": [
2,
"any"
],
"yield-star-spacing": [
2,
"both"
],
"yoda": [
2,
"never"
],
"prefer-const": 2,
"object-curly-spacing": [
2,
"always",
{
"objectsInObjects": false
}
],
"array-bracket-spacing": [
2,
"never"
]
},
"parserOptions": {
"parser": "babel-eslint"
}
},
"browserslist": [
"> 1%",
"last 2 versions",
"not ie <= 8"
]
}

16
public/config.js Normal file
View File

@@ -0,0 +1,16 @@
window.dt_Config = {
// serverAddress: 'http://127.0.0.1:10056/submit/MESCommonBase.ashx'
serverAddress: 'http://124.220.15.242:9020/submit/MESCommonBase.ashx',
// serverAddress: 'http://10.16.7.30:8010/submit/MESCommonBase.ashx',
// serverAddress: 'http://10.16.7.30:8020/submit/MESCommonBase.ashx', // 假数据
// scrDt: 'http://10.22.20.9:8970/#/',
// src: 'http://localhost:8301',
// src1: 'http://localhost:8302',
// src2: 'http://localhost:8303'
scrDt: 'http://10.22.20.9:80',
src: '34',
src1: '38',
src2: '51',
servicePlc_1_url: 'http://10.22.20.9:41186/api/PLC1'
}

BIN
public/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

33
public/index.html Normal file
View File

@@ -0,0 +1,33 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<!-- <meta name="viewport" content="width=device-width,initial-scale=1.0"> -->
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
<title>设备信息展示平台</title>
<script type="text/javascript">
document.write("<script src='./config.js?v=" + new Date().getTime() + "'><\/script>");
</script>
<script src="./NJZZMonitoringDemo/jquery-1.7.1.min.js"></script>
<script id="videonode" src="./NJZZMonitoringDemo/webVideoCtrl.js"></script>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
</head>
<body>
<noscript>
<strong>We're sorry but gaojingtv doesn't work properly without JavaScript enabled. Please enable it to
continue.</strong>
</noscript>
<div id="app"></div>
<!-- built files will be auto injected -->
</body>
</html>
<style slot-scope="true">
body {
/*background-color: #5B9BD5;*/
/*background:rgba(0,0,0,0.2);*/
}
</style>

21
src/App.vue Normal file
View File

@@ -0,0 +1,21 @@
<template>
<div id="app">
<div id="nav">
<!--<router-link to="/">Home</router-link> |-->
<!--<router-link to="/about">About</router-link>-->
</div>
<keep-alive>
<router-view v-if="this.$route.meta.keepAlive"/>
</keep-alive>
<router-view v-if="!this.$route.meta.keepAlive"/>
</div>
</template>
<style>
#app {
font-family: 'Avenir', Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
color: #2c3e50;
}
</style>

View File

@@ -0,0 +1,24 @@
import request from '@/utils/request'
// 电子看板_线体上下线数量统计_查询
export function ANDON_select() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: 'ANDON_大屏幕显示',
param: 'WorkShopType=A'
}
})
}
export function deleteANDON(param1, param2, param3, param4, param5) {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: 'MES_机加工MES_设备数据采集_报警信息处理_大屏幕',
param: '时间_check=' + param1 + '&开始时间=' + param2 + '&结束时间=' + param3 + '&工位号=' + param4 + '&报警类型=' + param5
}
})
}

View File

@@ -0,0 +1,69 @@
import request from '@/utils/request'
export function getData(num, num1, pageCurrent, pageSize) {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '车间生产管理_设备运行情况_查询数据',
param: '工位号=' + num + '&日期=' + num1,
pagination: pageCurrent + '&' + pageSize
}
})
}
export function getData1(num) {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '车间生产管理_设备运行情况_查询数据_全员',
param: '日期=' + num
}
})
}
export function getData2(num, num1, num2) {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '车间生产管理_设备运行情况_查询数据_折线图',
param: '工位号=' + num + '&开始时间=' + num1 + '&结束时间=' + num2
}
})
}
export function getData3(num, num1, num2) {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '车间生产管理_设备运行情况_查询数据_状态分布图',
param: '工位号=' + num + '&开始时间=' + num1 + '&结束时间=' + num2
}
})
}
// 初始化 人员和工位
export function getMachine() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: 'MES_机加工MES_工位名称_查询'
}
})
}
// 初始化 状态
export function searchState() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: 'MES_机加工MES_设备状态查询_初始化'
}
})
}

24
src/api/TVA.js Normal file
View File

@@ -0,0 +1,24 @@
import request from '@/utils/request'
export function machineTypeSelect(num, num1, num2, num3, num4) {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: 'MES_机加工MES_设备数据采集_预测性维修修改_修改',
param: '工位号=' + num + '&运行时间=' + num1 + '&运行周期=' + num2 + '&备注=' + num3 + '&维护项目ID=' + num4
}
})
}
export function machineTypeEdit(num, num1) {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: 'MES_机加工MES_设备数据采集_预测性维修维护_维护',
param: '工位号=' + num + '&@维护项目ID=' + num1
}
})
}

34
src/api/TVC.js Normal file
View File

@@ -0,0 +1,34 @@
import request from '@/utils/request'
// 电子看板_线体上下线数量统计_查询
export function ANDON_select() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: 'ANDON_大屏幕显示',
param: 'WorkShopType=A'
}
})
}
//
export function progressSpeed() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: 'ANDON_订单信息_查询'
}
})
}
export function ANDON_countselect() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: 'ANDON_实时呼叫分类统计_查询'
}
})
}

156
src/api/digitalSignage.js Normal file
View File

@@ -0,0 +1,156 @@
import request from '@/utils/request'
// 电子看板_线体上下线数量统计_查询
export function numberCount() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: 'MES_机加工MES_设备数据采集_设备实时电流电压_查询'
}
})
}
// 电子看板_计划产量更新_大柴
export function ConfirmSubmit() {
return request({
url: '',
method: 'post',
data: {
type: '2',
name: '电子看板_计划产量更新_大柴',
param: '今日目标=' + arguments[0] + '&当班目标=' + arguments[1]
}
})
}
// 电子看板_历史订单查询_大柴
export function histroyorder() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '电子看板_历史订单查询_大柴'
}
})
}
// 获取开机时间
export function switchontime() {
return request({
url: '',
method: 'post',
data: {
type: '3',
name: 'select top 1 开关机时间 from[dbo].[MES_机加工MES_设备数据采集_开关机状态_历史数据表] where 工位号 = \'OP6010\' and 开关机状态代码 = \'1\' order by 序号 desc'
}
})
}
// 获取关机机时间
export function switchofftime() {
return request({
url: '',
method: 'post',
data: {
type: '3',
name: 'select top 1 开关机时间 from[dbo].[MES_机加工MES_设备数据采集_开关机状态_历史数据表] where 工位号 = \'OP6010\' and 开关机状态代码 = \'0\' order by 序号 desc'
}
})
}
// 获取设备利用率
export function obtainequipmentutilization() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '设备利用率负载率_查询_大屏幕'
}
})
}
// 电子看板_工位缺陷统计_查询
export function defectSelect() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '电子看板_工位缺陷统计_查询'
}
})
}
// 电子看板_班次产量_查询
export function classSelect() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '电子看板_班次产量_查询'
}
})
}
// 电子看板_OEE_查询
export function OEESelect() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '电子看板_OEE_查询'
}
})
}
// 大柴OEE柱状图
export function histogram() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '测量数据_过站信息_瓶颈工位显示'
}
})
}
// 大柴内装柱状图
export function histogram51() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '测量数据_过站信息_内装瓶颈工位显示top10'
}
})
}
// 大柴外装柱状图
export function histogram52() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '测量数据_过站信息_外装瓶颈工位显示top10'
}
})
}
// 电子看板_工位缺陷统计_查询
export function getStates() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: 'MES_设备数据采集_查询额定电流'
}
})
}
export function machineTypeSelect() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: 'MES_设备数据采集_备件直采_查询',
param: '工位号_check=' + arguments[0] + '&工位号=' + arguments[1]
}
})
}

133
src/api/test.js Normal file
View File

@@ -0,0 +1,133 @@
import request from '@/utils/request'
// 判断登陆角色
export function judgeRole() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '菜单模块系统_人员角色_查询数据_根据人角色编号',
param: '编号=' + arguments[0]
}
})
}
// 初始化MU
export function initMU() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '菜单模块系统_人员角色_查询数据_父节点_部门查询',
param: '人员编号=' + arguments[0] + '&部门代码=' + '0'
}
})
}
// 查询生产奖金
export function searchBonus() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '奖金绩效系统_蓝领奖金基数查询',
param: '月份=' + arguments[0] + '&MU_Department=' + arguments[1]
}
})
}
// 除MU外部门查询Segment
export function selectSegment() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '菜单模块系统_人员角色_查询数据_父节点_部门查询',
param: '人员编号=' + arguments[0] + '&部门代码=' + arguments[1]
}
})
}
// MU查询Segment
export function selectSegmentForMU() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '菜单模块系统_人员角色_查询数据_父节点_Segment',
param: '人员编号=' + arguments[0] + '&部门代码=' + arguments[1]
}
})
}
// 除Segment外部门查询PV
export function selectPV() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '菜单模块系统_人员角色_查询数据_父节点_部门查询',
param: '人员编号=' + arguments[0] + '&部门代码=' + arguments[1]
}
})
}
// Segment查询PV
export function selectPVForSegment() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '菜单模块系统_人员角色_查询数据_父节点_PV',
param: '人员编号=' + arguments[0] + '&部门代码=' + arguments[1]
}
})
}
// 执行保存
export function handleSave() {
return request({
url: '',
method: 'post',
data: {
type: '2',
name: '奖金绩效系统_蓝领奖金基数修改_MU',
param: 'id=' + arguments[0] + '&奖金基数=' + arguments[1]
}
})
}
// 确认审核
export function ConfirmSubmit() {
return request({
url: '',
method: 'post',
data: {
type: '2',
name: '奖金绩效系统_蓝领奖金基数确认审核_MU',
param: '月份=' + arguments[0] + '&MU_Department=' + arguments[1]
}
})
}
// 是否确认审核
export function isCanConfirmSubmit() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '奖金绩效系统_蓝领奖金基数确认审核_是否可以审核',
param: '月份=' + arguments[0] + '&MU_Department=' + arguments[1]
}
})
}
// 查询冻结权限
export function initrole() {
return request({
url: '',
method: 'post',
data: {
type: '1',
name: '输入权限判断'
}
})
}

BIN
src/assets/image/GQlogo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

BIN
src/assets/image/MT.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

BIN
src/assets/image/OP1010.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 MiB

BIN
src/assets/image/OP1010.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 MiB

BIN
src/assets/image/OP1020.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 MiB

BIN
src/assets/image/OP1030.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 MiB

BIN
src/assets/image/OP6010.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 104 KiB

BIN
src/assets/image/OP6010.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 104 KiB

BIN
src/assets/image/OP6020.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 566 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 765 KiB

BIN
src/assets/image/OP6030.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 313 KiB

BIN
src/assets/image/OP6040.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 413 KiB

BIN
src/assets/image/OP6050.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 422 KiB

BIN
src/assets/image/OP6060.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 427 KiB

BIN
src/assets/image/OP6070.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 524 KiB

BIN
src/assets/image/OP6080.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 483 KiB

BIN
src/assets/image/OP6090.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 360 KiB

BIN
src/assets/image/OP6100.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 490 KiB

BIN
src/assets/image/OP6110.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 439 KiB

BIN
src/assets/image/OP6120.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 383 KiB

BIN
src/assets/image/OP6130.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 400 KiB

BIN
src/assets/image/OP6140.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 511 KiB

BIN
src/assets/image/OP6150.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 352 KiB

BIN
src/assets/image/OP6160.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 460 KiB

BIN
src/assets/image/OP6170.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 388 KiB

BIN
src/assets/image/OP6180.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 651 KiB

BIN
src/assets/image/OP6190.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 769 KiB

BIN
src/assets/image/OP6200.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 431 KiB

BIN
src/assets/image/OP6210.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 431 KiB

BIN
src/assets/image/WCLOGO.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 159 KiB

BIN
src/assets/image/s1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
src/assets/image/s2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

BIN
src/assets/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

View File

@@ -0,0 +1,43 @@
<template>
<svg :class="svgClass" aria-hidden="true">
<use :xlink:href="iconName"/>
</svg>
</template>
<script>
export default {
name: 'SvgIcon',
props: {
iconClass: {
type: String,
required: true
},
className: {
type: String,
default: ''
}
},
computed: {
iconName() {
return `#icon-${this.iconClass}`
},
svgClass() {
if (this.className) {
return 'svg-icon ' + this.className
} else {
return 'svg-icon'
}
}
}
}
</script>
<style scoped>
.svg-icon {
width: 1em;
height: 1em;
vertical-align: -0.15em;
fill: currentColor;
overflow: hidden;
}
</style>

370
src/icon/demo.css Normal file
View File

@@ -0,0 +1,370 @@
*{margin: 0;padding: 0;list-style: none;}
/*
KISSY CSS Reset
理念1. reset 的目的不是清除浏览器的默认样式,这仅是部分工作。清除和重置是紧密不可分的。
2. reset 的目的不是让默认样式在所有浏览器下一致,而是减少默认样式有可能带来的问题。
3. reset 期望提供一套普适通用的基础样式。但没有银弹,推荐根据具体需求,裁剪和修改后再使用。
特色1. 适应中文2. 基于最新主流浏览器。
维护:玉伯<lifesinger@gmail.com>, 正淳<ragecarrier@gmail.com>
*/
/** 清除内外边距 **/
body, h1, h2, h3, h4, h5, h6, hr, p, blockquote, /* structural elements 结构元素 */
dl, dt, dd, ul, ol, li, /* list elements 列表元素 */
pre, /* text formatting elements 文本格式元素 */
form, fieldset, legend, button, input, textarea, /* form elements 表单元素 */
th, td /* table elements 表格元素 */ {
margin: 0;
padding: 0;
}
/** 设置默认字体 **/
body,
button, input, select, textarea /* for ie */ {
font: 12px/1.5 tahoma, arial, \5b8b\4f53, sans-serif;
}
h1, h2, h3, h4, h5, h6 { font-size: 100%; }
address, cite, dfn, em, var { font-style: normal; } /* 将斜体扶正 */
code, kbd, pre, samp { font-family: courier new, courier, monospace; } /* 统一等宽字体 */
small { font-size: 12px; } /* 小于 12px 的中文很难阅读,让 small 正常化 */
/** 重置列表元素 **/
ul, ol { list-style: none; }
/** 重置文本格式元素 **/
a { text-decoration: none; }
a:hover { text-decoration: underline; }
/** 重置表单元素 **/
legend { color: #000; } /* for ie6 */
fieldset, img { border: 0; } /* img 搭车:让链接里的 img 无边框 */
button, input, select, textarea { font-size: 100%; } /* 使得表单元素在 ie 下能继承字体大小 */
/* 注optgroup 无法扶正 */
/** 重置表格元素 **/
table { border-collapse: collapse; border-spacing: 0; }
/* 清除浮动 */
.ks-clear:after, .clear:after {
content: '\20';
display: block;
height: 0;
clear: both;
}
.ks-clear, .clear {
*zoom: 1;
}
.main {
padding: 30px 100px;
width: 960px;
margin: 0 auto;
}
.main h1{font-size:36px; color:#333; text-align:left;margin-bottom:30px; border-bottom: 1px solid #eee;}
.helps{margin-top:40px;}
.helps pre{
padding:20px;
margin:10px 0;
border:solid 1px #e7e1cd;
background-color: #fffdef;
overflow: auto;
}
.icon_lists{
width: 100% !important;
}
.icon_lists li{
float:left;
width: 100px;
height:180px;
text-align: center;
list-style: none !important;
}
.icon_lists .icon{
font-size: 42px;
line-height: 100px;
margin: 10px 0;
color:#333;
-webkit-transition: font-size 0.25s ease-out 0s;
-moz-transition: font-size 0.25s ease-out 0s;
transition: font-size 0.25s ease-out 0s;
}
.icon_lists .icon:hover{
font-size: 100px;
}
.markdown {
color: #666;
font-size: 14px;
line-height: 1.8;
}
.highlight {
line-height: 1.5;
}
.markdown img {
vertical-align: middle;
max-width: 100%;
}
.markdown h1 {
color: #404040;
font-weight: 500;
line-height: 40px;
margin-bottom: 24px;
}
.markdown h2,
.markdown h3,
.markdown h4,
.markdown h5,
.markdown h6 {
color: #404040;
margin: 1.6em 0 0.6em 0;
font-weight: 500;
clear: both;
}
.markdown h1 {
font-size: 28px;
}
.markdown h2 {
font-size: 22px;
}
.markdown h3 {
font-size: 16px;
}
.markdown h4 {
font-size: 14px;
}
.markdown h5 {
font-size: 12px;
}
.markdown h6 {
font-size: 12px;
}
.markdown hr {
height: 1px;
border: 0;
background: #e9e9e9;
margin: 16px 0;
clear: both;
}
.markdown p,
.markdown pre {
margin: 1em 0;
}
.markdown > p,
.markdown > blockquote,
.markdown > .highlight,
.markdown > ol,
.markdown > ul {
width: 80%;
}
.markdown ul > li {
list-style: circle;
}
.markdown > ul li,
.markdown blockquote ul > li {
margin-left: 20px;
padding-left: 4px;
}
.markdown > ul li p,
.markdown > ol li p {
margin: 0.6em 0;
}
.markdown ol > li {
list-style: decimal;
}
.markdown > ol li,
.markdown blockquote ol > li {
margin-left: 20px;
padding-left: 4px;
}
.markdown code {
margin: 0 3px;
padding: 0 5px;
background: #eee;
border-radius: 3px;
}
.markdown pre {
border-radius: 6px;
background: #f7f7f7;
padding: 20px;
}
.markdown pre code {
border: none;
background: #f7f7f7;
margin: 0;
}
.markdown strong,
.markdown b {
font-weight: 600;
}
.markdown > table {
border-collapse: collapse;
border-spacing: 0px;
empty-cells: show;
border: 1px solid #e9e9e9;
width: 95%;
margin-bottom: 24px;
}
.markdown > table th {
white-space: nowrap;
color: #333;
font-weight: 600;
}
.markdown > table th,
.markdown > table td {
border: 1px solid #e9e9e9;
padding: 8px 16px;
text-align: left;
}
.markdown > table th {
background: #F7F7F7;
}
.markdown blockquote {
font-size: 90%;
color: #999;
border-left: 4px solid #e9e9e9;
padding-left: 0.8em;
margin: 1em 0;
font-style: italic;
}
.markdown blockquote p {
margin: 0;
}
.markdown .anchor {
opacity: 0;
transition: opacity 0.3s ease;
margin-left: 8px;
}
.markdown .waiting {
color: #ccc;
}
.markdown h1:hover .anchor,
.markdown h2:hover .anchor,
.markdown h3:hover .anchor,
.markdown h4:hover .anchor,
.markdown h5:hover .anchor,
.markdown h6:hover .anchor {
opacity: 1;
display: inline-block;
}
.markdown > br,
.markdown > p > br {
clear: both;
}
.hljs {
display: block;
background: white;
padding: 0.5em;
color: #333333;
overflow-x: auto;
}
.hljs-comment,
.hljs-meta {
color: #969896;
}
.hljs-string,
.hljs-variable,
.hljs-template-variable,
.hljs-strong,
.hljs-emphasis,
.hljs-quote {
color: #df5000;
}
.hljs-keyword,
.hljs-selector-tag,
.hljs-type {
color: #a71d5d;
}
.hljs-literal,
.hljs-symbol,
.hljs-bullet,
.hljs-attribute {
color: #0086b3;
}
.hljs-section,
.hljs-name {
color: #63a35c;
}
.hljs-tag {
color: #333333;
}
.hljs-title,
.hljs-attr,
.hljs-selector-id,
.hljs-selector-class,
.hljs-selector-attr,
.hljs-selector-pseudo {
color: #795da3;
}
.hljs-addition {
color: #55a532;
background-color: #eaffea;
}
.hljs-deletion {
color: #bd2c00;
background-color: #ffecec;
}
.hljs-link {
text-decoration: underline;
}
pre{
background: #fff;
}

30
src/icon/iconfont.css Normal file
View File

@@ -0,0 +1,30 @@
@font-face {font-family: "fontFamily";
src: url('iconfont.eot?t=1527493375212'); /* IE9*/
src: url('iconfont.eot?t=1527493375212#iefix') format('embedded-opentype'), /* IE6-IE8 */
url('data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAAXoAAsAAAAACHwAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADMAAABCsP6z7U9TLzIAAAE8AAAARAAAAFZW7kf3Y21hcAAAAYAAAABjAAABnM7GacRnbHlmAAAB5AAAAfsAAAIsdf0weGhlYWQAAAPgAAAALwAAADYRguv+aGhlYQAABBAAAAAcAAAAJAfeA4VobXR4AAAELAAAABAAAAAQD+kAAGxvY2EAAAQ8AAAACgAAAAoBjAC6bWF4cAAABEgAAAAfAAAAIAEaAF1uYW1lAAAEaAAAAVMAAAKFV8s9R3Bvc3QAAAW8AAAAKgAAADsY6RIYeJxjYGRgYOBikGPQYWB0cfMJYeBgYGGAAJAMY05meiJQDMoDyrGAaQ4gZoOIAgCKIwNPAHicY2Bk/sU4gYGVgYOpk+kMAwNDP4RmfM1gxMjBwMDEwMrMgBUEpLmmMDgwVDzjZm7438AQw9zA0AAUZgTJAQAk0wx5eJzFkNENgCAMRK+ChIij+GkcyC9HYOKugdfCDxNw5JX2ckkJAHYAgVwkAvJBYHrpivsBh/sRD+fMs/GumrS0NnUm8UT2LlhSEpZJ1q2edXq9x2T/XQd8oqaO+Vo62H4fLw+3AHicLZC/b9NAFMffu6udpM0PbMdx4jQ/LhfXoDRBtpN2IGkXkArNgNQpKkiNYlSBRNd2YKiQEB0YWFDFCkiIiYEfytAJVbDTv6CFjYXSFhbsckE53dP3fZ/e6X3egQRwfkj3aBY0uAgOXIWbACjXsJIkBWR2s0FqqDNJN9JJanObRXilQTtoVOR0xp1rzhhyRE5hEovoMXfObhAbW80FcgXdTAExlzdXVGtapU9xMmsXH4U3yAvUS3w6tVAPr88upt2yFt2Mq2pOVZ9EZUmKEjKRSuJ9IxOTYpNy+EpKmfpe6RIpYTxnm91eopxX+zvNjYJlxBC3t1HLl5OvFxVTEfeBmdHUXORCIpo1E7yaxs3vU1ktXpj5BuJExK7P6A/agwmIQhxyUAAGltiXKUyxmM5GicaF4Yqns5ZnoCjqns5RBK0GlO4Hy7gTbuFRcESKu6vBvdVdAurL4DF2w/cHB1jvdGjvb5uy9Q/B3VFt1E27x8cPw2vtdpt83QIxGc6f0190A6hgmoKU+HsD8lACDpfBg3kAQ4AYo5ljRcFEecuTRG6NeSzeEpj/QTkVfl5EFofh0trp6dpY8RMOBycnwbLrkpLjBIdC3w1+zvaxduez73/x/XUc3jrDjzi8/RtXwiXx7u2Z7zhOmHbq+8JXB3/CN/1+H+AfnVR/vQB4nGNgZGBgAOLuWSW34/ltvjJwszCAwHXDy/8R9P+pLAzMeUAuBwMTSBQAWOoL7AB4nGNgZGBgbvjfwBDDwgACQJKRARWwAABHCgJtBAAAAAPpAAAEAAAABAAAAAAAAAAAdgC6ARYAAHicY2BkYGBgYQhk4GEAASYg5gJCBob/YD4DABGzAXgAeJxtkk1uwjAQhZ/LT9UgddHSdlmvWBQp/CzZooZlJRbsQ3AgKIkjxyDRXQ/Q8/QQPUE3vUHv0EcwQkIk8uibN2/GthIAd/iFwOF54DqwgMfswFe4xrPjGvWO4zq577iBFkaOm9RfHXvo4s1xC/d45wRRv2H2gk/HAm18Ob7CLb4d16j/OK6T/xw38CiE4yba4smxh5noOm6hIz68sVGhVQs538kk0nmsc+vtQxBmSbqbquUmDc1JONFMmTLRuRz4/ZM4Ubkyx3nldjm0Npax0ZkM6FFpqmVh9FpF1l9ZW4x6vdjpfqQzHm8MA4UQlnEBiTl2jAkiaOSIq2jpO1JAb8Z6St+UPUtsyCGnXHJc0mbsMiiZ7WsSA/j8ZJecEzrzyn1+vhJb7jykatkpuQz7M1Lg5ihOSMkSRVVbU4mo+1hVXQV/jR7f+MzvVzfP/gHCFnRdAHicY2BigAAuBuyAhZGJkZmRhZGVgbGCycCSI7WoPDUzN9GQgQEAJkQEKgAA') format('woff'),
url('iconfont.ttf?t=1527493375212') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
url('iconfont.svg?t=1527493375212#fontFamily') format('svg'); /* iOS 4.1- */
}
.fontFamily {
font-family:"fontFamily" !important;
font-size:16px;
font-style:normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
[class^="el-icon-cjn"], [class*=" el-icon-cjn"] {
font-family:"fontFamily" !important;
/* 以下内容参照第三方图标库本身的规则 */
font-size: 13px;
font-style:normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.el-icon-cjn-09:before { content: "\e60b"; }
.el-icon-cjn-erweima1:before { content: "\e606"; }

BIN
src/icon/iconfont.eot Normal file

Binary file not shown.

1
src/icon/iconfont.js Normal file
View File

@@ -0,0 +1 @@
(function(window) { var svgSprite = '<svg><symbol id="el-icon-cjn-09" viewBox="0 0 1024 1024"><path d="M804.141176 39.152941H39.152941v963.764706h963.764706V201.788235l-198.776471-162.635294z m-493.929411 60.235294h391.529411v180.705883h-391.529411v-180.705883z m481.882353 843.294118h-542.117647v-331.294118h542.117647v331.294118z m150.588235 0h-90.352941v-391.529412h-662.588236v391.529412h-90.352941v-843.294118h150.588236v240.941177h512v-240.941177h18.070588l162.635294 129.505883v713.788235z" fill="#2c2c2c" ></path><path d="M310.211765 671.623529h331.294117v60.235295h-331.294117zM310.211765 792.094118h210.823529v60.235294h-210.823529zM611.388235 129.505882h60.235294v120.470589h-60.235294z" fill="#2c2c2c" ></path></symbol><symbol id="el-icon-cjn-erweima1" viewBox="0 0 1024 1024"><path d="M23.92225303 998.84837371l439.58598408 0L463.50823711 559.26238962 23.92225303 559.26238962 23.92225303 998.84837371zM119.78212494 651.01398129l243.75796004 0 0 245.12738674L119.78212494 896.14136803 119.78212494 651.01398129z" ></path><path d="M23.92225303 457.92481072l439.58598408 0 0-439.58598412L23.92225303 18.33882658 23.92225303 457.92481072zM119.78212494 111.45984508l243.75796004 0 0 245.12738672L119.78212494 356.5872318 119.78212494 111.45984508z" ></path><path d="M570.32352297 18.33882658l0 439.58598414L1009.90950704 457.92481072l0-439.58598412L570.32352297 18.33882658zM911.31078166 355.21780509L667.55282162 355.21780509l0-245.12738681 243.75796004 0L911.31078166 355.21780509z" ></path><path d="M218.38085034 210.05857039l49.29936273 0 0 49.29936276-49.29936273 0 0-49.29936276Z" ></path><path d="M760.67384005 210.05857039l49.29936271 0 0 49.29936276-49.29936273 0 0-49.29936276Z" ></path><path d="M218.38085034 750.98213347l49.29936273 0 0 49.29936266-49.29936273 0 0-49.29936266Z" ></path><path d="M908.57192818 755.09041369L809.97320276 755.09041369 809.97320276 559.26238962 570.32352297 559.26238962 570.32352297 998.84837371 614.14517874 998.84837371 614.14517874 707.16047766 711.37447735 707.16047766 711.37447735 805.75920314 1009.90950704 805.75920314 1009.90950704 559.26238962 908.57192818 559.26238962Z" ></path><path d="M711.37447735 901.61907503l99.96815218 0 0 97.22929868-99.96815218 0 0-97.22929868Z" ></path><path d="M909.94135491 901.61907503l99.96815213 0 0 97.22929868-99.96815213 0 0-97.22929868Z" ></path></symbol></svg>'; var script = (function() { var scripts = document.getElementsByTagName('script'); return scripts[scripts.length - 1] }()); var shouldInjectCss = script.getAttribute('data-injectcss'); var ready = function(fn) { if (document.addEventListener) { if (~['complete', 'loaded', 'interactive'].indexOf(document.readyState)) { setTimeout(fn, 0) } else { var loadFn = function() { document.removeEventListener('DOMContentLoaded', loadFn, false); fn() }; document.addEventListener('DOMContentLoaded', loadFn, false) } } else if (document.attachEvent) { IEContentLoaded(window, fn) } function IEContentLoaded(w, fn) { var d = w.document, done = false, init = function() { if (!done) { done = true; fn() } }; var polling = function() { try { d.documentElement.doScroll('left') } catch (e) { setTimeout(polling, 50); return }init() }; polling(); d.onreadystatechange = function() { if (d.readyState == 'complete') { d.onreadystatechange = null; init() } } } }; var before = function(el, target) { target.parentNode.insertBefore(el, target) }; var prepend = function(el, target) { if (target.firstChild) { before(el, target.firstChild) } else { target.appendChild(el) } }; function appendSvg() { var div, svg; div = document.createElement('div'); div.innerHTML = svgSprite; svgSprite = null; svg = div.getElementsByTagName('svg')[0]; if (svg) { svg.setAttribute('aria-hidden', 'true'); svg.style.position = 'absolute'; svg.style.width = 0; svg.style.height = 0; svg.style.overflow = 'hidden'; prepend(svg, document.body) } } if (shouldInjectCss && !window.__iconfont__svg__cssinject__) { window.__iconfont__svg__cssinject__ = true; try { document.write('<style>.svgfont {display: inline-block;width: 1em;height: 1em;fill: currentColor;vertical-align: -0.1em;font-size:16px;}</style>') } catch (e) { console && console.log(e) } }ready(appendSvg) })(window)

39
src/icon/iconfont.svg Normal file
View File

@@ -0,0 +1,39 @@
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<!--
2013-9-30: Created.
-->
<svg>
<metadata>
Created by iconfont
</metadata>
<defs>
<font id="fontFamily" horiz-adv-x="1024" >
<font-face
font-family="fontFamily"
font-weight="500"
font-stretch="normal"
units-per-em="1024"
ascent="896"
descent="-128"
/>
<missing-glyph />
<glyph glyph-name="x" unicode="x" horiz-adv-x="1001"
d="M281 543q-27 -1 -53 -1h-83q-18 0 -36.5 -6t-32.5 -18.5t-23 -32t-9 -45.5v-76h912v41q0 16 -0.5 30t-0.5 18q0 13 -5 29t-17 29.5t-31.5 22.5t-49.5 9h-133v-97h-438v97zM955 310v-52q0 -23 0.5 -52t0.5 -58t-10.5 -47.5t-26 -30t-33 -16t-31.5 -4.5q-14 -1 -29.5 -0.5
t-29.5 0.5h-32l-45 128h-439l-44 -128h-29h-34q-20 0 -45 1q-25 0 -41 9.5t-25.5 23t-13.5 29.5t-4 30v167h911zM163 247q-12 0 -21 -8.5t-9 -21.5t9 -21.5t21 -8.5q13 0 22 8.5t9 21.5t-9 21.5t-22 8.5zM316 123q-8 -26 -14 -48q-5 -19 -10.5 -37t-7.5 -25t-3 -15t1 -14.5
t9.5 -10.5t21.5 -4h37h67h81h80h64h36q23 0 34 12t2 38q-5 13 -9.5 30.5t-9.5 34.5q-5 19 -11 39h-368zM336 498v228q0 11 2.5 23t10 21.5t20.5 15.5t34 6h188q31 0 51.5 -14.5t20.5 -52.5v-227h-327z" />
<glyph glyph-name="09" unicode="&#58891;" d="M804.141 856.847h-764.988v-963.765h963.765v801.129l-198.776 162.635zM310.212 796.612h391.529v-180.706h-391.529v180.706zM792.094-46.682h-542.118v331.294h542.118v-331.294zM942.682-46.682h-90.353v391.529h-662.588v-391.529h-90.353v843.294h150.588v-240.941h512v240.941h18.071l162.635-129.506v-713.788zM310.212 224.376h331.294v-60.235h-331.294zM310.212 103.906h210.824v-60.235h-210.824zM611.388 766.494h60.235v-120.471h-60.235z" horiz-adv-x="1024" />
<glyph glyph-name="erweima1" unicode="&#58886;" d="M23.92225303-102.84837371000003l439.58598408 0L463.50823711 336.73761038 23.92225303 336.73761038 23.92225303-102.84837371000003zM119.78212494 244.98601871000005l243.75796004 0 0-245.12738674L119.78212494-0.1413680299999669 119.78212494 244.98601871000005zM23.92225303 438.07518928l439.58598408 0 0 439.58598412L23.92225303 877.66117342 23.92225303 438.07518928zM119.78212494 784.54015492l243.75796004 0 0-245.12738672L119.78212494 539.4127682000001 119.78212494 784.54015492zM570.32352297 877.66117342l0-439.58598414L1009.90950704 438.07518928l0 439.58598412L570.32352297 877.66117342zM911.31078166 540.78219491L667.55282162 540.78219491l0 245.12738681 243.75796004 0L911.31078166 540.78219491zM218.38085034 685.94142961l49.29936273 0 0-49.29936276-49.29936273 0 0 49.29936276ZM760.67384005 685.94142961l49.29936271 0 0-49.29936276-49.29936273 0 0 49.29936276ZM218.38085034 145.01786653l49.29936273 0 0-49.29936266-49.29936273 0 0 49.29936266ZM908.57192818 140.90958631L809.97320276 140.90958631 809.97320276 336.73761038 570.32352297 336.73761038 570.32352297-102.84837371000003 614.14517874-102.84837371000003 614.14517874 188.83952234000003 711.37447735 188.83952234000003 711.37447735 90.24079686000005 1009.90950704 90.24079686000005 1009.90950704 336.73761038 908.57192818 336.73761038ZM711.37447735-5.619075029999976l99.96815218 0 0-97.22929868-99.96815218 0 0 97.22929868ZM909.94135491-5.619075029999976l99.96815213 0 0-97.22929868-99.96815213 0 0 97.22929868Z" horiz-adv-x="1024" />
</font>
</defs></svg>

After

Width:  |  Height:  |  Size: 3.2 KiB

BIN
src/icon/iconfont.ttf Normal file

Binary file not shown.

BIN
src/icon/iconfont.woff Normal file

Binary file not shown.

9
src/icons/index.js Normal file
View File

@@ -0,0 +1,9 @@
import Vue from 'vue'
import SvgIcon from '@/components/SvgIcon' // svg组件
// register globally
Vue.component('svg-icon', SvgIcon)
const requireAll = requireContext => requireContext.keys().map(requireContext)
const req = require.context('./svg', false, /\.svg$/)
requireAll(req)

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M713.223 862.109v-31.181c42.873 0 81.85-19.488 109.133-46.772 23.386-27.283 42.875-62.362 42.875-105.235 0-38.977-19.488-74.055-42.875-101.338-27.283-27.284-66.26-42.874-109.133-42.874V499.63c50.669 0 97.441 19.488 132.52 54.567 31.18 31.181 50.668 74.055 50.668 124.725 0 50.669-19.488 97.441-50.669 128.621-35.078 35.078-81.85 54.566-132.52 54.566zm0-85.748c7.795 3.898 11.693 3.898 19.488 3.898 23.385 0 38.976-3.898 54.567-11.694V745.18c-15.59 7.795-31.182 11.693-50.67 11.693-7.795 0-15.59 0-23.385-3.898v23.386zm0-163.7c7.795-3.898 19.488-7.796 27.283-7.796 15.59 0 31.181 3.898 46.772 11.693v-23.385c-11.694-7.796-27.284-7.796-46.772-7.796h-27.283v27.284zm-97.44-428.74c7.795 7.795 19.488 15.59 27.283 23.385 35.079 35.08 54.567 77.953 54.567 128.622 0 50.669-19.488 97.441-54.567 132.52-7.795 7.795-19.488 15.59-27.283 23.385v-42.874l3.897-3.898c27.284-27.283 42.875-66.26 42.875-109.133 0-38.977-15.59-77.953-42.875-105.236l-3.897-3.898v-42.873zm97.44 315.708v35.08c-38.977 0-74.055 11.693-97.441 38.976V530.81c27.284-19.488 62.362-31.182 97.44-31.182zm0 85.748v27.284c-7.796 0-15.59 7.795-23.386 11.693-15.59 15.59-19.488 31.181-19.488 58.464 0 23.386 3.898 38.977 15.59 54.567 7.796 7.796 19.488 11.694 27.284 15.59v23.386c-19.488-3.898-35.079-11.693-46.771-23.386-15.59-19.488-23.386-42.873-23.386-70.158 0-31.18 7.796-54.566 27.283-70.157 11.693-11.692 27.284-19.487 42.874-27.283zm0 245.55v31.182c-35.079 0-70.158-11.693-97.441-31.181V791.95c23.386 23.387 58.465 38.977 97.44 38.977zM514.443 152.74c35.08 0 70.159 11.693 101.339 31.18v42.874c-27.284-23.385-62.363-38.976-101.338-38.976V152.74zm101.34 339.094c-31.181 19.488-66.26 27.283-101.338 27.283v-31.181c38.976 0 74.054-15.59 101.338-38.977v42.875zm0 38.976v42.874c-3.898 0-3.898 0-7.796 3.898-27.283 27.283-42.873 62.362-42.873 101.338 0 42.873 15.59 77.952 42.873 105.235l7.796 7.796v38.977c-11.694-3.898-23.386-11.694-31.181-23.386-31.182-31.181-54.567-77.952-54.567-128.621 0-50.67 23.385-93.544 54.567-124.725 11.692-11.692 19.487-15.59 31.18-23.386zM514.443 382.7v-23.385h31.182l-27.284-81.85c-3.897 0-3.897-3.898-3.897-11.694v-23.386h11.693l74.055 190.984h-27.284L553.42 382.7h-38.976zm0-229.96v35.079c-38.976 0-74.054 15.59-101.337 38.976v-42.873c31.18-19.489 62.362-31.182 101.338-31.182zm0 366.377c-38.976 0-70.157-7.795-101.337-27.283V448.96c27.283 23.386 62.362 38.977 101.338 38.977v31.18zm0-276.732v23.386c-3.897 3.898-3.897 11.693-3.897 11.693l-27.284 81.85h31.182V382.7h-38.977l-19.488 50.67h-27.283l74.054-190.985h11.694zm-101.337 592.44v-42.874l7.795-7.796c27.284-27.283 42.874-62.362 42.874-105.235 0-38.977-15.59-74.055-42.874-101.338-3.898-3.898-3.898-3.898-7.795-3.898V530.81c11.693 7.796 19.487 15.59 31.18 23.386 31.182 31.181 50.67 74.055 50.67 124.725h3.898-3.898c0 50.669-19.488 97.44-50.67 128.621-11.693 11.693-19.488 19.489-31.18 27.283zm0-342.991c-11.694-7.796-19.488-15.59-27.284-23.386-35.079-35.079-54.567-81.85-54.567-132.52 0-50.668 19.488-93.543 54.567-128.62 7.796-7.796 19.488-15.59 27.284-23.386v42.873l-3.898 3.898c-27.284 27.284-46.771 66.26-46.771 105.236 0 42.873 19.487 81.85 46.77 109.133l3.899 3.898v42.874zm0 38.976v42.874c-27.284-27.284-62.363-38.977-97.442-38.977v-35.079c35.08.001 70.158 11.695 97.442 31.182zm0 261.142v42.874c-27.284 15.59-62.363 27.284-97.442 27.284v-31.182c35.08 0 70.158-15.59 97.442-38.976zm-97.442-15.591v-23.386c7.796 0 15.59-3.897 23.386-7.795 3.898-7.796 7.796-15.59 7.796-23.386 0-19.488-11.694-31.181-31.182-35.079V663.33c3.898 0 7.796-3.898 11.694-7.796 7.795-3.898 11.693-11.693 11.693-23.386s-7.796-19.487-23.386-23.385v-19.488c11.694 0 23.386 3.898 35.08 11.693 7.795 7.796 15.59 15.59 15.59 27.284 0 11.693-3.898 19.488-11.694 27.283-3.898 7.796-11.693 15.59-23.386 15.59v3.898c11.694 0 23.386 3.898 31.182 11.693 7.795 11.694 11.693 19.488 11.693 35.08s-3.898 27.283-15.59 38.976c-11.694 7.794-27.285 15.589-42.876 15.589zm0-276.732v35.08h-3.897c-38.977 0-77.953 15.59-105.236 42.873-27.284 27.283-42.874 62.362-42.874 101.338 0 42.873 15.59 77.952 42.874 105.235 27.283 27.284 66.26 46.772 105.236 46.772h3.897v31.18h-3.897c-46.772 0-93.544-19.487-128.622-54.566-31.181-31.181-50.669-77.952-50.669-128.621h-3.898 3.898c0-50.67 19.488-93.544 50.67-124.725h3.897c31.181-35.079 77.952-54.567 124.725-54.567h3.896v.001zm0 89.646c-3.897 0-3.897-3.898-7.795-3.898h-54.567v190.984h62.362v-23.386h-38.976v-66.26h38.976V663.33c-7.795 0-11.693 3.897-15.59 3.897H276.69v-58.464h38.976v-19.488z"/></svg>

After

Width:  |  Height:  |  Size: 4.5 KiB

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M305.664 664.064a92.16 92.16 0 0 0 92.16 92.16h223.232a92.16 92.16 0 0 0 92.16-92.16V480.307a203.776 203.776 0 0 0-407.552 0zm61.44-183.757a142.336 142.336 0 0 1 284.672 0v183.757a30.72 30.72 0 0 1-30.72 30.72H397.824a30.72 30.72 0 0 1-30.72-30.72zM770.406 773.12H248.474a71.68 71.68 0 1 0 0 143.616h521.932a71.68 71.68 0 1 0 0-143.616zm0 82.176H248.474a10.24 10.24 0 1 1 0-20.736h521.932a10.24 10.24 0 1 1 0 20.736z"/><path d="M435.2 645.12a30.72 30.72 0 0 0 30.72-30.72v-98.048a30.72 30.72 0 0 0-61.44 0V614.4a30.72 30.72 0 0 0 30.72 30.72zM512 241.51a30.72 30.72 0 0 0 30.72-30.72V145.1a30.72 30.72 0 0 0-61.44 0v65.69A30.72 30.72 0 0 0 512 241.51zm225.28 129.946a30.362 30.362 0 0 0 15.36-4.147l56.883-32.82a30.72 30.72 0 0 0-30.72-53.247l-56.883 32.87a30.72 30.72 0 0 0 15.36 57.344zM214.733 334.49l56.883 32.819a30.362 30.362 0 0 0 15.36 4.147 30.72 30.72 0 0 0 15.36-57.344l-56.883-32.87a30.72 30.72 0 0 0-30.72 53.248z"/></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M889.6 127.488H141.696c-38.656 0-70.08 31.488-70.08 70.144v467.392c0 38.656 31.488 70.144 70.08 70.144h342.976v99.456H368.384c-18.688 0-33.792 13.888-33.792 30.976s15.104 30.976 33.792 30.976h294.592c18.688 0 33.792-13.888 33.792-30.976s-15.104-30.976-33.792-30.976H546.688v-99.456H889.6c38.656 0 70.144-31.424 70.144-70.144V197.568c0-38.592-31.424-70.08-70.144-70.08zm4.864 526.592a22.272 22.272 0 0 1-22.272 22.336H159.168a22.272 22.272 0 0 1-22.272-22.336V208.512c0-12.352 10.048-22.272 22.272-22.272h713.024c12.288 0 22.272 9.92 22.272 22.272V654.08zM566.976 313.984c-13.184-10.624-23.936-2.88-23.936 15.872v49.984h-2.176c-77.056 0-208.128 89.024-209.216 168.192 0 6.336 5.12 8.128 10.048 0 24.896-44.416 129.536-67.456 182.848-67.456h18.496v52.736c0 15.744 11.648 26.496 24.896 15.872l121.856-97.792c13.184-10.56 13.184-27.904 0-38.528l-122.816-98.88z"/></svg>

After

Width:  |  Height:  |  Size: 997 B

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1026 1024" xmlns="http://www.w3.org/2000/svg" width="200.391" height="200"><defs><style/></defs><path d="M983.515 41.343c-.143 0-.143 0 0 0C956.763 14.592 921.428 0 883.66 0H605.416c-48.782 0-105.862 7.01-158.507 59.655l-38.482 38.482-78.967 78.967-.286.286c-14.02 14.02-14.02 36.623 0 50.5a35.574 35.574 0 0 0 50.499 0l.286-.287c6.008-6.008 102.142-102 117.592-117.45 32.331-32.187 65.234-38.768 108.008-38.768h278.245c18.598 0 36.05 7.296 49.212 20.314 13.161 13.162 20.314 30.614 20.314 49.069h.572c-.286 3.147-.572 6.437-.572 10.014V411.86c0 39.484-4.72 80.541-38.625 114.589C906.12 535.032 796.54 644.47 796.54 644.47l.143.143c-14.02 14.02-14.02 36.622 0 50.499 14.02 14.02 36.622 14.02 50.499 0l79.396-79.397c19.456-19.456 35.621-35.621 38.769-38.625 52.788-52.788 59.511-116.02 59.654-165.088l.143-271.092c-.429-37.481-15.02-72.96-41.63-99.568z"/><path d="M847.325 177.104c-41.773-41.772-109.725-41.772-151.497 0-41.773 41.773-41.773 109.725 0 151.497 41.772 41.773 109.724 41.773 151.497 0 41.773-41.772 41.773-109.724 0-151.497zm-50.5 100.998c-13.876 13.877-36.622 13.877-50.498 0-13.877-13.876-13.877-36.622 0-50.499 13.876-13.876 36.622-13.876 50.499 0 13.876 13.877 13.876 36.623 0 50.5zM704.411 736.742S510.712 930.155 508.71 932.158c-13.162 13.16-30.614 20.314-49.212 20.457-18.597 0-36.05-7.296-49.211-20.457L91.842 614.142c-13.16-12.588-20.457-30.614-20.457-49.211 0-18.597 7.296-35.907 20.457-49.068L287.687 320.16l-.143-.143c14.02-14.02 14.02-36.623 0-50.5-14.02-14.019-36.623-14.019-50.499 0l-79.396 79.397C103.859 402.705 42.202 464.22 41.2 465.22 14.735 491.972 0 527.307 0 564.931c0 37.624 14.592 72.959 41.343 99.71l318.302 318.016c26.608 26.608 62.086 41.343 99.71 41.343 37.624 0 73.102-14.592 99.71-41.343 1.145-1.145 62.516-62.516 116.306-116.162l79.396-79.397c14.02-14.02 14.02-36.622 0-50.499-13.876-13.733-36.48-13.733-50.356.143z"/></svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M636.416 861.184c-14.336 0-25.6-11.264-25.6-25.6V620.032c0-50.176-40.448-90.624-90.624-90.624-78.336 0-141.824-63.488-141.824-141.824V192.512c0-14.336 11.264-25.6 25.6-25.6s25.6 11.264 25.6 25.6v195.072c0 50.176 40.448 90.624 90.624 90.624 78.336 0 141.824 63.488 141.824 141.824v215.552c0 14.336-11.264 25.6-25.6 25.6z"/><path d="M403.456 861.184c-14.336 0-25.6-11.264-25.6-25.6V620.032c0-78.336 63.488-141.824 141.824-141.824 50.176 0 90.624-40.448 90.624-90.624V192.512c0-14.336 11.264-25.6 25.6-25.6s25.6 11.264 25.6 25.6v195.072c0 78.336-63.488 141.824-141.824 141.824-50.176 0-90.624 40.448-90.624 90.624v215.552c0 14.336-11.264 25.6-25.6 25.6zm67.584-595.456c-6.656 0-13.312-2.56-17.92-7.68l-49.152-49.152-49.664 49.152a26.288 26.288 0 0 1-36.352 0 26.288 26.288 0 0 1 0-36.352l67.584-67.072a26.288 26.288 0 0 1 36.352 0l67.072 67.072c10.24 10.24 10.24 26.112 0 36.352-4.608 5.12-11.264 7.68-17.92 7.68z"/><path d="M703.488 265.728c-6.656 0-12.8-2.56-17.92-7.68l-49.664-49.152-49.152 49.152c-10.24 10.24-26.112 10.24-36.352 0s-10.24-26.112 0-36.352l67.072-67.072c9.728-9.728 26.112-10.24 36.352 0l67.584 67.072c10.24 9.728 10.24 26.112 0 36.352-4.608 5.12-11.264 7.68-17.92 7.68zm-299.52 628.736c-6.656 0-12.8-2.56-17.92-7.68l-67.584-67.072c-10.24-9.728-10.24-26.112 0-36.352 9.728-10.24 26.112-10.24 36.352 0l49.664 49.152 49.152-49.152c10.24-10.24 26.112-10.24 36.352 0s10.24 26.112 0 36.352l-67.072 67.072c-5.632 5.12-12.288 7.68-18.944 7.68zm231.936 0c-6.656 0-13.312-2.56-17.92-7.68l-67.072-67.072c-10.24-10.24-10.24-26.112 0-36.352s26.112-10.24 36.352 0l49.152 49.152 49.664-49.152c10.24-9.728 26.112-9.728 36.352 0s9.728 26.112 0 36.352l-67.584 67.072c-6.144 5.12-12.288 7.68-18.944 7.68z"/><path d="M971.264 991.744H79.36c-14.336 0-25.6-11.264-25.6-25.6V74.24c0-14.336 11.264-25.6 25.6-25.6h891.904c14.336 0 25.6 11.264 25.6 25.6v891.904c0 14.336-11.264 25.6-25.6 25.6zm-866.304-51.2h840.704V99.84H104.96v840.704z"/></svg>

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M596.48 332.288l-368.64-2.048c-14.336 0-25.6-11.776-25.6-25.6 0-14.336 11.776-25.6 25.6-25.6l368.64 2.048c14.336 0 25.6 11.776 25.6 25.6 0 14.336-11.776 25.6-25.6 25.6zm5.12 189.44l-368.64-2.048c-14.336 0-25.6-11.776-25.6-25.6 0-14.336 11.776-25.6 25.6-25.6l368.64 2.048c14.336 0 25.6 11.776 25.6 25.6 0 14.336-11.776 25.6-25.6 25.6zm-130.56 189.44l-235.52-2.048c-14.336 0-25.6-11.776-25.6-25.6s11.776-25.6 25.6-25.6l235.52 2.048c14.336 0 25.6 11.776 25.6 25.6 0 14.336-11.776 25.6-25.6 25.6zM788.992 939.52c-78.848 0-143.36-64.512-143.36-143.36s64.512-143.36 143.36-143.36 143.36 64.512 143.36 143.36-64.512 143.36-143.36 143.36zm0-235.52c-50.688 0-92.16 41.472-92.16 92.16s41.472 92.16 92.16 92.16 92.16-41.472 92.16-92.16S839.68 704 788.992 704z"/><path d="M785.92 683.52c-14.336 0-25.6-11.264-25.6-25.6v-40.96c0-14.336 11.264-25.6 25.6-25.6s25.6 11.264 25.6 25.6v40.96c0 14.336-11.264 25.6-25.6 25.6zm-94.208 42.496c-6.656 0-13.312-2.56-18.432-7.68l-29.696-30.72c-9.728-10.24-9.728-26.624.512-36.352 10.24-9.728 26.624-9.728 36.352.512l29.696 30.72c9.728 10.24 9.728 26.624-.512 36.352-5.12 4.608-11.264 7.168-17.92 7.168zM652.8 821.76h-40.96c-14.336 0-25.6-11.264-25.6-25.6s11.264-25.6 25.6-25.6h40.96c14.336 0 25.6 11.264 25.6 25.6s-11.264 25.6-25.6 25.6zm10.752 126.976c-6.656 0-13.312-2.56-17.92-7.68-10.24-10.24-10.24-26.112 0-36.352l30.208-30.208c10.24-10.24 26.112-10.24 36.352 0s10.24 26.112 0 36.352l-30.208 30.208c-5.12 5.12-11.776 7.68-18.432 7.68zm127.488 52.224c-14.336 0-25.6-11.264-25.6-25.6v-46.08c0-14.336 11.264-25.6 25.6-25.6s25.6 11.264 25.6 25.6v46.08c0 14.336-11.264 25.6-25.6 25.6zm125.44-53.248c-6.656 0-13.312-2.56-17.92-7.68l-30.208-30.208c-10.24-10.24-10.24-26.112 0-36.352s26.112-10.24 36.352 0l30.208 30.208c10.24 10.24 10.24 26.112 0 36.352-5.12 5.12-11.776 7.68-18.432 7.68zm53.76-125.952h-46.08c-14.336 0-25.6-11.264-25.6-25.6s11.264-25.6 25.6-25.6h46.08c14.336 0 25.6 11.264 25.6 25.6s-11.264 25.6-25.6 25.6zm-85.504-96.768c-6.656 0-13.312-2.56-17.92-7.68-10.24-10.24-10.24-26.112 0-36.352l30.208-30.208c10.24-10.24 26.112-10.24 36.352 0s10.24 26.112 0 36.352l-30.208 30.208c-5.12 5.12-11.776 7.68-18.432 7.68zM317.44 1005.056H38.4c-14.336 0-25.6-11.264-25.6-25.6V35.84c0-14.336 11.264-25.6 25.6-25.6h733.696c14.336 0 25.6 11.264 25.6 25.6v276.992c0 14.336-11.264 25.6-25.6 25.6s-25.6-11.264-25.6-25.6V61.44H64v892.416h253.44c14.336 0 25.6 11.264 25.6 25.6s-11.264 25.6-25.6 25.6z"/></svg>

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M712.5 788.8H194.2c-22.5 0-43-8.8-58.7-23.3l146.9-183.2c7.9-9.8 19-15.5 31.2-15.9 12.2-.4 23.6 4.6 32 13.9l12.9 14.3c17.1 19 41 28.8 65.8 27.1 24.7-1.7 47.2-14.9 61.8-36L560.2 478c8-11.7 20.5-18.4 34.1-18.5h.3c13.6 0 26 6.6 34.1 18.1l76.7 108.9c6.8 9.6 19.6 11.5 28.6 4.3 8.9-7.1 10.7-20.4 4-29.9L661.3 452c-15.9-22.5-40.1-35.4-66.7-35.4h-.5c-26.8.2-51.1 13.4-66.8 36.2l-74.1 107.8c-7.4 10.8-18.9 17.5-31.6 18.4-12.6.9-24.9-4.2-33.6-13.8l-12.9-14.3c-16.2-18-39.1-28-62.7-27.3-23.6.7-45.8 12-61.1 31l-140 174.7c-4-10.7-6.3-22.5-6.3-34.7V328.9c0-52 40-94.2 89.2-94.2H767c49.3 0 89.2 42.2 89.2 94.2v181.3c0 11.9 9.1 21.5 20.3 21.5s20.3-9.6 20.3-21.5V328.9c0-75.7-58.2-137.1-129.9-137.1H194.2c-71.7 0-129.9 61.4-129.9 137.1v365.7c0 75.7 58.2 137.1 129.9 137.1h518.3c11.2 0 20.3-9.6 20.3-21.5 0-11.8-9.1-21.4-20.3-21.4z"/><path d="M926.6 672.7h-52.5v-54.5c0-19.4-14.9-35.1-33.2-35.1s-33.2 15.7-33.2 35.1v54.5h-53.6c-18.3 0-33.2 15.7-33.2 35.1 0 19.4 14.9 35.1 33.2 35.1h53.6v53.9c0 19.4 14.9 35.1 33.2 35.1s33.2-15.7 33.2-35.1v-53.9h52.5c18.3 0 33.2-15.7 33.2-35.1 0-19.4-14.9-35.1-33.2-35.1zM256.5 416.1c-35 0-63.6-28.5-63.6-63.6 0-35 28.5-63.6 63.6-63.6s63.6 28.5 63.6 63.6-28.6 63.6-63.6 63.6zm0-89.2c-14.1 0-25.6 11.5-25.6 25.6 0 14.1 11.5 25.6 25.6 25.6 14.1 0 25.6-11.5 25.6-25.6 0-14.1-11.5-25.6-25.6-25.6z"/></svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M877.715 1024H146.283C65.495 1024 0 959.056 0 878.938v-588.8c0-80.123 65.495-145.072 146.283-145.072h109.715V72.53h98.51C386.183 29.352 444.49 0 511.998 0c67.51 0 125.82 29.352 157.494 72.53h98.509v72.534h109.713c80.792 0 146.285 64.949 146.285 145.073v588.799c0 80.12-65.493 145.064-146.285 145.064zM694.857 145.066h-81.27c0-40.057-45.483-72.534-101.59-72.534-56.105 0-101.587 32.48-101.587 72.534h-81.267V290.14h365.714V145.066zm256 145.073c0-40.057-32.745-72.537-73.142-72.537H768.002V362.67H255.998V217.6H146.283c-40.395 0-73.14 32.482-73.14 72.537v588.799c0 40.057 32.745 72.534 73.14 72.534h731.43c40.397 0 73.143-32.477 73.143-72.534V290.139zM768 857.602H256c-20.198 0-36.57-16.237-36.57-36.264 0-20.034 16.372-36.272 36.57-36.272h512c20.2 0 36.574 16.238 36.574 36.272 0 20.025-16.374 36.264-36.574 36.264zm0-164.269H256c-20.198 0-36.57-16.236-36.57-36.266 0-20.027 16.372-36.27 36.57-36.27h512c20.2 0 36.574 16.24 36.574 36.27 0 20.03-16.374 36.266-36.574 36.266zm0-164.264H256c-20.198 0-36.57-16.24-36.57-36.262 0-20.04 16.372-36.274 36.57-36.274h512c20.2 0 36.574 16.234 36.574 36.274 0 20.02-16.374 36.262-36.574 36.262z"/></svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M959.3 511.6c1-255.7-211.6-447.8-446.7-448.6v448.6h446.7z"/><path d="M861.3 576C830 740.7 684.7 864.2 513 864.2c-195.5 0-354.6-159.1-354.6-354.6 0-173.5 122.4-318.1 289.7-348.7V98.8c-201.9 31.3-351 203.5-351 410.8 0 229.3 186.6 415.9 415.9 415.9 205.4 0 378.6-150.6 410.6-349.4h-62.3z"/></svg>

After

Width:  |  Height:  |  Size: 425 B

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M554.667 405.333c0 35.286-28.715 64-64 64s-64-28.714-64-64 28.714-64 64-64 64 28.715 64 64m-170.667 0C384 464.171 431.872 512 490.667 512s106.666-47.83 106.666-106.667-47.872-106.666-106.666-106.666A106.795 106.795 0 0 0 384 405.333"/><path d="M717.952 389.248c1.664 6.4 2.987 12.97 4.139 19.584a21.333 21.333 0 1 0 42.069-7.083 277.163 277.163 0 0 0-273.493-231.082A277.675 277.675 0 0 0 213.333 448c0 146.005 113.494 265.77 256.854 276.31v86.357H345.856a21.333 21.333 0 1 0 0 42.666h298.667a21.333 21.333 0 0 0 0-42.666h-131.67v-87.083c108.16-8.79 202.752-79.616 239.318-183.125a21.333 21.333 0 1 0-40.192-14.251 235.221 235.221 0 0 1-221.312 156.459A234.965 234.965 0 0 1 256 448c0-129.365 105.301-234.667 234.667-234.667a234.496 234.496 0 0 1 227.285 175.915"/></svg>

After

Width:  |  Height:  |  Size: 903 B

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M924 64H100C44.8 64 0 108.8 0 164v568c0 55.2 44.8 100 100 100h380v64H224c-17.7 0-32 14.3-32 32s14.3 32 32 32h576c17.7 0 32-14.3 32-32s-14.3-32-32-32H544v-64h380c55.2 0 100-44.8 100-100V164c0-55.3-44.8-100-100-100zm36 668c0 19.9-16.1 36-36 36H100c-19.9 0-36-16.1-36-36V164c0-19.9 16.1-36 36-36h824c19.9 0 36 16.1 36 36v568z"/><path d="M512 188c-159.5 0-307.8 94.3-380.7 241.9-4.2 8.5-4.6 19 0 27.7C204.2 605.6 352.5 700 512 700c159.4 0 307.4-94.3 380.7-241.9v-.4c4.2-8.1 4.6-18.6 0-27.7C819.4 282.3 671.4 188 512 188zm188.3 392.4C643.1 616.8 578 636 512 636c-66.1 0-131.2-19.2-188.4-55.7-53.1-33.8-96.9-80.8-127.3-136.5 30.4-55.6 74.1-102.5 127.2-136.2C380.8 271.2 446 252 512 252s131.1 19.2 188.3 55.6c53.1 33.7 96.9 80.7 127.6 136.4-30.7 55.7-74.6 102.6-127.6 136.4z"/><path d="M512 320c-70.6 0-128 57.5-128 128.1 0 70.5 57.4 127.9 128 127.9s128-57.4 128-127.9c0-70.7-57.4-128.1-128-128.1zm0 192c-35.3 0-64-28.7-64-63.9 0-35.4 28.7-64.1 64-64.1s64 28.8 64 64.1c0 35.2-28.7 63.9-64 63.9z"/></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M836.282 1024H187.718A188.044 188.044 0 0 1 0 836.282V187.718A188.044 188.044 0 0 1 187.718 0h648.564A188.044 188.044 0 0 1 1024 187.718v648.564A188.044 188.044 0 0 1 836.282 1024zM196.142 46.545A149.597 149.597 0 0 0 46.546 196.143v631.714a149.597 149.597 0 0 0 149.598 149.598h631.714a149.597 149.597 0 0 0 149.598-149.598V196.143A149.597 149.597 0 0 0 827.857 46.545H196.143z"/><path d="M805.795 420.399h-16.756a290.444 290.444 0 0 0-16.384-39.471l11.915-11.916a78.569 78.569 0 0 0 0-111.709l-18.618-18.618a80.43 80.43 0 0 0-111.71 0l-11.17 12.66a283.741 283.741 0 0 0-39.47-16.384v-16.756c0-43.38-35.189-78.569-78.57-78.569h-26.065c-43.38 0-78.568 35.189-78.568 78.57v16.755a287.465 287.465 0 0 0-39.471 16.384l-11.916-11.915a80.43 80.43 0 0 0-111.709 0l-18.618 18.618a78.569 78.569 0 0 0 0 111.71l11.916 11.915a291.56 291.56 0 0 0-16.384 39.47h-16.012c-43.101 0-78.196 34.723-78.569 77.824v26.066c0 43.38 35.189 78.568 78.57 78.568h16.755c4.469 13.545 9.961 26.718 16.384 39.471l-11.915 11.916a78.569 78.569 0 0 0 0 111.709l18.618 18.618c31.185 30.068 80.524 30.068 111.71 0l11.915-11.916c12.753 6.424 25.926 11.916 39.47 16.384v16.757c.42 42.821 35.002 77.405 77.824 77.824h26.066c43.38 0 78.568-35.189 78.568-78.57V789.04c13.499-4.515 26.718-9.961 39.471-16.384l11.916 11.915c31.185 30.069 80.523 30.069 111.709 0l18.618-18.618a78.941 78.941 0 0 0 0-111.71l-12.66-11.17c6.47-12.707 11.915-25.926 16.384-39.47h16.756c43.38 0 78.569-35.189 78.569-78.57v-26.065c0-43.38-35.189-78.568-78.57-78.568zm41.332 105.378a27.555 27.555 0 0 1-27.555 27.555h-37.236a27.555 27.555 0 0 0-26.438 20.48c-5.911 23.273-15.22 45.615-27.555 66.281a27.555 27.555 0 0 0 4.096 33.513l26.81 26.81a27.555 27.555 0 0 1 0 37.236l-19.362 19.363a28.315 28.315 0 0 1-37.237 0l-26.81-26.81a27.555 27.555 0 0 0-33.513-4.096 250.228 250.228 0 0 1-66.28 27.555 27.555 27.555 0 0 0-20.853 26.438v37.236a27.555 27.555 0 0 1-27.555 27.555h-27.555a27.555 27.555 0 0 1-27.555-27.555v-37.236a27.555 27.555 0 0 0-20.48-26.438 246.505 246.505 0 0 1-66.28-27.555 27.555 27.555 0 0 0-33.513 4.096l-26.81 26.81a28.315 28.315 0 0 1-37.237 0l-19.362-19.363a27.555 27.555 0 0 1 0-37.236l26.81-26.81a27.555 27.555 0 0 0 4.096-33.513 247.25 247.25 0 0 1-27.555-66.28 27.555 27.555 0 0 0-26.438-20.853h-37.236a27.555 27.555 0 0 1-31.651-27.183v-27.554a27.555 27.555 0 0 1 27.555-27.555h37.236a27.555 27.555 0 0 0 26.438-20.853c5.958-23.272 15.267-45.614 27.555-66.28a27.183 27.183 0 0 0-4.096-33.513l-26.81-26.81a27.555 27.555 0 0 1 0-37.237l19.362-19.363a28.315 28.315 0 0 1 37.237 0l26.81 26.81c8.937 8.844 22.714 10.52 33.513 4.097a249.111 249.111 0 0 1 66.28-27.555 27.555 27.555 0 0 0 20.48-26.438v-37.237a27.555 27.555 0 0 1 29.79-29.416h27.554c15.22 0 27.555 12.334 27.555 27.555v37.236c0 12.567 8.611 23.505 20.853 26.438 23.272 5.958 45.614 15.22 66.28 27.555a27.555 27.555 0 0 0 33.513-4.096l26.81-26.81a27.927 27.927 0 0 1 37.237 0l19.363 19.362a27.183 27.183 0 0 1 0 37.237l-26.81 26.81a27.555 27.555 0 0 0-4.097 33.513 247.804 247.804 0 0 1 27.555 66.28 27.555 27.555 0 0 0 26.438 20.48h37.237c15.22 0 27.554 12.335 27.554 27.555v27.555l1.862 2.234z"/><path d="M512 372.364a139.636 139.636 0 1 0 0 279.272 139.636 139.636 0 0 0 0-279.272zm0 232.727a93.09 93.09 0 1 1 0-186.182 93.09 93.09 0 0 1 0 186.182z"/></svg>

After

Width:  |  Height:  |  Size: 3.3 KiB

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M612.966 264.038v-.204c8.5 0 16.692-3.38 22.682-9.421a32.023 32.023 0 0 0 9.267-22.733V115.866c.051-8.5-3.328-16.59-9.318-22.63a31.98 31.98 0 0 0-22.58-9.37c-8.55-.052-16.793 3.328-22.886 9.37-6.093 6.04-9.523 14.233-9.523 22.783v115.815c.051 8.55 3.43 16.742 9.523 22.784a31.893 31.893 0 0 0 22.835 9.42zm-398.848 0c8.55.052 16.794-3.328 22.887-9.37 6.093-6.04 9.523-14.233 9.523-22.783V116.07c0-17.92-14.49-32.41-32.41-32.41s-32.41 14.49-32.41 32.41v115.815a32.516 32.516 0 0 0 9.524 22.784c6.093 6.041 14.336 9.42 22.886 9.37z"/><path d="M812.442 212.582c.05-13.619-5.376-26.726-15.002-36.403a51.305 51.305 0 0 0-36.352-15.104h-64.307v57.959c0 46.233-37.479 83.763-83.763 83.763-46.285 0-83.764-37.479-83.764-83.763v-57.959H297.882v57.959c0 46.233-37.479 83.763-83.764 83.763-46.284 0-83.763-37.479-83.763-83.763v-57.959H66.048a51.305 51.305 0 0 0-36.352 15.104c-8.755 8.755-13.978 20.378-14.848 32.615v166.553h797.594V212.582z"/><path d="M812.442 375.347h.768v12.186h-.768z"/><path d="M14.848 387.533v446.413c.87 12.236 6.093 23.859 14.848 32.614 9.626 9.677 22.733 15.053 36.352 15.053h535.245c-33.946-43.213-54.17-97.69-54.17-156.928 0-140.493 113.92-254.413 254.413-254.413 3.635 0 7.27.102 10.854.256v-82.995H14.848zm239.974 166.349c-.87 12.902-2.15 32.307-3.89 58.112-1.742 34.457-3.022 59.852-3.892 76.185a257.13 257.13 0 0 0-25.856-1.28c3.43-39.577 5.99-84.377 7.731-134.349l25.907 1.332zm-139.52 189.85c12.903-.871 25.856-2.56 38.759-5.172v-89.14h-32.307v-30.975h32.307V547.43h-34.867v-32.307h103.321v32.307h-36.147v71.015h28.416v30.976h-28.416v85.299c4.3-.87 10.342-1.74 18.074-2.56 8.601-1.74 14.643-2.56 18.073-2.56 0 11.213.41 21.965 1.28 32.307-26.675 1.741-61.133 6.451-103.321 14.183l-5.172-32.359zm104.653 38.758c19.815-21.504 32.717-43.47 38.759-65.895 6.86-21.504 10.342-52.531 10.342-92.979V498.33h32.307v126.566c1.741 79.206-15.923 138.65-52.94 178.227-9.524-7.68-18.996-14.592-28.468-20.633zm209.255 2.61H301.312v-28.415h49.1v-96.87h-37.478v-30.977h37.479V546.15h-37.479v-30.976h108.493v30.976H382.67v82.688h36.147v30.976h-36.147v96.87h46.49v28.417z"/><path d="M975.718 767.334h-21.964c-3.584 12.903-8.704 25.19-15.258 36.557l20.275 20.327c13.005 13.004 13.005 34.048 0 47.052l-11.776 11.776c-13.005 13.005-34.048 13.005-47.053 0l-20.428-20.428c-11.316 6.45-23.552 11.468-36.404 15.001v21.3c0 18.38-14.899 33.28-33.28 33.28h-16.64c-18.38 0-33.28-14.9-33.28-33.28v-21.351c-12.85-3.533-25.088-8.5-36.403-15.002l-20.429 20.43c-13.004 13.004-34.048 13.004-47.052 0l-11.776-11.777c-13.005-13.005-13.005-34.048 0-47.053l20.275-20.326c-6.554-11.366-11.674-23.603-15.258-36.557h-21.965c-18.38 0-33.28-14.899-33.28-33.28v-16.64c0-18.38 14.9-33.28 33.28-33.28h21.71c3.48-12.8 8.345-24.985 14.745-36.25l-19.507-19.558c-13.005-13.005-13.005-34.048 0-47.053l11.724-11.776c13.005-13.004 34.048-13.004 47.053 0l19.149 19.15a156.013 156.013 0 0 1 37.683-15.77v-22.324c0-18.38 14.9-33.28 33.28-33.28h16.64c18.381 0 33.28 14.9 33.28 33.28v22.324a156.013 156.013 0 0 1 37.683 15.77l19.15-19.15c13.004-13.004 34.047-13.004 47.052 0l11.776 11.776c13.005 13.005 13.005 34.048 0 47.053l-19.507 19.507c6.349 11.316 11.264 23.501 14.745 36.25h21.71c18.38 0 33.28 14.9 33.28 33.28v16.64c0 18.483-14.849 33.382-33.23 33.382zM802.15 628.326c-54.067 0-97.894 43.828-97.894 97.895s43.264 97.894 97.382 97.894 98.458-43.827 98.458-97.894-44.39-97.895-98.509-97.895h.563zm-.614 138.445c-22.989 0-41.626-18.637-41.626-41.625s18.637-41.575 41.626-41.575 41.574 18.637 41.574 41.575c0 23.04-18.585 41.625-41.574 41.625z"/></svg>

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1029 1024" xmlns="http://www.w3.org/2000/svg" width="200.977" height="200"><defs><style/></defs><path d="M416.768 117.76h208.384v828.416H416.768zM131.584 394.752h208.384v546.816H131.584z"/><path d="M17.92 935.424h991.744v37.888H17.92z"/><path d="M363.52 965.632H121.344V373.76H363.52v591.872zm-23.552-568.32H144.896V942.08H340.48V397.312z"/><path d="M131.584 394.752h221.184V409.6H131.584zm0 81.408h221.184v14.848H131.584zm0 114.688h221.184v14.848H131.584zm0 115.2h221.184v14.848H131.584zm0 114.688h221.184v14.848H131.584zM645.12 966.144H403.456V92.16H645.12v873.984zm-24.576-848.896H428.032v823.296h192.512V117.248z"/><path d="M538.112 104.448l-123.904 140.8-10.752-12.288 123.392-140.8zm94.72 22.528L426.496 361.472l-10.752-12.288 205.824-234.496zm2.048 145.408L428.544 507.392l-10.752-12.8 205.824-234.496zm-2.048 147.456L426.496 654.848l-10.752-12.8 205.824-234.496zm2.048 146.944L428.544 801.792l-10.752-12.288 205.824-235.008zm0 127.488L428.544 929.28l-10.752-12.8 205.824-234.496zm13.824 123.392L524.8 958.976l-10.752-12.8 123.392-140.8z"/><path d="M413.696 110.592H634.88V128H413.696zM929.28 958.464H687.616V260.096H929.28v698.368zm-23.04-670.72H710.656v642.56H906.24v-642.56z"/><path d="M697.856 285.184H919.04v17.408H697.856z"/></svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M556.8 876.8c-19.2-6.4-38.4 6.4-44.8 19.2-12.8 38.4-44.8 64-83.2 64-44.8 0-83.2-38.4-89.6-83.2h89.6c19.2 0 32-12.8 32-32s-12.8-32-32-32H102.4c51.2-83.2 57.6-198.4 57.6-403.2 0-166.4 108.8-224 204.8-243.2 12.8 0 25.6-19.2 25.6-32v-32c0-19.2 19.2-38.4 38.4-38.4s38.4 19.2 38.4 38.4v32c0 12.8 12.8 25.6 25.6 32 38.4 6.4 96 25.6 140.8 70.4 12.8 12.8 32 12.8 44.8 0 12.8-12.8 12.8-32 0-44.8-44.8-44.8-102.4-70.4-147.2-83.2v-6.4C531.2 44.8 486.4 0 428.8 0c-57.6 0-102.4 44.8-102.4 102.4v6.4C230.4 134.4 96 211.2 96 409.6c0 262.4-19.2 352-83.2 409.6C0 832 0 844.8 0 857.6s19.2 19.2 32 19.2h243.2c6.4 83.2 70.4 147.2 153.6 147.2 70.4 0 128-44.8 147.2-108.8 6.4-12.8-6.4-32-19.2-38.4z"/><path d="M710.4 268.8c-172.8 0-313.6 134.4-313.6 307.2s140.8 313.6 313.6 313.6S1024 748.8 1024 576 883.2 268.8 710.4 268.8zm0 556.8C576 825.6 460.8 716.8 460.8 576S576 332.8 710.4 332.8 960 441.6 960 576 851.2 825.6 710.4 825.6z"/><path d="M889.6 544H742.4V403.2c0-19.2-12.8-32-32-32s-32 12.8-32 32v211.2h211.2c19.2 0 32-12.8 32-32s-12.8-38.4-32-38.4z"/></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M1023.975 164.56c0-19.186-15.25-34.685-34.123-34.685H34.147c-18.874 0-34.123 15.499-34.123 34.686v762.588c0 19.187 15.25 34.686 34.123 34.686h955.705c18.874 0 34.123-15.499 34.123-34.686V164.561zM64.022 897.839V193.87h895.956v703.967H64.022z"/><path d="M863.983 513.856c17.687 0 31.999-14.31 31.999-31.999 0-17.686-14.312-31.998-31.999-31.998s-31.999 14.312-31.999 31.998c0 17.688 14.313 32 32 32zM735.99 513.856c17.687 0 31.999-14.31 31.999-31.999 0-17.686-14.312-31.998-31.999-31.998-17.687 0-31.999 14.312-31.999 31.998 0 17.688 14.312 32 31.999 32zM863.983 641.851c17.687 0 31.999-14.312 31.999-31.998 0-17.688-14.312-32-31.999-32s-31.999 14.31-31.999 32c0 17.685 14.313 31.998 32 31.998zM735.99 641.851c17.687 0 31.999-14.312 31.999-31.998 0-17.688-14.312-32-31.999-32-17.687 0-31.999 14.31-31.999 32 0 17.685 14.312 31.998 31.999 31.998zM735.99 769.845c17.687 0 31.999-14.312 31.999-32s-14.312-31.998-31.999-31.998c-17.687 0-31.999 14.312-31.999 31.999s14.312 31.999 31.999 31.999zM165.391 769.845h373.233c20.686 0 37.373-16.375 37.373-36.562V294.43c0-20.187-16.687-36.56-37.373-36.56H165.39c-20.686 0-37.372 16.373-37.372 36.56v438.853c0 20.187 16.686 36.562 37.372 36.562zm26.625-447.98H512v383.982H192.016V321.866zM735.99 321.866h127.994c17.687 0 31.999-14.312 31.999-32 0-17.686-14.312-31.998-31.999-31.998H735.99c-17.687 0-31.999 14.312-31.999 31.999 0 17.688 14.312 31.999 31.999 31.999z"/></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1170 1024" xmlns="http://www.w3.org/2000/svg" width="228.516" height="200"><defs><style/></defs><path d="M1024 0H146.286C65.829 0 0 65.829 0 146.286v585.143c0 80.457 65.829 146.285 146.286 146.285H548.57v73.143H256c-21.943 0-36.571 14.629-36.571 36.572S234.057 1024 256 1024h658.286c21.943 0 36.571-14.629 36.571-36.571s-14.628-36.572-36.571-36.572H621.714v-73.143H1024c80.457 0 146.286-65.828 146.286-146.285V146.286C1170.286 65.829 1104.457 0 1024 0zm73.143 731.429c0 43.885-29.257 73.142-73.143 73.142H146.286c-43.886 0-73.143-29.257-73.143-73.142V146.286c0-43.886 29.257-73.143 73.143-73.143H1024c43.886 0 73.143 29.257 73.143 73.143v585.143z"/><path d="M958.171 336.457L841.143 453.486l-190.172-256c-7.314-7.315-21.942-14.629-36.571-14.629-7.314 0-21.943 7.314-29.257 21.943L468.114 504.686 358.4 343.77c-7.314-7.314-14.629-14.628-29.257-14.628s-21.943 0-29.257 7.314L153.6 482.743c-7.314 14.628-7.314 43.886 0 58.514 7.314 14.629 36.571 14.629 51.2 0L321.829 424.23 446.17 607.086c7.315 7.314 14.629 14.628 29.258 14.628h7.314c14.628 0 21.943-7.314 29.257-21.943l117.029-307.2 182.857 241.372c7.314 7.314 14.628 14.628 29.257 14.628 7.314 0 21.943 0 29.257-7.314l146.286-146.286c14.628-14.628 14.628-36.571 0-51.2-14.629-14.628-43.886-14.628-58.515-7.314z"/></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M830.464 1024h-716.8C50.688 1024 0 973.312 0 911.36V112.64C0 50.688 50.688 0 113.664 0h716.8c62.464 0 113.664 50.688 113.664 112.64v66.56c0 22.016-17.92 39.936-39.936 39.936s-39.936-17.92-39.936-39.936v-66.56c0-18.432-14.848-33.28-33.28-33.28h-716.8c-18.432 0-33.28 14.848-33.28 33.28v798.72c0 18.432 14.848 33.28 33.28 33.28h716.8c18.432 0 33.28-14.848 33.28-33.28V649.728c0-22.016 17.92-39.936 39.936-39.936s39.936 17.92 39.936 39.936V911.36c0 61.952-51.2 112.64-113.664 112.64z"/><path d="M455.168 367.616H164.352c-5.632 0-9.728-4.608-9.728-9.728v-59.904c0-5.632 4.608-9.728 9.728-9.728h290.816c5.632 0 9.728 4.608 9.728 9.728v59.904c0 5.632-4.096 9.728-9.728 9.728zm0 213.504H164.352c-5.632 0-9.728-4.608-9.728-9.728v-59.904c0-5.632 4.608-9.728 9.728-9.728h290.816c5.632 0 9.728 4.608 9.728 9.728v59.904c0 5.632-4.096 9.728-9.728 9.728zM719.36 794.624H164.352c-5.632 0-9.728-4.608-9.728-9.728v-59.904c0-5.632 4.608-9.728 9.728-9.728H719.36c5.632 0 9.728 4.608 9.728 9.728v59.904c0 5.12-4.608 9.728-9.728 9.728zM729.6 629.76c-11.264 0-22.016-4.608-29.696-13.312L560.64 462.336c-14.848-16.384-13.312-41.472 3.072-56.32 16.384-14.848 41.984-13.312 56.832 3.072L729.6 529.92l224.256-254.464c14.336-16.384 39.936-18.432 56.32-3.584 16.896 14.336 18.432 39.424 3.584 56.32L759.808 616.448c-7.168 8.192-18.432 13.312-30.208 13.312.512 0 .512 0 0 0z"/></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M934.4 115.2h-736V1024h736V115.2zM147.2 57.6h691.2V0H89.6v896h64V57.6h-6.4zM281.6 224h460.8v76.8H281.6V224zm6.4 153.6h460.8v76.8H288v-76.8zm0 153.6h460.8V608H288v-76.8zm0 153.6h460.8v76.8H288v-76.8z"/></svg>

After

Width:  |  Height:  |  Size: 339 B

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M424 352H200a24 24 0 0 0 0 48h224a24 24 0 0 0 0-48zm272 208H200a24 24 0 0 0 0 48h496a24 24 0 0 0 0-48zm0 208H200a24 24 0 0 0 0 48h496a24 24 0 0 0 0-48z"/><path d="M832 504v392a64 64 0 0 1-64 64H128a64 64 0 0 1-64-64V128a64 64 0 0 1 64-64h392a24 24 0 0 1 0 48H128a16 16 0 0 0-16 16v768a16 16 0 0 0 16 16h640a16 16 0 0 0 16-16V504a24 24 0 0 1 48 0z"/><path d="M768 96a160 160 0 1 1-160 160A160 160 0 0 1 768 96zm0-32a192 192 0 1 0 135.84 56.16A192 192 0 0 0 768 64z"/><path d="M875.52 182.56a16 16 0 0 0-22.72 0L739.68 295.68l-56.48-56.64a16 16 0 0 0-16-4.16 16 16 0 0 0-11.36 11.36 16 16 0 0 0 4.16 16l67.84 67.84a14.4 14.4 0 0 0 6.4 3.68 16 16 0 0 0 10.88 0 16.96 16.96 0 0 0 5.28-3.52l124.48-124.48a16 16 0 0 0 0-22.72z"/></svg>

After

Width:  |  Height:  |  Size: 861 B

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1025 1024" xmlns="http://www.w3.org/2000/svg" width="200.195" height="200"><defs><style/></defs><path d="M709.047 961.03H251.334c-67.49 0-122.18-53.299-122.18-119.011V243.475c0-65.743 54.689-119.011 122.18-119.011V64.959h61.09v59.504h123.232V64.959h61.092v59.504h151.208V64.959h61.089v59.504c67.49 0 122.21 53.268 122.21 119.01V842.02c.001 65.712-54.716 119.01-122.208 119.01zm61.115-717.554c0-32.874-27.369-59.506-61.116-59.506H251.334c-33.747 0-61.09 26.632-61.09 59.506V842.02c0 32.869 27.345 59.504 61.09 59.504h457.714c33.747 0 61.116-26.635 61.116-59.504l-.002-598.545zM678.5 779.016H281.88c-16.87 0-30.547-13.32-30.547-29.753s13.673-29.751 30.547-29.751h396.62c16.871 0 30.547 13.318 30.547 29.75 0 16.435-13.675 29.754-30.547 29.754zm0-178.513H281.88c-16.87 0-30.547-13.318-30.547-29.753 0-16.435 13.673-29.753 30.547-29.753h396.62c16.871 0 30.547 13.32 30.547 29.753 0 16.435-13.675 29.753-30.547 29.753zm0-178.517H281.88c-16.87 0-30.547-13.318-30.547-29.752s13.673-29.751 30.547-29.751h396.62c16.871 0 30.547 13.32 30.547 29.75 0 16.436-13.675 29.753-30.547 29.753z"/></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M704 111.04V38.293H320v72.747H90.667v874.667h404.16v-53.334H144v-768h176v65.92h384v-65.92h176V550.4h53.333V111.04H704zm-53.333 65.92H373.333V91.627h277.334v85.333zM272 526.72h298.667v53.333H272V526.72zm480-107.413H272v-53.334h480v53.334zm5.333 337.066h176v53.334h-176v176H704v-176H528v-53.334h176v-176h53.333v176z"/></svg>

After

Width:  |  Height:  |  Size: 454 B

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M742.592 495.68c-48.32 48.32-123.2 57.28-180.512 26.56l-253.792 251.2c-17.6 17.6-45.44 17.6-61.76 0-17.6-17.6-17.6-45.44 0-61.76L499.04 458.848c-30.72-58.88-23.36-132.16 26.56-180.832 29.44-29.44 67.52-44.16 105.6-44.16-40.96 42.56-39.68 110.08 1.6 152.64a108.672 108.672 0 0 0 152.64 1.6c-.288 40.032-13.408 78.112-42.848 107.584zm70.4-191.072c-10.24 11.84-29.44 27.84-54.4 51.52-27.84 27.84-65.92 27.84-92.48 0-27.84-27.84-27.84-66.24 0-92.48 23.36-24.96 51.2-55.68 49.92-55.68a194.944 194.944 0 0 0-221.472 39.36c-54.4 54.4-70.4 133.76-47.04 202.912l-231.712 230.4a88.288 88.288 0 0 0 0 123.52c33.6 33.92 89.6 33.92 124.8 0L572.32 572.128c68.8 23.36 148.16 7.36 202.592-47.04 58.56-58.88 70.4-147.2 38.08-220.48z"/><path d="M759.328 818.368h-5.472c-.672-36.16-19.2-58.784-40.448-77.504-6.176-5.824-4.128-12.928 0-16.16 21.248-19.36 39.776-41.344 40.448-78.144h5.472c4.8 0 8.928-3.872 8.928-8.384 0-4.512-4.128-8.384-8.928-8.384h-134.4c-5.472-.64-9.6 3.232-9.6 7.744s4.128 8.384 8.928 8.384h5.472c.672 36.8 18.528 58.784 40.448 78.144a10.88 10.88 0 0 1 0 16.16c-21.248 18.72-39.776 41.344-40.448 77.504h-4.8c-4.8 0-8.928 3.872-8.928 8.384 0 4.512 4.128 8.384 8.928 8.384H760c4.8 0 8.928-3.872 8.928-8.384 0-3.84-4.096-7.744-9.6-7.744zM744.96 646.592c0 11.616-2.752 21.952-6.176 31.008-15.776 4.512-78.176 4.512-93.952 0a73.888 73.888 0 0 1-6.176-31.008H744.96zm-53.504 158.24c-8.928 0-29.472 13.568-43.872 13.568h-8.928c.672-30.368 15.072-49.728 33.6-66.528 4.8-4.512 12.352-14.208 19.872-14.208 7.552 0 15.072 10.336 19.872 14.848 18.528 16.8 32.928 36.16 33.6 66.528h-10.24c-14.432-.672-34.304-14.208-43.904-14.208zm0 0"/></svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -0,0 +1 @@
<svg class="icon" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg" width="200" height="200"><defs><style/></defs><path d="M739.556 608.757v-5.735a45.511 45.511 0 0 1 91.022 0v5.735c16.702 4.278 32.495 10.922 46.967 19.478l4.096-4.096a45.511 45.511 0 0 1 64.353 64.399l-4.096 4.05c8.556 14.473 15.2 30.265 19.479 46.968h5.734a45.511 45.511 0 0 1 0 91.022h-5.734c-4.278 16.702-10.923 32.495-19.479 46.967l4.096 4.096a45.511 45.511 0 0 1-64.398 64.353l-4.05-4.096a180.952 180.952 0 0 1-46.968 19.479v5.734a45.511 45.511 0 0 1-91.022 0v-5.734a180.952 180.952 0 0 1-46.968-19.479l-4.096 4.096a45.511 45.511 0 0 1-64.353-64.353l4.096-4.096a180.952 180.952 0 0 1-19.478-46.967h-5.735a45.511 45.511 0 0 1 0-91.022h5.735c4.278-16.703 10.922-32.495 19.478-46.968l-4.096-4.096a45.511 45.511 0 0 1 64.399-64.353l4.05 4.096a180.952 180.952 0 0 1 46.968-19.478zM479.687 876.089H56.89a45.511 45.511 0 0 1-45.511-45.511v-45.511a364.089 364.089 0 0 1 606.8-271.429 318.396 318.396 0 0 0-151.69 271.429c0 31.63 4.598 62.168 13.2 91.022zm-104.22-455.111c-100.58 0-182.045-91.705-182.045-204.8s81.465-204.8 182.045-204.8 182.044 91.705 182.044 204.8-81.465 204.8-182.044 204.8zm409.6 455.11a91.022 91.022 0 1 0 0-182.044 91.022 91.022 0 0 0 0 182.045z"/></svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

Some files were not shown because too many files have changed in this diff Show More