Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d25a37340e | ||
|
|
2414585c06 | ||
|
|
2a78050f6b | ||
|
|
16e79ac4cf | ||
|
|
db2efc5ab7 | ||
|
|
dd29b890a8 | ||
|
|
1809bc4e09 | ||
|
|
59a4bfcbb3 | ||
|
|
7c1c379bcb | ||
|
|
714c506b49 | ||
|
|
83d3db1000 | ||
|
|
648eb9429a | ||
|
|
35b0c8194b | ||
|
|
2787c95916 | ||
|
|
46957d317e | ||
|
|
51d4ae089f | ||
|
|
9c79130cea | ||
|
|
e29943f8ad | ||
|
|
cb386d484d | ||
|
|
bb124b171c | ||
|
|
6f9938100d | ||
|
|
9a637a8edd | ||
|
|
d64231f9cb | ||
|
|
a4191e7d77 | ||
|
|
e77efc4613 | ||
|
|
1e89f8f706 | ||
|
|
48deb4cda0 | ||
|
|
85aefeaa4b | ||
|
|
66182572a6 | ||
|
|
ce734f6809 | ||
|
|
1cd930fa08 | ||
|
|
475fc05e72 | ||
|
|
3a07e6e42b | ||
|
|
b7fdf0d0c1 | ||
|
|
1e1c1c1fc9 | ||
|
|
1f120407d7 | ||
|
|
cd33a867fc | ||
|
|
6c33075e44 | ||
|
|
ff159a7669 | ||
|
|
2b07588a2f | ||
|
|
173bce9474 | ||
|
|
29da312337 | ||
|
|
a1a1b03e14 | ||
|
|
c927a78e95 | ||
|
|
b5acd8d167 | ||
|
|
43c3a8b936 | ||
|
|
498f101352 | ||
|
|
792bb5ddaf | ||
|
|
73122e8c9b | ||
|
|
57237c254a | ||
|
|
b553c82083 | ||
|
|
641ebcbd33 | ||
|
|
03c6b3a572 | ||
|
|
6c019c6e03 | ||
|
|
4f25004331 | ||
|
|
90b96456c1 | ||
|
|
b39b36a8bc | ||
|
|
67aa157d10 | ||
|
|
68ec19ebf7 | ||
|
|
74a764b870 | ||
|
|
93b6d82770 | ||
|
|
46a03a1877 | ||
|
|
bf595384d8 | ||
|
|
fb8d60c09f | ||
|
|
5ad5cf04d6 | ||
|
|
1dd369fbb1 | ||
|
|
16c84631fe | ||
|
|
0baa50ca30 | ||
|
|
90603d5566 | ||
|
|
7d80a99e0e | ||
|
|
a5a4062a9f | ||
|
|
711c7f89e8 | ||
|
|
34e15b7634 | ||
|
|
c9b03ca8da | ||
|
|
aeb7eff8bc | ||
|
|
42377193db | ||
|
|
4cedeaeb9b | ||
|
|
42e9c5ad2e | ||
|
|
98f2d3885a | ||
|
|
f3d81e0739 | ||
|
|
08a0178d7b | ||
|
|
51ec423c9c | ||
|
|
267b106d1f | ||
|
|
231478738d | ||
|
|
7eeee7e4df | ||
|
|
1ff7de0878 | ||
|
|
c2ee104581 | ||
|
|
b21c05c6fa | ||
|
|
510b1fbcfe | ||
|
|
d3ec091d64 | ||
|
|
f9c05133cd | ||
|
|
a094c2c46e | ||
|
|
9d075514a5 | ||
|
|
0cad8d6bb3 | ||
|
|
741493c012 | ||
|
|
61e05602c2 | ||
|
|
71b677337e | ||
|
|
756904082e | ||
|
|
aa5dfe53ec | ||
|
|
205056591f | ||
|
|
d2ae467685 | ||
|
|
31a831ea88 | ||
|
|
c9f28294db | ||
|
|
be40ed1f70 | ||
|
|
62488d7742 | ||
|
|
284fe35bad | ||
|
|
ce5a66a15b | ||
|
|
e5b9f7c3db | ||
|
|
42f0aa921c | ||
|
|
1f6d6ccf3c | ||
|
|
ab12cf138c | ||
|
|
50aee9e176 | ||
|
|
100a64f221 | ||
|
|
a643366ddc | ||
|
|
419789401f | ||
|
|
2c835ea42f | ||
|
|
666783e11e | ||
|
|
2894434ae8 | ||
|
|
2b28317a8f | ||
|
|
31ce6dca15 | ||
|
|
c9a5fee48a | ||
|
|
b31cd37109 | ||
|
|
8786e2b427 | ||
|
|
87cce788a5 | ||
|
|
8165c13128 | ||
|
|
b7f4d87236 | ||
|
|
91ffc11b90 | ||
|
|
e2ad3d1caf | ||
|
|
9bd725fc8e | ||
|
|
affd0d0325 | ||
|
|
b9402649c6 | ||
|
|
02298f9361 | ||
|
|
f698bdd6b0 | ||
|
|
ef85fda048 | ||
|
|
27816d9303 | ||
|
|
52189867ea | ||
|
|
c127440207 | ||
|
|
d856e81c5f | ||
|
|
36d4c81dd5 | ||
|
|
254bde20b9 | ||
|
|
153270fe9a | ||
|
|
9fa6462bcd | ||
|
|
bb16ed3b21 | ||
|
|
32c881a875 | ||
|
|
5859dd5113 | ||
|
|
214b34ed28 | ||
|
|
ab7c915140 | ||
|
|
0e8c223cfa | ||
|
|
e1838a5fac | ||
|
|
813e9c9ae3 | ||
|
|
7bddd1e1c8 | ||
|
|
392fd860f2 | ||
|
|
17a674d956 | ||
|
|
71bc7ebe8e | ||
|
|
18db3f5cae | ||
|
|
9901920bc7 | ||
|
|
0296d2f345 | ||
|
|
d880fc0487 | ||
|
|
058498093a | ||
|
|
2ac3e24e7a | ||
|
|
f7f0351505 | ||
|
|
8b9b6f6bd4 | ||
|
|
4bcc3555ca | ||
|
|
e003175a02 | ||
|
|
46db40780a | ||
|
|
5b5f0d05c4 | ||
|
|
93691bdb4f | ||
|
|
00429b1f73 | ||
|
|
b0029661e0 | ||
|
|
5325637deb | ||
|
|
aee4a75428 | ||
|
|
820801af20 | ||
|
|
e60cbd853f | ||
|
|
e61ff77284 | ||
|
|
4ec3c9f9ab | ||
|
|
202f6e54b7 | ||
|
|
c3c5adffd7 | ||
|
|
7ff2e70853 | ||
|
|
9981b2f56d | ||
|
|
cbc1cbe9f4 | ||
|
|
99eca5420e | ||
|
|
eb072dc5a9 | ||
|
|
14bf34fbc6 | ||
|
|
5d6d11aa7d | ||
|
|
ec90f66d94 | ||
|
|
7d8e245e14 | ||
|
|
65456dfccc | ||
|
|
7bfc98a0ff | ||
|
|
061ade451a | ||
|
|
85810b5767 | ||
|
|
7bb3d6fe3b | ||
|
|
3b7da44cc7 | ||
|
|
9d8d3d35da | ||
|
|
62466ff1d4 | ||
|
|
8e9ee8df71 | ||
|
|
08f5a9f186 | ||
|
|
49413436c1 | ||
|
|
6afbc93199 | ||
|
|
41b5b44403 | ||
|
|
b34f66ad8c | ||
|
|
1d8eb74ba7 | ||
|
|
0dc139c087 | ||
|
|
92eb82e207 | ||
|
|
2f76483d05 | ||
|
|
3ae906b07e | ||
|
|
e41ae5e5b5 | ||
|
|
43ab1290f5 | ||
|
|
13a3020633 | ||
|
|
9e505f2003 | ||
|
|
7803fd0dba | ||
|
|
7f9425fc61 | ||
|
|
dc377984ff | ||
|
|
057feb28e2 | ||
|
|
5681238cd0 | ||
|
|
43f3712f54 | ||
|
|
736d0120b7 | ||
|
|
5483b99376 | ||
|
|
f13543c54e | ||
|
|
00a9e71de9 | ||
|
|
f058642d69 | ||
|
|
7fd650024e | ||
|
|
edc6c9c562 | ||
|
|
65b8de8db0 | ||
|
|
eada6b5005 | ||
|
|
bb397d0639 | ||
|
|
86852f6714 | ||
|
|
7b1af51fe6 | ||
|
|
61746f5ebf | ||
|
|
231d89ae5c | ||
|
|
a1fb2f9ba5 | ||
|
|
9782fd929a | ||
|
|
d0dab0894c | ||
|
|
422f716d36 | ||
|
|
1fa200e0fd | ||
|
|
c83edd2209 | ||
|
|
328946944d | ||
|
|
700a2eff60 | ||
|
|
8871c7873d | ||
|
|
47faafa27d | ||
|
|
f0aac156a2 | ||
|
|
148a0052e3 | ||
|
|
68d6fa0176 | ||
|
|
cc8d2c8729 | ||
|
|
34ef6e4ec9 | ||
|
|
3c97f38c5e | ||
|
|
750478036c | ||
|
|
9a0f787484 | ||
|
|
9e99a5f30a | ||
|
|
f471691292 | ||
|
|
dd20af4c19 | ||
|
|
3902a657ee | ||
|
|
84cfc03d29 | ||
|
|
af41bbe7a3 | ||
|
|
ea4c9428a1 | ||
|
|
328bc4c712 | ||
|
|
17b4dbb191 | ||
|
|
7569ca9c87 | ||
|
|
754c86a7c5 | ||
|
|
023bb4a3a1 | ||
|
|
16adebaebf | ||
|
|
7ae8dd128f | ||
|
|
e9863403fe | ||
|
|
260462465e | ||
|
|
de63f1e3d4 | ||
|
|
33b48e0e2d | ||
|
|
d62192fa39 | ||
|
|
62c183470a | ||
|
|
3819c8e24e | ||
|
|
cca1a55647 | ||
|
|
a4ae20f458 | ||
|
|
7009d94648 | ||
|
|
d227d231db | ||
|
|
b8cd2e5d4d | ||
|
|
422b5bda20 | ||
|
|
5f0455c676 | ||
|
|
e4b9e58a41 | ||
|
|
8babfa9d67 | ||
|
|
30b2a5ba09 | ||
|
|
290eab243b | ||
|
|
9bab8765c4 | ||
|
|
e3d34dde82 | ||
|
|
3e9533a624 | ||
|
|
41df6e08ed | ||
|
|
3e0fe86a4b | ||
|
|
469d3d93f9 | ||
|
|
d07a7d229c | ||
|
|
2eddd832e8 | ||
|
|
c7ffa53463 | ||
|
|
be436f6679 | ||
|
|
8e17ad1c5f | ||
|
|
622b8129fb | ||
|
|
b8599d15d0 | ||
|
|
2fa3fca071 | ||
|
|
a67e0e1e23 | ||
|
|
67ace29f28 | ||
|
|
31011d65ed | ||
|
|
f9ed88b84f | ||
|
|
7bf0fc6c77 | ||
|
|
5b7d29de4d | ||
|
|
bc01b42182 | ||
|
|
9ca77eb501 | ||
|
|
36a890ceb4 | ||
|
|
232c63af60 | ||
|
|
686ff1dcde | ||
|
|
7bad1db7e6 | ||
|
|
3a2a5bab2a | ||
|
|
ddbc94e854 | ||
|
|
7332a1807d | ||
|
|
03bb3f4881 | ||
|
|
397cc7af58 | ||
|
|
2afa8c6f0f | ||
|
|
9894b3196f | ||
|
|
094d6961e2 | ||
|
|
4e5796159f | ||
|
|
2409817980 | ||
|
|
641830255f | ||
|
|
347598abac | ||
|
|
f010f8a709 | ||
|
|
26f6e00d15 | ||
|
|
8720c172b0 | ||
|
|
4922ba1082 | ||
|
|
24d91ae7cc | ||
|
|
3f6fcd408e | ||
|
|
643bd8ee80 | ||
|
|
d8195aede5 | ||
|
|
88a7f64510 | ||
|
|
4884b953ce | ||
|
|
d85dd443e0 | ||
|
|
76255dc098 | ||
|
|
aab1d1b48d | ||
|
|
a6b8643941 | ||
|
|
dd99108afd | ||
|
|
23f7c50106 | ||
|
|
55da380795 | ||
|
|
912536c620 | ||
|
|
73e4670f8b | ||
|
|
9e7c2cbf5a | ||
|
|
9dbb8d4001 | ||
|
|
56b39b698d | ||
|
|
2f545a343f | ||
|
|
28eb0a01bd | ||
|
|
ebe2651ce8 |
@@ -1,15 +0,0 @@
|
||||
root = true
|
||||
|
||||
[*]
|
||||
charset = utf-8
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
end_of_line = lf
|
||||
insert_final_newline = true
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[*.{js,jsx,ts,tsx,vue}]
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
trim_trailing_whitespace = true
|
||||
insert_final_newline = true
|
||||
@@ -1,8 +0,0 @@
|
||||
/build/
|
||||
/config/
|
||||
/dist/
|
||||
/static/
|
||||
/*.js
|
||||
|
||||
src/common/fork/*
|
||||
|
||||
@@ -1,67 +0,0 @@
|
||||
// https://eslint.org/docs/user-guide/configuring
|
||||
|
||||
module.exports = {
|
||||
root: true,
|
||||
parser: 'babel-eslint',
|
||||
parserOptions: {
|
||||
sourceType: 'module'
|
||||
},
|
||||
env: {
|
||||
browser: true,
|
||||
},
|
||||
// https://github.com/standard/standard/blob/master/docs/RULES-en.md
|
||||
extends: 'standard',
|
||||
// required to lint *.vue files
|
||||
plugins: [
|
||||
'html'
|
||||
],
|
||||
// add your custom rules here
|
||||
'rules': {
|
||||
// allow paren-less arrow functions
|
||||
'arrow-parens': 0,
|
||||
// allow async-await
|
||||
'generator-star-spacing': 0,
|
||||
// allow debugger during development
|
||||
'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0,
|
||||
|
||||
//ignore the paren check before function.
|
||||
'space-before-function-paren': [0, 'always'],
|
||||
//ignore the space before block.
|
||||
'space-before-blocks': [0, 'always'],
|
||||
//ignore the empty line check.
|
||||
'no-multiple-empty-lines': [0, {'max': 2}],
|
||||
//semicolon or no semicolon is ok.
|
||||
'semi': [0, 'always'],
|
||||
//ignore the space before or after =>
|
||||
'arrow-spacing': 0,
|
||||
//the type of quotes
|
||||
'quotes': [0, 'single'],
|
||||
//block can be padded by blank lines
|
||||
'padded-blocks': 0,
|
||||
//comma spacing before or after.
|
||||
'comma-spacing': 0,
|
||||
//key spacing.
|
||||
'key-spacing': [0, {'beforeColon': false, 'afterColon': true}],
|
||||
//trailing spaces
|
||||
'no-trailing-spaces': 0,
|
||||
//spaced comment
|
||||
'spaced-comment': 0,
|
||||
//keyword-spacing
|
||||
'keyword-spacing': 0,
|
||||
'space-in-parens': 0,
|
||||
'no-extend-native': 0,
|
||||
'no-useless-escape': 0,
|
||||
'no-unused-vars': 0,
|
||||
'no-undef': 0,
|
||||
'no-tabs': 0,
|
||||
'indent': 0,
|
||||
'no-multi-spaces': 0,
|
||||
'eol-last': 0,
|
||||
'no-template-curly-in-string': 0,
|
||||
'no-mixed-spaces-and-tabs': 0,
|
||||
'handle-callback-err': 0,
|
||||
"import/no-webpack-loader-syntax": "off",
|
||||
'object-curly-spacing': 0,
|
||||
'comma-dangle': 0
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,23 @@
|
||||
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
|
||||
|
||||
# dependencies
|
||||
/node_modules
|
||||
/.pnp
|
||||
.pnp.js
|
||||
|
||||
# testing
|
||||
/coverage
|
||||
|
||||
# production
|
||||
/build
|
||||
|
||||
# misc
|
||||
.DS_Store
|
||||
node_modules/
|
||||
/dist/
|
||||
.env.local
|
||||
.env.development.local
|
||||
.env.test.local
|
||||
.env.production.local
|
||||
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
@@ -12,3 +29,7 @@ yarn-error.log*
|
||||
*.ntvs*
|
||||
*.njsproj
|
||||
*.sln
|
||||
draft.html
|
||||
|
||||
report.*.json
|
||||
draft.txt
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"printWidth": 150,
|
||||
"semi": false,
|
||||
"singleQuote": true
|
||||
}
|
||||
@@ -1,27 +0,0 @@
|
||||
# 蓝眼云盘
|
||||
|
||||
2018-04-12
|
||||
tank-1.0.3
|
||||
1. 添加了多文件同时上传的功能.
|
||||
2. 开发情况下有可能上传的文件路径没有权限,添加了更多提示.
|
||||
|
||||
2018-01-19
|
||||
tank-1.0.2
|
||||
1. 修复了下载时无法估算文件大小的bug,header头重添加了Content-Type. [#2](https://github.com/eyebluecn/tank/issues/2)
|
||||
2. 修复了移动端样式混乱的问题.[#3](https://github.com/eyebluecn/tank/issues/3)
|
||||
3. 修复了文夹层数无上限的bug. [#4](https://github.com/eyebluecn/tank/issues/4)
|
||||
4. 修复了文件夹自己移动到自己后就全部消失的bug. [#8](https://github.com/eyebluecn/tank/issues/8)
|
||||
5. 统一不能删除用户,但是可以禁用或者启用用户. [#9](https://github.com/eyebluecn/tank/issues/9)
|
||||
|
||||
|
||||
2018-01-12
|
||||
tank-1.0.1
|
||||
1. 修复面包屑回退的bug [#1](https://github.com/eyebluecn/tank/issues/1)
|
||||
2. 修复移动文件时,可能移到其他人的文件夹下的bug
|
||||
3. 新增404页面
|
||||
4. 移除掉一些没用的代码
|
||||
|
||||
|
||||
2018-01-01
|
||||
tank-1.0.0
|
||||
完成基本核心功能
|
||||
@@ -0,0 +1,27 @@
|
||||
# 4.1.0
|
||||
- [ ] MatterItem抽出通用组件
|
||||
|
||||
# 4.0.4
|
||||
1. 修复已知问题
|
||||
|
||||
# 4.0.3
|
||||
1. 修复已知问题
|
||||
|
||||
# 4.0.2
|
||||
1. 修复文件夹跳转列表获取问题
|
||||
|
||||
# 4.0.1
|
||||
1. 修复一些已知问题
|
||||
|
||||
# 4.0.0
|
||||
1. 共享空间
|
||||
|
||||
# 3.2.0
|
||||
1. PC端不展示左侧关于菜单
|
||||
|
||||
# 3.1.6
|
||||
1. 增加云盘剩余容量显示
|
||||
2. 优化拖拽文件夹进行上传的错误提示
|
||||
3. 优化超出限制大小的错误提示
|
||||
4. 文件列表页右键展示操作目录
|
||||
5. 修复一些已知问题
|
||||
@@ -1,6 +1,6 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2017 蓝眼
|
||||
Copyright (c) 2017 eyebluecn
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
||||
@@ -1,70 +1,66 @@
|
||||

|
||||
[](https://github.com/eyebluecn/tank)
|
||||
|
||||
# 蓝眼云盘前端
|
||||
[English Version](https://tank-doc.eyeblue.cn/en)
|
||||
|
||||
##### [在线Demo](http://tank.eyeblue.cn) (体验账号: demo 密码:123456)
|
||||
# 蓝眼云盘(4.0.4)
|
||||
[在线Demo](https://tank.eyeblue.cn) (体验账号: demo 密码:123456)
|
||||
|
||||
##### [配套后端tank](https://github.com/eyebluecn/tank)
|
||||
蓝眼云盘是蓝眼开源系列代表作品之一,致力于打造精致,优雅,简约的云盘。核心功能如下:
|
||||
1. 文件列表
|
||||
2. 文件/文件夹上传 + 拖拽上传
|
||||
3. 文件分享
|
||||
4. 文件监控统计
|
||||
5. 回收站
|
||||
6. 多用户
|
||||
7. [WebDav](https://tank-doc.eyeblue.cn/advance/webdav.html)
|
||||
8. [扫描磁盘任务](https://tank-doc.eyeblue.cn/advance/scan.html)
|
||||
9. [在线预览及自定义配置预览引擎](https://tank-doc.eyeblue.cn/advance/preview.html)
|
||||
10. 无需安装数据库,支持文件数据库sqlite.
|
||||
|
||||
### 简介
|
||||
蓝眼云盘是前后端彻底分离的项目,本项目主要为后端提供静态资源文件。更多关于蓝眼云盘的介绍,请参考[蓝眼云盘后端](https://github.com/eyebluecn/tank)
|
||||
[更多内容请移步至文档](https://tank-doc.eyeblue.cn/)
|
||||
|
||||
如果您觉得蓝眼云盘对您有帮助,请不要吝惜您的star :smile:
|
||||
|
||||
### 技术栈
|
||||
|
||||
vue2.0 + vue-router + vuex + vue-resource + webpack + es6 + less
|
||||
|
||||
|
||||
### 运行
|
||||
|
||||
```
|
||||
npm install
|
||||
|
||||
npm run serve
|
||||
```
|
||||
|
||||
### 打包
|
||||
|
||||
```
|
||||
npm run build
|
||||
```
|
||||
打包的结果在`dist`文件夹下,将该文件夹下的内容放置在[后端tank](https://github.com/eyebluecn/tank)的`build/html`文件夹下即可。
|
||||
|
||||
|
||||
### 配套后端
|
||||
此项目有配套后端项目,对golang感兴趣的同学可以猛戳 [配套后端tank](https://github.com/eyebluecn/tank)
|
||||
|
||||
### 总结
|
||||
1、 蓝眼的宗旨是专注于开源精致而优雅的软件,所以在代码的构建过程中我们不停地思考与迭代,追求最优质的代码。
|
||||
|
||||
2、 蓝眼云盘前端代码的构建完全面向对象,可扩展能力强,涉及多用户,多权限功能。
|
||||
|
||||
3、 蓝眼云盘后端采用了更贴近底层golang语言,更加适用于文件传输类的软件,速度更快,用户体验更好。
|
||||
|
||||
### Contribution
|
||||
|
||||
感谢所有蓝眼云盘的贡献者 [@zicla](https://github.com/zicla),[@seaheart](https://github.com/seaheart),@heying,[@hxsherry](https://github.com/hxsherry)
|
||||
|
||||
如果您也想参与进来,请尽情的fork, star, post issue, pull requests
|
||||
前端技术栈:Typescript + React + Ant Design 4.0 + OOP
|
||||
|
||||
### 软件截图
|
||||
|
||||
#### PC端截图
|
||||
|
||||

|
||||

|
||||
|
||||

|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||

|
||||
|
||||
#### 手机端截图
|
||||
|
||||

|
||||

|
||||
|
||||
## [安装文档](https://tank-doc.eyeblue.cn/basic/install.html)
|
||||
|
||||
## 启动本项目
|
||||
```shell
|
||||
# if not install yarn
|
||||
# npm install -g yarn
|
||||
|
||||
yarn --registry=https://registry.npmmirror.com
|
||||
yarn start
|
||||
```
|
||||
|
||||
### Contribution
|
||||
|
||||
感谢所有蓝眼云盘的贡献者 [@zicla](https://github.com/zicla),[@seaheart](https://github.com/seaheart),[@yemuhe](https://github.com/yemuhe),[@hxsherry](https://github.com/hxsherry)
|
||||
|
||||
如果您也想参与进来,请尽情的fork, star, post issue, pull requests
|
||||
|
||||
当然你可以加入钉钉群(一群已满员)一起直接交流,在钉钉群中可以获取最新beta版本。
|
||||
|
||||

|
||||
|
||||
群号:44754005
|
||||
|
||||
### Support
|
||||
IDE for this project is supported by [Jetbrains](https://jb.gg/OpenSourceSupport).
|
||||
|
||||
[](https://jb.gg/OpenSourceSupport)
|
||||
|
||||
### License
|
||||
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
module.exports = {
|
||||
presets: [
|
||||
'@vue/app'
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
const CracoLessPlugin = require('craco-less')
|
||||
const { CracoAliasPlugin } = require('react-app-alias')
|
||||
const path = require('node:path')
|
||||
|
||||
module.exports = {
|
||||
devServer: {
|
||||
port: 6015,
|
||||
// proxy for local development.
|
||||
proxy: {
|
||||
'/api': {
|
||||
// target: 'http://localhost:6010',
|
||||
target: 'https://tank.ycyin.cn',
|
||||
changeOrigin: true,
|
||||
pathRewrite: {
|
||||
'^/api': '/api',
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
plugins: [
|
||||
{
|
||||
// less loader.
|
||||
plugin: CracoLessPlugin,
|
||||
options: {
|
||||
// resolve-url-loader只对sass生效,craco-less默认使用sass配置,所以这里手动过滤掉resolve-url-loader
|
||||
modifyLessRule: (lessRule) => {
|
||||
lessRule.use = lessRule.use.filter((i) => !i.loader.includes('resolve-url-loader'))
|
||||
return lessRule
|
||||
},
|
||||
lessLoaderOptions: {
|
||||
lessOptions: {
|
||||
modifyVars: { '@primary-color': '#215891' },
|
||||
javascriptEnabled: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
plugin: CracoAliasPlugin,
|
||||
options: {
|
||||
alias: {
|
||||
'@': path.resolve(__dirname, 'src'),
|
||||
},
|
||||
},
|
||||
},
|
||||
],
|
||||
}
|
||||
|
After Width: | Height: | Size: 77 KiB |
|
After Width: | Height: | Size: 58 KiB |
|
After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
|
After Width: | Height: | Size: 55 KiB |
|
After Width: | Height: | Size: 135 KiB |
|
After Width: | Height: | Size: 63 KiB |
|
After Width: | Height: | Size: 48 KiB |
|
After Width: | Height: | Size: 63 KiB |
@@ -1,33 +0,0 @@
|
||||
## change default port to 6015
|
||||
create file `vue.config.js` next to `package.json`
|
||||
```js
|
||||
module.exports = {
|
||||
devServer: {
|
||||
port: 6015
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Add less support
|
||||
|
||||
npm install -D less-loader less
|
||||
|
||||
## Add http proxy
|
||||
|
||||
```
|
||||
module.exports = {
|
||||
devServer: {
|
||||
proxy: {
|
||||
'/api': {
|
||||
//target: 'https://tank.eyeblue.cn',
|
||||
target: 'http://127.0.0.1:6010',
|
||||
changeOrigin: true,
|
||||
pathRewrite: {
|
||||
'^/api': '/api'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
<!--<code_scheme name="Project" version="173" />-->
|
||||
@@ -1,79 +1,68 @@
|
||||
{
|
||||
"name": "EyeblueTank",
|
||||
"version": "0.1.0",
|
||||
"name": "tank-front",
|
||||
"version": "4.0.4",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"serve": "vue-cli-service serve",
|
||||
"build": "vue-cli-service build",
|
||||
"lint": "vue-cli-service lint"
|
||||
},
|
||||
"dependencies": {
|
||||
"animate.css": "^3.7.0",
|
||||
"babel-polyfill": "^6.26.0",
|
||||
"bootstrap": "^3.4.1",
|
||||
"clipboard": "^2.0.4",
|
||||
"core-js": "^2.6.5",
|
||||
"echarts": "^4.2.1",
|
||||
"element-ui": "^2.8.2",
|
||||
"enquire.js": "^2.1.6",
|
||||
"font-awesome": "^4.7.0",
|
||||
"icheck": "^1.0.2",
|
||||
"jquery": "^3.4.1",
|
||||
"js-cookie": "^2.2.0",
|
||||
"perfect-scrollbar": "^1.4.0",
|
||||
"swiper": "^4.5.0",
|
||||
"velocity-animate": "^1.5.2",
|
||||
"vue": "^2.6.10",
|
||||
"vue-echarts": "^4.0.2",
|
||||
"vue-i18n": "^8.11.2",
|
||||
"vue-multiselect": "^2.1.6",
|
||||
"vue-nprogress": "^0.1.5",
|
||||
"vue-resource": "^1.5.1",
|
||||
"vue-router": "^3.0.6",
|
||||
"vuex": "^3.1.1",
|
||||
"vuex-router-sync": "^5.0.0",
|
||||
"x-photoswipe": "^4.1.3-rc.1"
|
||||
"@ahooksjs/use-url-state": "^3.5.1",
|
||||
"@ant-design/icons": "4.7.0",
|
||||
"@craco/craco": "6.4.3",
|
||||
"@types/echarts": "4.6.1",
|
||||
"@types/node": "16.7.13",
|
||||
"@types/qs": "^6.9.7",
|
||||
"@types/react": "17.0.2",
|
||||
"@types/react-dom": "17.0.2",
|
||||
"@types/react-router-dom": "^5.3.3",
|
||||
"ahooks": "^3.8.0",
|
||||
"antd": "4.19.2",
|
||||
"axios": "^1.7.2",
|
||||
"comma-separated-values": "^3.6.4",
|
||||
"copy-to-clipboard": "^3.3.3",
|
||||
"craco-less": "2.0.0",
|
||||
"echarts": "4.8.0",
|
||||
"echarts-for-react": "2.0.16",
|
||||
"qs": "^6.10.3",
|
||||
"react": "17.0.2",
|
||||
"react-dom": "17.0.2",
|
||||
"react-photo-view": "^1.2.3",
|
||||
"react-router": "^5.2.0",
|
||||
"react-router-dom": "^5.2.0",
|
||||
"react-scripts": "5.0.0",
|
||||
"typescript": "4.4.2",
|
||||
"velocity-react": "^1.4.3"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "craco start",
|
||||
"build": "craco build"
|
||||
},
|
||||
"browserslist": {
|
||||
"production": [
|
||||
">0.2%",
|
||||
"not dead",
|
||||
"not op_mini all"
|
||||
],
|
||||
"development": [
|
||||
"last 1 chrome version",
|
||||
"last 1 firefox version",
|
||||
"last 1 safari version"
|
||||
]
|
||||
},
|
||||
"devDependencies": {
|
||||
"@vue/cli-plugin-babel": "^3.7.0",
|
||||
"@vue/cli-plugin-eslint": "^3.7.0",
|
||||
"@vue/cli-service": "^3.7.0",
|
||||
"@vue/eslint-config-standard": "^4.0.0",
|
||||
"babel-eslint": "^10.0.1",
|
||||
"eslint": "^5.16.0",
|
||||
"eslint-config-standard": "^12.0.0",
|
||||
"eslint-plugin-html": "^5.0.5",
|
||||
"eslint-plugin-import": "^2.17.2",
|
||||
"eslint-plugin-node": "^9.0.1",
|
||||
"eslint-plugin-promise": "^4.1.1",
|
||||
"eslint-plugin-standard": "^4.0.0",
|
||||
"eslint-plugin-vue": "^5.0.0",
|
||||
"less": "^3.9.0",
|
||||
"less-loader": "^5.0.0",
|
||||
"vue-template-compiler": "^2.5.21"
|
||||
"husky": "^8.0.3",
|
||||
"lint-staged": "^13.2.2",
|
||||
"postcss-flexbugs-fixes": "^5.0.2",
|
||||
"prettier": "^3.2.5",
|
||||
"react-app-alias": "^2.2.2"
|
||||
},
|
||||
"eslintConfig": {
|
||||
"root": true,
|
||||
"env": {
|
||||
"node": true
|
||||
},
|
||||
"extends": [
|
||||
"plugin:vue/essential",
|
||||
"eslint:recommended",
|
||||
"@vue/standard"
|
||||
],
|
||||
"rules": {},
|
||||
"parserOptions": {
|
||||
"parser": "babel-eslint"
|
||||
"husky": {
|
||||
"hooks": {
|
||||
"pre-commit": "lint-staged"
|
||||
}
|
||||
},
|
||||
"postcss": {
|
||||
"plugins": {
|
||||
"autoprefixer": {}
|
||||
}
|
||||
"lint-staged": {
|
||||
"*.{js,jsx,ts,tsx}": [
|
||||
"prettier --write",
|
||||
"git add"
|
||||
]
|
||||
},
|
||||
"browserslist": [
|
||||
"> 1%",
|
||||
"last 2 versions"
|
||||
]
|
||||
"packageManager": "yarn@1.22.19+sha1.4ba7fc5c6e704fce2066ecbfb0b0d8976fe62447"
|
||||
}
|
||||
|
||||
@@ -1,17 +1,18 @@
|
||||
<!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">
|
||||
<meta charset="utf-8" />
|
||||
<link rel="icon" href="%PUBLIC_URL%/favicon.ico" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<meta name="theme-color" content="#000000" />
|
||||
<meta
|
||||
name="description"
|
||||
content="eyeblue tank"
|
||||
/>
|
||||
<title>EyeblueTank</title>
|
||||
</head>
|
||||
<body>
|
||||
<noscript>
|
||||
<strong>We're sorry but tank-front-tmp doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
|
||||
</noscript>
|
||||
<div id="app"></div>
|
||||
<!-- built files will be auto injected -->
|
||||
<noscript>You need to enable JavaScript to run EyeblueTank.</noscript>
|
||||
<div id="root"></div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
//import global style.
|
||||
@import './assets/css/index.less';
|
||||
@import '~antd/dist/antd.less';
|
||||
@@ -0,0 +1,23 @@
|
||||
import React from 'react'
|
||||
import { BrowserRouter as Router } from 'react-router-dom'
|
||||
import { ConfigProvider } from 'antd'
|
||||
import Frame from './pages/Frame'
|
||||
import en_US from 'antd/es/locale/en_US'
|
||||
|
||||
// global less 须放在Frame组件之后,不然会出现按需加载的less文件覆盖样式问题
|
||||
import './App.less'
|
||||
import GlobalContextProvider from '@/contexts/globalContext'
|
||||
|
||||
function App() {
|
||||
return (
|
||||
<Router>
|
||||
<ConfigProvider locale={en_US}>
|
||||
<GlobalContextProvider>
|
||||
<Frame />
|
||||
</GlobalContextProvider>
|
||||
</ConfigProvider>
|
||||
</Router>
|
||||
)
|
||||
}
|
||||
|
||||
export default App
|
||||
@@ -1,97 +0,0 @@
|
||||
<template>
|
||||
<div class="nb-app">
|
||||
|
||||
<NprogressContainer/>
|
||||
<router-view/>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import NprogressContainer from 'vue-nprogress/src/NprogressContainer'
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
preference: this.$store.state.preference
|
||||
}
|
||||
},
|
||||
computed: {},
|
||||
components: {
|
||||
NprogressContainer
|
||||
},
|
||||
mounted() {
|
||||
|
||||
let that = this
|
||||
this.preference.httpFetch()
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
<style lang="less" rel="stylesheet/less">
|
||||
|
||||
@import "~font-awesome/css/font-awesome.css";
|
||||
@import "./assets/css/app.less";
|
||||
|
||||
.nb-app {
|
||||
|
||||
height: 100%;
|
||||
|
||||
.nprogress-container {
|
||||
position: fixed !important;
|
||||
width: 100%;
|
||||
height: 150px;
|
||||
z-index: 2048;
|
||||
pointer-events: none;
|
||||
|
||||
#nprogress {
|
||||
//@color: #48e79a;
|
||||
@color: #1ab394;
|
||||
|
||||
.bar {
|
||||
background: @color;
|
||||
}
|
||||
|
||||
.peg {
|
||||
box-shadow: 0 0 10px @color, 0 0 5px @color;
|
||||
}
|
||||
|
||||
.spinner-icon {
|
||||
border-top-color: @color;
|
||||
border-left-color: @color;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//所有的滚动条样式
|
||||
::-webkit-scrollbar {
|
||||
width: 6px;
|
||||
height: 6px;
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-track-piece {
|
||||
background-color: #eee;
|
||||
margin: -2px;
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-thumb {
|
||||
background: #aaa;
|
||||
min-height: 150px;
|
||||
min-width: 150px;
|
||||
border-radius: 10px;
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-thumb:vertical:hover {
|
||||
background: #555555
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-thumb:horizontal:hover {
|
||||
background: #555555
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
@@ -0,0 +1,16 @@
|
||||
import { generateCRUDApi } from './util'
|
||||
import { IMatter } from '@/models/Matter'
|
||||
import { axios } from '@/setupAxios'
|
||||
|
||||
const API_PREFIX = 'matter'
|
||||
|
||||
export const matterCRUDApi = generateCRUDApi<{
|
||||
listResponse: {
|
||||
data: IMatter[]
|
||||
total: number
|
||||
}
|
||||
}>(API_PREFIX)
|
||||
|
||||
export const updateMatterPrivacy = (body: { spaceUuid: string; uuid: string; privacy: boolean }) => {
|
||||
return axios.post(`${API_PREFIX}/change/privacy`, body)
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
import { axios } from '@/setupAxios'
|
||||
|
||||
export const generateCRUDApi = <
|
||||
T extends {
|
||||
filters?: Record<string, unknown>
|
||||
listResponse?: any // list接口返回值
|
||||
},
|
||||
>(
|
||||
apiPrefix: string,
|
||||
) => {
|
||||
return {
|
||||
list: (filters?: T['filters']): Promise<T['listResponse']> => {
|
||||
return axios.get(`${apiPrefix}/page`)
|
||||
},
|
||||
get: () => {},
|
||||
save: () => {},
|
||||
delete: () => {},
|
||||
}
|
||||
}
|
||||
@@ -1,169 +0,0 @@
|
||||
//global css.
|
||||
//Include font-awesome
|
||||
//Include what we need in bootstrap.
|
||||
@import "bootstrap/bootstrap.less";
|
||||
@import "inspinia/style.less";
|
||||
//Animated
|
||||
@import "~animate.css/animate.min.css";
|
||||
//element-ui
|
||||
@import "~element-ui/lib/theme-chalk/index.css";
|
||||
//使用自定义的主题
|
||||
@import "global/border.less";
|
||||
@import "global/button.less";
|
||||
@import "global/color.less";
|
||||
@import "global/font.less";
|
||||
@import "global/layout.less";
|
||||
@import "global/miscellaneous.less";
|
||||
@import "global/responsive.less";
|
||||
|
||||
//h2被污染了
|
||||
.el-notification__title {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.el-dialog__wrapper {
|
||||
.el-dialog__body {
|
||||
padding: 0 20px 20px 20px;
|
||||
}
|
||||
}
|
||||
|
||||
//手机端的弹出框太大了
|
||||
@media (max-width: 768px) {
|
||||
.el-message-box__wrapper {
|
||||
.el-message-box {
|
||||
width: 90%;
|
||||
}
|
||||
}
|
||||
|
||||
.el-dialog__wrapper {
|
||||
.el-dialog {
|
||||
width: 90%;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
html, body {
|
||||
font-family: "微软雅黑", Microsoft YaHei, "Helvetica Neue", Helvetica, Arial, sans-serif, "open sans";
|
||||
font-size: 13px;
|
||||
color: @text-color;
|
||||
background-color: white;
|
||||
|
||||
img {
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//列表单元格的样式。
|
||||
.nb-app {
|
||||
|
||||
//media-body下的p字体大小
|
||||
.media-body {
|
||||
p {
|
||||
font-size: 13px;
|
||||
}
|
||||
}
|
||||
|
||||
.cell-title {
|
||||
font-size: 17px;
|
||||
color: @app-color-title;
|
||||
.one-line;
|
||||
|
||||
a {
|
||||
font-size: 17px;
|
||||
color: @app-color-title;
|
||||
|
||||
&:hover {
|
||||
color: @brand-primary;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.cell-content {
|
||||
font-size: 12px;
|
||||
color: @app-color-title;
|
||||
letter-spacing: 0;
|
||||
line-height: 18px;
|
||||
}
|
||||
|
||||
.cell-description {
|
||||
font-size: 12px;
|
||||
color: @app-color-content;
|
||||
letter-spacing: 0;
|
||||
line-height: 24px;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//超链接颜色.
|
||||
a {
|
||||
color: @brand-primary;
|
||||
|
||||
&:hover, &:focus {
|
||||
color: @brand-info;
|
||||
}
|
||||
}
|
||||
|
||||
//段落统一样式
|
||||
p {
|
||||
color: #333;
|
||||
font-size: 15px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
//每个页面导航处样式
|
||||
.pedia-navigation {
|
||||
margin-bottom: 10px;
|
||||
border-bottom: 1px solid #E6E6E6;
|
||||
position: relative;
|
||||
|
||||
.item {
|
||||
font-size: 16px;
|
||||
color: #778195;
|
||||
margin-top: 15px;
|
||||
margin-right: 20px;
|
||||
display: inline-block;
|
||||
box-sizing: content-box;
|
||||
line-height: 30px;
|
||||
|
||||
&:hover, &.is-link-active, &.active {
|
||||
color: @brand-primary;
|
||||
|
||||
border-bottom: 2px solid @brand-primary;
|
||||
}
|
||||
}
|
||||
|
||||
.tool {
|
||||
position: absolute;
|
||||
right: 0;
|
||||
bottom: 5px;
|
||||
display: inline-block;
|
||||
}
|
||||
}
|
||||
|
||||
//markdown中默认图片剧中
|
||||
p {
|
||||
> img {
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
|
||||
//列表页中展开的标准样式
|
||||
.form-info {
|
||||
margin-bottom: 10px;
|
||||
|
||||
> span:first-child:not(.label) {
|
||||
width: 150px;
|
||||
color: #99a9bf;
|
||||
font-size: 15px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
> span:last-child:not(.label) {
|
||||
font-size: 15px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,54 +0,0 @@
|
||||
/*!
|
||||
* Bootstrap v3.3.7 (http://getbootstrap.com)
|
||||
* Copyright 2011-2016 Twitter, Inc.
|
||||
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
|
||||
*/
|
||||
// Core variables and mixins
|
||||
@import "../global/variables.less";
|
||||
|
||||
|
||||
|
||||
@import "~bootstrap/less/mixins.less";
|
||||
// Reset and dependencies
|
||||
@import "~bootstrap/less/normalize.less";
|
||||
@import "~bootstrap/less/print.less";
|
||||
//We DO NOT use bootstrap's icon. We use font-awesome
|
||||
//@import "~bootstrap/less/glyphicons.less";
|
||||
// Core CSS
|
||||
@import "~bootstrap/less/scaffolding.less";
|
||||
@import "~bootstrap/less/type.less";
|
||||
@import "~bootstrap/less/code.less";
|
||||
@import "~bootstrap/less/grid.less";
|
||||
@import "~bootstrap/less/tables.less";
|
||||
@import "~bootstrap/less/forms.less";
|
||||
@import "~bootstrap/less/buttons.less";
|
||||
// Components
|
||||
@import "~bootstrap/less/component-animations.less";
|
||||
@import "~bootstrap/less/dropdowns.less";
|
||||
@import "~bootstrap/less/button-groups.less";
|
||||
@import "~bootstrap/less/input-groups.less";
|
||||
@import "~bootstrap/less/navs.less";
|
||||
@import "~bootstrap/less/navbar.less";
|
||||
@import "~bootstrap/less/breadcrumbs.less";
|
||||
@import "~bootstrap/less/pagination.less";
|
||||
@import "~bootstrap/less/pager.less";
|
||||
@import "~bootstrap/less/labels.less";
|
||||
@import "~bootstrap/less/badges.less";
|
||||
@import "~bootstrap/less/jumbotron.less";
|
||||
@import "~bootstrap/less/thumbnails.less";
|
||||
@import "~bootstrap/less/alerts.less";
|
||||
@import "~bootstrap/less/progress-bars.less";
|
||||
@import "~bootstrap/less/media.less";
|
||||
@import "~bootstrap/less/list-group.less";
|
||||
@import "~bootstrap/less/panels.less";
|
||||
@import "~bootstrap/less/responsive-embed.less";
|
||||
@import "~bootstrap/less/wells.less";
|
||||
@import "~bootstrap/less/close.less";
|
||||
// Components w/ JavaScript
|
||||
@import "~bootstrap/less/modals.less";
|
||||
@import "~bootstrap/less/tooltip.less";
|
||||
@import "~bootstrap/less/popovers.less";
|
||||
@import "~bootstrap/less/carousel.less";
|
||||
// Utility classes
|
||||
@import "~bootstrap/less/utilities.less";
|
||||
@import "~bootstrap/less/responsive-utilities.less";
|
||||
@@ -36,6 +36,6 @@
|
||||
}
|
||||
|
||||
.border-bottom {
|
||||
border-bottom: 1px solid #eee;
|
||||
border-bottom: 1px solid #F9F9F9;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,31 +1,85 @@
|
||||
@import "variables";
|
||||
|
||||
.btn {
|
||||
display: inline-block;
|
||||
margin-bottom: 0;
|
||||
font-weight: normal;
|
||||
text-align: center;
|
||||
white-space: nowrap;
|
||||
vertical-align: middle;
|
||||
-ms-touch-action: manipulation;
|
||||
touch-action: manipulation;
|
||||
cursor: pointer;
|
||||
background-image: none;
|
||||
border: 1px solid transparent;
|
||||
padding: 6px 12px;
|
||||
font-size: 14px;
|
||||
line-height: 1.42857143;
|
||||
border-radius: 4px;
|
||||
-webkit-user-select: none;
|
||||
-moz-user-select: none;
|
||||
-ms-user-select: none;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
.btn-action {
|
||||
margin: 0 3px;
|
||||
display: inline-block;
|
||||
opacity: 0.85;
|
||||
-webkit-transition: all 0.1s;
|
||||
-o-transition: all 0.1s;
|
||||
transition: all 0.1s;
|
||||
cursor: pointer;
|
||||
margin: 0 3px;
|
||||
display: inline-block;
|
||||
opacity: 0.85;
|
||||
-webkit-transition: all 0.1s;
|
||||
-o-transition: all 0.1s;
|
||||
transition: all 0.1s;
|
||||
cursor: pointer;
|
||||
outline: none;
|
||||
|
||||
&:hover {
|
||||
text-decoration: none;
|
||||
opacity: 1;
|
||||
-moz-transform: scale(1.2);
|
||||
-webkit-transform: scale(1.2);
|
||||
-o-transform: scale(1.2);
|
||||
-ms-transform: scale(1.2);
|
||||
transform: scale(1.2);
|
||||
}
|
||||
&:hover {
|
||||
text-decoration: none;
|
||||
opacity: 1;
|
||||
-moz-transform: scale(1.2);
|
||||
-webkit-transform: scale(1.2);
|
||||
-o-transform: scale(1.2);
|
||||
-ms-transform: scale(1.2);
|
||||
transform: scale(1.2);
|
||||
}
|
||||
|
||||
&:focus {
|
||||
outline: none;
|
||||
}
|
||||
}
|
||||
|
||||
.btn-primary {
|
||||
color: #fff;
|
||||
background-color: #337ab7;
|
||||
border-color: #2e6da4;
|
||||
}
|
||||
|
||||
.btn-primary:focus,
|
||||
.btn-primary.focus {
|
||||
color: #fff;
|
||||
background-color: #286090;
|
||||
border-color: #122b40;
|
||||
}
|
||||
|
||||
.btn-primary:hover {
|
||||
color: #fff;
|
||||
background-color: #286090;
|
||||
border-color: #204d74;
|
||||
}
|
||||
|
||||
.btn-sm {
|
||||
padding: 5px 10px;
|
||||
font-size: 12px;
|
||||
line-height: 1.5;
|
||||
border-radius: 3px;
|
||||
}
|
||||
|
||||
//编辑区域按钮,鼠标一上去按钮变大
|
||||
.action-buttons {
|
||||
a {
|
||||
.btn-action;
|
||||
}
|
||||
a {
|
||||
.btn-action;
|
||||
}
|
||||
}
|
||||
|
||||
.cursor {
|
||||
cursor: pointer;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
@@ -1,358 +1,391 @@
|
||||
@import "./variables.less";
|
||||
|
||||
.bg-primary {
|
||||
background-color: @brand-primary;
|
||||
color: white;
|
||||
background-color: @brand-primary;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.bg-success {
|
||||
background-color: @brand-success;
|
||||
color: white;
|
||||
background-color: @brand-success;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.bg-info {
|
||||
background-color: @brand-info;
|
||||
color: white;
|
||||
background-color: @brand-info;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.bg-warning {
|
||||
background-color: @brand-warning;
|
||||
color: white;
|
||||
background-color: @brand-warning;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.bg-danger {
|
||||
background-color: @brand-danger;
|
||||
color: white;
|
||||
background-color: @brand-danger;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.bg-gray {
|
||||
background-color: @brand-gray;
|
||||
color: white;
|
||||
background-color: @brand-gray;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.bg-laxative {
|
||||
background-color: @brand-laxative;
|
||||
color: white;
|
||||
background-color: @brand-laxative;
|
||||
color: white;
|
||||
}
|
||||
|
||||
|
||||
.text-primary {
|
||||
color: @brand-primary;
|
||||
color: @brand-primary;
|
||||
}
|
||||
|
||||
.text-success {
|
||||
color: @brand-success;
|
||||
}
|
||||
|
||||
.text-info {
|
||||
color: @brand-info;
|
||||
}
|
||||
|
||||
.text-warning {
|
||||
color: @brand-warning;
|
||||
}
|
||||
|
||||
.text-danger {
|
||||
color: @brand-danger;
|
||||
}
|
||||
|
||||
.text-gray {
|
||||
color: @brand-gray;
|
||||
}
|
||||
|
||||
.text-laxative {
|
||||
color: @brand-laxative;
|
||||
}
|
||||
|
||||
.text-theme {
|
||||
color: @primary-color;
|
||||
}
|
||||
|
||||
.bg-navy {
|
||||
background-color: #001F3F;
|
||||
background-color: #001F3F;
|
||||
}
|
||||
|
||||
.bg-blue {
|
||||
background-color: #0074D9;
|
||||
background-color: #0074D9;
|
||||
}
|
||||
|
||||
.bg-aqua {
|
||||
background-color: #7FDBFF;
|
||||
background-color: #7FDBFF;
|
||||
}
|
||||
|
||||
.bg-aliceblue {
|
||||
background-color: aliceblue;
|
||||
background-color: aliceblue;
|
||||
}
|
||||
|
||||
.bg-pink {
|
||||
background-color: pink;
|
||||
background-color: pink;
|
||||
}
|
||||
|
||||
.bg-azure {
|
||||
background-color: azure;
|
||||
background-color: azure;
|
||||
}
|
||||
|
||||
.bg-teal {
|
||||
background-color: #39CCCC;
|
||||
background-color: #39CCCC;
|
||||
}
|
||||
|
||||
.bg-olive {
|
||||
background-color: #3D9970;
|
||||
background-color: #3D9970;
|
||||
}
|
||||
|
||||
.bg-green {
|
||||
background-color: #2ECC40;
|
||||
background-color: #2ECC40;
|
||||
}
|
||||
|
||||
.bg-lime {
|
||||
background-color: #01FF70;
|
||||
background-color: #01FF70;
|
||||
}
|
||||
|
||||
.bg-yellow {
|
||||
background-color: #FFDC00;
|
||||
background-color: #FFDC00;
|
||||
}
|
||||
|
||||
.bg-pink {
|
||||
color: pink;
|
||||
color: pink;
|
||||
}
|
||||
|
||||
.bg-orange {
|
||||
background-color: #FF851B;
|
||||
background-color: #FF851B;
|
||||
}
|
||||
|
||||
.bg-red {
|
||||
background-color: #FF4136;
|
||||
background-color: #FF4136;
|
||||
}
|
||||
|
||||
.bg-fuchsia {
|
||||
background-color: #F012BE;
|
||||
background-color: #F012BE;
|
||||
}
|
||||
|
||||
.bg-purple {
|
||||
background-color: #B10DC9;
|
||||
background-color: #B10DC9;
|
||||
}
|
||||
|
||||
.bg-maroon {
|
||||
background-color: #85144B;
|
||||
background-color: #85144B;
|
||||
}
|
||||
|
||||
.bg-white {
|
||||
background-color: #FFFFFF;
|
||||
background-color: #FFFFFF;
|
||||
}
|
||||
|
||||
.bg-gray {
|
||||
background-color: #AAAAAA;
|
||||
background-color: #AAAAAA;
|
||||
}
|
||||
|
||||
.bg-silver {
|
||||
background-color: #DDDDDD;
|
||||
background-color: #DDDDDD;
|
||||
}
|
||||
|
||||
.bg-silver-white {
|
||||
background-color: #EEEEEE;
|
||||
background-color: #EEEEEE;
|
||||
}
|
||||
|
||||
.bg-black {
|
||||
background-color: #111111;
|
||||
background-color: #111111;
|
||||
}
|
||||
|
||||
.bg-111 {
|
||||
background-color: #111
|
||||
background-color: #111
|
||||
}
|
||||
|
||||
.bg-222 {
|
||||
background-color: #222
|
||||
background-color: #222
|
||||
}
|
||||
|
||||
.bg-333 {
|
||||
background-color: #333
|
||||
background-color: #333
|
||||
}
|
||||
|
||||
.bg-444 {
|
||||
background-color: #444
|
||||
background-color: #444
|
||||
}
|
||||
|
||||
.bg-555 {
|
||||
background-color: #555
|
||||
background-color: #555
|
||||
}
|
||||
|
||||
.bg-666 {
|
||||
background-color: #666
|
||||
background-color: #666
|
||||
}
|
||||
|
||||
.bg-777 {
|
||||
background-color: #777
|
||||
background-color: #777
|
||||
}
|
||||
|
||||
.bg-888 {
|
||||
background-color: #888
|
||||
background-color: #888
|
||||
}
|
||||
|
||||
.bg-999 {
|
||||
background-color: #999
|
||||
background-color: #999
|
||||
}
|
||||
|
||||
.bg-aaa {
|
||||
background-color: #aaa
|
||||
background-color: #aaa
|
||||
}
|
||||
|
||||
.bg-bbb {
|
||||
background-color: #bbb
|
||||
background-color: #bbb
|
||||
}
|
||||
|
||||
.bg-ccc {
|
||||
background-color: #ccc
|
||||
background-color: #ccc
|
||||
}
|
||||
|
||||
.bg-ddd {
|
||||
background-color: #ddd
|
||||
background-color: #ddd
|
||||
}
|
||||
|
||||
.bg-eee {
|
||||
background-color: #eee
|
||||
background-color: #eee
|
||||
}
|
||||
|
||||
|
||||
/* Colors */
|
||||
.navy {
|
||||
color: #001F3F;
|
||||
color: #001F3F;
|
||||
}
|
||||
|
||||
.blue {
|
||||
color: #0074D9;
|
||||
color: #0074D9;
|
||||
}
|
||||
|
||||
.aqua {
|
||||
color: #7FDBFF;
|
||||
color: #7FDBFF;
|
||||
}
|
||||
|
||||
.teal {
|
||||
color: #39CCCC;
|
||||
color: #39CCCC;
|
||||
}
|
||||
|
||||
.olive {
|
||||
color: #3D9970;
|
||||
color: #3D9970;
|
||||
}
|
||||
|
||||
.green {
|
||||
color: #2ECC40;
|
||||
color: #2ECC40;
|
||||
}
|
||||
|
||||
.lime {
|
||||
color: #01FF70;
|
||||
color: #01FF70;
|
||||
}
|
||||
|
||||
.yellow {
|
||||
color: #FFDC00;
|
||||
color: #FFDC00;
|
||||
}
|
||||
|
||||
.pink {
|
||||
color: pink;
|
||||
color: pink;
|
||||
}
|
||||
|
||||
.orange {
|
||||
color: #FF851B;
|
||||
color: #FF851B;
|
||||
}
|
||||
|
||||
.red {
|
||||
color: #FF4136;
|
||||
color: #FF4136;
|
||||
}
|
||||
|
||||
.fuchsia {
|
||||
color: #F012BE;
|
||||
color: #F012BE;
|
||||
}
|
||||
|
||||
.purple {
|
||||
color: #B10DC9;
|
||||
color: #B10DC9;
|
||||
}
|
||||
|
||||
.maroon {
|
||||
color: #85144B;
|
||||
color: #85144B;
|
||||
}
|
||||
|
||||
.white {
|
||||
color: #FFFFFF;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.silver {
|
||||
color: #DDDDDD;
|
||||
color: #DDDDDD;
|
||||
}
|
||||
|
||||
.gray {
|
||||
color: #AAAAAA;
|
||||
color: #AAAAAA;
|
||||
}
|
||||
|
||||
.black {
|
||||
color: #111111;
|
||||
color: #111111;
|
||||
}
|
||||
|
||||
|
||||
.color-111 {
|
||||
color: #111
|
||||
color: #111
|
||||
}
|
||||
|
||||
.color-222 {
|
||||
color: #222
|
||||
color: #222
|
||||
}
|
||||
|
||||
.color-333 {
|
||||
color: #333
|
||||
color: #333
|
||||
}
|
||||
|
||||
.color-444 {
|
||||
color: #444
|
||||
color: #444
|
||||
}
|
||||
|
||||
.color-555 {
|
||||
color: #555
|
||||
color: #555
|
||||
}
|
||||
|
||||
.color-666 {
|
||||
color: #666
|
||||
color: #666
|
||||
}
|
||||
|
||||
.color-777 {
|
||||
color: #777
|
||||
color: #777
|
||||
}
|
||||
|
||||
.color-888 {
|
||||
color: #888
|
||||
color: #888
|
||||
}
|
||||
|
||||
.color-999 {
|
||||
color: #999
|
||||
color: #999
|
||||
}
|
||||
|
||||
.color-aaa {
|
||||
color: #aaa
|
||||
color: #aaa
|
||||
}
|
||||
|
||||
.color-bbb {
|
||||
color: #bbb
|
||||
color: #bbb
|
||||
}
|
||||
|
||||
.color-ccc {
|
||||
color: #ccc
|
||||
color: #ccc
|
||||
}
|
||||
|
||||
.color-ddd {
|
||||
color: #ddd
|
||||
color: #ddd
|
||||
}
|
||||
|
||||
.color-eee {
|
||||
color: #eee
|
||||
color: #eee
|
||||
}
|
||||
|
||||
|
||||
.color-text {
|
||||
color: #660E7A;
|
||||
color: #660E7A;
|
||||
}
|
||||
|
||||
.color-doc {
|
||||
color: #295496;
|
||||
color: #295496;
|
||||
}
|
||||
|
||||
.color-xls {
|
||||
color: #1E6C41;
|
||||
color: #1E6C41;
|
||||
}
|
||||
|
||||
.color-ppt {
|
||||
color: #D04324;
|
||||
color: #D04324;
|
||||
}
|
||||
|
||||
.color-pdf {
|
||||
color: #E40B0B;
|
||||
color: #E40B0B;
|
||||
}
|
||||
|
||||
.color-audio {
|
||||
color: #5bc0de;
|
||||
color: #5bc0de;
|
||||
}
|
||||
|
||||
.color-video {
|
||||
color: #5cb85c;
|
||||
color: #5cb85c;
|
||||
}
|
||||
|
||||
.color-image {
|
||||
color: #0074D9;
|
||||
color: #0074D9;
|
||||
}
|
||||
|
||||
.color-archive {
|
||||
color: #4437f2;
|
||||
color: #4437f2;
|
||||
}
|
||||
|
||||
.color-light-active {
|
||||
color: #ffc60c;
|
||||
color: #ffc60c;
|
||||
}
|
||||
|
||||
.color-light-inactive {
|
||||
color: #ccc;
|
||||
color: #ccc;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,38 +1,38 @@
|
||||
#font{
|
||||
.f(@from,@end,@step){
|
||||
.mX(@f,@e,@s) when (@e >= @f){
|
||||
.f@{e}{
|
||||
font-size:@e*1px!important;
|
||||
#font {
|
||||
.f(@from,@end,@step) {
|
||||
.mX(@f,@e,@s) when (@e >= @f) {
|
||||
.f@{e} {
|
||||
font-size: @e*1px !important;
|
||||
}
|
||||
.mX(@f,@e - @s,@s);
|
||||
.mX(@f, @e - @s, @s);
|
||||
}
|
||||
.mX(@from,@end,@step);
|
||||
.mX(@from, @end, @step);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#font > .f(10,80,1);
|
||||
#font > .f(10, 80, 1);
|
||||
|
||||
#font{
|
||||
.ln(@from,@end,@step){
|
||||
.mX(@f,@e,@s) when (@e >= @f){
|
||||
.ln@{e}{
|
||||
line-height:@e*1px!important;
|
||||
#font {
|
||||
.ln(@from,@end,@step) {
|
||||
.mX(@f,@e,@s) when (@e >= @f) {
|
||||
.ln@{e} {
|
||||
line-height: @e*1px !important;
|
||||
}
|
||||
.mX(@f,@e - @s,@s);
|
||||
.mX(@f, @e - @s, @s);
|
||||
}
|
||||
.mX(@from,@end,@step);
|
||||
.mX(@from, @end, @step);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#font > .ln(10,100,1);
|
||||
#font > .ln(10, 100, 1);
|
||||
|
||||
|
||||
|
||||
.bold{
|
||||
font-weight:bold;
|
||||
.bold {
|
||||
font-weight: bold;
|
||||
}
|
||||
.italic{
|
||||
font-style:italic;
|
||||
|
||||
.italic {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
@@ -1,132 +1,143 @@
|
||||
#layout{
|
||||
.margin(@from,@end,@step){
|
||||
.mX(@f,@e,@s) when (@e >= @f){
|
||||
.m@{e}{
|
||||
margin:@e*1px;
|
||||
/**
|
||||
全局常用样式定义
|
||||
使用ml、pt等缩写表示常用的布局方式,数字表示像素值
|
||||
比如ml10表示margin-left:10px;
|
||||
*/
|
||||
#layout {
|
||||
.margin(@from,@end,@step) {
|
||||
.mX(@f,@e,@s) when (@e >= @f) {
|
||||
.m@{e} {
|
||||
margin: @e*1px;
|
||||
}
|
||||
.mt@{e}{
|
||||
margin-top:@e*1px;
|
||||
.mt@{e} {
|
||||
margin-top: @e*1px;
|
||||
}
|
||||
.mr@{e}{
|
||||
margin-right:@e*1px;
|
||||
.mr@{e} {
|
||||
margin-right: @e*1px;
|
||||
}
|
||||
.mb@{e}{
|
||||
.mb@{e} {
|
||||
margin-bottom: @e*1px;
|
||||
}
|
||||
.ml@{e}{
|
||||
.ml@{e} {
|
||||
margin-left: @e*1px;
|
||||
}
|
||||
.mv@{e}{
|
||||
.mv@{e} {
|
||||
margin-top: @e*1px;
|
||||
margin-bottom: @e*1px;
|
||||
}
|
||||
.mh@{e}{
|
||||
.mh@{e} {
|
||||
margin-left: @e*1px;
|
||||
margin-right: @e*1px*1px;
|
||||
}
|
||||
.mX(@f,@e - @s,@s);
|
||||
.mX(@f, @e - @s, @s);
|
||||
}
|
||||
.mX(@from,@end,@step);
|
||||
.mX(@from, @end, @step);
|
||||
}
|
||||
.padding(@from,@end,@step){
|
||||
.pX(@f,@e,@s) when (@e >= @f){
|
||||
.p@{e}{
|
||||
padding:@e*1px;
|
||||
.padding(@from,@end,@step) {
|
||||
.pX(@f,@e,@s) when (@e >= @f) {
|
||||
.p@{e} {
|
||||
padding: @e*1px;
|
||||
}
|
||||
.pt@{e}{
|
||||
padding-top:@e*1px;
|
||||
.pt@{e} {
|
||||
padding-top: @e*1px;
|
||||
}
|
||||
.pr@{e}{
|
||||
padding-right:@e*1px;
|
||||
.pr@{e} {
|
||||
padding-right: @e*1px;
|
||||
}
|
||||
.pb@{e}{
|
||||
.pb@{e} {
|
||||
padding-bottom: @e*1px;
|
||||
}
|
||||
.pl@{e}{
|
||||
.pl@{e} {
|
||||
padding-left: @e*1px;
|
||||
}
|
||||
.pv@{e}{
|
||||
.pv@{e} {
|
||||
padding-top: @e*1px;
|
||||
padding-bottom: @e*1px;
|
||||
}
|
||||
.ph@{e}{
|
||||
.ph@{e} {
|
||||
padding-left: @e*1px;
|
||||
padding-right: @e*1px;
|
||||
}
|
||||
.pX(@f,@e - @s,@s);
|
||||
.pX(@f, @e - @s, @s);
|
||||
}
|
||||
.pX(@from,@end,@step);
|
||||
.pX(@from, @end, @step);
|
||||
}
|
||||
.width(@from,@end,@step){
|
||||
.wX(@f,@e,@s) when (@e >= @f){
|
||||
.w@{e}{
|
||||
width:@e*1px;
|
||||
.width(@from,@end,@step) {
|
||||
.wX(@f,@e,@s) when (@e >= @f) {
|
||||
.w@{e} {
|
||||
width: @e*1px;
|
||||
}
|
||||
.w@{e}m{
|
||||
max-width:@e*1px;
|
||||
.w@{e}m {
|
||||
max-width: @e*1px;
|
||||
}
|
||||
.w@{e}n{
|
||||
min-width:@e*1px;
|
||||
.w@{e}n {
|
||||
min-width: @e*1px;
|
||||
}
|
||||
.w@{e}i{
|
||||
width:@e*1px!important;
|
||||
.w@{e}i {
|
||||
width: @e*1px !important;
|
||||
}
|
||||
.wX(@f,@e - @s,@s);
|
||||
.wX(@f, @e - @s, @s);
|
||||
}
|
||||
.wX(@from,@end,@step);
|
||||
.wX(@from, @end, @step);
|
||||
}
|
||||
.height(@from,@end,@step){
|
||||
.hX(@f,@e,@s) when (@e >= @f){
|
||||
.h@{e}{
|
||||
height:@e*1px;
|
||||
.height(@from,@end,@step) {
|
||||
.hX(@f,@e,@s) when (@e >= @f) {
|
||||
.h@{e} {
|
||||
height: @e*1px;
|
||||
}
|
||||
.lh@{e}{
|
||||
line-height:@e*1px;
|
||||
.lh@{e} {
|
||||
line-height: @e*1px;
|
||||
}
|
||||
.h@{e}m{
|
||||
max-height:@e*1px;
|
||||
.h@{e}m {
|
||||
max-height: @e*1px;
|
||||
}
|
||||
.h@{e}n{
|
||||
min-height:@e*1px;
|
||||
.h@{e}n {
|
||||
min-height: @e*1px;
|
||||
}
|
||||
.h@{e}i{
|
||||
height:@e*1px!important;
|
||||
.h@{e}i {
|
||||
height: @e*1px !important;
|
||||
}
|
||||
.hX(@f,@e - @s,@s);
|
||||
.hX(@f, @e - @s, @s);
|
||||
}
|
||||
.hX(@from,@end,@step);
|
||||
.hX(@from, @end, @step);
|
||||
}
|
||||
}
|
||||
|
||||
.wp20{
|
||||
width:20%;
|
||||
.wp20 {
|
||||
width: 20%;
|
||||
}
|
||||
.wp25{
|
||||
width:25%;
|
||||
|
||||
.wp25 {
|
||||
width: 25%;
|
||||
}
|
||||
.wp33{
|
||||
width:33%;
|
||||
|
||||
.wp33 {
|
||||
width: 33%;
|
||||
}
|
||||
.wp100{
|
||||
width:100%;
|
||||
|
||||
.wp100 {
|
||||
width: 100%;
|
||||
}
|
||||
.wp50{
|
||||
width:50%;
|
||||
|
||||
.wp50 {
|
||||
width: 50%;
|
||||
}
|
||||
.hp100{
|
||||
height:100%;
|
||||
|
||||
.hp100 {
|
||||
height: 100%;
|
||||
}
|
||||
.hp50{
|
||||
|
||||
.hp50 {
|
||||
height: 50%;
|
||||
}
|
||||
|
||||
#layout > .margin(20,200,5);
|
||||
#layout > .margin(0,19,1);
|
||||
#layout > .padding(20,200,5);
|
||||
#layout > .padding(0,19,1);
|
||||
#layout > .width(20,400,10);
|
||||
#layout > .width(0,19,1);
|
||||
#layout > .height(20,400,10);
|
||||
#layout > .height(0,19,1);
|
||||
#layout > .margin(20, 200, 5);
|
||||
#layout > .margin(0, 19, 1);
|
||||
#layout > .padding(20, 200, 5);
|
||||
#layout > .padding(0, 19, 1);
|
||||
#layout > .width(20, 400, 5);
|
||||
#layout > .width(0, 19, 1);
|
||||
#layout > .height(20, 400, 5);
|
||||
#layout > .height(0, 19, 1);
|
||||
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
@import "variables";
|
||||
|
||||
.compulsory {
|
||||
&:before {
|
||||
content: "*";
|
||||
@@ -21,27 +23,8 @@
|
||||
|
||||
}
|
||||
|
||||
.btn-file {
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
vertical-align: middle;
|
||||
cursor: pointer;
|
||||
|
||||
> input {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
margin: 0;
|
||||
opacity: 0;
|
||||
filter: alpha(opacity=0);
|
||||
font-size: 23px;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
direction: ltr;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
|
||||
//超出三行使用点点点
|
||||
.list-text-restriction {
|
||||
display: -webkit-box;
|
||||
-webkit-box-orient: vertical;
|
||||
@@ -67,9 +50,108 @@
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.tank-box {
|
||||
background-color: white;
|
||||
box-shadow: 0 0 5px rgba(0, 0, 0, .2);
|
||||
border-radius: 5px;
|
||||
padding: 20px 15px 10px 15px;
|
||||
//讨厌的outline
|
||||
a {
|
||||
outline: none;
|
||||
|
||||
&:focus, &:hover, &:active {
|
||||
outline: none;
|
||||
}
|
||||
}
|
||||
|
||||
//制造一个手机容器
|
||||
.mobile-container {
|
||||
max-width: 400px;
|
||||
border: 1px solid #eee;
|
||||
padding: 10px;
|
||||
margin: 10px auto;
|
||||
display: block;
|
||||
background-color: white;
|
||||
}
|
||||
|
||||
|
||||
//按照字母来wrap,不然有些老长老长
|
||||
.wrap-word {
|
||||
word-wrap: break-word;
|
||||
}
|
||||
|
||||
.text-left {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.text-center {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.text-right {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.display-none {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.pull-right {
|
||||
float: right !important;
|
||||
}
|
||||
|
||||
.pull-left {
|
||||
float: left !important;
|
||||
}
|
||||
|
||||
//超链接导航样式
|
||||
.link {
|
||||
color: #1890ff;
|
||||
text-decoration: none;
|
||||
background-color: transparent;
|
||||
outline: none;
|
||||
cursor: pointer;
|
||||
transition: color 0.3s;
|
||||
text-decoration-skip: objects;
|
||||
}
|
||||
|
||||
|
||||
//头像
|
||||
.avatar-large {
|
||||
border-radius: 50%;
|
||||
width: 120px;
|
||||
height: 120px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.avatar-middle {
|
||||
border-radius: 50%;
|
||||
width: 80px;
|
||||
height: 80px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.avatar-small {
|
||||
border-radius: 50%;
|
||||
width: 60px;
|
||||
height: 60px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.relative {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.hot-area {
|
||||
position: relative;
|
||||
|
||||
&:after {
|
||||
position: absolute;
|
||||
top: -10px;
|
||||
right: -10px;
|
||||
bottom: -10px;
|
||||
left: -10px;
|
||||
content: '';
|
||||
}
|
||||
}
|
||||
|
||||
.custom-handle-modal {
|
||||
.ant-modal-confirm-btns {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
//超出三行使用点点点
|
||||
.line-ellipsis(@rows,@line-height) {
|
||||
display: -webkit-box;
|
||||
-webkit-box-orient: vertical;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
line-height: @line-height;
|
||||
max-height: @line-height * @rows;
|
||||
-webkit-line-clamp: @rows;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
@@ -6,6 +6,10 @@
|
||||
.visible-pc {
|
||||
display: block !important;
|
||||
}
|
||||
|
||||
.visible-pc-flex {
|
||||
display: flex !important;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 992px) {
|
||||
@@ -16,21 +20,32 @@
|
||||
.visible-pc {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.visible-pc-flex {
|
||||
display: none !important;
|
||||
}
|
||||
}
|
||||
|
||||
//浏览器滚动条样式
|
||||
.thin-scrollbar {
|
||||
::-webkit-scrollbar {
|
||||
width: 3px;
|
||||
height: 3px;
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-track {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-thumb {
|
||||
background: rgba(0, 0, 0, 0.3);
|
||||
}
|
||||
|
||||
//滚动条样式
|
||||
::-webkit-scrollbar {
|
||||
width: 10px;
|
||||
height: 10px
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-thumb {
|
||||
transition: all .3s ease;
|
||||
border-color: transparent;
|
||||
background-color: rgba(0, 0, 0, .1);
|
||||
z-index: 40
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-thumb:hover {
|
||||
transition: all .3s ease;
|
||||
background-color: rgba(0, 0, 0, .15)
|
||||
}
|
||||
|
||||
::-webkit-scrollbar-corner {
|
||||
background-color: #eaeaeb
|
||||
}
|
||||
|
||||
@@ -1,98 +1,22 @@
|
||||
@import "../bootstrap/variables.less";
|
||||
//Bootstrap Theme.
|
||||
//@brand-primary: darken(#428bca, 6.5%); // #337ab7
|
||||
//@brand-success: #5cb85c;
|
||||
//@brand-info: #5bc0de;
|
||||
//@brand-warning: #f0ad4e;
|
||||
//@brand-danger: #d9534f;
|
||||
//@brand-gray: #c2c2c2;
|
||||
|
||||
//Angulr Theme.
|
||||
//@brand-primary: #7266ba;
|
||||
//@brand-info: #23b7e5;
|
||||
//@brand-success: #27c24c;
|
||||
//@brand-warning: #fad733;
|
||||
//@brand-danger: #f05050;
|
||||
//@brand-light: #edf1f2;
|
||||
//@brand-dark: #3a3f51;
|
||||
//@brand-black: #1c2b36;
|
||||
//@brand-gray: #c2c2c2;
|
||||
//@brand-laxative: #B3EE3A;
|
||||
|
||||
//Inspina Theme.
|
||||
//@brand-primary: #1ab394;
|
||||
//@brand-success: #1c84c6;
|
||||
//@brand-info: #23c6c8;
|
||||
//@brand-warning: #f8ac59;
|
||||
//@brand-danger: #ED5565;
|
||||
//@brand-gray: #c2c2c2;
|
||||
//@brand-laxative: #B3EE3A;
|
||||
|
||||
|
||||
//zhengxianqian Theme.
|
||||
//@brand-primary: #23B7E5;
|
||||
@brand-primary: #006699;
|
||||
@brand-success: #1ab394;
|
||||
@brand-info: #5EC1C5;
|
||||
@brand-warning: #FEC62E;
|
||||
@brand-danger: #FE8768;
|
||||
//custom basic color
|
||||
@brand-primary: #215891;
|
||||
@brand-success: #67C23A;
|
||||
@brand-info: #2DB7F5;
|
||||
@brand-warning: #E6A23C;
|
||||
@brand-danger: #FF756F;
|
||||
@brand-gray: #c2c2c2;
|
||||
@brand-laxative: #B3EE3A;
|
||||
|
||||
//主题默认颜色
|
||||
@primary-color: @brand-primary;
|
||||
|
||||
@navy: @brand-primary; // Primary color
|
||||
@dark-gray: @brand-gray; // Default color
|
||||
@blue: @brand-success; // Success color
|
||||
@lazur: @brand-info; // Info color
|
||||
@yellow: @brand-warning; // Warrning color
|
||||
@red: @brand-danger; // Danger color
|
||||
@green: @brand-laxative; // Danger color
|
||||
|
||||
@gray-base: #000;
|
||||
@gray-darker: lighten(@gray-base, 13.5%); // #222
|
||||
@gray-dark: lighten(@gray-base, 20%); // #333
|
||||
@gray: lighten(@gray-base, 33.5%); // #555
|
||||
@gray-light: lighten(@gray-base, 46.7%); // #777
|
||||
@gray-lighter: lighten(@gray-base, 93.5%); // #eee
|
||||
|
||||
// Various colors
|
||||
@text-color: #676a6c; // Body text
|
||||
@gray: #f3f3f4; // Background wrapper color
|
||||
@light-gray: #D1DADE; // Default label, badget
|
||||
@label-badget-color: #5E5E5E;
|
||||
@light-blue: #f3f6fb;
|
||||
|
||||
// Spiner color and margin
|
||||
@spin-color: @navy;
|
||||
@spin-margin: 0 auto;
|
||||
|
||||
// IBOX colors ( default panel colors)
|
||||
@border-color: #e7eaec; // IBox border
|
||||
@ibox-title-bg: #ffffff; // IBox Background header
|
||||
@ibox-content-bg: #ffffff; // IBox Background content
|
||||
|
||||
//Sidebar width
|
||||
@sidebar-width: 170px;
|
||||
|
||||
// Boxed layout width
|
||||
@boxed-width: 1200px;
|
||||
|
||||
//Border radius for buttons
|
||||
@btn-border-radius: 3px;
|
||||
|
||||
//Navigation
|
||||
@nav-bg: #2F4050;
|
||||
@nav-text-color: #a7b1c2;
|
||||
|
||||
//左侧菜单宽度
|
||||
@sidebar-width: 200px;
|
||||
|
||||
//顶部导航栏宽度
|
||||
@top-navigation-height: 45px;
|
||||
|
||||
@app-color-title: #474747;
|
||||
@app-color-content: #8A8A8A;
|
||||
|
||||
//上方导航栏高度
|
||||
@frame-header-height: 80px;
|
||||
|
||||
//下方蓝眼云盘高度
|
||||
@power-footer-height: 40px;
|
||||
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
//使用自定义的主题
|
||||
@import "global/animation";
|
||||
@import "global/border";
|
||||
@import "global/button";
|
||||
@import "global/color";
|
||||
@import "global/font";
|
||||
@import "global/layout";
|
||||
@import "global/miscellaneous";
|
||||
@import "global/responsive";
|
||||
|
||||
html, body {
|
||||
font-family: "微软雅黑", Microsoft YaHei, "Helvetica Neue", Helvetica, Arial, sans-serif, "open sans";
|
||||
font-size: 13px;
|
||||
color: @text-color;
|
||||
|
||||
|
||||
}
|
||||
@@ -1,72 +0,0 @@
|
||||
|
||||
.label {
|
||||
background-color: @light-gray;
|
||||
color: @label-badget-color;
|
||||
font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
||||
font-size: 10px;
|
||||
font-weight: 600;
|
||||
padding: 3px 8px;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
.badge {
|
||||
background-color: @light-gray;
|
||||
color: @label-badget-color;
|
||||
font-family: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
|
||||
font-size: 11px;
|
||||
font-weight: 600;
|
||||
padding-bottom: 4px;
|
||||
padding-left: 6px;
|
||||
padding-right: 6px;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
.label-primary, .badge-primary {
|
||||
background-color: @navy;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.label-success, .badge-success {
|
||||
background-color: @blue;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.label-warning, .badge-warning {
|
||||
background-color: @yellow;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.label-warning-light, .badge-warning-light {
|
||||
background-color: @yellow;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
.label-danger, .badge-danger {
|
||||
background-color: @red;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.label-info, .badge-info {
|
||||
background-color: @lazur;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.label-inverse, .badge-inverse {
|
||||
background-color: #262626;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.label-laxative, .badge-laxative {
|
||||
background-color: @green;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.label-white, .badge-white {
|
||||
background-color: #FFFFFF;
|
||||
color: #5E5E5E;
|
||||
}
|
||||
|
||||
.label-white, .badge-disable {
|
||||
background-color: #2A2E36;
|
||||
color: #8B91A0;
|
||||
}
|
||||
@@ -1,309 +0,0 @@
|
||||
|
||||
.btn {
|
||||
border-radius: @btn-border-radius;
|
||||
}
|
||||
|
||||
.float-e-margins .btn {
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
.btn-w-m {
|
||||
min-width: 120px;
|
||||
}
|
||||
|
||||
.btn-primary.btn-outline {
|
||||
color: @navy;
|
||||
}
|
||||
|
||||
.btn-success.btn-outline {
|
||||
color: @blue;
|
||||
}
|
||||
|
||||
.btn-info.btn-outline {
|
||||
color: @lazur;
|
||||
}
|
||||
|
||||
.btn-warning.btn-outline {
|
||||
color: @yellow;
|
||||
}
|
||||
|
||||
.btn-danger.btn-outline {
|
||||
color: @red;
|
||||
}
|
||||
|
||||
.btn-primary.btn-outline:hover,
|
||||
.btn-success.btn-outline:hover,
|
||||
.btn-info.btn-outline:hover,
|
||||
.btn-warning.btn-outline:hover,
|
||||
.btn-danger.btn-outline:hover {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.btn-primary {
|
||||
background-color: @navy;
|
||||
border-color: @navy;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active, .open .dropdown-toggle.btn-primary, .btn-primary:active:focus, .btn-primary:active:hover, .btn-primary.active:hover, .btn-primary.active:focus {
|
||||
background-color: darken(@navy, 3%);
|
||||
border-color: darken(@navy, 3%);
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.btn-primary:active, .btn-primary.active, .open .dropdown-toggle.btn-primary {
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.btn-primary.disabled, .btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled:active, .btn-primary.disabled.active, .btn-primary[disabled], .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled]:active, .btn-primary.active[disabled], fieldset[disabled] .btn-primary, fieldset[disabled] .btn-primary:hover, fieldset[disabled] .btn-primary:focus, fieldset[disabled] .btn-primary:active, fieldset[disabled] .btn-primary.active {
|
||||
background-color: lighten(@navy, 4%);
|
||||
border-color: lighten(@navy, 4%);
|
||||
}
|
||||
|
||||
.btn-success {
|
||||
background-color: @blue;
|
||||
border-color: @blue;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.btn-success:hover, .btn-success:focus, .btn-success:active, .btn-success.active, .open .dropdown-toggle.btn-success, .btn-success:active:focus, .btn-success:active:hover, .btn-success.active:hover, .btn-success.active:focus {
|
||||
background-color: darken(@blue, 3%);
|
||||
border-color: darken(@blue, 3%);
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.btn-success:active, .btn-success.active, .open .dropdown-toggle.btn-success {
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.btn-success.disabled, .btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled:active, .btn-success.disabled.active, .btn-success[disabled], .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled]:active, .btn-success.active[disabled], fieldset[disabled] .btn-success, fieldset[disabled] .btn-success:hover, fieldset[disabled] .btn-success:focus, fieldset[disabled] .btn-success:active, fieldset[disabled] .btn-success.active {
|
||||
background-color: lighten(@blue, 4%);
|
||||
border-color: lighten(@blue, 4%);
|
||||
}
|
||||
|
||||
.btn-info {
|
||||
background-color: @lazur;
|
||||
border-color: @lazur;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.btn-info:hover, .btn-info:focus, .btn-info:active, .btn-info.active, .open .dropdown-toggle.btn-info, .btn-info:active:focus, .btn-info:active:hover, .btn-info.active:hover, .btn-info.active:focus {
|
||||
background-color: darken(@lazur, 3%);
|
||||
border-color: darken(@lazur, 3%);
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.btn-info:active, .btn-info.active, .open .dropdown-toggle.btn-info {
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.btn-info.disabled, .btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled:active, .btn-info.disabled.active, .btn-info[disabled], .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled]:active, .btn-info.active[disabled], fieldset[disabled] .btn-info, fieldset[disabled] .btn-info:hover, fieldset[disabled] .btn-info:focus, fieldset[disabled] .btn-info:active, fieldset[disabled] .btn-info.active {
|
||||
background-color: lighten(@lazur, 4%);
|
||||
border-color: lighten(@lazur, 4%);
|
||||
}
|
||||
|
||||
.btn-default {
|
||||
color: inherit;
|
||||
background: white;
|
||||
border: 1px solid @border-color;
|
||||
}
|
||||
|
||||
.btn-default:hover, .btn-default:focus, .btn-default:active, .btn-default.active, .open .dropdown-toggle.btn-default, .btn-default:active:focus, .btn-default:active:hover, .btn-default.active:hover, .btn-default.active:focus {
|
||||
color: inherit;
|
||||
border: 1px solid #d2d2d2;
|
||||
}
|
||||
|
||||
.btn-default:active, .btn-default.active, .open .dropdown-toggle.btn-default {
|
||||
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15) inset;
|
||||
}
|
||||
|
||||
.btn-default.disabled, .btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled:active, .btn-default.disabled.active, .btn-default[disabled], .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled]:active, .btn-default.active[disabled], fieldset[disabled] .btn-default, fieldset[disabled] .btn-default:hover, fieldset[disabled] .btn-default:focus, fieldset[disabled] .btn-default:active, fieldset[disabled] .btn-default.active {
|
||||
color: #cacaca;
|
||||
}
|
||||
|
||||
.btn-warning {
|
||||
background-color: @yellow;
|
||||
border-color: @yellow;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.btn-warning:hover, .btn-warning:focus, .btn-warning:active, .btn-warning.active, .open .dropdown-toggle.btn-warning, .btn-warning:active:focus, .btn-warning:active:hover, .btn-warning.active:hover, .btn-warning.active:focus {
|
||||
background-color: darken(@yellow, 3%);
|
||||
border-color: darken(@yellow, 3%);
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.btn-warning:active, .btn-warning.active, .open .dropdown-toggle.btn-warning {
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.btn-warning.disabled, .btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled:active, .btn-warning.disabled.active, .btn-warning[disabled], .btn-warning[disabled]:hover, .btn-warning[disabled]:focus, .btn-warning[disabled]:active, .btn-warning.active[disabled], fieldset[disabled] .btn-warning, fieldset[disabled] .btn-warning:hover, fieldset[disabled] .btn-warning:focus, fieldset[disabled] .btn-warning:active, fieldset[disabled] .btn-warning.active {
|
||||
background-color: lighten(@yellow, 4%);
|
||||
border-color: lighten(@yellow, 4%);
|
||||
}
|
||||
|
||||
.btn-danger {
|
||||
background-color: @red;
|
||||
border-color: @red;
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.btn-danger:hover, .btn-danger:focus, .btn-danger:active, .btn-danger.active, .open .dropdown-toggle.btn-danger, .btn-danger:active:focus, .btn-danger:active:hover, .btn-danger.active:hover, .btn-danger.active:focus {
|
||||
background-color: darken(@red, 3%);
|
||||
border-color: darken(@red, 3%);
|
||||
color: #FFFFFF;
|
||||
}
|
||||
|
||||
.btn-danger:active, .btn-danger.active, .open .dropdown-toggle.btn-danger {
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.btn-danger.disabled, .btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled:active, .btn-danger.disabled.active, .btn-danger[disabled], .btn-danger[disabled]:hover, .btn-danger[disabled]:focus, .btn-danger[disabled]:active, .btn-danger.active[disabled], fieldset[disabled] .btn-danger, fieldset[disabled] .btn-danger:hover, fieldset[disabled] .btn-danger:focus, fieldset[disabled] .btn-danger:active, fieldset[disabled] .btn-danger.active {
|
||||
background-color: lighten(@red, 4%);
|
||||
border-color: lighten(@red, 4%);
|
||||
}
|
||||
|
||||
.btn-link {
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
.btn-link:hover, .btn-link:focus, .btn-link:active, .btn-link.active, .open .dropdown-toggle.btn-link {
|
||||
color: @navy;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.btn-link:active, .btn-link.active, .open .dropdown-toggle.btn-link {
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.btn-link.disabled, .btn-link.disabled:hover, .btn-link.disabled:focus, .btn-link.disabled:active, .btn-link.disabled.active, .btn-link[disabled], .btn-link[disabled]:hover, .btn-link[disabled]:focus, .btn-link[disabled]:active, .btn-link.active[disabled], fieldset[disabled] .btn-link, fieldset[disabled] .btn-link:hover, fieldset[disabled] .btn-link:focus, fieldset[disabled] .btn-link:active, fieldset[disabled] .btn-link.active {
|
||||
color: #cacaca;
|
||||
}
|
||||
|
||||
.btn-white {
|
||||
color: inherit;
|
||||
background: white;
|
||||
border: 1px solid @border-color;
|
||||
}
|
||||
|
||||
.btn-white:hover, .btn-white:focus, .btn-white:active, .btn-white.active, .open .dropdown-toggle.btn-white, .btn-white:active:focus, .btn-white:active:hover, .btn-white.active:hover, .btn-white.active:focus {
|
||||
color: inherit;
|
||||
border: 1px solid #d2d2d2;
|
||||
}
|
||||
|
||||
.btn-white:active, .btn-white.active {
|
||||
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15) inset;
|
||||
}
|
||||
|
||||
.btn-white:active, .btn-white.active, .open .dropdown-toggle.btn-white {
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.btn-white.disabled, .btn-white.disabled:hover, .btn-white.disabled:focus, .btn-white.disabled:active, .btn-white.disabled.active, .btn-white[disabled], .btn-white[disabled]:hover, .btn-white[disabled]:focus, .btn-white[disabled]:active, .btn-white.active[disabled], fieldset[disabled] .btn-white, fieldset[disabled] .btn-white:hover, fieldset[disabled] .btn-white:focus, fieldset[disabled] .btn-white:active, fieldset[disabled] .btn-white.active {
|
||||
color: #cacaca;
|
||||
}
|
||||
|
||||
.form-control, .form-control:focus, .has-error .form-control:focus, .has-success .form-control:focus, .has-warning .form-control:focus, .navbar-collapse, .navbar-form, .navbar-form-custom .form-control:focus, .navbar-form-custom .form-control:hover, .open .btn.dropdown-toggle, .panel, .popover, .progress, .progress-bar {
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
.btn-outline {
|
||||
color: inherit;
|
||||
background-color: transparent;
|
||||
transition: all .5s;
|
||||
}
|
||||
|
||||
.btn-rounded {
|
||||
border-radius: 50px;
|
||||
}
|
||||
|
||||
.btn-large-dim {
|
||||
width: 90px;
|
||||
height: 90px;
|
||||
font-size: 42px;
|
||||
}
|
||||
|
||||
button.dim {
|
||||
display: inline-block;
|
||||
text-decoration: none;
|
||||
text-transform: uppercase;
|
||||
text-align: center;
|
||||
padding-top: 6px;
|
||||
margin-right: 10px;
|
||||
position: relative;
|
||||
cursor: pointer;
|
||||
border-radius: 5px;
|
||||
font-weight: 600;
|
||||
margin-bottom: 20px !important;
|
||||
}
|
||||
|
||||
button.dim:active {
|
||||
top: 3px;
|
||||
}
|
||||
|
||||
button.btn-primary.dim {
|
||||
box-shadow: inset 0 0 0 darken(@navy, 6%), 0 5px 0 0 darken(@navy, 6%), 0 10px 5px #999;
|
||||
}
|
||||
|
||||
button.btn-primary.dim:active {
|
||||
box-shadow: inset 0 0 0 darken(@navy, 6%), 0 2px 0 0 darken(@navy, 6%), 0 5px 3px #999;
|
||||
}
|
||||
|
||||
button.btn-default.dim {
|
||||
box-shadow: inset 0 0 0 darken(@dark-gray, 6%), 0 5px 0 0 darken(@dark-gray, 6%), 0 10px 5px #999;
|
||||
}
|
||||
|
||||
button.btn-default.dim:active {
|
||||
box-shadow: inset 0 0 0 darken(@dark-gray, 6%), 0 2px 0 0 darken(@dark-gray, 6%), 0 5px 3px #999;
|
||||
}
|
||||
|
||||
button.btn-warning.dim {
|
||||
box-shadow: inset 0 0 0 darken(@yellow, 6%), 0 5px 0 0 darken(@yellow, 6%), 0 10px 5px #999;
|
||||
}
|
||||
|
||||
button.btn-warning.dim:active {
|
||||
box-shadow: inset 0 0 0 darken(@yellow, 6%), 0 2px 0 0 darken(@yellow, 6%), 0 5px 3px #999;
|
||||
}
|
||||
|
||||
button.btn-info.dim {
|
||||
box-shadow: inset 0 0 0 darken(@lazur, 6%), 0 5px 0 0 darken(@lazur, 6%), 0 10px 5px #999;
|
||||
}
|
||||
|
||||
button.btn-info.dim:active {
|
||||
box-shadow: inset 0 0 0 darken(@lazur, 6%), 0 2px 0 0 darken(@lazur, 6%), 0 5px 3px #999;
|
||||
}
|
||||
|
||||
button.btn-success.dim {
|
||||
box-shadow: inset 0 0 0 darken(@blue, 6%), 0 5px 0 0 darken(@blue, 6%), 0 10px 5px #999;
|
||||
}
|
||||
|
||||
button.btn-success.dim:active {
|
||||
box-shadow: inset 0 0 0 darken(@blue, 6%), 0 2px 0 0 darken(@blue, 6%), 0 5px 3px #999;
|
||||
}
|
||||
|
||||
button.btn-danger.dim {
|
||||
box-shadow: inset 0 0 0 darken(@red, 6%), 0 5px 0 0 darken(@red, 6%), 0 10px 5px #999;
|
||||
}
|
||||
|
||||
button.btn-danger.dim:active {
|
||||
box-shadow: inset 0 0 0 darken(@red, 6%), 0 2px 0 0 darken(@red, 6%), 0 5px 3px #999;
|
||||
}
|
||||
|
||||
button.dim:before {
|
||||
font-size: 50px;
|
||||
line-height: 1em;
|
||||
font-weight: normal;
|
||||
color: #fff;
|
||||
display: block;
|
||||
padding-top: 10px;
|
||||
|
||||
}
|
||||
|
||||
button.dim:active:before {
|
||||
top: 7px;
|
||||
font-size: 50px;
|
||||
}
|
||||
|
||||
.btn:focus {
|
||||
outline: none !important;
|
||||
}
|
||||
@@ -1,119 +0,0 @@
|
||||
#small-chat {
|
||||
position: fixed;
|
||||
bottom: 20px;
|
||||
right: 20px;
|
||||
z-index: 100;
|
||||
}
|
||||
|
||||
#small-chat .badge {
|
||||
position: absolute;
|
||||
top: -3px;
|
||||
right: -4px;
|
||||
}
|
||||
|
||||
.open-small-chat {
|
||||
height: 38px;
|
||||
width: 38px;
|
||||
display: block;
|
||||
background: #1ab394;
|
||||
padding: 9px 8px;
|
||||
text-align: center;
|
||||
color: #fff;
|
||||
border-radius: 50%;
|
||||
}
|
||||
|
||||
.open-small-chat:hover {
|
||||
color: white;
|
||||
background: #1ab394;
|
||||
}
|
||||
|
||||
.small-chat-box {
|
||||
display: none;
|
||||
position: fixed;
|
||||
bottom: 20px;
|
||||
right: 75px;
|
||||
background: #fff;
|
||||
border: 1px solid @border-color;
|
||||
width: 230px;
|
||||
height: 320px;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
.small-chat-box.ng-small-chat {
|
||||
display: block;
|
||||
}
|
||||
|
||||
|
||||
.small-chat-box.active {
|
||||
display: block;
|
||||
}
|
||||
|
||||
.small-chat-box {
|
||||
|
||||
.heading {
|
||||
background: @nav-bg;
|
||||
padding: 8px 15px;
|
||||
font-weight: bold;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.chat-date {
|
||||
opacity: 0.6;
|
||||
font-size: 10px;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.content {
|
||||
padding: 15px 15px;
|
||||
|
||||
.author-name {
|
||||
font-weight: bold;
|
||||
margin-bottom: 3px;
|
||||
font-size: 11px;
|
||||
}
|
||||
|
||||
> div {
|
||||
padding-bottom: 20px;
|
||||
}
|
||||
|
||||
.chat-message {
|
||||
padding: 5px 10px;
|
||||
border-radius: 6px;
|
||||
font-size: 11px;
|
||||
line-height: 14px;
|
||||
max-width: 80%;
|
||||
background: #f3f3f4;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.chat-message.active {
|
||||
background: #1ab394;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.left {
|
||||
text-align: left;
|
||||
clear: both;
|
||||
|
||||
.chat-message {
|
||||
float: left;
|
||||
}
|
||||
}
|
||||
|
||||
.right {
|
||||
text-align: right;
|
||||
clear: both;
|
||||
|
||||
.chat-message {
|
||||
float: right;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.form-chat {
|
||||
padding: 10px 10px;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,15 +0,0 @@
|
||||
.border-radius (@radius: 3px) {
|
||||
-webkit-border-radius: @radius;
|
||||
-moz-border-radius: @radius;
|
||||
border-radius: @radius;
|
||||
|
||||
-moz-background-clip: padding;
|
||||
-webkit-background-clip: padding-box;
|
||||
background-clip: padding-box;
|
||||
}
|
||||
|
||||
.opacity (@opacity: 0.5) {
|
||||
-webkit-opacity: @opacity;
|
||||
-moz-opacity: @opacity;
|
||||
opacity: @opacity;
|
||||
}
|
||||
@@ -1,191 +0,0 @@
|
||||
.sidebard-panel {
|
||||
width: 220px;
|
||||
background: darken(@gray, 3%);
|
||||
padding: 10px 20px;
|
||||
position: absolute;
|
||||
right: 0;
|
||||
}
|
||||
|
||||
.sidebard-panel .feed-element img.img-circle {
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
}
|
||||
|
||||
.sidebard-panel .feed-element, .media-body, .sidebard-panel p {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.sidebard-panel .feed-element {
|
||||
margin-top: 20px;
|
||||
padding-bottom: 0;
|
||||
}
|
||||
|
||||
.sidebard-panel .list-group {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.sidebard-panel .list-group .list-group-item {
|
||||
padding: 5px 0;
|
||||
font-size: 12px;
|
||||
border: 0;
|
||||
}
|
||||
|
||||
.sidebar-content .wrapper, .wrapper.sidebar-content {
|
||||
padding-right: 230px !important;
|
||||
}
|
||||
|
||||
// Right sidebar
|
||||
|
||||
#right-sidebar {
|
||||
background-color: #fff;
|
||||
border-left: 1px solid #e7eaec;
|
||||
border-top: 1px solid #e7eaec;
|
||||
overflow: hidden;
|
||||
position: fixed;
|
||||
top: 60px;
|
||||
width: 260px !important;
|
||||
z-index: 1009;
|
||||
bottom: 0;
|
||||
right: -260px;
|
||||
}
|
||||
|
||||
#right-sidebar.sidebar-open {
|
||||
right: 0;
|
||||
}
|
||||
|
||||
#right-sidebar.sidebar-open.sidebar-top {
|
||||
top: 0;
|
||||
border-top: none;
|
||||
}
|
||||
|
||||
.sidebar-container {
|
||||
|
||||
ul.nav-tabs {
|
||||
border: none;
|
||||
}
|
||||
|
||||
ul.nav-tabs.navs-4 li {
|
||||
width: 25%;
|
||||
}
|
||||
ul.nav-tabs.navs-3 li {
|
||||
width: 33.3333%;
|
||||
}
|
||||
ul.nav-tabs.navs-2 li {
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
ul.nav-tabs li {
|
||||
border: none;
|
||||
}
|
||||
|
||||
ul.nav-tabs li a {
|
||||
border: none;
|
||||
padding: 12px 10px;
|
||||
margin: 0;
|
||||
border-radius: 0;
|
||||
background: @nav-bg;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
|
||||
border-right: 1px solid lighten(@nav-bg, 2%);
|
||||
}
|
||||
|
||||
ul.nav-tabs li.active a {
|
||||
border: none;
|
||||
background: #f9f9f9;
|
||||
color: @text-color;
|
||||
font-weight: bold;
|
||||
|
||||
}
|
||||
|
||||
.nav-tabs > li.active > a:hover,
|
||||
.nav-tabs > li.active > a:focus {
|
||||
|
||||
border: none;
|
||||
|
||||
}
|
||||
|
||||
ul.sidebar-list {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
ul.sidebar-list li {
|
||||
border-bottom: 1px solid @border-color;
|
||||
padding: 15px 20px;
|
||||
list-style: none;
|
||||
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
ul.sidebar-list li:nth-child(2n+2) {
|
||||
// background: #f9f9f9;
|
||||
}
|
||||
|
||||
.sidebar-message:nth-child(2n+2) {
|
||||
background: #f9f9f9;
|
||||
}
|
||||
|
||||
ul.sidebar-list li a {
|
||||
text-decoration: none;
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
.sidebar-content {
|
||||
padding: 15px 20px;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.date-item {
|
||||
|
||||
}
|
||||
|
||||
.sidebar-title {
|
||||
background: #f9f9f9;
|
||||
padding: 20px;
|
||||
border-bottom: 1px solid @border-color;
|
||||
|
||||
h3 {
|
||||
margin-bottom: 3px;
|
||||
padding-left: 2px;
|
||||
}
|
||||
}
|
||||
|
||||
.tab-content {
|
||||
|
||||
h4 {
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.sidebar-message > a > .pull-left {
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
.sidebar-message > a {
|
||||
text-decoration: none;
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
.sidebar-message {
|
||||
padding: 15px 20px;
|
||||
}
|
||||
|
||||
.sidebar-message:hover {
|
||||
// background: #f9f9f9;
|
||||
}
|
||||
|
||||
.sidebar-message .message-avatar {
|
||||
height: 38px;
|
||||
width: 38px;
|
||||
border-radius: 50%;
|
||||
}
|
||||
|
||||
.setings-item {
|
||||
padding: 15px 20px;
|
||||
border-bottom: 1px solid @border-color;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,997 +0,0 @@
|
||||
/*
|
||||
* Usage:
|
||||
*
|
||||
* <div class="sk-spinner sk-spinner-rotating-plane"></div>
|
||||
*
|
||||
*/
|
||||
|
||||
.sk-spinner-rotating-plane.sk-spinner {
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
background-color: @spin-color;
|
||||
margin: @spin-margin;
|
||||
-webkit-animation: sk-rotatePlane 1.2s infinite ease-in-out;
|
||||
animation: sk-rotatePlane 1.2s infinite ease-in-out;
|
||||
}
|
||||
|
||||
@-webkit-keyframes sk-rotatePlane {
|
||||
0% {
|
||||
-webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg);
|
||||
transform: perspective(120px) rotateX(0deg) rotateY(0deg);
|
||||
}
|
||||
|
||||
50% {
|
||||
-webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
|
||||
transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
|
||||
transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes sk-rotatePlane {
|
||||
0% {
|
||||
-webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg);
|
||||
transform: perspective(120px) rotateX(0deg) rotateY(0deg);
|
||||
}
|
||||
|
||||
50% {
|
||||
-webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
|
||||
transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
|
||||
transform: perspective(120px) rotateX(-180deg) rotateY(-179.9deg);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Usage:
|
||||
*
|
||||
* <div class="sk-spinner sk-spinner-double-bounce">
|
||||
* <div class="sk-double-bounce1"></div>
|
||||
* <div class="sk-double-bounce2"></div>
|
||||
* </div>
|
||||
*
|
||||
*/
|
||||
.sk-spinner-double-bounce.sk-spinner {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
position: relative;
|
||||
margin: @spin-margin;
|
||||
}
|
||||
|
||||
.sk-spinner-double-bounce .sk-double-bounce1, .sk-spinner-double-bounce .sk-double-bounce2 {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
border-radius: 50%;
|
||||
background-color: @spin-color;
|
||||
opacity: 0.6;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
-webkit-animation: sk-doubleBounce 2s infinite ease-in-out;
|
||||
animation: sk-doubleBounce 2s infinite ease-in-out;
|
||||
}
|
||||
|
||||
.sk-spinner-double-bounce .sk-double-bounce2 {
|
||||
-webkit-animation-delay: -1s;
|
||||
animation-delay: -1s;
|
||||
}
|
||||
|
||||
@-webkit-keyframes sk-doubleBounce {
|
||||
0%, 100% {
|
||||
-webkit-transform: scale(0);
|
||||
transform: scale(0);
|
||||
}
|
||||
|
||||
50% {
|
||||
-webkit-transform: scale(1);
|
||||
transform: scale(1);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes sk-doubleBounce {
|
||||
0%, 100% {
|
||||
-webkit-transform: scale(0);
|
||||
transform: scale(0);
|
||||
}
|
||||
|
||||
50% {
|
||||
-webkit-transform: scale(1);
|
||||
transform: scale(1);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Usage:
|
||||
*
|
||||
* <div class="sk-spinner sk-spinner-wave">
|
||||
* <div class="sk-rect1"></div>
|
||||
* <div class="sk-rect2"></div>
|
||||
* <div class="sk-rect3"></div>
|
||||
* <div class="sk-rect4"></div>
|
||||
* <div class="sk-rect5"></div>
|
||||
* </div>
|
||||
*
|
||||
*/
|
||||
.sk-spinner-wave.sk-spinner {
|
||||
margin: @spin-margin;
|
||||
width: 50px;
|
||||
height: 30px;
|
||||
text-align: center;
|
||||
font-size: 10px;
|
||||
}
|
||||
|
||||
.sk-spinner-wave div {
|
||||
background-color: @spin-color;
|
||||
height: 100%;
|
||||
width: 6px;
|
||||
display: inline-block;
|
||||
-webkit-animation: sk-waveStretchDelay 1.2s infinite ease-in-out;
|
||||
animation: sk-waveStretchDelay 1.2s infinite ease-in-out;
|
||||
}
|
||||
|
||||
.sk-spinner-wave .sk-rect2 {
|
||||
-webkit-animation-delay: -1.1s;
|
||||
animation-delay: -1.1s;
|
||||
}
|
||||
|
||||
.sk-spinner-wave .sk-rect3 {
|
||||
-webkit-animation-delay: -1s;
|
||||
animation-delay: -1s;
|
||||
}
|
||||
|
||||
.sk-spinner-wave .sk-rect4 {
|
||||
-webkit-animation-delay: -0.9s;
|
||||
animation-delay: -0.9s;
|
||||
}
|
||||
|
||||
.sk-spinner-wave .sk-rect5 {
|
||||
-webkit-animation-delay: -0.8s;
|
||||
animation-delay: -0.8s;
|
||||
}
|
||||
|
||||
@-webkit-keyframes sk-waveStretchDelay {
|
||||
0%, 40%, 100% {
|
||||
-webkit-transform: scaleY(0.4);
|
||||
transform: scaleY(0.4);
|
||||
}
|
||||
|
||||
20% {
|
||||
-webkit-transform: scaleY(1);
|
||||
transform: scaleY(1);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes sk-waveStretchDelay {
|
||||
0%, 40%, 100% {
|
||||
-webkit-transform: scaleY(0.4);
|
||||
transform: scaleY(0.4);
|
||||
}
|
||||
|
||||
20% {
|
||||
-webkit-transform: scaleY(1);
|
||||
transform: scaleY(1);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Usage:
|
||||
*
|
||||
* <div class="sk-spinner sk-spinner-wandering-cubes">
|
||||
* <div class="sk-cube1"></div>
|
||||
* <div class="sk-cube2"></div>
|
||||
* </div>
|
||||
*
|
||||
*/
|
||||
.sk-spinner-wandering-cubes.sk-spinner {
|
||||
margin: @spin-margin;
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.sk-spinner-wandering-cubes .sk-cube1, .sk-spinner-wandering-cubes .sk-cube2 {
|
||||
background-color: @spin-color;
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
-webkit-animation: sk-wanderingCubeMove 1.8s infinite ease-in-out;
|
||||
animation: sk-wanderingCubeMove 1.8s infinite ease-in-out;
|
||||
}
|
||||
|
||||
.sk-spinner-wandering-cubes .sk-cube2 {
|
||||
-webkit-animation-delay: -0.9s;
|
||||
animation-delay: -0.9s;
|
||||
}
|
||||
|
||||
@-webkit-keyframes sk-wanderingCubeMove {
|
||||
25% {
|
||||
-webkit-transform: translateX(42px) rotate(-90deg) scale(0.5);
|
||||
transform: translateX(42px) rotate(-90deg) scale(0.5);
|
||||
}
|
||||
|
||||
50% {
|
||||
/* Hack to make FF rotate in the right direction */
|
||||
-webkit-transform: translateX(42px) translateY(42px) rotate(-179deg);
|
||||
transform: translateX(42px) translateY(42px) rotate(-179deg);
|
||||
}
|
||||
|
||||
50.1% {
|
||||
-webkit-transform: translateX(42px) translateY(42px) rotate(-180deg);
|
||||
transform: translateX(42px) translateY(42px) rotate(-180deg);
|
||||
}
|
||||
|
||||
75% {
|
||||
-webkit-transform: translateX(0px) translateY(42px) rotate(-270deg) scale(0.5);
|
||||
transform: translateX(0px) translateY(42px) rotate(-270deg) scale(0.5);
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: rotate(-360deg);
|
||||
transform: rotate(-360deg);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes sk-wanderingCubeMove {
|
||||
25% {
|
||||
-webkit-transform: translateX(42px) rotate(-90deg) scale(0.5);
|
||||
transform: translateX(42px) rotate(-90deg) scale(0.5);
|
||||
}
|
||||
|
||||
50% {
|
||||
/* Hack to make FF rotate in the right direction */
|
||||
-webkit-transform: translateX(42px) translateY(42px) rotate(-179deg);
|
||||
transform: translateX(42px) translateY(42px) rotate(-179deg);
|
||||
}
|
||||
|
||||
50.1% {
|
||||
-webkit-transform: translateX(42px) translateY(42px) rotate(-180deg);
|
||||
transform: translateX(42px) translateY(42px) rotate(-180deg);
|
||||
}
|
||||
|
||||
75% {
|
||||
-webkit-transform: translateX(0px) translateY(42px) rotate(-270deg) scale(0.5);
|
||||
transform: translateX(0px) translateY(42px) rotate(-270deg) scale(0.5);
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: rotate(-360deg);
|
||||
transform: rotate(-360deg);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Usage:
|
||||
*
|
||||
* <div class="sk-spinner sk-spinner-pulse"></div>
|
||||
*
|
||||
*/
|
||||
.sk-spinner-pulse.sk-spinner {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
margin: @spin-margin;
|
||||
background-color: @spin-color;
|
||||
border-radius: 100%;
|
||||
-webkit-animation: sk-pulseScaleOut 1s infinite ease-in-out;
|
||||
animation: sk-pulseScaleOut 1s infinite ease-in-out;
|
||||
}
|
||||
|
||||
@-webkit-keyframes sk-pulseScaleOut {
|
||||
0% {
|
||||
-webkit-transform: scale(0);
|
||||
transform: scale(0);
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: scale(1);
|
||||
transform: scale(1);
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes sk-pulseScaleOut {
|
||||
0% {
|
||||
-webkit-transform: scale(0);
|
||||
transform: scale(0);
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: scale(1);
|
||||
transform: scale(1);
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Usage:
|
||||
*
|
||||
* <div class="sk-spinner sk-spinner-chasing-dots">
|
||||
* <div class="sk-dot1"></div>
|
||||
* <div class="sk-dot2"></div>
|
||||
* </div>
|
||||
*
|
||||
*/
|
||||
.sk-spinner-chasing-dots.sk-spinner {
|
||||
margin: @spin-margin;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
position: relative;
|
||||
text-align: center;
|
||||
-webkit-animation: sk-chasingDotsRotate 2s infinite linear;
|
||||
animation: sk-chasingDotsRotate 2s infinite linear;
|
||||
}
|
||||
|
||||
.sk-spinner-chasing-dots .sk-dot1, .sk-spinner-chasing-dots .sk-dot2 {
|
||||
width: 60%;
|
||||
height: 60%;
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
background-color: @spin-color;
|
||||
border-radius: 100%;
|
||||
-webkit-animation: sk-chasingDotsBounce 2s infinite ease-in-out;
|
||||
animation: sk-chasingDotsBounce 2s infinite ease-in-out;
|
||||
}
|
||||
|
||||
.sk-spinner-chasing-dots .sk-dot2 {
|
||||
top: auto;
|
||||
bottom: 0;
|
||||
-webkit-animation-delay: -1s;
|
||||
animation-delay: -1s;
|
||||
}
|
||||
|
||||
@-webkit-keyframes sk-chasingDotsRotate {
|
||||
100% {
|
||||
-webkit-transform: rotate(360deg);
|
||||
transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes sk-chasingDotsRotate {
|
||||
100% {
|
||||
-webkit-transform: rotate(360deg);
|
||||
transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
@-webkit-keyframes sk-chasingDotsBounce {
|
||||
0%, 100% {
|
||||
-webkit-transform: scale(0);
|
||||
transform: scale(0);
|
||||
}
|
||||
|
||||
50% {
|
||||
-webkit-transform: scale(1);
|
||||
transform: scale(1);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes sk-chasingDotsBounce {
|
||||
0%, 100% {
|
||||
-webkit-transform: scale(0);
|
||||
transform: scale(0);
|
||||
}
|
||||
|
||||
50% {
|
||||
-webkit-transform: scale(1);
|
||||
transform: scale(1);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Usage:
|
||||
*
|
||||
* <div class="sk-spinner sk-spinner-three-bounce">
|
||||
* <div class="sk-bounce1"></div>
|
||||
* <div class="sk-bounce2"></div>
|
||||
* <div class="sk-bounce3"></div>
|
||||
* </div>
|
||||
*
|
||||
*/
|
||||
.sk-spinner-three-bounce.sk-spinner {
|
||||
margin: @spin-margin;
|
||||
width: 70px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.sk-spinner-three-bounce div {
|
||||
width: 18px;
|
||||
height: 18px;
|
||||
background-color: @spin-color;
|
||||
border-radius: 100%;
|
||||
display: inline-block;
|
||||
-webkit-animation: sk-threeBounceDelay 1.4s infinite ease-in-out;
|
||||
animation: sk-threeBounceDelay 1.4s infinite ease-in-out;
|
||||
/* Prevent first frame from flickering when animation starts */
|
||||
-webkit-animation-fill-mode: both;
|
||||
animation-fill-mode: both;
|
||||
}
|
||||
|
||||
.sk-spinner-three-bounce .sk-bounce1 {
|
||||
-webkit-animation-delay: -0.32s;
|
||||
animation-delay: -0.32s;
|
||||
}
|
||||
|
||||
.sk-spinner-three-bounce .sk-bounce2 {
|
||||
-webkit-animation-delay: -0.16s;
|
||||
animation-delay: -0.16s;
|
||||
}
|
||||
|
||||
@-webkit-keyframes sk-threeBounceDelay {
|
||||
0%, 80%, 100% {
|
||||
-webkit-transform: scale(0);
|
||||
transform: scale(0);
|
||||
}
|
||||
|
||||
40% {
|
||||
-webkit-transform: scale(1);
|
||||
transform: scale(1);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes sk-threeBounceDelay {
|
||||
0%, 80%, 100% {
|
||||
-webkit-transform: scale(0);
|
||||
transform: scale(0);
|
||||
}
|
||||
|
||||
40% {
|
||||
-webkit-transform: scale(1);
|
||||
transform: scale(1);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Usage:
|
||||
*
|
||||
* <div class="sk-spinner sk-spinner-circle">
|
||||
* <div class="sk-circle1 sk-circle"></div>
|
||||
* <div class="sk-circle2 sk-circle"></div>
|
||||
* <div class="sk-circle3 sk-circle"></div>
|
||||
* <div class="sk-circle4 sk-circle"></div>
|
||||
* <div class="sk-circle5 sk-circle"></div>
|
||||
* <div class="sk-circle6 sk-circle"></div>
|
||||
* <div class="sk-circle7 sk-circle"></div>
|
||||
* <div class="sk-circle8 sk-circle"></div>
|
||||
* <div class="sk-circle9 sk-circle"></div>
|
||||
* <div class="sk-circle10 sk-circle"></div>
|
||||
* <div class="sk-circle11 sk-circle"></div>
|
||||
* <div class="sk-circle12 sk-circle"></div>
|
||||
* </div>
|
||||
*
|
||||
*/
|
||||
.sk-spinner-circle.sk-spinner {
|
||||
margin: @spin-margin;
|
||||
width: 22px;
|
||||
height: 22px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 0;
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle:before {
|
||||
content: '';
|
||||
display: block;
|
||||
margin: @spin-margin;
|
||||
width: 20%;
|
||||
height: 20%;
|
||||
background-color: @spin-color;
|
||||
border-radius: 100%;
|
||||
-webkit-animation: sk-circleBounceDelay 1.2s infinite ease-in-out;
|
||||
animation: sk-circleBounceDelay 1.2s infinite ease-in-out;
|
||||
/* Prevent first frame from flickering when animation starts */
|
||||
-webkit-animation-fill-mode: both;
|
||||
animation-fill-mode: both;
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle2 {
|
||||
-webkit-transform: rotate(30deg);
|
||||
-ms-transform: rotate(30deg);
|
||||
transform: rotate(30deg);
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle3 {
|
||||
-webkit-transform: rotate(60deg);
|
||||
-ms-transform: rotate(60deg);
|
||||
transform: rotate(60deg);
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle4 {
|
||||
-webkit-transform: rotate(90deg);
|
||||
-ms-transform: rotate(90deg);
|
||||
transform: rotate(90deg);
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle5 {
|
||||
-webkit-transform: rotate(120deg);
|
||||
-ms-transform: rotate(120deg);
|
||||
transform: rotate(120deg);
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle6 {
|
||||
-webkit-transform: rotate(150deg);
|
||||
-ms-transform: rotate(150deg);
|
||||
transform: rotate(150deg);
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle7 {
|
||||
-webkit-transform: rotate(180deg);
|
||||
-ms-transform: rotate(180deg);
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle8 {
|
||||
-webkit-transform: rotate(210deg);
|
||||
-ms-transform: rotate(210deg);
|
||||
transform: rotate(210deg);
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle9 {
|
||||
-webkit-transform: rotate(240deg);
|
||||
-ms-transform: rotate(240deg);
|
||||
transform: rotate(240deg);
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle10 {
|
||||
-webkit-transform: rotate(270deg);
|
||||
-ms-transform: rotate(270deg);
|
||||
transform: rotate(270deg);
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle11 {
|
||||
-webkit-transform: rotate(300deg);
|
||||
-ms-transform: rotate(300deg);
|
||||
transform: rotate(300deg);
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle12 {
|
||||
-webkit-transform: rotate(330deg);
|
||||
-ms-transform: rotate(330deg);
|
||||
transform: rotate(330deg);
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle2:before {
|
||||
-webkit-animation-delay: -1.1s;
|
||||
animation-delay: -1.1s;
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle3:before {
|
||||
-webkit-animation-delay: -1s;
|
||||
animation-delay: -1s;
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle4:before {
|
||||
-webkit-animation-delay: -0.9s;
|
||||
animation-delay: -0.9s;
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle5:before {
|
||||
-webkit-animation-delay: -0.8s;
|
||||
animation-delay: -0.8s;
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle6:before {
|
||||
-webkit-animation-delay: -0.7s;
|
||||
animation-delay: -0.7s;
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle7:before {
|
||||
-webkit-animation-delay: -0.6s;
|
||||
animation-delay: -0.6s;
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle8:before {
|
||||
-webkit-animation-delay: -0.5s;
|
||||
animation-delay: -0.5s;
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle9:before {
|
||||
-webkit-animation-delay: -0.4s;
|
||||
animation-delay: -0.4s;
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle10:before {
|
||||
-webkit-animation-delay: -0.3s;
|
||||
animation-delay: -0.3s;
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle11:before {
|
||||
-webkit-animation-delay: -0.2s;
|
||||
animation-delay: -0.2s;
|
||||
}
|
||||
|
||||
.sk-spinner-circle .sk-circle12:before {
|
||||
-webkit-animation-delay: -0.1s;
|
||||
animation-delay: -0.1s;
|
||||
}
|
||||
|
||||
@-webkit-keyframes sk-circleBounceDelay {
|
||||
0%, 80%, 100% {
|
||||
-webkit-transform: scale(0);
|
||||
transform: scale(0);
|
||||
}
|
||||
|
||||
40% {
|
||||
-webkit-transform: scale(1);
|
||||
transform: scale(1);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes sk-circleBounceDelay {
|
||||
0%, 80%, 100% {
|
||||
-webkit-transform: scale(0);
|
||||
transform: scale(0);
|
||||
}
|
||||
|
||||
40% {
|
||||
-webkit-transform: scale(1);
|
||||
transform: scale(1);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Usage:
|
||||
*
|
||||
* <div class="sk-spinner sk-spinner-cube-grid">
|
||||
* <div class="sk-cube"></div>
|
||||
* <div class="sk-cube"></div>
|
||||
* <div class="sk-cube"></div>
|
||||
* <div class="sk-cube"></div>
|
||||
* <div class="sk-cube"></div>
|
||||
* <div class="sk-cube"></div>
|
||||
* <div class="sk-cube"></div>
|
||||
* <div class="sk-cube"></div>
|
||||
* <div class="sk-cube"></div>
|
||||
* </div>
|
||||
*
|
||||
*/
|
||||
.sk-spinner-cube-grid {
|
||||
/*
|
||||
* Spinner positions
|
||||
* 1 2 3
|
||||
* 4 5 6
|
||||
* 7 8 9
|
||||
*/
|
||||
}
|
||||
|
||||
.sk-spinner-cube-grid.sk-spinner {
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
margin: @spin-margin;
|
||||
}
|
||||
|
||||
.sk-spinner-cube-grid .sk-cube {
|
||||
width: 33%;
|
||||
height: 33%;
|
||||
background-color: @spin-color;
|
||||
float: left;
|
||||
-webkit-animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out;
|
||||
animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out;
|
||||
}
|
||||
|
||||
.sk-spinner-cube-grid .sk-cube:nth-child(1) {
|
||||
-webkit-animation-delay: 0.2s;
|
||||
animation-delay: 0.2s;
|
||||
}
|
||||
|
||||
.sk-spinner-cube-grid .sk-cube:nth-child(2) {
|
||||
-webkit-animation-delay: 0.3s;
|
||||
animation-delay: 0.3s;
|
||||
}
|
||||
|
||||
.sk-spinner-cube-grid .sk-cube:nth-child(3) {
|
||||
-webkit-animation-delay: 0.4s;
|
||||
animation-delay: 0.4s;
|
||||
}
|
||||
|
||||
.sk-spinner-cube-grid .sk-cube:nth-child(4) {
|
||||
-webkit-animation-delay: 0.1s;
|
||||
animation-delay: 0.1s;
|
||||
}
|
||||
|
||||
.sk-spinner-cube-grid .sk-cube:nth-child(5) {
|
||||
-webkit-animation-delay: 0.2s;
|
||||
animation-delay: 0.2s;
|
||||
}
|
||||
|
||||
.sk-spinner-cube-grid .sk-cube:nth-child(6) {
|
||||
-webkit-animation-delay: 0.3s;
|
||||
animation-delay: 0.3s;
|
||||
}
|
||||
|
||||
.sk-spinner-cube-grid .sk-cube:nth-child(7) {
|
||||
-webkit-animation-delay: 0s;
|
||||
animation-delay: 0s;
|
||||
}
|
||||
|
||||
.sk-spinner-cube-grid .sk-cube:nth-child(8) {
|
||||
-webkit-animation-delay: 0.1s;
|
||||
animation-delay: 0.1s;
|
||||
}
|
||||
|
||||
.sk-spinner-cube-grid .sk-cube:nth-child(9) {
|
||||
-webkit-animation-delay: 0.2s;
|
||||
animation-delay: 0.2s;
|
||||
}
|
||||
|
||||
@-webkit-keyframes sk-cubeGridScaleDelay {
|
||||
0%, 70%, 100% {
|
||||
-webkit-transform: scale3D(1, 1, 1);
|
||||
transform: scale3D(1, 1, 1);
|
||||
}
|
||||
|
||||
35% {
|
||||
-webkit-transform: scale3D(0, 0, 1);
|
||||
transform: scale3D(0, 0, 1);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes sk-cubeGridScaleDelay {
|
||||
0%, 70%, 100% {
|
||||
-webkit-transform: scale3D(1, 1, 1);
|
||||
transform: scale3D(1, 1, 1);
|
||||
}
|
||||
|
||||
35% {
|
||||
-webkit-transform: scale3D(0, 0, 1);
|
||||
transform: scale3D(0, 0, 1);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Usage:
|
||||
*
|
||||
* <div class="sk-spinner sk-spinner-wordpress">
|
||||
* <span class="sk-inner-circle"></span>
|
||||
* </div>
|
||||
*
|
||||
*/
|
||||
.sk-spinner-wordpress.sk-spinner {
|
||||
background-color: @spin-color;
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
border-radius: 30px;
|
||||
position: relative;
|
||||
margin: @spin-margin;
|
||||
-webkit-animation: sk-innerCircle 1s linear infinite;
|
||||
animation: sk-innerCircle 1s linear infinite;
|
||||
}
|
||||
|
||||
.sk-spinner-wordpress .sk-inner-circle {
|
||||
display: block;
|
||||
background-color: #fff;
|
||||
width: 8px;
|
||||
height: 8px;
|
||||
position: absolute;
|
||||
border-radius: 8px;
|
||||
top: 5px;
|
||||
left: 5px;
|
||||
}
|
||||
|
||||
@-webkit-keyframes sk-innerCircle {
|
||||
0% {
|
||||
-webkit-transform: rotate(0);
|
||||
transform: rotate(0);
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: rotate(360deg);
|
||||
transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes sk-innerCircle {
|
||||
0% {
|
||||
-webkit-transform: rotate(0);
|
||||
transform: rotate(0);
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: rotate(360deg);
|
||||
transform: rotate(360deg);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
* Usage:
|
||||
*
|
||||
* <div class="sk-spinner sk-spinner-fading-circle">
|
||||
* <div class="sk-circle1 sk-circle"></div>
|
||||
* <div class="sk-circle2 sk-circle"></div>
|
||||
* <div class="sk-circle3 sk-circle"></div>
|
||||
* <div class="sk-circle4 sk-circle"></div>
|
||||
* <div class="sk-circle5 sk-circle"></div>
|
||||
* <div class="sk-circle6 sk-circle"></div>
|
||||
* <div class="sk-circle7 sk-circle"></div>
|
||||
* <div class="sk-circle8 sk-circle"></div>
|
||||
* <div class="sk-circle9 sk-circle"></div>
|
||||
* <div class="sk-circle10 sk-circle"></div>
|
||||
* <div class="sk-circle11 sk-circle"></div>
|
||||
* <div class="sk-circle12 sk-circle"></div>
|
||||
* </div>
|
||||
*
|
||||
*/
|
||||
.sk-spinner-fading-circle.sk-spinner {
|
||||
margin: @spin-margin;
|
||||
width: 22px;
|
||||
height: 22px;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 0;
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle:before {
|
||||
content: '';
|
||||
display: block;
|
||||
margin: @spin-margin;
|
||||
width: 18%;
|
||||
height: 18%;
|
||||
background-color: @spin-color;
|
||||
border-radius: 100%;
|
||||
-webkit-animation: sk-circleFadeDelay 1.2s infinite ease-in-out;
|
||||
animation: sk-circleFadeDelay 1.2s infinite ease-in-out;
|
||||
/* Prevent first frame from flickering when animation starts */
|
||||
-webkit-animation-fill-mode: both;
|
||||
animation-fill-mode: both;
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle2 {
|
||||
-webkit-transform: rotate(30deg);
|
||||
-ms-transform: rotate(30deg);
|
||||
transform: rotate(30deg);
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle3 {
|
||||
-webkit-transform: rotate(60deg);
|
||||
-ms-transform: rotate(60deg);
|
||||
transform: rotate(60deg);
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle4 {
|
||||
-webkit-transform: rotate(90deg);
|
||||
-ms-transform: rotate(90deg);
|
||||
transform: rotate(90deg);
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle5 {
|
||||
-webkit-transform: rotate(120deg);
|
||||
-ms-transform: rotate(120deg);
|
||||
transform: rotate(120deg);
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle6 {
|
||||
-webkit-transform: rotate(150deg);
|
||||
-ms-transform: rotate(150deg);
|
||||
transform: rotate(150deg);
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle7 {
|
||||
-webkit-transform: rotate(180deg);
|
||||
-ms-transform: rotate(180deg);
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle8 {
|
||||
-webkit-transform: rotate(210deg);
|
||||
-ms-transform: rotate(210deg);
|
||||
transform: rotate(210deg);
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle9 {
|
||||
-webkit-transform: rotate(240deg);
|
||||
-ms-transform: rotate(240deg);
|
||||
transform: rotate(240deg);
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle10 {
|
||||
-webkit-transform: rotate(270deg);
|
||||
-ms-transform: rotate(270deg);
|
||||
transform: rotate(270deg);
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle11 {
|
||||
-webkit-transform: rotate(300deg);
|
||||
-ms-transform: rotate(300deg);
|
||||
transform: rotate(300deg);
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle12 {
|
||||
-webkit-transform: rotate(330deg);
|
||||
-ms-transform: rotate(330deg);
|
||||
transform: rotate(330deg);
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle2:before {
|
||||
-webkit-animation-delay: -1.1s;
|
||||
animation-delay: -1.1s;
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle3:before {
|
||||
-webkit-animation-delay: -1s;
|
||||
animation-delay: -1s;
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle4:before {
|
||||
-webkit-animation-delay: -0.9s;
|
||||
animation-delay: -0.9s;
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle5:before {
|
||||
-webkit-animation-delay: -0.8s;
|
||||
animation-delay: -0.8s;
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle6:before {
|
||||
-webkit-animation-delay: -0.7s;
|
||||
animation-delay: -0.7s;
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle7:before {
|
||||
-webkit-animation-delay: -0.6s;
|
||||
animation-delay: -0.6s;
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle8:before {
|
||||
-webkit-animation-delay: -0.5s;
|
||||
animation-delay: -0.5s;
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle9:before {
|
||||
-webkit-animation-delay: -0.4s;
|
||||
animation-delay: -0.4s;
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle10:before {
|
||||
-webkit-animation-delay: -0.3s;
|
||||
animation-delay: -0.3s;
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle11:before {
|
||||
-webkit-animation-delay: -0.2s;
|
||||
animation-delay: -0.2s;
|
||||
}
|
||||
|
||||
.sk-spinner-fading-circle .sk-circle12:before {
|
||||
-webkit-animation-delay: -0.1s;
|
||||
animation-delay: -0.1s;
|
||||
}
|
||||
|
||||
@-webkit-keyframes sk-circleFadeDelay {
|
||||
0%, 39%, 100% {
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
40% {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes sk-circleFadeDelay {
|
||||
0%, 39%, 100% {
|
||||
opacity: 0;
|
||||
}
|
||||
|
||||
40% {
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,31 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* INSPINIA - Responsive Admin Theme
|
||||
* version 2.6.2
|
||||
*
|
||||
*/
|
||||
// Variables, Mixins
|
||||
@import "../global/variables.less";
|
||||
@import "mixins.less";
|
||||
// INSPINIA Theme Elements
|
||||
@import "typography.less";
|
||||
@import "buttons.less";
|
||||
@import "badgets_labels.less";
|
||||
@import "elements.less";
|
||||
@import "sidebar.less";
|
||||
@import "base.less";
|
||||
@import "pages.less";
|
||||
@import "chat.less";
|
||||
@import "spinners.less";
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,32 +0,0 @@
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
font-weight: 100;
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size: 30px;
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 24px;
|
||||
}
|
||||
|
||||
h3 {
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
h5 {
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
h6 {
|
||||
font-size: 10px;
|
||||
}
|
||||
|
||||
h3, h4, h5 {
|
||||
margin-top: 5px;
|
||||
font-weight: 600;
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
@import "~bootstrap/less/variables.less";
|
||||
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.3 KiB |
@@ -0,0 +1,20 @@
|
||||
<?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">
|
||||
<svg t="1582644951614" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3842"
|
||||
width="200" height="200">
|
||||
<defs>
|
||||
<style type="text/css"></style>
|
||||
</defs>
|
||||
<path d="M692.906667 385.024c-11.605333-2.730667-23.210667-6.144-34.816-11.605333l-63.488 25.258666-5.461334 2.048h-5.461333c-8.874667 0-17.749333-4.096-23.210667-11.605333-5.461333-7.509333-6.826667-17.066667-4.778666-25.258667l8.874666-30.72-97.621333-19.797333v400.725333L901.12 402.090667l-105.130667-21.162667c-18.432 5.461333-38.229333 8.874667-59.392 8.874667-13.653333 0-28.672-1.365333-43.690666-4.778667z"
|
||||
fill="#A6DAFC" p-id="3843"></path>
|
||||
<path d="M512 502.442667v467.626666l389.802667-100.352V402.090667zM111.274667 413.696l356.352-100.352V580.266667z"
|
||||
fill="#568EC8" p-id="3844"></path>
|
||||
<path d="M111.274667 413.696v456.021333L512 970.069333V502.442667z" fill="#A6DAFC" p-id="3845"></path>
|
||||
<path d="M512 502.442667l389.802667-100.352L1024 546.816 645.802667 658.090667z" fill="#78C5FD" p-id="3846"></path>
|
||||
<path d="M111.274667 413.696l400.725333 88.746667-122.197333 167.253333L0 569.344z" fill="#CFF0FF"
|
||||
p-id="3847"></path>
|
||||
<path d="M886.784 160.426667c-2.730667-6.826667-6.144-13.653333-9.557333-20.48-1.365333-2.048-2.730667-4.096-4.096-6.826667-4.096-6.144-8.192-12.970667-13.653334-18.432s-10.24-11.605333-16.384-16.384c-2.048-2.048-4.096-3.413333-6.144-4.778667-8.192-6.826667-17.066667-12.288-25.941333-17.749333-2.048-1.365333-4.778667-2.730667-6.826667-3.413333-4.778667-2.048-9.557333-4.778667-15.018666-6.144-7.509333-2.730667-15.701333-5.461333-23.893334-6.826667-2.730667-0.682667-6.144-1.365333-8.874666-2.048-0.682667 0-2.048 0-2.730667-0.682667-2.048 0-4.096-0.682667-6.144-0.682666-1.365333 0-2.048 0-3.413333-0.682667-2.048 0-3.413333 0-5.461334-0.682667H727.04c-4.096 0-8.192 0-11.605333 0.682667h-2.048c-4.096 0.682667-8.192 0.682667-12.288 1.365333h-0.682667c-4.096 0.682667-7.509333 1.365333-11.605333 2.048-0.682667 0-1.365333 0-1.365334 0.682667-4.096 0.682667-7.509333 2.048-10.922666 3.413333-0.682667 0-1.365333 0.682667-2.048 0.682667-3.413333 1.365333-7.509333 2.730667-10.922667 4.096-0.682667 0-0.682667 0.682667-1.365333 0.682667-3.413333 1.365333-6.826667 3.413333-10.24 4.778666 0 0-0.682667 0-0.682667 0.682667-3.413333 2.048-6.826667 3.413333-10.24 5.461333-0.682667 0.682667-1.365333 0.682667-2.048 1.365334-3.413333 2.048-6.144 4.096-9.557333 6.144-0.682667 0.682667-1.365333 0.682667-1.365334 1.365333-3.413333 2.048-6.144 4.778667-8.874666 7.509333l-8.192 8.192-1.365334 1.365334c-2.730667 2.730667-4.778667 5.461333-7.509333 8.192-0.682667 0.682667-0.682667 1.365333-1.365333 1.365333-2.048 2.730667-4.778667 6.144-6.826667 8.874667 0 0.682667-0.682667 0.682667-0.682667 1.365333-2.048 3.413333-4.096 6.144-5.461333 9.557333 0 0.682667-0.682667 0.682667-0.682667 1.365334-2.048 3.413333-3.413333 6.826667-4.778666 10.24 0 0.682667-0.682667 1.365333-0.682667 2.048-1.365333 3.413333-2.730667 6.826667-4.096 10.922666 0 0.682667-0.682667 1.365333-0.682667 2.048-1.365333 4.096-2.048 7.509333-3.413333 11.605334-10.24 46.421333 2.730667 92.16 32.085333 127.658666L593.92 339.968l-9.557333 32.768v0.682667h0.682666l58.709334-23.210667 16.384-6.826667c6.144 3.413333 12.970667 6.144 19.797333 8.192s13.653333 4.778667 21.162667 6.144c2.730667 0.682667 6.144 1.365333 8.874666 2.048 0.682667 0 2.048 0 2.730667 0.682667 2.048 0 4.096 0.682667 6.144 0.682667 1.365333 0 2.048 0 3.413333 0.682666 2.048 0 3.413333 0 5.461334 0.682667H739.328c4.096 0 8.192 0 11.605333-0.682667h2.048c4.096-0.682667 8.192-0.682667 12.288-1.365333h0.682667c4.096-0.682667 7.509333-1.365333 11.605333-2.048 0.682667 0 1.365333 0 2.048-0.682667 4.096-0.682667 7.509333-2.048 10.922667-3.413333 0.682667 0 1.365333-0.682667 2.048-0.682667 3.413333-1.365333 7.509333-2.730667 10.922667-4.096 0.682667 0 0.682667-0.682667 1.365333-0.682666 3.413333-1.365333 6.826667-3.413333 10.24-4.778667 0 0 0.682667 0 0.682667-0.682667 3.413333-2.048 6.826667-3.413333 10.24-5.461333 0.682667-0.682667 1.365333-0.682667 2.048-1.365333 3.413333-2.048 6.144-4.096 9.557333-6.144 0.682667-0.682667 1.365333-0.682667 1.365333-1.365334 3.413333-2.048 6.144-4.778667 8.874667-7.509333l8.192-8.192 1.365333-1.365333c2.730667-2.730667 4.778667-5.461333 7.509334-8.192 0.682667-0.682667 0.682667-1.365333 1.365333-2.048 2.048-2.730667 4.778667-6.144 6.826667-8.874667 0-0.682667 0.682667-0.682667 0.682666-1.365333 2.048-3.413333 4.096-6.144 5.461334-9.557334 0-0.682667 0.682667-0.682667 0.682666-1.365333 2.048-3.413333 3.413333-6.826667 4.778667-10.24 0-0.682667 0.682667-1.365333 0.682667-2.048 1.365333-3.413333 2.730667-6.826667 4.096-10.922667 0-0.682667 0.682667-1.365333 0.682666-2.048 1.365333-4.096 2.048-7.509333 3.413334-11.605333 5.461333-28.672 2.730667-57.344-6.826667-83.285333z"
|
||||
fill="#F9DA3E" p-id="3848"></path>
|
||||
<path d="M739.328 167.936h48.469333v27.989333h-13.653333v-15.701333h-83.968v15.701333h-13.653333v-27.989333h48.469333c-1.365333-3.413333-3.413333-6.826667-4.778667-10.24l14.336-2.048c2.048 3.413333 3.413333 7.509333 4.778667 12.288z m37.546667 52.565333v12.288h-37.546667v25.258667h48.469333v12.970667H677.205333v-12.970667h48.469334v-25.258667h-37.546667v-12.288h88.746667z m-51.882667-24.576c-10.24 8.874667-22.528 16.384-37.546667 22.528l-5.461333-12.288c14.336-5.461333 25.941333-11.605333 34.816-19.797333l8.192 9.557333z m56.661333 10.922667l-7.509333 11.605333c-11.605333-9.557333-23.210667-17.066667-35.498667-22.528l6.826667-10.24c13.653333 6.144 25.258667 12.970667 36.181333 21.162667z"
|
||||
fill="#FFFFFF" p-id="3849"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 5.7 KiB |
|
Before Width: | Height: | Size: 3.4 KiB After Width: | Height: | Size: 3.4 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 4.2 KiB After Width: | Height: | Size: 4.2 KiB |
@@ -0,0 +1,10 @@
|
||||
<?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">
|
||||
<svg t="1514189634329" class="icon" style="" viewBox="0 0 1219 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="10648" width="238.0859375" height="200">
|
||||
<defs>
|
||||
<style type="text/css"></style>
|
||||
</defs>
|
||||
<path d="M1197.787429 327.192381a19.504762 19.504762 0 0 1 19.553523 19.407238v614.156191c0 34.913524-28.574476 63.24419-63.878095 63.24419H63.878095C28.623238 1024 0 995.718095 0 960.75581V346.599619a19.504762 19.504762 0 0 1 19.602286-19.358476h1178.185143z m-66.80381-213.089524C1179.550476 114.102857 1219.047619 153.209905 1219.047619 201.386667v80.213333H1.657905V88.259048C1.657905 39.497143 41.593905 0 90.794667 0h290.864762c17.408 0 33.987048 7.655619 45.104761 20.967619l78.214096 93.135238h626.005333z"
|
||||
fill="#1ab394" p-id="10649"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 949 B |
@@ -0,0 +1,14 @@
|
||||
<?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">
|
||||
<svg t="1514189353878" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="1197" width="200" height="200">
|
||||
<defs>
|
||||
<style type="text/css"></style>
|
||||
</defs>
|
||||
<path d="M9.367 0h992.97v341.333H9.366z" fill="#55C7F7" p-id="1198"></path>
|
||||
<path d="M9.367 341.333h992.97v341.334H9.366z" fill="#F95F5D" p-id="1199"></path>
|
||||
<path d="M9.367 682.667h992.97V1024H9.366z" fill="#7ECF3B" p-id="1200"></path>
|
||||
<path d="M350.7 0h310.303v1024H350.7z" fill="#FDAF42" p-id="1201"></path>
|
||||
<path d="M304.154 386.638V646.05h403.394V386.638H304.154z m356.849 215.97H350.7V429.46h310.303v173.15z"
|
||||
fill="#FFFFFF" p-id="1202"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 855 B |
@@ -0,0 +1,14 @@
|
||||
<?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">
|
||||
<svg t="1543321997742" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="3887" width="200" height="200">
|
||||
<defs>
|
||||
<style type="text/css"></style>
|
||||
</defs>
|
||||
<path d="M160 32c-12 0-24.8 4.8-33.6 14.4S112 68 112 80v864c0 12 4.8 24.8 14.4 33.6C136 987.2 148 992 160 992h704c12 0 24.8-4.8 33.6-14.4C907.2 968 912 956 912 944V304L640 32H160z"
|
||||
fill="#FF5562" p-id="3888"></path>
|
||||
<path d="M912 304H688c-12 0-24.8-4.8-33.6-14.4-9.6-8.8-14.4-21.6-14.4-33.6V32l272 272z" fill="#FFBBC0"
|
||||
p-id="3889"></path>
|
||||
<path d="M669.6 491.2c0-1.6 0.8-4 0-6.4V369.6c0-4.8-2.4-8.8-5.6-12-4-3.2-8-4-12.8-3.2l-250.4 70.4c-7.2 1.6-12 7.2-12 14.4v275.2c-9.6-4-20.8-6.4-32.8-6.4-8.8 0-17.6 0.8-26.4 3.2-40.8 11.2-66.4 43.2-58.4 72.8 6.4 23.2 30.4 37.6 60.8 37.6 8.8 0 17.6-1.6 26.4-3.2 36.8-10.4 60.8-36.8 60-63.2 0.8-1.6 0.8-3.2 0.8-5.6V570.4l220-61.6v136c-9.6-4-20.8-6.4-32.8-6.4-8.8 0-17.6 0.8-26.4 3.2-40.8 11.2-66.4 43.2-58.4 72.8C528 737.6 552 752 582.4 752c8.8 0 17.6-0.8 26.4-3.2 36-9.6 60-36 60-62.4 0.8-1.6 0.8-3.2 0.8-5.6V491.2z m-250.4 48v-53.6l220-61.6v53.6l-220 61.6z"
|
||||
fill="#FFFFFF" p-id="3890"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.3 KiB |
@@ -0,0 +1,12 @@
|
||||
<?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">
|
||||
<svg t="1543300132402" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="2107" width="200" height="200">
|
||||
<defs>
|
||||
<style type="text/css"></style>
|
||||
</defs>
|
||||
<path d="M533.947184 38.36489h65.880106v88.119185c117.859409 0.660894 235.60867-1.211639 353.35793 0.660894 25.102953-2.533427 44.81962 16.962943 42.506492 42.07691 1.872533 216.993492-0.440596 434.097133 1.112505 651.090626-1.112505 22.250094 2.191965 46.923466-10.695466 66.640133-16.081751 11.455494-36.899909 10.023557-55.625236 10.904749-110.25913-0.550745-220.408111-0.330447-330.656225-0.330447v88.119185h-68.843113c-167.657764-30.621417-335.745108-58.709407-503.722304-88.119185-0.110149-256.977572 0-513.955144 0-770.822567 168.858388-29.519927 337.826924-58.268811 506.685311-88.339483z"
|
||||
fill="#2A5699" p-id="2108"></path>
|
||||
<path d="M599.816275 159.528769h363.491637v704.953477h-363.491637v-88.119185h286.38735v-44.059592h-286.38735v-55.07449h286.38735v-44.059593h-286.38735v-55.07449h286.38735v-44.059592h-286.38735v-55.074491h286.38735v-44.059592h-286.38735v-55.074491h286.38735v-44.059592h-286.38735v-55.07449h286.38735v-44.059593h-286.38735v-77.104286zM254.829667 354.162018c20.928306-1.211639 41.856613-2.092831 62.784919-3.19432 14.649814 74.350562 29.619061 148.590975 45.491529 222.61109 12.446835-76.443393 26.215457-152.666487 39.543484-228.999731 22.029796-0.771043 44.059592-1.982682 65.97924-3.30447-24.89367 106.734362-46.703168 214.349917-73.909966 320.423385-18.39488 9.582961-45.932125-0.440596-67.741623 1.10149-14.649814-72.90761-31.722906-145.38564-44.819621-218.645727-12.898446 71.156242-29.641091 141.651589-44.390039 212.367235a4187.754101 4187.754101 0 0 1-63.666111-3.866229c-18.284731-96.931103-39.763782-193.190297-56.836874-290.341698 18.835476-0.881192 37.792115-1.652235 56.627591-2.313129 11.33433 70.164901 24.221761 139.999355 34.146184 210.274404 15.508976-72.037433 31.37043-144.074867 46.791287-216.1123z"
|
||||
fill="#FFFFFF" p-id="2109"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.1 KiB |
@@ -0,0 +1,19 @@
|
||||
<?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">
|
||||
<svg t="1514189511483" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="6709" width="200" height="200">
|
||||
<defs>
|
||||
<style type="text/css"></style>
|
||||
</defs>
|
||||
<path d="M676.297143 0H145.609143C130.834286 0 118.857143 11.977143 118.857143 35.218286V1005.714286c0 6.308571 11.977143 18.285714 26.752 18.285714h732.781714c14.774857 0 26.752-11.977143 26.752-18.285714V237.312c0-12.726857-1.700571-16.822857-4.699428-19.84L687.670857 4.699429A16.164571 16.164571 0 0 0 676.297143 0z"
|
||||
fill="#E9E9E0" p-id="6710"></path>
|
||||
<path d="M685.714286 2.761143V219.428571h216.667428z" fill="#D9D7CA" p-id="6711"></path>
|
||||
<path d="M878.390857 1024H145.609143A26.752 26.752 0 0 1 118.857143 997.248V713.142857h786.285714v284.105143c0 14.774857-11.977143 26.752-26.752 26.752z"
|
||||
fill="#C8BDB8" p-id="6712"></path>
|
||||
<path d="M338.285714 859.428571m-54.857143 0a54.857143 54.857143 0 1 0 109.714286 0 54.857143 54.857143 0 1 0-109.714286 0Z"
|
||||
fill="#FFFFFF" p-id="6713"></path>
|
||||
<path d="M521.142857 859.428571m-54.857143 0a54.857143 54.857143 0 1 0 109.714286 0 54.857143 54.857143 0 1 0-109.714286 0Z"
|
||||
fill="#FFFFFF" p-id="6714"></path>
|
||||
<path d="M704 859.428571m-54.857143 0a54.857143 54.857143 0 1 0 109.714286 0 54.857143 54.857143 0 1 0-109.714286 0Z"
|
||||
fill="#FFFFFF" p-id="6715"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.5 KiB |
@@ -0,0 +1,10 @@
|
||||
<?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">
|
||||
<svg t="1514189634329" class="icon" style="" viewBox="0 0 1219 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="10648" width="238.0859375" height="200">
|
||||
<defs>
|
||||
<style type="text/css"></style>
|
||||
</defs>
|
||||
<path d="M1197.787429 327.192381a19.504762 19.504762 0 0 1 19.553523 19.407238v614.156191c0 34.913524-28.574476 63.24419-63.878095 63.24419H63.878095C28.623238 1024 0 995.718095 0 960.75581V346.599619a19.504762 19.504762 0 0 1 19.602286-19.358476h1178.185143z m-66.80381-213.089524C1179.550476 114.102857 1219.047619 153.209905 1219.047619 201.386667v80.213333H1.657905V88.259048C1.657905 39.497143 41.593905 0 90.794667 0h290.864762c17.408 0 33.987048 7.655619 45.104761 20.967619l78.214096 93.135238h626.005333z"
|
||||
fill="#23B7E5" p-id="10649"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 949 B |
@@ -0,0 +1,16 @@
|
||||
<?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">
|
||||
<svg t="1514190539077" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="14917" width="200" height="200">
|
||||
<defs>
|
||||
<style type="text/css"></style>
|
||||
</defs>
|
||||
<path d="M128 0h597.3l227.6 227.9v739.2c0 31.4-25.5 56.9-56.9 56.9H128c-31.4 0-56.9-25.5-56.9-56.9V56.9C71.1 25.5 96.6 0 128 0z"
|
||||
fill="#13BE93" p-id="14918"></path>
|
||||
<path d="M630.5 1024H128c-25.7 0-47.4-17-54.4-40.4l218.1-218.1c22.2-22.2 58.2-22.2 80.5 0L630.5 1024z"
|
||||
fill="#6BD8BD" p-id="14919"></path>
|
||||
<path d="M952.9 858v109.1c0 31.4-25.5 56.9-56.9 56.9H322.4l-4.7-4.7 358-358c22.2-22.2 58.2-22.2 80.5 0L952.9 858z"
|
||||
fill="#9CF9E2" p-id="14920"></path>
|
||||
<path d="M725.3 0l227.6 227.6H782.2c-31.4 0-56.9-25.5-56.9-56.9V0z" fill="#69DCC0" p-id="14921"></path>
|
||||
<path d="M327.1 483.6m-85.3 0a85.3 85.3 0 1 0 170.6 0 85.3 85.3 0 1 0-170.6 0Z" fill="#E9FFFA" p-id="14922"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.1 KiB |
@@ -0,0 +1,13 @@
|
||||
<?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">
|
||||
<svg t="1514284130163" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="1551" width="200" height="200">
|
||||
<defs>
|
||||
<style type="text/css"></style>
|
||||
</defs>
|
||||
<path d="M915.114667 1024H108.885333V0h587.776v218.112H914.773333V1024z m-785.066667-20.821333h763.904V238.933333H675.84V20.821333H129.706667v982.357334z"
|
||||
fill="#F90E09" p-id="1552"></path>
|
||||
<path d="M708.266667 10.581333L904.533333 206.848h-196.266666z" fill="#F90E09" p-id="1553"></path>
|
||||
<path d="M282.965333 792.576c33.450667-23.210667 55.637333-57.344 76.8-91.136-30.378667 25.941333-59.050667 54.954667-76.8 91.136z m396.629334-169.642667c31.402667 15.018667 65.877333 31.061333 101.376 21.504-24.576-29.696-67.584-21.504-101.376-21.504z m-246.101334 23.210667c45.397333-16.725333 91.818667-29.696 138.922667-39.594667-30.378667-26.965333-55.978667-58.368-76.458667-93.525333-16.725333 46.08-38.912 90.112-62.464 133.12z m67.925334-243.370667c14.677333-37.546667 19.114667-83.285333-5.802667-117.418666-7.168 38.912-4.096 79.189333 5.802667 117.418666z m-45.397334-105.130666c4.096-24.917333 35.84-29.696 55.637334-22.186667 12.288 7.850667 18.432 22.869333 18.773333 37.205333 1.365333 44.032-6.485333 87.381333-12.629333 130.730667-3.413333 20.138667 8.874667 38.229333 17.749333 55.296 21.845333 40.277333 52.224 76.458667 92.16 99.669333 48.128-5.802667 98.645333-12.970667 145.749333 2.389334 35.157333 11.946667 26.965333 77.141333-11.264 77.824-53.589333 2.730667-102.058667-23.893333-150.186666-43.349334-66.218667 4.778667-130.730667 24.917333-194.218667 44.032-28.672 46.762667-54.613333 98.986667-101.034667 130.730667-23.210667 18.090667-76.458667 3.072-64.512-32.085333 20.138667-49.152 70.314667-76.117333 114.346667-100.693334 12.629333-6.485333 19.797333-18.773333 26.282667-31.061333 30.037333-57.685333 60.074667-115.370667 84.309333-175.786667-12.629333-56.661333-31.061333-114.688-21.162667-172.714666z"
|
||||
fill="#F90E09" p-id="1554"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.1 KiB |
@@ -0,0 +1,18 @@
|
||||
<?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">
|
||||
<svg t="1543300178225" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="5733" width="200" height="200">
|
||||
<defs>
|
||||
<style type="text/css"></style>
|
||||
</defs>
|
||||
<path d="M537.372818 38.36489h62.454472v99.134083c117.738246 0.660894 235.60867-1.211639 353.236766 0.550745 25.334266-2.423278 45.172097 17.29339 42.627656 42.627655 1.872533 205.758296-0.440596 411.626741 1.10149 617.506201-1.10149 22.250094 2.20298 46.923466-10.574302 66.640134-16.081751 11.664777-36.999043 10.133706-55.834519 11.014898-110.148981-0.550745-220.297962-0.330447-330.557091-0.330447v110.148981h-68.523681c-167.856032-30.621417-336.06454-58.599258-504.041736-88.119185-0.110149-256.977572 0-513.955144 0-770.822567 169.970892-29.420793 339.93077-59.381316 510.110945-88.350498z"
|
||||
fill="#D24625" p-id="5734"></path>
|
||||
<path d="M599.82729 170.543667h363.491636v671.908783h-363.491636v-88.119185h264.357554v-44.059592h-264.357554v-55.074491h264.357554v-44.059592h-264.247405c-0.110149-21.5892-0.110149-43.1784-0.231313-64.767601 43.630011 13.53731 93.307202 13.217878 132.299941-13.008594 42.18706-25.003819 64.216856-72.698327 67.851772-120.271672-48.366417-0.330447-96.710805-0.220298-144.956059-0.220298-0.121164-47.914807 0.550745-95.829613-0.991341-143.634271-18.075448 3.524767-36.128866 7.269833-54.083149 11.125047v-109.818534z"
|
||||
fill="#FFFFFF" p-id="5735"></path>
|
||||
<path d="M677.041725 246.216017c76.553542 3.524767 140.880546 67.961921 144.956059 144.295165-48.366417 0.550745-96.710805 0.330447-145.066208 0.330447 0-48.245254-0.121164-96.490507 0.110149-144.625612z"
|
||||
fill="#D24625" p-id="5736"></path>
|
||||
<path d="M203.940838 329.378497c59.810897 2.863874 132.288926-23.682031 181.855967 21.148605 47.485226 57.607917 34.917227 163.571236-35.467972 198.047867-25.003819 12.777282-53.642554 11.014898-80.849351 10.133706-0.110149 43.068251-0.220298 86.136503-0.110149 129.19374-21.820513-1.872533-43.74016-3.745065-65.538644-5.507449-0.980326-117.628097-1.211639-235.377357 0.110149-353.016469z"
|
||||
fill="#FFFFFF" p-id="5737"></path>
|
||||
<path d="M269.380347 388.969096c21.699349-0.991341 48.575701-4.956704 63.214501 15.420857 12.567999 21.5892 11.89609 50.007637 1.442951 72.257732-12.567999 22.69069-40.986436 20.48771-62.895068 23.131286-2.313129-36.899909-2.092831-73.799817-1.762384-110.809875z"
|
||||
fill="#D24625" p-id="5738"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.5 KiB |
@@ -0,0 +1,16 @@
|
||||
<?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">
|
||||
<svg t="1545064197737" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="14227" width="200" height="200">
|
||||
<defs>
|
||||
<style type="text/css"></style>
|
||||
</defs>
|
||||
<path d="M759.725253 0H134.464646v1024h817.131314V191.870707z" fill="#02007A" p-id="14228"></path>
|
||||
<path d="M72.40404 708.525253h687.838384v258.585858H72.40404z" fill="#230091" p-id="14229"></path>
|
||||
<path d="M82.747475 718.868687h667.151515v237.89899H82.747475zM755.070707 5.171717l191.353535 191.353536h-191.353535z"
|
||||
fill="#FFFFFF" p-id="14230"></path>
|
||||
<path d="M506.828283 791.272727v93.090909h25.858586c28.444444 0 41.373737-12.929293 41.373737-45.511111s-12.929293-47.579798-41.373737-47.579798h-25.858586z m-25.858586-25.858586h51.717172c42.408081 0 67.232323 29.99596 67.232323 74.989899S575.612121 910.222222 532.686869 910.222222H480.969697v-144.808081z m-132.39596 104.468687c1.034343 26.375758 22.755556 42.408081 55.337374 42.408081 34.650505 0 55.854545-17.066667 55.854546-43.959596 0-21.20404-12.412121-33.09899-40.856566-39.822222l-16.549495-3.620202c-17.583838-4.137374-24.824242-9.826263-24.824242-19.135354 0-11.894949 10.860606-19.652525 26.892929-19.652525s27.410101 7.757576 28.444444 21.204041h24.307071c-0.517172-24.824242-21.20404-41.890909-52.751515-41.89091S351.676768 782.480808 351.676768 807.822222c0 20.169697 12.412121 33.09899 38.787878 38.787879l18.618182 4.137374c18.10101 4.137374 25.341414 10.343434 25.341414 20.169697 0 11.894949-11.894949 20.169697-28.961616 20.169697s-30.513131-8.791919-32.064646-21.721212l-24.824243 0.517171zM258.585859 788.686869v53.785858h20.686868c18.10101 0 31.030303-9.826263 31.030303-26.892929s-12.412121-26.892929-31.030303-26.892929h-20.686868z m-25.858586-23.272728h56.888889c28.444444 0 46.545455 20.686869 46.545454 49.131314s-17.583838 49.131313-46.545454 49.131313h-31.030303v46.545454h-25.858586v-144.808081z"
|
||||
fill="#230091" p-id="14231"></path>
|
||||
<path d="M415.806061 443.216162h-31.030303v137.567676H321.163636V196.525253h93.090909c91.022222 0 140.670707 35.684848 140.670708 122.052525 0.517172 103.434343-92.573737 124.638384-139.119192 124.638384z m-5.688889-192.905051c-6.206061 0-14.99798 0.517172-26.89293 1.551515V387.878788h36.202021C461.834343 387.878788 491.313131 366.157576 491.313131 312.888889c0-40.856566-32.064646-62.577778-81.195959-62.577778z m258.068687 337.19596c70.852525 0 96.711111-50.165657 96.711111-84.816162 0-54.820202-35.684848-67.749495-66.19798-87.40202-25.858586-17.066667-49.648485-23.272727-49.648485-40.856566 0-22.755556 15.515152-27.410101 36.20202-27.410101 25.858586 0 54.820202 2.068687 67.232323 16.032323V306.682828c-12.929293-10.343434-37.236364-13.446465-68.783838-13.446464-67.749495 0-93.608081 44.993939-93.608081 84.29899 0 50.682828 33.616162 65.680808 66.19798 83.781818 21.20404 11.894949 46.545455 20.686869 46.545455 44.476767 0 13.963636-8.791919 27.927273-37.753536 27.927273-26.892929 0-59.991919-10.343434-74.989899-23.789899v59.991919c13.446465 10.343434 40.339394 17.583838 78.09293 17.583839z"
|
||||
fill="#7AB7FF" p-id="14232"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.2 KiB |
@@ -0,0 +1,10 @@
|
||||
<?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">
|
||||
<svg t="1514189544355" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="8186" width="200" height="200">
|
||||
<defs>
|
||||
<style type="text/css"></style>
|
||||
</defs>
|
||||
<path d="M176 1024l672 0c26.464 0 48-21.536 48-48l0-672c0-0.544-0.256-0.992-0.288-1.504-0.064-0.736-0.256-1.376-0.416-2.08-0.544-2.272-1.472-4.32-2.88-6.112-0.224-0.288-0.192-0.64-0.416-0.928l-256-288c-0.096-0.096-0.224-0.096-0.32-0.192-1.92-2.048-4.352-3.456-7.136-4.288-0.608-0.192-1.152-0.256-1.792-0.352-0.928-0.16-1.792-0.544-2.752-0.544l-448 0c-26.464 0-48 21.536-48 48l0 928c0 26.464 21.536 48 48 48zM640 58.08l204.384 229.92-188.384 0c-7.04 0-16-13.44-16-24l0-205.92zM160 48c0-8.832 7.2-16 16-16l432 0 0 232c0 25.888 20.96 56 48 56l208 0 0 656c0 8.832-7.2 16-16 16l-672 0c-8.96 0-16-7.04-16-16l0-928zM304 448l416 0c8.832 0 16-7.168 16-16s-7.168-16-16-16l-416 0c-8.832 0-16 7.168-16 16s7.168 16 16 16zM304 576l416 0c8.832 0 16-7.168 16-16s-7.168-16-16-16l-416 0c-8.832 0-16 7.168-16 16s7.168 16 16 16zM304 320l192 0c8.832 0 16-7.168 16-16s-7.168-16-16-16l-192 0c-8.832 0-16 7.168-16 16s7.168 16 16 16zM304 704l416 0c8.832 0 16-7.168 16-16s-7.168-16-16-16l-416 0c-8.832 0-16 7.168-16 16s7.168 16 16 16zM304 832l416 0c8.832 0 16-7.168 16-16s-7.168-16-16-16l-416 0c-8.832 0-16 7.168-16 16s7.168 16 16 16z"
|
||||
p-id="8187"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.5 KiB |
@@ -0,0 +1,23 @@
|
||||
<?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">
|
||||
<svg t="1514189554639" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="8871" width="200" height="200">
|
||||
<defs>
|
||||
<style type="text/css"></style>
|
||||
</defs>
|
||||
<path d="M80 34.4h864v960H80z" fill="#8095FF" p-id="8872"></path>
|
||||
<path d="M176 112m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8873"></path>
|
||||
<path d="M176 272m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8874"></path>
|
||||
<path d="M176 432m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8875"></path>
|
||||
<path d="M176 592m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8876"></path>
|
||||
<path d="M176 752m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8877"></path>
|
||||
<path d="M176 912m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8878"></path>
|
||||
<path d="M864 112m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8879"></path>
|
||||
<path d="M864 272m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8880"></path>
|
||||
<path d="M864 432m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8881"></path>
|
||||
<path d="M864 592m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8882"></path>
|
||||
<path d="M864 752m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8883"></path>
|
||||
<path d="M864 912m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8884"></path>
|
||||
<path d="M648 508L436 362.4c-4.8-3.2-11.2-4-16.8-0.8-5.6 3.2-8.8 8.8-8.8 14.4v290.4c0 5.6 3.2 11.2 8.8 14.4 5.6 3.2 12 2.4 16.8-0.8L648 533.6c4.8-2.4 7.2-8 7.2-12.8 0-4.8-3.2-9.6-7.2-12.8z"
|
||||
fill="#FFFFFF" p-id="8885"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.8 KiB |
@@ -0,0 +1,17 @@
|
||||
<?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">
|
||||
<svg t="1543300142282" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="2233" width="200" height="200">
|
||||
<defs>
|
||||
<style type="text/css"></style>
|
||||
</defs>
|
||||
<path d="M534.310676 38.36489h65.428495v88.119185c110.25913 0 220.507245 0.220298 330.766374-0.330447 18.615178 0.771043 39.113903-0.550745 55.305803 10.574302 11.345345 16.302049 10.023557 37.010058 10.783586 55.746399-0.550745 191.218631-0.319432 382.327112-0.220298 573.435594-0.550745 32.053353 2.974022 64.767601-3.745066 96.380358-4.405959 22.910988-31.943204 23.461733-50.338084 24.232776-114.114344 0.330447-228.338837-0.220298-342.56333 0v99.134083h-68.402517c-167.867047-30.511268-336.075555-58.709407-504.151885-88.119185v-770.932716c169.0897-29.420793 338.168386-58.389975 507.136922-88.240349z"
|
||||
fill="#207245" p-id="2234"></path>
|
||||
<path d="M599.739171 159.528769h363.491636v693.938579h-363.491636v-66.089389h88.119184v-77.104286h-88.119184v-44.059592h88.119184v-77.104287h-88.119184v-44.059592h88.119184v-77.104287h-88.119184v-44.059592h88.119184v-77.104287h-88.119184v-44.059592h88.119184v-77.104287h-88.119184v-66.089388z"
|
||||
fill="#FFFFFF" p-id="2235"></path>
|
||||
<path d="M731.917948 225.618157h154.208573v77.104287h-154.208573v-77.104287z" fill="#207245" p-id="2236"></path>
|
||||
<path d="M353.44605 328.827752c24.89367-1.762384 49.897488-3.304469 74.901307-4.516108-29.409778 60.251492-58.929705 120.502985-88.879213 180.53418 30.29097 61.683429 61.242833 122.926263 91.632937 184.609692-26.545904-1.553101-52.98166-3.19432-79.527564-5.066854-18.725327-45.932125-41.526166-90.322164-54.964342-138.358134-14.969246 44.731501-36.349164 86.918561-53.521389 130.74684-24.122627-0.330447-48.256268-1.321788-72.367881-2.313129 28.308288-55.404937 55.625235-111.250471 84.814716-166.324961-24.783521-56.726725-52.001334-112.35196-77.544883-168.748238 24.232776-1.431937 48.454537-2.863874 72.698327-4.185662 16.412198 43.068251 34.366482 85.585758 47.925822 129.7555 14.506621-46.802302 36.216985-90.861894 54.832163-136.133126z"
|
||||
fill="#FFFFFF" p-id="2237"></path>
|
||||
<path d="M731.917948 346.782036h154.208573v77.104287h-154.208573v-77.104287zM731.917948 467.945915h154.208573v77.104287h-154.208573v-77.104287zM731.917948 589.109794h154.208573v77.104287h-154.208573v-77.104287zM731.917948 710.273673h154.208573v77.104286h-154.208573v-77.104286z"
|
||||
fill="#207245" p-id="2238"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.6 KiB |
|
After Width: | Height: | Size: 34 KiB |
@@ -0,0 +1,11 @@
|
||||
<?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">
|
||||
<svg t="1544085034574" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
|
||||
p-id="1828" width="200" height="200">
|
||||
<defs>
|
||||
<style type="text/css"></style>
|
||||
</defs>
|
||||
<path d="M0 512A512 512 0 1 0 512 0 512 512 0 0 0 0 512" fill="#36D49F" p-id="1829"></path>
|
||||
<path d="M450.37037 552.580741l-115.105185-87.798519-50.820741 39.822222L483.365926 701.62963C517.499259 616.296296 625.777778 449.232593 758.518519 330.714074L746.382222 303.407407a1264.071111 1264.071111 0 0 0-296.011852 249.173334"
|
||||
fill="#FFFFFF" p-id="1830"></path>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 755 B |
|
After Width: | Height: | Size: 4.5 KiB |
@@ -1 +0,0 @@
|
||||
<?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"><svg t="1514189634329" class="icon" style="" viewBox="0 0 1219 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="10648" xmlns:xlink="http://www.w3.org/1999/xlink" width="238.0859375" height="200"><defs><style type="text/css"></style></defs><path d="M1197.787429 327.192381a19.504762 19.504762 0 0 1 19.553523 19.407238v614.156191c0 34.913524-28.574476 63.24419-63.878095 63.24419H63.878095C28.623238 1024 0 995.718095 0 960.75581V346.599619a19.504762 19.504762 0 0 1 19.602286-19.358476h1178.185143z m-66.80381-213.089524C1179.550476 114.102857 1219.047619 153.209905 1219.047619 201.386667v80.213333H1.657905V88.259048C1.657905 39.497143 41.593905 0 90.794667 0h290.864762c17.408 0 33.987048 7.655619 45.104761 20.967619l78.214096 93.135238h626.005333z" fill="#1ab394" p-id="10649"></path></svg>
|
||||
|
Before Width: | Height: | Size: 943 B |
@@ -1 +0,0 @@
|
||||
<?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"><svg t="1514189353878" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1197" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M9.367 0h992.97v341.333H9.366z" fill="#55C7F7" p-id="1198"></path><path d="M9.367 341.333h992.97v341.334H9.366z" fill="#F95F5D" p-id="1199"></path><path d="M9.367 682.667h992.97V1024H9.366z" fill="#7ECF3B" p-id="1200"></path><path d="M350.7 0h310.303v1024H350.7z" fill="#FDAF42" p-id="1201"></path><path d="M304.154 386.638V646.05h403.394V386.638H304.154z m356.849 215.97H350.7V429.46h310.303v173.15z" fill="#FFFFFF" p-id="1202"></path></svg>
|
||||
|
Before Width: | Height: | Size: 828 B |
@@ -1 +0,0 @@
|
||||
<?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"><svg t="1543321997742" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3887" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M160 32c-12 0-24.8 4.8-33.6 14.4S112 68 112 80v864c0 12 4.8 24.8 14.4 33.6C136 987.2 148 992 160 992h704c12 0 24.8-4.8 33.6-14.4C907.2 968 912 956 912 944V304L640 32H160z" fill="#FF5562" p-id="3888"></path><path d="M912 304H688c-12 0-24.8-4.8-33.6-14.4-9.6-8.8-14.4-21.6-14.4-33.6V32l272 272z" fill="#FFBBC0" p-id="3889"></path><path d="M669.6 491.2c0-1.6 0.8-4 0-6.4V369.6c0-4.8-2.4-8.8-5.6-12-4-3.2-8-4-12.8-3.2l-250.4 70.4c-7.2 1.6-12 7.2-12 14.4v275.2c-9.6-4-20.8-6.4-32.8-6.4-8.8 0-17.6 0.8-26.4 3.2-40.8 11.2-66.4 43.2-58.4 72.8 6.4 23.2 30.4 37.6 60.8 37.6 8.8 0 17.6-1.6 26.4-3.2 36.8-10.4 60.8-36.8 60-63.2 0.8-1.6 0.8-3.2 0.8-5.6V570.4l220-61.6v136c-9.6-4-20.8-6.4-32.8-6.4-8.8 0-17.6 0.8-26.4 3.2-40.8 11.2-66.4 43.2-58.4 72.8C528 737.6 552 752 582.4 752c8.8 0 17.6-0.8 26.4-3.2 36-9.6 60-36 60-62.4 0.8-1.6 0.8-3.2 0.8-5.6V491.2z m-250.4 48v-53.6l220-61.6v53.6l-220 61.6z" fill="#FFFFFF" p-id="3890"></path></svg>
|
||||
|
Before Width: | Height: | Size: 1.3 KiB |
@@ -1 +0,0 @@
|
||||
<?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"><svg t="1543300132402" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2107" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M533.947184 38.36489h65.880106v88.119185c117.859409 0.660894 235.60867-1.211639 353.35793 0.660894 25.102953-2.533427 44.81962 16.962943 42.506492 42.07691 1.872533 216.993492-0.440596 434.097133 1.112505 651.090626-1.112505 22.250094 2.191965 46.923466-10.695466 66.640133-16.081751 11.455494-36.899909 10.023557-55.625236 10.904749-110.25913-0.550745-220.408111-0.330447-330.656225-0.330447v88.119185h-68.843113c-167.657764-30.621417-335.745108-58.709407-503.722304-88.119185-0.110149-256.977572 0-513.955144 0-770.822567 168.858388-29.519927 337.826924-58.268811 506.685311-88.339483z" fill="#2A5699" p-id="2108"></path><path d="M599.816275 159.528769h363.491637v704.953477h-363.491637v-88.119185h286.38735v-44.059592h-286.38735v-55.07449h286.38735v-44.059593h-286.38735v-55.07449h286.38735v-44.059592h-286.38735v-55.074491h286.38735v-44.059592h-286.38735v-55.074491h286.38735v-44.059592h-286.38735v-55.07449h286.38735v-44.059593h-286.38735v-77.104286zM254.829667 354.162018c20.928306-1.211639 41.856613-2.092831 62.784919-3.19432 14.649814 74.350562 29.619061 148.590975 45.491529 222.61109 12.446835-76.443393 26.215457-152.666487 39.543484-228.999731 22.029796-0.771043 44.059592-1.982682 65.97924-3.30447-24.89367 106.734362-46.703168 214.349917-73.909966 320.423385-18.39488 9.582961-45.932125-0.440596-67.741623 1.10149-14.649814-72.90761-31.722906-145.38564-44.819621-218.645727-12.898446 71.156242-29.641091 141.651589-44.390039 212.367235a4187.754101 4187.754101 0 0 1-63.666111-3.866229c-18.284731-96.931103-39.763782-193.190297-56.836874-290.341698 18.835476-0.881192 37.792115-1.652235 56.627591-2.313129 11.33433 70.164901 24.221761 139.999355 34.146184 210.274404 15.508976-72.037433 31.37043-144.074867 46.791287-216.1123z" fill="#FFFFFF" p-id="2109"></path></svg>
|
||||
|
Before Width: | Height: | Size: 2.1 KiB |
@@ -1 +0,0 @@
|
||||
<?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"><svg t="1514189511483" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="6709" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M676.297143 0H145.609143C130.834286 0 118.857143 11.977143 118.857143 35.218286V1005.714286c0 6.308571 11.977143 18.285714 26.752 18.285714h732.781714c14.774857 0 26.752-11.977143 26.752-18.285714V237.312c0-12.726857-1.700571-16.822857-4.699428-19.84L687.670857 4.699429A16.164571 16.164571 0 0 0 676.297143 0z" fill="#E9E9E0" p-id="6710"></path><path d="M685.714286 2.761143V219.428571h216.667428z" fill="#D9D7CA" p-id="6711"></path><path d="M878.390857 1024H145.609143A26.752 26.752 0 0 1 118.857143 997.248V713.142857h786.285714v284.105143c0 14.774857-11.977143 26.752-26.752 26.752z" fill="#C8BDB8" p-id="6712"></path><path d="M338.285714 859.428571m-54.857143 0a54.857143 54.857143 0 1 0 109.714286 0 54.857143 54.857143 0 1 0-109.714286 0Z" fill="#FFFFFF" p-id="6713"></path><path d="M521.142857 859.428571m-54.857143 0a54.857143 54.857143 0 1 0 109.714286 0 54.857143 54.857143 0 1 0-109.714286 0Z" fill="#FFFFFF" p-id="6714"></path><path d="M704 859.428571m-54.857143 0a54.857143 54.857143 0 1 0 109.714286 0 54.857143 54.857143 0 1 0-109.714286 0Z" fill="#FFFFFF" p-id="6715"></path></svg>
|
||||
|
Before Width: | Height: | Size: 1.4 KiB |
@@ -1 +0,0 @@
|
||||
<?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"><svg t="1514189634329" class="icon" style="" viewBox="0 0 1219 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="10648" xmlns:xlink="http://www.w3.org/1999/xlink" width="238.0859375" height="200"><defs><style type="text/css"></style></defs><path d="M1197.787429 327.192381a19.504762 19.504762 0 0 1 19.553523 19.407238v614.156191c0 34.913524-28.574476 63.24419-63.878095 63.24419H63.878095C28.623238 1024 0 995.718095 0 960.75581V346.599619a19.504762 19.504762 0 0 1 19.602286-19.358476h1178.185143z m-66.80381-213.089524C1179.550476 114.102857 1219.047619 153.209905 1219.047619 201.386667v80.213333H1.657905V88.259048C1.657905 39.497143 41.593905 0 90.794667 0h290.864762c17.408 0 33.987048 7.655619 45.104761 20.967619l78.214096 93.135238h626.005333z" fill="#23B7E5" p-id="10649"></path></svg>
|
||||
|
Before Width: | Height: | Size: 943 B |
@@ -1 +0,0 @@
|
||||
<?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"><svg t="1514190539077" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="14917" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M128 0h597.3l227.6 227.9v739.2c0 31.4-25.5 56.9-56.9 56.9H128c-31.4 0-56.9-25.5-56.9-56.9V56.9C71.1 25.5 96.6 0 128 0z" fill="#13BE93" p-id="14918"></path><path d="M630.5 1024H128c-25.7 0-47.4-17-54.4-40.4l218.1-218.1c22.2-22.2 58.2-22.2 80.5 0L630.5 1024z" fill="#6BD8BD" p-id="14919"></path><path d="M952.9 858v109.1c0 31.4-25.5 56.9-56.9 56.9H322.4l-4.7-4.7 358-358c22.2-22.2 58.2-22.2 80.5 0L952.9 858z" fill="#9CF9E2" p-id="14920"></path><path d="M725.3 0l227.6 227.6H782.2c-31.4 0-56.9-25.5-56.9-56.9V0z" fill="#69DCC0" p-id="14921"></path><path d="M327.1 483.6m-85.3 0a85.3 85.3 0 1 0 170.6 0 85.3 85.3 0 1 0-170.6 0Z" fill="#E9FFFA" p-id="14922"></path></svg>
|
||||
|
Before Width: | Height: | Size: 1.0 KiB |
@@ -1 +0,0 @@
|
||||
<?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"><svg t="1514284130163" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1551" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M915.114667 1024H108.885333V0h587.776v218.112H914.773333V1024z m-785.066667-20.821333h763.904V238.933333H675.84V20.821333H129.706667v982.357334z" fill="#F90E09" p-id="1552"></path><path d="M708.266667 10.581333L904.533333 206.848h-196.266666z" fill="#F90E09" p-id="1553"></path><path d="M282.965333 792.576c33.450667-23.210667 55.637333-57.344 76.8-91.136-30.378667 25.941333-59.050667 54.954667-76.8 91.136z m396.629334-169.642667c31.402667 15.018667 65.877333 31.061333 101.376 21.504-24.576-29.696-67.584-21.504-101.376-21.504z m-246.101334 23.210667c45.397333-16.725333 91.818667-29.696 138.922667-39.594667-30.378667-26.965333-55.978667-58.368-76.458667-93.525333-16.725333 46.08-38.912 90.112-62.464 133.12z m67.925334-243.370667c14.677333-37.546667 19.114667-83.285333-5.802667-117.418666-7.168 38.912-4.096 79.189333 5.802667 117.418666z m-45.397334-105.130666c4.096-24.917333 35.84-29.696 55.637334-22.186667 12.288 7.850667 18.432 22.869333 18.773333 37.205333 1.365333 44.032-6.485333 87.381333-12.629333 130.730667-3.413333 20.138667 8.874667 38.229333 17.749333 55.296 21.845333 40.277333 52.224 76.458667 92.16 99.669333 48.128-5.802667 98.645333-12.970667 145.749333 2.389334 35.157333 11.946667 26.965333 77.141333-11.264 77.824-53.589333 2.730667-102.058667-23.893333-150.186666-43.349334-66.218667 4.778667-130.730667 24.917333-194.218667 44.032-28.672 46.762667-54.613333 98.986667-101.034667 130.730667-23.210667 18.090667-76.458667 3.072-64.512-32.085333 20.138667-49.152 70.314667-76.117333 114.346667-100.693334 12.629333-6.485333 19.797333-18.773333 26.282667-31.061333 30.037333-57.685333 60.074667-115.370667 84.309333-175.786667-12.629333-56.661333-31.061333-114.688-21.162667-172.714666z" fill="#F90E09" p-id="1554"></path></svg>
|
||||
|
Before Width: | Height: | Size: 2.1 KiB |
@@ -1 +0,0 @@
|
||||
<?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"><svg t="1543300178225" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5733" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M537.372818 38.36489h62.454472v99.134083c117.738246 0.660894 235.60867-1.211639 353.236766 0.550745 25.334266-2.423278 45.172097 17.29339 42.627656 42.627655 1.872533 205.758296-0.440596 411.626741 1.10149 617.506201-1.10149 22.250094 2.20298 46.923466-10.574302 66.640134-16.081751 11.664777-36.999043 10.133706-55.834519 11.014898-110.148981-0.550745-220.297962-0.330447-330.557091-0.330447v110.148981h-68.523681c-167.856032-30.621417-336.06454-58.599258-504.041736-88.119185-0.110149-256.977572 0-513.955144 0-770.822567 169.970892-29.420793 339.93077-59.381316 510.110945-88.350498z" fill="#D24625" p-id="5734"></path><path d="M599.82729 170.543667h363.491636v671.908783h-363.491636v-88.119185h264.357554v-44.059592h-264.357554v-55.074491h264.357554v-44.059592h-264.247405c-0.110149-21.5892-0.110149-43.1784-0.231313-64.767601 43.630011 13.53731 93.307202 13.217878 132.299941-13.008594 42.18706-25.003819 64.216856-72.698327 67.851772-120.271672-48.366417-0.330447-96.710805-0.220298-144.956059-0.220298-0.121164-47.914807 0.550745-95.829613-0.991341-143.634271-18.075448 3.524767-36.128866 7.269833-54.083149 11.125047v-109.818534z" fill="#FFFFFF" p-id="5735"></path><path d="M677.041725 246.216017c76.553542 3.524767 140.880546 67.961921 144.956059 144.295165-48.366417 0.550745-96.710805 0.330447-145.066208 0.330447 0-48.245254-0.121164-96.490507 0.110149-144.625612z" fill="#D24625" p-id="5736"></path><path d="M203.940838 329.378497c59.810897 2.863874 132.288926-23.682031 181.855967 21.148605 47.485226 57.607917 34.917227 163.571236-35.467972 198.047867-25.003819 12.777282-53.642554 11.014898-80.849351 10.133706-0.110149 43.068251-0.220298 86.136503-0.110149 129.19374-21.820513-1.872533-43.74016-3.745065-65.538644-5.507449-0.980326-117.628097-1.211639-235.377357 0.110149-353.016469z" fill="#FFFFFF" p-id="5737"></path><path d="M269.380347 388.969096c21.699349-0.991341 48.575701-4.956704 63.214501 15.420857 12.567999 21.5892 11.89609 50.007637 1.442951 72.257732-12.567999 22.69069-40.986436 20.48771-62.895068 23.131286-2.313129-36.899909-2.092831-73.799817-1.762384-110.809875z" fill="#D24625" p-id="5738"></path></svg>
|
||||
|
Before Width: | Height: | Size: 2.5 KiB |
@@ -1 +0,0 @@
|
||||
<?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"><svg t="1545064197737" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="14227" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M759.725253 0H134.464646v1024h817.131314V191.870707z" fill="#02007A" p-id="14228"></path><path d="M72.40404 708.525253h687.838384v258.585858H72.40404z" fill="#230091" p-id="14229"></path><path d="M82.747475 718.868687h667.151515v237.89899H82.747475zM755.070707 5.171717l191.353535 191.353536h-191.353535z" fill="#FFFFFF" p-id="14230"></path><path d="M506.828283 791.272727v93.090909h25.858586c28.444444 0 41.373737-12.929293 41.373737-45.511111s-12.929293-47.579798-41.373737-47.579798h-25.858586z m-25.858586-25.858586h51.717172c42.408081 0 67.232323 29.99596 67.232323 74.989899S575.612121 910.222222 532.686869 910.222222H480.969697v-144.808081z m-132.39596 104.468687c1.034343 26.375758 22.755556 42.408081 55.337374 42.408081 34.650505 0 55.854545-17.066667 55.854546-43.959596 0-21.20404-12.412121-33.09899-40.856566-39.822222l-16.549495-3.620202c-17.583838-4.137374-24.824242-9.826263-24.824242-19.135354 0-11.894949 10.860606-19.652525 26.892929-19.652525s27.410101 7.757576 28.444444 21.204041h24.307071c-0.517172-24.824242-21.20404-41.890909-52.751515-41.89091S351.676768 782.480808 351.676768 807.822222c0 20.169697 12.412121 33.09899 38.787878 38.787879l18.618182 4.137374c18.10101 4.137374 25.341414 10.343434 25.341414 20.169697 0 11.894949-11.894949 20.169697-28.961616 20.169697s-30.513131-8.791919-32.064646-21.721212l-24.824243 0.517171zM258.585859 788.686869v53.785858h20.686868c18.10101 0 31.030303-9.826263 31.030303-26.892929s-12.412121-26.892929-31.030303-26.892929h-20.686868z m-25.858586-23.272728h56.888889c28.444444 0 46.545455 20.686869 46.545454 49.131314s-17.583838 49.131313-46.545454 49.131313h-31.030303v46.545454h-25.858586v-144.808081z" fill="#230091" p-id="14231"></path><path d="M415.806061 443.216162h-31.030303v137.567676H321.163636V196.525253h93.090909c91.022222 0 140.670707 35.684848 140.670708 122.052525 0.517172 103.434343-92.573737 124.638384-139.119192 124.638384z m-5.688889-192.905051c-6.206061 0-14.99798 0.517172-26.89293 1.551515V387.878788h36.202021C461.834343 387.878788 491.313131 366.157576 491.313131 312.888889c0-40.856566-32.064646-62.577778-81.195959-62.577778z m258.068687 337.19596c70.852525 0 96.711111-50.165657 96.711111-84.816162 0-54.820202-35.684848-67.749495-66.19798-87.40202-25.858586-17.066667-49.648485-23.272727-49.648485-40.856566 0-22.755556 15.515152-27.410101 36.20202-27.410101 25.858586 0 54.820202 2.068687 67.232323 16.032323V306.682828c-12.929293-10.343434-37.236364-13.446465-68.783838-13.446464-67.749495 0-93.608081 44.993939-93.608081 84.29899 0 50.682828 33.616162 65.680808 66.19798 83.781818 21.20404 11.894949 46.545455 20.686869 46.545455 44.476767 0 13.963636-8.791919 27.927273-37.753536 27.927273-26.892929 0-59.991919-10.343434-74.989899-23.789899v59.991919c13.446465 10.343434 40.339394 17.583838 78.09293 17.583839z" fill="#7AB7FF" p-id="14232"></path></svg>
|
||||
|
Before Width: | Height: | Size: 3.2 KiB |
@@ -1 +0,0 @@
|
||||
<?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"><svg t="1514189544355" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="8186" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M176 1024l672 0c26.464 0 48-21.536 48-48l0-672c0-0.544-0.256-0.992-0.288-1.504-0.064-0.736-0.256-1.376-0.416-2.08-0.544-2.272-1.472-4.32-2.88-6.112-0.224-0.288-0.192-0.64-0.416-0.928l-256-288c-0.096-0.096-0.224-0.096-0.32-0.192-1.92-2.048-4.352-3.456-7.136-4.288-0.608-0.192-1.152-0.256-1.792-0.352-0.928-0.16-1.792-0.544-2.752-0.544l-448 0c-26.464 0-48 21.536-48 48l0 928c0 26.464 21.536 48 48 48zM640 58.08l204.384 229.92-188.384 0c-7.04 0-16-13.44-16-24l0-205.92zM160 48c0-8.832 7.2-16 16-16l432 0 0 232c0 25.888 20.96 56 48 56l208 0 0 656c0 8.832-7.2 16-16 16l-672 0c-8.96 0-16-7.04-16-16l0-928zM304 448l416 0c8.832 0 16-7.168 16-16s-7.168-16-16-16l-416 0c-8.832 0-16 7.168-16 16s7.168 16 16 16zM304 576l416 0c8.832 0 16-7.168 16-16s-7.168-16-16-16l-416 0c-8.832 0-16 7.168-16 16s7.168 16 16 16zM304 320l192 0c8.832 0 16-7.168 16-16s-7.168-16-16-16l-192 0c-8.832 0-16 7.168-16 16s7.168 16 16 16zM304 704l416 0c8.832 0 16-7.168 16-16s-7.168-16-16-16l-416 0c-8.832 0-16 7.168-16 16s7.168 16 16 16zM304 832l416 0c8.832 0 16-7.168 16-16s-7.168-16-16-16l-416 0c-8.832 0-16 7.168-16 16s7.168 16 16 16z" p-id="8187"></path></svg>
|
||||
|
Before Width: | Height: | Size: 1.5 KiB |
@@ -1 +0,0 @@
|
||||
<?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"><svg t="1514189554639" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="8871" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M80 34.4h864v960H80z" fill="#8095FF" p-id="8872"></path><path d="M176 112m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8873"></path><path d="M176 272m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8874"></path><path d="M176 432m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8875"></path><path d="M176 592m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8876"></path><path d="M176 752m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8877"></path><path d="M176 912m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8878"></path><path d="M864 112m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8879"></path><path d="M864 272m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8880"></path><path d="M864 432m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8881"></path><path d="M864 592m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8882"></path><path d="M864 752m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8883"></path><path d="M864 912m-40 0a40 40 0 1 0 80 0 40 40 0 1 0-80 0Z" fill="#FFFFFF" p-id="8884"></path><path d="M648 508L436 362.4c-4.8-3.2-11.2-4-16.8-0.8-5.6 3.2-8.8 8.8-8.8 14.4v290.4c0 5.6 3.2 11.2 8.8 14.4 5.6 3.2 12 2.4 16.8-0.8L648 533.6c4.8-2.4 7.2-8 7.2-12.8 0-4.8-3.2-9.6-7.2-12.8z" fill="#FFFFFF" p-id="8885"></path></svg>
|
||||
|
Before Width: | Height: | Size: 1.8 KiB |
@@ -1 +0,0 @@
|
||||
<?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"><svg t="1543300142282" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2233" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M534.310676 38.36489h65.428495v88.119185c110.25913 0 220.507245 0.220298 330.766374-0.330447 18.615178 0.771043 39.113903-0.550745 55.305803 10.574302 11.345345 16.302049 10.023557 37.010058 10.783586 55.746399-0.550745 191.218631-0.319432 382.327112-0.220298 573.435594-0.550745 32.053353 2.974022 64.767601-3.745066 96.380358-4.405959 22.910988-31.943204 23.461733-50.338084 24.232776-114.114344 0.330447-228.338837-0.220298-342.56333 0v99.134083h-68.402517c-167.867047-30.511268-336.075555-58.709407-504.151885-88.119185v-770.932716c169.0897-29.420793 338.168386-58.389975 507.136922-88.240349z" fill="#207245" p-id="2234"></path><path d="M599.739171 159.528769h363.491636v693.938579h-363.491636v-66.089389h88.119184v-77.104286h-88.119184v-44.059592h88.119184v-77.104287h-88.119184v-44.059592h88.119184v-77.104287h-88.119184v-44.059592h88.119184v-77.104287h-88.119184v-44.059592h88.119184v-77.104287h-88.119184v-66.089388z" fill="#FFFFFF" p-id="2235"></path><path d="M731.917948 225.618157h154.208573v77.104287h-154.208573v-77.104287z" fill="#207245" p-id="2236"></path><path d="M353.44605 328.827752c24.89367-1.762384 49.897488-3.304469 74.901307-4.516108-29.409778 60.251492-58.929705 120.502985-88.879213 180.53418 30.29097 61.683429 61.242833 122.926263 91.632937 184.609692-26.545904-1.553101-52.98166-3.19432-79.527564-5.066854-18.725327-45.932125-41.526166-90.322164-54.964342-138.358134-14.969246 44.731501-36.349164 86.918561-53.521389 130.74684-24.122627-0.330447-48.256268-1.321788-72.367881-2.313129 28.308288-55.404937 55.625235-111.250471 84.814716-166.324961-24.783521-56.726725-52.001334-112.35196-77.544883-168.748238 24.232776-1.431937 48.454537-2.863874 72.698327-4.185662 16.412198 43.068251 34.366482 85.585758 47.925822 129.7555 14.506621-46.802302 36.216985-90.861894 54.832163-136.133126z" fill="#FFFFFF" p-id="2237"></path><path d="M731.917948 346.782036h154.208573v77.104287h-154.208573v-77.104287zM731.917948 467.945915h154.208573v77.104287h-154.208573v-77.104287zM731.917948 589.109794h154.208573v77.104287h-154.208573v-77.104287zM731.917948 710.273673h154.208573v77.104286h-154.208573v-77.104286z" fill="#207245" p-id="2238"></path></svg>
|
||||
|
Before Width: | Height: | Size: 2.5 KiB |
@@ -1 +0,0 @@
|
||||
<?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"><svg t="1544085034574" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1828" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M0 512A512 512 0 1 0 512 0 512 512 0 0 0 0 512" fill="#36D49F" p-id="1829"></path><path d="M450.37037 552.580741l-115.105185-87.798519-50.820741 39.822222L483.365926 701.62963C517.499259 616.296296 625.777778 449.232593 758.518519 330.714074L746.382222 303.407407a1264.071111 1264.071111 0 0 0-296.011852 249.173334" fill="#FFFFFF" p-id="1830"></path></svg>
|
||||
|
Before Width: | Height: | Size: 743 B |
@@ -1,147 +0,0 @@
|
||||
<template>
|
||||
|
||||
<div id="body">
|
||||
|
||||
<div>
|
||||
<SideNavigation/>
|
||||
<div id="page-wrapper" :class="{'show-drawer':$store.state.config.showDrawer}" @click="blankClick">
|
||||
|
||||
<div>
|
||||
|
||||
<div class="mb10">
|
||||
|
||||
<router-link to="/" v-if="$store.state.breadcrumbs && $store.state.breadcrumbs.length">
|
||||
<i class="fa fa-home f16"></i>
|
||||
</router-link>
|
||||
|
||||
<span v-for="b in $store.state.breadcrumbs">
|
||||
<span>/</span>
|
||||
<router-link v-if="(b.name || b.path) && b.name !== $store.state.route.name" :to="b">
|
||||
{{b.displayDirect?b.title:$t(b.title)}}
|
||||
</router-link>
|
||||
<span v-else>
|
||||
{{b.displayDirect?b.title:$t(b.title)}}
|
||||
</span>
|
||||
|
||||
</span>
|
||||
|
||||
</div>
|
||||
<router-view></router-view>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
<TopNavigation/>
|
||||
|
||||
<!--手机上不显示bottomNavigation,而采用弹出的形式-->
|
||||
<BottomNavigation/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import SideNavigation from './layout/SideNavigation.vue'
|
||||
import TopNavigation from './layout/TopNavigation.vue'
|
||||
import BottomNavigation from './layout/BottomNavigation.vue'
|
||||
import enquire from 'enquire.js/dist/enquire'
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
member: this.$store.state.member
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
config() {
|
||||
return this.$store.state.config
|
||||
}
|
||||
},
|
||||
components: {
|
||||
SideNavigation,
|
||||
TopNavigation,
|
||||
BottomNavigation
|
||||
},
|
||||
methods: {
|
||||
blankClick() {
|
||||
if (this.config.mobile) {
|
||||
if (this.config.showDrawer) {
|
||||
this.$store.state.config.showDrawer = false
|
||||
}
|
||||
}
|
||||
},
|
||||
listenResponsiveEvent() {
|
||||
let that = this
|
||||
enquire.register('(max-width: 768px)', {
|
||||
match: function () {
|
||||
that.$store.state.config.showDrawer = false
|
||||
that.$store.state.config.mobile = true
|
||||
},
|
||||
unmatch: function () {
|
||||
that.$store.state.config.showDrawer = true
|
||||
that.$store.state.config.mobile = false
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
created() {
|
||||
|
||||
},
|
||||
mounted() {
|
||||
let that = this
|
||||
this.$store.state.environment = 'backyard'
|
||||
this.listenResponsiveEvent()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" rel="stylesheet/less">
|
||||
@import "../assets/css/global/variables";
|
||||
|
||||
#page-wrapper {
|
||||
|
||||
position: fixed;
|
||||
left: @sidebar-width;
|
||||
top: @top-navigation-height;
|
||||
right: 0;
|
||||
bottom: @power-footer-height;
|
||||
overflow-y: auto;
|
||||
overflow-x: hidden;
|
||||
z-index: 10;
|
||||
|
||||
padding: 10px;
|
||||
|
||||
-webkit-transition: all 0.4s;
|
||||
-moz-transition: all 0.4s;
|
||||
-o-transition: all 0.4s;
|
||||
transition: all 0.4s;
|
||||
|
||||
background-color: #f3f3f4;
|
||||
|
||||
//大屏幕
|
||||
@media (min-width: @screen-sm-min) {
|
||||
left: @sidebar-width;
|
||||
}
|
||||
//小屏幕
|
||||
@media (max-width: @screen-xs-max) {
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
}
|
||||
|
||||
&.show-drawer {
|
||||
//大屏幕
|
||||
@media (min-width: @screen-sm-min) {
|
||||
left: @sidebar-width;
|
||||
}
|
||||
|
||||
//小屏幕
|
||||
@media (max-width: @screen-xs-max) {
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
||||
@@ -1,516 +0,0 @@
|
||||
<template>
|
||||
<div class="dashboard-index">
|
||||
|
||||
<div class="row mt20">
|
||||
<div class="col-lg-3 col-md-6 col-sm-12">
|
||||
<div class="text-block">
|
||||
<div class="upper">
|
||||
<div class="indicator">{{ $t('dashboard.totalInvokeNum') }}</div>
|
||||
<div class="amount">{{dashboard.totalInvokeNum}}</div>
|
||||
<div>
|
||||
<RatePanel :name="$t('dashboard.weekRate')" :standardValue="standardWeekInvokeNum"
|
||||
:compareValue="compareWeekInvokeNum"/>
|
||||
<RatePanel :name="$t('dashboard.dayRate')" :standardValue="standardDayInvokeNum"
|
||||
:compareValue="compareDayInvokeNum"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="lower">
|
||||
{{ $t('dashboard.yesterdayInvoke') }}:{{dashboard.invokeNum}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 col-md-6 col-sm-12">
|
||||
<div class="text-block">
|
||||
<div class="upper">
|
||||
<div class="indicator">{{ $t('dashboard.totalUV') }}</div>
|
||||
<div class="amount">{{dashboard.totalUv}}</div>
|
||||
<div>
|
||||
<RatePanel :name="$t('dashboard.weekRate')" :standardValue="standardWeekUv"
|
||||
:compareValue="compareWeekUv"/>
|
||||
<RatePanel :name="$t('dashboard.dayRate')" :standardValue="standardDayUv" :compareValue="compareDayUv"/>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="lower">
|
||||
{{ $t('dashboard.yesterdayUV') }}:{{dashboard.uv}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 col-md-6 col-sm-12">
|
||||
<div class="text-block">
|
||||
<div class="upper">
|
||||
<div class="indicator">{{ $t('dashboard.totalMatterNum') }}</div>
|
||||
<div class="amount">{{dashboard.totalMatterNum}}</div>
|
||||
<div>
|
||||
<RatePanel :name="$t('dashboard.weekRate')" :standardValue="standardWeekMatterNum"
|
||||
:compareValue="compareWeekMatterNum"/>
|
||||
<RatePanel :name="$t('dashboard.dayRate')" :standardValue="standardDayMatterNum"
|
||||
:compareValue="compareDayMatterNum"/>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="lower">
|
||||
{{ $t('dashboard.yesterdayMatterNum') }}:{{dashboard.matterNum}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-3 col-md-6 col-sm-12">
|
||||
<div class="text-block">
|
||||
<div class="upper">
|
||||
<div class="indicator">{{ $t('dashboard.totalFileSize') }}</div>
|
||||
<div class="amount">{{dashboard.totalFileSize | humanFileSize}}</div>
|
||||
<div>
|
||||
<RatePanel :name="$t('dashboard.weekRate')" :standardValue="standardWeekSize"
|
||||
:compareValue="compareWeekSize"/>
|
||||
<RatePanel :name="$t('dashboard.dayRate')" :standardValue="standardDaySize"
|
||||
:compareValue="compareDaySize"/>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="lower">
|
||||
{{ $t('dashboard.yesterdayMatterSize') }}:{{dashboard.fileSize | humanFileSize}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-12 col-md-12 col-sm-12">
|
||||
<div class="figure-block">
|
||||
<div class="title">
|
||||
{{ $t('dashboard.recentDayInvokeUV',[days]) }}
|
||||
</div>
|
||||
<figure>
|
||||
<ECharts
|
||||
ref="invokeListChart"
|
||||
theme="ovilia-green"
|
||||
:autoResize="true"
|
||||
:initOptions="initOptions"
|
||||
:options="invokeListOption"/>
|
||||
</figure>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-lg-6 col-md-6 col-sm-12">
|
||||
<div class="figure-block">
|
||||
<div class="title">
|
||||
{{ $t('dashboard.downloadMatterTop10') }}
|
||||
</div>
|
||||
<div class="list-rank">
|
||||
<ul>
|
||||
<li v-for="(matter,index) in matterPager.data">
|
||||
<span class="rank" :class="{top3:index<3}">{{index+1}}</span>
|
||||
<router-link class="name" :to="'/matter/detail/'+matter.uuid">{{matter.name}}</router-link>
|
||||
<span class="info">{{matter.times}}</span>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="col-lg-6 col-md-6 col-sm-12">
|
||||
<div class="figure-block">
|
||||
<div class="title">
|
||||
{{ $t('dashboard.activeIpTop10') }}
|
||||
</div>
|
||||
<div class="list-rank">
|
||||
<ul>
|
||||
<li v-for="(item,index) in activeIpTop10">
|
||||
<span class="rank" :class="{top3:index<3}">{{index+1}}</span>
|
||||
<span class="name" :to="'/'">{{item.ip}}</span>
|
||||
<span class="info">{{item.times}}</span>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
import ECharts from 'vue-echarts/components/ECharts'
|
||||
|
||||
import 'echarts/lib/chart/bar'
|
||||
import 'echarts/lib/chart/line'
|
||||
import 'echarts/lib/chart/pie'
|
||||
import 'echarts/lib/chart/map'
|
||||
import 'echarts/lib/chart/radar'
|
||||
import 'echarts/lib/chart/scatter'
|
||||
import 'echarts/lib/chart/effectScatter'
|
||||
import 'echarts/lib/component/tooltip'
|
||||
import 'echarts/lib/component/polar'
|
||||
import 'echarts/lib/component/geo'
|
||||
import 'echarts/lib/component/legend'
|
||||
import 'echarts/lib/component/title'
|
||||
import 'echarts/lib/component/visualMap'
|
||||
import 'echarts/lib/component/dataset'
|
||||
import 'echarts/map/js/world'
|
||||
import 'zrender/lib/svg/svg'
|
||||
|
||||
|
||||
import theme from "./theme"
|
||||
|
||||
import Dashboard from "../../common/model/dashboard/Dashboard";
|
||||
import Pager from "../../common/model/base/Pager";
|
||||
import {SortDirection} from "../../common/model/base/SortDirection";
|
||||
import {simpleDate} from "../../common/filter/time";
|
||||
import RatePanel from "./widget/RatePanel"
|
||||
import Matter from "../../common/model/matter/Matter";
|
||||
|
||||
//自定义主题
|
||||
ECharts.registerTheme('ovilia-green', theme)
|
||||
|
||||
export default {
|
||||
|
||||
data: function () {
|
||||
return {
|
||||
days: 15,
|
||||
//用来存放日期的,辅助x轴的生成
|
||||
dateStrings: [],
|
||||
//昨天的统计情况
|
||||
dashboard: new Dashboard(),
|
||||
//调用量周环比
|
||||
standardWeekInvokeNum: 0,
|
||||
compareWeekInvokeNum: 0,
|
||||
//调用量日环比
|
||||
standardDayInvokeNum: 0,
|
||||
compareDayInvokeNum: 0,
|
||||
//UV周环比
|
||||
standardWeekUv: 0,
|
||||
compareWeekUv: 0,
|
||||
//UV日环比
|
||||
standardDayUv: 0,
|
||||
compareDayUv: 0,
|
||||
//文件总数周环比
|
||||
standardWeekMatterNum: 0,
|
||||
compareWeekMatterNum: 0,
|
||||
//文件总数日环比
|
||||
standardDayMatterNum: 0,
|
||||
compareDayMatterNum: 0,
|
||||
//文件大小周环比
|
||||
standardWeekSize: 0,
|
||||
compareWeekSize: 0,
|
||||
//文件大小日环比
|
||||
standardDaySize: 0,
|
||||
compareDaySize: 0,
|
||||
|
||||
pager: new Pager(Dashboard, 15),
|
||||
matterPager: new Pager(Matter, 10),
|
||||
activeIpTop10: [],
|
||||
//图标加载中的样式
|
||||
loadingOption: {
|
||||
text: this.$t("dashboard.loading"),
|
||||
color: '#006699',
|
||||
maskColor: 'rgba(255, 255, 255, 0.4)'
|
||||
},
|
||||
initOptions: {
|
||||
renderer: 'canvas'
|
||||
},
|
||||
invokeListOption: {
|
||||
tooltip: {},
|
||||
legend: {
|
||||
data: ['PV', 'UV']
|
||||
},
|
||||
xAxis: {
|
||||
name: this.$t("dashboard.date"),
|
||||
data: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
|
||||
},
|
||||
yAxis: {
|
||||
name: this.$t("dashboard.num")
|
||||
},
|
||||
series: [{
|
||||
name: 'PV',
|
||||
type: 'bar',
|
||||
data: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
||||
}, {
|
||||
name: 'UV',
|
||||
type: 'line',
|
||||
data: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
||||
}]
|
||||
}
|
||||
}
|
||||
},
|
||||
components: {
|
||||
ECharts,
|
||||
RatePanel
|
||||
},
|
||||
methods: {
|
||||
updateDateStrings() {
|
||||
let that = this;
|
||||
//更新横坐标 从昨天开始倒推
|
||||
let arr = []
|
||||
for (let d = that.days; d >= 1; d--) {
|
||||
let thenDate = new Date((new Date()).getTime() - d * 24 * 60 * 60 * 1000)
|
||||
arr.push(simpleDate(thenDate))
|
||||
}
|
||||
that.dateStrings = arr
|
||||
},
|
||||
//获取15日调用分时数据
|
||||
refreshDashboardPager() {
|
||||
let that = this;
|
||||
|
||||
this.pager.setFilterValue("orderDt", SortDirection.DESC)
|
||||
|
||||
that.$refs.invokeListChart.showLoading()
|
||||
this.pager.httpFastPage(function (response) {
|
||||
|
||||
let list = that.pager.data
|
||||
|
||||
if (list.length > 0) {
|
||||
that.dashboard.render(list[list.length - 1])
|
||||
}
|
||||
|
||||
//数据转换成map,方便检索
|
||||
let map = {}
|
||||
for (let i = 0; i < list.length; i++) {
|
||||
map[list[i].dt] = list[i]
|
||||
}
|
||||
|
||||
let invokeNumData = []
|
||||
let uvData = []
|
||||
let matterNumData = []
|
||||
let fileSizeData = []
|
||||
for (let i = 0; i < that.days; i++) {
|
||||
invokeNumData.push(0)
|
||||
uvData.push(0)
|
||||
matterNumData.push(0)
|
||||
fileSizeData.push(0)
|
||||
}
|
||||
|
||||
//按照日期对应。
|
||||
for (let i = 0; i < that.dateStrings.length; i++) {
|
||||
let item = map[that.dateStrings[i]];
|
||||
if (item) {
|
||||
invokeNumData[i] = item.invokeNum
|
||||
uvData[i] = item.uv
|
||||
matterNumData[i] = item.matterNum
|
||||
fileSizeData[i] = item.fileSize
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
//同环比
|
||||
that.standardWeekInvokeNum = 0
|
||||
that.compareWeekInvokeNum = 0
|
||||
//调用量日环比
|
||||
that.standardDayInvokeNum = 0
|
||||
that.compareDayInvokeNum = 0
|
||||
//UV周环比
|
||||
that.standardWeekUv = 0
|
||||
that.compareWeekUv = 0
|
||||
//UV日环比
|
||||
that.standardDayUv = 0
|
||||
that.compareDayUv = 0
|
||||
|
||||
//文件总数周环比
|
||||
that.standardWeekMatterNum = 0
|
||||
that.compareWeekMatterNum = 0
|
||||
//文件总数日环比
|
||||
that.standardDayMatterNum = 0
|
||||
that.compareDayMatterNum = 0
|
||||
//文件大小周环比
|
||||
that.standardWeekSize = 0
|
||||
that.compareWeekSize = 0
|
||||
//文件大小日环比
|
||||
that.standardDaySize = 0
|
||||
that.compareDaySize = 0
|
||||
|
||||
for (let i = 0; i < that.days; i++) {
|
||||
if (i >= 1 && i <= 7) {
|
||||
that.standardWeekInvokeNum += invokeNumData[i]
|
||||
that.standardWeekUv += uvData[i]
|
||||
that.standardWeekMatterNum += matterNumData[i]
|
||||
that.standardWeekSize += fileSizeData[i]
|
||||
|
||||
} else if (i >= 8 && i <= 14) {
|
||||
that.compareWeekInvokeNum += invokeNumData[i]
|
||||
that.compareWeekUv += uvData[i]
|
||||
that.compareWeekMatterNum += matterNumData[i]
|
||||
that.compareWeekSize += fileSizeData[i]
|
||||
}
|
||||
if (i === 13) {
|
||||
that.standardDayInvokeNum = invokeNumData[i]
|
||||
that.standardDayUv = uvData[i]
|
||||
that.standardDayMatterNum = matterNumData[i]
|
||||
that.standardDaySize = fileSizeData[i]
|
||||
|
||||
}
|
||||
if (i === 14) {
|
||||
that.compareDayInvokeNum = invokeNumData[i]
|
||||
that.compareDayUv = uvData[i]
|
||||
that.compareDayMatterNum = matterNumData[i]
|
||||
that.compareDaySize = fileSizeData[i]
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
that.invokeListOption.xAxis.data = that.dateStrings.map((k) => k.substr(5))
|
||||
that.invokeListOption.series[0].data = invokeNumData
|
||||
that.invokeListOption.series[1].data = uvData
|
||||
|
||||
|
||||
that.$refs.invokeListChart.hideLoading()
|
||||
}, function () {
|
||||
|
||||
that.$refs.invokeListChart.hideLoading()
|
||||
})
|
||||
|
||||
},
|
||||
//获取下载前10的文件
|
||||
refreshMatterPager() {
|
||||
let that = this;
|
||||
that.matterPager.setFilterValue("orderTimes", SortDirection.DESC)
|
||||
that.matterPager.httpFastPage()
|
||||
},
|
||||
refreshActiveIpTop10() {
|
||||
let that = this
|
||||
that.dashboard.httpActiveIpTop10(function (response) {
|
||||
that.activeIpTop10 = response.data.data
|
||||
})
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
let that = this;
|
||||
this.updateDateStrings()
|
||||
this.refreshDashboardPager()
|
||||
this.refreshMatterPager()
|
||||
this.refreshActiveIpTop10()
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<style lang="less" rel="stylesheet/less">
|
||||
@import "../../assets/css/global/variables";
|
||||
|
||||
.dashboard-index {
|
||||
|
||||
figure {
|
||||
.echarts {
|
||||
width: 100%;
|
||||
height: 300px;
|
||||
}
|
||||
}
|
||||
|
||||
.text-block {
|
||||
background-color: white;
|
||||
box-shadow: 0 0 5px rgba(0, 0, 0, .2);
|
||||
border-radius: 5px;
|
||||
padding: 20px 15px 10px 15px;
|
||||
margin-bottom: 30px;
|
||||
|
||||
.upper {
|
||||
|
||||
.indicator {
|
||||
color: rgba(0, 0, 0, .45);
|
||||
font-size: 14px;
|
||||
line-height: 22px;
|
||||
height: 22px;
|
||||
}
|
||||
|
||||
.amount {
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
word-break: break-all;
|
||||
white-space: nowrap;
|
||||
color: rgba(0, 0, 0, .85);
|
||||
margin-top: 4px;
|
||||
margin-bottom: 20px;
|
||||
font-size: 30px;
|
||||
line-height: 38px;
|
||||
height: 38px;
|
||||
|
||||
}
|
||||
|
||||
.rate {
|
||||
margin-right: 15px;
|
||||
}
|
||||
}
|
||||
|
||||
.lower {
|
||||
margin-top: 10px;
|
||||
padding-top: 10px;
|
||||
border-top: 1px solid #eee;
|
||||
font-size: 14px;
|
||||
}
|
||||
}
|
||||
|
||||
.figure-block {
|
||||
background-color: white;
|
||||
box-shadow: 0 0 5px rgba(0, 0, 0, .2);
|
||||
border-radius: 5px;
|
||||
margin-bottom: 20px;
|
||||
|
||||
.title {
|
||||
font-size: 18px;
|
||||
padding: 15px 20px;
|
||||
color: black;
|
||||
margin-bottom: 10px;
|
||||
border-bottom: 1px solid #eee;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.list-rank {
|
||||
padding: 0 20px 10px 20px;
|
||||
|
||||
ul {
|
||||
list-style: none;
|
||||
padding: 0;
|
||||
|
||||
li {
|
||||
zoom: 1;
|
||||
margin-top: 16px;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
|
||||
.rank {
|
||||
border-radius: 20px;
|
||||
display: inline-block;
|
||||
font-size: 12px;
|
||||
font-weight: 600;
|
||||
margin-right: 16px;
|
||||
height: 20px;
|
||||
line-height: 20px;
|
||||
width: 20px;
|
||||
text-align: center;
|
||||
margin-top: 1.5px;
|
||||
|
||||
background-color: #f5f5f5;
|
||||
|
||||
&.top3 {
|
||||
background-color: #314659;
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
.name {
|
||||
|
||||
color: rgba(0, 0, 0, .65);
|
||||
font-size: 14px;
|
||||
line-height: 22px;
|
||||
flex: 1 1;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
margin-right: 8px;
|
||||
|
||||
&:hover {
|
||||
color: @brand-primary;
|
||||
}
|
||||
}
|
||||
|
||||
.info {
|
||||
color: rgba(0, 0, 0, .65);
|
||||
font-size: 14px;
|
||||
line-height: 22px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -1,474 +0,0 @@
|
||||
{
|
||||
"color": [
|
||||
"#006699",
|
||||
"#1ab394",
|
||||
"#7bd9a5"
|
||||
],
|
||||
"backgroundColor": "rgba(0,0,0,0)",
|
||||
"textStyle": {},
|
||||
"title": {
|
||||
"textStyle": {
|
||||
"color": "#666666"
|
||||
},
|
||||
"subtextStyle": {
|
||||
"color": "#999999"
|
||||
}
|
||||
},
|
||||
"line": {
|
||||
"itemStyle": {
|
||||
"normal": {
|
||||
"borderWidth": "2"
|
||||
}
|
||||
},
|
||||
"lineStyle": {
|
||||
"normal": {
|
||||
"width": "3"
|
||||
}
|
||||
},
|
||||
"symbolSize": "10",
|
||||
"symbol": "emptyCircle",
|
||||
"smooth": true
|
||||
},
|
||||
"radar": {
|
||||
"itemStyle": {
|
||||
"normal": {
|
||||
"borderWidth": "2"
|
||||
}
|
||||
},
|
||||
"lineStyle": {
|
||||
"normal": {
|
||||
"width": "3"
|
||||
}
|
||||
},
|
||||
"symbolSize": "10",
|
||||
"symbol": "emptyCircle",
|
||||
"smooth": true
|
||||
},
|
||||
"bar": {
|
||||
"itemStyle": {
|
||||
"normal": {
|
||||
"barBorderWidth": "0",
|
||||
"barBorderColor": "#444444"
|
||||
},
|
||||
"emphasis": {
|
||||
"barBorderWidth": "0",
|
||||
"barBorderColor": "#444444"
|
||||
}
|
||||
}
|
||||
},
|
||||
"pie": {
|
||||
"itemStyle": {
|
||||
"normal": {
|
||||
"borderWidth": "0",
|
||||
"borderColor": "#444444"
|
||||
},
|
||||
"emphasis": {
|
||||
"borderWidth": "0",
|
||||
"borderColor": "#444444"
|
||||
}
|
||||
}
|
||||
},
|
||||
"scatter": {
|
||||
"itemStyle": {
|
||||
"normal": {
|
||||
"borderWidth": "0",
|
||||
"borderColor": "#444444"
|
||||
},
|
||||
"emphasis": {
|
||||
"borderWidth": "0",
|
||||
"borderColor": "#444444"
|
||||
}
|
||||
}
|
||||
},
|
||||
"boxplot": {
|
||||
"itemStyle": {
|
||||
"normal": {
|
||||
"borderWidth": "0",
|
||||
"borderColor": "#444444"
|
||||
},
|
||||
"emphasis": {
|
||||
"borderWidth": "0",
|
||||
"borderColor": "#444444"
|
||||
}
|
||||
}
|
||||
},
|
||||
"parallel": {
|
||||
"itemStyle": {
|
||||
"normal": {
|
||||
"borderWidth": "0",
|
||||
"borderColor": "#444444"
|
||||
},
|
||||
"emphasis": {
|
||||
"borderWidth": "0",
|
||||
"borderColor": "#444444"
|
||||
}
|
||||
}
|
||||
},
|
||||
"sankey": {
|
||||
"itemStyle": {
|
||||
"normal": {
|
||||
"borderWidth": "0",
|
||||
"borderColor": "#444444"
|
||||
},
|
||||
"emphasis": {
|
||||
"borderWidth": "0",
|
||||
"borderColor": "#444444"
|
||||
}
|
||||
}
|
||||
},
|
||||
"funnel": {
|
||||
"itemStyle": {
|
||||
"normal": {
|
||||
"borderWidth": "0",
|
||||
"borderColor": "#444444"
|
||||
},
|
||||
"emphasis": {
|
||||
"borderWidth": "0",
|
||||
"borderColor": "#444444"
|
||||
}
|
||||
}
|
||||
},
|
||||
"gauge": {
|
||||
"itemStyle": {
|
||||
"normal": {
|
||||
"borderWidth": "0",
|
||||
"borderColor": "#444444"
|
||||
},
|
||||
"emphasis": {
|
||||
"borderWidth": "0",
|
||||
"borderColor": "#444444"
|
||||
}
|
||||
}
|
||||
},
|
||||
"candlestick": {
|
||||
"itemStyle": {
|
||||
"normal": {
|
||||
"color": "#d0648a",
|
||||
"color0": "#ffffff",
|
||||
"borderColor": "#d0648a",
|
||||
"borderColor0": "#22c3aa",
|
||||
"borderWidth": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"graph": {
|
||||
"itemStyle": {
|
||||
"normal": {
|
||||
"borderWidth": "0",
|
||||
"borderColor": "#444444"
|
||||
}
|
||||
},
|
||||
"lineStyle": {
|
||||
"normal": {
|
||||
"width": 1,
|
||||
"color": "#aaa"
|
||||
}
|
||||
},
|
||||
"symbolSize": "10",
|
||||
"symbol": "emptyCircle",
|
||||
"smooth": true,
|
||||
"color": [
|
||||
"#4ea397",
|
||||
"#22c3aa",
|
||||
"#7bd9a5"
|
||||
],
|
||||
"label": {
|
||||
"normal": {
|
||||
"textStyle": {
|
||||
"color": "#ffffff"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"map": {
|
||||
"itemStyle": {
|
||||
"normal": {
|
||||
"areaColor": "#eeeeee",
|
||||
"borderColor": "#999999",
|
||||
"borderWidth": "0.5"
|
||||
},
|
||||
"emphasis": {
|
||||
"areaColor": "rgba(34,195,170,0.25)",
|
||||
"borderColor": "#22c3aa",
|
||||
"borderWidth": "0.5"
|
||||
}
|
||||
},
|
||||
"label": {
|
||||
"normal": {
|
||||
"textStyle": {
|
||||
"color": "#28544e"
|
||||
}
|
||||
},
|
||||
"emphasis": {
|
||||
"textStyle": {
|
||||
"color": "rgb(52,158,142)"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"geo": {
|
||||
"itemStyle": {
|
||||
"normal": {
|
||||
"areaColor": "#eeeeee",
|
||||
"borderColor": "#999999",
|
||||
"borderWidth": "0.5"
|
||||
},
|
||||
"emphasis": {
|
||||
"areaColor": "rgba(34,195,170,0.25)",
|
||||
"borderColor": "#22c3aa",
|
||||
"borderWidth": "0.5"
|
||||
}
|
||||
},
|
||||
"label": {
|
||||
"normal": {
|
||||
"textStyle": {
|
||||
"color": "#28544e"
|
||||
}
|
||||
},
|
||||
"emphasis": {
|
||||
"textStyle": {
|
||||
"color": "rgb(52,158,142)"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"categoryAxis": {
|
||||
"axisLine": {
|
||||
"show": true,
|
||||
"lineStyle": {
|
||||
"color": "#cccccc"
|
||||
}
|
||||
},
|
||||
"axisTick": {
|
||||
"show": false,
|
||||
"lineStyle": {
|
||||
"color": "#333333"
|
||||
}
|
||||
},
|
||||
"axisLabel": {
|
||||
"show": true,
|
||||
"textStyle": {
|
||||
"color": "#999999"
|
||||
}
|
||||
},
|
||||
"splitLine": {
|
||||
"show": true,
|
||||
"lineStyle": {
|
||||
"color": [
|
||||
"#eeeeee"
|
||||
]
|
||||
}
|
||||
},
|
||||
"splitArea": {
|
||||
"show": false,
|
||||
"areaStyle": {
|
||||
"color": [
|
||||
"rgba(250,250,250,0.3)",
|
||||
"rgba(200,200,200,0.3)"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"valueAxis": {
|
||||
"axisLine": {
|
||||
"show": true,
|
||||
"lineStyle": {
|
||||
"color": "#cccccc"
|
||||
}
|
||||
},
|
||||
"axisTick": {
|
||||
"show": false,
|
||||
"lineStyle": {
|
||||
"color": "#333333"
|
||||
}
|
||||
},
|
||||
"axisLabel": {
|
||||
"show": true,
|
||||
"textStyle": {
|
||||
"color": "#999999"
|
||||
}
|
||||
},
|
||||
"splitLine": {
|
||||
"show": true,
|
||||
"lineStyle": {
|
||||
"color": [
|
||||
"#eeeeee"
|
||||
]
|
||||
}
|
||||
},
|
||||
"splitArea": {
|
||||
"show": false,
|
||||
"areaStyle": {
|
||||
"color": [
|
||||
"rgba(250,250,250,0.3)",
|
||||
"rgba(200,200,200,0.3)"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"logAxis": {
|
||||
"axisLine": {
|
||||
"show": true,
|
||||
"lineStyle": {
|
||||
"color": "#cccccc"
|
||||
}
|
||||
},
|
||||
"axisTick": {
|
||||
"show": false,
|
||||
"lineStyle": {
|
||||
"color": "#333333"
|
||||
}
|
||||
},
|
||||
"axisLabel": {
|
||||
"show": true,
|
||||
"textStyle": {
|
||||
"color": "#999999"
|
||||
}
|
||||
},
|
||||
"splitLine": {
|
||||
"show": true,
|
||||
"lineStyle": {
|
||||
"color": [
|
||||
"#eeeeee"
|
||||
]
|
||||
}
|
||||
},
|
||||
"splitArea": {
|
||||
"show": false,
|
||||
"areaStyle": {
|
||||
"color": [
|
||||
"rgba(250,250,250,0.3)",
|
||||
"rgba(200,200,200,0.3)"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"timeAxis": {
|
||||
"axisLine": {
|
||||
"show": true,
|
||||
"lineStyle": {
|
||||
"color": "#cccccc"
|
||||
}
|
||||
},
|
||||
"axisTick": {
|
||||
"show": false,
|
||||
"lineStyle": {
|
||||
"color": "#333333"
|
||||
}
|
||||
},
|
||||
"axisLabel": {
|
||||
"show": true,
|
||||
"textStyle": {
|
||||
"color": "#999999"
|
||||
}
|
||||
},
|
||||
"splitLine": {
|
||||
"show": true,
|
||||
"lineStyle": {
|
||||
"color": [
|
||||
"#eeeeee"
|
||||
]
|
||||
}
|
||||
},
|
||||
"splitArea": {
|
||||
"show": false,
|
||||
"areaStyle": {
|
||||
"color": [
|
||||
"rgba(250,250,250,0.3)",
|
||||
"rgba(200,200,200,0.3)"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"toolbox": {
|
||||
"iconStyle": {
|
||||
"normal": {
|
||||
"borderColor": "#aaaaaa"
|
||||
},
|
||||
"emphasis": {
|
||||
"borderColor": "#666"
|
||||
}
|
||||
}
|
||||
},
|
||||
"legend": {
|
||||
"textStyle": {
|
||||
"color": "#999999"
|
||||
}
|
||||
},
|
||||
"tooltip": {
|
||||
"axisPointer": {
|
||||
"lineStyle": {
|
||||
"color": "#ccc",
|
||||
"width": 1
|
||||
},
|
||||
"crossStyle": {
|
||||
"color": "#ccc",
|
||||
"width": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"timeline": {
|
||||
"lineStyle": {
|
||||
"color": "#349e8e",
|
||||
"width": 1
|
||||
},
|
||||
"itemStyle": {
|
||||
"normal": {
|
||||
"color": "#349e8e",
|
||||
"borderWidth": "1"
|
||||
},
|
||||
"emphasis": {
|
||||
"color": "#57e8d2"
|
||||
}
|
||||
},
|
||||
"controlStyle": {
|
||||
"normal": {
|
||||
"color": "#349e8e",
|
||||
"borderColor": "#349e8e",
|
||||
"borderWidth": "0"
|
||||
}
|
||||
},
|
||||
"checkpointStyle": {
|
||||
"color": "#22c3aa",
|
||||
"borderColor": "rgba(34,195,170,0.25)"
|
||||
},
|
||||
"label": {
|
||||
"normal": {
|
||||
"textStyle": {
|
||||
"color": "#349e8e"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"visualMap": {
|
||||
"color": [
|
||||
"#d0648a",
|
||||
"#22c3aa",
|
||||
"rgba(123,217,165,0.2)"
|
||||
]
|
||||
},
|
||||
"dataZoom": {
|
||||
"backgroundColor": "#fff",
|
||||
"dataBackgroundColor": "#dedede",
|
||||
"fillerColor": "rgba(34,195,170,0.25)",
|
||||
"handleColor": "#dddddd",
|
||||
"handleSize": "100%",
|
||||
"textStyle": {
|
||||
"color": "#999"
|
||||
}
|
||||
},
|
||||
"markPoint": {
|
||||
"label": {
|
||||
"normal": {
|
||||
"textStyle": {
|
||||
"color": "#ffffff"
|
||||
}
|
||||
},
|
||||
"emphasis": {
|
||||
"textStyle": {
|
||||
"color": "#ffffff"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,79 +0,0 @@
|
||||
<template>
|
||||
<span class="widget-rate-panel">
|
||||
<span class="name">{{name}}</span>
|
||||
|
||||
<span class="infinite" v-if="infinite">∞</span>
|
||||
<span class="no-data" v-else-if="noData"> - </span>
|
||||
<span v-else>{{value>0?'+':''}}{{value}}%</span>
|
||||
|
||||
<i class="fa fa-arrow-down text-success" v-if="!noData && value<0"></i>
|
||||
<i class="fa fa-arrow-up text-danger" v-if="!noData && (infinite || value>=0)"></i>
|
||||
</span>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
|
||||
export default {
|
||||
data: function () {
|
||||
return {}
|
||||
},
|
||||
computed: {
|
||||
noData() {
|
||||
return this.standardValue === 0 && this.compareValue === 0
|
||||
},
|
||||
infinite() {
|
||||
return this.standardValue === 0 && this.compareValue > 0
|
||||
},
|
||||
value() {
|
||||
if (this.standardValue === 0) {
|
||||
if (this.compareValue === 0) {
|
||||
return 0;
|
||||
} else {
|
||||
return 100;
|
||||
}
|
||||
} else {
|
||||
let v1 = this.compareValue - this.standardValue
|
||||
let v2 = v1 / this.standardValue
|
||||
return (v2 * 100).toFixed(0)
|
||||
}
|
||||
}
|
||||
},
|
||||
props: {
|
||||
name: {
|
||||
type: String,
|
||||
required: false,
|
||||
'default': ""
|
||||
},
|
||||
standardValue: {
|
||||
type: Number,
|
||||
required: true,
|
||||
'default': 0
|
||||
},
|
||||
compareValue: {
|
||||
type: Number,
|
||||
required: true,
|
||||
'default': 0
|
||||
}
|
||||
},
|
||||
components: {},
|
||||
methods: {},
|
||||
mounted() {
|
||||
let that = this;
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<style lang="less" rel="stylesheet/less">
|
||||
@import "../../../assets/css/global/variables";
|
||||
|
||||
.widget-rate-panel {
|
||||
margin-right: 5px;
|
||||
.infinite {
|
||||
|
||||
}
|
||||
.no-data {
|
||||
}
|
||||
|
||||
}
|
||||
</style>
|
||||
@@ -1,167 +0,0 @@
|
||||
<template>
|
||||
<div class="widget-image-cache-list animated fadeIn">
|
||||
<div class="row">
|
||||
<div class="col-md-12 text-right pb10">
|
||||
<button class="btn btn-primary btn-sm mr5" v-if="selectedImageCaches.length" @click.stop.prevent="deleteBatch">
|
||||
<i class="fa fa-trash"></i>
|
||||
{{ $t('delete') }}
|
||||
</button>
|
||||
<button class="btn btn-primary btn-sm mr5" v-if="selectedImageCaches.length !== pager.data.length"
|
||||
@click.stop.prevent="checkAll">
|
||||
<i class="fa fa-check-square"></i>
|
||||
{{ $t('selectAll') }}
|
||||
</button>
|
||||
<button class="btn btn-primary btn-sm mr5"
|
||||
v-if="pager.data.length && selectedImageCaches.length === pager.data.length"
|
||||
@click.stop.prevent="checkNone">
|
||||
<i class="fa fa-square-o"></i>
|
||||
{{ $t('cancel') }}
|
||||
</button>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="col-md-12" v-for="(imageCache,index) in pager.data">
|
||||
<ImageCachePanel
|
||||
:imageCache="imageCache"
|
||||
@deleteSuccess="refresh"
|
||||
@checkImageCache="checkImageCache"
|
||||
@previewImageCache="previewImageCache"
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div class="col-md-12 mt20">
|
||||
<NbPager :pager="pager" :callback="refresh"></NbPager>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import NbFilter from '../../../../common/widget/filter/NbFilter.vue'
|
||||
import NbPager from '../../../../common/widget/NbPager.vue'
|
||||
import Pager from '../../../../common/model/base/Pager'
|
||||
import ImageCache from "../../../../common/model/image/cache/ImageCache";
|
||||
import ImageCachePanel from "./ImageCachePanel"
|
||||
import {MessageBox, Message} from "element-ui"
|
||||
|
||||
export default {
|
||||
|
||||
data() {
|
||||
return {
|
||||
pager: new Pager(ImageCache, Pager.MAX_PAGE_SIZE),
|
||||
user: this.$store.state.user,
|
||||
selectedImageCaches: []
|
||||
}
|
||||
},
|
||||
props: {
|
||||
initFilter: {
|
||||
type: Object,
|
||||
required: false
|
||||
}
|
||||
},
|
||||
components: {
|
||||
NbFilter,
|
||||
NbPager,
|
||||
ImageCachePanel
|
||||
},
|
||||
methods: {
|
||||
search() {
|
||||
this.pager.page = 0
|
||||
this.refresh()
|
||||
},
|
||||
refresh() {
|
||||
|
||||
if (this.initFilter) {
|
||||
for (let key in this.initFilter) {
|
||||
if (this.initFilter.hasOwnProperty(key)) {
|
||||
this.pager.setFilterValue(key, this.initFilter[key]);
|
||||
}
|
||||
}
|
||||
}
|
||||
this.pager.httpFastPage()
|
||||
},
|
||||
checkImageCache(imageCache) {
|
||||
|
||||
let that = this
|
||||
//统计所有的勾选
|
||||
this.selectedImageCaches.splice(0, this.selectedImageCaches.length)
|
||||
this.pager.data.forEach(function (imageCache, index) {
|
||||
if (imageCache.check) {
|
||||
that.selectedImageCaches.push(imageCache)
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
},
|
||||
//全选
|
||||
checkAll() {
|
||||
this.pager.data.forEach(function (i, index) {
|
||||
i.check = true
|
||||
})
|
||||
this.checkImageCache()
|
||||
},
|
||||
//取消全选
|
||||
checkNone() {
|
||||
this.pager.data.forEach(function (i, index) {
|
||||
i.check = false
|
||||
})
|
||||
|
||||
this.checkImageCache()
|
||||
},
|
||||
previewImageCache(imageCache) {
|
||||
|
||||
let that = this;
|
||||
|
||||
//从matter开始预览图片
|
||||
let imageArray = []
|
||||
let startIndex = -1;
|
||||
this.pager.data.forEach(function (item, index) {
|
||||
imageArray.push(item.getResizeUrl())
|
||||
if (item.uuid === imageCache.uuid) {
|
||||
startIndex = imageArray.length - 1
|
||||
}
|
||||
})
|
||||
|
||||
that.$photoSwipePlugin.showPhotos(imageArray, startIndex)
|
||||
|
||||
},
|
||||
deleteBatch() {
|
||||
let that = this
|
||||
MessageBox.confirm(that.$t("actionCanNotRevertConfirm"), that.$t("prompt"), {
|
||||
confirmButtonText: that.$t("confirm"),
|
||||
cancelButtonText: that.$t("cancel"),
|
||||
type: 'warning',
|
||||
callback: function (action, instance) {
|
||||
if (action === 'confirm') {
|
||||
let uuids = ""
|
||||
that.selectedImageCaches.forEach(function (item, index) {
|
||||
if (index === 0) {
|
||||
uuids = item.uuid
|
||||
} else {
|
||||
uuids = uuids + "," + item.uuid
|
||||
}
|
||||
})
|
||||
let imageCache = new ImageCache()
|
||||
imageCache.httpDeleteBatch(uuids, function (response) {
|
||||
Message.success(that.$t("operationSuccess"))
|
||||
that.refresh()
|
||||
})
|
||||
}
|
||||
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.pager.enableHistory()
|
||||
this.refresh()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" rel="stylesheet/less">
|
||||
.widget-image-cache-list {
|
||||
|
||||
}
|
||||
</style>
|
||||
@@ -1,273 +0,0 @@
|
||||
<template>
|
||||
<div class="widget-image-cache-panel">
|
||||
|
||||
<div @click.stop.prevent="clickRow">
|
||||
|
||||
<div class="media">
|
||||
|
||||
<div class="pull-left">
|
||||
<div class="left-part">
|
||||
<span class="basic-span">
|
||||
<NbCheckbox v-model="imageCache.check"/>
|
||||
</span>
|
||||
<span class="basic-span">
|
||||
<img class="image-cache-icon" :src="handleImageUrl(imageCache.getOriginUrl(),false,100,100)"/>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--在大屏下的操作栏-->
|
||||
<div class="pull-right hidden-sm hidden-xs">
|
||||
<div class="right-part" v-if="imageCache.uuid">
|
||||
|
||||
<span class="image-cache-operation">
|
||||
<i class="fa fa-trash btn-action text-danger" :title="$t('delete')" @click.stop.prevent="deleteImageCache"></i>
|
||||
</span>
|
||||
<span class="image-cache-size">
|
||||
{{imageCache.size | humanFileSize}}
|
||||
</span>
|
||||
|
||||
<span class="image-cache-date">
|
||||
{{imageCache.updateTime | simpleDateHourMinute}}
|
||||
</span>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--在小屏幕下的操作栏-->
|
||||
<div class="pull-right hidden-lg hidden-md">
|
||||
<span class="more-btn" @click.stop.prevent="showMore = !showMore">
|
||||
<i class="fa fa-ellipsis-h btn-action" :title="$t('showMore')"></i>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="media-body">
|
||||
|
||||
<div class="middle-part">
|
||||
|
||||
<span class="image-cache-name">
|
||||
{{imageCache.name}}
|
||||
</span>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<NbExpanding>
|
||||
<div class="hidden-lg hidden-md more-panel" v-if="showMore">
|
||||
<div class="cell-btn" style="border: none">
|
||||
<span>
|
||||
{{imageCache.updateTime | simpleDateHourMinute}}
|
||||
</span>
|
||||
|
||||
<span v-if="!imageCache.dir">
|
||||
{{imageCache.size | humanFileSize}}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="cell-btn text-danger" :title="$t('delete')" @click.stop.prevent="deleteImageCache">
|
||||
<i class="fa fa-trash"></i>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</NbExpanding>
|
||||
|
||||
</div>
|
||||
|
||||
</template>
|
||||
<script>
|
||||
import ImageCache from '../../../../common/model/image/cache/ImageCache'
|
||||
import NbCheckbox from '../../../../common/widget/NbCheckbox'
|
||||
import NbExpanding from '../../../../common/widget/NbExpanding'
|
||||
import {Message, MessageBox} from 'element-ui'
|
||||
import {handleImageUrl} from "../../../../common/util/ImageUtil";
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
//正在向服务器提交rename的请求
|
||||
renamingLoading: false,
|
||||
showMore: false
|
||||
}
|
||||
},
|
||||
components: {
|
||||
NbExpanding,
|
||||
NbCheckbox
|
||||
},
|
||||
props: {
|
||||
imageCache: {
|
||||
type: ImageCache,
|
||||
required: true
|
||||
}
|
||||
|
||||
},
|
||||
watch: {
|
||||
'imageCache.check'(newVal, oldVal) {
|
||||
this.$emit('checkImageCache', this.imageCache)
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
handleImageUrl,
|
||||
clickRow() {
|
||||
let that = this
|
||||
this.$emit('previewImageCache', this.imageCache)
|
||||
},
|
||||
deleteImageCache() {
|
||||
let that = this
|
||||
MessageBox.confirm(that.$t("actionCanNotRevertConfirm"), that.$t("prompt"), {
|
||||
confirmButtonText: that.$t("confirm"),
|
||||
cancelButtonText: that.$t("cancel"),
|
||||
type: 'warning',
|
||||
callback: function (action, instance) {
|
||||
if (action === 'confirm') {
|
||||
that.imageCache.httpDelete(function (response) {
|
||||
Message.success(that.$t("operationSuccess"))
|
||||
that.$emit('deleteSuccess', that.imageCache)
|
||||
})
|
||||
}
|
||||
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
finishCreateDirectory() {
|
||||
let that = this
|
||||
that.imageCache.httpCreateDirectory(function () {
|
||||
that.director.createMode = false
|
||||
that.editMode = false
|
||||
|
||||
that.imageCache.render(new ImageCache())
|
||||
|
||||
that.$emit('createDirectorySuccess', that.imageCache)
|
||||
|
||||
}, function (errorMessage) {
|
||||
that.director.createMode = false
|
||||
that.editMode = false
|
||||
Message.error(errorMessage)
|
||||
})
|
||||
}
|
||||
},
|
||||
created() {
|
||||
},
|
||||
mounted() {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
<style lang="less" rel="stylesheet/less">
|
||||
|
||||
@import "../../../../assets/css/global/variables";
|
||||
|
||||
@base-height: 48px;
|
||||
@inner-cell-height: 36px;
|
||||
|
||||
.basic-span {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
line-height: @base-height;
|
||||
margin-right: 5px;
|
||||
}
|
||||
|
||||
.widget-image-cache-panel {
|
||||
|
||||
border-top: 1px solid #eee;
|
||||
background-color: white;
|
||||
|
||||
.media {
|
||||
> .pull-left {
|
||||
padding-right: 1px;
|
||||
}
|
||||
}
|
||||
|
||||
.image-cache-icon {
|
||||
width: 24px;
|
||||
}
|
||||
|
||||
.left-part {
|
||||
margin-left: 10px;
|
||||
}
|
||||
.middle-part {
|
||||
|
||||
height: @base-height;
|
||||
overflow: hidden;
|
||||
|
||||
.image-cache-name-edit {
|
||||
.basic-span;
|
||||
|
||||
width: 90%;
|
||||
input {
|
||||
width: 100%;
|
||||
height: 26px;
|
||||
display: inline-block;
|
||||
padding: 6px;
|
||||
}
|
||||
}
|
||||
|
||||
.image-cache-name {
|
||||
.basic-span;
|
||||
width: 100%;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
.right-part {
|
||||
|
||||
.image-cache-operation {
|
||||
.basic-span;
|
||||
display: none;
|
||||
i {
|
||||
font-size: 16px;
|
||||
margin-right: 5px;
|
||||
|
||||
&:hover {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
.image-cache-size {
|
||||
.basic-span;
|
||||
display: inline-block;
|
||||
width: 80px;
|
||||
text-align: left;
|
||||
margin-left: 20px;
|
||||
}
|
||||
.image-cache-date {
|
||||
.basic-span;
|
||||
}
|
||||
}
|
||||
|
||||
.more-btn {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
line-height: @base-height;
|
||||
padding: 0 15px;
|
||||
}
|
||||
|
||||
&:hover {
|
||||
background-color: aliceblue;
|
||||
cursor: pointer;
|
||||
|
||||
.image-cache-operation {
|
||||
display: inline-block;
|
||||
}
|
||||
}
|
||||
|
||||
.more-panel {
|
||||
border-top: 1px solid #eee;
|
||||
padding-left: 35px;
|
||||
.info {
|
||||
}
|
||||
.cell-btn {
|
||||
border-top: 1px solid #eee;
|
||||
line-height: @inner-cell-height;
|
||||
vertical-align: middle;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
||||
@@ -1,481 +0,0 @@
|
||||
<template>
|
||||
<div class="backyard-install">
|
||||
|
||||
<el-tabs v-model="activeName" @tab-click="handleClick">
|
||||
<el-tab-pane :label=" $t('install.configMysql')" name="first">
|
||||
<div class="install-block">
|
||||
|
||||
<div class="row" v-validator="install.validatorSchema.mysqlHost.error">
|
||||
<label class="col-md-2 control-label mt5 compulsory">MySQL Host</label>
|
||||
<div class="col-md-10 validate">
|
||||
<input type="text" class="form-control" v-model="install.mysqlHost">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mt10" v-validator="install.validatorSchema.mysqlPort.error">
|
||||
<label class="col-md-2 control-label mt5 compulsory">MySQL {{ $t('install.port') }}</label>
|
||||
<div class="col-md-10 validate">
|
||||
<input type="number" class="form-control" v-model="install.mysqlPort">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mt10" v-validator="install.validatorSchema.mysqlSchema.error">
|
||||
<label class="col-md-2 control-label mt5 compulsory">MySQL {{ $t('install.schema') }}</label>
|
||||
<div class="col-md-10 validate">
|
||||
<input type="text" class="form-control" v-model="install.mysqlSchema">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mt10" v-validator="install.validatorSchema.mysqlUsername.error">
|
||||
<label class="col-md-2 control-label mt5 compulsory">MySQL {{ $t('username') }}</label>
|
||||
<div class="col-md-10 validate">
|
||||
<input type="text" class="form-control" v-model="install.mysqlUsername">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mt10" v-validator="install.validatorSchema.mysqlPassword.error">
|
||||
<label class="col-md-2 control-label mt5 compulsory">MySQL {{ $t('password') }}</label>
|
||||
<div class="col-md-10 validate">
|
||||
<input type="password" class="form-control" :value="install.mysqlPassword" @input="mysqlPasswordChange">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mt20">
|
||||
<div class="col-md-12">
|
||||
<div class="alert alert-info">
|
||||
<div><i class="fa fa-bullhorn"></i> {{ $t('install.notice') }}</div>
|
||||
<ol class="pl30 m0">
|
||||
<li>{{ $t('install.mysqlNotice1') }}</li>
|
||||
<li>{{ $t('install.mysqlNotice2') }}</li>
|
||||
</ol>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-12 text-right">
|
||||
<button class="btn btn-success btn-sm mr5" v-if="install.verified">
|
||||
<i class="fa fa-link"></i>
|
||||
{{ $t('install.mysqlConnectionPass') }}
|
||||
</button>
|
||||
<button class="btn btn-info btn-sm mr5" @click.stop.prevent="verify" v-if="!install.verified">
|
||||
<i class="fa fa-unlink"></i>
|
||||
{{ $t('install.testMysqlConnection') }}
|
||||
</button>
|
||||
|
||||
<button class="btn btn-primary btn-sm mr5" @click.stop.prevent="goTo('second')">
|
||||
<i class="fa fa-arrow-right"></i>
|
||||
{{ $t('install.nextStep') }}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane :label="$t('install.createTable')" name="second" :disabled="!install.verified">
|
||||
<div class="install-block">
|
||||
|
||||
<div class="mb15 border-bottom" v-for="(tableInfo,index) in install.tableInfoList">
|
||||
<div class="f16">
|
||||
{{tableInfo.name}}
|
||||
|
||||
<span class="label label-success" v-if="tableInfo.tableExist && !tableInfo.missingFields.length">
|
||||
{{ $t('install.installed') }}
|
||||
</span>
|
||||
<span class="label label-danger" v-if="tableInfo.tableExist && tableInfo.missingFields.length">
|
||||
{{ $t('install.installedButMissing') }}
|
||||
</span>
|
||||
<span class="label label-warning" v-if="!tableInfo.tableExist">
|
||||
{{ $t('install.toBeInstalled') }}
|
||||
</span>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="mt10">
|
||||
{{ $t('install.allFields') }}: <span class="label label-default mr5 inline-block mb10"
|
||||
v-for="field in tableInfo.allFields">{{field.DBName}}</span>
|
||||
</div>
|
||||
<div class="mt10" v-if="tableInfo.tableExist && tableInfo.missingFields.length">
|
||||
{{ $t('install.missingFields') }}: <span class="label label-default mr5 inline-block mb10"
|
||||
v-for="field in tableInfo.missingFields">{{field.DBName}}</span>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row mt20">
|
||||
<div class="col-md-12">
|
||||
<div class="alert alert-info">
|
||||
<div><i class="fa fa-bullhorn"></i>{{ $t('install.tableNotice') }}</div>
|
||||
<ol class="pl30 m0">
|
||||
<li>{{ $t('install.tableNotice1') }}</li>
|
||||
<li>{{ $t('install.tableNotice2') }}</li>
|
||||
<li>{{ $t('install.tableNotice3') }}</li>
|
||||
<li>{{ $t('install.tableNotice4') }}</li>
|
||||
</ol>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-12 text-right">
|
||||
|
||||
<button class="btn btn-info btn-sm mr5" v-if="!install.tableCreated()" @click.stop.prevent="createTable()">
|
||||
<i class="fa fa-gavel"></i>
|
||||
{{ $t('install.oneKeyCreate') }}
|
||||
</button>
|
||||
|
||||
<button class="btn btn-success btn-sm mr5" v-if="install.tableCreated()">
|
||||
<i class="fa fa-check"></i>
|
||||
{{ $t('install.oneKeyCreate') }}
|
||||
</button>
|
||||
|
||||
<button class="btn btn-primary btn-sm mr5" @click.stop.prevent="goTo('first')">
|
||||
<i class="fa fa-arrow-left"></i>
|
||||
{{ $t('install.preStep') }}
|
||||
</button>
|
||||
|
||||
<button class="btn btn-primary btn-sm mr5" @click.stop.prevent="goTo('third')">
|
||||
<i class="fa fa-arrow-right"></i>
|
||||
{{ $t('install.nextStep') }}
|
||||
</button>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane :label="$t('install.setAdministrator')" name="third" :disabled="!install.tableCreated()">
|
||||
<div class="install-block">
|
||||
|
||||
<div class="text-center" v-show="phase===-1">
|
||||
<i class="fa fa-spinner fa-spin fa-3x fa-fw"></i>
|
||||
</div>
|
||||
|
||||
<NbExpanding>
|
||||
<div v-show="phase===0">
|
||||
<div>
|
||||
{{ $t('install.detectAdministrator') }}
|
||||
</div>
|
||||
<div class="mv10 bold" v-for="admin in install.adminList">
|
||||
{{admin.username}}
|
||||
</div>
|
||||
<div>
|
||||
{{ $t('install.useOrCreateAdministrator') }}
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<div class="text-right">
|
||||
|
||||
<button class="btn btn-primary btn-sm mr5" @click.stop.prevent="phase = 1">
|
||||
<i class="fa fa-user-o"></i>
|
||||
{{ $t('install.validateAdministrator') }}
|
||||
</button>
|
||||
|
||||
<button class="btn btn-primary btn-sm mr5" @click.stop.prevent="phase = 2">
|
||||
<i class="fa fa-user-plus"></i>
|
||||
{{ $t('install.createAdministrator') }}
|
||||
</button>
|
||||
|
||||
<button class="btn btn-primary btn-sm mr5" @click.stop.prevent="goTo('second')">
|
||||
<i class="fa fa-arrow-left"></i>
|
||||
{{ $t('install.preStep') }}
|
||||
</button>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</NbExpanding>
|
||||
|
||||
|
||||
<NbExpanding>
|
||||
<div v-show="phase===1">
|
||||
|
||||
|
||||
<div class="bold f20 text-center">
|
||||
{{ $t('install.validateAdministrator') }}
|
||||
</div>
|
||||
|
||||
<div class="row mt10" v-validator="install.adminValidatorSchema.adminUsername.error">
|
||||
<label class="col-md-2 control-label mt5 compulsory">{{ $t('install.administratorUsername') }}</label>
|
||||
<div class="col-md-10 validate">
|
||||
<input type="text" class="form-control" v-model="install.adminUsername">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mt10" v-validator="install.adminValidatorSchema.adminPassword.error">
|
||||
<label class="col-md-2 control-label mt5 compulsory">{{ $t('install.administratorPassword') }}</label>
|
||||
<div class="col-md-10 validate">
|
||||
<input type="password" class="form-control" v-model="install.adminPassword">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mt10">
|
||||
<div class="col-md-12 text-right">
|
||||
|
||||
<button class="btn btn-primary btn-sm mr5" @click.stop.prevent="phase = 0">
|
||||
<i class="fa fa-arrow-left"></i>
|
||||
{{ $t('install.preStep') }}
|
||||
</button>
|
||||
|
||||
|
||||
<button class="btn btn-primary btn-sm mr5" @click.stop.prevent="validateAdmin()">
|
||||
<i class="fa fa-send"></i>
|
||||
{{ $t('submit') }}
|
||||
</button>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</NbExpanding>
|
||||
|
||||
|
||||
<NbExpanding>
|
||||
<div v-show="phase===2">
|
||||
|
||||
<div class="bold f20 text-center">
|
||||
{{ $t('install.createAdministrator') }}
|
||||
</div>
|
||||
|
||||
<div class="row mt10" v-validator="install.adminValidatorSchema.adminUsername.error">
|
||||
<label class="col-md-2 control-label mt5 compulsory">{{ $t('install.administratorUsername') }}</label>
|
||||
<div class="col-md-10 validate">
|
||||
<input type="text" class="form-control" v-model="install.adminUsername">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mt10" v-validator="install.adminValidatorSchema.adminPassword.error">
|
||||
<label class="col-md-2 control-label mt5 compulsory">{{ $t('install.administratorPassword') }}</label>
|
||||
<div class="col-md-10 validate">
|
||||
<input type="password" class="form-control" v-model="install.adminPassword">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mt10" v-validator="install.adminValidatorSchema.adminRepassword.error">
|
||||
<label class="col-md-2 control-label mt5 compulsory">{{ $t('install.administratorRePassword') }}</label>
|
||||
<div class="col-md-10 validate">
|
||||
<input type="password" class="form-control" v-model="install.adminRepassword">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row mt20">
|
||||
<div class="col-md-12">
|
||||
<div class="alert alert-info">
|
||||
<div><i class="fa fa-bullhorn"></i> {{ $t('install.notice') }}</div>
|
||||
<ol class="pl30 m0">
|
||||
<li>{{ $t('install.usernameRule') }}</li>
|
||||
</ol>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row">
|
||||
<div class="col-md-12 text-right">
|
||||
|
||||
<button class="btn btn-primary btn-sm mr5" @click.stop.prevent="preStep">
|
||||
<i class="fa fa-arrow-left"></i>
|
||||
{{ $t('install.preStep') }}
|
||||
</button>
|
||||
|
||||
<button class="btn btn-primary btn-sm mr5" @click.stop.prevent="createAdmin()">
|
||||
<i class="fa fa-send"></i>
|
||||
{{ $t('submit') }}
|
||||
</button>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</NbExpanding>
|
||||
|
||||
</div>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane :label="$t('finish') " name="forth" :disabled="!install.adminConfigured">
|
||||
<div class="install-block">
|
||||
|
||||
<div class="text-center">
|
||||
<img src="../../assets/img/success.svg" class="w50"/>
|
||||
</div>
|
||||
<div class="text-center mt10">
|
||||
{{ $t('install.congratulationInstall') }}
|
||||
</div>
|
||||
<div class="text-center mv20">
|
||||
<button class="btn btn-primary btn-sm mr5" @click.stop.prevent="finish">
|
||||
<i class="fa fa-home">
|
||||
{{ $t('install.enterHome') }}
|
||||
</i>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</el-tab-pane>
|
||||
|
||||
</el-tabs>
|
||||
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import Install from "../../common/model/install/Install";
|
||||
import NbExpanding from "../../common/widget/NbExpanding";
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
|
||||
//用来决定该如何验证管理员
|
||||
phase: -1,
|
||||
activeName: 'first',
|
||||
install: new Install()
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
mysqlUrl() {
|
||||
return this.install.mysqlUsername + ":" + this.install.mysqlPassword + "@tcp(" + this.install.mysqlHost + ":" + this.install.mysqlPort + ")/" + this.install.mysqlSchema + "?charset=utf8&parseTime=True&loc=Local"
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
mysqlUrl(newVal, oldVal) {
|
||||
this.install.verified = false
|
||||
}
|
||||
},
|
||||
components: {
|
||||
NbExpanding
|
||||
},
|
||||
methods: {
|
||||
mysqlPasswordChange(e) {
|
||||
//这么做主要是为了防止浏览器自动填充
|
||||
//只有在第一个tab的时候才能变化
|
||||
if (this.activeName === "first") {
|
||||
this.install.mysqlPassword = e.target.value
|
||||
}
|
||||
},
|
||||
verify() {
|
||||
let that = this;
|
||||
this.install.httpVerify(function () {
|
||||
that.install.verified = true
|
||||
that.$message.success(that.$t("install.mysqlConnectionPass"))
|
||||
})
|
||||
},
|
||||
fetchTableInfoList() {
|
||||
let that = this;
|
||||
this.install.httpTableInfoList()
|
||||
},
|
||||
|
||||
handleClick(tab, event) {
|
||||
|
||||
let paneName = tab.paneName;
|
||||
|
||||
},
|
||||
createTable() {
|
||||
//开始建表
|
||||
let that = this;
|
||||
this.install.httpCreateTable(function (response) {
|
||||
that.$message.success(that.$t("install.createTableSuccess"))
|
||||
|
||||
})
|
||||
},
|
||||
goTo(tabName) {
|
||||
let that = this
|
||||
if (tabName === "second") {
|
||||
|
||||
if (!this.install.verified) {
|
||||
this.$message.error(that.$t("install.validateMysqlFirst"))
|
||||
return
|
||||
}
|
||||
|
||||
this.fetchTableInfoList();
|
||||
|
||||
} else if (tabName === "third") {
|
||||
if (!this.install.tableCreated()) {
|
||||
this.$message.error(that.$t("install.crateTableFirst"))
|
||||
return
|
||||
}
|
||||
|
||||
//获取管理员列表
|
||||
this.adminList()
|
||||
|
||||
} else if (tabName === "forth") {
|
||||
if (!this.install.adminConfigured) {
|
||||
this.$message.error(that.$t("install.configAdminFirst"))
|
||||
return
|
||||
}
|
||||
}
|
||||
this.activeName = tabName
|
||||
},
|
||||
adminList() {
|
||||
//开始创建管理员
|
||||
let that = this;
|
||||
this.install.httpAdminList(function (response) {
|
||||
if (that.install.adminList.length) {
|
||||
that.phase = 0
|
||||
} else {
|
||||
that.phase = 2
|
||||
}
|
||||
})
|
||||
},
|
||||
createAdmin() {
|
||||
//开始创建管理员
|
||||
let that = this;
|
||||
this.install.httpCreateAdmin(function (response) {
|
||||
that.$message.success(that.$t("install.createAdminSuccess"))
|
||||
that.goTo("forth")
|
||||
})
|
||||
},
|
||||
validateAdmin() {
|
||||
//开始创建管理员
|
||||
let that = this;
|
||||
this.install.httpValidateAdmin(function (response) {
|
||||
that.$message.success(that.$t("install.validateAdminSuccess"))
|
||||
|
||||
that.goTo("forth")
|
||||
})
|
||||
},
|
||||
//创建管理员时的上一步
|
||||
preStep() {
|
||||
let that = this
|
||||
if (that.install.adminList.length) {
|
||||
that.phase = 0
|
||||
} else {
|
||||
that.goTo("second")
|
||||
}
|
||||
|
||||
},
|
||||
finish() {
|
||||
let that = this;
|
||||
|
||||
that.install.httpFinish(function (response) {
|
||||
|
||||
that.$store.state.installed = true
|
||||
that.$store.state.preference.httpFetch(function () {
|
||||
that.$router.push("/")
|
||||
})
|
||||
|
||||
|
||||
})
|
||||
}
|
||||
|
||||
},
|
||||
mounted() {
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" rel="stylesheet/less">
|
||||
.backyard-install {
|
||||
|
||||
.install-block {
|
||||
background-color: white;
|
||||
box-shadow: 0 0 5px rgba(0, 0, 0, .2);
|
||||
border-radius: 5px;
|
||||
padding: 20px 15px 10px 15px;
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -1,108 +0,0 @@
|
||||
<template>
|
||||
<div class="bottom-navigation text-center">
|
||||
<span class="item">
|
||||
<span v-html="preference.copyright"></span>
|
||||
</span>
|
||||
<span class="item">
|
||||
<span v-html="preference.record"></span>
|
||||
</span>
|
||||
<span class="item">
|
||||
<a href="javascript:void(0)" @click.stop.prevent="changeLang">
|
||||
{{Vue.store.state.lang==='zh'?'English':'中文'}}
|
||||
</a>
|
||||
</span>
|
||||
<!-- 版本号:cn.eyeblue.tank:3.0.0 -->
|
||||
<!-- 开源不易,请不要移除掉这里的代码,蓝眼云盘谢谢您 ^_^ -->
|
||||
<span class="brand">
|
||||
Powered by <a target="_blank" href="https://github.com/eyebluecn/tank">
|
||||
<img class="w30" src="../../assets/img/logo.png"/>
|
||||
{{ Vue.i18n.t("eyeblueTank") }}</a>
|
||||
</span>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import Cookies from "js-cookie"
|
||||
import Vue from "vue"
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
Vue,
|
||||
preference: Vue.store.state.preference
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
changeLang() {
|
||||
if (Vue.store.state.lang === 'zh') {
|
||||
Vue.store.state.lang = 'en'
|
||||
} else {
|
||||
Vue.store.state.lang = 'zh'
|
||||
}
|
||||
|
||||
Cookies.set('_lang', Vue.store.state.lang);
|
||||
Vue.i18n.locale = Vue.store.state.lang
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" rel="stylesheet/less">
|
||||
@import "../../assets/css/global/variables";
|
||||
|
||||
.bottom-navigation {
|
||||
|
||||
//大屏幕
|
||||
@media (min-width: @screen-sm-min) {
|
||||
|
||||
position: fixed;
|
||||
height: @power-footer-height;
|
||||
line-height: @power-footer-height;
|
||||
background-color: white;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
left: @sidebar-width;
|
||||
padding: 0 20px;
|
||||
border-top: 1px solid #eee;
|
||||
.item {
|
||||
margin-right: 10px;
|
||||
}
|
||||
|
||||
}
|
||||
//小屏幕
|
||||
@media (max-width: @screen-xs-max) {
|
||||
.item {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
&.show-drawer {
|
||||
//大屏幕
|
||||
@media (min-width: @screen-sm-min) {
|
||||
position: fixed;
|
||||
height: @power-footer-height;
|
||||
line-height: @power-footer-height;
|
||||
background-color: white;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
left: @sidebar-width;
|
||||
padding: 0 20px;
|
||||
border-top: 1px solid #eee;
|
||||
|
||||
.item {
|
||||
margin-right: 10px;
|
||||
}
|
||||
}
|
||||
|
||||
//小屏幕
|
||||
@media (max-width: @screen-xs-max) {
|
||||
.item {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.brand {
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -1,28 +0,0 @@
|
||||
<template>
|
||||
<div class="not-found">
|
||||
{{ $t('notFound') }}
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
|
||||
export default {
|
||||
data() {
|
||||
return {}
|
||||
},
|
||||
computed: {},
|
||||
watch: {},
|
||||
components: {},
|
||||
methods: {}
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
<style lang="less" rel="stylesheet/less">
|
||||
|
||||
@import "../../assets/css/global/variables";
|
||||
|
||||
.not-found {
|
||||
font-size: 32px;
|
||||
}
|
||||
|
||||
</style>
|
||||
@@ -1,310 +0,0 @@
|
||||
<template>
|
||||
<nav ref="menuNav" class="side-navigation" :class="{'show-drawer':showDrawer}" @click.stop.prevent="eatClick">
|
||||
<div class="sidebar-collapse">
|
||||
|
||||
<div class="menu-header" @click="goToProfile" v-if="$store.state.installed">
|
||||
<div class="logo-area">
|
||||
<img alt="image" class="img-circle w80"
|
||||
:src="user.getAvatarUrl()"/>
|
||||
</div>
|
||||
<div class="text-area">
|
||||
<div class="nickname">
|
||||
{{user.role === 'GUEST' ? '请登录' : user.username}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<ul class="nav mt20" v-if="$store.state.installed">
|
||||
|
||||
<li v-if="user.role === UserRole.GUEST">
|
||||
<router-link to="/user/login">
|
||||
<i class="w14 fa fa-user-circle-o"></i>
|
||||
<span>{{ $t('login') }}</span>
|
||||
</router-link>
|
||||
</li>
|
||||
|
||||
<li v-if="user.role !== UserRole.GUEST">
|
||||
<router-link to="/" :class="{'custom-active':isCustomActive('/')}">
|
||||
<i class="w14 fa fa fa-th"></i>
|
||||
<span>{{ $t('layout.allFiles') }}</span>
|
||||
</router-link>
|
||||
</li>
|
||||
|
||||
|
||||
<li v-if="user.role !== UserRole.GUEST">
|
||||
<router-link to="/share/list" :class="{'custom-active':isCustomActive('/share/list')}">
|
||||
<i class="w14 fa fa fa-share-alt"></i>
|
||||
<span>{{ $t('layout.myShare') }}</span>
|
||||
</router-link>
|
||||
</li>
|
||||
|
||||
<li v-if="user.role === UserRole.ADMINISTRATOR">
|
||||
<router-link to="/preference" :class="{'custom-active':isCustomActive('/preference')}">
|
||||
<i class="w14 fa fa-cog"></i>
|
||||
<span>{{ $t('layout.setting') }}</span>
|
||||
</router-link>
|
||||
</li>
|
||||
|
||||
<li v-if="user.role === UserRole.ADMINISTRATOR">
|
||||
<router-link to="/dashboard/index" :class="{'custom-active':isCustomActive('/dashboard/index')}">
|
||||
<i class="w14 fa fa-dashboard"></i>
|
||||
<span>{{ $t('layout.dashboard') }}</span>
|
||||
</router-link>
|
||||
</li>
|
||||
|
||||
<li v-if="user.role === UserRole.ADMINISTRATOR">
|
||||
<router-link to="/user/list" :class="{'custom-active':isCustomActive('/user/list')}">
|
||||
<i class="w14 fa fa-user"></i>
|
||||
<span>{{ $t('layout.users') }}</span>
|
||||
</router-link>
|
||||
</li>
|
||||
|
||||
<li v-if="user.role !== UserRole.GUEST">
|
||||
<router-link to="/user/login" :class="{'custom-active':isCustomActive('/user/login')}">
|
||||
<i class="w14 fa fa-power-off"></i>
|
||||
<span>{{ $t('layout.logout') }}</span>
|
||||
</router-link>
|
||||
</li>
|
||||
|
||||
<li class="about-menu">
|
||||
<a href="javascript:void(0)" @click.stop.prevent="showAbout($createElement)">
|
||||
<i class="w14 fa fa-info-circle"></i>
|
||||
<span>{{ $t('layout.about') }}</span>
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<div class="menu-header" v-if="!$store.state.installed">
|
||||
<div class="logo-area">
|
||||
<img alt="image" class="img-circle w80" src="../../assets/img/logo.png"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<ul class="nav mt20" v-if="!$store.state.installed">
|
||||
<li>
|
||||
<router-link to="/install/index" :class="{'custom-active':isCustomActive('/install/index')}">
|
||||
<i class="w14 fa fa-cogs"></i>
|
||||
<span>{{ $t('layout.install') }}</span>
|
||||
</router-link>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
</nav>
|
||||
</template>
|
||||
<script>
|
||||
import {MessageBox} from 'element-ui'
|
||||
import {UserRole} from "../../common/model/user/UserRole";
|
||||
import {handleImageUrl} from "../../common/util/ImageUtil";
|
||||
import BottomNavigation from "./BottomNavigation";
|
||||
|
||||
let logoPath = require("../../assets/img/logo.png")
|
||||
|
||||
export default {
|
||||
|
||||
data() {
|
||||
return {
|
||||
UserRole,
|
||||
user: this.$store.state.user,
|
||||
preference: this.$store.state.preference
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
showDrawer() {
|
||||
return this.$store.state.config.showDrawer;
|
||||
},
|
||||
mobile() {
|
||||
return this.$store.state.config.mobile;
|
||||
}
|
||||
|
||||
},
|
||||
|
||||
components: {},
|
||||
methods: {
|
||||
handleImageUrl,
|
||||
isCustomActive(path) {
|
||||
return this.$route.path === path
|
||||
},
|
||||
goToProfile() {
|
||||
|
||||
if (this.user.role === UserRole.GUEST) {
|
||||
this.$router.push("/user/login");
|
||||
} else {
|
||||
this.$router.push("/user/detail/" + this.user.uuid);
|
||||
}
|
||||
|
||||
},
|
||||
eatClick() {
|
||||
|
||||
},
|
||||
showAbout(createElement) {
|
||||
|
||||
|
||||
let that = this
|
||||
|
||||
let targetMatterUuid = null
|
||||
let dom = createElement(BottomNavigation, {
|
||||
props: {
|
||||
|
||||
}
|
||||
})
|
||||
|
||||
MessageBox({
|
||||
title: that.$t('layout.about'),
|
||||
message: dom,
|
||||
confirmButtonText: that.$t("confirm"),
|
||||
showCancelButton: false,
|
||||
callback: (action, instance) => {
|
||||
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
}
|
||||
},
|
||||
watch: {},
|
||||
mounted() {
|
||||
let that = this;
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="less" rel="stylesheet/less">
|
||||
|
||||
@import "../../assets/css/global/variables";
|
||||
|
||||
@nav-bg: #3A3F51;
|
||||
@nav-text-color: white;
|
||||
@font-highlight-color: #ddd;
|
||||
@left-border-color: @brand-primary;
|
||||
|
||||
//手机屏幕
|
||||
@media (max-width: @screen-xs-max) {
|
||||
|
||||
}
|
||||
|
||||
//左侧菜单block.
|
||||
.side-navigation {
|
||||
|
||||
//overflow: auto;
|
||||
|
||||
-webkit-transition: all 0.4s;
|
||||
-moz-transition: all 0.4s;
|
||||
-o-transition: all 0.4s;
|
||||
transition: all 0.4s;
|
||||
|
||||
position: fixed;
|
||||
width: @sidebar-width;
|
||||
|
||||
left: -@sidebar-width;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
z-index: 1000;
|
||||
|
||||
background: darken(@nav-bg, 3%);
|
||||
|
||||
&.show-drawer {
|
||||
left: 0;
|
||||
}
|
||||
|
||||
.sidebar-collapse {
|
||||
padding-bottom: 40px;
|
||||
}
|
||||
|
||||
.app-name-box {
|
||||
text-align: center;
|
||||
vertical-align: middle;
|
||||
display: table-cell;
|
||||
width: @sidebar-width;
|
||||
background-color: @brand-primary;
|
||||
height: @top-navigation-height;
|
||||
|
||||
a {
|
||||
font-size: 16px;
|
||||
color: white;
|
||||
}
|
||||
}
|
||||
|
||||
//放头像和用户名的地方。
|
||||
.menu-header {
|
||||
cursor: pointer;
|
||||
|
||||
.logo-area {
|
||||
|
||||
text-align: center;
|
||||
padding: 20px 0;
|
||||
}
|
||||
|
||||
.text-area {
|
||||
.nickname {
|
||||
text-align: center;
|
||||
color: @nav-text-color;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.role {
|
||||
text-align: center;
|
||||
color: @nav-text-color;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//分割线
|
||||
.separate-line {
|
||||
margin-top: 20px;
|
||||
padding-bottom: 5px;
|
||||
border-bottom: 1px solid #666666;
|
||||
|
||||
span {
|
||||
margin-left: 20px;
|
||||
color: #777;
|
||||
}
|
||||
}
|
||||
|
||||
.nav {
|
||||
li {
|
||||
|
||||
a {
|
||||
|
||||
color: @nav-text-color;
|
||||
|
||||
padding: 12px 20px;
|
||||
|
||||
&:hover, &:focus {
|
||||
color: @font-highlight-color;
|
||||
background-color: transparent;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
i {
|
||||
margin-right: 6px;
|
||||
}
|
||||
|
||||
//为什么要用custom-active? 因为 is-link-exact-active 不能匹配 /user/list 和 /user/list?page=0
|
||||
// is-link-active 会将 / 和 /preference 进行匹配。
|
||||
//所以用 is-link-exact-active 的话就会出现刷新列表页面时不高亮
|
||||
//用 is-link-active 时会两个高亮。
|
||||
&.custom-active {
|
||||
background-color: black;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.about-menu {
|
||||
//大屏幕
|
||||
@media (min-width: @screen-sm-min) {
|
||||
display: none;
|
||||
}
|
||||
//手机屏幕
|
||||
@media (max-width: @screen-xs-max) {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||